From 47fac883b8615779fc3882892c7f9dfe8af9ee7c Mon Sep 17 00:00:00 2001 From: "REDMOND\\brodes" Date: Fri, 26 Sep 2025 13:04:48 -0400 Subject: [PATCH 001/433] Azure SDK models for SSRF analysis. (cherry picked from commit 0274962612c02af09729526a3c44a545c1e69be8) --- python/ql/lib/semmle/python/Frameworks.qll | 1 + .../frameworks/Azure.Keyvault.model.yml | 9 +++++ .../python/frameworks/Azure.Storage.model.yml | 34 +++++++++++++++++ .../lib/semmle/python/frameworks/SSRFSink.qll | 38 +++++++++++++++++++ 4 files changed, 82 insertions(+) create mode 100644 python/ql/lib/semmle/python/frameworks/Azure.Keyvault.model.yml create mode 100644 python/ql/lib/semmle/python/frameworks/Azure.Storage.model.yml create mode 100644 python/ql/lib/semmle/python/frameworks/SSRFSink.qll diff --git a/python/ql/lib/semmle/python/Frameworks.qll b/python/ql/lib/semmle/python/Frameworks.qll index 955385141f7f..d5159806ce68 100644 --- a/python/ql/lib/semmle/python/Frameworks.qll +++ b/python/ql/lib/semmle/python/Frameworks.qll @@ -79,6 +79,7 @@ private import semmle.python.frameworks.ServerLess private import semmle.python.frameworks.Setuptools private import semmle.python.frameworks.Simplejson private import semmle.python.frameworks.SqlAlchemy +private import semmle.python.frameworks.SSRFSink private import semmle.python.frameworks.Starlette private import semmle.python.frameworks.Stdlib private import semmle.python.frameworks.Streamlit diff --git a/python/ql/lib/semmle/python/frameworks/Azure.Keyvault.model.yml b/python/ql/lib/semmle/python/frameworks/Azure.Keyvault.model.yml new file mode 100644 index 000000000000..8f4efc9f4fe4 --- /dev/null +++ b/python/ql/lib/semmle/python/frameworks/Azure.Keyvault.model.yml @@ -0,0 +1,9 @@ +extensions: + - addsTo: + pack: codeql/python-all + extensible: sinkModel + data: + - ['azure.keyvault.certificates.CertificateClient!', 'Call.Argument[0,vault_url:]', 'ssrf'] + - ['azure.keyvault.certificates.DeletedCertificate!', 'Call.Argument[recovery_id:]', 'ssrf'] + - ['azure.keyvault.keys.KeyClient!', 'Call.Argument[0,vault_url:]', 'ssrf'] + - ['azure.keyvault.secrets.SecretClient!', 'Call.Argument[0,vault_url:]', 'ssrf'] \ No newline at end of file diff --git a/python/ql/lib/semmle/python/frameworks/Azure.Storage.model.yml b/python/ql/lib/semmle/python/frameworks/Azure.Storage.model.yml new file mode 100644 index 000000000000..974e6334a0ed --- /dev/null +++ b/python/ql/lib/semmle/python/frameworks/Azure.Storage.model.yml @@ -0,0 +1,34 @@ +extensions: + - addsTo: + pack: codeql/python-all + extensible: sinkModel + data: + - ['azure.storage.blob.BlobClient!', 'Call.Argument[0,account_url:]', 'ssrf'] + - ['azure.storage.blob.BlobClient', 'Member[append_block_from_url].Argument[0,copy_source_url:]', 'ssrf'] + - ['azure.storage.blob.BlobClient', 'Member[get_page_range_diff_for_managed_disk].Argument[0,previous_snapshot_url:]', 'ssrf'] + - ['azure.storage.blob.BlobClient', 'Member[stage_block_from_url].Argument[1,source_url:]', 'ssrf'] + - ['azure.storage.blob.BlobClient', 'Member[start_copy_from_url].Argument[0,source_url:]', 'ssrf'] + - ['azure.storage.blob.BlobClient', 'Member[upload_blob_from_url].Argument[0,source_url:]', 'ssrf'] + - ['azure.storage.blob.BlobClient', 'Member[upload_pages_from_url].Argument[0,source_url:]', 'ssrf'] + - ['azure.storage.blob.BlobClient!', 'Member[from_blob_url].Argument[0,blob_url:]', 'ssrf'] + - ['azure.storage.blob.BlobServiceClient!', 'Call.Argument[0,account_url:]', 'ssrf'] + - ['azure.storage.blob.ContainerClient!', 'Call.Argument[0,account_url:]', 'ssrf'] + - ['azure.storage.blob.ContainerClient!', 'Member[from_container_url].Argument[0,container_url:]', 'ssrf'] + - ['azure', 'Member[storage].Member[blob].Member[download_blob_from_url].Argument[0,blob_url:]', 'ssrf'] + - ['azure', 'Member[storage].Member[blob].Member[upload_blob_to_url].Argument[0,blob_url:]', 'ssrf'] + - ['azure.storage.filedatalake.DataLakeDirectoryClient!', 'Call.Argument[0,account_url:]', 'ssrf'] + - ['azure.storage.filedatalake.DataLakeFileClient!', 'Call.Argument[0,account_url:]', 'ssrf'] + - ['azure.storage.filedatalake.DataLakeServiceClient!', 'Call.Argument[0,account_url:]', 'ssrf'] + - ['azure.storage.filedatalake.FileSystemClient!', 'Call.Argument[0,account_url:]', 'ssrf'] + - ['azure.storage.fileshare.ShareClient!', 'Call.Argument[0,account_url:]', 'ssrf'] + - ['azure.storage.fileshare.ShareClient!', 'Member[from_share_url].Argument[0,share_url:]', 'ssrf'] + - ['azure.storage.fileshare.ShareDirectoryClient!', 'Call.Argument[0,account_url:]', 'ssrf'] + - ['azure.storage.fileshare.ShareDirectoryClient!', 'Member[from_directory_url].Argument[0,directory_url:]', 'ssrf'] + - ['azure.storage.fileshare.ShareFileClient!', 'Call.Argument[0,account_url:]', 'ssrf'] + - ['azure.storage.fileshare.ShareFileClient!', 'Member[from_file_url].Argument[0,file_url:]', 'ssrf'] + - ['azure.storage.fileshare.ShareFileClient', 'Member[start_copy_from_url].Argument[0,source_url:]', 'ssrf'] + - ['azure.storage.fileshare.ShareFileClient', 'Member[upload_range_from_url].Argument[0,source_url:]', 'ssrf'] + - ['azure.storage.fileshare.ShareServiceClient!', 'Call.Argument[0,account_url:]', 'ssrf'] + - ['azure.storage.queue.QueueClient!', 'Call.Argument[0,account_url:]', 'ssrf'] + - ['azure.storage.queue.QueueClient', 'Member[from_queue_url].Argument[0,queue_url:]', 'ssrf'] + - ['azure.storage.queue.QueueServiceClient!', 'Call.Argument[0,account_url:]', 'ssrf'] \ No newline at end of file diff --git a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll new file mode 100644 index 000000000000..2460353e799a --- /dev/null +++ b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll @@ -0,0 +1,38 @@ +private import python +private import semmle.python.Concepts +private import semmle.python.ApiGraphs +private import semmle.python.frameworks.data.ModelsAsData + +/** + * INTERNAL: Do not use. + * + * Sets up SSRF sinks as Http::CLient::Request + */ +module SSRFMaDModel { + class SSRFSink extends Http::Client::Request::Range instanceof API::CallNode { + DataFlow::Node urlArg; + + SSRFSink() { + ( + this.getArg(_) = urlArg + or + this.getArgByName(_) = urlArg + ) and + urlArg = ModelOutput::getASinkNode("ssrf").asSink() + } + + override DataFlow::Node getAUrlPart() { result = urlArg } + + override string getFramework() { + // TOOD: how to get type of this node? + result = "MaD" + } + + override predicate disablesCertificateValidation( + DataFlow::Node disablingNode, DataFlow::Node argumentOrigin + ) { + // TODO: if you need to define this, you have to special case it for every possible API in MaD + none() + } + } +} From d27d4fdb2713470badceb7bbc81710560a09e79c Mon Sep 17 00:00:00 2001 From: "REDMOND\\brodes" Date: Tue, 30 Sep 2025 13:31:48 -0400 Subject: [PATCH 002/433] Updating comments. --- python/ql/lib/semmle/python/frameworks/SSRFSink.qll | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll index 2460353e799a..bbc3d8285fd5 100644 --- a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll +++ b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll @@ -23,15 +23,12 @@ module SSRFMaDModel { override DataFlow::Node getAUrlPart() { result = urlArg } - override string getFramework() { - // TOOD: how to get type of this node? - result = "MaD" - } + override string getFramework() { result = "MaD" } override predicate disablesCertificateValidation( DataFlow::Node disablingNode, DataFlow::Node argumentOrigin ) { - // TODO: if you need to define this, you have to special case it for every possible API in MaD + // NOTE: if you need to define this, you have to special case it for every possible API in MaD none() } } From 704e2966cbe2c565010cb6182dddfe61cf0b87ca Mon Sep 17 00:00:00 2001 From: "REDMOND\\brodes" Date: Tue, 30 Sep 2025 13:32:56 -0400 Subject: [PATCH 003/433] Adding azure sdk test cases and updated test expected file. --- .../FullServerSideRequestForgery.expected | 27 ++++++++++++ .../PartialServerSideRequestForgery.expected | 41 +++++++++++++++++++ .../test_azure_client.py | 40 ++++++++++++++++++ 3 files changed, 108 insertions(+) create mode 100644 python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py diff --git a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/FullServerSideRequestForgery.expected b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/FullServerSideRequestForgery.expected index 0d4a39689301..ae554fa812c9 100644 --- a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/FullServerSideRequestForgery.expected +++ b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/FullServerSideRequestForgery.expected @@ -35,6 +35,17 @@ edges | full_partial_test.py:75:5:75:7 | ControlFlowNode for url | full_partial_test.py:76:18:76:20 | ControlFlowNode for url | provenance | | | full_partial_test.py:78:5:78:7 | ControlFlowNode for url | full_partial_test.py:79:18:79:20 | ControlFlowNode for url | provenance | | | full_partial_test.py:81:5:81:7 | ControlFlowNode for url | full_partial_test.py:82:18:82:20 | ControlFlowNode for url | provenance | | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:7:19:7:25 | ControlFlowNode for request | provenance | | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for request | test_azure_client.py:10:18:10:24 | ControlFlowNode for request | provenance | | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for request | test_azure_client.py:11:19:11:25 | ControlFlowNode for request | provenance | | +| test_azure_client.py:10:18:10:24 | ControlFlowNode for request | test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | provenance | AdditionalTaintStep | +| test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | provenance | | +| test_azure_client.py:11:19:11:25 | ControlFlowNode for request | test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | provenance | AdditionalTaintStep | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:17:32:17:39 | ControlFlowNode for full_url | provenance | Sink:MaD:15 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | provenance | Sink:MaD:38 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | provenance | Sink:MaD:14 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | provenance | Sink:MaD:26 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:33:18:33:25 | ControlFlowNode for full_url | provenance | Sink:MaD:27 | | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:1:26:1:32 | ControlFlowNode for request | provenance | | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | test_http_client.py:9:19:9:25 | ControlFlowNode for request | provenance | | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | test_http_client.py:10:19:10:25 | ControlFlowNode for request | provenance | | @@ -89,6 +100,17 @@ nodes | full_partial_test.py:79:18:79:20 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | | full_partial_test.py:81:5:81:7 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | | full_partial_test.py:82:18:82:20 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| test_azure_client.py:10:18:10:24 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | semmle.label | ControlFlowNode for user_input2 | +| test_azure_client.py:11:19:11:25 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:17:32:17:39 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:33:18:33:25 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | | test_http_client.py:9:5:9:15 | ControlFlowNode for unsafe_host | semmle.label | ControlFlowNode for unsafe_host | @@ -122,6 +144,11 @@ subpaths | full_partial_test.py:76:5:76:21 | ControlFlowNode for Attribute() | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | full_partial_test.py:76:18:76:20 | ControlFlowNode for url | The full URL of this request depends on a $@. | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | user-provided value | | full_partial_test.py:79:5:79:21 | ControlFlowNode for Attribute() | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | full_partial_test.py:79:18:79:20 | ControlFlowNode for url | The full URL of this request depends on a $@. | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | user-provided value | | full_partial_test.py:82:5:82:21 | ControlFlowNode for Attribute() | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | full_partial_test.py:82:18:82:20 | ControlFlowNode for url | The full URL of this request depends on a $@. | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:17:9:17:63 | ControlFlowNode for SecretClient() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:17:32:17:39 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:19:9:19:47 | ControlFlowNode for Attribute() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:21:9:21:39 | ControlFlowNode for KeyClient() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:23:9:23:89 | ControlFlowNode for Attribute() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:32:5:37:5 | ControlFlowNode for download_blob_from_url() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:33:18:33:25 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:14:5:14:36 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:13:27:13:37 | ControlFlowNode for unsafe_host | The full URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:14:5:14:36 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:14:25:14:35 | ControlFlowNode for unsafe_path | The full URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:19:5:19:36 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:18:27:18:37 | ControlFlowNode for unsafe_host | The full URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | diff --git a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/PartialServerSideRequestForgery.expected b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/PartialServerSideRequestForgery.expected index 7a7f8a3366b4..bbe756e24b7c 100644 --- a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/PartialServerSideRequestForgery.expected +++ b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/PartialServerSideRequestForgery.expected @@ -77,6 +77,24 @@ edges | full_partial_test.py:119:5:119:14 | ControlFlowNode for user_input | full_partial_test.py:121:5:121:7 | ControlFlowNode for url | provenance | | | full_partial_test.py:119:18:119:24 | ControlFlowNode for request | full_partial_test.py:119:5:119:14 | ControlFlowNode for user_input | provenance | AdditionalTaintStep | | full_partial_test.py:121:5:121:7 | ControlFlowNode for url | full_partial_test.py:122:18:122:20 | ControlFlowNode for url | provenance | | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:7:19:7:25 | ControlFlowNode for request | provenance | | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for request | test_azure_client.py:10:18:10:24 | ControlFlowNode for request | provenance | | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for request | test_azure_client.py:11:19:11:25 | ControlFlowNode for request | provenance | | +| test_azure_client.py:10:5:10:14 | ControlFlowNode for user_input | test_azure_client.py:13:5:13:7 | ControlFlowNode for url | provenance | | +| test_azure_client.py:10:18:10:24 | ControlFlowNode for request | test_azure_client.py:10:5:10:14 | ControlFlowNode for user_input | provenance | AdditionalTaintStep | +| test_azure_client.py:10:18:10:24 | ControlFlowNode for request | test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | provenance | AdditionalTaintStep | +| test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | provenance | | +| test_azure_client.py:11:19:11:25 | ControlFlowNode for request | test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | provenance | AdditionalTaintStep | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:16:32:16:34 | ControlFlowNode for url | provenance | Sink:MaD:15 | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:18:39:18:41 | ControlFlowNode for url | provenance | Sink:MaD:38 | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:20:19:20:21 | ControlFlowNode for url | provenance | Sink:MaD:14 | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:22:58:22:60 | ControlFlowNode for url | provenance | Sink:MaD:26 | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:27:18:27:20 | ControlFlowNode for url | provenance | Sink:MaD:27 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:17:32:17:39 | ControlFlowNode for full_url | provenance | Sink:MaD:15 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | provenance | Sink:MaD:38 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | provenance | Sink:MaD:14 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | provenance | Sink:MaD:26 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:33:18:33:25 | ControlFlowNode for full_url | provenance | Sink:MaD:27 | | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:1:26:1:32 | ControlFlowNode for request | provenance | | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | test_http_client.py:9:19:9:25 | ControlFlowNode for request | provenance | | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | test_http_client.py:10:19:10:25 | ControlFlowNode for request | provenance | | @@ -173,6 +191,24 @@ nodes | full_partial_test.py:119:18:119:24 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | | full_partial_test.py:121:5:121:7 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | | full_partial_test.py:122:18:122:20 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | +| test_azure_client.py:7:19:7:25 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| test_azure_client.py:10:5:10:14 | ControlFlowNode for user_input | semmle.label | ControlFlowNode for user_input | +| test_azure_client.py:10:18:10:24 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| test_azure_client.py:11:5:11:15 | ControlFlowNode for user_input2 | semmle.label | ControlFlowNode for user_input2 | +| test_azure_client.py:11:19:11:25 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:16:32:16:34 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:17:32:17:39 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:18:39:18:41 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:20:19:20:21 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:22:58:22:60 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:27:18:27:20 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:33:18:33:25 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | | test_http_client.py:9:5:9:15 | ControlFlowNode for unsafe_host | semmle.label | ControlFlowNode for unsafe_host | @@ -205,6 +241,11 @@ subpaths | full_partial_test.py:107:5:107:21 | ControlFlowNode for Attribute() | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | full_partial_test.py:107:18:107:20 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | user-provided value | | full_partial_test.py:116:5:116:21 | ControlFlowNode for Attribute() | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | full_partial_test.py:116:18:116:20 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | user-provided value | | full_partial_test.py:122:5:122:21 | ControlFlowNode for Attribute() | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | full_partial_test.py:122:18:122:20 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | full_partial_test.py:1:19:1:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:16:9:16:58 | ControlFlowNode for SecretClient() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:16:32:16:34 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:18:9:18:42 | ControlFlowNode for Attribute() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:18:39:18:41 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:20:9:20:34 | ControlFlowNode for KeyClient() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:20:19:20:21 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:22:9:22:84 | ControlFlowNode for Attribute() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:22:58:22:60 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:26:5:31:5 | ControlFlowNode for download_blob_from_url() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:27:18:27:20 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:22:5:22:31 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:18:27:18:37 | ControlFlowNode for unsafe_host | Part of the URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:26:5:26:31 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:25:27:25:37 | ControlFlowNode for unsafe_host | Part of the URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:29:5:29:36 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:29:25:29:35 | ControlFlowNode for unsafe_path | Part of the URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | diff --git a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py new file mode 100644 index 000000000000..f78b0a641370 --- /dev/null +++ b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py @@ -0,0 +1,40 @@ +from azure.keyvault.secrets import SecretClient +from azure.storage.fileshare import ShareFileClient +from azure.keyvault.keys import KeyClient +from azure.storage.blob import ContainerClient +from azure.storage.blob import download_blob_from_url + +from flask import request + +def azure_sdk_test(credential, output_path): + user_input = request.args['untrusted_input'] + user_input2 = request.args['untrusted_input2'] + + url = f"https://example.com/foo#{user_input}" + full_url = f"https://{user_input2}" + # Testing Azure sink + c = SecretClient(vault_url=url, credential=credential)# NOT OK -- user only controlled fragment + c = SecretClient(vault_url=full_url, credential=credential) # NOT OK -- user has full control + c = ShareFileClient.from_file_url(url) # NOT OK -- user only controlled fragment + c = ShareFileClient.from_file_url(full_url) # NOT OK -- user has full control + c = KeyClient(url, credential)# NOT OK -- user only controlled fragment + c = KeyClient(full_url, credential) # NOT OK -- user has full control + c = ContainerClient.from_container_url(container_url=url, credential=credential) # NOT OK -- user only controlled fragment + c = ContainerClient.from_container_url(container_url=full_url, credential=credential) # NOT OK -- user has full control + + + download_blob_from_url( + blob_url=url, # NOT OK -- user only controlled fragment + output=output_path, + credential=credential, + overwrite=True + ) + download_blob_from_url( + blob_url=full_url, # NOT OK -- user has full control + output=output_path, + credential=credential, + overwrite=True + ) + + + From 341f5538665b52347236fb0032a8260edb80b200 Mon Sep 17 00:00:00 2001 From: "REDMOND\\brodes" Date: Tue, 30 Sep 2025 13:55:31 -0400 Subject: [PATCH 004/433] Added change logs. --- .../lib/change-notes/released/2025-09-30-azure_ssrf_models | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 python/ql/lib/change-notes/released/2025-09-30-azure_ssrf_models diff --git a/python/ql/lib/change-notes/released/2025-09-30-azure_ssrf_models b/python/ql/lib/change-notes/released/2025-09-30-azure_ssrf_models new file mode 100644 index 000000000000..573d5ea109df --- /dev/null +++ b/python/ql/lib/change-notes/released/2025-09-30-azure_ssrf_models @@ -0,0 +1,5 @@ +--- +category: minorAnalysis +--- +* Added `ssrf` MaD for the azure SDK +* Added MaD `ssrf` to `Http::Client::Request` \ No newline at end of file From 5ca9ff2082e122763c2afdec34023636af6dfd0f Mon Sep 17 00:00:00 2001 From: Ben Rodes Date: Tue, 30 Sep 2025 14:00:05 -0400 Subject: [PATCH 005/433] Update python/ql/lib/semmle/python/frameworks/SSRFSink.qll Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- python/ql/lib/semmle/python/frameworks/SSRFSink.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll index bbc3d8285fd5..db9a1640214e 100644 --- a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll +++ b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll @@ -6,7 +6,7 @@ private import semmle.python.frameworks.data.ModelsAsData /** * INTERNAL: Do not use. * - * Sets up SSRF sinks as Http::CLient::Request + * Sets up SSRF sinks as Http::Client::Request */ module SSRFMaDModel { class SSRFSink extends Http::Client::Request::Range instanceof API::CallNode { From fab96d9539752a5a2db9639369a7cbba508f4f80 Mon Sep 17 00:00:00 2001 From: Ben Rodes Date: Tue, 30 Sep 2025 14:00:16 -0400 Subject: [PATCH 006/433] Update python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../CWE-918-ServerSideRequestForgery/test_azure_client.py | 1 - 1 file changed, 1 deletion(-) diff --git a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py index f78b0a641370..5d2b04b9c9dd 100644 --- a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py +++ b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py @@ -22,7 +22,6 @@ def azure_sdk_test(credential, output_path): c = ContainerClient.from_container_url(container_url=url, credential=credential) # NOT OK -- user only controlled fragment c = ContainerClient.from_container_url(container_url=full_url, credential=credential) # NOT OK -- user has full control - download_blob_from_url( blob_url=url, # NOT OK -- user only controlled fragment output=output_path, From d790c6df576e19f8f3498a98a210cd9360ce3dee Mon Sep 17 00:00:00 2001 From: Ben Rodes Date: Tue, 30 Sep 2025 14:00:25 -0400 Subject: [PATCH 007/433] Update python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../CWE-918-ServerSideRequestForgery/test_azure_client.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py index 5d2b04b9c9dd..d8de2092a2e5 100644 --- a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py +++ b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/test_azure_client.py @@ -34,6 +34,3 @@ def azure_sdk_test(credential, output_path): credential=credential, overwrite=True ) - - - From acddb2c2729827cb8a24ecf9f00b82fb72011e85 Mon Sep 17 00:00:00 2001 From: "REDMOND\\brodes" Date: Tue, 30 Sep 2025 14:02:43 -0400 Subject: [PATCH 008/433] Moved change log to correct location. --- ...25-09-30-azure_ssrf_models => 2025-09-30-azure_ssrf_models.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename python/ql/lib/change-notes/{released/2025-09-30-azure_ssrf_models => 2025-09-30-azure_ssrf_models.md} (100%) diff --git a/python/ql/lib/change-notes/released/2025-09-30-azure_ssrf_models b/python/ql/lib/change-notes/2025-09-30-azure_ssrf_models.md similarity index 100% rename from python/ql/lib/change-notes/released/2025-09-30-azure_ssrf_models rename to python/ql/lib/change-notes/2025-09-30-azure_ssrf_models.md From a660eaba95531d52a1560cc7aee21d96b597b472 Mon Sep 17 00:00:00 2001 From: "REDMOND\\brodes" Date: Tue, 30 Sep 2025 14:07:32 -0400 Subject: [PATCH 009/433] Adding docs. --- python/ql/lib/semmle/python/frameworks/SSRFSink.qll | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll index db9a1640214e..e9b7ff9e4747 100644 --- a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll +++ b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll @@ -1,3 +1,7 @@ +/** + * Provides classes for SSRF sinks modeled using Models as Data (MaD). + */ + private import python private import semmle.python.Concepts private import semmle.python.ApiGraphs @@ -9,6 +13,9 @@ private import semmle.python.frameworks.data.ModelsAsData * Sets up SSRF sinks as Http::Client::Request */ module SSRFMaDModel { + /** + * An HTTP request modeled from `ssrf` sinks, modeled using MaD. + */ class SSRFSink extends Http::Client::Request::Range instanceof API::CallNode { DataFlow::Node urlArg; From 26b8a394b3cdfc8e32bc228294e15b09fcf771b2 Mon Sep 17 00:00:00 2001 From: "REDMOND\\brodes" Date: Tue, 30 Sep 2025 14:09:06 -0400 Subject: [PATCH 010/433] Adjusting acryonym for SSRF for casing standards. --- python/ql/lib/semmle/python/frameworks/SSRFSink.qll | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll index e9b7ff9e4747..aeb228daf13b 100644 --- a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll +++ b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll @@ -12,14 +12,14 @@ private import semmle.python.frameworks.data.ModelsAsData * * Sets up SSRF sinks as Http::Client::Request */ -module SSRFMaDModel { +module SsrfMaDModel { /** * An HTTP request modeled from `ssrf` sinks, modeled using MaD. */ - class SSRFSink extends Http::Client::Request::Range instanceof API::CallNode { + class SsrfSink extends Http::Client::Request::Range instanceof API::CallNode { DataFlow::Node urlArg; - SSRFSink() { + SsrfSink() { ( this.getArg(_) = urlArg or From 384e17a4ef52b2b6ebff9cdc5e96ad7d1a40cfbf Mon Sep 17 00:00:00 2001 From: Joe Farebrother Date: Mon, 1 Dec 2025 16:24:59 +0000 Subject: [PATCH 011/433] Implement websockets models --- python/ql/lib/semmle/python/Frameworks.qll | 1 + .../semmle/python/frameworks/Websockets.qll | 83 +++++++++++++++++++ .../websockets/ConceptsTest.expected | 0 .../frameworks/websockets/ConceptsTest.ql | 2 + .../websockets/InlineTaintTest.expected | 3 + .../frameworks/websockets/InlineTaintTest.ql | 2 + .../frameworks/websockets/response_test.py | 46 ++++++++++ .../websockets/taint_test_asyncio.py | 30 +++++++ .../frameworks/websockets/taint_test_sync.py | 26 ++++++ 9 files changed, 193 insertions(+) create mode 100644 python/ql/lib/semmle/python/frameworks/Websockets.qll create mode 100644 python/ql/test/library-tests/frameworks/websockets/ConceptsTest.expected create mode 100644 python/ql/test/library-tests/frameworks/websockets/ConceptsTest.ql create mode 100644 python/ql/test/library-tests/frameworks/websockets/InlineTaintTest.expected create mode 100644 python/ql/test/library-tests/frameworks/websockets/InlineTaintTest.ql create mode 100644 python/ql/test/library-tests/frameworks/websockets/response_test.py create mode 100644 python/ql/test/library-tests/frameworks/websockets/taint_test_asyncio.py create mode 100644 python/ql/test/library-tests/frameworks/websockets/taint_test_sync.py diff --git a/python/ql/lib/semmle/python/Frameworks.qll b/python/ql/lib/semmle/python/Frameworks.qll index 955385141f7f..4906d15ea007 100644 --- a/python/ql/lib/semmle/python/Frameworks.qll +++ b/python/ql/lib/semmle/python/Frameworks.qll @@ -89,6 +89,7 @@ private import semmle.python.frameworks.TRender private import semmle.python.frameworks.Twisted private import semmle.python.frameworks.Ujson private import semmle.python.frameworks.Urllib3 +private import semmle.python.frameworks.Websockets private import semmle.python.frameworks.Xmltodict private import semmle.python.frameworks.Yaml private import semmle.python.frameworks.Yarl diff --git a/python/ql/lib/semmle/python/frameworks/Websockets.qll b/python/ql/lib/semmle/python/frameworks/Websockets.qll new file mode 100644 index 000000000000..88a3e701eea1 --- /dev/null +++ b/python/ql/lib/semmle/python/frameworks/Websockets.qll @@ -0,0 +1,83 @@ +/** + * Provides definitions and modeling for the `websockets` PyPI package. + * + * See https://websockets.readthedocs.io/en/stable/ + */ + +private import python +private import semmle.python.dataflow.new.RemoteFlowSources +private import semmle.python.Concepts +private import semmle.python.ApiGraphs +private import semmle.python.frameworks.internal.PoorMansFunctionResolution +private import semmle.python.frameworks.internal.InstanceTaintStepsHelper + +/** + * Provides models for the `websockets` PyPI package. + * See https://websockets.readthedocs.io/en/stable/ + */ +module Websockets { + private class HandlerArg extends DataFlow::Node { + HandlerArg() { + exists(DataFlow::CallCfgNode c | + c = + API::moduleImport("websockets") + .getMember(["asyncio", "sync"]) + .getMember("server") + .getMember(["serve", "unix_serve"]) + .getACall() + | + (this = c.getArg(0) or this = c.getArgByName("handler")) + ) + } + } + + /** A websocket handler that is passed to `serve`. */ + // TODO: handlers defined via route maps, e.g. through `websockets.asyncio.router.route`, are more complex to handle. + class WebSocketHandler extends Http::Server::RequestHandler::Range { + WebSocketHandler() { poorMansFunctionTracker(this) = any(HandlerArg a) } + + override Parameter getARoutedParameter() { result = this.getAnArg() } + + override string getFramework() { result = "websockets" } + } + + module ServerConnection { + /** + * A source of instances of `websockets.asyncio.ServerConnection` and `websockets.threading.ServerConnection`, extend this class to model new instances. + * + * This can include instantiations of the class, return values from function + * calls, or a special parameter that will be set when functions are called by an external + * library. + * + * Use the predicate `WebSocket::instance()` to get references to instances of `websockets.asyncio.ServerConnection` and `websockets.threading.ServerConnection`. + */ + abstract class InstanceSource extends DataFlow::LocalSourceNode { } + + /** Gets a reference to an instance of `websockets.asyncio.ServerConnection` or `websockets.threading.ServerConnection`. */ + private DataFlow::TypeTrackingNode instance(DataFlow::TypeTracker t) { + t.start() and + result instanceof InstanceSource + or + exists(DataFlow::TypeTracker t2 | result = instance(t2).track(t2, t)) + } + + /** Gets a reference to an instance of `websockets.asyncio.ServerConnection` or `websockets.threading.ServerConnection`. */ + DataFlow::Node instance() { instance(DataFlow::TypeTracker::end()).flowsTo(result) } + + private class HandlerParam extends DataFlow::Node, InstanceSource { + HandlerParam() { exists(WebSocketHandler h | this = DataFlow::parameterNode(h.getArg(0))) } + } + + private class InstanceTaintSteps extends InstanceTaintStepsHelper { + InstanceTaintSteps() { this = "websockets.asyncio.ServerConnection" } + + override DataFlow::Node getInstance() { result = instance() } + + override string getAttributeName() { none() } + + override string getAsyncMethodName() { result = ["recv", "recv_streaming"] } + + override string getMethodName() { result = ["recv", "recv_streaming"] } + } + } +} diff --git a/python/ql/test/library-tests/frameworks/websockets/ConceptsTest.expected b/python/ql/test/library-tests/frameworks/websockets/ConceptsTest.expected new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/python/ql/test/library-tests/frameworks/websockets/ConceptsTest.ql b/python/ql/test/library-tests/frameworks/websockets/ConceptsTest.ql new file mode 100644 index 000000000000..b557a0bccb69 --- /dev/null +++ b/python/ql/test/library-tests/frameworks/websockets/ConceptsTest.ql @@ -0,0 +1,2 @@ +import python +import experimental.meta.ConceptsTest diff --git a/python/ql/test/library-tests/frameworks/websockets/InlineTaintTest.expected b/python/ql/test/library-tests/frameworks/websockets/InlineTaintTest.expected new file mode 100644 index 000000000000..020c338fd192 --- /dev/null +++ b/python/ql/test/library-tests/frameworks/websockets/InlineTaintTest.expected @@ -0,0 +1,3 @@ +argumentToEnsureNotTaintedNotMarkedAsSpurious +untaintedArgumentToEnsureTaintedNotMarkedAsMissing +testFailures diff --git a/python/ql/test/library-tests/frameworks/websockets/InlineTaintTest.ql b/python/ql/test/library-tests/frameworks/websockets/InlineTaintTest.ql new file mode 100644 index 000000000000..8524da5fe7db --- /dev/null +++ b/python/ql/test/library-tests/frameworks/websockets/InlineTaintTest.ql @@ -0,0 +1,2 @@ +import experimental.meta.InlineTaintTest +import MakeInlineTaintTest diff --git a/python/ql/test/library-tests/frameworks/websockets/response_test.py b/python/ql/test/library-tests/frameworks/websockets/response_test.py new file mode 100644 index 000000000000..a4a0264e2c26 --- /dev/null +++ b/python/ql/test/library-tests/frameworks/websockets/response_test.py @@ -0,0 +1,46 @@ +import websockets.sync.server +import websockets.sync.router +from werkzeug.routing import Map, Rule + +def arg_handler(websocket): # $ requestHandler routedParameter=websocket + websocket.send("arg" + websocket.recv()) + +s1 = websockets.sync.server.serve(arg_handler, "localhost", 8000) + +def kw_handler(websocket): # $ requestHandler routedParameter=websocket + websocket.send("kw" + websocket.recv()) + +s2 = websockets.sync.server.serve(handler=kw_handler, host="localhost", port=8001) + +def route_handler(websocket, x): # $ MISSING: requestHandler routedParameter=websocket routedParameter=x + websocket.send(f"route {x} {websocket.recv()}") + +s3 = websockets.sync.router.route(Map([ + Rule("/", endpoint=route_handler) +]), "localhost", 8002) + +def unix_handler(websocket): # $ requestHandler routedParameter=websocket + websocket.send("unix" + websocket.recv()) + +s4 = websockets.sync.server.unix_serve(unix_handler, path="/tmp/ws.sock") + +def unix_route_handler(websocket, x): # $ MISSING: requestHandler routedParameter=websocket routedParameter=x + websocket.send(f"unix route {x} {websocket.recv()}") + +s5 = websockets.sync.router.unix_route(Map([ + Rule("/", endpoint=unix_route_handler) +]), path="/tmp/ws2.sock") + +if __name__ == "__main__": + import sys + server = s1 + if len(sys.argv) > 1: + if sys.argv[1] == "kw": + server = s2 + elif sys.argv[1] == "route": + server = s3 + elif sys.argv[1] == "unix": + server = s4 + elif sys.argv[1] == "unix_route": + server = s5 + server.serve_forever() \ No newline at end of file diff --git a/python/ql/test/library-tests/frameworks/websockets/taint_test_asyncio.py b/python/ql/test/library-tests/frameworks/websockets/taint_test_asyncio.py new file mode 100644 index 000000000000..5c7904b4193f --- /dev/null +++ b/python/ql/test/library-tests/frameworks/websockets/taint_test_asyncio.py @@ -0,0 +1,30 @@ +import websockets.asyncio.server +import asyncio + +def ensure_tainted(*args): + print("tainted", args) + +def ensure_not_tainted(*args): + print("not tainted", args) + +async def handler(websocket): # $ requestHandler routedParameter=websocket + ensure_tainted( + websocket, # $ tainted + await websocket.recv() # $ tainted + ) + + async for msg in websocket: + ensure_tainted(msg) # $ tainted + await websocket.send(msg) + + async for msg in websocket.recv_streaming(): + ensure_tainted(msg) # $ tainted + await websocket.send(msg) + + +async def main(): + server = await websockets.asyncio.server.serve(handler, "localhost", 8000) + await server.serve_forever() + +if __name__ == "__main__": + asyncio.run(main()) \ No newline at end of file diff --git a/python/ql/test/library-tests/frameworks/websockets/taint_test_sync.py b/python/ql/test/library-tests/frameworks/websockets/taint_test_sync.py new file mode 100644 index 000000000000..d7aedae3f65d --- /dev/null +++ b/python/ql/test/library-tests/frameworks/websockets/taint_test_sync.py @@ -0,0 +1,26 @@ +import websockets.sync.server + +def ensure_tainted(*args): + print("tainted", args) + +def ensure_not_tainted(*args): + print("not tainted", args) + +def handler(websocket): # $ requestHandler routedParameter=websocket + ensure_tainted( + websocket, # $ tainted + websocket.recv() # $ tainted + ) + + for msg in websocket: + ensure_tainted(msg) # $ tainted + websocket.send(msg) + + for msg in websocket.recv_streaming(): + ensure_tainted(msg) # $ tainted + websocket.send(msg) + + +if __name__ == "__main__": + server = websockets.sync.server.serve(handler, "localhost", 8000) + server.serve_forever() From 6a1e26c566b6d6cfb7ad72df219de9459ec83388 Mon Sep 17 00:00:00 2001 From: Joe Farebrother Date: Mon, 1 Dec 2025 20:06:24 +0000 Subject: [PATCH 012/433] Add change note --- python/ql/lib/change-notes/2025-12-01-websockets.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 python/ql/lib/change-notes/2025-12-01-websockets.md diff --git a/python/ql/lib/change-notes/2025-12-01-websockets.md b/python/ql/lib/change-notes/2025-12-01-websockets.md new file mode 100644 index 000000000000..6b4db223d7b3 --- /dev/null +++ b/python/ql/lib/change-notes/2025-12-01-websockets.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* Remote flow sources for the `websockets` package have been modeled. \ No newline at end of file From 6fbae45d49dcab6a96aee173d2e97f31e313f309 Mon Sep 17 00:00:00 2001 From: Joe Farebrother Date: Mon, 1 Dec 2025 20:14:36 +0000 Subject: [PATCH 013/433] Update qldoc --- python/ql/lib/semmle/python/frameworks/Websockets.qll | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/python/ql/lib/semmle/python/frameworks/Websockets.qll b/python/ql/lib/semmle/python/frameworks/Websockets.qll index 88a3e701eea1..6690a6ec0368 100644 --- a/python/ql/lib/semmle/python/frameworks/Websockets.qll +++ b/python/ql/lib/semmle/python/frameworks/Websockets.qll @@ -41,19 +41,20 @@ module Websockets { override string getFramework() { result = "websockets" } } + /** Provides taint models for instances of `ServerConnection` objects passed to websocket handlers. */ module ServerConnection { /** - * A source of instances of `websockets.asyncio.ServerConnection` and `websockets.threading.ServerConnection`, extend this class to model new instances. + * A source of instances of `websockets.asyncio.ServerConnection` and `websockets.sync.ServerConnection`, extend this class to model new instances. * * This can include instantiations of the class, return values from function * calls, or a special parameter that will be set when functions are called by an external * library. * - * Use the predicate `WebSocket::instance()` to get references to instances of `websockets.asyncio.ServerConnection` and `websockets.threading.ServerConnection`. + * Use the predicate `WebSocket::instance()` to get references to instances of `websockets.asyncio.ServerConnection` and `websockets.sync.ServerConnection`. */ abstract class InstanceSource extends DataFlow::LocalSourceNode { } - /** Gets a reference to an instance of `websockets.asyncio.ServerConnection` or `websockets.threading.ServerConnection`. */ + /** Gets a reference to an instance of `websockets.asyncio.ServerConnection` or `websockets.sync.ServerConnection`. */ private DataFlow::TypeTrackingNode instance(DataFlow::TypeTracker t) { t.start() and result instanceof InstanceSource @@ -61,7 +62,7 @@ module Websockets { exists(DataFlow::TypeTracker t2 | result = instance(t2).track(t2, t)) } - /** Gets a reference to an instance of `websockets.asyncio.ServerConnection` or `websockets.threading.ServerConnection`. */ + /** Gets a reference to an instance of `websockets.asyncio.ServerConnection` or `websockets.sync.ServerConnection`. */ DataFlow::Node instance() { instance(DataFlow::TypeTracker::end()).flowsTo(result) } private class HandlerParam extends DataFlow::Node, InstanceSource { From ac55cf95442fa99cbc52aa02f9e0a08b8e81ef0a Mon Sep 17 00:00:00 2001 From: Joe Farebrother Date: Mon, 1 Dec 2025 20:41:59 +0000 Subject: [PATCH 014/433] Update test and qldoc --- python/ql/lib/semmle/python/frameworks/Websockets.qll | 2 +- .../frameworks/websockets/response_test.py | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/python/ql/lib/semmle/python/frameworks/Websockets.qll b/python/ql/lib/semmle/python/frameworks/Websockets.qll index 6690a6ec0368..b4300fc59807 100644 --- a/python/ql/lib/semmle/python/frameworks/Websockets.qll +++ b/python/ql/lib/semmle/python/frameworks/Websockets.qll @@ -50,7 +50,7 @@ module Websockets { * calls, or a special parameter that will be set when functions are called by an external * library. * - * Use the predicate `WebSocket::instance()` to get references to instances of `websockets.asyncio.ServerConnection` and `websockets.sync.ServerConnection`. + * Use the predicate `ServerConnection::instance()` to get references to instances of `websockets.asyncio.ServerConnection` and `websockets.sync.ServerConnection`. */ abstract class InstanceSource extends DataFlow::LocalSourceNode { } diff --git a/python/ql/test/library-tests/frameworks/websockets/response_test.py b/python/ql/test/library-tests/frameworks/websockets/response_test.py index a4a0264e2c26..d7ad630d9cfe 100644 --- a/python/ql/test/library-tests/frameworks/websockets/response_test.py +++ b/python/ql/test/library-tests/frameworks/websockets/response_test.py @@ -34,13 +34,14 @@ def unix_route_handler(websocket, x): # $ MISSING: requestHandler routedParamet if __name__ == "__main__": import sys server = s1 - if len(sys.argv) > 1: - if sys.argv[1] == "kw": + args = sys.argv # $ threatModelSource[commandargs]=sys.argv + if len(args) > 1: + if args[1] == "kw": server = s2 - elif sys.argv[1] == "route": + elif args[1] == "route": server = s3 - elif sys.argv[1] == "unix": + elif args[1] == "unix": server = s4 - elif sys.argv[1] == "unix_route": + elif args[1] == "unix_route": server = s5 server.serve_forever() \ No newline at end of file From 6fc963177cc48266b1f4ed6d7ac1f0c20ee2ebfb Mon Sep 17 00:00:00 2001 From: Paolo Tranquilli Date: Tue, 16 Dec 2025 11:05:39 +0100 Subject: [PATCH 015/433] codegen: mention Rust in the README Updated README to reflect support for the Rust extractor and added details about Rust generated files. --- misc/codegen/README.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/misc/codegen/README.md b/misc/codegen/README.md index 2d45ac67ac20..c4a1ebecdccd 100644 --- a/misc/codegen/README.md +++ b/misc/codegen/README.md @@ -1,14 +1,17 @@ # Code generation suite -This directory contains the code generation suite used by the Swift extractor and the QL library. This suite will use -the abstract class specification of `schema.py` to generate: +This directory contains the code generation suite used by the Swift and Rust extractors and QL library. This suite will use +the abstract class specification of a `schema` python module to generate: * the `dbscheme` file (see [`dbschemegen.py`](generators/dbschemegen.py)) * the QL generated code and when appropriate the corresponding stubs (see [`qlgen.py`](generators/qlgen.py)) -* C++ tags and trap entries (see [`trapgen.py`](generators/trapgen.py)) -* C++ structured classes (see [`cppgen.py`](generators/cppgen.py)) +* QL language tests for testing the extractors (see [`qlgen.py`](generators/qlgen.py)) +* [Swift] C++ tags and trap entries (see [`trapgen.py`](generators/trapgen.py)) +* [Swift] C++ structured classes (see [`cppgen.py`](generators/cppgen.py)) +* [Rust] Rust structured classes (see [`rustgen.py`](generators/rustgen.py)) +* [Rust] Rust sources for extractor language tests extracted from the documentation snippets (see [`rusttestgen.py`](generators/rusttestgen.py)) -An example `schema.py` [can be found in the Swift package](../../swift/schema.py). +Schemas [can be found in the Swift package](../../swift/schema.py) or [in the Rust one](../../rust/schema). ## Usage From 1ac3706e755d055272424f4bbf028c82b52a39fc Mon Sep 17 00:00:00 2001 From: yoff Date: Fri, 9 Jan 2026 13:08:06 +0100 Subject: [PATCH 016/433] Python support `ListElement` in MaD --- .../data/internal/ApiGraphModelsSpecific.qll | 20 +++++++++---------- .../frameworks/data/test.expected | 1 + .../frameworks/data/test.ext.yml | 2 +- 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModelsSpecific.qll b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModelsSpecific.qll index 1b22e8740bc9..7adc24bab14f 100644 --- a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModelsSpecific.qll +++ b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModelsSpecific.qll @@ -142,15 +142,13 @@ API::Node getExtraSuccessorFromNode(API::Node node, AccessPathTokenBase token) { // `DataFlow::DictionaryElementContent` just from seeing a subscript read, so we would // need to add that. (also need to handle things like `DictionaryElementAny` which // doesn't have any value for .getAnArgument()) - ( - token.getName() = "DictionaryElement" and - result = node.getSubscript(token.getAnArgument()) - or - token.getName() = "DictionaryElementAny" and - result = node.getASubscript() and - not exists(token.getAnArgument()) - // TODO: ListElement/SetElement/TupleElement - ) + token.getName() = "DictionaryElement" and + result = node.getSubscript(token.getAnArgument()) + or + token.getName() in ["DictionaryElementAny", "ListElement"] and + result = node.getASubscript() and + not exists(token.getAnArgument()) + // TODO: SetElement/TupleElement // Some features don't have MaD tokens yet, they would need to be added to API-graphs first. // - decorators ("DecoratedClass", "DecoratedMember", "DecoratedParameter") } @@ -261,7 +259,7 @@ predicate isExtraValidTokenNameInIdentifyingAccessPath(string name) { name = [ "Member", "Instance", "Awaited", "Call", "Method", "Subclass", "DictionaryElement", - "DictionaryElementAny" + "DictionaryElementAny", "ListElement" ] } @@ -270,7 +268,7 @@ predicate isExtraValidTokenNameInIdentifyingAccessPath(string name) { * in an identifying access path. */ predicate isExtraValidNoArgumentTokenInIdentifyingAccessPath(string name) { - name = ["Instance", "Awaited", "Call", "Subclass", "DictionaryElementAny"] + name = ["Instance", "Awaited", "Call", "Subclass", "DictionaryElementAny", "ListElement"] } /** diff --git a/python/ql/test/library-tests/frameworks/data/test.expected b/python/ql/test/library-tests/frameworks/data/test.expected index 1e229a280390..84cc34585ca6 100644 --- a/python/ql/test/library-tests/frameworks/data/test.expected +++ b/python/ql/test/library-tests/frameworks/data/test.expected @@ -108,6 +108,7 @@ isSource | test.py:119:20:119:30 | ControlFlowNode for getSource() | test-source | | test.py:124:1:124:33 | ControlFlowNode for Attribute() | test-source | | test.py:126:11:126:43 | ControlFlowNode for Attribute() | test-source | +| test.py:129:11:129:39 | ControlFlowNode for Attribute() | test-source | syntaxErrors | Member[foo | | Member[foo] .Member[bar] | diff --git a/python/ql/test/library-tests/frameworks/data/test.ext.yml b/python/ql/test/library-tests/frameworks/data/test.ext.yml index 26fe6012d0e1..487276eedf66 100644 --- a/python/ql/test/library-tests/frameworks/data/test.ext.yml +++ b/python/ql/test/library-tests/frameworks/data/test.ext.yml @@ -27,7 +27,7 @@ extensions: - ["testlib", "Member[source_dict].DictionaryElement[key].Member[func].ReturnValue", "test-source"] - ["testlib", "Member[source_dict_any].DictionaryElementAny.Member[func].ReturnValue", "test-source"] # TODO: Add support for list/tuples - # - ["testlib", "Member[source_list].ListElement.Member[func].ReturnValue", "test-source"] + - ["testlib", "Member[source_list].ListElement.Member[func].ReturnValue", "test-source"] # - ["testlib", "Member[source_tuple].TupleElement[0].Member[func].ReturnValue", "test-source"] - addsTo: From 157487d8f20a5aec023f1d565211df3ddeacae7d Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Fri, 9 Jan 2026 12:49:12 +0000 Subject: [PATCH 017/433] Java: Add change note for plugin repo support --- .../ql/lib/change-notes/2026-01-09-maven-plugin-registries.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 java/ql/lib/change-notes/2026-01-09-maven-plugin-registries.md diff --git a/java/ql/lib/change-notes/2026-01-09-maven-plugin-registries.md b/java/ql/lib/change-notes/2026-01-09-maven-plugin-registries.md new file mode 100644 index 000000000000..d3d42e9325b8 --- /dev/null +++ b/java/ql/lib/change-notes/2026-01-09-maven-plugin-registries.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* When Maven-compatible private package registries are configured for an organisation for Default Setup, CodeQL will now configure Maven to also use these as plugin repositories. CodeQL previously already configured Maven to use them as regular package repositories. This should now allow Maven plugins to be obtained from private registries. From 6e3fd25b0974049de99d5a3a744f13c230f14636 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Fri, 9 Jan 2026 19:22:37 +0000 Subject: [PATCH 018/433] C++: Add tests for assertions in release builds. --- .../library-tests/ir/ir/PrintAST.expected | 432 ++++++++++++++++++ .../library-tests/ir/ir/aliased_ir.expected | 151 ++++++ cpp/ql/test/library-tests/ir/ir/ir.cpp | 44 ++ .../test/library-tests/ir/ir/raw_ir.expected | 146 ++++++ 4 files changed, 773 insertions(+) diff --git a/cpp/ql/test/library-tests/ir/ir/PrintAST.expected b/cpp/ql/test/library-tests/ir/ir/PrintAST.expected index e6f88ceb7789..9dbcf49777be 100644 --- a/cpp/ql/test/library-tests/ir/ir/PrintAST.expected +++ b/cpp/ql/test/library-tests/ir/ir/PrintAST.expected @@ -25131,6 +25131,438 @@ ir.cpp: # 2823| Type = [ArrayType] int[] # 2823| ValueCategory = lvalue # 2824| getStmt(5): [ReturnStmt] return ... +# 2830| [TopLevelFunction] void test_assert_simple(int, int, unsigned int, int) +# 2830| : +# 2830| getParameter(0): [Parameter] x +# 2830| Type = [IntType] int +# 2830| getParameter(1): [Parameter] y +# 2830| Type = [IntType] int +# 2830| getParameter(2): [Parameter] u +# 2830| Type = [IntType] unsigned int +# 2830| getParameter(3): [Parameter] shadowed +# 2830| Type = [IntType] int +# 2830| getEntryPoint(): [BlockStmt] { ... } +# 2831| getStmt(0): [ExprStmt] ExprStmt +# 2831| getExpr(): [Literal] 0 +# 2831| Type = [IntType] int +# 2831| Value = [Literal] 0 +# 2831| ValueCategory = prvalue +# 2831| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2831| Type = [VoidType] void +# 2831| ValueCategory = prvalue +# 2831| getExpr(): [CStyleCast] (void)... +# 2831| Conversion = [VoidConversion] conversion to void +# 2831| Type = [VoidType] void +# 2831| ValueCategory = prvalue +# 2832| getStmt(1): [ExprStmt] ExprStmt +# 2832| getExpr(): [Literal] 0 +# 2832| Type = [IntType] int +# 2832| Value = [Literal] 0 +# 2832| ValueCategory = prvalue +# 2832| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2832| Type = [VoidType] void +# 2832| ValueCategory = prvalue +# 2832| getExpr(): [CStyleCast] (void)... +# 2832| Conversion = [VoidConversion] conversion to void +# 2832| Type = [VoidType] void +# 2832| ValueCategory = prvalue +# 2833| getStmt(2): [ExprStmt] ExprStmt +# 2833| getExpr(): [Literal] 0 +# 2833| Type = [IntType] int +# 2833| Value = [Literal] 0 +# 2833| ValueCategory = prvalue +# 2833| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2833| Type = [VoidType] void +# 2833| ValueCategory = prvalue +# 2833| getExpr(): [CStyleCast] (void)... +# 2833| Conversion = [VoidConversion] conversion to void +# 2833| Type = [VoidType] void +# 2833| ValueCategory = prvalue +# 2835| getStmt(3): [EmptyStmt] ; +# 2837| getStmt(4): [ExprStmt] ExprStmt +# 2837| getExpr(): [Literal] 0 +# 2837| Type = [IntType] int +# 2837| Value = [Literal] 0 +# 2837| ValueCategory = prvalue +# 2837| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2837| Type = [VoidType] void +# 2837| ValueCategory = prvalue +# 2837| getExpr(): [CStyleCast] (void)... +# 2837| Conversion = [VoidConversion] conversion to void +# 2837| Type = [VoidType] void +# 2837| ValueCategory = prvalue +# 2839| getStmt(5): [BlockStmt] { ... } +# 2840| getStmt(0): [DeclStmt] declaration +# 2840| getDeclarationEntry(0): [VariableDeclarationEntry] definition of shadowed +# 2840| Type = [IntType] int +# 2840| getVariable().getInitializer(): [Initializer] initializer for shadowed +# 2840| getExpr(): [VariableAccess] x +# 2840| Type = [IntType] int +# 2840| ValueCategory = prvalue(load) +# 2841| getStmt(1): [ExprStmt] ExprStmt +# 2841| getExpr(): [Literal] 0 +# 2841| Type = [IntType] int +# 2841| Value = [Literal] 0 +# 2841| ValueCategory = prvalue +# 2841| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2841| Type = [VoidType] void +# 2841| ValueCategory = prvalue +# 2841| getExpr(): [CStyleCast] (void)... +# 2841| Conversion = [VoidConversion] conversion to void +# 2841| Type = [VoidType] void +# 2841| ValueCategory = prvalue +# 2843| getStmt(6): [ReturnStmt] return ... +# 2846| [TemplateFunction,TopLevelFunction] void test_assert_in_template(T, int, unsigned int) +# 2846| : +# 2846| getParameter(0): [Parameter] x +# 2846| Type = [TypeTemplateParameter] T +# 2846| getParameter(1): [Parameter] y +# 2846| Type = [IntType] int +# 2846| getParameter(2): [Parameter] u +# 2846| Type = [IntType] unsigned int +# 2846| getEntryPoint(): [BlockStmt] { ... } +# 2847| getStmt(0): [ExprStmt] ExprStmt +# 2847| getExpr(): [Literal] 0 +# 2847| Type = [IntType] int +# 2847| Value = [Literal] 0 +# 2847| ValueCategory = prvalue +# 2847| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2847| Type = [VoidType] void +# 2847| ValueCategory = prvalue +# 2847| getExpr(): [CStyleCast] (void)... +# 2847| Conversion = [VoidConversion] conversion to void +# 2847| Type = [VoidType] void +# 2847| ValueCategory = prvalue +# 2848| getStmt(1): [ExprStmt] ExprStmt +# 2848| getExpr(): [Literal] 0 +# 2848| Type = [IntType] int +# 2848| Value = [Literal] 0 +# 2848| ValueCategory = prvalue +# 2848| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2848| Type = [VoidType] void +# 2848| ValueCategory = prvalue +# 2848| getExpr(): [CStyleCast] (void)... +# 2848| Conversion = [VoidConversion] conversion to void +# 2848| Type = [VoidType] void +# 2848| ValueCategory = prvalue +# 2849| getStmt(2): [ExprStmt] ExprStmt +# 2849| getExpr(): [Literal] 0 +# 2849| Type = [IntType] int +# 2849| Value = [Literal] 0 +# 2849| ValueCategory = prvalue +# 2849| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2849| Type = [VoidType] void +# 2849| ValueCategory = prvalue +# 2849| getExpr(): [CStyleCast] (void)... +# 2849| Conversion = [VoidConversion] conversion to void +# 2849| Type = [VoidType] void +# 2849| ValueCategory = prvalue +# 2851| getStmt(3): [EmptyStmt] ; +# 2853| getStmt(4): [ExprStmt] ExprStmt +# 2853| getExpr(): [Literal] 0 +# 2853| Type = [IntType] int +# 2853| Value = [Literal] 0 +# 2853| ValueCategory = prvalue +# 2853| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2853| Type = [VoidType] void +# 2853| ValueCategory = prvalue +# 2853| getExpr(): [CStyleCast] (void)... +# 2853| Conversion = [VoidConversion] conversion to void +# 2853| Type = [VoidType] void +# 2853| ValueCategory = prvalue +# 2855| getStmt(5): [BlockStmt] { ... } +# 2856| getStmt(0): [DeclStmt] declaration +# 2856| getDeclarationEntry(0): [VariableDeclarationEntry] definition of shadowed +# 2856| Type = [IntType] int +# 2856| getVariable().getInitializer(): [Initializer] initializer for shadowed +# 2856| getExpr(): [VariableAccess] x +# 2856| Type = [TypeTemplateParameter] T +# 2856| ValueCategory = lvalue +# 2856| getExpr().getFullyConverted(): [CStyleCast] (int)... +# 2856| Type = [IntType] int +# 2856| ValueCategory = prvalue +# 2857| getStmt(1): [ExprStmt] ExprStmt +# 2857| getExpr(): [Literal] 0 +# 2857| Type = [IntType] int +# 2857| Value = [Literal] 0 +# 2857| ValueCategory = prvalue +# 2857| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2857| Type = [VoidType] void +# 2857| ValueCategory = prvalue +# 2857| getExpr(): [CStyleCast] (void)... +# 2857| Conversion = [VoidConversion] conversion to void +# 2857| Type = [VoidType] void +# 2857| ValueCategory = prvalue +# 2859| getStmt(6): [ExprStmt] ExprStmt +# 2859| getExpr(): [Literal] 0 +# 2859| Type = [IntType] int +# 2859| Value = [Literal] 0 +# 2859| ValueCategory = prvalue +# 2859| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2859| Type = [VoidType] void +# 2859| ValueCategory = prvalue +# 2859| getExpr(): [CStyleCast] (void)... +# 2859| Conversion = [VoidConversion] conversion to void +# 2859| Type = [VoidType] void +# 2859| ValueCategory = prvalue +# 2860| getStmt(7): [ReturnStmt] return ... +# 2846| [FunctionTemplateInstantiation,TopLevelFunction] void test_assert_in_template(int, int, unsigned int) +# 2846| : +# 2846| getParameter(0): [Parameter] x +# 2846| Type = [IntType] int +# 2846| getParameter(1): [Parameter] y +# 2846| Type = [IntType] int +# 2846| getParameter(2): [Parameter] u +# 2846| Type = [IntType] unsigned int +# 2846| getEntryPoint(): [BlockStmt] { ... } +# 2847| getStmt(0): [ExprStmt] ExprStmt +# 2847| getExpr(): [Literal] 0 +# 2847| Type = [IntType] int +# 2847| Value = [Literal] 0 +# 2847| ValueCategory = prvalue +# 2847| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2847| Type = [VoidType] void +# 2847| ValueCategory = prvalue +# 2847| getExpr(): [CStyleCast] (void)... +# 2847| Conversion = [VoidConversion] conversion to void +# 2847| Type = [VoidType] void +# 2847| ValueCategory = prvalue +# 2848| getStmt(1): [ExprStmt] ExprStmt +# 2848| getExpr(): [Literal] 0 +# 2848| Type = [IntType] int +# 2848| Value = [Literal] 0 +# 2848| ValueCategory = prvalue +# 2848| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2848| Type = [VoidType] void +# 2848| ValueCategory = prvalue +# 2848| getExpr(): [CStyleCast] (void)... +# 2848| Conversion = [VoidConversion] conversion to void +# 2848| Type = [VoidType] void +# 2848| ValueCategory = prvalue +# 2849| getStmt(2): [ExprStmt] ExprStmt +# 2849| getExpr(): [Literal] 0 +# 2849| Type = [IntType] int +# 2849| Value = [Literal] 0 +# 2849| ValueCategory = prvalue +# 2849| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2849| Type = [VoidType] void +# 2849| ValueCategory = prvalue +# 2849| getExpr(): [CStyleCast] (void)... +# 2849| Conversion = [VoidConversion] conversion to void +# 2849| Type = [VoidType] void +# 2849| ValueCategory = prvalue +# 2851| getStmt(3): [EmptyStmt] ; +# 2853| getStmt(4): [ExprStmt] ExprStmt +# 2853| getExpr(): [Literal] 0 +# 2853| Type = [IntType] int +# 2853| Value = [Literal] 0 +# 2853| ValueCategory = prvalue +# 2853| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2853| Type = [VoidType] void +# 2853| ValueCategory = prvalue +# 2853| getExpr(): [CStyleCast] (void)... +# 2853| Conversion = [VoidConversion] conversion to void +# 2853| Type = [VoidType] void +# 2853| ValueCategory = prvalue +# 2855| getStmt(5): [BlockStmt] { ... } +# 2856| getStmt(0): [DeclStmt] declaration +# 2856| getDeclarationEntry(0): [VariableDeclarationEntry] definition of shadowed +# 2856| Type = [IntType] int +# 2856| getVariable().getInitializer(): [Initializer] initializer for shadowed +# 2856| getExpr(): [VariableAccess] x +# 2856| Type = [IntType] int +# 2856| ValueCategory = prvalue(load) +# 2857| getStmt(1): [ExprStmt] ExprStmt +# 2857| getExpr(): [Literal] 0 +# 2857| Type = [IntType] int +# 2857| Value = [Literal] 0 +# 2857| ValueCategory = prvalue +# 2857| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2857| Type = [VoidType] void +# 2857| ValueCategory = prvalue +# 2857| getExpr(): [CStyleCast] (void)... +# 2857| Conversion = [VoidConversion] conversion to void +# 2857| Type = [VoidType] void +# 2857| ValueCategory = prvalue +# 2859| getStmt(6): [ExprStmt] ExprStmt +# 2859| getExpr(): [Literal] 0 +# 2859| Type = [IntType] int +# 2859| Value = [Literal] 0 +# 2859| ValueCategory = prvalue +# 2859| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2859| Type = [VoidType] void +# 2859| ValueCategory = prvalue +# 2859| getExpr(): [CStyleCast] (void)... +# 2859| Conversion = [VoidConversion] conversion to void +# 2859| Type = [VoidType] void +# 2859| ValueCategory = prvalue +# 2860| getStmt(7): [ReturnStmt] return ... +# 2846| [FunctionTemplateInstantiation,TopLevelFunction] void test_assert_in_template(short, int, unsigned int) +# 2846| : +# 2846| getParameter(0): [Parameter] x +# 2846| Type = [ShortType] short +# 2846| getParameter(1): [Parameter] y +# 2846| Type = [IntType] int +# 2846| getParameter(2): [Parameter] u +# 2846| Type = [IntType] unsigned int +# 2846| getEntryPoint(): [BlockStmt] { ... } +# 2847| getStmt(0): [ExprStmt] ExprStmt +# 2847| getExpr(): [Literal] 0 +# 2847| Type = [IntType] int +# 2847| Value = [Literal] 0 +# 2847| ValueCategory = prvalue +# 2847| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2847| Type = [VoidType] void +# 2847| ValueCategory = prvalue +# 2847| getExpr(): [CStyleCast] (void)... +# 2847| Conversion = [VoidConversion] conversion to void +# 2847| Type = [VoidType] void +# 2847| ValueCategory = prvalue +# 2848| getStmt(1): [ExprStmt] ExprStmt +# 2848| getExpr(): [Literal] 0 +# 2848| Type = [IntType] int +# 2848| Value = [Literal] 0 +# 2848| ValueCategory = prvalue +# 2848| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2848| Type = [VoidType] void +# 2848| ValueCategory = prvalue +# 2848| getExpr(): [CStyleCast] (void)... +# 2848| Conversion = [VoidConversion] conversion to void +# 2848| Type = [VoidType] void +# 2848| ValueCategory = prvalue +# 2849| getStmt(2): [ExprStmt] ExprStmt +# 2849| getExpr(): [Literal] 0 +# 2849| Type = [IntType] int +# 2849| Value = [Literal] 0 +# 2849| ValueCategory = prvalue +# 2849| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2849| Type = [VoidType] void +# 2849| ValueCategory = prvalue +# 2849| getExpr(): [CStyleCast] (void)... +# 2849| Conversion = [VoidConversion] conversion to void +# 2849| Type = [VoidType] void +# 2849| ValueCategory = prvalue +# 2851| getStmt(3): [EmptyStmt] ; +# 2853| getStmt(4): [ExprStmt] ExprStmt +# 2853| getExpr(): [Literal] 0 +# 2853| Type = [IntType] int +# 2853| Value = [Literal] 0 +# 2853| ValueCategory = prvalue +# 2853| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2853| Type = [VoidType] void +# 2853| ValueCategory = prvalue +# 2853| getExpr(): [CStyleCast] (void)... +# 2853| Conversion = [VoidConversion] conversion to void +# 2853| Type = [VoidType] void +# 2853| ValueCategory = prvalue +# 2855| getStmt(5): [BlockStmt] { ... } +# 2856| getStmt(0): [DeclStmt] declaration +# 2856| getDeclarationEntry(0): [VariableDeclarationEntry] definition of shadowed +# 2856| Type = [IntType] int +# 2856| getVariable().getInitializer(): [Initializer] initializer for shadowed +# 2856| getExpr(): [VariableAccess] x +# 2856| Type = [ShortType] short +# 2856| ValueCategory = prvalue(load) +# 2856| getExpr().getFullyConverted(): [CStyleCast] (int)... +# 2856| Conversion = [IntegralConversion] integral conversion +# 2856| Type = [IntType] int +# 2856| ValueCategory = prvalue +# 2857| getStmt(1): [ExprStmt] ExprStmt +# 2857| getExpr(): [Literal] 0 +# 2857| Type = [IntType] int +# 2857| Value = [Literal] 0 +# 2857| ValueCategory = prvalue +# 2857| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2857| Type = [VoidType] void +# 2857| ValueCategory = prvalue +# 2857| getExpr(): [CStyleCast] (void)... +# 2857| Conversion = [VoidConversion] conversion to void +# 2857| Type = [VoidType] void +# 2857| ValueCategory = prvalue +# 2859| getStmt(6): [ExprStmt] ExprStmt +# 2859| getExpr(): [Literal] 0 +# 2859| Type = [IntType] int +# 2859| Value = [Literal] 0 +# 2859| ValueCategory = prvalue +# 2859| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2859| Type = [VoidType] void +# 2859| ValueCategory = prvalue +# 2859| getExpr(): [CStyleCast] (void)... +# 2859| Conversion = [VoidConversion] conversion to void +# 2859| Type = [VoidType] void +# 2859| ValueCategory = prvalue +# 2860| getStmt(7): [ReturnStmt] return ... +# 2865| [TopLevelFunction] void complex_assertions(int, bool, int) +# 2865| : +# 2865| getParameter(0): [Parameter] x +# 2865| Type = [IntType] int +# 2865| getParameter(1): [Parameter] b +# 2865| Type = [BoolType] bool +# 2865| getParameter(2): [Parameter] max +# 2865| Type = [IntType] int +# 2865| getEntryPoint(): [BlockStmt] { ... } +# 2866| getStmt(0): [DeclStmt] declaration +# 2866| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y +# 2866| Type = [IntType] int +# 2866| getVariable().getInitializer(): [Initializer] initializer for y +# 2866| getExpr(): [CommaExpr] ... , ... +# 2866| Type = [IntType] int +# 2866| ValueCategory = prvalue(load) +# 2866| getLeftOperand(): [Literal] 0 +# 2866| Type = [IntType] int +# 2866| Value = [Literal] 0 +# 2866| ValueCategory = prvalue +# 2866| getRightOperand(): [VariableAccess] x +# 2866| Type = [IntType] int +# 2866| ValueCategory = prvalue(load) +# 2866| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...) +# 2866| Type = [VoidType] void +# 2866| ValueCategory = prvalue +# 2866| getExpr(): [CStyleCast] (void)... +# 2866| Conversion = [VoidConversion] conversion to void +# 2866| Type = [VoidType] void +# 2866| ValueCategory = prvalue +# 2866| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2866| Type = [IntType] int +# 2866| ValueCategory = prvalue(load) +# 2867| getStmt(1): [DeclStmt] declaration +# 2867| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z +# 2867| Type = [IntType] int +# 2867| getVariable().getInitializer(): [Initializer] initializer for z +# 2867| getExpr(): [ConditionalExpr] ... ? ... : ... +# 2867| Type = [IntType] int +# 2867| ValueCategory = prvalue +# 2867| getCondition(): [VariableAccess] b +# 2867| Type = [BoolType] bool +# 2867| ValueCategory = prvalue(load) +# 2867| getThen(): [CommaExpr] ... , ... +# 2867| Type = [IntType] int +# 2867| Value = [CommaExpr] 0 +# 2867| ValueCategory = prvalue +# 2867| getLeftOperand(): [Literal] 0 +# 2867| Type = [IntType] int +# 2867| Value = [Literal] 0 +# 2867| ValueCategory = prvalue +# 2867| getRightOperand(): [Literal] 0 +# 2867| Type = [IntType] int +# 2867| Value = [Literal] 0 +# 2867| ValueCategory = prvalue +# 2867| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...) +# 2867| Type = [VoidType] void +# 2867| ValueCategory = prvalue +# 2867| getExpr(): [CStyleCast] (void)... +# 2867| Conversion = [VoidConversion] conversion to void +# 2867| Type = [VoidType] void +# 2867| ValueCategory = prvalue +# 2867| getElse(): [Literal] 1 +# 2867| Type = [IntType] int +# 2867| Value = [Literal] 1 +# 2867| ValueCategory = prvalue +# 2867| getThen().getFullyConverted(): [ParenthesisExpr] (...) +# 2867| Type = [IntType] int +# 2867| Value = [ParenthesisExpr] 0 +# 2867| ValueCategory = prvalue +# 2868| getStmt(2): [ReturnStmt] return ... ir23.cpp: # 1| [TopLevelFunction] bool consteval_1() # 1| : diff --git a/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected b/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected index 94daf808a722..5e2fb4a38092 100644 --- a/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected +++ b/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected @@ -20741,6 +20741,157 @@ ir.cpp: # 2821| v2821_10(void) = AliasedUse : m2821_3 # 2821| v2821_11(void) = ExitFunction : +# 2830| void test_assert_simple(int, int, unsigned int, int) +# 2830| Block 0 +# 2830| v2830_1(void) = EnterFunction : +# 2830| m2830_2(unknown) = AliasedDefinition : +# 2830| m2830_3(unknown) = InitializeNonLocal : +# 2830| m2830_4(unknown) = Chi : total:m2830_2, partial:m2830_3 +# 2830| r2830_5(glval) = VariableAddress[x] : +# 2830| m2830_6(int) = InitializeParameter[x] : &:r2830_5 +# 2830| r2830_7(glval) = VariableAddress[y] : +# 2830| m2830_8(int) = InitializeParameter[y] : &:r2830_7 +# 2830| r2830_9(glval) = VariableAddress[u] : +# 2830| m2830_10(unsigned int) = InitializeParameter[u] : &:r2830_9 +# 2830| r2830_11(glval) = VariableAddress[shadowed] : +# 2830| m2830_12(int) = InitializeParameter[shadowed] : &:r2830_11 +# 2831| r2831_1(int) = Constant[0] : +# 2831| v2831_2(void) = Convert : r2831_1 +# 2832| r2832_1(int) = Constant[0] : +# 2832| v2832_2(void) = Convert : r2832_1 +# 2833| r2833_1(int) = Constant[0] : +# 2833| v2833_2(void) = Convert : r2833_1 +# 2835| v2835_1(void) = NoOp : +# 2837| r2837_1(int) = Constant[0] : +# 2837| v2837_2(void) = Convert : r2837_1 +# 2840| r2840_1(glval) = VariableAddress[shadowed] : +# 2840| r2840_2(glval) = VariableAddress[x] : +# 2840| r2840_3(int) = Load[x] : &:r2840_2, m2830_6 +# 2840| m2840_4(int) = Store[shadowed] : &:r2840_1, r2840_3 +# 2841| r2841_1(int) = Constant[0] : +# 2841| v2841_2(void) = Convert : r2841_1 +# 2843| v2843_1(void) = NoOp : +# 2830| v2830_13(void) = ReturnVoid : +# 2830| v2830_14(void) = AliasedUse : m2830_3 +# 2830| v2830_15(void) = ExitFunction : + +# 2846| void test_assert_in_template(int, int, unsigned int) +# 2846| Block 0 +# 2846| v2846_1(void) = EnterFunction : +# 2846| m2846_2(unknown) = AliasedDefinition : +# 2846| m2846_3(unknown) = InitializeNonLocal : +# 2846| m2846_4(unknown) = Chi : total:m2846_2, partial:m2846_3 +# 2846| r2846_5(glval) = VariableAddress[x] : +# 2846| m2846_6(int) = InitializeParameter[x] : &:r2846_5 +# 2846| r2846_7(glval) = VariableAddress[y] : +# 2846| m2846_8(int) = InitializeParameter[y] : &:r2846_7 +# 2846| r2846_9(glval) = VariableAddress[u] : +# 2846| m2846_10(unsigned int) = InitializeParameter[u] : &:r2846_9 +# 2847| r2847_1(int) = Constant[0] : +# 2847| v2847_2(void) = Convert : r2847_1 +# 2848| r2848_1(int) = Constant[0] : +# 2848| v2848_2(void) = Convert : r2848_1 +# 2849| r2849_1(int) = Constant[0] : +# 2849| v2849_2(void) = Convert : r2849_1 +# 2851| v2851_1(void) = NoOp : +# 2853| r2853_1(int) = Constant[0] : +# 2853| v2853_2(void) = Convert : r2853_1 +# 2856| r2856_1(glval) = VariableAddress[shadowed] : +# 2856| r2856_2(glval) = VariableAddress[x] : +# 2856| r2856_3(int) = Load[x] : &:r2856_2, m2846_6 +# 2856| m2856_4(int) = Store[shadowed] : &:r2856_1, r2856_3 +# 2857| r2857_1(int) = Constant[0] : +# 2857| v2857_2(void) = Convert : r2857_1 +# 2859| r2859_1(int) = Constant[0] : +# 2859| v2859_2(void) = Convert : r2859_1 +# 2860| v2860_1(void) = NoOp : +# 2846| v2846_11(void) = ReturnVoid : +# 2846| v2846_12(void) = AliasedUse : m2846_3 +# 2846| v2846_13(void) = ExitFunction : + +# 2846| void test_assert_in_template(short, int, unsigned int) +# 2846| Block 0 +# 2846| v2846_1(void) = EnterFunction : +# 2846| m2846_2(unknown) = AliasedDefinition : +# 2846| m2846_3(unknown) = InitializeNonLocal : +# 2846| m2846_4(unknown) = Chi : total:m2846_2, partial:m2846_3 +# 2846| r2846_5(glval) = VariableAddress[x] : +# 2846| m2846_6(short) = InitializeParameter[x] : &:r2846_5 +# 2846| r2846_7(glval) = VariableAddress[y] : +# 2846| m2846_8(int) = InitializeParameter[y] : &:r2846_7 +# 2846| r2846_9(glval) = VariableAddress[u] : +# 2846| m2846_10(unsigned int) = InitializeParameter[u] : &:r2846_9 +# 2847| r2847_1(int) = Constant[0] : +# 2847| v2847_2(void) = Convert : r2847_1 +# 2848| r2848_1(int) = Constant[0] : +# 2848| v2848_2(void) = Convert : r2848_1 +# 2849| r2849_1(int) = Constant[0] : +# 2849| v2849_2(void) = Convert : r2849_1 +# 2851| v2851_1(void) = NoOp : +# 2853| r2853_1(int) = Constant[0] : +# 2853| v2853_2(void) = Convert : r2853_1 +# 2856| r2856_1(glval) = VariableAddress[shadowed] : +# 2856| r2856_2(glval) = VariableAddress[x] : +# 2856| r2856_3(short) = Load[x] : &:r2856_2, m2846_6 +# 2856| r2856_4(int) = Convert : r2856_3 +# 2856| m2856_5(int) = Store[shadowed] : &:r2856_1, r2856_4 +# 2857| r2857_1(int) = Constant[0] : +# 2857| v2857_2(void) = Convert : r2857_1 +# 2859| r2859_1(int) = Constant[0] : +# 2859| v2859_2(void) = Convert : r2859_1 +# 2860| v2860_1(void) = NoOp : +# 2846| v2846_11(void) = ReturnVoid : +# 2846| v2846_12(void) = AliasedUse : m2846_3 +# 2846| v2846_13(void) = ExitFunction : + +# 2865| void complex_assertions(int, bool, int) +# 2865| Block 0 +# 2865| v2865_1(void) = EnterFunction : +# 2865| m2865_2(unknown) = AliasedDefinition : +# 2865| m2865_3(unknown) = InitializeNonLocal : +# 2865| m2865_4(unknown) = Chi : total:m2865_2, partial:m2865_3 +# 2865| r2865_5(glval) = VariableAddress[x] : +# 2865| m2865_6(int) = InitializeParameter[x] : &:r2865_5 +# 2865| r2865_7(glval) = VariableAddress[b] : +# 2865| m2865_8(bool) = InitializeParameter[b] : &:r2865_7 +# 2865| r2865_9(glval) = VariableAddress[max] : +# 2865| m2865_10(int) = InitializeParameter[max] : &:r2865_9 +# 2866| r2866_1(glval) = VariableAddress[y] : +# 2866| r2866_2(int) = Constant[0] : +# 2866| v2866_3(void) = Convert : r2866_2 +# 2866| r2866_4(glval) = VariableAddress[x] : +# 2866| r2866_5(int) = Load[x] : &:r2866_4, m2865_6 +# 2866| r2866_6(int) = CopyValue : r2866_5 +# 2866| m2866_7(int) = Store[y] : &:r2866_1, r2866_6 +# 2867| r2867_1(glval) = VariableAddress[z] : +# 2867| r2867_2(glval) = VariableAddress[b] : +# 2867| r2867_3(bool) = Load[b] : &:r2867_2, m2865_8 +# 2867| v2867_4(void) = ConditionalBranch : r2867_3 +#-----| False -> Block 3 +#-----| True -> Block 2 + +# 2867| Block 1 +# 2867| m2867_5(int) = Phi : from 2:m2867_11, from 3:m2867_14 +# 2867| r2867_6(glval) = VariableAddress[#temp2867:13] : +# 2867| r2867_7(int) = Load[#temp2867:13] : &:r2867_6, m2867_5 +# 2867| m2867_8(int) = Store[z] : &:r2867_1, r2867_7 +# 2868| v2868_1(void) = NoOp : +# 2865| v2865_11(void) = ReturnVoid : +# 2865| v2865_12(void) = AliasedUse : m2865_3 +# 2865| v2865_13(void) = ExitFunction : + +# 2867| Block 2 +# 2867| r2867_9(int) = Constant[0] : +# 2867| r2867_10(glval) = VariableAddress[#temp2867:13] : +# 2867| m2867_11(int) = Store[#temp2867:13] : &:r2867_10, r2867_9 +#-----| Goto -> Block 1 + +# 2867| Block 3 +# 2867| r2867_12(int) = Constant[1] : +# 2867| r2867_13(glval) = VariableAddress[#temp2867:13] : +# 2867| m2867_14(int) = Store[#temp2867:13] : &:r2867_13, r2867_12 +#-----| Goto -> Block 1 + ir23.cpp: # 1| bool consteval_1() # 1| Block 0 diff --git a/cpp/ql/test/library-tests/ir/ir/ir.cpp b/cpp/ql/test/library-tests/ir/ir/ir.cpp index 99876f7e9a47..c915727a7b46 100644 --- a/cpp/ql/test/library-tests/ir/ir/ir.cpp +++ b/cpp/ql/test/library-tests/ir/ir/ir.cpp @@ -2823,4 +2823,48 @@ void vla_sizeof_test5(int len1, size_t len2) { size_t z = sizeof((*&tmp1)[1]); } +// Common definitions for assertions in release builds +#define assert(x) ((void)0) +#define __analysis_assume(x) + +void test_assert_simple(int x, int y, unsigned u, int shadowed) { + assert(x > 0); + assert(0 < x); + assert(x < y); + + __analysis_assume(x != 2); + + assert(u < x); + + { + int shadowed = x; + assert(shadowed > 0); + } +} + +template +void test_assert_in_template(T x, int y, unsigned u) { + assert(x > 0); + assert(0 < x); + assert(x < y); + + __analysis_assume(x != 2); + + assert(u < x); + + { + int shadowed = x; + assert(shadowed > 0); + } + assert(x> 0); +} + +template void test_assert_in_template(int, int, unsigned); +template void test_assert_in_template(short, int, unsigned); + +void complex_assertions(int x, bool b, int max) { + int y = (assert(x > 0), x); + int z = b ? (assert(x != 0), 0) : 1; +} + // semmle-extractor-options: -std=c++20 --clang diff --git a/cpp/ql/test/library-tests/ir/ir/raw_ir.expected b/cpp/ql/test/library-tests/ir/ir/raw_ir.expected index 94e18abb9dfa..54065043dca9 100644 --- a/cpp/ql/test/library-tests/ir/ir/raw_ir.expected +++ b/cpp/ql/test/library-tests/ir/ir/raw_ir.expected @@ -18880,6 +18880,152 @@ ir.cpp: # 2821| v2821_9(void) = AliasedUse : ~m? # 2821| v2821_10(void) = ExitFunction : +# 2830| void test_assert_simple(int, int, unsigned int, int) +# 2830| Block 0 +# 2830| v2830_1(void) = EnterFunction : +# 2830| mu2830_2(unknown) = AliasedDefinition : +# 2830| mu2830_3(unknown) = InitializeNonLocal : +# 2830| r2830_4(glval) = VariableAddress[x] : +# 2830| mu2830_5(int) = InitializeParameter[x] : &:r2830_4 +# 2830| r2830_6(glval) = VariableAddress[y] : +# 2830| mu2830_7(int) = InitializeParameter[y] : &:r2830_6 +# 2830| r2830_8(glval) = VariableAddress[u] : +# 2830| mu2830_9(unsigned int) = InitializeParameter[u] : &:r2830_8 +# 2830| r2830_10(glval) = VariableAddress[shadowed] : +# 2830| mu2830_11(int) = InitializeParameter[shadowed] : &:r2830_10 +# 2831| r2831_1(int) = Constant[0] : +# 2831| v2831_2(void) = Convert : r2831_1 +# 2832| r2832_1(int) = Constant[0] : +# 2832| v2832_2(void) = Convert : r2832_1 +# 2833| r2833_1(int) = Constant[0] : +# 2833| v2833_2(void) = Convert : r2833_1 +# 2835| v2835_1(void) = NoOp : +# 2837| r2837_1(int) = Constant[0] : +# 2837| v2837_2(void) = Convert : r2837_1 +# 2840| r2840_1(glval) = VariableAddress[shadowed] : +# 2840| r2840_2(glval) = VariableAddress[x] : +# 2840| r2840_3(int) = Load[x] : &:r2840_2, ~m? +# 2840| mu2840_4(int) = Store[shadowed] : &:r2840_1, r2840_3 +# 2841| r2841_1(int) = Constant[0] : +# 2841| v2841_2(void) = Convert : r2841_1 +# 2843| v2843_1(void) = NoOp : +# 2830| v2830_12(void) = ReturnVoid : +# 2830| v2830_13(void) = AliasedUse : ~m? +# 2830| v2830_14(void) = ExitFunction : + +# 2846| void test_assert_in_template(int, int, unsigned int) +# 2846| Block 0 +# 2846| v2846_1(void) = EnterFunction : +# 2846| mu2846_2(unknown) = AliasedDefinition : +# 2846| mu2846_3(unknown) = InitializeNonLocal : +# 2846| r2846_4(glval) = VariableAddress[x] : +# 2846| mu2846_5(int) = InitializeParameter[x] : &:r2846_4 +# 2846| r2846_6(glval) = VariableAddress[y] : +# 2846| mu2846_7(int) = InitializeParameter[y] : &:r2846_6 +# 2846| r2846_8(glval) = VariableAddress[u] : +# 2846| mu2846_9(unsigned int) = InitializeParameter[u] : &:r2846_8 +# 2847| r2847_1(int) = Constant[0] : +# 2847| v2847_2(void) = Convert : r2847_1 +# 2848| r2848_1(int) = Constant[0] : +# 2848| v2848_2(void) = Convert : r2848_1 +# 2849| r2849_1(int) = Constant[0] : +# 2849| v2849_2(void) = Convert : r2849_1 +# 2851| v2851_1(void) = NoOp : +# 2853| r2853_1(int) = Constant[0] : +# 2853| v2853_2(void) = Convert : r2853_1 +# 2856| r2856_1(glval) = VariableAddress[shadowed] : +# 2856| r2856_2(glval) = VariableAddress[x] : +# 2856| r2856_3(int) = Load[x] : &:r2856_2, ~m? +# 2856| mu2856_4(int) = Store[shadowed] : &:r2856_1, r2856_3 +# 2857| r2857_1(int) = Constant[0] : +# 2857| v2857_2(void) = Convert : r2857_1 +# 2859| r2859_1(int) = Constant[0] : +# 2859| v2859_2(void) = Convert : r2859_1 +# 2860| v2860_1(void) = NoOp : +# 2846| v2846_10(void) = ReturnVoid : +# 2846| v2846_11(void) = AliasedUse : ~m? +# 2846| v2846_12(void) = ExitFunction : + +# 2846| void test_assert_in_template(short, int, unsigned int) +# 2846| Block 0 +# 2846| v2846_1(void) = EnterFunction : +# 2846| mu2846_2(unknown) = AliasedDefinition : +# 2846| mu2846_3(unknown) = InitializeNonLocal : +# 2846| r2846_4(glval) = VariableAddress[x] : +# 2846| mu2846_5(short) = InitializeParameter[x] : &:r2846_4 +# 2846| r2846_6(glval) = VariableAddress[y] : +# 2846| mu2846_7(int) = InitializeParameter[y] : &:r2846_6 +# 2846| r2846_8(glval) = VariableAddress[u] : +# 2846| mu2846_9(unsigned int) = InitializeParameter[u] : &:r2846_8 +# 2847| r2847_1(int) = Constant[0] : +# 2847| v2847_2(void) = Convert : r2847_1 +# 2848| r2848_1(int) = Constant[0] : +# 2848| v2848_2(void) = Convert : r2848_1 +# 2849| r2849_1(int) = Constant[0] : +# 2849| v2849_2(void) = Convert : r2849_1 +# 2851| v2851_1(void) = NoOp : +# 2853| r2853_1(int) = Constant[0] : +# 2853| v2853_2(void) = Convert : r2853_1 +# 2856| r2856_1(glval) = VariableAddress[shadowed] : +# 2856| r2856_2(glval) = VariableAddress[x] : +# 2856| r2856_3(short) = Load[x] : &:r2856_2, ~m? +# 2856| r2856_4(int) = Convert : r2856_3 +# 2856| mu2856_5(int) = Store[shadowed] : &:r2856_1, r2856_4 +# 2857| r2857_1(int) = Constant[0] : +# 2857| v2857_2(void) = Convert : r2857_1 +# 2859| r2859_1(int) = Constant[0] : +# 2859| v2859_2(void) = Convert : r2859_1 +# 2860| v2860_1(void) = NoOp : +# 2846| v2846_10(void) = ReturnVoid : +# 2846| v2846_11(void) = AliasedUse : ~m? +# 2846| v2846_12(void) = ExitFunction : + +# 2865| void complex_assertions(int, bool, int) +# 2865| Block 0 +# 2865| v2865_1(void) = EnterFunction : +# 2865| mu2865_2(unknown) = AliasedDefinition : +# 2865| mu2865_3(unknown) = InitializeNonLocal : +# 2865| r2865_4(glval) = VariableAddress[x] : +# 2865| mu2865_5(int) = InitializeParameter[x] : &:r2865_4 +# 2865| r2865_6(glval) = VariableAddress[b] : +# 2865| mu2865_7(bool) = InitializeParameter[b] : &:r2865_6 +# 2865| r2865_8(glval) = VariableAddress[max] : +# 2865| mu2865_9(int) = InitializeParameter[max] : &:r2865_8 +# 2866| r2866_1(glval) = VariableAddress[y] : +# 2866| r2866_2(int) = Constant[0] : +# 2866| v2866_3(void) = Convert : r2866_2 +# 2866| r2866_4(glval) = VariableAddress[x] : +# 2866| r2866_5(int) = Load[x] : &:r2866_4, ~m? +# 2866| r2866_6(int) = CopyValue : r2866_5 +# 2866| mu2866_7(int) = Store[y] : &:r2866_1, r2866_6 +# 2867| r2867_1(glval) = VariableAddress[z] : +# 2867| r2867_2(glval) = VariableAddress[b] : +# 2867| r2867_3(bool) = Load[b] : &:r2867_2, ~m? +# 2867| v2867_4(void) = ConditionalBranch : r2867_3 +#-----| False -> Block 3 +#-----| True -> Block 2 + +# 2867| Block 1 +# 2867| r2867_5(glval) = VariableAddress[#temp2867:13] : +# 2867| r2867_6(int) = Load[#temp2867:13] : &:r2867_5, ~m? +# 2867| mu2867_7(int) = Store[z] : &:r2867_1, r2867_6 +# 2868| v2868_1(void) = NoOp : +# 2865| v2865_10(void) = ReturnVoid : +# 2865| v2865_11(void) = AliasedUse : ~m? +# 2865| v2865_12(void) = ExitFunction : + +# 2867| Block 2 +# 2867| r2867_8(int) = Constant[0] : +# 2867| r2867_9(glval) = VariableAddress[#temp2867:13] : +# 2867| mu2867_10(int) = Store[#temp2867:13] : &:r2867_9, r2867_8 +#-----| Goto -> Block 1 + +# 2867| Block 3 +# 2867| r2867_11(int) = Constant[1] : +# 2867| r2867_12(glval) = VariableAddress[#temp2867:13] : +# 2867| mu2867_13(int) = Store[#temp2867:13] : &:r2867_12, r2867_11 +#-----| Goto -> Block 1 + ir23.cpp: # 1| bool consteval_1() # 1| Block 0 From 67ab0fee837e4438b9ac986c66538b58b4ab3eaf Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Fri, 9 Jan 2026 19:23:19 +0000 Subject: [PATCH 019/433] C++: Add a few helper predicates. --- cpp/ql/lib/semmle/code/cpp/Element.qll | 5 +++++ cpp/ql/lib/semmle/code/cpp/exprs/Expr.qll | 2 +- cpp/ql/lib/semmle/code/cpp/stmts/Stmt.qll | 7 +++++-- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/Element.qll b/cpp/ql/lib/semmle/code/cpp/Element.qll index b30503d2c94c..ffc0ede4daff 100644 --- a/cpp/ql/lib/semmle/code/cpp/Element.qll +++ b/cpp/ql/lib/semmle/code/cpp/Element.qll @@ -192,6 +192,11 @@ class Element extends ElementBase { */ predicate isAffectedByMacro() { affectedByMacro(this) } + /** Holds if this element is affected by the expansion of `mi`. */ + predicate isAffectedByMacro(MacroInvocation mi) { + affectedbymacroexpansion(underlyingElement(this), unresolveElement(mi)) + } + private Element getEnclosingElementPref() { enclosingfunction(underlyingElement(this), unresolveElement(result)) or result.(Function) = stmtEnclosingElement(this) or diff --git a/cpp/ql/lib/semmle/code/cpp/exprs/Expr.qll b/cpp/ql/lib/semmle/code/cpp/exprs/Expr.qll index 60e2635f338a..851d987b1fd6 100644 --- a/cpp/ql/lib/semmle/code/cpp/exprs/Expr.qll +++ b/cpp/ql/lib/semmle/code/cpp/exprs/Expr.qll @@ -23,7 +23,7 @@ class Expr extends StmtParent, @expr { predicate hasChild(Expr e, int n) { e = this.getChild(n) } /** Gets the enclosing function of this expression, if any. */ - Function getEnclosingFunction() { result = exprEnclosingElement(this) } + override Function getEnclosingFunction() { result = exprEnclosingElement(this) } /** Gets the nearest enclosing set of curly braces around this expression in the source, if any. */ BlockStmt getEnclosingBlock() { result = this.getEnclosingStmt().getEnclosingBlock() } diff --git a/cpp/ql/lib/semmle/code/cpp/stmts/Stmt.qll b/cpp/ql/lib/semmle/code/cpp/stmts/Stmt.qll index bd3a54c61594..cd7504612444 100644 --- a/cpp/ql/lib/semmle/code/cpp/stmts/Stmt.qll +++ b/cpp/ql/lib/semmle/code/cpp/stmts/Stmt.qll @@ -20,7 +20,7 @@ class Stmt extends StmtParent, @stmt { predicate hasChild(Element e, int n) { this.getChild(n) = e } /** Gets the enclosing function of this statement, if any. */ - Function getEnclosingFunction() { result = stmtEnclosingElement(this) } + override Function getEnclosingFunction() { result = stmtEnclosingElement(this) } /** * Gets the nearest enclosing block of this statement in the source, if any. @@ -159,7 +159,10 @@ private class TStmtParent = @stmt or @expr; * * This is normally a statement, but may be a `StmtExpr`. */ -class StmtParent extends ControlFlowNode, TStmtParent { } +class StmtParent extends ControlFlowNode, TStmtParent { + /** Gets the enclosing function of this element, if any. */ + Function getEnclosingFunction() { none() } +} /** * A C/C++ 'expression' statement. From a18f3b68593b1659ce66d0d02fb82104c68fac4c Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Fri, 9 Jan 2026 19:24:23 +0000 Subject: [PATCH 020/433] C++: Avoid generating IR for a few cases where we will be synthesizing assertions. --- .../raw/internal/TranslatedStmt.qll | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll index 9dccf7752aa8..82f1fd49b524 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll @@ -10,6 +10,7 @@ private import TranslatedElement private import TranslatedExpr private import TranslatedFunction private import TranslatedInitialization +private import TranslatedAssertion TranslatedStmt getTranslatedStmt(Stmt stmt) { result.getAst() = stmt } @@ -324,8 +325,16 @@ abstract class TranslatedStmt extends TranslatedElement, TTranslatedStmt { class TranslatedEmptyStmt extends TranslatedStmt { TranslatedEmptyStmt() { - stmt instanceof EmptyStmt or - stmt instanceof LabelStmt or + // An assertion macro invocation can expand to + // an empty statement in release builds. In that case + // we synthedsize the check that would have occured. + // This is handled by `TranslatedAssertion.qll` and so + // we exclude these statements here. + not assertion(_, stmt) and + stmt instanceof EmptyStmt + or + stmt instanceof LabelStmt + or stmt instanceof SwitchCase } @@ -420,6 +429,15 @@ class TranslatedDeclStmt extends TranslatedStmt { class TranslatedExprStmt extends TranslatedStmt { override ExprStmt stmt; + TranslatedExprStmt() { + // An assertion macro invocation typically expand to the + // expression `((void)0)` in release builds. In that case + // we synthedsize the check that would have occured. + // This is handled by `TranslatedAssertion.qll` and so + // we exclude these statements here. + not assertion(_, stmt) + } + TranslatedExpr getExpr() { result = getTranslatedExpr(stmt.getExpr().getFullyConverted()) } override TranslatedElement getChildInternal(int id) { id = 0 and result = this.getExpr() } From aa058c2ccaeb03fe013fcd040c8183dbd8b3673e Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Fri, 9 Jan 2026 19:30:12 +0000 Subject: [PATCH 021/433] C++: Generate IR for assertions in release builds. --- .../raw/internal/InstructionTag.qll | 14 +- .../raw/internal/TranslatedAssertion.qll | 373 ++++++++++++++++++ .../raw/internal/TranslatedElement.qll | 12 +- .../library-tests/ir/ir/aliased_ir.expected | 287 ++++++++++---- .../test/library-tests/ir/ir/raw_ir.expected | 283 +++++++++---- 5 files changed, 805 insertions(+), 164 deletions(-) create mode 100644 cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/InstructionTag.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/InstructionTag.qll index be3f680aa16d..e97e903f0025 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/InstructionTag.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/InstructionTag.qll @@ -104,7 +104,11 @@ newtype TInstructionTag = } or SizeofVlaDimensionTag(int index) { exists(VlaDeclStmt v | exists(v.getTransitiveVlaDimensionStmt(index))) - } + } or + AssertionVarAddressTag() or + AssertionVarLoadTag() or + AssertionOpTag() or + AssertionBranchTag() class InstructionTag extends TInstructionTag { final string toString() { result = getInstructionTagId(this) } @@ -296,4 +300,12 @@ string getInstructionTagId(TInstructionTag tag) { tag = CoAwaitBranchTag() and result = "CoAwaitBranch" or tag = BoolToIntConversionTag() and result = "BoolToIntConversion" + or + tag = AssertionVarAddressTag() and result = "AssertionVarAddress" + or + tag = AssertionVarLoadTag() and result = "AssertionVarLoad" + or + tag = AssertionOpTag() and result = "AssertionOp" + or + tag = AssertionBranchTag() and result = "AssertionBranch" } diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll new file mode 100644 index 000000000000..20248ba18e90 --- /dev/null +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll @@ -0,0 +1,373 @@ +private import cpp +private import semmle.code.cpp.ir.internal.IRUtilities +private import semmle.code.cpp.ir.implementation.internal.OperandTag +private import semmle.code.cpp.ir.internal.CppType +private import semmle.code.cpp.ir.internal.TempVariableTag +private import InstructionTag +private import TranslatedElement +private import TranslatedStmt +private import TranslatedFunction + +/** + * Holds if `s` is a statement that may be an expanded assertion in a + * release build. + */ +pragma[nomagic] +private predicate stmtCandidate(Stmt s) { + not s.isFromUninstantiatedTemplate(_) and + ( + // The expansion of `__analysis_assume(x != 0);` when `__analysis_assume` is + // empty is the empty statement. + s instanceof EmptyStmt + or + // The expansion of `assert(x != 0)` when `assert` is `((void)0)` is a zero literal + // with a void type. + exists(Expr e | + e = s.(ExprStmt).getExpr() and + e.getValue() = "0" and + e.getActualType() instanceof VoidType + ) + ) +} + +pragma[nomagic] +private predicate macroInvocationLocation(int startline, Function f, MacroInvocation mi) { + mi.getMacroName() = ["assert", "__analysis_assume"] and + mi.getLocation().hasLocationInfo(_, startline, _, _, _) and + f.getEntryPoint().isAffectedByMacro(mi) +} + +pragma[nomagic] +private predicate stmtParentLocation(int startline, Function f, StmtParent p) { + p.getEnclosingFunction() = f and + p.getLocation().hasLocationInfo(_, startline, _, _, _) +} + +/** + * Holds if `mi` is a macro invocation with a name that is known + * to correspond to an assertion macro, and the macro invocation + * is the only thing on the line. + */ +pragma[nomagic] +private predicate assertion0(MacroInvocation mi, Stmt s) { + stmtCandidate(s) and + s = + unique(StmtParent p, int startline, Function f | + macroInvocationLocation(startline, f, mi) and + stmtParentLocation(startline, f, p) and + // Also do not count the elements from the expanded macro. i.e., when checking + // if `assert(x)` is the only thing on the line we do not count the + // generated `((void)0)` expression. + not p = mi.getAnExpandedElement() + | + p + ) +} + +private Function getEnclosingFunctionForMacroInvocation(MacroInvocation mi) { + exists(Stmt s | + assertion0(mi, s) and + result = s.getEnclosingFunction() + ) +} + +/** + * Holds if `arg` has two components and the `i`'th component of the string + * `arg` is `s`, and the components are seperated by an operation with + * opcode `opcode`. + */ +bindingset[arg] +pragma[inline_late] +private predicate parseArgument(string arg, string s, int i, Opcode opcode) { + s = + arg.regexpCapture("([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)\\s?<=\\s?([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)", + i + 1) and + opcode instanceof Opcode::CompareLE + or + s = + arg.regexpCapture("([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)\\s?>=\\s?([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)", + i + 1) and + opcode instanceof Opcode::CompareGE + or + not arg.regexpMatch("([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)\\s?<=\\s?([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)") and + s = + arg.regexpCapture("([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)\\s?<\\s?([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)", + i + 1) and + opcode instanceof Opcode::CompareLT + or + not arg.regexpMatch("([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)\\s?>=\\s?([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)") and + s = + arg.regexpCapture("([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)\\s?>\\s?([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)", + i + 1) and + opcode instanceof Opcode::CompareGT + or + s = + arg.regexpCapture("([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)\\s?!=\\s?([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)", + i + 1) and + opcode instanceof Opcode::CompareNE + or + s = + arg.regexpCapture("([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)\\s?==\\s?([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)", + i + 1) and + opcode instanceof Opcode::CompareEQ +} + +/** Gets a local variable named `s` in `f`. */ +pragma[nomagic] +private LocalScopeVariable getAVariableWithNameInFunction(Function f, string s) { + result.getName() = s and + result.getFunction() = f +} + +/** + * Holds if the `i`'th component of the macro invocation `mi` with opcode + * `opcode` is a reference to `var`. + */ +private predicate hasVarAccessMacroArgument(MacroInvocation mi, Variable var, int i, Opcode opcode) { + exists(string arg, string s, Function f | + arg = mi.getUnexpandedArgument(0) and + f = getEnclosingFunctionForMacroInvocation(mi) and + not exists(s.toInt()) and + parseArgument(arg, s, i, opcode) and + var = unique( | | getAVariableWithNameInFunction(f, s)) + ) +} + +/** + * Holds if the `i`'th component of the macro invocation `mi` with opcode + * `opcode` is a + * constant with the value `k`. + */ +private predicate hasConstMacroArgument(MacroInvocation mi, int k, int i, Opcode opcode) { + exists(string arg, string s | + assertion0(mi, _) and + arg = mi.getUnexpandedArgument(0) and + s.toInt() = k and + parseArgument(arg, s, i, opcode) + ) +} + +predicate hasAssertionOperand(MacroInvocation mi, int i) { + hasVarAccessMacroArgument(mi, _, i, _) + or + hasConstMacroArgument(mi, _, i, _) +} + +private predicate hasAssertionOpcode(MacroInvocation mi, Opcode opcode) { + hasVarAccessMacroArgument(mi, _, _, opcode) + or + hasConstMacroArgument(mi, _, _, opcode) +} + +/** + * Holds if `mi` is a macro invocation that is an assertion that should be generated + * in the control-flow graph at `s`. + */ +predicate assertion(MacroInvocation mi, Stmt s) { + assertion0(mi, s) and + hasAssertionOperand(mi, 0) and + hasAssertionOperand(mi, 1) +} + +/** The translation of an operand of an assertion. */ +abstract private class TranslatedAssertionOperand extends TranslatedElement, + TTranslatedAssertionOperand +{ + MacroInvocation mi; + int index; + + TranslatedAssertionOperand() { this = TTranslatedAssertionOperand(mi, index) } + + MacroInvocation getMacroInvocation() { result = mi } + + /** + * Gets the statement that is being replaced by the assertion that uses this + * operand. + */ + Stmt getStmt() { assertion(mi, result) } + + final override Locatable getAst() { result = this.getStmt() } + + final override TranslatedElement getChild(int id) { none() } + + final override Declaration getFunction() { result = this.getStmt().getEnclosingFunction() } + + /** Gets the instruction which holds the result of this operand. */ + abstract Instruction getResult(); + + final override string toString() { result = "Operand of assertion: " + mi } + + /** Gets the index of this operand (i.e., `0` or `1`). */ + final int getIndex() { result = index } +} + +/** An operand of an assertion that is a variable access. */ +private class TranslatedAssertionVarAccess extends TranslatedAssertionOperand { + TranslatedAssertionVarAccess() { hasVarAccessMacroArgument(mi, _, index, _) } + + Variable getVariable() { hasVarAccessMacroArgument(mi, result, index, _) } + + final override IRUserVariable getInstructionVariable(InstructionTag tag) { + tag = AssertionVarAddressTag() and + result.getVariable() = this.getVariable() + } + + final override Instruction getFirstInstruction(EdgeKind kind) { + result = this.getInstruction(AssertionVarAddressTag()) and kind instanceof GotoEdge + } + + final override Instruction getInstructionSuccessorInternal(InstructionTag tag, EdgeKind kind) { + tag = AssertionVarAddressTag() and + kind instanceof GotoEdge and + result = this.getInstruction(AssertionVarLoadTag()) + or + tag = AssertionVarLoadTag() and + result = getTranslatedAssertionMacroInvocation(mi).getChildSuccessor(this, kind) + } + + final override Instruction getALastInstructionInternal() { + result = this.getInstruction(AssertionVarLoadTag()) + } + + override predicate hasInstruction(Opcode opcode, InstructionTag tag, CppType resultType) { + exists(Variable v | v = this.getVariable() | + opcode instanceof Opcode::VariableAddress and + tag = AssertionVarAddressTag() and + resultType = getTypeForGLValue(v.getType()) + or + opcode instanceof Opcode::Load and + tag = AssertionVarLoadTag() and + resultType = getTypeForPRValue(v.getType()) + ) + } + + final override Instruction getInstructionRegisterOperand(InstructionTag tag, OperandTag operandTag) { + tag = AssertionVarLoadTag() and + operandTag instanceof AddressOperandTag and + result = this.getInstruction(AssertionVarAddressTag()) + } + + final override Instruction getResult() { result = this.getInstruction(AssertionVarLoadTag()) } +} + +/** An operand of an assertion that is a constant access. */ +private class TranslatedAssertionConst extends TranslatedAssertionOperand { + TranslatedAssertionConst() { hasConstMacroArgument(mi, _, index, _) } + + int getConst() { hasConstMacroArgument(mi, result, index, _) } + + final override string getInstructionConstantValue(InstructionTag tag) { + tag = OnlyInstructionTag() and + result = this.getConst().toString() + } + + final override Instruction getFirstInstruction(EdgeKind kind) { + result = this.getInstruction(OnlyInstructionTag()) and + kind instanceof GotoEdge + } + + final override Instruction getInstructionSuccessorInternal(InstructionTag tag, EdgeKind kind) { + tag = OnlyInstructionTag() and + result = getTranslatedAssertionMacroInvocation(mi).getChildSuccessor(this, kind) + } + + final override Instruction getALastInstructionInternal() { + result = this.getInstruction(OnlyInstructionTag()) + } + + override predicate hasInstruction(Opcode opcode, InstructionTag tag, CppType resultType) { + opcode instanceof Opcode::Constant and + tag = OnlyInstructionTag() and + resultType = getIntType() + } + + final override Instruction getResult() { result = this.getInstruction(OnlyInstructionTag()) } +} + +/** + * Gets the `TranslatedAssertionMacroInvocation` corresponding to the macro + * invocation `mi`. + */ +TranslatedAssertionMacroInvocation getTranslatedAssertionMacroInvocation(MacroInvocation mi) { + result.getMacroInvocation() = mi +} + +/** + * A synthesized assertion which would have otherwise been invisible because the + * database represents a release build where assertions are disabled. + */ +private class TranslatedAssertionMacroInvocation extends TranslatedStmt { + MacroInvocation mi; + + TranslatedAssertionMacroInvocation() { assertion(mi, stmt) } + + final override Instruction getFirstInstruction(EdgeKind kind) { + result = this.getLeft().getFirstInstruction(kind) + } + + TranslatedAssertionOperand getLeft() { + result.getMacroInvocation() = mi and + result.getIndex() = 0 + } + + TranslatedAssertionOperand getRight() { + result.getMacroInvocation() = mi and + result.getIndex() = 1 + } + + final override Instruction getInstructionSuccessorInternal(InstructionTag tag, EdgeKind kind) { + tag = AssertionOpTag() and + kind instanceof GotoEdge and + result = this.getInstruction(AssertionBranchTag()) + or + tag = AssertionBranchTag() and + kind instanceof TrueEdge and + result = this.getParent().getChildSuccessor(this, _) + } + + final override TranslatedElement getChildInternal(int id) { + id = 0 and result = this.getLeft() + or + id = 1 and result = this.getRight() + } + + final override Instruction getALastInstructionInternal() { + result = this.getInstruction(AssertionBranchTag()) + } + + final override predicate hasInstruction(Opcode opcode, InstructionTag tag, CppType resultType) { + tag = AssertionOpTag() and + resultType = getBoolType() and + hasAssertionOpcode(mi, opcode) + or + tag = AssertionBranchTag() and + resultType = getVoidType() and + opcode instanceof Opcode::ConditionalBranch + } + + final override Instruction getChildSuccessorInternal(TranslatedElement child, EdgeKind kind) { + child = this.getLeft() and + result = this.getRight().getFirstInstruction(kind) + or + child = this.getRight() and + kind instanceof GotoEdge and + result = this.getInstruction(AssertionOpTag()) + } + + final override Instruction getInstructionRegisterOperand(InstructionTag tag, OperandTag operandTag) { + tag = AssertionOpTag() and + ( + operandTag instanceof LeftOperandTag and + result = this.getLeft().getResult() + or + operandTag instanceof RightOperandTag and + result = this.getRight().getResult() + ) + or + tag = AssertionBranchTag() and + operandTag instanceof ConditionOperandTag and + result = this.getInstruction(AssertionOpTag()) + } + + MacroInvocation getMacroInvocation() { result = mi } +} diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedElement.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedElement.qll index 330362f55603..9829388ef177 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedElement.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedElement.qll @@ -12,6 +12,7 @@ private import TranslatedFunction private import TranslatedStmt private import TranslatedExpr private import IRConstruction +private import TranslatedAssertion private import semmle.code.cpp.models.interfaces.SideEffect private import SideEffects @@ -138,6 +139,14 @@ private predicate ignoreExprAndDescendants(Expr expr) { // conditionally constructed (until we have a mechanism for calling these only when the // temporary's constructor was run) isConditionalTemporaryDestructorCall(expr) + or + // An assertion in a release build is often defined as `#define assert(x) ((void)0)`. + // We generate a synthetic assertion in release builds, and when we do that the + // expression `((void)0)` should not be translated. + exists(MacroInvocation mi | + assertion(mi, _) and + expr = mi.getExpr().getFullyConverted() + ) } /** @@ -909,7 +918,8 @@ newtype TTranslatedElement = } or // The side effect that initializes newly-allocated memory. TTranslatedAllocationSideEffect(AllocationExpr expr) { not ignoreSideEffects(expr) } or - TTranslatedStaticStorageDurationVarInit(Variable var) { Raw::varHasIRFunc(var) } + TTranslatedStaticStorageDurationVarInit(Variable var) { Raw::varHasIRFunc(var) } or + TTranslatedAssertionOperand(MacroInvocation mi, int index) { hasAssertionOperand(mi, index) } /** * Gets the index of the first explicitly initialized element in `initList` diff --git a/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected b/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected index 5e2fb4a38092..b7fc1b3a96b1 100644 --- a/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected +++ b/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected @@ -20755,94 +20755,217 @@ ir.cpp: # 2830| m2830_10(unsigned int) = InitializeParameter[u] : &:r2830_9 # 2830| r2830_11(glval) = VariableAddress[shadowed] : # 2830| m2830_12(int) = InitializeParameter[shadowed] : &:r2830_11 -# 2831| r2831_1(int) = Constant[0] : -# 2831| v2831_2(void) = Convert : r2831_1 -# 2832| r2832_1(int) = Constant[0] : -# 2832| v2832_2(void) = Convert : r2832_1 -# 2833| r2833_1(int) = Constant[0] : -# 2833| v2833_2(void) = Convert : r2833_1 -# 2835| v2835_1(void) = NoOp : -# 2837| r2837_1(int) = Constant[0] : -# 2837| v2837_2(void) = Convert : r2837_1 -# 2840| r2840_1(glval) = VariableAddress[shadowed] : -# 2840| r2840_2(glval) = VariableAddress[x] : -# 2840| r2840_3(int) = Load[x] : &:r2840_2, m2830_6 -# 2840| m2840_4(int) = Store[shadowed] : &:r2840_1, r2840_3 -# 2841| r2841_1(int) = Constant[0] : -# 2841| v2841_2(void) = Convert : r2841_1 -# 2843| v2843_1(void) = NoOp : -# 2830| v2830_13(void) = ReturnVoid : -# 2830| v2830_14(void) = AliasedUse : m2830_3 -# 2830| v2830_15(void) = ExitFunction : +# 2831| r2831_1(glval) = VariableAddress[x] : +# 2831| r2831_2(int) = Load[x] : &:r2831_1, m2830_6 +# 2831| r2831_3(int) = Constant[0] : +# 2831| r2831_4(bool) = CompareGT : r2831_2, r2831_3 +# 2831| v2831_5(void) = ConditionalBranch : r2831_4 +#-----| True -> Block 1 + +# 2832| Block 1 +# 2832| r2832_1(int) = Constant[0] : +# 2832| r2832_2(glval) = VariableAddress[x] : +# 2832| r2832_3(int) = Load[x] : &:r2832_2, m2830_6 +# 2832| r2832_4(bool) = CompareLT : r2832_1, r2832_3 +# 2832| v2832_5(void) = ConditionalBranch : r2832_4 +#-----| True -> Block 2 + +# 2833| Block 2 +# 2833| r2833_1(glval) = VariableAddress[x] : +# 2833| r2833_2(int) = Load[x] : &:r2833_1, m2830_6 +# 2833| r2833_3(glval) = VariableAddress[y] : +# 2833| r2833_4(int) = Load[y] : &:r2833_3, m2830_8 +# 2833| r2833_5(bool) = CompareLT : r2833_2, r2833_4 +# 2833| v2833_6(void) = ConditionalBranch : r2833_5 +#-----| True -> Block 3 + +# 2835| Block 3 +# 2835| r2835_1(glval) = VariableAddress[x] : +# 2835| r2835_2(int) = Load[x] : &:r2835_1, m2830_6 +# 2835| r2835_3(int) = Constant[2] : +# 2835| r2835_4(bool) = CompareNE : r2835_2, r2835_3 +# 2835| v2835_5(void) = ConditionalBranch : r2835_4 +#-----| True -> Block 4 + +# 2837| Block 4 +# 2837| r2837_1(glval) = VariableAddress[u] : +# 2837| r2837_2(unsigned int) = Load[u] : &:r2837_1, m2830_10 +# 2837| r2837_3(glval) = VariableAddress[x] : +# 2837| r2837_4(int) = Load[x] : &:r2837_3, m2830_6 +# 2837| r2837_5(bool) = CompareLT : r2837_2, r2837_4 +# 2837| v2837_6(void) = ConditionalBranch : r2837_5 +#-----| True -> Block 5 + +# 2840| Block 5 +# 2840| r2840_1(glval) = VariableAddress[shadowed] : +# 2840| r2840_2(glval) = VariableAddress[x] : +# 2840| r2840_3(int) = Load[x] : &:r2840_2, m2830_6 +# 2840| m2840_4(int) = Store[shadowed] : &:r2840_1, r2840_3 +# 2841| r2841_1(int) = Constant[0] : +# 2841| v2841_2(void) = Convert : r2841_1 +# 2843| v2843_1(void) = NoOp : +# 2830| v2830_13(void) = ReturnVoid : +# 2830| v2830_14(void) = AliasedUse : m2830_3 +# 2830| v2830_15(void) = ExitFunction : # 2846| void test_assert_in_template(int, int, unsigned int) # 2846| Block 0 -# 2846| v2846_1(void) = EnterFunction : -# 2846| m2846_2(unknown) = AliasedDefinition : -# 2846| m2846_3(unknown) = InitializeNonLocal : -# 2846| m2846_4(unknown) = Chi : total:m2846_2, partial:m2846_3 -# 2846| r2846_5(glval) = VariableAddress[x] : -# 2846| m2846_6(int) = InitializeParameter[x] : &:r2846_5 -# 2846| r2846_7(glval) = VariableAddress[y] : -# 2846| m2846_8(int) = InitializeParameter[y] : &:r2846_7 -# 2846| r2846_9(glval) = VariableAddress[u] : -# 2846| m2846_10(unsigned int) = InitializeParameter[u] : &:r2846_9 -# 2847| r2847_1(int) = Constant[0] : -# 2847| v2847_2(void) = Convert : r2847_1 -# 2848| r2848_1(int) = Constant[0] : -# 2848| v2848_2(void) = Convert : r2848_1 -# 2849| r2849_1(int) = Constant[0] : -# 2849| v2849_2(void) = Convert : r2849_1 -# 2851| v2851_1(void) = NoOp : -# 2853| r2853_1(int) = Constant[0] : -# 2853| v2853_2(void) = Convert : r2853_1 -# 2856| r2856_1(glval) = VariableAddress[shadowed] : -# 2856| r2856_2(glval) = VariableAddress[x] : -# 2856| r2856_3(int) = Load[x] : &:r2856_2, m2846_6 -# 2856| m2856_4(int) = Store[shadowed] : &:r2856_1, r2856_3 -# 2857| r2857_1(int) = Constant[0] : -# 2857| v2857_2(void) = Convert : r2857_1 -# 2859| r2859_1(int) = Constant[0] : -# 2859| v2859_2(void) = Convert : r2859_1 -# 2860| v2860_1(void) = NoOp : -# 2846| v2846_11(void) = ReturnVoid : -# 2846| v2846_12(void) = AliasedUse : m2846_3 -# 2846| v2846_13(void) = ExitFunction : +# 2846| v2846_1(void) = EnterFunction : +# 2846| m2846_2(unknown) = AliasedDefinition : +# 2846| m2846_3(unknown) = InitializeNonLocal : +# 2846| m2846_4(unknown) = Chi : total:m2846_2, partial:m2846_3 +# 2846| r2846_5(glval) = VariableAddress[x] : +# 2846| m2846_6(int) = InitializeParameter[x] : &:r2846_5 +# 2846| r2846_7(glval) = VariableAddress[y] : +# 2846| m2846_8(int) = InitializeParameter[y] : &:r2846_7 +# 2846| r2846_9(glval) = VariableAddress[u] : +# 2846| m2846_10(unsigned int) = InitializeParameter[u] : &:r2846_9 +# 2847| r2847_1(glval) = VariableAddress[x] : +# 2847| r2847_2(int) = Load[x] : &:r2847_1, m2846_6 +# 2847| r2847_3(int) = Constant[0] : +# 2847| r2847_4(bool) = CompareGT : r2847_2, r2847_3 +# 2847| v2847_5(void) = ConditionalBranch : r2847_4 +#-----| True -> Block 1 + +# 2848| Block 1 +# 2848| r2848_1(int) = Constant[0] : +# 2848| r2848_2(glval) = VariableAddress[x] : +# 2848| r2848_3(int) = Load[x] : &:r2848_2, m2846_6 +# 2848| r2848_4(bool) = CompareLT : r2848_1, r2848_3 +# 2848| v2848_5(void) = ConditionalBranch : r2848_4 +#-----| True -> Block 2 + +# 2849| Block 2 +# 2849| r2849_1(glval) = VariableAddress[x] : +# 2849| r2849_2(int) = Load[x] : &:r2849_1, m2846_6 +# 2849| r2849_3(glval) = VariableAddress[y] : +# 2849| r2849_4(int) = Load[y] : &:r2849_3, m2846_8 +# 2849| r2849_5(bool) = CompareLT : r2849_2, r2849_4 +# 2849| v2849_6(void) = ConditionalBranch : r2849_5 +#-----| True -> Block 3 + +# 2851| Block 3 +# 2851| r2851_1(glval) = VariableAddress[x] : +# 2851| r2851_2(int) = Load[x] : &:r2851_1, m2846_6 +# 2851| r2851_3(int) = Constant[2] : +# 2851| r2851_4(bool) = CompareNE : r2851_2, r2851_3 +# 2851| v2851_5(void) = ConditionalBranch : r2851_4 +#-----| True -> Block 4 + +# 2853| Block 4 +# 2853| r2853_1(glval) = VariableAddress[u] : +# 2853| r2853_2(unsigned int) = Load[u] : &:r2853_1, m2846_10 +# 2853| r2853_3(glval) = VariableAddress[x] : +# 2853| r2853_4(int) = Load[x] : &:r2853_3, m2846_6 +# 2853| r2853_5(bool) = CompareLT : r2853_2, r2853_4 +# 2853| v2853_6(void) = ConditionalBranch : r2853_5 +#-----| True -> Block 5 + +# 2856| Block 5 +# 2856| r2856_1(glval) = VariableAddress[shadowed] : +# 2856| r2856_2(glval) = VariableAddress[x] : +# 2856| r2856_3(int) = Load[x] : &:r2856_2, m2846_6 +# 2856| m2856_4(int) = Store[shadowed] : &:r2856_1, r2856_3 +# 2857| r2857_1(glval) = VariableAddress[shadowed] : +# 2857| r2857_2(int) = Load[shadowed] : &:r2857_1, m2856_4 +# 2857| r2857_3(int) = Constant[0] : +# 2857| r2857_4(bool) = CompareGT : r2857_2, r2857_3 +# 2857| v2857_5(void) = ConditionalBranch : r2857_4 +#-----| True -> Block 6 + +# 2859| Block 6 +# 2859| r2859_1(glval) = VariableAddress[x] : +# 2859| r2859_2(int) = Load[x] : &:r2859_1, m2846_6 +# 2859| r2859_3(int) = Constant[0] : +# 2859| r2859_4(bool) = CompareGT : r2859_2, r2859_3 +# 2859| v2859_5(void) = ConditionalBranch : r2859_4 +#-----| True -> Block 7 + +# 2860| Block 7 +# 2860| v2860_1(void) = NoOp : +# 2846| v2846_11(void) = ReturnVoid : +# 2846| v2846_12(void) = AliasedUse : m2846_3 +# 2846| v2846_13(void) = ExitFunction : # 2846| void test_assert_in_template(short, int, unsigned int) # 2846| Block 0 -# 2846| v2846_1(void) = EnterFunction : -# 2846| m2846_2(unknown) = AliasedDefinition : -# 2846| m2846_3(unknown) = InitializeNonLocal : -# 2846| m2846_4(unknown) = Chi : total:m2846_2, partial:m2846_3 -# 2846| r2846_5(glval) = VariableAddress[x] : -# 2846| m2846_6(short) = InitializeParameter[x] : &:r2846_5 -# 2846| r2846_7(glval) = VariableAddress[y] : -# 2846| m2846_8(int) = InitializeParameter[y] : &:r2846_7 -# 2846| r2846_9(glval) = VariableAddress[u] : -# 2846| m2846_10(unsigned int) = InitializeParameter[u] : &:r2846_9 -# 2847| r2847_1(int) = Constant[0] : -# 2847| v2847_2(void) = Convert : r2847_1 -# 2848| r2848_1(int) = Constant[0] : -# 2848| v2848_2(void) = Convert : r2848_1 -# 2849| r2849_1(int) = Constant[0] : -# 2849| v2849_2(void) = Convert : r2849_1 -# 2851| v2851_1(void) = NoOp : -# 2853| r2853_1(int) = Constant[0] : -# 2853| v2853_2(void) = Convert : r2853_1 -# 2856| r2856_1(glval) = VariableAddress[shadowed] : -# 2856| r2856_2(glval) = VariableAddress[x] : -# 2856| r2856_3(short) = Load[x] : &:r2856_2, m2846_6 -# 2856| r2856_4(int) = Convert : r2856_3 -# 2856| m2856_5(int) = Store[shadowed] : &:r2856_1, r2856_4 -# 2857| r2857_1(int) = Constant[0] : -# 2857| v2857_2(void) = Convert : r2857_1 -# 2859| r2859_1(int) = Constant[0] : -# 2859| v2859_2(void) = Convert : r2859_1 -# 2860| v2860_1(void) = NoOp : -# 2846| v2846_11(void) = ReturnVoid : -# 2846| v2846_12(void) = AliasedUse : m2846_3 -# 2846| v2846_13(void) = ExitFunction : +# 2846| v2846_1(void) = EnterFunction : +# 2846| m2846_2(unknown) = AliasedDefinition : +# 2846| m2846_3(unknown) = InitializeNonLocal : +# 2846| m2846_4(unknown) = Chi : total:m2846_2, partial:m2846_3 +# 2846| r2846_5(glval) = VariableAddress[x] : +# 2846| m2846_6(short) = InitializeParameter[x] : &:r2846_5 +# 2846| r2846_7(glval) = VariableAddress[y] : +# 2846| m2846_8(int) = InitializeParameter[y] : &:r2846_7 +# 2846| r2846_9(glval) = VariableAddress[u] : +# 2846| m2846_10(unsigned int) = InitializeParameter[u] : &:r2846_9 +# 2847| r2847_1(glval) = VariableAddress[x] : +# 2847| r2847_2(short) = Load[x] : &:r2847_1, m2846_6 +# 2847| r2847_3(int) = Constant[0] : +# 2847| r2847_4(bool) = CompareGT : r2847_2, r2847_3 +# 2847| v2847_5(void) = ConditionalBranch : r2847_4 +#-----| True -> Block 1 + +# 2848| Block 1 +# 2848| r2848_1(int) = Constant[0] : +# 2848| r2848_2(glval) = VariableAddress[x] : +# 2848| r2848_3(short) = Load[x] : &:r2848_2, m2846_6 +# 2848| r2848_4(bool) = CompareLT : r2848_1, r2848_3 +# 2848| v2848_5(void) = ConditionalBranch : r2848_4 +#-----| True -> Block 2 + +# 2849| Block 2 +# 2849| r2849_1(glval) = VariableAddress[x] : +# 2849| r2849_2(short) = Load[x] : &:r2849_1, m2846_6 +# 2849| r2849_3(glval) = VariableAddress[y] : +# 2849| r2849_4(int) = Load[y] : &:r2849_3, m2846_8 +# 2849| r2849_5(bool) = CompareLT : r2849_2, r2849_4 +# 2849| v2849_6(void) = ConditionalBranch : r2849_5 +#-----| True -> Block 3 + +# 2851| Block 3 +# 2851| r2851_1(glval) = VariableAddress[x] : +# 2851| r2851_2(short) = Load[x] : &:r2851_1, m2846_6 +# 2851| r2851_3(int) = Constant[2] : +# 2851| r2851_4(bool) = CompareNE : r2851_2, r2851_3 +# 2851| v2851_5(void) = ConditionalBranch : r2851_4 +#-----| True -> Block 4 + +# 2853| Block 4 +# 2853| r2853_1(glval) = VariableAddress[u] : +# 2853| r2853_2(unsigned int) = Load[u] : &:r2853_1, m2846_10 +# 2853| r2853_3(glval) = VariableAddress[x] : +# 2853| r2853_4(short) = Load[x] : &:r2853_3, m2846_6 +# 2853| r2853_5(bool) = CompareLT : r2853_2, r2853_4 +# 2853| v2853_6(void) = ConditionalBranch : r2853_5 +#-----| True -> Block 5 + +# 2856| Block 5 +# 2856| r2856_1(glval) = VariableAddress[shadowed] : +# 2856| r2856_2(glval) = VariableAddress[x] : +# 2856| r2856_3(short) = Load[x] : &:r2856_2, m2846_6 +# 2856| r2856_4(int) = Convert : r2856_3 +# 2856| m2856_5(int) = Store[shadowed] : &:r2856_1, r2856_4 +# 2857| r2857_1(glval) = VariableAddress[shadowed] : +# 2857| r2857_2(int) = Load[shadowed] : &:r2857_1, m2856_5 +# 2857| r2857_3(int) = Constant[0] : +# 2857| r2857_4(bool) = CompareGT : r2857_2, r2857_3 +# 2857| v2857_5(void) = ConditionalBranch : r2857_4 +#-----| True -> Block 6 + +# 2859| Block 6 +# 2859| r2859_1(glval) = VariableAddress[x] : +# 2859| r2859_2(short) = Load[x] : &:r2859_1, m2846_6 +# 2859| r2859_3(int) = Constant[0] : +# 2859| r2859_4(bool) = CompareGT : r2859_2, r2859_3 +# 2859| v2859_5(void) = ConditionalBranch : r2859_4 +#-----| True -> Block 7 + +# 2860| Block 7 +# 2860| v2860_1(void) = NoOp : +# 2846| v2846_11(void) = ReturnVoid : +# 2846| v2846_12(void) = AliasedUse : m2846_3 +# 2846| v2846_13(void) = ExitFunction : # 2865| void complex_assertions(int, bool, int) # 2865| Block 0 diff --git a/cpp/ql/test/library-tests/ir/ir/raw_ir.expected b/cpp/ql/test/library-tests/ir/ir/raw_ir.expected index 54065043dca9..f21b569f8873 100644 --- a/cpp/ql/test/library-tests/ir/ir/raw_ir.expected +++ b/cpp/ql/test/library-tests/ir/ir/raw_ir.expected @@ -18893,92 +18893,215 @@ ir.cpp: # 2830| mu2830_9(unsigned int) = InitializeParameter[u] : &:r2830_8 # 2830| r2830_10(glval) = VariableAddress[shadowed] : # 2830| mu2830_11(int) = InitializeParameter[shadowed] : &:r2830_10 -# 2831| r2831_1(int) = Constant[0] : -# 2831| v2831_2(void) = Convert : r2831_1 -# 2832| r2832_1(int) = Constant[0] : -# 2832| v2832_2(void) = Convert : r2832_1 -# 2833| r2833_1(int) = Constant[0] : -# 2833| v2833_2(void) = Convert : r2833_1 -# 2835| v2835_1(void) = NoOp : -# 2837| r2837_1(int) = Constant[0] : -# 2837| v2837_2(void) = Convert : r2837_1 -# 2840| r2840_1(glval) = VariableAddress[shadowed] : -# 2840| r2840_2(glval) = VariableAddress[x] : -# 2840| r2840_3(int) = Load[x] : &:r2840_2, ~m? -# 2840| mu2840_4(int) = Store[shadowed] : &:r2840_1, r2840_3 -# 2841| r2841_1(int) = Constant[0] : -# 2841| v2841_2(void) = Convert : r2841_1 -# 2843| v2843_1(void) = NoOp : -# 2830| v2830_12(void) = ReturnVoid : -# 2830| v2830_13(void) = AliasedUse : ~m? -# 2830| v2830_14(void) = ExitFunction : +# 2831| r2831_1(glval) = VariableAddress[x] : +# 2831| r2831_2(int) = Load[x] : &:r2831_1, ~m? +# 2831| r2831_3(int) = Constant[0] : +# 2831| r2831_4(bool) = CompareGT : r2831_2, r2831_3 +# 2831| v2831_5(void) = ConditionalBranch : r2831_4 +#-----| True -> Block 1 + +# 2832| Block 1 +# 2832| r2832_1(int) = Constant[0] : +# 2832| r2832_2(glval) = VariableAddress[x] : +# 2832| r2832_3(int) = Load[x] : &:r2832_2, ~m? +# 2832| r2832_4(bool) = CompareLT : r2832_1, r2832_3 +# 2832| v2832_5(void) = ConditionalBranch : r2832_4 +#-----| True -> Block 2 + +# 2833| Block 2 +# 2833| r2833_1(glval) = VariableAddress[x] : +# 2833| r2833_2(int) = Load[x] : &:r2833_1, ~m? +# 2833| r2833_3(glval) = VariableAddress[y] : +# 2833| r2833_4(int) = Load[y] : &:r2833_3, ~m? +# 2833| r2833_5(bool) = CompareLT : r2833_2, r2833_4 +# 2833| v2833_6(void) = ConditionalBranch : r2833_5 +#-----| True -> Block 3 + +# 2835| Block 3 +# 2835| r2835_1(glval) = VariableAddress[x] : +# 2835| r2835_2(int) = Load[x] : &:r2835_1, ~m? +# 2835| r2835_3(int) = Constant[2] : +# 2835| r2835_4(bool) = CompareNE : r2835_2, r2835_3 +# 2835| v2835_5(void) = ConditionalBranch : r2835_4 +#-----| True -> Block 4 + +# 2837| Block 4 +# 2837| r2837_1(glval) = VariableAddress[u] : +# 2837| r2837_2(unsigned int) = Load[u] : &:r2837_1, ~m? +# 2837| r2837_3(glval) = VariableAddress[x] : +# 2837| r2837_4(int) = Load[x] : &:r2837_3, ~m? +# 2837| r2837_5(bool) = CompareLT : r2837_2, r2837_4 +# 2837| v2837_6(void) = ConditionalBranch : r2837_5 +#-----| True -> Block 5 + +# 2840| Block 5 +# 2840| r2840_1(glval) = VariableAddress[shadowed] : +# 2840| r2840_2(glval) = VariableAddress[x] : +# 2840| r2840_3(int) = Load[x] : &:r2840_2, ~m? +# 2840| mu2840_4(int) = Store[shadowed] : &:r2840_1, r2840_3 +# 2841| r2841_1(int) = Constant[0] : +# 2841| v2841_2(void) = Convert : r2841_1 +# 2843| v2843_1(void) = NoOp : +# 2830| v2830_12(void) = ReturnVoid : +# 2830| v2830_13(void) = AliasedUse : ~m? +# 2830| v2830_14(void) = ExitFunction : # 2846| void test_assert_in_template(int, int, unsigned int) # 2846| Block 0 -# 2846| v2846_1(void) = EnterFunction : -# 2846| mu2846_2(unknown) = AliasedDefinition : -# 2846| mu2846_3(unknown) = InitializeNonLocal : -# 2846| r2846_4(glval) = VariableAddress[x] : -# 2846| mu2846_5(int) = InitializeParameter[x] : &:r2846_4 -# 2846| r2846_6(glval) = VariableAddress[y] : -# 2846| mu2846_7(int) = InitializeParameter[y] : &:r2846_6 -# 2846| r2846_8(glval) = VariableAddress[u] : -# 2846| mu2846_9(unsigned int) = InitializeParameter[u] : &:r2846_8 -# 2847| r2847_1(int) = Constant[0] : -# 2847| v2847_2(void) = Convert : r2847_1 -# 2848| r2848_1(int) = Constant[0] : -# 2848| v2848_2(void) = Convert : r2848_1 -# 2849| r2849_1(int) = Constant[0] : -# 2849| v2849_2(void) = Convert : r2849_1 -# 2851| v2851_1(void) = NoOp : -# 2853| r2853_1(int) = Constant[0] : -# 2853| v2853_2(void) = Convert : r2853_1 -# 2856| r2856_1(glval) = VariableAddress[shadowed] : -# 2856| r2856_2(glval) = VariableAddress[x] : -# 2856| r2856_3(int) = Load[x] : &:r2856_2, ~m? -# 2856| mu2856_4(int) = Store[shadowed] : &:r2856_1, r2856_3 -# 2857| r2857_1(int) = Constant[0] : -# 2857| v2857_2(void) = Convert : r2857_1 -# 2859| r2859_1(int) = Constant[0] : -# 2859| v2859_2(void) = Convert : r2859_1 -# 2860| v2860_1(void) = NoOp : -# 2846| v2846_10(void) = ReturnVoid : -# 2846| v2846_11(void) = AliasedUse : ~m? -# 2846| v2846_12(void) = ExitFunction : +# 2846| v2846_1(void) = EnterFunction : +# 2846| mu2846_2(unknown) = AliasedDefinition : +# 2846| mu2846_3(unknown) = InitializeNonLocal : +# 2846| r2846_4(glval) = VariableAddress[x] : +# 2846| mu2846_5(int) = InitializeParameter[x] : &:r2846_4 +# 2846| r2846_6(glval) = VariableAddress[y] : +# 2846| mu2846_7(int) = InitializeParameter[y] : &:r2846_6 +# 2846| r2846_8(glval) = VariableAddress[u] : +# 2846| mu2846_9(unsigned int) = InitializeParameter[u] : &:r2846_8 +# 2847| r2847_1(glval) = VariableAddress[x] : +# 2847| r2847_2(int) = Load[x] : &:r2847_1, ~m? +# 2847| r2847_3(int) = Constant[0] : +# 2847| r2847_4(bool) = CompareGT : r2847_2, r2847_3 +# 2847| v2847_5(void) = ConditionalBranch : r2847_4 +#-----| True -> Block 1 + +# 2848| Block 1 +# 2848| r2848_1(int) = Constant[0] : +# 2848| r2848_2(glval) = VariableAddress[x] : +# 2848| r2848_3(int) = Load[x] : &:r2848_2, ~m? +# 2848| r2848_4(bool) = CompareLT : r2848_1, r2848_3 +# 2848| v2848_5(void) = ConditionalBranch : r2848_4 +#-----| True -> Block 2 + +# 2849| Block 2 +# 2849| r2849_1(glval) = VariableAddress[x] : +# 2849| r2849_2(int) = Load[x] : &:r2849_1, ~m? +# 2849| r2849_3(glval) = VariableAddress[y] : +# 2849| r2849_4(int) = Load[y] : &:r2849_3, ~m? +# 2849| r2849_5(bool) = CompareLT : r2849_2, r2849_4 +# 2849| v2849_6(void) = ConditionalBranch : r2849_5 +#-----| True -> Block 3 + +# 2851| Block 3 +# 2851| r2851_1(glval) = VariableAddress[x] : +# 2851| r2851_2(int) = Load[x] : &:r2851_1, ~m? +# 2851| r2851_3(int) = Constant[2] : +# 2851| r2851_4(bool) = CompareNE : r2851_2, r2851_3 +# 2851| v2851_5(void) = ConditionalBranch : r2851_4 +#-----| True -> Block 4 + +# 2853| Block 4 +# 2853| r2853_1(glval) = VariableAddress[u] : +# 2853| r2853_2(unsigned int) = Load[u] : &:r2853_1, ~m? +# 2853| r2853_3(glval) = VariableAddress[x] : +# 2853| r2853_4(int) = Load[x] : &:r2853_3, ~m? +# 2853| r2853_5(bool) = CompareLT : r2853_2, r2853_4 +# 2853| v2853_6(void) = ConditionalBranch : r2853_5 +#-----| True -> Block 5 + +# 2856| Block 5 +# 2856| r2856_1(glval) = VariableAddress[shadowed] : +# 2856| r2856_2(glval) = VariableAddress[x] : +# 2856| r2856_3(int) = Load[x] : &:r2856_2, ~m? +# 2856| mu2856_4(int) = Store[shadowed] : &:r2856_1, r2856_3 +# 2857| r2857_1(glval) = VariableAddress[shadowed] : +# 2857| r2857_2(int) = Load[shadowed] : &:r2857_1, ~m? +# 2857| r2857_3(int) = Constant[0] : +# 2857| r2857_4(bool) = CompareGT : r2857_2, r2857_3 +# 2857| v2857_5(void) = ConditionalBranch : r2857_4 +#-----| True -> Block 6 + +# 2859| Block 6 +# 2859| r2859_1(glval) = VariableAddress[x] : +# 2859| r2859_2(int) = Load[x] : &:r2859_1, ~m? +# 2859| r2859_3(int) = Constant[0] : +# 2859| r2859_4(bool) = CompareGT : r2859_2, r2859_3 +# 2859| v2859_5(void) = ConditionalBranch : r2859_4 +#-----| True -> Block 7 + +# 2860| Block 7 +# 2860| v2860_1(void) = NoOp : +# 2846| v2846_10(void) = ReturnVoid : +# 2846| v2846_11(void) = AliasedUse : ~m? +# 2846| v2846_12(void) = ExitFunction : # 2846| void test_assert_in_template(short, int, unsigned int) # 2846| Block 0 -# 2846| v2846_1(void) = EnterFunction : -# 2846| mu2846_2(unknown) = AliasedDefinition : -# 2846| mu2846_3(unknown) = InitializeNonLocal : -# 2846| r2846_4(glval) = VariableAddress[x] : -# 2846| mu2846_5(short) = InitializeParameter[x] : &:r2846_4 -# 2846| r2846_6(glval) = VariableAddress[y] : -# 2846| mu2846_7(int) = InitializeParameter[y] : &:r2846_6 -# 2846| r2846_8(glval) = VariableAddress[u] : -# 2846| mu2846_9(unsigned int) = InitializeParameter[u] : &:r2846_8 -# 2847| r2847_1(int) = Constant[0] : -# 2847| v2847_2(void) = Convert : r2847_1 -# 2848| r2848_1(int) = Constant[0] : -# 2848| v2848_2(void) = Convert : r2848_1 -# 2849| r2849_1(int) = Constant[0] : -# 2849| v2849_2(void) = Convert : r2849_1 -# 2851| v2851_1(void) = NoOp : -# 2853| r2853_1(int) = Constant[0] : -# 2853| v2853_2(void) = Convert : r2853_1 -# 2856| r2856_1(glval) = VariableAddress[shadowed] : -# 2856| r2856_2(glval) = VariableAddress[x] : -# 2856| r2856_3(short) = Load[x] : &:r2856_2, ~m? -# 2856| r2856_4(int) = Convert : r2856_3 -# 2856| mu2856_5(int) = Store[shadowed] : &:r2856_1, r2856_4 -# 2857| r2857_1(int) = Constant[0] : -# 2857| v2857_2(void) = Convert : r2857_1 -# 2859| r2859_1(int) = Constant[0] : -# 2859| v2859_2(void) = Convert : r2859_1 -# 2860| v2860_1(void) = NoOp : -# 2846| v2846_10(void) = ReturnVoid : -# 2846| v2846_11(void) = AliasedUse : ~m? -# 2846| v2846_12(void) = ExitFunction : +# 2846| v2846_1(void) = EnterFunction : +# 2846| mu2846_2(unknown) = AliasedDefinition : +# 2846| mu2846_3(unknown) = InitializeNonLocal : +# 2846| r2846_4(glval) = VariableAddress[x] : +# 2846| mu2846_5(short) = InitializeParameter[x] : &:r2846_4 +# 2846| r2846_6(glval) = VariableAddress[y] : +# 2846| mu2846_7(int) = InitializeParameter[y] : &:r2846_6 +# 2846| r2846_8(glval) = VariableAddress[u] : +# 2846| mu2846_9(unsigned int) = InitializeParameter[u] : &:r2846_8 +# 2847| r2847_1(glval) = VariableAddress[x] : +# 2847| r2847_2(short) = Load[x] : &:r2847_1, ~m? +# 2847| r2847_3(int) = Constant[0] : +# 2847| r2847_4(bool) = CompareGT : r2847_2, r2847_3 +# 2847| v2847_5(void) = ConditionalBranch : r2847_4 +#-----| True -> Block 1 + +# 2848| Block 1 +# 2848| r2848_1(int) = Constant[0] : +# 2848| r2848_2(glval) = VariableAddress[x] : +# 2848| r2848_3(short) = Load[x] : &:r2848_2, ~m? +# 2848| r2848_4(bool) = CompareLT : r2848_1, r2848_3 +# 2848| v2848_5(void) = ConditionalBranch : r2848_4 +#-----| True -> Block 2 + +# 2849| Block 2 +# 2849| r2849_1(glval) = VariableAddress[x] : +# 2849| r2849_2(short) = Load[x] : &:r2849_1, ~m? +# 2849| r2849_3(glval) = VariableAddress[y] : +# 2849| r2849_4(int) = Load[y] : &:r2849_3, ~m? +# 2849| r2849_5(bool) = CompareLT : r2849_2, r2849_4 +# 2849| v2849_6(void) = ConditionalBranch : r2849_5 +#-----| True -> Block 3 + +# 2851| Block 3 +# 2851| r2851_1(glval) = VariableAddress[x] : +# 2851| r2851_2(short) = Load[x] : &:r2851_1, ~m? +# 2851| r2851_3(int) = Constant[2] : +# 2851| r2851_4(bool) = CompareNE : r2851_2, r2851_3 +# 2851| v2851_5(void) = ConditionalBranch : r2851_4 +#-----| True -> Block 4 + +# 2853| Block 4 +# 2853| r2853_1(glval) = VariableAddress[u] : +# 2853| r2853_2(unsigned int) = Load[u] : &:r2853_1, ~m? +# 2853| r2853_3(glval) = VariableAddress[x] : +# 2853| r2853_4(short) = Load[x] : &:r2853_3, ~m? +# 2853| r2853_5(bool) = CompareLT : r2853_2, r2853_4 +# 2853| v2853_6(void) = ConditionalBranch : r2853_5 +#-----| True -> Block 5 + +# 2856| Block 5 +# 2856| r2856_1(glval) = VariableAddress[shadowed] : +# 2856| r2856_2(glval) = VariableAddress[x] : +# 2856| r2856_3(short) = Load[x] : &:r2856_2, ~m? +# 2856| r2856_4(int) = Convert : r2856_3 +# 2856| mu2856_5(int) = Store[shadowed] : &:r2856_1, r2856_4 +# 2857| r2857_1(glval) = VariableAddress[shadowed] : +# 2857| r2857_2(int) = Load[shadowed] : &:r2857_1, ~m? +# 2857| r2857_3(int) = Constant[0] : +# 2857| r2857_4(bool) = CompareGT : r2857_2, r2857_3 +# 2857| v2857_5(void) = ConditionalBranch : r2857_4 +#-----| True -> Block 6 + +# 2859| Block 6 +# 2859| r2859_1(glval) = VariableAddress[x] : +# 2859| r2859_2(short) = Load[x] : &:r2859_1, ~m? +# 2859| r2859_3(int) = Constant[0] : +# 2859| r2859_4(bool) = CompareGT : r2859_2, r2859_3 +# 2859| v2859_5(void) = ConditionalBranch : r2859_4 +#-----| True -> Block 7 + +# 2860| Block 7 +# 2860| v2860_1(void) = NoOp : +# 2846| v2846_10(void) = ReturnVoid : +# 2846| v2846_11(void) = AliasedUse : ~m? +# 2846| v2846_12(void) = ExitFunction : # 2865| void complex_assertions(int, bool, int) # 2865| Block 0 From 4f4baee888344ec6ceaead3296ef21a95a5666e1 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Fri, 9 Jan 2026 19:52:19 +0000 Subject: [PATCH 022/433] C++: Fix Code Scanning alerts. --- .../ir/implementation/raw/internal/TranslatedAssertion.qll | 2 +- .../cpp/ir/implementation/raw/internal/TranslatedStmt.qll | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll index 20248ba18e90..4c2b82ee1c0b 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll @@ -73,7 +73,7 @@ private Function getEnclosingFunctionForMacroInvocation(MacroInvocation mi) { /** * Holds if `arg` has two components and the `i`'th component of the string - * `arg` is `s`, and the components are seperated by an operation with + * `arg` is `s`, and the components are separated by an operation with * opcode `opcode`. */ bindingset[arg] diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll index 82f1fd49b524..d748e2f86638 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll @@ -327,7 +327,7 @@ class TranslatedEmptyStmt extends TranslatedStmt { TranslatedEmptyStmt() { // An assertion macro invocation can expand to // an empty statement in release builds. In that case - // we synthedsize the check that would have occured. + // we synthedsize the check that would have occurred. // This is handled by `TranslatedAssertion.qll` and so // we exclude these statements here. not assertion(_, stmt) and @@ -432,7 +432,7 @@ class TranslatedExprStmt extends TranslatedStmt { TranslatedExprStmt() { // An assertion macro invocation typically expand to the // expression `((void)0)` in release builds. In that case - // we synthedsize the check that would have occured. + // we synthedsize the check that would have occurred. // This is handled by `TranslatedAssertion.qll` and so // we exclude these statements here. not assertion(_, stmt) From 657e26a375f257f83c31a848664e4ec157c6cdd9 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Tue, 13 Jan 2026 11:25:15 +0000 Subject: [PATCH 023/433] Scripts: be more robust when parsing test logs --- .../accept-expected-changes-from-ci.py | 52 ++++++++++--------- 1 file changed, 28 insertions(+), 24 deletions(-) diff --git a/misc/scripts/accept-expected-changes-from-ci.py b/misc/scripts/accept-expected-changes-from-ci.py index a11bfe9547f9..e5f583044d40 100755 --- a/misc/scripts/accept-expected-changes-from-ci.py +++ b/misc/scripts/accept-expected-changes-from-ci.py @@ -103,33 +103,37 @@ def make_patches_from_log_file(log_file_lines) -> List[Patch]: line = parse_log_line(raw_line) if line == "--- expected": - while True: - next_line = parse_log_line(next(lines)) - if next_line == "+++ actual": - break + try: + while True: + next_line = parse_log_line(next(lines)) + if next_line == "+++ actual": + break - lines_changed = [] + lines_changed = [] - while True: - next_line = parse_log_line(next(lines)) - # it can be the case that - if next_line and next_line[0] in (" ", "-", "+", "@"): - lines_changed.append(next_line) - if "FAILED" in next_line: - break + while True: + next_line = parse_log_line(next(lines)) + # it can be the case that + if next_line and next_line[0] in (" ", "-", "+", "@"): + lines_changed.append(next_line) + if "FAILED" in next_line: + break - # error line _should_ be next, but sometimes the output gets interleaved... - # so we just skip until we find the error line - error_line = next_line - while True: - # internal - filename_match = re.fullmatch(r"^##\[error\].*FAILED\(RESULT\) (.*)$", error_line) - if not filename_match: - # codeql action - filename_match = re.fullmatch(r"^.*FAILED\(RESULT\) (.*)$", error_line) - if filename_match: - break - error_line = parse_log_line(next(lines)) + # error line _should_ be next, but sometimes the output gets interleaved... + # so we just skip until we find the error line + error_line = next_line + while True: + # internal + filename_match = re.fullmatch(r"^##\[error\].*FAILED\(RESULT\) (.*)$", error_line) + if not filename_match: + # codeql action + filename_match = re.fullmatch(r"^.*FAILED\(RESULT\) (.*)$", error_line) + if filename_match: + break + error_line = parse_log_line(next(lines)) + except StopIteration: + LOGGER.warning("Encountered unexpected end of logs while parsing failure block.") + break full_path = filename_match.group(1) From 196f6e19315f923093cb17716b4fdbacdf185d1e Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Thu, 15 Jan 2026 11:53:30 +0100 Subject: [PATCH 024/433] Rust: Add type inference tests for closures and function traits --- .../library-tests/type-inference/closure.rs | 74 +++++ .../type-inference/type-inference.expected | 314 ++++++++++++++---- 2 files changed, 318 insertions(+), 70 deletions(-) diff --git a/rust/ql/test/library-tests/type-inference/closure.rs b/rust/ql/test/library-tests/type-inference/closure.rs index e5a9c83aa07b..652106621a38 100644 --- a/rust/ql/test/library-tests/type-inference/closure.rs +++ b/rust/ql/test/library-tests/type-inference/closure.rs @@ -68,6 +68,80 @@ mod fn_once_trait { } } +mod fn_mut_trait { + fn return_type i64>(mut f: F) { + let _return = f(true); // $ MISSING: type=_return:i64 + } + + fn return_type_omitted(mut f: F) { + let _return = f(true); // $ MISSING: type=_return:() + } + + fn argument_type i64>(mut f: F) { + let arg = Default::default(); // $ MISSING: target=default type=arg:bool + f(arg); + } + + fn apply B>(mut f: F, a: A) -> B { + f(a) + } + + fn apply_two(mut f: impl FnMut(i64) -> i64) -> i64 { + f(2) + } + + fn test() { + let f = |x: bool| -> i64 { + if x { + 1 + } else { + 0 + } + }; + let _r = apply(f, true); // $ target=apply MISSING: type=_r:i64 + + let f = |x| x + 1; // $ MISSING: type=x:i64 target=add + let _r2 = apply_two(f); // $ target=apply_two certainType=_r2:i64 + } +} + +mod fn_trait { + fn return_type i64>(f: F) { + let _return = f(true); // $ MISSING: type=_return:i64 + } + + fn return_type_omitted(f: F) { + let _return = f(true); // $ MISSING: type=_return:() + } + + fn argument_type i64>(f: F) { + let arg = Default::default(); // $ MISSING: target=default type=arg:bool + f(arg); + } + + fn apply B>(f: F, a: A) -> B { + f(a) + } + + fn apply_two(f: impl Fn(i64) -> i64) -> i64 { + f(2) + } + + fn test() { + let f = |x: bool| -> i64 { + if x { + 1 + } else { + 0 + } + }; + let _r = apply(f, true); // $ target=apply MISSING: type=_r:i64 + + let f = |x| x + 1; // $ MISSING: type=x:i64 target=add + let _r2 = apply_two(f); // $ target=apply_two certainType=_r2:i64 + } +} + mod dyn_fn_once { fn apply_boxed B + ?Sized>(f: Box, arg: A) -> B { f(arg) diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index b4edd40f0f79..b3d998158cfe 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -478,34 +478,84 @@ inferCertainType | closure.rs:64:27:64:30 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:67:13:67:15 | _r2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:67:19:67:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | -| closure.rs:72:54:72:54 | f | | {EXTERNAL LOCATION} | Box | -| closure.rs:72:54:72:54 | f | A | {EXTERNAL LOCATION} | Global | -| closure.rs:72:54:72:54 | f | T | closure.rs:72:26:72:51 | F | -| closure.rs:72:65:72:67 | arg | | closure.rs:72:20:72:20 | A | -| closure.rs:72:78:74:5 | { ... } | | closure.rs:72:23:72:23 | B | -| closure.rs:73:9:73:9 | f | | {EXTERNAL LOCATION} | Box | -| closure.rs:73:9:73:9 | f | A | {EXTERNAL LOCATION} | Global | -| closure.rs:73:9:73:9 | f | T | closure.rs:72:26:72:51 | F | -| closure.rs:73:11:73:13 | arg | | closure.rs:72:20:72:20 | A | -| closure.rs:76:30:76:30 | f | | {EXTERNAL LOCATION} | Box | -| closure.rs:76:30:76:30 | f | A | {EXTERNAL LOCATION} | Global | -| closure.rs:76:30:76:30 | f | T | {EXTERNAL LOCATION} | dyn FnOnce | -| closure.rs:76:30:76:30 | f | T.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:76:30:76:30 | f | T.dyn(Args).T0 | closure.rs:76:24:76:24 | A | -| closure.rs:76:30:76:30 | f | T.dyn(Output) | closure.rs:76:27:76:27 | B | -| closure.rs:76:58:76:60 | arg | | closure.rs:76:24:76:24 | A | -| closure.rs:76:66:79:5 | { ... } | | {EXTERNAL LOCATION} | () | -| closure.rs:77:31:77:31 | f | | {EXTERNAL LOCATION} | Box | -| closure.rs:77:31:77:31 | f | A | {EXTERNAL LOCATION} | Global | -| closure.rs:77:31:77:31 | f | T | {EXTERNAL LOCATION} | dyn FnOnce | -| closure.rs:77:31:77:31 | f | T.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:77:31:77:31 | f | T.dyn(Args).T0 | closure.rs:76:24:76:24 | A | -| closure.rs:77:31:77:31 | f | T.dyn(Output) | closure.rs:76:27:76:27 | B | -| closure.rs:77:34:77:36 | arg | | closure.rs:76:24:76:24 | A | -| closure.rs:78:31:78:53 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| closure.rs:78:31:78:53 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| closure.rs:78:41:78:41 | _ | | {EXTERNAL LOCATION} | i64 | -| closure.rs:78:49:78:52 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:72:47:72:47 | f | | closure.rs:72:20:72:40 | F | +| closure.rs:72:53:74:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:73:23:73:23 | f | | closure.rs:72:20:72:40 | F | +| closure.rs:73:25:73:28 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:76:48:76:48 | f | | closure.rs:76:28:76:41 | F | +| closure.rs:76:54:78:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:77:23:77:23 | f | | closure.rs:76:28:76:41 | F | +| closure.rs:77:25:77:28 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:80:49:80:49 | f | | closure.rs:80:22:80:42 | F | +| closure.rs:80:55:83:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:82:9:82:9 | f | | closure.rs:80:22:80:42 | F | +| closure.rs:85:42:85:42 | f | | closure.rs:85:20:85:35 | F | +| closure.rs:85:48:85:48 | a | | closure.rs:85:14:85:14 | A | +| closure.rs:85:59:87:5 | { ... } | | closure.rs:85:17:85:17 | B | +| closure.rs:86:9:86:9 | f | | closure.rs:85:20:85:35 | F | +| closure.rs:86:11:86:11 | a | | closure.rs:85:14:85:14 | A | +| closure.rs:89:22:89:22 | f | | closure.rs:89:25:89:46 | impl ... | +| closure.rs:89:56:91:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:90:9:90:9 | f | | closure.rs:89:25:89:46 | impl ... | +| closure.rs:93:15:105:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:94:18:94:18 | x | | {EXTERNAL LOCATION} | bool | +| closure.rs:95:16:95:16 | x | | {EXTERNAL LOCATION} | bool | +| closure.rs:101:27:101:30 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:104:13:104:15 | _r2 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:104:19:104:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:109:40:109:40 | f | | closure.rs:109:20:109:37 | F | +| closure.rs:109:46:111:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:110:23:110:23 | f | | closure.rs:109:20:109:37 | F | +| closure.rs:110:25:110:28 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:113:41:113:41 | f | | closure.rs:113:28:113:38 | F | +| closure.rs:113:47:115:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:114:23:114:23 | f | | closure.rs:113:28:113:38 | F | +| closure.rs:114:25:114:28 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:117:42:117:42 | f | | closure.rs:117:22:117:39 | F | +| closure.rs:117:48:120:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:119:9:119:9 | f | | closure.rs:117:22:117:39 | F | +| closure.rs:122:35:122:35 | f | | closure.rs:122:20:122:32 | F | +| closure.rs:122:41:122:41 | a | | closure.rs:122:14:122:14 | A | +| closure.rs:122:52:124:5 | { ... } | | closure.rs:122:17:122:17 | B | +| closure.rs:123:9:123:9 | f | | closure.rs:122:20:122:32 | F | +| closure.rs:123:11:123:11 | a | | closure.rs:122:14:122:14 | A | +| closure.rs:126:18:126:18 | f | | closure.rs:126:21:126:39 | impl ... | +| closure.rs:126:49:128:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:127:9:127:9 | f | | closure.rs:126:21:126:39 | impl ... | +| closure.rs:130:15:142:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:131:18:131:18 | x | | {EXTERNAL LOCATION} | bool | +| closure.rs:132:16:132:16 | x | | {EXTERNAL LOCATION} | bool | +| closure.rs:138:27:138:30 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:141:13:141:15 | _r2 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:141:19:141:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:146:54:146:54 | f | | {EXTERNAL LOCATION} | Box | +| closure.rs:146:54:146:54 | f | A | {EXTERNAL LOCATION} | Global | +| closure.rs:146:54:146:54 | f | T | closure.rs:146:26:146:51 | F | +| closure.rs:146:65:146:67 | arg | | closure.rs:146:20:146:20 | A | +| closure.rs:146:78:148:5 | { ... } | | closure.rs:146:23:146:23 | B | +| closure.rs:147:9:147:9 | f | | {EXTERNAL LOCATION} | Box | +| closure.rs:147:9:147:9 | f | A | {EXTERNAL LOCATION} | Global | +| closure.rs:147:9:147:9 | f | T | closure.rs:146:26:146:51 | F | +| closure.rs:147:11:147:13 | arg | | closure.rs:146:20:146:20 | A | +| closure.rs:150:30:150:30 | f | | {EXTERNAL LOCATION} | Box | +| closure.rs:150:30:150:30 | f | A | {EXTERNAL LOCATION} | Global | +| closure.rs:150:30:150:30 | f | T | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:150:30:150:30 | f | T.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:150:30:150:30 | f | T.dyn(Args).T0 | closure.rs:150:24:150:24 | A | +| closure.rs:150:30:150:30 | f | T.dyn(Output) | closure.rs:150:27:150:27 | B | +| closure.rs:150:58:150:60 | arg | | closure.rs:150:24:150:24 | A | +| closure.rs:150:66:153:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:151:31:151:31 | f | | {EXTERNAL LOCATION} | Box | +| closure.rs:151:31:151:31 | f | A | {EXTERNAL LOCATION} | Global | +| closure.rs:151:31:151:31 | f | T | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:151:31:151:31 | f | T.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:151:31:151:31 | f | T.dyn(Args).T0 | closure.rs:150:24:150:24 | A | +| closure.rs:151:31:151:31 | f | T.dyn(Output) | closure.rs:150:27:150:27 | B | +| closure.rs:151:34:151:36 | arg | | closure.rs:150:24:150:24 | A | +| closure.rs:152:31:152:53 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| closure.rs:152:31:152:53 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| closure.rs:152:41:152:41 | _ | | {EXTERNAL LOCATION} | i64 | +| closure.rs:152:49:152:52 | true | | {EXTERNAL LOCATION} | bool | | dereference.rs:13:14:13:18 | SelfParam | | {EXTERNAL LOCATION} | & | | dereference.rs:13:14:13:18 | SelfParam | TRef | dereference.rs:5:1:7:1 | MyIntPointer | | dereference.rs:13:29:15:5 | { ... } | | {EXTERNAL LOCATION} | & | @@ -5546,48 +5596,172 @@ inferType | closure.rs:67:19:67:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:67:29:67:29 | f | | {EXTERNAL LOCATION} | dyn FnOnce | | closure.rs:67:29:67:29 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:72:54:72:54 | f | | {EXTERNAL LOCATION} | Box | -| closure.rs:72:54:72:54 | f | A | {EXTERNAL LOCATION} | Global | -| closure.rs:72:54:72:54 | f | T | closure.rs:72:26:72:51 | F | -| closure.rs:72:65:72:67 | arg | | closure.rs:72:20:72:20 | A | -| closure.rs:72:78:74:5 | { ... } | | closure.rs:72:23:72:23 | B | -| closure.rs:73:9:73:9 | f | | {EXTERNAL LOCATION} | Box | -| closure.rs:73:9:73:9 | f | A | {EXTERNAL LOCATION} | Global | -| closure.rs:73:9:73:9 | f | T | closure.rs:72:26:72:51 | F | -| closure.rs:73:9:73:14 | f(...) | | closure.rs:72:23:72:23 | B | -| closure.rs:73:11:73:13 | arg | | closure.rs:72:20:72:20 | A | -| closure.rs:76:30:76:30 | f | | {EXTERNAL LOCATION} | Box | -| closure.rs:76:30:76:30 | f | A | {EXTERNAL LOCATION} | Global | -| closure.rs:76:30:76:30 | f | T | {EXTERNAL LOCATION} | dyn FnOnce | -| closure.rs:76:30:76:30 | f | T.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:76:30:76:30 | f | T.dyn(Args).T0 | closure.rs:76:24:76:24 | A | -| closure.rs:76:30:76:30 | f | T.dyn(Output) | closure.rs:76:27:76:27 | B | -| closure.rs:76:58:76:60 | arg | | closure.rs:76:24:76:24 | A | -| closure.rs:76:66:79:5 | { ... } | | {EXTERNAL LOCATION} | () | -| closure.rs:77:13:77:15 | _r1 | | closure.rs:76:27:76:27 | B | -| closure.rs:77:19:77:37 | apply_boxed(...) | | closure.rs:76:27:76:27 | B | -| closure.rs:77:31:77:31 | f | | {EXTERNAL LOCATION} | Box | -| closure.rs:77:31:77:31 | f | A | {EXTERNAL LOCATION} | Global | -| closure.rs:77:31:77:31 | f | T | {EXTERNAL LOCATION} | dyn FnOnce | -| closure.rs:77:31:77:31 | f | T.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:77:31:77:31 | f | T.dyn(Args).T0 | closure.rs:76:24:76:24 | A | -| closure.rs:77:31:77:31 | f | T.dyn(Output) | closure.rs:76:27:76:27 | B | -| closure.rs:77:34:77:36 | arg | | closure.rs:76:24:76:24 | A | -| closure.rs:78:13:78:15 | _r2 | | {EXTERNAL LOCATION} | bool | -| closure.rs:78:19:78:57 | apply_boxed(...) | | {EXTERNAL LOCATION} | bool | -| closure.rs:78:31:78:53 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| closure.rs:78:31:78:53 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| closure.rs:78:31:78:53 | ...::new(...) | T | {EXTERNAL LOCATION} | dyn FnOnce | -| closure.rs:78:31:78:53 | ...::new(...) | T.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:78:31:78:53 | ...::new(...) | T.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | -| closure.rs:78:31:78:53 | ...::new(...) | T.dyn(Output) | {EXTERNAL LOCATION} | bool | -| closure.rs:78:40:78:52 | \|...\| true | | {EXTERNAL LOCATION} | dyn FnOnce | -| closure.rs:78:40:78:52 | \|...\| true | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:78:40:78:52 | \|...\| true | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | -| closure.rs:78:40:78:52 | \|...\| true | dyn(Output) | {EXTERNAL LOCATION} | bool | -| closure.rs:78:41:78:41 | _ | | {EXTERNAL LOCATION} | i64 | -| closure.rs:78:49:78:52 | true | | {EXTERNAL LOCATION} | bool | -| closure.rs:78:56:78:56 | 3 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:72:47:72:47 | f | | closure.rs:72:20:72:40 | F | +| closure.rs:72:53:74:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:73:23:73:23 | f | | closure.rs:72:20:72:40 | F | +| closure.rs:73:25:73:28 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:76:48:76:48 | f | | closure.rs:76:28:76:41 | F | +| closure.rs:76:54:78:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:77:23:77:23 | f | | closure.rs:76:28:76:41 | F | +| closure.rs:77:25:77:28 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:80:49:80:49 | f | | closure.rs:80:22:80:42 | F | +| closure.rs:80:55:83:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:82:9:82:9 | f | | closure.rs:80:22:80:42 | F | +| closure.rs:85:42:85:42 | f | | closure.rs:85:20:85:35 | F | +| closure.rs:85:48:85:48 | a | | closure.rs:85:14:85:14 | A | +| closure.rs:85:59:87:5 | { ... } | | closure.rs:85:17:85:17 | B | +| closure.rs:86:9:86:9 | f | | closure.rs:85:20:85:35 | F | +| closure.rs:86:9:86:12 | f(...) | | closure.rs:85:17:85:17 | B | +| closure.rs:86:11:86:11 | a | | closure.rs:85:14:85:14 | A | +| closure.rs:89:22:89:22 | f | | closure.rs:89:25:89:46 | impl ... | +| closure.rs:89:56:91:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:90:9:90:9 | f | | closure.rs:89:25:89:46 | impl ... | +| closure.rs:90:9:90:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:90:11:90:11 | 2 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:93:15:105:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:94:13:94:13 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:94:13:94:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:94:13:94:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | +| closure.rs:94:13:94:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:94:13:94:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:94:17:100:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:94:17:100:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:94:17:100:9 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | +| closure.rs:94:17:100:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:94:17:100:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:94:18:94:18 | x | | {EXTERNAL LOCATION} | bool | +| closure.rs:94:34:100:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| closure.rs:94:34:100:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:95:13:99:13 | if x {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| closure.rs:95:13:99:13 | if x {...} else {...} | | {EXTERNAL LOCATION} | i64 | +| closure.rs:95:16:95:16 | x | | {EXTERNAL LOCATION} | bool | +| closure.rs:95:18:97:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| closure.rs:95:18:97:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:96:17:96:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:96:17:96:17 | 1 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:97:20:99:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| closure.rs:97:20:99:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:98:17:98:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:98:17:98:17 | 0 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:101:24:101:24 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:101:24:101:24 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:101:24:101:24 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | +| closure.rs:101:24:101:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:101:24:101:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:101:27:101:30 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:103:13:103:13 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:103:13:103:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:103:17:103:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:103:17:103:25 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:103:25:103:25 | 1 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:104:13:104:15 | _r2 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:104:19:104:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:104:29:104:29 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:104:29:104:29 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:109:40:109:40 | f | | closure.rs:109:20:109:37 | F | +| closure.rs:109:46:111:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:110:23:110:23 | f | | closure.rs:109:20:109:37 | F | +| closure.rs:110:25:110:28 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:113:41:113:41 | f | | closure.rs:113:28:113:38 | F | +| closure.rs:113:47:115:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:114:23:114:23 | f | | closure.rs:113:28:113:38 | F | +| closure.rs:114:25:114:28 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:117:42:117:42 | f | | closure.rs:117:22:117:39 | F | +| closure.rs:117:48:120:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:119:9:119:9 | f | | closure.rs:117:22:117:39 | F | +| closure.rs:122:35:122:35 | f | | closure.rs:122:20:122:32 | F | +| closure.rs:122:41:122:41 | a | | closure.rs:122:14:122:14 | A | +| closure.rs:122:52:124:5 | { ... } | | closure.rs:122:17:122:17 | B | +| closure.rs:123:9:123:9 | f | | closure.rs:122:20:122:32 | F | +| closure.rs:123:9:123:12 | f(...) | | closure.rs:122:17:122:17 | B | +| closure.rs:123:11:123:11 | a | | closure.rs:122:14:122:14 | A | +| closure.rs:126:18:126:18 | f | | closure.rs:126:21:126:39 | impl ... | +| closure.rs:126:49:128:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:127:9:127:9 | f | | closure.rs:126:21:126:39 | impl ... | +| closure.rs:127:9:127:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:127:11:127:11 | 2 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:130:15:142:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:131:13:131:13 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:131:13:131:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:131:13:131:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | +| closure.rs:131:13:131:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:131:13:131:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:131:17:137:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:131:17:137:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:131:17:137:9 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | +| closure.rs:131:17:137:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:131:17:137:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:131:18:131:18 | x | | {EXTERNAL LOCATION} | bool | +| closure.rs:131:34:137:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| closure.rs:131:34:137:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:132:13:136:13 | if x {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| closure.rs:132:13:136:13 | if x {...} else {...} | | {EXTERNAL LOCATION} | i64 | +| closure.rs:132:16:132:16 | x | | {EXTERNAL LOCATION} | bool | +| closure.rs:132:18:134:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| closure.rs:132:18:134:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:133:17:133:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:133:17:133:17 | 1 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:134:20:136:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| closure.rs:134:20:136:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:135:17:135:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:135:17:135:17 | 0 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:138:24:138:24 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:138:24:138:24 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:138:24:138:24 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | +| closure.rs:138:24:138:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:138:24:138:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:138:27:138:30 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:140:13:140:13 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:140:13:140:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:140:17:140:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:140:17:140:25 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:140:25:140:25 | 1 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:141:13:141:15 | _r2 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:141:19:141:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:141:29:141:29 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:141:29:141:29 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:146:54:146:54 | f | | {EXTERNAL LOCATION} | Box | +| closure.rs:146:54:146:54 | f | A | {EXTERNAL LOCATION} | Global | +| closure.rs:146:54:146:54 | f | T | closure.rs:146:26:146:51 | F | +| closure.rs:146:65:146:67 | arg | | closure.rs:146:20:146:20 | A | +| closure.rs:146:78:148:5 | { ... } | | closure.rs:146:23:146:23 | B | +| closure.rs:147:9:147:9 | f | | {EXTERNAL LOCATION} | Box | +| closure.rs:147:9:147:9 | f | A | {EXTERNAL LOCATION} | Global | +| closure.rs:147:9:147:9 | f | T | closure.rs:146:26:146:51 | F | +| closure.rs:147:9:147:14 | f(...) | | closure.rs:146:23:146:23 | B | +| closure.rs:147:11:147:13 | arg | | closure.rs:146:20:146:20 | A | +| closure.rs:150:30:150:30 | f | | {EXTERNAL LOCATION} | Box | +| closure.rs:150:30:150:30 | f | A | {EXTERNAL LOCATION} | Global | +| closure.rs:150:30:150:30 | f | T | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:150:30:150:30 | f | T.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:150:30:150:30 | f | T.dyn(Args).T0 | closure.rs:150:24:150:24 | A | +| closure.rs:150:30:150:30 | f | T.dyn(Output) | closure.rs:150:27:150:27 | B | +| closure.rs:150:58:150:60 | arg | | closure.rs:150:24:150:24 | A | +| closure.rs:150:66:153:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:151:13:151:15 | _r1 | | closure.rs:150:27:150:27 | B | +| closure.rs:151:19:151:37 | apply_boxed(...) | | closure.rs:150:27:150:27 | B | +| closure.rs:151:31:151:31 | f | | {EXTERNAL LOCATION} | Box | +| closure.rs:151:31:151:31 | f | A | {EXTERNAL LOCATION} | Global | +| closure.rs:151:31:151:31 | f | T | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:151:31:151:31 | f | T.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:151:31:151:31 | f | T.dyn(Args).T0 | closure.rs:150:24:150:24 | A | +| closure.rs:151:31:151:31 | f | T.dyn(Output) | closure.rs:150:27:150:27 | B | +| closure.rs:151:34:151:36 | arg | | closure.rs:150:24:150:24 | A | +| closure.rs:152:13:152:15 | _r2 | | {EXTERNAL LOCATION} | bool | +| closure.rs:152:19:152:57 | apply_boxed(...) | | {EXTERNAL LOCATION} | bool | +| closure.rs:152:31:152:53 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| closure.rs:152:31:152:53 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| closure.rs:152:31:152:53 | ...::new(...) | T | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:152:31:152:53 | ...::new(...) | T.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:152:31:152:53 | ...::new(...) | T.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:152:31:152:53 | ...::new(...) | T.dyn(Output) | {EXTERNAL LOCATION} | bool | +| closure.rs:152:40:152:52 | \|...\| true | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:152:40:152:52 | \|...\| true | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:152:40:152:52 | \|...\| true | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:152:40:152:52 | \|...\| true | dyn(Output) | {EXTERNAL LOCATION} | bool | +| closure.rs:152:41:152:41 | _ | | {EXTERNAL LOCATION} | i64 | +| closure.rs:152:49:152:52 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:152:56:152:56 | 3 | | {EXTERNAL LOCATION} | i32 | | dereference.rs:13:14:13:18 | SelfParam | | {EXTERNAL LOCATION} | & | | dereference.rs:13:14:13:18 | SelfParam | TRef | dereference.rs:5:1:7:1 | MyIntPointer | | dereference.rs:13:29:15:5 | { ... } | | {EXTERNAL LOCATION} | & | From d6ca1ca846bebd3cc56ea017eef615a5f10897cb Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Thu, 15 Jan 2026 14:41:13 +0000 Subject: [PATCH 025/433] Update cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com> --- .../code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll index d748e2f86638..3ab7e770f489 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll @@ -327,7 +327,7 @@ class TranslatedEmptyStmt extends TranslatedStmt { TranslatedEmptyStmt() { // An assertion macro invocation can expand to // an empty statement in release builds. In that case - // we synthedsize the check that would have occurred. + // we synthesize the check that would have occurred. // This is handled by `TranslatedAssertion.qll` and so // we exclude these statements here. not assertion(_, stmt) and From 1b117900c28b2ad853d6c66f20c3880360598c33 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Thu, 15 Jan 2026 14:42:11 +0000 Subject: [PATCH 026/433] Update cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com> --- .../code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll index 3ab7e770f489..83f19062b907 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll @@ -432,7 +432,7 @@ class TranslatedExprStmt extends TranslatedStmt { TranslatedExprStmt() { // An assertion macro invocation typically expand to the // expression `((void)0)` in release builds. In that case - // we synthedsize the check that would have occurred. + // we synthesize the check that would have occurred. // This is handled by `TranslatedAssertion.qll` and so // we exclude these statements here. not assertion(_, stmt) From 03d652868737513514569fe23eedc28d83ceea4d Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Thu, 15 Jan 2026 15:58:28 +0000 Subject: [PATCH 027/433] Update cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com> --- .../cpp/ir/implementation/raw/internal/TranslatedAssertion.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll index 4c2b82ee1c0b..d0f761e83b8a 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll @@ -55,7 +55,7 @@ private predicate assertion0(MacroInvocation mi, Stmt s) { unique(StmtParent p, int startline, Function f | macroInvocationLocation(startline, f, mi) and stmtParentLocation(startline, f, p) and - // Also do not count the elements from the expanded macro. i.e., when checking + // Also do not count the elements from the expanded macro, i.e., when checking // if `assert(x)` is the only thing on the line we do not count the // generated `((void)0)` expression. not p = mi.getAnExpandedElement() From dabc5d54c902088ab84aa3e293ffe1e5d6cf2065 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Thu, 15 Jan 2026 12:16:51 +0100 Subject: [PATCH 028/433] Rust: Improve type inference for closures and function traits --- .../codeql/rust/frameworks/stdlib/Stdlib.qll | 31 +++++- .../internal/typeinference/TypeInference.qll | 25 +++-- .../internal/typeinference/TypeMention.qll | 4 +- .../library-tests/type-inference/closure.rs | 16 +-- .../type-inference/type-inference.expected | 104 +++++++++++------- rust/tools/builtins/mentions.rs | 2 +- 6 files changed, 121 insertions(+), 61 deletions(-) diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll b/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll index 114c283bbdb1..e242a8877981 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll @@ -143,23 +143,46 @@ class FutureTrait extends Trait { TypeAlias getOutputType() { result = this.(TraitItemNode).getAssocItem("Output") } } +/** A function trait `FnOnce`, `FnMut`, or `Fn`. */ +class AnyFnTrait extends Trait { + /** Gets the `Args` type parameter of this trait. */ + TypeParam getTypeParam() { result = this.getGenericParamList().getGenericParam(0) } +} + /** * The [`FnOnce` trait][1]. * * [1]: https://doc.rust-lang.org/std/ops/trait.FnOnce.html */ -class FnOnceTrait extends Trait { +class FnOnceTrait extends AnyFnTrait { pragma[nomagic] FnOnceTrait() { this.getCanonicalPath() = "core::ops::function::FnOnce" } - /** Gets the type parameter of this trait. */ - TypeParam getTypeParam() { result = this.getGenericParamList().getGenericParam(0) } - /** Gets the `Output` associated type. */ pragma[nomagic] TypeAlias getOutputType() { result = this.(TraitItemNode).getAssocItem("Output") } } +/** + * The [`FnMut` trait][1]. + * + * [1]: https://doc.rust-lang.org/std/ops/trait.FnMut.html + */ +class FnMutTrait extends AnyFnTrait { + pragma[nomagic] + FnMutTrait() { this.getCanonicalPath() = "core::ops::function::FnMut" } +} + +/** + * The [`Fn` trait][1]. + * + * [1]: https://doc.rust-lang.org/std/ops/trait.Fn.html + */ +class FnTrait extends AnyFnTrait { + pragma[nomagic] + FnTrait() { this.getCanonicalPath() = "core::ops::function::Fn" } +} + /** * The [`Iterator` trait][1]. * diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index 3be7565ebaa1..c85c43122294 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -3825,16 +3825,29 @@ private Type invokedClosureFnTypeAt(InvokedClosureExpr ce, TypePath path) { _, path, result) } +/** + * Gets the root type of a closure. + * + * We model closures as `dyn Fn` trait object types. A closure might implement + * only `Fn`, `FnMut`, or `FnOnce`. But since `Fn` is a subtrait of the others, + * giving closures the type `dyn Fn` works well in practice—even if not entirely + * accurate. + */ +private DynTraitType closureRootType() { + result = TDynTraitType(any(FnTrait t)) // always exists because of the mention in `builtins/mentions.rs` +} + /** Gets the path to a closure's return type. */ private TypePath closureReturnPath() { - result = TypePath::singleton(getDynTraitTypeParameter(any(FnOnceTrait t).getOutputType())) + result = + TypePath::singleton(TDynTraitTypeParameter(any(FnTrait t), any(FnOnceTrait t).getOutputType())) } /** Gets the path to a closure with arity `arity`s `index`th parameter type. */ pragma[nomagic] private TypePath closureParameterPath(int arity, int index) { result = - TypePath::cons(TDynTraitTypeParameter(_, any(FnOnceTrait t).getTypeParam()), + TypePath::cons(TDynTraitTypeParameter(_, any(FnTrait t).getTypeParam()), TypePath::singleton(getTupleTypeParameter(arity, index))) } @@ -3872,9 +3885,7 @@ private Type inferDynamicCallExprType(Expr n, TypePath path) { or // _If_ the invoked expression has the type of a closure, then we propagate // the surrounding types into the closure. - exists(int arity, TypePath path0 | - ce.getTypeAt(TypePath::nil()).(DynTraitType).getTrait() instanceof FnOnceTrait - | + exists(int arity, TypePath path0 | ce.getTypeAt(TypePath::nil()) = closureRootType() | // Propagate the type of arguments to the parameter types of closure exists(int index, ArgList args | n = ce and @@ -3898,10 +3909,10 @@ private Type inferClosureExprType(AstNode n, TypePath path) { exists(ClosureExpr ce | n = ce and path.isEmpty() and - result = TDynTraitType(any(FnOnceTrait t)) // always exists because of the mention in `builtins/mentions.rs` + result = closureRootType() or n = ce and - path = TypePath::singleton(TDynTraitTypeParameter(_, any(FnOnceTrait t).getTypeParam())) and + path = TypePath::singleton(TDynTraitTypeParameter(_, any(FnTrait t).getTypeParam())) and result.(TupleType).getArity() = ce.getNumberOfParams() or // Propagate return type annotation to body diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index 840e5198f9cb..b38cd56f61ff 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -212,7 +212,7 @@ class NonAliasPathTypeMention extends PathTypeMention { // associated types of `Fn` and `FnMut` yet. // // [1]: https://doc.rust-lang.org/reference/paths.html#grammar-TypePathFn - exists(FnOnceTrait t, PathSegment s | + exists(AnyFnTrait t, PathSegment s | t = resolved and s = this.getSegment() and s.hasParenthesizedArgList() @@ -220,7 +220,7 @@ class NonAliasPathTypeMention extends PathTypeMention { tp = TTypeParamTypeParameter(t.getTypeParam()) and result = s.getParenthesizedArgList().(TypeMention).resolveTypeAt(path) or - tp = TAssociatedTypeTypeParameter(t, t.getOutputType()) and + tp = TAssociatedTypeTypeParameter(t, any(FnOnceTrait tr).getOutputType()) and ( result = s.getRetType().getTypeRepr().(TypeMention).resolveTypeAt(path) or diff --git a/rust/ql/test/library-tests/type-inference/closure.rs b/rust/ql/test/library-tests/type-inference/closure.rs index 652106621a38..cc756a6b2678 100644 --- a/rust/ql/test/library-tests/type-inference/closure.rs +++ b/rust/ql/test/library-tests/type-inference/closure.rs @@ -70,15 +70,15 @@ mod fn_once_trait { mod fn_mut_trait { fn return_type i64>(mut f: F) { - let _return = f(true); // $ MISSING: type=_return:i64 + let _return = f(true); // $ type=_return:i64 } fn return_type_omitted(mut f: F) { - let _return = f(true); // $ MISSING: type=_return:() + let _return = f(true); // $ type=_return:() } fn argument_type i64>(mut f: F) { - let arg = Default::default(); // $ MISSING: target=default type=arg:bool + let arg = Default::default(); // $ target=default type=arg:bool f(arg); } @@ -98,7 +98,7 @@ mod fn_mut_trait { 0 } }; - let _r = apply(f, true); // $ target=apply MISSING: type=_r:i64 + let _r = apply(f, true); // $ target=apply type=_r:i64 let f = |x| x + 1; // $ MISSING: type=x:i64 target=add let _r2 = apply_two(f); // $ target=apply_two certainType=_r2:i64 @@ -107,15 +107,15 @@ mod fn_mut_trait { mod fn_trait { fn return_type i64>(f: F) { - let _return = f(true); // $ MISSING: type=_return:i64 + let _return = f(true); // $ type=_return:i64 } fn return_type_omitted(f: F) { - let _return = f(true); // $ MISSING: type=_return:() + let _return = f(true); // $ type=_return:() } fn argument_type i64>(f: F) { - let arg = Default::default(); // $ MISSING: target=default type=arg:bool + let arg = Default::default(); // $ target=default type=arg:bool f(arg); } @@ -135,7 +135,7 @@ mod fn_trait { 0 } }; - let _r = apply(f, true); // $ target=apply MISSING: type=_r:i64 + let _r = apply(f, true); // $ target=apply type=_r:i64 let f = |x| x + 1; // $ MISSING: type=x:i64 target=add let _r2 = apply_two(f); // $ target=apply_two certainType=_r2:i64 diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index b3d998158cfe..197ce9ae47fb 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -5420,12 +5420,12 @@ inferType | blanket_impl.rs:299:47:299:67 | "SELECT * FROM users" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:299:47:299:67 | "SELECT * FROM users" | TRef | {EXTERNAL LOCATION} | str | | closure.rs:4:19:31:5 | { ... } | | {EXTERNAL LOCATION} | () | -| closure.rs:6:13:6:22 | my_closure | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:6:13:6:22 | my_closure | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:6:13:6:22 | my_closure | dyn(Args) | {EXTERNAL LOCATION} | (T_2) | | closure.rs:6:13:6:22 | my_closure | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:6:13:6:22 | my_closure | dyn(Args).T1 | {EXTERNAL LOCATION} | bool | | closure.rs:6:13:6:22 | my_closure | dyn(Output) | {EXTERNAL LOCATION} | bool | -| closure.rs:6:26:6:38 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:6:26:6:38 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:6:26:6:38 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_2) | | closure.rs:6:26:6:38 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:6:26:6:38 | \|...\| ... | dyn(Args).T1 | {EXTERNAL LOCATION} | bool | @@ -5437,11 +5437,11 @@ inferType | closure.rs:6:38:6:38 | b | | {EXTERNAL LOCATION} | bool | | closure.rs:8:13:8:13 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:8:22:8:25 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| closure.rs:9:13:9:19 | add_one | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:9:13:9:19 | add_one | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:9:13:9:19 | add_one | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:9:13:9:19 | add_one | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:9:13:9:19 | add_one | dyn(Output) | {EXTERNAL LOCATION} | i64 | -| closure.rs:9:23:9:34 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:9:23:9:34 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:9:23:9:34 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:9:23:9:34 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:9:23:9:34 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i64 | @@ -5450,7 +5450,7 @@ inferType | closure.rs:9:27:9:34 | ... + ... | | {EXTERNAL LOCATION} | i64 | | closure.rs:9:31:9:34 | 1i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:10:13:10:14 | _y | | {EXTERNAL LOCATION} | i64 | -| closure.rs:10:18:10:24 | add_one | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:10:18:10:24 | add_one | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:10:18:10:24 | add_one | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:10:18:10:24 | add_one | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:10:18:10:24 | add_one | dyn(Output) | {EXTERNAL LOCATION} | i64 | @@ -5458,55 +5458,55 @@ inferType | closure.rs:10:26:10:26 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:13:13:13:13 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:13:17:13:34 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | -| closure.rs:14:13:14:20 | add_zero | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:14:13:14:20 | add_zero | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:14:13:14:20 | add_zero | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:14:13:14:20 | add_zero | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:14:13:14:20 | add_zero | dyn(Output) | {EXTERNAL LOCATION} | i64 | -| closure.rs:14:24:14:33 | \|...\| n | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:14:24:14:33 | \|...\| n | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:14:24:14:33 | \|...\| n | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:14:24:14:33 | \|...\| n | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:14:24:14:33 | \|...\| n | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:14:25:14:25 | n | | {EXTERNAL LOCATION} | i64 | | closure.rs:14:33:14:33 | n | | {EXTERNAL LOCATION} | i64 | | closure.rs:15:13:15:14 | _y | | {EXTERNAL LOCATION} | i64 | -| closure.rs:15:18:15:25 | add_zero | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:15:18:15:25 | add_zero | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:15:18:15:25 | add_zero | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:15:18:15:25 | add_zero | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:15:18:15:25 | add_zero | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:15:18:15:28 | add_zero(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:15:27:15:27 | x | | {EXTERNAL LOCATION} | i64 | -| closure.rs:17:13:17:21 | _get_bool | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:17:13:17:21 | _get_bool | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:17:13:17:21 | _get_bool | dyn(Args) | {EXTERNAL LOCATION} | () | | closure.rs:17:13:17:21 | _get_bool | dyn(Output) | {EXTERNAL LOCATION} | bool | -| closure.rs:17:25:21:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:17:25:21:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:17:25:21:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | () | | closure.rs:17:25:21:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | bool | | closure.rs:17:36:21:9 | { ... } | | {EXTERNAL LOCATION} | bool | | closure.rs:19:17:19:17 | b | | {EXTERNAL LOCATION} | bool | | closure.rs:19:21:19:38 | ...::default(...) | | {EXTERNAL LOCATION} | bool | | closure.rs:20:13:20:13 | b | | {EXTERNAL LOCATION} | bool | -| closure.rs:24:13:24:14 | id | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:24:13:24:14 | id | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:24:13:24:14 | id | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:24:13:24:14 | id | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:24:13:24:14 | id | dyn(Output) | {EXTERNAL LOCATION} | bool | -| closure.rs:24:18:24:22 | \|...\| b | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:24:18:24:22 | \|...\| b | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:24:18:24:22 | \|...\| b | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:24:18:24:22 | \|...\| b | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:24:18:24:22 | \|...\| b | dyn(Output) | {EXTERNAL LOCATION} | bool | | closure.rs:24:19:24:19 | b | | {EXTERNAL LOCATION} | bool | | closure.rs:24:22:24:22 | b | | {EXTERNAL LOCATION} | bool | | closure.rs:25:13:25:14 | _b | | {EXTERNAL LOCATION} | bool | -| closure.rs:25:18:25:19 | id | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:25:18:25:19 | id | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:25:18:25:19 | id | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:25:18:25:19 | id | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:25:18:25:19 | id | dyn(Output) | {EXTERNAL LOCATION} | bool | | closure.rs:25:18:25:25 | id(...) | | {EXTERNAL LOCATION} | bool | | closure.rs:25:21:25:24 | true | | {EXTERNAL LOCATION} | bool | -| closure.rs:28:13:28:15 | id2 | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:28:13:28:15 | id2 | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:28:13:28:15 | id2 | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:28:13:28:15 | id2 | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:28:13:28:15 | id2 | dyn(Output) | {EXTERNAL LOCATION} | bool | -| closure.rs:28:19:28:23 | \|...\| b | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:28:19:28:23 | \|...\| b | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:28:19:28:23 | \|...\| b | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:28:19:28:23 | \|...\| b | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:28:19:28:23 | \|...\| b | dyn(Output) | {EXTERNAL LOCATION} | bool | @@ -5515,7 +5515,7 @@ inferType | closure.rs:29:13:29:15 | arg | | {EXTERNAL LOCATION} | bool | | closure.rs:29:19:29:36 | ...::default(...) | | {EXTERNAL LOCATION} | bool | | closure.rs:30:13:30:15 | _b2 | | {EXTERNAL LOCATION} | bool | -| closure.rs:30:25:30:27 | id2 | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:30:25:30:27 | id2 | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:30:25:30:27 | id2 | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:30:25:30:27 | id2 | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:30:25:30:27 | id2 | dyn(Output) | {EXTERNAL LOCATION} | bool | @@ -5553,12 +5553,12 @@ inferType | closure.rs:53:11:53:11 | 2 | | {EXTERNAL LOCATION} | i32 | | closure.rs:53:11:53:11 | 2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:56:15:68:5 | { ... } | | {EXTERNAL LOCATION} | () | -| closure.rs:57:13:57:13 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:57:13:57:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:57:13:57:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:57:13:57:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:57:13:57:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:57:13:57:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | -| closure.rs:57:17:63:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:57:17:63:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:57:17:63:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:57:17:63:9 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:57:17:63:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | @@ -5581,32 +5581,40 @@ inferType | closure.rs:64:13:64:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:64:18:64:31 | apply(...) | | {EXTERNAL LOCATION} | i32 | | closure.rs:64:18:64:31 | apply(...) | | {EXTERNAL LOCATION} | i64 | -| closure.rs:64:24:64:24 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:64:24:64:24 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:64:24:64:24 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:64:24:64:24 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:64:24:64:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:64:24:64:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:64:27:64:30 | true | | {EXTERNAL LOCATION} | bool | -| closure.rs:66:13:66:13 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:66:13:66:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:66:13:66:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:66:17:66:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:66:17:66:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:66:17:66:25 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:66:25:66:25 | 1 | | {EXTERNAL LOCATION} | i32 | | closure.rs:67:13:67:15 | _r2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:67:19:67:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | -| closure.rs:67:29:67:29 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:67:29:67:29 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:67:29:67:29 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:72:47:72:47 | f | | closure.rs:72:20:72:40 | F | | closure.rs:72:53:74:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:73:13:73:19 | _return | | {EXTERNAL LOCATION} | i64 | | closure.rs:73:23:73:23 | f | | closure.rs:72:20:72:40 | F | +| closure.rs:73:23:73:29 | f(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:73:25:73:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:76:48:76:48 | f | | closure.rs:76:28:76:41 | F | | closure.rs:76:54:78:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:77:13:77:19 | _return | | {EXTERNAL LOCATION} | () | | closure.rs:77:23:77:23 | f | | closure.rs:76:28:76:41 | F | +| closure.rs:77:23:77:29 | f(...) | | {EXTERNAL LOCATION} | () | | closure.rs:77:25:77:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:80:49:80:49 | f | | closure.rs:80:22:80:42 | F | | closure.rs:80:55:83:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:81:13:81:15 | arg | | {EXTERNAL LOCATION} | bool | +| closure.rs:81:19:81:36 | ...::default(...) | | {EXTERNAL LOCATION} | bool | | closure.rs:82:9:82:9 | f | | closure.rs:80:22:80:42 | F | +| closure.rs:82:9:82:14 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:82:11:82:13 | arg | | {EXTERNAL LOCATION} | bool | | closure.rs:85:42:85:42 | f | | closure.rs:85:20:85:35 | F | | closure.rs:85:48:85:48 | a | | closure.rs:85:14:85:14 | A | | closure.rs:85:59:87:5 | { ... } | | closure.rs:85:17:85:17 | B | @@ -5618,13 +5626,14 @@ inferType | closure.rs:90:9:90:9 | f | | closure.rs:89:25:89:46 | impl ... | | closure.rs:90:9:90:12 | f(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:90:11:90:11 | 2 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:90:11:90:11 | 2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:93:15:105:5 | { ... } | | {EXTERNAL LOCATION} | () | -| closure.rs:94:13:94:13 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:94:13:94:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:94:13:94:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:94:13:94:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:94:13:94:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:94:13:94:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | -| closure.rs:94:17:100:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:94:17:100:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:94:17:100:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:94:17:100:9 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:94:17:100:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | @@ -5643,32 +5652,44 @@ inferType | closure.rs:97:20:99:13 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:98:17:98:17 | 0 | | {EXTERNAL LOCATION} | i32 | | closure.rs:98:17:98:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| closure.rs:101:24:101:24 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:101:13:101:14 | _r | | {EXTERNAL LOCATION} | i32 | +| closure.rs:101:13:101:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:101:18:101:31 | apply(...) | | {EXTERNAL LOCATION} | i32 | +| closure.rs:101:18:101:31 | apply(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:101:24:101:24 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:101:24:101:24 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:101:24:101:24 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:101:24:101:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:101:24:101:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:101:27:101:30 | true | | {EXTERNAL LOCATION} | bool | -| closure.rs:103:13:103:13 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:103:13:103:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:103:13:103:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:103:17:103:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:103:17:103:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:103:17:103:25 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:103:25:103:25 | 1 | | {EXTERNAL LOCATION} | i32 | | closure.rs:104:13:104:15 | _r2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:104:19:104:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | -| closure.rs:104:29:104:29 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:104:29:104:29 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:104:29:104:29 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:109:40:109:40 | f | | closure.rs:109:20:109:37 | F | | closure.rs:109:46:111:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:110:13:110:19 | _return | | {EXTERNAL LOCATION} | i64 | | closure.rs:110:23:110:23 | f | | closure.rs:109:20:109:37 | F | +| closure.rs:110:23:110:29 | f(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:110:25:110:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:113:41:113:41 | f | | closure.rs:113:28:113:38 | F | | closure.rs:113:47:115:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:114:13:114:19 | _return | | {EXTERNAL LOCATION} | () | | closure.rs:114:23:114:23 | f | | closure.rs:113:28:113:38 | F | +| closure.rs:114:23:114:29 | f(...) | | {EXTERNAL LOCATION} | () | | closure.rs:114:25:114:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:117:42:117:42 | f | | closure.rs:117:22:117:39 | F | | closure.rs:117:48:120:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:118:13:118:15 | arg | | {EXTERNAL LOCATION} | bool | +| closure.rs:118:19:118:36 | ...::default(...) | | {EXTERNAL LOCATION} | bool | | closure.rs:119:9:119:9 | f | | closure.rs:117:22:117:39 | F | +| closure.rs:119:9:119:14 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:119:11:119:13 | arg | | {EXTERNAL LOCATION} | bool | | closure.rs:122:35:122:35 | f | | closure.rs:122:20:122:32 | F | | closure.rs:122:41:122:41 | a | | closure.rs:122:14:122:14 | A | | closure.rs:122:52:124:5 | { ... } | | closure.rs:122:17:122:17 | B | @@ -5680,13 +5701,14 @@ inferType | closure.rs:127:9:127:9 | f | | closure.rs:126:21:126:39 | impl ... | | closure.rs:127:9:127:12 | f(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:127:11:127:11 | 2 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:127:11:127:11 | 2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:130:15:142:5 | { ... } | | {EXTERNAL LOCATION} | () | -| closure.rs:131:13:131:13 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:131:13:131:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:131:13:131:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:131:13:131:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:131:13:131:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:131:13:131:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | -| closure.rs:131:17:137:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:131:17:137:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:131:17:137:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:131:17:137:9 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:131:17:137:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | @@ -5705,20 +5727,24 @@ inferType | closure.rs:134:20:136:13 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:135:17:135:17 | 0 | | {EXTERNAL LOCATION} | i32 | | closure.rs:135:17:135:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| closure.rs:138:24:138:24 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:138:13:138:14 | _r | | {EXTERNAL LOCATION} | i32 | +| closure.rs:138:13:138:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:138:18:138:31 | apply(...) | | {EXTERNAL LOCATION} | i32 | +| closure.rs:138:18:138:31 | apply(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:138:24:138:24 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:138:24:138:24 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:138:24:138:24 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:138:24:138:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:138:24:138:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:138:27:138:30 | true | | {EXTERNAL LOCATION} | bool | -| closure.rs:140:13:140:13 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:140:13:140:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:140:13:140:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:140:17:140:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:140:17:140:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:140:17:140:25 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:140:25:140:25 | 1 | | {EXTERNAL LOCATION} | i32 | | closure.rs:141:13:141:15 | _r2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:141:19:141:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | -| closure.rs:141:29:141:29 | f | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:141:29:141:29 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:141:29:141:29 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:146:54:146:54 | f | | {EXTERNAL LOCATION} | Box | | closure.rs:146:54:146:54 | f | A | {EXTERNAL LOCATION} | Global | @@ -5751,11 +5777,11 @@ inferType | closure.rs:152:19:152:57 | apply_boxed(...) | | {EXTERNAL LOCATION} | bool | | closure.rs:152:31:152:53 | ...::new(...) | | {EXTERNAL LOCATION} | Box | | closure.rs:152:31:152:53 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| closure.rs:152:31:152:53 | ...::new(...) | T | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:152:31:152:53 | ...::new(...) | T | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:152:31:152:53 | ...::new(...) | T.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:152:31:152:53 | ...::new(...) | T.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:152:31:152:53 | ...::new(...) | T.dyn(Output) | {EXTERNAL LOCATION} | bool | -| closure.rs:152:40:152:52 | \|...\| true | | {EXTERNAL LOCATION} | dyn FnOnce | +| closure.rs:152:40:152:52 | \|...\| true | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:152:40:152:52 | \|...\| true | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:152:40:152:52 | \|...\| true | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:152:40:152:52 | \|...\| true | dyn(Output) | {EXTERNAL LOCATION} | bool | @@ -9060,7 +9086,7 @@ inferType | main.rs:1480:17:1480:18 | TryExpr | | {EXTERNAL LOCATION} | Result | | main.rs:1480:17:1480:18 | TryExpr | T | main.rs:1454:5:1455:14 | S1 | | main.rs:1480:17:1480:29 | ... .map(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1480:24:1480:28 | \|...\| s | | {EXTERNAL LOCATION} | dyn FnOnce | +| main.rs:1480:24:1480:28 | \|...\| s | | {EXTERNAL LOCATION} | dyn Fn | | main.rs:1480:24:1480:28 | \|...\| s | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | main.rs:1481:9:1481:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | | main.rs:1481:9:1481:22 | ...::Ok(...) | E | main.rs:1457:5:1458:14 | S2 | @@ -9083,7 +9109,7 @@ inferType | main.rs:1488:22:1491:10 | ... .and_then(...) | | {EXTERNAL LOCATION} | Result | | main.rs:1488:22:1491:10 | ... .and_then(...) | E | main.rs:1454:5:1455:14 | S1 | | main.rs:1488:33:1488:37 | value | | main.rs:1486:20:1486:27 | T | -| main.rs:1488:49:1491:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| main.rs:1488:49:1491:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | main.rs:1488:49:1491:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | main.rs:1488:49:1491:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | Result | | main.rs:1488:49:1491:9 | \|...\| ... | dyn(Output).E | main.rs:1454:5:1455:14 | S1 | @@ -10648,7 +10674,7 @@ inferType | main.rs:2399:19:2399:19 | 1 | | {EXTERNAL LOCATION} | i32 | | main.rs:2399:22:2399:22 | 2 | | {EXTERNAL LOCATION} | i32 | | main.rs:2399:25:2399:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2399:32:2399:40 | \|...\| ... | | {EXTERNAL LOCATION} | dyn FnOnce | +| main.rs:2399:32:2399:40 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | main.rs:2399:32:2399:40 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | main.rs:2399:40:2399:40 | 1 | | {EXTERNAL LOCATION} | i32 | | main.rs:2399:43:2399:44 | { ... } | | {EXTERNAL LOCATION} | () | diff --git a/rust/tools/builtins/mentions.rs b/rust/tools/builtins/mentions.rs index a3731164893b..3170c1bfbdf2 100644 --- a/rust/tools/builtins/mentions.rs +++ b/rust/tools/builtins/mentions.rs @@ -3,4 +3,4 @@ use std::future::Future; fn mention_dyn_future(f: &dyn Future) {} -fn mention_dyn_fn_once(f: &dyn FnOnce() -> F) {} +fn mention_dyn_fn_once(f: &dyn Fn() -> F) {} From 9ab29f9be0ad968f60864f777787df21c136119c Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Fri, 16 Jan 2026 10:05:45 +0100 Subject: [PATCH 029/433] Rust: Add a change note for type inference improvements for closures --- .../ql/lib/change-notes/2026-01-16-type-inference-closures.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 rust/ql/lib/change-notes/2026-01-16-type-inference-closures.md diff --git a/rust/ql/lib/change-notes/2026-01-16-type-inference-closures.md b/rust/ql/lib/change-notes/2026-01-16-type-inference-closures.md new file mode 100644 index 000000000000..1e093b74dbe9 --- /dev/null +++ b/rust/ql/lib/change-notes/2026-01-16-type-inference-closures.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* Added type inference support for the `FnMut(..) -> ..` and `Fn(..) -> ..` traits. They now work in type parameter bounds and are implemented by closures. \ No newline at end of file From 78b88d3a4423cd42e848871d3bff4bdad06d5d15 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Fri, 16 Jan 2026 11:26:05 +0100 Subject: [PATCH 030/433] Rust: Fix grammar in QLDoc Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../ql/lib/codeql/rust/internal/typeinference/TypeInference.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index c85c43122294..8759058d84cd 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -3843,7 +3843,7 @@ private TypePath closureReturnPath() { TypePath::singleton(TDynTraitTypeParameter(any(FnTrait t), any(FnOnceTrait t).getOutputType())) } -/** Gets the path to a closure with arity `arity`s `index`th parameter type. */ +/** Gets the path to a closure with arity `arity`'s `index`th parameter type. */ pragma[nomagic] private TypePath closureParameterPath(int arity, int index) { result = From 98949937ddcfdb098f79bac530122b318a184e7b Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Tue, 13 Jan 2026 11:30:43 +0100 Subject: [PATCH 031/433] C#: Add CFG support for null conditional assignments and include eg. field access in the CFG. --- .../internal/ControlFlowGraphImpl.qll | 61 +++++++++++++------ 1 file changed, 41 insertions(+), 20 deletions(-) diff --git a/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll b/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll index 96fe5703090e..288e2c4d8ffc 100644 --- a/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll +++ b/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll @@ -429,7 +429,7 @@ module Expressions { not this instanceof ObjectCreation and not this instanceof ArrayCreation and not this instanceof QualifiedWriteAccess and - not this instanceof AccessorWrite and + not this instanceof QualifiedAccessorWrite and not this instanceof NoNodeExpr and not this instanceof SwitchExpr and not this instanceof SwitchCaseExpr and @@ -448,6 +448,10 @@ module Expressions { /** * A qualified write access. In a qualified write access, the access itself is * not evaluated, only the qualifier and the indexer arguments (if any). + * + * Note that the successor declaration in `QualifiedAccessorWrite` ensures that the access itself + * is evaluated after the qualifier and the indexer arguments (if any) + * and the right hand side of the assignment. */ private class QualifiedWriteAccess extends ControlFlowTree instanceof WriteAccess, QualifiableExpr { @@ -470,25 +474,25 @@ module Expressions { final override predicate last(AstNode last, Completion c) { // Skip the access in a qualified write access last(getLastExprChild(this), last, c) + or + // Qualifier exits with a null completion + super.isConditional() and + last(super.getQualifier(), last, c) and + c.(NullnessCompletion).isNull() } final override predicate succ(AstNode pred, AstNode succ, Completion c) { exists(int i | last(getExprChild(this, i), pred, c) and c instanceof NormalCompletion and + (i != 0 or not c.(NullnessCompletion).isNull()) and first(getExprChild(this, i + 1), succ) ) } } - private class StatOrDynAccessorCall_ = - @dynamic_member_access_expr or @dynamic_element_access_expr or @call_access_expr; - - /** A normal or a (potential) dynamic call to an accessor. */ - private class StatOrDynAccessorCall extends Expr, StatOrDynAccessorCall_ { } - /** - * An expression that writes via an accessor call, for example `x.Prop = 0`, + * An expression that writes via an accessor, for example `x.Prop = 0`, * where `Prop` is a property. * * Accessor writes need special attention, because we need to model the fact @@ -498,13 +502,20 @@ module Expressions { * ```csharp * x -> 0 -> set_Prop -> x.Prop = 0 * ``` + * + * For consistency, control flow is implemented this way for all accessor writes. + * For example, `x.Field = 0`, where `Field` is a field, we want a CFG that looks like + * + * ```csharp + * x -> 0 -> x.Field -> x.Field = 0 + * ``` */ - class AccessorWrite extends PostOrderTree instanceof Expr { + private class QualifiedAccessorWrite extends PostOrderTree instanceof Expr { AssignableDefinition def; - AccessorWrite() { + QualifiedAccessorWrite() { def.getExpr() = this and - def.getTargetAccess().(WriteAccess) instanceof StatOrDynAccessorCall and + def.getTargetAccess().(WriteAccess) instanceof QualifiableExpr and not this instanceof AssignOperationWithExpandedAssignment } @@ -512,10 +523,11 @@ module Expressions { * Gets the `i`th accessor being called in this write. More than one call * can happen in tuple assignments. */ - StatOrDynAccessorCall getCall(int i) { + QualifiableExpr getAccess(int i) { result = rank[i + 1](AssignableDefinitions::TupleAssignmentDefinition tdef | - tdef.getExpr() = this and tdef.getTargetAccess() instanceof StatOrDynAccessorCall + tdef.getExpr() = this and + tdef.getTargetAccess() instanceof QualifiableExpr | tdef order by tdef.getEvaluationOrder() ).getTargetAccess() @@ -528,7 +540,13 @@ module Expressions { final override predicate propagatesAbnormal(AstNode child) { child = getExprChild(this, _) or - child = this.getCall(_) + child = this.getAccess(_) + } + + final override predicate last(AstNode last, Completion c) { + PostOrderTree.super.last(last, c) + or + last(getExprChild(this, 0), last, c) and c.(NullnessCompletion).isNull() } final override predicate first(AstNode first) { first(getExprChild(this, 0), first) } @@ -538,24 +556,25 @@ module Expressions { exists(int i | last(getExprChild(this, i), pred, c) and c instanceof NormalCompletion and + (i != 0 or not c.(NullnessCompletion).isNull()) and first(getExprChild(this, i + 1), succ) ) or // Flow from last element of last child to first accessor call last(getLastExprChild(this), pred, c) and - succ = this.getCall(0) and + succ = this.getAccess(0) and c instanceof NormalCompletion or // Flow from one call to the next - exists(int i | pred = this.getCall(i) | - succ = this.getCall(i + 1) and + exists(int i | pred = this.getAccess(i) | + succ = this.getAccess(i + 1) and c.isValidFor(pred) and c instanceof NormalCompletion ) or // Post-order: flow from last call to element itself - exists(int last | last = max(int i | exists(this.getCall(i))) | - pred = this.getCall(last) and + exists(int last | last = max(int i | exists(this.getAccess(i))) | + pred = this.getAccess(last) and succ = this and c.isValidFor(pred) and c instanceof NormalCompletion @@ -704,7 +723,9 @@ module Expressions { private class ConditionallyQualifiedExpr extends PostOrderTree instanceof QualifiableExpr { private Expr qualifier; - ConditionallyQualifiedExpr() { this.isConditional() and qualifier = getExprChild(this, 0) } + ConditionallyQualifiedExpr() { + this.isConditional() and qualifier = getExprChild(this, 0) and not this instanceof WriteAccess + } final override predicate propagatesAbnormal(AstNode child) { child = qualifier } From b061c4d08330643be317c5ffee06ab4489e6b09e Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 14 Jan 2026 11:44:43 +0100 Subject: [PATCH 032/433] C#: Update test expected output. --- .../controlflow/graph/BasicBlock.expected | 50 ++-- .../controlflow/graph/Dominance.expected | 216 ++++++++++++------ .../graph/EnclosingCallable.expected | 35 +++ .../controlflow/graph/NodeGraph.expected | 108 ++++++--- .../csharp8/ispatternflow.expected | 3 +- .../csharp8/switchexprcontrolflow.expected | 3 +- .../csharp8/switchstmtctrlflow.expected | 3 +- .../dataflow/local/TaintTrackingStep.expected | 1 + .../signanalysis/SignAnalysis.expected | 2 + .../test/library-tests/obinit/ObInit.expected | 10 +- .../standalone/controlflow/cfg.expected | 8 +- 11 files changed, 296 insertions(+), 143 deletions(-) diff --git a/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected b/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected index 99d89a29c134..ee6adc184a44 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected @@ -3,14 +3,14 @@ | AccessorCalls.cs:5:33:5:35 | enter set_Item | AccessorCalls.cs:5:33:5:35 | exit set_Item | 4 | | AccessorCalls.cs:7:32:7:34 | enter add_Event | AccessorCalls.cs:7:32:7:34 | exit add_Event | 4 | | AccessorCalls.cs:7:40:7:45 | enter remove_Event | AccessorCalls.cs:7:40:7:45 | exit remove_Event | 4 | -| AccessorCalls.cs:10:10:10:11 | enter M1 | AccessorCalls.cs:10:10:10:11 | exit M1 | 33 | -| AccessorCalls.cs:19:10:19:11 | enter M2 | AccessorCalls.cs:19:10:19:11 | exit M2 | 41 | +| AccessorCalls.cs:10:10:10:11 | enter M1 | AccessorCalls.cs:10:10:10:11 | exit M1 | 34 | +| AccessorCalls.cs:19:10:19:11 | enter M2 | AccessorCalls.cs:19:10:19:11 | exit M2 | 42 | | AccessorCalls.cs:28:10:28:11 | enter M3 | AccessorCalls.cs:28:10:28:11 | exit M3 | 17 | | AccessorCalls.cs:35:10:35:11 | enter M4 | AccessorCalls.cs:35:10:35:11 | exit M4 | 20 | -| AccessorCalls.cs:42:10:42:11 | enter M5 | AccessorCalls.cs:42:10:42:11 | exit M5 | 33 | -| AccessorCalls.cs:49:10:49:11 | enter M6 | AccessorCalls.cs:49:10:49:11 | exit M6 | 42 | -| AccessorCalls.cs:56:10:56:11 | enter M7 | AccessorCalls.cs:56:10:56:11 | exit M7 | 24 | -| AccessorCalls.cs:61:10:61:11 | enter M8 | AccessorCalls.cs:61:10:61:11 | exit M8 | 30 | +| AccessorCalls.cs:42:10:42:11 | enter M5 | AccessorCalls.cs:42:10:42:11 | exit M5 | 34 | +| AccessorCalls.cs:49:10:49:11 | enter M6 | AccessorCalls.cs:49:10:49:11 | exit M6 | 43 | +| AccessorCalls.cs:56:10:56:11 | enter M7 | AccessorCalls.cs:56:10:56:11 | exit M7 | 25 | +| AccessorCalls.cs:61:10:61:11 | enter M8 | AccessorCalls.cs:61:10:61:11 | exit M8 | 31 | | AccessorCalls.cs:66:10:66:11 | enter M9 | AccessorCalls.cs:66:10:66:11 | exit M9 | 58 | | ArrayCreation.cs:1:7:1:19 | enter ArrayCreation | ArrayCreation.cs:1:7:1:19 | exit ArrayCreation | 7 | | ArrayCreation.cs:3:11:3:12 | enter M1 | ArrayCreation.cs:3:11:3:12 | exit M1 | 5 | @@ -490,8 +490,8 @@ | Finally.cs:205:31:205:46 | object creation of type ExceptionB | Finally.cs:205:31:205:46 | object creation of type ExceptionB | 1 | | Finally.cs:208:13:210:13 | {...} | Finally.cs:209:21:209:22 | access to parameter b3 | 3 | | Finally.cs:209:31:209:46 | object creation of type ExceptionC | Finally.cs:209:25:209:47 | throw ...; | 2 | -| Finally.cs:211:13:211:29 | ...; | Finally.cs:211:13:211:28 | ... = ... | 4 | -| Finally.cs:213:9:213:25 | ...; | Finally.cs:195:10:195:12 | exit M10 (normal) | 5 | +| Finally.cs:211:13:211:29 | ...; | Finally.cs:211:13:211:28 | ... = ... | 5 | +| Finally.cs:213:9:213:25 | ...; | Finally.cs:195:10:195:12 | exit M10 (normal) | 6 | | Finally.cs:216:10:216:12 | enter M11 | Finally.cs:220:13:220:36 | call to method WriteLine | 7 | | Finally.cs:222:9:225:9 | catch {...} | Finally.cs:224:13:224:38 | call to method WriteLine | 5 | | Finally.cs:227:9:229:9 | {...} | Finally.cs:216:10:216:12 | exit M11 | 9 | @@ -539,21 +539,21 @@ | Foreach.cs:36:10:36:11 | exit M6 (normal) | Foreach.cs:36:10:36:11 | exit M6 | 2 | | Foreach.cs:38:9:39:11 | foreach (... ... in ...) ... | Foreach.cs:38:9:39:11 | foreach (... ... in ...) ... | 1 | | Foreach.cs:38:26:38:26 | String x | Foreach.cs:39:11:39:11 | ; | 4 | -| Initializers.cs:3:7:3:18 | enter | Initializers.cs:3:7:3:18 | exit | 14 | +| Initializers.cs:3:7:3:18 | enter | Initializers.cs:3:7:3:18 | exit | 15 | | Initializers.cs:3:7:3:18 | enter Initializers | Initializers.cs:3:7:3:18 | exit Initializers | 4 | | Initializers.cs:8:5:8:16 | enter Initializers | Initializers.cs:8:5:8:16 | exit Initializers | 7 | | Initializers.cs:10:5:10:16 | enter Initializers | Initializers.cs:10:5:10:16 | exit Initializers | 7 | -| Initializers.cs:12:10:12:10 | enter M | Initializers.cs:12:10:12:10 | exit M | 22 | -| Initializers.cs:18:16:18:16 | enter H | Initializers.cs:18:16:18:16 | exit H | 5 | -| Initializers.cs:20:11:20:23 | enter | Initializers.cs:20:11:20:23 | exit | 9 | +| Initializers.cs:12:10:12:10 | enter M | Initializers.cs:12:10:12:10 | exit M | 23 | +| Initializers.cs:18:16:18:16 | enter H | Initializers.cs:18:16:18:16 | exit H | 6 | +| Initializers.cs:20:11:20:23 | enter | Initializers.cs:20:11:20:23 | exit | 11 | | Initializers.cs:20:11:20:23 | enter NoConstructor | Initializers.cs:20:11:20:23 | exit NoConstructor | 7 | -| Initializers.cs:26:11:26:13 | enter | Initializers.cs:26:11:26:13 | exit | 6 | -| Initializers.cs:31:9:31:11 | enter Sub | Initializers.cs:31:9:31:11 | exit Sub | 11 | -| Initializers.cs:33:9:33:11 | enter Sub | Initializers.cs:33:9:33:11 | exit Sub | 9 | -| Initializers.cs:35:9:35:11 | enter Sub | Initializers.cs:35:9:35:11 | exit Sub | 13 | +| Initializers.cs:26:11:26:13 | enter | Initializers.cs:26:11:26:13 | exit | 7 | +| Initializers.cs:31:9:31:11 | enter Sub | Initializers.cs:31:9:31:11 | exit Sub | 12 | +| Initializers.cs:33:9:33:11 | enter Sub | Initializers.cs:33:9:33:11 | exit Sub | 10 | +| Initializers.cs:35:9:35:11 | enter Sub | Initializers.cs:35:9:35:11 | exit Sub | 14 | | Initializers.cs:39:7:39:23 | enter IndexInitializers | Initializers.cs:39:7:39:23 | exit IndexInitializers | 7 | | Initializers.cs:41:11:41:18 | enter Compound | Initializers.cs:41:11:41:18 | exit Compound | 7 | -| Initializers.cs:51:10:51:13 | enter Test | Initializers.cs:51:10:51:13 | exit Test | 105 | +| Initializers.cs:51:10:51:13 | enter Test | Initializers.cs:51:10:51:13 | exit Test | 116 | | LoopUnrolling.cs:5:7:5:19 | enter LoopUnrolling | LoopUnrolling.cs:5:7:5:19 | exit LoopUnrolling | 7 | | LoopUnrolling.cs:7:10:7:11 | enter M1 | LoopUnrolling.cs:9:13:9:28 | ... == ... | 7 | | LoopUnrolling.cs:7:10:7:11 | exit M1 (normal) | LoopUnrolling.cs:7:10:7:11 | exit M1 | 2 | @@ -629,7 +629,7 @@ | MultiImplementationA.cs:8:29:8:32 | null | MultiImplementationA.cs:8:16:8:16 | exit M (abnormal) | 3 | | MultiImplementationA.cs:11:7:11:8 | enter | MultiImplementationA.cs:11:7:11:8 | enter | 1 | | MultiImplementationA.cs:11:7:11:8 | exit (normal) | MultiImplementationA.cs:11:7:11:8 | exit | 2 | -| MultiImplementationA.cs:13:16:13:16 | this access | MultiImplementationA.cs:24:32:24:34 | ... = ... | 7 | +| MultiImplementationA.cs:13:16:13:16 | this access | MultiImplementationA.cs:24:32:24:34 | ... = ... | 8 | | MultiImplementationA.cs:14:31:14:31 | access to parameter i | MultiImplementationA.cs:14:31:14:31 | exit get_Item (normal) | 2 | | MultiImplementationA.cs:14:31:14:31 | enter get_Item | MultiImplementationA.cs:14:31:14:31 | enter get_Item | 1 | | MultiImplementationA.cs:14:31:14:31 | exit get_Item | MultiImplementationA.cs:14:31:14:31 | exit get_Item | 1 | @@ -645,7 +645,7 @@ | MultiImplementationA.cs:18:9:18:22 | enter M2 | MultiImplementationA.cs:18:9:18:22 | exit M2 | 4 | | MultiImplementationA.cs:20:12:20:13 | enter C2 | MultiImplementationA.cs:20:12:20:13 | enter C2 | 1 | | MultiImplementationA.cs:20:12:20:13 | exit C2 | MultiImplementationA.cs:20:12:20:13 | exit C2 | 1 | -| MultiImplementationA.cs:20:12:20:13 | this access | MultiImplementationA.cs:20:12:20:13 | exit C2 (normal) | 9 | +| MultiImplementationA.cs:20:12:20:13 | this access | MultiImplementationA.cs:20:12:20:13 | exit C2 (normal) | 10 | | MultiImplementationA.cs:21:12:21:13 | enter C2 | MultiImplementationA.cs:21:12:21:13 | enter C2 | 1 | | MultiImplementationA.cs:21:12:21:13 | exit C2 (normal) | MultiImplementationA.cs:21:12:21:13 | exit C2 | 2 | | MultiImplementationA.cs:21:24:21:24 | 0 | MultiImplementationA.cs:21:27:21:29 | {...} | 3 | @@ -671,7 +671,7 @@ | MultiImplementationB.cs:4:25:4:37 | {...} | MultiImplementationA.cs:7:21:7:23 | exit get_P2 (normal) | 4 | | MultiImplementationB.cs:4:43:4:45 | {...} | MultiImplementationA.cs:7:41:7:43 | exit set_P2 (normal) | 2 | | MultiImplementationB.cs:5:23:5:23 | 2 | MultiImplementationA.cs:8:16:8:16 | exit M (normal) | 2 | -| MultiImplementationB.cs:11:16:11:16 | this access | MultiImplementationB.cs:22:32:22:34 | ... = ... | 7 | +| MultiImplementationB.cs:11:16:11:16 | this access | MultiImplementationB.cs:22:32:22:34 | ... = ... | 8 | | MultiImplementationB.cs:12:37:12:40 | null | MultiImplementationA.cs:14:31:14:31 | exit get_Item (abnormal) | 3 | | MultiImplementationB.cs:13:40:13:54 | {...} | MultiImplementationA.cs:15:36:15:38 | exit get_Item (abnormal) | 4 | | MultiImplementationB.cs:13:60:13:62 | {...} | MultiImplementationB.cs:13:60:13:62 | {...} | 1 | @@ -722,7 +722,7 @@ | NullCoalescing.cs:15:31:15:31 | 0 | NullCoalescing.cs:16:17:16:18 | "" | 5 | | NullCoalescing.cs:16:17:16:25 | ... ?? ... | NullCoalescing.cs:17:13:17:19 | (...) ... | 5 | | NullCoalescing.cs:17:13:17:24 | ... ?? ... | NullCoalescing.cs:13:10:13:11 | exit M6 | 4 | -| PartialImplementationA.cs:1:15:1:21 | enter | PartialImplementationA.cs:1:15:1:21 | exit | 10 | +| PartialImplementationA.cs:1:15:1:21 | enter | PartialImplementationA.cs:1:15:1:21 | exit | 11 | | PartialImplementationA.cs:3:12:3:18 | enter Partial | PartialImplementationA.cs:3:12:3:18 | exit Partial | 7 | | PartialImplementationB.cs:4:12:4:18 | enter Partial | PartialImplementationB.cs:4:12:4:18 | exit Partial | 7 | | Patterns.cs:3:7:3:14 | enter Patterns | Patterns.cs:3:7:3:14 | exit Patterns | 7 | @@ -1041,8 +1041,8 @@ | cflow.cs:127:32:127:57 | ... ? ... : ... | cflow.cs:127:19:127:21 | exit get_Prop | 4 | | cflow.cs:127:48:127:49 | "" | cflow.cs:127:48:127:49 | "" | 1 | | cflow.cs:127:53:127:57 | this access | cflow.cs:127:53:127:57 | access to field Field | 2 | -| cflow.cs:127:62:127:64 | enter set_Prop | cflow.cs:127:62:127:64 | exit set_Prop | 8 | -| cflow.cs:129:5:129:15 | enter ControlFlow | cflow.cs:129:5:129:15 | exit ControlFlow | 11 | +| cflow.cs:127:62:127:64 | enter set_Prop | cflow.cs:127:62:127:64 | exit set_Prop | 9 | +| cflow.cs:129:5:129:15 | enter ControlFlow | cflow.cs:129:5:129:15 | exit ControlFlow | 12 | | cflow.cs:134:5:134:15 | enter ControlFlow | cflow.cs:134:5:134:15 | exit ControlFlow | 9 | | cflow.cs:136:12:136:22 | enter ControlFlow | cflow.cs:136:12:136:22 | exit ControlFlow | 8 | | cflow.cs:138:40:138:40 | enter + | cflow.cs:138:40:138:40 | exit + | 9 | @@ -1104,7 +1104,7 @@ | cflow.cs:201:9:205:9 | {...} | cflow.cs:193:10:193:17 | exit Booleans (abnormal) | 5 | | cflow.cs:208:10:208:11 | enter Do | cflow.cs:210:9:221:36 | do ... while (...); | 3 | | cflow.cs:208:10:208:11 | exit Do (normal) | cflow.cs:208:10:208:11 | exit Do | 2 | -| cflow.cs:211:9:221:9 | {...} | cflow.cs:213:17:213:32 | ... > ... | 14 | +| cflow.cs:211:9:221:9 | {...} | cflow.cs:213:17:213:32 | ... > ... | 15 | | cflow.cs:214:13:216:13 | {...} | cflow.cs:215:17:215:25 | continue; | 2 | | cflow.cs:217:13:220:13 | if (...) ... | cflow.cs:217:17:217:32 | ... < ... | 6 | | cflow.cs:218:13:220:13 | {...} | cflow.cs:219:17:219:22 | break; | 2 | @@ -1112,7 +1112,7 @@ | cflow.cs:224:10:224:16 | enter Foreach | cflow.cs:226:27:226:64 | call to method Repeat | 5 | | cflow.cs:224:10:224:16 | exit Foreach (normal) | cflow.cs:224:10:224:16 | exit Foreach | 2 | | cflow.cs:226:9:237:9 | foreach (... ... in ...) ... | cflow.cs:226:9:237:9 | foreach (... ... in ...) ... | 1 | -| cflow.cs:226:22:226:22 | String x | cflow.cs:229:17:229:32 | ... > ... | 15 | +| cflow.cs:226:22:226:22 | String x | cflow.cs:229:17:229:32 | ... > ... | 16 | | cflow.cs:230:13:232:13 | {...} | cflow.cs:231:17:231:25 | continue; | 2 | | cflow.cs:233:13:236:13 | if (...) ... | cflow.cs:233:17:233:32 | ... < ... | 6 | | cflow.cs:234:13:236:13 | {...} | cflow.cs:235:17:235:22 | break; | 2 | diff --git a/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected b/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected index 8240e61a4199..f048e6d2a39d 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected @@ -21,10 +21,11 @@ dominance | AccessorCalls.cs:10:10:10:11 | exit M1 (normal) | AccessorCalls.cs:10:10:10:11 | exit M1 | | AccessorCalls.cs:11:5:17:5 | {...} | AccessorCalls.cs:12:9:12:32 | ...; | | AccessorCalls.cs:12:9:12:12 | this access | AccessorCalls.cs:12:22:12:25 | this access | +| AccessorCalls.cs:12:9:12:18 | access to field Field | AccessorCalls.cs:12:9:12:31 | ... = ... | | AccessorCalls.cs:12:9:12:31 | ... = ... | AccessorCalls.cs:13:9:13:30 | ...; | | AccessorCalls.cs:12:9:12:32 | ...; | AccessorCalls.cs:12:9:12:12 | this access | | AccessorCalls.cs:12:22:12:25 | this access | AccessorCalls.cs:12:22:12:31 | access to field Field | -| AccessorCalls.cs:12:22:12:31 | access to field Field | AccessorCalls.cs:12:9:12:31 | ... = ... | +| AccessorCalls.cs:12:22:12:31 | access to field Field | AccessorCalls.cs:12:9:12:18 | access to field Field | | AccessorCalls.cs:13:9:13:12 | this access | AccessorCalls.cs:13:21:13:24 | this access | | AccessorCalls.cs:13:9:13:17 | access to property Prop | AccessorCalls.cs:13:9:13:29 | ... = ... | | AccessorCalls.cs:13:9:13:29 | ... = ... | AccessorCalls.cs:14:9:14:26 | ...; | @@ -54,11 +55,12 @@ dominance | AccessorCalls.cs:20:5:26:5 | {...} | AccessorCalls.cs:21:9:21:36 | ...; | | AccessorCalls.cs:21:9:21:12 | this access | AccessorCalls.cs:21:9:21:14 | access to field x | | AccessorCalls.cs:21:9:21:14 | access to field x | AccessorCalls.cs:21:24:21:27 | this access | +| AccessorCalls.cs:21:9:21:20 | access to field Field | AccessorCalls.cs:21:9:21:35 | ... = ... | | AccessorCalls.cs:21:9:21:35 | ... = ... | AccessorCalls.cs:22:9:22:34 | ...; | | AccessorCalls.cs:21:9:21:36 | ...; | AccessorCalls.cs:21:9:21:12 | this access | | AccessorCalls.cs:21:24:21:27 | this access | AccessorCalls.cs:21:24:21:29 | access to field x | | AccessorCalls.cs:21:24:21:29 | access to field x | AccessorCalls.cs:21:24:21:35 | access to field Field | -| AccessorCalls.cs:21:24:21:35 | access to field Field | AccessorCalls.cs:21:9:21:35 | ... = ... | +| AccessorCalls.cs:21:24:21:35 | access to field Field | AccessorCalls.cs:21:9:21:20 | access to field Field | | AccessorCalls.cs:22:9:22:12 | this access | AccessorCalls.cs:22:9:22:14 | access to field x | | AccessorCalls.cs:22:9:22:14 | access to field x | AccessorCalls.cs:22:23:22:26 | this access | | AccessorCalls.cs:22:9:22:19 | access to property Prop | AccessorCalls.cs:22:9:22:33 | ... = ... | @@ -129,8 +131,9 @@ dominance | AccessorCalls.cs:43:5:47:5 | {...} | AccessorCalls.cs:44:9:44:33 | ...; | | AccessorCalls.cs:44:9:44:12 | this access | AccessorCalls.cs:44:9:44:12 | this access | | AccessorCalls.cs:44:9:44:12 | this access | AccessorCalls.cs:44:9:44:18 | access to field Field | +| AccessorCalls.cs:44:9:44:18 | access to field Field | AccessorCalls.cs:44:9:44:32 | ... = ... | | AccessorCalls.cs:44:9:44:18 | access to field Field | AccessorCalls.cs:44:23:44:26 | this access | -| AccessorCalls.cs:44:9:44:32 | ... + ... | AccessorCalls.cs:44:9:44:32 | ... = ... | +| AccessorCalls.cs:44:9:44:32 | ... + ... | AccessorCalls.cs:44:9:44:18 | access to field Field | | AccessorCalls.cs:44:9:44:32 | ... = ... | AccessorCalls.cs:45:9:45:31 | ...; | | AccessorCalls.cs:44:9:44:33 | ...; | AccessorCalls.cs:44:9:44:12 | this access | | AccessorCalls.cs:44:23:44:26 | this access | AccessorCalls.cs:44:23:44:32 | access to field Field | @@ -163,8 +166,9 @@ dominance | AccessorCalls.cs:51:9:51:12 | this access | AccessorCalls.cs:51:9:51:14 | access to field x | | AccessorCalls.cs:51:9:51:14 | access to field x | AccessorCalls.cs:51:9:51:12 | this access | | AccessorCalls.cs:51:9:51:14 | access to field x | AccessorCalls.cs:51:9:51:20 | access to field Field | +| AccessorCalls.cs:51:9:51:20 | access to field Field | AccessorCalls.cs:51:9:51:36 | ... = ... | | AccessorCalls.cs:51:9:51:20 | access to field Field | AccessorCalls.cs:51:25:51:28 | this access | -| AccessorCalls.cs:51:9:51:36 | ... + ... | AccessorCalls.cs:51:9:51:36 | ... = ... | +| AccessorCalls.cs:51:9:51:36 | ... + ... | AccessorCalls.cs:51:9:51:20 | access to field Field | | AccessorCalls.cs:51:9:51:36 | ... = ... | AccessorCalls.cs:52:9:52:35 | ...; | | AccessorCalls.cs:51:9:51:37 | ...; | AccessorCalls.cs:51:9:51:12 | this access | | AccessorCalls.cs:51:25:51:28 | this access | AccessorCalls.cs:51:25:51:30 | access to field x | @@ -204,13 +208,14 @@ dominance | AccessorCalls.cs:58:9:58:85 | ... = ... | AccessorCalls.cs:56:10:56:11 | exit M7 (normal) | | AccessorCalls.cs:58:9:58:86 | ...; | AccessorCalls.cs:58:10:58:13 | this access | | AccessorCalls.cs:58:10:58:13 | this access | AccessorCalls.cs:58:22:58:25 | this access | +| AccessorCalls.cs:58:10:58:19 | access to field Field | AccessorCalls.cs:58:22:58:30 | access to property Prop | | AccessorCalls.cs:58:22:58:25 | this access | AccessorCalls.cs:58:37:58:40 | this access | | AccessorCalls.cs:58:22:58:30 | access to property Prop | AccessorCalls.cs:58:37:58:43 | access to indexer | | AccessorCalls.cs:58:33:58:44 | (..., ...) | AccessorCalls.cs:58:9:58:45 | (..., ...) | | AccessorCalls.cs:58:37:58:40 | this access | AccessorCalls.cs:58:42:58:42 | 0 | | AccessorCalls.cs:58:37:58:43 | access to indexer | AccessorCalls.cs:58:9:58:85 | ... = ... | | AccessorCalls.cs:58:42:58:42 | 0 | AccessorCalls.cs:58:33:58:44 | (..., ...) | -| AccessorCalls.cs:58:49:58:85 | (..., ...) | AccessorCalls.cs:58:22:58:30 | access to property Prop | +| AccessorCalls.cs:58:49:58:85 | (..., ...) | AccessorCalls.cs:58:10:58:19 | access to field Field | | AccessorCalls.cs:58:50:58:53 | this access | AccessorCalls.cs:58:50:58:59 | access to field Field | | AccessorCalls.cs:58:50:58:59 | access to field Field | AccessorCalls.cs:58:62:58:65 | this access | | AccessorCalls.cs:58:62:58:65 | this access | AccessorCalls.cs:58:62:58:70 | access to property Prop | @@ -228,6 +233,7 @@ dominance | AccessorCalls.cs:63:9:63:98 | ...; | AccessorCalls.cs:63:10:63:13 | this access | | AccessorCalls.cs:63:10:63:13 | this access | AccessorCalls.cs:63:10:63:15 | access to field x | | AccessorCalls.cs:63:10:63:15 | access to field x | AccessorCalls.cs:63:24:63:27 | this access | +| AccessorCalls.cs:63:10:63:21 | access to field Field | AccessorCalls.cs:63:24:63:34 | access to property Prop | | AccessorCalls.cs:63:24:63:27 | this access | AccessorCalls.cs:63:24:63:29 | access to field x | | AccessorCalls.cs:63:24:63:29 | access to field x | AccessorCalls.cs:63:41:63:44 | this access | | AccessorCalls.cs:63:24:63:34 | access to property Prop | AccessorCalls.cs:63:41:63:49 | access to indexer | @@ -236,7 +242,7 @@ dominance | AccessorCalls.cs:63:41:63:46 | access to field x | AccessorCalls.cs:63:48:63:48 | 0 | | AccessorCalls.cs:63:41:63:49 | access to indexer | AccessorCalls.cs:63:9:63:97 | ... = ... | | AccessorCalls.cs:63:48:63:48 | 0 | AccessorCalls.cs:63:37:63:50 | (..., ...) | -| AccessorCalls.cs:63:55:63:97 | (..., ...) | AccessorCalls.cs:63:24:63:34 | access to property Prop | +| AccessorCalls.cs:63:55:63:97 | (..., ...) | AccessorCalls.cs:63:10:63:21 | access to field Field | | AccessorCalls.cs:63:56:63:59 | this access | AccessorCalls.cs:63:56:63:61 | access to field x | | AccessorCalls.cs:63:56:63:61 | access to field x | AccessorCalls.cs:63:56:63:67 | access to field Field | | AccessorCalls.cs:63:56:63:67 | access to field Field | AccessorCalls.cs:63:70:63:73 | this access | @@ -1763,13 +1769,15 @@ dominance | Finally.cs:209:21:209:22 | access to parameter b3 | Finally.cs:211:13:211:29 | ...; | | Finally.cs:209:31:209:46 | object creation of type ExceptionC | Finally.cs:209:25:209:47 | throw ...; | | Finally.cs:211:13:211:16 | this access | Finally.cs:211:26:211:28 | "0" | +| Finally.cs:211:13:211:22 | access to field Field | Finally.cs:211:13:211:28 | ... = ... | | Finally.cs:211:13:211:28 | ... = ... | Finally.cs:213:9:213:25 | ...; | | Finally.cs:211:13:211:29 | ...; | Finally.cs:211:13:211:16 | this access | -| Finally.cs:211:26:211:28 | "0" | Finally.cs:211:13:211:28 | ... = ... | +| Finally.cs:211:26:211:28 | "0" | Finally.cs:211:13:211:22 | access to field Field | | Finally.cs:213:9:213:12 | this access | Finally.cs:213:22:213:24 | "1" | +| Finally.cs:213:9:213:18 | access to field Field | Finally.cs:213:9:213:24 | ... = ... | | Finally.cs:213:9:213:24 | ... = ... | Finally.cs:195:10:195:12 | exit M10 (normal) | | Finally.cs:213:9:213:25 | ...; | Finally.cs:213:9:213:12 | this access | -| Finally.cs:213:22:213:24 | "1" | Finally.cs:213:9:213:24 | ... = ... | +| Finally.cs:213:22:213:24 | "1" | Finally.cs:213:9:213:18 | access to field Field | | Finally.cs:216:10:216:12 | enter M11 | Finally.cs:217:5:231:5 | {...} | | Finally.cs:216:10:216:12 | exit M11 (normal) | Finally.cs:216:10:216:12 | exit M11 | | Finally.cs:217:5:231:5 | {...} | Finally.cs:218:9:229:9 | try {...} ... | @@ -1900,10 +1908,11 @@ dominance | Initializers.cs:3:7:3:18 | exit (normal) | Initializers.cs:3:7:3:18 | exit | | Initializers.cs:3:7:3:18 | exit Initializers (normal) | Initializers.cs:3:7:3:18 | exit Initializers | | Initializers.cs:3:7:3:18 | {...} | Initializers.cs:3:7:3:18 | exit Initializers (normal) | +| Initializers.cs:5:9:5:9 | access to field F | Initializers.cs:5:9:5:17 | ... = ... | | Initializers.cs:5:9:5:9 | this access | Initializers.cs:5:13:5:13 | access to field H | | Initializers.cs:5:9:5:17 | ... = ... | Initializers.cs:6:9:6:9 | this access | | Initializers.cs:5:13:5:13 | access to field H | Initializers.cs:5:17:5:17 | 1 | -| Initializers.cs:5:13:5:17 | ... + ... | Initializers.cs:5:9:5:17 | ... = ... | +| Initializers.cs:5:13:5:17 | ... + ... | Initializers.cs:5:9:5:9 | access to field F | | Initializers.cs:5:17:5:17 | 1 | Initializers.cs:5:13:5:17 | ... + ... | | Initializers.cs:6:9:6:9 | access to property G | Initializers.cs:6:25:6:31 | ... = ... | | Initializers.cs:6:9:6:9 | this access | Initializers.cs:6:27:6:27 | access to field H | @@ -1931,8 +1940,9 @@ dominance | Initializers.cs:14:17:14:53 | object creation of type Initializers | Initializers.cs:14:44:14:44 | 0 | | Initializers.cs:14:34:14:35 | "" | Initializers.cs:14:17:14:53 | object creation of type Initializers | | Initializers.cs:14:38:14:53 | { ..., ... } | Initializers.cs:14:13:14:53 | Initializers i = ... | +| Initializers.cs:14:40:14:40 | access to field F | Initializers.cs:14:40:14:44 | ... = ... | | Initializers.cs:14:40:14:44 | ... = ... | Initializers.cs:14:51:14:51 | 1 | -| Initializers.cs:14:44:14:44 | 0 | Initializers.cs:14:40:14:44 | ... = ... | +| Initializers.cs:14:44:14:44 | 0 | Initializers.cs:14:40:14:40 | access to field F | | Initializers.cs:14:47:14:47 | access to property G | Initializers.cs:14:47:14:51 | ... = ... | | Initializers.cs:14:47:14:51 | ... = ... | Initializers.cs:14:38:14:53 | { ..., ... } | | Initializers.cs:14:51:14:51 | 1 | Initializers.cs:14:47:14:47 | access to property G | @@ -1944,10 +1954,11 @@ dominance | Initializers.cs:15:39:15:39 | access to local variable i | Initializers.cs:15:59:15:60 | "" | | Initializers.cs:15:42:15:61 | object creation of type Initializers | Initializers.cs:15:37:15:63 | { ..., ... } | | Initializers.cs:15:59:15:60 | "" | Initializers.cs:15:42:15:61 | object creation of type Initializers | +| Initializers.cs:18:16:18:16 | access to field H | Initializers.cs:18:16:18:20 | ... = ... | | Initializers.cs:18:16:18:16 | enter H | Initializers.cs:18:20:18:20 | 1 | | Initializers.cs:18:16:18:16 | exit H (normal) | Initializers.cs:18:16:18:16 | exit H | | Initializers.cs:18:16:18:20 | ... = ... | Initializers.cs:18:16:18:16 | exit H (normal) | -| Initializers.cs:18:20:18:20 | 1 | Initializers.cs:18:16:18:20 | ... = ... | +| Initializers.cs:18:20:18:20 | 1 | Initializers.cs:18:16:18:16 | access to field H | | Initializers.cs:20:11:20:23 | call to constructor Object | Initializers.cs:20:11:20:23 | {...} | | Initializers.cs:20:11:20:23 | call to method | Initializers.cs:20:11:20:23 | call to constructor Object | | Initializers.cs:20:11:20:23 | enter | Initializers.cs:22:23:22:23 | this access | @@ -1956,46 +1967,52 @@ dominance | Initializers.cs:20:11:20:23 | exit NoConstructor (normal) | Initializers.cs:20:11:20:23 | exit NoConstructor | | Initializers.cs:20:11:20:23 | this access | Initializers.cs:20:11:20:23 | call to method | | Initializers.cs:20:11:20:23 | {...} | Initializers.cs:20:11:20:23 | exit NoConstructor (normal) | +| Initializers.cs:22:23:22:23 | access to field F | Initializers.cs:22:23:22:27 | ... = ... | | Initializers.cs:22:23:22:23 | this access | Initializers.cs:22:27:22:27 | 0 | | Initializers.cs:22:23:22:27 | ... = ... | Initializers.cs:23:23:23:23 | this access | -| Initializers.cs:22:27:22:27 | 0 | Initializers.cs:22:23:22:27 | ... = ... | +| Initializers.cs:22:27:22:27 | 0 | Initializers.cs:22:23:22:23 | access to field F | +| Initializers.cs:23:23:23:23 | access to field G | Initializers.cs:23:23:23:27 | ... = ... | | Initializers.cs:23:23:23:23 | this access | Initializers.cs:23:27:23:27 | 1 | | Initializers.cs:23:23:23:27 | ... = ... | Initializers.cs:20:11:20:23 | exit (normal) | -| Initializers.cs:23:27:23:27 | 1 | Initializers.cs:23:23:23:27 | ... = ... | +| Initializers.cs:23:27:23:27 | 1 | Initializers.cs:23:23:23:23 | access to field G | | Initializers.cs:26:11:26:13 | enter | Initializers.cs:28:13:28:13 | this access | | Initializers.cs:26:11:26:13 | exit (normal) | Initializers.cs:26:11:26:13 | exit | +| Initializers.cs:28:13:28:13 | access to field H | Initializers.cs:28:13:28:17 | ... = ... | | Initializers.cs:28:13:28:13 | this access | Initializers.cs:28:17:28:17 | 2 | | Initializers.cs:28:13:28:17 | ... = ... | Initializers.cs:26:11:26:13 | exit (normal) | -| Initializers.cs:28:17:28:17 | 2 | Initializers.cs:28:13:28:17 | ... = ... | +| Initializers.cs:28:17:28:17 | 2 | Initializers.cs:28:13:28:13 | access to field H | | Initializers.cs:31:9:31:11 | call to method | Initializers.cs:31:17:31:20 | call to constructor NoConstructor | | Initializers.cs:31:9:31:11 | enter Sub | Initializers.cs:31:9:31:11 | this access | | Initializers.cs:31:9:31:11 | exit Sub (normal) | Initializers.cs:31:9:31:11 | exit Sub | | Initializers.cs:31:9:31:11 | this access | Initializers.cs:31:9:31:11 | call to method | | Initializers.cs:31:17:31:20 | call to constructor NoConstructor | Initializers.cs:31:24:31:33 | {...} | | Initializers.cs:31:24:31:33 | {...} | Initializers.cs:31:26:31:31 | ...; | +| Initializers.cs:31:26:31:26 | access to field I | Initializers.cs:31:26:31:30 | ... = ... | | Initializers.cs:31:26:31:26 | this access | Initializers.cs:31:30:31:30 | 3 | | Initializers.cs:31:26:31:30 | ... = ... | Initializers.cs:31:9:31:11 | exit Sub (normal) | | Initializers.cs:31:26:31:31 | ...; | Initializers.cs:31:26:31:26 | this access | -| Initializers.cs:31:30:31:30 | 3 | Initializers.cs:31:26:31:30 | ... = ... | +| Initializers.cs:31:30:31:30 | 3 | Initializers.cs:31:26:31:26 | access to field I | | Initializers.cs:33:9:33:11 | enter Sub | Initializers.cs:33:22:33:25 | call to constructor Sub | | Initializers.cs:33:9:33:11 | exit Sub (normal) | Initializers.cs:33:9:33:11 | exit Sub | | Initializers.cs:33:22:33:25 | call to constructor Sub | Initializers.cs:33:29:33:38 | {...} | | Initializers.cs:33:29:33:38 | {...} | Initializers.cs:33:31:33:36 | ...; | +| Initializers.cs:33:31:33:31 | access to field I | Initializers.cs:33:31:33:35 | ... = ... | | Initializers.cs:33:31:33:31 | this access | Initializers.cs:33:35:33:35 | access to parameter i | | Initializers.cs:33:31:33:35 | ... = ... | Initializers.cs:33:9:33:11 | exit Sub (normal) | | Initializers.cs:33:31:33:36 | ...; | Initializers.cs:33:31:33:31 | this access | -| Initializers.cs:33:35:33:35 | access to parameter i | Initializers.cs:33:31:33:35 | ... = ... | +| Initializers.cs:33:35:33:35 | access to parameter i | Initializers.cs:33:31:33:31 | access to field I | | Initializers.cs:35:9:35:11 | call to constructor NoConstructor | Initializers.cs:35:27:35:40 | {...} | | Initializers.cs:35:9:35:11 | call to method | Initializers.cs:35:9:35:11 | call to constructor NoConstructor | | Initializers.cs:35:9:35:11 | enter Sub | Initializers.cs:35:9:35:11 | this access | | Initializers.cs:35:9:35:11 | exit Sub (normal) | Initializers.cs:35:9:35:11 | exit Sub | | Initializers.cs:35:9:35:11 | this access | Initializers.cs:35:9:35:11 | call to method | | Initializers.cs:35:27:35:40 | {...} | Initializers.cs:35:29:35:38 | ...; | +| Initializers.cs:35:29:35:29 | access to field I | Initializers.cs:35:29:35:37 | ... = ... | | Initializers.cs:35:29:35:29 | this access | Initializers.cs:35:33:35:33 | access to parameter i | | Initializers.cs:35:29:35:37 | ... = ... | Initializers.cs:35:9:35:11 | exit Sub (normal) | | Initializers.cs:35:29:35:38 | ...; | Initializers.cs:35:29:35:29 | this access | | Initializers.cs:35:33:35:33 | access to parameter i | Initializers.cs:35:37:35:37 | access to parameter j | -| Initializers.cs:35:33:35:37 | ... + ... | Initializers.cs:35:29:35:37 | ... = ... | +| Initializers.cs:35:33:35:37 | ... + ... | Initializers.cs:35:29:35:29 | access to field I | | Initializers.cs:35:37:35:37 | access to parameter j | Initializers.cs:35:33:35:37 | ... + ... | | Initializers.cs:39:7:39:23 | call to constructor Object | Initializers.cs:39:7:39:23 | {...} | | Initializers.cs:39:7:39:23 | call to method | Initializers.cs:39:7:39:23 | call to constructor Object | @@ -2034,8 +2051,9 @@ dominance | Initializers.cs:57:13:65:9 | Compound compound = ... | Initializers.cs:51:10:51:13 | exit Test (normal) | | Initializers.cs:57:24:65:9 | object creation of type Compound | Initializers.cs:59:34:59:34 | 0 | | Initializers.cs:58:9:65:9 | { ..., ... } | Initializers.cs:57:13:65:9 | Compound compound = ... | +| Initializers.cs:59:13:59:27 | access to field DictionaryField | Initializers.cs:59:13:59:76 | ... = ... | | Initializers.cs:59:13:59:76 | ... = ... | Initializers.cs:60:37:60:37 | 3 | -| Initializers.cs:59:31:59:76 | { ..., ... } | Initializers.cs:59:13:59:76 | ... = ... | +| Initializers.cs:59:31:59:76 | { ..., ... } | Initializers.cs:59:13:59:27 | access to field DictionaryField | | Initializers.cs:59:33:59:35 | access to indexer | Initializers.cs:59:33:59:44 | ... = ... | | Initializers.cs:59:33:59:44 | ... = ... | Initializers.cs:59:48:59:48 | 1 | | Initializers.cs:59:34:59:34 | 0 | Initializers.cs:59:39:59:44 | "Zero" | @@ -2067,52 +2085,62 @@ dominance | Initializers.cs:60:65:60:69 | ... + ... | Initializers.cs:60:74:60:78 | "One" | | Initializers.cs:60:69:60:69 | 1 | Initializers.cs:60:65:60:69 | ... + ... | | Initializers.cs:60:74:60:78 | "One" | Initializers.cs:60:64:60:70 | access to indexer | +| Initializers.cs:61:13:61:22 | access to field ArrayField | Initializers.cs:61:13:61:58 | ... = ... | | Initializers.cs:61:13:61:58 | ... = ... | Initializers.cs:62:30:62:30 | 0 | -| Initializers.cs:61:26:61:58 | { ..., ... } | Initializers.cs:61:13:61:58 | ... = ... | +| Initializers.cs:61:26:61:58 | { ..., ... } | Initializers.cs:61:13:61:22 | access to field ArrayField | +| Initializers.cs:61:28:61:30 | access to array element | Initializers.cs:61:28:61:39 | ... = ... | | Initializers.cs:61:28:61:39 | ... = ... | Initializers.cs:61:43:61:43 | access to parameter i | | Initializers.cs:61:29:61:29 | 0 | Initializers.cs:61:34:61:39 | "Zero" | -| Initializers.cs:61:34:61:39 | "Zero" | Initializers.cs:61:28:61:39 | ... = ... | +| Initializers.cs:61:34:61:39 | "Zero" | Initializers.cs:61:28:61:30 | access to array element | +| Initializers.cs:61:42:61:48 | access to array element | Initializers.cs:61:42:61:56 | ... = ... | | Initializers.cs:61:42:61:56 | ... = ... | Initializers.cs:61:26:61:58 | { ..., ... } | | Initializers.cs:61:43:61:43 | access to parameter i | Initializers.cs:61:47:61:47 | 1 | | Initializers.cs:61:43:61:47 | ... + ... | Initializers.cs:61:52:61:56 | "One" | | Initializers.cs:61:47:61:47 | 1 | Initializers.cs:61:43:61:47 | ... + ... | -| Initializers.cs:61:52:61:56 | "One" | Initializers.cs:61:42:61:56 | ... = ... | +| Initializers.cs:61:52:61:56 | "One" | Initializers.cs:61:42:61:48 | access to array element | +| Initializers.cs:62:13:62:23 | access to field ArrayField2 | Initializers.cs:62:13:62:60 | ... = ... | | Initializers.cs:62:13:62:60 | ... = ... | Initializers.cs:63:32:63:32 | 1 | -| Initializers.cs:62:27:62:60 | { ..., ... } | Initializers.cs:62:13:62:60 | ... = ... | +| Initializers.cs:62:27:62:60 | { ..., ... } | Initializers.cs:62:13:62:23 | access to field ArrayField2 | +| Initializers.cs:62:29:62:34 | access to array element | Initializers.cs:62:29:62:40 | ... = ... | | Initializers.cs:62:29:62:40 | ... = ... | Initializers.cs:62:44:62:44 | 1 | | Initializers.cs:62:30:62:30 | 0 | Initializers.cs:62:33:62:33 | 1 | | Initializers.cs:62:33:62:33 | 1 | Initializers.cs:62:38:62:40 | "i" | -| Initializers.cs:62:38:62:40 | "i" | Initializers.cs:62:29:62:40 | ... = ... | +| Initializers.cs:62:38:62:40 | "i" | Initializers.cs:62:29:62:34 | access to array element | +| Initializers.cs:62:43:62:52 | access to array element | Initializers.cs:62:43:62:58 | ... = ... | | Initializers.cs:62:43:62:58 | ... = ... | Initializers.cs:62:27:62:60 | { ..., ... } | | Initializers.cs:62:44:62:44 | 1 | Initializers.cs:62:47:62:47 | access to parameter i | | Initializers.cs:62:47:62:47 | access to parameter i | Initializers.cs:62:51:62:51 | 0 | | Initializers.cs:62:47:62:51 | ... + ... | Initializers.cs:62:56:62:58 | "1" | | Initializers.cs:62:51:62:51 | 0 | Initializers.cs:62:47:62:51 | ... + ... | -| Initializers.cs:62:56:62:58 | "1" | Initializers.cs:62:43:62:58 | ... = ... | +| Initializers.cs:62:56:62:58 | "1" | Initializers.cs:62:43:62:52 | access to array element | | Initializers.cs:63:13:63:25 | access to property ArrayProperty | Initializers.cs:63:13:63:60 | ... = ... | | Initializers.cs:63:13:63:60 | ... = ... | Initializers.cs:64:33:64:33 | 0 | | Initializers.cs:63:29:63:60 | { ..., ... } | Initializers.cs:63:13:63:25 | access to property ArrayProperty | +| Initializers.cs:63:31:63:33 | access to array element | Initializers.cs:63:31:63:41 | ... = ... | | Initializers.cs:63:31:63:41 | ... = ... | Initializers.cs:63:45:63:45 | access to parameter i | | Initializers.cs:63:32:63:32 | 1 | Initializers.cs:63:37:63:41 | "One" | -| Initializers.cs:63:37:63:41 | "One" | Initializers.cs:63:31:63:41 | ... = ... | +| Initializers.cs:63:37:63:41 | "One" | Initializers.cs:63:31:63:33 | access to array element | +| Initializers.cs:63:44:63:50 | access to array element | Initializers.cs:63:44:63:58 | ... = ... | | Initializers.cs:63:44:63:58 | ... = ... | Initializers.cs:63:29:63:60 | { ..., ... } | | Initializers.cs:63:45:63:45 | access to parameter i | Initializers.cs:63:49:63:49 | 2 | | Initializers.cs:63:45:63:49 | ... + ... | Initializers.cs:63:54:63:58 | "Two" | | Initializers.cs:63:49:63:49 | 2 | Initializers.cs:63:45:63:49 | ... + ... | -| Initializers.cs:63:54:63:58 | "Two" | Initializers.cs:63:44:63:58 | ... = ... | +| Initializers.cs:63:54:63:58 | "Two" | Initializers.cs:63:44:63:50 | access to array element | | Initializers.cs:64:13:64:26 | access to property ArrayProperty2 | Initializers.cs:64:13:64:63 | ... = ... | | Initializers.cs:64:13:64:63 | ... = ... | Initializers.cs:58:9:65:9 | { ..., ... } | | Initializers.cs:64:30:64:63 | { ..., ... } | Initializers.cs:64:13:64:26 | access to property ArrayProperty2 | +| Initializers.cs:64:32:64:37 | access to array element | Initializers.cs:64:32:64:43 | ... = ... | | Initializers.cs:64:32:64:43 | ... = ... | Initializers.cs:64:47:64:47 | 1 | | Initializers.cs:64:33:64:33 | 0 | Initializers.cs:64:36:64:36 | 1 | | Initializers.cs:64:36:64:36 | 1 | Initializers.cs:64:41:64:43 | "i" | -| Initializers.cs:64:41:64:43 | "i" | Initializers.cs:64:32:64:43 | ... = ... | +| Initializers.cs:64:41:64:43 | "i" | Initializers.cs:64:32:64:37 | access to array element | +| Initializers.cs:64:46:64:55 | access to array element | Initializers.cs:64:46:64:61 | ... = ... | | Initializers.cs:64:46:64:61 | ... = ... | Initializers.cs:64:30:64:63 | { ..., ... } | | Initializers.cs:64:47:64:47 | 1 | Initializers.cs:64:50:64:50 | access to parameter i | | Initializers.cs:64:50:64:50 | access to parameter i | Initializers.cs:64:54:64:54 | 0 | | Initializers.cs:64:50:64:54 | ... + ... | Initializers.cs:64:59:64:61 | "1" | | Initializers.cs:64:54:64:54 | 0 | Initializers.cs:64:50:64:54 | ... + ... | -| Initializers.cs:64:59:64:61 | "1" | Initializers.cs:64:46:64:61 | ... = ... | +| Initializers.cs:64:59:64:61 | "1" | Initializers.cs:64:46:64:55 | access to array element | | LoopUnrolling.cs:5:7:5:19 | call to constructor Object | LoopUnrolling.cs:5:7:5:19 | {...} | | LoopUnrolling.cs:5:7:5:19 | call to method | LoopUnrolling.cs:5:7:5:19 | call to constructor Object | | LoopUnrolling.cs:5:7:5:19 | enter LoopUnrolling | LoopUnrolling.cs:5:7:5:19 | this access | @@ -2339,9 +2367,10 @@ dominance | MultiImplementationA.cs:11:7:11:8 | enter | MultiImplementationA.cs:13:16:13:16 | this access | | MultiImplementationA.cs:11:7:11:8 | enter | MultiImplementationB.cs:11:16:11:16 | this access | | MultiImplementationA.cs:11:7:11:8 | exit (normal) | MultiImplementationA.cs:11:7:11:8 | exit | +| MultiImplementationA.cs:13:16:13:16 | access to field F | MultiImplementationA.cs:13:16:13:20 | ... = ... | | MultiImplementationA.cs:13:16:13:16 | this access | MultiImplementationA.cs:13:20:13:20 | 0 | | MultiImplementationA.cs:13:16:13:20 | ... = ... | MultiImplementationA.cs:24:16:24:16 | this access | -| MultiImplementationA.cs:13:20:13:20 | 0 | MultiImplementationA.cs:13:16:13:20 | ... = ... | +| MultiImplementationA.cs:13:20:13:20 | 0 | MultiImplementationA.cs:13:16:13:16 | access to field F | | MultiImplementationA.cs:14:31:14:31 | access to parameter i | MultiImplementationA.cs:14:31:14:31 | exit get_Item (normal) | | MultiImplementationA.cs:14:31:14:31 | enter get_Item | MultiImplementationA.cs:14:31:14:31 | access to parameter i | | MultiImplementationA.cs:14:31:14:31 | enter get_Item | MultiImplementationB.cs:12:37:12:40 | null | @@ -2366,10 +2395,11 @@ dominance | MultiImplementationA.cs:20:12:20:13 | enter C2 | MultiImplementationB.cs:18:12:18:13 | this access | | MultiImplementationA.cs:20:12:20:13 | this access | MultiImplementationA.cs:20:12:20:13 | call to method | | MultiImplementationA.cs:20:22:20:31 | {...} | MultiImplementationA.cs:20:24:20:29 | ...; | +| MultiImplementationA.cs:20:24:20:24 | access to field F | MultiImplementationA.cs:20:24:20:28 | ... = ... | | MultiImplementationA.cs:20:24:20:24 | this access | MultiImplementationA.cs:20:28:20:28 | access to parameter i | | MultiImplementationA.cs:20:24:20:28 | ... = ... | MultiImplementationA.cs:20:12:20:13 | exit C2 (normal) | | MultiImplementationA.cs:20:24:20:29 | ...; | MultiImplementationA.cs:20:24:20:24 | this access | -| MultiImplementationA.cs:20:28:20:28 | access to parameter i | MultiImplementationA.cs:20:24:20:28 | ... = ... | +| MultiImplementationA.cs:20:28:20:28 | access to parameter i | MultiImplementationA.cs:20:24:20:24 | access to field F | | MultiImplementationA.cs:21:12:21:13 | enter C2 | MultiImplementationA.cs:21:24:21:24 | 0 | | MultiImplementationA.cs:21:12:21:13 | enter C2 | MultiImplementationB.cs:19:24:19:24 | 1 | | MultiImplementationA.cs:21:12:21:13 | exit C2 (normal) | MultiImplementationA.cs:21:12:21:13 | exit C2 | @@ -2419,9 +2449,10 @@ dominance | MultiImplementationB.cs:4:34:4:34 | 1 | MultiImplementationB.cs:4:27:4:35 | return ...; | | MultiImplementationB.cs:4:43:4:45 | {...} | MultiImplementationA.cs:7:41:7:43 | exit set_P2 (normal) | | MultiImplementationB.cs:5:23:5:23 | 2 | MultiImplementationA.cs:8:16:8:16 | exit M (normal) | +| MultiImplementationB.cs:11:16:11:16 | access to field F | MultiImplementationB.cs:11:16:11:20 | ... = ... | | MultiImplementationB.cs:11:16:11:16 | this access | MultiImplementationB.cs:11:20:11:20 | 1 | | MultiImplementationB.cs:11:16:11:20 | ... = ... | MultiImplementationB.cs:22:16:22:16 | this access | -| MultiImplementationB.cs:11:20:11:20 | 1 | MultiImplementationB.cs:11:16:11:20 | ... = ... | +| MultiImplementationB.cs:11:20:11:20 | 1 | MultiImplementationB.cs:11:16:11:16 | access to field F | | MultiImplementationB.cs:12:31:12:40 | throw ... | MultiImplementationA.cs:14:31:14:31 | exit get_Item (abnormal) | | MultiImplementationB.cs:12:37:12:40 | null | MultiImplementationB.cs:12:31:12:40 | throw ... | | MultiImplementationB.cs:13:40:13:54 | {...} | MultiImplementationB.cs:13:48:13:51 | null | @@ -2525,9 +2556,10 @@ dominance | PartialImplementationA.cs:3:12:3:18 | exit Partial (normal) | PartialImplementationA.cs:3:12:3:18 | exit Partial | | PartialImplementationA.cs:3:12:3:18 | this access | PartialImplementationA.cs:3:12:3:18 | call to method | | PartialImplementationA.cs:3:27:3:29 | {...} | PartialImplementationA.cs:3:12:3:18 | exit Partial (normal) | +| PartialImplementationB.cs:3:16:3:16 | access to field F | PartialImplementationB.cs:3:16:3:20 | ... = ... | | PartialImplementationB.cs:3:16:3:16 | this access | PartialImplementationB.cs:3:20:3:20 | 0 | | PartialImplementationB.cs:3:16:3:20 | ... = ... | PartialImplementationB.cs:5:16:5:16 | this access | -| PartialImplementationB.cs:3:20:3:20 | 0 | PartialImplementationB.cs:3:16:3:20 | ... = ... | +| PartialImplementationB.cs:3:20:3:20 | 0 | PartialImplementationB.cs:3:16:3:16 | access to field F | | PartialImplementationB.cs:4:12:4:18 | call to constructor Object | PartialImplementationB.cs:4:22:4:24 | {...} | | PartialImplementationB.cs:4:12:4:18 | call to method | PartialImplementationB.cs:4:12:4:18 | call to constructor Object | | PartialImplementationB.cs:4:12:4:18 | enter Partial | PartialImplementationB.cs:4:12:4:18 | this access | @@ -3462,20 +3494,22 @@ dominance | cflow.cs:127:62:127:64 | enter set_Prop | cflow.cs:127:66:127:83 | {...} | | cflow.cs:127:62:127:64 | exit set_Prop (normal) | cflow.cs:127:62:127:64 | exit set_Prop | | cflow.cs:127:66:127:83 | {...} | cflow.cs:127:68:127:81 | ...; | +| cflow.cs:127:68:127:72 | access to field Field | cflow.cs:127:68:127:80 | ... = ... | | cflow.cs:127:68:127:72 | this access | cflow.cs:127:76:127:80 | access to parameter value | | cflow.cs:127:68:127:80 | ... = ... | cflow.cs:127:62:127:64 | exit set_Prop (normal) | | cflow.cs:127:68:127:81 | ...; | cflow.cs:127:68:127:72 | this access | -| cflow.cs:127:76:127:80 | access to parameter value | cflow.cs:127:68:127:80 | ... = ... | +| cflow.cs:127:76:127:80 | access to parameter value | cflow.cs:127:68:127:72 | access to field Field | | cflow.cs:129:5:129:15 | call to constructor Object | cflow.cs:130:5:132:5 | {...} | | cflow.cs:129:5:129:15 | call to method | cflow.cs:129:5:129:15 | call to constructor Object | | cflow.cs:129:5:129:15 | enter ControlFlow | cflow.cs:129:5:129:15 | this access | | cflow.cs:129:5:129:15 | exit ControlFlow (normal) | cflow.cs:129:5:129:15 | exit ControlFlow | | cflow.cs:129:5:129:15 | this access | cflow.cs:129:5:129:15 | call to method | | cflow.cs:130:5:132:5 | {...} | cflow.cs:131:9:131:18 | ...; | +| cflow.cs:131:9:131:13 | access to field Field | cflow.cs:131:9:131:17 | ... = ... | | cflow.cs:131:9:131:13 | this access | cflow.cs:131:17:131:17 | access to parameter s | | cflow.cs:131:9:131:17 | ... = ... | cflow.cs:129:5:129:15 | exit ControlFlow (normal) | | cflow.cs:131:9:131:18 | ...; | cflow.cs:131:9:131:13 | this access | -| cflow.cs:131:17:131:17 | access to parameter s | cflow.cs:131:9:131:17 | ... = ... | +| cflow.cs:131:17:131:17 | access to parameter s | cflow.cs:131:9:131:13 | access to field Field | | cflow.cs:134:5:134:15 | enter ControlFlow | cflow.cs:134:31:134:31 | access to parameter i | | cflow.cs:134:5:134:15 | exit ControlFlow (normal) | cflow.cs:134:5:134:15 | exit ControlFlow | | cflow.cs:134:26:134:29 | call to constructor ControlFlow | cflow.cs:134:39:134:41 | {...} | @@ -3688,10 +3722,11 @@ dominance | cflow.cs:209:5:222:5 | {...} | cflow.cs:210:9:221:36 | do ... while (...); | | cflow.cs:210:9:221:36 | do ... while (...); | cflow.cs:211:9:221:9 | {...} | | cflow.cs:211:9:221:9 | {...} | cflow.cs:212:13:212:25 | ...; | +| cflow.cs:212:13:212:17 | access to field Field | cflow.cs:212:13:212:24 | ... = ... | | cflow.cs:212:13:212:17 | access to field Field | cflow.cs:212:22:212:24 | "a" | | cflow.cs:212:13:212:17 | this access | cflow.cs:212:13:212:17 | access to field Field | | cflow.cs:212:13:212:17 | this access | cflow.cs:212:13:212:17 | this access | -| cflow.cs:212:13:212:24 | ... + ... | cflow.cs:212:13:212:24 | ... = ... | +| cflow.cs:212:13:212:24 | ... + ... | cflow.cs:212:13:212:17 | access to field Field | | cflow.cs:212:13:212:24 | ... = ... | cflow.cs:213:13:216:13 | if (...) ... | | cflow.cs:212:13:212:25 | ...; | cflow.cs:212:13:212:17 | this access | | cflow.cs:212:22:212:24 | "a" | cflow.cs:212:13:212:24 | ... + ... | @@ -3724,10 +3759,11 @@ dominance | cflow.cs:226:57:226:59 | "a" | cflow.cs:226:62:226:63 | 10 | | cflow.cs:226:62:226:63 | 10 | cflow.cs:226:27:226:64 | call to method Repeat | | cflow.cs:227:9:237:9 | {...} | cflow.cs:228:13:228:23 | ...; | +| cflow.cs:228:13:228:17 | access to field Field | cflow.cs:228:13:228:22 | ... = ... | | cflow.cs:228:13:228:17 | access to field Field | cflow.cs:228:22:228:22 | access to local variable x | | cflow.cs:228:13:228:17 | this access | cflow.cs:228:13:228:17 | access to field Field | | cflow.cs:228:13:228:17 | this access | cflow.cs:228:13:228:17 | this access | -| cflow.cs:228:13:228:22 | ... + ... | cflow.cs:228:13:228:22 | ... = ... | +| cflow.cs:228:13:228:22 | ... + ... | cflow.cs:228:13:228:17 | access to field Field | | cflow.cs:228:13:228:22 | ... = ... | cflow.cs:229:13:232:13 | if (...) ... | | cflow.cs:228:13:228:23 | ...; | cflow.cs:228:13:228:17 | this access | | cflow.cs:228:22:228:22 | access to local variable x | cflow.cs:228:13:228:22 | ... + ... | @@ -3899,7 +3935,8 @@ postDominance | AccessorCalls.cs:10:10:10:11 | exit M1 (normal) | AccessorCalls.cs:16:9:16:23 | ... -= ... | | AccessorCalls.cs:11:5:17:5 | {...} | AccessorCalls.cs:10:10:10:11 | enter M1 | | AccessorCalls.cs:12:9:12:12 | this access | AccessorCalls.cs:12:9:12:32 | ...; | -| AccessorCalls.cs:12:9:12:31 | ... = ... | AccessorCalls.cs:12:22:12:31 | access to field Field | +| AccessorCalls.cs:12:9:12:18 | access to field Field | AccessorCalls.cs:12:22:12:31 | access to field Field | +| AccessorCalls.cs:12:9:12:31 | ... = ... | AccessorCalls.cs:12:9:12:18 | access to field Field | | AccessorCalls.cs:12:9:12:32 | ...; | AccessorCalls.cs:11:5:17:5 | {...} | | AccessorCalls.cs:12:22:12:25 | this access | AccessorCalls.cs:12:9:12:12 | this access | | AccessorCalls.cs:12:22:12:31 | access to field Field | AccessorCalls.cs:12:22:12:25 | this access | @@ -3932,7 +3969,8 @@ postDominance | AccessorCalls.cs:20:5:26:5 | {...} | AccessorCalls.cs:19:10:19:11 | enter M2 | | AccessorCalls.cs:21:9:21:12 | this access | AccessorCalls.cs:21:9:21:36 | ...; | | AccessorCalls.cs:21:9:21:14 | access to field x | AccessorCalls.cs:21:9:21:12 | this access | -| AccessorCalls.cs:21:9:21:35 | ... = ... | AccessorCalls.cs:21:24:21:35 | access to field Field | +| AccessorCalls.cs:21:9:21:20 | access to field Field | AccessorCalls.cs:21:24:21:35 | access to field Field | +| AccessorCalls.cs:21:9:21:35 | ... = ... | AccessorCalls.cs:21:9:21:20 | access to field Field | | AccessorCalls.cs:21:9:21:36 | ...; | AccessorCalls.cs:20:5:26:5 | {...} | | AccessorCalls.cs:21:24:21:27 | this access | AccessorCalls.cs:21:9:21:14 | access to field x | | AccessorCalls.cs:21:24:21:29 | access to field x | AccessorCalls.cs:21:24:21:27 | this access | @@ -4008,8 +4046,9 @@ postDominance | AccessorCalls.cs:44:9:44:12 | this access | AccessorCalls.cs:44:9:44:12 | this access | | AccessorCalls.cs:44:9:44:12 | this access | AccessorCalls.cs:44:9:44:33 | ...; | | AccessorCalls.cs:44:9:44:18 | access to field Field | AccessorCalls.cs:44:9:44:12 | this access | +| AccessorCalls.cs:44:9:44:18 | access to field Field | AccessorCalls.cs:44:9:44:32 | ... + ... | | AccessorCalls.cs:44:9:44:32 | ... + ... | AccessorCalls.cs:44:23:44:32 | access to field Field | -| AccessorCalls.cs:44:9:44:32 | ... = ... | AccessorCalls.cs:44:9:44:32 | ... + ... | +| AccessorCalls.cs:44:9:44:32 | ... = ... | AccessorCalls.cs:44:9:44:18 | access to field Field | | AccessorCalls.cs:44:9:44:33 | ...; | AccessorCalls.cs:43:5:47:5 | {...} | | AccessorCalls.cs:44:23:44:26 | this access | AccessorCalls.cs:44:9:44:18 | access to field Field | | AccessorCalls.cs:44:23:44:32 | access to field Field | AccessorCalls.cs:44:23:44:26 | this access | @@ -4042,8 +4081,9 @@ postDominance | AccessorCalls.cs:51:9:51:14 | access to field x | AccessorCalls.cs:51:9:51:12 | this access | | AccessorCalls.cs:51:9:51:14 | access to field x | AccessorCalls.cs:51:9:51:12 | this access | | AccessorCalls.cs:51:9:51:20 | access to field Field | AccessorCalls.cs:51:9:51:14 | access to field x | +| AccessorCalls.cs:51:9:51:20 | access to field Field | AccessorCalls.cs:51:9:51:36 | ... + ... | | AccessorCalls.cs:51:9:51:36 | ... + ... | AccessorCalls.cs:51:25:51:36 | access to field Field | -| AccessorCalls.cs:51:9:51:36 | ... = ... | AccessorCalls.cs:51:9:51:36 | ... + ... | +| AccessorCalls.cs:51:9:51:36 | ... = ... | AccessorCalls.cs:51:9:51:20 | access to field Field | | AccessorCalls.cs:51:9:51:37 | ...; | AccessorCalls.cs:50:5:54:5 | {...} | | AccessorCalls.cs:51:25:51:28 | this access | AccessorCalls.cs:51:9:51:20 | access to field Field | | AccessorCalls.cs:51:25:51:30 | access to field x | AccessorCalls.cs:51:25:51:28 | this access | @@ -4082,8 +4122,9 @@ postDominance | AccessorCalls.cs:58:9:58:85 | ... = ... | AccessorCalls.cs:58:37:58:43 | access to indexer | | AccessorCalls.cs:58:9:58:86 | ...; | AccessorCalls.cs:57:5:59:5 | {...} | | AccessorCalls.cs:58:10:58:13 | this access | AccessorCalls.cs:58:9:58:86 | ...; | +| AccessorCalls.cs:58:10:58:19 | access to field Field | AccessorCalls.cs:58:49:58:85 | (..., ...) | | AccessorCalls.cs:58:22:58:25 | this access | AccessorCalls.cs:58:10:58:13 | this access | -| AccessorCalls.cs:58:22:58:30 | access to property Prop | AccessorCalls.cs:58:49:58:85 | (..., ...) | +| AccessorCalls.cs:58:22:58:30 | access to property Prop | AccessorCalls.cs:58:10:58:19 | access to field Field | | AccessorCalls.cs:58:33:58:44 | (..., ...) | AccessorCalls.cs:58:42:58:42 | 0 | | AccessorCalls.cs:58:37:58:40 | this access | AccessorCalls.cs:58:22:58:25 | this access | | AccessorCalls.cs:58:37:58:43 | access to indexer | AccessorCalls.cs:58:22:58:30 | access to property Prop | @@ -4106,9 +4147,10 @@ postDominance | AccessorCalls.cs:63:9:63:98 | ...; | AccessorCalls.cs:62:5:64:5 | {...} | | AccessorCalls.cs:63:10:63:13 | this access | AccessorCalls.cs:63:9:63:98 | ...; | | AccessorCalls.cs:63:10:63:15 | access to field x | AccessorCalls.cs:63:10:63:13 | this access | +| AccessorCalls.cs:63:10:63:21 | access to field Field | AccessorCalls.cs:63:55:63:97 | (..., ...) | | AccessorCalls.cs:63:24:63:27 | this access | AccessorCalls.cs:63:10:63:15 | access to field x | | AccessorCalls.cs:63:24:63:29 | access to field x | AccessorCalls.cs:63:24:63:27 | this access | -| AccessorCalls.cs:63:24:63:34 | access to property Prop | AccessorCalls.cs:63:55:63:97 | (..., ...) | +| AccessorCalls.cs:63:24:63:34 | access to property Prop | AccessorCalls.cs:63:10:63:21 | access to field Field | | AccessorCalls.cs:63:37:63:50 | (..., ...) | AccessorCalls.cs:63:48:63:48 | 0 | | AccessorCalls.cs:63:41:63:44 | this access | AccessorCalls.cs:63:24:63:29 | access to field x | | AccessorCalls.cs:63:41:63:46 | access to field x | AccessorCalls.cs:63:41:63:44 | this access | @@ -5594,11 +5636,13 @@ postDominance | Finally.cs:209:21:209:22 | access to parameter b3 | Finally.cs:209:17:209:47 | if (...) ... | | Finally.cs:209:25:209:47 | throw ...; | Finally.cs:209:31:209:46 | object creation of type ExceptionC | | Finally.cs:211:13:211:16 | this access | Finally.cs:211:13:211:29 | ...; | -| Finally.cs:211:13:211:28 | ... = ... | Finally.cs:211:26:211:28 | "0" | +| Finally.cs:211:13:211:22 | access to field Field | Finally.cs:211:26:211:28 | "0" | +| Finally.cs:211:13:211:28 | ... = ... | Finally.cs:211:13:211:22 | access to field Field | | Finally.cs:211:13:211:29 | ...; | Finally.cs:209:21:209:22 | access to parameter b3 | | Finally.cs:211:26:211:28 | "0" | Finally.cs:211:13:211:16 | this access | | Finally.cs:213:9:213:12 | this access | Finally.cs:213:9:213:25 | ...; | -| Finally.cs:213:9:213:24 | ... = ... | Finally.cs:213:22:213:24 | "1" | +| Finally.cs:213:9:213:18 | access to field Field | Finally.cs:213:22:213:24 | "1" | +| Finally.cs:213:9:213:24 | ... = ... | Finally.cs:213:9:213:18 | access to field Field | | Finally.cs:213:9:213:25 | ...; | Finally.cs:211:13:211:28 | ... = ... | | Finally.cs:213:22:213:24 | "1" | Finally.cs:213:9:213:12 | this access | | Finally.cs:216:10:216:12 | exit M11 | Finally.cs:216:10:216:12 | exit M11 (normal) | @@ -5729,8 +5773,9 @@ postDominance | Initializers.cs:3:7:3:18 | exit Initializers | Initializers.cs:3:7:3:18 | exit Initializers (normal) | | Initializers.cs:3:7:3:18 | exit Initializers (normal) | Initializers.cs:3:7:3:18 | {...} | | Initializers.cs:3:7:3:18 | {...} | Initializers.cs:3:7:3:18 | enter Initializers | +| Initializers.cs:5:9:5:9 | access to field F | Initializers.cs:5:13:5:17 | ... + ... | | Initializers.cs:5:9:5:9 | this access | Initializers.cs:3:7:3:18 | enter | -| Initializers.cs:5:9:5:17 | ... = ... | Initializers.cs:5:13:5:17 | ... + ... | +| Initializers.cs:5:9:5:17 | ... = ... | Initializers.cs:5:9:5:9 | access to field F | | Initializers.cs:5:13:5:13 | access to field H | Initializers.cs:5:9:5:9 | this access | | Initializers.cs:5:13:5:17 | ... + ... | Initializers.cs:5:17:5:17 | 1 | | Initializers.cs:5:17:5:17 | 1 | Initializers.cs:5:13:5:13 | access to field H | @@ -5760,7 +5805,8 @@ postDominance | Initializers.cs:14:17:14:53 | object creation of type Initializers | Initializers.cs:14:34:14:35 | "" | | Initializers.cs:14:34:14:35 | "" | Initializers.cs:14:9:14:54 | ... ...; | | Initializers.cs:14:38:14:53 | { ..., ... } | Initializers.cs:14:47:14:51 | ... = ... | -| Initializers.cs:14:40:14:44 | ... = ... | Initializers.cs:14:44:14:44 | 0 | +| Initializers.cs:14:40:14:40 | access to field F | Initializers.cs:14:44:14:44 | 0 | +| Initializers.cs:14:40:14:44 | ... = ... | Initializers.cs:14:40:14:40 | access to field F | | Initializers.cs:14:44:14:44 | 0 | Initializers.cs:14:17:14:53 | object creation of type Initializers | | Initializers.cs:14:47:14:47 | access to property G | Initializers.cs:14:51:14:51 | 1 | | Initializers.cs:14:47:14:51 | ... = ... | Initializers.cs:14:47:14:47 | access to property G | @@ -5773,9 +5819,10 @@ postDominance | Initializers.cs:15:39:15:39 | access to local variable i | Initializers.cs:15:18:15:63 | array creation of type Initializers[] | | Initializers.cs:15:42:15:61 | object creation of type Initializers | Initializers.cs:15:59:15:60 | "" | | Initializers.cs:15:59:15:60 | "" | Initializers.cs:15:39:15:39 | access to local variable i | +| Initializers.cs:18:16:18:16 | access to field H | Initializers.cs:18:20:18:20 | 1 | | Initializers.cs:18:16:18:16 | exit H | Initializers.cs:18:16:18:16 | exit H (normal) | | Initializers.cs:18:16:18:16 | exit H (normal) | Initializers.cs:18:16:18:20 | ... = ... | -| Initializers.cs:18:16:18:20 | ... = ... | Initializers.cs:18:20:18:20 | 1 | +| Initializers.cs:18:16:18:20 | ... = ... | Initializers.cs:18:16:18:16 | access to field H | | Initializers.cs:18:20:18:20 | 1 | Initializers.cs:18:16:18:16 | enter H | | Initializers.cs:20:11:20:23 | call to constructor Object | Initializers.cs:20:11:20:23 | call to method | | Initializers.cs:20:11:20:23 | call to method | Initializers.cs:20:11:20:23 | this access | @@ -5785,16 +5832,19 @@ postDominance | Initializers.cs:20:11:20:23 | exit NoConstructor (normal) | Initializers.cs:20:11:20:23 | {...} | | Initializers.cs:20:11:20:23 | this access | Initializers.cs:20:11:20:23 | enter NoConstructor | | Initializers.cs:20:11:20:23 | {...} | Initializers.cs:20:11:20:23 | call to constructor Object | +| Initializers.cs:22:23:22:23 | access to field F | Initializers.cs:22:27:22:27 | 0 | | Initializers.cs:22:23:22:23 | this access | Initializers.cs:20:11:20:23 | enter | -| Initializers.cs:22:23:22:27 | ... = ... | Initializers.cs:22:27:22:27 | 0 | +| Initializers.cs:22:23:22:27 | ... = ... | Initializers.cs:22:23:22:23 | access to field F | | Initializers.cs:22:27:22:27 | 0 | Initializers.cs:22:23:22:23 | this access | +| Initializers.cs:23:23:23:23 | access to field G | Initializers.cs:23:27:23:27 | 1 | | Initializers.cs:23:23:23:23 | this access | Initializers.cs:22:23:22:27 | ... = ... | -| Initializers.cs:23:23:23:27 | ... = ... | Initializers.cs:23:27:23:27 | 1 | +| Initializers.cs:23:23:23:27 | ... = ... | Initializers.cs:23:23:23:23 | access to field G | | Initializers.cs:23:27:23:27 | 1 | Initializers.cs:23:23:23:23 | this access | | Initializers.cs:26:11:26:13 | exit | Initializers.cs:26:11:26:13 | exit (normal) | | Initializers.cs:26:11:26:13 | exit (normal) | Initializers.cs:28:13:28:17 | ... = ... | +| Initializers.cs:28:13:28:13 | access to field H | Initializers.cs:28:17:28:17 | 2 | | Initializers.cs:28:13:28:13 | this access | Initializers.cs:26:11:26:13 | enter | -| Initializers.cs:28:13:28:17 | ... = ... | Initializers.cs:28:17:28:17 | 2 | +| Initializers.cs:28:13:28:17 | ... = ... | Initializers.cs:28:13:28:13 | access to field H | | Initializers.cs:28:17:28:17 | 2 | Initializers.cs:28:13:28:13 | this access | | Initializers.cs:31:9:31:11 | call to method | Initializers.cs:31:9:31:11 | this access | | Initializers.cs:31:9:31:11 | exit Sub | Initializers.cs:31:9:31:11 | exit Sub (normal) | @@ -5802,16 +5852,18 @@ postDominance | Initializers.cs:31:9:31:11 | this access | Initializers.cs:31:9:31:11 | enter Sub | | Initializers.cs:31:17:31:20 | call to constructor NoConstructor | Initializers.cs:31:9:31:11 | call to method | | Initializers.cs:31:24:31:33 | {...} | Initializers.cs:31:17:31:20 | call to constructor NoConstructor | +| Initializers.cs:31:26:31:26 | access to field I | Initializers.cs:31:30:31:30 | 3 | | Initializers.cs:31:26:31:26 | this access | Initializers.cs:31:26:31:31 | ...; | -| Initializers.cs:31:26:31:30 | ... = ... | Initializers.cs:31:30:31:30 | 3 | +| Initializers.cs:31:26:31:30 | ... = ... | Initializers.cs:31:26:31:26 | access to field I | | Initializers.cs:31:26:31:31 | ...; | Initializers.cs:31:24:31:33 | {...} | | Initializers.cs:31:30:31:30 | 3 | Initializers.cs:31:26:31:26 | this access | | Initializers.cs:33:9:33:11 | exit Sub | Initializers.cs:33:9:33:11 | exit Sub (normal) | | Initializers.cs:33:9:33:11 | exit Sub (normal) | Initializers.cs:33:31:33:35 | ... = ... | | Initializers.cs:33:22:33:25 | call to constructor Sub | Initializers.cs:33:9:33:11 | enter Sub | | Initializers.cs:33:29:33:38 | {...} | Initializers.cs:33:22:33:25 | call to constructor Sub | +| Initializers.cs:33:31:33:31 | access to field I | Initializers.cs:33:35:33:35 | access to parameter i | | Initializers.cs:33:31:33:31 | this access | Initializers.cs:33:31:33:36 | ...; | -| Initializers.cs:33:31:33:35 | ... = ... | Initializers.cs:33:35:33:35 | access to parameter i | +| Initializers.cs:33:31:33:35 | ... = ... | Initializers.cs:33:31:33:31 | access to field I | | Initializers.cs:33:31:33:36 | ...; | Initializers.cs:33:29:33:38 | {...} | | Initializers.cs:33:35:33:35 | access to parameter i | Initializers.cs:33:31:33:31 | this access | | Initializers.cs:35:9:35:11 | call to constructor NoConstructor | Initializers.cs:35:9:35:11 | call to method | @@ -5820,8 +5872,9 @@ postDominance | Initializers.cs:35:9:35:11 | exit Sub (normal) | Initializers.cs:35:29:35:37 | ... = ... | | Initializers.cs:35:9:35:11 | this access | Initializers.cs:35:9:35:11 | enter Sub | | Initializers.cs:35:27:35:40 | {...} | Initializers.cs:35:9:35:11 | call to constructor NoConstructor | +| Initializers.cs:35:29:35:29 | access to field I | Initializers.cs:35:33:35:37 | ... + ... | | Initializers.cs:35:29:35:29 | this access | Initializers.cs:35:29:35:38 | ...; | -| Initializers.cs:35:29:35:37 | ... = ... | Initializers.cs:35:33:35:37 | ... + ... | +| Initializers.cs:35:29:35:37 | ... = ... | Initializers.cs:35:29:35:29 | access to field I | | Initializers.cs:35:29:35:38 | ...; | Initializers.cs:35:27:35:40 | {...} | | Initializers.cs:35:33:35:33 | access to parameter i | Initializers.cs:35:29:35:29 | this access | | Initializers.cs:35:33:35:37 | ... + ... | Initializers.cs:35:37:35:37 | access to parameter j | @@ -5863,7 +5916,8 @@ postDominance | Initializers.cs:57:13:65:9 | Compound compound = ... | Initializers.cs:58:9:65:9 | { ..., ... } | | Initializers.cs:57:24:65:9 | object creation of type Compound | Initializers.cs:57:9:65:10 | ... ...; | | Initializers.cs:58:9:65:9 | { ..., ... } | Initializers.cs:64:13:64:63 | ... = ... | -| Initializers.cs:59:13:59:76 | ... = ... | Initializers.cs:59:31:59:76 | { ..., ... } | +| Initializers.cs:59:13:59:27 | access to field DictionaryField | Initializers.cs:59:31:59:76 | { ..., ... } | +| Initializers.cs:59:13:59:76 | ... = ... | Initializers.cs:59:13:59:27 | access to field DictionaryField | | Initializers.cs:59:31:59:76 | { ..., ... } | Initializers.cs:59:60:59:74 | ... = ... | | Initializers.cs:59:33:59:35 | access to indexer | Initializers.cs:59:39:59:44 | "Zero" | | Initializers.cs:59:33:59:44 | ... = ... | Initializers.cs:59:33:59:35 | access to indexer | @@ -5896,23 +5950,29 @@ postDominance | Initializers.cs:60:65:60:69 | ... + ... | Initializers.cs:60:69:60:69 | 1 | | Initializers.cs:60:69:60:69 | 1 | Initializers.cs:60:65:60:65 | access to parameter i | | Initializers.cs:60:74:60:78 | "One" | Initializers.cs:60:65:60:69 | ... + ... | -| Initializers.cs:61:13:61:58 | ... = ... | Initializers.cs:61:26:61:58 | { ..., ... } | +| Initializers.cs:61:13:61:22 | access to field ArrayField | Initializers.cs:61:26:61:58 | { ..., ... } | +| Initializers.cs:61:13:61:58 | ... = ... | Initializers.cs:61:13:61:22 | access to field ArrayField | | Initializers.cs:61:26:61:58 | { ..., ... } | Initializers.cs:61:42:61:56 | ... = ... | -| Initializers.cs:61:28:61:39 | ... = ... | Initializers.cs:61:34:61:39 | "Zero" | +| Initializers.cs:61:28:61:30 | access to array element | Initializers.cs:61:34:61:39 | "Zero" | +| Initializers.cs:61:28:61:39 | ... = ... | Initializers.cs:61:28:61:30 | access to array element | | Initializers.cs:61:29:61:29 | 0 | Initializers.cs:60:13:60:80 | ... = ... | | Initializers.cs:61:34:61:39 | "Zero" | Initializers.cs:61:29:61:29 | 0 | -| Initializers.cs:61:42:61:56 | ... = ... | Initializers.cs:61:52:61:56 | "One" | +| Initializers.cs:61:42:61:48 | access to array element | Initializers.cs:61:52:61:56 | "One" | +| Initializers.cs:61:42:61:56 | ... = ... | Initializers.cs:61:42:61:48 | access to array element | | Initializers.cs:61:43:61:43 | access to parameter i | Initializers.cs:61:28:61:39 | ... = ... | | Initializers.cs:61:43:61:47 | ... + ... | Initializers.cs:61:47:61:47 | 1 | | Initializers.cs:61:47:61:47 | 1 | Initializers.cs:61:43:61:43 | access to parameter i | | Initializers.cs:61:52:61:56 | "One" | Initializers.cs:61:43:61:47 | ... + ... | -| Initializers.cs:62:13:62:60 | ... = ... | Initializers.cs:62:27:62:60 | { ..., ... } | +| Initializers.cs:62:13:62:23 | access to field ArrayField2 | Initializers.cs:62:27:62:60 | { ..., ... } | +| Initializers.cs:62:13:62:60 | ... = ... | Initializers.cs:62:13:62:23 | access to field ArrayField2 | | Initializers.cs:62:27:62:60 | { ..., ... } | Initializers.cs:62:43:62:58 | ... = ... | -| Initializers.cs:62:29:62:40 | ... = ... | Initializers.cs:62:38:62:40 | "i" | +| Initializers.cs:62:29:62:34 | access to array element | Initializers.cs:62:38:62:40 | "i" | +| Initializers.cs:62:29:62:40 | ... = ... | Initializers.cs:62:29:62:34 | access to array element | | Initializers.cs:62:30:62:30 | 0 | Initializers.cs:61:13:61:58 | ... = ... | | Initializers.cs:62:33:62:33 | 1 | Initializers.cs:62:30:62:30 | 0 | | Initializers.cs:62:38:62:40 | "i" | Initializers.cs:62:33:62:33 | 1 | -| Initializers.cs:62:43:62:58 | ... = ... | Initializers.cs:62:56:62:58 | "1" | +| Initializers.cs:62:43:62:52 | access to array element | Initializers.cs:62:56:62:58 | "1" | +| Initializers.cs:62:43:62:58 | ... = ... | Initializers.cs:62:43:62:52 | access to array element | | Initializers.cs:62:44:62:44 | 1 | Initializers.cs:62:29:62:40 | ... = ... | | Initializers.cs:62:47:62:47 | access to parameter i | Initializers.cs:62:44:62:44 | 1 | | Initializers.cs:62:47:62:51 | ... + ... | Initializers.cs:62:51:62:51 | 0 | @@ -5921,10 +5981,12 @@ postDominance | Initializers.cs:63:13:63:25 | access to property ArrayProperty | Initializers.cs:63:29:63:60 | { ..., ... } | | Initializers.cs:63:13:63:60 | ... = ... | Initializers.cs:63:13:63:25 | access to property ArrayProperty | | Initializers.cs:63:29:63:60 | { ..., ... } | Initializers.cs:63:44:63:58 | ... = ... | -| Initializers.cs:63:31:63:41 | ... = ... | Initializers.cs:63:37:63:41 | "One" | +| Initializers.cs:63:31:63:33 | access to array element | Initializers.cs:63:37:63:41 | "One" | +| Initializers.cs:63:31:63:41 | ... = ... | Initializers.cs:63:31:63:33 | access to array element | | Initializers.cs:63:32:63:32 | 1 | Initializers.cs:62:13:62:60 | ... = ... | | Initializers.cs:63:37:63:41 | "One" | Initializers.cs:63:32:63:32 | 1 | -| Initializers.cs:63:44:63:58 | ... = ... | Initializers.cs:63:54:63:58 | "Two" | +| Initializers.cs:63:44:63:50 | access to array element | Initializers.cs:63:54:63:58 | "Two" | +| Initializers.cs:63:44:63:58 | ... = ... | Initializers.cs:63:44:63:50 | access to array element | | Initializers.cs:63:45:63:45 | access to parameter i | Initializers.cs:63:31:63:41 | ... = ... | | Initializers.cs:63:45:63:49 | ... + ... | Initializers.cs:63:49:63:49 | 2 | | Initializers.cs:63:49:63:49 | 2 | Initializers.cs:63:45:63:45 | access to parameter i | @@ -5932,11 +5994,13 @@ postDominance | Initializers.cs:64:13:64:26 | access to property ArrayProperty2 | Initializers.cs:64:30:64:63 | { ..., ... } | | Initializers.cs:64:13:64:63 | ... = ... | Initializers.cs:64:13:64:26 | access to property ArrayProperty2 | | Initializers.cs:64:30:64:63 | { ..., ... } | Initializers.cs:64:46:64:61 | ... = ... | -| Initializers.cs:64:32:64:43 | ... = ... | Initializers.cs:64:41:64:43 | "i" | +| Initializers.cs:64:32:64:37 | access to array element | Initializers.cs:64:41:64:43 | "i" | +| Initializers.cs:64:32:64:43 | ... = ... | Initializers.cs:64:32:64:37 | access to array element | | Initializers.cs:64:33:64:33 | 0 | Initializers.cs:63:13:63:60 | ... = ... | | Initializers.cs:64:36:64:36 | 1 | Initializers.cs:64:33:64:33 | 0 | | Initializers.cs:64:41:64:43 | "i" | Initializers.cs:64:36:64:36 | 1 | -| Initializers.cs:64:46:64:61 | ... = ... | Initializers.cs:64:59:64:61 | "1" | +| Initializers.cs:64:46:64:55 | access to array element | Initializers.cs:64:59:64:61 | "1" | +| Initializers.cs:64:46:64:61 | ... = ... | Initializers.cs:64:46:64:55 | access to array element | | Initializers.cs:64:47:64:47 | 1 | Initializers.cs:64:32:64:43 | ... = ... | | Initializers.cs:64:50:64:50 | access to parameter i | Initializers.cs:64:47:64:47 | 1 | | Initializers.cs:64:50:64:54 | ... + ... | Initializers.cs:64:54:64:54 | 0 | @@ -6162,7 +6226,8 @@ postDominance | MultiImplementationA.cs:11:7:11:8 | exit | MultiImplementationA.cs:11:7:11:8 | exit (normal) | | MultiImplementationA.cs:11:7:11:8 | exit (normal) | MultiImplementationA.cs:24:32:24:34 | ... = ... | | MultiImplementationA.cs:11:7:11:8 | exit (normal) | MultiImplementationB.cs:22:32:22:34 | ... = ... | -| MultiImplementationA.cs:13:16:13:20 | ... = ... | MultiImplementationA.cs:13:20:13:20 | 0 | +| MultiImplementationA.cs:13:16:13:16 | access to field F | MultiImplementationA.cs:13:20:13:20 | 0 | +| MultiImplementationA.cs:13:16:13:20 | ... = ... | MultiImplementationA.cs:13:16:13:16 | access to field F | | MultiImplementationA.cs:13:20:13:20 | 0 | MultiImplementationA.cs:13:16:13:16 | this access | | MultiImplementationA.cs:14:31:14:31 | access to parameter i | MultiImplementationA.cs:14:31:14:31 | enter get_Item | | MultiImplementationA.cs:14:31:14:31 | exit get_Item (abnormal) | MultiImplementationB.cs:12:31:12:40 | throw ... | @@ -6188,8 +6253,9 @@ postDominance | MultiImplementationA.cs:20:12:20:13 | exit C2 (normal) | MultiImplementationA.cs:20:24:20:28 | ... = ... | | MultiImplementationA.cs:20:12:20:13 | this access | MultiImplementationA.cs:20:12:20:13 | enter C2 | | MultiImplementationA.cs:20:22:20:31 | {...} | MultiImplementationA.cs:20:12:20:13 | call to constructor Object | +| MultiImplementationA.cs:20:24:20:24 | access to field F | MultiImplementationA.cs:20:28:20:28 | access to parameter i | | MultiImplementationA.cs:20:24:20:24 | this access | MultiImplementationA.cs:20:24:20:29 | ...; | -| MultiImplementationA.cs:20:24:20:28 | ... = ... | MultiImplementationA.cs:20:28:20:28 | access to parameter i | +| MultiImplementationA.cs:20:24:20:28 | ... = ... | MultiImplementationA.cs:20:24:20:24 | access to field F | | MultiImplementationA.cs:20:24:20:29 | ...; | MultiImplementationA.cs:20:22:20:31 | {...} | | MultiImplementationA.cs:20:28:20:28 | access to parameter i | MultiImplementationA.cs:20:24:20:24 | this access | | MultiImplementationA.cs:21:12:21:13 | exit C2 | MultiImplementationA.cs:21:12:21:13 | exit C2 (normal) | @@ -6241,7 +6307,8 @@ postDominance | MultiImplementationB.cs:4:34:4:34 | 1 | MultiImplementationB.cs:4:25:4:37 | {...} | | MultiImplementationB.cs:4:43:4:45 | {...} | MultiImplementationA.cs:7:41:7:43 | enter set_P2 | | MultiImplementationB.cs:5:23:5:23 | 2 | MultiImplementationA.cs:8:16:8:16 | enter M | -| MultiImplementationB.cs:11:16:11:20 | ... = ... | MultiImplementationB.cs:11:20:11:20 | 1 | +| MultiImplementationB.cs:11:16:11:16 | access to field F | MultiImplementationB.cs:11:20:11:20 | 1 | +| MultiImplementationB.cs:11:16:11:20 | ... = ... | MultiImplementationB.cs:11:16:11:16 | access to field F | | MultiImplementationB.cs:11:20:11:20 | 1 | MultiImplementationB.cs:11:16:11:16 | this access | | MultiImplementationB.cs:12:31:12:40 | throw ... | MultiImplementationB.cs:12:37:12:40 | null | | MultiImplementationB.cs:13:42:13:52 | throw ...; | MultiImplementationB.cs:13:48:13:51 | null | @@ -6340,8 +6407,9 @@ postDominance | PartialImplementationA.cs:3:12:3:18 | exit Partial (normal) | PartialImplementationA.cs:3:27:3:29 | {...} | | PartialImplementationA.cs:3:12:3:18 | this access | PartialImplementationA.cs:3:12:3:18 | enter Partial | | PartialImplementationA.cs:3:27:3:29 | {...} | PartialImplementationA.cs:3:12:3:18 | call to constructor Object | +| PartialImplementationB.cs:3:16:3:16 | access to field F | PartialImplementationB.cs:3:20:3:20 | 0 | | PartialImplementationB.cs:3:16:3:16 | this access | PartialImplementationA.cs:1:15:1:21 | enter | -| PartialImplementationB.cs:3:16:3:20 | ... = ... | PartialImplementationB.cs:3:20:3:20 | 0 | +| PartialImplementationB.cs:3:16:3:20 | ... = ... | PartialImplementationB.cs:3:16:3:16 | access to field F | | PartialImplementationB.cs:3:20:3:20 | 0 | PartialImplementationB.cs:3:16:3:16 | this access | | PartialImplementationB.cs:4:12:4:18 | call to constructor Object | PartialImplementationB.cs:4:12:4:18 | call to method | | PartialImplementationB.cs:4:12:4:18 | call to method | PartialImplementationB.cs:4:12:4:18 | this access | @@ -7233,8 +7301,9 @@ postDominance | cflow.cs:127:62:127:64 | exit set_Prop | cflow.cs:127:62:127:64 | exit set_Prop (normal) | | cflow.cs:127:62:127:64 | exit set_Prop (normal) | cflow.cs:127:68:127:80 | ... = ... | | cflow.cs:127:66:127:83 | {...} | cflow.cs:127:62:127:64 | enter set_Prop | +| cflow.cs:127:68:127:72 | access to field Field | cflow.cs:127:76:127:80 | access to parameter value | | cflow.cs:127:68:127:72 | this access | cflow.cs:127:68:127:81 | ...; | -| cflow.cs:127:68:127:80 | ... = ... | cflow.cs:127:76:127:80 | access to parameter value | +| cflow.cs:127:68:127:80 | ... = ... | cflow.cs:127:68:127:72 | access to field Field | | cflow.cs:127:68:127:81 | ...; | cflow.cs:127:66:127:83 | {...} | | cflow.cs:127:76:127:80 | access to parameter value | cflow.cs:127:68:127:72 | this access | | cflow.cs:129:5:129:15 | call to constructor Object | cflow.cs:129:5:129:15 | call to method | @@ -7243,8 +7312,9 @@ postDominance | cflow.cs:129:5:129:15 | exit ControlFlow (normal) | cflow.cs:131:9:131:17 | ... = ... | | cflow.cs:129:5:129:15 | this access | cflow.cs:129:5:129:15 | enter ControlFlow | | cflow.cs:130:5:132:5 | {...} | cflow.cs:129:5:129:15 | call to constructor Object | +| cflow.cs:131:9:131:13 | access to field Field | cflow.cs:131:17:131:17 | access to parameter s | | cflow.cs:131:9:131:13 | this access | cflow.cs:131:9:131:18 | ...; | -| cflow.cs:131:9:131:17 | ... = ... | cflow.cs:131:17:131:17 | access to parameter s | +| cflow.cs:131:9:131:17 | ... = ... | cflow.cs:131:9:131:13 | access to field Field | | cflow.cs:131:9:131:18 | ...; | cflow.cs:130:5:132:5 | {...} | | cflow.cs:131:17:131:17 | access to parameter s | cflow.cs:131:9:131:13 | this access | | cflow.cs:134:5:134:15 | exit ControlFlow | cflow.cs:134:5:134:15 | exit ControlFlow (normal) | @@ -7456,10 +7526,11 @@ postDominance | cflow.cs:210:9:221:36 | do ... while (...); | cflow.cs:209:5:222:5 | {...} | | cflow.cs:211:9:221:9 | {...} | cflow.cs:210:9:221:36 | do ... while (...); | | cflow.cs:212:13:212:17 | access to field Field | cflow.cs:212:13:212:17 | this access | +| cflow.cs:212:13:212:17 | access to field Field | cflow.cs:212:13:212:24 | ... + ... | | cflow.cs:212:13:212:17 | this access | cflow.cs:212:13:212:17 | this access | | cflow.cs:212:13:212:17 | this access | cflow.cs:212:13:212:25 | ...; | | cflow.cs:212:13:212:24 | ... + ... | cflow.cs:212:22:212:24 | "a" | -| cflow.cs:212:13:212:24 | ... = ... | cflow.cs:212:13:212:24 | ... + ... | +| cflow.cs:212:13:212:24 | ... = ... | cflow.cs:212:13:212:17 | access to field Field | | cflow.cs:212:13:212:25 | ...; | cflow.cs:211:9:221:9 | {...} | | cflow.cs:212:22:212:24 | "a" | cflow.cs:212:13:212:17 | access to field Field | | cflow.cs:213:13:216:13 | if (...) ... | cflow.cs:212:13:212:24 | ... = ... | @@ -7491,10 +7562,11 @@ postDominance | cflow.cs:226:62:226:63 | 10 | cflow.cs:226:57:226:59 | "a" | | cflow.cs:227:9:237:9 | {...} | cflow.cs:226:22:226:22 | String x | | cflow.cs:228:13:228:17 | access to field Field | cflow.cs:228:13:228:17 | this access | +| cflow.cs:228:13:228:17 | access to field Field | cflow.cs:228:13:228:22 | ... + ... | | cflow.cs:228:13:228:17 | this access | cflow.cs:228:13:228:17 | this access | | cflow.cs:228:13:228:17 | this access | cflow.cs:228:13:228:23 | ...; | | cflow.cs:228:13:228:22 | ... + ... | cflow.cs:228:22:228:22 | access to local variable x | -| cflow.cs:228:13:228:22 | ... = ... | cflow.cs:228:13:228:22 | ... + ... | +| cflow.cs:228:13:228:22 | ... = ... | cflow.cs:228:13:228:17 | access to field Field | | cflow.cs:228:13:228:23 | ...; | cflow.cs:227:9:237:9 | {...} | | cflow.cs:228:22:228:22 | access to local variable x | cflow.cs:228:13:228:17 | access to field Field | | cflow.cs:229:13:232:13 | if (...) ... | cflow.cs:228:13:228:22 | ... = ... | diff --git a/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected b/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected index 14dcdb56b269..527b6eb9bca1 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected @@ -27,6 +27,7 @@ nodeEnclosing | AccessorCalls.cs:10:10:10:11 | exit M1 (normal) | AccessorCalls.cs:10:10:10:11 | M1 | | AccessorCalls.cs:11:5:17:5 | {...} | AccessorCalls.cs:10:10:10:11 | M1 | | AccessorCalls.cs:12:9:12:12 | this access | AccessorCalls.cs:10:10:10:11 | M1 | +| AccessorCalls.cs:12:9:12:18 | access to field Field | AccessorCalls.cs:10:10:10:11 | M1 | | AccessorCalls.cs:12:9:12:31 | ... = ... | AccessorCalls.cs:10:10:10:11 | M1 | | AccessorCalls.cs:12:9:12:32 | ...; | AccessorCalls.cs:10:10:10:11 | M1 | | AccessorCalls.cs:12:22:12:25 | this access | AccessorCalls.cs:10:10:10:11 | M1 | @@ -61,6 +62,7 @@ nodeEnclosing | AccessorCalls.cs:20:5:26:5 | {...} | AccessorCalls.cs:19:10:19:11 | M2 | | AccessorCalls.cs:21:9:21:12 | this access | AccessorCalls.cs:19:10:19:11 | M2 | | AccessorCalls.cs:21:9:21:14 | access to field x | AccessorCalls.cs:19:10:19:11 | M2 | +| AccessorCalls.cs:21:9:21:20 | access to field Field | AccessorCalls.cs:19:10:19:11 | M2 | | AccessorCalls.cs:21:9:21:35 | ... = ... | AccessorCalls.cs:19:10:19:11 | M2 | | AccessorCalls.cs:21:9:21:36 | ...; | AccessorCalls.cs:19:10:19:11 | M2 | | AccessorCalls.cs:21:24:21:27 | this access | AccessorCalls.cs:19:10:19:11 | M2 | @@ -140,6 +142,7 @@ nodeEnclosing | AccessorCalls.cs:44:9:44:12 | this access | AccessorCalls.cs:42:10:42:11 | M5 | | AccessorCalls.cs:44:9:44:12 | this access | AccessorCalls.cs:42:10:42:11 | M5 | | AccessorCalls.cs:44:9:44:18 | access to field Field | AccessorCalls.cs:42:10:42:11 | M5 | +| AccessorCalls.cs:44:9:44:18 | access to field Field | AccessorCalls.cs:42:10:42:11 | M5 | | AccessorCalls.cs:44:9:44:32 | ... + ... | AccessorCalls.cs:42:10:42:11 | M5 | | AccessorCalls.cs:44:9:44:32 | ... = ... | AccessorCalls.cs:42:10:42:11 | M5 | | AccessorCalls.cs:44:9:44:33 | ...; | AccessorCalls.cs:42:10:42:11 | M5 | @@ -175,6 +178,7 @@ nodeEnclosing | AccessorCalls.cs:51:9:51:14 | access to field x | AccessorCalls.cs:49:10:49:11 | M6 | | AccessorCalls.cs:51:9:51:14 | access to field x | AccessorCalls.cs:49:10:49:11 | M6 | | AccessorCalls.cs:51:9:51:20 | access to field Field | AccessorCalls.cs:49:10:49:11 | M6 | +| AccessorCalls.cs:51:9:51:20 | access to field Field | AccessorCalls.cs:49:10:49:11 | M6 | | AccessorCalls.cs:51:9:51:36 | ... + ... | AccessorCalls.cs:49:10:49:11 | M6 | | AccessorCalls.cs:51:9:51:36 | ... = ... | AccessorCalls.cs:49:10:49:11 | M6 | | AccessorCalls.cs:51:9:51:37 | ...; | AccessorCalls.cs:49:10:49:11 | M6 | @@ -216,6 +220,7 @@ nodeEnclosing | AccessorCalls.cs:58:9:58:85 | ... = ... | AccessorCalls.cs:56:10:56:11 | M7 | | AccessorCalls.cs:58:9:58:86 | ...; | AccessorCalls.cs:56:10:56:11 | M7 | | AccessorCalls.cs:58:10:58:13 | this access | AccessorCalls.cs:56:10:56:11 | M7 | +| AccessorCalls.cs:58:10:58:19 | access to field Field | AccessorCalls.cs:56:10:56:11 | M7 | | AccessorCalls.cs:58:22:58:25 | this access | AccessorCalls.cs:56:10:56:11 | M7 | | AccessorCalls.cs:58:22:58:30 | access to property Prop | AccessorCalls.cs:56:10:56:11 | M7 | | AccessorCalls.cs:58:33:58:44 | (..., ...) | AccessorCalls.cs:56:10:56:11 | M7 | @@ -241,6 +246,7 @@ nodeEnclosing | AccessorCalls.cs:63:9:63:98 | ...; | AccessorCalls.cs:61:10:61:11 | M8 | | AccessorCalls.cs:63:10:63:13 | this access | AccessorCalls.cs:61:10:61:11 | M8 | | AccessorCalls.cs:63:10:63:15 | access to field x | AccessorCalls.cs:61:10:61:11 | M8 | +| AccessorCalls.cs:63:10:63:21 | access to field Field | AccessorCalls.cs:61:10:61:11 | M8 | | AccessorCalls.cs:63:24:63:27 | this access | AccessorCalls.cs:61:10:61:11 | M8 | | AccessorCalls.cs:63:24:63:29 | access to field x | AccessorCalls.cs:61:10:61:11 | M8 | | AccessorCalls.cs:63:24:63:34 | access to property Prop | AccessorCalls.cs:61:10:61:11 | M8 | @@ -1943,10 +1949,12 @@ nodeEnclosing | Finally.cs:209:25:209:47 | throw ...; | Finally.cs:195:10:195:12 | M10 | | Finally.cs:209:31:209:46 | object creation of type ExceptionC | Finally.cs:195:10:195:12 | M10 | | Finally.cs:211:13:211:16 | this access | Finally.cs:195:10:195:12 | M10 | +| Finally.cs:211:13:211:22 | access to field Field | Finally.cs:195:10:195:12 | M10 | | Finally.cs:211:13:211:28 | ... = ... | Finally.cs:195:10:195:12 | M10 | | Finally.cs:211:13:211:29 | ...; | Finally.cs:195:10:195:12 | M10 | | Finally.cs:211:26:211:28 | "0" | Finally.cs:195:10:195:12 | M10 | | Finally.cs:213:9:213:12 | this access | Finally.cs:195:10:195:12 | M10 | +| Finally.cs:213:9:213:18 | access to field Field | Finally.cs:195:10:195:12 | M10 | | Finally.cs:213:9:213:24 | ... = ... | Finally.cs:195:10:195:12 | M10 | | Finally.cs:213:9:213:25 | ...; | Finally.cs:195:10:195:12 | M10 | | Finally.cs:213:22:213:24 | "1" | Finally.cs:195:10:195:12 | M10 | @@ -2095,6 +2103,7 @@ nodeEnclosing | Initializers.cs:3:7:3:18 | exit Initializers | Initializers.cs:3:7:3:18 | Initializers | | Initializers.cs:3:7:3:18 | exit Initializers (normal) | Initializers.cs:3:7:3:18 | Initializers | | Initializers.cs:3:7:3:18 | {...} | Initializers.cs:3:7:3:18 | Initializers | +| Initializers.cs:5:9:5:9 | access to field F | Initializers.cs:3:7:3:18 | | | Initializers.cs:5:9:5:9 | this access | Initializers.cs:3:7:3:18 | | | Initializers.cs:5:9:5:17 | ... = ... | Initializers.cs:3:7:3:18 | | | Initializers.cs:5:13:5:13 | access to field H | Initializers.cs:3:7:3:18 | | @@ -2129,6 +2138,7 @@ nodeEnclosing | Initializers.cs:14:17:14:53 | object creation of type Initializers | Initializers.cs:12:10:12:10 | M | | Initializers.cs:14:34:14:35 | "" | Initializers.cs:12:10:12:10 | M | | Initializers.cs:14:38:14:53 | { ..., ... } | Initializers.cs:12:10:12:10 | M | +| Initializers.cs:14:40:14:40 | access to field F | Initializers.cs:12:10:12:10 | M | | Initializers.cs:14:40:14:44 | ... = ... | Initializers.cs:12:10:12:10 | M | | Initializers.cs:14:44:14:44 | 0 | Initializers.cs:12:10:12:10 | M | | Initializers.cs:14:47:14:47 | access to property G | Initializers.cs:12:10:12:10 | M | @@ -2152,15 +2162,18 @@ nodeEnclosing | Initializers.cs:20:11:20:23 | exit NoConstructor (normal) | Initializers.cs:20:11:20:23 | NoConstructor | | Initializers.cs:20:11:20:23 | this access | Initializers.cs:20:11:20:23 | NoConstructor | | Initializers.cs:20:11:20:23 | {...} | Initializers.cs:20:11:20:23 | NoConstructor | +| Initializers.cs:22:23:22:23 | access to field F | Initializers.cs:20:11:20:23 | | | Initializers.cs:22:23:22:23 | this access | Initializers.cs:20:11:20:23 | | | Initializers.cs:22:23:22:27 | ... = ... | Initializers.cs:20:11:20:23 | | | Initializers.cs:22:27:22:27 | 0 | Initializers.cs:20:11:20:23 | | +| Initializers.cs:23:23:23:23 | access to field G | Initializers.cs:20:11:20:23 | | | Initializers.cs:23:23:23:23 | this access | Initializers.cs:20:11:20:23 | | | Initializers.cs:23:23:23:27 | ... = ... | Initializers.cs:20:11:20:23 | | | Initializers.cs:23:27:23:27 | 1 | Initializers.cs:20:11:20:23 | | | Initializers.cs:26:11:26:13 | enter | Initializers.cs:26:11:26:13 | | | Initializers.cs:26:11:26:13 | exit | Initializers.cs:26:11:26:13 | | | Initializers.cs:26:11:26:13 | exit (normal) | Initializers.cs:26:11:26:13 | | +| Initializers.cs:28:13:28:13 | access to field H | Initializers.cs:26:11:26:13 | | | Initializers.cs:28:13:28:13 | this access | Initializers.cs:26:11:26:13 | | | Initializers.cs:28:13:28:17 | ... = ... | Initializers.cs:26:11:26:13 | | | Initializers.cs:28:17:28:17 | 2 | Initializers.cs:26:11:26:13 | | @@ -2171,6 +2184,7 @@ nodeEnclosing | Initializers.cs:31:9:31:11 | this access | Initializers.cs:31:9:31:11 | Sub | | Initializers.cs:31:17:31:20 | call to constructor NoConstructor | Initializers.cs:31:9:31:11 | Sub | | Initializers.cs:31:24:31:33 | {...} | Initializers.cs:31:9:31:11 | Sub | +| Initializers.cs:31:26:31:26 | access to field I | Initializers.cs:31:9:31:11 | Sub | | Initializers.cs:31:26:31:26 | this access | Initializers.cs:31:9:31:11 | Sub | | Initializers.cs:31:26:31:30 | ... = ... | Initializers.cs:31:9:31:11 | Sub | | Initializers.cs:31:26:31:31 | ...; | Initializers.cs:31:9:31:11 | Sub | @@ -2180,6 +2194,7 @@ nodeEnclosing | Initializers.cs:33:9:33:11 | exit Sub (normal) | Initializers.cs:33:9:33:11 | Sub | | Initializers.cs:33:22:33:25 | call to constructor Sub | Initializers.cs:33:9:33:11 | Sub | | Initializers.cs:33:29:33:38 | {...} | Initializers.cs:33:9:33:11 | Sub | +| Initializers.cs:33:31:33:31 | access to field I | Initializers.cs:33:9:33:11 | Sub | | Initializers.cs:33:31:33:31 | this access | Initializers.cs:33:9:33:11 | Sub | | Initializers.cs:33:31:33:35 | ... = ... | Initializers.cs:33:9:33:11 | Sub | | Initializers.cs:33:31:33:36 | ...; | Initializers.cs:33:9:33:11 | Sub | @@ -2191,6 +2206,7 @@ nodeEnclosing | Initializers.cs:35:9:35:11 | exit Sub (normal) | Initializers.cs:35:9:35:11 | Sub | | Initializers.cs:35:9:35:11 | this access | Initializers.cs:35:9:35:11 | Sub | | Initializers.cs:35:27:35:40 | {...} | Initializers.cs:35:9:35:11 | Sub | +| Initializers.cs:35:29:35:29 | access to field I | Initializers.cs:35:9:35:11 | Sub | | Initializers.cs:35:29:35:29 | this access | Initializers.cs:35:9:35:11 | Sub | | Initializers.cs:35:29:35:37 | ... = ... | Initializers.cs:35:9:35:11 | Sub | | Initializers.cs:35:29:35:38 | ...; | Initializers.cs:35:9:35:11 | Sub | @@ -2237,6 +2253,7 @@ nodeEnclosing | Initializers.cs:57:13:65:9 | Compound compound = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:57:24:65:9 | object creation of type Compound | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:58:9:65:9 | { ..., ... } | Initializers.cs:51:10:51:13 | Test | +| Initializers.cs:59:13:59:27 | access to field DictionaryField | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:59:13:59:76 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:59:31:59:76 | { ..., ... } | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:59:33:59:35 | access to indexer | Initializers.cs:51:10:51:13 | Test | @@ -2270,22 +2287,28 @@ nodeEnclosing | Initializers.cs:60:65:60:69 | ... + ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:60:69:60:69 | 1 | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:60:74:60:78 | "One" | Initializers.cs:51:10:51:13 | Test | +| Initializers.cs:61:13:61:22 | access to field ArrayField | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:61:13:61:58 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:61:26:61:58 | { ..., ... } | Initializers.cs:51:10:51:13 | Test | +| Initializers.cs:61:28:61:30 | access to array element | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:61:28:61:39 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:61:29:61:29 | 0 | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:61:34:61:39 | "Zero" | Initializers.cs:51:10:51:13 | Test | +| Initializers.cs:61:42:61:48 | access to array element | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:61:42:61:56 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:61:43:61:43 | access to parameter i | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:61:43:61:47 | ... + ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:61:47:61:47 | 1 | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:61:52:61:56 | "One" | Initializers.cs:51:10:51:13 | Test | +| Initializers.cs:62:13:62:23 | access to field ArrayField2 | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:62:13:62:60 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:62:27:62:60 | { ..., ... } | Initializers.cs:51:10:51:13 | Test | +| Initializers.cs:62:29:62:34 | access to array element | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:62:29:62:40 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:62:30:62:30 | 0 | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:62:33:62:33 | 1 | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:62:38:62:40 | "i" | Initializers.cs:51:10:51:13 | Test | +| Initializers.cs:62:43:62:52 | access to array element | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:62:43:62:58 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:62:44:62:44 | 1 | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:62:47:62:47 | access to parameter i | Initializers.cs:51:10:51:13 | Test | @@ -2295,9 +2318,11 @@ nodeEnclosing | Initializers.cs:63:13:63:25 | access to property ArrayProperty | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:63:13:63:60 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:63:29:63:60 | { ..., ... } | Initializers.cs:51:10:51:13 | Test | +| Initializers.cs:63:31:63:33 | access to array element | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:63:31:63:41 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:63:32:63:32 | 1 | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:63:37:63:41 | "One" | Initializers.cs:51:10:51:13 | Test | +| Initializers.cs:63:44:63:50 | access to array element | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:63:44:63:58 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:63:45:63:45 | access to parameter i | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:63:45:63:49 | ... + ... | Initializers.cs:51:10:51:13 | Test | @@ -2306,10 +2331,12 @@ nodeEnclosing | Initializers.cs:64:13:64:26 | access to property ArrayProperty2 | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:64:13:64:63 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:64:30:64:63 | { ..., ... } | Initializers.cs:51:10:51:13 | Test | +| Initializers.cs:64:32:64:37 | access to array element | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:64:32:64:43 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:64:33:64:33 | 0 | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:64:36:64:36 | 1 | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:64:41:64:43 | "i" | Initializers.cs:51:10:51:13 | Test | +| Initializers.cs:64:46:64:55 | access to array element | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:64:46:64:61 | ... = ... | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:64:47:64:47 | 1 | Initializers.cs:51:10:51:13 | Test | | Initializers.cs:64:50:64:50 | access to parameter i | Initializers.cs:51:10:51:13 | Test | @@ -2565,6 +2592,7 @@ nodeEnclosing | MultiImplementationA.cs:11:7:11:8 | enter | MultiImplementationA.cs:11:7:11:8 | | | MultiImplementationA.cs:11:7:11:8 | exit | MultiImplementationA.cs:11:7:11:8 | | | MultiImplementationA.cs:11:7:11:8 | exit (normal) | MultiImplementationA.cs:11:7:11:8 | | +| MultiImplementationA.cs:13:16:13:16 | access to field F | MultiImplementationA.cs:11:7:11:8 | | | MultiImplementationA.cs:13:16:13:16 | this access | MultiImplementationA.cs:11:7:11:8 | | | MultiImplementationA.cs:13:16:13:20 | ... = ... | MultiImplementationA.cs:11:7:11:8 | | | MultiImplementationA.cs:13:20:13:20 | 0 | MultiImplementationA.cs:11:7:11:8 | | @@ -2601,6 +2629,7 @@ nodeEnclosing | MultiImplementationA.cs:20:12:20:13 | exit C2 (normal) | MultiImplementationA.cs:20:12:20:13 | C2 | | MultiImplementationA.cs:20:12:20:13 | this access | MultiImplementationA.cs:20:12:20:13 | C2 | | MultiImplementationA.cs:20:22:20:31 | {...} | MultiImplementationA.cs:20:12:20:13 | C2 | +| MultiImplementationA.cs:20:24:20:24 | access to field F | MultiImplementationA.cs:20:12:20:13 | C2 | | MultiImplementationA.cs:20:24:20:24 | this access | MultiImplementationA.cs:20:12:20:13 | C2 | | MultiImplementationA.cs:20:24:20:28 | ... = ... | MultiImplementationA.cs:20:12:20:13 | C2 | | MultiImplementationA.cs:20:24:20:29 | ...; | MultiImplementationA.cs:20:12:20:13 | C2 | @@ -2667,6 +2696,7 @@ nodeEnclosing | MultiImplementationB.cs:4:34:4:34 | 1 | MultiImplementationA.cs:7:21:7:23 | get_P2 | | MultiImplementationB.cs:4:43:4:45 | {...} | MultiImplementationA.cs:7:41:7:43 | set_P2 | | MultiImplementationB.cs:5:23:5:23 | 2 | MultiImplementationA.cs:8:16:8:16 | M | +| MultiImplementationB.cs:11:16:11:16 | access to field F | MultiImplementationA.cs:11:7:11:8 | | | MultiImplementationB.cs:11:16:11:16 | this access | MultiImplementationA.cs:11:7:11:8 | | | MultiImplementationB.cs:11:16:11:20 | ... = ... | MultiImplementationA.cs:11:7:11:8 | | | MultiImplementationB.cs:11:20:11:20 | 1 | MultiImplementationA.cs:11:7:11:8 | | @@ -2794,6 +2824,7 @@ nodeEnclosing | PartialImplementationA.cs:3:12:3:18 | exit Partial (normal) | PartialImplementationA.cs:3:12:3:18 | Partial | | PartialImplementationA.cs:3:12:3:18 | this access | PartialImplementationA.cs:3:12:3:18 | Partial | | PartialImplementationA.cs:3:27:3:29 | {...} | PartialImplementationA.cs:3:12:3:18 | Partial | +| PartialImplementationB.cs:3:16:3:16 | access to field F | PartialImplementationA.cs:1:15:1:21 | | | PartialImplementationB.cs:3:16:3:16 | this access | PartialImplementationA.cs:1:15:1:21 | | | PartialImplementationB.cs:3:16:3:20 | ... = ... | PartialImplementationA.cs:1:15:1:21 | | | PartialImplementationB.cs:3:20:3:20 | 0 | PartialImplementationA.cs:1:15:1:21 | | @@ -3824,6 +3855,7 @@ nodeEnclosing | cflow.cs:127:62:127:64 | exit set_Prop | cflow.cs:127:62:127:64 | set_Prop | | cflow.cs:127:62:127:64 | exit set_Prop (normal) | cflow.cs:127:62:127:64 | set_Prop | | cflow.cs:127:66:127:83 | {...} | cflow.cs:127:62:127:64 | set_Prop | +| cflow.cs:127:68:127:72 | access to field Field | cflow.cs:127:62:127:64 | set_Prop | | cflow.cs:127:68:127:72 | this access | cflow.cs:127:62:127:64 | set_Prop | | cflow.cs:127:68:127:80 | ... = ... | cflow.cs:127:62:127:64 | set_Prop | | cflow.cs:127:68:127:81 | ...; | cflow.cs:127:62:127:64 | set_Prop | @@ -3835,6 +3867,7 @@ nodeEnclosing | cflow.cs:129:5:129:15 | exit ControlFlow (normal) | cflow.cs:129:5:129:15 | ControlFlow | | cflow.cs:129:5:129:15 | this access | cflow.cs:129:5:129:15 | ControlFlow | | cflow.cs:130:5:132:5 | {...} | cflow.cs:129:5:129:15 | ControlFlow | +| cflow.cs:131:9:131:13 | access to field Field | cflow.cs:129:5:129:15 | ControlFlow | | cflow.cs:131:9:131:13 | this access | cflow.cs:129:5:129:15 | ControlFlow | | cflow.cs:131:9:131:17 | ... = ... | cflow.cs:129:5:129:15 | ControlFlow | | cflow.cs:131:9:131:18 | ...; | cflow.cs:129:5:129:15 | ControlFlow | @@ -4068,6 +4101,7 @@ nodeEnclosing | cflow.cs:210:9:221:36 | do ... while (...); | cflow.cs:208:10:208:11 | Do | | cflow.cs:211:9:221:9 | {...} | cflow.cs:208:10:208:11 | Do | | cflow.cs:212:13:212:17 | access to field Field | cflow.cs:208:10:208:11 | Do | +| cflow.cs:212:13:212:17 | access to field Field | cflow.cs:208:10:208:11 | Do | | cflow.cs:212:13:212:17 | this access | cflow.cs:208:10:208:11 | Do | | cflow.cs:212:13:212:17 | this access | cflow.cs:208:10:208:11 | Do | | cflow.cs:212:13:212:24 | ... + ... | cflow.cs:208:10:208:11 | Do | @@ -4106,6 +4140,7 @@ nodeEnclosing | cflow.cs:226:62:226:63 | 10 | cflow.cs:224:10:224:16 | Foreach | | cflow.cs:227:9:237:9 | {...} | cflow.cs:224:10:224:16 | Foreach | | cflow.cs:228:13:228:17 | access to field Field | cflow.cs:224:10:224:16 | Foreach | +| cflow.cs:228:13:228:17 | access to field Field | cflow.cs:224:10:224:16 | Foreach | | cflow.cs:228:13:228:17 | this access | cflow.cs:224:10:224:16 | Foreach | | cflow.cs:228:13:228:17 | this access | cflow.cs:224:10:224:16 | Foreach | | cflow.cs:228:13:228:22 | ... + ... | cflow.cs:224:10:224:16 | Foreach | diff --git a/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected b/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected index b764e2fb2a56..4f74842f4534 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected @@ -20,10 +20,11 @@ | AccessorCalls.cs:10:10:10:11 | exit M1 (normal) | AccessorCalls.cs:10:10:10:11 | exit M1 | | | AccessorCalls.cs:11:5:17:5 | {...} | AccessorCalls.cs:12:9:12:32 | ...; | | | AccessorCalls.cs:12:9:12:12 | this access | AccessorCalls.cs:12:22:12:25 | this access | | +| AccessorCalls.cs:12:9:12:18 | access to field Field | AccessorCalls.cs:12:9:12:31 | ... = ... | | | AccessorCalls.cs:12:9:12:31 | ... = ... | AccessorCalls.cs:13:9:13:30 | ...; | | | AccessorCalls.cs:12:9:12:32 | ...; | AccessorCalls.cs:12:9:12:12 | this access | | | AccessorCalls.cs:12:22:12:25 | this access | AccessorCalls.cs:12:22:12:31 | access to field Field | | -| AccessorCalls.cs:12:22:12:31 | access to field Field | AccessorCalls.cs:12:9:12:31 | ... = ... | | +| AccessorCalls.cs:12:22:12:31 | access to field Field | AccessorCalls.cs:12:9:12:18 | access to field Field | | | AccessorCalls.cs:13:9:13:12 | this access | AccessorCalls.cs:13:21:13:24 | this access | | | AccessorCalls.cs:13:9:13:17 | access to property Prop | AccessorCalls.cs:13:9:13:29 | ... = ... | | | AccessorCalls.cs:13:9:13:29 | ... = ... | AccessorCalls.cs:14:9:14:26 | ...; | | @@ -53,11 +54,12 @@ | AccessorCalls.cs:20:5:26:5 | {...} | AccessorCalls.cs:21:9:21:36 | ...; | | | AccessorCalls.cs:21:9:21:12 | this access | AccessorCalls.cs:21:9:21:14 | access to field x | | | AccessorCalls.cs:21:9:21:14 | access to field x | AccessorCalls.cs:21:24:21:27 | this access | | +| AccessorCalls.cs:21:9:21:20 | access to field Field | AccessorCalls.cs:21:9:21:35 | ... = ... | | | AccessorCalls.cs:21:9:21:35 | ... = ... | AccessorCalls.cs:22:9:22:34 | ...; | | | AccessorCalls.cs:21:9:21:36 | ...; | AccessorCalls.cs:21:9:21:12 | this access | | | AccessorCalls.cs:21:24:21:27 | this access | AccessorCalls.cs:21:24:21:29 | access to field x | | | AccessorCalls.cs:21:24:21:29 | access to field x | AccessorCalls.cs:21:24:21:35 | access to field Field | | -| AccessorCalls.cs:21:24:21:35 | access to field Field | AccessorCalls.cs:21:9:21:35 | ... = ... | | +| AccessorCalls.cs:21:24:21:35 | access to field Field | AccessorCalls.cs:21:9:21:20 | access to field Field | | | AccessorCalls.cs:22:9:22:12 | this access | AccessorCalls.cs:22:9:22:14 | access to field x | | | AccessorCalls.cs:22:9:22:14 | access to field x | AccessorCalls.cs:22:23:22:26 | this access | | | AccessorCalls.cs:22:9:22:19 | access to property Prop | AccessorCalls.cs:22:9:22:33 | ... = ... | | @@ -128,8 +130,9 @@ | AccessorCalls.cs:43:5:47:5 | {...} | AccessorCalls.cs:44:9:44:33 | ...; | | | AccessorCalls.cs:44:9:44:12 | this access | AccessorCalls.cs:44:9:44:12 | this access | | | AccessorCalls.cs:44:9:44:12 | this access | AccessorCalls.cs:44:9:44:18 | access to field Field | | +| AccessorCalls.cs:44:9:44:18 | access to field Field | AccessorCalls.cs:44:9:44:32 | ... = ... | | | AccessorCalls.cs:44:9:44:18 | access to field Field | AccessorCalls.cs:44:23:44:26 | this access | | -| AccessorCalls.cs:44:9:44:32 | ... + ... | AccessorCalls.cs:44:9:44:32 | ... = ... | | +| AccessorCalls.cs:44:9:44:32 | ... + ... | AccessorCalls.cs:44:9:44:18 | access to field Field | | | AccessorCalls.cs:44:9:44:32 | ... = ... | AccessorCalls.cs:45:9:45:31 | ...; | | | AccessorCalls.cs:44:9:44:33 | ...; | AccessorCalls.cs:44:9:44:12 | this access | | | AccessorCalls.cs:44:23:44:26 | this access | AccessorCalls.cs:44:23:44:32 | access to field Field | | @@ -162,8 +165,9 @@ | AccessorCalls.cs:51:9:51:12 | this access | AccessorCalls.cs:51:9:51:14 | access to field x | | | AccessorCalls.cs:51:9:51:14 | access to field x | AccessorCalls.cs:51:9:51:12 | this access | | | AccessorCalls.cs:51:9:51:14 | access to field x | AccessorCalls.cs:51:9:51:20 | access to field Field | | +| AccessorCalls.cs:51:9:51:20 | access to field Field | AccessorCalls.cs:51:9:51:36 | ... = ... | | | AccessorCalls.cs:51:9:51:20 | access to field Field | AccessorCalls.cs:51:25:51:28 | this access | | -| AccessorCalls.cs:51:9:51:36 | ... + ... | AccessorCalls.cs:51:9:51:36 | ... = ... | | +| AccessorCalls.cs:51:9:51:36 | ... + ... | AccessorCalls.cs:51:9:51:20 | access to field Field | | | AccessorCalls.cs:51:9:51:36 | ... = ... | AccessorCalls.cs:52:9:52:35 | ...; | | | AccessorCalls.cs:51:9:51:37 | ...; | AccessorCalls.cs:51:9:51:12 | this access | | | AccessorCalls.cs:51:25:51:28 | this access | AccessorCalls.cs:51:25:51:30 | access to field x | | @@ -203,13 +207,14 @@ | AccessorCalls.cs:58:9:58:85 | ... = ... | AccessorCalls.cs:56:10:56:11 | exit M7 (normal) | | | AccessorCalls.cs:58:9:58:86 | ...; | AccessorCalls.cs:58:10:58:13 | this access | | | AccessorCalls.cs:58:10:58:13 | this access | AccessorCalls.cs:58:22:58:25 | this access | | +| AccessorCalls.cs:58:10:58:19 | access to field Field | AccessorCalls.cs:58:22:58:30 | access to property Prop | | | AccessorCalls.cs:58:22:58:25 | this access | AccessorCalls.cs:58:37:58:40 | this access | | | AccessorCalls.cs:58:22:58:30 | access to property Prop | AccessorCalls.cs:58:37:58:43 | access to indexer | | | AccessorCalls.cs:58:33:58:44 | (..., ...) | AccessorCalls.cs:58:9:58:45 | (..., ...) | | | AccessorCalls.cs:58:37:58:40 | this access | AccessorCalls.cs:58:42:58:42 | 0 | | | AccessorCalls.cs:58:37:58:43 | access to indexer | AccessorCalls.cs:58:9:58:85 | ... = ... | | | AccessorCalls.cs:58:42:58:42 | 0 | AccessorCalls.cs:58:33:58:44 | (..., ...) | | -| AccessorCalls.cs:58:49:58:85 | (..., ...) | AccessorCalls.cs:58:22:58:30 | access to property Prop | | +| AccessorCalls.cs:58:49:58:85 | (..., ...) | AccessorCalls.cs:58:10:58:19 | access to field Field | | | AccessorCalls.cs:58:50:58:53 | this access | AccessorCalls.cs:58:50:58:59 | access to field Field | | | AccessorCalls.cs:58:50:58:59 | access to field Field | AccessorCalls.cs:58:62:58:65 | this access | | | AccessorCalls.cs:58:62:58:65 | this access | AccessorCalls.cs:58:62:58:70 | access to property Prop | | @@ -227,6 +232,7 @@ | AccessorCalls.cs:63:9:63:98 | ...; | AccessorCalls.cs:63:10:63:13 | this access | | | AccessorCalls.cs:63:10:63:13 | this access | AccessorCalls.cs:63:10:63:15 | access to field x | | | AccessorCalls.cs:63:10:63:15 | access to field x | AccessorCalls.cs:63:24:63:27 | this access | | +| AccessorCalls.cs:63:10:63:21 | access to field Field | AccessorCalls.cs:63:24:63:34 | access to property Prop | | | AccessorCalls.cs:63:24:63:27 | this access | AccessorCalls.cs:63:24:63:29 | access to field x | | | AccessorCalls.cs:63:24:63:29 | access to field x | AccessorCalls.cs:63:41:63:44 | this access | | | AccessorCalls.cs:63:24:63:34 | access to property Prop | AccessorCalls.cs:63:41:63:49 | access to indexer | | @@ -235,7 +241,7 @@ | AccessorCalls.cs:63:41:63:46 | access to field x | AccessorCalls.cs:63:48:63:48 | 0 | | | AccessorCalls.cs:63:41:63:49 | access to indexer | AccessorCalls.cs:63:9:63:97 | ... = ... | | | AccessorCalls.cs:63:48:63:48 | 0 | AccessorCalls.cs:63:37:63:50 | (..., ...) | | -| AccessorCalls.cs:63:55:63:97 | (..., ...) | AccessorCalls.cs:63:24:63:34 | access to property Prop | | +| AccessorCalls.cs:63:55:63:97 | (..., ...) | AccessorCalls.cs:63:10:63:21 | access to field Field | | | AccessorCalls.cs:63:56:63:59 | this access | AccessorCalls.cs:63:56:63:61 | access to field x | | | AccessorCalls.cs:63:56:63:61 | access to field x | AccessorCalls.cs:63:56:63:67 | access to field Field | | | AccessorCalls.cs:63:56:63:67 | access to field Field | AccessorCalls.cs:63:70:63:73 | this access | | @@ -2007,14 +2013,16 @@ | Finally.cs:209:25:209:47 | throw ...; | Finally.cs:195:10:195:12 | exit M10 (abnormal) | exception | | Finally.cs:209:31:209:46 | object creation of type ExceptionC | Finally.cs:209:25:209:47 | throw ...; | | | Finally.cs:211:13:211:16 | this access | Finally.cs:211:26:211:28 | "0" | | +| Finally.cs:211:13:211:22 | access to field Field | Finally.cs:211:13:211:28 | ... = ... | | | Finally.cs:211:13:211:28 | ... = ... | Finally.cs:195:10:195:12 | exit M10 (abnormal) | exception | | Finally.cs:211:13:211:28 | ... = ... | Finally.cs:213:9:213:25 | ...; | | | Finally.cs:211:13:211:29 | ...; | Finally.cs:211:13:211:16 | this access | | -| Finally.cs:211:26:211:28 | "0" | Finally.cs:211:13:211:28 | ... = ... | | +| Finally.cs:211:26:211:28 | "0" | Finally.cs:211:13:211:22 | access to field Field | | | Finally.cs:213:9:213:12 | this access | Finally.cs:213:22:213:24 | "1" | | +| Finally.cs:213:9:213:18 | access to field Field | Finally.cs:213:9:213:24 | ... = ... | | | Finally.cs:213:9:213:24 | ... = ... | Finally.cs:195:10:195:12 | exit M10 (normal) | | | Finally.cs:213:9:213:25 | ...; | Finally.cs:213:9:213:12 | this access | | -| Finally.cs:213:22:213:24 | "1" | Finally.cs:213:9:213:24 | ... = ... | | +| Finally.cs:213:22:213:24 | "1" | Finally.cs:213:9:213:18 | access to field Field | | | Finally.cs:216:10:216:12 | enter M11 | Finally.cs:217:5:231:5 | {...} | | | Finally.cs:216:10:216:12 | exit M11 (normal) | Finally.cs:216:10:216:12 | exit M11 | | | Finally.cs:217:5:231:5 | {...} | Finally.cs:218:9:229:9 | try {...} ... | | @@ -2164,10 +2172,11 @@ | Initializers.cs:3:7:3:18 | exit (normal) | Initializers.cs:3:7:3:18 | exit | | | Initializers.cs:3:7:3:18 | exit Initializers (normal) | Initializers.cs:3:7:3:18 | exit Initializers | | | Initializers.cs:3:7:3:18 | {...} | Initializers.cs:3:7:3:18 | exit Initializers (normal) | | +| Initializers.cs:5:9:5:9 | access to field F | Initializers.cs:5:9:5:17 | ... = ... | | | Initializers.cs:5:9:5:9 | this access | Initializers.cs:5:13:5:13 | access to field H | | | Initializers.cs:5:9:5:17 | ... = ... | Initializers.cs:6:9:6:9 | this access | | | Initializers.cs:5:13:5:13 | access to field H | Initializers.cs:5:17:5:17 | 1 | | -| Initializers.cs:5:13:5:17 | ... + ... | Initializers.cs:5:9:5:17 | ... = ... | | +| Initializers.cs:5:13:5:17 | ... + ... | Initializers.cs:5:9:5:9 | access to field F | | | Initializers.cs:5:17:5:17 | 1 | Initializers.cs:5:13:5:17 | ... + ... | | | Initializers.cs:6:9:6:9 | access to property G | Initializers.cs:6:25:6:31 | ... = ... | | | Initializers.cs:6:9:6:9 | this access | Initializers.cs:6:27:6:27 | access to field H | | @@ -2195,8 +2204,9 @@ | Initializers.cs:14:17:14:53 | object creation of type Initializers | Initializers.cs:14:44:14:44 | 0 | | | Initializers.cs:14:34:14:35 | "" | Initializers.cs:14:17:14:53 | object creation of type Initializers | | | Initializers.cs:14:38:14:53 | { ..., ... } | Initializers.cs:14:13:14:53 | Initializers i = ... | | +| Initializers.cs:14:40:14:40 | access to field F | Initializers.cs:14:40:14:44 | ... = ... | | | Initializers.cs:14:40:14:44 | ... = ... | Initializers.cs:14:51:14:51 | 1 | | -| Initializers.cs:14:44:14:44 | 0 | Initializers.cs:14:40:14:44 | ... = ... | | +| Initializers.cs:14:44:14:44 | 0 | Initializers.cs:14:40:14:40 | access to field F | | | Initializers.cs:14:47:14:47 | access to property G | Initializers.cs:14:47:14:51 | ... = ... | | | Initializers.cs:14:47:14:51 | ... = ... | Initializers.cs:14:38:14:53 | { ..., ... } | | | Initializers.cs:14:51:14:51 | 1 | Initializers.cs:14:47:14:47 | access to property G | | @@ -2208,10 +2218,11 @@ | Initializers.cs:15:39:15:39 | access to local variable i | Initializers.cs:15:59:15:60 | "" | | | Initializers.cs:15:42:15:61 | object creation of type Initializers | Initializers.cs:15:37:15:63 | { ..., ... } | | | Initializers.cs:15:59:15:60 | "" | Initializers.cs:15:42:15:61 | object creation of type Initializers | | +| Initializers.cs:18:16:18:16 | access to field H | Initializers.cs:18:16:18:20 | ... = ... | | | Initializers.cs:18:16:18:16 | enter H | Initializers.cs:18:20:18:20 | 1 | | | Initializers.cs:18:16:18:16 | exit H (normal) | Initializers.cs:18:16:18:16 | exit H | | | Initializers.cs:18:16:18:20 | ... = ... | Initializers.cs:18:16:18:16 | exit H (normal) | | -| Initializers.cs:18:20:18:20 | 1 | Initializers.cs:18:16:18:20 | ... = ... | | +| Initializers.cs:18:20:18:20 | 1 | Initializers.cs:18:16:18:16 | access to field H | | | Initializers.cs:20:11:20:23 | call to constructor Object | Initializers.cs:20:11:20:23 | {...} | | | Initializers.cs:20:11:20:23 | call to method | Initializers.cs:20:11:20:23 | call to constructor Object | | | Initializers.cs:20:11:20:23 | enter | Initializers.cs:22:23:22:23 | this access | | @@ -2220,46 +2231,52 @@ | Initializers.cs:20:11:20:23 | exit NoConstructor (normal) | Initializers.cs:20:11:20:23 | exit NoConstructor | | | Initializers.cs:20:11:20:23 | this access | Initializers.cs:20:11:20:23 | call to method | | | Initializers.cs:20:11:20:23 | {...} | Initializers.cs:20:11:20:23 | exit NoConstructor (normal) | | +| Initializers.cs:22:23:22:23 | access to field F | Initializers.cs:22:23:22:27 | ... = ... | | | Initializers.cs:22:23:22:23 | this access | Initializers.cs:22:27:22:27 | 0 | | | Initializers.cs:22:23:22:27 | ... = ... | Initializers.cs:23:23:23:23 | this access | | -| Initializers.cs:22:27:22:27 | 0 | Initializers.cs:22:23:22:27 | ... = ... | | +| Initializers.cs:22:27:22:27 | 0 | Initializers.cs:22:23:22:23 | access to field F | | +| Initializers.cs:23:23:23:23 | access to field G | Initializers.cs:23:23:23:27 | ... = ... | | | Initializers.cs:23:23:23:23 | this access | Initializers.cs:23:27:23:27 | 1 | | | Initializers.cs:23:23:23:27 | ... = ... | Initializers.cs:20:11:20:23 | exit (normal) | | -| Initializers.cs:23:27:23:27 | 1 | Initializers.cs:23:23:23:27 | ... = ... | | +| Initializers.cs:23:27:23:27 | 1 | Initializers.cs:23:23:23:23 | access to field G | | | Initializers.cs:26:11:26:13 | enter | Initializers.cs:28:13:28:13 | this access | | | Initializers.cs:26:11:26:13 | exit (normal) | Initializers.cs:26:11:26:13 | exit | | +| Initializers.cs:28:13:28:13 | access to field H | Initializers.cs:28:13:28:17 | ... = ... | | | Initializers.cs:28:13:28:13 | this access | Initializers.cs:28:17:28:17 | 2 | | | Initializers.cs:28:13:28:17 | ... = ... | Initializers.cs:26:11:26:13 | exit (normal) | | -| Initializers.cs:28:17:28:17 | 2 | Initializers.cs:28:13:28:17 | ... = ... | | +| Initializers.cs:28:17:28:17 | 2 | Initializers.cs:28:13:28:13 | access to field H | | | Initializers.cs:31:9:31:11 | call to method | Initializers.cs:31:17:31:20 | call to constructor NoConstructor | | | Initializers.cs:31:9:31:11 | enter Sub | Initializers.cs:31:9:31:11 | this access | | | Initializers.cs:31:9:31:11 | exit Sub (normal) | Initializers.cs:31:9:31:11 | exit Sub | | | Initializers.cs:31:9:31:11 | this access | Initializers.cs:31:9:31:11 | call to method | | | Initializers.cs:31:17:31:20 | call to constructor NoConstructor | Initializers.cs:31:24:31:33 | {...} | | | Initializers.cs:31:24:31:33 | {...} | Initializers.cs:31:26:31:31 | ...; | | +| Initializers.cs:31:26:31:26 | access to field I | Initializers.cs:31:26:31:30 | ... = ... | | | Initializers.cs:31:26:31:26 | this access | Initializers.cs:31:30:31:30 | 3 | | | Initializers.cs:31:26:31:30 | ... = ... | Initializers.cs:31:9:31:11 | exit Sub (normal) | | | Initializers.cs:31:26:31:31 | ...; | Initializers.cs:31:26:31:26 | this access | | -| Initializers.cs:31:30:31:30 | 3 | Initializers.cs:31:26:31:30 | ... = ... | | +| Initializers.cs:31:30:31:30 | 3 | Initializers.cs:31:26:31:26 | access to field I | | | Initializers.cs:33:9:33:11 | enter Sub | Initializers.cs:33:22:33:25 | call to constructor Sub | | | Initializers.cs:33:9:33:11 | exit Sub (normal) | Initializers.cs:33:9:33:11 | exit Sub | | | Initializers.cs:33:22:33:25 | call to constructor Sub | Initializers.cs:33:29:33:38 | {...} | | | Initializers.cs:33:29:33:38 | {...} | Initializers.cs:33:31:33:36 | ...; | | +| Initializers.cs:33:31:33:31 | access to field I | Initializers.cs:33:31:33:35 | ... = ... | | | Initializers.cs:33:31:33:31 | this access | Initializers.cs:33:35:33:35 | access to parameter i | | | Initializers.cs:33:31:33:35 | ... = ... | Initializers.cs:33:9:33:11 | exit Sub (normal) | | | Initializers.cs:33:31:33:36 | ...; | Initializers.cs:33:31:33:31 | this access | | -| Initializers.cs:33:35:33:35 | access to parameter i | Initializers.cs:33:31:33:35 | ... = ... | | +| Initializers.cs:33:35:33:35 | access to parameter i | Initializers.cs:33:31:33:31 | access to field I | | | Initializers.cs:35:9:35:11 | call to constructor NoConstructor | Initializers.cs:35:27:35:40 | {...} | | | Initializers.cs:35:9:35:11 | call to method | Initializers.cs:35:9:35:11 | call to constructor NoConstructor | | | Initializers.cs:35:9:35:11 | enter Sub | Initializers.cs:35:9:35:11 | this access | | | Initializers.cs:35:9:35:11 | exit Sub (normal) | Initializers.cs:35:9:35:11 | exit Sub | | | Initializers.cs:35:9:35:11 | this access | Initializers.cs:35:9:35:11 | call to method | | | Initializers.cs:35:27:35:40 | {...} | Initializers.cs:35:29:35:38 | ...; | | +| Initializers.cs:35:29:35:29 | access to field I | Initializers.cs:35:29:35:37 | ... = ... | | | Initializers.cs:35:29:35:29 | this access | Initializers.cs:35:33:35:33 | access to parameter i | | | Initializers.cs:35:29:35:37 | ... = ... | Initializers.cs:35:9:35:11 | exit Sub (normal) | | | Initializers.cs:35:29:35:38 | ...; | Initializers.cs:35:29:35:29 | this access | | | Initializers.cs:35:33:35:33 | access to parameter i | Initializers.cs:35:37:35:37 | access to parameter j | | -| Initializers.cs:35:33:35:37 | ... + ... | Initializers.cs:35:29:35:37 | ... = ... | | +| Initializers.cs:35:33:35:37 | ... + ... | Initializers.cs:35:29:35:29 | access to field I | | | Initializers.cs:35:37:35:37 | access to parameter j | Initializers.cs:35:33:35:37 | ... + ... | | | Initializers.cs:39:7:39:23 | call to constructor Object | Initializers.cs:39:7:39:23 | {...} | | | Initializers.cs:39:7:39:23 | call to method | Initializers.cs:39:7:39:23 | call to constructor Object | | @@ -2298,8 +2315,9 @@ | Initializers.cs:57:13:65:9 | Compound compound = ... | Initializers.cs:51:10:51:13 | exit Test (normal) | | | Initializers.cs:57:24:65:9 | object creation of type Compound | Initializers.cs:59:34:59:34 | 0 | | | Initializers.cs:58:9:65:9 | { ..., ... } | Initializers.cs:57:13:65:9 | Compound compound = ... | | +| Initializers.cs:59:13:59:27 | access to field DictionaryField | Initializers.cs:59:13:59:76 | ... = ... | | | Initializers.cs:59:13:59:76 | ... = ... | Initializers.cs:60:37:60:37 | 3 | | -| Initializers.cs:59:31:59:76 | { ..., ... } | Initializers.cs:59:13:59:76 | ... = ... | | +| Initializers.cs:59:31:59:76 | { ..., ... } | Initializers.cs:59:13:59:27 | access to field DictionaryField | | | Initializers.cs:59:33:59:35 | access to indexer | Initializers.cs:59:33:59:44 | ... = ... | | | Initializers.cs:59:33:59:44 | ... = ... | Initializers.cs:59:48:59:48 | 1 | | | Initializers.cs:59:34:59:34 | 0 | Initializers.cs:59:39:59:44 | "Zero" | | @@ -2331,52 +2349,62 @@ | Initializers.cs:60:65:60:69 | ... + ... | Initializers.cs:60:74:60:78 | "One" | | | Initializers.cs:60:69:60:69 | 1 | Initializers.cs:60:65:60:69 | ... + ... | | | Initializers.cs:60:74:60:78 | "One" | Initializers.cs:60:64:60:70 | access to indexer | | +| Initializers.cs:61:13:61:22 | access to field ArrayField | Initializers.cs:61:13:61:58 | ... = ... | | | Initializers.cs:61:13:61:58 | ... = ... | Initializers.cs:62:30:62:30 | 0 | | -| Initializers.cs:61:26:61:58 | { ..., ... } | Initializers.cs:61:13:61:58 | ... = ... | | +| Initializers.cs:61:26:61:58 | { ..., ... } | Initializers.cs:61:13:61:22 | access to field ArrayField | | +| Initializers.cs:61:28:61:30 | access to array element | Initializers.cs:61:28:61:39 | ... = ... | | | Initializers.cs:61:28:61:39 | ... = ... | Initializers.cs:61:43:61:43 | access to parameter i | | | Initializers.cs:61:29:61:29 | 0 | Initializers.cs:61:34:61:39 | "Zero" | | -| Initializers.cs:61:34:61:39 | "Zero" | Initializers.cs:61:28:61:39 | ... = ... | | +| Initializers.cs:61:34:61:39 | "Zero" | Initializers.cs:61:28:61:30 | access to array element | | +| Initializers.cs:61:42:61:48 | access to array element | Initializers.cs:61:42:61:56 | ... = ... | | | Initializers.cs:61:42:61:56 | ... = ... | Initializers.cs:61:26:61:58 | { ..., ... } | | | Initializers.cs:61:43:61:43 | access to parameter i | Initializers.cs:61:47:61:47 | 1 | | | Initializers.cs:61:43:61:47 | ... + ... | Initializers.cs:61:52:61:56 | "One" | | | Initializers.cs:61:47:61:47 | 1 | Initializers.cs:61:43:61:47 | ... + ... | | -| Initializers.cs:61:52:61:56 | "One" | Initializers.cs:61:42:61:56 | ... = ... | | +| Initializers.cs:61:52:61:56 | "One" | Initializers.cs:61:42:61:48 | access to array element | | +| Initializers.cs:62:13:62:23 | access to field ArrayField2 | Initializers.cs:62:13:62:60 | ... = ... | | | Initializers.cs:62:13:62:60 | ... = ... | Initializers.cs:63:32:63:32 | 1 | | -| Initializers.cs:62:27:62:60 | { ..., ... } | Initializers.cs:62:13:62:60 | ... = ... | | +| Initializers.cs:62:27:62:60 | { ..., ... } | Initializers.cs:62:13:62:23 | access to field ArrayField2 | | +| Initializers.cs:62:29:62:34 | access to array element | Initializers.cs:62:29:62:40 | ... = ... | | | Initializers.cs:62:29:62:40 | ... = ... | Initializers.cs:62:44:62:44 | 1 | | | Initializers.cs:62:30:62:30 | 0 | Initializers.cs:62:33:62:33 | 1 | | | Initializers.cs:62:33:62:33 | 1 | Initializers.cs:62:38:62:40 | "i" | | -| Initializers.cs:62:38:62:40 | "i" | Initializers.cs:62:29:62:40 | ... = ... | | +| Initializers.cs:62:38:62:40 | "i" | Initializers.cs:62:29:62:34 | access to array element | | +| Initializers.cs:62:43:62:52 | access to array element | Initializers.cs:62:43:62:58 | ... = ... | | | Initializers.cs:62:43:62:58 | ... = ... | Initializers.cs:62:27:62:60 | { ..., ... } | | | Initializers.cs:62:44:62:44 | 1 | Initializers.cs:62:47:62:47 | access to parameter i | | | Initializers.cs:62:47:62:47 | access to parameter i | Initializers.cs:62:51:62:51 | 0 | | | Initializers.cs:62:47:62:51 | ... + ... | Initializers.cs:62:56:62:58 | "1" | | | Initializers.cs:62:51:62:51 | 0 | Initializers.cs:62:47:62:51 | ... + ... | | -| Initializers.cs:62:56:62:58 | "1" | Initializers.cs:62:43:62:58 | ... = ... | | +| Initializers.cs:62:56:62:58 | "1" | Initializers.cs:62:43:62:52 | access to array element | | | Initializers.cs:63:13:63:25 | access to property ArrayProperty | Initializers.cs:63:13:63:60 | ... = ... | | | Initializers.cs:63:13:63:60 | ... = ... | Initializers.cs:64:33:64:33 | 0 | | | Initializers.cs:63:29:63:60 | { ..., ... } | Initializers.cs:63:13:63:25 | access to property ArrayProperty | | +| Initializers.cs:63:31:63:33 | access to array element | Initializers.cs:63:31:63:41 | ... = ... | | | Initializers.cs:63:31:63:41 | ... = ... | Initializers.cs:63:45:63:45 | access to parameter i | | | Initializers.cs:63:32:63:32 | 1 | Initializers.cs:63:37:63:41 | "One" | | -| Initializers.cs:63:37:63:41 | "One" | Initializers.cs:63:31:63:41 | ... = ... | | +| Initializers.cs:63:37:63:41 | "One" | Initializers.cs:63:31:63:33 | access to array element | | +| Initializers.cs:63:44:63:50 | access to array element | Initializers.cs:63:44:63:58 | ... = ... | | | Initializers.cs:63:44:63:58 | ... = ... | Initializers.cs:63:29:63:60 | { ..., ... } | | | Initializers.cs:63:45:63:45 | access to parameter i | Initializers.cs:63:49:63:49 | 2 | | | Initializers.cs:63:45:63:49 | ... + ... | Initializers.cs:63:54:63:58 | "Two" | | | Initializers.cs:63:49:63:49 | 2 | Initializers.cs:63:45:63:49 | ... + ... | | -| Initializers.cs:63:54:63:58 | "Two" | Initializers.cs:63:44:63:58 | ... = ... | | +| Initializers.cs:63:54:63:58 | "Two" | Initializers.cs:63:44:63:50 | access to array element | | | Initializers.cs:64:13:64:26 | access to property ArrayProperty2 | Initializers.cs:64:13:64:63 | ... = ... | | | Initializers.cs:64:13:64:63 | ... = ... | Initializers.cs:58:9:65:9 | { ..., ... } | | | Initializers.cs:64:30:64:63 | { ..., ... } | Initializers.cs:64:13:64:26 | access to property ArrayProperty2 | | +| Initializers.cs:64:32:64:37 | access to array element | Initializers.cs:64:32:64:43 | ... = ... | | | Initializers.cs:64:32:64:43 | ... = ... | Initializers.cs:64:47:64:47 | 1 | | | Initializers.cs:64:33:64:33 | 0 | Initializers.cs:64:36:64:36 | 1 | | | Initializers.cs:64:36:64:36 | 1 | Initializers.cs:64:41:64:43 | "i" | | -| Initializers.cs:64:41:64:43 | "i" | Initializers.cs:64:32:64:43 | ... = ... | | +| Initializers.cs:64:41:64:43 | "i" | Initializers.cs:64:32:64:37 | access to array element | | +| Initializers.cs:64:46:64:55 | access to array element | Initializers.cs:64:46:64:61 | ... = ... | | | Initializers.cs:64:46:64:61 | ... = ... | Initializers.cs:64:30:64:63 | { ..., ... } | | | Initializers.cs:64:47:64:47 | 1 | Initializers.cs:64:50:64:50 | access to parameter i | | | Initializers.cs:64:50:64:50 | access to parameter i | Initializers.cs:64:54:64:54 | 0 | | | Initializers.cs:64:50:64:54 | ... + ... | Initializers.cs:64:59:64:61 | "1" | | | Initializers.cs:64:54:64:54 | 0 | Initializers.cs:64:50:64:54 | ... + ... | | -| Initializers.cs:64:59:64:61 | "1" | Initializers.cs:64:46:64:61 | ... = ... | | +| Initializers.cs:64:59:64:61 | "1" | Initializers.cs:64:46:64:55 | access to array element | | | LoopUnrolling.cs:5:7:5:19 | call to constructor Object | LoopUnrolling.cs:5:7:5:19 | {...} | | | LoopUnrolling.cs:5:7:5:19 | call to method | LoopUnrolling.cs:5:7:5:19 | call to constructor Object | | | LoopUnrolling.cs:5:7:5:19 | enter LoopUnrolling | LoopUnrolling.cs:5:7:5:19 | this access | | @@ -2631,9 +2659,10 @@ | MultiImplementationA.cs:11:7:11:8 | enter | MultiImplementationA.cs:13:16:13:16 | this access | | | MultiImplementationA.cs:11:7:11:8 | enter | MultiImplementationB.cs:11:16:11:16 | this access | | | MultiImplementationA.cs:11:7:11:8 | exit (normal) | MultiImplementationA.cs:11:7:11:8 | exit | | +| MultiImplementationA.cs:13:16:13:16 | access to field F | MultiImplementationA.cs:13:16:13:20 | ... = ... | | | MultiImplementationA.cs:13:16:13:16 | this access | MultiImplementationA.cs:13:20:13:20 | 0 | | | MultiImplementationA.cs:13:16:13:20 | ... = ... | MultiImplementationA.cs:24:16:24:16 | this access | | -| MultiImplementationA.cs:13:20:13:20 | 0 | MultiImplementationA.cs:13:16:13:20 | ... = ... | | +| MultiImplementationA.cs:13:20:13:20 | 0 | MultiImplementationA.cs:13:16:13:16 | access to field F | | | MultiImplementationA.cs:14:31:14:31 | access to parameter i | MultiImplementationA.cs:14:31:14:31 | exit get_Item (normal) | | | MultiImplementationA.cs:14:31:14:31 | enter get_Item | MultiImplementationA.cs:14:31:14:31 | access to parameter i | | | MultiImplementationA.cs:14:31:14:31 | enter get_Item | MultiImplementationB.cs:12:37:12:40 | null | | @@ -2666,10 +2695,11 @@ | MultiImplementationA.cs:20:12:20:13 | exit C2 (normal) | MultiImplementationA.cs:20:12:20:13 | exit C2 | | | MultiImplementationA.cs:20:12:20:13 | this access | MultiImplementationA.cs:20:12:20:13 | call to method | | | MultiImplementationA.cs:20:22:20:31 | {...} | MultiImplementationA.cs:20:24:20:29 | ...; | | +| MultiImplementationA.cs:20:24:20:24 | access to field F | MultiImplementationA.cs:20:24:20:28 | ... = ... | | | MultiImplementationA.cs:20:24:20:24 | this access | MultiImplementationA.cs:20:28:20:28 | access to parameter i | | | MultiImplementationA.cs:20:24:20:28 | ... = ... | MultiImplementationA.cs:20:12:20:13 | exit C2 (normal) | | | MultiImplementationA.cs:20:24:20:29 | ...; | MultiImplementationA.cs:20:24:20:24 | this access | | -| MultiImplementationA.cs:20:28:20:28 | access to parameter i | MultiImplementationA.cs:20:24:20:28 | ... = ... | | +| MultiImplementationA.cs:20:28:20:28 | access to parameter i | MultiImplementationA.cs:20:24:20:24 | access to field F | | | MultiImplementationA.cs:21:12:21:13 | enter C2 | MultiImplementationA.cs:21:24:21:24 | 0 | | | MultiImplementationA.cs:21:12:21:13 | enter C2 | MultiImplementationB.cs:19:24:19:24 | 1 | | | MultiImplementationA.cs:21:12:21:13 | exit C2 (normal) | MultiImplementationA.cs:21:12:21:13 | exit C2 | | @@ -2730,9 +2760,10 @@ | MultiImplementationB.cs:4:34:4:34 | 1 | MultiImplementationB.cs:4:27:4:35 | return ...; | | | MultiImplementationB.cs:4:43:4:45 | {...} | MultiImplementationA.cs:7:41:7:43 | exit set_P2 (normal) | | | MultiImplementationB.cs:5:23:5:23 | 2 | MultiImplementationA.cs:8:16:8:16 | exit M (normal) | | +| MultiImplementationB.cs:11:16:11:16 | access to field F | MultiImplementationB.cs:11:16:11:20 | ... = ... | | | MultiImplementationB.cs:11:16:11:16 | this access | MultiImplementationB.cs:11:20:11:20 | 1 | | | MultiImplementationB.cs:11:16:11:20 | ... = ... | MultiImplementationB.cs:22:16:22:16 | this access | | -| MultiImplementationB.cs:11:20:11:20 | 1 | MultiImplementationB.cs:11:16:11:20 | ... = ... | | +| MultiImplementationB.cs:11:20:11:20 | 1 | MultiImplementationB.cs:11:16:11:16 | access to field F | | | MultiImplementationB.cs:12:31:12:40 | throw ... | MultiImplementationA.cs:14:31:14:31 | exit get_Item (abnormal) | exception | | MultiImplementationB.cs:12:37:12:40 | null | MultiImplementationB.cs:12:31:12:40 | throw ... | | | MultiImplementationB.cs:13:40:13:54 | {...} | MultiImplementationB.cs:13:48:13:51 | null | | @@ -2859,9 +2890,10 @@ | PartialImplementationA.cs:3:12:3:18 | exit Partial (normal) | PartialImplementationA.cs:3:12:3:18 | exit Partial | | | PartialImplementationA.cs:3:12:3:18 | this access | PartialImplementationA.cs:3:12:3:18 | call to method | | | PartialImplementationA.cs:3:27:3:29 | {...} | PartialImplementationA.cs:3:12:3:18 | exit Partial (normal) | | +| PartialImplementationB.cs:3:16:3:16 | access to field F | PartialImplementationB.cs:3:16:3:20 | ... = ... | | | PartialImplementationB.cs:3:16:3:16 | this access | PartialImplementationB.cs:3:20:3:20 | 0 | | | PartialImplementationB.cs:3:16:3:20 | ... = ... | PartialImplementationB.cs:5:16:5:16 | this access | | -| PartialImplementationB.cs:3:20:3:20 | 0 | PartialImplementationB.cs:3:16:3:20 | ... = ... | | +| PartialImplementationB.cs:3:20:3:20 | 0 | PartialImplementationB.cs:3:16:3:16 | access to field F | | | PartialImplementationB.cs:4:12:4:18 | call to constructor Object | PartialImplementationB.cs:4:22:4:24 | {...} | | | PartialImplementationB.cs:4:12:4:18 | call to method | PartialImplementationB.cs:4:12:4:18 | call to constructor Object | | | PartialImplementationB.cs:4:12:4:18 | enter Partial | PartialImplementationB.cs:4:12:4:18 | this access | | @@ -3922,20 +3954,22 @@ | cflow.cs:127:62:127:64 | enter set_Prop | cflow.cs:127:66:127:83 | {...} | | | cflow.cs:127:62:127:64 | exit set_Prop (normal) | cflow.cs:127:62:127:64 | exit set_Prop | | | cflow.cs:127:66:127:83 | {...} | cflow.cs:127:68:127:81 | ...; | | +| cflow.cs:127:68:127:72 | access to field Field | cflow.cs:127:68:127:80 | ... = ... | | | cflow.cs:127:68:127:72 | this access | cflow.cs:127:76:127:80 | access to parameter value | | | cflow.cs:127:68:127:80 | ... = ... | cflow.cs:127:62:127:64 | exit set_Prop (normal) | | | cflow.cs:127:68:127:81 | ...; | cflow.cs:127:68:127:72 | this access | | -| cflow.cs:127:76:127:80 | access to parameter value | cflow.cs:127:68:127:80 | ... = ... | | +| cflow.cs:127:76:127:80 | access to parameter value | cflow.cs:127:68:127:72 | access to field Field | | | cflow.cs:129:5:129:15 | call to constructor Object | cflow.cs:130:5:132:5 | {...} | | | cflow.cs:129:5:129:15 | call to method | cflow.cs:129:5:129:15 | call to constructor Object | | | cflow.cs:129:5:129:15 | enter ControlFlow | cflow.cs:129:5:129:15 | this access | | | cflow.cs:129:5:129:15 | exit ControlFlow (normal) | cflow.cs:129:5:129:15 | exit ControlFlow | | | cflow.cs:129:5:129:15 | this access | cflow.cs:129:5:129:15 | call to method | | | cflow.cs:130:5:132:5 | {...} | cflow.cs:131:9:131:18 | ...; | | +| cflow.cs:131:9:131:13 | access to field Field | cflow.cs:131:9:131:17 | ... = ... | | | cflow.cs:131:9:131:13 | this access | cflow.cs:131:17:131:17 | access to parameter s | | | cflow.cs:131:9:131:17 | ... = ... | cflow.cs:129:5:129:15 | exit ControlFlow (normal) | | | cflow.cs:131:9:131:18 | ...; | cflow.cs:131:9:131:13 | this access | | -| cflow.cs:131:17:131:17 | access to parameter s | cflow.cs:131:9:131:17 | ... = ... | | +| cflow.cs:131:17:131:17 | access to parameter s | cflow.cs:131:9:131:13 | access to field Field | | | cflow.cs:134:5:134:15 | enter ControlFlow | cflow.cs:134:31:134:31 | access to parameter i | | | cflow.cs:134:5:134:15 | exit ControlFlow (normal) | cflow.cs:134:5:134:15 | exit ControlFlow | | | cflow.cs:134:26:134:29 | call to constructor ControlFlow | cflow.cs:134:39:134:41 | {...} | | @@ -4163,10 +4197,11 @@ | cflow.cs:209:5:222:5 | {...} | cflow.cs:210:9:221:36 | do ... while (...); | | | cflow.cs:210:9:221:36 | do ... while (...); | cflow.cs:211:9:221:9 | {...} | | | cflow.cs:211:9:221:9 | {...} | cflow.cs:212:13:212:25 | ...; | | +| cflow.cs:212:13:212:17 | access to field Field | cflow.cs:212:13:212:24 | ... = ... | | | cflow.cs:212:13:212:17 | access to field Field | cflow.cs:212:22:212:24 | "a" | | | cflow.cs:212:13:212:17 | this access | cflow.cs:212:13:212:17 | access to field Field | | | cflow.cs:212:13:212:17 | this access | cflow.cs:212:13:212:17 | this access | | -| cflow.cs:212:13:212:24 | ... + ... | cflow.cs:212:13:212:24 | ... = ... | | +| cflow.cs:212:13:212:24 | ... + ... | cflow.cs:212:13:212:17 | access to field Field | | | cflow.cs:212:13:212:24 | ... = ... | cflow.cs:213:13:216:13 | if (...) ... | | | cflow.cs:212:13:212:25 | ...; | cflow.cs:212:13:212:17 | this access | | | cflow.cs:212:22:212:24 | "a" | cflow.cs:212:13:212:24 | ... + ... | | @@ -4204,10 +4239,11 @@ | cflow.cs:226:57:226:59 | "a" | cflow.cs:226:62:226:63 | 10 | | | cflow.cs:226:62:226:63 | 10 | cflow.cs:226:27:226:64 | call to method Repeat | | | cflow.cs:227:9:237:9 | {...} | cflow.cs:228:13:228:23 | ...; | | +| cflow.cs:228:13:228:17 | access to field Field | cflow.cs:228:13:228:22 | ... = ... | | | cflow.cs:228:13:228:17 | access to field Field | cflow.cs:228:22:228:22 | access to local variable x | | | cflow.cs:228:13:228:17 | this access | cflow.cs:228:13:228:17 | access to field Field | | | cflow.cs:228:13:228:17 | this access | cflow.cs:228:13:228:17 | this access | | -| cflow.cs:228:13:228:22 | ... + ... | cflow.cs:228:13:228:22 | ... = ... | | +| cflow.cs:228:13:228:22 | ... + ... | cflow.cs:228:13:228:17 | access to field Field | | | cflow.cs:228:13:228:22 | ... = ... | cflow.cs:229:13:232:13 | if (...) ... | | | cflow.cs:228:13:228:23 | ...; | cflow.cs:228:13:228:17 | this access | | | cflow.cs:228:22:228:22 | access to local variable x | cflow.cs:228:13:228:22 | ... + ... | | diff --git a/csharp/ql/test/library-tests/csharp8/ispatternflow.expected b/csharp/ql/test/library-tests/csharp8/ispatternflow.expected index 553f416cd966..f8d1de5d7e90 100644 --- a/csharp/ql/test/library-tests/csharp8/ispatternflow.expected +++ b/csharp/ql/test/library-tests/csharp8/ispatternflow.expected @@ -6,8 +6,9 @@ | patterns.cs:7:20:7:41 | (...) ... | patterns.cs:7:16:7:41 | Object o = ... | semmle.label | successor | | patterns.cs:7:20:7:41 | object creation of type MyStruct | patterns.cs:7:39:7:39 | 2 | semmle.label | successor | | patterns.cs:7:33:7:41 | { ..., ... } | patterns.cs:7:20:7:41 | (...) ... | semmle.label | successor | +| patterns.cs:7:35:7:35 | access to field X | patterns.cs:7:35:7:39 | ... = ... | semmle.label | successor | | patterns.cs:7:35:7:39 | ... = ... | patterns.cs:7:33:7:41 | { ..., ... } | semmle.label | successor | -| patterns.cs:7:39:7:39 | 2 | patterns.cs:7:35:7:39 | ... = ... | semmle.label | successor | +| patterns.cs:7:39:7:39 | 2 | patterns.cs:7:35:7:35 | access to field X | semmle.label | successor | | patterns.cs:9:9:11:9 | if (...) ... | patterns.cs:9:13:9:13 | access to local variable o | semmle.label | successor | | patterns.cs:9:13:9:13 | access to local variable o | patterns.cs:9:18:9:29 | MyStruct ms1 | semmle.label | successor | | patterns.cs:9:13:9:29 | [false] ... is ... | patterns.cs:13:9:15:9 | if (...) ... | semmle.label | false | diff --git a/csharp/ql/test/library-tests/csharp8/switchexprcontrolflow.expected b/csharp/ql/test/library-tests/csharp8/switchexprcontrolflow.expected index 83438c26f6ee..c6ecf8bcfd98 100644 --- a/csharp/ql/test/library-tests/csharp8/switchexprcontrolflow.expected +++ b/csharp/ql/test/library-tests/csharp8/switchexprcontrolflow.expected @@ -108,8 +108,9 @@ | patterns.cs:125:13:125:38 | MyStruct s = ... | patterns.cs:126:9:132:10 | ... ...; | semmle.label | successor | | patterns.cs:125:17:125:38 | object creation of type MyStruct | patterns.cs:125:36:125:36 | 0 | semmle.label | successor | | patterns.cs:125:30:125:38 | { ..., ... } | patterns.cs:125:13:125:38 | MyStruct s = ... | semmle.label | successor | +| patterns.cs:125:32:125:32 | access to field X | patterns.cs:125:32:125:36 | ... = ... | semmle.label | successor | | patterns.cs:125:32:125:36 | ... = ... | patterns.cs:125:30:125:38 | { ..., ... } | semmle.label | successor | -| patterns.cs:125:36:125:36 | 0 | patterns.cs:125:32:125:36 | ... = ... | semmle.label | successor | +| patterns.cs:125:36:125:36 | 0 | patterns.cs:125:32:125:32 | access to field X | semmle.label | successor | | patterns.cs:126:9:132:10 | ... ...; | patterns.cs:126:17:126:17 | access to local variable s | semmle.label | successor | | patterns.cs:126:13:132:9 | Int32 r = ... | patterns.cs:134:9:148:9 | try {...} ... | semmle.label | successor | | patterns.cs:126:17:126:17 | access to local variable s | patterns.cs:128:13:128:20 | access to type MyStruct | semmle.label | successor | diff --git a/csharp/ql/test/library-tests/csharp8/switchstmtctrlflow.expected b/csharp/ql/test/library-tests/csharp8/switchstmtctrlflow.expected index 64e16c2d7cf6..06e4623611b3 100644 --- a/csharp/ql/test/library-tests/csharp8/switchstmtctrlflow.expected +++ b/csharp/ql/test/library-tests/csharp8/switchstmtctrlflow.expected @@ -5,8 +5,9 @@ | patterns.cs:34:13:34:38 | MyStruct s = ... | patterns.cs:36:9:44:9 | switch (...) {...} | semmle.label | successor | | patterns.cs:34:17:34:38 | object creation of type MyStruct | patterns.cs:34:36:34:36 | 0 | semmle.label | successor | | patterns.cs:34:30:34:38 | { ..., ... } | patterns.cs:34:13:34:38 | MyStruct s = ... | semmle.label | successor | +| patterns.cs:34:32:34:32 | access to field X | patterns.cs:34:32:34:36 | ... = ... | semmle.label | successor | | patterns.cs:34:32:34:36 | ... = ... | patterns.cs:34:30:34:38 | { ..., ... } | semmle.label | successor | -| patterns.cs:34:36:34:36 | 0 | patterns.cs:34:32:34:36 | ... = ... | semmle.label | successor | +| patterns.cs:34:36:34:36 | 0 | patterns.cs:34:32:34:32 | access to field X | semmle.label | successor | | patterns.cs:36:9:44:9 | switch (...) {...} | patterns.cs:36:17:36:17 | access to local variable s | semmle.label | successor | | patterns.cs:36:17:36:17 | access to local variable s | patterns.cs:38:13:38:47 | case ...: | semmle.label | successor | | patterns.cs:38:13:38:47 | case ...: | patterns.cs:38:18:38:29 | MyStruct ms1 | semmle.label | successor | diff --git a/csharp/ql/test/library-tests/dataflow/local/TaintTrackingStep.expected b/csharp/ql/test/library-tests/dataflow/local/TaintTrackingStep.expected index b2d395d4b836..0950638d8306 100644 --- a/csharp/ql/test/library-tests/dataflow/local/TaintTrackingStep.expected +++ b/csharp/ql/test/library-tests/dataflow/local/TaintTrackingStep.expected @@ -1124,6 +1124,7 @@ | Splitting.cs:51:30:51:36 | { ..., ... } | Splitting.cs:51:17:51:36 | array creation of type String[] | | Splitting.cs:51:32:51:34 | "a" | Splitting.cs:51:30:51:36 | { ..., ... } | | Splitting.cs:52:9:52:9 | [post] access to local variable y | Splitting.cs:53:17:53:17 | access to local variable y | +| Splitting.cs:52:9:52:9 | access to local variable y | Splitting.cs:52:9:52:12 | access to array element | | Splitting.cs:52:9:52:9 | access to local variable y | Splitting.cs:53:17:53:17 | access to local variable y | | Splitting.cs:52:16:52:18 | "b" | Splitting.cs:52:9:52:9 | [post] access to local variable y | | Splitting.cs:52:16:52:18 | "b" | Splitting.cs:52:9:52:12 | access to array element | diff --git a/csharp/ql/test/library-tests/dataflow/signanalysis/SignAnalysis.expected b/csharp/ql/test/library-tests/dataflow/signanalysis/SignAnalysis.expected index b0d97c4d6e44..9f87bf59eebc 100644 --- a/csharp/ql/test/library-tests/dataflow/signanalysis/SignAnalysis.expected +++ b/csharp/ql/test/library-tests/dataflow/signanalysis/SignAnalysis.expected @@ -95,6 +95,7 @@ | SignAnalysis.cs:120:9:120:10 | access to field f0 | positive | | SignAnalysis.cs:120:9:120:12 | ...++ | positive | | SignAnalysis.cs:121:34:121:35 | access to field f0 | strictlyPositive | +| SignAnalysis.cs:122:9:122:10 | access to field f0 | positive | | SignAnalysis.cs:129:9:129:16 | ... = ... | strictlyNegative | | SignAnalysis.cs:129:14:129:16 | -... | strictlyNegative | | SignAnalysis.cs:129:15:129:16 | 10 | strictlyPositive | @@ -213,6 +214,7 @@ | SignAnalysis.cs:414:13:414:13 | access to local variable i | strictlyPositive | | SignAnalysis.cs:415:31:415:31 | access to local variable i | strictlyPositive | | SignAnalysis.cs:424:31:424:31 | access to local variable x | strictlyNegative | +| SignAnalysis.cs:428:19:428:19 | access to constant A | strictlyPositive | | SignAnalysis.cs:428:19:428:24 | ... = ... | strictlyPositive | | SignAnalysis.cs:428:23:428:24 | 12 | strictlyPositive | | SignAnalysis.cs:434:38:434:38 | access to local variable i | strictlyNegative | diff --git a/csharp/ql/test/library-tests/obinit/ObInit.expected b/csharp/ql/test/library-tests/obinit/ObInit.expected index 38dd82686801..3d2c7df895fa 100644 --- a/csharp/ql/test/library-tests/obinit/ObInit.expected +++ b/csharp/ql/test/library-tests/obinit/ObInit.expected @@ -6,11 +6,13 @@ call | obinit.cs:9:16:9:16 | call to method | obinit.cs:2:18:2:18 | | obinit.cs:9:16:9:16 | A | | obinit.cs:15:16:15:16 | call to method | obinit.cs:14:18:14:18 | | obinit.cs:15:16:15:16 | B | cfg +| obinit.cs:2:18:2:18 | | obinit.cs:3:13:3:13 | access to field x | obinit.cs:3:13:3:17 | ... = ... | normal | 2 | | obinit.cs:2:18:2:18 | | obinit.cs:3:13:3:13 | this access | obinit.cs:3:17:3:17 | 1 | normal | 0 | -| obinit.cs:2:18:2:18 | | obinit.cs:3:13:3:17 | ... = ... | obinit.cs:5:23:5:23 | this access | normal | 2 | -| obinit.cs:2:18:2:18 | | obinit.cs:3:17:3:17 | 1 | obinit.cs:3:13:3:17 | ... = ... | normal | 1 | -| obinit.cs:2:18:2:18 | | obinit.cs:5:23:5:23 | this access | obinit.cs:5:27:5:34 | "source" | normal | 3 | -| obinit.cs:2:18:2:18 | | obinit.cs:5:27:5:34 | "source" | obinit.cs:5:23:5:34 | ... = ... | normal | 4 | +| obinit.cs:2:18:2:18 | | obinit.cs:3:13:3:17 | ... = ... | obinit.cs:5:23:5:23 | this access | normal | 3 | +| obinit.cs:2:18:2:18 | | obinit.cs:3:17:3:17 | 1 | obinit.cs:3:13:3:13 | access to field x | normal | 1 | +| obinit.cs:2:18:2:18 | | obinit.cs:5:23:5:23 | access to field s | obinit.cs:5:23:5:34 | ... = ... | normal | 6 | +| obinit.cs:2:18:2:18 | | obinit.cs:5:23:5:23 | this access | obinit.cs:5:27:5:34 | "source" | normal | 4 | +| obinit.cs:2:18:2:18 | | obinit.cs:5:27:5:34 | "source" | obinit.cs:5:23:5:23 | access to field s | normal | 5 | | obinit.cs:7:16:7:16 | A | obinit.cs:7:16:7:16 | call to constructor Object | obinit.cs:7:20:7:22 | {...} | normal | 2 | | obinit.cs:7:16:7:16 | A | obinit.cs:7:16:7:16 | call to method | obinit.cs:7:16:7:16 | call to constructor Object | normal | 1 | | obinit.cs:7:16:7:16 | A | obinit.cs:7:16:7:16 | this access | obinit.cs:7:16:7:16 | call to method | normal | 0 | diff --git a/csharp/ql/test/library-tests/standalone/controlflow/cfg.expected b/csharp/ql/test/library-tests/standalone/controlflow/cfg.expected index a42a3c662d4f..d0838ceed01b 100644 --- a/csharp/ql/test/library-tests/standalone/controlflow/cfg.expected +++ b/csharp/ql/test/library-tests/standalone/controlflow/cfg.expected @@ -31,10 +31,12 @@ | ControlFlow.cs:10:9:10:87 | ...; | ControlFlow.cs:10:9:10:86 | Call (unknown target) | | ControlFlow.cs:10:9:10:87 | ...; | ControlFlow.cs:10:9:10:86 | object creation of type | | ControlFlow.cs:10:35:10:86 | { ..., ... } | ControlFlow.cs:5:10:5:10 | exit F (normal) | +| ControlFlow.cs:10:37:10:47 | access to array element | ControlFlow.cs:10:37:10:62 | ... = ... | | ControlFlow.cs:10:37:10:62 | ... = ... | ControlFlow.cs:10:79:10:79 | access to local variable v | -| ControlFlow.cs:10:51:10:62 | access to field Empty | ControlFlow.cs:10:37:10:62 | ... = ... | +| ControlFlow.cs:10:51:10:62 | access to field Empty | ControlFlow.cs:10:37:10:47 | access to array element | +| ControlFlow.cs:10:65:10:75 | access to array element | ControlFlow.cs:10:65:10:84 | ... = ... | | ControlFlow.cs:10:65:10:84 | ... = ... | ControlFlow.cs:10:35:10:86 | { ..., ... } | | ControlFlow.cs:10:79:10:79 | access to local variable v | ControlFlow.cs:10:79:10:84 | Call (unknown target) | | ControlFlow.cs:10:79:10:79 | access to local variable v | ControlFlow.cs:10:79:10:84 | access to property (unknown) | -| ControlFlow.cs:10:79:10:84 | Call (unknown target) | ControlFlow.cs:10:65:10:84 | ... = ... | -| ControlFlow.cs:10:79:10:84 | access to property (unknown) | ControlFlow.cs:10:65:10:84 | ... = ... | +| ControlFlow.cs:10:79:10:84 | Call (unknown target) | ControlFlow.cs:10:65:10:75 | access to array element | +| ControlFlow.cs:10:79:10:84 | access to property (unknown) | ControlFlow.cs:10:65:10:75 | access to array element | From 0bf0cbae8fbff9e5eac811286ed319d731d50ffc Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 14 Jan 2026 13:54:09 +0100 Subject: [PATCH 033/433] C#: Add some null conditional assignments CFG tests. --- .../controlflow/graph/ConditionalAccess.cs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/csharp/ql/test/library-tests/controlflow/graph/ConditionalAccess.cs b/csharp/ql/test/library-tests/controlflow/graph/ConditionalAccess.cs index a03564b529f5..b99e940f88b5 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/ConditionalAccess.cs +++ b/csharp/ql/test/library-tests/controlflow/graph/ConditionalAccess.cs @@ -34,6 +34,25 @@ void M8(bool b, out int i) i = 0; Prop?.Out(out i); } + + string StringProp { get; set; } + int IntField; + string this[int index] + { + get { return null; } + set { } + } + + void M9(ConditionalAccess ca) + { + ca?.IntField = 42; + ca?.StringProp = "Hello"; + ca?[0] = "Set0"; + ca?.Prop?.IntField = 84; + ca?.Prop?.StringProp = "World"; + ca?.IntField -= 1; + ca?.StringProp += "!"; + } } static class Ext From 4ba89230db80291255b3a0b97f135259b580bd0b Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 14 Jan 2026 13:56:20 +0100 Subject: [PATCH 034/433] C#: Update test expected output. --- .../controlflow/graph/BasicBlock.expected | 25 +- .../controlflow/graph/Condition.expected | 17 + .../controlflow/graph/Dominance.expected | 358 +++++++++++++++++- .../graph/EnclosingCallable.expected | 99 ++++- .../controlflow/graph/EntryElement.expected | 61 ++- .../controlflow/graph/ExitElement.expected | 106 +++++- .../controlflow/graph/NodeGraph.expected | 80 +++- .../controlflow/graph/Nodes.expected | 5 +- 8 files changed, 707 insertions(+), 44 deletions(-) diff --git a/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected b/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected index ee6adc184a44..c8603d390c32 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected @@ -244,7 +244,30 @@ | ConditionalAccess.cs:32:10:32:11 | enter M8 | ConditionalAccess.cs:35:9:35:12 | access to property Prop | 8 | | ConditionalAccess.cs:32:10:32:11 | exit M8 (normal) | ConditionalAccess.cs:32:10:32:11 | exit M8 | 2 | | ConditionalAccess.cs:35:9:35:24 | call to method Out | ConditionalAccess.cs:35:9:35:24 | call to method Out | 1 | -| ConditionalAccess.cs:41:26:41:38 | enter CommaJoinWith | ConditionalAccess.cs:41:26:41:38 | exit CommaJoinWith | 8 | +| ConditionalAccess.cs:42:9:42:11 | enter get_Item | ConditionalAccess.cs:42:9:42:11 | exit get_Item | 6 | +| ConditionalAccess.cs:43:9:43:11 | enter set_Item | ConditionalAccess.cs:43:9:43:11 | exit set_Item | 4 | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | 4 | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:46:10:46:11 | exit M9 | 2 | +| ConditionalAccess.cs:48:24:48:25 | 42 | ConditionalAccess.cs:48:12:48:25 | ... = ... | 3 | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | 2 | +| ConditionalAccess.cs:49:26:49:32 | "Hello" | ConditionalAccess.cs:49:12:49:32 | ... = ... | 3 | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:50:9:50:10 | access to parameter ca | 2 | +| ConditionalAccess.cs:50:13:50:13 | 0 | ConditionalAccess.cs:50:12:50:23 | ... = ... | 4 | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:51:9:51:16 | access to property Prop | 1 | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | 2 | +| ConditionalAccess.cs:51:30:51:31 | 84 | ConditionalAccess.cs:51:18:51:31 | ... = ... | 3 | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:52:9:52:16 | access to property Prop | 1 | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | 2 | +| ConditionalAccess.cs:52:32:52:38 | "World" | ConditionalAccess.cs:52:18:52:38 | ... = ... | 3 | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | 1 | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:9:53:20 | access to field IntField | 1 | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | 2 | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:53:12:53:25 | ... = ... | 4 | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | 1 | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | 1 | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | 2 | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:54:12:54:29 | ... = ... | 4 | +| ConditionalAccess.cs:60:26:60:38 | enter CommaJoinWith | ConditionalAccess.cs:60:26:60:38 | exit CommaJoinWith | 8 | | Conditions.cs:1:7:1:16 | enter Conditions | Conditions.cs:1:7:1:16 | exit Conditions | 7 | | Conditions.cs:3:10:3:19 | enter IncrOrDecr | Conditions.cs:5:13:5:15 | access to parameter inc | 4 | | Conditions.cs:3:10:3:19 | exit IncrOrDecr (normal) | Conditions.cs:3:10:3:19 | exit IncrOrDecr | 2 | diff --git a/csharp/ql/test/library-tests/controlflow/graph/Condition.expected b/csharp/ql/test/library-tests/controlflow/graph/Condition.expected index 2c2f3dbb018b..3ef1d481abe8 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/Condition.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/Condition.expected @@ -91,6 +91,23 @@ conditionBlock | ConditionalAccess.cs:23:13:23:38 | Nullable j = ... | ConditionalAccess.cs:25:31:25:31 | access to local variable s | false | | ConditionalAccess.cs:24:17:24:37 | call to method ToString | ConditionalAccess.cs:25:31:25:31 | access to local variable s | false | | ConditionalAccess.cs:32:10:32:11 | enter M8 | ConditionalAccess.cs:35:9:35:24 | call to method Out | false | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:48:24:48:25 | 42 | false | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:49:26:49:32 | "Hello" | false | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:50:13:50:13 | 0 | false | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:51:30:51:31 | 84 | false | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:9:51:16 | access to property Prop | false | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:30:51:31 | 84 | false | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:52:32:52:38 | "World" | false | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:9:52:16 | access to property Prop | false | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:32:52:38 | "World" | false | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:20 | access to field IntField | false | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | false | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:9:53:20 | access to field IntField | false | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:25:53:25 | 1 | false | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | false | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | false | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | false | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:27:54:29 | "!" | false | | Conditions.cs:3:10:3:19 | enter IncrOrDecr | Conditions.cs:6:13:6:16 | ...; | true | | Conditions.cs:7:9:8:16 | if (...) ... | Conditions.cs:7:13:7:16 | [false] !... | true | | Conditions.cs:7:9:8:16 | if (...) ... | Conditions.cs:7:13:7:16 | [true] !... | false | diff --git a/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected b/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected index f048e6d2a39d..db226bef5395 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected @@ -977,13 +977,68 @@ dominance | ConditionalAccess.cs:35:9:35:12 | access to property Prop | ConditionalAccess.cs:35:9:35:24 | call to method Out | | ConditionalAccess.cs:35:9:35:12 | this access | ConditionalAccess.cs:35:9:35:12 | access to property Prop | | ConditionalAccess.cs:35:9:35:25 | ...; | ConditionalAccess.cs:35:9:35:12 | this access | -| ConditionalAccess.cs:41:26:41:38 | enter CommaJoinWith | ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | -| ConditionalAccess.cs:41:26:41:38 | exit CommaJoinWith (normal) | ConditionalAccess.cs:41:26:41:38 | exit CommaJoinWith | -| ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | ConditionalAccess.cs:41:75:41:78 | ", " | -| ConditionalAccess.cs:41:70:41:78 | ... + ... | ConditionalAccess.cs:41:82:41:83 | access to parameter s2 | -| ConditionalAccess.cs:41:70:41:83 | ... + ... | ConditionalAccess.cs:41:26:41:38 | exit CommaJoinWith (normal) | -| ConditionalAccess.cs:41:75:41:78 | ", " | ConditionalAccess.cs:41:70:41:78 | ... + ... | -| ConditionalAccess.cs:41:82:41:83 | access to parameter s2 | ConditionalAccess.cs:41:70:41:83 | ... + ... | +| ConditionalAccess.cs:42:9:42:11 | enter get_Item | ConditionalAccess.cs:42:13:42:28 | {...} | +| ConditionalAccess.cs:42:9:42:11 | exit get_Item (normal) | ConditionalAccess.cs:42:9:42:11 | exit get_Item | +| ConditionalAccess.cs:42:13:42:28 | {...} | ConditionalAccess.cs:42:22:42:25 | null | +| ConditionalAccess.cs:42:15:42:26 | return ...; | ConditionalAccess.cs:42:9:42:11 | exit get_Item (normal) | +| ConditionalAccess.cs:42:22:42:25 | null | ConditionalAccess.cs:42:15:42:26 | return ...; | +| ConditionalAccess.cs:43:9:43:11 | enter set_Item | ConditionalAccess.cs:43:13:43:15 | {...} | +| ConditionalAccess.cs:43:9:43:11 | exit set_Item (normal) | ConditionalAccess.cs:43:9:43:11 | exit set_Item | +| ConditionalAccess.cs:43:13:43:15 | {...} | ConditionalAccess.cs:43:9:43:11 | exit set_Item (normal) | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:47:5:55:5 | {...} | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:46:10:46:11 | exit M9 | +| ConditionalAccess.cs:47:5:55:5 | {...} | ConditionalAccess.cs:48:9:48:26 | ...; | +| ConditionalAccess.cs:48:9:48:10 | access to parameter ca | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:48:9:48:10 | access to parameter ca | ConditionalAccess.cs:49:9:49:33 | ...; | +| ConditionalAccess.cs:48:9:48:20 | access to field IntField | ConditionalAccess.cs:48:12:48:25 | ... = ... | +| ConditionalAccess.cs:48:9:48:26 | ...; | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | +| ConditionalAccess.cs:48:24:48:25 | 42 | ConditionalAccess.cs:48:9:48:20 | access to field IntField | +| ConditionalAccess.cs:49:9:49:10 | access to parameter ca | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:49:9:49:10 | access to parameter ca | ConditionalAccess.cs:50:9:50:24 | ...; | +| ConditionalAccess.cs:49:9:49:22 | access to property StringProp | ConditionalAccess.cs:49:12:49:32 | ... = ... | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | +| ConditionalAccess.cs:49:26:49:32 | "Hello" | ConditionalAccess.cs:49:9:49:22 | access to property StringProp | +| ConditionalAccess.cs:50:9:50:10 | access to parameter ca | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:50:9:50:10 | access to parameter ca | ConditionalAccess.cs:51:9:51:32 | ...; | +| ConditionalAccess.cs:50:9:50:14 | access to indexer | ConditionalAccess.cs:50:12:50:23 | ... = ... | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:50:9:50:10 | access to parameter ca | +| ConditionalAccess.cs:50:13:50:13 | 0 | ConditionalAccess.cs:50:18:50:23 | "Set0" | +| ConditionalAccess.cs:50:18:50:23 | "Set0" | ConditionalAccess.cs:50:9:50:14 | access to indexer | +| ConditionalAccess.cs:51:9:51:10 | access to parameter ca | ConditionalAccess.cs:51:9:51:16 | access to property Prop | +| ConditionalAccess.cs:51:9:51:10 | access to parameter ca | ConditionalAccess.cs:52:9:52:39 | ...; | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:51:9:51:26 | access to field IntField | ConditionalAccess.cs:51:18:51:31 | ... = ... | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | +| ConditionalAccess.cs:51:30:51:31 | 84 | ConditionalAccess.cs:51:9:51:26 | access to field IntField | +| ConditionalAccess.cs:52:9:52:10 | access to parameter ca | ConditionalAccess.cs:52:9:52:16 | access to property Prop | +| ConditionalAccess.cs:52:9:52:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:26 | ...; | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:52:9:52:28 | access to property StringProp | ConditionalAccess.cs:52:18:52:38 | ... = ... | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | +| ConditionalAccess.cs:52:32:52:38 | "World" | ConditionalAccess.cs:52:9:52:28 | access to property StringProp | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:30 | ...; | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:12:53:25 | ... = ... | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:12:53:25 | ... - ... | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:53:12:53:25 | ... - ... | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:12:54:29 | ... = ... | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:12:54:29 | ... + ... | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:54:12:54:29 | ... + ... | +| ConditionalAccess.cs:60:26:60:38 | enter CommaJoinWith | ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | +| ConditionalAccess.cs:60:26:60:38 | exit CommaJoinWith (normal) | ConditionalAccess.cs:60:26:60:38 | exit CommaJoinWith | +| ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | ConditionalAccess.cs:60:75:60:78 | ", " | +| ConditionalAccess.cs:60:70:60:78 | ... + ... | ConditionalAccess.cs:60:82:60:83 | access to parameter s2 | +| ConditionalAccess.cs:60:70:60:83 | ... + ... | ConditionalAccess.cs:60:26:60:38 | exit CommaJoinWith (normal) | +| ConditionalAccess.cs:60:75:60:78 | ", " | ConditionalAccess.cs:60:70:60:78 | ... + ... | +| ConditionalAccess.cs:60:82:60:83 | access to parameter s2 | ConditionalAccess.cs:60:70:60:83 | ... + ... | | Conditions.cs:1:7:1:16 | call to constructor Object | Conditions.cs:1:7:1:16 | {...} | | Conditions.cs:1:7:1:16 | call to method | Conditions.cs:1:7:1:16 | call to constructor Object | | Conditions.cs:1:7:1:16 | enter Conditions | Conditions.cs:1:7:1:16 | this access | @@ -4874,13 +4929,68 @@ postDominance | ConditionalAccess.cs:35:9:35:12 | access to property Prop | ConditionalAccess.cs:35:9:35:12 | this access | | ConditionalAccess.cs:35:9:35:12 | this access | ConditionalAccess.cs:35:9:35:25 | ...; | | ConditionalAccess.cs:35:9:35:25 | ...; | ConditionalAccess.cs:34:9:34:13 | ... = ... | -| ConditionalAccess.cs:41:26:41:38 | exit CommaJoinWith | ConditionalAccess.cs:41:26:41:38 | exit CommaJoinWith (normal) | -| ConditionalAccess.cs:41:26:41:38 | exit CommaJoinWith (normal) | ConditionalAccess.cs:41:70:41:83 | ... + ... | -| ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | ConditionalAccess.cs:41:26:41:38 | enter CommaJoinWith | -| ConditionalAccess.cs:41:70:41:78 | ... + ... | ConditionalAccess.cs:41:75:41:78 | ", " | -| ConditionalAccess.cs:41:70:41:83 | ... + ... | ConditionalAccess.cs:41:82:41:83 | access to parameter s2 | -| ConditionalAccess.cs:41:75:41:78 | ", " | ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | -| ConditionalAccess.cs:41:82:41:83 | access to parameter s2 | ConditionalAccess.cs:41:70:41:78 | ... + ... | +| ConditionalAccess.cs:42:9:42:11 | exit get_Item | ConditionalAccess.cs:42:9:42:11 | exit get_Item (normal) | +| ConditionalAccess.cs:42:9:42:11 | exit get_Item (normal) | ConditionalAccess.cs:42:15:42:26 | return ...; | +| ConditionalAccess.cs:42:13:42:28 | {...} | ConditionalAccess.cs:42:9:42:11 | enter get_Item | +| ConditionalAccess.cs:42:15:42:26 | return ...; | ConditionalAccess.cs:42:22:42:25 | null | +| ConditionalAccess.cs:42:22:42:25 | null | ConditionalAccess.cs:42:13:42:28 | {...} | +| ConditionalAccess.cs:43:9:43:11 | exit set_Item | ConditionalAccess.cs:43:9:43:11 | exit set_Item (normal) | +| ConditionalAccess.cs:43:9:43:11 | exit set_Item (normal) | ConditionalAccess.cs:43:13:43:15 | {...} | +| ConditionalAccess.cs:43:13:43:15 | {...} | ConditionalAccess.cs:43:9:43:11 | enter set_Item | +| ConditionalAccess.cs:46:10:46:11 | exit M9 | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:54:12:54:29 | ... = ... | +| ConditionalAccess.cs:47:5:55:5 | {...} | ConditionalAccess.cs:46:10:46:11 | enter M9 | +| ConditionalAccess.cs:48:9:48:10 | access to parameter ca | ConditionalAccess.cs:48:9:48:26 | ...; | +| ConditionalAccess.cs:48:9:48:20 | access to field IntField | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:48:9:48:26 | ...; | ConditionalAccess.cs:47:5:55:5 | {...} | +| ConditionalAccess.cs:48:12:48:25 | ... = ... | ConditionalAccess.cs:48:9:48:20 | access to field IntField | +| ConditionalAccess.cs:49:9:49:10 | access to parameter ca | ConditionalAccess.cs:49:9:49:33 | ...; | +| ConditionalAccess.cs:49:9:49:22 | access to property StringProp | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:48:12:48:25 | ... = ... | +| ConditionalAccess.cs:49:12:49:32 | ... = ... | ConditionalAccess.cs:49:9:49:22 | access to property StringProp | +| ConditionalAccess.cs:50:9:50:10 | access to parameter ca | ConditionalAccess.cs:50:9:50:24 | ...; | +| ConditionalAccess.cs:50:9:50:14 | access to indexer | ConditionalAccess.cs:50:18:50:23 | "Set0" | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:49:12:49:32 | ... = ... | +| ConditionalAccess.cs:50:12:50:23 | ... = ... | ConditionalAccess.cs:50:9:50:14 | access to indexer | +| ConditionalAccess.cs:50:18:50:23 | "Set0" | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:51:9:51:10 | access to parameter ca | ConditionalAccess.cs:51:9:51:32 | ...; | +| ConditionalAccess.cs:51:9:51:26 | access to field IntField | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:50:9:50:10 | access to parameter ca | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:50:12:50:23 | ... = ... | +| ConditionalAccess.cs:51:18:51:31 | ... = ... | ConditionalAccess.cs:51:9:51:26 | access to field IntField | +| ConditionalAccess.cs:52:9:52:10 | access to parameter ca | ConditionalAccess.cs:52:9:52:39 | ...; | +| ConditionalAccess.cs:52:9:52:28 | access to property StringProp | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:51:9:51:16 | access to property Prop | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:51:18:51:31 | ... = ... | +| ConditionalAccess.cs:52:18:52:38 | ... = ... | ConditionalAccess.cs:52:9:52:28 | access to property StringProp | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:26 | ...; | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:12:53:25 | ... - ... | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:52:9:52:16 | access to property Prop | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:52:18:52:38 | ... = ... | +| ConditionalAccess.cs:53:12:53:25 | ... - ... | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:53:12:53:25 | ... = ... | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:30 | ...; | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:12:54:29 | ... + ... | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:53:12:53:25 | ... = ... | +| ConditionalAccess.cs:54:12:54:29 | ... + ... | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:54:12:54:29 | ... = ... | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:60:26:60:38 | exit CommaJoinWith | ConditionalAccess.cs:60:26:60:38 | exit CommaJoinWith (normal) | +| ConditionalAccess.cs:60:26:60:38 | exit CommaJoinWith (normal) | ConditionalAccess.cs:60:70:60:83 | ... + ... | +| ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | ConditionalAccess.cs:60:26:60:38 | enter CommaJoinWith | +| ConditionalAccess.cs:60:70:60:78 | ... + ... | ConditionalAccess.cs:60:75:60:78 | ", " | +| ConditionalAccess.cs:60:70:60:83 | ... + ... | ConditionalAccess.cs:60:82:60:83 | access to parameter s2 | +| ConditionalAccess.cs:60:75:60:78 | ", " | ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | +| ConditionalAccess.cs:60:82:60:83 | access to parameter s2 | ConditionalAccess.cs:60:70:60:78 | ... + ... | | Conditions.cs:1:7:1:16 | call to constructor Object | Conditions.cs:1:7:1:16 | call to method | | Conditions.cs:1:7:1:16 | call to method | Conditions.cs:1:7:1:16 | this access | | Conditions.cs:1:7:1:16 | exit Conditions | Conditions.cs:1:7:1:16 | exit Conditions (normal) | @@ -8877,7 +8987,127 @@ blockDominance | ConditionalAccess.cs:32:10:32:11 | enter M8 | ConditionalAccess.cs:35:9:35:24 | call to method Out | | ConditionalAccess.cs:32:10:32:11 | exit M8 (normal) | ConditionalAccess.cs:32:10:32:11 | exit M8 (normal) | | ConditionalAccess.cs:35:9:35:24 | call to method Out | ConditionalAccess.cs:35:9:35:24 | call to method Out | -| ConditionalAccess.cs:41:26:41:38 | enter CommaJoinWith | ConditionalAccess.cs:41:26:41:38 | enter CommaJoinWith | +| ConditionalAccess.cs:42:9:42:11 | enter get_Item | ConditionalAccess.cs:42:9:42:11 | enter get_Item | +| ConditionalAccess.cs:43:9:43:11 | enter set_Item | ConditionalAccess.cs:43:9:43:11 | enter set_Item | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:46:10:46:11 | enter M9 | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:49:9:49:33 | ...; | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:50:9:50:24 | ...; | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:51:9:51:16 | access to property Prop | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:51:9:51:32 | ...; | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:52:9:52:16 | access to property Prop | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:52:9:52:39 | ...; | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:53:9:53:26 | ...; | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:54:9:54:30 | ...; | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | +| ConditionalAccess.cs:48:24:48:25 | 42 | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:49:9:49:33 | ...; | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:50:9:50:24 | ...; | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:51:9:51:16 | access to property Prop | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:51:9:51:32 | ...; | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:52:9:52:16 | access to property Prop | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:52:9:52:39 | ...; | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:53:9:53:26 | ...; | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:54:9:54:30 | ...; | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:49:26:49:32 | "Hello" | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:50:9:50:24 | ...; | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:51:9:51:16 | access to property Prop | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:51:9:51:32 | ...; | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:52:9:52:16 | access to property Prop | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:52:9:52:39 | ...; | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:53:9:53:26 | ...; | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:54:9:54:30 | ...; | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:50:13:50:13 | 0 | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:51:9:51:16 | access to property Prop | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:9:51:16 | access to property Prop | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:9:51:32 | ...; | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:52:9:52:16 | access to property Prop | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:52:9:52:39 | ...; | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:53:9:53:26 | ...; | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:54:9:54:30 | ...; | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:51:30:51:31 | 84 | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:52:9:52:16 | access to property Prop | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:9:52:16 | access to property Prop | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:9:52:39 | ...; | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:53:9:53:26 | ...; | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:54:9:54:30 | ...; | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:52:32:52:38 | "World" | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:9:53:26 | ...; | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:54:9:54:30 | ...; | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:9:54:30 | ...; | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:60:26:60:38 | enter CommaJoinWith | ConditionalAccess.cs:60:26:60:38 | enter CommaJoinWith | | Conditions.cs:1:7:1:16 | enter Conditions | Conditions.cs:1:7:1:16 | enter Conditions | | Conditions.cs:3:10:3:19 | enter IncrOrDecr | Conditions.cs:3:10:3:19 | enter IncrOrDecr | | Conditions.cs:3:10:3:19 | enter IncrOrDecr | Conditions.cs:3:10:3:19 | exit IncrOrDecr (normal) | @@ -12682,7 +12912,103 @@ postBlockDominance | ConditionalAccess.cs:32:10:32:11 | exit M8 (normal) | ConditionalAccess.cs:32:10:32:11 | exit M8 (normal) | | ConditionalAccess.cs:32:10:32:11 | exit M8 (normal) | ConditionalAccess.cs:35:9:35:24 | call to method Out | | ConditionalAccess.cs:35:9:35:24 | call to method Out | ConditionalAccess.cs:35:9:35:24 | call to method Out | -| ConditionalAccess.cs:41:26:41:38 | enter CommaJoinWith | ConditionalAccess.cs:41:26:41:38 | enter CommaJoinWith | +| ConditionalAccess.cs:42:9:42:11 | enter get_Item | ConditionalAccess.cs:42:9:42:11 | enter get_Item | +| ConditionalAccess.cs:43:9:43:11 | enter set_Item | ConditionalAccess.cs:43:9:43:11 | enter set_Item | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:46:10:46:11 | enter M9 | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:46:10:46:11 | enter M9 | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:49:9:49:33 | ...; | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:50:9:50:24 | ...; | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:51:9:51:16 | access to property Prop | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:51:9:51:32 | ...; | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:52:9:52:16 | access to property Prop | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:52:9:52:39 | ...; | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:53:9:53:26 | ...; | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:54:9:54:30 | ...; | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:48:24:48:25 | 42 | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:46:10:46:11 | enter M9 | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:49:9:49:33 | ...; | +| ConditionalAccess.cs:49:26:49:32 | "Hello" | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:46:10:46:11 | enter M9 | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:49:9:49:33 | ...; | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:50:9:50:24 | ...; | +| ConditionalAccess.cs:50:13:50:13 | 0 | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:51:9:51:16 | access to property Prop | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:46:10:46:11 | enter M9 | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:49:9:49:33 | ...; | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:50:9:50:24 | ...; | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:9:51:32 | ...; | +| ConditionalAccess.cs:51:30:51:31 | 84 | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:52:9:52:16 | access to property Prop | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:46:10:46:11 | enter M9 | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:49:9:49:33 | ...; | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:50:9:50:24 | ...; | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:51:9:51:16 | access to property Prop | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:51:9:51:32 | ...; | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:9:52:39 | ...; | +| ConditionalAccess.cs:52:32:52:38 | "World" | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:46:10:46:11 | enter M9 | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:49:9:49:33 | ...; | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:50:9:50:24 | ...; | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:51:9:51:16 | access to property Prop | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:51:9:51:32 | ...; | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:52:9:52:16 | access to property Prop | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:52:9:52:39 | ...; | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:9:53:26 | ...; | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:46:10:46:11 | enter M9 | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:49:9:49:33 | ...; | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:50:9:50:24 | ...; | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:51:9:51:16 | access to property Prop | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:51:9:51:32 | ...; | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:52:9:52:16 | access to property Prop | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:52:9:52:39 | ...; | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:53:9:53:20 | access to field IntField | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:53:9:53:26 | ...; | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:9:54:30 | ...; | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:60:26:60:38 | enter CommaJoinWith | ConditionalAccess.cs:60:26:60:38 | enter CommaJoinWith | | Conditions.cs:1:7:1:16 | enter Conditions | Conditions.cs:1:7:1:16 | enter Conditions | | Conditions.cs:3:10:3:19 | enter IncrOrDecr | Conditions.cs:3:10:3:19 | enter IncrOrDecr | | Conditions.cs:3:10:3:19 | exit IncrOrDecr (normal) | Conditions.cs:3:10:3:19 | enter IncrOrDecr | diff --git a/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected b/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected index 527b6eb9bca1..5c182890e05f 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected @@ -1077,14 +1077,72 @@ nodeEnclosing | ConditionalAccess.cs:35:9:35:12 | this access | ConditionalAccess.cs:32:10:32:11 | M8 | | ConditionalAccess.cs:35:9:35:24 | call to method Out | ConditionalAccess.cs:32:10:32:11 | M8 | | ConditionalAccess.cs:35:9:35:25 | ...; | ConditionalAccess.cs:32:10:32:11 | M8 | -| ConditionalAccess.cs:41:26:41:38 | enter CommaJoinWith | ConditionalAccess.cs:41:26:41:38 | CommaJoinWith | -| ConditionalAccess.cs:41:26:41:38 | exit CommaJoinWith | ConditionalAccess.cs:41:26:41:38 | CommaJoinWith | -| ConditionalAccess.cs:41:26:41:38 | exit CommaJoinWith (normal) | ConditionalAccess.cs:41:26:41:38 | CommaJoinWith | -| ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | ConditionalAccess.cs:41:26:41:38 | CommaJoinWith | -| ConditionalAccess.cs:41:70:41:78 | ... + ... | ConditionalAccess.cs:41:26:41:38 | CommaJoinWith | -| ConditionalAccess.cs:41:70:41:83 | ... + ... | ConditionalAccess.cs:41:26:41:38 | CommaJoinWith | -| ConditionalAccess.cs:41:75:41:78 | ", " | ConditionalAccess.cs:41:26:41:38 | CommaJoinWith | -| ConditionalAccess.cs:41:82:41:83 | access to parameter s2 | ConditionalAccess.cs:41:26:41:38 | CommaJoinWith | +| ConditionalAccess.cs:42:9:42:11 | enter get_Item | ConditionalAccess.cs:42:9:42:11 | get_Item | +| ConditionalAccess.cs:42:9:42:11 | exit get_Item | ConditionalAccess.cs:42:9:42:11 | get_Item | +| ConditionalAccess.cs:42:9:42:11 | exit get_Item (normal) | ConditionalAccess.cs:42:9:42:11 | get_Item | +| ConditionalAccess.cs:42:13:42:28 | {...} | ConditionalAccess.cs:42:9:42:11 | get_Item | +| ConditionalAccess.cs:42:15:42:26 | return ...; | ConditionalAccess.cs:42:9:42:11 | get_Item | +| ConditionalAccess.cs:42:22:42:25 | null | ConditionalAccess.cs:42:9:42:11 | get_Item | +| ConditionalAccess.cs:43:9:43:11 | enter set_Item | ConditionalAccess.cs:43:9:43:11 | set_Item | +| ConditionalAccess.cs:43:9:43:11 | exit set_Item | ConditionalAccess.cs:43:9:43:11 | set_Item | +| ConditionalAccess.cs:43:9:43:11 | exit set_Item (normal) | ConditionalAccess.cs:43:9:43:11 | set_Item | +| ConditionalAccess.cs:43:13:43:15 | {...} | ConditionalAccess.cs:43:9:43:11 | set_Item | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:46:10:46:11 | exit M9 | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:47:5:55:5 | {...} | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:48:9:48:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:48:9:48:20 | access to field IntField | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:48:9:48:26 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:48:12:48:25 | ... = ... | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:48:24:48:25 | 42 | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:49:9:49:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:49:9:49:22 | access to property StringProp | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:49:12:49:32 | ... = ... | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:49:26:49:32 | "Hello" | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:50:9:50:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:50:9:50:14 | access to indexer | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:50:12:50:23 | ... = ... | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:50:13:50:13 | 0 | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:50:18:50:23 | "Set0" | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:51:9:51:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:51:9:51:26 | access to field IntField | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:51:18:51:31 | ... = ... | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:51:30:51:31 | 84 | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:52:9:52:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:52:9:52:28 | access to property StringProp | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:52:18:52:38 | ... = ... | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:52:32:52:38 | "World" | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:53:12:53:25 | ... - ... | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:53:12:53:25 | ... = ... | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:54:12:54:29 | ... + ... | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:54:12:54:29 | ... = ... | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:60:26:60:38 | enter CommaJoinWith | ConditionalAccess.cs:60:26:60:38 | CommaJoinWith | +| ConditionalAccess.cs:60:26:60:38 | exit CommaJoinWith | ConditionalAccess.cs:60:26:60:38 | CommaJoinWith | +| ConditionalAccess.cs:60:26:60:38 | exit CommaJoinWith (normal) | ConditionalAccess.cs:60:26:60:38 | CommaJoinWith | +| ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | ConditionalAccess.cs:60:26:60:38 | CommaJoinWith | +| ConditionalAccess.cs:60:70:60:78 | ... + ... | ConditionalAccess.cs:60:26:60:38 | CommaJoinWith | +| ConditionalAccess.cs:60:70:60:83 | ... + ... | ConditionalAccess.cs:60:26:60:38 | CommaJoinWith | +| ConditionalAccess.cs:60:75:60:78 | ", " | ConditionalAccess.cs:60:26:60:38 | CommaJoinWith | +| ConditionalAccess.cs:60:82:60:83 | access to parameter s2 | ConditionalAccess.cs:60:26:60:38 | CommaJoinWith | | Conditions.cs:1:7:1:16 | call to constructor Object | Conditions.cs:1:7:1:16 | Conditions | | Conditions.cs:1:7:1:16 | call to method | Conditions.cs:1:7:1:16 | Conditions | | Conditions.cs:1:7:1:16 | enter Conditions | Conditions.cs:1:7:1:16 | Conditions | @@ -4557,7 +4615,30 @@ blockEnclosing | ConditionalAccess.cs:32:10:32:11 | enter M8 | ConditionalAccess.cs:32:10:32:11 | M8 | | ConditionalAccess.cs:32:10:32:11 | exit M8 (normal) | ConditionalAccess.cs:32:10:32:11 | M8 | | ConditionalAccess.cs:35:9:35:24 | call to method Out | ConditionalAccess.cs:32:10:32:11 | M8 | -| ConditionalAccess.cs:41:26:41:38 | enter CommaJoinWith | ConditionalAccess.cs:41:26:41:38 | CommaJoinWith | +| ConditionalAccess.cs:42:9:42:11 | enter get_Item | ConditionalAccess.cs:42:9:42:11 | get_Item | +| ConditionalAccess.cs:43:9:43:11 | enter set_Item | ConditionalAccess.cs:43:9:43:11 | set_Item | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:48:24:48:25 | 42 | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:49:26:49:32 | "Hello" | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:50:13:50:13 | 0 | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:51:30:51:31 | 84 | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:52:32:52:38 | "World" | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:46:10:46:11 | M9 | +| ConditionalAccess.cs:60:26:60:38 | enter CommaJoinWith | ConditionalAccess.cs:60:26:60:38 | CommaJoinWith | | Conditions.cs:1:7:1:16 | enter Conditions | Conditions.cs:1:7:1:16 | Conditions | | Conditions.cs:3:10:3:19 | enter IncrOrDecr | Conditions.cs:3:10:3:19 | IncrOrDecr | | Conditions.cs:3:10:3:19 | exit IncrOrDecr (normal) | Conditions.cs:3:10:3:19 | IncrOrDecr | diff --git a/csharp/ql/test/library-tests/controlflow/graph/EntryElement.expected b/csharp/ql/test/library-tests/controlflow/graph/EntryElement.expected index da8fe4664f52..6074e670aac1 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/EntryElement.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/EntryElement.expected @@ -896,11 +896,62 @@ | ConditionalAccess.cs:35:9:35:12 | this access | ConditionalAccess.cs:35:9:35:12 | this access | | ConditionalAccess.cs:35:9:35:24 | call to method Out | ConditionalAccess.cs:35:9:35:12 | this access | | ConditionalAccess.cs:35:9:35:25 | ...; | ConditionalAccess.cs:35:9:35:25 | ...; | -| ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | -| ConditionalAccess.cs:41:70:41:78 | ... + ... | ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | -| ConditionalAccess.cs:41:70:41:83 | ... + ... | ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | -| ConditionalAccess.cs:41:75:41:78 | ", " | ConditionalAccess.cs:41:75:41:78 | ", " | -| ConditionalAccess.cs:41:82:41:83 | access to parameter s2 | ConditionalAccess.cs:41:82:41:83 | access to parameter s2 | +| ConditionalAccess.cs:42:13:42:28 | {...} | ConditionalAccess.cs:42:13:42:28 | {...} | +| ConditionalAccess.cs:42:15:42:26 | return ...; | ConditionalAccess.cs:42:22:42:25 | null | +| ConditionalAccess.cs:42:22:42:25 | null | ConditionalAccess.cs:42:22:42:25 | null | +| ConditionalAccess.cs:43:13:43:15 | {...} | ConditionalAccess.cs:43:13:43:15 | {...} | +| ConditionalAccess.cs:47:5:55:5 | {...} | ConditionalAccess.cs:47:5:55:5 | {...} | +| ConditionalAccess.cs:48:9:48:10 | access to parameter ca | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | +| ConditionalAccess.cs:48:9:48:20 | access to field IntField | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | +| ConditionalAccess.cs:48:9:48:26 | ...; | ConditionalAccess.cs:48:9:48:26 | ...; | +| ConditionalAccess.cs:48:12:48:25 | ... = ... | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | +| ConditionalAccess.cs:48:24:48:25 | 42 | ConditionalAccess.cs:48:24:48:25 | 42 | +| ConditionalAccess.cs:49:9:49:10 | access to parameter ca | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | +| ConditionalAccess.cs:49:9:49:22 | access to property StringProp | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:49:9:49:33 | ...; | +| ConditionalAccess.cs:49:12:49:32 | ... = ... | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | +| ConditionalAccess.cs:49:26:49:32 | "Hello" | ConditionalAccess.cs:49:26:49:32 | "Hello" | +| ConditionalAccess.cs:50:9:50:10 | access to parameter ca | ConditionalAccess.cs:50:9:50:10 | access to parameter ca | +| ConditionalAccess.cs:50:9:50:14 | access to indexer | ConditionalAccess.cs:50:9:50:10 | access to parameter ca | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:50:9:50:24 | ...; | +| ConditionalAccess.cs:50:12:50:23 | ... = ... | ConditionalAccess.cs:50:9:50:10 | access to parameter ca | +| ConditionalAccess.cs:50:13:50:13 | 0 | ConditionalAccess.cs:50:13:50:13 | 0 | +| ConditionalAccess.cs:50:18:50:23 | "Set0" | ConditionalAccess.cs:50:18:50:23 | "Set0" | +| ConditionalAccess.cs:51:9:51:10 | access to parameter ca | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | +| ConditionalAccess.cs:51:9:51:26 | access to field IntField | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:9:51:32 | ...; | +| ConditionalAccess.cs:51:18:51:31 | ... = ... | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | +| ConditionalAccess.cs:51:30:51:31 | 84 | ConditionalAccess.cs:51:30:51:31 | 84 | +| ConditionalAccess.cs:52:9:52:10 | access to parameter ca | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | +| ConditionalAccess.cs:52:9:52:28 | access to property StringProp | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:9:52:39 | ...; | +| ConditionalAccess.cs:52:18:52:38 | ... = ... | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | +| ConditionalAccess.cs:52:32:52:38 | "World" | ConditionalAccess.cs:52:32:52:38 | "World" | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:9:53:26 | ...; | +| ConditionalAccess.cs:53:12:53:25 | ... - ... | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:12:53:25 | ... -= ... | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:12:53:25 | ... = ... | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:53:25:53:25 | 1 | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:9:54:30 | ...; | +| ConditionalAccess.cs:54:12:54:29 | ... + ... | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:12:54:29 | ... += ... | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:12:54:29 | ... = ... | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:54:27:54:29 | "!" | +| ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | +| ConditionalAccess.cs:60:70:60:78 | ... + ... | ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | +| ConditionalAccess.cs:60:70:60:83 | ... + ... | ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | +| ConditionalAccess.cs:60:75:60:78 | ", " | ConditionalAccess.cs:60:75:60:78 | ", " | +| ConditionalAccess.cs:60:82:60:83 | access to parameter s2 | ConditionalAccess.cs:60:82:60:83 | access to parameter s2 | | Conditions.cs:1:7:1:16 | call to constructor Object | Conditions.cs:1:7:1:16 | call to constructor Object | | Conditions.cs:1:7:1:16 | call to method | Conditions.cs:1:7:1:16 | this access | | Conditions.cs:1:7:1:16 | this access | Conditions.cs:1:7:1:16 | this access | diff --git a/csharp/ql/test/library-tests/controlflow/graph/ExitElement.expected b/csharp/ql/test/library-tests/controlflow/graph/ExitElement.expected index e3d13701cffd..9e57759b274b 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/ExitElement.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/ExitElement.expected @@ -1080,11 +1080,107 @@ | ConditionalAccess.cs:35:9:35:24 | call to method Out | ConditionalAccess.cs:35:9:35:24 | call to method Out | normal | | ConditionalAccess.cs:35:9:35:25 | ...; | ConditionalAccess.cs:35:9:35:12 | access to property Prop | null | | ConditionalAccess.cs:35:9:35:25 | ...; | ConditionalAccess.cs:35:9:35:24 | call to method Out | normal | -| ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | normal | -| ConditionalAccess.cs:41:70:41:78 | ... + ... | ConditionalAccess.cs:41:70:41:78 | ... + ... | normal | -| ConditionalAccess.cs:41:70:41:83 | ... + ... | ConditionalAccess.cs:41:70:41:83 | ... + ... | normal | -| ConditionalAccess.cs:41:75:41:78 | ", " | ConditionalAccess.cs:41:75:41:78 | ", " | normal | -| ConditionalAccess.cs:41:82:41:83 | access to parameter s2 | ConditionalAccess.cs:41:82:41:83 | access to parameter s2 | normal | +| ConditionalAccess.cs:42:13:42:28 | {...} | ConditionalAccess.cs:42:15:42:26 | return ...; | return | +| ConditionalAccess.cs:42:15:42:26 | return ...; | ConditionalAccess.cs:42:15:42:26 | return ...; | return | +| ConditionalAccess.cs:42:22:42:25 | null | ConditionalAccess.cs:42:22:42:25 | null | normal | +| ConditionalAccess.cs:43:13:43:15 | {...} | ConditionalAccess.cs:43:13:43:15 | {...} | normal | +| ConditionalAccess.cs:47:5:55:5 | {...} | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | null | +| ConditionalAccess.cs:47:5:55:5 | {...} | ConditionalAccess.cs:54:12:54:29 | ... = ... | normal | +| ConditionalAccess.cs:48:9:48:10 | access to parameter ca | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:48:9:48:10 | access to parameter ca | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | null | +| ConditionalAccess.cs:48:9:48:20 | access to field IntField | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:48:9:48:20 | access to field IntField | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | null | +| ConditionalAccess.cs:48:9:48:26 | ...; | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | null | +| ConditionalAccess.cs:48:9:48:26 | ...; | ConditionalAccess.cs:48:12:48:25 | ... = ... | normal | +| ConditionalAccess.cs:48:12:48:25 | ... = ... | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | null | +| ConditionalAccess.cs:48:12:48:25 | ... = ... | ConditionalAccess.cs:48:12:48:25 | ... = ... | normal | +| ConditionalAccess.cs:48:24:48:25 | 42 | ConditionalAccess.cs:48:24:48:25 | 42 | normal | +| ConditionalAccess.cs:49:9:49:10 | access to parameter ca | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:49:9:49:10 | access to parameter ca | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | null | +| ConditionalAccess.cs:49:9:49:22 | access to property StringProp | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:49:9:49:22 | access to property StringProp | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | null | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | null | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:49:12:49:32 | ... = ... | normal | +| ConditionalAccess.cs:49:12:49:32 | ... = ... | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | null | +| ConditionalAccess.cs:49:12:49:32 | ... = ... | ConditionalAccess.cs:49:12:49:32 | ... = ... | normal | +| ConditionalAccess.cs:49:26:49:32 | "Hello" | ConditionalAccess.cs:49:26:49:32 | "Hello" | normal | +| ConditionalAccess.cs:50:9:50:10 | access to parameter ca | ConditionalAccess.cs:50:9:50:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:50:9:50:10 | access to parameter ca | ConditionalAccess.cs:50:9:50:10 | access to parameter ca | null | +| ConditionalAccess.cs:50:9:50:14 | access to indexer | ConditionalAccess.cs:50:9:50:10 | access to parameter ca | null | +| ConditionalAccess.cs:50:9:50:14 | access to indexer | ConditionalAccess.cs:50:13:50:13 | 0 | normal | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:50:9:50:10 | access to parameter ca | null | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:50:12:50:23 | ... = ... | normal | +| ConditionalAccess.cs:50:12:50:23 | ... = ... | ConditionalAccess.cs:50:9:50:10 | access to parameter ca | null | +| ConditionalAccess.cs:50:12:50:23 | ... = ... | ConditionalAccess.cs:50:12:50:23 | ... = ... | normal | +| ConditionalAccess.cs:50:13:50:13 | 0 | ConditionalAccess.cs:50:13:50:13 | 0 | normal | +| ConditionalAccess.cs:50:18:50:23 | "Set0" | ConditionalAccess.cs:50:18:50:23 | "Set0" | normal | +| ConditionalAccess.cs:51:9:51:10 | access to parameter ca | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:51:9:51:10 | access to parameter ca | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | null | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | null | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:51:9:51:16 | access to property Prop | non-null | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:51:9:51:16 | access to property Prop | null | +| ConditionalAccess.cs:51:9:51:26 | access to field IntField | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | null | +| ConditionalAccess.cs:51:9:51:26 | access to field IntField | ConditionalAccess.cs:51:9:51:16 | access to property Prop | non-null | +| ConditionalAccess.cs:51:9:51:26 | access to field IntField | ConditionalAccess.cs:51:9:51:16 | access to property Prop | null | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | null | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:9:51:16 | access to property Prop | null | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:18:51:31 | ... = ... | normal | +| ConditionalAccess.cs:51:18:51:31 | ... = ... | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | null | +| ConditionalAccess.cs:51:18:51:31 | ... = ... | ConditionalAccess.cs:51:9:51:16 | access to property Prop | null | +| ConditionalAccess.cs:51:18:51:31 | ... = ... | ConditionalAccess.cs:51:18:51:31 | ... = ... | normal | +| ConditionalAccess.cs:51:30:51:31 | 84 | ConditionalAccess.cs:51:30:51:31 | 84 | normal | +| ConditionalAccess.cs:52:9:52:10 | access to parameter ca | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:52:9:52:10 | access to parameter ca | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | null | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | null | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:52:9:52:16 | access to property Prop | non-null | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:52:9:52:16 | access to property Prop | null | +| ConditionalAccess.cs:52:9:52:28 | access to property StringProp | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | null | +| ConditionalAccess.cs:52:9:52:28 | access to property StringProp | ConditionalAccess.cs:52:9:52:16 | access to property Prop | non-null | +| ConditionalAccess.cs:52:9:52:28 | access to property StringProp | ConditionalAccess.cs:52:9:52:16 | access to property Prop | null | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | null | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:9:52:16 | access to property Prop | null | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:18:52:38 | ... = ... | normal | +| ConditionalAccess.cs:52:18:52:38 | ... = ... | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | null | +| ConditionalAccess.cs:52:18:52:38 | ... = ... | ConditionalAccess.cs:52:9:52:16 | access to property Prop | null | +| ConditionalAccess.cs:52:18:52:38 | ... = ... | ConditionalAccess.cs:52:18:52:38 | ... = ... | normal | +| ConditionalAccess.cs:52:32:52:38 | "World" | ConditionalAccess.cs:52:32:52:38 | "World" | normal | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | null | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | null | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | null | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | null | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:9:53:20 | access to field IntField | normal | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | null | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:12:53:25 | ... = ... | normal | +| ConditionalAccess.cs:53:12:53:25 | ... - ... | ConditionalAccess.cs:53:12:53:25 | ... - ... | normal | +| ConditionalAccess.cs:53:12:53:25 | ... -= ... | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | null | +| ConditionalAccess.cs:53:12:53:25 | ... -= ... | ConditionalAccess.cs:53:12:53:25 | ... = ... | normal | +| ConditionalAccess.cs:53:12:53:25 | ... = ... | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | null | +| ConditionalAccess.cs:53:12:53:25 | ... = ... | ConditionalAccess.cs:53:12:53:25 | ... = ... | normal | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:53:25:53:25 | 1 | normal | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | null | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | null | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | null | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | null | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | normal | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | null | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:12:54:29 | ... = ... | normal | +| ConditionalAccess.cs:54:12:54:29 | ... + ... | ConditionalAccess.cs:54:12:54:29 | ... + ... | normal | +| ConditionalAccess.cs:54:12:54:29 | ... += ... | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | null | +| ConditionalAccess.cs:54:12:54:29 | ... += ... | ConditionalAccess.cs:54:12:54:29 | ... = ... | normal | +| ConditionalAccess.cs:54:12:54:29 | ... = ... | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | null | +| ConditionalAccess.cs:54:12:54:29 | ... = ... | ConditionalAccess.cs:54:12:54:29 | ... = ... | normal | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:54:27:54:29 | "!" | normal | +| ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | normal | +| ConditionalAccess.cs:60:70:60:78 | ... + ... | ConditionalAccess.cs:60:70:60:78 | ... + ... | normal | +| ConditionalAccess.cs:60:70:60:83 | ... + ... | ConditionalAccess.cs:60:70:60:83 | ... + ... | normal | +| ConditionalAccess.cs:60:75:60:78 | ", " | ConditionalAccess.cs:60:75:60:78 | ", " | normal | +| ConditionalAccess.cs:60:82:60:83 | access to parameter s2 | ConditionalAccess.cs:60:82:60:83 | access to parameter s2 | normal | | Conditions.cs:1:7:1:16 | call to constructor Object | Conditions.cs:1:7:1:16 | call to constructor Object | normal | | Conditions.cs:1:7:1:16 | call to method | Conditions.cs:1:7:1:16 | call to method | normal | | Conditions.cs:1:7:1:16 | this access | Conditions.cs:1:7:1:16 | this access | normal | diff --git a/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected b/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected index 4f74842f4534..e119b9281364 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected @@ -1099,13 +1099,79 @@ | ConditionalAccess.cs:35:9:35:12 | this access | ConditionalAccess.cs:35:9:35:12 | access to property Prop | | | ConditionalAccess.cs:35:9:35:24 | call to method Out | ConditionalAccess.cs:32:10:32:11 | exit M8 (normal) | | | ConditionalAccess.cs:35:9:35:25 | ...; | ConditionalAccess.cs:35:9:35:12 | this access | | -| ConditionalAccess.cs:41:26:41:38 | enter CommaJoinWith | ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | | -| ConditionalAccess.cs:41:26:41:38 | exit CommaJoinWith (normal) | ConditionalAccess.cs:41:26:41:38 | exit CommaJoinWith | | -| ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | ConditionalAccess.cs:41:75:41:78 | ", " | | -| ConditionalAccess.cs:41:70:41:78 | ... + ... | ConditionalAccess.cs:41:82:41:83 | access to parameter s2 | | -| ConditionalAccess.cs:41:70:41:83 | ... + ... | ConditionalAccess.cs:41:26:41:38 | exit CommaJoinWith (normal) | | -| ConditionalAccess.cs:41:75:41:78 | ", " | ConditionalAccess.cs:41:70:41:78 | ... + ... | | -| ConditionalAccess.cs:41:82:41:83 | access to parameter s2 | ConditionalAccess.cs:41:70:41:83 | ... + ... | | +| ConditionalAccess.cs:42:9:42:11 | enter get_Item | ConditionalAccess.cs:42:13:42:28 | {...} | | +| ConditionalAccess.cs:42:9:42:11 | exit get_Item (normal) | ConditionalAccess.cs:42:9:42:11 | exit get_Item | | +| ConditionalAccess.cs:42:13:42:28 | {...} | ConditionalAccess.cs:42:22:42:25 | null | | +| ConditionalAccess.cs:42:15:42:26 | return ...; | ConditionalAccess.cs:42:9:42:11 | exit get_Item (normal) | return | +| ConditionalAccess.cs:42:22:42:25 | null | ConditionalAccess.cs:42:15:42:26 | return ...; | | +| ConditionalAccess.cs:43:9:43:11 | enter set_Item | ConditionalAccess.cs:43:13:43:15 | {...} | | +| ConditionalAccess.cs:43:9:43:11 | exit set_Item (normal) | ConditionalAccess.cs:43:9:43:11 | exit set_Item | | +| ConditionalAccess.cs:43:13:43:15 | {...} | ConditionalAccess.cs:43:9:43:11 | exit set_Item (normal) | | +| ConditionalAccess.cs:46:10:46:11 | enter M9 | ConditionalAccess.cs:47:5:55:5 | {...} | | +| ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | ConditionalAccess.cs:46:10:46:11 | exit M9 | | +| ConditionalAccess.cs:47:5:55:5 | {...} | ConditionalAccess.cs:48:9:48:26 | ...; | | +| ConditionalAccess.cs:48:9:48:10 | access to parameter ca | ConditionalAccess.cs:48:24:48:25 | 42 | non-null | +| ConditionalAccess.cs:48:9:48:10 | access to parameter ca | ConditionalAccess.cs:49:9:49:33 | ...; | null | +| ConditionalAccess.cs:48:9:48:20 | access to field IntField | ConditionalAccess.cs:48:12:48:25 | ... = ... | | +| ConditionalAccess.cs:48:9:48:26 | ...; | ConditionalAccess.cs:48:9:48:10 | access to parameter ca | | +| ConditionalAccess.cs:48:12:48:25 | ... = ... | ConditionalAccess.cs:49:9:49:33 | ...; | | +| ConditionalAccess.cs:48:24:48:25 | 42 | ConditionalAccess.cs:48:9:48:20 | access to field IntField | | +| ConditionalAccess.cs:49:9:49:10 | access to parameter ca | ConditionalAccess.cs:49:26:49:32 | "Hello" | non-null | +| ConditionalAccess.cs:49:9:49:10 | access to parameter ca | ConditionalAccess.cs:50:9:50:24 | ...; | null | +| ConditionalAccess.cs:49:9:49:22 | access to property StringProp | ConditionalAccess.cs:49:12:49:32 | ... = ... | | +| ConditionalAccess.cs:49:9:49:33 | ...; | ConditionalAccess.cs:49:9:49:10 | access to parameter ca | | +| ConditionalAccess.cs:49:12:49:32 | ... = ... | ConditionalAccess.cs:50:9:50:24 | ...; | | +| ConditionalAccess.cs:49:26:49:32 | "Hello" | ConditionalAccess.cs:49:9:49:22 | access to property StringProp | | +| ConditionalAccess.cs:50:9:50:10 | access to parameter ca | ConditionalAccess.cs:50:13:50:13 | 0 | non-null | +| ConditionalAccess.cs:50:9:50:10 | access to parameter ca | ConditionalAccess.cs:51:9:51:32 | ...; | null | +| ConditionalAccess.cs:50:9:50:14 | access to indexer | ConditionalAccess.cs:50:12:50:23 | ... = ... | | +| ConditionalAccess.cs:50:9:50:24 | ...; | ConditionalAccess.cs:50:9:50:10 | access to parameter ca | | +| ConditionalAccess.cs:50:12:50:23 | ... = ... | ConditionalAccess.cs:51:9:51:32 | ...; | | +| ConditionalAccess.cs:50:13:50:13 | 0 | ConditionalAccess.cs:50:18:50:23 | "Set0" | | +| ConditionalAccess.cs:50:18:50:23 | "Set0" | ConditionalAccess.cs:50:9:50:14 | access to indexer | | +| ConditionalAccess.cs:51:9:51:10 | access to parameter ca | ConditionalAccess.cs:51:9:51:16 | access to property Prop | non-null | +| ConditionalAccess.cs:51:9:51:10 | access to parameter ca | ConditionalAccess.cs:52:9:52:39 | ...; | null | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:51:30:51:31 | 84 | non-null | +| ConditionalAccess.cs:51:9:51:16 | access to property Prop | ConditionalAccess.cs:52:9:52:39 | ...; | null | +| ConditionalAccess.cs:51:9:51:26 | access to field IntField | ConditionalAccess.cs:51:18:51:31 | ... = ... | | +| ConditionalAccess.cs:51:9:51:32 | ...; | ConditionalAccess.cs:51:9:51:10 | access to parameter ca | | +| ConditionalAccess.cs:51:18:51:31 | ... = ... | ConditionalAccess.cs:52:9:52:39 | ...; | | +| ConditionalAccess.cs:51:30:51:31 | 84 | ConditionalAccess.cs:51:9:51:26 | access to field IntField | | +| ConditionalAccess.cs:52:9:52:10 | access to parameter ca | ConditionalAccess.cs:52:9:52:16 | access to property Prop | non-null | +| ConditionalAccess.cs:52:9:52:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:26 | ...; | null | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:52:32:52:38 | "World" | non-null | +| ConditionalAccess.cs:52:9:52:16 | access to property Prop | ConditionalAccess.cs:53:9:53:26 | ...; | null | +| ConditionalAccess.cs:52:9:52:28 | access to property StringProp | ConditionalAccess.cs:52:18:52:38 | ... = ... | | +| ConditionalAccess.cs:52:9:52:39 | ...; | ConditionalAccess.cs:52:9:52:10 | access to parameter ca | | +| ConditionalAccess.cs:52:18:52:38 | ... = ... | ConditionalAccess.cs:53:9:53:26 | ...; | | +| ConditionalAccess.cs:52:32:52:38 | "World" | ConditionalAccess.cs:52:9:52:28 | access to property StringProp | | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:9:53:20 | access to field IntField | non-null | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:53:25:53:25 | 1 | null | +| ConditionalAccess.cs:53:9:53:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:30 | ...; | null | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:12:53:25 | ... = ... | | +| ConditionalAccess.cs:53:9:53:20 | access to field IntField | ConditionalAccess.cs:53:25:53:25 | 1 | | +| ConditionalAccess.cs:53:9:53:26 | ...; | ConditionalAccess.cs:53:9:53:10 | access to parameter ca | | +| ConditionalAccess.cs:53:12:53:25 | ... - ... | ConditionalAccess.cs:53:9:53:20 | access to field IntField | | +| ConditionalAccess.cs:53:12:53:25 | ... = ... | ConditionalAccess.cs:54:9:54:30 | ...; | | +| ConditionalAccess.cs:53:25:53:25 | 1 | ConditionalAccess.cs:53:12:53:25 | ... - ... | | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | null | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | non-null | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | non-null | +| ConditionalAccess.cs:54:9:54:10 | access to parameter ca | ConditionalAccess.cs:54:27:54:29 | "!" | null | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:12:54:29 | ... = ... | | +| ConditionalAccess.cs:54:9:54:22 | access to property StringProp | ConditionalAccess.cs:54:27:54:29 | "!" | | +| ConditionalAccess.cs:54:9:54:30 | ...; | ConditionalAccess.cs:54:9:54:10 | access to parameter ca | | +| ConditionalAccess.cs:54:12:54:29 | ... + ... | ConditionalAccess.cs:54:9:54:22 | access to property StringProp | | +| ConditionalAccess.cs:54:12:54:29 | ... = ... | ConditionalAccess.cs:46:10:46:11 | exit M9 (normal) | | +| ConditionalAccess.cs:54:27:54:29 | "!" | ConditionalAccess.cs:54:12:54:29 | ... + ... | | +| ConditionalAccess.cs:60:26:60:38 | enter CommaJoinWith | ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | | +| ConditionalAccess.cs:60:26:60:38 | exit CommaJoinWith (normal) | ConditionalAccess.cs:60:26:60:38 | exit CommaJoinWith | | +| ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | ConditionalAccess.cs:60:75:60:78 | ", " | | +| ConditionalAccess.cs:60:70:60:78 | ... + ... | ConditionalAccess.cs:60:82:60:83 | access to parameter s2 | | +| ConditionalAccess.cs:60:70:60:83 | ... + ... | ConditionalAccess.cs:60:26:60:38 | exit CommaJoinWith (normal) | | +| ConditionalAccess.cs:60:75:60:78 | ", " | ConditionalAccess.cs:60:70:60:78 | ... + ... | | +| ConditionalAccess.cs:60:82:60:83 | access to parameter s2 | ConditionalAccess.cs:60:70:60:83 | ... + ... | | | Conditions.cs:1:7:1:16 | call to constructor Object | Conditions.cs:1:7:1:16 | {...} | | | Conditions.cs:1:7:1:16 | call to method | Conditions.cs:1:7:1:16 | call to constructor Object | | | Conditions.cs:1:7:1:16 | enter Conditions | Conditions.cs:1:7:1:16 | this access | | diff --git a/csharp/ql/test/library-tests/controlflow/graph/Nodes.expected b/csharp/ql/test/library-tests/controlflow/graph/Nodes.expected index aff874814619..460d4d09054c 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/Nodes.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/Nodes.expected @@ -58,7 +58,10 @@ | ConditionalAccess.cs:21:10:21:11 | M7 | ConditionalAccess.cs:22:5:26:5 | {...} | | ConditionalAccess.cs:30:10:30:12 | Out | ConditionalAccess.cs:30:32:30:32 | 0 | | ConditionalAccess.cs:32:10:32:11 | M8 | ConditionalAccess.cs:33:5:36:5 | {...} | -| ConditionalAccess.cs:41:26:41:38 | CommaJoinWith | ConditionalAccess.cs:41:70:41:71 | access to parameter s1 | +| ConditionalAccess.cs:42:9:42:11 | get_Item | ConditionalAccess.cs:42:13:42:28 | {...} | +| ConditionalAccess.cs:43:9:43:11 | set_Item | ConditionalAccess.cs:43:13:43:15 | {...} | +| ConditionalAccess.cs:46:10:46:11 | M9 | ConditionalAccess.cs:47:5:55:5 | {...} | +| ConditionalAccess.cs:60:26:60:38 | CommaJoinWith | ConditionalAccess.cs:60:70:60:71 | access to parameter s1 | | Conditions.cs:1:7:1:16 | Conditions | Conditions.cs:1:7:1:16 | this access | | Conditions.cs:3:10:3:19 | IncrOrDecr | Conditions.cs:4:5:9:5 | {...} | | Conditions.cs:11:9:11:10 | M1 | Conditions.cs:12:5:20:5 | {...} | From f0135e93c5a5368527042a83a43cfdd323e33e8f Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 14 Jan 2026 14:27:46 +0100 Subject: [PATCH 035/433] C#: Add a tests for MaybeNullExpr. --- .../dataflow/nullness/MaybeNullExpr.cs | 21 +++++++++++++++++++ .../dataflow/nullness/maybeNullExpr.expected | 6 ++++++ .../dataflow/nullness/maybeNullExpr.ql | 6 ++++++ .../library-tests/dataflow/nullness/options | 2 ++ 4 files changed, 35 insertions(+) create mode 100644 csharp/ql/test/library-tests/dataflow/nullness/MaybeNullExpr.cs create mode 100644 csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.expected create mode 100644 csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.ql create mode 100644 csharp/ql/test/library-tests/dataflow/nullness/options diff --git a/csharp/ql/test/library-tests/dataflow/nullness/MaybeNullExpr.cs b/csharp/ql/test/library-tests/dataflow/nullness/MaybeNullExpr.cs new file mode 100644 index 000000000000..34c59df8bbd0 --- /dev/null +++ b/csharp/ql/test/library-tests/dataflow/nullness/MaybeNullExpr.cs @@ -0,0 +1,21 @@ +using System; + +public class C +{ + string Prop { get; set; } + + void M(object o, bool b) + { + // Conditional expr might be null. + var conditionalExpr = b ? new object() : null; + + // Null-coalescing expr might be null as the right operand is null. + var nullCoalescing = o ?? null; + + // Cast might be null. + var c = o as C; + + // Conditional access might be null as the qualifier might be null. + var s1 = (o as C)?.Prop; + } +} diff --git a/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.expected b/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.expected new file mode 100644 index 000000000000..4d8b00dd90ca --- /dev/null +++ b/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.expected @@ -0,0 +1,6 @@ +| MaybeNullExpr.cs:10:31:10:53 | ... ? ... : ... | +| MaybeNullExpr.cs:10:50:10:53 | null | +| MaybeNullExpr.cs:13:30:13:38 | ... ?? ... | +| MaybeNullExpr.cs:13:35:13:38 | null | +| MaybeNullExpr.cs:16:17:16:22 | ... as ... | +| MaybeNullExpr.cs:19:19:19:24 | ... as ... | diff --git a/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.ql b/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.ql new file mode 100644 index 000000000000..3b5531ccb3a9 --- /dev/null +++ b/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.ql @@ -0,0 +1,6 @@ +import csharp +import semmle.code.csharp.dataflow.Nullness + +from MaybeNullExpr e +where e.fromSource() +select e diff --git a/csharp/ql/test/library-tests/dataflow/nullness/options b/csharp/ql/test/library-tests/dataflow/nullness/options new file mode 100644 index 000000000000..75c39b4541ba --- /dev/null +++ b/csharp/ql/test/library-tests/dataflow/nullness/options @@ -0,0 +1,2 @@ +semmle-extractor-options: /nostdlib /noconfig +semmle-extractor-options: --load-sources-from-project:${testdir}/../../../resources/stubs/_frameworks/Microsoft.NETCore.App/Microsoft.NETCore.App.csproj From 5942edf2d9a23303020bf55183557841b6c4f1fd Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 7 Jan 2026 15:22:11 +0100 Subject: [PATCH 036/433] C#: Take null conditional assignments into account in MaybeNullExpr. --- csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll index 6a211e71f456..756fd6a4e3a0 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll @@ -43,6 +43,12 @@ private Expr maybeNullExpr(Expr reason) { ) or result.(NullCoalescingExpr).getRightOperand() = maybeNullExpr(reason) + or + result = + any(QualifiableExpr qe | + qe.isConditional() and + qe.getQualifier() = maybeNullExpr(reason) + ) } /** An expression that may be `null`. */ From ab432ec2e93b0e7b8832b23ddb5c218767866c4b Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 14 Jan 2026 14:34:44 +0100 Subject: [PATCH 037/433] C#: Update test expected output. --- .../test/library-tests/dataflow/nullness/maybeNullExpr.expected | 1 + 1 file changed, 1 insertion(+) diff --git a/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.expected b/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.expected index 4d8b00dd90ca..e5aa8423c59a 100644 --- a/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.expected +++ b/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.expected @@ -3,4 +3,5 @@ | MaybeNullExpr.cs:13:30:13:38 | ... ?? ... | | MaybeNullExpr.cs:13:35:13:38 | null | | MaybeNullExpr.cs:16:17:16:22 | ... as ... | +| MaybeNullExpr.cs:19:18:19:31 | access to property Prop | | MaybeNullExpr.cs:19:19:19:24 | ... as ... | From 812fdbe412edd5b7c92b5ac3bd73d3426c08b377 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 14 Jan 2026 14:40:05 +0100 Subject: [PATCH 038/433] C#: Add change-note. --- .../change-notes/2026-01-14-null-conditional-assignments.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 csharp/ql/lib/change-notes/2026-01-14-null-conditional-assignments.md diff --git a/csharp/ql/lib/change-notes/2026-01-14-null-conditional-assignments.md b/csharp/ql/lib/change-notes/2026-01-14-null-conditional-assignments.md new file mode 100644 index 000000000000..ebce4c187e02 --- /dev/null +++ b/csharp/ql/lib/change-notes/2026-01-14-null-conditional-assignments.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* C# 14: Support for null-conditional assignments (such as `c?.Prop = p`). Furthermore, the `MaybeNullExpr` class now takes null-conditional access (such as `?.`) into account when modeling potential null values. From 3d988e8e94d8f1f1506bfbb24e8879e2065ae05e Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Thu, 15 Jan 2026 17:10:24 +0100 Subject: [PATCH 039/433] C#: Add field access for out assignments in the CFG. --- .../internal/ControlFlowGraphImpl.qll | 89 +++++++++++++++++++ 1 file changed, 89 insertions(+) diff --git a/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll b/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll index 288e2c4d8ffc..77a88fb8c6a0 100644 --- a/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll +++ b/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll @@ -430,6 +430,7 @@ module Expressions { not this instanceof ArrayCreation and not this instanceof QualifiedWriteAccess and not this instanceof QualifiedAccessorWrite and + not this instanceof QualifiedAccessorWriteOutParam and not this instanceof NoNodeExpr and not this instanceof SwitchExpr and not this instanceof SwitchCaseExpr and @@ -491,6 +492,93 @@ module Expressions { } } + /** + * An expression that writes via an accessor in an `out` parameter, for example `s = M(out x.Field)`, + * where `Field` is a field. + * + * Note that `ref` parameters are not included here as they are considered reads before the call. + * Ideally, we would model `ref` parameters as both reads and writes, but that is not currently supported. + * + * Accessor writes need special attention, because we need to model that the + * access is written after the method call. + * + * In the example above, this means we want a CFG that looks like + * + * ```csharp + * x -> call M -> x.Field -> s = M(out x.Field) + * ``` + */ + private class QualifiedAccessorWriteOutParam extends PostOrderTree instanceof Expr { + QualifiedAccessorWriteOutParam() { + exists(AssignableDefinitions::OutRefDefinition def | + def.getExpr() = this and + def.getTargetAccess() instanceof QualifiableExpr and + def.getTargetAccess().isOutArgument() + ) + } + + private QualifiableExpr getOutAccess(int i) { + result = + rank[i + 1](AssignableDefinitions::OutRefDefinition def | + def.getExpr() = this and + def.getTargetAccess() instanceof QualifiableExpr and + def.getTargetAccess().isOutArgument() + | + def order by def.getIndex() + ).getTargetAccess() + } + + private QualifiableExpr getLastOutAccess() { + exists(int last | + result = this.getOutAccess(last) and + not exists(this.getOutAccess(last + 1)) + ) + } + + final override predicate propagatesAbnormal(AstNode child) { child = getExprChild(this, _) } + + final override predicate first(AstNode first) { + first(getExprChild(this, 0), first) + or + not exists(getExprChild(this, 0)) and + first = this + } + + final override predicate last(AstNode last, Completion c) { + // The last ast node is the last out writeaccess. + // Completion from the call itself is propagated (required for eg. conditions). + last = this.getLastOutAccess() and + c.isValidFor(this) + } + + final override predicate succ(AstNode pred, AstNode succ, Completion c) { + exists(int i | + last(getExprChild(this, i), pred, c) and + c instanceof NormalCompletion + | + // Post-order: flow from last element of last child to element itself + i = max(int j | exists(getExprChild(this, j))) and + succ = this + or + // Standard left-to-right evaluation + first(getExprChild(this, i + 1), succ) + ) + or + // Flow from this element to the first write access. + pred = this and + succ = this.getOutAccess(0) and + c.isValidFor(pred) and + c instanceof NormalCompletion + or + // Flow from one access to the next + exists(int i | pred = this.getOutAccess(i) | + succ = this.getOutAccess(i + 1) and + c.isValidFor(pred) and + c instanceof NormalCompletion + ) + } + } + /** * An expression that writes via an accessor, for example `x.Prop = 0`, * where `Prop` is a property. @@ -516,6 +604,7 @@ module Expressions { QualifiedAccessorWrite() { def.getExpr() = this and def.getTargetAccess().(WriteAccess) instanceof QualifiableExpr and + not def instanceof AssignableDefinitions::OutRefDefinition and not this instanceof AssignOperationWithExpandedAssignment } From bd1c6e6352f5bff39f27bc17e07b78a144cfeb31 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Thu, 15 Jan 2026 18:43:01 +0100 Subject: [PATCH 040/433] C#: Exclude the field access cases from missing argument call. --- csharp/ql/consistency-queries/DataFlowConsistency.ql | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/csharp/ql/consistency-queries/DataFlowConsistency.ql b/csharp/ql/consistency-queries/DataFlowConsistency.ql index 638bace38922..f9049068a7fc 100644 --- a/csharp/ql/consistency-queries/DataFlowConsistency.ql +++ b/csharp/ql/consistency-queries/DataFlowConsistency.ql @@ -60,6 +60,12 @@ private module Input implements InputSig { qe.isConditional() and qe.getQualifier() = arg.asExpr() ) + or + // TODO: Remove once underlying issue is fixed + exists(AssignableDefinitions::OutRefDefinition def | + def.getTargetAccess().(QualifiableExpr) = arg.asExpr() and + def.getTargetAccess().isOutArgument() + ) } predicate multipleArgumentCallExclude(ArgumentNode arg, DataFlowCall call) { From 86198e3c4366b787bef16d712803cb8dbef17240 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Fri, 16 Jan 2026 11:53:36 +0100 Subject: [PATCH 041/433] C#: Add tests for out writeacceses. --- .../controlflow/graph/Assignments.cs | 22 +++++ .../controlflow/graph/BasicBlock.expected | 3 + .../controlflow/graph/Dominance.expected | 90 +++++++++++++++++++ .../graph/EnclosingCallable.expected | 48 ++++++++++ .../controlflow/graph/EntryElement.expected | 36 ++++++++ .../controlflow/graph/ExitElement.expected | 36 ++++++++ .../controlflow/graph/NodeGraph.expected | 42 +++++++++ .../controlflow/graph/Nodes.expected | 3 + 8 files changed, 280 insertions(+) diff --git a/csharp/ql/test/library-tests/controlflow/graph/Assignments.cs b/csharp/ql/test/library-tests/controlflow/graph/Assignments.cs index bb8a645427ec..e967904c80cc 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/Assignments.cs +++ b/csharp/ql/test/library-tests/controlflow/graph/Assignments.cs @@ -21,4 +21,26 @@ void M() delegate void EventHandler(object sender, object e); event EventHandler Event; + int IntField; + string StringField; + + void SetParamSingle(out int x) + { + x = 42; + } + + void SetParamMulti(out int x, object o, out string y) + { + x = 42; + y = "Hello"; + } + + void M2() + { + int x1; + SetParamSingle(out x1); + SetParamSingle(out IntField); + SetParamMulti(out var y, null, out StringField); + SetParamMulti(out IntField, null, out StringField); + } } diff --git a/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected b/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected index c8603d390c32..30f2b1051551 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/BasicBlock.expected @@ -167,6 +167,9 @@ | Assignments.cs:3:10:3:10 | enter M | Assignments.cs:3:10:3:10 | exit M | 34 | | Assignments.cs:14:18:14:35 | enter (...) => ... | Assignments.cs:14:18:14:35 | exit (...) => ... | 4 | | Assignments.cs:17:40:17:40 | enter + | Assignments.cs:17:40:17:40 | exit + | 6 | +| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:27:10:27:23 | exit SetParamSingle | 7 | +| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:32:10:32:22 | exit SetParamMulti | 10 | +| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:38:10:38:11 | exit M2 | 28 | | BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | exit BreakInTry | 7 | | BreakInTry.cs:3:10:3:11 | enter M1 | BreakInTry.cs:7:33:7:36 | access to parameter args | 5 | | BreakInTry.cs:3:10:3:11 | exit M1 (normal) | BreakInTry.cs:3:10:3:11 | exit M1 | 2 | diff --git a/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected b/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected index db226bef5395..4fdf1eef8667 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected @@ -766,6 +766,48 @@ dominance | Assignments.cs:18:5:20:5 | {...} | Assignments.cs:19:16:19:16 | access to parameter x | | Assignments.cs:19:9:19:17 | return ...; | Assignments.cs:17:40:17:40 | exit + (normal) | | Assignments.cs:19:16:19:16 | access to parameter x | Assignments.cs:19:9:19:17 | return ...; | +| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:28:5:30:5 | {...} | +| Assignments.cs:27:10:27:23 | exit SetParamSingle (normal) | Assignments.cs:27:10:27:23 | exit SetParamSingle | +| Assignments.cs:28:5:30:5 | {...} | Assignments.cs:29:9:29:15 | ...; | +| Assignments.cs:29:9:29:14 | ... = ... | Assignments.cs:27:10:27:23 | exit SetParamSingle (normal) | +| Assignments.cs:29:9:29:15 | ...; | Assignments.cs:29:13:29:14 | 42 | +| Assignments.cs:29:13:29:14 | 42 | Assignments.cs:29:9:29:14 | ... = ... | +| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:33:5:36:5 | {...} | +| Assignments.cs:32:10:32:22 | exit SetParamMulti (normal) | Assignments.cs:32:10:32:22 | exit SetParamMulti | +| Assignments.cs:33:5:36:5 | {...} | Assignments.cs:34:9:34:15 | ...; | +| Assignments.cs:34:9:34:14 | ... = ... | Assignments.cs:35:9:35:20 | ...; | +| Assignments.cs:34:9:34:15 | ...; | Assignments.cs:34:13:34:14 | 42 | +| Assignments.cs:34:13:34:14 | 42 | Assignments.cs:34:9:34:14 | ... = ... | +| Assignments.cs:35:9:35:19 | ... = ... | Assignments.cs:32:10:32:22 | exit SetParamMulti (normal) | +| Assignments.cs:35:9:35:20 | ...; | Assignments.cs:35:13:35:19 | "Hello" | +| Assignments.cs:35:13:35:19 | "Hello" | Assignments.cs:35:9:35:19 | ... = ... | +| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:39:5:45:5 | {...} | +| Assignments.cs:38:10:38:11 | exit M2 (normal) | Assignments.cs:38:10:38:11 | exit M2 | +| Assignments.cs:39:5:45:5 | {...} | Assignments.cs:40:9:40:15 | ... ...; | +| Assignments.cs:40:9:40:15 | ... ...; | Assignments.cs:40:13:40:14 | Int32 x1 | +| Assignments.cs:40:13:40:14 | Int32 x1 | Assignments.cs:41:9:41:31 | ...; | +| Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:42:9:42:37 | ...; | +| Assignments.cs:41:9:41:30 | this access | Assignments.cs:41:9:41:30 | call to method SetParamSingle | +| Assignments.cs:41:9:41:31 | ...; | Assignments.cs:41:9:41:30 | this access | +| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:28:42:35 | access to field IntField | +| Assignments.cs:42:9:42:36 | this access | Assignments.cs:42:28:42:35 | this access | +| Assignments.cs:42:9:42:37 | ...; | Assignments.cs:42:9:42:36 | this access | +| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:43:9:43:56 | ...; | +| Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:9:42:36 | call to method SetParamSingle | +| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:44:43:54 | access to field StringField | +| Assignments.cs:43:9:43:55 | this access | Assignments.cs:43:34:43:37 | null | +| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:43:9:43:55 | this access | +| Assignments.cs:43:34:43:37 | null | Assignments.cs:43:44:43:54 | this access | +| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:44:9:44:59 | ...; | +| Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:9:43:55 | call to method SetParamMulti | +| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:27:44:34 | access to field IntField | +| Assignments.cs:44:9:44:58 | this access | Assignments.cs:44:27:44:34 | this access | +| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:44:9:44:58 | this access | +| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:47:44:57 | access to field StringField | +| Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:37:44:40 | null | +| Assignments.cs:44:37:44:40 | null | Assignments.cs:44:47:44:57 | this access | +| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:38:10:38:11 | exit M2 (normal) | +| Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:9:44:58 | call to method SetParamMulti | | BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | {...} | | BreakInTry.cs:1:7:1:16 | call to method | BreakInTry.cs:1:7:1:16 | call to constructor Object | | BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | this access | @@ -4722,6 +4764,48 @@ postDominance | Assignments.cs:18:5:20:5 | {...} | Assignments.cs:17:40:17:40 | enter + | | Assignments.cs:19:9:19:17 | return ...; | Assignments.cs:19:16:19:16 | access to parameter x | | Assignments.cs:19:16:19:16 | access to parameter x | Assignments.cs:18:5:20:5 | {...} | +| Assignments.cs:27:10:27:23 | exit SetParamSingle | Assignments.cs:27:10:27:23 | exit SetParamSingle (normal) | +| Assignments.cs:27:10:27:23 | exit SetParamSingle (normal) | Assignments.cs:29:9:29:14 | ... = ... | +| Assignments.cs:28:5:30:5 | {...} | Assignments.cs:27:10:27:23 | enter SetParamSingle | +| Assignments.cs:29:9:29:14 | ... = ... | Assignments.cs:29:13:29:14 | 42 | +| Assignments.cs:29:9:29:15 | ...; | Assignments.cs:28:5:30:5 | {...} | +| Assignments.cs:29:13:29:14 | 42 | Assignments.cs:29:9:29:15 | ...; | +| Assignments.cs:32:10:32:22 | exit SetParamMulti | Assignments.cs:32:10:32:22 | exit SetParamMulti (normal) | +| Assignments.cs:32:10:32:22 | exit SetParamMulti (normal) | Assignments.cs:35:9:35:19 | ... = ... | +| Assignments.cs:33:5:36:5 | {...} | Assignments.cs:32:10:32:22 | enter SetParamMulti | +| Assignments.cs:34:9:34:14 | ... = ... | Assignments.cs:34:13:34:14 | 42 | +| Assignments.cs:34:9:34:15 | ...; | Assignments.cs:33:5:36:5 | {...} | +| Assignments.cs:34:13:34:14 | 42 | Assignments.cs:34:9:34:15 | ...; | +| Assignments.cs:35:9:35:19 | ... = ... | Assignments.cs:35:13:35:19 | "Hello" | +| Assignments.cs:35:9:35:20 | ...; | Assignments.cs:34:9:34:14 | ... = ... | +| Assignments.cs:35:13:35:19 | "Hello" | Assignments.cs:35:9:35:20 | ...; | +| Assignments.cs:38:10:38:11 | exit M2 | Assignments.cs:38:10:38:11 | exit M2 (normal) | +| Assignments.cs:38:10:38:11 | exit M2 (normal) | Assignments.cs:44:47:44:57 | access to field StringField | +| Assignments.cs:39:5:45:5 | {...} | Assignments.cs:38:10:38:11 | enter M2 | +| Assignments.cs:40:9:40:15 | ... ...; | Assignments.cs:39:5:45:5 | {...} | +| Assignments.cs:40:13:40:14 | Int32 x1 | Assignments.cs:40:9:40:15 | ... ...; | +| Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:41:9:41:30 | this access | +| Assignments.cs:41:9:41:30 | this access | Assignments.cs:41:9:41:31 | ...; | +| Assignments.cs:41:9:41:31 | ...; | Assignments.cs:40:13:40:14 | Int32 x1 | +| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:28:42:35 | this access | +| Assignments.cs:42:9:42:36 | this access | Assignments.cs:42:9:42:37 | ...; | +| Assignments.cs:42:9:42:37 | ...; | Assignments.cs:41:9:41:30 | call to method SetParamSingle | +| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:42:9:42:36 | call to method SetParamSingle | +| Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:9:42:36 | this access | +| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:44:43:54 | this access | +| Assignments.cs:43:9:43:55 | this access | Assignments.cs:43:9:43:56 | ...; | +| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:42:28:42:35 | access to field IntField | +| Assignments.cs:43:34:43:37 | null | Assignments.cs:43:9:43:55 | this access | +| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:43:9:43:55 | call to method SetParamMulti | +| Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:34:43:37 | null | +| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:47:44:57 | this access | +| Assignments.cs:44:9:44:58 | this access | Assignments.cs:44:9:44:59 | ...; | +| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:43:44:43:54 | access to field StringField | +| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:9:44:58 | call to method SetParamMulti | +| Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:9:44:58 | this access | +| Assignments.cs:44:37:44:40 | null | Assignments.cs:44:27:44:34 | this access | +| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:44:27:44:34 | access to field IntField | +| Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:37:44:40 | null | | BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | call to method | | BreakInTry.cs:1:7:1:16 | call to method | BreakInTry.cs:1:7:1:16 | this access | | BreakInTry.cs:1:7:1:16 | exit BreakInTry | BreakInTry.cs:1:7:1:16 | exit BreakInTry (normal) | @@ -8811,6 +8895,9 @@ blockDominance | Assignments.cs:3:10:3:10 | enter M | Assignments.cs:3:10:3:10 | enter M | | Assignments.cs:14:18:14:35 | enter (...) => ... | Assignments.cs:14:18:14:35 | enter (...) => ... | | Assignments.cs:17:40:17:40 | enter + | Assignments.cs:17:40:17:40 | enter + | +| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:27:10:27:23 | enter SetParamSingle | +| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:32:10:32:22 | enter SetParamMulti | +| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:38:10:38:11 | enter M2 | | BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | enter BreakInTry | | BreakInTry.cs:3:10:3:11 | enter M1 | BreakInTry.cs:3:10:3:11 | enter M1 | | BreakInTry.cs:3:10:3:11 | enter M1 | BreakInTry.cs:3:10:3:11 | exit M1 (normal) | @@ -12758,6 +12845,9 @@ postBlockDominance | Assignments.cs:3:10:3:10 | enter M | Assignments.cs:3:10:3:10 | enter M | | Assignments.cs:14:18:14:35 | enter (...) => ... | Assignments.cs:14:18:14:35 | enter (...) => ... | | Assignments.cs:17:40:17:40 | enter + | Assignments.cs:17:40:17:40 | enter + | +| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:27:10:27:23 | enter SetParamSingle | +| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:32:10:32:22 | enter SetParamMulti | +| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:38:10:38:11 | enter M2 | | BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | enter BreakInTry | | BreakInTry.cs:3:10:3:11 | enter M1 | BreakInTry.cs:3:10:3:11 | enter M1 | | BreakInTry.cs:3:10:3:11 | exit M1 (normal) | BreakInTry.cs:3:10:3:11 | enter M1 | diff --git a/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected b/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected index 5c182890e05f..8f48cd46fc3b 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/EnclosingCallable.expected @@ -839,6 +839,51 @@ nodeEnclosing | Assignments.cs:18:5:20:5 | {...} | Assignments.cs:17:40:17:40 | + | | Assignments.cs:19:9:19:17 | return ...; | Assignments.cs:17:40:17:40 | + | | Assignments.cs:19:16:19:16 | access to parameter x | Assignments.cs:17:40:17:40 | + | +| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:27:10:27:23 | SetParamSingle | +| Assignments.cs:27:10:27:23 | exit SetParamSingle | Assignments.cs:27:10:27:23 | SetParamSingle | +| Assignments.cs:27:10:27:23 | exit SetParamSingle (normal) | Assignments.cs:27:10:27:23 | SetParamSingle | +| Assignments.cs:28:5:30:5 | {...} | Assignments.cs:27:10:27:23 | SetParamSingle | +| Assignments.cs:29:9:29:14 | ... = ... | Assignments.cs:27:10:27:23 | SetParamSingle | +| Assignments.cs:29:9:29:15 | ...; | Assignments.cs:27:10:27:23 | SetParamSingle | +| Assignments.cs:29:13:29:14 | 42 | Assignments.cs:27:10:27:23 | SetParamSingle | +| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:32:10:32:22 | SetParamMulti | +| Assignments.cs:32:10:32:22 | exit SetParamMulti | Assignments.cs:32:10:32:22 | SetParamMulti | +| Assignments.cs:32:10:32:22 | exit SetParamMulti (normal) | Assignments.cs:32:10:32:22 | SetParamMulti | +| Assignments.cs:33:5:36:5 | {...} | Assignments.cs:32:10:32:22 | SetParamMulti | +| Assignments.cs:34:9:34:14 | ... = ... | Assignments.cs:32:10:32:22 | SetParamMulti | +| Assignments.cs:34:9:34:15 | ...; | Assignments.cs:32:10:32:22 | SetParamMulti | +| Assignments.cs:34:13:34:14 | 42 | Assignments.cs:32:10:32:22 | SetParamMulti | +| Assignments.cs:35:9:35:19 | ... = ... | Assignments.cs:32:10:32:22 | SetParamMulti | +| Assignments.cs:35:9:35:20 | ...; | Assignments.cs:32:10:32:22 | SetParamMulti | +| Assignments.cs:35:13:35:19 | "Hello" | Assignments.cs:32:10:32:22 | SetParamMulti | +| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:38:10:38:11 | exit M2 | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:38:10:38:11 | exit M2 (normal) | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:39:5:45:5 | {...} | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:40:9:40:15 | ... ...; | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:40:13:40:14 | Int32 x1 | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:41:9:41:30 | this access | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:41:9:41:31 | ...; | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:42:9:42:36 | this access | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:42:9:42:37 | ...; | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:42:28:42:35 | this access | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:43:9:43:55 | this access | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:43:34:43:37 | null | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:43:44:43:54 | this access | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:44:9:44:58 | this access | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:44:27:44:34 | this access | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:44:37:44:40 | null | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:38:10:38:11 | M2 | +| Assignments.cs:44:47:44:57 | this access | Assignments.cs:38:10:38:11 | M2 | | BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | BreakInTry | | BreakInTry.cs:1:7:1:16 | call to method | BreakInTry.cs:1:7:1:16 | BreakInTry | | BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | BreakInTry | @@ -4538,6 +4583,9 @@ blockEnclosing | Assignments.cs:3:10:3:10 | enter M | Assignments.cs:3:10:3:10 | M | | Assignments.cs:14:18:14:35 | enter (...) => ... | Assignments.cs:14:18:14:35 | (...) => ... | | Assignments.cs:17:40:17:40 | enter + | Assignments.cs:17:40:17:40 | + | +| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:27:10:27:23 | SetParamSingle | +| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:32:10:32:22 | SetParamMulti | +| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:38:10:38:11 | M2 | | BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | BreakInTry | | BreakInTry.cs:3:10:3:11 | enter M1 | BreakInTry.cs:3:10:3:11 | M1 | | BreakInTry.cs:3:10:3:11 | exit M1 (normal) | BreakInTry.cs:3:10:3:11 | M1 | diff --git a/csharp/ql/test/library-tests/controlflow/graph/EntryElement.expected b/csharp/ql/test/library-tests/controlflow/graph/EntryElement.expected index 6074e670aac1..410916afabdf 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/EntryElement.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/EntryElement.expected @@ -722,6 +722,42 @@ | Assignments.cs:18:5:20:5 | {...} | Assignments.cs:18:5:20:5 | {...} | | Assignments.cs:19:9:19:17 | return ...; | Assignments.cs:19:16:19:16 | access to parameter x | | Assignments.cs:19:16:19:16 | access to parameter x | Assignments.cs:19:16:19:16 | access to parameter x | +| Assignments.cs:28:5:30:5 | {...} | Assignments.cs:28:5:30:5 | {...} | +| Assignments.cs:29:9:29:14 | ... = ... | Assignments.cs:29:13:29:14 | 42 | +| Assignments.cs:29:9:29:15 | ...; | Assignments.cs:29:9:29:15 | ...; | +| Assignments.cs:29:13:29:14 | 42 | Assignments.cs:29:13:29:14 | 42 | +| Assignments.cs:33:5:36:5 | {...} | Assignments.cs:33:5:36:5 | {...} | +| Assignments.cs:34:9:34:14 | ... = ... | Assignments.cs:34:13:34:14 | 42 | +| Assignments.cs:34:9:34:15 | ...; | Assignments.cs:34:9:34:15 | ...; | +| Assignments.cs:34:13:34:14 | 42 | Assignments.cs:34:13:34:14 | 42 | +| Assignments.cs:35:9:35:19 | ... = ... | Assignments.cs:35:13:35:19 | "Hello" | +| Assignments.cs:35:9:35:20 | ...; | Assignments.cs:35:9:35:20 | ...; | +| Assignments.cs:35:13:35:19 | "Hello" | Assignments.cs:35:13:35:19 | "Hello" | +| Assignments.cs:39:5:45:5 | {...} | Assignments.cs:39:5:45:5 | {...} | +| Assignments.cs:40:9:40:15 | ... ...; | Assignments.cs:40:9:40:15 | ... ...; | +| Assignments.cs:40:13:40:14 | Int32 x1 | Assignments.cs:40:13:40:14 | Int32 x1 | +| Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:41:9:41:30 | this access | +| Assignments.cs:41:9:41:30 | this access | Assignments.cs:41:9:41:30 | this access | +| Assignments.cs:41:9:41:31 | ...; | Assignments.cs:41:9:41:31 | ...; | +| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:9:42:36 | this access | +| Assignments.cs:42:9:42:36 | this access | Assignments.cs:42:9:42:36 | this access | +| Assignments.cs:42:9:42:37 | ...; | Assignments.cs:42:9:42:37 | ...; | +| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:42:28:42:35 | this access | +| Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:28:42:35 | this access | +| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:9:43:55 | this access | +| Assignments.cs:43:9:43:55 | this access | Assignments.cs:43:9:43:55 | this access | +| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:43:9:43:56 | ...; | +| Assignments.cs:43:34:43:37 | null | Assignments.cs:43:34:43:37 | null | +| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:43:44:43:54 | this access | +| Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:44:43:54 | this access | +| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:9:44:58 | this access | +| Assignments.cs:44:9:44:58 | this access | Assignments.cs:44:9:44:58 | this access | +| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:44:9:44:59 | ...; | +| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:27:44:34 | this access | +| Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:27:44:34 | this access | +| Assignments.cs:44:37:44:40 | null | Assignments.cs:44:37:44:40 | null | +| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:44:47:44:57 | this access | +| Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:47:44:57 | this access | | BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | call to constructor Object | | BreakInTry.cs:1:7:1:16 | call to method | BreakInTry.cs:1:7:1:16 | this access | | BreakInTry.cs:1:7:1:16 | this access | BreakInTry.cs:1:7:1:16 | this access | diff --git a/csharp/ql/test/library-tests/controlflow/graph/ExitElement.expected b/csharp/ql/test/library-tests/controlflow/graph/ExitElement.expected index 9e57759b274b..decfe3f3cfe0 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/ExitElement.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/ExitElement.expected @@ -821,6 +821,42 @@ | Assignments.cs:18:5:20:5 | {...} | Assignments.cs:19:9:19:17 | return ...; | return | | Assignments.cs:19:9:19:17 | return ...; | Assignments.cs:19:9:19:17 | return ...; | return | | Assignments.cs:19:16:19:16 | access to parameter x | Assignments.cs:19:16:19:16 | access to parameter x | normal | +| Assignments.cs:28:5:30:5 | {...} | Assignments.cs:29:9:29:14 | ... = ... | normal | +| Assignments.cs:29:9:29:14 | ... = ... | Assignments.cs:29:9:29:14 | ... = ... | normal | +| Assignments.cs:29:9:29:15 | ...; | Assignments.cs:29:9:29:14 | ... = ... | normal | +| Assignments.cs:29:13:29:14 | 42 | Assignments.cs:29:13:29:14 | 42 | normal | +| Assignments.cs:33:5:36:5 | {...} | Assignments.cs:35:9:35:19 | ... = ... | normal | +| Assignments.cs:34:9:34:14 | ... = ... | Assignments.cs:34:9:34:14 | ... = ... | normal | +| Assignments.cs:34:9:34:15 | ...; | Assignments.cs:34:9:34:14 | ... = ... | normal | +| Assignments.cs:34:13:34:14 | 42 | Assignments.cs:34:13:34:14 | 42 | normal | +| Assignments.cs:35:9:35:19 | ... = ... | Assignments.cs:35:9:35:19 | ... = ... | normal | +| Assignments.cs:35:9:35:20 | ...; | Assignments.cs:35:9:35:19 | ... = ... | normal | +| Assignments.cs:35:13:35:19 | "Hello" | Assignments.cs:35:13:35:19 | "Hello" | normal | +| Assignments.cs:39:5:45:5 | {...} | Assignments.cs:44:47:44:57 | access to field StringField | normal | +| Assignments.cs:40:9:40:15 | ... ...; | Assignments.cs:40:13:40:14 | Int32 x1 | normal | +| Assignments.cs:40:13:40:14 | Int32 x1 | Assignments.cs:40:13:40:14 | Int32 x1 | normal | +| Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:41:9:41:30 | call to method SetParamSingle | normal | +| Assignments.cs:41:9:41:30 | this access | Assignments.cs:41:9:41:30 | this access | normal | +| Assignments.cs:41:9:41:31 | ...; | Assignments.cs:41:9:41:30 | call to method SetParamSingle | normal | +| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:28:42:35 | access to field IntField | normal | +| Assignments.cs:42:9:42:36 | this access | Assignments.cs:42:9:42:36 | this access | normal | +| Assignments.cs:42:9:42:37 | ...; | Assignments.cs:42:28:42:35 | access to field IntField | normal | +| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:42:28:42:35 | this access | normal | +| Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:28:42:35 | this access | normal | +| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:44:43:54 | access to field StringField | normal | +| Assignments.cs:43:9:43:55 | this access | Assignments.cs:43:9:43:55 | this access | normal | +| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:43:44:43:54 | access to field StringField | normal | +| Assignments.cs:43:34:43:37 | null | Assignments.cs:43:34:43:37 | null | normal | +| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:43:44:43:54 | this access | normal | +| Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:44:43:54 | this access | normal | +| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:47:44:57 | access to field StringField | normal | +| Assignments.cs:44:9:44:58 | this access | Assignments.cs:44:9:44:58 | this access | normal | +| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:44:47:44:57 | access to field StringField | normal | +| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:27:44:34 | this access | normal | +| Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:27:44:34 | this access | normal | +| Assignments.cs:44:37:44:40 | null | Assignments.cs:44:37:44:40 | null | normal | +| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:44:47:44:57 | this access | normal | +| Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:47:44:57 | this access | normal | | BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | call to constructor Object | normal | | BreakInTry.cs:1:7:1:16 | call to method | BreakInTry.cs:1:7:1:16 | call to method | normal | | BreakInTry.cs:1:7:1:16 | this access | BreakInTry.cs:1:7:1:16 | this access | normal | diff --git a/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected b/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected index e119b9281364..b8ccee34f7ed 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected @@ -853,6 +853,48 @@ | Assignments.cs:18:5:20:5 | {...} | Assignments.cs:19:16:19:16 | access to parameter x | | | Assignments.cs:19:9:19:17 | return ...; | Assignments.cs:17:40:17:40 | exit + (normal) | return | | Assignments.cs:19:16:19:16 | access to parameter x | Assignments.cs:19:9:19:17 | return ...; | | +| Assignments.cs:27:10:27:23 | enter SetParamSingle | Assignments.cs:28:5:30:5 | {...} | | +| Assignments.cs:27:10:27:23 | exit SetParamSingle (normal) | Assignments.cs:27:10:27:23 | exit SetParamSingle | | +| Assignments.cs:28:5:30:5 | {...} | Assignments.cs:29:9:29:15 | ...; | | +| Assignments.cs:29:9:29:14 | ... = ... | Assignments.cs:27:10:27:23 | exit SetParamSingle (normal) | | +| Assignments.cs:29:9:29:15 | ...; | Assignments.cs:29:13:29:14 | 42 | | +| Assignments.cs:29:13:29:14 | 42 | Assignments.cs:29:9:29:14 | ... = ... | | +| Assignments.cs:32:10:32:22 | enter SetParamMulti | Assignments.cs:33:5:36:5 | {...} | | +| Assignments.cs:32:10:32:22 | exit SetParamMulti (normal) | Assignments.cs:32:10:32:22 | exit SetParamMulti | | +| Assignments.cs:33:5:36:5 | {...} | Assignments.cs:34:9:34:15 | ...; | | +| Assignments.cs:34:9:34:14 | ... = ... | Assignments.cs:35:9:35:20 | ...; | | +| Assignments.cs:34:9:34:15 | ...; | Assignments.cs:34:13:34:14 | 42 | | +| Assignments.cs:34:13:34:14 | 42 | Assignments.cs:34:9:34:14 | ... = ... | | +| Assignments.cs:35:9:35:19 | ... = ... | Assignments.cs:32:10:32:22 | exit SetParamMulti (normal) | | +| Assignments.cs:35:9:35:20 | ...; | Assignments.cs:35:13:35:19 | "Hello" | | +| Assignments.cs:35:13:35:19 | "Hello" | Assignments.cs:35:9:35:19 | ... = ... | | +| Assignments.cs:38:10:38:11 | enter M2 | Assignments.cs:39:5:45:5 | {...} | | +| Assignments.cs:38:10:38:11 | exit M2 (normal) | Assignments.cs:38:10:38:11 | exit M2 | | +| Assignments.cs:39:5:45:5 | {...} | Assignments.cs:40:9:40:15 | ... ...; | | +| Assignments.cs:40:9:40:15 | ... ...; | Assignments.cs:40:13:40:14 | Int32 x1 | | +| Assignments.cs:40:13:40:14 | Int32 x1 | Assignments.cs:41:9:41:31 | ...; | | +| Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:42:9:42:37 | ...; | | +| Assignments.cs:41:9:41:30 | this access | Assignments.cs:41:9:41:30 | call to method SetParamSingle | | +| Assignments.cs:41:9:41:31 | ...; | Assignments.cs:41:9:41:30 | this access | | +| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:28:42:35 | access to field IntField | | +| Assignments.cs:42:9:42:36 | this access | Assignments.cs:42:28:42:35 | this access | | +| Assignments.cs:42:9:42:37 | ...; | Assignments.cs:42:9:42:36 | this access | | +| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:43:9:43:56 | ...; | | +| Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:9:42:36 | call to method SetParamSingle | | +| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:44:43:54 | access to field StringField | | +| Assignments.cs:43:9:43:55 | this access | Assignments.cs:43:34:43:37 | null | | +| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:43:9:43:55 | this access | | +| Assignments.cs:43:34:43:37 | null | Assignments.cs:43:44:43:54 | this access | | +| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:44:9:44:59 | ...; | | +| Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:9:43:55 | call to method SetParamMulti | | +| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:27:44:34 | access to field IntField | | +| Assignments.cs:44:9:44:58 | this access | Assignments.cs:44:27:44:34 | this access | | +| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:44:9:44:58 | this access | | +| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:47:44:57 | access to field StringField | | +| Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:37:44:40 | null | | +| Assignments.cs:44:37:44:40 | null | Assignments.cs:44:47:44:57 | this access | | +| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:38:10:38:11 | exit M2 (normal) | | +| Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:9:44:58 | call to method SetParamMulti | | | BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | {...} | | | BreakInTry.cs:1:7:1:16 | call to method | BreakInTry.cs:1:7:1:16 | call to constructor Object | | | BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | this access | | diff --git a/csharp/ql/test/library-tests/controlflow/graph/Nodes.expected b/csharp/ql/test/library-tests/controlflow/graph/Nodes.expected index 460d4d09054c..d76f989e5cff 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/Nodes.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/Nodes.expected @@ -36,6 +36,9 @@ | Assignments.cs:3:10:3:10 | M | Assignments.cs:4:5:15:5 | {...} | | Assignments.cs:14:18:14:35 | (...) => ... | Assignments.cs:14:33:14:35 | {...} | | Assignments.cs:17:40:17:40 | + | Assignments.cs:18:5:20:5 | {...} | +| Assignments.cs:27:10:27:23 | SetParamSingle | Assignments.cs:28:5:30:5 | {...} | +| Assignments.cs:32:10:32:22 | SetParamMulti | Assignments.cs:33:5:36:5 | {...} | +| Assignments.cs:38:10:38:11 | M2 | Assignments.cs:39:5:45:5 | {...} | | BreakInTry.cs:1:7:1:16 | BreakInTry | BreakInTry.cs:1:7:1:16 | this access | | BreakInTry.cs:3:10:3:11 | M1 | BreakInTry.cs:4:5:18:5 | {...} | | BreakInTry.cs:20:10:20:11 | M2 | BreakInTry.cs:21:5:36:5 | {...} | From beb7750c214191265e19db15c4aa5227527da85a Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Mon, 19 Jan 2026 10:06:14 +0100 Subject: [PATCH 042/433] C#: Address review comments. --- .../DataFlowConsistency.ql | 6 - .../internal/ControlFlowGraphImpl.qll | 124 +++--------------- 2 files changed, 20 insertions(+), 110 deletions(-) diff --git a/csharp/ql/consistency-queries/DataFlowConsistency.ql b/csharp/ql/consistency-queries/DataFlowConsistency.ql index f9049068a7fc..638bace38922 100644 --- a/csharp/ql/consistency-queries/DataFlowConsistency.ql +++ b/csharp/ql/consistency-queries/DataFlowConsistency.ql @@ -60,12 +60,6 @@ private module Input implements InputSig { qe.isConditional() and qe.getQualifier() = arg.asExpr() ) - or - // TODO: Remove once underlying issue is fixed - exists(AssignableDefinitions::OutRefDefinition def | - def.getTargetAccess().(QualifiableExpr) = arg.asExpr() and - def.getTargetAccess().isOutArgument() - ) } predicate multipleArgumentCallExclude(ArgumentNode arg, DataFlowCall call) { diff --git a/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll b/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll index 77a88fb8c6a0..6be79a17be25 100644 --- a/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll +++ b/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll @@ -430,7 +430,6 @@ module Expressions { not this instanceof ArrayCreation and not this instanceof QualifiedWriteAccess and not this instanceof QualifiedAccessorWrite and - not this instanceof QualifiedAccessorWriteOutParam and not this instanceof NoNodeExpr and not this instanceof SwitchExpr and not this instanceof SwitchCaseExpr and @@ -447,25 +446,29 @@ module Expressions { } /** - * A qualified write access. In a qualified write access, the access itself is - * not evaluated, only the qualifier and the indexer arguments (if any). + * A qualified write access. * - * Note that the successor declaration in `QualifiedAccessorWrite` ensures that the access itself + * The successor declaration in `QualifiedAccessorWrite` ensures that the access itself * is evaluated after the qualifier and the indexer arguments (if any) * and the right hand side of the assignment. + * + * When a qualified write access is used as an `out/ref` argument, the access itself is evaluated immediately. */ private class QualifiedWriteAccess extends ControlFlowTree instanceof WriteAccess, QualifiableExpr { QualifiedWriteAccess() { - this.hasQualifier() - or - // Member initializers like - // ```csharp - // new Dictionary() { [0] = "Zero", [1] = "One", [2] = "Two" } - // ``` - // need special treatment, because the accesses `[0]`, `[1]`, and `[2]` - // have no qualifier. - this = any(MemberInitializer mi).getLValue() + ( + this.hasQualifier() + or + // Member initializers like + // ```csharp + // new Dictionary() { [0] = "Zero", [1] = "One", [2] = "Two" } + // ``` + // need special treatment, because the accesses `[0]`, `[1]`, and `[2]` + // have no qualifier. + this = any(MemberInitializer mi).getLValue() + ) and + not exists(AssignableDefinitions::OutRefDefinition def | def.getTargetAccess() = this) } final override predicate propagatesAbnormal(AstNode child) { child = getExprChild(this, _) } @@ -486,101 +489,14 @@ module Expressions { exists(int i | last(getExprChild(this, i), pred, c) and c instanceof NormalCompletion and - (i != 0 or not c.(NullnessCompletion).isNull()) and - first(getExprChild(this, i + 1), succ) - ) - } - } - - /** - * An expression that writes via an accessor in an `out` parameter, for example `s = M(out x.Field)`, - * where `Field` is a field. - * - * Note that `ref` parameters are not included here as they are considered reads before the call. - * Ideally, we would model `ref` parameters as both reads and writes, but that is not currently supported. - * - * Accessor writes need special attention, because we need to model that the - * access is written after the method call. - * - * In the example above, this means we want a CFG that looks like - * - * ```csharp - * x -> call M -> x.Field -> s = M(out x.Field) - * ``` - */ - private class QualifiedAccessorWriteOutParam extends PostOrderTree instanceof Expr { - QualifiedAccessorWriteOutParam() { - exists(AssignableDefinitions::OutRefDefinition def | - def.getExpr() = this and - def.getTargetAccess() instanceof QualifiableExpr and - def.getTargetAccess().isOutArgument() - ) - } - - private QualifiableExpr getOutAccess(int i) { - result = - rank[i + 1](AssignableDefinitions::OutRefDefinition def | - def.getExpr() = this and - def.getTargetAccess() instanceof QualifiableExpr and - def.getTargetAccess().isOutArgument() - | - def order by def.getIndex() - ).getTargetAccess() - } - - private QualifiableExpr getLastOutAccess() { - exists(int last | - result = this.getOutAccess(last) and - not exists(this.getOutAccess(last + 1)) - ) - } - - final override predicate propagatesAbnormal(AstNode child) { child = getExprChild(this, _) } - - final override predicate first(AstNode first) { - first(getExprChild(this, 0), first) - or - not exists(getExprChild(this, 0)) and - first = this - } - - final override predicate last(AstNode last, Completion c) { - // The last ast node is the last out writeaccess. - // Completion from the call itself is propagated (required for eg. conditions). - last = this.getLastOutAccess() and - c.isValidFor(this) - } - - final override predicate succ(AstNode pred, AstNode succ, Completion c) { - exists(int i | - last(getExprChild(this, i), pred, c) and - c instanceof NormalCompletion - | - // Post-order: flow from last element of last child to element itself - i = max(int j | exists(getExprChild(this, j))) and - succ = this - or - // Standard left-to-right evaluation + (if i = 0 then not c.(NullnessCompletion).isNull() else any()) and first(getExprChild(this, i + 1), succ) ) - or - // Flow from this element to the first write access. - pred = this and - succ = this.getOutAccess(0) and - c.isValidFor(pred) and - c instanceof NormalCompletion - or - // Flow from one access to the next - exists(int i | pred = this.getOutAccess(i) | - succ = this.getOutAccess(i + 1) and - c.isValidFor(pred) and - c instanceof NormalCompletion - ) } } /** - * An expression that writes via an accessor, for example `x.Prop = 0`, + * An expression that writes via a qualifiable expression, for example `x.Prop = 0`, * where `Prop` is a property. * * Accessor writes need special attention, because we need to model the fact @@ -591,7 +507,7 @@ module Expressions { * x -> 0 -> set_Prop -> x.Prop = 0 * ``` * - * For consistency, control flow is implemented this way for all accessor writes. + * For consistency, control flow is implemented the same way for other qualified writes. * For example, `x.Field = 0`, where `Field` is a field, we want a CFG that looks like * * ```csharp @@ -645,7 +561,7 @@ module Expressions { exists(int i | last(getExprChild(this, i), pred, c) and c instanceof NormalCompletion and - (i != 0 or not c.(NullnessCompletion).isNull()) and + (if i = 0 then not c.(NullnessCompletion).isNull() else any()) and first(getExprChild(this, i + 1), succ) ) or From 33fc2bab3363d77d135c06d522c808041fa7e7a4 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Mon, 19 Jan 2026 10:19:15 +0100 Subject: [PATCH 043/433] C#: Update test expected output. --- .../controlflow/graph/Dominance.expected | 44 +++++++++---------- .../controlflow/graph/ExitElement.expected | 22 +++++----- .../controlflow/graph/NodeGraph.expected | 22 +++++----- 3 files changed, 44 insertions(+), 44 deletions(-) diff --git a/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected b/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected index 4fdf1eef8667..204092c6df23 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/Dominance.expected @@ -789,25 +789,25 @@ dominance | Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:42:9:42:37 | ...; | | Assignments.cs:41:9:41:30 | this access | Assignments.cs:41:9:41:30 | call to method SetParamSingle | | Assignments.cs:41:9:41:31 | ...; | Assignments.cs:41:9:41:30 | this access | -| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:28:42:35 | access to field IntField | +| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:43:9:43:56 | ...; | | Assignments.cs:42:9:42:36 | this access | Assignments.cs:42:28:42:35 | this access | | Assignments.cs:42:9:42:37 | ...; | Assignments.cs:42:9:42:36 | this access | -| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:43:9:43:56 | ...; | -| Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:9:42:36 | call to method SetParamSingle | -| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:44:43:54 | access to field StringField | +| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:42:9:42:36 | call to method SetParamSingle | +| Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:28:42:35 | access to field IntField | +| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:44:9:44:59 | ...; | | Assignments.cs:43:9:43:55 | this access | Assignments.cs:43:34:43:37 | null | | Assignments.cs:43:9:43:56 | ...; | Assignments.cs:43:9:43:55 | this access | | Assignments.cs:43:34:43:37 | null | Assignments.cs:43:44:43:54 | this access | -| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:44:9:44:59 | ...; | -| Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:9:43:55 | call to method SetParamMulti | -| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:27:44:34 | access to field IntField | +| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:43:9:43:55 | call to method SetParamMulti | +| Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:44:43:54 | access to field StringField | +| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:38:10:38:11 | exit M2 (normal) | | Assignments.cs:44:9:44:58 | this access | Assignments.cs:44:27:44:34 | this access | | Assignments.cs:44:9:44:59 | ...; | Assignments.cs:44:9:44:58 | this access | -| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:47:44:57 | access to field StringField | -| Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:37:44:40 | null | +| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:37:44:40 | null | +| Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:27:44:34 | access to field IntField | | Assignments.cs:44:37:44:40 | null | Assignments.cs:44:47:44:57 | this access | -| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:38:10:38:11 | exit M2 (normal) | -| Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:9:44:58 | call to method SetParamMulti | +| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:44:9:44:58 | call to method SetParamMulti | +| Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:47:44:57 | access to field StringField | | BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | {...} | | BreakInTry.cs:1:7:1:16 | call to method | BreakInTry.cs:1:7:1:16 | call to constructor Object | | BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | this access | @@ -4780,31 +4780,31 @@ postDominance | Assignments.cs:35:9:35:20 | ...; | Assignments.cs:34:9:34:14 | ... = ... | | Assignments.cs:35:13:35:19 | "Hello" | Assignments.cs:35:9:35:20 | ...; | | Assignments.cs:38:10:38:11 | exit M2 | Assignments.cs:38:10:38:11 | exit M2 (normal) | -| Assignments.cs:38:10:38:11 | exit M2 (normal) | Assignments.cs:44:47:44:57 | access to field StringField | +| Assignments.cs:38:10:38:11 | exit M2 (normal) | Assignments.cs:44:9:44:58 | call to method SetParamMulti | | Assignments.cs:39:5:45:5 | {...} | Assignments.cs:38:10:38:11 | enter M2 | | Assignments.cs:40:9:40:15 | ... ...; | Assignments.cs:39:5:45:5 | {...} | | Assignments.cs:40:13:40:14 | Int32 x1 | Assignments.cs:40:9:40:15 | ... ...; | | Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:41:9:41:30 | this access | | Assignments.cs:41:9:41:30 | this access | Assignments.cs:41:9:41:31 | ...; | | Assignments.cs:41:9:41:31 | ...; | Assignments.cs:40:13:40:14 | Int32 x1 | -| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:28:42:35 | this access | +| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:28:42:35 | access to field IntField | | Assignments.cs:42:9:42:36 | this access | Assignments.cs:42:9:42:37 | ...; | | Assignments.cs:42:9:42:37 | ...; | Assignments.cs:41:9:41:30 | call to method SetParamSingle | -| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:42:9:42:36 | call to method SetParamSingle | +| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:42:28:42:35 | this access | | Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:9:42:36 | this access | -| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:44:43:54 | this access | +| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:44:43:54 | access to field StringField | | Assignments.cs:43:9:43:55 | this access | Assignments.cs:43:9:43:56 | ...; | -| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:42:28:42:35 | access to field IntField | +| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:42:9:42:36 | call to method SetParamSingle | | Assignments.cs:43:34:43:37 | null | Assignments.cs:43:9:43:55 | this access | -| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:43:9:43:55 | call to method SetParamMulti | +| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:43:44:43:54 | this access | | Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:34:43:37 | null | -| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:47:44:57 | this access | +| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:47:44:57 | access to field StringField | | Assignments.cs:44:9:44:58 | this access | Assignments.cs:44:9:44:59 | ...; | -| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:43:44:43:54 | access to field StringField | -| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:9:44:58 | call to method SetParamMulti | +| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:43:9:43:55 | call to method SetParamMulti | +| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:27:44:34 | this access | | Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:9:44:58 | this access | -| Assignments.cs:44:37:44:40 | null | Assignments.cs:44:27:44:34 | this access | -| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:44:27:44:34 | access to field IntField | +| Assignments.cs:44:37:44:40 | null | Assignments.cs:44:27:44:34 | access to field IntField | +| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:44:47:44:57 | this access | | Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:37:44:40 | null | | BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | call to method | | BreakInTry.cs:1:7:1:16 | call to method | BreakInTry.cs:1:7:1:16 | this access | diff --git a/csharp/ql/test/library-tests/controlflow/graph/ExitElement.expected b/csharp/ql/test/library-tests/controlflow/graph/ExitElement.expected index decfe3f3cfe0..a6794112ebda 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/ExitElement.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/ExitElement.expected @@ -832,30 +832,30 @@ | Assignments.cs:35:9:35:19 | ... = ... | Assignments.cs:35:9:35:19 | ... = ... | normal | | Assignments.cs:35:9:35:20 | ...; | Assignments.cs:35:9:35:19 | ... = ... | normal | | Assignments.cs:35:13:35:19 | "Hello" | Assignments.cs:35:13:35:19 | "Hello" | normal | -| Assignments.cs:39:5:45:5 | {...} | Assignments.cs:44:47:44:57 | access to field StringField | normal | +| Assignments.cs:39:5:45:5 | {...} | Assignments.cs:44:9:44:58 | call to method SetParamMulti | normal | | Assignments.cs:40:9:40:15 | ... ...; | Assignments.cs:40:13:40:14 | Int32 x1 | normal | | Assignments.cs:40:13:40:14 | Int32 x1 | Assignments.cs:40:13:40:14 | Int32 x1 | normal | | Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:41:9:41:30 | call to method SetParamSingle | normal | | Assignments.cs:41:9:41:30 | this access | Assignments.cs:41:9:41:30 | this access | normal | | Assignments.cs:41:9:41:31 | ...; | Assignments.cs:41:9:41:30 | call to method SetParamSingle | normal | -| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:28:42:35 | access to field IntField | normal | +| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:9:42:36 | call to method SetParamSingle | normal | | Assignments.cs:42:9:42:36 | this access | Assignments.cs:42:9:42:36 | this access | normal | -| Assignments.cs:42:9:42:37 | ...; | Assignments.cs:42:28:42:35 | access to field IntField | normal | -| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:42:28:42:35 | this access | normal | +| Assignments.cs:42:9:42:37 | ...; | Assignments.cs:42:9:42:36 | call to method SetParamSingle | normal | +| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:42:28:42:35 | access to field IntField | normal | | Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:28:42:35 | this access | normal | -| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:44:43:54 | access to field StringField | normal | +| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:9:43:55 | call to method SetParamMulti | normal | | Assignments.cs:43:9:43:55 | this access | Assignments.cs:43:9:43:55 | this access | normal | -| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:43:44:43:54 | access to field StringField | normal | +| Assignments.cs:43:9:43:56 | ...; | Assignments.cs:43:9:43:55 | call to method SetParamMulti | normal | | Assignments.cs:43:34:43:37 | null | Assignments.cs:43:34:43:37 | null | normal | -| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:43:44:43:54 | this access | normal | +| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:43:44:43:54 | access to field StringField | normal | | Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:44:43:54 | this access | normal | -| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:47:44:57 | access to field StringField | normal | +| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:9:44:58 | call to method SetParamMulti | normal | | Assignments.cs:44:9:44:58 | this access | Assignments.cs:44:9:44:58 | this access | normal | -| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:44:47:44:57 | access to field StringField | normal | -| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:27:44:34 | this access | normal | +| Assignments.cs:44:9:44:59 | ...; | Assignments.cs:44:9:44:58 | call to method SetParamMulti | normal | +| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:27:44:34 | access to field IntField | normal | | Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:27:44:34 | this access | normal | | Assignments.cs:44:37:44:40 | null | Assignments.cs:44:37:44:40 | null | normal | -| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:44:47:44:57 | this access | normal | +| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:44:47:44:57 | access to field StringField | normal | | Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:47:44:57 | this access | normal | | BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | call to constructor Object | normal | | BreakInTry.cs:1:7:1:16 | call to method | BreakInTry.cs:1:7:1:16 | call to method | normal | diff --git a/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected b/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected index b8ccee34f7ed..4ce98d5096ff 100644 --- a/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected +++ b/csharp/ql/test/library-tests/controlflow/graph/NodeGraph.expected @@ -876,25 +876,25 @@ | Assignments.cs:41:9:41:30 | call to method SetParamSingle | Assignments.cs:42:9:42:37 | ...; | | | Assignments.cs:41:9:41:30 | this access | Assignments.cs:41:9:41:30 | call to method SetParamSingle | | | Assignments.cs:41:9:41:31 | ...; | Assignments.cs:41:9:41:30 | this access | | -| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:42:28:42:35 | access to field IntField | | +| Assignments.cs:42:9:42:36 | call to method SetParamSingle | Assignments.cs:43:9:43:56 | ...; | | | Assignments.cs:42:9:42:36 | this access | Assignments.cs:42:28:42:35 | this access | | | Assignments.cs:42:9:42:37 | ...; | Assignments.cs:42:9:42:36 | this access | | -| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:43:9:43:56 | ...; | | -| Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:9:42:36 | call to method SetParamSingle | | -| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:43:44:43:54 | access to field StringField | | +| Assignments.cs:42:28:42:35 | access to field IntField | Assignments.cs:42:9:42:36 | call to method SetParamSingle | | +| Assignments.cs:42:28:42:35 | this access | Assignments.cs:42:28:42:35 | access to field IntField | | +| Assignments.cs:43:9:43:55 | call to method SetParamMulti | Assignments.cs:44:9:44:59 | ...; | | | Assignments.cs:43:9:43:55 | this access | Assignments.cs:43:34:43:37 | null | | | Assignments.cs:43:9:43:56 | ...; | Assignments.cs:43:9:43:55 | this access | | | Assignments.cs:43:34:43:37 | null | Assignments.cs:43:44:43:54 | this access | | -| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:44:9:44:59 | ...; | | -| Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:9:43:55 | call to method SetParamMulti | | -| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:44:27:44:34 | access to field IntField | | +| Assignments.cs:43:44:43:54 | access to field StringField | Assignments.cs:43:9:43:55 | call to method SetParamMulti | | +| Assignments.cs:43:44:43:54 | this access | Assignments.cs:43:44:43:54 | access to field StringField | | +| Assignments.cs:44:9:44:58 | call to method SetParamMulti | Assignments.cs:38:10:38:11 | exit M2 (normal) | | | Assignments.cs:44:9:44:58 | this access | Assignments.cs:44:27:44:34 | this access | | | Assignments.cs:44:9:44:59 | ...; | Assignments.cs:44:9:44:58 | this access | | -| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:47:44:57 | access to field StringField | | -| Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:37:44:40 | null | | +| Assignments.cs:44:27:44:34 | access to field IntField | Assignments.cs:44:37:44:40 | null | | +| Assignments.cs:44:27:44:34 | this access | Assignments.cs:44:27:44:34 | access to field IntField | | | Assignments.cs:44:37:44:40 | null | Assignments.cs:44:47:44:57 | this access | | -| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:38:10:38:11 | exit M2 (normal) | | -| Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:9:44:58 | call to method SetParamMulti | | +| Assignments.cs:44:47:44:57 | access to field StringField | Assignments.cs:44:9:44:58 | call to method SetParamMulti | | +| Assignments.cs:44:47:44:57 | this access | Assignments.cs:44:47:44:57 | access to field StringField | | | BreakInTry.cs:1:7:1:16 | call to constructor Object | BreakInTry.cs:1:7:1:16 | {...} | | | BreakInTry.cs:1:7:1:16 | call to method | BreakInTry.cs:1:7:1:16 | call to constructor Object | | | BreakInTry.cs:1:7:1:16 | enter BreakInTry | BreakInTry.cs:1:7:1:16 | this access | | From fd309d6e49e3863ddd38904aa5d039df7e632c30 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Thu, 15 Jan 2026 10:04:03 +0100 Subject: [PATCH 044/433] Rust: Remove restriction that blanket(-like) impls must have a constraint --- .../codeql/rust/frameworks/stdlib/Stdlib.qll | 30 +++++ .../typeinference/BlanketImplementation.qll | 7 +- .../typeinference/FunctionOverloading.qll | 16 ++- .../internal/typeinference/FunctionType.qll | 24 +++- .../internal/typeinference/TypeInference.qll | 113 ++++++++++++------ .../dataflow/local/inline-flow.expected | 103 +++++++++------- .../test/library-tests/dataflow/local/main.rs | 6 +- .../test/library-tests/type-inference/main.rs | 2 +- 8 files changed, 217 insertions(+), 84 deletions(-) diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll b/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll index 114c283bbdb1..b5c1dff3bead 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll @@ -5,7 +5,10 @@ private import rust private import codeql.rust.Concepts private import codeql.rust.dataflow.DataFlow +private import codeql.rust.dataflow.FlowSummary private import codeql.rust.internal.PathResolution +private import codeql.rust.internal.typeinference.Type +private import codeql.rust.internal.typeinference.TypeMention /** * A call to the `starts_with` method on a `Path`. @@ -297,3 +300,30 @@ class Vec extends Struct { /** Gets the type parameter representing the element type. */ TypeParam getElementTypeParam() { result = this.getGenericParamList().getTypeParam(0) } } + +// Blanket implementations currently don't have a canonical path, so we cannot +// use models-as-data for this model. +private class ReflexiveFrom extends SummarizedCallable::Range { + ReflexiveFrom() { + exists(ImplItemNode impl | + impl.resolveTraitTy().(Trait).getCanonicalPath() = "core::convert::From" and + this = impl.getAnAssocItem() and + impl.isBlanketImplementation() and + this.getParam(0) + .getTypeRepr() + .(TypeMention) + .resolveType() + .(TypeParamTypeParameter) + .getTypeParam() = impl.getTypeParam(0) + ) + } + + override predicate propagatesFlow( + string input, string output, boolean preservesValue, string model + ) { + input = "Argument[0]" and + output = "ReturnValue" and + preservesValue = true and + model = "ReflexiveFrom" + } +} diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll b/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll index 1d2eda61ddb4..63a21f2867b8 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll @@ -126,7 +126,7 @@ module SatisfiesBlanketConstraint< /** * Holds if the argument type `at` satisfies the first non-trivial blanket - * constraint of `impl`. + * constraint of `impl`, or if there are no non-trivial constraints of `impl`. */ pragma[nomagic] predicate satisfiesBlanketConstraint(ArgumentType at, ImplItemNode impl) { @@ -135,6 +135,11 @@ module SatisfiesBlanketConstraint< SatisfiesBlanketConstraintInput::relevantConstraint(ato, impl, traitBound) and SatisfiesBlanketConstraint::satisfiesConstraintType(ato, TTrait(traitBound), _, _) ) + or + exists(TypeParam blanketTypeParam | + hasBlanketCandidate(at, impl, _, blanketTypeParam) and + not hasFirstNonTrivialTraitBound(blanketTypeParam, _) + ) } /** diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll index 5814493c3891..1bacd2b95840 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll @@ -58,12 +58,26 @@ private predicate implSiblings(TraitItemNode trait, Impl impl1, Impl impl2) { ) } +pragma[nomagic] +private predicate isBlanketImpl(ImplItemNode impl, Trait trait) { + impl.isBlanketImplementation() and + trait = impl.resolveTraitTy() +} + /** * Holds if `impl` is an implementation of `trait` and if another implementation * exists for the same type. */ pragma[nomagic] -private predicate implHasSibling(Impl impl, Trait trait) { implSiblings(trait, impl, _) } +private predicate implHasSibling(ImplItemNode impl, Trait trait) { + implSiblings(trait, impl, _) + or + exists(ImplItemNode other | + isBlanketImpl(impl, trait) and + isBlanketImpl(other, trait) and + impl != other + ) +} /** * Holds if type parameter `tp` of `trait` occurs in the function `f` with the name diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll index e32578656195..d375ddfc9847 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll @@ -356,7 +356,7 @@ module ArgsAreInstantiationsOf { string toString() { result = call.toString() + " [arg " + pos + "]" } } - private module ArgIsInstantiationOfInput implements + private module ArgIsInstantiationOfToIndexInput implements IsInstantiationOfInputSig { pragma[nomagic] @@ -389,7 +389,7 @@ module ArgsAreInstantiationsOf { } private module ArgIsInstantiationOfToIndex = - ArgIsInstantiationOf; + ArgIsInstantiationOf; pragma[nomagic] private predicate argsAreInstantiationsOfToIndex( @@ -413,4 +413,24 @@ module ArgsAreInstantiationsOf { rnk = max(int r | toCheckRanked(i, f, _, r)) ) } + + pragma[nomagic] + private predicate argsAreNotInstantiationsOf0( + Input::Call call, FunctionPosition pos, ImplOrTraitItemNode i + ) { + ArgIsInstantiationOfToIndex::argIsNotInstantiationOf(MkCallAndPos(call, pos), i, _, _) + } + + /** + * Holds if _some_ argument of `call` has a type that is not an instantiation of the + * type of the corresponding parameter of `f` inside `i`. + */ + pragma[nomagic] + predicate argsAreNotInstantiationsOf(Input::Call call, ImplOrTraitItemNode i, Function f) { + exists(FunctionPosition pos | + argsAreNotInstantiationsOf0(call, pos, i) and + call.hasTargetCand(i, f) and + Input::toCheck(i, f, pos, _) + ) + } } diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index c579a4168d8f..2d768a8e4afa 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -1289,6 +1289,13 @@ private class BorrowKind extends TBorrowKind { } } +// for now, we do not handle ambiguous targets when one of the types is itself +// a constrained type parameter; we should be checking the constraints in this case +private predicate typeCanBeUsedForDisambiguation(Type t) { + not t instanceof TypeParameter or + t.(TypeParamTypeParameter).getTypeParam() = any(TypeParam tp | not exists(tp.getATypeBound())) +} + /** * Provides logic for resolving calls to methods. * @@ -2384,10 +2391,7 @@ private module MethodResolution { exists(TypePath path, Type t0 | FunctionOverloading::functionResolutionDependsOnArgument(i, f, pos, path, t0) and t.appliesTo(f, i, pos) and - // for now, we do not handle ambiguous targets when one of the types it iself - // a type parameter; we should be checking the constraints on that type parameter - // in this case - not t0 instanceof TypeParameter + typeCanBeUsedForDisambiguation(t0) ) } @@ -2746,7 +2750,7 @@ private module NonMethodResolution { * Gets the blanket function that this call may resolve to, if any. */ pragma[nomagic] - private NonMethodFunction resolveCallTargetBlanketCand(ImplItemNode impl) { + NonMethodFunction resolveCallTargetBlanketCand(ImplItemNode impl) { exists(string name | this.hasNameAndArity(pragma[only_bind_into](name), _) and ArgIsInstantiationOfBlanketParam::argIsInstantiationOf(MkCallAndBlanketPos(this, _), impl, _) and @@ -2761,12 +2765,11 @@ private module NonMethodResolution { predicate hasTrait() { exists(this.getTrait()) } pragma[nomagic] - NonMethodFunction resolveAssocCallTargetCand(ImplItemNode i) { + NonMethodFunction resolveCallTargetNonBlanketCand(ImplItemNode i) { not this.hasTrait() and result = this.getPathResolutionResolved() and - result = i.getASuccessor(_) - or - result = this.resolveCallTargetBlanketCand(i) + result = i.getASuccessor(_) and + FunctionOverloading::functionResolutionDependsOnArgument(_, result, _, _, _) } AstNode getNodeAt(FunctionPosition pos) { @@ -2798,6 +2801,21 @@ private module NonMethodResolution { trait = this.getTrait() } + /** + * Holds if this call has no compatible non-blanket target, and it has some + * candidate blanket target. + */ + pragma[nomagic] + predicate hasNoCompatibleNonBlanketTarget() { + this.resolveCallTargetBlanketLikeCandidate(_, _, _, _) and + not exists(this.resolveCallTargetViaPathResolution()) and + forall(ImplOrTraitItemNode i, Function f | + this.(NonMethodArgsAreInstantiationsOfNonBlanketInput::Call).hasTargetCand(i, f) + | + NonMethodArgsAreInstantiationsOfNonBlanket::argsAreNotInstantiationsOf(this, i, f) + ) + } + /** * Gets the target of this call, which can be resolved using only path resolution. */ @@ -2816,7 +2834,9 @@ private module NonMethodResolution { result = this.resolveCallTargetBlanketCand(i) and not FunctionOverloading::functionResolutionDependsOnArgument(_, result, _, _, _) or - NonMethodArgsAreInstantiationsOf::argsAreInstantiationsOf(this, i, result) + NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOf(this, i, result) + or + NonMethodArgsAreInstantiationsOfNonBlanket::argsAreInstantiationsOf(this, i, result) } pragma[nomagic] @@ -2855,7 +2875,11 @@ private module NonMethodResolution { ) { exists(NonMethodCall fc, FunctionPosition pos | fcp = MkCallAndBlanketPos(fc, pos) and - fc.resolveCallTargetBlanketLikeCandidate(impl, pos, blanketPath, blanketTypeParam) + fc.resolveCallTargetBlanketLikeCandidate(impl, pos, blanketPath, blanketTypeParam) and + // Only apply blanket implementations when no other implementations are possible; + // this is to account for codebases that use the (unstable) specialization feature + // (https://rust-lang.github.io/rfcs/1210-impl-specialization.html) + (fc.hasNoCompatibleNonBlanketTarget() or not impl.isBlanketImplementation()) ) } } @@ -2890,37 +2914,24 @@ private module NonMethodResolution { private module ArgIsInstantiationOfBlanketParam = ArgIsInstantiationOf; - private module NonMethodArgsAreInstantiationsOfInput implements ArgsAreInstantiationsOfInputSig { + private module NonMethodArgsAreInstantiationsOfBlanketInput implements + ArgsAreInstantiationsOfInputSig + { predicate toCheck(ImplOrTraitItemNode i, Function f, FunctionPosition pos, AssocFunctionType t) { t.appliesTo(f, i, pos) and - ( - exists(Type t0 | - // for now, we do not handle ambiguous targets when one of the types it iself - // a type parameter; we should be checking the constraints on that type parameter - // in this case - not t0 instanceof TypeParameter - | - FunctionOverloading::functionResolutionDependsOnArgument(i, f, pos, _, t0) - or - traitFunctionDependsOnPos(_, _, pos, t0, i, f) - ) + exists(Type t0 | typeCanBeUsedForDisambiguation(t0) | + FunctionOverloading::functionResolutionDependsOnArgument(i, f, pos, _, t0) or - // match against the trait function itself - exists(Trait trait | - FunctionOverloading::traitTypeParameterOccurrence(trait, f, _, pos, _, - TSelfTypeParameter(trait)) - ) + traitFunctionDependsOnPos(_, _, pos, t0, i, f) ) } - class Call extends NonMethodCall { + final class Call extends NonMethodCall { Type getArgType(FunctionPosition pos, TypePath path) { result = inferType(this.getNodeAt(pos), path) } - predicate hasTargetCand(ImplOrTraitItemNode i, Function f) { - f = this.resolveAssocCallTargetCand(i) - or + predicate hasTraitResolvedCand(ImplOrTraitItemNode i, Function f) { exists(TraitItemNode trait, NonMethodFunction resolved, ImplItemNode i1, Function f1 | this.hasTraitResolved(trait, resolved) and traitFunctionDependsOnPos(trait, resolved, _, _, i1, f1) @@ -2932,11 +2943,45 @@ private module NonMethodResolution { i = trait ) } + + predicate hasTargetCand(ImplOrTraitItemNode i, Function f) { + f = this.resolveCallTargetBlanketCand(i) + or + this.hasTraitResolvedCand(i, f) and + BlanketImplementation::isBlanketLike(i, _, _) + } + } + } + + private module NonMethodArgsAreInstantiationsOfBlanket = + ArgsAreInstantiationsOf; + + private module NonMethodArgsAreInstantiationsOfNonBlanketInput implements + ArgsAreInstantiationsOfInputSig + { + predicate toCheck(ImplOrTraitItemNode i, Function f, FunctionPosition pos, AssocFunctionType t) { + NonMethodArgsAreInstantiationsOfBlanketInput::toCheck(i, f, pos, t) + or + // match against the trait function itself + t.appliesTo(f, i, pos) and + exists(Trait trait | + FunctionOverloading::traitTypeParameterOccurrence(trait, f, _, pos, _, + TSelfTypeParameter(trait)) + ) + } + + class Call extends NonMethodArgsAreInstantiationsOfBlanketInput::Call { + predicate hasTargetCand(ImplOrTraitItemNode i, Function f) { + f = this.resolveCallTargetNonBlanketCand(i) + or + this.hasTraitResolvedCand(i, f) and + not BlanketImplementation::isBlanketLike(i, _, _) + } } } - private module NonMethodArgsAreInstantiationsOf = - ArgsAreInstantiationsOf; + private module NonMethodArgsAreInstantiationsOfNonBlanket = + ArgsAreInstantiationsOf; } abstract private class TupleLikeConstructor extends Addressable { diff --git a/rust/ql/test/library-tests/dataflow/local/inline-flow.expected b/rust/ql/test/library-tests/dataflow/local/inline-flow.expected index 27a4192867fe..0a130b8a2888 100644 --- a/rust/ql/test/library-tests/dataflow/local/inline-flow.expected +++ b/rust/ql/test/library-tests/dataflow/local/inline-flow.expected @@ -2,22 +2,24 @@ models | 1 | Summary: <& as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue; value | | 2 | Summary: <_ as alloc::string::ToString>::to_string; Argument[self].Reference; ReturnValue; taint | | 3 | Summary: <_ as core::convert::From>::from; Argument[0]; ReturnValue; taint | -| 4 | Summary: <_ as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue.Reference; taint | -| 5 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | -| 6 | Summary: ::deref; Argument[self].Reference.Field[alloc::boxed::Box(0)]; ReturnValue.Reference; value | -| 7 | Summary: ::new; Argument[0]; ReturnValue.Field[alloc::boxed::Box(0)]; value | -| 8 | Summary: ::deref; Argument[self]; ReturnValue; value | -| 9 | Summary: ::from; Argument[0]; ReturnValue; taint | -| 10 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 11 | Summary: ::unwrap_or; Argument[0]; ReturnValue; value | -| 12 | Summary: ::unwrap_or; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 13 | Summary: ::unwrap_or_else; Argument[0].ReturnValue; ReturnValue; value | -| 14 | Summary: ::unwrap_or_else; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 15 | Summary: ::err; Argument[self].Field[core::result::Result::Err(0)]; ReturnValue.Field[core::option::Option::Some(0)]; value | -| 16 | Summary: ::expect; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 17 | Summary: ::expect_err; Argument[self].Field[core::result::Result::Err(0)]; ReturnValue; value | -| 18 | Summary: ::ok; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue.Field[core::option::Option::Some(0)]; value | -| 19 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 4 | Summary: <_ as core::convert::Into>::into; Argument[self].Element; ReturnValue.Element; taint | +| 5 | Summary: <_ as core::convert::Into>::into; Argument[self].Reference.Element; ReturnValue.Element; taint | +| 6 | Summary: <_ as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue.Reference; taint | +| 7 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | +| 8 | Summary: ::deref; Argument[self].Reference.Field[alloc::boxed::Box(0)]; ReturnValue.Reference; value | +| 9 | Summary: ::new; Argument[0]; ReturnValue.Field[alloc::boxed::Box(0)]; value | +| 10 | Summary: ::deref; Argument[self]; ReturnValue; value | +| 11 | Summary: ::from; Argument[0]; ReturnValue; taint | +| 12 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 13 | Summary: ::unwrap_or; Argument[0]; ReturnValue; value | +| 14 | Summary: ::unwrap_or; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 15 | Summary: ::unwrap_or_else; Argument[0].ReturnValue; ReturnValue; value | +| 16 | Summary: ::unwrap_or_else; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 17 | Summary: ::err; Argument[self].Field[core::result::Result::Err(0)]; ReturnValue.Field[core::option::Option::Some(0)]; value | +| 18 | Summary: ::expect; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 19 | Summary: ::expect_err; Argument[self].Field[core::result::Result::Err(0)]; ReturnValue; value | +| 20 | Summary: ::ok; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue.Field[core::option::Option::Some(0)]; value | +| 21 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | edges | main.rs:23:9:23:9 | s | main.rs:24:10:24:10 | s | provenance | | | main.rs:23:9:23:9 | s | main.rs:26:12:26:12 | x | provenance | | @@ -45,8 +47,8 @@ edges | main.rs:82:5:82:5 | l | main.rs:83:10:83:10 | l | provenance | | | main.rs:115:9:115:9 | i [Box(0)] | main.rs:116:11:116:11 | i [Box(0)] | provenance | | | main.rs:115:13:115:31 | ...::new(...) [Box(0)] | main.rs:115:9:115:9 | i [Box(0)] | provenance | | -| main.rs:115:22:115:30 | source(...) | main.rs:115:13:115:31 | ...::new(...) [Box(0)] | provenance | MaD:7 | -| main.rs:116:11:116:11 | i [Box(0)] | main.rs:116:10:116:11 | * ... | provenance | MaD:6 | +| main.rs:115:22:115:30 | source(...) | main.rs:115:13:115:31 | ...::new(...) [Box(0)] | provenance | MaD:9 | +| main.rs:116:11:116:11 | i [Box(0)] | main.rs:116:10:116:11 | * ... | provenance | MaD:8 | | main.rs:123:9:123:9 | a [tuple.0] | main.rs:124:10:124:10 | a [tuple.0] | provenance | | | main.rs:123:13:123:26 | TupleExpr [tuple.0] | main.rs:123:9:123:9 | a [tuple.0] | provenance | | | main.rs:123:14:123:22 | source(...) | main.rs:123:13:123:26 | TupleExpr [tuple.0] | provenance | | @@ -129,17 +131,17 @@ edges | main.rs:278:9:278:10 | s1 [Some] | main.rs:279:10:279:11 | s1 [Some] | provenance | | | main.rs:278:14:278:29 | Some(...) [Some] | main.rs:278:9:278:10 | s1 [Some] | provenance | | | main.rs:278:19:278:28 | source(...) | main.rs:278:14:278:29 | Some(...) [Some] | provenance | | -| main.rs:279:10:279:11 | s1 [Some] | main.rs:279:10:279:20 | s1.unwrap() | provenance | MaD:10 | +| main.rs:279:10:279:11 | s1 [Some] | main.rs:279:10:279:20 | s1.unwrap() | provenance | MaD:12 | | main.rs:283:9:283:10 | s1 [Some] | main.rs:284:10:284:11 | s1 [Some] | provenance | | | main.rs:283:14:283:29 | Some(...) [Some] | main.rs:283:9:283:10 | s1 [Some] | provenance | | | main.rs:283:19:283:28 | source(...) | main.rs:283:14:283:29 | Some(...) [Some] | provenance | | -| main.rs:284:10:284:11 | s1 [Some] | main.rs:284:10:284:24 | s1.unwrap_or(...) | provenance | MaD:12 | -| main.rs:287:23:287:32 | source(...) | main.rs:287:10:287:33 | s2.unwrap_or(...) | provenance | MaD:11 | +| main.rs:284:10:284:11 | s1 [Some] | main.rs:284:10:284:24 | s1.unwrap_or(...) | provenance | MaD:14 | +| main.rs:287:23:287:32 | source(...) | main.rs:287:10:287:33 | s2.unwrap_or(...) | provenance | MaD:13 | | main.rs:291:9:291:10 | s1 [Some] | main.rs:292:10:292:11 | s1 [Some] | provenance | | | main.rs:291:14:291:29 | Some(...) [Some] | main.rs:291:9:291:10 | s1 [Some] | provenance | | | main.rs:291:19:291:28 | source(...) | main.rs:291:14:291:29 | Some(...) [Some] | provenance | | -| main.rs:292:10:292:11 | s1 [Some] | main.rs:292:10:292:32 | s1.unwrap_or_else(...) | provenance | MaD:14 | -| main.rs:295:31:295:40 | source(...) | main.rs:295:10:295:41 | s2.unwrap_or_else(...) | provenance | MaD:13 | +| main.rs:292:10:292:11 | s1 [Some] | main.rs:292:10:292:32 | s1.unwrap_or_else(...) | provenance | MaD:16 | +| main.rs:295:31:295:40 | source(...) | main.rs:295:10:295:41 | s2.unwrap_or_else(...) | provenance | MaD:15 | | main.rs:299:9:299:10 | s1 [Some] | main.rs:301:14:301:15 | s1 [Some] | provenance | | | main.rs:299:14:299:29 | Some(...) [Some] | main.rs:299:9:299:10 | s1 [Some] | provenance | | | main.rs:299:19:299:28 | source(...) | main.rs:299:14:299:29 | Some(...) [Some] | provenance | | @@ -150,16 +152,16 @@ edges | main.rs:308:32:308:45 | Ok(...) [Ok] | main.rs:308:9:308:10 | r1 [Ok] | provenance | | | main.rs:308:35:308:44 | source(...) | main.rs:308:32:308:45 | Ok(...) [Ok] | provenance | | | main.rs:309:9:309:11 | o1a [Some] | main.rs:311:10:311:12 | o1a [Some] | provenance | | -| main.rs:309:28:309:29 | r1 [Ok] | main.rs:309:28:309:34 | r1.ok() [Some] | provenance | MaD:18 | +| main.rs:309:28:309:29 | r1 [Ok] | main.rs:309:28:309:34 | r1.ok() [Some] | provenance | MaD:20 | | main.rs:309:28:309:34 | r1.ok() [Some] | main.rs:309:9:309:11 | o1a [Some] | provenance | | -| main.rs:311:10:311:12 | o1a [Some] | main.rs:311:10:311:21 | o1a.unwrap() | provenance | MaD:10 | +| main.rs:311:10:311:12 | o1a [Some] | main.rs:311:10:311:21 | o1a.unwrap() | provenance | MaD:12 | | main.rs:314:9:314:10 | r2 [Err] | main.rs:316:28:316:29 | r2 [Err] | provenance | | | main.rs:314:32:314:46 | Err(...) [Err] | main.rs:314:9:314:10 | r2 [Err] | provenance | | | main.rs:314:36:314:45 | source(...) | main.rs:314:32:314:46 | Err(...) [Err] | provenance | | | main.rs:316:9:316:11 | o2b [Some] | main.rs:318:10:318:12 | o2b [Some] | provenance | | -| main.rs:316:28:316:29 | r2 [Err] | main.rs:316:28:316:35 | r2.err() [Some] | provenance | MaD:15 | +| main.rs:316:28:316:29 | r2 [Err] | main.rs:316:28:316:35 | r2.err() [Some] | provenance | MaD:17 | | main.rs:316:28:316:35 | r2.err() [Some] | main.rs:316:9:316:11 | o2b [Some] | provenance | | -| main.rs:318:10:318:12 | o2b [Some] | main.rs:318:10:318:21 | o2b.unwrap() | provenance | MaD:10 | +| main.rs:318:10:318:12 | o2b [Some] | main.rs:318:10:318:21 | o2b.unwrap() | provenance | MaD:12 | | main.rs:322:9:322:10 | s1 [Ok] | main.rs:325:14:325:15 | s1 [Ok] | provenance | | | main.rs:322:32:322:45 | Ok(...) [Ok] | main.rs:322:9:322:10 | s1 [Ok] | provenance | | | main.rs:322:35:322:44 | source(...) | main.rs:322:32:322:45 | Ok(...) [Ok] | provenance | | @@ -169,11 +171,11 @@ edges | main.rs:335:9:335:10 | s1 [Ok] | main.rs:336:10:336:11 | s1 [Ok] | provenance | | | main.rs:335:32:335:45 | Ok(...) [Ok] | main.rs:335:9:335:10 | s1 [Ok] | provenance | | | main.rs:335:35:335:44 | source(...) | main.rs:335:32:335:45 | Ok(...) [Ok] | provenance | | -| main.rs:336:10:336:11 | s1 [Ok] | main.rs:336:10:336:22 | s1.expect(...) | provenance | MaD:16 | +| main.rs:336:10:336:11 | s1 [Ok] | main.rs:336:10:336:22 | s1.expect(...) | provenance | MaD:18 | | main.rs:339:9:339:10 | s2 [Err] | main.rs:341:10:341:11 | s2 [Err] | provenance | | | main.rs:339:32:339:46 | Err(...) [Err] | main.rs:339:9:339:10 | s2 [Err] | provenance | | | main.rs:339:36:339:45 | source(...) | main.rs:339:32:339:46 | Err(...) [Err] | provenance | | -| main.rs:341:10:341:11 | s2 [Err] | main.rs:341:10:341:26 | s2.expect_err(...) | provenance | MaD:17 | +| main.rs:341:10:341:11 | s2 [Err] | main.rs:341:10:341:26 | s2.expect_err(...) | provenance | MaD:19 | | main.rs:350:9:350:10 | s1 [A] | main.rs:352:11:352:12 | s1 [A] | provenance | | | main.rs:350:14:350:39 | ...::A(...) [A] | main.rs:350:9:350:10 | s1 [A] | provenance | | | main.rs:350:29:350:38 | source(...) | main.rs:350:14:350:39 | ...::A(...) [A] | provenance | | @@ -222,13 +224,13 @@ edges | main.rs:430:16:430:33 | [...] [element] | main.rs:430:9:430:12 | arr1 [element] | provenance | | | main.rs:430:23:430:32 | source(...) | main.rs:430:16:430:33 | [...] [element] | provenance | | | main.rs:431:9:431:10 | n1 | main.rs:432:10:432:11 | n1 | provenance | | -| main.rs:431:14:431:17 | arr1 [element] | main.rs:431:14:431:20 | arr1[2] | provenance | MaD:5 | +| main.rs:431:14:431:17 | arr1 [element] | main.rs:431:14:431:20 | arr1[2] | provenance | MaD:7 | | main.rs:431:14:431:20 | arr1[2] | main.rs:431:9:431:10 | n1 | provenance | | | main.rs:434:9:434:12 | arr2 [element] | main.rs:435:14:435:17 | arr2 [element] | provenance | | | main.rs:434:16:434:31 | [...; 10] [element] | main.rs:434:9:434:12 | arr2 [element] | provenance | | | main.rs:434:17:434:26 | source(...) | main.rs:434:16:434:31 | [...; 10] [element] | provenance | | | main.rs:435:9:435:10 | n2 | main.rs:436:10:436:11 | n2 | provenance | | -| main.rs:435:14:435:17 | arr2 [element] | main.rs:435:14:435:20 | arr2[4] | provenance | MaD:5 | +| main.rs:435:14:435:17 | arr2 [element] | main.rs:435:14:435:20 | arr2[4] | provenance | MaD:7 | | main.rs:435:14:435:20 | arr2[4] | main.rs:435:9:435:10 | n2 | provenance | | | main.rs:444:9:444:12 | arr1 [element] | main.rs:445:15:445:18 | arr1 [element] | provenance | | | main.rs:444:16:444:33 | [...] [element] | main.rs:444:9:444:12 | arr1 [element] | provenance | | @@ -249,9 +251,9 @@ edges | main.rs:470:5:470:11 | [post] mut_arr [element] | main.rs:473:10:473:16 | mut_arr [element] | provenance | | | main.rs:470:18:470:27 | source(...) | main.rs:470:5:470:11 | [post] mut_arr [element] | provenance | | | main.rs:471:9:471:9 | d | main.rs:472:10:472:10 | d | provenance | | -| main.rs:471:13:471:19 | mut_arr [element] | main.rs:471:13:471:22 | mut_arr[1] | provenance | MaD:5 | +| main.rs:471:13:471:19 | mut_arr [element] | main.rs:471:13:471:22 | mut_arr[1] | provenance | MaD:7 | | main.rs:471:13:471:22 | mut_arr[1] | main.rs:471:9:471:9 | d | provenance | | -| main.rs:473:10:473:16 | mut_arr [element] | main.rs:473:10:473:19 | mut_arr[0] | provenance | MaD:5 | +| main.rs:473:10:473:16 | mut_arr [element] | main.rs:473:10:473:19 | mut_arr[0] | provenance | MaD:7 | | main.rs:496:9:496:9 | s | main.rs:497:10:497:10 | s | provenance | | | main.rs:496:25:496:26 | source(...) | main.rs:496:9:496:9 | s | provenance | | | main.rs:505:9:505:9 | a | main.rs:506:13:506:13 | a | provenance | | @@ -263,26 +265,26 @@ edges | main.rs:506:13:506:13 | a | main.rs:506:13:506:25 | a.to_string() | provenance | MaD:2 | | main.rs:506:13:506:25 | a.to_string() | main.rs:506:9:506:9 | b | provenance | | | main.rs:507:9:507:9 | c | main.rs:512:10:512:10 | c | provenance | | -| main.rs:507:13:507:13 | b | main.rs:507:13:507:28 | b.parse() [Ok] | provenance | MaD:4 | -| main.rs:507:13:507:13 | b | main.rs:507:13:507:28 | b.parse() [Ok] | provenance | MaD:8 | -| main.rs:507:13:507:28 | b.parse() [Ok] | main.rs:507:13:507:37 | ... .unwrap() | provenance | MaD:19 | +| main.rs:507:13:507:13 | b | main.rs:507:13:507:28 | b.parse() [Ok] | provenance | MaD:6 | +| main.rs:507:13:507:13 | b | main.rs:507:13:507:28 | b.parse() [Ok] | provenance | MaD:10 | +| main.rs:507:13:507:28 | b.parse() [Ok] | main.rs:507:13:507:37 | ... .unwrap() | provenance | MaD:21 | | main.rs:507:13:507:37 | ... .unwrap() | main.rs:507:9:507:9 | c | provenance | | | main.rs:508:9:508:9 | d | main.rs:513:10:513:10 | d | provenance | | -| main.rs:508:18:508:18 | b | main.rs:508:18:508:26 | b.parse() [Ok] | provenance | MaD:4 | -| main.rs:508:18:508:18 | b | main.rs:508:18:508:26 | b.parse() [Ok] | provenance | MaD:8 | -| main.rs:508:18:508:26 | b.parse() [Ok] | main.rs:508:18:508:35 | ... .unwrap() | provenance | MaD:19 | +| main.rs:508:18:508:18 | b | main.rs:508:18:508:26 | b.parse() [Ok] | provenance | MaD:6 | +| main.rs:508:18:508:18 | b | main.rs:508:18:508:26 | b.parse() [Ok] | provenance | MaD:10 | +| main.rs:508:18:508:26 | b.parse() [Ok] | main.rs:508:18:508:35 | ... .unwrap() | provenance | MaD:21 | | main.rs:508:18:508:35 | ... .unwrap() | main.rs:508:9:508:9 | d | provenance | | | main.rs:517:9:517:10 | vs [element] | main.rs:519:10:519:11 | vs [element] | provenance | | | main.rs:517:9:517:10 | vs [element] | main.rs:523:14:523:15 | vs [element] | provenance | | | main.rs:517:14:517:34 | [...] [element] | main.rs:517:9:517:10 | vs [element] | provenance | | | main.rs:517:15:517:24 | source(...) | main.rs:517:14:517:34 | [...] [element] | provenance | | -| main.rs:519:10:519:11 | vs [element] | main.rs:519:10:519:14 | vs[0] | provenance | MaD:5 | +| main.rs:519:10:519:11 | vs [element] | main.rs:519:10:519:14 | vs[0] | provenance | MaD:7 | | main.rs:523:9:523:9 | v | main.rs:524:14:524:14 | v | provenance | | | main.rs:523:14:523:15 | vs [element] | main.rs:523:9:523:9 | v | provenance | | | main.rs:542:9:542:18 | mut vs_mut [element] | main.rs:544:10:544:15 | vs_mut [element] | provenance | | | main.rs:542:22:542:42 | [...] [element] | main.rs:542:9:542:18 | mut vs_mut [element] | provenance | | | main.rs:542:23:542:32 | source(...) | main.rs:542:22:542:42 | [...] [element] | provenance | | -| main.rs:544:10:544:15 | vs_mut [element] | main.rs:544:10:544:18 | vs_mut[0] | provenance | MaD:5 | +| main.rs:544:10:544:15 | vs_mut [element] | main.rs:544:10:544:18 | vs_mut[0] | provenance | MaD:7 | | main.rs:554:9:554:9 | a | main.rs:559:10:559:10 | a | provenance | | | main.rs:554:13:554:22 | source(...) | main.rs:554:9:554:9 | a | provenance | | | main.rs:555:9:555:9 | b | main.rs:560:15:560:15 | b | provenance | | @@ -296,12 +298,20 @@ edges | main.rs:560:15:560:15 | b | main.rs:560:14:560:15 | &b | provenance | | | main.rs:562:11:562:15 | c_ref [&ref] | main.rs:562:10:562:15 | * ... | provenance | MaD:1 | | main.rs:566:9:566:9 | a | main.rs:568:10:568:17 | a as i64 | provenance | | +| main.rs:566:9:566:9 | a | main.rs:569:10:569:10 | a | provenance | | +| main.rs:566:9:566:9 | a | main.rs:570:20:570:20 | a | provenance | | | main.rs:566:18:566:27 | source(...) | main.rs:566:9:566:9 | a | provenance | | +| main.rs:569:10:569:10 | a | main.rs:569:10:569:17 | a.into() | provenance | MaD:4 | +| main.rs:569:10:569:10 | a | main.rs:569:10:569:17 | a.into() | provenance | MaD:5 | +| main.rs:570:20:570:20 | a | main.rs:570:10:570:21 | ...::from(...) | provenance | ReflexiveFrom | | main.rs:572:9:572:9 | b | main.rs:574:10:574:17 | b as i64 | provenance | | +| main.rs:572:9:572:9 | b | main.rs:575:10:575:10 | b | provenance | | | main.rs:572:9:572:9 | b | main.rs:576:20:576:20 | b | provenance | | | main.rs:572:18:572:27 | source(...) | main.rs:572:9:572:9 | b | provenance | | +| main.rs:575:10:575:10 | b | main.rs:575:10:575:17 | b.into() | provenance | MaD:4 | +| main.rs:575:10:575:10 | b | main.rs:575:10:575:17 | b.into() | provenance | MaD:5 | | main.rs:576:20:576:20 | b | main.rs:576:10:576:21 | ...::from(...) | provenance | MaD:3 | -| main.rs:576:20:576:20 | b | main.rs:576:10:576:21 | ...::from(...) | provenance | MaD:9 | +| main.rs:576:20:576:20 | b | main.rs:576:10:576:21 | ...::from(...) | provenance | MaD:11 | nodes | main.rs:19:10:19:18 | source(...) | semmle.label | source(...) | | main.rs:23:9:23:9 | s | semmle.label | s | @@ -630,9 +640,15 @@ nodes | main.rs:566:9:566:9 | a | semmle.label | a | | main.rs:566:18:566:27 | source(...) | semmle.label | source(...) | | main.rs:568:10:568:17 | a as i64 | semmle.label | a as i64 | +| main.rs:569:10:569:10 | a | semmle.label | a | +| main.rs:569:10:569:17 | a.into() | semmle.label | a.into() | +| main.rs:570:10:570:21 | ...::from(...) | semmle.label | ...::from(...) | +| main.rs:570:20:570:20 | a | semmle.label | a | | main.rs:572:9:572:9 | b | semmle.label | b | | main.rs:572:18:572:27 | source(...) | semmle.label | source(...) | | main.rs:574:10:574:17 | b as i64 | semmle.label | b as i64 | +| main.rs:575:10:575:10 | b | semmle.label | b | +| main.rs:575:10:575:17 | b.into() | semmle.label | b.into() | | main.rs:576:10:576:21 | ...::from(...) | semmle.label | ...::from(...) | | main.rs:576:20:576:20 | b | semmle.label | b | subpaths @@ -707,5 +723,8 @@ testFailures | main.rs:561:14:561:18 | c_ref | main.rs:556:13:556:22 | source(...) | main.rs:561:14:561:18 | c_ref | $@ | main.rs:556:13:556:22 | source(...) | source(...) | | main.rs:562:10:562:15 | * ... | main.rs:556:13:556:22 | source(...) | main.rs:562:10:562:15 | * ... | $@ | main.rs:556:13:556:22 | source(...) | source(...) | | main.rs:568:10:568:17 | a as i64 | main.rs:566:18:566:27 | source(...) | main.rs:568:10:568:17 | a as i64 | $@ | main.rs:566:18:566:27 | source(...) | source(...) | +| main.rs:569:10:569:17 | a.into() | main.rs:566:18:566:27 | source(...) | main.rs:569:10:569:17 | a.into() | $@ | main.rs:566:18:566:27 | source(...) | source(...) | +| main.rs:570:10:570:21 | ...::from(...) | main.rs:566:18:566:27 | source(...) | main.rs:570:10:570:21 | ...::from(...) | $@ | main.rs:566:18:566:27 | source(...) | source(...) | | main.rs:574:10:574:17 | b as i64 | main.rs:572:18:572:27 | source(...) | main.rs:574:10:574:17 | b as i64 | $@ | main.rs:572:18:572:27 | source(...) | source(...) | +| main.rs:575:10:575:17 | b.into() | main.rs:572:18:572:27 | source(...) | main.rs:575:10:575:17 | b.into() | $@ | main.rs:572:18:572:27 | source(...) | source(...) | | main.rs:576:10:576:21 | ...::from(...) | main.rs:572:18:572:27 | source(...) | main.rs:576:10:576:21 | ...::from(...) | $@ | main.rs:572:18:572:27 | source(...) | source(...) | diff --git a/rust/ql/test/library-tests/dataflow/local/main.rs b/rust/ql/test/library-tests/dataflow/local/main.rs index b3c40bd45130..41f34da6122d 100644 --- a/rust/ql/test/library-tests/dataflow/local/main.rs +++ b/rust/ql/test/library-tests/dataflow/local/main.rs @@ -566,13 +566,13 @@ fn conversions() { let a: i64 = source(50); sink(a as i64); // $ hasTaintFlow=50 - sink(a.into()); // $ MISSING: hasValueFlow=50 - sink(i64::from(a)); // $ MISSING: hasTaintFlow=50 -- we cannot resolve the `impl From for T` implementation + sink(a.into()); // $ SPURIOUS: hasTaintFlow=50 $ MISSING: hasValueFlow=50 -- it is not possible to define a value-preserving summary for `into` since it depends on which `from` function is called + sink(i64::from(a)); // $ hasValueFlow=50 let b: i32 = source(51) as i32; sink(b as i64); // $ hasTaintFlow=51 - sink(b.into()); // $ MISSING: hasTaintFlow=51 + sink(b.into()); // $ hasTaintFlow=51 sink(i64::from(b)); // $ hasTaintFlow=51 } diff --git a/rust/ql/test/library-tests/type-inference/main.rs b/rust/ql/test/library-tests/type-inference/main.rs index a7efa447647a..451f76dfe92f 100644 --- a/rust/ql/test/library-tests/type-inference/main.rs +++ b/rust/ql/test/library-tests/type-inference/main.rs @@ -2595,7 +2595,7 @@ mod tuples { let i: i64 = pair.0; // $ fieldof=Tuple2 let j: bool = pair.1; // $ fieldof=Tuple2 - let pair = [1, 1].into(); // $ type=pair:(T_2) type=pair:T0.i32 type=pair:T1.i32 MISSING: target=into + let pair = [1, 1].into(); // $ type=pair:(T_2) type=pair:T0.i32 type=pair:T1.i32 target=into match pair { (0, 0) => print!("unexpected"), _ => print!("expected"), From 948623e767afc6f8f4a57fef0c0f7f6908ca28dd Mon Sep 17 00:00:00 2001 From: Philip Ginsbach Date: Mon, 19 Jan 2026 10:24:29 +0000 Subject: [PATCH 045/433] add overlay annotation support to QL syntax highlighter --- docs/codeql/qllexer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/codeql/qllexer.py b/docs/codeql/qllexer.py index 33c0becdfc3b..55a65e84152f 100644 --- a/docs/codeql/qllexer.py +++ b/docs/codeql/qllexer.py @@ -35,7 +35,7 @@ class QLLexer(RegexLexer): # Keywords (r'\b(boolean|date|float|int|string)\b', Keyword.Type), (r'\b(abstract|cached|deprecated|external|final|library|override|private|query' - r'|(pragma|language|bindingset)\[\w*(,\s*\w*)*\])\s', + r'|(pragma|language|bindingset|overlay)\[\w*\??(,\s*\w*\??)*\])\s', Keyword.Reserved), (words(( 'and', 'any', 'as', 'asc', 'avg', 'by', 'class','concat', 'count', From 2b31928c7bf068980f60886a93473ae26159b5e0 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Thu, 15 Jan 2026 17:45:38 +0000 Subject: [PATCH 046/433] C++: Add MaD barrier guard tests. --- .../dataflow/ir-barrier-guards/test.cpp | 35 +++++++++++++++++++ .../dataflow/ir-barrier-guards/test.ext.yml | 13 +++++++ .../dataflow/ir-barrier-guards/test.ql | 9 +++-- 3 files changed, 52 insertions(+), 5 deletions(-) create mode 100644 cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ext.yml diff --git a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp index 9d9a89c70087..bc8b4d113d89 100644 --- a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp +++ b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp @@ -12,4 +12,39 @@ void testCheckArgument(int p) { if (checkArgument(&p)) { sink(p); // $ barrier=glval indirect_barrier=int } +} + +int* get_clean_value(int* x) { return x; } +bool is_clean_value(int*); + +int* get_clean_pointer(int* x) { return x; } +bool is_clean_pointer(int*); + +void sink(int); +void sink(int*); + +void test_mad(int x, int* p) { + { + if(is_clean_value(&x)) { + sink(x); // $ MISSING: external=int + } + } + + { + if(is_clean_value(p)) { + sink(*p); // $ MISSING: external=int + } + } + + { + if(is_clean_pointer(p)) { + sink(p); // $ MISSING: external=int* + } + } + + { + if(is_clean_pointer(&x)) { + sink(x); // $ MISSING: external=glval + } + } } \ No newline at end of file diff --git a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ext.yml b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ext.yml new file mode 100644 index 000000000000..9f60fc19a5e6 --- /dev/null +++ b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ext.yml @@ -0,0 +1,13 @@ +extensions: + - addsTo: + pack: codeql/cpp-all + extensible: barrierModel + data: + - ["", "", False, "get_clean_pointer", "", "", "ReturnValue", "test-barrier", "manual"] + - ["", "", False, "get_clean_data", "", "", "ReturnValue[*]", "test-barrier", "manual"] + - addsTo: + pack: codeql/cpp-all + extensible: barrierGuardModel + data: + - ["", "", False, "is_clean_value", "", "", "Argument[*0]", "true", "test-barrier", "manual"] + - ["", "", False, "is_clean_pointer", "", "", "Argument[0]", "true", "test-barrier", "manual"] \ No newline at end of file diff --git a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ql b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ql index 5961da371228..43a5c1499f0b 100644 --- a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ql +++ b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ql @@ -2,6 +2,7 @@ import cpp import semmle.code.cpp.dataflow.new.DataFlow import semmle.code.cpp.controlflow.IRGuards import utils.test.InlineExpectationsTest +import semmle.code.cpp.dataflow.ExternalFlow predicate instructionGuardChecks(IRGuardCondition gc, Instruction checked, boolean branch) { exists(CallInstruction call | @@ -31,13 +32,11 @@ module Test implements TestSig { string getARelevantTag() { result = ["barrier", "indirect_barrier"] } predicate hasActualResult(Location location, string element, string tag, string value) { - exists(DataFlow::Node node, string s | - indirectBarrierGuard(node, s) and - value = s and + exists(DataFlow::Node node | + indirectBarrierGuard(node, value) and tag = "indirect_barrier" or - barrierGuard(node, s) and - value = s and + barrierGuard(node, value) and tag = "barrier" | element = node.toString() and From 07ac8a5d81824200bb0bcdb6484a0bfc74b5db29 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Thu, 15 Jan 2026 18:04:40 +0000 Subject: [PATCH 047/433] C++: Parameterize the BarrierGuard modules. This is useful for barrier guards with flow states and will be necessary in the next commit for adding MaD specified barriers. --- .../cpp/ir/dataflow/internal/DataFlowUtil.qll | 141 ++++++++++++++---- .../code/cpp/ir/dataflow/internal/SsaImpl.qll | 54 ++++--- 2 files changed, 149 insertions(+), 46 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll index 919a32d8a4b7..1c338d5a52d9 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll @@ -2417,6 +2417,19 @@ class ContentSet instanceof Content { } } +private signature class ParamSig; + +private module WithParam { + /** + * Holds if the guard `g` validates the expression `e` upon evaluating to `branch`. + * + * The expression `e` is expected to be a syntactic part of the guard `g`. + * For example, the guard `g` might be a call `isSafe(x)` and the expression `e` + * the argument `x`. + */ + signature predicate guardChecksSig(IRGuardCondition g, Expr e, boolean branch, P param); +} + /** * Holds if the guard `g` validates the expression `e` upon evaluating to `branch`. * @@ -2438,7 +2451,7 @@ private predicate controls(IRGuardCondition g, Node n, boolean edge) { * This is expected to be used in `isBarrier`/`isSanitizer` definitions * in data flow and taint tracking. */ -module BarrierGuard { +module ParameterizedBarrierGuard::guardChecksSig/4 guardChecks> { bindingset[value, n] pragma[inline_late] private predicate convertedExprHasValueNumber(ValueNumber value, Node n) { @@ -2448,12 +2461,13 @@ module BarrierGuard { ) } - private predicate guardChecksNode(IRGuardCondition g, Node n, boolean branch) { - guardChecks(g, n.asOperand().getDef().getConvertedResultExpression(), branch) + private predicate guardChecksNode(IRGuardCondition g, Node n, boolean branch, P p) { + guardChecks(g, n.asOperand().getDef().getConvertedResultExpression(), branch, p) } /** - * Gets an expression node that is safely guarded by the given guard check. + * Gets an expression node that is safely guarded by the given guard check + * when the parameter is `p`. * * For example, given the following code: * ```cpp @@ -2484,19 +2498,27 @@ module BarrierGuard { * * NOTE: If an indirect expression is tracked, use `getAnIndirectBarrierNode` instead. */ - Node getABarrierNode() { + Node getABarrierNode(P p) { exists(IRGuardCondition g, ValueNumber value, boolean edge | convertedExprHasValueNumber(value, result) and guardChecks(g, - pragma[only_bind_into](value.getAnInstruction().getConvertedResultExpression()), edge) and + pragma[only_bind_into](value.getAnInstruction().getConvertedResultExpression()), edge, p) and controls(g, result, edge) ) or - result = SsaImpl::BarrierGuard::getABarrierNode() + result = SsaImpl::BarrierGuard::getABarrierNode(p) } /** - * Gets an indirect expression node that is safely guarded by the given guard check. + * Gets an expression node that is safely guarded by the given guard check. + * + * See `getABarrierNode/1` for examples. + */ + Node getABarrierNode() { result = getABarrierNode(_) } + + /** + * Gets an indirect expression node that is safely guarded by the given + * guard check with parameter `p`. * * For example, given the following code: * ```cpp @@ -2528,6 +2550,13 @@ module BarrierGuard { * * NOTE: If a non-indirect expression is tracked, use `getABarrierNode` instead. */ + Node getAnIndirectBarrierNode(P p) { result = getAnIndirectBarrierNode(_, p) } + + /** + * Gets an indirect expression node that is safely guarded by the given guard check. + * + * See `getAnIndirectBarrierNode/1` for examples. + */ Node getAnIndirectBarrierNode() { result = getAnIndirectBarrierNode(_) } bindingset[value, n] @@ -2542,10 +2571,10 @@ module BarrierGuard { } private predicate guardChecksIndirectNode( - IRGuardCondition g, Node n, boolean branch, int indirectionIndex + IRGuardCondition g, Node n, boolean branch, int indirectionIndex, P p ) { guardChecks(g, n.asIndirectOperand(indirectionIndex).getDef().getConvertedResultExpression(), - branch) + branch, p) } /** @@ -2582,19 +2611,44 @@ module BarrierGuard { * * NOTE: If a non-indirect expression is tracked, use `getABarrierNode` instead. */ - Node getAnIndirectBarrierNode(int indirectionIndex) { + Node getAnIndirectBarrierNode(int indirectionIndex, P p) { exists(IRGuardCondition g, ValueNumber value, boolean edge | indirectConvertedExprHasValueNumber(indirectionIndex, value, result) and guardChecks(g, - pragma[only_bind_into](value.getAnInstruction().getConvertedResultExpression()), edge) and + pragma[only_bind_into](value.getAnInstruction().getConvertedResultExpression()), edge, p) and controls(g, result, edge) ) or result = - SsaImpl::BarrierGuardWithIntParam::getABarrierNode(indirectionIndex) + SsaImpl::BarrierGuardWithIntParam::getABarrierNode(indirectionIndex, + p) } } +/** + * Provides a set of barrier nodes for a guard that validates an expression. + * + * This is expected to be used in `isBarrier`/`isSanitizer` definitions + * in data flow and taint tracking. + */ +module BarrierGuard { + private predicate guardChecks(IRGuardCondition g, Expr e, boolean branch, Unit unit) { + guardChecks(g, e, branch) and + exists(unit) + } + + import ParameterizedBarrierGuard +} + +private module InstrWithParam { + /** + * Holds if the guard `g` validates the instruction `instr` upon evaluating to `branch`. + */ + signature predicate instructionGuardChecksSig( + IRGuardCondition g, Instruction instr, boolean branch, P p + ); +} + /** * Holds if the guard `g` validates the instruction `instr` upon evaluating to `branch`. */ @@ -2606,7 +2660,9 @@ signature predicate instructionGuardChecksSig(IRGuardCondition g, Instruction in * This is expected to be used in `isBarrier`/`isSanitizer` definitions * in data flow and taint tracking. */ -module InstructionBarrierGuard { +module ParameterizedInstructionBarrierGuard< + ParamSig P, InstrWithParam

::instructionGuardChecksSig/4 instructionGuardChecks> +{ bindingset[value, n] pragma[inline_late] private predicate operandHasValueNumber(ValueNumber value, Node n) { @@ -2616,21 +2672,27 @@ module InstructionBarrierGuard::getABarrierNode() + result = SsaImpl::BarrierGuard::getABarrierNode(p) } + /** Gets a node that is safely guarded by the given guard check. */ + Node getABarrierNode() { result = getABarrierNode(_) } + bindingset[value, n] pragma[inline_late] private predicate indirectOperandHasValueNumber(ValueNumber value, int indirectionIndex, Node n) { @@ -2641,25 +2703,52 @@ module InstructionBarrierGuard::getABarrierNode(indirectionIndex) + SsaImpl::BarrierGuardWithIntParam::getABarrierNode(indirectionIndex, + p) } + + /** + * Gets an indirect node that is safely guarded by the given guard check + * with parameter `p`. + */ + Node getAnIndirectBarrierNode(P p) { result = getAnIndirectBarrierNode(_, p) } + + /** Gets an indirect node that is safely guarded by the given guard check. */ + Node getAnIndirectBarrierNode() { result = getAnIndirectBarrierNode(_) } +} + +/** + * Provides a set of barrier nodes for a guard that validates an instruction. + * + * This is expected to be used in `isBarrier`/`isSanitizer` definitions + * in data flow and taint tracking. + */ +module InstructionBarrierGuard { + private predicate instructionGuardChecks( + IRGuardCondition g, Instruction i, boolean branch, Unit unit + ) { + instructionGuardChecks(g, i, branch) and + exists(unit) + } + + import ParameterizedInstructionBarrierGuard } /** diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll index 99f13a81725e..d4a80ff25c80 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll @@ -1035,13 +1035,23 @@ class SynthNode extends DataFlowIntegrationImpl::SsaNode { SynthNode() { not this.asDefinition() instanceof SsaImpl::WriteDefinition } } -signature predicate guardChecksNodeSig(IRGuards::IRGuardCondition g, Node e, boolean branch); +private signature class ParamSig; -signature predicate guardChecksNodeSig( - IRGuards::IRGuardCondition g, Node e, boolean branch, int indirectionIndex -); +private module ParamIntPair { + newtype TPair = MkPair(P p, int indirectionIndex) { nodeHasInstruction(_, _, indirectionIndex) } +} + +private module WithParam { + signature predicate guardChecksNodeSig(IRGuards::IRGuardCondition g, Node e, boolean gv, P param); +} + +private module IntWithParam { + signature predicate guardChecksNodeSig( + IRGuards::IRGuardCondition g, Node e, boolean gv, int indirectionIndex, P param + ); +} -module BarrierGuardWithIntParam { +module BarrierGuardWithIntParam::guardChecksNodeSig/5 guardChecksNode> { private predicate ssaDefReachesCertainUse(Definition def, UseImpl use) { exists(SourceVariable v, IRBlock bb, int i | use.hasIndexInBlock(bb, i, v) and @@ -1052,21 +1062,23 @@ module BarrierGuardWithIntParam { private predicate guardChecksInstr( IRGuards::Guards_v1::Guard g, IRGuards::GuardsInput::Expr instr, IRGuards::GuardValue gv, - int indirectionIndex + ParamIntPair

::TPair pair ) { - exists(Node node | + exists(Node node, int indirectionIndex, P p | + pair = ParamIntPair

::MkPair(p, indirectionIndex) and nodeHasInstruction(node, instr, indirectionIndex) and - guardChecksNode(g, node, gv.asBooleanValue(), indirectionIndex) + guardChecksNode(g, node, gv.asBooleanValue(), indirectionIndex, p) ) } private predicate guardChecksWithWrappers( DataFlowIntegrationInput::Guard g, SsaImpl::Definition def, IRGuards::GuardValue val, - int indirectionIndex + ParamIntPair

::MkPair pair ) { - exists(Instruction e | - IRGuards::Guards_v1::ParameterizedValidationWrapper::guardChecks(g, - e, val, indirectionIndex) + exists(Instruction e, int indirectionIndex | + IRGuards::Guards_v1::ParameterizedValidationWrapper::TPair, guardChecksInstr/4>::guardChecks(g, + e, val, pair) and + pair = ParamIntPair

::MkPair(_, indirectionIndex) | indirectionIndex = 0 and def.(Definition).getAUse().getDef() = e @@ -1075,18 +1087,19 @@ module BarrierGuardWithIntParam { ) } - Node getABarrierNode(int indirectionIndex) { + Node getABarrierNode(int indirectionIndex, P p) { // Only get the SynthNodes from the shared implementation, as the ExprNodes cannot // be matched on SourceVariable. result.(SsaSynthNode).getSynthNode() = - DataFlowIntegrationImpl::BarrierGuardDefWithState::getABarrierNode(indirectionIndex) + DataFlowIntegrationImpl::BarrierGuardDefWithState::MkPair, guardChecksWithWrappers/4>::getABarrierNode(ParamIntPair

::MkPair(p, + indirectionIndex)) or // Calculate the guarded UseImpls corresponding to ExprNodes directly. exists( DataFlowIntegrationInput::Guard g, IRGuards::GuardValue branch, Definition def, IRBlock bb | - guardChecksWithWrappers(g, def, branch, indirectionIndex) and exists(UseImpl use | + guardChecksWithWrappers(g, def, branch, ParamIntPair

::MkPair(p, indirectionIndex)) and ssaDefReachesCertainUse(def, use) and use.getBlock() = bb and DataFlowIntegrationInput::guardControlsBlock(g, bb, branch) and @@ -1096,15 +1109,16 @@ module BarrierGuardWithIntParam { } } -module BarrierGuard { +module BarrierGuard::guardChecksNodeSig/4 guardChecksNode> { private predicate guardChecksNode( - IRGuards::IRGuardCondition g, Node e, boolean branch, int indirectionIndex + IRGuards::IRGuardCondition g, Node e, boolean gv, int indirectionIndex, P p ) { - guardChecksNode(g, e, branch) and indirectionIndex = 0 + indirectionIndex = 0 and + guardChecksNode(g, e, gv, p) } - Node getABarrierNode() { - result = BarrierGuardWithIntParam::getABarrierNode(0) + Node getABarrierNode(P p) { + result = BarrierGuardWithIntParam::getABarrierNode(0, p) } } From 48254800b1d02b3e73efdf2325ffe286143cb69a Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Fri, 12 Dec 2025 09:57:26 +0100 Subject: [PATCH 048/433] WIP C++: Add support for MaD barriers and barrier guards. --- .../semmle/code/cpp/dataflow/ExternalFlow.qll | 55 +++++++++++++++++++ .../cpp/dataflow/internal/FlowSummaryImpl.qll | 18 ++++-- 2 files changed, 69 insertions(+), 4 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll index 7232326f1b3d..1454b7590681 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll @@ -95,6 +95,7 @@ import cpp private import new.DataFlow +private import semmle.code.cpp.controlflow.IRGuards private import semmle.code.cpp.ir.dataflow.internal.DataFlowPrivate as Private private import semmle.code.cpp.ir.dataflow.internal.DataFlowUtil private import internal.FlowSummaryImpl @@ -367,6 +368,8 @@ private predicate elementSpec( ) { sourceModel(namespace, type, subtypes, name, signature, ext, _, _, _, _) or sinkModel(namespace, type, subtypes, name, signature, ext, _, _, _, _) or + barrierModel(namespace, type, subtypes, name, signature, ext, _, _, _, _) or + barrierGuardModel(namespace, type, subtypes, name, signature, ext, _, _, _, _, _) or summaryModel(namespace, type, subtypes, name, signature, ext, _, _, _, _, _) } @@ -1028,6 +1031,52 @@ private module Cached { isSinkNode(n, kind, model) and n.asNode() = node ) } + + private newtype TKindModelPair = + TMkPair(string kind, string model) { isBarrierGuardNode(_, _, kind, model) } + + private GuardValue convertAcceptingValue(Public::AcceptingValue av) { + av.isTrue() and result.asBooleanValue() = true + or + av.isFalse() and result.asBooleanValue() = false + or + av.isNoException() and result.getDualValue().isThrowsException() + or + av.isZero() and result.asIntValue() = 0 + or + av.isNotZero() and result.getDualValue().asIntValue() = 0 + or + av.isNull() and result.isNullValue() + or + av.isNotNull() and result.isNonNullValue() + } + + private predicate barrierGuardChecks(IRGuardCondition g, Expr e, GuardValue gv, TKindModelPair kmp) { + exists( + SourceSinkInterpretationInput::InterpretNode n, Public::AcceptingValue acceptingvalue, + string kind, string model + | + isBarrierGuardNode(n, acceptingvalue, kind, model) and + n.asNode().asExpr() = e and + kmp = TMkPair(kind, model) and + gv = convertAcceptingValue(acceptingvalue) and + n.asNode().(ArgumentNode).getCallInstruction() = g + ) + } + + /** + * Holds if `node` is specified as a barrier with the given kind in a MaD flow + * model. + */ + cached + predicate barrierNode(DataFlow::Node node, string kind, string model) { + exists(SourceSinkInterpretationInput::InterpretNode n | + isBarrierNode(n, kind, model) and n.asNode() = node + ) + or + DataFlow::ParameterizedBarrierGuard::getABarrierNode(TMkPair(kind, + model)) = node + } } import Cached @@ -1044,6 +1093,12 @@ predicate sourceNode(DataFlow::Node node, string kind) { sourceNode(node, kind, */ predicate sinkNode(DataFlow::Node node, string kind) { sinkNode(node, kind, _) } +/** + * Holds if `node` is specified as a barrier with the given kind in a MaD flow + * model. + */ +predicate barrierNode(DataFlow::Node node, string kind) { barrierNode(node, kind, _) } + private predicate interpretSummary( Function f, string input, string output, string kind, string provenance, string model ) { diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll index a1d9dd86c400..d4cf34ec4bde 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll @@ -149,16 +149,26 @@ module SourceSinkInterpretationInput implements } predicate barrierElement( - Element n, string output, string kind, Public::Provenance provenance, string model + Element e, string output, string kind, Public::Provenance provenance, string model ) { - none() + exists( + string namespace, string type, boolean subtypes, string name, string signature, string ext + | + barrierModel(namespace, type, subtypes, name, signature, ext, output, kind, provenance, model) and + e = interpretElement(namespace, type, subtypes, name, signature, ext) + ) } predicate barrierGuardElement( - Element n, string input, Public::AcceptingValue acceptingvalue, string kind, + Element e, string input, Public::AcceptingValue acceptingvalue, string kind, Public::Provenance provenance, string model ) { - none() + exists( + string package, string type, boolean subtypes, string name, string signature, string ext + | + barrierGuardModel(package, type, subtypes, name, signature, ext, input, acceptingvalue, kind, provenance, model) and + e = interpretElement(package, type, subtypes, name, signature, ext) + ) } private newtype TInterpretNode = From a11b271d6e6f8f1532866d0b9479b019919f847e Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Thu, 15 Jan 2026 18:04:57 +0000 Subject: [PATCH 049/433] C++: Finish up implementation of MaD barriers. --- .../semmle/code/cpp/dataflow/ExternalFlow.qll | 40 +++++++++++++++++-- .../dataflow/ir-barrier-guards/test.cpp | 8 ++-- .../dataflow/ir-barrier-guards/test.ql | 12 +++++- 3 files changed, 52 insertions(+), 8 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll index 1454b7590681..71407a5f140e 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll @@ -1040,6 +1040,11 @@ private module Cached { or av.isFalse() and result.asBooleanValue() = false or + // NOTE: The below cases don't contribute anything currently since the + // callers immediate uses `.asBooleanValue()` to convert the `GuardValue` + // to a boolean. Once we're willing to accept the breaking change of + // converting the barrier guard API to use `GuardValue`s instead `Boolean`s + // we can remove this restriction. av.isNoException() and result.getDualValue().isThrowsException() or av.isZero() and result.asIntValue() = 0 @@ -1051,7 +1056,9 @@ private module Cached { av.isNotNull() and result.isNonNullValue() } - private predicate barrierGuardChecks(IRGuardCondition g, Expr e, GuardValue gv, TKindModelPair kmp) { + private import semmle.code.cpp.ir.dataflow.internal.DataFlowPrivate as Private + + private predicate barrierGuardChecks(IRGuardCondition g, Expr e, boolean gv, TKindModelPair kmp) { exists( SourceSinkInterpretationInput::InterpretNode n, Public::AcceptingValue acceptingvalue, string kind, string model @@ -1059,8 +1066,32 @@ private module Cached { isBarrierGuardNode(n, acceptingvalue, kind, model) and n.asNode().asExpr() = e and kmp = TMkPair(kind, model) and - gv = convertAcceptingValue(acceptingvalue) and - n.asNode().(ArgumentNode).getCallInstruction() = g + gv = convertAcceptingValue(acceptingvalue).asBooleanValue() and + n.asNode().(Private::ArgumentNode).getCall().asCallInstruction() = g + ) + } + + private newtype TKindModelPairIntPair = + MkKindModelPairIntPair(TKindModelPair pair, int indirectionIndex) { + indirectionIndex > 0 and + Private::nodeHasInstruction(_, _, indirectionIndex) and + exists(pair) + } + + private predicate indirectBarrierGuardChecks( + IRGuardCondition g, Expr e, boolean gv, TKindModelPairIntPair kmp + ) { + exists( + SourceSinkInterpretationInput::InterpretNode interpretNode, + Public::AcceptingValue acceptingvalue, string kind, string model, int indirectionIndex, + Private::ArgumentNode arg + | + isBarrierGuardNode(interpretNode, acceptingvalue, kind, model) and + arg = interpretNode.asNode() and + arg.asIndirectExpr(indirectionIndex) = e and + kmp = MkKindModelPairIntPair(TMkPair(kind, model), indirectionIndex) and + gv = convertAcceptingValue(acceptingvalue).asBooleanValue() and + arg.getCall().asCallInstruction() = g ) } @@ -1076,6 +1107,9 @@ private module Cached { or DataFlow::ParameterizedBarrierGuard::getABarrierNode(TMkPair(kind, model)) = node + or + DataFlow::ParameterizedBarrierGuard::getAnIndirectBarrierNode(MkKindModelPairIntPair(TMkPair(kind, + model), _)) = node } } diff --git a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp index bc8b4d113d89..ea14e5f75df6 100644 --- a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp +++ b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp @@ -26,25 +26,25 @@ void sink(int*); void test_mad(int x, int* p) { { if(is_clean_value(&x)) { - sink(x); // $ MISSING: external=int + sink(x); // $ external=int } } { if(is_clean_value(p)) { - sink(*p); // $ MISSING: external=int + sink(*p); // $ external=int } } { if(is_clean_pointer(p)) { - sink(p); // $ MISSING: external=int* + sink(p); // $ external=int* } } { if(is_clean_pointer(&x)) { - sink(x); // $ MISSING: external=glval + sink(x); // $ external=glval } } } \ No newline at end of file diff --git a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ql b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ql index 43a5c1499f0b..8948c65e33c0 100644 --- a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ql +++ b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ql @@ -28,8 +28,15 @@ predicate barrierGuard(DataFlow::Node node, string s) { else s = node.getType().toString().replaceAll(" ", "") } +predicate externalBarrierGuard(DataFlow::Node node, string s) { + barrierNode(node, "test-barrier") and + if node.isGLValue() + then s = "glval<" + node.getType().toString().replaceAll(" ", "") + ">" + else s = node.getType().toString().replaceAll(" ", "") +} + module Test implements TestSig { - string getARelevantTag() { result = ["barrier", "indirect_barrier"] } + string getARelevantTag() { result = ["barrier", "indirect_barrier", "external"] } predicate hasActualResult(Location location, string element, string tag, string value) { exists(DataFlow::Node node | @@ -38,6 +45,9 @@ module Test implements TestSig { or barrierGuard(node, value) and tag = "barrier" + or + externalBarrierGuard(node, value) and + tag = "external" | element = node.toString() and location = node.getLocation() From 58a3260c96361d2b50600265e7f8f57c59b4ffd1 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 19 Jan 2026 11:33:48 +0000 Subject: [PATCH 050/433] Update cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com> --- .../cpp/ir/implementation/raw/internal/TranslatedAssertion.qll | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll index d0f761e83b8a..0097428a1fc7 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll @@ -135,8 +135,7 @@ private predicate hasVarAccessMacroArgument(MacroInvocation mi, Variable var, in /** * Holds if the `i`'th component of the macro invocation `mi` with opcode - * `opcode` is a - * constant with the value `k`. + * `opcode` is a constant with the value `k`. */ private predicate hasConstMacroArgument(MacroInvocation mi, int k, int i, Opcode opcode) { exists(string arg, string s | From c70633a0f7fe1c001b2eba56d689f3e8d65117c0 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 19 Jan 2026 11:41:26 +0000 Subject: [PATCH 051/433] C++: Fix Code Scanning alert. --- cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll | 2 -- 1 file changed, 2 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll index 71407a5f140e..931534985987 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll @@ -1056,8 +1056,6 @@ private module Cached { av.isNotNull() and result.isNonNullValue() } - private import semmle.code.cpp.ir.dataflow.internal.DataFlowPrivate as Private - private predicate barrierGuardChecks(IRGuardCondition g, Expr e, boolean gv, TKindModelPair kmp) { exists( SourceSinkInterpretationInput::InterpretNode n, Public::AcceptingValue acceptingvalue, From 7aca94b1ca89dcfcf273154ce91adbd23a62ae12 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 19 Jan 2026 11:43:59 +0000 Subject: [PATCH 052/433] C++: Add change note. --- .../change-notes/2026-01-19-parameterized-barrier-guard.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/lib/change-notes/2026-01-19-parameterized-barrier-guard.md diff --git a/cpp/ql/lib/change-notes/2026-01-19-parameterized-barrier-guard.md b/cpp/ql/lib/change-notes/2026-01-19-parameterized-barrier-guard.md new file mode 100644 index 000000000000..4f2d754c0b87 --- /dev/null +++ b/cpp/ql/lib/change-notes/2026-01-19-parameterized-barrier-guard.md @@ -0,0 +1,4 @@ +--- +category: feature +--- +* Added modules `DataFlow::ParameterizedBarrierGuard` and `DataFlow::ParameterizedInstructionBarrierGuard`. These modules provide the same features as `DataFlow::BarrierGuard` and `DataFlow::InstructionBarrierGuard`, but allow for an additional parameter to support properly using them in dataflow configurations that uses flow states. \ No newline at end of file From 4e478c362941c216865a6b1c8f878cadeb3687a2 Mon Sep 17 00:00:00 2001 From: Philip Ginsbach Date: Mon, 19 Jan 2026 09:47:40 +0000 Subject: [PATCH 053/433] add overlay documentation to handbook and language spec --- .../ql-language-reference/annotations.rst | 177 +++++++++++++++++- .../ql-language-specification.rst | 21 +++ 2 files changed, 197 insertions(+), 1 deletion(-) diff --git a/docs/codeql/ql-language-reference/annotations.rst b/docs/codeql/ql-language-reference/annotations.rst index b792e807c931..1ce9fa453b76 100644 --- a/docs/codeql/ql-language-reference/annotations.rst +++ b/docs/codeql/ql-language-reference/annotations.rst @@ -17,7 +17,7 @@ For example, to declare a module ``M`` as private, you could use: Note that some annotations act on an entity itself, whilst others act on a particular *name* for the entity: - Act on an **entity**: ``abstract``, ``bindingset``, ``cached``, ``extensible``, ``external``, ``language``, - ``override``, ``pragma``, and ``transient`` + ``overlay``, ``override``, ``pragma``, and ``transient`` - Act on a **name**: ``additional``, ``deprecated``, ``final``, ``library``, ``private``, and ``query`` For example, if you annotate an entity with ``private``, then only that particular name is @@ -502,6 +502,181 @@ The ``bindingset`` annotation takes a comma-separated list of variables. For more information, see ":ref:`predicate-binding`." - When you annotate a class, each variable must be ``this`` or a field in the class. +.. _overlay: + +Overlay annotations +=================== + +Overlay annotations control how predicates behave during **overlay evaluation**, a feature +that enables efficient incremental analysis by dividing QL code into *local* and *global* +parts. During overlay evaluation, local predicates are evaluated separately on "base" (cached +from previous analysis) and "overlay" (newly changed files) data. When a global predicate +calls a local predicate, results from both the base and overlay evaluations are combined, +with stale base results filtered out through a process called "discarding." + +Overlay evaluation is primarily used internally by GitHub Code Scanning to speed up +pull request analysis. Most QL developers do not need to use these annotations directly, +but understanding them can help resolve compilation errors that may occur when overlay +support is enabled for a language. + +.. note:: + + Overlay annotations only affect evaluation when overlay compilation is enabled for a + QL pack (via ``compileForOverlayEval: true`` in ``qlpack.yml``) and the evaluator is + running in overlay mode. Otherwise, these annotations are validated but have no effect + on evaluation. + +``overlay[local]`` +------------------ + +**Available for**: |modules|, |classes|, |algebraic datatypes|, |type unions|, |characteristic predicates|, |member predicates|, |non-member predicates| + +The ``overlay[local]`` annotation declares that a predicate is local. Local predicates are +evaluated separately on base and overlay data and may only depend on other local predicates. +The compiler reports an error if a local predicate depends on a global predicate. + +.. code-block:: ql + + // All dependencies are database extensionals, so this can be local + overlay[local] + predicate stmtInFile(@stmt s, string path) { + exists(@file f, @location loc | + hasLocation(s, loc) and + locations_default(loc, f, _, _, _, _) and + files(f, path) + ) + } + +``overlay[local?]`` +------------------- + +**Available for**: |modules|, |classes|, |algebraic datatypes|, |type unions|, |characteristic predicates|, |member predicates|, |non-member predicates| + +The ``overlay[local?]`` annotation declares that a predicate should be local if all of +its dependencies are local, and global otherwise. This is particularly useful in +parameterized modules, where different instantiations may have different locality +depending on the module parameters. + +.. code-block:: ql + + // Locality depends on whether Expr.getType() and Type.getName() are local + overlay[local?] + predicate exprTypeName(Expr e, string name) { + name = e.getType().getName() + } + +``overlay[global]`` +------------------- + +**Available for**: |modules|, |classes|, |algebraic datatypes|, |type unions|, |characteristic predicates|, |member predicates|, |non-member predicates| + +The ``overlay[global]`` annotation explicitly declares that a predicate is global. This +is the default behavior, so this annotation is typically used to override an inherited +``overlay[local]`` or ``overlay[local?]`` annotation from an enclosing module or class. +See `Annotation inheritance`_ for an example. + +``overlay[caller]`` +------------------- + +**Available for**: |modules|, |classes|, |algebraic datatypes|, |type unions|, |characteristic predicates|, |member predicates|, |non-member predicates| + +The ``overlay[caller]`` annotation declares that the locality of a predicate depends on +its caller. The compiler may internally duplicate the predicate, creating separate local +and global versions. Local callers use the local version; global callers use the global +version. + +.. code-block:: ql + + overlay[caller] + predicate utilityPredicate(int x) { + x in [1..100] + } + +``overlay[caller?]`` +-------------------- + +**Available for**: |modules|, |classes|, |algebraic datatypes|, |type unions|, |characteristic predicates|, |member predicates|, |non-member predicates| + +The ``overlay[caller?]`` annotation is like ``overlay[caller]``, but only applies if none +of the predicate's dependencies are global. If any dependency is global, the predicate +becomes global regardless of its callers, and calling it from a local predicate will +result in a compilation error. Like ``overlay[local?]``, this is useful in parameterized +modules where locality may vary between instantiations. + +``overlay[discard_entity]`` +--------------------------- + +**Available for**: |non-member predicates| (unary predicates on database types only) + +The ``overlay[discard_entity]`` annotation designates an *entity discard predicate*. +These predicates identify database entities that should be filtered out from cached base +results when combining with overlay results during overlay evaluation. + +Entity discard predicates must be: + +- Unary predicates (taking exactly one argument) +- Defined on a database type (a type from the database schema, prefixed with ``@``) +- Only dependent on local predicates and other non-discarding predicates + +.. code-block:: ql + + overlay[discard_entity] + private predicate discardExpr(@expr e) { + exists(string file | discardableExpr(file, e) and overlayChangedFiles(file)) + } + + overlay[local] + private predicate discardableExpr(string file, @expr e) { + not isOverlay() and + file = getFile(e) + } + + overlay[local] + predicate isOverlay() { databaseMetadata("isOverlay", "true") } + +Annotation inheritance +---------------------- + +Overlay annotations can be applied to modules and types, in which case they are +inherited by enclosed declarations. Declarations without explicit overlay annotations +inherit from their innermost enclosing declaration that has an overlay annotation. + +.. code-block:: ql + + overlay[local?] + module M { + predicate foo(@expr x) { ... } // Inherits overlay[local?] + + class C extends @expr { + predicate bar() { ... } // Inherits overlay[local?] + + overlay[global] + predicate baz() { ... } // Explicitly global + } + } + +Resolving overlay-related errors +-------------------------------- + +When overlay support is enabled for a language, you may encounter compilation errors in +custom QL libraries or queries. Here are common errors and their solutions: + +**"Declaration is annotated overlay[local] but depends on global entity"** + +A predicate marked ``overlay[local]`` (or ``overlay[caller]``) depends on a global predicate. +Solutions: + +- Change the annotation to ``overlay[local?]`` (or ``overlay[caller?]``) if the predicate doesn't strictly need to be local +- Add appropriate overlay annotations to the dependency chain to make dependencies local +- Use the ``forceLocal`` higher-order predicate if you need to call global code from local code (advanced) + +**"Cannot apply forceLocal to relation that is annotated overlay[...]"** + +The ``forceLocal`` higher-order predicate cannot be applied to predicates that have overlay +annotations such as ``overlay[local]``, ``overlay[local?]``, ``overlay[caller]``, or +``overlay[caller?]``. The input to ``forceLocal`` must be a predicate without such annotations +(i.e., a global predicate or one with ``overlay[global]``). + .. Links to use in substitutions .. |classes| replace:: :ref:`classes ` diff --git a/docs/codeql/ql-language-reference/ql-language-specification.rst b/docs/codeql/ql-language-reference/ql-language-specification.rst index 1d84cc31c739..496b1245ff58 100644 --- a/docs/codeql/ql-language-reference/ql-language-specification.rst +++ b/docs/codeql/ql-language-reference/ql-language-specification.rst @@ -776,6 +776,7 @@ Various kinds of syntax can have *annotations* applied to them. Annotations are argsAnnotation ::= "pragma" "[" ("inline" | "inline_late" | "noinline" | "nomagic" | "noopt" | "assume_small_delta") "]" | "language" "[" "monotonicAggregates" "]" | "bindingset" "[" (variable ( "," variable)*)? "]" + | "overlay" "[" ("local" | "local?" | "global" | "caller" | "caller?" | "discard_entity") "]" Each simple annotation adds a same-named attribute to the syntactic entity it precedes. For example, if a class is preceded by the ``abstract`` annotation, then the class is said to be abstract. @@ -873,6 +874,26 @@ A predicate may have several different binding sets, which can be stated by usin The ``bindingset`` pragma is usable with type signatures and predicate signatures, but not with module signatures. +The parameterized annotation ``overlay`` controls predicate behavior during overlay evaluation, which is a feature for incremental analysis. Overlay annotations apply at the scope level, and are inherited by nested scopes. + ++---------------------+---------+------------+-------------------+-----------------------+---------+--------+---------+---------+ +| Overlay | Classes | Characters | Member predicates | Non-member predicates | Imports | Fields | Modules | Aliases | ++=====================+=========+============+===================+=======================+=========+========+=========+=========+ +| ``local`` | yes | yes | yes | yes | | | yes | | ++---------------------+---------+------------+-------------------+-----------------------+---------+--------+---------+---------+ +| ``local?`` | yes | yes | yes | yes | | | yes | | ++---------------------+---------+------------+-------------------+-----------------------+---------+--------+---------+---------+ +| ``global`` | yes | yes | yes | yes | | | yes | | ++---------------------+---------+------------+-------------------+-----------------------+---------+--------+---------+---------+ +| ``caller`` | yes | yes | yes | yes | | | yes | | ++---------------------+---------+------------+-------------------+-----------------------+---------+--------+---------+---------+ +| ``caller?`` | yes | yes | yes | yes | | | yes | | ++---------------------+---------+------------+-------------------+-----------------------+---------+--------+---------+---------+ +| ``discard_entity`` | | | | yes | | | | | ++---------------------+---------+------------+-------------------+-----------------------+---------+--------+---------+---------+ + +The ``overlay[discard_entity]`` annotation is only valid on unary non-member predicates whose argument is a database type. + QLDoc ----- From c47a9ddf8383d4d69f655b2024aede468ffb5a35 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 19 Jan 2026 11:46:42 +0000 Subject: [PATCH 054/433] Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll | 2 +- cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp | 1 - .../library-tests/dataflow/ir-barrier-guards/test.ext.yml | 4 ++-- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll index 931534985987..eecacb148340 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll @@ -1041,7 +1041,7 @@ private module Cached { av.isFalse() and result.asBooleanValue() = false or // NOTE: The below cases don't contribute anything currently since the - // callers immediate uses `.asBooleanValue()` to convert the `GuardValue` + // callers immediately use `.asBooleanValue()` to convert the `GuardValue` // to a boolean. Once we're willing to accept the breaking change of // converting the barrier guard API to use `GuardValue`s instead `Boolean`s // we can remove this restriction. diff --git a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp index ea14e5f75df6..6c4b45db48f1 100644 --- a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp +++ b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.cpp @@ -20,7 +20,6 @@ bool is_clean_value(int*); int* get_clean_pointer(int* x) { return x; } bool is_clean_pointer(int*); -void sink(int); void sink(int*); void test_mad(int x, int* p) { diff --git a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ext.yml b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ext.yml index 9f60fc19a5e6..8eeed7cd0b55 100644 --- a/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ext.yml +++ b/cpp/ql/test/library-tests/dataflow/ir-barrier-guards/test.ext.yml @@ -6,8 +6,8 @@ extensions: - ["", "", False, "get_clean_pointer", "", "", "ReturnValue", "test-barrier", "manual"] - ["", "", False, "get_clean_data", "", "", "ReturnValue[*]", "test-barrier", "manual"] - addsTo: - pack: codeql/cpp-all - extensible: barrierGuardModel + pack: codeql/cpp-all + extensible: barrierGuardModel data: - ["", "", False, "is_clean_value", "", "", "Argument[*0]", "true", "test-barrier", "manual"] - ["", "", False, "is_clean_pointer", "", "", "Argument[0]", "true", "test-barrier", "manual"] \ No newline at end of file From b3631545d4c4bd37b07cd7058b4cb4a2db04ec12 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 19 Jan 2026 11:57:45 +0000 Subject: [PATCH 055/433] C++: Delete unnecessary conjuncts after review comments. --- .../cpp/ir/implementation/raw/internal/TranslatedAssertion.qll | 3 --- 1 file changed, 3 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll index 0097428a1fc7..0eebcf609511 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll @@ -89,13 +89,11 @@ private predicate parseArgument(string arg, string s, int i, Opcode opcode) { i + 1) and opcode instanceof Opcode::CompareGE or - not arg.regexpMatch("([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)\\s?<=\\s?([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)") and s = arg.regexpCapture("([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)\\s?<\\s?([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)", i + 1) and opcode instanceof Opcode::CompareLT or - not arg.regexpMatch("([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)\\s?>=\\s?([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)") and s = arg.regexpCapture("([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)\\s?>\\s?([a-zA-Z_][a-zA-Z_0-9]*|[0-9]+)", i + 1) and @@ -127,7 +125,6 @@ private predicate hasVarAccessMacroArgument(MacroInvocation mi, Variable var, in exists(string arg, string s, Function f | arg = mi.getUnexpandedArgument(0) and f = getEnclosingFunctionForMacroInvocation(mi) and - not exists(s.toInt()) and parseArgument(arg, s, i, opcode) and var = unique( | | getAVariableWithNameInFunction(f, s)) ) From c11b46449277cdf00774065d5802c2dec925f999 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 19 Jan 2026 11:58:11 +0000 Subject: [PATCH 056/433] C++: Autoformat. --- .../lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll index d4cf34ec4bde..3c4177dc8569 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll @@ -166,7 +166,8 @@ module SourceSinkInterpretationInput implements exists( string package, string type, boolean subtypes, string name, string signature, string ext | - barrierGuardModel(package, type, subtypes, name, signature, ext, input, acceptingvalue, kind, provenance, model) and + barrierGuardModel(package, type, subtypes, name, signature, ext, input, acceptingvalue, kind, + provenance, model) and e = interpretElement(package, type, subtypes, name, signature, ext) ) } From d183dcd6fc9fd5b977e7f3cda59ec63433d4aed6 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 19 Jan 2026 12:04:12 +0000 Subject: [PATCH 057/433] C++: Add 'internal: do not use' comment. --- cpp/ql/lib/semmle/code/cpp/Element.qll | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cpp/ql/lib/semmle/code/cpp/Element.qll b/cpp/ql/lib/semmle/code/cpp/Element.qll index ffc0ede4daff..17af69eddacd 100644 --- a/cpp/ql/lib/semmle/code/cpp/Element.qll +++ b/cpp/ql/lib/semmle/code/cpp/Element.qll @@ -192,7 +192,11 @@ class Element extends ElementBase { */ predicate isAffectedByMacro() { affectedByMacro(this) } - /** Holds if this element is affected by the expansion of `mi`. */ + /** + * INTERNAL: Do not use. + * + * Holds if this element is affected by the expansion of `mi`. + */ predicate isAffectedByMacro(MacroInvocation mi) { affectedbymacroexpansion(underlyingElement(this), unresolveElement(mi)) } From 7ae2b7698e556ebf0493098682c14057155e7ccf Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Mon, 19 Jan 2026 13:17:07 +0100 Subject: [PATCH 058/433] C#: Relax the condition for when a qualified expression might be null. --- csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll index 756fd6a4e3a0..c7ac34d3d01a 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll @@ -47,7 +47,8 @@ private Expr maybeNullExpr(Expr reason) { result = any(QualifiableExpr qe | qe.isConditional() and - qe.getQualifier() = maybeNullExpr(reason) + reason = qe.getQualifier() and + not qe instanceof AssignableWrite ) } From 7ff1c12e8fe3df446776f3df2c41c70ba6874391 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Mon, 19 Jan 2026 13:17:47 +0100 Subject: [PATCH 059/433] C#: Add some more tests. --- .../library-tests/dataflow/nullness/MaybeNullExpr.cs | 3 +++ .../dataflow/nullness/maybeNullExpr.expected | 1 + .../ql/test/query-tests/Nullness/ConditionalAccess.cs | 11 +++++++++++ .../ql/test/query-tests/Nullness/NullCheck.expected | 1 + .../ql/test/query-tests/Nullness/NullMaybe.expected | 1 + 5 files changed, 17 insertions(+) create mode 100644 csharp/ql/test/query-tests/Nullness/ConditionalAccess.cs diff --git a/csharp/ql/test/library-tests/dataflow/nullness/MaybeNullExpr.cs b/csharp/ql/test/library-tests/dataflow/nullness/MaybeNullExpr.cs index 34c59df8bbd0..6be2c54d41f1 100644 --- a/csharp/ql/test/library-tests/dataflow/nullness/MaybeNullExpr.cs +++ b/csharp/ql/test/library-tests/dataflow/nullness/MaybeNullExpr.cs @@ -17,5 +17,8 @@ void M(object o, bool b) // Conditional access might be null as the qualifier might be null. var s1 = (o as C)?.Prop; + + // Conditional access might be null as the qualifier might be null. + var i = o?.GetHashCode(); } } diff --git a/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.expected b/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.expected index e5aa8423c59a..7182c0cdf95e 100644 --- a/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.expected +++ b/csharp/ql/test/library-tests/dataflow/nullness/maybeNullExpr.expected @@ -5,3 +5,4 @@ | MaybeNullExpr.cs:16:17:16:22 | ... as ... | | MaybeNullExpr.cs:19:18:19:31 | access to property Prop | | MaybeNullExpr.cs:19:19:19:24 | ... as ... | +| MaybeNullExpr.cs:22:17:22:32 | call to method GetHashCode | diff --git a/csharp/ql/test/query-tests/Nullness/ConditionalAccess.cs b/csharp/ql/test/query-tests/Nullness/ConditionalAccess.cs new file mode 100644 index 000000000000..fd3fae179ed2 --- /dev/null +++ b/csharp/ql/test/query-tests/Nullness/ConditionalAccess.cs @@ -0,0 +1,11 @@ +using System; +using System.ComponentModel; + +class ConditionalAccessTest +{ + void M1(object o) + { + var t = o?.GetType(); + Console.WriteLine(t.FullName); // $ Alert[cs/dereferenced-value-may-be-null] + } +} diff --git a/csharp/ql/test/query-tests/Nullness/NullCheck.expected b/csharp/ql/test/query-tests/Nullness/NullCheck.expected index ada1054f02c6..2b6962b51c01 100644 --- a/csharp/ql/test/query-tests/Nullness/NullCheck.expected +++ b/csharp/ql/test/query-tests/Nullness/NullCheck.expected @@ -51,6 +51,7 @@ | C.cs:229:22:229:30 | ... != ... | C.cs:229:22:229:22 | access to local variable s | | C.cs:235:24:235:32 | ... == ... | C.cs:235:24:235:24 | access to local variable s | | C.cs:235:24:235:32 | ... == ... | C.cs:235:29:235:32 | null | +| ConditionalAccess.cs:8:17:8:17 | access to parameter o | ConditionalAccess.cs:8:17:8:17 | access to parameter o | | D.cs:28:13:28:25 | ... != ... | D.cs:28:13:28:17 | access to parameter param | | D.cs:38:13:38:21 | ... == ... | D.cs:38:13:38:13 | access to parameter x | | D.cs:39:16:39:24 | ... == ... | D.cs:39:16:39:16 | access to parameter x | diff --git a/csharp/ql/test/query-tests/Nullness/NullMaybe.expected b/csharp/ql/test/query-tests/Nullness/NullMaybe.expected index 6a0d8372e3ec..3f5219d8c0c9 100644 --- a/csharp/ql/test/query-tests/Nullness/NullMaybe.expected +++ b/csharp/ql/test/query-tests/Nullness/NullMaybe.expected @@ -6,6 +6,7 @@ | C.cs:203:13:203:13 | access to local variable s | Variable $@ may be null at this access because of $@ assignment. | C.cs:185:13:185:13 | s | s | C.cs:204:13:204:20 | ... = ... | this | | C.cs:223:9:223:9 | access to local variable s | Variable $@ may be null at this access because of $@ assignment. | C.cs:210:13:210:13 | s | s | C.cs:222:13:222:20 | ... = ... | this | | C.cs:242:13:242:13 | access to local variable s | Variable $@ may be null at this access because of $@ assignment. | C.cs:228:16:228:16 | s | s | C.cs:240:24:240:31 | ... = ... | this | +| ConditionalAccess.cs:9:27:9:27 | access to local variable t | Variable $@ may be null at this access because of $@ assignment. | ConditionalAccess.cs:8:13:8:13 | t | t | ConditionalAccess.cs:8:13:8:28 | Type t = ... | this | | D.cs:23:9:23:13 | access to parameter param | Variable $@ may be null at this access because of $@ null argument. | D.cs:21:32:21:36 | param | param | D.cs:17:17:17:20 | null | this | | D.cs:32:9:32:13 | access to parameter param | Variable $@ may be null at this access as suggested by $@ null check. | D.cs:26:32:26:36 | param | param | D.cs:28:13:28:25 | ... != ... | this | | D.cs:73:13:73:14 | access to local variable o7 | Variable $@ may be null at this access because of $@ assignment. | D.cs:68:13:68:14 | o7 | o7 | D.cs:68:13:68:34 | String o7 = ... | this | From efe413cbd061bf1a0bea2c08c2eebf2f9b6d414b Mon Sep 17 00:00:00 2001 From: Philip Ginsbach Date: Mon, 19 Jan 2026 13:57:19 +0000 Subject: [PATCH 060/433] expand overlay introduction with base/overlay context --- .../ql-language-reference/annotations.rst | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/docs/codeql/ql-language-reference/annotations.rst b/docs/codeql/ql-language-reference/annotations.rst index 1ce9fa453b76..3a7657ca9ae2 100644 --- a/docs/codeql/ql-language-reference/annotations.rst +++ b/docs/codeql/ql-language-reference/annotations.rst @@ -508,11 +508,20 @@ Overlay annotations =================== Overlay annotations control how predicates behave during **overlay evaluation**, a feature -that enables efficient incremental analysis by dividing QL code into *local* and *global* -parts. During overlay evaluation, local predicates are evaluated separately on "base" (cached -from previous analysis) and "overlay" (newly changed files) data. When a global predicate -calls a local predicate, results from both the base and overlay evaluations are combined, -with stale base results filtered out through a process called "discarding." +that enables efficient incremental analysis of codebases. + +In overlay evaluation, a *base database* is created from one version of a codebase, and an +*overlay database* is created by combining the base database with changes from a newer +version (such as a pull request). The goal is to analyze the overlay database as if it +were a fully extracted database at the newer commit, while reusing as much cached data +from the base database as possible. Ideally, analysis time is proportional to the size +of the diff rather than the full codebase. + +To achieve this, predicates are divided into *local* and *global* categories. Local +predicates are evaluated separately on base and overlay data, with results combined at +the frontier between local and global code. Global predicates operate on the combined +data. Local predicates typically take time proportional to the diff size, while global +predicates take time proportional to the full codebase. Overlay evaluation is primarily used internally by GitHub Code Scanning to speed up pull request analysis. Most QL developers do not need to use these annotations directly, From 930b17a2e2ec99433210d57e6f53313ddb95e18b Mon Sep 17 00:00:00 2001 From: Philip Ginsbach Date: Mon, 19 Jan 2026 14:06:45 +0000 Subject: [PATCH 061/433] clarify compileForOverlayEval only needed in language packs --- docs/codeql/ql-language-reference/annotations.rst | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/docs/codeql/ql-language-reference/annotations.rst b/docs/codeql/ql-language-reference/annotations.rst index 3a7657ca9ae2..17a4c2cc76e6 100644 --- a/docs/codeql/ql-language-reference/annotations.rst +++ b/docs/codeql/ql-language-reference/annotations.rst @@ -530,10 +530,11 @@ support is enabled for a language. .. note:: - Overlay annotations only affect evaluation when overlay compilation is enabled for a - QL pack (via ``compileForOverlayEval: true`` in ``qlpack.yml``) and the evaluator is - running in overlay mode. Otherwise, these annotations are validated but have no effect - on evaluation. + Overlay annotations only affect evaluation when overlay compilation is enabled + (via ``compileForOverlayEval: true`` in ``qlpack.yml``) and the evaluator is running + in overlay mode. This setting is typically only needed in the language's library pack; + custom query packs do not need it. Outside of overlay mode, these annotations are + validated but have no effect on evaluation. ``overlay[local]`` ------------------ From a0311c0ea3ce9ee02dbaace4e11cc9f7be59c79f Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Mon, 19 Jan 2026 15:07:42 +0000 Subject: [PATCH 062/433] Rust: Test spacing. --- .../dataflow/taint/TaintFlowStep.expected | 84 +++---- .../dataflow/taint/inline-taint-flow.expected | 212 +++++++++--------- .../test/library-tests/dataflow/taint/main.rs | 15 ++ 3 files changed, 163 insertions(+), 148 deletions(-) diff --git a/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected b/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected index dfd91b81506c..d3f838b794df 100644 --- a/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected +++ b/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected @@ -1,43 +1,43 @@ | main.rs:8:20:8:20 | s | main.rs:8:14:8:20 | FormatArgsExpr | -| main.rs:16:5:16:5 | [post] b [implicit borrow] | main.rs:16:5:16:5 | [SSA] b | -| main.rs:20:5:20:5 | [post] c [implicit borrow] | main.rs:20:5:20:5 | [SSA] c | -| main.rs:31:13:31:13 | a | main.rs:31:13:31:19 | a as u8 | -| main.rs:32:10:32:10 | b | main.rs:32:10:32:17 | b as i64 | -| main.rs:32:10:32:17 | [post] b as i64 | main.rs:32:10:32:10 | [post] b | -| main.rs:37:23:37:23 | i | main.rs:37:17:37:23 | FormatArgsExpr | -| main.rs:41:24:41:24 | s | main.rs:41:18:41:24 | FormatArgsExpr | -| main.rs:46:23:46:23 | [post] s [implicit borrow] | main.rs:46:23:46:23 | [post] s | -| main.rs:46:23:46:23 | s | main.rs:46:23:46:29 | s[...] | -| main.rs:46:23:46:29 | s[...] [pre-dereferenced] | main.rs:46:23:46:29 | s[...] | -| main.rs:57:24:57:24 | i | main.rs:57:18:57:24 | FormatArgsExpr | -| main.rs:62:14:62:16 | [post] arr [implicit borrow] | main.rs:62:14:62:16 | [post] arr | -| main.rs:62:14:62:19 | arr[1] [pre-dereferenced] | main.rs:62:14:62:19 | arr[1] | -| main.rs:72:24:72:24 | [post] s [implicit borrow] | main.rs:72:24:72:24 | [post] s | -| main.rs:72:24:72:27 | s[1] | main.rs:72:18:72:27 | FormatArgsExpr | -| main.rs:72:24:72:27 | s[1] [pre-dereferenced] | main.rs:72:24:72:27 | s[1] | -| main.rs:77:9:77:12 | [post] arr2 [implicit borrow] | main.rs:77:9:77:12 | [post] arr2 | -| main.rs:77:9:77:15 | arr2[1] [pre-dereferenced] | main.rs:77:9:77:15 | arr2[1] | -| main.rs:98:14:98:47 | TupleExpr | main.rs:98:14:98:49 | ... .0 | -| main.rs:99:14:99:47 | TupleExpr | main.rs:99:14:99:49 | ... .1 | -| main.rs:102:14:102:28 | source_tuple(...) | main.rs:102:14:102:30 | ... .0 | -| main.rs:103:14:103:28 | source_tuple(...) | main.rs:103:14:103:30 | ... .1 | -| main.rs:106:14:106:83 | TupleExpr | main.rs:106:14:106:85 | ... .0 | -| main.rs:107:14:107:83 | TupleExpr | main.rs:107:14:107:85 | ... .0 | -| main.rs:107:14:107:85 | ... .0 | main.rs:107:14:107:87 | ... .0 | -| main.rs:108:14:108:83 | TupleExpr | main.rs:108:14:108:85 | ... .0 | -| main.rs:108:14:108:85 | ... .0 | main.rs:108:14:108:87 | ... .1 | -| main.rs:109:14:109:83 | TupleExpr | main.rs:109:14:109:85 | ... .1 | -| main.rs:110:14:110:83 | TupleExpr | main.rs:110:14:110:85 | ... .1 | -| main.rs:110:14:110:85 | ... .1 | main.rs:110:14:110:87 | ... .0 | -| main.rs:111:14:111:83 | TupleExpr | main.rs:111:14:111:85 | ... .1 | -| main.rs:111:14:111:85 | ... .1 | main.rs:111:14:111:87 | ... .1 | -| main.rs:114:14:114:64 | TupleExpr | main.rs:114:14:114:66 | ... .0 | -| main.rs:115:14:115:64 | TupleExpr | main.rs:115:14:115:66 | ... .0 | -| main.rs:115:14:115:66 | ... .0 | main.rs:115:14:115:68 | ... .0 | -| main.rs:116:14:116:64 | TupleExpr | main.rs:116:14:116:66 | ... .0 | -| main.rs:116:14:116:66 | ... .0 | main.rs:116:14:116:68 | ... .1 | -| main.rs:117:14:117:64 | TupleExpr | main.rs:117:14:117:66 | ... .1 | -| main.rs:118:14:118:64 | TupleExpr | main.rs:118:14:118:66 | ... .1 | -| main.rs:118:14:118:66 | ... .1 | main.rs:118:14:118:68 | ... .0 | -| main.rs:119:14:119:64 | TupleExpr | main.rs:119:14:119:66 | ... .1 | -| main.rs:119:14:119:66 | ... .1 | main.rs:119:14:119:68 | ... .1 | +| main.rs:17:5:17:5 | [post] b [implicit borrow] | main.rs:17:5:17:5 | [SSA] b | +| main.rs:21:5:21:5 | [post] c [implicit borrow] | main.rs:21:5:21:5 | [SSA] c | +| main.rs:46:13:46:13 | a | main.rs:46:13:46:19 | a as u8 | +| main.rs:47:10:47:10 | b | main.rs:47:10:47:17 | b as i64 | +| main.rs:47:10:47:17 | [post] b as i64 | main.rs:47:10:47:10 | [post] b | +| main.rs:52:23:52:23 | i | main.rs:52:17:52:23 | FormatArgsExpr | +| main.rs:56:24:56:24 | s | main.rs:56:18:56:24 | FormatArgsExpr | +| main.rs:61:23:61:23 | [post] s [implicit borrow] | main.rs:61:23:61:23 | [post] s | +| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | +| main.rs:61:23:61:29 | s[...] [pre-dereferenced] | main.rs:61:23:61:29 | s[...] | +| main.rs:72:24:72:24 | i | main.rs:72:18:72:24 | FormatArgsExpr | +| main.rs:77:14:77:16 | [post] arr [implicit borrow] | main.rs:77:14:77:16 | [post] arr | +| main.rs:77:14:77:19 | arr[1] [pre-dereferenced] | main.rs:77:14:77:19 | arr[1] | +| main.rs:87:24:87:24 | [post] s [implicit borrow] | main.rs:87:24:87:24 | [post] s | +| main.rs:87:24:87:27 | s[1] | main.rs:87:18:87:27 | FormatArgsExpr | +| main.rs:87:24:87:27 | s[1] [pre-dereferenced] | main.rs:87:24:87:27 | s[1] | +| main.rs:92:9:92:12 | [post] arr2 [implicit borrow] | main.rs:92:9:92:12 | [post] arr2 | +| main.rs:92:9:92:15 | arr2[1] [pre-dereferenced] | main.rs:92:9:92:15 | arr2[1] | +| main.rs:113:14:113:47 | TupleExpr | main.rs:113:14:113:49 | ... .0 | +| main.rs:114:14:114:47 | TupleExpr | main.rs:114:14:114:49 | ... .1 | +| main.rs:117:14:117:28 | source_tuple(...) | main.rs:117:14:117:30 | ... .0 | +| main.rs:118:14:118:28 | source_tuple(...) | main.rs:118:14:118:30 | ... .1 | +| main.rs:121:14:121:83 | TupleExpr | main.rs:121:14:121:85 | ... .0 | +| main.rs:122:14:122:83 | TupleExpr | main.rs:122:14:122:85 | ... .0 | +| main.rs:122:14:122:85 | ... .0 | main.rs:122:14:122:87 | ... .0 | +| main.rs:123:14:123:83 | TupleExpr | main.rs:123:14:123:85 | ... .0 | +| main.rs:123:14:123:85 | ... .0 | main.rs:123:14:123:87 | ... .1 | +| main.rs:124:14:124:83 | TupleExpr | main.rs:124:14:124:85 | ... .1 | +| main.rs:125:14:125:83 | TupleExpr | main.rs:125:14:125:85 | ... .1 | +| main.rs:125:14:125:85 | ... .1 | main.rs:125:14:125:87 | ... .0 | +| main.rs:126:14:126:83 | TupleExpr | main.rs:126:14:126:85 | ... .1 | +| main.rs:126:14:126:85 | ... .1 | main.rs:126:14:126:87 | ... .1 | +| main.rs:129:14:129:64 | TupleExpr | main.rs:129:14:129:66 | ... .0 | +| main.rs:130:14:130:64 | TupleExpr | main.rs:130:14:130:66 | ... .0 | +| main.rs:130:14:130:66 | ... .0 | main.rs:130:14:130:68 | ... .0 | +| main.rs:131:14:131:64 | TupleExpr | main.rs:131:14:131:66 | ... .0 | +| main.rs:131:14:131:66 | ... .0 | main.rs:131:14:131:68 | ... .1 | +| main.rs:132:14:132:64 | TupleExpr | main.rs:132:14:132:66 | ... .1 | +| main.rs:133:14:133:64 | TupleExpr | main.rs:133:14:133:66 | ... .1 | +| main.rs:133:14:133:66 | ... .1 | main.rs:133:14:133:68 | ... .0 | +| main.rs:134:14:134:64 | TupleExpr | main.rs:134:14:134:66 | ... .1 | +| main.rs:134:14:134:66 | ... .1 | main.rs:134:14:134:68 | ... .1 | diff --git a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected index 53a6a4e01a0c..ff182738a8e8 100644 --- a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected +++ b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected @@ -9,118 +9,118 @@ edges | main.rs:12:9:12:9 | a | main.rs:13:10:13:10 | a | provenance | | | main.rs:12:13:12:22 | source(...) | main.rs:12:9:12:9 | a | provenance | | | main.rs:13:10:13:10 | a | main.rs:13:10:13:14 | ... + ... | provenance | MaD:1 | -| main.rs:15:9:15:13 | mut b | main.rs:16:5:16:5 | b | provenance | | -| main.rs:15:17:15:26 | source(...) | main.rs:15:9:15:13 | mut b | provenance | | -| main.rs:16:5:16:5 | b | main.rs:17:10:17:10 | b | provenance | MaD:4 | -| main.rs:20:10:20:19 | source(...) | main.rs:21:10:21:10 | c | provenance | MaD:2 | -| main.rs:20:10:20:19 | source(...) | main.rs:21:10:21:10 | c | provenance | MaD:3 | -| main.rs:25:9:25:9 | a | main.rs:26:11:26:11 | a | provenance | | -| main.rs:25:13:25:22 | source(...) | main.rs:25:9:25:9 | a | provenance | | -| main.rs:26:11:26:11 | a | main.rs:26:10:26:11 | - ... | provenance | MaD:5 | -| main.rs:30:9:30:9 | a | main.rs:31:9:31:9 | b | provenance | | -| main.rs:30:13:30:22 | source(...) | main.rs:30:9:30:9 | a | provenance | | -| main.rs:31:9:31:9 | b | main.rs:32:10:32:17 | b as i64 | provenance | | -| main.rs:45:13:45:13 | s | main.rs:46:23:46:23 | s | provenance | | -| main.rs:45:13:45:13 | s | main.rs:46:23:46:29 | s[...] | provenance | | -| main.rs:45:17:45:26 | source(...) | main.rs:45:13:45:13 | s | provenance | | -| main.rs:46:13:46:18 | sliced [&ref] | main.rs:47:14:47:19 | sliced | provenance | | -| main.rs:46:22:46:29 | &... [&ref] | main.rs:46:13:46:18 | sliced [&ref] | provenance | | -| main.rs:46:23:46:23 | s | main.rs:46:23:46:29 | s[...] | provenance | MaD:6 | -| main.rs:46:23:46:29 | s[...] | main.rs:46:22:46:29 | &... [&ref] | provenance | | -| main.rs:61:13:61:15 | arr | main.rs:62:14:62:16 | arr | provenance | | -| main.rs:61:19:61:28 | source(...) | main.rs:61:13:61:15 | arr | provenance | | -| main.rs:62:14:62:16 | arr | main.rs:62:14:62:19 | arr[1] | provenance | MaD:6 | -| main.rs:77:9:77:12 | [post] arr2 [element] | main.rs:78:14:78:17 | arr2 | provenance | | -| main.rs:77:19:77:28 | source(...) | main.rs:77:9:77:12 | [post] arr2 [element] | provenance | | -| main.rs:98:14:98:47 | TupleExpr [tuple.0] | main.rs:98:14:98:49 | ... .0 | provenance | | -| main.rs:98:15:98:30 | source_string(...) | main.rs:98:14:98:47 | TupleExpr [tuple.0] | provenance | | -| main.rs:102:14:102:28 | source_tuple(...) | main.rs:102:14:102:30 | ... .0 | provenance | | -| main.rs:103:14:103:28 | source_tuple(...) | main.rs:103:14:103:30 | ... .1 | provenance | | -| main.rs:108:14:108:83 | TupleExpr [tuple.0, tuple.1] | main.rs:108:14:108:85 | ... .0 [tuple.1] | provenance | | -| main.rs:108:14:108:85 | ... .0 [tuple.1] | main.rs:108:14:108:87 | ... .1 | provenance | | -| main.rs:108:15:108:48 | TupleExpr [tuple.1] | main.rs:108:14:108:83 | TupleExpr [tuple.0, tuple.1] | provenance | | -| main.rs:108:32:108:47 | source_string(...) | main.rs:108:15:108:48 | TupleExpr [tuple.1] | provenance | | -| main.rs:114:14:114:64 | TupleExpr [tuple.0] | main.rs:114:14:114:66 | ... .0 | provenance | | -| main.rs:114:15:114:29 | source_tuple(...) | main.rs:114:14:114:64 | TupleExpr [tuple.0] | provenance | | -| main.rs:115:14:115:64 | TupleExpr [tuple.0] | main.rs:115:14:115:66 | ... .0 | provenance | | -| main.rs:115:14:115:66 | ... .0 | main.rs:115:14:115:68 | ... .0 | provenance | | -| main.rs:115:15:115:29 | source_tuple(...) | main.rs:115:14:115:64 | TupleExpr [tuple.0] | provenance | | -| main.rs:116:14:116:64 | TupleExpr [tuple.0] | main.rs:116:14:116:66 | ... .0 | provenance | | -| main.rs:116:14:116:66 | ... .0 | main.rs:116:14:116:68 | ... .1 | provenance | | -| main.rs:116:15:116:29 | source_tuple(...) | main.rs:116:14:116:64 | TupleExpr [tuple.0] | provenance | | +| main.rs:16:9:16:13 | mut b | main.rs:17:5:17:5 | b | provenance | | +| main.rs:16:17:16:26 | source(...) | main.rs:16:9:16:13 | mut b | provenance | | +| main.rs:17:5:17:5 | b | main.rs:18:10:18:10 | b | provenance | MaD:4 | +| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:2 | +| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:3 | +| main.rs:26:9:26:9 | a | main.rs:27:11:27:11 | a | provenance | | +| main.rs:26:13:26:22 | source(...) | main.rs:26:9:26:9 | a | provenance | | +| main.rs:27:11:27:11 | a | main.rs:27:10:27:11 | - ... | provenance | MaD:5 | +| main.rs:45:9:45:9 | a | main.rs:46:9:46:9 | b | provenance | | +| main.rs:45:13:45:22 | source(...) | main.rs:45:9:45:9 | a | provenance | | +| main.rs:46:9:46:9 | b | main.rs:47:10:47:17 | b as i64 | provenance | | +| main.rs:60:13:60:13 | s | main.rs:61:23:61:23 | s | provenance | | +| main.rs:60:13:60:13 | s | main.rs:61:23:61:29 | s[...] | provenance | | +| main.rs:60:17:60:26 | source(...) | main.rs:60:13:60:13 | s | provenance | | +| main.rs:61:13:61:18 | sliced [&ref] | main.rs:62:14:62:19 | sliced | provenance | | +| main.rs:61:22:61:29 | &... [&ref] | main.rs:61:13:61:18 | sliced [&ref] | provenance | | +| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:6 | +| main.rs:61:23:61:29 | s[...] | main.rs:61:22:61:29 | &... [&ref] | provenance | | +| main.rs:76:13:76:15 | arr | main.rs:77:14:77:16 | arr | provenance | | +| main.rs:76:19:76:28 | source(...) | main.rs:76:13:76:15 | arr | provenance | | +| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:6 | +| main.rs:92:9:92:12 | [post] arr2 [element] | main.rs:93:14:93:17 | arr2 | provenance | | +| main.rs:92:19:92:28 | source(...) | main.rs:92:9:92:12 | [post] arr2 [element] | provenance | | +| main.rs:113:14:113:47 | TupleExpr [tuple.0] | main.rs:113:14:113:49 | ... .0 | provenance | | +| main.rs:113:15:113:30 | source_string(...) | main.rs:113:14:113:47 | TupleExpr [tuple.0] | provenance | | +| main.rs:117:14:117:28 | source_tuple(...) | main.rs:117:14:117:30 | ... .0 | provenance | | +| main.rs:118:14:118:28 | source_tuple(...) | main.rs:118:14:118:30 | ... .1 | provenance | | +| main.rs:123:14:123:83 | TupleExpr [tuple.0, tuple.1] | main.rs:123:14:123:85 | ... .0 [tuple.1] | provenance | | +| main.rs:123:14:123:85 | ... .0 [tuple.1] | main.rs:123:14:123:87 | ... .1 | provenance | | +| main.rs:123:15:123:48 | TupleExpr [tuple.1] | main.rs:123:14:123:83 | TupleExpr [tuple.0, tuple.1] | provenance | | +| main.rs:123:32:123:47 | source_string(...) | main.rs:123:15:123:48 | TupleExpr [tuple.1] | provenance | | +| main.rs:129:14:129:64 | TupleExpr [tuple.0] | main.rs:129:14:129:66 | ... .0 | provenance | | +| main.rs:129:15:129:29 | source_tuple(...) | main.rs:129:14:129:64 | TupleExpr [tuple.0] | provenance | | +| main.rs:130:14:130:64 | TupleExpr [tuple.0] | main.rs:130:14:130:66 | ... .0 | provenance | | +| main.rs:130:14:130:66 | ... .0 | main.rs:130:14:130:68 | ... .0 | provenance | | +| main.rs:130:15:130:29 | source_tuple(...) | main.rs:130:14:130:64 | TupleExpr [tuple.0] | provenance | | +| main.rs:131:14:131:64 | TupleExpr [tuple.0] | main.rs:131:14:131:66 | ... .0 | provenance | | +| main.rs:131:14:131:66 | ... .0 | main.rs:131:14:131:68 | ... .1 | provenance | | +| main.rs:131:15:131:29 | source_tuple(...) | main.rs:131:14:131:64 | TupleExpr [tuple.0] | provenance | | nodes | main.rs:12:9:12:9 | a | semmle.label | a | | main.rs:12:13:12:22 | source(...) | semmle.label | source(...) | | main.rs:13:10:13:10 | a | semmle.label | a | | main.rs:13:10:13:14 | ... + ... | semmle.label | ... + ... | -| main.rs:15:9:15:13 | mut b | semmle.label | mut b | -| main.rs:15:17:15:26 | source(...) | semmle.label | source(...) | -| main.rs:16:5:16:5 | b | semmle.label | b | -| main.rs:17:10:17:10 | b | semmle.label | b | -| main.rs:20:10:20:19 | source(...) | semmle.label | source(...) | -| main.rs:21:10:21:10 | c | semmle.label | c | -| main.rs:25:9:25:9 | a | semmle.label | a | -| main.rs:25:13:25:22 | source(...) | semmle.label | source(...) | -| main.rs:26:10:26:11 | - ... | semmle.label | - ... | -| main.rs:26:11:26:11 | a | semmle.label | a | -| main.rs:30:9:30:9 | a | semmle.label | a | -| main.rs:30:13:30:22 | source(...) | semmle.label | source(...) | -| main.rs:31:9:31:9 | b | semmle.label | b | -| main.rs:32:10:32:17 | b as i64 | semmle.label | b as i64 | -| main.rs:45:13:45:13 | s | semmle.label | s | -| main.rs:45:17:45:26 | source(...) | semmle.label | source(...) | -| main.rs:46:13:46:18 | sliced [&ref] | semmle.label | sliced [&ref] | -| main.rs:46:22:46:29 | &... [&ref] | semmle.label | &... [&ref] | -| main.rs:46:23:46:23 | s | semmle.label | s | -| main.rs:46:23:46:29 | s[...] | semmle.label | s[...] | -| main.rs:47:14:47:19 | sliced | semmle.label | sliced | -| main.rs:61:13:61:15 | arr | semmle.label | arr | -| main.rs:61:19:61:28 | source(...) | semmle.label | source(...) | -| main.rs:62:14:62:16 | arr | semmle.label | arr | -| main.rs:62:14:62:19 | arr[1] | semmle.label | arr[1] | -| main.rs:77:9:77:12 | [post] arr2 [element] | semmle.label | [post] arr2 [element] | -| main.rs:77:19:77:28 | source(...) | semmle.label | source(...) | -| main.rs:78:14:78:17 | arr2 | semmle.label | arr2 | -| main.rs:98:14:98:47 | TupleExpr [tuple.0] | semmle.label | TupleExpr [tuple.0] | -| main.rs:98:14:98:49 | ... .0 | semmle.label | ... .0 | -| main.rs:98:15:98:30 | source_string(...) | semmle.label | source_string(...) | -| main.rs:101:14:101:28 | source_tuple(...) | semmle.label | source_tuple(...) | -| main.rs:102:14:102:28 | source_tuple(...) | semmle.label | source_tuple(...) | -| main.rs:102:14:102:30 | ... .0 | semmle.label | ... .0 | -| main.rs:103:14:103:28 | source_tuple(...) | semmle.label | source_tuple(...) | -| main.rs:103:14:103:30 | ... .1 | semmle.label | ... .1 | -| main.rs:108:14:108:83 | TupleExpr [tuple.0, tuple.1] | semmle.label | TupleExpr [tuple.0, tuple.1] | -| main.rs:108:14:108:85 | ... .0 [tuple.1] | semmle.label | ... .0 [tuple.1] | -| main.rs:108:14:108:87 | ... .1 | semmle.label | ... .1 | -| main.rs:108:15:108:48 | TupleExpr [tuple.1] | semmle.label | TupleExpr [tuple.1] | -| main.rs:108:32:108:47 | source_string(...) | semmle.label | source_string(...) | -| main.rs:114:14:114:64 | TupleExpr [tuple.0] | semmle.label | TupleExpr [tuple.0] | -| main.rs:114:14:114:66 | ... .0 | semmle.label | ... .0 | -| main.rs:114:15:114:29 | source_tuple(...) | semmle.label | source_tuple(...) | -| main.rs:115:14:115:64 | TupleExpr [tuple.0] | semmle.label | TupleExpr [tuple.0] | -| main.rs:115:14:115:66 | ... .0 | semmle.label | ... .0 | -| main.rs:115:14:115:68 | ... .0 | semmle.label | ... .0 | -| main.rs:115:15:115:29 | source_tuple(...) | semmle.label | source_tuple(...) | -| main.rs:116:14:116:64 | TupleExpr [tuple.0] | semmle.label | TupleExpr [tuple.0] | -| main.rs:116:14:116:66 | ... .0 | semmle.label | ... .0 | -| main.rs:116:14:116:68 | ... .1 | semmle.label | ... .1 | -| main.rs:116:15:116:29 | source_tuple(...) | semmle.label | source_tuple(...) | +| main.rs:16:9:16:13 | mut b | semmle.label | mut b | +| main.rs:16:17:16:26 | source(...) | semmle.label | source(...) | +| main.rs:17:5:17:5 | b | semmle.label | b | +| main.rs:18:10:18:10 | b | semmle.label | b | +| main.rs:21:10:21:19 | source(...) | semmle.label | source(...) | +| main.rs:22:10:22:10 | c | semmle.label | c | +| main.rs:26:9:26:9 | a | semmle.label | a | +| main.rs:26:13:26:22 | source(...) | semmle.label | source(...) | +| main.rs:27:10:27:11 | - ... | semmle.label | - ... | +| main.rs:27:11:27:11 | a | semmle.label | a | +| main.rs:45:9:45:9 | a | semmle.label | a | +| main.rs:45:13:45:22 | source(...) | semmle.label | source(...) | +| main.rs:46:9:46:9 | b | semmle.label | b | +| main.rs:47:10:47:17 | b as i64 | semmle.label | b as i64 | +| main.rs:60:13:60:13 | s | semmle.label | s | +| main.rs:60:17:60:26 | source(...) | semmle.label | source(...) | +| main.rs:61:13:61:18 | sliced [&ref] | semmle.label | sliced [&ref] | +| main.rs:61:22:61:29 | &... [&ref] | semmle.label | &... [&ref] | +| main.rs:61:23:61:23 | s | semmle.label | s | +| main.rs:61:23:61:29 | s[...] | semmle.label | s[...] | +| main.rs:62:14:62:19 | sliced | semmle.label | sliced | +| main.rs:76:13:76:15 | arr | semmle.label | arr | +| main.rs:76:19:76:28 | source(...) | semmle.label | source(...) | +| main.rs:77:14:77:16 | arr | semmle.label | arr | +| main.rs:77:14:77:19 | arr[1] | semmle.label | arr[1] | +| main.rs:92:9:92:12 | [post] arr2 [element] | semmle.label | [post] arr2 [element] | +| main.rs:92:19:92:28 | source(...) | semmle.label | source(...) | +| main.rs:93:14:93:17 | arr2 | semmle.label | arr2 | +| main.rs:113:14:113:47 | TupleExpr [tuple.0] | semmle.label | TupleExpr [tuple.0] | +| main.rs:113:14:113:49 | ... .0 | semmle.label | ... .0 | +| main.rs:113:15:113:30 | source_string(...) | semmle.label | source_string(...) | +| main.rs:116:14:116:28 | source_tuple(...) | semmle.label | source_tuple(...) | +| main.rs:117:14:117:28 | source_tuple(...) | semmle.label | source_tuple(...) | +| main.rs:117:14:117:30 | ... .0 | semmle.label | ... .0 | +| main.rs:118:14:118:28 | source_tuple(...) | semmle.label | source_tuple(...) | +| main.rs:118:14:118:30 | ... .1 | semmle.label | ... .1 | +| main.rs:123:14:123:83 | TupleExpr [tuple.0, tuple.1] | semmle.label | TupleExpr [tuple.0, tuple.1] | +| main.rs:123:14:123:85 | ... .0 [tuple.1] | semmle.label | ... .0 [tuple.1] | +| main.rs:123:14:123:87 | ... .1 | semmle.label | ... .1 | +| main.rs:123:15:123:48 | TupleExpr [tuple.1] | semmle.label | TupleExpr [tuple.1] | +| main.rs:123:32:123:47 | source_string(...) | semmle.label | source_string(...) | +| main.rs:129:14:129:64 | TupleExpr [tuple.0] | semmle.label | TupleExpr [tuple.0] | +| main.rs:129:14:129:66 | ... .0 | semmle.label | ... .0 | +| main.rs:129:15:129:29 | source_tuple(...) | semmle.label | source_tuple(...) | +| main.rs:130:14:130:64 | TupleExpr [tuple.0] | semmle.label | TupleExpr [tuple.0] | +| main.rs:130:14:130:66 | ... .0 | semmle.label | ... .0 | +| main.rs:130:14:130:68 | ... .0 | semmle.label | ... .0 | +| main.rs:130:15:130:29 | source_tuple(...) | semmle.label | source_tuple(...) | +| main.rs:131:14:131:64 | TupleExpr [tuple.0] | semmle.label | TupleExpr [tuple.0] | +| main.rs:131:14:131:66 | ... .0 | semmle.label | ... .0 | +| main.rs:131:14:131:68 | ... .1 | semmle.label | ... .1 | +| main.rs:131:15:131:29 | source_tuple(...) | semmle.label | source_tuple(...) | subpaths testFailures #select | main.rs:13:10:13:14 | ... + ... | main.rs:12:13:12:22 | source(...) | main.rs:13:10:13:14 | ... + ... | $@ | main.rs:12:13:12:22 | source(...) | source(...) | -| main.rs:17:10:17:10 | b | main.rs:15:17:15:26 | source(...) | main.rs:17:10:17:10 | b | $@ | main.rs:15:17:15:26 | source(...) | source(...) | -| main.rs:21:10:21:10 | c | main.rs:20:10:20:19 | source(...) | main.rs:21:10:21:10 | c | $@ | main.rs:20:10:20:19 | source(...) | source(...) | -| main.rs:26:10:26:11 | - ... | main.rs:25:13:25:22 | source(...) | main.rs:26:10:26:11 | - ... | $@ | main.rs:25:13:25:22 | source(...) | source(...) | -| main.rs:32:10:32:17 | b as i64 | main.rs:30:13:30:22 | source(...) | main.rs:32:10:32:17 | b as i64 | $@ | main.rs:30:13:30:22 | source(...) | source(...) | -| main.rs:47:14:47:19 | sliced | main.rs:45:17:45:26 | source(...) | main.rs:47:14:47:19 | sliced | $@ | main.rs:45:17:45:26 | source(...) | source(...) | -| main.rs:62:14:62:19 | arr[1] | main.rs:61:19:61:28 | source(...) | main.rs:62:14:62:19 | arr[1] | $@ | main.rs:61:19:61:28 | source(...) | source(...) | -| main.rs:78:14:78:17 | arr2 | main.rs:77:19:77:28 | source(...) | main.rs:78:14:78:17 | arr2 | $@ | main.rs:77:19:77:28 | source(...) | source(...) | -| main.rs:98:14:98:49 | ... .0 | main.rs:98:15:98:30 | source_string(...) | main.rs:98:14:98:49 | ... .0 | $@ | main.rs:98:15:98:30 | source_string(...) | source_string(...) | -| main.rs:101:14:101:28 | source_tuple(...) | main.rs:101:14:101:28 | source_tuple(...) | main.rs:101:14:101:28 | source_tuple(...) | $@ | main.rs:101:14:101:28 | source_tuple(...) | source_tuple(...) | -| main.rs:102:14:102:30 | ... .0 | main.rs:102:14:102:28 | source_tuple(...) | main.rs:102:14:102:30 | ... .0 | $@ | main.rs:102:14:102:28 | source_tuple(...) | source_tuple(...) | -| main.rs:103:14:103:30 | ... .1 | main.rs:103:14:103:28 | source_tuple(...) | main.rs:103:14:103:30 | ... .1 | $@ | main.rs:103:14:103:28 | source_tuple(...) | source_tuple(...) | -| main.rs:108:14:108:87 | ... .1 | main.rs:108:32:108:47 | source_string(...) | main.rs:108:14:108:87 | ... .1 | $@ | main.rs:108:32:108:47 | source_string(...) | source_string(...) | -| main.rs:114:14:114:66 | ... .0 | main.rs:114:15:114:29 | source_tuple(...) | main.rs:114:14:114:66 | ... .0 | $@ | main.rs:114:15:114:29 | source_tuple(...) | source_tuple(...) | -| main.rs:115:14:115:68 | ... .0 | main.rs:115:15:115:29 | source_tuple(...) | main.rs:115:14:115:68 | ... .0 | $@ | main.rs:115:15:115:29 | source_tuple(...) | source_tuple(...) | -| main.rs:116:14:116:68 | ... .1 | main.rs:116:15:116:29 | source_tuple(...) | main.rs:116:14:116:68 | ... .1 | $@ | main.rs:116:15:116:29 | source_tuple(...) | source_tuple(...) | +| main.rs:18:10:18:10 | b | main.rs:16:17:16:26 | source(...) | main.rs:18:10:18:10 | b | $@ | main.rs:16:17:16:26 | source(...) | source(...) | +| main.rs:22:10:22:10 | c | main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | $@ | main.rs:21:10:21:19 | source(...) | source(...) | +| main.rs:27:10:27:11 | - ... | main.rs:26:13:26:22 | source(...) | main.rs:27:10:27:11 | - ... | $@ | main.rs:26:13:26:22 | source(...) | source(...) | +| main.rs:47:10:47:17 | b as i64 | main.rs:45:13:45:22 | source(...) | main.rs:47:10:47:17 | b as i64 | $@ | main.rs:45:13:45:22 | source(...) | source(...) | +| main.rs:62:14:62:19 | sliced | main.rs:60:17:60:26 | source(...) | main.rs:62:14:62:19 | sliced | $@ | main.rs:60:17:60:26 | source(...) | source(...) | +| main.rs:77:14:77:19 | arr[1] | main.rs:76:19:76:28 | source(...) | main.rs:77:14:77:19 | arr[1] | $@ | main.rs:76:19:76:28 | source(...) | source(...) | +| main.rs:93:14:93:17 | arr2 | main.rs:92:19:92:28 | source(...) | main.rs:93:14:93:17 | arr2 | $@ | main.rs:92:19:92:28 | source(...) | source(...) | +| main.rs:113:14:113:49 | ... .0 | main.rs:113:15:113:30 | source_string(...) | main.rs:113:14:113:49 | ... .0 | $@ | main.rs:113:15:113:30 | source_string(...) | source_string(...) | +| main.rs:116:14:116:28 | source_tuple(...) | main.rs:116:14:116:28 | source_tuple(...) | main.rs:116:14:116:28 | source_tuple(...) | $@ | main.rs:116:14:116:28 | source_tuple(...) | source_tuple(...) | +| main.rs:117:14:117:30 | ... .0 | main.rs:117:14:117:28 | source_tuple(...) | main.rs:117:14:117:30 | ... .0 | $@ | main.rs:117:14:117:28 | source_tuple(...) | source_tuple(...) | +| main.rs:118:14:118:30 | ... .1 | main.rs:118:14:118:28 | source_tuple(...) | main.rs:118:14:118:30 | ... .1 | $@ | main.rs:118:14:118:28 | source_tuple(...) | source_tuple(...) | +| main.rs:123:14:123:87 | ... .1 | main.rs:123:32:123:47 | source_string(...) | main.rs:123:14:123:87 | ... .1 | $@ | main.rs:123:32:123:47 | source_string(...) | source_string(...) | +| main.rs:129:14:129:66 | ... .0 | main.rs:129:15:129:29 | source_tuple(...) | main.rs:129:14:129:66 | ... .0 | $@ | main.rs:129:15:129:29 | source_tuple(...) | source_tuple(...) | +| main.rs:130:14:130:68 | ... .0 | main.rs:130:15:130:29 | source_tuple(...) | main.rs:130:14:130:68 | ... .0 | $@ | main.rs:130:15:130:29 | source_tuple(...) | source_tuple(...) | +| main.rs:131:14:131:68 | ... .1 | main.rs:131:15:131:29 | source_tuple(...) | main.rs:131:14:131:68 | ... .1 | $@ | main.rs:131:15:131:29 | source_tuple(...) | source_tuple(...) | diff --git a/rust/ql/test/library-tests/dataflow/taint/main.rs b/rust/ql/test/library-tests/dataflow/taint/main.rs index e7c23d38e98d..506c6e5eb3c0 100644 --- a/rust/ql/test/library-tests/dataflow/taint/main.rs +++ b/rust/ql/test/library-tests/dataflow/taint/main.rs @@ -12,6 +12,7 @@ fn addition() { let a = source(42); sink(a + 1); // $ hasTaintFlow=42 + let mut b = source(58); b += 2; sink(b); // $ hasTaintFlow=58 @@ -26,6 +27,20 @@ fn negation() { sink(-a); // $ hasTaintFlow=17 } + + + + + + + + + + + + + + fn cast() { let a = source(77); let b = a as u8; From 48475e66afbef2e480ca3ed2016ef0452d495f23 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 19 Jan 2026 15:49:08 +0000 Subject: [PATCH 063/433] Post-release preparation for codeql-cli-2.24.0 --- actions/ql/lib/qlpack.yml | 2 +- actions/ql/src/qlpack.yml | 2 +- cpp/ql/lib/qlpack.yml | 2 +- cpp/ql/src/qlpack.yml | 2 +- csharp/ql/campaigns/Solorigate/lib/qlpack.yml | 2 +- csharp/ql/campaigns/Solorigate/src/qlpack.yml | 2 +- csharp/ql/lib/qlpack.yml | 2 +- csharp/ql/src/qlpack.yml | 2 +- go/ql/consistency-queries/qlpack.yml | 2 +- go/ql/lib/qlpack.yml | 2 +- go/ql/src/qlpack.yml | 2 +- java/ql/lib/qlpack.yml | 2 +- java/ql/src/qlpack.yml | 2 +- javascript/ql/lib/qlpack.yml | 2 +- javascript/ql/src/qlpack.yml | 2 +- misc/suite-helpers/qlpack.yml | 2 +- python/ql/lib/qlpack.yml | 2 +- python/ql/src/qlpack.yml | 2 +- ruby/ql/lib/qlpack.yml | 2 +- ruby/ql/src/qlpack.yml | 2 +- rust/ql/lib/qlpack.yml | 2 +- rust/ql/src/qlpack.yml | 2 +- shared/concepts/qlpack.yml | 2 +- shared/controlflow/qlpack.yml | 2 +- shared/dataflow/qlpack.yml | 2 +- shared/mad/qlpack.yml | 2 +- shared/quantum/qlpack.yml | 2 +- shared/rangeanalysis/qlpack.yml | 2 +- shared/regex/qlpack.yml | 2 +- shared/ssa/qlpack.yml | 2 +- shared/threat-models/qlpack.yml | 2 +- shared/tutorial/qlpack.yml | 2 +- shared/typeflow/qlpack.yml | 2 +- shared/typeinference/qlpack.yml | 2 +- shared/typetracking/qlpack.yml | 2 +- shared/typos/qlpack.yml | 2 +- shared/util/qlpack.yml | 2 +- shared/xml/qlpack.yml | 2 +- shared/yaml/qlpack.yml | 2 +- swift/ql/lib/qlpack.yml | 2 +- swift/ql/src/qlpack.yml | 2 +- 41 files changed, 41 insertions(+), 41 deletions(-) diff --git a/actions/ql/lib/qlpack.yml b/actions/ql/lib/qlpack.yml index 4aeb44050836..27d4fa665e9c 100644 --- a/actions/ql/lib/qlpack.yml +++ b/actions/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-all -version: 0.4.26 +version: 0.4.27-dev library: true warnOnImplicitThis: true dependencies: diff --git a/actions/ql/src/qlpack.yml b/actions/ql/src/qlpack.yml index f8b801a168a5..e93b555f030c 100644 --- a/actions/ql/src/qlpack.yml +++ b/actions/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-queries -version: 0.6.18 +version: 0.6.19-dev library: false warnOnImplicitThis: true groups: [actions, queries] diff --git a/cpp/ql/lib/qlpack.yml b/cpp/ql/lib/qlpack.yml index 0eb6d3814258..4ee4779041d3 100644 --- a/cpp/ql/lib/qlpack.yml +++ b/cpp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-all -version: 7.0.0 +version: 7.0.1-dev groups: cpp dbscheme: semmlecode.cpp.dbscheme extractor: cpp diff --git a/cpp/ql/src/qlpack.yml b/cpp/ql/src/qlpack.yml index 6ae2e8d17505..30fd4696695f 100644 --- a/cpp/ql/src/qlpack.yml +++ b/cpp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-queries -version: 1.5.9 +version: 1.5.10-dev groups: - cpp - queries diff --git a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml index fbfa5cf88fad..59e35f8f8a24 100644 --- a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-all -version: 1.7.57 +version: 1.7.58-dev groups: - csharp - solorigate diff --git a/csharp/ql/campaigns/Solorigate/src/qlpack.yml b/csharp/ql/campaigns/Solorigate/src/qlpack.yml index 76ee08aa0b24..a37381968efa 100644 --- a/csharp/ql/campaigns/Solorigate/src/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-queries -version: 1.7.57 +version: 1.7.58-dev groups: - csharp - solorigate diff --git a/csharp/ql/lib/qlpack.yml b/csharp/ql/lib/qlpack.yml index 2991ad96180d..235030e26015 100644 --- a/csharp/ql/lib/qlpack.yml +++ b/csharp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-all -version: 5.4.5 +version: 5.4.6-dev groups: csharp dbscheme: semmlecode.csharp.dbscheme extractor: csharp diff --git a/csharp/ql/src/qlpack.yml b/csharp/ql/src/qlpack.yml index 0dbbc39c39d2..2ea09521187e 100644 --- a/csharp/ql/src/qlpack.yml +++ b/csharp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-queries -version: 1.6.0 +version: 1.6.1-dev groups: - csharp - queries diff --git a/go/ql/consistency-queries/qlpack.yml b/go/ql/consistency-queries/qlpack.yml index 8e49b3c32254..b164141b8281 100644 --- a/go/ql/consistency-queries/qlpack.yml +++ b/go/ql/consistency-queries/qlpack.yml @@ -1,5 +1,5 @@ name: codeql-go-consistency-queries -version: 1.0.40 +version: 1.0.41-dev groups: - go - queries diff --git a/go/ql/lib/qlpack.yml b/go/ql/lib/qlpack.yml index 89863fc641af..669112f115df 100644 --- a/go/ql/lib/qlpack.yml +++ b/go/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-all -version: 6.0.0 +version: 6.0.1-dev groups: go dbscheme: go.dbscheme extractor: go diff --git a/go/ql/src/qlpack.yml b/go/ql/src/qlpack.yml index e6c835ad42a9..da64d00094fa 100644 --- a/go/ql/src/qlpack.yml +++ b/go/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-queries -version: 1.5.4 +version: 1.5.5-dev groups: - go - queries diff --git a/java/ql/lib/qlpack.yml b/java/ql/lib/qlpack.yml index e4c0fd1c9a1e..37de3eb6f72e 100644 --- a/java/ql/lib/qlpack.yml +++ b/java/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-all -version: 7.8.4 +version: 7.8.5-dev groups: java dbscheme: config/semmlecode.dbscheme extractor: java diff --git a/java/ql/src/qlpack.yml b/java/ql/src/qlpack.yml index e3fa999e0bc0..54fa90952dd2 100644 --- a/java/ql/src/qlpack.yml +++ b/java/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-queries -version: 1.10.5 +version: 1.10.6-dev groups: - java - queries diff --git a/javascript/ql/lib/qlpack.yml b/javascript/ql/lib/qlpack.yml index 2a70f7bc42ef..b9abf987afb6 100644 --- a/javascript/ql/lib/qlpack.yml +++ b/javascript/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-all -version: 2.6.20 +version: 2.6.21-dev groups: javascript dbscheme: semmlecode.javascript.dbscheme extractor: javascript diff --git a/javascript/ql/src/qlpack.yml b/javascript/ql/src/qlpack.yml index 354f56fbdec8..9eb734b9d11a 100644 --- a/javascript/ql/src/qlpack.yml +++ b/javascript/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-queries -version: 2.3.0 +version: 2.3.1-dev groups: - javascript - queries diff --git a/misc/suite-helpers/qlpack.yml b/misc/suite-helpers/qlpack.yml index 1bbc2748929c..b01f97237d37 100644 --- a/misc/suite-helpers/qlpack.yml +++ b/misc/suite-helpers/qlpack.yml @@ -1,4 +1,4 @@ name: codeql/suite-helpers -version: 1.0.40 +version: 1.0.41-dev groups: shared warnOnImplicitThis: true diff --git a/python/ql/lib/qlpack.yml b/python/ql/lib/qlpack.yml index 1a004b22db39..ff6a730a2ea3 100644 --- a/python/ql/lib/qlpack.yml +++ b/python/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-all -version: 6.0.0 +version: 6.0.1-dev groups: python dbscheme: semmlecode.python.dbscheme extractor: python diff --git a/python/ql/src/qlpack.yml b/python/ql/src/qlpack.yml index 12afe3f0f0e7..8b797e76e6a3 100644 --- a/python/ql/src/qlpack.yml +++ b/python/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-queries -version: 1.7.5 +version: 1.7.6-dev groups: - python - queries diff --git a/ruby/ql/lib/qlpack.yml b/ruby/ql/lib/qlpack.yml index 26d2c7779c71..1a0515cc7766 100644 --- a/ruby/ql/lib/qlpack.yml +++ b/ruby/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-all -version: 5.1.8 +version: 5.1.9-dev groups: ruby extractor: ruby dbscheme: ruby.dbscheme diff --git a/ruby/ql/src/qlpack.yml b/ruby/ql/src/qlpack.yml index bdd831593cb9..8534baf24823 100644 --- a/ruby/ql/src/qlpack.yml +++ b/ruby/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-queries -version: 1.5.5 +version: 1.5.6-dev groups: - ruby - queries diff --git a/rust/ql/lib/qlpack.yml b/rust/ql/lib/qlpack.yml index ef1689ff0763..c976e05b9b9c 100644 --- a/rust/ql/lib/qlpack.yml +++ b/rust/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-all -version: 0.2.4 +version: 0.2.5-dev groups: rust extractor: rust dbscheme: rust.dbscheme diff --git a/rust/ql/src/qlpack.yml b/rust/ql/src/qlpack.yml index b52234c51d66..e8873e003399 100644 --- a/rust/ql/src/qlpack.yml +++ b/rust/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-queries -version: 0.1.25 +version: 0.1.26-dev groups: - rust - queries diff --git a/shared/concepts/qlpack.yml b/shared/concepts/qlpack.yml index 8689cc4a66fd..0acc44a77e60 100644 --- a/shared/concepts/qlpack.yml +++ b/shared/concepts/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/concepts -version: 0.0.14 +version: 0.0.15-dev groups: shared library: true dependencies: diff --git a/shared/controlflow/qlpack.yml b/shared/controlflow/qlpack.yml index 1e786f4a39a6..fe9c546bd4a1 100644 --- a/shared/controlflow/qlpack.yml +++ b/shared/controlflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/controlflow -version: 2.0.24 +version: 2.0.25-dev groups: shared library: true dependencies: diff --git a/shared/dataflow/qlpack.yml b/shared/dataflow/qlpack.yml index 2030371e5faa..f1c036d74dfb 100644 --- a/shared/dataflow/qlpack.yml +++ b/shared/dataflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/dataflow -version: 2.0.24 +version: 2.0.25-dev groups: shared library: true dependencies: diff --git a/shared/mad/qlpack.yml b/shared/mad/qlpack.yml index c5247c9c9337..f001129240fb 100644 --- a/shared/mad/qlpack.yml +++ b/shared/mad/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/mad -version: 1.0.40 +version: 1.0.41-dev groups: shared library: true dependencies: diff --git a/shared/quantum/qlpack.yml b/shared/quantum/qlpack.yml index 9cd39b4671d3..de32dad32f19 100644 --- a/shared/quantum/qlpack.yml +++ b/shared/quantum/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/quantum -version: 0.0.18 +version: 0.0.19-dev groups: shared library: true dependencies: diff --git a/shared/rangeanalysis/qlpack.yml b/shared/rangeanalysis/qlpack.yml index 0a65a5b3543f..5ecb12275e6b 100644 --- a/shared/rangeanalysis/qlpack.yml +++ b/shared/rangeanalysis/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rangeanalysis -version: 1.0.40 +version: 1.0.41-dev groups: shared library: true dependencies: diff --git a/shared/regex/qlpack.yml b/shared/regex/qlpack.yml index 6ef8edaa2ad7..c57a3de51890 100644 --- a/shared/regex/qlpack.yml +++ b/shared/regex/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/regex -version: 1.0.40 +version: 1.0.41-dev groups: shared library: true dependencies: diff --git a/shared/ssa/qlpack.yml b/shared/ssa/qlpack.yml index 090657b131b1..ac679f613eaf 100644 --- a/shared/ssa/qlpack.yml +++ b/shared/ssa/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ssa -version: 2.0.16 +version: 2.0.17-dev groups: shared library: true dependencies: diff --git a/shared/threat-models/qlpack.yml b/shared/threat-models/qlpack.yml index 083a882a597a..f16ee329d007 100644 --- a/shared/threat-models/qlpack.yml +++ b/shared/threat-models/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/threat-models -version: 1.0.40 +version: 1.0.41-dev library: true groups: shared dataExtensions: diff --git a/shared/tutorial/qlpack.yml b/shared/tutorial/qlpack.yml index ab99a483de0a..8ffe365de0a9 100644 --- a/shared/tutorial/qlpack.yml +++ b/shared/tutorial/qlpack.yml @@ -1,7 +1,7 @@ name: codeql/tutorial description: Library for the CodeQL detective tutorials, helping new users learn to write CodeQL queries. -version: 1.0.40 +version: 1.0.41-dev groups: shared library: true warnOnImplicitThis: true diff --git a/shared/typeflow/qlpack.yml b/shared/typeflow/qlpack.yml index 8ecec46f7bd4..773700f2ac14 100644 --- a/shared/typeflow/qlpack.yml +++ b/shared/typeflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeflow -version: 1.0.40 +version: 1.0.41-dev groups: shared library: true dependencies: diff --git a/shared/typeinference/qlpack.yml b/shared/typeinference/qlpack.yml index 8316949f0545..323af6d7d5da 100644 --- a/shared/typeinference/qlpack.yml +++ b/shared/typeinference/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeinference -version: 0.0.21 +version: 0.0.22-dev groups: shared library: true dependencies: diff --git a/shared/typetracking/qlpack.yml b/shared/typetracking/qlpack.yml index e16b1b4393b6..3c2758e09077 100644 --- a/shared/typetracking/qlpack.yml +++ b/shared/typetracking/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typetracking -version: 2.0.24 +version: 2.0.25-dev groups: shared library: true dependencies: diff --git a/shared/typos/qlpack.yml b/shared/typos/qlpack.yml index 4d32c8d127eb..07154ada5476 100644 --- a/shared/typos/qlpack.yml +++ b/shared/typos/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typos -version: 1.0.40 +version: 1.0.41-dev groups: shared library: true warnOnImplicitThis: true diff --git a/shared/util/qlpack.yml b/shared/util/qlpack.yml index ff2324b5ebfc..0b10b300a47d 100644 --- a/shared/util/qlpack.yml +++ b/shared/util/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/util -version: 2.0.27 +version: 2.0.28-dev groups: shared library: true dependencies: null diff --git a/shared/xml/qlpack.yml b/shared/xml/qlpack.yml index e004d8a7cca3..86ac177bdbfc 100644 --- a/shared/xml/qlpack.yml +++ b/shared/xml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/xml -version: 1.0.40 +version: 1.0.41-dev groups: shared library: true dependencies: diff --git a/shared/yaml/qlpack.yml b/shared/yaml/qlpack.yml index 6319b7bab319..9e3dec90b6d5 100644 --- a/shared/yaml/qlpack.yml +++ b/shared/yaml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/yaml -version: 1.0.40 +version: 1.0.41-dev groups: shared library: true warnOnImplicitThis: true diff --git a/swift/ql/lib/qlpack.yml b/swift/ql/lib/qlpack.yml index 420bf2ca32e3..84482a72c80a 100644 --- a/swift/ql/lib/qlpack.yml +++ b/swift/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-all -version: 6.2.0 +version: 6.2.1-dev groups: swift extractor: swift dbscheme: swift.dbscheme diff --git a/swift/ql/src/qlpack.yml b/swift/ql/src/qlpack.yml index b1632592ec80..61ca00447b22 100644 --- a/swift/ql/src/qlpack.yml +++ b/swift/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-queries -version: 1.2.14 +version: 1.2.15-dev groups: - swift - queries From 50fdc99b8c9cb7e1c1a89a9e9a015600a2679097 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Mon, 15 Dec 2025 18:22:50 +0000 Subject: [PATCH 064/433] Rust: More test cases for operators, std::ops and std::num::Wrapping. --- .../dataflow/taint/TaintFlowStep.expected | 11 + .../dataflow/taint/inline-taint-flow.expected | 245 ++++++++++++++++-- .../test/library-tests/dataflow/taint/main.rs | 98 +++++-- 3 files changed, 323 insertions(+), 31 deletions(-) diff --git a/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected b/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected index d3f838b794df..3273569a34ad 100644 --- a/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected +++ b/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected @@ -41,3 +41,14 @@ | main.rs:133:14:133:66 | ... .1 | main.rs:133:14:133:68 | ... .0 | | main.rs:134:14:134:64 | TupleExpr | main.rs:134:14:134:66 | ... .1 | | main.rs:134:14:134:66 | ... .1 | main.rs:134:14:134:68 | ... .1 | +| main.rs:170:5:170:5 | [post] a [implicit borrow] | main.rs:170:5:170:5 | [post] a | +| main.rs:171:5:171:5 | [post] a [implicit borrow] | main.rs:171:5:171:5 | [post] a | +| main.rs:172:5:172:5 | [post] a [implicit borrow] | main.rs:172:5:172:5 | [post] a | +| main.rs:173:5:173:5 | [post] a [implicit borrow] | main.rs:173:5:173:5 | [post] a | +| main.rs:174:5:174:5 | [post] a [implicit borrow] | main.rs:174:5:174:5 | [post] a | +| main.rs:175:5:175:5 | [post] a [implicit borrow] | main.rs:175:5:175:5 | [post] a | +| main.rs:191:24:191:24 | s | main.rs:191:18:191:24 | FormatArgsExpr | +| main.rs:196:9:196:9 | [post] a [implicit borrow] | main.rs:196:9:196:9 | [post] a | +| main.rs:197:9:197:9 | [post] a [implicit borrow] | main.rs:197:9:197:9 | [post] a | +| main.rs:198:9:198:9 | [post] a [implicit borrow] | main.rs:198:9:198:9 | [SSA] a | +| main.rs:199:9:199:9 | [post] a [implicit borrow] | main.rs:199:9:199:9 | [SSA] a | diff --git a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected index ff182738a8e8..447f1c5f7bd1 100644 --- a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected +++ b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected @@ -1,22 +1,71 @@ models -| 1 | Summary: <_ as core::ops::arith::Add>::add; Argument[self]; ReturnValue; taint | -| 2 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 3 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0]; Argument[self].Reference; taint | -| 4 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[self].Reference; Argument[self].Reference; taint | -| 5 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self]; ReturnValue; taint | -| 6 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | +| 1 | Summary: <_ as core::ops::arith::Add>::add; Argument[0].Reference; ReturnValue; taint | +| 2 | Summary: <_ as core::ops::arith::Add>::add; Argument[0]; ReturnValue; taint | +| 3 | Summary: <_ as core::ops::arith::Add>::add; Argument[self]; ReturnValue; taint | +| 4 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 5 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0]; Argument[self].Reference; taint | +| 6 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 7 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[0].Reference; ReturnValue; taint | +| 8 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[0]; ReturnValue; taint | +| 9 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self]; ReturnValue; taint | +| 10 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 11 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[0]; Argument[self].Reference; taint | +| 12 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 13 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self]; ReturnValue; taint | +| 14 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[0].Reference; ReturnValue; taint | +| 15 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[0]; ReturnValue; taint | +| 16 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[self]; ReturnValue; taint | +| 17 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 18 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[0]; Argument[self].Reference; taint | +| 19 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 20 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[0].Reference; ReturnValue; taint | +| 21 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[0]; ReturnValue; taint | +| 22 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[self]; ReturnValue; taint | +| 23 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[0].Reference; ReturnValue; taint | +| 24 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[0]; ReturnValue; taint | +| 25 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self]; ReturnValue; taint | +| 26 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 27 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0]; Argument[self].Reference; taint | +| 28 | Summary: <_ as core::ops::bit::Not>::not; Argument[self]; ReturnValue; taint | +| 29 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[0].Reference; ReturnValue; taint | +| 30 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[0]; ReturnValue; taint | +| 31 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self]; ReturnValue; taint | +| 32 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 33 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0]; Argument[self].Reference; taint | +| 34 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[0].Reference; ReturnValue; taint | +| 35 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[0]; ReturnValue; taint | +| 36 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[self]; ReturnValue; taint | +| 37 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 38 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0]; Argument[self].Reference; taint | +| 39 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | edges | main.rs:12:9:12:9 | a | main.rs:13:10:13:10 | a | provenance | | +| main.rs:12:9:12:9 | a | main.rs:14:14:14:14 | a | provenance | | | main.rs:12:13:12:22 | source(...) | main.rs:12:9:12:9 | a | provenance | | -| main.rs:13:10:13:10 | a | main.rs:13:10:13:14 | ... + ... | provenance | MaD:1 | +| main.rs:13:10:13:10 | a | main.rs:13:10:13:14 | ... + ... | provenance | MaD:3 | +| main.rs:14:14:14:14 | a | main.rs:14:10:14:14 | ... + ... | provenance | MaD:1 | +| main.rs:14:14:14:14 | a | main.rs:14:10:14:14 | ... + ... | provenance | MaD:2 | | main.rs:16:9:16:13 | mut b | main.rs:17:5:17:5 | b | provenance | | | main.rs:16:17:16:26 | source(...) | main.rs:16:9:16:13 | mut b | provenance | | -| main.rs:17:5:17:5 | b | main.rs:18:10:18:10 | b | provenance | MaD:4 | -| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:2 | -| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:3 | +| main.rs:17:5:17:5 | b | main.rs:18:10:18:10 | b | provenance | MaD:6 | +| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:4 | +| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:5 | | main.rs:26:9:26:9 | a | main.rs:27:11:27:11 | a | provenance | | -| main.rs:26:13:26:22 | source(...) | main.rs:26:9:26:9 | a | provenance | | -| main.rs:27:11:27:11 | a | main.rs:27:10:27:11 | - ... | provenance | MaD:5 | +| main.rs:26:13:26:21 | source(...) | main.rs:26:9:26:9 | a | provenance | | +| main.rs:27:11:27:11 | a | main.rs:27:10:27:11 | - ... | provenance | MaD:13 | +| main.rs:29:11:29:19 | source(...) | main.rs:29:10:29:19 | ! ... | provenance | MaD:28 | +| main.rs:31:10:31:18 | source(...) | main.rs:31:10:31:22 | ... - ... | provenance | MaD:16 | +| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:14 | +| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:15 | +| main.rs:34:10:34:18 | source(...) | main.rs:34:10:34:22 | ... * ... | provenance | MaD:9 | +| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:7 | +| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:8 | +| main.rs:37:10:37:18 | source(...) | main.rs:37:10:37:23 | ... << ... | provenance | MaD:31 | +| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:29 | +| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:30 | +| main.rs:40:10:40:18 | source(...) | main.rs:40:10:40:22 | ... ^ ... | provenance | MaD:25 | +| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:23 | +| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:24 | | main.rs:45:9:45:9 | a | main.rs:46:9:46:9 | b | provenance | | | main.rs:45:13:45:22 | source(...) | main.rs:45:9:45:9 | a | provenance | | | main.rs:46:9:46:9 | b | main.rs:47:10:47:17 | b as i64 | provenance | | @@ -25,11 +74,11 @@ edges | main.rs:60:17:60:26 | source(...) | main.rs:60:13:60:13 | s | provenance | | | main.rs:61:13:61:18 | sliced [&ref] | main.rs:62:14:62:19 | sliced | provenance | | | main.rs:61:22:61:29 | &... [&ref] | main.rs:61:13:61:18 | sliced [&ref] | provenance | | -| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:6 | +| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:39 | | main.rs:61:23:61:29 | s[...] | main.rs:61:22:61:29 | &... [&ref] | provenance | | | main.rs:76:13:76:15 | arr | main.rs:77:14:77:16 | arr | provenance | | | main.rs:76:19:76:28 | source(...) | main.rs:76:13:76:15 | arr | provenance | | -| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:6 | +| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:39 | | main.rs:92:9:92:12 | [post] arr2 [element] | main.rs:93:14:93:17 | arr2 | provenance | | | main.rs:92:19:92:28 | source(...) | main.rs:92:9:92:12 | [post] arr2 [element] | provenance | | | main.rs:113:14:113:47 | TupleExpr [tuple.0] | main.rs:113:14:113:49 | ... .0 | provenance | | @@ -48,11 +97,68 @@ edges | main.rs:131:14:131:64 | TupleExpr [tuple.0] | main.rs:131:14:131:66 | ... .0 | provenance | | | main.rs:131:14:131:66 | ... .0 | main.rs:131:14:131:68 | ... .1 | provenance | | | main.rs:131:15:131:29 | source_tuple(...) | main.rs:131:14:131:64 | TupleExpr [tuple.0] | provenance | | +| main.rs:141:10:141:18 | source(...) | main.rs:141:10:141:28 | ... .add(...) | provenance | MaD:3 | +| main.rs:143:19:143:27 | source(...) | main.rs:143:10:143:28 | 1i64.add(...) | provenance | MaD:1 | +| main.rs:143:19:143:27 | source(...) | main.rs:143:10:143:28 | 1i64.add(...) | provenance | MaD:2 | +| main.rs:146:10:146:18 | source(...) | main.rs:146:10:146:28 | ... .sub(...) | provenance | MaD:16 | +| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:14 | +| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:15 | +| main.rs:151:10:151:18 | source(...) | main.rs:151:10:151:28 | ... .mul(...) | provenance | MaD:9 | +| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:7 | +| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:8 | +| main.rs:156:10:156:18 | source(...) | main.rs:156:10:156:28 | ... .shl(...) | provenance | MaD:31 | +| main.rs:157:10:157:18 | source(...) | main.rs:157:10:157:25 | ... .shl(...) | provenance | MaD:31 | +| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:29 | +| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:30 | +| main.rs:160:10:160:18 | source(...) | main.rs:160:10:160:28 | ... .shr(...) | provenance | MaD:36 | +| main.rs:161:10:161:18 | source(...) | main.rs:161:10:161:25 | ... .shr(...) | provenance | MaD:36 | +| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:34 | +| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:35 | +| main.rs:164:10:164:18 | source(...) | main.rs:164:10:164:30 | ... .bitor(...) | provenance | MaD:22 | +| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:20 | +| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:21 | +| main.rs:170:5:170:5 | [post] a | main.rs:171:5:171:5 | a | provenance | | +| main.rs:170:5:170:5 | [post] a | main.rs:172:5:172:5 | a | provenance | | +| main.rs:170:5:170:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | +| main.rs:170:18:170:26 | source(...) | main.rs:170:5:170:5 | [post] a | provenance | MaD:4 | +| main.rs:170:18:170:26 | source(...) | main.rs:170:5:170:5 | [post] a | provenance | MaD:5 | +| main.rs:171:5:171:5 | [post] a | main.rs:172:5:172:5 | a | provenance | | +| main.rs:171:5:171:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | +| main.rs:171:5:171:5 | a | main.rs:171:5:171:5 | [post] a | provenance | MaD:19 | +| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:17 | +| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:18 | +| main.rs:172:5:172:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | +| main.rs:172:5:172:5 | a | main.rs:172:5:172:5 | [post] a | provenance | MaD:12 | +| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:10 | +| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:11 | +| main.rs:173:5:173:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | +| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:32 | +| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:33 | +| main.rs:174:5:174:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | +| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:37 | +| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:38 | +| main.rs:175:5:175:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | +| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:26 | +| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:27 | +| main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | provenance | MaD:13 | +| main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:28 | +| main.rs:196:9:196:9 | [post] a | main.rs:197:9:197:9 | a | provenance | | +| main.rs:196:9:196:9 | [post] a | main.rs:198:9:198:9 | a | provenance | | +| main.rs:196:22:196:30 | source(...) | main.rs:196:9:196:9 | [post] a | provenance | MaD:4 | +| main.rs:196:22:196:30 | source(...) | main.rs:196:9:196:9 | [post] a | provenance | MaD:5 | +| main.rs:197:9:197:9 | [post] a | main.rs:198:9:198:9 | a | provenance | | +| main.rs:197:9:197:9 | a | main.rs:197:9:197:9 | [post] a | provenance | MaD:6 | +| main.rs:198:9:198:9 | a | main.rs:199:9:199:9 | a | provenance | MaD:6 | +| main.rs:198:14:198:22 | source(...) | main.rs:199:9:199:9 | a | provenance | MaD:4 | +| main.rs:198:14:198:22 | source(...) | main.rs:199:9:199:9 | a | provenance | MaD:5 | +| main.rs:199:9:199:9 | a | main.rs:200:14:200:14 | a | provenance | MaD:6 | nodes | main.rs:12:9:12:9 | a | semmle.label | a | | main.rs:12:13:12:22 | source(...) | semmle.label | source(...) | | main.rs:13:10:13:10 | a | semmle.label | a | | main.rs:13:10:13:14 | ... + ... | semmle.label | ... + ... | +| main.rs:14:10:14:14 | ... + ... | semmle.label | ... + ... | +| main.rs:14:14:14:14 | a | semmle.label | a | | main.rs:16:9:16:13 | mut b | semmle.label | mut b | | main.rs:16:17:16:26 | source(...) | semmle.label | source(...) | | main.rs:17:5:17:5 | b | semmle.label | b | @@ -60,9 +166,27 @@ nodes | main.rs:21:10:21:19 | source(...) | semmle.label | source(...) | | main.rs:22:10:22:10 | c | semmle.label | c | | main.rs:26:9:26:9 | a | semmle.label | a | -| main.rs:26:13:26:22 | source(...) | semmle.label | source(...) | +| main.rs:26:13:26:21 | source(...) | semmle.label | source(...) | | main.rs:27:10:27:11 | - ... | semmle.label | - ... | | main.rs:27:11:27:11 | a | semmle.label | a | +| main.rs:29:10:29:19 | ! ... | semmle.label | ! ... | +| main.rs:29:11:29:19 | source(...) | semmle.label | source(...) | +| main.rs:31:10:31:18 | source(...) | semmle.label | source(...) | +| main.rs:31:10:31:22 | ... - ... | semmle.label | ... - ... | +| main.rs:32:10:32:25 | ... - ... | semmle.label | ... - ... | +| main.rs:32:17:32:25 | source(...) | semmle.label | source(...) | +| main.rs:34:10:34:18 | source(...) | semmle.label | source(...) | +| main.rs:34:10:34:22 | ... * ... | semmle.label | ... * ... | +| main.rs:35:10:35:25 | ... * ... | semmle.label | ... * ... | +| main.rs:35:17:35:25 | source(...) | semmle.label | source(...) | +| main.rs:37:10:37:18 | source(...) | semmle.label | source(...) | +| main.rs:37:10:37:23 | ... << ... | semmle.label | ... << ... | +| main.rs:38:10:38:26 | ... << ... | semmle.label | ... << ... | +| main.rs:38:18:38:26 | source(...) | semmle.label | source(...) | +| main.rs:40:10:40:18 | source(...) | semmle.label | source(...) | +| main.rs:40:10:40:22 | ... ^ ... | semmle.label | ... ^ ... | +| main.rs:41:10:41:27 | ... ^ ... | semmle.label | ... ^ ... | +| main.rs:41:18:41:27 | source(...) | semmle.label | source(...) | | main.rs:45:9:45:9 | a | semmle.label | a | | main.rs:45:13:45:22 | source(...) | semmle.label | source(...) | | main.rs:46:9:46:9 | b | semmle.label | b | @@ -105,13 +229,78 @@ nodes | main.rs:131:14:131:66 | ... .0 | semmle.label | ... .0 | | main.rs:131:14:131:68 | ... .1 | semmle.label | ... .1 | | main.rs:131:15:131:29 | source_tuple(...) | semmle.label | source_tuple(...) | +| main.rs:141:10:141:18 | source(...) | semmle.label | source(...) | +| main.rs:141:10:141:28 | ... .add(...) | semmle.label | ... .add(...) | +| main.rs:143:10:143:28 | 1i64.add(...) | semmle.label | 1i64.add(...) | +| main.rs:143:19:143:27 | source(...) | semmle.label | source(...) | +| main.rs:146:10:146:18 | source(...) | semmle.label | source(...) | +| main.rs:146:10:146:28 | ... .sub(...) | semmle.label | ... .sub(...) | +| main.rs:148:10:148:28 | 1i64.sub(...) | semmle.label | 1i64.sub(...) | +| main.rs:148:19:148:27 | source(...) | semmle.label | source(...) | +| main.rs:151:10:151:18 | source(...) | semmle.label | source(...) | +| main.rs:151:10:151:28 | ... .mul(...) | semmle.label | ... .mul(...) | +| main.rs:153:10:153:28 | 1i64.mul(...) | semmle.label | 1i64.mul(...) | +| main.rs:153:19:153:27 | source(...) | semmle.label | source(...) | +| main.rs:156:10:156:18 | source(...) | semmle.label | source(...) | +| main.rs:156:10:156:28 | ... .shl(...) | semmle.label | ... .shl(...) | +| main.rs:157:10:157:18 | source(...) | semmle.label | source(...) | +| main.rs:157:10:157:25 | ... .shl(...) | semmle.label | ... .shl(...) | +| main.rs:158:10:158:28 | 1i64.shl(...) | semmle.label | 1i64.shl(...) | +| main.rs:158:19:158:27 | source(...) | semmle.label | source(...) | +| main.rs:160:10:160:18 | source(...) | semmle.label | source(...) | +| main.rs:160:10:160:28 | ... .shr(...) | semmle.label | ... .shr(...) | +| main.rs:161:10:161:18 | source(...) | semmle.label | source(...) | +| main.rs:161:10:161:25 | ... .shr(...) | semmle.label | ... .shr(...) | +| main.rs:162:10:162:28 | 1i64.shr(...) | semmle.label | 1i64.shr(...) | +| main.rs:162:19:162:27 | source(...) | semmle.label | source(...) | +| main.rs:164:10:164:18 | source(...) | semmle.label | source(...) | +| main.rs:164:10:164:30 | ... .bitor(...) | semmle.label | ... .bitor(...) | +| main.rs:166:10:166:30 | 1i64.bitor(...) | semmle.label | 1i64.bitor(...) | +| main.rs:166:21:166:29 | source(...) | semmle.label | source(...) | +| main.rs:170:5:170:5 | [post] a | semmle.label | [post] a | +| main.rs:170:18:170:26 | source(...) | semmle.label | source(...) | +| main.rs:171:5:171:5 | [post] a | semmle.label | [post] a | +| main.rs:171:5:171:5 | a | semmle.label | a | +| main.rs:171:18:171:26 | source(...) | semmle.label | source(...) | +| main.rs:172:5:172:5 | [post] a | semmle.label | [post] a | +| main.rs:172:5:172:5 | a | semmle.label | a | +| main.rs:172:18:172:26 | source(...) | semmle.label | source(...) | +| main.rs:173:5:173:5 | [post] a | semmle.label | [post] a | +| main.rs:173:18:173:26 | source(...) | semmle.label | source(...) | +| main.rs:174:5:174:5 | [post] a | semmle.label | [post] a | +| main.rs:174:18:174:26 | source(...) | semmle.label | source(...) | +| main.rs:175:5:175:5 | [post] a | semmle.label | [post] a | +| main.rs:175:21:175:29 | source(...) | semmle.label | source(...) | +| main.rs:176:10:176:10 | a | semmle.label | a | +| main.rs:178:10:178:18 | source(...) | semmle.label | source(...) | +| main.rs:178:10:178:24 | ... .neg() | semmle.label | ... .neg() | +| main.rs:179:10:179:18 | source(...) | semmle.label | source(...) | +| main.rs:179:10:179:24 | ... .not() | semmle.label | ... .not() | +| main.rs:196:9:196:9 | [post] a | semmle.label | [post] a | +| main.rs:196:22:196:30 | source(...) | semmle.label | source(...) | +| main.rs:197:9:197:9 | [post] a | semmle.label | [post] a | +| main.rs:197:9:197:9 | a | semmle.label | a | +| main.rs:198:9:198:9 | a | semmle.label | a | +| main.rs:198:14:198:22 | source(...) | semmle.label | source(...) | +| main.rs:199:9:199:9 | a | semmle.label | a | +| main.rs:200:14:200:14 | a | semmle.label | a | subpaths testFailures #select | main.rs:13:10:13:14 | ... + ... | main.rs:12:13:12:22 | source(...) | main.rs:13:10:13:14 | ... + ... | $@ | main.rs:12:13:12:22 | source(...) | source(...) | +| main.rs:14:10:14:14 | ... + ... | main.rs:12:13:12:22 | source(...) | main.rs:14:10:14:14 | ... + ... | $@ | main.rs:12:13:12:22 | source(...) | source(...) | | main.rs:18:10:18:10 | b | main.rs:16:17:16:26 | source(...) | main.rs:18:10:18:10 | b | $@ | main.rs:16:17:16:26 | source(...) | source(...) | | main.rs:22:10:22:10 | c | main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | $@ | main.rs:21:10:21:19 | source(...) | source(...) | -| main.rs:27:10:27:11 | - ... | main.rs:26:13:26:22 | source(...) | main.rs:27:10:27:11 | - ... | $@ | main.rs:26:13:26:22 | source(...) | source(...) | +| main.rs:27:10:27:11 | - ... | main.rs:26:13:26:21 | source(...) | main.rs:27:10:27:11 | - ... | $@ | main.rs:26:13:26:21 | source(...) | source(...) | +| main.rs:29:10:29:19 | ! ... | main.rs:29:11:29:19 | source(...) | main.rs:29:10:29:19 | ! ... | $@ | main.rs:29:11:29:19 | source(...) | source(...) | +| main.rs:31:10:31:22 | ... - ... | main.rs:31:10:31:18 | source(...) | main.rs:31:10:31:22 | ... - ... | $@ | main.rs:31:10:31:18 | source(...) | source(...) | +| main.rs:32:10:32:25 | ... - ... | main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | $@ | main.rs:32:17:32:25 | source(...) | source(...) | +| main.rs:34:10:34:22 | ... * ... | main.rs:34:10:34:18 | source(...) | main.rs:34:10:34:22 | ... * ... | $@ | main.rs:34:10:34:18 | source(...) | source(...) | +| main.rs:35:10:35:25 | ... * ... | main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | $@ | main.rs:35:17:35:25 | source(...) | source(...) | +| main.rs:37:10:37:23 | ... << ... | main.rs:37:10:37:18 | source(...) | main.rs:37:10:37:23 | ... << ... | $@ | main.rs:37:10:37:18 | source(...) | source(...) | +| main.rs:38:10:38:26 | ... << ... | main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | $@ | main.rs:38:18:38:26 | source(...) | source(...) | +| main.rs:40:10:40:22 | ... ^ ... | main.rs:40:10:40:18 | source(...) | main.rs:40:10:40:22 | ... ^ ... | $@ | main.rs:40:10:40:18 | source(...) | source(...) | +| main.rs:41:10:41:27 | ... ^ ... | main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | $@ | main.rs:41:18:41:27 | source(...) | source(...) | | main.rs:47:10:47:17 | b as i64 | main.rs:45:13:45:22 | source(...) | main.rs:47:10:47:17 | b as i64 | $@ | main.rs:45:13:45:22 | source(...) | source(...) | | main.rs:62:14:62:19 | sliced | main.rs:60:17:60:26 | source(...) | main.rs:62:14:62:19 | sliced | $@ | main.rs:60:17:60:26 | source(...) | source(...) | | main.rs:77:14:77:19 | arr[1] | main.rs:76:19:76:28 | source(...) | main.rs:77:14:77:19 | arr[1] | $@ | main.rs:76:19:76:28 | source(...) | source(...) | @@ -124,3 +313,27 @@ testFailures | main.rs:129:14:129:66 | ... .0 | main.rs:129:15:129:29 | source_tuple(...) | main.rs:129:14:129:66 | ... .0 | $@ | main.rs:129:15:129:29 | source_tuple(...) | source_tuple(...) | | main.rs:130:14:130:68 | ... .0 | main.rs:130:15:130:29 | source_tuple(...) | main.rs:130:14:130:68 | ... .0 | $@ | main.rs:130:15:130:29 | source_tuple(...) | source_tuple(...) | | main.rs:131:14:131:68 | ... .1 | main.rs:131:15:131:29 | source_tuple(...) | main.rs:131:14:131:68 | ... .1 | $@ | main.rs:131:15:131:29 | source_tuple(...) | source_tuple(...) | +| main.rs:141:10:141:28 | ... .add(...) | main.rs:141:10:141:18 | source(...) | main.rs:141:10:141:28 | ... .add(...) | $@ | main.rs:141:10:141:18 | source(...) | source(...) | +| main.rs:143:10:143:28 | 1i64.add(...) | main.rs:143:19:143:27 | source(...) | main.rs:143:10:143:28 | 1i64.add(...) | $@ | main.rs:143:19:143:27 | source(...) | source(...) | +| main.rs:146:10:146:28 | ... .sub(...) | main.rs:146:10:146:18 | source(...) | main.rs:146:10:146:28 | ... .sub(...) | $@ | main.rs:146:10:146:18 | source(...) | source(...) | +| main.rs:148:10:148:28 | 1i64.sub(...) | main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | $@ | main.rs:148:19:148:27 | source(...) | source(...) | +| main.rs:151:10:151:28 | ... .mul(...) | main.rs:151:10:151:18 | source(...) | main.rs:151:10:151:28 | ... .mul(...) | $@ | main.rs:151:10:151:18 | source(...) | source(...) | +| main.rs:153:10:153:28 | 1i64.mul(...) | main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | $@ | main.rs:153:19:153:27 | source(...) | source(...) | +| main.rs:156:10:156:28 | ... .shl(...) | main.rs:156:10:156:18 | source(...) | main.rs:156:10:156:28 | ... .shl(...) | $@ | main.rs:156:10:156:18 | source(...) | source(...) | +| main.rs:157:10:157:25 | ... .shl(...) | main.rs:157:10:157:18 | source(...) | main.rs:157:10:157:25 | ... .shl(...) | $@ | main.rs:157:10:157:18 | source(...) | source(...) | +| main.rs:158:10:158:28 | 1i64.shl(...) | main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | $@ | main.rs:158:19:158:27 | source(...) | source(...) | +| main.rs:160:10:160:28 | ... .shr(...) | main.rs:160:10:160:18 | source(...) | main.rs:160:10:160:28 | ... .shr(...) | $@ | main.rs:160:10:160:18 | source(...) | source(...) | +| main.rs:161:10:161:25 | ... .shr(...) | main.rs:161:10:161:18 | source(...) | main.rs:161:10:161:25 | ... .shr(...) | $@ | main.rs:161:10:161:18 | source(...) | source(...) | +| main.rs:162:10:162:28 | 1i64.shr(...) | main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | $@ | main.rs:162:19:162:27 | source(...) | source(...) | +| main.rs:164:10:164:30 | ... .bitor(...) | main.rs:164:10:164:18 | source(...) | main.rs:164:10:164:30 | ... .bitor(...) | $@ | main.rs:164:10:164:18 | source(...) | source(...) | +| main.rs:166:10:166:30 | 1i64.bitor(...) | main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | $@ | main.rs:166:21:166:29 | source(...) | source(...) | +| main.rs:176:10:176:10 | a | main.rs:170:18:170:26 | source(...) | main.rs:176:10:176:10 | a | $@ | main.rs:170:18:170:26 | source(...) | source(...) | +| main.rs:176:10:176:10 | a | main.rs:171:18:171:26 | source(...) | main.rs:176:10:176:10 | a | $@ | main.rs:171:18:171:26 | source(...) | source(...) | +| main.rs:176:10:176:10 | a | main.rs:172:18:172:26 | source(...) | main.rs:176:10:176:10 | a | $@ | main.rs:172:18:172:26 | source(...) | source(...) | +| main.rs:176:10:176:10 | a | main.rs:173:18:173:26 | source(...) | main.rs:176:10:176:10 | a | $@ | main.rs:173:18:173:26 | source(...) | source(...) | +| main.rs:176:10:176:10 | a | main.rs:174:18:174:26 | source(...) | main.rs:176:10:176:10 | a | $@ | main.rs:174:18:174:26 | source(...) | source(...) | +| main.rs:176:10:176:10 | a | main.rs:175:21:175:29 | source(...) | main.rs:176:10:176:10 | a | $@ | main.rs:175:21:175:29 | source(...) | source(...) | +| main.rs:178:10:178:24 | ... .neg() | main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | $@ | main.rs:178:10:178:18 | source(...) | source(...) | +| main.rs:179:10:179:24 | ... .not() | main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | $@ | main.rs:179:10:179:18 | source(...) | source(...) | +| main.rs:200:14:200:14 | a | main.rs:196:22:196:30 | source(...) | main.rs:200:14:200:14 | a | $@ | main.rs:196:22:196:30 | source(...) | source(...) | +| main.rs:200:14:200:14 | a | main.rs:198:14:198:22 | source(...) | main.rs:200:14:200:14 | a | $@ | main.rs:198:14:198:22 | source(...) | source(...) | diff --git a/rust/ql/test/library-tests/dataflow/taint/main.rs b/rust/ql/test/library-tests/dataflow/taint/main.rs index 506c6e5eb3c0..35a6271d2f1b 100644 --- a/rust/ql/test/library-tests/dataflow/taint/main.rs +++ b/rust/ql/test/library-tests/dataflow/taint/main.rs @@ -11,7 +11,7 @@ fn sink(s: i64) { fn addition() { let a = source(42); sink(a + 1); // $ hasTaintFlow=42 - + sink(1 + a); // $ hasTaintFlow=42 let mut b = source(58); b += 2; @@ -22,24 +22,24 @@ fn addition() { sink(c); // $ hasTaintFlow=99 } -fn negation() { - let a = source(17); - sink(-a); // $ hasTaintFlow=17 -} - - - - - - - - - +fn more_ops() { + let a = source(1); + sink(-a); // $ hasTaintFlow=1 + sink(!source(2)); // $ hasTaintFlow=2 + sink(source(3) - 3); // $ hasTaintFlow=3 + sink(4i64 - source(4)); // $ hasTaintFlow=4 + sink(source(5) * 5); // $ hasTaintFlow=5 + sink(6i64 * source(6)); // $ hasTaintFlow=6 + sink(source(7) << 7); // $ hasTaintFlow=7 + sink(8i64 << source(8)); // $ hasTaintFlow=8 + sink(source(9) ^ 9); // $ hasTaintFlow=9 + sink(10i64 ^ source(10)); // $ hasTaintFlow=10 +} fn cast() { let a = source(77); @@ -135,12 +135,80 @@ mod tuples { } } +use std::ops::{Add, Sub, Mul, Shl, Shr, BitOr, AddAssign, SubAssign, MulAssign, ShlAssign, ShrAssign, BitXorAssign, Neg, Not}; + +fn std_ops() { + sink(source(1).add(2i64)); // $ hasTaintFlow=1 + sink(source(1).add(2)); // $ MISSING: hasTaintFlow=1 + sink(1i64.add(source(2))); // $ hasTaintFlow=2 + sink(1.add(source(2))); // $ MISSING: hasTaintFlow=2 + + sink(source(1).sub(2i64)); // $ hasTaintFlow=1 + sink(source(1).sub(2)); // $ MISSING: hasTaintFlow=1 + sink(1i64.sub(source(2))); // $ hasTaintFlow=2 + sink(1.sub(source(2))); // $ MISSING: hasTaintFlow=2 + + sink(source(1).mul(2i64)); // $ hasTaintFlow=1 + sink(source(1).mul(2)); // $ MISSING: hasTaintFlow=1 + sink(1i64.mul(source(2))); // $ hasTaintFlow=2 + sink(1.mul(source(2))); // $ MISSING: hasTaintFlow=2 + + sink(source(1).shl(2i64)); // $ hasTaintFlow=1 + sink(source(1).shl(2)); // $ hasTaintFlow=1 + sink(1i64.shl(source(2))); // $ hasTaintFlow=2 + + sink(source(1).shr(2i64)); // $ hasTaintFlow=1 + sink(source(1).shr(2)); // $ hasTaintFlow=1 + sink(1i64.shr(source(2))); // $ hasTaintFlow=2 + + sink(source(1).bitor(2i64)); // $ hasTaintFlow=1 + sink(source(1).bitor(2)); // $ MISSING: hasTaintFlow=1 + sink(1i64.bitor(source(2))); // $ hasTaintFlow=2 + sink(1.bitor(source(2))); // $ MISSING: hasTaintFlow=2 + + let mut a: i64 = 1; + a.add_assign(source(2)); + a.sub_assign(source(3)); + a.mul_assign(source(4)); + a.shl_assign(source(5)); + a.shr_assign(source(6)); + a.bitxor_assign(source(7)); + sink(a); // $ hasTaintFlow=2 hasTaintFlow=3 hasTaintFlow=4 hasTaintFlow=5 hasTaintFlow=6 hasTaintFlow=7 + + sink(source(1).neg()); // $ hasTaintFlow=1 + sink(source(1).not()); // $ hasTaintFlow=1 +} + +mod wrapping { + use std::num::Wrapping; + use std::ops::AddAssign; + + fn source(i: i64) -> Wrapping { + Wrapping(i) + } + + fn sink(s: Wrapping) { + println!("{}", s); + } + + pub fn wrapping() { + let mut a: Wrapping = Wrapping(1); + a.add_assign(source(2)); + a.add_assign(Wrapping(crate::source(3))); + a += source(4); + a += std::num::Wrapping(crate::source(5)); + sink(a); // $ hasTaintFlow=2 hasTaintFlow=4 MISSING: hasTaintFlow=3 hasTaintFlow=5 + } +} + fn main() { addition(); - negation(); + more_ops(); cast(); string_slice(); array_source::array_tainted(); array_sink::array_with_taint(); tuples::tuples(); + std_ops(); + wrapping::wrapping(); } From fc5d5b4fcc083a8c1836cbcc2fa41c0af6c7bb70 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Tue, 16 Dec 2025 09:44:35 +0000 Subject: [PATCH 065/433] Rust: Compress the existing core::ops::arith models a bit. --- .../rust/frameworks/stdlib/core.model.yml | 47 ++--- .../dataflow/taint/inline-taint-flow.expected | 180 +++++++++--------- 2 files changed, 101 insertions(+), 126 deletions(-) diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml b/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml index e92ae4defa34..83cf1c21c234 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml @@ -14,46 +14,33 @@ extensions: - ["<_ as core::ops::arith::Neg>::neg", "Argument[self]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::Not>::not", "Argument[self]", "ReturnValue", "taint", "manual"] # Arithmetic operators - - ["<_ as core::ops::arith::Add>::add", "Argument[self]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Add>::add", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::arith::Add>::add", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Add>::add", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Sub>::sub", "Argument[self]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Sub>::sub", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::arith::Sub>::sub", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Sub>::sub", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Mul>::mul", "Argument[self]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Mul>::mul", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::arith::Mul>::mul", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Mul>::mul", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Div>::div", "Argument[self]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Div>::div", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::arith::Div>::div", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Div>::div", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Rem>::rem", "Argument[self]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Rem>::rem", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::arith::Rem>::rem", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Rem>::rem", "Argument[0].Reference", "ReturnValue", "taint", "manual"] # Arithmetic assignment expressions - - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] # Bitwise operators - - ["<_ as core::ops::bit::BitAnd>::bitand", "Argument[self]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::BitAnd>::bitand", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::bit::BitAnd>::bitand", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::BitAnd>::bitand", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::BitOr>::bitor", "Argument[self]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::BitOr>::bitor", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::bit::BitOr>::bitor", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::BitOr>::bitor", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::BitXor>::bitxor", "Argument[self]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::BitXor>::bitxor", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::bit::BitXor>::bitxor", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::BitXor>::bitxor", "Argument[0].Reference", "ReturnValue", "taint", "manual"] # Bitwise assignment operators - ["<_ as core::ops::bit::BitAndAssign>::bitand_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] @@ -63,11 +50,9 @@ extensions: - ["<_ as core::ops::bit::BitXorAssign>::bitxor_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::BitXorAssign>::bitxor_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] # Shift operators - - ["<_ as core::ops::bit::Shl>::shl", "Argument[self]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::Shl>::shl", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::bit::Shl>::shl", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::Shl>::shl", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::Shr>::shr", "Argument[self]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::Shr>::shr", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::bit::Shr>::shr", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::Shr>::shr", "Argument[0].Reference", "ReturnValue", "taint", "manual"] # Shift assignment operators - ["<_ as core::ops::bit::ShlAssign>::shl_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] @@ -156,4 +141,4 @@ extensions: data: - ["core::ops::range::RangeInclusive::start"] - ["core::ops::range::RangeInclusive::end"] - - ["core::result::Result::Err(0)"] \ No newline at end of file + - ["core::result::Result::Err(0)"] diff --git a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected index 447f1c5f7bd1..3f538a7500ed 100644 --- a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected +++ b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected @@ -1,71 +1,61 @@ models | 1 | Summary: <_ as core::ops::arith::Add>::add; Argument[0].Reference; ReturnValue; taint | -| 2 | Summary: <_ as core::ops::arith::Add>::add; Argument[0]; ReturnValue; taint | -| 3 | Summary: <_ as core::ops::arith::Add>::add; Argument[self]; ReturnValue; taint | -| 4 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 5 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0]; Argument[self].Reference; taint | -| 6 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[self].Reference; Argument[self].Reference; taint | -| 7 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[0].Reference; ReturnValue; taint | -| 8 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[0]; ReturnValue; taint | -| 9 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self]; ReturnValue; taint | -| 10 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 11 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[0]; Argument[self].Reference; taint | -| 12 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[self].Reference; Argument[self].Reference; taint | -| 13 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self]; ReturnValue; taint | -| 14 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[0].Reference; ReturnValue; taint | -| 15 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[0]; ReturnValue; taint | -| 16 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[self]; ReturnValue; taint | -| 17 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 18 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[0]; Argument[self].Reference; taint | -| 19 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[self].Reference; Argument[self].Reference; taint | -| 20 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[0].Reference; ReturnValue; taint | -| 21 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[0]; ReturnValue; taint | -| 22 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[self]; ReturnValue; taint | -| 23 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[0].Reference; ReturnValue; taint | -| 24 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[0]; ReturnValue; taint | -| 25 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self]; ReturnValue; taint | -| 26 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 27 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0]; Argument[self].Reference; taint | -| 28 | Summary: <_ as core::ops::bit::Not>::not; Argument[self]; ReturnValue; taint | -| 29 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[0].Reference; ReturnValue; taint | -| 30 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[0]; ReturnValue; taint | -| 31 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self]; ReturnValue; taint | -| 32 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 33 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0]; Argument[self].Reference; taint | -| 34 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[0].Reference; ReturnValue; taint | -| 35 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[0]; ReturnValue; taint | -| 36 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[self]; ReturnValue; taint | -| 37 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 38 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0]; Argument[self].Reference; taint | -| 39 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | +| 2 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0]; ReturnValue; taint | +| 3 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0]; Argument[self].Reference; taint | +| 4 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[self,0].Reference; Argument[self].Reference; taint | +| 5 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[0].Reference; ReturnValue; taint | +| 6 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self,0]; ReturnValue; taint | +| 7 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[0]; Argument[self].Reference; taint | +| 8 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[self,0].Reference; Argument[self].Reference; taint | +| 9 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self]; ReturnValue; taint | +| 10 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[0].Reference; ReturnValue; taint | +| 11 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[self,0]; ReturnValue; taint | +| 12 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[0]; Argument[self].Reference; taint | +| 13 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[self,0].Reference; Argument[self].Reference; taint | +| 14 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[0].Reference; ReturnValue; taint | +| 15 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[self,0]; ReturnValue; taint | +| 16 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[0].Reference; ReturnValue; taint | +| 17 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self,0]; ReturnValue; taint | +| 18 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 19 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0]; Argument[self].Reference; taint | +| 20 | Summary: <_ as core::ops::bit::Not>::not; Argument[self]; ReturnValue; taint | +| 21 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[0].Reference; ReturnValue; taint | +| 22 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0]; ReturnValue; taint | +| 23 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 24 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0]; Argument[self].Reference; taint | +| 25 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[0].Reference; ReturnValue; taint | +| 26 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[self,0]; ReturnValue; taint | +| 27 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 28 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0]; Argument[self].Reference; taint | +| 29 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | edges | main.rs:12:9:12:9 | a | main.rs:13:10:13:10 | a | provenance | | | main.rs:12:9:12:9 | a | main.rs:14:14:14:14 | a | provenance | | | main.rs:12:13:12:22 | source(...) | main.rs:12:9:12:9 | a | provenance | | -| main.rs:13:10:13:10 | a | main.rs:13:10:13:14 | ... + ... | provenance | MaD:3 | +| main.rs:13:10:13:10 | a | main.rs:13:10:13:14 | ... + ... | provenance | MaD:2 | | main.rs:14:14:14:14 | a | main.rs:14:10:14:14 | ... + ... | provenance | MaD:1 | | main.rs:14:14:14:14 | a | main.rs:14:10:14:14 | ... + ... | provenance | MaD:2 | | main.rs:16:9:16:13 | mut b | main.rs:17:5:17:5 | b | provenance | | | main.rs:16:17:16:26 | source(...) | main.rs:16:9:16:13 | mut b | provenance | | -| main.rs:17:5:17:5 | b | main.rs:18:10:18:10 | b | provenance | MaD:6 | +| main.rs:17:5:17:5 | b | main.rs:18:10:18:10 | b | provenance | MaD:4 | +| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:3 | | main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:4 | -| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:5 | | main.rs:26:9:26:9 | a | main.rs:27:11:27:11 | a | provenance | | | main.rs:26:13:26:21 | source(...) | main.rs:26:9:26:9 | a | provenance | | -| main.rs:27:11:27:11 | a | main.rs:27:10:27:11 | - ... | provenance | MaD:13 | -| main.rs:29:11:29:19 | source(...) | main.rs:29:10:29:19 | ! ... | provenance | MaD:28 | -| main.rs:31:10:31:18 | source(...) | main.rs:31:10:31:22 | ... - ... | provenance | MaD:16 | -| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:14 | -| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:15 | -| main.rs:34:10:34:18 | source(...) | main.rs:34:10:34:22 | ... * ... | provenance | MaD:9 | -| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:7 | -| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:8 | -| main.rs:37:10:37:18 | source(...) | main.rs:37:10:37:23 | ... << ... | provenance | MaD:31 | -| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:29 | -| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:30 | -| main.rs:40:10:40:18 | source(...) | main.rs:40:10:40:22 | ... ^ ... | provenance | MaD:25 | -| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:23 | -| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:24 | +| main.rs:27:11:27:11 | a | main.rs:27:10:27:11 | - ... | provenance | MaD:9 | +| main.rs:29:11:29:19 | source(...) | main.rs:29:10:29:19 | ! ... | provenance | MaD:20 | +| main.rs:31:10:31:18 | source(...) | main.rs:31:10:31:22 | ... - ... | provenance | MaD:11 | +| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:10 | +| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:11 | +| main.rs:34:10:34:18 | source(...) | main.rs:34:10:34:22 | ... * ... | provenance | MaD:6 | +| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:5 | +| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:6 | +| main.rs:37:10:37:18 | source(...) | main.rs:37:10:37:23 | ... << ... | provenance | MaD:22 | +| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:21 | +| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:22 | +| main.rs:40:10:40:18 | source(...) | main.rs:40:10:40:22 | ... ^ ... | provenance | MaD:17 | +| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:16 | +| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:17 | | main.rs:45:9:45:9 | a | main.rs:46:9:46:9 | b | provenance | | | main.rs:45:13:45:22 | source(...) | main.rs:45:9:45:9 | a | provenance | | | main.rs:46:9:46:9 | b | main.rs:47:10:47:17 | b as i64 | provenance | | @@ -74,11 +64,11 @@ edges | main.rs:60:17:60:26 | source(...) | main.rs:60:13:60:13 | s | provenance | | | main.rs:61:13:61:18 | sliced [&ref] | main.rs:62:14:62:19 | sliced | provenance | | | main.rs:61:22:61:29 | &... [&ref] | main.rs:61:13:61:18 | sliced [&ref] | provenance | | -| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:39 | +| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:29 | | main.rs:61:23:61:29 | s[...] | main.rs:61:22:61:29 | &... [&ref] | provenance | | | main.rs:76:13:76:15 | arr | main.rs:77:14:77:16 | arr | provenance | | | main.rs:76:19:76:28 | source(...) | main.rs:76:13:76:15 | arr | provenance | | -| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:39 | +| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:29 | | main.rs:92:9:92:12 | [post] arr2 [element] | main.rs:93:14:93:17 | arr2 | provenance | | | main.rs:92:19:92:28 | source(...) | main.rs:92:9:92:12 | [post] arr2 [element] | provenance | | | main.rs:113:14:113:47 | TupleExpr [tuple.0] | main.rs:113:14:113:49 | ... .0 | provenance | | @@ -97,61 +87,61 @@ edges | main.rs:131:14:131:64 | TupleExpr [tuple.0] | main.rs:131:14:131:66 | ... .0 | provenance | | | main.rs:131:14:131:66 | ... .0 | main.rs:131:14:131:68 | ... .1 | provenance | | | main.rs:131:15:131:29 | source_tuple(...) | main.rs:131:14:131:64 | TupleExpr [tuple.0] | provenance | | -| main.rs:141:10:141:18 | source(...) | main.rs:141:10:141:28 | ... .add(...) | provenance | MaD:3 | +| main.rs:141:10:141:18 | source(...) | main.rs:141:10:141:28 | ... .add(...) | provenance | MaD:2 | | main.rs:143:19:143:27 | source(...) | main.rs:143:10:143:28 | 1i64.add(...) | provenance | MaD:1 | | main.rs:143:19:143:27 | source(...) | main.rs:143:10:143:28 | 1i64.add(...) | provenance | MaD:2 | -| main.rs:146:10:146:18 | source(...) | main.rs:146:10:146:28 | ... .sub(...) | provenance | MaD:16 | -| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:14 | -| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:15 | -| main.rs:151:10:151:18 | source(...) | main.rs:151:10:151:28 | ... .mul(...) | provenance | MaD:9 | -| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:7 | -| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:8 | -| main.rs:156:10:156:18 | source(...) | main.rs:156:10:156:28 | ... .shl(...) | provenance | MaD:31 | -| main.rs:157:10:157:18 | source(...) | main.rs:157:10:157:25 | ... .shl(...) | provenance | MaD:31 | -| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:29 | -| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:30 | -| main.rs:160:10:160:18 | source(...) | main.rs:160:10:160:28 | ... .shr(...) | provenance | MaD:36 | -| main.rs:161:10:161:18 | source(...) | main.rs:161:10:161:25 | ... .shr(...) | provenance | MaD:36 | -| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:34 | -| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:35 | -| main.rs:164:10:164:18 | source(...) | main.rs:164:10:164:30 | ... .bitor(...) | provenance | MaD:22 | -| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:20 | -| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:21 | +| main.rs:146:10:146:18 | source(...) | main.rs:146:10:146:28 | ... .sub(...) | provenance | MaD:11 | +| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:10 | +| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:11 | +| main.rs:151:10:151:18 | source(...) | main.rs:151:10:151:28 | ... .mul(...) | provenance | MaD:6 | +| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:5 | +| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:6 | +| main.rs:156:10:156:18 | source(...) | main.rs:156:10:156:28 | ... .shl(...) | provenance | MaD:22 | +| main.rs:157:10:157:18 | source(...) | main.rs:157:10:157:25 | ... .shl(...) | provenance | MaD:22 | +| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:21 | +| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:22 | +| main.rs:160:10:160:18 | source(...) | main.rs:160:10:160:28 | ... .shr(...) | provenance | MaD:26 | +| main.rs:161:10:161:18 | source(...) | main.rs:161:10:161:25 | ... .shr(...) | provenance | MaD:26 | +| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:25 | +| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:26 | +| main.rs:164:10:164:18 | source(...) | main.rs:164:10:164:30 | ... .bitor(...) | provenance | MaD:15 | +| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:14 | +| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:15 | | main.rs:170:5:170:5 | [post] a | main.rs:171:5:171:5 | a | provenance | | | main.rs:170:5:170:5 | [post] a | main.rs:172:5:172:5 | a | provenance | | | main.rs:170:5:170:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | +| main.rs:170:18:170:26 | source(...) | main.rs:170:5:170:5 | [post] a | provenance | MaD:3 | | main.rs:170:18:170:26 | source(...) | main.rs:170:5:170:5 | [post] a | provenance | MaD:4 | -| main.rs:170:18:170:26 | source(...) | main.rs:170:5:170:5 | [post] a | provenance | MaD:5 | | main.rs:171:5:171:5 | [post] a | main.rs:172:5:172:5 | a | provenance | | | main.rs:171:5:171:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:171:5:171:5 | a | main.rs:171:5:171:5 | [post] a | provenance | MaD:19 | -| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:17 | -| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:18 | +| main.rs:171:5:171:5 | a | main.rs:171:5:171:5 | [post] a | provenance | MaD:13 | +| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:12 | +| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:13 | | main.rs:172:5:172:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:172:5:172:5 | a | main.rs:172:5:172:5 | [post] a | provenance | MaD:12 | -| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:10 | -| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:11 | +| main.rs:172:5:172:5 | a | main.rs:172:5:172:5 | [post] a | provenance | MaD:8 | +| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:7 | +| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:8 | | main.rs:173:5:173:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:32 | -| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:33 | +| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:23 | +| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:24 | | main.rs:174:5:174:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:37 | -| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:38 | +| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:27 | +| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:28 | | main.rs:175:5:175:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:26 | -| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:27 | -| main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | provenance | MaD:13 | -| main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:28 | +| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:18 | +| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:19 | +| main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | provenance | MaD:9 | +| main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:20 | | main.rs:196:9:196:9 | [post] a | main.rs:197:9:197:9 | a | provenance | | | main.rs:196:9:196:9 | [post] a | main.rs:198:9:198:9 | a | provenance | | +| main.rs:196:22:196:30 | source(...) | main.rs:196:9:196:9 | [post] a | provenance | MaD:3 | | main.rs:196:22:196:30 | source(...) | main.rs:196:9:196:9 | [post] a | provenance | MaD:4 | -| main.rs:196:22:196:30 | source(...) | main.rs:196:9:196:9 | [post] a | provenance | MaD:5 | | main.rs:197:9:197:9 | [post] a | main.rs:198:9:198:9 | a | provenance | | -| main.rs:197:9:197:9 | a | main.rs:197:9:197:9 | [post] a | provenance | MaD:6 | -| main.rs:198:9:198:9 | a | main.rs:199:9:199:9 | a | provenance | MaD:6 | +| main.rs:197:9:197:9 | a | main.rs:197:9:197:9 | [post] a | provenance | MaD:4 | +| main.rs:198:9:198:9 | a | main.rs:199:9:199:9 | a | provenance | MaD:4 | +| main.rs:198:14:198:22 | source(...) | main.rs:199:9:199:9 | a | provenance | MaD:3 | | main.rs:198:14:198:22 | source(...) | main.rs:199:9:199:9 | a | provenance | MaD:4 | -| main.rs:198:14:198:22 | source(...) | main.rs:199:9:199:9 | a | provenance | MaD:5 | -| main.rs:199:9:199:9 | a | main.rs:200:14:200:14 | a | provenance | MaD:6 | +| main.rs:199:9:199:9 | a | main.rs:200:14:200:14 | a | provenance | MaD:4 | nodes | main.rs:12:9:12:9 | a | semmle.label | a | | main.rs:12:13:12:22 | source(...) | semmle.label | source(...) | From ff6e598f72dd8ea475d75eb442a6e42e456546b7 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Mon, 19 Jan 2026 16:09:20 +0000 Subject: [PATCH 066/433] Rust: Annotate failures with explanation. --- rust/ql/test/library-tests/dataflow/taint/main.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rust/ql/test/library-tests/dataflow/taint/main.rs b/rust/ql/test/library-tests/dataflow/taint/main.rs index 35a6271d2f1b..3c54d7063055 100644 --- a/rust/ql/test/library-tests/dataflow/taint/main.rs +++ b/rust/ql/test/library-tests/dataflow/taint/main.rs @@ -139,7 +139,7 @@ use std::ops::{Add, Sub, Mul, Shl, Shr, BitOr, AddAssign, SubAssign, MulAssign, fn std_ops() { sink(source(1).add(2i64)); // $ hasTaintFlow=1 - sink(source(1).add(2)); // $ MISSING: hasTaintFlow=1 + sink(source(1).add(2)); // $ MISSING: hasTaintFlow=1 --- the missing results here are due to failing to resolve targets for `add` etc where there's no explicit type sink(1i64.add(source(2))); // $ hasTaintFlow=2 sink(1.add(source(2))); // $ MISSING: hasTaintFlow=2 @@ -197,7 +197,7 @@ mod wrapping { a.add_assign(Wrapping(crate::source(3))); a += source(4); a += std::num::Wrapping(crate::source(5)); - sink(a); // $ hasTaintFlow=2 hasTaintFlow=4 MISSING: hasTaintFlow=3 hasTaintFlow=5 + sink(a); // $ hasTaintFlow=2 hasTaintFlow=4 MISSING: hasTaintFlow=3 hasTaintFlow=5 --- we don't currently find any `Call`s for `Wrapping` above } } From 75cab960e2a8b54e580da081b20bdf0b9923d4ba Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Tue, 20 Jan 2026 08:49:27 +0100 Subject: [PATCH 067/433] Rust: Make `AnyTraitFn` abstract --- rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll b/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll index e242a8877981..f879306a0019 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll @@ -144,17 +144,19 @@ class FutureTrait extends Trait { } /** A function trait `FnOnce`, `FnMut`, or `Fn`. */ -class AnyFnTrait extends Trait { +abstract private class AnyFnTraitImpl extends Trait { /** Gets the `Args` type parameter of this trait. */ TypeParam getTypeParam() { result = this.getGenericParamList().getGenericParam(0) } } +final class AnyFnTrait = AnyFnTraitImpl; + /** * The [`FnOnce` trait][1]. * * [1]: https://doc.rust-lang.org/std/ops/trait.FnOnce.html */ -class FnOnceTrait extends AnyFnTrait { +class FnOnceTrait extends AnyFnTraitImpl { pragma[nomagic] FnOnceTrait() { this.getCanonicalPath() = "core::ops::function::FnOnce" } @@ -168,7 +170,7 @@ class FnOnceTrait extends AnyFnTrait { * * [1]: https://doc.rust-lang.org/std/ops/trait.FnMut.html */ -class FnMutTrait extends AnyFnTrait { +class FnMutTrait extends AnyFnTraitImpl { pragma[nomagic] FnMutTrait() { this.getCanonicalPath() = "core::ops::function::FnMut" } } @@ -178,7 +180,7 @@ class FnMutTrait extends AnyFnTrait { * * [1]: https://doc.rust-lang.org/std/ops/trait.Fn.html */ -class FnTrait extends AnyFnTrait { +class FnTrait extends AnyFnTraitImpl { pragma[nomagic] FnTrait() { this.getCanonicalPath() = "core::ops::function::Fn" } } From 8e6f920ae2eb609500bd09aaaf25dad5241ef77a Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Tue, 20 Jan 2026 08:49:45 +0100 Subject: [PATCH 068/433] Rust: Fix naming of `mention_dyn_fn` --- rust/tools/builtins/mentions.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/tools/builtins/mentions.rs b/rust/tools/builtins/mentions.rs index 3170c1bfbdf2..11b3bda6a527 100644 --- a/rust/tools/builtins/mentions.rs +++ b/rust/tools/builtins/mentions.rs @@ -3,4 +3,4 @@ use std::future::Future; fn mention_dyn_future(f: &dyn Future) {} -fn mention_dyn_fn_once(f: &dyn Fn() -> F) {} +fn mention_dyn_fn(f: &dyn Fn() -> F) {} From dd73399238185613e6b3752dcef1db303ec50682 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Tue, 20 Jan 2026 09:57:27 +0100 Subject: [PATCH 069/433] Rust: Tweak a comment Co-authored-by: Tom Hvitved --- .../lib/codeql/rust/internal/typeinference/TypeInference.qll | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index 8759058d84cd..be102aca76dd 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -3830,8 +3830,8 @@ private Type invokedClosureFnTypeAt(InvokedClosureExpr ce, TypePath path) { * * We model closures as `dyn Fn` trait object types. A closure might implement * only `Fn`, `FnMut`, or `FnOnce`. But since `Fn` is a subtrait of the others, - * giving closures the type `dyn Fn` works well in practice—even if not entirely - * accurate. + * giving closures the type `dyn Fn` works well in practice -- even if not + * entirely accurate. */ private DynTraitType closureRootType() { result = TDynTraitType(any(FnTrait t)) // always exists because of the mention in `builtins/mentions.rs` From 8d5eb407ad6fd312fdbaf759664f175ed8ccf876 Mon Sep 17 00:00:00 2001 From: Philip Ginsbach Date: Tue, 20 Jan 2026 11:08:39 +0000 Subject: [PATCH 070/433] incorporate additional suggestions from PR review --- docs/codeql/ql-language-reference/annotations.rst | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/docs/codeql/ql-language-reference/annotations.rst b/docs/codeql/ql-language-reference/annotations.rst index 17a4c2cc76e6..4f5c2fdaa7d5 100644 --- a/docs/codeql/ql-language-reference/annotations.rst +++ b/docs/codeql/ql-language-reference/annotations.rst @@ -517,11 +517,13 @@ were a fully extracted database at the newer commit, while reusing as much cache from the base database as possible. Ideally, analysis time is proportional to the size of the diff rather than the full codebase. -To achieve this, predicates are divided into *local* and *global* categories. Local -predicates are evaluated separately on base and overlay data, with results combined at -the frontier between local and global code. Global predicates operate on the combined -data. Local predicates typically take time proportional to the diff size, while global -predicates take time proportional to the full codebase. +To achieve this, predicates are divided into *local* and *global* categories, with global +being the default. Local predicates are evaluated independently on base and overlay data, +and thus typically take time proportional to the diff size; global predicates operate on +the combined data, and thus take time proportional to the full codebase. When a global +predicate calls a local predicate, results from both the base and overlay evaluations of +the local predicate are combined, with stale base results filtered out through a process +called "discarding". Overlay evaluation is primarily used internally by GitHub Code Scanning to speed up pull request analysis. Most QL developers do not need to use these annotations directly, From d125e224ac39b4edf3b704385f8e1286773ef8d0 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 16:34:48 +0000 Subject: [PATCH 071/433] python: Add dbscheme regeneration instructions --- python/extractor/semmle/dbscheme_gen.py | 1 + 1 file changed, 1 insertion(+) diff --git a/python/extractor/semmle/dbscheme_gen.py b/python/extractor/semmle/dbscheme_gen.py index 7c3a79fc3719..cab51b9741e7 100644 --- a/python/extractor/semmle/dbscheme_gen.py +++ b/python/extractor/semmle/dbscheme_gen.py @@ -62,6 +62,7 @@ def write(nodes, out): HEADER = '''/* * This dbscheme is auto-generated by '%s'. + * Run "make dbscheme" in python/extractor/ to regenerate. * WARNING: Any modifications to this file will be lost. * Relations can be changed by modifying master.py or * by adding rules to dbscheme.template From d1175276ca1bbba7ac4df0e2889abb68975aaa5c Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 16:37:43 +0000 Subject: [PATCH 072/433] python: Use more standard shared dbscheme sections We now use the shared "Overlay support" and "Database metadata". --- python/extractor/semmle/dbscheme.template | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/python/extractor/semmle/dbscheme.template b/python/extractor/semmle/dbscheme.template index 6b320aafab6d..8c6b16d444d4 100644 --- a/python/extractor/semmle/dbscheme.template +++ b/python/extractor/semmle/dbscheme.template @@ -40,20 +40,26 @@ externalData( string value : string ref ); -/*- Overlay support -*/ +/*- Database metadata -*/ /** - * The CLI will automatically emit the tuple `databaseMetadata("isOverlay", "true")`, - * along with an `overlayChangedFiles` tuple for each new/modified/deleted file, - * when building an overlay database, and these can be used by the discard predicates. + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. */ databaseMetadata( - string metadataKey : string ref, - string value : string ref + string metadataKey: string ref, + string value: string ref ); +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ overlayChangedFiles( - string path : string ref + string path: string ref ); /*- DEPRECATED: Snapshot date -*/ From 470bc7d6da183191e251e4d36fdb41033e5af3ce Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 16:46:26 +0000 Subject: [PATCH 073/433] ruby: Make 'dbscheme' a phony target --- ruby/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/ruby/Makefile b/ruby/Makefile index ddaca6534fbd..34ae78023506 100644 --- a/ruby/Makefile +++ b/ruby/Makefile @@ -42,6 +42,7 @@ tools: $(BIN_FILES) ../target/release/%$(EXE): cd extractor && cargo build --release +.PHONY: dbscheme dbscheme: cd extractor && cargo build --release ../target/release/codeql-extractor-ruby generate --dbscheme ql/lib/ruby.dbscheme --library ql/lib/codeql/ruby/ast/internal/TreeSitter.qll From c6500e2759c003ecfdb704355034793c29b74624 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 17:17:23 +0000 Subject: [PATCH 074/433] tree-sitter: Add dbscheme regeneration instructions --- ql/extractor/src/generator.rs | 3 ++- ruby/extractor/src/generator.rs | 7 ++++++- shared/tree-sitter-extractor/src/generator/mod.rs | 6 ++++-- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/ql/extractor/src/generator.rs b/ql/extractor/src/generator.rs index 1dca6969f348..d1d5e20969c9 100644 --- a/ql/extractor/src/generator.rs +++ b/ql/extractor/src/generator.rs @@ -36,5 +36,6 @@ pub fn run(options: Options) -> std::io::Result<()> { }, ]; - generate(languages, options.dbscheme, options.library) + generate(languages, options.dbscheme, options.library, + "run 'scripts/create-extractor-pack.sh' in ql/") } diff --git a/ruby/extractor/src/generator.rs b/ruby/extractor/src/generator.rs index 00d878243aee..de1d0dbfd7e3 100644 --- a/ruby/extractor/src/generator.rs +++ b/ruby/extractor/src/generator.rs @@ -28,5 +28,10 @@ pub fn run(options: Options) -> std::io::Result<()> { }, ]; - generate(languages, options.dbscheme, options.library) + generate( + languages, + options.dbscheme, + options.library, + "run 'make dbscheme' in ql/ruby/", + ) } diff --git a/shared/tree-sitter-extractor/src/generator/mod.rs b/shared/tree-sitter-extractor/src/generator/mod.rs index c886ec98eeb7..78e9e4a0b694 100644 --- a/shared/tree-sitter-extractor/src/generator/mod.rs +++ b/shared/tree-sitter-extractor/src/generator/mod.rs @@ -17,6 +17,7 @@ pub fn generate( languages: Vec, dbscheme_path: PathBuf, ql_library_path: PathBuf, + regenerate_instructions: &str, ) -> std::io::Result<()> { let dbscheme_file = File::create(dbscheme_path).map_err(|e| { tracing::error!("Failed to create dbscheme file: {}", e); @@ -26,8 +27,9 @@ pub fn generate( writeln!( dbscheme_writer, "// CodeQL database schema for {}\n\ - // Automatically generated from the tree-sitter grammar; do not edit\n", - languages[0].name + // Automatically generated from the tree-sitter grammar; do not edit\n\ + // To regenerate, {}\n", + languages[0].name, regenerate_instructions )?; writeln!(dbscheme_writer, include_str!("prefix.dbscheme"))?; From 7d6a1f72d5ffdbc1730d20e441fc9d4f4edc28ac Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 17:21:07 +0000 Subject: [PATCH 075/433] C++: Use more standard shared dbscheme sections We now use the shared "Overlay support" and "Database metadata". --- cpp/ql/lib/semmlecode.cpp.dbscheme | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cpp/ql/lib/semmlecode.cpp.dbscheme b/cpp/ql/lib/semmlecode.cpp.dbscheme index 1402ab319d20..83100310bf73 100644 --- a/cpp/ql/lib/semmlecode.cpp.dbscheme +++ b/cpp/ql/lib/semmlecode.cpp.dbscheme @@ -2389,6 +2389,8 @@ link_parent( int link_target : @link_target ref ); +/*- Database metadata -*/ + /** * The CLI will automatically emit applicable tuples for this table, * such as `databaseMetadata("isOverlay", "true")` when building an @@ -2399,6 +2401,8 @@ databaseMetadata( string value: string ref ); +/*- Overlay support -*/ + /** * The CLI will automatically emit tuples for each new/modified/deleted file * when building an overlay database. From 4140121e968c510f94b80191f31fd518ee1c9462 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 17:22:13 +0000 Subject: [PATCH 076/433] javascript: Use more standard shared dbscheme sections We now use the shared "Overlay support" and "Database metadata". --- javascript/ql/lib/semmlecode.javascript.dbscheme | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/javascript/ql/lib/semmlecode.javascript.dbscheme b/javascript/ql/lib/semmlecode.javascript.dbscheme index 80b2bc241893..578367e82a25 100644 --- a/javascript/ql/lib/semmlecode.javascript.dbscheme +++ b/javascript/ql/lib/semmlecode.javascript.dbscheme @@ -1195,11 +1195,23 @@ configLocations( @configLocatable = @config | @configName | @configValue; /*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ databaseMetadata( string metadataKey: string ref, string value: string ref ); +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ overlayChangedFiles( string path: string ref ); From df8029ff872586d0cd951c1ae18b7f818b1c00dc Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 17:24:31 +0000 Subject: [PATCH 077/433] tree-sitter: Use more standard shared dbscheme sections We now use the shared "Overlay support" and "Database metadata". --- .../src/generator/prefix.dbscheme | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/shared/tree-sitter-extractor/src/generator/prefix.dbscheme b/shared/tree-sitter-extractor/src/generator/prefix.dbscheme index a52390bed1aa..d59777f5e3d7 100644 --- a/shared/tree-sitter-extractor/src/generator/prefix.dbscheme +++ b/shared/tree-sitter-extractor/src/generator/prefix.dbscheme @@ -106,11 +106,23 @@ yaml_locations(unique int locatable: @yaml_locatable ref, @yaml_locatable = @yaml_node | @yaml_error; /*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ databaseMetadata( string metadataKey: string ref, string value: string ref ); +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ overlayChangedFiles( string path: string ref ); From 4b9c9e7a5a731e193e0356357e7f3e94d186c5dc Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 17:25:29 +0000 Subject: [PATCH 078/433] Ruby: Regenerate dbscheme --- ruby/ql/lib/ruby.dbscheme | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/ruby/ql/lib/ruby.dbscheme b/ruby/ql/lib/ruby.dbscheme index eae6926f5000..29b7b6fc1982 100644 --- a/ruby/ql/lib/ruby.dbscheme +++ b/ruby/ql/lib/ruby.dbscheme @@ -1,5 +1,6 @@ // CodeQL database schema for Ruby // Automatically generated from the tree-sitter grammar; do not edit +// To regenerate, run 'make dbscheme' in ql/ruby/ /*- Files and folders -*/ @@ -109,11 +110,23 @@ yaml_locations(unique int locatable: @yaml_locatable ref, @yaml_locatable = @yaml_node | @yaml_error; /*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ databaseMetadata( string metadataKey: string ref, string value: string ref ); +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ overlayChangedFiles( string path: string ref ); From d2da49220b715eaf2245b697e99f03612812458e Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 17:25:52 +0000 Subject: [PATCH 079/433] python: Regenerate dbscheme --- python/ql/lib/semmlecode.python.dbscheme | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/python/ql/lib/semmlecode.python.dbscheme b/python/ql/lib/semmlecode.python.dbscheme index 8d257a4a9bc7..279cbb08d387 100644 --- a/python/ql/lib/semmlecode.python.dbscheme +++ b/python/ql/lib/semmlecode.python.dbscheme @@ -1,5 +1,6 @@ /* * This dbscheme is auto-generated by 'semmle/dbscheme_gen.py'. + * Run "make dbscheme" in python/extractor/ to regenerate. * WARNING: Any modifications to this file will be lost. * Relations can be changed by modifying master.py or * by adding rules to dbscheme.template @@ -47,20 +48,26 @@ externalData( string value : string ref ); -/*- Overlay support -*/ +/*- Database metadata -*/ /** - * The CLI will automatically emit the tuple `databaseMetadata("isOverlay", "true")`, - * along with an `overlayChangedFiles` tuple for each new/modified/deleted file, - * when building an overlay database, and these can be used by the discard predicates. + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. */ databaseMetadata( - string metadataKey : string ref, - string value : string ref + string metadataKey: string ref, + string value: string ref ); +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ overlayChangedFiles( - string path : string ref + string path: string ref ); /*- DEPRECATED: Snapshot date -*/ From fdefb4d23ad3a20077f1da00c5c4e45e8787a07d Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 17:30:51 +0000 Subject: [PATCH 080/433] ql-for-ql: Regenerate dbscheme --- ql/ql/src/ql.dbscheme | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/ql/ql/src/ql.dbscheme b/ql/ql/src/ql.dbscheme index 98faa40569ea..87c1125b41a6 100644 --- a/ql/ql/src/ql.dbscheme +++ b/ql/ql/src/ql.dbscheme @@ -1,5 +1,6 @@ // CodeQL database schema for QL // Automatically generated from the tree-sitter grammar; do not edit +// To regenerate, run 'scripts/create-extractor-pack.sh' in ql/ /*- Files and folders -*/ @@ -109,11 +110,23 @@ yaml_locations(unique int locatable: @yaml_locatable ref, @yaml_locatable = @yaml_node | @yaml_error; /*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ databaseMetadata( string metadataKey: string ref, string value: string ref ); +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ overlayChangedFiles( string path: string ref ); From a299174f4d362b6be09d17fb3898fb7c1a9e2439 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 17:33:31 +0000 Subject: [PATCH 081/433] javascript: Add up/downgrade scripts --- .../old.dbscheme | 1217 +++++++++++++++++ .../semmlecode.dbscheme | 1205 ++++++++++++++++ .../upgrade.properties | 2 + .../old.dbscheme | 1205 ++++++++++++++++ .../semmlecode.javascript.dbscheme | 1217 +++++++++++++++++ .../upgrade.properties | 2 + 6 files changed, 4848 insertions(+) create mode 100644 javascript/downgrades/578367e82a25a3e286aaf1238613db3717b67476/old.dbscheme create mode 100644 javascript/downgrades/578367e82a25a3e286aaf1238613db3717b67476/semmlecode.dbscheme create mode 100644 javascript/downgrades/578367e82a25a3e286aaf1238613db3717b67476/upgrade.properties create mode 100644 javascript/ql/lib/upgrades/80b2bc24189307c5fd178dc2da95b45bcdb117f7/old.dbscheme create mode 100644 javascript/ql/lib/upgrades/80b2bc24189307c5fd178dc2da95b45bcdb117f7/semmlecode.javascript.dbscheme create mode 100644 javascript/ql/lib/upgrades/80b2bc24189307c5fd178dc2da95b45bcdb117f7/upgrade.properties diff --git a/javascript/downgrades/578367e82a25a3e286aaf1238613db3717b67476/old.dbscheme b/javascript/downgrades/578367e82a25a3e286aaf1238613db3717b67476/old.dbscheme new file mode 100644 index 000000000000..578367e82a25 --- /dev/null +++ b/javascript/downgrades/578367e82a25a3e286aaf1238613db3717b67476/old.dbscheme @@ -0,0 +1,1217 @@ +/*** Standard fragments ***/ + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- JavaScript-specific part -*/ + +@location = @location_default + +@sourceline = @locatable; + +filetype( + int file: @file ref, + string filetype: string ref +) + +// top-level code fragments +toplevels (unique int id: @toplevel, + int kind: int ref); + +is_externs (int toplevel: @toplevel ref); + +case @toplevel.kind of + 0 = @script +| 1 = @inline_script +| 2 = @event_handler +| 3 = @javascript_url +| 4 = @template_toplevel; + +is_module (int tl: @toplevel ref); +is_nodejs (int tl: @toplevel ref); +is_es2015_module (int tl: @toplevel ref); +is_closure_module (int tl: @toplevel ref); + +@xml_node_with_code = @xmlelement | @xmlattribute | @template_placeholder_tag; +toplevel_parent_xml_node( + unique int toplevel: @toplevel ref, + int xmlnode: @xml_node_with_code ref); + +xml_element_parent_expression( + unique int xmlnode: @xmlelement ref, + int expression: @expr ref, + int index: int ref); + +// statements +#keyset[parent, idx] +stmts (unique int id: @stmt, + int kind: int ref, + int parent: @stmt_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +stmt_containers (unique int stmt: @stmt ref, + int container: @stmt_container ref); + +jump_targets (unique int jump: @stmt ref, + int target: @stmt ref); + +@stmt_parent = @stmt | @toplevel | @function_expr | @arrow_function_expr | @static_initializer; +@stmt_container = @toplevel | @function | @namespace_declaration | @external_module_declaration | @global_augmentation_declaration; + +case @stmt.kind of + 0 = @empty_stmt +| 1 = @block_stmt +| 2 = @expr_stmt +| 3 = @if_stmt +| 4 = @labeled_stmt +| 5 = @break_stmt +| 6 = @continue_stmt +| 7 = @with_stmt +| 8 = @switch_stmt +| 9 = @return_stmt +| 10 = @throw_stmt +| 11 = @try_stmt +| 12 = @while_stmt +| 13 = @do_while_stmt +| 14 = @for_stmt +| 15 = @for_in_stmt +| 16 = @debugger_stmt +| 17 = @function_decl_stmt +| 18 = @var_decl_stmt +| 19 = @case +| 20 = @catch_clause +| 21 = @for_of_stmt +| 22 = @const_decl_stmt +| 23 = @let_stmt +| 24 = @legacy_let_stmt +| 25 = @for_each_stmt +| 26 = @class_decl_stmt +| 27 = @import_declaration +| 28 = @export_all_declaration +| 29 = @export_default_declaration +| 30 = @export_named_declaration +| 31 = @namespace_declaration +| 32 = @import_equals_declaration +| 33 = @export_assign_declaration +| 34 = @interface_declaration +| 35 = @type_alias_declaration +| 36 = @enum_declaration +| 37 = @external_module_declaration +| 38 = @export_as_namespace_declaration +| 39 = @global_augmentation_declaration +| 40 = @using_decl_stmt +; + +@decl_stmt = @var_decl_stmt | @const_decl_stmt | @let_stmt | @legacy_let_stmt | @using_decl_stmt; + +@export_declaration = @export_all_declaration | @export_default_declaration | @export_named_declaration; + +@namespace_definition = @namespace_declaration | @enum_declaration; +@type_definition = @class_definition | @interface_declaration | @enum_declaration | @type_alias_declaration | @enum_member; + +is_instantiated(unique int decl: @namespace_declaration ref); + +@declarable_node = @decl_stmt | @namespace_declaration | @class_decl_stmt | @function_decl_stmt | @enum_declaration | @external_module_declaration | @global_augmentation_declaration | @field; +has_declare_keyword(unique int stmt: @declarable_node ref); + +is_for_await_of(unique int forof: @for_of_stmt ref); + +// expressions +#keyset[parent, idx] +exprs (unique int id: @expr, + int kind: int ref, + int parent: @expr_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +literals (varchar(900) value: string ref, + varchar(900) raw: string ref, + unique int expr: @expr_or_type ref); + +enclosing_stmt (unique int expr: @expr_or_type ref, + int stmt: @stmt ref); + +expr_containers (unique int expr: @expr_or_type ref, + int container: @stmt_container ref); + +array_size (unique int ae: @arraylike ref, + int sz: int ref); + +is_delegating (int yield: @yield_expr ref); + +@expr_or_stmt = @expr | @stmt; +@expr_or_type = @expr | @typeexpr; +@expr_parent = @expr_or_stmt | @property | @function_typeexpr; +@arraylike = @array_expr | @array_pattern; +@type_annotation = @typeexpr | @jsdoc_type_expr; +@node_in_stmt_container = @cfg_node | @type_annotation | @toplevel; + +case @expr.kind of + 0 = @label +| 1 = @null_literal +| 2 = @boolean_literal +| 3 = @number_literal +| 4 = @string_literal +| 5 = @regexp_literal +| 6 = @this_expr +| 7 = @array_expr +| 8 = @obj_expr +| 9 = @function_expr +| 10 = @seq_expr +| 11 = @conditional_expr +| 12 = @new_expr +| 13 = @call_expr +| 14 = @dot_expr +| 15 = @index_expr +| 16 = @neg_expr +| 17 = @plus_expr +| 18 = @log_not_expr +| 19 = @bit_not_expr +| 20 = @typeof_expr +| 21 = @void_expr +| 22 = @delete_expr +| 23 = @eq_expr +| 24 = @neq_expr +| 25 = @eqq_expr +| 26 = @neqq_expr +| 27 = @lt_expr +| 28 = @le_expr +| 29 = @gt_expr +| 30 = @ge_expr +| 31 = @lshift_expr +| 32 = @rshift_expr +| 33 = @urshift_expr +| 34 = @add_expr +| 35 = @sub_expr +| 36 = @mul_expr +| 37 = @div_expr +| 38 = @mod_expr +| 39 = @bitor_expr +| 40 = @xor_expr +| 41 = @bitand_expr +| 42 = @in_expr +| 43 = @instanceof_expr +| 44 = @logand_expr +| 45 = @logor_expr +| 47 = @assign_expr +| 48 = @assign_add_expr +| 49 = @assign_sub_expr +| 50 = @assign_mul_expr +| 51 = @assign_div_expr +| 52 = @assign_mod_expr +| 53 = @assign_lshift_expr +| 54 = @assign_rshift_expr +| 55 = @assign_urshift_expr +| 56 = @assign_or_expr +| 57 = @assign_xor_expr +| 58 = @assign_and_expr +| 59 = @preinc_expr +| 60 = @postinc_expr +| 61 = @predec_expr +| 62 = @postdec_expr +| 63 = @par_expr +| 64 = @var_declarator +| 65 = @arrow_function_expr +| 66 = @spread_element +| 67 = @array_pattern +| 68 = @object_pattern +| 69 = @yield_expr +| 70 = @tagged_template_expr +| 71 = @template_literal +| 72 = @template_element +| 73 = @array_comprehension_expr +| 74 = @generator_expr +| 75 = @for_in_comprehension_block +| 76 = @for_of_comprehension_block +| 77 = @legacy_letexpr +| 78 = @var_decl +| 79 = @proper_varaccess +| 80 = @class_expr +| 81 = @super_expr +| 82 = @newtarget_expr +| 83 = @named_import_specifier +| 84 = @import_default_specifier +| 85 = @import_namespace_specifier +| 86 = @named_export_specifier +| 87 = @exp_expr +| 88 = @assign_exp_expr +| 89 = @jsx_element +| 90 = @jsx_qualified_name +| 91 = @jsx_empty_expr +| 92 = @await_expr +| 93 = @function_sent_expr +| 94 = @decorator +| 95 = @export_default_specifier +| 96 = @export_namespace_specifier +| 97 = @bind_expr +| 98 = @external_module_reference +| 99 = @dynamic_import +| 100 = @expression_with_type_arguments +| 101 = @prefix_type_assertion +| 102 = @as_type_assertion +| 103 = @export_varaccess +| 104 = @decorator_list +| 105 = @non_null_assertion +| 106 = @bigint_literal +| 107 = @nullishcoalescing_expr +| 108 = @e4x_xml_anyname +| 109 = @e4x_xml_static_attribute_selector +| 110 = @e4x_xml_dynamic_attribute_selector +| 111 = @e4x_xml_filter_expression +| 112 = @e4x_xml_static_qualident +| 113 = @e4x_xml_dynamic_qualident +| 114 = @e4x_xml_dotdotexpr +| 115 = @import_meta_expr +| 116 = @assignlogandexpr +| 117 = @assignlogorexpr +| 118 = @assignnullishcoalescingexpr +| 119 = @template_pipe_ref +| 120 = @generated_code_expr +| 121 = @satisfies_expr +; + +@varaccess = @proper_varaccess | @export_varaccess; +@varref = @var_decl | @varaccess; + +@identifier = @label | @varref | @type_identifier; + +@literal = @null_literal | @boolean_literal | @number_literal | @string_literal | @regexp_literal | @bigint_literal; + +@propaccess = @dot_expr | @index_expr; + +@invokeexpr = @new_expr | @call_expr; + +@unaryexpr = @neg_expr | @plus_expr | @log_not_expr | @bit_not_expr | @typeof_expr | @void_expr | @delete_expr | @spread_element; + +@equality_test = @eq_expr | @neq_expr | @eqq_expr | @neqq_expr; + +@comparison = @equality_test | @lt_expr | @le_expr | @gt_expr | @ge_expr; + +@binaryexpr = @comparison | @lshift_expr | @rshift_expr | @urshift_expr | @add_expr | @sub_expr | @mul_expr | @div_expr | @mod_expr | @exp_expr | @bitor_expr | @xor_expr | @bitand_expr | @in_expr | @instanceof_expr | @logand_expr | @logor_expr | @nullishcoalescing_expr; + +@assignment = @assign_expr | @assign_add_expr | @assign_sub_expr | @assign_mul_expr | @assign_div_expr | @assign_mod_expr | @assign_exp_expr | @assign_lshift_expr | @assign_rshift_expr | @assign_urshift_expr | @assign_or_expr | @assign_xor_expr | @assign_and_expr | @assignlogandexpr | @assignlogorexpr | @assignnullishcoalescingexpr; + +@updateexpr = @preinc_expr | @postinc_expr | @predec_expr | @postdec_expr; + +@pattern = @varref | @array_pattern | @object_pattern; + +@comprehension_expr = @array_comprehension_expr | @generator_expr; + +@comprehension_block = @for_in_comprehension_block | @for_of_comprehension_block; + +@import_specifier = @named_import_specifier | @import_default_specifier | @import_namespace_specifier; + +@exportspecifier = @named_export_specifier | @export_default_specifier | @export_namespace_specifier; + +@type_keyword_operand = @import_declaration | @export_declaration | @import_specifier; + +@type_assertion = @as_type_assertion | @prefix_type_assertion; + +@class_definition = @class_decl_stmt | @class_expr; +@interface_definition = @interface_declaration | @interface_typeexpr; +@class_or_interface = @class_definition | @interface_definition; + +@lexical_decl = @var_decl | @type_decl; +@lexical_access = @varaccess | @local_type_access | @local_var_type_access | @local_namespace_access; +@lexical_ref = @lexical_decl | @lexical_access; + +@e4x_xml_attribute_selector = @e4x_xml_static_attribute_selector | @e4x_xml_dynamic_attribute_selector; +@e4x_xml_qualident = @e4x_xml_static_qualident | @e4x_xml_dynamic_qualident; + +expr_contains_template_tag_location( + int expr: @expr ref, + int location: @location ref +); + +@template_placeholder_tag_parent = @xmlelement | @xmlattribute | @file; + +template_placeholder_tag_info( + unique int node: @template_placeholder_tag, + int parentNode: @template_placeholder_tag_parent ref, + varchar(900) raw: string ref +); + +// scopes +scopes (unique int id: @scope, + int kind: int ref); + +case @scope.kind of + 0 = @global_scope +| 1 = @function_scope +| 2 = @catch_scope +| 3 = @module_scope +| 4 = @block_scope +| 5 = @for_scope +| 6 = @for_in_scope // for-of scopes work the same as for-in scopes +| 7 = @comprehension_block_scope +| 8 = @class_expr_scope +| 9 = @namespace_scope +| 10 = @class_decl_scope +| 11 = @interface_scope +| 12 = @type_alias_scope +| 13 = @mapped_type_scope +| 14 = @enum_scope +| 15 = @external_module_scope +| 16 = @conditional_type_scope; + +scopenodes (unique int node: @ast_node ref, + int scope: @scope ref); + +scopenesting (unique int inner: @scope ref, + int outer: @scope ref); + +// functions +@function = @function_decl_stmt | @function_expr | @arrow_function_expr; + +@parameterized = @function | @catch_clause; +@type_parameterized = @function | @class_or_interface | @type_alias_declaration | @mapped_typeexpr | @infer_typeexpr; + +is_generator (int fun: @function ref); +has_rest_parameter (int fun: @function ref); +is_async (int fun: @function ref); + +// variables and lexically scoped type names +#keyset[scope, name] +variables (unique int id: @variable, + varchar(900) name: string ref, + int scope: @scope ref); + +#keyset[scope, name] +local_type_names (unique int id: @local_type_name, + varchar(900) name: string ref, + int scope: @scope ref); + +#keyset[scope, name] +local_namespace_names (unique int id: @local_namespace_name, + varchar(900) name: string ref, + int scope: @scope ref); + +is_arguments_object (int id: @variable ref); + +@lexical_name = @variable | @local_type_name | @local_namespace_name; + +@bind_id = @varaccess | @local_var_type_access; +bind (unique int id: @bind_id ref, + int decl: @variable ref); + +decl (unique int id: @var_decl ref, + int decl: @variable ref); + +@typebind_id = @local_type_access | @export_varaccess; +typebind (unique int id: @typebind_id ref, + int decl: @local_type_name ref); + +@typedecl_id = @type_decl | @var_decl; +typedecl (unique int id: @typedecl_id ref, + int decl: @local_type_name ref); + +namespacedecl (unique int id: @var_decl ref, + int decl: @local_namespace_name ref); + +@namespacebind_id = @local_namespace_access | @export_varaccess; +namespacebind (unique int id: @namespacebind_id ref, + int decl: @local_namespace_name ref); + + +// properties in object literals, property patterns in object patterns, and method declarations in classes +#keyset[parent, index] +properties (unique int id: @property, + int parent: @property_parent ref, + int index: int ref, + int kind: int ref, + varchar(900) tostring: string ref); + +case @property.kind of + 0 = @value_property +| 1 = @property_getter +| 2 = @property_setter +| 3 = @jsx_attribute +| 4 = @function_call_signature +| 5 = @constructor_call_signature +| 6 = @index_signature +| 7 = @enum_member +| 8 = @proper_field +| 9 = @parameter_field +| 10 = @static_initializer +; + +@property_parent = @obj_expr | @object_pattern | @class_definition | @jsx_element | @interface_definition | @enum_declaration; +@property_accessor = @property_getter | @property_setter; +@call_signature = @function_call_signature | @constructor_call_signature; +@field = @proper_field | @parameter_field; +@field_or_vardeclarator = @field | @var_declarator; + +is_computed (int id: @property ref); +is_method (int id: @property ref); +is_static (int id: @property ref); +is_abstract_member (int id: @property ref); +is_const_enum (int id: @enum_declaration ref); +is_abstract_class (int id: @class_decl_stmt ref); + +has_public_keyword (int id: @property ref); +has_private_keyword (int id: @property ref); +has_protected_keyword (int id: @property ref); +has_readonly_keyword (int id: @property ref); +has_type_keyword (int id: @type_keyword_operand ref); +has_defer_keyword (int id: @import_declaration ref); +is_optional_member (int id: @property ref); +has_definite_assignment_assertion (int id: @field_or_vardeclarator ref); +is_optional_parameter_declaration (unique int parameter: @pattern ref); + +#keyset[constructor, param_index] +parameter_fields( + unique int field: @parameter_field ref, + int constructor: @function_expr ref, + int param_index: int ref +); + +// types +#keyset[parent, idx] +typeexprs ( + unique int id: @typeexpr, + int kind: int ref, + int parent: @typeexpr_parent ref, + int idx: int ref, + varchar(900) tostring: string ref +); + +case @typeexpr.kind of + 0 = @local_type_access +| 1 = @type_decl +| 2 = @keyword_typeexpr +| 3 = @string_literal_typeexpr +| 4 = @number_literal_typeexpr +| 5 = @boolean_literal_typeexpr +| 6 = @array_typeexpr +| 7 = @union_typeexpr +| 8 = @indexed_access_typeexpr +| 9 = @intersection_typeexpr +| 10 = @parenthesized_typeexpr +| 11 = @tuple_typeexpr +| 12 = @keyof_typeexpr +| 13 = @qualified_type_access +| 14 = @generic_typeexpr +| 15 = @type_label +| 16 = @typeof_typeexpr +| 17 = @local_var_type_access +| 18 = @qualified_var_type_access +| 19 = @this_var_type_access +| 20 = @predicate_typeexpr +| 21 = @interface_typeexpr +| 22 = @type_parameter +| 23 = @plain_function_typeexpr +| 24 = @constructor_typeexpr +| 25 = @local_namespace_access +| 26 = @qualified_namespace_access +| 27 = @mapped_typeexpr +| 28 = @conditional_typeexpr +| 29 = @infer_typeexpr +| 30 = @import_type_access +| 31 = @import_namespace_access +| 32 = @import_var_type_access +| 33 = @optional_typeexpr +| 34 = @rest_typeexpr +| 35 = @bigint_literal_typeexpr +| 36 = @readonly_typeexpr +| 37 = @template_literal_typeexpr +; + +@typeref = @typeaccess | @type_decl; +@type_identifier = @type_decl | @local_type_access | @type_label | @local_var_type_access | @local_namespace_access; +@typeexpr_parent = @expr | @stmt | @property | @typeexpr; +@literal_typeexpr = @string_literal_typeexpr | @number_literal_typeexpr | @boolean_literal_typeexpr | @bigint_literal_typeexpr; +@typeaccess = @local_type_access | @qualified_type_access | @import_type_access; +@vartypeaccess = @local_var_type_access | @qualified_var_type_access | @this_var_type_access | @import_var_type_access; +@namespace_access = @local_namespace_access | @qualified_namespace_access | @import_namespace_access; +@import_typeexpr = @import_type_access | @import_namespace_access | @import_var_type_access; + +@function_typeexpr = @plain_function_typeexpr | @constructor_typeexpr; + +// types +types ( + unique int id: @type, + int kind: int ref, + varchar(900) tostring: string ref +); + +#keyset[parent, idx] +type_child ( + int child: @type ref, + int parent: @type ref, + int idx: int ref +); + +case @type.kind of + 0 = @any_type +| 1 = @string_type +| 2 = @number_type +| 3 = @union_type +| 4 = @true_type +| 5 = @false_type +| 6 = @type_reference +| 7 = @object_type +| 8 = @canonical_type_variable_type +| 9 = @typeof_type +| 10 = @void_type +| 11 = @undefined_type +| 12 = @null_type +| 13 = @never_type +| 14 = @plain_symbol_type +| 15 = @unique_symbol_type +| 16 = @objectkeyword_type +| 17 = @intersection_type +| 18 = @tuple_type +| 19 = @lexical_type_variable_type +| 20 = @this_type +| 21 = @number_literal_type +| 22 = @string_literal_type +| 23 = @unknown_type +| 24 = @bigint_type +| 25 = @bigint_literal_type +; + +@boolean_literal_type = @true_type | @false_type; +@symbol_type = @plain_symbol_type | @unique_symbol_type; +@union_or_intersection_type = @union_type | @intersection_type; +@typevariable_type = @canonical_type_variable_type | @lexical_type_variable_type; + +has_asserts_keyword(int node: @predicate_typeexpr ref); + +@typed_ast_node = @expr | @typeexpr | @function; +ast_node_type( + unique int node: @typed_ast_node ref, + int typ: @type ref); + +declared_function_signature( + unique int node: @function ref, + int sig: @signature_type ref +); + +invoke_expr_signature( + unique int node: @invokeexpr ref, + int sig: @signature_type ref +); + +invoke_expr_overload_index( + unique int node: @invokeexpr ref, + int index: int ref +); + +symbols ( + unique int id: @symbol, + int kind: int ref, + varchar(900) name: string ref +); + +symbol_parent ( + unique int symbol: @symbol ref, + int parent: @symbol ref +); + +symbol_module ( + int symbol: @symbol ref, + varchar(900) moduleName: string ref +); + +symbol_global ( + int symbol: @symbol ref, + varchar(900) globalName: string ref +); + +case @symbol.kind of + 0 = @root_symbol +| 1 = @member_symbol +| 2 = @other_symbol +; + +@type_with_symbol = @type_reference | @typevariable_type | @typeof_type | @unique_symbol_type; +@ast_node_with_symbol = @type_definition | @namespace_definition | @toplevel | @typeaccess | @namespace_access | @var_decl | @function | @invokeexpr | @import_declaration | @external_module_reference | @external_module_declaration; + +ast_node_symbol( + unique int node: @ast_node_with_symbol ref, + int symbol: @symbol ref); + +type_symbol( + unique int typ: @type_with_symbol ref, + int symbol: @symbol ref); + +#keyset[typ, name] +type_property( + int typ: @type ref, + varchar(900) name: string ref, + int propertyType: @type ref); + +type_alias( + unique int aliasType: @type ref, + int underlyingType: @type ref); + +@literal_type = @string_literal_type | @number_literal_type | @boolean_literal_type | @bigint_literal_type; +@type_with_literal_value = @string_literal_type | @number_literal_type | @bigint_literal_type; +type_literal_value( + unique int typ: @type_with_literal_value ref, + varchar(900) value: string ref); + +signature_types ( + unique int id: @signature_type, + int kind: int ref, + varchar(900) tostring: string ref, + int type_parameters: int ref, + int required_params: int ref +); + +is_abstract_signature( + unique int sig: @signature_type ref +); + +signature_rest_parameter( + unique int sig: @signature_type ref, + int rest_param_arra_type: @type ref +); + +case @signature_type.kind of + 0 = @function_signature_type +| 1 = @constructor_signature_type +; + +#keyset[typ, kind, index] +type_contains_signature ( + int typ: @type ref, + int kind: int ref, // constructor/call/index + int index: int ref, // ordering of overloaded signatures + int sig: @signature_type ref +); + +#keyset[parent, index] +signature_contains_type ( + int child: @type ref, + int parent: @signature_type ref, + int index: int ref +); + +#keyset[sig, index] +signature_parameter_name ( + int sig: @signature_type ref, + int index: int ref, + varchar(900) name: string ref +); + +number_index_type ( + unique int baseType: @type ref, + int propertyType: @type ref +); + +string_index_type ( + unique int baseType: @type ref, + int propertyType: @type ref +); + +base_type_names( + int typeName: @symbol ref, + int baseTypeName: @symbol ref +); + +self_types( + int typeName: @symbol ref, + int selfType: @type_reference ref +); + +tuple_type_min_length( + unique int typ: @type ref, + int minLength: int ref +); + +tuple_type_rest_index( + unique int typ: @type ref, + int index: int ref +); + +// comments +comments (unique int id: @comment, + int kind: int ref, + int toplevel: @toplevel ref, + varchar(900) text: string ref, + varchar(900) tostring: string ref); + +case @comment.kind of + 0 = @slashslash_comment +| 1 = @slashstar_comment +| 2 = @doc_comment +| 3 = @html_comment_start +| 4 = @htmlcommentend; + +@html_comment = @html_comment_start | @htmlcommentend; +@line_comment = @slashslash_comment | @html_comment; +@block_comment = @slashstar_comment | @doc_comment; + +// source lines +lines (unique int id: @line, + int toplevel: @toplevel ref, + varchar(900) text: string ref, + varchar(2) terminator: string ref); +indentation (int file: @file ref, + int lineno: int ref, + varchar(1) indentChar: string ref, + int indentDepth: int ref); + +// JavaScript parse errors +js_parse_errors (unique int id: @js_parse_error, + int toplevel: @toplevel ref, + varchar(900) message: string ref, + varchar(900) line: string ref); + +// regular expressions +#keyset[parent, idx] +regexpterm (unique int id: @regexpterm, + int kind: int ref, + int parent: @regexpparent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +@regexpparent = @regexpterm | @regexp_literal | @string_literal | @add_expr; + +case @regexpterm.kind of + 0 = @regexp_alt +| 1 = @regexp_seq +| 2 = @regexp_caret +| 3 = @regexp_dollar +| 4 = @regexp_wordboundary +| 5 = @regexp_nonwordboundary +| 6 = @regexp_positive_lookahead +| 7 = @regexp_negative_lookahead +| 8 = @regexp_star +| 9 = @regexp_plus +| 10 = @regexp_opt +| 11 = @regexp_range +| 12 = @regexp_dot +| 13 = @regexp_group +| 14 = @regexp_normal_constant +| 15 = @regexp_hex_escape +| 16 = @regexp_unicode_escape +| 17 = @regexp_dec_escape +| 18 = @regexp_oct_escape +| 19 = @regexp_ctrl_escape +| 20 = @regexp_char_class_escape +| 21 = @regexp_id_escape +| 22 = @regexp_backref +| 23 = @regexp_char_class +| 24 = @regexp_char_range +| 25 = @regexp_positive_lookbehind +| 26 = @regexp_negative_lookbehind +| 27 = @regexp_unicode_property_escape +| 28 = @regexp_quoted_string +| 29 = @regexp_intersection +| 30 = @regexp_subtraction; + +regexp_parse_errors (unique int id: @regexp_parse_error, + int regexp: @regexpterm ref, + varchar(900) message: string ref); + +@regexp_quantifier = @regexp_star | @regexp_plus | @regexp_opt | @regexp_range; +@regexp_escape = @regexp_char_escape | @regexp_char_class_escape | @regexp_unicode_property_escape; +@regexp_char_escape = @regexp_hex_escape | @regexp_unicode_escape | @regexp_dec_escape | @regexp_oct_escape | @regexp_ctrl_escape | @regexp_id_escape; +@regexp_constant = @regexp_normal_constant | @regexp_char_escape; +@regexp_lookahead = @regexp_positive_lookahead | @regexp_negative_lookahead; +@regexp_lookbehind = @regexp_positive_lookbehind | @regexp_negative_lookbehind; +@regexp_subpattern = @regexp_lookahead | @regexp_lookbehind; +@regexp_anchor = @regexp_dollar | @regexp_caret; + +is_greedy (int id: @regexp_quantifier ref); +range_quantifier_lower_bound (unique int id: @regexp_range ref, int lo: int ref); +range_quantifier_upper_bound (unique int id: @regexp_range ref, int hi: int ref); +is_capture (unique int id: @regexp_group ref, int number: int ref); +is_named_capture (unique int id: @regexp_group ref, string name: string ref); +is_inverted (int id: @regexp_char_class ref); +regexp_const_value (unique int id: @regexp_constant ref, varchar(1) value: string ref); +char_class_escape (unique int id: @regexp_char_class_escape ref, varchar(1) value: string ref); +backref (unique int id: @regexp_backref ref, int value: int ref); +named_backref (unique int id: @regexp_backref ref, string name: string ref); +unicode_property_escapename (unique int id: @regexp_unicode_property_escape ref, string name: string ref); +unicode_property_escapevalue (unique int id: @regexp_unicode_property_escape ref, string value: string ref); + +// tokens +#keyset[toplevel, idx] +tokeninfo (unique int id: @token, + int kind: int ref, + int toplevel: @toplevel ref, + int idx: int ref, + varchar(900) value: string ref); + +case @token.kind of + 0 = @token_eof +| 1 = @token_null_literal +| 2 = @token_boolean_literal +| 3 = @token_numeric_literal +| 4 = @token_string_literal +| 5 = @token_regular_expression +| 6 = @token_identifier +| 7 = @token_keyword +| 8 = @token_punctuator; + +// associate comments with the token immediately following them (which may be EOF) +next_token (int comment: @comment ref, int token: @token ref); + +// JSON +#keyset[parent, idx] +json (unique int id: @json_value, + int kind: int ref, + int parent: @json_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +json_literals (varchar(900) value: string ref, + varchar(900) raw: string ref, + unique int expr: @json_value ref); + +json_properties (int obj: @json_object ref, + varchar(900) property: string ref, + int value: @json_value ref); + +json_errors (unique int id: @json_parse_error, + varchar(900) message: string ref); + +json_locations(unique int locatable: @json_locatable ref, + int location: @location_default ref); + +case @json_value.kind of + 0 = @json_null +| 1 = @json_boolean +| 2 = @json_number +| 3 = @json_string +| 4 = @json_array +| 5 = @json_object; + +@json_parent = @json_object | @json_array | @file; + +@json_locatable = @json_value | @json_parse_error; + +// locations +@ast_node = @toplevel | @stmt | @expr | @property | @typeexpr; + +@locatable = @file + | @ast_node + | @comment + | @line + | @js_parse_error | @regexp_parse_error + | @regexpterm + | @json_locatable + | @token + | @cfg_node + | @jsdoc | @jsdoc_type_expr | @jsdoc_tag + | @yaml_locatable + | @xmllocatable + | @configLocatable + | @template_placeholder_tag; + +hasLocation (unique int locatable: @locatable ref, + int location: @location ref); + +// CFG +entry_cfg_node (unique int id: @entry_node, int container: @stmt_container ref); +exit_cfg_node (unique int id: @exit_node, int container: @stmt_container ref); +guard_node (unique int id: @guard_node, int kind: int ref, int test: @expr ref); +case @guard_node.kind of + 0 = @falsy_guard +| 1 = @truthy_guard; +@condition_guard = @falsy_guard | @truthy_guard; + +@synthetic_cfg_node = @entry_node | @exit_node | @guard_node; +@cfg_node = @synthetic_cfg_node | @expr_parent; + +successor (int pred: @cfg_node ref, int succ: @cfg_node ref); + +// JSDoc comments +jsdoc (unique int id: @jsdoc, varchar(900) description: string ref, int comment: @comment ref); +#keyset[parent, idx] +jsdoc_tags (unique int id: @jsdoc_tag, varchar(900) title: string ref, + int parent: @jsdoc ref, int idx: int ref, varchar(900) tostring: string ref); +jsdoc_tag_descriptions (unique int tag: @jsdoc_tag ref, varchar(900) text: string ref); +jsdoc_tag_names (unique int tag: @jsdoc_tag ref, varchar(900) text: string ref); + +#keyset[parent, idx] +jsdoc_type_exprs (unique int id: @jsdoc_type_expr, + int kind: int ref, + int parent: @jsdoc_type_expr_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); +case @jsdoc_type_expr.kind of + 0 = @jsdoc_any_type_expr +| 1 = @jsdoc_null_type_expr +| 2 = @jsdoc_undefined_type_expr +| 3 = @jsdoc_unknown_type_expr +| 4 = @jsdoc_void_type_expr +| 5 = @jsdoc_identifier_type_expr +| 6 = @jsdoc_applied_type_expr +| 7 = @jsdoc_nullable_type_expr +| 8 = @jsdoc_non_nullable_type_expr +| 9 = @jsdoc_record_type_expr +| 10 = @jsdoc_array_type_expr +| 11 = @jsdoc_union_type_expr +| 12 = @jsdoc_function_type_expr +| 13 = @jsdoc_optional_type_expr +| 14 = @jsdoc_rest_type_expr +| 15 = @jsdoc_qualified_type_expr +; + +#keyset[id, idx] +jsdoc_record_field_name (int id: @jsdoc_record_type_expr ref, int idx: int ref, varchar(900) name: string ref); +jsdoc_prefix_qualifier (int id: @jsdoc_type_expr ref); +jsdoc_has_new_parameter (int fn: @jsdoc_function_type_expr ref); + +@jsdoc_type_expr_parent = @jsdoc_type_expr | @jsdoc_tag; + +jsdoc_errors (unique int id: @jsdoc_error, int tag: @jsdoc_tag ref, varchar(900) message: string ref, varchar(900) tostring: string ref); + +@dataflownode = @expr | @function_decl_stmt | @class_decl_stmt | @namespace_declaration | @enum_declaration | @property; + +@optionalchainable = @call_expr | @propaccess; + +isOptionalChaining(int id: @optionalchainable ref); + +/** + * The time taken for the extraction of a file. + * This table contains non-deterministic content. + * + * The sum of the `time` column for each (`file`, `timerKind`) pair + * is the total time taken for extraction of `file`. The `extractionPhase` + * column provides a granular view of the extraction time of the file. + */ +extraction_time( + int file : @file ref, + // see `com.semmle.js.extractor.ExtractionMetrics.ExtractionPhase`. + int extractionPhase: int ref, + // 0 for the elapsed CPU time in nanoseconds, 1 for the elapsed wallclock time in nanoseconds + int timerKind: int ref, + float time: float ref +) + +/** +* Non-timing related data for the extraction of a single file. +* This table contains non-deterministic content. +*/ +extraction_data( + int file : @file ref, + // the absolute path to the cache file + varchar(900) cacheFile: string ref, + boolean fromCache: boolean ref, + int length: int ref +) + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/*- Configuration files with key value pairs -*/ + +configs( + unique int id: @config +); + +configNames( + unique int id: @configName, + int config: @config ref, + string name: string ref +); + +configValues( + unique int id: @configValue, + int config: @config ref, + string value: string ref +); + +configLocations( + int locatable: @configLocatable ref, + int location: @location_default ref +); + +@configLocatable = @config | @configName | @configValue; + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); diff --git a/javascript/downgrades/578367e82a25a3e286aaf1238613db3717b67476/semmlecode.dbscheme b/javascript/downgrades/578367e82a25a3e286aaf1238613db3717b67476/semmlecode.dbscheme new file mode 100644 index 000000000000..80b2bc241893 --- /dev/null +++ b/javascript/downgrades/578367e82a25a3e286aaf1238613db3717b67476/semmlecode.dbscheme @@ -0,0 +1,1205 @@ +/*** Standard fragments ***/ + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- JavaScript-specific part -*/ + +@location = @location_default + +@sourceline = @locatable; + +filetype( + int file: @file ref, + string filetype: string ref +) + +// top-level code fragments +toplevels (unique int id: @toplevel, + int kind: int ref); + +is_externs (int toplevel: @toplevel ref); + +case @toplevel.kind of + 0 = @script +| 1 = @inline_script +| 2 = @event_handler +| 3 = @javascript_url +| 4 = @template_toplevel; + +is_module (int tl: @toplevel ref); +is_nodejs (int tl: @toplevel ref); +is_es2015_module (int tl: @toplevel ref); +is_closure_module (int tl: @toplevel ref); + +@xml_node_with_code = @xmlelement | @xmlattribute | @template_placeholder_tag; +toplevel_parent_xml_node( + unique int toplevel: @toplevel ref, + int xmlnode: @xml_node_with_code ref); + +xml_element_parent_expression( + unique int xmlnode: @xmlelement ref, + int expression: @expr ref, + int index: int ref); + +// statements +#keyset[parent, idx] +stmts (unique int id: @stmt, + int kind: int ref, + int parent: @stmt_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +stmt_containers (unique int stmt: @stmt ref, + int container: @stmt_container ref); + +jump_targets (unique int jump: @stmt ref, + int target: @stmt ref); + +@stmt_parent = @stmt | @toplevel | @function_expr | @arrow_function_expr | @static_initializer; +@stmt_container = @toplevel | @function | @namespace_declaration | @external_module_declaration | @global_augmentation_declaration; + +case @stmt.kind of + 0 = @empty_stmt +| 1 = @block_stmt +| 2 = @expr_stmt +| 3 = @if_stmt +| 4 = @labeled_stmt +| 5 = @break_stmt +| 6 = @continue_stmt +| 7 = @with_stmt +| 8 = @switch_stmt +| 9 = @return_stmt +| 10 = @throw_stmt +| 11 = @try_stmt +| 12 = @while_stmt +| 13 = @do_while_stmt +| 14 = @for_stmt +| 15 = @for_in_stmt +| 16 = @debugger_stmt +| 17 = @function_decl_stmt +| 18 = @var_decl_stmt +| 19 = @case +| 20 = @catch_clause +| 21 = @for_of_stmt +| 22 = @const_decl_stmt +| 23 = @let_stmt +| 24 = @legacy_let_stmt +| 25 = @for_each_stmt +| 26 = @class_decl_stmt +| 27 = @import_declaration +| 28 = @export_all_declaration +| 29 = @export_default_declaration +| 30 = @export_named_declaration +| 31 = @namespace_declaration +| 32 = @import_equals_declaration +| 33 = @export_assign_declaration +| 34 = @interface_declaration +| 35 = @type_alias_declaration +| 36 = @enum_declaration +| 37 = @external_module_declaration +| 38 = @export_as_namespace_declaration +| 39 = @global_augmentation_declaration +| 40 = @using_decl_stmt +; + +@decl_stmt = @var_decl_stmt | @const_decl_stmt | @let_stmt | @legacy_let_stmt | @using_decl_stmt; + +@export_declaration = @export_all_declaration | @export_default_declaration | @export_named_declaration; + +@namespace_definition = @namespace_declaration | @enum_declaration; +@type_definition = @class_definition | @interface_declaration | @enum_declaration | @type_alias_declaration | @enum_member; + +is_instantiated(unique int decl: @namespace_declaration ref); + +@declarable_node = @decl_stmt | @namespace_declaration | @class_decl_stmt | @function_decl_stmt | @enum_declaration | @external_module_declaration | @global_augmentation_declaration | @field; +has_declare_keyword(unique int stmt: @declarable_node ref); + +is_for_await_of(unique int forof: @for_of_stmt ref); + +// expressions +#keyset[parent, idx] +exprs (unique int id: @expr, + int kind: int ref, + int parent: @expr_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +literals (varchar(900) value: string ref, + varchar(900) raw: string ref, + unique int expr: @expr_or_type ref); + +enclosing_stmt (unique int expr: @expr_or_type ref, + int stmt: @stmt ref); + +expr_containers (unique int expr: @expr_or_type ref, + int container: @stmt_container ref); + +array_size (unique int ae: @arraylike ref, + int sz: int ref); + +is_delegating (int yield: @yield_expr ref); + +@expr_or_stmt = @expr | @stmt; +@expr_or_type = @expr | @typeexpr; +@expr_parent = @expr_or_stmt | @property | @function_typeexpr; +@arraylike = @array_expr | @array_pattern; +@type_annotation = @typeexpr | @jsdoc_type_expr; +@node_in_stmt_container = @cfg_node | @type_annotation | @toplevel; + +case @expr.kind of + 0 = @label +| 1 = @null_literal +| 2 = @boolean_literal +| 3 = @number_literal +| 4 = @string_literal +| 5 = @regexp_literal +| 6 = @this_expr +| 7 = @array_expr +| 8 = @obj_expr +| 9 = @function_expr +| 10 = @seq_expr +| 11 = @conditional_expr +| 12 = @new_expr +| 13 = @call_expr +| 14 = @dot_expr +| 15 = @index_expr +| 16 = @neg_expr +| 17 = @plus_expr +| 18 = @log_not_expr +| 19 = @bit_not_expr +| 20 = @typeof_expr +| 21 = @void_expr +| 22 = @delete_expr +| 23 = @eq_expr +| 24 = @neq_expr +| 25 = @eqq_expr +| 26 = @neqq_expr +| 27 = @lt_expr +| 28 = @le_expr +| 29 = @gt_expr +| 30 = @ge_expr +| 31 = @lshift_expr +| 32 = @rshift_expr +| 33 = @urshift_expr +| 34 = @add_expr +| 35 = @sub_expr +| 36 = @mul_expr +| 37 = @div_expr +| 38 = @mod_expr +| 39 = @bitor_expr +| 40 = @xor_expr +| 41 = @bitand_expr +| 42 = @in_expr +| 43 = @instanceof_expr +| 44 = @logand_expr +| 45 = @logor_expr +| 47 = @assign_expr +| 48 = @assign_add_expr +| 49 = @assign_sub_expr +| 50 = @assign_mul_expr +| 51 = @assign_div_expr +| 52 = @assign_mod_expr +| 53 = @assign_lshift_expr +| 54 = @assign_rshift_expr +| 55 = @assign_urshift_expr +| 56 = @assign_or_expr +| 57 = @assign_xor_expr +| 58 = @assign_and_expr +| 59 = @preinc_expr +| 60 = @postinc_expr +| 61 = @predec_expr +| 62 = @postdec_expr +| 63 = @par_expr +| 64 = @var_declarator +| 65 = @arrow_function_expr +| 66 = @spread_element +| 67 = @array_pattern +| 68 = @object_pattern +| 69 = @yield_expr +| 70 = @tagged_template_expr +| 71 = @template_literal +| 72 = @template_element +| 73 = @array_comprehension_expr +| 74 = @generator_expr +| 75 = @for_in_comprehension_block +| 76 = @for_of_comprehension_block +| 77 = @legacy_letexpr +| 78 = @var_decl +| 79 = @proper_varaccess +| 80 = @class_expr +| 81 = @super_expr +| 82 = @newtarget_expr +| 83 = @named_import_specifier +| 84 = @import_default_specifier +| 85 = @import_namespace_specifier +| 86 = @named_export_specifier +| 87 = @exp_expr +| 88 = @assign_exp_expr +| 89 = @jsx_element +| 90 = @jsx_qualified_name +| 91 = @jsx_empty_expr +| 92 = @await_expr +| 93 = @function_sent_expr +| 94 = @decorator +| 95 = @export_default_specifier +| 96 = @export_namespace_specifier +| 97 = @bind_expr +| 98 = @external_module_reference +| 99 = @dynamic_import +| 100 = @expression_with_type_arguments +| 101 = @prefix_type_assertion +| 102 = @as_type_assertion +| 103 = @export_varaccess +| 104 = @decorator_list +| 105 = @non_null_assertion +| 106 = @bigint_literal +| 107 = @nullishcoalescing_expr +| 108 = @e4x_xml_anyname +| 109 = @e4x_xml_static_attribute_selector +| 110 = @e4x_xml_dynamic_attribute_selector +| 111 = @e4x_xml_filter_expression +| 112 = @e4x_xml_static_qualident +| 113 = @e4x_xml_dynamic_qualident +| 114 = @e4x_xml_dotdotexpr +| 115 = @import_meta_expr +| 116 = @assignlogandexpr +| 117 = @assignlogorexpr +| 118 = @assignnullishcoalescingexpr +| 119 = @template_pipe_ref +| 120 = @generated_code_expr +| 121 = @satisfies_expr +; + +@varaccess = @proper_varaccess | @export_varaccess; +@varref = @var_decl | @varaccess; + +@identifier = @label | @varref | @type_identifier; + +@literal = @null_literal | @boolean_literal | @number_literal | @string_literal | @regexp_literal | @bigint_literal; + +@propaccess = @dot_expr | @index_expr; + +@invokeexpr = @new_expr | @call_expr; + +@unaryexpr = @neg_expr | @plus_expr | @log_not_expr | @bit_not_expr | @typeof_expr | @void_expr | @delete_expr | @spread_element; + +@equality_test = @eq_expr | @neq_expr | @eqq_expr | @neqq_expr; + +@comparison = @equality_test | @lt_expr | @le_expr | @gt_expr | @ge_expr; + +@binaryexpr = @comparison | @lshift_expr | @rshift_expr | @urshift_expr | @add_expr | @sub_expr | @mul_expr | @div_expr | @mod_expr | @exp_expr | @bitor_expr | @xor_expr | @bitand_expr | @in_expr | @instanceof_expr | @logand_expr | @logor_expr | @nullishcoalescing_expr; + +@assignment = @assign_expr | @assign_add_expr | @assign_sub_expr | @assign_mul_expr | @assign_div_expr | @assign_mod_expr | @assign_exp_expr | @assign_lshift_expr | @assign_rshift_expr | @assign_urshift_expr | @assign_or_expr | @assign_xor_expr | @assign_and_expr | @assignlogandexpr | @assignlogorexpr | @assignnullishcoalescingexpr; + +@updateexpr = @preinc_expr | @postinc_expr | @predec_expr | @postdec_expr; + +@pattern = @varref | @array_pattern | @object_pattern; + +@comprehension_expr = @array_comprehension_expr | @generator_expr; + +@comprehension_block = @for_in_comprehension_block | @for_of_comprehension_block; + +@import_specifier = @named_import_specifier | @import_default_specifier | @import_namespace_specifier; + +@exportspecifier = @named_export_specifier | @export_default_specifier | @export_namespace_specifier; + +@type_keyword_operand = @import_declaration | @export_declaration | @import_specifier; + +@type_assertion = @as_type_assertion | @prefix_type_assertion; + +@class_definition = @class_decl_stmt | @class_expr; +@interface_definition = @interface_declaration | @interface_typeexpr; +@class_or_interface = @class_definition | @interface_definition; + +@lexical_decl = @var_decl | @type_decl; +@lexical_access = @varaccess | @local_type_access | @local_var_type_access | @local_namespace_access; +@lexical_ref = @lexical_decl | @lexical_access; + +@e4x_xml_attribute_selector = @e4x_xml_static_attribute_selector | @e4x_xml_dynamic_attribute_selector; +@e4x_xml_qualident = @e4x_xml_static_qualident | @e4x_xml_dynamic_qualident; + +expr_contains_template_tag_location( + int expr: @expr ref, + int location: @location ref +); + +@template_placeholder_tag_parent = @xmlelement | @xmlattribute | @file; + +template_placeholder_tag_info( + unique int node: @template_placeholder_tag, + int parentNode: @template_placeholder_tag_parent ref, + varchar(900) raw: string ref +); + +// scopes +scopes (unique int id: @scope, + int kind: int ref); + +case @scope.kind of + 0 = @global_scope +| 1 = @function_scope +| 2 = @catch_scope +| 3 = @module_scope +| 4 = @block_scope +| 5 = @for_scope +| 6 = @for_in_scope // for-of scopes work the same as for-in scopes +| 7 = @comprehension_block_scope +| 8 = @class_expr_scope +| 9 = @namespace_scope +| 10 = @class_decl_scope +| 11 = @interface_scope +| 12 = @type_alias_scope +| 13 = @mapped_type_scope +| 14 = @enum_scope +| 15 = @external_module_scope +| 16 = @conditional_type_scope; + +scopenodes (unique int node: @ast_node ref, + int scope: @scope ref); + +scopenesting (unique int inner: @scope ref, + int outer: @scope ref); + +// functions +@function = @function_decl_stmt | @function_expr | @arrow_function_expr; + +@parameterized = @function | @catch_clause; +@type_parameterized = @function | @class_or_interface | @type_alias_declaration | @mapped_typeexpr | @infer_typeexpr; + +is_generator (int fun: @function ref); +has_rest_parameter (int fun: @function ref); +is_async (int fun: @function ref); + +// variables and lexically scoped type names +#keyset[scope, name] +variables (unique int id: @variable, + varchar(900) name: string ref, + int scope: @scope ref); + +#keyset[scope, name] +local_type_names (unique int id: @local_type_name, + varchar(900) name: string ref, + int scope: @scope ref); + +#keyset[scope, name] +local_namespace_names (unique int id: @local_namespace_name, + varchar(900) name: string ref, + int scope: @scope ref); + +is_arguments_object (int id: @variable ref); + +@lexical_name = @variable | @local_type_name | @local_namespace_name; + +@bind_id = @varaccess | @local_var_type_access; +bind (unique int id: @bind_id ref, + int decl: @variable ref); + +decl (unique int id: @var_decl ref, + int decl: @variable ref); + +@typebind_id = @local_type_access | @export_varaccess; +typebind (unique int id: @typebind_id ref, + int decl: @local_type_name ref); + +@typedecl_id = @type_decl | @var_decl; +typedecl (unique int id: @typedecl_id ref, + int decl: @local_type_name ref); + +namespacedecl (unique int id: @var_decl ref, + int decl: @local_namespace_name ref); + +@namespacebind_id = @local_namespace_access | @export_varaccess; +namespacebind (unique int id: @namespacebind_id ref, + int decl: @local_namespace_name ref); + + +// properties in object literals, property patterns in object patterns, and method declarations in classes +#keyset[parent, index] +properties (unique int id: @property, + int parent: @property_parent ref, + int index: int ref, + int kind: int ref, + varchar(900) tostring: string ref); + +case @property.kind of + 0 = @value_property +| 1 = @property_getter +| 2 = @property_setter +| 3 = @jsx_attribute +| 4 = @function_call_signature +| 5 = @constructor_call_signature +| 6 = @index_signature +| 7 = @enum_member +| 8 = @proper_field +| 9 = @parameter_field +| 10 = @static_initializer +; + +@property_parent = @obj_expr | @object_pattern | @class_definition | @jsx_element | @interface_definition | @enum_declaration; +@property_accessor = @property_getter | @property_setter; +@call_signature = @function_call_signature | @constructor_call_signature; +@field = @proper_field | @parameter_field; +@field_or_vardeclarator = @field | @var_declarator; + +is_computed (int id: @property ref); +is_method (int id: @property ref); +is_static (int id: @property ref); +is_abstract_member (int id: @property ref); +is_const_enum (int id: @enum_declaration ref); +is_abstract_class (int id: @class_decl_stmt ref); + +has_public_keyword (int id: @property ref); +has_private_keyword (int id: @property ref); +has_protected_keyword (int id: @property ref); +has_readonly_keyword (int id: @property ref); +has_type_keyword (int id: @type_keyword_operand ref); +has_defer_keyword (int id: @import_declaration ref); +is_optional_member (int id: @property ref); +has_definite_assignment_assertion (int id: @field_or_vardeclarator ref); +is_optional_parameter_declaration (unique int parameter: @pattern ref); + +#keyset[constructor, param_index] +parameter_fields( + unique int field: @parameter_field ref, + int constructor: @function_expr ref, + int param_index: int ref +); + +// types +#keyset[parent, idx] +typeexprs ( + unique int id: @typeexpr, + int kind: int ref, + int parent: @typeexpr_parent ref, + int idx: int ref, + varchar(900) tostring: string ref +); + +case @typeexpr.kind of + 0 = @local_type_access +| 1 = @type_decl +| 2 = @keyword_typeexpr +| 3 = @string_literal_typeexpr +| 4 = @number_literal_typeexpr +| 5 = @boolean_literal_typeexpr +| 6 = @array_typeexpr +| 7 = @union_typeexpr +| 8 = @indexed_access_typeexpr +| 9 = @intersection_typeexpr +| 10 = @parenthesized_typeexpr +| 11 = @tuple_typeexpr +| 12 = @keyof_typeexpr +| 13 = @qualified_type_access +| 14 = @generic_typeexpr +| 15 = @type_label +| 16 = @typeof_typeexpr +| 17 = @local_var_type_access +| 18 = @qualified_var_type_access +| 19 = @this_var_type_access +| 20 = @predicate_typeexpr +| 21 = @interface_typeexpr +| 22 = @type_parameter +| 23 = @plain_function_typeexpr +| 24 = @constructor_typeexpr +| 25 = @local_namespace_access +| 26 = @qualified_namespace_access +| 27 = @mapped_typeexpr +| 28 = @conditional_typeexpr +| 29 = @infer_typeexpr +| 30 = @import_type_access +| 31 = @import_namespace_access +| 32 = @import_var_type_access +| 33 = @optional_typeexpr +| 34 = @rest_typeexpr +| 35 = @bigint_literal_typeexpr +| 36 = @readonly_typeexpr +| 37 = @template_literal_typeexpr +; + +@typeref = @typeaccess | @type_decl; +@type_identifier = @type_decl | @local_type_access | @type_label | @local_var_type_access | @local_namespace_access; +@typeexpr_parent = @expr | @stmt | @property | @typeexpr; +@literal_typeexpr = @string_literal_typeexpr | @number_literal_typeexpr | @boolean_literal_typeexpr | @bigint_literal_typeexpr; +@typeaccess = @local_type_access | @qualified_type_access | @import_type_access; +@vartypeaccess = @local_var_type_access | @qualified_var_type_access | @this_var_type_access | @import_var_type_access; +@namespace_access = @local_namespace_access | @qualified_namespace_access | @import_namespace_access; +@import_typeexpr = @import_type_access | @import_namespace_access | @import_var_type_access; + +@function_typeexpr = @plain_function_typeexpr | @constructor_typeexpr; + +// types +types ( + unique int id: @type, + int kind: int ref, + varchar(900) tostring: string ref +); + +#keyset[parent, idx] +type_child ( + int child: @type ref, + int parent: @type ref, + int idx: int ref +); + +case @type.kind of + 0 = @any_type +| 1 = @string_type +| 2 = @number_type +| 3 = @union_type +| 4 = @true_type +| 5 = @false_type +| 6 = @type_reference +| 7 = @object_type +| 8 = @canonical_type_variable_type +| 9 = @typeof_type +| 10 = @void_type +| 11 = @undefined_type +| 12 = @null_type +| 13 = @never_type +| 14 = @plain_symbol_type +| 15 = @unique_symbol_type +| 16 = @objectkeyword_type +| 17 = @intersection_type +| 18 = @tuple_type +| 19 = @lexical_type_variable_type +| 20 = @this_type +| 21 = @number_literal_type +| 22 = @string_literal_type +| 23 = @unknown_type +| 24 = @bigint_type +| 25 = @bigint_literal_type +; + +@boolean_literal_type = @true_type | @false_type; +@symbol_type = @plain_symbol_type | @unique_symbol_type; +@union_or_intersection_type = @union_type | @intersection_type; +@typevariable_type = @canonical_type_variable_type | @lexical_type_variable_type; + +has_asserts_keyword(int node: @predicate_typeexpr ref); + +@typed_ast_node = @expr | @typeexpr | @function; +ast_node_type( + unique int node: @typed_ast_node ref, + int typ: @type ref); + +declared_function_signature( + unique int node: @function ref, + int sig: @signature_type ref +); + +invoke_expr_signature( + unique int node: @invokeexpr ref, + int sig: @signature_type ref +); + +invoke_expr_overload_index( + unique int node: @invokeexpr ref, + int index: int ref +); + +symbols ( + unique int id: @symbol, + int kind: int ref, + varchar(900) name: string ref +); + +symbol_parent ( + unique int symbol: @symbol ref, + int parent: @symbol ref +); + +symbol_module ( + int symbol: @symbol ref, + varchar(900) moduleName: string ref +); + +symbol_global ( + int symbol: @symbol ref, + varchar(900) globalName: string ref +); + +case @symbol.kind of + 0 = @root_symbol +| 1 = @member_symbol +| 2 = @other_symbol +; + +@type_with_symbol = @type_reference | @typevariable_type | @typeof_type | @unique_symbol_type; +@ast_node_with_symbol = @type_definition | @namespace_definition | @toplevel | @typeaccess | @namespace_access | @var_decl | @function | @invokeexpr | @import_declaration | @external_module_reference | @external_module_declaration; + +ast_node_symbol( + unique int node: @ast_node_with_symbol ref, + int symbol: @symbol ref); + +type_symbol( + unique int typ: @type_with_symbol ref, + int symbol: @symbol ref); + +#keyset[typ, name] +type_property( + int typ: @type ref, + varchar(900) name: string ref, + int propertyType: @type ref); + +type_alias( + unique int aliasType: @type ref, + int underlyingType: @type ref); + +@literal_type = @string_literal_type | @number_literal_type | @boolean_literal_type | @bigint_literal_type; +@type_with_literal_value = @string_literal_type | @number_literal_type | @bigint_literal_type; +type_literal_value( + unique int typ: @type_with_literal_value ref, + varchar(900) value: string ref); + +signature_types ( + unique int id: @signature_type, + int kind: int ref, + varchar(900) tostring: string ref, + int type_parameters: int ref, + int required_params: int ref +); + +is_abstract_signature( + unique int sig: @signature_type ref +); + +signature_rest_parameter( + unique int sig: @signature_type ref, + int rest_param_arra_type: @type ref +); + +case @signature_type.kind of + 0 = @function_signature_type +| 1 = @constructor_signature_type +; + +#keyset[typ, kind, index] +type_contains_signature ( + int typ: @type ref, + int kind: int ref, // constructor/call/index + int index: int ref, // ordering of overloaded signatures + int sig: @signature_type ref +); + +#keyset[parent, index] +signature_contains_type ( + int child: @type ref, + int parent: @signature_type ref, + int index: int ref +); + +#keyset[sig, index] +signature_parameter_name ( + int sig: @signature_type ref, + int index: int ref, + varchar(900) name: string ref +); + +number_index_type ( + unique int baseType: @type ref, + int propertyType: @type ref +); + +string_index_type ( + unique int baseType: @type ref, + int propertyType: @type ref +); + +base_type_names( + int typeName: @symbol ref, + int baseTypeName: @symbol ref +); + +self_types( + int typeName: @symbol ref, + int selfType: @type_reference ref +); + +tuple_type_min_length( + unique int typ: @type ref, + int minLength: int ref +); + +tuple_type_rest_index( + unique int typ: @type ref, + int index: int ref +); + +// comments +comments (unique int id: @comment, + int kind: int ref, + int toplevel: @toplevel ref, + varchar(900) text: string ref, + varchar(900) tostring: string ref); + +case @comment.kind of + 0 = @slashslash_comment +| 1 = @slashstar_comment +| 2 = @doc_comment +| 3 = @html_comment_start +| 4 = @htmlcommentend; + +@html_comment = @html_comment_start | @htmlcommentend; +@line_comment = @slashslash_comment | @html_comment; +@block_comment = @slashstar_comment | @doc_comment; + +// source lines +lines (unique int id: @line, + int toplevel: @toplevel ref, + varchar(900) text: string ref, + varchar(2) terminator: string ref); +indentation (int file: @file ref, + int lineno: int ref, + varchar(1) indentChar: string ref, + int indentDepth: int ref); + +// JavaScript parse errors +js_parse_errors (unique int id: @js_parse_error, + int toplevel: @toplevel ref, + varchar(900) message: string ref, + varchar(900) line: string ref); + +// regular expressions +#keyset[parent, idx] +regexpterm (unique int id: @regexpterm, + int kind: int ref, + int parent: @regexpparent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +@regexpparent = @regexpterm | @regexp_literal | @string_literal | @add_expr; + +case @regexpterm.kind of + 0 = @regexp_alt +| 1 = @regexp_seq +| 2 = @regexp_caret +| 3 = @regexp_dollar +| 4 = @regexp_wordboundary +| 5 = @regexp_nonwordboundary +| 6 = @regexp_positive_lookahead +| 7 = @regexp_negative_lookahead +| 8 = @regexp_star +| 9 = @regexp_plus +| 10 = @regexp_opt +| 11 = @regexp_range +| 12 = @regexp_dot +| 13 = @regexp_group +| 14 = @regexp_normal_constant +| 15 = @regexp_hex_escape +| 16 = @regexp_unicode_escape +| 17 = @regexp_dec_escape +| 18 = @regexp_oct_escape +| 19 = @regexp_ctrl_escape +| 20 = @regexp_char_class_escape +| 21 = @regexp_id_escape +| 22 = @regexp_backref +| 23 = @regexp_char_class +| 24 = @regexp_char_range +| 25 = @regexp_positive_lookbehind +| 26 = @regexp_negative_lookbehind +| 27 = @regexp_unicode_property_escape +| 28 = @regexp_quoted_string +| 29 = @regexp_intersection +| 30 = @regexp_subtraction; + +regexp_parse_errors (unique int id: @regexp_parse_error, + int regexp: @regexpterm ref, + varchar(900) message: string ref); + +@regexp_quantifier = @regexp_star | @regexp_plus | @regexp_opt | @regexp_range; +@regexp_escape = @regexp_char_escape | @regexp_char_class_escape | @regexp_unicode_property_escape; +@regexp_char_escape = @regexp_hex_escape | @regexp_unicode_escape | @regexp_dec_escape | @regexp_oct_escape | @regexp_ctrl_escape | @regexp_id_escape; +@regexp_constant = @regexp_normal_constant | @regexp_char_escape; +@regexp_lookahead = @regexp_positive_lookahead | @regexp_negative_lookahead; +@regexp_lookbehind = @regexp_positive_lookbehind | @regexp_negative_lookbehind; +@regexp_subpattern = @regexp_lookahead | @regexp_lookbehind; +@regexp_anchor = @regexp_dollar | @regexp_caret; + +is_greedy (int id: @regexp_quantifier ref); +range_quantifier_lower_bound (unique int id: @regexp_range ref, int lo: int ref); +range_quantifier_upper_bound (unique int id: @regexp_range ref, int hi: int ref); +is_capture (unique int id: @regexp_group ref, int number: int ref); +is_named_capture (unique int id: @regexp_group ref, string name: string ref); +is_inverted (int id: @regexp_char_class ref); +regexp_const_value (unique int id: @regexp_constant ref, varchar(1) value: string ref); +char_class_escape (unique int id: @regexp_char_class_escape ref, varchar(1) value: string ref); +backref (unique int id: @regexp_backref ref, int value: int ref); +named_backref (unique int id: @regexp_backref ref, string name: string ref); +unicode_property_escapename (unique int id: @regexp_unicode_property_escape ref, string name: string ref); +unicode_property_escapevalue (unique int id: @regexp_unicode_property_escape ref, string value: string ref); + +// tokens +#keyset[toplevel, idx] +tokeninfo (unique int id: @token, + int kind: int ref, + int toplevel: @toplevel ref, + int idx: int ref, + varchar(900) value: string ref); + +case @token.kind of + 0 = @token_eof +| 1 = @token_null_literal +| 2 = @token_boolean_literal +| 3 = @token_numeric_literal +| 4 = @token_string_literal +| 5 = @token_regular_expression +| 6 = @token_identifier +| 7 = @token_keyword +| 8 = @token_punctuator; + +// associate comments with the token immediately following them (which may be EOF) +next_token (int comment: @comment ref, int token: @token ref); + +// JSON +#keyset[parent, idx] +json (unique int id: @json_value, + int kind: int ref, + int parent: @json_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +json_literals (varchar(900) value: string ref, + varchar(900) raw: string ref, + unique int expr: @json_value ref); + +json_properties (int obj: @json_object ref, + varchar(900) property: string ref, + int value: @json_value ref); + +json_errors (unique int id: @json_parse_error, + varchar(900) message: string ref); + +json_locations(unique int locatable: @json_locatable ref, + int location: @location_default ref); + +case @json_value.kind of + 0 = @json_null +| 1 = @json_boolean +| 2 = @json_number +| 3 = @json_string +| 4 = @json_array +| 5 = @json_object; + +@json_parent = @json_object | @json_array | @file; + +@json_locatable = @json_value | @json_parse_error; + +// locations +@ast_node = @toplevel | @stmt | @expr | @property | @typeexpr; + +@locatable = @file + | @ast_node + | @comment + | @line + | @js_parse_error | @regexp_parse_error + | @regexpterm + | @json_locatable + | @token + | @cfg_node + | @jsdoc | @jsdoc_type_expr | @jsdoc_tag + | @yaml_locatable + | @xmllocatable + | @configLocatable + | @template_placeholder_tag; + +hasLocation (unique int locatable: @locatable ref, + int location: @location ref); + +// CFG +entry_cfg_node (unique int id: @entry_node, int container: @stmt_container ref); +exit_cfg_node (unique int id: @exit_node, int container: @stmt_container ref); +guard_node (unique int id: @guard_node, int kind: int ref, int test: @expr ref); +case @guard_node.kind of + 0 = @falsy_guard +| 1 = @truthy_guard; +@condition_guard = @falsy_guard | @truthy_guard; + +@synthetic_cfg_node = @entry_node | @exit_node | @guard_node; +@cfg_node = @synthetic_cfg_node | @expr_parent; + +successor (int pred: @cfg_node ref, int succ: @cfg_node ref); + +// JSDoc comments +jsdoc (unique int id: @jsdoc, varchar(900) description: string ref, int comment: @comment ref); +#keyset[parent, idx] +jsdoc_tags (unique int id: @jsdoc_tag, varchar(900) title: string ref, + int parent: @jsdoc ref, int idx: int ref, varchar(900) tostring: string ref); +jsdoc_tag_descriptions (unique int tag: @jsdoc_tag ref, varchar(900) text: string ref); +jsdoc_tag_names (unique int tag: @jsdoc_tag ref, varchar(900) text: string ref); + +#keyset[parent, idx] +jsdoc_type_exprs (unique int id: @jsdoc_type_expr, + int kind: int ref, + int parent: @jsdoc_type_expr_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); +case @jsdoc_type_expr.kind of + 0 = @jsdoc_any_type_expr +| 1 = @jsdoc_null_type_expr +| 2 = @jsdoc_undefined_type_expr +| 3 = @jsdoc_unknown_type_expr +| 4 = @jsdoc_void_type_expr +| 5 = @jsdoc_identifier_type_expr +| 6 = @jsdoc_applied_type_expr +| 7 = @jsdoc_nullable_type_expr +| 8 = @jsdoc_non_nullable_type_expr +| 9 = @jsdoc_record_type_expr +| 10 = @jsdoc_array_type_expr +| 11 = @jsdoc_union_type_expr +| 12 = @jsdoc_function_type_expr +| 13 = @jsdoc_optional_type_expr +| 14 = @jsdoc_rest_type_expr +| 15 = @jsdoc_qualified_type_expr +; + +#keyset[id, idx] +jsdoc_record_field_name (int id: @jsdoc_record_type_expr ref, int idx: int ref, varchar(900) name: string ref); +jsdoc_prefix_qualifier (int id: @jsdoc_type_expr ref); +jsdoc_has_new_parameter (int fn: @jsdoc_function_type_expr ref); + +@jsdoc_type_expr_parent = @jsdoc_type_expr | @jsdoc_tag; + +jsdoc_errors (unique int id: @jsdoc_error, int tag: @jsdoc_tag ref, varchar(900) message: string ref, varchar(900) tostring: string ref); + +@dataflownode = @expr | @function_decl_stmt | @class_decl_stmt | @namespace_declaration | @enum_declaration | @property; + +@optionalchainable = @call_expr | @propaccess; + +isOptionalChaining(int id: @optionalchainable ref); + +/** + * The time taken for the extraction of a file. + * This table contains non-deterministic content. + * + * The sum of the `time` column for each (`file`, `timerKind`) pair + * is the total time taken for extraction of `file`. The `extractionPhase` + * column provides a granular view of the extraction time of the file. + */ +extraction_time( + int file : @file ref, + // see `com.semmle.js.extractor.ExtractionMetrics.ExtractionPhase`. + int extractionPhase: int ref, + // 0 for the elapsed CPU time in nanoseconds, 1 for the elapsed wallclock time in nanoseconds + int timerKind: int ref, + float time: float ref +) + +/** +* Non-timing related data for the extraction of a single file. +* This table contains non-deterministic content. +*/ +extraction_data( + int file : @file ref, + // the absolute path to the cache file + varchar(900) cacheFile: string ref, + boolean fromCache: boolean ref, + int length: int ref +) + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/*- Configuration files with key value pairs -*/ + +configs( + unique int id: @config +); + +configNames( + unique int id: @configName, + int config: @config ref, + string name: string ref +); + +configValues( + unique int id: @configValue, + int config: @config ref, + string value: string ref +); + +configLocations( + int locatable: @configLocatable ref, + int location: @location_default ref +); + +@configLocatable = @config | @configName | @configValue; + +/*- Database metadata -*/ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +overlayChangedFiles( + string path: string ref +); diff --git a/javascript/downgrades/578367e82a25a3e286aaf1238613db3717b67476/upgrade.properties b/javascript/downgrades/578367e82a25a3e286aaf1238613db3717b67476/upgrade.properties new file mode 100644 index 000000000000..00fae2d3bc61 --- /dev/null +++ b/javascript/downgrades/578367e82a25a3e286aaf1238613db3717b67476/upgrade.properties @@ -0,0 +1,2 @@ +description: Sections for databaseMetadata and overlayChangedFiles +compatibility: full diff --git a/javascript/ql/lib/upgrades/80b2bc24189307c5fd178dc2da95b45bcdb117f7/old.dbscheme b/javascript/ql/lib/upgrades/80b2bc24189307c5fd178dc2da95b45bcdb117f7/old.dbscheme new file mode 100644 index 000000000000..80b2bc241893 --- /dev/null +++ b/javascript/ql/lib/upgrades/80b2bc24189307c5fd178dc2da95b45bcdb117f7/old.dbscheme @@ -0,0 +1,1205 @@ +/*** Standard fragments ***/ + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- JavaScript-specific part -*/ + +@location = @location_default + +@sourceline = @locatable; + +filetype( + int file: @file ref, + string filetype: string ref +) + +// top-level code fragments +toplevels (unique int id: @toplevel, + int kind: int ref); + +is_externs (int toplevel: @toplevel ref); + +case @toplevel.kind of + 0 = @script +| 1 = @inline_script +| 2 = @event_handler +| 3 = @javascript_url +| 4 = @template_toplevel; + +is_module (int tl: @toplevel ref); +is_nodejs (int tl: @toplevel ref); +is_es2015_module (int tl: @toplevel ref); +is_closure_module (int tl: @toplevel ref); + +@xml_node_with_code = @xmlelement | @xmlattribute | @template_placeholder_tag; +toplevel_parent_xml_node( + unique int toplevel: @toplevel ref, + int xmlnode: @xml_node_with_code ref); + +xml_element_parent_expression( + unique int xmlnode: @xmlelement ref, + int expression: @expr ref, + int index: int ref); + +// statements +#keyset[parent, idx] +stmts (unique int id: @stmt, + int kind: int ref, + int parent: @stmt_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +stmt_containers (unique int stmt: @stmt ref, + int container: @stmt_container ref); + +jump_targets (unique int jump: @stmt ref, + int target: @stmt ref); + +@stmt_parent = @stmt | @toplevel | @function_expr | @arrow_function_expr | @static_initializer; +@stmt_container = @toplevel | @function | @namespace_declaration | @external_module_declaration | @global_augmentation_declaration; + +case @stmt.kind of + 0 = @empty_stmt +| 1 = @block_stmt +| 2 = @expr_stmt +| 3 = @if_stmt +| 4 = @labeled_stmt +| 5 = @break_stmt +| 6 = @continue_stmt +| 7 = @with_stmt +| 8 = @switch_stmt +| 9 = @return_stmt +| 10 = @throw_stmt +| 11 = @try_stmt +| 12 = @while_stmt +| 13 = @do_while_stmt +| 14 = @for_stmt +| 15 = @for_in_stmt +| 16 = @debugger_stmt +| 17 = @function_decl_stmt +| 18 = @var_decl_stmt +| 19 = @case +| 20 = @catch_clause +| 21 = @for_of_stmt +| 22 = @const_decl_stmt +| 23 = @let_stmt +| 24 = @legacy_let_stmt +| 25 = @for_each_stmt +| 26 = @class_decl_stmt +| 27 = @import_declaration +| 28 = @export_all_declaration +| 29 = @export_default_declaration +| 30 = @export_named_declaration +| 31 = @namespace_declaration +| 32 = @import_equals_declaration +| 33 = @export_assign_declaration +| 34 = @interface_declaration +| 35 = @type_alias_declaration +| 36 = @enum_declaration +| 37 = @external_module_declaration +| 38 = @export_as_namespace_declaration +| 39 = @global_augmentation_declaration +| 40 = @using_decl_stmt +; + +@decl_stmt = @var_decl_stmt | @const_decl_stmt | @let_stmt | @legacy_let_stmt | @using_decl_stmt; + +@export_declaration = @export_all_declaration | @export_default_declaration | @export_named_declaration; + +@namespace_definition = @namespace_declaration | @enum_declaration; +@type_definition = @class_definition | @interface_declaration | @enum_declaration | @type_alias_declaration | @enum_member; + +is_instantiated(unique int decl: @namespace_declaration ref); + +@declarable_node = @decl_stmt | @namespace_declaration | @class_decl_stmt | @function_decl_stmt | @enum_declaration | @external_module_declaration | @global_augmentation_declaration | @field; +has_declare_keyword(unique int stmt: @declarable_node ref); + +is_for_await_of(unique int forof: @for_of_stmt ref); + +// expressions +#keyset[parent, idx] +exprs (unique int id: @expr, + int kind: int ref, + int parent: @expr_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +literals (varchar(900) value: string ref, + varchar(900) raw: string ref, + unique int expr: @expr_or_type ref); + +enclosing_stmt (unique int expr: @expr_or_type ref, + int stmt: @stmt ref); + +expr_containers (unique int expr: @expr_or_type ref, + int container: @stmt_container ref); + +array_size (unique int ae: @arraylike ref, + int sz: int ref); + +is_delegating (int yield: @yield_expr ref); + +@expr_or_stmt = @expr | @stmt; +@expr_or_type = @expr | @typeexpr; +@expr_parent = @expr_or_stmt | @property | @function_typeexpr; +@arraylike = @array_expr | @array_pattern; +@type_annotation = @typeexpr | @jsdoc_type_expr; +@node_in_stmt_container = @cfg_node | @type_annotation | @toplevel; + +case @expr.kind of + 0 = @label +| 1 = @null_literal +| 2 = @boolean_literal +| 3 = @number_literal +| 4 = @string_literal +| 5 = @regexp_literal +| 6 = @this_expr +| 7 = @array_expr +| 8 = @obj_expr +| 9 = @function_expr +| 10 = @seq_expr +| 11 = @conditional_expr +| 12 = @new_expr +| 13 = @call_expr +| 14 = @dot_expr +| 15 = @index_expr +| 16 = @neg_expr +| 17 = @plus_expr +| 18 = @log_not_expr +| 19 = @bit_not_expr +| 20 = @typeof_expr +| 21 = @void_expr +| 22 = @delete_expr +| 23 = @eq_expr +| 24 = @neq_expr +| 25 = @eqq_expr +| 26 = @neqq_expr +| 27 = @lt_expr +| 28 = @le_expr +| 29 = @gt_expr +| 30 = @ge_expr +| 31 = @lshift_expr +| 32 = @rshift_expr +| 33 = @urshift_expr +| 34 = @add_expr +| 35 = @sub_expr +| 36 = @mul_expr +| 37 = @div_expr +| 38 = @mod_expr +| 39 = @bitor_expr +| 40 = @xor_expr +| 41 = @bitand_expr +| 42 = @in_expr +| 43 = @instanceof_expr +| 44 = @logand_expr +| 45 = @logor_expr +| 47 = @assign_expr +| 48 = @assign_add_expr +| 49 = @assign_sub_expr +| 50 = @assign_mul_expr +| 51 = @assign_div_expr +| 52 = @assign_mod_expr +| 53 = @assign_lshift_expr +| 54 = @assign_rshift_expr +| 55 = @assign_urshift_expr +| 56 = @assign_or_expr +| 57 = @assign_xor_expr +| 58 = @assign_and_expr +| 59 = @preinc_expr +| 60 = @postinc_expr +| 61 = @predec_expr +| 62 = @postdec_expr +| 63 = @par_expr +| 64 = @var_declarator +| 65 = @arrow_function_expr +| 66 = @spread_element +| 67 = @array_pattern +| 68 = @object_pattern +| 69 = @yield_expr +| 70 = @tagged_template_expr +| 71 = @template_literal +| 72 = @template_element +| 73 = @array_comprehension_expr +| 74 = @generator_expr +| 75 = @for_in_comprehension_block +| 76 = @for_of_comprehension_block +| 77 = @legacy_letexpr +| 78 = @var_decl +| 79 = @proper_varaccess +| 80 = @class_expr +| 81 = @super_expr +| 82 = @newtarget_expr +| 83 = @named_import_specifier +| 84 = @import_default_specifier +| 85 = @import_namespace_specifier +| 86 = @named_export_specifier +| 87 = @exp_expr +| 88 = @assign_exp_expr +| 89 = @jsx_element +| 90 = @jsx_qualified_name +| 91 = @jsx_empty_expr +| 92 = @await_expr +| 93 = @function_sent_expr +| 94 = @decorator +| 95 = @export_default_specifier +| 96 = @export_namespace_specifier +| 97 = @bind_expr +| 98 = @external_module_reference +| 99 = @dynamic_import +| 100 = @expression_with_type_arguments +| 101 = @prefix_type_assertion +| 102 = @as_type_assertion +| 103 = @export_varaccess +| 104 = @decorator_list +| 105 = @non_null_assertion +| 106 = @bigint_literal +| 107 = @nullishcoalescing_expr +| 108 = @e4x_xml_anyname +| 109 = @e4x_xml_static_attribute_selector +| 110 = @e4x_xml_dynamic_attribute_selector +| 111 = @e4x_xml_filter_expression +| 112 = @e4x_xml_static_qualident +| 113 = @e4x_xml_dynamic_qualident +| 114 = @e4x_xml_dotdotexpr +| 115 = @import_meta_expr +| 116 = @assignlogandexpr +| 117 = @assignlogorexpr +| 118 = @assignnullishcoalescingexpr +| 119 = @template_pipe_ref +| 120 = @generated_code_expr +| 121 = @satisfies_expr +; + +@varaccess = @proper_varaccess | @export_varaccess; +@varref = @var_decl | @varaccess; + +@identifier = @label | @varref | @type_identifier; + +@literal = @null_literal | @boolean_literal | @number_literal | @string_literal | @regexp_literal | @bigint_literal; + +@propaccess = @dot_expr | @index_expr; + +@invokeexpr = @new_expr | @call_expr; + +@unaryexpr = @neg_expr | @plus_expr | @log_not_expr | @bit_not_expr | @typeof_expr | @void_expr | @delete_expr | @spread_element; + +@equality_test = @eq_expr | @neq_expr | @eqq_expr | @neqq_expr; + +@comparison = @equality_test | @lt_expr | @le_expr | @gt_expr | @ge_expr; + +@binaryexpr = @comparison | @lshift_expr | @rshift_expr | @urshift_expr | @add_expr | @sub_expr | @mul_expr | @div_expr | @mod_expr | @exp_expr | @bitor_expr | @xor_expr | @bitand_expr | @in_expr | @instanceof_expr | @logand_expr | @logor_expr | @nullishcoalescing_expr; + +@assignment = @assign_expr | @assign_add_expr | @assign_sub_expr | @assign_mul_expr | @assign_div_expr | @assign_mod_expr | @assign_exp_expr | @assign_lshift_expr | @assign_rshift_expr | @assign_urshift_expr | @assign_or_expr | @assign_xor_expr | @assign_and_expr | @assignlogandexpr | @assignlogorexpr | @assignnullishcoalescingexpr; + +@updateexpr = @preinc_expr | @postinc_expr | @predec_expr | @postdec_expr; + +@pattern = @varref | @array_pattern | @object_pattern; + +@comprehension_expr = @array_comprehension_expr | @generator_expr; + +@comprehension_block = @for_in_comprehension_block | @for_of_comprehension_block; + +@import_specifier = @named_import_specifier | @import_default_specifier | @import_namespace_specifier; + +@exportspecifier = @named_export_specifier | @export_default_specifier | @export_namespace_specifier; + +@type_keyword_operand = @import_declaration | @export_declaration | @import_specifier; + +@type_assertion = @as_type_assertion | @prefix_type_assertion; + +@class_definition = @class_decl_stmt | @class_expr; +@interface_definition = @interface_declaration | @interface_typeexpr; +@class_or_interface = @class_definition | @interface_definition; + +@lexical_decl = @var_decl | @type_decl; +@lexical_access = @varaccess | @local_type_access | @local_var_type_access | @local_namespace_access; +@lexical_ref = @lexical_decl | @lexical_access; + +@e4x_xml_attribute_selector = @e4x_xml_static_attribute_selector | @e4x_xml_dynamic_attribute_selector; +@e4x_xml_qualident = @e4x_xml_static_qualident | @e4x_xml_dynamic_qualident; + +expr_contains_template_tag_location( + int expr: @expr ref, + int location: @location ref +); + +@template_placeholder_tag_parent = @xmlelement | @xmlattribute | @file; + +template_placeholder_tag_info( + unique int node: @template_placeholder_tag, + int parentNode: @template_placeholder_tag_parent ref, + varchar(900) raw: string ref +); + +// scopes +scopes (unique int id: @scope, + int kind: int ref); + +case @scope.kind of + 0 = @global_scope +| 1 = @function_scope +| 2 = @catch_scope +| 3 = @module_scope +| 4 = @block_scope +| 5 = @for_scope +| 6 = @for_in_scope // for-of scopes work the same as for-in scopes +| 7 = @comprehension_block_scope +| 8 = @class_expr_scope +| 9 = @namespace_scope +| 10 = @class_decl_scope +| 11 = @interface_scope +| 12 = @type_alias_scope +| 13 = @mapped_type_scope +| 14 = @enum_scope +| 15 = @external_module_scope +| 16 = @conditional_type_scope; + +scopenodes (unique int node: @ast_node ref, + int scope: @scope ref); + +scopenesting (unique int inner: @scope ref, + int outer: @scope ref); + +// functions +@function = @function_decl_stmt | @function_expr | @arrow_function_expr; + +@parameterized = @function | @catch_clause; +@type_parameterized = @function | @class_or_interface | @type_alias_declaration | @mapped_typeexpr | @infer_typeexpr; + +is_generator (int fun: @function ref); +has_rest_parameter (int fun: @function ref); +is_async (int fun: @function ref); + +// variables and lexically scoped type names +#keyset[scope, name] +variables (unique int id: @variable, + varchar(900) name: string ref, + int scope: @scope ref); + +#keyset[scope, name] +local_type_names (unique int id: @local_type_name, + varchar(900) name: string ref, + int scope: @scope ref); + +#keyset[scope, name] +local_namespace_names (unique int id: @local_namespace_name, + varchar(900) name: string ref, + int scope: @scope ref); + +is_arguments_object (int id: @variable ref); + +@lexical_name = @variable | @local_type_name | @local_namespace_name; + +@bind_id = @varaccess | @local_var_type_access; +bind (unique int id: @bind_id ref, + int decl: @variable ref); + +decl (unique int id: @var_decl ref, + int decl: @variable ref); + +@typebind_id = @local_type_access | @export_varaccess; +typebind (unique int id: @typebind_id ref, + int decl: @local_type_name ref); + +@typedecl_id = @type_decl | @var_decl; +typedecl (unique int id: @typedecl_id ref, + int decl: @local_type_name ref); + +namespacedecl (unique int id: @var_decl ref, + int decl: @local_namespace_name ref); + +@namespacebind_id = @local_namespace_access | @export_varaccess; +namespacebind (unique int id: @namespacebind_id ref, + int decl: @local_namespace_name ref); + + +// properties in object literals, property patterns in object patterns, and method declarations in classes +#keyset[parent, index] +properties (unique int id: @property, + int parent: @property_parent ref, + int index: int ref, + int kind: int ref, + varchar(900) tostring: string ref); + +case @property.kind of + 0 = @value_property +| 1 = @property_getter +| 2 = @property_setter +| 3 = @jsx_attribute +| 4 = @function_call_signature +| 5 = @constructor_call_signature +| 6 = @index_signature +| 7 = @enum_member +| 8 = @proper_field +| 9 = @parameter_field +| 10 = @static_initializer +; + +@property_parent = @obj_expr | @object_pattern | @class_definition | @jsx_element | @interface_definition | @enum_declaration; +@property_accessor = @property_getter | @property_setter; +@call_signature = @function_call_signature | @constructor_call_signature; +@field = @proper_field | @parameter_field; +@field_or_vardeclarator = @field | @var_declarator; + +is_computed (int id: @property ref); +is_method (int id: @property ref); +is_static (int id: @property ref); +is_abstract_member (int id: @property ref); +is_const_enum (int id: @enum_declaration ref); +is_abstract_class (int id: @class_decl_stmt ref); + +has_public_keyword (int id: @property ref); +has_private_keyword (int id: @property ref); +has_protected_keyword (int id: @property ref); +has_readonly_keyword (int id: @property ref); +has_type_keyword (int id: @type_keyword_operand ref); +has_defer_keyword (int id: @import_declaration ref); +is_optional_member (int id: @property ref); +has_definite_assignment_assertion (int id: @field_or_vardeclarator ref); +is_optional_parameter_declaration (unique int parameter: @pattern ref); + +#keyset[constructor, param_index] +parameter_fields( + unique int field: @parameter_field ref, + int constructor: @function_expr ref, + int param_index: int ref +); + +// types +#keyset[parent, idx] +typeexprs ( + unique int id: @typeexpr, + int kind: int ref, + int parent: @typeexpr_parent ref, + int idx: int ref, + varchar(900) tostring: string ref +); + +case @typeexpr.kind of + 0 = @local_type_access +| 1 = @type_decl +| 2 = @keyword_typeexpr +| 3 = @string_literal_typeexpr +| 4 = @number_literal_typeexpr +| 5 = @boolean_literal_typeexpr +| 6 = @array_typeexpr +| 7 = @union_typeexpr +| 8 = @indexed_access_typeexpr +| 9 = @intersection_typeexpr +| 10 = @parenthesized_typeexpr +| 11 = @tuple_typeexpr +| 12 = @keyof_typeexpr +| 13 = @qualified_type_access +| 14 = @generic_typeexpr +| 15 = @type_label +| 16 = @typeof_typeexpr +| 17 = @local_var_type_access +| 18 = @qualified_var_type_access +| 19 = @this_var_type_access +| 20 = @predicate_typeexpr +| 21 = @interface_typeexpr +| 22 = @type_parameter +| 23 = @plain_function_typeexpr +| 24 = @constructor_typeexpr +| 25 = @local_namespace_access +| 26 = @qualified_namespace_access +| 27 = @mapped_typeexpr +| 28 = @conditional_typeexpr +| 29 = @infer_typeexpr +| 30 = @import_type_access +| 31 = @import_namespace_access +| 32 = @import_var_type_access +| 33 = @optional_typeexpr +| 34 = @rest_typeexpr +| 35 = @bigint_literal_typeexpr +| 36 = @readonly_typeexpr +| 37 = @template_literal_typeexpr +; + +@typeref = @typeaccess | @type_decl; +@type_identifier = @type_decl | @local_type_access | @type_label | @local_var_type_access | @local_namespace_access; +@typeexpr_parent = @expr | @stmt | @property | @typeexpr; +@literal_typeexpr = @string_literal_typeexpr | @number_literal_typeexpr | @boolean_literal_typeexpr | @bigint_literal_typeexpr; +@typeaccess = @local_type_access | @qualified_type_access | @import_type_access; +@vartypeaccess = @local_var_type_access | @qualified_var_type_access | @this_var_type_access | @import_var_type_access; +@namespace_access = @local_namespace_access | @qualified_namespace_access | @import_namespace_access; +@import_typeexpr = @import_type_access | @import_namespace_access | @import_var_type_access; + +@function_typeexpr = @plain_function_typeexpr | @constructor_typeexpr; + +// types +types ( + unique int id: @type, + int kind: int ref, + varchar(900) tostring: string ref +); + +#keyset[parent, idx] +type_child ( + int child: @type ref, + int parent: @type ref, + int idx: int ref +); + +case @type.kind of + 0 = @any_type +| 1 = @string_type +| 2 = @number_type +| 3 = @union_type +| 4 = @true_type +| 5 = @false_type +| 6 = @type_reference +| 7 = @object_type +| 8 = @canonical_type_variable_type +| 9 = @typeof_type +| 10 = @void_type +| 11 = @undefined_type +| 12 = @null_type +| 13 = @never_type +| 14 = @plain_symbol_type +| 15 = @unique_symbol_type +| 16 = @objectkeyword_type +| 17 = @intersection_type +| 18 = @tuple_type +| 19 = @lexical_type_variable_type +| 20 = @this_type +| 21 = @number_literal_type +| 22 = @string_literal_type +| 23 = @unknown_type +| 24 = @bigint_type +| 25 = @bigint_literal_type +; + +@boolean_literal_type = @true_type | @false_type; +@symbol_type = @plain_symbol_type | @unique_symbol_type; +@union_or_intersection_type = @union_type | @intersection_type; +@typevariable_type = @canonical_type_variable_type | @lexical_type_variable_type; + +has_asserts_keyword(int node: @predicate_typeexpr ref); + +@typed_ast_node = @expr | @typeexpr | @function; +ast_node_type( + unique int node: @typed_ast_node ref, + int typ: @type ref); + +declared_function_signature( + unique int node: @function ref, + int sig: @signature_type ref +); + +invoke_expr_signature( + unique int node: @invokeexpr ref, + int sig: @signature_type ref +); + +invoke_expr_overload_index( + unique int node: @invokeexpr ref, + int index: int ref +); + +symbols ( + unique int id: @symbol, + int kind: int ref, + varchar(900) name: string ref +); + +symbol_parent ( + unique int symbol: @symbol ref, + int parent: @symbol ref +); + +symbol_module ( + int symbol: @symbol ref, + varchar(900) moduleName: string ref +); + +symbol_global ( + int symbol: @symbol ref, + varchar(900) globalName: string ref +); + +case @symbol.kind of + 0 = @root_symbol +| 1 = @member_symbol +| 2 = @other_symbol +; + +@type_with_symbol = @type_reference | @typevariable_type | @typeof_type | @unique_symbol_type; +@ast_node_with_symbol = @type_definition | @namespace_definition | @toplevel | @typeaccess | @namespace_access | @var_decl | @function | @invokeexpr | @import_declaration | @external_module_reference | @external_module_declaration; + +ast_node_symbol( + unique int node: @ast_node_with_symbol ref, + int symbol: @symbol ref); + +type_symbol( + unique int typ: @type_with_symbol ref, + int symbol: @symbol ref); + +#keyset[typ, name] +type_property( + int typ: @type ref, + varchar(900) name: string ref, + int propertyType: @type ref); + +type_alias( + unique int aliasType: @type ref, + int underlyingType: @type ref); + +@literal_type = @string_literal_type | @number_literal_type | @boolean_literal_type | @bigint_literal_type; +@type_with_literal_value = @string_literal_type | @number_literal_type | @bigint_literal_type; +type_literal_value( + unique int typ: @type_with_literal_value ref, + varchar(900) value: string ref); + +signature_types ( + unique int id: @signature_type, + int kind: int ref, + varchar(900) tostring: string ref, + int type_parameters: int ref, + int required_params: int ref +); + +is_abstract_signature( + unique int sig: @signature_type ref +); + +signature_rest_parameter( + unique int sig: @signature_type ref, + int rest_param_arra_type: @type ref +); + +case @signature_type.kind of + 0 = @function_signature_type +| 1 = @constructor_signature_type +; + +#keyset[typ, kind, index] +type_contains_signature ( + int typ: @type ref, + int kind: int ref, // constructor/call/index + int index: int ref, // ordering of overloaded signatures + int sig: @signature_type ref +); + +#keyset[parent, index] +signature_contains_type ( + int child: @type ref, + int parent: @signature_type ref, + int index: int ref +); + +#keyset[sig, index] +signature_parameter_name ( + int sig: @signature_type ref, + int index: int ref, + varchar(900) name: string ref +); + +number_index_type ( + unique int baseType: @type ref, + int propertyType: @type ref +); + +string_index_type ( + unique int baseType: @type ref, + int propertyType: @type ref +); + +base_type_names( + int typeName: @symbol ref, + int baseTypeName: @symbol ref +); + +self_types( + int typeName: @symbol ref, + int selfType: @type_reference ref +); + +tuple_type_min_length( + unique int typ: @type ref, + int minLength: int ref +); + +tuple_type_rest_index( + unique int typ: @type ref, + int index: int ref +); + +// comments +comments (unique int id: @comment, + int kind: int ref, + int toplevel: @toplevel ref, + varchar(900) text: string ref, + varchar(900) tostring: string ref); + +case @comment.kind of + 0 = @slashslash_comment +| 1 = @slashstar_comment +| 2 = @doc_comment +| 3 = @html_comment_start +| 4 = @htmlcommentend; + +@html_comment = @html_comment_start | @htmlcommentend; +@line_comment = @slashslash_comment | @html_comment; +@block_comment = @slashstar_comment | @doc_comment; + +// source lines +lines (unique int id: @line, + int toplevel: @toplevel ref, + varchar(900) text: string ref, + varchar(2) terminator: string ref); +indentation (int file: @file ref, + int lineno: int ref, + varchar(1) indentChar: string ref, + int indentDepth: int ref); + +// JavaScript parse errors +js_parse_errors (unique int id: @js_parse_error, + int toplevel: @toplevel ref, + varchar(900) message: string ref, + varchar(900) line: string ref); + +// regular expressions +#keyset[parent, idx] +regexpterm (unique int id: @regexpterm, + int kind: int ref, + int parent: @regexpparent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +@regexpparent = @regexpterm | @regexp_literal | @string_literal | @add_expr; + +case @regexpterm.kind of + 0 = @regexp_alt +| 1 = @regexp_seq +| 2 = @regexp_caret +| 3 = @regexp_dollar +| 4 = @regexp_wordboundary +| 5 = @regexp_nonwordboundary +| 6 = @regexp_positive_lookahead +| 7 = @regexp_negative_lookahead +| 8 = @regexp_star +| 9 = @regexp_plus +| 10 = @regexp_opt +| 11 = @regexp_range +| 12 = @regexp_dot +| 13 = @regexp_group +| 14 = @regexp_normal_constant +| 15 = @regexp_hex_escape +| 16 = @regexp_unicode_escape +| 17 = @regexp_dec_escape +| 18 = @regexp_oct_escape +| 19 = @regexp_ctrl_escape +| 20 = @regexp_char_class_escape +| 21 = @regexp_id_escape +| 22 = @regexp_backref +| 23 = @regexp_char_class +| 24 = @regexp_char_range +| 25 = @regexp_positive_lookbehind +| 26 = @regexp_negative_lookbehind +| 27 = @regexp_unicode_property_escape +| 28 = @regexp_quoted_string +| 29 = @regexp_intersection +| 30 = @regexp_subtraction; + +regexp_parse_errors (unique int id: @regexp_parse_error, + int regexp: @regexpterm ref, + varchar(900) message: string ref); + +@regexp_quantifier = @regexp_star | @regexp_plus | @regexp_opt | @regexp_range; +@regexp_escape = @regexp_char_escape | @regexp_char_class_escape | @regexp_unicode_property_escape; +@regexp_char_escape = @regexp_hex_escape | @regexp_unicode_escape | @regexp_dec_escape | @regexp_oct_escape | @regexp_ctrl_escape | @regexp_id_escape; +@regexp_constant = @regexp_normal_constant | @regexp_char_escape; +@regexp_lookahead = @regexp_positive_lookahead | @regexp_negative_lookahead; +@regexp_lookbehind = @regexp_positive_lookbehind | @regexp_negative_lookbehind; +@regexp_subpattern = @regexp_lookahead | @regexp_lookbehind; +@regexp_anchor = @regexp_dollar | @regexp_caret; + +is_greedy (int id: @regexp_quantifier ref); +range_quantifier_lower_bound (unique int id: @regexp_range ref, int lo: int ref); +range_quantifier_upper_bound (unique int id: @regexp_range ref, int hi: int ref); +is_capture (unique int id: @regexp_group ref, int number: int ref); +is_named_capture (unique int id: @regexp_group ref, string name: string ref); +is_inverted (int id: @regexp_char_class ref); +regexp_const_value (unique int id: @regexp_constant ref, varchar(1) value: string ref); +char_class_escape (unique int id: @regexp_char_class_escape ref, varchar(1) value: string ref); +backref (unique int id: @regexp_backref ref, int value: int ref); +named_backref (unique int id: @regexp_backref ref, string name: string ref); +unicode_property_escapename (unique int id: @regexp_unicode_property_escape ref, string name: string ref); +unicode_property_escapevalue (unique int id: @regexp_unicode_property_escape ref, string value: string ref); + +// tokens +#keyset[toplevel, idx] +tokeninfo (unique int id: @token, + int kind: int ref, + int toplevel: @toplevel ref, + int idx: int ref, + varchar(900) value: string ref); + +case @token.kind of + 0 = @token_eof +| 1 = @token_null_literal +| 2 = @token_boolean_literal +| 3 = @token_numeric_literal +| 4 = @token_string_literal +| 5 = @token_regular_expression +| 6 = @token_identifier +| 7 = @token_keyword +| 8 = @token_punctuator; + +// associate comments with the token immediately following them (which may be EOF) +next_token (int comment: @comment ref, int token: @token ref); + +// JSON +#keyset[parent, idx] +json (unique int id: @json_value, + int kind: int ref, + int parent: @json_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +json_literals (varchar(900) value: string ref, + varchar(900) raw: string ref, + unique int expr: @json_value ref); + +json_properties (int obj: @json_object ref, + varchar(900) property: string ref, + int value: @json_value ref); + +json_errors (unique int id: @json_parse_error, + varchar(900) message: string ref); + +json_locations(unique int locatable: @json_locatable ref, + int location: @location_default ref); + +case @json_value.kind of + 0 = @json_null +| 1 = @json_boolean +| 2 = @json_number +| 3 = @json_string +| 4 = @json_array +| 5 = @json_object; + +@json_parent = @json_object | @json_array | @file; + +@json_locatable = @json_value | @json_parse_error; + +// locations +@ast_node = @toplevel | @stmt | @expr | @property | @typeexpr; + +@locatable = @file + | @ast_node + | @comment + | @line + | @js_parse_error | @regexp_parse_error + | @regexpterm + | @json_locatable + | @token + | @cfg_node + | @jsdoc | @jsdoc_type_expr | @jsdoc_tag + | @yaml_locatable + | @xmllocatable + | @configLocatable + | @template_placeholder_tag; + +hasLocation (unique int locatable: @locatable ref, + int location: @location ref); + +// CFG +entry_cfg_node (unique int id: @entry_node, int container: @stmt_container ref); +exit_cfg_node (unique int id: @exit_node, int container: @stmt_container ref); +guard_node (unique int id: @guard_node, int kind: int ref, int test: @expr ref); +case @guard_node.kind of + 0 = @falsy_guard +| 1 = @truthy_guard; +@condition_guard = @falsy_guard | @truthy_guard; + +@synthetic_cfg_node = @entry_node | @exit_node | @guard_node; +@cfg_node = @synthetic_cfg_node | @expr_parent; + +successor (int pred: @cfg_node ref, int succ: @cfg_node ref); + +// JSDoc comments +jsdoc (unique int id: @jsdoc, varchar(900) description: string ref, int comment: @comment ref); +#keyset[parent, idx] +jsdoc_tags (unique int id: @jsdoc_tag, varchar(900) title: string ref, + int parent: @jsdoc ref, int idx: int ref, varchar(900) tostring: string ref); +jsdoc_tag_descriptions (unique int tag: @jsdoc_tag ref, varchar(900) text: string ref); +jsdoc_tag_names (unique int tag: @jsdoc_tag ref, varchar(900) text: string ref); + +#keyset[parent, idx] +jsdoc_type_exprs (unique int id: @jsdoc_type_expr, + int kind: int ref, + int parent: @jsdoc_type_expr_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); +case @jsdoc_type_expr.kind of + 0 = @jsdoc_any_type_expr +| 1 = @jsdoc_null_type_expr +| 2 = @jsdoc_undefined_type_expr +| 3 = @jsdoc_unknown_type_expr +| 4 = @jsdoc_void_type_expr +| 5 = @jsdoc_identifier_type_expr +| 6 = @jsdoc_applied_type_expr +| 7 = @jsdoc_nullable_type_expr +| 8 = @jsdoc_non_nullable_type_expr +| 9 = @jsdoc_record_type_expr +| 10 = @jsdoc_array_type_expr +| 11 = @jsdoc_union_type_expr +| 12 = @jsdoc_function_type_expr +| 13 = @jsdoc_optional_type_expr +| 14 = @jsdoc_rest_type_expr +| 15 = @jsdoc_qualified_type_expr +; + +#keyset[id, idx] +jsdoc_record_field_name (int id: @jsdoc_record_type_expr ref, int idx: int ref, varchar(900) name: string ref); +jsdoc_prefix_qualifier (int id: @jsdoc_type_expr ref); +jsdoc_has_new_parameter (int fn: @jsdoc_function_type_expr ref); + +@jsdoc_type_expr_parent = @jsdoc_type_expr | @jsdoc_tag; + +jsdoc_errors (unique int id: @jsdoc_error, int tag: @jsdoc_tag ref, varchar(900) message: string ref, varchar(900) tostring: string ref); + +@dataflownode = @expr | @function_decl_stmt | @class_decl_stmt | @namespace_declaration | @enum_declaration | @property; + +@optionalchainable = @call_expr | @propaccess; + +isOptionalChaining(int id: @optionalchainable ref); + +/** + * The time taken for the extraction of a file. + * This table contains non-deterministic content. + * + * The sum of the `time` column for each (`file`, `timerKind`) pair + * is the total time taken for extraction of `file`. The `extractionPhase` + * column provides a granular view of the extraction time of the file. + */ +extraction_time( + int file : @file ref, + // see `com.semmle.js.extractor.ExtractionMetrics.ExtractionPhase`. + int extractionPhase: int ref, + // 0 for the elapsed CPU time in nanoseconds, 1 for the elapsed wallclock time in nanoseconds + int timerKind: int ref, + float time: float ref +) + +/** +* Non-timing related data for the extraction of a single file. +* This table contains non-deterministic content. +*/ +extraction_data( + int file : @file ref, + // the absolute path to the cache file + varchar(900) cacheFile: string ref, + boolean fromCache: boolean ref, + int length: int ref +) + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/*- Configuration files with key value pairs -*/ + +configs( + unique int id: @config +); + +configNames( + unique int id: @configName, + int config: @config ref, + string name: string ref +); + +configValues( + unique int id: @configValue, + int config: @config ref, + string value: string ref +); + +configLocations( + int locatable: @configLocatable ref, + int location: @location_default ref +); + +@configLocatable = @config | @configName | @configValue; + +/*- Database metadata -*/ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +overlayChangedFiles( + string path: string ref +); diff --git a/javascript/ql/lib/upgrades/80b2bc24189307c5fd178dc2da95b45bcdb117f7/semmlecode.javascript.dbscheme b/javascript/ql/lib/upgrades/80b2bc24189307c5fd178dc2da95b45bcdb117f7/semmlecode.javascript.dbscheme new file mode 100644 index 000000000000..578367e82a25 --- /dev/null +++ b/javascript/ql/lib/upgrades/80b2bc24189307c5fd178dc2da95b45bcdb117f7/semmlecode.javascript.dbscheme @@ -0,0 +1,1217 @@ +/*** Standard fragments ***/ + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- JavaScript-specific part -*/ + +@location = @location_default + +@sourceline = @locatable; + +filetype( + int file: @file ref, + string filetype: string ref +) + +// top-level code fragments +toplevels (unique int id: @toplevel, + int kind: int ref); + +is_externs (int toplevel: @toplevel ref); + +case @toplevel.kind of + 0 = @script +| 1 = @inline_script +| 2 = @event_handler +| 3 = @javascript_url +| 4 = @template_toplevel; + +is_module (int tl: @toplevel ref); +is_nodejs (int tl: @toplevel ref); +is_es2015_module (int tl: @toplevel ref); +is_closure_module (int tl: @toplevel ref); + +@xml_node_with_code = @xmlelement | @xmlattribute | @template_placeholder_tag; +toplevel_parent_xml_node( + unique int toplevel: @toplevel ref, + int xmlnode: @xml_node_with_code ref); + +xml_element_parent_expression( + unique int xmlnode: @xmlelement ref, + int expression: @expr ref, + int index: int ref); + +// statements +#keyset[parent, idx] +stmts (unique int id: @stmt, + int kind: int ref, + int parent: @stmt_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +stmt_containers (unique int stmt: @stmt ref, + int container: @stmt_container ref); + +jump_targets (unique int jump: @stmt ref, + int target: @stmt ref); + +@stmt_parent = @stmt | @toplevel | @function_expr | @arrow_function_expr | @static_initializer; +@stmt_container = @toplevel | @function | @namespace_declaration | @external_module_declaration | @global_augmentation_declaration; + +case @stmt.kind of + 0 = @empty_stmt +| 1 = @block_stmt +| 2 = @expr_stmt +| 3 = @if_stmt +| 4 = @labeled_stmt +| 5 = @break_stmt +| 6 = @continue_stmt +| 7 = @with_stmt +| 8 = @switch_stmt +| 9 = @return_stmt +| 10 = @throw_stmt +| 11 = @try_stmt +| 12 = @while_stmt +| 13 = @do_while_stmt +| 14 = @for_stmt +| 15 = @for_in_stmt +| 16 = @debugger_stmt +| 17 = @function_decl_stmt +| 18 = @var_decl_stmt +| 19 = @case +| 20 = @catch_clause +| 21 = @for_of_stmt +| 22 = @const_decl_stmt +| 23 = @let_stmt +| 24 = @legacy_let_stmt +| 25 = @for_each_stmt +| 26 = @class_decl_stmt +| 27 = @import_declaration +| 28 = @export_all_declaration +| 29 = @export_default_declaration +| 30 = @export_named_declaration +| 31 = @namespace_declaration +| 32 = @import_equals_declaration +| 33 = @export_assign_declaration +| 34 = @interface_declaration +| 35 = @type_alias_declaration +| 36 = @enum_declaration +| 37 = @external_module_declaration +| 38 = @export_as_namespace_declaration +| 39 = @global_augmentation_declaration +| 40 = @using_decl_stmt +; + +@decl_stmt = @var_decl_stmt | @const_decl_stmt | @let_stmt | @legacy_let_stmt | @using_decl_stmt; + +@export_declaration = @export_all_declaration | @export_default_declaration | @export_named_declaration; + +@namespace_definition = @namespace_declaration | @enum_declaration; +@type_definition = @class_definition | @interface_declaration | @enum_declaration | @type_alias_declaration | @enum_member; + +is_instantiated(unique int decl: @namespace_declaration ref); + +@declarable_node = @decl_stmt | @namespace_declaration | @class_decl_stmt | @function_decl_stmt | @enum_declaration | @external_module_declaration | @global_augmentation_declaration | @field; +has_declare_keyword(unique int stmt: @declarable_node ref); + +is_for_await_of(unique int forof: @for_of_stmt ref); + +// expressions +#keyset[parent, idx] +exprs (unique int id: @expr, + int kind: int ref, + int parent: @expr_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +literals (varchar(900) value: string ref, + varchar(900) raw: string ref, + unique int expr: @expr_or_type ref); + +enclosing_stmt (unique int expr: @expr_or_type ref, + int stmt: @stmt ref); + +expr_containers (unique int expr: @expr_or_type ref, + int container: @stmt_container ref); + +array_size (unique int ae: @arraylike ref, + int sz: int ref); + +is_delegating (int yield: @yield_expr ref); + +@expr_or_stmt = @expr | @stmt; +@expr_or_type = @expr | @typeexpr; +@expr_parent = @expr_or_stmt | @property | @function_typeexpr; +@arraylike = @array_expr | @array_pattern; +@type_annotation = @typeexpr | @jsdoc_type_expr; +@node_in_stmt_container = @cfg_node | @type_annotation | @toplevel; + +case @expr.kind of + 0 = @label +| 1 = @null_literal +| 2 = @boolean_literal +| 3 = @number_literal +| 4 = @string_literal +| 5 = @regexp_literal +| 6 = @this_expr +| 7 = @array_expr +| 8 = @obj_expr +| 9 = @function_expr +| 10 = @seq_expr +| 11 = @conditional_expr +| 12 = @new_expr +| 13 = @call_expr +| 14 = @dot_expr +| 15 = @index_expr +| 16 = @neg_expr +| 17 = @plus_expr +| 18 = @log_not_expr +| 19 = @bit_not_expr +| 20 = @typeof_expr +| 21 = @void_expr +| 22 = @delete_expr +| 23 = @eq_expr +| 24 = @neq_expr +| 25 = @eqq_expr +| 26 = @neqq_expr +| 27 = @lt_expr +| 28 = @le_expr +| 29 = @gt_expr +| 30 = @ge_expr +| 31 = @lshift_expr +| 32 = @rshift_expr +| 33 = @urshift_expr +| 34 = @add_expr +| 35 = @sub_expr +| 36 = @mul_expr +| 37 = @div_expr +| 38 = @mod_expr +| 39 = @bitor_expr +| 40 = @xor_expr +| 41 = @bitand_expr +| 42 = @in_expr +| 43 = @instanceof_expr +| 44 = @logand_expr +| 45 = @logor_expr +| 47 = @assign_expr +| 48 = @assign_add_expr +| 49 = @assign_sub_expr +| 50 = @assign_mul_expr +| 51 = @assign_div_expr +| 52 = @assign_mod_expr +| 53 = @assign_lshift_expr +| 54 = @assign_rshift_expr +| 55 = @assign_urshift_expr +| 56 = @assign_or_expr +| 57 = @assign_xor_expr +| 58 = @assign_and_expr +| 59 = @preinc_expr +| 60 = @postinc_expr +| 61 = @predec_expr +| 62 = @postdec_expr +| 63 = @par_expr +| 64 = @var_declarator +| 65 = @arrow_function_expr +| 66 = @spread_element +| 67 = @array_pattern +| 68 = @object_pattern +| 69 = @yield_expr +| 70 = @tagged_template_expr +| 71 = @template_literal +| 72 = @template_element +| 73 = @array_comprehension_expr +| 74 = @generator_expr +| 75 = @for_in_comprehension_block +| 76 = @for_of_comprehension_block +| 77 = @legacy_letexpr +| 78 = @var_decl +| 79 = @proper_varaccess +| 80 = @class_expr +| 81 = @super_expr +| 82 = @newtarget_expr +| 83 = @named_import_specifier +| 84 = @import_default_specifier +| 85 = @import_namespace_specifier +| 86 = @named_export_specifier +| 87 = @exp_expr +| 88 = @assign_exp_expr +| 89 = @jsx_element +| 90 = @jsx_qualified_name +| 91 = @jsx_empty_expr +| 92 = @await_expr +| 93 = @function_sent_expr +| 94 = @decorator +| 95 = @export_default_specifier +| 96 = @export_namespace_specifier +| 97 = @bind_expr +| 98 = @external_module_reference +| 99 = @dynamic_import +| 100 = @expression_with_type_arguments +| 101 = @prefix_type_assertion +| 102 = @as_type_assertion +| 103 = @export_varaccess +| 104 = @decorator_list +| 105 = @non_null_assertion +| 106 = @bigint_literal +| 107 = @nullishcoalescing_expr +| 108 = @e4x_xml_anyname +| 109 = @e4x_xml_static_attribute_selector +| 110 = @e4x_xml_dynamic_attribute_selector +| 111 = @e4x_xml_filter_expression +| 112 = @e4x_xml_static_qualident +| 113 = @e4x_xml_dynamic_qualident +| 114 = @e4x_xml_dotdotexpr +| 115 = @import_meta_expr +| 116 = @assignlogandexpr +| 117 = @assignlogorexpr +| 118 = @assignnullishcoalescingexpr +| 119 = @template_pipe_ref +| 120 = @generated_code_expr +| 121 = @satisfies_expr +; + +@varaccess = @proper_varaccess | @export_varaccess; +@varref = @var_decl | @varaccess; + +@identifier = @label | @varref | @type_identifier; + +@literal = @null_literal | @boolean_literal | @number_literal | @string_literal | @regexp_literal | @bigint_literal; + +@propaccess = @dot_expr | @index_expr; + +@invokeexpr = @new_expr | @call_expr; + +@unaryexpr = @neg_expr | @plus_expr | @log_not_expr | @bit_not_expr | @typeof_expr | @void_expr | @delete_expr | @spread_element; + +@equality_test = @eq_expr | @neq_expr | @eqq_expr | @neqq_expr; + +@comparison = @equality_test | @lt_expr | @le_expr | @gt_expr | @ge_expr; + +@binaryexpr = @comparison | @lshift_expr | @rshift_expr | @urshift_expr | @add_expr | @sub_expr | @mul_expr | @div_expr | @mod_expr | @exp_expr | @bitor_expr | @xor_expr | @bitand_expr | @in_expr | @instanceof_expr | @logand_expr | @logor_expr | @nullishcoalescing_expr; + +@assignment = @assign_expr | @assign_add_expr | @assign_sub_expr | @assign_mul_expr | @assign_div_expr | @assign_mod_expr | @assign_exp_expr | @assign_lshift_expr | @assign_rshift_expr | @assign_urshift_expr | @assign_or_expr | @assign_xor_expr | @assign_and_expr | @assignlogandexpr | @assignlogorexpr | @assignnullishcoalescingexpr; + +@updateexpr = @preinc_expr | @postinc_expr | @predec_expr | @postdec_expr; + +@pattern = @varref | @array_pattern | @object_pattern; + +@comprehension_expr = @array_comprehension_expr | @generator_expr; + +@comprehension_block = @for_in_comprehension_block | @for_of_comprehension_block; + +@import_specifier = @named_import_specifier | @import_default_specifier | @import_namespace_specifier; + +@exportspecifier = @named_export_specifier | @export_default_specifier | @export_namespace_specifier; + +@type_keyword_operand = @import_declaration | @export_declaration | @import_specifier; + +@type_assertion = @as_type_assertion | @prefix_type_assertion; + +@class_definition = @class_decl_stmt | @class_expr; +@interface_definition = @interface_declaration | @interface_typeexpr; +@class_or_interface = @class_definition | @interface_definition; + +@lexical_decl = @var_decl | @type_decl; +@lexical_access = @varaccess | @local_type_access | @local_var_type_access | @local_namespace_access; +@lexical_ref = @lexical_decl | @lexical_access; + +@e4x_xml_attribute_selector = @e4x_xml_static_attribute_selector | @e4x_xml_dynamic_attribute_selector; +@e4x_xml_qualident = @e4x_xml_static_qualident | @e4x_xml_dynamic_qualident; + +expr_contains_template_tag_location( + int expr: @expr ref, + int location: @location ref +); + +@template_placeholder_tag_parent = @xmlelement | @xmlattribute | @file; + +template_placeholder_tag_info( + unique int node: @template_placeholder_tag, + int parentNode: @template_placeholder_tag_parent ref, + varchar(900) raw: string ref +); + +// scopes +scopes (unique int id: @scope, + int kind: int ref); + +case @scope.kind of + 0 = @global_scope +| 1 = @function_scope +| 2 = @catch_scope +| 3 = @module_scope +| 4 = @block_scope +| 5 = @for_scope +| 6 = @for_in_scope // for-of scopes work the same as for-in scopes +| 7 = @comprehension_block_scope +| 8 = @class_expr_scope +| 9 = @namespace_scope +| 10 = @class_decl_scope +| 11 = @interface_scope +| 12 = @type_alias_scope +| 13 = @mapped_type_scope +| 14 = @enum_scope +| 15 = @external_module_scope +| 16 = @conditional_type_scope; + +scopenodes (unique int node: @ast_node ref, + int scope: @scope ref); + +scopenesting (unique int inner: @scope ref, + int outer: @scope ref); + +// functions +@function = @function_decl_stmt | @function_expr | @arrow_function_expr; + +@parameterized = @function | @catch_clause; +@type_parameterized = @function | @class_or_interface | @type_alias_declaration | @mapped_typeexpr | @infer_typeexpr; + +is_generator (int fun: @function ref); +has_rest_parameter (int fun: @function ref); +is_async (int fun: @function ref); + +// variables and lexically scoped type names +#keyset[scope, name] +variables (unique int id: @variable, + varchar(900) name: string ref, + int scope: @scope ref); + +#keyset[scope, name] +local_type_names (unique int id: @local_type_name, + varchar(900) name: string ref, + int scope: @scope ref); + +#keyset[scope, name] +local_namespace_names (unique int id: @local_namespace_name, + varchar(900) name: string ref, + int scope: @scope ref); + +is_arguments_object (int id: @variable ref); + +@lexical_name = @variable | @local_type_name | @local_namespace_name; + +@bind_id = @varaccess | @local_var_type_access; +bind (unique int id: @bind_id ref, + int decl: @variable ref); + +decl (unique int id: @var_decl ref, + int decl: @variable ref); + +@typebind_id = @local_type_access | @export_varaccess; +typebind (unique int id: @typebind_id ref, + int decl: @local_type_name ref); + +@typedecl_id = @type_decl | @var_decl; +typedecl (unique int id: @typedecl_id ref, + int decl: @local_type_name ref); + +namespacedecl (unique int id: @var_decl ref, + int decl: @local_namespace_name ref); + +@namespacebind_id = @local_namespace_access | @export_varaccess; +namespacebind (unique int id: @namespacebind_id ref, + int decl: @local_namespace_name ref); + + +// properties in object literals, property patterns in object patterns, and method declarations in classes +#keyset[parent, index] +properties (unique int id: @property, + int parent: @property_parent ref, + int index: int ref, + int kind: int ref, + varchar(900) tostring: string ref); + +case @property.kind of + 0 = @value_property +| 1 = @property_getter +| 2 = @property_setter +| 3 = @jsx_attribute +| 4 = @function_call_signature +| 5 = @constructor_call_signature +| 6 = @index_signature +| 7 = @enum_member +| 8 = @proper_field +| 9 = @parameter_field +| 10 = @static_initializer +; + +@property_parent = @obj_expr | @object_pattern | @class_definition | @jsx_element | @interface_definition | @enum_declaration; +@property_accessor = @property_getter | @property_setter; +@call_signature = @function_call_signature | @constructor_call_signature; +@field = @proper_field | @parameter_field; +@field_or_vardeclarator = @field | @var_declarator; + +is_computed (int id: @property ref); +is_method (int id: @property ref); +is_static (int id: @property ref); +is_abstract_member (int id: @property ref); +is_const_enum (int id: @enum_declaration ref); +is_abstract_class (int id: @class_decl_stmt ref); + +has_public_keyword (int id: @property ref); +has_private_keyword (int id: @property ref); +has_protected_keyword (int id: @property ref); +has_readonly_keyword (int id: @property ref); +has_type_keyword (int id: @type_keyword_operand ref); +has_defer_keyword (int id: @import_declaration ref); +is_optional_member (int id: @property ref); +has_definite_assignment_assertion (int id: @field_or_vardeclarator ref); +is_optional_parameter_declaration (unique int parameter: @pattern ref); + +#keyset[constructor, param_index] +parameter_fields( + unique int field: @parameter_field ref, + int constructor: @function_expr ref, + int param_index: int ref +); + +// types +#keyset[parent, idx] +typeexprs ( + unique int id: @typeexpr, + int kind: int ref, + int parent: @typeexpr_parent ref, + int idx: int ref, + varchar(900) tostring: string ref +); + +case @typeexpr.kind of + 0 = @local_type_access +| 1 = @type_decl +| 2 = @keyword_typeexpr +| 3 = @string_literal_typeexpr +| 4 = @number_literal_typeexpr +| 5 = @boolean_literal_typeexpr +| 6 = @array_typeexpr +| 7 = @union_typeexpr +| 8 = @indexed_access_typeexpr +| 9 = @intersection_typeexpr +| 10 = @parenthesized_typeexpr +| 11 = @tuple_typeexpr +| 12 = @keyof_typeexpr +| 13 = @qualified_type_access +| 14 = @generic_typeexpr +| 15 = @type_label +| 16 = @typeof_typeexpr +| 17 = @local_var_type_access +| 18 = @qualified_var_type_access +| 19 = @this_var_type_access +| 20 = @predicate_typeexpr +| 21 = @interface_typeexpr +| 22 = @type_parameter +| 23 = @plain_function_typeexpr +| 24 = @constructor_typeexpr +| 25 = @local_namespace_access +| 26 = @qualified_namespace_access +| 27 = @mapped_typeexpr +| 28 = @conditional_typeexpr +| 29 = @infer_typeexpr +| 30 = @import_type_access +| 31 = @import_namespace_access +| 32 = @import_var_type_access +| 33 = @optional_typeexpr +| 34 = @rest_typeexpr +| 35 = @bigint_literal_typeexpr +| 36 = @readonly_typeexpr +| 37 = @template_literal_typeexpr +; + +@typeref = @typeaccess | @type_decl; +@type_identifier = @type_decl | @local_type_access | @type_label | @local_var_type_access | @local_namespace_access; +@typeexpr_parent = @expr | @stmt | @property | @typeexpr; +@literal_typeexpr = @string_literal_typeexpr | @number_literal_typeexpr | @boolean_literal_typeexpr | @bigint_literal_typeexpr; +@typeaccess = @local_type_access | @qualified_type_access | @import_type_access; +@vartypeaccess = @local_var_type_access | @qualified_var_type_access | @this_var_type_access | @import_var_type_access; +@namespace_access = @local_namespace_access | @qualified_namespace_access | @import_namespace_access; +@import_typeexpr = @import_type_access | @import_namespace_access | @import_var_type_access; + +@function_typeexpr = @plain_function_typeexpr | @constructor_typeexpr; + +// types +types ( + unique int id: @type, + int kind: int ref, + varchar(900) tostring: string ref +); + +#keyset[parent, idx] +type_child ( + int child: @type ref, + int parent: @type ref, + int idx: int ref +); + +case @type.kind of + 0 = @any_type +| 1 = @string_type +| 2 = @number_type +| 3 = @union_type +| 4 = @true_type +| 5 = @false_type +| 6 = @type_reference +| 7 = @object_type +| 8 = @canonical_type_variable_type +| 9 = @typeof_type +| 10 = @void_type +| 11 = @undefined_type +| 12 = @null_type +| 13 = @never_type +| 14 = @plain_symbol_type +| 15 = @unique_symbol_type +| 16 = @objectkeyword_type +| 17 = @intersection_type +| 18 = @tuple_type +| 19 = @lexical_type_variable_type +| 20 = @this_type +| 21 = @number_literal_type +| 22 = @string_literal_type +| 23 = @unknown_type +| 24 = @bigint_type +| 25 = @bigint_literal_type +; + +@boolean_literal_type = @true_type | @false_type; +@symbol_type = @plain_symbol_type | @unique_symbol_type; +@union_or_intersection_type = @union_type | @intersection_type; +@typevariable_type = @canonical_type_variable_type | @lexical_type_variable_type; + +has_asserts_keyword(int node: @predicate_typeexpr ref); + +@typed_ast_node = @expr | @typeexpr | @function; +ast_node_type( + unique int node: @typed_ast_node ref, + int typ: @type ref); + +declared_function_signature( + unique int node: @function ref, + int sig: @signature_type ref +); + +invoke_expr_signature( + unique int node: @invokeexpr ref, + int sig: @signature_type ref +); + +invoke_expr_overload_index( + unique int node: @invokeexpr ref, + int index: int ref +); + +symbols ( + unique int id: @symbol, + int kind: int ref, + varchar(900) name: string ref +); + +symbol_parent ( + unique int symbol: @symbol ref, + int parent: @symbol ref +); + +symbol_module ( + int symbol: @symbol ref, + varchar(900) moduleName: string ref +); + +symbol_global ( + int symbol: @symbol ref, + varchar(900) globalName: string ref +); + +case @symbol.kind of + 0 = @root_symbol +| 1 = @member_symbol +| 2 = @other_symbol +; + +@type_with_symbol = @type_reference | @typevariable_type | @typeof_type | @unique_symbol_type; +@ast_node_with_symbol = @type_definition | @namespace_definition | @toplevel | @typeaccess | @namespace_access | @var_decl | @function | @invokeexpr | @import_declaration | @external_module_reference | @external_module_declaration; + +ast_node_symbol( + unique int node: @ast_node_with_symbol ref, + int symbol: @symbol ref); + +type_symbol( + unique int typ: @type_with_symbol ref, + int symbol: @symbol ref); + +#keyset[typ, name] +type_property( + int typ: @type ref, + varchar(900) name: string ref, + int propertyType: @type ref); + +type_alias( + unique int aliasType: @type ref, + int underlyingType: @type ref); + +@literal_type = @string_literal_type | @number_literal_type | @boolean_literal_type | @bigint_literal_type; +@type_with_literal_value = @string_literal_type | @number_literal_type | @bigint_literal_type; +type_literal_value( + unique int typ: @type_with_literal_value ref, + varchar(900) value: string ref); + +signature_types ( + unique int id: @signature_type, + int kind: int ref, + varchar(900) tostring: string ref, + int type_parameters: int ref, + int required_params: int ref +); + +is_abstract_signature( + unique int sig: @signature_type ref +); + +signature_rest_parameter( + unique int sig: @signature_type ref, + int rest_param_arra_type: @type ref +); + +case @signature_type.kind of + 0 = @function_signature_type +| 1 = @constructor_signature_type +; + +#keyset[typ, kind, index] +type_contains_signature ( + int typ: @type ref, + int kind: int ref, // constructor/call/index + int index: int ref, // ordering of overloaded signatures + int sig: @signature_type ref +); + +#keyset[parent, index] +signature_contains_type ( + int child: @type ref, + int parent: @signature_type ref, + int index: int ref +); + +#keyset[sig, index] +signature_parameter_name ( + int sig: @signature_type ref, + int index: int ref, + varchar(900) name: string ref +); + +number_index_type ( + unique int baseType: @type ref, + int propertyType: @type ref +); + +string_index_type ( + unique int baseType: @type ref, + int propertyType: @type ref +); + +base_type_names( + int typeName: @symbol ref, + int baseTypeName: @symbol ref +); + +self_types( + int typeName: @symbol ref, + int selfType: @type_reference ref +); + +tuple_type_min_length( + unique int typ: @type ref, + int minLength: int ref +); + +tuple_type_rest_index( + unique int typ: @type ref, + int index: int ref +); + +// comments +comments (unique int id: @comment, + int kind: int ref, + int toplevel: @toplevel ref, + varchar(900) text: string ref, + varchar(900) tostring: string ref); + +case @comment.kind of + 0 = @slashslash_comment +| 1 = @slashstar_comment +| 2 = @doc_comment +| 3 = @html_comment_start +| 4 = @htmlcommentend; + +@html_comment = @html_comment_start | @htmlcommentend; +@line_comment = @slashslash_comment | @html_comment; +@block_comment = @slashstar_comment | @doc_comment; + +// source lines +lines (unique int id: @line, + int toplevel: @toplevel ref, + varchar(900) text: string ref, + varchar(2) terminator: string ref); +indentation (int file: @file ref, + int lineno: int ref, + varchar(1) indentChar: string ref, + int indentDepth: int ref); + +// JavaScript parse errors +js_parse_errors (unique int id: @js_parse_error, + int toplevel: @toplevel ref, + varchar(900) message: string ref, + varchar(900) line: string ref); + +// regular expressions +#keyset[parent, idx] +regexpterm (unique int id: @regexpterm, + int kind: int ref, + int parent: @regexpparent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +@regexpparent = @regexpterm | @regexp_literal | @string_literal | @add_expr; + +case @regexpterm.kind of + 0 = @regexp_alt +| 1 = @regexp_seq +| 2 = @regexp_caret +| 3 = @regexp_dollar +| 4 = @regexp_wordboundary +| 5 = @regexp_nonwordboundary +| 6 = @regexp_positive_lookahead +| 7 = @regexp_negative_lookahead +| 8 = @regexp_star +| 9 = @regexp_plus +| 10 = @regexp_opt +| 11 = @regexp_range +| 12 = @regexp_dot +| 13 = @regexp_group +| 14 = @regexp_normal_constant +| 15 = @regexp_hex_escape +| 16 = @regexp_unicode_escape +| 17 = @regexp_dec_escape +| 18 = @regexp_oct_escape +| 19 = @regexp_ctrl_escape +| 20 = @regexp_char_class_escape +| 21 = @regexp_id_escape +| 22 = @regexp_backref +| 23 = @regexp_char_class +| 24 = @regexp_char_range +| 25 = @regexp_positive_lookbehind +| 26 = @regexp_negative_lookbehind +| 27 = @regexp_unicode_property_escape +| 28 = @regexp_quoted_string +| 29 = @regexp_intersection +| 30 = @regexp_subtraction; + +regexp_parse_errors (unique int id: @regexp_parse_error, + int regexp: @regexpterm ref, + varchar(900) message: string ref); + +@regexp_quantifier = @regexp_star | @regexp_plus | @regexp_opt | @regexp_range; +@regexp_escape = @regexp_char_escape | @regexp_char_class_escape | @regexp_unicode_property_escape; +@regexp_char_escape = @regexp_hex_escape | @regexp_unicode_escape | @regexp_dec_escape | @regexp_oct_escape | @regexp_ctrl_escape | @regexp_id_escape; +@regexp_constant = @regexp_normal_constant | @regexp_char_escape; +@regexp_lookahead = @regexp_positive_lookahead | @regexp_negative_lookahead; +@regexp_lookbehind = @regexp_positive_lookbehind | @regexp_negative_lookbehind; +@regexp_subpattern = @regexp_lookahead | @regexp_lookbehind; +@regexp_anchor = @regexp_dollar | @regexp_caret; + +is_greedy (int id: @regexp_quantifier ref); +range_quantifier_lower_bound (unique int id: @regexp_range ref, int lo: int ref); +range_quantifier_upper_bound (unique int id: @regexp_range ref, int hi: int ref); +is_capture (unique int id: @regexp_group ref, int number: int ref); +is_named_capture (unique int id: @regexp_group ref, string name: string ref); +is_inverted (int id: @regexp_char_class ref); +regexp_const_value (unique int id: @regexp_constant ref, varchar(1) value: string ref); +char_class_escape (unique int id: @regexp_char_class_escape ref, varchar(1) value: string ref); +backref (unique int id: @regexp_backref ref, int value: int ref); +named_backref (unique int id: @regexp_backref ref, string name: string ref); +unicode_property_escapename (unique int id: @regexp_unicode_property_escape ref, string name: string ref); +unicode_property_escapevalue (unique int id: @regexp_unicode_property_escape ref, string value: string ref); + +// tokens +#keyset[toplevel, idx] +tokeninfo (unique int id: @token, + int kind: int ref, + int toplevel: @toplevel ref, + int idx: int ref, + varchar(900) value: string ref); + +case @token.kind of + 0 = @token_eof +| 1 = @token_null_literal +| 2 = @token_boolean_literal +| 3 = @token_numeric_literal +| 4 = @token_string_literal +| 5 = @token_regular_expression +| 6 = @token_identifier +| 7 = @token_keyword +| 8 = @token_punctuator; + +// associate comments with the token immediately following them (which may be EOF) +next_token (int comment: @comment ref, int token: @token ref); + +// JSON +#keyset[parent, idx] +json (unique int id: @json_value, + int kind: int ref, + int parent: @json_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); + +json_literals (varchar(900) value: string ref, + varchar(900) raw: string ref, + unique int expr: @json_value ref); + +json_properties (int obj: @json_object ref, + varchar(900) property: string ref, + int value: @json_value ref); + +json_errors (unique int id: @json_parse_error, + varchar(900) message: string ref); + +json_locations(unique int locatable: @json_locatable ref, + int location: @location_default ref); + +case @json_value.kind of + 0 = @json_null +| 1 = @json_boolean +| 2 = @json_number +| 3 = @json_string +| 4 = @json_array +| 5 = @json_object; + +@json_parent = @json_object | @json_array | @file; + +@json_locatable = @json_value | @json_parse_error; + +// locations +@ast_node = @toplevel | @stmt | @expr | @property | @typeexpr; + +@locatable = @file + | @ast_node + | @comment + | @line + | @js_parse_error | @regexp_parse_error + | @regexpterm + | @json_locatable + | @token + | @cfg_node + | @jsdoc | @jsdoc_type_expr | @jsdoc_tag + | @yaml_locatable + | @xmllocatable + | @configLocatable + | @template_placeholder_tag; + +hasLocation (unique int locatable: @locatable ref, + int location: @location ref); + +// CFG +entry_cfg_node (unique int id: @entry_node, int container: @stmt_container ref); +exit_cfg_node (unique int id: @exit_node, int container: @stmt_container ref); +guard_node (unique int id: @guard_node, int kind: int ref, int test: @expr ref); +case @guard_node.kind of + 0 = @falsy_guard +| 1 = @truthy_guard; +@condition_guard = @falsy_guard | @truthy_guard; + +@synthetic_cfg_node = @entry_node | @exit_node | @guard_node; +@cfg_node = @synthetic_cfg_node | @expr_parent; + +successor (int pred: @cfg_node ref, int succ: @cfg_node ref); + +// JSDoc comments +jsdoc (unique int id: @jsdoc, varchar(900) description: string ref, int comment: @comment ref); +#keyset[parent, idx] +jsdoc_tags (unique int id: @jsdoc_tag, varchar(900) title: string ref, + int parent: @jsdoc ref, int idx: int ref, varchar(900) tostring: string ref); +jsdoc_tag_descriptions (unique int tag: @jsdoc_tag ref, varchar(900) text: string ref); +jsdoc_tag_names (unique int tag: @jsdoc_tag ref, varchar(900) text: string ref); + +#keyset[parent, idx] +jsdoc_type_exprs (unique int id: @jsdoc_type_expr, + int kind: int ref, + int parent: @jsdoc_type_expr_parent ref, + int idx: int ref, + varchar(900) tostring: string ref); +case @jsdoc_type_expr.kind of + 0 = @jsdoc_any_type_expr +| 1 = @jsdoc_null_type_expr +| 2 = @jsdoc_undefined_type_expr +| 3 = @jsdoc_unknown_type_expr +| 4 = @jsdoc_void_type_expr +| 5 = @jsdoc_identifier_type_expr +| 6 = @jsdoc_applied_type_expr +| 7 = @jsdoc_nullable_type_expr +| 8 = @jsdoc_non_nullable_type_expr +| 9 = @jsdoc_record_type_expr +| 10 = @jsdoc_array_type_expr +| 11 = @jsdoc_union_type_expr +| 12 = @jsdoc_function_type_expr +| 13 = @jsdoc_optional_type_expr +| 14 = @jsdoc_rest_type_expr +| 15 = @jsdoc_qualified_type_expr +; + +#keyset[id, idx] +jsdoc_record_field_name (int id: @jsdoc_record_type_expr ref, int idx: int ref, varchar(900) name: string ref); +jsdoc_prefix_qualifier (int id: @jsdoc_type_expr ref); +jsdoc_has_new_parameter (int fn: @jsdoc_function_type_expr ref); + +@jsdoc_type_expr_parent = @jsdoc_type_expr | @jsdoc_tag; + +jsdoc_errors (unique int id: @jsdoc_error, int tag: @jsdoc_tag ref, varchar(900) message: string ref, varchar(900) tostring: string ref); + +@dataflownode = @expr | @function_decl_stmt | @class_decl_stmt | @namespace_declaration | @enum_declaration | @property; + +@optionalchainable = @call_expr | @propaccess; + +isOptionalChaining(int id: @optionalchainable ref); + +/** + * The time taken for the extraction of a file. + * This table contains non-deterministic content. + * + * The sum of the `time` column for each (`file`, `timerKind`) pair + * is the total time taken for extraction of `file`. The `extractionPhase` + * column provides a granular view of the extraction time of the file. + */ +extraction_time( + int file : @file ref, + // see `com.semmle.js.extractor.ExtractionMetrics.ExtractionPhase`. + int extractionPhase: int ref, + // 0 for the elapsed CPU time in nanoseconds, 1 for the elapsed wallclock time in nanoseconds + int timerKind: int ref, + float time: float ref +) + +/** +* Non-timing related data for the extraction of a single file. +* This table contains non-deterministic content. +*/ +extraction_data( + int file : @file ref, + // the absolute path to the cache file + varchar(900) cacheFile: string ref, + boolean fromCache: boolean ref, + int length: int ref +) + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/*- Configuration files with key value pairs -*/ + +configs( + unique int id: @config +); + +configNames( + unique int id: @configName, + int config: @config ref, + string name: string ref +); + +configValues( + unique int id: @configValue, + int config: @config ref, + string value: string ref +); + +configLocations( + int locatable: @configLocatable ref, + int location: @location_default ref +); + +@configLocatable = @config | @configName | @configValue; + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); diff --git a/javascript/ql/lib/upgrades/80b2bc24189307c5fd178dc2da95b45bcdb117f7/upgrade.properties b/javascript/ql/lib/upgrades/80b2bc24189307c5fd178dc2da95b45bcdb117f7/upgrade.properties new file mode 100644 index 000000000000..00fae2d3bc61 --- /dev/null +++ b/javascript/ql/lib/upgrades/80b2bc24189307c5fd178dc2da95b45bcdb117f7/upgrade.properties @@ -0,0 +1,2 @@ +description: Sections for databaseMetadata and overlayChangedFiles +compatibility: full From 82e9ea2da0ce557ead3094424a3ef8e29c5107b8 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 17:33:35 +0000 Subject: [PATCH 082/433] python: Add up/downgrade scripts --- .../old.dbscheme | 1289 +++++++++++++++++ .../semmlecode.dbscheme | 1282 ++++++++++++++++ .../upgrade.properties | 2 + .../old.dbscheme | 1282 ++++++++++++++++ .../semmlecode.python.dbscheme | 1289 +++++++++++++++++ .../upgrade.properties | 2 + 6 files changed, 5146 insertions(+) create mode 100644 python/downgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/old.dbscheme create mode 100644 python/downgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/semmlecode.dbscheme create mode 100644 python/downgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/upgrade.properties create mode 100644 python/ql/lib/upgrades/8d257a4a9bc78e39856d6cd33499389fc5148d4f/old.dbscheme create mode 100644 python/ql/lib/upgrades/8d257a4a9bc78e39856d6cd33499389fc5148d4f/semmlecode.python.dbscheme create mode 100644 python/ql/lib/upgrades/8d257a4a9bc78e39856d6cd33499389fc5148d4f/upgrade.properties diff --git a/python/downgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/old.dbscheme b/python/downgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/old.dbscheme new file mode 100644 index 000000000000..279cbb08d387 --- /dev/null +++ b/python/downgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/old.dbscheme @@ -0,0 +1,1289 @@ +/* + * This dbscheme is auto-generated by 'semmle/dbscheme_gen.py'. + * Run "make dbscheme" in python/extractor/ to regenerate. + * WARNING: Any modifications to this file will be lost. + * Relations can be changed by modifying master.py or + * by adding rules to dbscheme.template + */ + +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2020-07-02 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/*- DEPRECATED: External defects and metrics -*/ + +externalDefects( + unique int id : @externalDefect, + varchar(900) queryPath : string ref, + int location : @location ref, + varchar(900) message : string ref, + float severity : float ref +); + +externalMetrics( + unique int id : @externalMetric, + varchar(900) queryPath : string ref, + int location : @location ref, + float value : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- DEPRECATED: Snapshot date -*/ + +snapshotDate(unique date snapshotDate : date ref); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- DEPRECATED: Duplicate code -*/ + +duplicateCode( + unique int id : @duplication, + string relativePath : string ref, + int equivClass : int ref +); + +similarCode( + unique int id : @similarity, + string relativePath : string ref, + int equivClass : int ref +); + +@duplication_or_similarity = @duplication | @similarity + +tokens( + int id : @duplication_or_similarity ref, + int offset : int ref, + int beginLine : int ref, + int beginColumn : int ref, + int endLine : int ref, + int endColumn : int ref +); + +/*- DEPRECATED: Version control data -*/ + +svnentries( + unique int id : @svnentry, + string revision : string ref, + string author : string ref, + date revisionDate : date ref, + int changeSize : int ref +) + +svnaffectedfiles( + int id : @svnentry ref, + int file : @file ref, + string action : string ref +) + +svnentrymsg( + unique int id : @svnentry ref, + string message : string ref +) + +svnchurn( + int commit : @svnentry ref, + int file : @file ref, + int addedLines : int ref, + int deletedLines : int ref +) + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Python dbscheme -*/ + +/* + * Line metrics + */ +py_codelines(int id : @py_scope ref, + int count : int ref); + +py_commentlines(int id : @py_scope ref, + int count : int ref); + +py_docstringlines(int id : @py_scope ref, + int count : int ref); + +py_alllines(int id : @py_scope ref, + int count : int ref); + +/**************************** + Python dbscheme +****************************/ + +@sourceline = @file | @py_Module | @xmllocatable; + +@location = @location_ast | @location_default ; + +locations_ast(unique int id: @location_ast, + int module: @py_Module ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +file_contents(unique int file: @file ref, string contents: string ref); + +py_module_path(int module: @py_Module ref, int file: @container ref); + +variable(unique int id : @py_variable, + int scope : @py_scope ref, + varchar(1) name : string ref); + +py_line_lengths(unique int id : @py_line, + int file: @py_Module ref, + int line : int ref, + int length : int ref); + +py_extracted_version(int module : @py_Module ref, + varchar(1) version : string ref); + +/* AUTO GENERATED PART STARTS HERE */ + + +/* AnnAssign.location = 0, location */ +/* AnnAssign.value = 1, expr */ +/* AnnAssign.annotation = 2, expr */ +/* AnnAssign.target = 3, expr */ + +/* Assert.location = 0, location */ +/* Assert.test = 1, expr */ +/* Assert.msg = 2, expr */ + +/* Assign.location = 0, location */ +/* Assign.value = 1, expr */ +/* Assign.targets = 2, expr_list */ + +/* AssignExpr.location = 0, location */ +/* AssignExpr.parenthesised = 1, bool */ +/* AssignExpr.value = 2, expr */ +/* AssignExpr.target = 3, expr */ + +/* Attribute.location = 0, location */ +/* Attribute.parenthesised = 1, bool */ +/* Attribute.value = 2, expr */ +/* Attribute.attr = 3, str */ +/* Attribute.ctx = 4, expr_context */ + +/* AugAssign.location = 0, location */ +/* AugAssign.operation = 1, BinOp */ + +/* Await.location = 0, location */ +/* Await.parenthesised = 1, bool */ +/* Await.value = 2, expr */ + +/* BinaryExpr.location = 0, location */ +/* BinaryExpr.parenthesised = 1, bool */ +/* BinaryExpr.left = 2, expr */ +/* BinaryExpr.op = 3, operator */ +/* BinaryExpr.right = 4, expr */ +/* BinaryExpr = AugAssign */ + +/* BoolExpr.location = 0, location */ +/* BoolExpr.parenthesised = 1, bool */ +/* BoolExpr.op = 2, boolop */ +/* BoolExpr.values = 3, expr_list */ + +/* Break.location = 0, location */ + +/* Bytes.location = 0, location */ +/* Bytes.parenthesised = 1, bool */ +/* Bytes.s = 2, bytes */ +/* Bytes.prefix = 3, bytes */ +/* Bytes.implicitly_concatenated_parts = 4, StringPart_list */ + +/* Call.location = 0, location */ +/* Call.parenthesised = 1, bool */ +/* Call.func = 2, expr */ +/* Call.positional_args = 3, expr_list */ +/* Call.named_args = 4, dict_item_list */ + +/* Case.location = 0, location */ +/* Case.pattern = 1, pattern */ +/* Case.guard = 2, expr */ +/* Case.body = 3, stmt_list */ + +/* Class.name = 0, str */ +/* Class.body = 1, stmt_list */ +/* Class = ClassExpr */ + +/* ClassExpr.location = 0, location */ +/* ClassExpr.parenthesised = 1, bool */ +/* ClassExpr.name = 2, str */ +/* ClassExpr.bases = 3, expr_list */ +/* ClassExpr.keywords = 4, dict_item_list */ +/* ClassExpr.inner_scope = 5, Class */ +/* ClassExpr.type_parameters = 6, type_parameter_list */ + +/* Compare.location = 0, location */ +/* Compare.parenthesised = 1, bool */ +/* Compare.left = 2, expr */ +/* Compare.ops = 3, cmpop_list */ +/* Compare.comparators = 4, expr_list */ + +/* Continue.location = 0, location */ + +/* Delete.location = 0, location */ +/* Delete.targets = 1, expr_list */ + +/* Dict.location = 0, location */ +/* Dict.parenthesised = 1, bool */ +/* Dict.items = 2, dict_item_list */ + +/* DictComp.location = 0, location */ +/* DictComp.parenthesised = 1, bool */ +/* DictComp.function = 2, Function */ +/* DictComp.iterable = 3, expr */ + +/* DictUnpacking.location = 0, location */ +/* DictUnpacking.value = 1, expr */ + +/* Ellipsis.location = 0, location */ +/* Ellipsis.parenthesised = 1, bool */ + +/* ExceptGroupStmt.location = 0, location */ +/* ExceptGroupStmt.type = 1, expr */ +/* ExceptGroupStmt.name = 2, expr */ +/* ExceptGroupStmt.body = 3, stmt_list */ + +/* ExceptStmt.location = 0, location */ +/* ExceptStmt.type = 1, expr */ +/* ExceptStmt.name = 2, expr */ +/* ExceptStmt.body = 3, stmt_list */ + +/* Exec.location = 0, location */ +/* Exec.body = 1, expr */ +/* Exec.globals = 2, expr */ +/* Exec.locals = 3, expr */ + +/* ExprStmt.location = 0, location */ +/* ExprStmt.value = 1, expr */ + +/* Filter.location = 0, location */ +/* Filter.parenthesised = 1, bool */ +/* Filter.value = 2, expr */ +/* Filter.filter = 3, expr */ + +/* For.location = 0, location */ +/* For.target = 1, expr */ +/* For.iter = 2, expr */ +/* For.body = 3, stmt_list */ +/* For.orelse = 4, stmt_list */ +/* For.is_async = 5, bool */ + +/* FormattedValue.location = 0, location */ +/* FormattedValue.parenthesised = 1, bool */ +/* FormattedValue.value = 2, expr */ +/* FormattedValue.conversion = 3, str */ +/* FormattedValue.format_spec = 4, JoinedStr */ + +/* Function.name = 0, str */ +/* Function.args = 1, parameter_list */ +/* Function.vararg = 2, expr */ +/* Function.kwonlyargs = 3, expr_list */ +/* Function.kwarg = 4, expr */ +/* Function.body = 5, stmt_list */ +/* Function.is_async = 6, bool */ +/* Function.type_parameters = 7, type_parameter_list */ +/* Function = FunctionParent */ + +/* FunctionExpr.location = 0, location */ +/* FunctionExpr.parenthesised = 1, bool */ +/* FunctionExpr.name = 2, str */ +/* FunctionExpr.args = 3, arguments */ +/* FunctionExpr.returns = 4, expr */ +/* FunctionExpr.inner_scope = 5, Function */ + +/* GeneratorExp.location = 0, location */ +/* GeneratorExp.parenthesised = 1, bool */ +/* GeneratorExp.function = 2, Function */ +/* GeneratorExp.iterable = 3, expr */ + +/* Global.location = 0, location */ +/* Global.names = 1, str_list */ + +/* Guard.location = 0, location */ +/* Guard.parenthesised = 1, bool */ +/* Guard.test = 2, expr */ + +/* If.location = 0, location */ +/* If.test = 1, expr */ +/* If.body = 2, stmt_list */ +/* If.orelse = 3, stmt_list */ + +/* IfExp.location = 0, location */ +/* IfExp.parenthesised = 1, bool */ +/* IfExp.test = 2, expr */ +/* IfExp.body = 3, expr */ +/* IfExp.orelse = 4, expr */ + +/* Import.location = 0, location */ +/* Import.names = 1, alias_list */ + +/* ImportExpr.location = 0, location */ +/* ImportExpr.parenthesised = 1, bool */ +/* ImportExpr.level = 2, int */ +/* ImportExpr.name = 3, str */ +/* ImportExpr.top = 4, bool */ + +/* ImportStar.location = 0, location */ +/* ImportStar.module = 1, expr */ + +/* ImportMember.location = 0, location */ +/* ImportMember.parenthesised = 1, bool */ +/* ImportMember.module = 2, expr */ +/* ImportMember.name = 3, str */ + +/* Fstring.location = 0, location */ +/* Fstring.parenthesised = 1, bool */ +/* Fstring.values = 2, expr_list */ +/* Fstring = FormattedValue */ + +/* JoinedTemplateString.location = 0, location */ +/* JoinedTemplateString.parenthesised = 1, bool */ +/* JoinedTemplateString.strings = 2, TemplateString_list */ + +/* KeyValuePair.location = 0, location */ +/* KeyValuePair.value = 1, expr */ +/* KeyValuePair.key = 2, expr */ + +/* Lambda.location = 0, location */ +/* Lambda.parenthesised = 1, bool */ +/* Lambda.args = 2, arguments */ +/* Lambda.inner_scope = 3, Function */ + +/* List.location = 0, location */ +/* List.parenthesised = 1, bool */ +/* List.elts = 2, expr_list */ +/* List.ctx = 3, expr_context */ + +/* ListComp.location = 0, location */ +/* ListComp.parenthesised = 1, bool */ +/* ListComp.function = 2, Function */ +/* ListComp.iterable = 3, expr */ +/* ListComp.generators = 4, comprehension_list */ +/* ListComp.elt = 5, expr */ + +/* MatchStmt.location = 0, location */ +/* MatchStmt.subject = 1, expr */ +/* MatchStmt.cases = 2, stmt_list */ + +/* MatchAsPattern.location = 0, location */ +/* MatchAsPattern.parenthesised = 1, bool */ +/* MatchAsPattern.pattern = 2, pattern */ +/* MatchAsPattern.alias = 3, expr */ + +/* MatchCapturePattern.location = 0, location */ +/* MatchCapturePattern.parenthesised = 1, bool */ +/* MatchCapturePattern.variable = 2, expr */ + +/* MatchClassPattern.location = 0, location */ +/* MatchClassPattern.parenthesised = 1, bool */ +/* MatchClassPattern.class = 2, expr */ +/* MatchClassPattern.class_name = 3, expr */ +/* MatchClassPattern.positional = 4, pattern_list */ +/* MatchClassPattern.keyword = 5, pattern_list */ + +/* MatchDoubleStarPattern.location = 0, location */ +/* MatchDoubleStarPattern.parenthesised = 1, bool */ +/* MatchDoubleStarPattern.target = 2, pattern */ + +/* MatchKeyValuePattern.location = 0, location */ +/* MatchKeyValuePattern.parenthesised = 1, bool */ +/* MatchKeyValuePattern.key = 2, pattern */ +/* MatchKeyValuePattern.value = 3, pattern */ + +/* MatchKeywordPattern.location = 0, location */ +/* MatchKeywordPattern.parenthesised = 1, bool */ +/* MatchKeywordPattern.attribute = 2, expr */ +/* MatchKeywordPattern.value = 3, pattern */ + +/* MatchLiteralPattern.location = 0, location */ +/* MatchLiteralPattern.parenthesised = 1, bool */ +/* MatchLiteralPattern.literal = 2, expr */ + +/* MatchMappingPattern.location = 0, location */ +/* MatchMappingPattern.parenthesised = 1, bool */ +/* MatchMappingPattern.mappings = 2, pattern_list */ + +/* MatchOrPattern.location = 0, location */ +/* MatchOrPattern.parenthesised = 1, bool */ +/* MatchOrPattern.patterns = 2, pattern_list */ + +/* MatchSequencePattern.location = 0, location */ +/* MatchSequencePattern.parenthesised = 1, bool */ +/* MatchSequencePattern.patterns = 2, pattern_list */ + +/* MatchStarPattern.location = 0, location */ +/* MatchStarPattern.parenthesised = 1, bool */ +/* MatchStarPattern.target = 2, pattern */ + +/* MatchValuePattern.location = 0, location */ +/* MatchValuePattern.parenthesised = 1, bool */ +/* MatchValuePattern.value = 2, expr */ + +/* MatchWildcardPattern.location = 0, location */ +/* MatchWildcardPattern.parenthesised = 1, bool */ + +/* Module.name = 0, str */ +/* Module.hash = 1, str */ +/* Module.body = 2, stmt_list */ +/* Module.kind = 3, str */ + +/* Name.location = 0, location */ +/* Name.parenthesised = 1, bool */ +/* Name.variable = 2, variable */ +/* Name.ctx = 3, expr_context */ +/* Name = ParameterList */ + +/* Nonlocal.location = 0, location */ +/* Nonlocal.names = 1, str_list */ + +/* Num.location = 0, location */ +/* Num.parenthesised = 1, bool */ +/* Num.n = 2, number */ +/* Num.text = 3, number */ + +/* ParamSpec.location = 0, location */ +/* ParamSpec.name = 1, expr */ +/* ParamSpec.default = 2, expr */ + +/* Pass.location = 0, location */ + +/* PlaceHolder.location = 0, location */ +/* PlaceHolder.parenthesised = 1, bool */ +/* PlaceHolder.variable = 2, variable */ +/* PlaceHolder.ctx = 3, expr_context */ + +/* Print.location = 0, location */ +/* Print.dest = 1, expr */ +/* Print.values = 2, expr_list */ +/* Print.nl = 3, bool */ + +/* Raise.location = 0, location */ +/* Raise.exc = 1, expr */ +/* Raise.cause = 2, expr */ +/* Raise.type = 3, expr */ +/* Raise.inst = 4, expr */ +/* Raise.tback = 5, expr */ + +/* Repr.location = 0, location */ +/* Repr.parenthesised = 1, bool */ +/* Repr.value = 2, expr */ + +/* Return.location = 0, location */ +/* Return.value = 1, expr */ + +/* Set.location = 0, location */ +/* Set.parenthesised = 1, bool */ +/* Set.elts = 2, expr_list */ + +/* SetComp.location = 0, location */ +/* SetComp.parenthesised = 1, bool */ +/* SetComp.function = 2, Function */ +/* SetComp.iterable = 3, expr */ + +/* Slice.location = 0, location */ +/* Slice.parenthesised = 1, bool */ +/* Slice.start = 2, expr */ +/* Slice.stop = 3, expr */ +/* Slice.step = 4, expr */ + +/* SpecialOperation.location = 0, location */ +/* SpecialOperation.parenthesised = 1, bool */ +/* SpecialOperation.name = 2, str */ +/* SpecialOperation.arguments = 3, expr_list */ + +/* Starred.location = 0, location */ +/* Starred.parenthesised = 1, bool */ +/* Starred.value = 2, expr */ +/* Starred.ctx = 3, expr_context */ + +/* Str.location = 0, location */ +/* Str.parenthesised = 1, bool */ +/* Str.s = 2, str */ +/* Str.prefix = 3, str */ +/* Str.implicitly_concatenated_parts = 4, StringPart_list */ + +/* StringPart.text = 0, str */ +/* StringPart.location = 1, location */ +/* StringPart = StringPartList */ +/* StringPartList = BytesOrStr */ + +/* Subscript.location = 0, location */ +/* Subscript.parenthesised = 1, bool */ +/* Subscript.value = 2, expr */ +/* Subscript.index = 3, expr */ +/* Subscript.ctx = 4, expr_context */ + +/* TemplateDottedNotation.location = 0, location */ +/* TemplateDottedNotation.parenthesised = 1, bool */ +/* TemplateDottedNotation.value = 2, expr */ +/* TemplateDottedNotation.attr = 3, str */ +/* TemplateDottedNotation.ctx = 4, expr_context */ + +/* TemplateString.location = 0, location */ +/* TemplateString.parenthesised = 1, bool */ +/* TemplateString.prefix = 2, str */ +/* TemplateString.values = 3, expr_list */ +/* TemplateString = TemplateStringList */ + +/* TemplateStringPart.location = 0, location */ +/* TemplateStringPart.parenthesised = 1, bool */ +/* TemplateStringPart.text = 2, str */ +/* TemplateStringList = JoinedTemplateString */ + +/* TemplateWrite.location = 0, location */ +/* TemplateWrite.value = 1, expr */ + +/* Try.location = 0, location */ +/* Try.body = 1, stmt_list */ +/* Try.orelse = 2, stmt_list */ +/* Try.handlers = 3, stmt_list */ +/* Try.finalbody = 4, stmt_list */ + +/* Tuple.location = 0, location */ +/* Tuple.parenthesised = 1, bool */ +/* Tuple.elts = 2, expr_list */ +/* Tuple.ctx = 3, expr_context */ +/* Tuple = ParameterList */ + +/* TypeAlias.location = 0, location */ +/* TypeAlias.name = 1, expr */ +/* TypeAlias.type_parameters = 2, type_parameter_list */ +/* TypeAlias.value = 3, expr */ + +/* TypeVar.location = 0, location */ +/* TypeVar.name = 1, expr */ +/* TypeVar.bound = 2, expr */ +/* TypeVar.default = 3, expr */ + +/* TypeVarTuple.location = 0, location */ +/* TypeVarTuple.name = 1, expr */ +/* TypeVarTuple.default = 2, expr */ + +/* UnaryExpr.location = 0, location */ +/* UnaryExpr.parenthesised = 1, bool */ +/* UnaryExpr.op = 2, unaryop */ +/* UnaryExpr.operand = 3, expr */ + +/* While.location = 0, location */ +/* While.test = 1, expr */ +/* While.body = 2, stmt_list */ +/* While.orelse = 3, stmt_list */ + +/* With.location = 0, location */ +/* With.context_expr = 1, expr */ +/* With.optional_vars = 2, expr */ +/* With.body = 3, stmt_list */ +/* With.is_async = 4, bool */ + +/* Yield.location = 0, location */ +/* Yield.parenthesised = 1, bool */ +/* Yield.value = 2, expr */ + +/* YieldFrom.location = 0, location */ +/* YieldFrom.parenthesised = 1, bool */ +/* YieldFrom.value = 2, expr */ + +/* Alias.value = 0, expr */ +/* Alias.asname = 1, expr */ +/* Alias = AliasList */ +/* AliasList = Import */ + +/* Arguments.kw_defaults = 0, expr_list */ +/* Arguments.defaults = 1, expr_list */ +/* Arguments.annotations = 2, expr_list */ +/* Arguments.varargannotation = 3, expr */ +/* Arguments.kwargannotation = 4, expr */ +/* Arguments.kw_annotations = 5, expr_list */ +/* Arguments = ArgumentsParent */ +/* boolean = BoolParent */ +/* Boolop = BoolExpr */ +/* string = Bytes */ +/* Cmpop = CmpopList */ +/* CmpopList = Compare */ + +/* Comprehension.location = 0, location */ +/* Comprehension.iter = 1, expr */ +/* Comprehension.target = 2, expr */ +/* Comprehension.ifs = 3, expr_list */ +/* Comprehension = ComprehensionList */ +/* ComprehensionList = ListComp */ +/* DictItem = DictItemList */ +/* DictItemList = DictItemListParent */ + +/* Expr.location = 0, location */ +/* Expr.parenthesised = 1, bool */ +/* Expr = ExprParent */ +/* ExprContext = ExprContextParent */ +/* ExprList = ExprListParent */ +/* int = ImportExpr */ + +/* Keyword.location = 0, location */ +/* Keyword.value = 1, expr */ +/* Keyword.arg = 2, str */ +/* Location = LocationParent */ +/* string = Num */ +/* Operator = BinaryExpr */ +/* ParameterList = Function */ + +/* Pattern.location = 0, location */ +/* Pattern.parenthesised = 1, bool */ +/* Pattern = PatternParent */ +/* PatternList = PatternListParent */ + +/* Stmt.location = 0, location */ +/* Stmt = StmtList */ +/* StmtList = StmtListParent */ +/* string = StrParent */ +/* StringList = StrListParent */ + +/* TypeParameter.location = 0, location */ +/* TypeParameter = TypeParameterList */ +/* TypeParameterList = TypeParameterListParent */ +/* Unaryop = UnaryExpr */ +/* Variable = VariableParent */ +py_Classes(unique int id : @py_Class, + unique int parent : @py_ClassExpr ref); + +py_Functions(unique int id : @py_Function, + unique int parent : @py_Function_parent ref); + +py_Modules(unique int id : @py_Module); + +py_StringParts(unique int id : @py_StringPart, + int parent : @py_StringPart_list ref, + int idx : int ref); + +py_StringPart_lists(unique int id : @py_StringPart_list, + unique int parent : @py_Bytes_or_Str ref); + +py_TemplateString_lists(unique int id : @py_TemplateString_list, + unique int parent : @py_JoinedTemplateString ref); + +py_aliases(unique int id : @py_alias, + int parent : @py_alias_list ref, + int idx : int ref); + +py_alias_lists(unique int id : @py_alias_list, + unique int parent : @py_Import ref); + +py_arguments(unique int id : @py_arguments, + unique int parent : @py_arguments_parent ref); + +py_bools(int parent : @py_bool_parent ref, + int idx : int ref); + +py_boolops(unique int id : @py_boolop, + int kind: int ref, + unique int parent : @py_BoolExpr ref); + +py_bytes(varchar(1) id : string ref, + int parent : @py_Bytes ref, + int idx : int ref); + +py_cmpops(unique int id : @py_cmpop, + int kind: int ref, + int parent : @py_cmpop_list ref, + int idx : int ref); + +py_cmpop_lists(unique int id : @py_cmpop_list, + unique int parent : @py_Compare ref); + +py_comprehensions(unique int id : @py_comprehension, + int parent : @py_comprehension_list ref, + int idx : int ref); + +py_comprehension_lists(unique int id : @py_comprehension_list, + unique int parent : @py_ListComp ref); + +py_dict_items(unique int id : @py_dict_item, + int kind: int ref, + int parent : @py_dict_item_list ref, + int idx : int ref); + +py_dict_item_lists(unique int id : @py_dict_item_list, + unique int parent : @py_dict_item_list_parent ref); + +py_exprs(unique int id : @py_expr, + int kind: int ref, + int parent : @py_expr_parent ref, + int idx : int ref); + +py_expr_contexts(unique int id : @py_expr_context, + int kind: int ref, + unique int parent : @py_expr_context_parent ref); + +py_expr_lists(unique int id : @py_expr_list, + int parent : @py_expr_list_parent ref, + int idx : int ref); + +py_ints(int id : int ref, + unique int parent : @py_ImportExpr ref); + +py_locations(unique int id : @location ref, + unique int parent : @py_location_parent ref); + +py_numbers(varchar(1) id : string ref, + int parent : @py_Num ref, + int idx : int ref); + +py_operators(unique int id : @py_operator, + int kind: int ref, + unique int parent : @py_BinaryExpr ref); + +py_parameter_lists(unique int id : @py_parameter_list, + unique int parent : @py_Function ref); + +py_patterns(unique int id : @py_pattern, + int kind: int ref, + int parent : @py_pattern_parent ref, + int idx : int ref); + +py_pattern_lists(unique int id : @py_pattern_list, + int parent : @py_pattern_list_parent ref, + int idx : int ref); + +py_stmts(unique int id : @py_stmt, + int kind: int ref, + int parent : @py_stmt_list ref, + int idx : int ref); + +py_stmt_lists(unique int id : @py_stmt_list, + int parent : @py_stmt_list_parent ref, + int idx : int ref); + +py_strs(varchar(1) id : string ref, + int parent : @py_str_parent ref, + int idx : int ref); + +py_str_lists(unique int id : @py_str_list, + unique int parent : @py_str_list_parent ref); + +py_type_parameters(unique int id : @py_type_parameter, + int kind: int ref, + int parent : @py_type_parameter_list ref, + int idx : int ref); + +py_type_parameter_lists(unique int id : @py_type_parameter_list, + unique int parent : @py_type_parameter_list_parent ref); + +py_unaryops(unique int id : @py_unaryop, + int kind: int ref, + unique int parent : @py_UnaryExpr ref); + +py_variables(int id : @py_variable ref, + unique int parent : @py_variable_parent ref); + +case @py_boolop.kind of + 0 = @py_And +| 1 = @py_Or; + +case @py_cmpop.kind of + 0 = @py_Eq +| 1 = @py_Gt +| 2 = @py_GtE +| 3 = @py_In +| 4 = @py_Is +| 5 = @py_IsNot +| 6 = @py_Lt +| 7 = @py_LtE +| 8 = @py_NotEq +| 9 = @py_NotIn; + +case @py_dict_item.kind of + 0 = @py_DictUnpacking +| 1 = @py_KeyValuePair +| 2 = @py_keyword; + +case @py_expr.kind of + 0 = @py_Attribute +| 1 = @py_BinaryExpr +| 2 = @py_BoolExpr +| 3 = @py_Bytes +| 4 = @py_Call +| 5 = @py_ClassExpr +| 6 = @py_Compare +| 7 = @py_Dict +| 8 = @py_DictComp +| 9 = @py_Ellipsis +| 10 = @py_FunctionExpr +| 11 = @py_GeneratorExp +| 12 = @py_IfExp +| 13 = @py_ImportExpr +| 14 = @py_ImportMember +| 15 = @py_Lambda +| 16 = @py_List +| 17 = @py_ListComp +| 18 = @py_Guard +| 19 = @py_Name +| 20 = @py_Num +| 21 = @py_Repr +| 22 = @py_Set +| 23 = @py_SetComp +| 24 = @py_Slice +| 25 = @py_Starred +| 26 = @py_Str +| 27 = @py_Subscript +| 28 = @py_Tuple +| 29 = @py_UnaryExpr +| 30 = @py_Yield +| 31 = @py_YieldFrom +| 32 = @py_TemplateDottedNotation +| 33 = @py_Filter +| 34 = @py_PlaceHolder +| 35 = @py_Await +| 36 = @py_Fstring +| 37 = @py_FormattedValue +| 38 = @py_AssignExpr +| 39 = @py_SpecialOperation +| 40 = @py_TemplateString +| 41 = @py_JoinedTemplateString +| 42 = @py_TemplateStringPart; + +case @py_expr_context.kind of + 0 = @py_AugLoad +| 1 = @py_AugStore +| 2 = @py_Del +| 3 = @py_Load +| 4 = @py_Param +| 5 = @py_Store; + +case @py_operator.kind of + 0 = @py_Add +| 1 = @py_BitAnd +| 2 = @py_BitOr +| 3 = @py_BitXor +| 4 = @py_Div +| 5 = @py_FloorDiv +| 6 = @py_LShift +| 7 = @py_Mod +| 8 = @py_Mult +| 9 = @py_Pow +| 10 = @py_RShift +| 11 = @py_Sub +| 12 = @py_MatMult; + +case @py_pattern.kind of + 0 = @py_MatchAsPattern +| 1 = @py_MatchOrPattern +| 2 = @py_MatchLiteralPattern +| 3 = @py_MatchCapturePattern +| 4 = @py_MatchWildcardPattern +| 5 = @py_MatchValuePattern +| 6 = @py_MatchSequencePattern +| 7 = @py_MatchStarPattern +| 8 = @py_MatchMappingPattern +| 9 = @py_MatchDoubleStarPattern +| 10 = @py_MatchKeyValuePattern +| 11 = @py_MatchClassPattern +| 12 = @py_MatchKeywordPattern; + +case @py_stmt.kind of + 0 = @py_Assert +| 1 = @py_Assign +| 2 = @py_AugAssign +| 3 = @py_Break +| 4 = @py_Continue +| 5 = @py_Delete +| 6 = @py_ExceptStmt +| 7 = @py_ExceptGroupStmt +| 8 = @py_Exec +| 9 = @py_Expr_stmt +| 10 = @py_For +| 11 = @py_Global +| 12 = @py_If +| 13 = @py_Import +| 14 = @py_ImportStar +| 15 = @py_MatchStmt +| 16 = @py_Case +| 17 = @py_Nonlocal +| 18 = @py_Pass +| 19 = @py_Print +| 20 = @py_Raise +| 21 = @py_Return +| 22 = @py_Try +| 23 = @py_While +| 24 = @py_With +| 25 = @py_TemplateWrite +| 26 = @py_AnnAssign +| 27 = @py_TypeAlias; + +case @py_type_parameter.kind of + 0 = @py_ParamSpec +| 1 = @py_TypeVar +| 2 = @py_TypeVarTuple; + +case @py_unaryop.kind of + 0 = @py_Invert +| 1 = @py_Not +| 2 = @py_UAdd +| 3 = @py_USub; + +@py_Bytes_or_Str = @py_Bytes | @py_Str; + +@py_Function_parent = @py_DictComp | @py_FunctionExpr | @py_GeneratorExp | @py_Lambda | @py_ListComp | @py_SetComp; + +@py_arguments_parent = @py_FunctionExpr | @py_Lambda; + +@py_ast_node = @py_Class | @py_Function | @py_Module | @py_StringPart | @py_comprehension | @py_dict_item | @py_expr | @py_pattern | @py_stmt | @py_type_parameter; + +@py_bool_parent = @py_For | @py_Function | @py_Print | @py_With | @py_expr | @py_pattern; + +@py_dict_item_list_parent = @py_Call | @py_ClassExpr | @py_Dict; + +@py_expr_context_parent = @py_Attribute | @py_List | @py_Name | @py_PlaceHolder | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_Tuple; + +@py_expr_list_parent = @py_Assign | @py_BoolExpr | @py_Call | @py_ClassExpr | @py_Compare | @py_Delete | @py_Fstring | @py_Function | @py_List | @py_Print | @py_Set | @py_SpecialOperation | @py_TemplateString | @py_Tuple | @py_arguments | @py_comprehension; + +@py_expr_or_stmt = @py_expr | @py_stmt; + +@py_expr_parent = @py_AnnAssign | @py_Assert | @py_Assign | @py_AssignExpr | @py_Attribute | @py_AugAssign | @py_Await | @py_BinaryExpr | @py_Call | @py_Case | @py_Compare | @py_DictComp | @py_DictUnpacking | @py_ExceptGroupStmt | @py_ExceptStmt | @py_Exec | @py_Expr_stmt | @py_Filter | @py_For | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_GeneratorExp | @py_Guard | @py_If | @py_IfExp | @py_ImportMember | @py_ImportStar | @py_KeyValuePair | @py_ListComp | @py_MatchAsPattern | @py_MatchCapturePattern | @py_MatchClassPattern | @py_MatchKeywordPattern | @py_MatchLiteralPattern | @py_MatchStmt | @py_MatchValuePattern | @py_ParamSpec | @py_Print | @py_Raise | @py_Repr | @py_Return | @py_SetComp | @py_Slice | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_TemplateString_list | @py_TemplateWrite | @py_TypeAlias | @py_TypeVar | @py_TypeVarTuple | @py_UnaryExpr | @py_While | @py_With | @py_Yield | @py_YieldFrom | @py_alias | @py_arguments | @py_comprehension | @py_expr_list | @py_keyword | @py_parameter_list; + +@py_location_parent = @py_DictUnpacking | @py_KeyValuePair | @py_StringPart | @py_comprehension | @py_expr | @py_keyword | @py_pattern | @py_stmt | @py_type_parameter; + +@py_parameter = @py_Name | @py_Tuple; + +@py_pattern_list_parent = @py_MatchClassPattern | @py_MatchMappingPattern | @py_MatchOrPattern | @py_MatchSequencePattern; + +@py_pattern_parent = @py_Case | @py_MatchAsPattern | @py_MatchDoubleStarPattern | @py_MatchKeyValuePattern | @py_MatchKeywordPattern | @py_MatchStarPattern | @py_pattern_list; + +@py_scope = @py_Class | @py_Function | @py_Module; + +@py_stmt_list_parent = @py_Case | @py_Class | @py_ExceptGroupStmt | @py_ExceptStmt | @py_For | @py_Function | @py_If | @py_MatchStmt | @py_Module | @py_Try | @py_While | @py_With; + +@py_str_list_parent = @py_Global | @py_Nonlocal; + +@py_str_parent = @py_Attribute | @py_Class | @py_ClassExpr | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_ImportExpr | @py_ImportMember | @py_Module | @py_SpecialOperation | @py_Str | @py_StringPart | @py_TemplateDottedNotation | @py_TemplateString | @py_TemplateStringPart | @py_keyword | @py_str_list; + +@py_type_parameter_list_parent = @py_ClassExpr | @py_Function | @py_TypeAlias; + +@py_variable_parent = @py_Name | @py_PlaceHolder; + + +/* + * End of auto-generated part + */ + + + +/* Map relative names to absolute names for imports */ +py_absolute_names(int module : @py_Module ref, + varchar(1) relname : string ref, + varchar(1) absname : string ref); + +py_exports(int id : @py_Module ref, + varchar(1) name : string ref); + +/* Successor information */ +py_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_true_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_exception_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_false_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_flow_bb_node(unique int flownode : @py_flow_node, + int realnode : @py_ast_node ref, + int basicblock : @py_flow_node ref, + int index : int ref); + +py_scope_flow(int flow : @py_flow_node ref, + int scope : @py_scope ref, + int kind : int ref); + +py_idoms(unique int node : @py_flow_node ref, + int immediate_dominator : @py_flow_node ref); + +py_ssa_phi(int phi : @py_ssa_var ref, + int arg: @py_ssa_var ref); + +py_ssa_var(unique int id : @py_ssa_var, + int var : @py_variable ref); + +py_ssa_use(int node: @py_flow_node ref, + int var : @py_ssa_var ref); + +py_ssa_defn(unique int id : @py_ssa_var ref, + int node: @py_flow_node ref); + +@py_base_var = @py_variable | @py_ssa_var; + +py_scopes(unique int node : @py_expr_or_stmt ref, + int scope : @py_scope ref); + +py_scope_location(unique int id : @location ref, + unique int scope : @py_scope ref); + +py_flags_versioned(varchar(1) name : string ref, + varchar(1) value : string ref, + varchar(1) version : string ref); + +py_syntax_error_versioned(unique int id : @location ref, + varchar(1) message : string ref, + varchar(1) version : string ref); + +py_comments(unique int id : @py_comment, + varchar(1) text : string ref, + unique int location : @location ref); + +/* Type information support */ + +py_cobjects(unique int obj : @py_cobject); + +py_cobjecttypes(unique int obj : @py_cobject ref, + int typeof : @py_cobject ref); + +py_cobjectnames(unique int obj : @py_cobject ref, + varchar(1) name : string ref); + +/* Kind should be 0 for introspection, > 0 from source, as follows: + 1 from C extension source + */ +py_cobject_sources(int obj : @py_cobject ref, + int kind : int ref); + +py_cmembers_versioned(int object : @py_cobject ref, + varchar(1) name : string ref, + int member : @py_cobject ref, + varchar(1) version : string ref); + +py_citems(int object : @py_cobject ref, + int index : int ref, + int member : @py_cobject ref); + +ext_argtype(int funcid : @py_object ref, + int arg : int ref, + int typeid : @py_object ref); + +ext_rettype(int funcid : @py_object ref, + int typeid : @py_object ref); + +ext_proptype(int propid : @py_object ref, + int typeid : @py_object ref); + +ext_argreturn(int funcid : @py_object ref, + int arg : int ref); + +py_special_objects(unique int obj : @py_cobject ref, + unique varchar(1) name : string ref); + +py_decorated_object(int object : @py_object ref, + int level: int ref); + +@py_object = @py_cobject | @py_flow_node; + +@py_source_element = @py_ast_node | @container; + +/** The union of all Python database entities */ +@top = + @py_source_element | @py_object | @py_base_var | @location | @py_line | @py_comment | + @py_expr_parent | @py_expr_context | + @py_operator | @py_boolop | @py_cmpop | @py_unaryop | + @py_cmpop_list | @py_alias_list | @py_StringPart_list | @py_comprehension_list | @py_dict_item_list | @py_pattern_list | @py_stmt_list | @py_str_list | @py_type_parameter_list | + @externalDefect | @externalMetric | @externalDataElement | @duplication_or_similarity | @svnentry | + @xmllocatable | @yaml_locatable; diff --git a/python/downgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/semmlecode.dbscheme b/python/downgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/semmlecode.dbscheme new file mode 100644 index 000000000000..8d257a4a9bc7 --- /dev/null +++ b/python/downgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/semmlecode.dbscheme @@ -0,0 +1,1282 @@ +/* + * This dbscheme is auto-generated by 'semmle/dbscheme_gen.py'. + * WARNING: Any modifications to this file will be lost. + * Relations can be changed by modifying master.py or + * by adding rules to dbscheme.template + */ + +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2020-07-02 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/*- DEPRECATED: External defects and metrics -*/ + +externalDefects( + unique int id : @externalDefect, + varchar(900) queryPath : string ref, + int location : @location ref, + varchar(900) message : string ref, + float severity : float ref +); + +externalMetrics( + unique int id : @externalMetric, + varchar(900) queryPath : string ref, + int location : @location ref, + float value : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit the tuple `databaseMetadata("isOverlay", "true")`, + * along with an `overlayChangedFiles` tuple for each new/modified/deleted file, + * when building an overlay database, and these can be used by the discard predicates. + */ +databaseMetadata( + string metadataKey : string ref, + string value : string ref +); + +overlayChangedFiles( + string path : string ref +); + +/*- DEPRECATED: Snapshot date -*/ + +snapshotDate(unique date snapshotDate : date ref); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- DEPRECATED: Duplicate code -*/ + +duplicateCode( + unique int id : @duplication, + string relativePath : string ref, + int equivClass : int ref +); + +similarCode( + unique int id : @similarity, + string relativePath : string ref, + int equivClass : int ref +); + +@duplication_or_similarity = @duplication | @similarity + +tokens( + int id : @duplication_or_similarity ref, + int offset : int ref, + int beginLine : int ref, + int beginColumn : int ref, + int endLine : int ref, + int endColumn : int ref +); + +/*- DEPRECATED: Version control data -*/ + +svnentries( + unique int id : @svnentry, + string revision : string ref, + string author : string ref, + date revisionDate : date ref, + int changeSize : int ref +) + +svnaffectedfiles( + int id : @svnentry ref, + int file : @file ref, + string action : string ref +) + +svnentrymsg( + unique int id : @svnentry ref, + string message : string ref +) + +svnchurn( + int commit : @svnentry ref, + int file : @file ref, + int addedLines : int ref, + int deletedLines : int ref +) + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Python dbscheme -*/ + +/* + * Line metrics + */ +py_codelines(int id : @py_scope ref, + int count : int ref); + +py_commentlines(int id : @py_scope ref, + int count : int ref); + +py_docstringlines(int id : @py_scope ref, + int count : int ref); + +py_alllines(int id : @py_scope ref, + int count : int ref); + +/**************************** + Python dbscheme +****************************/ + +@sourceline = @file | @py_Module | @xmllocatable; + +@location = @location_ast | @location_default ; + +locations_ast(unique int id: @location_ast, + int module: @py_Module ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +file_contents(unique int file: @file ref, string contents: string ref); + +py_module_path(int module: @py_Module ref, int file: @container ref); + +variable(unique int id : @py_variable, + int scope : @py_scope ref, + varchar(1) name : string ref); + +py_line_lengths(unique int id : @py_line, + int file: @py_Module ref, + int line : int ref, + int length : int ref); + +py_extracted_version(int module : @py_Module ref, + varchar(1) version : string ref); + +/* AUTO GENERATED PART STARTS HERE */ + + +/* AnnAssign.location = 0, location */ +/* AnnAssign.value = 1, expr */ +/* AnnAssign.annotation = 2, expr */ +/* AnnAssign.target = 3, expr */ + +/* Assert.location = 0, location */ +/* Assert.test = 1, expr */ +/* Assert.msg = 2, expr */ + +/* Assign.location = 0, location */ +/* Assign.value = 1, expr */ +/* Assign.targets = 2, expr_list */ + +/* AssignExpr.location = 0, location */ +/* AssignExpr.parenthesised = 1, bool */ +/* AssignExpr.value = 2, expr */ +/* AssignExpr.target = 3, expr */ + +/* Attribute.location = 0, location */ +/* Attribute.parenthesised = 1, bool */ +/* Attribute.value = 2, expr */ +/* Attribute.attr = 3, str */ +/* Attribute.ctx = 4, expr_context */ + +/* AugAssign.location = 0, location */ +/* AugAssign.operation = 1, BinOp */ + +/* Await.location = 0, location */ +/* Await.parenthesised = 1, bool */ +/* Await.value = 2, expr */ + +/* BinaryExpr.location = 0, location */ +/* BinaryExpr.parenthesised = 1, bool */ +/* BinaryExpr.left = 2, expr */ +/* BinaryExpr.op = 3, operator */ +/* BinaryExpr.right = 4, expr */ +/* BinaryExpr = AugAssign */ + +/* BoolExpr.location = 0, location */ +/* BoolExpr.parenthesised = 1, bool */ +/* BoolExpr.op = 2, boolop */ +/* BoolExpr.values = 3, expr_list */ + +/* Break.location = 0, location */ + +/* Bytes.location = 0, location */ +/* Bytes.parenthesised = 1, bool */ +/* Bytes.s = 2, bytes */ +/* Bytes.prefix = 3, bytes */ +/* Bytes.implicitly_concatenated_parts = 4, StringPart_list */ + +/* Call.location = 0, location */ +/* Call.parenthesised = 1, bool */ +/* Call.func = 2, expr */ +/* Call.positional_args = 3, expr_list */ +/* Call.named_args = 4, dict_item_list */ + +/* Case.location = 0, location */ +/* Case.pattern = 1, pattern */ +/* Case.guard = 2, expr */ +/* Case.body = 3, stmt_list */ + +/* Class.name = 0, str */ +/* Class.body = 1, stmt_list */ +/* Class = ClassExpr */ + +/* ClassExpr.location = 0, location */ +/* ClassExpr.parenthesised = 1, bool */ +/* ClassExpr.name = 2, str */ +/* ClassExpr.bases = 3, expr_list */ +/* ClassExpr.keywords = 4, dict_item_list */ +/* ClassExpr.inner_scope = 5, Class */ +/* ClassExpr.type_parameters = 6, type_parameter_list */ + +/* Compare.location = 0, location */ +/* Compare.parenthesised = 1, bool */ +/* Compare.left = 2, expr */ +/* Compare.ops = 3, cmpop_list */ +/* Compare.comparators = 4, expr_list */ + +/* Continue.location = 0, location */ + +/* Delete.location = 0, location */ +/* Delete.targets = 1, expr_list */ + +/* Dict.location = 0, location */ +/* Dict.parenthesised = 1, bool */ +/* Dict.items = 2, dict_item_list */ + +/* DictComp.location = 0, location */ +/* DictComp.parenthesised = 1, bool */ +/* DictComp.function = 2, Function */ +/* DictComp.iterable = 3, expr */ + +/* DictUnpacking.location = 0, location */ +/* DictUnpacking.value = 1, expr */ + +/* Ellipsis.location = 0, location */ +/* Ellipsis.parenthesised = 1, bool */ + +/* ExceptGroupStmt.location = 0, location */ +/* ExceptGroupStmt.type = 1, expr */ +/* ExceptGroupStmt.name = 2, expr */ +/* ExceptGroupStmt.body = 3, stmt_list */ + +/* ExceptStmt.location = 0, location */ +/* ExceptStmt.type = 1, expr */ +/* ExceptStmt.name = 2, expr */ +/* ExceptStmt.body = 3, stmt_list */ + +/* Exec.location = 0, location */ +/* Exec.body = 1, expr */ +/* Exec.globals = 2, expr */ +/* Exec.locals = 3, expr */ + +/* ExprStmt.location = 0, location */ +/* ExprStmt.value = 1, expr */ + +/* Filter.location = 0, location */ +/* Filter.parenthesised = 1, bool */ +/* Filter.value = 2, expr */ +/* Filter.filter = 3, expr */ + +/* For.location = 0, location */ +/* For.target = 1, expr */ +/* For.iter = 2, expr */ +/* For.body = 3, stmt_list */ +/* For.orelse = 4, stmt_list */ +/* For.is_async = 5, bool */ + +/* FormattedValue.location = 0, location */ +/* FormattedValue.parenthesised = 1, bool */ +/* FormattedValue.value = 2, expr */ +/* FormattedValue.conversion = 3, str */ +/* FormattedValue.format_spec = 4, JoinedStr */ + +/* Function.name = 0, str */ +/* Function.args = 1, parameter_list */ +/* Function.vararg = 2, expr */ +/* Function.kwonlyargs = 3, expr_list */ +/* Function.kwarg = 4, expr */ +/* Function.body = 5, stmt_list */ +/* Function.is_async = 6, bool */ +/* Function.type_parameters = 7, type_parameter_list */ +/* Function = FunctionParent */ + +/* FunctionExpr.location = 0, location */ +/* FunctionExpr.parenthesised = 1, bool */ +/* FunctionExpr.name = 2, str */ +/* FunctionExpr.args = 3, arguments */ +/* FunctionExpr.returns = 4, expr */ +/* FunctionExpr.inner_scope = 5, Function */ + +/* GeneratorExp.location = 0, location */ +/* GeneratorExp.parenthesised = 1, bool */ +/* GeneratorExp.function = 2, Function */ +/* GeneratorExp.iterable = 3, expr */ + +/* Global.location = 0, location */ +/* Global.names = 1, str_list */ + +/* Guard.location = 0, location */ +/* Guard.parenthesised = 1, bool */ +/* Guard.test = 2, expr */ + +/* If.location = 0, location */ +/* If.test = 1, expr */ +/* If.body = 2, stmt_list */ +/* If.orelse = 3, stmt_list */ + +/* IfExp.location = 0, location */ +/* IfExp.parenthesised = 1, bool */ +/* IfExp.test = 2, expr */ +/* IfExp.body = 3, expr */ +/* IfExp.orelse = 4, expr */ + +/* Import.location = 0, location */ +/* Import.names = 1, alias_list */ + +/* ImportExpr.location = 0, location */ +/* ImportExpr.parenthesised = 1, bool */ +/* ImportExpr.level = 2, int */ +/* ImportExpr.name = 3, str */ +/* ImportExpr.top = 4, bool */ + +/* ImportStar.location = 0, location */ +/* ImportStar.module = 1, expr */ + +/* ImportMember.location = 0, location */ +/* ImportMember.parenthesised = 1, bool */ +/* ImportMember.module = 2, expr */ +/* ImportMember.name = 3, str */ + +/* Fstring.location = 0, location */ +/* Fstring.parenthesised = 1, bool */ +/* Fstring.values = 2, expr_list */ +/* Fstring = FormattedValue */ + +/* JoinedTemplateString.location = 0, location */ +/* JoinedTemplateString.parenthesised = 1, bool */ +/* JoinedTemplateString.strings = 2, TemplateString_list */ + +/* KeyValuePair.location = 0, location */ +/* KeyValuePair.value = 1, expr */ +/* KeyValuePair.key = 2, expr */ + +/* Lambda.location = 0, location */ +/* Lambda.parenthesised = 1, bool */ +/* Lambda.args = 2, arguments */ +/* Lambda.inner_scope = 3, Function */ + +/* List.location = 0, location */ +/* List.parenthesised = 1, bool */ +/* List.elts = 2, expr_list */ +/* List.ctx = 3, expr_context */ + +/* ListComp.location = 0, location */ +/* ListComp.parenthesised = 1, bool */ +/* ListComp.function = 2, Function */ +/* ListComp.iterable = 3, expr */ +/* ListComp.generators = 4, comprehension_list */ +/* ListComp.elt = 5, expr */ + +/* MatchStmt.location = 0, location */ +/* MatchStmt.subject = 1, expr */ +/* MatchStmt.cases = 2, stmt_list */ + +/* MatchAsPattern.location = 0, location */ +/* MatchAsPattern.parenthesised = 1, bool */ +/* MatchAsPattern.pattern = 2, pattern */ +/* MatchAsPattern.alias = 3, expr */ + +/* MatchCapturePattern.location = 0, location */ +/* MatchCapturePattern.parenthesised = 1, bool */ +/* MatchCapturePattern.variable = 2, expr */ + +/* MatchClassPattern.location = 0, location */ +/* MatchClassPattern.parenthesised = 1, bool */ +/* MatchClassPattern.class = 2, expr */ +/* MatchClassPattern.class_name = 3, expr */ +/* MatchClassPattern.positional = 4, pattern_list */ +/* MatchClassPattern.keyword = 5, pattern_list */ + +/* MatchDoubleStarPattern.location = 0, location */ +/* MatchDoubleStarPattern.parenthesised = 1, bool */ +/* MatchDoubleStarPattern.target = 2, pattern */ + +/* MatchKeyValuePattern.location = 0, location */ +/* MatchKeyValuePattern.parenthesised = 1, bool */ +/* MatchKeyValuePattern.key = 2, pattern */ +/* MatchKeyValuePattern.value = 3, pattern */ + +/* MatchKeywordPattern.location = 0, location */ +/* MatchKeywordPattern.parenthesised = 1, bool */ +/* MatchKeywordPattern.attribute = 2, expr */ +/* MatchKeywordPattern.value = 3, pattern */ + +/* MatchLiteralPattern.location = 0, location */ +/* MatchLiteralPattern.parenthesised = 1, bool */ +/* MatchLiteralPattern.literal = 2, expr */ + +/* MatchMappingPattern.location = 0, location */ +/* MatchMappingPattern.parenthesised = 1, bool */ +/* MatchMappingPattern.mappings = 2, pattern_list */ + +/* MatchOrPattern.location = 0, location */ +/* MatchOrPattern.parenthesised = 1, bool */ +/* MatchOrPattern.patterns = 2, pattern_list */ + +/* MatchSequencePattern.location = 0, location */ +/* MatchSequencePattern.parenthesised = 1, bool */ +/* MatchSequencePattern.patterns = 2, pattern_list */ + +/* MatchStarPattern.location = 0, location */ +/* MatchStarPattern.parenthesised = 1, bool */ +/* MatchStarPattern.target = 2, pattern */ + +/* MatchValuePattern.location = 0, location */ +/* MatchValuePattern.parenthesised = 1, bool */ +/* MatchValuePattern.value = 2, expr */ + +/* MatchWildcardPattern.location = 0, location */ +/* MatchWildcardPattern.parenthesised = 1, bool */ + +/* Module.name = 0, str */ +/* Module.hash = 1, str */ +/* Module.body = 2, stmt_list */ +/* Module.kind = 3, str */ + +/* Name.location = 0, location */ +/* Name.parenthesised = 1, bool */ +/* Name.variable = 2, variable */ +/* Name.ctx = 3, expr_context */ +/* Name = ParameterList */ + +/* Nonlocal.location = 0, location */ +/* Nonlocal.names = 1, str_list */ + +/* Num.location = 0, location */ +/* Num.parenthesised = 1, bool */ +/* Num.n = 2, number */ +/* Num.text = 3, number */ + +/* ParamSpec.location = 0, location */ +/* ParamSpec.name = 1, expr */ +/* ParamSpec.default = 2, expr */ + +/* Pass.location = 0, location */ + +/* PlaceHolder.location = 0, location */ +/* PlaceHolder.parenthesised = 1, bool */ +/* PlaceHolder.variable = 2, variable */ +/* PlaceHolder.ctx = 3, expr_context */ + +/* Print.location = 0, location */ +/* Print.dest = 1, expr */ +/* Print.values = 2, expr_list */ +/* Print.nl = 3, bool */ + +/* Raise.location = 0, location */ +/* Raise.exc = 1, expr */ +/* Raise.cause = 2, expr */ +/* Raise.type = 3, expr */ +/* Raise.inst = 4, expr */ +/* Raise.tback = 5, expr */ + +/* Repr.location = 0, location */ +/* Repr.parenthesised = 1, bool */ +/* Repr.value = 2, expr */ + +/* Return.location = 0, location */ +/* Return.value = 1, expr */ + +/* Set.location = 0, location */ +/* Set.parenthesised = 1, bool */ +/* Set.elts = 2, expr_list */ + +/* SetComp.location = 0, location */ +/* SetComp.parenthesised = 1, bool */ +/* SetComp.function = 2, Function */ +/* SetComp.iterable = 3, expr */ + +/* Slice.location = 0, location */ +/* Slice.parenthesised = 1, bool */ +/* Slice.start = 2, expr */ +/* Slice.stop = 3, expr */ +/* Slice.step = 4, expr */ + +/* SpecialOperation.location = 0, location */ +/* SpecialOperation.parenthesised = 1, bool */ +/* SpecialOperation.name = 2, str */ +/* SpecialOperation.arguments = 3, expr_list */ + +/* Starred.location = 0, location */ +/* Starred.parenthesised = 1, bool */ +/* Starred.value = 2, expr */ +/* Starred.ctx = 3, expr_context */ + +/* Str.location = 0, location */ +/* Str.parenthesised = 1, bool */ +/* Str.s = 2, str */ +/* Str.prefix = 3, str */ +/* Str.implicitly_concatenated_parts = 4, StringPart_list */ + +/* StringPart.text = 0, str */ +/* StringPart.location = 1, location */ +/* StringPart = StringPartList */ +/* StringPartList = BytesOrStr */ + +/* Subscript.location = 0, location */ +/* Subscript.parenthesised = 1, bool */ +/* Subscript.value = 2, expr */ +/* Subscript.index = 3, expr */ +/* Subscript.ctx = 4, expr_context */ + +/* TemplateDottedNotation.location = 0, location */ +/* TemplateDottedNotation.parenthesised = 1, bool */ +/* TemplateDottedNotation.value = 2, expr */ +/* TemplateDottedNotation.attr = 3, str */ +/* TemplateDottedNotation.ctx = 4, expr_context */ + +/* TemplateString.location = 0, location */ +/* TemplateString.parenthesised = 1, bool */ +/* TemplateString.prefix = 2, str */ +/* TemplateString.values = 3, expr_list */ +/* TemplateString = TemplateStringList */ + +/* TemplateStringPart.location = 0, location */ +/* TemplateStringPart.parenthesised = 1, bool */ +/* TemplateStringPart.text = 2, str */ +/* TemplateStringList = JoinedTemplateString */ + +/* TemplateWrite.location = 0, location */ +/* TemplateWrite.value = 1, expr */ + +/* Try.location = 0, location */ +/* Try.body = 1, stmt_list */ +/* Try.orelse = 2, stmt_list */ +/* Try.handlers = 3, stmt_list */ +/* Try.finalbody = 4, stmt_list */ + +/* Tuple.location = 0, location */ +/* Tuple.parenthesised = 1, bool */ +/* Tuple.elts = 2, expr_list */ +/* Tuple.ctx = 3, expr_context */ +/* Tuple = ParameterList */ + +/* TypeAlias.location = 0, location */ +/* TypeAlias.name = 1, expr */ +/* TypeAlias.type_parameters = 2, type_parameter_list */ +/* TypeAlias.value = 3, expr */ + +/* TypeVar.location = 0, location */ +/* TypeVar.name = 1, expr */ +/* TypeVar.bound = 2, expr */ +/* TypeVar.default = 3, expr */ + +/* TypeVarTuple.location = 0, location */ +/* TypeVarTuple.name = 1, expr */ +/* TypeVarTuple.default = 2, expr */ + +/* UnaryExpr.location = 0, location */ +/* UnaryExpr.parenthesised = 1, bool */ +/* UnaryExpr.op = 2, unaryop */ +/* UnaryExpr.operand = 3, expr */ + +/* While.location = 0, location */ +/* While.test = 1, expr */ +/* While.body = 2, stmt_list */ +/* While.orelse = 3, stmt_list */ + +/* With.location = 0, location */ +/* With.context_expr = 1, expr */ +/* With.optional_vars = 2, expr */ +/* With.body = 3, stmt_list */ +/* With.is_async = 4, bool */ + +/* Yield.location = 0, location */ +/* Yield.parenthesised = 1, bool */ +/* Yield.value = 2, expr */ + +/* YieldFrom.location = 0, location */ +/* YieldFrom.parenthesised = 1, bool */ +/* YieldFrom.value = 2, expr */ + +/* Alias.value = 0, expr */ +/* Alias.asname = 1, expr */ +/* Alias = AliasList */ +/* AliasList = Import */ + +/* Arguments.kw_defaults = 0, expr_list */ +/* Arguments.defaults = 1, expr_list */ +/* Arguments.annotations = 2, expr_list */ +/* Arguments.varargannotation = 3, expr */ +/* Arguments.kwargannotation = 4, expr */ +/* Arguments.kw_annotations = 5, expr_list */ +/* Arguments = ArgumentsParent */ +/* boolean = BoolParent */ +/* Boolop = BoolExpr */ +/* string = Bytes */ +/* Cmpop = CmpopList */ +/* CmpopList = Compare */ + +/* Comprehension.location = 0, location */ +/* Comprehension.iter = 1, expr */ +/* Comprehension.target = 2, expr */ +/* Comprehension.ifs = 3, expr_list */ +/* Comprehension = ComprehensionList */ +/* ComprehensionList = ListComp */ +/* DictItem = DictItemList */ +/* DictItemList = DictItemListParent */ + +/* Expr.location = 0, location */ +/* Expr.parenthesised = 1, bool */ +/* Expr = ExprParent */ +/* ExprContext = ExprContextParent */ +/* ExprList = ExprListParent */ +/* int = ImportExpr */ + +/* Keyword.location = 0, location */ +/* Keyword.value = 1, expr */ +/* Keyword.arg = 2, str */ +/* Location = LocationParent */ +/* string = Num */ +/* Operator = BinaryExpr */ +/* ParameterList = Function */ + +/* Pattern.location = 0, location */ +/* Pattern.parenthesised = 1, bool */ +/* Pattern = PatternParent */ +/* PatternList = PatternListParent */ + +/* Stmt.location = 0, location */ +/* Stmt = StmtList */ +/* StmtList = StmtListParent */ +/* string = StrParent */ +/* StringList = StrListParent */ + +/* TypeParameter.location = 0, location */ +/* TypeParameter = TypeParameterList */ +/* TypeParameterList = TypeParameterListParent */ +/* Unaryop = UnaryExpr */ +/* Variable = VariableParent */ +py_Classes(unique int id : @py_Class, + unique int parent : @py_ClassExpr ref); + +py_Functions(unique int id : @py_Function, + unique int parent : @py_Function_parent ref); + +py_Modules(unique int id : @py_Module); + +py_StringParts(unique int id : @py_StringPart, + int parent : @py_StringPart_list ref, + int idx : int ref); + +py_StringPart_lists(unique int id : @py_StringPart_list, + unique int parent : @py_Bytes_or_Str ref); + +py_TemplateString_lists(unique int id : @py_TemplateString_list, + unique int parent : @py_JoinedTemplateString ref); + +py_aliases(unique int id : @py_alias, + int parent : @py_alias_list ref, + int idx : int ref); + +py_alias_lists(unique int id : @py_alias_list, + unique int parent : @py_Import ref); + +py_arguments(unique int id : @py_arguments, + unique int parent : @py_arguments_parent ref); + +py_bools(int parent : @py_bool_parent ref, + int idx : int ref); + +py_boolops(unique int id : @py_boolop, + int kind: int ref, + unique int parent : @py_BoolExpr ref); + +py_bytes(varchar(1) id : string ref, + int parent : @py_Bytes ref, + int idx : int ref); + +py_cmpops(unique int id : @py_cmpop, + int kind: int ref, + int parent : @py_cmpop_list ref, + int idx : int ref); + +py_cmpop_lists(unique int id : @py_cmpop_list, + unique int parent : @py_Compare ref); + +py_comprehensions(unique int id : @py_comprehension, + int parent : @py_comprehension_list ref, + int idx : int ref); + +py_comprehension_lists(unique int id : @py_comprehension_list, + unique int parent : @py_ListComp ref); + +py_dict_items(unique int id : @py_dict_item, + int kind: int ref, + int parent : @py_dict_item_list ref, + int idx : int ref); + +py_dict_item_lists(unique int id : @py_dict_item_list, + unique int parent : @py_dict_item_list_parent ref); + +py_exprs(unique int id : @py_expr, + int kind: int ref, + int parent : @py_expr_parent ref, + int idx : int ref); + +py_expr_contexts(unique int id : @py_expr_context, + int kind: int ref, + unique int parent : @py_expr_context_parent ref); + +py_expr_lists(unique int id : @py_expr_list, + int parent : @py_expr_list_parent ref, + int idx : int ref); + +py_ints(int id : int ref, + unique int parent : @py_ImportExpr ref); + +py_locations(unique int id : @location ref, + unique int parent : @py_location_parent ref); + +py_numbers(varchar(1) id : string ref, + int parent : @py_Num ref, + int idx : int ref); + +py_operators(unique int id : @py_operator, + int kind: int ref, + unique int parent : @py_BinaryExpr ref); + +py_parameter_lists(unique int id : @py_parameter_list, + unique int parent : @py_Function ref); + +py_patterns(unique int id : @py_pattern, + int kind: int ref, + int parent : @py_pattern_parent ref, + int idx : int ref); + +py_pattern_lists(unique int id : @py_pattern_list, + int parent : @py_pattern_list_parent ref, + int idx : int ref); + +py_stmts(unique int id : @py_stmt, + int kind: int ref, + int parent : @py_stmt_list ref, + int idx : int ref); + +py_stmt_lists(unique int id : @py_stmt_list, + int parent : @py_stmt_list_parent ref, + int idx : int ref); + +py_strs(varchar(1) id : string ref, + int parent : @py_str_parent ref, + int idx : int ref); + +py_str_lists(unique int id : @py_str_list, + unique int parent : @py_str_list_parent ref); + +py_type_parameters(unique int id : @py_type_parameter, + int kind: int ref, + int parent : @py_type_parameter_list ref, + int idx : int ref); + +py_type_parameter_lists(unique int id : @py_type_parameter_list, + unique int parent : @py_type_parameter_list_parent ref); + +py_unaryops(unique int id : @py_unaryop, + int kind: int ref, + unique int parent : @py_UnaryExpr ref); + +py_variables(int id : @py_variable ref, + unique int parent : @py_variable_parent ref); + +case @py_boolop.kind of + 0 = @py_And +| 1 = @py_Or; + +case @py_cmpop.kind of + 0 = @py_Eq +| 1 = @py_Gt +| 2 = @py_GtE +| 3 = @py_In +| 4 = @py_Is +| 5 = @py_IsNot +| 6 = @py_Lt +| 7 = @py_LtE +| 8 = @py_NotEq +| 9 = @py_NotIn; + +case @py_dict_item.kind of + 0 = @py_DictUnpacking +| 1 = @py_KeyValuePair +| 2 = @py_keyword; + +case @py_expr.kind of + 0 = @py_Attribute +| 1 = @py_BinaryExpr +| 2 = @py_BoolExpr +| 3 = @py_Bytes +| 4 = @py_Call +| 5 = @py_ClassExpr +| 6 = @py_Compare +| 7 = @py_Dict +| 8 = @py_DictComp +| 9 = @py_Ellipsis +| 10 = @py_FunctionExpr +| 11 = @py_GeneratorExp +| 12 = @py_IfExp +| 13 = @py_ImportExpr +| 14 = @py_ImportMember +| 15 = @py_Lambda +| 16 = @py_List +| 17 = @py_ListComp +| 18 = @py_Guard +| 19 = @py_Name +| 20 = @py_Num +| 21 = @py_Repr +| 22 = @py_Set +| 23 = @py_SetComp +| 24 = @py_Slice +| 25 = @py_Starred +| 26 = @py_Str +| 27 = @py_Subscript +| 28 = @py_Tuple +| 29 = @py_UnaryExpr +| 30 = @py_Yield +| 31 = @py_YieldFrom +| 32 = @py_TemplateDottedNotation +| 33 = @py_Filter +| 34 = @py_PlaceHolder +| 35 = @py_Await +| 36 = @py_Fstring +| 37 = @py_FormattedValue +| 38 = @py_AssignExpr +| 39 = @py_SpecialOperation +| 40 = @py_TemplateString +| 41 = @py_JoinedTemplateString +| 42 = @py_TemplateStringPart; + +case @py_expr_context.kind of + 0 = @py_AugLoad +| 1 = @py_AugStore +| 2 = @py_Del +| 3 = @py_Load +| 4 = @py_Param +| 5 = @py_Store; + +case @py_operator.kind of + 0 = @py_Add +| 1 = @py_BitAnd +| 2 = @py_BitOr +| 3 = @py_BitXor +| 4 = @py_Div +| 5 = @py_FloorDiv +| 6 = @py_LShift +| 7 = @py_Mod +| 8 = @py_Mult +| 9 = @py_Pow +| 10 = @py_RShift +| 11 = @py_Sub +| 12 = @py_MatMult; + +case @py_pattern.kind of + 0 = @py_MatchAsPattern +| 1 = @py_MatchOrPattern +| 2 = @py_MatchLiteralPattern +| 3 = @py_MatchCapturePattern +| 4 = @py_MatchWildcardPattern +| 5 = @py_MatchValuePattern +| 6 = @py_MatchSequencePattern +| 7 = @py_MatchStarPattern +| 8 = @py_MatchMappingPattern +| 9 = @py_MatchDoubleStarPattern +| 10 = @py_MatchKeyValuePattern +| 11 = @py_MatchClassPattern +| 12 = @py_MatchKeywordPattern; + +case @py_stmt.kind of + 0 = @py_Assert +| 1 = @py_Assign +| 2 = @py_AugAssign +| 3 = @py_Break +| 4 = @py_Continue +| 5 = @py_Delete +| 6 = @py_ExceptStmt +| 7 = @py_ExceptGroupStmt +| 8 = @py_Exec +| 9 = @py_Expr_stmt +| 10 = @py_For +| 11 = @py_Global +| 12 = @py_If +| 13 = @py_Import +| 14 = @py_ImportStar +| 15 = @py_MatchStmt +| 16 = @py_Case +| 17 = @py_Nonlocal +| 18 = @py_Pass +| 19 = @py_Print +| 20 = @py_Raise +| 21 = @py_Return +| 22 = @py_Try +| 23 = @py_While +| 24 = @py_With +| 25 = @py_TemplateWrite +| 26 = @py_AnnAssign +| 27 = @py_TypeAlias; + +case @py_type_parameter.kind of + 0 = @py_ParamSpec +| 1 = @py_TypeVar +| 2 = @py_TypeVarTuple; + +case @py_unaryop.kind of + 0 = @py_Invert +| 1 = @py_Not +| 2 = @py_UAdd +| 3 = @py_USub; + +@py_Bytes_or_Str = @py_Bytes | @py_Str; + +@py_Function_parent = @py_DictComp | @py_FunctionExpr | @py_GeneratorExp | @py_Lambda | @py_ListComp | @py_SetComp; + +@py_arguments_parent = @py_FunctionExpr | @py_Lambda; + +@py_ast_node = @py_Class | @py_Function | @py_Module | @py_StringPart | @py_comprehension | @py_dict_item | @py_expr | @py_pattern | @py_stmt | @py_type_parameter; + +@py_bool_parent = @py_For | @py_Function | @py_Print | @py_With | @py_expr | @py_pattern; + +@py_dict_item_list_parent = @py_Call | @py_ClassExpr | @py_Dict; + +@py_expr_context_parent = @py_Attribute | @py_List | @py_Name | @py_PlaceHolder | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_Tuple; + +@py_expr_list_parent = @py_Assign | @py_BoolExpr | @py_Call | @py_ClassExpr | @py_Compare | @py_Delete | @py_Fstring | @py_Function | @py_List | @py_Print | @py_Set | @py_SpecialOperation | @py_TemplateString | @py_Tuple | @py_arguments | @py_comprehension; + +@py_expr_or_stmt = @py_expr | @py_stmt; + +@py_expr_parent = @py_AnnAssign | @py_Assert | @py_Assign | @py_AssignExpr | @py_Attribute | @py_AugAssign | @py_Await | @py_BinaryExpr | @py_Call | @py_Case | @py_Compare | @py_DictComp | @py_DictUnpacking | @py_ExceptGroupStmt | @py_ExceptStmt | @py_Exec | @py_Expr_stmt | @py_Filter | @py_For | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_GeneratorExp | @py_Guard | @py_If | @py_IfExp | @py_ImportMember | @py_ImportStar | @py_KeyValuePair | @py_ListComp | @py_MatchAsPattern | @py_MatchCapturePattern | @py_MatchClassPattern | @py_MatchKeywordPattern | @py_MatchLiteralPattern | @py_MatchStmt | @py_MatchValuePattern | @py_ParamSpec | @py_Print | @py_Raise | @py_Repr | @py_Return | @py_SetComp | @py_Slice | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_TemplateString_list | @py_TemplateWrite | @py_TypeAlias | @py_TypeVar | @py_TypeVarTuple | @py_UnaryExpr | @py_While | @py_With | @py_Yield | @py_YieldFrom | @py_alias | @py_arguments | @py_comprehension | @py_expr_list | @py_keyword | @py_parameter_list; + +@py_location_parent = @py_DictUnpacking | @py_KeyValuePair | @py_StringPart | @py_comprehension | @py_expr | @py_keyword | @py_pattern | @py_stmt | @py_type_parameter; + +@py_parameter = @py_Name | @py_Tuple; + +@py_pattern_list_parent = @py_MatchClassPattern | @py_MatchMappingPattern | @py_MatchOrPattern | @py_MatchSequencePattern; + +@py_pattern_parent = @py_Case | @py_MatchAsPattern | @py_MatchDoubleStarPattern | @py_MatchKeyValuePattern | @py_MatchKeywordPattern | @py_MatchStarPattern | @py_pattern_list; + +@py_scope = @py_Class | @py_Function | @py_Module; + +@py_stmt_list_parent = @py_Case | @py_Class | @py_ExceptGroupStmt | @py_ExceptStmt | @py_For | @py_Function | @py_If | @py_MatchStmt | @py_Module | @py_Try | @py_While | @py_With; + +@py_str_list_parent = @py_Global | @py_Nonlocal; + +@py_str_parent = @py_Attribute | @py_Class | @py_ClassExpr | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_ImportExpr | @py_ImportMember | @py_Module | @py_SpecialOperation | @py_Str | @py_StringPart | @py_TemplateDottedNotation | @py_TemplateString | @py_TemplateStringPart | @py_keyword | @py_str_list; + +@py_type_parameter_list_parent = @py_ClassExpr | @py_Function | @py_TypeAlias; + +@py_variable_parent = @py_Name | @py_PlaceHolder; + + +/* + * End of auto-generated part + */ + + + +/* Map relative names to absolute names for imports */ +py_absolute_names(int module : @py_Module ref, + varchar(1) relname : string ref, + varchar(1) absname : string ref); + +py_exports(int id : @py_Module ref, + varchar(1) name : string ref); + +/* Successor information */ +py_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_true_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_exception_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_false_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_flow_bb_node(unique int flownode : @py_flow_node, + int realnode : @py_ast_node ref, + int basicblock : @py_flow_node ref, + int index : int ref); + +py_scope_flow(int flow : @py_flow_node ref, + int scope : @py_scope ref, + int kind : int ref); + +py_idoms(unique int node : @py_flow_node ref, + int immediate_dominator : @py_flow_node ref); + +py_ssa_phi(int phi : @py_ssa_var ref, + int arg: @py_ssa_var ref); + +py_ssa_var(unique int id : @py_ssa_var, + int var : @py_variable ref); + +py_ssa_use(int node: @py_flow_node ref, + int var : @py_ssa_var ref); + +py_ssa_defn(unique int id : @py_ssa_var ref, + int node: @py_flow_node ref); + +@py_base_var = @py_variable | @py_ssa_var; + +py_scopes(unique int node : @py_expr_or_stmt ref, + int scope : @py_scope ref); + +py_scope_location(unique int id : @location ref, + unique int scope : @py_scope ref); + +py_flags_versioned(varchar(1) name : string ref, + varchar(1) value : string ref, + varchar(1) version : string ref); + +py_syntax_error_versioned(unique int id : @location ref, + varchar(1) message : string ref, + varchar(1) version : string ref); + +py_comments(unique int id : @py_comment, + varchar(1) text : string ref, + unique int location : @location ref); + +/* Type information support */ + +py_cobjects(unique int obj : @py_cobject); + +py_cobjecttypes(unique int obj : @py_cobject ref, + int typeof : @py_cobject ref); + +py_cobjectnames(unique int obj : @py_cobject ref, + varchar(1) name : string ref); + +/* Kind should be 0 for introspection, > 0 from source, as follows: + 1 from C extension source + */ +py_cobject_sources(int obj : @py_cobject ref, + int kind : int ref); + +py_cmembers_versioned(int object : @py_cobject ref, + varchar(1) name : string ref, + int member : @py_cobject ref, + varchar(1) version : string ref); + +py_citems(int object : @py_cobject ref, + int index : int ref, + int member : @py_cobject ref); + +ext_argtype(int funcid : @py_object ref, + int arg : int ref, + int typeid : @py_object ref); + +ext_rettype(int funcid : @py_object ref, + int typeid : @py_object ref); + +ext_proptype(int propid : @py_object ref, + int typeid : @py_object ref); + +ext_argreturn(int funcid : @py_object ref, + int arg : int ref); + +py_special_objects(unique int obj : @py_cobject ref, + unique varchar(1) name : string ref); + +py_decorated_object(int object : @py_object ref, + int level: int ref); + +@py_object = @py_cobject | @py_flow_node; + +@py_source_element = @py_ast_node | @container; + +/** The union of all Python database entities */ +@top = + @py_source_element | @py_object | @py_base_var | @location | @py_line | @py_comment | + @py_expr_parent | @py_expr_context | + @py_operator | @py_boolop | @py_cmpop | @py_unaryop | + @py_cmpop_list | @py_alias_list | @py_StringPart_list | @py_comprehension_list | @py_dict_item_list | @py_pattern_list | @py_stmt_list | @py_str_list | @py_type_parameter_list | + @externalDefect | @externalMetric | @externalDataElement | @duplication_or_similarity | @svnentry | + @xmllocatable | @yaml_locatable; diff --git a/python/downgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/upgrade.properties b/python/downgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/upgrade.properties new file mode 100644 index 000000000000..00fae2d3bc61 --- /dev/null +++ b/python/downgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/upgrade.properties @@ -0,0 +1,2 @@ +description: Sections for databaseMetadata and overlayChangedFiles +compatibility: full diff --git a/python/ql/lib/upgrades/8d257a4a9bc78e39856d6cd33499389fc5148d4f/old.dbscheme b/python/ql/lib/upgrades/8d257a4a9bc78e39856d6cd33499389fc5148d4f/old.dbscheme new file mode 100644 index 000000000000..8d257a4a9bc7 --- /dev/null +++ b/python/ql/lib/upgrades/8d257a4a9bc78e39856d6cd33499389fc5148d4f/old.dbscheme @@ -0,0 +1,1282 @@ +/* + * This dbscheme is auto-generated by 'semmle/dbscheme_gen.py'. + * WARNING: Any modifications to this file will be lost. + * Relations can be changed by modifying master.py or + * by adding rules to dbscheme.template + */ + +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2020-07-02 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/*- DEPRECATED: External defects and metrics -*/ + +externalDefects( + unique int id : @externalDefect, + varchar(900) queryPath : string ref, + int location : @location ref, + varchar(900) message : string ref, + float severity : float ref +); + +externalMetrics( + unique int id : @externalMetric, + varchar(900) queryPath : string ref, + int location : @location ref, + float value : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit the tuple `databaseMetadata("isOverlay", "true")`, + * along with an `overlayChangedFiles` tuple for each new/modified/deleted file, + * when building an overlay database, and these can be used by the discard predicates. + */ +databaseMetadata( + string metadataKey : string ref, + string value : string ref +); + +overlayChangedFiles( + string path : string ref +); + +/*- DEPRECATED: Snapshot date -*/ + +snapshotDate(unique date snapshotDate : date ref); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- DEPRECATED: Duplicate code -*/ + +duplicateCode( + unique int id : @duplication, + string relativePath : string ref, + int equivClass : int ref +); + +similarCode( + unique int id : @similarity, + string relativePath : string ref, + int equivClass : int ref +); + +@duplication_or_similarity = @duplication | @similarity + +tokens( + int id : @duplication_or_similarity ref, + int offset : int ref, + int beginLine : int ref, + int beginColumn : int ref, + int endLine : int ref, + int endColumn : int ref +); + +/*- DEPRECATED: Version control data -*/ + +svnentries( + unique int id : @svnentry, + string revision : string ref, + string author : string ref, + date revisionDate : date ref, + int changeSize : int ref +) + +svnaffectedfiles( + int id : @svnentry ref, + int file : @file ref, + string action : string ref +) + +svnentrymsg( + unique int id : @svnentry ref, + string message : string ref +) + +svnchurn( + int commit : @svnentry ref, + int file : @file ref, + int addedLines : int ref, + int deletedLines : int ref +) + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Python dbscheme -*/ + +/* + * Line metrics + */ +py_codelines(int id : @py_scope ref, + int count : int ref); + +py_commentlines(int id : @py_scope ref, + int count : int ref); + +py_docstringlines(int id : @py_scope ref, + int count : int ref); + +py_alllines(int id : @py_scope ref, + int count : int ref); + +/**************************** + Python dbscheme +****************************/ + +@sourceline = @file | @py_Module | @xmllocatable; + +@location = @location_ast | @location_default ; + +locations_ast(unique int id: @location_ast, + int module: @py_Module ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +file_contents(unique int file: @file ref, string contents: string ref); + +py_module_path(int module: @py_Module ref, int file: @container ref); + +variable(unique int id : @py_variable, + int scope : @py_scope ref, + varchar(1) name : string ref); + +py_line_lengths(unique int id : @py_line, + int file: @py_Module ref, + int line : int ref, + int length : int ref); + +py_extracted_version(int module : @py_Module ref, + varchar(1) version : string ref); + +/* AUTO GENERATED PART STARTS HERE */ + + +/* AnnAssign.location = 0, location */ +/* AnnAssign.value = 1, expr */ +/* AnnAssign.annotation = 2, expr */ +/* AnnAssign.target = 3, expr */ + +/* Assert.location = 0, location */ +/* Assert.test = 1, expr */ +/* Assert.msg = 2, expr */ + +/* Assign.location = 0, location */ +/* Assign.value = 1, expr */ +/* Assign.targets = 2, expr_list */ + +/* AssignExpr.location = 0, location */ +/* AssignExpr.parenthesised = 1, bool */ +/* AssignExpr.value = 2, expr */ +/* AssignExpr.target = 3, expr */ + +/* Attribute.location = 0, location */ +/* Attribute.parenthesised = 1, bool */ +/* Attribute.value = 2, expr */ +/* Attribute.attr = 3, str */ +/* Attribute.ctx = 4, expr_context */ + +/* AugAssign.location = 0, location */ +/* AugAssign.operation = 1, BinOp */ + +/* Await.location = 0, location */ +/* Await.parenthesised = 1, bool */ +/* Await.value = 2, expr */ + +/* BinaryExpr.location = 0, location */ +/* BinaryExpr.parenthesised = 1, bool */ +/* BinaryExpr.left = 2, expr */ +/* BinaryExpr.op = 3, operator */ +/* BinaryExpr.right = 4, expr */ +/* BinaryExpr = AugAssign */ + +/* BoolExpr.location = 0, location */ +/* BoolExpr.parenthesised = 1, bool */ +/* BoolExpr.op = 2, boolop */ +/* BoolExpr.values = 3, expr_list */ + +/* Break.location = 0, location */ + +/* Bytes.location = 0, location */ +/* Bytes.parenthesised = 1, bool */ +/* Bytes.s = 2, bytes */ +/* Bytes.prefix = 3, bytes */ +/* Bytes.implicitly_concatenated_parts = 4, StringPart_list */ + +/* Call.location = 0, location */ +/* Call.parenthesised = 1, bool */ +/* Call.func = 2, expr */ +/* Call.positional_args = 3, expr_list */ +/* Call.named_args = 4, dict_item_list */ + +/* Case.location = 0, location */ +/* Case.pattern = 1, pattern */ +/* Case.guard = 2, expr */ +/* Case.body = 3, stmt_list */ + +/* Class.name = 0, str */ +/* Class.body = 1, stmt_list */ +/* Class = ClassExpr */ + +/* ClassExpr.location = 0, location */ +/* ClassExpr.parenthesised = 1, bool */ +/* ClassExpr.name = 2, str */ +/* ClassExpr.bases = 3, expr_list */ +/* ClassExpr.keywords = 4, dict_item_list */ +/* ClassExpr.inner_scope = 5, Class */ +/* ClassExpr.type_parameters = 6, type_parameter_list */ + +/* Compare.location = 0, location */ +/* Compare.parenthesised = 1, bool */ +/* Compare.left = 2, expr */ +/* Compare.ops = 3, cmpop_list */ +/* Compare.comparators = 4, expr_list */ + +/* Continue.location = 0, location */ + +/* Delete.location = 0, location */ +/* Delete.targets = 1, expr_list */ + +/* Dict.location = 0, location */ +/* Dict.parenthesised = 1, bool */ +/* Dict.items = 2, dict_item_list */ + +/* DictComp.location = 0, location */ +/* DictComp.parenthesised = 1, bool */ +/* DictComp.function = 2, Function */ +/* DictComp.iterable = 3, expr */ + +/* DictUnpacking.location = 0, location */ +/* DictUnpacking.value = 1, expr */ + +/* Ellipsis.location = 0, location */ +/* Ellipsis.parenthesised = 1, bool */ + +/* ExceptGroupStmt.location = 0, location */ +/* ExceptGroupStmt.type = 1, expr */ +/* ExceptGroupStmt.name = 2, expr */ +/* ExceptGroupStmt.body = 3, stmt_list */ + +/* ExceptStmt.location = 0, location */ +/* ExceptStmt.type = 1, expr */ +/* ExceptStmt.name = 2, expr */ +/* ExceptStmt.body = 3, stmt_list */ + +/* Exec.location = 0, location */ +/* Exec.body = 1, expr */ +/* Exec.globals = 2, expr */ +/* Exec.locals = 3, expr */ + +/* ExprStmt.location = 0, location */ +/* ExprStmt.value = 1, expr */ + +/* Filter.location = 0, location */ +/* Filter.parenthesised = 1, bool */ +/* Filter.value = 2, expr */ +/* Filter.filter = 3, expr */ + +/* For.location = 0, location */ +/* For.target = 1, expr */ +/* For.iter = 2, expr */ +/* For.body = 3, stmt_list */ +/* For.orelse = 4, stmt_list */ +/* For.is_async = 5, bool */ + +/* FormattedValue.location = 0, location */ +/* FormattedValue.parenthesised = 1, bool */ +/* FormattedValue.value = 2, expr */ +/* FormattedValue.conversion = 3, str */ +/* FormattedValue.format_spec = 4, JoinedStr */ + +/* Function.name = 0, str */ +/* Function.args = 1, parameter_list */ +/* Function.vararg = 2, expr */ +/* Function.kwonlyargs = 3, expr_list */ +/* Function.kwarg = 4, expr */ +/* Function.body = 5, stmt_list */ +/* Function.is_async = 6, bool */ +/* Function.type_parameters = 7, type_parameter_list */ +/* Function = FunctionParent */ + +/* FunctionExpr.location = 0, location */ +/* FunctionExpr.parenthesised = 1, bool */ +/* FunctionExpr.name = 2, str */ +/* FunctionExpr.args = 3, arguments */ +/* FunctionExpr.returns = 4, expr */ +/* FunctionExpr.inner_scope = 5, Function */ + +/* GeneratorExp.location = 0, location */ +/* GeneratorExp.parenthesised = 1, bool */ +/* GeneratorExp.function = 2, Function */ +/* GeneratorExp.iterable = 3, expr */ + +/* Global.location = 0, location */ +/* Global.names = 1, str_list */ + +/* Guard.location = 0, location */ +/* Guard.parenthesised = 1, bool */ +/* Guard.test = 2, expr */ + +/* If.location = 0, location */ +/* If.test = 1, expr */ +/* If.body = 2, stmt_list */ +/* If.orelse = 3, stmt_list */ + +/* IfExp.location = 0, location */ +/* IfExp.parenthesised = 1, bool */ +/* IfExp.test = 2, expr */ +/* IfExp.body = 3, expr */ +/* IfExp.orelse = 4, expr */ + +/* Import.location = 0, location */ +/* Import.names = 1, alias_list */ + +/* ImportExpr.location = 0, location */ +/* ImportExpr.parenthesised = 1, bool */ +/* ImportExpr.level = 2, int */ +/* ImportExpr.name = 3, str */ +/* ImportExpr.top = 4, bool */ + +/* ImportStar.location = 0, location */ +/* ImportStar.module = 1, expr */ + +/* ImportMember.location = 0, location */ +/* ImportMember.parenthesised = 1, bool */ +/* ImportMember.module = 2, expr */ +/* ImportMember.name = 3, str */ + +/* Fstring.location = 0, location */ +/* Fstring.parenthesised = 1, bool */ +/* Fstring.values = 2, expr_list */ +/* Fstring = FormattedValue */ + +/* JoinedTemplateString.location = 0, location */ +/* JoinedTemplateString.parenthesised = 1, bool */ +/* JoinedTemplateString.strings = 2, TemplateString_list */ + +/* KeyValuePair.location = 0, location */ +/* KeyValuePair.value = 1, expr */ +/* KeyValuePair.key = 2, expr */ + +/* Lambda.location = 0, location */ +/* Lambda.parenthesised = 1, bool */ +/* Lambda.args = 2, arguments */ +/* Lambda.inner_scope = 3, Function */ + +/* List.location = 0, location */ +/* List.parenthesised = 1, bool */ +/* List.elts = 2, expr_list */ +/* List.ctx = 3, expr_context */ + +/* ListComp.location = 0, location */ +/* ListComp.parenthesised = 1, bool */ +/* ListComp.function = 2, Function */ +/* ListComp.iterable = 3, expr */ +/* ListComp.generators = 4, comprehension_list */ +/* ListComp.elt = 5, expr */ + +/* MatchStmt.location = 0, location */ +/* MatchStmt.subject = 1, expr */ +/* MatchStmt.cases = 2, stmt_list */ + +/* MatchAsPattern.location = 0, location */ +/* MatchAsPattern.parenthesised = 1, bool */ +/* MatchAsPattern.pattern = 2, pattern */ +/* MatchAsPattern.alias = 3, expr */ + +/* MatchCapturePattern.location = 0, location */ +/* MatchCapturePattern.parenthesised = 1, bool */ +/* MatchCapturePattern.variable = 2, expr */ + +/* MatchClassPattern.location = 0, location */ +/* MatchClassPattern.parenthesised = 1, bool */ +/* MatchClassPattern.class = 2, expr */ +/* MatchClassPattern.class_name = 3, expr */ +/* MatchClassPattern.positional = 4, pattern_list */ +/* MatchClassPattern.keyword = 5, pattern_list */ + +/* MatchDoubleStarPattern.location = 0, location */ +/* MatchDoubleStarPattern.parenthesised = 1, bool */ +/* MatchDoubleStarPattern.target = 2, pattern */ + +/* MatchKeyValuePattern.location = 0, location */ +/* MatchKeyValuePattern.parenthesised = 1, bool */ +/* MatchKeyValuePattern.key = 2, pattern */ +/* MatchKeyValuePattern.value = 3, pattern */ + +/* MatchKeywordPattern.location = 0, location */ +/* MatchKeywordPattern.parenthesised = 1, bool */ +/* MatchKeywordPattern.attribute = 2, expr */ +/* MatchKeywordPattern.value = 3, pattern */ + +/* MatchLiteralPattern.location = 0, location */ +/* MatchLiteralPattern.parenthesised = 1, bool */ +/* MatchLiteralPattern.literal = 2, expr */ + +/* MatchMappingPattern.location = 0, location */ +/* MatchMappingPattern.parenthesised = 1, bool */ +/* MatchMappingPattern.mappings = 2, pattern_list */ + +/* MatchOrPattern.location = 0, location */ +/* MatchOrPattern.parenthesised = 1, bool */ +/* MatchOrPattern.patterns = 2, pattern_list */ + +/* MatchSequencePattern.location = 0, location */ +/* MatchSequencePattern.parenthesised = 1, bool */ +/* MatchSequencePattern.patterns = 2, pattern_list */ + +/* MatchStarPattern.location = 0, location */ +/* MatchStarPattern.parenthesised = 1, bool */ +/* MatchStarPattern.target = 2, pattern */ + +/* MatchValuePattern.location = 0, location */ +/* MatchValuePattern.parenthesised = 1, bool */ +/* MatchValuePattern.value = 2, expr */ + +/* MatchWildcardPattern.location = 0, location */ +/* MatchWildcardPattern.parenthesised = 1, bool */ + +/* Module.name = 0, str */ +/* Module.hash = 1, str */ +/* Module.body = 2, stmt_list */ +/* Module.kind = 3, str */ + +/* Name.location = 0, location */ +/* Name.parenthesised = 1, bool */ +/* Name.variable = 2, variable */ +/* Name.ctx = 3, expr_context */ +/* Name = ParameterList */ + +/* Nonlocal.location = 0, location */ +/* Nonlocal.names = 1, str_list */ + +/* Num.location = 0, location */ +/* Num.parenthesised = 1, bool */ +/* Num.n = 2, number */ +/* Num.text = 3, number */ + +/* ParamSpec.location = 0, location */ +/* ParamSpec.name = 1, expr */ +/* ParamSpec.default = 2, expr */ + +/* Pass.location = 0, location */ + +/* PlaceHolder.location = 0, location */ +/* PlaceHolder.parenthesised = 1, bool */ +/* PlaceHolder.variable = 2, variable */ +/* PlaceHolder.ctx = 3, expr_context */ + +/* Print.location = 0, location */ +/* Print.dest = 1, expr */ +/* Print.values = 2, expr_list */ +/* Print.nl = 3, bool */ + +/* Raise.location = 0, location */ +/* Raise.exc = 1, expr */ +/* Raise.cause = 2, expr */ +/* Raise.type = 3, expr */ +/* Raise.inst = 4, expr */ +/* Raise.tback = 5, expr */ + +/* Repr.location = 0, location */ +/* Repr.parenthesised = 1, bool */ +/* Repr.value = 2, expr */ + +/* Return.location = 0, location */ +/* Return.value = 1, expr */ + +/* Set.location = 0, location */ +/* Set.parenthesised = 1, bool */ +/* Set.elts = 2, expr_list */ + +/* SetComp.location = 0, location */ +/* SetComp.parenthesised = 1, bool */ +/* SetComp.function = 2, Function */ +/* SetComp.iterable = 3, expr */ + +/* Slice.location = 0, location */ +/* Slice.parenthesised = 1, bool */ +/* Slice.start = 2, expr */ +/* Slice.stop = 3, expr */ +/* Slice.step = 4, expr */ + +/* SpecialOperation.location = 0, location */ +/* SpecialOperation.parenthesised = 1, bool */ +/* SpecialOperation.name = 2, str */ +/* SpecialOperation.arguments = 3, expr_list */ + +/* Starred.location = 0, location */ +/* Starred.parenthesised = 1, bool */ +/* Starred.value = 2, expr */ +/* Starred.ctx = 3, expr_context */ + +/* Str.location = 0, location */ +/* Str.parenthesised = 1, bool */ +/* Str.s = 2, str */ +/* Str.prefix = 3, str */ +/* Str.implicitly_concatenated_parts = 4, StringPart_list */ + +/* StringPart.text = 0, str */ +/* StringPart.location = 1, location */ +/* StringPart = StringPartList */ +/* StringPartList = BytesOrStr */ + +/* Subscript.location = 0, location */ +/* Subscript.parenthesised = 1, bool */ +/* Subscript.value = 2, expr */ +/* Subscript.index = 3, expr */ +/* Subscript.ctx = 4, expr_context */ + +/* TemplateDottedNotation.location = 0, location */ +/* TemplateDottedNotation.parenthesised = 1, bool */ +/* TemplateDottedNotation.value = 2, expr */ +/* TemplateDottedNotation.attr = 3, str */ +/* TemplateDottedNotation.ctx = 4, expr_context */ + +/* TemplateString.location = 0, location */ +/* TemplateString.parenthesised = 1, bool */ +/* TemplateString.prefix = 2, str */ +/* TemplateString.values = 3, expr_list */ +/* TemplateString = TemplateStringList */ + +/* TemplateStringPart.location = 0, location */ +/* TemplateStringPart.parenthesised = 1, bool */ +/* TemplateStringPart.text = 2, str */ +/* TemplateStringList = JoinedTemplateString */ + +/* TemplateWrite.location = 0, location */ +/* TemplateWrite.value = 1, expr */ + +/* Try.location = 0, location */ +/* Try.body = 1, stmt_list */ +/* Try.orelse = 2, stmt_list */ +/* Try.handlers = 3, stmt_list */ +/* Try.finalbody = 4, stmt_list */ + +/* Tuple.location = 0, location */ +/* Tuple.parenthesised = 1, bool */ +/* Tuple.elts = 2, expr_list */ +/* Tuple.ctx = 3, expr_context */ +/* Tuple = ParameterList */ + +/* TypeAlias.location = 0, location */ +/* TypeAlias.name = 1, expr */ +/* TypeAlias.type_parameters = 2, type_parameter_list */ +/* TypeAlias.value = 3, expr */ + +/* TypeVar.location = 0, location */ +/* TypeVar.name = 1, expr */ +/* TypeVar.bound = 2, expr */ +/* TypeVar.default = 3, expr */ + +/* TypeVarTuple.location = 0, location */ +/* TypeVarTuple.name = 1, expr */ +/* TypeVarTuple.default = 2, expr */ + +/* UnaryExpr.location = 0, location */ +/* UnaryExpr.parenthesised = 1, bool */ +/* UnaryExpr.op = 2, unaryop */ +/* UnaryExpr.operand = 3, expr */ + +/* While.location = 0, location */ +/* While.test = 1, expr */ +/* While.body = 2, stmt_list */ +/* While.orelse = 3, stmt_list */ + +/* With.location = 0, location */ +/* With.context_expr = 1, expr */ +/* With.optional_vars = 2, expr */ +/* With.body = 3, stmt_list */ +/* With.is_async = 4, bool */ + +/* Yield.location = 0, location */ +/* Yield.parenthesised = 1, bool */ +/* Yield.value = 2, expr */ + +/* YieldFrom.location = 0, location */ +/* YieldFrom.parenthesised = 1, bool */ +/* YieldFrom.value = 2, expr */ + +/* Alias.value = 0, expr */ +/* Alias.asname = 1, expr */ +/* Alias = AliasList */ +/* AliasList = Import */ + +/* Arguments.kw_defaults = 0, expr_list */ +/* Arguments.defaults = 1, expr_list */ +/* Arguments.annotations = 2, expr_list */ +/* Arguments.varargannotation = 3, expr */ +/* Arguments.kwargannotation = 4, expr */ +/* Arguments.kw_annotations = 5, expr_list */ +/* Arguments = ArgumentsParent */ +/* boolean = BoolParent */ +/* Boolop = BoolExpr */ +/* string = Bytes */ +/* Cmpop = CmpopList */ +/* CmpopList = Compare */ + +/* Comprehension.location = 0, location */ +/* Comprehension.iter = 1, expr */ +/* Comprehension.target = 2, expr */ +/* Comprehension.ifs = 3, expr_list */ +/* Comprehension = ComprehensionList */ +/* ComprehensionList = ListComp */ +/* DictItem = DictItemList */ +/* DictItemList = DictItemListParent */ + +/* Expr.location = 0, location */ +/* Expr.parenthesised = 1, bool */ +/* Expr = ExprParent */ +/* ExprContext = ExprContextParent */ +/* ExprList = ExprListParent */ +/* int = ImportExpr */ + +/* Keyword.location = 0, location */ +/* Keyword.value = 1, expr */ +/* Keyword.arg = 2, str */ +/* Location = LocationParent */ +/* string = Num */ +/* Operator = BinaryExpr */ +/* ParameterList = Function */ + +/* Pattern.location = 0, location */ +/* Pattern.parenthesised = 1, bool */ +/* Pattern = PatternParent */ +/* PatternList = PatternListParent */ + +/* Stmt.location = 0, location */ +/* Stmt = StmtList */ +/* StmtList = StmtListParent */ +/* string = StrParent */ +/* StringList = StrListParent */ + +/* TypeParameter.location = 0, location */ +/* TypeParameter = TypeParameterList */ +/* TypeParameterList = TypeParameterListParent */ +/* Unaryop = UnaryExpr */ +/* Variable = VariableParent */ +py_Classes(unique int id : @py_Class, + unique int parent : @py_ClassExpr ref); + +py_Functions(unique int id : @py_Function, + unique int parent : @py_Function_parent ref); + +py_Modules(unique int id : @py_Module); + +py_StringParts(unique int id : @py_StringPart, + int parent : @py_StringPart_list ref, + int idx : int ref); + +py_StringPart_lists(unique int id : @py_StringPart_list, + unique int parent : @py_Bytes_or_Str ref); + +py_TemplateString_lists(unique int id : @py_TemplateString_list, + unique int parent : @py_JoinedTemplateString ref); + +py_aliases(unique int id : @py_alias, + int parent : @py_alias_list ref, + int idx : int ref); + +py_alias_lists(unique int id : @py_alias_list, + unique int parent : @py_Import ref); + +py_arguments(unique int id : @py_arguments, + unique int parent : @py_arguments_parent ref); + +py_bools(int parent : @py_bool_parent ref, + int idx : int ref); + +py_boolops(unique int id : @py_boolop, + int kind: int ref, + unique int parent : @py_BoolExpr ref); + +py_bytes(varchar(1) id : string ref, + int parent : @py_Bytes ref, + int idx : int ref); + +py_cmpops(unique int id : @py_cmpop, + int kind: int ref, + int parent : @py_cmpop_list ref, + int idx : int ref); + +py_cmpop_lists(unique int id : @py_cmpop_list, + unique int parent : @py_Compare ref); + +py_comprehensions(unique int id : @py_comprehension, + int parent : @py_comprehension_list ref, + int idx : int ref); + +py_comprehension_lists(unique int id : @py_comprehension_list, + unique int parent : @py_ListComp ref); + +py_dict_items(unique int id : @py_dict_item, + int kind: int ref, + int parent : @py_dict_item_list ref, + int idx : int ref); + +py_dict_item_lists(unique int id : @py_dict_item_list, + unique int parent : @py_dict_item_list_parent ref); + +py_exprs(unique int id : @py_expr, + int kind: int ref, + int parent : @py_expr_parent ref, + int idx : int ref); + +py_expr_contexts(unique int id : @py_expr_context, + int kind: int ref, + unique int parent : @py_expr_context_parent ref); + +py_expr_lists(unique int id : @py_expr_list, + int parent : @py_expr_list_parent ref, + int idx : int ref); + +py_ints(int id : int ref, + unique int parent : @py_ImportExpr ref); + +py_locations(unique int id : @location ref, + unique int parent : @py_location_parent ref); + +py_numbers(varchar(1) id : string ref, + int parent : @py_Num ref, + int idx : int ref); + +py_operators(unique int id : @py_operator, + int kind: int ref, + unique int parent : @py_BinaryExpr ref); + +py_parameter_lists(unique int id : @py_parameter_list, + unique int parent : @py_Function ref); + +py_patterns(unique int id : @py_pattern, + int kind: int ref, + int parent : @py_pattern_parent ref, + int idx : int ref); + +py_pattern_lists(unique int id : @py_pattern_list, + int parent : @py_pattern_list_parent ref, + int idx : int ref); + +py_stmts(unique int id : @py_stmt, + int kind: int ref, + int parent : @py_stmt_list ref, + int idx : int ref); + +py_stmt_lists(unique int id : @py_stmt_list, + int parent : @py_stmt_list_parent ref, + int idx : int ref); + +py_strs(varchar(1) id : string ref, + int parent : @py_str_parent ref, + int idx : int ref); + +py_str_lists(unique int id : @py_str_list, + unique int parent : @py_str_list_parent ref); + +py_type_parameters(unique int id : @py_type_parameter, + int kind: int ref, + int parent : @py_type_parameter_list ref, + int idx : int ref); + +py_type_parameter_lists(unique int id : @py_type_parameter_list, + unique int parent : @py_type_parameter_list_parent ref); + +py_unaryops(unique int id : @py_unaryop, + int kind: int ref, + unique int parent : @py_UnaryExpr ref); + +py_variables(int id : @py_variable ref, + unique int parent : @py_variable_parent ref); + +case @py_boolop.kind of + 0 = @py_And +| 1 = @py_Or; + +case @py_cmpop.kind of + 0 = @py_Eq +| 1 = @py_Gt +| 2 = @py_GtE +| 3 = @py_In +| 4 = @py_Is +| 5 = @py_IsNot +| 6 = @py_Lt +| 7 = @py_LtE +| 8 = @py_NotEq +| 9 = @py_NotIn; + +case @py_dict_item.kind of + 0 = @py_DictUnpacking +| 1 = @py_KeyValuePair +| 2 = @py_keyword; + +case @py_expr.kind of + 0 = @py_Attribute +| 1 = @py_BinaryExpr +| 2 = @py_BoolExpr +| 3 = @py_Bytes +| 4 = @py_Call +| 5 = @py_ClassExpr +| 6 = @py_Compare +| 7 = @py_Dict +| 8 = @py_DictComp +| 9 = @py_Ellipsis +| 10 = @py_FunctionExpr +| 11 = @py_GeneratorExp +| 12 = @py_IfExp +| 13 = @py_ImportExpr +| 14 = @py_ImportMember +| 15 = @py_Lambda +| 16 = @py_List +| 17 = @py_ListComp +| 18 = @py_Guard +| 19 = @py_Name +| 20 = @py_Num +| 21 = @py_Repr +| 22 = @py_Set +| 23 = @py_SetComp +| 24 = @py_Slice +| 25 = @py_Starred +| 26 = @py_Str +| 27 = @py_Subscript +| 28 = @py_Tuple +| 29 = @py_UnaryExpr +| 30 = @py_Yield +| 31 = @py_YieldFrom +| 32 = @py_TemplateDottedNotation +| 33 = @py_Filter +| 34 = @py_PlaceHolder +| 35 = @py_Await +| 36 = @py_Fstring +| 37 = @py_FormattedValue +| 38 = @py_AssignExpr +| 39 = @py_SpecialOperation +| 40 = @py_TemplateString +| 41 = @py_JoinedTemplateString +| 42 = @py_TemplateStringPart; + +case @py_expr_context.kind of + 0 = @py_AugLoad +| 1 = @py_AugStore +| 2 = @py_Del +| 3 = @py_Load +| 4 = @py_Param +| 5 = @py_Store; + +case @py_operator.kind of + 0 = @py_Add +| 1 = @py_BitAnd +| 2 = @py_BitOr +| 3 = @py_BitXor +| 4 = @py_Div +| 5 = @py_FloorDiv +| 6 = @py_LShift +| 7 = @py_Mod +| 8 = @py_Mult +| 9 = @py_Pow +| 10 = @py_RShift +| 11 = @py_Sub +| 12 = @py_MatMult; + +case @py_pattern.kind of + 0 = @py_MatchAsPattern +| 1 = @py_MatchOrPattern +| 2 = @py_MatchLiteralPattern +| 3 = @py_MatchCapturePattern +| 4 = @py_MatchWildcardPattern +| 5 = @py_MatchValuePattern +| 6 = @py_MatchSequencePattern +| 7 = @py_MatchStarPattern +| 8 = @py_MatchMappingPattern +| 9 = @py_MatchDoubleStarPattern +| 10 = @py_MatchKeyValuePattern +| 11 = @py_MatchClassPattern +| 12 = @py_MatchKeywordPattern; + +case @py_stmt.kind of + 0 = @py_Assert +| 1 = @py_Assign +| 2 = @py_AugAssign +| 3 = @py_Break +| 4 = @py_Continue +| 5 = @py_Delete +| 6 = @py_ExceptStmt +| 7 = @py_ExceptGroupStmt +| 8 = @py_Exec +| 9 = @py_Expr_stmt +| 10 = @py_For +| 11 = @py_Global +| 12 = @py_If +| 13 = @py_Import +| 14 = @py_ImportStar +| 15 = @py_MatchStmt +| 16 = @py_Case +| 17 = @py_Nonlocal +| 18 = @py_Pass +| 19 = @py_Print +| 20 = @py_Raise +| 21 = @py_Return +| 22 = @py_Try +| 23 = @py_While +| 24 = @py_With +| 25 = @py_TemplateWrite +| 26 = @py_AnnAssign +| 27 = @py_TypeAlias; + +case @py_type_parameter.kind of + 0 = @py_ParamSpec +| 1 = @py_TypeVar +| 2 = @py_TypeVarTuple; + +case @py_unaryop.kind of + 0 = @py_Invert +| 1 = @py_Not +| 2 = @py_UAdd +| 3 = @py_USub; + +@py_Bytes_or_Str = @py_Bytes | @py_Str; + +@py_Function_parent = @py_DictComp | @py_FunctionExpr | @py_GeneratorExp | @py_Lambda | @py_ListComp | @py_SetComp; + +@py_arguments_parent = @py_FunctionExpr | @py_Lambda; + +@py_ast_node = @py_Class | @py_Function | @py_Module | @py_StringPart | @py_comprehension | @py_dict_item | @py_expr | @py_pattern | @py_stmt | @py_type_parameter; + +@py_bool_parent = @py_For | @py_Function | @py_Print | @py_With | @py_expr | @py_pattern; + +@py_dict_item_list_parent = @py_Call | @py_ClassExpr | @py_Dict; + +@py_expr_context_parent = @py_Attribute | @py_List | @py_Name | @py_PlaceHolder | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_Tuple; + +@py_expr_list_parent = @py_Assign | @py_BoolExpr | @py_Call | @py_ClassExpr | @py_Compare | @py_Delete | @py_Fstring | @py_Function | @py_List | @py_Print | @py_Set | @py_SpecialOperation | @py_TemplateString | @py_Tuple | @py_arguments | @py_comprehension; + +@py_expr_or_stmt = @py_expr | @py_stmt; + +@py_expr_parent = @py_AnnAssign | @py_Assert | @py_Assign | @py_AssignExpr | @py_Attribute | @py_AugAssign | @py_Await | @py_BinaryExpr | @py_Call | @py_Case | @py_Compare | @py_DictComp | @py_DictUnpacking | @py_ExceptGroupStmt | @py_ExceptStmt | @py_Exec | @py_Expr_stmt | @py_Filter | @py_For | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_GeneratorExp | @py_Guard | @py_If | @py_IfExp | @py_ImportMember | @py_ImportStar | @py_KeyValuePair | @py_ListComp | @py_MatchAsPattern | @py_MatchCapturePattern | @py_MatchClassPattern | @py_MatchKeywordPattern | @py_MatchLiteralPattern | @py_MatchStmt | @py_MatchValuePattern | @py_ParamSpec | @py_Print | @py_Raise | @py_Repr | @py_Return | @py_SetComp | @py_Slice | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_TemplateString_list | @py_TemplateWrite | @py_TypeAlias | @py_TypeVar | @py_TypeVarTuple | @py_UnaryExpr | @py_While | @py_With | @py_Yield | @py_YieldFrom | @py_alias | @py_arguments | @py_comprehension | @py_expr_list | @py_keyword | @py_parameter_list; + +@py_location_parent = @py_DictUnpacking | @py_KeyValuePair | @py_StringPart | @py_comprehension | @py_expr | @py_keyword | @py_pattern | @py_stmt | @py_type_parameter; + +@py_parameter = @py_Name | @py_Tuple; + +@py_pattern_list_parent = @py_MatchClassPattern | @py_MatchMappingPattern | @py_MatchOrPattern | @py_MatchSequencePattern; + +@py_pattern_parent = @py_Case | @py_MatchAsPattern | @py_MatchDoubleStarPattern | @py_MatchKeyValuePattern | @py_MatchKeywordPattern | @py_MatchStarPattern | @py_pattern_list; + +@py_scope = @py_Class | @py_Function | @py_Module; + +@py_stmt_list_parent = @py_Case | @py_Class | @py_ExceptGroupStmt | @py_ExceptStmt | @py_For | @py_Function | @py_If | @py_MatchStmt | @py_Module | @py_Try | @py_While | @py_With; + +@py_str_list_parent = @py_Global | @py_Nonlocal; + +@py_str_parent = @py_Attribute | @py_Class | @py_ClassExpr | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_ImportExpr | @py_ImportMember | @py_Module | @py_SpecialOperation | @py_Str | @py_StringPart | @py_TemplateDottedNotation | @py_TemplateString | @py_TemplateStringPart | @py_keyword | @py_str_list; + +@py_type_parameter_list_parent = @py_ClassExpr | @py_Function | @py_TypeAlias; + +@py_variable_parent = @py_Name | @py_PlaceHolder; + + +/* + * End of auto-generated part + */ + + + +/* Map relative names to absolute names for imports */ +py_absolute_names(int module : @py_Module ref, + varchar(1) relname : string ref, + varchar(1) absname : string ref); + +py_exports(int id : @py_Module ref, + varchar(1) name : string ref); + +/* Successor information */ +py_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_true_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_exception_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_false_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_flow_bb_node(unique int flownode : @py_flow_node, + int realnode : @py_ast_node ref, + int basicblock : @py_flow_node ref, + int index : int ref); + +py_scope_flow(int flow : @py_flow_node ref, + int scope : @py_scope ref, + int kind : int ref); + +py_idoms(unique int node : @py_flow_node ref, + int immediate_dominator : @py_flow_node ref); + +py_ssa_phi(int phi : @py_ssa_var ref, + int arg: @py_ssa_var ref); + +py_ssa_var(unique int id : @py_ssa_var, + int var : @py_variable ref); + +py_ssa_use(int node: @py_flow_node ref, + int var : @py_ssa_var ref); + +py_ssa_defn(unique int id : @py_ssa_var ref, + int node: @py_flow_node ref); + +@py_base_var = @py_variable | @py_ssa_var; + +py_scopes(unique int node : @py_expr_or_stmt ref, + int scope : @py_scope ref); + +py_scope_location(unique int id : @location ref, + unique int scope : @py_scope ref); + +py_flags_versioned(varchar(1) name : string ref, + varchar(1) value : string ref, + varchar(1) version : string ref); + +py_syntax_error_versioned(unique int id : @location ref, + varchar(1) message : string ref, + varchar(1) version : string ref); + +py_comments(unique int id : @py_comment, + varchar(1) text : string ref, + unique int location : @location ref); + +/* Type information support */ + +py_cobjects(unique int obj : @py_cobject); + +py_cobjecttypes(unique int obj : @py_cobject ref, + int typeof : @py_cobject ref); + +py_cobjectnames(unique int obj : @py_cobject ref, + varchar(1) name : string ref); + +/* Kind should be 0 for introspection, > 0 from source, as follows: + 1 from C extension source + */ +py_cobject_sources(int obj : @py_cobject ref, + int kind : int ref); + +py_cmembers_versioned(int object : @py_cobject ref, + varchar(1) name : string ref, + int member : @py_cobject ref, + varchar(1) version : string ref); + +py_citems(int object : @py_cobject ref, + int index : int ref, + int member : @py_cobject ref); + +ext_argtype(int funcid : @py_object ref, + int arg : int ref, + int typeid : @py_object ref); + +ext_rettype(int funcid : @py_object ref, + int typeid : @py_object ref); + +ext_proptype(int propid : @py_object ref, + int typeid : @py_object ref); + +ext_argreturn(int funcid : @py_object ref, + int arg : int ref); + +py_special_objects(unique int obj : @py_cobject ref, + unique varchar(1) name : string ref); + +py_decorated_object(int object : @py_object ref, + int level: int ref); + +@py_object = @py_cobject | @py_flow_node; + +@py_source_element = @py_ast_node | @container; + +/** The union of all Python database entities */ +@top = + @py_source_element | @py_object | @py_base_var | @location | @py_line | @py_comment | + @py_expr_parent | @py_expr_context | + @py_operator | @py_boolop | @py_cmpop | @py_unaryop | + @py_cmpop_list | @py_alias_list | @py_StringPart_list | @py_comprehension_list | @py_dict_item_list | @py_pattern_list | @py_stmt_list | @py_str_list | @py_type_parameter_list | + @externalDefect | @externalMetric | @externalDataElement | @duplication_or_similarity | @svnentry | + @xmllocatable | @yaml_locatable; diff --git a/python/ql/lib/upgrades/8d257a4a9bc78e39856d6cd33499389fc5148d4f/semmlecode.python.dbscheme b/python/ql/lib/upgrades/8d257a4a9bc78e39856d6cd33499389fc5148d4f/semmlecode.python.dbscheme new file mode 100644 index 000000000000..279cbb08d387 --- /dev/null +++ b/python/ql/lib/upgrades/8d257a4a9bc78e39856d6cd33499389fc5148d4f/semmlecode.python.dbscheme @@ -0,0 +1,1289 @@ +/* + * This dbscheme is auto-generated by 'semmle/dbscheme_gen.py'. + * Run "make dbscheme" in python/extractor/ to regenerate. + * WARNING: Any modifications to this file will be lost. + * Relations can be changed by modifying master.py or + * by adding rules to dbscheme.template + */ + +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2020-07-02 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/*- DEPRECATED: External defects and metrics -*/ + +externalDefects( + unique int id : @externalDefect, + varchar(900) queryPath : string ref, + int location : @location ref, + varchar(900) message : string ref, + float severity : float ref +); + +externalMetrics( + unique int id : @externalMetric, + varchar(900) queryPath : string ref, + int location : @location ref, + float value : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- DEPRECATED: Snapshot date -*/ + +snapshotDate(unique date snapshotDate : date ref); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- DEPRECATED: Duplicate code -*/ + +duplicateCode( + unique int id : @duplication, + string relativePath : string ref, + int equivClass : int ref +); + +similarCode( + unique int id : @similarity, + string relativePath : string ref, + int equivClass : int ref +); + +@duplication_or_similarity = @duplication | @similarity + +tokens( + int id : @duplication_or_similarity ref, + int offset : int ref, + int beginLine : int ref, + int beginColumn : int ref, + int endLine : int ref, + int endColumn : int ref +); + +/*- DEPRECATED: Version control data -*/ + +svnentries( + unique int id : @svnentry, + string revision : string ref, + string author : string ref, + date revisionDate : date ref, + int changeSize : int ref +) + +svnaffectedfiles( + int id : @svnentry ref, + int file : @file ref, + string action : string ref +) + +svnentrymsg( + unique int id : @svnentry ref, + string message : string ref +) + +svnchurn( + int commit : @svnentry ref, + int file : @file ref, + int addedLines : int ref, + int deletedLines : int ref +) + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Python dbscheme -*/ + +/* + * Line metrics + */ +py_codelines(int id : @py_scope ref, + int count : int ref); + +py_commentlines(int id : @py_scope ref, + int count : int ref); + +py_docstringlines(int id : @py_scope ref, + int count : int ref); + +py_alllines(int id : @py_scope ref, + int count : int ref); + +/**************************** + Python dbscheme +****************************/ + +@sourceline = @file | @py_Module | @xmllocatable; + +@location = @location_ast | @location_default ; + +locations_ast(unique int id: @location_ast, + int module: @py_Module ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +file_contents(unique int file: @file ref, string contents: string ref); + +py_module_path(int module: @py_Module ref, int file: @container ref); + +variable(unique int id : @py_variable, + int scope : @py_scope ref, + varchar(1) name : string ref); + +py_line_lengths(unique int id : @py_line, + int file: @py_Module ref, + int line : int ref, + int length : int ref); + +py_extracted_version(int module : @py_Module ref, + varchar(1) version : string ref); + +/* AUTO GENERATED PART STARTS HERE */ + + +/* AnnAssign.location = 0, location */ +/* AnnAssign.value = 1, expr */ +/* AnnAssign.annotation = 2, expr */ +/* AnnAssign.target = 3, expr */ + +/* Assert.location = 0, location */ +/* Assert.test = 1, expr */ +/* Assert.msg = 2, expr */ + +/* Assign.location = 0, location */ +/* Assign.value = 1, expr */ +/* Assign.targets = 2, expr_list */ + +/* AssignExpr.location = 0, location */ +/* AssignExpr.parenthesised = 1, bool */ +/* AssignExpr.value = 2, expr */ +/* AssignExpr.target = 3, expr */ + +/* Attribute.location = 0, location */ +/* Attribute.parenthesised = 1, bool */ +/* Attribute.value = 2, expr */ +/* Attribute.attr = 3, str */ +/* Attribute.ctx = 4, expr_context */ + +/* AugAssign.location = 0, location */ +/* AugAssign.operation = 1, BinOp */ + +/* Await.location = 0, location */ +/* Await.parenthesised = 1, bool */ +/* Await.value = 2, expr */ + +/* BinaryExpr.location = 0, location */ +/* BinaryExpr.parenthesised = 1, bool */ +/* BinaryExpr.left = 2, expr */ +/* BinaryExpr.op = 3, operator */ +/* BinaryExpr.right = 4, expr */ +/* BinaryExpr = AugAssign */ + +/* BoolExpr.location = 0, location */ +/* BoolExpr.parenthesised = 1, bool */ +/* BoolExpr.op = 2, boolop */ +/* BoolExpr.values = 3, expr_list */ + +/* Break.location = 0, location */ + +/* Bytes.location = 0, location */ +/* Bytes.parenthesised = 1, bool */ +/* Bytes.s = 2, bytes */ +/* Bytes.prefix = 3, bytes */ +/* Bytes.implicitly_concatenated_parts = 4, StringPart_list */ + +/* Call.location = 0, location */ +/* Call.parenthesised = 1, bool */ +/* Call.func = 2, expr */ +/* Call.positional_args = 3, expr_list */ +/* Call.named_args = 4, dict_item_list */ + +/* Case.location = 0, location */ +/* Case.pattern = 1, pattern */ +/* Case.guard = 2, expr */ +/* Case.body = 3, stmt_list */ + +/* Class.name = 0, str */ +/* Class.body = 1, stmt_list */ +/* Class = ClassExpr */ + +/* ClassExpr.location = 0, location */ +/* ClassExpr.parenthesised = 1, bool */ +/* ClassExpr.name = 2, str */ +/* ClassExpr.bases = 3, expr_list */ +/* ClassExpr.keywords = 4, dict_item_list */ +/* ClassExpr.inner_scope = 5, Class */ +/* ClassExpr.type_parameters = 6, type_parameter_list */ + +/* Compare.location = 0, location */ +/* Compare.parenthesised = 1, bool */ +/* Compare.left = 2, expr */ +/* Compare.ops = 3, cmpop_list */ +/* Compare.comparators = 4, expr_list */ + +/* Continue.location = 0, location */ + +/* Delete.location = 0, location */ +/* Delete.targets = 1, expr_list */ + +/* Dict.location = 0, location */ +/* Dict.parenthesised = 1, bool */ +/* Dict.items = 2, dict_item_list */ + +/* DictComp.location = 0, location */ +/* DictComp.parenthesised = 1, bool */ +/* DictComp.function = 2, Function */ +/* DictComp.iterable = 3, expr */ + +/* DictUnpacking.location = 0, location */ +/* DictUnpacking.value = 1, expr */ + +/* Ellipsis.location = 0, location */ +/* Ellipsis.parenthesised = 1, bool */ + +/* ExceptGroupStmt.location = 0, location */ +/* ExceptGroupStmt.type = 1, expr */ +/* ExceptGroupStmt.name = 2, expr */ +/* ExceptGroupStmt.body = 3, stmt_list */ + +/* ExceptStmt.location = 0, location */ +/* ExceptStmt.type = 1, expr */ +/* ExceptStmt.name = 2, expr */ +/* ExceptStmt.body = 3, stmt_list */ + +/* Exec.location = 0, location */ +/* Exec.body = 1, expr */ +/* Exec.globals = 2, expr */ +/* Exec.locals = 3, expr */ + +/* ExprStmt.location = 0, location */ +/* ExprStmt.value = 1, expr */ + +/* Filter.location = 0, location */ +/* Filter.parenthesised = 1, bool */ +/* Filter.value = 2, expr */ +/* Filter.filter = 3, expr */ + +/* For.location = 0, location */ +/* For.target = 1, expr */ +/* For.iter = 2, expr */ +/* For.body = 3, stmt_list */ +/* For.orelse = 4, stmt_list */ +/* For.is_async = 5, bool */ + +/* FormattedValue.location = 0, location */ +/* FormattedValue.parenthesised = 1, bool */ +/* FormattedValue.value = 2, expr */ +/* FormattedValue.conversion = 3, str */ +/* FormattedValue.format_spec = 4, JoinedStr */ + +/* Function.name = 0, str */ +/* Function.args = 1, parameter_list */ +/* Function.vararg = 2, expr */ +/* Function.kwonlyargs = 3, expr_list */ +/* Function.kwarg = 4, expr */ +/* Function.body = 5, stmt_list */ +/* Function.is_async = 6, bool */ +/* Function.type_parameters = 7, type_parameter_list */ +/* Function = FunctionParent */ + +/* FunctionExpr.location = 0, location */ +/* FunctionExpr.parenthesised = 1, bool */ +/* FunctionExpr.name = 2, str */ +/* FunctionExpr.args = 3, arguments */ +/* FunctionExpr.returns = 4, expr */ +/* FunctionExpr.inner_scope = 5, Function */ + +/* GeneratorExp.location = 0, location */ +/* GeneratorExp.parenthesised = 1, bool */ +/* GeneratorExp.function = 2, Function */ +/* GeneratorExp.iterable = 3, expr */ + +/* Global.location = 0, location */ +/* Global.names = 1, str_list */ + +/* Guard.location = 0, location */ +/* Guard.parenthesised = 1, bool */ +/* Guard.test = 2, expr */ + +/* If.location = 0, location */ +/* If.test = 1, expr */ +/* If.body = 2, stmt_list */ +/* If.orelse = 3, stmt_list */ + +/* IfExp.location = 0, location */ +/* IfExp.parenthesised = 1, bool */ +/* IfExp.test = 2, expr */ +/* IfExp.body = 3, expr */ +/* IfExp.orelse = 4, expr */ + +/* Import.location = 0, location */ +/* Import.names = 1, alias_list */ + +/* ImportExpr.location = 0, location */ +/* ImportExpr.parenthesised = 1, bool */ +/* ImportExpr.level = 2, int */ +/* ImportExpr.name = 3, str */ +/* ImportExpr.top = 4, bool */ + +/* ImportStar.location = 0, location */ +/* ImportStar.module = 1, expr */ + +/* ImportMember.location = 0, location */ +/* ImportMember.parenthesised = 1, bool */ +/* ImportMember.module = 2, expr */ +/* ImportMember.name = 3, str */ + +/* Fstring.location = 0, location */ +/* Fstring.parenthesised = 1, bool */ +/* Fstring.values = 2, expr_list */ +/* Fstring = FormattedValue */ + +/* JoinedTemplateString.location = 0, location */ +/* JoinedTemplateString.parenthesised = 1, bool */ +/* JoinedTemplateString.strings = 2, TemplateString_list */ + +/* KeyValuePair.location = 0, location */ +/* KeyValuePair.value = 1, expr */ +/* KeyValuePair.key = 2, expr */ + +/* Lambda.location = 0, location */ +/* Lambda.parenthesised = 1, bool */ +/* Lambda.args = 2, arguments */ +/* Lambda.inner_scope = 3, Function */ + +/* List.location = 0, location */ +/* List.parenthesised = 1, bool */ +/* List.elts = 2, expr_list */ +/* List.ctx = 3, expr_context */ + +/* ListComp.location = 0, location */ +/* ListComp.parenthesised = 1, bool */ +/* ListComp.function = 2, Function */ +/* ListComp.iterable = 3, expr */ +/* ListComp.generators = 4, comprehension_list */ +/* ListComp.elt = 5, expr */ + +/* MatchStmt.location = 0, location */ +/* MatchStmt.subject = 1, expr */ +/* MatchStmt.cases = 2, stmt_list */ + +/* MatchAsPattern.location = 0, location */ +/* MatchAsPattern.parenthesised = 1, bool */ +/* MatchAsPattern.pattern = 2, pattern */ +/* MatchAsPattern.alias = 3, expr */ + +/* MatchCapturePattern.location = 0, location */ +/* MatchCapturePattern.parenthesised = 1, bool */ +/* MatchCapturePattern.variable = 2, expr */ + +/* MatchClassPattern.location = 0, location */ +/* MatchClassPattern.parenthesised = 1, bool */ +/* MatchClassPattern.class = 2, expr */ +/* MatchClassPattern.class_name = 3, expr */ +/* MatchClassPattern.positional = 4, pattern_list */ +/* MatchClassPattern.keyword = 5, pattern_list */ + +/* MatchDoubleStarPattern.location = 0, location */ +/* MatchDoubleStarPattern.parenthesised = 1, bool */ +/* MatchDoubleStarPattern.target = 2, pattern */ + +/* MatchKeyValuePattern.location = 0, location */ +/* MatchKeyValuePattern.parenthesised = 1, bool */ +/* MatchKeyValuePattern.key = 2, pattern */ +/* MatchKeyValuePattern.value = 3, pattern */ + +/* MatchKeywordPattern.location = 0, location */ +/* MatchKeywordPattern.parenthesised = 1, bool */ +/* MatchKeywordPattern.attribute = 2, expr */ +/* MatchKeywordPattern.value = 3, pattern */ + +/* MatchLiteralPattern.location = 0, location */ +/* MatchLiteralPattern.parenthesised = 1, bool */ +/* MatchLiteralPattern.literal = 2, expr */ + +/* MatchMappingPattern.location = 0, location */ +/* MatchMappingPattern.parenthesised = 1, bool */ +/* MatchMappingPattern.mappings = 2, pattern_list */ + +/* MatchOrPattern.location = 0, location */ +/* MatchOrPattern.parenthesised = 1, bool */ +/* MatchOrPattern.patterns = 2, pattern_list */ + +/* MatchSequencePattern.location = 0, location */ +/* MatchSequencePattern.parenthesised = 1, bool */ +/* MatchSequencePattern.patterns = 2, pattern_list */ + +/* MatchStarPattern.location = 0, location */ +/* MatchStarPattern.parenthesised = 1, bool */ +/* MatchStarPattern.target = 2, pattern */ + +/* MatchValuePattern.location = 0, location */ +/* MatchValuePattern.parenthesised = 1, bool */ +/* MatchValuePattern.value = 2, expr */ + +/* MatchWildcardPattern.location = 0, location */ +/* MatchWildcardPattern.parenthesised = 1, bool */ + +/* Module.name = 0, str */ +/* Module.hash = 1, str */ +/* Module.body = 2, stmt_list */ +/* Module.kind = 3, str */ + +/* Name.location = 0, location */ +/* Name.parenthesised = 1, bool */ +/* Name.variable = 2, variable */ +/* Name.ctx = 3, expr_context */ +/* Name = ParameterList */ + +/* Nonlocal.location = 0, location */ +/* Nonlocal.names = 1, str_list */ + +/* Num.location = 0, location */ +/* Num.parenthesised = 1, bool */ +/* Num.n = 2, number */ +/* Num.text = 3, number */ + +/* ParamSpec.location = 0, location */ +/* ParamSpec.name = 1, expr */ +/* ParamSpec.default = 2, expr */ + +/* Pass.location = 0, location */ + +/* PlaceHolder.location = 0, location */ +/* PlaceHolder.parenthesised = 1, bool */ +/* PlaceHolder.variable = 2, variable */ +/* PlaceHolder.ctx = 3, expr_context */ + +/* Print.location = 0, location */ +/* Print.dest = 1, expr */ +/* Print.values = 2, expr_list */ +/* Print.nl = 3, bool */ + +/* Raise.location = 0, location */ +/* Raise.exc = 1, expr */ +/* Raise.cause = 2, expr */ +/* Raise.type = 3, expr */ +/* Raise.inst = 4, expr */ +/* Raise.tback = 5, expr */ + +/* Repr.location = 0, location */ +/* Repr.parenthesised = 1, bool */ +/* Repr.value = 2, expr */ + +/* Return.location = 0, location */ +/* Return.value = 1, expr */ + +/* Set.location = 0, location */ +/* Set.parenthesised = 1, bool */ +/* Set.elts = 2, expr_list */ + +/* SetComp.location = 0, location */ +/* SetComp.parenthesised = 1, bool */ +/* SetComp.function = 2, Function */ +/* SetComp.iterable = 3, expr */ + +/* Slice.location = 0, location */ +/* Slice.parenthesised = 1, bool */ +/* Slice.start = 2, expr */ +/* Slice.stop = 3, expr */ +/* Slice.step = 4, expr */ + +/* SpecialOperation.location = 0, location */ +/* SpecialOperation.parenthesised = 1, bool */ +/* SpecialOperation.name = 2, str */ +/* SpecialOperation.arguments = 3, expr_list */ + +/* Starred.location = 0, location */ +/* Starred.parenthesised = 1, bool */ +/* Starred.value = 2, expr */ +/* Starred.ctx = 3, expr_context */ + +/* Str.location = 0, location */ +/* Str.parenthesised = 1, bool */ +/* Str.s = 2, str */ +/* Str.prefix = 3, str */ +/* Str.implicitly_concatenated_parts = 4, StringPart_list */ + +/* StringPart.text = 0, str */ +/* StringPart.location = 1, location */ +/* StringPart = StringPartList */ +/* StringPartList = BytesOrStr */ + +/* Subscript.location = 0, location */ +/* Subscript.parenthesised = 1, bool */ +/* Subscript.value = 2, expr */ +/* Subscript.index = 3, expr */ +/* Subscript.ctx = 4, expr_context */ + +/* TemplateDottedNotation.location = 0, location */ +/* TemplateDottedNotation.parenthesised = 1, bool */ +/* TemplateDottedNotation.value = 2, expr */ +/* TemplateDottedNotation.attr = 3, str */ +/* TemplateDottedNotation.ctx = 4, expr_context */ + +/* TemplateString.location = 0, location */ +/* TemplateString.parenthesised = 1, bool */ +/* TemplateString.prefix = 2, str */ +/* TemplateString.values = 3, expr_list */ +/* TemplateString = TemplateStringList */ + +/* TemplateStringPart.location = 0, location */ +/* TemplateStringPart.parenthesised = 1, bool */ +/* TemplateStringPart.text = 2, str */ +/* TemplateStringList = JoinedTemplateString */ + +/* TemplateWrite.location = 0, location */ +/* TemplateWrite.value = 1, expr */ + +/* Try.location = 0, location */ +/* Try.body = 1, stmt_list */ +/* Try.orelse = 2, stmt_list */ +/* Try.handlers = 3, stmt_list */ +/* Try.finalbody = 4, stmt_list */ + +/* Tuple.location = 0, location */ +/* Tuple.parenthesised = 1, bool */ +/* Tuple.elts = 2, expr_list */ +/* Tuple.ctx = 3, expr_context */ +/* Tuple = ParameterList */ + +/* TypeAlias.location = 0, location */ +/* TypeAlias.name = 1, expr */ +/* TypeAlias.type_parameters = 2, type_parameter_list */ +/* TypeAlias.value = 3, expr */ + +/* TypeVar.location = 0, location */ +/* TypeVar.name = 1, expr */ +/* TypeVar.bound = 2, expr */ +/* TypeVar.default = 3, expr */ + +/* TypeVarTuple.location = 0, location */ +/* TypeVarTuple.name = 1, expr */ +/* TypeVarTuple.default = 2, expr */ + +/* UnaryExpr.location = 0, location */ +/* UnaryExpr.parenthesised = 1, bool */ +/* UnaryExpr.op = 2, unaryop */ +/* UnaryExpr.operand = 3, expr */ + +/* While.location = 0, location */ +/* While.test = 1, expr */ +/* While.body = 2, stmt_list */ +/* While.orelse = 3, stmt_list */ + +/* With.location = 0, location */ +/* With.context_expr = 1, expr */ +/* With.optional_vars = 2, expr */ +/* With.body = 3, stmt_list */ +/* With.is_async = 4, bool */ + +/* Yield.location = 0, location */ +/* Yield.parenthesised = 1, bool */ +/* Yield.value = 2, expr */ + +/* YieldFrom.location = 0, location */ +/* YieldFrom.parenthesised = 1, bool */ +/* YieldFrom.value = 2, expr */ + +/* Alias.value = 0, expr */ +/* Alias.asname = 1, expr */ +/* Alias = AliasList */ +/* AliasList = Import */ + +/* Arguments.kw_defaults = 0, expr_list */ +/* Arguments.defaults = 1, expr_list */ +/* Arguments.annotations = 2, expr_list */ +/* Arguments.varargannotation = 3, expr */ +/* Arguments.kwargannotation = 4, expr */ +/* Arguments.kw_annotations = 5, expr_list */ +/* Arguments = ArgumentsParent */ +/* boolean = BoolParent */ +/* Boolop = BoolExpr */ +/* string = Bytes */ +/* Cmpop = CmpopList */ +/* CmpopList = Compare */ + +/* Comprehension.location = 0, location */ +/* Comprehension.iter = 1, expr */ +/* Comprehension.target = 2, expr */ +/* Comprehension.ifs = 3, expr_list */ +/* Comprehension = ComprehensionList */ +/* ComprehensionList = ListComp */ +/* DictItem = DictItemList */ +/* DictItemList = DictItemListParent */ + +/* Expr.location = 0, location */ +/* Expr.parenthesised = 1, bool */ +/* Expr = ExprParent */ +/* ExprContext = ExprContextParent */ +/* ExprList = ExprListParent */ +/* int = ImportExpr */ + +/* Keyword.location = 0, location */ +/* Keyword.value = 1, expr */ +/* Keyword.arg = 2, str */ +/* Location = LocationParent */ +/* string = Num */ +/* Operator = BinaryExpr */ +/* ParameterList = Function */ + +/* Pattern.location = 0, location */ +/* Pattern.parenthesised = 1, bool */ +/* Pattern = PatternParent */ +/* PatternList = PatternListParent */ + +/* Stmt.location = 0, location */ +/* Stmt = StmtList */ +/* StmtList = StmtListParent */ +/* string = StrParent */ +/* StringList = StrListParent */ + +/* TypeParameter.location = 0, location */ +/* TypeParameter = TypeParameterList */ +/* TypeParameterList = TypeParameterListParent */ +/* Unaryop = UnaryExpr */ +/* Variable = VariableParent */ +py_Classes(unique int id : @py_Class, + unique int parent : @py_ClassExpr ref); + +py_Functions(unique int id : @py_Function, + unique int parent : @py_Function_parent ref); + +py_Modules(unique int id : @py_Module); + +py_StringParts(unique int id : @py_StringPart, + int parent : @py_StringPart_list ref, + int idx : int ref); + +py_StringPart_lists(unique int id : @py_StringPart_list, + unique int parent : @py_Bytes_or_Str ref); + +py_TemplateString_lists(unique int id : @py_TemplateString_list, + unique int parent : @py_JoinedTemplateString ref); + +py_aliases(unique int id : @py_alias, + int parent : @py_alias_list ref, + int idx : int ref); + +py_alias_lists(unique int id : @py_alias_list, + unique int parent : @py_Import ref); + +py_arguments(unique int id : @py_arguments, + unique int parent : @py_arguments_parent ref); + +py_bools(int parent : @py_bool_parent ref, + int idx : int ref); + +py_boolops(unique int id : @py_boolop, + int kind: int ref, + unique int parent : @py_BoolExpr ref); + +py_bytes(varchar(1) id : string ref, + int parent : @py_Bytes ref, + int idx : int ref); + +py_cmpops(unique int id : @py_cmpop, + int kind: int ref, + int parent : @py_cmpop_list ref, + int idx : int ref); + +py_cmpop_lists(unique int id : @py_cmpop_list, + unique int parent : @py_Compare ref); + +py_comprehensions(unique int id : @py_comprehension, + int parent : @py_comprehension_list ref, + int idx : int ref); + +py_comprehension_lists(unique int id : @py_comprehension_list, + unique int parent : @py_ListComp ref); + +py_dict_items(unique int id : @py_dict_item, + int kind: int ref, + int parent : @py_dict_item_list ref, + int idx : int ref); + +py_dict_item_lists(unique int id : @py_dict_item_list, + unique int parent : @py_dict_item_list_parent ref); + +py_exprs(unique int id : @py_expr, + int kind: int ref, + int parent : @py_expr_parent ref, + int idx : int ref); + +py_expr_contexts(unique int id : @py_expr_context, + int kind: int ref, + unique int parent : @py_expr_context_parent ref); + +py_expr_lists(unique int id : @py_expr_list, + int parent : @py_expr_list_parent ref, + int idx : int ref); + +py_ints(int id : int ref, + unique int parent : @py_ImportExpr ref); + +py_locations(unique int id : @location ref, + unique int parent : @py_location_parent ref); + +py_numbers(varchar(1) id : string ref, + int parent : @py_Num ref, + int idx : int ref); + +py_operators(unique int id : @py_operator, + int kind: int ref, + unique int parent : @py_BinaryExpr ref); + +py_parameter_lists(unique int id : @py_parameter_list, + unique int parent : @py_Function ref); + +py_patterns(unique int id : @py_pattern, + int kind: int ref, + int parent : @py_pattern_parent ref, + int idx : int ref); + +py_pattern_lists(unique int id : @py_pattern_list, + int parent : @py_pattern_list_parent ref, + int idx : int ref); + +py_stmts(unique int id : @py_stmt, + int kind: int ref, + int parent : @py_stmt_list ref, + int idx : int ref); + +py_stmt_lists(unique int id : @py_stmt_list, + int parent : @py_stmt_list_parent ref, + int idx : int ref); + +py_strs(varchar(1) id : string ref, + int parent : @py_str_parent ref, + int idx : int ref); + +py_str_lists(unique int id : @py_str_list, + unique int parent : @py_str_list_parent ref); + +py_type_parameters(unique int id : @py_type_parameter, + int kind: int ref, + int parent : @py_type_parameter_list ref, + int idx : int ref); + +py_type_parameter_lists(unique int id : @py_type_parameter_list, + unique int parent : @py_type_parameter_list_parent ref); + +py_unaryops(unique int id : @py_unaryop, + int kind: int ref, + unique int parent : @py_UnaryExpr ref); + +py_variables(int id : @py_variable ref, + unique int parent : @py_variable_parent ref); + +case @py_boolop.kind of + 0 = @py_And +| 1 = @py_Or; + +case @py_cmpop.kind of + 0 = @py_Eq +| 1 = @py_Gt +| 2 = @py_GtE +| 3 = @py_In +| 4 = @py_Is +| 5 = @py_IsNot +| 6 = @py_Lt +| 7 = @py_LtE +| 8 = @py_NotEq +| 9 = @py_NotIn; + +case @py_dict_item.kind of + 0 = @py_DictUnpacking +| 1 = @py_KeyValuePair +| 2 = @py_keyword; + +case @py_expr.kind of + 0 = @py_Attribute +| 1 = @py_BinaryExpr +| 2 = @py_BoolExpr +| 3 = @py_Bytes +| 4 = @py_Call +| 5 = @py_ClassExpr +| 6 = @py_Compare +| 7 = @py_Dict +| 8 = @py_DictComp +| 9 = @py_Ellipsis +| 10 = @py_FunctionExpr +| 11 = @py_GeneratorExp +| 12 = @py_IfExp +| 13 = @py_ImportExpr +| 14 = @py_ImportMember +| 15 = @py_Lambda +| 16 = @py_List +| 17 = @py_ListComp +| 18 = @py_Guard +| 19 = @py_Name +| 20 = @py_Num +| 21 = @py_Repr +| 22 = @py_Set +| 23 = @py_SetComp +| 24 = @py_Slice +| 25 = @py_Starred +| 26 = @py_Str +| 27 = @py_Subscript +| 28 = @py_Tuple +| 29 = @py_UnaryExpr +| 30 = @py_Yield +| 31 = @py_YieldFrom +| 32 = @py_TemplateDottedNotation +| 33 = @py_Filter +| 34 = @py_PlaceHolder +| 35 = @py_Await +| 36 = @py_Fstring +| 37 = @py_FormattedValue +| 38 = @py_AssignExpr +| 39 = @py_SpecialOperation +| 40 = @py_TemplateString +| 41 = @py_JoinedTemplateString +| 42 = @py_TemplateStringPart; + +case @py_expr_context.kind of + 0 = @py_AugLoad +| 1 = @py_AugStore +| 2 = @py_Del +| 3 = @py_Load +| 4 = @py_Param +| 5 = @py_Store; + +case @py_operator.kind of + 0 = @py_Add +| 1 = @py_BitAnd +| 2 = @py_BitOr +| 3 = @py_BitXor +| 4 = @py_Div +| 5 = @py_FloorDiv +| 6 = @py_LShift +| 7 = @py_Mod +| 8 = @py_Mult +| 9 = @py_Pow +| 10 = @py_RShift +| 11 = @py_Sub +| 12 = @py_MatMult; + +case @py_pattern.kind of + 0 = @py_MatchAsPattern +| 1 = @py_MatchOrPattern +| 2 = @py_MatchLiteralPattern +| 3 = @py_MatchCapturePattern +| 4 = @py_MatchWildcardPattern +| 5 = @py_MatchValuePattern +| 6 = @py_MatchSequencePattern +| 7 = @py_MatchStarPattern +| 8 = @py_MatchMappingPattern +| 9 = @py_MatchDoubleStarPattern +| 10 = @py_MatchKeyValuePattern +| 11 = @py_MatchClassPattern +| 12 = @py_MatchKeywordPattern; + +case @py_stmt.kind of + 0 = @py_Assert +| 1 = @py_Assign +| 2 = @py_AugAssign +| 3 = @py_Break +| 4 = @py_Continue +| 5 = @py_Delete +| 6 = @py_ExceptStmt +| 7 = @py_ExceptGroupStmt +| 8 = @py_Exec +| 9 = @py_Expr_stmt +| 10 = @py_For +| 11 = @py_Global +| 12 = @py_If +| 13 = @py_Import +| 14 = @py_ImportStar +| 15 = @py_MatchStmt +| 16 = @py_Case +| 17 = @py_Nonlocal +| 18 = @py_Pass +| 19 = @py_Print +| 20 = @py_Raise +| 21 = @py_Return +| 22 = @py_Try +| 23 = @py_While +| 24 = @py_With +| 25 = @py_TemplateWrite +| 26 = @py_AnnAssign +| 27 = @py_TypeAlias; + +case @py_type_parameter.kind of + 0 = @py_ParamSpec +| 1 = @py_TypeVar +| 2 = @py_TypeVarTuple; + +case @py_unaryop.kind of + 0 = @py_Invert +| 1 = @py_Not +| 2 = @py_UAdd +| 3 = @py_USub; + +@py_Bytes_or_Str = @py_Bytes | @py_Str; + +@py_Function_parent = @py_DictComp | @py_FunctionExpr | @py_GeneratorExp | @py_Lambda | @py_ListComp | @py_SetComp; + +@py_arguments_parent = @py_FunctionExpr | @py_Lambda; + +@py_ast_node = @py_Class | @py_Function | @py_Module | @py_StringPart | @py_comprehension | @py_dict_item | @py_expr | @py_pattern | @py_stmt | @py_type_parameter; + +@py_bool_parent = @py_For | @py_Function | @py_Print | @py_With | @py_expr | @py_pattern; + +@py_dict_item_list_parent = @py_Call | @py_ClassExpr | @py_Dict; + +@py_expr_context_parent = @py_Attribute | @py_List | @py_Name | @py_PlaceHolder | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_Tuple; + +@py_expr_list_parent = @py_Assign | @py_BoolExpr | @py_Call | @py_ClassExpr | @py_Compare | @py_Delete | @py_Fstring | @py_Function | @py_List | @py_Print | @py_Set | @py_SpecialOperation | @py_TemplateString | @py_Tuple | @py_arguments | @py_comprehension; + +@py_expr_or_stmt = @py_expr | @py_stmt; + +@py_expr_parent = @py_AnnAssign | @py_Assert | @py_Assign | @py_AssignExpr | @py_Attribute | @py_AugAssign | @py_Await | @py_BinaryExpr | @py_Call | @py_Case | @py_Compare | @py_DictComp | @py_DictUnpacking | @py_ExceptGroupStmt | @py_ExceptStmt | @py_Exec | @py_Expr_stmt | @py_Filter | @py_For | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_GeneratorExp | @py_Guard | @py_If | @py_IfExp | @py_ImportMember | @py_ImportStar | @py_KeyValuePair | @py_ListComp | @py_MatchAsPattern | @py_MatchCapturePattern | @py_MatchClassPattern | @py_MatchKeywordPattern | @py_MatchLiteralPattern | @py_MatchStmt | @py_MatchValuePattern | @py_ParamSpec | @py_Print | @py_Raise | @py_Repr | @py_Return | @py_SetComp | @py_Slice | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_TemplateString_list | @py_TemplateWrite | @py_TypeAlias | @py_TypeVar | @py_TypeVarTuple | @py_UnaryExpr | @py_While | @py_With | @py_Yield | @py_YieldFrom | @py_alias | @py_arguments | @py_comprehension | @py_expr_list | @py_keyword | @py_parameter_list; + +@py_location_parent = @py_DictUnpacking | @py_KeyValuePair | @py_StringPart | @py_comprehension | @py_expr | @py_keyword | @py_pattern | @py_stmt | @py_type_parameter; + +@py_parameter = @py_Name | @py_Tuple; + +@py_pattern_list_parent = @py_MatchClassPattern | @py_MatchMappingPattern | @py_MatchOrPattern | @py_MatchSequencePattern; + +@py_pattern_parent = @py_Case | @py_MatchAsPattern | @py_MatchDoubleStarPattern | @py_MatchKeyValuePattern | @py_MatchKeywordPattern | @py_MatchStarPattern | @py_pattern_list; + +@py_scope = @py_Class | @py_Function | @py_Module; + +@py_stmt_list_parent = @py_Case | @py_Class | @py_ExceptGroupStmt | @py_ExceptStmt | @py_For | @py_Function | @py_If | @py_MatchStmt | @py_Module | @py_Try | @py_While | @py_With; + +@py_str_list_parent = @py_Global | @py_Nonlocal; + +@py_str_parent = @py_Attribute | @py_Class | @py_ClassExpr | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_ImportExpr | @py_ImportMember | @py_Module | @py_SpecialOperation | @py_Str | @py_StringPart | @py_TemplateDottedNotation | @py_TemplateString | @py_TemplateStringPart | @py_keyword | @py_str_list; + +@py_type_parameter_list_parent = @py_ClassExpr | @py_Function | @py_TypeAlias; + +@py_variable_parent = @py_Name | @py_PlaceHolder; + + +/* + * End of auto-generated part + */ + + + +/* Map relative names to absolute names for imports */ +py_absolute_names(int module : @py_Module ref, + varchar(1) relname : string ref, + varchar(1) absname : string ref); + +py_exports(int id : @py_Module ref, + varchar(1) name : string ref); + +/* Successor information */ +py_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_true_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_exception_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_false_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_flow_bb_node(unique int flownode : @py_flow_node, + int realnode : @py_ast_node ref, + int basicblock : @py_flow_node ref, + int index : int ref); + +py_scope_flow(int flow : @py_flow_node ref, + int scope : @py_scope ref, + int kind : int ref); + +py_idoms(unique int node : @py_flow_node ref, + int immediate_dominator : @py_flow_node ref); + +py_ssa_phi(int phi : @py_ssa_var ref, + int arg: @py_ssa_var ref); + +py_ssa_var(unique int id : @py_ssa_var, + int var : @py_variable ref); + +py_ssa_use(int node: @py_flow_node ref, + int var : @py_ssa_var ref); + +py_ssa_defn(unique int id : @py_ssa_var ref, + int node: @py_flow_node ref); + +@py_base_var = @py_variable | @py_ssa_var; + +py_scopes(unique int node : @py_expr_or_stmt ref, + int scope : @py_scope ref); + +py_scope_location(unique int id : @location ref, + unique int scope : @py_scope ref); + +py_flags_versioned(varchar(1) name : string ref, + varchar(1) value : string ref, + varchar(1) version : string ref); + +py_syntax_error_versioned(unique int id : @location ref, + varchar(1) message : string ref, + varchar(1) version : string ref); + +py_comments(unique int id : @py_comment, + varchar(1) text : string ref, + unique int location : @location ref); + +/* Type information support */ + +py_cobjects(unique int obj : @py_cobject); + +py_cobjecttypes(unique int obj : @py_cobject ref, + int typeof : @py_cobject ref); + +py_cobjectnames(unique int obj : @py_cobject ref, + varchar(1) name : string ref); + +/* Kind should be 0 for introspection, > 0 from source, as follows: + 1 from C extension source + */ +py_cobject_sources(int obj : @py_cobject ref, + int kind : int ref); + +py_cmembers_versioned(int object : @py_cobject ref, + varchar(1) name : string ref, + int member : @py_cobject ref, + varchar(1) version : string ref); + +py_citems(int object : @py_cobject ref, + int index : int ref, + int member : @py_cobject ref); + +ext_argtype(int funcid : @py_object ref, + int arg : int ref, + int typeid : @py_object ref); + +ext_rettype(int funcid : @py_object ref, + int typeid : @py_object ref); + +ext_proptype(int propid : @py_object ref, + int typeid : @py_object ref); + +ext_argreturn(int funcid : @py_object ref, + int arg : int ref); + +py_special_objects(unique int obj : @py_cobject ref, + unique varchar(1) name : string ref); + +py_decorated_object(int object : @py_object ref, + int level: int ref); + +@py_object = @py_cobject | @py_flow_node; + +@py_source_element = @py_ast_node | @container; + +/** The union of all Python database entities */ +@top = + @py_source_element | @py_object | @py_base_var | @location | @py_line | @py_comment | + @py_expr_parent | @py_expr_context | + @py_operator | @py_boolop | @py_cmpop | @py_unaryop | + @py_cmpop_list | @py_alias_list | @py_StringPart_list | @py_comprehension_list | @py_dict_item_list | @py_pattern_list | @py_stmt_list | @py_str_list | @py_type_parameter_list | + @externalDefect | @externalMetric | @externalDataElement | @duplication_or_similarity | @svnentry | + @xmllocatable | @yaml_locatable; diff --git a/python/ql/lib/upgrades/8d257a4a9bc78e39856d6cd33499389fc5148d4f/upgrade.properties b/python/ql/lib/upgrades/8d257a4a9bc78e39856d6cd33499389fc5148d4f/upgrade.properties new file mode 100644 index 000000000000..00fae2d3bc61 --- /dev/null +++ b/python/ql/lib/upgrades/8d257a4a9bc78e39856d6cd33499389fc5148d4f/upgrade.properties @@ -0,0 +1,2 @@ +description: Sections for databaseMetadata and overlayChangedFiles +compatibility: full From 1fd60c7671c565a61a80edd6577ca4f3ef9f4a85 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 17:34:55 +0000 Subject: [PATCH 083/433] Ruby: Add up/downgrade scripts --- .../old.dbscheme | 1549 +++++++++++++++++ .../semmlecode.dbscheme | 1536 ++++++++++++++++ .../upgrade.properties | 2 + .../old.dbscheme | 1536 ++++++++++++++++ .../ruby.dbscheme | 1549 +++++++++++++++++ .../upgrade.properties | 2 + 6 files changed, 6174 insertions(+) create mode 100644 ruby/downgrades/29b7b6fc1982422368cb0a4644fd0c81f993c618/old.dbscheme create mode 100644 ruby/downgrades/29b7b6fc1982422368cb0a4644fd0c81f993c618/semmlecode.dbscheme create mode 100644 ruby/downgrades/29b7b6fc1982422368cb0a4644fd0c81f993c618/upgrade.properties create mode 100644 ruby/ql/lib/upgrades/eae6926f5000373d5eb1d82131e1ff6152b67b2c/old.dbscheme create mode 100644 ruby/ql/lib/upgrades/eae6926f5000373d5eb1d82131e1ff6152b67b2c/ruby.dbscheme create mode 100644 ruby/ql/lib/upgrades/eae6926f5000373d5eb1d82131e1ff6152b67b2c/upgrade.properties diff --git a/ruby/downgrades/29b7b6fc1982422368cb0a4644fd0c81f993c618/old.dbscheme b/ruby/downgrades/29b7b6fc1982422368cb0a4644fd0c81f993c618/old.dbscheme new file mode 100644 index 000000000000..29b7b6fc1982 --- /dev/null +++ b/ruby/downgrades/29b7b6fc1982422368cb0a4644fd0c81f993c618/old.dbscheme @@ -0,0 +1,1549 @@ +// CodeQL database schema for Ruby +// Automatically generated from the tree-sitter grammar; do not edit +// To regenerate, run 'make dbscheme' in ql/ruby/ + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Empty location -*/ + +empty_location( + int location: @location_default ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- Diagnostic messages: severity -*/ + +case @diagnostic.severity of + 10 = @diagnostic_debug +| 20 = @diagnostic_info +| 30 = @diagnostic_warning +| 40 = @diagnostic_error +; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- Ruby dbscheme -*/ +@ruby_underscore_arg = @ruby_assignment | @ruby_binary | @ruby_conditional | @ruby_operator_assignment | @ruby_range | @ruby_unary | @ruby_underscore_primary + +@ruby_underscore_call_operator = @ruby_reserved_word + +@ruby_underscore_expression = @ruby_assignment | @ruby_binary | @ruby_break | @ruby_call | @ruby_match_pattern | @ruby_next | @ruby_operator_assignment | @ruby_return | @ruby_test_pattern | @ruby_unary | @ruby_underscore_arg | @ruby_yield + +@ruby_underscore_lhs = @ruby_call | @ruby_element_reference | @ruby_scope_resolution | @ruby_token_false | @ruby_token_nil | @ruby_token_true | @ruby_underscore_variable + +@ruby_underscore_method_name = @ruby_delimited_symbol | @ruby_setter | @ruby_token_constant | @ruby_token_identifier | @ruby_token_operator | @ruby_token_simple_symbol | @ruby_underscore_nonlocal_variable + +@ruby_underscore_nonlocal_variable = @ruby_token_class_variable | @ruby_token_global_variable | @ruby_token_instance_variable + +@ruby_underscore_pattern_constant = @ruby_scope_resolution | @ruby_token_constant + +@ruby_underscore_pattern_expr = @ruby_alternative_pattern | @ruby_as_pattern | @ruby_underscore_pattern_expr_basic + +@ruby_underscore_pattern_expr_basic = @ruby_array_pattern | @ruby_expression_reference_pattern | @ruby_find_pattern | @ruby_hash_pattern | @ruby_parenthesized_pattern | @ruby_range | @ruby_token_identifier | @ruby_underscore_pattern_constant | @ruby_underscore_pattern_primitive | @ruby_variable_reference_pattern + +@ruby_underscore_pattern_primitive = @ruby_delimited_symbol | @ruby_lambda | @ruby_regex | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_symbol_array | @ruby_token_encoding | @ruby_token_false | @ruby_token_file | @ruby_token_heredoc_beginning | @ruby_token_line | @ruby_token_nil | @ruby_token_self | @ruby_token_simple_symbol | @ruby_token_true | @ruby_unary | @ruby_underscore_simple_numeric + +@ruby_underscore_pattern_top_expr_body = @ruby_array_pattern | @ruby_find_pattern | @ruby_hash_pattern | @ruby_underscore_pattern_expr + +@ruby_underscore_primary = @ruby_array | @ruby_begin | @ruby_break | @ruby_call | @ruby_case__ | @ruby_case_match | @ruby_chained_string | @ruby_class | @ruby_delimited_symbol | @ruby_for | @ruby_hash | @ruby_if | @ruby_lambda | @ruby_method | @ruby_module | @ruby_next | @ruby_parenthesized_statements | @ruby_redo | @ruby_regex | @ruby_retry | @ruby_return | @ruby_singleton_class | @ruby_singleton_method | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_symbol_array | @ruby_token_character | @ruby_token_heredoc_beginning | @ruby_token_simple_symbol | @ruby_unary | @ruby_underscore_lhs | @ruby_underscore_simple_numeric | @ruby_unless | @ruby_until | @ruby_while | @ruby_yield + +@ruby_underscore_simple_numeric = @ruby_complex | @ruby_rational | @ruby_token_float | @ruby_token_integer + +@ruby_underscore_statement = @ruby_alias | @ruby_begin_block | @ruby_end_block | @ruby_if_modifier | @ruby_rescue_modifier | @ruby_undef | @ruby_underscore_expression | @ruby_unless_modifier | @ruby_until_modifier | @ruby_while_modifier + +@ruby_underscore_variable = @ruby_token_constant | @ruby_token_identifier | @ruby_token_self | @ruby_token_super | @ruby_underscore_nonlocal_variable + +ruby_alias_def( + unique int id: @ruby_alias, + int alias: @ruby_underscore_method_name ref, + int name: @ruby_underscore_method_name ref +); + +#keyset[ruby_alternative_pattern, index] +ruby_alternative_pattern_alternatives( + int ruby_alternative_pattern: @ruby_alternative_pattern ref, + int index: int ref, + unique int alternatives: @ruby_underscore_pattern_expr_basic ref +); + +ruby_alternative_pattern_def( + unique int id: @ruby_alternative_pattern +); + +@ruby_argument_list_child_type = @ruby_block_argument | @ruby_hash_splat_argument | @ruby_pair | @ruby_splat_argument | @ruby_token_forward_argument | @ruby_underscore_expression + +#keyset[ruby_argument_list, index] +ruby_argument_list_child( + int ruby_argument_list: @ruby_argument_list ref, + int index: int ref, + unique int child: @ruby_argument_list_child_type ref +); + +ruby_argument_list_def( + unique int id: @ruby_argument_list +); + +@ruby_array_child_type = @ruby_block_argument | @ruby_hash_splat_argument | @ruby_pair | @ruby_splat_argument | @ruby_token_forward_argument | @ruby_underscore_expression + +#keyset[ruby_array, index] +ruby_array_child( + int ruby_array: @ruby_array ref, + int index: int ref, + unique int child: @ruby_array_child_type ref +); + +ruby_array_def( + unique int id: @ruby_array +); + +ruby_array_pattern_class( + unique int ruby_array_pattern: @ruby_array_pattern ref, + unique int class: @ruby_underscore_pattern_constant ref +); + +@ruby_array_pattern_child_type = @ruby_splat_parameter | @ruby_underscore_pattern_expr + +#keyset[ruby_array_pattern, index] +ruby_array_pattern_child( + int ruby_array_pattern: @ruby_array_pattern ref, + int index: int ref, + unique int child: @ruby_array_pattern_child_type ref +); + +ruby_array_pattern_def( + unique int id: @ruby_array_pattern +); + +ruby_as_pattern_def( + unique int id: @ruby_as_pattern, + int name: @ruby_token_identifier ref, + int value: @ruby_underscore_pattern_expr ref +); + +@ruby_assignment_left_type = @ruby_left_assignment_list | @ruby_underscore_lhs + +@ruby_assignment_right_type = @ruby_rescue_modifier | @ruby_right_assignment_list | @ruby_splat_argument | @ruby_underscore_expression + +ruby_assignment_def( + unique int id: @ruby_assignment, + int left: @ruby_assignment_left_type ref, + int right: @ruby_assignment_right_type ref +); + +@ruby_bare_string_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_bare_string, index] +ruby_bare_string_child( + int ruby_bare_string: @ruby_bare_string ref, + int index: int ref, + unique int child: @ruby_bare_string_child_type ref +); + +ruby_bare_string_def( + unique int id: @ruby_bare_string +); + +@ruby_bare_symbol_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_bare_symbol, index] +ruby_bare_symbol_child( + int ruby_bare_symbol: @ruby_bare_symbol ref, + int index: int ref, + unique int child: @ruby_bare_symbol_child_type ref +); + +ruby_bare_symbol_def( + unique int id: @ruby_bare_symbol +); + +@ruby_begin_child_type = @ruby_else | @ruby_ensure | @ruby_rescue | @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_begin, index] +ruby_begin_child( + int ruby_begin: @ruby_begin ref, + int index: int ref, + unique int child: @ruby_begin_child_type ref +); + +ruby_begin_def( + unique int id: @ruby_begin +); + +@ruby_begin_block_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_begin_block, index] +ruby_begin_block_child( + int ruby_begin_block: @ruby_begin_block ref, + int index: int ref, + unique int child: @ruby_begin_block_child_type ref +); + +ruby_begin_block_def( + unique int id: @ruby_begin_block +); + +@ruby_binary_left_type = @ruby_underscore_expression | @ruby_underscore_simple_numeric + +case @ruby_binary.operator of + 0 = @ruby_binary_bangequal +| 1 = @ruby_binary_bangtilde +| 2 = @ruby_binary_percent +| 3 = @ruby_binary_ampersand +| 4 = @ruby_binary_ampersandampersand +| 5 = @ruby_binary_star +| 6 = @ruby_binary_starstar +| 7 = @ruby_binary_plus +| 8 = @ruby_binary_minus +| 9 = @ruby_binary_slash +| 10 = @ruby_binary_langle +| 11 = @ruby_binary_langlelangle +| 12 = @ruby_binary_langleequal +| 13 = @ruby_binary_langleequalrangle +| 14 = @ruby_binary_equalequal +| 15 = @ruby_binary_equalequalequal +| 16 = @ruby_binary_equaltilde +| 17 = @ruby_binary_rangle +| 18 = @ruby_binary_rangleequal +| 19 = @ruby_binary_ranglerangle +| 20 = @ruby_binary_caret +| 21 = @ruby_binary_and +| 22 = @ruby_binary_or +| 23 = @ruby_binary_pipe +| 24 = @ruby_binary_pipepipe +; + + +ruby_binary_def( + unique int id: @ruby_binary, + int left: @ruby_binary_left_type ref, + int operator: int ref, + int right: @ruby_underscore_expression ref +); + +ruby_block_body( + unique int ruby_block: @ruby_block ref, + unique int body: @ruby_block_body ref +); + +ruby_block_parameters( + unique int ruby_block: @ruby_block ref, + unique int parameters: @ruby_block_parameters ref +); + +ruby_block_def( + unique int id: @ruby_block +); + +ruby_block_argument_child( + unique int ruby_block_argument: @ruby_block_argument ref, + unique int child: @ruby_underscore_arg ref +); + +ruby_block_argument_def( + unique int id: @ruby_block_argument +); + +@ruby_block_body_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_block_body, index] +ruby_block_body_child( + int ruby_block_body: @ruby_block_body ref, + int index: int ref, + unique int child: @ruby_block_body_child_type ref +); + +ruby_block_body_def( + unique int id: @ruby_block_body +); + +ruby_block_parameter_name( + unique int ruby_block_parameter: @ruby_block_parameter ref, + unique int name: @ruby_token_identifier ref +); + +ruby_block_parameter_def( + unique int id: @ruby_block_parameter +); + +#keyset[ruby_block_parameters, index] +ruby_block_parameters_locals( + int ruby_block_parameters: @ruby_block_parameters ref, + int index: int ref, + unique int locals: @ruby_token_identifier ref +); + +@ruby_block_parameters_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_block_parameters, index] +ruby_block_parameters_child( + int ruby_block_parameters: @ruby_block_parameters ref, + int index: int ref, + unique int child: @ruby_block_parameters_child_type ref +); + +ruby_block_parameters_def( + unique int id: @ruby_block_parameters +); + +@ruby_body_statement_child_type = @ruby_else | @ruby_ensure | @ruby_rescue | @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_body_statement, index] +ruby_body_statement_child( + int ruby_body_statement: @ruby_body_statement ref, + int index: int ref, + unique int child: @ruby_body_statement_child_type ref +); + +ruby_body_statement_def( + unique int id: @ruby_body_statement +); + +ruby_break_child( + unique int ruby_break: @ruby_break ref, + unique int child: @ruby_argument_list ref +); + +ruby_break_def( + unique int id: @ruby_break +); + +ruby_call_arguments( + unique int ruby_call: @ruby_call ref, + unique int arguments: @ruby_argument_list ref +); + +@ruby_call_block_type = @ruby_block | @ruby_do_block + +ruby_call_block( + unique int ruby_call: @ruby_call ref, + unique int block: @ruby_call_block_type ref +); + +@ruby_call_method_type = @ruby_token_operator | @ruby_underscore_variable + +ruby_call_method( + unique int ruby_call: @ruby_call ref, + unique int method: @ruby_call_method_type ref +); + +ruby_call_operator( + unique int ruby_call: @ruby_call ref, + unique int operator: @ruby_underscore_call_operator ref +); + +ruby_call_receiver( + unique int ruby_call: @ruby_call ref, + unique int receiver: @ruby_underscore_primary ref +); + +ruby_call_def( + unique int id: @ruby_call +); + +ruby_case_value( + unique int ruby_case__: @ruby_case__ ref, + unique int value: @ruby_underscore_statement ref +); + +@ruby_case_child_type = @ruby_else | @ruby_when + +#keyset[ruby_case__, index] +ruby_case_child( + int ruby_case__: @ruby_case__ ref, + int index: int ref, + unique int child: @ruby_case_child_type ref +); + +ruby_case_def( + unique int id: @ruby_case__ +); + +#keyset[ruby_case_match, index] +ruby_case_match_clauses( + int ruby_case_match: @ruby_case_match ref, + int index: int ref, + unique int clauses: @ruby_in_clause ref +); + +ruby_case_match_else( + unique int ruby_case_match: @ruby_case_match ref, + unique int else: @ruby_else ref +); + +ruby_case_match_def( + unique int id: @ruby_case_match, + int value: @ruby_underscore_statement ref +); + +#keyset[ruby_chained_string, index] +ruby_chained_string_child( + int ruby_chained_string: @ruby_chained_string ref, + int index: int ref, + unique int child: @ruby_string__ ref +); + +ruby_chained_string_def( + unique int id: @ruby_chained_string +); + +ruby_class_body( + unique int ruby_class: @ruby_class ref, + unique int body: @ruby_body_statement ref +); + +@ruby_class_name_type = @ruby_scope_resolution | @ruby_token_constant + +ruby_class_superclass( + unique int ruby_class: @ruby_class ref, + unique int superclass: @ruby_superclass ref +); + +ruby_class_def( + unique int id: @ruby_class, + int name: @ruby_class_name_type ref +); + +@ruby_complex_child_type = @ruby_rational | @ruby_token_float | @ruby_token_integer + +ruby_complex_def( + unique int id: @ruby_complex, + int child: @ruby_complex_child_type ref +); + +ruby_conditional_def( + unique int id: @ruby_conditional, + int alternative: @ruby_underscore_arg ref, + int condition: @ruby_underscore_arg ref, + int consequence: @ruby_underscore_arg ref +); + +@ruby_delimited_symbol_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_delimited_symbol, index] +ruby_delimited_symbol_child( + int ruby_delimited_symbol: @ruby_delimited_symbol ref, + int index: int ref, + unique int child: @ruby_delimited_symbol_child_type ref +); + +ruby_delimited_symbol_def( + unique int id: @ruby_delimited_symbol +); + +@ruby_destructured_left_assignment_child_type = @ruby_destructured_left_assignment | @ruby_rest_assignment | @ruby_underscore_lhs + +#keyset[ruby_destructured_left_assignment, index] +ruby_destructured_left_assignment_child( + int ruby_destructured_left_assignment: @ruby_destructured_left_assignment ref, + int index: int ref, + unique int child: @ruby_destructured_left_assignment_child_type ref +); + +ruby_destructured_left_assignment_def( + unique int id: @ruby_destructured_left_assignment +); + +@ruby_destructured_parameter_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_destructured_parameter, index] +ruby_destructured_parameter_child( + int ruby_destructured_parameter: @ruby_destructured_parameter ref, + int index: int ref, + unique int child: @ruby_destructured_parameter_child_type ref +); + +ruby_destructured_parameter_def( + unique int id: @ruby_destructured_parameter +); + +@ruby_do_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_do, index] +ruby_do_child( + int ruby_do: @ruby_do ref, + int index: int ref, + unique int child: @ruby_do_child_type ref +); + +ruby_do_def( + unique int id: @ruby_do +); + +ruby_do_block_body( + unique int ruby_do_block: @ruby_do_block ref, + unique int body: @ruby_body_statement ref +); + +ruby_do_block_parameters( + unique int ruby_do_block: @ruby_do_block ref, + unique int parameters: @ruby_block_parameters ref +); + +ruby_do_block_def( + unique int id: @ruby_do_block +); + +@ruby_element_reference_block_type = @ruby_block | @ruby_do_block + +ruby_element_reference_block( + unique int ruby_element_reference: @ruby_element_reference ref, + unique int block: @ruby_element_reference_block_type ref +); + +@ruby_element_reference_child_type = @ruby_block_argument | @ruby_hash_splat_argument | @ruby_pair | @ruby_splat_argument | @ruby_token_forward_argument | @ruby_underscore_expression + +#keyset[ruby_element_reference, index] +ruby_element_reference_child( + int ruby_element_reference: @ruby_element_reference ref, + int index: int ref, + unique int child: @ruby_element_reference_child_type ref +); + +ruby_element_reference_def( + unique int id: @ruby_element_reference, + int object: @ruby_underscore_primary ref +); + +@ruby_else_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_else, index] +ruby_else_child( + int ruby_else: @ruby_else ref, + int index: int ref, + unique int child: @ruby_else_child_type ref +); + +ruby_else_def( + unique int id: @ruby_else +); + +@ruby_elsif_alternative_type = @ruby_else | @ruby_elsif + +ruby_elsif_alternative( + unique int ruby_elsif: @ruby_elsif ref, + unique int alternative: @ruby_elsif_alternative_type ref +); + +ruby_elsif_consequence( + unique int ruby_elsif: @ruby_elsif ref, + unique int consequence: @ruby_then ref +); + +ruby_elsif_def( + unique int id: @ruby_elsif, + int condition: @ruby_underscore_statement ref +); + +@ruby_end_block_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_end_block, index] +ruby_end_block_child( + int ruby_end_block: @ruby_end_block ref, + int index: int ref, + unique int child: @ruby_end_block_child_type ref +); + +ruby_end_block_def( + unique int id: @ruby_end_block +); + +@ruby_ensure_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_ensure, index] +ruby_ensure_child( + int ruby_ensure: @ruby_ensure ref, + int index: int ref, + unique int child: @ruby_ensure_child_type ref +); + +ruby_ensure_def( + unique int id: @ruby_ensure +); + +ruby_exception_variable_def( + unique int id: @ruby_exception_variable, + int child: @ruby_underscore_lhs ref +); + +@ruby_exceptions_child_type = @ruby_splat_argument | @ruby_underscore_arg + +#keyset[ruby_exceptions, index] +ruby_exceptions_child( + int ruby_exceptions: @ruby_exceptions ref, + int index: int ref, + unique int child: @ruby_exceptions_child_type ref +); + +ruby_exceptions_def( + unique int id: @ruby_exceptions +); + +ruby_expression_reference_pattern_def( + unique int id: @ruby_expression_reference_pattern, + int value: @ruby_underscore_expression ref +); + +ruby_find_pattern_class( + unique int ruby_find_pattern: @ruby_find_pattern ref, + unique int class: @ruby_underscore_pattern_constant ref +); + +@ruby_find_pattern_child_type = @ruby_splat_parameter | @ruby_underscore_pattern_expr + +#keyset[ruby_find_pattern, index] +ruby_find_pattern_child( + int ruby_find_pattern: @ruby_find_pattern ref, + int index: int ref, + unique int child: @ruby_find_pattern_child_type ref +); + +ruby_find_pattern_def( + unique int id: @ruby_find_pattern +); + +@ruby_for_pattern_type = @ruby_left_assignment_list | @ruby_underscore_lhs + +ruby_for_def( + unique int id: @ruby_for, + int body: @ruby_do ref, + int pattern: @ruby_for_pattern_type ref, + int value: @ruby_in ref +); + +@ruby_hash_child_type = @ruby_hash_splat_argument | @ruby_pair + +#keyset[ruby_hash, index] +ruby_hash_child( + int ruby_hash: @ruby_hash ref, + int index: int ref, + unique int child: @ruby_hash_child_type ref +); + +ruby_hash_def( + unique int id: @ruby_hash +); + +ruby_hash_pattern_class( + unique int ruby_hash_pattern: @ruby_hash_pattern ref, + unique int class: @ruby_underscore_pattern_constant ref +); + +@ruby_hash_pattern_child_type = @ruby_hash_splat_parameter | @ruby_keyword_pattern | @ruby_token_hash_splat_nil + +#keyset[ruby_hash_pattern, index] +ruby_hash_pattern_child( + int ruby_hash_pattern: @ruby_hash_pattern ref, + int index: int ref, + unique int child: @ruby_hash_pattern_child_type ref +); + +ruby_hash_pattern_def( + unique int id: @ruby_hash_pattern +); + +ruby_hash_splat_argument_child( + unique int ruby_hash_splat_argument: @ruby_hash_splat_argument ref, + unique int child: @ruby_underscore_arg ref +); + +ruby_hash_splat_argument_def( + unique int id: @ruby_hash_splat_argument +); + +ruby_hash_splat_parameter_name( + unique int ruby_hash_splat_parameter: @ruby_hash_splat_parameter ref, + unique int name: @ruby_token_identifier ref +); + +ruby_hash_splat_parameter_def( + unique int id: @ruby_hash_splat_parameter +); + +@ruby_heredoc_body_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_heredoc_content | @ruby_token_heredoc_end + +#keyset[ruby_heredoc_body, index] +ruby_heredoc_body_child( + int ruby_heredoc_body: @ruby_heredoc_body ref, + int index: int ref, + unique int child: @ruby_heredoc_body_child_type ref +); + +ruby_heredoc_body_def( + unique int id: @ruby_heredoc_body +); + +@ruby_if_alternative_type = @ruby_else | @ruby_elsif + +ruby_if_alternative( + unique int ruby_if: @ruby_if ref, + unique int alternative: @ruby_if_alternative_type ref +); + +ruby_if_consequence( + unique int ruby_if: @ruby_if ref, + unique int consequence: @ruby_then ref +); + +ruby_if_def( + unique int id: @ruby_if, + int condition: @ruby_underscore_statement ref +); + +ruby_if_guard_def( + unique int id: @ruby_if_guard, + int condition: @ruby_underscore_expression ref +); + +ruby_if_modifier_def( + unique int id: @ruby_if_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +ruby_in_def( + unique int id: @ruby_in, + int child: @ruby_underscore_arg ref +); + +ruby_in_clause_body( + unique int ruby_in_clause: @ruby_in_clause ref, + unique int body: @ruby_then ref +); + +@ruby_in_clause_guard_type = @ruby_if_guard | @ruby_unless_guard + +ruby_in_clause_guard( + unique int ruby_in_clause: @ruby_in_clause ref, + unique int guard: @ruby_in_clause_guard_type ref +); + +ruby_in_clause_def( + unique int id: @ruby_in_clause, + int pattern: @ruby_underscore_pattern_top_expr_body ref +); + +@ruby_interpolation_child_type = @ruby_token_empty_statement | @ruby_underscore_nonlocal_variable | @ruby_underscore_statement + +#keyset[ruby_interpolation, index] +ruby_interpolation_child( + int ruby_interpolation: @ruby_interpolation ref, + int index: int ref, + unique int child: @ruby_interpolation_child_type ref +); + +ruby_interpolation_def( + unique int id: @ruby_interpolation +); + +ruby_keyword_parameter_value( + unique int ruby_keyword_parameter: @ruby_keyword_parameter ref, + unique int value: @ruby_underscore_arg ref +); + +ruby_keyword_parameter_def( + unique int id: @ruby_keyword_parameter, + int name: @ruby_token_identifier ref +); + +@ruby_keyword_pattern_key_type = @ruby_string__ | @ruby_token_hash_key_symbol + +ruby_keyword_pattern_value( + unique int ruby_keyword_pattern: @ruby_keyword_pattern ref, + unique int value: @ruby_underscore_pattern_expr ref +); + +ruby_keyword_pattern_def( + unique int id: @ruby_keyword_pattern, + int key__: @ruby_keyword_pattern_key_type ref +); + +@ruby_lambda_body_type = @ruby_block | @ruby_do_block + +ruby_lambda_parameters( + unique int ruby_lambda: @ruby_lambda ref, + unique int parameters: @ruby_lambda_parameters ref +); + +ruby_lambda_def( + unique int id: @ruby_lambda, + int body: @ruby_lambda_body_type ref +); + +@ruby_lambda_parameters_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_lambda_parameters, index] +ruby_lambda_parameters_child( + int ruby_lambda_parameters: @ruby_lambda_parameters ref, + int index: int ref, + unique int child: @ruby_lambda_parameters_child_type ref +); + +ruby_lambda_parameters_def( + unique int id: @ruby_lambda_parameters +); + +@ruby_left_assignment_list_child_type = @ruby_destructured_left_assignment | @ruby_rest_assignment | @ruby_underscore_lhs + +#keyset[ruby_left_assignment_list, index] +ruby_left_assignment_list_child( + int ruby_left_assignment_list: @ruby_left_assignment_list ref, + int index: int ref, + unique int child: @ruby_left_assignment_list_child_type ref +); + +ruby_left_assignment_list_def( + unique int id: @ruby_left_assignment_list +); + +ruby_match_pattern_def( + unique int id: @ruby_match_pattern, + int pattern: @ruby_underscore_pattern_top_expr_body ref, + int value: @ruby_underscore_arg ref +); + +@ruby_method_body_type = @ruby_body_statement | @ruby_rescue_modifier | @ruby_underscore_arg + +ruby_method_body( + unique int ruby_method: @ruby_method ref, + unique int body: @ruby_method_body_type ref +); + +ruby_method_parameters( + unique int ruby_method: @ruby_method ref, + unique int parameters: @ruby_method_parameters ref +); + +ruby_method_def( + unique int id: @ruby_method, + int name: @ruby_underscore_method_name ref +); + +@ruby_method_parameters_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_method_parameters, index] +ruby_method_parameters_child( + int ruby_method_parameters: @ruby_method_parameters ref, + int index: int ref, + unique int child: @ruby_method_parameters_child_type ref +); + +ruby_method_parameters_def( + unique int id: @ruby_method_parameters +); + +ruby_module_body( + unique int ruby_module: @ruby_module ref, + unique int body: @ruby_body_statement ref +); + +@ruby_module_name_type = @ruby_scope_resolution | @ruby_token_constant + +ruby_module_def( + unique int id: @ruby_module, + int name: @ruby_module_name_type ref +); + +ruby_next_child( + unique int ruby_next: @ruby_next ref, + unique int child: @ruby_argument_list ref +); + +ruby_next_def( + unique int id: @ruby_next +); + +case @ruby_operator_assignment.operator of + 0 = @ruby_operator_assignment_percentequal +| 1 = @ruby_operator_assignment_ampersandampersandequal +| 2 = @ruby_operator_assignment_ampersandequal +| 3 = @ruby_operator_assignment_starstarequal +| 4 = @ruby_operator_assignment_starequal +| 5 = @ruby_operator_assignment_plusequal +| 6 = @ruby_operator_assignment_minusequal +| 7 = @ruby_operator_assignment_slashequal +| 8 = @ruby_operator_assignment_langlelangleequal +| 9 = @ruby_operator_assignment_ranglerangleequal +| 10 = @ruby_operator_assignment_caretequal +| 11 = @ruby_operator_assignment_pipeequal +| 12 = @ruby_operator_assignment_pipepipeequal +; + + +@ruby_operator_assignment_right_type = @ruby_rescue_modifier | @ruby_underscore_expression + +ruby_operator_assignment_def( + unique int id: @ruby_operator_assignment, + int left: @ruby_underscore_lhs ref, + int operator: int ref, + int right: @ruby_operator_assignment_right_type ref +); + +ruby_optional_parameter_def( + unique int id: @ruby_optional_parameter, + int name: @ruby_token_identifier ref, + int value: @ruby_underscore_arg ref +); + +@ruby_pair_key_type = @ruby_string__ | @ruby_token_hash_key_symbol | @ruby_underscore_arg + +ruby_pair_value( + unique int ruby_pair: @ruby_pair ref, + unique int value: @ruby_underscore_arg ref +); + +ruby_pair_def( + unique int id: @ruby_pair, + int key__: @ruby_pair_key_type ref +); + +ruby_parenthesized_pattern_def( + unique int id: @ruby_parenthesized_pattern, + int child: @ruby_underscore_pattern_expr ref +); + +@ruby_parenthesized_statements_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_parenthesized_statements, index] +ruby_parenthesized_statements_child( + int ruby_parenthesized_statements: @ruby_parenthesized_statements ref, + int index: int ref, + unique int child: @ruby_parenthesized_statements_child_type ref +); + +ruby_parenthesized_statements_def( + unique int id: @ruby_parenthesized_statements +); + +@ruby_pattern_child_type = @ruby_splat_argument | @ruby_underscore_arg + +ruby_pattern_def( + unique int id: @ruby_pattern, + int child: @ruby_pattern_child_type ref +); + +@ruby_program_child_type = @ruby_token_empty_statement | @ruby_token_uninterpreted | @ruby_underscore_statement + +#keyset[ruby_program, index] +ruby_program_child( + int ruby_program: @ruby_program ref, + int index: int ref, + unique int child: @ruby_program_child_type ref +); + +ruby_program_def( + unique int id: @ruby_program +); + +@ruby_range_begin_type = @ruby_underscore_arg | @ruby_underscore_pattern_primitive + +ruby_range_begin( + unique int ruby_range: @ruby_range ref, + unique int begin: @ruby_range_begin_type ref +); + +@ruby_range_end_type = @ruby_underscore_arg | @ruby_underscore_pattern_primitive + +ruby_range_end( + unique int ruby_range: @ruby_range ref, + unique int end: @ruby_range_end_type ref +); + +case @ruby_range.operator of + 0 = @ruby_range_dotdot +| 1 = @ruby_range_dotdotdot +; + + +ruby_range_def( + unique int id: @ruby_range, + int operator: int ref +); + +@ruby_rational_child_type = @ruby_token_float | @ruby_token_integer + +ruby_rational_def( + unique int id: @ruby_rational, + int child: @ruby_rational_child_type ref +); + +ruby_redo_child( + unique int ruby_redo: @ruby_redo ref, + unique int child: @ruby_argument_list ref +); + +ruby_redo_def( + unique int id: @ruby_redo +); + +@ruby_regex_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_regex, index] +ruby_regex_child( + int ruby_regex: @ruby_regex ref, + int index: int ref, + unique int child: @ruby_regex_child_type ref +); + +ruby_regex_def( + unique int id: @ruby_regex +); + +ruby_rescue_body( + unique int ruby_rescue: @ruby_rescue ref, + unique int body: @ruby_then ref +); + +ruby_rescue_exceptions( + unique int ruby_rescue: @ruby_rescue ref, + unique int exceptions: @ruby_exceptions ref +); + +ruby_rescue_variable( + unique int ruby_rescue: @ruby_rescue ref, + unique int variable: @ruby_exception_variable ref +); + +ruby_rescue_def( + unique int id: @ruby_rescue +); + +@ruby_rescue_modifier_body_type = @ruby_underscore_arg | @ruby_underscore_statement + +ruby_rescue_modifier_def( + unique int id: @ruby_rescue_modifier, + int body: @ruby_rescue_modifier_body_type ref, + int handler: @ruby_underscore_expression ref +); + +ruby_rest_assignment_child( + unique int ruby_rest_assignment: @ruby_rest_assignment ref, + unique int child: @ruby_underscore_lhs ref +); + +ruby_rest_assignment_def( + unique int id: @ruby_rest_assignment +); + +ruby_retry_child( + unique int ruby_retry: @ruby_retry ref, + unique int child: @ruby_argument_list ref +); + +ruby_retry_def( + unique int id: @ruby_retry +); + +ruby_return_child( + unique int ruby_return: @ruby_return ref, + unique int child: @ruby_argument_list ref +); + +ruby_return_def( + unique int id: @ruby_return +); + +@ruby_right_assignment_list_child_type = @ruby_splat_argument | @ruby_underscore_arg + +#keyset[ruby_right_assignment_list, index] +ruby_right_assignment_list_child( + int ruby_right_assignment_list: @ruby_right_assignment_list ref, + int index: int ref, + unique int child: @ruby_right_assignment_list_child_type ref +); + +ruby_right_assignment_list_def( + unique int id: @ruby_right_assignment_list +); + +@ruby_scope_resolution_scope_type = @ruby_underscore_pattern_constant | @ruby_underscore_primary + +ruby_scope_resolution_scope( + unique int ruby_scope_resolution: @ruby_scope_resolution ref, + unique int scope: @ruby_scope_resolution_scope_type ref +); + +ruby_scope_resolution_def( + unique int id: @ruby_scope_resolution, + int name: @ruby_token_constant ref +); + +ruby_setter_def( + unique int id: @ruby_setter, + int name: @ruby_token_identifier ref +); + +ruby_singleton_class_body( + unique int ruby_singleton_class: @ruby_singleton_class ref, + unique int body: @ruby_body_statement ref +); + +ruby_singleton_class_def( + unique int id: @ruby_singleton_class, + int value: @ruby_underscore_arg ref +); + +@ruby_singleton_method_body_type = @ruby_body_statement | @ruby_rescue_modifier | @ruby_underscore_arg + +ruby_singleton_method_body( + unique int ruby_singleton_method: @ruby_singleton_method ref, + unique int body: @ruby_singleton_method_body_type ref +); + +@ruby_singleton_method_object_type = @ruby_underscore_arg | @ruby_underscore_variable + +ruby_singleton_method_parameters( + unique int ruby_singleton_method: @ruby_singleton_method ref, + unique int parameters: @ruby_method_parameters ref +); + +ruby_singleton_method_def( + unique int id: @ruby_singleton_method, + int name: @ruby_underscore_method_name ref, + int object: @ruby_singleton_method_object_type ref +); + +ruby_splat_argument_child( + unique int ruby_splat_argument: @ruby_splat_argument ref, + unique int child: @ruby_underscore_arg ref +); + +ruby_splat_argument_def( + unique int id: @ruby_splat_argument +); + +ruby_splat_parameter_name( + unique int ruby_splat_parameter: @ruby_splat_parameter ref, + unique int name: @ruby_token_identifier ref +); + +ruby_splat_parameter_def( + unique int id: @ruby_splat_parameter +); + +@ruby_string_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_string__, index] +ruby_string_child( + int ruby_string__: @ruby_string__ ref, + int index: int ref, + unique int child: @ruby_string_child_type ref +); + +ruby_string_def( + unique int id: @ruby_string__ +); + +#keyset[ruby_string_array, index] +ruby_string_array_child( + int ruby_string_array: @ruby_string_array ref, + int index: int ref, + unique int child: @ruby_bare_string ref +); + +ruby_string_array_def( + unique int id: @ruby_string_array +); + +@ruby_subshell_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_subshell, index] +ruby_subshell_child( + int ruby_subshell: @ruby_subshell ref, + int index: int ref, + unique int child: @ruby_subshell_child_type ref +); + +ruby_subshell_def( + unique int id: @ruby_subshell +); + +ruby_superclass_def( + unique int id: @ruby_superclass, + int child: @ruby_underscore_expression ref +); + +#keyset[ruby_symbol_array, index] +ruby_symbol_array_child( + int ruby_symbol_array: @ruby_symbol_array ref, + int index: int ref, + unique int child: @ruby_bare_symbol ref +); + +ruby_symbol_array_def( + unique int id: @ruby_symbol_array +); + +ruby_test_pattern_def( + unique int id: @ruby_test_pattern, + int pattern: @ruby_underscore_pattern_top_expr_body ref, + int value: @ruby_underscore_arg ref +); + +@ruby_then_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_then, index] +ruby_then_child( + int ruby_then: @ruby_then ref, + int index: int ref, + unique int child: @ruby_then_child_type ref +); + +ruby_then_def( + unique int id: @ruby_then +); + +@ruby_unary_operand_type = @ruby_parenthesized_statements | @ruby_underscore_expression | @ruby_underscore_simple_numeric + +case @ruby_unary.operator of + 0 = @ruby_unary_bang +| 1 = @ruby_unary_plus +| 2 = @ruby_unary_minus +| 3 = @ruby_unary_definedquestion +| 4 = @ruby_unary_not +| 5 = @ruby_unary_tilde +; + + +ruby_unary_def( + unique int id: @ruby_unary, + int operand: @ruby_unary_operand_type ref, + int operator: int ref +); + +#keyset[ruby_undef, index] +ruby_undef_child( + int ruby_undef: @ruby_undef ref, + int index: int ref, + unique int child: @ruby_underscore_method_name ref +); + +ruby_undef_def( + unique int id: @ruby_undef +); + +@ruby_unless_alternative_type = @ruby_else | @ruby_elsif + +ruby_unless_alternative( + unique int ruby_unless: @ruby_unless ref, + unique int alternative: @ruby_unless_alternative_type ref +); + +ruby_unless_consequence( + unique int ruby_unless: @ruby_unless ref, + unique int consequence: @ruby_then ref +); + +ruby_unless_def( + unique int id: @ruby_unless, + int condition: @ruby_underscore_statement ref +); + +ruby_unless_guard_def( + unique int id: @ruby_unless_guard, + int condition: @ruby_underscore_expression ref +); + +ruby_unless_modifier_def( + unique int id: @ruby_unless_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +ruby_until_def( + unique int id: @ruby_until, + int body: @ruby_do ref, + int condition: @ruby_underscore_statement ref +); + +ruby_until_modifier_def( + unique int id: @ruby_until_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +@ruby_variable_reference_pattern_name_type = @ruby_token_identifier | @ruby_underscore_nonlocal_variable + +ruby_variable_reference_pattern_def( + unique int id: @ruby_variable_reference_pattern, + int name: @ruby_variable_reference_pattern_name_type ref +); + +ruby_when_body( + unique int ruby_when: @ruby_when ref, + unique int body: @ruby_then ref +); + +#keyset[ruby_when, index] +ruby_when_pattern( + int ruby_when: @ruby_when ref, + int index: int ref, + unique int pattern: @ruby_pattern ref +); + +ruby_when_def( + unique int id: @ruby_when +); + +ruby_while_def( + unique int id: @ruby_while, + int body: @ruby_do ref, + int condition: @ruby_underscore_statement ref +); + +ruby_while_modifier_def( + unique int id: @ruby_while_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +ruby_yield_child( + unique int ruby_yield: @ruby_yield ref, + unique int child: @ruby_argument_list ref +); + +ruby_yield_def( + unique int id: @ruby_yield +); + +ruby_tokeninfo( + unique int id: @ruby_token, + int kind: int ref, + string value: string ref +); + +case @ruby_token.kind of + 0 = @ruby_reserved_word +| 1 = @ruby_token_character +| 2 = @ruby_token_class_variable +| 3 = @ruby_token_comment +| 4 = @ruby_token_constant +| 5 = @ruby_token_empty_statement +| 6 = @ruby_token_encoding +| 7 = @ruby_token_escape_sequence +| 8 = @ruby_token_false +| 9 = @ruby_token_file +| 10 = @ruby_token_float +| 11 = @ruby_token_forward_argument +| 12 = @ruby_token_forward_parameter +| 13 = @ruby_token_global_variable +| 14 = @ruby_token_hash_key_symbol +| 15 = @ruby_token_hash_splat_nil +| 16 = @ruby_token_heredoc_beginning +| 17 = @ruby_token_heredoc_content +| 18 = @ruby_token_heredoc_end +| 19 = @ruby_token_identifier +| 20 = @ruby_token_instance_variable +| 21 = @ruby_token_integer +| 22 = @ruby_token_line +| 23 = @ruby_token_nil +| 24 = @ruby_token_operator +| 25 = @ruby_token_self +| 26 = @ruby_token_simple_symbol +| 27 = @ruby_token_string_content +| 28 = @ruby_token_super +| 29 = @ruby_token_true +| 30 = @ruby_token_uninterpreted +; + + +@ruby_ast_node = @ruby_alias | @ruby_alternative_pattern | @ruby_argument_list | @ruby_array | @ruby_array_pattern | @ruby_as_pattern | @ruby_assignment | @ruby_bare_string | @ruby_bare_symbol | @ruby_begin | @ruby_begin_block | @ruby_binary | @ruby_block | @ruby_block_argument | @ruby_block_body | @ruby_block_parameter | @ruby_block_parameters | @ruby_body_statement | @ruby_break | @ruby_call | @ruby_case__ | @ruby_case_match | @ruby_chained_string | @ruby_class | @ruby_complex | @ruby_conditional | @ruby_delimited_symbol | @ruby_destructured_left_assignment | @ruby_destructured_parameter | @ruby_do | @ruby_do_block | @ruby_element_reference | @ruby_else | @ruby_elsif | @ruby_end_block | @ruby_ensure | @ruby_exception_variable | @ruby_exceptions | @ruby_expression_reference_pattern | @ruby_find_pattern | @ruby_for | @ruby_hash | @ruby_hash_pattern | @ruby_hash_splat_argument | @ruby_hash_splat_parameter | @ruby_heredoc_body | @ruby_if | @ruby_if_guard | @ruby_if_modifier | @ruby_in | @ruby_in_clause | @ruby_interpolation | @ruby_keyword_parameter | @ruby_keyword_pattern | @ruby_lambda | @ruby_lambda_parameters | @ruby_left_assignment_list | @ruby_match_pattern | @ruby_method | @ruby_method_parameters | @ruby_module | @ruby_next | @ruby_operator_assignment | @ruby_optional_parameter | @ruby_pair | @ruby_parenthesized_pattern | @ruby_parenthesized_statements | @ruby_pattern | @ruby_program | @ruby_range | @ruby_rational | @ruby_redo | @ruby_regex | @ruby_rescue | @ruby_rescue_modifier | @ruby_rest_assignment | @ruby_retry | @ruby_return | @ruby_right_assignment_list | @ruby_scope_resolution | @ruby_setter | @ruby_singleton_class | @ruby_singleton_method | @ruby_splat_argument | @ruby_splat_parameter | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_superclass | @ruby_symbol_array | @ruby_test_pattern | @ruby_then | @ruby_token | @ruby_unary | @ruby_undef | @ruby_unless | @ruby_unless_guard | @ruby_unless_modifier | @ruby_until | @ruby_until_modifier | @ruby_variable_reference_pattern | @ruby_when | @ruby_while | @ruby_while_modifier | @ruby_yield + +ruby_ast_node_location( + unique int node: @ruby_ast_node ref, + int loc: @location_default ref +); + +#keyset[parent, parent_index] +ruby_ast_node_parent( + unique int node: @ruby_ast_node ref, + int parent: @ruby_ast_node ref, + int parent_index: int ref +); + +/*- Erb dbscheme -*/ +erb_comment_directive_child( + unique int erb_comment_directive: @erb_comment_directive ref, + unique int child: @erb_token_comment ref +); + +erb_comment_directive_def( + unique int id: @erb_comment_directive +); + +erb_directive_child( + unique int erb_directive: @erb_directive ref, + unique int child: @erb_token_code ref +); + +erb_directive_def( + unique int id: @erb_directive +); + +erb_graphql_directive_child( + unique int erb_graphql_directive: @erb_graphql_directive ref, + unique int child: @erb_token_code ref +); + +erb_graphql_directive_def( + unique int id: @erb_graphql_directive +); + +erb_output_directive_child( + unique int erb_output_directive: @erb_output_directive ref, + unique int child: @erb_token_code ref +); + +erb_output_directive_def( + unique int id: @erb_output_directive +); + +@erb_template_child_type = @erb_comment_directive | @erb_directive | @erb_graphql_directive | @erb_output_directive | @erb_token_content + +#keyset[erb_template, index] +erb_template_child( + int erb_template: @erb_template ref, + int index: int ref, + unique int child: @erb_template_child_type ref +); + +erb_template_def( + unique int id: @erb_template +); + +erb_tokeninfo( + unique int id: @erb_token, + int kind: int ref, + string value: string ref +); + +case @erb_token.kind of + 0 = @erb_reserved_word +| 1 = @erb_token_code +| 2 = @erb_token_comment +| 3 = @erb_token_content +; + + +@erb_ast_node = @erb_comment_directive | @erb_directive | @erb_graphql_directive | @erb_output_directive | @erb_template | @erb_token + +erb_ast_node_location( + unique int node: @erb_ast_node ref, + int loc: @location_default ref +); + +#keyset[parent, parent_index] +erb_ast_node_parent( + unique int node: @erb_ast_node ref, + int parent: @erb_ast_node ref, + int parent_index: int ref +); + diff --git a/ruby/downgrades/29b7b6fc1982422368cb0a4644fd0c81f993c618/semmlecode.dbscheme b/ruby/downgrades/29b7b6fc1982422368cb0a4644fd0c81f993c618/semmlecode.dbscheme new file mode 100644 index 000000000000..eae6926f5000 --- /dev/null +++ b/ruby/downgrades/29b7b6fc1982422368cb0a4644fd0c81f993c618/semmlecode.dbscheme @@ -0,0 +1,1536 @@ +// CodeQL database schema for Ruby +// Automatically generated from the tree-sitter grammar; do not edit + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Empty location -*/ + +empty_location( + int location: @location_default ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- Diagnostic messages: severity -*/ + +case @diagnostic.severity of + 10 = @diagnostic_debug +| 20 = @diagnostic_info +| 30 = @diagnostic_warning +| 40 = @diagnostic_error +; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Database metadata -*/ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +overlayChangedFiles( + string path: string ref +); + +/*- Ruby dbscheme -*/ +@ruby_underscore_arg = @ruby_assignment | @ruby_binary | @ruby_conditional | @ruby_operator_assignment | @ruby_range | @ruby_unary | @ruby_underscore_primary + +@ruby_underscore_call_operator = @ruby_reserved_word + +@ruby_underscore_expression = @ruby_assignment | @ruby_binary | @ruby_break | @ruby_call | @ruby_match_pattern | @ruby_next | @ruby_operator_assignment | @ruby_return | @ruby_test_pattern | @ruby_unary | @ruby_underscore_arg | @ruby_yield + +@ruby_underscore_lhs = @ruby_call | @ruby_element_reference | @ruby_scope_resolution | @ruby_token_false | @ruby_token_nil | @ruby_token_true | @ruby_underscore_variable + +@ruby_underscore_method_name = @ruby_delimited_symbol | @ruby_setter | @ruby_token_constant | @ruby_token_identifier | @ruby_token_operator | @ruby_token_simple_symbol | @ruby_underscore_nonlocal_variable + +@ruby_underscore_nonlocal_variable = @ruby_token_class_variable | @ruby_token_global_variable | @ruby_token_instance_variable + +@ruby_underscore_pattern_constant = @ruby_scope_resolution | @ruby_token_constant + +@ruby_underscore_pattern_expr = @ruby_alternative_pattern | @ruby_as_pattern | @ruby_underscore_pattern_expr_basic + +@ruby_underscore_pattern_expr_basic = @ruby_array_pattern | @ruby_expression_reference_pattern | @ruby_find_pattern | @ruby_hash_pattern | @ruby_parenthesized_pattern | @ruby_range | @ruby_token_identifier | @ruby_underscore_pattern_constant | @ruby_underscore_pattern_primitive | @ruby_variable_reference_pattern + +@ruby_underscore_pattern_primitive = @ruby_delimited_symbol | @ruby_lambda | @ruby_regex | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_symbol_array | @ruby_token_encoding | @ruby_token_false | @ruby_token_file | @ruby_token_heredoc_beginning | @ruby_token_line | @ruby_token_nil | @ruby_token_self | @ruby_token_simple_symbol | @ruby_token_true | @ruby_unary | @ruby_underscore_simple_numeric + +@ruby_underscore_pattern_top_expr_body = @ruby_array_pattern | @ruby_find_pattern | @ruby_hash_pattern | @ruby_underscore_pattern_expr + +@ruby_underscore_primary = @ruby_array | @ruby_begin | @ruby_break | @ruby_call | @ruby_case__ | @ruby_case_match | @ruby_chained_string | @ruby_class | @ruby_delimited_symbol | @ruby_for | @ruby_hash | @ruby_if | @ruby_lambda | @ruby_method | @ruby_module | @ruby_next | @ruby_parenthesized_statements | @ruby_redo | @ruby_regex | @ruby_retry | @ruby_return | @ruby_singleton_class | @ruby_singleton_method | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_symbol_array | @ruby_token_character | @ruby_token_heredoc_beginning | @ruby_token_simple_symbol | @ruby_unary | @ruby_underscore_lhs | @ruby_underscore_simple_numeric | @ruby_unless | @ruby_until | @ruby_while | @ruby_yield + +@ruby_underscore_simple_numeric = @ruby_complex | @ruby_rational | @ruby_token_float | @ruby_token_integer + +@ruby_underscore_statement = @ruby_alias | @ruby_begin_block | @ruby_end_block | @ruby_if_modifier | @ruby_rescue_modifier | @ruby_undef | @ruby_underscore_expression | @ruby_unless_modifier | @ruby_until_modifier | @ruby_while_modifier + +@ruby_underscore_variable = @ruby_token_constant | @ruby_token_identifier | @ruby_token_self | @ruby_token_super | @ruby_underscore_nonlocal_variable + +ruby_alias_def( + unique int id: @ruby_alias, + int alias: @ruby_underscore_method_name ref, + int name: @ruby_underscore_method_name ref +); + +#keyset[ruby_alternative_pattern, index] +ruby_alternative_pattern_alternatives( + int ruby_alternative_pattern: @ruby_alternative_pattern ref, + int index: int ref, + unique int alternatives: @ruby_underscore_pattern_expr_basic ref +); + +ruby_alternative_pattern_def( + unique int id: @ruby_alternative_pattern +); + +@ruby_argument_list_child_type = @ruby_block_argument | @ruby_hash_splat_argument | @ruby_pair | @ruby_splat_argument | @ruby_token_forward_argument | @ruby_underscore_expression + +#keyset[ruby_argument_list, index] +ruby_argument_list_child( + int ruby_argument_list: @ruby_argument_list ref, + int index: int ref, + unique int child: @ruby_argument_list_child_type ref +); + +ruby_argument_list_def( + unique int id: @ruby_argument_list +); + +@ruby_array_child_type = @ruby_block_argument | @ruby_hash_splat_argument | @ruby_pair | @ruby_splat_argument | @ruby_token_forward_argument | @ruby_underscore_expression + +#keyset[ruby_array, index] +ruby_array_child( + int ruby_array: @ruby_array ref, + int index: int ref, + unique int child: @ruby_array_child_type ref +); + +ruby_array_def( + unique int id: @ruby_array +); + +ruby_array_pattern_class( + unique int ruby_array_pattern: @ruby_array_pattern ref, + unique int class: @ruby_underscore_pattern_constant ref +); + +@ruby_array_pattern_child_type = @ruby_splat_parameter | @ruby_underscore_pattern_expr + +#keyset[ruby_array_pattern, index] +ruby_array_pattern_child( + int ruby_array_pattern: @ruby_array_pattern ref, + int index: int ref, + unique int child: @ruby_array_pattern_child_type ref +); + +ruby_array_pattern_def( + unique int id: @ruby_array_pattern +); + +ruby_as_pattern_def( + unique int id: @ruby_as_pattern, + int name: @ruby_token_identifier ref, + int value: @ruby_underscore_pattern_expr ref +); + +@ruby_assignment_left_type = @ruby_left_assignment_list | @ruby_underscore_lhs + +@ruby_assignment_right_type = @ruby_rescue_modifier | @ruby_right_assignment_list | @ruby_splat_argument | @ruby_underscore_expression + +ruby_assignment_def( + unique int id: @ruby_assignment, + int left: @ruby_assignment_left_type ref, + int right: @ruby_assignment_right_type ref +); + +@ruby_bare_string_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_bare_string, index] +ruby_bare_string_child( + int ruby_bare_string: @ruby_bare_string ref, + int index: int ref, + unique int child: @ruby_bare_string_child_type ref +); + +ruby_bare_string_def( + unique int id: @ruby_bare_string +); + +@ruby_bare_symbol_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_bare_symbol, index] +ruby_bare_symbol_child( + int ruby_bare_symbol: @ruby_bare_symbol ref, + int index: int ref, + unique int child: @ruby_bare_symbol_child_type ref +); + +ruby_bare_symbol_def( + unique int id: @ruby_bare_symbol +); + +@ruby_begin_child_type = @ruby_else | @ruby_ensure | @ruby_rescue | @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_begin, index] +ruby_begin_child( + int ruby_begin: @ruby_begin ref, + int index: int ref, + unique int child: @ruby_begin_child_type ref +); + +ruby_begin_def( + unique int id: @ruby_begin +); + +@ruby_begin_block_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_begin_block, index] +ruby_begin_block_child( + int ruby_begin_block: @ruby_begin_block ref, + int index: int ref, + unique int child: @ruby_begin_block_child_type ref +); + +ruby_begin_block_def( + unique int id: @ruby_begin_block +); + +@ruby_binary_left_type = @ruby_underscore_expression | @ruby_underscore_simple_numeric + +case @ruby_binary.operator of + 0 = @ruby_binary_bangequal +| 1 = @ruby_binary_bangtilde +| 2 = @ruby_binary_percent +| 3 = @ruby_binary_ampersand +| 4 = @ruby_binary_ampersandampersand +| 5 = @ruby_binary_star +| 6 = @ruby_binary_starstar +| 7 = @ruby_binary_plus +| 8 = @ruby_binary_minus +| 9 = @ruby_binary_slash +| 10 = @ruby_binary_langle +| 11 = @ruby_binary_langlelangle +| 12 = @ruby_binary_langleequal +| 13 = @ruby_binary_langleequalrangle +| 14 = @ruby_binary_equalequal +| 15 = @ruby_binary_equalequalequal +| 16 = @ruby_binary_equaltilde +| 17 = @ruby_binary_rangle +| 18 = @ruby_binary_rangleequal +| 19 = @ruby_binary_ranglerangle +| 20 = @ruby_binary_caret +| 21 = @ruby_binary_and +| 22 = @ruby_binary_or +| 23 = @ruby_binary_pipe +| 24 = @ruby_binary_pipepipe +; + + +ruby_binary_def( + unique int id: @ruby_binary, + int left: @ruby_binary_left_type ref, + int operator: int ref, + int right: @ruby_underscore_expression ref +); + +ruby_block_body( + unique int ruby_block: @ruby_block ref, + unique int body: @ruby_block_body ref +); + +ruby_block_parameters( + unique int ruby_block: @ruby_block ref, + unique int parameters: @ruby_block_parameters ref +); + +ruby_block_def( + unique int id: @ruby_block +); + +ruby_block_argument_child( + unique int ruby_block_argument: @ruby_block_argument ref, + unique int child: @ruby_underscore_arg ref +); + +ruby_block_argument_def( + unique int id: @ruby_block_argument +); + +@ruby_block_body_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_block_body, index] +ruby_block_body_child( + int ruby_block_body: @ruby_block_body ref, + int index: int ref, + unique int child: @ruby_block_body_child_type ref +); + +ruby_block_body_def( + unique int id: @ruby_block_body +); + +ruby_block_parameter_name( + unique int ruby_block_parameter: @ruby_block_parameter ref, + unique int name: @ruby_token_identifier ref +); + +ruby_block_parameter_def( + unique int id: @ruby_block_parameter +); + +#keyset[ruby_block_parameters, index] +ruby_block_parameters_locals( + int ruby_block_parameters: @ruby_block_parameters ref, + int index: int ref, + unique int locals: @ruby_token_identifier ref +); + +@ruby_block_parameters_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_block_parameters, index] +ruby_block_parameters_child( + int ruby_block_parameters: @ruby_block_parameters ref, + int index: int ref, + unique int child: @ruby_block_parameters_child_type ref +); + +ruby_block_parameters_def( + unique int id: @ruby_block_parameters +); + +@ruby_body_statement_child_type = @ruby_else | @ruby_ensure | @ruby_rescue | @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_body_statement, index] +ruby_body_statement_child( + int ruby_body_statement: @ruby_body_statement ref, + int index: int ref, + unique int child: @ruby_body_statement_child_type ref +); + +ruby_body_statement_def( + unique int id: @ruby_body_statement +); + +ruby_break_child( + unique int ruby_break: @ruby_break ref, + unique int child: @ruby_argument_list ref +); + +ruby_break_def( + unique int id: @ruby_break +); + +ruby_call_arguments( + unique int ruby_call: @ruby_call ref, + unique int arguments: @ruby_argument_list ref +); + +@ruby_call_block_type = @ruby_block | @ruby_do_block + +ruby_call_block( + unique int ruby_call: @ruby_call ref, + unique int block: @ruby_call_block_type ref +); + +@ruby_call_method_type = @ruby_token_operator | @ruby_underscore_variable + +ruby_call_method( + unique int ruby_call: @ruby_call ref, + unique int method: @ruby_call_method_type ref +); + +ruby_call_operator( + unique int ruby_call: @ruby_call ref, + unique int operator: @ruby_underscore_call_operator ref +); + +ruby_call_receiver( + unique int ruby_call: @ruby_call ref, + unique int receiver: @ruby_underscore_primary ref +); + +ruby_call_def( + unique int id: @ruby_call +); + +ruby_case_value( + unique int ruby_case__: @ruby_case__ ref, + unique int value: @ruby_underscore_statement ref +); + +@ruby_case_child_type = @ruby_else | @ruby_when + +#keyset[ruby_case__, index] +ruby_case_child( + int ruby_case__: @ruby_case__ ref, + int index: int ref, + unique int child: @ruby_case_child_type ref +); + +ruby_case_def( + unique int id: @ruby_case__ +); + +#keyset[ruby_case_match, index] +ruby_case_match_clauses( + int ruby_case_match: @ruby_case_match ref, + int index: int ref, + unique int clauses: @ruby_in_clause ref +); + +ruby_case_match_else( + unique int ruby_case_match: @ruby_case_match ref, + unique int else: @ruby_else ref +); + +ruby_case_match_def( + unique int id: @ruby_case_match, + int value: @ruby_underscore_statement ref +); + +#keyset[ruby_chained_string, index] +ruby_chained_string_child( + int ruby_chained_string: @ruby_chained_string ref, + int index: int ref, + unique int child: @ruby_string__ ref +); + +ruby_chained_string_def( + unique int id: @ruby_chained_string +); + +ruby_class_body( + unique int ruby_class: @ruby_class ref, + unique int body: @ruby_body_statement ref +); + +@ruby_class_name_type = @ruby_scope_resolution | @ruby_token_constant + +ruby_class_superclass( + unique int ruby_class: @ruby_class ref, + unique int superclass: @ruby_superclass ref +); + +ruby_class_def( + unique int id: @ruby_class, + int name: @ruby_class_name_type ref +); + +@ruby_complex_child_type = @ruby_rational | @ruby_token_float | @ruby_token_integer + +ruby_complex_def( + unique int id: @ruby_complex, + int child: @ruby_complex_child_type ref +); + +ruby_conditional_def( + unique int id: @ruby_conditional, + int alternative: @ruby_underscore_arg ref, + int condition: @ruby_underscore_arg ref, + int consequence: @ruby_underscore_arg ref +); + +@ruby_delimited_symbol_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_delimited_symbol, index] +ruby_delimited_symbol_child( + int ruby_delimited_symbol: @ruby_delimited_symbol ref, + int index: int ref, + unique int child: @ruby_delimited_symbol_child_type ref +); + +ruby_delimited_symbol_def( + unique int id: @ruby_delimited_symbol +); + +@ruby_destructured_left_assignment_child_type = @ruby_destructured_left_assignment | @ruby_rest_assignment | @ruby_underscore_lhs + +#keyset[ruby_destructured_left_assignment, index] +ruby_destructured_left_assignment_child( + int ruby_destructured_left_assignment: @ruby_destructured_left_assignment ref, + int index: int ref, + unique int child: @ruby_destructured_left_assignment_child_type ref +); + +ruby_destructured_left_assignment_def( + unique int id: @ruby_destructured_left_assignment +); + +@ruby_destructured_parameter_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_destructured_parameter, index] +ruby_destructured_parameter_child( + int ruby_destructured_parameter: @ruby_destructured_parameter ref, + int index: int ref, + unique int child: @ruby_destructured_parameter_child_type ref +); + +ruby_destructured_parameter_def( + unique int id: @ruby_destructured_parameter +); + +@ruby_do_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_do, index] +ruby_do_child( + int ruby_do: @ruby_do ref, + int index: int ref, + unique int child: @ruby_do_child_type ref +); + +ruby_do_def( + unique int id: @ruby_do +); + +ruby_do_block_body( + unique int ruby_do_block: @ruby_do_block ref, + unique int body: @ruby_body_statement ref +); + +ruby_do_block_parameters( + unique int ruby_do_block: @ruby_do_block ref, + unique int parameters: @ruby_block_parameters ref +); + +ruby_do_block_def( + unique int id: @ruby_do_block +); + +@ruby_element_reference_block_type = @ruby_block | @ruby_do_block + +ruby_element_reference_block( + unique int ruby_element_reference: @ruby_element_reference ref, + unique int block: @ruby_element_reference_block_type ref +); + +@ruby_element_reference_child_type = @ruby_block_argument | @ruby_hash_splat_argument | @ruby_pair | @ruby_splat_argument | @ruby_token_forward_argument | @ruby_underscore_expression + +#keyset[ruby_element_reference, index] +ruby_element_reference_child( + int ruby_element_reference: @ruby_element_reference ref, + int index: int ref, + unique int child: @ruby_element_reference_child_type ref +); + +ruby_element_reference_def( + unique int id: @ruby_element_reference, + int object: @ruby_underscore_primary ref +); + +@ruby_else_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_else, index] +ruby_else_child( + int ruby_else: @ruby_else ref, + int index: int ref, + unique int child: @ruby_else_child_type ref +); + +ruby_else_def( + unique int id: @ruby_else +); + +@ruby_elsif_alternative_type = @ruby_else | @ruby_elsif + +ruby_elsif_alternative( + unique int ruby_elsif: @ruby_elsif ref, + unique int alternative: @ruby_elsif_alternative_type ref +); + +ruby_elsif_consequence( + unique int ruby_elsif: @ruby_elsif ref, + unique int consequence: @ruby_then ref +); + +ruby_elsif_def( + unique int id: @ruby_elsif, + int condition: @ruby_underscore_statement ref +); + +@ruby_end_block_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_end_block, index] +ruby_end_block_child( + int ruby_end_block: @ruby_end_block ref, + int index: int ref, + unique int child: @ruby_end_block_child_type ref +); + +ruby_end_block_def( + unique int id: @ruby_end_block +); + +@ruby_ensure_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_ensure, index] +ruby_ensure_child( + int ruby_ensure: @ruby_ensure ref, + int index: int ref, + unique int child: @ruby_ensure_child_type ref +); + +ruby_ensure_def( + unique int id: @ruby_ensure +); + +ruby_exception_variable_def( + unique int id: @ruby_exception_variable, + int child: @ruby_underscore_lhs ref +); + +@ruby_exceptions_child_type = @ruby_splat_argument | @ruby_underscore_arg + +#keyset[ruby_exceptions, index] +ruby_exceptions_child( + int ruby_exceptions: @ruby_exceptions ref, + int index: int ref, + unique int child: @ruby_exceptions_child_type ref +); + +ruby_exceptions_def( + unique int id: @ruby_exceptions +); + +ruby_expression_reference_pattern_def( + unique int id: @ruby_expression_reference_pattern, + int value: @ruby_underscore_expression ref +); + +ruby_find_pattern_class( + unique int ruby_find_pattern: @ruby_find_pattern ref, + unique int class: @ruby_underscore_pattern_constant ref +); + +@ruby_find_pattern_child_type = @ruby_splat_parameter | @ruby_underscore_pattern_expr + +#keyset[ruby_find_pattern, index] +ruby_find_pattern_child( + int ruby_find_pattern: @ruby_find_pattern ref, + int index: int ref, + unique int child: @ruby_find_pattern_child_type ref +); + +ruby_find_pattern_def( + unique int id: @ruby_find_pattern +); + +@ruby_for_pattern_type = @ruby_left_assignment_list | @ruby_underscore_lhs + +ruby_for_def( + unique int id: @ruby_for, + int body: @ruby_do ref, + int pattern: @ruby_for_pattern_type ref, + int value: @ruby_in ref +); + +@ruby_hash_child_type = @ruby_hash_splat_argument | @ruby_pair + +#keyset[ruby_hash, index] +ruby_hash_child( + int ruby_hash: @ruby_hash ref, + int index: int ref, + unique int child: @ruby_hash_child_type ref +); + +ruby_hash_def( + unique int id: @ruby_hash +); + +ruby_hash_pattern_class( + unique int ruby_hash_pattern: @ruby_hash_pattern ref, + unique int class: @ruby_underscore_pattern_constant ref +); + +@ruby_hash_pattern_child_type = @ruby_hash_splat_parameter | @ruby_keyword_pattern | @ruby_token_hash_splat_nil + +#keyset[ruby_hash_pattern, index] +ruby_hash_pattern_child( + int ruby_hash_pattern: @ruby_hash_pattern ref, + int index: int ref, + unique int child: @ruby_hash_pattern_child_type ref +); + +ruby_hash_pattern_def( + unique int id: @ruby_hash_pattern +); + +ruby_hash_splat_argument_child( + unique int ruby_hash_splat_argument: @ruby_hash_splat_argument ref, + unique int child: @ruby_underscore_arg ref +); + +ruby_hash_splat_argument_def( + unique int id: @ruby_hash_splat_argument +); + +ruby_hash_splat_parameter_name( + unique int ruby_hash_splat_parameter: @ruby_hash_splat_parameter ref, + unique int name: @ruby_token_identifier ref +); + +ruby_hash_splat_parameter_def( + unique int id: @ruby_hash_splat_parameter +); + +@ruby_heredoc_body_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_heredoc_content | @ruby_token_heredoc_end + +#keyset[ruby_heredoc_body, index] +ruby_heredoc_body_child( + int ruby_heredoc_body: @ruby_heredoc_body ref, + int index: int ref, + unique int child: @ruby_heredoc_body_child_type ref +); + +ruby_heredoc_body_def( + unique int id: @ruby_heredoc_body +); + +@ruby_if_alternative_type = @ruby_else | @ruby_elsif + +ruby_if_alternative( + unique int ruby_if: @ruby_if ref, + unique int alternative: @ruby_if_alternative_type ref +); + +ruby_if_consequence( + unique int ruby_if: @ruby_if ref, + unique int consequence: @ruby_then ref +); + +ruby_if_def( + unique int id: @ruby_if, + int condition: @ruby_underscore_statement ref +); + +ruby_if_guard_def( + unique int id: @ruby_if_guard, + int condition: @ruby_underscore_expression ref +); + +ruby_if_modifier_def( + unique int id: @ruby_if_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +ruby_in_def( + unique int id: @ruby_in, + int child: @ruby_underscore_arg ref +); + +ruby_in_clause_body( + unique int ruby_in_clause: @ruby_in_clause ref, + unique int body: @ruby_then ref +); + +@ruby_in_clause_guard_type = @ruby_if_guard | @ruby_unless_guard + +ruby_in_clause_guard( + unique int ruby_in_clause: @ruby_in_clause ref, + unique int guard: @ruby_in_clause_guard_type ref +); + +ruby_in_clause_def( + unique int id: @ruby_in_clause, + int pattern: @ruby_underscore_pattern_top_expr_body ref +); + +@ruby_interpolation_child_type = @ruby_token_empty_statement | @ruby_underscore_nonlocal_variable | @ruby_underscore_statement + +#keyset[ruby_interpolation, index] +ruby_interpolation_child( + int ruby_interpolation: @ruby_interpolation ref, + int index: int ref, + unique int child: @ruby_interpolation_child_type ref +); + +ruby_interpolation_def( + unique int id: @ruby_interpolation +); + +ruby_keyword_parameter_value( + unique int ruby_keyword_parameter: @ruby_keyword_parameter ref, + unique int value: @ruby_underscore_arg ref +); + +ruby_keyword_parameter_def( + unique int id: @ruby_keyword_parameter, + int name: @ruby_token_identifier ref +); + +@ruby_keyword_pattern_key_type = @ruby_string__ | @ruby_token_hash_key_symbol + +ruby_keyword_pattern_value( + unique int ruby_keyword_pattern: @ruby_keyword_pattern ref, + unique int value: @ruby_underscore_pattern_expr ref +); + +ruby_keyword_pattern_def( + unique int id: @ruby_keyword_pattern, + int key__: @ruby_keyword_pattern_key_type ref +); + +@ruby_lambda_body_type = @ruby_block | @ruby_do_block + +ruby_lambda_parameters( + unique int ruby_lambda: @ruby_lambda ref, + unique int parameters: @ruby_lambda_parameters ref +); + +ruby_lambda_def( + unique int id: @ruby_lambda, + int body: @ruby_lambda_body_type ref +); + +@ruby_lambda_parameters_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_lambda_parameters, index] +ruby_lambda_parameters_child( + int ruby_lambda_parameters: @ruby_lambda_parameters ref, + int index: int ref, + unique int child: @ruby_lambda_parameters_child_type ref +); + +ruby_lambda_parameters_def( + unique int id: @ruby_lambda_parameters +); + +@ruby_left_assignment_list_child_type = @ruby_destructured_left_assignment | @ruby_rest_assignment | @ruby_underscore_lhs + +#keyset[ruby_left_assignment_list, index] +ruby_left_assignment_list_child( + int ruby_left_assignment_list: @ruby_left_assignment_list ref, + int index: int ref, + unique int child: @ruby_left_assignment_list_child_type ref +); + +ruby_left_assignment_list_def( + unique int id: @ruby_left_assignment_list +); + +ruby_match_pattern_def( + unique int id: @ruby_match_pattern, + int pattern: @ruby_underscore_pattern_top_expr_body ref, + int value: @ruby_underscore_arg ref +); + +@ruby_method_body_type = @ruby_body_statement | @ruby_rescue_modifier | @ruby_underscore_arg + +ruby_method_body( + unique int ruby_method: @ruby_method ref, + unique int body: @ruby_method_body_type ref +); + +ruby_method_parameters( + unique int ruby_method: @ruby_method ref, + unique int parameters: @ruby_method_parameters ref +); + +ruby_method_def( + unique int id: @ruby_method, + int name: @ruby_underscore_method_name ref +); + +@ruby_method_parameters_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_method_parameters, index] +ruby_method_parameters_child( + int ruby_method_parameters: @ruby_method_parameters ref, + int index: int ref, + unique int child: @ruby_method_parameters_child_type ref +); + +ruby_method_parameters_def( + unique int id: @ruby_method_parameters +); + +ruby_module_body( + unique int ruby_module: @ruby_module ref, + unique int body: @ruby_body_statement ref +); + +@ruby_module_name_type = @ruby_scope_resolution | @ruby_token_constant + +ruby_module_def( + unique int id: @ruby_module, + int name: @ruby_module_name_type ref +); + +ruby_next_child( + unique int ruby_next: @ruby_next ref, + unique int child: @ruby_argument_list ref +); + +ruby_next_def( + unique int id: @ruby_next +); + +case @ruby_operator_assignment.operator of + 0 = @ruby_operator_assignment_percentequal +| 1 = @ruby_operator_assignment_ampersandampersandequal +| 2 = @ruby_operator_assignment_ampersandequal +| 3 = @ruby_operator_assignment_starstarequal +| 4 = @ruby_operator_assignment_starequal +| 5 = @ruby_operator_assignment_plusequal +| 6 = @ruby_operator_assignment_minusequal +| 7 = @ruby_operator_assignment_slashequal +| 8 = @ruby_operator_assignment_langlelangleequal +| 9 = @ruby_operator_assignment_ranglerangleequal +| 10 = @ruby_operator_assignment_caretequal +| 11 = @ruby_operator_assignment_pipeequal +| 12 = @ruby_operator_assignment_pipepipeequal +; + + +@ruby_operator_assignment_right_type = @ruby_rescue_modifier | @ruby_underscore_expression + +ruby_operator_assignment_def( + unique int id: @ruby_operator_assignment, + int left: @ruby_underscore_lhs ref, + int operator: int ref, + int right: @ruby_operator_assignment_right_type ref +); + +ruby_optional_parameter_def( + unique int id: @ruby_optional_parameter, + int name: @ruby_token_identifier ref, + int value: @ruby_underscore_arg ref +); + +@ruby_pair_key_type = @ruby_string__ | @ruby_token_hash_key_symbol | @ruby_underscore_arg + +ruby_pair_value( + unique int ruby_pair: @ruby_pair ref, + unique int value: @ruby_underscore_arg ref +); + +ruby_pair_def( + unique int id: @ruby_pair, + int key__: @ruby_pair_key_type ref +); + +ruby_parenthesized_pattern_def( + unique int id: @ruby_parenthesized_pattern, + int child: @ruby_underscore_pattern_expr ref +); + +@ruby_parenthesized_statements_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_parenthesized_statements, index] +ruby_parenthesized_statements_child( + int ruby_parenthesized_statements: @ruby_parenthesized_statements ref, + int index: int ref, + unique int child: @ruby_parenthesized_statements_child_type ref +); + +ruby_parenthesized_statements_def( + unique int id: @ruby_parenthesized_statements +); + +@ruby_pattern_child_type = @ruby_splat_argument | @ruby_underscore_arg + +ruby_pattern_def( + unique int id: @ruby_pattern, + int child: @ruby_pattern_child_type ref +); + +@ruby_program_child_type = @ruby_token_empty_statement | @ruby_token_uninterpreted | @ruby_underscore_statement + +#keyset[ruby_program, index] +ruby_program_child( + int ruby_program: @ruby_program ref, + int index: int ref, + unique int child: @ruby_program_child_type ref +); + +ruby_program_def( + unique int id: @ruby_program +); + +@ruby_range_begin_type = @ruby_underscore_arg | @ruby_underscore_pattern_primitive + +ruby_range_begin( + unique int ruby_range: @ruby_range ref, + unique int begin: @ruby_range_begin_type ref +); + +@ruby_range_end_type = @ruby_underscore_arg | @ruby_underscore_pattern_primitive + +ruby_range_end( + unique int ruby_range: @ruby_range ref, + unique int end: @ruby_range_end_type ref +); + +case @ruby_range.operator of + 0 = @ruby_range_dotdot +| 1 = @ruby_range_dotdotdot +; + + +ruby_range_def( + unique int id: @ruby_range, + int operator: int ref +); + +@ruby_rational_child_type = @ruby_token_float | @ruby_token_integer + +ruby_rational_def( + unique int id: @ruby_rational, + int child: @ruby_rational_child_type ref +); + +ruby_redo_child( + unique int ruby_redo: @ruby_redo ref, + unique int child: @ruby_argument_list ref +); + +ruby_redo_def( + unique int id: @ruby_redo +); + +@ruby_regex_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_regex, index] +ruby_regex_child( + int ruby_regex: @ruby_regex ref, + int index: int ref, + unique int child: @ruby_regex_child_type ref +); + +ruby_regex_def( + unique int id: @ruby_regex +); + +ruby_rescue_body( + unique int ruby_rescue: @ruby_rescue ref, + unique int body: @ruby_then ref +); + +ruby_rescue_exceptions( + unique int ruby_rescue: @ruby_rescue ref, + unique int exceptions: @ruby_exceptions ref +); + +ruby_rescue_variable( + unique int ruby_rescue: @ruby_rescue ref, + unique int variable: @ruby_exception_variable ref +); + +ruby_rescue_def( + unique int id: @ruby_rescue +); + +@ruby_rescue_modifier_body_type = @ruby_underscore_arg | @ruby_underscore_statement + +ruby_rescue_modifier_def( + unique int id: @ruby_rescue_modifier, + int body: @ruby_rescue_modifier_body_type ref, + int handler: @ruby_underscore_expression ref +); + +ruby_rest_assignment_child( + unique int ruby_rest_assignment: @ruby_rest_assignment ref, + unique int child: @ruby_underscore_lhs ref +); + +ruby_rest_assignment_def( + unique int id: @ruby_rest_assignment +); + +ruby_retry_child( + unique int ruby_retry: @ruby_retry ref, + unique int child: @ruby_argument_list ref +); + +ruby_retry_def( + unique int id: @ruby_retry +); + +ruby_return_child( + unique int ruby_return: @ruby_return ref, + unique int child: @ruby_argument_list ref +); + +ruby_return_def( + unique int id: @ruby_return +); + +@ruby_right_assignment_list_child_type = @ruby_splat_argument | @ruby_underscore_arg + +#keyset[ruby_right_assignment_list, index] +ruby_right_assignment_list_child( + int ruby_right_assignment_list: @ruby_right_assignment_list ref, + int index: int ref, + unique int child: @ruby_right_assignment_list_child_type ref +); + +ruby_right_assignment_list_def( + unique int id: @ruby_right_assignment_list +); + +@ruby_scope_resolution_scope_type = @ruby_underscore_pattern_constant | @ruby_underscore_primary + +ruby_scope_resolution_scope( + unique int ruby_scope_resolution: @ruby_scope_resolution ref, + unique int scope: @ruby_scope_resolution_scope_type ref +); + +ruby_scope_resolution_def( + unique int id: @ruby_scope_resolution, + int name: @ruby_token_constant ref +); + +ruby_setter_def( + unique int id: @ruby_setter, + int name: @ruby_token_identifier ref +); + +ruby_singleton_class_body( + unique int ruby_singleton_class: @ruby_singleton_class ref, + unique int body: @ruby_body_statement ref +); + +ruby_singleton_class_def( + unique int id: @ruby_singleton_class, + int value: @ruby_underscore_arg ref +); + +@ruby_singleton_method_body_type = @ruby_body_statement | @ruby_rescue_modifier | @ruby_underscore_arg + +ruby_singleton_method_body( + unique int ruby_singleton_method: @ruby_singleton_method ref, + unique int body: @ruby_singleton_method_body_type ref +); + +@ruby_singleton_method_object_type = @ruby_underscore_arg | @ruby_underscore_variable + +ruby_singleton_method_parameters( + unique int ruby_singleton_method: @ruby_singleton_method ref, + unique int parameters: @ruby_method_parameters ref +); + +ruby_singleton_method_def( + unique int id: @ruby_singleton_method, + int name: @ruby_underscore_method_name ref, + int object: @ruby_singleton_method_object_type ref +); + +ruby_splat_argument_child( + unique int ruby_splat_argument: @ruby_splat_argument ref, + unique int child: @ruby_underscore_arg ref +); + +ruby_splat_argument_def( + unique int id: @ruby_splat_argument +); + +ruby_splat_parameter_name( + unique int ruby_splat_parameter: @ruby_splat_parameter ref, + unique int name: @ruby_token_identifier ref +); + +ruby_splat_parameter_def( + unique int id: @ruby_splat_parameter +); + +@ruby_string_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_string__, index] +ruby_string_child( + int ruby_string__: @ruby_string__ ref, + int index: int ref, + unique int child: @ruby_string_child_type ref +); + +ruby_string_def( + unique int id: @ruby_string__ +); + +#keyset[ruby_string_array, index] +ruby_string_array_child( + int ruby_string_array: @ruby_string_array ref, + int index: int ref, + unique int child: @ruby_bare_string ref +); + +ruby_string_array_def( + unique int id: @ruby_string_array +); + +@ruby_subshell_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_subshell, index] +ruby_subshell_child( + int ruby_subshell: @ruby_subshell ref, + int index: int ref, + unique int child: @ruby_subshell_child_type ref +); + +ruby_subshell_def( + unique int id: @ruby_subshell +); + +ruby_superclass_def( + unique int id: @ruby_superclass, + int child: @ruby_underscore_expression ref +); + +#keyset[ruby_symbol_array, index] +ruby_symbol_array_child( + int ruby_symbol_array: @ruby_symbol_array ref, + int index: int ref, + unique int child: @ruby_bare_symbol ref +); + +ruby_symbol_array_def( + unique int id: @ruby_symbol_array +); + +ruby_test_pattern_def( + unique int id: @ruby_test_pattern, + int pattern: @ruby_underscore_pattern_top_expr_body ref, + int value: @ruby_underscore_arg ref +); + +@ruby_then_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_then, index] +ruby_then_child( + int ruby_then: @ruby_then ref, + int index: int ref, + unique int child: @ruby_then_child_type ref +); + +ruby_then_def( + unique int id: @ruby_then +); + +@ruby_unary_operand_type = @ruby_parenthesized_statements | @ruby_underscore_expression | @ruby_underscore_simple_numeric + +case @ruby_unary.operator of + 0 = @ruby_unary_bang +| 1 = @ruby_unary_plus +| 2 = @ruby_unary_minus +| 3 = @ruby_unary_definedquestion +| 4 = @ruby_unary_not +| 5 = @ruby_unary_tilde +; + + +ruby_unary_def( + unique int id: @ruby_unary, + int operand: @ruby_unary_operand_type ref, + int operator: int ref +); + +#keyset[ruby_undef, index] +ruby_undef_child( + int ruby_undef: @ruby_undef ref, + int index: int ref, + unique int child: @ruby_underscore_method_name ref +); + +ruby_undef_def( + unique int id: @ruby_undef +); + +@ruby_unless_alternative_type = @ruby_else | @ruby_elsif + +ruby_unless_alternative( + unique int ruby_unless: @ruby_unless ref, + unique int alternative: @ruby_unless_alternative_type ref +); + +ruby_unless_consequence( + unique int ruby_unless: @ruby_unless ref, + unique int consequence: @ruby_then ref +); + +ruby_unless_def( + unique int id: @ruby_unless, + int condition: @ruby_underscore_statement ref +); + +ruby_unless_guard_def( + unique int id: @ruby_unless_guard, + int condition: @ruby_underscore_expression ref +); + +ruby_unless_modifier_def( + unique int id: @ruby_unless_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +ruby_until_def( + unique int id: @ruby_until, + int body: @ruby_do ref, + int condition: @ruby_underscore_statement ref +); + +ruby_until_modifier_def( + unique int id: @ruby_until_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +@ruby_variable_reference_pattern_name_type = @ruby_token_identifier | @ruby_underscore_nonlocal_variable + +ruby_variable_reference_pattern_def( + unique int id: @ruby_variable_reference_pattern, + int name: @ruby_variable_reference_pattern_name_type ref +); + +ruby_when_body( + unique int ruby_when: @ruby_when ref, + unique int body: @ruby_then ref +); + +#keyset[ruby_when, index] +ruby_when_pattern( + int ruby_when: @ruby_when ref, + int index: int ref, + unique int pattern: @ruby_pattern ref +); + +ruby_when_def( + unique int id: @ruby_when +); + +ruby_while_def( + unique int id: @ruby_while, + int body: @ruby_do ref, + int condition: @ruby_underscore_statement ref +); + +ruby_while_modifier_def( + unique int id: @ruby_while_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +ruby_yield_child( + unique int ruby_yield: @ruby_yield ref, + unique int child: @ruby_argument_list ref +); + +ruby_yield_def( + unique int id: @ruby_yield +); + +ruby_tokeninfo( + unique int id: @ruby_token, + int kind: int ref, + string value: string ref +); + +case @ruby_token.kind of + 0 = @ruby_reserved_word +| 1 = @ruby_token_character +| 2 = @ruby_token_class_variable +| 3 = @ruby_token_comment +| 4 = @ruby_token_constant +| 5 = @ruby_token_empty_statement +| 6 = @ruby_token_encoding +| 7 = @ruby_token_escape_sequence +| 8 = @ruby_token_false +| 9 = @ruby_token_file +| 10 = @ruby_token_float +| 11 = @ruby_token_forward_argument +| 12 = @ruby_token_forward_parameter +| 13 = @ruby_token_global_variable +| 14 = @ruby_token_hash_key_symbol +| 15 = @ruby_token_hash_splat_nil +| 16 = @ruby_token_heredoc_beginning +| 17 = @ruby_token_heredoc_content +| 18 = @ruby_token_heredoc_end +| 19 = @ruby_token_identifier +| 20 = @ruby_token_instance_variable +| 21 = @ruby_token_integer +| 22 = @ruby_token_line +| 23 = @ruby_token_nil +| 24 = @ruby_token_operator +| 25 = @ruby_token_self +| 26 = @ruby_token_simple_symbol +| 27 = @ruby_token_string_content +| 28 = @ruby_token_super +| 29 = @ruby_token_true +| 30 = @ruby_token_uninterpreted +; + + +@ruby_ast_node = @ruby_alias | @ruby_alternative_pattern | @ruby_argument_list | @ruby_array | @ruby_array_pattern | @ruby_as_pattern | @ruby_assignment | @ruby_bare_string | @ruby_bare_symbol | @ruby_begin | @ruby_begin_block | @ruby_binary | @ruby_block | @ruby_block_argument | @ruby_block_body | @ruby_block_parameter | @ruby_block_parameters | @ruby_body_statement | @ruby_break | @ruby_call | @ruby_case__ | @ruby_case_match | @ruby_chained_string | @ruby_class | @ruby_complex | @ruby_conditional | @ruby_delimited_symbol | @ruby_destructured_left_assignment | @ruby_destructured_parameter | @ruby_do | @ruby_do_block | @ruby_element_reference | @ruby_else | @ruby_elsif | @ruby_end_block | @ruby_ensure | @ruby_exception_variable | @ruby_exceptions | @ruby_expression_reference_pattern | @ruby_find_pattern | @ruby_for | @ruby_hash | @ruby_hash_pattern | @ruby_hash_splat_argument | @ruby_hash_splat_parameter | @ruby_heredoc_body | @ruby_if | @ruby_if_guard | @ruby_if_modifier | @ruby_in | @ruby_in_clause | @ruby_interpolation | @ruby_keyword_parameter | @ruby_keyword_pattern | @ruby_lambda | @ruby_lambda_parameters | @ruby_left_assignment_list | @ruby_match_pattern | @ruby_method | @ruby_method_parameters | @ruby_module | @ruby_next | @ruby_operator_assignment | @ruby_optional_parameter | @ruby_pair | @ruby_parenthesized_pattern | @ruby_parenthesized_statements | @ruby_pattern | @ruby_program | @ruby_range | @ruby_rational | @ruby_redo | @ruby_regex | @ruby_rescue | @ruby_rescue_modifier | @ruby_rest_assignment | @ruby_retry | @ruby_return | @ruby_right_assignment_list | @ruby_scope_resolution | @ruby_setter | @ruby_singleton_class | @ruby_singleton_method | @ruby_splat_argument | @ruby_splat_parameter | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_superclass | @ruby_symbol_array | @ruby_test_pattern | @ruby_then | @ruby_token | @ruby_unary | @ruby_undef | @ruby_unless | @ruby_unless_guard | @ruby_unless_modifier | @ruby_until | @ruby_until_modifier | @ruby_variable_reference_pattern | @ruby_when | @ruby_while | @ruby_while_modifier | @ruby_yield + +ruby_ast_node_location( + unique int node: @ruby_ast_node ref, + int loc: @location_default ref +); + +#keyset[parent, parent_index] +ruby_ast_node_parent( + unique int node: @ruby_ast_node ref, + int parent: @ruby_ast_node ref, + int parent_index: int ref +); + +/*- Erb dbscheme -*/ +erb_comment_directive_child( + unique int erb_comment_directive: @erb_comment_directive ref, + unique int child: @erb_token_comment ref +); + +erb_comment_directive_def( + unique int id: @erb_comment_directive +); + +erb_directive_child( + unique int erb_directive: @erb_directive ref, + unique int child: @erb_token_code ref +); + +erb_directive_def( + unique int id: @erb_directive +); + +erb_graphql_directive_child( + unique int erb_graphql_directive: @erb_graphql_directive ref, + unique int child: @erb_token_code ref +); + +erb_graphql_directive_def( + unique int id: @erb_graphql_directive +); + +erb_output_directive_child( + unique int erb_output_directive: @erb_output_directive ref, + unique int child: @erb_token_code ref +); + +erb_output_directive_def( + unique int id: @erb_output_directive +); + +@erb_template_child_type = @erb_comment_directive | @erb_directive | @erb_graphql_directive | @erb_output_directive | @erb_token_content + +#keyset[erb_template, index] +erb_template_child( + int erb_template: @erb_template ref, + int index: int ref, + unique int child: @erb_template_child_type ref +); + +erb_template_def( + unique int id: @erb_template +); + +erb_tokeninfo( + unique int id: @erb_token, + int kind: int ref, + string value: string ref +); + +case @erb_token.kind of + 0 = @erb_reserved_word +| 1 = @erb_token_code +| 2 = @erb_token_comment +| 3 = @erb_token_content +; + + +@erb_ast_node = @erb_comment_directive | @erb_directive | @erb_graphql_directive | @erb_output_directive | @erb_template | @erb_token + +erb_ast_node_location( + unique int node: @erb_ast_node ref, + int loc: @location_default ref +); + +#keyset[parent, parent_index] +erb_ast_node_parent( + unique int node: @erb_ast_node ref, + int parent: @erb_ast_node ref, + int parent_index: int ref +); + diff --git a/ruby/downgrades/29b7b6fc1982422368cb0a4644fd0c81f993c618/upgrade.properties b/ruby/downgrades/29b7b6fc1982422368cb0a4644fd0c81f993c618/upgrade.properties new file mode 100644 index 000000000000..00fae2d3bc61 --- /dev/null +++ b/ruby/downgrades/29b7b6fc1982422368cb0a4644fd0c81f993c618/upgrade.properties @@ -0,0 +1,2 @@ +description: Sections for databaseMetadata and overlayChangedFiles +compatibility: full diff --git a/ruby/ql/lib/upgrades/eae6926f5000373d5eb1d82131e1ff6152b67b2c/old.dbscheme b/ruby/ql/lib/upgrades/eae6926f5000373d5eb1d82131e1ff6152b67b2c/old.dbscheme new file mode 100644 index 000000000000..eae6926f5000 --- /dev/null +++ b/ruby/ql/lib/upgrades/eae6926f5000373d5eb1d82131e1ff6152b67b2c/old.dbscheme @@ -0,0 +1,1536 @@ +// CodeQL database schema for Ruby +// Automatically generated from the tree-sitter grammar; do not edit + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Empty location -*/ + +empty_location( + int location: @location_default ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- Diagnostic messages: severity -*/ + +case @diagnostic.severity of + 10 = @diagnostic_debug +| 20 = @diagnostic_info +| 30 = @diagnostic_warning +| 40 = @diagnostic_error +; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Database metadata -*/ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +overlayChangedFiles( + string path: string ref +); + +/*- Ruby dbscheme -*/ +@ruby_underscore_arg = @ruby_assignment | @ruby_binary | @ruby_conditional | @ruby_operator_assignment | @ruby_range | @ruby_unary | @ruby_underscore_primary + +@ruby_underscore_call_operator = @ruby_reserved_word + +@ruby_underscore_expression = @ruby_assignment | @ruby_binary | @ruby_break | @ruby_call | @ruby_match_pattern | @ruby_next | @ruby_operator_assignment | @ruby_return | @ruby_test_pattern | @ruby_unary | @ruby_underscore_arg | @ruby_yield + +@ruby_underscore_lhs = @ruby_call | @ruby_element_reference | @ruby_scope_resolution | @ruby_token_false | @ruby_token_nil | @ruby_token_true | @ruby_underscore_variable + +@ruby_underscore_method_name = @ruby_delimited_symbol | @ruby_setter | @ruby_token_constant | @ruby_token_identifier | @ruby_token_operator | @ruby_token_simple_symbol | @ruby_underscore_nonlocal_variable + +@ruby_underscore_nonlocal_variable = @ruby_token_class_variable | @ruby_token_global_variable | @ruby_token_instance_variable + +@ruby_underscore_pattern_constant = @ruby_scope_resolution | @ruby_token_constant + +@ruby_underscore_pattern_expr = @ruby_alternative_pattern | @ruby_as_pattern | @ruby_underscore_pattern_expr_basic + +@ruby_underscore_pattern_expr_basic = @ruby_array_pattern | @ruby_expression_reference_pattern | @ruby_find_pattern | @ruby_hash_pattern | @ruby_parenthesized_pattern | @ruby_range | @ruby_token_identifier | @ruby_underscore_pattern_constant | @ruby_underscore_pattern_primitive | @ruby_variable_reference_pattern + +@ruby_underscore_pattern_primitive = @ruby_delimited_symbol | @ruby_lambda | @ruby_regex | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_symbol_array | @ruby_token_encoding | @ruby_token_false | @ruby_token_file | @ruby_token_heredoc_beginning | @ruby_token_line | @ruby_token_nil | @ruby_token_self | @ruby_token_simple_symbol | @ruby_token_true | @ruby_unary | @ruby_underscore_simple_numeric + +@ruby_underscore_pattern_top_expr_body = @ruby_array_pattern | @ruby_find_pattern | @ruby_hash_pattern | @ruby_underscore_pattern_expr + +@ruby_underscore_primary = @ruby_array | @ruby_begin | @ruby_break | @ruby_call | @ruby_case__ | @ruby_case_match | @ruby_chained_string | @ruby_class | @ruby_delimited_symbol | @ruby_for | @ruby_hash | @ruby_if | @ruby_lambda | @ruby_method | @ruby_module | @ruby_next | @ruby_parenthesized_statements | @ruby_redo | @ruby_regex | @ruby_retry | @ruby_return | @ruby_singleton_class | @ruby_singleton_method | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_symbol_array | @ruby_token_character | @ruby_token_heredoc_beginning | @ruby_token_simple_symbol | @ruby_unary | @ruby_underscore_lhs | @ruby_underscore_simple_numeric | @ruby_unless | @ruby_until | @ruby_while | @ruby_yield + +@ruby_underscore_simple_numeric = @ruby_complex | @ruby_rational | @ruby_token_float | @ruby_token_integer + +@ruby_underscore_statement = @ruby_alias | @ruby_begin_block | @ruby_end_block | @ruby_if_modifier | @ruby_rescue_modifier | @ruby_undef | @ruby_underscore_expression | @ruby_unless_modifier | @ruby_until_modifier | @ruby_while_modifier + +@ruby_underscore_variable = @ruby_token_constant | @ruby_token_identifier | @ruby_token_self | @ruby_token_super | @ruby_underscore_nonlocal_variable + +ruby_alias_def( + unique int id: @ruby_alias, + int alias: @ruby_underscore_method_name ref, + int name: @ruby_underscore_method_name ref +); + +#keyset[ruby_alternative_pattern, index] +ruby_alternative_pattern_alternatives( + int ruby_alternative_pattern: @ruby_alternative_pattern ref, + int index: int ref, + unique int alternatives: @ruby_underscore_pattern_expr_basic ref +); + +ruby_alternative_pattern_def( + unique int id: @ruby_alternative_pattern +); + +@ruby_argument_list_child_type = @ruby_block_argument | @ruby_hash_splat_argument | @ruby_pair | @ruby_splat_argument | @ruby_token_forward_argument | @ruby_underscore_expression + +#keyset[ruby_argument_list, index] +ruby_argument_list_child( + int ruby_argument_list: @ruby_argument_list ref, + int index: int ref, + unique int child: @ruby_argument_list_child_type ref +); + +ruby_argument_list_def( + unique int id: @ruby_argument_list +); + +@ruby_array_child_type = @ruby_block_argument | @ruby_hash_splat_argument | @ruby_pair | @ruby_splat_argument | @ruby_token_forward_argument | @ruby_underscore_expression + +#keyset[ruby_array, index] +ruby_array_child( + int ruby_array: @ruby_array ref, + int index: int ref, + unique int child: @ruby_array_child_type ref +); + +ruby_array_def( + unique int id: @ruby_array +); + +ruby_array_pattern_class( + unique int ruby_array_pattern: @ruby_array_pattern ref, + unique int class: @ruby_underscore_pattern_constant ref +); + +@ruby_array_pattern_child_type = @ruby_splat_parameter | @ruby_underscore_pattern_expr + +#keyset[ruby_array_pattern, index] +ruby_array_pattern_child( + int ruby_array_pattern: @ruby_array_pattern ref, + int index: int ref, + unique int child: @ruby_array_pattern_child_type ref +); + +ruby_array_pattern_def( + unique int id: @ruby_array_pattern +); + +ruby_as_pattern_def( + unique int id: @ruby_as_pattern, + int name: @ruby_token_identifier ref, + int value: @ruby_underscore_pattern_expr ref +); + +@ruby_assignment_left_type = @ruby_left_assignment_list | @ruby_underscore_lhs + +@ruby_assignment_right_type = @ruby_rescue_modifier | @ruby_right_assignment_list | @ruby_splat_argument | @ruby_underscore_expression + +ruby_assignment_def( + unique int id: @ruby_assignment, + int left: @ruby_assignment_left_type ref, + int right: @ruby_assignment_right_type ref +); + +@ruby_bare_string_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_bare_string, index] +ruby_bare_string_child( + int ruby_bare_string: @ruby_bare_string ref, + int index: int ref, + unique int child: @ruby_bare_string_child_type ref +); + +ruby_bare_string_def( + unique int id: @ruby_bare_string +); + +@ruby_bare_symbol_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_bare_symbol, index] +ruby_bare_symbol_child( + int ruby_bare_symbol: @ruby_bare_symbol ref, + int index: int ref, + unique int child: @ruby_bare_symbol_child_type ref +); + +ruby_bare_symbol_def( + unique int id: @ruby_bare_symbol +); + +@ruby_begin_child_type = @ruby_else | @ruby_ensure | @ruby_rescue | @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_begin, index] +ruby_begin_child( + int ruby_begin: @ruby_begin ref, + int index: int ref, + unique int child: @ruby_begin_child_type ref +); + +ruby_begin_def( + unique int id: @ruby_begin +); + +@ruby_begin_block_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_begin_block, index] +ruby_begin_block_child( + int ruby_begin_block: @ruby_begin_block ref, + int index: int ref, + unique int child: @ruby_begin_block_child_type ref +); + +ruby_begin_block_def( + unique int id: @ruby_begin_block +); + +@ruby_binary_left_type = @ruby_underscore_expression | @ruby_underscore_simple_numeric + +case @ruby_binary.operator of + 0 = @ruby_binary_bangequal +| 1 = @ruby_binary_bangtilde +| 2 = @ruby_binary_percent +| 3 = @ruby_binary_ampersand +| 4 = @ruby_binary_ampersandampersand +| 5 = @ruby_binary_star +| 6 = @ruby_binary_starstar +| 7 = @ruby_binary_plus +| 8 = @ruby_binary_minus +| 9 = @ruby_binary_slash +| 10 = @ruby_binary_langle +| 11 = @ruby_binary_langlelangle +| 12 = @ruby_binary_langleequal +| 13 = @ruby_binary_langleequalrangle +| 14 = @ruby_binary_equalequal +| 15 = @ruby_binary_equalequalequal +| 16 = @ruby_binary_equaltilde +| 17 = @ruby_binary_rangle +| 18 = @ruby_binary_rangleequal +| 19 = @ruby_binary_ranglerangle +| 20 = @ruby_binary_caret +| 21 = @ruby_binary_and +| 22 = @ruby_binary_or +| 23 = @ruby_binary_pipe +| 24 = @ruby_binary_pipepipe +; + + +ruby_binary_def( + unique int id: @ruby_binary, + int left: @ruby_binary_left_type ref, + int operator: int ref, + int right: @ruby_underscore_expression ref +); + +ruby_block_body( + unique int ruby_block: @ruby_block ref, + unique int body: @ruby_block_body ref +); + +ruby_block_parameters( + unique int ruby_block: @ruby_block ref, + unique int parameters: @ruby_block_parameters ref +); + +ruby_block_def( + unique int id: @ruby_block +); + +ruby_block_argument_child( + unique int ruby_block_argument: @ruby_block_argument ref, + unique int child: @ruby_underscore_arg ref +); + +ruby_block_argument_def( + unique int id: @ruby_block_argument +); + +@ruby_block_body_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_block_body, index] +ruby_block_body_child( + int ruby_block_body: @ruby_block_body ref, + int index: int ref, + unique int child: @ruby_block_body_child_type ref +); + +ruby_block_body_def( + unique int id: @ruby_block_body +); + +ruby_block_parameter_name( + unique int ruby_block_parameter: @ruby_block_parameter ref, + unique int name: @ruby_token_identifier ref +); + +ruby_block_parameter_def( + unique int id: @ruby_block_parameter +); + +#keyset[ruby_block_parameters, index] +ruby_block_parameters_locals( + int ruby_block_parameters: @ruby_block_parameters ref, + int index: int ref, + unique int locals: @ruby_token_identifier ref +); + +@ruby_block_parameters_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_block_parameters, index] +ruby_block_parameters_child( + int ruby_block_parameters: @ruby_block_parameters ref, + int index: int ref, + unique int child: @ruby_block_parameters_child_type ref +); + +ruby_block_parameters_def( + unique int id: @ruby_block_parameters +); + +@ruby_body_statement_child_type = @ruby_else | @ruby_ensure | @ruby_rescue | @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_body_statement, index] +ruby_body_statement_child( + int ruby_body_statement: @ruby_body_statement ref, + int index: int ref, + unique int child: @ruby_body_statement_child_type ref +); + +ruby_body_statement_def( + unique int id: @ruby_body_statement +); + +ruby_break_child( + unique int ruby_break: @ruby_break ref, + unique int child: @ruby_argument_list ref +); + +ruby_break_def( + unique int id: @ruby_break +); + +ruby_call_arguments( + unique int ruby_call: @ruby_call ref, + unique int arguments: @ruby_argument_list ref +); + +@ruby_call_block_type = @ruby_block | @ruby_do_block + +ruby_call_block( + unique int ruby_call: @ruby_call ref, + unique int block: @ruby_call_block_type ref +); + +@ruby_call_method_type = @ruby_token_operator | @ruby_underscore_variable + +ruby_call_method( + unique int ruby_call: @ruby_call ref, + unique int method: @ruby_call_method_type ref +); + +ruby_call_operator( + unique int ruby_call: @ruby_call ref, + unique int operator: @ruby_underscore_call_operator ref +); + +ruby_call_receiver( + unique int ruby_call: @ruby_call ref, + unique int receiver: @ruby_underscore_primary ref +); + +ruby_call_def( + unique int id: @ruby_call +); + +ruby_case_value( + unique int ruby_case__: @ruby_case__ ref, + unique int value: @ruby_underscore_statement ref +); + +@ruby_case_child_type = @ruby_else | @ruby_when + +#keyset[ruby_case__, index] +ruby_case_child( + int ruby_case__: @ruby_case__ ref, + int index: int ref, + unique int child: @ruby_case_child_type ref +); + +ruby_case_def( + unique int id: @ruby_case__ +); + +#keyset[ruby_case_match, index] +ruby_case_match_clauses( + int ruby_case_match: @ruby_case_match ref, + int index: int ref, + unique int clauses: @ruby_in_clause ref +); + +ruby_case_match_else( + unique int ruby_case_match: @ruby_case_match ref, + unique int else: @ruby_else ref +); + +ruby_case_match_def( + unique int id: @ruby_case_match, + int value: @ruby_underscore_statement ref +); + +#keyset[ruby_chained_string, index] +ruby_chained_string_child( + int ruby_chained_string: @ruby_chained_string ref, + int index: int ref, + unique int child: @ruby_string__ ref +); + +ruby_chained_string_def( + unique int id: @ruby_chained_string +); + +ruby_class_body( + unique int ruby_class: @ruby_class ref, + unique int body: @ruby_body_statement ref +); + +@ruby_class_name_type = @ruby_scope_resolution | @ruby_token_constant + +ruby_class_superclass( + unique int ruby_class: @ruby_class ref, + unique int superclass: @ruby_superclass ref +); + +ruby_class_def( + unique int id: @ruby_class, + int name: @ruby_class_name_type ref +); + +@ruby_complex_child_type = @ruby_rational | @ruby_token_float | @ruby_token_integer + +ruby_complex_def( + unique int id: @ruby_complex, + int child: @ruby_complex_child_type ref +); + +ruby_conditional_def( + unique int id: @ruby_conditional, + int alternative: @ruby_underscore_arg ref, + int condition: @ruby_underscore_arg ref, + int consequence: @ruby_underscore_arg ref +); + +@ruby_delimited_symbol_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_delimited_symbol, index] +ruby_delimited_symbol_child( + int ruby_delimited_symbol: @ruby_delimited_symbol ref, + int index: int ref, + unique int child: @ruby_delimited_symbol_child_type ref +); + +ruby_delimited_symbol_def( + unique int id: @ruby_delimited_symbol +); + +@ruby_destructured_left_assignment_child_type = @ruby_destructured_left_assignment | @ruby_rest_assignment | @ruby_underscore_lhs + +#keyset[ruby_destructured_left_assignment, index] +ruby_destructured_left_assignment_child( + int ruby_destructured_left_assignment: @ruby_destructured_left_assignment ref, + int index: int ref, + unique int child: @ruby_destructured_left_assignment_child_type ref +); + +ruby_destructured_left_assignment_def( + unique int id: @ruby_destructured_left_assignment +); + +@ruby_destructured_parameter_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_destructured_parameter, index] +ruby_destructured_parameter_child( + int ruby_destructured_parameter: @ruby_destructured_parameter ref, + int index: int ref, + unique int child: @ruby_destructured_parameter_child_type ref +); + +ruby_destructured_parameter_def( + unique int id: @ruby_destructured_parameter +); + +@ruby_do_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_do, index] +ruby_do_child( + int ruby_do: @ruby_do ref, + int index: int ref, + unique int child: @ruby_do_child_type ref +); + +ruby_do_def( + unique int id: @ruby_do +); + +ruby_do_block_body( + unique int ruby_do_block: @ruby_do_block ref, + unique int body: @ruby_body_statement ref +); + +ruby_do_block_parameters( + unique int ruby_do_block: @ruby_do_block ref, + unique int parameters: @ruby_block_parameters ref +); + +ruby_do_block_def( + unique int id: @ruby_do_block +); + +@ruby_element_reference_block_type = @ruby_block | @ruby_do_block + +ruby_element_reference_block( + unique int ruby_element_reference: @ruby_element_reference ref, + unique int block: @ruby_element_reference_block_type ref +); + +@ruby_element_reference_child_type = @ruby_block_argument | @ruby_hash_splat_argument | @ruby_pair | @ruby_splat_argument | @ruby_token_forward_argument | @ruby_underscore_expression + +#keyset[ruby_element_reference, index] +ruby_element_reference_child( + int ruby_element_reference: @ruby_element_reference ref, + int index: int ref, + unique int child: @ruby_element_reference_child_type ref +); + +ruby_element_reference_def( + unique int id: @ruby_element_reference, + int object: @ruby_underscore_primary ref +); + +@ruby_else_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_else, index] +ruby_else_child( + int ruby_else: @ruby_else ref, + int index: int ref, + unique int child: @ruby_else_child_type ref +); + +ruby_else_def( + unique int id: @ruby_else +); + +@ruby_elsif_alternative_type = @ruby_else | @ruby_elsif + +ruby_elsif_alternative( + unique int ruby_elsif: @ruby_elsif ref, + unique int alternative: @ruby_elsif_alternative_type ref +); + +ruby_elsif_consequence( + unique int ruby_elsif: @ruby_elsif ref, + unique int consequence: @ruby_then ref +); + +ruby_elsif_def( + unique int id: @ruby_elsif, + int condition: @ruby_underscore_statement ref +); + +@ruby_end_block_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_end_block, index] +ruby_end_block_child( + int ruby_end_block: @ruby_end_block ref, + int index: int ref, + unique int child: @ruby_end_block_child_type ref +); + +ruby_end_block_def( + unique int id: @ruby_end_block +); + +@ruby_ensure_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_ensure, index] +ruby_ensure_child( + int ruby_ensure: @ruby_ensure ref, + int index: int ref, + unique int child: @ruby_ensure_child_type ref +); + +ruby_ensure_def( + unique int id: @ruby_ensure +); + +ruby_exception_variable_def( + unique int id: @ruby_exception_variable, + int child: @ruby_underscore_lhs ref +); + +@ruby_exceptions_child_type = @ruby_splat_argument | @ruby_underscore_arg + +#keyset[ruby_exceptions, index] +ruby_exceptions_child( + int ruby_exceptions: @ruby_exceptions ref, + int index: int ref, + unique int child: @ruby_exceptions_child_type ref +); + +ruby_exceptions_def( + unique int id: @ruby_exceptions +); + +ruby_expression_reference_pattern_def( + unique int id: @ruby_expression_reference_pattern, + int value: @ruby_underscore_expression ref +); + +ruby_find_pattern_class( + unique int ruby_find_pattern: @ruby_find_pattern ref, + unique int class: @ruby_underscore_pattern_constant ref +); + +@ruby_find_pattern_child_type = @ruby_splat_parameter | @ruby_underscore_pattern_expr + +#keyset[ruby_find_pattern, index] +ruby_find_pattern_child( + int ruby_find_pattern: @ruby_find_pattern ref, + int index: int ref, + unique int child: @ruby_find_pattern_child_type ref +); + +ruby_find_pattern_def( + unique int id: @ruby_find_pattern +); + +@ruby_for_pattern_type = @ruby_left_assignment_list | @ruby_underscore_lhs + +ruby_for_def( + unique int id: @ruby_for, + int body: @ruby_do ref, + int pattern: @ruby_for_pattern_type ref, + int value: @ruby_in ref +); + +@ruby_hash_child_type = @ruby_hash_splat_argument | @ruby_pair + +#keyset[ruby_hash, index] +ruby_hash_child( + int ruby_hash: @ruby_hash ref, + int index: int ref, + unique int child: @ruby_hash_child_type ref +); + +ruby_hash_def( + unique int id: @ruby_hash +); + +ruby_hash_pattern_class( + unique int ruby_hash_pattern: @ruby_hash_pattern ref, + unique int class: @ruby_underscore_pattern_constant ref +); + +@ruby_hash_pattern_child_type = @ruby_hash_splat_parameter | @ruby_keyword_pattern | @ruby_token_hash_splat_nil + +#keyset[ruby_hash_pattern, index] +ruby_hash_pattern_child( + int ruby_hash_pattern: @ruby_hash_pattern ref, + int index: int ref, + unique int child: @ruby_hash_pattern_child_type ref +); + +ruby_hash_pattern_def( + unique int id: @ruby_hash_pattern +); + +ruby_hash_splat_argument_child( + unique int ruby_hash_splat_argument: @ruby_hash_splat_argument ref, + unique int child: @ruby_underscore_arg ref +); + +ruby_hash_splat_argument_def( + unique int id: @ruby_hash_splat_argument +); + +ruby_hash_splat_parameter_name( + unique int ruby_hash_splat_parameter: @ruby_hash_splat_parameter ref, + unique int name: @ruby_token_identifier ref +); + +ruby_hash_splat_parameter_def( + unique int id: @ruby_hash_splat_parameter +); + +@ruby_heredoc_body_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_heredoc_content | @ruby_token_heredoc_end + +#keyset[ruby_heredoc_body, index] +ruby_heredoc_body_child( + int ruby_heredoc_body: @ruby_heredoc_body ref, + int index: int ref, + unique int child: @ruby_heredoc_body_child_type ref +); + +ruby_heredoc_body_def( + unique int id: @ruby_heredoc_body +); + +@ruby_if_alternative_type = @ruby_else | @ruby_elsif + +ruby_if_alternative( + unique int ruby_if: @ruby_if ref, + unique int alternative: @ruby_if_alternative_type ref +); + +ruby_if_consequence( + unique int ruby_if: @ruby_if ref, + unique int consequence: @ruby_then ref +); + +ruby_if_def( + unique int id: @ruby_if, + int condition: @ruby_underscore_statement ref +); + +ruby_if_guard_def( + unique int id: @ruby_if_guard, + int condition: @ruby_underscore_expression ref +); + +ruby_if_modifier_def( + unique int id: @ruby_if_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +ruby_in_def( + unique int id: @ruby_in, + int child: @ruby_underscore_arg ref +); + +ruby_in_clause_body( + unique int ruby_in_clause: @ruby_in_clause ref, + unique int body: @ruby_then ref +); + +@ruby_in_clause_guard_type = @ruby_if_guard | @ruby_unless_guard + +ruby_in_clause_guard( + unique int ruby_in_clause: @ruby_in_clause ref, + unique int guard: @ruby_in_clause_guard_type ref +); + +ruby_in_clause_def( + unique int id: @ruby_in_clause, + int pattern: @ruby_underscore_pattern_top_expr_body ref +); + +@ruby_interpolation_child_type = @ruby_token_empty_statement | @ruby_underscore_nonlocal_variable | @ruby_underscore_statement + +#keyset[ruby_interpolation, index] +ruby_interpolation_child( + int ruby_interpolation: @ruby_interpolation ref, + int index: int ref, + unique int child: @ruby_interpolation_child_type ref +); + +ruby_interpolation_def( + unique int id: @ruby_interpolation +); + +ruby_keyword_parameter_value( + unique int ruby_keyword_parameter: @ruby_keyword_parameter ref, + unique int value: @ruby_underscore_arg ref +); + +ruby_keyword_parameter_def( + unique int id: @ruby_keyword_parameter, + int name: @ruby_token_identifier ref +); + +@ruby_keyword_pattern_key_type = @ruby_string__ | @ruby_token_hash_key_symbol + +ruby_keyword_pattern_value( + unique int ruby_keyword_pattern: @ruby_keyword_pattern ref, + unique int value: @ruby_underscore_pattern_expr ref +); + +ruby_keyword_pattern_def( + unique int id: @ruby_keyword_pattern, + int key__: @ruby_keyword_pattern_key_type ref +); + +@ruby_lambda_body_type = @ruby_block | @ruby_do_block + +ruby_lambda_parameters( + unique int ruby_lambda: @ruby_lambda ref, + unique int parameters: @ruby_lambda_parameters ref +); + +ruby_lambda_def( + unique int id: @ruby_lambda, + int body: @ruby_lambda_body_type ref +); + +@ruby_lambda_parameters_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_lambda_parameters, index] +ruby_lambda_parameters_child( + int ruby_lambda_parameters: @ruby_lambda_parameters ref, + int index: int ref, + unique int child: @ruby_lambda_parameters_child_type ref +); + +ruby_lambda_parameters_def( + unique int id: @ruby_lambda_parameters +); + +@ruby_left_assignment_list_child_type = @ruby_destructured_left_assignment | @ruby_rest_assignment | @ruby_underscore_lhs + +#keyset[ruby_left_assignment_list, index] +ruby_left_assignment_list_child( + int ruby_left_assignment_list: @ruby_left_assignment_list ref, + int index: int ref, + unique int child: @ruby_left_assignment_list_child_type ref +); + +ruby_left_assignment_list_def( + unique int id: @ruby_left_assignment_list +); + +ruby_match_pattern_def( + unique int id: @ruby_match_pattern, + int pattern: @ruby_underscore_pattern_top_expr_body ref, + int value: @ruby_underscore_arg ref +); + +@ruby_method_body_type = @ruby_body_statement | @ruby_rescue_modifier | @ruby_underscore_arg + +ruby_method_body( + unique int ruby_method: @ruby_method ref, + unique int body: @ruby_method_body_type ref +); + +ruby_method_parameters( + unique int ruby_method: @ruby_method ref, + unique int parameters: @ruby_method_parameters ref +); + +ruby_method_def( + unique int id: @ruby_method, + int name: @ruby_underscore_method_name ref +); + +@ruby_method_parameters_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_method_parameters, index] +ruby_method_parameters_child( + int ruby_method_parameters: @ruby_method_parameters ref, + int index: int ref, + unique int child: @ruby_method_parameters_child_type ref +); + +ruby_method_parameters_def( + unique int id: @ruby_method_parameters +); + +ruby_module_body( + unique int ruby_module: @ruby_module ref, + unique int body: @ruby_body_statement ref +); + +@ruby_module_name_type = @ruby_scope_resolution | @ruby_token_constant + +ruby_module_def( + unique int id: @ruby_module, + int name: @ruby_module_name_type ref +); + +ruby_next_child( + unique int ruby_next: @ruby_next ref, + unique int child: @ruby_argument_list ref +); + +ruby_next_def( + unique int id: @ruby_next +); + +case @ruby_operator_assignment.operator of + 0 = @ruby_operator_assignment_percentequal +| 1 = @ruby_operator_assignment_ampersandampersandequal +| 2 = @ruby_operator_assignment_ampersandequal +| 3 = @ruby_operator_assignment_starstarequal +| 4 = @ruby_operator_assignment_starequal +| 5 = @ruby_operator_assignment_plusequal +| 6 = @ruby_operator_assignment_minusequal +| 7 = @ruby_operator_assignment_slashequal +| 8 = @ruby_operator_assignment_langlelangleequal +| 9 = @ruby_operator_assignment_ranglerangleequal +| 10 = @ruby_operator_assignment_caretequal +| 11 = @ruby_operator_assignment_pipeequal +| 12 = @ruby_operator_assignment_pipepipeequal +; + + +@ruby_operator_assignment_right_type = @ruby_rescue_modifier | @ruby_underscore_expression + +ruby_operator_assignment_def( + unique int id: @ruby_operator_assignment, + int left: @ruby_underscore_lhs ref, + int operator: int ref, + int right: @ruby_operator_assignment_right_type ref +); + +ruby_optional_parameter_def( + unique int id: @ruby_optional_parameter, + int name: @ruby_token_identifier ref, + int value: @ruby_underscore_arg ref +); + +@ruby_pair_key_type = @ruby_string__ | @ruby_token_hash_key_symbol | @ruby_underscore_arg + +ruby_pair_value( + unique int ruby_pair: @ruby_pair ref, + unique int value: @ruby_underscore_arg ref +); + +ruby_pair_def( + unique int id: @ruby_pair, + int key__: @ruby_pair_key_type ref +); + +ruby_parenthesized_pattern_def( + unique int id: @ruby_parenthesized_pattern, + int child: @ruby_underscore_pattern_expr ref +); + +@ruby_parenthesized_statements_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_parenthesized_statements, index] +ruby_parenthesized_statements_child( + int ruby_parenthesized_statements: @ruby_parenthesized_statements ref, + int index: int ref, + unique int child: @ruby_parenthesized_statements_child_type ref +); + +ruby_parenthesized_statements_def( + unique int id: @ruby_parenthesized_statements +); + +@ruby_pattern_child_type = @ruby_splat_argument | @ruby_underscore_arg + +ruby_pattern_def( + unique int id: @ruby_pattern, + int child: @ruby_pattern_child_type ref +); + +@ruby_program_child_type = @ruby_token_empty_statement | @ruby_token_uninterpreted | @ruby_underscore_statement + +#keyset[ruby_program, index] +ruby_program_child( + int ruby_program: @ruby_program ref, + int index: int ref, + unique int child: @ruby_program_child_type ref +); + +ruby_program_def( + unique int id: @ruby_program +); + +@ruby_range_begin_type = @ruby_underscore_arg | @ruby_underscore_pattern_primitive + +ruby_range_begin( + unique int ruby_range: @ruby_range ref, + unique int begin: @ruby_range_begin_type ref +); + +@ruby_range_end_type = @ruby_underscore_arg | @ruby_underscore_pattern_primitive + +ruby_range_end( + unique int ruby_range: @ruby_range ref, + unique int end: @ruby_range_end_type ref +); + +case @ruby_range.operator of + 0 = @ruby_range_dotdot +| 1 = @ruby_range_dotdotdot +; + + +ruby_range_def( + unique int id: @ruby_range, + int operator: int ref +); + +@ruby_rational_child_type = @ruby_token_float | @ruby_token_integer + +ruby_rational_def( + unique int id: @ruby_rational, + int child: @ruby_rational_child_type ref +); + +ruby_redo_child( + unique int ruby_redo: @ruby_redo ref, + unique int child: @ruby_argument_list ref +); + +ruby_redo_def( + unique int id: @ruby_redo +); + +@ruby_regex_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_regex, index] +ruby_regex_child( + int ruby_regex: @ruby_regex ref, + int index: int ref, + unique int child: @ruby_regex_child_type ref +); + +ruby_regex_def( + unique int id: @ruby_regex +); + +ruby_rescue_body( + unique int ruby_rescue: @ruby_rescue ref, + unique int body: @ruby_then ref +); + +ruby_rescue_exceptions( + unique int ruby_rescue: @ruby_rescue ref, + unique int exceptions: @ruby_exceptions ref +); + +ruby_rescue_variable( + unique int ruby_rescue: @ruby_rescue ref, + unique int variable: @ruby_exception_variable ref +); + +ruby_rescue_def( + unique int id: @ruby_rescue +); + +@ruby_rescue_modifier_body_type = @ruby_underscore_arg | @ruby_underscore_statement + +ruby_rescue_modifier_def( + unique int id: @ruby_rescue_modifier, + int body: @ruby_rescue_modifier_body_type ref, + int handler: @ruby_underscore_expression ref +); + +ruby_rest_assignment_child( + unique int ruby_rest_assignment: @ruby_rest_assignment ref, + unique int child: @ruby_underscore_lhs ref +); + +ruby_rest_assignment_def( + unique int id: @ruby_rest_assignment +); + +ruby_retry_child( + unique int ruby_retry: @ruby_retry ref, + unique int child: @ruby_argument_list ref +); + +ruby_retry_def( + unique int id: @ruby_retry +); + +ruby_return_child( + unique int ruby_return: @ruby_return ref, + unique int child: @ruby_argument_list ref +); + +ruby_return_def( + unique int id: @ruby_return +); + +@ruby_right_assignment_list_child_type = @ruby_splat_argument | @ruby_underscore_arg + +#keyset[ruby_right_assignment_list, index] +ruby_right_assignment_list_child( + int ruby_right_assignment_list: @ruby_right_assignment_list ref, + int index: int ref, + unique int child: @ruby_right_assignment_list_child_type ref +); + +ruby_right_assignment_list_def( + unique int id: @ruby_right_assignment_list +); + +@ruby_scope_resolution_scope_type = @ruby_underscore_pattern_constant | @ruby_underscore_primary + +ruby_scope_resolution_scope( + unique int ruby_scope_resolution: @ruby_scope_resolution ref, + unique int scope: @ruby_scope_resolution_scope_type ref +); + +ruby_scope_resolution_def( + unique int id: @ruby_scope_resolution, + int name: @ruby_token_constant ref +); + +ruby_setter_def( + unique int id: @ruby_setter, + int name: @ruby_token_identifier ref +); + +ruby_singleton_class_body( + unique int ruby_singleton_class: @ruby_singleton_class ref, + unique int body: @ruby_body_statement ref +); + +ruby_singleton_class_def( + unique int id: @ruby_singleton_class, + int value: @ruby_underscore_arg ref +); + +@ruby_singleton_method_body_type = @ruby_body_statement | @ruby_rescue_modifier | @ruby_underscore_arg + +ruby_singleton_method_body( + unique int ruby_singleton_method: @ruby_singleton_method ref, + unique int body: @ruby_singleton_method_body_type ref +); + +@ruby_singleton_method_object_type = @ruby_underscore_arg | @ruby_underscore_variable + +ruby_singleton_method_parameters( + unique int ruby_singleton_method: @ruby_singleton_method ref, + unique int parameters: @ruby_method_parameters ref +); + +ruby_singleton_method_def( + unique int id: @ruby_singleton_method, + int name: @ruby_underscore_method_name ref, + int object: @ruby_singleton_method_object_type ref +); + +ruby_splat_argument_child( + unique int ruby_splat_argument: @ruby_splat_argument ref, + unique int child: @ruby_underscore_arg ref +); + +ruby_splat_argument_def( + unique int id: @ruby_splat_argument +); + +ruby_splat_parameter_name( + unique int ruby_splat_parameter: @ruby_splat_parameter ref, + unique int name: @ruby_token_identifier ref +); + +ruby_splat_parameter_def( + unique int id: @ruby_splat_parameter +); + +@ruby_string_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_string__, index] +ruby_string_child( + int ruby_string__: @ruby_string__ ref, + int index: int ref, + unique int child: @ruby_string_child_type ref +); + +ruby_string_def( + unique int id: @ruby_string__ +); + +#keyset[ruby_string_array, index] +ruby_string_array_child( + int ruby_string_array: @ruby_string_array ref, + int index: int ref, + unique int child: @ruby_bare_string ref +); + +ruby_string_array_def( + unique int id: @ruby_string_array +); + +@ruby_subshell_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_subshell, index] +ruby_subshell_child( + int ruby_subshell: @ruby_subshell ref, + int index: int ref, + unique int child: @ruby_subshell_child_type ref +); + +ruby_subshell_def( + unique int id: @ruby_subshell +); + +ruby_superclass_def( + unique int id: @ruby_superclass, + int child: @ruby_underscore_expression ref +); + +#keyset[ruby_symbol_array, index] +ruby_symbol_array_child( + int ruby_symbol_array: @ruby_symbol_array ref, + int index: int ref, + unique int child: @ruby_bare_symbol ref +); + +ruby_symbol_array_def( + unique int id: @ruby_symbol_array +); + +ruby_test_pattern_def( + unique int id: @ruby_test_pattern, + int pattern: @ruby_underscore_pattern_top_expr_body ref, + int value: @ruby_underscore_arg ref +); + +@ruby_then_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_then, index] +ruby_then_child( + int ruby_then: @ruby_then ref, + int index: int ref, + unique int child: @ruby_then_child_type ref +); + +ruby_then_def( + unique int id: @ruby_then +); + +@ruby_unary_operand_type = @ruby_parenthesized_statements | @ruby_underscore_expression | @ruby_underscore_simple_numeric + +case @ruby_unary.operator of + 0 = @ruby_unary_bang +| 1 = @ruby_unary_plus +| 2 = @ruby_unary_minus +| 3 = @ruby_unary_definedquestion +| 4 = @ruby_unary_not +| 5 = @ruby_unary_tilde +; + + +ruby_unary_def( + unique int id: @ruby_unary, + int operand: @ruby_unary_operand_type ref, + int operator: int ref +); + +#keyset[ruby_undef, index] +ruby_undef_child( + int ruby_undef: @ruby_undef ref, + int index: int ref, + unique int child: @ruby_underscore_method_name ref +); + +ruby_undef_def( + unique int id: @ruby_undef +); + +@ruby_unless_alternative_type = @ruby_else | @ruby_elsif + +ruby_unless_alternative( + unique int ruby_unless: @ruby_unless ref, + unique int alternative: @ruby_unless_alternative_type ref +); + +ruby_unless_consequence( + unique int ruby_unless: @ruby_unless ref, + unique int consequence: @ruby_then ref +); + +ruby_unless_def( + unique int id: @ruby_unless, + int condition: @ruby_underscore_statement ref +); + +ruby_unless_guard_def( + unique int id: @ruby_unless_guard, + int condition: @ruby_underscore_expression ref +); + +ruby_unless_modifier_def( + unique int id: @ruby_unless_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +ruby_until_def( + unique int id: @ruby_until, + int body: @ruby_do ref, + int condition: @ruby_underscore_statement ref +); + +ruby_until_modifier_def( + unique int id: @ruby_until_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +@ruby_variable_reference_pattern_name_type = @ruby_token_identifier | @ruby_underscore_nonlocal_variable + +ruby_variable_reference_pattern_def( + unique int id: @ruby_variable_reference_pattern, + int name: @ruby_variable_reference_pattern_name_type ref +); + +ruby_when_body( + unique int ruby_when: @ruby_when ref, + unique int body: @ruby_then ref +); + +#keyset[ruby_when, index] +ruby_when_pattern( + int ruby_when: @ruby_when ref, + int index: int ref, + unique int pattern: @ruby_pattern ref +); + +ruby_when_def( + unique int id: @ruby_when +); + +ruby_while_def( + unique int id: @ruby_while, + int body: @ruby_do ref, + int condition: @ruby_underscore_statement ref +); + +ruby_while_modifier_def( + unique int id: @ruby_while_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +ruby_yield_child( + unique int ruby_yield: @ruby_yield ref, + unique int child: @ruby_argument_list ref +); + +ruby_yield_def( + unique int id: @ruby_yield +); + +ruby_tokeninfo( + unique int id: @ruby_token, + int kind: int ref, + string value: string ref +); + +case @ruby_token.kind of + 0 = @ruby_reserved_word +| 1 = @ruby_token_character +| 2 = @ruby_token_class_variable +| 3 = @ruby_token_comment +| 4 = @ruby_token_constant +| 5 = @ruby_token_empty_statement +| 6 = @ruby_token_encoding +| 7 = @ruby_token_escape_sequence +| 8 = @ruby_token_false +| 9 = @ruby_token_file +| 10 = @ruby_token_float +| 11 = @ruby_token_forward_argument +| 12 = @ruby_token_forward_parameter +| 13 = @ruby_token_global_variable +| 14 = @ruby_token_hash_key_symbol +| 15 = @ruby_token_hash_splat_nil +| 16 = @ruby_token_heredoc_beginning +| 17 = @ruby_token_heredoc_content +| 18 = @ruby_token_heredoc_end +| 19 = @ruby_token_identifier +| 20 = @ruby_token_instance_variable +| 21 = @ruby_token_integer +| 22 = @ruby_token_line +| 23 = @ruby_token_nil +| 24 = @ruby_token_operator +| 25 = @ruby_token_self +| 26 = @ruby_token_simple_symbol +| 27 = @ruby_token_string_content +| 28 = @ruby_token_super +| 29 = @ruby_token_true +| 30 = @ruby_token_uninterpreted +; + + +@ruby_ast_node = @ruby_alias | @ruby_alternative_pattern | @ruby_argument_list | @ruby_array | @ruby_array_pattern | @ruby_as_pattern | @ruby_assignment | @ruby_bare_string | @ruby_bare_symbol | @ruby_begin | @ruby_begin_block | @ruby_binary | @ruby_block | @ruby_block_argument | @ruby_block_body | @ruby_block_parameter | @ruby_block_parameters | @ruby_body_statement | @ruby_break | @ruby_call | @ruby_case__ | @ruby_case_match | @ruby_chained_string | @ruby_class | @ruby_complex | @ruby_conditional | @ruby_delimited_symbol | @ruby_destructured_left_assignment | @ruby_destructured_parameter | @ruby_do | @ruby_do_block | @ruby_element_reference | @ruby_else | @ruby_elsif | @ruby_end_block | @ruby_ensure | @ruby_exception_variable | @ruby_exceptions | @ruby_expression_reference_pattern | @ruby_find_pattern | @ruby_for | @ruby_hash | @ruby_hash_pattern | @ruby_hash_splat_argument | @ruby_hash_splat_parameter | @ruby_heredoc_body | @ruby_if | @ruby_if_guard | @ruby_if_modifier | @ruby_in | @ruby_in_clause | @ruby_interpolation | @ruby_keyword_parameter | @ruby_keyword_pattern | @ruby_lambda | @ruby_lambda_parameters | @ruby_left_assignment_list | @ruby_match_pattern | @ruby_method | @ruby_method_parameters | @ruby_module | @ruby_next | @ruby_operator_assignment | @ruby_optional_parameter | @ruby_pair | @ruby_parenthesized_pattern | @ruby_parenthesized_statements | @ruby_pattern | @ruby_program | @ruby_range | @ruby_rational | @ruby_redo | @ruby_regex | @ruby_rescue | @ruby_rescue_modifier | @ruby_rest_assignment | @ruby_retry | @ruby_return | @ruby_right_assignment_list | @ruby_scope_resolution | @ruby_setter | @ruby_singleton_class | @ruby_singleton_method | @ruby_splat_argument | @ruby_splat_parameter | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_superclass | @ruby_symbol_array | @ruby_test_pattern | @ruby_then | @ruby_token | @ruby_unary | @ruby_undef | @ruby_unless | @ruby_unless_guard | @ruby_unless_modifier | @ruby_until | @ruby_until_modifier | @ruby_variable_reference_pattern | @ruby_when | @ruby_while | @ruby_while_modifier | @ruby_yield + +ruby_ast_node_location( + unique int node: @ruby_ast_node ref, + int loc: @location_default ref +); + +#keyset[parent, parent_index] +ruby_ast_node_parent( + unique int node: @ruby_ast_node ref, + int parent: @ruby_ast_node ref, + int parent_index: int ref +); + +/*- Erb dbscheme -*/ +erb_comment_directive_child( + unique int erb_comment_directive: @erb_comment_directive ref, + unique int child: @erb_token_comment ref +); + +erb_comment_directive_def( + unique int id: @erb_comment_directive +); + +erb_directive_child( + unique int erb_directive: @erb_directive ref, + unique int child: @erb_token_code ref +); + +erb_directive_def( + unique int id: @erb_directive +); + +erb_graphql_directive_child( + unique int erb_graphql_directive: @erb_graphql_directive ref, + unique int child: @erb_token_code ref +); + +erb_graphql_directive_def( + unique int id: @erb_graphql_directive +); + +erb_output_directive_child( + unique int erb_output_directive: @erb_output_directive ref, + unique int child: @erb_token_code ref +); + +erb_output_directive_def( + unique int id: @erb_output_directive +); + +@erb_template_child_type = @erb_comment_directive | @erb_directive | @erb_graphql_directive | @erb_output_directive | @erb_token_content + +#keyset[erb_template, index] +erb_template_child( + int erb_template: @erb_template ref, + int index: int ref, + unique int child: @erb_template_child_type ref +); + +erb_template_def( + unique int id: @erb_template +); + +erb_tokeninfo( + unique int id: @erb_token, + int kind: int ref, + string value: string ref +); + +case @erb_token.kind of + 0 = @erb_reserved_word +| 1 = @erb_token_code +| 2 = @erb_token_comment +| 3 = @erb_token_content +; + + +@erb_ast_node = @erb_comment_directive | @erb_directive | @erb_graphql_directive | @erb_output_directive | @erb_template | @erb_token + +erb_ast_node_location( + unique int node: @erb_ast_node ref, + int loc: @location_default ref +); + +#keyset[parent, parent_index] +erb_ast_node_parent( + unique int node: @erb_ast_node ref, + int parent: @erb_ast_node ref, + int parent_index: int ref +); + diff --git a/ruby/ql/lib/upgrades/eae6926f5000373d5eb1d82131e1ff6152b67b2c/ruby.dbscheme b/ruby/ql/lib/upgrades/eae6926f5000373d5eb1d82131e1ff6152b67b2c/ruby.dbscheme new file mode 100644 index 000000000000..29b7b6fc1982 --- /dev/null +++ b/ruby/ql/lib/upgrades/eae6926f5000373d5eb1d82131e1ff6152b67b2c/ruby.dbscheme @@ -0,0 +1,1549 @@ +// CodeQL database schema for Ruby +// Automatically generated from the tree-sitter grammar; do not edit +// To regenerate, run 'make dbscheme' in ql/ruby/ + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Empty location -*/ + +empty_location( + int location: @location_default ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- Diagnostic messages: severity -*/ + +case @diagnostic.severity of + 10 = @diagnostic_debug +| 20 = @diagnostic_info +| 30 = @diagnostic_warning +| 40 = @diagnostic_error +; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- Ruby dbscheme -*/ +@ruby_underscore_arg = @ruby_assignment | @ruby_binary | @ruby_conditional | @ruby_operator_assignment | @ruby_range | @ruby_unary | @ruby_underscore_primary + +@ruby_underscore_call_operator = @ruby_reserved_word + +@ruby_underscore_expression = @ruby_assignment | @ruby_binary | @ruby_break | @ruby_call | @ruby_match_pattern | @ruby_next | @ruby_operator_assignment | @ruby_return | @ruby_test_pattern | @ruby_unary | @ruby_underscore_arg | @ruby_yield + +@ruby_underscore_lhs = @ruby_call | @ruby_element_reference | @ruby_scope_resolution | @ruby_token_false | @ruby_token_nil | @ruby_token_true | @ruby_underscore_variable + +@ruby_underscore_method_name = @ruby_delimited_symbol | @ruby_setter | @ruby_token_constant | @ruby_token_identifier | @ruby_token_operator | @ruby_token_simple_symbol | @ruby_underscore_nonlocal_variable + +@ruby_underscore_nonlocal_variable = @ruby_token_class_variable | @ruby_token_global_variable | @ruby_token_instance_variable + +@ruby_underscore_pattern_constant = @ruby_scope_resolution | @ruby_token_constant + +@ruby_underscore_pattern_expr = @ruby_alternative_pattern | @ruby_as_pattern | @ruby_underscore_pattern_expr_basic + +@ruby_underscore_pattern_expr_basic = @ruby_array_pattern | @ruby_expression_reference_pattern | @ruby_find_pattern | @ruby_hash_pattern | @ruby_parenthesized_pattern | @ruby_range | @ruby_token_identifier | @ruby_underscore_pattern_constant | @ruby_underscore_pattern_primitive | @ruby_variable_reference_pattern + +@ruby_underscore_pattern_primitive = @ruby_delimited_symbol | @ruby_lambda | @ruby_regex | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_symbol_array | @ruby_token_encoding | @ruby_token_false | @ruby_token_file | @ruby_token_heredoc_beginning | @ruby_token_line | @ruby_token_nil | @ruby_token_self | @ruby_token_simple_symbol | @ruby_token_true | @ruby_unary | @ruby_underscore_simple_numeric + +@ruby_underscore_pattern_top_expr_body = @ruby_array_pattern | @ruby_find_pattern | @ruby_hash_pattern | @ruby_underscore_pattern_expr + +@ruby_underscore_primary = @ruby_array | @ruby_begin | @ruby_break | @ruby_call | @ruby_case__ | @ruby_case_match | @ruby_chained_string | @ruby_class | @ruby_delimited_symbol | @ruby_for | @ruby_hash | @ruby_if | @ruby_lambda | @ruby_method | @ruby_module | @ruby_next | @ruby_parenthesized_statements | @ruby_redo | @ruby_regex | @ruby_retry | @ruby_return | @ruby_singleton_class | @ruby_singleton_method | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_symbol_array | @ruby_token_character | @ruby_token_heredoc_beginning | @ruby_token_simple_symbol | @ruby_unary | @ruby_underscore_lhs | @ruby_underscore_simple_numeric | @ruby_unless | @ruby_until | @ruby_while | @ruby_yield + +@ruby_underscore_simple_numeric = @ruby_complex | @ruby_rational | @ruby_token_float | @ruby_token_integer + +@ruby_underscore_statement = @ruby_alias | @ruby_begin_block | @ruby_end_block | @ruby_if_modifier | @ruby_rescue_modifier | @ruby_undef | @ruby_underscore_expression | @ruby_unless_modifier | @ruby_until_modifier | @ruby_while_modifier + +@ruby_underscore_variable = @ruby_token_constant | @ruby_token_identifier | @ruby_token_self | @ruby_token_super | @ruby_underscore_nonlocal_variable + +ruby_alias_def( + unique int id: @ruby_alias, + int alias: @ruby_underscore_method_name ref, + int name: @ruby_underscore_method_name ref +); + +#keyset[ruby_alternative_pattern, index] +ruby_alternative_pattern_alternatives( + int ruby_alternative_pattern: @ruby_alternative_pattern ref, + int index: int ref, + unique int alternatives: @ruby_underscore_pattern_expr_basic ref +); + +ruby_alternative_pattern_def( + unique int id: @ruby_alternative_pattern +); + +@ruby_argument_list_child_type = @ruby_block_argument | @ruby_hash_splat_argument | @ruby_pair | @ruby_splat_argument | @ruby_token_forward_argument | @ruby_underscore_expression + +#keyset[ruby_argument_list, index] +ruby_argument_list_child( + int ruby_argument_list: @ruby_argument_list ref, + int index: int ref, + unique int child: @ruby_argument_list_child_type ref +); + +ruby_argument_list_def( + unique int id: @ruby_argument_list +); + +@ruby_array_child_type = @ruby_block_argument | @ruby_hash_splat_argument | @ruby_pair | @ruby_splat_argument | @ruby_token_forward_argument | @ruby_underscore_expression + +#keyset[ruby_array, index] +ruby_array_child( + int ruby_array: @ruby_array ref, + int index: int ref, + unique int child: @ruby_array_child_type ref +); + +ruby_array_def( + unique int id: @ruby_array +); + +ruby_array_pattern_class( + unique int ruby_array_pattern: @ruby_array_pattern ref, + unique int class: @ruby_underscore_pattern_constant ref +); + +@ruby_array_pattern_child_type = @ruby_splat_parameter | @ruby_underscore_pattern_expr + +#keyset[ruby_array_pattern, index] +ruby_array_pattern_child( + int ruby_array_pattern: @ruby_array_pattern ref, + int index: int ref, + unique int child: @ruby_array_pattern_child_type ref +); + +ruby_array_pattern_def( + unique int id: @ruby_array_pattern +); + +ruby_as_pattern_def( + unique int id: @ruby_as_pattern, + int name: @ruby_token_identifier ref, + int value: @ruby_underscore_pattern_expr ref +); + +@ruby_assignment_left_type = @ruby_left_assignment_list | @ruby_underscore_lhs + +@ruby_assignment_right_type = @ruby_rescue_modifier | @ruby_right_assignment_list | @ruby_splat_argument | @ruby_underscore_expression + +ruby_assignment_def( + unique int id: @ruby_assignment, + int left: @ruby_assignment_left_type ref, + int right: @ruby_assignment_right_type ref +); + +@ruby_bare_string_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_bare_string, index] +ruby_bare_string_child( + int ruby_bare_string: @ruby_bare_string ref, + int index: int ref, + unique int child: @ruby_bare_string_child_type ref +); + +ruby_bare_string_def( + unique int id: @ruby_bare_string +); + +@ruby_bare_symbol_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_bare_symbol, index] +ruby_bare_symbol_child( + int ruby_bare_symbol: @ruby_bare_symbol ref, + int index: int ref, + unique int child: @ruby_bare_symbol_child_type ref +); + +ruby_bare_symbol_def( + unique int id: @ruby_bare_symbol +); + +@ruby_begin_child_type = @ruby_else | @ruby_ensure | @ruby_rescue | @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_begin, index] +ruby_begin_child( + int ruby_begin: @ruby_begin ref, + int index: int ref, + unique int child: @ruby_begin_child_type ref +); + +ruby_begin_def( + unique int id: @ruby_begin +); + +@ruby_begin_block_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_begin_block, index] +ruby_begin_block_child( + int ruby_begin_block: @ruby_begin_block ref, + int index: int ref, + unique int child: @ruby_begin_block_child_type ref +); + +ruby_begin_block_def( + unique int id: @ruby_begin_block +); + +@ruby_binary_left_type = @ruby_underscore_expression | @ruby_underscore_simple_numeric + +case @ruby_binary.operator of + 0 = @ruby_binary_bangequal +| 1 = @ruby_binary_bangtilde +| 2 = @ruby_binary_percent +| 3 = @ruby_binary_ampersand +| 4 = @ruby_binary_ampersandampersand +| 5 = @ruby_binary_star +| 6 = @ruby_binary_starstar +| 7 = @ruby_binary_plus +| 8 = @ruby_binary_minus +| 9 = @ruby_binary_slash +| 10 = @ruby_binary_langle +| 11 = @ruby_binary_langlelangle +| 12 = @ruby_binary_langleequal +| 13 = @ruby_binary_langleequalrangle +| 14 = @ruby_binary_equalequal +| 15 = @ruby_binary_equalequalequal +| 16 = @ruby_binary_equaltilde +| 17 = @ruby_binary_rangle +| 18 = @ruby_binary_rangleequal +| 19 = @ruby_binary_ranglerangle +| 20 = @ruby_binary_caret +| 21 = @ruby_binary_and +| 22 = @ruby_binary_or +| 23 = @ruby_binary_pipe +| 24 = @ruby_binary_pipepipe +; + + +ruby_binary_def( + unique int id: @ruby_binary, + int left: @ruby_binary_left_type ref, + int operator: int ref, + int right: @ruby_underscore_expression ref +); + +ruby_block_body( + unique int ruby_block: @ruby_block ref, + unique int body: @ruby_block_body ref +); + +ruby_block_parameters( + unique int ruby_block: @ruby_block ref, + unique int parameters: @ruby_block_parameters ref +); + +ruby_block_def( + unique int id: @ruby_block +); + +ruby_block_argument_child( + unique int ruby_block_argument: @ruby_block_argument ref, + unique int child: @ruby_underscore_arg ref +); + +ruby_block_argument_def( + unique int id: @ruby_block_argument +); + +@ruby_block_body_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_block_body, index] +ruby_block_body_child( + int ruby_block_body: @ruby_block_body ref, + int index: int ref, + unique int child: @ruby_block_body_child_type ref +); + +ruby_block_body_def( + unique int id: @ruby_block_body +); + +ruby_block_parameter_name( + unique int ruby_block_parameter: @ruby_block_parameter ref, + unique int name: @ruby_token_identifier ref +); + +ruby_block_parameter_def( + unique int id: @ruby_block_parameter +); + +#keyset[ruby_block_parameters, index] +ruby_block_parameters_locals( + int ruby_block_parameters: @ruby_block_parameters ref, + int index: int ref, + unique int locals: @ruby_token_identifier ref +); + +@ruby_block_parameters_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_block_parameters, index] +ruby_block_parameters_child( + int ruby_block_parameters: @ruby_block_parameters ref, + int index: int ref, + unique int child: @ruby_block_parameters_child_type ref +); + +ruby_block_parameters_def( + unique int id: @ruby_block_parameters +); + +@ruby_body_statement_child_type = @ruby_else | @ruby_ensure | @ruby_rescue | @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_body_statement, index] +ruby_body_statement_child( + int ruby_body_statement: @ruby_body_statement ref, + int index: int ref, + unique int child: @ruby_body_statement_child_type ref +); + +ruby_body_statement_def( + unique int id: @ruby_body_statement +); + +ruby_break_child( + unique int ruby_break: @ruby_break ref, + unique int child: @ruby_argument_list ref +); + +ruby_break_def( + unique int id: @ruby_break +); + +ruby_call_arguments( + unique int ruby_call: @ruby_call ref, + unique int arguments: @ruby_argument_list ref +); + +@ruby_call_block_type = @ruby_block | @ruby_do_block + +ruby_call_block( + unique int ruby_call: @ruby_call ref, + unique int block: @ruby_call_block_type ref +); + +@ruby_call_method_type = @ruby_token_operator | @ruby_underscore_variable + +ruby_call_method( + unique int ruby_call: @ruby_call ref, + unique int method: @ruby_call_method_type ref +); + +ruby_call_operator( + unique int ruby_call: @ruby_call ref, + unique int operator: @ruby_underscore_call_operator ref +); + +ruby_call_receiver( + unique int ruby_call: @ruby_call ref, + unique int receiver: @ruby_underscore_primary ref +); + +ruby_call_def( + unique int id: @ruby_call +); + +ruby_case_value( + unique int ruby_case__: @ruby_case__ ref, + unique int value: @ruby_underscore_statement ref +); + +@ruby_case_child_type = @ruby_else | @ruby_when + +#keyset[ruby_case__, index] +ruby_case_child( + int ruby_case__: @ruby_case__ ref, + int index: int ref, + unique int child: @ruby_case_child_type ref +); + +ruby_case_def( + unique int id: @ruby_case__ +); + +#keyset[ruby_case_match, index] +ruby_case_match_clauses( + int ruby_case_match: @ruby_case_match ref, + int index: int ref, + unique int clauses: @ruby_in_clause ref +); + +ruby_case_match_else( + unique int ruby_case_match: @ruby_case_match ref, + unique int else: @ruby_else ref +); + +ruby_case_match_def( + unique int id: @ruby_case_match, + int value: @ruby_underscore_statement ref +); + +#keyset[ruby_chained_string, index] +ruby_chained_string_child( + int ruby_chained_string: @ruby_chained_string ref, + int index: int ref, + unique int child: @ruby_string__ ref +); + +ruby_chained_string_def( + unique int id: @ruby_chained_string +); + +ruby_class_body( + unique int ruby_class: @ruby_class ref, + unique int body: @ruby_body_statement ref +); + +@ruby_class_name_type = @ruby_scope_resolution | @ruby_token_constant + +ruby_class_superclass( + unique int ruby_class: @ruby_class ref, + unique int superclass: @ruby_superclass ref +); + +ruby_class_def( + unique int id: @ruby_class, + int name: @ruby_class_name_type ref +); + +@ruby_complex_child_type = @ruby_rational | @ruby_token_float | @ruby_token_integer + +ruby_complex_def( + unique int id: @ruby_complex, + int child: @ruby_complex_child_type ref +); + +ruby_conditional_def( + unique int id: @ruby_conditional, + int alternative: @ruby_underscore_arg ref, + int condition: @ruby_underscore_arg ref, + int consequence: @ruby_underscore_arg ref +); + +@ruby_delimited_symbol_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_delimited_symbol, index] +ruby_delimited_symbol_child( + int ruby_delimited_symbol: @ruby_delimited_symbol ref, + int index: int ref, + unique int child: @ruby_delimited_symbol_child_type ref +); + +ruby_delimited_symbol_def( + unique int id: @ruby_delimited_symbol +); + +@ruby_destructured_left_assignment_child_type = @ruby_destructured_left_assignment | @ruby_rest_assignment | @ruby_underscore_lhs + +#keyset[ruby_destructured_left_assignment, index] +ruby_destructured_left_assignment_child( + int ruby_destructured_left_assignment: @ruby_destructured_left_assignment ref, + int index: int ref, + unique int child: @ruby_destructured_left_assignment_child_type ref +); + +ruby_destructured_left_assignment_def( + unique int id: @ruby_destructured_left_assignment +); + +@ruby_destructured_parameter_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_destructured_parameter, index] +ruby_destructured_parameter_child( + int ruby_destructured_parameter: @ruby_destructured_parameter ref, + int index: int ref, + unique int child: @ruby_destructured_parameter_child_type ref +); + +ruby_destructured_parameter_def( + unique int id: @ruby_destructured_parameter +); + +@ruby_do_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_do, index] +ruby_do_child( + int ruby_do: @ruby_do ref, + int index: int ref, + unique int child: @ruby_do_child_type ref +); + +ruby_do_def( + unique int id: @ruby_do +); + +ruby_do_block_body( + unique int ruby_do_block: @ruby_do_block ref, + unique int body: @ruby_body_statement ref +); + +ruby_do_block_parameters( + unique int ruby_do_block: @ruby_do_block ref, + unique int parameters: @ruby_block_parameters ref +); + +ruby_do_block_def( + unique int id: @ruby_do_block +); + +@ruby_element_reference_block_type = @ruby_block | @ruby_do_block + +ruby_element_reference_block( + unique int ruby_element_reference: @ruby_element_reference ref, + unique int block: @ruby_element_reference_block_type ref +); + +@ruby_element_reference_child_type = @ruby_block_argument | @ruby_hash_splat_argument | @ruby_pair | @ruby_splat_argument | @ruby_token_forward_argument | @ruby_underscore_expression + +#keyset[ruby_element_reference, index] +ruby_element_reference_child( + int ruby_element_reference: @ruby_element_reference ref, + int index: int ref, + unique int child: @ruby_element_reference_child_type ref +); + +ruby_element_reference_def( + unique int id: @ruby_element_reference, + int object: @ruby_underscore_primary ref +); + +@ruby_else_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_else, index] +ruby_else_child( + int ruby_else: @ruby_else ref, + int index: int ref, + unique int child: @ruby_else_child_type ref +); + +ruby_else_def( + unique int id: @ruby_else +); + +@ruby_elsif_alternative_type = @ruby_else | @ruby_elsif + +ruby_elsif_alternative( + unique int ruby_elsif: @ruby_elsif ref, + unique int alternative: @ruby_elsif_alternative_type ref +); + +ruby_elsif_consequence( + unique int ruby_elsif: @ruby_elsif ref, + unique int consequence: @ruby_then ref +); + +ruby_elsif_def( + unique int id: @ruby_elsif, + int condition: @ruby_underscore_statement ref +); + +@ruby_end_block_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_end_block, index] +ruby_end_block_child( + int ruby_end_block: @ruby_end_block ref, + int index: int ref, + unique int child: @ruby_end_block_child_type ref +); + +ruby_end_block_def( + unique int id: @ruby_end_block +); + +@ruby_ensure_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_ensure, index] +ruby_ensure_child( + int ruby_ensure: @ruby_ensure ref, + int index: int ref, + unique int child: @ruby_ensure_child_type ref +); + +ruby_ensure_def( + unique int id: @ruby_ensure +); + +ruby_exception_variable_def( + unique int id: @ruby_exception_variable, + int child: @ruby_underscore_lhs ref +); + +@ruby_exceptions_child_type = @ruby_splat_argument | @ruby_underscore_arg + +#keyset[ruby_exceptions, index] +ruby_exceptions_child( + int ruby_exceptions: @ruby_exceptions ref, + int index: int ref, + unique int child: @ruby_exceptions_child_type ref +); + +ruby_exceptions_def( + unique int id: @ruby_exceptions +); + +ruby_expression_reference_pattern_def( + unique int id: @ruby_expression_reference_pattern, + int value: @ruby_underscore_expression ref +); + +ruby_find_pattern_class( + unique int ruby_find_pattern: @ruby_find_pattern ref, + unique int class: @ruby_underscore_pattern_constant ref +); + +@ruby_find_pattern_child_type = @ruby_splat_parameter | @ruby_underscore_pattern_expr + +#keyset[ruby_find_pattern, index] +ruby_find_pattern_child( + int ruby_find_pattern: @ruby_find_pattern ref, + int index: int ref, + unique int child: @ruby_find_pattern_child_type ref +); + +ruby_find_pattern_def( + unique int id: @ruby_find_pattern +); + +@ruby_for_pattern_type = @ruby_left_assignment_list | @ruby_underscore_lhs + +ruby_for_def( + unique int id: @ruby_for, + int body: @ruby_do ref, + int pattern: @ruby_for_pattern_type ref, + int value: @ruby_in ref +); + +@ruby_hash_child_type = @ruby_hash_splat_argument | @ruby_pair + +#keyset[ruby_hash, index] +ruby_hash_child( + int ruby_hash: @ruby_hash ref, + int index: int ref, + unique int child: @ruby_hash_child_type ref +); + +ruby_hash_def( + unique int id: @ruby_hash +); + +ruby_hash_pattern_class( + unique int ruby_hash_pattern: @ruby_hash_pattern ref, + unique int class: @ruby_underscore_pattern_constant ref +); + +@ruby_hash_pattern_child_type = @ruby_hash_splat_parameter | @ruby_keyword_pattern | @ruby_token_hash_splat_nil + +#keyset[ruby_hash_pattern, index] +ruby_hash_pattern_child( + int ruby_hash_pattern: @ruby_hash_pattern ref, + int index: int ref, + unique int child: @ruby_hash_pattern_child_type ref +); + +ruby_hash_pattern_def( + unique int id: @ruby_hash_pattern +); + +ruby_hash_splat_argument_child( + unique int ruby_hash_splat_argument: @ruby_hash_splat_argument ref, + unique int child: @ruby_underscore_arg ref +); + +ruby_hash_splat_argument_def( + unique int id: @ruby_hash_splat_argument +); + +ruby_hash_splat_parameter_name( + unique int ruby_hash_splat_parameter: @ruby_hash_splat_parameter ref, + unique int name: @ruby_token_identifier ref +); + +ruby_hash_splat_parameter_def( + unique int id: @ruby_hash_splat_parameter +); + +@ruby_heredoc_body_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_heredoc_content | @ruby_token_heredoc_end + +#keyset[ruby_heredoc_body, index] +ruby_heredoc_body_child( + int ruby_heredoc_body: @ruby_heredoc_body ref, + int index: int ref, + unique int child: @ruby_heredoc_body_child_type ref +); + +ruby_heredoc_body_def( + unique int id: @ruby_heredoc_body +); + +@ruby_if_alternative_type = @ruby_else | @ruby_elsif + +ruby_if_alternative( + unique int ruby_if: @ruby_if ref, + unique int alternative: @ruby_if_alternative_type ref +); + +ruby_if_consequence( + unique int ruby_if: @ruby_if ref, + unique int consequence: @ruby_then ref +); + +ruby_if_def( + unique int id: @ruby_if, + int condition: @ruby_underscore_statement ref +); + +ruby_if_guard_def( + unique int id: @ruby_if_guard, + int condition: @ruby_underscore_expression ref +); + +ruby_if_modifier_def( + unique int id: @ruby_if_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +ruby_in_def( + unique int id: @ruby_in, + int child: @ruby_underscore_arg ref +); + +ruby_in_clause_body( + unique int ruby_in_clause: @ruby_in_clause ref, + unique int body: @ruby_then ref +); + +@ruby_in_clause_guard_type = @ruby_if_guard | @ruby_unless_guard + +ruby_in_clause_guard( + unique int ruby_in_clause: @ruby_in_clause ref, + unique int guard: @ruby_in_clause_guard_type ref +); + +ruby_in_clause_def( + unique int id: @ruby_in_clause, + int pattern: @ruby_underscore_pattern_top_expr_body ref +); + +@ruby_interpolation_child_type = @ruby_token_empty_statement | @ruby_underscore_nonlocal_variable | @ruby_underscore_statement + +#keyset[ruby_interpolation, index] +ruby_interpolation_child( + int ruby_interpolation: @ruby_interpolation ref, + int index: int ref, + unique int child: @ruby_interpolation_child_type ref +); + +ruby_interpolation_def( + unique int id: @ruby_interpolation +); + +ruby_keyword_parameter_value( + unique int ruby_keyword_parameter: @ruby_keyword_parameter ref, + unique int value: @ruby_underscore_arg ref +); + +ruby_keyword_parameter_def( + unique int id: @ruby_keyword_parameter, + int name: @ruby_token_identifier ref +); + +@ruby_keyword_pattern_key_type = @ruby_string__ | @ruby_token_hash_key_symbol + +ruby_keyword_pattern_value( + unique int ruby_keyword_pattern: @ruby_keyword_pattern ref, + unique int value: @ruby_underscore_pattern_expr ref +); + +ruby_keyword_pattern_def( + unique int id: @ruby_keyword_pattern, + int key__: @ruby_keyword_pattern_key_type ref +); + +@ruby_lambda_body_type = @ruby_block | @ruby_do_block + +ruby_lambda_parameters( + unique int ruby_lambda: @ruby_lambda ref, + unique int parameters: @ruby_lambda_parameters ref +); + +ruby_lambda_def( + unique int id: @ruby_lambda, + int body: @ruby_lambda_body_type ref +); + +@ruby_lambda_parameters_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_lambda_parameters, index] +ruby_lambda_parameters_child( + int ruby_lambda_parameters: @ruby_lambda_parameters ref, + int index: int ref, + unique int child: @ruby_lambda_parameters_child_type ref +); + +ruby_lambda_parameters_def( + unique int id: @ruby_lambda_parameters +); + +@ruby_left_assignment_list_child_type = @ruby_destructured_left_assignment | @ruby_rest_assignment | @ruby_underscore_lhs + +#keyset[ruby_left_assignment_list, index] +ruby_left_assignment_list_child( + int ruby_left_assignment_list: @ruby_left_assignment_list ref, + int index: int ref, + unique int child: @ruby_left_assignment_list_child_type ref +); + +ruby_left_assignment_list_def( + unique int id: @ruby_left_assignment_list +); + +ruby_match_pattern_def( + unique int id: @ruby_match_pattern, + int pattern: @ruby_underscore_pattern_top_expr_body ref, + int value: @ruby_underscore_arg ref +); + +@ruby_method_body_type = @ruby_body_statement | @ruby_rescue_modifier | @ruby_underscore_arg + +ruby_method_body( + unique int ruby_method: @ruby_method ref, + unique int body: @ruby_method_body_type ref +); + +ruby_method_parameters( + unique int ruby_method: @ruby_method ref, + unique int parameters: @ruby_method_parameters ref +); + +ruby_method_def( + unique int id: @ruby_method, + int name: @ruby_underscore_method_name ref +); + +@ruby_method_parameters_child_type = @ruby_block_parameter | @ruby_destructured_parameter | @ruby_hash_splat_parameter | @ruby_keyword_parameter | @ruby_optional_parameter | @ruby_splat_parameter | @ruby_token_forward_parameter | @ruby_token_hash_splat_nil | @ruby_token_identifier + +#keyset[ruby_method_parameters, index] +ruby_method_parameters_child( + int ruby_method_parameters: @ruby_method_parameters ref, + int index: int ref, + unique int child: @ruby_method_parameters_child_type ref +); + +ruby_method_parameters_def( + unique int id: @ruby_method_parameters +); + +ruby_module_body( + unique int ruby_module: @ruby_module ref, + unique int body: @ruby_body_statement ref +); + +@ruby_module_name_type = @ruby_scope_resolution | @ruby_token_constant + +ruby_module_def( + unique int id: @ruby_module, + int name: @ruby_module_name_type ref +); + +ruby_next_child( + unique int ruby_next: @ruby_next ref, + unique int child: @ruby_argument_list ref +); + +ruby_next_def( + unique int id: @ruby_next +); + +case @ruby_operator_assignment.operator of + 0 = @ruby_operator_assignment_percentequal +| 1 = @ruby_operator_assignment_ampersandampersandequal +| 2 = @ruby_operator_assignment_ampersandequal +| 3 = @ruby_operator_assignment_starstarequal +| 4 = @ruby_operator_assignment_starequal +| 5 = @ruby_operator_assignment_plusequal +| 6 = @ruby_operator_assignment_minusequal +| 7 = @ruby_operator_assignment_slashequal +| 8 = @ruby_operator_assignment_langlelangleequal +| 9 = @ruby_operator_assignment_ranglerangleequal +| 10 = @ruby_operator_assignment_caretequal +| 11 = @ruby_operator_assignment_pipeequal +| 12 = @ruby_operator_assignment_pipepipeequal +; + + +@ruby_operator_assignment_right_type = @ruby_rescue_modifier | @ruby_underscore_expression + +ruby_operator_assignment_def( + unique int id: @ruby_operator_assignment, + int left: @ruby_underscore_lhs ref, + int operator: int ref, + int right: @ruby_operator_assignment_right_type ref +); + +ruby_optional_parameter_def( + unique int id: @ruby_optional_parameter, + int name: @ruby_token_identifier ref, + int value: @ruby_underscore_arg ref +); + +@ruby_pair_key_type = @ruby_string__ | @ruby_token_hash_key_symbol | @ruby_underscore_arg + +ruby_pair_value( + unique int ruby_pair: @ruby_pair ref, + unique int value: @ruby_underscore_arg ref +); + +ruby_pair_def( + unique int id: @ruby_pair, + int key__: @ruby_pair_key_type ref +); + +ruby_parenthesized_pattern_def( + unique int id: @ruby_parenthesized_pattern, + int child: @ruby_underscore_pattern_expr ref +); + +@ruby_parenthesized_statements_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_parenthesized_statements, index] +ruby_parenthesized_statements_child( + int ruby_parenthesized_statements: @ruby_parenthesized_statements ref, + int index: int ref, + unique int child: @ruby_parenthesized_statements_child_type ref +); + +ruby_parenthesized_statements_def( + unique int id: @ruby_parenthesized_statements +); + +@ruby_pattern_child_type = @ruby_splat_argument | @ruby_underscore_arg + +ruby_pattern_def( + unique int id: @ruby_pattern, + int child: @ruby_pattern_child_type ref +); + +@ruby_program_child_type = @ruby_token_empty_statement | @ruby_token_uninterpreted | @ruby_underscore_statement + +#keyset[ruby_program, index] +ruby_program_child( + int ruby_program: @ruby_program ref, + int index: int ref, + unique int child: @ruby_program_child_type ref +); + +ruby_program_def( + unique int id: @ruby_program +); + +@ruby_range_begin_type = @ruby_underscore_arg | @ruby_underscore_pattern_primitive + +ruby_range_begin( + unique int ruby_range: @ruby_range ref, + unique int begin: @ruby_range_begin_type ref +); + +@ruby_range_end_type = @ruby_underscore_arg | @ruby_underscore_pattern_primitive + +ruby_range_end( + unique int ruby_range: @ruby_range ref, + unique int end: @ruby_range_end_type ref +); + +case @ruby_range.operator of + 0 = @ruby_range_dotdot +| 1 = @ruby_range_dotdotdot +; + + +ruby_range_def( + unique int id: @ruby_range, + int operator: int ref +); + +@ruby_rational_child_type = @ruby_token_float | @ruby_token_integer + +ruby_rational_def( + unique int id: @ruby_rational, + int child: @ruby_rational_child_type ref +); + +ruby_redo_child( + unique int ruby_redo: @ruby_redo ref, + unique int child: @ruby_argument_list ref +); + +ruby_redo_def( + unique int id: @ruby_redo +); + +@ruby_regex_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_regex, index] +ruby_regex_child( + int ruby_regex: @ruby_regex ref, + int index: int ref, + unique int child: @ruby_regex_child_type ref +); + +ruby_regex_def( + unique int id: @ruby_regex +); + +ruby_rescue_body( + unique int ruby_rescue: @ruby_rescue ref, + unique int body: @ruby_then ref +); + +ruby_rescue_exceptions( + unique int ruby_rescue: @ruby_rescue ref, + unique int exceptions: @ruby_exceptions ref +); + +ruby_rescue_variable( + unique int ruby_rescue: @ruby_rescue ref, + unique int variable: @ruby_exception_variable ref +); + +ruby_rescue_def( + unique int id: @ruby_rescue +); + +@ruby_rescue_modifier_body_type = @ruby_underscore_arg | @ruby_underscore_statement + +ruby_rescue_modifier_def( + unique int id: @ruby_rescue_modifier, + int body: @ruby_rescue_modifier_body_type ref, + int handler: @ruby_underscore_expression ref +); + +ruby_rest_assignment_child( + unique int ruby_rest_assignment: @ruby_rest_assignment ref, + unique int child: @ruby_underscore_lhs ref +); + +ruby_rest_assignment_def( + unique int id: @ruby_rest_assignment +); + +ruby_retry_child( + unique int ruby_retry: @ruby_retry ref, + unique int child: @ruby_argument_list ref +); + +ruby_retry_def( + unique int id: @ruby_retry +); + +ruby_return_child( + unique int ruby_return: @ruby_return ref, + unique int child: @ruby_argument_list ref +); + +ruby_return_def( + unique int id: @ruby_return +); + +@ruby_right_assignment_list_child_type = @ruby_splat_argument | @ruby_underscore_arg + +#keyset[ruby_right_assignment_list, index] +ruby_right_assignment_list_child( + int ruby_right_assignment_list: @ruby_right_assignment_list ref, + int index: int ref, + unique int child: @ruby_right_assignment_list_child_type ref +); + +ruby_right_assignment_list_def( + unique int id: @ruby_right_assignment_list +); + +@ruby_scope_resolution_scope_type = @ruby_underscore_pattern_constant | @ruby_underscore_primary + +ruby_scope_resolution_scope( + unique int ruby_scope_resolution: @ruby_scope_resolution ref, + unique int scope: @ruby_scope_resolution_scope_type ref +); + +ruby_scope_resolution_def( + unique int id: @ruby_scope_resolution, + int name: @ruby_token_constant ref +); + +ruby_setter_def( + unique int id: @ruby_setter, + int name: @ruby_token_identifier ref +); + +ruby_singleton_class_body( + unique int ruby_singleton_class: @ruby_singleton_class ref, + unique int body: @ruby_body_statement ref +); + +ruby_singleton_class_def( + unique int id: @ruby_singleton_class, + int value: @ruby_underscore_arg ref +); + +@ruby_singleton_method_body_type = @ruby_body_statement | @ruby_rescue_modifier | @ruby_underscore_arg + +ruby_singleton_method_body( + unique int ruby_singleton_method: @ruby_singleton_method ref, + unique int body: @ruby_singleton_method_body_type ref +); + +@ruby_singleton_method_object_type = @ruby_underscore_arg | @ruby_underscore_variable + +ruby_singleton_method_parameters( + unique int ruby_singleton_method: @ruby_singleton_method ref, + unique int parameters: @ruby_method_parameters ref +); + +ruby_singleton_method_def( + unique int id: @ruby_singleton_method, + int name: @ruby_underscore_method_name ref, + int object: @ruby_singleton_method_object_type ref +); + +ruby_splat_argument_child( + unique int ruby_splat_argument: @ruby_splat_argument ref, + unique int child: @ruby_underscore_arg ref +); + +ruby_splat_argument_def( + unique int id: @ruby_splat_argument +); + +ruby_splat_parameter_name( + unique int ruby_splat_parameter: @ruby_splat_parameter ref, + unique int name: @ruby_token_identifier ref +); + +ruby_splat_parameter_def( + unique int id: @ruby_splat_parameter +); + +@ruby_string_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_string__, index] +ruby_string_child( + int ruby_string__: @ruby_string__ ref, + int index: int ref, + unique int child: @ruby_string_child_type ref +); + +ruby_string_def( + unique int id: @ruby_string__ +); + +#keyset[ruby_string_array, index] +ruby_string_array_child( + int ruby_string_array: @ruby_string_array ref, + int index: int ref, + unique int child: @ruby_bare_string ref +); + +ruby_string_array_def( + unique int id: @ruby_string_array +); + +@ruby_subshell_child_type = @ruby_interpolation | @ruby_token_escape_sequence | @ruby_token_string_content + +#keyset[ruby_subshell, index] +ruby_subshell_child( + int ruby_subshell: @ruby_subshell ref, + int index: int ref, + unique int child: @ruby_subshell_child_type ref +); + +ruby_subshell_def( + unique int id: @ruby_subshell +); + +ruby_superclass_def( + unique int id: @ruby_superclass, + int child: @ruby_underscore_expression ref +); + +#keyset[ruby_symbol_array, index] +ruby_symbol_array_child( + int ruby_symbol_array: @ruby_symbol_array ref, + int index: int ref, + unique int child: @ruby_bare_symbol ref +); + +ruby_symbol_array_def( + unique int id: @ruby_symbol_array +); + +ruby_test_pattern_def( + unique int id: @ruby_test_pattern, + int pattern: @ruby_underscore_pattern_top_expr_body ref, + int value: @ruby_underscore_arg ref +); + +@ruby_then_child_type = @ruby_token_empty_statement | @ruby_underscore_statement + +#keyset[ruby_then, index] +ruby_then_child( + int ruby_then: @ruby_then ref, + int index: int ref, + unique int child: @ruby_then_child_type ref +); + +ruby_then_def( + unique int id: @ruby_then +); + +@ruby_unary_operand_type = @ruby_parenthesized_statements | @ruby_underscore_expression | @ruby_underscore_simple_numeric + +case @ruby_unary.operator of + 0 = @ruby_unary_bang +| 1 = @ruby_unary_plus +| 2 = @ruby_unary_minus +| 3 = @ruby_unary_definedquestion +| 4 = @ruby_unary_not +| 5 = @ruby_unary_tilde +; + + +ruby_unary_def( + unique int id: @ruby_unary, + int operand: @ruby_unary_operand_type ref, + int operator: int ref +); + +#keyset[ruby_undef, index] +ruby_undef_child( + int ruby_undef: @ruby_undef ref, + int index: int ref, + unique int child: @ruby_underscore_method_name ref +); + +ruby_undef_def( + unique int id: @ruby_undef +); + +@ruby_unless_alternative_type = @ruby_else | @ruby_elsif + +ruby_unless_alternative( + unique int ruby_unless: @ruby_unless ref, + unique int alternative: @ruby_unless_alternative_type ref +); + +ruby_unless_consequence( + unique int ruby_unless: @ruby_unless ref, + unique int consequence: @ruby_then ref +); + +ruby_unless_def( + unique int id: @ruby_unless, + int condition: @ruby_underscore_statement ref +); + +ruby_unless_guard_def( + unique int id: @ruby_unless_guard, + int condition: @ruby_underscore_expression ref +); + +ruby_unless_modifier_def( + unique int id: @ruby_unless_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +ruby_until_def( + unique int id: @ruby_until, + int body: @ruby_do ref, + int condition: @ruby_underscore_statement ref +); + +ruby_until_modifier_def( + unique int id: @ruby_until_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +@ruby_variable_reference_pattern_name_type = @ruby_token_identifier | @ruby_underscore_nonlocal_variable + +ruby_variable_reference_pattern_def( + unique int id: @ruby_variable_reference_pattern, + int name: @ruby_variable_reference_pattern_name_type ref +); + +ruby_when_body( + unique int ruby_when: @ruby_when ref, + unique int body: @ruby_then ref +); + +#keyset[ruby_when, index] +ruby_when_pattern( + int ruby_when: @ruby_when ref, + int index: int ref, + unique int pattern: @ruby_pattern ref +); + +ruby_when_def( + unique int id: @ruby_when +); + +ruby_while_def( + unique int id: @ruby_while, + int body: @ruby_do ref, + int condition: @ruby_underscore_statement ref +); + +ruby_while_modifier_def( + unique int id: @ruby_while_modifier, + int body: @ruby_underscore_statement ref, + int condition: @ruby_underscore_expression ref +); + +ruby_yield_child( + unique int ruby_yield: @ruby_yield ref, + unique int child: @ruby_argument_list ref +); + +ruby_yield_def( + unique int id: @ruby_yield +); + +ruby_tokeninfo( + unique int id: @ruby_token, + int kind: int ref, + string value: string ref +); + +case @ruby_token.kind of + 0 = @ruby_reserved_word +| 1 = @ruby_token_character +| 2 = @ruby_token_class_variable +| 3 = @ruby_token_comment +| 4 = @ruby_token_constant +| 5 = @ruby_token_empty_statement +| 6 = @ruby_token_encoding +| 7 = @ruby_token_escape_sequence +| 8 = @ruby_token_false +| 9 = @ruby_token_file +| 10 = @ruby_token_float +| 11 = @ruby_token_forward_argument +| 12 = @ruby_token_forward_parameter +| 13 = @ruby_token_global_variable +| 14 = @ruby_token_hash_key_symbol +| 15 = @ruby_token_hash_splat_nil +| 16 = @ruby_token_heredoc_beginning +| 17 = @ruby_token_heredoc_content +| 18 = @ruby_token_heredoc_end +| 19 = @ruby_token_identifier +| 20 = @ruby_token_instance_variable +| 21 = @ruby_token_integer +| 22 = @ruby_token_line +| 23 = @ruby_token_nil +| 24 = @ruby_token_operator +| 25 = @ruby_token_self +| 26 = @ruby_token_simple_symbol +| 27 = @ruby_token_string_content +| 28 = @ruby_token_super +| 29 = @ruby_token_true +| 30 = @ruby_token_uninterpreted +; + + +@ruby_ast_node = @ruby_alias | @ruby_alternative_pattern | @ruby_argument_list | @ruby_array | @ruby_array_pattern | @ruby_as_pattern | @ruby_assignment | @ruby_bare_string | @ruby_bare_symbol | @ruby_begin | @ruby_begin_block | @ruby_binary | @ruby_block | @ruby_block_argument | @ruby_block_body | @ruby_block_parameter | @ruby_block_parameters | @ruby_body_statement | @ruby_break | @ruby_call | @ruby_case__ | @ruby_case_match | @ruby_chained_string | @ruby_class | @ruby_complex | @ruby_conditional | @ruby_delimited_symbol | @ruby_destructured_left_assignment | @ruby_destructured_parameter | @ruby_do | @ruby_do_block | @ruby_element_reference | @ruby_else | @ruby_elsif | @ruby_end_block | @ruby_ensure | @ruby_exception_variable | @ruby_exceptions | @ruby_expression_reference_pattern | @ruby_find_pattern | @ruby_for | @ruby_hash | @ruby_hash_pattern | @ruby_hash_splat_argument | @ruby_hash_splat_parameter | @ruby_heredoc_body | @ruby_if | @ruby_if_guard | @ruby_if_modifier | @ruby_in | @ruby_in_clause | @ruby_interpolation | @ruby_keyword_parameter | @ruby_keyword_pattern | @ruby_lambda | @ruby_lambda_parameters | @ruby_left_assignment_list | @ruby_match_pattern | @ruby_method | @ruby_method_parameters | @ruby_module | @ruby_next | @ruby_operator_assignment | @ruby_optional_parameter | @ruby_pair | @ruby_parenthesized_pattern | @ruby_parenthesized_statements | @ruby_pattern | @ruby_program | @ruby_range | @ruby_rational | @ruby_redo | @ruby_regex | @ruby_rescue | @ruby_rescue_modifier | @ruby_rest_assignment | @ruby_retry | @ruby_return | @ruby_right_assignment_list | @ruby_scope_resolution | @ruby_setter | @ruby_singleton_class | @ruby_singleton_method | @ruby_splat_argument | @ruby_splat_parameter | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_superclass | @ruby_symbol_array | @ruby_test_pattern | @ruby_then | @ruby_token | @ruby_unary | @ruby_undef | @ruby_unless | @ruby_unless_guard | @ruby_unless_modifier | @ruby_until | @ruby_until_modifier | @ruby_variable_reference_pattern | @ruby_when | @ruby_while | @ruby_while_modifier | @ruby_yield + +ruby_ast_node_location( + unique int node: @ruby_ast_node ref, + int loc: @location_default ref +); + +#keyset[parent, parent_index] +ruby_ast_node_parent( + unique int node: @ruby_ast_node ref, + int parent: @ruby_ast_node ref, + int parent_index: int ref +); + +/*- Erb dbscheme -*/ +erb_comment_directive_child( + unique int erb_comment_directive: @erb_comment_directive ref, + unique int child: @erb_token_comment ref +); + +erb_comment_directive_def( + unique int id: @erb_comment_directive +); + +erb_directive_child( + unique int erb_directive: @erb_directive ref, + unique int child: @erb_token_code ref +); + +erb_directive_def( + unique int id: @erb_directive +); + +erb_graphql_directive_child( + unique int erb_graphql_directive: @erb_graphql_directive ref, + unique int child: @erb_token_code ref +); + +erb_graphql_directive_def( + unique int id: @erb_graphql_directive +); + +erb_output_directive_child( + unique int erb_output_directive: @erb_output_directive ref, + unique int child: @erb_token_code ref +); + +erb_output_directive_def( + unique int id: @erb_output_directive +); + +@erb_template_child_type = @erb_comment_directive | @erb_directive | @erb_graphql_directive | @erb_output_directive | @erb_token_content + +#keyset[erb_template, index] +erb_template_child( + int erb_template: @erb_template ref, + int index: int ref, + unique int child: @erb_template_child_type ref +); + +erb_template_def( + unique int id: @erb_template +); + +erb_tokeninfo( + unique int id: @erb_token, + int kind: int ref, + string value: string ref +); + +case @erb_token.kind of + 0 = @erb_reserved_word +| 1 = @erb_token_code +| 2 = @erb_token_comment +| 3 = @erb_token_content +; + + +@erb_ast_node = @erb_comment_directive | @erb_directive | @erb_graphql_directive | @erb_output_directive | @erb_template | @erb_token + +erb_ast_node_location( + unique int node: @erb_ast_node ref, + int loc: @location_default ref +); + +#keyset[parent, parent_index] +erb_ast_node_parent( + unique int node: @erb_ast_node ref, + int parent: @erb_ast_node ref, + int parent_index: int ref +); + diff --git a/ruby/ql/lib/upgrades/eae6926f5000373d5eb1d82131e1ff6152b67b2c/upgrade.properties b/ruby/ql/lib/upgrades/eae6926f5000373d5eb1d82131e1ff6152b67b2c/upgrade.properties new file mode 100644 index 000000000000..00fae2d3bc61 --- /dev/null +++ b/ruby/ql/lib/upgrades/eae6926f5000373d5eb1d82131e1ff6152b67b2c/upgrade.properties @@ -0,0 +1,2 @@ +description: Sections for databaseMetadata and overlayChangedFiles +compatibility: full From c37ab8f98e49a61f2bc48aebe0a7f5a40b777f5c Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 13 Jan 2026 18:06:45 +0000 Subject: [PATCH 084/433] rust: Regenerate dbscheme --- rust/ql/lib/rust.dbscheme | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/rust/ql/lib/rust.dbscheme b/rust/ql/lib/rust.dbscheme index 90861289dd4c..66a489863649 100644 --- a/rust/ql/lib/rust.dbscheme +++ b/rust/ql/lib/rust.dbscheme @@ -109,11 +109,23 @@ yaml_locations(unique int locatable: @yaml_locatable ref, @yaml_locatable = @yaml_node | @yaml_error; /*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ databaseMetadata( string metadataKey: string ref, string value: string ref ); +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ overlayChangedFiles( string path: string ref ); From d6d2855626e9dc6f175196af727e2efb6b2b4366 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Wed, 14 Jan 2026 10:15:53 +0000 Subject: [PATCH 085/433] rust: Add up/downgrade scripts --- .../old.dbscheme | 3556 +++++++++++++++++ .../semmlecode.dbscheme | 3544 ++++++++++++++++ .../upgrade.properties | 2 + .../old.dbscheme | 3544 ++++++++++++++++ .../rust.dbscheme | 3556 +++++++++++++++++ .../upgrade.properties | 2 + 6 files changed, 14204 insertions(+) create mode 100644 rust/downgrades/66a489863649185f4a9770f894505803059a1312/old.dbscheme create mode 100644 rust/downgrades/66a489863649185f4a9770f894505803059a1312/semmlecode.dbscheme create mode 100644 rust/downgrades/66a489863649185f4a9770f894505803059a1312/upgrade.properties create mode 100644 rust/ql/lib/upgrades/90861289dd4c4d9fc029ed0fc249c1e11c5aab01/old.dbscheme create mode 100644 rust/ql/lib/upgrades/90861289dd4c4d9fc029ed0fc249c1e11c5aab01/rust.dbscheme create mode 100644 rust/ql/lib/upgrades/90861289dd4c4d9fc029ed0fc249c1e11c5aab01/upgrade.properties diff --git a/rust/downgrades/66a489863649185f4a9770f894505803059a1312/old.dbscheme b/rust/downgrades/66a489863649185f4a9770f894505803059a1312/old.dbscheme new file mode 100644 index 000000000000..66a489863649 --- /dev/null +++ b/rust/downgrades/66a489863649185f4a9770f894505803059a1312/old.dbscheme @@ -0,0 +1,3556 @@ +// generated by codegen, do not edit + +// from ../shared/tree-sitter-extractor/src/generator/prefix.dbscheme +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Empty location -*/ + +empty_location( + int location: @location_default ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- Diagnostic messages: severity -*/ + +case @diagnostic.severity of + 10 = @diagnostic_debug +| 20 = @diagnostic_info +| 30 = @diagnostic_warning +| 40 = @diagnostic_error +; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + + +// from prefix.dbscheme +#keyset[id] +locatable_locations( + int id: @locatable ref, + int location: @location_default ref +); + + +// from schema + +@element = + @extractor_step +| @locatable +| @named_crate +| @unextracted +; + +extractor_steps( + unique int id: @extractor_step, + string action: string ref, + int duration_ms: int ref +); + +#keyset[id] +extractor_step_files( + int id: @extractor_step ref, + int file: @file ref +); + +@locatable = + @ast_node +| @crate +; + +named_crates( + unique int id: @named_crate, + string name: string ref, + int crate: @crate ref +); + +@unextracted = + @missing +| @unimplemented +; + +@ast_node = + @abi +| @addressable +| @arg_list +| @asm_dir_spec +| @asm_operand +| @asm_operand_expr +| @asm_option +| @asm_piece +| @asm_reg_spec +| @assoc_item_list +| @attr +| @callable +| @expr +| @extern_item_list +| @field_list +| @for_binder +| @format_args_arg +| @generic_arg +| @generic_arg_list +| @generic_param +| @generic_param_list +| @item_list +| @label +| @let_else +| @macro_items +| @match_arm +| @match_arm_list +| @match_guard +| @meta +| @name +| @param_base +| @param_list +| @parenthesized_arg_list +| @pat +| @path +| @path_ast_node +| @path_segment +| @rename +| @ret_type_repr +| @return_type_syntax +| @source_file +| @stmt +| @stmt_list +| @struct_expr_field +| @struct_expr_field_list +| @struct_field +| @struct_pat_field +| @struct_pat_field_list +| @token +| @token_tree +| @tuple_field +| @type_bound +| @type_bound_list +| @type_repr +| @use_bound_generic_arg +| @use_bound_generic_args +| @use_tree +| @use_tree_list +| @variant_list +| @visibility +| @where_clause +| @where_pred +; + +crates( + unique int id: @crate +); + +#keyset[id] +crate_names( + int id: @crate ref, + string name: string ref +); + +#keyset[id] +crate_versions( + int id: @crate ref, + string version: string ref +); + +#keyset[id, index] +crate_cfg_options( + int id: @crate ref, + int index: int ref, + string cfg_option: string ref +); + +#keyset[id, index] +crate_named_dependencies( + int id: @crate ref, + int index: int ref, + int named_dependency: @named_crate ref +); + +missings( + unique int id: @missing +); + +unimplementeds( + unique int id: @unimplemented +); + +abis( + unique int id: @abi +); + +#keyset[id] +abi_abi_strings( + int id: @abi ref, + string abi_string: string ref +); + +@addressable = + @item +| @variant +; + +arg_lists( + unique int id: @arg_list +); + +#keyset[id, index] +arg_list_args( + int id: @arg_list ref, + int index: int ref, + int arg: @expr ref +); + +asm_dir_specs( + unique int id: @asm_dir_spec +); + +@asm_operand = + @asm_const +| @asm_label +| @asm_reg_operand +| @asm_sym +; + +asm_operand_exprs( + unique int id: @asm_operand_expr +); + +#keyset[id] +asm_operand_expr_in_exprs( + int id: @asm_operand_expr ref, + int in_expr: @expr ref +); + +#keyset[id] +asm_operand_expr_out_exprs( + int id: @asm_operand_expr ref, + int out_expr: @expr ref +); + +asm_options( + unique int id: @asm_option +); + +#keyset[id] +asm_option_is_raw( + int id: @asm_option ref +); + +@asm_piece = + @asm_clobber_abi +| @asm_operand_named +| @asm_options_list +; + +asm_reg_specs( + unique int id: @asm_reg_spec +); + +#keyset[id] +asm_reg_spec_identifiers( + int id: @asm_reg_spec ref, + int identifier: @name_ref ref +); + +assoc_item_lists( + unique int id: @assoc_item_list +); + +#keyset[id, index] +assoc_item_list_assoc_items( + int id: @assoc_item_list ref, + int index: int ref, + int assoc_item: @assoc_item ref +); + +#keyset[id, index] +assoc_item_list_attrs( + int id: @assoc_item_list ref, + int index: int ref, + int attr: @attr ref +); + +attrs( + unique int id: @attr +); + +#keyset[id] +attr_meta( + int id: @attr ref, + int meta: @meta ref +); + +@callable = + @closure_expr +| @function +; + +#keyset[id] +callable_param_lists( + int id: @callable ref, + int param_list: @param_list ref +); + +#keyset[id, index] +callable_attrs( + int id: @callable ref, + int index: int ref, + int attr: @attr ref +); + +@expr = + @array_expr_internal +| @asm_expr +| @await_expr +| @become_expr +| @binary_expr +| @break_expr +| @call_expr +| @cast_expr +| @closure_expr +| @continue_expr +| @field_expr +| @format_args_expr +| @if_expr +| @index_expr +| @labelable_expr +| @let_expr +| @literal_expr +| @macro_expr +| @match_expr +| @method_call_expr +| @offset_of_expr +| @paren_expr +| @path_expr_base +| @prefix_expr +| @range_expr +| @ref_expr +| @return_expr +| @struct_expr +| @try_expr +| @tuple_expr +| @underscore_expr +| @yeet_expr +| @yield_expr +; + +extern_item_lists( + unique int id: @extern_item_list +); + +#keyset[id, index] +extern_item_list_attrs( + int id: @extern_item_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +extern_item_list_extern_items( + int id: @extern_item_list ref, + int index: int ref, + int extern_item: @extern_item ref +); + +@field_list = + @struct_field_list +| @tuple_field_list +; + +for_binders( + unique int id: @for_binder +); + +#keyset[id] +for_binder_generic_param_lists( + int id: @for_binder ref, + int generic_param_list: @generic_param_list ref +); + +format_args_args( + unique int id: @format_args_arg +); + +#keyset[id] +format_args_arg_exprs( + int id: @format_args_arg ref, + int expr: @expr ref +); + +#keyset[id] +format_args_arg_names( + int id: @format_args_arg ref, + int name: @name ref +); + +@generic_arg = + @assoc_type_arg +| @const_arg +| @lifetime_arg +| @type_arg +; + +generic_arg_lists( + unique int id: @generic_arg_list +); + +#keyset[id, index] +generic_arg_list_generic_args( + int id: @generic_arg_list ref, + int index: int ref, + int generic_arg: @generic_arg ref +); + +@generic_param = + @const_param +| @lifetime_param +| @type_param +; + +generic_param_lists( + unique int id: @generic_param_list +); + +#keyset[id, index] +generic_param_list_generic_params( + int id: @generic_param_list ref, + int index: int ref, + int generic_param: @generic_param ref +); + +item_lists( + unique int id: @item_list +); + +#keyset[id, index] +item_list_attrs( + int id: @item_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +item_list_items( + int id: @item_list ref, + int index: int ref, + int item: @item ref +); + +labels( + unique int id: @label +); + +#keyset[id] +label_lifetimes( + int id: @label ref, + int lifetime: @lifetime ref +); + +let_elses( + unique int id: @let_else +); + +#keyset[id] +let_else_block_exprs( + int id: @let_else ref, + int block_expr: @block_expr ref +); + +macro_items( + unique int id: @macro_items +); + +#keyset[id, index] +macro_items_items( + int id: @macro_items ref, + int index: int ref, + int item: @item ref +); + +match_arms( + unique int id: @match_arm +); + +#keyset[id, index] +match_arm_attrs( + int id: @match_arm ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +match_arm_exprs( + int id: @match_arm ref, + int expr: @expr ref +); + +#keyset[id] +match_arm_guards( + int id: @match_arm ref, + int guard: @match_guard ref +); + +#keyset[id] +match_arm_pats( + int id: @match_arm ref, + int pat: @pat ref +); + +match_arm_lists( + unique int id: @match_arm_list +); + +#keyset[id, index] +match_arm_list_arms( + int id: @match_arm_list ref, + int index: int ref, + int arm: @match_arm ref +); + +#keyset[id, index] +match_arm_list_attrs( + int id: @match_arm_list ref, + int index: int ref, + int attr: @attr ref +); + +match_guards( + unique int id: @match_guard +); + +#keyset[id] +match_guard_conditions( + int id: @match_guard ref, + int condition: @expr ref +); + +meta( + unique int id: @meta +); + +#keyset[id] +meta_exprs( + int id: @meta ref, + int expr: @expr ref +); + +#keyset[id] +meta_is_unsafe( + int id: @meta ref +); + +#keyset[id] +meta_paths( + int id: @meta ref, + int path: @path ref +); + +#keyset[id] +meta_token_trees( + int id: @meta ref, + int token_tree: @token_tree ref +); + +names( + unique int id: @name +); + +#keyset[id] +name_texts( + int id: @name ref, + string text: string ref +); + +@param_base = + @param +| @self_param +; + +#keyset[id, index] +param_base_attrs( + int id: @param_base ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +param_base_type_reprs( + int id: @param_base ref, + int type_repr: @type_repr ref +); + +param_lists( + unique int id: @param_list +); + +#keyset[id, index] +param_list_params( + int id: @param_list ref, + int index: int ref, + int param: @param ref +); + +#keyset[id] +param_list_self_params( + int id: @param_list ref, + int self_param: @self_param ref +); + +parenthesized_arg_lists( + unique int id: @parenthesized_arg_list +); + +#keyset[id, index] +parenthesized_arg_list_type_args( + int id: @parenthesized_arg_list ref, + int index: int ref, + int type_arg: @type_arg ref +); + +@pat = + @box_pat +| @const_block_pat +| @ident_pat +| @literal_pat +| @macro_pat +| @or_pat +| @paren_pat +| @path_pat +| @range_pat +| @ref_pat +| @rest_pat +| @slice_pat +| @struct_pat +| @tuple_pat +| @tuple_struct_pat +| @wildcard_pat +; + +paths( + unique int id: @path +); + +#keyset[id] +path_qualifiers( + int id: @path ref, + int qualifier: @path ref +); + +#keyset[id] +path_segments_( + int id: @path ref, + int segment: @path_segment ref +); + +@path_ast_node = + @path_expr +| @path_pat +| @struct_expr +| @struct_pat +| @tuple_struct_pat +; + +#keyset[id] +path_ast_node_paths( + int id: @path_ast_node ref, + int path: @path ref +); + +path_segments( + unique int id: @path_segment +); + +#keyset[id] +path_segment_generic_arg_lists( + int id: @path_segment ref, + int generic_arg_list: @generic_arg_list ref +); + +#keyset[id] +path_segment_identifiers( + int id: @path_segment ref, + int identifier: @name_ref ref +); + +#keyset[id] +path_segment_parenthesized_arg_lists( + int id: @path_segment ref, + int parenthesized_arg_list: @parenthesized_arg_list ref +); + +#keyset[id] +path_segment_ret_types( + int id: @path_segment ref, + int ret_type: @ret_type_repr ref +); + +#keyset[id] +path_segment_return_type_syntaxes( + int id: @path_segment ref, + int return_type_syntax: @return_type_syntax ref +); + +#keyset[id] +path_segment_type_reprs( + int id: @path_segment ref, + int type_repr: @type_repr ref +); + +#keyset[id] +path_segment_trait_type_reprs( + int id: @path_segment ref, + int trait_type_repr: @path_type_repr ref +); + +renames( + unique int id: @rename +); + +#keyset[id] +rename_names( + int id: @rename ref, + int name: @name ref +); + +ret_type_reprs( + unique int id: @ret_type_repr +); + +#keyset[id] +ret_type_repr_type_reprs( + int id: @ret_type_repr ref, + int type_repr: @type_repr ref +); + +return_type_syntaxes( + unique int id: @return_type_syntax +); + +source_files( + unique int id: @source_file +); + +#keyset[id, index] +source_file_attrs( + int id: @source_file ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +source_file_items( + int id: @source_file ref, + int index: int ref, + int item: @item ref +); + +@stmt = + @expr_stmt +| @item +| @let_stmt +; + +stmt_lists( + unique int id: @stmt_list +); + +#keyset[id, index] +stmt_list_attrs( + int id: @stmt_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +stmt_list_statements( + int id: @stmt_list ref, + int index: int ref, + int statement: @stmt ref +); + +#keyset[id] +stmt_list_tail_exprs( + int id: @stmt_list ref, + int tail_expr: @expr ref +); + +struct_expr_fields( + unique int id: @struct_expr_field +); + +#keyset[id, index] +struct_expr_field_attrs( + int id: @struct_expr_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +struct_expr_field_exprs( + int id: @struct_expr_field ref, + int expr: @expr ref +); + +#keyset[id] +struct_expr_field_identifiers( + int id: @struct_expr_field ref, + int identifier: @name_ref ref +); + +struct_expr_field_lists( + unique int id: @struct_expr_field_list +); + +#keyset[id, index] +struct_expr_field_list_attrs( + int id: @struct_expr_field_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +struct_expr_field_list_fields( + int id: @struct_expr_field_list ref, + int index: int ref, + int field: @struct_expr_field ref +); + +#keyset[id] +struct_expr_field_list_spreads( + int id: @struct_expr_field_list ref, + int spread: @expr ref +); + +struct_fields( + unique int id: @struct_field +); + +#keyset[id, index] +struct_field_attrs( + int id: @struct_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +struct_field_defaults( + int id: @struct_field ref, + int default: @expr ref +); + +#keyset[id] +struct_field_is_unsafe( + int id: @struct_field ref +); + +#keyset[id] +struct_field_names( + int id: @struct_field ref, + int name: @name ref +); + +#keyset[id] +struct_field_type_reprs( + int id: @struct_field ref, + int type_repr: @type_repr ref +); + +#keyset[id] +struct_field_visibilities( + int id: @struct_field ref, + int visibility: @visibility ref +); + +struct_pat_fields( + unique int id: @struct_pat_field +); + +#keyset[id, index] +struct_pat_field_attrs( + int id: @struct_pat_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +struct_pat_field_identifiers( + int id: @struct_pat_field ref, + int identifier: @name_ref ref +); + +#keyset[id] +struct_pat_field_pats( + int id: @struct_pat_field ref, + int pat: @pat ref +); + +struct_pat_field_lists( + unique int id: @struct_pat_field_list +); + +#keyset[id, index] +struct_pat_field_list_fields( + int id: @struct_pat_field_list ref, + int index: int ref, + int field: @struct_pat_field ref +); + +#keyset[id] +struct_pat_field_list_rest_pats( + int id: @struct_pat_field_list ref, + int rest_pat: @rest_pat ref +); + +@token = + @comment +; + +token_trees( + unique int id: @token_tree +); + +tuple_fields( + unique int id: @tuple_field +); + +#keyset[id, index] +tuple_field_attrs( + int id: @tuple_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +tuple_field_type_reprs( + int id: @tuple_field ref, + int type_repr: @type_repr ref +); + +#keyset[id] +tuple_field_visibilities( + int id: @tuple_field ref, + int visibility: @visibility ref +); + +type_bounds( + unique int id: @type_bound +); + +#keyset[id] +type_bound_for_binders( + int id: @type_bound ref, + int for_binder: @for_binder ref +); + +#keyset[id] +type_bound_is_async( + int id: @type_bound ref +); + +#keyset[id] +type_bound_is_const( + int id: @type_bound ref +); + +#keyset[id] +type_bound_lifetimes( + int id: @type_bound ref, + int lifetime: @lifetime ref +); + +#keyset[id] +type_bound_type_reprs( + int id: @type_bound ref, + int type_repr: @type_repr ref +); + +#keyset[id] +type_bound_use_bound_generic_args( + int id: @type_bound ref, + int use_bound_generic_args: @use_bound_generic_args ref +); + +type_bound_lists( + unique int id: @type_bound_list +); + +#keyset[id, index] +type_bound_list_bounds( + int id: @type_bound_list ref, + int index: int ref, + int bound: @type_bound ref +); + +@type_repr = + @array_type_repr +| @dyn_trait_type_repr +| @fn_ptr_type_repr +| @for_type_repr +| @impl_trait_type_repr +| @infer_type_repr +| @macro_type_repr +| @never_type_repr +| @paren_type_repr +| @path_type_repr +| @ptr_type_repr +| @ref_type_repr +| @slice_type_repr +| @tuple_type_repr +; + +@use_bound_generic_arg = + @lifetime +| @name_ref +; + +use_bound_generic_args( + unique int id: @use_bound_generic_args +); + +#keyset[id, index] +use_bound_generic_args_use_bound_generic_args( + int id: @use_bound_generic_args ref, + int index: int ref, + int use_bound_generic_arg: @use_bound_generic_arg ref +); + +use_trees( + unique int id: @use_tree +); + +#keyset[id] +use_tree_is_glob( + int id: @use_tree ref +); + +#keyset[id] +use_tree_paths( + int id: @use_tree ref, + int path: @path ref +); + +#keyset[id] +use_tree_renames( + int id: @use_tree ref, + int rename: @rename ref +); + +#keyset[id] +use_tree_use_tree_lists( + int id: @use_tree ref, + int use_tree_list: @use_tree_list ref +); + +use_tree_lists( + unique int id: @use_tree_list +); + +#keyset[id, index] +use_tree_list_use_trees( + int id: @use_tree_list ref, + int index: int ref, + int use_tree: @use_tree ref +); + +variant_lists( + unique int id: @variant_list +); + +#keyset[id, index] +variant_list_variants( + int id: @variant_list ref, + int index: int ref, + int variant: @variant ref +); + +visibilities( + unique int id: @visibility +); + +#keyset[id] +visibility_paths( + int id: @visibility ref, + int path: @path ref +); + +where_clauses( + unique int id: @where_clause +); + +#keyset[id, index] +where_clause_predicates( + int id: @where_clause ref, + int index: int ref, + int predicate: @where_pred ref +); + +where_preds( + unique int id: @where_pred +); + +#keyset[id] +where_pred_for_binders( + int id: @where_pred ref, + int for_binder: @for_binder ref +); + +#keyset[id] +where_pred_lifetimes( + int id: @where_pred ref, + int lifetime: @lifetime ref +); + +#keyset[id] +where_pred_type_reprs( + int id: @where_pred ref, + int type_repr: @type_repr ref +); + +#keyset[id] +where_pred_type_bound_lists( + int id: @where_pred ref, + int type_bound_list: @type_bound_list ref +); + +array_expr_internals( + unique int id: @array_expr_internal +); + +#keyset[id, index] +array_expr_internal_attrs( + int id: @array_expr_internal ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +array_expr_internal_exprs( + int id: @array_expr_internal ref, + int index: int ref, + int expr: @expr ref +); + +#keyset[id] +array_expr_internal_is_semicolon( + int id: @array_expr_internal ref +); + +array_type_reprs( + unique int id: @array_type_repr +); + +#keyset[id] +array_type_repr_const_args( + int id: @array_type_repr ref, + int const_arg: @const_arg ref +); + +#keyset[id] +array_type_repr_element_type_reprs( + int id: @array_type_repr ref, + int element_type_repr: @type_repr ref +); + +asm_clobber_abis( + unique int id: @asm_clobber_abi +); + +asm_consts( + unique int id: @asm_const +); + +#keyset[id] +asm_const_exprs( + int id: @asm_const ref, + int expr: @expr ref +); + +#keyset[id] +asm_const_is_const( + int id: @asm_const ref +); + +asm_labels( + unique int id: @asm_label +); + +#keyset[id] +asm_label_block_exprs( + int id: @asm_label ref, + int block_expr: @block_expr ref +); + +asm_operand_nameds( + unique int id: @asm_operand_named +); + +#keyset[id] +asm_operand_named_asm_operands( + int id: @asm_operand_named ref, + int asm_operand: @asm_operand ref +); + +#keyset[id] +asm_operand_named_names( + int id: @asm_operand_named ref, + int name: @name ref +); + +asm_options_lists( + unique int id: @asm_options_list +); + +#keyset[id, index] +asm_options_list_asm_options( + int id: @asm_options_list ref, + int index: int ref, + int asm_option: @asm_option ref +); + +asm_reg_operands( + unique int id: @asm_reg_operand +); + +#keyset[id] +asm_reg_operand_asm_dir_specs( + int id: @asm_reg_operand ref, + int asm_dir_spec: @asm_dir_spec ref +); + +#keyset[id] +asm_reg_operand_asm_operand_exprs( + int id: @asm_reg_operand ref, + int asm_operand_expr: @asm_operand_expr ref +); + +#keyset[id] +asm_reg_operand_asm_reg_specs( + int id: @asm_reg_operand ref, + int asm_reg_spec: @asm_reg_spec ref +); + +asm_syms( + unique int id: @asm_sym +); + +#keyset[id] +asm_sym_paths( + int id: @asm_sym ref, + int path: @path ref +); + +assoc_type_args( + unique int id: @assoc_type_arg +); + +#keyset[id] +assoc_type_arg_const_args( + int id: @assoc_type_arg ref, + int const_arg: @const_arg ref +); + +#keyset[id] +assoc_type_arg_generic_arg_lists( + int id: @assoc_type_arg ref, + int generic_arg_list: @generic_arg_list ref +); + +#keyset[id] +assoc_type_arg_identifiers( + int id: @assoc_type_arg ref, + int identifier: @name_ref ref +); + +#keyset[id] +assoc_type_arg_param_lists( + int id: @assoc_type_arg ref, + int param_list: @param_list ref +); + +#keyset[id] +assoc_type_arg_ret_types( + int id: @assoc_type_arg ref, + int ret_type: @ret_type_repr ref +); + +#keyset[id] +assoc_type_arg_return_type_syntaxes( + int id: @assoc_type_arg ref, + int return_type_syntax: @return_type_syntax ref +); + +#keyset[id] +assoc_type_arg_type_reprs( + int id: @assoc_type_arg ref, + int type_repr: @type_repr ref +); + +#keyset[id] +assoc_type_arg_type_bound_lists( + int id: @assoc_type_arg ref, + int type_bound_list: @type_bound_list ref +); + +await_exprs( + unique int id: @await_expr +); + +#keyset[id, index] +await_expr_attrs( + int id: @await_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +await_expr_exprs( + int id: @await_expr ref, + int expr: @expr ref +); + +become_exprs( + unique int id: @become_expr +); + +#keyset[id, index] +become_expr_attrs( + int id: @become_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +become_expr_exprs( + int id: @become_expr ref, + int expr: @expr ref +); + +binary_exprs( + unique int id: @binary_expr +); + +#keyset[id, index] +binary_expr_attrs( + int id: @binary_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +binary_expr_lhs( + int id: @binary_expr ref, + int lhs: @expr ref +); + +#keyset[id] +binary_expr_operator_names( + int id: @binary_expr ref, + string operator_name: string ref +); + +#keyset[id] +binary_expr_rhs( + int id: @binary_expr ref, + int rhs: @expr ref +); + +box_pats( + unique int id: @box_pat +); + +#keyset[id] +box_pat_pats( + int id: @box_pat ref, + int pat: @pat ref +); + +break_exprs( + unique int id: @break_expr +); + +#keyset[id, index] +break_expr_attrs( + int id: @break_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +break_expr_exprs( + int id: @break_expr ref, + int expr: @expr ref +); + +#keyset[id] +break_expr_lifetimes( + int id: @break_expr ref, + int lifetime: @lifetime ref +); + +call_exprs( + unique int id: @call_expr +); + +#keyset[id] +call_expr_arg_lists( + int id: @call_expr ref, + int arg_list: @arg_list ref +); + +#keyset[id, index] +call_expr_attrs( + int id: @call_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +call_expr_functions( + int id: @call_expr ref, + int function: @expr ref +); + +cast_exprs( + unique int id: @cast_expr +); + +#keyset[id, index] +cast_expr_attrs( + int id: @cast_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +cast_expr_exprs( + int id: @cast_expr ref, + int expr: @expr ref +); + +#keyset[id] +cast_expr_type_reprs( + int id: @cast_expr ref, + int type_repr: @type_repr ref +); + +closure_exprs( + unique int id: @closure_expr +); + +#keyset[id] +closure_expr_closure_bodies( + int id: @closure_expr ref, + int closure_body: @expr ref +); + +#keyset[id] +closure_expr_for_binders( + int id: @closure_expr ref, + int for_binder: @for_binder ref +); + +#keyset[id] +closure_expr_is_async( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_const( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_gen( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_move( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_static( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_ret_types( + int id: @closure_expr ref, + int ret_type: @ret_type_repr ref +); + +comments( + unique int id: @comment, + int parent: @ast_node ref, + string text: string ref +); + +const_args( + unique int id: @const_arg +); + +#keyset[id] +const_arg_exprs( + int id: @const_arg ref, + int expr: @expr ref +); + +const_block_pats( + unique int id: @const_block_pat +); + +#keyset[id] +const_block_pat_block_exprs( + int id: @const_block_pat ref, + int block_expr: @block_expr ref +); + +#keyset[id] +const_block_pat_is_const( + int id: @const_block_pat ref +); + +const_params( + unique int id: @const_param +); + +#keyset[id, index] +const_param_attrs( + int id: @const_param ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +const_param_default_vals( + int id: @const_param ref, + int default_val: @const_arg ref +); + +#keyset[id] +const_param_is_const( + int id: @const_param ref +); + +#keyset[id] +const_param_names( + int id: @const_param ref, + int name: @name ref +); + +#keyset[id] +const_param_type_reprs( + int id: @const_param ref, + int type_repr: @type_repr ref +); + +continue_exprs( + unique int id: @continue_expr +); + +#keyset[id, index] +continue_expr_attrs( + int id: @continue_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +continue_expr_lifetimes( + int id: @continue_expr ref, + int lifetime: @lifetime ref +); + +dyn_trait_type_reprs( + unique int id: @dyn_trait_type_repr +); + +#keyset[id] +dyn_trait_type_repr_type_bound_lists( + int id: @dyn_trait_type_repr ref, + int type_bound_list: @type_bound_list ref +); + +expr_stmts( + unique int id: @expr_stmt +); + +#keyset[id] +expr_stmt_exprs( + int id: @expr_stmt ref, + int expr: @expr ref +); + +field_exprs( + unique int id: @field_expr +); + +#keyset[id, index] +field_expr_attrs( + int id: @field_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +field_expr_containers( + int id: @field_expr ref, + int container: @expr ref +); + +#keyset[id] +field_expr_identifiers( + int id: @field_expr ref, + int identifier: @name_ref ref +); + +fn_ptr_type_reprs( + unique int id: @fn_ptr_type_repr +); + +#keyset[id] +fn_ptr_type_repr_abis( + int id: @fn_ptr_type_repr ref, + int abi: @abi ref +); + +#keyset[id] +fn_ptr_type_repr_is_async( + int id: @fn_ptr_type_repr ref +); + +#keyset[id] +fn_ptr_type_repr_is_const( + int id: @fn_ptr_type_repr ref +); + +#keyset[id] +fn_ptr_type_repr_is_unsafe( + int id: @fn_ptr_type_repr ref +); + +#keyset[id] +fn_ptr_type_repr_param_lists( + int id: @fn_ptr_type_repr ref, + int param_list: @param_list ref +); + +#keyset[id] +fn_ptr_type_repr_ret_types( + int id: @fn_ptr_type_repr ref, + int ret_type: @ret_type_repr ref +); + +for_type_reprs( + unique int id: @for_type_repr +); + +#keyset[id] +for_type_repr_for_binders( + int id: @for_type_repr ref, + int for_binder: @for_binder ref +); + +#keyset[id] +for_type_repr_type_reprs( + int id: @for_type_repr ref, + int type_repr: @type_repr ref +); + +format_args_exprs( + unique int id: @format_args_expr +); + +#keyset[id, index] +format_args_expr_args( + int id: @format_args_expr ref, + int index: int ref, + int arg: @format_args_arg ref +); + +#keyset[id, index] +format_args_expr_attrs( + int id: @format_args_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +format_args_expr_templates( + int id: @format_args_expr ref, + int template: @expr ref +); + +ident_pats( + unique int id: @ident_pat +); + +#keyset[id, index] +ident_pat_attrs( + int id: @ident_pat ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +ident_pat_is_mut( + int id: @ident_pat ref +); + +#keyset[id] +ident_pat_is_ref( + int id: @ident_pat ref +); + +#keyset[id] +ident_pat_names( + int id: @ident_pat ref, + int name: @name ref +); + +#keyset[id] +ident_pat_pats( + int id: @ident_pat ref, + int pat: @pat ref +); + +if_exprs( + unique int id: @if_expr +); + +#keyset[id, index] +if_expr_attrs( + int id: @if_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +if_expr_conditions( + int id: @if_expr ref, + int condition: @expr ref +); + +#keyset[id] +if_expr_elses( + int id: @if_expr ref, + int else: @expr ref +); + +#keyset[id] +if_expr_thens( + int id: @if_expr ref, + int then: @block_expr ref +); + +impl_trait_type_reprs( + unique int id: @impl_trait_type_repr +); + +#keyset[id] +impl_trait_type_repr_type_bound_lists( + int id: @impl_trait_type_repr ref, + int type_bound_list: @type_bound_list ref +); + +index_exprs( + unique int id: @index_expr +); + +#keyset[id, index] +index_expr_attrs( + int id: @index_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +index_expr_bases( + int id: @index_expr ref, + int base: @expr ref +); + +#keyset[id] +index_expr_indices( + int id: @index_expr ref, + int index: @expr ref +); + +infer_type_reprs( + unique int id: @infer_type_repr +); + +@item = + @asm_expr +| @assoc_item +| @extern_block +| @extern_crate +| @extern_item +| @impl +| @macro_def +| @macro_rules +| @module +| @trait +| @trait_alias +| @type_item +| @use +; + +#keyset[id] +item_attribute_macro_expansions( + int id: @item ref, + int attribute_macro_expansion: @macro_items ref +); + +@labelable_expr = + @block_expr +| @looping_expr +; + +#keyset[id] +labelable_expr_labels( + int id: @labelable_expr ref, + int label: @label ref +); + +let_exprs( + unique int id: @let_expr +); + +#keyset[id, index] +let_expr_attrs( + int id: @let_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +let_expr_scrutinees( + int id: @let_expr ref, + int scrutinee: @expr ref +); + +#keyset[id] +let_expr_pats( + int id: @let_expr ref, + int pat: @pat ref +); + +let_stmts( + unique int id: @let_stmt +); + +#keyset[id, index] +let_stmt_attrs( + int id: @let_stmt ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +let_stmt_initializers( + int id: @let_stmt ref, + int initializer: @expr ref +); + +#keyset[id] +let_stmt_let_elses( + int id: @let_stmt ref, + int let_else: @let_else ref +); + +#keyset[id] +let_stmt_pats( + int id: @let_stmt ref, + int pat: @pat ref +); + +#keyset[id] +let_stmt_type_reprs( + int id: @let_stmt ref, + int type_repr: @type_repr ref +); + +lifetimes( + unique int id: @lifetime +); + +#keyset[id] +lifetime_texts( + int id: @lifetime ref, + string text: string ref +); + +lifetime_args( + unique int id: @lifetime_arg +); + +#keyset[id] +lifetime_arg_lifetimes( + int id: @lifetime_arg ref, + int lifetime: @lifetime ref +); + +lifetime_params( + unique int id: @lifetime_param +); + +#keyset[id, index] +lifetime_param_attrs( + int id: @lifetime_param ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +lifetime_param_lifetimes( + int id: @lifetime_param ref, + int lifetime: @lifetime ref +); + +#keyset[id] +lifetime_param_type_bound_lists( + int id: @lifetime_param ref, + int type_bound_list: @type_bound_list ref +); + +literal_exprs( + unique int id: @literal_expr +); + +#keyset[id, index] +literal_expr_attrs( + int id: @literal_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +literal_expr_text_values( + int id: @literal_expr ref, + string text_value: string ref +); + +literal_pats( + unique int id: @literal_pat +); + +#keyset[id] +literal_pat_literals( + int id: @literal_pat ref, + int literal: @literal_expr ref +); + +macro_exprs( + unique int id: @macro_expr +); + +#keyset[id] +macro_expr_macro_calls( + int id: @macro_expr ref, + int macro_call: @macro_call ref +); + +macro_pats( + unique int id: @macro_pat +); + +#keyset[id] +macro_pat_macro_calls( + int id: @macro_pat ref, + int macro_call: @macro_call ref +); + +macro_type_reprs( + unique int id: @macro_type_repr +); + +#keyset[id] +macro_type_repr_macro_calls( + int id: @macro_type_repr ref, + int macro_call: @macro_call ref +); + +match_exprs( + unique int id: @match_expr +); + +#keyset[id, index] +match_expr_attrs( + int id: @match_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +match_expr_scrutinees( + int id: @match_expr ref, + int scrutinee: @expr ref +); + +#keyset[id] +match_expr_match_arm_lists( + int id: @match_expr ref, + int match_arm_list: @match_arm_list ref +); + +method_call_exprs( + unique int id: @method_call_expr +); + +#keyset[id] +method_call_expr_arg_lists( + int id: @method_call_expr ref, + int arg_list: @arg_list ref +); + +#keyset[id, index] +method_call_expr_attrs( + int id: @method_call_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +method_call_expr_generic_arg_lists( + int id: @method_call_expr ref, + int generic_arg_list: @generic_arg_list ref +); + +#keyset[id] +method_call_expr_identifiers( + int id: @method_call_expr ref, + int identifier: @name_ref ref +); + +#keyset[id] +method_call_expr_receivers( + int id: @method_call_expr ref, + int receiver: @expr ref +); + +name_refs( + unique int id: @name_ref +); + +#keyset[id] +name_ref_texts( + int id: @name_ref ref, + string text: string ref +); + +never_type_reprs( + unique int id: @never_type_repr +); + +offset_of_exprs( + unique int id: @offset_of_expr +); + +#keyset[id, index] +offset_of_expr_attrs( + int id: @offset_of_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +offset_of_expr_fields( + int id: @offset_of_expr ref, + int index: int ref, + int field: @name_ref ref +); + +#keyset[id] +offset_of_expr_type_reprs( + int id: @offset_of_expr ref, + int type_repr: @type_repr ref +); + +or_pats( + unique int id: @or_pat +); + +#keyset[id, index] +or_pat_pats( + int id: @or_pat ref, + int index: int ref, + int pat: @pat ref +); + +params( + unique int id: @param +); + +#keyset[id] +param_pats( + int id: @param ref, + int pat: @pat ref +); + +paren_exprs( + unique int id: @paren_expr +); + +#keyset[id, index] +paren_expr_attrs( + int id: @paren_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +paren_expr_exprs( + int id: @paren_expr ref, + int expr: @expr ref +); + +paren_pats( + unique int id: @paren_pat +); + +#keyset[id] +paren_pat_pats( + int id: @paren_pat ref, + int pat: @pat ref +); + +paren_type_reprs( + unique int id: @paren_type_repr +); + +#keyset[id] +paren_type_repr_type_reprs( + int id: @paren_type_repr ref, + int type_repr: @type_repr ref +); + +@path_expr_base = + @path_expr +; + +path_pats( + unique int id: @path_pat +); + +path_type_reprs( + unique int id: @path_type_repr +); + +#keyset[id] +path_type_repr_paths( + int id: @path_type_repr ref, + int path: @path ref +); + +prefix_exprs( + unique int id: @prefix_expr +); + +#keyset[id, index] +prefix_expr_attrs( + int id: @prefix_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +prefix_expr_exprs( + int id: @prefix_expr ref, + int expr: @expr ref +); + +#keyset[id] +prefix_expr_operator_names( + int id: @prefix_expr ref, + string operator_name: string ref +); + +ptr_type_reprs( + unique int id: @ptr_type_repr +); + +#keyset[id] +ptr_type_repr_is_const( + int id: @ptr_type_repr ref +); + +#keyset[id] +ptr_type_repr_is_mut( + int id: @ptr_type_repr ref +); + +#keyset[id] +ptr_type_repr_type_reprs( + int id: @ptr_type_repr ref, + int type_repr: @type_repr ref +); + +range_exprs( + unique int id: @range_expr +); + +#keyset[id, index] +range_expr_attrs( + int id: @range_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +range_expr_ends( + int id: @range_expr ref, + int end: @expr ref +); + +#keyset[id] +range_expr_operator_names( + int id: @range_expr ref, + string operator_name: string ref +); + +#keyset[id] +range_expr_starts( + int id: @range_expr ref, + int start: @expr ref +); + +range_pats( + unique int id: @range_pat +); + +#keyset[id] +range_pat_ends( + int id: @range_pat ref, + int end: @pat ref +); + +#keyset[id] +range_pat_operator_names( + int id: @range_pat ref, + string operator_name: string ref +); + +#keyset[id] +range_pat_starts( + int id: @range_pat ref, + int start: @pat ref +); + +ref_exprs( + unique int id: @ref_expr +); + +#keyset[id, index] +ref_expr_attrs( + int id: @ref_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +ref_expr_exprs( + int id: @ref_expr ref, + int expr: @expr ref +); + +#keyset[id] +ref_expr_is_const( + int id: @ref_expr ref +); + +#keyset[id] +ref_expr_is_mut( + int id: @ref_expr ref +); + +#keyset[id] +ref_expr_is_raw( + int id: @ref_expr ref +); + +ref_pats( + unique int id: @ref_pat +); + +#keyset[id] +ref_pat_is_mut( + int id: @ref_pat ref +); + +#keyset[id] +ref_pat_pats( + int id: @ref_pat ref, + int pat: @pat ref +); + +ref_type_reprs( + unique int id: @ref_type_repr +); + +#keyset[id] +ref_type_repr_is_mut( + int id: @ref_type_repr ref +); + +#keyset[id] +ref_type_repr_lifetimes( + int id: @ref_type_repr ref, + int lifetime: @lifetime ref +); + +#keyset[id] +ref_type_repr_type_reprs( + int id: @ref_type_repr ref, + int type_repr: @type_repr ref +); + +rest_pats( + unique int id: @rest_pat +); + +#keyset[id, index] +rest_pat_attrs( + int id: @rest_pat ref, + int index: int ref, + int attr: @attr ref +); + +return_exprs( + unique int id: @return_expr +); + +#keyset[id, index] +return_expr_attrs( + int id: @return_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +return_expr_exprs( + int id: @return_expr ref, + int expr: @expr ref +); + +self_params( + unique int id: @self_param +); + +#keyset[id] +self_param_is_ref( + int id: @self_param ref +); + +#keyset[id] +self_param_is_mut( + int id: @self_param ref +); + +#keyset[id] +self_param_lifetimes( + int id: @self_param ref, + int lifetime: @lifetime ref +); + +#keyset[id] +self_param_names( + int id: @self_param ref, + int name: @name ref +); + +slice_pats( + unique int id: @slice_pat +); + +#keyset[id, index] +slice_pat_pats( + int id: @slice_pat ref, + int index: int ref, + int pat: @pat ref +); + +slice_type_reprs( + unique int id: @slice_type_repr +); + +#keyset[id] +slice_type_repr_type_reprs( + int id: @slice_type_repr ref, + int type_repr: @type_repr ref +); + +struct_exprs( + unique int id: @struct_expr +); + +#keyset[id] +struct_expr_struct_expr_field_lists( + int id: @struct_expr ref, + int struct_expr_field_list: @struct_expr_field_list ref +); + +struct_field_lists( + unique int id: @struct_field_list +); + +#keyset[id, index] +struct_field_list_fields( + int id: @struct_field_list ref, + int index: int ref, + int field: @struct_field ref +); + +struct_pats( + unique int id: @struct_pat +); + +#keyset[id] +struct_pat_struct_pat_field_lists( + int id: @struct_pat ref, + int struct_pat_field_list: @struct_pat_field_list ref +); + +try_exprs( + unique int id: @try_expr +); + +#keyset[id, index] +try_expr_attrs( + int id: @try_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +try_expr_exprs( + int id: @try_expr ref, + int expr: @expr ref +); + +tuple_exprs( + unique int id: @tuple_expr +); + +#keyset[id, index] +tuple_expr_attrs( + int id: @tuple_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +tuple_expr_fields( + int id: @tuple_expr ref, + int index: int ref, + int field: @expr ref +); + +tuple_field_lists( + unique int id: @tuple_field_list +); + +#keyset[id, index] +tuple_field_list_fields( + int id: @tuple_field_list ref, + int index: int ref, + int field: @tuple_field ref +); + +tuple_pats( + unique int id: @tuple_pat +); + +#keyset[id, index] +tuple_pat_fields( + int id: @tuple_pat ref, + int index: int ref, + int field: @pat ref +); + +tuple_struct_pats( + unique int id: @tuple_struct_pat +); + +#keyset[id, index] +tuple_struct_pat_fields( + int id: @tuple_struct_pat ref, + int index: int ref, + int field: @pat ref +); + +tuple_type_reprs( + unique int id: @tuple_type_repr +); + +#keyset[id, index] +tuple_type_repr_fields( + int id: @tuple_type_repr ref, + int index: int ref, + int field: @type_repr ref +); + +type_args( + unique int id: @type_arg +); + +#keyset[id] +type_arg_type_reprs( + int id: @type_arg ref, + int type_repr: @type_repr ref +); + +type_params( + unique int id: @type_param +); + +#keyset[id, index] +type_param_attrs( + int id: @type_param ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +type_param_default_types( + int id: @type_param ref, + int default_type: @type_repr ref +); + +#keyset[id] +type_param_names( + int id: @type_param ref, + int name: @name ref +); + +#keyset[id] +type_param_type_bound_lists( + int id: @type_param ref, + int type_bound_list: @type_bound_list ref +); + +underscore_exprs( + unique int id: @underscore_expr +); + +#keyset[id, index] +underscore_expr_attrs( + int id: @underscore_expr ref, + int index: int ref, + int attr: @attr ref +); + +variants( + unique int id: @variant +); + +#keyset[id, index] +variant_attrs( + int id: @variant ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +variant_discriminants( + int id: @variant ref, + int discriminant: @expr ref +); + +#keyset[id] +variant_field_lists( + int id: @variant ref, + int field_list: @field_list ref +); + +#keyset[id] +variant_names( + int id: @variant ref, + int name: @name ref +); + +#keyset[id] +variant_visibilities( + int id: @variant ref, + int visibility: @visibility ref +); + +wildcard_pats( + unique int id: @wildcard_pat +); + +yeet_exprs( + unique int id: @yeet_expr +); + +#keyset[id, index] +yeet_expr_attrs( + int id: @yeet_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +yeet_expr_exprs( + int id: @yeet_expr ref, + int expr: @expr ref +); + +yield_exprs( + unique int id: @yield_expr +); + +#keyset[id, index] +yield_expr_attrs( + int id: @yield_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +yield_expr_exprs( + int id: @yield_expr ref, + int expr: @expr ref +); + +asm_exprs( + unique int id: @asm_expr +); + +#keyset[id, index] +asm_expr_asm_pieces( + int id: @asm_expr ref, + int index: int ref, + int asm_piece: @asm_piece ref +); + +#keyset[id, index] +asm_expr_attrs( + int id: @asm_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +asm_expr_templates( + int id: @asm_expr ref, + int index: int ref, + int template: @expr ref +); + +@assoc_item = + @const +| @function +| @macro_call +| @type_alias +; + +block_exprs( + unique int id: @block_expr +); + +#keyset[id, index] +block_expr_attrs( + int id: @block_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +block_expr_is_async( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_const( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_gen( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_move( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_try( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_unsafe( + int id: @block_expr ref +); + +#keyset[id] +block_expr_stmt_lists( + int id: @block_expr ref, + int stmt_list: @stmt_list ref +); + +extern_blocks( + unique int id: @extern_block +); + +#keyset[id] +extern_block_abis( + int id: @extern_block ref, + int abi: @abi ref +); + +#keyset[id, index] +extern_block_attrs( + int id: @extern_block ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +extern_block_extern_item_lists( + int id: @extern_block ref, + int extern_item_list: @extern_item_list ref +); + +#keyset[id] +extern_block_is_unsafe( + int id: @extern_block ref +); + +extern_crates( + unique int id: @extern_crate +); + +#keyset[id, index] +extern_crate_attrs( + int id: @extern_crate ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +extern_crate_identifiers( + int id: @extern_crate ref, + int identifier: @name_ref ref +); + +#keyset[id] +extern_crate_renames( + int id: @extern_crate ref, + int rename: @rename ref +); + +#keyset[id] +extern_crate_visibilities( + int id: @extern_crate ref, + int visibility: @visibility ref +); + +@extern_item = + @function +| @macro_call +| @static +| @type_alias +; + +impls( + unique int id: @impl +); + +#keyset[id] +impl_assoc_item_lists( + int id: @impl ref, + int assoc_item_list: @assoc_item_list ref +); + +#keyset[id, index] +impl_attrs( + int id: @impl ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +impl_generic_param_lists( + int id: @impl ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +impl_is_const( + int id: @impl ref +); + +#keyset[id] +impl_is_default( + int id: @impl ref +); + +#keyset[id] +impl_is_unsafe( + int id: @impl ref +); + +#keyset[id] +impl_self_ties( + int id: @impl ref, + int self_ty: @type_repr ref +); + +#keyset[id] +impl_traits( + int id: @impl ref, + int trait: @type_repr ref +); + +#keyset[id] +impl_visibilities( + int id: @impl ref, + int visibility: @visibility ref +); + +#keyset[id] +impl_where_clauses( + int id: @impl ref, + int where_clause: @where_clause ref +); + +@looping_expr = + @for_expr +| @loop_expr +| @while_expr +; + +#keyset[id] +looping_expr_loop_bodies( + int id: @looping_expr ref, + int loop_body: @block_expr ref +); + +macro_defs( + unique int id: @macro_def +); + +#keyset[id] +macro_def_args( + int id: @macro_def ref, + int args: @token_tree ref +); + +#keyset[id, index] +macro_def_attrs( + int id: @macro_def ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +macro_def_bodies( + int id: @macro_def ref, + int body: @token_tree ref +); + +#keyset[id] +macro_def_names( + int id: @macro_def ref, + int name: @name ref +); + +#keyset[id] +macro_def_visibilities( + int id: @macro_def ref, + int visibility: @visibility ref +); + +macro_rules( + unique int id: @macro_rules +); + +#keyset[id, index] +macro_rules_attrs( + int id: @macro_rules ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +macro_rules_names( + int id: @macro_rules ref, + int name: @name ref +); + +#keyset[id] +macro_rules_token_trees( + int id: @macro_rules ref, + int token_tree: @token_tree ref +); + +#keyset[id] +macro_rules_visibilities( + int id: @macro_rules ref, + int visibility: @visibility ref +); + +modules( + unique int id: @module +); + +#keyset[id, index] +module_attrs( + int id: @module ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +module_item_lists( + int id: @module ref, + int item_list: @item_list ref +); + +#keyset[id] +module_names( + int id: @module ref, + int name: @name ref +); + +#keyset[id] +module_visibilities( + int id: @module ref, + int visibility: @visibility ref +); + +path_exprs( + unique int id: @path_expr +); + +#keyset[id, index] +path_expr_attrs( + int id: @path_expr ref, + int index: int ref, + int attr: @attr ref +); + +traits( + unique int id: @trait +); + +#keyset[id] +trait_assoc_item_lists( + int id: @trait ref, + int assoc_item_list: @assoc_item_list ref +); + +#keyset[id, index] +trait_attrs( + int id: @trait ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +trait_generic_param_lists( + int id: @trait ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +trait_is_auto( + int id: @trait ref +); + +#keyset[id] +trait_is_unsafe( + int id: @trait ref +); + +#keyset[id] +trait_names( + int id: @trait ref, + int name: @name ref +); + +#keyset[id] +trait_type_bound_lists( + int id: @trait ref, + int type_bound_list: @type_bound_list ref +); + +#keyset[id] +trait_visibilities( + int id: @trait ref, + int visibility: @visibility ref +); + +#keyset[id] +trait_where_clauses( + int id: @trait ref, + int where_clause: @where_clause ref +); + +trait_aliases( + unique int id: @trait_alias +); + +#keyset[id, index] +trait_alias_attrs( + int id: @trait_alias ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +trait_alias_generic_param_lists( + int id: @trait_alias ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +trait_alias_names( + int id: @trait_alias ref, + int name: @name ref +); + +#keyset[id] +trait_alias_type_bound_lists( + int id: @trait_alias ref, + int type_bound_list: @type_bound_list ref +); + +#keyset[id] +trait_alias_visibilities( + int id: @trait_alias ref, + int visibility: @visibility ref +); + +#keyset[id] +trait_alias_where_clauses( + int id: @trait_alias ref, + int where_clause: @where_clause ref +); + +@type_item = + @enum +| @struct +| @union +; + +#keyset[id, index] +type_item_derive_macro_expansions( + int id: @type_item ref, + int index: int ref, + int derive_macro_expansion: @macro_items ref +); + +#keyset[id, index] +type_item_attrs( + int id: @type_item ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +type_item_generic_param_lists( + int id: @type_item ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +type_item_names( + int id: @type_item ref, + int name: @name ref +); + +#keyset[id] +type_item_visibilities( + int id: @type_item ref, + int visibility: @visibility ref +); + +#keyset[id] +type_item_where_clauses( + int id: @type_item ref, + int where_clause: @where_clause ref +); + +uses( + unique int id: @use +); + +#keyset[id, index] +use_attrs( + int id: @use ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +use_use_trees( + int id: @use ref, + int use_tree: @use_tree ref +); + +#keyset[id] +use_visibilities( + int id: @use ref, + int visibility: @visibility ref +); + +consts( + unique int id: @const +); + +#keyset[id, index] +const_attrs( + int id: @const ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +const_bodies( + int id: @const ref, + int body: @expr ref +); + +#keyset[id] +const_generic_param_lists( + int id: @const ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +const_is_const( + int id: @const ref +); + +#keyset[id] +const_is_default( + int id: @const ref +); + +#keyset[id] +const_names( + int id: @const ref, + int name: @name ref +); + +#keyset[id] +const_type_reprs( + int id: @const ref, + int type_repr: @type_repr ref +); + +#keyset[id] +const_visibilities( + int id: @const ref, + int visibility: @visibility ref +); + +#keyset[id] +const_where_clauses( + int id: @const ref, + int where_clause: @where_clause ref +); + +#keyset[id] +const_has_implementation( + int id: @const ref +); + +enums( + unique int id: @enum +); + +#keyset[id] +enum_variant_lists( + int id: @enum ref, + int variant_list: @variant_list ref +); + +for_exprs( + unique int id: @for_expr +); + +#keyset[id, index] +for_expr_attrs( + int id: @for_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +for_expr_iterables( + int id: @for_expr ref, + int iterable: @expr ref +); + +#keyset[id] +for_expr_pats( + int id: @for_expr ref, + int pat: @pat ref +); + +functions( + unique int id: @function +); + +#keyset[id] +function_abis( + int id: @function ref, + int abi: @abi ref +); + +#keyset[id] +function_function_bodies( + int id: @function ref, + int function_body: @block_expr ref +); + +#keyset[id] +function_generic_param_lists( + int id: @function ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +function_is_async( + int id: @function ref +); + +#keyset[id] +function_is_const( + int id: @function ref +); + +#keyset[id] +function_is_default( + int id: @function ref +); + +#keyset[id] +function_is_gen( + int id: @function ref +); + +#keyset[id] +function_is_unsafe( + int id: @function ref +); + +#keyset[id] +function_names( + int id: @function ref, + int name: @name ref +); + +#keyset[id] +function_ret_types( + int id: @function ref, + int ret_type: @ret_type_repr ref +); + +#keyset[id] +function_visibilities( + int id: @function ref, + int visibility: @visibility ref +); + +#keyset[id] +function_where_clauses( + int id: @function ref, + int where_clause: @where_clause ref +); + +#keyset[id] +function_has_implementation( + int id: @function ref +); + +loop_exprs( + unique int id: @loop_expr +); + +#keyset[id, index] +loop_expr_attrs( + int id: @loop_expr ref, + int index: int ref, + int attr: @attr ref +); + +macro_calls( + unique int id: @macro_call +); + +#keyset[id, index] +macro_call_attrs( + int id: @macro_call ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +macro_call_paths( + int id: @macro_call ref, + int path: @path ref +); + +#keyset[id] +macro_call_token_trees( + int id: @macro_call ref, + int token_tree: @token_tree ref +); + +#keyset[id] +macro_call_macro_call_expansions( + int id: @macro_call ref, + int macro_call_expansion: @ast_node ref +); + +statics( + unique int id: @static +); + +#keyset[id, index] +static_attrs( + int id: @static ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +static_bodies( + int id: @static ref, + int body: @expr ref +); + +#keyset[id] +static_is_mut( + int id: @static ref +); + +#keyset[id] +static_is_static( + int id: @static ref +); + +#keyset[id] +static_is_unsafe( + int id: @static ref +); + +#keyset[id] +static_names( + int id: @static ref, + int name: @name ref +); + +#keyset[id] +static_type_reprs( + int id: @static ref, + int type_repr: @type_repr ref +); + +#keyset[id] +static_visibilities( + int id: @static ref, + int visibility: @visibility ref +); + +structs( + unique int id: @struct +); + +#keyset[id] +struct_field_lists_( + int id: @struct ref, + int field_list: @field_list ref +); + +type_aliases( + unique int id: @type_alias +); + +#keyset[id, index] +type_alias_attrs( + int id: @type_alias ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +type_alias_generic_param_lists( + int id: @type_alias ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +type_alias_is_default( + int id: @type_alias ref +); + +#keyset[id] +type_alias_names( + int id: @type_alias ref, + int name: @name ref +); + +#keyset[id] +type_alias_type_reprs( + int id: @type_alias ref, + int type_repr: @type_repr ref +); + +#keyset[id] +type_alias_type_bound_lists( + int id: @type_alias ref, + int type_bound_list: @type_bound_list ref +); + +#keyset[id] +type_alias_visibilities( + int id: @type_alias ref, + int visibility: @visibility ref +); + +#keyset[id] +type_alias_where_clauses( + int id: @type_alias ref, + int where_clause: @where_clause ref +); + +unions( + unique int id: @union +); + +#keyset[id] +union_struct_field_lists( + int id: @union ref, + int struct_field_list: @struct_field_list ref +); + +while_exprs( + unique int id: @while_expr +); + +#keyset[id, index] +while_expr_attrs( + int id: @while_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +while_expr_conditions( + int id: @while_expr ref, + int condition: @expr ref +); diff --git a/rust/downgrades/66a489863649185f4a9770f894505803059a1312/semmlecode.dbscheme b/rust/downgrades/66a489863649185f4a9770f894505803059a1312/semmlecode.dbscheme new file mode 100644 index 000000000000..90861289dd4c --- /dev/null +++ b/rust/downgrades/66a489863649185f4a9770f894505803059a1312/semmlecode.dbscheme @@ -0,0 +1,3544 @@ +// generated by codegen, do not edit + +// from ../shared/tree-sitter-extractor/src/generator/prefix.dbscheme +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Empty location -*/ + +empty_location( + int location: @location_default ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- Diagnostic messages: severity -*/ + +case @diagnostic.severity of + 10 = @diagnostic_debug +| 20 = @diagnostic_info +| 30 = @diagnostic_warning +| 40 = @diagnostic_error +; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Database metadata -*/ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +overlayChangedFiles( + string path: string ref +); + + +// from prefix.dbscheme +#keyset[id] +locatable_locations( + int id: @locatable ref, + int location: @location_default ref +); + + +// from schema + +@element = + @extractor_step +| @locatable +| @named_crate +| @unextracted +; + +extractor_steps( + unique int id: @extractor_step, + string action: string ref, + int duration_ms: int ref +); + +#keyset[id] +extractor_step_files( + int id: @extractor_step ref, + int file: @file ref +); + +@locatable = + @ast_node +| @crate +; + +named_crates( + unique int id: @named_crate, + string name: string ref, + int crate: @crate ref +); + +@unextracted = + @missing +| @unimplemented +; + +@ast_node = + @abi +| @addressable +| @arg_list +| @asm_dir_spec +| @asm_operand +| @asm_operand_expr +| @asm_option +| @asm_piece +| @asm_reg_spec +| @assoc_item_list +| @attr +| @callable +| @expr +| @extern_item_list +| @field_list +| @for_binder +| @format_args_arg +| @generic_arg +| @generic_arg_list +| @generic_param +| @generic_param_list +| @item_list +| @label +| @let_else +| @macro_items +| @match_arm +| @match_arm_list +| @match_guard +| @meta +| @name +| @param_base +| @param_list +| @parenthesized_arg_list +| @pat +| @path +| @path_ast_node +| @path_segment +| @rename +| @ret_type_repr +| @return_type_syntax +| @source_file +| @stmt +| @stmt_list +| @struct_expr_field +| @struct_expr_field_list +| @struct_field +| @struct_pat_field +| @struct_pat_field_list +| @token +| @token_tree +| @tuple_field +| @type_bound +| @type_bound_list +| @type_repr +| @use_bound_generic_arg +| @use_bound_generic_args +| @use_tree +| @use_tree_list +| @variant_list +| @visibility +| @where_clause +| @where_pred +; + +crates( + unique int id: @crate +); + +#keyset[id] +crate_names( + int id: @crate ref, + string name: string ref +); + +#keyset[id] +crate_versions( + int id: @crate ref, + string version: string ref +); + +#keyset[id, index] +crate_cfg_options( + int id: @crate ref, + int index: int ref, + string cfg_option: string ref +); + +#keyset[id, index] +crate_named_dependencies( + int id: @crate ref, + int index: int ref, + int named_dependency: @named_crate ref +); + +missings( + unique int id: @missing +); + +unimplementeds( + unique int id: @unimplemented +); + +abis( + unique int id: @abi +); + +#keyset[id] +abi_abi_strings( + int id: @abi ref, + string abi_string: string ref +); + +@addressable = + @item +| @variant +; + +arg_lists( + unique int id: @arg_list +); + +#keyset[id, index] +arg_list_args( + int id: @arg_list ref, + int index: int ref, + int arg: @expr ref +); + +asm_dir_specs( + unique int id: @asm_dir_spec +); + +@asm_operand = + @asm_const +| @asm_label +| @asm_reg_operand +| @asm_sym +; + +asm_operand_exprs( + unique int id: @asm_operand_expr +); + +#keyset[id] +asm_operand_expr_in_exprs( + int id: @asm_operand_expr ref, + int in_expr: @expr ref +); + +#keyset[id] +asm_operand_expr_out_exprs( + int id: @asm_operand_expr ref, + int out_expr: @expr ref +); + +asm_options( + unique int id: @asm_option +); + +#keyset[id] +asm_option_is_raw( + int id: @asm_option ref +); + +@asm_piece = + @asm_clobber_abi +| @asm_operand_named +| @asm_options_list +; + +asm_reg_specs( + unique int id: @asm_reg_spec +); + +#keyset[id] +asm_reg_spec_identifiers( + int id: @asm_reg_spec ref, + int identifier: @name_ref ref +); + +assoc_item_lists( + unique int id: @assoc_item_list +); + +#keyset[id, index] +assoc_item_list_assoc_items( + int id: @assoc_item_list ref, + int index: int ref, + int assoc_item: @assoc_item ref +); + +#keyset[id, index] +assoc_item_list_attrs( + int id: @assoc_item_list ref, + int index: int ref, + int attr: @attr ref +); + +attrs( + unique int id: @attr +); + +#keyset[id] +attr_meta( + int id: @attr ref, + int meta: @meta ref +); + +@callable = + @closure_expr +| @function +; + +#keyset[id] +callable_param_lists( + int id: @callable ref, + int param_list: @param_list ref +); + +#keyset[id, index] +callable_attrs( + int id: @callable ref, + int index: int ref, + int attr: @attr ref +); + +@expr = + @array_expr_internal +| @asm_expr +| @await_expr +| @become_expr +| @binary_expr +| @break_expr +| @call_expr +| @cast_expr +| @closure_expr +| @continue_expr +| @field_expr +| @format_args_expr +| @if_expr +| @index_expr +| @labelable_expr +| @let_expr +| @literal_expr +| @macro_expr +| @match_expr +| @method_call_expr +| @offset_of_expr +| @paren_expr +| @path_expr_base +| @prefix_expr +| @range_expr +| @ref_expr +| @return_expr +| @struct_expr +| @try_expr +| @tuple_expr +| @underscore_expr +| @yeet_expr +| @yield_expr +; + +extern_item_lists( + unique int id: @extern_item_list +); + +#keyset[id, index] +extern_item_list_attrs( + int id: @extern_item_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +extern_item_list_extern_items( + int id: @extern_item_list ref, + int index: int ref, + int extern_item: @extern_item ref +); + +@field_list = + @struct_field_list +| @tuple_field_list +; + +for_binders( + unique int id: @for_binder +); + +#keyset[id] +for_binder_generic_param_lists( + int id: @for_binder ref, + int generic_param_list: @generic_param_list ref +); + +format_args_args( + unique int id: @format_args_arg +); + +#keyset[id] +format_args_arg_exprs( + int id: @format_args_arg ref, + int expr: @expr ref +); + +#keyset[id] +format_args_arg_names( + int id: @format_args_arg ref, + int name: @name ref +); + +@generic_arg = + @assoc_type_arg +| @const_arg +| @lifetime_arg +| @type_arg +; + +generic_arg_lists( + unique int id: @generic_arg_list +); + +#keyset[id, index] +generic_arg_list_generic_args( + int id: @generic_arg_list ref, + int index: int ref, + int generic_arg: @generic_arg ref +); + +@generic_param = + @const_param +| @lifetime_param +| @type_param +; + +generic_param_lists( + unique int id: @generic_param_list +); + +#keyset[id, index] +generic_param_list_generic_params( + int id: @generic_param_list ref, + int index: int ref, + int generic_param: @generic_param ref +); + +item_lists( + unique int id: @item_list +); + +#keyset[id, index] +item_list_attrs( + int id: @item_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +item_list_items( + int id: @item_list ref, + int index: int ref, + int item: @item ref +); + +labels( + unique int id: @label +); + +#keyset[id] +label_lifetimes( + int id: @label ref, + int lifetime: @lifetime ref +); + +let_elses( + unique int id: @let_else +); + +#keyset[id] +let_else_block_exprs( + int id: @let_else ref, + int block_expr: @block_expr ref +); + +macro_items( + unique int id: @macro_items +); + +#keyset[id, index] +macro_items_items( + int id: @macro_items ref, + int index: int ref, + int item: @item ref +); + +match_arms( + unique int id: @match_arm +); + +#keyset[id, index] +match_arm_attrs( + int id: @match_arm ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +match_arm_exprs( + int id: @match_arm ref, + int expr: @expr ref +); + +#keyset[id] +match_arm_guards( + int id: @match_arm ref, + int guard: @match_guard ref +); + +#keyset[id] +match_arm_pats( + int id: @match_arm ref, + int pat: @pat ref +); + +match_arm_lists( + unique int id: @match_arm_list +); + +#keyset[id, index] +match_arm_list_arms( + int id: @match_arm_list ref, + int index: int ref, + int arm: @match_arm ref +); + +#keyset[id, index] +match_arm_list_attrs( + int id: @match_arm_list ref, + int index: int ref, + int attr: @attr ref +); + +match_guards( + unique int id: @match_guard +); + +#keyset[id] +match_guard_conditions( + int id: @match_guard ref, + int condition: @expr ref +); + +meta( + unique int id: @meta +); + +#keyset[id] +meta_exprs( + int id: @meta ref, + int expr: @expr ref +); + +#keyset[id] +meta_is_unsafe( + int id: @meta ref +); + +#keyset[id] +meta_paths( + int id: @meta ref, + int path: @path ref +); + +#keyset[id] +meta_token_trees( + int id: @meta ref, + int token_tree: @token_tree ref +); + +names( + unique int id: @name +); + +#keyset[id] +name_texts( + int id: @name ref, + string text: string ref +); + +@param_base = + @param +| @self_param +; + +#keyset[id, index] +param_base_attrs( + int id: @param_base ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +param_base_type_reprs( + int id: @param_base ref, + int type_repr: @type_repr ref +); + +param_lists( + unique int id: @param_list +); + +#keyset[id, index] +param_list_params( + int id: @param_list ref, + int index: int ref, + int param: @param ref +); + +#keyset[id] +param_list_self_params( + int id: @param_list ref, + int self_param: @self_param ref +); + +parenthesized_arg_lists( + unique int id: @parenthesized_arg_list +); + +#keyset[id, index] +parenthesized_arg_list_type_args( + int id: @parenthesized_arg_list ref, + int index: int ref, + int type_arg: @type_arg ref +); + +@pat = + @box_pat +| @const_block_pat +| @ident_pat +| @literal_pat +| @macro_pat +| @or_pat +| @paren_pat +| @path_pat +| @range_pat +| @ref_pat +| @rest_pat +| @slice_pat +| @struct_pat +| @tuple_pat +| @tuple_struct_pat +| @wildcard_pat +; + +paths( + unique int id: @path +); + +#keyset[id] +path_qualifiers( + int id: @path ref, + int qualifier: @path ref +); + +#keyset[id] +path_segments_( + int id: @path ref, + int segment: @path_segment ref +); + +@path_ast_node = + @path_expr +| @path_pat +| @struct_expr +| @struct_pat +| @tuple_struct_pat +; + +#keyset[id] +path_ast_node_paths( + int id: @path_ast_node ref, + int path: @path ref +); + +path_segments( + unique int id: @path_segment +); + +#keyset[id] +path_segment_generic_arg_lists( + int id: @path_segment ref, + int generic_arg_list: @generic_arg_list ref +); + +#keyset[id] +path_segment_identifiers( + int id: @path_segment ref, + int identifier: @name_ref ref +); + +#keyset[id] +path_segment_parenthesized_arg_lists( + int id: @path_segment ref, + int parenthesized_arg_list: @parenthesized_arg_list ref +); + +#keyset[id] +path_segment_ret_types( + int id: @path_segment ref, + int ret_type: @ret_type_repr ref +); + +#keyset[id] +path_segment_return_type_syntaxes( + int id: @path_segment ref, + int return_type_syntax: @return_type_syntax ref +); + +#keyset[id] +path_segment_type_reprs( + int id: @path_segment ref, + int type_repr: @type_repr ref +); + +#keyset[id] +path_segment_trait_type_reprs( + int id: @path_segment ref, + int trait_type_repr: @path_type_repr ref +); + +renames( + unique int id: @rename +); + +#keyset[id] +rename_names( + int id: @rename ref, + int name: @name ref +); + +ret_type_reprs( + unique int id: @ret_type_repr +); + +#keyset[id] +ret_type_repr_type_reprs( + int id: @ret_type_repr ref, + int type_repr: @type_repr ref +); + +return_type_syntaxes( + unique int id: @return_type_syntax +); + +source_files( + unique int id: @source_file +); + +#keyset[id, index] +source_file_attrs( + int id: @source_file ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +source_file_items( + int id: @source_file ref, + int index: int ref, + int item: @item ref +); + +@stmt = + @expr_stmt +| @item +| @let_stmt +; + +stmt_lists( + unique int id: @stmt_list +); + +#keyset[id, index] +stmt_list_attrs( + int id: @stmt_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +stmt_list_statements( + int id: @stmt_list ref, + int index: int ref, + int statement: @stmt ref +); + +#keyset[id] +stmt_list_tail_exprs( + int id: @stmt_list ref, + int tail_expr: @expr ref +); + +struct_expr_fields( + unique int id: @struct_expr_field +); + +#keyset[id, index] +struct_expr_field_attrs( + int id: @struct_expr_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +struct_expr_field_exprs( + int id: @struct_expr_field ref, + int expr: @expr ref +); + +#keyset[id] +struct_expr_field_identifiers( + int id: @struct_expr_field ref, + int identifier: @name_ref ref +); + +struct_expr_field_lists( + unique int id: @struct_expr_field_list +); + +#keyset[id, index] +struct_expr_field_list_attrs( + int id: @struct_expr_field_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +struct_expr_field_list_fields( + int id: @struct_expr_field_list ref, + int index: int ref, + int field: @struct_expr_field ref +); + +#keyset[id] +struct_expr_field_list_spreads( + int id: @struct_expr_field_list ref, + int spread: @expr ref +); + +struct_fields( + unique int id: @struct_field +); + +#keyset[id, index] +struct_field_attrs( + int id: @struct_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +struct_field_defaults( + int id: @struct_field ref, + int default: @expr ref +); + +#keyset[id] +struct_field_is_unsafe( + int id: @struct_field ref +); + +#keyset[id] +struct_field_names( + int id: @struct_field ref, + int name: @name ref +); + +#keyset[id] +struct_field_type_reprs( + int id: @struct_field ref, + int type_repr: @type_repr ref +); + +#keyset[id] +struct_field_visibilities( + int id: @struct_field ref, + int visibility: @visibility ref +); + +struct_pat_fields( + unique int id: @struct_pat_field +); + +#keyset[id, index] +struct_pat_field_attrs( + int id: @struct_pat_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +struct_pat_field_identifiers( + int id: @struct_pat_field ref, + int identifier: @name_ref ref +); + +#keyset[id] +struct_pat_field_pats( + int id: @struct_pat_field ref, + int pat: @pat ref +); + +struct_pat_field_lists( + unique int id: @struct_pat_field_list +); + +#keyset[id, index] +struct_pat_field_list_fields( + int id: @struct_pat_field_list ref, + int index: int ref, + int field: @struct_pat_field ref +); + +#keyset[id] +struct_pat_field_list_rest_pats( + int id: @struct_pat_field_list ref, + int rest_pat: @rest_pat ref +); + +@token = + @comment +; + +token_trees( + unique int id: @token_tree +); + +tuple_fields( + unique int id: @tuple_field +); + +#keyset[id, index] +tuple_field_attrs( + int id: @tuple_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +tuple_field_type_reprs( + int id: @tuple_field ref, + int type_repr: @type_repr ref +); + +#keyset[id] +tuple_field_visibilities( + int id: @tuple_field ref, + int visibility: @visibility ref +); + +type_bounds( + unique int id: @type_bound +); + +#keyset[id] +type_bound_for_binders( + int id: @type_bound ref, + int for_binder: @for_binder ref +); + +#keyset[id] +type_bound_is_async( + int id: @type_bound ref +); + +#keyset[id] +type_bound_is_const( + int id: @type_bound ref +); + +#keyset[id] +type_bound_lifetimes( + int id: @type_bound ref, + int lifetime: @lifetime ref +); + +#keyset[id] +type_bound_type_reprs( + int id: @type_bound ref, + int type_repr: @type_repr ref +); + +#keyset[id] +type_bound_use_bound_generic_args( + int id: @type_bound ref, + int use_bound_generic_args: @use_bound_generic_args ref +); + +type_bound_lists( + unique int id: @type_bound_list +); + +#keyset[id, index] +type_bound_list_bounds( + int id: @type_bound_list ref, + int index: int ref, + int bound: @type_bound ref +); + +@type_repr = + @array_type_repr +| @dyn_trait_type_repr +| @fn_ptr_type_repr +| @for_type_repr +| @impl_trait_type_repr +| @infer_type_repr +| @macro_type_repr +| @never_type_repr +| @paren_type_repr +| @path_type_repr +| @ptr_type_repr +| @ref_type_repr +| @slice_type_repr +| @tuple_type_repr +; + +@use_bound_generic_arg = + @lifetime +| @name_ref +; + +use_bound_generic_args( + unique int id: @use_bound_generic_args +); + +#keyset[id, index] +use_bound_generic_args_use_bound_generic_args( + int id: @use_bound_generic_args ref, + int index: int ref, + int use_bound_generic_arg: @use_bound_generic_arg ref +); + +use_trees( + unique int id: @use_tree +); + +#keyset[id] +use_tree_is_glob( + int id: @use_tree ref +); + +#keyset[id] +use_tree_paths( + int id: @use_tree ref, + int path: @path ref +); + +#keyset[id] +use_tree_renames( + int id: @use_tree ref, + int rename: @rename ref +); + +#keyset[id] +use_tree_use_tree_lists( + int id: @use_tree ref, + int use_tree_list: @use_tree_list ref +); + +use_tree_lists( + unique int id: @use_tree_list +); + +#keyset[id, index] +use_tree_list_use_trees( + int id: @use_tree_list ref, + int index: int ref, + int use_tree: @use_tree ref +); + +variant_lists( + unique int id: @variant_list +); + +#keyset[id, index] +variant_list_variants( + int id: @variant_list ref, + int index: int ref, + int variant: @variant ref +); + +visibilities( + unique int id: @visibility +); + +#keyset[id] +visibility_paths( + int id: @visibility ref, + int path: @path ref +); + +where_clauses( + unique int id: @where_clause +); + +#keyset[id, index] +where_clause_predicates( + int id: @where_clause ref, + int index: int ref, + int predicate: @where_pred ref +); + +where_preds( + unique int id: @where_pred +); + +#keyset[id] +where_pred_for_binders( + int id: @where_pred ref, + int for_binder: @for_binder ref +); + +#keyset[id] +where_pred_lifetimes( + int id: @where_pred ref, + int lifetime: @lifetime ref +); + +#keyset[id] +where_pred_type_reprs( + int id: @where_pred ref, + int type_repr: @type_repr ref +); + +#keyset[id] +where_pred_type_bound_lists( + int id: @where_pred ref, + int type_bound_list: @type_bound_list ref +); + +array_expr_internals( + unique int id: @array_expr_internal +); + +#keyset[id, index] +array_expr_internal_attrs( + int id: @array_expr_internal ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +array_expr_internal_exprs( + int id: @array_expr_internal ref, + int index: int ref, + int expr: @expr ref +); + +#keyset[id] +array_expr_internal_is_semicolon( + int id: @array_expr_internal ref +); + +array_type_reprs( + unique int id: @array_type_repr +); + +#keyset[id] +array_type_repr_const_args( + int id: @array_type_repr ref, + int const_arg: @const_arg ref +); + +#keyset[id] +array_type_repr_element_type_reprs( + int id: @array_type_repr ref, + int element_type_repr: @type_repr ref +); + +asm_clobber_abis( + unique int id: @asm_clobber_abi +); + +asm_consts( + unique int id: @asm_const +); + +#keyset[id] +asm_const_exprs( + int id: @asm_const ref, + int expr: @expr ref +); + +#keyset[id] +asm_const_is_const( + int id: @asm_const ref +); + +asm_labels( + unique int id: @asm_label +); + +#keyset[id] +asm_label_block_exprs( + int id: @asm_label ref, + int block_expr: @block_expr ref +); + +asm_operand_nameds( + unique int id: @asm_operand_named +); + +#keyset[id] +asm_operand_named_asm_operands( + int id: @asm_operand_named ref, + int asm_operand: @asm_operand ref +); + +#keyset[id] +asm_operand_named_names( + int id: @asm_operand_named ref, + int name: @name ref +); + +asm_options_lists( + unique int id: @asm_options_list +); + +#keyset[id, index] +asm_options_list_asm_options( + int id: @asm_options_list ref, + int index: int ref, + int asm_option: @asm_option ref +); + +asm_reg_operands( + unique int id: @asm_reg_operand +); + +#keyset[id] +asm_reg_operand_asm_dir_specs( + int id: @asm_reg_operand ref, + int asm_dir_spec: @asm_dir_spec ref +); + +#keyset[id] +asm_reg_operand_asm_operand_exprs( + int id: @asm_reg_operand ref, + int asm_operand_expr: @asm_operand_expr ref +); + +#keyset[id] +asm_reg_operand_asm_reg_specs( + int id: @asm_reg_operand ref, + int asm_reg_spec: @asm_reg_spec ref +); + +asm_syms( + unique int id: @asm_sym +); + +#keyset[id] +asm_sym_paths( + int id: @asm_sym ref, + int path: @path ref +); + +assoc_type_args( + unique int id: @assoc_type_arg +); + +#keyset[id] +assoc_type_arg_const_args( + int id: @assoc_type_arg ref, + int const_arg: @const_arg ref +); + +#keyset[id] +assoc_type_arg_generic_arg_lists( + int id: @assoc_type_arg ref, + int generic_arg_list: @generic_arg_list ref +); + +#keyset[id] +assoc_type_arg_identifiers( + int id: @assoc_type_arg ref, + int identifier: @name_ref ref +); + +#keyset[id] +assoc_type_arg_param_lists( + int id: @assoc_type_arg ref, + int param_list: @param_list ref +); + +#keyset[id] +assoc_type_arg_ret_types( + int id: @assoc_type_arg ref, + int ret_type: @ret_type_repr ref +); + +#keyset[id] +assoc_type_arg_return_type_syntaxes( + int id: @assoc_type_arg ref, + int return_type_syntax: @return_type_syntax ref +); + +#keyset[id] +assoc_type_arg_type_reprs( + int id: @assoc_type_arg ref, + int type_repr: @type_repr ref +); + +#keyset[id] +assoc_type_arg_type_bound_lists( + int id: @assoc_type_arg ref, + int type_bound_list: @type_bound_list ref +); + +await_exprs( + unique int id: @await_expr +); + +#keyset[id, index] +await_expr_attrs( + int id: @await_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +await_expr_exprs( + int id: @await_expr ref, + int expr: @expr ref +); + +become_exprs( + unique int id: @become_expr +); + +#keyset[id, index] +become_expr_attrs( + int id: @become_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +become_expr_exprs( + int id: @become_expr ref, + int expr: @expr ref +); + +binary_exprs( + unique int id: @binary_expr +); + +#keyset[id, index] +binary_expr_attrs( + int id: @binary_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +binary_expr_lhs( + int id: @binary_expr ref, + int lhs: @expr ref +); + +#keyset[id] +binary_expr_operator_names( + int id: @binary_expr ref, + string operator_name: string ref +); + +#keyset[id] +binary_expr_rhs( + int id: @binary_expr ref, + int rhs: @expr ref +); + +box_pats( + unique int id: @box_pat +); + +#keyset[id] +box_pat_pats( + int id: @box_pat ref, + int pat: @pat ref +); + +break_exprs( + unique int id: @break_expr +); + +#keyset[id, index] +break_expr_attrs( + int id: @break_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +break_expr_exprs( + int id: @break_expr ref, + int expr: @expr ref +); + +#keyset[id] +break_expr_lifetimes( + int id: @break_expr ref, + int lifetime: @lifetime ref +); + +call_exprs( + unique int id: @call_expr +); + +#keyset[id] +call_expr_arg_lists( + int id: @call_expr ref, + int arg_list: @arg_list ref +); + +#keyset[id, index] +call_expr_attrs( + int id: @call_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +call_expr_functions( + int id: @call_expr ref, + int function: @expr ref +); + +cast_exprs( + unique int id: @cast_expr +); + +#keyset[id, index] +cast_expr_attrs( + int id: @cast_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +cast_expr_exprs( + int id: @cast_expr ref, + int expr: @expr ref +); + +#keyset[id] +cast_expr_type_reprs( + int id: @cast_expr ref, + int type_repr: @type_repr ref +); + +closure_exprs( + unique int id: @closure_expr +); + +#keyset[id] +closure_expr_closure_bodies( + int id: @closure_expr ref, + int closure_body: @expr ref +); + +#keyset[id] +closure_expr_for_binders( + int id: @closure_expr ref, + int for_binder: @for_binder ref +); + +#keyset[id] +closure_expr_is_async( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_const( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_gen( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_move( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_static( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_ret_types( + int id: @closure_expr ref, + int ret_type: @ret_type_repr ref +); + +comments( + unique int id: @comment, + int parent: @ast_node ref, + string text: string ref +); + +const_args( + unique int id: @const_arg +); + +#keyset[id] +const_arg_exprs( + int id: @const_arg ref, + int expr: @expr ref +); + +const_block_pats( + unique int id: @const_block_pat +); + +#keyset[id] +const_block_pat_block_exprs( + int id: @const_block_pat ref, + int block_expr: @block_expr ref +); + +#keyset[id] +const_block_pat_is_const( + int id: @const_block_pat ref +); + +const_params( + unique int id: @const_param +); + +#keyset[id, index] +const_param_attrs( + int id: @const_param ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +const_param_default_vals( + int id: @const_param ref, + int default_val: @const_arg ref +); + +#keyset[id] +const_param_is_const( + int id: @const_param ref +); + +#keyset[id] +const_param_names( + int id: @const_param ref, + int name: @name ref +); + +#keyset[id] +const_param_type_reprs( + int id: @const_param ref, + int type_repr: @type_repr ref +); + +continue_exprs( + unique int id: @continue_expr +); + +#keyset[id, index] +continue_expr_attrs( + int id: @continue_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +continue_expr_lifetimes( + int id: @continue_expr ref, + int lifetime: @lifetime ref +); + +dyn_trait_type_reprs( + unique int id: @dyn_trait_type_repr +); + +#keyset[id] +dyn_trait_type_repr_type_bound_lists( + int id: @dyn_trait_type_repr ref, + int type_bound_list: @type_bound_list ref +); + +expr_stmts( + unique int id: @expr_stmt +); + +#keyset[id] +expr_stmt_exprs( + int id: @expr_stmt ref, + int expr: @expr ref +); + +field_exprs( + unique int id: @field_expr +); + +#keyset[id, index] +field_expr_attrs( + int id: @field_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +field_expr_containers( + int id: @field_expr ref, + int container: @expr ref +); + +#keyset[id] +field_expr_identifiers( + int id: @field_expr ref, + int identifier: @name_ref ref +); + +fn_ptr_type_reprs( + unique int id: @fn_ptr_type_repr +); + +#keyset[id] +fn_ptr_type_repr_abis( + int id: @fn_ptr_type_repr ref, + int abi: @abi ref +); + +#keyset[id] +fn_ptr_type_repr_is_async( + int id: @fn_ptr_type_repr ref +); + +#keyset[id] +fn_ptr_type_repr_is_const( + int id: @fn_ptr_type_repr ref +); + +#keyset[id] +fn_ptr_type_repr_is_unsafe( + int id: @fn_ptr_type_repr ref +); + +#keyset[id] +fn_ptr_type_repr_param_lists( + int id: @fn_ptr_type_repr ref, + int param_list: @param_list ref +); + +#keyset[id] +fn_ptr_type_repr_ret_types( + int id: @fn_ptr_type_repr ref, + int ret_type: @ret_type_repr ref +); + +for_type_reprs( + unique int id: @for_type_repr +); + +#keyset[id] +for_type_repr_for_binders( + int id: @for_type_repr ref, + int for_binder: @for_binder ref +); + +#keyset[id] +for_type_repr_type_reprs( + int id: @for_type_repr ref, + int type_repr: @type_repr ref +); + +format_args_exprs( + unique int id: @format_args_expr +); + +#keyset[id, index] +format_args_expr_args( + int id: @format_args_expr ref, + int index: int ref, + int arg: @format_args_arg ref +); + +#keyset[id, index] +format_args_expr_attrs( + int id: @format_args_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +format_args_expr_templates( + int id: @format_args_expr ref, + int template: @expr ref +); + +ident_pats( + unique int id: @ident_pat +); + +#keyset[id, index] +ident_pat_attrs( + int id: @ident_pat ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +ident_pat_is_mut( + int id: @ident_pat ref +); + +#keyset[id] +ident_pat_is_ref( + int id: @ident_pat ref +); + +#keyset[id] +ident_pat_names( + int id: @ident_pat ref, + int name: @name ref +); + +#keyset[id] +ident_pat_pats( + int id: @ident_pat ref, + int pat: @pat ref +); + +if_exprs( + unique int id: @if_expr +); + +#keyset[id, index] +if_expr_attrs( + int id: @if_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +if_expr_conditions( + int id: @if_expr ref, + int condition: @expr ref +); + +#keyset[id] +if_expr_elses( + int id: @if_expr ref, + int else: @expr ref +); + +#keyset[id] +if_expr_thens( + int id: @if_expr ref, + int then: @block_expr ref +); + +impl_trait_type_reprs( + unique int id: @impl_trait_type_repr +); + +#keyset[id] +impl_trait_type_repr_type_bound_lists( + int id: @impl_trait_type_repr ref, + int type_bound_list: @type_bound_list ref +); + +index_exprs( + unique int id: @index_expr +); + +#keyset[id, index] +index_expr_attrs( + int id: @index_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +index_expr_bases( + int id: @index_expr ref, + int base: @expr ref +); + +#keyset[id] +index_expr_indices( + int id: @index_expr ref, + int index: @expr ref +); + +infer_type_reprs( + unique int id: @infer_type_repr +); + +@item = + @asm_expr +| @assoc_item +| @extern_block +| @extern_crate +| @extern_item +| @impl +| @macro_def +| @macro_rules +| @module +| @trait +| @trait_alias +| @type_item +| @use +; + +#keyset[id] +item_attribute_macro_expansions( + int id: @item ref, + int attribute_macro_expansion: @macro_items ref +); + +@labelable_expr = + @block_expr +| @looping_expr +; + +#keyset[id] +labelable_expr_labels( + int id: @labelable_expr ref, + int label: @label ref +); + +let_exprs( + unique int id: @let_expr +); + +#keyset[id, index] +let_expr_attrs( + int id: @let_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +let_expr_scrutinees( + int id: @let_expr ref, + int scrutinee: @expr ref +); + +#keyset[id] +let_expr_pats( + int id: @let_expr ref, + int pat: @pat ref +); + +let_stmts( + unique int id: @let_stmt +); + +#keyset[id, index] +let_stmt_attrs( + int id: @let_stmt ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +let_stmt_initializers( + int id: @let_stmt ref, + int initializer: @expr ref +); + +#keyset[id] +let_stmt_let_elses( + int id: @let_stmt ref, + int let_else: @let_else ref +); + +#keyset[id] +let_stmt_pats( + int id: @let_stmt ref, + int pat: @pat ref +); + +#keyset[id] +let_stmt_type_reprs( + int id: @let_stmt ref, + int type_repr: @type_repr ref +); + +lifetimes( + unique int id: @lifetime +); + +#keyset[id] +lifetime_texts( + int id: @lifetime ref, + string text: string ref +); + +lifetime_args( + unique int id: @lifetime_arg +); + +#keyset[id] +lifetime_arg_lifetimes( + int id: @lifetime_arg ref, + int lifetime: @lifetime ref +); + +lifetime_params( + unique int id: @lifetime_param +); + +#keyset[id, index] +lifetime_param_attrs( + int id: @lifetime_param ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +lifetime_param_lifetimes( + int id: @lifetime_param ref, + int lifetime: @lifetime ref +); + +#keyset[id] +lifetime_param_type_bound_lists( + int id: @lifetime_param ref, + int type_bound_list: @type_bound_list ref +); + +literal_exprs( + unique int id: @literal_expr +); + +#keyset[id, index] +literal_expr_attrs( + int id: @literal_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +literal_expr_text_values( + int id: @literal_expr ref, + string text_value: string ref +); + +literal_pats( + unique int id: @literal_pat +); + +#keyset[id] +literal_pat_literals( + int id: @literal_pat ref, + int literal: @literal_expr ref +); + +macro_exprs( + unique int id: @macro_expr +); + +#keyset[id] +macro_expr_macro_calls( + int id: @macro_expr ref, + int macro_call: @macro_call ref +); + +macro_pats( + unique int id: @macro_pat +); + +#keyset[id] +macro_pat_macro_calls( + int id: @macro_pat ref, + int macro_call: @macro_call ref +); + +macro_type_reprs( + unique int id: @macro_type_repr +); + +#keyset[id] +macro_type_repr_macro_calls( + int id: @macro_type_repr ref, + int macro_call: @macro_call ref +); + +match_exprs( + unique int id: @match_expr +); + +#keyset[id, index] +match_expr_attrs( + int id: @match_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +match_expr_scrutinees( + int id: @match_expr ref, + int scrutinee: @expr ref +); + +#keyset[id] +match_expr_match_arm_lists( + int id: @match_expr ref, + int match_arm_list: @match_arm_list ref +); + +method_call_exprs( + unique int id: @method_call_expr +); + +#keyset[id] +method_call_expr_arg_lists( + int id: @method_call_expr ref, + int arg_list: @arg_list ref +); + +#keyset[id, index] +method_call_expr_attrs( + int id: @method_call_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +method_call_expr_generic_arg_lists( + int id: @method_call_expr ref, + int generic_arg_list: @generic_arg_list ref +); + +#keyset[id] +method_call_expr_identifiers( + int id: @method_call_expr ref, + int identifier: @name_ref ref +); + +#keyset[id] +method_call_expr_receivers( + int id: @method_call_expr ref, + int receiver: @expr ref +); + +name_refs( + unique int id: @name_ref +); + +#keyset[id] +name_ref_texts( + int id: @name_ref ref, + string text: string ref +); + +never_type_reprs( + unique int id: @never_type_repr +); + +offset_of_exprs( + unique int id: @offset_of_expr +); + +#keyset[id, index] +offset_of_expr_attrs( + int id: @offset_of_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +offset_of_expr_fields( + int id: @offset_of_expr ref, + int index: int ref, + int field: @name_ref ref +); + +#keyset[id] +offset_of_expr_type_reprs( + int id: @offset_of_expr ref, + int type_repr: @type_repr ref +); + +or_pats( + unique int id: @or_pat +); + +#keyset[id, index] +or_pat_pats( + int id: @or_pat ref, + int index: int ref, + int pat: @pat ref +); + +params( + unique int id: @param +); + +#keyset[id] +param_pats( + int id: @param ref, + int pat: @pat ref +); + +paren_exprs( + unique int id: @paren_expr +); + +#keyset[id, index] +paren_expr_attrs( + int id: @paren_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +paren_expr_exprs( + int id: @paren_expr ref, + int expr: @expr ref +); + +paren_pats( + unique int id: @paren_pat +); + +#keyset[id] +paren_pat_pats( + int id: @paren_pat ref, + int pat: @pat ref +); + +paren_type_reprs( + unique int id: @paren_type_repr +); + +#keyset[id] +paren_type_repr_type_reprs( + int id: @paren_type_repr ref, + int type_repr: @type_repr ref +); + +@path_expr_base = + @path_expr +; + +path_pats( + unique int id: @path_pat +); + +path_type_reprs( + unique int id: @path_type_repr +); + +#keyset[id] +path_type_repr_paths( + int id: @path_type_repr ref, + int path: @path ref +); + +prefix_exprs( + unique int id: @prefix_expr +); + +#keyset[id, index] +prefix_expr_attrs( + int id: @prefix_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +prefix_expr_exprs( + int id: @prefix_expr ref, + int expr: @expr ref +); + +#keyset[id] +prefix_expr_operator_names( + int id: @prefix_expr ref, + string operator_name: string ref +); + +ptr_type_reprs( + unique int id: @ptr_type_repr +); + +#keyset[id] +ptr_type_repr_is_const( + int id: @ptr_type_repr ref +); + +#keyset[id] +ptr_type_repr_is_mut( + int id: @ptr_type_repr ref +); + +#keyset[id] +ptr_type_repr_type_reprs( + int id: @ptr_type_repr ref, + int type_repr: @type_repr ref +); + +range_exprs( + unique int id: @range_expr +); + +#keyset[id, index] +range_expr_attrs( + int id: @range_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +range_expr_ends( + int id: @range_expr ref, + int end: @expr ref +); + +#keyset[id] +range_expr_operator_names( + int id: @range_expr ref, + string operator_name: string ref +); + +#keyset[id] +range_expr_starts( + int id: @range_expr ref, + int start: @expr ref +); + +range_pats( + unique int id: @range_pat +); + +#keyset[id] +range_pat_ends( + int id: @range_pat ref, + int end: @pat ref +); + +#keyset[id] +range_pat_operator_names( + int id: @range_pat ref, + string operator_name: string ref +); + +#keyset[id] +range_pat_starts( + int id: @range_pat ref, + int start: @pat ref +); + +ref_exprs( + unique int id: @ref_expr +); + +#keyset[id, index] +ref_expr_attrs( + int id: @ref_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +ref_expr_exprs( + int id: @ref_expr ref, + int expr: @expr ref +); + +#keyset[id] +ref_expr_is_const( + int id: @ref_expr ref +); + +#keyset[id] +ref_expr_is_mut( + int id: @ref_expr ref +); + +#keyset[id] +ref_expr_is_raw( + int id: @ref_expr ref +); + +ref_pats( + unique int id: @ref_pat +); + +#keyset[id] +ref_pat_is_mut( + int id: @ref_pat ref +); + +#keyset[id] +ref_pat_pats( + int id: @ref_pat ref, + int pat: @pat ref +); + +ref_type_reprs( + unique int id: @ref_type_repr +); + +#keyset[id] +ref_type_repr_is_mut( + int id: @ref_type_repr ref +); + +#keyset[id] +ref_type_repr_lifetimes( + int id: @ref_type_repr ref, + int lifetime: @lifetime ref +); + +#keyset[id] +ref_type_repr_type_reprs( + int id: @ref_type_repr ref, + int type_repr: @type_repr ref +); + +rest_pats( + unique int id: @rest_pat +); + +#keyset[id, index] +rest_pat_attrs( + int id: @rest_pat ref, + int index: int ref, + int attr: @attr ref +); + +return_exprs( + unique int id: @return_expr +); + +#keyset[id, index] +return_expr_attrs( + int id: @return_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +return_expr_exprs( + int id: @return_expr ref, + int expr: @expr ref +); + +self_params( + unique int id: @self_param +); + +#keyset[id] +self_param_is_ref( + int id: @self_param ref +); + +#keyset[id] +self_param_is_mut( + int id: @self_param ref +); + +#keyset[id] +self_param_lifetimes( + int id: @self_param ref, + int lifetime: @lifetime ref +); + +#keyset[id] +self_param_names( + int id: @self_param ref, + int name: @name ref +); + +slice_pats( + unique int id: @slice_pat +); + +#keyset[id, index] +slice_pat_pats( + int id: @slice_pat ref, + int index: int ref, + int pat: @pat ref +); + +slice_type_reprs( + unique int id: @slice_type_repr +); + +#keyset[id] +slice_type_repr_type_reprs( + int id: @slice_type_repr ref, + int type_repr: @type_repr ref +); + +struct_exprs( + unique int id: @struct_expr +); + +#keyset[id] +struct_expr_struct_expr_field_lists( + int id: @struct_expr ref, + int struct_expr_field_list: @struct_expr_field_list ref +); + +struct_field_lists( + unique int id: @struct_field_list +); + +#keyset[id, index] +struct_field_list_fields( + int id: @struct_field_list ref, + int index: int ref, + int field: @struct_field ref +); + +struct_pats( + unique int id: @struct_pat +); + +#keyset[id] +struct_pat_struct_pat_field_lists( + int id: @struct_pat ref, + int struct_pat_field_list: @struct_pat_field_list ref +); + +try_exprs( + unique int id: @try_expr +); + +#keyset[id, index] +try_expr_attrs( + int id: @try_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +try_expr_exprs( + int id: @try_expr ref, + int expr: @expr ref +); + +tuple_exprs( + unique int id: @tuple_expr +); + +#keyset[id, index] +tuple_expr_attrs( + int id: @tuple_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +tuple_expr_fields( + int id: @tuple_expr ref, + int index: int ref, + int field: @expr ref +); + +tuple_field_lists( + unique int id: @tuple_field_list +); + +#keyset[id, index] +tuple_field_list_fields( + int id: @tuple_field_list ref, + int index: int ref, + int field: @tuple_field ref +); + +tuple_pats( + unique int id: @tuple_pat +); + +#keyset[id, index] +tuple_pat_fields( + int id: @tuple_pat ref, + int index: int ref, + int field: @pat ref +); + +tuple_struct_pats( + unique int id: @tuple_struct_pat +); + +#keyset[id, index] +tuple_struct_pat_fields( + int id: @tuple_struct_pat ref, + int index: int ref, + int field: @pat ref +); + +tuple_type_reprs( + unique int id: @tuple_type_repr +); + +#keyset[id, index] +tuple_type_repr_fields( + int id: @tuple_type_repr ref, + int index: int ref, + int field: @type_repr ref +); + +type_args( + unique int id: @type_arg +); + +#keyset[id] +type_arg_type_reprs( + int id: @type_arg ref, + int type_repr: @type_repr ref +); + +type_params( + unique int id: @type_param +); + +#keyset[id, index] +type_param_attrs( + int id: @type_param ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +type_param_default_types( + int id: @type_param ref, + int default_type: @type_repr ref +); + +#keyset[id] +type_param_names( + int id: @type_param ref, + int name: @name ref +); + +#keyset[id] +type_param_type_bound_lists( + int id: @type_param ref, + int type_bound_list: @type_bound_list ref +); + +underscore_exprs( + unique int id: @underscore_expr +); + +#keyset[id, index] +underscore_expr_attrs( + int id: @underscore_expr ref, + int index: int ref, + int attr: @attr ref +); + +variants( + unique int id: @variant +); + +#keyset[id, index] +variant_attrs( + int id: @variant ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +variant_discriminants( + int id: @variant ref, + int discriminant: @expr ref +); + +#keyset[id] +variant_field_lists( + int id: @variant ref, + int field_list: @field_list ref +); + +#keyset[id] +variant_names( + int id: @variant ref, + int name: @name ref +); + +#keyset[id] +variant_visibilities( + int id: @variant ref, + int visibility: @visibility ref +); + +wildcard_pats( + unique int id: @wildcard_pat +); + +yeet_exprs( + unique int id: @yeet_expr +); + +#keyset[id, index] +yeet_expr_attrs( + int id: @yeet_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +yeet_expr_exprs( + int id: @yeet_expr ref, + int expr: @expr ref +); + +yield_exprs( + unique int id: @yield_expr +); + +#keyset[id, index] +yield_expr_attrs( + int id: @yield_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +yield_expr_exprs( + int id: @yield_expr ref, + int expr: @expr ref +); + +asm_exprs( + unique int id: @asm_expr +); + +#keyset[id, index] +asm_expr_asm_pieces( + int id: @asm_expr ref, + int index: int ref, + int asm_piece: @asm_piece ref +); + +#keyset[id, index] +asm_expr_attrs( + int id: @asm_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +asm_expr_templates( + int id: @asm_expr ref, + int index: int ref, + int template: @expr ref +); + +@assoc_item = + @const +| @function +| @macro_call +| @type_alias +; + +block_exprs( + unique int id: @block_expr +); + +#keyset[id, index] +block_expr_attrs( + int id: @block_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +block_expr_is_async( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_const( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_gen( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_move( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_try( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_unsafe( + int id: @block_expr ref +); + +#keyset[id] +block_expr_stmt_lists( + int id: @block_expr ref, + int stmt_list: @stmt_list ref +); + +extern_blocks( + unique int id: @extern_block +); + +#keyset[id] +extern_block_abis( + int id: @extern_block ref, + int abi: @abi ref +); + +#keyset[id, index] +extern_block_attrs( + int id: @extern_block ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +extern_block_extern_item_lists( + int id: @extern_block ref, + int extern_item_list: @extern_item_list ref +); + +#keyset[id] +extern_block_is_unsafe( + int id: @extern_block ref +); + +extern_crates( + unique int id: @extern_crate +); + +#keyset[id, index] +extern_crate_attrs( + int id: @extern_crate ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +extern_crate_identifiers( + int id: @extern_crate ref, + int identifier: @name_ref ref +); + +#keyset[id] +extern_crate_renames( + int id: @extern_crate ref, + int rename: @rename ref +); + +#keyset[id] +extern_crate_visibilities( + int id: @extern_crate ref, + int visibility: @visibility ref +); + +@extern_item = + @function +| @macro_call +| @static +| @type_alias +; + +impls( + unique int id: @impl +); + +#keyset[id] +impl_assoc_item_lists( + int id: @impl ref, + int assoc_item_list: @assoc_item_list ref +); + +#keyset[id, index] +impl_attrs( + int id: @impl ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +impl_generic_param_lists( + int id: @impl ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +impl_is_const( + int id: @impl ref +); + +#keyset[id] +impl_is_default( + int id: @impl ref +); + +#keyset[id] +impl_is_unsafe( + int id: @impl ref +); + +#keyset[id] +impl_self_ties( + int id: @impl ref, + int self_ty: @type_repr ref +); + +#keyset[id] +impl_traits( + int id: @impl ref, + int trait: @type_repr ref +); + +#keyset[id] +impl_visibilities( + int id: @impl ref, + int visibility: @visibility ref +); + +#keyset[id] +impl_where_clauses( + int id: @impl ref, + int where_clause: @where_clause ref +); + +@looping_expr = + @for_expr +| @loop_expr +| @while_expr +; + +#keyset[id] +looping_expr_loop_bodies( + int id: @looping_expr ref, + int loop_body: @block_expr ref +); + +macro_defs( + unique int id: @macro_def +); + +#keyset[id] +macro_def_args( + int id: @macro_def ref, + int args: @token_tree ref +); + +#keyset[id, index] +macro_def_attrs( + int id: @macro_def ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +macro_def_bodies( + int id: @macro_def ref, + int body: @token_tree ref +); + +#keyset[id] +macro_def_names( + int id: @macro_def ref, + int name: @name ref +); + +#keyset[id] +macro_def_visibilities( + int id: @macro_def ref, + int visibility: @visibility ref +); + +macro_rules( + unique int id: @macro_rules +); + +#keyset[id, index] +macro_rules_attrs( + int id: @macro_rules ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +macro_rules_names( + int id: @macro_rules ref, + int name: @name ref +); + +#keyset[id] +macro_rules_token_trees( + int id: @macro_rules ref, + int token_tree: @token_tree ref +); + +#keyset[id] +macro_rules_visibilities( + int id: @macro_rules ref, + int visibility: @visibility ref +); + +modules( + unique int id: @module +); + +#keyset[id, index] +module_attrs( + int id: @module ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +module_item_lists( + int id: @module ref, + int item_list: @item_list ref +); + +#keyset[id] +module_names( + int id: @module ref, + int name: @name ref +); + +#keyset[id] +module_visibilities( + int id: @module ref, + int visibility: @visibility ref +); + +path_exprs( + unique int id: @path_expr +); + +#keyset[id, index] +path_expr_attrs( + int id: @path_expr ref, + int index: int ref, + int attr: @attr ref +); + +traits( + unique int id: @trait +); + +#keyset[id] +trait_assoc_item_lists( + int id: @trait ref, + int assoc_item_list: @assoc_item_list ref +); + +#keyset[id, index] +trait_attrs( + int id: @trait ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +trait_generic_param_lists( + int id: @trait ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +trait_is_auto( + int id: @trait ref +); + +#keyset[id] +trait_is_unsafe( + int id: @trait ref +); + +#keyset[id] +trait_names( + int id: @trait ref, + int name: @name ref +); + +#keyset[id] +trait_type_bound_lists( + int id: @trait ref, + int type_bound_list: @type_bound_list ref +); + +#keyset[id] +trait_visibilities( + int id: @trait ref, + int visibility: @visibility ref +); + +#keyset[id] +trait_where_clauses( + int id: @trait ref, + int where_clause: @where_clause ref +); + +trait_aliases( + unique int id: @trait_alias +); + +#keyset[id, index] +trait_alias_attrs( + int id: @trait_alias ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +trait_alias_generic_param_lists( + int id: @trait_alias ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +trait_alias_names( + int id: @trait_alias ref, + int name: @name ref +); + +#keyset[id] +trait_alias_type_bound_lists( + int id: @trait_alias ref, + int type_bound_list: @type_bound_list ref +); + +#keyset[id] +trait_alias_visibilities( + int id: @trait_alias ref, + int visibility: @visibility ref +); + +#keyset[id] +trait_alias_where_clauses( + int id: @trait_alias ref, + int where_clause: @where_clause ref +); + +@type_item = + @enum +| @struct +| @union +; + +#keyset[id, index] +type_item_derive_macro_expansions( + int id: @type_item ref, + int index: int ref, + int derive_macro_expansion: @macro_items ref +); + +#keyset[id, index] +type_item_attrs( + int id: @type_item ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +type_item_generic_param_lists( + int id: @type_item ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +type_item_names( + int id: @type_item ref, + int name: @name ref +); + +#keyset[id] +type_item_visibilities( + int id: @type_item ref, + int visibility: @visibility ref +); + +#keyset[id] +type_item_where_clauses( + int id: @type_item ref, + int where_clause: @where_clause ref +); + +uses( + unique int id: @use +); + +#keyset[id, index] +use_attrs( + int id: @use ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +use_use_trees( + int id: @use ref, + int use_tree: @use_tree ref +); + +#keyset[id] +use_visibilities( + int id: @use ref, + int visibility: @visibility ref +); + +consts( + unique int id: @const +); + +#keyset[id, index] +const_attrs( + int id: @const ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +const_bodies( + int id: @const ref, + int body: @expr ref +); + +#keyset[id] +const_generic_param_lists( + int id: @const ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +const_is_const( + int id: @const ref +); + +#keyset[id] +const_is_default( + int id: @const ref +); + +#keyset[id] +const_names( + int id: @const ref, + int name: @name ref +); + +#keyset[id] +const_type_reprs( + int id: @const ref, + int type_repr: @type_repr ref +); + +#keyset[id] +const_visibilities( + int id: @const ref, + int visibility: @visibility ref +); + +#keyset[id] +const_where_clauses( + int id: @const ref, + int where_clause: @where_clause ref +); + +#keyset[id] +const_has_implementation( + int id: @const ref +); + +enums( + unique int id: @enum +); + +#keyset[id] +enum_variant_lists( + int id: @enum ref, + int variant_list: @variant_list ref +); + +for_exprs( + unique int id: @for_expr +); + +#keyset[id, index] +for_expr_attrs( + int id: @for_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +for_expr_iterables( + int id: @for_expr ref, + int iterable: @expr ref +); + +#keyset[id] +for_expr_pats( + int id: @for_expr ref, + int pat: @pat ref +); + +functions( + unique int id: @function +); + +#keyset[id] +function_abis( + int id: @function ref, + int abi: @abi ref +); + +#keyset[id] +function_function_bodies( + int id: @function ref, + int function_body: @block_expr ref +); + +#keyset[id] +function_generic_param_lists( + int id: @function ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +function_is_async( + int id: @function ref +); + +#keyset[id] +function_is_const( + int id: @function ref +); + +#keyset[id] +function_is_default( + int id: @function ref +); + +#keyset[id] +function_is_gen( + int id: @function ref +); + +#keyset[id] +function_is_unsafe( + int id: @function ref +); + +#keyset[id] +function_names( + int id: @function ref, + int name: @name ref +); + +#keyset[id] +function_ret_types( + int id: @function ref, + int ret_type: @ret_type_repr ref +); + +#keyset[id] +function_visibilities( + int id: @function ref, + int visibility: @visibility ref +); + +#keyset[id] +function_where_clauses( + int id: @function ref, + int where_clause: @where_clause ref +); + +#keyset[id] +function_has_implementation( + int id: @function ref +); + +loop_exprs( + unique int id: @loop_expr +); + +#keyset[id, index] +loop_expr_attrs( + int id: @loop_expr ref, + int index: int ref, + int attr: @attr ref +); + +macro_calls( + unique int id: @macro_call +); + +#keyset[id, index] +macro_call_attrs( + int id: @macro_call ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +macro_call_paths( + int id: @macro_call ref, + int path: @path ref +); + +#keyset[id] +macro_call_token_trees( + int id: @macro_call ref, + int token_tree: @token_tree ref +); + +#keyset[id] +macro_call_macro_call_expansions( + int id: @macro_call ref, + int macro_call_expansion: @ast_node ref +); + +statics( + unique int id: @static +); + +#keyset[id, index] +static_attrs( + int id: @static ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +static_bodies( + int id: @static ref, + int body: @expr ref +); + +#keyset[id] +static_is_mut( + int id: @static ref +); + +#keyset[id] +static_is_static( + int id: @static ref +); + +#keyset[id] +static_is_unsafe( + int id: @static ref +); + +#keyset[id] +static_names( + int id: @static ref, + int name: @name ref +); + +#keyset[id] +static_type_reprs( + int id: @static ref, + int type_repr: @type_repr ref +); + +#keyset[id] +static_visibilities( + int id: @static ref, + int visibility: @visibility ref +); + +structs( + unique int id: @struct +); + +#keyset[id] +struct_field_lists_( + int id: @struct ref, + int field_list: @field_list ref +); + +type_aliases( + unique int id: @type_alias +); + +#keyset[id, index] +type_alias_attrs( + int id: @type_alias ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +type_alias_generic_param_lists( + int id: @type_alias ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +type_alias_is_default( + int id: @type_alias ref +); + +#keyset[id] +type_alias_names( + int id: @type_alias ref, + int name: @name ref +); + +#keyset[id] +type_alias_type_reprs( + int id: @type_alias ref, + int type_repr: @type_repr ref +); + +#keyset[id] +type_alias_type_bound_lists( + int id: @type_alias ref, + int type_bound_list: @type_bound_list ref +); + +#keyset[id] +type_alias_visibilities( + int id: @type_alias ref, + int visibility: @visibility ref +); + +#keyset[id] +type_alias_where_clauses( + int id: @type_alias ref, + int where_clause: @where_clause ref +); + +unions( + unique int id: @union +); + +#keyset[id] +union_struct_field_lists( + int id: @union ref, + int struct_field_list: @struct_field_list ref +); + +while_exprs( + unique int id: @while_expr +); + +#keyset[id, index] +while_expr_attrs( + int id: @while_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +while_expr_conditions( + int id: @while_expr ref, + int condition: @expr ref +); diff --git a/rust/downgrades/66a489863649185f4a9770f894505803059a1312/upgrade.properties b/rust/downgrades/66a489863649185f4a9770f894505803059a1312/upgrade.properties new file mode 100644 index 000000000000..00fae2d3bc61 --- /dev/null +++ b/rust/downgrades/66a489863649185f4a9770f894505803059a1312/upgrade.properties @@ -0,0 +1,2 @@ +description: Sections for databaseMetadata and overlayChangedFiles +compatibility: full diff --git a/rust/ql/lib/upgrades/90861289dd4c4d9fc029ed0fc249c1e11c5aab01/old.dbscheme b/rust/ql/lib/upgrades/90861289dd4c4d9fc029ed0fc249c1e11c5aab01/old.dbscheme new file mode 100644 index 000000000000..90861289dd4c --- /dev/null +++ b/rust/ql/lib/upgrades/90861289dd4c4d9fc029ed0fc249c1e11c5aab01/old.dbscheme @@ -0,0 +1,3544 @@ +// generated by codegen, do not edit + +// from ../shared/tree-sitter-extractor/src/generator/prefix.dbscheme +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Empty location -*/ + +empty_location( + int location: @location_default ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- Diagnostic messages: severity -*/ + +case @diagnostic.severity of + 10 = @diagnostic_debug +| 20 = @diagnostic_info +| 30 = @diagnostic_warning +| 40 = @diagnostic_error +; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Database metadata -*/ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +overlayChangedFiles( + string path: string ref +); + + +// from prefix.dbscheme +#keyset[id] +locatable_locations( + int id: @locatable ref, + int location: @location_default ref +); + + +// from schema + +@element = + @extractor_step +| @locatable +| @named_crate +| @unextracted +; + +extractor_steps( + unique int id: @extractor_step, + string action: string ref, + int duration_ms: int ref +); + +#keyset[id] +extractor_step_files( + int id: @extractor_step ref, + int file: @file ref +); + +@locatable = + @ast_node +| @crate +; + +named_crates( + unique int id: @named_crate, + string name: string ref, + int crate: @crate ref +); + +@unextracted = + @missing +| @unimplemented +; + +@ast_node = + @abi +| @addressable +| @arg_list +| @asm_dir_spec +| @asm_operand +| @asm_operand_expr +| @asm_option +| @asm_piece +| @asm_reg_spec +| @assoc_item_list +| @attr +| @callable +| @expr +| @extern_item_list +| @field_list +| @for_binder +| @format_args_arg +| @generic_arg +| @generic_arg_list +| @generic_param +| @generic_param_list +| @item_list +| @label +| @let_else +| @macro_items +| @match_arm +| @match_arm_list +| @match_guard +| @meta +| @name +| @param_base +| @param_list +| @parenthesized_arg_list +| @pat +| @path +| @path_ast_node +| @path_segment +| @rename +| @ret_type_repr +| @return_type_syntax +| @source_file +| @stmt +| @stmt_list +| @struct_expr_field +| @struct_expr_field_list +| @struct_field +| @struct_pat_field +| @struct_pat_field_list +| @token +| @token_tree +| @tuple_field +| @type_bound +| @type_bound_list +| @type_repr +| @use_bound_generic_arg +| @use_bound_generic_args +| @use_tree +| @use_tree_list +| @variant_list +| @visibility +| @where_clause +| @where_pred +; + +crates( + unique int id: @crate +); + +#keyset[id] +crate_names( + int id: @crate ref, + string name: string ref +); + +#keyset[id] +crate_versions( + int id: @crate ref, + string version: string ref +); + +#keyset[id, index] +crate_cfg_options( + int id: @crate ref, + int index: int ref, + string cfg_option: string ref +); + +#keyset[id, index] +crate_named_dependencies( + int id: @crate ref, + int index: int ref, + int named_dependency: @named_crate ref +); + +missings( + unique int id: @missing +); + +unimplementeds( + unique int id: @unimplemented +); + +abis( + unique int id: @abi +); + +#keyset[id] +abi_abi_strings( + int id: @abi ref, + string abi_string: string ref +); + +@addressable = + @item +| @variant +; + +arg_lists( + unique int id: @arg_list +); + +#keyset[id, index] +arg_list_args( + int id: @arg_list ref, + int index: int ref, + int arg: @expr ref +); + +asm_dir_specs( + unique int id: @asm_dir_spec +); + +@asm_operand = + @asm_const +| @asm_label +| @asm_reg_operand +| @asm_sym +; + +asm_operand_exprs( + unique int id: @asm_operand_expr +); + +#keyset[id] +asm_operand_expr_in_exprs( + int id: @asm_operand_expr ref, + int in_expr: @expr ref +); + +#keyset[id] +asm_operand_expr_out_exprs( + int id: @asm_operand_expr ref, + int out_expr: @expr ref +); + +asm_options( + unique int id: @asm_option +); + +#keyset[id] +asm_option_is_raw( + int id: @asm_option ref +); + +@asm_piece = + @asm_clobber_abi +| @asm_operand_named +| @asm_options_list +; + +asm_reg_specs( + unique int id: @asm_reg_spec +); + +#keyset[id] +asm_reg_spec_identifiers( + int id: @asm_reg_spec ref, + int identifier: @name_ref ref +); + +assoc_item_lists( + unique int id: @assoc_item_list +); + +#keyset[id, index] +assoc_item_list_assoc_items( + int id: @assoc_item_list ref, + int index: int ref, + int assoc_item: @assoc_item ref +); + +#keyset[id, index] +assoc_item_list_attrs( + int id: @assoc_item_list ref, + int index: int ref, + int attr: @attr ref +); + +attrs( + unique int id: @attr +); + +#keyset[id] +attr_meta( + int id: @attr ref, + int meta: @meta ref +); + +@callable = + @closure_expr +| @function +; + +#keyset[id] +callable_param_lists( + int id: @callable ref, + int param_list: @param_list ref +); + +#keyset[id, index] +callable_attrs( + int id: @callable ref, + int index: int ref, + int attr: @attr ref +); + +@expr = + @array_expr_internal +| @asm_expr +| @await_expr +| @become_expr +| @binary_expr +| @break_expr +| @call_expr +| @cast_expr +| @closure_expr +| @continue_expr +| @field_expr +| @format_args_expr +| @if_expr +| @index_expr +| @labelable_expr +| @let_expr +| @literal_expr +| @macro_expr +| @match_expr +| @method_call_expr +| @offset_of_expr +| @paren_expr +| @path_expr_base +| @prefix_expr +| @range_expr +| @ref_expr +| @return_expr +| @struct_expr +| @try_expr +| @tuple_expr +| @underscore_expr +| @yeet_expr +| @yield_expr +; + +extern_item_lists( + unique int id: @extern_item_list +); + +#keyset[id, index] +extern_item_list_attrs( + int id: @extern_item_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +extern_item_list_extern_items( + int id: @extern_item_list ref, + int index: int ref, + int extern_item: @extern_item ref +); + +@field_list = + @struct_field_list +| @tuple_field_list +; + +for_binders( + unique int id: @for_binder +); + +#keyset[id] +for_binder_generic_param_lists( + int id: @for_binder ref, + int generic_param_list: @generic_param_list ref +); + +format_args_args( + unique int id: @format_args_arg +); + +#keyset[id] +format_args_arg_exprs( + int id: @format_args_arg ref, + int expr: @expr ref +); + +#keyset[id] +format_args_arg_names( + int id: @format_args_arg ref, + int name: @name ref +); + +@generic_arg = + @assoc_type_arg +| @const_arg +| @lifetime_arg +| @type_arg +; + +generic_arg_lists( + unique int id: @generic_arg_list +); + +#keyset[id, index] +generic_arg_list_generic_args( + int id: @generic_arg_list ref, + int index: int ref, + int generic_arg: @generic_arg ref +); + +@generic_param = + @const_param +| @lifetime_param +| @type_param +; + +generic_param_lists( + unique int id: @generic_param_list +); + +#keyset[id, index] +generic_param_list_generic_params( + int id: @generic_param_list ref, + int index: int ref, + int generic_param: @generic_param ref +); + +item_lists( + unique int id: @item_list +); + +#keyset[id, index] +item_list_attrs( + int id: @item_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +item_list_items( + int id: @item_list ref, + int index: int ref, + int item: @item ref +); + +labels( + unique int id: @label +); + +#keyset[id] +label_lifetimes( + int id: @label ref, + int lifetime: @lifetime ref +); + +let_elses( + unique int id: @let_else +); + +#keyset[id] +let_else_block_exprs( + int id: @let_else ref, + int block_expr: @block_expr ref +); + +macro_items( + unique int id: @macro_items +); + +#keyset[id, index] +macro_items_items( + int id: @macro_items ref, + int index: int ref, + int item: @item ref +); + +match_arms( + unique int id: @match_arm +); + +#keyset[id, index] +match_arm_attrs( + int id: @match_arm ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +match_arm_exprs( + int id: @match_arm ref, + int expr: @expr ref +); + +#keyset[id] +match_arm_guards( + int id: @match_arm ref, + int guard: @match_guard ref +); + +#keyset[id] +match_arm_pats( + int id: @match_arm ref, + int pat: @pat ref +); + +match_arm_lists( + unique int id: @match_arm_list +); + +#keyset[id, index] +match_arm_list_arms( + int id: @match_arm_list ref, + int index: int ref, + int arm: @match_arm ref +); + +#keyset[id, index] +match_arm_list_attrs( + int id: @match_arm_list ref, + int index: int ref, + int attr: @attr ref +); + +match_guards( + unique int id: @match_guard +); + +#keyset[id] +match_guard_conditions( + int id: @match_guard ref, + int condition: @expr ref +); + +meta( + unique int id: @meta +); + +#keyset[id] +meta_exprs( + int id: @meta ref, + int expr: @expr ref +); + +#keyset[id] +meta_is_unsafe( + int id: @meta ref +); + +#keyset[id] +meta_paths( + int id: @meta ref, + int path: @path ref +); + +#keyset[id] +meta_token_trees( + int id: @meta ref, + int token_tree: @token_tree ref +); + +names( + unique int id: @name +); + +#keyset[id] +name_texts( + int id: @name ref, + string text: string ref +); + +@param_base = + @param +| @self_param +; + +#keyset[id, index] +param_base_attrs( + int id: @param_base ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +param_base_type_reprs( + int id: @param_base ref, + int type_repr: @type_repr ref +); + +param_lists( + unique int id: @param_list +); + +#keyset[id, index] +param_list_params( + int id: @param_list ref, + int index: int ref, + int param: @param ref +); + +#keyset[id] +param_list_self_params( + int id: @param_list ref, + int self_param: @self_param ref +); + +parenthesized_arg_lists( + unique int id: @parenthesized_arg_list +); + +#keyset[id, index] +parenthesized_arg_list_type_args( + int id: @parenthesized_arg_list ref, + int index: int ref, + int type_arg: @type_arg ref +); + +@pat = + @box_pat +| @const_block_pat +| @ident_pat +| @literal_pat +| @macro_pat +| @or_pat +| @paren_pat +| @path_pat +| @range_pat +| @ref_pat +| @rest_pat +| @slice_pat +| @struct_pat +| @tuple_pat +| @tuple_struct_pat +| @wildcard_pat +; + +paths( + unique int id: @path +); + +#keyset[id] +path_qualifiers( + int id: @path ref, + int qualifier: @path ref +); + +#keyset[id] +path_segments_( + int id: @path ref, + int segment: @path_segment ref +); + +@path_ast_node = + @path_expr +| @path_pat +| @struct_expr +| @struct_pat +| @tuple_struct_pat +; + +#keyset[id] +path_ast_node_paths( + int id: @path_ast_node ref, + int path: @path ref +); + +path_segments( + unique int id: @path_segment +); + +#keyset[id] +path_segment_generic_arg_lists( + int id: @path_segment ref, + int generic_arg_list: @generic_arg_list ref +); + +#keyset[id] +path_segment_identifiers( + int id: @path_segment ref, + int identifier: @name_ref ref +); + +#keyset[id] +path_segment_parenthesized_arg_lists( + int id: @path_segment ref, + int parenthesized_arg_list: @parenthesized_arg_list ref +); + +#keyset[id] +path_segment_ret_types( + int id: @path_segment ref, + int ret_type: @ret_type_repr ref +); + +#keyset[id] +path_segment_return_type_syntaxes( + int id: @path_segment ref, + int return_type_syntax: @return_type_syntax ref +); + +#keyset[id] +path_segment_type_reprs( + int id: @path_segment ref, + int type_repr: @type_repr ref +); + +#keyset[id] +path_segment_trait_type_reprs( + int id: @path_segment ref, + int trait_type_repr: @path_type_repr ref +); + +renames( + unique int id: @rename +); + +#keyset[id] +rename_names( + int id: @rename ref, + int name: @name ref +); + +ret_type_reprs( + unique int id: @ret_type_repr +); + +#keyset[id] +ret_type_repr_type_reprs( + int id: @ret_type_repr ref, + int type_repr: @type_repr ref +); + +return_type_syntaxes( + unique int id: @return_type_syntax +); + +source_files( + unique int id: @source_file +); + +#keyset[id, index] +source_file_attrs( + int id: @source_file ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +source_file_items( + int id: @source_file ref, + int index: int ref, + int item: @item ref +); + +@stmt = + @expr_stmt +| @item +| @let_stmt +; + +stmt_lists( + unique int id: @stmt_list +); + +#keyset[id, index] +stmt_list_attrs( + int id: @stmt_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +stmt_list_statements( + int id: @stmt_list ref, + int index: int ref, + int statement: @stmt ref +); + +#keyset[id] +stmt_list_tail_exprs( + int id: @stmt_list ref, + int tail_expr: @expr ref +); + +struct_expr_fields( + unique int id: @struct_expr_field +); + +#keyset[id, index] +struct_expr_field_attrs( + int id: @struct_expr_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +struct_expr_field_exprs( + int id: @struct_expr_field ref, + int expr: @expr ref +); + +#keyset[id] +struct_expr_field_identifiers( + int id: @struct_expr_field ref, + int identifier: @name_ref ref +); + +struct_expr_field_lists( + unique int id: @struct_expr_field_list +); + +#keyset[id, index] +struct_expr_field_list_attrs( + int id: @struct_expr_field_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +struct_expr_field_list_fields( + int id: @struct_expr_field_list ref, + int index: int ref, + int field: @struct_expr_field ref +); + +#keyset[id] +struct_expr_field_list_spreads( + int id: @struct_expr_field_list ref, + int spread: @expr ref +); + +struct_fields( + unique int id: @struct_field +); + +#keyset[id, index] +struct_field_attrs( + int id: @struct_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +struct_field_defaults( + int id: @struct_field ref, + int default: @expr ref +); + +#keyset[id] +struct_field_is_unsafe( + int id: @struct_field ref +); + +#keyset[id] +struct_field_names( + int id: @struct_field ref, + int name: @name ref +); + +#keyset[id] +struct_field_type_reprs( + int id: @struct_field ref, + int type_repr: @type_repr ref +); + +#keyset[id] +struct_field_visibilities( + int id: @struct_field ref, + int visibility: @visibility ref +); + +struct_pat_fields( + unique int id: @struct_pat_field +); + +#keyset[id, index] +struct_pat_field_attrs( + int id: @struct_pat_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +struct_pat_field_identifiers( + int id: @struct_pat_field ref, + int identifier: @name_ref ref +); + +#keyset[id] +struct_pat_field_pats( + int id: @struct_pat_field ref, + int pat: @pat ref +); + +struct_pat_field_lists( + unique int id: @struct_pat_field_list +); + +#keyset[id, index] +struct_pat_field_list_fields( + int id: @struct_pat_field_list ref, + int index: int ref, + int field: @struct_pat_field ref +); + +#keyset[id] +struct_pat_field_list_rest_pats( + int id: @struct_pat_field_list ref, + int rest_pat: @rest_pat ref +); + +@token = + @comment +; + +token_trees( + unique int id: @token_tree +); + +tuple_fields( + unique int id: @tuple_field +); + +#keyset[id, index] +tuple_field_attrs( + int id: @tuple_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +tuple_field_type_reprs( + int id: @tuple_field ref, + int type_repr: @type_repr ref +); + +#keyset[id] +tuple_field_visibilities( + int id: @tuple_field ref, + int visibility: @visibility ref +); + +type_bounds( + unique int id: @type_bound +); + +#keyset[id] +type_bound_for_binders( + int id: @type_bound ref, + int for_binder: @for_binder ref +); + +#keyset[id] +type_bound_is_async( + int id: @type_bound ref +); + +#keyset[id] +type_bound_is_const( + int id: @type_bound ref +); + +#keyset[id] +type_bound_lifetimes( + int id: @type_bound ref, + int lifetime: @lifetime ref +); + +#keyset[id] +type_bound_type_reprs( + int id: @type_bound ref, + int type_repr: @type_repr ref +); + +#keyset[id] +type_bound_use_bound_generic_args( + int id: @type_bound ref, + int use_bound_generic_args: @use_bound_generic_args ref +); + +type_bound_lists( + unique int id: @type_bound_list +); + +#keyset[id, index] +type_bound_list_bounds( + int id: @type_bound_list ref, + int index: int ref, + int bound: @type_bound ref +); + +@type_repr = + @array_type_repr +| @dyn_trait_type_repr +| @fn_ptr_type_repr +| @for_type_repr +| @impl_trait_type_repr +| @infer_type_repr +| @macro_type_repr +| @never_type_repr +| @paren_type_repr +| @path_type_repr +| @ptr_type_repr +| @ref_type_repr +| @slice_type_repr +| @tuple_type_repr +; + +@use_bound_generic_arg = + @lifetime +| @name_ref +; + +use_bound_generic_args( + unique int id: @use_bound_generic_args +); + +#keyset[id, index] +use_bound_generic_args_use_bound_generic_args( + int id: @use_bound_generic_args ref, + int index: int ref, + int use_bound_generic_arg: @use_bound_generic_arg ref +); + +use_trees( + unique int id: @use_tree +); + +#keyset[id] +use_tree_is_glob( + int id: @use_tree ref +); + +#keyset[id] +use_tree_paths( + int id: @use_tree ref, + int path: @path ref +); + +#keyset[id] +use_tree_renames( + int id: @use_tree ref, + int rename: @rename ref +); + +#keyset[id] +use_tree_use_tree_lists( + int id: @use_tree ref, + int use_tree_list: @use_tree_list ref +); + +use_tree_lists( + unique int id: @use_tree_list +); + +#keyset[id, index] +use_tree_list_use_trees( + int id: @use_tree_list ref, + int index: int ref, + int use_tree: @use_tree ref +); + +variant_lists( + unique int id: @variant_list +); + +#keyset[id, index] +variant_list_variants( + int id: @variant_list ref, + int index: int ref, + int variant: @variant ref +); + +visibilities( + unique int id: @visibility +); + +#keyset[id] +visibility_paths( + int id: @visibility ref, + int path: @path ref +); + +where_clauses( + unique int id: @where_clause +); + +#keyset[id, index] +where_clause_predicates( + int id: @where_clause ref, + int index: int ref, + int predicate: @where_pred ref +); + +where_preds( + unique int id: @where_pred +); + +#keyset[id] +where_pred_for_binders( + int id: @where_pred ref, + int for_binder: @for_binder ref +); + +#keyset[id] +where_pred_lifetimes( + int id: @where_pred ref, + int lifetime: @lifetime ref +); + +#keyset[id] +where_pred_type_reprs( + int id: @where_pred ref, + int type_repr: @type_repr ref +); + +#keyset[id] +where_pred_type_bound_lists( + int id: @where_pred ref, + int type_bound_list: @type_bound_list ref +); + +array_expr_internals( + unique int id: @array_expr_internal +); + +#keyset[id, index] +array_expr_internal_attrs( + int id: @array_expr_internal ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +array_expr_internal_exprs( + int id: @array_expr_internal ref, + int index: int ref, + int expr: @expr ref +); + +#keyset[id] +array_expr_internal_is_semicolon( + int id: @array_expr_internal ref +); + +array_type_reprs( + unique int id: @array_type_repr +); + +#keyset[id] +array_type_repr_const_args( + int id: @array_type_repr ref, + int const_arg: @const_arg ref +); + +#keyset[id] +array_type_repr_element_type_reprs( + int id: @array_type_repr ref, + int element_type_repr: @type_repr ref +); + +asm_clobber_abis( + unique int id: @asm_clobber_abi +); + +asm_consts( + unique int id: @asm_const +); + +#keyset[id] +asm_const_exprs( + int id: @asm_const ref, + int expr: @expr ref +); + +#keyset[id] +asm_const_is_const( + int id: @asm_const ref +); + +asm_labels( + unique int id: @asm_label +); + +#keyset[id] +asm_label_block_exprs( + int id: @asm_label ref, + int block_expr: @block_expr ref +); + +asm_operand_nameds( + unique int id: @asm_operand_named +); + +#keyset[id] +asm_operand_named_asm_operands( + int id: @asm_operand_named ref, + int asm_operand: @asm_operand ref +); + +#keyset[id] +asm_operand_named_names( + int id: @asm_operand_named ref, + int name: @name ref +); + +asm_options_lists( + unique int id: @asm_options_list +); + +#keyset[id, index] +asm_options_list_asm_options( + int id: @asm_options_list ref, + int index: int ref, + int asm_option: @asm_option ref +); + +asm_reg_operands( + unique int id: @asm_reg_operand +); + +#keyset[id] +asm_reg_operand_asm_dir_specs( + int id: @asm_reg_operand ref, + int asm_dir_spec: @asm_dir_spec ref +); + +#keyset[id] +asm_reg_operand_asm_operand_exprs( + int id: @asm_reg_operand ref, + int asm_operand_expr: @asm_operand_expr ref +); + +#keyset[id] +asm_reg_operand_asm_reg_specs( + int id: @asm_reg_operand ref, + int asm_reg_spec: @asm_reg_spec ref +); + +asm_syms( + unique int id: @asm_sym +); + +#keyset[id] +asm_sym_paths( + int id: @asm_sym ref, + int path: @path ref +); + +assoc_type_args( + unique int id: @assoc_type_arg +); + +#keyset[id] +assoc_type_arg_const_args( + int id: @assoc_type_arg ref, + int const_arg: @const_arg ref +); + +#keyset[id] +assoc_type_arg_generic_arg_lists( + int id: @assoc_type_arg ref, + int generic_arg_list: @generic_arg_list ref +); + +#keyset[id] +assoc_type_arg_identifiers( + int id: @assoc_type_arg ref, + int identifier: @name_ref ref +); + +#keyset[id] +assoc_type_arg_param_lists( + int id: @assoc_type_arg ref, + int param_list: @param_list ref +); + +#keyset[id] +assoc_type_arg_ret_types( + int id: @assoc_type_arg ref, + int ret_type: @ret_type_repr ref +); + +#keyset[id] +assoc_type_arg_return_type_syntaxes( + int id: @assoc_type_arg ref, + int return_type_syntax: @return_type_syntax ref +); + +#keyset[id] +assoc_type_arg_type_reprs( + int id: @assoc_type_arg ref, + int type_repr: @type_repr ref +); + +#keyset[id] +assoc_type_arg_type_bound_lists( + int id: @assoc_type_arg ref, + int type_bound_list: @type_bound_list ref +); + +await_exprs( + unique int id: @await_expr +); + +#keyset[id, index] +await_expr_attrs( + int id: @await_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +await_expr_exprs( + int id: @await_expr ref, + int expr: @expr ref +); + +become_exprs( + unique int id: @become_expr +); + +#keyset[id, index] +become_expr_attrs( + int id: @become_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +become_expr_exprs( + int id: @become_expr ref, + int expr: @expr ref +); + +binary_exprs( + unique int id: @binary_expr +); + +#keyset[id, index] +binary_expr_attrs( + int id: @binary_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +binary_expr_lhs( + int id: @binary_expr ref, + int lhs: @expr ref +); + +#keyset[id] +binary_expr_operator_names( + int id: @binary_expr ref, + string operator_name: string ref +); + +#keyset[id] +binary_expr_rhs( + int id: @binary_expr ref, + int rhs: @expr ref +); + +box_pats( + unique int id: @box_pat +); + +#keyset[id] +box_pat_pats( + int id: @box_pat ref, + int pat: @pat ref +); + +break_exprs( + unique int id: @break_expr +); + +#keyset[id, index] +break_expr_attrs( + int id: @break_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +break_expr_exprs( + int id: @break_expr ref, + int expr: @expr ref +); + +#keyset[id] +break_expr_lifetimes( + int id: @break_expr ref, + int lifetime: @lifetime ref +); + +call_exprs( + unique int id: @call_expr +); + +#keyset[id] +call_expr_arg_lists( + int id: @call_expr ref, + int arg_list: @arg_list ref +); + +#keyset[id, index] +call_expr_attrs( + int id: @call_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +call_expr_functions( + int id: @call_expr ref, + int function: @expr ref +); + +cast_exprs( + unique int id: @cast_expr +); + +#keyset[id, index] +cast_expr_attrs( + int id: @cast_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +cast_expr_exprs( + int id: @cast_expr ref, + int expr: @expr ref +); + +#keyset[id] +cast_expr_type_reprs( + int id: @cast_expr ref, + int type_repr: @type_repr ref +); + +closure_exprs( + unique int id: @closure_expr +); + +#keyset[id] +closure_expr_closure_bodies( + int id: @closure_expr ref, + int closure_body: @expr ref +); + +#keyset[id] +closure_expr_for_binders( + int id: @closure_expr ref, + int for_binder: @for_binder ref +); + +#keyset[id] +closure_expr_is_async( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_const( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_gen( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_move( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_static( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_ret_types( + int id: @closure_expr ref, + int ret_type: @ret_type_repr ref +); + +comments( + unique int id: @comment, + int parent: @ast_node ref, + string text: string ref +); + +const_args( + unique int id: @const_arg +); + +#keyset[id] +const_arg_exprs( + int id: @const_arg ref, + int expr: @expr ref +); + +const_block_pats( + unique int id: @const_block_pat +); + +#keyset[id] +const_block_pat_block_exprs( + int id: @const_block_pat ref, + int block_expr: @block_expr ref +); + +#keyset[id] +const_block_pat_is_const( + int id: @const_block_pat ref +); + +const_params( + unique int id: @const_param +); + +#keyset[id, index] +const_param_attrs( + int id: @const_param ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +const_param_default_vals( + int id: @const_param ref, + int default_val: @const_arg ref +); + +#keyset[id] +const_param_is_const( + int id: @const_param ref +); + +#keyset[id] +const_param_names( + int id: @const_param ref, + int name: @name ref +); + +#keyset[id] +const_param_type_reprs( + int id: @const_param ref, + int type_repr: @type_repr ref +); + +continue_exprs( + unique int id: @continue_expr +); + +#keyset[id, index] +continue_expr_attrs( + int id: @continue_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +continue_expr_lifetimes( + int id: @continue_expr ref, + int lifetime: @lifetime ref +); + +dyn_trait_type_reprs( + unique int id: @dyn_trait_type_repr +); + +#keyset[id] +dyn_trait_type_repr_type_bound_lists( + int id: @dyn_trait_type_repr ref, + int type_bound_list: @type_bound_list ref +); + +expr_stmts( + unique int id: @expr_stmt +); + +#keyset[id] +expr_stmt_exprs( + int id: @expr_stmt ref, + int expr: @expr ref +); + +field_exprs( + unique int id: @field_expr +); + +#keyset[id, index] +field_expr_attrs( + int id: @field_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +field_expr_containers( + int id: @field_expr ref, + int container: @expr ref +); + +#keyset[id] +field_expr_identifiers( + int id: @field_expr ref, + int identifier: @name_ref ref +); + +fn_ptr_type_reprs( + unique int id: @fn_ptr_type_repr +); + +#keyset[id] +fn_ptr_type_repr_abis( + int id: @fn_ptr_type_repr ref, + int abi: @abi ref +); + +#keyset[id] +fn_ptr_type_repr_is_async( + int id: @fn_ptr_type_repr ref +); + +#keyset[id] +fn_ptr_type_repr_is_const( + int id: @fn_ptr_type_repr ref +); + +#keyset[id] +fn_ptr_type_repr_is_unsafe( + int id: @fn_ptr_type_repr ref +); + +#keyset[id] +fn_ptr_type_repr_param_lists( + int id: @fn_ptr_type_repr ref, + int param_list: @param_list ref +); + +#keyset[id] +fn_ptr_type_repr_ret_types( + int id: @fn_ptr_type_repr ref, + int ret_type: @ret_type_repr ref +); + +for_type_reprs( + unique int id: @for_type_repr +); + +#keyset[id] +for_type_repr_for_binders( + int id: @for_type_repr ref, + int for_binder: @for_binder ref +); + +#keyset[id] +for_type_repr_type_reprs( + int id: @for_type_repr ref, + int type_repr: @type_repr ref +); + +format_args_exprs( + unique int id: @format_args_expr +); + +#keyset[id, index] +format_args_expr_args( + int id: @format_args_expr ref, + int index: int ref, + int arg: @format_args_arg ref +); + +#keyset[id, index] +format_args_expr_attrs( + int id: @format_args_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +format_args_expr_templates( + int id: @format_args_expr ref, + int template: @expr ref +); + +ident_pats( + unique int id: @ident_pat +); + +#keyset[id, index] +ident_pat_attrs( + int id: @ident_pat ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +ident_pat_is_mut( + int id: @ident_pat ref +); + +#keyset[id] +ident_pat_is_ref( + int id: @ident_pat ref +); + +#keyset[id] +ident_pat_names( + int id: @ident_pat ref, + int name: @name ref +); + +#keyset[id] +ident_pat_pats( + int id: @ident_pat ref, + int pat: @pat ref +); + +if_exprs( + unique int id: @if_expr +); + +#keyset[id, index] +if_expr_attrs( + int id: @if_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +if_expr_conditions( + int id: @if_expr ref, + int condition: @expr ref +); + +#keyset[id] +if_expr_elses( + int id: @if_expr ref, + int else: @expr ref +); + +#keyset[id] +if_expr_thens( + int id: @if_expr ref, + int then: @block_expr ref +); + +impl_trait_type_reprs( + unique int id: @impl_trait_type_repr +); + +#keyset[id] +impl_trait_type_repr_type_bound_lists( + int id: @impl_trait_type_repr ref, + int type_bound_list: @type_bound_list ref +); + +index_exprs( + unique int id: @index_expr +); + +#keyset[id, index] +index_expr_attrs( + int id: @index_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +index_expr_bases( + int id: @index_expr ref, + int base: @expr ref +); + +#keyset[id] +index_expr_indices( + int id: @index_expr ref, + int index: @expr ref +); + +infer_type_reprs( + unique int id: @infer_type_repr +); + +@item = + @asm_expr +| @assoc_item +| @extern_block +| @extern_crate +| @extern_item +| @impl +| @macro_def +| @macro_rules +| @module +| @trait +| @trait_alias +| @type_item +| @use +; + +#keyset[id] +item_attribute_macro_expansions( + int id: @item ref, + int attribute_macro_expansion: @macro_items ref +); + +@labelable_expr = + @block_expr +| @looping_expr +; + +#keyset[id] +labelable_expr_labels( + int id: @labelable_expr ref, + int label: @label ref +); + +let_exprs( + unique int id: @let_expr +); + +#keyset[id, index] +let_expr_attrs( + int id: @let_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +let_expr_scrutinees( + int id: @let_expr ref, + int scrutinee: @expr ref +); + +#keyset[id] +let_expr_pats( + int id: @let_expr ref, + int pat: @pat ref +); + +let_stmts( + unique int id: @let_stmt +); + +#keyset[id, index] +let_stmt_attrs( + int id: @let_stmt ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +let_stmt_initializers( + int id: @let_stmt ref, + int initializer: @expr ref +); + +#keyset[id] +let_stmt_let_elses( + int id: @let_stmt ref, + int let_else: @let_else ref +); + +#keyset[id] +let_stmt_pats( + int id: @let_stmt ref, + int pat: @pat ref +); + +#keyset[id] +let_stmt_type_reprs( + int id: @let_stmt ref, + int type_repr: @type_repr ref +); + +lifetimes( + unique int id: @lifetime +); + +#keyset[id] +lifetime_texts( + int id: @lifetime ref, + string text: string ref +); + +lifetime_args( + unique int id: @lifetime_arg +); + +#keyset[id] +lifetime_arg_lifetimes( + int id: @lifetime_arg ref, + int lifetime: @lifetime ref +); + +lifetime_params( + unique int id: @lifetime_param +); + +#keyset[id, index] +lifetime_param_attrs( + int id: @lifetime_param ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +lifetime_param_lifetimes( + int id: @lifetime_param ref, + int lifetime: @lifetime ref +); + +#keyset[id] +lifetime_param_type_bound_lists( + int id: @lifetime_param ref, + int type_bound_list: @type_bound_list ref +); + +literal_exprs( + unique int id: @literal_expr +); + +#keyset[id, index] +literal_expr_attrs( + int id: @literal_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +literal_expr_text_values( + int id: @literal_expr ref, + string text_value: string ref +); + +literal_pats( + unique int id: @literal_pat +); + +#keyset[id] +literal_pat_literals( + int id: @literal_pat ref, + int literal: @literal_expr ref +); + +macro_exprs( + unique int id: @macro_expr +); + +#keyset[id] +macro_expr_macro_calls( + int id: @macro_expr ref, + int macro_call: @macro_call ref +); + +macro_pats( + unique int id: @macro_pat +); + +#keyset[id] +macro_pat_macro_calls( + int id: @macro_pat ref, + int macro_call: @macro_call ref +); + +macro_type_reprs( + unique int id: @macro_type_repr +); + +#keyset[id] +macro_type_repr_macro_calls( + int id: @macro_type_repr ref, + int macro_call: @macro_call ref +); + +match_exprs( + unique int id: @match_expr +); + +#keyset[id, index] +match_expr_attrs( + int id: @match_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +match_expr_scrutinees( + int id: @match_expr ref, + int scrutinee: @expr ref +); + +#keyset[id] +match_expr_match_arm_lists( + int id: @match_expr ref, + int match_arm_list: @match_arm_list ref +); + +method_call_exprs( + unique int id: @method_call_expr +); + +#keyset[id] +method_call_expr_arg_lists( + int id: @method_call_expr ref, + int arg_list: @arg_list ref +); + +#keyset[id, index] +method_call_expr_attrs( + int id: @method_call_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +method_call_expr_generic_arg_lists( + int id: @method_call_expr ref, + int generic_arg_list: @generic_arg_list ref +); + +#keyset[id] +method_call_expr_identifiers( + int id: @method_call_expr ref, + int identifier: @name_ref ref +); + +#keyset[id] +method_call_expr_receivers( + int id: @method_call_expr ref, + int receiver: @expr ref +); + +name_refs( + unique int id: @name_ref +); + +#keyset[id] +name_ref_texts( + int id: @name_ref ref, + string text: string ref +); + +never_type_reprs( + unique int id: @never_type_repr +); + +offset_of_exprs( + unique int id: @offset_of_expr +); + +#keyset[id, index] +offset_of_expr_attrs( + int id: @offset_of_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +offset_of_expr_fields( + int id: @offset_of_expr ref, + int index: int ref, + int field: @name_ref ref +); + +#keyset[id] +offset_of_expr_type_reprs( + int id: @offset_of_expr ref, + int type_repr: @type_repr ref +); + +or_pats( + unique int id: @or_pat +); + +#keyset[id, index] +or_pat_pats( + int id: @or_pat ref, + int index: int ref, + int pat: @pat ref +); + +params( + unique int id: @param +); + +#keyset[id] +param_pats( + int id: @param ref, + int pat: @pat ref +); + +paren_exprs( + unique int id: @paren_expr +); + +#keyset[id, index] +paren_expr_attrs( + int id: @paren_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +paren_expr_exprs( + int id: @paren_expr ref, + int expr: @expr ref +); + +paren_pats( + unique int id: @paren_pat +); + +#keyset[id] +paren_pat_pats( + int id: @paren_pat ref, + int pat: @pat ref +); + +paren_type_reprs( + unique int id: @paren_type_repr +); + +#keyset[id] +paren_type_repr_type_reprs( + int id: @paren_type_repr ref, + int type_repr: @type_repr ref +); + +@path_expr_base = + @path_expr +; + +path_pats( + unique int id: @path_pat +); + +path_type_reprs( + unique int id: @path_type_repr +); + +#keyset[id] +path_type_repr_paths( + int id: @path_type_repr ref, + int path: @path ref +); + +prefix_exprs( + unique int id: @prefix_expr +); + +#keyset[id, index] +prefix_expr_attrs( + int id: @prefix_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +prefix_expr_exprs( + int id: @prefix_expr ref, + int expr: @expr ref +); + +#keyset[id] +prefix_expr_operator_names( + int id: @prefix_expr ref, + string operator_name: string ref +); + +ptr_type_reprs( + unique int id: @ptr_type_repr +); + +#keyset[id] +ptr_type_repr_is_const( + int id: @ptr_type_repr ref +); + +#keyset[id] +ptr_type_repr_is_mut( + int id: @ptr_type_repr ref +); + +#keyset[id] +ptr_type_repr_type_reprs( + int id: @ptr_type_repr ref, + int type_repr: @type_repr ref +); + +range_exprs( + unique int id: @range_expr +); + +#keyset[id, index] +range_expr_attrs( + int id: @range_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +range_expr_ends( + int id: @range_expr ref, + int end: @expr ref +); + +#keyset[id] +range_expr_operator_names( + int id: @range_expr ref, + string operator_name: string ref +); + +#keyset[id] +range_expr_starts( + int id: @range_expr ref, + int start: @expr ref +); + +range_pats( + unique int id: @range_pat +); + +#keyset[id] +range_pat_ends( + int id: @range_pat ref, + int end: @pat ref +); + +#keyset[id] +range_pat_operator_names( + int id: @range_pat ref, + string operator_name: string ref +); + +#keyset[id] +range_pat_starts( + int id: @range_pat ref, + int start: @pat ref +); + +ref_exprs( + unique int id: @ref_expr +); + +#keyset[id, index] +ref_expr_attrs( + int id: @ref_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +ref_expr_exprs( + int id: @ref_expr ref, + int expr: @expr ref +); + +#keyset[id] +ref_expr_is_const( + int id: @ref_expr ref +); + +#keyset[id] +ref_expr_is_mut( + int id: @ref_expr ref +); + +#keyset[id] +ref_expr_is_raw( + int id: @ref_expr ref +); + +ref_pats( + unique int id: @ref_pat +); + +#keyset[id] +ref_pat_is_mut( + int id: @ref_pat ref +); + +#keyset[id] +ref_pat_pats( + int id: @ref_pat ref, + int pat: @pat ref +); + +ref_type_reprs( + unique int id: @ref_type_repr +); + +#keyset[id] +ref_type_repr_is_mut( + int id: @ref_type_repr ref +); + +#keyset[id] +ref_type_repr_lifetimes( + int id: @ref_type_repr ref, + int lifetime: @lifetime ref +); + +#keyset[id] +ref_type_repr_type_reprs( + int id: @ref_type_repr ref, + int type_repr: @type_repr ref +); + +rest_pats( + unique int id: @rest_pat +); + +#keyset[id, index] +rest_pat_attrs( + int id: @rest_pat ref, + int index: int ref, + int attr: @attr ref +); + +return_exprs( + unique int id: @return_expr +); + +#keyset[id, index] +return_expr_attrs( + int id: @return_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +return_expr_exprs( + int id: @return_expr ref, + int expr: @expr ref +); + +self_params( + unique int id: @self_param +); + +#keyset[id] +self_param_is_ref( + int id: @self_param ref +); + +#keyset[id] +self_param_is_mut( + int id: @self_param ref +); + +#keyset[id] +self_param_lifetimes( + int id: @self_param ref, + int lifetime: @lifetime ref +); + +#keyset[id] +self_param_names( + int id: @self_param ref, + int name: @name ref +); + +slice_pats( + unique int id: @slice_pat +); + +#keyset[id, index] +slice_pat_pats( + int id: @slice_pat ref, + int index: int ref, + int pat: @pat ref +); + +slice_type_reprs( + unique int id: @slice_type_repr +); + +#keyset[id] +slice_type_repr_type_reprs( + int id: @slice_type_repr ref, + int type_repr: @type_repr ref +); + +struct_exprs( + unique int id: @struct_expr +); + +#keyset[id] +struct_expr_struct_expr_field_lists( + int id: @struct_expr ref, + int struct_expr_field_list: @struct_expr_field_list ref +); + +struct_field_lists( + unique int id: @struct_field_list +); + +#keyset[id, index] +struct_field_list_fields( + int id: @struct_field_list ref, + int index: int ref, + int field: @struct_field ref +); + +struct_pats( + unique int id: @struct_pat +); + +#keyset[id] +struct_pat_struct_pat_field_lists( + int id: @struct_pat ref, + int struct_pat_field_list: @struct_pat_field_list ref +); + +try_exprs( + unique int id: @try_expr +); + +#keyset[id, index] +try_expr_attrs( + int id: @try_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +try_expr_exprs( + int id: @try_expr ref, + int expr: @expr ref +); + +tuple_exprs( + unique int id: @tuple_expr +); + +#keyset[id, index] +tuple_expr_attrs( + int id: @tuple_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +tuple_expr_fields( + int id: @tuple_expr ref, + int index: int ref, + int field: @expr ref +); + +tuple_field_lists( + unique int id: @tuple_field_list +); + +#keyset[id, index] +tuple_field_list_fields( + int id: @tuple_field_list ref, + int index: int ref, + int field: @tuple_field ref +); + +tuple_pats( + unique int id: @tuple_pat +); + +#keyset[id, index] +tuple_pat_fields( + int id: @tuple_pat ref, + int index: int ref, + int field: @pat ref +); + +tuple_struct_pats( + unique int id: @tuple_struct_pat +); + +#keyset[id, index] +tuple_struct_pat_fields( + int id: @tuple_struct_pat ref, + int index: int ref, + int field: @pat ref +); + +tuple_type_reprs( + unique int id: @tuple_type_repr +); + +#keyset[id, index] +tuple_type_repr_fields( + int id: @tuple_type_repr ref, + int index: int ref, + int field: @type_repr ref +); + +type_args( + unique int id: @type_arg +); + +#keyset[id] +type_arg_type_reprs( + int id: @type_arg ref, + int type_repr: @type_repr ref +); + +type_params( + unique int id: @type_param +); + +#keyset[id, index] +type_param_attrs( + int id: @type_param ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +type_param_default_types( + int id: @type_param ref, + int default_type: @type_repr ref +); + +#keyset[id] +type_param_names( + int id: @type_param ref, + int name: @name ref +); + +#keyset[id] +type_param_type_bound_lists( + int id: @type_param ref, + int type_bound_list: @type_bound_list ref +); + +underscore_exprs( + unique int id: @underscore_expr +); + +#keyset[id, index] +underscore_expr_attrs( + int id: @underscore_expr ref, + int index: int ref, + int attr: @attr ref +); + +variants( + unique int id: @variant +); + +#keyset[id, index] +variant_attrs( + int id: @variant ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +variant_discriminants( + int id: @variant ref, + int discriminant: @expr ref +); + +#keyset[id] +variant_field_lists( + int id: @variant ref, + int field_list: @field_list ref +); + +#keyset[id] +variant_names( + int id: @variant ref, + int name: @name ref +); + +#keyset[id] +variant_visibilities( + int id: @variant ref, + int visibility: @visibility ref +); + +wildcard_pats( + unique int id: @wildcard_pat +); + +yeet_exprs( + unique int id: @yeet_expr +); + +#keyset[id, index] +yeet_expr_attrs( + int id: @yeet_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +yeet_expr_exprs( + int id: @yeet_expr ref, + int expr: @expr ref +); + +yield_exprs( + unique int id: @yield_expr +); + +#keyset[id, index] +yield_expr_attrs( + int id: @yield_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +yield_expr_exprs( + int id: @yield_expr ref, + int expr: @expr ref +); + +asm_exprs( + unique int id: @asm_expr +); + +#keyset[id, index] +asm_expr_asm_pieces( + int id: @asm_expr ref, + int index: int ref, + int asm_piece: @asm_piece ref +); + +#keyset[id, index] +asm_expr_attrs( + int id: @asm_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +asm_expr_templates( + int id: @asm_expr ref, + int index: int ref, + int template: @expr ref +); + +@assoc_item = + @const +| @function +| @macro_call +| @type_alias +; + +block_exprs( + unique int id: @block_expr +); + +#keyset[id, index] +block_expr_attrs( + int id: @block_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +block_expr_is_async( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_const( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_gen( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_move( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_try( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_unsafe( + int id: @block_expr ref +); + +#keyset[id] +block_expr_stmt_lists( + int id: @block_expr ref, + int stmt_list: @stmt_list ref +); + +extern_blocks( + unique int id: @extern_block +); + +#keyset[id] +extern_block_abis( + int id: @extern_block ref, + int abi: @abi ref +); + +#keyset[id, index] +extern_block_attrs( + int id: @extern_block ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +extern_block_extern_item_lists( + int id: @extern_block ref, + int extern_item_list: @extern_item_list ref +); + +#keyset[id] +extern_block_is_unsafe( + int id: @extern_block ref +); + +extern_crates( + unique int id: @extern_crate +); + +#keyset[id, index] +extern_crate_attrs( + int id: @extern_crate ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +extern_crate_identifiers( + int id: @extern_crate ref, + int identifier: @name_ref ref +); + +#keyset[id] +extern_crate_renames( + int id: @extern_crate ref, + int rename: @rename ref +); + +#keyset[id] +extern_crate_visibilities( + int id: @extern_crate ref, + int visibility: @visibility ref +); + +@extern_item = + @function +| @macro_call +| @static +| @type_alias +; + +impls( + unique int id: @impl +); + +#keyset[id] +impl_assoc_item_lists( + int id: @impl ref, + int assoc_item_list: @assoc_item_list ref +); + +#keyset[id, index] +impl_attrs( + int id: @impl ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +impl_generic_param_lists( + int id: @impl ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +impl_is_const( + int id: @impl ref +); + +#keyset[id] +impl_is_default( + int id: @impl ref +); + +#keyset[id] +impl_is_unsafe( + int id: @impl ref +); + +#keyset[id] +impl_self_ties( + int id: @impl ref, + int self_ty: @type_repr ref +); + +#keyset[id] +impl_traits( + int id: @impl ref, + int trait: @type_repr ref +); + +#keyset[id] +impl_visibilities( + int id: @impl ref, + int visibility: @visibility ref +); + +#keyset[id] +impl_where_clauses( + int id: @impl ref, + int where_clause: @where_clause ref +); + +@looping_expr = + @for_expr +| @loop_expr +| @while_expr +; + +#keyset[id] +looping_expr_loop_bodies( + int id: @looping_expr ref, + int loop_body: @block_expr ref +); + +macro_defs( + unique int id: @macro_def +); + +#keyset[id] +macro_def_args( + int id: @macro_def ref, + int args: @token_tree ref +); + +#keyset[id, index] +macro_def_attrs( + int id: @macro_def ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +macro_def_bodies( + int id: @macro_def ref, + int body: @token_tree ref +); + +#keyset[id] +macro_def_names( + int id: @macro_def ref, + int name: @name ref +); + +#keyset[id] +macro_def_visibilities( + int id: @macro_def ref, + int visibility: @visibility ref +); + +macro_rules( + unique int id: @macro_rules +); + +#keyset[id, index] +macro_rules_attrs( + int id: @macro_rules ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +macro_rules_names( + int id: @macro_rules ref, + int name: @name ref +); + +#keyset[id] +macro_rules_token_trees( + int id: @macro_rules ref, + int token_tree: @token_tree ref +); + +#keyset[id] +macro_rules_visibilities( + int id: @macro_rules ref, + int visibility: @visibility ref +); + +modules( + unique int id: @module +); + +#keyset[id, index] +module_attrs( + int id: @module ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +module_item_lists( + int id: @module ref, + int item_list: @item_list ref +); + +#keyset[id] +module_names( + int id: @module ref, + int name: @name ref +); + +#keyset[id] +module_visibilities( + int id: @module ref, + int visibility: @visibility ref +); + +path_exprs( + unique int id: @path_expr +); + +#keyset[id, index] +path_expr_attrs( + int id: @path_expr ref, + int index: int ref, + int attr: @attr ref +); + +traits( + unique int id: @trait +); + +#keyset[id] +trait_assoc_item_lists( + int id: @trait ref, + int assoc_item_list: @assoc_item_list ref +); + +#keyset[id, index] +trait_attrs( + int id: @trait ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +trait_generic_param_lists( + int id: @trait ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +trait_is_auto( + int id: @trait ref +); + +#keyset[id] +trait_is_unsafe( + int id: @trait ref +); + +#keyset[id] +trait_names( + int id: @trait ref, + int name: @name ref +); + +#keyset[id] +trait_type_bound_lists( + int id: @trait ref, + int type_bound_list: @type_bound_list ref +); + +#keyset[id] +trait_visibilities( + int id: @trait ref, + int visibility: @visibility ref +); + +#keyset[id] +trait_where_clauses( + int id: @trait ref, + int where_clause: @where_clause ref +); + +trait_aliases( + unique int id: @trait_alias +); + +#keyset[id, index] +trait_alias_attrs( + int id: @trait_alias ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +trait_alias_generic_param_lists( + int id: @trait_alias ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +trait_alias_names( + int id: @trait_alias ref, + int name: @name ref +); + +#keyset[id] +trait_alias_type_bound_lists( + int id: @trait_alias ref, + int type_bound_list: @type_bound_list ref +); + +#keyset[id] +trait_alias_visibilities( + int id: @trait_alias ref, + int visibility: @visibility ref +); + +#keyset[id] +trait_alias_where_clauses( + int id: @trait_alias ref, + int where_clause: @where_clause ref +); + +@type_item = + @enum +| @struct +| @union +; + +#keyset[id, index] +type_item_derive_macro_expansions( + int id: @type_item ref, + int index: int ref, + int derive_macro_expansion: @macro_items ref +); + +#keyset[id, index] +type_item_attrs( + int id: @type_item ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +type_item_generic_param_lists( + int id: @type_item ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +type_item_names( + int id: @type_item ref, + int name: @name ref +); + +#keyset[id] +type_item_visibilities( + int id: @type_item ref, + int visibility: @visibility ref +); + +#keyset[id] +type_item_where_clauses( + int id: @type_item ref, + int where_clause: @where_clause ref +); + +uses( + unique int id: @use +); + +#keyset[id, index] +use_attrs( + int id: @use ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +use_use_trees( + int id: @use ref, + int use_tree: @use_tree ref +); + +#keyset[id] +use_visibilities( + int id: @use ref, + int visibility: @visibility ref +); + +consts( + unique int id: @const +); + +#keyset[id, index] +const_attrs( + int id: @const ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +const_bodies( + int id: @const ref, + int body: @expr ref +); + +#keyset[id] +const_generic_param_lists( + int id: @const ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +const_is_const( + int id: @const ref +); + +#keyset[id] +const_is_default( + int id: @const ref +); + +#keyset[id] +const_names( + int id: @const ref, + int name: @name ref +); + +#keyset[id] +const_type_reprs( + int id: @const ref, + int type_repr: @type_repr ref +); + +#keyset[id] +const_visibilities( + int id: @const ref, + int visibility: @visibility ref +); + +#keyset[id] +const_where_clauses( + int id: @const ref, + int where_clause: @where_clause ref +); + +#keyset[id] +const_has_implementation( + int id: @const ref +); + +enums( + unique int id: @enum +); + +#keyset[id] +enum_variant_lists( + int id: @enum ref, + int variant_list: @variant_list ref +); + +for_exprs( + unique int id: @for_expr +); + +#keyset[id, index] +for_expr_attrs( + int id: @for_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +for_expr_iterables( + int id: @for_expr ref, + int iterable: @expr ref +); + +#keyset[id] +for_expr_pats( + int id: @for_expr ref, + int pat: @pat ref +); + +functions( + unique int id: @function +); + +#keyset[id] +function_abis( + int id: @function ref, + int abi: @abi ref +); + +#keyset[id] +function_function_bodies( + int id: @function ref, + int function_body: @block_expr ref +); + +#keyset[id] +function_generic_param_lists( + int id: @function ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +function_is_async( + int id: @function ref +); + +#keyset[id] +function_is_const( + int id: @function ref +); + +#keyset[id] +function_is_default( + int id: @function ref +); + +#keyset[id] +function_is_gen( + int id: @function ref +); + +#keyset[id] +function_is_unsafe( + int id: @function ref +); + +#keyset[id] +function_names( + int id: @function ref, + int name: @name ref +); + +#keyset[id] +function_ret_types( + int id: @function ref, + int ret_type: @ret_type_repr ref +); + +#keyset[id] +function_visibilities( + int id: @function ref, + int visibility: @visibility ref +); + +#keyset[id] +function_where_clauses( + int id: @function ref, + int where_clause: @where_clause ref +); + +#keyset[id] +function_has_implementation( + int id: @function ref +); + +loop_exprs( + unique int id: @loop_expr +); + +#keyset[id, index] +loop_expr_attrs( + int id: @loop_expr ref, + int index: int ref, + int attr: @attr ref +); + +macro_calls( + unique int id: @macro_call +); + +#keyset[id, index] +macro_call_attrs( + int id: @macro_call ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +macro_call_paths( + int id: @macro_call ref, + int path: @path ref +); + +#keyset[id] +macro_call_token_trees( + int id: @macro_call ref, + int token_tree: @token_tree ref +); + +#keyset[id] +macro_call_macro_call_expansions( + int id: @macro_call ref, + int macro_call_expansion: @ast_node ref +); + +statics( + unique int id: @static +); + +#keyset[id, index] +static_attrs( + int id: @static ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +static_bodies( + int id: @static ref, + int body: @expr ref +); + +#keyset[id] +static_is_mut( + int id: @static ref +); + +#keyset[id] +static_is_static( + int id: @static ref +); + +#keyset[id] +static_is_unsafe( + int id: @static ref +); + +#keyset[id] +static_names( + int id: @static ref, + int name: @name ref +); + +#keyset[id] +static_type_reprs( + int id: @static ref, + int type_repr: @type_repr ref +); + +#keyset[id] +static_visibilities( + int id: @static ref, + int visibility: @visibility ref +); + +structs( + unique int id: @struct +); + +#keyset[id] +struct_field_lists_( + int id: @struct ref, + int field_list: @field_list ref +); + +type_aliases( + unique int id: @type_alias +); + +#keyset[id, index] +type_alias_attrs( + int id: @type_alias ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +type_alias_generic_param_lists( + int id: @type_alias ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +type_alias_is_default( + int id: @type_alias ref +); + +#keyset[id] +type_alias_names( + int id: @type_alias ref, + int name: @name ref +); + +#keyset[id] +type_alias_type_reprs( + int id: @type_alias ref, + int type_repr: @type_repr ref +); + +#keyset[id] +type_alias_type_bound_lists( + int id: @type_alias ref, + int type_bound_list: @type_bound_list ref +); + +#keyset[id] +type_alias_visibilities( + int id: @type_alias ref, + int visibility: @visibility ref +); + +#keyset[id] +type_alias_where_clauses( + int id: @type_alias ref, + int where_clause: @where_clause ref +); + +unions( + unique int id: @union +); + +#keyset[id] +union_struct_field_lists( + int id: @union ref, + int struct_field_list: @struct_field_list ref +); + +while_exprs( + unique int id: @while_expr +); + +#keyset[id, index] +while_expr_attrs( + int id: @while_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +while_expr_conditions( + int id: @while_expr ref, + int condition: @expr ref +); diff --git a/rust/ql/lib/upgrades/90861289dd4c4d9fc029ed0fc249c1e11c5aab01/rust.dbscheme b/rust/ql/lib/upgrades/90861289dd4c4d9fc029ed0fc249c1e11c5aab01/rust.dbscheme new file mode 100644 index 000000000000..66a489863649 --- /dev/null +++ b/rust/ql/lib/upgrades/90861289dd4c4d9fc029ed0fc249c1e11c5aab01/rust.dbscheme @@ -0,0 +1,3556 @@ +// generated by codegen, do not edit + +// from ../shared/tree-sitter-extractor/src/generator/prefix.dbscheme +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Empty location -*/ + +empty_location( + int location: @location_default ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- Diagnostic messages: severity -*/ + +case @diagnostic.severity of + 10 = @diagnostic_debug +| 20 = @diagnostic_info +| 30 = @diagnostic_warning +| 40 = @diagnostic_error +; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + + +// from prefix.dbscheme +#keyset[id] +locatable_locations( + int id: @locatable ref, + int location: @location_default ref +); + + +// from schema + +@element = + @extractor_step +| @locatable +| @named_crate +| @unextracted +; + +extractor_steps( + unique int id: @extractor_step, + string action: string ref, + int duration_ms: int ref +); + +#keyset[id] +extractor_step_files( + int id: @extractor_step ref, + int file: @file ref +); + +@locatable = + @ast_node +| @crate +; + +named_crates( + unique int id: @named_crate, + string name: string ref, + int crate: @crate ref +); + +@unextracted = + @missing +| @unimplemented +; + +@ast_node = + @abi +| @addressable +| @arg_list +| @asm_dir_spec +| @asm_operand +| @asm_operand_expr +| @asm_option +| @asm_piece +| @asm_reg_spec +| @assoc_item_list +| @attr +| @callable +| @expr +| @extern_item_list +| @field_list +| @for_binder +| @format_args_arg +| @generic_arg +| @generic_arg_list +| @generic_param +| @generic_param_list +| @item_list +| @label +| @let_else +| @macro_items +| @match_arm +| @match_arm_list +| @match_guard +| @meta +| @name +| @param_base +| @param_list +| @parenthesized_arg_list +| @pat +| @path +| @path_ast_node +| @path_segment +| @rename +| @ret_type_repr +| @return_type_syntax +| @source_file +| @stmt +| @stmt_list +| @struct_expr_field +| @struct_expr_field_list +| @struct_field +| @struct_pat_field +| @struct_pat_field_list +| @token +| @token_tree +| @tuple_field +| @type_bound +| @type_bound_list +| @type_repr +| @use_bound_generic_arg +| @use_bound_generic_args +| @use_tree +| @use_tree_list +| @variant_list +| @visibility +| @where_clause +| @where_pred +; + +crates( + unique int id: @crate +); + +#keyset[id] +crate_names( + int id: @crate ref, + string name: string ref +); + +#keyset[id] +crate_versions( + int id: @crate ref, + string version: string ref +); + +#keyset[id, index] +crate_cfg_options( + int id: @crate ref, + int index: int ref, + string cfg_option: string ref +); + +#keyset[id, index] +crate_named_dependencies( + int id: @crate ref, + int index: int ref, + int named_dependency: @named_crate ref +); + +missings( + unique int id: @missing +); + +unimplementeds( + unique int id: @unimplemented +); + +abis( + unique int id: @abi +); + +#keyset[id] +abi_abi_strings( + int id: @abi ref, + string abi_string: string ref +); + +@addressable = + @item +| @variant +; + +arg_lists( + unique int id: @arg_list +); + +#keyset[id, index] +arg_list_args( + int id: @arg_list ref, + int index: int ref, + int arg: @expr ref +); + +asm_dir_specs( + unique int id: @asm_dir_spec +); + +@asm_operand = + @asm_const +| @asm_label +| @asm_reg_operand +| @asm_sym +; + +asm_operand_exprs( + unique int id: @asm_operand_expr +); + +#keyset[id] +asm_operand_expr_in_exprs( + int id: @asm_operand_expr ref, + int in_expr: @expr ref +); + +#keyset[id] +asm_operand_expr_out_exprs( + int id: @asm_operand_expr ref, + int out_expr: @expr ref +); + +asm_options( + unique int id: @asm_option +); + +#keyset[id] +asm_option_is_raw( + int id: @asm_option ref +); + +@asm_piece = + @asm_clobber_abi +| @asm_operand_named +| @asm_options_list +; + +asm_reg_specs( + unique int id: @asm_reg_spec +); + +#keyset[id] +asm_reg_spec_identifiers( + int id: @asm_reg_spec ref, + int identifier: @name_ref ref +); + +assoc_item_lists( + unique int id: @assoc_item_list +); + +#keyset[id, index] +assoc_item_list_assoc_items( + int id: @assoc_item_list ref, + int index: int ref, + int assoc_item: @assoc_item ref +); + +#keyset[id, index] +assoc_item_list_attrs( + int id: @assoc_item_list ref, + int index: int ref, + int attr: @attr ref +); + +attrs( + unique int id: @attr +); + +#keyset[id] +attr_meta( + int id: @attr ref, + int meta: @meta ref +); + +@callable = + @closure_expr +| @function +; + +#keyset[id] +callable_param_lists( + int id: @callable ref, + int param_list: @param_list ref +); + +#keyset[id, index] +callable_attrs( + int id: @callable ref, + int index: int ref, + int attr: @attr ref +); + +@expr = + @array_expr_internal +| @asm_expr +| @await_expr +| @become_expr +| @binary_expr +| @break_expr +| @call_expr +| @cast_expr +| @closure_expr +| @continue_expr +| @field_expr +| @format_args_expr +| @if_expr +| @index_expr +| @labelable_expr +| @let_expr +| @literal_expr +| @macro_expr +| @match_expr +| @method_call_expr +| @offset_of_expr +| @paren_expr +| @path_expr_base +| @prefix_expr +| @range_expr +| @ref_expr +| @return_expr +| @struct_expr +| @try_expr +| @tuple_expr +| @underscore_expr +| @yeet_expr +| @yield_expr +; + +extern_item_lists( + unique int id: @extern_item_list +); + +#keyset[id, index] +extern_item_list_attrs( + int id: @extern_item_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +extern_item_list_extern_items( + int id: @extern_item_list ref, + int index: int ref, + int extern_item: @extern_item ref +); + +@field_list = + @struct_field_list +| @tuple_field_list +; + +for_binders( + unique int id: @for_binder +); + +#keyset[id] +for_binder_generic_param_lists( + int id: @for_binder ref, + int generic_param_list: @generic_param_list ref +); + +format_args_args( + unique int id: @format_args_arg +); + +#keyset[id] +format_args_arg_exprs( + int id: @format_args_arg ref, + int expr: @expr ref +); + +#keyset[id] +format_args_arg_names( + int id: @format_args_arg ref, + int name: @name ref +); + +@generic_arg = + @assoc_type_arg +| @const_arg +| @lifetime_arg +| @type_arg +; + +generic_arg_lists( + unique int id: @generic_arg_list +); + +#keyset[id, index] +generic_arg_list_generic_args( + int id: @generic_arg_list ref, + int index: int ref, + int generic_arg: @generic_arg ref +); + +@generic_param = + @const_param +| @lifetime_param +| @type_param +; + +generic_param_lists( + unique int id: @generic_param_list +); + +#keyset[id, index] +generic_param_list_generic_params( + int id: @generic_param_list ref, + int index: int ref, + int generic_param: @generic_param ref +); + +item_lists( + unique int id: @item_list +); + +#keyset[id, index] +item_list_attrs( + int id: @item_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +item_list_items( + int id: @item_list ref, + int index: int ref, + int item: @item ref +); + +labels( + unique int id: @label +); + +#keyset[id] +label_lifetimes( + int id: @label ref, + int lifetime: @lifetime ref +); + +let_elses( + unique int id: @let_else +); + +#keyset[id] +let_else_block_exprs( + int id: @let_else ref, + int block_expr: @block_expr ref +); + +macro_items( + unique int id: @macro_items +); + +#keyset[id, index] +macro_items_items( + int id: @macro_items ref, + int index: int ref, + int item: @item ref +); + +match_arms( + unique int id: @match_arm +); + +#keyset[id, index] +match_arm_attrs( + int id: @match_arm ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +match_arm_exprs( + int id: @match_arm ref, + int expr: @expr ref +); + +#keyset[id] +match_arm_guards( + int id: @match_arm ref, + int guard: @match_guard ref +); + +#keyset[id] +match_arm_pats( + int id: @match_arm ref, + int pat: @pat ref +); + +match_arm_lists( + unique int id: @match_arm_list +); + +#keyset[id, index] +match_arm_list_arms( + int id: @match_arm_list ref, + int index: int ref, + int arm: @match_arm ref +); + +#keyset[id, index] +match_arm_list_attrs( + int id: @match_arm_list ref, + int index: int ref, + int attr: @attr ref +); + +match_guards( + unique int id: @match_guard +); + +#keyset[id] +match_guard_conditions( + int id: @match_guard ref, + int condition: @expr ref +); + +meta( + unique int id: @meta +); + +#keyset[id] +meta_exprs( + int id: @meta ref, + int expr: @expr ref +); + +#keyset[id] +meta_is_unsafe( + int id: @meta ref +); + +#keyset[id] +meta_paths( + int id: @meta ref, + int path: @path ref +); + +#keyset[id] +meta_token_trees( + int id: @meta ref, + int token_tree: @token_tree ref +); + +names( + unique int id: @name +); + +#keyset[id] +name_texts( + int id: @name ref, + string text: string ref +); + +@param_base = + @param +| @self_param +; + +#keyset[id, index] +param_base_attrs( + int id: @param_base ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +param_base_type_reprs( + int id: @param_base ref, + int type_repr: @type_repr ref +); + +param_lists( + unique int id: @param_list +); + +#keyset[id, index] +param_list_params( + int id: @param_list ref, + int index: int ref, + int param: @param ref +); + +#keyset[id] +param_list_self_params( + int id: @param_list ref, + int self_param: @self_param ref +); + +parenthesized_arg_lists( + unique int id: @parenthesized_arg_list +); + +#keyset[id, index] +parenthesized_arg_list_type_args( + int id: @parenthesized_arg_list ref, + int index: int ref, + int type_arg: @type_arg ref +); + +@pat = + @box_pat +| @const_block_pat +| @ident_pat +| @literal_pat +| @macro_pat +| @or_pat +| @paren_pat +| @path_pat +| @range_pat +| @ref_pat +| @rest_pat +| @slice_pat +| @struct_pat +| @tuple_pat +| @tuple_struct_pat +| @wildcard_pat +; + +paths( + unique int id: @path +); + +#keyset[id] +path_qualifiers( + int id: @path ref, + int qualifier: @path ref +); + +#keyset[id] +path_segments_( + int id: @path ref, + int segment: @path_segment ref +); + +@path_ast_node = + @path_expr +| @path_pat +| @struct_expr +| @struct_pat +| @tuple_struct_pat +; + +#keyset[id] +path_ast_node_paths( + int id: @path_ast_node ref, + int path: @path ref +); + +path_segments( + unique int id: @path_segment +); + +#keyset[id] +path_segment_generic_arg_lists( + int id: @path_segment ref, + int generic_arg_list: @generic_arg_list ref +); + +#keyset[id] +path_segment_identifiers( + int id: @path_segment ref, + int identifier: @name_ref ref +); + +#keyset[id] +path_segment_parenthesized_arg_lists( + int id: @path_segment ref, + int parenthesized_arg_list: @parenthesized_arg_list ref +); + +#keyset[id] +path_segment_ret_types( + int id: @path_segment ref, + int ret_type: @ret_type_repr ref +); + +#keyset[id] +path_segment_return_type_syntaxes( + int id: @path_segment ref, + int return_type_syntax: @return_type_syntax ref +); + +#keyset[id] +path_segment_type_reprs( + int id: @path_segment ref, + int type_repr: @type_repr ref +); + +#keyset[id] +path_segment_trait_type_reprs( + int id: @path_segment ref, + int trait_type_repr: @path_type_repr ref +); + +renames( + unique int id: @rename +); + +#keyset[id] +rename_names( + int id: @rename ref, + int name: @name ref +); + +ret_type_reprs( + unique int id: @ret_type_repr +); + +#keyset[id] +ret_type_repr_type_reprs( + int id: @ret_type_repr ref, + int type_repr: @type_repr ref +); + +return_type_syntaxes( + unique int id: @return_type_syntax +); + +source_files( + unique int id: @source_file +); + +#keyset[id, index] +source_file_attrs( + int id: @source_file ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +source_file_items( + int id: @source_file ref, + int index: int ref, + int item: @item ref +); + +@stmt = + @expr_stmt +| @item +| @let_stmt +; + +stmt_lists( + unique int id: @stmt_list +); + +#keyset[id, index] +stmt_list_attrs( + int id: @stmt_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +stmt_list_statements( + int id: @stmt_list ref, + int index: int ref, + int statement: @stmt ref +); + +#keyset[id] +stmt_list_tail_exprs( + int id: @stmt_list ref, + int tail_expr: @expr ref +); + +struct_expr_fields( + unique int id: @struct_expr_field +); + +#keyset[id, index] +struct_expr_field_attrs( + int id: @struct_expr_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +struct_expr_field_exprs( + int id: @struct_expr_field ref, + int expr: @expr ref +); + +#keyset[id] +struct_expr_field_identifiers( + int id: @struct_expr_field ref, + int identifier: @name_ref ref +); + +struct_expr_field_lists( + unique int id: @struct_expr_field_list +); + +#keyset[id, index] +struct_expr_field_list_attrs( + int id: @struct_expr_field_list ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +struct_expr_field_list_fields( + int id: @struct_expr_field_list ref, + int index: int ref, + int field: @struct_expr_field ref +); + +#keyset[id] +struct_expr_field_list_spreads( + int id: @struct_expr_field_list ref, + int spread: @expr ref +); + +struct_fields( + unique int id: @struct_field +); + +#keyset[id, index] +struct_field_attrs( + int id: @struct_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +struct_field_defaults( + int id: @struct_field ref, + int default: @expr ref +); + +#keyset[id] +struct_field_is_unsafe( + int id: @struct_field ref +); + +#keyset[id] +struct_field_names( + int id: @struct_field ref, + int name: @name ref +); + +#keyset[id] +struct_field_type_reprs( + int id: @struct_field ref, + int type_repr: @type_repr ref +); + +#keyset[id] +struct_field_visibilities( + int id: @struct_field ref, + int visibility: @visibility ref +); + +struct_pat_fields( + unique int id: @struct_pat_field +); + +#keyset[id, index] +struct_pat_field_attrs( + int id: @struct_pat_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +struct_pat_field_identifiers( + int id: @struct_pat_field ref, + int identifier: @name_ref ref +); + +#keyset[id] +struct_pat_field_pats( + int id: @struct_pat_field ref, + int pat: @pat ref +); + +struct_pat_field_lists( + unique int id: @struct_pat_field_list +); + +#keyset[id, index] +struct_pat_field_list_fields( + int id: @struct_pat_field_list ref, + int index: int ref, + int field: @struct_pat_field ref +); + +#keyset[id] +struct_pat_field_list_rest_pats( + int id: @struct_pat_field_list ref, + int rest_pat: @rest_pat ref +); + +@token = + @comment +; + +token_trees( + unique int id: @token_tree +); + +tuple_fields( + unique int id: @tuple_field +); + +#keyset[id, index] +tuple_field_attrs( + int id: @tuple_field ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +tuple_field_type_reprs( + int id: @tuple_field ref, + int type_repr: @type_repr ref +); + +#keyset[id] +tuple_field_visibilities( + int id: @tuple_field ref, + int visibility: @visibility ref +); + +type_bounds( + unique int id: @type_bound +); + +#keyset[id] +type_bound_for_binders( + int id: @type_bound ref, + int for_binder: @for_binder ref +); + +#keyset[id] +type_bound_is_async( + int id: @type_bound ref +); + +#keyset[id] +type_bound_is_const( + int id: @type_bound ref +); + +#keyset[id] +type_bound_lifetimes( + int id: @type_bound ref, + int lifetime: @lifetime ref +); + +#keyset[id] +type_bound_type_reprs( + int id: @type_bound ref, + int type_repr: @type_repr ref +); + +#keyset[id] +type_bound_use_bound_generic_args( + int id: @type_bound ref, + int use_bound_generic_args: @use_bound_generic_args ref +); + +type_bound_lists( + unique int id: @type_bound_list +); + +#keyset[id, index] +type_bound_list_bounds( + int id: @type_bound_list ref, + int index: int ref, + int bound: @type_bound ref +); + +@type_repr = + @array_type_repr +| @dyn_trait_type_repr +| @fn_ptr_type_repr +| @for_type_repr +| @impl_trait_type_repr +| @infer_type_repr +| @macro_type_repr +| @never_type_repr +| @paren_type_repr +| @path_type_repr +| @ptr_type_repr +| @ref_type_repr +| @slice_type_repr +| @tuple_type_repr +; + +@use_bound_generic_arg = + @lifetime +| @name_ref +; + +use_bound_generic_args( + unique int id: @use_bound_generic_args +); + +#keyset[id, index] +use_bound_generic_args_use_bound_generic_args( + int id: @use_bound_generic_args ref, + int index: int ref, + int use_bound_generic_arg: @use_bound_generic_arg ref +); + +use_trees( + unique int id: @use_tree +); + +#keyset[id] +use_tree_is_glob( + int id: @use_tree ref +); + +#keyset[id] +use_tree_paths( + int id: @use_tree ref, + int path: @path ref +); + +#keyset[id] +use_tree_renames( + int id: @use_tree ref, + int rename: @rename ref +); + +#keyset[id] +use_tree_use_tree_lists( + int id: @use_tree ref, + int use_tree_list: @use_tree_list ref +); + +use_tree_lists( + unique int id: @use_tree_list +); + +#keyset[id, index] +use_tree_list_use_trees( + int id: @use_tree_list ref, + int index: int ref, + int use_tree: @use_tree ref +); + +variant_lists( + unique int id: @variant_list +); + +#keyset[id, index] +variant_list_variants( + int id: @variant_list ref, + int index: int ref, + int variant: @variant ref +); + +visibilities( + unique int id: @visibility +); + +#keyset[id] +visibility_paths( + int id: @visibility ref, + int path: @path ref +); + +where_clauses( + unique int id: @where_clause +); + +#keyset[id, index] +where_clause_predicates( + int id: @where_clause ref, + int index: int ref, + int predicate: @where_pred ref +); + +where_preds( + unique int id: @where_pred +); + +#keyset[id] +where_pred_for_binders( + int id: @where_pred ref, + int for_binder: @for_binder ref +); + +#keyset[id] +where_pred_lifetimes( + int id: @where_pred ref, + int lifetime: @lifetime ref +); + +#keyset[id] +where_pred_type_reprs( + int id: @where_pred ref, + int type_repr: @type_repr ref +); + +#keyset[id] +where_pred_type_bound_lists( + int id: @where_pred ref, + int type_bound_list: @type_bound_list ref +); + +array_expr_internals( + unique int id: @array_expr_internal +); + +#keyset[id, index] +array_expr_internal_attrs( + int id: @array_expr_internal ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +array_expr_internal_exprs( + int id: @array_expr_internal ref, + int index: int ref, + int expr: @expr ref +); + +#keyset[id] +array_expr_internal_is_semicolon( + int id: @array_expr_internal ref +); + +array_type_reprs( + unique int id: @array_type_repr +); + +#keyset[id] +array_type_repr_const_args( + int id: @array_type_repr ref, + int const_arg: @const_arg ref +); + +#keyset[id] +array_type_repr_element_type_reprs( + int id: @array_type_repr ref, + int element_type_repr: @type_repr ref +); + +asm_clobber_abis( + unique int id: @asm_clobber_abi +); + +asm_consts( + unique int id: @asm_const +); + +#keyset[id] +asm_const_exprs( + int id: @asm_const ref, + int expr: @expr ref +); + +#keyset[id] +asm_const_is_const( + int id: @asm_const ref +); + +asm_labels( + unique int id: @asm_label +); + +#keyset[id] +asm_label_block_exprs( + int id: @asm_label ref, + int block_expr: @block_expr ref +); + +asm_operand_nameds( + unique int id: @asm_operand_named +); + +#keyset[id] +asm_operand_named_asm_operands( + int id: @asm_operand_named ref, + int asm_operand: @asm_operand ref +); + +#keyset[id] +asm_operand_named_names( + int id: @asm_operand_named ref, + int name: @name ref +); + +asm_options_lists( + unique int id: @asm_options_list +); + +#keyset[id, index] +asm_options_list_asm_options( + int id: @asm_options_list ref, + int index: int ref, + int asm_option: @asm_option ref +); + +asm_reg_operands( + unique int id: @asm_reg_operand +); + +#keyset[id] +asm_reg_operand_asm_dir_specs( + int id: @asm_reg_operand ref, + int asm_dir_spec: @asm_dir_spec ref +); + +#keyset[id] +asm_reg_operand_asm_operand_exprs( + int id: @asm_reg_operand ref, + int asm_operand_expr: @asm_operand_expr ref +); + +#keyset[id] +asm_reg_operand_asm_reg_specs( + int id: @asm_reg_operand ref, + int asm_reg_spec: @asm_reg_spec ref +); + +asm_syms( + unique int id: @asm_sym +); + +#keyset[id] +asm_sym_paths( + int id: @asm_sym ref, + int path: @path ref +); + +assoc_type_args( + unique int id: @assoc_type_arg +); + +#keyset[id] +assoc_type_arg_const_args( + int id: @assoc_type_arg ref, + int const_arg: @const_arg ref +); + +#keyset[id] +assoc_type_arg_generic_arg_lists( + int id: @assoc_type_arg ref, + int generic_arg_list: @generic_arg_list ref +); + +#keyset[id] +assoc_type_arg_identifiers( + int id: @assoc_type_arg ref, + int identifier: @name_ref ref +); + +#keyset[id] +assoc_type_arg_param_lists( + int id: @assoc_type_arg ref, + int param_list: @param_list ref +); + +#keyset[id] +assoc_type_arg_ret_types( + int id: @assoc_type_arg ref, + int ret_type: @ret_type_repr ref +); + +#keyset[id] +assoc_type_arg_return_type_syntaxes( + int id: @assoc_type_arg ref, + int return_type_syntax: @return_type_syntax ref +); + +#keyset[id] +assoc_type_arg_type_reprs( + int id: @assoc_type_arg ref, + int type_repr: @type_repr ref +); + +#keyset[id] +assoc_type_arg_type_bound_lists( + int id: @assoc_type_arg ref, + int type_bound_list: @type_bound_list ref +); + +await_exprs( + unique int id: @await_expr +); + +#keyset[id, index] +await_expr_attrs( + int id: @await_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +await_expr_exprs( + int id: @await_expr ref, + int expr: @expr ref +); + +become_exprs( + unique int id: @become_expr +); + +#keyset[id, index] +become_expr_attrs( + int id: @become_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +become_expr_exprs( + int id: @become_expr ref, + int expr: @expr ref +); + +binary_exprs( + unique int id: @binary_expr +); + +#keyset[id, index] +binary_expr_attrs( + int id: @binary_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +binary_expr_lhs( + int id: @binary_expr ref, + int lhs: @expr ref +); + +#keyset[id] +binary_expr_operator_names( + int id: @binary_expr ref, + string operator_name: string ref +); + +#keyset[id] +binary_expr_rhs( + int id: @binary_expr ref, + int rhs: @expr ref +); + +box_pats( + unique int id: @box_pat +); + +#keyset[id] +box_pat_pats( + int id: @box_pat ref, + int pat: @pat ref +); + +break_exprs( + unique int id: @break_expr +); + +#keyset[id, index] +break_expr_attrs( + int id: @break_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +break_expr_exprs( + int id: @break_expr ref, + int expr: @expr ref +); + +#keyset[id] +break_expr_lifetimes( + int id: @break_expr ref, + int lifetime: @lifetime ref +); + +call_exprs( + unique int id: @call_expr +); + +#keyset[id] +call_expr_arg_lists( + int id: @call_expr ref, + int arg_list: @arg_list ref +); + +#keyset[id, index] +call_expr_attrs( + int id: @call_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +call_expr_functions( + int id: @call_expr ref, + int function: @expr ref +); + +cast_exprs( + unique int id: @cast_expr +); + +#keyset[id, index] +cast_expr_attrs( + int id: @cast_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +cast_expr_exprs( + int id: @cast_expr ref, + int expr: @expr ref +); + +#keyset[id] +cast_expr_type_reprs( + int id: @cast_expr ref, + int type_repr: @type_repr ref +); + +closure_exprs( + unique int id: @closure_expr +); + +#keyset[id] +closure_expr_closure_bodies( + int id: @closure_expr ref, + int closure_body: @expr ref +); + +#keyset[id] +closure_expr_for_binders( + int id: @closure_expr ref, + int for_binder: @for_binder ref +); + +#keyset[id] +closure_expr_is_async( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_const( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_gen( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_move( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_is_static( + int id: @closure_expr ref +); + +#keyset[id] +closure_expr_ret_types( + int id: @closure_expr ref, + int ret_type: @ret_type_repr ref +); + +comments( + unique int id: @comment, + int parent: @ast_node ref, + string text: string ref +); + +const_args( + unique int id: @const_arg +); + +#keyset[id] +const_arg_exprs( + int id: @const_arg ref, + int expr: @expr ref +); + +const_block_pats( + unique int id: @const_block_pat +); + +#keyset[id] +const_block_pat_block_exprs( + int id: @const_block_pat ref, + int block_expr: @block_expr ref +); + +#keyset[id] +const_block_pat_is_const( + int id: @const_block_pat ref +); + +const_params( + unique int id: @const_param +); + +#keyset[id, index] +const_param_attrs( + int id: @const_param ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +const_param_default_vals( + int id: @const_param ref, + int default_val: @const_arg ref +); + +#keyset[id] +const_param_is_const( + int id: @const_param ref +); + +#keyset[id] +const_param_names( + int id: @const_param ref, + int name: @name ref +); + +#keyset[id] +const_param_type_reprs( + int id: @const_param ref, + int type_repr: @type_repr ref +); + +continue_exprs( + unique int id: @continue_expr +); + +#keyset[id, index] +continue_expr_attrs( + int id: @continue_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +continue_expr_lifetimes( + int id: @continue_expr ref, + int lifetime: @lifetime ref +); + +dyn_trait_type_reprs( + unique int id: @dyn_trait_type_repr +); + +#keyset[id] +dyn_trait_type_repr_type_bound_lists( + int id: @dyn_trait_type_repr ref, + int type_bound_list: @type_bound_list ref +); + +expr_stmts( + unique int id: @expr_stmt +); + +#keyset[id] +expr_stmt_exprs( + int id: @expr_stmt ref, + int expr: @expr ref +); + +field_exprs( + unique int id: @field_expr +); + +#keyset[id, index] +field_expr_attrs( + int id: @field_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +field_expr_containers( + int id: @field_expr ref, + int container: @expr ref +); + +#keyset[id] +field_expr_identifiers( + int id: @field_expr ref, + int identifier: @name_ref ref +); + +fn_ptr_type_reprs( + unique int id: @fn_ptr_type_repr +); + +#keyset[id] +fn_ptr_type_repr_abis( + int id: @fn_ptr_type_repr ref, + int abi: @abi ref +); + +#keyset[id] +fn_ptr_type_repr_is_async( + int id: @fn_ptr_type_repr ref +); + +#keyset[id] +fn_ptr_type_repr_is_const( + int id: @fn_ptr_type_repr ref +); + +#keyset[id] +fn_ptr_type_repr_is_unsafe( + int id: @fn_ptr_type_repr ref +); + +#keyset[id] +fn_ptr_type_repr_param_lists( + int id: @fn_ptr_type_repr ref, + int param_list: @param_list ref +); + +#keyset[id] +fn_ptr_type_repr_ret_types( + int id: @fn_ptr_type_repr ref, + int ret_type: @ret_type_repr ref +); + +for_type_reprs( + unique int id: @for_type_repr +); + +#keyset[id] +for_type_repr_for_binders( + int id: @for_type_repr ref, + int for_binder: @for_binder ref +); + +#keyset[id] +for_type_repr_type_reprs( + int id: @for_type_repr ref, + int type_repr: @type_repr ref +); + +format_args_exprs( + unique int id: @format_args_expr +); + +#keyset[id, index] +format_args_expr_args( + int id: @format_args_expr ref, + int index: int ref, + int arg: @format_args_arg ref +); + +#keyset[id, index] +format_args_expr_attrs( + int id: @format_args_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +format_args_expr_templates( + int id: @format_args_expr ref, + int template: @expr ref +); + +ident_pats( + unique int id: @ident_pat +); + +#keyset[id, index] +ident_pat_attrs( + int id: @ident_pat ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +ident_pat_is_mut( + int id: @ident_pat ref +); + +#keyset[id] +ident_pat_is_ref( + int id: @ident_pat ref +); + +#keyset[id] +ident_pat_names( + int id: @ident_pat ref, + int name: @name ref +); + +#keyset[id] +ident_pat_pats( + int id: @ident_pat ref, + int pat: @pat ref +); + +if_exprs( + unique int id: @if_expr +); + +#keyset[id, index] +if_expr_attrs( + int id: @if_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +if_expr_conditions( + int id: @if_expr ref, + int condition: @expr ref +); + +#keyset[id] +if_expr_elses( + int id: @if_expr ref, + int else: @expr ref +); + +#keyset[id] +if_expr_thens( + int id: @if_expr ref, + int then: @block_expr ref +); + +impl_trait_type_reprs( + unique int id: @impl_trait_type_repr +); + +#keyset[id] +impl_trait_type_repr_type_bound_lists( + int id: @impl_trait_type_repr ref, + int type_bound_list: @type_bound_list ref +); + +index_exprs( + unique int id: @index_expr +); + +#keyset[id, index] +index_expr_attrs( + int id: @index_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +index_expr_bases( + int id: @index_expr ref, + int base: @expr ref +); + +#keyset[id] +index_expr_indices( + int id: @index_expr ref, + int index: @expr ref +); + +infer_type_reprs( + unique int id: @infer_type_repr +); + +@item = + @asm_expr +| @assoc_item +| @extern_block +| @extern_crate +| @extern_item +| @impl +| @macro_def +| @macro_rules +| @module +| @trait +| @trait_alias +| @type_item +| @use +; + +#keyset[id] +item_attribute_macro_expansions( + int id: @item ref, + int attribute_macro_expansion: @macro_items ref +); + +@labelable_expr = + @block_expr +| @looping_expr +; + +#keyset[id] +labelable_expr_labels( + int id: @labelable_expr ref, + int label: @label ref +); + +let_exprs( + unique int id: @let_expr +); + +#keyset[id, index] +let_expr_attrs( + int id: @let_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +let_expr_scrutinees( + int id: @let_expr ref, + int scrutinee: @expr ref +); + +#keyset[id] +let_expr_pats( + int id: @let_expr ref, + int pat: @pat ref +); + +let_stmts( + unique int id: @let_stmt +); + +#keyset[id, index] +let_stmt_attrs( + int id: @let_stmt ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +let_stmt_initializers( + int id: @let_stmt ref, + int initializer: @expr ref +); + +#keyset[id] +let_stmt_let_elses( + int id: @let_stmt ref, + int let_else: @let_else ref +); + +#keyset[id] +let_stmt_pats( + int id: @let_stmt ref, + int pat: @pat ref +); + +#keyset[id] +let_stmt_type_reprs( + int id: @let_stmt ref, + int type_repr: @type_repr ref +); + +lifetimes( + unique int id: @lifetime +); + +#keyset[id] +lifetime_texts( + int id: @lifetime ref, + string text: string ref +); + +lifetime_args( + unique int id: @lifetime_arg +); + +#keyset[id] +lifetime_arg_lifetimes( + int id: @lifetime_arg ref, + int lifetime: @lifetime ref +); + +lifetime_params( + unique int id: @lifetime_param +); + +#keyset[id, index] +lifetime_param_attrs( + int id: @lifetime_param ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +lifetime_param_lifetimes( + int id: @lifetime_param ref, + int lifetime: @lifetime ref +); + +#keyset[id] +lifetime_param_type_bound_lists( + int id: @lifetime_param ref, + int type_bound_list: @type_bound_list ref +); + +literal_exprs( + unique int id: @literal_expr +); + +#keyset[id, index] +literal_expr_attrs( + int id: @literal_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +literal_expr_text_values( + int id: @literal_expr ref, + string text_value: string ref +); + +literal_pats( + unique int id: @literal_pat +); + +#keyset[id] +literal_pat_literals( + int id: @literal_pat ref, + int literal: @literal_expr ref +); + +macro_exprs( + unique int id: @macro_expr +); + +#keyset[id] +macro_expr_macro_calls( + int id: @macro_expr ref, + int macro_call: @macro_call ref +); + +macro_pats( + unique int id: @macro_pat +); + +#keyset[id] +macro_pat_macro_calls( + int id: @macro_pat ref, + int macro_call: @macro_call ref +); + +macro_type_reprs( + unique int id: @macro_type_repr +); + +#keyset[id] +macro_type_repr_macro_calls( + int id: @macro_type_repr ref, + int macro_call: @macro_call ref +); + +match_exprs( + unique int id: @match_expr +); + +#keyset[id, index] +match_expr_attrs( + int id: @match_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +match_expr_scrutinees( + int id: @match_expr ref, + int scrutinee: @expr ref +); + +#keyset[id] +match_expr_match_arm_lists( + int id: @match_expr ref, + int match_arm_list: @match_arm_list ref +); + +method_call_exprs( + unique int id: @method_call_expr +); + +#keyset[id] +method_call_expr_arg_lists( + int id: @method_call_expr ref, + int arg_list: @arg_list ref +); + +#keyset[id, index] +method_call_expr_attrs( + int id: @method_call_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +method_call_expr_generic_arg_lists( + int id: @method_call_expr ref, + int generic_arg_list: @generic_arg_list ref +); + +#keyset[id] +method_call_expr_identifiers( + int id: @method_call_expr ref, + int identifier: @name_ref ref +); + +#keyset[id] +method_call_expr_receivers( + int id: @method_call_expr ref, + int receiver: @expr ref +); + +name_refs( + unique int id: @name_ref +); + +#keyset[id] +name_ref_texts( + int id: @name_ref ref, + string text: string ref +); + +never_type_reprs( + unique int id: @never_type_repr +); + +offset_of_exprs( + unique int id: @offset_of_expr +); + +#keyset[id, index] +offset_of_expr_attrs( + int id: @offset_of_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +offset_of_expr_fields( + int id: @offset_of_expr ref, + int index: int ref, + int field: @name_ref ref +); + +#keyset[id] +offset_of_expr_type_reprs( + int id: @offset_of_expr ref, + int type_repr: @type_repr ref +); + +or_pats( + unique int id: @or_pat +); + +#keyset[id, index] +or_pat_pats( + int id: @or_pat ref, + int index: int ref, + int pat: @pat ref +); + +params( + unique int id: @param +); + +#keyset[id] +param_pats( + int id: @param ref, + int pat: @pat ref +); + +paren_exprs( + unique int id: @paren_expr +); + +#keyset[id, index] +paren_expr_attrs( + int id: @paren_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +paren_expr_exprs( + int id: @paren_expr ref, + int expr: @expr ref +); + +paren_pats( + unique int id: @paren_pat +); + +#keyset[id] +paren_pat_pats( + int id: @paren_pat ref, + int pat: @pat ref +); + +paren_type_reprs( + unique int id: @paren_type_repr +); + +#keyset[id] +paren_type_repr_type_reprs( + int id: @paren_type_repr ref, + int type_repr: @type_repr ref +); + +@path_expr_base = + @path_expr +; + +path_pats( + unique int id: @path_pat +); + +path_type_reprs( + unique int id: @path_type_repr +); + +#keyset[id] +path_type_repr_paths( + int id: @path_type_repr ref, + int path: @path ref +); + +prefix_exprs( + unique int id: @prefix_expr +); + +#keyset[id, index] +prefix_expr_attrs( + int id: @prefix_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +prefix_expr_exprs( + int id: @prefix_expr ref, + int expr: @expr ref +); + +#keyset[id] +prefix_expr_operator_names( + int id: @prefix_expr ref, + string operator_name: string ref +); + +ptr_type_reprs( + unique int id: @ptr_type_repr +); + +#keyset[id] +ptr_type_repr_is_const( + int id: @ptr_type_repr ref +); + +#keyset[id] +ptr_type_repr_is_mut( + int id: @ptr_type_repr ref +); + +#keyset[id] +ptr_type_repr_type_reprs( + int id: @ptr_type_repr ref, + int type_repr: @type_repr ref +); + +range_exprs( + unique int id: @range_expr +); + +#keyset[id, index] +range_expr_attrs( + int id: @range_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +range_expr_ends( + int id: @range_expr ref, + int end: @expr ref +); + +#keyset[id] +range_expr_operator_names( + int id: @range_expr ref, + string operator_name: string ref +); + +#keyset[id] +range_expr_starts( + int id: @range_expr ref, + int start: @expr ref +); + +range_pats( + unique int id: @range_pat +); + +#keyset[id] +range_pat_ends( + int id: @range_pat ref, + int end: @pat ref +); + +#keyset[id] +range_pat_operator_names( + int id: @range_pat ref, + string operator_name: string ref +); + +#keyset[id] +range_pat_starts( + int id: @range_pat ref, + int start: @pat ref +); + +ref_exprs( + unique int id: @ref_expr +); + +#keyset[id, index] +ref_expr_attrs( + int id: @ref_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +ref_expr_exprs( + int id: @ref_expr ref, + int expr: @expr ref +); + +#keyset[id] +ref_expr_is_const( + int id: @ref_expr ref +); + +#keyset[id] +ref_expr_is_mut( + int id: @ref_expr ref +); + +#keyset[id] +ref_expr_is_raw( + int id: @ref_expr ref +); + +ref_pats( + unique int id: @ref_pat +); + +#keyset[id] +ref_pat_is_mut( + int id: @ref_pat ref +); + +#keyset[id] +ref_pat_pats( + int id: @ref_pat ref, + int pat: @pat ref +); + +ref_type_reprs( + unique int id: @ref_type_repr +); + +#keyset[id] +ref_type_repr_is_mut( + int id: @ref_type_repr ref +); + +#keyset[id] +ref_type_repr_lifetimes( + int id: @ref_type_repr ref, + int lifetime: @lifetime ref +); + +#keyset[id] +ref_type_repr_type_reprs( + int id: @ref_type_repr ref, + int type_repr: @type_repr ref +); + +rest_pats( + unique int id: @rest_pat +); + +#keyset[id, index] +rest_pat_attrs( + int id: @rest_pat ref, + int index: int ref, + int attr: @attr ref +); + +return_exprs( + unique int id: @return_expr +); + +#keyset[id, index] +return_expr_attrs( + int id: @return_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +return_expr_exprs( + int id: @return_expr ref, + int expr: @expr ref +); + +self_params( + unique int id: @self_param +); + +#keyset[id] +self_param_is_ref( + int id: @self_param ref +); + +#keyset[id] +self_param_is_mut( + int id: @self_param ref +); + +#keyset[id] +self_param_lifetimes( + int id: @self_param ref, + int lifetime: @lifetime ref +); + +#keyset[id] +self_param_names( + int id: @self_param ref, + int name: @name ref +); + +slice_pats( + unique int id: @slice_pat +); + +#keyset[id, index] +slice_pat_pats( + int id: @slice_pat ref, + int index: int ref, + int pat: @pat ref +); + +slice_type_reprs( + unique int id: @slice_type_repr +); + +#keyset[id] +slice_type_repr_type_reprs( + int id: @slice_type_repr ref, + int type_repr: @type_repr ref +); + +struct_exprs( + unique int id: @struct_expr +); + +#keyset[id] +struct_expr_struct_expr_field_lists( + int id: @struct_expr ref, + int struct_expr_field_list: @struct_expr_field_list ref +); + +struct_field_lists( + unique int id: @struct_field_list +); + +#keyset[id, index] +struct_field_list_fields( + int id: @struct_field_list ref, + int index: int ref, + int field: @struct_field ref +); + +struct_pats( + unique int id: @struct_pat +); + +#keyset[id] +struct_pat_struct_pat_field_lists( + int id: @struct_pat ref, + int struct_pat_field_list: @struct_pat_field_list ref +); + +try_exprs( + unique int id: @try_expr +); + +#keyset[id, index] +try_expr_attrs( + int id: @try_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +try_expr_exprs( + int id: @try_expr ref, + int expr: @expr ref +); + +tuple_exprs( + unique int id: @tuple_expr +); + +#keyset[id, index] +tuple_expr_attrs( + int id: @tuple_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +tuple_expr_fields( + int id: @tuple_expr ref, + int index: int ref, + int field: @expr ref +); + +tuple_field_lists( + unique int id: @tuple_field_list +); + +#keyset[id, index] +tuple_field_list_fields( + int id: @tuple_field_list ref, + int index: int ref, + int field: @tuple_field ref +); + +tuple_pats( + unique int id: @tuple_pat +); + +#keyset[id, index] +tuple_pat_fields( + int id: @tuple_pat ref, + int index: int ref, + int field: @pat ref +); + +tuple_struct_pats( + unique int id: @tuple_struct_pat +); + +#keyset[id, index] +tuple_struct_pat_fields( + int id: @tuple_struct_pat ref, + int index: int ref, + int field: @pat ref +); + +tuple_type_reprs( + unique int id: @tuple_type_repr +); + +#keyset[id, index] +tuple_type_repr_fields( + int id: @tuple_type_repr ref, + int index: int ref, + int field: @type_repr ref +); + +type_args( + unique int id: @type_arg +); + +#keyset[id] +type_arg_type_reprs( + int id: @type_arg ref, + int type_repr: @type_repr ref +); + +type_params( + unique int id: @type_param +); + +#keyset[id, index] +type_param_attrs( + int id: @type_param ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +type_param_default_types( + int id: @type_param ref, + int default_type: @type_repr ref +); + +#keyset[id] +type_param_names( + int id: @type_param ref, + int name: @name ref +); + +#keyset[id] +type_param_type_bound_lists( + int id: @type_param ref, + int type_bound_list: @type_bound_list ref +); + +underscore_exprs( + unique int id: @underscore_expr +); + +#keyset[id, index] +underscore_expr_attrs( + int id: @underscore_expr ref, + int index: int ref, + int attr: @attr ref +); + +variants( + unique int id: @variant +); + +#keyset[id, index] +variant_attrs( + int id: @variant ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +variant_discriminants( + int id: @variant ref, + int discriminant: @expr ref +); + +#keyset[id] +variant_field_lists( + int id: @variant ref, + int field_list: @field_list ref +); + +#keyset[id] +variant_names( + int id: @variant ref, + int name: @name ref +); + +#keyset[id] +variant_visibilities( + int id: @variant ref, + int visibility: @visibility ref +); + +wildcard_pats( + unique int id: @wildcard_pat +); + +yeet_exprs( + unique int id: @yeet_expr +); + +#keyset[id, index] +yeet_expr_attrs( + int id: @yeet_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +yeet_expr_exprs( + int id: @yeet_expr ref, + int expr: @expr ref +); + +yield_exprs( + unique int id: @yield_expr +); + +#keyset[id, index] +yield_expr_attrs( + int id: @yield_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +yield_expr_exprs( + int id: @yield_expr ref, + int expr: @expr ref +); + +asm_exprs( + unique int id: @asm_expr +); + +#keyset[id, index] +asm_expr_asm_pieces( + int id: @asm_expr ref, + int index: int ref, + int asm_piece: @asm_piece ref +); + +#keyset[id, index] +asm_expr_attrs( + int id: @asm_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id, index] +asm_expr_templates( + int id: @asm_expr ref, + int index: int ref, + int template: @expr ref +); + +@assoc_item = + @const +| @function +| @macro_call +| @type_alias +; + +block_exprs( + unique int id: @block_expr +); + +#keyset[id, index] +block_expr_attrs( + int id: @block_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +block_expr_is_async( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_const( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_gen( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_move( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_try( + int id: @block_expr ref +); + +#keyset[id] +block_expr_is_unsafe( + int id: @block_expr ref +); + +#keyset[id] +block_expr_stmt_lists( + int id: @block_expr ref, + int stmt_list: @stmt_list ref +); + +extern_blocks( + unique int id: @extern_block +); + +#keyset[id] +extern_block_abis( + int id: @extern_block ref, + int abi: @abi ref +); + +#keyset[id, index] +extern_block_attrs( + int id: @extern_block ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +extern_block_extern_item_lists( + int id: @extern_block ref, + int extern_item_list: @extern_item_list ref +); + +#keyset[id] +extern_block_is_unsafe( + int id: @extern_block ref +); + +extern_crates( + unique int id: @extern_crate +); + +#keyset[id, index] +extern_crate_attrs( + int id: @extern_crate ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +extern_crate_identifiers( + int id: @extern_crate ref, + int identifier: @name_ref ref +); + +#keyset[id] +extern_crate_renames( + int id: @extern_crate ref, + int rename: @rename ref +); + +#keyset[id] +extern_crate_visibilities( + int id: @extern_crate ref, + int visibility: @visibility ref +); + +@extern_item = + @function +| @macro_call +| @static +| @type_alias +; + +impls( + unique int id: @impl +); + +#keyset[id] +impl_assoc_item_lists( + int id: @impl ref, + int assoc_item_list: @assoc_item_list ref +); + +#keyset[id, index] +impl_attrs( + int id: @impl ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +impl_generic_param_lists( + int id: @impl ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +impl_is_const( + int id: @impl ref +); + +#keyset[id] +impl_is_default( + int id: @impl ref +); + +#keyset[id] +impl_is_unsafe( + int id: @impl ref +); + +#keyset[id] +impl_self_ties( + int id: @impl ref, + int self_ty: @type_repr ref +); + +#keyset[id] +impl_traits( + int id: @impl ref, + int trait: @type_repr ref +); + +#keyset[id] +impl_visibilities( + int id: @impl ref, + int visibility: @visibility ref +); + +#keyset[id] +impl_where_clauses( + int id: @impl ref, + int where_clause: @where_clause ref +); + +@looping_expr = + @for_expr +| @loop_expr +| @while_expr +; + +#keyset[id] +looping_expr_loop_bodies( + int id: @looping_expr ref, + int loop_body: @block_expr ref +); + +macro_defs( + unique int id: @macro_def +); + +#keyset[id] +macro_def_args( + int id: @macro_def ref, + int args: @token_tree ref +); + +#keyset[id, index] +macro_def_attrs( + int id: @macro_def ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +macro_def_bodies( + int id: @macro_def ref, + int body: @token_tree ref +); + +#keyset[id] +macro_def_names( + int id: @macro_def ref, + int name: @name ref +); + +#keyset[id] +macro_def_visibilities( + int id: @macro_def ref, + int visibility: @visibility ref +); + +macro_rules( + unique int id: @macro_rules +); + +#keyset[id, index] +macro_rules_attrs( + int id: @macro_rules ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +macro_rules_names( + int id: @macro_rules ref, + int name: @name ref +); + +#keyset[id] +macro_rules_token_trees( + int id: @macro_rules ref, + int token_tree: @token_tree ref +); + +#keyset[id] +macro_rules_visibilities( + int id: @macro_rules ref, + int visibility: @visibility ref +); + +modules( + unique int id: @module +); + +#keyset[id, index] +module_attrs( + int id: @module ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +module_item_lists( + int id: @module ref, + int item_list: @item_list ref +); + +#keyset[id] +module_names( + int id: @module ref, + int name: @name ref +); + +#keyset[id] +module_visibilities( + int id: @module ref, + int visibility: @visibility ref +); + +path_exprs( + unique int id: @path_expr +); + +#keyset[id, index] +path_expr_attrs( + int id: @path_expr ref, + int index: int ref, + int attr: @attr ref +); + +traits( + unique int id: @trait +); + +#keyset[id] +trait_assoc_item_lists( + int id: @trait ref, + int assoc_item_list: @assoc_item_list ref +); + +#keyset[id, index] +trait_attrs( + int id: @trait ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +trait_generic_param_lists( + int id: @trait ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +trait_is_auto( + int id: @trait ref +); + +#keyset[id] +trait_is_unsafe( + int id: @trait ref +); + +#keyset[id] +trait_names( + int id: @trait ref, + int name: @name ref +); + +#keyset[id] +trait_type_bound_lists( + int id: @trait ref, + int type_bound_list: @type_bound_list ref +); + +#keyset[id] +trait_visibilities( + int id: @trait ref, + int visibility: @visibility ref +); + +#keyset[id] +trait_where_clauses( + int id: @trait ref, + int where_clause: @where_clause ref +); + +trait_aliases( + unique int id: @trait_alias +); + +#keyset[id, index] +trait_alias_attrs( + int id: @trait_alias ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +trait_alias_generic_param_lists( + int id: @trait_alias ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +trait_alias_names( + int id: @trait_alias ref, + int name: @name ref +); + +#keyset[id] +trait_alias_type_bound_lists( + int id: @trait_alias ref, + int type_bound_list: @type_bound_list ref +); + +#keyset[id] +trait_alias_visibilities( + int id: @trait_alias ref, + int visibility: @visibility ref +); + +#keyset[id] +trait_alias_where_clauses( + int id: @trait_alias ref, + int where_clause: @where_clause ref +); + +@type_item = + @enum +| @struct +| @union +; + +#keyset[id, index] +type_item_derive_macro_expansions( + int id: @type_item ref, + int index: int ref, + int derive_macro_expansion: @macro_items ref +); + +#keyset[id, index] +type_item_attrs( + int id: @type_item ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +type_item_generic_param_lists( + int id: @type_item ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +type_item_names( + int id: @type_item ref, + int name: @name ref +); + +#keyset[id] +type_item_visibilities( + int id: @type_item ref, + int visibility: @visibility ref +); + +#keyset[id] +type_item_where_clauses( + int id: @type_item ref, + int where_clause: @where_clause ref +); + +uses( + unique int id: @use +); + +#keyset[id, index] +use_attrs( + int id: @use ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +use_use_trees( + int id: @use ref, + int use_tree: @use_tree ref +); + +#keyset[id] +use_visibilities( + int id: @use ref, + int visibility: @visibility ref +); + +consts( + unique int id: @const +); + +#keyset[id, index] +const_attrs( + int id: @const ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +const_bodies( + int id: @const ref, + int body: @expr ref +); + +#keyset[id] +const_generic_param_lists( + int id: @const ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +const_is_const( + int id: @const ref +); + +#keyset[id] +const_is_default( + int id: @const ref +); + +#keyset[id] +const_names( + int id: @const ref, + int name: @name ref +); + +#keyset[id] +const_type_reprs( + int id: @const ref, + int type_repr: @type_repr ref +); + +#keyset[id] +const_visibilities( + int id: @const ref, + int visibility: @visibility ref +); + +#keyset[id] +const_where_clauses( + int id: @const ref, + int where_clause: @where_clause ref +); + +#keyset[id] +const_has_implementation( + int id: @const ref +); + +enums( + unique int id: @enum +); + +#keyset[id] +enum_variant_lists( + int id: @enum ref, + int variant_list: @variant_list ref +); + +for_exprs( + unique int id: @for_expr +); + +#keyset[id, index] +for_expr_attrs( + int id: @for_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +for_expr_iterables( + int id: @for_expr ref, + int iterable: @expr ref +); + +#keyset[id] +for_expr_pats( + int id: @for_expr ref, + int pat: @pat ref +); + +functions( + unique int id: @function +); + +#keyset[id] +function_abis( + int id: @function ref, + int abi: @abi ref +); + +#keyset[id] +function_function_bodies( + int id: @function ref, + int function_body: @block_expr ref +); + +#keyset[id] +function_generic_param_lists( + int id: @function ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +function_is_async( + int id: @function ref +); + +#keyset[id] +function_is_const( + int id: @function ref +); + +#keyset[id] +function_is_default( + int id: @function ref +); + +#keyset[id] +function_is_gen( + int id: @function ref +); + +#keyset[id] +function_is_unsafe( + int id: @function ref +); + +#keyset[id] +function_names( + int id: @function ref, + int name: @name ref +); + +#keyset[id] +function_ret_types( + int id: @function ref, + int ret_type: @ret_type_repr ref +); + +#keyset[id] +function_visibilities( + int id: @function ref, + int visibility: @visibility ref +); + +#keyset[id] +function_where_clauses( + int id: @function ref, + int where_clause: @where_clause ref +); + +#keyset[id] +function_has_implementation( + int id: @function ref +); + +loop_exprs( + unique int id: @loop_expr +); + +#keyset[id, index] +loop_expr_attrs( + int id: @loop_expr ref, + int index: int ref, + int attr: @attr ref +); + +macro_calls( + unique int id: @macro_call +); + +#keyset[id, index] +macro_call_attrs( + int id: @macro_call ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +macro_call_paths( + int id: @macro_call ref, + int path: @path ref +); + +#keyset[id] +macro_call_token_trees( + int id: @macro_call ref, + int token_tree: @token_tree ref +); + +#keyset[id] +macro_call_macro_call_expansions( + int id: @macro_call ref, + int macro_call_expansion: @ast_node ref +); + +statics( + unique int id: @static +); + +#keyset[id, index] +static_attrs( + int id: @static ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +static_bodies( + int id: @static ref, + int body: @expr ref +); + +#keyset[id] +static_is_mut( + int id: @static ref +); + +#keyset[id] +static_is_static( + int id: @static ref +); + +#keyset[id] +static_is_unsafe( + int id: @static ref +); + +#keyset[id] +static_names( + int id: @static ref, + int name: @name ref +); + +#keyset[id] +static_type_reprs( + int id: @static ref, + int type_repr: @type_repr ref +); + +#keyset[id] +static_visibilities( + int id: @static ref, + int visibility: @visibility ref +); + +structs( + unique int id: @struct +); + +#keyset[id] +struct_field_lists_( + int id: @struct ref, + int field_list: @field_list ref +); + +type_aliases( + unique int id: @type_alias +); + +#keyset[id, index] +type_alias_attrs( + int id: @type_alias ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +type_alias_generic_param_lists( + int id: @type_alias ref, + int generic_param_list: @generic_param_list ref +); + +#keyset[id] +type_alias_is_default( + int id: @type_alias ref +); + +#keyset[id] +type_alias_names( + int id: @type_alias ref, + int name: @name ref +); + +#keyset[id] +type_alias_type_reprs( + int id: @type_alias ref, + int type_repr: @type_repr ref +); + +#keyset[id] +type_alias_type_bound_lists( + int id: @type_alias ref, + int type_bound_list: @type_bound_list ref +); + +#keyset[id] +type_alias_visibilities( + int id: @type_alias ref, + int visibility: @visibility ref +); + +#keyset[id] +type_alias_where_clauses( + int id: @type_alias ref, + int where_clause: @where_clause ref +); + +unions( + unique int id: @union +); + +#keyset[id] +union_struct_field_lists( + int id: @union ref, + int struct_field_list: @struct_field_list ref +); + +while_exprs( + unique int id: @while_expr +); + +#keyset[id, index] +while_expr_attrs( + int id: @while_expr ref, + int index: int ref, + int attr: @attr ref +); + +#keyset[id] +while_expr_conditions( + int id: @while_expr ref, + int condition: @expr ref +); diff --git a/rust/ql/lib/upgrades/90861289dd4c4d9fc029ed0fc249c1e11c5aab01/upgrade.properties b/rust/ql/lib/upgrades/90861289dd4c4d9fc029ed0fc249c1e11c5aab01/upgrade.properties new file mode 100644 index 000000000000..00fae2d3bc61 --- /dev/null +++ b/rust/ql/lib/upgrades/90861289dd4c4d9fc029ed0fc249c1e11c5aab01/upgrade.properties @@ -0,0 +1,2 @@ +description: Sections for databaseMetadata and overlayChangedFiles +compatibility: full From 49ced5fd9d8aaf58159ee0c99370d9e0fe40c89a Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 20 Jan 2026 11:57:29 +0000 Subject: [PATCH 086/433] C++: Add up/downgrade scripts --- .../old.dbscheme | 2483 +++++++++++++++++ .../semmlecode.dbscheme | 2479 ++++++++++++++++ .../upgrade.properties | 2 + .../old.dbscheme | 2479 ++++++++++++++++ .../semmlecode.cpp.dbscheme | 2483 +++++++++++++++++ .../upgrade.properties | 2 + 6 files changed, 9928 insertions(+) create mode 100644 cpp/downgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/old.dbscheme create mode 100644 cpp/downgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/semmlecode.dbscheme create mode 100644 cpp/downgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/upgrade.properties create mode 100644 cpp/ql/lib/upgrades/1402ab319d20cdc9289deb7bfc1c70f36be44d44/old.dbscheme create mode 100644 cpp/ql/lib/upgrades/1402ab319d20cdc9289deb7bfc1c70f36be44d44/semmlecode.cpp.dbscheme create mode 100644 cpp/ql/lib/upgrades/1402ab319d20cdc9289deb7bfc1c70f36be44d44/upgrade.properties diff --git a/cpp/downgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/old.dbscheme b/cpp/downgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/old.dbscheme new file mode 100644 index 000000000000..83100310bf73 --- /dev/null +++ b/cpp/downgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/old.dbscheme @@ -0,0 +1,2483 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/downgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/semmlecode.dbscheme b/cpp/downgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/semmlecode.dbscheme new file mode 100644 index 000000000000..1402ab319d20 --- /dev/null +++ b/cpp/downgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/semmlecode.dbscheme @@ -0,0 +1,2479 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/downgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/upgrade.properties b/cpp/downgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/upgrade.properties new file mode 100644 index 000000000000..00fae2d3bc61 --- /dev/null +++ b/cpp/downgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/upgrade.properties @@ -0,0 +1,2 @@ +description: Sections for databaseMetadata and overlayChangedFiles +compatibility: full diff --git a/cpp/ql/lib/upgrades/1402ab319d20cdc9289deb7bfc1c70f36be44d44/old.dbscheme b/cpp/ql/lib/upgrades/1402ab319d20cdc9289deb7bfc1c70f36be44d44/old.dbscheme new file mode 100644 index 000000000000..1402ab319d20 --- /dev/null +++ b/cpp/ql/lib/upgrades/1402ab319d20cdc9289deb7bfc1c70f36be44d44/old.dbscheme @@ -0,0 +1,2479 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/ql/lib/upgrades/1402ab319d20cdc9289deb7bfc1c70f36be44d44/semmlecode.cpp.dbscheme b/cpp/ql/lib/upgrades/1402ab319d20cdc9289deb7bfc1c70f36be44d44/semmlecode.cpp.dbscheme new file mode 100644 index 000000000000..83100310bf73 --- /dev/null +++ b/cpp/ql/lib/upgrades/1402ab319d20cdc9289deb7bfc1c70f36be44d44/semmlecode.cpp.dbscheme @@ -0,0 +1,2483 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/ql/lib/upgrades/1402ab319d20cdc9289deb7bfc1c70f36be44d44/upgrade.properties b/cpp/ql/lib/upgrades/1402ab319d20cdc9289deb7bfc1c70f36be44d44/upgrade.properties new file mode 100644 index 000000000000..00fae2d3bc61 --- /dev/null +++ b/cpp/ql/lib/upgrades/1402ab319d20cdc9289deb7bfc1c70f36be44d44/upgrade.properties @@ -0,0 +1,2 @@ +description: Sections for databaseMetadata and overlayChangedFiles +compatibility: full From 51b1ea84d3b823dbe33759acdef59eba4c44646d Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 20 Jan 2026 12:12:20 +0000 Subject: [PATCH 087/433] ql for ql: Fix formatting --- ql/extractor/src/generator.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ql/extractor/src/generator.rs b/ql/extractor/src/generator.rs index d1d5e20969c9..650e11c138b8 100644 --- a/ql/extractor/src/generator.rs +++ b/ql/extractor/src/generator.rs @@ -36,6 +36,10 @@ pub fn run(options: Options) -> std::io::Result<()> { }, ]; - generate(languages, options.dbscheme, options.library, - "run 'scripts/create-extractor-pack.sh' in ql/") + generate( + languages, + options.dbscheme, + options.library, + "run 'scripts/create-extractor-pack.sh' in ql/", + ) } From e7044061fb38af8b2c3299327554e94703113e93 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Mon, 19 Jan 2026 15:46:03 +0100 Subject: [PATCH 088/433] C++: Support C23/C++26 `#embed` preprocessor directives --- cpp/ql/lib/change-notes/2026-01-19-embed.md | 4 ++++ cpp/ql/lib/semmle/code/cpp/Preprocessor.qll | 24 +++++++++++++++++++++ cpp/ql/lib/semmlecode.cpp.dbscheme | 6 ++++++ 3 files changed, 34 insertions(+) create mode 100644 cpp/ql/lib/change-notes/2026-01-19-embed.md diff --git a/cpp/ql/lib/change-notes/2026-01-19-embed.md b/cpp/ql/lib/change-notes/2026-01-19-embed.md new file mode 100644 index 000000000000..26d495277b5c --- /dev/null +++ b/cpp/ql/lib/change-notes/2026-01-19-embed.md @@ -0,0 +1,4 @@ +--- +category: feature +--- +* Added a subclass `Embed` of `PreprocessorDirective` for C23 and C++26 `#embed` preprocessor directives. diff --git a/cpp/ql/lib/semmle/code/cpp/Preprocessor.qll b/cpp/ql/lib/semmle/code/cpp/Preprocessor.qll index 6a57f0bcae79..726670c81a6c 100644 --- a/cpp/ql/lib/semmle/code/cpp/Preprocessor.qll +++ b/cpp/ql/lib/semmle/code/cpp/Preprocessor.qll @@ -328,3 +328,27 @@ class PreprocessorPragma extends PreprocessorDirective, @ppd_pragma { class PreprocessorLine extends PreprocessorDirective, @ppd_line { override string toString() { result = "#line " + this.getHead() } } + +/** + * A C23 or C++26`#embed` preprocessor directive. For example, the following code + * contains one `Embed` directive: + * ```cpp + * char arr[] = { + * #embed "bin" + * }; + * ``` + */ +class Embed extends PreprocessorDirective, @ppd_embed { + override string toString() { result = "#embed " + this.getIncludeText() } + + /** + * Gets the token which occurs after `#embed`, for example `"filename"` + * or ``. + */ + string getIncludeText() { result = this.getHead() } + + /** + * Gets the file directly embedded by this `#embed`. + */ + File getEmbeddedFile() { embeds(underlyingElement(this), unresolveElement(result)) } +} diff --git a/cpp/ql/lib/semmlecode.cpp.dbscheme b/cpp/ql/lib/semmlecode.cpp.dbscheme index 83100310bf73..9439176c1d13 100644 --- a/cpp/ql/lib/semmlecode.cpp.dbscheme +++ b/cpp/ql/lib/semmlecode.cpp.dbscheme @@ -2353,6 +2353,7 @@ case @preprocdirect.kind of | 14 = @ppd_ms_import | 15 = @ppd_elifdef | 16 = @ppd_elifndef +| 17 = @ppd_embed | 18 = @ppd_warning ; @@ -2379,6 +2380,11 @@ includes( int included: @file ref ); +embeds( + unique int id: @ppd_embed ref, + int included: @file ref +); + link_targets( int id: @link_target, int binary: @file ref From 28047fe625ff11a8c6c7bf4c119e65ae7646c095 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Mon, 19 Jan 2026 17:31:09 +0100 Subject: [PATCH 089/433] C++: Update dbscheme stats file --- cpp/ql/lib/semmlecode.cpp.dbscheme.stats | 2217 +++++++++++----------- 1 file changed, 1137 insertions(+), 1080 deletions(-) diff --git a/cpp/ql/lib/semmlecode.cpp.dbscheme.stats b/cpp/ql/lib/semmlecode.cpp.dbscheme.stats index eca8a306a7c2..ee25206a25d1 100644 --- a/cpp/ql/lib/semmlecode.cpp.dbscheme.stats +++ b/cpp/ql/lib/semmlecode.cpp.dbscheme.stats @@ -2,7 +2,7 @@ @compilation - 12592 + 12591 @externalDataElement @@ -10,7 +10,7 @@ @file - 64949 + 64946 @folder @@ -22,7 +22,7 @@ @location_default - 46837431 + 46837407 @pch @@ -30,7 +30,7 @@ @macro_expansion - 40306125 + 40306104 @other_macro_reference @@ -38,7 +38,7 @@ @normal_function - 2734631 + 2734629 @unknown_function @@ -46,7 +46,7 @@ @constructor - 694346 + 694334 @destructor @@ -70,15 +70,15 @@ @fun_decl - 4194038 + 4193289 @var_decl - 9368606 + 9367854 @type_decl - 1629528 + 1629527 @namespace_decl @@ -86,11 +86,11 @@ @using_declaration - 266867 + 266844 @using_directive - 6431 + 6430 @using_enum_declaration @@ -98,11 +98,11 @@ @static_assert - 172750 + 172749 @parameter - 7011800 + 7011797 @membervariable @@ -110,11 +110,11 @@ @globalvariable - 492567 + 492566 @localvariable - 724728 + 724695 @enumconstant @@ -354,11 +354,11 @@ @pointer - 451499 + 451498 @type_with_specifiers - 691560 + 691559 @array @@ -366,7 +366,7 @@ @routineptr - 679859 + 679848 @reference @@ -392,6 +392,10 @@ @scalable_vector 1 + + @decltype + 101757 + @typeof 811 @@ -472,13 +476,9 @@ @remove_reference 5706 - - @decltype - 101757 - @struct - 976642 + 976596 @union @@ -490,11 +490,11 @@ @template_parameter - 864458 + 864417 @alias - 1755826 + 1755743 @unknown_usertype @@ -510,7 +510,7 @@ @proxy_class - 48244 + 48241 @scoped_enum @@ -518,7 +518,7 @@ @template_struct - 211186 + 211176 @template_class @@ -530,11 +530,11 @@ @mangledname - 6349610 + 6349607 @type_mention - 5911109 + 5911106 @concept_template @@ -542,11 +542,11 @@ @routinetype - 600588 + 600578 @ptrtomember - 9678 + 9677 @specifier @@ -574,11 +574,11 @@ @attribute_arg_token - 16585 + 16584 @attribute_arg_constant_expr - 71640 + 71584 @attribute_arg_expr @@ -598,15 +598,15 @@ @derivation - 473796 + 473788 @frienddecl - 695869 + 767816 @comment - 11208577 + 11208571 @namespace @@ -618,15 +618,15 @@ @namequalifier - 3042587 + 3042586 @value - 13541403 + 13541557 @initialiser - 2244827 + 2244826 @address_of @@ -634,15 +634,15 @@ @indirect - 402174 + 402173 @array_to_pointer - 1953951 + 1953950 @parexpr - 4915712 + 4915709 @arithnegexpr @@ -650,11 +650,11 @@ @unaryplusexpr - 4061 + 4060 @complementexpr - 38188 + 38187 @notexpr @@ -662,7 +662,7 @@ @postincrexpr - 84579 + 84578 @postdecrexpr @@ -678,11 +678,11 @@ @conditionalexpr - 897972 + 897971 @addexpr - 580447 + 580446 @subexpr @@ -722,7 +722,7 @@ @andexpr - 483235 + 483234 @orexpr @@ -734,7 +734,7 @@ @eqexpr - 643440 + 643439 @neexpr @@ -758,7 +758,7 @@ @assignexpr - 1281280 + 1281279 @assignaddexpr @@ -814,11 +814,11 @@ @orlogicalexpr - 1103652 + 1103651 @commaexpr - 167881 + 167880 @subscriptexpr @@ -826,7 +826,7 @@ @callexpr - 238861 + 238857 @vastartexpr @@ -846,7 +846,7 @@ @varaccess - 8255502 + 8255498 @runtime_sizeof @@ -854,7 +854,7 @@ @runtime_alignof - 49552 + 49551 @expr_stmt @@ -862,7 +862,7 @@ @routineexpr - 5726207 + 5726204 @type_operand @@ -878,7 +878,7 @@ @literal - 7984746 + 7985020 @aggregateliteral @@ -890,19 +890,19 @@ @temp_init - 980663 + 980662 @errorexpr - 45186 + 45185 @reference_to - 1880187 + 1880186 @ref_indirect - 2094107 + 2094072 @vacuous_destructor_call @@ -962,11 +962,11 @@ @thisaccess - 1553673 + 1553672 @new_expr - 45897 + 45896 @delete_expr @@ -986,7 +986,7 @@ @type_id - 47589 + 47588 @sizeof_pack @@ -1094,7 +1094,7 @@ @ctordirectinit - 112102 + 112100 @ctorvirtualinit @@ -1110,7 +1110,7 @@ @dtordirectdestruct - 39195 + 39194 @dtorvirtualdestruct @@ -1418,7 +1418,7 @@ @reuseexpr - 844479 + 844478 @istriviallycopyassignable @@ -1550,11 +1550,11 @@ @stmt_expr - 2031828 + 2031827 @stmt_if - 990319 + 990318 @stmt_while @@ -1562,19 +1562,19 @@ @stmt_goto - 157271 + 157264 @stmt_label - 77731 + 77727 @stmt_return - 1238155 + 1238149 @stmt_block - 1724482 + 1724481 @stmt_end_test_while @@ -1598,11 +1598,11 @@ @stmt_decl - 770030 + 770029 @stmt_empty - 428128 + 428127 @stmt_continue @@ -1674,7 +1674,7 @@ @ppd_elif - 21828 + 21827 @ppd_else @@ -1686,15 +1686,15 @@ @ppd_plain_include - 317278 + 317263 @ppd_define - 2743342 + 2743340 @ppd_undef - 100181 + 100180 @ppd_pragma @@ -1706,7 +1706,7 @@ @ppd_line - 18771 + 18770 @ppd_error @@ -1728,6 +1728,10 @@ @ppd_elifndef 1 + + @ppd_embed + 1 + @ppd_warning 13 @@ -1764,11 +1768,11 @@ compilations - 12592 + 12591 id - 12592 + 12591 cwd @@ -1786,7 +1790,7 @@ 1 2 - 12592 + 12591 @@ -1812,11 +1816,11 @@ compilation_args - 1008128 + 1008080 id - 12592 + 12591 num @@ -1824,7 +1828,7 @@ arg - 29150 + 29149 @@ -1883,7 +1887,7 @@ 98 99 - 1336 + 1335 100 @@ -2157,7 +2161,7 @@ 2 3 - 12634 + 12633 3 @@ -2188,7 +2192,7 @@ 2 3 - 8689 + 8688 3 @@ -2203,11 +2207,11 @@ compilation_expanded_args - 1008128 + 1008080 id - 12592 + 12591 num @@ -2215,7 +2219,7 @@ arg - 29150 + 29149 @@ -2274,7 +2278,7 @@ 98 99 - 1336 + 1335 100 @@ -2548,7 +2552,7 @@ 2 3 - 12634 + 12633 3 @@ -2579,7 +2583,7 @@ 2 3 - 8689 + 8688 3 @@ -2904,7 +2908,7 @@ seconds - 19606 + 18516 @@ -2982,54 +2986,54 @@ 12 - - 2 - 3 - 54 - 3 4 - 816 + 980 4 5 - 490 + 381 - 6 - 9 - 217 + 5 + 7 + 163 - 9 + 8 10 217 10 - 12 - 217 + 11 + 163 - 12 - 19 + 11 + 15 217 - 19 - 21 + 16 + 18 + 108 + + + 18 + 19 217 - 21 - 52 + 20 + 54 217 - 125 - 126 + 133 + 134 54 @@ -3098,42 +3102,47 @@ 3 4 - 925 + 1797 4 5 - 1470 + 599 5 6 - 326 + 217 6 7 - 435 + 544 7 8 - 326 + 217 8 - 10 + 9 + 326 + + + 9 + 18 381 - 11 - 28 + 22 + 49 381 - 30 - 98 - 272 + 94 + 95 + 54 @@ -3179,23 +3188,23 @@ 12 - 5 - 6 + 4 + 5 54 - 6 - 7 + 5 + 6 54 - 204 - 205 + 187 + 188 54 - 205 - 206 + 197 + 198 54 @@ -3212,22 +3221,22 @@ 1 2 - 13452 + 12362 2 3 - 4574 + 3757 3 - 16 - 1470 + 4 + 1688 - 33 - 38 - 108 + 4 + 39 + 708 @@ -3243,22 +3252,27 @@ 1 2 - 12852 + 11273 2 3 - 3975 + 4302 3 - 5 - 1797 + 4 + 1470 - 5 - 66 - 980 + 4 + 44 + 1416 + + + 63 + 64 + 54 @@ -3274,17 +3288,12 @@ 1 2 - 16392 + 15630 2 3 - 3158 - - - 3 - 4 - 54 + 2886 @@ -3560,19 +3569,19 @@ compilation_finished - 12592 + 12591 id - 12592 + 12591 cpu_seconds - 9373 + 9656 elapsed_seconds - 220 + 210 @@ -3586,7 +3595,7 @@ 1 2 - 12592 + 12591 @@ -3602,7 +3611,7 @@ 1 2 - 12592 + 12591 @@ -3618,17 +3627,17 @@ 1 2 - 7868 + 8394 2 3 - 1041 + 809 3 - 30 - 462 + 32 + 452 @@ -3644,12 +3653,12 @@ 1 2 - 8741 + 9046 2 3 - 631 + 610 @@ -3665,12 +3674,17 @@ 1 2 - 31 + 42 2 3 - 42 + 10 + + + 3 + 4 + 10 5 @@ -3683,53 +3697,53 @@ 21 - 8 - 9 + 10 + 11 10 - 9 - 10 - 10 + 11 + 12 + 21 - 14 - 15 + 15 + 16 10 - 19 - 20 - 21 + 20 + 21 + 10 - 28 - 29 + 31 + 32 10 - 76 - 77 + 61 + 62 10 - 180 - 181 + 172 + 173 10 - 215 - 216 + 231 + 232 10 - 299 - 300 + 286 + 287 10 - 300 - 301 + 321 + 322 10 @@ -3746,12 +3760,17 @@ 1 2 - 31 + 42 2 3 - 42 + 10 + + + 3 + 4 + 10 5 @@ -3764,48 +3783,48 @@ 21 - 8 - 9 + 10 + 11 10 - 9 - 10 - 10 + 11 + 12 + 21 - 14 - 15 + 15 + 16 10 - 19 - 20 - 21 + 20 + 21 + 10 - 28 - 29 + 31 + 32 10 - 72 - 73 + 61 + 62 10 - 148 - 149 + 165 + 166 10 - 169 - 170 + 168 + 169 10 - 195 - 196 + 216 + 217 10 @@ -4048,11 +4067,11 @@ locations_default - 46837431 + 46837407 id - 46837431 + 46837407 file @@ -4060,7 +4079,7 @@ beginLine - 7483211 + 7483207 beginColumn @@ -4068,7 +4087,7 @@ endLine - 7484207 + 7484203 endColumn @@ -4086,7 +4105,7 @@ 1 2 - 46837431 + 46837407 @@ -4102,7 +4121,7 @@ 1 2 - 46837431 + 46837407 @@ -4118,7 +4137,7 @@ 1 2 - 46837431 + 46837407 @@ -4134,7 +4153,7 @@ 1 2 - 46837431 + 46837407 @@ -4150,7 +4169,7 @@ 1 2 - 46837431 + 46837407 @@ -4551,12 +4570,12 @@ 1 2 - 4945831 + 4945829 2 3 - 778674 + 778673 3 @@ -4571,7 +4590,7 @@ 12 96 - 561387 + 561386 96 @@ -4592,12 +4611,12 @@ 1 2 - 5008055 + 5008053 2 3 - 1216857 + 1216856 3 @@ -4628,12 +4647,12 @@ 1 2 - 5629551 + 5629548 2 3 - 483109 + 483108 3 @@ -4643,7 +4662,7 @@ 7 25 - 564996 + 564995 25 @@ -4664,7 +4683,7 @@ 1 2 - 7018147 + 7018144 2 @@ -4685,7 +4704,7 @@ 1 2 - 5014278 + 5014275 2 @@ -5106,17 +5125,17 @@ 1 2 - 4943591 + 4943589 2 3 - 782034 + 782033 3 4 - 541973 + 541972 4 @@ -5147,17 +5166,17 @@ 1 2 - 5005069 + 5005066 2 3 - 1220466 + 1220465 3 6 - 631078 + 631077 6 @@ -5183,7 +5202,7 @@ 1 2 - 7035321 + 7035318 2 @@ -5204,7 +5223,7 @@ 1 2 - 5628182 + 5628179 2 @@ -5219,12 +5238,12 @@ 7 25 - 568356 + 568355 25 89 - 224505 + 224504 @@ -5240,7 +5259,7 @@ 1 2 - 5012784 + 5012782 2 @@ -5260,7 +5279,7 @@ 12 72 - 561636 + 561635 72 @@ -5580,15 +5599,15 @@ files - 64949 + 64946 id - 64949 + 64946 name - 64949 + 64946 @@ -5602,7 +5621,7 @@ 1 2 - 64949 + 64946 @@ -5618,7 +5637,7 @@ 1 2 - 64949 + 64946 @@ -5676,7 +5695,7 @@ containerparent - 77268 + 77264 parent @@ -5684,7 +5703,7 @@ child - 77268 + 77264 @@ -5749,7 +5768,7 @@ 1 2 - 77268 + 77264 @@ -5759,11 +5778,11 @@ numlines - 805928 + 805927 element_id - 804808 + 804807 num_lines @@ -5789,7 +5808,7 @@ 1 2 - 803688 + 803687 2 @@ -5810,7 +5829,7 @@ 1 2 - 803688 + 803687 2 @@ -7237,7 +7256,7 @@ fileannotations - 4183599 + 4183401 id @@ -7249,11 +7268,11 @@ name - 58479 + 58477 value - 39354 + 39352 @@ -7508,7 +7527,7 @@ 3 5 - 5039 + 5038 5 @@ -7518,12 +7537,12 @@ 7 9 - 4576 + 4575 9 16 - 4313 + 4312 16 @@ -7538,7 +7557,7 @@ 27 47 - 4818 + 4817 47 @@ -7569,7 +7588,7 @@ 1 2 - 58479 + 58477 @@ -7585,7 +7604,7 @@ 1 2 - 11540 + 11539 2 @@ -7600,7 +7619,7 @@ 4 6 - 4050 + 4049 6 @@ -7671,7 +7690,7 @@ 8 14 - 2956 + 2955 14 @@ -7686,7 +7705,7 @@ 24 51 - 3524 + 3523 51 @@ -7732,7 +7751,7 @@ 1 2 - 39344 + 39342 2 @@ -7798,7 +7817,7 @@ 41 66 - 2977 + 2976 66 @@ -7808,7 +7827,7 @@ 92 113 - 2977 + 2976 113 @@ -7828,15 +7847,15 @@ inmacroexpansion - 150011425 + 150011348 id - 24673501 + 24673488 inv - 3705721 + 3705719 @@ -7850,32 +7869,32 @@ 1 3 - 2209722 + 2209721 3 5 - 1475129 + 1475128 5 6 - 1620535 + 1620534 6 7 - 6583219 + 6583216 7 8 - 8719894 + 8719889 8 9 - 3557413 + 3557411 9 @@ -7901,7 +7920,7 @@ 2 3 - 743309 + 743308 3 @@ -7931,12 +7950,12 @@ 10 11 - 444696 + 444695 11 337 - 307830 + 307829 339 @@ -7956,15 +7975,15 @@ affectedbymacroexpansion - 48740834 + 48740809 id - 7045464 + 7045460 inv - 3803511 + 3803509 @@ -7978,7 +7997,7 @@ 1 2 - 3847105 + 3847103 2 @@ -7998,7 +8017,7 @@ 5 12 - 535215 + 535214 12 @@ -8029,7 +8048,7 @@ 4 7 - 316640 + 316639 7 @@ -8039,7 +8058,7 @@ 9 12 - 342974 + 342973 12 @@ -8094,11 +8113,11 @@ macroinvocations - 40387491 + 40387470 id - 40387491 + 40387470 macro_id @@ -8106,7 +8125,7 @@ location - 5925542 + 5925539 kind @@ -8124,7 +8143,7 @@ 1 2 - 40387491 + 40387470 @@ -8140,7 +8159,7 @@ 1 2 - 40387491 + 40387470 @@ -8156,7 +8175,7 @@ 1 2 - 40387491 + 40387470 @@ -8172,7 +8191,7 @@ 1 2 - 61106 + 61105 2 @@ -8300,7 +8319,7 @@ 1 2 - 5261599 + 5261596 2 @@ -8326,7 +8345,7 @@ 1 2 - 5903376 + 5903373 2 @@ -8347,7 +8366,7 @@ 1 2 - 5925542 + 5925539 @@ -8420,15 +8439,15 @@ macroparent - 33684454 + 33684436 id - 33684454 + 33684436 parent_id - 15941267 + 15941258 @@ -8442,7 +8461,7 @@ 1 2 - 33684454 + 33684436 @@ -8458,22 +8477,22 @@ 1 2 - 7815090 + 7815086 2 3 - 1595836 + 1595835 3 4 - 4707397 + 4707394 4 5 - 1296896 + 1296895 5 @@ -8488,15 +8507,15 @@ macrolocationbind - 6022280 + 6022277 id - 4208238 + 4208236 location - 2272395 + 2272393 @@ -8510,7 +8529,7 @@ 1 2 - 3284817 + 3284816 2 @@ -8525,7 +8544,7 @@ 4 5 - 412640 + 412639 5 @@ -8576,11 +8595,11 @@ macro_argument_unexpanded - 82172776 + 82169662 invocation - 26182583 + 26182114 argument_index @@ -8588,7 +8607,7 @@ text - 341884 + 341868 @@ -8602,22 +8621,22 @@ 1 2 - 9643267 + 9643579 2 3 - 9733979 + 9733520 3 4 - 4982750 + 4982515 4 67 - 1822585 + 1822499 @@ -8633,22 +8652,22 @@ 1 2 - 9825166 + 9825469 2 3 - 9751495 + 9751034 3 4 - 4826677 + 4826449 4 67 - 1779244 + 1779160 @@ -8673,7 +8692,7 @@ 646904 - 2488874 + 2488947 31 @@ -8716,52 +8735,52 @@ 1 2 - 39544 + 39542 2 3 - 62077 + 62074 3 4 - 20934 + 20933 4 5 - 34442 + 34440 5 6 - 39091 + 39089 6 9 - 30749 + 30748 9 15 - 28877 + 28875 15 26 - 25773 + 25772 26 57 - 27025 + 27024 57 517 - 25910 + 25909 518 @@ -8782,12 +8801,12 @@ 1 2 - 242198 + 242187 2 3 - 89513 + 89509 3 @@ -8802,11 +8821,11 @@ macro_argument_expanded - 82172776 + 82169662 invocation - 26182583 + 26182114 argument_index @@ -8814,7 +8833,7 @@ text - 207062 + 207052 @@ -8828,22 +8847,22 @@ 1 2 - 9643267 + 9643579 2 3 - 9733979 + 9733520 3 4 - 4982750 + 4982515 4 67 - 1822585 + 1822499 @@ -8859,22 +8878,22 @@ 1 2 - 12591172 + 12591345 2 3 - 8396548 + 8396151 3 4 - 4208468 + 4208269 4 9 - 986394 + 986347 @@ -8899,7 +8918,7 @@ 646904 - 2488874 + 2488947 31 @@ -8942,17 +8961,17 @@ 1 2 - 21744 + 21743 2 3 - 26751 + 26750 3 4 - 43299 + 43297 4 @@ -8967,12 +8986,12 @@ 6 7 - 18325 + 18324 7 10 - 18883 + 18882 10 @@ -8982,16 +9001,16 @@ 19 51 - 15695 + 15694 51 251 - 15548 + 15547 251 - 1169605 + 1169678 9467 @@ -9008,12 +9027,12 @@ 1 2 - 104630 + 104625 2 3 - 88556 + 88551 3 @@ -9028,15 +9047,15 @@ functions - 4043206 + 4043204 id - 4043206 + 4043204 name - 1689263 + 1689262 kind @@ -9054,7 +9073,7 @@ 1 2 - 4043206 + 4043204 @@ -9070,7 +9089,7 @@ 1 2 - 4043206 + 4043204 @@ -9086,7 +9105,7 @@ 1 2 - 1441362 + 1441361 2 @@ -9112,7 +9131,7 @@ 1 2 - 1686401 + 1686400 2 @@ -9219,26 +9238,26 @@ builtin_functions - 30802 + 30800 id - 30802 + 30800 function_entry_point - 1134667 + 1134648 id - 1130944 + 1130925 entry_point - 1134667 + 1134648 @@ -9252,7 +9271,7 @@ 1 2 - 1127762 + 1127744 2 @@ -9273,7 +9292,7 @@ 1 2 - 1134667 + 1134648 @@ -9283,15 +9302,15 @@ function_return_type - 4060505 + 4060503 id - 4043206 + 4043204 return_type - 617762 + 617761 @@ -9305,7 +9324,7 @@ 1 2 - 4025908 + 4025906 2 @@ -9659,11 +9678,11 @@ function_prototyped - 4041713 + 4041711 id - 4041713 + 4041711 @@ -9821,15 +9840,15 @@ fun_decls - 4200011 + 4199263 id - 4194038 + 4193289 function - 4018690 + 4018688 type_id @@ -9837,11 +9856,11 @@ name - 1687770 + 1687769 location - 2806437 + 2806436 @@ -9855,7 +9874,7 @@ 1 2 - 4194038 + 4193289 @@ -9871,7 +9890,7 @@ 1 2 - 4188064 + 4187316 2 @@ -9892,7 +9911,7 @@ 1 2 - 4194038 + 4193289 @@ -9908,7 +9927,7 @@ 1 2 - 4194038 + 4193289 @@ -9924,12 +9943,12 @@ 1 2 - 3857903 + 3858647 2 5 - 160787 + 160040 @@ -9945,7 +9964,7 @@ 1 2 - 4000396 + 4000394 2 @@ -9966,7 +9985,7 @@ 1 2 - 4018690 + 4018688 @@ -9982,12 +10001,12 @@ 1 2 - 3878312 + 3878435 2 4 - 140377 + 140253 @@ -10003,7 +10022,7 @@ 1 2 - 294445 + 294444 2 @@ -10013,7 +10032,7 @@ 3 5 - 48286 + 48285 5 @@ -10022,7 +10041,7 @@ 364 - 10299 + 10295 1244 @@ -10075,7 +10094,7 @@ 1 2 - 490327 + 490326 2 @@ -10137,22 +10156,22 @@ 1 2 - 1328114 + 1328362 2 3 - 193641 + 193392 3 11 - 129426 + 129550 11 - 3169 - 36587 + 3167 + 36463 @@ -10168,7 +10187,7 @@ 1 2 - 1440864 + 1440863 2 @@ -10194,7 +10213,7 @@ 1 2 - 1598167 + 1598166 2 @@ -10215,7 +10234,7 @@ 1 2 - 1363955 + 1363954 2 @@ -10241,12 +10260,12 @@ 1 2 - 2413180 + 2413303 2 3 - 252132 + 252008 3 @@ -10267,12 +10286,12 @@ 1 2 - 2431847 + 2431971 2 3 - 233963 + 233838 3 @@ -10293,7 +10312,7 @@ 1 2 - 2692318 + 2692317 2 @@ -10314,7 +10333,7 @@ 1 2 - 2767360 + 2767359 2 @@ -10329,11 +10348,11 @@ fun_def - 1418837 + 1418836 id - 1418837 + 1418836 @@ -10362,7 +10381,7 @@ fun_decl_specifiers - 4269578 + 4269576 id @@ -10394,7 +10413,7 @@ 3 4 - 1097511 + 1097510 4 @@ -10607,15 +10626,15 @@ fun_decl_noexcept - 140906 + 140904 fun_decl - 140906 + 140904 constant - 140466 + 140464 @@ -10629,7 +10648,7 @@ 1 2 - 140906 + 140904 @@ -10645,7 +10664,7 @@ 1 2 - 140026 + 140024 2 @@ -10660,11 +10679,11 @@ fun_decl_empty_noexcept - 1160979 + 1160854 fun_decl - 1160979 + 1160854 @@ -10930,11 +10949,11 @@ param_decl_bind - 7295294 + 7294544 id - 7295294 + 7294544 index @@ -10942,7 +10961,7 @@ fun_decl - 3524381 + 3523881 @@ -10956,7 +10975,7 @@ 1 2 - 7295294 + 7294544 @@ -10972,7 +10991,7 @@ 1 2 - 7295294 + 7294544 @@ -11007,12 +11026,12 @@ 343 - 16219 + 16218 622 - 28320 - 28321 + 28316 + 28317 124 @@ -11048,12 +11067,12 @@ 343 - 16219 + 16218 622 - 28320 - 28321 + 28316 + 28317 124 @@ -11070,7 +11089,7 @@ 1 2 - 1506075 + 1505701 2 @@ -11080,7 +11099,7 @@ 3 4 - 600837 + 600712 4 @@ -11106,7 +11125,7 @@ 1 2 - 1506075 + 1505701 2 @@ -11116,7 +11135,7 @@ 3 4 - 600837 + 600712 4 @@ -11136,19 +11155,19 @@ var_decls - 9375077 + 9374326 id - 9368606 + 9367854 variable - 9027368 + 9027363 type_id - 1452936 + 1452935 name @@ -11156,7 +11175,7 @@ location - 6259509 + 6259506 @@ -11170,7 +11189,7 @@ 1 2 - 9368606 + 9367854 @@ -11186,7 +11205,7 @@ 1 2 - 9362135 + 9361383 2 @@ -11207,7 +11226,7 @@ 1 2 - 9368606 + 9367854 @@ -11223,7 +11242,7 @@ 1 2 - 9368606 + 9367854 @@ -11239,12 +11258,12 @@ 1 2 - 8703553 + 8704295 2 5 - 323814 + 323068 @@ -11260,7 +11279,7 @@ 1 2 - 8974353 + 8974348 2 @@ -11281,7 +11300,7 @@ 1 2 - 8922209 + 8922205 2 @@ -11302,12 +11321,12 @@ 1 2 - 8782702 + 8783071 2 4 - 244665 + 244292 @@ -11486,7 +11505,7 @@ 25 - 27139 + 27136 31236 @@ -11611,16 +11630,16 @@ 1 2 - 5758231 + 5758601 2 20 - 471161 + 470788 20 - 2943 + 2940 30116 @@ -11637,12 +11656,12 @@ 1 2 - 5838874 + 5839244 2 2935 - 420635 + 420262 @@ -11658,7 +11677,7 @@ 1 2 - 5961704 + 5961701 2 @@ -11679,7 +11698,7 @@ 1 2 - 6247189 + 6247186 2 @@ -11694,11 +11713,11 @@ var_def - 3763197 + 3763195 id - 3763197 + 3763195 @@ -11716,11 +11735,11 @@ var_decl_specifiers - 488709 + 488708 id - 488709 + 488708 name @@ -11738,7 +11757,7 @@ 1 2 - 488709 + 488708 @@ -11848,19 +11867,19 @@ type_decls - 1629528 + 1629527 id - 1629528 + 1629527 type_id - 1610612 + 1610611 location - 1543659 + 1543658 @@ -11874,7 +11893,7 @@ 1 2 - 1629528 + 1629527 @@ -11890,7 +11909,7 @@ 1 2 - 1629528 + 1629527 @@ -11906,7 +11925,7 @@ 1 2 - 1594309 + 1594308 2 @@ -11948,7 +11967,7 @@ 1 2 - 1521631 + 1521630 2 @@ -11969,7 +11988,7 @@ 1 2 - 1521756 + 1521755 2 @@ -12445,19 +12464,19 @@ usings - 271001 + 270978 id - 271001 + 270978 element_id - 58827 + 58813 location - 26741 + 26740 kind @@ -12475,7 +12494,7 @@ 1 2 - 271001 + 270978 @@ -12491,7 +12510,7 @@ 1 2 - 271001 + 270978 @@ -12507,7 +12526,7 @@ 1 2 - 271001 + 270978 @@ -12523,12 +12542,12 @@ 1 2 - 51126 + 51113 2 5 - 5365 + 5364 5 @@ -12549,12 +12568,12 @@ 1 2 - 51126 + 51113 2 5 - 5365 + 5364 5 @@ -12575,7 +12594,7 @@ 1 2 - 58827 + 58813 @@ -12591,17 +12610,17 @@ 1 2 - 21092 + 21091 2 4 - 2282 + 2293 4 132 - 1946 + 1935 145 @@ -12622,17 +12641,17 @@ 1 2 - 21092 + 21091 2 4 - 2282 + 2293 4 132 - 1946 + 1935 145 @@ -12653,7 +12672,7 @@ 1 2 - 26741 + 26740 @@ -12672,8 +12691,8 @@ 10 - 25368 - 25369 + 25367 + 25368 10 @@ -12693,8 +12712,8 @@ 10 - 5378 - 5379 + 5377 + 5378 10 @@ -12726,15 +12745,15 @@ using_container - 577834 + 577796 parent - 21807 + 21806 child - 271001 + 270978 @@ -12799,22 +12818,22 @@ 1 2 - 96225 + 96210 2 3 - 119800 + 119794 3 4 - 20019 + 20018 4 5 - 26604 + 26603 5 @@ -12829,15 +12848,15 @@ static_asserts - 172750 + 172749 id - 172750 + 172749 condition - 172750 + 172749 message @@ -12863,7 +12882,7 @@ 1 2 - 172750 + 172749 @@ -12879,7 +12898,7 @@ 1 2 - 172750 + 172749 @@ -12895,7 +12914,7 @@ 1 2 - 172750 + 172749 @@ -12911,7 +12930,7 @@ 1 2 - 172750 + 172749 @@ -12927,7 +12946,7 @@ 1 2 - 172750 + 172749 @@ -12943,7 +12962,7 @@ 1 2 - 172750 + 172749 @@ -12959,7 +12978,7 @@ 1 2 - 172750 + 172749 @@ -12975,7 +12994,7 @@ 1 2 - 172750 + 172749 @@ -13437,15 +13456,15 @@ params - 7052246 + 7052243 id - 7011800 + 7011797 function - 3400305 + 3400304 index @@ -13453,7 +13472,7 @@ type_id - 1217355 + 1217354 @@ -13467,7 +13486,7 @@ 1 2 - 7011800 + 7011797 @@ -13483,7 +13502,7 @@ 1 2 - 7011800 + 7011797 @@ -13499,7 +13518,7 @@ 1 2 - 6971355 + 6971351 2 @@ -13520,7 +13539,7 @@ 1 2 - 1470856 + 1470855 2 @@ -13540,7 +13559,7 @@ 5 65 - 145978 + 145977 @@ -13556,7 +13575,7 @@ 1 2 - 1470856 + 1470855 2 @@ -13576,7 +13595,7 @@ 5 65 - 145978 + 145977 @@ -13592,12 +13611,12 @@ 1 2 - 1778617 + 1778616 2 3 - 1029313 + 1029312 3 @@ -13782,7 +13801,7 @@ 1 2 - 817502 + 817501 2 @@ -13916,7 +13935,7 @@ membervariables - 1502979 + 1502978 id @@ -13928,7 +13947,7 @@ name - 642757 + 642756 @@ -14092,11 +14111,11 @@ globalvariables - 492567 + 492566 id - 492567 + 492566 type_id @@ -14118,7 +14137,7 @@ 1 2 - 492567 + 492566 @@ -14134,7 +14153,7 @@ 1 2 - 492567 + 492566 @@ -14278,19 +14297,19 @@ localvariables - 724728 + 724695 id - 724728 + 724695 type_id - 53300 + 53298 name - 101414 + 101409 @@ -14304,7 +14323,7 @@ 1 2 - 724728 + 724695 @@ -14320,7 +14339,7 @@ 1 2 - 724728 + 724695 @@ -14336,7 +14355,7 @@ 1 2 - 28790 + 28789 2 @@ -14346,12 +14365,12 @@ 3 4 - 4021 + 4020 4 6 - 4061 + 4060 6 @@ -14361,7 +14380,7 @@ 12 162 - 4001 + 4000 162 @@ -14382,7 +14401,7 @@ 1 2 - 38250 + 38248 2 @@ -14413,12 +14432,12 @@ 1 2 - 62404 + 62402 2 3 - 16004 + 16003 3 @@ -14428,7 +14447,7 @@ 4 8 - 8130 + 8129 8 @@ -14454,7 +14473,7 @@ 1 2 - 84403 + 84399 2 @@ -14547,15 +14566,15 @@ orphaned_variables - 44035 + 44034 var - 44035 + 44034 function - 40786 + 40785 @@ -14569,7 +14588,7 @@ 1 2 - 44035 + 44034 @@ -16194,15 +16213,15 @@ derivedtypes - 3023724 + 3023723 id - 3023724 + 3023723 name - 1457167 + 1457166 kind @@ -16210,7 +16229,7 @@ type_id - 1942143 + 1942142 @@ -16224,7 +16243,7 @@ 1 2 - 3023724 + 3023723 @@ -16240,7 +16259,7 @@ 1 2 - 3023724 + 3023723 @@ -16256,7 +16275,7 @@ 1 2 - 3023724 + 3023723 @@ -16272,7 +16291,7 @@ 1 2 - 1340932 + 1340931 2 @@ -16298,7 +16317,7 @@ 1 2 - 1457167 + 1457166 @@ -16494,7 +16513,7 @@ 1 2 - 1315918 + 1315917 2 @@ -16525,7 +16544,7 @@ 1 2 - 1316291 + 1316290 2 @@ -16550,11 +16569,11 @@ pointerishsize - 2242063 + 2242062 id - 2242063 + 2242062 size @@ -16576,7 +16595,7 @@ 1 2 - 2242063 + 2242062 @@ -16592,7 +16611,7 @@ 1 2 - 2242063 + 2242062 @@ -17115,15 +17134,15 @@ typedefbase - 1755826 + 1755743 id - 1755826 + 1755743 type_id - 834256 + 834216 @@ -17137,7 +17156,7 @@ 1 2 - 1755826 + 1755743 @@ -17153,22 +17172,22 @@ 1 2 - 659363 + 659332 2 3 - 80760 + 80757 3 6 - 63918 + 63915 6 4525 - 30213 + 30211 @@ -17178,7 +17197,7 @@ decltypes - 814571 + 814570 id @@ -17186,7 +17205,7 @@ expr - 814571 + 814570 kind @@ -17316,7 +17335,7 @@ 1 2 - 814571 + 814570 @@ -17332,7 +17351,7 @@ 1 2 - 814571 + 814570 @@ -17348,7 +17367,7 @@ 1 2 - 814571 + 814570 @@ -17364,7 +17383,7 @@ 1 2 - 814571 + 814570 @@ -17942,15 +17961,15 @@ usertypes - 4137700 + 4137505 id - 4137700 + 4137505 name - 915395 + 915352 kind @@ -17968,7 +17987,7 @@ 1 2 - 4137700 + 4137505 @@ -17984,7 +18003,7 @@ 1 2 - 4137700 + 4137505 @@ -18000,22 +18019,22 @@ 1 2 - 652104 + 652073 2 3 - 158113 + 158105 3 8 - 70325 + 70321 8 32667 - 34852 + 34850 @@ -18031,12 +18050,12 @@ 1 2 - 863858 + 863818 2 10 - 51536 + 51534 @@ -18188,11 +18207,11 @@ usertypesize - 1359659 + 1359595 id - 1359659 + 1359595 size @@ -18214,7 +18233,7 @@ 1 2 - 1359659 + 1359595 @@ -18230,7 +18249,7 @@ 1 2 - 1359659 + 1359595 @@ -18488,11 +18507,11 @@ usertype_alias_kind - 1755826 + 1755743 id - 1755826 + 1755743 alias_kind @@ -18510,7 +18529,7 @@ 1 2 - 1755826 + 1755743 @@ -18541,11 +18560,11 @@ nontype_template_parameters - 761296 + 761283 id - 761296 + 761283 @@ -18625,15 +18644,15 @@ mangled_name - 7910443 + 7910439 id - 7910443 + 7910439 mangled_name - 6349610 + 6349607 is_complete @@ -18651,7 +18670,7 @@ 1 2 - 7910443 + 7910439 @@ -18667,7 +18686,7 @@ 1 2 - 7910443 + 7910439 @@ -18683,7 +18702,7 @@ 1 2 - 6016213 + 6016209 2 @@ -18704,7 +18723,7 @@ 1 2 - 6349610 + 6349607 @@ -18756,59 +18775,59 @@ is_pod_class - 590976 + 590966 id - 590976 + 590966 is_standard_layout_class - 1120585 + 1120532 id - 1120585 + 1120532 is_complete - 1341565 + 1341502 id - 1341565 + 1341502 is_class_template - 231194 + 231183 id - 231194 + 231183 class_instantiation - 1122247 + 1122152 to - 1119207 + 1119154 from - 71524 + 71521 @@ -18822,12 +18841,12 @@ 1 2 - 1117071 + 1117061 2 8 - 2135 + 2093 @@ -18843,12 +18862,12 @@ 1 2 - 20387 + 20386 2 3 - 12834 + 12833 3 @@ -18863,12 +18882,12 @@ 5 7 - 6048 + 6059 7 10 - 5691 + 5680 10 @@ -18893,11 +18912,11 @@ class_template_argument - 2887489 + 2887353 type_id - 1362258 + 1362193 index @@ -18905,7 +18924,7 @@ arg_type - 818791 + 818753 @@ -18919,27 +18938,27 @@ 1 2 - 577750 + 577723 2 3 - 408654 + 408634 3 4 - 249951 + 249939 4 7 - 102684 + 102679 7 113 - 23217 + 23216 @@ -18955,22 +18974,22 @@ 1 2 - 606185 + 606156 2 3 - 422593 + 422573 3 4 - 250782 + 250770 4 113 - 82696 + 82692 @@ -19078,22 +19097,22 @@ 1 2 - 511580 + 511556 2 3 - 166897 + 166889 3 5 - 74922 + 74918 5 46 - 61414 + 61412 46 @@ -19114,17 +19133,17 @@ 1 2 - 720904 + 720870 2 3 - 79593 + 79589 3 22 - 18294 + 18293 @@ -19134,11 +19153,11 @@ class_template_argument_value - 506797 + 506789 type_id - 204506 + 204502 index @@ -19146,7 +19165,7 @@ arg_value - 506662 + 506653 @@ -19160,7 +19179,7 @@ 1 2 - 154818 + 154815 2 @@ -19186,7 +19205,7 @@ 1 2 - 146999 + 146996 2 @@ -19329,7 +19348,7 @@ 1 2 - 506526 + 506518 2 @@ -19350,7 +19369,7 @@ 1 2 - 506662 + 506653 @@ -19360,15 +19379,15 @@ is_proxy_class_for - 48244 + 48241 id - 48244 + 48241 templ_param_id - 45582 + 45580 @@ -19382,7 +19401,7 @@ 1 2 - 48244 + 48241 @@ -19398,7 +19417,7 @@ 1 2 - 44867 + 44865 2 @@ -19413,11 +19432,11 @@ type_mentions - 5911109 + 5911106 id - 5911109 + 5911106 type_id @@ -19425,7 +19444,7 @@ location - 5854796 + 5854793 kind @@ -19443,7 +19462,7 @@ 1 2 - 5911109 + 5911106 @@ -19459,7 +19478,7 @@ 1 2 - 5911109 + 5911106 @@ -19475,7 +19494,7 @@ 1 2 - 5911109 + 5911106 @@ -19609,7 +19628,7 @@ 1 2 - 5809103 + 5809100 2 @@ -19630,7 +19649,7 @@ 1 2 - 5809103 + 5809100 2 @@ -19651,7 +19670,7 @@ 1 2 - 5854796 + 5854793 @@ -19709,26 +19728,26 @@ is_function_template - 1328114 + 1328113 id - 1328114 + 1328113 function_instantiation - 967596 + 967580 to - 967596 + 967580 from - 181523 + 181520 @@ -19742,7 +19761,7 @@ 1 2 - 967596 + 967580 @@ -19758,12 +19777,12 @@ 1 2 - 109834 + 109833 2 3 - 42546 + 42545 3 @@ -19788,11 +19807,11 @@ function_template_argument - 2468730 + 2468689 function_id - 1443897 + 1443873 index @@ -19800,7 +19819,7 @@ arg_type - 296063 + 296058 @@ -19814,22 +19833,22 @@ 1 2 - 777949 + 777936 2 3 - 410501 + 410494 3 4 - 170692 + 170689 4 15 - 84753 + 84752 @@ -19845,22 +19864,22 @@ 1 2 - 796971 + 796958 2 3 - 408606 + 408599 3 4 - 168526 + 168523 4 9 - 69793 + 69792 @@ -19998,12 +20017,12 @@ 1 2 - 173637 + 173634 2 3 - 26164 + 26163 3 @@ -20023,7 +20042,7 @@ 11 76 - 23219 + 23218 79 @@ -20044,12 +20063,12 @@ 1 2 - 255142 + 255137 2 3 - 31918 + 31917 3 @@ -20064,11 +20083,11 @@ function_template_argument_value - 449832 + 449825 function_id - 195502 + 195499 index @@ -20076,7 +20095,7 @@ arg_value - 447158 + 447151 @@ -20090,7 +20109,7 @@ 1 2 - 150418 + 150415 2 @@ -20116,7 +20135,7 @@ 1 2 - 143546 + 143544 2 @@ -20269,7 +20288,7 @@ 1 2 - 444484 + 444477 2 @@ -20290,7 +20309,7 @@ 1 2 - 447158 + 447151 @@ -20311,11 +20330,11 @@ variable_instantiation - 427356 + 427355 to - 427356 + 427355 from @@ -20333,7 +20352,7 @@ 1 2 - 427356 + 427355 @@ -20430,7 +20449,7 @@ 2 3 - 189535 + 189534 3 @@ -20461,7 +20480,7 @@ 2 3 - 179828 + 179827 3 @@ -20869,7 +20888,7 @@ template_template_argument - 9636 + 9635 type_id @@ -20881,7 +20900,7 @@ arg_type - 9047 + 9046 @@ -21100,7 +21119,7 @@ 1 2 - 9026 + 9025 2 @@ -21838,15 +21857,15 @@ routinetypes - 600588 + 600578 id - 600588 + 600578 return_type - 282016 + 282012 @@ -21860,7 +21879,7 @@ 1 2 - 600588 + 600578 @@ -21876,12 +21895,12 @@ 1 2 - 232565 + 232561 2 3 - 34998 + 34997 3 @@ -22262,11 +22281,11 @@ ptrtomembers - 9678 + 9677 id - 9678 + 9677 type_id @@ -22288,7 +22307,7 @@ 1 2 - 9678 + 9677 @@ -22304,7 +22323,7 @@ 1 2 - 9678 + 9677 @@ -22320,7 +22339,7 @@ 1 2 - 7732 + 7731 2 @@ -22341,7 +22360,7 @@ 1 2 - 7732 + 7731 2 @@ -22579,11 +22598,11 @@ funspecifiers - 9694661 + 9694656 func_id - 4002014 + 4002634 spec_id @@ -22601,17 +22620,17 @@ 1 2 - 1525489 + 1526110 2 3 - 505634 + 506256 3 4 - 1034540 + 1033917 4 @@ -22737,11 +22756,11 @@ varspecifiers - 3078855 + 3078853 var_id - 2314866 + 2314865 spec_id @@ -22759,7 +22778,7 @@ 1 2 - 1654293 + 1654292 2 @@ -23405,7 +23424,7 @@ 1 2 - 641034 + 641033 2 @@ -23979,11 +23998,11 @@ attribute_arg_value - 16585 + 16584 arg - 16585 + 16584 value @@ -24001,7 +24020,7 @@ 1 2 - 16585 + 16584 @@ -24135,15 +24154,15 @@ attribute_arg_constant - 71640 + 71584 arg - 71640 + 71584 constant - 71640 + 71584 @@ -24157,7 +24176,7 @@ 1 2 - 71640 + 71584 @@ -24173,7 +24192,7 @@ 1 2 - 71640 + 71584 @@ -24355,7 +24374,7 @@ spec_id - 615273 + 615272 @@ -24594,15 +24613,15 @@ unspecifiedtype - 7228465 + 7228462 type_id - 7228465 + 7228462 unspecified_type_id - 3955719 + 3955717 @@ -24616,7 +24635,7 @@ 1 2 - 7228465 + 7228462 @@ -24632,12 +24651,12 @@ 1 2 - 2475280 + 2475279 2 3 - 1114436 + 1114435 3 @@ -24657,11 +24676,11 @@ member - 4182340 + 4182338 parent - 541973 + 541972 index @@ -24669,7 +24688,7 @@ child - 4177735 + 4177733 @@ -24754,7 +24773,7 @@ 2 3 - 83256 + 83255 3 @@ -24947,7 +24966,7 @@ 1 2 - 4177735 + 4177733 @@ -24963,7 +24982,7 @@ 1 2 - 4173131 + 4173128 2 @@ -24978,15 +24997,15 @@ enclosingfunction - 114982 + 114976 child - 114982 + 114976 parent - 69094 + 69091 @@ -25000,7 +25019,7 @@ 1 2 - 114982 + 114976 @@ -25016,12 +25035,12 @@ 1 2 - 37471 + 37469 2 3 - 24479 + 24478 3 @@ -25041,15 +25060,15 @@ derivations - 473796 + 473788 derivation - 473796 + 473788 sub - 452201 + 452194 index @@ -25057,11 +25076,11 @@ super - 234021 + 234017 location - 35167 + 35166 @@ -25075,7 +25094,7 @@ 1 2 - 473796 + 473788 @@ -25091,7 +25110,7 @@ 1 2 - 473796 + 473788 @@ -25107,7 +25126,7 @@ 1 2 - 473796 + 473788 @@ -25123,7 +25142,7 @@ 1 2 - 473796 + 473788 @@ -25139,12 +25158,12 @@ 1 2 - 435785 + 435778 2 9 - 16416 + 16415 @@ -25160,12 +25179,12 @@ 1 2 - 435785 + 435778 2 8 - 16416 + 16415 @@ -25181,12 +25200,12 @@ 1 2 - 435785 + 435778 2 9 - 16416 + 16415 @@ -25202,12 +25221,12 @@ 1 2 - 435785 + 435778 2 8 - 16416 + 16415 @@ -25362,12 +25381,12 @@ 1 2 - 224273 + 224269 2 1655 - 9748 + 9747 @@ -25383,12 +25402,12 @@ 1 2 - 224273 + 224269 2 1655 - 9748 + 9747 @@ -25404,7 +25423,7 @@ 1 2 - 233581 + 233577 2 @@ -25425,12 +25444,12 @@ 1 2 - 228707 + 228703 2 81 - 5314 + 5313 @@ -25446,7 +25465,7 @@ 1 2 - 26333 + 26332 2 @@ -25482,7 +25501,7 @@ 1 2 - 26333 + 26332 2 @@ -25518,7 +25537,7 @@ 1 2 - 35167 + 35166 @@ -25534,7 +25553,7 @@ 1 2 - 28533 + 28532 2 @@ -25559,11 +25578,11 @@ derspecifiers - 475556 + 475548 der_id - 473356 + 473348 spec_id @@ -25581,7 +25600,7 @@ 1 2 - 471156 + 471148 2 @@ -25627,11 +25646,11 @@ direct_base_offsets - 447056 + 447049 der_id - 447056 + 447049 offset @@ -25649,7 +25668,7 @@ 1 2 - 447056 + 447049 @@ -25846,19 +25865,19 @@ frienddecls - 695869 + 767816 id - 695869 + 767816 type_id - 42140 + 54358 decl_id - 77341 + 100626 location @@ -25876,7 +25895,7 @@ 1 2 - 695869 + 767816 @@ -25892,7 +25911,7 @@ 1 2 - 695869 + 767816 @@ -25908,7 +25927,7 @@ 1 2 - 695869 + 767816 @@ -25924,46 +25943,41 @@ 1 2 - 6160 + 5584 2 3 - 13843 + 24978 3 - 7 - 3553 - - - 7 - 12 - 3418 + 8 + 4806 - 12 - 20 - 3621 + 8 + 17 + 4738 - 20 - 32 - 3283 + 17 + 27 + 4467 - 33 - 50 - 3757 + 27 + 45 + 4298 - 50 - 80 - 3757 + 45 + 81 + 4738 - 101 - 120 + 102 + 121 744 @@ -25980,46 +25994,41 @@ 1 2 - 6160 + 5584 2 3 - 13843 + 24978 3 - 7 - 3553 - - - 7 - 12 - 3418 + 8 + 4806 - 12 - 20 - 3621 + 8 + 17 + 4738 - 20 - 32 - 3283 + 17 + 27 + 4467 - 33 - 50 - 3757 + 27 + 45 + 4298 - 50 - 80 - 3757 + 45 + 81 + 4738 - 101 - 120 + 102 + 121 744 @@ -26036,7 +26045,7 @@ 1 2 - 40786 + 53004 2 @@ -26057,32 +26066,32 @@ 1 2 - 47792 + 67287 2 3 - 5889 + 8258 3 - 8 - 5957 + 9 + 9206 - 8 - 15 - 6024 + 9 + 24 + 7615 - 15 - 40 - 6024 + 24 + 127 + 7547 - 40 - 164 - 5652 + 135 + 191 + 710 @@ -26098,32 +26107,32 @@ 1 2 - 47792 + 67287 2 3 - 5889 + 8258 3 - 8 - 5957 + 9 + 9206 - 8 - 15 - 6024 + 9 + 24 + 7615 - 15 - 40 - 6024 + 24 + 127 + 7547 - 40 - 164 - 5652 + 135 + 191 + 710 @@ -26139,12 +26148,12 @@ 1 2 - 76664 + 99408 2 - 5 - 676 + 6 + 1218 @@ -26164,7 +26173,7 @@ 2 - 20370 + 22496 372 @@ -26185,7 +26194,7 @@ 2 - 1148 + 1509 135 @@ -26206,7 +26215,7 @@ 2 - 2132 + 2841 338 @@ -26217,19 +26226,19 @@ comments - 11208577 + 11208571 id - 11208577 + 11208571 contents - 4294966 + 4294963 location - 11208577 + 11208571 @@ -26243,7 +26252,7 @@ 1 2 - 11208577 + 11208571 @@ -26259,7 +26268,7 @@ 1 2 - 11208577 + 11208571 @@ -26275,7 +26284,7 @@ 1 2 - 3920500 + 3920498 2 @@ -26301,7 +26310,7 @@ 1 2 - 3920500 + 3920498 2 @@ -26327,7 +26336,7 @@ 1 2 - 11208577 + 11208571 @@ -26343,7 +26352,7 @@ 1 2 - 11208577 + 11208571 @@ -26353,15 +26362,15 @@ commentbinding - 3905317 + 3905315 id - 3342686 + 3342684 element - 3740174 + 3740172 @@ -26375,7 +26384,7 @@ 1 2 - 3281208 + 3281207 2 @@ -26396,7 +26405,7 @@ 1 2 - 3575031 + 3575029 2 @@ -26411,15 +26420,15 @@ exprconv - 9634075 + 9634070 converted - 9633969 + 9633964 conversion - 9634075 + 9634070 @@ -26433,7 +26442,7 @@ 1 2 - 9633864 + 9633859 2 @@ -26454,7 +26463,7 @@ 1 2 - 9634075 + 9634070 @@ -26464,22 +26473,22 @@ compgenerated - 9923438 + 9923433 id - 9923438 + 9923433 synthetic_destructor_call - 1666649 + 1666648 element - 1241202 + 1241201 i @@ -26487,7 +26496,7 @@ destructor_call - 1666649 + 1666648 @@ -26501,7 +26510,7 @@ 1 2 - 826181 + 826180 2 @@ -26527,7 +26536,7 @@ 1 2 - 826181 + 826180 2 @@ -26685,7 +26694,7 @@ 1 2 - 1666649 + 1666648 @@ -26701,7 +26710,7 @@ 1 2 - 1666649 + 1666648 @@ -26719,7 +26728,7 @@ name - 4555 + 4554 @@ -26749,7 +26758,7 @@ 1 2 - 3724 + 3723 2 @@ -26780,7 +26789,7 @@ namespacembrs - 2110397 + 2110396 parentid @@ -26788,7 +26797,7 @@ memberid - 2110397 + 2110396 @@ -26878,7 +26887,7 @@ 1 2 - 2110397 + 2110396 @@ -26888,11 +26897,11 @@ exprparents - 19456297 + 19456287 expr_id - 19456297 + 19456287 child_index @@ -26900,7 +26909,7 @@ parent_id - 12941381 + 12941374 @@ -26914,7 +26923,7 @@ 1 2 - 19456297 + 19456287 @@ -26930,7 +26939,7 @@ 1 2 - 19456297 + 19456287 @@ -27048,12 +27057,12 @@ 1 2 - 7395565 + 7395561 2 3 - 5083216 + 5083213 3 @@ -27074,12 +27083,12 @@ 1 2 - 7395565 + 7395561 2 3 - 5083216 + 5083213 3 @@ -27094,11 +27103,11 @@ expr_isload - 6898016 + 6898013 expr_id - 6898016 + 6898013 @@ -27183,11 +27192,11 @@ iscall - 5790819 + 5790816 caller - 5790819 + 5790816 kind @@ -27205,7 +27214,7 @@ 1 2 - 5790819 + 5790816 @@ -27367,15 +27376,15 @@ namequalifiers - 3042587 + 3042586 id - 3042587 + 3042586 qualifiableelement - 3042587 + 3042586 qualifyingelement @@ -27397,7 +27406,7 @@ 1 2 - 3042587 + 3042586 @@ -27413,7 +27422,7 @@ 1 2 - 3042587 + 3042586 @@ -27429,7 +27438,7 @@ 1 2 - 3042587 + 3042586 @@ -27445,7 +27454,7 @@ 1 2 - 3042587 + 3042586 @@ -27461,7 +27470,7 @@ 1 2 - 3042587 + 3042586 @@ -27477,7 +27486,7 @@ 1 2 - 3042587 + 3042586 @@ -27498,7 +27507,7 @@ 2 3 - 8173 + 8172 3 @@ -27534,7 +27543,7 @@ 2 3 - 8173 + 8172 3 @@ -27683,11 +27692,11 @@ varbind - 8255502 + 8255498 expr - 8255502 + 8255498 var @@ -27705,7 +27714,7 @@ 1 2 - 8255502 + 8255498 @@ -27721,7 +27730,7 @@ 1 2 - 171554 + 171553 2 @@ -27751,7 +27760,7 @@ 7 9 - 80824 + 80823 9 @@ -27776,11 +27785,11 @@ funbind - 5806092 + 5806089 expr - 5803625 + 5803622 fun @@ -27798,7 +27807,7 @@ 1 2 - 5801158 + 5801155 2 @@ -27849,11 +27858,11 @@ expr_allocator - 44949 + 44948 expr - 44949 + 44948 func @@ -27875,7 +27884,7 @@ 1 2 - 44949 + 44948 @@ -27891,7 +27900,7 @@ 1 2 - 44949 + 44948 @@ -28122,15 +28131,15 @@ expr_cond_guard - 897972 + 897971 cond - 897972 + 897971 guard - 897972 + 897971 @@ -28144,7 +28153,7 @@ 1 2 - 897972 + 897971 @@ -28160,7 +28169,7 @@ 1 2 - 897972 + 897971 @@ -28170,15 +28179,15 @@ expr_cond_true - 897968 + 897967 cond - 897968 + 897967 true - 897968 + 897967 @@ -28192,7 +28201,7 @@ 1 2 - 897968 + 897967 @@ -28208,7 +28217,7 @@ 1 2 - 897968 + 897967 @@ -28218,15 +28227,15 @@ expr_cond_false - 897972 + 897971 cond - 897972 + 897971 false - 897972 + 897971 @@ -28240,7 +28249,7 @@ 1 2 - 897972 + 897971 @@ -28256,7 +28265,7 @@ 1 2 - 897972 + 897971 @@ -28266,11 +28275,11 @@ values - 13541403 + 13541557 id - 13541403 + 13541557 str @@ -28288,7 +28297,7 @@ 1 2 - 13541403 + 13541557 @@ -28334,11 +28343,11 @@ valuetext - 6637663 + 6637698 id - 6637663 + 6637698 text @@ -28356,7 +28365,7 @@ 1 2 - 6637663 + 6637698 @@ -28386,7 +28395,7 @@ 7 - 593719 + 593717 27872 @@ -28397,15 +28406,15 @@ valuebind - 13649553 + 13649707 val - 13541403 + 13541557 expr - 13649553 + 13649707 @@ -28419,7 +28428,7 @@ 1 2 - 13451245 + 13451399 2 @@ -28440,7 +28449,7 @@ 1 2 - 13649553 + 13649707 @@ -28842,19 +28851,19 @@ initialisers - 2244827 + 2244826 init - 2244827 + 2244826 var - 978849 + 978848 expr - 2244827 + 2244826 location @@ -28872,7 +28881,7 @@ 1 2 - 2244827 + 2244826 @@ -28888,7 +28897,7 @@ 1 2 - 2244827 + 2244826 @@ -28904,7 +28913,7 @@ 1 2 - 2244827 + 2244826 @@ -28972,7 +28981,7 @@ 1 2 - 978841 + 978840 2 @@ -28993,7 +29002,7 @@ 1 2 - 2244827 + 2244826 @@ -29009,7 +29018,7 @@ 1 2 - 2244827 + 2244826 @@ -29025,7 +29034,7 @@ 1 2 - 2244827 + 2244826 @@ -29072,7 +29081,7 @@ 1 2 - 443423 + 443422 2 @@ -29134,15 +29143,15 @@ expr_ancestor - 1672612 + 1672611 exp - 1672612 + 1672611 ancestor - 837121 + 837120 @@ -29156,7 +29165,7 @@ 1 2 - 1672612 + 1672611 @@ -29192,11 +29201,11 @@ exprs - 25213263 + 25213250 id - 25213263 + 25213250 kind @@ -29204,7 +29213,7 @@ location - 10586811 + 10586806 @@ -29218,7 +29227,7 @@ 1 2 - 25213263 + 25213250 @@ -29234,7 +29243,7 @@ 1 2 - 25213263 + 25213250 @@ -29412,7 +29421,7 @@ 1 2 - 8904644 + 8904640 2 @@ -29443,7 +29452,7 @@ 1 2 - 9044063 + 9044058 2 @@ -29453,7 +29462,7 @@ 3 32 - 768384 + 768383 @@ -29463,15 +29472,15 @@ expr_reuse - 844479 + 844478 reuse - 844479 + 844478 original - 844479 + 844478 value_category @@ -29489,7 +29498,7 @@ 1 2 - 844479 + 844478 @@ -29505,7 +29514,7 @@ 1 2 - 844479 + 844478 @@ -29521,7 +29530,7 @@ 1 2 - 844479 + 844478 @@ -29537,7 +29546,7 @@ 1 2 - 844479 + 844478 @@ -29589,11 +29598,11 @@ expr_types - 25213263 + 25213250 id - 25213263 + 25213250 typeid @@ -29615,7 +29624,7 @@ 1 2 - 25213263 + 25213250 @@ -29631,7 +29640,7 @@ 1 2 - 25213263 + 25213250 @@ -29776,15 +29785,15 @@ new_allocated_type - 45897 + 45896 expr - 45897 + 45896 type_id - 27213 + 27212 @@ -29798,7 +29807,7 @@ 1 2 - 45897 + 45896 @@ -29819,7 +29828,7 @@ 2 3 - 14385 + 14384 3 @@ -29897,11 +29906,11 @@ param_ref_to_this - 24953 + 24952 expr - 24953 + 24952 @@ -31292,11 +31301,11 @@ typeid_bind - 47589 + 47588 expr - 47589 + 47588 type_id @@ -31314,7 +31323,7 @@ 1 2 - 47589 + 47588 @@ -33124,11 +33133,11 @@ stmts - 6349657 + 6349654 id - 6349657 + 6349654 kind @@ -33136,7 +33145,7 @@ location - 2676168 + 2676166 @@ -33150,7 +33159,7 @@ 1 2 - 6349657 + 6349654 @@ -33166,7 +33175,7 @@ 1 2 - 6349657 + 6349654 @@ -33404,7 +33413,7 @@ 1 2 - 2218095 + 2218094 2 @@ -33435,7 +33444,7 @@ 1 2 - 2593461 + 2593460 2 @@ -33605,15 +33614,15 @@ if_then - 990319 + 990318 if_stmt - 990319 + 990318 then_id - 990319 + 990318 @@ -33627,7 +33636,7 @@ 1 2 - 990319 + 990318 @@ -33643,7 +33652,7 @@ 1 2 - 990319 + 990318 @@ -33653,15 +33662,15 @@ if_else - 435786 + 435785 if_stmt - 435786 + 435785 else_id - 435786 + 435785 @@ -33675,7 +33684,7 @@ 1 2 - 435786 + 435785 @@ -33691,7 +33700,7 @@ 1 2 - 435786 + 435785 @@ -34116,7 +34125,7 @@ 2 3 - 407749 + 407748 3 @@ -34142,7 +34151,7 @@ 2 3 - 407749 + 407748 3 @@ -34571,11 +34580,11 @@ stmtparents - 5611096 + 5611093 id - 5611096 + 5611093 index @@ -34583,7 +34592,7 @@ parent - 2374341 + 2374340 @@ -34597,7 +34606,7 @@ 1 2 - 5611096 + 5611093 @@ -34613,7 +34622,7 @@ 1 2 - 5611096 + 5611093 @@ -34756,7 +34765,7 @@ 2 3 - 515764 + 515763 3 @@ -34797,7 +34806,7 @@ 2 3 - 515764 + 515763 3 @@ -35250,15 +35259,15 @@ blockscope - 1640355 + 1640354 block - 1640355 + 1640354 enclosing - 1423690 + 1423689 @@ -35272,7 +35281,7 @@ 1 2 - 1640355 + 1640354 @@ -35489,11 +35498,11 @@ preprocdirects - 5395215 + 5395212 id - 5395215 + 5395212 kind @@ -35501,7 +35510,7 @@ location - 5392103 + 5392101 @@ -35515,7 +35524,7 @@ 1 2 - 5395215 + 5395212 @@ -35531,7 +35540,7 @@ 1 2 - 5395215 + 5395212 @@ -35679,7 +35688,7 @@ 1 2 - 5391979 + 5391976 26 @@ -35700,7 +35709,7 @@ 1 2 - 5392103 + 5392101 @@ -35732,7 +35741,7 @@ 1 2 - 648003 + 648002 2 @@ -35768,11 +35777,11 @@ preproctrue - 438183 + 438182 branch - 438183 + 438182 @@ -35790,19 +35799,19 @@ preproctext - 4341758 + 4341756 id - 4341758 + 4341756 head - 2947935 + 2947934 body - 1679307 + 1679306 @@ -35816,7 +35825,7 @@ 1 2 - 4341758 + 4341756 @@ -35832,7 +35841,7 @@ 1 2 - 4341758 + 4341756 @@ -35848,7 +35857,7 @@ 1 2 - 2749813 + 2749812 2 @@ -35869,7 +35878,7 @@ 1 2 - 2866919 + 2866918 2 @@ -35890,7 +35899,7 @@ 1 2 - 1531463 + 1531462 2 @@ -35916,7 +35925,7 @@ 1 2 - 1535694 + 1535693 2 @@ -35936,15 +35945,15 @@ includes - 317352 + 317337 id - 317352 + 317337 included - 58458 + 58456 @@ -35958,7 +35967,7 @@ 1 2 - 317352 + 317337 @@ -35974,7 +35983,7 @@ 1 2 - 28929 + 28928 2 @@ -36012,6 +36021,54 @@ + + embeds + 1 + + + id + 1 + + + included + 1 + + + + + id + included + + + 12 + + + 1 + 2 + 1 + + + + + + + included + id + + + 12 + + + 1 + 2 + 1 + + + + + + + link_targets 816 @@ -36062,11 +36119,11 @@ link_parent - 30225290 + 30224787 element - 3843783 + 3843719 link_target @@ -36084,17 +36141,17 @@ 1 2 - 527072 + 527063 2 9 - 26773 + 26772 9 10 - 3289937 + 3289882 From b35271a2ca0ea72b9486f10a15b0f0781a340e6f Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Tue, 20 Jan 2026 15:10:58 +0100 Subject: [PATCH 090/433] C++: Add upgrade and downgrade script --- .../old.dbscheme | 2489 +++++++++++++++++ .../preprocdirects.ql | 13 + .../semmlecode.cpp.dbscheme | 2483 ++++++++++++++++ .../upgrade.properties | 4 + .../old.dbscheme | 2483 ++++++++++++++++ .../semmlecode.cpp.dbscheme | 2489 +++++++++++++++++ .../upgrade.properties | 2 + 7 files changed, 9963 insertions(+) create mode 100644 cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/old.dbscheme create mode 100644 cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/preprocdirects.ql create mode 100644 cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/semmlecode.cpp.dbscheme create mode 100644 cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/upgrade.properties create mode 100644 cpp/ql/lib/upgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/old.dbscheme create mode 100644 cpp/ql/lib/upgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/semmlecode.cpp.dbscheme create mode 100644 cpp/ql/lib/upgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/upgrade.properties diff --git a/cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/old.dbscheme b/cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/old.dbscheme new file mode 100644 index 000000000000..9439176c1d13 --- /dev/null +++ b/cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/old.dbscheme @@ -0,0 +1,2489 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 17 = @ppd_embed +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +embeds( + unique int id: @ppd_embed ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/preprocdirects.ql b/cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/preprocdirects.ql new file mode 100644 index 000000000000..c8f927943bd9 --- /dev/null +++ b/cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/preprocdirects.ql @@ -0,0 +1,13 @@ +class PreprocessorDirective extends @preprocdirect { + string toString() { none() } +} + +class Location extends @location_default { + string toString() { none() } +} + +from PreprocessorDirective ppd, int kind, int kind_new, Location l +where + preprocdirects(ppd, kind, l) and + if kind = 17 then kind_new = /* ppd_warning */ 18 else kind_new = kind +select ppd, kind_new, l diff --git a/cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/semmlecode.cpp.dbscheme b/cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/semmlecode.cpp.dbscheme new file mode 100644 index 000000000000..83100310bf73 --- /dev/null +++ b/cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/semmlecode.cpp.dbscheme @@ -0,0 +1,2483 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/upgrade.properties b/cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/upgrade.properties new file mode 100644 index 000000000000..a1d5935c29b8 --- /dev/null +++ b/cpp/downgrades/9439176c1d1312787926458dd54d65a849069118/upgrade.properties @@ -0,0 +1,4 @@ +description: Support embed preprocessor directive +compatibility: partial +embeds.rel: delete +preprocdirects.rel: run preprocdirects.qlo diff --git a/cpp/ql/lib/upgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/old.dbscheme b/cpp/ql/lib/upgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/old.dbscheme new file mode 100644 index 000000000000..83100310bf73 --- /dev/null +++ b/cpp/ql/lib/upgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/old.dbscheme @@ -0,0 +1,2483 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/ql/lib/upgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/semmlecode.cpp.dbscheme b/cpp/ql/lib/upgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/semmlecode.cpp.dbscheme new file mode 100644 index 000000000000..9439176c1d13 --- /dev/null +++ b/cpp/ql/lib/upgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/semmlecode.cpp.dbscheme @@ -0,0 +1,2489 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 17 = @ppd_embed +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +embeds( + unique int id: @ppd_embed ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/ql/lib/upgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/upgrade.properties b/cpp/ql/lib/upgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/upgrade.properties new file mode 100644 index 000000000000..2289f3b5a5f0 --- /dev/null +++ b/cpp/ql/lib/upgrades/83100310bf73eefc37c1d8d0ac98b2ca3019c7b6/upgrade.properties @@ -0,0 +1,2 @@ +description: Support embed preprocessor directive +compatibility: partial From 701569bb2000e95d85a3f752e18d1005dcdc064b Mon Sep 17 00:00:00 2001 From: Jeroen Ketema <93738568+jketema@users.noreply.github.com> Date: Tue, 20 Jan 2026 16:05:51 +0100 Subject: [PATCH 091/433] Update cpp/ql/lib/semmle/code/cpp/Preprocessor.qll Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- cpp/ql/lib/semmle/code/cpp/Preprocessor.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/lib/semmle/code/cpp/Preprocessor.qll b/cpp/ql/lib/semmle/code/cpp/Preprocessor.qll index 726670c81a6c..a0dfdcb93822 100644 --- a/cpp/ql/lib/semmle/code/cpp/Preprocessor.qll +++ b/cpp/ql/lib/semmle/code/cpp/Preprocessor.qll @@ -330,7 +330,7 @@ class PreprocessorLine extends PreprocessorDirective, @ppd_line { } /** - * A C23 or C++26`#embed` preprocessor directive. For example, the following code + * A C23 or C++26 `#embed` preprocessor directive. For example, the following code * contains one `Embed` directive: * ```cpp * char arr[] = { From 4ca508d420479d9488396787a64986838d47eb5e Mon Sep 17 00:00:00 2001 From: Jon Janego Date: Tue, 20 Jan 2026 10:23:36 -0600 Subject: [PATCH 092/433] Changedocs for 2.23.9 --- .../codeql-changelog/codeql-cli-2.23.1.rst | 4 +-- .../codeql-changelog/codeql-cli-2.23.9.rst | 25 +++++++++++++++++++ .../codeql-changelog/index.rst | 1 + 3 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.9.rst diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst index ff22a3f647cf..27f1eee84edc 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst @@ -88,7 +88,7 @@ JavaScript/TypeScript * Data flow is now tracked through the :code:`Promise.try` and :code:`Array.prototype.with` functions. * Query :code:`js/index-out-of-bounds` no longer produces a false-positive when a strictly-less-than check overrides a previous less-than-or-equal test. * The query :code:`js/remote-property-injection` now detects property injection vulnerabilities through object enumeration patterns such as :code:`Object.keys()`. -* The query "Permissive CORS configuration" (:code:`js/cors-permissive-configuration`) has been promoted from experimental and is now part of the default security suite. Thank you to @maikypedia who `submitted the original experimental query `__! +* The query "Permissive CORS configuration" (:code:`js/cors-permissive-configuration`) has been promoted from experimental and is now part of the default security suite. Thank you to @maikypedia who `submitted the original experimental query `__\ ! Python """""" @@ -126,7 +126,7 @@ Golang """""" * The second argument of the :code:`CreateTemp` function, from the :code:`os` package, is no longer a path-injection sink due to proper sanitization by Go. -* The query "Uncontrolled data used in path expression" (:code:`go/path-injection`) now detects sanitizing a path by adding :code:`os.PathSeparator` or ``\`` to the beginning. +* The query "Uncontrolled data used in path expression" (:code:`go/path-injection`) now detects sanitizing a path by adding :code:`os.PathSeparator` or :code:`\` to the beginning. Java/Kotlin """"""""""" diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.9.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.9.rst new file mode 100644 index 000000000000..08013149a979 --- /dev/null +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.9.rst @@ -0,0 +1,25 @@ +.. _codeql-cli-2.23.9: + +========================== +CodeQL 2.23.9 (2026-01-09) +========================== + +.. contents:: Contents + :depth: 2 + :local: + :backlinks: none + +This is an overview of changes in the CodeQL CLI and relevant CodeQL query and library packs. For additional updates on changes to the CodeQL code scanning experience, check out the `code scanning section on the GitHub blog `__, `relevant GitHub Changelog updates `__, `changes in the CodeQL extension for Visual Studio Code `__, and the `CodeQL Action changelog `__. + +Security Coverage +----------------- + +CodeQL 2.23.9 runs a total of 491 security queries when configured with the Default suite (covering 166 CWE). The Extended suite enables an additional 135 queries (covering 35 more CWE). + +CodeQL CLI +---------- + +Deprecations +~~~~~~~~~~~~ + +* Support for Kotlin version 1.6 and 1.7 has been deprecated and will be removed from CodeQL version 2.24.1. Starting with version 2.24.1, users will need to use Kotlin version >= 1.8 to extract Kotlin databases. diff --git a/docs/codeql/codeql-overview/codeql-changelog/index.rst b/docs/codeql/codeql-overview/codeql-changelog/index.rst index 8eb59792af4f..85bac8df658e 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/index.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/index.rst @@ -11,6 +11,7 @@ A list of queries for each suite and language `is available here Date: Tue, 20 Jan 2026 10:27:54 -0600 Subject: [PATCH 093/433] Changedocs for 2.23.9 --- .../codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst index 27f1eee84edc..ff22a3f647cf 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst @@ -88,7 +88,7 @@ JavaScript/TypeScript * Data flow is now tracked through the :code:`Promise.try` and :code:`Array.prototype.with` functions. * Query :code:`js/index-out-of-bounds` no longer produces a false-positive when a strictly-less-than check overrides a previous less-than-or-equal test. * The query :code:`js/remote-property-injection` now detects property injection vulnerabilities through object enumeration patterns such as :code:`Object.keys()`. -* The query "Permissive CORS configuration" (:code:`js/cors-permissive-configuration`) has been promoted from experimental and is now part of the default security suite. Thank you to @maikypedia who `submitted the original experimental query `__\ ! +* The query "Permissive CORS configuration" (:code:`js/cors-permissive-configuration`) has been promoted from experimental and is now part of the default security suite. Thank you to @maikypedia who `submitted the original experimental query `__! Python """""" @@ -126,7 +126,7 @@ Golang """""" * The second argument of the :code:`CreateTemp` function, from the :code:`os` package, is no longer a path-injection sink due to proper sanitization by Go. -* The query "Uncontrolled data used in path expression" (:code:`go/path-injection`) now detects sanitizing a path by adding :code:`os.PathSeparator` or :code:`\` to the beginning. +* The query "Uncontrolled data used in path expression" (:code:`go/path-injection`) now detects sanitizing a path by adding :code:`os.PathSeparator` or ``\`` to the beginning. Java/Kotlin """"""""""" From fa926456efc72453b5b3ca28484cc5487dadf496 Mon Sep 17 00:00:00 2001 From: yoff Date: Tue, 20 Jan 2026 18:16:03 +0100 Subject: [PATCH 094/433] python: add changenote --- .../2026-01-20-support-ListElement-in-python-MaD.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 python/ql/lib/change-notes/2026-01-20-support-ListElement-in-python-MaD.md diff --git a/python/ql/lib/change-notes/2026-01-20-support-ListElement-in-python-MaD.md b/python/ql/lib/change-notes/2026-01-20-support-ListElement-in-python-MaD.md new file mode 100644 index 000000000000..cf51193efe9b --- /dev/null +++ b/python/ql/lib/change-notes/2026-01-20-support-ListElement-in-python-MaD.md @@ -0,0 +1,4 @@ +--- +category: feature +--- +* It is now possible to refer to list elements in the Python models-as-data language, via the `ListElement` path. From f76d85c9c663da2375be4e5aee55007305706d08 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 20 Jan 2026 15:08:47 +0100 Subject: [PATCH 095/433] Address review comments --- .../codeql/rust/frameworks/stdlib/Stdlib.qll | 55 ++++++++++--------- .../typeinference/FunctionOverloading.qll | 49 ++++++++--------- .../internal/typeinference/TypeInference.qll | 8 ++- 3 files changed, 56 insertions(+), 56 deletions(-) diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll b/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll index b5c1dff3bead..c5999305e16f 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll @@ -22,6 +22,34 @@ private class StartswithCall extends Path::SafeAccessCheck::Range, MethodCall { } } +/** + * A flow summary for the [reflexive implementation of the `From` trait][1]. + * + * Blanket implementations currently don't have a canonical path, so we cannot + * use models-as-data for this model. + * + * [1]: https://doc.rust-lang.org/std/convert/trait.From.html#impl-From%3CT%3E-for-T + */ +private class ReflexiveFrom extends SummarizedCallable::Range { + ReflexiveFrom() { + exists(ImplItemNode impl | + impl.resolveTraitTy().(Trait).getCanonicalPath() = "core::convert::From" and + this = impl.getAssocItem("from") and + resolvePath(this.getParam(0).getTypeRepr().(PathTypeRepr).getPath()) = + impl.getBlanketImplementationTypeParam() + ) + } + + override predicate propagatesFlow( + string input, string output, boolean preservesValue, string model + ) { + input = "Argument[0]" and + output = "ReturnValue" and + preservesValue = true and + model = "ReflexiveFrom" + } +} + /** * The [`Option` enum][1]. * @@ -300,30 +328,3 @@ class Vec extends Struct { /** Gets the type parameter representing the element type. */ TypeParam getElementTypeParam() { result = this.getGenericParamList().getTypeParam(0) } } - -// Blanket implementations currently don't have a canonical path, so we cannot -// use models-as-data for this model. -private class ReflexiveFrom extends SummarizedCallable::Range { - ReflexiveFrom() { - exists(ImplItemNode impl | - impl.resolveTraitTy().(Trait).getCanonicalPath() = "core::convert::From" and - this = impl.getAnAssocItem() and - impl.isBlanketImplementation() and - this.getParam(0) - .getTypeRepr() - .(TypeMention) - .resolveType() - .(TypeParamTypeParameter) - .getTypeParam() = impl.getTypeParam(0) - ) - } - - override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model - ) { - input = "Argument[0]" and - output = "ReturnValue" and - preservesValue = true and - model = "ReflexiveFrom" - } -} diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll index 1bacd2b95840..0e4bc2729051 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll @@ -35,6 +35,12 @@ private predicate implSiblingCandidate( rootType = selfTy.resolveType() } +pragma[nomagic] +private predicate blanketImplSiblingCandidate(ImplItemNode impl, Trait trait) { + impl.isBlanketImplementation() and + trait = impl.resolveTraitTy() +} + /** * Holds if `impl1` and `impl2` are a sibling implementations of `trait`. We * consider implementations to be siblings if they implement the same trait for @@ -44,40 +50,31 @@ private predicate implSiblingCandidate( */ pragma[inline] private predicate implSiblings(TraitItemNode trait, Impl impl1, Impl impl2) { - exists(Type rootType, TypeMention selfTy1, TypeMention selfTy2 | - impl1 != impl2 and - implSiblingCandidate(impl1, trait, rootType, selfTy1) and - implSiblingCandidate(impl2, trait, rootType, selfTy2) and - // In principle the second conjunct below should be superflous, but we still - // have ill-formed type mentions for types that we don't understand. For - // those checking both directions restricts further. Note also that we check - // syntactic equality, whereas equality up to renaming would be more - // correct. - typeMentionEqual(selfTy1, selfTy2) and - typeMentionEqual(selfTy2, selfTy1) + impl1 != impl2 and + ( + exists(Type rootType, TypeMention selfTy1, TypeMention selfTy2 | + implSiblingCandidate(impl1, trait, rootType, selfTy1) and + implSiblingCandidate(impl2, trait, rootType, selfTy2) and + // In principle the second conjunct below should be superflous, but we still + // have ill-formed type mentions for types that we don't understand. For + // those checking both directions restricts further. Note also that we check + // syntactic equality, whereas equality up to renaming would be more + // correct. + typeMentionEqual(selfTy1, selfTy2) and + typeMentionEqual(selfTy2, selfTy1) + ) + or + blanketImplSiblingCandidate(impl1, trait) and + blanketImplSiblingCandidate(impl2, trait) ) } -pragma[nomagic] -private predicate isBlanketImpl(ImplItemNode impl, Trait trait) { - impl.isBlanketImplementation() and - trait = impl.resolveTraitTy() -} - /** * Holds if `impl` is an implementation of `trait` and if another implementation * exists for the same type. */ pragma[nomagic] -private predicate implHasSibling(ImplItemNode impl, Trait trait) { - implSiblings(trait, impl, _) - or - exists(ImplItemNode other | - isBlanketImpl(impl, trait) and - isBlanketImpl(other, trait) and - impl != other - ) -} +private predicate implHasSibling(ImplItemNode impl, Trait trait) { implSiblings(trait, impl, _) } /** * Holds if type parameter `tp` of `trait` occurs in the function `f` with the name diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index 2d768a8e4afa..28d381d5cb8a 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -1293,7 +1293,7 @@ private class BorrowKind extends TBorrowKind { // a constrained type parameter; we should be checking the constraints in this case private predicate typeCanBeUsedForDisambiguation(Type t) { not t instanceof TypeParameter or - t.(TypeParamTypeParameter).getTypeParam() = any(TypeParam tp | not exists(tp.getATypeBound())) + t.(TypeParamTypeParameter).getTypeParam() = any(TypeParam tp | not tp.hasTypeBound()) } /** @@ -2241,7 +2241,8 @@ private module MethodResolution { methodCallBlanketLikeCandidate(mc, _, impl, _, blanketPath, blanketTypeParam) and // Only apply blanket implementations when no other implementations are possible; // this is to account for codebases that use the (unstable) specialization feature - // (https://rust-lang.github.io/rfcs/1210-impl-specialization.html) + // (https://rust-lang.github.io/rfcs/1210-impl-specialization.html), as well as + // cases where our blanket implementation filtering is not precise enough. (mcc.hasNoCompatibleNonBlanketTarget() or not impl.isBlanketImplementation()) | borrow.isNoBorrow() @@ -2878,7 +2879,8 @@ private module NonMethodResolution { fc.resolveCallTargetBlanketLikeCandidate(impl, pos, blanketPath, blanketTypeParam) and // Only apply blanket implementations when no other implementations are possible; // this is to account for codebases that use the (unstable) specialization feature - // (https://rust-lang.github.io/rfcs/1210-impl-specialization.html) + // (https://rust-lang.github.io/rfcs/1210-impl-specialization.html), as well as + // cases where our blanket implementation filtering is not precise enough. (fc.hasNoCompatibleNonBlanketTarget() or not impl.isBlanketImplementation()) ) } From 048afc2c88e66b1a96642a03c9ef4f86eb0b233b Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Tue, 20 Jan 2026 17:21:54 +0000 Subject: [PATCH 096/433] C++: Add assertion inside catch block. This does not yet work because the 'LocalScopeVariable' does not have a result for 'getFunction'. --- .../library-tests/ir/ir/PrintAST.expected | 28 +++++++++++- .../library-tests/ir/ir/aliased_ir.expected | 45 ++++++++++++++----- cpp/ql/test/library-tests/ir/ir/ir.cpp | 6 +++ .../test/library-tests/ir/ir/raw_ir.expected | 43 +++++++++++++----- 4 files changed, 100 insertions(+), 22 deletions(-) diff --git a/cpp/ql/test/library-tests/ir/ir/PrintAST.expected b/cpp/ql/test/library-tests/ir/ir/PrintAST.expected index 9dbcf49777be..ff5bb76bf6be 100644 --- a/cpp/ql/test/library-tests/ir/ir/PrintAST.expected +++ b/cpp/ql/test/library-tests/ir/ir/PrintAST.expected @@ -25562,7 +25562,33 @@ ir.cpp: # 2867| Type = [IntType] int # 2867| Value = [ParenthesisExpr] 0 # 2867| ValueCategory = prvalue -# 2868| getStmt(2): [ReturnStmt] return ... +# 2869| getStmt(2): [TryStmt] try { ... } +# 2869| getStmt(): [BlockStmt] { ... } +# 2870| getStmt(0): [ExprStmt] ExprStmt +# 2870| getExpr(): [ThrowExpr] throw ... +# 2870| Type = [IntType] int +# 2870| ValueCategory = prvalue +# 2870| getExpr(): [Literal] 41 +# 2870| Type = [IntType] int +# 2870| Value = [Literal] 41 +# 2870| ValueCategory = prvalue +# 2871| getChild(1): [Handler] +# 2871| getParameter(): [Parameter] c +# 2871| Type = [IntType] int +# 2871| getBlock(): [CatchBlock] { ... } +# 2872| getStmt(0): [ExprStmt] ExprStmt +# 2872| getExpr(): [Literal] 0 +# 2872| Type = [IntType] int +# 2872| Value = [Literal] 0 +# 2872| ValueCategory = prvalue +# 2872| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2872| Type = [VoidType] void +# 2872| ValueCategory = prvalue +# 2872| getExpr(): [CStyleCast] (void)... +# 2872| Conversion = [VoidConversion] conversion to void +# 2872| Type = [VoidType] void +# 2872| ValueCategory = prvalue +# 2874| getStmt(3): [ReturnStmt] return ... ir23.cpp: # 1| [TopLevelFunction] bool consteval_1() # 1| : diff --git a/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected b/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected index b7fc1b3a96b1..2e183c02f853 100644 --- a/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected +++ b/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected @@ -20990,29 +20990,52 @@ ir.cpp: # 2867| r2867_2(glval) = VariableAddress[b] : # 2867| r2867_3(bool) = Load[b] : &:r2867_2, m2865_8 # 2867| v2867_4(void) = ConditionalBranch : r2867_3 -#-----| False -> Block 3 -#-----| True -> Block 2 +#-----| False -> Block 5 +#-----| True -> Block 4 + +# 2865| Block 1 +# 2865| v2865_11(void) = AliasedUse : m2865_3 +# 2865| v2865_12(void) = ExitFunction : -# 2867| Block 1 -# 2867| m2867_5(int) = Phi : from 2:m2867_11, from 3:m2867_14 +# 2865| Block 2 +# 2865| v2865_13(void) = Unwind : +#-----| Goto -> Block 1 + +# 2867| Block 3 +# 2867| m2867_5(int) = Phi : from 4:m2867_11, from 5:m2867_14 # 2867| r2867_6(glval) = VariableAddress[#temp2867:13] : # 2867| r2867_7(int) = Load[#temp2867:13] : &:r2867_6, m2867_5 # 2867| m2867_8(int) = Store[z] : &:r2867_1, r2867_7 -# 2868| v2868_1(void) = NoOp : -# 2865| v2865_11(void) = ReturnVoid : -# 2865| v2865_12(void) = AliasedUse : m2865_3 -# 2865| v2865_13(void) = ExitFunction : +# 2870| r2870_1(glval) = VariableAddress[#throw2870:9] : +# 2870| r2870_2(int) = Constant[41] : +# 2870| m2870_3(int) = Store[#throw2870:9] : &:r2870_1, r2870_2 +# 2870| v2870_4(void) = ThrowValue : &:r2870_1, m2870_3 +#-----| C++ Exception -> Block 6 -# 2867| Block 2 +# 2867| Block 4 # 2867| r2867_9(int) = Constant[0] : # 2867| r2867_10(glval) = VariableAddress[#temp2867:13] : # 2867| m2867_11(int) = Store[#temp2867:13] : &:r2867_10, r2867_9 -#-----| Goto -> Block 1 +#-----| Goto -> Block 3 -# 2867| Block 3 +# 2867| Block 5 # 2867| r2867_12(int) = Constant[1] : # 2867| r2867_13(glval) = VariableAddress[#temp2867:13] : # 2867| m2867_14(int) = Store[#temp2867:13] : &:r2867_13, r2867_12 +#-----| Goto -> Block 3 + +# 2871| Block 6 +# 2871| v2871_1(void) = CatchByType[int] : +#-----| C++ Exception -> Block 2 +#-----| Goto -> Block 7 + +# 2871| Block 7 +# 2871| r2871_2(glval) = VariableAddress[c] : +# 2871| m2871_3(int) = InitializeParameter[c] : &:r2871_2 +# 2872| r2872_1(int) = Constant[0] : +# 2872| v2872_2(void) = Convert : r2872_1 +# 2874| v2874_1(void) = NoOp : +# 2865| v2865_14(void) = ReturnVoid : #-----| Goto -> Block 1 ir23.cpp: diff --git a/cpp/ql/test/library-tests/ir/ir/ir.cpp b/cpp/ql/test/library-tests/ir/ir/ir.cpp index c915727a7b46..0eb6ef50df0f 100644 --- a/cpp/ql/test/library-tests/ir/ir/ir.cpp +++ b/cpp/ql/test/library-tests/ir/ir/ir.cpp @@ -2865,6 +2865,12 @@ template void test_assert_in_template(short, int, unsigned); void complex_assertions(int x, bool b, int max) { int y = (assert(x > 0), x); int z = b ? (assert(x != 0), 0) : 1; + + try { + throw 41; + } catch (int c) { + assert(c < 42); + } } // semmle-extractor-options: -std=c++20 --clang diff --git a/cpp/ql/test/library-tests/ir/ir/raw_ir.expected b/cpp/ql/test/library-tests/ir/ir/raw_ir.expected index f21b569f8873..431ba110344f 100644 --- a/cpp/ql/test/library-tests/ir/ir/raw_ir.expected +++ b/cpp/ql/test/library-tests/ir/ir/raw_ir.expected @@ -19125,28 +19125,51 @@ ir.cpp: # 2867| r2867_2(glval) = VariableAddress[b] : # 2867| r2867_3(bool) = Load[b] : &:r2867_2, ~m? # 2867| v2867_4(void) = ConditionalBranch : r2867_3 -#-----| False -> Block 3 -#-----| True -> Block 2 +#-----| False -> Block 5 +#-----| True -> Block 4 + +# 2865| Block 1 +# 2865| v2865_10(void) = AliasedUse : ~m? +# 2865| v2865_11(void) = ExitFunction : -# 2867| Block 1 +# 2865| Block 2 +# 2865| v2865_12(void) = Unwind : +#-----| Goto -> Block 1 + +# 2867| Block 3 # 2867| r2867_5(glval) = VariableAddress[#temp2867:13] : # 2867| r2867_6(int) = Load[#temp2867:13] : &:r2867_5, ~m? # 2867| mu2867_7(int) = Store[z] : &:r2867_1, r2867_6 -# 2868| v2868_1(void) = NoOp : -# 2865| v2865_10(void) = ReturnVoid : -# 2865| v2865_11(void) = AliasedUse : ~m? -# 2865| v2865_12(void) = ExitFunction : +# 2870| r2870_1(glval) = VariableAddress[#throw2870:9] : +# 2870| r2870_2(int) = Constant[41] : +# 2870| mu2870_3(int) = Store[#throw2870:9] : &:r2870_1, r2870_2 +# 2870| v2870_4(void) = ThrowValue : &:r2870_1, ~m? +#-----| C++ Exception -> Block 6 -# 2867| Block 2 +# 2867| Block 4 # 2867| r2867_8(int) = Constant[0] : # 2867| r2867_9(glval) = VariableAddress[#temp2867:13] : # 2867| mu2867_10(int) = Store[#temp2867:13] : &:r2867_9, r2867_8 -#-----| Goto -> Block 1 +#-----| Goto -> Block 3 -# 2867| Block 3 +# 2867| Block 5 # 2867| r2867_11(int) = Constant[1] : # 2867| r2867_12(glval) = VariableAddress[#temp2867:13] : # 2867| mu2867_13(int) = Store[#temp2867:13] : &:r2867_12, r2867_11 +#-----| Goto -> Block 3 + +# 2871| Block 6 +# 2871| v2871_1(void) = CatchByType[int] : +#-----| C++ Exception -> Block 2 +#-----| Goto -> Block 7 + +# 2871| Block 7 +# 2871| r2871_2(glval) = VariableAddress[c] : +# 2871| mu2871_3(int) = InitializeParameter[c] : &:r2871_2 +# 2872| r2872_1(int) = Constant[0] : +# 2872| v2872_2(void) = Convert : r2872_1 +# 2874| v2874_1(void) = NoOp : +# 2865| v2865_13(void) = ReturnVoid : #-----| Goto -> Block 1 ir23.cpp: From 1d461ff5ad440b3d4f50a7d52fda9536eb555052 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Wed, 21 Jan 2026 12:09:29 +0000 Subject: [PATCH 097/433] Rust: Test unpacking the Wrapping number. --- .../test/library-tests/dataflow/taint/TaintFlowStep.expected | 1 + rust/ql/test/library-tests/dataflow/taint/main.rs | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected b/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected index 3273569a34ad..07c018316693 100644 --- a/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected +++ b/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected @@ -52,3 +52,4 @@ | main.rs:197:9:197:9 | [post] a [implicit borrow] | main.rs:197:9:197:9 | [post] a | | main.rs:198:9:198:9 | [post] a [implicit borrow] | main.rs:198:9:198:9 | [SSA] a | | main.rs:199:9:199:9 | [post] a [implicit borrow] | main.rs:199:9:199:9 | [SSA] a | +| main.rs:201:21:201:21 | a | main.rs:201:21:201:23 | a.0 | diff --git a/rust/ql/test/library-tests/dataflow/taint/main.rs b/rust/ql/test/library-tests/dataflow/taint/main.rs index 3c54d7063055..f211edd10fc4 100644 --- a/rust/ql/test/library-tests/dataflow/taint/main.rs +++ b/rust/ql/test/library-tests/dataflow/taint/main.rs @@ -192,12 +192,13 @@ mod wrapping { } pub fn wrapping() { - let mut a: Wrapping = Wrapping(1); + let mut a: Wrapping = Wrapping(crate::source(1)); a.add_assign(source(2)); a.add_assign(Wrapping(crate::source(3))); a += source(4); a += std::num::Wrapping(crate::source(5)); - sink(a); // $ hasTaintFlow=2 hasTaintFlow=4 MISSING: hasTaintFlow=3 hasTaintFlow=5 --- we don't currently find any `Call`s for `Wrapping` above + sink(a); // $ hasTaintFlow=2 hasTaintFlow=4 MISSING: hasTaintFlow=1 hasTaintFlow=3 hasTaintFlow=5 + crate::sink(a.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=2 hasTaintFlow=3 hasTaintFlow=4 hasTaintFlow=5 } } From c30dffc7b95c937aa570d10169fc8f0d562d1882 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Wed, 21 Jan 2026 13:24:54 +0000 Subject: [PATCH 098/433] C++: Add more tests. --- .../raw/internal/TranslatedAssertion.qll | 2 +- .../library-tests/ir/ir/PrintAST.expected | 243 +++++++++++------- .../library-tests/ir/ir/aliased_ir.expected | 148 +++++++---- .../ir/assertion_variable_resolution.expected | 0 .../ir/ir/assertion_variable_resolution.ql | 20 ++ cpp/ql/test/library-tests/ir/ir/ir.cpp | 53 ++-- .../test/library-tests/ir/ir/raw_ir.expected | 144 +++++++---- 7 files changed, 388 insertions(+), 222 deletions(-) create mode 100644 cpp/ql/test/library-tests/ir/ir/assertion_variable_resolution.expected create mode 100644 cpp/ql/test/library-tests/ir/ir/assertion_variable_resolution.ql diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll index 0eebcf609511..f2b33de9512f 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll @@ -198,7 +198,7 @@ abstract private class TranslatedAssertionOperand extends TranslatedElement, } /** An operand of an assertion that is a variable access. */ -private class TranslatedAssertionVarAccess extends TranslatedAssertionOperand { +class TranslatedAssertionVarAccess extends TranslatedAssertionOperand { TranslatedAssertionVarAccess() { hasVarAccessMacroArgument(mi, _, index, _) } Variable getVariable() { hasVarAccessMacroArgument(mi, result, index, _) } diff --git a/cpp/ql/test/library-tests/ir/ir/PrintAST.expected b/cpp/ql/test/library-tests/ir/ir/PrintAST.expected index ff5bb76bf6be..f4e9fa38d6d1 100644 --- a/cpp/ql/test/library-tests/ir/ir/PrintAST.expected +++ b/cpp/ql/test/library-tests/ir/ir/PrintAST.expected @@ -25492,103 +25492,156 @@ ir.cpp: # 2859| Type = [VoidType] void # 2859| ValueCategory = prvalue # 2860| getStmt(7): [ReturnStmt] return ... -# 2865| [TopLevelFunction] void complex_assertions(int, bool, int) -# 2865| : -# 2865| getParameter(0): [Parameter] x -# 2865| Type = [IntType] int -# 2865| getParameter(1): [Parameter] b -# 2865| Type = [BoolType] bool -# 2865| getParameter(2): [Parameter] max -# 2865| Type = [IntType] int -# 2865| getEntryPoint(): [BlockStmt] { ... } -# 2866| getStmt(0): [DeclStmt] declaration -# 2866| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y -# 2866| Type = [IntType] int -# 2866| getVariable().getInitializer(): [Initializer] initializer for y -# 2866| getExpr(): [CommaExpr] ... , ... -# 2866| Type = [IntType] int -# 2866| ValueCategory = prvalue(load) -# 2866| getLeftOperand(): [Literal] 0 -# 2866| Type = [IntType] int -# 2866| Value = [Literal] 0 -# 2866| ValueCategory = prvalue -# 2866| getRightOperand(): [VariableAccess] x -# 2866| Type = [IntType] int -# 2866| ValueCategory = prvalue(load) -# 2866| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...) -# 2866| Type = [VoidType] void -# 2866| ValueCategory = prvalue -# 2866| getExpr(): [CStyleCast] (void)... -# 2866| Conversion = [VoidConversion] conversion to void -# 2866| Type = [VoidType] void -# 2866| ValueCategory = prvalue -# 2866| getExpr().getFullyConverted(): [ParenthesisExpr] (...) -# 2866| Type = [IntType] int -# 2866| ValueCategory = prvalue(load) -# 2867| getStmt(1): [DeclStmt] declaration -# 2867| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z -# 2867| Type = [IntType] int -# 2867| getVariable().getInitializer(): [Initializer] initializer for z -# 2867| getExpr(): [ConditionalExpr] ... ? ... : ... -# 2867| Type = [IntType] int -# 2867| ValueCategory = prvalue -# 2867| getCondition(): [VariableAccess] b -# 2867| Type = [BoolType] bool -# 2867| ValueCategory = prvalue(load) -# 2867| getThen(): [CommaExpr] ... , ... -# 2867| Type = [IntType] int -# 2867| Value = [CommaExpr] 0 -# 2867| ValueCategory = prvalue -# 2867| getLeftOperand(): [Literal] 0 -# 2867| Type = [IntType] int -# 2867| Value = [Literal] 0 -# 2867| ValueCategory = prvalue -# 2867| getRightOperand(): [Literal] 0 -# 2867| Type = [IntType] int -# 2867| Value = [Literal] 0 -# 2867| ValueCategory = prvalue -# 2867| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...) -# 2867| Type = [VoidType] void -# 2867| ValueCategory = prvalue -# 2867| getExpr(): [CStyleCast] (void)... -# 2867| Conversion = [VoidConversion] conversion to void -# 2867| Type = [VoidType] void -# 2867| ValueCategory = prvalue -# 2867| getElse(): [Literal] 1 -# 2867| Type = [IntType] int -# 2867| Value = [Literal] 1 -# 2867| ValueCategory = prvalue -# 2867| getThen().getFullyConverted(): [ParenthesisExpr] (...) -# 2867| Type = [IntType] int -# 2867| Value = [ParenthesisExpr] 0 -# 2867| ValueCategory = prvalue -# 2869| getStmt(2): [TryStmt] try { ... } -# 2869| getStmt(): [BlockStmt] { ... } -# 2870| getStmt(0): [ExprStmt] ExprStmt -# 2870| getExpr(): [ThrowExpr] throw ... -# 2870| Type = [IntType] int -# 2870| ValueCategory = prvalue -# 2870| getExpr(): [Literal] 41 -# 2870| Type = [IntType] int -# 2870| Value = [Literal] 41 -# 2870| ValueCategory = prvalue -# 2871| getChild(1): [Handler] -# 2871| getParameter(): [Parameter] c -# 2871| Type = [IntType] int -# 2871| getBlock(): [CatchBlock] { ... } -# 2872| getStmt(0): [ExprStmt] ExprStmt -# 2872| getExpr(): [Literal] 0 +# 2867| [TopLevelFunction] void (unnamed namespace)::complex_assertions(int, bool, int) +# 2867| : +# 2867| getParameter(0): [Parameter] x +# 2867| Type = [IntType] int +# 2867| getParameter(1): [Parameter] b +# 2867| Type = [BoolType] bool +# 2867| getParameter(2): [Parameter] max +# 2867| Type = [IntType] int +# 2867| getEntryPoint(): [BlockStmt] { ... } +# 2868| getStmt(0): [DeclStmt] declaration +# 2868| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y +# 2868| Type = [IntType] int +# 2868| getVariable().getInitializer(): [Initializer] initializer for y +# 2868| getExpr(): [CommaExpr] ... , ... +# 2868| Type = [IntType] int +# 2868| ValueCategory = prvalue(load) +# 2868| getLeftOperand(): [Literal] 0 +# 2868| Type = [IntType] int +# 2868| Value = [Literal] 0 +# 2868| ValueCategory = prvalue +# 2868| getRightOperand(): [VariableAccess] x +# 2868| Type = [IntType] int +# 2868| ValueCategory = prvalue(load) +# 2868| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...) +# 2868| Type = [VoidType] void +# 2868| ValueCategory = prvalue +# 2868| getExpr(): [CStyleCast] (void)... +# 2868| Conversion = [VoidConversion] conversion to void +# 2868| Type = [VoidType] void +# 2868| ValueCategory = prvalue +# 2868| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2868| Type = [IntType] int +# 2868| ValueCategory = prvalue(load) +# 2869| getStmt(1): [DeclStmt] declaration +# 2869| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z +# 2869| Type = [IntType] int +# 2869| getVariable().getInitializer(): [Initializer] initializer for z +# 2869| getExpr(): [ConditionalExpr] ... ? ... : ... +# 2869| Type = [IntType] int +# 2869| ValueCategory = prvalue +# 2869| getCondition(): [VariableAccess] b +# 2869| Type = [BoolType] bool +# 2869| ValueCategory = prvalue(load) +# 2869| getThen(): [CommaExpr] ... , ... +# 2869| Type = [IntType] int +# 2869| Value = [CommaExpr] 0 +# 2869| ValueCategory = prvalue +# 2869| getLeftOperand(): [Literal] 0 +# 2869| Type = [IntType] int +# 2869| Value = [Literal] 0 +# 2869| ValueCategory = prvalue +# 2869| getRightOperand(): [Literal] 0 +# 2869| Type = [IntType] int +# 2869| Value = [Literal] 0 +# 2869| ValueCategory = prvalue +# 2869| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...) +# 2869| Type = [VoidType] void +# 2869| ValueCategory = prvalue +# 2869| getExpr(): [CStyleCast] (void)... +# 2869| Conversion = [VoidConversion] conversion to void +# 2869| Type = [VoidType] void +# 2869| ValueCategory = prvalue +# 2869| getElse(): [Literal] 1 +# 2869| Type = [IntType] int +# 2869| Value = [Literal] 1 +# 2869| ValueCategory = prvalue +# 2869| getThen().getFullyConverted(): [ParenthesisExpr] (...) +# 2869| Type = [IntType] int +# 2869| Value = [ParenthesisExpr] 0 +# 2869| ValueCategory = prvalue +# 2871| getStmt(2): [TryStmt] try { ... } +# 2871| getStmt(): [BlockStmt] { ... } +# 2872| getStmt(0): [ExprStmt] ExprStmt +# 2872| getExpr(): [ThrowExpr] throw ... +# 2872| Type = [IntType] int +# 2872| ValueCategory = prvalue +# 2872| getExpr(): [Literal] 41 # 2872| Type = [IntType] int -# 2872| Value = [Literal] 0 +# 2872| Value = [Literal] 41 # 2872| ValueCategory = prvalue -# 2872| getExpr().getFullyConverted(): [ParenthesisExpr] (...) -# 2872| Type = [VoidType] void -# 2872| ValueCategory = prvalue -# 2872| getExpr(): [CStyleCast] (void)... -# 2872| Conversion = [VoidConversion] conversion to void -# 2872| Type = [VoidType] void -# 2872| ValueCategory = prvalue -# 2874| getStmt(3): [ReturnStmt] return ... +# 2873| getChild(1): [Handler] +# 2873| getParameter(): [Parameter] c +# 2873| Type = [IntType] int +# 2873| getBlock(): [CatchBlock] { ... } +# 2874| getStmt(0): [ExprStmt] ExprStmt +# 2874| getExpr(): [Literal] 0 +# 2874| Type = [IntType] int +# 2874| Value = [Literal] 0 +# 2874| ValueCategory = prvalue +# 2874| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2874| Type = [VoidType] void +# 2874| ValueCategory = prvalue +# 2874| getExpr(): [CStyleCast] (void)... +# 2874| Conversion = [VoidConversion] conversion to void +# 2874| Type = [VoidType] void +# 2874| ValueCategory = prvalue +# 2875| getStmt(1): [ExprStmt] ExprStmt +# 2875| getExpr(): [Literal] 0 +# 2875| Type = [IntType] int +# 2875| Value = [Literal] 0 +# 2875| ValueCategory = prvalue +# 2875| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2875| Type = [VoidType] void +# 2875| ValueCategory = prvalue +# 2875| getExpr(): [CStyleCast] (void)... +# 2875| Conversion = [VoidConversion] conversion to void +# 2875| Type = [VoidType] void +# 2875| ValueCategory = prvalue +# 2878| getStmt(3): [ExprStmt] ExprStmt +# 2878| getExpr(): [Literal] 0 +# 2878| Type = [IntType] int +# 2878| Value = [Literal] 0 +# 2878| ValueCategory = prvalue +# 2878| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2878| Type = [VoidType] void +# 2878| ValueCategory = prvalue +# 2878| getExpr(): [CStyleCast] (void)... +# 2878| Conversion = [VoidConversion] conversion to void +# 2878| Type = [VoidType] void +# 2878| ValueCategory = prvalue +# 2879| getStmt(4): [DeclStmt] declaration +# 2879| getDeclarationEntry(0): [VariableDeclarationEntry] definition of shadowed +# 2879| Type = [IntType] int +# 2881| getStmt(5): [TryStmt] try { ... } +# 2881| getStmt(): [BlockStmt] { ... } +# 2882| getStmt(0): [ExprStmt] ExprStmt +# 2882| getExpr(): [ThrowExpr] throw ... +# 2882| Type = [IntType] int +# 2882| ValueCategory = prvalue +# 2882| getExpr(): [Literal] 41 +# 2882| Type = [IntType] int +# 2882| Value = [Literal] 41 +# 2882| ValueCategory = prvalue +# 2883| getChild(1): [Handler] +# 2883| getParameter(): [Parameter] shadowed +# 2883| Type = [IntType] int +# 2883| getBlock(): [CatchBlock] { ... } +# 2884| getStmt(0): [ExprStmt] ExprStmt +# 2884| getExpr(): [Literal] 0 +# 2884| Type = [IntType] int +# 2884| Value = [Literal] 0 +# 2884| ValueCategory = prvalue +# 2884| getExpr().getFullyConverted(): [ParenthesisExpr] (...) +# 2884| Type = [VoidType] void +# 2884| ValueCategory = prvalue +# 2884| getExpr(): [CStyleCast] (void)... +# 2884| Conversion = [VoidConversion] conversion to void +# 2884| Type = [VoidType] void +# 2884| ValueCategory = prvalue +# 2886| getStmt(6): [ReturnStmt] return ... ir23.cpp: # 1| [TopLevelFunction] bool consteval_1() # 1| : diff --git a/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected b/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected index 2e183c02f853..3df68744f421 100644 --- a/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected +++ b/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected @@ -20967,75 +20967,115 @@ ir.cpp: # 2846| v2846_12(void) = AliasedUse : m2846_3 # 2846| v2846_13(void) = ExitFunction : -# 2865| void complex_assertions(int, bool, int) -# 2865| Block 0 -# 2865| v2865_1(void) = EnterFunction : -# 2865| m2865_2(unknown) = AliasedDefinition : -# 2865| m2865_3(unknown) = InitializeNonLocal : -# 2865| m2865_4(unknown) = Chi : total:m2865_2, partial:m2865_3 -# 2865| r2865_5(glval) = VariableAddress[x] : -# 2865| m2865_6(int) = InitializeParameter[x] : &:r2865_5 -# 2865| r2865_7(glval) = VariableAddress[b] : -# 2865| m2865_8(bool) = InitializeParameter[b] : &:r2865_7 -# 2865| r2865_9(glval) = VariableAddress[max] : -# 2865| m2865_10(int) = InitializeParameter[max] : &:r2865_9 -# 2866| r2866_1(glval) = VariableAddress[y] : -# 2866| r2866_2(int) = Constant[0] : -# 2866| v2866_3(void) = Convert : r2866_2 -# 2866| r2866_4(glval) = VariableAddress[x] : -# 2866| r2866_5(int) = Load[x] : &:r2866_4, m2865_6 -# 2866| r2866_6(int) = CopyValue : r2866_5 -# 2866| m2866_7(int) = Store[y] : &:r2866_1, r2866_6 -# 2867| r2867_1(glval) = VariableAddress[z] : -# 2867| r2867_2(glval) = VariableAddress[b] : -# 2867| r2867_3(bool) = Load[b] : &:r2867_2, m2865_8 -# 2867| v2867_4(void) = ConditionalBranch : r2867_3 +# 2867| void (unnamed namespace)::complex_assertions(int, bool, int) +# 2867| Block 0 +# 2867| v2867_1(void) = EnterFunction : +# 2867| m2867_2(unknown) = AliasedDefinition : +# 2867| m2867_3(unknown) = InitializeNonLocal : +# 2867| m2867_4(unknown) = Chi : total:m2867_2, partial:m2867_3 +# 2867| r2867_5(glval) = VariableAddress[x] : +# 2867| m2867_6(int) = InitializeParameter[x] : &:r2867_5 +# 2867| r2867_7(glval) = VariableAddress[b] : +# 2867| m2867_8(bool) = InitializeParameter[b] : &:r2867_7 +# 2867| r2867_9(glval) = VariableAddress[max] : +# 2867| m2867_10(int) = InitializeParameter[max] : &:r2867_9 +# 2868| r2868_1(glval) = VariableAddress[y] : +# 2868| r2868_2(int) = Constant[0] : +# 2868| v2868_3(void) = Convert : r2868_2 +# 2868| r2868_4(glval) = VariableAddress[x] : +# 2868| r2868_5(int) = Load[x] : &:r2868_4, m2867_6 +# 2868| r2868_6(int) = CopyValue : r2868_5 +# 2868| m2868_7(int) = Store[y] : &:r2868_1, r2868_6 +# 2869| r2869_1(glval) = VariableAddress[z] : +# 2869| r2869_2(glval) = VariableAddress[b] : +# 2869| r2869_3(bool) = Load[b] : &:r2869_2, m2867_8 +# 2869| v2869_4(void) = ConditionalBranch : r2869_3 #-----| False -> Block 5 #-----| True -> Block 4 -# 2865| Block 1 -# 2865| v2865_11(void) = AliasedUse : m2865_3 -# 2865| v2865_12(void) = ExitFunction : +# 2867| Block 1 +# 2867| v2867_11(void) = AliasedUse : m2867_3 +# 2867| v2867_12(void) = ExitFunction : -# 2865| Block 2 -# 2865| v2865_13(void) = Unwind : +# 2867| Block 2 +# 2867| v2867_13(void) = Unwind : #-----| Goto -> Block 1 -# 2867| Block 3 -# 2867| m2867_5(int) = Phi : from 4:m2867_11, from 5:m2867_14 -# 2867| r2867_6(glval) = VariableAddress[#temp2867:13] : -# 2867| r2867_7(int) = Load[#temp2867:13] : &:r2867_6, m2867_5 -# 2867| m2867_8(int) = Store[z] : &:r2867_1, r2867_7 -# 2870| r2870_1(glval) = VariableAddress[#throw2870:9] : -# 2870| r2870_2(int) = Constant[41] : -# 2870| m2870_3(int) = Store[#throw2870:9] : &:r2870_1, r2870_2 -# 2870| v2870_4(void) = ThrowValue : &:r2870_1, m2870_3 +# 2869| Block 3 +# 2869| m2869_5(int) = Phi : from 4:m2869_11, from 5:m2869_14 +# 2869| r2869_6(glval) = VariableAddress[#temp2869:17] : +# 2869| r2869_7(int) = Load[#temp2869:17] : &:r2869_6, m2869_5 +# 2869| m2869_8(int) = Store[z] : &:r2869_1, r2869_7 +# 2872| r2872_1(glval) = VariableAddress[#throw2872:13] : +# 2872| r2872_2(int) = Constant[41] : +# 2872| m2872_3(int) = Store[#throw2872:13] : &:r2872_1, r2872_2 +# 2872| v2872_4(void) = ThrowValue : &:r2872_1, m2872_3 #-----| C++ Exception -> Block 6 -# 2867| Block 4 -# 2867| r2867_9(int) = Constant[0] : -# 2867| r2867_10(glval) = VariableAddress[#temp2867:13] : -# 2867| m2867_11(int) = Store[#temp2867:13] : &:r2867_10, r2867_9 +# 2869| Block 4 +# 2869| r2869_9(int) = Constant[0] : +# 2869| r2869_10(glval) = VariableAddress[#temp2869:17] : +# 2869| m2869_11(int) = Store[#temp2869:17] : &:r2869_10, r2869_9 #-----| Goto -> Block 3 -# 2867| Block 5 -# 2867| r2867_12(int) = Constant[1] : -# 2867| r2867_13(glval) = VariableAddress[#temp2867:13] : -# 2867| m2867_14(int) = Store[#temp2867:13] : &:r2867_13, r2867_12 +# 2869| Block 5 +# 2869| r2869_12(int) = Constant[1] : +# 2869| r2869_13(glval) = VariableAddress[#temp2869:17] : +# 2869| m2869_14(int) = Store[#temp2869:17] : &:r2869_13, r2869_12 #-----| Goto -> Block 3 -# 2871| Block 6 -# 2871| v2871_1(void) = CatchByType[int] : +# 2873| Block 6 +# 2873| v2873_1(void) = CatchByType[int] : #-----| C++ Exception -> Block 2 #-----| Goto -> Block 7 -# 2871| Block 7 -# 2871| r2871_2(glval) = VariableAddress[c] : -# 2871| m2871_3(int) = InitializeParameter[c] : &:r2871_2 -# 2872| r2872_1(int) = Constant[0] : -# 2872| v2872_2(void) = Convert : r2872_1 -# 2874| v2874_1(void) = NoOp : -# 2865| v2865_14(void) = ReturnVoid : +# 2873| Block 7 +# 2873| r2873_2(glval) = VariableAddress[c] : +# 2873| m2873_3(int) = InitializeParameter[c] : &:r2873_2 +# 2874| r2874_1(int) = Constant[0] : +# 2874| v2874_2(void) = Convert : r2874_1 +# 2875| r2875_1(glval) = VariableAddress[shadowed] : +# 2875| r2875_2(int) = Load[shadowed] : &:r2875_1, ~m2867_4 +# 2875| r2875_3(int) = Constant[42] : +# 2875| r2875_4(bool) = CompareLT : r2875_2, r2875_3 +# 2875| v2875_5(void) = ConditionalBranch : r2875_4 +#-----| True -> Block 8 + +# 2878| Block 8 +# 2878| r2878_1(glval) = VariableAddress[shadowed] : +# 2878| r2878_2(int) = Load[shadowed] : &:r2878_1, ~m2867_4 +# 2878| r2878_3(int) = Constant[0] : +# 2878| r2878_4(bool) = CompareGT : r2878_2, r2878_3 +# 2878| v2878_5(void) = ConditionalBranch : r2878_4 +#-----| True -> Block 9 + +# 2879| Block 9 +# 2879| r2879_1(glval) = VariableAddress[shadowed] : +# 2879| m2879_2(int) = Uninitialized[shadowed] : &:r2879_1 +# 2882| r2882_1(glval) = VariableAddress[#throw2882:13] : +# 2882| r2882_2(int) = Constant[41] : +# 2882| m2882_3(int) = Store[#throw2882:13] : &:r2882_1, r2882_2 +# 2882| v2882_4(void) = ThrowValue : &:r2882_1, m2882_3 +#-----| C++ Exception -> Block 10 + +# 2883| Block 10 +# 2883| v2883_1(void) = CatchByType[int] : +#-----| C++ Exception -> Block 2 +#-----| Goto -> Block 11 + +# 2883| Block 11 +# 2883| r2883_2(glval) = VariableAddress[shadowed] : +# 2883| m2883_3(int) = InitializeParameter[shadowed] : &:r2883_2 +# 2884| r2884_1(glval) = VariableAddress[shadowed] : +# 2884| r2884_2(int) = Load[shadowed] : &:r2884_1, m2879_2 +# 2884| r2884_3(int) = Constant[42] : +# 2884| r2884_4(bool) = CompareLT : r2884_2, r2884_3 +# 2884| v2884_5(void) = ConditionalBranch : r2884_4 +#-----| True -> Block 12 + +# 2886| Block 12 +# 2886| v2886_1(void) = NoOp : +# 2867| v2867_14(void) = ReturnVoid : #-----| Goto -> Block 1 ir23.cpp: diff --git a/cpp/ql/test/library-tests/ir/ir/assertion_variable_resolution.expected b/cpp/ql/test/library-tests/ir/ir/assertion_variable_resolution.expected new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/cpp/ql/test/library-tests/ir/ir/assertion_variable_resolution.ql b/cpp/ql/test/library-tests/ir/ir/assertion_variable_resolution.ql new file mode 100644 index 000000000000..fae5baae8be2 --- /dev/null +++ b/cpp/ql/test/library-tests/ir/ir/assertion_variable_resolution.ql @@ -0,0 +1,20 @@ +import cpp +import semmle.code.cpp.ir.IR +import semmle.code.cpp.ir.implementation.raw.internal.TranslatedAssertion +import utils.test.InlineExpectationsTest + +module Test implements TestSig { + string getARelevantTag() { result = "var" } + + predicate hasActualResult(Location location, string element, string tag, string value) { + exists(TranslatedAssertionVarAccess tava, Variable v | + v = tava.getVariable() and + location = tava.getLocation() and + tava.toString() = element and + tag = "var" and + value = v.getLocation().getStartLine().toString() + ) + } +} + +import MakeTest diff --git a/cpp/ql/test/library-tests/ir/ir/ir.cpp b/cpp/ql/test/library-tests/ir/ir/ir.cpp index 0eb6ef50df0f..7b25ed244c29 100644 --- a/cpp/ql/test/library-tests/ir/ir/ir.cpp +++ b/cpp/ql/test/library-tests/ir/ir/ir.cpp @@ -2828,48 +2828,61 @@ void vla_sizeof_test5(int len1, size_t len2) { #define __analysis_assume(x) void test_assert_simple(int x, int y, unsigned u, int shadowed) { - assert(x > 0); - assert(0 < x); - assert(x < y); + assert(x > 0); // $ var=2830 + assert(0 < x); // $ var=2830 + assert(x < y); // $ var=2830 - __analysis_assume(x != 2); + __analysis_assume(x != 2); // $ var=2830 - assert(u < x); + assert(u < x); // $ var=2830 { int shadowed = x; - assert(shadowed > 0); + assert(shadowed > 0); // no assertion generated since the variable is shadowed } } template void test_assert_in_template(T x, int y, unsigned u) { - assert(x > 0); - assert(0 < x); - assert(x < y); + assert(x > 0); // $ var=2846 + assert(0 < x); // $ var=2846 + assert(x < y); // $ var=2846 - __analysis_assume(x != 2); + __analysis_assume(x != 2); // $ var=2846 - assert(u < x); + assert(u < x); // $ var=2846 { int shadowed = x; - assert(shadowed > 0); + assert(shadowed > 0); // $ var=2856 } - assert(x> 0); + assert(x> 0); // $ var=2846 } template void test_assert_in_template(int, int, unsigned); template void test_assert_in_template(short, int, unsigned); +namespace { + int shadowed; + + void complex_assertions(int x, bool b, int max) { + int y = (assert(x > 0), x); // no assertion generated + int z = b ? (assert(x != 0), 0) : 1; // no assertion generated + + try { + throw 41; + } catch (int c) { + assert(c < 42); // $ MISSING: var=2873 + assert(shadowed < 42); // $ SPURIOUS: var=2879 + } -void complex_assertions(int x, bool b, int max) { - int y = (assert(x > 0), x); - int z = b ? (assert(x != 0), 0) : 1; + assert(shadowed > 0); // $ SPURIOUS: var=2879 + int shadowed; - try { - throw 41; - } catch (int c) { - assert(c < 42); + try { + throw 41; + } catch (int shadowed) { + assert(shadowed < 42); // $ SPURIOUS: var=2879 + } } } diff --git a/cpp/ql/test/library-tests/ir/ir/raw_ir.expected b/cpp/ql/test/library-tests/ir/ir/raw_ir.expected index 431ba110344f..e26836196876 100644 --- a/cpp/ql/test/library-tests/ir/ir/raw_ir.expected +++ b/cpp/ql/test/library-tests/ir/ir/raw_ir.expected @@ -19103,73 +19103,113 @@ ir.cpp: # 2846| v2846_11(void) = AliasedUse : ~m? # 2846| v2846_12(void) = ExitFunction : -# 2865| void complex_assertions(int, bool, int) -# 2865| Block 0 -# 2865| v2865_1(void) = EnterFunction : -# 2865| mu2865_2(unknown) = AliasedDefinition : -# 2865| mu2865_3(unknown) = InitializeNonLocal : -# 2865| r2865_4(glval) = VariableAddress[x] : -# 2865| mu2865_5(int) = InitializeParameter[x] : &:r2865_4 -# 2865| r2865_6(glval) = VariableAddress[b] : -# 2865| mu2865_7(bool) = InitializeParameter[b] : &:r2865_6 -# 2865| r2865_8(glval) = VariableAddress[max] : -# 2865| mu2865_9(int) = InitializeParameter[max] : &:r2865_8 -# 2866| r2866_1(glval) = VariableAddress[y] : -# 2866| r2866_2(int) = Constant[0] : -# 2866| v2866_3(void) = Convert : r2866_2 -# 2866| r2866_4(glval) = VariableAddress[x] : -# 2866| r2866_5(int) = Load[x] : &:r2866_4, ~m? -# 2866| r2866_6(int) = CopyValue : r2866_5 -# 2866| mu2866_7(int) = Store[y] : &:r2866_1, r2866_6 -# 2867| r2867_1(glval) = VariableAddress[z] : -# 2867| r2867_2(glval) = VariableAddress[b] : -# 2867| r2867_3(bool) = Load[b] : &:r2867_2, ~m? -# 2867| v2867_4(void) = ConditionalBranch : r2867_3 +# 2867| void (unnamed namespace)::complex_assertions(int, bool, int) +# 2867| Block 0 +# 2867| v2867_1(void) = EnterFunction : +# 2867| mu2867_2(unknown) = AliasedDefinition : +# 2867| mu2867_3(unknown) = InitializeNonLocal : +# 2867| r2867_4(glval) = VariableAddress[x] : +# 2867| mu2867_5(int) = InitializeParameter[x] : &:r2867_4 +# 2867| r2867_6(glval) = VariableAddress[b] : +# 2867| mu2867_7(bool) = InitializeParameter[b] : &:r2867_6 +# 2867| r2867_8(glval) = VariableAddress[max] : +# 2867| mu2867_9(int) = InitializeParameter[max] : &:r2867_8 +# 2868| r2868_1(glval) = VariableAddress[y] : +# 2868| r2868_2(int) = Constant[0] : +# 2868| v2868_3(void) = Convert : r2868_2 +# 2868| r2868_4(glval) = VariableAddress[x] : +# 2868| r2868_5(int) = Load[x] : &:r2868_4, ~m? +# 2868| r2868_6(int) = CopyValue : r2868_5 +# 2868| mu2868_7(int) = Store[y] : &:r2868_1, r2868_6 +# 2869| r2869_1(glval) = VariableAddress[z] : +# 2869| r2869_2(glval) = VariableAddress[b] : +# 2869| r2869_3(bool) = Load[b] : &:r2869_2, ~m? +# 2869| v2869_4(void) = ConditionalBranch : r2869_3 #-----| False -> Block 5 #-----| True -> Block 4 -# 2865| Block 1 -# 2865| v2865_10(void) = AliasedUse : ~m? -# 2865| v2865_11(void) = ExitFunction : +# 2867| Block 1 +# 2867| v2867_10(void) = AliasedUse : ~m? +# 2867| v2867_11(void) = ExitFunction : -# 2865| Block 2 -# 2865| v2865_12(void) = Unwind : +# 2867| Block 2 +# 2867| v2867_12(void) = Unwind : #-----| Goto -> Block 1 -# 2867| Block 3 -# 2867| r2867_5(glval) = VariableAddress[#temp2867:13] : -# 2867| r2867_6(int) = Load[#temp2867:13] : &:r2867_5, ~m? -# 2867| mu2867_7(int) = Store[z] : &:r2867_1, r2867_6 -# 2870| r2870_1(glval) = VariableAddress[#throw2870:9] : -# 2870| r2870_2(int) = Constant[41] : -# 2870| mu2870_3(int) = Store[#throw2870:9] : &:r2870_1, r2870_2 -# 2870| v2870_4(void) = ThrowValue : &:r2870_1, ~m? +# 2869| Block 3 +# 2869| r2869_5(glval) = VariableAddress[#temp2869:17] : +# 2869| r2869_6(int) = Load[#temp2869:17] : &:r2869_5, ~m? +# 2869| mu2869_7(int) = Store[z] : &:r2869_1, r2869_6 +# 2872| r2872_1(glval) = VariableAddress[#throw2872:13] : +# 2872| r2872_2(int) = Constant[41] : +# 2872| mu2872_3(int) = Store[#throw2872:13] : &:r2872_1, r2872_2 +# 2872| v2872_4(void) = ThrowValue : &:r2872_1, ~m? #-----| C++ Exception -> Block 6 -# 2867| Block 4 -# 2867| r2867_8(int) = Constant[0] : -# 2867| r2867_9(glval) = VariableAddress[#temp2867:13] : -# 2867| mu2867_10(int) = Store[#temp2867:13] : &:r2867_9, r2867_8 +# 2869| Block 4 +# 2869| r2869_8(int) = Constant[0] : +# 2869| r2869_9(glval) = VariableAddress[#temp2869:17] : +# 2869| mu2869_10(int) = Store[#temp2869:17] : &:r2869_9, r2869_8 #-----| Goto -> Block 3 -# 2867| Block 5 -# 2867| r2867_11(int) = Constant[1] : -# 2867| r2867_12(glval) = VariableAddress[#temp2867:13] : -# 2867| mu2867_13(int) = Store[#temp2867:13] : &:r2867_12, r2867_11 +# 2869| Block 5 +# 2869| r2869_11(int) = Constant[1] : +# 2869| r2869_12(glval) = VariableAddress[#temp2869:17] : +# 2869| mu2869_13(int) = Store[#temp2869:17] : &:r2869_12, r2869_11 #-----| Goto -> Block 3 -# 2871| Block 6 -# 2871| v2871_1(void) = CatchByType[int] : +# 2873| Block 6 +# 2873| v2873_1(void) = CatchByType[int] : #-----| C++ Exception -> Block 2 #-----| Goto -> Block 7 -# 2871| Block 7 -# 2871| r2871_2(glval) = VariableAddress[c] : -# 2871| mu2871_3(int) = InitializeParameter[c] : &:r2871_2 -# 2872| r2872_1(int) = Constant[0] : -# 2872| v2872_2(void) = Convert : r2872_1 -# 2874| v2874_1(void) = NoOp : -# 2865| v2865_13(void) = ReturnVoid : +# 2873| Block 7 +# 2873| r2873_2(glval) = VariableAddress[c] : +# 2873| mu2873_3(int) = InitializeParameter[c] : &:r2873_2 +# 2874| r2874_1(int) = Constant[0] : +# 2874| v2874_2(void) = Convert : r2874_1 +# 2875| r2875_1(glval) = VariableAddress[shadowed] : +# 2875| r2875_2(int) = Load[shadowed] : &:r2875_1, ~m? +# 2875| r2875_3(int) = Constant[42] : +# 2875| r2875_4(bool) = CompareLT : r2875_2, r2875_3 +# 2875| v2875_5(void) = ConditionalBranch : r2875_4 +#-----| True -> Block 8 + +# 2878| Block 8 +# 2878| r2878_1(glval) = VariableAddress[shadowed] : +# 2878| r2878_2(int) = Load[shadowed] : &:r2878_1, ~m? +# 2878| r2878_3(int) = Constant[0] : +# 2878| r2878_4(bool) = CompareGT : r2878_2, r2878_3 +# 2878| v2878_5(void) = ConditionalBranch : r2878_4 +#-----| True -> Block 9 + +# 2879| Block 9 +# 2879| r2879_1(glval) = VariableAddress[shadowed] : +# 2879| mu2879_2(int) = Uninitialized[shadowed] : &:r2879_1 +# 2882| r2882_1(glval) = VariableAddress[#throw2882:13] : +# 2882| r2882_2(int) = Constant[41] : +# 2882| mu2882_3(int) = Store[#throw2882:13] : &:r2882_1, r2882_2 +# 2882| v2882_4(void) = ThrowValue : &:r2882_1, ~m? +#-----| C++ Exception -> Block 10 + +# 2883| Block 10 +# 2883| v2883_1(void) = CatchByType[int] : +#-----| C++ Exception -> Block 2 +#-----| Goto -> Block 11 + +# 2883| Block 11 +# 2883| r2883_2(glval) = VariableAddress[shadowed] : +# 2883| mu2883_3(int) = InitializeParameter[shadowed] : &:r2883_2 +# 2884| r2884_1(glval) = VariableAddress[shadowed] : +# 2884| r2884_2(int) = Load[shadowed] : &:r2884_1, ~m? +# 2884| r2884_3(int) = Constant[42] : +# 2884| r2884_4(bool) = CompareLT : r2884_2, r2884_3 +# 2884| v2884_5(void) = ConditionalBranch : r2884_4 +#-----| True -> Block 12 + +# 2886| Block 12 +# 2886| v2886_1(void) = NoOp : +# 2867| v2867_13(void) = ReturnVoid : #-----| Goto -> Block 1 ir23.cpp: From e4ec79255bffdf849f0e811aa424c237e02d8b18 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Wed, 21 Jan 2026 13:49:24 +0000 Subject: [PATCH 099/433] C++: Fix bugs in variable resolution for assertions following review comments. --- cpp/ql/lib/semmle/code/cpp/Macro.qll | 3 ++ .../raw/internal/TranslatedAssertion.qll | 42 +++++++++++++------ 2 files changed, 33 insertions(+), 12 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/Macro.qll b/cpp/ql/lib/semmle/code/cpp/Macro.qll index cbffc90d17c1..77139e025e95 100644 --- a/cpp/ql/lib/semmle/code/cpp/Macro.qll +++ b/cpp/ql/lib/semmle/code/cpp/Macro.qll @@ -239,6 +239,9 @@ class MacroInvocation extends MacroAccess { macro_argument_unexpanded(underlyingElement(this), i, result) } + /** Gets the number of arguments for this macro invocation. */ + int getNumberOfArguments() { result = count(int i | exists(this.getUnexpandedArgument(i)) | i) } + /** * Gets the `i`th _expanded_ argument of this macro invocation, where the * first argument has `i = 0`. The result has been expanded for macros _and_ diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll index f2b33de9512f..55818b02858d 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll @@ -33,6 +33,7 @@ private predicate stmtCandidate(Stmt s) { pragma[nomagic] private predicate macroInvocationLocation(int startline, Function f, MacroInvocation mi) { mi.getMacroName() = ["assert", "__analysis_assume"] and + mi.getNumberOfArguments() = 1 and mi.getLocation().hasLocationInfo(_, startline, _, _, _) and f.getEntryPoint().isAffectedByMacro(mi) } @@ -49,7 +50,7 @@ private predicate stmtParentLocation(int startline, Function f, StmtParent p) { * is the only thing on the line. */ pragma[nomagic] -private predicate assertion0(MacroInvocation mi, Stmt s) { +private predicate assertion0(MacroInvocation mi, Stmt s, string arg) { stmtCandidate(s) and s = unique(StmtParent p, int startline, Function f | @@ -61,12 +62,13 @@ private predicate assertion0(MacroInvocation mi, Stmt s) { not p = mi.getAnExpandedElement() | p - ) + ) and + arg = mi.getUnexpandedArgument(0) } private Function getEnclosingFunctionForMacroInvocation(MacroInvocation mi) { exists(Stmt s | - assertion0(mi, s) and + assertion0(mi, s, _) and result = s.getEnclosingFunction() ) } @@ -110,11 +112,28 @@ private predicate parseArgument(string arg, string s, int i, Opcode opcode) { opcode instanceof Opcode::CompareEQ } -/** Gets a local variable named `s` in `f`. */ -pragma[nomagic] -private LocalScopeVariable getAVariableWithNameInFunction(Function f, string s) { - result.getName() = s and - result.getFunction() = f +private Element getAChildScope(Element scope) { result.getParentScope() = scope } + +private predicate hasAVariable(MacroInvocation mi, Stmt s, Element scope) { + assertion0(mi, s, _) and + s.getParent() = scope + or + hasAVariable(mi, s, getAChildScope(scope)) +} + +private LocalScopeVariable getVariable(MacroInvocation mi, int i) { + exists(string operand, string arg, Stmt s | + assertion0(mi, s, arg) and + parseArgument(arg, operand, i, _) and + result = + unique(Variable v | + v.getLocation().getStartLine() < s.getLocation().getStartLine() and + hasAVariable(mi, s, v.getParentScope()) and + v.hasName(operand) + | + v + ) + ) } /** @@ -126,7 +145,7 @@ private predicate hasVarAccessMacroArgument(MacroInvocation mi, Variable var, in arg = mi.getUnexpandedArgument(0) and f = getEnclosingFunctionForMacroInvocation(mi) and parseArgument(arg, s, i, opcode) and - var = unique( | | getAVariableWithNameInFunction(f, s)) + var = getVariable(mi, i) ) } @@ -136,8 +155,7 @@ private predicate hasVarAccessMacroArgument(MacroInvocation mi, Variable var, in */ private predicate hasConstMacroArgument(MacroInvocation mi, int k, int i, Opcode opcode) { exists(string arg, string s | - assertion0(mi, _) and - arg = mi.getUnexpandedArgument(0) and + assertion0(mi, _, arg) and s.toInt() = k and parseArgument(arg, s, i, opcode) ) @@ -160,7 +178,7 @@ private predicate hasAssertionOpcode(MacroInvocation mi, Opcode opcode) { * in the control-flow graph at `s`. */ predicate assertion(MacroInvocation mi, Stmt s) { - assertion0(mi, s) and + assertion0(mi, s, _) and hasAssertionOperand(mi, 0) and hasAssertionOperand(mi, 1) } From 11566ee256a63827b8c00ce6af5498662a706277 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Wed, 21 Jan 2026 13:49:37 +0000 Subject: [PATCH 100/433] C++: Accept test changes. --- .../library-tests/ir/ir/aliased_ir.expected | 52 +++++++------------ cpp/ql/test/library-tests/ir/ir/ir.cpp | 8 +-- .../test/library-tests/ir/ir/raw_ir.expected | 52 +++++++------------ 3 files changed, 44 insertions(+), 68 deletions(-) diff --git a/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected b/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected index 3df68744f421..369cc9495a2b 100644 --- a/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected +++ b/cpp/ql/test/library-tests/ir/ir/aliased_ir.expected @@ -21030,52 +21030,40 @@ ir.cpp: #-----| Goto -> Block 7 # 2873| Block 7 -# 2873| r2873_2(glval) = VariableAddress[c] : -# 2873| m2873_3(int) = InitializeParameter[c] : &:r2873_2 -# 2874| r2874_1(int) = Constant[0] : -# 2874| v2874_2(void) = Convert : r2874_1 -# 2875| r2875_1(glval) = VariableAddress[shadowed] : -# 2875| r2875_2(int) = Load[shadowed] : &:r2875_1, ~m2867_4 -# 2875| r2875_3(int) = Constant[42] : -# 2875| r2875_4(bool) = CompareLT : r2875_2, r2875_3 -# 2875| v2875_5(void) = ConditionalBranch : r2875_4 +# 2873| r2873_2(glval) = VariableAddress[c] : +# 2873| m2873_3(int) = InitializeParameter[c] : &:r2873_2 +# 2874| r2874_1(glval) = VariableAddress[c] : +# 2874| r2874_2(int) = Load[c] : &:r2874_1, m2873_3 +# 2874| r2874_3(int) = Constant[42] : +# 2874| r2874_4(bool) = CompareLT : r2874_2, r2874_3 +# 2874| v2874_5(void) = ConditionalBranch : r2874_4 #-----| True -> Block 8 -# 2878| Block 8 -# 2878| r2878_1(glval) = VariableAddress[shadowed] : -# 2878| r2878_2(int) = Load[shadowed] : &:r2878_1, ~m2867_4 -# 2878| r2878_3(int) = Constant[0] : -# 2878| r2878_4(bool) = CompareGT : r2878_2, r2878_3 -# 2878| v2878_5(void) = ConditionalBranch : r2878_4 -#-----| True -> Block 9 - -# 2879| Block 9 +# 2875| Block 8 +# 2875| r2875_1(int) = Constant[0] : +# 2875| v2875_2(void) = Convert : r2875_1 +# 2878| r2878_1(int) = Constant[0] : +# 2878| v2878_2(void) = Convert : r2878_1 # 2879| r2879_1(glval) = VariableAddress[shadowed] : # 2879| m2879_2(int) = Uninitialized[shadowed] : &:r2879_1 # 2882| r2882_1(glval) = VariableAddress[#throw2882:13] : # 2882| r2882_2(int) = Constant[41] : # 2882| m2882_3(int) = Store[#throw2882:13] : &:r2882_1, r2882_2 # 2882| v2882_4(void) = ThrowValue : &:r2882_1, m2882_3 -#-----| C++ Exception -> Block 10 +#-----| C++ Exception -> Block 9 -# 2883| Block 10 +# 2883| Block 9 # 2883| v2883_1(void) = CatchByType[int] : #-----| C++ Exception -> Block 2 -#-----| Goto -> Block 11 +#-----| Goto -> Block 10 -# 2883| Block 11 +# 2883| Block 10 # 2883| r2883_2(glval) = VariableAddress[shadowed] : # 2883| m2883_3(int) = InitializeParameter[shadowed] : &:r2883_2 -# 2884| r2884_1(glval) = VariableAddress[shadowed] : -# 2884| r2884_2(int) = Load[shadowed] : &:r2884_1, m2879_2 -# 2884| r2884_3(int) = Constant[42] : -# 2884| r2884_4(bool) = CompareLT : r2884_2, r2884_3 -# 2884| v2884_5(void) = ConditionalBranch : r2884_4 -#-----| True -> Block 12 - -# 2886| Block 12 -# 2886| v2886_1(void) = NoOp : -# 2867| v2867_14(void) = ReturnVoid : +# 2884| r2884_1(int) = Constant[0] : +# 2884| v2884_2(void) = Convert : r2884_1 +# 2886| v2886_1(void) = NoOp : +# 2867| v2867_14(void) = ReturnVoid : #-----| Goto -> Block 1 ir23.cpp: diff --git a/cpp/ql/test/library-tests/ir/ir/ir.cpp b/cpp/ql/test/library-tests/ir/ir/ir.cpp index 7b25ed244c29..5defa7e7faf5 100644 --- a/cpp/ql/test/library-tests/ir/ir/ir.cpp +++ b/cpp/ql/test/library-tests/ir/ir/ir.cpp @@ -2871,17 +2871,17 @@ namespace { try { throw 41; } catch (int c) { - assert(c < 42); // $ MISSING: var=2873 - assert(shadowed < 42); // $ SPURIOUS: var=2879 + assert(c < 42); // $ var=2873 + assert(shadowed < 42); // no assertion generated } - assert(shadowed > 0); // $ SPURIOUS: var=2879 + assert(shadowed > 0); // no assertion generated int shadowed; try { throw 41; } catch (int shadowed) { - assert(shadowed < 42); // $ SPURIOUS: var=2879 + assert(shadowed < 42); // no assertion generated } } } diff --git a/cpp/ql/test/library-tests/ir/ir/raw_ir.expected b/cpp/ql/test/library-tests/ir/ir/raw_ir.expected index e26836196876..03278f9aa728 100644 --- a/cpp/ql/test/library-tests/ir/ir/raw_ir.expected +++ b/cpp/ql/test/library-tests/ir/ir/raw_ir.expected @@ -19164,52 +19164,40 @@ ir.cpp: #-----| Goto -> Block 7 # 2873| Block 7 -# 2873| r2873_2(glval) = VariableAddress[c] : -# 2873| mu2873_3(int) = InitializeParameter[c] : &:r2873_2 -# 2874| r2874_1(int) = Constant[0] : -# 2874| v2874_2(void) = Convert : r2874_1 -# 2875| r2875_1(glval) = VariableAddress[shadowed] : -# 2875| r2875_2(int) = Load[shadowed] : &:r2875_1, ~m? -# 2875| r2875_3(int) = Constant[42] : -# 2875| r2875_4(bool) = CompareLT : r2875_2, r2875_3 -# 2875| v2875_5(void) = ConditionalBranch : r2875_4 +# 2873| r2873_2(glval) = VariableAddress[c] : +# 2873| mu2873_3(int) = InitializeParameter[c] : &:r2873_2 +# 2874| r2874_1(glval) = VariableAddress[c] : +# 2874| r2874_2(int) = Load[c] : &:r2874_1, ~m? +# 2874| r2874_3(int) = Constant[42] : +# 2874| r2874_4(bool) = CompareLT : r2874_2, r2874_3 +# 2874| v2874_5(void) = ConditionalBranch : r2874_4 #-----| True -> Block 8 -# 2878| Block 8 -# 2878| r2878_1(glval) = VariableAddress[shadowed] : -# 2878| r2878_2(int) = Load[shadowed] : &:r2878_1, ~m? -# 2878| r2878_3(int) = Constant[0] : -# 2878| r2878_4(bool) = CompareGT : r2878_2, r2878_3 -# 2878| v2878_5(void) = ConditionalBranch : r2878_4 -#-----| True -> Block 9 - -# 2879| Block 9 +# 2875| Block 8 +# 2875| r2875_1(int) = Constant[0] : +# 2875| v2875_2(void) = Convert : r2875_1 +# 2878| r2878_1(int) = Constant[0] : +# 2878| v2878_2(void) = Convert : r2878_1 # 2879| r2879_1(glval) = VariableAddress[shadowed] : # 2879| mu2879_2(int) = Uninitialized[shadowed] : &:r2879_1 # 2882| r2882_1(glval) = VariableAddress[#throw2882:13] : # 2882| r2882_2(int) = Constant[41] : # 2882| mu2882_3(int) = Store[#throw2882:13] : &:r2882_1, r2882_2 # 2882| v2882_4(void) = ThrowValue : &:r2882_1, ~m? -#-----| C++ Exception -> Block 10 +#-----| C++ Exception -> Block 9 -# 2883| Block 10 +# 2883| Block 9 # 2883| v2883_1(void) = CatchByType[int] : #-----| C++ Exception -> Block 2 -#-----| Goto -> Block 11 +#-----| Goto -> Block 10 -# 2883| Block 11 +# 2883| Block 10 # 2883| r2883_2(glval) = VariableAddress[shadowed] : # 2883| mu2883_3(int) = InitializeParameter[shadowed] : &:r2883_2 -# 2884| r2884_1(glval) = VariableAddress[shadowed] : -# 2884| r2884_2(int) = Load[shadowed] : &:r2884_1, ~m? -# 2884| r2884_3(int) = Constant[42] : -# 2884| r2884_4(bool) = CompareLT : r2884_2, r2884_3 -# 2884| v2884_5(void) = ConditionalBranch : r2884_4 -#-----| True -> Block 12 - -# 2886| Block 12 -# 2886| v2886_1(void) = NoOp : -# 2867| v2867_13(void) = ReturnVoid : +# 2884| r2884_1(int) = Constant[0] : +# 2884| v2884_2(void) = Convert : r2884_1 +# 2886| v2886_1(void) = NoOp : +# 2867| v2867_13(void) = ReturnVoid : #-----| Goto -> Block 1 ir23.cpp: From 656ebab776dd22664b79e0efddeeaa294c1b1d9d Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Tue, 13 Jan 2026 14:40:35 +0000 Subject: [PATCH 101/433] Allow MaD barriers This commit was done by Opus 4.5 with the following prompt: In the commit 004d40ee931 I have made it so that C# CodeQL queries which use sinks defined using data extensions (also known as "models-as-data"), which are accessed using `sinkNode(Node node, string kind)`, also use barriers defined using models-as-data, which are accessed using `barrierNode(Node node, string kind)`, with the same `kind` string. Please do the same for C++. If there are any complicated cases then list them at the end for me to do manually. --- cpp/ql/src/Security/CWE/CWE-089/SqlTainted.ql | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cpp/ql/src/Security/CWE/CWE-089/SqlTainted.ql b/cpp/ql/src/Security/CWE/CWE-089/SqlTainted.ql index 5d08afbe304a..8b04b986b891 100644 --- a/cpp/ql/src/Security/CWE/CWE-089/SqlTainted.ql +++ b/cpp/ql/src/Security/CWE/CWE-089/SqlTainted.ql @@ -45,6 +45,9 @@ module SqlTaintedConfig implements DataFlow::ConfigSig { predicate isBarrier(DataFlow::Node node) { node.asExpr().getUnspecifiedType() instanceof IntegralType + or + // barrier defined using models-as-data + barrierNode(node, "sql-injection") } predicate isBarrierIn(DataFlow::Node node) { From 7bd62087a4dfad73d8dc4d2c0dc0fb81672ccc1c Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Wed, 21 Jan 2026 18:06:43 +0000 Subject: [PATCH 102/433] C++ overlay: Simplify QL Remove redundant variable names. --- cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll b/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll index b870bbfb9f68..8272c40b1db1 100644 --- a/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll +++ b/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll @@ -45,13 +45,13 @@ private string getSingleLocationFilePath(@element e) { overlay[local] private string getMultiLocationFilePath(@element e) { exists(@location_default loc | - exists(@var_decl vd | var_decls(vd, e, _, _, loc)) + var_decls(_, e, _, _, loc) or - exists(@fun_decl fd | fun_decls(fd, e, _, _, loc)) + fun_decls(_, e, _, _, loc) or - exists(@type_decl td | type_decls(td, e, loc)) + type_decls(_, e, loc) or - exists(@namespace_decl nd | namespace_decls(nd, e, loc, _)) + namespace_decls(_, e, loc, _) | result = getLocationFilePath(loc) ) From 5e536fb1211f6d4516b7268a8245502fd1bd82f1 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Wed, 21 Jan 2026 18:13:58 +0000 Subject: [PATCH 103/433] C++: Rename `holdsInBase` to `isBase` Makes it consistent with isOverlay. --- cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll b/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll index b870bbfb9f68..4f194d295867 100644 --- a/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll +++ b/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll @@ -62,7 +62,7 @@ private string getMultiLocationFilePath(@element e) { * overlay variant. */ overlay[local] -private predicate holdsInBase() { not isOverlay() } +private predicate isBase() { not isOverlay() } /** * Discards an element from the base variant if: @@ -71,7 +71,7 @@ private predicate holdsInBase() { not isOverlay() } */ overlay[discard_entity] private predicate discardElement(@element e) { - holdsInBase() and + isBase() and ( overlayChangedFiles(getSingleLocationFilePath(e)) or From 64a7d7d8362a3d6513e06056f96974f91c98cb87 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Wed, 21 Jan 2026 19:14:50 +0000 Subject: [PATCH 104/433] C++: Also output variable name in test. --- .../ir/ir/assertion_variable_resolution.ql | 2 +- cpp/ql/test/library-tests/ir/ir/ir.cpp | 26 +++++++++---------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/cpp/ql/test/library-tests/ir/ir/assertion_variable_resolution.ql b/cpp/ql/test/library-tests/ir/ir/assertion_variable_resolution.ql index fae5baae8be2..09420b11c3bc 100644 --- a/cpp/ql/test/library-tests/ir/ir/assertion_variable_resolution.ql +++ b/cpp/ql/test/library-tests/ir/ir/assertion_variable_resolution.ql @@ -12,7 +12,7 @@ module Test implements TestSig { location = tava.getLocation() and tava.toString() = element and tag = "var" and - value = v.getLocation().getStartLine().toString() + value = v.getLocation().getStartLine().toString() + ":" + v.getName() ) } } diff --git a/cpp/ql/test/library-tests/ir/ir/ir.cpp b/cpp/ql/test/library-tests/ir/ir/ir.cpp index 5defa7e7faf5..41494ec00b3c 100644 --- a/cpp/ql/test/library-tests/ir/ir/ir.cpp +++ b/cpp/ql/test/library-tests/ir/ir/ir.cpp @@ -2828,13 +2828,13 @@ void vla_sizeof_test5(int len1, size_t len2) { #define __analysis_assume(x) void test_assert_simple(int x, int y, unsigned u, int shadowed) { - assert(x > 0); // $ var=2830 - assert(0 < x); // $ var=2830 - assert(x < y); // $ var=2830 + assert(x > 0); // $ var=2830:x + assert(0 < x); // $ var=2830:x + assert(x < y); // $ var=2830:x var=2830:y - __analysis_assume(x != 2); // $ var=2830 + __analysis_assume(x != 2); // $ var=2830:x - assert(u < x); // $ var=2830 + assert(u < x); // $ var=2830:u var=2830:x { int shadowed = x; @@ -2844,19 +2844,19 @@ void test_assert_simple(int x, int y, unsigned u, int shadowed) { template void test_assert_in_template(T x, int y, unsigned u) { - assert(x > 0); // $ var=2846 - assert(0 < x); // $ var=2846 - assert(x < y); // $ var=2846 + assert(x > 0); // $ var=2846:x + assert(0 < x); // $ var=2846:x + assert(x < y); // $ var=2846:x var=2846:y - __analysis_assume(x != 2); // $ var=2846 + __analysis_assume(x != 2); // $ var=2846:x - assert(u < x); // $ var=2846 + assert(u < x); // $ var=2846:u var=2846:x { int shadowed = x; - assert(shadowed > 0); // $ var=2856 + assert(shadowed > 0); // $ var=2856:shadowed } - assert(x> 0); // $ var=2846 + assert(x> 0); // $ var=2846:x } template void test_assert_in_template(int, int, unsigned); @@ -2871,7 +2871,7 @@ namespace { try { throw 41; } catch (int c) { - assert(c < 42); // $ var=2873 + assert(c < 42); // $ var=2873:c assert(shadowed < 42); // no assertion generated } From d89967ce8ea71ecdd92f2fe9cd250ea8677e34e9 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Wed, 21 Jan 2026 20:27:39 +0000 Subject: [PATCH 105/433] C++: Add ''isLiveAtEndOfBlock' predicate to 'Definition'. --- .../code/cpp/ir/dataflow/internal/SsaImpl.qll | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll index d4a80ff25c80..28541a3837be 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll @@ -940,6 +940,11 @@ module SsaCached { SsaImpl::phiHasInputFromBlock(phi, inp, bb) } + cached + predicate ssaDefReachesEndOfBlock(IRBlock bb, Definition def) { + SsaImpl::ssaDefReachesEndOfBlock(bb, def, _) + } + predicate variableRead = SsaInput::variableRead/4; predicate variableWrite = SsaInput::variableWrite/4; @@ -1176,6 +1181,14 @@ class Definition extends SsaImpl::Definition { SsaImpl::uncertainWriteDefinitionInput(this, result) } + /** + * Holds if this SSA definition is live at the end of basic block `bb`. + * That is, this definition reaches the end of basic block `bb`, at which + * point it is still live, without crossing another SSA definition of the + * same source variable. + */ + predicate isLiveAtEndOfBlock(IRBlock bb) { ssaDefReachesEndOfBlock(bb, this) } + /** * Gets a definition that ultimately defines this SSA definition and is * not itself a phi node. From 60ee92d8346b2efc91e513cd16103ca34f258eab Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Wed, 21 Jan 2026 20:28:28 +0000 Subject: [PATCH 106/433] C++: Drive-by fix: Don't use the uncached ''getAPhiInputOrPriorDefinition' predicate. Instead, cache it and call it like we are supposed to. --- .../lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll index 28541a3837be..fb24a1db69fd 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll @@ -940,6 +940,11 @@ module SsaCached { SsaImpl::phiHasInputFromBlock(phi, inp, bb) } + cached + predicate uncertainWriteDefinitionInput(Definition uncertain, Definition inp) { + SsaImpl::uncertainWriteDefinitionInput(uncertain, inp) + } + cached predicate ssaDefReachesEndOfBlock(IRBlock bb, Definition def) { SsaImpl::ssaDefReachesEndOfBlock(bb, def, _) @@ -1178,7 +1183,7 @@ class Definition extends SsaImpl::Definition { private Definition getAPhiInputOrPriorDefinition() { result = this.(PhiNode).getAnInput() or - SsaImpl::uncertainWriteDefinitionInput(this, result) + uncertainWriteDefinitionInput(this, result) } /** From 65ca8849f2f2554a56cc05182f4d2a501dbb0c06 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 12 Jan 2026 14:25:36 +0100 Subject: [PATCH 107/433] Type inference: Disable universal conditions --- .../typeinference/BlanketImplementation.qll | 2 - .../internal/typeinference/TypeInference.qll | 8 ---- .../test/library-tests/type-inference/main.rs | 2 +- .../type-inference/type-inference.expected | 2 - .../typeinference/internal/TypeInference.qll | 46 ++++++++----------- 5 files changed, 20 insertions(+), 40 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll b/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll index 1d2eda61ddb4..fee912dc8bc3 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll @@ -117,8 +117,6 @@ module SatisfiesBlanketConstraint< predicate relevantConstraint(ArgumentTypeAndBlanketOffset ato, Type constraint) { relevantConstraint(ato, _, constraint.(TraitType).getTrait()) } - - predicate useUniversalConditions() { none() } } private module SatisfiesBlanketConstraint = diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index 9ad964854cf5..c4a76ad68025 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -2193,8 +2193,6 @@ private module MethodResolution { exists(mc) and constraint.(TraitType).getTrait() instanceof DerefTrait } - - predicate useUniversalConditions() { none() } } private module MethodCallSatisfiesDerefConstraint = @@ -3566,8 +3564,6 @@ private module AwaitSatisfiesConstraintInput implements SatisfiesConstraintInput exists(term) and constraint.(TraitType).getTrait() instanceof FutureTrait } - - predicate useUniversalConditions() { none() } } pragma[nomagic] @@ -3764,8 +3760,6 @@ private module ForIterableSatisfiesConstraintInput implements t instanceof IntoIteratorTrait ) } - - predicate useUniversalConditions() { none() } } pragma[nomagic] @@ -3817,8 +3811,6 @@ private module InvokedClosureSatisfiesConstraintInput implements exists(term) and constraint.(TraitType).getTrait() instanceof FnOnceTrait } - - predicate useUniversalConditions() { none() } } /** Gets the type of `ce` when viewed as an implementation of `FnOnce`. */ diff --git a/rust/ql/test/library-tests/type-inference/main.rs b/rust/ql/test/library-tests/type-inference/main.rs index a7efa447647a..5134b26b04eb 100644 --- a/rust/ql/test/library-tests/type-inference/main.rs +++ b/rust/ql/test/library-tests/type-inference/main.rs @@ -438,7 +438,7 @@ mod method_non_parametric_trait_impl { let thing = MyThing { a: S1 }; let i = thing.convert_to(); // $ type=i:S1 target=T::convert_to - let j = convert_to(thing); // $ type=j:S1 target=convert_to + let j = convert_to(thing); // $ target=convert_to $ MISSING: type=j:S1 -- the blanket implementation `impl> ConvertTo for T` is currently not included in the constraint analysis } } diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 197ce9ae47fb..c5f797efd2f1 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -7151,8 +7151,6 @@ inferType | main.rs:440:17:440:21 | thing | | main.rs:224:5:227:5 | MyThing | | main.rs:440:17:440:21 | thing | A | main.rs:235:5:236:14 | S1 | | main.rs:440:17:440:34 | thing.convert_to() | | main.rs:235:5:236:14 | S1 | -| main.rs:441:13:441:13 | j | | main.rs:235:5:236:14 | S1 | -| main.rs:441:17:441:33 | convert_to(...) | | main.rs:235:5:236:14 | S1 | | main.rs:441:28:441:32 | thing | | main.rs:224:5:227:5 | MyThing | | main.rs:441:28:441:32 | thing | A | main.rs:235:5:236:14 | S1 | | main.rs:450:26:450:29 | SelfParam | | main.rs:449:5:453:5 | Self [trait OverlappingTrait] | diff --git a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll index 05a8d31ef879..5295048623e1 100644 --- a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll +++ b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll @@ -841,15 +841,6 @@ module Make1 Input1> { signature module SatisfiesConstraintInputSig { /** Holds if it is relevant to know if `term` satisfies `constraint`. */ predicate relevantConstraint(HasTypeTree term, Type constraint); - - /** - * Holds if constraints that are satisfied through conditions that are - * universally quantified type parameters should be used. Such type - * parameters might have type parameter constraints, and these are _not_ - * checked. Hence using these represent a trade-off between too many - * constraints and too few constraints being satisfied. - */ - default predicate useUniversalConditions() { any() } } module SatisfiesConstraint< @@ -901,12 +892,14 @@ module Make1 Input1> { TypeMention constraintMention ) { exists(Type type | hasTypeConstraint(tt, type, constraint) | - useUniversalConditions() and // todo: remove, and instead check constraints - not exists(countConstraintImplementations(type, constraint)) and - conditionSatisfiesConstraintTypeAt(abs, condition, constraintMention, _, _) and - resolveTypeMentionRoot(condition) = abs.getATypeParameter() and - constraint = resolveTypeMentionRoot(constraintMention) - or + // TODO: Handle universal conditions properly, which means checking type parameter constraints + // Also remember to update logic in `hasNotConstraintMention` + // + // not exists(countConstraintImplementations(type, constraint)) and + // conditionSatisfiesConstraintTypeAt(abs, condition, constraintMention, _, _) and + // resolveTypeMentionRoot(condition) = abs.getATypeParameter() and + // constraint = resolveTypeMentionRoot(constraintMention) + // or countConstraintImplementations(type, constraint) > 0 and rootTypesSatisfaction(type, constraint, abs, condition, constraintMention) and // When there are multiple ways the type could implement the @@ -936,18 +929,17 @@ module Make1 Input1> { pragma[nomagic] private predicate hasNotConstraintMention(HasTypeTree tt, Type constraint) { exists(Type type | hasTypeConstraint(tt, type, constraint) | - ( - not useUniversalConditions() - or - exists(countConstraintImplementations(type, constraint)) - or - forall(TypeAbstraction abs, TypeMention condition, TypeMention constraintMention | - conditionSatisfiesConstraintTypeAt(abs, condition, constraintMention, _, _) and - resolveTypeMentionRoot(condition) = abs.getATypeParameter() - | - not constraint = resolveTypeMentionRoot(constraintMention) - ) - ) and + // TODO: Handle universal conditions properly, which means taking type parameter constraints into account + // ( + // exists(countConstraintImplementations(type, constraint)) + // or + // forall(TypeAbstraction abs, TypeMention condition, TypeMention constraintMention | + // conditionSatisfiesConstraintTypeAt(abs, condition, constraintMention, _, _) and + // resolveTypeMentionRoot(condition) = abs.getATypeParameter() + // | + // not constraint = resolveTypeMentionRoot(constraintMention) + // ) + // ) and ( countConstraintImplementations(type, constraint) = 0 or From 80d543ecae6fd81e583fdbb4c1f6c18b8f098ea9 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Thu, 22 Jan 2026 10:05:08 +0100 Subject: [PATCH 108/433] QL4QL: Use nightly CodeQL CLI --- .github/workflows/ql-for-ql-build.yml | 1 + .github/workflows/ql-for-ql-tests.yml | 2 ++ 2 files changed, 3 insertions(+) diff --git a/.github/workflows/ql-for-ql-build.yml b/.github/workflows/ql-for-ql-build.yml index 9c568a9b5729..e05a7c39c4b8 100644 --- a/.github/workflows/ql-for-ql-build.yml +++ b/.github/workflows/ql-for-ql-build.yml @@ -27,6 +27,7 @@ jobs: uses: github/codeql-action/init@main with: languages: javascript # does not matter + tools: nightly - uses: ./.github/actions/os-version id: os_version ### Build the extractor ### diff --git a/.github/workflows/ql-for-ql-tests.yml b/.github/workflows/ql-for-ql-tests.yml index fdb9da284cef..e21860519041 100644 --- a/.github/workflows/ql-for-ql-tests.yml +++ b/.github/workflows/ql-for-ql-tests.yml @@ -30,6 +30,7 @@ jobs: uses: github/codeql-action/init@main with: languages: javascript # does not matter + tools: nightly - uses: ./.github/actions/os-version id: os_version - uses: actions/cache@v3 @@ -75,6 +76,7 @@ jobs: uses: github/codeql-action/init@main with: languages: javascript # does not matter + tools: nightly - uses: ./.github/actions/os-version id: os_version - uses: actions/cache@v3 From f8d0a0d509b93ea486961e0b7b1cad8c538c8a9b Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Wed, 21 Jan 2026 12:55:22 +0000 Subject: [PATCH 109/433] Rust: Expand the Wrapping test some more. --- .../dataflow/taint/TaintFlowStep.expected | 26 ++++++++-- .../dataflow/taint/inline-taint-flow.expected | 51 +++++++++++-------- .../test/library-tests/dataflow/taint/main.rs | 51 +++++++++++++++++-- 3 files changed, 98 insertions(+), 30 deletions(-) diff --git a/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected b/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected index 07c018316693..316b532b0656 100644 --- a/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected +++ b/rust/ql/test/library-tests/dataflow/taint/TaintFlowStep.expected @@ -47,9 +47,25 @@ | main.rs:173:5:173:5 | [post] a [implicit borrow] | main.rs:173:5:173:5 | [post] a | | main.rs:174:5:174:5 | [post] a [implicit borrow] | main.rs:174:5:174:5 | [post] a | | main.rs:175:5:175:5 | [post] a [implicit borrow] | main.rs:175:5:175:5 | [post] a | -| main.rs:191:24:191:24 | s | main.rs:191:18:191:24 | FormatArgsExpr | -| main.rs:196:9:196:9 | [post] a [implicit borrow] | main.rs:196:9:196:9 | [post] a | -| main.rs:197:9:197:9 | [post] a [implicit borrow] | main.rs:197:9:197:9 | [post] a | -| main.rs:198:9:198:9 | [post] a [implicit borrow] | main.rs:198:9:198:9 | [SSA] a | -| main.rs:199:9:199:9 | [post] a [implicit borrow] | main.rs:199:9:199:9 | [SSA] a | +| main.rs:191:9:191:9 | i | main.rs:191:9:191:18 | i as usize | +| main.rs:195:24:195:24 | s | main.rs:195:18:195:24 | FormatArgsExpr | | main.rs:201:21:201:21 | a | main.rs:201:21:201:23 | a.0 | +| main.rs:203:9:203:9 | [post] a [implicit borrow] | main.rs:203:9:203:9 | [post] a | +| main.rs:204:9:204:9 | [post] a [implicit borrow] | main.rs:204:9:204:9 | [post] a | +| main.rs:206:21:206:21 | a | main.rs:206:21:206:23 | a.0 | +| main.rs:209:9:209:9 | [post] a [implicit borrow] | main.rs:209:9:209:9 | [SSA] a | +| main.rs:210:9:210:9 | [post] a [implicit borrow] | main.rs:210:9:210:9 | [SSA] a | +| main.rs:212:21:212:21 | a | main.rs:212:21:212:23 | a.0 | +| main.rs:215:9:215:9 | [post] a [implicit borrow] | main.rs:215:9:215:9 | [SSA] a | +| main.rs:216:9:216:9 | [post] a [implicit borrow] | main.rs:216:9:216:9 | [SSA] a | +| main.rs:218:21:218:21 | a | main.rs:218:21:218:23 | a.0 | +| main.rs:221:9:221:9 | [post] a [implicit borrow] | main.rs:221:9:221:9 | [SSA] a | +| main.rs:223:21:223:21 | a | main.rs:223:21:223:23 | a.0 | +| main.rs:228:21:228:22 | v1 | main.rs:228:21:228:24 | v1.0 | +| main.rs:230:21:230:22 | v2 | main.rs:230:21:230:24 | v2.0 | +| main.rs:232:21:232:22 | v3 | main.rs:232:21:232:24 | v3.0 | +| main.rs:234:21:234:22 | v4 | main.rs:234:21:234:24 | v4.0 | +| main.rs:236:21:236:22 | v5 | main.rs:236:21:236:24 | v5.0 | +| main.rs:238:21:238:22 | v6 | main.rs:238:21:238:24 | v6.0 | +| main.rs:240:21:240:22 | v7 | main.rs:240:21:240:24 | v7.0 | +| main.rs:242:21:242:22 | v8 | main.rs:242:21:242:24 | v8.0 | diff --git a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected index 3f538a7500ed..fc5d67fa7325 100644 --- a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected +++ b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected @@ -132,16 +132,20 @@ edges | main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:19 | | main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | provenance | MaD:9 | | main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:20 | -| main.rs:196:9:196:9 | [post] a | main.rs:197:9:197:9 | a | provenance | | -| main.rs:196:9:196:9 | [post] a | main.rs:198:9:198:9 | a | provenance | | -| main.rs:196:22:196:30 | source(...) | main.rs:196:9:196:9 | [post] a | provenance | MaD:3 | -| main.rs:196:22:196:30 | source(...) | main.rs:196:9:196:9 | [post] a | provenance | MaD:4 | -| main.rs:197:9:197:9 | [post] a | main.rs:198:9:198:9 | a | provenance | | -| main.rs:197:9:197:9 | a | main.rs:197:9:197:9 | [post] a | provenance | MaD:4 | -| main.rs:198:9:198:9 | a | main.rs:199:9:199:9 | a | provenance | MaD:4 | -| main.rs:198:14:198:22 | source(...) | main.rs:199:9:199:9 | a | provenance | MaD:3 | -| main.rs:198:14:198:22 | source(...) | main.rs:199:9:199:9 | a | provenance | MaD:4 | -| main.rs:199:9:199:9 | a | main.rs:200:14:200:14 | a | provenance | MaD:4 | +| main.rs:203:9:203:9 | [post] a | main.rs:204:9:204:9 | a | provenance | | +| main.rs:203:9:203:9 | [post] a | main.rs:205:14:205:14 | a | provenance | | +| main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a | provenance | MaD:3 | +| main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a | provenance | MaD:4 | +| main.rs:204:9:204:9 | [post] a | main.rs:205:14:205:14 | a | provenance | | +| main.rs:204:9:204:9 | a | main.rs:204:9:204:9 | [post] a | provenance | MaD:4 | +| main.rs:208:9:208:9 | a | main.rs:209:9:209:9 | a | provenance | | +| main.rs:208:13:208:21 | source(...) | main.rs:208:9:208:9 | a | provenance | | +| main.rs:209:9:209:9 | a | main.rs:210:9:210:9 | a | provenance | MaD:4 | +| main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a | provenance | MaD:3 | +| main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a | provenance | MaD:4 | +| main.rs:210:9:210:9 | a | main.rs:211:14:211:14 | a | provenance | MaD:4 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:23 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:24 | nodes | main.rs:12:9:12:9 | a | semmle.label | a | | main.rs:12:13:12:22 | source(...) | semmle.label | source(...) | @@ -266,14 +270,19 @@ nodes | main.rs:178:10:178:24 | ... .neg() | semmle.label | ... .neg() | | main.rs:179:10:179:18 | source(...) | semmle.label | source(...) | | main.rs:179:10:179:24 | ... .not() | semmle.label | ... .not() | -| main.rs:196:9:196:9 | [post] a | semmle.label | [post] a | -| main.rs:196:22:196:30 | source(...) | semmle.label | source(...) | -| main.rs:197:9:197:9 | [post] a | semmle.label | [post] a | -| main.rs:197:9:197:9 | a | semmle.label | a | -| main.rs:198:9:198:9 | a | semmle.label | a | -| main.rs:198:14:198:22 | source(...) | semmle.label | source(...) | -| main.rs:199:9:199:9 | a | semmle.label | a | -| main.rs:200:14:200:14 | a | semmle.label | a | +| main.rs:203:9:203:9 | [post] a | semmle.label | [post] a | +| main.rs:203:22:203:30 | source(...) | semmle.label | source(...) | +| main.rs:204:9:204:9 | [post] a | semmle.label | [post] a | +| main.rs:204:9:204:9 | a | semmle.label | a | +| main.rs:205:14:205:14 | a | semmle.label | a | +| main.rs:208:9:208:9 | a | semmle.label | a | +| main.rs:208:13:208:21 | source(...) | semmle.label | source(...) | +| main.rs:209:9:209:9 | a | semmle.label | a | +| main.rs:209:14:209:22 | source(...) | semmle.label | source(...) | +| main.rs:210:9:210:9 | a | semmle.label | a | +| main.rs:211:14:211:14 | a | semmle.label | a | +| main.rs:221:15:221:30 | source_usize(...) | semmle.label | source_usize(...) | +| main.rs:222:14:222:14 | a | semmle.label | a | subpaths testFailures #select @@ -325,5 +334,7 @@ testFailures | main.rs:176:10:176:10 | a | main.rs:175:21:175:29 | source(...) | main.rs:176:10:176:10 | a | $@ | main.rs:175:21:175:29 | source(...) | source(...) | | main.rs:178:10:178:24 | ... .neg() | main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | $@ | main.rs:178:10:178:18 | source(...) | source(...) | | main.rs:179:10:179:24 | ... .not() | main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | $@ | main.rs:179:10:179:18 | source(...) | source(...) | -| main.rs:200:14:200:14 | a | main.rs:196:22:196:30 | source(...) | main.rs:200:14:200:14 | a | $@ | main.rs:196:22:196:30 | source(...) | source(...) | -| main.rs:200:14:200:14 | a | main.rs:198:14:198:22 | source(...) | main.rs:200:14:200:14 | a | $@ | main.rs:198:14:198:22 | source(...) | source(...) | +| main.rs:205:14:205:14 | a | main.rs:203:22:203:30 | source(...) | main.rs:205:14:205:14 | a | $@ | main.rs:203:22:203:30 | source(...) | source(...) | +| main.rs:211:14:211:14 | a | main.rs:208:13:208:21 | source(...) | main.rs:211:14:211:14 | a | $@ | main.rs:208:13:208:21 | source(...) | source(...) | +| main.rs:211:14:211:14 | a | main.rs:209:14:209:22 | source(...) | main.rs:211:14:211:14 | a | $@ | main.rs:209:14:209:22 | source(...) | source(...) | +| main.rs:222:14:222:14 | a | main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | $@ | main.rs:221:15:221:30 | source_usize(...) | source_usize(...) | diff --git a/rust/ql/test/library-tests/dataflow/taint/main.rs b/rust/ql/test/library-tests/dataflow/taint/main.rs index f211edd10fc4..3df882befb58 100644 --- a/rust/ql/test/library-tests/dataflow/taint/main.rs +++ b/rust/ql/test/library-tests/dataflow/taint/main.rs @@ -181,24 +181,65 @@ fn std_ops() { mod wrapping { use std::num::Wrapping; - use std::ops::AddAssign; + use std::ops::{Add, AddAssign, Neg, Not}; fn source(i: i64) -> Wrapping { Wrapping(i) } + fn source_usize(i: i64) -> usize { + i as usize + } + fn sink(s: Wrapping) { println!("{}", s); } pub fn wrapping() { let mut a: Wrapping = Wrapping(crate::source(1)); + sink(a); // $ MISSING: hasTaintFlow=1 + crate::sink(a.0); // $ MISSING: hasTaintFlow=1 + a.add_assign(source(2)); a.add_assign(Wrapping(crate::source(3))); - a += source(4); - a += std::num::Wrapping(crate::source(5)); - sink(a); // $ hasTaintFlow=2 hasTaintFlow=4 MISSING: hasTaintFlow=1 hasTaintFlow=3 hasTaintFlow=5 - crate::sink(a.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=2 hasTaintFlow=3 hasTaintFlow=4 hasTaintFlow=5 + sink(a); // $ hasTaintFlow=2 MISSING: hasTaintFlow=1 hasTaintFlow=3 + crate::sink(a.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=2 hasTaintFlow=3 + + a = source(4); + a += source(5); + a += std::num::Wrapping(crate::source(6)); + sink(a); // $ hasTaintFlow=4 hasTaintFlow=5 MISSING: hasTaintFlow=6 + crate::sink(a.0); // $ MISSING: hasTaintFlow=4 hasTaintFlow=5 hasTaintFlow=6 + + a = source(7); + a &= source(8); + a &= Wrapping(crate::source(9)); + sink(a); // $ MISSING: hasTaintFlow=7 hasTaintFlow=8 hasTaintFlow=9 + crate::sink(a.0); // $ MISSING: hasTaintFlow=7 hasTaintFlow=8 hasTaintFlow=9 + + a = source(10); + a <<= source_usize(11); + sink(a); // $ hasTaintFlow=11 MISSING: hasTaintFlow=10 + crate::sink(a.0); // $ MISSING: hasTaintFlow=10 hasTaintFlow=11 + + let b: Wrapping = Wrapping(crate::source(1)); + let c: Wrapping = Wrapping(crate::source(2)); + let v1 = b + c; + crate::sink(v1.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=2 + let v2 = b.add(c); + crate::sink(v2.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=2 + let v3 = -b; + crate::sink(v3.0); // $ MISSING: hasTaintFlow=1 + let v4 = b.neg(); + crate::sink(v4.0); // $ MISSING: hasTaintFlow=1 + let v5 = !b; + crate::sink(v5.0); // $ MISSING: hasTaintFlow=1 + let v6 = b.not(); + crate::sink(v6.0); // $ MISSING: hasTaintFlow=1 + let v7 = b & c; + crate::sink(v7.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=2 + let v8 = b << source_usize(3); + crate::sink(v8.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=3 } } From e8ef58d381063db39e24d699d267a80bbbfc84e6 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Wed, 21 Jan 2026 13:04:47 +0000 Subject: [PATCH 110/433] Rust: Fix an issue with identifying sources and sinks in the test. --- rust/ql/lib/utils/test/InlineFlowTest.qll | 2 +- .../dataflow/taint/inline-taint-flow.expected | 35 +++++++++++++++++++ .../test/library-tests/dataflow/taint/main.rs | 10 +++--- 3 files changed, 41 insertions(+), 6 deletions(-) diff --git a/rust/ql/lib/utils/test/InlineFlowTest.qll b/rust/ql/lib/utils/test/InlineFlowTest.qll index aad06087d283..704172b95bd9 100644 --- a/rust/ql/lib/utils/test/InlineFlowTest.qll +++ b/rust/ql/lib/utils/test/InlineFlowTest.qll @@ -19,7 +19,7 @@ private import internal.InlineExpectationsTestImpl as InlineExpectationsTestImpl */ bindingset[name] private predicate callTargetName(CallExpr call, string name) { - call.getFunction().(PathExpr).toString().matches(name + "%") + call.getFunction().(PathExpr).getPath().getText().matches(name + "%") } private module FlowTestImpl implements InputSig { diff --git a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected index fc5d67fa7325..c4f606f007dc 100644 --- a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected +++ b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected @@ -132,20 +132,35 @@ edges | main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:19 | | main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | provenance | MaD:9 | | main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:20 | +| main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:201:21:201:21 | a [Wrapping] | provenance | | +| main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:206:21:206:21 | a [Wrapping] | provenance | | +| main.rs:199:36:199:61 | Wrapping(...) [Wrapping] | main.rs:199:13:199:17 | mut a [Wrapping] | provenance | | +| main.rs:199:45:199:60 | ...::source(...) | main.rs:199:36:199:61 | Wrapping(...) [Wrapping] | provenance | | +| main.rs:201:21:201:21 | a [Wrapping] | main.rs:201:21:201:23 | a.0 | provenance | | | main.rs:203:9:203:9 | [post] a | main.rs:204:9:204:9 | a | provenance | | | main.rs:203:9:203:9 | [post] a | main.rs:205:14:205:14 | a | provenance | | +| main.rs:203:9:203:9 | [post] a | main.rs:206:21:206:23 | a.0 | provenance | | | main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a | provenance | MaD:3 | | main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a | provenance | MaD:4 | | main.rs:204:9:204:9 | [post] a | main.rs:205:14:205:14 | a | provenance | | +| main.rs:204:9:204:9 | [post] a | main.rs:206:21:206:23 | a.0 | provenance | | | main.rs:204:9:204:9 | a | main.rs:204:9:204:9 | [post] a | provenance | MaD:4 | +| main.rs:206:21:206:21 | a [Wrapping] | main.rs:206:21:206:23 | a.0 | provenance | | | main.rs:208:9:208:9 | a | main.rs:209:9:209:9 | a | provenance | | | main.rs:208:13:208:21 | source(...) | main.rs:208:9:208:9 | a | provenance | | | main.rs:209:9:209:9 | a | main.rs:210:9:210:9 | a | provenance | MaD:4 | | main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a | provenance | MaD:3 | | main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a | provenance | MaD:4 | | main.rs:210:9:210:9 | a | main.rs:211:14:211:14 | a | provenance | MaD:4 | +| main.rs:210:9:210:9 | a | main.rs:212:21:212:23 | a.0 | provenance | MaD:4 | | main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:23 | | main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:24 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:23 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:24 | +| main.rs:241:13:241:14 | v8 | main.rs:242:21:242:24 | v8.0 | provenance | | +| main.rs:241:18:241:37 | ... << ... | main.rs:241:13:241:14 | v8 | provenance | | +| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:21 | +| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:22 | nodes | main.rs:12:9:12:9 | a | semmle.label | a | | main.rs:12:13:12:22 | source(...) | semmle.label | source(...) | @@ -270,19 +285,32 @@ nodes | main.rs:178:10:178:24 | ... .neg() | semmle.label | ... .neg() | | main.rs:179:10:179:18 | source(...) | semmle.label | source(...) | | main.rs:179:10:179:24 | ... .not() | semmle.label | ... .not() | +| main.rs:199:13:199:17 | mut a [Wrapping] | semmle.label | mut a [Wrapping] | +| main.rs:199:36:199:61 | Wrapping(...) [Wrapping] | semmle.label | Wrapping(...) [Wrapping] | +| main.rs:199:45:199:60 | ...::source(...) | semmle.label | ...::source(...) | +| main.rs:201:21:201:21 | a [Wrapping] | semmle.label | a [Wrapping] | +| main.rs:201:21:201:23 | a.0 | semmle.label | a.0 | | main.rs:203:9:203:9 | [post] a | semmle.label | [post] a | | main.rs:203:22:203:30 | source(...) | semmle.label | source(...) | | main.rs:204:9:204:9 | [post] a | semmle.label | [post] a | | main.rs:204:9:204:9 | a | semmle.label | a | | main.rs:205:14:205:14 | a | semmle.label | a | +| main.rs:206:21:206:21 | a [Wrapping] | semmle.label | a [Wrapping] | +| main.rs:206:21:206:23 | a.0 | semmle.label | a.0 | | main.rs:208:9:208:9 | a | semmle.label | a | | main.rs:208:13:208:21 | source(...) | semmle.label | source(...) | | main.rs:209:9:209:9 | a | semmle.label | a | | main.rs:209:14:209:22 | source(...) | semmle.label | source(...) | | main.rs:210:9:210:9 | a | semmle.label | a | | main.rs:211:14:211:14 | a | semmle.label | a | +| main.rs:212:21:212:23 | a.0 | semmle.label | a.0 | | main.rs:221:15:221:30 | source_usize(...) | semmle.label | source_usize(...) | | main.rs:222:14:222:14 | a | semmle.label | a | +| main.rs:223:21:223:23 | a.0 | semmle.label | a.0 | +| main.rs:241:13:241:14 | v8 | semmle.label | v8 | +| main.rs:241:18:241:37 | ... << ... | semmle.label | ... << ... | +| main.rs:241:23:241:37 | source_usize(...) | semmle.label | source_usize(...) | +| main.rs:242:21:242:24 | v8.0 | semmle.label | v8.0 | subpaths testFailures #select @@ -334,7 +362,14 @@ testFailures | main.rs:176:10:176:10 | a | main.rs:175:21:175:29 | source(...) | main.rs:176:10:176:10 | a | $@ | main.rs:175:21:175:29 | source(...) | source(...) | | main.rs:178:10:178:24 | ... .neg() | main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | $@ | main.rs:178:10:178:18 | source(...) | source(...) | | main.rs:179:10:179:24 | ... .not() | main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | $@ | main.rs:179:10:179:18 | source(...) | source(...) | +| main.rs:201:21:201:23 | a.0 | main.rs:199:45:199:60 | ...::source(...) | main.rs:201:21:201:23 | a.0 | $@ | main.rs:199:45:199:60 | ...::source(...) | ...::source(...) | | main.rs:205:14:205:14 | a | main.rs:203:22:203:30 | source(...) | main.rs:205:14:205:14 | a | $@ | main.rs:203:22:203:30 | source(...) | source(...) | +| main.rs:206:21:206:23 | a.0 | main.rs:199:45:199:60 | ...::source(...) | main.rs:206:21:206:23 | a.0 | $@ | main.rs:199:45:199:60 | ...::source(...) | ...::source(...) | +| main.rs:206:21:206:23 | a.0 | main.rs:203:22:203:30 | source(...) | main.rs:206:21:206:23 | a.0 | $@ | main.rs:203:22:203:30 | source(...) | source(...) | | main.rs:211:14:211:14 | a | main.rs:208:13:208:21 | source(...) | main.rs:211:14:211:14 | a | $@ | main.rs:208:13:208:21 | source(...) | source(...) | | main.rs:211:14:211:14 | a | main.rs:209:14:209:22 | source(...) | main.rs:211:14:211:14 | a | $@ | main.rs:209:14:209:22 | source(...) | source(...) | +| main.rs:212:21:212:23 | a.0 | main.rs:208:13:208:21 | source(...) | main.rs:212:21:212:23 | a.0 | $@ | main.rs:208:13:208:21 | source(...) | source(...) | +| main.rs:212:21:212:23 | a.0 | main.rs:209:14:209:22 | source(...) | main.rs:212:21:212:23 | a.0 | $@ | main.rs:209:14:209:22 | source(...) | source(...) | | main.rs:222:14:222:14 | a | main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | $@ | main.rs:221:15:221:30 | source_usize(...) | source_usize(...) | +| main.rs:223:21:223:23 | a.0 | main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | $@ | main.rs:221:15:221:30 | source_usize(...) | source_usize(...) | +| main.rs:242:21:242:24 | v8.0 | main.rs:241:23:241:37 | source_usize(...) | main.rs:242:21:242:24 | v8.0 | $@ | main.rs:241:23:241:37 | source_usize(...) | source_usize(...) | diff --git a/rust/ql/test/library-tests/dataflow/taint/main.rs b/rust/ql/test/library-tests/dataflow/taint/main.rs index 3df882befb58..87634c800724 100644 --- a/rust/ql/test/library-tests/dataflow/taint/main.rs +++ b/rust/ql/test/library-tests/dataflow/taint/main.rs @@ -198,18 +198,18 @@ mod wrapping { pub fn wrapping() { let mut a: Wrapping = Wrapping(crate::source(1)); sink(a); // $ MISSING: hasTaintFlow=1 - crate::sink(a.0); // $ MISSING: hasTaintFlow=1 + crate::sink(a.0); // $ hasValueFlow=1 a.add_assign(source(2)); a.add_assign(Wrapping(crate::source(3))); sink(a); // $ hasTaintFlow=2 MISSING: hasTaintFlow=1 hasTaintFlow=3 - crate::sink(a.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=2 hasTaintFlow=3 + crate::sink(a.0); // $ hasValueFlow=1 hasTaintFlow=2 MISSING: hasTaintFlow=3 a = source(4); a += source(5); a += std::num::Wrapping(crate::source(6)); sink(a); // $ hasTaintFlow=4 hasTaintFlow=5 MISSING: hasTaintFlow=6 - crate::sink(a.0); // $ MISSING: hasTaintFlow=4 hasTaintFlow=5 hasTaintFlow=6 + crate::sink(a.0); // $ hasTaintFlow=4 hasTaintFlow=5 MISSING: hasTaintFlow=6 a = source(7); a &= source(8); @@ -220,7 +220,7 @@ mod wrapping { a = source(10); a <<= source_usize(11); sink(a); // $ hasTaintFlow=11 MISSING: hasTaintFlow=10 - crate::sink(a.0); // $ MISSING: hasTaintFlow=10 hasTaintFlow=11 + crate::sink(a.0); // $ hasTaintFlow=11 MISSING: hasTaintFlow=10 let b: Wrapping = Wrapping(crate::source(1)); let c: Wrapping = Wrapping(crate::source(2)); @@ -239,7 +239,7 @@ mod wrapping { let v7 = b & c; crate::sink(v7.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=2 let v8 = b << source_usize(3); - crate::sink(v8.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=3 + crate::sink(v8.0); // $ hasTaintFlow=3 MISSING: hasTaintFlow=1 } } From 114db99dca0003fcc590648b282547d995294870 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Thu, 22 Jan 2026 11:44:26 +0100 Subject: [PATCH 111/433] Rust: Remove mistakenly included inherited associated types --- .../lib/codeql/rust/internal/typeinference/TypeInference.qll | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index 9ad964854cf5..57f8912ee9ac 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -3770,12 +3770,12 @@ private module ForIterableSatisfiesConstraintInput implements pragma[nomagic] private AssociatedTypeTypeParameter getIteratorItemTypeParameter() { - result.getTypeAlias() = any(IteratorTrait t).getItemType() + result = getAssociatedTypeTypeParameter(any(IteratorTrait t).getItemType()) } pragma[nomagic] private AssociatedTypeTypeParameter getIntoIteratorItemTypeParameter() { - result.getTypeAlias() = any(IntoIteratorTrait t).getItemType() + result = getAssociatedTypeTypeParameter(any(IntoIteratorTrait t).getItemType()) } pragma[nomagic] From 9d645508ea1aabb9c5bc0f3aae6b89133a1ec853 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Wed, 21 Jan 2026 18:09:37 +0000 Subject: [PATCH 112/433] Rust: Add model variants for core::ops:arith on Wrapping. --- .../rust/frameworks/stdlib/core.model.yml | 21 ++ .../dataflow/taint/inline-taint-flow.expected | 295 ++++++++++++------ .../test/library-tests/dataflow/taint/main.rs | 12 +- 3 files changed, 223 insertions(+), 105 deletions(-) diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml b/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml index 83cf1c21c234..cc5813c685ac 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml @@ -12,29 +12,50 @@ extensions: - ["<_ as core::ops::index::IndexMut>::index_mut", "Argument[self].Reference.Element", "ReturnValue.Reference", "value", "manual"] # Unary operators - ["<_ as core::ops::arith::Neg>::neg", "Argument[self]", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::arith::Neg>::neg", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::Not>::not", "Argument[self]", "ReturnValue", "taint", "manual"] # Arithmetic operators - ["<_ as core::ops::arith::Add>::add", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Add>::add", "Argument[0].Reference", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::arith::Add>::add", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::Add>::add", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::Sub>::sub", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Sub>::sub", "Argument[0].Reference", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::arith::Sub>::sub", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::Sub>::sub", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::Mul>::mul", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Mul>::mul", "Argument[0].Reference", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::arith::Mul>::mul", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::Mul>::mul", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::Div>::div", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Div>::div", "Argument[0].Reference", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::arith::Div>::div", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::Div>::div", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::Rem>::rem", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Rem>::rem", "Argument[0].Reference", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::arith::Rem>::rem", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::Rem>::rem", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Arithmetic assignment expressions - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Bitwise operators - ["<_ as core::ops::bit::BitAnd>::bitand", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::BitAnd>::bitand", "Argument[0].Reference", "ReturnValue", "taint", "manual"] diff --git a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected index c4f606f007dc..8510f066cfe0 100644 --- a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected +++ b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected @@ -1,61 +1,66 @@ models -| 1 | Summary: <_ as core::ops::arith::Add>::add; Argument[0].Reference; ReturnValue; taint | -| 2 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0]; ReturnValue; taint | -| 3 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0]; Argument[self].Reference; taint | -| 4 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[self,0].Reference; Argument[self].Reference; taint | -| 5 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[0].Reference; ReturnValue; taint | -| 6 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self,0]; ReturnValue; taint | -| 7 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[0]; Argument[self].Reference; taint | -| 8 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[self,0].Reference; Argument[self].Reference; taint | -| 9 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self]; ReturnValue; taint | -| 10 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[0].Reference; ReturnValue; taint | -| 11 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[self,0]; ReturnValue; taint | -| 12 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[0]; Argument[self].Reference; taint | -| 13 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[self,0].Reference; Argument[self].Reference; taint | -| 14 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[0].Reference; ReturnValue; taint | -| 15 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[self,0]; ReturnValue; taint | -| 16 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[0].Reference; ReturnValue; taint | -| 17 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self,0]; ReturnValue; taint | -| 18 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 19 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0]; Argument[self].Reference; taint | -| 20 | Summary: <_ as core::ops::bit::Not>::not; Argument[self]; ReturnValue; taint | -| 21 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[0].Reference; ReturnValue; taint | -| 22 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0]; ReturnValue; taint | -| 23 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 24 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0]; Argument[self].Reference; taint | -| 25 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[0].Reference; ReturnValue; taint | -| 26 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[self,0]; ReturnValue; taint | -| 27 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 28 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0]; Argument[self].Reference; taint | -| 29 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | +| 1 | Summary: <_ as core::ops::arith::Add>::add; Argument[0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 2 | Summary: <_ as core::ops::arith::Add>::add; Argument[0].Reference; ReturnValue; taint | +| 3 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0]; ReturnValue; taint | +| 4 | Summary: <_ as core::ops::arith::Add>::add; Argument[self].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 5 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 6 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0]; Argument[self].Reference; taint | +| 7 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[self,0].Reference; Argument[self].Reference; taint | +| 8 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 9 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[0].Reference; ReturnValue; taint | +| 10 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self,0]; ReturnValue; taint | +| 11 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[0]; Argument[self].Reference; taint | +| 12 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[self,0].Reference; Argument[self].Reference; taint | +| 13 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 14 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self]; ReturnValue; taint | +| 15 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[0].Reference; ReturnValue; taint | +| 16 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[self,0]; ReturnValue; taint | +| 17 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[0]; Argument[self].Reference; taint | +| 18 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[self,0].Reference; Argument[self].Reference; taint | +| 19 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[0].Reference; ReturnValue; taint | +| 20 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[self,0]; ReturnValue; taint | +| 21 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[0].Reference; ReturnValue; taint | +| 22 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self,0]; ReturnValue; taint | +| 23 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 24 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0]; Argument[self].Reference; taint | +| 25 | Summary: <_ as core::ops::bit::Not>::not; Argument[self]; ReturnValue; taint | +| 26 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[0].Reference; ReturnValue; taint | +| 27 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0]; ReturnValue; taint | +| 28 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 29 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0]; Argument[self].Reference; taint | +| 30 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[0].Reference; ReturnValue; taint | +| 31 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[self,0]; ReturnValue; taint | +| 32 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 33 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0]; Argument[self].Reference; taint | +| 34 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | edges | main.rs:12:9:12:9 | a | main.rs:13:10:13:10 | a | provenance | | | main.rs:12:9:12:9 | a | main.rs:14:14:14:14 | a | provenance | | | main.rs:12:13:12:22 | source(...) | main.rs:12:9:12:9 | a | provenance | | -| main.rs:13:10:13:10 | a | main.rs:13:10:13:14 | ... + ... | provenance | MaD:2 | -| main.rs:14:14:14:14 | a | main.rs:14:10:14:14 | ... + ... | provenance | MaD:1 | +| main.rs:13:10:13:10 | a | main.rs:13:10:13:14 | ... + ... | provenance | MaD:3 | | main.rs:14:14:14:14 | a | main.rs:14:10:14:14 | ... + ... | provenance | MaD:2 | +| main.rs:14:14:14:14 | a | main.rs:14:10:14:14 | ... + ... | provenance | MaD:3 | | main.rs:16:9:16:13 | mut b | main.rs:17:5:17:5 | b | provenance | | | main.rs:16:17:16:26 | source(...) | main.rs:16:9:16:13 | mut b | provenance | | -| main.rs:17:5:17:5 | b | main.rs:18:10:18:10 | b | provenance | MaD:4 | -| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:3 | -| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:4 | +| main.rs:17:5:17:5 | b | main.rs:18:10:18:10 | b | provenance | MaD:7 | +| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:6 | +| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:7 | | main.rs:26:9:26:9 | a | main.rs:27:11:27:11 | a | provenance | | | main.rs:26:13:26:21 | source(...) | main.rs:26:9:26:9 | a | provenance | | -| main.rs:27:11:27:11 | a | main.rs:27:10:27:11 | - ... | provenance | MaD:9 | -| main.rs:29:11:29:19 | source(...) | main.rs:29:10:29:19 | ! ... | provenance | MaD:20 | -| main.rs:31:10:31:18 | source(...) | main.rs:31:10:31:22 | ... - ... | provenance | MaD:11 | -| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:10 | -| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:11 | -| main.rs:34:10:34:18 | source(...) | main.rs:34:10:34:22 | ... * ... | provenance | MaD:6 | -| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:5 | -| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:6 | -| main.rs:37:10:37:18 | source(...) | main.rs:37:10:37:23 | ... << ... | provenance | MaD:22 | -| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:21 | -| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:22 | -| main.rs:40:10:40:18 | source(...) | main.rs:40:10:40:22 | ... ^ ... | provenance | MaD:17 | -| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:16 | -| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:17 | +| main.rs:27:11:27:11 | a | main.rs:27:10:27:11 | - ... | provenance | MaD:14 | +| main.rs:29:11:29:19 | source(...) | main.rs:29:10:29:19 | ! ... | provenance | MaD:25 | +| main.rs:31:10:31:18 | source(...) | main.rs:31:10:31:22 | ... - ... | provenance | MaD:16 | +| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:15 | +| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:16 | +| main.rs:34:10:34:18 | source(...) | main.rs:34:10:34:22 | ... * ... | provenance | MaD:10 | +| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:9 | +| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:10 | +| main.rs:37:10:37:18 | source(...) | main.rs:37:10:37:23 | ... << ... | provenance | MaD:27 | +| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:26 | +| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:27 | +| main.rs:40:10:40:18 | source(...) | main.rs:40:10:40:22 | ... ^ ... | provenance | MaD:22 | +| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:21 | +| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:22 | | main.rs:45:9:45:9 | a | main.rs:46:9:46:9 | b | provenance | | | main.rs:45:13:45:22 | source(...) | main.rs:45:9:45:9 | a | provenance | | | main.rs:46:9:46:9 | b | main.rs:47:10:47:17 | b as i64 | provenance | | @@ -64,11 +69,11 @@ edges | main.rs:60:17:60:26 | source(...) | main.rs:60:13:60:13 | s | provenance | | | main.rs:61:13:61:18 | sliced [&ref] | main.rs:62:14:62:19 | sliced | provenance | | | main.rs:61:22:61:29 | &... [&ref] | main.rs:61:13:61:18 | sliced [&ref] | provenance | | -| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:29 | +| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:34 | | main.rs:61:23:61:29 | s[...] | main.rs:61:22:61:29 | &... [&ref] | provenance | | | main.rs:76:13:76:15 | arr | main.rs:77:14:77:16 | arr | provenance | | | main.rs:76:19:76:28 | source(...) | main.rs:76:13:76:15 | arr | provenance | | -| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:29 | +| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:34 | | main.rs:92:9:92:12 | [post] arr2 [element] | main.rs:93:14:93:17 | arr2 | provenance | | | main.rs:92:19:92:28 | source(...) | main.rs:92:9:92:12 | [post] arr2 [element] | provenance | | | main.rs:113:14:113:47 | TupleExpr [tuple.0] | main.rs:113:14:113:49 | ... .0 | provenance | | @@ -87,52 +92,54 @@ edges | main.rs:131:14:131:64 | TupleExpr [tuple.0] | main.rs:131:14:131:66 | ... .0 | provenance | | | main.rs:131:14:131:66 | ... .0 | main.rs:131:14:131:68 | ... .1 | provenance | | | main.rs:131:15:131:29 | source_tuple(...) | main.rs:131:14:131:64 | TupleExpr [tuple.0] | provenance | | -| main.rs:141:10:141:18 | source(...) | main.rs:141:10:141:28 | ... .add(...) | provenance | MaD:2 | -| main.rs:143:19:143:27 | source(...) | main.rs:143:10:143:28 | 1i64.add(...) | provenance | MaD:1 | +| main.rs:141:10:141:18 | source(...) | main.rs:141:10:141:28 | ... .add(...) | provenance | MaD:3 | | main.rs:143:19:143:27 | source(...) | main.rs:143:10:143:28 | 1i64.add(...) | provenance | MaD:2 | -| main.rs:146:10:146:18 | source(...) | main.rs:146:10:146:28 | ... .sub(...) | provenance | MaD:11 | -| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:10 | -| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:11 | -| main.rs:151:10:151:18 | source(...) | main.rs:151:10:151:28 | ... .mul(...) | provenance | MaD:6 | -| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:5 | -| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:6 | -| main.rs:156:10:156:18 | source(...) | main.rs:156:10:156:28 | ... .shl(...) | provenance | MaD:22 | -| main.rs:157:10:157:18 | source(...) | main.rs:157:10:157:25 | ... .shl(...) | provenance | MaD:22 | -| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:21 | -| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:22 | -| main.rs:160:10:160:18 | source(...) | main.rs:160:10:160:28 | ... .shr(...) | provenance | MaD:26 | -| main.rs:161:10:161:18 | source(...) | main.rs:161:10:161:25 | ... .shr(...) | provenance | MaD:26 | -| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:25 | -| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:26 | -| main.rs:164:10:164:18 | source(...) | main.rs:164:10:164:30 | ... .bitor(...) | provenance | MaD:15 | -| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:14 | -| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:15 | +| main.rs:143:19:143:27 | source(...) | main.rs:143:10:143:28 | 1i64.add(...) | provenance | MaD:3 | +| main.rs:146:10:146:18 | source(...) | main.rs:146:10:146:28 | ... .sub(...) | provenance | MaD:16 | +| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:15 | +| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:16 | +| main.rs:151:10:151:18 | source(...) | main.rs:151:10:151:28 | ... .mul(...) | provenance | MaD:10 | +| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:9 | +| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:10 | +| main.rs:156:10:156:18 | source(...) | main.rs:156:10:156:28 | ... .shl(...) | provenance | MaD:27 | +| main.rs:157:10:157:18 | source(...) | main.rs:157:10:157:25 | ... .shl(...) | provenance | MaD:27 | +| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:26 | +| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:27 | +| main.rs:160:10:160:18 | source(...) | main.rs:160:10:160:28 | ... .shr(...) | provenance | MaD:31 | +| main.rs:161:10:161:18 | source(...) | main.rs:161:10:161:25 | ... .shr(...) | provenance | MaD:31 | +| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:30 | +| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:31 | +| main.rs:164:10:164:18 | source(...) | main.rs:164:10:164:30 | ... .bitor(...) | provenance | MaD:20 | +| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:19 | +| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:20 | | main.rs:170:5:170:5 | [post] a | main.rs:171:5:171:5 | a | provenance | | | main.rs:170:5:170:5 | [post] a | main.rs:172:5:172:5 | a | provenance | | | main.rs:170:5:170:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:170:18:170:26 | source(...) | main.rs:170:5:170:5 | [post] a | provenance | MaD:3 | -| main.rs:170:18:170:26 | source(...) | main.rs:170:5:170:5 | [post] a | provenance | MaD:4 | +| main.rs:170:18:170:26 | source(...) | main.rs:170:5:170:5 | [post] a | provenance | MaD:6 | +| main.rs:170:18:170:26 | source(...) | main.rs:170:5:170:5 | [post] a | provenance | MaD:7 | | main.rs:171:5:171:5 | [post] a | main.rs:172:5:172:5 | a | provenance | | | main.rs:171:5:171:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:171:5:171:5 | a | main.rs:171:5:171:5 | [post] a | provenance | MaD:13 | -| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:12 | -| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:13 | +| main.rs:171:5:171:5 | a | main.rs:171:5:171:5 | [post] a | provenance | MaD:18 | +| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:17 | +| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:18 | | main.rs:172:5:172:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:172:5:172:5 | a | main.rs:172:5:172:5 | [post] a | provenance | MaD:8 | -| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:7 | -| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:8 | +| main.rs:172:5:172:5 | a | main.rs:172:5:172:5 | [post] a | provenance | MaD:12 | +| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:11 | +| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:12 | | main.rs:173:5:173:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:23 | -| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:24 | +| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:28 | +| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:29 | | main.rs:174:5:174:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:27 | -| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:28 | +| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:32 | +| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:33 | | main.rs:175:5:175:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:18 | -| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:19 | -| main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | provenance | MaD:9 | -| main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:20 | +| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:23 | +| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:24 | +| main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | provenance | MaD:14 | +| main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:25 | | main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:201:21:201:21 | a [Wrapping] | provenance | | +| main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:203:9:203:9 | a [Wrapping] | provenance | | +| main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:204:9:204:9 | a [Wrapping] | provenance | | | main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:206:21:206:21 | a [Wrapping] | provenance | | | main.rs:199:36:199:61 | Wrapping(...) [Wrapping] | main.rs:199:13:199:17 | mut a [Wrapping] | provenance | | | main.rs:199:45:199:60 | ...::source(...) | main.rs:199:36:199:61 | Wrapping(...) [Wrapping] | provenance | | @@ -140,27 +147,71 @@ edges | main.rs:203:9:203:9 | [post] a | main.rs:204:9:204:9 | a | provenance | | | main.rs:203:9:203:9 | [post] a | main.rs:205:14:205:14 | a | provenance | | | main.rs:203:9:203:9 | [post] a | main.rs:206:21:206:23 | a.0 | provenance | | -| main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a | provenance | MaD:3 | -| main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a | provenance | MaD:4 | +| main.rs:203:9:203:9 | [post] a [Wrapping] | main.rs:204:9:204:9 | a [Wrapping] | provenance | | +| main.rs:203:9:203:9 | [post] a [Wrapping] | main.rs:206:21:206:21 | a [Wrapping] | provenance | | +| main.rs:203:9:203:9 | a [Wrapping] | main.rs:203:9:203:9 | [post] a [Wrapping] | provenance | MaD:8 | +| main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a | provenance | MaD:6 | +| main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a | provenance | MaD:7 | +| main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a [Wrapping] | provenance | MaD:5 | | main.rs:204:9:204:9 | [post] a | main.rs:205:14:205:14 | a | provenance | | | main.rs:204:9:204:9 | [post] a | main.rs:206:21:206:23 | a.0 | provenance | | -| main.rs:204:9:204:9 | a | main.rs:204:9:204:9 | [post] a | provenance | MaD:4 | +| main.rs:204:9:204:9 | [post] a [Wrapping] | main.rs:206:21:206:21 | a [Wrapping] | provenance | | +| main.rs:204:9:204:9 | a | main.rs:204:9:204:9 | [post] a | provenance | MaD:7 | +| main.rs:204:9:204:9 | a | main.rs:204:9:204:9 | [post] a [Wrapping] | provenance | MaD:8 | +| main.rs:204:9:204:9 | a [Wrapping] | main.rs:204:9:204:9 | [post] a [Wrapping] | provenance | MaD:8 | +| main.rs:204:22:204:47 | Wrapping(...) [Wrapping] | main.rs:204:9:204:9 | [post] a [Wrapping] | provenance | MaD:5 | +| main.rs:204:31:204:46 | ...::source(...) | main.rs:204:22:204:47 | Wrapping(...) [Wrapping] | provenance | | | main.rs:206:21:206:21 | a [Wrapping] | main.rs:206:21:206:23 | a.0 | provenance | | | main.rs:208:9:208:9 | a | main.rs:209:9:209:9 | a | provenance | | | main.rs:208:13:208:21 | source(...) | main.rs:208:9:208:9 | a | provenance | | -| main.rs:209:9:209:9 | a | main.rs:210:9:210:9 | a | provenance | MaD:4 | -| main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a | provenance | MaD:3 | -| main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a | provenance | MaD:4 | -| main.rs:210:9:210:9 | a | main.rs:211:14:211:14 | a | provenance | MaD:4 | -| main.rs:210:9:210:9 | a | main.rs:212:21:212:23 | a.0 | provenance | MaD:4 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:23 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:24 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:23 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:24 | +| main.rs:209:9:209:9 | a | main.rs:210:9:210:9 | a | provenance | MaD:7 | +| main.rs:209:9:209:9 | a | main.rs:210:9:210:9 | a [Wrapping] | provenance | MaD:8 | +| main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a | provenance | MaD:6 | +| main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a | provenance | MaD:7 | +| main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a [Wrapping] | provenance | MaD:5 | +| main.rs:210:9:210:9 | a | main.rs:211:14:211:14 | a | provenance | MaD:7 | +| main.rs:210:9:210:9 | a | main.rs:212:21:212:21 | a [Wrapping] | provenance | MaD:8 | +| main.rs:210:9:210:9 | a | main.rs:212:21:212:23 | a.0 | provenance | MaD:7 | +| main.rs:210:9:210:9 | a [Wrapping] | main.rs:212:21:212:21 | a [Wrapping] | provenance | MaD:8 | +| main.rs:210:14:210:49 | ...::Wrapping(...) [Wrapping] | main.rs:212:21:212:21 | a [Wrapping] | provenance | MaD:5 | +| main.rs:210:33:210:48 | ...::source(...) | main.rs:210:14:210:49 | ...::Wrapping(...) [Wrapping] | provenance | | +| main.rs:212:21:212:21 | a [Wrapping] | main.rs:212:21:212:23 | a.0 | provenance | | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:28 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:29 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:28 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:29 | +| main.rs:225:13:225:13 | b [Wrapping] | main.rs:227:18:227:18 | b [Wrapping] | provenance | | +| main.rs:225:13:225:13 | b [Wrapping] | main.rs:229:18:229:18 | b [Wrapping] | provenance | | +| main.rs:225:13:225:13 | b [Wrapping] | main.rs:231:19:231:19 | b [Wrapping] | provenance | | +| main.rs:225:13:225:13 | b [Wrapping] | main.rs:233:18:233:18 | b [Wrapping] | provenance | | +| main.rs:225:32:225:57 | Wrapping(...) [Wrapping] | main.rs:225:13:225:13 | b [Wrapping] | provenance | | +| main.rs:225:41:225:56 | ...::source(...) | main.rs:225:32:225:57 | Wrapping(...) [Wrapping] | provenance | | +| main.rs:226:13:226:13 | c [Wrapping] | main.rs:227:22:227:22 | c [Wrapping] | provenance | | +| main.rs:226:13:226:13 | c [Wrapping] | main.rs:229:24:229:24 | c [Wrapping] | provenance | | +| main.rs:226:32:226:57 | Wrapping(...) [Wrapping] | main.rs:226:13:226:13 | c [Wrapping] | provenance | | +| main.rs:226:41:226:56 | ...::source(...) | main.rs:226:32:226:57 | Wrapping(...) [Wrapping] | provenance | | +| main.rs:227:13:227:14 | v1 [Wrapping] | main.rs:228:21:228:22 | v1 [Wrapping] | provenance | | +| main.rs:227:18:227:18 | b [Wrapping] | main.rs:227:18:227:22 | ... + ... [Wrapping] | provenance | MaD:4 | +| main.rs:227:18:227:22 | ... + ... [Wrapping] | main.rs:227:13:227:14 | v1 [Wrapping] | provenance | | +| main.rs:227:22:227:22 | c [Wrapping] | main.rs:227:18:227:22 | ... + ... [Wrapping] | provenance | MaD:1 | +| main.rs:228:21:228:22 | v1 [Wrapping] | main.rs:228:21:228:24 | v1.0 | provenance | | +| main.rs:229:13:229:14 | v2 [Wrapping] | main.rs:230:21:230:22 | v2 [Wrapping] | provenance | | +| main.rs:229:18:229:18 | b [Wrapping] | main.rs:229:18:229:25 | b.add(...) [Wrapping] | provenance | MaD:4 | +| main.rs:229:18:229:25 | b.add(...) [Wrapping] | main.rs:229:13:229:14 | v2 [Wrapping] | provenance | | +| main.rs:229:24:229:24 | c [Wrapping] | main.rs:229:18:229:25 | b.add(...) [Wrapping] | provenance | MaD:1 | +| main.rs:230:21:230:22 | v2 [Wrapping] | main.rs:230:21:230:24 | v2.0 | provenance | | +| main.rs:231:13:231:14 | v3 [Wrapping] | main.rs:232:21:232:22 | v3 [Wrapping] | provenance | | +| main.rs:231:18:231:19 | - ... [Wrapping] | main.rs:231:13:231:14 | v3 [Wrapping] | provenance | | +| main.rs:231:19:231:19 | b [Wrapping] | main.rs:231:18:231:19 | - ... [Wrapping] | provenance | MaD:13 | +| main.rs:232:21:232:22 | v3 [Wrapping] | main.rs:232:21:232:24 | v3.0 | provenance | | +| main.rs:233:13:233:14 | v4 [Wrapping] | main.rs:234:21:234:22 | v4 [Wrapping] | provenance | | +| main.rs:233:18:233:18 | b [Wrapping] | main.rs:233:18:233:24 | b.neg() [Wrapping] | provenance | MaD:13 | +| main.rs:233:18:233:24 | b.neg() [Wrapping] | main.rs:233:13:233:14 | v4 [Wrapping] | provenance | | +| main.rs:234:21:234:22 | v4 [Wrapping] | main.rs:234:21:234:24 | v4.0 | provenance | | | main.rs:241:13:241:14 | v8 | main.rs:242:21:242:24 | v8.0 | provenance | | | main.rs:241:18:241:37 | ... << ... | main.rs:241:13:241:14 | v8 | provenance | | -| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:21 | -| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:22 | +| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:26 | +| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:27 | nodes | main.rs:12:9:12:9 | a | semmle.label | a | | main.rs:12:13:12:22 | source(...) | semmle.label | source(...) | @@ -291,9 +342,15 @@ nodes | main.rs:201:21:201:21 | a [Wrapping] | semmle.label | a [Wrapping] | | main.rs:201:21:201:23 | a.0 | semmle.label | a.0 | | main.rs:203:9:203:9 | [post] a | semmle.label | [post] a | +| main.rs:203:9:203:9 | [post] a [Wrapping] | semmle.label | [post] a [Wrapping] | +| main.rs:203:9:203:9 | a [Wrapping] | semmle.label | a [Wrapping] | | main.rs:203:22:203:30 | source(...) | semmle.label | source(...) | | main.rs:204:9:204:9 | [post] a | semmle.label | [post] a | +| main.rs:204:9:204:9 | [post] a [Wrapping] | semmle.label | [post] a [Wrapping] | | main.rs:204:9:204:9 | a | semmle.label | a | +| main.rs:204:9:204:9 | a [Wrapping] | semmle.label | a [Wrapping] | +| main.rs:204:22:204:47 | Wrapping(...) [Wrapping] | semmle.label | Wrapping(...) [Wrapping] | +| main.rs:204:31:204:46 | ...::source(...) | semmle.label | ...::source(...) | | main.rs:205:14:205:14 | a | semmle.label | a | | main.rs:206:21:206:21 | a [Wrapping] | semmle.label | a [Wrapping] | | main.rs:206:21:206:23 | a.0 | semmle.label | a.0 | @@ -302,11 +359,43 @@ nodes | main.rs:209:9:209:9 | a | semmle.label | a | | main.rs:209:14:209:22 | source(...) | semmle.label | source(...) | | main.rs:210:9:210:9 | a | semmle.label | a | +| main.rs:210:9:210:9 | a [Wrapping] | semmle.label | a [Wrapping] | +| main.rs:210:14:210:49 | ...::Wrapping(...) [Wrapping] | semmle.label | ...::Wrapping(...) [Wrapping] | +| main.rs:210:33:210:48 | ...::source(...) | semmle.label | ...::source(...) | | main.rs:211:14:211:14 | a | semmle.label | a | +| main.rs:212:21:212:21 | a [Wrapping] | semmle.label | a [Wrapping] | | main.rs:212:21:212:23 | a.0 | semmle.label | a.0 | | main.rs:221:15:221:30 | source_usize(...) | semmle.label | source_usize(...) | | main.rs:222:14:222:14 | a | semmle.label | a | | main.rs:223:21:223:23 | a.0 | semmle.label | a.0 | +| main.rs:225:13:225:13 | b [Wrapping] | semmle.label | b [Wrapping] | +| main.rs:225:32:225:57 | Wrapping(...) [Wrapping] | semmle.label | Wrapping(...) [Wrapping] | +| main.rs:225:41:225:56 | ...::source(...) | semmle.label | ...::source(...) | +| main.rs:226:13:226:13 | c [Wrapping] | semmle.label | c [Wrapping] | +| main.rs:226:32:226:57 | Wrapping(...) [Wrapping] | semmle.label | Wrapping(...) [Wrapping] | +| main.rs:226:41:226:56 | ...::source(...) | semmle.label | ...::source(...) | +| main.rs:227:13:227:14 | v1 [Wrapping] | semmle.label | v1 [Wrapping] | +| main.rs:227:18:227:18 | b [Wrapping] | semmle.label | b [Wrapping] | +| main.rs:227:18:227:22 | ... + ... [Wrapping] | semmle.label | ... + ... [Wrapping] | +| main.rs:227:22:227:22 | c [Wrapping] | semmle.label | c [Wrapping] | +| main.rs:228:21:228:22 | v1 [Wrapping] | semmle.label | v1 [Wrapping] | +| main.rs:228:21:228:24 | v1.0 | semmle.label | v1.0 | +| main.rs:229:13:229:14 | v2 [Wrapping] | semmle.label | v2 [Wrapping] | +| main.rs:229:18:229:18 | b [Wrapping] | semmle.label | b [Wrapping] | +| main.rs:229:18:229:25 | b.add(...) [Wrapping] | semmle.label | b.add(...) [Wrapping] | +| main.rs:229:24:229:24 | c [Wrapping] | semmle.label | c [Wrapping] | +| main.rs:230:21:230:22 | v2 [Wrapping] | semmle.label | v2 [Wrapping] | +| main.rs:230:21:230:24 | v2.0 | semmle.label | v2.0 | +| main.rs:231:13:231:14 | v3 [Wrapping] | semmle.label | v3 [Wrapping] | +| main.rs:231:18:231:19 | - ... [Wrapping] | semmle.label | - ... [Wrapping] | +| main.rs:231:19:231:19 | b [Wrapping] | semmle.label | b [Wrapping] | +| main.rs:232:21:232:22 | v3 [Wrapping] | semmle.label | v3 [Wrapping] | +| main.rs:232:21:232:24 | v3.0 | semmle.label | v3.0 | +| main.rs:233:13:233:14 | v4 [Wrapping] | semmle.label | v4 [Wrapping] | +| main.rs:233:18:233:18 | b [Wrapping] | semmle.label | b [Wrapping] | +| main.rs:233:18:233:24 | b.neg() [Wrapping] | semmle.label | b.neg() [Wrapping] | +| main.rs:234:21:234:22 | v4 [Wrapping] | semmle.label | v4 [Wrapping] | +| main.rs:234:21:234:24 | v4.0 | semmle.label | v4.0 | | main.rs:241:13:241:14 | v8 | semmle.label | v8 | | main.rs:241:18:241:37 | ... << ... | semmle.label | ... << ... | | main.rs:241:23:241:37 | source_usize(...) | semmle.label | source_usize(...) | @@ -366,10 +455,18 @@ testFailures | main.rs:205:14:205:14 | a | main.rs:203:22:203:30 | source(...) | main.rs:205:14:205:14 | a | $@ | main.rs:203:22:203:30 | source(...) | source(...) | | main.rs:206:21:206:23 | a.0 | main.rs:199:45:199:60 | ...::source(...) | main.rs:206:21:206:23 | a.0 | $@ | main.rs:199:45:199:60 | ...::source(...) | ...::source(...) | | main.rs:206:21:206:23 | a.0 | main.rs:203:22:203:30 | source(...) | main.rs:206:21:206:23 | a.0 | $@ | main.rs:203:22:203:30 | source(...) | source(...) | +| main.rs:206:21:206:23 | a.0 | main.rs:204:31:204:46 | ...::source(...) | main.rs:206:21:206:23 | a.0 | $@ | main.rs:204:31:204:46 | ...::source(...) | ...::source(...) | | main.rs:211:14:211:14 | a | main.rs:208:13:208:21 | source(...) | main.rs:211:14:211:14 | a | $@ | main.rs:208:13:208:21 | source(...) | source(...) | | main.rs:211:14:211:14 | a | main.rs:209:14:209:22 | source(...) | main.rs:211:14:211:14 | a | $@ | main.rs:209:14:209:22 | source(...) | source(...) | | main.rs:212:21:212:23 | a.0 | main.rs:208:13:208:21 | source(...) | main.rs:212:21:212:23 | a.0 | $@ | main.rs:208:13:208:21 | source(...) | source(...) | | main.rs:212:21:212:23 | a.0 | main.rs:209:14:209:22 | source(...) | main.rs:212:21:212:23 | a.0 | $@ | main.rs:209:14:209:22 | source(...) | source(...) | +| main.rs:212:21:212:23 | a.0 | main.rs:210:33:210:48 | ...::source(...) | main.rs:212:21:212:23 | a.0 | $@ | main.rs:210:33:210:48 | ...::source(...) | ...::source(...) | | main.rs:222:14:222:14 | a | main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | $@ | main.rs:221:15:221:30 | source_usize(...) | source_usize(...) | | main.rs:223:21:223:23 | a.0 | main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | $@ | main.rs:221:15:221:30 | source_usize(...) | source_usize(...) | +| main.rs:228:21:228:24 | v1.0 | main.rs:225:41:225:56 | ...::source(...) | main.rs:228:21:228:24 | v1.0 | $@ | main.rs:225:41:225:56 | ...::source(...) | ...::source(...) | +| main.rs:228:21:228:24 | v1.0 | main.rs:226:41:226:56 | ...::source(...) | main.rs:228:21:228:24 | v1.0 | $@ | main.rs:226:41:226:56 | ...::source(...) | ...::source(...) | +| main.rs:230:21:230:24 | v2.0 | main.rs:225:41:225:56 | ...::source(...) | main.rs:230:21:230:24 | v2.0 | $@ | main.rs:225:41:225:56 | ...::source(...) | ...::source(...) | +| main.rs:230:21:230:24 | v2.0 | main.rs:226:41:226:56 | ...::source(...) | main.rs:230:21:230:24 | v2.0 | $@ | main.rs:226:41:226:56 | ...::source(...) | ...::source(...) | +| main.rs:232:21:232:24 | v3.0 | main.rs:225:41:225:56 | ...::source(...) | main.rs:232:21:232:24 | v3.0 | $@ | main.rs:225:41:225:56 | ...::source(...) | ...::source(...) | +| main.rs:234:21:234:24 | v4.0 | main.rs:225:41:225:56 | ...::source(...) | main.rs:234:21:234:24 | v4.0 | $@ | main.rs:225:41:225:56 | ...::source(...) | ...::source(...) | | main.rs:242:21:242:24 | v8.0 | main.rs:241:23:241:37 | source_usize(...) | main.rs:242:21:242:24 | v8.0 | $@ | main.rs:241:23:241:37 | source_usize(...) | source_usize(...) | diff --git a/rust/ql/test/library-tests/dataflow/taint/main.rs b/rust/ql/test/library-tests/dataflow/taint/main.rs index 87634c800724..dc2afd0d02c4 100644 --- a/rust/ql/test/library-tests/dataflow/taint/main.rs +++ b/rust/ql/test/library-tests/dataflow/taint/main.rs @@ -203,13 +203,13 @@ mod wrapping { a.add_assign(source(2)); a.add_assign(Wrapping(crate::source(3))); sink(a); // $ hasTaintFlow=2 MISSING: hasTaintFlow=1 hasTaintFlow=3 - crate::sink(a.0); // $ hasValueFlow=1 hasTaintFlow=2 MISSING: hasTaintFlow=3 + crate::sink(a.0); // $ hasValueFlow=1 hasTaintFlow=2 hasTaintFlow=3 a = source(4); a += source(5); a += std::num::Wrapping(crate::source(6)); sink(a); // $ hasTaintFlow=4 hasTaintFlow=5 MISSING: hasTaintFlow=6 - crate::sink(a.0); // $ hasTaintFlow=4 hasTaintFlow=5 MISSING: hasTaintFlow=6 + crate::sink(a.0); // $ hasTaintFlow=4 hasTaintFlow=5 hasTaintFlow=6 a = source(7); a &= source(8); @@ -225,13 +225,13 @@ mod wrapping { let b: Wrapping = Wrapping(crate::source(1)); let c: Wrapping = Wrapping(crate::source(2)); let v1 = b + c; - crate::sink(v1.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=2 + crate::sink(v1.0); // $ hasTaintFlow=1 hasTaintFlow=2 let v2 = b.add(c); - crate::sink(v2.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=2 + crate::sink(v2.0); // $ hasTaintFlow=1 hasTaintFlow=2 let v3 = -b; - crate::sink(v3.0); // $ MISSING: hasTaintFlow=1 + crate::sink(v3.0); // $ hasTaintFlow=1 let v4 = b.neg(); - crate::sink(v4.0); // $ MISSING: hasTaintFlow=1 + crate::sink(v4.0); // $ hasTaintFlow=1 let v5 = !b; crate::sink(v5.0); // $ MISSING: hasTaintFlow=1 let v6 = b.not(); From fa9677d6157bab842f4263ea9f1400249ac0b83c Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 22 Jan 2026 09:25:16 +0000 Subject: [PATCH 113/433] Rust: Add model variants for core::ops::bit on Wrapping. --- .../rust/frameworks/stdlib/core.model.yml | 16 ++ .../dataflow/taint/inline-taint-flow.expected | 189 +++++++++++++----- .../test/library-tests/dataflow/taint/main.rs | 12 +- 3 files changed, 162 insertions(+), 55 deletions(-) diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml b/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml index cc5813c685ac..52ab56886841 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml @@ -14,6 +14,7 @@ extensions: - ["<_ as core::ops::arith::Neg>::neg", "Argument[self]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Neg>::neg", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::Not>::not", "Argument[self]", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::bit::Not>::not", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Arithmetic operators - ["<_ as core::ops::arith::Add>::add", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Add>::add", "Argument[0].Reference", "ReturnValue", "taint", "manual"] @@ -59,27 +60,42 @@ extensions: # Bitwise operators - ["<_ as core::ops::bit::BitAnd>::bitand", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::BitAnd>::bitand", "Argument[0].Reference", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::bit::BitAnd>::bitand", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::BitOr>::bitor", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::BitOr>::bitor", "Argument[0].Reference", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::bit::BitOr>::bitor", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::BitXor>::bitxor", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::BitXor>::bitxor", "Argument[0].Reference", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::bit::BitXor>::bitxor", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Bitwise assignment operators - ["<_ as core::ops::bit::BitAndAssign>::bitand_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::BitAndAssign>::bitand_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::bit::BitAndAssign>::bitand_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::bit::BitAndAssign>::bitand_assign", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::BitOrAssign>::bitor_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::BitOrAssign>::bitor_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::bit::BitOrAssign>::bitor_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::bit::BitOrAssign>::bitor_assign", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::BitXorAssign>::bitxor_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::BitXorAssign>::bitxor_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::bit::BitXorAssign>::bitxor_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::bit::BitXorAssign>::bitxor_assign", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Shift operators - ["<_ as core::ops::bit::Shl>::shl", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::Shl>::shl", "Argument[0].Reference", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::bit::Shl>::shl", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::Shr>::shr", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::Shr>::shr", "Argument[0].Reference", "ReturnValue", "taint", "manual"] + - ["<_ as core::ops::bit::Shr>::shr", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Shift assignment operators - ["<_ as core::ops::bit::ShlAssign>::shl_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::ShlAssign>::shl_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::bit::ShlAssign>::shl_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::bit::ShlAssign>::shl_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::ShrAssign>::shr_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::ShrAssign>::shr_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::bit::ShrAssign>::shr_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::bit::ShrAssign>::shr_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Clone - ["<_ as core::clone::Clone>::clone", "Argument[self].Reference", "ReturnValue", "value", "manual"] # Conversions diff --git a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected index 8510f066cfe0..d15c5d9be435 100644 --- a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected +++ b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected @@ -17,22 +17,31 @@ models | 16 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[self,0]; ReturnValue; taint | | 17 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[0]; Argument[self].Reference; taint | | 18 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[self,0].Reference; Argument[self].Reference; taint | -| 19 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[0].Reference; ReturnValue; taint | -| 20 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[self,0]; ReturnValue; taint | -| 21 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[0].Reference; ReturnValue; taint | -| 22 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self,0]; ReturnValue; taint | -| 23 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 24 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0]; Argument[self].Reference; taint | -| 25 | Summary: <_ as core::ops::bit::Not>::not; Argument[self]; ReturnValue; taint | -| 26 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[0].Reference; ReturnValue; taint | -| 27 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0]; ReturnValue; taint | -| 28 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 29 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0]; Argument[self].Reference; taint | -| 30 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[0].Reference; ReturnValue; taint | -| 31 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[self,0]; ReturnValue; taint | -| 32 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 33 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0]; Argument[self].Reference; taint | -| 34 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | +| 19 | Summary: <_ as core::ops::bit::BitAnd>::bitand; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 20 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 21 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[0]; Argument[self].Reference; taint | +| 22 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 23 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 24 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[0].Reference; ReturnValue; taint | +| 25 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[self,0]; ReturnValue; taint | +| 26 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[0].Reference; ReturnValue; taint | +| 27 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self,0]; ReturnValue; taint | +| 28 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 29 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0]; Argument[self].Reference; taint | +| 30 | Summary: <_ as core::ops::bit::Not>::not; Argument[self].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 31 | Summary: <_ as core::ops::bit::Not>::not; Argument[self]; ReturnValue; taint | +| 32 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[0].Reference; ReturnValue; taint | +| 33 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 34 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0]; ReturnValue; taint | +| 35 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 36 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 37 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0]; Argument[self].Reference; taint | +| 38 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 39 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[0].Reference; ReturnValue; taint | +| 40 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[self,0]; ReturnValue; taint | +| 41 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0].Reference; Argument[self].Reference; taint | +| 42 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0]; Argument[self].Reference; taint | +| 43 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | edges | main.rs:12:9:12:9 | a | main.rs:13:10:13:10 | a | provenance | | | main.rs:12:9:12:9 | a | main.rs:14:14:14:14 | a | provenance | | @@ -48,19 +57,19 @@ edges | main.rs:26:9:26:9 | a | main.rs:27:11:27:11 | a | provenance | | | main.rs:26:13:26:21 | source(...) | main.rs:26:9:26:9 | a | provenance | | | main.rs:27:11:27:11 | a | main.rs:27:10:27:11 | - ... | provenance | MaD:14 | -| main.rs:29:11:29:19 | source(...) | main.rs:29:10:29:19 | ! ... | provenance | MaD:25 | +| main.rs:29:11:29:19 | source(...) | main.rs:29:10:29:19 | ! ... | provenance | MaD:31 | | main.rs:31:10:31:18 | source(...) | main.rs:31:10:31:22 | ... - ... | provenance | MaD:16 | | main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:15 | | main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:16 | | main.rs:34:10:34:18 | source(...) | main.rs:34:10:34:22 | ... * ... | provenance | MaD:10 | | main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:9 | | main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:10 | -| main.rs:37:10:37:18 | source(...) | main.rs:37:10:37:23 | ... << ... | provenance | MaD:27 | -| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:26 | -| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:27 | -| main.rs:40:10:40:18 | source(...) | main.rs:40:10:40:22 | ... ^ ... | provenance | MaD:22 | -| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:21 | -| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:22 | +| main.rs:37:10:37:18 | source(...) | main.rs:37:10:37:23 | ... << ... | provenance | MaD:34 | +| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:32 | +| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:34 | +| main.rs:40:10:40:18 | source(...) | main.rs:40:10:40:22 | ... ^ ... | provenance | MaD:27 | +| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:26 | +| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:27 | | main.rs:45:9:45:9 | a | main.rs:46:9:46:9 | b | provenance | | | main.rs:45:13:45:22 | source(...) | main.rs:45:9:45:9 | a | provenance | | | main.rs:46:9:46:9 | b | main.rs:47:10:47:17 | b as i64 | provenance | | @@ -69,11 +78,11 @@ edges | main.rs:60:17:60:26 | source(...) | main.rs:60:13:60:13 | s | provenance | | | main.rs:61:13:61:18 | sliced [&ref] | main.rs:62:14:62:19 | sliced | provenance | | | main.rs:61:22:61:29 | &... [&ref] | main.rs:61:13:61:18 | sliced [&ref] | provenance | | -| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:34 | +| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:43 | | main.rs:61:23:61:29 | s[...] | main.rs:61:22:61:29 | &... [&ref] | provenance | | | main.rs:76:13:76:15 | arr | main.rs:77:14:77:16 | arr | provenance | | | main.rs:76:19:76:28 | source(...) | main.rs:76:13:76:15 | arr | provenance | | -| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:34 | +| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:43 | | main.rs:92:9:92:12 | [post] arr2 [element] | main.rs:93:14:93:17 | arr2 | provenance | | | main.rs:92:19:92:28 | source(...) | main.rs:92:9:92:12 | [post] arr2 [element] | provenance | | | main.rs:113:14:113:47 | TupleExpr [tuple.0] | main.rs:113:14:113:49 | ... .0 | provenance | | @@ -101,17 +110,17 @@ edges | main.rs:151:10:151:18 | source(...) | main.rs:151:10:151:28 | ... .mul(...) | provenance | MaD:10 | | main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:9 | | main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:10 | -| main.rs:156:10:156:18 | source(...) | main.rs:156:10:156:28 | ... .shl(...) | provenance | MaD:27 | -| main.rs:157:10:157:18 | source(...) | main.rs:157:10:157:25 | ... .shl(...) | provenance | MaD:27 | -| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:26 | -| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:27 | -| main.rs:160:10:160:18 | source(...) | main.rs:160:10:160:28 | ... .shr(...) | provenance | MaD:31 | -| main.rs:161:10:161:18 | source(...) | main.rs:161:10:161:25 | ... .shr(...) | provenance | MaD:31 | -| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:30 | -| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:31 | -| main.rs:164:10:164:18 | source(...) | main.rs:164:10:164:30 | ... .bitor(...) | provenance | MaD:20 | -| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:19 | -| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:20 | +| main.rs:156:10:156:18 | source(...) | main.rs:156:10:156:28 | ... .shl(...) | provenance | MaD:34 | +| main.rs:157:10:157:18 | source(...) | main.rs:157:10:157:25 | ... .shl(...) | provenance | MaD:34 | +| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:32 | +| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:34 | +| main.rs:160:10:160:18 | source(...) | main.rs:160:10:160:28 | ... .shr(...) | provenance | MaD:40 | +| main.rs:161:10:161:18 | source(...) | main.rs:161:10:161:25 | ... .shr(...) | provenance | MaD:40 | +| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:39 | +| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:40 | +| main.rs:164:10:164:18 | source(...) | main.rs:164:10:164:30 | ... .bitor(...) | provenance | MaD:25 | +| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:24 | +| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:25 | | main.rs:170:5:170:5 | [post] a | main.rs:171:5:171:5 | a | provenance | | | main.rs:170:5:170:5 | [post] a | main.rs:172:5:172:5 | a | provenance | | | main.rs:170:5:170:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | @@ -127,16 +136,16 @@ edges | main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:11 | | main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:12 | | main.rs:173:5:173:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:28 | -| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:29 | +| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:36 | +| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:37 | | main.rs:174:5:174:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:32 | -| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:33 | +| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:41 | +| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:42 | | main.rs:175:5:175:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:23 | -| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:24 | +| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:28 | +| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:29 | | main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | provenance | MaD:14 | -| main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:25 | +| main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:31 | | main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:201:21:201:21 | a [Wrapping] | provenance | | | main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:203:9:203:9 | a [Wrapping] | provenance | | | main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:204:9:204:9 | a [Wrapping] | provenance | | @@ -176,18 +185,39 @@ edges | main.rs:210:14:210:49 | ...::Wrapping(...) [Wrapping] | main.rs:212:21:212:21 | a [Wrapping] | provenance | MaD:5 | | main.rs:210:33:210:48 | ...::source(...) | main.rs:210:14:210:49 | ...::Wrapping(...) [Wrapping] | provenance | | | main.rs:212:21:212:21 | a [Wrapping] | main.rs:212:21:212:23 | a.0 | provenance | | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:28 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:29 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:28 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:29 | +| main.rs:214:9:214:9 | a | main.rs:215:9:215:9 | a | provenance | | +| main.rs:214:13:214:21 | source(...) | main.rs:214:9:214:9 | a | provenance | | +| main.rs:215:9:215:9 | a | main.rs:216:9:216:9 | a [Wrapping] | provenance | MaD:23 | +| main.rs:215:14:215:22 | source(...) | main.rs:216:9:216:9 | a | provenance | MaD:20 | +| main.rs:215:14:215:22 | source(...) | main.rs:216:9:216:9 | a | provenance | MaD:21 | +| main.rs:215:14:215:22 | source(...) | main.rs:216:9:216:9 | a [Wrapping] | provenance | MaD:22 | +| main.rs:216:9:216:9 | a | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:23 | +| main.rs:216:9:216:9 | a [Wrapping] | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:23 | +| main.rs:216:14:216:39 | Wrapping(...) [Wrapping] | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:22 | +| main.rs:216:23:216:38 | ...::source(...) | main.rs:216:14:216:39 | Wrapping(...) [Wrapping] | provenance | | +| main.rs:218:21:218:21 | a [Wrapping] | main.rs:218:21:218:23 | a.0 | provenance | | +| main.rs:220:9:220:9 | a | main.rs:221:9:221:9 | a | provenance | | +| main.rs:220:13:220:22 | source(...) | main.rs:220:9:220:9 | a | provenance | | +| main.rs:221:9:221:9 | a | main.rs:223:21:223:21 | a [Wrapping] | provenance | MaD:38 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:36 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:37 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:21 | a [Wrapping] | provenance | MaD:35 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:36 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:37 | +| main.rs:223:21:223:21 | a [Wrapping] | main.rs:223:21:223:23 | a.0 | provenance | | | main.rs:225:13:225:13 | b [Wrapping] | main.rs:227:18:227:18 | b [Wrapping] | provenance | | | main.rs:225:13:225:13 | b [Wrapping] | main.rs:229:18:229:18 | b [Wrapping] | provenance | | | main.rs:225:13:225:13 | b [Wrapping] | main.rs:231:19:231:19 | b [Wrapping] | provenance | | | main.rs:225:13:225:13 | b [Wrapping] | main.rs:233:18:233:18 | b [Wrapping] | provenance | | +| main.rs:225:13:225:13 | b [Wrapping] | main.rs:235:19:235:19 | b [Wrapping] | provenance | | +| main.rs:225:13:225:13 | b [Wrapping] | main.rs:237:18:237:18 | b [Wrapping] | provenance | | +| main.rs:225:13:225:13 | b [Wrapping] | main.rs:239:18:239:18 | b [Wrapping] | provenance | | +| main.rs:225:13:225:13 | b [Wrapping] | main.rs:241:18:241:18 | b [Wrapping] | provenance | | | main.rs:225:32:225:57 | Wrapping(...) [Wrapping] | main.rs:225:13:225:13 | b [Wrapping] | provenance | | | main.rs:225:41:225:56 | ...::source(...) | main.rs:225:32:225:57 | Wrapping(...) [Wrapping] | provenance | | | main.rs:226:13:226:13 | c [Wrapping] | main.rs:227:22:227:22 | c [Wrapping] | provenance | | | main.rs:226:13:226:13 | c [Wrapping] | main.rs:229:24:229:24 | c [Wrapping] | provenance | | +| main.rs:226:13:226:13 | c [Wrapping] | main.rs:239:22:239:22 | c [Wrapping] | provenance | | | main.rs:226:32:226:57 | Wrapping(...) [Wrapping] | main.rs:226:13:226:13 | c [Wrapping] | provenance | | | main.rs:226:41:226:56 | ...::source(...) | main.rs:226:32:226:57 | Wrapping(...) [Wrapping] | provenance | | | main.rs:227:13:227:14 | v1 [Wrapping] | main.rs:228:21:228:22 | v1 [Wrapping] | provenance | | @@ -208,10 +238,28 @@ edges | main.rs:233:18:233:18 | b [Wrapping] | main.rs:233:18:233:24 | b.neg() [Wrapping] | provenance | MaD:13 | | main.rs:233:18:233:24 | b.neg() [Wrapping] | main.rs:233:13:233:14 | v4 [Wrapping] | provenance | | | main.rs:234:21:234:22 | v4 [Wrapping] | main.rs:234:21:234:24 | v4.0 | provenance | | +| main.rs:235:13:235:14 | v5 [Wrapping] | main.rs:236:21:236:22 | v5 [Wrapping] | provenance | | +| main.rs:235:18:235:19 | ! ... [Wrapping] | main.rs:235:13:235:14 | v5 [Wrapping] | provenance | | +| main.rs:235:19:235:19 | b [Wrapping] | main.rs:235:18:235:19 | ! ... [Wrapping] | provenance | MaD:30 | +| main.rs:236:21:236:22 | v5 [Wrapping] | main.rs:236:21:236:24 | v5.0 | provenance | | +| main.rs:237:13:237:14 | v6 [Wrapping] | main.rs:238:21:238:22 | v6 [Wrapping] | provenance | | +| main.rs:237:18:237:18 | b [Wrapping] | main.rs:237:18:237:24 | b.not() [Wrapping] | provenance | MaD:30 | +| main.rs:237:18:237:24 | b.not() [Wrapping] | main.rs:237:13:237:14 | v6 [Wrapping] | provenance | | +| main.rs:238:21:238:22 | v6 [Wrapping] | main.rs:238:21:238:24 | v6.0 | provenance | | +| main.rs:239:13:239:14 | v7 [Wrapping] | main.rs:240:21:240:22 | v7 [Wrapping] | provenance | | +| main.rs:239:18:239:18 | b [Wrapping] | main.rs:239:18:239:22 | ... & ... [Wrapping] | provenance | MaD:19 | +| main.rs:239:18:239:22 | ... & ... [Wrapping] | main.rs:239:13:239:14 | v7 [Wrapping] | provenance | | +| main.rs:239:22:239:22 | c [Wrapping] | main.rs:239:18:239:22 | ... & ... [Wrapping] | provenance | MaD:19 | +| main.rs:240:21:240:22 | v7 [Wrapping] | main.rs:240:21:240:24 | v7.0 | provenance | | | main.rs:241:13:241:14 | v8 | main.rs:242:21:242:24 | v8.0 | provenance | | +| main.rs:241:13:241:14 | v8 [Wrapping] | main.rs:242:21:242:22 | v8 [Wrapping] | provenance | | +| main.rs:241:18:241:18 | b [Wrapping] | main.rs:241:18:241:37 | ... << ... [Wrapping] | provenance | MaD:33 | | main.rs:241:18:241:37 | ... << ... | main.rs:241:13:241:14 | v8 | provenance | | -| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:26 | -| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:27 | +| main.rs:241:18:241:37 | ... << ... [Wrapping] | main.rs:241:13:241:14 | v8 [Wrapping] | provenance | | +| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:32 | +| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:34 | +| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... [Wrapping] | provenance | MaD:33 | +| main.rs:242:21:242:22 | v8 [Wrapping] | main.rs:242:21:242:24 | v8.0 | provenance | | nodes | main.rs:12:9:12:9 | a | semmle.label | a | | main.rs:12:13:12:22 | source(...) | semmle.label | source(...) | @@ -365,8 +413,22 @@ nodes | main.rs:211:14:211:14 | a | semmle.label | a | | main.rs:212:21:212:21 | a [Wrapping] | semmle.label | a [Wrapping] | | main.rs:212:21:212:23 | a.0 | semmle.label | a.0 | +| main.rs:214:9:214:9 | a | semmle.label | a | +| main.rs:214:13:214:21 | source(...) | semmle.label | source(...) | +| main.rs:215:9:215:9 | a | semmle.label | a | +| main.rs:215:14:215:22 | source(...) | semmle.label | source(...) | +| main.rs:216:9:216:9 | a | semmle.label | a | +| main.rs:216:9:216:9 | a [Wrapping] | semmle.label | a [Wrapping] | +| main.rs:216:14:216:39 | Wrapping(...) [Wrapping] | semmle.label | Wrapping(...) [Wrapping] | +| main.rs:216:23:216:38 | ...::source(...) | semmle.label | ...::source(...) | +| main.rs:218:21:218:21 | a [Wrapping] | semmle.label | a [Wrapping] | +| main.rs:218:21:218:23 | a.0 | semmle.label | a.0 | +| main.rs:220:9:220:9 | a | semmle.label | a | +| main.rs:220:13:220:22 | source(...) | semmle.label | source(...) | +| main.rs:221:9:221:9 | a | semmle.label | a | | main.rs:221:15:221:30 | source_usize(...) | semmle.label | source_usize(...) | | main.rs:222:14:222:14 | a | semmle.label | a | +| main.rs:223:21:223:21 | a [Wrapping] | semmle.label | a [Wrapping] | | main.rs:223:21:223:23 | a.0 | semmle.label | a.0 | | main.rs:225:13:225:13 | b [Wrapping] | semmle.label | b [Wrapping] | | main.rs:225:32:225:57 | Wrapping(...) [Wrapping] | semmle.label | Wrapping(...) [Wrapping] | @@ -396,9 +458,29 @@ nodes | main.rs:233:18:233:24 | b.neg() [Wrapping] | semmle.label | b.neg() [Wrapping] | | main.rs:234:21:234:22 | v4 [Wrapping] | semmle.label | v4 [Wrapping] | | main.rs:234:21:234:24 | v4.0 | semmle.label | v4.0 | +| main.rs:235:13:235:14 | v5 [Wrapping] | semmle.label | v5 [Wrapping] | +| main.rs:235:18:235:19 | ! ... [Wrapping] | semmle.label | ! ... [Wrapping] | +| main.rs:235:19:235:19 | b [Wrapping] | semmle.label | b [Wrapping] | +| main.rs:236:21:236:22 | v5 [Wrapping] | semmle.label | v5 [Wrapping] | +| main.rs:236:21:236:24 | v5.0 | semmle.label | v5.0 | +| main.rs:237:13:237:14 | v6 [Wrapping] | semmle.label | v6 [Wrapping] | +| main.rs:237:18:237:18 | b [Wrapping] | semmle.label | b [Wrapping] | +| main.rs:237:18:237:24 | b.not() [Wrapping] | semmle.label | b.not() [Wrapping] | +| main.rs:238:21:238:22 | v6 [Wrapping] | semmle.label | v6 [Wrapping] | +| main.rs:238:21:238:24 | v6.0 | semmle.label | v6.0 | +| main.rs:239:13:239:14 | v7 [Wrapping] | semmle.label | v7 [Wrapping] | +| main.rs:239:18:239:18 | b [Wrapping] | semmle.label | b [Wrapping] | +| main.rs:239:18:239:22 | ... & ... [Wrapping] | semmle.label | ... & ... [Wrapping] | +| main.rs:239:22:239:22 | c [Wrapping] | semmle.label | c [Wrapping] | +| main.rs:240:21:240:22 | v7 [Wrapping] | semmle.label | v7 [Wrapping] | +| main.rs:240:21:240:24 | v7.0 | semmle.label | v7.0 | | main.rs:241:13:241:14 | v8 | semmle.label | v8 | +| main.rs:241:13:241:14 | v8 [Wrapping] | semmle.label | v8 [Wrapping] | +| main.rs:241:18:241:18 | b [Wrapping] | semmle.label | b [Wrapping] | | main.rs:241:18:241:37 | ... << ... | semmle.label | ... << ... | +| main.rs:241:18:241:37 | ... << ... [Wrapping] | semmle.label | ... << ... [Wrapping] | | main.rs:241:23:241:37 | source_usize(...) | semmle.label | source_usize(...) | +| main.rs:242:21:242:22 | v8 [Wrapping] | semmle.label | v8 [Wrapping] | | main.rs:242:21:242:24 | v8.0 | semmle.label | v8.0 | subpaths testFailures @@ -461,7 +543,11 @@ testFailures | main.rs:212:21:212:23 | a.0 | main.rs:208:13:208:21 | source(...) | main.rs:212:21:212:23 | a.0 | $@ | main.rs:208:13:208:21 | source(...) | source(...) | | main.rs:212:21:212:23 | a.0 | main.rs:209:14:209:22 | source(...) | main.rs:212:21:212:23 | a.0 | $@ | main.rs:209:14:209:22 | source(...) | source(...) | | main.rs:212:21:212:23 | a.0 | main.rs:210:33:210:48 | ...::source(...) | main.rs:212:21:212:23 | a.0 | $@ | main.rs:210:33:210:48 | ...::source(...) | ...::source(...) | +| main.rs:218:21:218:23 | a.0 | main.rs:214:13:214:21 | source(...) | main.rs:218:21:218:23 | a.0 | $@ | main.rs:214:13:214:21 | source(...) | source(...) | +| main.rs:218:21:218:23 | a.0 | main.rs:215:14:215:22 | source(...) | main.rs:218:21:218:23 | a.0 | $@ | main.rs:215:14:215:22 | source(...) | source(...) | +| main.rs:218:21:218:23 | a.0 | main.rs:216:23:216:38 | ...::source(...) | main.rs:218:21:218:23 | a.0 | $@ | main.rs:216:23:216:38 | ...::source(...) | ...::source(...) | | main.rs:222:14:222:14 | a | main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | $@ | main.rs:221:15:221:30 | source_usize(...) | source_usize(...) | +| main.rs:223:21:223:23 | a.0 | main.rs:220:13:220:22 | source(...) | main.rs:223:21:223:23 | a.0 | $@ | main.rs:220:13:220:22 | source(...) | source(...) | | main.rs:223:21:223:23 | a.0 | main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | $@ | main.rs:221:15:221:30 | source_usize(...) | source_usize(...) | | main.rs:228:21:228:24 | v1.0 | main.rs:225:41:225:56 | ...::source(...) | main.rs:228:21:228:24 | v1.0 | $@ | main.rs:225:41:225:56 | ...::source(...) | ...::source(...) | | main.rs:228:21:228:24 | v1.0 | main.rs:226:41:226:56 | ...::source(...) | main.rs:228:21:228:24 | v1.0 | $@ | main.rs:226:41:226:56 | ...::source(...) | ...::source(...) | @@ -469,4 +555,9 @@ testFailures | main.rs:230:21:230:24 | v2.0 | main.rs:226:41:226:56 | ...::source(...) | main.rs:230:21:230:24 | v2.0 | $@ | main.rs:226:41:226:56 | ...::source(...) | ...::source(...) | | main.rs:232:21:232:24 | v3.0 | main.rs:225:41:225:56 | ...::source(...) | main.rs:232:21:232:24 | v3.0 | $@ | main.rs:225:41:225:56 | ...::source(...) | ...::source(...) | | main.rs:234:21:234:24 | v4.0 | main.rs:225:41:225:56 | ...::source(...) | main.rs:234:21:234:24 | v4.0 | $@ | main.rs:225:41:225:56 | ...::source(...) | ...::source(...) | +| main.rs:236:21:236:24 | v5.0 | main.rs:225:41:225:56 | ...::source(...) | main.rs:236:21:236:24 | v5.0 | $@ | main.rs:225:41:225:56 | ...::source(...) | ...::source(...) | +| main.rs:238:21:238:24 | v6.0 | main.rs:225:41:225:56 | ...::source(...) | main.rs:238:21:238:24 | v6.0 | $@ | main.rs:225:41:225:56 | ...::source(...) | ...::source(...) | +| main.rs:240:21:240:24 | v7.0 | main.rs:225:41:225:56 | ...::source(...) | main.rs:240:21:240:24 | v7.0 | $@ | main.rs:225:41:225:56 | ...::source(...) | ...::source(...) | +| main.rs:240:21:240:24 | v7.0 | main.rs:226:41:226:56 | ...::source(...) | main.rs:240:21:240:24 | v7.0 | $@ | main.rs:226:41:226:56 | ...::source(...) | ...::source(...) | +| main.rs:242:21:242:24 | v8.0 | main.rs:225:41:225:56 | ...::source(...) | main.rs:242:21:242:24 | v8.0 | $@ | main.rs:225:41:225:56 | ...::source(...) | ...::source(...) | | main.rs:242:21:242:24 | v8.0 | main.rs:241:23:241:37 | source_usize(...) | main.rs:242:21:242:24 | v8.0 | $@ | main.rs:241:23:241:37 | source_usize(...) | source_usize(...) | diff --git a/rust/ql/test/library-tests/dataflow/taint/main.rs b/rust/ql/test/library-tests/dataflow/taint/main.rs index dc2afd0d02c4..e6802166333b 100644 --- a/rust/ql/test/library-tests/dataflow/taint/main.rs +++ b/rust/ql/test/library-tests/dataflow/taint/main.rs @@ -215,12 +215,12 @@ mod wrapping { a &= source(8); a &= Wrapping(crate::source(9)); sink(a); // $ MISSING: hasTaintFlow=7 hasTaintFlow=8 hasTaintFlow=9 - crate::sink(a.0); // $ MISSING: hasTaintFlow=7 hasTaintFlow=8 hasTaintFlow=9 + crate::sink(a.0); // $ hasTaintFlow=7 hasTaintFlow=8 hasTaintFlow=9 a = source(10); a <<= source_usize(11); sink(a); // $ hasTaintFlow=11 MISSING: hasTaintFlow=10 - crate::sink(a.0); // $ hasTaintFlow=11 MISSING: hasTaintFlow=10 + crate::sink(a.0); // $ hasTaintFlow=11 hasTaintFlow=10 let b: Wrapping = Wrapping(crate::source(1)); let c: Wrapping = Wrapping(crate::source(2)); @@ -233,13 +233,13 @@ mod wrapping { let v4 = b.neg(); crate::sink(v4.0); // $ hasTaintFlow=1 let v5 = !b; - crate::sink(v5.0); // $ MISSING: hasTaintFlow=1 + crate::sink(v5.0); // $ hasTaintFlow=1 let v6 = b.not(); - crate::sink(v6.0); // $ MISSING: hasTaintFlow=1 + crate::sink(v6.0); // $ hasTaintFlow=1 let v7 = b & c; - crate::sink(v7.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=2 + crate::sink(v7.0); // $ hasTaintFlow=1 hasTaintFlow=2 let v8 = b << source_usize(3); - crate::sink(v8.0); // $ hasTaintFlow=3 MISSING: hasTaintFlow=1 + crate::sink(v8.0); // $ hasTaintFlow=1 hasTaintFlow=3 } } From 3d6765ba1cf3dd069bfd4a21f55d1bfe27f4b6b2 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 22 Jan 2026 12:11:18 +0000 Subject: [PATCH 114/433] Rust: Clean up / fix some existing models. --- .../rust/frameworks/stdlib/core.model.yml | 51 ++-- .../dataflow/taint/inline-taint-flow.expected | 279 +++++++++--------- .../test/library-tests/dataflow/taint/main.rs | 4 +- 3 files changed, 157 insertions(+), 177 deletions(-) diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml b/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml index 52ab56886841..94aae55a60e7 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml @@ -17,83 +17,68 @@ extensions: - ["<_ as core::ops::bit::Not>::not", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Arithmetic operators - ["<_ as core::ops::arith::Add>::add", "Argument[self,0]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Add>::add", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Add>::add", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - - ["<_ as core::ops::arith::Add>::add", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::Add>::add", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::Sub>::sub", "Argument[self,0]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Sub>::sub", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Sub>::sub", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - - ["<_ as core::ops::arith::Sub>::sub", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::Sub>::sub", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::Mul>::mul", "Argument[self,0]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Mul>::mul", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Mul>::mul", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - - ["<_ as core::ops::arith::Mul>::mul", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::Mul>::mul", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::Div>::div", "Argument[self,0]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Div>::div", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Div>::div", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - - ["<_ as core::ops::arith::Div>::div", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::Div>::div", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::Rem>::rem", "Argument[self,0]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Rem>::rem", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Rem>::rem", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - - ["<_ as core::ops::arith::Rem>::rem", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::arith::Rem>::rem", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Arithmetic assignment expressions - - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::AddAssign>::add_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::SubAssign>::sub_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::MulAssign>::mul_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::DivAssign>::div_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[self,0].Reference", "Argument[self].Reference", "taint", "manual"] + - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::arith::RemAssign>::rem_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Bitwise operators - ["<_ as core::ops::bit::BitAnd>::bitand", "Argument[self,0]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::BitAnd>::bitand", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::BitAnd>::bitand", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::BitOr>::bitor", "Argument[self,0]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::BitOr>::bitor", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::BitOr>::bitor", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::BitXor>::bitxor", "Argument[self,0]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::BitXor>::bitxor", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::BitXor>::bitxor", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Bitwise assignment operators + - ["<_ as core::ops::bit::BitAndAssign>::bitand_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::BitAndAssign>::bitand_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::bit::BitAndAssign>::bitand_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::BitAndAssign>::bitand_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - - ["<_ as core::ops::bit::BitAndAssign>::bitand_assign", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::bit::BitAndAssign>::bitand_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::bit::BitOrAssign>::bitor_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::BitOrAssign>::bitor_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::bit::BitOrAssign>::bitor_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::BitOrAssign>::bitor_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - - ["<_ as core::ops::bit::BitOrAssign>::bitor_assign", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::bit::BitOrAssign>::bitor_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::bit::BitXorAssign>::bitxor_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::BitXorAssign>::bitxor_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::bit::BitXorAssign>::bitxor_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::BitXorAssign>::bitxor_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - - ["<_ as core::ops::bit::BitXorAssign>::bitxor_assign", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::bit::BitXorAssign>::bitxor_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Shift operators - ["<_ as core::ops::bit::Shl>::shl", "Argument[self,0]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::Shl>::shl", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::Shl>::shl", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::Shr>::shr", "Argument[self,0]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::Shr>::shr", "Argument[0].Reference", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::bit::Shr>::shr", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Shift assignment operators + - ["<_ as core::ops::bit::ShlAssign>::shl_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::ShlAssign>::shl_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::bit::ShlAssign>::shl_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::ShlAssign>::shl_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::ShlAssign>::shl_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["<_ as core::ops::bit::ShrAssign>::shr_assign", "Argument[self].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::ShrAssign>::shr_assign", "Argument[0]", "Argument[self].Reference", "taint", "manual"] - - ["<_ as core::ops::bit::ShrAssign>::shr_assign", "Argument[0].Reference", "Argument[self].Reference", "taint", "manual"] - ["<_ as core::ops::bit::ShrAssign>::shr_assign", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::ShrAssign>::shr_assign", "Argument[0].Field[core::num::wrapping::Wrapping(0)]", "Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Clone diff --git a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected index d15c5d9be435..221de45702b5 100644 --- a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected +++ b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected @@ -1,75 +1,61 @@ models -| 1 | Summary: <_ as core::ops::arith::Add>::add; Argument[0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | -| 2 | Summary: <_ as core::ops::arith::Add>::add; Argument[0].Reference; ReturnValue; taint | -| 3 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0]; ReturnValue; taint | -| 4 | Summary: <_ as core::ops::arith::Add>::add; Argument[self].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | -| 5 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | -| 6 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0]; Argument[self].Reference; taint | -| 7 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[self,0].Reference; Argument[self].Reference; taint | -| 8 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | -| 9 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[0].Reference; ReturnValue; taint | -| 10 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self,0]; ReturnValue; taint | -| 11 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[0]; Argument[self].Reference; taint | -| 12 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[self,0].Reference; Argument[self].Reference; taint | -| 13 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | -| 14 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self]; ReturnValue; taint | -| 15 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[0].Reference; ReturnValue; taint | -| 16 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[self,0]; ReturnValue; taint | -| 17 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[0]; Argument[self].Reference; taint | -| 18 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[self,0].Reference; Argument[self].Reference; taint | -| 19 | Summary: <_ as core::ops::bit::BitAnd>::bitand; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | -| 20 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 21 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[0]; Argument[self].Reference; taint | -| 22 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | -| 23 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | -| 24 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[0].Reference; ReturnValue; taint | -| 25 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[self,0]; ReturnValue; taint | -| 26 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[0].Reference; ReturnValue; taint | -| 27 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self,0]; ReturnValue; taint | -| 28 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 29 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0]; Argument[self].Reference; taint | -| 30 | Summary: <_ as core::ops::bit::Not>::not; Argument[self].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | -| 31 | Summary: <_ as core::ops::bit::Not>::not; Argument[self]; ReturnValue; taint | -| 32 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[0].Reference; ReturnValue; taint | -| 33 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | -| 34 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0]; ReturnValue; taint | -| 35 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | -| 36 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 37 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0]; Argument[self].Reference; taint | -| 38 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | -| 39 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[0].Reference; ReturnValue; taint | -| 40 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[self,0]; ReturnValue; taint | -| 41 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 42 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0]; Argument[self].Reference; taint | -| 43 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | +| 1 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 2 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0]; ReturnValue; taint | +| 3 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 4 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0]; Argument[self].Reference; taint | +| 5 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 6 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 7 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self,0]; ReturnValue; taint | +| 8 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[0]; Argument[self].Reference; taint | +| 9 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 10 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 11 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self]; ReturnValue; taint | +| 12 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[self,0]; ReturnValue; taint | +| 13 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[0]; Argument[self].Reference; taint | +| 14 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 15 | Summary: <_ as core::ops::bit::BitAnd>::bitand; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 16 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 17 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[0]; Argument[self].Reference; taint | +| 18 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 19 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 20 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[self,0]; ReturnValue; taint | +| 21 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self,0]; ReturnValue; taint | +| 22 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0]; Argument[self].Reference; taint | +| 23 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 24 | Summary: <_ as core::ops::bit::Not>::not; Argument[self].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 25 | Summary: <_ as core::ops::bit::Not>::not; Argument[self]; ReturnValue; taint | +| 26 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 27 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0]; ReturnValue; taint | +| 28 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 29 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0]; Argument[self].Reference; taint | +| 30 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 31 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 32 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[self,0]; ReturnValue; taint | +| 33 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0]; Argument[self].Reference; taint | +| 34 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 35 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | edges | main.rs:12:9:12:9 | a | main.rs:13:10:13:10 | a | provenance | | | main.rs:12:9:12:9 | a | main.rs:14:14:14:14 | a | provenance | | | main.rs:12:13:12:22 | source(...) | main.rs:12:9:12:9 | a | provenance | | -| main.rs:13:10:13:10 | a | main.rs:13:10:13:14 | ... + ... | provenance | MaD:3 | +| main.rs:13:10:13:10 | a | main.rs:13:10:13:14 | ... + ... | provenance | MaD:2 | | main.rs:14:14:14:14 | a | main.rs:14:10:14:14 | ... + ... | provenance | MaD:2 | -| main.rs:14:14:14:14 | a | main.rs:14:10:14:14 | ... + ... | provenance | MaD:3 | | main.rs:16:9:16:13 | mut b | main.rs:17:5:17:5 | b | provenance | | | main.rs:16:17:16:26 | source(...) | main.rs:16:9:16:13 | mut b | provenance | | -| main.rs:17:5:17:5 | b | main.rs:18:10:18:10 | b | provenance | MaD:7 | -| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:6 | -| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:7 | +| main.rs:17:5:17:5 | b | main.rs:18:10:18:10 | b | provenance | MaD:6 | +| main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:4 | | main.rs:26:9:26:9 | a | main.rs:27:11:27:11 | a | provenance | | | main.rs:26:13:26:21 | source(...) | main.rs:26:9:26:9 | a | provenance | | -| main.rs:27:11:27:11 | a | main.rs:27:10:27:11 | - ... | provenance | MaD:14 | -| main.rs:29:11:29:19 | source(...) | main.rs:29:10:29:19 | ! ... | provenance | MaD:31 | -| main.rs:31:10:31:18 | source(...) | main.rs:31:10:31:22 | ... - ... | provenance | MaD:16 | -| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:15 | -| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:16 | -| main.rs:34:10:34:18 | source(...) | main.rs:34:10:34:22 | ... * ... | provenance | MaD:10 | -| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:9 | -| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:10 | -| main.rs:37:10:37:18 | source(...) | main.rs:37:10:37:23 | ... << ... | provenance | MaD:34 | -| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:32 | -| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:34 | -| main.rs:40:10:40:18 | source(...) | main.rs:40:10:40:22 | ... ^ ... | provenance | MaD:27 | -| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:26 | -| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:27 | +| main.rs:27:11:27:11 | a | main.rs:27:10:27:11 | - ... | provenance | MaD:11 | +| main.rs:29:11:29:19 | source(...) | main.rs:29:10:29:19 | ! ... | provenance | MaD:25 | +| main.rs:31:10:31:18 | source(...) | main.rs:31:10:31:22 | ... - ... | provenance | MaD:12 | +| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:12 | +| main.rs:34:10:34:18 | source(...) | main.rs:34:10:34:22 | ... * ... | provenance | MaD:7 | +| main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:7 | +| main.rs:37:10:37:18 | source(...) | main.rs:37:10:37:23 | ... << ... | provenance | MaD:27 | +| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:27 | +| main.rs:40:10:40:18 | source(...) | main.rs:40:10:40:22 | ... ^ ... | provenance | MaD:21 | +| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:21 | | main.rs:45:9:45:9 | a | main.rs:46:9:46:9 | b | provenance | | | main.rs:45:13:45:22 | source(...) | main.rs:45:9:45:9 | a | provenance | | | main.rs:46:9:46:9 | b | main.rs:47:10:47:17 | b as i64 | provenance | | @@ -78,11 +64,11 @@ edges | main.rs:60:17:60:26 | source(...) | main.rs:60:13:60:13 | s | provenance | | | main.rs:61:13:61:18 | sliced [&ref] | main.rs:62:14:62:19 | sliced | provenance | | | main.rs:61:22:61:29 | &... [&ref] | main.rs:61:13:61:18 | sliced [&ref] | provenance | | -| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:43 | +| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:35 | | main.rs:61:23:61:29 | s[...] | main.rs:61:22:61:29 | &... [&ref] | provenance | | | main.rs:76:13:76:15 | arr | main.rs:77:14:77:16 | arr | provenance | | | main.rs:76:19:76:28 | source(...) | main.rs:76:13:76:15 | arr | provenance | | -| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:43 | +| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:35 | | main.rs:92:9:92:12 | [post] arr2 [element] | main.rs:93:14:93:17 | arr2 | provenance | | | main.rs:92:19:92:28 | source(...) | main.rs:92:9:92:12 | [post] arr2 [element] | provenance | | | main.rs:113:14:113:47 | TupleExpr [tuple.0] | main.rs:113:14:113:49 | ... .0 | provenance | | @@ -101,51 +87,54 @@ edges | main.rs:131:14:131:64 | TupleExpr [tuple.0] | main.rs:131:14:131:66 | ... .0 | provenance | | | main.rs:131:14:131:66 | ... .0 | main.rs:131:14:131:68 | ... .1 | provenance | | | main.rs:131:15:131:29 | source_tuple(...) | main.rs:131:14:131:64 | TupleExpr [tuple.0] | provenance | | -| main.rs:141:10:141:18 | source(...) | main.rs:141:10:141:28 | ... .add(...) | provenance | MaD:3 | +| main.rs:141:10:141:18 | source(...) | main.rs:141:10:141:28 | ... .add(...) | provenance | MaD:2 | | main.rs:143:19:143:27 | source(...) | main.rs:143:10:143:28 | 1i64.add(...) | provenance | MaD:2 | -| main.rs:143:19:143:27 | source(...) | main.rs:143:10:143:28 | 1i64.add(...) | provenance | MaD:3 | -| main.rs:146:10:146:18 | source(...) | main.rs:146:10:146:28 | ... .sub(...) | provenance | MaD:16 | -| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:15 | -| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:16 | -| main.rs:151:10:151:18 | source(...) | main.rs:151:10:151:28 | ... .mul(...) | provenance | MaD:10 | -| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:9 | -| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:10 | -| main.rs:156:10:156:18 | source(...) | main.rs:156:10:156:28 | ... .shl(...) | provenance | MaD:34 | -| main.rs:157:10:157:18 | source(...) | main.rs:157:10:157:25 | ... .shl(...) | provenance | MaD:34 | -| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:32 | -| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:34 | -| main.rs:160:10:160:18 | source(...) | main.rs:160:10:160:28 | ... .shr(...) | provenance | MaD:40 | -| main.rs:161:10:161:18 | source(...) | main.rs:161:10:161:25 | ... .shr(...) | provenance | MaD:40 | -| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:39 | -| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:40 | -| main.rs:164:10:164:18 | source(...) | main.rs:164:10:164:30 | ... .bitor(...) | provenance | MaD:25 | -| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:24 | -| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:25 | +| main.rs:146:10:146:18 | source(...) | main.rs:146:10:146:28 | ... .sub(...) | provenance | MaD:12 | +| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:12 | +| main.rs:151:10:151:18 | source(...) | main.rs:151:10:151:28 | ... .mul(...) | provenance | MaD:7 | +| main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:7 | +| main.rs:156:10:156:18 | source(...) | main.rs:156:10:156:28 | ... .shl(...) | provenance | MaD:27 | +| main.rs:157:10:157:18 | source(...) | main.rs:157:10:157:25 | ... .shl(...) | provenance | MaD:27 | +| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:27 | +| main.rs:160:10:160:18 | source(...) | main.rs:160:10:160:28 | ... .shr(...) | provenance | MaD:32 | +| main.rs:161:10:161:18 | source(...) | main.rs:161:10:161:25 | ... .shr(...) | provenance | MaD:32 | +| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:32 | +| main.rs:164:10:164:18 | source(...) | main.rs:164:10:164:30 | ... .bitor(...) | provenance | MaD:20 | +| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:20 | | main.rs:170:5:170:5 | [post] a | main.rs:171:5:171:5 | a | provenance | | | main.rs:170:5:170:5 | [post] a | main.rs:172:5:172:5 | a | provenance | | +| main.rs:170:5:170:5 | [post] a | main.rs:173:5:173:5 | a | provenance | | +| main.rs:170:5:170:5 | [post] a | main.rs:174:5:174:5 | a | provenance | | +| main.rs:170:5:170:5 | [post] a | main.rs:175:5:175:5 | a | provenance | | | main.rs:170:5:170:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:170:18:170:26 | source(...) | main.rs:170:5:170:5 | [post] a | provenance | MaD:6 | -| main.rs:170:18:170:26 | source(...) | main.rs:170:5:170:5 | [post] a | provenance | MaD:7 | +| main.rs:170:18:170:26 | source(...) | main.rs:170:5:170:5 | [post] a | provenance | MaD:4 | | main.rs:171:5:171:5 | [post] a | main.rs:172:5:172:5 | a | provenance | | +| main.rs:171:5:171:5 | [post] a | main.rs:173:5:173:5 | a | provenance | | +| main.rs:171:5:171:5 | [post] a | main.rs:174:5:174:5 | a | provenance | | +| main.rs:171:5:171:5 | [post] a | main.rs:175:5:175:5 | a | provenance | | | main.rs:171:5:171:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:171:5:171:5 | a | main.rs:171:5:171:5 | [post] a | provenance | MaD:18 | -| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:17 | -| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:18 | +| main.rs:171:5:171:5 | a | main.rs:171:5:171:5 | [post] a | provenance | MaD:14 | +| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:13 | +| main.rs:172:5:172:5 | [post] a | main.rs:173:5:173:5 | a | provenance | | +| main.rs:172:5:172:5 | [post] a | main.rs:174:5:174:5 | a | provenance | | +| main.rs:172:5:172:5 | [post] a | main.rs:175:5:175:5 | a | provenance | | | main.rs:172:5:172:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:172:5:172:5 | a | main.rs:172:5:172:5 | [post] a | provenance | MaD:12 | -| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:11 | -| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:12 | +| main.rs:172:5:172:5 | a | main.rs:172:5:172:5 | [post] a | provenance | MaD:9 | +| main.rs:172:18:172:26 | source(...) | main.rs:172:5:172:5 | [post] a | provenance | MaD:8 | +| main.rs:173:5:173:5 | [post] a | main.rs:174:5:174:5 | a | provenance | | +| main.rs:173:5:173:5 | [post] a | main.rs:175:5:175:5 | a | provenance | | | main.rs:173:5:173:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:36 | -| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:37 | +| main.rs:173:5:173:5 | a | main.rs:173:5:173:5 | [post] a | provenance | MaD:31 | +| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:29 | +| main.rs:174:5:174:5 | [post] a | main.rs:175:5:175:5 | a | provenance | | | main.rs:174:5:174:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:41 | -| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:42 | +| main.rs:174:5:174:5 | a | main.rs:174:5:174:5 | [post] a | provenance | MaD:34 | +| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:33 | | main.rs:175:5:175:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:28 | -| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:29 | -| main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | provenance | MaD:14 | -| main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:31 | +| main.rs:175:5:175:5 | a | main.rs:175:5:175:5 | [post] a | provenance | MaD:23 | +| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:22 | +| main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | provenance | MaD:11 | +| main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:25 | | main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:201:21:201:21 | a [Wrapping] | provenance | | | main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:203:9:203:9 | a [Wrapping] | provenance | | | main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:204:9:204:9 | a [Wrapping] | provenance | | @@ -158,52 +147,52 @@ edges | main.rs:203:9:203:9 | [post] a | main.rs:206:21:206:23 | a.0 | provenance | | | main.rs:203:9:203:9 | [post] a [Wrapping] | main.rs:204:9:204:9 | a [Wrapping] | provenance | | | main.rs:203:9:203:9 | [post] a [Wrapping] | main.rs:206:21:206:21 | a [Wrapping] | provenance | | -| main.rs:203:9:203:9 | a [Wrapping] | main.rs:203:9:203:9 | [post] a [Wrapping] | provenance | MaD:8 | -| main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a | provenance | MaD:6 | -| main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a | provenance | MaD:7 | -| main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a [Wrapping] | provenance | MaD:5 | +| main.rs:203:9:203:9 | a [Wrapping] | main.rs:203:9:203:9 | [post] a [Wrapping] | provenance | MaD:5 | +| main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a | provenance | MaD:4 | +| main.rs:203:22:203:30 | source(...) | main.rs:203:9:203:9 | [post] a [Wrapping] | provenance | MaD:3 | | main.rs:204:9:204:9 | [post] a | main.rs:205:14:205:14 | a | provenance | | | main.rs:204:9:204:9 | [post] a | main.rs:206:21:206:23 | a.0 | provenance | | | main.rs:204:9:204:9 | [post] a [Wrapping] | main.rs:206:21:206:21 | a [Wrapping] | provenance | | -| main.rs:204:9:204:9 | a | main.rs:204:9:204:9 | [post] a | provenance | MaD:7 | -| main.rs:204:9:204:9 | a | main.rs:204:9:204:9 | [post] a [Wrapping] | provenance | MaD:8 | -| main.rs:204:9:204:9 | a [Wrapping] | main.rs:204:9:204:9 | [post] a [Wrapping] | provenance | MaD:8 | -| main.rs:204:22:204:47 | Wrapping(...) [Wrapping] | main.rs:204:9:204:9 | [post] a [Wrapping] | provenance | MaD:5 | +| main.rs:204:9:204:9 | a | main.rs:204:9:204:9 | [post] a | provenance | MaD:6 | +| main.rs:204:9:204:9 | a | main.rs:204:9:204:9 | [post] a [Wrapping] | provenance | MaD:5 | +| main.rs:204:9:204:9 | a [Wrapping] | main.rs:204:9:204:9 | [post] a [Wrapping] | provenance | MaD:5 | +| main.rs:204:22:204:47 | Wrapping(...) [Wrapping] | main.rs:204:9:204:9 | [post] a [Wrapping] | provenance | MaD:3 | | main.rs:204:31:204:46 | ...::source(...) | main.rs:204:22:204:47 | Wrapping(...) [Wrapping] | provenance | | | main.rs:206:21:206:21 | a [Wrapping] | main.rs:206:21:206:23 | a.0 | provenance | | | main.rs:208:9:208:9 | a | main.rs:209:9:209:9 | a | provenance | | | main.rs:208:13:208:21 | source(...) | main.rs:208:9:208:9 | a | provenance | | -| main.rs:209:9:209:9 | a | main.rs:210:9:210:9 | a | provenance | MaD:7 | -| main.rs:209:9:209:9 | a | main.rs:210:9:210:9 | a [Wrapping] | provenance | MaD:8 | -| main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a | provenance | MaD:6 | -| main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a | provenance | MaD:7 | -| main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a [Wrapping] | provenance | MaD:5 | -| main.rs:210:9:210:9 | a | main.rs:211:14:211:14 | a | provenance | MaD:7 | -| main.rs:210:9:210:9 | a | main.rs:212:21:212:21 | a [Wrapping] | provenance | MaD:8 | -| main.rs:210:9:210:9 | a | main.rs:212:21:212:23 | a.0 | provenance | MaD:7 | -| main.rs:210:9:210:9 | a [Wrapping] | main.rs:212:21:212:21 | a [Wrapping] | provenance | MaD:8 | -| main.rs:210:14:210:49 | ...::Wrapping(...) [Wrapping] | main.rs:212:21:212:21 | a [Wrapping] | provenance | MaD:5 | +| main.rs:209:9:209:9 | a | main.rs:210:9:210:9 | a | provenance | MaD:6 | +| main.rs:209:9:209:9 | a | main.rs:210:9:210:9 | a [Wrapping] | provenance | MaD:5 | +| main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a | provenance | MaD:4 | +| main.rs:209:14:209:22 | source(...) | main.rs:210:9:210:9 | a [Wrapping] | provenance | MaD:3 | +| main.rs:210:9:210:9 | a | main.rs:211:14:211:14 | a | provenance | MaD:6 | +| main.rs:210:9:210:9 | a | main.rs:212:21:212:21 | a [Wrapping] | provenance | MaD:5 | +| main.rs:210:9:210:9 | a | main.rs:212:21:212:23 | a.0 | provenance | MaD:6 | +| main.rs:210:9:210:9 | a [Wrapping] | main.rs:212:21:212:21 | a [Wrapping] | provenance | MaD:5 | +| main.rs:210:14:210:49 | ...::Wrapping(...) [Wrapping] | main.rs:212:21:212:21 | a [Wrapping] | provenance | MaD:3 | | main.rs:210:33:210:48 | ...::source(...) | main.rs:210:14:210:49 | ...::Wrapping(...) [Wrapping] | provenance | | | main.rs:212:21:212:21 | a [Wrapping] | main.rs:212:21:212:23 | a.0 | provenance | | | main.rs:214:9:214:9 | a | main.rs:215:9:215:9 | a | provenance | | | main.rs:214:13:214:21 | source(...) | main.rs:214:9:214:9 | a | provenance | | -| main.rs:215:9:215:9 | a | main.rs:216:9:216:9 | a [Wrapping] | provenance | MaD:23 | -| main.rs:215:14:215:22 | source(...) | main.rs:216:9:216:9 | a | provenance | MaD:20 | -| main.rs:215:14:215:22 | source(...) | main.rs:216:9:216:9 | a | provenance | MaD:21 | -| main.rs:215:14:215:22 | source(...) | main.rs:216:9:216:9 | a [Wrapping] | provenance | MaD:22 | -| main.rs:216:9:216:9 | a | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:23 | -| main.rs:216:9:216:9 | a [Wrapping] | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:23 | -| main.rs:216:14:216:39 | Wrapping(...) [Wrapping] | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:22 | +| main.rs:215:9:215:9 | a | main.rs:216:9:216:9 | a | provenance | MaD:19 | +| main.rs:215:9:215:9 | a | main.rs:216:9:216:9 | a [Wrapping] | provenance | MaD:18 | +| main.rs:215:14:215:22 | source(...) | main.rs:216:9:216:9 | a | provenance | MaD:17 | +| main.rs:215:14:215:22 | source(...) | main.rs:216:9:216:9 | a [Wrapping] | provenance | MaD:16 | +| main.rs:216:9:216:9 | a | main.rs:217:14:217:14 | a | provenance | MaD:19 | +| main.rs:216:9:216:9 | a | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:18 | +| main.rs:216:9:216:9 | a | main.rs:218:21:218:23 | a.0 | provenance | MaD:19 | +| main.rs:216:9:216:9 | a [Wrapping] | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:18 | +| main.rs:216:14:216:39 | Wrapping(...) [Wrapping] | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:16 | | main.rs:216:23:216:38 | ...::source(...) | main.rs:216:14:216:39 | Wrapping(...) [Wrapping] | provenance | | | main.rs:218:21:218:21 | a [Wrapping] | main.rs:218:21:218:23 | a.0 | provenance | | | main.rs:220:9:220:9 | a | main.rs:221:9:221:9 | a | provenance | | | main.rs:220:13:220:22 | source(...) | main.rs:220:9:220:9 | a | provenance | | -| main.rs:221:9:221:9 | a | main.rs:223:21:223:21 | a [Wrapping] | provenance | MaD:38 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:36 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:37 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:21 | a [Wrapping] | provenance | MaD:35 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:36 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:37 | +| main.rs:221:9:221:9 | a | main.rs:222:14:222:14 | a | provenance | MaD:31 | +| main.rs:221:9:221:9 | a | main.rs:223:21:223:21 | a [Wrapping] | provenance | MaD:30 | +| main.rs:221:9:221:9 | a | main.rs:223:21:223:23 | a.0 | provenance | MaD:31 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:29 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:21 | a [Wrapping] | provenance | MaD:28 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:29 | | main.rs:223:21:223:21 | a [Wrapping] | main.rs:223:21:223:23 | a.0 | provenance | | | main.rs:225:13:225:13 | b [Wrapping] | main.rs:227:18:227:18 | b [Wrapping] | provenance | | | main.rs:225:13:225:13 | b [Wrapping] | main.rs:229:18:229:18 | b [Wrapping] | provenance | | @@ -221,44 +210,43 @@ edges | main.rs:226:32:226:57 | Wrapping(...) [Wrapping] | main.rs:226:13:226:13 | c [Wrapping] | provenance | | | main.rs:226:41:226:56 | ...::source(...) | main.rs:226:32:226:57 | Wrapping(...) [Wrapping] | provenance | | | main.rs:227:13:227:14 | v1 [Wrapping] | main.rs:228:21:228:22 | v1 [Wrapping] | provenance | | -| main.rs:227:18:227:18 | b [Wrapping] | main.rs:227:18:227:22 | ... + ... [Wrapping] | provenance | MaD:4 | +| main.rs:227:18:227:18 | b [Wrapping] | main.rs:227:18:227:22 | ... + ... [Wrapping] | provenance | MaD:1 | | main.rs:227:18:227:22 | ... + ... [Wrapping] | main.rs:227:13:227:14 | v1 [Wrapping] | provenance | | | main.rs:227:22:227:22 | c [Wrapping] | main.rs:227:18:227:22 | ... + ... [Wrapping] | provenance | MaD:1 | | main.rs:228:21:228:22 | v1 [Wrapping] | main.rs:228:21:228:24 | v1.0 | provenance | | | main.rs:229:13:229:14 | v2 [Wrapping] | main.rs:230:21:230:22 | v2 [Wrapping] | provenance | | -| main.rs:229:18:229:18 | b [Wrapping] | main.rs:229:18:229:25 | b.add(...) [Wrapping] | provenance | MaD:4 | +| main.rs:229:18:229:18 | b [Wrapping] | main.rs:229:18:229:25 | b.add(...) [Wrapping] | provenance | MaD:1 | | main.rs:229:18:229:25 | b.add(...) [Wrapping] | main.rs:229:13:229:14 | v2 [Wrapping] | provenance | | | main.rs:229:24:229:24 | c [Wrapping] | main.rs:229:18:229:25 | b.add(...) [Wrapping] | provenance | MaD:1 | | main.rs:230:21:230:22 | v2 [Wrapping] | main.rs:230:21:230:24 | v2.0 | provenance | | | main.rs:231:13:231:14 | v3 [Wrapping] | main.rs:232:21:232:22 | v3 [Wrapping] | provenance | | | main.rs:231:18:231:19 | - ... [Wrapping] | main.rs:231:13:231:14 | v3 [Wrapping] | provenance | | -| main.rs:231:19:231:19 | b [Wrapping] | main.rs:231:18:231:19 | - ... [Wrapping] | provenance | MaD:13 | +| main.rs:231:19:231:19 | b [Wrapping] | main.rs:231:18:231:19 | - ... [Wrapping] | provenance | MaD:10 | | main.rs:232:21:232:22 | v3 [Wrapping] | main.rs:232:21:232:24 | v3.0 | provenance | | | main.rs:233:13:233:14 | v4 [Wrapping] | main.rs:234:21:234:22 | v4 [Wrapping] | provenance | | -| main.rs:233:18:233:18 | b [Wrapping] | main.rs:233:18:233:24 | b.neg() [Wrapping] | provenance | MaD:13 | +| main.rs:233:18:233:18 | b [Wrapping] | main.rs:233:18:233:24 | b.neg() [Wrapping] | provenance | MaD:10 | | main.rs:233:18:233:24 | b.neg() [Wrapping] | main.rs:233:13:233:14 | v4 [Wrapping] | provenance | | | main.rs:234:21:234:22 | v4 [Wrapping] | main.rs:234:21:234:24 | v4.0 | provenance | | | main.rs:235:13:235:14 | v5 [Wrapping] | main.rs:236:21:236:22 | v5 [Wrapping] | provenance | | | main.rs:235:18:235:19 | ! ... [Wrapping] | main.rs:235:13:235:14 | v5 [Wrapping] | provenance | | -| main.rs:235:19:235:19 | b [Wrapping] | main.rs:235:18:235:19 | ! ... [Wrapping] | provenance | MaD:30 | +| main.rs:235:19:235:19 | b [Wrapping] | main.rs:235:18:235:19 | ! ... [Wrapping] | provenance | MaD:24 | | main.rs:236:21:236:22 | v5 [Wrapping] | main.rs:236:21:236:24 | v5.0 | provenance | | | main.rs:237:13:237:14 | v6 [Wrapping] | main.rs:238:21:238:22 | v6 [Wrapping] | provenance | | -| main.rs:237:18:237:18 | b [Wrapping] | main.rs:237:18:237:24 | b.not() [Wrapping] | provenance | MaD:30 | +| main.rs:237:18:237:18 | b [Wrapping] | main.rs:237:18:237:24 | b.not() [Wrapping] | provenance | MaD:24 | | main.rs:237:18:237:24 | b.not() [Wrapping] | main.rs:237:13:237:14 | v6 [Wrapping] | provenance | | | main.rs:238:21:238:22 | v6 [Wrapping] | main.rs:238:21:238:24 | v6.0 | provenance | | | main.rs:239:13:239:14 | v7 [Wrapping] | main.rs:240:21:240:22 | v7 [Wrapping] | provenance | | -| main.rs:239:18:239:18 | b [Wrapping] | main.rs:239:18:239:22 | ... & ... [Wrapping] | provenance | MaD:19 | +| main.rs:239:18:239:18 | b [Wrapping] | main.rs:239:18:239:22 | ... & ... [Wrapping] | provenance | MaD:15 | | main.rs:239:18:239:22 | ... & ... [Wrapping] | main.rs:239:13:239:14 | v7 [Wrapping] | provenance | | -| main.rs:239:22:239:22 | c [Wrapping] | main.rs:239:18:239:22 | ... & ... [Wrapping] | provenance | MaD:19 | +| main.rs:239:22:239:22 | c [Wrapping] | main.rs:239:18:239:22 | ... & ... [Wrapping] | provenance | MaD:15 | | main.rs:240:21:240:22 | v7 [Wrapping] | main.rs:240:21:240:24 | v7.0 | provenance | | | main.rs:241:13:241:14 | v8 | main.rs:242:21:242:24 | v8.0 | provenance | | | main.rs:241:13:241:14 | v8 [Wrapping] | main.rs:242:21:242:22 | v8 [Wrapping] | provenance | | -| main.rs:241:18:241:18 | b [Wrapping] | main.rs:241:18:241:37 | ... << ... [Wrapping] | provenance | MaD:33 | +| main.rs:241:18:241:18 | b [Wrapping] | main.rs:241:18:241:37 | ... << ... [Wrapping] | provenance | MaD:26 | | main.rs:241:18:241:37 | ... << ... | main.rs:241:13:241:14 | v8 | provenance | | | main.rs:241:18:241:37 | ... << ... [Wrapping] | main.rs:241:13:241:14 | v8 [Wrapping] | provenance | | -| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:32 | -| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:34 | -| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... [Wrapping] | provenance | MaD:33 | +| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:27 | +| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... [Wrapping] | provenance | MaD:26 | | main.rs:242:21:242:22 | v8 [Wrapping] | main.rs:242:21:242:24 | v8.0 | provenance | | nodes | main.rs:12:9:12:9 | a | semmle.label | a | @@ -374,10 +362,13 @@ nodes | main.rs:172:5:172:5 | a | semmle.label | a | | main.rs:172:18:172:26 | source(...) | semmle.label | source(...) | | main.rs:173:5:173:5 | [post] a | semmle.label | [post] a | +| main.rs:173:5:173:5 | a | semmle.label | a | | main.rs:173:18:173:26 | source(...) | semmle.label | source(...) | | main.rs:174:5:174:5 | [post] a | semmle.label | [post] a | +| main.rs:174:5:174:5 | a | semmle.label | a | | main.rs:174:18:174:26 | source(...) | semmle.label | source(...) | | main.rs:175:5:175:5 | [post] a | semmle.label | [post] a | +| main.rs:175:5:175:5 | a | semmle.label | a | | main.rs:175:21:175:29 | source(...) | semmle.label | source(...) | | main.rs:176:10:176:10 | a | semmle.label | a | | main.rs:178:10:178:18 | source(...) | semmle.label | source(...) | @@ -421,6 +412,7 @@ nodes | main.rs:216:9:216:9 | a [Wrapping] | semmle.label | a [Wrapping] | | main.rs:216:14:216:39 | Wrapping(...) [Wrapping] | semmle.label | Wrapping(...) [Wrapping] | | main.rs:216:23:216:38 | ...::source(...) | semmle.label | ...::source(...) | +| main.rs:217:14:217:14 | a | semmle.label | a | | main.rs:218:21:218:21 | a [Wrapping] | semmle.label | a [Wrapping] | | main.rs:218:21:218:23 | a.0 | semmle.label | a.0 | | main.rs:220:9:220:9 | a | semmle.label | a | @@ -543,9 +535,12 @@ testFailures | main.rs:212:21:212:23 | a.0 | main.rs:208:13:208:21 | source(...) | main.rs:212:21:212:23 | a.0 | $@ | main.rs:208:13:208:21 | source(...) | source(...) | | main.rs:212:21:212:23 | a.0 | main.rs:209:14:209:22 | source(...) | main.rs:212:21:212:23 | a.0 | $@ | main.rs:209:14:209:22 | source(...) | source(...) | | main.rs:212:21:212:23 | a.0 | main.rs:210:33:210:48 | ...::source(...) | main.rs:212:21:212:23 | a.0 | $@ | main.rs:210:33:210:48 | ...::source(...) | ...::source(...) | +| main.rs:217:14:217:14 | a | main.rs:214:13:214:21 | source(...) | main.rs:217:14:217:14 | a | $@ | main.rs:214:13:214:21 | source(...) | source(...) | +| main.rs:217:14:217:14 | a | main.rs:215:14:215:22 | source(...) | main.rs:217:14:217:14 | a | $@ | main.rs:215:14:215:22 | source(...) | source(...) | | main.rs:218:21:218:23 | a.0 | main.rs:214:13:214:21 | source(...) | main.rs:218:21:218:23 | a.0 | $@ | main.rs:214:13:214:21 | source(...) | source(...) | | main.rs:218:21:218:23 | a.0 | main.rs:215:14:215:22 | source(...) | main.rs:218:21:218:23 | a.0 | $@ | main.rs:215:14:215:22 | source(...) | source(...) | | main.rs:218:21:218:23 | a.0 | main.rs:216:23:216:38 | ...::source(...) | main.rs:218:21:218:23 | a.0 | $@ | main.rs:216:23:216:38 | ...::source(...) | ...::source(...) | +| main.rs:222:14:222:14 | a | main.rs:220:13:220:22 | source(...) | main.rs:222:14:222:14 | a | $@ | main.rs:220:13:220:22 | source(...) | source(...) | | main.rs:222:14:222:14 | a | main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | $@ | main.rs:221:15:221:30 | source_usize(...) | source_usize(...) | | main.rs:223:21:223:23 | a.0 | main.rs:220:13:220:22 | source(...) | main.rs:223:21:223:23 | a.0 | $@ | main.rs:220:13:220:22 | source(...) | source(...) | | main.rs:223:21:223:23 | a.0 | main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | $@ | main.rs:221:15:221:30 | source_usize(...) | source_usize(...) | diff --git a/rust/ql/test/library-tests/dataflow/taint/main.rs b/rust/ql/test/library-tests/dataflow/taint/main.rs index e6802166333b..07770cc71189 100644 --- a/rust/ql/test/library-tests/dataflow/taint/main.rs +++ b/rust/ql/test/library-tests/dataflow/taint/main.rs @@ -214,12 +214,12 @@ mod wrapping { a = source(7); a &= source(8); a &= Wrapping(crate::source(9)); - sink(a); // $ MISSING: hasTaintFlow=7 hasTaintFlow=8 hasTaintFlow=9 + sink(a); // $ hasTaintFlow=7 hasTaintFlow=8 MISSING: hasTaintFlow=9 crate::sink(a.0); // $ hasTaintFlow=7 hasTaintFlow=8 hasTaintFlow=9 a = source(10); a <<= source_usize(11); - sink(a); // $ hasTaintFlow=11 MISSING: hasTaintFlow=10 + sink(a); // $ hasTaintFlow=11 hasTaintFlow=10 crate::sink(a.0); // $ hasTaintFlow=11 hasTaintFlow=10 let b: Wrapping = Wrapping(crate::source(1)); From 67b52e29e0591da43e61caf6250fdaff18e4bfc0 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Wed, 21 Jan 2026 17:22:47 +0000 Subject: [PATCH 115/433] Rust: Update other affected tests. --- .../dataflow/collections/inline-flow.expected | 23 ++--- .../dataflow/modeled/inline-flow.expected | 94 +++++++++---------- .../sources/database/InlineFlow.expected | 30 +++++- 3 files changed, 80 insertions(+), 67 deletions(-) diff --git a/rust/ql/test/library-tests/dataflow/collections/inline-flow.expected b/rust/ql/test/library-tests/dataflow/collections/inline-flow.expected index c0e096f98f0b..e3eba23d036a 100644 --- a/rust/ql/test/library-tests/dataflow/collections/inline-flow.expected +++ b/rust/ql/test/library-tests/dataflow/collections/inline-flow.expected @@ -1,8 +1,7 @@ models | 1 | Summary: <& as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue; value | -| 2 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0].Reference; Argument[self].Reference; taint | -| 3 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0]; Argument[self].Reference; taint | -| 4 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | +| 2 | Summary: <_ as core::ops::arith::AddAssign>::add_assign; Argument[0]; Argument[self].Reference; taint | +| 3 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | edges | main.rs:15:13:15:13 | s | main.rs:16:20:16:20 | s | provenance | | | main.rs:15:17:15:25 | source(...) | main.rs:15:13:15:13 | s | provenance | | @@ -10,14 +9,14 @@ edges | main.rs:16:13:16:15 | arr [element] | main.rs:18:15:18:17 | arr [element] | provenance | | | main.rs:16:19:16:24 | [s; 5] [element] | main.rs:16:13:16:15 | arr [element] | provenance | | | main.rs:16:20:16:20 | s | main.rs:16:19:16:24 | [s; 5] [element] | provenance | | -| main.rs:17:14:17:16 | arr [element] | main.rs:17:14:17:19 | arr[2] | provenance | MaD:4 | -| main.rs:18:15:18:17 | arr [element] | main.rs:18:15:18:26 | arr.index(...) [&ref] | provenance | MaD:4 | +| main.rs:17:14:17:16 | arr [element] | main.rs:17:14:17:19 | arr[2] | provenance | MaD:3 | +| main.rs:18:15:18:17 | arr [element] | main.rs:18:15:18:26 | arr.index(...) [&ref] | provenance | MaD:3 | | main.rs:18:15:18:26 | arr.index(...) [&ref] | main.rs:18:14:18:26 | * ... | provenance | MaD:1 | | main.rs:20:13:20:19 | mut arr | main.rs:21:14:21:16 | arr | provenance | | | main.rs:20:13:20:19 | mut arr | main.rs:22:15:22:17 | arr | provenance | | | main.rs:20:23:20:33 | source(...) | main.rs:20:13:20:19 | mut arr | provenance | | -| main.rs:21:14:21:16 | arr | main.rs:21:14:21:19 | arr[0] | provenance | MaD:4 | -| main.rs:22:15:22:17 | arr | main.rs:22:15:22:26 | arr.index(...) [&ref] | provenance | MaD:4 | +| main.rs:21:14:21:16 | arr | main.rs:21:14:21:19 | arr[0] | provenance | MaD:3 | +| main.rs:22:15:22:17 | arr | main.rs:22:15:22:26 | arr.index(...) [&ref] | provenance | MaD:3 | | main.rs:22:15:22:26 | arr.index(...) [&ref] | main.rs:22:14:22:26 | * ... | provenance | MaD:1 | | main.rs:24:13:24:13 | s | main.rs:25:20:25:20 | s | provenance | | | main.rs:24:17:24:25 | source(...) | main.rs:24:13:24:13 | s | provenance | | @@ -30,17 +29,15 @@ edges | main.rs:30:19:30:29 | source(...) | main.rs:30:13:30:15 | arr | provenance | | | main.rs:37:9:37:11 | [post] arr [element] | main.rs:38:14:38:16 | arr [element] | provenance | | | main.rs:37:18:37:26 | source(...) | main.rs:37:9:37:11 | [post] arr [element] | provenance | | -| main.rs:38:14:38:16 | arr [element] | main.rs:38:14:38:19 | arr[0] | provenance | MaD:4 | +| main.rs:38:14:38:16 | arr [element] | main.rs:38:14:38:19 | arr[0] | provenance | MaD:3 | | main.rs:46:9:46:14 | [post] arr[0] | main.rs:47:14:47:16 | arr | provenance | | | main.rs:46:19:46:27 | source(...) | main.rs:46:9:46:14 | [post] arr[0] | provenance | MaD:2 | -| main.rs:46:19:46:27 | source(...) | main.rs:46:9:46:14 | [post] arr[0] | provenance | MaD:3 | -| main.rs:47:14:47:16 | arr | main.rs:47:14:47:19 | arr[0] | provenance | MaD:4 | +| main.rs:47:14:47:16 | arr | main.rs:47:14:47:19 | arr[0] | provenance | MaD:3 | | main.rs:63:18:63:22 | SelfParam [&ref, S] | main.rs:63:56:65:9 | { ... } [&ref, S] | provenance | | | main.rs:76:34:76:44 | ...: Self [S] | main.rs:77:23:77:27 | other [S] | provenance | | | main.rs:77:13:77:18 | [post] self.0 | main.rs:76:23:76:31 | SelfParam [Return] [&ref, S] | provenance | | | main.rs:77:23:77:27 | other [S] | main.rs:77:23:77:29 | other.0 | provenance | | | main.rs:77:23:77:29 | other.0 | main.rs:77:13:77:18 | [post] self.0 | provenance | MaD:2 | -| main.rs:77:23:77:29 | other.0 | main.rs:77:13:77:18 | [post] self.0 | provenance | MaD:3 | | main.rs:82:13:82:13 | s | main.rs:83:19:83:19 | s | provenance | | | main.rs:82:17:82:25 | source(...) | main.rs:82:13:82:13 | s | provenance | | | main.rs:83:13:83:13 | s [S] | main.rs:84:14:84:14 | s [S] | provenance | | @@ -67,7 +64,6 @@ edges | main.rs:99:9:99:12 | [post] s[0] [S] | main.rs:99:9:99:9 | [post] s [S] | provenance | | | main.rs:99:17:99:28 | S(...) [S] | main.rs:76:34:76:44 | ...: Self [S] | provenance | | | main.rs:99:17:99:28 | S(...) [S] | main.rs:99:9:99:12 | [post] s[0] [S] | provenance | MaD:2 | -| main.rs:99:17:99:28 | S(...) [S] | main.rs:99:9:99:12 | [post] s[0] [S] | provenance | MaD:3 | | main.rs:99:19:99:27 | source(...) | main.rs:99:17:99:28 | S(...) [S] | provenance | | | main.rs:100:14:100:14 | s [S] | main.rs:100:14:100:16 | s.0 | provenance | | | main.rs:104:9:104:23 | [post] * ... [S] | main.rs:104:10:104:23 | [post] s.index_mut(...) [&ref, S] | provenance | | @@ -75,13 +71,11 @@ edges | main.rs:104:10:104:23 | [post] s.index_mut(...) [&ref, S] | main.rs:104:10:104:10 | [post] s [S] | provenance | | | main.rs:104:28:104:39 | S(...) [S] | main.rs:76:34:76:44 | ...: Self [S] | provenance | | | main.rs:104:28:104:39 | S(...) [S] | main.rs:104:9:104:23 | [post] * ... [S] | provenance | MaD:2 | -| main.rs:104:28:104:39 | S(...) [S] | main.rs:104:9:104:23 | [post] * ... [S] | provenance | MaD:3 | | main.rs:104:30:104:38 | source(...) | main.rs:104:28:104:39 | S(...) [S] | provenance | | | main.rs:105:9:105:9 | [post] s [S] | main.rs:106:14:106:14 | s [S] | provenance | | | main.rs:105:9:105:12 | [post] s[0] [S] | main.rs:105:9:105:9 | [post] s [S] | provenance | | | main.rs:105:17:105:28 | S(...) [S] | main.rs:76:34:76:44 | ...: Self [S] | provenance | | | main.rs:105:17:105:28 | S(...) [S] | main.rs:105:9:105:12 | [post] s[0] [S] | provenance | MaD:2 | -| main.rs:105:17:105:28 | S(...) [S] | main.rs:105:9:105:12 | [post] s[0] [S] | provenance | MaD:3 | | main.rs:105:19:105:27 | source(...) | main.rs:105:17:105:28 | S(...) [S] | provenance | | | main.rs:106:14:106:14 | s [S] | main.rs:106:14:106:16 | s.0 | provenance | | | main.rs:110:10:110:24 | [post] * ... [S] | main.rs:110:11:110:24 | [post] s.index_mut(...) [&ref, S] | provenance | | @@ -89,7 +83,6 @@ edges | main.rs:110:11:110:24 | [post] s.index_mut(...) [&ref, S] | main.rs:110:11:110:11 | [post] s [S] | provenance | | | main.rs:110:38:110:49 | S(...) [S] | main.rs:76:34:76:44 | ...: Self [S] | provenance | | | main.rs:110:38:110:49 | S(...) [S] | main.rs:110:10:110:24 | [post] * ... [S] | provenance | MaD:2 | -| main.rs:110:38:110:49 | S(...) [S] | main.rs:110:10:110:24 | [post] * ... [S] | provenance | MaD:3 | | main.rs:110:40:110:48 | source(...) | main.rs:110:38:110:49 | S(...) [S] | provenance | | | main.rs:111:14:111:14 | s [S] | main.rs:111:14:111:16 | s.0 | provenance | | nodes diff --git a/rust/ql/test/library-tests/dataflow/modeled/inline-flow.expected b/rust/ql/test/library-tests/dataflow/modeled/inline-flow.expected index 14244fff454a..58a421b4d3f7 100644 --- a/rust/ql/test/library-tests/dataflow/modeled/inline-flow.expected +++ b/rust/ql/test/library-tests/dataflow/modeled/inline-flow.expected @@ -4,53 +4,52 @@ models | 3 | Summary: <_ as core::cmp::Ord>::clamp; Argument[self,0,1]; ReturnValue; value | | 4 | Summary: <_ as core::cmp::Ord>::max; Argument[self,0]; ReturnValue; value | | 5 | Summary: <_ as core::cmp::Ord>::min; Argument[self,0]; ReturnValue; value | -| 6 | Summary: <_ as core::ops::arith::Add>::add; Argument[0].Reference; ReturnValue; taint | -| 7 | Summary: <_ as core::ops::arith::Add>::add; Argument[0]; ReturnValue; taint | -| 8 | Summary: ::into_pin; Argument[0]; ReturnValue.Field[core::pin::Pin::pointer]; value | -| 9 | Summary: ::new; Argument[0]; ReturnValue.Field[alloc::boxed::Box(0)]; value | -| 10 | Summary: ::pin; Argument[0]; ReturnValue.Field[core::pin::Pin::pointer].Field[alloc::boxed::Box(0)]; value | -| 11 | Summary: ::clone; Argument[self].Reference; ReturnValue; value | -| 12 | Summary: ::clone; Argument[self]; ReturnValue; value | -| 13 | Summary: ::map_or; Argument[1].ReturnValue; ReturnValue; value | -| 14 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 15 | Summary: ::zip; Argument[0].Field[core::option::Option::Some(0)]; ReturnValue.Field[core::option::Option::Some(0)].Field[1]; value | -| 16 | Summary: ::deref; Argument[self].Reference.Field[core::pin::Pin::pointer].Field[alloc::boxed::Box(0)]; ReturnValue.Reference; value | -| 17 | Summary: ::deref; Argument[self].Reference.Field[core::pin::Pin::pointer].Reference; ReturnValue.Reference; value | -| 18 | Summary: ::into_inner; Argument[0].Field[core::pin::Pin::pointer]; ReturnValue; value | -| 19 | Summary: ::into_inner_unchecked; Argument[0].Field[core::pin::Pin::pointer]; ReturnValue; value | -| 20 | Summary: ::new; Argument[0].Reference; ReturnValue; value | -| 21 | Summary: ::new; Argument[0]; ReturnValue.Field[core::pin::Pin::pointer]; value | -| 22 | Summary: ::new_unchecked; Argument[0]; ReturnValue.Field[core::pin::Pin::pointer]; value | -| 23 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 24 | Summary: core::ptr::read; Argument[0].Reference; ReturnValue; value | -| 25 | Summary: core::ptr::write; Argument[1]; Argument[0].Reference; value | +| 6 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0]; ReturnValue; taint | +| 7 | Summary: ::into_pin; Argument[0]; ReturnValue.Field[core::pin::Pin::pointer]; value | +| 8 | Summary: ::new; Argument[0]; ReturnValue.Field[alloc::boxed::Box(0)]; value | +| 9 | Summary: ::pin; Argument[0]; ReturnValue.Field[core::pin::Pin::pointer].Field[alloc::boxed::Box(0)]; value | +| 10 | Summary: ::clone; Argument[self].Reference; ReturnValue; value | +| 11 | Summary: ::clone; Argument[self]; ReturnValue; value | +| 12 | Summary: ::map_or; Argument[1].ReturnValue; ReturnValue; value | +| 13 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 14 | Summary: ::zip; Argument[0].Field[core::option::Option::Some(0)]; ReturnValue.Field[core::option::Option::Some(0)].Field[1]; value | +| 15 | Summary: ::deref; Argument[self].Reference.Field[core::pin::Pin::pointer].Field[alloc::boxed::Box(0)]; ReturnValue.Reference; value | +| 16 | Summary: ::deref; Argument[self].Reference.Field[core::pin::Pin::pointer].Reference; ReturnValue.Reference; value | +| 17 | Summary: ::into_inner; Argument[0].Field[core::pin::Pin::pointer]; ReturnValue; value | +| 18 | Summary: ::into_inner_unchecked; Argument[0].Field[core::pin::Pin::pointer]; ReturnValue; value | +| 19 | Summary: ::new; Argument[0].Reference; ReturnValue; value | +| 20 | Summary: ::new; Argument[0]; ReturnValue.Field[core::pin::Pin::pointer]; value | +| 21 | Summary: ::new_unchecked; Argument[0]; ReturnValue.Field[core::pin::Pin::pointer]; value | +| 22 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 23 | Summary: core::ptr::read; Argument[0].Reference; ReturnValue; value | +| 24 | Summary: core::ptr::write; Argument[1]; Argument[0].Reference; value | edges | main.rs:12:9:12:9 | a [Some] | main.rs:13:10:13:10 | a [Some] | provenance | | | main.rs:12:9:12:9 | a [Some] | main.rs:14:13:14:13 | a [Some] | provenance | | | main.rs:12:13:12:28 | Some(...) [Some] | main.rs:12:9:12:9 | a [Some] | provenance | | | main.rs:12:18:12:27 | source(...) | main.rs:12:13:12:28 | Some(...) [Some] | provenance | | -| main.rs:13:10:13:10 | a [Some] | main.rs:13:10:13:19 | a.unwrap() | provenance | MaD:14 | +| main.rs:13:10:13:10 | a [Some] | main.rs:13:10:13:19 | a.unwrap() | provenance | MaD:13 | | main.rs:14:9:14:9 | b [Some] | main.rs:15:10:15:10 | b [Some] | provenance | | | main.rs:14:13:14:13 | a [Some] | main.rs:14:13:14:21 | a.clone() [Some] | provenance | MaD:2 | | main.rs:14:13:14:21 | a.clone() [Some] | main.rs:14:9:14:9 | b [Some] | provenance | | -| main.rs:15:10:15:10 | b [Some] | main.rs:15:10:15:19 | b.unwrap() | provenance | MaD:14 | +| main.rs:15:10:15:10 | b [Some] | main.rs:15:10:15:19 | b.unwrap() | provenance | MaD:13 | | main.rs:19:9:19:9 | a [Ok] | main.rs:20:10:20:10 | a [Ok] | provenance | | | main.rs:19:9:19:9 | a [Ok] | main.rs:21:13:21:13 | a [Ok] | provenance | | | main.rs:19:31:19:44 | Ok(...) [Ok] | main.rs:19:9:19:9 | a [Ok] | provenance | | | main.rs:19:34:19:43 | source(...) | main.rs:19:31:19:44 | Ok(...) [Ok] | provenance | | -| main.rs:20:10:20:10 | a [Ok] | main.rs:20:10:20:19 | a.unwrap() | provenance | MaD:23 | +| main.rs:20:10:20:10 | a [Ok] | main.rs:20:10:20:19 | a.unwrap() | provenance | MaD:22 | | main.rs:21:9:21:9 | b [Ok] | main.rs:22:10:22:10 | b [Ok] | provenance | | | main.rs:21:13:21:13 | a [Ok] | main.rs:21:13:21:21 | a.clone() [Ok] | provenance | MaD:2 | | main.rs:21:13:21:21 | a.clone() [Ok] | main.rs:21:9:21:9 | b [Ok] | provenance | | -| main.rs:22:10:22:10 | b [Ok] | main.rs:22:10:22:19 | b.unwrap() | provenance | MaD:23 | +| main.rs:22:10:22:10 | b [Ok] | main.rs:22:10:22:19 | b.unwrap() | provenance | MaD:22 | | main.rs:26:9:26:9 | a | main.rs:27:10:27:10 | a | provenance | | | main.rs:26:9:26:9 | a | main.rs:28:13:28:13 | a | provenance | | | main.rs:26:13:26:22 | source(...) | main.rs:26:9:26:9 | a | provenance | | | main.rs:28:9:28:9 | b | main.rs:29:10:29:10 | b | provenance | | | main.rs:28:9:28:9 | b [&ref] | main.rs:29:10:29:10 | b | provenance | | | main.rs:28:13:28:13 | a | main.rs:28:13:28:21 | a.clone() | provenance | MaD:2 | -| main.rs:28:13:28:13 | a | main.rs:28:13:28:21 | a.clone() | provenance | MaD:11 | -| main.rs:28:13:28:13 | a | main.rs:28:13:28:21 | a.clone() [&ref] | provenance | MaD:12 | +| main.rs:28:13:28:13 | a | main.rs:28:13:28:21 | a.clone() | provenance | MaD:10 | +| main.rs:28:13:28:13 | a | main.rs:28:13:28:21 | a.clone() [&ref] | provenance | MaD:11 | | main.rs:28:13:28:21 | a.clone() | main.rs:28:9:28:9 | b | provenance | | | main.rs:28:13:28:21 | a.clone() [&ref] | main.rs:28:9:28:9 | b [&ref] | provenance | | | main.rs:43:18:43:22 | SelfParam [&ref, Wrapper] | main.rs:44:26:44:31 | self.n | provenance | | @@ -75,19 +74,18 @@ edges | main.rs:66:22:66:31 | source(...) | main.rs:66:17:66:32 | Some(...) [Some] | provenance | | | main.rs:67:13:67:13 | z [Some, tuple.1] | main.rs:68:15:68:15 | z [Some, tuple.1] | provenance | | | main.rs:67:17:67:24 | a.zip(...) [Some, tuple.1] | main.rs:67:13:67:13 | z [Some, tuple.1] | provenance | | -| main.rs:67:23:67:23 | b [Some] | main.rs:67:17:67:24 | a.zip(...) [Some, tuple.1] | provenance | MaD:15 | +| main.rs:67:23:67:23 | b [Some] | main.rs:67:17:67:24 | a.zip(...) [Some, tuple.1] | provenance | MaD:14 | | main.rs:68:15:68:15 | z [Some, tuple.1] | main.rs:69:13:69:24 | Some(...) [Some, tuple.1] | provenance | | | main.rs:69:13:69:24 | Some(...) [Some, tuple.1] | main.rs:69:18:69:23 | TuplePat [tuple.1] | provenance | | | main.rs:69:18:69:23 | TuplePat [tuple.1] | main.rs:69:22:69:22 | m | provenance | | | main.rs:69:22:69:22 | m | main.rs:71:22:71:22 | m | provenance | | | main.rs:79:13:79:13 | b | main.rs:80:14:80:14 | b | provenance | | | main.rs:79:17:79:47 | a.map_or(...) | main.rs:79:13:79:13 | b | provenance | | -| main.rs:79:33:79:46 | ... + ... | main.rs:79:17:79:47 | a.map_or(...) | provenance | MaD:13 | +| main.rs:79:33:79:46 | ... + ... | main.rs:79:17:79:47 | a.map_or(...) | provenance | MaD:12 | | main.rs:79:37:79:46 | source(...) | main.rs:79:33:79:46 | ... + ... | provenance | MaD:6 | -| main.rs:79:37:79:46 | source(...) | main.rs:79:33:79:46 | ... + ... | provenance | MaD:7 | | main.rs:92:29:92:29 | [post] y [&ref] | main.rs:93:33:93:33 | y [&ref] | provenance | | -| main.rs:92:32:92:41 | source(...) | main.rs:92:29:92:29 | [post] y [&ref] | provenance | MaD:25 | -| main.rs:93:33:93:33 | y [&ref] | main.rs:93:18:93:34 | ...::read(...) | provenance | MaD:24 | +| main.rs:92:32:92:41 | source(...) | main.rs:92:29:92:29 | [post] y [&ref] | provenance | MaD:24 | +| main.rs:93:33:93:33 | y [&ref] | main.rs:93:18:93:34 | ...::read(...) | provenance | MaD:23 | | main.rs:108:13:108:17 | mut i | main.rs:109:34:109:34 | i | provenance | | | main.rs:108:13:108:17 | mut i | main.rs:110:33:110:33 | i | provenance | | | main.rs:108:13:108:17 | mut i | main.rs:111:47:111:47 | i | provenance | | @@ -100,51 +98,51 @@ edges | main.rs:109:13:109:20 | mut pin1 [Pin, &ref] | main.rs:115:31:115:34 | pin1 [Pin, &ref] | provenance | | | main.rs:109:24:109:35 | ...::new(...) | main.rs:109:13:109:20 | mut pin1 | provenance | | | main.rs:109:24:109:35 | ...::new(...) [Pin, &ref] | main.rs:109:13:109:20 | mut pin1 [Pin, &ref] | provenance | | -| main.rs:109:33:109:34 | &i [&ref] | main.rs:109:24:109:35 | ...::new(...) | provenance | MaD:20 | -| main.rs:109:33:109:34 | &i [&ref] | main.rs:109:24:109:35 | ...::new(...) [Pin, &ref] | provenance | MaD:21 | +| main.rs:109:33:109:34 | &i [&ref] | main.rs:109:24:109:35 | ...::new(...) | provenance | MaD:19 | +| main.rs:109:33:109:34 | &i [&ref] | main.rs:109:24:109:35 | ...::new(...) [Pin, &ref] | provenance | MaD:20 | | main.rs:109:34:109:34 | i | main.rs:109:33:109:34 | &i [&ref] | provenance | | | main.rs:110:13:110:20 | mut pin2 [Pin, Box(0)] | main.rs:116:15:116:18 | pin2 [Pin, Box(0)] | provenance | | | main.rs:110:24:110:34 | ...::pin(...) [Pin, Box(0)] | main.rs:110:13:110:20 | mut pin2 [Pin, Box(0)] | provenance | | -| main.rs:110:33:110:33 | i | main.rs:110:24:110:34 | ...::pin(...) [Pin, Box(0)] | provenance | MaD:10 | +| main.rs:110:33:110:33 | i | main.rs:110:24:110:34 | ...::pin(...) [Pin, Box(0)] | provenance | MaD:9 | | main.rs:111:13:111:20 | mut pin3 [Pin, Box(0)] | main.rs:117:15:117:18 | pin3 [Pin, Box(0)] | provenance | | | main.rs:111:24:111:49 | ...::into_pin(...) [Pin, Box(0)] | main.rs:111:13:111:20 | mut pin3 [Pin, Box(0)] | provenance | | -| main.rs:111:38:111:48 | ...::new(...) [Box(0)] | main.rs:111:24:111:49 | ...::into_pin(...) [Pin, Box(0)] | provenance | MaD:8 | -| main.rs:111:47:111:47 | i | main.rs:111:38:111:48 | ...::new(...) [Box(0)] | provenance | MaD:9 | +| main.rs:111:38:111:48 | ...::new(...) [Box(0)] | main.rs:111:24:111:49 | ...::into_pin(...) [Pin, Box(0)] | provenance | MaD:7 | +| main.rs:111:47:111:47 | i | main.rs:111:38:111:48 | ...::new(...) [Box(0)] | provenance | MaD:8 | | main.rs:112:13:112:20 | mut pin4 [Pin, &ref] | main.rs:118:15:118:18 | pin4 [Pin, &ref] | provenance | | -| main.rs:112:24:112:27 | &mut pinned [&ref] | main.rs:112:24:112:27 | ...::new_unchecked(...) [Pin, &ref] | provenance | MaD:22 | +| main.rs:112:24:112:27 | &mut pinned [&ref] | main.rs:112:24:112:27 | ...::new_unchecked(...) [Pin, &ref] | provenance | MaD:21 | | main.rs:112:24:112:27 | ...::new_unchecked(...) [Pin, &ref] | main.rs:112:13:112:20 | mut pin4 [Pin, &ref] | provenance | | | main.rs:112:24:112:27 | mut pinned | main.rs:112:24:112:27 | pinned | provenance | | | main.rs:112:24:112:27 | pinned | main.rs:112:24:112:27 | &mut pinned [&ref] | provenance | | +| main.rs:114:15:114:18 | pin1 | main.rs:114:14:114:18 | * ... | provenance | MaD:15 | | main.rs:114:15:114:18 | pin1 | main.rs:114:14:114:18 | * ... | provenance | MaD:16 | -| main.rs:114:15:114:18 | pin1 | main.rs:114:14:114:18 | * ... | provenance | MaD:17 | -| main.rs:114:15:114:18 | pin1 [Pin, &ref] | main.rs:114:14:114:18 | * ... | provenance | MaD:17 | +| main.rs:114:15:114:18 | pin1 [Pin, &ref] | main.rs:114:14:114:18 | * ... | provenance | MaD:16 | | main.rs:115:15:115:35 | ...::into_inner(...) | main.rs:115:14:115:35 | * ... | provenance | MaD:1 | | main.rs:115:15:115:35 | ...::into_inner(...) [&ref] | main.rs:115:14:115:35 | * ... | provenance | MaD:1 | -| main.rs:115:31:115:34 | pin1 | main.rs:115:15:115:35 | ...::into_inner(...) | provenance | MaD:18 | -| main.rs:115:31:115:34 | pin1 [Pin, &ref] | main.rs:115:15:115:35 | ...::into_inner(...) [&ref] | provenance | MaD:18 | -| main.rs:116:15:116:18 | pin2 [Pin, Box(0)] | main.rs:116:14:116:18 | * ... | provenance | MaD:16 | -| main.rs:117:15:117:18 | pin3 [Pin, Box(0)] | main.rs:117:14:117:18 | * ... | provenance | MaD:16 | -| main.rs:118:15:118:18 | pin4 [Pin, &ref] | main.rs:118:14:118:18 | * ... | provenance | MaD:17 | +| main.rs:115:31:115:34 | pin1 | main.rs:115:15:115:35 | ...::into_inner(...) | provenance | MaD:17 | +| main.rs:115:31:115:34 | pin1 [Pin, &ref] | main.rs:115:15:115:35 | ...::into_inner(...) [&ref] | provenance | MaD:17 | +| main.rs:116:15:116:18 | pin2 [Pin, Box(0)] | main.rs:116:14:116:18 | * ... | provenance | MaD:15 | +| main.rs:117:15:117:18 | pin3 [Pin, Box(0)] | main.rs:117:14:117:18 | * ... | provenance | MaD:15 | +| main.rs:118:15:118:18 | pin4 [Pin, &ref] | main.rs:118:14:118:18 | * ... | provenance | MaD:16 | | main.rs:122:13:122:18 | mut ms [MyStruct] | main.rs:123:34:123:35 | ms [MyStruct] | provenance | | | main.rs:122:13:122:18 | mut ms [MyStruct] | main.rs:127:14:127:15 | ms [MyStruct] | provenance | | | main.rs:122:22:122:49 | MyStruct {...} [MyStruct] | main.rs:122:13:122:18 | mut ms [MyStruct] | provenance | | | main.rs:122:38:122:47 | source(...) | main.rs:122:22:122:49 | MyStruct {...} [MyStruct] | provenance | | | main.rs:123:13:123:20 | mut pin1 [Pin, &ref, MyStruct] | main.rs:129:30:129:33 | pin1 [Pin, &ref, MyStruct] | provenance | | | main.rs:123:24:123:36 | ...::new(...) [Pin, &ref, MyStruct] | main.rs:123:13:123:20 | mut pin1 [Pin, &ref, MyStruct] | provenance | | -| main.rs:123:33:123:35 | &ms [&ref, MyStruct] | main.rs:123:24:123:36 | ...::new(...) [Pin, &ref, MyStruct] | provenance | MaD:21 | +| main.rs:123:33:123:35 | &ms [&ref, MyStruct] | main.rs:123:24:123:36 | ...::new(...) [Pin, &ref, MyStruct] | provenance | MaD:20 | | main.rs:123:34:123:35 | ms [MyStruct] | main.rs:123:33:123:35 | &ms [&ref, MyStruct] | provenance | | | main.rs:127:14:127:15 | ms [MyStruct] | main.rs:127:14:127:19 | ms.val | provenance | | | main.rs:129:14:129:34 | ...::into_inner(...) [&ref, MyStruct] | main.rs:129:14:129:38 | ... .val | provenance | | -| main.rs:129:30:129:33 | pin1 [Pin, &ref, MyStruct] | main.rs:129:14:129:34 | ...::into_inner(...) [&ref, MyStruct] | provenance | MaD:18 | +| main.rs:129:30:129:33 | pin1 [Pin, &ref, MyStruct] | main.rs:129:14:129:34 | ...::into_inner(...) [&ref, MyStruct] | provenance | MaD:17 | | main.rs:136:13:136:18 | mut ms [MyStruct] | main.rs:137:44:137:45 | ms [MyStruct] | provenance | | | main.rs:136:22:136:49 | MyStruct {...} [MyStruct] | main.rs:136:13:136:18 | mut ms [MyStruct] | provenance | | | main.rs:136:38:136:47 | source(...) | main.rs:136:22:136:49 | MyStruct {...} [MyStruct] | provenance | | | main.rs:137:13:137:20 | mut pin5 [Pin, &ref, MyStruct] | main.rs:139:40:139:43 | pin5 [Pin, &ref, MyStruct] | provenance | | | main.rs:137:24:137:46 | ...::new_unchecked(...) [Pin, &ref, MyStruct] | main.rs:137:13:137:20 | mut pin5 [Pin, &ref, MyStruct] | provenance | | -| main.rs:137:43:137:45 | &ms [&ref, MyStruct] | main.rs:137:24:137:46 | ...::new_unchecked(...) [Pin, &ref, MyStruct] | provenance | MaD:22 | +| main.rs:137:43:137:45 | &ms [&ref, MyStruct] | main.rs:137:24:137:46 | ...::new_unchecked(...) [Pin, &ref, MyStruct] | provenance | MaD:21 | | main.rs:137:44:137:45 | ms [MyStruct] | main.rs:137:43:137:45 | &ms [&ref, MyStruct] | provenance | | | main.rs:139:14:139:44 | ...::into_inner_unchecked(...) [&ref, MyStruct] | main.rs:139:14:139:48 | ... .val | provenance | | -| main.rs:139:40:139:43 | pin5 [Pin, &ref, MyStruct] | main.rs:139:14:139:44 | ...::into_inner_unchecked(...) [&ref, MyStruct] | provenance | MaD:19 | +| main.rs:139:40:139:43 | pin5 [Pin, &ref, MyStruct] | main.rs:139:14:139:44 | ...::into_inner_unchecked(...) [&ref, MyStruct] | provenance | MaD:18 | | main.rs:153:9:153:9 | a | main.rs:155:13:155:13 | a | provenance | | | main.rs:153:13:153:22 | source(...) | main.rs:153:9:153:9 | a | provenance | | | main.rs:154:9:154:9 | b | main.rs:155:19:155:19 | b | provenance | | diff --git a/rust/ql/test/library-tests/dataflow/sources/database/InlineFlow.expected b/rust/ql/test/library-tests/dataflow/sources/database/InlineFlow.expected index f01253fb4939..5b3e890545b3 100644 --- a/rust/ql/test/library-tests/dataflow/sources/database/InlineFlow.expected +++ b/rust/ql/test/library-tests/dataflow/sources/database/InlineFlow.expected @@ -9,8 +9,8 @@ models | 8 | Source: ::get_opt; ReturnValue.Field[core::option::Option::Some(0)].Field[core::result::Result::Ok(0)]; database | | 9 | Source: ::take; ReturnValue.Field[core::option::Option::Some(0)]; database | | 10 | Source: ::take_opt; ReturnValue.Field[core::option::Option::Some(0)].Field[core::result::Result::Ok(0)]; database | -| 11 | Summary: <_ as core::ops::arith::Add>::add; Argument[0].Reference; ReturnValue; taint | -| 12 | Summary: <_ as core::ops::arith::Add>::add; Argument[0]; ReturnValue; taint | +| 11 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 12 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0]; ReturnValue; taint | | 13 | Summary: <_ as mysql::conn::queryable::Queryable>::query_fold; Argument[2].ReturnValue; ReturnValue.Field[core::result::Result::Ok(0)]; value | | 14 | Summary: <_ as mysql_async::queryable::Queryable>::query_fold; Argument[2].ReturnValue; ReturnValue.Future.Field[core::result::Result::Ok(0)]; value | | 15 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | @@ -54,15 +54,20 @@ edges | test.rs:57:14:57:39 | ...: ... | test.rs:59:22:59:29 | values.1 | provenance | | | test.rs:57:14:57:39 | ...: ... | test.rs:60:22:60:29 | values.2 | provenance | | | test.rs:64:13:64:17 | total | test.rs:68:14:68:18 | total | provenance | | +| test.rs:64:13:64:17 | total [Wrapping] | test.rs:68:14:68:18 | total | provenance | | +| test.rs:64:21:67:10 | conn.query_fold(...) [Ok, Wrapping] | test.rs:64:21:67:11 | TryExpr [Wrapping] | provenance | | | test.rs:64:21:67:10 | conn.query_fold(...) [Ok] | test.rs:64:21:67:11 | TryExpr | provenance | | | test.rs:64:21:67:11 | TryExpr | test.rs:64:13:64:17 | total | provenance | | +| test.rs:64:21:67:11 | TryExpr [Wrapping] | test.rs:64:13:64:17 | total [Wrapping] | provenance | | | test.rs:64:26:64:35 | query_fold | test.rs:64:76:64:83 | ...: i64 | provenance | Src:MaD:2 | | test.rs:64:76:64:83 | ...: i64 | test.rs:65:18:65:20 | row | provenance | | | test.rs:64:76:64:83 | ...: i64 | test.rs:66:19:66:21 | row | provenance | | | test.rs:64:86:67:9 | { ... } | test.rs:64:21:67:10 | conn.query_fold(...) [Ok] | provenance | MaD:13 | +| test.rs:64:86:67:9 | { ... } [Wrapping] | test.rs:64:21:67:10 | conn.query_fold(...) [Ok, Wrapping] | provenance | MaD:13 | | test.rs:66:13:66:21 | ... + ... | test.rs:64:86:67:9 | { ... } | provenance | | -| test.rs:66:19:66:21 | row | test.rs:66:13:66:21 | ... + ... | provenance | MaD:11 | +| test.rs:66:13:66:21 | ... + ... [Wrapping] | test.rs:64:86:67:9 | { ... } [Wrapping] | provenance | | | test.rs:66:19:66:21 | row | test.rs:66:13:66:21 | ... + ... | provenance | MaD:12 | +| test.rs:66:19:66:21 | row | test.rs:66:13:66:21 | ... + ... [Wrapping] | provenance | MaD:11 | | test.rs:70:22:70:31 | query_fold | test.rs:70:83:70:105 | ...: ... | provenance | Src:MaD:2 | | test.rs:70:83:70:105 | ...: ... | test.rs:71:17:71:18 | id | provenance | | | test.rs:70:83:70:105 | ...: ... | test.rs:72:17:72:20 | name | provenance | | @@ -95,16 +100,22 @@ edges | test.rs:144:14:144:39 | ...: ... | test.rs:146:22:146:29 | values.1 | provenance | | | test.rs:144:14:144:39 | ...: ... | test.rs:147:22:147:29 | values.2 | provenance | | | test.rs:151:13:151:17 | total | test.rs:155:14:155:18 | total | provenance | | +| test.rs:151:13:151:17 | total [Wrapping] | test.rs:155:14:155:18 | total | provenance | | +| test.rs:151:21:154:10 | conn.query_fold(...) [future, Ok, Wrapping] | test.rs:151:21:154:16 | await ... [Ok, Wrapping] | provenance | | | test.rs:151:21:154:10 | conn.query_fold(...) [future, Ok] | test.rs:151:21:154:16 | await ... [Ok] | provenance | | +| test.rs:151:21:154:16 | await ... [Ok, Wrapping] | test.rs:151:21:154:17 | TryExpr [Wrapping] | provenance | | | test.rs:151:21:154:16 | await ... [Ok] | test.rs:151:21:154:17 | TryExpr | provenance | | | test.rs:151:21:154:17 | TryExpr | test.rs:151:13:151:17 | total | provenance | | +| test.rs:151:21:154:17 | TryExpr [Wrapping] | test.rs:151:13:151:17 | total [Wrapping] | provenance | | | test.rs:151:26:151:35 | query_fold | test.rs:151:76:151:83 | ...: i64 | provenance | Src:MaD:4 | | test.rs:151:76:151:83 | ...: i64 | test.rs:152:18:152:20 | row | provenance | | | test.rs:151:76:151:83 | ...: i64 | test.rs:153:19:153:21 | row | provenance | | | test.rs:151:86:154:9 | { ... } | test.rs:151:21:154:10 | conn.query_fold(...) [future, Ok] | provenance | MaD:14 | +| test.rs:151:86:154:9 | { ... } [Wrapping] | test.rs:151:21:154:10 | conn.query_fold(...) [future, Ok, Wrapping] | provenance | MaD:14 | | test.rs:153:13:153:21 | ... + ... | test.rs:151:86:154:9 | { ... } | provenance | | -| test.rs:153:19:153:21 | row | test.rs:153:13:153:21 | ... + ... | provenance | MaD:11 | +| test.rs:153:13:153:21 | ... + ... [Wrapping] | test.rs:151:86:154:9 | { ... } [Wrapping] | provenance | | | test.rs:153:19:153:21 | row | test.rs:153:13:153:21 | ... + ... | provenance | MaD:12 | +| test.rs:153:19:153:21 | row | test.rs:153:13:153:21 | ... + ... [Wrapping] | provenance | MaD:11 | | test.rs:157:22:157:31 | query_fold | test.rs:157:83:157:105 | ...: ... | provenance | Src:MaD:4 | | test.rs:157:83:157:105 | ...: ... | test.rs:158:17:158:18 | id | provenance | | | test.rs:157:83:157:105 | ...: ... | test.rs:159:17:159:20 | name | provenance | | @@ -160,13 +171,18 @@ nodes | test.rs:59:22:59:29 | values.1 | semmle.label | values.1 | | test.rs:60:22:60:29 | values.2 | semmle.label | values.2 | | test.rs:64:13:64:17 | total | semmle.label | total | +| test.rs:64:13:64:17 | total [Wrapping] | semmle.label | total [Wrapping] | +| test.rs:64:21:67:10 | conn.query_fold(...) [Ok, Wrapping] | semmle.label | conn.query_fold(...) [Ok, Wrapping] | | test.rs:64:21:67:10 | conn.query_fold(...) [Ok] | semmle.label | conn.query_fold(...) [Ok] | | test.rs:64:21:67:11 | TryExpr | semmle.label | TryExpr | +| test.rs:64:21:67:11 | TryExpr [Wrapping] | semmle.label | TryExpr [Wrapping] | | test.rs:64:26:64:35 | query_fold | semmle.label | query_fold | | test.rs:64:76:64:83 | ...: i64 | semmle.label | ...: i64 | | test.rs:64:86:67:9 | { ... } | semmle.label | { ... } | +| test.rs:64:86:67:9 | { ... } [Wrapping] | semmle.label | { ... } [Wrapping] | | test.rs:65:18:65:20 | row | semmle.label | row | | test.rs:66:13:66:21 | ... + ... | semmle.label | ... + ... | +| test.rs:66:13:66:21 | ... + ... [Wrapping] | semmle.label | ... + ... [Wrapping] | | test.rs:66:19:66:21 | row | semmle.label | row | | test.rs:68:14:68:18 | total | semmle.label | total | | test.rs:70:22:70:31 | query_fold | semmle.label | query_fold | @@ -208,14 +224,20 @@ nodes | test.rs:146:22:146:29 | values.1 | semmle.label | values.1 | | test.rs:147:22:147:29 | values.2 | semmle.label | values.2 | | test.rs:151:13:151:17 | total | semmle.label | total | +| test.rs:151:13:151:17 | total [Wrapping] | semmle.label | total [Wrapping] | +| test.rs:151:21:154:10 | conn.query_fold(...) [future, Ok, Wrapping] | semmle.label | conn.query_fold(...) [future, Ok, Wrapping] | | test.rs:151:21:154:10 | conn.query_fold(...) [future, Ok] | semmle.label | conn.query_fold(...) [future, Ok] | +| test.rs:151:21:154:16 | await ... [Ok, Wrapping] | semmle.label | await ... [Ok, Wrapping] | | test.rs:151:21:154:16 | await ... [Ok] | semmle.label | await ... [Ok] | | test.rs:151:21:154:17 | TryExpr | semmle.label | TryExpr | +| test.rs:151:21:154:17 | TryExpr [Wrapping] | semmle.label | TryExpr [Wrapping] | | test.rs:151:26:151:35 | query_fold | semmle.label | query_fold | | test.rs:151:76:151:83 | ...: i64 | semmle.label | ...: i64 | | test.rs:151:86:154:9 | { ... } | semmle.label | { ... } | +| test.rs:151:86:154:9 | { ... } [Wrapping] | semmle.label | { ... } [Wrapping] | | test.rs:152:18:152:20 | row | semmle.label | row | | test.rs:153:13:153:21 | ... + ... | semmle.label | ... + ... | +| test.rs:153:13:153:21 | ... + ... [Wrapping] | semmle.label | ... + ... [Wrapping] | | test.rs:153:19:153:21 | row | semmle.label | row | | test.rs:155:14:155:18 | total | semmle.label | total | | test.rs:157:22:157:31 | query_fold | semmle.label | query_fold | From b8581e89bf811f6c9840908315ea8c616746d5f6 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 22 Jan 2026 13:22:43 +0000 Subject: [PATCH 116/433] Rust: More affected tests. --- .../dataflow/global/inline-flow.expected | 2 +- .../UncontrolledAllocationSize.expected | 169 +++++++++--------- .../HardcodedCryptographicValue.expected | 63 +++---- 3 files changed, 111 insertions(+), 123 deletions(-) diff --git a/rust/ql/test/library-tests/dataflow/global/inline-flow.expected b/rust/ql/test/library-tests/dataflow/global/inline-flow.expected index f4db29396539..5caa5c1c3ed9 100644 --- a/rust/ql/test/library-tests/dataflow/global/inline-flow.expected +++ b/rust/ql/test/library-tests/dataflow/global/inline-flow.expected @@ -1,6 +1,6 @@ models | 1 | Summary: <& as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue; value | -| 2 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self]; ReturnValue; taint | +| 2 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self,0]; ReturnValue; taint | | 3 | Summary: futures_executor::local_pool::block_on; Argument[0]; ReturnValue; value | edges | main.rs:12:28:14:1 | { ... } | main.rs:17:13:17:23 | get_data(...) | provenance | | diff --git a/rust/ql/test/query-tests/security/CWE-770/UncontrolledAllocationSize.expected b/rust/ql/test/query-tests/security/CWE-770/UncontrolledAllocationSize.expected index a38f1b82f36f..907ac816ea97 100644 --- a/rust/ql/test/query-tests/security/CWE-770/UncontrolledAllocationSize.expected +++ b/rust/ql/test/query-tests/security/CWE-770/UncontrolledAllocationSize.expected @@ -59,44 +59,43 @@ edges | main.rs:18:41:18:41 | v | main.rs:32:60:32:60 | v | provenance | | | main.rs:18:41:18:41 | v | main.rs:35:49:35:49 | v | provenance | | | main.rs:20:9:20:10 | l2 | main.rs:21:31:21:32 | l2 | provenance | | -| main.rs:20:14:20:54 | ...::from_size_align(...) [Ok] | main.rs:20:14:20:63 | ... .unwrap() | provenance | MaD:44 | +| main.rs:20:14:20:54 | ...::from_size_align(...) [Ok] | main.rs:20:14:20:63 | ... .unwrap() | provenance | MaD:42 | | main.rs:20:14:20:63 | ... .unwrap() | main.rs:20:9:20:10 | l2 | provenance | | -| main.rs:20:50:20:50 | v | main.rs:20:14:20:54 | ...::from_size_align(...) [Ok] | provenance | MaD:36 | +| main.rs:20:50:20:50 | v | main.rs:20:14:20:54 | ...::from_size_align(...) [Ok] | provenance | MaD:34 | | main.rs:21:31:21:32 | l2 | main.rs:21:13:21:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:21:31:21:32 | l2 | main.rs:22:31:22:32 | l2 | provenance | | | main.rs:21:31:21:32 | l2 | main.rs:23:31:23:32 | l2 | provenance | | | main.rs:21:31:21:32 | l2 | main.rs:24:38:24:39 | l2 | provenance | | -| main.rs:22:31:22:32 | l2 | main.rs:22:31:22:44 | l2.align_to(...) [Ok] | provenance | MaD:30 | -| main.rs:22:31:22:44 | l2.align_to(...) [Ok] | main.rs:22:31:22:53 | ... .unwrap() | provenance | MaD:44 | +| main.rs:22:31:22:32 | l2 | main.rs:22:31:22:44 | l2.align_to(...) [Ok] | provenance | MaD:28 | +| main.rs:22:31:22:44 | l2.align_to(...) [Ok] | main.rs:22:31:22:53 | ... .unwrap() | provenance | MaD:42 | | main.rs:22:31:22:53 | ... .unwrap() | main.rs:22:13:22:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | -| main.rs:23:31:23:32 | l2 | main.rs:23:31:23:44 | l2.align_to(...) [Ok] | provenance | MaD:30 | -| main.rs:23:31:23:44 | l2.align_to(...) [Ok] | main.rs:23:31:23:53 | ... .unwrap() | provenance | MaD:44 | -| main.rs:23:31:23:53 | ... .unwrap() | main.rs:23:31:23:68 | ... .pad_to_align() | provenance | MaD:38 | +| main.rs:23:31:23:32 | l2 | main.rs:23:31:23:44 | l2.align_to(...) [Ok] | provenance | MaD:28 | +| main.rs:23:31:23:44 | l2.align_to(...) [Ok] | main.rs:23:31:23:53 | ... .unwrap() | provenance | MaD:42 | +| main.rs:23:31:23:53 | ... .unwrap() | main.rs:23:31:23:68 | ... .pad_to_align() | provenance | MaD:36 | | main.rs:23:31:23:68 | ... .pad_to_align() | main.rs:23:13:23:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:24:38:24:39 | l2 | main.rs:24:13:24:36 | ...::alloc_zeroed | provenance | MaD:16 Sink:MaD:16 | | main.rs:29:9:29:10 | l4 | main.rs:30:31:30:32 | l4 | provenance | | | main.rs:29:14:29:64 | ...::from_size_align_unchecked(...) | main.rs:29:9:29:10 | l4 | provenance | | -| main.rs:29:60:29:60 | v | main.rs:29:14:29:64 | ...::from_size_align_unchecked(...) | provenance | MaD:37 | +| main.rs:29:60:29:60 | v | main.rs:29:14:29:64 | ...::from_size_align_unchecked(...) | provenance | MaD:35 | | main.rs:30:31:30:32 | l4 | main.rs:30:13:30:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:32:9:32:10 | l5 | main.rs:33:31:33:32 | l5 | provenance | | | main.rs:32:14:32:118 | ...::from_size_align_unchecked(...) | main.rs:32:9:32:10 | l5 | provenance | | -| main.rs:32:60:32:60 | v | main.rs:32:60:32:89 | ... * ... | provenance | MaD:27 | -| main.rs:32:60:32:89 | ... * ... | main.rs:32:14:32:118 | ...::from_size_align_unchecked(...) | provenance | MaD:37 | +| main.rs:32:60:32:60 | v | main.rs:32:60:32:89 | ... * ... | provenance | MaD:25 | +| main.rs:32:60:32:89 | ... * ... | main.rs:32:14:32:118 | ...::from_size_align_unchecked(...) | provenance | MaD:35 | | main.rs:33:31:33:32 | l5 | main.rs:33:13:33:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:35:9:35:10 | s6 | main.rs:36:60:36:61 | s6 | provenance | | | main.rs:35:14:35:54 | ... + ... | main.rs:35:9:35:10 | s6 | provenance | | | main.rs:35:15:35:49 | ... * ... | main.rs:35:14:35:54 | ... + ... | provenance | MaD:24 | -| main.rs:35:49:35:49 | v | main.rs:35:15:35:49 | ... * ... | provenance | MaD:26 | | main.rs:35:49:35:49 | v | main.rs:35:15:35:49 | ... * ... | provenance | MaD:25 | | main.rs:36:9:36:10 | l6 | main.rs:37:31:37:32 | l6 | provenance | | | main.rs:36:14:36:65 | ...::from_size_align_unchecked(...) | main.rs:36:9:36:10 | l6 | provenance | | -| main.rs:36:60:36:61 | s6 | main.rs:36:14:36:65 | ...::from_size_align_unchecked(...) | provenance | MaD:37 | +| main.rs:36:60:36:61 | s6 | main.rs:36:14:36:65 | ...::from_size_align_unchecked(...) | provenance | MaD:35 | | main.rs:37:31:37:32 | l6 | main.rs:37:13:37:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:37:31:37:32 | l6 | main.rs:39:60:39:61 | l6 | provenance | | | main.rs:39:9:39:10 | l7 | main.rs:40:31:40:32 | l7 | provenance | | | main.rs:39:14:39:72 | ...::from_size_align_unchecked(...) | main.rs:39:9:39:10 | l7 | provenance | | -| main.rs:39:60:39:61 | l6 | main.rs:39:60:39:68 | l6.size() | provenance | MaD:41 | -| main.rs:39:60:39:68 | l6.size() | main.rs:39:14:39:72 | ...::from_size_align_unchecked(...) | provenance | MaD:37 | +| main.rs:39:60:39:61 | l6 | main.rs:39:60:39:68 | l6.size() | provenance | MaD:39 | +| main.rs:39:60:39:68 | l6.size() | main.rs:39:14:39:72 | ...::from_size_align_unchecked(...) | provenance | MaD:35 | | main.rs:40:31:40:32 | l7 | main.rs:40:13:40:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:43:44:43:51 | ...: usize | main.rs:50:41:50:41 | v | provenance | | | main.rs:43:44:43:51 | ...: usize | main.rs:51:41:51:41 | v | provenance | | @@ -104,27 +103,27 @@ edges | main.rs:43:44:43:51 | ...: usize | main.rs:54:48:54:48 | v | provenance | | | main.rs:43:44:43:51 | ...: usize | main.rs:58:34:58:34 | v | provenance | | | main.rs:43:44:43:51 | ...: usize | main.rs:67:46:67:46 | v | provenance | | -| main.rs:50:31:50:42 | l2.repeat(...) [Ok, tuple.0] | main.rs:50:31:50:51 | ... .unwrap() [tuple.0] | provenance | MaD:44 | +| main.rs:50:31:50:42 | l2.repeat(...) [Ok, tuple.0] | main.rs:50:31:50:51 | ... .unwrap() [tuple.0] | provenance | MaD:42 | | main.rs:50:31:50:51 | ... .unwrap() [tuple.0] | main.rs:50:31:50:53 | ... .0 | provenance | | | main.rs:50:31:50:53 | ... .0 | main.rs:50:13:50:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | -| main.rs:50:41:50:41 | v | main.rs:50:31:50:42 | l2.repeat(...) [Ok, tuple.0] | provenance | MaD:39 | -| main.rs:51:31:51:46 | l2.repeat(...) [Ok, tuple.0] | main.rs:51:31:51:55 | ... .unwrap() [tuple.0] | provenance | MaD:44 | +| main.rs:50:41:50:41 | v | main.rs:50:31:50:42 | l2.repeat(...) [Ok, tuple.0] | provenance | MaD:37 | +| main.rs:51:31:51:46 | l2.repeat(...) [Ok, tuple.0] | main.rs:51:31:51:55 | ... .unwrap() [tuple.0] | provenance | MaD:42 | | main.rs:51:31:51:55 | ... .unwrap() [tuple.0] | main.rs:51:31:51:57 | ... .0 | provenance | | | main.rs:51:31:51:57 | ... .0 | main.rs:51:13:51:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:51:41:51:41 | v | main.rs:51:41:51:45 | ... + ... | provenance | MaD:24 | -| main.rs:51:41:51:45 | ... + ... | main.rs:51:31:51:46 | l2.repeat(...) [Ok, tuple.0] | provenance | MaD:39 | -| main.rs:53:31:53:49 | l2.repeat_packed(...) [Ok] | main.rs:53:31:53:58 | ... .unwrap() | provenance | MaD:44 | +| main.rs:51:41:51:45 | ... + ... | main.rs:51:31:51:46 | l2.repeat(...) [Ok, tuple.0] | provenance | MaD:37 | +| main.rs:53:31:53:49 | l2.repeat_packed(...) [Ok] | main.rs:53:31:53:58 | ... .unwrap() | provenance | MaD:42 | | main.rs:53:31:53:58 | ... .unwrap() | main.rs:53:13:53:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | -| main.rs:53:48:53:48 | v | main.rs:53:31:53:49 | l2.repeat_packed(...) [Ok] | provenance | MaD:40 | -| main.rs:54:31:54:54 | l2.repeat_packed(...) [Ok] | main.rs:54:31:54:63 | ... .unwrap() | provenance | MaD:44 | +| main.rs:53:48:53:48 | v | main.rs:53:31:53:49 | l2.repeat_packed(...) [Ok] | provenance | MaD:38 | +| main.rs:54:31:54:54 | l2.repeat_packed(...) [Ok] | main.rs:54:31:54:63 | ... .unwrap() | provenance | MaD:42 | | main.rs:54:31:54:63 | ... .unwrap() | main.rs:54:13:54:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | -| main.rs:54:48:54:48 | v | main.rs:54:48:54:53 | ... * ... | provenance | MaD:27 | -| main.rs:54:48:54:53 | ... * ... | main.rs:54:31:54:54 | l2.repeat_packed(...) [Ok] | provenance | MaD:40 | +| main.rs:54:48:54:48 | v | main.rs:54:48:54:53 | ... * ... | provenance | MaD:25 | +| main.rs:54:48:54:53 | ... * ... | main.rs:54:31:54:54 | l2.repeat_packed(...) [Ok] | provenance | MaD:38 | | main.rs:58:9:58:20 | TuplePat [tuple.0] | main.rs:58:10:58:11 | k1 | provenance | | | main.rs:58:10:58:11 | k1 | main.rs:59:31:59:32 | k1 | provenance | | -| main.rs:58:24:58:35 | l3.repeat(...) [Ok, tuple.0] | main.rs:58:24:58:66 | ... .expect(...) [tuple.0] | provenance | MaD:43 | +| main.rs:58:24:58:35 | l3.repeat(...) [Ok, tuple.0] | main.rs:58:24:58:66 | ... .expect(...) [tuple.0] | provenance | MaD:41 | | main.rs:58:24:58:66 | ... .expect(...) [tuple.0] | main.rs:58:9:58:20 | TuplePat [tuple.0] | provenance | | -| main.rs:58:34:58:34 | v | main.rs:58:24:58:35 | l3.repeat(...) [Ok, tuple.0] | provenance | MaD:39 | +| main.rs:58:34:58:34 | v | main.rs:58:24:58:35 | l3.repeat(...) [Ok, tuple.0] | provenance | MaD:37 | | main.rs:59:31:59:32 | k1 | main.rs:59:13:59:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:59:31:59:32 | k1 | main.rs:60:34:60:35 | k1 | provenance | | | main.rs:59:31:59:32 | k1 | main.rs:62:24:62:25 | k1 | provenance | | @@ -132,32 +131,32 @@ edges | main.rs:59:31:59:32 | k1 | main.rs:65:31:65:32 | k1 | provenance | | | main.rs:60:9:60:20 | TuplePat [tuple.0] | main.rs:60:10:60:11 | k2 | provenance | | | main.rs:60:10:60:11 | k2 | main.rs:61:31:61:32 | k2 | provenance | | -| main.rs:60:24:60:36 | l3.extend(...) [Ok, tuple.0] | main.rs:60:24:60:45 | ... .unwrap() [tuple.0] | provenance | MaD:44 | +| main.rs:60:24:60:36 | l3.extend(...) [Ok, tuple.0] | main.rs:60:24:60:45 | ... .unwrap() [tuple.0] | provenance | MaD:42 | | main.rs:60:24:60:45 | ... .unwrap() [tuple.0] | main.rs:60:9:60:20 | TuplePat [tuple.0] | provenance | | -| main.rs:60:34:60:35 | k1 | main.rs:60:24:60:36 | l3.extend(...) [Ok, tuple.0] | provenance | MaD:32 | +| main.rs:60:34:60:35 | k1 | main.rs:60:24:60:36 | l3.extend(...) [Ok, tuple.0] | provenance | MaD:30 | | main.rs:61:31:61:32 | k2 | main.rs:61:13:61:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:62:9:62:20 | TuplePat [tuple.0] | main.rs:62:10:62:11 | k3 | provenance | | | main.rs:62:10:62:11 | k3 | main.rs:63:31:63:32 | k3 | provenance | | -| main.rs:62:24:62:25 | k1 | main.rs:62:24:62:36 | k1.extend(...) [Ok, tuple.0] | provenance | MaD:33 | -| main.rs:62:24:62:36 | k1.extend(...) [Ok, tuple.0] | main.rs:62:24:62:45 | ... .unwrap() [tuple.0] | provenance | MaD:44 | +| main.rs:62:24:62:25 | k1 | main.rs:62:24:62:36 | k1.extend(...) [Ok, tuple.0] | provenance | MaD:31 | +| main.rs:62:24:62:36 | k1.extend(...) [Ok, tuple.0] | main.rs:62:24:62:45 | ... .unwrap() [tuple.0] | provenance | MaD:42 | | main.rs:62:24:62:45 | ... .unwrap() [tuple.0] | main.rs:62:9:62:20 | TuplePat [tuple.0] | provenance | | | main.rs:63:31:63:32 | k3 | main.rs:63:13:63:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | -| main.rs:64:31:64:50 | l3.extend_packed(...) [Ok] | main.rs:64:31:64:59 | ... .unwrap() | provenance | MaD:44 | +| main.rs:64:31:64:50 | l3.extend_packed(...) [Ok] | main.rs:64:31:64:59 | ... .unwrap() | provenance | MaD:42 | | main.rs:64:31:64:59 | ... .unwrap() | main.rs:64:13:64:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | -| main.rs:64:48:64:49 | k1 | main.rs:64:31:64:50 | l3.extend_packed(...) [Ok] | provenance | MaD:34 | -| main.rs:65:31:65:32 | k1 | main.rs:65:31:65:50 | k1.extend_packed(...) [Ok] | provenance | MaD:35 | -| main.rs:65:31:65:50 | k1.extend_packed(...) [Ok] | main.rs:65:31:65:59 | ... .unwrap() | provenance | MaD:44 | +| main.rs:64:48:64:49 | k1 | main.rs:64:31:64:50 | l3.extend_packed(...) [Ok] | provenance | MaD:32 | +| main.rs:65:31:65:32 | k1 | main.rs:65:31:65:50 | k1.extend_packed(...) [Ok] | provenance | MaD:33 | +| main.rs:65:31:65:50 | k1.extend_packed(...) [Ok] | main.rs:65:31:65:59 | ... .unwrap() | provenance | MaD:42 | | main.rs:65:31:65:59 | ... .unwrap() | main.rs:65:13:65:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:67:9:67:10 | l4 | main.rs:68:31:68:32 | l4 | provenance | | -| main.rs:67:14:67:47 | ...::array::<...>(...) [Ok] | main.rs:67:14:67:56 | ... .unwrap() | provenance | MaD:44 | +| main.rs:67:14:67:47 | ...::array::<...>(...) [Ok] | main.rs:67:14:67:56 | ... .unwrap() | provenance | MaD:42 | | main.rs:67:14:67:56 | ... .unwrap() | main.rs:67:9:67:10 | l4 | provenance | | -| main.rs:67:46:67:46 | v | main.rs:67:14:67:47 | ...::array::<...>(...) [Ok] | provenance | MaD:31 | +| main.rs:67:46:67:46 | v | main.rs:67:14:67:47 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | | main.rs:68:31:68:32 | l4 | main.rs:68:13:68:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:86:35:86:42 | ...: usize | main.rs:87:54:87:54 | v | provenance | | | main.rs:87:9:87:14 | layout | main.rs:88:31:88:36 | layout | provenance | | -| main.rs:87:18:87:58 | ...::from_size_align(...) [Ok] | main.rs:87:18:87:67 | ... .unwrap() | provenance | MaD:44 | +| main.rs:87:18:87:58 | ...::from_size_align(...) [Ok] | main.rs:87:18:87:67 | ... .unwrap() | provenance | MaD:42 | | main.rs:87:18:87:67 | ... .unwrap() | main.rs:87:9:87:14 | layout | provenance | | -| main.rs:87:54:87:54 | v | main.rs:87:18:87:58 | ...::from_size_align(...) [Ok] | provenance | MaD:36 | +| main.rs:87:54:87:54 | v | main.rs:87:18:87:58 | ...::from_size_align(...) [Ok] | provenance | MaD:34 | | main.rs:88:31:88:36 | layout | main.rs:88:13:88:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:91:38:91:45 | ...: usize | main.rs:92:47:92:47 | v | provenance | | | main.rs:91:38:91:45 | ...: usize | main.rs:101:51:101:51 | v | provenance | | @@ -168,16 +167,16 @@ edges | main.rs:91:38:91:45 | ...: usize | main.rs:161:55:161:55 | v | provenance | | | main.rs:92:9:92:10 | l1 | main.rs:96:35:96:36 | l1 | provenance | | | main.rs:92:9:92:10 | l1 | main.rs:102:35:102:36 | l1 | provenance | | -| main.rs:92:14:92:48 | ...::array::<...>(...) [Ok] | main.rs:92:14:92:57 | ... .unwrap() | provenance | MaD:44 | +| main.rs:92:14:92:48 | ...::array::<...>(...) [Ok] | main.rs:92:14:92:57 | ... .unwrap() | provenance | MaD:42 | | main.rs:92:14:92:57 | ... .unwrap() | main.rs:92:9:92:10 | l1 | provenance | | -| main.rs:92:47:92:47 | v | main.rs:92:14:92:48 | ...::array::<...>(...) [Ok] | provenance | MaD:31 | +| main.rs:92:47:92:47 | v | main.rs:92:14:92:48 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | | main.rs:96:35:96:36 | l1 | main.rs:96:17:96:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:96:35:96:36 | l1 | main.rs:109:35:109:36 | l1 | provenance | | | main.rs:96:35:96:36 | l1 | main.rs:111:35:111:36 | l1 | provenance | | | main.rs:101:13:101:14 | l3 | main.rs:103:35:103:36 | l3 | provenance | | -| main.rs:101:18:101:52 | ...::array::<...>(...) [Ok] | main.rs:101:18:101:61 | ... .unwrap() | provenance | MaD:44 | +| main.rs:101:18:101:52 | ...::array::<...>(...) [Ok] | main.rs:101:18:101:61 | ... .unwrap() | provenance | MaD:42 | | main.rs:101:18:101:61 | ... .unwrap() | main.rs:101:13:101:14 | l3 | provenance | | -| main.rs:101:51:101:51 | v | main.rs:101:18:101:52 | ...::array::<...>(...) [Ok] | provenance | MaD:31 | +| main.rs:101:51:101:51 | v | main.rs:101:18:101:52 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | | main.rs:102:35:102:36 | l1 | main.rs:102:17:102:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:102:35:102:36 | l1 | main.rs:109:35:109:36 | l1 | provenance | | | main.rs:102:35:102:36 | l1 | main.rs:111:35:111:36 | l1 | provenance | | @@ -188,28 +187,28 @@ edges | main.rs:111:35:111:36 | l1 | main.rs:111:17:111:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:111:35:111:36 | l1 | main.rs:146:35:146:36 | l1 | provenance | | | main.rs:145:13:145:14 | l9 | main.rs:148:35:148:36 | l9 | provenance | | -| main.rs:145:18:145:52 | ...::array::<...>(...) [Ok] | main.rs:145:18:145:61 | ... .unwrap() | provenance | MaD:44 | +| main.rs:145:18:145:52 | ...::array::<...>(...) [Ok] | main.rs:145:18:145:61 | ... .unwrap() | provenance | MaD:42 | | main.rs:145:18:145:61 | ... .unwrap() | main.rs:145:13:145:14 | l9 | provenance | | -| main.rs:145:51:145:51 | v | main.rs:145:18:145:52 | ...::array::<...>(...) [Ok] | provenance | MaD:31 | +| main.rs:145:51:145:51 | v | main.rs:145:18:145:52 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | | main.rs:146:35:146:36 | l1 | main.rs:146:17:146:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:146:35:146:36 | l1 | main.rs:177:31:177:32 | l1 | provenance | | | main.rs:148:35:148:36 | l9 | main.rs:148:17:148:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:151:9:151:11 | l10 | main.rs:152:31:152:33 | l10 | provenance | | -| main.rs:151:15:151:69 | ...::array::<...>(...) [Ok] | main.rs:151:15:151:78 | ... .unwrap() | provenance | MaD:44 | +| main.rs:151:15:151:69 | ...::array::<...>(...) [Ok] | main.rs:151:15:151:78 | ... .unwrap() | provenance | MaD:42 | | main.rs:151:15:151:78 | ... .unwrap() | main.rs:151:9:151:11 | l10 | provenance | | -| main.rs:151:48:151:68 | ...::min(...) | main.rs:151:15:151:69 | ...::array::<...>(...) [Ok] | provenance | MaD:31 | -| main.rs:151:62:151:62 | v | main.rs:151:48:151:68 | ...::min(...) | provenance | MaD:46 | +| main.rs:151:48:151:68 | ...::min(...) | main.rs:151:15:151:69 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | +| main.rs:151:62:151:62 | v | main.rs:151:48:151:68 | ...::min(...) | provenance | MaD:44 | | main.rs:152:31:152:33 | l10 | main.rs:152:13:152:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:154:9:154:11 | l11 | main.rs:155:31:155:33 | l11 | provenance | | -| main.rs:154:15:154:69 | ...::array::<...>(...) [Ok] | main.rs:154:15:154:78 | ... .unwrap() | provenance | MaD:44 | +| main.rs:154:15:154:69 | ...::array::<...>(...) [Ok] | main.rs:154:15:154:78 | ... .unwrap() | provenance | MaD:42 | | main.rs:154:15:154:78 | ... .unwrap() | main.rs:154:9:154:11 | l11 | provenance | | -| main.rs:154:48:154:68 | ...::max(...) | main.rs:154:15:154:69 | ...::array::<...>(...) [Ok] | provenance | MaD:31 | -| main.rs:154:62:154:62 | v | main.rs:154:48:154:68 | ...::max(...) | provenance | MaD:45 | +| main.rs:154:48:154:68 | ...::max(...) | main.rs:154:15:154:69 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | +| main.rs:154:62:154:62 | v | main.rs:154:48:154:68 | ...::max(...) | provenance | MaD:43 | | main.rs:155:31:155:33 | l11 | main.rs:155:13:155:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:161:13:161:15 | l13 | main.rs:162:35:162:37 | l13 | provenance | | -| main.rs:161:19:161:59 | ...::from_size_align(...) [Ok] | main.rs:161:19:161:68 | ... .unwrap() | provenance | MaD:44 | +| main.rs:161:19:161:59 | ...::from_size_align(...) [Ok] | main.rs:161:19:161:68 | ... .unwrap() | provenance | MaD:42 | | main.rs:161:19:161:68 | ... .unwrap() | main.rs:161:13:161:15 | l13 | provenance | | -| main.rs:161:55:161:55 | v | main.rs:161:19:161:59 | ...::from_size_align(...) [Ok] | provenance | MaD:36 | +| main.rs:161:55:161:55 | v | main.rs:161:19:161:59 | ...::from_size_align(...) [Ok] | provenance | MaD:34 | | main.rs:162:35:162:37 | l13 | main.rs:162:17:162:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:162:35:162:37 | l13 | main.rs:169:35:169:37 | l13 | provenance | | | main.rs:169:35:169:37 | l13 | main.rs:169:17:169:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | @@ -217,9 +216,9 @@ edges | main.rs:183:29:183:36 | ...: usize | main.rs:192:46:192:46 | v | provenance | | | main.rs:183:29:183:36 | ...: usize | main.rs:202:48:202:48 | v | provenance | | | main.rs:192:9:192:10 | l2 | main.rs:193:38:193:39 | l2 | provenance | | -| main.rs:192:14:192:47 | ...::array::<...>(...) [Ok] | main.rs:192:14:192:56 | ... .unwrap() | provenance | MaD:44 | +| main.rs:192:14:192:47 | ...::array::<...>(...) [Ok] | main.rs:192:14:192:56 | ... .unwrap() | provenance | MaD:42 | | main.rs:192:14:192:56 | ... .unwrap() | main.rs:192:9:192:10 | l2 | provenance | | -| main.rs:192:46:192:46 | v | main.rs:192:14:192:47 | ...::array::<...>(...) [Ok] | provenance | MaD:31 | +| main.rs:192:46:192:46 | v | main.rs:192:14:192:47 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | | main.rs:193:38:193:39 | l2 | main.rs:193:32:193:36 | alloc | provenance | MaD:12 Sink:MaD:12 | | main.rs:193:38:193:39 | l2 | main.rs:194:45:194:46 | l2 | provenance | | | main.rs:194:45:194:46 | l2 | main.rs:194:32:194:43 | alloc_zeroed | provenance | MaD:13 Sink:MaD:13 | @@ -258,19 +257,19 @@ edges | main.rs:231:42:231:42 | v | main.rs:231:13:231:40 | ...::with_capacity_in | provenance | MaD:6 Sink:MaD:6 | | main.rs:282:24:282:41 | ...: String | main.rs:283:21:283:30 | user_input | provenance | | | main.rs:283:9:283:17 | num_bytes | main.rs:285:54:285:62 | num_bytes | provenance | | -| main.rs:283:21:283:30 | user_input | main.rs:283:21:283:47 | user_input.parse() [Ok] | provenance | MaD:28 | -| main.rs:283:21:283:30 | user_input | main.rs:283:21:283:47 | user_input.parse() [Ok] | provenance | MaD:29 | +| main.rs:283:21:283:30 | user_input | main.rs:283:21:283:47 | user_input.parse() [Ok] | provenance | MaD:26 | +| main.rs:283:21:283:30 | user_input | main.rs:283:21:283:47 | user_input.parse() [Ok] | provenance | MaD:27 | | main.rs:283:21:283:47 | user_input.parse() [Ok] | main.rs:283:21:283:48 | TryExpr | provenance | | -| main.rs:283:21:283:48 | TryExpr | main.rs:283:21:283:77 | ... * ... | provenance | MaD:27 | +| main.rs:283:21:283:48 | TryExpr | main.rs:283:21:283:77 | ... * ... | provenance | MaD:25 | | main.rs:283:21:283:77 | ... * ... | main.rs:283:9:283:17 | num_bytes | provenance | | | main.rs:285:9:285:14 | layout | main.rs:287:40:287:45 | layout | provenance | | -| main.rs:285:18:285:66 | ...::from_size_align(...) [Ok] | main.rs:285:18:285:75 | ... .unwrap() | provenance | MaD:44 | +| main.rs:285:18:285:66 | ...::from_size_align(...) [Ok] | main.rs:285:18:285:75 | ... .unwrap() | provenance | MaD:42 | | main.rs:285:18:285:75 | ... .unwrap() | main.rs:285:9:285:14 | layout | provenance | | -| main.rs:285:54:285:62 | num_bytes | main.rs:285:18:285:66 | ...::from_size_align(...) [Ok] | provenance | MaD:36 | +| main.rs:285:54:285:62 | num_bytes | main.rs:285:18:285:66 | ...::from_size_align(...) [Ok] | provenance | MaD:34 | | main.rs:287:40:287:45 | layout | main.rs:287:22:287:38 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:311:25:311:38 | ...::args | main.rs:311:25:311:40 | ...::args(...) [element] | provenance | Src:MaD:22 | | main.rs:311:25:311:40 | ...::args(...) [element] | main.rs:311:25:311:47 | ... .nth(...) [Some] | provenance | MaD:23 | -| main.rs:311:25:311:47 | ... .nth(...) [Some] | main.rs:311:25:311:74 | ... .unwrap_or(...) | provenance | MaD:42 | +| main.rs:311:25:311:47 | ... .nth(...) [Some] | main.rs:311:25:311:74 | ... .unwrap_or(...) | provenance | MaD:40 | | main.rs:311:25:311:74 | ... .unwrap_or(...) | main.rs:282:24:282:41 | ...: String | provenance | | | main.rs:320:9:320:9 | v | main.rs:323:34:323:34 | v | provenance | | | main.rs:320:9:320:9 | v | main.rs:324:42:324:42 | v | provenance | | @@ -280,10 +279,10 @@ edges | main.rs:320:9:320:9 | v | main.rs:328:22:328:22 | v | provenance | | | main.rs:320:13:320:26 | ...::args | main.rs:320:13:320:28 | ...::args(...) [element] | provenance | Src:MaD:22 | | main.rs:320:13:320:28 | ...::args(...) [element] | main.rs:320:13:320:35 | ... .nth(...) [Some] | provenance | MaD:23 | -| main.rs:320:13:320:35 | ... .nth(...) [Some] | main.rs:320:13:320:65 | ... .unwrap_or(...) | provenance | MaD:42 | -| main.rs:320:13:320:65 | ... .unwrap_or(...) | main.rs:320:13:320:82 | ... .parse() [Ok] | provenance | MaD:28 | -| main.rs:320:13:320:65 | ... .unwrap_or(...) | main.rs:320:13:320:82 | ... .parse() [Ok] | provenance | MaD:29 | -| main.rs:320:13:320:82 | ... .parse() [Ok] | main.rs:320:13:320:91 | ... .unwrap() | provenance | MaD:44 | +| main.rs:320:13:320:35 | ... .nth(...) [Some] | main.rs:320:13:320:65 | ... .unwrap_or(...) | provenance | MaD:40 | +| main.rs:320:13:320:65 | ... .unwrap_or(...) | main.rs:320:13:320:82 | ... .parse() [Ok] | provenance | MaD:26 | +| main.rs:320:13:320:65 | ... .unwrap_or(...) | main.rs:320:13:320:82 | ... .parse() [Ok] | provenance | MaD:27 | +| main.rs:320:13:320:82 | ... .parse() [Ok] | main.rs:320:13:320:91 | ... .unwrap() | provenance | MaD:42 | | main.rs:320:13:320:91 | ... .unwrap() | main.rs:320:9:320:9 | v | provenance | | | main.rs:323:34:323:34 | v | main.rs:12:36:12:43 | ...: usize | provenance | | | main.rs:324:42:324:42 | v | main.rs:43:44:43:51 | ...: usize | provenance | | @@ -315,29 +314,27 @@ models | 21 | Sink: libc::unix::realloc; Argument[1]; alloc-size | | 22 | Source: std::env::args; ReturnValue.Element; commandargs | | 23 | Summary: <_ as core::iter::traits::iterator::Iterator>::nth; Argument[self].Reference.Element; ReturnValue.Field[core::option::Option::Some(0)]; value | -| 24 | Summary: <_ as core::ops::arith::Add>::add; Argument[self]; ReturnValue; taint | -| 25 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[0].Reference; ReturnValue; taint | -| 26 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[0]; ReturnValue; taint | -| 27 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self]; ReturnValue; taint | -| 28 | Summary: <_ as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue.Reference; taint | -| 29 | Summary: ::deref; Argument[self]; ReturnValue; value | -| 30 | Summary: ::align_to; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 31 | Summary: ::array; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 32 | Summary: ::extend; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)].Field[0]; taint | -| 33 | Summary: ::extend; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)].Field[0]; taint | -| 34 | Summary: ::extend_packed; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 35 | Summary: ::extend_packed; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 36 | Summary: ::from_size_align; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 37 | Summary: ::from_size_align_unchecked; Argument[0]; ReturnValue; taint | -| 38 | Summary: ::pad_to_align; Argument[self].Reference; ReturnValue; taint | -| 39 | Summary: ::repeat; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)].Field[0]; taint | -| 40 | Summary: ::repeat_packed; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 41 | Summary: ::size; Argument[self].Reference; ReturnValue; taint | -| 42 | Summary: ::unwrap_or; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 43 | Summary: ::expect; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 44 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 45 | Summary: core::cmp::max; Argument[0]; ReturnValue; value | -| 46 | Summary: core::cmp::min; Argument[0]; ReturnValue; value | +| 24 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0]; ReturnValue; taint | +| 25 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self,0]; ReturnValue; taint | +| 26 | Summary: <_ as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue.Reference; taint | +| 27 | Summary: ::deref; Argument[self]; ReturnValue; value | +| 28 | Summary: ::align_to; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 29 | Summary: ::array; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 30 | Summary: ::extend; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)].Field[0]; taint | +| 31 | Summary: ::extend; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)].Field[0]; taint | +| 32 | Summary: ::extend_packed; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 33 | Summary: ::extend_packed; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 34 | Summary: ::from_size_align; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 35 | Summary: ::from_size_align_unchecked; Argument[0]; ReturnValue; taint | +| 36 | Summary: ::pad_to_align; Argument[self].Reference; ReturnValue; taint | +| 37 | Summary: ::repeat; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)].Field[0]; taint | +| 38 | Summary: ::repeat_packed; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 39 | Summary: ::size; Argument[self].Reference; ReturnValue; taint | +| 40 | Summary: ::unwrap_or; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 41 | Summary: ::expect; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 42 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 43 | Summary: core::cmp::max; Argument[0]; ReturnValue; value | +| 44 | Summary: core::cmp::min; Argument[0]; ReturnValue; value | nodes | main.rs:12:36:12:43 | ...: usize | semmle.label | ...: usize | | main.rs:18:13:18:31 | ...::realloc | semmle.label | ...::realloc | diff --git a/rust/ql/test/query-tests/security/CWE-798/HardcodedCryptographicValue.expected b/rust/ql/test/query-tests/security/CWE-798/HardcodedCryptographicValue.expected index 1d9837feafe2..5423999d7c3f 100644 --- a/rust/ql/test/query-tests/security/CWE-798/HardcodedCryptographicValue.expected +++ b/rust/ql/test/query-tests/security/CWE-798/HardcodedCryptographicValue.expected @@ -23,32 +23,32 @@ edges | test_cipher.rs:18:28:18:36 | &... [&ref] | test_cipher.rs:18:9:18:14 | const1 [&ref] | provenance | | | test_cipher.rs:18:29:18:36 | [0u8; 16] | test_cipher.rs:18:28:18:36 | &... [&ref] | provenance | | | test_cipher.rs:19:49:19:79 | ...::from_slice(...) [&ref] | test_cipher.rs:19:30:19:47 | ...::new | provenance | MaD:3 Sink:MaD:3 | -| test_cipher.rs:19:73:19:78 | const1 [&ref] | test_cipher.rs:19:49:19:79 | ...::from_slice(...) [&ref] | provenance | MaD:23 | +| test_cipher.rs:19:73:19:78 | const1 [&ref] | test_cipher.rs:19:49:19:79 | ...::from_slice(...) [&ref] | provenance | MaD:18 | | test_cipher.rs:25:9:25:14 | const4 [&ref] | test_cipher.rs:26:66:26:71 | const4 [&ref] | provenance | | | test_cipher.rs:25:28:25:36 | &... [&ref] | test_cipher.rs:25:9:25:14 | const4 [&ref] | provenance | | | test_cipher.rs:25:29:25:36 | [0u8; 16] | test_cipher.rs:25:28:25:36 | &... [&ref] | provenance | | | test_cipher.rs:26:42:26:72 | ...::from_slice(...) [&ref] | test_cipher.rs:26:30:26:40 | ...::new | provenance | MaD:4 Sink:MaD:4 | -| test_cipher.rs:26:66:26:71 | const4 [&ref] | test_cipher.rs:26:42:26:72 | ...::from_slice(...) [&ref] | provenance | MaD:23 | +| test_cipher.rs:26:66:26:71 | const4 [&ref] | test_cipher.rs:26:42:26:72 | ...::from_slice(...) [&ref] | provenance | MaD:18 | | test_cipher.rs:29:9:29:14 | const5 [&ref] | test_cipher.rs:30:95:30:100 | const5 [&ref] | provenance | | | test_cipher.rs:29:28:29:36 | &... [&ref] | test_cipher.rs:29:9:29:14 | const5 [&ref] | provenance | | | test_cipher.rs:29:29:29:36 | [0u8; 16] | test_cipher.rs:29:28:29:36 | &... [&ref] | provenance | | | test_cipher.rs:30:72:30:101 | ...::from_slice(...) [&ref] | test_cipher.rs:30:30:30:40 | ...::new | provenance | MaD:5 Sink:MaD:5 | -| test_cipher.rs:30:95:30:100 | const5 [&ref] | test_cipher.rs:30:72:30:101 | ...::from_slice(...) [&ref] | provenance | MaD:23 | +| test_cipher.rs:30:95:30:100 | const5 [&ref] | test_cipher.rs:30:72:30:101 | ...::from_slice(...) [&ref] | provenance | MaD:18 | | test_cipher.rs:37:9:37:14 | const7 | test_cipher.rs:38:74:38:79 | const7 | provenance | | | test_cipher.rs:37:27:37:74 | [...] | test_cipher.rs:37:9:37:14 | const7 | provenance | | | test_cipher.rs:38:49:38:80 | ...::from_slice(...) [&ref] | test_cipher.rs:38:30:38:47 | ...::new | provenance | MaD:3 Sink:MaD:3 | -| test_cipher.rs:38:73:38:79 | &const7 [&ref] | test_cipher.rs:38:49:38:80 | ...::from_slice(...) [&ref] | provenance | MaD:23 | +| test_cipher.rs:38:73:38:79 | &const7 [&ref] | test_cipher.rs:38:49:38:80 | ...::from_slice(...) [&ref] | provenance | MaD:18 | | test_cipher.rs:38:74:38:79 | const7 | test_cipher.rs:38:73:38:79 | &const7 [&ref] | provenance | | | test_cipher.rs:41:9:41:14 | const8 [&ref] | test_cipher.rs:42:73:42:78 | const8 [&ref] | provenance | | | test_cipher.rs:41:28:41:76 | &... [&ref] | test_cipher.rs:41:9:41:14 | const8 [&ref] | provenance | | | test_cipher.rs:41:29:41:76 | [...] | test_cipher.rs:41:28:41:76 | &... [&ref] | provenance | | | test_cipher.rs:42:49:42:79 | ...::from_slice(...) [&ref] | test_cipher.rs:42:30:42:47 | ...::new | provenance | MaD:3 Sink:MaD:3 | -| test_cipher.rs:42:73:42:78 | const8 [&ref] | test_cipher.rs:42:49:42:79 | ...::from_slice(...) [&ref] | provenance | MaD:23 | +| test_cipher.rs:42:73:42:78 | const8 [&ref] | test_cipher.rs:42:49:42:79 | ...::from_slice(...) [&ref] | provenance | MaD:18 | | test_cipher.rs:50:9:50:15 | const10 [element] | test_cipher.rs:51:75:51:81 | const10 [element] | provenance | | | test_cipher.rs:50:37:50:52 | ...::zeroed | test_cipher.rs:50:37:50:54 | ...::zeroed(...) [element] | provenance | Src:MaD:7 | | test_cipher.rs:50:37:50:54 | ...::zeroed(...) [element] | test_cipher.rs:50:9:50:15 | const10 [element] | provenance | | | test_cipher.rs:51:50:51:82 | ...::from_slice(...) [&ref, element] | test_cipher.rs:51:31:51:48 | ...::new | provenance | MaD:3 Sink:MaD:3 Sink:MaD:3 | -| test_cipher.rs:51:74:51:81 | &const10 [&ref, element] | test_cipher.rs:51:50:51:82 | ...::from_slice(...) [&ref, element] | provenance | MaD:23 | +| test_cipher.rs:51:74:51:81 | &const10 [&ref, element] | test_cipher.rs:51:50:51:82 | ...::from_slice(...) [&ref, element] | provenance | MaD:18 | | test_cipher.rs:51:75:51:81 | const10 [element] | test_cipher.rs:51:74:51:81 | &const10 [&ref, element] | provenance | | | test_cipher.rs:73:9:73:14 | const2 [&ref] | test_cipher.rs:74:46:74:51 | const2 [&ref] | provenance | | | test_cipher.rs:73:18:73:26 | &... [&ref] | test_cipher.rs:73:9:73:14 | const2 [&ref] | provenance | | @@ -65,14 +65,14 @@ edges | test_cookie.rs:38:9:38:14 | array2 | test_cookie.rs:42:34:42:39 | array2 | provenance | | | test_cookie.rs:38:18:38:37 | ...::from(...) | test_cookie.rs:38:9:38:14 | array2 | provenance | | | test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:8 | -| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:18 | -| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:19 | -| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:20 | -| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:21 | -| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:22 | +| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:13 | +| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:14 | +| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:15 | +| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:16 | +| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:17 | | test_cookie.rs:42:34:42:39 | array2 | test_cookie.rs:42:14:42:32 | ...::from | provenance | MaD:2 Sink:MaD:2 | | test_cookie.rs:49:9:49:14 | array3 [element] | test_cookie.rs:53:34:53:39 | array3 [element] | provenance | | -| test_cookie.rs:49:23:49:25 | 0u8 | test_cookie.rs:49:23:49:29 | ...::from_elem(...) [element] | provenance | MaD:24 | +| test_cookie.rs:49:23:49:25 | 0u8 | test_cookie.rs:49:23:49:29 | ...::from_elem(...) [element] | provenance | MaD:19 | | test_cookie.rs:49:23:49:29 | ...::from_elem(...) [element] | test_cookie.rs:49:9:49:14 | array3 [element] | provenance | | | test_cookie.rs:53:34:53:39 | array3 [element] | test_cookie.rs:53:14:53:32 | ...::from | provenance | MaD:2 Sink:MaD:2 | | test_heuristic.rs:44:9:44:16 | const_iv [&ref] | test_heuristic.rs:45:41:45:48 | const_iv | provenance | | @@ -80,15 +80,11 @@ edges | test_heuristic.rs:44:31:44:38 | [0u8; 16] | test_heuristic.rs:44:30:44:38 | &... [&ref] | provenance | | | test_heuristic.rs:64:20:64:27 | [0u8; 16] | test_heuristic.rs:64:19:64:27 | &... | provenance | | | test_heuristic.rs:65:31:65:38 | [0u8; 16] | test_heuristic.rs:65:30:65:38 | &... | provenance | | -| test_heuristic.rs:69:32:69:32 | 1 | test_heuristic.rs:69:22:69:32 | ... + ... | provenance | MaD:10 | | test_heuristic.rs:69:32:69:32 | 1 | test_heuristic.rs:69:22:69:32 | ... + ... | provenance | MaD:9 | -| test_heuristic.rs:70:23:70:35 | ... << ... | test_heuristic.rs:70:22:70:62 | ... ^ ... | provenance | MaD:15 | -| test_heuristic.rs:70:34:70:35 | 32 | test_heuristic.rs:70:23:70:35 | ... << ... | provenance | MaD:17 | -| test_heuristic.rs:70:34:70:35 | 32 | test_heuristic.rs:70:23:70:35 | ... << ... | provenance | MaD:16 | -| test_heuristic.rs:70:41:70:61 | ... & ... | test_heuristic.rs:70:22:70:62 | ... ^ ... | provenance | MaD:14 | -| test_heuristic.rs:70:41:70:61 | ... & ... | test_heuristic.rs:70:22:70:62 | ... ^ ... | provenance | MaD:13 | -| test_heuristic.rs:70:52:70:61 | 0xFFFFFFFF | test_heuristic.rs:70:41:70:61 | ... & ... | provenance | MaD:12 | -| test_heuristic.rs:70:52:70:61 | 0xFFFFFFFF | test_heuristic.rs:70:41:70:61 | ... & ... | provenance | MaD:11 | +| test_heuristic.rs:70:23:70:35 | ... << ... | test_heuristic.rs:70:22:70:62 | ... ^ ... | provenance | MaD:11 | +| test_heuristic.rs:70:34:70:35 | 32 | test_heuristic.rs:70:23:70:35 | ... << ... | provenance | MaD:12 | +| test_heuristic.rs:70:41:70:61 | ... & ... | test_heuristic.rs:70:22:70:62 | ... ^ ... | provenance | MaD:11 | +| test_heuristic.rs:70:52:70:61 | 0xFFFFFFFF | test_heuristic.rs:70:41:70:61 | ... & ... | provenance | MaD:10 | models | 1 | Sink: <_ as crypto_common::KeyInit>::new_from_slice; Argument[0]; credentials-key | | 2 | Sink: ::from; Argument[0]; credentials-key | @@ -98,22 +94,17 @@ models | 6 | Sink: ::from; Argument[0].Reference; credentials-key | | 7 | Source: core::mem::zeroed; ReturnValue.Element; constant-source | | 8 | Summary: <_ as core::convert::From>::from; Argument[0]; ReturnValue; taint | -| 9 | Summary: <_ as core::ops::arith::Add>::add; Argument[0].Reference; ReturnValue; taint | -| 10 | Summary: <_ as core::ops::arith::Add>::add; Argument[0]; ReturnValue; taint | -| 11 | Summary: <_ as core::ops::bit::BitAnd>::bitand; Argument[0].Reference; ReturnValue; taint | -| 12 | Summary: <_ as core::ops::bit::BitAnd>::bitand; Argument[0]; ReturnValue; taint | -| 13 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[0].Reference; ReturnValue; taint | -| 14 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[0]; ReturnValue; taint | -| 15 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self]; ReturnValue; taint | -| 16 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[0].Reference; ReturnValue; taint | -| 17 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[0]; ReturnValue; taint | -| 18 | Summary: ::from; Argument[0].Field[alloc::borrow::Cow::Owned(0)]; ReturnValue; value | -| 19 | Summary: ::from; Argument[0].Field[alloc::bstr::ByteString(0)]; ReturnValue; value | -| 20 | Summary: ::from; Argument[0].Field[alloc::collections::binary_heap::BinaryHeap::data]; ReturnValue; value | -| 21 | Summary: ::from; Argument[0].Field[alloc::string::String::vec]; ReturnValue; value | -| 22 | Summary: ::from; Argument[0]; ReturnValue; taint | -| 23 | Summary: ::from_slice; Argument[0].Reference; ReturnValue.Reference; value | -| 24 | Summary: alloc::vec::from_elem; Argument[0]; ReturnValue.Element; value | +| 9 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0]; ReturnValue; taint | +| 10 | Summary: <_ as core::ops::bit::BitAnd>::bitand; Argument[self,0]; ReturnValue; taint | +| 11 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self,0]; ReturnValue; taint | +| 12 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0]; ReturnValue; taint | +| 13 | Summary: ::from; Argument[0].Field[alloc::borrow::Cow::Owned(0)]; ReturnValue; value | +| 14 | Summary: ::from; Argument[0].Field[alloc::bstr::ByteString(0)]; ReturnValue; value | +| 15 | Summary: ::from; Argument[0].Field[alloc::collections::binary_heap::BinaryHeap::data]; ReturnValue; value | +| 16 | Summary: ::from; Argument[0].Field[alloc::string::String::vec]; ReturnValue; value | +| 17 | Summary: ::from; Argument[0]; ReturnValue; taint | +| 18 | Summary: ::from_slice; Argument[0].Reference; ReturnValue.Reference; value | +| 19 | Summary: alloc::vec::from_elem; Argument[0]; ReturnValue.Element; value | nodes | test_cipher.rs:18:9:18:14 | const1 [&ref] | semmle.label | const1 [&ref] | | test_cipher.rs:18:28:18:36 | &... [&ref] | semmle.label | &... [&ref] | From ffaf1c0a24eeddc7adf2c5ad70000f7829db5a5e Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Thu, 22 Jan 2026 13:02:06 +0100 Subject: [PATCH 117/433] Rust: Change `getATypeParameterConstraint` to not require a `TypeMention` --- .../internal/typeinference/TypeInference.qll | 22 +++++++++---------- .../typeinference/internal/TypeInference.qll | 9 +++----- 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index 10df835cc08a..ebf7bd2aa82d 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -141,17 +141,17 @@ private module Input2 implements InputSig2 { TypeMention getABaseTypeMention(Type t) { none() } - TypeMention getATypeParameterConstraint(TypeParameter tp) { - result = tp.(TypeParamTypeParameter).getTypeParam().getATypeBound().getTypeRepr() - or - result = tp.(SelfTypeParameter).getTrait() - or - result = - tp.(ImplTraitTypeTypeParameter) - .getImplTraitTypeRepr() - .getTypeBoundList() - .getABound() - .getTypeRepr() + Type getATypeParameterConstraint(TypeParameter tp, TypePath path) { + exists(TypeMention tm | result = tm.resolveTypeAt(path) | + tm = tp.(TypeParamTypeParameter).getTypeParam().getATypeBound().getTypeRepr() or + tm = tp.(SelfTypeParameter).getTrait() or + tm = + tp.(ImplTraitTypeTypeParameter) + .getImplTraitTypeRepr() + .getTypeBoundList() + .getABound() + .getTypeRepr() + ) } /** diff --git a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll index 5295048623e1..0a20bd59f1b2 100644 --- a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll +++ b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll @@ -343,7 +343,7 @@ module Make1 Input1> { * ``` * the type parameter `T` has the constraint `IComparable`. */ - TypeMention getATypeParameterConstraint(TypeParameter tp); + Type getATypeParameterConstraint(TypeParameter tp, TypePath path); /** * Holds if @@ -1451,13 +1451,10 @@ module Make1 Input1> { accessDeclarationPositionMatch(apos, dpos) and constrainedTp = target.getTypeParameter(_) and tp = target.getTypeParameter(_) and + tp = getATypeParameterConstraint(constrainedTp, pathToTp) and constrainedTp != tp and constrainedTp = target.getDeclaredType(dpos, pathToConstrained) and - exists(TypeMention tm | - tm = getATypeParameterConstraint(constrainedTp) and - tm.resolveTypeAt(pathToTp) = tp and - constraint = resolveTypeMentionRoot(tm) - ) + constraint = getATypeParameterConstraint(constrainedTp, TypePath::nil()) ) } From 699ed50432440f47bd6ca768a0826c1ccc9fe0f3 Mon Sep 17 00:00:00 2001 From: yoff Date: Wed, 10 Dec 2025 01:37:39 +0100 Subject: [PATCH 118/433] python: remove barrier that can be expressed in MaD --- .../lib/semmle/python/frameworks/Django.qll | 32 ------------------- .../CWE-601-UrlRedirect/UrlRedirect.expected | 3 ++ 2 files changed, 3 insertions(+), 32 deletions(-) diff --git a/python/ql/lib/semmle/python/frameworks/Django.qll b/python/ql/lib/semmle/python/frameworks/Django.qll index 4aa5776ad54b..ee0ed4a84dd0 100644 --- a/python/ql/lib/semmle/python/frameworks/Django.qll +++ b/python/ql/lib/semmle/python/frameworks/Django.qll @@ -2965,38 +2965,6 @@ module PrivateDjango { override predicate csrfEnabled() { decoratorName in ["csrf_protect", "requires_csrf_token"] } } - private predicate djangoUrlHasAllowedHostAndScheme( - DataFlow::GuardNode g, ControlFlowNode node, boolean branch - ) { - exists(API::CallNode call | - call = - API::moduleImport("django") - .getMember("utils") - .getMember("http") - .getMember("url_has_allowed_host_and_scheme") - .getACall() and - g = call.asCfgNode() and - node = call.getParameter(0, "url").asSink().asCfgNode() and - branch = true - ) - } - - /** - * A call to `django.utils.http.url_has_allowed_host_and_scheme`, considered as a sanitizer-guard for URL redirection. - * - * See https://docs.djangoproject.com/en/4.2/_modules/django/utils/http/ - */ - private class DjangoAllowedUrl extends UrlRedirect::Sanitizer { - DjangoAllowedUrl() { - this = DataFlow::BarrierGuard::getABarrierNode() - } - - override predicate sanitizes(UrlRedirect::FlowState state) { - // sanitize all flow states - any() - } - } - // --------------------------------------------------------------------------- // Templates // --------------------------------------------------------------------------- diff --git a/python/ql/test/query-tests/Security/CWE-601-UrlRedirect/UrlRedirect.expected b/python/ql/test/query-tests/Security/CWE-601-UrlRedirect/UrlRedirect.expected index 551299a64dc4..d7c891b46349 100644 --- a/python/ql/test/query-tests/Security/CWE-601-UrlRedirect/UrlRedirect.expected +++ b/python/ql/test/query-tests/Security/CWE-601-UrlRedirect/UrlRedirect.expected @@ -52,6 +52,7 @@ edges | test.py:81:17:81:46 | ControlFlowNode for Attribute() | test.py:81:5:81:13 | ControlFlowNode for untrusted | provenance | | | test.py:82:5:82:10 | ControlFlowNode for unsafe | test.py:83:21:83:26 | ControlFlowNode for unsafe | provenance | | | test.py:90:5:90:13 | ControlFlowNode for untrusted | test.py:93:18:93:26 | ControlFlowNode for untrusted | provenance | | +| test.py:90:5:90:13 | ControlFlowNode for untrusted | test.py:95:25:95:33 | ControlFlowNode for untrusted | provenance | | | test.py:90:17:90:23 | ControlFlowNode for request | test.py:90:17:90:28 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | test.py:90:17:90:28 | ControlFlowNode for Attribute | test.py:90:17:90:46 | ControlFlowNode for Attribute() | provenance | dict.get | | test.py:90:17:90:46 | ControlFlowNode for Attribute() | test.py:90:5:90:13 | ControlFlowNode for untrusted | provenance | | @@ -122,6 +123,7 @@ nodes | test.py:90:17:90:28 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute | | test.py:90:17:90:46 | ControlFlowNode for Attribute() | semmle.label | ControlFlowNode for Attribute() | | test.py:93:18:93:26 | ControlFlowNode for untrusted | semmle.label | ControlFlowNode for untrusted | +| test.py:95:25:95:33 | ControlFlowNode for untrusted | semmle.label | ControlFlowNode for untrusted | | test.py:111:5:111:13 | ControlFlowNode for untrusted | semmle.label | ControlFlowNode for untrusted | | test.py:111:17:111:23 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | | test.py:111:17:111:28 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute | @@ -148,6 +150,7 @@ subpaths | test.py:76:21:76:26 | ControlFlowNode for unsafe | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:76:21:76:26 | ControlFlowNode for unsafe | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test.py:83:21:83:26 | ControlFlowNode for unsafe | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:83:21:83:26 | ControlFlowNode for unsafe | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test.py:93:18:93:26 | ControlFlowNode for untrusted | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:93:18:93:26 | ControlFlowNode for untrusted | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | +| test.py:95:25:95:33 | ControlFlowNode for untrusted | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:95:25:95:33 | ControlFlowNode for untrusted | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test.py:114:25:114:33 | ControlFlowNode for untrusted | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:114:25:114:33 | ControlFlowNode for untrusted | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test.py:140:25:140:33 | ControlFlowNode for untrusted | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:140:25:140:33 | ControlFlowNode for untrusted | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test.py:148:25:148:33 | ControlFlowNode for untrusted | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:148:25:148:33 | ControlFlowNode for untrusted | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | From 3dbfb9fa4b41177096e74e71fdf4e6533ac42b89 Mon Sep 17 00:00:00 2001 From: yoff Date: Wed, 10 Dec 2025 01:43:14 +0100 Subject: [PATCH 119/433] python: add machinery for MaD barriers and reinstate previously removed barrier now as a MaD row --- .../dataflow/internal/BarrierGuards.qll | 30 +++++++ .../javascript/frameworks/Credentials.qll | 2 +- .../semmle/javascript/frameworks/NoSQL.qll | 4 +- .../lib/semmle/javascript/frameworks/SQL.qll | 2 +- .../frameworks/data/ModelsAsData.qll | 6 +- .../data/internal/ApiGraphModels.qll | 85 ++++++++++++++++++- .../internal/ApiGraphModelsExtensions.qll | 20 +++++ .../frameworks/data/internal/empty.model.yml | 10 +++ ...sPermissiveConfigurationCustomizations.qll | 2 +- .../ClientSideUrlRedirectCustomizations.qll | 2 +- .../dataflow/CodeInjectionCustomizations.qll | 2 +- .../CommandInjectionCustomizations.qll | 2 +- .../dataflow/DomBasedXssCustomizations.qll | 2 +- .../security/dataflow/LogInjectionQuery.qll | 2 +- .../dataflow/ReflectedXssCustomizations.qll | 2 +- .../dataflow/RequestForgeryCustomizations.qll | 2 +- .../ServerSideUrlRedirectCustomizations.qll | 2 +- .../dataflow/TaintedPathCustomizations.qll | 2 +- .../UnsafeDeserializationCustomizations.qll | 2 +- .../library-tests/frameworks/data/test.ql | 8 +- .../dataflow/new/internal/DataFlowPublic.qll | 56 ++++++++++-- .../semmle/python/frameworks/Django.model.yml | 6 ++ .../python/frameworks/data/ModelsAsData.qll | 4 +- .../data/internal/ApiGraphModels.qll | 85 ++++++++++++++++++- .../internal/ApiGraphModelsExtensions.qll | 20 +++++ .../frameworks/data/internal/empty.model.yml | 10 +++ .../dataflow/CodeInjectionCustomizations.qll | 2 +- .../CommandInjectionCustomizations.qll | 2 +- .../dataflow/LogInjectionCustomizations.qll | 2 +- .../dataflow/PathInjectionCustomizations.qll | 2 +- .../dataflow/ReflectedXSSCustomizations.qll | 4 +- .../dataflow/SqlInjectionCustomizations.qll | 2 +- .../UnsafeDeserializationCustomizations.qll | 2 +- .../dataflow/UrlRedirectCustomizations.qll | 20 ++++- .../Security/CWE-798/HardcodedCredentials.ql | 2 +- python/ql/test/experimental/meta/MaDTest.qll | 4 +- .../UnsafeUnpack.expected | 2 +- .../CWE-409/DecompressionBombs.expected | 10 +-- .../library-tests/frameworks/data/test.ql | 14 +-- .../SqlInjection.expected | 2 +- .../Tests1/HeaderInjection.expected | 4 +- .../CWE-601-UrlRedirect/UrlRedirect.expected | 3 - .../ruby/dataflow/internal/DataFlowPublic.qll | 79 +++++++++++++++++ .../codeql/ruby/dataflow/internal/SsaImpl.qll | 27 ++++++ .../ruby/frameworks/data/ModelsAsData.qll | 2 +- .../data/internal/ApiGraphModels.qll | 85 ++++++++++++++++++- .../internal/ApiGraphModelsExtensions.qll | 20 +++++ .../frameworks/data/internal/empty.model.yml | 10 +++ .../security/CodeInjectionCustomizations.qll | 2 +- .../CommandInjectionCustomizations.qll | 4 +- .../ruby/security/LogInjectionQuery.qll | 2 +- .../security/PathInjectionCustomizations.qll | 2 +- ...ServerSideRequestForgeryCustomizations.qll | 2 +- .../security/SqlInjectionCustomizations.qll | 2 +- .../security/UrlRedirectCustomizations.qll | 2 +- .../dataflow/summaries/Summaries.ql | 2 +- 56 files changed, 606 insertions(+), 82 deletions(-) create mode 100644 python/ql/lib/semmle/python/frameworks/Django.model.yml diff --git a/javascript/ql/lib/semmle/javascript/dataflow/internal/BarrierGuards.qll b/javascript/ql/lib/semmle/javascript/dataflow/internal/BarrierGuards.qll index 371fbce77a9c..b0a8518ef55e 100644 --- a/javascript/ql/lib/semmle/javascript/dataflow/internal/BarrierGuards.qll +++ b/javascript/ql/lib/semmle/javascript/dataflow/internal/BarrierGuards.qll @@ -36,6 +36,36 @@ module MakeBarrierGuard { } } +/** + * Provides access to barrier guards defined via models-as-data. + */ +module ExternalBarrierGuard { + private predicate guardCheck(DataFlow::Node g, Expr e, boolean branch, string kind) { + exists(API::CallNode call, API::Node parameter | + parameter = call.getAParameter() and + parameter = ModelOutput::getABarrierGuardNode(kind, branch) + | + g = call and + e = parameter.asSink().asExpr() + ) + } + + private class BarrierGuard extends DataFlow::Node { + BarrierGuard() { guardCheck(this, _, _, _) } + + predicate blocksExpr(boolean outcome, Expr e, string kind) { + guardCheck(this, e, outcome, kind) + } + } + + /** + * Gets a barrier guard node of the given `kind` defined via models-as-data. + */ + DataFlow::Node getAnExternalBarrierNode(string kind) { + result = MakeStateBarrierGuard::getABarrierNode(kind) + } +} + deprecated private module DeprecationWrapper { signature class LabeledBarrierGuardSig extends DataFlow::Node { /** diff --git a/javascript/ql/lib/semmle/javascript/frameworks/Credentials.qll b/javascript/ql/lib/semmle/javascript/frameworks/Credentials.qll index 35119a7d8b8f..6a70d6033a6f 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/Credentials.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/Credentials.qll @@ -29,7 +29,7 @@ module CredentialsExpr { private class CredentialsFromModel extends CredentialsNode { string kind; - CredentialsFromModel() { this = ModelOutput::getASinkNode("credentials-" + kind).asSink() } + CredentialsFromModel() { ModelOutput::sinkNode(this, "credentials-" + kind) } override string getCredentialsKind() { result = CredentialsExpr::normalizeKind(kind) } } diff --git a/javascript/ql/lib/semmle/javascript/frameworks/NoSQL.qll b/javascript/ql/lib/semmle/javascript/frameworks/NoSQL.qll index aeae1afcac30..3888dede5533 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/NoSQL.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/NoSQL.qll @@ -13,7 +13,7 @@ module NoSql { } private class QueryFromModel extends Query { - QueryFromModel() { this = ModelOutput::getASinkNode("nosql-injection").asSink() } + QueryFromModel() { ModelOutput::sinkNode(this, "nosql-injection") } } } @@ -46,7 +46,7 @@ private module MongoDB { override DataFlow::Node getAQueryArgument() { result = [this.getAnArgument(), this.getOptionArgument(_, _)] and - result = ModelOutput::getASinkNode("mongodb.sink").asSink() + ModelOutput::sinkNode(result, "mongodb.sink") } override DataFlow::Node getAResult() { diff --git a/javascript/ql/lib/semmle/javascript/frameworks/SQL.qll b/javascript/ql/lib/semmle/javascript/frameworks/SQL.qll index bcc898132200..2267c0916e32 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/SQL.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/SQL.qll @@ -9,7 +9,7 @@ module SQL { abstract class SqlString extends DataFlow::Node { } private class SqlStringFromModel extends SqlString { - SqlStringFromModel() { this = ModelOutput::getASinkNode("sql-injection").asSink() } + SqlStringFromModel() { ModelOutput::sinkNode(this, "sql-injection") } } /** diff --git a/javascript/ql/lib/semmle/javascript/frameworks/data/ModelsAsData.qll b/javascript/ql/lib/semmle/javascript/frameworks/data/ModelsAsData.qll index 5d65f901d22d..876191dcd296 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/data/ModelsAsData.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/data/ModelsAsData.qll @@ -30,7 +30,7 @@ import Shared::ModelOutput as ModelOutput * A remote flow source originating from a MaD source row. */ private class RemoteFlowSourceFromMaD extends RemoteFlowSource { - RemoteFlowSourceFromMaD() { this = ModelOutput::getASourceNode("remote").asSource() } + RemoteFlowSourceFromMaD() { ModelOutput::sourceNode(this, "remote") } override string getSourceType() { result = "Remote flow" } } @@ -39,9 +39,9 @@ private class RemoteFlowSourceFromMaD extends RemoteFlowSource { * A threat-model flow source originating from a data extension. */ private class ThreatModelSourceFromDataExtension extends ThreatModelSource::Range { - ThreatModelSourceFromDataExtension() { this = ModelOutput::getASourceNode(_).asSource() } + ThreatModelSourceFromDataExtension() { ModelOutput::sourceNode(this, _) } - override string getThreatModel() { this = ModelOutput::getASourceNode(result).asSource() } + override string getThreatModel() { ModelOutput::sourceNode(this, result) } override string getSourceType() { result = "Source node (" + this.getThreatModel() + ") [from data-extension]" diff --git a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll index 68f2210bff28..19b5a0e01a96 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll @@ -344,6 +344,26 @@ private predicate sinkModel(string type, string path, string kind, string model) ) } +/** Holds if a barrier model exists for the given parameters. */ +private predicate barrierModel(string type, string path, string kind, string model) { + // No deprecation adapter for barrier models, they were not around back then. + exists(QlBuiltins::ExtensionId madId | + Extensions::barrierModel(type, path, kind, madId) and + model = "MaD:" + madId.toString() + ) +} + +/** Holds if a barrier guard model exists for the given parameters. */ +private predicate barrierGuardModel( + string type, string path, string branch, string kind, string model +) { + // No deprecation adapter for barrier models, they were not around back then. + exists(QlBuiltins::ExtensionId madId | + Extensions::barrierGuardModel(type, path, branch, kind, madId) and + model = "MaD:" + madId.toString() + ) +} + /** Holds if a summary model `row` exists for the given parameters. */ private predicate summaryModel( string type, string path, string input, string output, string kind, string model @@ -400,6 +420,8 @@ predicate isRelevantType(string type) { ( sourceModel(type, _, _, _) or sinkModel(type, _, _, _) or + barrierModel(type, _, _, _) or + barrierGuardModel(type, _, _, _, _) or summaryModel(type, _, _, _, _, _) or typeModel(_, type, _) ) and @@ -427,6 +449,8 @@ predicate isRelevantFullPath(string type, string path) { ( sourceModel(type, path, _, _) or sinkModel(type, path, _, _) or + barrierModel(type, path, _, _) or + barrierGuardModel(type, path, _, _, _) or summaryModel(type, path, _, _, _, _) or typeModel(_, type, path) ) @@ -747,6 +771,32 @@ module ModelOutput { ) } + /** + * Holds if a barrier model contributed `barrier` with the given `kind`. + */ + cached + API::Node getABarrierNode(string kind, string model) { + exists(string type, string path | + barrierModel(type, path, kind, model) and + result = getNodeFromPath(type, path) + ) + } + + /** + * Holds if a barrier model contributed `barrier` with the given `kind` for the given `branch`. + */ + cached + API::Node getABarrierGuardNode(string kind, boolean branch, string model) { + exists(string type, string path, string branch_str | + branch = true and branch_str = "true" + or + branch = false and branch_str = "false" + | + barrierGuardModel(type, path, branch_str, kind, model) and + result = getNodeFromPath(type, path) + ) + } + /** * Holds if a relevant summary exists for these parameters. */ @@ -789,15 +839,46 @@ module ModelOutput { private import codeql.mad.ModelValidation as SharedModelVal /** - * Holds if a CSV source model contributed `source` with the given `kind`. + * Holds if an external model contributed `source` with the given `kind`. */ API::Node getASourceNode(string kind) { result = getASourceNode(kind, _) } /** - * Holds if a CSV sink model contributed `sink` with the given `kind`. + * Holds if an external model contributed `sink` with the given `kind`. */ API::Node getASinkNode(string kind) { result = getASinkNode(kind, _) } + /** + * Holds if an external model contributed `barrier` with the given `kind`. + */ + API::Node getABarrierNode(string kind) { result = getABarrierNode(kind, _) } + + /** + * Holds if an external model contributed `barrier-guard` with the given `kind` and `branch`. + */ + API::Node getABarrierGuardNode(string kind, boolean branch) { + result = getABarrierGuardNode(kind, branch, _) + } + + /** + * Holds if `node` is specified as a source with the given kind in an external model. + */ + predicate sourceNode(DataFlow::Node node, string kind) { node = getASourceNode(kind).asSource() } + + /** + * Holds if `node` is specified as a sink with the given kind in an external model. + */ + predicate sinkNode(DataFlow::Node node, string kind) { node = getASinkNode(kind).asSink() } + + /** + * Holds if `node` is specified as a barrier with the given kind in an external model. + */ + predicate barrierNode(DataFlow::Node node, string kind) { + node = getABarrierNode(kind).asSource() + or + node = DataFlow::ExternalBarrierGuard::getAnExternalBarrierNode(kind) + } + private module KindValConfig implements SharedModelVal::KindValidationConfigSig { predicate summaryKind(string kind) { summaryModel(_, _, _, _, kind, _) } diff --git a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModelsExtensions.qll b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModelsExtensions.qll index 3f38c498f324..2a644aabb95d 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModelsExtensions.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModelsExtensions.qll @@ -20,6 +20,26 @@ extensible predicate sourceModel( */ extensible predicate sinkModel(string type, string path, string kind, QlBuiltins::ExtensionId madId); +/** + * Holds if the value at `(type, path)` should be seen as a barrier + * of the given `kind` and `madId` is the data extension row number. + */ +extensible predicate barrierModel( + string type, string path, string kind, QlBuiltins::ExtensionId madId +); + +/** + * Holds if the value at `(type, path)` should be seen as a barrier guard + * of the given `kind` and `madId` is the data extension row number. + * `path` is assumed to lead to a parameter of a call (possibly `self`), and + * the call is guarding the parameter. + * `branch` is either `true` or `false`, indicating which branch of the guard + * is protecting the parameter. + */ +extensible predicate barrierGuardModel( + string type, string path, string branch, string kind, QlBuiltins::ExtensionId madId +); + /** * Holds if in calls to `(type, path)`, the value referred to by `input` * can flow to the value referred to by `output` and `madId` is the data diff --git a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/empty.model.yml b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/empty.model.yml index 12f83f71e55b..6542a1194cab 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/empty.model.yml +++ b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/empty.model.yml @@ -16,6 +16,16 @@ extensions: extensible: summaryModel data: [] + - addsTo: + pack: codeql/javascript-all + extensible: barrierModel + data: [] + + - addsTo: + pack: codeql/javascript-all + extensible: barrierGuardModel + data: [] + - addsTo: pack: codeql/javascript-all extensible: neutralModel diff --git a/javascript/ql/lib/semmle/javascript/security/CorsPermissiveConfigurationCustomizations.qll b/javascript/ql/lib/semmle/javascript/security/CorsPermissiveConfigurationCustomizations.qll index aed0e26a6b3f..e67b9e0d38cb 100644 --- a/javascript/ql/lib/semmle/javascript/security/CorsPermissiveConfigurationCustomizations.qll +++ b/javascript/ql/lib/semmle/javascript/security/CorsPermissiveConfigurationCustomizations.qll @@ -66,7 +66,7 @@ module CorsPermissiveConfiguration { * The value of cors origin when initializing the application. */ class CorsOriginSink extends Sink, DataFlow::ValueNode { - CorsOriginSink() { this = ModelOutput::getASinkNode("cors-origin").asSink() } + CorsOriginSink() { ModelOutput::sinkNode(this, "cors-origin") } } /** diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/ClientSideUrlRedirectCustomizations.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/ClientSideUrlRedirectCustomizations.qll index 1b987ea2679e..a8d15d0e6989 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/ClientSideUrlRedirectCustomizations.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/ClientSideUrlRedirectCustomizations.qll @@ -268,6 +268,6 @@ module ClientSideUrlRedirect { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("url-redirection").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "url-redirection") } } } diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/CodeInjectionCustomizations.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/CodeInjectionCustomizations.qll index 8fded55bc896..9a72ae4a2315 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/CodeInjectionCustomizations.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/CodeInjectionCustomizations.qll @@ -436,6 +436,6 @@ module CodeInjection { class JsonStringifySanitizer extends Sanitizer, JsonStringifyCall { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("code-injection").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "code-injection") } } } diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/CommandInjectionCustomizations.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/CommandInjectionCustomizations.qll index 9762c1142b99..6b17adcb773c 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/CommandInjectionCustomizations.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/CommandInjectionCustomizations.qll @@ -56,6 +56,6 @@ module CommandInjection { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("command-injection").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "command-injection") } } } diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/DomBasedXssCustomizations.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/DomBasedXssCustomizations.qll index 1440fb5539d7..b7639ccc3aad 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/DomBasedXssCustomizations.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/DomBasedXssCustomizations.qll @@ -419,6 +419,6 @@ module DomBasedXss { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("html-injection").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "html-injection") } } } diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/LogInjectionQuery.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/LogInjectionQuery.qll index 9f2060709059..25474297d09f 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/LogInjectionQuery.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/LogInjectionQuery.qll @@ -86,5 +86,5 @@ class JsonStringifySanitizer extends Sanitizer { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("log-injection").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "log-injection") } } diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/ReflectedXssCustomizations.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/ReflectedXssCustomizations.qll index 70b2685d90d4..82b6e99dc217 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/ReflectedXssCustomizations.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/ReflectedXssCustomizations.qll @@ -145,6 +145,6 @@ module ReflectedXss { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("html-injection").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "html-injection") } } } diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/RequestForgeryCustomizations.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/RequestForgeryCustomizations.qll index ec46ef91c3c0..de2a1e3c6bf6 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/RequestForgeryCustomizations.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/RequestForgeryCustomizations.qll @@ -96,7 +96,7 @@ module RequestForgery { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("request-forgery").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "request-forgery") } override DataFlow::Node getARequest() { result = this } diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/ServerSideUrlRedirectCustomizations.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/ServerSideUrlRedirectCustomizations.qll index 55815717e98c..18cfaf6f7420 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/ServerSideUrlRedirectCustomizations.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/ServerSideUrlRedirectCustomizations.qll @@ -64,6 +64,6 @@ module ServerSideUrlRedirect { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("url-redirection").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "url-redirection") } } } diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/TaintedPathCustomizations.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/TaintedPathCustomizations.qll index a09edf432f69..bb1da3f4a236 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/TaintedPathCustomizations.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/TaintedPathCustomizations.qll @@ -1122,6 +1122,6 @@ module TaintedPath { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("path-injection").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "path-injection") } } } diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/UnsafeDeserializationCustomizations.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/UnsafeDeserializationCustomizations.qll index 2e13e0ee7f9b..82f11ec80030 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/UnsafeDeserializationCustomizations.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/UnsafeDeserializationCustomizations.qll @@ -67,6 +67,6 @@ module UnsafeDeserialization { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("unsafe-deserialization").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "unsafe-deserialization") } } } diff --git a/javascript/ql/test/library-tests/frameworks/data/test.ql b/javascript/ql/test/library-tests/frameworks/data/test.ql index 6ba504e921fa..97f3c2d2d5a5 100644 --- a/javascript/ql/test/library-tests/frameworks/data/test.ql +++ b/javascript/ql/test/library-tests/frameworks/data/test.ql @@ -16,13 +16,13 @@ module TestConfig implements DataFlow::ConfigSig { predicate isSource(DataFlow::Node source) { source.(DataFlow::CallNode).getCalleeName() = "source" or - source = ModelOutput::getASourceNode("test-source").asSource() + ModelOutput::sourceNode(source, "test-source") } predicate isSink(DataFlow::Node sink) { sink = any(DataFlow::CallNode call | call.getCalleeName() = "sink").getAnArgument() or - sink = ModelOutput::getASinkNode("test-sink").asSink() + ModelOutput::sinkNode(sink, "test-sink") } } @@ -48,9 +48,7 @@ query predicate taintFlow(DataFlow::Node source, DataFlow::Node sink) { TestFlow::flow(source, sink) } -query predicate isSink(DataFlow::Node node, string kind) { - node = ModelOutput::getASinkNode(kind).asSink() -} +query predicate isSink(DataFlow::Node node, string kind) { ModelOutput::sinkNode(node, kind) } query predicate syntaxErrors(ApiGraphModels::AccessPath path) { path.hasSyntaxError() } diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll index ffecbcba57ac..2727ed6651d3 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll @@ -584,10 +584,6 @@ class GuardNode extends ControlFlowNode { /** * Holds if the guard `g` validates `node` upon evaluating to `branch`. - * - * The expression `e` is expected to be a syntactic part of the guard `g`. - * For example, the guard `g` might be a call `isSafe(x)` and the expression `e` - * the argument `x`. */ signature predicate guardChecksSig(GuardNode g, ControlFlowNode node, boolean branch); @@ -600,15 +596,65 @@ signature predicate guardChecksSig(GuardNode g, ControlFlowNode node, boolean br module BarrierGuard { /** Gets a node that is safely guarded by the given guard check. */ ExprNode getABarrierNode() { + result = ParameterizedBarrierGuard::getABarrierNode(_) + } + + private predicate extendedGuardChecks(GuardNode g, ControlFlowNode node, boolean branch, Unit u) { + guardChecks(g, node, branch) and + u = u + } +} + +bindingset[this] +private signature class ParamSig; + +private module WithParam { + signature predicate guardChecksSig(GuardNode g, ControlFlowNode node, boolean branch, P param); +} + +/** + * Provides a set of barrier nodes for a guard that validates a node. + * + * This is expected to be used in `isBarrier`/`isSanitizer` definitions + * in data flow and taint tracking. + */ +module ParameterizedBarrierGuard::guardChecksSig/4 guardChecks> { + /** Gets a node that is safely guarded by the given guard check with parameter `param`. */ + ExprNode getABarrierNode(P param) { exists(GuardNode g, EssaDefinition def, ControlFlowNode node, boolean branch | AdjacentUses::useOfDef(def, node) and - guardChecks(g, node, branch) and + guardChecks(g, node, branch, param) and AdjacentUses::useOfDef(def, result.asCfgNode()) and g.controlsBlock(result.asCfgNode().getBasicBlock(), branch) ) } } +/** + * Provides a set of barrier nodes for a guard that validates a node as described by an external predicate. + * + * This is expected to be used in `isBarrier`/`isSanitizer` definitions + * in data flow and taint tracking. + */ +module ExternalBarrierGuard { + private import semmle.python.ApiGraphs + + private predicate guardCheck(GuardNode g, ControlFlowNode node, boolean branch, string kind) { + exists(API::CallNode call, API::Node parameter | + parameter = call.getAParameter() and + parameter = ModelOutput::getABarrierGuardNode(kind, branch) + | + g = call.asCfgNode() and + node = parameter.asSink().asCfgNode() + ) + } + + /** Gets a node that is an external barrier of the given kind. */ + ExprNode getAnExternalBarrierNode(string kind) { + result = ParameterizedBarrierGuard::getABarrierNode(kind) + } +} + /** * Algebraic datatype for tracking data content associated with values. * Content can be collection elements or object attributes. diff --git a/python/ql/lib/semmle/python/frameworks/Django.model.yml b/python/ql/lib/semmle/python/frameworks/Django.model.yml new file mode 100644 index 000000000000..4e472af6c117 --- /dev/null +++ b/python/ql/lib/semmle/python/frameworks/Django.model.yml @@ -0,0 +1,6 @@ +extensions: + - addsTo: + pack: codeql/python-all + extensible: barrierGuardModel + data: + - ['django', 'Member[utils].Member[http].Member[url_has_allowed_host_and_scheme].Argument[0,url:]', "true", 'url-redirection'] diff --git a/python/ql/lib/semmle/python/frameworks/data/ModelsAsData.qll b/python/ql/lib/semmle/python/frameworks/data/ModelsAsData.qll index 11c6b285f2aa..719b93592390 100644 --- a/python/ql/lib/semmle/python/frameworks/data/ModelsAsData.qll +++ b/python/ql/lib/semmle/python/frameworks/data/ModelsAsData.qll @@ -24,9 +24,9 @@ private import semmle.python.Concepts * A threat-model flow source originating from a data extension. */ private class ThreatModelSourceFromDataExtension extends ThreatModelSource::Range { - ThreatModelSourceFromDataExtension() { this = ModelOutput::getASourceNode(_).asSource() } + ThreatModelSourceFromDataExtension() { ModelOutput::sourceNode(this, _) } - override string getThreatModel() { this = ModelOutput::getASourceNode(result).asSource() } + override string getThreatModel() { ModelOutput::sourceNode(this, result) } override string getSourceType() { result = "Source node (" + this.getThreatModel() + ") [from data-extension]" diff --git a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll index 68f2210bff28..19b5a0e01a96 100644 --- a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll +++ b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll @@ -344,6 +344,26 @@ private predicate sinkModel(string type, string path, string kind, string model) ) } +/** Holds if a barrier model exists for the given parameters. */ +private predicate barrierModel(string type, string path, string kind, string model) { + // No deprecation adapter for barrier models, they were not around back then. + exists(QlBuiltins::ExtensionId madId | + Extensions::barrierModel(type, path, kind, madId) and + model = "MaD:" + madId.toString() + ) +} + +/** Holds if a barrier guard model exists for the given parameters. */ +private predicate barrierGuardModel( + string type, string path, string branch, string kind, string model +) { + // No deprecation adapter for barrier models, they were not around back then. + exists(QlBuiltins::ExtensionId madId | + Extensions::barrierGuardModel(type, path, branch, kind, madId) and + model = "MaD:" + madId.toString() + ) +} + /** Holds if a summary model `row` exists for the given parameters. */ private predicate summaryModel( string type, string path, string input, string output, string kind, string model @@ -400,6 +420,8 @@ predicate isRelevantType(string type) { ( sourceModel(type, _, _, _) or sinkModel(type, _, _, _) or + barrierModel(type, _, _, _) or + barrierGuardModel(type, _, _, _, _) or summaryModel(type, _, _, _, _, _) or typeModel(_, type, _) ) and @@ -427,6 +449,8 @@ predicate isRelevantFullPath(string type, string path) { ( sourceModel(type, path, _, _) or sinkModel(type, path, _, _) or + barrierModel(type, path, _, _) or + barrierGuardModel(type, path, _, _, _) or summaryModel(type, path, _, _, _, _) or typeModel(_, type, path) ) @@ -747,6 +771,32 @@ module ModelOutput { ) } + /** + * Holds if a barrier model contributed `barrier` with the given `kind`. + */ + cached + API::Node getABarrierNode(string kind, string model) { + exists(string type, string path | + barrierModel(type, path, kind, model) and + result = getNodeFromPath(type, path) + ) + } + + /** + * Holds if a barrier model contributed `barrier` with the given `kind` for the given `branch`. + */ + cached + API::Node getABarrierGuardNode(string kind, boolean branch, string model) { + exists(string type, string path, string branch_str | + branch = true and branch_str = "true" + or + branch = false and branch_str = "false" + | + barrierGuardModel(type, path, branch_str, kind, model) and + result = getNodeFromPath(type, path) + ) + } + /** * Holds if a relevant summary exists for these parameters. */ @@ -789,15 +839,46 @@ module ModelOutput { private import codeql.mad.ModelValidation as SharedModelVal /** - * Holds if a CSV source model contributed `source` with the given `kind`. + * Holds if an external model contributed `source` with the given `kind`. */ API::Node getASourceNode(string kind) { result = getASourceNode(kind, _) } /** - * Holds if a CSV sink model contributed `sink` with the given `kind`. + * Holds if an external model contributed `sink` with the given `kind`. */ API::Node getASinkNode(string kind) { result = getASinkNode(kind, _) } + /** + * Holds if an external model contributed `barrier` with the given `kind`. + */ + API::Node getABarrierNode(string kind) { result = getABarrierNode(kind, _) } + + /** + * Holds if an external model contributed `barrier-guard` with the given `kind` and `branch`. + */ + API::Node getABarrierGuardNode(string kind, boolean branch) { + result = getABarrierGuardNode(kind, branch, _) + } + + /** + * Holds if `node` is specified as a source with the given kind in an external model. + */ + predicate sourceNode(DataFlow::Node node, string kind) { node = getASourceNode(kind).asSource() } + + /** + * Holds if `node` is specified as a sink with the given kind in an external model. + */ + predicate sinkNode(DataFlow::Node node, string kind) { node = getASinkNode(kind).asSink() } + + /** + * Holds if `node` is specified as a barrier with the given kind in an external model. + */ + predicate barrierNode(DataFlow::Node node, string kind) { + node = getABarrierNode(kind).asSource() + or + node = DataFlow::ExternalBarrierGuard::getAnExternalBarrierNode(kind) + } + private module KindValConfig implements SharedModelVal::KindValidationConfigSig { predicate summaryKind(string kind) { summaryModel(_, _, _, _, kind, _) } diff --git a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModelsExtensions.qll b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModelsExtensions.qll index 3f38c498f324..2a644aabb95d 100644 --- a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModelsExtensions.qll +++ b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModelsExtensions.qll @@ -20,6 +20,26 @@ extensible predicate sourceModel( */ extensible predicate sinkModel(string type, string path, string kind, QlBuiltins::ExtensionId madId); +/** + * Holds if the value at `(type, path)` should be seen as a barrier + * of the given `kind` and `madId` is the data extension row number. + */ +extensible predicate barrierModel( + string type, string path, string kind, QlBuiltins::ExtensionId madId +); + +/** + * Holds if the value at `(type, path)` should be seen as a barrier guard + * of the given `kind` and `madId` is the data extension row number. + * `path` is assumed to lead to a parameter of a call (possibly `self`), and + * the call is guarding the parameter. + * `branch` is either `true` or `false`, indicating which branch of the guard + * is protecting the parameter. + */ +extensible predicate barrierGuardModel( + string type, string path, string branch, string kind, QlBuiltins::ExtensionId madId +); + /** * Holds if in calls to `(type, path)`, the value referred to by `input` * can flow to the value referred to by `output` and `madId` is the data diff --git a/python/ql/lib/semmle/python/frameworks/data/internal/empty.model.yml b/python/ql/lib/semmle/python/frameworks/data/internal/empty.model.yml index ea9b9fce546b..a7529031c29f 100644 --- a/python/ql/lib/semmle/python/frameworks/data/internal/empty.model.yml +++ b/python/ql/lib/semmle/python/frameworks/data/internal/empty.model.yml @@ -11,6 +11,16 @@ extensions: extensible: sinkModel data: [] + - addsTo: + pack: codeql/python-all + extensible: barrierModel + data: [] + + - addsTo: + pack: codeql/python-all + extensible: barrierGuardModel + data: [] + - addsTo: pack: codeql/python-all extensible: summaryModel diff --git a/python/ql/lib/semmle/python/security/dataflow/CodeInjectionCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/CodeInjectionCustomizations.qll index a7c2ad90a35a..5878245ed104 100644 --- a/python/ql/lib/semmle/python/security/dataflow/CodeInjectionCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/CodeInjectionCustomizations.qll @@ -50,7 +50,7 @@ module CodeInjection { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("code-injection").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "code-injection") } } /** diff --git a/python/ql/lib/semmle/python/security/dataflow/CommandInjectionCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/CommandInjectionCustomizations.qll index 83f6ccff0a51..0bfd6494a1cd 100644 --- a/python/ql/lib/semmle/python/security/dataflow/CommandInjectionCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/CommandInjectionCustomizations.qll @@ -85,7 +85,7 @@ module CommandInjection { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("command-injection").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "command-injection") } } /** diff --git a/python/ql/lib/semmle/python/security/dataflow/LogInjectionCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/LogInjectionCustomizations.qll index 40aa83e17443..59e52f0ab0a9 100644 --- a/python/ql/lib/semmle/python/security/dataflow/LogInjectionCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/LogInjectionCustomizations.qll @@ -78,7 +78,7 @@ module LogInjection { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("log-injection").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "log-injection") } } /** diff --git a/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll index 8b8e2f696739..e2399d49c0b8 100644 --- a/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll @@ -88,7 +88,7 @@ module PathInjection { private import semmle.python.frameworks.data.ModelsAsData private class DataAsFileSink extends Sink { - DataAsFileSink() { this = ModelOutput::getASinkNode("path-injection").asSink() } + DataAsFileSink() { ModelOutput::sinkNode(this, "path-injection") } } /** diff --git a/python/ql/lib/semmle/python/security/dataflow/ReflectedXSSCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/ReflectedXSSCustomizations.qll index 14db509df2f3..58e5adc86605 100644 --- a/python/ql/lib/semmle/python/security/dataflow/ReflectedXSSCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/ReflectedXSSCustomizations.qll @@ -46,9 +46,7 @@ module ReflectedXss { * A data flow sink for "reflected cross-site scripting" vulnerabilities. */ private class SinkFromModel extends Sink { - SinkFromModel() { - this = ModelOutput::getASinkNode(["html-injection", "js-injection"]).asSink() - } + SinkFromModel() { ModelOutput::sinkNode(this, ["html-injection", "js-injection"]) } } /** diff --git a/python/ql/lib/semmle/python/security/dataflow/SqlInjectionCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/SqlInjectionCustomizations.qll index b614eaeebec4..4118732e8dae 100644 --- a/python/ql/lib/semmle/python/security/dataflow/SqlInjectionCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/SqlInjectionCustomizations.qll @@ -67,6 +67,6 @@ module SqlInjection { /** A sink for sql-injection from model data. */ private class DataAsSqlSink extends Sink { - DataAsSqlSink() { this = ModelOutput::getASinkNode("sql-injection").asSink() } + DataAsSqlSink() { ModelOutput::sinkNode(this, "sql-injection") } } } diff --git a/python/ql/lib/semmle/python/security/dataflow/UnsafeDeserializationCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/UnsafeDeserializationCustomizations.qll index d71d36279b50..074677ee1dc2 100644 --- a/python/ql/lib/semmle/python/security/dataflow/UnsafeDeserializationCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/UnsafeDeserializationCustomizations.qll @@ -55,7 +55,7 @@ module UnsafeDeserialization { } private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("unsafe-deserialization").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "unsafe-deserialization") } } /** diff --git a/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll index f5810944f8d9..1f718e478a1e 100644 --- a/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll @@ -7,6 +7,7 @@ private import python private import semmle.python.dataflow.new.DataFlow private import semmle.python.Concepts +private import semmle.python.ApiGraphs private import semmle.python.dataflow.new.RemoteFlowSources private import semmle.python.dataflow.new.BarrierGuards private import semmle.python.frameworks.data.ModelsAsData @@ -95,8 +96,11 @@ module UrlRedirect { } } + /** + * A sink for URL redirection defined via models-as-data. + */ private class SinkFromModel extends Sink { - SinkFromModel() { this = ModelOutput::getASinkNode("url-redirection").asSink() } + SinkFromModel() { ModelOutput::sinkNode(this, "url-redirection") } } /** @@ -156,4 +160,18 @@ module UrlRedirect { /** DEPRECATED: Use ConstCompareAsSanitizerGuard instead. */ deprecated class StringConstCompareAsSanitizerGuard = ConstCompareAsSanitizerGuard; + + /** + * A sanitizer defined via models-as-data with kind "url-redirection". + */ + class SanitizerFromModel extends Sanitizer { + SanitizerFromModel() { + this = DataFlow::ExternalBarrierGuard::getAnExternalBarrierNode("url-redirection") + } + + override predicate sanitizes(FlowState state) { + // sanitize all flow states + any() + } + } } diff --git a/python/ql/src/Security/CWE-798/HardcodedCredentials.ql b/python/ql/src/Security/CWE-798/HardcodedCredentials.ql index d08223a553bd..97b1f2fba1c9 100644 --- a/python/ql/src/Security/CWE-798/HardcodedCredentials.ql +++ b/python/ql/src/Security/CWE-798/HardcodedCredentials.ql @@ -83,7 +83,7 @@ class CredentialSink extends DataFlow::Node { CredentialSink() { exists(string s | s.matches("credentials-%") | // Actual sink-type will be things like `credentials-password` or `credentials-username` - this = ModelOutput::getASinkNode(s).asSink() + ModelOutput::sinkNode(this, s) ) or exists(string name | diff --git a/python/ql/test/experimental/meta/MaDTest.qll b/python/ql/test/experimental/meta/MaDTest.qll index 705785d796c7..10403eb67183 100644 --- a/python/ql/test/experimental/meta/MaDTest.qll +++ b/python/ql/test/experimental/meta/MaDTest.qll @@ -17,7 +17,7 @@ module MadSinkTest implements TestSig { predicate hasActualResult(Location location, string element, string tag, string value) { exists(location.getFile().getRelativePath()) and exists(DataFlow::Node sink, string kind | - sink = ModelOutput::getASinkNode(kind).asSink() and + ModelOutput::sinkNode(sink, kind) and location = sink.getLocation() and element = sink.toString() and value = prettyNodeForInlineTest(sink) and @@ -34,7 +34,7 @@ module MadSourceTest implements TestSig { predicate hasActualResult(Location location, string element, string tag, string value) { exists(location.getFile().getRelativePath()) and exists(DataFlow::Node source, string kind | - source = ModelOutput::getASourceNode(kind).asSource() and + ModelOutput::sourceNode(source, kind) and location = source.getLocation() and element = source.toString() and value = prettyNodeForInlineTest(source) and diff --git a/python/ql/test/experimental/query-tests/Security/CWE-022-UnsafeUnpacking/UnsafeUnpack.expected b/python/ql/test/experimental/query-tests/Security/CWE-022-UnsafeUnpacking/UnsafeUnpack.expected index 0f334d45ea83..69bb8d30e8f4 100644 --- a/python/ql/test/experimental/query-tests/Security/CWE-022-UnsafeUnpacking/UnsafeUnpack.expected +++ b/python/ql/test/experimental/query-tests/Security/CWE-022-UnsafeUnpacking/UnsafeUnpack.expected @@ -75,7 +75,7 @@ edges | UnsafeUnpack.py:161:19:161:21 | ControlFlowNode for tar | UnsafeUnpack.py:163:33:163:35 | ControlFlowNode for tar | provenance | | | UnsafeUnpack.py:161:25:161:46 | ControlFlowNode for Attribute() | UnsafeUnpack.py:161:19:161:21 | ControlFlowNode for tar | provenance | | | UnsafeUnpack.py:161:38:161:45 | ControlFlowNode for savepath | UnsafeUnpack.py:161:25:161:46 | ControlFlowNode for Attribute() | provenance | Config | -| UnsafeUnpack.py:161:38:161:45 | ControlFlowNode for savepath | UnsafeUnpack.py:161:25:161:46 | ControlFlowNode for Attribute() | provenance | MaD:69 | +| UnsafeUnpack.py:161:38:161:45 | ControlFlowNode for savepath | UnsafeUnpack.py:161:25:161:46 | ControlFlowNode for Attribute() | provenance | MaD:70 | | UnsafeUnpack.py:163:23:163:28 | ControlFlowNode for member | UnsafeUnpack.py:166:37:166:42 | ControlFlowNode for member | provenance | | | UnsafeUnpack.py:163:33:163:35 | ControlFlowNode for tar | UnsafeUnpack.py:163:23:163:28 | ControlFlowNode for member | provenance | | | UnsafeUnpack.py:166:23:166:28 | [post] ControlFlowNode for result | UnsafeUnpack.py:167:67:167:72 | ControlFlowNode for result | provenance | | diff --git a/python/ql/test/experimental/query-tests/Security/CWE-409/DecompressionBombs.expected b/python/ql/test/experimental/query-tests/Security/CWE-409/DecompressionBombs.expected index 17c28aa1d95d..e32edeb702bb 100644 --- a/python/ql/test/experimental/query-tests/Security/CWE-409/DecompressionBombs.expected +++ b/python/ql/test/experimental/query-tests/Security/CWE-409/DecompressionBombs.expected @@ -1,23 +1,23 @@ edges | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:11:21:11:29 | ControlFlowNode for file_path | provenance | | | test.py:11:5:11:35 | ControlFlowNode for Attribute() | test.py:11:5:11:52 | ControlFlowNode for Attribute() | provenance | Config | -| test.py:11:21:11:29 | ControlFlowNode for file_path | test.py:11:5:11:35 | ControlFlowNode for Attribute() | provenance | MaD:86 | +| test.py:11:21:11:29 | ControlFlowNode for file_path | test.py:11:5:11:35 | ControlFlowNode for Attribute() | provenance | MaD:87 | | test.py:11:21:11:29 | ControlFlowNode for file_path | test.py:11:5:11:52 | ControlFlowNode for Attribute() | provenance | Config | | test.py:11:21:11:29 | ControlFlowNode for file_path | test.py:12:21:12:29 | ControlFlowNode for file_path | provenance | | | test.py:12:5:12:35 | ControlFlowNode for Attribute() | test.py:12:5:12:48 | ControlFlowNode for Attribute() | provenance | Config | -| test.py:12:21:12:29 | ControlFlowNode for file_path | test.py:12:5:12:35 | ControlFlowNode for Attribute() | provenance | MaD:86 | +| test.py:12:21:12:29 | ControlFlowNode for file_path | test.py:12:5:12:35 | ControlFlowNode for Attribute() | provenance | MaD:87 | | test.py:12:21:12:29 | ControlFlowNode for file_path | test.py:12:5:12:48 | ControlFlowNode for Attribute() | provenance | Config | | test.py:12:21:12:29 | ControlFlowNode for file_path | test.py:14:26:14:34 | ControlFlowNode for file_path | provenance | | | test.py:14:10:14:35 | ControlFlowNode for Attribute() | test.py:15:14:15:29 | ControlFlowNode for Attribute() | provenance | Config | -| test.py:14:26:14:34 | ControlFlowNode for file_path | test.py:14:10:14:35 | ControlFlowNode for Attribute() | provenance | MaD:86 | +| test.py:14:26:14:34 | ControlFlowNode for file_path | test.py:14:10:14:35 | ControlFlowNode for Attribute() | provenance | MaD:87 | | test.py:14:26:14:34 | ControlFlowNode for file_path | test.py:15:14:15:29 | ControlFlowNode for Attribute() | provenance | Config | | test.py:14:26:14:34 | ControlFlowNode for file_path | test.py:18:26:18:34 | ControlFlowNode for file_path | provenance | | | test.py:18:10:18:35 | ControlFlowNode for Attribute() | test.py:19:14:19:39 | ControlFlowNode for Attribute() | provenance | Config | -| test.py:18:26:18:34 | ControlFlowNode for file_path | test.py:18:10:18:35 | ControlFlowNode for Attribute() | provenance | MaD:86 | +| test.py:18:26:18:34 | ControlFlowNode for file_path | test.py:18:10:18:35 | ControlFlowNode for Attribute() | provenance | MaD:87 | | test.py:18:26:18:34 | ControlFlowNode for file_path | test.py:19:14:19:39 | ControlFlowNode for Attribute() | provenance | Config | | test.py:18:26:18:34 | ControlFlowNode for file_path | test.py:22:21:22:29 | ControlFlowNode for file_path | provenance | | | test.py:22:5:22:30 | ControlFlowNode for Attribute() | test.py:22:5:22:60 | ControlFlowNode for Attribute() | provenance | Config | -| test.py:22:21:22:29 | ControlFlowNode for file_path | test.py:22:5:22:30 | ControlFlowNode for Attribute() | provenance | MaD:86 | +| test.py:22:21:22:29 | ControlFlowNode for file_path | test.py:22:5:22:30 | ControlFlowNode for Attribute() | provenance | MaD:87 | | test.py:22:21:22:29 | ControlFlowNode for file_path | test.py:22:5:22:60 | ControlFlowNode for Attribute() | provenance | Config | | test.py:22:21:22:29 | ControlFlowNode for file_path | test.py:24:18:24:26 | ControlFlowNode for file_path | provenance | | | test.py:24:18:24:26 | ControlFlowNode for file_path | test.py:24:5:24:52 | ControlFlowNode for Attribute() | provenance | Config | diff --git a/python/ql/test/library-tests/frameworks/data/test.ql b/python/ql/test/library-tests/frameworks/data/test.ql index 701c74f12464..c06365dc7689 100644 --- a/python/ql/test/library-tests/frameworks/data/test.ql +++ b/python/ql/test/library-tests/frameworks/data/test.ql @@ -6,11 +6,9 @@ import semmle.python.dataflow.new.DataFlow private import semmle.python.ApiGraphs module BasicTaintTrackingConfig implements DataFlow::ConfigSig { - predicate isSource(DataFlow::Node source) { - source = ModelOutput::getASourceNode("test-source").asSource() - } + predicate isSource(DataFlow::Node source) { ModelOutput::sourceNode(source, "test-source") } - predicate isSink(DataFlow::Node sink) { sink = ModelOutput::getASinkNode("test-sink").asSink() } + predicate isSink(DataFlow::Node sink) { ModelOutput::sinkNode(sink, "test-sink") } } module TestTaintTrackingFlow = TaintTracking::Global; @@ -19,13 +17,9 @@ query predicate taintFlow(DataFlow::Node source, DataFlow::Node sink) { TestTaintTrackingFlow::flow(source, sink) } -query predicate isSink(DataFlow::Node node, string kind) { - node = ModelOutput::getASinkNode(kind).asSink() -} +query predicate isSink(DataFlow::Node node, string kind) { ModelOutput::sinkNode(node, kind) } -query predicate isSource(DataFlow::Node node, string kind) { - node = ModelOutput::getASourceNode(kind).asSource() -} +query predicate isSource(DataFlow::Node node, string kind) { ModelOutput::sourceNode(node, kind) } query predicate syntaxErrors(ApiGraphModels::AccessPath path) { path.hasSyntaxError() } diff --git a/python/ql/test/query-tests/Security/CWE-089-SqlInjection-local-threat-model/SqlInjection.expected b/python/ql/test/query-tests/Security/CWE-089-SqlInjection-local-threat-model/SqlInjection.expected index 1e4ba8b95305..d59e639d641b 100644 --- a/python/ql/test/query-tests/Security/CWE-089-SqlInjection-local-threat-model/SqlInjection.expected +++ b/python/ql/test/query-tests/Security/CWE-089-SqlInjection-local-threat-model/SqlInjection.expected @@ -1,5 +1,5 @@ edges -| test.py:6:14:6:21 | ControlFlowNode for Attribute | test.py:6:14:6:24 | ControlFlowNode for Subscript | provenance | Src:MaD:17 | +| test.py:6:14:6:21 | ControlFlowNode for Attribute | test.py:6:14:6:24 | ControlFlowNode for Subscript | provenance | Src:MaD:18 | nodes | test.py:6:14:6:21 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute | | test.py:6:14:6:24 | ControlFlowNode for Subscript | semmle.label | ControlFlowNode for Subscript | diff --git a/python/ql/test/query-tests/Security/CWE-113-HeaderInjection/Tests1/HeaderInjection.expected b/python/ql/test/query-tests/Security/CWE-113-HeaderInjection/Tests1/HeaderInjection.expected index cea505fe39db..6c5f8363c487 100644 --- a/python/ql/test/query-tests/Security/CWE-113-HeaderInjection/Tests1/HeaderInjection.expected +++ b/python/ql/test/query-tests/Security/CWE-113-HeaderInjection/Tests1/HeaderInjection.expected @@ -14,10 +14,10 @@ edges | http_test.py:5:16:5:19 | ControlFlowNode for self | http_test.py:6:45:6:53 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | http_test.py:6:9:6:19 | ControlFlowNode for parsed_path | http_test.py:7:40:7:56 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | http_test.py:6:23:6:54 | ControlFlowNode for Attribute() | http_test.py:6:9:6:19 | ControlFlowNode for parsed_path | provenance | | -| http_test.py:6:45:6:53 | ControlFlowNode for Attribute | http_test.py:6:23:6:54 | ControlFlowNode for Attribute() | provenance | MaD:77 | +| http_test.py:6:45:6:53 | ControlFlowNode for Attribute | http_test.py:6:23:6:54 | ControlFlowNode for Attribute() | provenance | MaD:78 | | http_test.py:7:9:7:14 | ControlFlowNode for params | http_test.py:8:23:8:28 | ControlFlowNode for params | provenance | | | http_test.py:7:18:7:57 | ControlFlowNode for Attribute() | http_test.py:7:9:7:14 | ControlFlowNode for params | provenance | | -| http_test.py:7:40:7:56 | ControlFlowNode for Attribute | http_test.py:7:18:7:57 | ControlFlowNode for Attribute() | provenance | MaD:76 | +| http_test.py:7:40:7:56 | ControlFlowNode for Attribute | http_test.py:7:18:7:57 | ControlFlowNode for Attribute() | provenance | MaD:77 | | http_test.py:8:9:8:19 | ControlFlowNode for input_value | http_test.py:12:40:12:50 | ControlFlowNode for input_value | provenance | | | http_test.py:8:23:8:28 | ControlFlowNode for params | http_test.py:8:23:8:47 | ControlFlowNode for Attribute() | provenance | dict.get | | http_test.py:8:23:8:47 | ControlFlowNode for Attribute() | http_test.py:8:9:8:19 | ControlFlowNode for input_value | provenance | | diff --git a/python/ql/test/query-tests/Security/CWE-601-UrlRedirect/UrlRedirect.expected b/python/ql/test/query-tests/Security/CWE-601-UrlRedirect/UrlRedirect.expected index d7c891b46349..551299a64dc4 100644 --- a/python/ql/test/query-tests/Security/CWE-601-UrlRedirect/UrlRedirect.expected +++ b/python/ql/test/query-tests/Security/CWE-601-UrlRedirect/UrlRedirect.expected @@ -52,7 +52,6 @@ edges | test.py:81:17:81:46 | ControlFlowNode for Attribute() | test.py:81:5:81:13 | ControlFlowNode for untrusted | provenance | | | test.py:82:5:82:10 | ControlFlowNode for unsafe | test.py:83:21:83:26 | ControlFlowNode for unsafe | provenance | | | test.py:90:5:90:13 | ControlFlowNode for untrusted | test.py:93:18:93:26 | ControlFlowNode for untrusted | provenance | | -| test.py:90:5:90:13 | ControlFlowNode for untrusted | test.py:95:25:95:33 | ControlFlowNode for untrusted | provenance | | | test.py:90:17:90:23 | ControlFlowNode for request | test.py:90:17:90:28 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | test.py:90:17:90:28 | ControlFlowNode for Attribute | test.py:90:17:90:46 | ControlFlowNode for Attribute() | provenance | dict.get | | test.py:90:17:90:46 | ControlFlowNode for Attribute() | test.py:90:5:90:13 | ControlFlowNode for untrusted | provenance | | @@ -123,7 +122,6 @@ nodes | test.py:90:17:90:28 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute | | test.py:90:17:90:46 | ControlFlowNode for Attribute() | semmle.label | ControlFlowNode for Attribute() | | test.py:93:18:93:26 | ControlFlowNode for untrusted | semmle.label | ControlFlowNode for untrusted | -| test.py:95:25:95:33 | ControlFlowNode for untrusted | semmle.label | ControlFlowNode for untrusted | | test.py:111:5:111:13 | ControlFlowNode for untrusted | semmle.label | ControlFlowNode for untrusted | | test.py:111:17:111:23 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | | test.py:111:17:111:28 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute | @@ -150,7 +148,6 @@ subpaths | test.py:76:21:76:26 | ControlFlowNode for unsafe | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:76:21:76:26 | ControlFlowNode for unsafe | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test.py:83:21:83:26 | ControlFlowNode for unsafe | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:83:21:83:26 | ControlFlowNode for unsafe | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test.py:93:18:93:26 | ControlFlowNode for untrusted | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:93:18:93:26 | ControlFlowNode for untrusted | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | -| test.py:95:25:95:33 | ControlFlowNode for untrusted | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:95:25:95:33 | ControlFlowNode for untrusted | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test.py:114:25:114:33 | ControlFlowNode for untrusted | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:114:25:114:33 | ControlFlowNode for untrusted | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test.py:140:25:140:33 | ControlFlowNode for untrusted | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:140:25:140:33 | ControlFlowNode for untrusted | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test.py:148:25:148:33 | ControlFlowNode for untrusted | test.py:1:26:1:32 | ControlFlowNode for ImportMember | test.py:148:25:148:33 | ControlFlowNode for untrusted | Untrusted URL redirection depends on a $@. | test.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | diff --git a/ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowPublic.qll b/ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowPublic.qll index 3be4fdbcfe89..10d5a6621518 100644 --- a/ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowPublic.qll +++ b/ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowPublic.qll @@ -927,6 +927,85 @@ module BarrierGuard { } } +bindingset[this] +private signature class ParamSig; + +private module WithParam { + /** + * Holds if the guard `g` validates the expression `e` upon evaluating to `branch`. + * + * The expression `e` is expected to be a syntactic part of the guard `g`. + * For example, the guard `g` might be a call `isSafe(x)` and the expression `e` + * the argument `x`. + */ + signature predicate guardChecksSig(CfgNodes::AstCfgNode g, CfgNode e, boolean branch, P param); +} + +/** + * Provides a set of barrier nodes for a guard that validates a node. + * + * This is expected to be used in `isBarrier`/`isSanitizer` definitions + * in data flow and taint tracking. + */ +module ParameterizedBarrierGuard::guardChecksSig/4 guardChecks> { + private import codeql.ruby.controlflow.internal.Guards + + /** + * Gets an implicit entry definition for a captured variable that + * may be guarded, because a call to the capturing callable is guarded. + * + * This is restricted to calls where the variable is captured inside a + * block. + */ + pragma[nomagic] + private Ssa::CapturedEntryDefinition getAMaybeGuardedCapturedDef(P param) { + exists( + CfgNodes::ExprCfgNode g, boolean branch, CfgNodes::ExprCfgNode testedNode, + Ssa::Definition def, CfgNodes::ExprNodes::CallCfgNode call + | + def.getARead() = testedNode and + guardChecks(g, testedNode, branch, param) and + guardControlsBlock(g, call.getBasicBlock(), branch) and + result.getBasicBlock().getScope() = call.getExpr().(MethodCall).getBlock() and + sameSourceVariable(def, result) + ) + } + + /** Gets a node that is safely guarded by the given guard check. */ + Node getABarrierNode(P param) { + SsaFlow::asNode(result) = + SsaImpl::DataFlowIntegration::ParameterizedBarrierGuard::getABarrierNode(param) + or + result.asExpr() = getAMaybeGuardedCapturedDef(param).getARead() + } +} + +/** + * Provides a set of barrier nodes for a guard that validates a node as described by an external predicate. + * + * This is expected to be used in `isBarrier`/`isSanitizer` definitions + * in data flow and taint tracking. + */ +module ExternalBarrierGuard { + private import codeql.ruby.frameworks.data.ModelsAsData + + private predicate guardCheck(CfgNodes::AstCfgNode g, CfgNode e, boolean branch, string kind) { + // (GuardNode g, ControlFlowNode node, boolean branch, string kind) { + exists(API::Node call, API::Node parameter | + parameter.asSink() = call.asCall().getArgument(_) and + parameter = ModelOutput::getABarrierGuardNode(kind, branch) + | + g = call.asCall().asExpr() and + e = parameter.asSink().asExpr() + ) + } + + /** Gets a node that is an external barrier of the given kind. */ + ExprNode getAnExternalBarrierNode(string kind) { + result = ParameterizedBarrierGuard::getABarrierNode(kind) + } +} + /** * A representation of a run-time module or class. * diff --git a/ruby/ql/lib/codeql/ruby/dataflow/internal/SsaImpl.qll b/ruby/ql/lib/codeql/ruby/dataflow/internal/SsaImpl.qll index 029d4c530601..1856d03c1190 100644 --- a/ruby/ql/lib/codeql/ruby/dataflow/internal/SsaImpl.qll +++ b/ruby/ql/lib/codeql/ruby/dataflow/internal/SsaImpl.qll @@ -403,6 +403,33 @@ private module Cached { predicate getABarrierNode = getABarrierNodeImpl/0; } + + bindingset[this] + private signature class ParamSig; + + private module WithParam { + signature predicate guardChecksSig( + Cfg::CfgNodes::AstCfgNode g, Cfg::CfgNode e, boolean branch, P param + ); + } + + overlay[global] + cached // nothing is actually cached + module ParameterizedBarrierGuard::guardChecksSig/4 guardChecks> { + private predicate guardChecksAdjTypes( + DataFlowIntegrationInput::Guard g, DataFlowIntegrationInput::Expr e, + DataFlowIntegrationInput::GuardValue branch, P param + ) { + guardChecks(g, e, branch, param) + } + + private Node getABarrierNodeImpl(P param) { + result = + DataFlowIntegrationImpl::BarrierGuardWithState::getABarrierNode(param) + } + + predicate getABarrierNode = getABarrierNodeImpl/1; + } } } diff --git a/ruby/ql/lib/codeql/ruby/frameworks/data/ModelsAsData.qll b/ruby/ql/lib/codeql/ruby/frameworks/data/ModelsAsData.qll index 4d57191dc1ed..a8f72895b0b5 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/data/ModelsAsData.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/data/ModelsAsData.qll @@ -27,7 +27,7 @@ private import codeql.ruby.dataflow.FlowSummary * A remote flow source originating from a CSV source row. */ private class RemoteFlowSourceFromCsv extends RemoteFlowSource::Range { - RemoteFlowSourceFromCsv() { this = ModelOutput::getASourceNode("remote").asSource() } + RemoteFlowSourceFromCsv() { ModelOutput::sourceNode(this, "remote") } override string getSourceType() { result = "Remote flow (from model)" } } diff --git a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll index 68f2210bff28..19b5a0e01a96 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll @@ -344,6 +344,26 @@ private predicate sinkModel(string type, string path, string kind, string model) ) } +/** Holds if a barrier model exists for the given parameters. */ +private predicate barrierModel(string type, string path, string kind, string model) { + // No deprecation adapter for barrier models, they were not around back then. + exists(QlBuiltins::ExtensionId madId | + Extensions::barrierModel(type, path, kind, madId) and + model = "MaD:" + madId.toString() + ) +} + +/** Holds if a barrier guard model exists for the given parameters. */ +private predicate barrierGuardModel( + string type, string path, string branch, string kind, string model +) { + // No deprecation adapter for barrier models, they were not around back then. + exists(QlBuiltins::ExtensionId madId | + Extensions::barrierGuardModel(type, path, branch, kind, madId) and + model = "MaD:" + madId.toString() + ) +} + /** Holds if a summary model `row` exists for the given parameters. */ private predicate summaryModel( string type, string path, string input, string output, string kind, string model @@ -400,6 +420,8 @@ predicate isRelevantType(string type) { ( sourceModel(type, _, _, _) or sinkModel(type, _, _, _) or + barrierModel(type, _, _, _) or + barrierGuardModel(type, _, _, _, _) or summaryModel(type, _, _, _, _, _) or typeModel(_, type, _) ) and @@ -427,6 +449,8 @@ predicate isRelevantFullPath(string type, string path) { ( sourceModel(type, path, _, _) or sinkModel(type, path, _, _) or + barrierModel(type, path, _, _) or + barrierGuardModel(type, path, _, _, _) or summaryModel(type, path, _, _, _, _) or typeModel(_, type, path) ) @@ -747,6 +771,32 @@ module ModelOutput { ) } + /** + * Holds if a barrier model contributed `barrier` with the given `kind`. + */ + cached + API::Node getABarrierNode(string kind, string model) { + exists(string type, string path | + barrierModel(type, path, kind, model) and + result = getNodeFromPath(type, path) + ) + } + + /** + * Holds if a barrier model contributed `barrier` with the given `kind` for the given `branch`. + */ + cached + API::Node getABarrierGuardNode(string kind, boolean branch, string model) { + exists(string type, string path, string branch_str | + branch = true and branch_str = "true" + or + branch = false and branch_str = "false" + | + barrierGuardModel(type, path, branch_str, kind, model) and + result = getNodeFromPath(type, path) + ) + } + /** * Holds if a relevant summary exists for these parameters. */ @@ -789,15 +839,46 @@ module ModelOutput { private import codeql.mad.ModelValidation as SharedModelVal /** - * Holds if a CSV source model contributed `source` with the given `kind`. + * Holds if an external model contributed `source` with the given `kind`. */ API::Node getASourceNode(string kind) { result = getASourceNode(kind, _) } /** - * Holds if a CSV sink model contributed `sink` with the given `kind`. + * Holds if an external model contributed `sink` with the given `kind`. */ API::Node getASinkNode(string kind) { result = getASinkNode(kind, _) } + /** + * Holds if an external model contributed `barrier` with the given `kind`. + */ + API::Node getABarrierNode(string kind) { result = getABarrierNode(kind, _) } + + /** + * Holds if an external model contributed `barrier-guard` with the given `kind` and `branch`. + */ + API::Node getABarrierGuardNode(string kind, boolean branch) { + result = getABarrierGuardNode(kind, branch, _) + } + + /** + * Holds if `node` is specified as a source with the given kind in an external model. + */ + predicate sourceNode(DataFlow::Node node, string kind) { node = getASourceNode(kind).asSource() } + + /** + * Holds if `node` is specified as a sink with the given kind in an external model. + */ + predicate sinkNode(DataFlow::Node node, string kind) { node = getASinkNode(kind).asSink() } + + /** + * Holds if `node` is specified as a barrier with the given kind in an external model. + */ + predicate barrierNode(DataFlow::Node node, string kind) { + node = getABarrierNode(kind).asSource() + or + node = DataFlow::ExternalBarrierGuard::getAnExternalBarrierNode(kind) + } + private module KindValConfig implements SharedModelVal::KindValidationConfigSig { predicate summaryKind(string kind) { summaryModel(_, _, _, _, kind, _) } diff --git a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModelsExtensions.qll b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModelsExtensions.qll index 3f38c498f324..2a644aabb95d 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModelsExtensions.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModelsExtensions.qll @@ -20,6 +20,26 @@ extensible predicate sourceModel( */ extensible predicate sinkModel(string type, string path, string kind, QlBuiltins::ExtensionId madId); +/** + * Holds if the value at `(type, path)` should be seen as a barrier + * of the given `kind` and `madId` is the data extension row number. + */ +extensible predicate barrierModel( + string type, string path, string kind, QlBuiltins::ExtensionId madId +); + +/** + * Holds if the value at `(type, path)` should be seen as a barrier guard + * of the given `kind` and `madId` is the data extension row number. + * `path` is assumed to lead to a parameter of a call (possibly `self`), and + * the call is guarding the parameter. + * `branch` is either `true` or `false`, indicating which branch of the guard + * is protecting the parameter. + */ +extensible predicate barrierGuardModel( + string type, string path, string branch, string kind, QlBuiltins::ExtensionId madId +); + /** * Holds if in calls to `(type, path)`, the value referred to by `input` * can flow to the value referred to by `output` and `madId` is the data diff --git a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/empty.model.yml b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/empty.model.yml index b887eed7c1c5..ec68e8fcb380 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/empty.model.yml +++ b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/empty.model.yml @@ -16,6 +16,16 @@ extensions: extensible: summaryModel data: [] + - addsTo: + pack: codeql/ruby-all + extensible: barrierModel + data: [] + + - addsTo: + pack: codeql/ruby-all + extensible: barrierGuardModel + data: [] + - addsTo: pack: codeql/ruby-all extensible: neutralModel diff --git a/ruby/ql/lib/codeql/ruby/security/CodeInjectionCustomizations.qll b/ruby/ql/lib/codeql/ruby/security/CodeInjectionCustomizations.qll index fe08d83d6fb0..ca79a079a107 100644 --- a/ruby/ql/lib/codeql/ruby/security/CodeInjectionCustomizations.qll +++ b/ruby/ql/lib/codeql/ruby/security/CodeInjectionCustomizations.qll @@ -116,6 +116,6 @@ module CodeInjection { } private class ExternalCodeInjectionSink extends Sink { - ExternalCodeInjectionSink() { this = ModelOutput::getASinkNode("code-injection").asSink() } + ExternalCodeInjectionSink() { ModelOutput::sinkNode(this, "code-injection") } } } diff --git a/ruby/ql/lib/codeql/ruby/security/CommandInjectionCustomizations.qll b/ruby/ql/lib/codeql/ruby/security/CommandInjectionCustomizations.qll index 542049c88755..f36b72ae6b79 100644 --- a/ruby/ql/lib/codeql/ruby/security/CommandInjectionCustomizations.qll +++ b/ruby/ql/lib/codeql/ruby/security/CommandInjectionCustomizations.qll @@ -55,8 +55,6 @@ module CommandInjection { } private class ExternalCommandInjectionSink extends Sink { - ExternalCommandInjectionSink() { - this = ModelOutput::getASinkNode("command-injection").asSink() - } + ExternalCommandInjectionSink() { ModelOutput::sinkNode(this, "command-injection") } } } diff --git a/ruby/ql/lib/codeql/ruby/security/LogInjectionQuery.qll b/ruby/ql/lib/codeql/ruby/security/LogInjectionQuery.qll index 487dc31d4f0b..8111932c7df4 100644 --- a/ruby/ql/lib/codeql/ruby/security/LogInjectionQuery.qll +++ b/ruby/ql/lib/codeql/ruby/security/LogInjectionQuery.qll @@ -38,7 +38,7 @@ class LoggingSink extends Sink { } private class ExternalLogInjectionSink extends Sink { - ExternalLogInjectionSink() { this = ModelOutput::getASinkNode("log-injection").asSink() } + ExternalLogInjectionSink() { ModelOutput::sinkNode(this, "log-injection") } } /** diff --git a/ruby/ql/lib/codeql/ruby/security/PathInjectionCustomizations.qll b/ruby/ql/lib/codeql/ruby/security/PathInjectionCustomizations.qll index aa8c183db8bb..8a8b916f6275 100644 --- a/ruby/ql/lib/codeql/ruby/security/PathInjectionCustomizations.qll +++ b/ruby/ql/lib/codeql/ruby/security/PathInjectionCustomizations.qll @@ -55,6 +55,6 @@ module PathInjection { { } private class ExternalPathInjectionSink extends Sink { - ExternalPathInjectionSink() { this = ModelOutput::getASinkNode("path-injection").asSink() } + ExternalPathInjectionSink() { ModelOutput::sinkNode(this, "path-injection") } } } diff --git a/ruby/ql/lib/codeql/ruby/security/ServerSideRequestForgeryCustomizations.qll b/ruby/ql/lib/codeql/ruby/security/ServerSideRequestForgeryCustomizations.qll index 9fd20d9bc9d7..509900a12e15 100644 --- a/ruby/ql/lib/codeql/ruby/security/ServerSideRequestForgeryCustomizations.qll +++ b/ruby/ql/lib/codeql/ruby/security/ServerSideRequestForgeryCustomizations.qll @@ -44,6 +44,6 @@ module ServerSideRequestForgery { class StringInterpolationAsSanitizer extends PrefixedStringInterpolation, Sanitizer { } private class ExternalRequestForgerySink extends Sink { - ExternalRequestForgerySink() { this = ModelOutput::getASinkNode("request-forgery").asSink() } + ExternalRequestForgerySink() { ModelOutput::sinkNode(this, "request-forgery") } } } diff --git a/ruby/ql/lib/codeql/ruby/security/SqlInjectionCustomizations.qll b/ruby/ql/lib/codeql/ruby/security/SqlInjectionCustomizations.qll index 722730ae1b15..1bf14dc3b280 100644 --- a/ruby/ql/lib/codeql/ruby/security/SqlInjectionCustomizations.qll +++ b/ruby/ql/lib/codeql/ruby/security/SqlInjectionCustomizations.qll @@ -59,6 +59,6 @@ module SqlInjection { private class SqlSanitizationAsSanitizer extends Sanitizer, SqlSanitization { } private class ExternalSqlInjectionSink extends Sink { - ExternalSqlInjectionSink() { this = ModelOutput::getASinkNode("sql-injection").asSink() } + ExternalSqlInjectionSink() { ModelOutput::sinkNode(this, "sql-injection") } } } diff --git a/ruby/ql/lib/codeql/ruby/security/UrlRedirectCustomizations.qll b/ruby/ql/lib/codeql/ruby/security/UrlRedirectCustomizations.qll index bad046f921f6..4e02b3181e35 100644 --- a/ruby/ql/lib/codeql/ruby/security/UrlRedirectCustomizations.qll +++ b/ruby/ql/lib/codeql/ruby/security/UrlRedirectCustomizations.qll @@ -75,7 +75,7 @@ module UrlRedirect { } private class ExternalUrlRedirectSink extends Sink { - ExternalUrlRedirectSink() { this = ModelOutput::getASinkNode("url-redirection").asSink() } + ExternalUrlRedirectSink() { ModelOutput::sinkNode(this, "url-redirection") } } /** diff --git a/ruby/ql/test/library-tests/dataflow/summaries/Summaries.ql b/ruby/ql/test/library-tests/dataflow/summaries/Summaries.ql index 7b370496f0a6..36ef1e560760 100644 --- a/ruby/ql/test/library-tests/dataflow/summaries/Summaries.ql +++ b/ruby/ql/test/library-tests/dataflow/summaries/Summaries.ql @@ -80,7 +80,7 @@ module CustomConfig implements DataFlow::ConfigSig { predicate isSink(DataFlow::Node sink) { DefaultFlowConfig::isSink(sink) or - sink = ModelOutput::getASinkNode("test-sink").asSink() + ModelOutput::sinkNode(sink, "test-sink") } } From da2f77d6159bacad91d85040416e69561f2061e2 Mon Sep 17 00:00:00 2001 From: yoff Date: Mon, 19 Jan 2026 10:06:52 +0100 Subject: [PATCH 120/433] javascript: remove sanitizer to be replaced by model --- ...completeHtmlAttributeSanitizationCustomizations.qll | 10 ---------- .../IncompleteHtmlAttributeSanitization.expected | 7 +++++++ 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/IncompleteHtmlAttributeSanitizationCustomizations.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/IncompleteHtmlAttributeSanitizationCustomizations.qll index f421a92298f9..f237304be88b 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/IncompleteHtmlAttributeSanitizationCustomizations.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/IncompleteHtmlAttributeSanitizationCustomizations.qll @@ -100,14 +100,4 @@ module IncompleteHtmlAttributeSanitization { result = this.getQuote() } } - - /** - * An encoder for potentially malicious characters, as a sanitizer - * for incomplete HTML sanitization vulnerabilities. - */ - class EncodingSanitizer extends Sanitizer { - EncodingSanitizer() { - this = DataFlow::globalVarRef(["encodeURIComponent", "encodeURI"]).getACall() - } - } } diff --git a/javascript/ql/test/query-tests/Security/CWE-116/IncompleteSanitization/IncompleteHtmlAttributeSanitization.expected b/javascript/ql/test/query-tests/Security/CWE-116/IncompleteSanitization/IncompleteHtmlAttributeSanitization.expected index 3f1ac1685d79..171c7f07cab2 100644 --- a/javascript/ql/test/query-tests/Security/CWE-116/IncompleteSanitization/IncompleteHtmlAttributeSanitization.expected +++ b/javascript/ql/test/query-tests/Security/CWE-116/IncompleteSanitization/IncompleteHtmlAttributeSanitization.expected @@ -6,6 +6,7 @@ | tst.js:253:21:253:45 | s().rep ... /g, '') | tst.js:253:21:253:45 | s().rep ... /g, '') | tst.js:253:21:253:45 | s().rep ... /g, '') | Cross-site scripting vulnerability as the output of $@ may contain ampersands or double quotes when it reaches this attribute definition. | tst.js:253:21:253:45 | s().rep ... /g, '') | this final HTML sanitizer step | | tst.js:254:32:254:56 | s().rep ... /g, '') | tst.js:254:32:254:56 | s().rep ... /g, '') | tst.js:254:32:254:56 | s().rep ... /g, '') | Cross-site scripting vulnerability as the output of $@ may contain ampersands or double quotes when it reaches this attribute definition. | tst.js:254:32:254:56 | s().rep ... /g, '') | this final HTML sanitizer step | | tst.js:270:61:270:85 | s().rep ... /g, '') | tst.js:270:61:270:85 | s().rep ... /g, '') | tst.js:270:61:270:85 | s().rep ... /g, '') | Cross-site scripting vulnerability as the output of $@ may contain ampersands or double quotes when it reaches this attribute definition. | tst.js:270:61:270:85 | s().rep ... /g, '') | this final HTML sanitizer step | +| tst.js:272:9:272:51 | encodeU ... /g,'')) | tst.js:272:28:272:50 | s().rep ... ]/g,'') | tst.js:272:9:272:51 | encodeU ... /g,'')) | Cross-site scripting vulnerability as the output of $@ may contain double quotes when it reaches this attribute definition. | tst.js:272:28:272:50 | s().rep ... ]/g,'') | this final HTML sanitizer step | | tst.js:275:9:275:21 | arr.join(" ") | tst.js:274:12:274:94 | s().val ... g , '') | tst.js:275:9:275:21 | arr.join(" ") | Cross-site scripting vulnerability as the output of $@ may contain double quotes when it reaches this attribute definition. | tst.js:274:12:274:94 | s().val ... g , '') | this final HTML sanitizer step | | tst.js:300:10:300:33 | s().rep ... ]/g,'') | tst.js:300:10:300:33 | s().rep ... ]/g,'') | tst.js:300:10:300:33 | s().rep ... ]/g,'') | Cross-site scripting vulnerability as the output of $@ may contain single quotes when it reaches this attribute definition. | tst.js:300:10:300:33 | s().rep ... ]/g,'') | this final HTML sanitizer step | | tst.js:301:10:301:32 | s().rep ... ]/g,'') | tst.js:301:10:301:32 | s().rep ... ]/g,'') | tst.js:301:10:301:32 | s().rep ... ]/g,'') | Cross-site scripting vulnerability as the output of $@ may contain single quotes when it reaches this attribute definition. | tst.js:301:10:301:32 | s().rep ... ]/g,'') | this final HTML sanitizer step | @@ -13,6 +14,7 @@ | tst.js:303:10:303:34 | s().rep ... /g, '') | tst.js:303:10:303:34 | s().rep ... /g, '') | tst.js:303:10:303:34 | s().rep ... /g, '') | Cross-site scripting vulnerability as the output of $@ may contain single quotes when it reaches this attribute definition. | tst.js:303:10:303:34 | s().rep ... /g, '') | this final HTML sanitizer step | | tst.js:309:10:318:3 | s().rep ... ;";\\n\\t}) | tst.js:309:10:318:3 | s().rep ... ;";\\n\\t}) | tst.js:309:10:318:3 | s().rep ... ;";\\n\\t}) | Cross-site scripting vulnerability as the output of $@ may contain single quotes when it reaches this attribute definition. | tst.js:309:10:318:3 | s().rep ... ;";\\n\\t}) | this final HTML sanitizer step | edges +| tst.js:272:28:272:50 | s().rep ... ]/g,'') | tst.js:272:9:272:51 | encodeU ... /g,'')) | provenance | | | tst.js:274:6:274:8 | arr | tst.js:275:9:275:11 | arr | provenance | | | tst.js:274:12:274:94 | s().val ... g , '') | tst.js:274:6:274:8 | arr | provenance | | | tst.js:275:9:275:11 | arr | tst.js:275:9:275:21 | arr.join(" ") | provenance | | @@ -24,6 +26,8 @@ nodes | tst.js:253:21:253:45 | s().rep ... /g, '') | semmle.label | s().rep ... /g, '') | | tst.js:254:32:254:56 | s().rep ... /g, '') | semmle.label | s().rep ... /g, '') | | tst.js:270:61:270:85 | s().rep ... /g, '') | semmle.label | s().rep ... /g, '') | +| tst.js:272:9:272:51 | encodeU ... /g,'')) | semmle.label | encodeU ... /g,'')) | +| tst.js:272:28:272:50 | s().rep ... ]/g,'') | semmle.label | s().rep ... ]/g,'') | | tst.js:274:6:274:8 | arr | semmle.label | arr | | tst.js:274:12:274:94 | s().val ... g , '') | semmle.label | s().val ... g , '') | | tst.js:275:9:275:11 | arr | semmle.label | arr | @@ -34,3 +38,6 @@ nodes | tst.js:303:10:303:34 | s().rep ... /g, '') | semmle.label | s().rep ... /g, '') | | tst.js:309:10:318:3 | s().rep ... ;";\\n\\t}) | semmle.label | s().rep ... ;";\\n\\t}) | subpaths +testFailures +| tst.js:272:9:272:51 | encodeU ... /g,'')) | Unexpected result: Alert | +| tst.js:272:28:272:50 | s().rep ... ]/g,'') | Unexpected result: Alert | From 75bd4a7a12e2a0565189734df42c9ab8e2de6995 Mon Sep 17 00:00:00 2001 From: yoff Date: Mon, 19 Jan 2026 10:09:14 +0100 Subject: [PATCH 121/433] javascript: add MaD model - consider if the model is in the right place - consider if the barrier kind (sink kind) is the appropriate one --- .../lib/semmle/javascript/frameworks/NodeJSLib.model.yml | 6 ++++++ .../IncompleteHtmlAttributeSanitizationCustomizations.qll | 4 ++++ .../IncompleteHtmlAttributeSanitization.expected | 7 ------- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/javascript/ql/lib/semmle/javascript/frameworks/NodeJSLib.model.yml b/javascript/ql/lib/semmle/javascript/frameworks/NodeJSLib.model.yml index 43035615a126..ce6e0f684257 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/NodeJSLib.model.yml +++ b/javascript/ql/lib/semmle/javascript/frameworks/NodeJSLib.model.yml @@ -8,3 +8,9 @@ extensions: - ['global', 'Member[process].Member[stdin].Member[on,addListener].WithStringArgument[0=data].Argument[1].Parameter[0]', 'stdin'] - ['readline', 'Member[createInterface].ReturnValue.Member[question].Argument[1].Parameter[0]', 'stdin'] - ['readline', 'Member[createInterface].ReturnValue.Member[on,addListener].WithStringArgument[0=line].Argument[1].Parameter[0]', 'stdin'] + + - addsTo: + pack: codeql/javascript-all + extensible: barrierModel + data: + - ['global', 'Member[encodeURIComponent,encodeURI].ReturnValue', 'request-forgery'] diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/IncompleteHtmlAttributeSanitizationCustomizations.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/IncompleteHtmlAttributeSanitizationCustomizations.qll index f237304be88b..c93cb07bbc71 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/IncompleteHtmlAttributeSanitizationCustomizations.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/IncompleteHtmlAttributeSanitizationCustomizations.qll @@ -100,4 +100,8 @@ module IncompleteHtmlAttributeSanitization { result = this.getQuote() } } + + private class SanitizerFromModel extends Sanitizer { + SanitizerFromModel() { ModelOutput::barrierNode(this, "request-forgery") } + } } diff --git a/javascript/ql/test/query-tests/Security/CWE-116/IncompleteSanitization/IncompleteHtmlAttributeSanitization.expected b/javascript/ql/test/query-tests/Security/CWE-116/IncompleteSanitization/IncompleteHtmlAttributeSanitization.expected index 171c7f07cab2..3f1ac1685d79 100644 --- a/javascript/ql/test/query-tests/Security/CWE-116/IncompleteSanitization/IncompleteHtmlAttributeSanitization.expected +++ b/javascript/ql/test/query-tests/Security/CWE-116/IncompleteSanitization/IncompleteHtmlAttributeSanitization.expected @@ -6,7 +6,6 @@ | tst.js:253:21:253:45 | s().rep ... /g, '') | tst.js:253:21:253:45 | s().rep ... /g, '') | tst.js:253:21:253:45 | s().rep ... /g, '') | Cross-site scripting vulnerability as the output of $@ may contain ampersands or double quotes when it reaches this attribute definition. | tst.js:253:21:253:45 | s().rep ... /g, '') | this final HTML sanitizer step | | tst.js:254:32:254:56 | s().rep ... /g, '') | tst.js:254:32:254:56 | s().rep ... /g, '') | tst.js:254:32:254:56 | s().rep ... /g, '') | Cross-site scripting vulnerability as the output of $@ may contain ampersands or double quotes when it reaches this attribute definition. | tst.js:254:32:254:56 | s().rep ... /g, '') | this final HTML sanitizer step | | tst.js:270:61:270:85 | s().rep ... /g, '') | tst.js:270:61:270:85 | s().rep ... /g, '') | tst.js:270:61:270:85 | s().rep ... /g, '') | Cross-site scripting vulnerability as the output of $@ may contain ampersands or double quotes when it reaches this attribute definition. | tst.js:270:61:270:85 | s().rep ... /g, '') | this final HTML sanitizer step | -| tst.js:272:9:272:51 | encodeU ... /g,'')) | tst.js:272:28:272:50 | s().rep ... ]/g,'') | tst.js:272:9:272:51 | encodeU ... /g,'')) | Cross-site scripting vulnerability as the output of $@ may contain double quotes when it reaches this attribute definition. | tst.js:272:28:272:50 | s().rep ... ]/g,'') | this final HTML sanitizer step | | tst.js:275:9:275:21 | arr.join(" ") | tst.js:274:12:274:94 | s().val ... g , '') | tst.js:275:9:275:21 | arr.join(" ") | Cross-site scripting vulnerability as the output of $@ may contain double quotes when it reaches this attribute definition. | tst.js:274:12:274:94 | s().val ... g , '') | this final HTML sanitizer step | | tst.js:300:10:300:33 | s().rep ... ]/g,'') | tst.js:300:10:300:33 | s().rep ... ]/g,'') | tst.js:300:10:300:33 | s().rep ... ]/g,'') | Cross-site scripting vulnerability as the output of $@ may contain single quotes when it reaches this attribute definition. | tst.js:300:10:300:33 | s().rep ... ]/g,'') | this final HTML sanitizer step | | tst.js:301:10:301:32 | s().rep ... ]/g,'') | tst.js:301:10:301:32 | s().rep ... ]/g,'') | tst.js:301:10:301:32 | s().rep ... ]/g,'') | Cross-site scripting vulnerability as the output of $@ may contain single quotes when it reaches this attribute definition. | tst.js:301:10:301:32 | s().rep ... ]/g,'') | this final HTML sanitizer step | @@ -14,7 +13,6 @@ | tst.js:303:10:303:34 | s().rep ... /g, '') | tst.js:303:10:303:34 | s().rep ... /g, '') | tst.js:303:10:303:34 | s().rep ... /g, '') | Cross-site scripting vulnerability as the output of $@ may contain single quotes when it reaches this attribute definition. | tst.js:303:10:303:34 | s().rep ... /g, '') | this final HTML sanitizer step | | tst.js:309:10:318:3 | s().rep ... ;";\\n\\t}) | tst.js:309:10:318:3 | s().rep ... ;";\\n\\t}) | tst.js:309:10:318:3 | s().rep ... ;";\\n\\t}) | Cross-site scripting vulnerability as the output of $@ may contain single quotes when it reaches this attribute definition. | tst.js:309:10:318:3 | s().rep ... ;";\\n\\t}) | this final HTML sanitizer step | edges -| tst.js:272:28:272:50 | s().rep ... ]/g,'') | tst.js:272:9:272:51 | encodeU ... /g,'')) | provenance | | | tst.js:274:6:274:8 | arr | tst.js:275:9:275:11 | arr | provenance | | | tst.js:274:12:274:94 | s().val ... g , '') | tst.js:274:6:274:8 | arr | provenance | | | tst.js:275:9:275:11 | arr | tst.js:275:9:275:21 | arr.join(" ") | provenance | | @@ -26,8 +24,6 @@ nodes | tst.js:253:21:253:45 | s().rep ... /g, '') | semmle.label | s().rep ... /g, '') | | tst.js:254:32:254:56 | s().rep ... /g, '') | semmle.label | s().rep ... /g, '') | | tst.js:270:61:270:85 | s().rep ... /g, '') | semmle.label | s().rep ... /g, '') | -| tst.js:272:9:272:51 | encodeU ... /g,'')) | semmle.label | encodeU ... /g,'')) | -| tst.js:272:28:272:50 | s().rep ... ]/g,'') | semmle.label | s().rep ... ]/g,'') | | tst.js:274:6:274:8 | arr | semmle.label | arr | | tst.js:274:12:274:94 | s().val ... g , '') | semmle.label | s().val ... g , '') | | tst.js:275:9:275:11 | arr | semmle.label | arr | @@ -38,6 +34,3 @@ nodes | tst.js:303:10:303:34 | s().rep ... /g, '') | semmle.label | s().rep ... /g, '') | | tst.js:309:10:318:3 | s().rep ... ;";\\n\\t}) | semmle.label | s().rep ... ;";\\n\\t}) | subpaths -testFailures -| tst.js:272:9:272:51 | encodeU ... /g,'')) | Unexpected result: Alert | -| tst.js:272:28:272:50 | s().rep ... ]/g,'') | Unexpected result: Alert | From 15980cb1da5790222641bb094e3bc8a784016e4d Mon Sep 17 00:00:00 2001 From: yoff Date: Tue, 20 Jan 2026 16:01:42 +0100 Subject: [PATCH 122/433] ruby: remove sanitizer to be replaced by MaD model --- .../regexp/RegExpInjectionCustomizations.qll | 10 ---------- .../RegExpInjection.expected | 20 +++++++++++++++++++ 2 files changed, 20 insertions(+), 10 deletions(-) diff --git a/ruby/ql/lib/codeql/ruby/security/regexp/RegExpInjectionCustomizations.qll b/ruby/ql/lib/codeql/ruby/security/regexp/RegExpInjectionCustomizations.qll index 468e2727c000..6a86b54e5c9e 100644 --- a/ruby/ql/lib/codeql/ruby/security/regexp/RegExpInjectionCustomizations.qll +++ b/ruby/ql/lib/codeql/ruby/security/regexp/RegExpInjectionCustomizations.qll @@ -68,14 +68,4 @@ module RegExpInjection { class StringConstArrayInclusionCallAsSanitizer extends Sanitizer, StringConstArrayInclusionCallBarrier { } - - /** - * A call to `Regexp.escape` (or its alias, `Regexp.quote`), considered as a - * sanitizer. - */ - class RegexpEscapeSanitization extends Sanitizer { - RegexpEscapeSanitization() { - this = API::getTopLevelMember("Regexp").getAMethodCall(["escape", "quote"]) - } - } } diff --git a/ruby/ql/test/query-tests/security/cwe-1333-regexp-injection/RegExpInjection.expected b/ruby/ql/test/query-tests/security/cwe-1333-regexp-injection/RegExpInjection.expected index 13643e2c07e5..637e9d523004 100644 --- a/ruby/ql/test/query-tests/security/cwe-1333-regexp-injection/RegExpInjection.expected +++ b/ruby/ql/test/query-tests/security/cwe-1333-regexp-injection/RegExpInjection.expected @@ -13,6 +13,14 @@ edges | RegExpInjection.rb:22:12:22:17 | call to params | RegExpInjection.rb:22:12:22:24 | ...[...] | provenance | | | RegExpInjection.rb:22:12:22:24 | ...[...] | RegExpInjection.rb:22:5:22:8 | name | provenance | | | RegExpInjection.rb:23:30:23:33 | name | RegExpInjection.rb:23:24:23:33 | ... + ... | provenance | | +| RegExpInjection.rb:42:5:42:8 | name | RegExpInjection.rb:43:38:43:41 | name | provenance | | +| RegExpInjection.rb:42:12:42:17 | call to params | RegExpInjection.rb:42:12:42:24 | ...[...] | provenance | | +| RegExpInjection.rb:42:12:42:24 | ...[...] | RegExpInjection.rb:42:5:42:8 | name | provenance | | +| RegExpInjection.rb:43:38:43:41 | name | RegExpInjection.rb:43:24:43:42 | call to escape | provenance | MaD:21 | +| RegExpInjection.rb:48:5:48:8 | name | RegExpInjection.rb:49:37:49:40 | name | provenance | | +| RegExpInjection.rb:48:12:48:17 | call to params | RegExpInjection.rb:48:12:48:24 | ...[...] | provenance | | +| RegExpInjection.rb:48:12:48:24 | ...[...] | RegExpInjection.rb:48:5:48:8 | name | provenance | | +| RegExpInjection.rb:49:37:49:40 | name | RegExpInjection.rb:49:24:49:41 | call to quote | provenance | MaD:21 | | RegExpInjection.rb:54:5:54:8 | name | RegExpInjection.rb:55:28:55:37 | ... + ... | provenance | | | RegExpInjection.rb:54:5:54:8 | name | RegExpInjection.rb:55:34:55:37 | name | provenance | | | RegExpInjection.rb:54:12:54:17 | call to params | RegExpInjection.rb:54:12:54:24 | ...[...] | provenance | | @@ -36,6 +44,16 @@ nodes | RegExpInjection.rb:22:12:22:24 | ...[...] | semmle.label | ...[...] | | RegExpInjection.rb:23:24:23:33 | ... + ... | semmle.label | ... + ... | | RegExpInjection.rb:23:30:23:33 | name | semmle.label | name | +| RegExpInjection.rb:42:5:42:8 | name | semmle.label | name | +| RegExpInjection.rb:42:12:42:17 | call to params | semmle.label | call to params | +| RegExpInjection.rb:42:12:42:24 | ...[...] | semmle.label | ...[...] | +| RegExpInjection.rb:43:24:43:42 | call to escape | semmle.label | call to escape | +| RegExpInjection.rb:43:38:43:41 | name | semmle.label | name | +| RegExpInjection.rb:48:5:48:8 | name | semmle.label | name | +| RegExpInjection.rb:48:12:48:17 | call to params | semmle.label | call to params | +| RegExpInjection.rb:48:12:48:24 | ...[...] | semmle.label | ...[...] | +| RegExpInjection.rb:49:24:49:41 | call to quote | semmle.label | call to quote | +| RegExpInjection.rb:49:37:49:40 | name | semmle.label | name | | RegExpInjection.rb:54:5:54:8 | name | semmle.label | name | | RegExpInjection.rb:54:12:54:17 | call to params | semmle.label | call to params | | RegExpInjection.rb:54:12:54:24 | ...[...] | semmle.label | ...[...] | @@ -47,4 +65,6 @@ subpaths | RegExpInjection.rb:11:13:11:27 | /foo#{...}bar/ | RegExpInjection.rb:10:12:10:17 | call to params | RegExpInjection.rb:11:13:11:27 | /foo#{...}bar/ | This regular expression depends on a $@. | RegExpInjection.rb:10:12:10:17 | call to params | user-provided value | | RegExpInjection.rb:17:24:17:27 | name | RegExpInjection.rb:16:12:16:17 | call to params | RegExpInjection.rb:17:24:17:27 | name | This regular expression depends on a $@. | RegExpInjection.rb:16:12:16:17 | call to params | user-provided value | | RegExpInjection.rb:23:24:23:33 | ... + ... | RegExpInjection.rb:22:12:22:17 | call to params | RegExpInjection.rb:23:24:23:33 | ... + ... | This regular expression depends on a $@. | RegExpInjection.rb:22:12:22:17 | call to params | user-provided value | +| RegExpInjection.rb:43:24:43:42 | call to escape | RegExpInjection.rb:42:12:42:17 | call to params | RegExpInjection.rb:43:24:43:42 | call to escape | This regular expression depends on a $@. | RegExpInjection.rb:42:12:42:17 | call to params | user-provided value | +| RegExpInjection.rb:49:24:49:41 | call to quote | RegExpInjection.rb:48:12:48:17 | call to params | RegExpInjection.rb:49:24:49:41 | call to quote | This regular expression depends on a $@. | RegExpInjection.rb:48:12:48:17 | call to params | user-provided value | | RegExpInjection.rb:55:28:55:37 | ... + ... | RegExpInjection.rb:54:12:54:17 | call to params | RegExpInjection.rb:55:28:55:37 | ... + ... | This regular expression depends on a $@. | RegExpInjection.rb:54:12:54:17 | call to params | user-provided value | From b08c972cc31f9069f72d5f6e48ff4f098fbc8ed9 Mon Sep 17 00:00:00 2001 From: yoff Date: Tue, 20 Jan 2026 16:05:18 +0100 Subject: [PATCH 123/433] ruby: Add back sanitizer as MaD model --- .../codeql/ruby/frameworks/regexp/model.yml | 6 ++++++ .../regexp/RegExpInjectionCustomizations.qll | 5 +++++ .../RegExpInjection.expected | 20 ------------------- 3 files changed, 11 insertions(+), 20 deletions(-) create mode 100644 ruby/ql/lib/codeql/ruby/frameworks/regexp/model.yml diff --git a/ruby/ql/lib/codeql/ruby/frameworks/regexp/model.yml b/ruby/ql/lib/codeql/ruby/frameworks/regexp/model.yml new file mode 100644 index 000000000000..ca53942cedf5 --- /dev/null +++ b/ruby/ql/lib/codeql/ruby/frameworks/regexp/model.yml @@ -0,0 +1,6 @@ +extensions: + - addsTo: + pack: codeql/ruby-all + extensible: barrierModel + data: + - ['Regexp!', 'Method[escape,quote].ReturnValue', 'regexp-injection'] diff --git a/ruby/ql/lib/codeql/ruby/security/regexp/RegExpInjectionCustomizations.qll b/ruby/ql/lib/codeql/ruby/security/regexp/RegExpInjectionCustomizations.qll index 6a86b54e5c9e..a9fb1ce21bf9 100644 --- a/ruby/ql/lib/codeql/ruby/security/regexp/RegExpInjectionCustomizations.qll +++ b/ruby/ql/lib/codeql/ruby/security/regexp/RegExpInjectionCustomizations.qll @@ -10,6 +10,7 @@ private import codeql.ruby.Frameworks private import codeql.ruby.dataflow.RemoteFlowSources private import codeql.ruby.dataflow.BarrierGuards private import codeql.ruby.ApiGraphs +private import codeql.ruby.frameworks.data.internal.ApiGraphModels /** * Provides default sources, sinks and sanitizers for detecting @@ -68,4 +69,8 @@ module RegExpInjection { class StringConstArrayInclusionCallAsSanitizer extends Sanitizer, StringConstArrayInclusionCallBarrier { } + + private class ExternalRegexpInjectionSanitizer extends Sanitizer { + ExternalRegexpInjectionSanitizer() { ModelOutput::barrierNode(this, "regexp-injection") } + } } diff --git a/ruby/ql/test/query-tests/security/cwe-1333-regexp-injection/RegExpInjection.expected b/ruby/ql/test/query-tests/security/cwe-1333-regexp-injection/RegExpInjection.expected index 637e9d523004..13643e2c07e5 100644 --- a/ruby/ql/test/query-tests/security/cwe-1333-regexp-injection/RegExpInjection.expected +++ b/ruby/ql/test/query-tests/security/cwe-1333-regexp-injection/RegExpInjection.expected @@ -13,14 +13,6 @@ edges | RegExpInjection.rb:22:12:22:17 | call to params | RegExpInjection.rb:22:12:22:24 | ...[...] | provenance | | | RegExpInjection.rb:22:12:22:24 | ...[...] | RegExpInjection.rb:22:5:22:8 | name | provenance | | | RegExpInjection.rb:23:30:23:33 | name | RegExpInjection.rb:23:24:23:33 | ... + ... | provenance | | -| RegExpInjection.rb:42:5:42:8 | name | RegExpInjection.rb:43:38:43:41 | name | provenance | | -| RegExpInjection.rb:42:12:42:17 | call to params | RegExpInjection.rb:42:12:42:24 | ...[...] | provenance | | -| RegExpInjection.rb:42:12:42:24 | ...[...] | RegExpInjection.rb:42:5:42:8 | name | provenance | | -| RegExpInjection.rb:43:38:43:41 | name | RegExpInjection.rb:43:24:43:42 | call to escape | provenance | MaD:21 | -| RegExpInjection.rb:48:5:48:8 | name | RegExpInjection.rb:49:37:49:40 | name | provenance | | -| RegExpInjection.rb:48:12:48:17 | call to params | RegExpInjection.rb:48:12:48:24 | ...[...] | provenance | | -| RegExpInjection.rb:48:12:48:24 | ...[...] | RegExpInjection.rb:48:5:48:8 | name | provenance | | -| RegExpInjection.rb:49:37:49:40 | name | RegExpInjection.rb:49:24:49:41 | call to quote | provenance | MaD:21 | | RegExpInjection.rb:54:5:54:8 | name | RegExpInjection.rb:55:28:55:37 | ... + ... | provenance | | | RegExpInjection.rb:54:5:54:8 | name | RegExpInjection.rb:55:34:55:37 | name | provenance | | | RegExpInjection.rb:54:12:54:17 | call to params | RegExpInjection.rb:54:12:54:24 | ...[...] | provenance | | @@ -44,16 +36,6 @@ nodes | RegExpInjection.rb:22:12:22:24 | ...[...] | semmle.label | ...[...] | | RegExpInjection.rb:23:24:23:33 | ... + ... | semmle.label | ... + ... | | RegExpInjection.rb:23:30:23:33 | name | semmle.label | name | -| RegExpInjection.rb:42:5:42:8 | name | semmle.label | name | -| RegExpInjection.rb:42:12:42:17 | call to params | semmle.label | call to params | -| RegExpInjection.rb:42:12:42:24 | ...[...] | semmle.label | ...[...] | -| RegExpInjection.rb:43:24:43:42 | call to escape | semmle.label | call to escape | -| RegExpInjection.rb:43:38:43:41 | name | semmle.label | name | -| RegExpInjection.rb:48:5:48:8 | name | semmle.label | name | -| RegExpInjection.rb:48:12:48:17 | call to params | semmle.label | call to params | -| RegExpInjection.rb:48:12:48:24 | ...[...] | semmle.label | ...[...] | -| RegExpInjection.rb:49:24:49:41 | call to quote | semmle.label | call to quote | -| RegExpInjection.rb:49:37:49:40 | name | semmle.label | name | | RegExpInjection.rb:54:5:54:8 | name | semmle.label | name | | RegExpInjection.rb:54:12:54:17 | call to params | semmle.label | call to params | | RegExpInjection.rb:54:12:54:24 | ...[...] | semmle.label | ...[...] | @@ -65,6 +47,4 @@ subpaths | RegExpInjection.rb:11:13:11:27 | /foo#{...}bar/ | RegExpInjection.rb:10:12:10:17 | call to params | RegExpInjection.rb:11:13:11:27 | /foo#{...}bar/ | This regular expression depends on a $@. | RegExpInjection.rb:10:12:10:17 | call to params | user-provided value | | RegExpInjection.rb:17:24:17:27 | name | RegExpInjection.rb:16:12:16:17 | call to params | RegExpInjection.rb:17:24:17:27 | name | This regular expression depends on a $@. | RegExpInjection.rb:16:12:16:17 | call to params | user-provided value | | RegExpInjection.rb:23:24:23:33 | ... + ... | RegExpInjection.rb:22:12:22:17 | call to params | RegExpInjection.rb:23:24:23:33 | ... + ... | This regular expression depends on a $@. | RegExpInjection.rb:22:12:22:17 | call to params | user-provided value | -| RegExpInjection.rb:43:24:43:42 | call to escape | RegExpInjection.rb:42:12:42:17 | call to params | RegExpInjection.rb:43:24:43:42 | call to escape | This regular expression depends on a $@. | RegExpInjection.rb:42:12:42:17 | call to params | user-provided value | -| RegExpInjection.rb:49:24:49:41 | call to quote | RegExpInjection.rb:48:12:48:17 | call to params | RegExpInjection.rb:49:24:49:41 | call to quote | This regular expression depends on a $@. | RegExpInjection.rb:48:12:48:17 | call to params | user-provided value | | RegExpInjection.rb:55:28:55:37 | ... + ... | RegExpInjection.rb:54:12:54:17 | call to params | RegExpInjection.rb:55:28:55:37 | ... + ... | This regular expression depends on a $@. | RegExpInjection.rb:54:12:54:17 | call to params | user-provided value | From 7f00a7f67e204c1199bb6ba03ed8086ce71dd005 Mon Sep 17 00:00:00 2001 From: yoff Date: Thu, 22 Jan 2026 14:46:56 +0100 Subject: [PATCH 124/433] Update python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll Co-authored-by: Anders Schack-Mulligen --- .../python/security/dataflow/UrlRedirectCustomizations.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll index 1f718e478a1e..73466486e0fc 100644 --- a/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll @@ -166,7 +166,7 @@ module UrlRedirect { */ class SanitizerFromModel extends Sanitizer { SanitizerFromModel() { - this = DataFlow::ExternalBarrierGuard::getAnExternalBarrierNode("url-redirection") + ModelOutput::barrierNode(this, "url-redirection") } override predicate sanitizes(FlowState state) { From d05901ad3f84c529791275df2b64c52fd1797613 Mon Sep 17 00:00:00 2001 From: yoff Date: Thu, 22 Jan 2026 15:09:43 +0100 Subject: [PATCH 125/433] python/javascript/ruby: mark internal predicates --- .../javascript/dataflow/internal/BarrierGuards.qll | 5 +++++ .../frameworks/data/internal/ApiGraphModels.qll | 4 ++++ .../python/dataflow/new/internal/DataFlowPublic.qll | 9 ++++++++- .../python/frameworks/data/internal/ApiGraphModels.qll | 4 ++++ .../lib/codeql/ruby/dataflow/internal/DataFlowPublic.qll | 9 ++++++++- .../ruby/frameworks/data/internal/ApiGraphModels.qll | 4 ++++ 6 files changed, 33 insertions(+), 2 deletions(-) diff --git a/javascript/ql/lib/semmle/javascript/dataflow/internal/BarrierGuards.qll b/javascript/ql/lib/semmle/javascript/dataflow/internal/BarrierGuards.qll index b0a8518ef55e..699cfd94fbbc 100644 --- a/javascript/ql/lib/semmle/javascript/dataflow/internal/BarrierGuards.qll +++ b/javascript/ql/lib/semmle/javascript/dataflow/internal/BarrierGuards.qll @@ -60,6 +60,11 @@ module ExternalBarrierGuard { /** * Gets a barrier guard node of the given `kind` defined via models-as-data. + * + * This only provides external barrier nodes defined as guards. To get all externally defined barrer nodes, + * use `ModelOutput::barrierNode(node, kind)`. + * + * INTERNAL: Do not use. */ DataFlow::Node getAnExternalBarrierNode(string kind) { result = MakeStateBarrierGuard::getABarrierNode(kind) diff --git a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll index 19b5a0e01a96..60fe40e716d0 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll @@ -850,11 +850,15 @@ module ModelOutput { /** * Holds if an external model contributed `barrier` with the given `kind`. + * + * INTERNAL: Do not use. */ API::Node getABarrierNode(string kind) { result = getABarrierNode(kind, _) } /** * Holds if an external model contributed `barrier-guard` with the given `kind` and `branch`. + * + * INTERNAL: Do not use. */ API::Node getABarrierGuardNode(string kind, boolean branch) { result = getABarrierGuardNode(kind, branch, _) diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll index 2727ed6651d3..4d112bcdcddd 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll @@ -649,7 +649,14 @@ module ExternalBarrierGuard { ) } - /** Gets a node that is an external barrier of the given kind. */ + /** + * Gets a node that is an external barrier of the given kind. + * + * This only provides external barrier nodes defined as guards. To get all externally defined barrer nodes, + * use `ModelOutput::barrierNode(node, kind)`. + * + * INTERNAL: Do not use. + */ ExprNode getAnExternalBarrierNode(string kind) { result = ParameterizedBarrierGuard::getABarrierNode(kind) } diff --git a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll index 19b5a0e01a96..60fe40e716d0 100644 --- a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll +++ b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll @@ -850,11 +850,15 @@ module ModelOutput { /** * Holds if an external model contributed `barrier` with the given `kind`. + * + * INTERNAL: Do not use. */ API::Node getABarrierNode(string kind) { result = getABarrierNode(kind, _) } /** * Holds if an external model contributed `barrier-guard` with the given `kind` and `branch`. + * + * INTERNAL: Do not use. */ API::Node getABarrierGuardNode(string kind, boolean branch) { result = getABarrierGuardNode(kind, branch, _) diff --git a/ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowPublic.qll b/ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowPublic.qll index 10d5a6621518..6f2bc8b4accb 100644 --- a/ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowPublic.qll +++ b/ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowPublic.qll @@ -1000,7 +1000,14 @@ module ExternalBarrierGuard { ) } - /** Gets a node that is an external barrier of the given kind. */ + /** + * Gets a node that is an external barrier of the given kind. + * + * This only provides external barrier nodes defined as guards. To get all externally defined barrer nodes, + * use `ModelOutput::barrierNode(node, kind)`. + * + * INTERNAL: Do not use. + */ ExprNode getAnExternalBarrierNode(string kind) { result = ParameterizedBarrierGuard::getABarrierNode(kind) } diff --git a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll index 19b5a0e01a96..60fe40e716d0 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll @@ -850,11 +850,15 @@ module ModelOutput { /** * Holds if an external model contributed `barrier` with the given `kind`. + * + * INTERNAL: Do not use. */ API::Node getABarrierNode(string kind) { result = getABarrierNode(kind, _) } /** * Holds if an external model contributed `barrier-guard` with the given `kind` and `branch`. + * + * INTERNAL: Do not use. */ API::Node getABarrierGuardNode(string kind, boolean branch) { result = getABarrierGuardNode(kind, branch, _) From 55abc52c611d2810b9480c1ed76906135ecbdf03 Mon Sep 17 00:00:00 2001 From: yoff Date: Thu, 22 Jan 2026 20:51:46 +0100 Subject: [PATCH 126/433] python: format file --- .../python/security/dataflow/UrlRedirectCustomizations.qll | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll index 73466486e0fc..28e18552bfcc 100644 --- a/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll @@ -165,9 +165,7 @@ module UrlRedirect { * A sanitizer defined via models-as-data with kind "url-redirection". */ class SanitizerFromModel extends Sanitizer { - SanitizerFromModel() { - ModelOutput::barrierNode(this, "url-redirection") - } + SanitizerFromModel() { ModelOutput::barrierNode(this, "url-redirection") } override predicate sanitizes(FlowState state) { // sanitize all flow states From ccd07b8a6395836d4e15deeb55daef36c8f8b0ed Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Fri, 23 Jan 2026 09:03:48 +0100 Subject: [PATCH 127/433] C++: Simplify `cpp/sql-injection` barrier SQL sanitizers will not likely also be sources, so using `isBarrierIn` here does not make a lot of sense. I ran with and without this change on MRVA and got identical results. --- cpp/ql/src/Security/CWE/CWE-089/SqlTainted.ql | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/cpp/ql/src/Security/CWE/CWE-089/SqlTainted.ql b/cpp/ql/src/Security/CWE/CWE-089/SqlTainted.ql index 5d08afbe304a..8ce1f543c0f0 100644 --- a/cpp/ql/src/Security/CWE/CWE-089/SqlTainted.ql +++ b/cpp/ql/src/Security/CWE/CWE-089/SqlTainted.ql @@ -45,9 +45,7 @@ module SqlTaintedConfig implements DataFlow::ConfigSig { predicate isBarrier(DataFlow::Node node) { node.asExpr().getUnspecifiedType() instanceof IntegralType - } - - predicate isBarrierIn(DataFlow::Node node) { + or exists(SqlBarrierFunction sql, int arg, FunctionInput input | node.asIndirectArgument() = sql.getACallToThisFunction().getArgument(arg) and input.isParameterDeref(arg) and From 3d7049265fa8c0076a1c9366a7045e3fca8a504a Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Wed, 21 Jan 2026 08:57:57 +0100 Subject: [PATCH 128/433] Rust: Add tests for `Self` constructors --- .../library-tests/path-resolution/main.rs | 46 + .../path-resolution/path-resolution.expected | 171 +- .../PathResolutionConsistency.expected | 2 +- .../test/library-tests/type-inference/main.rs | 11 + .../type-inference/type-inference.expected | 16034 ++++++++-------- 5 files changed, 8172 insertions(+), 8092 deletions(-) diff --git a/rust/ql/test/library-tests/path-resolution/main.rs b/rust/ql/test/library-tests/path-resolution/main.rs index 761e97fced1e..d44d0d84ce09 100644 --- a/rust/ql/test/library-tests/path-resolution/main.rs +++ b/rust/ql/test/library-tests/path-resolution/main.rs @@ -938,6 +938,52 @@ mod patterns { } } +/// Tests for refering to constructors via `Self` +mod self_constructors { + struct TupleStruct(i32); // $ item=i32 + + #[rustfmt::skip] + impl TupleStruct { // $ item=TupleStruct + #[rustfmt::skip] + fn new(x: i32) -> Self { // $ item=i32 item=TupleStruct + let _ = Self(0); // $ item=TupleStruct + let constructor = Self; // $ item=TupleStruct + constructor(x) + } // new + } // ImplTupleStruct + + struct StructStruct { + a: i32, // $ item=i32 + } + + #[rustfmt::skip] + impl StructStruct { // $ item=StructStruct + #[rustfmt::skip] + fn new(a: i32) -> Self { // $ item=i32 item=StructStruct + Self { a } // $ item=StructStruct + } // new + } // ImplStructStruct + + enum MyEnum { + A( + i32, // $ item=i32 + ), // MyEnumA + } + + #[rustfmt::skip] + impl MyEnum { // $ item=MyEnum + fn get(self) -> i32{ // $ item=i32 + match self { + Self::A( // $ item=MyEnumA + x, + ) => { + x + } + } + } + } +} + fn main() { my::nested::nested1::nested2::f(); // $ item=I4 my::f(); // $ item=I38 diff --git a/rust/ql/test/library-tests/path-resolution/path-resolution.expected b/rust/ql/test/library-tests/path-resolution/path-resolution.expected index c6bac60b4123..b204368cdb53 100644 --- a/rust/ql/test/library-tests/path-resolution/path-resolution.expected +++ b/rust/ql/test/library-tests/path-resolution/path-resolution.expected @@ -33,6 +33,7 @@ mod | main.rs:819:1:871:1 | mod associated_types | | main.rs:877:1:896:1 | mod impl_with_attribute_macro | | main.rs:898:1:939:1 | mod patterns | +| main.rs:941:1:985:1 | mod self_constructors | | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:20:1:20:12 | mod my3 | | my2/mod.rs:22:1:23:10 | mod mymod | @@ -73,7 +74,7 @@ resolvePath | main.rs:37:17:37:24 | ...::f | main.rs:26:9:28:9 | fn f | | main.rs:39:17:39:23 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:40:17:40:17 | f | main.rs:26:9:28:9 | fn f | -| main.rs:47:9:47:13 | super | main.rs:1:1:978:2 | SourceFile | +| main.rs:47:9:47:13 | super | main.rs:1:1:1024:2 | SourceFile | | main.rs:47:9:47:17 | ...::m1 | main.rs:20:1:44:1 | mod m1 | | main.rs:47:9:47:21 | ...::m2 | main.rs:25:5:43:5 | mod m2 | | main.rs:47:9:47:24 | ...::g | main.rs:30:9:34:9 | fn g | @@ -88,7 +89,7 @@ resolvePath | main.rs:68:17:68:19 | Foo | main.rs:66:9:66:21 | struct Foo | | main.rs:71:13:71:15 | Foo | main.rs:60:5:60:17 | struct Foo | | main.rs:73:5:73:5 | f | main.rs:62:5:69:5 | fn f | -| main.rs:75:5:75:8 | self | main.rs:1:1:978:2 | SourceFile | +| main.rs:75:5:75:8 | self | main.rs:1:1:1024:2 | SourceFile | | main.rs:75:5:75:11 | ...::i | main.rs:78:1:90:1 | fn i | | main.rs:79:5:79:11 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:81:13:81:15 | Foo | main.rs:55:1:55:13 | struct Foo | @@ -110,7 +111,7 @@ resolvePath | main.rs:112:9:112:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:118:9:118:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:122:9:122:15 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:125:13:125:17 | super | main.rs:1:1:978:2 | SourceFile | +| main.rs:125:13:125:17 | super | main.rs:1:1:1024:2 | SourceFile | | main.rs:125:13:125:21 | ...::m5 | main.rs:110:1:114:1 | mod m5 | | main.rs:126:9:126:9 | f | main.rs:111:5:113:5 | fn f | | main.rs:126:9:126:9 | f | main.rs:117:5:119:5 | fn f | @@ -477,79 +478,95 @@ resolvePath | main.rs:935:13:935:16 | Some | {EXTERNAL LOCATION} | Some | | main.rs:935:18:935:18 | z | main.rs:922:5:924:12 | Const | | main.rs:935:24:935:24 | z | main.rs:922:5:924:12 | Const | -| main.rs:942:5:942:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:942:5:942:14 | ...::nested | my.rs:1:1:1:15 | mod nested | -| main.rs:942:5:942:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | -| main.rs:942:5:942:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | -| main.rs:942:5:942:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | -| main.rs:943:5:943:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:943:5:943:9 | ...::f | my.rs:5:1:7:1 | fn f | -| main.rs:944:5:944:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | -| main.rs:944:5:944:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | -| main.rs:944:5:944:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | -| main.rs:944:5:944:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:945:5:945:5 | f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:946:5:946:5 | g | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:947:5:947:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:947:5:947:12 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:948:5:948:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:948:5:948:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:948:5:948:13 | ...::g | main.rs:30:9:34:9 | fn g | -| main.rs:949:5:949:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:949:5:949:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:949:5:949:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | -| main.rs:949:5:949:17 | ...::h | main.rs:37:27:41:13 | fn h | -| main.rs:950:5:950:6 | m4 | main.rs:46:1:53:1 | mod m4 | -| main.rs:950:5:950:9 | ...::i | main.rs:49:5:52:5 | fn i | -| main.rs:951:5:951:5 | h | main.rs:57:1:76:1 | fn h | -| main.rs:952:5:952:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:953:5:953:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:954:5:954:5 | j | main.rs:104:1:108:1 | fn j | -| main.rs:955:5:955:6 | m6 | main.rs:116:1:128:1 | mod m6 | -| main.rs:955:5:955:9 | ...::g | main.rs:121:5:127:5 | fn g | -| main.rs:956:5:956:6 | m7 | main.rs:130:1:149:1 | mod m7 | -| main.rs:956:5:956:9 | ...::f | main.rs:141:5:148:5 | fn f | -| main.rs:957:5:957:6 | m8 | main.rs:151:1:205:1 | mod m8 | -| main.rs:957:5:957:9 | ...::g | main.rs:189:5:204:5 | fn g | -| main.rs:958:5:958:6 | m9 | main.rs:207:1:215:1 | mod m9 | -| main.rs:958:5:958:9 | ...::f | main.rs:210:5:214:5 | fn f | -| main.rs:959:5:959:7 | m11 | main.rs:238:1:275:1 | mod m11 | -| main.rs:959:5:959:10 | ...::f | main.rs:243:5:246:5 | fn f | -| main.rs:960:5:960:7 | m15 | main.rs:306:1:375:1 | mod m15 | -| main.rs:960:5:960:10 | ...::f | main.rs:362:5:374:5 | fn f | -| main.rs:961:5:961:7 | m16 | main.rs:377:1:574:1 | mod m16 | -| main.rs:961:5:961:10 | ...::f | main.rs:446:5:470:5 | fn f | -| main.rs:962:5:962:20 | trait_visibility | main.rs:576:1:626:1 | mod trait_visibility | -| main.rs:962:5:962:23 | ...::f | main.rs:603:5:625:5 | fn f | -| main.rs:963:5:963:7 | m17 | main.rs:628:1:658:1 | mod m17 | -| main.rs:963:5:963:10 | ...::f | main.rs:652:5:657:5 | fn f | -| main.rs:964:5:964:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | -| main.rs:964:5:964:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | -| main.rs:965:5:965:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | -| main.rs:965:5:965:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | -| main.rs:966:5:966:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | -| main.rs:966:5:966:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | -| main.rs:967:5:967:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:968:5:968:12 | my_alias | main.rs:1:1:1:7 | mod my | -| main.rs:968:5:968:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:969:5:969:7 | m18 | main.rs:660:1:678:1 | mod m18 | -| main.rs:969:5:969:12 | ...::m19 | main.rs:665:5:677:5 | mod m19 | -| main.rs:969:5:969:17 | ...::m20 | main.rs:670:9:676:9 | mod m20 | -| main.rs:969:5:969:20 | ...::g | main.rs:671:13:675:13 | fn g | -| main.rs:970:5:970:7 | m23 | main.rs:707:1:732:1 | mod m23 | -| main.rs:970:5:970:10 | ...::f | main.rs:727:5:731:5 | fn f | -| main.rs:971:5:971:7 | m24 | main.rs:734:1:802:1 | mod m24 | -| main.rs:971:5:971:10 | ...::f | main.rs:788:5:801:5 | fn f | -| main.rs:972:5:972:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:972:5:972:11 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:973:5:973:13 | z_changed | main.rs:807:1:807:9 | fn z_changed | -| main.rs:974:5:974:11 | AStruct | main.rs:809:1:809:17 | struct AStruct | -| main.rs:974:5:974:22 | ...::z_on_type | main.rs:813:5:813:17 | fn z_on_type | -| main.rs:975:5:975:11 | AStruct | main.rs:809:1:809:17 | struct AStruct | -| main.rs:976:5:976:29 | impl_with_attribute_macro | main.rs:877:1:896:1 | mod impl_with_attribute_macro | -| main.rs:976:5:976:35 | ...::test | main.rs:892:5:895:5 | fn test | -| main.rs:977:5:977:12 | patterns | main.rs:898:1:939:1 | mod patterns | -| main.rs:977:5:977:18 | ...::test | main.rs:899:5:913:5 | fn test | +| main.rs:943:24:943:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:946:10:946:20 | TupleStruct | main.rs:943:5:943:28 | struct TupleStruct | +| main.rs:948:19:948:21 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:948:27:948:30 | Self | main.rs:943:5:943:28 | struct TupleStruct | +| main.rs:949:21:949:24 | Self | main.rs:943:5:943:28 | struct TupleStruct | +| main.rs:950:31:950:34 | Self | main.rs:943:5:943:28 | struct TupleStruct | +| main.rs:956:12:956:14 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:960:10:960:21 | StructStruct | main.rs:955:5:957:5 | struct StructStruct | +| main.rs:962:19:962:21 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:962:27:962:30 | Self | main.rs:955:5:957:5 | struct StructStruct | +| main.rs:963:13:963:16 | Self | main.rs:955:5:957:5 | struct StructStruct | +| main.rs:969:13:969:15 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:974:10:974:15 | MyEnum | main.rs:967:5:971:5 | enum MyEnum | +| main.rs:975:25:975:27 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:977:17:977:20 | Self | main.rs:967:5:971:5 | enum MyEnum | +| main.rs:977:17:977:23 | ...::A | main.rs:968:9:970:9 | A | +| main.rs:988:5:988:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:988:5:988:14 | ...::nested | my.rs:1:1:1:15 | mod nested | +| main.rs:988:5:988:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | +| main.rs:988:5:988:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | +| main.rs:988:5:988:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | +| main.rs:989:5:989:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:989:5:989:9 | ...::f | my.rs:5:1:7:1 | fn f | +| main.rs:990:5:990:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | +| main.rs:990:5:990:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | +| main.rs:990:5:990:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | +| main.rs:990:5:990:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:991:5:991:5 | f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:992:5:992:5 | g | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:993:5:993:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:993:5:993:12 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:994:5:994:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:994:5:994:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:994:5:994:13 | ...::g | main.rs:30:9:34:9 | fn g | +| main.rs:995:5:995:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:995:5:995:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:995:5:995:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | +| main.rs:995:5:995:17 | ...::h | main.rs:37:27:41:13 | fn h | +| main.rs:996:5:996:6 | m4 | main.rs:46:1:53:1 | mod m4 | +| main.rs:996:5:996:9 | ...::i | main.rs:49:5:52:5 | fn i | +| main.rs:997:5:997:5 | h | main.rs:57:1:76:1 | fn h | +| main.rs:998:5:998:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:999:5:999:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1000:5:1000:5 | j | main.rs:104:1:108:1 | fn j | +| main.rs:1001:5:1001:6 | m6 | main.rs:116:1:128:1 | mod m6 | +| main.rs:1001:5:1001:9 | ...::g | main.rs:121:5:127:5 | fn g | +| main.rs:1002:5:1002:6 | m7 | main.rs:130:1:149:1 | mod m7 | +| main.rs:1002:5:1002:9 | ...::f | main.rs:141:5:148:5 | fn f | +| main.rs:1003:5:1003:6 | m8 | main.rs:151:1:205:1 | mod m8 | +| main.rs:1003:5:1003:9 | ...::g | main.rs:189:5:204:5 | fn g | +| main.rs:1004:5:1004:6 | m9 | main.rs:207:1:215:1 | mod m9 | +| main.rs:1004:5:1004:9 | ...::f | main.rs:210:5:214:5 | fn f | +| main.rs:1005:5:1005:7 | m11 | main.rs:238:1:275:1 | mod m11 | +| main.rs:1005:5:1005:10 | ...::f | main.rs:243:5:246:5 | fn f | +| main.rs:1006:5:1006:7 | m15 | main.rs:306:1:375:1 | mod m15 | +| main.rs:1006:5:1006:10 | ...::f | main.rs:362:5:374:5 | fn f | +| main.rs:1007:5:1007:7 | m16 | main.rs:377:1:574:1 | mod m16 | +| main.rs:1007:5:1007:10 | ...::f | main.rs:446:5:470:5 | fn f | +| main.rs:1008:5:1008:20 | trait_visibility | main.rs:576:1:626:1 | mod trait_visibility | +| main.rs:1008:5:1008:23 | ...::f | main.rs:603:5:625:5 | fn f | +| main.rs:1009:5:1009:7 | m17 | main.rs:628:1:658:1 | mod m17 | +| main.rs:1009:5:1009:10 | ...::f | main.rs:652:5:657:5 | fn f | +| main.rs:1010:5:1010:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | +| main.rs:1010:5:1010:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | +| main.rs:1011:5:1011:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | +| main.rs:1011:5:1011:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | +| main.rs:1012:5:1012:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | +| main.rs:1012:5:1012:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | +| main.rs:1013:5:1013:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1014:5:1014:12 | my_alias | main.rs:1:1:1:7 | mod my | +| main.rs:1014:5:1014:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1015:5:1015:7 | m18 | main.rs:660:1:678:1 | mod m18 | +| main.rs:1015:5:1015:12 | ...::m19 | main.rs:665:5:677:5 | mod m19 | +| main.rs:1015:5:1015:17 | ...::m20 | main.rs:670:9:676:9 | mod m20 | +| main.rs:1015:5:1015:20 | ...::g | main.rs:671:13:675:13 | fn g | +| main.rs:1016:5:1016:7 | m23 | main.rs:707:1:732:1 | mod m23 | +| main.rs:1016:5:1016:10 | ...::f | main.rs:727:5:731:5 | fn f | +| main.rs:1017:5:1017:7 | m24 | main.rs:734:1:802:1 | mod m24 | +| main.rs:1017:5:1017:10 | ...::f | main.rs:788:5:801:5 | fn f | +| main.rs:1018:5:1018:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1018:5:1018:11 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1019:5:1019:13 | z_changed | main.rs:807:1:807:9 | fn z_changed | +| main.rs:1020:5:1020:11 | AStruct | main.rs:809:1:809:17 | struct AStruct | +| main.rs:1020:5:1020:22 | ...::z_on_type | main.rs:813:5:813:17 | fn z_on_type | +| main.rs:1021:5:1021:11 | AStruct | main.rs:809:1:809:17 | struct AStruct | +| main.rs:1022:5:1022:29 | impl_with_attribute_macro | main.rs:877:1:896:1 | mod impl_with_attribute_macro | +| main.rs:1022:5:1022:35 | ...::test | main.rs:892:5:895:5 | fn test | +| main.rs:1023:5:1023:12 | patterns | main.rs:898:1:939:1 | mod patterns | +| main.rs:1023:5:1023:18 | ...::test | main.rs:899:5:913:5 | fn test | | my2/mod.rs:4:5:4:11 | println | {EXTERNAL LOCATION} | MacroRules | | my2/mod.rs:5:5:5:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:5:5:5:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | @@ -575,7 +592,7 @@ resolvePath | my2/my3/mod.rs:3:5:3:5 | g | my2/mod.rs:3:1:6:1 | fn g | | my2/my3/mod.rs:4:5:4:5 | h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:7:5:7:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | -| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:978:2 | SourceFile | +| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1024:2 | SourceFile | | my2/my3/mod.rs:7:5:7:19 | ...::h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:8:5:8:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | | my2/my3/mod.rs:8:5:8:12 | ...::g | my2/mod.rs:3:1:6:1 | fn g | diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected index 8dba0e3cf276..97dfe4bc278c 100644 --- a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected @@ -1,2 +1,2 @@ multipleResolvedTargets -| main.rs:2860:13:2860:17 | x.f() | +| main.rs:2871:13:2871:17 | x.f() | diff --git a/rust/ql/test/library-tests/type-inference/main.rs b/rust/ql/test/library-tests/type-inference/main.rs index 9fda37285da4..e72fecf32f1a 100644 --- a/rust/ql/test/library-tests/type-inference/main.rs +++ b/rust/ql/test/library-tests/type-inference/main.rs @@ -95,6 +95,17 @@ mod method_impl { } } +mod struct_self_call { + struct ATupleStruct(i64); + + impl Default for ATupleStruct { + fn default() -> Self { + let n = Default::default(); // $ target=default type=n:i64 + Self(n) + } + } +} + mod trait_impl { #[derive(Debug)] struct MyThing { diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index c5f797efd2f1..36663b1dc4bf 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -1023,2751 +1023,2752 @@ inferCertainType | main.rs:92:18:92:33 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:93:9:93:9 | x | | main.rs:72:5:72:21 | Foo | | main.rs:94:9:94:9 | y | | main.rs:72:5:72:21 | Foo | -| main.rs:105:25:105:28 | SelfParam | | main.rs:104:5:106:5 | Self [trait MyTrait] | -| main.rs:110:25:110:28 | SelfParam | | main.rs:99:5:102:5 | MyThing | -| main.rs:110:39:112:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:111:13:111:16 | self | | main.rs:99:5:102:5 | MyThing | -| main.rs:115:16:121:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:116:13:116:13 | x | | main.rs:99:5:102:5 | MyThing | -| main.rs:116:17:116:39 | MyThing {...} | | main.rs:99:5:102:5 | MyThing | -| main.rs:116:34:116:37 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:117:17:117:17 | x | | main.rs:99:5:102:5 | MyThing | -| main.rs:119:13:119:13 | y | | main.rs:99:5:102:5 | MyThing | -| main.rs:119:17:119:40 | MyThing {...} | | main.rs:99:5:102:5 | MyThing | -| main.rs:119:34:119:38 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:120:39:120:39 | y | | main.rs:99:5:102:5 | MyThing | -| main.rs:130:25:130:29 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:130:25:130:29 | SelfParam | TRef | main.rs:128:9:133:9 | Self [trait Foo] | -| main.rs:130:32:132:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:131:26:131:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:131:26:131:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:131:26:131:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:131:26:131:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:137:25:137:29 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:137:25:137:29 | SelfParam | TRef | main.rs:135:9:140:9 | Self [trait Bar] | -| main.rs:137:32:139:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:138:26:138:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:138:26:138:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:138:26:138:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:138:26:138:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:149:15:170:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:151:9:154:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:155:9:158:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:159:9:162:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:163:9:169:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:167:13:167:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | -| main.rs:167:27:167:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:168:13:168:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | -| main.rs:168:27:168:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:186:15:186:18 | SelfParam | | main.rs:174:5:177:5 | MyThing | -| main.rs:186:15:186:18 | SelfParam | A | main.rs:179:5:180:14 | S1 | -| main.rs:186:27:188:9 | { ... } | | main.rs:179:5:180:14 | S1 | -| main.rs:187:13:187:16 | self | | main.rs:174:5:177:5 | MyThing | -| main.rs:187:13:187:16 | self | A | main.rs:179:5:180:14 | S1 | -| main.rs:193:15:193:18 | SelfParam | | main.rs:174:5:177:5 | MyThing | -| main.rs:193:15:193:18 | SelfParam | A | main.rs:181:5:182:14 | S2 | -| main.rs:193:29:195:9 | { ... } | | main.rs:174:5:177:5 | MyThing | -| main.rs:193:29:195:9 | { ... } | A | main.rs:181:5:182:14 | S2 | -| main.rs:194:13:194:30 | Self {...} | | main.rs:174:5:177:5 | MyThing | -| main.rs:194:13:194:30 | Self {...} | A | main.rs:181:5:182:14 | S2 | -| main.rs:194:23:194:26 | self | | main.rs:174:5:177:5 | MyThing | -| main.rs:194:23:194:26 | self | A | main.rs:181:5:182:14 | S2 | -| main.rs:199:15:199:18 | SelfParam | | main.rs:174:5:177:5 | MyThing | -| main.rs:199:15:199:18 | SelfParam | A | main.rs:198:10:198:10 | T | -| main.rs:199:26:201:9 | { ... } | | main.rs:198:10:198:10 | T | -| main.rs:200:13:200:16 | self | | main.rs:174:5:177:5 | MyThing | -| main.rs:200:13:200:16 | self | A | main.rs:198:10:198:10 | T | -| main.rs:204:16:220:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:205:13:205:13 | x | | main.rs:174:5:177:5 | MyThing | -| main.rs:205:17:205:33 | MyThing {...} | | main.rs:174:5:177:5 | MyThing | -| main.rs:206:13:206:13 | y | | main.rs:174:5:177:5 | MyThing | -| main.rs:206:17:206:33 | MyThing {...} | | main.rs:174:5:177:5 | MyThing | -| main.rs:209:18:209:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:209:18:209:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:209:18:209:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:209:18:209:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:209:26:209:26 | x | | main.rs:174:5:177:5 | MyThing | -| main.rs:210:18:210:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:210:18:210:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:210:18:210:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:210:18:210:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:210:26:210:26 | y | | main.rs:174:5:177:5 | MyThing | -| main.rs:212:18:212:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:212:18:212:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:212:18:212:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:212:18:212:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:212:26:212:26 | x | | main.rs:174:5:177:5 | MyThing | -| main.rs:213:18:213:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:213:18:213:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:213:18:213:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:213:18:213:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:213:26:213:26 | y | | main.rs:174:5:177:5 | MyThing | -| main.rs:215:13:215:13 | x | | main.rs:174:5:177:5 | MyThing | -| main.rs:215:17:215:33 | MyThing {...} | | main.rs:174:5:177:5 | MyThing | -| main.rs:216:13:216:13 | y | | main.rs:174:5:177:5 | MyThing | -| main.rs:216:17:216:33 | MyThing {...} | | main.rs:174:5:177:5 | MyThing | -| main.rs:218:18:218:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:218:18:218:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:218:18:218:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:218:18:218:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:218:26:218:26 | x | | main.rs:174:5:177:5 | MyThing | -| main.rs:219:18:219:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:219:18:219:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:219:18:219:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:219:18:219:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:219:26:219:26 | y | | main.rs:174:5:177:5 | MyThing | -| main.rs:243:15:243:18 | SelfParam | | main.rs:242:5:251:5 | Self [trait MyTrait] | -| main.rs:245:15:245:18 | SelfParam | | main.rs:242:5:251:5 | Self [trait MyTrait] | -| main.rs:248:9:250:9 | { ... } | | main.rs:242:5:251:5 | Self [trait MyTrait] | -| main.rs:249:13:249:16 | self | | main.rs:242:5:251:5 | Self [trait MyTrait] | -| main.rs:255:16:255:19 | SelfParam | | main.rs:253:5:258:5 | Self [trait MyProduct] | -| main.rs:257:16:257:19 | SelfParam | | main.rs:253:5:258:5 | Self [trait MyProduct] | -| main.rs:260:43:260:43 | x | | main.rs:260:26:260:40 | T2 | -| main.rs:260:56:262:5 | { ... } | | main.rs:260:22:260:23 | T1 | -| main.rs:261:9:261:9 | x | | main.rs:260:26:260:40 | T2 | -| main.rs:266:15:266:18 | SelfParam | | main.rs:224:5:227:5 | MyThing | -| main.rs:266:15:266:18 | SelfParam | A | main.rs:235:5:236:14 | S1 | -| main.rs:266:27:268:9 | { ... } | | main.rs:235:5:236:14 | S1 | -| main.rs:267:13:267:16 | self | | main.rs:224:5:227:5 | MyThing | -| main.rs:267:13:267:16 | self | A | main.rs:235:5:236:14 | S1 | -| main.rs:273:15:273:18 | SelfParam | | main.rs:224:5:227:5 | MyThing | -| main.rs:273:15:273:18 | SelfParam | A | main.rs:237:5:238:14 | S2 | -| main.rs:273:29:275:9 | { ... } | | main.rs:224:5:227:5 | MyThing | -| main.rs:273:29:275:9 | { ... } | A | main.rs:237:5:238:14 | S2 | -| main.rs:274:13:274:30 | Self {...} | | main.rs:224:5:227:5 | MyThing | -| main.rs:274:13:274:30 | Self {...} | A | main.rs:237:5:238:14 | S2 | -| main.rs:274:23:274:26 | self | | main.rs:224:5:227:5 | MyThing | -| main.rs:274:23:274:26 | self | A | main.rs:237:5:238:14 | S2 | -| main.rs:285:15:285:18 | SelfParam | | main.rs:224:5:227:5 | MyThing | -| main.rs:285:15:285:18 | SelfParam | A | main.rs:239:5:240:14 | S3 | -| main.rs:285:27:287:9 | { ... } | | main.rs:280:10:280:11 | TD | -| main.rs:292:15:292:18 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:292:15:292:18 | SelfParam | P1 | main.rs:290:10:290:10 | I | -| main.rs:292:15:292:18 | SelfParam | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:292:26:294:9 | { ... } | | main.rs:290:10:290:10 | I | -| main.rs:293:13:293:16 | self | | main.rs:229:5:233:5 | MyPair | -| main.rs:293:13:293:16 | self | P1 | main.rs:290:10:290:10 | I | -| main.rs:293:13:293:16 | self | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:299:15:299:18 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:299:15:299:18 | SelfParam | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:299:15:299:18 | SelfParam | P2 | main.rs:237:5:238:14 | S2 | -| main.rs:299:27:301:9 | { ... } | | main.rs:239:5:240:14 | S3 | -| main.rs:306:15:306:18 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:306:15:306:18 | SelfParam | P1 | main.rs:224:5:227:5 | MyThing | -| main.rs:306:15:306:18 | SelfParam | P1.A | main.rs:304:10:304:11 | TT | -| main.rs:306:15:306:18 | SelfParam | P2 | main.rs:239:5:240:14 | S3 | -| main.rs:306:27:309:9 | { ... } | | main.rs:304:10:304:11 | TT | -| main.rs:307:25:307:28 | self | | main.rs:229:5:233:5 | MyPair | -| main.rs:307:25:307:28 | self | P1 | main.rs:224:5:227:5 | MyThing | -| main.rs:307:25:307:28 | self | P1.A | main.rs:304:10:304:11 | TT | -| main.rs:307:25:307:28 | self | P2 | main.rs:239:5:240:14 | S3 | -| main.rs:315:16:315:19 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:315:16:315:19 | SelfParam | P1 | main.rs:313:10:313:10 | A | -| main.rs:315:16:315:19 | SelfParam | P2 | main.rs:313:10:313:10 | A | -| main.rs:315:27:317:9 | { ... } | | main.rs:313:10:313:10 | A | -| main.rs:316:13:316:16 | self | | main.rs:229:5:233:5 | MyPair | -| main.rs:316:13:316:16 | self | P1 | main.rs:313:10:313:10 | A | -| main.rs:316:13:316:16 | self | P2 | main.rs:313:10:313:10 | A | -| main.rs:320:16:320:19 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:320:16:320:19 | SelfParam | P1 | main.rs:313:10:313:10 | A | -| main.rs:320:16:320:19 | SelfParam | P2 | main.rs:313:10:313:10 | A | -| main.rs:320:27:322:9 | { ... } | | main.rs:313:10:313:10 | A | -| main.rs:321:13:321:16 | self | | main.rs:229:5:233:5 | MyPair | -| main.rs:321:13:321:16 | self | P1 | main.rs:313:10:313:10 | A | -| main.rs:321:13:321:16 | self | P2 | main.rs:313:10:313:10 | A | -| main.rs:328:16:328:19 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:328:16:328:19 | SelfParam | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:328:16:328:19 | SelfParam | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:328:28:330:9 | { ... } | | main.rs:235:5:236:14 | S1 | -| main.rs:329:13:329:16 | self | | main.rs:229:5:233:5 | MyPair | -| main.rs:329:13:329:16 | self | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:329:13:329:16 | self | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:333:16:333:19 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:333:16:333:19 | SelfParam | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:333:16:333:19 | SelfParam | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:333:28:335:9 | { ... } | | main.rs:237:5:238:14 | S2 | -| main.rs:334:13:334:16 | self | | main.rs:229:5:233:5 | MyPair | -| main.rs:334:13:334:16 | self | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:334:13:334:16 | self | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:338:46:338:46 | p | | main.rs:338:24:338:43 | P | -| main.rs:338:58:340:5 | { ... } | | main.rs:338:16:338:17 | V1 | -| main.rs:339:9:339:9 | p | | main.rs:338:24:338:43 | P | -| main.rs:342:46:342:46 | p | | main.rs:342:24:342:43 | P | -| main.rs:342:58:344:5 | { ... } | | main.rs:342:20:342:21 | V2 | -| main.rs:343:9:343:9 | p | | main.rs:342:24:342:43 | P | -| main.rs:346:54:346:54 | p | | main.rs:229:5:233:5 | MyPair | -| main.rs:346:54:346:54 | p | P1 | main.rs:346:20:346:21 | V0 | -| main.rs:346:54:346:54 | p | P2 | main.rs:346:32:346:51 | P | -| main.rs:346:78:348:5 | { ... } | | main.rs:346:24:346:25 | V1 | -| main.rs:347:9:347:9 | p | | main.rs:229:5:233:5 | MyPair | -| main.rs:347:9:347:9 | p | P1 | main.rs:346:20:346:21 | V0 | -| main.rs:347:9:347:9 | p | P2 | main.rs:346:32:346:51 | P | -| main.rs:352:23:352:26 | SelfParam | | main.rs:350:5:353:5 | Self [trait ConvertTo] | -| main.rs:357:23:357:26 | SelfParam | | main.rs:355:10:355:23 | T | -| main.rs:357:35:359:9 | { ... } | | main.rs:235:5:236:14 | S1 | -| main.rs:358:13:358:16 | self | | main.rs:355:10:355:23 | T | -| main.rs:362:41:362:45 | thing | | main.rs:362:23:362:38 | T | -| main.rs:362:57:364:5 | { ... } | | main.rs:362:19:362:20 | TS | -| main.rs:363:9:363:13 | thing | | main.rs:362:23:362:38 | T | -| main.rs:366:56:366:60 | thing | | main.rs:366:39:366:53 | TP | -| main.rs:366:73:369:5 | { ... } | | main.rs:235:5:236:14 | S1 | -| main.rs:368:9:368:13 | thing | | main.rs:366:39:366:53 | TP | -| main.rs:371:16:442:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:372:13:372:20 | thing_s1 | | main.rs:224:5:227:5 | MyThing | -| main.rs:372:24:372:40 | MyThing {...} | | main.rs:224:5:227:5 | MyThing | -| main.rs:373:13:373:20 | thing_s2 | | main.rs:224:5:227:5 | MyThing | -| main.rs:373:24:373:40 | MyThing {...} | | main.rs:224:5:227:5 | MyThing | -| main.rs:374:13:374:20 | thing_s3 | | main.rs:224:5:227:5 | MyThing | -| main.rs:374:24:374:40 | MyThing {...} | | main.rs:224:5:227:5 | MyThing | -| main.rs:378:18:378:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:378:18:378:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:378:18:378:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:378:18:378:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:378:26:378:33 | thing_s1 | | main.rs:224:5:227:5 | MyThing | -| main.rs:379:18:379:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:379:18:379:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:379:18:379:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:379:18:379:40 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:379:26:379:33 | thing_s2 | | main.rs:224:5:227:5 | MyThing | -| main.rs:380:13:380:14 | s3 | | main.rs:239:5:240:14 | S3 | -| main.rs:380:22:380:29 | thing_s3 | | main.rs:224:5:227:5 | MyThing | -| main.rs:381:18:381:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:381:18:381:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:381:18:381:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:381:18:381:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:381:26:381:27 | s3 | | main.rs:239:5:240:14 | S3 | -| main.rs:383:13:383:14 | p1 | | main.rs:229:5:233:5 | MyPair | -| main.rs:383:18:383:42 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:384:18:384:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:384:18:384:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:384:18:384:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:384:18:384:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:384:26:384:27 | p1 | | main.rs:229:5:233:5 | MyPair | -| main.rs:386:13:386:14 | p2 | | main.rs:229:5:233:5 | MyPair | -| main.rs:386:18:386:42 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:387:18:387:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:387:18:387:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:387:18:387:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:387:18:387:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:387:26:387:27 | p2 | | main.rs:229:5:233:5 | MyPair | -| main.rs:389:13:389:14 | p3 | | main.rs:229:5:233:5 | MyPair | -| main.rs:389:18:392:9 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:390:17:390:33 | MyThing {...} | | main.rs:224:5:227:5 | MyThing | -| main.rs:393:18:393:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:393:18:393:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:393:18:393:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:393:18:393:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:393:26:393:27 | p3 | | main.rs:229:5:233:5 | MyPair | -| main.rs:396:13:396:13 | a | | main.rs:229:5:233:5 | MyPair | -| main.rs:396:17:396:41 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:397:17:397:17 | a | | main.rs:229:5:233:5 | MyPair | +| main.rs:102:30:105:9 | { ... } | | main.rs:99:5:99:29 | ATupleStruct | +| main.rs:116:25:116:28 | SelfParam | | main.rs:115:5:117:5 | Self [trait MyTrait] | +| main.rs:121:25:121:28 | SelfParam | | main.rs:110:5:113:5 | MyThing | +| main.rs:121:39:123:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:122:13:122:16 | self | | main.rs:110:5:113:5 | MyThing | +| main.rs:126:16:132:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:127:13:127:13 | x | | main.rs:110:5:113:5 | MyThing | +| main.rs:127:17:127:39 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | +| main.rs:127:34:127:37 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:128:17:128:17 | x | | main.rs:110:5:113:5 | MyThing | +| main.rs:130:13:130:13 | y | | main.rs:110:5:113:5 | MyThing | +| main.rs:130:17:130:40 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | +| main.rs:130:34:130:38 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:131:39:131:39 | y | | main.rs:110:5:113:5 | MyThing | +| main.rs:141:25:141:29 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:141:25:141:29 | SelfParam | TRef | main.rs:139:9:144:9 | Self [trait Foo] | +| main.rs:141:32:143:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:142:26:142:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:142:26:142:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:142:26:142:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:142:26:142:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:148:25:148:29 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:148:25:148:29 | SelfParam | TRef | main.rs:146:9:151:9 | Self [trait Bar] | +| main.rs:148:32:150:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:149:26:149:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:149:26:149:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:149:26:149:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:149:26:149:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:160:15:181:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:162:9:165:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:166:9:169:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:170:9:173:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:174:9:180:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:178:13:178:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | +| main.rs:178:27:178:28 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:179:13:179:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | +| main.rs:179:27:179:28 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:197:15:197:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | +| main.rs:197:15:197:18 | SelfParam | A | main.rs:190:5:191:14 | S1 | +| main.rs:197:27:199:9 | { ... } | | main.rs:190:5:191:14 | S1 | +| main.rs:198:13:198:16 | self | | main.rs:185:5:188:5 | MyThing | +| main.rs:198:13:198:16 | self | A | main.rs:190:5:191:14 | S1 | +| main.rs:204:15:204:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | +| main.rs:204:15:204:18 | SelfParam | A | main.rs:192:5:193:14 | S2 | +| main.rs:204:29:206:9 | { ... } | | main.rs:185:5:188:5 | MyThing | +| main.rs:204:29:206:9 | { ... } | A | main.rs:192:5:193:14 | S2 | +| main.rs:205:13:205:30 | Self {...} | | main.rs:185:5:188:5 | MyThing | +| main.rs:205:13:205:30 | Self {...} | A | main.rs:192:5:193:14 | S2 | +| main.rs:205:23:205:26 | self | | main.rs:185:5:188:5 | MyThing | +| main.rs:205:23:205:26 | self | A | main.rs:192:5:193:14 | S2 | +| main.rs:210:15:210:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | +| main.rs:210:15:210:18 | SelfParam | A | main.rs:209:10:209:10 | T | +| main.rs:210:26:212:9 | { ... } | | main.rs:209:10:209:10 | T | +| main.rs:211:13:211:16 | self | | main.rs:185:5:188:5 | MyThing | +| main.rs:211:13:211:16 | self | A | main.rs:209:10:209:10 | T | +| main.rs:215:16:231:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:216:13:216:13 | x | | main.rs:185:5:188:5 | MyThing | +| main.rs:216:17:216:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | +| main.rs:217:13:217:13 | y | | main.rs:185:5:188:5 | MyThing | +| main.rs:217:17:217:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | +| main.rs:220:18:220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:220:18:220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:220:18:220:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:220:18:220:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:220:26:220:26 | x | | main.rs:185:5:188:5 | MyThing | +| main.rs:221:18:221:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:221:18:221:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:221:18:221:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:221:18:221:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:221:26:221:26 | y | | main.rs:185:5:188:5 | MyThing | +| main.rs:223:18:223:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:223:18:223:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:223:18:223:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:223:18:223:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:223:26:223:26 | x | | main.rs:185:5:188:5 | MyThing | +| main.rs:224:18:224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:224:18:224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:224:18:224:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:224:18:224:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:224:26:224:26 | y | | main.rs:185:5:188:5 | MyThing | +| main.rs:226:13:226:13 | x | | main.rs:185:5:188:5 | MyThing | +| main.rs:226:17:226:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | +| main.rs:227:13:227:13 | y | | main.rs:185:5:188:5 | MyThing | +| main.rs:227:17:227:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | +| main.rs:229:18:229:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:229:18:229:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:229:18:229:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:229:18:229:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:229:26:229:26 | x | | main.rs:185:5:188:5 | MyThing | +| main.rs:230:18:230:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:230:18:230:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:230:18:230:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:230:18:230:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:230:26:230:26 | y | | main.rs:185:5:188:5 | MyThing | +| main.rs:254:15:254:18 | SelfParam | | main.rs:253:5:262:5 | Self [trait MyTrait] | +| main.rs:256:15:256:18 | SelfParam | | main.rs:253:5:262:5 | Self [trait MyTrait] | +| main.rs:259:9:261:9 | { ... } | | main.rs:253:5:262:5 | Self [trait MyTrait] | +| main.rs:260:13:260:16 | self | | main.rs:253:5:262:5 | Self [trait MyTrait] | +| main.rs:266:16:266:19 | SelfParam | | main.rs:264:5:269:5 | Self [trait MyProduct] | +| main.rs:268:16:268:19 | SelfParam | | main.rs:264:5:269:5 | Self [trait MyProduct] | +| main.rs:271:43:271:43 | x | | main.rs:271:26:271:40 | T2 | +| main.rs:271:56:273:5 | { ... } | | main.rs:271:22:271:23 | T1 | +| main.rs:272:9:272:9 | x | | main.rs:271:26:271:40 | T2 | +| main.rs:277:15:277:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | +| main.rs:277:15:277:18 | SelfParam | A | main.rs:246:5:247:14 | S1 | +| main.rs:277:27:279:9 | { ... } | | main.rs:246:5:247:14 | S1 | +| main.rs:278:13:278:16 | self | | main.rs:235:5:238:5 | MyThing | +| main.rs:278:13:278:16 | self | A | main.rs:246:5:247:14 | S1 | +| main.rs:284:15:284:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | +| main.rs:284:15:284:18 | SelfParam | A | main.rs:248:5:249:14 | S2 | +| main.rs:284:29:286:9 | { ... } | | main.rs:235:5:238:5 | MyThing | +| main.rs:284:29:286:9 | { ... } | A | main.rs:248:5:249:14 | S2 | +| main.rs:285:13:285:30 | Self {...} | | main.rs:235:5:238:5 | MyThing | +| main.rs:285:13:285:30 | Self {...} | A | main.rs:248:5:249:14 | S2 | +| main.rs:285:23:285:26 | self | | main.rs:235:5:238:5 | MyThing | +| main.rs:285:23:285:26 | self | A | main.rs:248:5:249:14 | S2 | +| main.rs:296:15:296:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | +| main.rs:296:15:296:18 | SelfParam | A | main.rs:250:5:251:14 | S3 | +| main.rs:296:27:298:9 | { ... } | | main.rs:291:10:291:11 | TD | +| main.rs:303:15:303:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:303:15:303:18 | SelfParam | P1 | main.rs:301:10:301:10 | I | +| main.rs:303:15:303:18 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:303:26:305:9 | { ... } | | main.rs:301:10:301:10 | I | +| main.rs:304:13:304:16 | self | | main.rs:240:5:244:5 | MyPair | +| main.rs:304:13:304:16 | self | P1 | main.rs:301:10:301:10 | I | +| main.rs:304:13:304:16 | self | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:310:15:310:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:310:15:310:18 | SelfParam | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:310:15:310:18 | SelfParam | P2 | main.rs:248:5:249:14 | S2 | +| main.rs:310:27:312:9 | { ... } | | main.rs:250:5:251:14 | S3 | +| main.rs:317:15:317:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:317:15:317:18 | SelfParam | P1 | main.rs:235:5:238:5 | MyThing | +| main.rs:317:15:317:18 | SelfParam | P1.A | main.rs:315:10:315:11 | TT | +| main.rs:317:15:317:18 | SelfParam | P2 | main.rs:250:5:251:14 | S3 | +| main.rs:317:27:320:9 | { ... } | | main.rs:315:10:315:11 | TT | +| main.rs:318:25:318:28 | self | | main.rs:240:5:244:5 | MyPair | +| main.rs:318:25:318:28 | self | P1 | main.rs:235:5:238:5 | MyThing | +| main.rs:318:25:318:28 | self | P1.A | main.rs:315:10:315:11 | TT | +| main.rs:318:25:318:28 | self | P2 | main.rs:250:5:251:14 | S3 | +| main.rs:326:16:326:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:326:16:326:19 | SelfParam | P1 | main.rs:324:10:324:10 | A | +| main.rs:326:16:326:19 | SelfParam | P2 | main.rs:324:10:324:10 | A | +| main.rs:326:27:328:9 | { ... } | | main.rs:324:10:324:10 | A | +| main.rs:327:13:327:16 | self | | main.rs:240:5:244:5 | MyPair | +| main.rs:327:13:327:16 | self | P1 | main.rs:324:10:324:10 | A | +| main.rs:327:13:327:16 | self | P2 | main.rs:324:10:324:10 | A | +| main.rs:331:16:331:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:331:16:331:19 | SelfParam | P1 | main.rs:324:10:324:10 | A | +| main.rs:331:16:331:19 | SelfParam | P2 | main.rs:324:10:324:10 | A | +| main.rs:331:27:333:9 | { ... } | | main.rs:324:10:324:10 | A | +| main.rs:332:13:332:16 | self | | main.rs:240:5:244:5 | MyPair | +| main.rs:332:13:332:16 | self | P1 | main.rs:324:10:324:10 | A | +| main.rs:332:13:332:16 | self | P2 | main.rs:324:10:324:10 | A | +| main.rs:339:16:339:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:339:16:339:19 | SelfParam | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:339:16:339:19 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:339:28:341:9 | { ... } | | main.rs:246:5:247:14 | S1 | +| main.rs:340:13:340:16 | self | | main.rs:240:5:244:5 | MyPair | +| main.rs:340:13:340:16 | self | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:340:13:340:16 | self | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:344:16:344:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:344:16:344:19 | SelfParam | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:344:16:344:19 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:344:28:346:9 | { ... } | | main.rs:248:5:249:14 | S2 | +| main.rs:345:13:345:16 | self | | main.rs:240:5:244:5 | MyPair | +| main.rs:345:13:345:16 | self | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:345:13:345:16 | self | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:349:46:349:46 | p | | main.rs:349:24:349:43 | P | +| main.rs:349:58:351:5 | { ... } | | main.rs:349:16:349:17 | V1 | +| main.rs:350:9:350:9 | p | | main.rs:349:24:349:43 | P | +| main.rs:353:46:353:46 | p | | main.rs:353:24:353:43 | P | +| main.rs:353:58:355:5 | { ... } | | main.rs:353:20:353:21 | V2 | +| main.rs:354:9:354:9 | p | | main.rs:353:24:353:43 | P | +| main.rs:357:54:357:54 | p | | main.rs:240:5:244:5 | MyPair | +| main.rs:357:54:357:54 | p | P1 | main.rs:357:20:357:21 | V0 | +| main.rs:357:54:357:54 | p | P2 | main.rs:357:32:357:51 | P | +| main.rs:357:78:359:5 | { ... } | | main.rs:357:24:357:25 | V1 | +| main.rs:358:9:358:9 | p | | main.rs:240:5:244:5 | MyPair | +| main.rs:358:9:358:9 | p | P1 | main.rs:357:20:357:21 | V0 | +| main.rs:358:9:358:9 | p | P2 | main.rs:357:32:357:51 | P | +| main.rs:363:23:363:26 | SelfParam | | main.rs:361:5:364:5 | Self [trait ConvertTo] | +| main.rs:368:23:368:26 | SelfParam | | main.rs:366:10:366:23 | T | +| main.rs:368:35:370:9 | { ... } | | main.rs:246:5:247:14 | S1 | +| main.rs:369:13:369:16 | self | | main.rs:366:10:366:23 | T | +| main.rs:373:41:373:45 | thing | | main.rs:373:23:373:38 | T | +| main.rs:373:57:375:5 | { ... } | | main.rs:373:19:373:20 | TS | +| main.rs:374:9:374:13 | thing | | main.rs:373:23:373:38 | T | +| main.rs:377:56:377:60 | thing | | main.rs:377:39:377:53 | TP | +| main.rs:377:73:380:5 | { ... } | | main.rs:246:5:247:14 | S1 | +| main.rs:379:9:379:13 | thing | | main.rs:377:39:377:53 | TP | +| main.rs:382:16:453:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:383:13:383:20 | thing_s1 | | main.rs:235:5:238:5 | MyThing | +| main.rs:383:24:383:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | +| main.rs:384:13:384:20 | thing_s2 | | main.rs:235:5:238:5 | MyThing | +| main.rs:384:24:384:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | +| main.rs:385:13:385:20 | thing_s3 | | main.rs:235:5:238:5 | MyThing | +| main.rs:385:24:385:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | +| main.rs:389:18:389:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:389:18:389:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:389:18:389:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:389:18:389:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:389:26:389:33 | thing_s1 | | main.rs:235:5:238:5 | MyThing | +| main.rs:390:18:390:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:390:18:390:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:390:18:390:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:390:18:390:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:390:26:390:33 | thing_s2 | | main.rs:235:5:238:5 | MyThing | +| main.rs:391:13:391:14 | s3 | | main.rs:250:5:251:14 | S3 | +| main.rs:391:22:391:29 | thing_s3 | | main.rs:235:5:238:5 | MyThing | +| main.rs:392:18:392:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:392:18:392:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:392:18:392:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:392:18:392:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:392:26:392:27 | s3 | | main.rs:250:5:251:14 | S3 | +| main.rs:394:13:394:14 | p1 | | main.rs:240:5:244:5 | MyPair | +| main.rs:394:18:394:42 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:395:18:395:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:395:18:395:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:395:18:395:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:395:18:395:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:395:26:395:27 | p1 | | main.rs:240:5:244:5 | MyPair | +| main.rs:397:13:397:14 | p2 | | main.rs:240:5:244:5 | MyPair | +| main.rs:397:18:397:42 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | | main.rs:398:18:398:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:398:18:398:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:398:18:398:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:398:18:398:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:399:17:399:17 | a | | main.rs:229:5:233:5 | MyPair | -| main.rs:400:18:400:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:400:18:400:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:400:18:400:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:400:18:400:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:406:13:406:13 | b | | main.rs:229:5:233:5 | MyPair | -| main.rs:406:17:406:41 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:407:17:407:17 | b | | main.rs:229:5:233:5 | MyPair | -| main.rs:408:18:408:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:408:18:408:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:408:18:408:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:408:18:408:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:409:17:409:17 | b | | main.rs:229:5:233:5 | MyPair | -| main.rs:410:18:410:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:410:18:410:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:410:18:410:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:410:18:410:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:414:31:414:38 | thing_s1 | | main.rs:224:5:227:5 | MyThing | -| main.rs:415:18:415:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:415:18:415:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:415:18:415:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:415:18:415:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:416:31:416:38 | thing_s2 | | main.rs:224:5:227:5 | MyThing | -| main.rs:417:18:417:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:417:18:417:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:417:18:417:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:417:18:417:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:420:13:420:13 | a | | main.rs:229:5:233:5 | MyPair | -| main.rs:420:17:420:41 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:421:25:421:25 | a | | main.rs:229:5:233:5 | MyPair | -| main.rs:422:18:422:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:422:18:422:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:422:18:422:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:422:18:422:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:423:25:423:25 | a | | main.rs:229:5:233:5 | MyPair | -| main.rs:424:18:424:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:424:18:424:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:424:18:424:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:424:18:424:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:427:13:427:13 | b | | main.rs:229:5:233:5 | MyPair | -| main.rs:427:17:427:41 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:428:25:428:25 | b | | main.rs:229:5:233:5 | MyPair | -| main.rs:429:18:429:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:429:18:429:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:429:18:429:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:429:18:429:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:430:25:430:25 | b | | main.rs:229:5:233:5 | MyPair | -| main.rs:431:18:431:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:431:18:431:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:431:18:431:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:431:18:431:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:433:13:433:13 | c | | main.rs:229:5:233:5 | MyPair | -| main.rs:433:17:436:9 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:435:17:435:41 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:437:29:437:29 | c | | main.rs:229:5:233:5 | MyPair | -| main.rs:439:13:439:17 | thing | | main.rs:224:5:227:5 | MyThing | -| main.rs:439:21:439:37 | MyThing {...} | | main.rs:224:5:227:5 | MyThing | -| main.rs:440:17:440:21 | thing | | main.rs:224:5:227:5 | MyThing | -| main.rs:441:28:441:32 | thing | | main.rs:224:5:227:5 | MyThing | -| main.rs:450:26:450:29 | SelfParam | | main.rs:449:5:453:5 | Self [trait OverlappingTrait] | -| main.rs:452:28:452:31 | SelfParam | | main.rs:449:5:453:5 | Self [trait OverlappingTrait] | -| main.rs:452:34:452:35 | s1 | | main.rs:446:5:447:14 | S1 | -| main.rs:457:26:457:29 | SelfParam | | main.rs:446:5:447:14 | S1 | -| main.rs:457:38:459:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:462:28:462:31 | SelfParam | | main.rs:446:5:447:14 | S1 | -| main.rs:462:34:462:35 | s1 | | main.rs:446:5:447:14 | S1 | -| main.rs:462:48:464:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:469:26:469:29 | SelfParam | | main.rs:446:5:447:14 | S1 | -| main.rs:469:38:471:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:470:13:470:16 | self | | main.rs:446:5:447:14 | S1 | -| main.rs:474:28:474:31 | SelfParam | | main.rs:446:5:447:14 | S1 | -| main.rs:474:40:476:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:475:13:475:16 | self | | main.rs:446:5:447:14 | S1 | -| main.rs:483:26:483:29 | SelfParam | | main.rs:479:5:479:22 | S2 | -| main.rs:483:26:483:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:483:38:485:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:488:28:488:31 | SelfParam | | main.rs:479:5:479:22 | S2 | -| main.rs:488:28:488:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:488:40:490:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:495:26:495:29 | SelfParam | | main.rs:479:5:479:22 | S2 | -| main.rs:495:26:495:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:495:38:497:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:500:28:500:31 | SelfParam | | main.rs:479:5:479:22 | S2 | -| main.rs:500:28:500:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:500:34:500:35 | s1 | | main.rs:446:5:447:14 | S1 | -| main.rs:500:48:502:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:507:26:507:29 | SelfParam | | main.rs:479:5:479:22 | S2 | -| main.rs:507:26:507:29 | SelfParam | T2 | main.rs:446:5:447:14 | S1 | -| main.rs:507:38:509:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:512:28:512:31 | SelfParam | | main.rs:479:5:479:22 | S2 | -| main.rs:512:28:512:31 | SelfParam | T2 | main.rs:446:5:447:14 | S1 | -| main.rs:512:34:512:35 | s1 | | main.rs:446:5:447:14 | S1 | -| main.rs:512:48:514:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:521:14:521:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:521:14:521:18 | SelfParam | TRef | main.rs:520:5:522:5 | Self [trait OverlappingTrait2] | -| main.rs:521:21:521:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:521:21:521:21 | x | TRef | main.rs:520:29:520:29 | T | -| main.rs:526:14:526:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:526:14:526:18 | SelfParam | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:526:14:526:18 | SelfParam | TRef.T3 | main.rs:524:10:524:10 | T | -| main.rs:526:21:526:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:526:21:526:21 | x | TRef | main.rs:524:10:524:10 | T | -| main.rs:526:37:528:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:526:37:528:9 | { ... } | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:526:37:528:9 | { ... } | TRef.T3 | main.rs:524:10:524:10 | T | -| main.rs:527:13:527:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:527:13:527:16 | self | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:527:13:527:16 | self | TRef.T3 | main.rs:524:10:524:10 | T | -| main.rs:533:14:533:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:533:14:533:18 | SelfParam | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:533:14:533:18 | SelfParam | TRef.T3 | main.rs:531:10:531:10 | T | -| main.rs:533:21:533:21 | x | | main.rs:531:10:531:10 | T | -| main.rs:533:36:535:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:533:36:535:9 | { ... } | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:533:36:535:9 | { ... } | TRef.T3 | main.rs:531:10:531:10 | T | -| main.rs:534:13:534:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:534:13:534:16 | self | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:534:13:534:16 | self | TRef.T3 | main.rs:531:10:531:10 | T | -| main.rs:540:14:540:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:540:14:540:18 | SelfParam | TRef | main.rs:538:5:541:5 | Self [trait MyTrait1] | -| main.rs:540:21:540:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:550:14:550:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:550:14:550:18 | SelfParam | TRef | main.rs:545:5:546:14 | S4 | -| main.rs:550:21:550:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:560:14:560:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:560:14:560:18 | SelfParam | TRef | main.rs:555:5:556:22 | S5 | -| main.rs:560:14:560:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:560:21:560:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:569:16:595:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:571:18:571:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:571:18:571:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:571:18:571:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:571:18:571:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:572:18:572:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:572:18:572:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:572:18:572:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:572:18:572:45 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:572:26:572:45 | ...::common_method(...) | | main.rs:446:5:447:14 | S1 | -| main.rs:573:18:573:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:573:18:573:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:573:18:573:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:573:18:573:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:574:18:574:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:574:18:574:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:574:18:574:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:574:18:574:47 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:574:26:574:47 | ...::common_method_2(...) | | main.rs:446:5:447:14 | S1 | -| main.rs:577:18:577:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:577:18:577:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:577:18:577:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:577:18:577:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:578:18:578:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:578:18:578:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:578:18:578:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:578:18:578:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:578:26:578:56 | ...::common_method(...) | | main.rs:446:5:447:14 | S1 | -| main.rs:581:18:581:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:581:18:581:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:581:18:581:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:581:18:581:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:398:18:398:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:398:18:398:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:398:26:398:27 | p2 | | main.rs:240:5:244:5 | MyPair | +| main.rs:400:13:400:14 | p3 | | main.rs:240:5:244:5 | MyPair | +| main.rs:400:18:403:9 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:401:17:401:33 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | +| main.rs:404:18:404:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:404:18:404:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:404:18:404:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:404:18:404:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:404:26:404:27 | p3 | | main.rs:240:5:244:5 | MyPair | +| main.rs:407:13:407:13 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:407:17:407:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:408:17:408:17 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:409:18:409:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:409:18:409:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:409:18:409:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:409:18:409:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:410:17:410:17 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:411:18:411:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:411:18:411:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:411:18:411:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:411:18:411:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:417:13:417:13 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:417:17:417:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:418:17:418:17 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:419:18:419:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:419:18:419:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:419:18:419:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:419:18:419:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:420:17:420:17 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:421:18:421:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:421:18:421:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:421:18:421:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:421:18:421:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:425:31:425:38 | thing_s1 | | main.rs:235:5:238:5 | MyThing | +| main.rs:426:18:426:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:426:18:426:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:426:18:426:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:426:18:426:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:427:31:427:38 | thing_s2 | | main.rs:235:5:238:5 | MyThing | +| main.rs:428:18:428:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:428:18:428:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:428:18:428:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:428:18:428:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:431:13:431:13 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:431:17:431:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:432:25:432:25 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:433:18:433:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:433:18:433:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:433:18:433:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:433:18:433:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:434:25:434:25 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:435:18:435:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:435:18:435:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:435:18:435:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:435:18:435:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:438:13:438:13 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:438:17:438:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:439:25:439:25 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:440:18:440:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:440:18:440:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:440:18:440:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:440:18:440:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:441:25:441:25 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:442:18:442:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:442:18:442:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:442:18:442:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:442:18:442:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:444:13:444:13 | c | | main.rs:240:5:244:5 | MyPair | +| main.rs:444:17:447:9 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:446:17:446:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:448:29:448:29 | c | | main.rs:240:5:244:5 | MyPair | +| main.rs:450:13:450:17 | thing | | main.rs:235:5:238:5 | MyThing | +| main.rs:450:21:450:37 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | +| main.rs:451:17:451:21 | thing | | main.rs:235:5:238:5 | MyThing | +| main.rs:452:28:452:32 | thing | | main.rs:235:5:238:5 | MyThing | +| main.rs:461:26:461:29 | SelfParam | | main.rs:460:5:464:5 | Self [trait OverlappingTrait] | +| main.rs:463:28:463:31 | SelfParam | | main.rs:460:5:464:5 | Self [trait OverlappingTrait] | +| main.rs:463:34:463:35 | s1 | | main.rs:457:5:458:14 | S1 | +| main.rs:468:26:468:29 | SelfParam | | main.rs:457:5:458:14 | S1 | +| main.rs:468:38:470:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:473:28:473:31 | SelfParam | | main.rs:457:5:458:14 | S1 | +| main.rs:473:34:473:35 | s1 | | main.rs:457:5:458:14 | S1 | +| main.rs:473:48:475:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:480:26:480:29 | SelfParam | | main.rs:457:5:458:14 | S1 | +| main.rs:480:38:482:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:481:13:481:16 | self | | main.rs:457:5:458:14 | S1 | +| main.rs:485:28:485:31 | SelfParam | | main.rs:457:5:458:14 | S1 | +| main.rs:485:40:487:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:486:13:486:16 | self | | main.rs:457:5:458:14 | S1 | +| main.rs:494:26:494:29 | SelfParam | | main.rs:490:5:490:22 | S2 | +| main.rs:494:26:494:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:494:38:496:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:499:28:499:31 | SelfParam | | main.rs:490:5:490:22 | S2 | +| main.rs:499:28:499:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:499:40:501:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:506:26:506:29 | SelfParam | | main.rs:490:5:490:22 | S2 | +| main.rs:506:26:506:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:506:38:508:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:511:28:511:31 | SelfParam | | main.rs:490:5:490:22 | S2 | +| main.rs:511:28:511:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:511:34:511:35 | s1 | | main.rs:457:5:458:14 | S1 | +| main.rs:511:48:513:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:518:26:518:29 | SelfParam | | main.rs:490:5:490:22 | S2 | +| main.rs:518:26:518:29 | SelfParam | T2 | main.rs:457:5:458:14 | S1 | +| main.rs:518:38:520:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:523:28:523:31 | SelfParam | | main.rs:490:5:490:22 | S2 | +| main.rs:523:28:523:31 | SelfParam | T2 | main.rs:457:5:458:14 | S1 | +| main.rs:523:34:523:35 | s1 | | main.rs:457:5:458:14 | S1 | +| main.rs:523:48:525:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:532:14:532:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:532:14:532:18 | SelfParam | TRef | main.rs:531:5:533:5 | Self [trait OverlappingTrait2] | +| main.rs:532:21:532:21 | x | | {EXTERNAL LOCATION} | & | +| main.rs:532:21:532:21 | x | TRef | main.rs:531:29:531:29 | T | +| main.rs:537:14:537:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:537:14:537:18 | SelfParam | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:537:14:537:18 | SelfParam | TRef.T3 | main.rs:535:10:535:10 | T | +| main.rs:537:21:537:21 | x | | {EXTERNAL LOCATION} | & | +| main.rs:537:21:537:21 | x | TRef | main.rs:535:10:535:10 | T | +| main.rs:537:37:539:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:537:37:539:9 | { ... } | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:537:37:539:9 | { ... } | TRef.T3 | main.rs:535:10:535:10 | T | +| main.rs:538:13:538:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:538:13:538:16 | self | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:538:13:538:16 | self | TRef.T3 | main.rs:535:10:535:10 | T | +| main.rs:544:14:544:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:544:14:544:18 | SelfParam | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:544:14:544:18 | SelfParam | TRef.T3 | main.rs:542:10:542:10 | T | +| main.rs:544:21:544:21 | x | | main.rs:542:10:542:10 | T | +| main.rs:544:36:546:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:544:36:546:9 | { ... } | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:544:36:546:9 | { ... } | TRef.T3 | main.rs:542:10:542:10 | T | +| main.rs:545:13:545:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:545:13:545:16 | self | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:545:13:545:16 | self | TRef.T3 | main.rs:542:10:542:10 | T | +| main.rs:551:14:551:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:551:14:551:18 | SelfParam | TRef | main.rs:549:5:552:5 | Self [trait MyTrait1] | +| main.rs:551:21:551:22 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:561:14:561:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:561:14:561:18 | SelfParam | TRef | main.rs:556:5:557:14 | S4 | +| main.rs:561:21:561:22 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:571:14:571:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:571:14:571:18 | SelfParam | TRef | main.rs:566:5:567:22 | S5 | +| main.rs:571:14:571:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:571:21:571:22 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:580:16:606:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:582:18:582:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:582:18:582:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:582:18:582:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:582:26:582:49 | ...::common_method(...) | | main.rs:446:5:447:14 | S1 | +| main.rs:582:18:582:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:582:18:582:42 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:583:18:583:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:583:18:583:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:583:18:583:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:583:26:583:56 | ...::common_method(...) | | main.rs:446:5:447:14 | S1 | -| main.rs:586:18:586:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:586:18:586:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:586:18:586:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:586:18:586:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:587:18:587:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:587:18:587:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:587:18:587:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:587:18:587:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:587:26:587:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | -| main.rs:587:26:587:37 | ...::m(...) | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:587:32:587:33 | &w | | {EXTERNAL LOCATION} | & | -| main.rs:590:9:590:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:590:15:590:17 | &S4 | | {EXTERNAL LOCATION} | & | -| main.rs:591:12:591:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:592:9:592:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:592:15:592:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:592:19:592:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:593:12:593:15 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:594:9:594:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:594:15:594:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:594:19:594:22 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:611:19:611:22 | SelfParam | | main.rs:609:5:612:5 | Self [trait FirstTrait] | -| main.rs:616:19:616:22 | SelfParam | | main.rs:614:5:617:5 | Self [trait SecondTrait] | -| main.rs:619:64:619:64 | x | | main.rs:619:45:619:61 | T | -| main.rs:619:70:623:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:621:18:621:18 | x | | main.rs:619:45:619:61 | T | -| main.rs:622:18:622:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:622:18:622:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:622:18:622:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:622:18:622:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:625:65:625:65 | x | | main.rs:625:46:625:62 | T | -| main.rs:625:71:629:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:627:18:627:18 | x | | main.rs:625:46:625:62 | T | -| main.rs:628:18:628:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:628:18:628:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:628:18:628:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:628:18:628:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:631:49:631:49 | x | | main.rs:631:30:631:46 | T | -| main.rs:631:55:634:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:632:17:632:17 | x | | main.rs:631:30:631:46 | T | +| main.rs:583:18:583:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:583:18:583:45 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:583:26:583:45 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | +| main.rs:584:18:584:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:584:18:584:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:584:18:584:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:584:18:584:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:585:18:585:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:585:18:585:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:585:18:585:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:585:18:585:47 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:585:26:585:47 | ...::common_method_2(...) | | main.rs:457:5:458:14 | S1 | +| main.rs:588:18:588:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:588:18:588:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:588:18:588:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:588:18:588:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:589:18:589:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:589:18:589:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:589:18:589:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:589:18:589:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:589:26:589:56 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | +| main.rs:592:18:592:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:592:18:592:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:592:18:592:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:592:18:592:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:593:18:593:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:593:18:593:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:593:18:593:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:593:18:593:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:593:26:593:49 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | +| main.rs:594:18:594:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:594:18:594:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:594:18:594:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:594:18:594:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:594:26:594:56 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | +| main.rs:597:18:597:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:597:18:597:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:597:18:597:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:597:18:597:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:598:18:598:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:598:18:598:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:598:18:598:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:598:18:598:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:598:26:598:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | +| main.rs:598:26:598:37 | ...::m(...) | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:598:32:598:33 | &w | | {EXTERNAL LOCATION} | & | +| main.rs:601:9:601:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| main.rs:601:15:601:17 | &S4 | | {EXTERNAL LOCATION} | & | +| main.rs:602:12:602:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:603:9:603:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| main.rs:603:15:603:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:603:19:603:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:604:12:604:15 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:605:9:605:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| main.rs:605:15:605:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:605:19:605:22 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:622:19:622:22 | SelfParam | | main.rs:620:5:623:5 | Self [trait FirstTrait] | +| main.rs:627:19:627:22 | SelfParam | | main.rs:625:5:628:5 | Self [trait SecondTrait] | +| main.rs:630:64:630:64 | x | | main.rs:630:45:630:61 | T | +| main.rs:630:70:634:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:632:18:632:18 | x | | main.rs:630:45:630:61 | T | | main.rs:633:18:633:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:633:18:633:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:633:18:633:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:633:18:633:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:636:53:636:53 | x | | main.rs:636:34:636:50 | T | -| main.rs:636:59:639:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:637:17:637:17 | x | | main.rs:636:34:636:50 | T | -| main.rs:638:18:638:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:638:18:638:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:638:18:638:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:638:18:638:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:641:43:641:43 | x | | main.rs:641:40:641:40 | T | -| main.rs:644:5:647:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:645:17:645:17 | x | | main.rs:641:40:641:40 | T | -| main.rs:646:18:646:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:646:18:646:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:646:18:646:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:646:18:646:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:650:16:650:19 | SelfParam | | main.rs:649:5:653:5 | Self [trait Pair] | -| main.rs:652:16:652:19 | SelfParam | | main.rs:649:5:653:5 | Self [trait Pair] | -| main.rs:655:53:655:53 | x | | main.rs:655:50:655:50 | T | -| main.rs:655:59:655:59 | y | | main.rs:655:50:655:50 | T | -| main.rs:659:5:662:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:660:17:660:17 | x | | main.rs:655:50:655:50 | T | -| main.rs:661:17:661:17 | y | | main.rs:655:50:655:50 | T | -| main.rs:664:58:664:58 | x | | main.rs:664:41:664:55 | T | -| main.rs:664:64:664:64 | y | | main.rs:664:41:664:55 | T | -| main.rs:664:70:669:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:666:18:666:18 | x | | main.rs:664:41:664:55 | T | -| main.rs:667:18:667:18 | y | | main.rs:664:41:664:55 | T | -| main.rs:668:18:668:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:668:18:668:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:668:18:668:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:668:18:668:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:671:69:671:69 | x | | main.rs:671:52:671:66 | T | -| main.rs:671:75:671:75 | y | | main.rs:671:52:671:66 | T | -| main.rs:671:81:676:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:673:18:673:18 | x | | main.rs:671:52:671:66 | T | -| main.rs:674:18:674:18 | y | | main.rs:671:52:671:66 | T | -| main.rs:675:18:675:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:675:18:675:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:675:18:675:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:675:18:675:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:678:50:678:50 | x | | main.rs:678:41:678:47 | T | -| main.rs:678:56:678:56 | y | | main.rs:678:41:678:47 | T | -| main.rs:678:62:683:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:680:18:680:18 | x | | main.rs:678:41:678:47 | T | -| main.rs:681:18:681:18 | y | | main.rs:678:41:678:47 | T | -| main.rs:682:18:682:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:682:18:682:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:682:18:682:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:682:18:682:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:685:54:685:54 | x | | main.rs:685:41:685:51 | T | -| main.rs:685:60:685:60 | y | | main.rs:685:41:685:51 | T | -| main.rs:685:66:690:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:687:18:687:18 | x | | main.rs:685:41:685:51 | T | -| main.rs:688:18:688:18 | y | | main.rs:685:41:685:51 | T | -| main.rs:689:18:689:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:689:18:689:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:689:18:689:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:689:18:689:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:697:18:697:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:697:18:697:22 | SelfParam | TRef | main.rs:694:5:698:5 | Self [trait TraitWithSelfTp] | -| main.rs:700:40:700:44 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:700:40:700:44 | thing | TRef | main.rs:700:17:700:37 | T | -| main.rs:700:56:702:5 | { ... } | | main.rs:700:14:700:14 | A | -| main.rs:701:9:701:13 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:701:9:701:13 | thing | TRef | main.rs:700:17:700:37 | T | -| main.rs:705:44:705:48 | thing | | main.rs:705:24:705:41 | S | -| main.rs:705:61:708:5 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:706:19:706:23 | thing | | main.rs:705:24:705:41 | S | -| main.rs:713:55:713:59 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:713:55:713:59 | thing | TRef | main.rs:713:25:713:52 | S | -| main.rs:713:66:716:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:715:25:715:29 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:715:25:715:29 | thing | TRef | main.rs:713:25:713:52 | S | -| main.rs:724:18:724:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:724:18:724:22 | SelfParam | TRef | main.rs:718:5:720:5 | MyStruct | -| main.rs:724:41:726:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:724:41:726:9 | { ... } | T | main.rs:718:5:720:5 | MyStruct | -| main.rs:725:18:725:47 | MyStruct {...} | | main.rs:718:5:720:5 | MyStruct | -| main.rs:725:36:725:39 | self | | {EXTERNAL LOCATION} | & | -| main.rs:725:36:725:39 | self | TRef | main.rs:718:5:720:5 | MyStruct | -| main.rs:731:19:734:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:732:13:732:13 | s | | main.rs:718:5:720:5 | MyStruct | -| main.rs:732:17:732:37 | MyStruct {...} | | main.rs:718:5:720:5 | MyStruct | -| main.rs:733:25:733:26 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:733:26:733:26 | s | | main.rs:718:5:720:5 | MyStruct | -| main.rs:749:15:749:18 | SelfParam | | main.rs:748:5:759:5 | Self [trait MyTrait] | -| main.rs:751:15:751:18 | SelfParam | | main.rs:748:5:759:5 | Self [trait MyTrait] | -| main.rs:754:9:756:9 | { ... } | | main.rs:748:19:748:19 | A | -| main.rs:755:13:755:16 | self | | main.rs:748:5:759:5 | Self [trait MyTrait] | -| main.rs:758:18:758:18 | x | | main.rs:748:5:759:5 | Self [trait MyTrait] | -| main.rs:762:15:762:18 | SelfParam | | main.rs:745:5:746:14 | S2 | -| main.rs:762:26:764:9 | { ... } | | main.rs:761:10:761:19 | T | -| main.rs:766:18:766:18 | x | | main.rs:745:5:746:14 | S2 | -| main.rs:766:32:768:9 | { ... } | | main.rs:761:10:761:19 | T | -| main.rs:772:15:772:18 | SelfParam | | main.rs:743:5:744:14 | S1 | -| main.rs:772:28:774:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:776:18:776:18 | x | | main.rs:743:5:744:14 | S1 | -| main.rs:776:34:778:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:783:50:783:50 | x | | main.rs:783:26:783:47 | T2 | -| main.rs:783:63:786:5 | { ... } | | main.rs:783:22:783:23 | T1 | -| main.rs:784:9:784:9 | x | | main.rs:783:26:783:47 | T2 | -| main.rs:785:9:785:9 | x | | main.rs:783:26:783:47 | T2 | -| main.rs:787:52:787:52 | x | | main.rs:787:28:787:49 | T2 | -| main.rs:787:65:791:5 | { ... } | | main.rs:787:24:787:25 | T1 | -| main.rs:788:24:788:24 | x | | main.rs:787:28:787:49 | T2 | -| main.rs:790:16:790:16 | x | | main.rs:787:28:787:49 | T2 | -| main.rs:792:52:792:52 | x | | main.rs:792:28:792:49 | T2 | -| main.rs:792:65:796:5 | { ... } | | main.rs:792:24:792:25 | T1 | -| main.rs:793:29:793:29 | x | | main.rs:792:28:792:49 | T2 | -| main.rs:795:21:795:21 | x | | main.rs:792:28:792:49 | T2 | -| main.rs:797:55:797:55 | x | | main.rs:797:31:797:52 | T2 | -| main.rs:797:68:801:5 | { ... } | | main.rs:797:27:797:28 | T1 | -| main.rs:798:27:798:27 | x | | main.rs:797:31:797:52 | T2 | -| main.rs:800:19:800:19 | x | | main.rs:797:31:797:52 | T2 | -| main.rs:802:55:802:55 | x | | main.rs:802:31:802:52 | T2 | -| main.rs:802:68:806:5 | { ... } | | main.rs:802:27:802:28 | T1 | -| main.rs:803:32:803:32 | x | | main.rs:802:31:802:52 | T2 | -| main.rs:805:24:805:24 | x | | main.rs:802:31:802:52 | T2 | -| main.rs:810:49:810:49 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:810:49:810:49 | x | T | main.rs:810:32:810:46 | T2 | -| main.rs:810:71:812:5 | { ... } | | main.rs:810:28:810:29 | T1 | -| main.rs:811:9:811:9 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:811:9:811:9 | x | T | main.rs:810:32:810:46 | T2 | -| main.rs:813:51:813:51 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:813:51:813:51 | x | T | main.rs:813:34:813:48 | T2 | -| main.rs:813:73:815:5 | { ... } | | main.rs:813:30:813:31 | T1 | -| main.rs:814:16:814:16 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:814:16:814:16 | x | T | main.rs:813:34:813:48 | T2 | -| main.rs:816:51:816:51 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:816:51:816:51 | x | T | main.rs:816:34:816:48 | T2 | -| main.rs:816:73:818:5 | { ... } | | main.rs:816:30:816:31 | T1 | -| main.rs:817:21:817:21 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:817:21:817:21 | x | T | main.rs:816:34:816:48 | T2 | -| main.rs:821:15:821:18 | SelfParam | | main.rs:738:5:741:5 | MyThing | -| main.rs:821:15:821:18 | SelfParam | T | main.rs:820:10:820:10 | T | -| main.rs:821:26:823:9 | { ... } | | main.rs:820:10:820:10 | T | -| main.rs:822:13:822:16 | self | | main.rs:738:5:741:5 | MyThing | -| main.rs:822:13:822:16 | self | T | main.rs:820:10:820:10 | T | -| main.rs:825:18:825:18 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:825:18:825:18 | x | T | main.rs:820:10:820:10 | T | -| main.rs:825:32:827:9 | { ... } | | main.rs:820:10:820:10 | T | -| main.rs:826:13:826:13 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:826:13:826:13 | x | T | main.rs:820:10:820:10 | T | -| main.rs:832:15:832:18 | SelfParam | | main.rs:830:5:833:5 | Self [trait MyTrait2] | -| main.rs:837:15:837:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:837:15:837:19 | SelfParam | TRef | main.rs:835:5:838:5 | Self [trait MyTrait3] | -| main.rs:840:46:840:46 | x | | main.rs:840:22:840:43 | T | -| main.rs:840:52:840:52 | y | | {EXTERNAL LOCATION} | & | -| main.rs:840:52:840:52 | y | TRef | main.rs:840:22:840:43 | T | -| main.rs:840:59:843:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:841:9:841:9 | x | | main.rs:840:22:840:43 | T | -| main.rs:842:9:842:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:842:9:842:9 | y | TRef | main.rs:840:22:840:43 | T | -| main.rs:845:16:903:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:846:13:846:13 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:846:17:846:33 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:847:13:847:13 | y | | main.rs:738:5:741:5 | MyThing | -| main.rs:847:17:847:33 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:849:18:849:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:849:18:849:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:849:18:849:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:849:18:849:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:849:26:849:26 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:850:18:850:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:850:18:850:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:850:18:850:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:850:18:850:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:850:26:850:26 | y | | main.rs:738:5:741:5 | MyThing | -| main.rs:852:13:852:13 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:852:17:852:33 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:853:13:853:13 | y | | main.rs:738:5:741:5 | MyThing | -| main.rs:853:17:853:33 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:855:18:855:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:855:18:855:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:855:18:855:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:855:18:855:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:855:26:855:26 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:856:18:856:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:856:18:856:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:856:18:856:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:856:18:856:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:856:26:856:26 | y | | main.rs:738:5:741:5 | MyThing | -| main.rs:858:13:858:14 | x2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:858:18:858:34 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:859:13:859:14 | y2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:859:18:859:34 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:861:31:861:32 | x2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:862:18:862:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:862:18:862:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:862:18:862:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:862:18:862:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:863:33:863:34 | x2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:864:18:864:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:864:18:864:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:864:18:864:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:864:18:864:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:865:33:865:34 | x2 | | main.rs:738:5:741:5 | MyThing | +| main.rs:633:18:633:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:633:18:633:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:636:65:636:65 | x | | main.rs:636:46:636:62 | T | +| main.rs:636:71:640:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:638:18:638:18 | x | | main.rs:636:46:636:62 | T | +| main.rs:639:18:639:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:639:18:639:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:639:18:639:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:639:18:639:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:642:49:642:49 | x | | main.rs:642:30:642:46 | T | +| main.rs:642:55:645:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:643:17:643:17 | x | | main.rs:642:30:642:46 | T | +| main.rs:644:18:644:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:644:18:644:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:644:18:644:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:644:18:644:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:647:53:647:53 | x | | main.rs:647:34:647:50 | T | +| main.rs:647:59:650:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:648:17:648:17 | x | | main.rs:647:34:647:50 | T | +| main.rs:649:18:649:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:649:18:649:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:649:18:649:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:649:18:649:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:652:43:652:43 | x | | main.rs:652:40:652:40 | T | +| main.rs:655:5:658:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:656:17:656:17 | x | | main.rs:652:40:652:40 | T | +| main.rs:657:18:657:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:657:18:657:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:657:18:657:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:657:18:657:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:661:16:661:19 | SelfParam | | main.rs:660:5:664:5 | Self [trait Pair] | +| main.rs:663:16:663:19 | SelfParam | | main.rs:660:5:664:5 | Self [trait Pair] | +| main.rs:666:53:666:53 | x | | main.rs:666:50:666:50 | T | +| main.rs:666:59:666:59 | y | | main.rs:666:50:666:50 | T | +| main.rs:670:5:673:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:671:17:671:17 | x | | main.rs:666:50:666:50 | T | +| main.rs:672:17:672:17 | y | | main.rs:666:50:666:50 | T | +| main.rs:675:58:675:58 | x | | main.rs:675:41:675:55 | T | +| main.rs:675:64:675:64 | y | | main.rs:675:41:675:55 | T | +| main.rs:675:70:680:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:677:18:677:18 | x | | main.rs:675:41:675:55 | T | +| main.rs:678:18:678:18 | y | | main.rs:675:41:675:55 | T | +| main.rs:679:18:679:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:679:18:679:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:679:18:679:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:679:18:679:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:682:69:682:69 | x | | main.rs:682:52:682:66 | T | +| main.rs:682:75:682:75 | y | | main.rs:682:52:682:66 | T | +| main.rs:682:81:687:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:684:18:684:18 | x | | main.rs:682:52:682:66 | T | +| main.rs:685:18:685:18 | y | | main.rs:682:52:682:66 | T | +| main.rs:686:18:686:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:686:18:686:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:686:18:686:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:686:18:686:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:689:50:689:50 | x | | main.rs:689:41:689:47 | T | +| main.rs:689:56:689:56 | y | | main.rs:689:41:689:47 | T | +| main.rs:689:62:694:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:691:18:691:18 | x | | main.rs:689:41:689:47 | T | +| main.rs:692:18:692:18 | y | | main.rs:689:41:689:47 | T | +| main.rs:693:18:693:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:693:18:693:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:693:18:693:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:693:18:693:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:696:54:696:54 | x | | main.rs:696:41:696:51 | T | +| main.rs:696:60:696:60 | y | | main.rs:696:41:696:51 | T | +| main.rs:696:66:701:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:698:18:698:18 | x | | main.rs:696:41:696:51 | T | +| main.rs:699:18:699:18 | y | | main.rs:696:41:696:51 | T | +| main.rs:700:18:700:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:700:18:700:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:700:18:700:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:700:18:700:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:708:18:708:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:708:18:708:22 | SelfParam | TRef | main.rs:705:5:709:5 | Self [trait TraitWithSelfTp] | +| main.rs:711:40:711:44 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:711:40:711:44 | thing | TRef | main.rs:711:17:711:37 | T | +| main.rs:711:56:713:5 | { ... } | | main.rs:711:14:711:14 | A | +| main.rs:712:9:712:13 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:712:9:712:13 | thing | TRef | main.rs:711:17:711:37 | T | +| main.rs:716:44:716:48 | thing | | main.rs:716:24:716:41 | S | +| main.rs:716:61:719:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:717:19:717:23 | thing | | main.rs:716:24:716:41 | S | +| main.rs:724:55:724:59 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:724:55:724:59 | thing | TRef | main.rs:724:25:724:52 | S | +| main.rs:724:66:727:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:726:25:726:29 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:726:25:726:29 | thing | TRef | main.rs:724:25:724:52 | S | +| main.rs:735:18:735:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:735:18:735:22 | SelfParam | TRef | main.rs:729:5:731:5 | MyStruct | +| main.rs:735:41:737:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:735:41:737:9 | { ... } | T | main.rs:729:5:731:5 | MyStruct | +| main.rs:736:18:736:47 | MyStruct {...} | | main.rs:729:5:731:5 | MyStruct | +| main.rs:736:36:736:39 | self | | {EXTERNAL LOCATION} | & | +| main.rs:736:36:736:39 | self | TRef | main.rs:729:5:731:5 | MyStruct | +| main.rs:742:19:745:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:743:13:743:13 | s | | main.rs:729:5:731:5 | MyStruct | +| main.rs:743:17:743:37 | MyStruct {...} | | main.rs:729:5:731:5 | MyStruct | +| main.rs:744:25:744:26 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:744:26:744:26 | s | | main.rs:729:5:731:5 | MyStruct | +| main.rs:760:15:760:18 | SelfParam | | main.rs:759:5:770:5 | Self [trait MyTrait] | +| main.rs:762:15:762:18 | SelfParam | | main.rs:759:5:770:5 | Self [trait MyTrait] | +| main.rs:765:9:767:9 | { ... } | | main.rs:759:19:759:19 | A | +| main.rs:766:13:766:16 | self | | main.rs:759:5:770:5 | Self [trait MyTrait] | +| main.rs:769:18:769:18 | x | | main.rs:759:5:770:5 | Self [trait MyTrait] | +| main.rs:773:15:773:18 | SelfParam | | main.rs:756:5:757:14 | S2 | +| main.rs:773:26:775:9 | { ... } | | main.rs:772:10:772:19 | T | +| main.rs:777:18:777:18 | x | | main.rs:756:5:757:14 | S2 | +| main.rs:777:32:779:9 | { ... } | | main.rs:772:10:772:19 | T | +| main.rs:783:15:783:18 | SelfParam | | main.rs:754:5:755:14 | S1 | +| main.rs:783:28:785:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:787:18:787:18 | x | | main.rs:754:5:755:14 | S1 | +| main.rs:787:34:789:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:794:50:794:50 | x | | main.rs:794:26:794:47 | T2 | +| main.rs:794:63:797:5 | { ... } | | main.rs:794:22:794:23 | T1 | +| main.rs:795:9:795:9 | x | | main.rs:794:26:794:47 | T2 | +| main.rs:796:9:796:9 | x | | main.rs:794:26:794:47 | T2 | +| main.rs:798:52:798:52 | x | | main.rs:798:28:798:49 | T2 | +| main.rs:798:65:802:5 | { ... } | | main.rs:798:24:798:25 | T1 | +| main.rs:799:24:799:24 | x | | main.rs:798:28:798:49 | T2 | +| main.rs:801:16:801:16 | x | | main.rs:798:28:798:49 | T2 | +| main.rs:803:52:803:52 | x | | main.rs:803:28:803:49 | T2 | +| main.rs:803:65:807:5 | { ... } | | main.rs:803:24:803:25 | T1 | +| main.rs:804:29:804:29 | x | | main.rs:803:28:803:49 | T2 | +| main.rs:806:21:806:21 | x | | main.rs:803:28:803:49 | T2 | +| main.rs:808:55:808:55 | x | | main.rs:808:31:808:52 | T2 | +| main.rs:808:68:812:5 | { ... } | | main.rs:808:27:808:28 | T1 | +| main.rs:809:27:809:27 | x | | main.rs:808:31:808:52 | T2 | +| main.rs:811:19:811:19 | x | | main.rs:808:31:808:52 | T2 | +| main.rs:813:55:813:55 | x | | main.rs:813:31:813:52 | T2 | +| main.rs:813:68:817:5 | { ... } | | main.rs:813:27:813:28 | T1 | +| main.rs:814:32:814:32 | x | | main.rs:813:31:813:52 | T2 | +| main.rs:816:24:816:24 | x | | main.rs:813:31:813:52 | T2 | +| main.rs:821:49:821:49 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:821:49:821:49 | x | T | main.rs:821:32:821:46 | T2 | +| main.rs:821:71:823:5 | { ... } | | main.rs:821:28:821:29 | T1 | +| main.rs:822:9:822:9 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:822:9:822:9 | x | T | main.rs:821:32:821:46 | T2 | +| main.rs:824:51:824:51 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:824:51:824:51 | x | T | main.rs:824:34:824:48 | T2 | +| main.rs:824:73:826:5 | { ... } | | main.rs:824:30:824:31 | T1 | +| main.rs:825:16:825:16 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:825:16:825:16 | x | T | main.rs:824:34:824:48 | T2 | +| main.rs:827:51:827:51 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:827:51:827:51 | x | T | main.rs:827:34:827:48 | T2 | +| main.rs:827:73:829:5 | { ... } | | main.rs:827:30:827:31 | T1 | +| main.rs:828:21:828:21 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:828:21:828:21 | x | T | main.rs:827:34:827:48 | T2 | +| main.rs:832:15:832:18 | SelfParam | | main.rs:749:5:752:5 | MyThing | +| main.rs:832:15:832:18 | SelfParam | T | main.rs:831:10:831:10 | T | +| main.rs:832:26:834:9 | { ... } | | main.rs:831:10:831:10 | T | +| main.rs:833:13:833:16 | self | | main.rs:749:5:752:5 | MyThing | +| main.rs:833:13:833:16 | self | T | main.rs:831:10:831:10 | T | +| main.rs:836:18:836:18 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:836:18:836:18 | x | T | main.rs:831:10:831:10 | T | +| main.rs:836:32:838:9 | { ... } | | main.rs:831:10:831:10 | T | +| main.rs:837:13:837:13 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:837:13:837:13 | x | T | main.rs:831:10:831:10 | T | +| main.rs:843:15:843:18 | SelfParam | | main.rs:841:5:844:5 | Self [trait MyTrait2] | +| main.rs:848:15:848:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:848:15:848:19 | SelfParam | TRef | main.rs:846:5:849:5 | Self [trait MyTrait3] | +| main.rs:851:46:851:46 | x | | main.rs:851:22:851:43 | T | +| main.rs:851:52:851:52 | y | | {EXTERNAL LOCATION} | & | +| main.rs:851:52:851:52 | y | TRef | main.rs:851:22:851:43 | T | +| main.rs:851:59:854:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:852:9:852:9 | x | | main.rs:851:22:851:43 | T | +| main.rs:853:9:853:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:853:9:853:9 | y | TRef | main.rs:851:22:851:43 | T | +| main.rs:856:16:914:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:857:13:857:13 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:857:17:857:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:858:13:858:13 | y | | main.rs:749:5:752:5 | MyThing | +| main.rs:858:17:858:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:860:18:860:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:860:18:860:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:860:18:860:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:860:18:860:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:860:26:860:26 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:861:18:861:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:861:18:861:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:861:18:861:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:861:18:861:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:861:26:861:26 | y | | main.rs:749:5:752:5 | MyThing | +| main.rs:863:13:863:13 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:863:17:863:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:864:13:864:13 | y | | main.rs:749:5:752:5 | MyThing | +| main.rs:864:17:864:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | | main.rs:866:18:866:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:866:18:866:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:866:18:866:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:866:18:866:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:867:31:867:32 | y2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:868:18:868:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:868:18:868:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:868:18:868:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:868:18:868:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:869:33:869:34 | y2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:870:18:870:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:870:18:870:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:870:18:870:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:870:18:870:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:871:33:871:34 | y2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:872:18:872:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:872:18:872:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:872:18:872:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:872:18:872:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:873:36:873:37 | x2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:874:18:874:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:874:18:874:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:874:18:874:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:874:18:874:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:875:36:875:37 | x2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:876:18:876:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:876:18:876:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:876:18:876:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:876:18:876:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:877:36:877:37 | y2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:878:18:878:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:878:18:878:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:878:18:878:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:878:18:878:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:879:36:879:37 | y2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:880:18:880:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:880:18:880:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:880:18:880:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:880:18:880:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:882:13:882:14 | x3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:882:18:884:9 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:883:16:883:32 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:885:13:885:14 | y3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:885:18:887:9 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:886:16:886:32 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:889:37:889:38 | x3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:890:18:890:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:890:18:890:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:890:18:890:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:890:18:890:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:891:39:891:40 | x3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:892:18:892:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:892:18:892:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:892:18:892:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:892:18:892:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:893:39:893:40 | x3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:894:18:894:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:894:18:894:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:894:18:894:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:894:18:894:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:895:37:895:38 | y3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:896:18:896:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:896:18:896:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:896:18:896:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:896:18:896:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:897:39:897:40 | y3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:898:18:898:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:898:18:898:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:898:18:898:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:898:18:898:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:899:39:899:40 | y3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:900:18:900:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:900:18:900:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:900:18:900:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:900:18:900:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:902:13:902:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:919:15:919:18 | SelfParam | | main.rs:907:5:911:5 | MyEnum | -| main.rs:919:15:919:18 | SelfParam | A | main.rs:918:10:918:10 | T | -| main.rs:919:26:924:9 | { ... } | | main.rs:918:10:918:10 | T | -| main.rs:920:19:920:22 | self | | main.rs:907:5:911:5 | MyEnum | -| main.rs:920:19:920:22 | self | A | main.rs:918:10:918:10 | T | -| main.rs:922:17:922:32 | ...::C2 {...} | | main.rs:907:5:911:5 | MyEnum | -| main.rs:927:16:933:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:929:13:929:13 | y | | main.rs:907:5:911:5 | MyEnum | -| main.rs:929:17:929:36 | ...::C2 {...} | | main.rs:907:5:911:5 | MyEnum | -| main.rs:931:18:931:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:931:18:931:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:931:18:931:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:931:18:931:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:932:18:932:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:932:18:932:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:932:18:932:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:932:18:932:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:932:26:932:26 | y | | main.rs:907:5:911:5 | MyEnum | -| main.rs:954:15:954:18 | SelfParam | | main.rs:952:5:955:5 | Self [trait MyTrait1] | -| main.rs:959:15:959:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:959:15:959:19 | SelfParam | TRef | main.rs:957:5:969:5 | Self [trait MyTrait2] | -| main.rs:962:9:968:9 | { ... } | | main.rs:957:20:957:22 | Tr2 | -| main.rs:964:17:964:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:964:17:964:20 | self | TRef | main.rs:957:5:969:5 | Self [trait MyTrait2] | -| main.rs:966:27:966:30 | self | | {EXTERNAL LOCATION} | & | -| main.rs:966:27:966:30 | self | TRef | main.rs:957:5:969:5 | Self [trait MyTrait2] | -| main.rs:973:15:973:18 | SelfParam | | main.rs:971:5:983:5 | Self [trait MyTrait3] | -| main.rs:976:9:982:9 | { ... } | | main.rs:971:20:971:22 | Tr3 | -| main.rs:978:17:978:20 | self | | main.rs:971:5:983:5 | Self [trait MyTrait3] | -| main.rs:980:26:980:30 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:980:27:980:30 | self | | main.rs:971:5:983:5 | Self [trait MyTrait3] | -| main.rs:987:15:987:18 | SelfParam | | main.rs:937:5:940:5 | MyThing | -| main.rs:987:15:987:18 | SelfParam | A | main.rs:985:10:985:10 | T | -| main.rs:987:26:989:9 | { ... } | | main.rs:985:10:985:10 | T | -| main.rs:988:13:988:16 | self | | main.rs:937:5:940:5 | MyThing | -| main.rs:988:13:988:16 | self | A | main.rs:985:10:985:10 | T | -| main.rs:996:15:996:18 | SelfParam | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:996:15:996:18 | SelfParam | A | main.rs:994:10:994:10 | T | -| main.rs:996:35:998:9 | { ... } | | main.rs:937:5:940:5 | MyThing | -| main.rs:996:35:998:9 | { ... } | A | main.rs:994:10:994:10 | T | -| main.rs:997:13:997:33 | MyThing {...} | | main.rs:937:5:940:5 | MyThing | -| main.rs:997:26:997:29 | self | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:997:26:997:29 | self | A | main.rs:994:10:994:10 | T | -| main.rs:1005:44:1005:44 | x | | main.rs:1005:26:1005:41 | T2 | -| main.rs:1005:57:1007:5 | { ... } | | main.rs:1005:22:1005:23 | T1 | -| main.rs:1006:9:1006:9 | x | | main.rs:1005:26:1005:41 | T2 | -| main.rs:1009:56:1009:56 | x | | main.rs:1009:39:1009:53 | T | -| main.rs:1009:62:1013:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1011:17:1011:17 | x | | main.rs:1009:39:1009:53 | T | -| main.rs:1012:18:1012:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1012:18:1012:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1012:18:1012:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1012:18:1012:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1015:16:1039:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1016:13:1016:13 | x | | main.rs:937:5:940:5 | MyThing | -| main.rs:1016:17:1016:33 | MyThing {...} | | main.rs:937:5:940:5 | MyThing | -| main.rs:1017:13:1017:13 | y | | main.rs:937:5:940:5 | MyThing | -| main.rs:1017:17:1017:33 | MyThing {...} | | main.rs:937:5:940:5 | MyThing | -| main.rs:1019:18:1019:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1019:18:1019:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1019:18:1019:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1019:18:1019:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1019:26:1019:26 | x | | main.rs:937:5:940:5 | MyThing | -| main.rs:1020:18:1020:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1020:18:1020:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1020:18:1020:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1020:18:1020:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1020:26:1020:26 | y | | main.rs:937:5:940:5 | MyThing | -| main.rs:1022:13:1022:13 | x | | main.rs:937:5:940:5 | MyThing | -| main.rs:1022:17:1022:33 | MyThing {...} | | main.rs:937:5:940:5 | MyThing | -| main.rs:1023:13:1023:13 | y | | main.rs:937:5:940:5 | MyThing | -| main.rs:1023:17:1023:33 | MyThing {...} | | main.rs:937:5:940:5 | MyThing | -| main.rs:1025:18:1025:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1025:18:1025:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1025:18:1025:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1025:18:1025:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1025:26:1025:26 | x | | main.rs:937:5:940:5 | MyThing | -| main.rs:1026:18:1026:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1026:18:1026:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1026:18:1026:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1026:18:1026:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1026:26:1026:26 | y | | main.rs:937:5:940:5 | MyThing | -| main.rs:1028:13:1028:13 | x | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1028:17:1028:34 | MyThing2 {...} | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1029:13:1029:13 | y | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1029:17:1029:34 | MyThing2 {...} | | main.rs:942:5:945:5 | MyThing2 | +| main.rs:866:18:866:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:866:18:866:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:866:26:866:26 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:867:18:867:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:867:18:867:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:867:18:867:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:867:18:867:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:867:26:867:26 | y | | main.rs:749:5:752:5 | MyThing | +| main.rs:869:13:869:14 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:869:18:869:34 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:870:13:870:14 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:870:18:870:34 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:872:31:872:32 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:873:18:873:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:873:18:873:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:873:18:873:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:873:18:873:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:874:33:874:34 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:875:18:875:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:875:18:875:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:875:18:875:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:875:18:875:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:876:33:876:34 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:877:18:877:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:877:18:877:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:877:18:877:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:877:18:877:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:878:31:878:32 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:879:18:879:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:879:18:879:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:879:18:879:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:879:18:879:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:880:33:880:34 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:881:18:881:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:881:18:881:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:881:18:881:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:881:18:881:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:882:33:882:34 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:883:18:883:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:883:18:883:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:883:18:883:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:883:18:883:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:884:36:884:37 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:885:18:885:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:885:18:885:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:885:18:885:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:885:18:885:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:886:36:886:37 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:887:18:887:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:887:18:887:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:887:18:887:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:887:18:887:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:888:36:888:37 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:889:18:889:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:889:18:889:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:889:18:889:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:889:18:889:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:890:36:890:37 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:891:18:891:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:891:18:891:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:891:18:891:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:891:18:891:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:893:13:893:14 | x3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:893:18:895:9 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:894:16:894:32 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:896:13:896:14 | y3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:896:18:898:9 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:897:16:897:32 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:900:37:900:38 | x3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:901:18:901:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:901:18:901:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:901:18:901:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:901:18:901:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:902:39:902:40 | x3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:903:18:903:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:903:18:903:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:903:18:903:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:903:18:903:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:904:39:904:40 | x3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:905:18:905:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:905:18:905:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:905:18:905:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:905:18:905:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:906:37:906:38 | y3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:907:18:907:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:907:18:907:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:907:18:907:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:907:18:907:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:908:39:908:40 | y3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:909:18:909:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:909:18:909:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:909:18:909:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:909:18:909:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:910:39:910:40 | y3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:911:18:911:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:911:18:911:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:911:18:911:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:911:18:911:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:913:13:913:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:930:15:930:18 | SelfParam | | main.rs:918:5:922:5 | MyEnum | +| main.rs:930:15:930:18 | SelfParam | A | main.rs:929:10:929:10 | T | +| main.rs:930:26:935:9 | { ... } | | main.rs:929:10:929:10 | T | +| main.rs:931:19:931:22 | self | | main.rs:918:5:922:5 | MyEnum | +| main.rs:931:19:931:22 | self | A | main.rs:929:10:929:10 | T | +| main.rs:933:17:933:32 | ...::C2 {...} | | main.rs:918:5:922:5 | MyEnum | +| main.rs:938:16:944:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:940:13:940:13 | y | | main.rs:918:5:922:5 | MyEnum | +| main.rs:940:17:940:36 | ...::C2 {...} | | main.rs:918:5:922:5 | MyEnum | +| main.rs:942:18:942:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:942:18:942:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:942:18:942:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:942:18:942:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:943:18:943:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:943:18:943:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:943:18:943:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:943:18:943:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:943:26:943:26 | y | | main.rs:918:5:922:5 | MyEnum | +| main.rs:965:15:965:18 | SelfParam | | main.rs:963:5:966:5 | Self [trait MyTrait1] | +| main.rs:970:15:970:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:970:15:970:19 | SelfParam | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | +| main.rs:973:9:979:9 | { ... } | | main.rs:968:20:968:22 | Tr2 | +| main.rs:975:17:975:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:975:17:975:20 | self | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | +| main.rs:977:27:977:30 | self | | {EXTERNAL LOCATION} | & | +| main.rs:977:27:977:30 | self | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | +| main.rs:984:15:984:18 | SelfParam | | main.rs:982:5:994:5 | Self [trait MyTrait3] | +| main.rs:987:9:993:9 | { ... } | | main.rs:982:20:982:22 | Tr3 | +| main.rs:989:17:989:20 | self | | main.rs:982:5:994:5 | Self [trait MyTrait3] | +| main.rs:991:26:991:30 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:991:27:991:30 | self | | main.rs:982:5:994:5 | Self [trait MyTrait3] | +| main.rs:998:15:998:18 | SelfParam | | main.rs:948:5:951:5 | MyThing | +| main.rs:998:15:998:18 | SelfParam | A | main.rs:996:10:996:10 | T | +| main.rs:998:26:1000:9 | { ... } | | main.rs:996:10:996:10 | T | +| main.rs:999:13:999:16 | self | | main.rs:948:5:951:5 | MyThing | +| main.rs:999:13:999:16 | self | A | main.rs:996:10:996:10 | T | +| main.rs:1007:15:1007:18 | SelfParam | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1007:15:1007:18 | SelfParam | A | main.rs:1005:10:1005:10 | T | +| main.rs:1007:35:1009:9 | { ... } | | main.rs:948:5:951:5 | MyThing | +| main.rs:1007:35:1009:9 | { ... } | A | main.rs:1005:10:1005:10 | T | +| main.rs:1008:13:1008:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | +| main.rs:1008:26:1008:29 | self | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1008:26:1008:29 | self | A | main.rs:1005:10:1005:10 | T | +| main.rs:1016:44:1016:44 | x | | main.rs:1016:26:1016:41 | T2 | +| main.rs:1016:57:1018:5 | { ... } | | main.rs:1016:22:1016:23 | T1 | +| main.rs:1017:9:1017:9 | x | | main.rs:1016:26:1016:41 | T2 | +| main.rs:1020:56:1020:56 | x | | main.rs:1020:39:1020:53 | T | +| main.rs:1020:62:1024:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1022:17:1022:17 | x | | main.rs:1020:39:1020:53 | T | +| main.rs:1023:18:1023:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1023:18:1023:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1023:18:1023:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1026:16:1050:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1027:13:1027:13 | x | | main.rs:948:5:951:5 | MyThing | +| main.rs:1027:17:1027:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | +| main.rs:1028:13:1028:13 | y | | main.rs:948:5:951:5 | MyThing | +| main.rs:1028:17:1028:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | +| main.rs:1030:18:1030:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1030:18:1030:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1030:18:1030:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1030:18:1030:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1030:26:1030:26 | x | | main.rs:948:5:951:5 | MyThing | | main.rs:1031:18:1031:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1031:18:1031:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1031:18:1031:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1031:18:1031:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1031:26:1031:26 | x | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1032:18:1032:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1032:18:1032:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1032:18:1032:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1032:18:1032:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1032:26:1032:26 | y | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1034:13:1034:13 | x | | main.rs:937:5:940:5 | MyThing | -| main.rs:1034:17:1034:33 | MyThing {...} | | main.rs:937:5:940:5 | MyThing | -| main.rs:1035:31:1035:31 | x | | main.rs:937:5:940:5 | MyThing | -| main.rs:1037:13:1037:13 | x | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1037:17:1037:34 | MyThing2 {...} | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1038:31:1038:31 | x | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1055:22:1055:22 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1055:22:1055:22 | x | TRef | main.rs:1055:11:1055:19 | T | -| main.rs:1055:35:1057:5 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1055:35:1057:5 | { ... } | TRef | main.rs:1055:11:1055:19 | T | -| main.rs:1056:9:1056:9 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1056:9:1056:9 | x | TRef | main.rs:1055:11:1055:19 | T | -| main.rs:1060:17:1060:20 | SelfParam | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1060:29:1062:9 | { ... } | | main.rs:1048:5:1049:14 | S2 | -| main.rs:1065:21:1065:21 | x | | main.rs:1065:13:1065:14 | T1 | -| main.rs:1068:5:1070:5 | { ... } | | main.rs:1065:17:1065:18 | T2 | -| main.rs:1069:9:1069:9 | x | | main.rs:1065:13:1065:14 | T1 | -| main.rs:1072:16:1088:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1074:18:1074:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1074:18:1074:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1074:18:1074:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1074:18:1074:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1074:26:1074:31 | id(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1074:29:1074:30 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1077:18:1077:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1077:18:1077:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1077:18:1077:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1077:18:1077:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1077:26:1077:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1077:26:1077:37 | id::<...>(...) | TRef | main.rs:1045:5:1046:14 | S1 | -| main.rs:1077:35:1077:36 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1081:18:1081:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1081:18:1081:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1081:18:1081:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1081:18:1081:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1081:26:1081:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1081:26:1081:44 | id::<...>(...) | TRef | main.rs:1051:5:1051:25 | dyn Trait | -| main.rs:1081:42:1081:43 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1084:9:1084:25 | into::<...>(...) | | main.rs:1048:5:1049:14 | S2 | -| main.rs:1087:13:1087:13 | y | | main.rs:1048:5:1049:14 | S2 | -| main.rs:1101:22:1101:25 | SelfParam | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1101:22:1101:25 | SelfParam | Fst | main.rs:1100:10:1100:12 | Fst | -| main.rs:1101:22:1101:25 | SelfParam | Snd | main.rs:1100:15:1100:17 | Snd | -| main.rs:1101:35:1108:9 | { ... } | | main.rs:1100:15:1100:17 | Snd | -| main.rs:1102:19:1102:22 | self | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1102:19:1102:22 | self | Fst | main.rs:1100:10:1100:12 | Fst | -| main.rs:1102:19:1102:22 | self | Snd | main.rs:1100:15:1100:17 | Snd | -| main.rs:1103:43:1103:82 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1103:50:1103:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | -| main.rs:1103:50:1103:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1103:50:1103:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1103:50:1103:81 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1104:43:1104:81 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1104:50:1104:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | -| main.rs:1104:50:1104:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1104:50:1104:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1104:50:1104:80 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1132:10:1132:10 | t | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1132:10:1132:10 | t | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1132:10:1132:10 | t | Snd | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1132:10:1132:10 | t | Snd.Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1132:10:1132:10 | t | Snd.Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1132:30:1135:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1133:17:1133:17 | t | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1133:17:1133:17 | t | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1133:17:1133:17 | t | Snd | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1133:17:1133:17 | t | Snd.Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1133:17:1133:17 | t | Snd.Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1134:18:1134:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1134:18:1134:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1134:18:1134:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1134:18:1134:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1145:16:1165:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1147:13:1147:14 | p1 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1147:13:1147:14 | p1 | Fst | main.rs:1111:5:1112:14 | S1 | -| main.rs:1147:13:1147:14 | p1 | Snd | main.rs:1114:5:1115:14 | S2 | -| main.rs:1148:18:1148:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1148:18:1148:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1148:18:1148:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1148:18:1148:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1148:26:1148:27 | p1 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1148:26:1148:27 | p1 | Fst | main.rs:1111:5:1112:14 | S1 | -| main.rs:1148:26:1148:27 | p1 | Snd | main.rs:1114:5:1115:14 | S2 | -| main.rs:1151:13:1151:14 | p2 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1151:13:1151:14 | p2 | Fst | main.rs:1111:5:1112:14 | S1 | -| main.rs:1151:13:1151:14 | p2 | Snd | main.rs:1114:5:1115:14 | S2 | -| main.rs:1152:18:1152:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1152:18:1152:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1152:18:1152:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1152:18:1152:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1152:26:1152:27 | p2 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1152:26:1152:27 | p2 | Fst | main.rs:1111:5:1112:14 | S1 | -| main.rs:1152:26:1152:27 | p2 | Snd | main.rs:1114:5:1115:14 | S2 | -| main.rs:1155:13:1155:14 | p3 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1155:13:1155:14 | p3 | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1156:18:1156:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1156:18:1156:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1156:18:1156:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1156:18:1156:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1156:26:1156:27 | p3 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1156:26:1156:27 | p3 | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1159:13:1159:14 | p3 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1159:13:1159:14 | p3 | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1159:13:1159:14 | p3 | Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1160:18:1160:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1160:18:1160:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1160:18:1160:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1160:18:1160:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1160:26:1160:27 | p3 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1160:26:1160:27 | p3 | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1160:26:1160:27 | p3 | Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1162:9:1162:55 | g(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1164:13:1164:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1164:13:1164:13 | x | E | main.rs:1111:5:1112:14 | S1 | -| main.rs:1164:13:1164:13 | x | T | main.rs:1137:5:1137:34 | S4 | -| main.rs:1164:13:1164:13 | x | T.T41 | main.rs:1114:5:1115:14 | S2 | -| main.rs:1164:13:1164:13 | x | T.T42 | main.rs:1139:5:1139:22 | S5 | -| main.rs:1164:13:1164:13 | x | T.T42.T5 | main.rs:1114:5:1115:14 | S2 | -| main.rs:1177:16:1177:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1177:16:1177:24 | SelfParam | TRefMut | main.rs:1175:5:1182:5 | Self [trait MyTrait] | -| main.rs:1177:27:1177:31 | value | | main.rs:1175:19:1175:19 | S | -| main.rs:1179:21:1179:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1179:21:1179:29 | SelfParam | TRefMut | main.rs:1175:5:1182:5 | Self [trait MyTrait] | -| main.rs:1179:32:1179:36 | value | | main.rs:1175:19:1175:19 | S | -| main.rs:1179:42:1181:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1180:13:1180:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1180:13:1180:16 | self | TRefMut | main.rs:1175:5:1182:5 | Self [trait MyTrait] | -| main.rs:1180:22:1180:26 | value | | main.rs:1175:19:1175:19 | S | -| main.rs:1186:16:1186:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1186:16:1186:24 | SelfParam | TRefMut | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1186:16:1186:24 | SelfParam | TRefMut.T | main.rs:1184:10:1184:10 | T | -| main.rs:1186:27:1186:31 | value | | main.rs:1184:10:1184:10 | T | -| main.rs:1186:37:1186:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1190:26:1192:9 | { ... } | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1190:26:1192:9 | { ... } | T | main.rs:1189:10:1189:10 | T | -| main.rs:1196:20:1196:23 | SelfParam | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1196:20:1196:23 | SelfParam | T | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1196:20:1196:23 | SelfParam | T.T | main.rs:1195:10:1195:10 | T | -| main.rs:1196:41:1201:9 | { ... } | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1196:41:1201:9 | { ... } | T | main.rs:1195:10:1195:10 | T | -| main.rs:1197:19:1197:22 | self | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1197:19:1197:22 | self | T | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1197:19:1197:22 | self | T.T | main.rs:1195:10:1195:10 | T | -| main.rs:1207:16:1252:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1208:13:1208:14 | x1 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1208:13:1208:14 | x1 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1208:18:1208:37 | ...::new(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1208:18:1208:37 | ...::new(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1209:18:1209:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1209:18:1209:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1209:18:1209:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1209:18:1209:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1209:26:1209:27 | x1 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1209:26:1209:27 | x1 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1211:17:1211:18 | x2 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1211:22:1211:36 | ...::new(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1212:9:1212:10 | x2 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1213:18:1213:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1213:18:1213:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1213:18:1213:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1213:18:1213:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1213:26:1213:27 | x2 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1215:17:1215:18 | x3 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1215:22:1215:36 | ...::new(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1216:9:1216:10 | x3 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1217:18:1217:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1217:18:1217:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1217:18:1217:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1217:18:1217:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1217:26:1217:27 | x3 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1219:17:1219:18 | x4 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1219:22:1219:36 | ...::new(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1220:9:1220:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1220:23:1220:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | -| main.rs:1220:28:1220:29 | x4 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1221:18:1221:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1221:18:1221:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1221:18:1221:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1221:18:1221:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1221:26:1221:27 | x4 | | main.rs:1169:5:1173:5 | MyOption | +| main.rs:1031:26:1031:26 | y | | main.rs:948:5:951:5 | MyThing | +| main.rs:1033:13:1033:13 | x | | main.rs:948:5:951:5 | MyThing | +| main.rs:1033:17:1033:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | +| main.rs:1034:13:1034:13 | y | | main.rs:948:5:951:5 | MyThing | +| main.rs:1034:17:1034:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | +| main.rs:1036:18:1036:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1036:18:1036:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1036:18:1036:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1036:18:1036:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1036:26:1036:26 | x | | main.rs:948:5:951:5 | MyThing | +| main.rs:1037:18:1037:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1037:18:1037:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1037:18:1037:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1037:18:1037:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1037:26:1037:26 | y | | main.rs:948:5:951:5 | MyThing | +| main.rs:1039:13:1039:13 | x | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1039:17:1039:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1040:13:1040:13 | y | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1040:17:1040:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1042:18:1042:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1042:18:1042:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1042:18:1042:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1042:18:1042:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1042:26:1042:26 | x | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1043:18:1043:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1043:18:1043:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1043:18:1043:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1043:18:1043:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1043:26:1043:26 | y | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1045:13:1045:13 | x | | main.rs:948:5:951:5 | MyThing | +| main.rs:1045:17:1045:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | +| main.rs:1046:31:1046:31 | x | | main.rs:948:5:951:5 | MyThing | +| main.rs:1048:13:1048:13 | x | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1048:17:1048:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1049:31:1049:31 | x | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1066:22:1066:22 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1066:22:1066:22 | x | TRef | main.rs:1066:11:1066:19 | T | +| main.rs:1066:35:1068:5 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1066:35:1068:5 | { ... } | TRef | main.rs:1066:11:1066:19 | T | +| main.rs:1067:9:1067:9 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1067:9:1067:9 | x | TRef | main.rs:1066:11:1066:19 | T | +| main.rs:1071:17:1071:20 | SelfParam | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1071:29:1073:9 | { ... } | | main.rs:1059:5:1060:14 | S2 | +| main.rs:1076:21:1076:21 | x | | main.rs:1076:13:1076:14 | T1 | +| main.rs:1079:5:1081:5 | { ... } | | main.rs:1076:17:1076:18 | T2 | +| main.rs:1080:9:1080:9 | x | | main.rs:1076:13:1076:14 | T1 | +| main.rs:1083:16:1099:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1085:18:1085:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1085:18:1085:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1085:18:1085:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1085:18:1085:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1085:26:1085:31 | id(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1085:29:1085:30 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1088:18:1088:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1088:18:1088:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1088:18:1088:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1088:18:1088:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1088:26:1088:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1088:26:1088:37 | id::<...>(...) | TRef | main.rs:1056:5:1057:14 | S1 | +| main.rs:1088:35:1088:36 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1092:18:1092:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1092:18:1092:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1092:18:1092:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1092:18:1092:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1092:26:1092:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1092:26:1092:44 | id::<...>(...) | TRef | main.rs:1062:5:1062:25 | dyn Trait | +| main.rs:1092:42:1092:43 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1095:9:1095:25 | into::<...>(...) | | main.rs:1059:5:1060:14 | S2 | +| main.rs:1098:13:1098:13 | y | | main.rs:1059:5:1060:14 | S2 | +| main.rs:1112:22:1112:25 | SelfParam | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1112:22:1112:25 | SelfParam | Fst | main.rs:1111:10:1111:12 | Fst | +| main.rs:1112:22:1112:25 | SelfParam | Snd | main.rs:1111:15:1111:17 | Snd | +| main.rs:1112:35:1119:9 | { ... } | | main.rs:1111:15:1111:17 | Snd | +| main.rs:1113:19:1113:22 | self | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1113:19:1113:22 | self | Fst | main.rs:1111:10:1111:12 | Fst | +| main.rs:1113:19:1113:22 | self | Snd | main.rs:1111:15:1111:17 | Snd | +| main.rs:1114:43:1114:82 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:1114:50:1114:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | +| main.rs:1114:50:1114:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1114:50:1114:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:1114:50:1114:81 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1115:43:1115:81 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:1115:50:1115:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | +| main.rs:1115:50:1115:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1115:50:1115:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:1115:50:1115:80 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1143:10:1143:10 | t | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1143:10:1143:10 | t | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1143:10:1143:10 | t | Snd | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1143:10:1143:10 | t | Snd.Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1143:10:1143:10 | t | Snd.Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1143:30:1146:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1144:17:1144:17 | t | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1144:17:1144:17 | t | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1144:17:1144:17 | t | Snd | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1144:17:1144:17 | t | Snd.Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1144:17:1144:17 | t | Snd.Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1145:18:1145:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1145:18:1145:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1145:18:1145:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1145:18:1145:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1156:16:1176:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1158:13:1158:14 | p1 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1158:13:1158:14 | p1 | Fst | main.rs:1122:5:1123:14 | S1 | +| main.rs:1158:13:1158:14 | p1 | Snd | main.rs:1125:5:1126:14 | S2 | +| main.rs:1159:18:1159:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1159:18:1159:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1159:18:1159:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1159:18:1159:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1159:26:1159:27 | p1 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1159:26:1159:27 | p1 | Fst | main.rs:1122:5:1123:14 | S1 | +| main.rs:1159:26:1159:27 | p1 | Snd | main.rs:1125:5:1126:14 | S2 | +| main.rs:1162:13:1162:14 | p2 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1162:13:1162:14 | p2 | Fst | main.rs:1122:5:1123:14 | S1 | +| main.rs:1162:13:1162:14 | p2 | Snd | main.rs:1125:5:1126:14 | S2 | +| main.rs:1163:18:1163:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1163:18:1163:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1163:18:1163:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1163:18:1163:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1163:26:1163:27 | p2 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1163:26:1163:27 | p2 | Fst | main.rs:1122:5:1123:14 | S1 | +| main.rs:1163:26:1163:27 | p2 | Snd | main.rs:1125:5:1126:14 | S2 | +| main.rs:1166:13:1166:14 | p3 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1166:13:1166:14 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1167:18:1167:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1167:18:1167:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1167:18:1167:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1167:18:1167:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1167:26:1167:27 | p3 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1167:26:1167:27 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1170:13:1170:14 | p3 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1170:13:1170:14 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1170:13:1170:14 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1171:18:1171:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1171:18:1171:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1171:18:1171:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1171:18:1171:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1171:26:1171:27 | p3 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1171:26:1171:27 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1171:26:1171:27 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1173:9:1173:55 | g(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1175:13:1175:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1175:13:1175:13 | x | E | main.rs:1122:5:1123:14 | S1 | +| main.rs:1175:13:1175:13 | x | T | main.rs:1148:5:1148:34 | S4 | +| main.rs:1175:13:1175:13 | x | T.T41 | main.rs:1125:5:1126:14 | S2 | +| main.rs:1175:13:1175:13 | x | T.T42 | main.rs:1150:5:1150:22 | S5 | +| main.rs:1175:13:1175:13 | x | T.T42.T5 | main.rs:1125:5:1126:14 | S2 | +| main.rs:1188:16:1188:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1188:16:1188:24 | SelfParam | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | +| main.rs:1188:27:1188:31 | value | | main.rs:1186:19:1186:19 | S | +| main.rs:1190:21:1190:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1190:21:1190:29 | SelfParam | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | +| main.rs:1190:32:1190:36 | value | | main.rs:1186:19:1186:19 | S | +| main.rs:1190:42:1192:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1191:13:1191:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1191:13:1191:16 | self | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | +| main.rs:1191:22:1191:26 | value | | main.rs:1186:19:1186:19 | S | +| main.rs:1197:16:1197:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1197:16:1197:24 | SelfParam | TRefMut | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1197:16:1197:24 | SelfParam | TRefMut.T | main.rs:1195:10:1195:10 | T | +| main.rs:1197:27:1197:31 | value | | main.rs:1195:10:1195:10 | T | +| main.rs:1197:37:1197:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1201:26:1203:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1201:26:1203:9 | { ... } | T | main.rs:1200:10:1200:10 | T | +| main.rs:1207:20:1207:23 | SelfParam | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1207:20:1207:23 | SelfParam | T | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1207:20:1207:23 | SelfParam | T.T | main.rs:1206:10:1206:10 | T | +| main.rs:1207:41:1212:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1207:41:1212:9 | { ... } | T | main.rs:1206:10:1206:10 | T | +| main.rs:1208:19:1208:22 | self | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1208:19:1208:22 | self | T | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1208:19:1208:22 | self | T.T | main.rs:1206:10:1206:10 | T | +| main.rs:1218:16:1263:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1219:13:1219:14 | x1 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1219:13:1219:14 | x1 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1219:18:1219:37 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1219:18:1219:37 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1220:18:1220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1220:18:1220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1220:18:1220:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1220:18:1220:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1220:26:1220:27 | x1 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1220:26:1220:27 | x1 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1222:17:1222:18 | x2 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1222:22:1222:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1223:9:1223:10 | x2 | | main.rs:1180:5:1184:5 | MyOption | | main.rs:1224:18:1224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1224:18:1224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1224:18:1224:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1224:18:1224:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1227:18:1227:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1227:18:1227:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1227:18:1227:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1227:18:1227:61 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1227:26:1227:61 | ...::flatten(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1227:26:1227:61 | ...::flatten(...) | T | main.rs:1204:5:1205:13 | S | +| main.rs:1224:18:1224:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1224:18:1224:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1224:26:1224:27 | x2 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1226:17:1226:18 | x3 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1226:22:1226:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1227:9:1227:10 | x3 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1228:18:1228:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1228:18:1228:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1228:18:1228:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1228:18:1228:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1228:26:1228:27 | x3 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1230:17:1230:18 | x4 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1230:22:1230:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1231:9:1231:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1231:23:1231:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | +| main.rs:1231:28:1231:29 | x4 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1232:18:1232:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1232:18:1232:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1232:18:1232:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1232:18:1232:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1232:26:1232:27 | x4 | | main.rs:1180:5:1184:5 | MyOption | | main.rs:1235:18:1235:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1235:18:1235:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1235:18:1235:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1235:18:1235:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1239:13:1239:16 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1240:13:1240:17 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1242:18:1242:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1242:18:1242:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1242:18:1242:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1242:18:1242:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1245:30:1250:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1246:13:1248:13 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1246:22:1248:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1251:18:1251:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1251:18:1251:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1251:18:1251:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1251:18:1251:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1269:15:1269:18 | SelfParam | | main.rs:1257:5:1258:19 | S | -| main.rs:1269:15:1269:18 | SelfParam | T | main.rs:1268:10:1268:10 | T | -| main.rs:1269:26:1271:9 | { ... } | | main.rs:1268:10:1268:10 | T | -| main.rs:1270:13:1270:16 | self | | main.rs:1257:5:1258:19 | S | -| main.rs:1270:13:1270:16 | self | T | main.rs:1268:10:1268:10 | T | -| main.rs:1273:15:1273:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1273:15:1273:19 | SelfParam | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1273:15:1273:19 | SelfParam | TRef.T | main.rs:1268:10:1268:10 | T | -| main.rs:1273:28:1275:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1273:28:1275:9 | { ... } | TRef | main.rs:1268:10:1268:10 | T | -| main.rs:1274:13:1274:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1274:14:1274:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1274:14:1274:17 | self | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1274:14:1274:17 | self | TRef.T | main.rs:1268:10:1268:10 | T | -| main.rs:1277:15:1277:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1277:15:1277:25 | SelfParam | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1277:15:1277:25 | SelfParam | TRef.T | main.rs:1268:10:1268:10 | T | -| main.rs:1277:34:1279:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1277:34:1279:9 | { ... } | TRef | main.rs:1268:10:1268:10 | T | -| main.rs:1278:13:1278:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1278:14:1278:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1278:14:1278:17 | self | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1278:14:1278:17 | self | TRef.T | main.rs:1268:10:1268:10 | T | -| main.rs:1283:29:1283:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1283:29:1283:33 | SelfParam | TRef | main.rs:1282:5:1285:5 | Self [trait ATrait] | -| main.rs:1284:33:1284:36 | SelfParam | | main.rs:1282:5:1285:5 | Self [trait ATrait] | -| main.rs:1290:29:1290:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1290:29:1290:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1290:29:1290:33 | SelfParam | TRef.TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1290:43:1292:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1291:17:1291:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1291:17:1291:20 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1291:17:1291:20 | self | TRef.TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1295:33:1295:36 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1295:33:1295:36 | SelfParam | TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1295:46:1297:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1296:15:1296:18 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1296:15:1296:18 | self | TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1300:16:1350:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1302:18:1302:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1302:18:1302:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1302:18:1302:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1302:18:1302:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1306:18:1306:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1306:18:1306:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1306:18:1306:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1306:18:1306:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1307:18:1307:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1307:18:1307:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1307:18:1307:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1307:18:1307:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1311:18:1311:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1311:18:1311:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1311:18:1311:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1311:18:1311:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1311:26:1311:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1311:26:1311:41 | ...::m2(...) | TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1311:38:1311:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1312:18:1312:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1312:18:1312:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1312:18:1312:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1312:18:1312:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1312:26:1312:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1312:26:1312:41 | ...::m3(...) | TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1312:38:1312:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1314:13:1314:14 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1314:18:1314:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1316:18:1316:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1316:18:1316:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1316:18:1316:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1316:18:1316:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1316:26:1316:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1235:18:1235:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1235:18:1235:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1238:18:1238:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1238:18:1238:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1238:18:1238:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1238:18:1238:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1238:26:1238:61 | ...::flatten(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1238:26:1238:61 | ...::flatten(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1246:18:1246:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1246:18:1246:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1246:18:1246:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1246:18:1246:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1250:13:1250:16 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1251:13:1251:17 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1253:18:1253:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1253:18:1253:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1253:18:1253:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1253:18:1253:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1256:30:1261:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1257:13:1259:13 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1257:22:1259:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1262:18:1262:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1262:18:1262:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1262:18:1262:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1262:18:1262:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1280:15:1280:18 | SelfParam | | main.rs:1268:5:1269:19 | S | +| main.rs:1280:15:1280:18 | SelfParam | T | main.rs:1279:10:1279:10 | T | +| main.rs:1280:26:1282:9 | { ... } | | main.rs:1279:10:1279:10 | T | +| main.rs:1281:13:1281:16 | self | | main.rs:1268:5:1269:19 | S | +| main.rs:1281:13:1281:16 | self | T | main.rs:1279:10:1279:10 | T | +| main.rs:1284:15:1284:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1284:15:1284:19 | SelfParam | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1284:15:1284:19 | SelfParam | TRef.T | main.rs:1279:10:1279:10 | T | +| main.rs:1284:28:1286:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1284:28:1286:9 | { ... } | TRef | main.rs:1279:10:1279:10 | T | +| main.rs:1285:13:1285:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1285:14:1285:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1285:14:1285:17 | self | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1285:14:1285:17 | self | TRef.T | main.rs:1279:10:1279:10 | T | +| main.rs:1288:15:1288:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1288:15:1288:25 | SelfParam | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1288:15:1288:25 | SelfParam | TRef.T | main.rs:1279:10:1279:10 | T | +| main.rs:1288:34:1290:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1288:34:1290:9 | { ... } | TRef | main.rs:1279:10:1279:10 | T | +| main.rs:1289:13:1289:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1289:14:1289:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1289:14:1289:17 | self | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1289:14:1289:17 | self | TRef.T | main.rs:1279:10:1279:10 | T | +| main.rs:1294:29:1294:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1294:29:1294:33 | SelfParam | TRef | main.rs:1293:5:1296:5 | Self [trait ATrait] | +| main.rs:1295:33:1295:36 | SelfParam | | main.rs:1293:5:1296:5 | Self [trait ATrait] | +| main.rs:1301:29:1301:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1301:29:1301:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1301:29:1301:33 | SelfParam | TRef.TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1301:43:1303:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1302:17:1302:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1302:17:1302:20 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1302:17:1302:20 | self | TRef.TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1306:33:1306:36 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1306:33:1306:36 | SelfParam | TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1306:46:1308:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1307:15:1307:18 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1307:15:1307:18 | self | TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1311:16:1361:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1313:18:1313:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1313:18:1313:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1313:18:1313:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1313:18:1313:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1317:18:1317:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1317:18:1317:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1317:18:1317:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1317:18:1317:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1317:26:1317:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1319:13:1319:14 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1319:18:1319:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1321:18:1321:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1321:18:1321:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1321:18:1321:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1321:18:1321:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1321:26:1321:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1318:18:1318:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1318:18:1318:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1318:18:1318:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1318:18:1318:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1322:18:1322:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1322:18:1322:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1322:18:1322:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1322:26:1322:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1324:13:1324:14 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1324:18:1324:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1322:18:1322:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1322:18:1322:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1322:26:1322:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1322:26:1322:41 | ...::m2(...) | TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1322:38:1322:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1323:18:1323:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1323:18:1323:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1323:18:1323:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1323:18:1323:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1323:26:1323:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1323:26:1323:41 | ...::m3(...) | TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1323:38:1323:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1325:13:1325:14 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1325:18:1325:23 | &... | | {EXTERNAL LOCATION} | & | | main.rs:1327:18:1327:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1327:18:1327:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1327:18:1327:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1327:18:1327:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1327:28:1327:29 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1329:20:1329:22 | &S2 | | {EXTERNAL LOCATION} | & | +| main.rs:1327:18:1327:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1327:18:1327:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1327:26:1327:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1328:18:1328:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1328:18:1328:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1328:18:1328:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1328:18:1328:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1328:26:1328:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1330:13:1330:14 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1330:18:1330:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1332:18:1332:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1332:18:1332:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1332:18:1332:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1332:18:1332:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1332:26:1332:27 | x5 | | {EXTERNAL LOCATION} | & | | main.rs:1333:18:1333:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1333:18:1333:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1333:18:1333:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1333:18:1333:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1335:13:1335:14 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1335:26:1335:32 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1335:26:1335:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1339:17:1339:18 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1341:13:1341:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1341:24:1341:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1341:25:1341:39 | MyInt {...} | | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1343:17:1343:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1333:18:1333:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1333:18:1333:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1333:26:1333:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1335:13:1335:14 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1335:18:1335:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1338:18:1338:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1338:18:1338:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1338:18:1338:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1338:18:1338:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1338:28:1338:29 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1340:20:1340:22 | &S2 | | {EXTERNAL LOCATION} | & | | main.rs:1344:18:1344:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1344:18:1344:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1344:18:1344:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1347:13:1347:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1347:24:1347:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1347:25:1347:39 | MyInt {...} | | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1348:17:1348:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1349:18:1349:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1349:18:1349:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1349:18:1349:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1349:18:1349:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1356:16:1356:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1356:16:1356:20 | SelfParam | TRef | main.rs:1354:5:1362:5 | Self [trait MyTrait] | -| main.rs:1359:16:1359:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1359:16:1359:20 | SelfParam | TRef | main.rs:1354:5:1362:5 | Self [trait MyTrait] | -| main.rs:1359:32:1361:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1359:32:1361:9 | { ... } | TRef | main.rs:1354:5:1362:5 | Self [trait MyTrait] | -| main.rs:1360:13:1360:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1360:13:1360:16 | self | TRef | main.rs:1354:5:1362:5 | Self [trait MyTrait] | -| main.rs:1368:16:1368:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1368:16:1368:20 | SelfParam | TRef | main.rs:1364:5:1364:20 | MyStruct | -| main.rs:1368:36:1370:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1368:36:1370:9 | { ... } | TRef | main.rs:1364:5:1364:20 | MyStruct | -| main.rs:1369:13:1369:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1369:13:1369:16 | self | TRef | main.rs:1364:5:1364:20 | MyStruct | -| main.rs:1373:16:1376:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1385:16:1385:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1385:16:1385:20 | SelfParam | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1385:16:1385:20 | SelfParam | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1385:32:1387:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1385:32:1387:9 | { ... } | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1385:32:1387:9 | { ... } | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1386:13:1386:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1386:13:1386:16 | self | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1386:13:1386:16 | self | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1389:16:1389:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1389:16:1389:20 | SelfParam | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1389:16:1389:20 | SelfParam | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1389:23:1389:23 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1389:23:1389:23 | x | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1389:23:1389:23 | x | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1389:42:1391:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1389:42:1391:9 | { ... } | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1389:42:1391:9 | { ... } | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1390:13:1390:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1390:13:1390:16 | self | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1390:13:1390:16 | self | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1394:16:1400:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1399:15:1399:17 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1399:16:1399:17 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1410:17:1410:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1410:17:1410:25 | SelfParam | TRefMut | main.rs:1404:5:1407:5 | MyFlag | -| main.rs:1410:28:1412:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1411:13:1411:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1411:13:1411:16 | self | TRefMut | main.rs:1404:5:1407:5 | MyFlag | -| main.rs:1411:26:1411:29 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1411:26:1411:29 | self | TRefMut | main.rs:1404:5:1407:5 | MyFlag | -| main.rs:1418:15:1418:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1418:15:1418:19 | SelfParam | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1418:31:1420:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1418:31:1420:9 | { ... } | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1419:13:1419:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1419:14:1419:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1419:15:1419:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1419:16:1419:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1419:16:1419:19 | self | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1422:15:1422:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1422:15:1422:25 | SelfParam | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1422:37:1424:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1422:37:1424:9 | { ... } | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1423:13:1423:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1423:14:1423:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1423:15:1423:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1423:16:1423:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1423:16:1423:19 | self | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1426:15:1426:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1426:15:1426:15 | x | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1426:34:1428:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1426:34:1428:9 | { ... } | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1427:13:1427:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1427:13:1427:13 | x | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1430:15:1430:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1430:15:1430:15 | x | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1430:34:1432:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1430:34:1432:9 | { ... } | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1431:13:1431:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1431:14:1431:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1431:15:1431:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1431:16:1431:16 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1431:16:1431:16 | x | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1435:16:1448:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1436:13:1436:13 | x | | main.rs:1415:5:1415:13 | S | -| main.rs:1436:17:1436:20 | S {...} | | main.rs:1415:5:1415:13 | S | -| main.rs:1437:9:1437:9 | x | | main.rs:1415:5:1415:13 | S | -| main.rs:1438:9:1438:9 | x | | main.rs:1415:5:1415:13 | S | -| main.rs:1439:9:1439:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1439:9:1439:17 | ...::f3(...) | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1439:15:1439:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1439:16:1439:16 | x | | main.rs:1415:5:1415:13 | S | -| main.rs:1441:19:1441:24 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1441:20:1441:24 | &true | | {EXTERNAL LOCATION} | & | -| main.rs:1441:21:1441:24 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1446:9:1446:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1446:22:1446:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | -| main.rs:1447:18:1447:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1447:18:1447:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1447:18:1447:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1447:18:1447:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1462:43:1465:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1462:43:1465:5 | { ... } | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1462:43:1465:5 | { ... } | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1469:46:1473:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1469:46:1473:5 | { ... } | E | main.rs:1457:5:1458:14 | S2 | -| main.rs:1469:46:1473:5 | { ... } | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1477:40:1482:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1477:40:1482:5 | { ... } | E | main.rs:1457:5:1458:14 | S2 | -| main.rs:1477:40:1482:5 | { ... } | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1486:30:1486:34 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1486:30:1486:34 | input | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1486:30:1486:34 | input | T | main.rs:1486:20:1486:27 | T | -| main.rs:1486:69:1493:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1486:69:1493:5 | { ... } | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1486:69:1493:5 | { ... } | T | main.rs:1486:20:1486:27 | T | -| main.rs:1487:21:1487:25 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1487:21:1487:25 | input | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1487:21:1487:25 | input | T | main.rs:1486:20:1486:27 | T | -| main.rs:1489:22:1489:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1489:22:1489:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1489:22:1489:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1489:22:1489:30 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1496:16:1512:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1497:9:1499:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1497:37:1497:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1497:37:1497:52 | try_same_error(...) | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1497:37:1497:52 | try_same_error(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1497:54:1499:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1498:22:1498:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1498:22:1498:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1498:22:1498:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1498:22:1498:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1501:9:1503:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1501:37:1501:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1501:37:1501:55 | try_convert_error(...) | E | main.rs:1457:5:1458:14 | S2 | -| main.rs:1501:37:1501:55 | try_convert_error(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1501:57:1503:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1502:22:1502:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1502:22:1502:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1502:22:1502:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1502:22:1502:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1505:9:1507:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1505:37:1505:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1505:37:1505:49 | try_chained(...) | E | main.rs:1457:5:1458:14 | S2 | -| main.rs:1505:37:1505:49 | try_chained(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1505:51:1507:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1506:22:1506:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1506:22:1506:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1506:22:1506:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1506:22:1506:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1509:9:1511:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1509:37:1509:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1509:37:1509:63 | try_complex(...) | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1509:65:1511:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1510:22:1510:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1510:22:1510:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1510:22:1510:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1510:22:1510:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1516:16:1607:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1517:13:1517:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1519:17:1519:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1520:17:1520:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1521:13:1521:13 | c | | {EXTERNAL LOCATION} | char | -| main.rs:1521:17:1521:19 | 'c' | | {EXTERNAL LOCATION} | char | -| main.rs:1522:13:1522:17 | hello | | {EXTERNAL LOCATION} | & | -| main.rs:1522:13:1522:17 | hello | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1522:21:1522:27 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1522:21:1522:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1523:13:1523:13 | f | | {EXTERNAL LOCATION} | f64 | -| main.rs:1523:17:1523:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | -| main.rs:1524:13:1524:13 | t | | {EXTERNAL LOCATION} | bool | -| main.rs:1524:17:1524:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1525:13:1525:13 | f | | {EXTERNAL LOCATION} | bool | -| main.rs:1525:17:1525:21 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1528:26:1528:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1528:26:1528:30 | SelfParam | TRef | main.rs:1527:9:1531:9 | Self [trait MyTrait] | -| main.rs:1534:26:1534:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1534:26:1534:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1534:26:1534:30 | SelfParam | TRef.TArray | main.rs:1533:14:1533:23 | T | -| main.rs:1534:39:1536:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1534:39:1536:13 | { ... } | TRef | main.rs:1533:14:1533:23 | T | -| main.rs:1535:17:1535:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1535:17:1535:20 | self | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1535:17:1535:20 | self | TRef.TArray | main.rs:1533:14:1533:23 | T | -| main.rs:1538:31:1540:13 | { ... } | | main.rs:1533:14:1533:23 | T | -| main.rs:1543:17:1543:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1544:13:1544:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1544:17:1544:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1544:37:1544:46 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1544:38:1544:46 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1545:13:1545:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1545:17:1545:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1548:26:1548:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1548:26:1548:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1548:26:1548:30 | SelfParam | TRef.TSlice | main.rs:1547:14:1547:23 | T | -| main.rs:1548:39:1550:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1548:39:1550:13 | { ... } | TRef | main.rs:1547:14:1547:23 | T | -| main.rs:1549:17:1549:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1549:17:1549:20 | self | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1549:17:1549:20 | self | TRef.TSlice | main.rs:1547:14:1547:23 | T | -| main.rs:1552:31:1554:13 | { ... } | | main.rs:1547:14:1547:23 | T | -| main.rs:1557:13:1557:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1557:13:1557:13 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1557:13:1557:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1557:25:1557:34 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1557:26:1557:34 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1558:17:1558:17 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1558:17:1558:17 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1558:17:1558:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1559:13:1559:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1559:17:1559:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1559:34:1559:34 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1559:34:1559:34 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1559:34:1559:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1560:13:1560:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1560:17:1560:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1563:26:1563:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1563:26:1563:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1563:26:1563:30 | SelfParam | TRef.T0 | main.rs:1562:14:1562:23 | T | -| main.rs:1563:26:1563:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1563:39:1565:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1563:39:1565:13 | { ... } | TRef | main.rs:1562:14:1562:23 | T | -| main.rs:1564:17:1564:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1564:18:1564:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1564:18:1564:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1564:18:1564:21 | self | TRef.T0 | main.rs:1562:14:1562:23 | T | -| main.rs:1564:18:1564:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1567:31:1569:13 | { ... } | | main.rs:1562:14:1562:23 | T | -| main.rs:1572:13:1572:13 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1572:17:1572:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1573:17:1573:17 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1574:13:1574:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1574:17:1574:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1574:37:1574:38 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1574:38:1574:38 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1575:13:1575:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1575:17:1575:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1578:26:1578:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1578:26:1578:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1578:26:1578:30 | SelfParam | TRef.TRef | main.rs:1577:14:1577:23 | T | -| main.rs:1578:39:1580:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1578:39:1580:13 | { ... } | TRef | main.rs:1577:14:1577:23 | T | -| main.rs:1579:18:1579:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1579:18:1579:21 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1579:18:1579:21 | self | TRef.TRef | main.rs:1577:14:1577:23 | T | -| main.rs:1582:31:1584:13 | { ... } | | main.rs:1577:14:1577:23 | T | -| main.rs:1587:13:1587:13 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1587:17:1587:19 | &42 | | {EXTERNAL LOCATION} | & | -| main.rs:1588:17:1588:17 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1589:13:1589:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1589:17:1589:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1589:33:1589:34 | &r | | {EXTERNAL LOCATION} | & | -| main.rs:1589:34:1589:34 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1590:13:1590:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1590:17:1590:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1593:26:1593:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1593:26:1593:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1593:26:1593:30 | SelfParam | TRef.TPtrMut | main.rs:1592:14:1592:23 | T | -| main.rs:1593:39:1595:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1593:39:1595:13 | { ... } | TRef | main.rs:1592:14:1592:23 | T | -| main.rs:1594:26:1594:32 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1594:29:1594:32 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1594:29:1594:32 | self | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1594:29:1594:32 | self | TRef.TPtrMut | main.rs:1592:14:1592:23 | T | -| main.rs:1597:31:1599:13 | { ... } | | main.rs:1592:14:1592:23 | T | -| main.rs:1603:13:1603:13 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1603:13:1603:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1603:27:1603:32 | &mut v | | {EXTERNAL LOCATION} | &mut | -| main.rs:1604:26:1604:26 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1604:26:1604:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1605:26:1605:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1605:46:1605:47 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1605:47:1605:47 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1605:47:1605:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1606:13:1606:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1606:17:1606:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1612:16:1624:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1613:13:1613:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:1613:17:1613:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1613:17:1613:29 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1613:25:1613:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1614:13:1614:13 | y | | {EXTERNAL LOCATION} | bool | -| main.rs:1614:17:1614:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1614:17:1614:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1614:25:1614:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1618:17:1620:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1620:16:1622:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1637:30:1639:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1638:13:1638:31 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1645:16:1645:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1645:22:1645:24 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1645:41:1650:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1646:13:1649:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1647:20:1647:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1647:29:1647:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1648:20:1648:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1648:29:1648:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1655:23:1655:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1655:23:1655:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1655:34:1655:36 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1655:45:1658:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1656:13:1656:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1656:13:1656:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1656:23:1656:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1657:13:1657:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1657:13:1657:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1657:23:1657:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1663:16:1663:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1663:22:1663:24 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1663:41:1668:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1664:13:1667:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1665:20:1665:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1665:29:1665:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1666:20:1666:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1666:29:1666:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1673:23:1673:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1673:23:1673:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1673:34:1673:36 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1673:45:1676:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1674:13:1674:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1674:13:1674:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1674:23:1674:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1675:13:1675:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1675:13:1675:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1675:23:1675:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1681:16:1681:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1681:22:1681:24 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1681:41:1686:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1682:13:1685:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1683:20:1683:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1683:29:1683:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1684:20:1684:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1684:29:1684:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1690:23:1690:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1690:23:1690:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1690:34:1690:36 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1690:45:1693:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1691:13:1691:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1691:13:1691:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1691:23:1691:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1692:13:1692:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1692:13:1692:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1692:23:1692:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1698:16:1698:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1698:22:1698:24 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1698:41:1703:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1699:13:1702:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1700:20:1700:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1700:29:1700:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1701:20:1701:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1701:29:1701:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1707:23:1707:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1707:23:1707:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1707:34:1707:36 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1707:45:1710:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1708:13:1708:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1708:13:1708:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1708:23:1708:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1709:13:1709:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1709:13:1709:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1709:23:1709:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1715:16:1715:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1715:22:1715:24 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1715:41:1720:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1716:13:1719:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1717:20:1717:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1717:29:1717:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1718:20:1718:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1718:29:1718:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1724:23:1724:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1724:23:1724:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1724:34:1724:36 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1724:45:1727:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1725:13:1725:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1725:13:1725:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1725:23:1725:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1726:13:1726:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1726:13:1726:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1726:23:1726:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1732:19:1732:22 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1732:25:1732:27 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1732:44:1737:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1733:13:1736:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1734:20:1734:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1734:29:1734:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1735:20:1735:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1735:29:1735:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1741:26:1741:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1741:26:1741:34 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1741:37:1741:39 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1741:48:1744:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1742:13:1742:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1742:13:1742:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1742:23:1742:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1743:13:1743:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1743:13:1743:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1743:23:1743:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1749:18:1749:21 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1749:24:1749:26 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1749:43:1754:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1750:13:1753:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1751:20:1751:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1751:29:1751:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1752:20:1752:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1752:29:1752:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1758:25:1758:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1758:25:1758:33 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1758:36:1758:38 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1758:47:1761:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1759:13:1759:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1759:13:1759:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1759:23:1759:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1760:13:1760:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1760:13:1760:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1760:23:1760:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1766:19:1766:22 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1766:25:1766:27 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1766:44:1771:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1767:13:1770:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1768:20:1768:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1768:29:1768:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1769:20:1769:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1769:29:1769:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1775:26:1775:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1775:26:1775:34 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1775:37:1775:39 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1775:48:1778:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1776:13:1776:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1776:13:1776:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1776:23:1776:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1777:13:1777:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1777:13:1777:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1777:23:1777:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1783:16:1783:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1783:22:1783:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1783:40:1788:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1784:13:1787:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1785:20:1785:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1785:30:1785:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1786:20:1786:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1786:30:1786:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1792:23:1792:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1792:23:1792:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1792:34:1792:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1792:44:1795:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1793:13:1793:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1793:13:1793:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1793:24:1793:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1794:13:1794:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1794:13:1794:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1794:24:1794:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1800:16:1800:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1800:22:1800:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1800:40:1805:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1801:13:1804:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1802:20:1802:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1802:30:1802:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1803:20:1803:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1803:30:1803:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1809:23:1809:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1809:23:1809:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1809:34:1809:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1809:44:1812:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1810:13:1810:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1810:13:1810:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1810:24:1810:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1811:13:1811:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1811:13:1811:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1811:24:1811:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1817:16:1817:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1817:30:1822:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1818:13:1821:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1819:21:1819:24 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1820:21:1820:24 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1827:16:1827:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1827:30:1832:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1828:13:1831:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1829:21:1829:24 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1830:21:1830:24 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1836:15:1836:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1836:15:1836:19 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1836:22:1836:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1836:22:1836:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1836:44:1838:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1837:13:1837:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1837:13:1837:16 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1837:13:1837:29 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1837:13:1837:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1837:23:1837:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1837:23:1837:27 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1837:34:1837:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1837:34:1837:37 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1837:34:1837:50 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1837:44:1837:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1837:44:1837:48 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1840:15:1840:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1840:15:1840:19 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1840:22:1840:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1840:22:1840:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1840:44:1842:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1841:13:1841:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1841:13:1841:16 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1841:13:1841:29 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1841:13:1841:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1841:23:1841:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1841:23:1841:27 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1841:34:1841:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1841:34:1841:37 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1841:34:1841:50 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1841:44:1841:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1841:44:1841:48 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1846:24:1846:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1846:24:1846:28 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1846:31:1846:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1846:31:1846:35 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1846:75:1848:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:1846:75:1848:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | -| main.rs:1847:14:1847:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1847:14:1847:17 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1847:23:1847:26 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1847:23:1847:26 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1847:43:1847:62 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1847:45:1847:49 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1847:45:1847:49 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1847:55:1847:59 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1847:55:1847:59 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1850:15:1850:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1850:15:1850:19 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1850:22:1850:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1850:22:1850:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1850:44:1852:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1851:13:1851:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1851:13:1851:16 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1851:13:1851:28 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1851:13:1851:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1344:18:1344:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1344:18:1344:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1346:13:1346:14 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1346:26:1346:32 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1346:26:1346:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1350:17:1350:18 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1352:13:1352:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1352:24:1352:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1352:25:1352:39 | MyInt {...} | | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1354:17:1354:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1355:18:1355:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1355:18:1355:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1355:18:1355:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1355:18:1355:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1358:13:1358:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1358:24:1358:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1358:25:1358:39 | MyInt {...} | | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1359:17:1359:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1360:18:1360:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1360:18:1360:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1360:18:1360:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1360:18:1360:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1367:16:1367:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1367:16:1367:20 | SelfParam | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | +| main.rs:1370:16:1370:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1370:16:1370:20 | SelfParam | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | +| main.rs:1370:32:1372:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1370:32:1372:9 | { ... } | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | +| main.rs:1371:13:1371:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1371:13:1371:16 | self | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | +| main.rs:1379:16:1379:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1379:16:1379:20 | SelfParam | TRef | main.rs:1375:5:1375:20 | MyStruct | +| main.rs:1379:36:1381:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1379:36:1381:9 | { ... } | TRef | main.rs:1375:5:1375:20 | MyStruct | +| main.rs:1380:13:1380:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1380:13:1380:16 | self | TRef | main.rs:1375:5:1375:20 | MyStruct | +| main.rs:1384:16:1387:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1396:16:1396:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1396:16:1396:20 | SelfParam | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1396:16:1396:20 | SelfParam | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1396:32:1398:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1396:32:1398:9 | { ... } | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1396:32:1398:9 | { ... } | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1397:13:1397:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1397:13:1397:16 | self | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1397:13:1397:16 | self | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1400:16:1400:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1400:16:1400:20 | SelfParam | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1400:16:1400:20 | SelfParam | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1400:23:1400:23 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1400:23:1400:23 | x | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1400:23:1400:23 | x | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1400:42:1402:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1400:42:1402:9 | { ... } | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1400:42:1402:9 | { ... } | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1401:13:1401:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1401:13:1401:16 | self | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1401:13:1401:16 | self | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1405:16:1411:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1410:15:1410:17 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1410:16:1410:17 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1421:17:1421:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1421:17:1421:25 | SelfParam | TRefMut | main.rs:1415:5:1418:5 | MyFlag | +| main.rs:1421:28:1423:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1422:13:1422:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1422:13:1422:16 | self | TRefMut | main.rs:1415:5:1418:5 | MyFlag | +| main.rs:1422:26:1422:29 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1422:26:1422:29 | self | TRefMut | main.rs:1415:5:1418:5 | MyFlag | +| main.rs:1429:15:1429:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1429:15:1429:19 | SelfParam | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1429:31:1431:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1429:31:1431:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1430:13:1430:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1430:14:1430:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1430:15:1430:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1430:16:1430:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1430:16:1430:19 | self | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1433:15:1433:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1433:15:1433:25 | SelfParam | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1433:37:1435:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1433:37:1435:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1434:13:1434:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1434:14:1434:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1434:15:1434:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1434:16:1434:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1434:16:1434:19 | self | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1437:15:1437:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1437:15:1437:15 | x | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1437:34:1439:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1437:34:1439:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1438:13:1438:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1438:13:1438:13 | x | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1441:15:1441:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1441:15:1441:15 | x | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1441:34:1443:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1441:34:1443:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1442:13:1442:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1442:14:1442:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1442:15:1442:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1442:16:1442:16 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1442:16:1442:16 | x | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1446:16:1459:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1447:13:1447:13 | x | | main.rs:1426:5:1426:13 | S | +| main.rs:1447:17:1447:20 | S {...} | | main.rs:1426:5:1426:13 | S | +| main.rs:1448:9:1448:9 | x | | main.rs:1426:5:1426:13 | S | +| main.rs:1449:9:1449:9 | x | | main.rs:1426:5:1426:13 | S | +| main.rs:1450:9:1450:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1450:9:1450:17 | ...::f3(...) | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1450:15:1450:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1450:16:1450:16 | x | | main.rs:1426:5:1426:13 | S | +| main.rs:1452:19:1452:24 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1452:20:1452:24 | &true | | {EXTERNAL LOCATION} | & | +| main.rs:1452:21:1452:24 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1457:9:1457:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1457:22:1457:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | +| main.rs:1458:18:1458:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1458:18:1458:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1458:18:1458:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1458:18:1458:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1473:43:1476:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1473:43:1476:5 | { ... } | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1473:43:1476:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1480:46:1484:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1480:46:1484:5 | { ... } | E | main.rs:1468:5:1469:14 | S2 | +| main.rs:1480:46:1484:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1488:40:1493:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1488:40:1493:5 | { ... } | E | main.rs:1468:5:1469:14 | S2 | +| main.rs:1488:40:1493:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1497:30:1497:34 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1497:30:1497:34 | input | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1497:30:1497:34 | input | T | main.rs:1497:20:1497:27 | T | +| main.rs:1497:69:1504:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1497:69:1504:5 | { ... } | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1497:69:1504:5 | { ... } | T | main.rs:1497:20:1497:27 | T | +| main.rs:1498:21:1498:25 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1498:21:1498:25 | input | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1498:21:1498:25 | input | T | main.rs:1497:20:1497:27 | T | +| main.rs:1500:22:1500:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1500:22:1500:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1500:22:1500:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1500:22:1500:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1507:16:1523:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1508:9:1510:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1508:37:1508:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1508:37:1508:52 | try_same_error(...) | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1508:37:1508:52 | try_same_error(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1508:54:1510:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1509:22:1509:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1509:22:1509:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1509:22:1509:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1509:22:1509:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1512:9:1514:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1512:37:1512:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1512:37:1512:55 | try_convert_error(...) | E | main.rs:1468:5:1469:14 | S2 | +| main.rs:1512:37:1512:55 | try_convert_error(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1512:57:1514:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1513:22:1513:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1513:22:1513:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1513:22:1513:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1513:22:1513:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1516:9:1518:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1516:37:1516:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1516:37:1516:49 | try_chained(...) | E | main.rs:1468:5:1469:14 | S2 | +| main.rs:1516:37:1516:49 | try_chained(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1516:51:1518:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1517:22:1517:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1517:22:1517:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1517:22:1517:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1517:22:1517:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1520:9:1522:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1520:37:1520:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1520:37:1520:63 | try_complex(...) | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1520:65:1522:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1521:22:1521:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1521:22:1521:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1521:22:1521:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1521:22:1521:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1527:16:1618:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1528:13:1528:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1530:17:1530:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1531:17:1531:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1532:13:1532:13 | c | | {EXTERNAL LOCATION} | char | +| main.rs:1532:17:1532:19 | 'c' | | {EXTERNAL LOCATION} | char | +| main.rs:1533:13:1533:17 | hello | | {EXTERNAL LOCATION} | & | +| main.rs:1533:13:1533:17 | hello | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1533:21:1533:27 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1533:21:1533:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1534:13:1534:13 | f | | {EXTERNAL LOCATION} | f64 | +| main.rs:1534:17:1534:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | +| main.rs:1535:13:1535:13 | t | | {EXTERNAL LOCATION} | bool | +| main.rs:1535:17:1535:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1536:13:1536:13 | f | | {EXTERNAL LOCATION} | bool | +| main.rs:1536:17:1536:21 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1539:26:1539:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1539:26:1539:30 | SelfParam | TRef | main.rs:1538:9:1542:9 | Self [trait MyTrait] | +| main.rs:1545:26:1545:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1545:26:1545:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1545:26:1545:30 | SelfParam | TRef.TArray | main.rs:1544:14:1544:23 | T | +| main.rs:1545:39:1547:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1545:39:1547:13 | { ... } | TRef | main.rs:1544:14:1544:23 | T | +| main.rs:1546:17:1546:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1546:17:1546:20 | self | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1546:17:1546:20 | self | TRef.TArray | main.rs:1544:14:1544:23 | T | +| main.rs:1549:31:1551:13 | { ... } | | main.rs:1544:14:1544:23 | T | +| main.rs:1554:17:1554:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1555:13:1555:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1555:17:1555:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1555:37:1555:46 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1555:38:1555:46 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1556:13:1556:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1556:17:1556:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1559:26:1559:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1559:26:1559:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1559:26:1559:30 | SelfParam | TRef.TSlice | main.rs:1558:14:1558:23 | T | +| main.rs:1559:39:1561:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1559:39:1561:13 | { ... } | TRef | main.rs:1558:14:1558:23 | T | +| main.rs:1560:17:1560:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1560:17:1560:20 | self | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1560:17:1560:20 | self | TRef.TSlice | main.rs:1558:14:1558:23 | T | +| main.rs:1563:31:1565:13 | { ... } | | main.rs:1558:14:1558:23 | T | +| main.rs:1568:13:1568:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1568:13:1568:13 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1568:13:1568:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1568:25:1568:34 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1568:26:1568:34 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1569:17:1569:17 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1569:17:1569:17 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1569:17:1569:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1570:13:1570:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1570:17:1570:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1570:34:1570:34 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1570:34:1570:34 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1570:34:1570:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1571:13:1571:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1571:17:1571:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1574:26:1574:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1574:26:1574:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1574:26:1574:30 | SelfParam | TRef.T0 | main.rs:1573:14:1573:23 | T | +| main.rs:1574:26:1574:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1574:39:1576:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1574:39:1576:13 | { ... } | TRef | main.rs:1573:14:1573:23 | T | +| main.rs:1575:17:1575:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1575:18:1575:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1575:18:1575:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1575:18:1575:21 | self | TRef.T0 | main.rs:1573:14:1573:23 | T | +| main.rs:1575:18:1575:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1578:31:1580:13 | { ... } | | main.rs:1573:14:1573:23 | T | +| main.rs:1583:13:1583:13 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1583:17:1583:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1584:17:1584:17 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1585:13:1585:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1585:17:1585:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1585:37:1585:38 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1585:38:1585:38 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1586:13:1586:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1586:17:1586:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1589:26:1589:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1589:26:1589:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1589:26:1589:30 | SelfParam | TRef.TRef | main.rs:1588:14:1588:23 | T | +| main.rs:1589:39:1591:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1589:39:1591:13 | { ... } | TRef | main.rs:1588:14:1588:23 | T | +| main.rs:1590:18:1590:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1590:18:1590:21 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1590:18:1590:21 | self | TRef.TRef | main.rs:1588:14:1588:23 | T | +| main.rs:1593:31:1595:13 | { ... } | | main.rs:1588:14:1588:23 | T | +| main.rs:1598:13:1598:13 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1598:17:1598:19 | &42 | | {EXTERNAL LOCATION} | & | +| main.rs:1599:17:1599:17 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1600:13:1600:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1600:17:1600:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1600:33:1600:34 | &r | | {EXTERNAL LOCATION} | & | +| main.rs:1600:34:1600:34 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1601:13:1601:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1601:17:1601:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1604:26:1604:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1604:26:1604:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1604:26:1604:30 | SelfParam | TRef.TPtrMut | main.rs:1603:14:1603:23 | T | +| main.rs:1604:39:1606:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1604:39:1606:13 | { ... } | TRef | main.rs:1603:14:1603:23 | T | +| main.rs:1605:26:1605:32 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1605:29:1605:32 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1605:29:1605:32 | self | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1605:29:1605:32 | self | TRef.TPtrMut | main.rs:1603:14:1603:23 | T | +| main.rs:1608:31:1610:13 | { ... } | | main.rs:1603:14:1603:23 | T | +| main.rs:1614:13:1614:13 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1614:13:1614:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1614:27:1614:32 | &mut v | | {EXTERNAL LOCATION} | &mut | +| main.rs:1615:26:1615:26 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1615:26:1615:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1616:26:1616:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1616:46:1616:47 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1616:47:1616:47 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1616:47:1616:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1617:13:1617:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1617:17:1617:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1623:16:1635:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1624:13:1624:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:1624:17:1624:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1624:17:1624:29 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1624:25:1624:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1625:13:1625:13 | y | | {EXTERNAL LOCATION} | bool | +| main.rs:1625:17:1625:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1625:17:1625:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1625:25:1625:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1629:17:1631:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1631:16:1633:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1648:30:1650:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1649:13:1649:31 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1656:16:1656:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1656:22:1656:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1656:41:1661:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1657:13:1660:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1658:20:1658:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1658:29:1658:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1659:20:1659:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1659:29:1659:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1666:23:1666:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1666:23:1666:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1666:34:1666:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1666:45:1669:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1667:13:1667:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1667:13:1667:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1667:23:1667:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1668:13:1668:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1668:13:1668:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1668:23:1668:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1674:16:1674:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1674:22:1674:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1674:41:1679:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1675:13:1678:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1676:20:1676:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1676:29:1676:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1677:20:1677:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1677:29:1677:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1684:23:1684:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1684:23:1684:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1684:34:1684:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1684:45:1687:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1685:13:1685:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1685:13:1685:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1685:23:1685:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1686:13:1686:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1686:13:1686:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1686:23:1686:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1692:16:1692:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1692:22:1692:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1692:41:1697:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1693:13:1696:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1694:20:1694:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1694:29:1694:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1695:20:1695:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1695:29:1695:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1701:23:1701:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1701:23:1701:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1701:34:1701:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1701:45:1704:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1702:13:1702:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1702:13:1702:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1702:23:1702:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1703:13:1703:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1703:13:1703:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1703:23:1703:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1709:16:1709:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1709:22:1709:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1709:41:1714:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1710:13:1713:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1711:20:1711:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1711:29:1711:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1712:20:1712:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1712:29:1712:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1718:23:1718:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1718:23:1718:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1718:34:1718:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1718:45:1721:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1719:13:1719:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1719:13:1719:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1719:23:1719:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1720:13:1720:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1720:13:1720:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1720:23:1720:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1726:16:1726:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1726:22:1726:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1726:41:1731:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1727:13:1730:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1728:20:1728:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1728:29:1728:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1729:20:1729:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1729:29:1729:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1735:23:1735:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1735:23:1735:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1735:34:1735:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1735:45:1738:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1736:13:1736:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1736:13:1736:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1736:23:1736:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1737:13:1737:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1737:13:1737:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1737:23:1737:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1743:19:1743:22 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1743:25:1743:27 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1743:44:1748:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1744:13:1747:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1745:20:1745:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1745:29:1745:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1746:20:1746:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1746:29:1746:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1752:26:1752:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1752:26:1752:34 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1752:37:1752:39 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1752:48:1755:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1753:13:1753:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1753:13:1753:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1753:23:1753:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1754:13:1754:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1754:13:1754:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1754:23:1754:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1760:18:1760:21 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1760:24:1760:26 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1760:43:1765:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1761:13:1764:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1762:20:1762:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1762:29:1762:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1763:20:1763:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1763:29:1763:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1769:25:1769:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1769:25:1769:33 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1769:36:1769:38 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1769:47:1772:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1770:13:1770:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1770:13:1770:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1770:23:1770:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1771:13:1771:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1771:13:1771:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1771:23:1771:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1777:19:1777:22 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1777:25:1777:27 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1777:44:1782:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1778:13:1781:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1779:20:1779:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1779:29:1779:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1780:20:1780:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1780:29:1780:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1786:26:1786:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1786:26:1786:34 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1786:37:1786:39 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1786:48:1789:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1787:13:1787:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1787:13:1787:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1787:23:1787:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1788:13:1788:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1788:13:1788:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1788:23:1788:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1794:16:1794:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1794:22:1794:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1794:40:1799:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1795:13:1798:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1796:20:1796:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1796:30:1796:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1797:20:1797:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1797:30:1797:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1803:23:1803:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1803:23:1803:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1803:34:1803:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1803:44:1806:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1804:13:1804:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1804:13:1804:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1804:24:1804:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1805:13:1805:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1805:13:1805:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1805:24:1805:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1811:16:1811:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1811:22:1811:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1811:40:1816:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1812:13:1815:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1813:20:1813:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1813:30:1813:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1814:20:1814:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1814:30:1814:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1820:23:1820:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1820:23:1820:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1820:34:1820:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1820:44:1823:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1821:13:1821:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1821:13:1821:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1821:24:1821:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1822:13:1822:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1822:13:1822:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1822:24:1822:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1828:16:1828:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1828:30:1833:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1829:13:1832:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1830:21:1830:24 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1831:21:1831:24 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1838:16:1838:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1838:30:1843:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1839:13:1842:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1840:21:1840:24 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1841:21:1841:24 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1847:15:1847:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1847:15:1847:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1847:22:1847:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1847:22:1847:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1847:44:1849:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1848:13:1848:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1848:13:1848:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1848:13:1848:29 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1848:13:1848:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1848:23:1848:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1848:23:1848:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1848:34:1848:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1848:34:1848:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1848:34:1848:50 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1848:44:1848:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1848:44:1848:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1851:15:1851:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1851:15:1851:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | | main.rs:1851:22:1851:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1851:22:1851:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1851:33:1851:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1851:33:1851:36 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1851:33:1851:48 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1851:42:1851:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1851:42:1851:46 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1854:15:1854:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1854:15:1854:19 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1854:22:1854:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1854:22:1854:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1854:44:1856:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1855:13:1855:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1855:13:1855:16 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1855:13:1855:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1855:13:1855:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1855:23:1855:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1855:23:1855:27 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1855:34:1855:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1855:34:1855:37 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1855:34:1855:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1855:44:1855:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1855:44:1855:48 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1858:15:1858:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1858:15:1858:19 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1858:22:1858:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1858:22:1858:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1858:44:1860:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1859:13:1859:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1859:13:1859:16 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1859:13:1859:28 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1859:13:1859:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1859:22:1859:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1859:22:1859:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1859:33:1859:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1859:33:1859:36 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1859:33:1859:48 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1859:42:1859:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1859:42:1859:46 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1862:15:1862:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1862:15:1862:19 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | +| main.rs:1851:22:1851:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1851:44:1853:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1852:13:1852:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1852:13:1852:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1852:13:1852:29 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1852:13:1852:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1852:23:1852:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1852:23:1852:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1852:34:1852:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1852:34:1852:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1852:34:1852:50 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1852:44:1852:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1852:44:1852:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1857:24:1857:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1857:24:1857:28 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1857:31:1857:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1857:31:1857:35 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1857:75:1859:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:1857:75:1859:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | +| main.rs:1858:14:1858:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1858:14:1858:17 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1858:23:1858:26 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1858:23:1858:26 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1858:43:1858:62 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1858:45:1858:49 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1858:45:1858:49 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1858:55:1858:59 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1858:55:1858:59 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1861:15:1861:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1861:15:1861:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1861:22:1861:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1861:22:1861:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1861:44:1863:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1862:13:1862:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1862:13:1862:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1862:13:1862:28 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1862:13:1862:48 | ... && ... | | {EXTERNAL LOCATION} | bool | | main.rs:1862:22:1862:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1862:22:1862:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1862:44:1864:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1863:13:1863:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1863:13:1863:16 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1863:13:1863:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1863:13:1863:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1863:23:1863:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1863:23:1863:27 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1863:34:1863:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1863:34:1863:37 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1863:34:1863:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1863:44:1863:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1863:44:1863:48 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1867:26:1867:26 | a | | main.rs:1867:18:1867:23 | T | -| main.rs:1867:32:1867:32 | b | | main.rs:1867:18:1867:23 | T | -| main.rs:1868:9:1868:9 | a | | main.rs:1867:18:1867:23 | T | -| main.rs:1868:13:1868:13 | b | | main.rs:1867:18:1867:23 | T | -| main.rs:1871:16:2002:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1875:23:1875:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1875:31:1875:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1876:23:1876:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1876:31:1876:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1877:23:1877:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1877:30:1877:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1878:23:1878:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1878:31:1878:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1879:23:1879:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1879:30:1879:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1880:23:1880:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1880:32:1880:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1883:23:1883:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1883:31:1883:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1884:23:1884:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1884:31:1884:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1885:23:1885:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1885:31:1885:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1886:23:1886:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1886:31:1886:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:23:1887:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:31:1887:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:39:1888:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:45:1888:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1891:17:1891:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1891:34:1891:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1892:9:1892:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1892:27:1892:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:17:1894:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:34:1894:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:9:1895:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:27:1895:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:17:1897:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:34:1897:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:9:1898:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:27:1898:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1900:17:1900:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1900:34:1900:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1901:9:1901:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1901:27:1901:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1903:17:1903:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1903:34:1903:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1904:9:1904:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1904:27:1904:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1907:26:1907:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1907:34:1907:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:25:1908:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:33:1908:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:26:1909:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:34:1909:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1910:23:1910:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1910:32:1910:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:23:1911:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:32:1911:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1914:17:1914:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1914:37:1914:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1915:9:1915:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1915:30:1915:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1917:17:1917:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1917:36:1917:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:9:1918:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:29:1918:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:17:1920:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:37:1920:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:9:1921:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:30:1921:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1923:17:1923:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1923:34:1923:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1924:9:1924:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1924:28:1924:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:17:1926:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:34:1926:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1927:9:1927:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1927:28:1927:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:24:1929:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1930:24:1930:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1933:13:1933:14 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1933:18:1933:36 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1934:13:1934:14 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1934:18:1934:36 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1937:23:1937:24 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1937:29:1937:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1938:23:1938:24 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1938:29:1938:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1939:23:1939:24 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1939:28:1939:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1940:23:1940:24 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1940:29:1940:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1941:23:1941:24 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1941:28:1941:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1942:23:1942:24 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1942:29:1942:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1945:24:1945:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1945:29:1945:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1946:24:1946:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1946:29:1946:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1947:24:1947:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1947:29:1947:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1948:24:1948:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1948:29:1948:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1949:24:1949:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1949:29:1949:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1952:17:1952:31 | vec2_add_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1952:35:1952:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1953:9:1953:23 | vec2_add_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1953:28:1953:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1955:17:1955:31 | vec2_sub_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1955:35:1955:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1956:9:1956:23 | vec2_sub_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1956:28:1956:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1958:17:1958:31 | vec2_mul_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1958:35:1958:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1959:9:1959:23 | vec2_mul_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1959:28:1959:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1961:17:1961:31 | vec2_div_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1961:35:1961:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1962:9:1962:23 | vec2_div_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1962:28:1962:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1964:17:1964:31 | vec2_rem_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1964:35:1964:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1965:9:1965:23 | vec2_rem_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1965:28:1965:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1968:27:1968:28 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1968:32:1968:33 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1969:26:1969:27 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1969:31:1969:32 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1970:27:1970:28 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1970:32:1970:33 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1971:24:1971:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1971:30:1971:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1972:24:1972:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1972:30:1972:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1975:17:1975:34 | vec2_bitand_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1975:38:1975:39 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1976:9:1976:26 | vec2_bitand_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1976:31:1976:32 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1978:17:1978:33 | vec2_bitor_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1978:37:1978:38 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1979:9:1979:25 | vec2_bitor_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1979:30:1979:31 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1981:17:1981:34 | vec2_bitxor_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1981:38:1981:39 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1982:9:1982:26 | vec2_bitxor_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1982:31:1982:32 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1984:17:1984:31 | vec2_shl_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1984:35:1984:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1985:9:1985:23 | vec2_shl_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1985:29:1985:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1987:17:1987:31 | vec2_shr_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1987:35:1987:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1988:9:1988:23 | vec2_shr_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1988:29:1988:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1991:25:1991:26 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1992:25:1992:26 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1996:30:1996:48 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:2001:30:2001:48 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:2011:18:2011:21 | SelfParam | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2011:24:2011:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2014:25:2016:5 | { ... } | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2019:9:2019:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2023:9:2023:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2023:9:2023:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2032:13:2032:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | -| main.rs:2032:13:2032:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | -| main.rs:2032:13:2032:42 | SelfParam | Ptr.TRefMut | main.rs:2026:5:2026:14 | S2 | -| main.rs:2033:13:2033:15 | _cx | | {EXTERNAL LOCATION} | &mut | -| main.rs:2033:13:2033:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | -| main.rs:2034:44:2036:9 | { ... } | | {EXTERNAL LOCATION} | Poll | -| main.rs:2034:44:2036:9 | { ... } | T | main.rs:2008:5:2008:14 | S1 | -| main.rs:2043:22:2051:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2044:9:2044:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2044:9:2044:12 | f1(...) | dyn(Output) | main.rs:2008:5:2008:14 | S1 | -| main.rs:2045:9:2045:12 | f2(...) | | main.rs:2018:16:2018:39 | impl ... | -| main.rs:2046:9:2046:12 | f3(...) | | main.rs:2022:16:2022:39 | impl ... | -| main.rs:2047:9:2047:12 | f4(...) | | main.rs:2039:16:2039:39 | impl ... | -| main.rs:2049:13:2049:13 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2049:17:2049:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2050:9:2050:9 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2061:15:2061:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2061:15:2061:19 | SelfParam | TRef | main.rs:2060:5:2062:5 | Self [trait Trait1] | -| main.rs:2061:22:2061:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2065:15:2065:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2065:15:2065:19 | SelfParam | TRef | main.rs:2064:5:2066:5 | Self [trait Trait2] | -| main.rs:2065:22:2065:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2069:15:2069:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2069:15:2069:19 | SelfParam | TRef | main.rs:2055:5:2056:14 | S1 | -| main.rs:2069:22:2069:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2073:15:2073:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2073:15:2073:19 | SelfParam | TRef | main.rs:2055:5:2056:14 | S1 | -| main.rs:2073:22:2073:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2081:18:2081:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2081:18:2081:22 | SelfParam | TRef | main.rs:2080:5:2082:5 | Self [trait MyTrait] | -| main.rs:2085:18:2085:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2085:18:2085:22 | SelfParam | TRef | main.rs:2055:5:2056:14 | S1 | -| main.rs:2085:31:2087:9 | { ... } | | main.rs:2057:5:2057:14 | S2 | -| main.rs:2091:18:2091:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2091:18:2091:22 | SelfParam | TRef | main.rs:2058:5:2058:22 | S3 | -| main.rs:2091:18:2091:22 | SelfParam | TRef.T3 | main.rs:2090:10:2090:17 | T | -| main.rs:2091:30:2094:9 | { ... } | | main.rs:2090:10:2090:17 | T | -| main.rs:2092:25:2092:28 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2092:25:2092:28 | self | TRef | main.rs:2058:5:2058:22 | S3 | -| main.rs:2092:25:2092:28 | self | TRef.T3 | main.rs:2090:10:2090:17 | T | -| main.rs:2101:41:2101:41 | t | | main.rs:2101:26:2101:38 | B | -| main.rs:2101:52:2103:5 | { ... } | | main.rs:2101:23:2101:23 | A | -| main.rs:2102:9:2102:9 | t | | main.rs:2101:26:2101:38 | B | -| main.rs:2105:34:2105:34 | x | | main.rs:2105:24:2105:31 | T | -| main.rs:2105:59:2107:5 | { ... } | | main.rs:2105:43:2105:57 | impl ... | -| main.rs:2105:59:2107:5 | { ... } | impl(T) | main.rs:2105:24:2105:31 | T | -| main.rs:2106:12:2106:12 | x | | main.rs:2105:24:2105:31 | T | -| main.rs:2109:34:2109:34 | x | | main.rs:2109:24:2109:31 | T | -| main.rs:2109:67:2111:5 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2109:67:2111:5 | { ... } | T | main.rs:2109:50:2109:64 | impl ... | -| main.rs:2109:67:2111:5 | { ... } | T.impl(T) | main.rs:2109:24:2109:31 | T | -| main.rs:2110:17:2110:17 | x | | main.rs:2109:24:2109:31 | T | -| main.rs:2113:34:2113:34 | x | | main.rs:2113:24:2113:31 | T | -| main.rs:2113:78:2115:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2113:78:2115:5 | { ... } | T0 | main.rs:2113:44:2113:58 | impl ... | -| main.rs:2113:78:2115:5 | { ... } | T0.impl(T) | main.rs:2113:24:2113:31 | T | -| main.rs:2113:78:2115:5 | { ... } | T1 | main.rs:2113:61:2113:75 | impl ... | -| main.rs:2113:78:2115:5 | { ... } | T1.impl(T) | main.rs:2113:24:2113:31 | T | -| main.rs:2114:9:2114:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2114:13:2114:13 | x | | main.rs:2113:24:2113:31 | T | -| main.rs:2114:28:2114:28 | x | | main.rs:2113:24:2113:31 | T | -| main.rs:2117:26:2117:26 | t | | main.rs:2117:29:2117:43 | impl ... | -| main.rs:2117:51:2119:5 | { ... } | | main.rs:2117:23:2117:23 | A | -| main.rs:2118:9:2118:9 | t | | main.rs:2117:29:2117:43 | impl ... | -| main.rs:2121:16:2135:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2122:13:2122:13 | x | | main.rs:2076:16:2076:35 | impl ... + ... | -| main.rs:2122:17:2122:20 | f1(...) | | main.rs:2076:16:2076:35 | impl ... + ... | -| main.rs:2123:9:2123:9 | x | | main.rs:2076:16:2076:35 | impl ... + ... | -| main.rs:2124:9:2124:9 | x | | main.rs:2076:16:2076:35 | impl ... + ... | -| main.rs:2125:13:2125:13 | a | | main.rs:2097:28:2097:43 | impl ... | -| main.rs:2125:17:2125:32 | get_a_my_trait(...) | | main.rs:2097:28:2097:43 | impl ... | -| main.rs:2126:32:2126:32 | a | | main.rs:2097:28:2097:43 | impl ... | -| main.rs:2127:13:2127:13 | a | | main.rs:2097:28:2097:43 | impl ... | -| main.rs:2127:17:2127:32 | get_a_my_trait(...) | | main.rs:2097:28:2097:43 | impl ... | -| main.rs:2128:32:2128:32 | a | | main.rs:2097:28:2097:43 | impl ... | -| main.rs:2130:17:2130:35 | get_a_my_trait2(...) | | main.rs:2105:43:2105:57 | impl ... | -| main.rs:2133:17:2133:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2133:17:2133:35 | get_a_my_trait3(...) | T | main.rs:2109:50:2109:64 | impl ... | -| main.rs:2134:17:2134:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2134:17:2134:35 | get_a_my_trait4(...) | T0 | main.rs:2113:44:2113:58 | impl ... | -| main.rs:2134:17:2134:35 | get_a_my_trait4(...) | T1 | main.rs:2113:61:2113:75 | impl ... | -| main.rs:2145:16:2145:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2145:16:2145:20 | SelfParam | TRef | main.rs:2141:5:2142:13 | S | -| main.rs:2145:31:2147:9 | { ... } | | main.rs:2141:5:2142:13 | S | -| main.rs:2156:26:2158:9 | { ... } | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2156:26:2158:9 | { ... } | T | main.rs:2155:10:2155:10 | T | -| main.rs:2157:13:2157:38 | MyVec {...} | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2157:27:2157:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2157:27:2157:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2160:17:2160:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:2160:17:2160:25 | SelfParam | TRefMut | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2160:17:2160:25 | SelfParam | TRefMut.T | main.rs:2155:10:2155:10 | T | -| main.rs:2160:28:2160:32 | value | | main.rs:2155:10:2155:10 | T | -| main.rs:2160:38:2162:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2161:13:2161:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:2161:13:2161:16 | self | TRefMut | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2161:13:2161:16 | self | TRefMut.T | main.rs:2155:10:2155:10 | T | -| main.rs:2161:28:2161:32 | value | | main.rs:2155:10:2155:10 | T | -| main.rs:2169:18:2169:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2169:18:2169:22 | SelfParam | TRef | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2169:18:2169:22 | SelfParam | TRef.T | main.rs:2165:10:2165:10 | T | -| main.rs:2169:25:2169:29 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2169:56:2171:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2169:56:2171:9 | { ... } | TRef | main.rs:2165:10:2165:10 | T | -| main.rs:2170:13:2170:29 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2170:14:2170:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2170:14:2170:17 | self | TRef | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2170:14:2170:17 | self | TRef.T | main.rs:2165:10:2165:10 | T | -| main.rs:2170:24:2170:28 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2174:22:2174:26 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2174:22:2174:26 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2174:22:2174:26 | slice | TRef.TSlice | main.rs:2141:5:2142:13 | S | -| main.rs:2174:35:2176:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2175:17:2175:21 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2175:17:2175:21 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2175:17:2175:21 | slice | TRef.TSlice | main.rs:2141:5:2142:13 | S | -| main.rs:2178:37:2178:37 | a | | main.rs:2178:20:2178:34 | T | -| main.rs:2178:43:2178:43 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2182:9:2182:9 | a | | main.rs:2178:20:2178:34 | T | -| main.rs:2182:11:2182:11 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2185:16:2196:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2186:17:2186:19 | vec | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2186:23:2186:34 | ...::new(...) | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2187:9:2187:11 | vec | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2188:9:2188:11 | vec | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2190:13:2190:14 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2190:13:2190:14 | xs | TArray | main.rs:2141:5:2142:13 | S | -| main.rs:2190:26:2190:28 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2191:17:2191:18 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2191:17:2191:18 | xs | TArray | main.rs:2141:5:2142:13 | S | -| main.rs:2193:29:2193:31 | vec | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2195:9:2195:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2195:23:2195:25 | &xs | | {EXTERNAL LOCATION} | & | -| main.rs:2195:24:2195:25 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2195:24:2195:25 | xs | TArray | main.rs:2141:5:2142:13 | S | -| main.rs:2200:16:2202:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2201:25:2201:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | -| main.rs:2201:25:2201:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2201:25:2201:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2201:38:2201:45 | "World!" | | {EXTERNAL LOCATION} | & | -| main.rs:2201:38:2201:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2210:19:2210:22 | SelfParam | | main.rs:2206:5:2211:5 | Self [trait MyAdd] | -| main.rs:2210:25:2210:27 | rhs | | main.rs:2206:17:2206:26 | Rhs | -| main.rs:2217:19:2217:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2217:25:2217:29 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2217:45:2219:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2218:13:2218:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2226:19:2226:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2226:25:2226:29 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2226:25:2226:29 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2226:46:2228:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2227:14:2227:18 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2227:14:2227:18 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2235:19:2235:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2235:25:2235:29 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2235:46:2241:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2236:16:2236:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2250:19:2250:22 | SelfParam | | main.rs:2244:5:2244:19 | S | -| main.rs:2250:19:2250:22 | SelfParam | T | main.rs:2246:10:2246:17 | T | -| main.rs:2250:25:2250:29 | other | | main.rs:2244:5:2244:19 | S | -| main.rs:2250:25:2250:29 | other | T | main.rs:2246:10:2246:17 | T | -| main.rs:2250:54:2252:9 | { ... } | | main.rs:2244:5:2244:19 | S | -| main.rs:2251:16:2251:19 | self | | main.rs:2244:5:2244:19 | S | -| main.rs:2251:16:2251:19 | self | T | main.rs:2246:10:2246:17 | T | -| main.rs:2251:31:2251:35 | other | | main.rs:2244:5:2244:19 | S | -| main.rs:2251:31:2251:35 | other | T | main.rs:2246:10:2246:17 | T | -| main.rs:2259:19:2259:22 | SelfParam | | main.rs:2244:5:2244:19 | S | -| main.rs:2259:19:2259:22 | SelfParam | T | main.rs:2255:10:2255:17 | T | -| main.rs:2259:25:2259:29 | other | | main.rs:2255:10:2255:17 | T | -| main.rs:2259:51:2261:9 | { ... } | | main.rs:2244:5:2244:19 | S | -| main.rs:2260:16:2260:19 | self | | main.rs:2244:5:2244:19 | S | -| main.rs:2260:16:2260:19 | self | T | main.rs:2255:10:2255:17 | T | -| main.rs:2260:31:2260:35 | other | | main.rs:2255:10:2255:17 | T | -| main.rs:2271:19:2271:22 | SelfParam | | main.rs:2244:5:2244:19 | S | -| main.rs:2271:19:2271:22 | SelfParam | T | main.rs:2264:14:2264:14 | T | -| main.rs:2271:25:2271:29 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2271:25:2271:29 | other | TRef | main.rs:2264:14:2264:14 | T | -| main.rs:2271:55:2273:9 | { ... } | | main.rs:2244:5:2244:19 | S | -| main.rs:2272:16:2272:19 | self | | main.rs:2244:5:2244:19 | S | -| main.rs:2272:16:2272:19 | self | T | main.rs:2264:14:2264:14 | T | -| main.rs:2272:31:2272:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2272:31:2272:35 | other | TRef | main.rs:2264:14:2264:14 | T | -| main.rs:2278:20:2278:24 | value | | main.rs:2276:18:2276:18 | T | -| main.rs:2283:20:2283:24 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2283:40:2285:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2284:13:2284:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2290:20:2290:24 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2290:41:2296:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2291:16:2291:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2301:21:2301:25 | value | | main.rs:2299:19:2299:19 | T | -| main.rs:2301:31:2301:31 | x | | main.rs:2299:5:2302:5 | Self [trait MyFrom2] | -| main.rs:2306:21:2306:25 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2306:33:2306:33 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2306:48:2308:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2307:13:2307:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2313:21:2313:25 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2313:34:2313:34 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2313:49:2319:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2314:16:2314:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2324:15:2324:15 | x | | main.rs:2322:5:2328:5 | Self [trait MySelfTrait] | -| main.rs:2327:15:2327:15 | x | | main.rs:2322:5:2328:5 | Self [trait MySelfTrait] | -| main.rs:2332:15:2332:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2332:31:2334:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2333:13:2333:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2337:15:2337:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2337:32:2339:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2338:13:2338:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2344:15:2344:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2344:31:2346:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2349:15:2349:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2349:32:2351:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:2350:13:2350:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2354:16:2379:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2355:13:2355:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2356:9:2356:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2356:18:2356:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2357:9:2357:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2357:18:2357:22 | &5i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2357:19:2357:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2358:9:2358:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2358:18:2358:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2360:11:2360:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2360:26:2360:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2361:11:2361:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2361:24:2361:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2362:11:2362:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2362:24:2362:28 | &3i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2362:25:2362:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2364:13:2364:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2364:17:2364:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2364:30:2364:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2365:13:2365:13 | y | | {EXTERNAL LOCATION} | i64 | -| main.rs:2365:17:2365:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2365:30:2365:33 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2366:13:2366:13 | z | | {EXTERNAL LOCATION} | i64 | -| main.rs:2366:38:2366:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:9:2367:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2367:23:2367:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:30:2367:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:9:2368:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2368:23:2368:26 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2368:29:2368:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:9:2369:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2369:27:2369:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:34:2369:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2371:9:2371:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2371:17:2371:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:9:2372:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:17:2372:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:9:2373:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:18:2373:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2374:9:2374:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2374:18:2374:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2375:9:2375:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:25:2375:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:25:2376:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2377:9:2377:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2377:25:2377:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2378:25:2378:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2386:26:2388:9 | { ... } | | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2387:13:2387:25 | MyCallable {...} | | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2390:17:2390:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2390:17:2390:21 | SelfParam | TRef | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2390:31:2392:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2395:16:2502:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2398:9:2398:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2398:18:2398:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2398:28:2398:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2399:9:2399:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2399:18:2399:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2399:43:2399:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2400:9:2400:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2400:18:2400:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2400:40:2400:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2402:13:2402:17 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2402:21:2402:31 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2402:22:2402:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2403:9:2403:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2403:18:2403:22 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2403:24:2403:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2405:13:2405:17 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2405:21:2405:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2405:22:2405:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2406:9:2406:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2406:18:2406:22 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2406:24:2406:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2408:13:2408:17 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2408:13:2408:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2408:31:2408:39 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2409:9:2409:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2409:18:2409:22 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2409:18:2409:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2409:24:2409:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2411:13:2411:17 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2411:13:2411:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2411:31:2411:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2412:9:2412:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2412:18:2412:22 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2412:18:2412:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2412:24:2412:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2414:17:2414:24 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2414:28:2414:48 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2414:29:2414:33 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2414:29:2414:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2414:36:2414:40 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2414:36:2414:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2414:43:2414:47 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2414:43:2414:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2415:9:2415:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2415:18:2415:26 | &strings1 | | {EXTERNAL LOCATION} | & | -| main.rs:2415:19:2415:26 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2415:28:2415:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2416:9:2416:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2416:18:2416:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | -| main.rs:2416:23:2416:30 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2416:32:2416:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2417:9:2417:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2417:18:2417:25 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2417:27:2417:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2419:13:2419:20 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2420:9:2424:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2421:13:2421:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2421:26:2421:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2421:26:2421:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2422:13:2422:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2422:26:2422:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2422:26:2422:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2423:13:2423:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2423:26:2423:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2423:26:2423:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:9:2425:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2425:18:2425:25 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2425:27:2425:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2427:13:2427:20 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2428:9:2432:9 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2428:10:2432:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2429:13:2429:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2429:26:2429:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2429:26:2429:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2430:13:2430:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2430:26:2430:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2430:26:2430:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2431:13:2431:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2431:26:2431:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2431:26:2431:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2433:9:2433:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2433:18:2433:25 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2433:27:2433:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2435:13:2435:21 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2435:25:2435:81 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2435:26:2435:42 | ...::new(...) | | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2435:45:2435:61 | ...::new(...) | | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2435:64:2435:80 | ...::new(...) | | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2436:9:2440:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2437:12:2437:20 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2438:9:2440:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2444:9:2444:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2444:18:2444:22 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2444:24:2444:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2445:9:2445:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2445:18:2445:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2445:19:2445:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2445:19:2445:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2445:28:2445:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2446:13:2446:17 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2446:21:2446:25 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2447:9:2447:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2447:18:2447:22 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2447:24:2447:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2448:13:2448:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2448:26:2448:27 | .. | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2449:9:2449:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2449:18:2449:48 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2449:19:2449:36 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2449:20:2449:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2449:26:2449:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2449:32:2449:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2449:38:2449:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2449:50:2449:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2451:13:2451:18 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2452:9:2455:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | -| main.rs:2453:20:2453:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2454:18:2454:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2456:9:2456:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2456:18:2456:23 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2456:25:2456:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2461:9:2461:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2461:24:2461:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2463:13:2463:18 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2463:13:2463:18 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2463:13:2463:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2463:32:2463:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2463:33:2463:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2464:9:2464:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2464:18:2464:23 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2464:18:2464:23 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2464:18:2464:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2464:25:2464:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2466:22:2466:33 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2466:23:2466:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:1862:22:1862:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1862:33:1862:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1862:33:1862:36 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1862:33:1862:48 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1862:42:1862:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1862:42:1862:46 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1865:15:1865:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1865:15:1865:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1865:22:1865:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1865:22:1865:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1865:44:1867:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1866:13:1866:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1866:13:1866:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1866:13:1866:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1866:13:1866:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1866:23:1866:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1866:23:1866:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1866:34:1866:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1866:34:1866:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1866:34:1866:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1866:44:1866:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1866:44:1866:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1869:15:1869:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1869:15:1869:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1869:22:1869:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1869:22:1869:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1869:44:1871:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1870:13:1870:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1870:13:1870:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1870:13:1870:28 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1870:13:1870:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1870:22:1870:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1870:22:1870:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1870:33:1870:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1870:33:1870:36 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1870:33:1870:48 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1870:42:1870:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1870:42:1870:46 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1873:15:1873:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1873:15:1873:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1873:22:1873:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1873:22:1873:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1873:44:1875:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1874:13:1874:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1874:13:1874:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1874:13:1874:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1874:13:1874:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1874:23:1874:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1874:23:1874:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1874:34:1874:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1874:34:1874:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1874:34:1874:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1874:44:1874:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1874:44:1874:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1878:26:1878:26 | a | | main.rs:1878:18:1878:23 | T | +| main.rs:1878:32:1878:32 | b | | main.rs:1878:18:1878:23 | T | +| main.rs:1879:9:1879:9 | a | | main.rs:1878:18:1878:23 | T | +| main.rs:1879:13:1879:13 | b | | main.rs:1878:18:1878:23 | T | +| main.rs:1882:16:2013:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1886:23:1886:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1886:31:1886:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1887:23:1887:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1887:31:1887:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1888:23:1888:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1888:30:1888:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1889:23:1889:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1889:31:1889:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1890:23:1890:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1890:30:1890:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1891:23:1891:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1891:32:1891:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1894:23:1894:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1894:31:1894:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1895:23:1895:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1895:31:1895:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1896:23:1896:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1896:31:1896:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1897:23:1897:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1897:31:1897:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1898:23:1898:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1898:31:1898:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1899:39:1899:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1899:45:1899:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1902:17:1902:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1902:34:1902:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1903:9:1903:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1903:27:1903:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1905:17:1905:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1905:34:1905:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1906:9:1906:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1906:27:1906:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1908:17:1908:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1908:34:1908:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1909:9:1909:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1909:27:1909:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1911:17:1911:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1911:34:1911:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1912:9:1912:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1912:27:1912:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1914:17:1914:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1914:34:1914:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1915:9:1915:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1915:27:1915:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1918:26:1918:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1918:34:1918:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1919:25:1919:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1919:33:1919:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1920:26:1920:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1920:34:1920:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1921:23:1921:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1921:32:1921:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1922:23:1922:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1922:32:1922:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1925:17:1925:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1925:37:1925:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1926:9:1926:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1926:30:1926:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1928:17:1928:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1928:36:1928:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1929:9:1929:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1929:29:1929:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1931:17:1931:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1931:37:1931:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1932:9:1932:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1932:30:1932:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1934:17:1934:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1934:34:1934:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1935:9:1935:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1935:28:1935:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1937:17:1937:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1937:34:1937:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1938:9:1938:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1938:28:1938:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1940:24:1940:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1941:24:1941:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1944:13:1944:14 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1944:18:1944:36 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1945:13:1945:14 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1945:18:1945:36 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1948:23:1948:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1948:29:1948:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1949:23:1949:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1949:29:1949:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1950:23:1950:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1950:28:1950:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1951:23:1951:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1951:29:1951:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1952:23:1952:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1952:28:1952:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1953:23:1953:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1953:29:1953:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1956:24:1956:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1956:29:1956:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1957:24:1957:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1957:29:1957:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1958:24:1958:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1958:29:1958:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1959:24:1959:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1959:29:1959:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1960:24:1960:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1960:29:1960:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1963:17:1963:31 | vec2_add_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1963:35:1963:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1964:9:1964:23 | vec2_add_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1964:28:1964:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1966:17:1966:31 | vec2_sub_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1966:35:1966:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1967:9:1967:23 | vec2_sub_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1967:28:1967:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1969:17:1969:31 | vec2_mul_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1969:35:1969:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1970:9:1970:23 | vec2_mul_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1970:28:1970:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1972:17:1972:31 | vec2_div_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1972:35:1972:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1973:9:1973:23 | vec2_div_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1973:28:1973:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1975:17:1975:31 | vec2_rem_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1975:35:1975:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1976:9:1976:23 | vec2_rem_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1976:28:1976:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1979:27:1979:28 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1979:32:1979:33 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1980:26:1980:27 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1980:31:1980:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1981:27:1981:28 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1981:32:1981:33 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1982:24:1982:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1982:30:1982:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1983:24:1983:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1983:30:1983:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1986:17:1986:34 | vec2_bitand_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1986:38:1986:39 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1987:9:1987:26 | vec2_bitand_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1987:31:1987:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1989:17:1989:33 | vec2_bitor_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1989:37:1989:38 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1990:9:1990:25 | vec2_bitor_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1990:30:1990:31 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1992:17:1992:34 | vec2_bitxor_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1992:38:1992:39 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1993:9:1993:26 | vec2_bitxor_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1993:31:1993:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1995:17:1995:31 | vec2_shl_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1995:35:1995:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1996:9:1996:23 | vec2_shl_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1996:29:1996:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1998:17:1998:31 | vec2_shr_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1998:35:1998:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1999:9:1999:23 | vec2_shr_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1999:29:1999:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2002:25:2002:26 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2003:25:2003:26 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2007:30:2007:48 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2012:30:2012:48 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2022:18:2022:21 | SelfParam | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2022:24:2022:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2025:25:2027:5 | { ... } | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2030:9:2030:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2034:9:2034:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2034:9:2034:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2043:13:2043:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | +| main.rs:2043:13:2043:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | +| main.rs:2043:13:2043:42 | SelfParam | Ptr.TRefMut | main.rs:2037:5:2037:14 | S2 | +| main.rs:2044:13:2044:15 | _cx | | {EXTERNAL LOCATION} | &mut | +| main.rs:2044:13:2044:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | +| main.rs:2045:44:2047:9 | { ... } | | {EXTERNAL LOCATION} | Poll | +| main.rs:2045:44:2047:9 | { ... } | T | main.rs:2019:5:2019:14 | S1 | +| main.rs:2054:22:2062:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2055:9:2055:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2055:9:2055:12 | f1(...) | dyn(Output) | main.rs:2019:5:2019:14 | S1 | +| main.rs:2056:9:2056:12 | f2(...) | | main.rs:2029:16:2029:39 | impl ... | +| main.rs:2057:9:2057:12 | f3(...) | | main.rs:2033:16:2033:39 | impl ... | +| main.rs:2058:9:2058:12 | f4(...) | | main.rs:2050:16:2050:39 | impl ... | +| main.rs:2060:13:2060:13 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2060:17:2060:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2061:9:2061:9 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2072:15:2072:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2072:15:2072:19 | SelfParam | TRef | main.rs:2071:5:2073:5 | Self [trait Trait1] | +| main.rs:2072:22:2072:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2076:15:2076:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2076:15:2076:19 | SelfParam | TRef | main.rs:2075:5:2077:5 | Self [trait Trait2] | +| main.rs:2076:22:2076:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2080:15:2080:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2080:15:2080:19 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | +| main.rs:2080:22:2080:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2084:15:2084:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2084:15:2084:19 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | +| main.rs:2084:22:2084:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2092:18:2092:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2092:18:2092:22 | SelfParam | TRef | main.rs:2091:5:2093:5 | Self [trait MyTrait] | +| main.rs:2096:18:2096:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2096:18:2096:22 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | +| main.rs:2096:31:2098:9 | { ... } | | main.rs:2068:5:2068:14 | S2 | +| main.rs:2102:18:2102:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2102:18:2102:22 | SelfParam | TRef | main.rs:2069:5:2069:22 | S3 | +| main.rs:2102:18:2102:22 | SelfParam | TRef.T3 | main.rs:2101:10:2101:17 | T | +| main.rs:2102:30:2105:9 | { ... } | | main.rs:2101:10:2101:17 | T | +| main.rs:2103:25:2103:28 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2103:25:2103:28 | self | TRef | main.rs:2069:5:2069:22 | S3 | +| main.rs:2103:25:2103:28 | self | TRef.T3 | main.rs:2101:10:2101:17 | T | +| main.rs:2112:41:2112:41 | t | | main.rs:2112:26:2112:38 | B | +| main.rs:2112:52:2114:5 | { ... } | | main.rs:2112:23:2112:23 | A | +| main.rs:2113:9:2113:9 | t | | main.rs:2112:26:2112:38 | B | +| main.rs:2116:34:2116:34 | x | | main.rs:2116:24:2116:31 | T | +| main.rs:2116:59:2118:5 | { ... } | | main.rs:2116:43:2116:57 | impl ... | +| main.rs:2116:59:2118:5 | { ... } | impl(T) | main.rs:2116:24:2116:31 | T | +| main.rs:2117:12:2117:12 | x | | main.rs:2116:24:2116:31 | T | +| main.rs:2120:34:2120:34 | x | | main.rs:2120:24:2120:31 | T | +| main.rs:2120:67:2122:5 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:2120:67:2122:5 | { ... } | T | main.rs:2120:50:2120:64 | impl ... | +| main.rs:2120:67:2122:5 | { ... } | T.impl(T) | main.rs:2120:24:2120:31 | T | +| main.rs:2121:17:2121:17 | x | | main.rs:2120:24:2120:31 | T | +| main.rs:2124:34:2124:34 | x | | main.rs:2124:24:2124:31 | T | +| main.rs:2124:78:2126:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2124:78:2126:5 | { ... } | T0 | main.rs:2124:44:2124:58 | impl ... | +| main.rs:2124:78:2126:5 | { ... } | T0.impl(T) | main.rs:2124:24:2124:31 | T | +| main.rs:2124:78:2126:5 | { ... } | T1 | main.rs:2124:61:2124:75 | impl ... | +| main.rs:2124:78:2126:5 | { ... } | T1.impl(T) | main.rs:2124:24:2124:31 | T | +| main.rs:2125:9:2125:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2125:13:2125:13 | x | | main.rs:2124:24:2124:31 | T | +| main.rs:2125:28:2125:28 | x | | main.rs:2124:24:2124:31 | T | +| main.rs:2128:26:2128:26 | t | | main.rs:2128:29:2128:43 | impl ... | +| main.rs:2128:51:2130:5 | { ... } | | main.rs:2128:23:2128:23 | A | +| main.rs:2129:9:2129:9 | t | | main.rs:2128:29:2128:43 | impl ... | +| main.rs:2132:16:2146:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2133:13:2133:13 | x | | main.rs:2087:16:2087:35 | impl ... + ... | +| main.rs:2133:17:2133:20 | f1(...) | | main.rs:2087:16:2087:35 | impl ... + ... | +| main.rs:2134:9:2134:9 | x | | main.rs:2087:16:2087:35 | impl ... + ... | +| main.rs:2135:9:2135:9 | x | | main.rs:2087:16:2087:35 | impl ... + ... | +| main.rs:2136:13:2136:13 | a | | main.rs:2108:28:2108:43 | impl ... | +| main.rs:2136:17:2136:32 | get_a_my_trait(...) | | main.rs:2108:28:2108:43 | impl ... | +| main.rs:2137:32:2137:32 | a | | main.rs:2108:28:2108:43 | impl ... | +| main.rs:2138:13:2138:13 | a | | main.rs:2108:28:2108:43 | impl ... | +| main.rs:2138:17:2138:32 | get_a_my_trait(...) | | main.rs:2108:28:2108:43 | impl ... | +| main.rs:2139:32:2139:32 | a | | main.rs:2108:28:2108:43 | impl ... | +| main.rs:2141:17:2141:35 | get_a_my_trait2(...) | | main.rs:2116:43:2116:57 | impl ... | +| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | T | main.rs:2120:50:2120:64 | impl ... | +| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T0 | main.rs:2124:44:2124:58 | impl ... | +| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T1 | main.rs:2124:61:2124:75 | impl ... | +| main.rs:2156:16:2156:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2156:16:2156:20 | SelfParam | TRef | main.rs:2152:5:2153:13 | S | +| main.rs:2156:31:2158:9 | { ... } | | main.rs:2152:5:2153:13 | S | +| main.rs:2167:26:2169:9 | { ... } | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2167:26:2169:9 | { ... } | T | main.rs:2166:10:2166:10 | T | +| main.rs:2168:13:2168:38 | MyVec {...} | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2168:27:2168:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2168:27:2168:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2171:17:2171:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:2171:17:2171:25 | SelfParam | TRefMut | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2171:17:2171:25 | SelfParam | TRefMut.T | main.rs:2166:10:2166:10 | T | +| main.rs:2171:28:2171:32 | value | | main.rs:2166:10:2166:10 | T | +| main.rs:2171:38:2173:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2172:13:2172:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:2172:13:2172:16 | self | TRefMut | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2172:13:2172:16 | self | TRefMut.T | main.rs:2166:10:2166:10 | T | +| main.rs:2172:28:2172:32 | value | | main.rs:2166:10:2166:10 | T | +| main.rs:2180:18:2180:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2180:18:2180:22 | SelfParam | TRef | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2180:18:2180:22 | SelfParam | TRef.T | main.rs:2176:10:2176:10 | T | +| main.rs:2180:25:2180:29 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2180:56:2182:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2180:56:2182:9 | { ... } | TRef | main.rs:2176:10:2176:10 | T | +| main.rs:2181:13:2181:29 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2181:14:2181:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2181:14:2181:17 | self | TRef | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2181:14:2181:17 | self | TRef.T | main.rs:2176:10:2176:10 | T | +| main.rs:2181:24:2181:28 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2185:22:2185:26 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2185:22:2185:26 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2185:22:2185:26 | slice | TRef.TSlice | main.rs:2152:5:2153:13 | S | +| main.rs:2185:35:2187:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2186:17:2186:21 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2186:17:2186:21 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2186:17:2186:21 | slice | TRef.TSlice | main.rs:2152:5:2153:13 | S | +| main.rs:2189:37:2189:37 | a | | main.rs:2189:20:2189:34 | T | +| main.rs:2189:43:2189:43 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2193:9:2193:9 | a | | main.rs:2189:20:2189:34 | T | +| main.rs:2193:11:2193:11 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2196:16:2207:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2197:17:2197:19 | vec | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2197:23:2197:34 | ...::new(...) | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2198:9:2198:11 | vec | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2199:9:2199:11 | vec | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2201:13:2201:14 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2201:13:2201:14 | xs | TArray | main.rs:2152:5:2153:13 | S | +| main.rs:2201:26:2201:28 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2202:17:2202:18 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2202:17:2202:18 | xs | TArray | main.rs:2152:5:2153:13 | S | +| main.rs:2204:29:2204:31 | vec | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2206:9:2206:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2206:23:2206:25 | &xs | | {EXTERNAL LOCATION} | & | +| main.rs:2206:24:2206:25 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2206:24:2206:25 | xs | TArray | main.rs:2152:5:2153:13 | S | +| main.rs:2211:16:2213:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2212:25:2212:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | +| main.rs:2212:25:2212:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2212:25:2212:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2212:38:2212:45 | "World!" | | {EXTERNAL LOCATION} | & | +| main.rs:2212:38:2212:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2221:19:2221:22 | SelfParam | | main.rs:2217:5:2222:5 | Self [trait MyAdd] | +| main.rs:2221:25:2221:27 | rhs | | main.rs:2217:17:2217:26 | Rhs | +| main.rs:2228:19:2228:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:25:2228:29 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:45:2230:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2229:13:2229:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2237:19:2237:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2237:25:2237:29 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2237:25:2237:29 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2237:46:2239:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2238:14:2238:18 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2238:14:2238:18 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2246:19:2246:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2246:25:2246:29 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2246:46:2252:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2247:16:2247:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2261:19:2261:22 | SelfParam | | main.rs:2255:5:2255:19 | S | +| main.rs:2261:19:2261:22 | SelfParam | T | main.rs:2257:10:2257:17 | T | +| main.rs:2261:25:2261:29 | other | | main.rs:2255:5:2255:19 | S | +| main.rs:2261:25:2261:29 | other | T | main.rs:2257:10:2257:17 | T | +| main.rs:2261:54:2263:9 | { ... } | | main.rs:2255:5:2255:19 | S | +| main.rs:2262:16:2262:19 | self | | main.rs:2255:5:2255:19 | S | +| main.rs:2262:16:2262:19 | self | T | main.rs:2257:10:2257:17 | T | +| main.rs:2262:31:2262:35 | other | | main.rs:2255:5:2255:19 | S | +| main.rs:2262:31:2262:35 | other | T | main.rs:2257:10:2257:17 | T | +| main.rs:2270:19:2270:22 | SelfParam | | main.rs:2255:5:2255:19 | S | +| main.rs:2270:19:2270:22 | SelfParam | T | main.rs:2266:10:2266:17 | T | +| main.rs:2270:25:2270:29 | other | | main.rs:2266:10:2266:17 | T | +| main.rs:2270:51:2272:9 | { ... } | | main.rs:2255:5:2255:19 | S | +| main.rs:2271:16:2271:19 | self | | main.rs:2255:5:2255:19 | S | +| main.rs:2271:16:2271:19 | self | T | main.rs:2266:10:2266:17 | T | +| main.rs:2271:31:2271:35 | other | | main.rs:2266:10:2266:17 | T | +| main.rs:2282:19:2282:22 | SelfParam | | main.rs:2255:5:2255:19 | S | +| main.rs:2282:19:2282:22 | SelfParam | T | main.rs:2275:14:2275:14 | T | +| main.rs:2282:25:2282:29 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2282:25:2282:29 | other | TRef | main.rs:2275:14:2275:14 | T | +| main.rs:2282:55:2284:9 | { ... } | | main.rs:2255:5:2255:19 | S | +| main.rs:2283:16:2283:19 | self | | main.rs:2255:5:2255:19 | S | +| main.rs:2283:16:2283:19 | self | T | main.rs:2275:14:2275:14 | T | +| main.rs:2283:31:2283:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2283:31:2283:35 | other | TRef | main.rs:2275:14:2275:14 | T | +| main.rs:2289:20:2289:24 | value | | main.rs:2287:18:2287:18 | T | +| main.rs:2294:20:2294:24 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2294:40:2296:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2295:13:2295:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2301:20:2301:24 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2301:41:2307:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2302:16:2302:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2312:21:2312:25 | value | | main.rs:2310:19:2310:19 | T | +| main.rs:2312:31:2312:31 | x | | main.rs:2310:5:2313:5 | Self [trait MyFrom2] | +| main.rs:2317:21:2317:25 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2317:33:2317:33 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2317:48:2319:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2318:13:2318:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2324:21:2324:25 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2324:34:2324:34 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2324:49:2330:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2325:16:2325:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2335:15:2335:15 | x | | main.rs:2333:5:2339:5 | Self [trait MySelfTrait] | +| main.rs:2338:15:2338:15 | x | | main.rs:2333:5:2339:5 | Self [trait MySelfTrait] | +| main.rs:2343:15:2343:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2343:31:2345:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2344:13:2344:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2348:15:2348:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2348:32:2350:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2349:13:2349:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2355:15:2355:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2355:31:2357:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2360:15:2360:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2360:32:2362:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:2361:13:2361:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2365:16:2390:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2366:13:2366:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2367:9:2367:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2367:18:2367:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2368:9:2368:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2368:18:2368:22 | &5i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2368:19:2368:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2369:9:2369:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2369:18:2369:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2371:11:2371:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2371:26:2371:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2372:11:2372:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2372:24:2372:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2373:11:2373:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2373:24:2373:28 | &3i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2373:25:2373:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2375:13:2375:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2375:17:2375:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2375:30:2375:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2376:13:2376:13 | y | | {EXTERNAL LOCATION} | i64 | +| main.rs:2376:17:2376:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2376:30:2376:33 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2377:13:2377:13 | z | | {EXTERNAL LOCATION} | i64 | +| main.rs:2377:38:2377:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2378:9:2378:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2378:23:2378:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2378:30:2378:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2379:9:2379:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2379:23:2379:26 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2379:29:2379:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2380:9:2380:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2380:27:2380:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2380:34:2380:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2382:9:2382:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2382:17:2382:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2383:9:2383:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2383:17:2383:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2384:9:2384:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2384:18:2384:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2385:9:2385:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2385:18:2385:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2386:9:2386:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2386:25:2386:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2387:25:2387:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2388:9:2388:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2388:25:2388:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2389:25:2389:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2397:26:2399:9 | { ... } | | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2398:13:2398:25 | MyCallable {...} | | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2401:17:2401:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2401:17:2401:21 | SelfParam | TRef | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2401:31:2403:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2406:16:2513:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2409:9:2409:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2409:18:2409:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2409:28:2409:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2410:9:2410:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2410:18:2410:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2410:43:2410:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2411:9:2411:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2411:18:2411:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2411:40:2411:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2413:13:2413:17 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2413:21:2413:31 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2413:22:2413:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2414:9:2414:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2414:18:2414:22 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2414:24:2414:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2416:13:2416:17 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2416:21:2416:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2416:22:2416:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2417:9:2417:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2417:18:2417:22 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2417:24:2417:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2419:13:2419:17 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2419:13:2419:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2419:31:2419:39 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2420:9:2420:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2420:18:2420:22 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2420:18:2420:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2420:24:2420:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2422:13:2422:17 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2422:13:2422:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2422:31:2422:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2423:9:2423:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2423:18:2423:22 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2423:18:2423:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2423:24:2423:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2425:17:2425:24 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2425:28:2425:48 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2425:29:2425:33 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2425:29:2425:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2425:36:2425:40 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2425:36:2425:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2425:43:2425:47 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2425:43:2425:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2426:9:2426:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2426:18:2426:26 | &strings1 | | {EXTERNAL LOCATION} | & | +| main.rs:2426:19:2426:26 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2426:28:2426:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2427:9:2427:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2427:18:2427:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | +| main.rs:2427:23:2427:30 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2427:32:2427:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2428:9:2428:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2428:18:2428:25 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2428:27:2428:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2430:13:2430:20 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2431:9:2435:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2432:13:2432:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2432:26:2432:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2432:26:2432:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2433:13:2433:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2433:26:2433:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2433:26:2433:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2434:13:2434:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2434:26:2434:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2434:26:2434:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2436:9:2436:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2436:18:2436:25 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2436:27:2436:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2438:13:2438:20 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2439:9:2443:9 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2439:10:2443:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2440:13:2440:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2440:26:2440:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2440:26:2440:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2441:13:2441:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2441:26:2441:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2441:26:2441:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2442:13:2442:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2442:26:2442:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2442:26:2442:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2444:9:2444:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2444:18:2444:25 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2444:27:2444:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2446:13:2446:21 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2446:25:2446:81 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2446:26:2446:42 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2446:45:2446:61 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2446:64:2446:80 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2447:9:2451:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2448:12:2448:20 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2449:9:2451:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2455:9:2455:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2455:18:2455:22 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2455:24:2455:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2456:9:2456:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2456:18:2456:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2456:19:2456:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2456:19:2456:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2456:28:2456:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2457:13:2457:17 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2457:21:2457:25 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2458:9:2458:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2458:18:2458:22 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2458:24:2458:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2459:13:2459:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2459:26:2459:27 | .. | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2460:9:2460:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2460:18:2460:48 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2460:19:2460:36 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2460:20:2460:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2460:26:2460:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2460:32:2460:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2460:38:2460:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2460:50:2460:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2462:13:2462:18 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2463:9:2466:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | +| main.rs:2464:20:2464:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2465:18:2465:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | | main.rs:2467:9:2467:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2467:18:2467:23 | range1 | | {EXTERNAL LOCATION} | Range | | main.rs:2467:25:2467:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2469:13:2469:17 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2469:21:2469:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2469:31:2469:42 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2469:32:2469:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2470:9:2470:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2470:18:2470:22 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2470:24:2470:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2472:13:2472:17 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2472:13:2472:17 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2472:13:2472:17 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2472:13:2472:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2472:32:2472:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2472:33:2472:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | -| main.rs:2473:9:2473:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2473:18:2473:22 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2473:18:2473:22 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2473:18:2473:22 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2473:18:2473:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2473:24:2473:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2475:17:2475:21 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2475:17:2475:21 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2475:25:2475:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2475:25:2475:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2476:9:2476:13 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2476:9:2476:13 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2476:20:2476:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2477:9:2477:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2477:18:2477:22 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2477:18:2477:22 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2477:24:2477:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2481:17:2484:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2482:13:2483:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2482:29:2483:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2486:17:2486:20 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2486:17:2486:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2486:24:2486:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2486:24:2486:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2487:9:2487:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2487:9:2487:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2487:24:2487:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2487:24:2487:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2487:33:2487:37 | "one" | | {EXTERNAL LOCATION} | & | -| main.rs:2487:33:2487:37 | "one" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2488:9:2488:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2488:9:2488:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2488:24:2488:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2488:24:2488:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2488:33:2488:37 | "two" | | {EXTERNAL LOCATION} | & | -| main.rs:2488:33:2488:37 | "two" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2489:9:2489:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2489:20:2489:23 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2489:20:2489:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2489:32:2489:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2490:9:2490:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2490:22:2490:25 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2490:22:2490:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2490:36:2490:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2491:9:2491:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2491:13:2491:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2491:29:2491:32 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2491:29:2491:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2491:41:2491:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2492:9:2492:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2492:13:2492:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2492:29:2492:33 | &map1 | | {EXTERNAL LOCATION} | & | -| main.rs:2492:30:2492:33 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2492:30:2492:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2492:35:2492:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2496:17:2496:17 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2498:17:2501:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2498:23:2498:23 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2499:9:2501:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2500:13:2500:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2512:40:2514:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2512:40:2514:9 | { ... } | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2512:40:2514:9 | { ... } | T.T | main.rs:2511:10:2511:19 | T | -| main.rs:2516:30:2518:9 | { ... } | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2516:30:2518:9 | { ... } | T | main.rs:2511:10:2511:19 | T | -| main.rs:2520:19:2520:22 | SelfParam | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2520:19:2520:22 | SelfParam | T | main.rs:2511:10:2511:19 | T | -| main.rs:2520:33:2522:9 | { ... } | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2520:33:2522:9 | { ... } | T | main.rs:2511:10:2511:19 | T | -| main.rs:2521:13:2521:16 | self | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2521:13:2521:16 | self | T | main.rs:2511:10:2511:19 | T | -| main.rs:2533:15:2533:15 | x | | main.rs:2533:12:2533:12 | T | -| main.rs:2533:26:2535:5 | { ... } | | main.rs:2533:12:2533:12 | T | -| main.rs:2534:9:2534:9 | x | | main.rs:2533:12:2533:12 | T | -| main.rs:2537:16:2559:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2538:13:2538:14 | x1 | | {EXTERNAL LOCATION} | Option | -| main.rs:2538:13:2538:14 | x1 | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2538:13:2538:14 | x1 | T.T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2538:34:2538:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2538:34:2538:48 | ...::assoc_fun(...) | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2539:13:2539:14 | x2 | | {EXTERNAL LOCATION} | Option | -| main.rs:2539:13:2539:14 | x2 | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2539:13:2539:14 | x2 | T.T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2539:18:2539:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2539:18:2539:38 | ...::assoc_fun(...) | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2539:18:2539:38 | ...::assoc_fun(...) | T.T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2540:13:2540:14 | x3 | | {EXTERNAL LOCATION} | Option | -| main.rs:2540:13:2540:14 | x3 | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2540:13:2540:14 | x3 | T.T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2540:18:2540:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2540:18:2540:32 | ...::assoc_fun(...) | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2540:18:2540:32 | ...::assoc_fun(...) | T.T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2541:13:2541:14 | x4 | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2541:13:2541:14 | x4 | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2541:18:2541:48 | ...::method(...) | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2541:18:2541:48 | ...::method(...) | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2541:35:2541:47 | ...::default(...) | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2542:13:2542:14 | x5 | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2542:13:2542:14 | x5 | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2542:18:2542:42 | ...::method(...) | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2542:18:2542:42 | ...::method(...) | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2542:29:2542:41 | ...::default(...) | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2546:21:2546:33 | ...::default(...) | | main.rs:2508:5:2509:14 | S2 | -| main.rs:2547:13:2547:15 | x10 | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2547:13:2547:15 | x10 | T5 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2547:19:2550:9 | S5::<...> {...} | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2547:19:2550:9 | S5::<...> {...} | T5 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2551:13:2551:15 | x11 | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2551:19:2551:34 | S5 {...} | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2552:13:2552:15 | x12 | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2552:19:2552:33 | S5 {...} | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2553:13:2553:15 | x13 | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2553:19:2556:9 | S5 {...} | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2555:20:2555:32 | ...::default(...) | | main.rs:2508:5:2509:14 | S2 | -| main.rs:2557:13:2557:15 | x14 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2557:19:2557:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2558:13:2558:15 | x15 | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2558:13:2558:15 | x15 | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2558:19:2558:37 | ...::default(...) | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2558:19:2558:37 | ...::default(...) | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2567:35:2569:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2567:35:2569:9 | { ... } | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2567:35:2569:9 | { ... } | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2568:13:2568:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2568:14:2568:18 | S1 {...} | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2568:21:2568:25 | S1 {...} | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2570:16:2570:19 | SelfParam | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2570:22:2570:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2573:16:2607:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2574:13:2574:13 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2574:13:2574:13 | a | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2574:13:2574:13 | a | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2574:17:2574:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2574:17:2574:30 | ...::get_pair(...) | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2574:17:2574:30 | ...::get_pair(...) | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2575:17:2575:17 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2575:17:2575:17 | b | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2575:17:2575:17 | b | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2575:21:2575:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2575:21:2575:34 | ...::get_pair(...) | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2575:21:2575:34 | ...::get_pair(...) | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2576:13:2576:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2576:22:2576:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2576:22:2576:35 | ...::get_pair(...) | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2576:22:2576:35 | ...::get_pair(...) | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2577:13:2577:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2577:26:2577:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2577:26:2577:39 | ...::get_pair(...) | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2577:26:2577:39 | ...::get_pair(...) | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2578:13:2578:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2578:30:2578:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2578:30:2578:43 | ...::get_pair(...) | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2578:30:2578:43 | ...::get_pair(...) | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2580:9:2580:9 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2580:9:2580:9 | a | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2580:9:2580:9 | a | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2581:9:2581:9 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2581:9:2581:9 | b | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2581:9:2581:9 | b | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2594:13:2594:16 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2594:20:2594:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2595:13:2595:13 | i | | {EXTERNAL LOCATION} | i64 | -| main.rs:2595:22:2595:25 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2596:13:2596:13 | j | | {EXTERNAL LOCATION} | bool | -| main.rs:2596:23:2596:26 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2598:20:2598:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2600:13:2600:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2600:30:2600:41 | "unexpected" | | {EXTERNAL LOCATION} | & | -| main.rs:2600:30:2600:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2600:30:2600:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2600:30:2600:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2601:25:2601:34 | "expected" | | {EXTERNAL LOCATION} | & | -| main.rs:2601:25:2601:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2601:25:2601:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2601:25:2601:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2605:13:2605:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2605:17:2605:31 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2605:18:2605:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2605:18:2605:31 | ...::get_pair(...) | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2605:18:2605:31 | ...::get_pair(...) | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2606:9:2606:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2612:27:2634:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2613:13:2613:23 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2613:13:2613:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2613:27:2613:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2613:27:2613:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2613:36:2613:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2616:15:2616:25 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2616:15:2616:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2617:24:2619:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2618:26:2618:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2618:26:2618:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2618:26:2618:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2618:26:2618:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2620:22:2623:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2622:26:2622:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2622:26:2622:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2622:26:2622:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2622:26:2622:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2627:13:2627:22 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2627:13:2627:22 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2627:26:2627:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2627:26:2627:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2627:35:2627:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2627:35:2627:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2627:44:2627:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2628:15:2628:24 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2628:15:2628:24 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2629:26:2632:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2631:26:2631:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2631:26:2631:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2631:26:2631:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2631:26:2631:59 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2643:36:2645:9 | { ... } | | main.rs:2640:5:2640:22 | Path | -| main.rs:2644:13:2644:19 | Path {...} | | main.rs:2640:5:2640:22 | Path | -| main.rs:2647:29:2647:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2647:29:2647:33 | SelfParam | TRef | main.rs:2640:5:2640:22 | Path | -| main.rs:2647:59:2649:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:2647:59:2649:9 | { ... } | E | {EXTERNAL LOCATION} | () | -| main.rs:2647:59:2649:9 | { ... } | T | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2648:16:2648:29 | ...::new(...) | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2655:39:2657:9 | { ... } | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2656:13:2656:22 | PathBuf {...} | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2665:18:2665:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2665:18:2665:22 | SelfParam | TRef | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2665:34:2669:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2665:34:2669:9 | { ... } | TRef | main.rs:2640:5:2640:22 | Path | -| main.rs:2667:33:2667:43 | ...::new(...) | | main.rs:2640:5:2640:22 | Path | -| main.rs:2668:13:2668:17 | &path | | {EXTERNAL LOCATION} | & | -| main.rs:2672:16:2680:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2673:13:2673:17 | path1 | | main.rs:2640:5:2640:22 | Path | -| main.rs:2673:21:2673:31 | ...::new(...) | | main.rs:2640:5:2640:22 | Path | -| main.rs:2674:21:2674:25 | path1 | | main.rs:2640:5:2640:22 | Path | -| main.rs:2677:13:2677:20 | pathbuf1 | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2677:24:2677:37 | ...::new(...) | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2678:24:2678:31 | pathbuf1 | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2685:14:2685:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2685:14:2685:18 | SelfParam | TRef | main.rs:2684:5:2686:5 | Self [trait MyTrait] | -| main.rs:2692:14:2692:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2692:14:2692:18 | SelfParam | TRef | main.rs:2688:5:2689:19 | S | -| main.rs:2692:14:2692:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2692:28:2694:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2693:13:2693:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2693:13:2693:16 | self | TRef | main.rs:2688:5:2689:19 | S | -| main.rs:2693:13:2693:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2698:14:2698:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2698:14:2698:18 | SelfParam | TRef | main.rs:2688:5:2689:19 | S | -| main.rs:2698:14:2698:18 | SelfParam | TRef.T | main.rs:2688:5:2689:19 | S | -| main.rs:2698:14:2698:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2698:28:2700:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2699:13:2699:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2699:13:2699:16 | self | TRef | main.rs:2688:5:2689:19 | S | -| main.rs:2699:13:2699:16 | self | TRef.T | main.rs:2688:5:2689:19 | S | -| main.rs:2699:13:2699:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2704:15:2704:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2704:15:2704:19 | SelfParam | TRef | main.rs:2688:5:2689:19 | S | -| main.rs:2704:15:2704:19 | SelfParam | TRef.T | main.rs:2703:10:2703:16 | T | -| main.rs:2704:33:2706:9 | { ... } | | main.rs:2688:5:2689:19 | S | -| main.rs:2704:33:2706:9 | { ... } | T | main.rs:2688:5:2689:19 | S | -| main.rs:2704:33:2706:9 | { ... } | T.T | main.rs:2703:10:2703:16 | T | -| main.rs:2705:17:2705:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2705:17:2705:20 | self | TRef | main.rs:2688:5:2689:19 | S | -| main.rs:2705:17:2705:20 | self | TRef.T | main.rs:2703:10:2703:16 | T | -| main.rs:2709:14:2709:14 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2709:48:2726:5 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2709:48:2726:5 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2709:48:2726:5 | { ... } | T | main.rs:2684:5:2686:5 | dyn MyTrait | -| main.rs:2709:48:2726:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2710:20:2710:20 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2720:12:2720:12 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2722:13:2722:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2722:13:2722:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2724:13:2724:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2724:13:2724:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2730:22:2734:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2731:18:2731:18 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2731:33:2733:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2732:13:2732:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2739:11:2739:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2739:30:2747:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2742:13:2744:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2742:16:2742:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2742:21:2744:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2750:20:2757:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2755:18:2755:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2755:18:2755:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2755:18:2755:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2755:18:2755:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2759:20:2761:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2764:11:2764:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2764:30:2772:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2765:13:2765:13 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2765:17:2769:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2766:13:2768:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2766:16:2766:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2766:21:2768:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2770:18:2770:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2770:18:2770:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2770:18:2770:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2770:18:2770:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2770:29:2770:29 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2776:16:2823:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2778:13:2778:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2778:13:2778:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2782:26:2782:28 | opt | | {EXTERNAL LOCATION} | Option | -| main.rs:2782:26:2782:28 | opt | T | main.rs:2782:23:2782:23 | T | -| main.rs:2782:42:2782:42 | x | | main.rs:2782:23:2782:23 | T | -| main.rs:2782:48:2782:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2785:9:2785:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2792:13:2792:13 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2792:17:2792:39 | ...::A {...} | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2793:13:2793:13 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2793:13:2793:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2793:13:2793:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2793:40:2793:40 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2794:13:2794:13 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2794:13:2794:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2794:17:2794:52 | ...::A {...} | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2794:17:2794:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2796:13:2796:13 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2796:13:2796:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2796:17:2798:9 | ...::B::<...> {...} | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2796:17:2798:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2797:20:2797:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2800:29:2800:29 | e | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2800:29:2800:29 | e | T1 | main.rs:2800:26:2800:26 | T | -| main.rs:2800:29:2800:29 | e | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2800:53:2800:53 | x | | main.rs:2800:26:2800:26 | T | -| main.rs:2800:59:2800:60 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2803:13:2803:13 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2803:17:2805:9 | ...::B {...} | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2804:20:2804:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2806:9:2806:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2806:23:2806:23 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2809:13:2809:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2809:13:2809:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2809:13:2809:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2813:29:2813:31 | res | | {EXTERNAL LOCATION} | Result | -| main.rs:2813:29:2813:31 | res | E | main.rs:2813:26:2813:26 | E | -| main.rs:2813:29:2813:31 | res | T | main.rs:2813:23:2813:23 | T | -| main.rs:2813:48:2813:48 | x | | main.rs:2813:26:2813:26 | E | -| main.rs:2813:54:2813:55 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2816:9:2816:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2816:23:2816:27 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:2818:17:2818:17 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2818:17:2818:17 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2818:21:2818:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2818:21:2818:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2819:9:2819:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2819:9:2819:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2822:9:2822:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2822:9:2822:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2829:14:2829:17 | SelfParam | | main.rs:2827:5:2835:5 | Self [trait MyTrait] | -| main.rs:2832:14:2832:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2832:14:2832:18 | SelfParam | TRef | main.rs:2827:5:2835:5 | Self [trait MyTrait] | -| main.rs:2832:21:2832:25 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2832:21:2832:25 | other | TRef | main.rs:2827:5:2835:5 | Self [trait MyTrait] | -| main.rs:2832:44:2834:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2832:44:2834:9 | { ... } | TRef | main.rs:2827:5:2835:5 | Self [trait MyTrait] | -| main.rs:2833:13:2833:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2833:13:2833:16 | self | TRef | main.rs:2827:5:2835:5 | Self [trait MyTrait] | -| main.rs:2839:14:2839:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | -| main.rs:2839:28:2841:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2840:13:2840:16 | self | | {EXTERNAL LOCATION} | i32 | -| main.rs:2846:14:2846:17 | SelfParam | | {EXTERNAL LOCATION} | usize | -| main.rs:2846:28:2848:9 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2847:13:2847:16 | self | | {EXTERNAL LOCATION} | usize | -| main.rs:2853:14:2853:17 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2853:14:2853:17 | SelfParam | TRef | main.rs:2851:10:2851:10 | T | -| main.rs:2853:28:2855:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2853:28:2855:9 | { ... } | TRef | main.rs:2851:10:2851:10 | T | -| main.rs:2854:13:2854:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2854:13:2854:16 | self | TRef | main.rs:2851:10:2851:10 | T | -| main.rs:2858:25:2862:5 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2864:12:2872:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2865:13:2865:13 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2866:13:2866:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2866:17:2866:18 | &1 | | {EXTERNAL LOCATION} | & | -| main.rs:2867:17:2867:17 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2867:21:2867:21 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2870:13:2870:13 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2871:23:2871:23 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2881:11:2916:1 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2882:5:2882:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2883:5:2883:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2884:5:2884:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2884:20:2884:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2884:41:2884:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2885:5:2885:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2886:5:2886:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2887:5:2887:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2888:5:2888:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2889:5:2889:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2890:5:2890:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2891:5:2891:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2892:5:2892:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2893:5:2893:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2894:5:2894:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2895:5:2895:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2896:5:2896:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2897:5:2897:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2898:5:2898:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2899:5:2899:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2900:5:2900:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2900:5:2900:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2901:5:2901:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2902:5:2902:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2903:5:2903:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2904:5:2904:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2905:5:2905:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2906:5:2906:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2907:5:2907:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2908:5:2908:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2909:5:2909:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2910:5:2910:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2911:5:2911:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2912:5:2912:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2913:5:2913:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2914:5:2914:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2914:5:2914:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2914:5:2914:20 | ...::f(...) | T | main.rs:2684:5:2686:5 | dyn MyTrait | -| main.rs:2914:5:2914:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2914:16:2914:19 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2915:5:2915:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2472:9:2472:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2472:24:2472:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2474:13:2474:18 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2474:13:2474:18 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2474:13:2474:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2474:32:2474:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2474:33:2474:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2475:9:2475:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2475:18:2475:23 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2475:18:2475:23 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2475:18:2475:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2475:25:2475:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2477:22:2477:33 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2477:23:2477:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2478:9:2478:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2478:25:2478:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2480:13:2480:17 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2480:21:2480:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2480:31:2480:42 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2480:32:2480:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2481:9:2481:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2481:18:2481:22 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2481:24:2481:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2483:13:2483:17 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2483:13:2483:17 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2483:13:2483:17 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2483:13:2483:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2483:32:2483:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2483:33:2483:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | +| main.rs:2484:9:2484:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2484:18:2484:22 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2484:18:2484:22 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2484:18:2484:22 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2484:18:2484:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2484:24:2484:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2486:17:2486:21 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2486:17:2486:21 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2486:25:2486:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2486:25:2486:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2487:9:2487:13 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2487:9:2487:13 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2487:20:2487:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2488:9:2488:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2488:18:2488:22 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2488:18:2488:22 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2488:24:2488:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2492:17:2495:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2493:13:2494:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2493:29:2494:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2497:17:2497:20 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2497:17:2497:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2497:24:2497:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2497:24:2497:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2498:9:2498:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2498:9:2498:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2498:24:2498:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2498:24:2498:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2498:33:2498:37 | "one" | | {EXTERNAL LOCATION} | & | +| main.rs:2498:33:2498:37 | "one" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2499:9:2499:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2499:9:2499:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2499:24:2499:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2499:24:2499:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2499:33:2499:37 | "two" | | {EXTERNAL LOCATION} | & | +| main.rs:2499:33:2499:37 | "two" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2500:9:2500:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2500:20:2500:23 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2500:20:2500:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2500:32:2500:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2501:9:2501:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2501:22:2501:25 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2501:22:2501:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2501:36:2501:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2502:9:2502:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2502:13:2502:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2502:29:2502:32 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2502:29:2502:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2502:41:2502:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2503:9:2503:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2503:13:2503:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2503:29:2503:33 | &map1 | | {EXTERNAL LOCATION} | & | +| main.rs:2503:30:2503:33 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2503:30:2503:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2503:35:2503:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2507:17:2507:17 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2509:17:2512:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2509:23:2509:23 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2510:9:2512:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2511:13:2511:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2523:40:2525:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:2523:40:2525:9 | { ... } | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2523:40:2525:9 | { ... } | T.T | main.rs:2522:10:2522:19 | T | +| main.rs:2527:30:2529:9 | { ... } | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2527:30:2529:9 | { ... } | T | main.rs:2522:10:2522:19 | T | +| main.rs:2531:19:2531:22 | SelfParam | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2531:19:2531:22 | SelfParam | T | main.rs:2522:10:2522:19 | T | +| main.rs:2531:33:2533:9 | { ... } | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2531:33:2533:9 | { ... } | T | main.rs:2522:10:2522:19 | T | +| main.rs:2532:13:2532:16 | self | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2532:13:2532:16 | self | T | main.rs:2522:10:2522:19 | T | +| main.rs:2544:15:2544:15 | x | | main.rs:2544:12:2544:12 | T | +| main.rs:2544:26:2546:5 | { ... } | | main.rs:2544:12:2544:12 | T | +| main.rs:2545:9:2545:9 | x | | main.rs:2544:12:2544:12 | T | +| main.rs:2548:16:2570:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2549:13:2549:14 | x1 | | {EXTERNAL LOCATION} | Option | +| main.rs:2549:13:2549:14 | x1 | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2549:13:2549:14 | x1 | T.T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2550:13:2550:14 | x2 | | {EXTERNAL LOCATION} | Option | +| main.rs:2550:13:2550:14 | x2 | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2550:13:2550:14 | x2 | T.T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2551:13:2551:14 | x3 | | {EXTERNAL LOCATION} | Option | +| main.rs:2551:13:2551:14 | x3 | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2551:13:2551:14 | x3 | T.T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2552:13:2552:14 | x4 | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2552:13:2552:14 | x4 | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2552:18:2552:48 | ...::method(...) | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2552:18:2552:48 | ...::method(...) | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2552:35:2552:47 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2553:13:2553:14 | x5 | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2553:13:2553:14 | x5 | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2553:18:2553:42 | ...::method(...) | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2553:18:2553:42 | ...::method(...) | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2553:29:2553:41 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2557:21:2557:33 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | +| main.rs:2558:13:2558:15 | x10 | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2558:13:2558:15 | x10 | T5 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2558:19:2561:9 | S5::<...> {...} | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2558:19:2561:9 | S5::<...> {...} | T5 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2562:13:2562:15 | x11 | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2562:19:2562:34 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2563:13:2563:15 | x12 | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2563:19:2563:33 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2564:13:2564:15 | x13 | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2564:19:2567:9 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2566:20:2566:32 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | +| main.rs:2568:13:2568:15 | x14 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2568:19:2568:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2569:13:2569:15 | x15 | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2569:13:2569:15 | x15 | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2569:19:2569:37 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2569:19:2569:37 | ...::default(...) | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2578:35:2580:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2578:35:2580:9 | { ... } | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2578:35:2580:9 | { ... } | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2579:13:2579:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2579:14:2579:18 | S1 {...} | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2579:21:2579:25 | S1 {...} | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2581:16:2581:19 | SelfParam | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2581:22:2581:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2584:16:2618:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2585:13:2585:13 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2585:13:2585:13 | a | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2585:13:2585:13 | a | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2585:17:2585:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2585:17:2585:30 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2585:17:2585:30 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2586:17:2586:17 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2586:17:2586:17 | b | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2586:17:2586:17 | b | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2586:21:2586:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2586:21:2586:34 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2586:21:2586:34 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2587:13:2587:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2587:22:2587:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2587:22:2587:35 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2587:22:2587:35 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2588:13:2588:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2588:26:2588:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2588:26:2588:39 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2588:26:2588:39 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2589:13:2589:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2589:30:2589:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2589:30:2589:43 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2589:30:2589:43 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2591:9:2591:9 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2591:9:2591:9 | a | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2591:9:2591:9 | a | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2592:9:2592:9 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2592:9:2592:9 | b | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2592:9:2592:9 | b | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2605:13:2605:16 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2605:20:2605:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2606:13:2606:13 | i | | {EXTERNAL LOCATION} | i64 | +| main.rs:2606:22:2606:25 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2607:13:2607:13 | j | | {EXTERNAL LOCATION} | bool | +| main.rs:2607:23:2607:26 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2609:20:2609:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2611:13:2611:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2611:30:2611:41 | "unexpected" | | {EXTERNAL LOCATION} | & | +| main.rs:2611:30:2611:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2611:30:2611:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2611:30:2611:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2612:25:2612:34 | "expected" | | {EXTERNAL LOCATION} | & | +| main.rs:2612:25:2612:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2612:25:2612:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2612:25:2612:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2616:13:2616:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2616:17:2616:31 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2616:18:2616:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2616:18:2616:31 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2616:18:2616:31 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2617:9:2617:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2623:27:2645:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2624:13:2624:23 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2624:13:2624:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2624:27:2624:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2624:27:2624:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2624:36:2624:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2627:15:2627:25 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2627:15:2627:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2628:24:2630:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2629:26:2629:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2629:26:2629:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2629:26:2629:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2629:26:2629:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2631:22:2634:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2633:26:2633:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2633:26:2633:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2633:26:2633:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2633:26:2633:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2638:13:2638:22 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2638:13:2638:22 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2638:26:2638:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2638:26:2638:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2638:35:2638:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2638:35:2638:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2638:44:2638:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2639:15:2639:24 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2639:15:2639:24 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2640:26:2643:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2642:26:2642:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2642:26:2642:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2642:26:2642:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2642:26:2642:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2654:36:2656:9 | { ... } | | main.rs:2651:5:2651:22 | Path | +| main.rs:2655:13:2655:19 | Path {...} | | main.rs:2651:5:2651:22 | Path | +| main.rs:2658:29:2658:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2658:29:2658:33 | SelfParam | TRef | main.rs:2651:5:2651:22 | Path | +| main.rs:2658:59:2660:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:2658:59:2660:9 | { ... } | E | {EXTERNAL LOCATION} | () | +| main.rs:2658:59:2660:9 | { ... } | T | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2659:16:2659:29 | ...::new(...) | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2666:39:2668:9 | { ... } | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2667:13:2667:22 | PathBuf {...} | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2676:18:2676:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2676:18:2676:22 | SelfParam | TRef | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2676:34:2680:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2676:34:2680:9 | { ... } | TRef | main.rs:2651:5:2651:22 | Path | +| main.rs:2678:33:2678:43 | ...::new(...) | | main.rs:2651:5:2651:22 | Path | +| main.rs:2679:13:2679:17 | &path | | {EXTERNAL LOCATION} | & | +| main.rs:2683:16:2691:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2684:13:2684:17 | path1 | | main.rs:2651:5:2651:22 | Path | +| main.rs:2684:21:2684:31 | ...::new(...) | | main.rs:2651:5:2651:22 | Path | +| main.rs:2685:21:2685:25 | path1 | | main.rs:2651:5:2651:22 | Path | +| main.rs:2688:13:2688:20 | pathbuf1 | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2688:24:2688:37 | ...::new(...) | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2689:24:2689:31 | pathbuf1 | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2696:14:2696:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2696:14:2696:18 | SelfParam | TRef | main.rs:2695:5:2697:5 | Self [trait MyTrait] | +| main.rs:2703:14:2703:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2703:14:2703:18 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | +| main.rs:2703:14:2703:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2703:28:2705:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2704:13:2704:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2704:13:2704:16 | self | TRef | main.rs:2699:5:2700:19 | S | +| main.rs:2704:13:2704:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2709:14:2709:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2709:14:2709:18 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | +| main.rs:2709:14:2709:18 | SelfParam | TRef.T | main.rs:2699:5:2700:19 | S | +| main.rs:2709:14:2709:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2709:28:2711:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2710:13:2710:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2710:13:2710:16 | self | TRef | main.rs:2699:5:2700:19 | S | +| main.rs:2710:13:2710:16 | self | TRef.T | main.rs:2699:5:2700:19 | S | +| main.rs:2710:13:2710:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2715:15:2715:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2715:15:2715:19 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | +| main.rs:2715:15:2715:19 | SelfParam | TRef.T | main.rs:2714:10:2714:16 | T | +| main.rs:2715:33:2717:9 | { ... } | | main.rs:2699:5:2700:19 | S | +| main.rs:2715:33:2717:9 | { ... } | T | main.rs:2699:5:2700:19 | S | +| main.rs:2715:33:2717:9 | { ... } | T.T | main.rs:2714:10:2714:16 | T | +| main.rs:2716:17:2716:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2716:17:2716:20 | self | TRef | main.rs:2699:5:2700:19 | S | +| main.rs:2716:17:2716:20 | self | TRef.T | main.rs:2714:10:2714:16 | T | +| main.rs:2720:14:2720:14 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2720:48:2737:5 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2720:48:2737:5 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2720:48:2737:5 | { ... } | T | main.rs:2695:5:2697:5 | dyn MyTrait | +| main.rs:2720:48:2737:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2721:20:2721:20 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2731:12:2731:12 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2733:13:2733:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2733:13:2733:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2735:13:2735:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2735:13:2735:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2741:22:2745:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2742:18:2742:18 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2742:33:2744:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2743:13:2743:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2750:11:2750:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2750:30:2758:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2753:13:2755:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2753:16:2753:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2753:21:2755:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2761:20:2768:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2766:18:2766:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2766:18:2766:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2766:18:2766:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2766:18:2766:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2770:20:2772:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2775:11:2775:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2775:30:2783:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2776:13:2776:13 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2776:17:2780:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2777:13:2779:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2777:16:2777:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2777:21:2779:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2781:18:2781:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2781:18:2781:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2781:18:2781:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2781:18:2781:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2781:29:2781:29 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2787:16:2834:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2789:13:2789:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2789:13:2789:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2793:26:2793:28 | opt | | {EXTERNAL LOCATION} | Option | +| main.rs:2793:26:2793:28 | opt | T | main.rs:2793:23:2793:23 | T | +| main.rs:2793:42:2793:42 | x | | main.rs:2793:23:2793:23 | T | +| main.rs:2793:48:2793:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2796:9:2796:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2803:13:2803:13 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2803:17:2803:39 | ...::A {...} | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2804:13:2804:13 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2804:13:2804:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2804:13:2804:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2804:40:2804:40 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2805:13:2805:13 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2805:13:2805:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2805:17:2805:52 | ...::A {...} | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2805:17:2805:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2807:13:2807:13 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2807:13:2807:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2807:17:2809:9 | ...::B::<...> {...} | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2807:17:2809:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2808:20:2808:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2811:29:2811:29 | e | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2811:29:2811:29 | e | T1 | main.rs:2811:26:2811:26 | T | +| main.rs:2811:29:2811:29 | e | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2811:53:2811:53 | x | | main.rs:2811:26:2811:26 | T | +| main.rs:2811:59:2811:60 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2814:13:2814:13 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2814:17:2816:9 | ...::B {...} | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2815:20:2815:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2817:9:2817:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2817:23:2817:23 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2820:13:2820:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2820:13:2820:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2820:13:2820:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2824:29:2824:31 | res | | {EXTERNAL LOCATION} | Result | +| main.rs:2824:29:2824:31 | res | E | main.rs:2824:26:2824:26 | E | +| main.rs:2824:29:2824:31 | res | T | main.rs:2824:23:2824:23 | T | +| main.rs:2824:48:2824:48 | x | | main.rs:2824:26:2824:26 | E | +| main.rs:2824:54:2824:55 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2827:9:2827:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2827:23:2827:27 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:2829:17:2829:17 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2829:17:2829:17 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2829:21:2829:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2829:21:2829:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2830:9:2830:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2830:9:2830:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2833:9:2833:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2833:9:2833:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2840:14:2840:17 | SelfParam | | main.rs:2838:5:2846:5 | Self [trait MyTrait] | +| main.rs:2843:14:2843:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2843:14:2843:18 | SelfParam | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | +| main.rs:2843:21:2843:25 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2843:21:2843:25 | other | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | +| main.rs:2843:44:2845:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2843:44:2845:9 | { ... } | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | +| main.rs:2844:13:2844:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2844:13:2844:16 | self | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | +| main.rs:2850:14:2850:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| main.rs:2850:28:2852:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2851:13:2851:16 | self | | {EXTERNAL LOCATION} | i32 | +| main.rs:2857:14:2857:17 | SelfParam | | {EXTERNAL LOCATION} | usize | +| main.rs:2857:28:2859:9 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2858:13:2858:16 | self | | {EXTERNAL LOCATION} | usize | +| main.rs:2864:14:2864:17 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2864:14:2864:17 | SelfParam | TRef | main.rs:2862:10:2862:10 | T | +| main.rs:2864:28:2866:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2864:28:2866:9 | { ... } | TRef | main.rs:2862:10:2862:10 | T | +| main.rs:2865:13:2865:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2865:13:2865:16 | self | TRef | main.rs:2862:10:2862:10 | T | +| main.rs:2869:25:2873:5 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2875:12:2883:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2876:13:2876:13 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2877:13:2877:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2877:17:2877:18 | &1 | | {EXTERNAL LOCATION} | & | +| main.rs:2878:17:2878:17 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2878:21:2878:21 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2881:13:2881:13 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2882:23:2882:23 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2892:11:2927:1 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2893:5:2893:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2894:5:2894:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2895:5:2895:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2895:20:2895:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2895:41:2895:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2896:5:2896:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2897:5:2897:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2898:5:2898:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2899:5:2899:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2900:5:2900:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2901:5:2901:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2902:5:2902:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2903:5:2903:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2904:5:2904:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2905:5:2905:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2906:5:2906:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2907:5:2907:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2908:5:2908:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2909:5:2909:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2910:5:2910:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2911:5:2911:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2911:5:2911:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2912:5:2912:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2913:5:2913:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2914:5:2914:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2915:5:2915:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2916:5:2916:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2917:5:2917:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2918:5:2918:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2919:5:2919:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2920:5:2920:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2921:5:2921:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2922:5:2922:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2923:5:2923:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2924:5:2924:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2925:5:2925:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2925:5:2925:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2925:5:2925:20 | ...::f(...) | T | main.rs:2695:5:2697:5 | dyn MyTrait | +| main.rs:2925:5:2925:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2925:16:2925:19 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2926:5:2926:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:13:26:133:1 | { ... } | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:13:26:133:1 | { ... } | T | {EXTERNAL LOCATION} | () | | pattern_matching.rs:15:5:18:5 | if ... {...} | | {EXTERNAL LOCATION} | () | @@ -6584,5349 +6585,5354 @@ inferType | main.rs:93:9:93:14 | x.m1() | | main.rs:72:5:72:21 | Foo | | main.rs:94:9:94:9 | y | | main.rs:72:5:72:21 | Foo | | main.rs:94:9:94:14 | y.m2() | | main.rs:72:5:72:21 | Foo | -| main.rs:105:25:105:28 | SelfParam | | main.rs:104:5:106:5 | Self [trait MyTrait] | -| main.rs:110:25:110:28 | SelfParam | | main.rs:99:5:102:5 | MyThing | -| main.rs:110:39:112:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:111:13:111:16 | self | | main.rs:99:5:102:5 | MyThing | -| main.rs:111:13:111:22 | self.field | | {EXTERNAL LOCATION} | bool | -| main.rs:115:16:121:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:116:13:116:13 | x | | main.rs:99:5:102:5 | MyThing | -| main.rs:116:17:116:39 | MyThing {...} | | main.rs:99:5:102:5 | MyThing | -| main.rs:116:34:116:37 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:117:13:117:13 | a | | {EXTERNAL LOCATION} | bool | -| main.rs:117:17:117:17 | x | | main.rs:99:5:102:5 | MyThing | -| main.rs:117:17:117:32 | x.trait_method() | | {EXTERNAL LOCATION} | bool | -| main.rs:119:13:119:13 | y | | main.rs:99:5:102:5 | MyThing | -| main.rs:119:17:119:40 | MyThing {...} | | main.rs:99:5:102:5 | MyThing | -| main.rs:119:34:119:38 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:120:13:120:13 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:120:17:120:40 | ...::trait_method(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:120:39:120:39 | y | | main.rs:99:5:102:5 | MyThing | -| main.rs:130:25:130:29 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:130:25:130:29 | SelfParam | TRef | main.rs:128:9:133:9 | Self [trait Foo] | -| main.rs:130:32:132:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:131:17:131:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:131:26:131:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:131:26:131:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:131:26:131:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:131:26:131:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:131:26:131:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:137:25:137:29 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:137:25:137:29 | SelfParam | TRef | main.rs:135:9:140:9 | Self [trait Bar] | -| main.rs:137:32:139:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:138:17:138:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:138:26:138:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:138:26:138:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:138:26:138:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:138:26:138:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:138:26:138:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:149:15:170:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:150:13:150:13 | x | | main.rs:142:9:142:21 | X | -| main.rs:150:17:150:17 | X | | main.rs:142:9:142:21 | X | -| main.rs:151:9:154:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:153:13:153:13 | x | | main.rs:142:9:142:21 | X | -| main.rs:153:13:153:24 | x.a_method() | | {EXTERNAL LOCATION} | () | -| main.rs:155:9:158:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:157:13:157:13 | x | | main.rs:142:9:142:21 | X | -| main.rs:157:13:157:24 | x.a_method() | | {EXTERNAL LOCATION} | () | -| main.rs:159:9:162:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:161:13:161:13 | x | | main.rs:142:9:142:21 | X | -| main.rs:161:13:161:24 | x.a_method() | | {EXTERNAL LOCATION} | () | -| main.rs:163:9:169:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:167:13:167:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | -| main.rs:167:27:167:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:167:27:167:28 | &x | TRef | main.rs:142:9:142:21 | X | -| main.rs:167:28:167:28 | x | | main.rs:142:9:142:21 | X | -| main.rs:168:13:168:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | -| main.rs:168:27:168:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:168:27:168:28 | &x | TRef | main.rs:142:9:142:21 | X | -| main.rs:168:28:168:28 | x | | main.rs:142:9:142:21 | X | -| main.rs:186:15:186:18 | SelfParam | | main.rs:174:5:177:5 | MyThing | -| main.rs:186:15:186:18 | SelfParam | A | main.rs:179:5:180:14 | S1 | -| main.rs:186:27:188:9 | { ... } | | main.rs:179:5:180:14 | S1 | -| main.rs:187:13:187:16 | self | | main.rs:174:5:177:5 | MyThing | -| main.rs:187:13:187:16 | self | A | main.rs:179:5:180:14 | S1 | -| main.rs:187:13:187:18 | self.a | | main.rs:179:5:180:14 | S1 | -| main.rs:193:15:193:18 | SelfParam | | main.rs:174:5:177:5 | MyThing | -| main.rs:193:15:193:18 | SelfParam | A | main.rs:181:5:182:14 | S2 | -| main.rs:193:29:195:9 | { ... } | | main.rs:174:5:177:5 | MyThing | -| main.rs:193:29:195:9 | { ... } | A | main.rs:181:5:182:14 | S2 | -| main.rs:194:13:194:30 | Self {...} | | main.rs:174:5:177:5 | MyThing | -| main.rs:194:13:194:30 | Self {...} | A | main.rs:181:5:182:14 | S2 | -| main.rs:194:23:194:26 | self | | main.rs:174:5:177:5 | MyThing | -| main.rs:194:23:194:26 | self | A | main.rs:181:5:182:14 | S2 | -| main.rs:194:23:194:28 | self.a | | main.rs:181:5:182:14 | S2 | -| main.rs:199:15:199:18 | SelfParam | | main.rs:174:5:177:5 | MyThing | -| main.rs:199:15:199:18 | SelfParam | A | main.rs:198:10:198:10 | T | -| main.rs:199:26:201:9 | { ... } | | main.rs:198:10:198:10 | T | -| main.rs:200:13:200:16 | self | | main.rs:174:5:177:5 | MyThing | -| main.rs:200:13:200:16 | self | A | main.rs:198:10:198:10 | T | -| main.rs:200:13:200:18 | self.a | | main.rs:198:10:198:10 | T | -| main.rs:204:16:220:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:205:13:205:13 | x | | main.rs:174:5:177:5 | MyThing | -| main.rs:205:13:205:13 | x | A | main.rs:179:5:180:14 | S1 | -| main.rs:205:17:205:33 | MyThing {...} | | main.rs:174:5:177:5 | MyThing | -| main.rs:205:17:205:33 | MyThing {...} | A | main.rs:179:5:180:14 | S1 | -| main.rs:205:30:205:31 | S1 | | main.rs:179:5:180:14 | S1 | -| main.rs:206:13:206:13 | y | | main.rs:174:5:177:5 | MyThing | -| main.rs:206:13:206:13 | y | A | main.rs:181:5:182:14 | S2 | -| main.rs:206:17:206:33 | MyThing {...} | | main.rs:174:5:177:5 | MyThing | -| main.rs:206:17:206:33 | MyThing {...} | A | main.rs:181:5:182:14 | S2 | -| main.rs:206:30:206:31 | S2 | | main.rs:181:5:182:14 | S2 | -| main.rs:209:9:209:29 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:209:18:209:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:209:18:209:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:209:18:209:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:209:18:209:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:209:18:209:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:209:26:209:26 | x | | main.rs:174:5:177:5 | MyThing | -| main.rs:209:26:209:26 | x | A | main.rs:179:5:180:14 | S1 | -| main.rs:209:26:209:28 | x.a | | main.rs:179:5:180:14 | S1 | -| main.rs:210:9:210:29 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:210:18:210:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:210:18:210:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:210:18:210:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:210:18:210:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:210:18:210:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:210:26:210:26 | y | | main.rs:174:5:177:5 | MyThing | -| main.rs:210:26:210:26 | y | A | main.rs:181:5:182:14 | S2 | -| main.rs:210:26:210:28 | y.a | | main.rs:181:5:182:14 | S2 | -| main.rs:212:9:212:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:212:18:212:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:212:18:212:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:212:18:212:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:212:18:212:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:212:18:212:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:212:26:212:26 | x | | main.rs:174:5:177:5 | MyThing | -| main.rs:212:26:212:26 | x | A | main.rs:179:5:180:14 | S1 | -| main.rs:212:26:212:31 | x.m1() | | main.rs:179:5:180:14 | S1 | -| main.rs:213:9:213:34 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:213:18:213:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:213:18:213:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:213:18:213:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:213:18:213:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:213:18:213:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:213:26:213:26 | y | | main.rs:174:5:177:5 | MyThing | -| main.rs:213:26:213:26 | y | A | main.rs:181:5:182:14 | S2 | -| main.rs:213:26:213:31 | y.m1() | | main.rs:174:5:177:5 | MyThing | -| main.rs:213:26:213:31 | y.m1() | A | main.rs:181:5:182:14 | S2 | -| main.rs:213:26:213:33 | ... .a | | main.rs:181:5:182:14 | S2 | -| main.rs:215:13:215:13 | x | | main.rs:174:5:177:5 | MyThing | -| main.rs:215:13:215:13 | x | A | main.rs:179:5:180:14 | S1 | -| main.rs:215:17:215:33 | MyThing {...} | | main.rs:174:5:177:5 | MyThing | -| main.rs:215:17:215:33 | MyThing {...} | A | main.rs:179:5:180:14 | S1 | -| main.rs:215:30:215:31 | S1 | | main.rs:179:5:180:14 | S1 | -| main.rs:216:13:216:13 | y | | main.rs:174:5:177:5 | MyThing | -| main.rs:216:13:216:13 | y | A | main.rs:181:5:182:14 | S2 | -| main.rs:216:17:216:33 | MyThing {...} | | main.rs:174:5:177:5 | MyThing | -| main.rs:216:17:216:33 | MyThing {...} | A | main.rs:181:5:182:14 | S2 | -| main.rs:216:30:216:31 | S2 | | main.rs:181:5:182:14 | S2 | -| main.rs:218:9:218:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:218:18:218:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:218:18:218:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:218:18:218:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:218:18:218:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:218:18:218:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:218:26:218:26 | x | | main.rs:174:5:177:5 | MyThing | -| main.rs:218:26:218:26 | x | A | main.rs:179:5:180:14 | S1 | -| main.rs:218:26:218:31 | x.m2() | | main.rs:179:5:180:14 | S1 | -| main.rs:219:9:219:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:219:18:219:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:219:18:219:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:219:18:219:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:219:18:219:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:219:18:219:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:219:26:219:26 | y | | main.rs:174:5:177:5 | MyThing | -| main.rs:219:26:219:26 | y | A | main.rs:181:5:182:14 | S2 | -| main.rs:219:26:219:31 | y.m2() | | main.rs:181:5:182:14 | S2 | -| main.rs:243:15:243:18 | SelfParam | | main.rs:242:5:251:5 | Self [trait MyTrait] | -| main.rs:245:15:245:18 | SelfParam | | main.rs:242:5:251:5 | Self [trait MyTrait] | -| main.rs:248:9:250:9 | { ... } | | main.rs:242:5:251:5 | Self [trait MyTrait] | -| main.rs:249:13:249:16 | self | | main.rs:242:5:251:5 | Self [trait MyTrait] | -| main.rs:255:16:255:19 | SelfParam | | main.rs:253:5:258:5 | Self [trait MyProduct] | -| main.rs:257:16:257:19 | SelfParam | | main.rs:253:5:258:5 | Self [trait MyProduct] | -| main.rs:260:43:260:43 | x | | main.rs:260:26:260:40 | T2 | -| main.rs:260:56:262:5 | { ... } | | main.rs:260:22:260:23 | T1 | -| main.rs:261:9:261:9 | x | | main.rs:260:26:260:40 | T2 | -| main.rs:261:9:261:14 | x.m1() | | main.rs:260:22:260:23 | T1 | -| main.rs:266:15:266:18 | SelfParam | | main.rs:224:5:227:5 | MyThing | -| main.rs:266:15:266:18 | SelfParam | A | main.rs:235:5:236:14 | S1 | -| main.rs:266:27:268:9 | { ... } | | main.rs:235:5:236:14 | S1 | -| main.rs:267:13:267:16 | self | | main.rs:224:5:227:5 | MyThing | -| main.rs:267:13:267:16 | self | A | main.rs:235:5:236:14 | S1 | -| main.rs:267:13:267:18 | self.a | | main.rs:235:5:236:14 | S1 | -| main.rs:273:15:273:18 | SelfParam | | main.rs:224:5:227:5 | MyThing | -| main.rs:273:15:273:18 | SelfParam | A | main.rs:237:5:238:14 | S2 | -| main.rs:273:29:275:9 | { ... } | | main.rs:224:5:227:5 | MyThing | -| main.rs:273:29:275:9 | { ... } | A | main.rs:237:5:238:14 | S2 | -| main.rs:274:13:274:30 | Self {...} | | main.rs:224:5:227:5 | MyThing | -| main.rs:274:13:274:30 | Self {...} | A | main.rs:237:5:238:14 | S2 | -| main.rs:274:23:274:26 | self | | main.rs:224:5:227:5 | MyThing | -| main.rs:274:23:274:26 | self | A | main.rs:237:5:238:14 | S2 | -| main.rs:274:23:274:28 | self.a | | main.rs:237:5:238:14 | S2 | -| main.rs:285:15:285:18 | SelfParam | | main.rs:224:5:227:5 | MyThing | -| main.rs:285:15:285:18 | SelfParam | A | main.rs:239:5:240:14 | S3 | -| main.rs:285:27:287:9 | { ... } | | main.rs:280:10:280:11 | TD | -| main.rs:286:13:286:25 | ...::default(...) | | main.rs:280:10:280:11 | TD | -| main.rs:292:15:292:18 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:292:15:292:18 | SelfParam | P1 | main.rs:290:10:290:10 | I | -| main.rs:292:15:292:18 | SelfParam | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:292:26:294:9 | { ... } | | main.rs:290:10:290:10 | I | -| main.rs:293:13:293:16 | self | | main.rs:229:5:233:5 | MyPair | -| main.rs:293:13:293:16 | self | P1 | main.rs:290:10:290:10 | I | -| main.rs:293:13:293:16 | self | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:293:13:293:19 | self.p1 | | main.rs:290:10:290:10 | I | -| main.rs:299:15:299:18 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:299:15:299:18 | SelfParam | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:299:15:299:18 | SelfParam | P2 | main.rs:237:5:238:14 | S2 | -| main.rs:299:27:301:9 | { ... } | | main.rs:239:5:240:14 | S3 | -| main.rs:300:13:300:14 | S3 | | main.rs:239:5:240:14 | S3 | -| main.rs:306:15:306:18 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:306:15:306:18 | SelfParam | P1 | main.rs:224:5:227:5 | MyThing | -| main.rs:306:15:306:18 | SelfParam | P1.A | main.rs:304:10:304:11 | TT | -| main.rs:306:15:306:18 | SelfParam | P2 | main.rs:239:5:240:14 | S3 | -| main.rs:306:27:309:9 | { ... } | | main.rs:304:10:304:11 | TT | -| main.rs:307:17:307:21 | alpha | | main.rs:224:5:227:5 | MyThing | -| main.rs:307:17:307:21 | alpha | A | main.rs:304:10:304:11 | TT | -| main.rs:307:25:307:28 | self | | main.rs:229:5:233:5 | MyPair | -| main.rs:307:25:307:28 | self | P1 | main.rs:224:5:227:5 | MyThing | -| main.rs:307:25:307:28 | self | P1.A | main.rs:304:10:304:11 | TT | -| main.rs:307:25:307:28 | self | P2 | main.rs:239:5:240:14 | S3 | -| main.rs:307:25:307:31 | self.p1 | | main.rs:224:5:227:5 | MyThing | -| main.rs:307:25:307:31 | self.p1 | A | main.rs:304:10:304:11 | TT | -| main.rs:308:13:308:17 | alpha | | main.rs:224:5:227:5 | MyThing | -| main.rs:308:13:308:17 | alpha | A | main.rs:304:10:304:11 | TT | -| main.rs:308:13:308:19 | alpha.a | | main.rs:304:10:304:11 | TT | -| main.rs:315:16:315:19 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:315:16:315:19 | SelfParam | P1 | main.rs:313:10:313:10 | A | -| main.rs:315:16:315:19 | SelfParam | P2 | main.rs:313:10:313:10 | A | -| main.rs:315:27:317:9 | { ... } | | main.rs:313:10:313:10 | A | -| main.rs:316:13:316:16 | self | | main.rs:229:5:233:5 | MyPair | -| main.rs:316:13:316:16 | self | P1 | main.rs:313:10:313:10 | A | -| main.rs:316:13:316:16 | self | P2 | main.rs:313:10:313:10 | A | -| main.rs:316:13:316:19 | self.p1 | | main.rs:313:10:313:10 | A | -| main.rs:320:16:320:19 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:320:16:320:19 | SelfParam | P1 | main.rs:313:10:313:10 | A | -| main.rs:320:16:320:19 | SelfParam | P2 | main.rs:313:10:313:10 | A | -| main.rs:320:27:322:9 | { ... } | | main.rs:313:10:313:10 | A | -| main.rs:321:13:321:16 | self | | main.rs:229:5:233:5 | MyPair | -| main.rs:321:13:321:16 | self | P1 | main.rs:313:10:313:10 | A | -| main.rs:321:13:321:16 | self | P2 | main.rs:313:10:313:10 | A | -| main.rs:321:13:321:19 | self.p2 | | main.rs:313:10:313:10 | A | -| main.rs:328:16:328:19 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:328:16:328:19 | SelfParam | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:328:16:328:19 | SelfParam | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:328:28:330:9 | { ... } | | main.rs:235:5:236:14 | S1 | -| main.rs:329:13:329:16 | self | | main.rs:229:5:233:5 | MyPair | -| main.rs:329:13:329:16 | self | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:329:13:329:16 | self | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:329:13:329:19 | self.p2 | | main.rs:235:5:236:14 | S1 | -| main.rs:333:16:333:19 | SelfParam | | main.rs:229:5:233:5 | MyPair | -| main.rs:333:16:333:19 | SelfParam | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:333:16:333:19 | SelfParam | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:333:28:335:9 | { ... } | | main.rs:237:5:238:14 | S2 | -| main.rs:334:13:334:16 | self | | main.rs:229:5:233:5 | MyPair | -| main.rs:334:13:334:16 | self | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:334:13:334:16 | self | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:334:13:334:19 | self.p1 | | main.rs:237:5:238:14 | S2 | -| main.rs:338:46:338:46 | p | | main.rs:338:24:338:43 | P | -| main.rs:338:58:340:5 | { ... } | | main.rs:338:16:338:17 | V1 | -| main.rs:339:9:339:9 | p | | main.rs:338:24:338:43 | P | -| main.rs:339:9:339:15 | p.fst() | | main.rs:338:16:338:17 | V1 | -| main.rs:342:46:342:46 | p | | main.rs:342:24:342:43 | P | -| main.rs:342:58:344:5 | { ... } | | main.rs:342:20:342:21 | V2 | -| main.rs:343:9:343:9 | p | | main.rs:342:24:342:43 | P | -| main.rs:343:9:343:15 | p.snd() | | main.rs:342:20:342:21 | V2 | -| main.rs:346:54:346:54 | p | | main.rs:229:5:233:5 | MyPair | -| main.rs:346:54:346:54 | p | P1 | main.rs:346:20:346:21 | V0 | -| main.rs:346:54:346:54 | p | P2 | main.rs:346:32:346:51 | P | -| main.rs:346:78:348:5 | { ... } | | main.rs:346:24:346:25 | V1 | -| main.rs:347:9:347:9 | p | | main.rs:229:5:233:5 | MyPair | -| main.rs:347:9:347:9 | p | P1 | main.rs:346:20:346:21 | V0 | -| main.rs:347:9:347:9 | p | P2 | main.rs:346:32:346:51 | P | -| main.rs:347:9:347:12 | p.p2 | | main.rs:346:32:346:51 | P | -| main.rs:347:9:347:18 | ... .fst() | | main.rs:346:24:346:25 | V1 | -| main.rs:352:23:352:26 | SelfParam | | main.rs:350:5:353:5 | Self [trait ConvertTo] | -| main.rs:357:23:357:26 | SelfParam | | main.rs:355:10:355:23 | T | -| main.rs:357:35:359:9 | { ... } | | main.rs:235:5:236:14 | S1 | -| main.rs:358:13:358:16 | self | | main.rs:355:10:355:23 | T | -| main.rs:358:13:358:21 | self.m1() | | main.rs:235:5:236:14 | S1 | -| main.rs:362:41:362:45 | thing | | main.rs:362:23:362:38 | T | -| main.rs:362:57:364:5 | { ... } | | main.rs:362:19:362:20 | TS | -| main.rs:363:9:363:13 | thing | | main.rs:362:23:362:38 | T | -| main.rs:363:9:363:26 | thing.convert_to() | | main.rs:362:19:362:20 | TS | -| main.rs:366:56:366:60 | thing | | main.rs:366:39:366:53 | TP | -| main.rs:366:73:369:5 | { ... } | | main.rs:235:5:236:14 | S1 | -| main.rs:368:9:368:13 | thing | | main.rs:366:39:366:53 | TP | -| main.rs:368:9:368:26 | thing.convert_to() | | main.rs:235:5:236:14 | S1 | -| main.rs:371:16:442:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:372:13:372:20 | thing_s1 | | main.rs:224:5:227:5 | MyThing | -| main.rs:372:13:372:20 | thing_s1 | A | main.rs:235:5:236:14 | S1 | -| main.rs:372:24:372:40 | MyThing {...} | | main.rs:224:5:227:5 | MyThing | -| main.rs:372:24:372:40 | MyThing {...} | A | main.rs:235:5:236:14 | S1 | -| main.rs:372:37:372:38 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:373:13:373:20 | thing_s2 | | main.rs:224:5:227:5 | MyThing | -| main.rs:373:13:373:20 | thing_s2 | A | main.rs:237:5:238:14 | S2 | -| main.rs:373:24:373:40 | MyThing {...} | | main.rs:224:5:227:5 | MyThing | -| main.rs:373:24:373:40 | MyThing {...} | A | main.rs:237:5:238:14 | S2 | -| main.rs:373:37:373:38 | S2 | | main.rs:237:5:238:14 | S2 | -| main.rs:374:13:374:20 | thing_s3 | | main.rs:224:5:227:5 | MyThing | -| main.rs:374:13:374:20 | thing_s3 | A | main.rs:239:5:240:14 | S3 | -| main.rs:374:24:374:40 | MyThing {...} | | main.rs:224:5:227:5 | MyThing | -| main.rs:374:24:374:40 | MyThing {...} | A | main.rs:239:5:240:14 | S3 | -| main.rs:374:37:374:38 | S3 | | main.rs:239:5:240:14 | S3 | -| main.rs:378:9:378:39 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:378:18:378:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:378:18:378:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:378:18:378:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:378:18:378:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:378:18:378:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:378:26:378:33 | thing_s1 | | main.rs:224:5:227:5 | MyThing | -| main.rs:378:26:378:33 | thing_s1 | A | main.rs:235:5:236:14 | S1 | -| main.rs:378:26:378:38 | thing_s1.m1() | | main.rs:235:5:236:14 | S1 | -| main.rs:379:9:379:41 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:379:18:379:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:379:18:379:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:379:18:379:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:379:18:379:40 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:379:18:379:40 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:379:26:379:33 | thing_s2 | | main.rs:224:5:227:5 | MyThing | -| main.rs:379:26:379:33 | thing_s2 | A | main.rs:237:5:238:14 | S2 | -| main.rs:379:26:379:38 | thing_s2.m1() | | main.rs:224:5:227:5 | MyThing | -| main.rs:379:26:379:38 | thing_s2.m1() | A | main.rs:237:5:238:14 | S2 | -| main.rs:379:26:379:40 | ... .a | | main.rs:237:5:238:14 | S2 | -| main.rs:380:13:380:14 | s3 | | main.rs:239:5:240:14 | S3 | -| main.rs:380:22:380:29 | thing_s3 | | main.rs:224:5:227:5 | MyThing | -| main.rs:380:22:380:29 | thing_s3 | A | main.rs:239:5:240:14 | S3 | -| main.rs:380:22:380:34 | thing_s3.m1() | | main.rs:239:5:240:14 | S3 | -| main.rs:381:9:381:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:381:18:381:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:381:18:381:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:381:18:381:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:381:18:381:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:381:18:381:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:381:26:381:27 | s3 | | main.rs:239:5:240:14 | S3 | -| main.rs:383:13:383:14 | p1 | | main.rs:229:5:233:5 | MyPair | -| main.rs:383:13:383:14 | p1 | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:383:13:383:14 | p1 | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:383:18:383:42 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:383:18:383:42 | MyPair {...} | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:383:18:383:42 | MyPair {...} | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:383:31:383:32 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:383:39:383:40 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:384:9:384:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:384:18:384:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:384:18:384:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:384:18:384:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:384:18:384:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:384:18:384:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:384:26:384:27 | p1 | | main.rs:229:5:233:5 | MyPair | -| main.rs:384:26:384:27 | p1 | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:384:26:384:27 | p1 | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:384:26:384:32 | p1.m1() | | main.rs:235:5:236:14 | S1 | -| main.rs:386:13:386:14 | p2 | | main.rs:229:5:233:5 | MyPair | -| main.rs:386:13:386:14 | p2 | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:386:13:386:14 | p2 | P2 | main.rs:237:5:238:14 | S2 | -| main.rs:386:18:386:42 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:386:18:386:42 | MyPair {...} | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:386:18:386:42 | MyPair {...} | P2 | main.rs:237:5:238:14 | S2 | -| main.rs:386:31:386:32 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:386:39:386:40 | S2 | | main.rs:237:5:238:14 | S2 | -| main.rs:387:9:387:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:387:18:387:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:387:18:387:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:387:18:387:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:387:18:387:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:387:18:387:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:387:26:387:27 | p2 | | main.rs:229:5:233:5 | MyPair | -| main.rs:387:26:387:27 | p2 | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:387:26:387:27 | p2 | P2 | main.rs:237:5:238:14 | S2 | -| main.rs:387:26:387:32 | p2.m1() | | main.rs:239:5:240:14 | S3 | -| main.rs:389:13:389:14 | p3 | | main.rs:229:5:233:5 | MyPair | -| main.rs:389:13:389:14 | p3 | P1 | main.rs:224:5:227:5 | MyThing | -| main.rs:389:13:389:14 | p3 | P1.A | main.rs:235:5:236:14 | S1 | -| main.rs:389:13:389:14 | p3 | P2 | main.rs:239:5:240:14 | S3 | -| main.rs:389:18:392:9 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:389:18:392:9 | MyPair {...} | P1 | main.rs:224:5:227:5 | MyThing | -| main.rs:389:18:392:9 | MyPair {...} | P1.A | main.rs:235:5:236:14 | S1 | -| main.rs:389:18:392:9 | MyPair {...} | P2 | main.rs:239:5:240:14 | S3 | -| main.rs:390:17:390:33 | MyThing {...} | | main.rs:224:5:227:5 | MyThing | -| main.rs:390:17:390:33 | MyThing {...} | A | main.rs:235:5:236:14 | S1 | -| main.rs:390:30:390:31 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:391:17:391:18 | S3 | | main.rs:239:5:240:14 | S3 | -| main.rs:393:9:393:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:393:18:393:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:393:18:393:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:393:18:393:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:393:18:393:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:393:18:393:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:393:26:393:27 | p3 | | main.rs:229:5:233:5 | MyPair | -| main.rs:393:26:393:27 | p3 | P1 | main.rs:224:5:227:5 | MyThing | -| main.rs:393:26:393:27 | p3 | P1.A | main.rs:235:5:236:14 | S1 | -| main.rs:393:26:393:27 | p3 | P2 | main.rs:239:5:240:14 | S3 | -| main.rs:393:26:393:32 | p3.m1() | | main.rs:235:5:236:14 | S1 | -| main.rs:396:13:396:13 | a | | main.rs:229:5:233:5 | MyPair | -| main.rs:396:13:396:13 | a | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:396:13:396:13 | a | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:396:17:396:41 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:396:17:396:41 | MyPair {...} | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:396:17:396:41 | MyPair {...} | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:396:30:396:31 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:396:38:396:39 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:397:13:397:13 | x | | main.rs:235:5:236:14 | S1 | -| main.rs:397:17:397:17 | a | | main.rs:229:5:233:5 | MyPair | -| main.rs:397:17:397:17 | a | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:397:17:397:17 | a | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:397:17:397:23 | a.fst() | | main.rs:235:5:236:14 | S1 | -| main.rs:398:9:398:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:102:30:105:9 | { ... } | | main.rs:99:5:99:29 | ATupleStruct | +| main.rs:103:17:103:17 | n | | {EXTERNAL LOCATION} | i64 | +| main.rs:103:21:103:38 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:104:13:104:19 | Self(...) | | main.rs:99:5:99:29 | ATupleStruct | +| main.rs:104:18:104:18 | n | | {EXTERNAL LOCATION} | i64 | +| main.rs:116:25:116:28 | SelfParam | | main.rs:115:5:117:5 | Self [trait MyTrait] | +| main.rs:121:25:121:28 | SelfParam | | main.rs:110:5:113:5 | MyThing | +| main.rs:121:39:123:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:122:13:122:16 | self | | main.rs:110:5:113:5 | MyThing | +| main.rs:122:13:122:22 | self.field | | {EXTERNAL LOCATION} | bool | +| main.rs:126:16:132:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:127:13:127:13 | x | | main.rs:110:5:113:5 | MyThing | +| main.rs:127:17:127:39 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | +| main.rs:127:34:127:37 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:128:13:128:13 | a | | {EXTERNAL LOCATION} | bool | +| main.rs:128:17:128:17 | x | | main.rs:110:5:113:5 | MyThing | +| main.rs:128:17:128:32 | x.trait_method() | | {EXTERNAL LOCATION} | bool | +| main.rs:130:13:130:13 | y | | main.rs:110:5:113:5 | MyThing | +| main.rs:130:17:130:40 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | +| main.rs:130:34:130:38 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:131:13:131:13 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:131:17:131:40 | ...::trait_method(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:131:39:131:39 | y | | main.rs:110:5:113:5 | MyThing | +| main.rs:141:25:141:29 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:141:25:141:29 | SelfParam | TRef | main.rs:139:9:144:9 | Self [trait Foo] | +| main.rs:141:32:143:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:142:17:142:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:142:26:142:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:142:26:142:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:142:26:142:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:142:26:142:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:142:26:142:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:148:25:148:29 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:148:25:148:29 | SelfParam | TRef | main.rs:146:9:151:9 | Self [trait Bar] | +| main.rs:148:32:150:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:149:17:149:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:149:26:149:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:149:26:149:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:149:26:149:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:149:26:149:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:149:26:149:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:160:15:181:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:161:13:161:13 | x | | main.rs:153:9:153:21 | X | +| main.rs:161:17:161:17 | X | | main.rs:153:9:153:21 | X | +| main.rs:162:9:165:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:164:13:164:13 | x | | main.rs:153:9:153:21 | X | +| main.rs:164:13:164:24 | x.a_method() | | {EXTERNAL LOCATION} | () | +| main.rs:166:9:169:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:168:13:168:13 | x | | main.rs:153:9:153:21 | X | +| main.rs:168:13:168:24 | x.a_method() | | {EXTERNAL LOCATION} | () | +| main.rs:170:9:173:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:172:13:172:13 | x | | main.rs:153:9:153:21 | X | +| main.rs:172:13:172:24 | x.a_method() | | {EXTERNAL LOCATION} | () | +| main.rs:174:9:180:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:178:13:178:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | +| main.rs:178:27:178:28 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:178:27:178:28 | &x | TRef | main.rs:153:9:153:21 | X | +| main.rs:178:28:178:28 | x | | main.rs:153:9:153:21 | X | +| main.rs:179:13:179:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | +| main.rs:179:27:179:28 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:179:27:179:28 | &x | TRef | main.rs:153:9:153:21 | X | +| main.rs:179:28:179:28 | x | | main.rs:153:9:153:21 | X | +| main.rs:197:15:197:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | +| main.rs:197:15:197:18 | SelfParam | A | main.rs:190:5:191:14 | S1 | +| main.rs:197:27:199:9 | { ... } | | main.rs:190:5:191:14 | S1 | +| main.rs:198:13:198:16 | self | | main.rs:185:5:188:5 | MyThing | +| main.rs:198:13:198:16 | self | A | main.rs:190:5:191:14 | S1 | +| main.rs:198:13:198:18 | self.a | | main.rs:190:5:191:14 | S1 | +| main.rs:204:15:204:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | +| main.rs:204:15:204:18 | SelfParam | A | main.rs:192:5:193:14 | S2 | +| main.rs:204:29:206:9 | { ... } | | main.rs:185:5:188:5 | MyThing | +| main.rs:204:29:206:9 | { ... } | A | main.rs:192:5:193:14 | S2 | +| main.rs:205:13:205:30 | Self {...} | | main.rs:185:5:188:5 | MyThing | +| main.rs:205:13:205:30 | Self {...} | A | main.rs:192:5:193:14 | S2 | +| main.rs:205:23:205:26 | self | | main.rs:185:5:188:5 | MyThing | +| main.rs:205:23:205:26 | self | A | main.rs:192:5:193:14 | S2 | +| main.rs:205:23:205:28 | self.a | | main.rs:192:5:193:14 | S2 | +| main.rs:210:15:210:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | +| main.rs:210:15:210:18 | SelfParam | A | main.rs:209:10:209:10 | T | +| main.rs:210:26:212:9 | { ... } | | main.rs:209:10:209:10 | T | +| main.rs:211:13:211:16 | self | | main.rs:185:5:188:5 | MyThing | +| main.rs:211:13:211:16 | self | A | main.rs:209:10:209:10 | T | +| main.rs:211:13:211:18 | self.a | | main.rs:209:10:209:10 | T | +| main.rs:215:16:231:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:216:13:216:13 | x | | main.rs:185:5:188:5 | MyThing | +| main.rs:216:13:216:13 | x | A | main.rs:190:5:191:14 | S1 | +| main.rs:216:17:216:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | +| main.rs:216:17:216:33 | MyThing {...} | A | main.rs:190:5:191:14 | S1 | +| main.rs:216:30:216:31 | S1 | | main.rs:190:5:191:14 | S1 | +| main.rs:217:13:217:13 | y | | main.rs:185:5:188:5 | MyThing | +| main.rs:217:13:217:13 | y | A | main.rs:192:5:193:14 | S2 | +| main.rs:217:17:217:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | +| main.rs:217:17:217:33 | MyThing {...} | A | main.rs:192:5:193:14 | S2 | +| main.rs:217:30:217:31 | S2 | | main.rs:192:5:193:14 | S2 | +| main.rs:220:9:220:29 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:220:18:220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:220:18:220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:220:18:220:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:220:18:220:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:220:18:220:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:220:26:220:26 | x | | main.rs:185:5:188:5 | MyThing | +| main.rs:220:26:220:26 | x | A | main.rs:190:5:191:14 | S1 | +| main.rs:220:26:220:28 | x.a | | main.rs:190:5:191:14 | S1 | +| main.rs:221:9:221:29 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:221:18:221:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:221:18:221:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:221:18:221:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:221:18:221:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:221:18:221:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:221:26:221:26 | y | | main.rs:185:5:188:5 | MyThing | +| main.rs:221:26:221:26 | y | A | main.rs:192:5:193:14 | S2 | +| main.rs:221:26:221:28 | y.a | | main.rs:192:5:193:14 | S2 | +| main.rs:223:9:223:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:223:18:223:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:223:18:223:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:223:18:223:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:223:18:223:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:223:18:223:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:223:26:223:26 | x | | main.rs:185:5:188:5 | MyThing | +| main.rs:223:26:223:26 | x | A | main.rs:190:5:191:14 | S1 | +| main.rs:223:26:223:31 | x.m1() | | main.rs:190:5:191:14 | S1 | +| main.rs:224:9:224:34 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:224:18:224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:224:18:224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:224:18:224:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:224:18:224:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:224:18:224:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:224:26:224:26 | y | | main.rs:185:5:188:5 | MyThing | +| main.rs:224:26:224:26 | y | A | main.rs:192:5:193:14 | S2 | +| main.rs:224:26:224:31 | y.m1() | | main.rs:185:5:188:5 | MyThing | +| main.rs:224:26:224:31 | y.m1() | A | main.rs:192:5:193:14 | S2 | +| main.rs:224:26:224:33 | ... .a | | main.rs:192:5:193:14 | S2 | +| main.rs:226:13:226:13 | x | | main.rs:185:5:188:5 | MyThing | +| main.rs:226:13:226:13 | x | A | main.rs:190:5:191:14 | S1 | +| main.rs:226:17:226:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | +| main.rs:226:17:226:33 | MyThing {...} | A | main.rs:190:5:191:14 | S1 | +| main.rs:226:30:226:31 | S1 | | main.rs:190:5:191:14 | S1 | +| main.rs:227:13:227:13 | y | | main.rs:185:5:188:5 | MyThing | +| main.rs:227:13:227:13 | y | A | main.rs:192:5:193:14 | S2 | +| main.rs:227:17:227:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | +| main.rs:227:17:227:33 | MyThing {...} | A | main.rs:192:5:193:14 | S2 | +| main.rs:227:30:227:31 | S2 | | main.rs:192:5:193:14 | S2 | +| main.rs:229:9:229:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:229:18:229:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:229:18:229:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:229:18:229:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:229:18:229:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:229:18:229:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:229:26:229:26 | x | | main.rs:185:5:188:5 | MyThing | +| main.rs:229:26:229:26 | x | A | main.rs:190:5:191:14 | S1 | +| main.rs:229:26:229:31 | x.m2() | | main.rs:190:5:191:14 | S1 | +| main.rs:230:9:230:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:230:18:230:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:230:18:230:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:230:18:230:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:230:18:230:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:230:18:230:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:230:26:230:26 | y | | main.rs:185:5:188:5 | MyThing | +| main.rs:230:26:230:26 | y | A | main.rs:192:5:193:14 | S2 | +| main.rs:230:26:230:31 | y.m2() | | main.rs:192:5:193:14 | S2 | +| main.rs:254:15:254:18 | SelfParam | | main.rs:253:5:262:5 | Self [trait MyTrait] | +| main.rs:256:15:256:18 | SelfParam | | main.rs:253:5:262:5 | Self [trait MyTrait] | +| main.rs:259:9:261:9 | { ... } | | main.rs:253:5:262:5 | Self [trait MyTrait] | +| main.rs:260:13:260:16 | self | | main.rs:253:5:262:5 | Self [trait MyTrait] | +| main.rs:266:16:266:19 | SelfParam | | main.rs:264:5:269:5 | Self [trait MyProduct] | +| main.rs:268:16:268:19 | SelfParam | | main.rs:264:5:269:5 | Self [trait MyProduct] | +| main.rs:271:43:271:43 | x | | main.rs:271:26:271:40 | T2 | +| main.rs:271:56:273:5 | { ... } | | main.rs:271:22:271:23 | T1 | +| main.rs:272:9:272:9 | x | | main.rs:271:26:271:40 | T2 | +| main.rs:272:9:272:14 | x.m1() | | main.rs:271:22:271:23 | T1 | +| main.rs:277:15:277:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | +| main.rs:277:15:277:18 | SelfParam | A | main.rs:246:5:247:14 | S1 | +| main.rs:277:27:279:9 | { ... } | | main.rs:246:5:247:14 | S1 | +| main.rs:278:13:278:16 | self | | main.rs:235:5:238:5 | MyThing | +| main.rs:278:13:278:16 | self | A | main.rs:246:5:247:14 | S1 | +| main.rs:278:13:278:18 | self.a | | main.rs:246:5:247:14 | S1 | +| main.rs:284:15:284:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | +| main.rs:284:15:284:18 | SelfParam | A | main.rs:248:5:249:14 | S2 | +| main.rs:284:29:286:9 | { ... } | | main.rs:235:5:238:5 | MyThing | +| main.rs:284:29:286:9 | { ... } | A | main.rs:248:5:249:14 | S2 | +| main.rs:285:13:285:30 | Self {...} | | main.rs:235:5:238:5 | MyThing | +| main.rs:285:13:285:30 | Self {...} | A | main.rs:248:5:249:14 | S2 | +| main.rs:285:23:285:26 | self | | main.rs:235:5:238:5 | MyThing | +| main.rs:285:23:285:26 | self | A | main.rs:248:5:249:14 | S2 | +| main.rs:285:23:285:28 | self.a | | main.rs:248:5:249:14 | S2 | +| main.rs:296:15:296:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | +| main.rs:296:15:296:18 | SelfParam | A | main.rs:250:5:251:14 | S3 | +| main.rs:296:27:298:9 | { ... } | | main.rs:291:10:291:11 | TD | +| main.rs:297:13:297:25 | ...::default(...) | | main.rs:291:10:291:11 | TD | +| main.rs:303:15:303:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:303:15:303:18 | SelfParam | P1 | main.rs:301:10:301:10 | I | +| main.rs:303:15:303:18 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:303:26:305:9 | { ... } | | main.rs:301:10:301:10 | I | +| main.rs:304:13:304:16 | self | | main.rs:240:5:244:5 | MyPair | +| main.rs:304:13:304:16 | self | P1 | main.rs:301:10:301:10 | I | +| main.rs:304:13:304:16 | self | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:304:13:304:19 | self.p1 | | main.rs:301:10:301:10 | I | +| main.rs:310:15:310:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:310:15:310:18 | SelfParam | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:310:15:310:18 | SelfParam | P2 | main.rs:248:5:249:14 | S2 | +| main.rs:310:27:312:9 | { ... } | | main.rs:250:5:251:14 | S3 | +| main.rs:311:13:311:14 | S3 | | main.rs:250:5:251:14 | S3 | +| main.rs:317:15:317:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:317:15:317:18 | SelfParam | P1 | main.rs:235:5:238:5 | MyThing | +| main.rs:317:15:317:18 | SelfParam | P1.A | main.rs:315:10:315:11 | TT | +| main.rs:317:15:317:18 | SelfParam | P2 | main.rs:250:5:251:14 | S3 | +| main.rs:317:27:320:9 | { ... } | | main.rs:315:10:315:11 | TT | +| main.rs:318:17:318:21 | alpha | | main.rs:235:5:238:5 | MyThing | +| main.rs:318:17:318:21 | alpha | A | main.rs:315:10:315:11 | TT | +| main.rs:318:25:318:28 | self | | main.rs:240:5:244:5 | MyPair | +| main.rs:318:25:318:28 | self | P1 | main.rs:235:5:238:5 | MyThing | +| main.rs:318:25:318:28 | self | P1.A | main.rs:315:10:315:11 | TT | +| main.rs:318:25:318:28 | self | P2 | main.rs:250:5:251:14 | S3 | +| main.rs:318:25:318:31 | self.p1 | | main.rs:235:5:238:5 | MyThing | +| main.rs:318:25:318:31 | self.p1 | A | main.rs:315:10:315:11 | TT | +| main.rs:319:13:319:17 | alpha | | main.rs:235:5:238:5 | MyThing | +| main.rs:319:13:319:17 | alpha | A | main.rs:315:10:315:11 | TT | +| main.rs:319:13:319:19 | alpha.a | | main.rs:315:10:315:11 | TT | +| main.rs:326:16:326:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:326:16:326:19 | SelfParam | P1 | main.rs:324:10:324:10 | A | +| main.rs:326:16:326:19 | SelfParam | P2 | main.rs:324:10:324:10 | A | +| main.rs:326:27:328:9 | { ... } | | main.rs:324:10:324:10 | A | +| main.rs:327:13:327:16 | self | | main.rs:240:5:244:5 | MyPair | +| main.rs:327:13:327:16 | self | P1 | main.rs:324:10:324:10 | A | +| main.rs:327:13:327:16 | self | P2 | main.rs:324:10:324:10 | A | +| main.rs:327:13:327:19 | self.p1 | | main.rs:324:10:324:10 | A | +| main.rs:331:16:331:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:331:16:331:19 | SelfParam | P1 | main.rs:324:10:324:10 | A | +| main.rs:331:16:331:19 | SelfParam | P2 | main.rs:324:10:324:10 | A | +| main.rs:331:27:333:9 | { ... } | | main.rs:324:10:324:10 | A | +| main.rs:332:13:332:16 | self | | main.rs:240:5:244:5 | MyPair | +| main.rs:332:13:332:16 | self | P1 | main.rs:324:10:324:10 | A | +| main.rs:332:13:332:16 | self | P2 | main.rs:324:10:324:10 | A | +| main.rs:332:13:332:19 | self.p2 | | main.rs:324:10:324:10 | A | +| main.rs:339:16:339:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:339:16:339:19 | SelfParam | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:339:16:339:19 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:339:28:341:9 | { ... } | | main.rs:246:5:247:14 | S1 | +| main.rs:340:13:340:16 | self | | main.rs:240:5:244:5 | MyPair | +| main.rs:340:13:340:16 | self | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:340:13:340:16 | self | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:340:13:340:19 | self.p2 | | main.rs:246:5:247:14 | S1 | +| main.rs:344:16:344:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | +| main.rs:344:16:344:19 | SelfParam | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:344:16:344:19 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:344:28:346:9 | { ... } | | main.rs:248:5:249:14 | S2 | +| main.rs:345:13:345:16 | self | | main.rs:240:5:244:5 | MyPair | +| main.rs:345:13:345:16 | self | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:345:13:345:16 | self | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:345:13:345:19 | self.p1 | | main.rs:248:5:249:14 | S2 | +| main.rs:349:46:349:46 | p | | main.rs:349:24:349:43 | P | +| main.rs:349:58:351:5 | { ... } | | main.rs:349:16:349:17 | V1 | +| main.rs:350:9:350:9 | p | | main.rs:349:24:349:43 | P | +| main.rs:350:9:350:15 | p.fst() | | main.rs:349:16:349:17 | V1 | +| main.rs:353:46:353:46 | p | | main.rs:353:24:353:43 | P | +| main.rs:353:58:355:5 | { ... } | | main.rs:353:20:353:21 | V2 | +| main.rs:354:9:354:9 | p | | main.rs:353:24:353:43 | P | +| main.rs:354:9:354:15 | p.snd() | | main.rs:353:20:353:21 | V2 | +| main.rs:357:54:357:54 | p | | main.rs:240:5:244:5 | MyPair | +| main.rs:357:54:357:54 | p | P1 | main.rs:357:20:357:21 | V0 | +| main.rs:357:54:357:54 | p | P2 | main.rs:357:32:357:51 | P | +| main.rs:357:78:359:5 | { ... } | | main.rs:357:24:357:25 | V1 | +| main.rs:358:9:358:9 | p | | main.rs:240:5:244:5 | MyPair | +| main.rs:358:9:358:9 | p | P1 | main.rs:357:20:357:21 | V0 | +| main.rs:358:9:358:9 | p | P2 | main.rs:357:32:357:51 | P | +| main.rs:358:9:358:12 | p.p2 | | main.rs:357:32:357:51 | P | +| main.rs:358:9:358:18 | ... .fst() | | main.rs:357:24:357:25 | V1 | +| main.rs:363:23:363:26 | SelfParam | | main.rs:361:5:364:5 | Self [trait ConvertTo] | +| main.rs:368:23:368:26 | SelfParam | | main.rs:366:10:366:23 | T | +| main.rs:368:35:370:9 | { ... } | | main.rs:246:5:247:14 | S1 | +| main.rs:369:13:369:16 | self | | main.rs:366:10:366:23 | T | +| main.rs:369:13:369:21 | self.m1() | | main.rs:246:5:247:14 | S1 | +| main.rs:373:41:373:45 | thing | | main.rs:373:23:373:38 | T | +| main.rs:373:57:375:5 | { ... } | | main.rs:373:19:373:20 | TS | +| main.rs:374:9:374:13 | thing | | main.rs:373:23:373:38 | T | +| main.rs:374:9:374:26 | thing.convert_to() | | main.rs:373:19:373:20 | TS | +| main.rs:377:56:377:60 | thing | | main.rs:377:39:377:53 | TP | +| main.rs:377:73:380:5 | { ... } | | main.rs:246:5:247:14 | S1 | +| main.rs:379:9:379:13 | thing | | main.rs:377:39:377:53 | TP | +| main.rs:379:9:379:26 | thing.convert_to() | | main.rs:246:5:247:14 | S1 | +| main.rs:382:16:453:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:383:13:383:20 | thing_s1 | | main.rs:235:5:238:5 | MyThing | +| main.rs:383:13:383:20 | thing_s1 | A | main.rs:246:5:247:14 | S1 | +| main.rs:383:24:383:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | +| main.rs:383:24:383:40 | MyThing {...} | A | main.rs:246:5:247:14 | S1 | +| main.rs:383:37:383:38 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:384:13:384:20 | thing_s2 | | main.rs:235:5:238:5 | MyThing | +| main.rs:384:13:384:20 | thing_s2 | A | main.rs:248:5:249:14 | S2 | +| main.rs:384:24:384:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | +| main.rs:384:24:384:40 | MyThing {...} | A | main.rs:248:5:249:14 | S2 | +| main.rs:384:37:384:38 | S2 | | main.rs:248:5:249:14 | S2 | +| main.rs:385:13:385:20 | thing_s3 | | main.rs:235:5:238:5 | MyThing | +| main.rs:385:13:385:20 | thing_s3 | A | main.rs:250:5:251:14 | S3 | +| main.rs:385:24:385:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | +| main.rs:385:24:385:40 | MyThing {...} | A | main.rs:250:5:251:14 | S3 | +| main.rs:385:37:385:38 | S3 | | main.rs:250:5:251:14 | S3 | +| main.rs:389:9:389:39 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:389:18:389:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:389:18:389:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:389:18:389:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:389:18:389:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:389:18:389:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:389:26:389:33 | thing_s1 | | main.rs:235:5:238:5 | MyThing | +| main.rs:389:26:389:33 | thing_s1 | A | main.rs:246:5:247:14 | S1 | +| main.rs:389:26:389:38 | thing_s1.m1() | | main.rs:246:5:247:14 | S1 | +| main.rs:390:9:390:41 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:390:18:390:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:390:18:390:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:390:18:390:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:390:18:390:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:390:18:390:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:390:26:390:33 | thing_s2 | | main.rs:235:5:238:5 | MyThing | +| main.rs:390:26:390:33 | thing_s2 | A | main.rs:248:5:249:14 | S2 | +| main.rs:390:26:390:38 | thing_s2.m1() | | main.rs:235:5:238:5 | MyThing | +| main.rs:390:26:390:38 | thing_s2.m1() | A | main.rs:248:5:249:14 | S2 | +| main.rs:390:26:390:40 | ... .a | | main.rs:248:5:249:14 | S2 | +| main.rs:391:13:391:14 | s3 | | main.rs:250:5:251:14 | S3 | +| main.rs:391:22:391:29 | thing_s3 | | main.rs:235:5:238:5 | MyThing | +| main.rs:391:22:391:29 | thing_s3 | A | main.rs:250:5:251:14 | S3 | +| main.rs:391:22:391:34 | thing_s3.m1() | | main.rs:250:5:251:14 | S3 | +| main.rs:392:9:392:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:392:18:392:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:392:18:392:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:392:18:392:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:392:18:392:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:392:18:392:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:392:26:392:27 | s3 | | main.rs:250:5:251:14 | S3 | +| main.rs:394:13:394:14 | p1 | | main.rs:240:5:244:5 | MyPair | +| main.rs:394:13:394:14 | p1 | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:394:13:394:14 | p1 | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:394:18:394:42 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:394:18:394:42 | MyPair {...} | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:394:18:394:42 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:394:31:394:32 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:394:39:394:40 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:395:9:395:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:395:18:395:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:395:18:395:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:395:18:395:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:395:18:395:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:395:18:395:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:395:26:395:27 | p1 | | main.rs:240:5:244:5 | MyPair | +| main.rs:395:26:395:27 | p1 | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:395:26:395:27 | p1 | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:395:26:395:32 | p1.m1() | | main.rs:246:5:247:14 | S1 | +| main.rs:397:13:397:14 | p2 | | main.rs:240:5:244:5 | MyPair | +| main.rs:397:13:397:14 | p2 | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:397:13:397:14 | p2 | P2 | main.rs:248:5:249:14 | S2 | +| main.rs:397:18:397:42 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:397:18:397:42 | MyPair {...} | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:397:18:397:42 | MyPair {...} | P2 | main.rs:248:5:249:14 | S2 | +| main.rs:397:31:397:32 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:397:39:397:40 | S2 | | main.rs:248:5:249:14 | S2 | +| main.rs:398:9:398:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:398:18:398:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:398:18:398:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:398:18:398:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:398:18:398:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:398:18:398:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:398:26:398:26 | x | | main.rs:235:5:236:14 | S1 | -| main.rs:399:13:399:13 | y | | main.rs:235:5:236:14 | S1 | -| main.rs:399:17:399:17 | a | | main.rs:229:5:233:5 | MyPair | -| main.rs:399:17:399:17 | a | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:399:17:399:17 | a | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:399:17:399:23 | a.snd() | | main.rs:235:5:236:14 | S1 | -| main.rs:400:9:400:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:400:18:400:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:400:18:400:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:400:18:400:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:400:18:400:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:400:18:400:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:400:26:400:26 | y | | main.rs:235:5:236:14 | S1 | -| main.rs:406:13:406:13 | b | | main.rs:229:5:233:5 | MyPair | -| main.rs:406:13:406:13 | b | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:406:13:406:13 | b | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:406:17:406:41 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:406:17:406:41 | MyPair {...} | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:406:17:406:41 | MyPair {...} | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:406:30:406:31 | S2 | | main.rs:237:5:238:14 | S2 | -| main.rs:406:38:406:39 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:407:13:407:13 | x | | main.rs:235:5:236:14 | S1 | -| main.rs:407:17:407:17 | b | | main.rs:229:5:233:5 | MyPair | -| main.rs:407:17:407:17 | b | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:407:17:407:17 | b | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:407:17:407:23 | b.fst() | | main.rs:235:5:236:14 | S1 | -| main.rs:408:9:408:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:408:18:408:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:408:18:408:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:408:18:408:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:408:18:408:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:408:18:408:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:408:26:408:26 | x | | main.rs:235:5:236:14 | S1 | -| main.rs:409:13:409:13 | y | | main.rs:237:5:238:14 | S2 | -| main.rs:409:17:409:17 | b | | main.rs:229:5:233:5 | MyPair | -| main.rs:409:17:409:17 | b | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:409:17:409:17 | b | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:409:17:409:23 | b.snd() | | main.rs:237:5:238:14 | S2 | -| main.rs:410:9:410:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:410:18:410:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:410:18:410:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:410:18:410:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:410:18:410:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:410:18:410:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:410:26:410:26 | y | | main.rs:237:5:238:14 | S2 | -| main.rs:414:13:414:13 | x | | main.rs:235:5:236:14 | S1 | -| main.rs:414:17:414:39 | call_trait_m1(...) | | main.rs:235:5:236:14 | S1 | -| main.rs:414:31:414:38 | thing_s1 | | main.rs:224:5:227:5 | MyThing | -| main.rs:414:31:414:38 | thing_s1 | A | main.rs:235:5:236:14 | S1 | -| main.rs:415:9:415:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:415:18:415:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:415:18:415:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:415:18:415:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:415:18:415:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:415:18:415:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:415:26:415:26 | x | | main.rs:235:5:236:14 | S1 | -| main.rs:416:13:416:13 | y | | main.rs:224:5:227:5 | MyThing | -| main.rs:416:13:416:13 | y | A | main.rs:237:5:238:14 | S2 | -| main.rs:416:17:416:39 | call_trait_m1(...) | | main.rs:224:5:227:5 | MyThing | -| main.rs:416:17:416:39 | call_trait_m1(...) | A | main.rs:237:5:238:14 | S2 | -| main.rs:416:31:416:38 | thing_s2 | | main.rs:224:5:227:5 | MyThing | -| main.rs:416:31:416:38 | thing_s2 | A | main.rs:237:5:238:14 | S2 | -| main.rs:417:9:417:29 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:417:18:417:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:417:18:417:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:417:18:417:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:417:18:417:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:417:18:417:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:417:26:417:26 | y | | main.rs:224:5:227:5 | MyThing | -| main.rs:417:26:417:26 | y | A | main.rs:237:5:238:14 | S2 | -| main.rs:417:26:417:28 | y.a | | main.rs:237:5:238:14 | S2 | -| main.rs:420:13:420:13 | a | | main.rs:229:5:233:5 | MyPair | -| main.rs:420:13:420:13 | a | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:420:13:420:13 | a | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:420:17:420:41 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:420:17:420:41 | MyPair {...} | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:420:17:420:41 | MyPair {...} | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:420:30:420:31 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:420:38:420:39 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:421:13:421:13 | x | | main.rs:235:5:236:14 | S1 | -| main.rs:421:17:421:26 | get_fst(...) | | main.rs:235:5:236:14 | S1 | -| main.rs:421:25:421:25 | a | | main.rs:229:5:233:5 | MyPair | -| main.rs:421:25:421:25 | a | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:421:25:421:25 | a | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:422:9:422:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:422:18:422:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:422:18:422:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:422:18:422:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:422:18:422:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:422:18:422:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:422:26:422:26 | x | | main.rs:235:5:236:14 | S1 | -| main.rs:423:13:423:13 | y | | main.rs:235:5:236:14 | S1 | -| main.rs:423:17:423:26 | get_snd(...) | | main.rs:235:5:236:14 | S1 | -| main.rs:423:25:423:25 | a | | main.rs:229:5:233:5 | MyPair | -| main.rs:423:25:423:25 | a | P1 | main.rs:235:5:236:14 | S1 | -| main.rs:423:25:423:25 | a | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:424:9:424:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:424:18:424:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:424:18:424:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:424:18:424:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:424:18:424:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:424:18:424:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:424:26:424:26 | y | | main.rs:235:5:236:14 | S1 | -| main.rs:427:13:427:13 | b | | main.rs:229:5:233:5 | MyPair | -| main.rs:427:13:427:13 | b | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:427:13:427:13 | b | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:427:17:427:41 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:427:17:427:41 | MyPair {...} | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:427:17:427:41 | MyPair {...} | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:427:30:427:31 | S2 | | main.rs:237:5:238:14 | S2 | -| main.rs:427:38:427:39 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:428:13:428:13 | x | | main.rs:235:5:236:14 | S1 | -| main.rs:428:17:428:26 | get_fst(...) | | main.rs:235:5:236:14 | S1 | -| main.rs:428:25:428:25 | b | | main.rs:229:5:233:5 | MyPair | -| main.rs:428:25:428:25 | b | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:428:25:428:25 | b | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:429:9:429:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:429:18:429:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:429:18:429:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:429:18:429:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:429:18:429:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:429:18:429:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:429:26:429:26 | x | | main.rs:235:5:236:14 | S1 | -| main.rs:430:13:430:13 | y | | main.rs:237:5:238:14 | S2 | -| main.rs:430:17:430:26 | get_snd(...) | | main.rs:237:5:238:14 | S2 | -| main.rs:430:25:430:25 | b | | main.rs:229:5:233:5 | MyPair | -| main.rs:430:25:430:25 | b | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:430:25:430:25 | b | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:431:9:431:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:431:18:431:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:431:18:431:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:431:18:431:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:431:18:431:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:431:18:431:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:431:26:431:26 | y | | main.rs:237:5:238:14 | S2 | -| main.rs:433:13:433:13 | c | | main.rs:229:5:233:5 | MyPair | -| main.rs:433:13:433:13 | c | P1 | main.rs:239:5:240:14 | S3 | -| main.rs:433:13:433:13 | c | P2 | main.rs:229:5:233:5 | MyPair | -| main.rs:433:13:433:13 | c | P2.P1 | main.rs:237:5:238:14 | S2 | -| main.rs:433:13:433:13 | c | P2.P2 | main.rs:235:5:236:14 | S1 | -| main.rs:433:17:436:9 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:433:17:436:9 | MyPair {...} | P1 | main.rs:239:5:240:14 | S3 | -| main.rs:433:17:436:9 | MyPair {...} | P2 | main.rs:229:5:233:5 | MyPair | -| main.rs:433:17:436:9 | MyPair {...} | P2.P1 | main.rs:237:5:238:14 | S2 | -| main.rs:433:17:436:9 | MyPair {...} | P2.P2 | main.rs:235:5:236:14 | S1 | -| main.rs:434:17:434:18 | S3 | | main.rs:239:5:240:14 | S3 | -| main.rs:435:17:435:41 | MyPair {...} | | main.rs:229:5:233:5 | MyPair | -| main.rs:435:17:435:41 | MyPair {...} | P1 | main.rs:237:5:238:14 | S2 | -| main.rs:435:17:435:41 | MyPair {...} | P2 | main.rs:235:5:236:14 | S1 | -| main.rs:435:30:435:31 | S2 | | main.rs:237:5:238:14 | S2 | -| main.rs:435:38:435:39 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:437:13:437:13 | x | | main.rs:235:5:236:14 | S1 | -| main.rs:437:17:437:30 | get_snd_fst(...) | | main.rs:235:5:236:14 | S1 | -| main.rs:437:29:437:29 | c | | main.rs:229:5:233:5 | MyPair | -| main.rs:437:29:437:29 | c | P1 | main.rs:239:5:240:14 | S3 | -| main.rs:437:29:437:29 | c | P2 | main.rs:229:5:233:5 | MyPair | -| main.rs:437:29:437:29 | c | P2.P1 | main.rs:237:5:238:14 | S2 | -| main.rs:437:29:437:29 | c | P2.P2 | main.rs:235:5:236:14 | S1 | -| main.rs:439:13:439:17 | thing | | main.rs:224:5:227:5 | MyThing | -| main.rs:439:13:439:17 | thing | A | main.rs:235:5:236:14 | S1 | -| main.rs:439:21:439:37 | MyThing {...} | | main.rs:224:5:227:5 | MyThing | -| main.rs:439:21:439:37 | MyThing {...} | A | main.rs:235:5:236:14 | S1 | -| main.rs:439:34:439:35 | S1 | | main.rs:235:5:236:14 | S1 | -| main.rs:440:13:440:13 | i | | main.rs:235:5:236:14 | S1 | -| main.rs:440:17:440:21 | thing | | main.rs:224:5:227:5 | MyThing | -| main.rs:440:17:440:21 | thing | A | main.rs:235:5:236:14 | S1 | -| main.rs:440:17:440:34 | thing.convert_to() | | main.rs:235:5:236:14 | S1 | -| main.rs:441:28:441:32 | thing | | main.rs:224:5:227:5 | MyThing | -| main.rs:441:28:441:32 | thing | A | main.rs:235:5:236:14 | S1 | -| main.rs:450:26:450:29 | SelfParam | | main.rs:449:5:453:5 | Self [trait OverlappingTrait] | -| main.rs:452:28:452:31 | SelfParam | | main.rs:449:5:453:5 | Self [trait OverlappingTrait] | -| main.rs:452:34:452:35 | s1 | | main.rs:446:5:447:14 | S1 | -| main.rs:457:26:457:29 | SelfParam | | main.rs:446:5:447:14 | S1 | -| main.rs:457:38:459:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:458:13:458:14 | S1 | | main.rs:446:5:447:14 | S1 | -| main.rs:462:28:462:31 | SelfParam | | main.rs:446:5:447:14 | S1 | -| main.rs:462:34:462:35 | s1 | | main.rs:446:5:447:14 | S1 | -| main.rs:462:48:464:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:463:13:463:14 | S1 | | main.rs:446:5:447:14 | S1 | -| main.rs:469:26:469:29 | SelfParam | | main.rs:446:5:447:14 | S1 | -| main.rs:469:38:471:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:470:13:470:16 | self | | main.rs:446:5:447:14 | S1 | -| main.rs:474:28:474:31 | SelfParam | | main.rs:446:5:447:14 | S1 | -| main.rs:474:40:476:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:475:13:475:16 | self | | main.rs:446:5:447:14 | S1 | -| main.rs:483:26:483:29 | SelfParam | | main.rs:479:5:479:22 | S2 | -| main.rs:483:26:483:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:483:38:485:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:484:13:484:14 | S1 | | main.rs:446:5:447:14 | S1 | -| main.rs:488:28:488:31 | SelfParam | | main.rs:479:5:479:22 | S2 | -| main.rs:488:28:488:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:488:40:490:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:489:13:489:14 | S1 | | main.rs:446:5:447:14 | S1 | -| main.rs:495:26:495:29 | SelfParam | | main.rs:479:5:479:22 | S2 | -| main.rs:495:26:495:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:495:38:497:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:496:13:496:14 | S1 | | main.rs:446:5:447:14 | S1 | -| main.rs:500:28:500:31 | SelfParam | | main.rs:479:5:479:22 | S2 | -| main.rs:500:28:500:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:500:34:500:35 | s1 | | main.rs:446:5:447:14 | S1 | -| main.rs:500:48:502:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:501:13:501:14 | S1 | | main.rs:446:5:447:14 | S1 | -| main.rs:507:26:507:29 | SelfParam | | main.rs:479:5:479:22 | S2 | -| main.rs:507:26:507:29 | SelfParam | T2 | main.rs:446:5:447:14 | S1 | -| main.rs:507:38:509:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:508:13:508:14 | S1 | | main.rs:446:5:447:14 | S1 | -| main.rs:512:28:512:31 | SelfParam | | main.rs:479:5:479:22 | S2 | -| main.rs:512:28:512:31 | SelfParam | T2 | main.rs:446:5:447:14 | S1 | -| main.rs:512:34:512:35 | s1 | | main.rs:446:5:447:14 | S1 | -| main.rs:512:48:514:9 | { ... } | | main.rs:446:5:447:14 | S1 | -| main.rs:513:13:513:14 | S1 | | main.rs:446:5:447:14 | S1 | -| main.rs:521:14:521:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:521:14:521:18 | SelfParam | TRef | main.rs:520:5:522:5 | Self [trait OverlappingTrait2] | -| main.rs:521:21:521:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:521:21:521:21 | x | TRef | main.rs:520:29:520:29 | T | -| main.rs:526:14:526:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:526:14:526:18 | SelfParam | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:526:14:526:18 | SelfParam | TRef.T3 | main.rs:524:10:524:10 | T | -| main.rs:526:21:526:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:526:21:526:21 | x | TRef | main.rs:524:10:524:10 | T | -| main.rs:526:37:528:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:526:37:528:9 | { ... } | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:526:37:528:9 | { ... } | TRef.T3 | main.rs:524:10:524:10 | T | -| main.rs:527:13:527:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:527:13:527:16 | self | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:527:13:527:16 | self | TRef.T3 | main.rs:524:10:524:10 | T | -| main.rs:533:14:533:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:533:14:533:18 | SelfParam | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:533:14:533:18 | SelfParam | TRef.T3 | main.rs:531:10:531:10 | T | -| main.rs:533:21:533:21 | x | | main.rs:531:10:531:10 | T | -| main.rs:533:36:535:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:533:36:535:9 | { ... } | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:533:36:535:9 | { ... } | TRef.T3 | main.rs:531:10:531:10 | T | -| main.rs:534:13:534:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:534:13:534:16 | self | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:534:13:534:16 | self | TRef.T3 | main.rs:531:10:531:10 | T | -| main.rs:540:14:540:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:540:14:540:18 | SelfParam | TRef | main.rs:538:5:541:5 | Self [trait MyTrait1] | -| main.rs:540:21:540:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:550:14:550:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:550:14:550:18 | SelfParam | TRef | main.rs:545:5:546:14 | S4 | -| main.rs:550:21:550:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:560:14:560:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:560:14:560:18 | SelfParam | TRef | main.rs:555:5:556:22 | S5 | -| main.rs:560:14:560:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:560:21:560:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:569:16:595:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:570:13:570:13 | x | | main.rs:446:5:447:14 | S1 | -| main.rs:570:17:570:18 | S1 | | main.rs:446:5:447:14 | S1 | -| main.rs:571:9:571:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:571:18:571:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:571:18:571:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:571:18:571:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:571:18:571:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:571:18:571:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:571:26:571:26 | x | | main.rs:446:5:447:14 | S1 | -| main.rs:571:26:571:42 | x.common_method() | | main.rs:446:5:447:14 | S1 | -| main.rs:572:9:572:46 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:572:18:572:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:572:18:572:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:572:18:572:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:572:18:572:45 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:572:18:572:45 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:572:26:572:45 | ...::common_method(...) | | main.rs:446:5:447:14 | S1 | -| main.rs:572:44:572:44 | x | | main.rs:446:5:447:14 | S1 | -| main.rs:573:9:573:45 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:573:18:573:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:573:18:573:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:573:18:573:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:573:18:573:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:573:18:573:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:573:26:573:26 | x | | main.rs:446:5:447:14 | S1 | -| main.rs:573:26:573:44 | x.common_method_2() | | main.rs:446:5:447:14 | S1 | -| main.rs:574:9:574:48 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:574:18:574:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:574:18:574:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:574:18:574:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:574:18:574:47 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:574:18:574:47 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:574:26:574:47 | ...::common_method_2(...) | | main.rs:446:5:447:14 | S1 | -| main.rs:574:46:574:46 | x | | main.rs:446:5:447:14 | S1 | -| main.rs:576:13:576:13 | y | | main.rs:479:5:479:22 | S2 | -| main.rs:576:13:576:13 | y | T2 | main.rs:446:5:447:14 | S1 | -| main.rs:576:17:576:22 | S2(...) | | main.rs:479:5:479:22 | S2 | -| main.rs:576:17:576:22 | S2(...) | T2 | main.rs:446:5:447:14 | S1 | -| main.rs:576:20:576:21 | S1 | | main.rs:446:5:447:14 | S1 | -| main.rs:577:9:577:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:577:18:577:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:577:18:577:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:577:18:577:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:577:18:577:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:577:18:577:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:577:26:577:26 | y | | main.rs:479:5:479:22 | S2 | -| main.rs:577:26:577:26 | y | T2 | main.rs:446:5:447:14 | S1 | -| main.rs:577:26:577:42 | y.common_method() | | main.rs:446:5:447:14 | S1 | -| main.rs:578:9:578:57 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:578:18:578:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:578:18:578:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:578:18:578:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:578:18:578:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:578:18:578:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:578:26:578:56 | ...::common_method(...) | | main.rs:446:5:447:14 | S1 | -| main.rs:578:50:578:55 | S2(...) | | main.rs:479:5:479:22 | S2 | -| main.rs:578:50:578:55 | S2(...) | T2 | main.rs:446:5:447:14 | S1 | -| main.rs:578:53:578:54 | S1 | | main.rs:446:5:447:14 | S1 | -| main.rs:580:13:580:13 | z | | main.rs:479:5:479:22 | S2 | -| main.rs:580:13:580:13 | z | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:580:17:580:21 | S2(...) | | main.rs:479:5:479:22 | S2 | -| main.rs:580:17:580:21 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:580:20:580:20 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:581:9:581:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:581:18:581:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:581:18:581:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:581:18:581:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:581:18:581:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:581:18:581:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:581:26:581:26 | z | | main.rs:479:5:479:22 | S2 | -| main.rs:581:26:581:26 | z | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:581:26:581:42 | z.common_method() | | main.rs:446:5:447:14 | S1 | -| main.rs:582:9:582:50 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:398:18:398:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:398:18:398:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:398:18:398:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:398:26:398:27 | p2 | | main.rs:240:5:244:5 | MyPair | +| main.rs:398:26:398:27 | p2 | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:398:26:398:27 | p2 | P2 | main.rs:248:5:249:14 | S2 | +| main.rs:398:26:398:32 | p2.m1() | | main.rs:250:5:251:14 | S3 | +| main.rs:400:13:400:14 | p3 | | main.rs:240:5:244:5 | MyPair | +| main.rs:400:13:400:14 | p3 | P1 | main.rs:235:5:238:5 | MyThing | +| main.rs:400:13:400:14 | p3 | P1.A | main.rs:246:5:247:14 | S1 | +| main.rs:400:13:400:14 | p3 | P2 | main.rs:250:5:251:14 | S3 | +| main.rs:400:18:403:9 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:400:18:403:9 | MyPair {...} | P1 | main.rs:235:5:238:5 | MyThing | +| main.rs:400:18:403:9 | MyPair {...} | P1.A | main.rs:246:5:247:14 | S1 | +| main.rs:400:18:403:9 | MyPair {...} | P2 | main.rs:250:5:251:14 | S3 | +| main.rs:401:17:401:33 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | +| main.rs:401:17:401:33 | MyThing {...} | A | main.rs:246:5:247:14 | S1 | +| main.rs:401:30:401:31 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:402:17:402:18 | S3 | | main.rs:250:5:251:14 | S3 | +| main.rs:404:9:404:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:404:18:404:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:404:18:404:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:404:18:404:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:404:18:404:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:404:18:404:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:404:26:404:27 | p3 | | main.rs:240:5:244:5 | MyPair | +| main.rs:404:26:404:27 | p3 | P1 | main.rs:235:5:238:5 | MyThing | +| main.rs:404:26:404:27 | p3 | P1.A | main.rs:246:5:247:14 | S1 | +| main.rs:404:26:404:27 | p3 | P2 | main.rs:250:5:251:14 | S3 | +| main.rs:404:26:404:32 | p3.m1() | | main.rs:246:5:247:14 | S1 | +| main.rs:407:13:407:13 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:407:13:407:13 | a | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:407:13:407:13 | a | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:407:17:407:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:407:17:407:41 | MyPair {...} | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:407:17:407:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:407:30:407:31 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:407:38:407:39 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:408:13:408:13 | x | | main.rs:246:5:247:14 | S1 | +| main.rs:408:17:408:17 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:408:17:408:17 | a | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:408:17:408:17 | a | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:408:17:408:23 | a.fst() | | main.rs:246:5:247:14 | S1 | +| main.rs:409:9:409:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:409:18:409:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:409:18:409:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:409:18:409:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:409:18:409:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:409:18:409:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:409:26:409:26 | x | | main.rs:246:5:247:14 | S1 | +| main.rs:410:13:410:13 | y | | main.rs:246:5:247:14 | S1 | +| main.rs:410:17:410:17 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:410:17:410:17 | a | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:410:17:410:17 | a | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:410:17:410:23 | a.snd() | | main.rs:246:5:247:14 | S1 | +| main.rs:411:9:411:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:411:18:411:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:411:18:411:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:411:18:411:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:411:18:411:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:411:18:411:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:411:26:411:26 | y | | main.rs:246:5:247:14 | S1 | +| main.rs:417:13:417:13 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:417:13:417:13 | b | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:417:13:417:13 | b | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:417:17:417:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:417:17:417:41 | MyPair {...} | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:417:17:417:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:417:30:417:31 | S2 | | main.rs:248:5:249:14 | S2 | +| main.rs:417:38:417:39 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:418:13:418:13 | x | | main.rs:246:5:247:14 | S1 | +| main.rs:418:17:418:17 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:418:17:418:17 | b | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:418:17:418:17 | b | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:418:17:418:23 | b.fst() | | main.rs:246:5:247:14 | S1 | +| main.rs:419:9:419:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:419:18:419:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:419:18:419:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:419:18:419:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:419:18:419:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:419:18:419:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:419:26:419:26 | x | | main.rs:246:5:247:14 | S1 | +| main.rs:420:13:420:13 | y | | main.rs:248:5:249:14 | S2 | +| main.rs:420:17:420:17 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:420:17:420:17 | b | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:420:17:420:17 | b | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:420:17:420:23 | b.snd() | | main.rs:248:5:249:14 | S2 | +| main.rs:421:9:421:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:421:18:421:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:421:18:421:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:421:18:421:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:421:18:421:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:421:18:421:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:421:26:421:26 | y | | main.rs:248:5:249:14 | S2 | +| main.rs:425:13:425:13 | x | | main.rs:246:5:247:14 | S1 | +| main.rs:425:17:425:39 | call_trait_m1(...) | | main.rs:246:5:247:14 | S1 | +| main.rs:425:31:425:38 | thing_s1 | | main.rs:235:5:238:5 | MyThing | +| main.rs:425:31:425:38 | thing_s1 | A | main.rs:246:5:247:14 | S1 | +| main.rs:426:9:426:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:426:18:426:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:426:18:426:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:426:18:426:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:426:18:426:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:426:18:426:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:426:26:426:26 | x | | main.rs:246:5:247:14 | S1 | +| main.rs:427:13:427:13 | y | | main.rs:235:5:238:5 | MyThing | +| main.rs:427:13:427:13 | y | A | main.rs:248:5:249:14 | S2 | +| main.rs:427:17:427:39 | call_trait_m1(...) | | main.rs:235:5:238:5 | MyThing | +| main.rs:427:17:427:39 | call_trait_m1(...) | A | main.rs:248:5:249:14 | S2 | +| main.rs:427:31:427:38 | thing_s2 | | main.rs:235:5:238:5 | MyThing | +| main.rs:427:31:427:38 | thing_s2 | A | main.rs:248:5:249:14 | S2 | +| main.rs:428:9:428:29 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:428:18:428:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:428:18:428:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:428:18:428:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:428:18:428:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:428:18:428:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:428:26:428:26 | y | | main.rs:235:5:238:5 | MyThing | +| main.rs:428:26:428:26 | y | A | main.rs:248:5:249:14 | S2 | +| main.rs:428:26:428:28 | y.a | | main.rs:248:5:249:14 | S2 | +| main.rs:431:13:431:13 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:431:13:431:13 | a | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:431:13:431:13 | a | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:431:17:431:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:431:17:431:41 | MyPair {...} | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:431:17:431:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:431:30:431:31 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:431:38:431:39 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:432:13:432:13 | x | | main.rs:246:5:247:14 | S1 | +| main.rs:432:17:432:26 | get_fst(...) | | main.rs:246:5:247:14 | S1 | +| main.rs:432:25:432:25 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:432:25:432:25 | a | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:432:25:432:25 | a | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:433:9:433:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:433:18:433:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:433:18:433:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:433:18:433:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:433:18:433:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:433:18:433:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:433:26:433:26 | x | | main.rs:246:5:247:14 | S1 | +| main.rs:434:13:434:13 | y | | main.rs:246:5:247:14 | S1 | +| main.rs:434:17:434:26 | get_snd(...) | | main.rs:246:5:247:14 | S1 | +| main.rs:434:25:434:25 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:434:25:434:25 | a | P1 | main.rs:246:5:247:14 | S1 | +| main.rs:434:25:434:25 | a | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:435:9:435:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:435:18:435:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:435:18:435:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:435:18:435:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:435:18:435:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:435:18:435:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:435:26:435:26 | y | | main.rs:246:5:247:14 | S1 | +| main.rs:438:13:438:13 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:438:13:438:13 | b | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:438:13:438:13 | b | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:438:17:438:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:438:17:438:41 | MyPair {...} | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:438:17:438:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:438:30:438:31 | S2 | | main.rs:248:5:249:14 | S2 | +| main.rs:438:38:438:39 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:439:13:439:13 | x | | main.rs:246:5:247:14 | S1 | +| main.rs:439:17:439:26 | get_fst(...) | | main.rs:246:5:247:14 | S1 | +| main.rs:439:25:439:25 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:439:25:439:25 | b | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:439:25:439:25 | b | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:440:9:440:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:440:18:440:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:440:18:440:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:440:18:440:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:440:18:440:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:440:18:440:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:440:26:440:26 | x | | main.rs:246:5:247:14 | S1 | +| main.rs:441:13:441:13 | y | | main.rs:248:5:249:14 | S2 | +| main.rs:441:17:441:26 | get_snd(...) | | main.rs:248:5:249:14 | S2 | +| main.rs:441:25:441:25 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:441:25:441:25 | b | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:441:25:441:25 | b | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:442:9:442:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:442:18:442:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:442:18:442:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:442:18:442:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:442:18:442:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:442:18:442:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:442:26:442:26 | y | | main.rs:248:5:249:14 | S2 | +| main.rs:444:13:444:13 | c | | main.rs:240:5:244:5 | MyPair | +| main.rs:444:13:444:13 | c | P1 | main.rs:250:5:251:14 | S3 | +| main.rs:444:13:444:13 | c | P2 | main.rs:240:5:244:5 | MyPair | +| main.rs:444:13:444:13 | c | P2.P1 | main.rs:248:5:249:14 | S2 | +| main.rs:444:13:444:13 | c | P2.P2 | main.rs:246:5:247:14 | S1 | +| main.rs:444:17:447:9 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:444:17:447:9 | MyPair {...} | P1 | main.rs:250:5:251:14 | S3 | +| main.rs:444:17:447:9 | MyPair {...} | P2 | main.rs:240:5:244:5 | MyPair | +| main.rs:444:17:447:9 | MyPair {...} | P2.P1 | main.rs:248:5:249:14 | S2 | +| main.rs:444:17:447:9 | MyPair {...} | P2.P2 | main.rs:246:5:247:14 | S1 | +| main.rs:445:17:445:18 | S3 | | main.rs:250:5:251:14 | S3 | +| main.rs:446:17:446:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | +| main.rs:446:17:446:41 | MyPair {...} | P1 | main.rs:248:5:249:14 | S2 | +| main.rs:446:17:446:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:446:30:446:31 | S2 | | main.rs:248:5:249:14 | S2 | +| main.rs:446:38:446:39 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:448:13:448:13 | x | | main.rs:246:5:247:14 | S1 | +| main.rs:448:17:448:30 | get_snd_fst(...) | | main.rs:246:5:247:14 | S1 | +| main.rs:448:29:448:29 | c | | main.rs:240:5:244:5 | MyPair | +| main.rs:448:29:448:29 | c | P1 | main.rs:250:5:251:14 | S3 | +| main.rs:448:29:448:29 | c | P2 | main.rs:240:5:244:5 | MyPair | +| main.rs:448:29:448:29 | c | P2.P1 | main.rs:248:5:249:14 | S2 | +| main.rs:448:29:448:29 | c | P2.P2 | main.rs:246:5:247:14 | S1 | +| main.rs:450:13:450:17 | thing | | main.rs:235:5:238:5 | MyThing | +| main.rs:450:13:450:17 | thing | A | main.rs:246:5:247:14 | S1 | +| main.rs:450:21:450:37 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | +| main.rs:450:21:450:37 | MyThing {...} | A | main.rs:246:5:247:14 | S1 | +| main.rs:450:34:450:35 | S1 | | main.rs:246:5:247:14 | S1 | +| main.rs:451:13:451:13 | i | | main.rs:246:5:247:14 | S1 | +| main.rs:451:17:451:21 | thing | | main.rs:235:5:238:5 | MyThing | +| main.rs:451:17:451:21 | thing | A | main.rs:246:5:247:14 | S1 | +| main.rs:451:17:451:34 | thing.convert_to() | | main.rs:246:5:247:14 | S1 | +| main.rs:452:28:452:32 | thing | | main.rs:235:5:238:5 | MyThing | +| main.rs:452:28:452:32 | thing | A | main.rs:246:5:247:14 | S1 | +| main.rs:461:26:461:29 | SelfParam | | main.rs:460:5:464:5 | Self [trait OverlappingTrait] | +| main.rs:463:28:463:31 | SelfParam | | main.rs:460:5:464:5 | Self [trait OverlappingTrait] | +| main.rs:463:34:463:35 | s1 | | main.rs:457:5:458:14 | S1 | +| main.rs:468:26:468:29 | SelfParam | | main.rs:457:5:458:14 | S1 | +| main.rs:468:38:470:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:469:13:469:14 | S1 | | main.rs:457:5:458:14 | S1 | +| main.rs:473:28:473:31 | SelfParam | | main.rs:457:5:458:14 | S1 | +| main.rs:473:34:473:35 | s1 | | main.rs:457:5:458:14 | S1 | +| main.rs:473:48:475:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:474:13:474:14 | S1 | | main.rs:457:5:458:14 | S1 | +| main.rs:480:26:480:29 | SelfParam | | main.rs:457:5:458:14 | S1 | +| main.rs:480:38:482:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:481:13:481:16 | self | | main.rs:457:5:458:14 | S1 | +| main.rs:485:28:485:31 | SelfParam | | main.rs:457:5:458:14 | S1 | +| main.rs:485:40:487:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:486:13:486:16 | self | | main.rs:457:5:458:14 | S1 | +| main.rs:494:26:494:29 | SelfParam | | main.rs:490:5:490:22 | S2 | +| main.rs:494:26:494:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:494:38:496:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:495:13:495:14 | S1 | | main.rs:457:5:458:14 | S1 | +| main.rs:499:28:499:31 | SelfParam | | main.rs:490:5:490:22 | S2 | +| main.rs:499:28:499:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:499:40:501:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:500:13:500:14 | S1 | | main.rs:457:5:458:14 | S1 | +| main.rs:506:26:506:29 | SelfParam | | main.rs:490:5:490:22 | S2 | +| main.rs:506:26:506:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:506:38:508:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:507:13:507:14 | S1 | | main.rs:457:5:458:14 | S1 | +| main.rs:511:28:511:31 | SelfParam | | main.rs:490:5:490:22 | S2 | +| main.rs:511:28:511:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:511:34:511:35 | s1 | | main.rs:457:5:458:14 | S1 | +| main.rs:511:48:513:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:512:13:512:14 | S1 | | main.rs:457:5:458:14 | S1 | +| main.rs:518:26:518:29 | SelfParam | | main.rs:490:5:490:22 | S2 | +| main.rs:518:26:518:29 | SelfParam | T2 | main.rs:457:5:458:14 | S1 | +| main.rs:518:38:520:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:519:13:519:14 | S1 | | main.rs:457:5:458:14 | S1 | +| main.rs:523:28:523:31 | SelfParam | | main.rs:490:5:490:22 | S2 | +| main.rs:523:28:523:31 | SelfParam | T2 | main.rs:457:5:458:14 | S1 | +| main.rs:523:34:523:35 | s1 | | main.rs:457:5:458:14 | S1 | +| main.rs:523:48:525:9 | { ... } | | main.rs:457:5:458:14 | S1 | +| main.rs:524:13:524:14 | S1 | | main.rs:457:5:458:14 | S1 | +| main.rs:532:14:532:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:532:14:532:18 | SelfParam | TRef | main.rs:531:5:533:5 | Self [trait OverlappingTrait2] | +| main.rs:532:21:532:21 | x | | {EXTERNAL LOCATION} | & | +| main.rs:532:21:532:21 | x | TRef | main.rs:531:29:531:29 | T | +| main.rs:537:14:537:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:537:14:537:18 | SelfParam | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:537:14:537:18 | SelfParam | TRef.T3 | main.rs:535:10:535:10 | T | +| main.rs:537:21:537:21 | x | | {EXTERNAL LOCATION} | & | +| main.rs:537:21:537:21 | x | TRef | main.rs:535:10:535:10 | T | +| main.rs:537:37:539:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:537:37:539:9 | { ... } | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:537:37:539:9 | { ... } | TRef.T3 | main.rs:535:10:535:10 | T | +| main.rs:538:13:538:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:538:13:538:16 | self | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:538:13:538:16 | self | TRef.T3 | main.rs:535:10:535:10 | T | +| main.rs:544:14:544:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:544:14:544:18 | SelfParam | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:544:14:544:18 | SelfParam | TRef.T3 | main.rs:542:10:542:10 | T | +| main.rs:544:21:544:21 | x | | main.rs:542:10:542:10 | T | +| main.rs:544:36:546:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:544:36:546:9 | { ... } | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:544:36:546:9 | { ... } | TRef.T3 | main.rs:542:10:542:10 | T | +| main.rs:545:13:545:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:545:13:545:16 | self | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:545:13:545:16 | self | TRef.T3 | main.rs:542:10:542:10 | T | +| main.rs:551:14:551:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:551:14:551:18 | SelfParam | TRef | main.rs:549:5:552:5 | Self [trait MyTrait1] | +| main.rs:551:21:551:22 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:561:14:561:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:561:14:561:18 | SelfParam | TRef | main.rs:556:5:557:14 | S4 | +| main.rs:561:21:561:22 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:571:14:571:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:571:14:571:18 | SelfParam | TRef | main.rs:566:5:567:22 | S5 | +| main.rs:571:14:571:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:571:21:571:22 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:580:16:606:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:581:13:581:13 | x | | main.rs:457:5:458:14 | S1 | +| main.rs:581:17:581:18 | S1 | | main.rs:457:5:458:14 | S1 | +| main.rs:582:9:582:43 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:582:18:582:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:582:18:582:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:582:18:582:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:582:26:582:49 | ...::common_method(...) | | main.rs:446:5:447:14 | S1 | -| main.rs:582:44:582:48 | S2(...) | | main.rs:479:5:479:22 | S2 | -| main.rs:582:44:582:48 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:582:47:582:47 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:583:9:583:57 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:582:18:582:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:582:18:582:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:582:18:582:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:582:26:582:26 | x | | main.rs:457:5:458:14 | S1 | +| main.rs:582:26:582:42 | x.common_method() | | main.rs:457:5:458:14 | S1 | +| main.rs:583:9:583:46 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:583:18:583:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:583:18:583:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:583:18:583:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:583:26:583:56 | ...::common_method(...) | | main.rs:446:5:447:14 | S1 | -| main.rs:583:51:583:55 | S2(...) | | main.rs:479:5:479:22 | S2 | -| main.rs:583:51:583:55 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:583:54:583:54 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:585:13:585:13 | w | | main.rs:517:5:518:22 | S3 | -| main.rs:585:13:585:13 | w | T3 | main.rs:446:5:447:14 | S1 | -| main.rs:585:17:585:22 | S3(...) | | main.rs:517:5:518:22 | S3 | -| main.rs:585:17:585:22 | S3(...) | T3 | main.rs:446:5:447:14 | S1 | -| main.rs:585:20:585:21 | S1 | | main.rs:446:5:447:14 | S1 | -| main.rs:586:9:586:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:586:18:586:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:586:18:586:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:586:18:586:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:586:18:586:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:586:18:586:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:586:26:586:26 | w | | main.rs:517:5:518:22 | S3 | -| main.rs:586:26:586:26 | w | T3 | main.rs:446:5:447:14 | S1 | -| main.rs:586:26:586:31 | w.m(...) | | {EXTERNAL LOCATION} | & | -| main.rs:586:26:586:31 | w.m(...) | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:586:26:586:31 | w.m(...) | TRef.T3 | main.rs:446:5:447:14 | S1 | -| main.rs:586:30:586:30 | x | | main.rs:446:5:447:14 | S1 | -| main.rs:587:9:587:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:587:18:587:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:587:18:587:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:587:18:587:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:587:18:587:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:587:18:587:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:587:26:587:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | -| main.rs:587:26:587:37 | ...::m(...) | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:587:26:587:37 | ...::m(...) | TRef.T3 | main.rs:446:5:447:14 | S1 | -| main.rs:587:32:587:33 | &w | | {EXTERNAL LOCATION} | & | -| main.rs:587:32:587:33 | &w | TRef | main.rs:517:5:518:22 | S3 | -| main.rs:587:32:587:33 | &w | TRef.T3 | main.rs:446:5:447:14 | S1 | -| main.rs:587:33:587:33 | w | | main.rs:517:5:518:22 | S3 | -| main.rs:587:33:587:33 | w | T3 | main.rs:446:5:447:14 | S1 | -| main.rs:587:36:587:36 | x | | main.rs:446:5:447:14 | S1 | -| main.rs:589:9:589:10 | S4 | | main.rs:545:5:546:14 | S4 | -| main.rs:589:9:589:14 | S4.m() | | {EXTERNAL LOCATION} | () | -| main.rs:590:9:590:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:590:15:590:17 | &S4 | | {EXTERNAL LOCATION} | & | -| main.rs:590:15:590:17 | &S4 | TRef | main.rs:545:5:546:14 | S4 | -| main.rs:590:16:590:17 | S4 | | main.rs:545:5:546:14 | S4 | -| main.rs:591:9:591:16 | S5(...) | | main.rs:555:5:556:22 | S5 | -| main.rs:591:9:591:16 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:591:9:591:20 | ... .m() | | {EXTERNAL LOCATION} | () | -| main.rs:591:12:591:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:592:9:592:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:592:15:592:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:592:15:592:23 | &... | TRef | main.rs:555:5:556:22 | S5 | -| main.rs:592:15:592:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:592:16:592:23 | S5(...) | | main.rs:555:5:556:22 | S5 | -| main.rs:592:16:592:23 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:592:19:592:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:593:9:593:16 | S5(...) | | main.rs:555:5:556:22 | S5 | -| main.rs:593:9:593:16 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | -| main.rs:593:9:593:20 | ... .m() | | {EXTERNAL LOCATION} | () | -| main.rs:593:12:593:15 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:594:9:594:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:594:15:594:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:594:15:594:23 | &... | TRef | main.rs:555:5:556:22 | S5 | -| main.rs:594:15:594:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | bool | -| main.rs:594:16:594:23 | S5(...) | | main.rs:555:5:556:22 | S5 | -| main.rs:594:16:594:23 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | -| main.rs:594:19:594:22 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:611:19:611:22 | SelfParam | | main.rs:609:5:612:5 | Self [trait FirstTrait] | -| main.rs:616:19:616:22 | SelfParam | | main.rs:614:5:617:5 | Self [trait SecondTrait] | -| main.rs:619:64:619:64 | x | | main.rs:619:45:619:61 | T | -| main.rs:619:70:623:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:621:13:621:14 | s1 | | main.rs:619:35:619:42 | I | -| main.rs:621:18:621:18 | x | | main.rs:619:45:619:61 | T | -| main.rs:621:18:621:27 | x.method() | | main.rs:619:35:619:42 | I | -| main.rs:622:9:622:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:622:18:622:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:622:18:622:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:622:18:622:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:622:18:622:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:622:18:622:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:622:26:622:27 | s1 | | main.rs:619:35:619:42 | I | -| main.rs:625:65:625:65 | x | | main.rs:625:46:625:62 | T | -| main.rs:625:71:629:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:627:13:627:14 | s2 | | main.rs:625:36:625:43 | I | -| main.rs:627:18:627:18 | x | | main.rs:625:46:625:62 | T | -| main.rs:627:18:627:27 | x.method() | | main.rs:625:36:625:43 | I | -| main.rs:628:9:628:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:628:18:628:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:628:18:628:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:628:18:628:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:628:18:628:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:628:18:628:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:628:26:628:27 | s2 | | main.rs:625:36:625:43 | I | -| main.rs:631:49:631:49 | x | | main.rs:631:30:631:46 | T | -| main.rs:631:55:634:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:632:13:632:13 | s | | main.rs:601:5:602:14 | S1 | -| main.rs:632:17:632:17 | x | | main.rs:631:30:631:46 | T | -| main.rs:632:17:632:26 | x.method() | | main.rs:601:5:602:14 | S1 | -| main.rs:633:9:633:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:583:18:583:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:583:18:583:45 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:583:18:583:45 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:583:26:583:45 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | +| main.rs:583:44:583:44 | x | | main.rs:457:5:458:14 | S1 | +| main.rs:584:9:584:45 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:584:18:584:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:584:18:584:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:584:18:584:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:584:18:584:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:584:18:584:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:584:26:584:26 | x | | main.rs:457:5:458:14 | S1 | +| main.rs:584:26:584:44 | x.common_method_2() | | main.rs:457:5:458:14 | S1 | +| main.rs:585:9:585:48 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:585:18:585:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:585:18:585:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:585:18:585:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:585:18:585:47 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:585:18:585:47 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:585:26:585:47 | ...::common_method_2(...) | | main.rs:457:5:458:14 | S1 | +| main.rs:585:46:585:46 | x | | main.rs:457:5:458:14 | S1 | +| main.rs:587:13:587:13 | y | | main.rs:490:5:490:22 | S2 | +| main.rs:587:13:587:13 | y | T2 | main.rs:457:5:458:14 | S1 | +| main.rs:587:17:587:22 | S2(...) | | main.rs:490:5:490:22 | S2 | +| main.rs:587:17:587:22 | S2(...) | T2 | main.rs:457:5:458:14 | S1 | +| main.rs:587:20:587:21 | S1 | | main.rs:457:5:458:14 | S1 | +| main.rs:588:9:588:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:588:18:588:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:588:18:588:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:588:18:588:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:588:18:588:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:588:18:588:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:588:26:588:26 | y | | main.rs:490:5:490:22 | S2 | +| main.rs:588:26:588:26 | y | T2 | main.rs:457:5:458:14 | S1 | +| main.rs:588:26:588:42 | y.common_method() | | main.rs:457:5:458:14 | S1 | +| main.rs:589:9:589:57 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:589:18:589:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:589:18:589:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:589:18:589:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:589:18:589:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:589:18:589:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:589:26:589:56 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | +| main.rs:589:50:589:55 | S2(...) | | main.rs:490:5:490:22 | S2 | +| main.rs:589:50:589:55 | S2(...) | T2 | main.rs:457:5:458:14 | S1 | +| main.rs:589:53:589:54 | S1 | | main.rs:457:5:458:14 | S1 | +| main.rs:591:13:591:13 | z | | main.rs:490:5:490:22 | S2 | +| main.rs:591:13:591:13 | z | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:591:17:591:21 | S2(...) | | main.rs:490:5:490:22 | S2 | +| main.rs:591:17:591:21 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:591:20:591:20 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:592:9:592:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:592:18:592:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:592:18:592:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:592:18:592:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:592:18:592:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:592:18:592:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:592:26:592:26 | z | | main.rs:490:5:490:22 | S2 | +| main.rs:592:26:592:26 | z | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:592:26:592:42 | z.common_method() | | main.rs:457:5:458:14 | S1 | +| main.rs:593:9:593:50 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:593:18:593:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:593:18:593:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:593:18:593:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:593:18:593:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:593:18:593:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:593:26:593:49 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | +| main.rs:593:44:593:48 | S2(...) | | main.rs:490:5:490:22 | S2 | +| main.rs:593:44:593:48 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:593:47:593:47 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:594:9:594:57 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:594:18:594:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:594:18:594:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:594:18:594:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:594:18:594:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:594:18:594:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:594:26:594:56 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | +| main.rs:594:51:594:55 | S2(...) | | main.rs:490:5:490:22 | S2 | +| main.rs:594:51:594:55 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:594:54:594:54 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:596:13:596:13 | w | | main.rs:528:5:529:22 | S3 | +| main.rs:596:13:596:13 | w | T3 | main.rs:457:5:458:14 | S1 | +| main.rs:596:17:596:22 | S3(...) | | main.rs:528:5:529:22 | S3 | +| main.rs:596:17:596:22 | S3(...) | T3 | main.rs:457:5:458:14 | S1 | +| main.rs:596:20:596:21 | S1 | | main.rs:457:5:458:14 | S1 | +| main.rs:597:9:597:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:597:18:597:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:597:18:597:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:597:18:597:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:597:18:597:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:597:18:597:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:597:26:597:26 | w | | main.rs:528:5:529:22 | S3 | +| main.rs:597:26:597:26 | w | T3 | main.rs:457:5:458:14 | S1 | +| main.rs:597:26:597:31 | w.m(...) | | {EXTERNAL LOCATION} | & | +| main.rs:597:26:597:31 | w.m(...) | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:597:26:597:31 | w.m(...) | TRef.T3 | main.rs:457:5:458:14 | S1 | +| main.rs:597:30:597:30 | x | | main.rs:457:5:458:14 | S1 | +| main.rs:598:9:598:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:598:18:598:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:598:18:598:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:598:18:598:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:598:18:598:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:598:18:598:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:598:26:598:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | +| main.rs:598:26:598:37 | ...::m(...) | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:598:26:598:37 | ...::m(...) | TRef.T3 | main.rs:457:5:458:14 | S1 | +| main.rs:598:32:598:33 | &w | | {EXTERNAL LOCATION} | & | +| main.rs:598:32:598:33 | &w | TRef | main.rs:528:5:529:22 | S3 | +| main.rs:598:32:598:33 | &w | TRef.T3 | main.rs:457:5:458:14 | S1 | +| main.rs:598:33:598:33 | w | | main.rs:528:5:529:22 | S3 | +| main.rs:598:33:598:33 | w | T3 | main.rs:457:5:458:14 | S1 | +| main.rs:598:36:598:36 | x | | main.rs:457:5:458:14 | S1 | +| main.rs:600:9:600:10 | S4 | | main.rs:556:5:557:14 | S4 | +| main.rs:600:9:600:14 | S4.m() | | {EXTERNAL LOCATION} | () | +| main.rs:601:9:601:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| main.rs:601:15:601:17 | &S4 | | {EXTERNAL LOCATION} | & | +| main.rs:601:15:601:17 | &S4 | TRef | main.rs:556:5:557:14 | S4 | +| main.rs:601:16:601:17 | S4 | | main.rs:556:5:557:14 | S4 | +| main.rs:602:9:602:16 | S5(...) | | main.rs:566:5:567:22 | S5 | +| main.rs:602:9:602:16 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:602:9:602:20 | ... .m() | | {EXTERNAL LOCATION} | () | +| main.rs:602:12:602:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:603:9:603:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| main.rs:603:15:603:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:603:15:603:23 | &... | TRef | main.rs:566:5:567:22 | S5 | +| main.rs:603:15:603:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:603:16:603:23 | S5(...) | | main.rs:566:5:567:22 | S5 | +| main.rs:603:16:603:23 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:603:19:603:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:604:9:604:16 | S5(...) | | main.rs:566:5:567:22 | S5 | +| main.rs:604:9:604:16 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | +| main.rs:604:9:604:20 | ... .m() | | {EXTERNAL LOCATION} | () | +| main.rs:604:12:604:15 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:605:9:605:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| main.rs:605:15:605:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:605:15:605:23 | &... | TRef | main.rs:566:5:567:22 | S5 | +| main.rs:605:15:605:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | bool | +| main.rs:605:16:605:23 | S5(...) | | main.rs:566:5:567:22 | S5 | +| main.rs:605:16:605:23 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | +| main.rs:605:19:605:22 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:622:19:622:22 | SelfParam | | main.rs:620:5:623:5 | Self [trait FirstTrait] | +| main.rs:627:19:627:22 | SelfParam | | main.rs:625:5:628:5 | Self [trait SecondTrait] | +| main.rs:630:64:630:64 | x | | main.rs:630:45:630:61 | T | +| main.rs:630:70:634:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:632:13:632:14 | s1 | | main.rs:630:35:630:42 | I | +| main.rs:632:18:632:18 | x | | main.rs:630:45:630:61 | T | +| main.rs:632:18:632:27 | x.method() | | main.rs:630:35:630:42 | I | +| main.rs:633:9:633:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:633:18:633:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:633:18:633:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:633:18:633:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:633:18:633:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:633:18:633:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:633:26:633:26 | s | | main.rs:601:5:602:14 | S1 | -| main.rs:636:53:636:53 | x | | main.rs:636:34:636:50 | T | -| main.rs:636:59:639:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:637:13:637:13 | s | | main.rs:601:5:602:14 | S1 | -| main.rs:637:17:637:17 | x | | main.rs:636:34:636:50 | T | -| main.rs:637:17:637:26 | x.method() | | main.rs:601:5:602:14 | S1 | -| main.rs:638:9:638:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:638:18:638:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:638:18:638:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:638:18:638:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:638:18:638:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:638:18:638:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:638:26:638:26 | s | | main.rs:601:5:602:14 | S1 | -| main.rs:641:43:641:43 | x | | main.rs:641:40:641:40 | T | -| main.rs:644:5:647:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:645:13:645:13 | s | | main.rs:601:5:602:14 | S1 | -| main.rs:645:17:645:17 | x | | main.rs:641:40:641:40 | T | -| main.rs:645:17:645:26 | x.method() | | main.rs:601:5:602:14 | S1 | -| main.rs:646:9:646:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:646:18:646:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:646:18:646:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:646:18:646:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:646:18:646:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:646:18:646:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:646:26:646:26 | s | | main.rs:601:5:602:14 | S1 | -| main.rs:650:16:650:19 | SelfParam | | main.rs:649:5:653:5 | Self [trait Pair] | -| main.rs:652:16:652:19 | SelfParam | | main.rs:649:5:653:5 | Self [trait Pair] | -| main.rs:655:53:655:53 | x | | main.rs:655:50:655:50 | T | -| main.rs:655:59:655:59 | y | | main.rs:655:50:655:50 | T | -| main.rs:659:5:662:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:660:13:660:13 | _ | | main.rs:601:5:602:14 | S1 | -| main.rs:660:17:660:17 | x | | main.rs:655:50:655:50 | T | -| main.rs:660:17:660:23 | x.fst() | | main.rs:601:5:602:14 | S1 | -| main.rs:661:13:661:13 | _ | | main.rs:601:5:602:14 | S1 | -| main.rs:661:17:661:17 | y | | main.rs:655:50:655:50 | T | -| main.rs:661:17:661:26 | y.method() | | main.rs:601:5:602:14 | S1 | -| main.rs:664:58:664:58 | x | | main.rs:664:41:664:55 | T | -| main.rs:664:64:664:64 | y | | main.rs:664:41:664:55 | T | -| main.rs:664:70:669:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:666:13:666:14 | s1 | | main.rs:601:5:602:14 | S1 | -| main.rs:666:18:666:18 | x | | main.rs:664:41:664:55 | T | -| main.rs:666:18:666:24 | x.fst() | | main.rs:601:5:602:14 | S1 | -| main.rs:667:13:667:14 | s2 | | main.rs:604:5:605:14 | S2 | -| main.rs:667:18:667:18 | y | | main.rs:664:41:664:55 | T | -| main.rs:667:18:667:24 | y.snd() | | main.rs:604:5:605:14 | S2 | -| main.rs:668:9:668:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:668:18:668:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:668:18:668:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:668:18:668:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:668:18:668:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:668:18:668:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:668:32:668:33 | s1 | | main.rs:601:5:602:14 | S1 | -| main.rs:668:36:668:37 | s2 | | main.rs:604:5:605:14 | S2 | -| main.rs:671:69:671:69 | x | | main.rs:671:52:671:66 | T | -| main.rs:671:75:671:75 | y | | main.rs:671:52:671:66 | T | -| main.rs:671:81:676:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:673:13:673:14 | s1 | | main.rs:601:5:602:14 | S1 | -| main.rs:673:18:673:18 | x | | main.rs:671:52:671:66 | T | -| main.rs:673:18:673:24 | x.fst() | | main.rs:601:5:602:14 | S1 | -| main.rs:674:13:674:14 | s2 | | main.rs:671:41:671:49 | T2 | -| main.rs:674:18:674:18 | y | | main.rs:671:52:671:66 | T | -| main.rs:674:18:674:24 | y.snd() | | main.rs:671:41:671:49 | T2 | -| main.rs:675:9:675:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:675:18:675:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:675:18:675:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:675:18:675:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:675:18:675:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:675:18:675:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:675:32:675:33 | s1 | | main.rs:601:5:602:14 | S1 | -| main.rs:675:36:675:37 | s2 | | main.rs:671:41:671:49 | T2 | -| main.rs:678:50:678:50 | x | | main.rs:678:41:678:47 | T | -| main.rs:678:56:678:56 | y | | main.rs:678:41:678:47 | T | -| main.rs:678:62:683:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:680:13:680:14 | s1 | | {EXTERNAL LOCATION} | bool | -| main.rs:680:18:680:18 | x | | main.rs:678:41:678:47 | T | -| main.rs:680:18:680:24 | x.fst() | | {EXTERNAL LOCATION} | bool | -| main.rs:681:13:681:14 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:681:18:681:18 | y | | main.rs:678:41:678:47 | T | -| main.rs:681:18:681:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | -| main.rs:682:9:682:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:682:18:682:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:682:18:682:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:682:18:682:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:682:18:682:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:682:18:682:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:682:32:682:33 | s1 | | {EXTERNAL LOCATION} | bool | -| main.rs:682:36:682:37 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:685:54:685:54 | x | | main.rs:685:41:685:51 | T | -| main.rs:685:60:685:60 | y | | main.rs:685:41:685:51 | T | -| main.rs:685:66:690:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:687:13:687:14 | s1 | | {EXTERNAL LOCATION} | u8 | -| main.rs:687:18:687:18 | x | | main.rs:685:41:685:51 | T | -| main.rs:687:18:687:24 | x.fst() | | {EXTERNAL LOCATION} | u8 | -| main.rs:688:13:688:14 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:688:18:688:18 | y | | main.rs:685:41:685:51 | T | -| main.rs:688:18:688:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | -| main.rs:689:9:689:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:689:18:689:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:689:18:689:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:689:18:689:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:689:18:689:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:689:18:689:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:689:32:689:33 | s1 | | {EXTERNAL LOCATION} | u8 | -| main.rs:689:36:689:37 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:697:18:697:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:697:18:697:22 | SelfParam | TRef | main.rs:694:5:698:5 | Self [trait TraitWithSelfTp] | -| main.rs:700:40:700:44 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:700:40:700:44 | thing | TRef | main.rs:700:17:700:37 | T | -| main.rs:700:56:702:5 | { ... } | | main.rs:700:14:700:14 | A | -| main.rs:701:9:701:13 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:701:9:701:13 | thing | TRef | main.rs:700:17:700:37 | T | -| main.rs:701:9:701:21 | thing.get_a() | | main.rs:700:14:700:14 | A | -| main.rs:705:44:705:48 | thing | | main.rs:705:24:705:41 | S | -| main.rs:705:61:708:5 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:706:13:706:15 | _ms | | {EXTERNAL LOCATION} | Option | -| main.rs:706:13:706:15 | _ms | T | main.rs:705:24:705:41 | S | -| main.rs:706:19:706:23 | thing | | main.rs:705:24:705:41 | S | -| main.rs:706:19:706:31 | thing.get_a() | | {EXTERNAL LOCATION} | Option | -| main.rs:706:19:706:31 | thing.get_a() | T | main.rs:705:24:705:41 | S | -| main.rs:707:9:707:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:707:9:707:9 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:713:55:713:59 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:713:55:713:59 | thing | TRef | main.rs:713:25:713:52 | S | -| main.rs:713:66:716:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:715:13:715:15 | _ms | | {EXTERNAL LOCATION} | Option | -| main.rs:715:13:715:15 | _ms | T | main.rs:713:25:713:52 | S | -| main.rs:715:19:715:30 | get_a(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:715:19:715:30 | get_a(...) | T | main.rs:713:25:713:52 | S | -| main.rs:715:25:715:29 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:715:25:715:29 | thing | TRef | main.rs:713:25:713:52 | S | -| main.rs:724:18:724:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:724:18:724:22 | SelfParam | TRef | main.rs:718:5:720:5 | MyStruct | -| main.rs:724:41:726:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:724:41:726:9 | { ... } | T | main.rs:718:5:720:5 | MyStruct | -| main.rs:725:13:725:48 | Some(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:725:13:725:48 | Some(...) | T | main.rs:718:5:720:5 | MyStruct | -| main.rs:725:18:725:47 | MyStruct {...} | | main.rs:718:5:720:5 | MyStruct | -| main.rs:725:36:725:39 | self | | {EXTERNAL LOCATION} | & | -| main.rs:725:36:725:39 | self | TRef | main.rs:718:5:720:5 | MyStruct | -| main.rs:725:36:725:45 | self.value | | {EXTERNAL LOCATION} | i32 | -| main.rs:731:19:734:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:732:13:732:13 | s | | main.rs:718:5:720:5 | MyStruct | -| main.rs:732:17:732:37 | MyStruct {...} | | main.rs:718:5:720:5 | MyStruct | -| main.rs:732:35:732:35 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:733:13:733:15 | _ms | | {EXTERNAL LOCATION} | Option | -| main.rs:733:13:733:15 | _ms | T | main.rs:718:5:720:5 | MyStruct | -| main.rs:733:19:733:27 | get_a(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:733:19:733:27 | get_a(...) | T | main.rs:718:5:720:5 | MyStruct | -| main.rs:733:25:733:26 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:733:25:733:26 | &s | TRef | main.rs:718:5:720:5 | MyStruct | -| main.rs:733:26:733:26 | s | | main.rs:718:5:720:5 | MyStruct | -| main.rs:749:15:749:18 | SelfParam | | main.rs:748:5:759:5 | Self [trait MyTrait] | -| main.rs:751:15:751:18 | SelfParam | | main.rs:748:5:759:5 | Self [trait MyTrait] | -| main.rs:754:9:756:9 | { ... } | | main.rs:748:19:748:19 | A | -| main.rs:755:13:755:16 | self | | main.rs:748:5:759:5 | Self [trait MyTrait] | -| main.rs:755:13:755:21 | self.m1() | | main.rs:748:19:748:19 | A | -| main.rs:758:18:758:18 | x | | main.rs:748:5:759:5 | Self [trait MyTrait] | -| main.rs:762:15:762:18 | SelfParam | | main.rs:745:5:746:14 | S2 | -| main.rs:762:26:764:9 | { ... } | | main.rs:761:10:761:19 | T | -| main.rs:763:13:763:30 | ...::default(...) | | main.rs:761:10:761:19 | T | -| main.rs:766:18:766:18 | x | | main.rs:745:5:746:14 | S2 | -| main.rs:766:32:768:9 | { ... } | | main.rs:761:10:761:19 | T | -| main.rs:767:13:767:30 | ...::default(...) | | main.rs:761:10:761:19 | T | -| main.rs:772:15:772:18 | SelfParam | | main.rs:743:5:744:14 | S1 | -| main.rs:772:28:774:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:773:13:773:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:776:18:776:18 | x | | main.rs:743:5:744:14 | S1 | -| main.rs:776:34:778:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:777:13:777:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:783:50:783:50 | x | | main.rs:783:26:783:47 | T2 | -| main.rs:783:63:786:5 | { ... } | | main.rs:783:22:783:23 | T1 | -| main.rs:784:9:784:9 | x | | main.rs:783:26:783:47 | T2 | -| main.rs:784:9:784:14 | x.m1() | | main.rs:783:22:783:23 | T1 | -| main.rs:785:9:785:9 | x | | main.rs:783:26:783:47 | T2 | -| main.rs:785:9:785:14 | x.m1() | | main.rs:783:22:783:23 | T1 | -| main.rs:787:52:787:52 | x | | main.rs:787:28:787:49 | T2 | -| main.rs:787:65:791:5 | { ... } | | main.rs:787:24:787:25 | T1 | -| main.rs:788:13:788:13 | y | | main.rs:787:24:787:25 | T1 | -| main.rs:788:17:788:25 | ...::m1(...) | | main.rs:787:24:787:25 | T1 | -| main.rs:788:24:788:24 | x | | main.rs:787:28:787:49 | T2 | -| main.rs:789:9:789:9 | y | | main.rs:787:24:787:25 | T1 | -| main.rs:790:9:790:17 | ...::m1(...) | | main.rs:787:24:787:25 | T1 | -| main.rs:790:16:790:16 | x | | main.rs:787:28:787:49 | T2 | -| main.rs:792:52:792:52 | x | | main.rs:792:28:792:49 | T2 | -| main.rs:792:65:796:5 | { ... } | | main.rs:792:24:792:25 | T1 | -| main.rs:793:13:793:13 | y | | main.rs:792:24:792:25 | T1 | -| main.rs:793:17:793:30 | ...::m1(...) | | main.rs:792:24:792:25 | T1 | -| main.rs:793:29:793:29 | x | | main.rs:792:28:792:49 | T2 | -| main.rs:794:9:794:9 | y | | main.rs:792:24:792:25 | T1 | -| main.rs:795:9:795:22 | ...::m1(...) | | main.rs:792:24:792:25 | T1 | -| main.rs:795:21:795:21 | x | | main.rs:792:28:792:49 | T2 | -| main.rs:797:55:797:55 | x | | main.rs:797:31:797:52 | T2 | -| main.rs:797:68:801:5 | { ... } | | main.rs:797:27:797:28 | T1 | -| main.rs:798:13:798:13 | y | | main.rs:797:27:797:28 | T1 | -| main.rs:798:17:798:28 | ...::assoc(...) | | main.rs:797:27:797:28 | T1 | -| main.rs:798:27:798:27 | x | | main.rs:797:31:797:52 | T2 | -| main.rs:799:9:799:9 | y | | main.rs:797:27:797:28 | T1 | -| main.rs:800:9:800:20 | ...::assoc(...) | | main.rs:797:27:797:28 | T1 | -| main.rs:800:19:800:19 | x | | main.rs:797:31:797:52 | T2 | -| main.rs:802:55:802:55 | x | | main.rs:802:31:802:52 | T2 | -| main.rs:802:68:806:5 | { ... } | | main.rs:802:27:802:28 | T1 | -| main.rs:803:13:803:13 | y | | main.rs:802:27:802:28 | T1 | -| main.rs:803:17:803:33 | ...::assoc(...) | | main.rs:802:27:802:28 | T1 | -| main.rs:803:32:803:32 | x | | main.rs:802:31:802:52 | T2 | -| main.rs:804:9:804:9 | y | | main.rs:802:27:802:28 | T1 | -| main.rs:805:9:805:25 | ...::assoc(...) | | main.rs:802:27:802:28 | T1 | -| main.rs:805:24:805:24 | x | | main.rs:802:31:802:52 | T2 | -| main.rs:810:49:810:49 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:810:49:810:49 | x | T | main.rs:810:32:810:46 | T2 | -| main.rs:810:71:812:5 | { ... } | | main.rs:810:28:810:29 | T1 | -| main.rs:811:9:811:9 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:811:9:811:9 | x | T | main.rs:810:32:810:46 | T2 | -| main.rs:811:9:811:11 | x.a | | main.rs:810:32:810:46 | T2 | -| main.rs:811:9:811:16 | ... .m1() | | main.rs:810:28:810:29 | T1 | -| main.rs:813:51:813:51 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:813:51:813:51 | x | T | main.rs:813:34:813:48 | T2 | -| main.rs:813:73:815:5 | { ... } | | main.rs:813:30:813:31 | T1 | -| main.rs:814:9:814:19 | ...::m1(...) | | main.rs:813:30:813:31 | T1 | -| main.rs:814:16:814:16 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:814:16:814:16 | x | T | main.rs:813:34:813:48 | T2 | -| main.rs:814:16:814:18 | x.a | | main.rs:813:34:813:48 | T2 | -| main.rs:816:51:816:51 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:816:51:816:51 | x | T | main.rs:816:34:816:48 | T2 | -| main.rs:816:73:818:5 | { ... } | | main.rs:816:30:816:31 | T1 | -| main.rs:817:9:817:24 | ...::m1(...) | | main.rs:816:30:816:31 | T1 | -| main.rs:817:21:817:21 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:817:21:817:21 | x | T | main.rs:816:34:816:48 | T2 | -| main.rs:817:21:817:23 | x.a | | main.rs:816:34:816:48 | T2 | -| main.rs:821:15:821:18 | SelfParam | | main.rs:738:5:741:5 | MyThing | -| main.rs:821:15:821:18 | SelfParam | T | main.rs:820:10:820:10 | T | -| main.rs:821:26:823:9 | { ... } | | main.rs:820:10:820:10 | T | -| main.rs:822:13:822:16 | self | | main.rs:738:5:741:5 | MyThing | -| main.rs:822:13:822:16 | self | T | main.rs:820:10:820:10 | T | -| main.rs:822:13:822:18 | self.a | | main.rs:820:10:820:10 | T | -| main.rs:825:18:825:18 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:825:18:825:18 | x | T | main.rs:820:10:820:10 | T | -| main.rs:825:32:827:9 | { ... } | | main.rs:820:10:820:10 | T | -| main.rs:826:13:826:13 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:826:13:826:13 | x | T | main.rs:820:10:820:10 | T | -| main.rs:826:13:826:15 | x.a | | main.rs:820:10:820:10 | T | -| main.rs:832:15:832:18 | SelfParam | | main.rs:830:5:833:5 | Self [trait MyTrait2] | -| main.rs:837:15:837:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:837:15:837:19 | SelfParam | TRef | main.rs:835:5:838:5 | Self [trait MyTrait3] | -| main.rs:840:46:840:46 | x | | main.rs:840:22:840:43 | T | -| main.rs:840:52:840:52 | y | | {EXTERNAL LOCATION} | & | -| main.rs:840:52:840:52 | y | TRef | main.rs:840:22:840:43 | T | -| main.rs:840:59:843:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:841:9:841:9 | x | | main.rs:840:22:840:43 | T | -| main.rs:841:9:841:14 | x.m2() | | {EXTERNAL LOCATION} | () | -| main.rs:842:9:842:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:842:9:842:9 | y | TRef | main.rs:840:22:840:43 | T | -| main.rs:842:9:842:14 | y.m2() | | {EXTERNAL LOCATION} | () | -| main.rs:845:16:903:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:846:13:846:13 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:846:13:846:13 | x | T | main.rs:743:5:744:14 | S1 | -| main.rs:846:17:846:33 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:846:17:846:33 | MyThing {...} | T | main.rs:743:5:744:14 | S1 | -| main.rs:846:30:846:31 | S1 | | main.rs:743:5:744:14 | S1 | -| main.rs:847:13:847:13 | y | | main.rs:738:5:741:5 | MyThing | -| main.rs:847:13:847:13 | y | T | main.rs:745:5:746:14 | S2 | -| main.rs:847:17:847:33 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:847:17:847:33 | MyThing {...} | T | main.rs:745:5:746:14 | S2 | -| main.rs:847:30:847:31 | S2 | | main.rs:745:5:746:14 | S2 | -| main.rs:849:9:849:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:849:18:849:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:849:18:849:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:849:18:849:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:849:18:849:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:849:18:849:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:849:26:849:26 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:849:26:849:26 | x | T | main.rs:743:5:744:14 | S1 | -| main.rs:849:26:849:31 | x.m1() | | main.rs:743:5:744:14 | S1 | -| main.rs:850:9:850:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:850:18:850:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:850:18:850:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:850:18:850:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:850:18:850:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:850:18:850:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:850:26:850:26 | y | | main.rs:738:5:741:5 | MyThing | -| main.rs:850:26:850:26 | y | T | main.rs:745:5:746:14 | S2 | -| main.rs:850:26:850:31 | y.m1() | | main.rs:745:5:746:14 | S2 | -| main.rs:852:13:852:13 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:852:13:852:13 | x | T | main.rs:743:5:744:14 | S1 | -| main.rs:852:17:852:33 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:852:17:852:33 | MyThing {...} | T | main.rs:743:5:744:14 | S1 | -| main.rs:852:30:852:31 | S1 | | main.rs:743:5:744:14 | S1 | -| main.rs:853:13:853:13 | y | | main.rs:738:5:741:5 | MyThing | -| main.rs:853:13:853:13 | y | T | main.rs:745:5:746:14 | S2 | -| main.rs:853:17:853:33 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:853:17:853:33 | MyThing {...} | T | main.rs:745:5:746:14 | S2 | -| main.rs:853:30:853:31 | S2 | | main.rs:745:5:746:14 | S2 | -| main.rs:855:9:855:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:855:18:855:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:855:18:855:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:855:18:855:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:855:18:855:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:855:18:855:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:855:26:855:26 | x | | main.rs:738:5:741:5 | MyThing | -| main.rs:855:26:855:26 | x | T | main.rs:743:5:744:14 | S1 | -| main.rs:855:26:855:31 | x.m2() | | main.rs:743:5:744:14 | S1 | -| main.rs:856:9:856:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:856:18:856:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:856:18:856:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:856:18:856:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:856:18:856:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:856:18:856:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:856:26:856:26 | y | | main.rs:738:5:741:5 | MyThing | -| main.rs:856:26:856:26 | y | T | main.rs:745:5:746:14 | S2 | -| main.rs:856:26:856:31 | y.m2() | | main.rs:745:5:746:14 | S2 | -| main.rs:858:13:858:14 | x2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:858:13:858:14 | x2 | T | main.rs:743:5:744:14 | S1 | -| main.rs:858:18:858:34 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:858:18:858:34 | MyThing {...} | T | main.rs:743:5:744:14 | S1 | -| main.rs:858:31:858:32 | S1 | | main.rs:743:5:744:14 | S1 | -| main.rs:859:13:859:14 | y2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:859:13:859:14 | y2 | T | main.rs:745:5:746:14 | S2 | -| main.rs:859:18:859:34 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:859:18:859:34 | MyThing {...} | T | main.rs:745:5:746:14 | S2 | -| main.rs:859:31:859:32 | S2 | | main.rs:745:5:746:14 | S2 | -| main.rs:861:13:861:13 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:861:17:861:33 | call_trait_m1(...) | | main.rs:743:5:744:14 | S1 | -| main.rs:861:31:861:32 | x2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:861:31:861:32 | x2 | T | main.rs:743:5:744:14 | S1 | -| main.rs:862:9:862:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:862:18:862:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:862:18:862:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:862:18:862:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:862:18:862:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:862:18:862:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:862:26:862:26 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:863:13:863:13 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:863:17:863:35 | call_trait_m1_2(...) | | main.rs:743:5:744:14 | S1 | -| main.rs:863:33:863:34 | x2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:863:33:863:34 | x2 | T | main.rs:743:5:744:14 | S1 | -| main.rs:864:9:864:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:864:18:864:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:864:18:864:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:864:18:864:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:864:18:864:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:864:18:864:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:864:26:864:26 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:865:13:865:13 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:865:17:865:35 | call_trait_m1_3(...) | | main.rs:743:5:744:14 | S1 | -| main.rs:865:33:865:34 | x2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:865:33:865:34 | x2 | T | main.rs:743:5:744:14 | S1 | -| main.rs:866:9:866:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:633:18:633:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:633:18:633:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:633:18:633:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:633:26:633:27 | s1 | | main.rs:630:35:630:42 | I | +| main.rs:636:65:636:65 | x | | main.rs:636:46:636:62 | T | +| main.rs:636:71:640:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:638:13:638:14 | s2 | | main.rs:636:36:636:43 | I | +| main.rs:638:18:638:18 | x | | main.rs:636:46:636:62 | T | +| main.rs:638:18:638:27 | x.method() | | main.rs:636:36:636:43 | I | +| main.rs:639:9:639:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:639:18:639:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:639:18:639:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:639:18:639:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:639:18:639:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:639:18:639:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:639:26:639:27 | s2 | | main.rs:636:36:636:43 | I | +| main.rs:642:49:642:49 | x | | main.rs:642:30:642:46 | T | +| main.rs:642:55:645:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:643:13:643:13 | s | | main.rs:612:5:613:14 | S1 | +| main.rs:643:17:643:17 | x | | main.rs:642:30:642:46 | T | +| main.rs:643:17:643:26 | x.method() | | main.rs:612:5:613:14 | S1 | +| main.rs:644:9:644:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:644:18:644:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:644:18:644:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:644:18:644:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:644:18:644:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:644:18:644:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:644:26:644:26 | s | | main.rs:612:5:613:14 | S1 | +| main.rs:647:53:647:53 | x | | main.rs:647:34:647:50 | T | +| main.rs:647:59:650:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:648:13:648:13 | s | | main.rs:612:5:613:14 | S1 | +| main.rs:648:17:648:17 | x | | main.rs:647:34:647:50 | T | +| main.rs:648:17:648:26 | x.method() | | main.rs:612:5:613:14 | S1 | +| main.rs:649:9:649:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:649:18:649:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:649:18:649:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:649:18:649:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:649:18:649:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:649:18:649:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:649:26:649:26 | s | | main.rs:612:5:613:14 | S1 | +| main.rs:652:43:652:43 | x | | main.rs:652:40:652:40 | T | +| main.rs:655:5:658:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:656:13:656:13 | s | | main.rs:612:5:613:14 | S1 | +| main.rs:656:17:656:17 | x | | main.rs:652:40:652:40 | T | +| main.rs:656:17:656:26 | x.method() | | main.rs:612:5:613:14 | S1 | +| main.rs:657:9:657:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:657:18:657:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:657:18:657:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:657:18:657:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:657:18:657:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:657:18:657:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:657:26:657:26 | s | | main.rs:612:5:613:14 | S1 | +| main.rs:661:16:661:19 | SelfParam | | main.rs:660:5:664:5 | Self [trait Pair] | +| main.rs:663:16:663:19 | SelfParam | | main.rs:660:5:664:5 | Self [trait Pair] | +| main.rs:666:53:666:53 | x | | main.rs:666:50:666:50 | T | +| main.rs:666:59:666:59 | y | | main.rs:666:50:666:50 | T | +| main.rs:670:5:673:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:671:13:671:13 | _ | | main.rs:612:5:613:14 | S1 | +| main.rs:671:17:671:17 | x | | main.rs:666:50:666:50 | T | +| main.rs:671:17:671:23 | x.fst() | | main.rs:612:5:613:14 | S1 | +| main.rs:672:13:672:13 | _ | | main.rs:612:5:613:14 | S1 | +| main.rs:672:17:672:17 | y | | main.rs:666:50:666:50 | T | +| main.rs:672:17:672:26 | y.method() | | main.rs:612:5:613:14 | S1 | +| main.rs:675:58:675:58 | x | | main.rs:675:41:675:55 | T | +| main.rs:675:64:675:64 | y | | main.rs:675:41:675:55 | T | +| main.rs:675:70:680:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:677:13:677:14 | s1 | | main.rs:612:5:613:14 | S1 | +| main.rs:677:18:677:18 | x | | main.rs:675:41:675:55 | T | +| main.rs:677:18:677:24 | x.fst() | | main.rs:612:5:613:14 | S1 | +| main.rs:678:13:678:14 | s2 | | main.rs:615:5:616:14 | S2 | +| main.rs:678:18:678:18 | y | | main.rs:675:41:675:55 | T | +| main.rs:678:18:678:24 | y.snd() | | main.rs:615:5:616:14 | S2 | +| main.rs:679:9:679:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:679:18:679:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:679:18:679:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:679:18:679:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:679:18:679:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:679:18:679:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:679:32:679:33 | s1 | | main.rs:612:5:613:14 | S1 | +| main.rs:679:36:679:37 | s2 | | main.rs:615:5:616:14 | S2 | +| main.rs:682:69:682:69 | x | | main.rs:682:52:682:66 | T | +| main.rs:682:75:682:75 | y | | main.rs:682:52:682:66 | T | +| main.rs:682:81:687:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:684:13:684:14 | s1 | | main.rs:612:5:613:14 | S1 | +| main.rs:684:18:684:18 | x | | main.rs:682:52:682:66 | T | +| main.rs:684:18:684:24 | x.fst() | | main.rs:612:5:613:14 | S1 | +| main.rs:685:13:685:14 | s2 | | main.rs:682:41:682:49 | T2 | +| main.rs:685:18:685:18 | y | | main.rs:682:52:682:66 | T | +| main.rs:685:18:685:24 | y.snd() | | main.rs:682:41:682:49 | T2 | +| main.rs:686:9:686:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:686:18:686:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:686:18:686:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:686:18:686:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:686:18:686:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:686:18:686:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:686:32:686:33 | s1 | | main.rs:612:5:613:14 | S1 | +| main.rs:686:36:686:37 | s2 | | main.rs:682:41:682:49 | T2 | +| main.rs:689:50:689:50 | x | | main.rs:689:41:689:47 | T | +| main.rs:689:56:689:56 | y | | main.rs:689:41:689:47 | T | +| main.rs:689:62:694:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:691:13:691:14 | s1 | | {EXTERNAL LOCATION} | bool | +| main.rs:691:18:691:18 | x | | main.rs:689:41:689:47 | T | +| main.rs:691:18:691:24 | x.fst() | | {EXTERNAL LOCATION} | bool | +| main.rs:692:13:692:14 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:692:18:692:18 | y | | main.rs:689:41:689:47 | T | +| main.rs:692:18:692:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | +| main.rs:693:9:693:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:693:18:693:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:693:18:693:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:693:18:693:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:693:18:693:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:693:18:693:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:693:32:693:33 | s1 | | {EXTERNAL LOCATION} | bool | +| main.rs:693:36:693:37 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:696:54:696:54 | x | | main.rs:696:41:696:51 | T | +| main.rs:696:60:696:60 | y | | main.rs:696:41:696:51 | T | +| main.rs:696:66:701:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:698:13:698:14 | s1 | | {EXTERNAL LOCATION} | u8 | +| main.rs:698:18:698:18 | x | | main.rs:696:41:696:51 | T | +| main.rs:698:18:698:24 | x.fst() | | {EXTERNAL LOCATION} | u8 | +| main.rs:699:13:699:14 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:699:18:699:18 | y | | main.rs:696:41:696:51 | T | +| main.rs:699:18:699:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | +| main.rs:700:9:700:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:700:18:700:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:700:18:700:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:700:18:700:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:700:18:700:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:700:18:700:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:700:32:700:33 | s1 | | {EXTERNAL LOCATION} | u8 | +| main.rs:700:36:700:37 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:708:18:708:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:708:18:708:22 | SelfParam | TRef | main.rs:705:5:709:5 | Self [trait TraitWithSelfTp] | +| main.rs:711:40:711:44 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:711:40:711:44 | thing | TRef | main.rs:711:17:711:37 | T | +| main.rs:711:56:713:5 | { ... } | | main.rs:711:14:711:14 | A | +| main.rs:712:9:712:13 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:712:9:712:13 | thing | TRef | main.rs:711:17:711:37 | T | +| main.rs:712:9:712:21 | thing.get_a() | | main.rs:711:14:711:14 | A | +| main.rs:716:44:716:48 | thing | | main.rs:716:24:716:41 | S | +| main.rs:716:61:719:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:717:13:717:15 | _ms | | {EXTERNAL LOCATION} | Option | +| main.rs:717:13:717:15 | _ms | T | main.rs:716:24:716:41 | S | +| main.rs:717:19:717:23 | thing | | main.rs:716:24:716:41 | S | +| main.rs:717:19:717:31 | thing.get_a() | | {EXTERNAL LOCATION} | Option | +| main.rs:717:19:717:31 | thing.get_a() | T | main.rs:716:24:716:41 | S | +| main.rs:718:9:718:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:718:9:718:9 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:724:55:724:59 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:724:55:724:59 | thing | TRef | main.rs:724:25:724:52 | S | +| main.rs:724:66:727:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:726:13:726:15 | _ms | | {EXTERNAL LOCATION} | Option | +| main.rs:726:13:726:15 | _ms | T | main.rs:724:25:724:52 | S | +| main.rs:726:19:726:30 | get_a(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:726:19:726:30 | get_a(...) | T | main.rs:724:25:724:52 | S | +| main.rs:726:25:726:29 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:726:25:726:29 | thing | TRef | main.rs:724:25:724:52 | S | +| main.rs:735:18:735:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:735:18:735:22 | SelfParam | TRef | main.rs:729:5:731:5 | MyStruct | +| main.rs:735:41:737:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:735:41:737:9 | { ... } | T | main.rs:729:5:731:5 | MyStruct | +| main.rs:736:13:736:48 | Some(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:736:13:736:48 | Some(...) | T | main.rs:729:5:731:5 | MyStruct | +| main.rs:736:18:736:47 | MyStruct {...} | | main.rs:729:5:731:5 | MyStruct | +| main.rs:736:36:736:39 | self | | {EXTERNAL LOCATION} | & | +| main.rs:736:36:736:39 | self | TRef | main.rs:729:5:731:5 | MyStruct | +| main.rs:736:36:736:45 | self.value | | {EXTERNAL LOCATION} | i32 | +| main.rs:742:19:745:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:743:13:743:13 | s | | main.rs:729:5:731:5 | MyStruct | +| main.rs:743:17:743:37 | MyStruct {...} | | main.rs:729:5:731:5 | MyStruct | +| main.rs:743:35:743:35 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:744:13:744:15 | _ms | | {EXTERNAL LOCATION} | Option | +| main.rs:744:13:744:15 | _ms | T | main.rs:729:5:731:5 | MyStruct | +| main.rs:744:19:744:27 | get_a(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:744:19:744:27 | get_a(...) | T | main.rs:729:5:731:5 | MyStruct | +| main.rs:744:25:744:26 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:744:25:744:26 | &s | TRef | main.rs:729:5:731:5 | MyStruct | +| main.rs:744:26:744:26 | s | | main.rs:729:5:731:5 | MyStruct | +| main.rs:760:15:760:18 | SelfParam | | main.rs:759:5:770:5 | Self [trait MyTrait] | +| main.rs:762:15:762:18 | SelfParam | | main.rs:759:5:770:5 | Self [trait MyTrait] | +| main.rs:765:9:767:9 | { ... } | | main.rs:759:19:759:19 | A | +| main.rs:766:13:766:16 | self | | main.rs:759:5:770:5 | Self [trait MyTrait] | +| main.rs:766:13:766:21 | self.m1() | | main.rs:759:19:759:19 | A | +| main.rs:769:18:769:18 | x | | main.rs:759:5:770:5 | Self [trait MyTrait] | +| main.rs:773:15:773:18 | SelfParam | | main.rs:756:5:757:14 | S2 | +| main.rs:773:26:775:9 | { ... } | | main.rs:772:10:772:19 | T | +| main.rs:774:13:774:30 | ...::default(...) | | main.rs:772:10:772:19 | T | +| main.rs:777:18:777:18 | x | | main.rs:756:5:757:14 | S2 | +| main.rs:777:32:779:9 | { ... } | | main.rs:772:10:772:19 | T | +| main.rs:778:13:778:30 | ...::default(...) | | main.rs:772:10:772:19 | T | +| main.rs:783:15:783:18 | SelfParam | | main.rs:754:5:755:14 | S1 | +| main.rs:783:28:785:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:784:13:784:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:787:18:787:18 | x | | main.rs:754:5:755:14 | S1 | +| main.rs:787:34:789:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:788:13:788:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:794:50:794:50 | x | | main.rs:794:26:794:47 | T2 | +| main.rs:794:63:797:5 | { ... } | | main.rs:794:22:794:23 | T1 | +| main.rs:795:9:795:9 | x | | main.rs:794:26:794:47 | T2 | +| main.rs:795:9:795:14 | x.m1() | | main.rs:794:22:794:23 | T1 | +| main.rs:796:9:796:9 | x | | main.rs:794:26:794:47 | T2 | +| main.rs:796:9:796:14 | x.m1() | | main.rs:794:22:794:23 | T1 | +| main.rs:798:52:798:52 | x | | main.rs:798:28:798:49 | T2 | +| main.rs:798:65:802:5 | { ... } | | main.rs:798:24:798:25 | T1 | +| main.rs:799:13:799:13 | y | | main.rs:798:24:798:25 | T1 | +| main.rs:799:17:799:25 | ...::m1(...) | | main.rs:798:24:798:25 | T1 | +| main.rs:799:24:799:24 | x | | main.rs:798:28:798:49 | T2 | +| main.rs:800:9:800:9 | y | | main.rs:798:24:798:25 | T1 | +| main.rs:801:9:801:17 | ...::m1(...) | | main.rs:798:24:798:25 | T1 | +| main.rs:801:16:801:16 | x | | main.rs:798:28:798:49 | T2 | +| main.rs:803:52:803:52 | x | | main.rs:803:28:803:49 | T2 | +| main.rs:803:65:807:5 | { ... } | | main.rs:803:24:803:25 | T1 | +| main.rs:804:13:804:13 | y | | main.rs:803:24:803:25 | T1 | +| main.rs:804:17:804:30 | ...::m1(...) | | main.rs:803:24:803:25 | T1 | +| main.rs:804:29:804:29 | x | | main.rs:803:28:803:49 | T2 | +| main.rs:805:9:805:9 | y | | main.rs:803:24:803:25 | T1 | +| main.rs:806:9:806:22 | ...::m1(...) | | main.rs:803:24:803:25 | T1 | +| main.rs:806:21:806:21 | x | | main.rs:803:28:803:49 | T2 | +| main.rs:808:55:808:55 | x | | main.rs:808:31:808:52 | T2 | +| main.rs:808:68:812:5 | { ... } | | main.rs:808:27:808:28 | T1 | +| main.rs:809:13:809:13 | y | | main.rs:808:27:808:28 | T1 | +| main.rs:809:17:809:28 | ...::assoc(...) | | main.rs:808:27:808:28 | T1 | +| main.rs:809:27:809:27 | x | | main.rs:808:31:808:52 | T2 | +| main.rs:810:9:810:9 | y | | main.rs:808:27:808:28 | T1 | +| main.rs:811:9:811:20 | ...::assoc(...) | | main.rs:808:27:808:28 | T1 | +| main.rs:811:19:811:19 | x | | main.rs:808:31:808:52 | T2 | +| main.rs:813:55:813:55 | x | | main.rs:813:31:813:52 | T2 | +| main.rs:813:68:817:5 | { ... } | | main.rs:813:27:813:28 | T1 | +| main.rs:814:13:814:13 | y | | main.rs:813:27:813:28 | T1 | +| main.rs:814:17:814:33 | ...::assoc(...) | | main.rs:813:27:813:28 | T1 | +| main.rs:814:32:814:32 | x | | main.rs:813:31:813:52 | T2 | +| main.rs:815:9:815:9 | y | | main.rs:813:27:813:28 | T1 | +| main.rs:816:9:816:25 | ...::assoc(...) | | main.rs:813:27:813:28 | T1 | +| main.rs:816:24:816:24 | x | | main.rs:813:31:813:52 | T2 | +| main.rs:821:49:821:49 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:821:49:821:49 | x | T | main.rs:821:32:821:46 | T2 | +| main.rs:821:71:823:5 | { ... } | | main.rs:821:28:821:29 | T1 | +| main.rs:822:9:822:9 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:822:9:822:9 | x | T | main.rs:821:32:821:46 | T2 | +| main.rs:822:9:822:11 | x.a | | main.rs:821:32:821:46 | T2 | +| main.rs:822:9:822:16 | ... .m1() | | main.rs:821:28:821:29 | T1 | +| main.rs:824:51:824:51 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:824:51:824:51 | x | T | main.rs:824:34:824:48 | T2 | +| main.rs:824:73:826:5 | { ... } | | main.rs:824:30:824:31 | T1 | +| main.rs:825:9:825:19 | ...::m1(...) | | main.rs:824:30:824:31 | T1 | +| main.rs:825:16:825:16 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:825:16:825:16 | x | T | main.rs:824:34:824:48 | T2 | +| main.rs:825:16:825:18 | x.a | | main.rs:824:34:824:48 | T2 | +| main.rs:827:51:827:51 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:827:51:827:51 | x | T | main.rs:827:34:827:48 | T2 | +| main.rs:827:73:829:5 | { ... } | | main.rs:827:30:827:31 | T1 | +| main.rs:828:9:828:24 | ...::m1(...) | | main.rs:827:30:827:31 | T1 | +| main.rs:828:21:828:21 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:828:21:828:21 | x | T | main.rs:827:34:827:48 | T2 | +| main.rs:828:21:828:23 | x.a | | main.rs:827:34:827:48 | T2 | +| main.rs:832:15:832:18 | SelfParam | | main.rs:749:5:752:5 | MyThing | +| main.rs:832:15:832:18 | SelfParam | T | main.rs:831:10:831:10 | T | +| main.rs:832:26:834:9 | { ... } | | main.rs:831:10:831:10 | T | +| main.rs:833:13:833:16 | self | | main.rs:749:5:752:5 | MyThing | +| main.rs:833:13:833:16 | self | T | main.rs:831:10:831:10 | T | +| main.rs:833:13:833:18 | self.a | | main.rs:831:10:831:10 | T | +| main.rs:836:18:836:18 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:836:18:836:18 | x | T | main.rs:831:10:831:10 | T | +| main.rs:836:32:838:9 | { ... } | | main.rs:831:10:831:10 | T | +| main.rs:837:13:837:13 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:837:13:837:13 | x | T | main.rs:831:10:831:10 | T | +| main.rs:837:13:837:15 | x.a | | main.rs:831:10:831:10 | T | +| main.rs:843:15:843:18 | SelfParam | | main.rs:841:5:844:5 | Self [trait MyTrait2] | +| main.rs:848:15:848:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:848:15:848:19 | SelfParam | TRef | main.rs:846:5:849:5 | Self [trait MyTrait3] | +| main.rs:851:46:851:46 | x | | main.rs:851:22:851:43 | T | +| main.rs:851:52:851:52 | y | | {EXTERNAL LOCATION} | & | +| main.rs:851:52:851:52 | y | TRef | main.rs:851:22:851:43 | T | +| main.rs:851:59:854:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:852:9:852:9 | x | | main.rs:851:22:851:43 | T | +| main.rs:852:9:852:14 | x.m2() | | {EXTERNAL LOCATION} | () | +| main.rs:853:9:853:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:853:9:853:9 | y | TRef | main.rs:851:22:851:43 | T | +| main.rs:853:9:853:14 | y.m2() | | {EXTERNAL LOCATION} | () | +| main.rs:856:16:914:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:857:13:857:13 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:857:13:857:13 | x | T | main.rs:754:5:755:14 | S1 | +| main.rs:857:17:857:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:857:17:857:33 | MyThing {...} | T | main.rs:754:5:755:14 | S1 | +| main.rs:857:30:857:31 | S1 | | main.rs:754:5:755:14 | S1 | +| main.rs:858:13:858:13 | y | | main.rs:749:5:752:5 | MyThing | +| main.rs:858:13:858:13 | y | T | main.rs:756:5:757:14 | S2 | +| main.rs:858:17:858:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:858:17:858:33 | MyThing {...} | T | main.rs:756:5:757:14 | S2 | +| main.rs:858:30:858:31 | S2 | | main.rs:756:5:757:14 | S2 | +| main.rs:860:9:860:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:860:18:860:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:860:18:860:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:860:18:860:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:860:18:860:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:860:18:860:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:860:26:860:26 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:860:26:860:26 | x | T | main.rs:754:5:755:14 | S1 | +| main.rs:860:26:860:31 | x.m1() | | main.rs:754:5:755:14 | S1 | +| main.rs:861:9:861:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:861:18:861:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:861:18:861:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:861:18:861:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:861:18:861:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:861:18:861:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:861:26:861:26 | y | | main.rs:749:5:752:5 | MyThing | +| main.rs:861:26:861:26 | y | T | main.rs:756:5:757:14 | S2 | +| main.rs:861:26:861:31 | y.m1() | | main.rs:756:5:757:14 | S2 | +| main.rs:863:13:863:13 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:863:13:863:13 | x | T | main.rs:754:5:755:14 | S1 | +| main.rs:863:17:863:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:863:17:863:33 | MyThing {...} | T | main.rs:754:5:755:14 | S1 | +| main.rs:863:30:863:31 | S1 | | main.rs:754:5:755:14 | S1 | +| main.rs:864:13:864:13 | y | | main.rs:749:5:752:5 | MyThing | +| main.rs:864:13:864:13 | y | T | main.rs:756:5:757:14 | S2 | +| main.rs:864:17:864:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:864:17:864:33 | MyThing {...} | T | main.rs:756:5:757:14 | S2 | +| main.rs:864:30:864:31 | S2 | | main.rs:756:5:757:14 | S2 | +| main.rs:866:9:866:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:866:18:866:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:866:18:866:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:866:18:866:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:866:18:866:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:866:18:866:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:866:26:866:26 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:867:13:867:13 | a | | main.rs:745:5:746:14 | S2 | -| main.rs:867:17:867:33 | call_trait_m1(...) | | main.rs:745:5:746:14 | S2 | -| main.rs:867:31:867:32 | y2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:867:31:867:32 | y2 | T | main.rs:745:5:746:14 | S2 | -| main.rs:868:9:868:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:868:18:868:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:868:18:868:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:868:18:868:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:868:18:868:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:868:18:868:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:868:26:868:26 | a | | main.rs:745:5:746:14 | S2 | -| main.rs:869:13:869:13 | a | | main.rs:745:5:746:14 | S2 | -| main.rs:869:17:869:35 | call_trait_m1_2(...) | | main.rs:745:5:746:14 | S2 | -| main.rs:869:33:869:34 | y2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:869:33:869:34 | y2 | T | main.rs:745:5:746:14 | S2 | -| main.rs:870:9:870:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:870:18:870:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:870:18:870:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:870:18:870:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:870:18:870:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:870:18:870:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:870:26:870:26 | a | | main.rs:745:5:746:14 | S2 | -| main.rs:871:13:871:13 | a | | main.rs:745:5:746:14 | S2 | -| main.rs:871:17:871:35 | call_trait_m1_3(...) | | main.rs:745:5:746:14 | S2 | -| main.rs:871:33:871:34 | y2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:871:33:871:34 | y2 | T | main.rs:745:5:746:14 | S2 | -| main.rs:872:9:872:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:872:18:872:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:872:18:872:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:872:18:872:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:872:18:872:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:872:18:872:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:872:26:872:26 | a | | main.rs:745:5:746:14 | S2 | -| main.rs:873:13:873:13 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:873:17:873:38 | call_trait_assoc_1(...) | | main.rs:743:5:744:14 | S1 | -| main.rs:873:36:873:37 | x2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:873:36:873:37 | x2 | T | main.rs:743:5:744:14 | S1 | -| main.rs:874:9:874:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:874:18:874:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:874:18:874:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:874:18:874:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:874:18:874:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:874:18:874:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:874:26:874:26 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:875:13:875:13 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:875:17:875:38 | call_trait_assoc_2(...) | | main.rs:743:5:744:14 | S1 | -| main.rs:875:36:875:37 | x2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:875:36:875:37 | x2 | T | main.rs:743:5:744:14 | S1 | -| main.rs:876:9:876:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:876:18:876:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:876:18:876:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:876:18:876:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:876:18:876:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:876:18:876:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:876:26:876:26 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:877:13:877:13 | a | | main.rs:745:5:746:14 | S2 | -| main.rs:877:17:877:38 | call_trait_assoc_1(...) | | main.rs:745:5:746:14 | S2 | -| main.rs:877:36:877:37 | y2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:877:36:877:37 | y2 | T | main.rs:745:5:746:14 | S2 | -| main.rs:878:9:878:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:878:18:878:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:878:18:878:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:878:18:878:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:878:18:878:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:878:18:878:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:878:26:878:26 | a | | main.rs:745:5:746:14 | S2 | -| main.rs:879:13:879:13 | a | | main.rs:745:5:746:14 | S2 | -| main.rs:879:17:879:38 | call_trait_assoc_2(...) | | main.rs:745:5:746:14 | S2 | -| main.rs:879:36:879:37 | y2 | | main.rs:738:5:741:5 | MyThing | -| main.rs:879:36:879:37 | y2 | T | main.rs:745:5:746:14 | S2 | -| main.rs:880:9:880:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:880:18:880:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:880:18:880:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:880:18:880:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:880:18:880:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:880:18:880:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:880:26:880:26 | a | | main.rs:745:5:746:14 | S2 | -| main.rs:882:13:882:14 | x3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:882:13:882:14 | x3 | T | main.rs:738:5:741:5 | MyThing | -| main.rs:882:13:882:14 | x3 | T.T | main.rs:743:5:744:14 | S1 | -| main.rs:882:18:884:9 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:882:18:884:9 | MyThing {...} | T | main.rs:738:5:741:5 | MyThing | -| main.rs:882:18:884:9 | MyThing {...} | T.T | main.rs:743:5:744:14 | S1 | -| main.rs:883:16:883:32 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:883:16:883:32 | MyThing {...} | T | main.rs:743:5:744:14 | S1 | -| main.rs:883:29:883:30 | S1 | | main.rs:743:5:744:14 | S1 | -| main.rs:885:13:885:14 | y3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:885:13:885:14 | y3 | T | main.rs:738:5:741:5 | MyThing | -| main.rs:885:13:885:14 | y3 | T.T | main.rs:745:5:746:14 | S2 | -| main.rs:885:18:887:9 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:885:18:887:9 | MyThing {...} | T | main.rs:738:5:741:5 | MyThing | -| main.rs:885:18:887:9 | MyThing {...} | T.T | main.rs:745:5:746:14 | S2 | -| main.rs:886:16:886:32 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | -| main.rs:886:16:886:32 | MyThing {...} | T | main.rs:745:5:746:14 | S2 | -| main.rs:886:29:886:30 | S2 | | main.rs:745:5:746:14 | S2 | -| main.rs:889:13:889:13 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:889:17:889:39 | call_trait_thing_m1(...) | | main.rs:743:5:744:14 | S1 | -| main.rs:889:37:889:38 | x3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:889:37:889:38 | x3 | T | main.rs:738:5:741:5 | MyThing | -| main.rs:889:37:889:38 | x3 | T.T | main.rs:743:5:744:14 | S1 | -| main.rs:890:9:890:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:890:18:890:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:890:18:890:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:890:18:890:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:890:18:890:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:890:18:890:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:890:26:890:26 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:891:13:891:13 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:891:17:891:41 | call_trait_thing_m1_2(...) | | main.rs:743:5:744:14 | S1 | -| main.rs:891:39:891:40 | x3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:891:39:891:40 | x3 | T | main.rs:738:5:741:5 | MyThing | -| main.rs:891:39:891:40 | x3 | T.T | main.rs:743:5:744:14 | S1 | -| main.rs:892:9:892:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:892:18:892:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:892:18:892:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:892:18:892:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:892:18:892:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:892:18:892:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:892:26:892:26 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:893:13:893:13 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:893:17:893:41 | call_trait_thing_m1_3(...) | | main.rs:743:5:744:14 | S1 | -| main.rs:893:39:893:40 | x3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:893:39:893:40 | x3 | T | main.rs:738:5:741:5 | MyThing | -| main.rs:893:39:893:40 | x3 | T.T | main.rs:743:5:744:14 | S1 | -| main.rs:894:9:894:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:894:18:894:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:894:18:894:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:894:18:894:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:894:18:894:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:894:18:894:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:894:26:894:26 | a | | main.rs:743:5:744:14 | S1 | -| main.rs:895:13:895:13 | b | | main.rs:745:5:746:14 | S2 | -| main.rs:895:17:895:39 | call_trait_thing_m1(...) | | main.rs:745:5:746:14 | S2 | -| main.rs:895:37:895:38 | y3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:895:37:895:38 | y3 | T | main.rs:738:5:741:5 | MyThing | -| main.rs:895:37:895:38 | y3 | T.T | main.rs:745:5:746:14 | S2 | -| main.rs:896:9:896:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:896:18:896:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:896:18:896:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:896:18:896:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:896:18:896:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:896:18:896:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:896:26:896:26 | b | | main.rs:745:5:746:14 | S2 | -| main.rs:897:13:897:13 | b | | main.rs:745:5:746:14 | S2 | -| main.rs:897:17:897:41 | call_trait_thing_m1_2(...) | | main.rs:745:5:746:14 | S2 | -| main.rs:897:39:897:40 | y3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:897:39:897:40 | y3 | T | main.rs:738:5:741:5 | MyThing | -| main.rs:897:39:897:40 | y3 | T.T | main.rs:745:5:746:14 | S2 | -| main.rs:898:9:898:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:898:18:898:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:898:18:898:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:898:18:898:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:898:18:898:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:898:18:898:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:898:26:898:26 | b | | main.rs:745:5:746:14 | S2 | -| main.rs:899:13:899:13 | b | | main.rs:745:5:746:14 | S2 | -| main.rs:899:17:899:41 | call_trait_thing_m1_3(...) | | main.rs:745:5:746:14 | S2 | -| main.rs:899:39:899:40 | y3 | | main.rs:738:5:741:5 | MyThing | -| main.rs:899:39:899:40 | y3 | T | main.rs:738:5:741:5 | MyThing | -| main.rs:899:39:899:40 | y3 | T.T | main.rs:745:5:746:14 | S2 | -| main.rs:900:9:900:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:900:18:900:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:900:18:900:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:900:18:900:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:900:18:900:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:900:18:900:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:900:26:900:26 | b | | main.rs:745:5:746:14 | S2 | -| main.rs:901:13:901:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:901:17:901:26 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:901:24:901:25 | S1 | | main.rs:743:5:744:14 | S1 | -| main.rs:902:13:902:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:902:22:902:31 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:902:29:902:30 | S2 | | main.rs:745:5:746:14 | S2 | -| main.rs:919:15:919:18 | SelfParam | | main.rs:907:5:911:5 | MyEnum | -| main.rs:919:15:919:18 | SelfParam | A | main.rs:918:10:918:10 | T | -| main.rs:919:26:924:9 | { ... } | | main.rs:918:10:918:10 | T | -| main.rs:920:13:923:13 | match self { ... } | | main.rs:918:10:918:10 | T | -| main.rs:920:19:920:22 | self | | main.rs:907:5:911:5 | MyEnum | -| main.rs:920:19:920:22 | self | A | main.rs:918:10:918:10 | T | -| main.rs:921:17:921:29 | ...::C1(...) | | main.rs:907:5:911:5 | MyEnum | -| main.rs:921:17:921:29 | ...::C1(...) | A | main.rs:918:10:918:10 | T | -| main.rs:921:28:921:28 | a | | main.rs:918:10:918:10 | T | -| main.rs:921:34:921:34 | a | | main.rs:918:10:918:10 | T | -| main.rs:922:17:922:32 | ...::C2 {...} | | main.rs:907:5:911:5 | MyEnum | -| main.rs:922:17:922:32 | ...::C2 {...} | A | main.rs:918:10:918:10 | T | -| main.rs:922:30:922:30 | a | | main.rs:918:10:918:10 | T | -| main.rs:922:37:922:37 | a | | main.rs:918:10:918:10 | T | -| main.rs:927:16:933:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:928:13:928:13 | x | | main.rs:907:5:911:5 | MyEnum | -| main.rs:928:13:928:13 | x | A | main.rs:913:5:914:14 | S1 | -| main.rs:928:17:928:30 | ...::C1(...) | | main.rs:907:5:911:5 | MyEnum | -| main.rs:928:17:928:30 | ...::C1(...) | A | main.rs:913:5:914:14 | S1 | -| main.rs:928:28:928:29 | S1 | | main.rs:913:5:914:14 | S1 | -| main.rs:929:13:929:13 | y | | main.rs:907:5:911:5 | MyEnum | -| main.rs:929:13:929:13 | y | A | main.rs:915:5:916:14 | S2 | -| main.rs:929:17:929:36 | ...::C2 {...} | | main.rs:907:5:911:5 | MyEnum | -| main.rs:929:17:929:36 | ...::C2 {...} | A | main.rs:915:5:916:14 | S2 | -| main.rs:929:33:929:34 | S2 | | main.rs:915:5:916:14 | S2 | -| main.rs:931:9:931:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:931:18:931:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:931:18:931:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:931:18:931:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:931:18:931:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:931:18:931:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:931:26:931:26 | x | | main.rs:907:5:911:5 | MyEnum | -| main.rs:931:26:931:26 | x | A | main.rs:913:5:914:14 | S1 | -| main.rs:931:26:931:31 | x.m1() | | main.rs:913:5:914:14 | S1 | -| main.rs:932:9:932:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:932:18:932:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:932:18:932:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:932:18:932:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:932:18:932:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:932:18:932:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:932:26:932:26 | y | | main.rs:907:5:911:5 | MyEnum | -| main.rs:932:26:932:26 | y | A | main.rs:915:5:916:14 | S2 | -| main.rs:932:26:932:31 | y.m1() | | main.rs:915:5:916:14 | S2 | -| main.rs:954:15:954:18 | SelfParam | | main.rs:952:5:955:5 | Self [trait MyTrait1] | -| main.rs:959:15:959:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:959:15:959:19 | SelfParam | TRef | main.rs:957:5:969:5 | Self [trait MyTrait2] | -| main.rs:962:9:968:9 | { ... } | | main.rs:957:20:957:22 | Tr2 | -| main.rs:963:13:967:13 | if ... {...} else {...} | | main.rs:957:20:957:22 | Tr2 | -| main.rs:963:16:963:16 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:963:16:963:20 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:963:20:963:20 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:963:22:965:13 | { ... } | | main.rs:957:20:957:22 | Tr2 | -| main.rs:964:17:964:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:964:17:964:20 | self | TRef | main.rs:957:5:969:5 | Self [trait MyTrait2] | -| main.rs:964:17:964:25 | self.m1() | | main.rs:957:20:957:22 | Tr2 | -| main.rs:965:20:967:13 | { ... } | | main.rs:957:20:957:22 | Tr2 | -| main.rs:966:17:966:31 | ...::m1(...) | | main.rs:957:20:957:22 | Tr2 | -| main.rs:966:26:966:30 | * ... | | main.rs:957:5:969:5 | Self [trait MyTrait2] | -| main.rs:966:27:966:30 | self | | {EXTERNAL LOCATION} | & | -| main.rs:966:27:966:30 | self | TRef | main.rs:957:5:969:5 | Self [trait MyTrait2] | -| main.rs:973:15:973:18 | SelfParam | | main.rs:971:5:983:5 | Self [trait MyTrait3] | -| main.rs:976:9:982:9 | { ... } | | main.rs:971:20:971:22 | Tr3 | -| main.rs:977:13:981:13 | if ... {...} else {...} | | main.rs:971:20:971:22 | Tr3 | -| main.rs:977:16:977:16 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:977:16:977:20 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:977:20:977:20 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:977:22:979:13 | { ... } | | main.rs:971:20:971:22 | Tr3 | -| main.rs:978:17:978:20 | self | | main.rs:971:5:983:5 | Self [trait MyTrait3] | -| main.rs:978:17:978:25 | self.m2() | | main.rs:937:5:940:5 | MyThing | -| main.rs:978:17:978:25 | self.m2() | A | main.rs:971:20:971:22 | Tr3 | -| main.rs:978:17:978:27 | ... .a | | main.rs:971:20:971:22 | Tr3 | -| main.rs:979:20:981:13 | { ... } | | main.rs:971:20:971:22 | Tr3 | -| main.rs:980:17:980:31 | ...::m2(...) | | main.rs:937:5:940:5 | MyThing | -| main.rs:980:17:980:31 | ...::m2(...) | A | main.rs:971:20:971:22 | Tr3 | -| main.rs:980:17:980:33 | ... .a | | main.rs:971:20:971:22 | Tr3 | -| main.rs:980:26:980:30 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:980:26:980:30 | &self | TRef | main.rs:971:5:983:5 | Self [trait MyTrait3] | -| main.rs:980:27:980:30 | self | | main.rs:971:5:983:5 | Self [trait MyTrait3] | -| main.rs:987:15:987:18 | SelfParam | | main.rs:937:5:940:5 | MyThing | -| main.rs:987:15:987:18 | SelfParam | A | main.rs:985:10:985:10 | T | -| main.rs:987:26:989:9 | { ... } | | main.rs:985:10:985:10 | T | -| main.rs:988:13:988:16 | self | | main.rs:937:5:940:5 | MyThing | -| main.rs:988:13:988:16 | self | A | main.rs:985:10:985:10 | T | -| main.rs:988:13:988:18 | self.a | | main.rs:985:10:985:10 | T | -| main.rs:996:15:996:18 | SelfParam | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:996:15:996:18 | SelfParam | A | main.rs:994:10:994:10 | T | -| main.rs:996:35:998:9 | { ... } | | main.rs:937:5:940:5 | MyThing | -| main.rs:996:35:998:9 | { ... } | A | main.rs:994:10:994:10 | T | -| main.rs:997:13:997:33 | MyThing {...} | | main.rs:937:5:940:5 | MyThing | -| main.rs:997:13:997:33 | MyThing {...} | A | main.rs:994:10:994:10 | T | -| main.rs:997:26:997:29 | self | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:997:26:997:29 | self | A | main.rs:994:10:994:10 | T | -| main.rs:997:26:997:31 | self.a | | main.rs:994:10:994:10 | T | -| main.rs:1005:44:1005:44 | x | | main.rs:1005:26:1005:41 | T2 | -| main.rs:1005:57:1007:5 | { ... } | | main.rs:1005:22:1005:23 | T1 | -| main.rs:1006:9:1006:9 | x | | main.rs:1005:26:1005:41 | T2 | -| main.rs:1006:9:1006:14 | x.m1() | | main.rs:1005:22:1005:23 | T1 | -| main.rs:1009:56:1009:56 | x | | main.rs:1009:39:1009:53 | T | -| main.rs:1009:62:1013:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1011:13:1011:13 | a | | main.rs:937:5:940:5 | MyThing | -| main.rs:1011:13:1011:13 | a | A | main.rs:947:5:948:14 | S1 | -| main.rs:1011:17:1011:17 | x | | main.rs:1009:39:1009:53 | T | -| main.rs:1011:17:1011:22 | x.m1() | | main.rs:937:5:940:5 | MyThing | -| main.rs:1011:17:1011:22 | x.m1() | A | main.rs:947:5:948:14 | S1 | -| main.rs:1012:9:1012:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1012:18:1012:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1012:18:1012:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1012:18:1012:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1012:18:1012:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1012:18:1012:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1012:26:1012:26 | a | | main.rs:937:5:940:5 | MyThing | -| main.rs:1012:26:1012:26 | a | A | main.rs:947:5:948:14 | S1 | -| main.rs:1015:16:1039:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1016:13:1016:13 | x | | main.rs:937:5:940:5 | MyThing | -| main.rs:1016:13:1016:13 | x | A | main.rs:947:5:948:14 | S1 | -| main.rs:1016:17:1016:33 | MyThing {...} | | main.rs:937:5:940:5 | MyThing | -| main.rs:1016:17:1016:33 | MyThing {...} | A | main.rs:947:5:948:14 | S1 | -| main.rs:1016:30:1016:31 | S1 | | main.rs:947:5:948:14 | S1 | -| main.rs:1017:13:1017:13 | y | | main.rs:937:5:940:5 | MyThing | -| main.rs:1017:13:1017:13 | y | A | main.rs:949:5:950:14 | S2 | -| main.rs:1017:17:1017:33 | MyThing {...} | | main.rs:937:5:940:5 | MyThing | -| main.rs:1017:17:1017:33 | MyThing {...} | A | main.rs:949:5:950:14 | S2 | -| main.rs:1017:30:1017:31 | S2 | | main.rs:949:5:950:14 | S2 | -| main.rs:1019:9:1019:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1019:18:1019:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1019:18:1019:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1019:18:1019:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1019:18:1019:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1019:18:1019:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1019:26:1019:26 | x | | main.rs:937:5:940:5 | MyThing | -| main.rs:1019:26:1019:26 | x | A | main.rs:947:5:948:14 | S1 | -| main.rs:1019:26:1019:31 | x.m1() | | main.rs:947:5:948:14 | S1 | -| main.rs:1020:9:1020:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1020:18:1020:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1020:18:1020:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1020:18:1020:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1020:18:1020:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1020:18:1020:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1020:26:1020:26 | y | | main.rs:937:5:940:5 | MyThing | -| main.rs:1020:26:1020:26 | y | A | main.rs:949:5:950:14 | S2 | -| main.rs:1020:26:1020:31 | y.m1() | | main.rs:949:5:950:14 | S2 | -| main.rs:1022:13:1022:13 | x | | main.rs:937:5:940:5 | MyThing | -| main.rs:1022:13:1022:13 | x | A | main.rs:947:5:948:14 | S1 | -| main.rs:1022:17:1022:33 | MyThing {...} | | main.rs:937:5:940:5 | MyThing | -| main.rs:1022:17:1022:33 | MyThing {...} | A | main.rs:947:5:948:14 | S1 | -| main.rs:1022:30:1022:31 | S1 | | main.rs:947:5:948:14 | S1 | -| main.rs:1023:13:1023:13 | y | | main.rs:937:5:940:5 | MyThing | -| main.rs:1023:13:1023:13 | y | A | main.rs:949:5:950:14 | S2 | -| main.rs:1023:17:1023:33 | MyThing {...} | | main.rs:937:5:940:5 | MyThing | -| main.rs:1023:17:1023:33 | MyThing {...} | A | main.rs:949:5:950:14 | S2 | -| main.rs:1023:30:1023:31 | S2 | | main.rs:949:5:950:14 | S2 | -| main.rs:1025:9:1025:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1025:18:1025:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1025:18:1025:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1025:18:1025:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1025:18:1025:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1025:18:1025:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1025:26:1025:26 | x | | main.rs:937:5:940:5 | MyThing | -| main.rs:1025:26:1025:26 | x | A | main.rs:947:5:948:14 | S1 | -| main.rs:1025:26:1025:31 | x.m2() | | main.rs:947:5:948:14 | S1 | -| main.rs:1026:9:1026:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1026:18:1026:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1026:18:1026:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1026:18:1026:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1026:18:1026:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1026:18:1026:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1026:26:1026:26 | y | | main.rs:937:5:940:5 | MyThing | -| main.rs:1026:26:1026:26 | y | A | main.rs:949:5:950:14 | S2 | -| main.rs:1026:26:1026:31 | y.m2() | | main.rs:949:5:950:14 | S2 | -| main.rs:1028:13:1028:13 | x | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1028:13:1028:13 | x | A | main.rs:947:5:948:14 | S1 | -| main.rs:1028:17:1028:34 | MyThing2 {...} | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1028:17:1028:34 | MyThing2 {...} | A | main.rs:947:5:948:14 | S1 | -| main.rs:1028:31:1028:32 | S1 | | main.rs:947:5:948:14 | S1 | -| main.rs:1029:13:1029:13 | y | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1029:13:1029:13 | y | A | main.rs:949:5:950:14 | S2 | -| main.rs:1029:17:1029:34 | MyThing2 {...} | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1029:17:1029:34 | MyThing2 {...} | A | main.rs:949:5:950:14 | S2 | -| main.rs:1029:31:1029:32 | S2 | | main.rs:949:5:950:14 | S2 | +| main.rs:866:18:866:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:866:18:866:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:866:18:866:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:866:26:866:26 | x | | main.rs:749:5:752:5 | MyThing | +| main.rs:866:26:866:26 | x | T | main.rs:754:5:755:14 | S1 | +| main.rs:866:26:866:31 | x.m2() | | main.rs:754:5:755:14 | S1 | +| main.rs:867:9:867:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:867:18:867:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:867:18:867:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:867:18:867:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:867:18:867:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:867:18:867:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:867:26:867:26 | y | | main.rs:749:5:752:5 | MyThing | +| main.rs:867:26:867:26 | y | T | main.rs:756:5:757:14 | S2 | +| main.rs:867:26:867:31 | y.m2() | | main.rs:756:5:757:14 | S2 | +| main.rs:869:13:869:14 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:869:13:869:14 | x2 | T | main.rs:754:5:755:14 | S1 | +| main.rs:869:18:869:34 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:869:18:869:34 | MyThing {...} | T | main.rs:754:5:755:14 | S1 | +| main.rs:869:31:869:32 | S1 | | main.rs:754:5:755:14 | S1 | +| main.rs:870:13:870:14 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:870:13:870:14 | y2 | T | main.rs:756:5:757:14 | S2 | +| main.rs:870:18:870:34 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:870:18:870:34 | MyThing {...} | T | main.rs:756:5:757:14 | S2 | +| main.rs:870:31:870:32 | S2 | | main.rs:756:5:757:14 | S2 | +| main.rs:872:13:872:13 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:872:17:872:33 | call_trait_m1(...) | | main.rs:754:5:755:14 | S1 | +| main.rs:872:31:872:32 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:872:31:872:32 | x2 | T | main.rs:754:5:755:14 | S1 | +| main.rs:873:9:873:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:873:18:873:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:873:18:873:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:873:18:873:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:873:18:873:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:873:18:873:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:873:26:873:26 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:874:13:874:13 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:874:17:874:35 | call_trait_m1_2(...) | | main.rs:754:5:755:14 | S1 | +| main.rs:874:33:874:34 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:874:33:874:34 | x2 | T | main.rs:754:5:755:14 | S1 | +| main.rs:875:9:875:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:875:18:875:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:875:18:875:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:875:18:875:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:875:18:875:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:875:18:875:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:875:26:875:26 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:876:13:876:13 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:876:17:876:35 | call_trait_m1_3(...) | | main.rs:754:5:755:14 | S1 | +| main.rs:876:33:876:34 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:876:33:876:34 | x2 | T | main.rs:754:5:755:14 | S1 | +| main.rs:877:9:877:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:877:18:877:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:877:18:877:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:877:18:877:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:877:18:877:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:877:18:877:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:877:26:877:26 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:878:13:878:13 | a | | main.rs:756:5:757:14 | S2 | +| main.rs:878:17:878:33 | call_trait_m1(...) | | main.rs:756:5:757:14 | S2 | +| main.rs:878:31:878:32 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:878:31:878:32 | y2 | T | main.rs:756:5:757:14 | S2 | +| main.rs:879:9:879:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:879:18:879:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:879:18:879:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:879:18:879:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:879:18:879:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:879:18:879:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:879:26:879:26 | a | | main.rs:756:5:757:14 | S2 | +| main.rs:880:13:880:13 | a | | main.rs:756:5:757:14 | S2 | +| main.rs:880:17:880:35 | call_trait_m1_2(...) | | main.rs:756:5:757:14 | S2 | +| main.rs:880:33:880:34 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:880:33:880:34 | y2 | T | main.rs:756:5:757:14 | S2 | +| main.rs:881:9:881:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:881:18:881:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:881:18:881:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:881:18:881:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:881:18:881:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:881:18:881:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:881:26:881:26 | a | | main.rs:756:5:757:14 | S2 | +| main.rs:882:13:882:13 | a | | main.rs:756:5:757:14 | S2 | +| main.rs:882:17:882:35 | call_trait_m1_3(...) | | main.rs:756:5:757:14 | S2 | +| main.rs:882:33:882:34 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:882:33:882:34 | y2 | T | main.rs:756:5:757:14 | S2 | +| main.rs:883:9:883:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:883:18:883:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:883:18:883:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:883:18:883:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:883:18:883:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:883:18:883:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:883:26:883:26 | a | | main.rs:756:5:757:14 | S2 | +| main.rs:884:13:884:13 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:884:17:884:38 | call_trait_assoc_1(...) | | main.rs:754:5:755:14 | S1 | +| main.rs:884:36:884:37 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:884:36:884:37 | x2 | T | main.rs:754:5:755:14 | S1 | +| main.rs:885:9:885:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:885:18:885:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:885:18:885:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:885:18:885:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:885:18:885:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:885:18:885:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:885:26:885:26 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:886:13:886:13 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:886:17:886:38 | call_trait_assoc_2(...) | | main.rs:754:5:755:14 | S1 | +| main.rs:886:36:886:37 | x2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:886:36:886:37 | x2 | T | main.rs:754:5:755:14 | S1 | +| main.rs:887:9:887:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:887:18:887:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:887:18:887:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:887:18:887:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:887:18:887:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:887:18:887:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:887:26:887:26 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:888:13:888:13 | a | | main.rs:756:5:757:14 | S2 | +| main.rs:888:17:888:38 | call_trait_assoc_1(...) | | main.rs:756:5:757:14 | S2 | +| main.rs:888:36:888:37 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:888:36:888:37 | y2 | T | main.rs:756:5:757:14 | S2 | +| main.rs:889:9:889:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:889:18:889:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:889:18:889:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:889:18:889:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:889:18:889:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:889:18:889:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:889:26:889:26 | a | | main.rs:756:5:757:14 | S2 | +| main.rs:890:13:890:13 | a | | main.rs:756:5:757:14 | S2 | +| main.rs:890:17:890:38 | call_trait_assoc_2(...) | | main.rs:756:5:757:14 | S2 | +| main.rs:890:36:890:37 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:890:36:890:37 | y2 | T | main.rs:756:5:757:14 | S2 | +| main.rs:891:9:891:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:891:18:891:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:891:18:891:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:891:18:891:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:891:18:891:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:891:18:891:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:891:26:891:26 | a | | main.rs:756:5:757:14 | S2 | +| main.rs:893:13:893:14 | x3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:893:13:893:14 | x3 | T | main.rs:749:5:752:5 | MyThing | +| main.rs:893:13:893:14 | x3 | T.T | main.rs:754:5:755:14 | S1 | +| main.rs:893:18:895:9 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:893:18:895:9 | MyThing {...} | T | main.rs:749:5:752:5 | MyThing | +| main.rs:893:18:895:9 | MyThing {...} | T.T | main.rs:754:5:755:14 | S1 | +| main.rs:894:16:894:32 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:894:16:894:32 | MyThing {...} | T | main.rs:754:5:755:14 | S1 | +| main.rs:894:29:894:30 | S1 | | main.rs:754:5:755:14 | S1 | +| main.rs:896:13:896:14 | y3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:896:13:896:14 | y3 | T | main.rs:749:5:752:5 | MyThing | +| main.rs:896:13:896:14 | y3 | T.T | main.rs:756:5:757:14 | S2 | +| main.rs:896:18:898:9 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:896:18:898:9 | MyThing {...} | T | main.rs:749:5:752:5 | MyThing | +| main.rs:896:18:898:9 | MyThing {...} | T.T | main.rs:756:5:757:14 | S2 | +| main.rs:897:16:897:32 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | +| main.rs:897:16:897:32 | MyThing {...} | T | main.rs:756:5:757:14 | S2 | +| main.rs:897:29:897:30 | S2 | | main.rs:756:5:757:14 | S2 | +| main.rs:900:13:900:13 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:900:17:900:39 | call_trait_thing_m1(...) | | main.rs:754:5:755:14 | S1 | +| main.rs:900:37:900:38 | x3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:900:37:900:38 | x3 | T | main.rs:749:5:752:5 | MyThing | +| main.rs:900:37:900:38 | x3 | T.T | main.rs:754:5:755:14 | S1 | +| main.rs:901:9:901:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:901:18:901:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:901:18:901:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:901:18:901:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:901:18:901:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:901:18:901:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:901:26:901:26 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:902:13:902:13 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:902:17:902:41 | call_trait_thing_m1_2(...) | | main.rs:754:5:755:14 | S1 | +| main.rs:902:39:902:40 | x3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:902:39:902:40 | x3 | T | main.rs:749:5:752:5 | MyThing | +| main.rs:902:39:902:40 | x3 | T.T | main.rs:754:5:755:14 | S1 | +| main.rs:903:9:903:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:903:18:903:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:903:18:903:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:903:18:903:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:903:18:903:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:903:18:903:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:903:26:903:26 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:904:13:904:13 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:904:17:904:41 | call_trait_thing_m1_3(...) | | main.rs:754:5:755:14 | S1 | +| main.rs:904:39:904:40 | x3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:904:39:904:40 | x3 | T | main.rs:749:5:752:5 | MyThing | +| main.rs:904:39:904:40 | x3 | T.T | main.rs:754:5:755:14 | S1 | +| main.rs:905:9:905:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:905:18:905:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:905:18:905:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:905:18:905:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:905:18:905:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:905:18:905:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:905:26:905:26 | a | | main.rs:754:5:755:14 | S1 | +| main.rs:906:13:906:13 | b | | main.rs:756:5:757:14 | S2 | +| main.rs:906:17:906:39 | call_trait_thing_m1(...) | | main.rs:756:5:757:14 | S2 | +| main.rs:906:37:906:38 | y3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:906:37:906:38 | y3 | T | main.rs:749:5:752:5 | MyThing | +| main.rs:906:37:906:38 | y3 | T.T | main.rs:756:5:757:14 | S2 | +| main.rs:907:9:907:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:907:18:907:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:907:18:907:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:907:18:907:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:907:18:907:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:907:18:907:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:907:26:907:26 | b | | main.rs:756:5:757:14 | S2 | +| main.rs:908:13:908:13 | b | | main.rs:756:5:757:14 | S2 | +| main.rs:908:17:908:41 | call_trait_thing_m1_2(...) | | main.rs:756:5:757:14 | S2 | +| main.rs:908:39:908:40 | y3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:908:39:908:40 | y3 | T | main.rs:749:5:752:5 | MyThing | +| main.rs:908:39:908:40 | y3 | T.T | main.rs:756:5:757:14 | S2 | +| main.rs:909:9:909:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:909:18:909:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:909:18:909:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:909:18:909:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:909:18:909:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:909:18:909:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:909:26:909:26 | b | | main.rs:756:5:757:14 | S2 | +| main.rs:910:13:910:13 | b | | main.rs:756:5:757:14 | S2 | +| main.rs:910:17:910:41 | call_trait_thing_m1_3(...) | | main.rs:756:5:757:14 | S2 | +| main.rs:910:39:910:40 | y3 | | main.rs:749:5:752:5 | MyThing | +| main.rs:910:39:910:40 | y3 | T | main.rs:749:5:752:5 | MyThing | +| main.rs:910:39:910:40 | y3 | T.T | main.rs:756:5:757:14 | S2 | +| main.rs:911:9:911:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:911:18:911:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:911:18:911:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:911:18:911:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:911:18:911:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:911:18:911:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:911:26:911:26 | b | | main.rs:756:5:757:14 | S2 | +| main.rs:912:13:912:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:912:17:912:26 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:912:24:912:25 | S1 | | main.rs:754:5:755:14 | S1 | +| main.rs:913:13:913:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:913:22:913:31 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:913:29:913:30 | S2 | | main.rs:756:5:757:14 | S2 | +| main.rs:930:15:930:18 | SelfParam | | main.rs:918:5:922:5 | MyEnum | +| main.rs:930:15:930:18 | SelfParam | A | main.rs:929:10:929:10 | T | +| main.rs:930:26:935:9 | { ... } | | main.rs:929:10:929:10 | T | +| main.rs:931:13:934:13 | match self { ... } | | main.rs:929:10:929:10 | T | +| main.rs:931:19:931:22 | self | | main.rs:918:5:922:5 | MyEnum | +| main.rs:931:19:931:22 | self | A | main.rs:929:10:929:10 | T | +| main.rs:932:17:932:29 | ...::C1(...) | | main.rs:918:5:922:5 | MyEnum | +| main.rs:932:17:932:29 | ...::C1(...) | A | main.rs:929:10:929:10 | T | +| main.rs:932:28:932:28 | a | | main.rs:929:10:929:10 | T | +| main.rs:932:34:932:34 | a | | main.rs:929:10:929:10 | T | +| main.rs:933:17:933:32 | ...::C2 {...} | | main.rs:918:5:922:5 | MyEnum | +| main.rs:933:17:933:32 | ...::C2 {...} | A | main.rs:929:10:929:10 | T | +| main.rs:933:30:933:30 | a | | main.rs:929:10:929:10 | T | +| main.rs:933:37:933:37 | a | | main.rs:929:10:929:10 | T | +| main.rs:938:16:944:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:939:13:939:13 | x | | main.rs:918:5:922:5 | MyEnum | +| main.rs:939:13:939:13 | x | A | main.rs:924:5:925:14 | S1 | +| main.rs:939:17:939:30 | ...::C1(...) | | main.rs:918:5:922:5 | MyEnum | +| main.rs:939:17:939:30 | ...::C1(...) | A | main.rs:924:5:925:14 | S1 | +| main.rs:939:28:939:29 | S1 | | main.rs:924:5:925:14 | S1 | +| main.rs:940:13:940:13 | y | | main.rs:918:5:922:5 | MyEnum | +| main.rs:940:13:940:13 | y | A | main.rs:926:5:927:14 | S2 | +| main.rs:940:17:940:36 | ...::C2 {...} | | main.rs:918:5:922:5 | MyEnum | +| main.rs:940:17:940:36 | ...::C2 {...} | A | main.rs:926:5:927:14 | S2 | +| main.rs:940:33:940:34 | S2 | | main.rs:926:5:927:14 | S2 | +| main.rs:942:9:942:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:942:18:942:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:942:18:942:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:942:18:942:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:942:18:942:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:942:18:942:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:942:26:942:26 | x | | main.rs:918:5:922:5 | MyEnum | +| main.rs:942:26:942:26 | x | A | main.rs:924:5:925:14 | S1 | +| main.rs:942:26:942:31 | x.m1() | | main.rs:924:5:925:14 | S1 | +| main.rs:943:9:943:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:943:18:943:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:943:18:943:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:943:18:943:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:943:18:943:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:943:18:943:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:943:26:943:26 | y | | main.rs:918:5:922:5 | MyEnum | +| main.rs:943:26:943:26 | y | A | main.rs:926:5:927:14 | S2 | +| main.rs:943:26:943:31 | y.m1() | | main.rs:926:5:927:14 | S2 | +| main.rs:965:15:965:18 | SelfParam | | main.rs:963:5:966:5 | Self [trait MyTrait1] | +| main.rs:970:15:970:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:970:15:970:19 | SelfParam | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | +| main.rs:973:9:979:9 | { ... } | | main.rs:968:20:968:22 | Tr2 | +| main.rs:974:13:978:13 | if ... {...} else {...} | | main.rs:968:20:968:22 | Tr2 | +| main.rs:974:16:974:16 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:974:16:974:20 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:974:20:974:20 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:974:22:976:13 | { ... } | | main.rs:968:20:968:22 | Tr2 | +| main.rs:975:17:975:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:975:17:975:20 | self | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | +| main.rs:975:17:975:25 | self.m1() | | main.rs:968:20:968:22 | Tr2 | +| main.rs:976:20:978:13 | { ... } | | main.rs:968:20:968:22 | Tr2 | +| main.rs:977:17:977:31 | ...::m1(...) | | main.rs:968:20:968:22 | Tr2 | +| main.rs:977:26:977:30 | * ... | | main.rs:968:5:980:5 | Self [trait MyTrait2] | +| main.rs:977:27:977:30 | self | | {EXTERNAL LOCATION} | & | +| main.rs:977:27:977:30 | self | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | +| main.rs:984:15:984:18 | SelfParam | | main.rs:982:5:994:5 | Self [trait MyTrait3] | +| main.rs:987:9:993:9 | { ... } | | main.rs:982:20:982:22 | Tr3 | +| main.rs:988:13:992:13 | if ... {...} else {...} | | main.rs:982:20:982:22 | Tr3 | +| main.rs:988:16:988:16 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:988:16:988:20 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:988:20:988:20 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:988:22:990:13 | { ... } | | main.rs:982:20:982:22 | Tr3 | +| main.rs:989:17:989:20 | self | | main.rs:982:5:994:5 | Self [trait MyTrait3] | +| main.rs:989:17:989:25 | self.m2() | | main.rs:948:5:951:5 | MyThing | +| main.rs:989:17:989:25 | self.m2() | A | main.rs:982:20:982:22 | Tr3 | +| main.rs:989:17:989:27 | ... .a | | main.rs:982:20:982:22 | Tr3 | +| main.rs:990:20:992:13 | { ... } | | main.rs:982:20:982:22 | Tr3 | +| main.rs:991:17:991:31 | ...::m2(...) | | main.rs:948:5:951:5 | MyThing | +| main.rs:991:17:991:31 | ...::m2(...) | A | main.rs:982:20:982:22 | Tr3 | +| main.rs:991:17:991:33 | ... .a | | main.rs:982:20:982:22 | Tr3 | +| main.rs:991:26:991:30 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:991:26:991:30 | &self | TRef | main.rs:982:5:994:5 | Self [trait MyTrait3] | +| main.rs:991:27:991:30 | self | | main.rs:982:5:994:5 | Self [trait MyTrait3] | +| main.rs:998:15:998:18 | SelfParam | | main.rs:948:5:951:5 | MyThing | +| main.rs:998:15:998:18 | SelfParam | A | main.rs:996:10:996:10 | T | +| main.rs:998:26:1000:9 | { ... } | | main.rs:996:10:996:10 | T | +| main.rs:999:13:999:16 | self | | main.rs:948:5:951:5 | MyThing | +| main.rs:999:13:999:16 | self | A | main.rs:996:10:996:10 | T | +| main.rs:999:13:999:18 | self.a | | main.rs:996:10:996:10 | T | +| main.rs:1007:15:1007:18 | SelfParam | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1007:15:1007:18 | SelfParam | A | main.rs:1005:10:1005:10 | T | +| main.rs:1007:35:1009:9 | { ... } | | main.rs:948:5:951:5 | MyThing | +| main.rs:1007:35:1009:9 | { ... } | A | main.rs:1005:10:1005:10 | T | +| main.rs:1008:13:1008:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | +| main.rs:1008:13:1008:33 | MyThing {...} | A | main.rs:1005:10:1005:10 | T | +| main.rs:1008:26:1008:29 | self | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1008:26:1008:29 | self | A | main.rs:1005:10:1005:10 | T | +| main.rs:1008:26:1008:31 | self.a | | main.rs:1005:10:1005:10 | T | +| main.rs:1016:44:1016:44 | x | | main.rs:1016:26:1016:41 | T2 | +| main.rs:1016:57:1018:5 | { ... } | | main.rs:1016:22:1016:23 | T1 | +| main.rs:1017:9:1017:9 | x | | main.rs:1016:26:1016:41 | T2 | +| main.rs:1017:9:1017:14 | x.m1() | | main.rs:1016:22:1016:23 | T1 | +| main.rs:1020:56:1020:56 | x | | main.rs:1020:39:1020:53 | T | +| main.rs:1020:62:1024:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1022:13:1022:13 | a | | main.rs:948:5:951:5 | MyThing | +| main.rs:1022:13:1022:13 | a | A | main.rs:958:5:959:14 | S1 | +| main.rs:1022:17:1022:17 | x | | main.rs:1020:39:1020:53 | T | +| main.rs:1022:17:1022:22 | x.m1() | | main.rs:948:5:951:5 | MyThing | +| main.rs:1022:17:1022:22 | x.m1() | A | main.rs:958:5:959:14 | S1 | +| main.rs:1023:9:1023:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1023:18:1023:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1023:18:1023:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1023:26:1023:26 | a | | main.rs:948:5:951:5 | MyThing | +| main.rs:1023:26:1023:26 | a | A | main.rs:958:5:959:14 | S1 | +| main.rs:1026:16:1050:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1027:13:1027:13 | x | | main.rs:948:5:951:5 | MyThing | +| main.rs:1027:13:1027:13 | x | A | main.rs:958:5:959:14 | S1 | +| main.rs:1027:17:1027:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | +| main.rs:1027:17:1027:33 | MyThing {...} | A | main.rs:958:5:959:14 | S1 | +| main.rs:1027:30:1027:31 | S1 | | main.rs:958:5:959:14 | S1 | +| main.rs:1028:13:1028:13 | y | | main.rs:948:5:951:5 | MyThing | +| main.rs:1028:13:1028:13 | y | A | main.rs:960:5:961:14 | S2 | +| main.rs:1028:17:1028:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | +| main.rs:1028:17:1028:33 | MyThing {...} | A | main.rs:960:5:961:14 | S2 | +| main.rs:1028:30:1028:31 | S2 | | main.rs:960:5:961:14 | S2 | +| main.rs:1030:9:1030:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1030:18:1030:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1030:18:1030:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1030:18:1030:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1030:18:1030:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1030:18:1030:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1030:26:1030:26 | x | | main.rs:948:5:951:5 | MyThing | +| main.rs:1030:26:1030:26 | x | A | main.rs:958:5:959:14 | S1 | +| main.rs:1030:26:1030:31 | x.m1() | | main.rs:958:5:959:14 | S1 | | main.rs:1031:9:1031:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1031:18:1031:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1031:18:1031:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1031:18:1031:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1031:18:1031:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1031:18:1031:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1031:26:1031:26 | x | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1031:26:1031:26 | x | A | main.rs:947:5:948:14 | S1 | -| main.rs:1031:26:1031:31 | x.m3() | | main.rs:947:5:948:14 | S1 | -| main.rs:1032:9:1032:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1032:18:1032:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1032:18:1032:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1032:18:1032:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1032:18:1032:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1032:18:1032:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1032:26:1032:26 | y | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1032:26:1032:26 | y | A | main.rs:949:5:950:14 | S2 | -| main.rs:1032:26:1032:31 | y.m3() | | main.rs:949:5:950:14 | S2 | -| main.rs:1034:13:1034:13 | x | | main.rs:937:5:940:5 | MyThing | -| main.rs:1034:13:1034:13 | x | A | main.rs:947:5:948:14 | S1 | -| main.rs:1034:17:1034:33 | MyThing {...} | | main.rs:937:5:940:5 | MyThing | -| main.rs:1034:17:1034:33 | MyThing {...} | A | main.rs:947:5:948:14 | S1 | -| main.rs:1034:30:1034:31 | S1 | | main.rs:947:5:948:14 | S1 | -| main.rs:1035:13:1035:13 | s | | main.rs:947:5:948:14 | S1 | -| main.rs:1035:17:1035:32 | call_trait_m1(...) | | main.rs:947:5:948:14 | S1 | -| main.rs:1035:31:1035:31 | x | | main.rs:937:5:940:5 | MyThing | -| main.rs:1035:31:1035:31 | x | A | main.rs:947:5:948:14 | S1 | -| main.rs:1037:13:1037:13 | x | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1037:13:1037:13 | x | A | main.rs:949:5:950:14 | S2 | -| main.rs:1037:17:1037:34 | MyThing2 {...} | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1037:17:1037:34 | MyThing2 {...} | A | main.rs:949:5:950:14 | S2 | -| main.rs:1037:31:1037:32 | S2 | | main.rs:949:5:950:14 | S2 | -| main.rs:1038:13:1038:13 | s | | main.rs:937:5:940:5 | MyThing | -| main.rs:1038:13:1038:13 | s | A | main.rs:949:5:950:14 | S2 | -| main.rs:1038:17:1038:32 | call_trait_m1(...) | | main.rs:937:5:940:5 | MyThing | -| main.rs:1038:17:1038:32 | call_trait_m1(...) | A | main.rs:949:5:950:14 | S2 | -| main.rs:1038:31:1038:31 | x | | main.rs:942:5:945:5 | MyThing2 | -| main.rs:1038:31:1038:31 | x | A | main.rs:949:5:950:14 | S2 | -| main.rs:1055:22:1055:22 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1055:22:1055:22 | x | TRef | main.rs:1055:11:1055:19 | T | -| main.rs:1055:35:1057:5 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1055:35:1057:5 | { ... } | TRef | main.rs:1055:11:1055:19 | T | -| main.rs:1056:9:1056:9 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1056:9:1056:9 | x | TRef | main.rs:1055:11:1055:19 | T | -| main.rs:1060:17:1060:20 | SelfParam | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1060:29:1062:9 | { ... } | | main.rs:1048:5:1049:14 | S2 | -| main.rs:1061:13:1061:14 | S2 | | main.rs:1048:5:1049:14 | S2 | -| main.rs:1065:21:1065:21 | x | | main.rs:1065:13:1065:14 | T1 | -| main.rs:1068:5:1070:5 | { ... } | | main.rs:1065:17:1065:18 | T2 | -| main.rs:1069:9:1069:9 | x | | main.rs:1065:13:1065:14 | T1 | -| main.rs:1069:9:1069:16 | x.into() | | main.rs:1065:17:1065:18 | T2 | -| main.rs:1072:16:1088:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1073:13:1073:13 | x | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1073:17:1073:18 | S1 | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1074:9:1074:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1074:18:1074:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1074:18:1074:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1074:18:1074:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1074:18:1074:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1074:18:1074:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1074:26:1074:31 | id(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1074:26:1074:31 | id(...) | TRef | main.rs:1045:5:1046:14 | S1 | -| main.rs:1074:29:1074:30 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1074:29:1074:30 | &x | TRef | main.rs:1045:5:1046:14 | S1 | -| main.rs:1074:30:1074:30 | x | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1076:13:1076:13 | x | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1076:17:1076:18 | S1 | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1077:9:1077:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1077:18:1077:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1077:18:1077:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1077:18:1077:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1077:18:1077:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1077:18:1077:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1077:26:1077:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1077:26:1077:37 | id::<...>(...) | TRef | main.rs:1045:5:1046:14 | S1 | -| main.rs:1077:35:1077:36 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1077:35:1077:36 | &x | TRef | main.rs:1045:5:1046:14 | S1 | -| main.rs:1077:36:1077:36 | x | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1079:13:1079:13 | x | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1079:17:1079:18 | S1 | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1081:9:1081:45 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1081:18:1081:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1081:18:1081:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1081:18:1081:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1081:18:1081:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1081:18:1081:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1081:26:1081:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1081:26:1081:44 | id::<...>(...) | TRef | main.rs:1051:5:1051:25 | dyn Trait | -| main.rs:1081:42:1081:43 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1081:42:1081:43 | &x | TRef | main.rs:1045:5:1046:14 | S1 | -| main.rs:1081:43:1081:43 | x | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1083:13:1083:13 | x | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1083:17:1083:18 | S1 | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1084:9:1084:25 | into::<...>(...) | | main.rs:1048:5:1049:14 | S2 | -| main.rs:1084:24:1084:24 | x | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1086:13:1086:13 | x | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1086:17:1086:18 | S1 | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1087:13:1087:13 | y | | main.rs:1048:5:1049:14 | S2 | -| main.rs:1087:21:1087:27 | into(...) | | main.rs:1048:5:1049:14 | S2 | -| main.rs:1087:26:1087:26 | x | | main.rs:1045:5:1046:14 | S1 | -| main.rs:1101:22:1101:25 | SelfParam | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1101:22:1101:25 | SelfParam | Fst | main.rs:1100:10:1100:12 | Fst | -| main.rs:1101:22:1101:25 | SelfParam | Snd | main.rs:1100:15:1100:17 | Snd | -| main.rs:1101:35:1108:9 | { ... } | | main.rs:1100:15:1100:17 | Snd | -| main.rs:1102:13:1107:13 | match self { ... } | | file://:0:0:0:0 | ! | -| main.rs:1102:13:1107:13 | match self { ... } | | main.rs:1100:15:1100:17 | Snd | -| main.rs:1102:19:1102:22 | self | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1102:19:1102:22 | self | Fst | main.rs:1100:10:1100:12 | Fst | -| main.rs:1102:19:1102:22 | self | Snd | main.rs:1100:15:1100:17 | Snd | -| main.rs:1103:17:1103:38 | ...::PairNone(...) | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1103:17:1103:38 | ...::PairNone(...) | Fst | main.rs:1100:10:1100:12 | Fst | -| main.rs:1103:17:1103:38 | ...::PairNone(...) | Snd | main.rs:1100:15:1100:17 | Snd | -| main.rs:1103:43:1103:82 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1103:50:1103:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | -| main.rs:1103:50:1103:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1103:50:1103:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1103:50:1103:81 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1103:50:1103:81 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1104:17:1104:38 | ...::PairFst(...) | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1104:17:1104:38 | ...::PairFst(...) | Fst | main.rs:1100:10:1100:12 | Fst | -| main.rs:1104:17:1104:38 | ...::PairFst(...) | Snd | main.rs:1100:15:1100:17 | Snd | -| main.rs:1104:37:1104:37 | _ | | main.rs:1100:10:1100:12 | Fst | -| main.rs:1104:43:1104:81 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1104:50:1104:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | -| main.rs:1104:50:1104:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1104:50:1104:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1104:50:1104:80 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1104:50:1104:80 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1105:17:1105:40 | ...::PairSnd(...) | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1105:17:1105:40 | ...::PairSnd(...) | Fst | main.rs:1100:10:1100:12 | Fst | -| main.rs:1105:17:1105:40 | ...::PairSnd(...) | Snd | main.rs:1100:15:1100:17 | Snd | -| main.rs:1105:37:1105:39 | snd | | main.rs:1100:15:1100:17 | Snd | -| main.rs:1105:45:1105:47 | snd | | main.rs:1100:15:1100:17 | Snd | -| main.rs:1106:17:1106:44 | ...::PairBoth(...) | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1106:17:1106:44 | ...::PairBoth(...) | Fst | main.rs:1100:10:1100:12 | Fst | -| main.rs:1106:17:1106:44 | ...::PairBoth(...) | Snd | main.rs:1100:15:1100:17 | Snd | -| main.rs:1106:38:1106:38 | _ | | main.rs:1100:10:1100:12 | Fst | -| main.rs:1106:41:1106:43 | snd | | main.rs:1100:15:1100:17 | Snd | -| main.rs:1106:49:1106:51 | snd | | main.rs:1100:15:1100:17 | Snd | -| main.rs:1132:10:1132:10 | t | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1132:10:1132:10 | t | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1132:10:1132:10 | t | Snd | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1132:10:1132:10 | t | Snd.Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1132:10:1132:10 | t | Snd.Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1132:30:1135:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1133:13:1133:13 | x | | main.rs:1117:5:1118:14 | S3 | -| main.rs:1133:17:1133:17 | t | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1133:17:1133:17 | t | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1133:17:1133:17 | t | Snd | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1133:17:1133:17 | t | Snd.Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1133:17:1133:17 | t | Snd.Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1133:17:1133:29 | t.unwrapSnd() | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1133:17:1133:29 | t.unwrapSnd() | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1133:17:1133:29 | t.unwrapSnd() | Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1133:17:1133:41 | ... .unwrapSnd() | | main.rs:1117:5:1118:14 | S3 | -| main.rs:1134:9:1134:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1134:18:1134:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1134:18:1134:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1134:18:1134:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1134:18:1134:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1134:18:1134:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1134:26:1134:26 | x | | main.rs:1117:5:1118:14 | S3 | -| main.rs:1145:16:1165:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1147:13:1147:14 | p1 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1147:13:1147:14 | p1 | Fst | main.rs:1111:5:1112:14 | S1 | -| main.rs:1147:13:1147:14 | p1 | Snd | main.rs:1114:5:1115:14 | S2 | -| main.rs:1147:26:1147:53 | ...::PairBoth(...) | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1147:26:1147:53 | ...::PairBoth(...) | Fst | main.rs:1111:5:1112:14 | S1 | -| main.rs:1147:26:1147:53 | ...::PairBoth(...) | Snd | main.rs:1114:5:1115:14 | S2 | -| main.rs:1147:47:1147:48 | S1 | | main.rs:1111:5:1112:14 | S1 | -| main.rs:1147:51:1147:52 | S2 | | main.rs:1114:5:1115:14 | S2 | -| main.rs:1148:9:1148:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1148:18:1148:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1148:18:1148:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1148:18:1148:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1148:18:1148:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1148:18:1148:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1148:26:1148:27 | p1 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1148:26:1148:27 | p1 | Fst | main.rs:1111:5:1112:14 | S1 | -| main.rs:1148:26:1148:27 | p1 | Snd | main.rs:1114:5:1115:14 | S2 | -| main.rs:1151:13:1151:14 | p2 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1151:13:1151:14 | p2 | Fst | main.rs:1111:5:1112:14 | S1 | -| main.rs:1151:13:1151:14 | p2 | Snd | main.rs:1114:5:1115:14 | S2 | -| main.rs:1151:26:1151:47 | ...::PairNone(...) | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1151:26:1151:47 | ...::PairNone(...) | Fst | main.rs:1111:5:1112:14 | S1 | -| main.rs:1151:26:1151:47 | ...::PairNone(...) | Snd | main.rs:1114:5:1115:14 | S2 | -| main.rs:1152:9:1152:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1152:18:1152:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1152:18:1152:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1152:18:1152:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1152:18:1152:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1152:18:1152:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1152:26:1152:27 | p2 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1152:26:1152:27 | p2 | Fst | main.rs:1111:5:1112:14 | S1 | -| main.rs:1152:26:1152:27 | p2 | Snd | main.rs:1114:5:1115:14 | S2 | -| main.rs:1155:13:1155:14 | p3 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1155:13:1155:14 | p3 | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1155:13:1155:14 | p3 | Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1155:34:1155:56 | ...::PairSnd(...) | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1155:34:1155:56 | ...::PairSnd(...) | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1155:34:1155:56 | ...::PairSnd(...) | Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1155:54:1155:55 | S3 | | main.rs:1117:5:1118:14 | S3 | -| main.rs:1156:9:1156:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1156:18:1156:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1156:18:1156:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1156:18:1156:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1156:18:1156:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1156:18:1156:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1156:26:1156:27 | p3 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1156:26:1156:27 | p3 | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1156:26:1156:27 | p3 | Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1159:13:1159:14 | p3 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1159:13:1159:14 | p3 | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1159:13:1159:14 | p3 | Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1159:35:1159:56 | ...::PairNone(...) | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1159:35:1159:56 | ...::PairNone(...) | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1159:35:1159:56 | ...::PairNone(...) | Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1160:9:1160:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1160:18:1160:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1160:18:1160:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1160:18:1160:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1160:18:1160:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1160:18:1160:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1160:26:1160:27 | p3 | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1160:26:1160:27 | p3 | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1160:26:1160:27 | p3 | Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1162:9:1162:55 | g(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1162:11:1162:54 | ...::PairSnd(...) | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1162:11:1162:54 | ...::PairSnd(...) | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1162:11:1162:54 | ...::PairSnd(...) | Snd | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1162:11:1162:54 | ...::PairSnd(...) | Snd.Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1162:11:1162:54 | ...::PairSnd(...) | Snd.Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1162:31:1162:53 | ...::PairSnd(...) | | main.rs:1092:5:1098:5 | PairOption | -| main.rs:1162:31:1162:53 | ...::PairSnd(...) | Fst | main.rs:1114:5:1115:14 | S2 | -| main.rs:1162:31:1162:53 | ...::PairSnd(...) | Snd | main.rs:1117:5:1118:14 | S3 | -| main.rs:1162:51:1162:52 | S3 | | main.rs:1117:5:1118:14 | S3 | -| main.rs:1164:13:1164:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1164:13:1164:13 | x | E | main.rs:1111:5:1112:14 | S1 | -| main.rs:1164:13:1164:13 | x | T | main.rs:1137:5:1137:34 | S4 | -| main.rs:1164:13:1164:13 | x | T.T41 | main.rs:1114:5:1115:14 | S2 | -| main.rs:1164:13:1164:13 | x | T.T42 | main.rs:1139:5:1139:22 | S5 | -| main.rs:1164:13:1164:13 | x | T.T42.T5 | main.rs:1114:5:1115:14 | S2 | -| main.rs:1177:16:1177:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1177:16:1177:24 | SelfParam | TRefMut | main.rs:1175:5:1182:5 | Self [trait MyTrait] | -| main.rs:1177:27:1177:31 | value | | main.rs:1175:19:1175:19 | S | -| main.rs:1179:21:1179:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1179:21:1179:29 | SelfParam | TRefMut | main.rs:1175:5:1182:5 | Self [trait MyTrait] | -| main.rs:1179:32:1179:36 | value | | main.rs:1175:19:1175:19 | S | -| main.rs:1179:42:1181:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1180:13:1180:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1180:13:1180:16 | self | TRefMut | main.rs:1175:5:1182:5 | Self [trait MyTrait] | -| main.rs:1180:13:1180:27 | self.set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1180:22:1180:26 | value | | main.rs:1175:19:1175:19 | S | -| main.rs:1186:16:1186:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1186:16:1186:24 | SelfParam | TRefMut | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1186:16:1186:24 | SelfParam | TRefMut.T | main.rs:1184:10:1184:10 | T | -| main.rs:1186:27:1186:31 | value | | main.rs:1184:10:1184:10 | T | -| main.rs:1186:37:1186:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1190:26:1192:9 | { ... } | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1190:26:1192:9 | { ... } | T | main.rs:1189:10:1189:10 | T | -| main.rs:1191:13:1191:30 | ...::MyNone(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1191:13:1191:30 | ...::MyNone(...) | T | main.rs:1189:10:1189:10 | T | -| main.rs:1196:20:1196:23 | SelfParam | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1196:20:1196:23 | SelfParam | T | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1196:20:1196:23 | SelfParam | T.T | main.rs:1195:10:1195:10 | T | -| main.rs:1196:41:1201:9 | { ... } | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1196:41:1201:9 | { ... } | T | main.rs:1195:10:1195:10 | T | -| main.rs:1197:13:1200:13 | match self { ... } | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1197:13:1200:13 | match self { ... } | T | main.rs:1195:10:1195:10 | T | -| main.rs:1197:19:1197:22 | self | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1197:19:1197:22 | self | T | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1197:19:1197:22 | self | T.T | main.rs:1195:10:1195:10 | T | -| main.rs:1198:17:1198:34 | ...::MyNone(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1198:17:1198:34 | ...::MyNone(...) | T | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1198:17:1198:34 | ...::MyNone(...) | T.T | main.rs:1195:10:1195:10 | T | -| main.rs:1198:39:1198:56 | ...::MyNone(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1198:39:1198:56 | ...::MyNone(...) | T | main.rs:1195:10:1195:10 | T | -| main.rs:1199:17:1199:35 | ...::MySome(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1199:17:1199:35 | ...::MySome(...) | T | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1199:17:1199:35 | ...::MySome(...) | T.T | main.rs:1195:10:1195:10 | T | -| main.rs:1199:34:1199:34 | x | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1199:34:1199:34 | x | T | main.rs:1195:10:1195:10 | T | -| main.rs:1199:40:1199:40 | x | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1199:40:1199:40 | x | T | main.rs:1195:10:1195:10 | T | -| main.rs:1207:16:1252:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1208:13:1208:14 | x1 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1208:13:1208:14 | x1 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1208:18:1208:37 | ...::new(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1208:18:1208:37 | ...::new(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1209:9:1209:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1209:18:1209:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1209:18:1209:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1209:18:1209:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1209:18:1209:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1209:18:1209:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1209:26:1209:27 | x1 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1209:26:1209:27 | x1 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1211:17:1211:18 | x2 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1211:17:1211:18 | x2 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1211:22:1211:36 | ...::new(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1211:22:1211:36 | ...::new(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1212:9:1212:10 | x2 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1212:9:1212:10 | x2 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1212:9:1212:17 | x2.set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1212:16:1212:16 | S | | main.rs:1204:5:1205:13 | S | -| main.rs:1213:9:1213:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1213:18:1213:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1213:18:1213:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1213:18:1213:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1213:18:1213:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1213:18:1213:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1213:26:1213:27 | x2 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1213:26:1213:27 | x2 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1215:17:1215:18 | x3 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1215:17:1215:18 | x3 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1215:22:1215:36 | ...::new(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1215:22:1215:36 | ...::new(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1216:9:1216:10 | x3 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1216:9:1216:10 | x3 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1216:9:1216:22 | x3.call_set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1216:21:1216:21 | S | | main.rs:1204:5:1205:13 | S | -| main.rs:1217:9:1217:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1217:18:1217:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1217:18:1217:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1217:18:1217:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1217:18:1217:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1217:18:1217:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1217:26:1217:27 | x3 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1217:26:1217:27 | x3 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1219:17:1219:18 | x4 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1219:17:1219:18 | x4 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1219:22:1219:36 | ...::new(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1219:22:1219:36 | ...::new(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1220:9:1220:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1220:23:1220:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | -| main.rs:1220:23:1220:29 | &mut x4 | TRefMut | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1220:23:1220:29 | &mut x4 | TRefMut.T | main.rs:1204:5:1205:13 | S | -| main.rs:1220:28:1220:29 | x4 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1220:28:1220:29 | x4 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1220:32:1220:32 | S | | main.rs:1204:5:1205:13 | S | -| main.rs:1221:9:1221:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1221:18:1221:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1221:18:1221:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1221:18:1221:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1221:18:1221:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1221:18:1221:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1221:26:1221:27 | x4 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1221:26:1221:27 | x4 | T | main.rs:1204:5:1205:13 | S | -| main.rs:1223:13:1223:14 | x5 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1223:13:1223:14 | x5 | T | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1223:13:1223:14 | x5 | T.T | main.rs:1204:5:1205:13 | S | -| main.rs:1223:18:1223:58 | ...::MySome(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1223:18:1223:58 | ...::MySome(...) | T | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1223:18:1223:58 | ...::MySome(...) | T.T | main.rs:1204:5:1205:13 | S | -| main.rs:1223:35:1223:57 | ...::MyNone(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1223:35:1223:57 | ...::MyNone(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1224:9:1224:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1031:26:1031:26 | y | | main.rs:948:5:951:5 | MyThing | +| main.rs:1031:26:1031:26 | y | A | main.rs:960:5:961:14 | S2 | +| main.rs:1031:26:1031:31 | y.m1() | | main.rs:960:5:961:14 | S2 | +| main.rs:1033:13:1033:13 | x | | main.rs:948:5:951:5 | MyThing | +| main.rs:1033:13:1033:13 | x | A | main.rs:958:5:959:14 | S1 | +| main.rs:1033:17:1033:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | +| main.rs:1033:17:1033:33 | MyThing {...} | A | main.rs:958:5:959:14 | S1 | +| main.rs:1033:30:1033:31 | S1 | | main.rs:958:5:959:14 | S1 | +| main.rs:1034:13:1034:13 | y | | main.rs:948:5:951:5 | MyThing | +| main.rs:1034:13:1034:13 | y | A | main.rs:960:5:961:14 | S2 | +| main.rs:1034:17:1034:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | +| main.rs:1034:17:1034:33 | MyThing {...} | A | main.rs:960:5:961:14 | S2 | +| main.rs:1034:30:1034:31 | S2 | | main.rs:960:5:961:14 | S2 | +| main.rs:1036:9:1036:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1036:18:1036:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1036:18:1036:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1036:18:1036:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1036:18:1036:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1036:18:1036:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1036:26:1036:26 | x | | main.rs:948:5:951:5 | MyThing | +| main.rs:1036:26:1036:26 | x | A | main.rs:958:5:959:14 | S1 | +| main.rs:1036:26:1036:31 | x.m2() | | main.rs:958:5:959:14 | S1 | +| main.rs:1037:9:1037:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1037:18:1037:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1037:18:1037:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1037:18:1037:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1037:18:1037:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1037:18:1037:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1037:26:1037:26 | y | | main.rs:948:5:951:5 | MyThing | +| main.rs:1037:26:1037:26 | y | A | main.rs:960:5:961:14 | S2 | +| main.rs:1037:26:1037:31 | y.m2() | | main.rs:960:5:961:14 | S2 | +| main.rs:1039:13:1039:13 | x | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1039:13:1039:13 | x | A | main.rs:958:5:959:14 | S1 | +| main.rs:1039:17:1039:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1039:17:1039:34 | MyThing2 {...} | A | main.rs:958:5:959:14 | S1 | +| main.rs:1039:31:1039:32 | S1 | | main.rs:958:5:959:14 | S1 | +| main.rs:1040:13:1040:13 | y | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1040:13:1040:13 | y | A | main.rs:960:5:961:14 | S2 | +| main.rs:1040:17:1040:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1040:17:1040:34 | MyThing2 {...} | A | main.rs:960:5:961:14 | S2 | +| main.rs:1040:31:1040:32 | S2 | | main.rs:960:5:961:14 | S2 | +| main.rs:1042:9:1042:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1042:18:1042:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1042:18:1042:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1042:18:1042:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1042:18:1042:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1042:18:1042:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1042:26:1042:26 | x | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1042:26:1042:26 | x | A | main.rs:958:5:959:14 | S1 | +| main.rs:1042:26:1042:31 | x.m3() | | main.rs:958:5:959:14 | S1 | +| main.rs:1043:9:1043:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1043:18:1043:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1043:18:1043:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1043:18:1043:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1043:18:1043:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1043:18:1043:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1043:26:1043:26 | y | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1043:26:1043:26 | y | A | main.rs:960:5:961:14 | S2 | +| main.rs:1043:26:1043:31 | y.m3() | | main.rs:960:5:961:14 | S2 | +| main.rs:1045:13:1045:13 | x | | main.rs:948:5:951:5 | MyThing | +| main.rs:1045:13:1045:13 | x | A | main.rs:958:5:959:14 | S1 | +| main.rs:1045:17:1045:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | +| main.rs:1045:17:1045:33 | MyThing {...} | A | main.rs:958:5:959:14 | S1 | +| main.rs:1045:30:1045:31 | S1 | | main.rs:958:5:959:14 | S1 | +| main.rs:1046:13:1046:13 | s | | main.rs:958:5:959:14 | S1 | +| main.rs:1046:17:1046:32 | call_trait_m1(...) | | main.rs:958:5:959:14 | S1 | +| main.rs:1046:31:1046:31 | x | | main.rs:948:5:951:5 | MyThing | +| main.rs:1046:31:1046:31 | x | A | main.rs:958:5:959:14 | S1 | +| main.rs:1048:13:1048:13 | x | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1048:13:1048:13 | x | A | main.rs:960:5:961:14 | S2 | +| main.rs:1048:17:1048:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1048:17:1048:34 | MyThing2 {...} | A | main.rs:960:5:961:14 | S2 | +| main.rs:1048:31:1048:32 | S2 | | main.rs:960:5:961:14 | S2 | +| main.rs:1049:13:1049:13 | s | | main.rs:948:5:951:5 | MyThing | +| main.rs:1049:13:1049:13 | s | A | main.rs:960:5:961:14 | S2 | +| main.rs:1049:17:1049:32 | call_trait_m1(...) | | main.rs:948:5:951:5 | MyThing | +| main.rs:1049:17:1049:32 | call_trait_m1(...) | A | main.rs:960:5:961:14 | S2 | +| main.rs:1049:31:1049:31 | x | | main.rs:953:5:956:5 | MyThing2 | +| main.rs:1049:31:1049:31 | x | A | main.rs:960:5:961:14 | S2 | +| main.rs:1066:22:1066:22 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1066:22:1066:22 | x | TRef | main.rs:1066:11:1066:19 | T | +| main.rs:1066:35:1068:5 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1066:35:1068:5 | { ... } | TRef | main.rs:1066:11:1066:19 | T | +| main.rs:1067:9:1067:9 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1067:9:1067:9 | x | TRef | main.rs:1066:11:1066:19 | T | +| main.rs:1071:17:1071:20 | SelfParam | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1071:29:1073:9 | { ... } | | main.rs:1059:5:1060:14 | S2 | +| main.rs:1072:13:1072:14 | S2 | | main.rs:1059:5:1060:14 | S2 | +| main.rs:1076:21:1076:21 | x | | main.rs:1076:13:1076:14 | T1 | +| main.rs:1079:5:1081:5 | { ... } | | main.rs:1076:17:1076:18 | T2 | +| main.rs:1080:9:1080:9 | x | | main.rs:1076:13:1076:14 | T1 | +| main.rs:1080:9:1080:16 | x.into() | | main.rs:1076:17:1076:18 | T2 | +| main.rs:1083:16:1099:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1084:13:1084:13 | x | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1084:17:1084:18 | S1 | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1085:9:1085:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1085:18:1085:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1085:18:1085:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1085:18:1085:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1085:18:1085:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1085:18:1085:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1085:26:1085:31 | id(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1085:26:1085:31 | id(...) | TRef | main.rs:1056:5:1057:14 | S1 | +| main.rs:1085:29:1085:30 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1085:29:1085:30 | &x | TRef | main.rs:1056:5:1057:14 | S1 | +| main.rs:1085:30:1085:30 | x | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1087:13:1087:13 | x | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1087:17:1087:18 | S1 | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1088:9:1088:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1088:18:1088:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1088:18:1088:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1088:18:1088:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1088:18:1088:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1088:18:1088:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1088:26:1088:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1088:26:1088:37 | id::<...>(...) | TRef | main.rs:1056:5:1057:14 | S1 | +| main.rs:1088:35:1088:36 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1088:35:1088:36 | &x | TRef | main.rs:1056:5:1057:14 | S1 | +| main.rs:1088:36:1088:36 | x | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1090:13:1090:13 | x | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1090:17:1090:18 | S1 | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1092:9:1092:45 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1092:18:1092:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1092:18:1092:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1092:18:1092:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1092:18:1092:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1092:18:1092:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1092:26:1092:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1092:26:1092:44 | id::<...>(...) | TRef | main.rs:1062:5:1062:25 | dyn Trait | +| main.rs:1092:42:1092:43 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1092:42:1092:43 | &x | TRef | main.rs:1056:5:1057:14 | S1 | +| main.rs:1092:43:1092:43 | x | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1094:13:1094:13 | x | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1094:17:1094:18 | S1 | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1095:9:1095:25 | into::<...>(...) | | main.rs:1059:5:1060:14 | S2 | +| main.rs:1095:24:1095:24 | x | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1097:13:1097:13 | x | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1097:17:1097:18 | S1 | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1098:13:1098:13 | y | | main.rs:1059:5:1060:14 | S2 | +| main.rs:1098:21:1098:27 | into(...) | | main.rs:1059:5:1060:14 | S2 | +| main.rs:1098:26:1098:26 | x | | main.rs:1056:5:1057:14 | S1 | +| main.rs:1112:22:1112:25 | SelfParam | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1112:22:1112:25 | SelfParam | Fst | main.rs:1111:10:1111:12 | Fst | +| main.rs:1112:22:1112:25 | SelfParam | Snd | main.rs:1111:15:1111:17 | Snd | +| main.rs:1112:35:1119:9 | { ... } | | main.rs:1111:15:1111:17 | Snd | +| main.rs:1113:13:1118:13 | match self { ... } | | file://:0:0:0:0 | ! | +| main.rs:1113:13:1118:13 | match self { ... } | | main.rs:1111:15:1111:17 | Snd | +| main.rs:1113:19:1113:22 | self | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1113:19:1113:22 | self | Fst | main.rs:1111:10:1111:12 | Fst | +| main.rs:1113:19:1113:22 | self | Snd | main.rs:1111:15:1111:17 | Snd | +| main.rs:1114:17:1114:38 | ...::PairNone(...) | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1114:17:1114:38 | ...::PairNone(...) | Fst | main.rs:1111:10:1111:12 | Fst | +| main.rs:1114:17:1114:38 | ...::PairNone(...) | Snd | main.rs:1111:15:1111:17 | Snd | +| main.rs:1114:43:1114:82 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:1114:50:1114:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | +| main.rs:1114:50:1114:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1114:50:1114:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:1114:50:1114:81 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1114:50:1114:81 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1115:17:1115:38 | ...::PairFst(...) | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1115:17:1115:38 | ...::PairFst(...) | Fst | main.rs:1111:10:1111:12 | Fst | +| main.rs:1115:17:1115:38 | ...::PairFst(...) | Snd | main.rs:1111:15:1111:17 | Snd | +| main.rs:1115:37:1115:37 | _ | | main.rs:1111:10:1111:12 | Fst | +| main.rs:1115:43:1115:81 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:1115:50:1115:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | +| main.rs:1115:50:1115:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1115:50:1115:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:1115:50:1115:80 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1115:50:1115:80 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1116:17:1116:40 | ...::PairSnd(...) | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1116:17:1116:40 | ...::PairSnd(...) | Fst | main.rs:1111:10:1111:12 | Fst | +| main.rs:1116:17:1116:40 | ...::PairSnd(...) | Snd | main.rs:1111:15:1111:17 | Snd | +| main.rs:1116:37:1116:39 | snd | | main.rs:1111:15:1111:17 | Snd | +| main.rs:1116:45:1116:47 | snd | | main.rs:1111:15:1111:17 | Snd | +| main.rs:1117:17:1117:44 | ...::PairBoth(...) | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1117:17:1117:44 | ...::PairBoth(...) | Fst | main.rs:1111:10:1111:12 | Fst | +| main.rs:1117:17:1117:44 | ...::PairBoth(...) | Snd | main.rs:1111:15:1111:17 | Snd | +| main.rs:1117:38:1117:38 | _ | | main.rs:1111:10:1111:12 | Fst | +| main.rs:1117:41:1117:43 | snd | | main.rs:1111:15:1111:17 | Snd | +| main.rs:1117:49:1117:51 | snd | | main.rs:1111:15:1111:17 | Snd | +| main.rs:1143:10:1143:10 | t | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1143:10:1143:10 | t | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1143:10:1143:10 | t | Snd | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1143:10:1143:10 | t | Snd.Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1143:10:1143:10 | t | Snd.Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1143:30:1146:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1144:13:1144:13 | x | | main.rs:1128:5:1129:14 | S3 | +| main.rs:1144:17:1144:17 | t | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1144:17:1144:17 | t | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1144:17:1144:17 | t | Snd | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1144:17:1144:17 | t | Snd.Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1144:17:1144:17 | t | Snd.Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1144:17:1144:29 | t.unwrapSnd() | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1144:17:1144:29 | t.unwrapSnd() | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1144:17:1144:29 | t.unwrapSnd() | Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1144:17:1144:41 | ... .unwrapSnd() | | main.rs:1128:5:1129:14 | S3 | +| main.rs:1145:9:1145:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1145:18:1145:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1145:18:1145:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1145:18:1145:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1145:18:1145:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1145:18:1145:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1145:26:1145:26 | x | | main.rs:1128:5:1129:14 | S3 | +| main.rs:1156:16:1176:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1158:13:1158:14 | p1 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1158:13:1158:14 | p1 | Fst | main.rs:1122:5:1123:14 | S1 | +| main.rs:1158:13:1158:14 | p1 | Snd | main.rs:1125:5:1126:14 | S2 | +| main.rs:1158:26:1158:53 | ...::PairBoth(...) | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1158:26:1158:53 | ...::PairBoth(...) | Fst | main.rs:1122:5:1123:14 | S1 | +| main.rs:1158:26:1158:53 | ...::PairBoth(...) | Snd | main.rs:1125:5:1126:14 | S2 | +| main.rs:1158:47:1158:48 | S1 | | main.rs:1122:5:1123:14 | S1 | +| main.rs:1158:51:1158:52 | S2 | | main.rs:1125:5:1126:14 | S2 | +| main.rs:1159:9:1159:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1159:18:1159:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1159:18:1159:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1159:18:1159:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1159:18:1159:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1159:18:1159:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1159:26:1159:27 | p1 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1159:26:1159:27 | p1 | Fst | main.rs:1122:5:1123:14 | S1 | +| main.rs:1159:26:1159:27 | p1 | Snd | main.rs:1125:5:1126:14 | S2 | +| main.rs:1162:13:1162:14 | p2 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1162:13:1162:14 | p2 | Fst | main.rs:1122:5:1123:14 | S1 | +| main.rs:1162:13:1162:14 | p2 | Snd | main.rs:1125:5:1126:14 | S2 | +| main.rs:1162:26:1162:47 | ...::PairNone(...) | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1162:26:1162:47 | ...::PairNone(...) | Fst | main.rs:1122:5:1123:14 | S1 | +| main.rs:1162:26:1162:47 | ...::PairNone(...) | Snd | main.rs:1125:5:1126:14 | S2 | +| main.rs:1163:9:1163:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1163:18:1163:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1163:18:1163:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1163:18:1163:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1163:18:1163:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1163:18:1163:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1163:26:1163:27 | p2 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1163:26:1163:27 | p2 | Fst | main.rs:1122:5:1123:14 | S1 | +| main.rs:1163:26:1163:27 | p2 | Snd | main.rs:1125:5:1126:14 | S2 | +| main.rs:1166:13:1166:14 | p3 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1166:13:1166:14 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1166:13:1166:14 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1166:34:1166:56 | ...::PairSnd(...) | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1166:34:1166:56 | ...::PairSnd(...) | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1166:34:1166:56 | ...::PairSnd(...) | Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1166:54:1166:55 | S3 | | main.rs:1128:5:1129:14 | S3 | +| main.rs:1167:9:1167:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1167:18:1167:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1167:18:1167:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1167:18:1167:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1167:18:1167:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1167:18:1167:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1167:26:1167:27 | p3 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1167:26:1167:27 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1167:26:1167:27 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1170:13:1170:14 | p3 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1170:13:1170:14 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1170:13:1170:14 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1170:35:1170:56 | ...::PairNone(...) | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1170:35:1170:56 | ...::PairNone(...) | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1170:35:1170:56 | ...::PairNone(...) | Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1171:9:1171:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1171:18:1171:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1171:18:1171:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1171:18:1171:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1171:18:1171:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1171:18:1171:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1171:26:1171:27 | p3 | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1171:26:1171:27 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1171:26:1171:27 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1173:9:1173:55 | g(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1173:11:1173:54 | ...::PairSnd(...) | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1173:11:1173:54 | ...::PairSnd(...) | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1173:11:1173:54 | ...::PairSnd(...) | Snd | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1173:11:1173:54 | ...::PairSnd(...) | Snd.Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1173:11:1173:54 | ...::PairSnd(...) | Snd.Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1173:31:1173:53 | ...::PairSnd(...) | | main.rs:1103:5:1109:5 | PairOption | +| main.rs:1173:31:1173:53 | ...::PairSnd(...) | Fst | main.rs:1125:5:1126:14 | S2 | +| main.rs:1173:31:1173:53 | ...::PairSnd(...) | Snd | main.rs:1128:5:1129:14 | S3 | +| main.rs:1173:51:1173:52 | S3 | | main.rs:1128:5:1129:14 | S3 | +| main.rs:1175:13:1175:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1175:13:1175:13 | x | E | main.rs:1122:5:1123:14 | S1 | +| main.rs:1175:13:1175:13 | x | T | main.rs:1148:5:1148:34 | S4 | +| main.rs:1175:13:1175:13 | x | T.T41 | main.rs:1125:5:1126:14 | S2 | +| main.rs:1175:13:1175:13 | x | T.T42 | main.rs:1150:5:1150:22 | S5 | +| main.rs:1175:13:1175:13 | x | T.T42.T5 | main.rs:1125:5:1126:14 | S2 | +| main.rs:1188:16:1188:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1188:16:1188:24 | SelfParam | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | +| main.rs:1188:27:1188:31 | value | | main.rs:1186:19:1186:19 | S | +| main.rs:1190:21:1190:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1190:21:1190:29 | SelfParam | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | +| main.rs:1190:32:1190:36 | value | | main.rs:1186:19:1186:19 | S | +| main.rs:1190:42:1192:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1191:13:1191:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1191:13:1191:16 | self | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | +| main.rs:1191:13:1191:27 | self.set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1191:22:1191:26 | value | | main.rs:1186:19:1186:19 | S | +| main.rs:1197:16:1197:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1197:16:1197:24 | SelfParam | TRefMut | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1197:16:1197:24 | SelfParam | TRefMut.T | main.rs:1195:10:1195:10 | T | +| main.rs:1197:27:1197:31 | value | | main.rs:1195:10:1195:10 | T | +| main.rs:1197:37:1197:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1201:26:1203:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1201:26:1203:9 | { ... } | T | main.rs:1200:10:1200:10 | T | +| main.rs:1202:13:1202:30 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1202:13:1202:30 | ...::MyNone(...) | T | main.rs:1200:10:1200:10 | T | +| main.rs:1207:20:1207:23 | SelfParam | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1207:20:1207:23 | SelfParam | T | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1207:20:1207:23 | SelfParam | T.T | main.rs:1206:10:1206:10 | T | +| main.rs:1207:41:1212:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1207:41:1212:9 | { ... } | T | main.rs:1206:10:1206:10 | T | +| main.rs:1208:13:1211:13 | match self { ... } | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1208:13:1211:13 | match self { ... } | T | main.rs:1206:10:1206:10 | T | +| main.rs:1208:19:1208:22 | self | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1208:19:1208:22 | self | T | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1208:19:1208:22 | self | T.T | main.rs:1206:10:1206:10 | T | +| main.rs:1209:17:1209:34 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1209:17:1209:34 | ...::MyNone(...) | T | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1209:17:1209:34 | ...::MyNone(...) | T.T | main.rs:1206:10:1206:10 | T | +| main.rs:1209:39:1209:56 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1209:39:1209:56 | ...::MyNone(...) | T | main.rs:1206:10:1206:10 | T | +| main.rs:1210:17:1210:35 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1210:17:1210:35 | ...::MySome(...) | T | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1210:17:1210:35 | ...::MySome(...) | T.T | main.rs:1206:10:1206:10 | T | +| main.rs:1210:34:1210:34 | x | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1210:34:1210:34 | x | T | main.rs:1206:10:1206:10 | T | +| main.rs:1210:40:1210:40 | x | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1210:40:1210:40 | x | T | main.rs:1206:10:1206:10 | T | +| main.rs:1218:16:1263:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1219:13:1219:14 | x1 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1219:13:1219:14 | x1 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1219:18:1219:37 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1219:18:1219:37 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1220:9:1220:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1220:18:1220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1220:18:1220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1220:18:1220:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1220:18:1220:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1220:18:1220:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1220:26:1220:27 | x1 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1220:26:1220:27 | x1 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1222:17:1222:18 | x2 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1222:17:1222:18 | x2 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1222:22:1222:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1222:22:1222:36 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1223:9:1223:10 | x2 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1223:9:1223:10 | x2 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1223:9:1223:17 | x2.set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1223:16:1223:16 | S | | main.rs:1215:5:1216:13 | S | +| main.rs:1224:9:1224:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1224:18:1224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1224:18:1224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1224:18:1224:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1224:18:1224:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1224:18:1224:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1224:26:1224:27 | x5 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1224:26:1224:27 | x5 | T | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1224:26:1224:27 | x5 | T.T | main.rs:1204:5:1205:13 | S | -| main.rs:1224:26:1224:37 | x5.flatten() | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1224:26:1224:37 | x5.flatten() | T | main.rs:1204:5:1205:13 | S | -| main.rs:1226:13:1226:14 | x6 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1226:13:1226:14 | x6 | T | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1226:13:1226:14 | x6 | T.T | main.rs:1204:5:1205:13 | S | -| main.rs:1226:18:1226:58 | ...::MySome(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1226:18:1226:58 | ...::MySome(...) | T | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1226:18:1226:58 | ...::MySome(...) | T.T | main.rs:1204:5:1205:13 | S | -| main.rs:1226:35:1226:57 | ...::MyNone(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1226:35:1226:57 | ...::MyNone(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1227:9:1227:62 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1227:18:1227:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1227:18:1227:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1227:18:1227:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1227:18:1227:61 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1227:18:1227:61 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1227:26:1227:61 | ...::flatten(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1227:26:1227:61 | ...::flatten(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1227:59:1227:60 | x6 | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1227:59:1227:60 | x6 | T | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1227:59:1227:60 | x6 | T.T | main.rs:1204:5:1205:13 | S | -| main.rs:1230:13:1230:19 | from_if | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1230:13:1230:19 | from_if | T | main.rs:1204:5:1205:13 | S | -| main.rs:1230:23:1234:9 | if ... {...} else {...} | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1230:23:1234:9 | if ... {...} else {...} | T | main.rs:1204:5:1205:13 | S | -| main.rs:1230:26:1230:26 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1230:26:1230:30 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1230:30:1230:30 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1230:32:1232:9 | { ... } | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1230:32:1232:9 | { ... } | T | main.rs:1204:5:1205:13 | S | -| main.rs:1231:13:1231:30 | ...::MyNone(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1231:13:1231:30 | ...::MyNone(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1232:16:1234:9 | { ... } | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1232:16:1234:9 | { ... } | T | main.rs:1204:5:1205:13 | S | -| main.rs:1233:13:1233:31 | ...::MySome(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1233:13:1233:31 | ...::MySome(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1233:30:1233:30 | S | | main.rs:1204:5:1205:13 | S | -| main.rs:1235:9:1235:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1224:18:1224:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1224:18:1224:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1224:18:1224:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1224:26:1224:27 | x2 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1224:26:1224:27 | x2 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1226:17:1226:18 | x3 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1226:17:1226:18 | x3 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1226:22:1226:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1226:22:1226:36 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1227:9:1227:10 | x3 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1227:9:1227:10 | x3 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1227:9:1227:22 | x3.call_set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1227:21:1227:21 | S | | main.rs:1215:5:1216:13 | S | +| main.rs:1228:9:1228:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1228:18:1228:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1228:18:1228:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1228:18:1228:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1228:18:1228:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1228:18:1228:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1228:26:1228:27 | x3 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1228:26:1228:27 | x3 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1230:17:1230:18 | x4 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1230:17:1230:18 | x4 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1230:22:1230:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1230:22:1230:36 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1231:9:1231:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1231:23:1231:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | +| main.rs:1231:23:1231:29 | &mut x4 | TRefMut | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1231:23:1231:29 | &mut x4 | TRefMut.T | main.rs:1215:5:1216:13 | S | +| main.rs:1231:28:1231:29 | x4 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1231:28:1231:29 | x4 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1231:32:1231:32 | S | | main.rs:1215:5:1216:13 | S | +| main.rs:1232:9:1232:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1232:18:1232:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1232:18:1232:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1232:18:1232:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1232:18:1232:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1232:18:1232:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1232:26:1232:27 | x4 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1232:26:1232:27 | x4 | T | main.rs:1215:5:1216:13 | S | +| main.rs:1234:13:1234:14 | x5 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1234:13:1234:14 | x5 | T | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1234:13:1234:14 | x5 | T.T | main.rs:1215:5:1216:13 | S | +| main.rs:1234:18:1234:58 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1234:18:1234:58 | ...::MySome(...) | T | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1234:18:1234:58 | ...::MySome(...) | T.T | main.rs:1215:5:1216:13 | S | +| main.rs:1234:35:1234:57 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1234:35:1234:57 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1235:9:1235:38 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1235:18:1235:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1235:18:1235:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1235:18:1235:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1235:18:1235:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1235:18:1235:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1235:26:1235:32 | from_if | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1235:26:1235:32 | from_if | T | main.rs:1204:5:1205:13 | S | -| main.rs:1238:13:1238:22 | from_match | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1238:13:1238:22 | from_match | T | main.rs:1204:5:1205:13 | S | -| main.rs:1238:26:1241:9 | match ... { ... } | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1238:26:1241:9 | match ... { ... } | T | main.rs:1204:5:1205:13 | S | -| main.rs:1238:32:1238:32 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1238:32:1238:36 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1238:36:1238:36 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1239:13:1239:16 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1239:21:1239:38 | ...::MyNone(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1239:21:1239:38 | ...::MyNone(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1240:13:1240:17 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1240:22:1240:40 | ...::MySome(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1240:22:1240:40 | ...::MySome(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1240:39:1240:39 | S | | main.rs:1204:5:1205:13 | S | -| main.rs:1242:9:1242:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1242:18:1242:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1242:18:1242:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1242:18:1242:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1242:18:1242:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1242:18:1242:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1242:26:1242:35 | from_match | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1242:26:1242:35 | from_match | T | main.rs:1204:5:1205:13 | S | -| main.rs:1245:13:1245:21 | from_loop | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1245:13:1245:21 | from_loop | T | main.rs:1204:5:1205:13 | S | -| main.rs:1245:25:1250:9 | loop { ... } | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1245:25:1250:9 | loop { ... } | T | main.rs:1204:5:1205:13 | S | -| main.rs:1245:30:1250:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1246:13:1248:13 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1246:16:1246:16 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1246:16:1246:20 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1246:20:1246:20 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1246:22:1248:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1247:23:1247:40 | ...::MyNone(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1247:23:1247:40 | ...::MyNone(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1249:19:1249:37 | ...::MySome(...) | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1249:19:1249:37 | ...::MySome(...) | T | main.rs:1204:5:1205:13 | S | -| main.rs:1249:36:1249:36 | S | | main.rs:1204:5:1205:13 | S | -| main.rs:1251:9:1251:35 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1251:18:1251:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1251:18:1251:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1251:18:1251:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1251:18:1251:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1251:18:1251:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1251:26:1251:34 | from_loop | | main.rs:1169:5:1173:5 | MyOption | -| main.rs:1251:26:1251:34 | from_loop | T | main.rs:1204:5:1205:13 | S | -| main.rs:1269:15:1269:18 | SelfParam | | main.rs:1257:5:1258:19 | S | -| main.rs:1269:15:1269:18 | SelfParam | T | main.rs:1268:10:1268:10 | T | -| main.rs:1269:26:1271:9 | { ... } | | main.rs:1268:10:1268:10 | T | -| main.rs:1270:13:1270:16 | self | | main.rs:1257:5:1258:19 | S | -| main.rs:1270:13:1270:16 | self | T | main.rs:1268:10:1268:10 | T | -| main.rs:1270:13:1270:18 | self.0 | | main.rs:1268:10:1268:10 | T | -| main.rs:1273:15:1273:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1273:15:1273:19 | SelfParam | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1273:15:1273:19 | SelfParam | TRef.T | main.rs:1268:10:1268:10 | T | -| main.rs:1273:28:1275:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1273:28:1275:9 | { ... } | TRef | main.rs:1268:10:1268:10 | T | -| main.rs:1274:13:1274:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1274:13:1274:19 | &... | TRef | main.rs:1268:10:1268:10 | T | -| main.rs:1274:14:1274:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1274:14:1274:17 | self | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1274:14:1274:17 | self | TRef.T | main.rs:1268:10:1268:10 | T | -| main.rs:1274:14:1274:19 | self.0 | | main.rs:1268:10:1268:10 | T | -| main.rs:1277:15:1277:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1277:15:1277:25 | SelfParam | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1277:15:1277:25 | SelfParam | TRef.T | main.rs:1268:10:1268:10 | T | -| main.rs:1277:34:1279:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1277:34:1279:9 | { ... } | TRef | main.rs:1268:10:1268:10 | T | -| main.rs:1278:13:1278:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1278:13:1278:19 | &... | TRef | main.rs:1268:10:1268:10 | T | -| main.rs:1278:14:1278:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1278:14:1278:17 | self | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1278:14:1278:17 | self | TRef.T | main.rs:1268:10:1268:10 | T | -| main.rs:1278:14:1278:19 | self.0 | | main.rs:1268:10:1268:10 | T | -| main.rs:1283:29:1283:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1283:29:1283:33 | SelfParam | TRef | main.rs:1282:5:1285:5 | Self [trait ATrait] | -| main.rs:1284:33:1284:36 | SelfParam | | main.rs:1282:5:1285:5 | Self [trait ATrait] | -| main.rs:1290:29:1290:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1290:29:1290:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1290:29:1290:33 | SelfParam | TRef.TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1290:43:1292:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1291:13:1291:22 | (...) | | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1291:13:1291:24 | ... .a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1291:14:1291:21 | * ... | | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1291:15:1291:21 | (...) | | {EXTERNAL LOCATION} | & | -| main.rs:1291:15:1291:21 | (...) | TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1291:16:1291:20 | * ... | | {EXTERNAL LOCATION} | & | -| main.rs:1291:16:1291:20 | * ... | TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1291:17:1291:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1291:17:1291:20 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1291:17:1291:20 | self | TRef.TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1295:33:1295:36 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1295:33:1295:36 | SelfParam | TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1295:46:1297:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1296:13:1296:19 | (...) | | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1296:13:1296:21 | ... .a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1296:14:1296:18 | * ... | | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1296:15:1296:18 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1296:15:1296:18 | self | TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1300:16:1350:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1301:13:1301:14 | x1 | | main.rs:1257:5:1258:19 | S | -| main.rs:1301:13:1301:14 | x1 | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1301:18:1301:22 | S(...) | | main.rs:1257:5:1258:19 | S | -| main.rs:1301:18:1301:22 | S(...) | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1301:20:1301:21 | S2 | | main.rs:1260:5:1261:14 | S2 | -| main.rs:1302:9:1302:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1302:18:1302:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1302:18:1302:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1302:18:1302:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1302:18:1302:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1302:18:1302:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1302:26:1302:27 | x1 | | main.rs:1257:5:1258:19 | S | -| main.rs:1302:26:1302:27 | x1 | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1302:26:1302:32 | x1.m1() | | main.rs:1260:5:1261:14 | S2 | -| main.rs:1304:13:1304:14 | x2 | | main.rs:1257:5:1258:19 | S | -| main.rs:1304:13:1304:14 | x2 | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1304:18:1304:22 | S(...) | | main.rs:1257:5:1258:19 | S | -| main.rs:1304:18:1304:22 | S(...) | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1304:20:1304:21 | S2 | | main.rs:1260:5:1261:14 | S2 | -| main.rs:1306:9:1306:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1306:18:1306:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1306:18:1306:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1306:18:1306:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1306:18:1306:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1306:18:1306:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1306:26:1306:27 | x2 | | main.rs:1257:5:1258:19 | S | -| main.rs:1306:26:1306:27 | x2 | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1306:26:1306:32 | x2.m2() | | {EXTERNAL LOCATION} | & | -| main.rs:1306:26:1306:32 | x2.m2() | TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1307:9:1307:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1307:18:1307:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1307:18:1307:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1307:18:1307:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1307:18:1307:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1307:18:1307:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1307:26:1307:27 | x2 | | main.rs:1257:5:1258:19 | S | -| main.rs:1307:26:1307:27 | x2 | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1307:26:1307:32 | x2.m3() | | {EXTERNAL LOCATION} | & | -| main.rs:1307:26:1307:32 | x2.m3() | TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1309:13:1309:14 | x3 | | main.rs:1257:5:1258:19 | S | -| main.rs:1309:13:1309:14 | x3 | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1309:18:1309:22 | S(...) | | main.rs:1257:5:1258:19 | S | -| main.rs:1309:18:1309:22 | S(...) | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1309:20:1309:21 | S2 | | main.rs:1260:5:1261:14 | S2 | -| main.rs:1311:9:1311:42 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1311:18:1311:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1311:18:1311:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1311:18:1311:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1311:18:1311:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1311:18:1311:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1311:26:1311:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1311:26:1311:41 | ...::m2(...) | TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1311:38:1311:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1311:38:1311:40 | &x3 | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1311:38:1311:40 | &x3 | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1311:39:1311:40 | x3 | | main.rs:1257:5:1258:19 | S | -| main.rs:1311:39:1311:40 | x3 | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1312:9:1312:42 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1312:18:1312:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1312:18:1312:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1312:18:1312:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1312:18:1312:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1312:18:1312:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1312:26:1312:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1312:26:1312:41 | ...::m3(...) | TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1312:38:1312:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1312:38:1312:40 | &x3 | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1312:38:1312:40 | &x3 | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1312:39:1312:40 | x3 | | main.rs:1257:5:1258:19 | S | -| main.rs:1312:39:1312:40 | x3 | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1314:13:1314:14 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1314:13:1314:14 | x4 | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1314:13:1314:14 | x4 | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1314:18:1314:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1314:18:1314:23 | &... | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1314:18:1314:23 | &... | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1314:19:1314:23 | S(...) | | main.rs:1257:5:1258:19 | S | -| main.rs:1314:19:1314:23 | S(...) | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1314:21:1314:22 | S2 | | main.rs:1260:5:1261:14 | S2 | -| main.rs:1316:9:1316:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1316:18:1316:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1316:18:1316:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1316:18:1316:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1316:18:1316:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1316:18:1316:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1316:26:1316:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1316:26:1316:27 | x4 | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1316:26:1316:27 | x4 | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1316:26:1316:32 | x4.m2() | | {EXTERNAL LOCATION} | & | -| main.rs:1316:26:1316:32 | x4.m2() | TRef | main.rs:1260:5:1261:14 | S2 | +| main.rs:1235:18:1235:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1235:18:1235:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1235:18:1235:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1235:26:1235:27 | x5 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1235:26:1235:27 | x5 | T | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1235:26:1235:27 | x5 | T.T | main.rs:1215:5:1216:13 | S | +| main.rs:1235:26:1235:37 | x5.flatten() | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1235:26:1235:37 | x5.flatten() | T | main.rs:1215:5:1216:13 | S | +| main.rs:1237:13:1237:14 | x6 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1237:13:1237:14 | x6 | T | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1237:13:1237:14 | x6 | T.T | main.rs:1215:5:1216:13 | S | +| main.rs:1237:18:1237:58 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1237:18:1237:58 | ...::MySome(...) | T | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1237:18:1237:58 | ...::MySome(...) | T.T | main.rs:1215:5:1216:13 | S | +| main.rs:1237:35:1237:57 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1237:35:1237:57 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1238:9:1238:62 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1238:18:1238:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1238:18:1238:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1238:18:1238:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1238:18:1238:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1238:18:1238:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1238:26:1238:61 | ...::flatten(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1238:26:1238:61 | ...::flatten(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1238:59:1238:60 | x6 | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1238:59:1238:60 | x6 | T | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1238:59:1238:60 | x6 | T.T | main.rs:1215:5:1216:13 | S | +| main.rs:1241:13:1241:19 | from_if | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1241:13:1241:19 | from_if | T | main.rs:1215:5:1216:13 | S | +| main.rs:1241:23:1245:9 | if ... {...} else {...} | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1241:23:1245:9 | if ... {...} else {...} | T | main.rs:1215:5:1216:13 | S | +| main.rs:1241:26:1241:26 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1241:26:1241:30 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1241:30:1241:30 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1241:32:1243:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1241:32:1243:9 | { ... } | T | main.rs:1215:5:1216:13 | S | +| main.rs:1242:13:1242:30 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1242:13:1242:30 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1243:16:1245:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1243:16:1245:9 | { ... } | T | main.rs:1215:5:1216:13 | S | +| main.rs:1244:13:1244:31 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1244:13:1244:31 | ...::MySome(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1244:30:1244:30 | S | | main.rs:1215:5:1216:13 | S | +| main.rs:1246:9:1246:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1246:18:1246:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1246:18:1246:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1246:18:1246:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1246:18:1246:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1246:18:1246:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1246:26:1246:32 | from_if | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1246:26:1246:32 | from_if | T | main.rs:1215:5:1216:13 | S | +| main.rs:1249:13:1249:22 | from_match | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1249:13:1249:22 | from_match | T | main.rs:1215:5:1216:13 | S | +| main.rs:1249:26:1252:9 | match ... { ... } | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1249:26:1252:9 | match ... { ... } | T | main.rs:1215:5:1216:13 | S | +| main.rs:1249:32:1249:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1249:32:1249:36 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1249:36:1249:36 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1250:13:1250:16 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1250:21:1250:38 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1250:21:1250:38 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1251:13:1251:17 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1251:22:1251:40 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1251:22:1251:40 | ...::MySome(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1251:39:1251:39 | S | | main.rs:1215:5:1216:13 | S | +| main.rs:1253:9:1253:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1253:18:1253:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1253:18:1253:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1253:18:1253:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1253:18:1253:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1253:18:1253:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1253:26:1253:35 | from_match | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1253:26:1253:35 | from_match | T | main.rs:1215:5:1216:13 | S | +| main.rs:1256:13:1256:21 | from_loop | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1256:13:1256:21 | from_loop | T | main.rs:1215:5:1216:13 | S | +| main.rs:1256:25:1261:9 | loop { ... } | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1256:25:1261:9 | loop { ... } | T | main.rs:1215:5:1216:13 | S | +| main.rs:1256:30:1261:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1257:13:1259:13 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1257:16:1257:16 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1257:16:1257:20 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1257:20:1257:20 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1257:22:1259:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1258:23:1258:40 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1258:23:1258:40 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1260:19:1260:37 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1260:19:1260:37 | ...::MySome(...) | T | main.rs:1215:5:1216:13 | S | +| main.rs:1260:36:1260:36 | S | | main.rs:1215:5:1216:13 | S | +| main.rs:1262:9:1262:35 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1262:18:1262:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1262:18:1262:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1262:18:1262:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1262:18:1262:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1262:18:1262:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1262:26:1262:34 | from_loop | | main.rs:1180:5:1184:5 | MyOption | +| main.rs:1262:26:1262:34 | from_loop | T | main.rs:1215:5:1216:13 | S | +| main.rs:1280:15:1280:18 | SelfParam | | main.rs:1268:5:1269:19 | S | +| main.rs:1280:15:1280:18 | SelfParam | T | main.rs:1279:10:1279:10 | T | +| main.rs:1280:26:1282:9 | { ... } | | main.rs:1279:10:1279:10 | T | +| main.rs:1281:13:1281:16 | self | | main.rs:1268:5:1269:19 | S | +| main.rs:1281:13:1281:16 | self | T | main.rs:1279:10:1279:10 | T | +| main.rs:1281:13:1281:18 | self.0 | | main.rs:1279:10:1279:10 | T | +| main.rs:1284:15:1284:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1284:15:1284:19 | SelfParam | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1284:15:1284:19 | SelfParam | TRef.T | main.rs:1279:10:1279:10 | T | +| main.rs:1284:28:1286:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1284:28:1286:9 | { ... } | TRef | main.rs:1279:10:1279:10 | T | +| main.rs:1285:13:1285:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1285:13:1285:19 | &... | TRef | main.rs:1279:10:1279:10 | T | +| main.rs:1285:14:1285:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1285:14:1285:17 | self | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1285:14:1285:17 | self | TRef.T | main.rs:1279:10:1279:10 | T | +| main.rs:1285:14:1285:19 | self.0 | | main.rs:1279:10:1279:10 | T | +| main.rs:1288:15:1288:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1288:15:1288:25 | SelfParam | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1288:15:1288:25 | SelfParam | TRef.T | main.rs:1279:10:1279:10 | T | +| main.rs:1288:34:1290:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1288:34:1290:9 | { ... } | TRef | main.rs:1279:10:1279:10 | T | +| main.rs:1289:13:1289:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1289:13:1289:19 | &... | TRef | main.rs:1279:10:1279:10 | T | +| main.rs:1289:14:1289:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1289:14:1289:17 | self | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1289:14:1289:17 | self | TRef.T | main.rs:1279:10:1279:10 | T | +| main.rs:1289:14:1289:19 | self.0 | | main.rs:1279:10:1279:10 | T | +| main.rs:1294:29:1294:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1294:29:1294:33 | SelfParam | TRef | main.rs:1293:5:1296:5 | Self [trait ATrait] | +| main.rs:1295:33:1295:36 | SelfParam | | main.rs:1293:5:1296:5 | Self [trait ATrait] | +| main.rs:1301:29:1301:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1301:29:1301:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1301:29:1301:33 | SelfParam | TRef.TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1301:43:1303:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1302:13:1302:22 | (...) | | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1302:13:1302:24 | ... .a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1302:14:1302:21 | * ... | | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1302:15:1302:21 | (...) | | {EXTERNAL LOCATION} | & | +| main.rs:1302:15:1302:21 | (...) | TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1302:16:1302:20 | * ... | | {EXTERNAL LOCATION} | & | +| main.rs:1302:16:1302:20 | * ... | TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1302:17:1302:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1302:17:1302:20 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1302:17:1302:20 | self | TRef.TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1306:33:1306:36 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1306:33:1306:36 | SelfParam | TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1306:46:1308:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1307:13:1307:19 | (...) | | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1307:13:1307:21 | ... .a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1307:14:1307:18 | * ... | | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1307:15:1307:18 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1307:15:1307:18 | self | TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1311:16:1361:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1312:13:1312:14 | x1 | | main.rs:1268:5:1269:19 | S | +| main.rs:1312:13:1312:14 | x1 | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1312:18:1312:22 | S(...) | | main.rs:1268:5:1269:19 | S | +| main.rs:1312:18:1312:22 | S(...) | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1312:20:1312:21 | S2 | | main.rs:1271:5:1272:14 | S2 | +| main.rs:1313:9:1313:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1313:18:1313:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1313:18:1313:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1313:18:1313:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1313:18:1313:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1313:18:1313:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1313:26:1313:27 | x1 | | main.rs:1268:5:1269:19 | S | +| main.rs:1313:26:1313:27 | x1 | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1313:26:1313:32 | x1.m1() | | main.rs:1271:5:1272:14 | S2 | +| main.rs:1315:13:1315:14 | x2 | | main.rs:1268:5:1269:19 | S | +| main.rs:1315:13:1315:14 | x2 | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1315:18:1315:22 | S(...) | | main.rs:1268:5:1269:19 | S | +| main.rs:1315:18:1315:22 | S(...) | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1315:20:1315:21 | S2 | | main.rs:1271:5:1272:14 | S2 | | main.rs:1317:9:1317:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1317:18:1317:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1317:18:1317:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1317:18:1317:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1317:18:1317:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1317:18:1317:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1317:26:1317:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1317:26:1317:27 | x4 | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1317:26:1317:27 | x4 | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1317:26:1317:32 | x4.m3() | | {EXTERNAL LOCATION} | & | -| main.rs:1317:26:1317:32 | x4.m3() | TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1319:13:1319:14 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1319:13:1319:14 | x5 | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1319:13:1319:14 | x5 | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1319:18:1319:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1319:18:1319:23 | &... | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1319:18:1319:23 | &... | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1319:19:1319:23 | S(...) | | main.rs:1257:5:1258:19 | S | -| main.rs:1319:19:1319:23 | S(...) | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1319:21:1319:22 | S2 | | main.rs:1260:5:1261:14 | S2 | -| main.rs:1321:9:1321:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1321:18:1321:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1321:18:1321:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1321:18:1321:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1321:18:1321:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1321:18:1321:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1321:26:1321:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1321:26:1321:27 | x5 | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1321:26:1321:27 | x5 | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1321:26:1321:32 | x5.m1() | | main.rs:1260:5:1261:14 | S2 | -| main.rs:1322:9:1322:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1317:26:1317:27 | x2 | | main.rs:1268:5:1269:19 | S | +| main.rs:1317:26:1317:27 | x2 | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1317:26:1317:32 | x2.m2() | | {EXTERNAL LOCATION} | & | +| main.rs:1317:26:1317:32 | x2.m2() | TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1318:9:1318:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1318:18:1318:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1318:18:1318:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1318:18:1318:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1318:18:1318:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1318:18:1318:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1318:26:1318:27 | x2 | | main.rs:1268:5:1269:19 | S | +| main.rs:1318:26:1318:27 | x2 | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1318:26:1318:32 | x2.m3() | | {EXTERNAL LOCATION} | & | +| main.rs:1318:26:1318:32 | x2.m3() | TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1320:13:1320:14 | x3 | | main.rs:1268:5:1269:19 | S | +| main.rs:1320:13:1320:14 | x3 | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1320:18:1320:22 | S(...) | | main.rs:1268:5:1269:19 | S | +| main.rs:1320:18:1320:22 | S(...) | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1320:20:1320:21 | S2 | | main.rs:1271:5:1272:14 | S2 | +| main.rs:1322:9:1322:42 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1322:18:1322:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1322:18:1322:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1322:18:1322:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1322:26:1322:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1322:26:1322:27 | x5 | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1322:26:1322:27 | x5 | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1322:26:1322:29 | x5.0 | | main.rs:1260:5:1261:14 | S2 | -| main.rs:1324:13:1324:14 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1324:13:1324:14 | x6 | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1324:13:1324:14 | x6 | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1324:18:1324:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1324:18:1324:23 | &... | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1324:18:1324:23 | &... | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1324:19:1324:23 | S(...) | | main.rs:1257:5:1258:19 | S | -| main.rs:1324:19:1324:23 | S(...) | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1324:21:1324:22 | S2 | | main.rs:1260:5:1261:14 | S2 | -| main.rs:1327:9:1327:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1322:18:1322:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1322:18:1322:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1322:18:1322:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1322:26:1322:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1322:26:1322:41 | ...::m2(...) | TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1322:38:1322:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1322:38:1322:40 | &x3 | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1322:38:1322:40 | &x3 | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1322:39:1322:40 | x3 | | main.rs:1268:5:1269:19 | S | +| main.rs:1322:39:1322:40 | x3 | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1323:9:1323:42 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1323:18:1323:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1323:18:1323:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1323:18:1323:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1323:18:1323:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1323:18:1323:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1323:26:1323:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1323:26:1323:41 | ...::m3(...) | TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1323:38:1323:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1323:38:1323:40 | &x3 | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1323:38:1323:40 | &x3 | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1323:39:1323:40 | x3 | | main.rs:1268:5:1269:19 | S | +| main.rs:1323:39:1323:40 | x3 | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1325:13:1325:14 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1325:13:1325:14 | x4 | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1325:13:1325:14 | x4 | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1325:18:1325:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1325:18:1325:23 | &... | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1325:18:1325:23 | &... | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1325:19:1325:23 | S(...) | | main.rs:1268:5:1269:19 | S | +| main.rs:1325:19:1325:23 | S(...) | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1325:21:1325:22 | S2 | | main.rs:1271:5:1272:14 | S2 | +| main.rs:1327:9:1327:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1327:18:1327:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1327:18:1327:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1327:18:1327:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1327:18:1327:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1327:18:1327:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1327:26:1327:30 | (...) | | main.rs:1257:5:1258:19 | S | -| main.rs:1327:26:1327:30 | (...) | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1327:26:1327:35 | ... .m1() | | main.rs:1260:5:1261:14 | S2 | -| main.rs:1327:27:1327:29 | * ... | | main.rs:1257:5:1258:19 | S | -| main.rs:1327:27:1327:29 | * ... | T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1327:28:1327:29 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1327:28:1327:29 | x6 | TRef | main.rs:1257:5:1258:19 | S | -| main.rs:1327:28:1327:29 | x6 | TRef.T | main.rs:1260:5:1261:14 | S2 | -| main.rs:1329:13:1329:14 | x7 | | main.rs:1257:5:1258:19 | S | -| main.rs:1329:13:1329:14 | x7 | T | {EXTERNAL LOCATION} | & | -| main.rs:1329:13:1329:14 | x7 | T.TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1329:18:1329:23 | S(...) | | main.rs:1257:5:1258:19 | S | -| main.rs:1329:18:1329:23 | S(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:1329:18:1329:23 | S(...) | T.TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1329:20:1329:22 | &S2 | | {EXTERNAL LOCATION} | & | -| main.rs:1329:20:1329:22 | &S2 | TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1329:21:1329:22 | S2 | | main.rs:1260:5:1261:14 | S2 | -| main.rs:1332:13:1332:13 | t | | {EXTERNAL LOCATION} | & | -| main.rs:1332:13:1332:13 | t | TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1332:17:1332:18 | x7 | | main.rs:1257:5:1258:19 | S | -| main.rs:1332:17:1332:18 | x7 | T | {EXTERNAL LOCATION} | & | -| main.rs:1332:17:1332:18 | x7 | T.TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1332:17:1332:23 | x7.m1() | | {EXTERNAL LOCATION} | & | -| main.rs:1332:17:1332:23 | x7.m1() | TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1333:9:1333:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1327:18:1327:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1327:18:1327:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1327:18:1327:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1327:26:1327:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1327:26:1327:27 | x4 | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1327:26:1327:27 | x4 | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1327:26:1327:32 | x4.m2() | | {EXTERNAL LOCATION} | & | +| main.rs:1327:26:1327:32 | x4.m2() | TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1328:9:1328:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1328:18:1328:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1328:18:1328:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1328:18:1328:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1328:18:1328:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1328:18:1328:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1328:26:1328:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1328:26:1328:27 | x4 | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1328:26:1328:27 | x4 | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1328:26:1328:32 | x4.m3() | | {EXTERNAL LOCATION} | & | +| main.rs:1328:26:1328:32 | x4.m3() | TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1330:13:1330:14 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1330:13:1330:14 | x5 | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1330:13:1330:14 | x5 | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1330:18:1330:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1330:18:1330:23 | &... | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1330:18:1330:23 | &... | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1330:19:1330:23 | S(...) | | main.rs:1268:5:1269:19 | S | +| main.rs:1330:19:1330:23 | S(...) | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1330:21:1330:22 | S2 | | main.rs:1271:5:1272:14 | S2 | +| main.rs:1332:9:1332:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1332:18:1332:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1332:18:1332:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1332:18:1332:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1332:18:1332:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1332:18:1332:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1332:26:1332:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1332:26:1332:27 | x5 | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1332:26:1332:27 | x5 | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1332:26:1332:32 | x5.m1() | | main.rs:1271:5:1272:14 | S2 | +| main.rs:1333:9:1333:30 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1333:18:1333:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1333:18:1333:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1333:18:1333:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1333:18:1333:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1333:18:1333:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1333:26:1333:27 | x7 | | main.rs:1257:5:1258:19 | S | -| main.rs:1333:26:1333:27 | x7 | T | {EXTERNAL LOCATION} | & | -| main.rs:1333:26:1333:27 | x7 | T.TRef | main.rs:1260:5:1261:14 | S2 | -| main.rs:1335:13:1335:14 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1335:26:1335:32 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1335:26:1335:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1335:26:1335:44 | "Hello".to_string() | | {EXTERNAL LOCATION} | String | -| main.rs:1339:13:1339:13 | u | | {EXTERNAL LOCATION} | Result | -| main.rs:1339:13:1339:13 | u | T | {EXTERNAL LOCATION} | u32 | -| main.rs:1339:17:1339:18 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1339:17:1339:33 | x9.parse() | | {EXTERNAL LOCATION} | Result | -| main.rs:1339:17:1339:33 | x9.parse() | T | {EXTERNAL LOCATION} | u32 | -| main.rs:1341:13:1341:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1341:13:1341:20 | my_thing | TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1341:24:1341:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1341:24:1341:39 | &... | TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1341:25:1341:39 | MyInt {...} | | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1341:36:1341:37 | 37 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1343:13:1343:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1343:17:1343:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1343:17:1343:24 | my_thing | TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1343:17:1343:43 | my_thing.method_on_borrow() | | {EXTERNAL LOCATION} | i64 | -| main.rs:1344:9:1344:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1333:18:1333:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1333:18:1333:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1333:18:1333:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1333:26:1333:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1333:26:1333:27 | x5 | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1333:26:1333:27 | x5 | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1333:26:1333:29 | x5.0 | | main.rs:1271:5:1272:14 | S2 | +| main.rs:1335:13:1335:14 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1335:13:1335:14 | x6 | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1335:13:1335:14 | x6 | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1335:18:1335:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1335:18:1335:23 | &... | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1335:18:1335:23 | &... | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1335:19:1335:23 | S(...) | | main.rs:1268:5:1269:19 | S | +| main.rs:1335:19:1335:23 | S(...) | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1335:21:1335:22 | S2 | | main.rs:1271:5:1272:14 | S2 | +| main.rs:1338:9:1338:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1338:18:1338:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1338:18:1338:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1338:18:1338:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1338:18:1338:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1338:18:1338:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1338:26:1338:30 | (...) | | main.rs:1268:5:1269:19 | S | +| main.rs:1338:26:1338:30 | (...) | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1338:26:1338:35 | ... .m1() | | main.rs:1271:5:1272:14 | S2 | +| main.rs:1338:27:1338:29 | * ... | | main.rs:1268:5:1269:19 | S | +| main.rs:1338:27:1338:29 | * ... | T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1338:28:1338:29 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1338:28:1338:29 | x6 | TRef | main.rs:1268:5:1269:19 | S | +| main.rs:1338:28:1338:29 | x6 | TRef.T | main.rs:1271:5:1272:14 | S2 | +| main.rs:1340:13:1340:14 | x7 | | main.rs:1268:5:1269:19 | S | +| main.rs:1340:13:1340:14 | x7 | T | {EXTERNAL LOCATION} | & | +| main.rs:1340:13:1340:14 | x7 | T.TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1340:18:1340:23 | S(...) | | main.rs:1268:5:1269:19 | S | +| main.rs:1340:18:1340:23 | S(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:1340:18:1340:23 | S(...) | T.TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1340:20:1340:22 | &S2 | | {EXTERNAL LOCATION} | & | +| main.rs:1340:20:1340:22 | &S2 | TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1340:21:1340:22 | S2 | | main.rs:1271:5:1272:14 | S2 | +| main.rs:1343:13:1343:13 | t | | {EXTERNAL LOCATION} | & | +| main.rs:1343:13:1343:13 | t | TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1343:17:1343:18 | x7 | | main.rs:1268:5:1269:19 | S | +| main.rs:1343:17:1343:18 | x7 | T | {EXTERNAL LOCATION} | & | +| main.rs:1343:17:1343:18 | x7 | T.TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1343:17:1343:23 | x7.m1() | | {EXTERNAL LOCATION} | & | +| main.rs:1343:17:1343:23 | x7.m1() | TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1344:9:1344:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1344:18:1344:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1344:18:1344:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1344:18:1344:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1344:26:1344:26 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1347:13:1347:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1347:13:1347:20 | my_thing | TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1347:24:1347:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1347:24:1347:39 | &... | TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1347:25:1347:39 | MyInt {...} | | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1347:36:1347:37 | 38 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1348:13:1348:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1348:17:1348:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1348:17:1348:24 | my_thing | TRef | main.rs:1263:5:1266:5 | MyInt | -| main.rs:1348:17:1348:47 | my_thing.method_not_on_borrow() | | {EXTERNAL LOCATION} | i64 | -| main.rs:1349:9:1349:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1349:18:1349:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1349:18:1349:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1349:18:1349:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1349:18:1349:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1349:18:1349:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1349:26:1349:26 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1356:16:1356:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1356:16:1356:20 | SelfParam | TRef | main.rs:1354:5:1362:5 | Self [trait MyTrait] | -| main.rs:1359:16:1359:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1359:16:1359:20 | SelfParam | TRef | main.rs:1354:5:1362:5 | Self [trait MyTrait] | -| main.rs:1359:32:1361:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1359:32:1361:9 | { ... } | TRef | main.rs:1354:5:1362:5 | Self [trait MyTrait] | -| main.rs:1360:13:1360:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1360:13:1360:16 | self | TRef | main.rs:1354:5:1362:5 | Self [trait MyTrait] | -| main.rs:1360:13:1360:22 | self.foo() | | {EXTERNAL LOCATION} | & | -| main.rs:1360:13:1360:22 | self.foo() | TRef | main.rs:1354:5:1362:5 | Self [trait MyTrait] | -| main.rs:1368:16:1368:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1368:16:1368:20 | SelfParam | TRef | main.rs:1364:5:1364:20 | MyStruct | -| main.rs:1368:36:1370:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1368:36:1370:9 | { ... } | TRef | main.rs:1364:5:1364:20 | MyStruct | -| main.rs:1369:13:1369:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1369:13:1369:16 | self | TRef | main.rs:1364:5:1364:20 | MyStruct | -| main.rs:1373:16:1376:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1374:13:1374:13 | x | | main.rs:1364:5:1364:20 | MyStruct | -| main.rs:1374:17:1374:24 | MyStruct | | main.rs:1364:5:1364:20 | MyStruct | -| main.rs:1375:9:1375:9 | x | | main.rs:1364:5:1364:20 | MyStruct | -| main.rs:1375:9:1375:15 | x.bar() | | {EXTERNAL LOCATION} | & | -| main.rs:1375:9:1375:15 | x.bar() | TRef | main.rs:1364:5:1364:20 | MyStruct | -| main.rs:1385:16:1385:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1385:16:1385:20 | SelfParam | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1385:16:1385:20 | SelfParam | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1385:32:1387:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1385:32:1387:9 | { ... } | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1385:32:1387:9 | { ... } | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1386:13:1386:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1386:13:1386:16 | self | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1386:13:1386:16 | self | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1389:16:1389:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1389:16:1389:20 | SelfParam | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1389:16:1389:20 | SelfParam | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1389:23:1389:23 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1389:23:1389:23 | x | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1389:23:1389:23 | x | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1389:42:1391:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1389:42:1391:9 | { ... } | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1389:42:1391:9 | { ... } | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1390:13:1390:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1390:13:1390:16 | self | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1390:13:1390:16 | self | TRef.T | main.rs:1384:10:1384:10 | T | -| main.rs:1394:16:1400:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1395:13:1395:13 | x | | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1395:13:1395:13 | x | T | main.rs:1380:5:1380:13 | S | -| main.rs:1395:17:1395:27 | MyStruct(...) | | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1395:17:1395:27 | MyStruct(...) | T | main.rs:1380:5:1380:13 | S | -| main.rs:1395:26:1395:26 | S | | main.rs:1380:5:1380:13 | S | -| main.rs:1396:9:1396:9 | x | | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1396:9:1396:9 | x | T | main.rs:1380:5:1380:13 | S | -| main.rs:1396:9:1396:15 | x.foo() | | {EXTERNAL LOCATION} | & | -| main.rs:1396:9:1396:15 | x.foo() | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1396:9:1396:15 | x.foo() | TRef.T | main.rs:1380:5:1380:13 | S | -| main.rs:1397:13:1397:13 | x | | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1397:13:1397:13 | x | T | main.rs:1380:5:1380:13 | S | -| main.rs:1397:17:1397:27 | MyStruct(...) | | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1397:17:1397:27 | MyStruct(...) | T | main.rs:1380:5:1380:13 | S | -| main.rs:1397:26:1397:26 | S | | main.rs:1380:5:1380:13 | S | -| main.rs:1399:9:1399:9 | x | | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1399:9:1399:9 | x | T | main.rs:1380:5:1380:13 | S | -| main.rs:1399:9:1399:18 | x.bar(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1399:9:1399:18 | x.bar(...) | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1399:9:1399:18 | x.bar(...) | TRef.T | main.rs:1380:5:1380:13 | S | -| main.rs:1399:15:1399:17 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1399:15:1399:17 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1399:15:1399:17 | &... | TRef.TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1399:15:1399:17 | &... | TRef.TRef.T | main.rs:1380:5:1380:13 | S | -| main.rs:1399:16:1399:17 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1399:16:1399:17 | &x | TRef | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1399:16:1399:17 | &x | TRef.T | main.rs:1380:5:1380:13 | S | -| main.rs:1399:17:1399:17 | x | | main.rs:1382:5:1382:26 | MyStruct | -| main.rs:1399:17:1399:17 | x | T | main.rs:1380:5:1380:13 | S | -| main.rs:1410:17:1410:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1410:17:1410:25 | SelfParam | TRefMut | main.rs:1404:5:1407:5 | MyFlag | -| main.rs:1410:28:1412:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1411:13:1411:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1411:13:1411:16 | self | TRefMut | main.rs:1404:5:1407:5 | MyFlag | -| main.rs:1411:13:1411:21 | self.bool | | {EXTERNAL LOCATION} | bool | -| main.rs:1411:13:1411:34 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:1411:25:1411:34 | ! ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1411:26:1411:29 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1411:26:1411:29 | self | TRefMut | main.rs:1404:5:1407:5 | MyFlag | -| main.rs:1411:26:1411:34 | self.bool | | {EXTERNAL LOCATION} | bool | -| main.rs:1418:15:1418:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1418:15:1418:19 | SelfParam | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1418:31:1420:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1418:31:1420:9 | { ... } | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1419:13:1419:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1419:13:1419:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1419:13:1419:19 | &... | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1419:13:1419:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1419:13:1419:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1419:13:1419:19 | &... | TRef.TRef.TRef.TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1419:14:1419:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1419:14:1419:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1419:14:1419:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1419:14:1419:19 | &... | TRef.TRef.TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1419:15:1419:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1419:15:1419:19 | &self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1419:15:1419:19 | &self | TRef.TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1419:16:1419:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1419:16:1419:19 | self | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1422:15:1422:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1422:15:1422:25 | SelfParam | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1422:37:1424:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1422:37:1424:9 | { ... } | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1423:13:1423:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1423:13:1423:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1423:13:1423:19 | &... | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1423:13:1423:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1423:13:1423:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1423:13:1423:19 | &... | TRef.TRef.TRef.TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1423:14:1423:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1423:14:1423:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1423:14:1423:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1423:14:1423:19 | &... | TRef.TRef.TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1423:15:1423:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1423:15:1423:19 | &self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1423:15:1423:19 | &self | TRef.TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1423:16:1423:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1423:16:1423:19 | self | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1426:15:1426:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1426:15:1426:15 | x | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1426:34:1428:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1426:34:1428:9 | { ... } | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1427:13:1427:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1427:13:1427:13 | x | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1430:15:1430:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1430:15:1430:15 | x | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1430:34:1432:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1430:34:1432:9 | { ... } | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1431:13:1431:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1431:13:1431:16 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1431:13:1431:16 | &... | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1431:13:1431:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1431:13:1431:16 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1431:13:1431:16 | &... | TRef.TRef.TRef.TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1431:14:1431:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1431:14:1431:16 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1431:14:1431:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1431:14:1431:16 | &... | TRef.TRef.TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1431:15:1431:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1431:15:1431:16 | &x | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1431:15:1431:16 | &x | TRef.TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1431:16:1431:16 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1431:16:1431:16 | x | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1435:16:1448:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1436:13:1436:13 | x | | main.rs:1415:5:1415:13 | S | -| main.rs:1436:17:1436:20 | S {...} | | main.rs:1415:5:1415:13 | S | -| main.rs:1437:9:1437:9 | x | | main.rs:1415:5:1415:13 | S | -| main.rs:1437:9:1437:14 | x.f1() | | {EXTERNAL LOCATION} | & | -| main.rs:1437:9:1437:14 | x.f1() | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1438:9:1438:9 | x | | main.rs:1415:5:1415:13 | S | -| main.rs:1438:9:1438:14 | x.f2() | | {EXTERNAL LOCATION} | & | -| main.rs:1438:9:1438:14 | x.f2() | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1439:9:1439:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1439:9:1439:17 | ...::f3(...) | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1439:15:1439:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1439:15:1439:16 | &x | TRef | main.rs:1415:5:1415:13 | S | -| main.rs:1439:16:1439:16 | x | | main.rs:1415:5:1415:13 | S | -| main.rs:1441:13:1441:13 | n | | {EXTERNAL LOCATION} | bool | -| main.rs:1441:17:1441:24 | * ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1441:18:1441:24 | * ... | | {EXTERNAL LOCATION} | & | -| main.rs:1441:18:1441:24 | * ... | TRef | {EXTERNAL LOCATION} | bool | -| main.rs:1441:19:1441:24 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1441:19:1441:24 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1441:19:1441:24 | &... | TRef.TRef | {EXTERNAL LOCATION} | bool | -| main.rs:1441:20:1441:24 | &true | | {EXTERNAL LOCATION} | & | -| main.rs:1441:20:1441:24 | &true | TRef | {EXTERNAL LOCATION} | bool | -| main.rs:1441:21:1441:24 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1445:17:1445:20 | flag | | main.rs:1404:5:1407:5 | MyFlag | -| main.rs:1445:24:1445:41 | ...::default(...) | | main.rs:1404:5:1407:5 | MyFlag | -| main.rs:1446:9:1446:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1446:22:1446:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | -| main.rs:1446:22:1446:30 | &mut flag | TRefMut | main.rs:1404:5:1407:5 | MyFlag | -| main.rs:1446:27:1446:30 | flag | | main.rs:1404:5:1407:5 | MyFlag | -| main.rs:1447:9:1447:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1447:18:1447:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1447:18:1447:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1447:18:1447:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1447:18:1447:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1447:18:1447:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1447:26:1447:29 | flag | | main.rs:1404:5:1407:5 | MyFlag | -| main.rs:1462:43:1465:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1462:43:1465:5 | { ... } | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1462:43:1465:5 | { ... } | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1463:13:1463:13 | x | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1463:17:1463:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1463:17:1463:30 | ...::Ok(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1463:17:1463:31 | TryExpr | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1463:28:1463:29 | S1 | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1464:9:1464:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1464:9:1464:22 | ...::Ok(...) | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1464:9:1464:22 | ...::Ok(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1464:20:1464:21 | S1 | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1469:46:1473:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1469:46:1473:5 | { ... } | E | main.rs:1457:5:1458:14 | S2 | -| main.rs:1469:46:1473:5 | { ... } | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1470:13:1470:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1470:13:1470:13 | x | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1470:17:1470:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1470:17:1470:30 | ...::Ok(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1470:28:1470:29 | S1 | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1471:13:1471:13 | y | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1471:17:1471:17 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1471:17:1471:17 | x | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1471:17:1471:18 | TryExpr | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1472:9:1472:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1472:9:1472:22 | ...::Ok(...) | E | main.rs:1457:5:1458:14 | S2 | -| main.rs:1472:9:1472:22 | ...::Ok(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1472:20:1472:21 | S1 | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1477:40:1482:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1477:40:1482:5 | { ... } | E | main.rs:1457:5:1458:14 | S2 | -| main.rs:1477:40:1482:5 | { ... } | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1478:13:1478:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1478:13:1478:13 | x | T | {EXTERNAL LOCATION} | Result | -| main.rs:1478:13:1478:13 | x | T.T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1478:17:1478:42 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1478:17:1478:42 | ...::Ok(...) | T | {EXTERNAL LOCATION} | Result | -| main.rs:1478:17:1478:42 | ...::Ok(...) | T.T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1478:28:1478:41 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1478:28:1478:41 | ...::Ok(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1478:39:1478:40 | S1 | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1480:17:1480:17 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1480:17:1480:17 | x | T | {EXTERNAL LOCATION} | Result | -| main.rs:1480:17:1480:17 | x | T.T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1480:17:1480:18 | TryExpr | | {EXTERNAL LOCATION} | Result | -| main.rs:1480:17:1480:18 | TryExpr | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1480:17:1480:29 | ... .map(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1480:24:1480:28 | \|...\| s | | {EXTERNAL LOCATION} | dyn Fn | -| main.rs:1480:24:1480:28 | \|...\| s | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| main.rs:1481:9:1481:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1481:9:1481:22 | ...::Ok(...) | E | main.rs:1457:5:1458:14 | S2 | -| main.rs:1481:9:1481:22 | ...::Ok(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1481:20:1481:21 | S1 | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1486:30:1486:34 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1486:30:1486:34 | input | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1486:30:1486:34 | input | T | main.rs:1486:20:1486:27 | T | -| main.rs:1486:69:1493:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1486:69:1493:5 | { ... } | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1486:69:1493:5 | { ... } | T | main.rs:1486:20:1486:27 | T | -| main.rs:1487:13:1487:17 | value | | main.rs:1486:20:1486:27 | T | -| main.rs:1487:21:1487:25 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1487:21:1487:25 | input | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1487:21:1487:25 | input | T | main.rs:1486:20:1486:27 | T | -| main.rs:1487:21:1487:26 | TryExpr | | main.rs:1486:20:1486:27 | T | -| main.rs:1488:22:1488:38 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1488:22:1488:38 | ...::Ok(...) | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1488:22:1488:38 | ...::Ok(...) | T | main.rs:1486:20:1486:27 | T | -| main.rs:1488:22:1491:10 | ... .and_then(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1488:22:1491:10 | ... .and_then(...) | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1488:33:1488:37 | value | | main.rs:1486:20:1486:27 | T | -| main.rs:1488:49:1491:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | -| main.rs:1488:49:1491:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| main.rs:1488:49:1491:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | Result | -| main.rs:1488:49:1491:9 | \|...\| ... | dyn(Output).E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1488:53:1491:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1488:53:1491:9 | { ... } | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1489:13:1489:31 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1489:22:1489:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1489:22:1489:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1489:22:1489:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1489:22:1489:30 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1489:22:1489:30 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1490:13:1490:34 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1490:13:1490:34 | ...::Ok::<...>(...) | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1492:9:1492:23 | ...::Err(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1492:9:1492:23 | ...::Err(...) | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1492:9:1492:23 | ...::Err(...) | T | main.rs:1486:20:1486:27 | T | -| main.rs:1492:21:1492:22 | S1 | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1496:16:1512:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1497:9:1499:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1497:16:1497:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1497:16:1497:33 | ...::Ok(...) | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1497:16:1497:33 | ...::Ok(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1497:27:1497:32 | result | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1497:37:1497:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1497:37:1497:52 | try_same_error(...) | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1497:37:1497:52 | try_same_error(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1497:54:1499:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1498:13:1498:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1498:22:1498:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1498:22:1498:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1498:22:1498:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1498:22:1498:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1498:22:1498:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1498:30:1498:35 | result | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1501:9:1503:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1501:16:1501:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1501:16:1501:33 | ...::Ok(...) | E | main.rs:1457:5:1458:14 | S2 | -| main.rs:1501:16:1501:33 | ...::Ok(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1501:27:1501:32 | result | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1501:37:1501:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1501:37:1501:55 | try_convert_error(...) | E | main.rs:1457:5:1458:14 | S2 | -| main.rs:1501:37:1501:55 | try_convert_error(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1501:57:1503:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1502:13:1502:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1502:22:1502:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1502:22:1502:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1502:22:1502:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1502:22:1502:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1502:22:1502:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1502:30:1502:35 | result | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1505:9:1507:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1505:16:1505:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1505:16:1505:33 | ...::Ok(...) | E | main.rs:1457:5:1458:14 | S2 | -| main.rs:1505:16:1505:33 | ...::Ok(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1505:27:1505:32 | result | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1505:37:1505:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1505:37:1505:49 | try_chained(...) | E | main.rs:1457:5:1458:14 | S2 | -| main.rs:1505:37:1505:49 | try_chained(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1505:51:1507:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1506:13:1506:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1506:22:1506:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1506:22:1506:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1506:22:1506:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1506:22:1506:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1506:22:1506:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1506:30:1506:35 | result | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1509:9:1511:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1509:16:1509:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1509:16:1509:33 | ...::Ok(...) | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1509:16:1509:33 | ...::Ok(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1509:27:1509:32 | result | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1509:37:1509:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1509:37:1509:63 | try_complex(...) | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1509:37:1509:63 | try_complex(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1509:49:1509:62 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1509:49:1509:62 | ...::Ok(...) | E | main.rs:1454:5:1455:14 | S1 | -| main.rs:1509:49:1509:62 | ...::Ok(...) | T | main.rs:1454:5:1455:14 | S1 | -| main.rs:1509:60:1509:61 | S1 | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1509:65:1511:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1510:13:1510:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1510:22:1510:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1510:22:1510:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1510:22:1510:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1510:22:1510:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1510:22:1510:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1510:30:1510:35 | result | | main.rs:1454:5:1455:14 | S1 | -| main.rs:1516:16:1607:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1517:13:1517:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1517:22:1517:22 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1518:13:1518:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:1518:17:1518:17 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1519:13:1519:13 | z | | {EXTERNAL LOCATION} | i32 | -| main.rs:1519:17:1519:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1519:17:1519:21 | ... + ... | | {EXTERNAL LOCATION} | i32 | -| main.rs:1519:21:1519:21 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:1520:13:1520:13 | z | | {EXTERNAL LOCATION} | i32 | -| main.rs:1520:17:1520:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1520:17:1520:23 | x.abs() | | {EXTERNAL LOCATION} | i32 | -| main.rs:1521:13:1521:13 | c | | {EXTERNAL LOCATION} | char | -| main.rs:1521:17:1521:19 | 'c' | | {EXTERNAL LOCATION} | char | -| main.rs:1522:13:1522:17 | hello | | {EXTERNAL LOCATION} | & | -| main.rs:1522:13:1522:17 | hello | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1522:21:1522:27 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1522:21:1522:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1523:13:1523:13 | f | | {EXTERNAL LOCATION} | f64 | -| main.rs:1523:17:1523:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | -| main.rs:1524:13:1524:13 | t | | {EXTERNAL LOCATION} | bool | -| main.rs:1524:17:1524:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1525:13:1525:13 | f | | {EXTERNAL LOCATION} | bool | -| main.rs:1525:17:1525:21 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1528:26:1528:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1528:26:1528:30 | SelfParam | TRef | main.rs:1527:9:1531:9 | Self [trait MyTrait] | -| main.rs:1534:26:1534:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1534:26:1534:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1534:26:1534:30 | SelfParam | TRef.TArray | main.rs:1533:14:1533:23 | T | -| main.rs:1534:39:1536:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1534:39:1536:13 | { ... } | TRef | main.rs:1533:14:1533:23 | T | -| main.rs:1535:17:1535:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1535:17:1535:20 | self | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1535:17:1535:20 | self | TRef.TArray | main.rs:1533:14:1533:23 | T | -| main.rs:1535:17:1535:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | -| main.rs:1535:17:1535:36 | ... .unwrap() | TRef | main.rs:1533:14:1533:23 | T | -| main.rs:1535:26:1535:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1538:31:1540:13 | { ... } | | main.rs:1533:14:1533:23 | T | -| main.rs:1539:17:1539:28 | ...::default(...) | | main.rs:1533:14:1533:23 | T | -| main.rs:1543:13:1543:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1543:13:1543:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1543:17:1543:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1543:17:1543:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1543:17:1543:37 | ... .my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1543:17:1543:37 | ... .my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1543:18:1543:18 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1543:21:1543:21 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1543:24:1543:24 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1544:13:1544:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1544:13:1544:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1544:17:1544:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1544:17:1544:47 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1544:22:1544:22 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1544:37:1544:46 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1544:37:1544:46 | &... | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1544:37:1544:46 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1544:38:1544:46 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1544:38:1544:46 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1544:39:1544:39 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1544:42:1544:42 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1544:45:1544:45 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1545:13:1545:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1545:17:1545:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1545:24:1545:24 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1548:26:1548:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1548:26:1548:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1548:26:1548:30 | SelfParam | TRef.TSlice | main.rs:1547:14:1547:23 | T | -| main.rs:1548:39:1550:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1548:39:1550:13 | { ... } | TRef | main.rs:1547:14:1547:23 | T | -| main.rs:1549:17:1549:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1549:17:1549:20 | self | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1549:17:1549:20 | self | TRef.TSlice | main.rs:1547:14:1547:23 | T | -| main.rs:1549:17:1549:27 | self.get(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:1549:17:1549:27 | self.get(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:1549:17:1549:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | -| main.rs:1549:17:1549:36 | ... .unwrap() | TRef | main.rs:1547:14:1547:23 | T | -| main.rs:1549:26:1549:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1552:31:1554:13 | { ... } | | main.rs:1547:14:1547:23 | T | -| main.rs:1553:17:1553:28 | ...::default(...) | | main.rs:1547:14:1547:23 | T | -| main.rs:1557:13:1557:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1557:13:1557:13 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1557:13:1557:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1557:25:1557:34 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1557:25:1557:34 | &... | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1557:25:1557:34 | &... | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1557:25:1557:34 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1557:25:1557:34 | &... | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1557:26:1557:34 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1557:26:1557:34 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1557:27:1557:27 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1557:30:1557:30 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1557:33:1557:33 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1558:13:1558:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1558:13:1558:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1558:17:1558:17 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1558:17:1558:17 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1558:17:1558:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1558:17:1558:29 | s.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1558:17:1558:29 | s.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1559:13:1559:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1559:13:1559:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1559:17:1559:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1559:17:1559:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1559:34:1559:34 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1559:34:1559:34 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1559:34:1559:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1560:13:1560:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1560:17:1560:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1563:26:1563:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1563:26:1563:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1563:26:1563:30 | SelfParam | TRef.T0 | main.rs:1562:14:1562:23 | T | -| main.rs:1563:26:1563:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1563:39:1565:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1563:39:1565:13 | { ... } | TRef | main.rs:1562:14:1562:23 | T | -| main.rs:1564:17:1564:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1564:17:1564:23 | &... | TRef | main.rs:1562:14:1562:23 | T | -| main.rs:1564:18:1564:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1564:18:1564:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1564:18:1564:21 | self | TRef.T0 | main.rs:1562:14:1562:23 | T | -| main.rs:1564:18:1564:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1564:18:1564:23 | self.0 | | main.rs:1562:14:1562:23 | T | -| main.rs:1567:31:1569:13 | { ... } | | main.rs:1562:14:1562:23 | T | -| main.rs:1568:17:1568:28 | ...::default(...) | | main.rs:1562:14:1562:23 | T | -| main.rs:1572:13:1572:13 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1572:13:1572:13 | p | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1572:13:1572:13 | p | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1572:17:1572:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1572:17:1572:23 | TupleExpr | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1572:17:1572:23 | TupleExpr | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1572:18:1572:19 | 42 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1572:22:1572:22 | 7 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1573:13:1573:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1573:13:1573:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1573:17:1573:17 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1573:17:1573:17 | p | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1573:17:1573:17 | p | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1573:17:1573:29 | p.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1573:17:1573:29 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:13:1574:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1574:13:1574:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:17:1574:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1574:17:1574:39 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:37:1574:38 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1574:37:1574:38 | &p | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1574:37:1574:38 | &p | TRef.T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:37:1574:38 | &p | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:38:1574:38 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1574:38:1574:38 | p | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:38:1574:38 | p | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1575:13:1575:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1575:17:1575:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1578:26:1578:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1578:26:1578:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1578:26:1578:30 | SelfParam | TRef.TRef | main.rs:1577:14:1577:23 | T | -| main.rs:1578:39:1580:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1578:39:1580:13 | { ... } | TRef | main.rs:1577:14:1577:23 | T | -| main.rs:1579:17:1579:21 | * ... | | {EXTERNAL LOCATION} | & | -| main.rs:1579:17:1579:21 | * ... | TRef | main.rs:1577:14:1577:23 | T | -| main.rs:1579:18:1579:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1579:18:1579:21 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1579:18:1579:21 | self | TRef.TRef | main.rs:1577:14:1577:23 | T | -| main.rs:1582:31:1584:13 | { ... } | | main.rs:1577:14:1577:23 | T | -| main.rs:1583:17:1583:28 | ...::default(...) | | main.rs:1577:14:1577:23 | T | -| main.rs:1587:13:1587:13 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1587:13:1587:13 | r | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1587:17:1587:19 | &42 | | {EXTERNAL LOCATION} | & | -| main.rs:1587:17:1587:19 | &42 | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1587:18:1587:19 | 42 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1588:13:1588:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1588:13:1588:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1588:17:1588:17 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1588:17:1588:17 | r | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1588:17:1588:29 | r.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1588:17:1588:29 | r.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1589:13:1589:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1589:13:1589:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1589:17:1589:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1589:17:1589:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1589:33:1589:34 | &r | | {EXTERNAL LOCATION} | & | -| main.rs:1589:33:1589:34 | &r | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1589:33:1589:34 | &r | TRef.TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1589:34:1589:34 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1589:34:1589:34 | r | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1590:13:1590:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1590:17:1590:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1593:26:1593:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1593:26:1593:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1593:26:1593:30 | SelfParam | TRef.TPtrMut | main.rs:1592:14:1592:23 | T | -| main.rs:1593:39:1595:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1593:39:1595:13 | { ... } | TRef | main.rs:1592:14:1592:23 | T | -| main.rs:1594:17:1594:34 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1594:17:1594:34 | { ... } | TRef | main.rs:1592:14:1592:23 | T | -| main.rs:1594:26:1594:32 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1594:26:1594:32 | &... | TRef | main.rs:1592:14:1592:23 | T | -| main.rs:1594:27:1594:32 | * ... | | main.rs:1592:14:1592:23 | T | -| main.rs:1594:28:1594:32 | * ... | | {EXTERNAL LOCATION} | *mut | -| main.rs:1594:28:1594:32 | * ... | TPtrMut | main.rs:1592:14:1592:23 | T | -| main.rs:1594:29:1594:32 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1594:29:1594:32 | self | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1594:29:1594:32 | self | TRef.TPtrMut | main.rs:1592:14:1592:23 | T | -| main.rs:1597:31:1599:13 | { ... } | | main.rs:1592:14:1592:23 | T | -| main.rs:1598:17:1598:28 | ...::default(...) | | main.rs:1592:14:1592:23 | T | -| main.rs:1602:17:1602:17 | v | | {EXTERNAL LOCATION} | i32 | -| main.rs:1602:21:1602:22 | 42 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1603:13:1603:13 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1603:13:1603:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1603:27:1603:32 | &mut v | | {EXTERNAL LOCATION} | &mut | -| main.rs:1603:27:1603:32 | &mut v | TRefMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1603:32:1603:32 | v | | {EXTERNAL LOCATION} | i32 | -| main.rs:1604:13:1604:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1604:13:1604:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1604:17:1604:40 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1604:17:1604:40 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1604:26:1604:26 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1604:26:1604:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1604:26:1604:38 | p.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1604:26:1604:38 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1605:13:1605:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1605:13:1605:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1605:17:1605:50 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1605:17:1605:50 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1605:26:1605:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1605:26:1605:48 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1605:46:1605:47 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1605:46:1605:47 | &p | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1605:46:1605:47 | &p | TRef.TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1605:47:1605:47 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1605:47:1605:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1606:13:1606:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1606:17:1606:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1612:16:1624:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1613:13:1613:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:1613:17:1613:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1613:17:1613:29 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1613:25:1613:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1614:13:1614:13 | y | | {EXTERNAL LOCATION} | bool | -| main.rs:1614:17:1614:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1614:17:1614:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1614:25:1614:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1616:17:1616:17 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1617:13:1617:16 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:1617:20:1617:21 | 34 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1617:20:1617:27 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1617:26:1617:27 | 33 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1618:9:1622:9 | if cond {...} else {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1618:12:1618:15 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:1618:17:1620:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1619:17:1619:17 | z | | {EXTERNAL LOCATION} | () | -| main.rs:1619:21:1619:27 | (...) | | {EXTERNAL LOCATION} | () | -| main.rs:1619:22:1619:22 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1619:22:1619:26 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:1619:26:1619:26 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1620:16:1622:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1621:13:1621:13 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1621:13:1621:17 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:1621:17:1621:17 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1623:9:1623:9 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1637:30:1639:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1638:13:1638:31 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1638:23:1638:23 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1638:29:1638:29 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1645:16:1645:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1645:22:1645:24 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1645:41:1650:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1646:13:1649:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1647:20:1647:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1647:20:1647:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1647:20:1647:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1647:29:1647:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1647:29:1647:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1648:20:1648:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1648:20:1648:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1648:20:1648:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1648:29:1648:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1648:29:1648:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1655:23:1655:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1655:23:1655:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1655:34:1655:36 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1655:45:1658:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1656:13:1656:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1656:13:1656:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1656:13:1656:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1656:13:1656:27 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1656:23:1656:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1656:23:1656:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1657:13:1657:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1657:13:1657:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1657:13:1657:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1657:13:1657:27 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1657:23:1657:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1657:23:1657:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1663:16:1663:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1663:22:1663:24 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1663:41:1668:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1664:13:1667:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1665:20:1665:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1665:20:1665:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1665:20:1665:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1665:29:1665:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1665:29:1665:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1666:20:1666:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1666:20:1666:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1666:20:1666:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1666:29:1666:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1666:29:1666:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1673:23:1673:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1673:23:1673:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1673:34:1673:36 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1673:45:1676:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1674:13:1674:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1674:13:1674:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1674:13:1674:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1674:13:1674:27 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1674:23:1674:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1674:23:1674:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1675:13:1675:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1675:13:1675:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1675:13:1675:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1675:13:1675:27 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1675:23:1675:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1675:23:1675:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1681:16:1681:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1681:22:1681:24 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1681:41:1686:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1682:13:1685:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1683:20:1683:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1683:20:1683:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1683:20:1683:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1683:29:1683:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1683:29:1683:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1684:20:1684:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1684:20:1684:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1684:20:1684:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1684:29:1684:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1684:29:1684:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1690:23:1690:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1690:23:1690:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1690:34:1690:36 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1690:45:1693:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1691:13:1691:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1691:13:1691:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1691:13:1691:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1691:13:1691:27 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1691:23:1691:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1691:23:1691:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1692:13:1692:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1692:13:1692:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1692:13:1692:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1692:13:1692:27 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1692:23:1692:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1692:23:1692:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1698:16:1698:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1698:22:1698:24 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1698:41:1703:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1699:13:1702:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1700:20:1700:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1700:20:1700:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1700:20:1700:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1700:29:1700:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1700:29:1700:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1701:20:1701:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1701:20:1701:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1701:20:1701:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1701:29:1701:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1701:29:1701:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1707:23:1707:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1707:23:1707:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1707:34:1707:36 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1707:45:1710:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1708:13:1708:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1708:13:1708:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1708:13:1708:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1708:13:1708:27 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1708:23:1708:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1708:23:1708:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1709:13:1709:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1709:13:1709:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1709:13:1709:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1709:13:1709:27 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1709:23:1709:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1709:23:1709:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1715:16:1715:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1715:22:1715:24 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1715:41:1720:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1716:13:1719:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1717:20:1717:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1717:20:1717:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1717:20:1717:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1717:29:1717:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1717:29:1717:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1718:20:1718:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1718:20:1718:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1718:20:1718:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1718:29:1718:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1718:29:1718:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1724:23:1724:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1724:23:1724:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1724:34:1724:36 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1724:45:1727:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1725:13:1725:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1725:13:1725:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1725:13:1725:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1725:13:1725:27 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1725:23:1725:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1725:23:1725:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1726:13:1726:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1726:13:1726:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1726:13:1726:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1726:13:1726:27 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1726:23:1726:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1726:23:1726:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1732:19:1732:22 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1732:25:1732:27 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1732:44:1737:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1733:13:1736:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1734:20:1734:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1734:20:1734:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1734:20:1734:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1734:29:1734:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1734:29:1734:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1735:20:1735:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1735:20:1735:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1735:20:1735:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1735:29:1735:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1735:29:1735:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1741:26:1741:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1741:26:1741:34 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1741:37:1741:39 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1741:48:1744:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1742:13:1742:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1742:13:1742:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1742:13:1742:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1742:13:1742:27 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1742:23:1742:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1742:23:1742:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1743:13:1743:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1743:13:1743:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1743:13:1743:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1743:13:1743:27 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1743:23:1743:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1743:23:1743:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1749:18:1749:21 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1749:24:1749:26 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1749:43:1754:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1750:13:1753:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1751:20:1751:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1751:20:1751:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1751:20:1751:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1751:29:1751:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1751:29:1751:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1752:20:1752:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1752:20:1752:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1752:20:1752:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1752:29:1752:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1752:29:1752:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1758:25:1758:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1758:25:1758:33 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1758:36:1758:38 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1758:47:1761:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1759:13:1759:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1759:13:1759:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1759:13:1759:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1759:13:1759:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1759:23:1759:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1759:23:1759:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1760:13:1760:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1760:13:1760:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1760:13:1760:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1760:13:1760:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1760:23:1760:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1760:23:1760:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1766:19:1766:22 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1766:25:1766:27 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1766:44:1771:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1767:13:1770:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1768:20:1768:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1768:20:1768:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1768:20:1768:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1768:29:1768:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1768:29:1768:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1769:20:1769:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1769:20:1769:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1769:20:1769:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1769:29:1769:31 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1769:29:1769:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1775:26:1775:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1775:26:1775:34 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1775:37:1775:39 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1775:48:1778:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1776:13:1776:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1776:13:1776:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1776:13:1776:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1776:13:1776:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1776:23:1776:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1776:23:1776:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1777:13:1777:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1777:13:1777:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1777:13:1777:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1777:13:1777:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1777:23:1777:25 | rhs | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1777:23:1777:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1783:16:1783:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1783:22:1783:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1783:40:1788:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1784:13:1787:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1785:20:1785:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1785:20:1785:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1785:20:1785:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1785:30:1785:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1786:20:1786:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1786:20:1786:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1786:20:1786:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1786:30:1786:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1792:23:1792:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1792:23:1792:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1792:34:1792:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1792:44:1795:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1793:13:1793:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1793:13:1793:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1793:13:1793:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1793:13:1793:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1793:24:1793:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1794:13:1794:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1794:13:1794:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1794:13:1794:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1794:13:1794:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1794:24:1794:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1800:16:1800:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1800:22:1800:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1800:40:1805:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1801:13:1804:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1802:20:1802:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1802:20:1802:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1802:20:1802:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1802:30:1802:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1803:20:1803:23 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1803:20:1803:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1803:20:1803:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1803:30:1803:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1809:23:1809:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1809:23:1809:31 | SelfParam | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1809:34:1809:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1809:44:1812:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1810:13:1810:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1810:13:1810:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1810:13:1810:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1810:13:1810:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1810:24:1810:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1811:13:1811:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1811:13:1811:16 | self | TRefMut | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1811:13:1811:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1811:13:1811:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1811:24:1811:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1817:16:1817:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1817:30:1822:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1818:13:1821:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1819:20:1819:26 | - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1819:21:1819:24 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1819:21:1819:26 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1820:20:1820:26 | - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1820:21:1820:24 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1820:21:1820:26 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1827:16:1827:19 | SelfParam | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1827:30:1832:9 | { ... } | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1828:13:1831:13 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1829:20:1829:26 | ! ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1829:21:1829:24 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1829:21:1829:26 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1830:20:1830:26 | ! ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1830:21:1830:24 | self | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1830:21:1830:26 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1836:15:1836:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1836:15:1836:19 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1836:22:1836:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1836:22:1836:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1836:44:1838:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1837:13:1837:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1837:13:1837:16 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1837:13:1837:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1837:13:1837:29 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1837:13:1837:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1837:23:1837:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1837:23:1837:27 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1837:23:1837:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1837:34:1837:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1837:34:1837:37 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1837:34:1837:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1837:34:1837:50 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1837:44:1837:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1837:44:1837:48 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1837:44:1837:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1840:15:1840:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1840:15:1840:19 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1840:22:1840:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1840:22:1840:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1840:44:1842:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1841:13:1841:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1841:13:1841:16 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1841:13:1841:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1841:13:1841:29 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1841:13:1841:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1841:23:1841:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1841:23:1841:27 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1841:23:1841:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1841:34:1841:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1841:34:1841:37 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1841:34:1841:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1841:34:1841:50 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1841:44:1841:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1841:44:1841:48 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1841:44:1841:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1846:24:1846:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1846:24:1846:28 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1846:31:1846:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1846:31:1846:35 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1846:75:1848:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:1846:75:1848:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | -| main.rs:1847:13:1847:29 | (...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:1847:13:1847:63 | ... .partial_cmp(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:1847:13:1847:63 | ... .partial_cmp(...) | T | {EXTERNAL LOCATION} | Ordering | -| main.rs:1847:14:1847:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1847:14:1847:17 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1847:14:1847:19 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1847:14:1847:28 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1847:23:1847:26 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1847:23:1847:26 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1847:23:1847:28 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1847:43:1847:62 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1847:43:1847:62 | &... | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:1847:44:1847:62 | (...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:1847:45:1847:49 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1847:45:1847:49 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1847:45:1847:51 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1847:45:1847:61 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1847:55:1847:59 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1847:55:1847:59 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1847:55:1847:61 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1850:15:1850:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1850:15:1850:19 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1850:22:1850:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1850:22:1850:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1850:44:1852:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1851:13:1851:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1851:13:1851:16 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1851:13:1851:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1851:13:1851:28 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1851:13:1851:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1344:18:1344:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1344:18:1344:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1344:18:1344:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1344:26:1344:27 | x7 | | main.rs:1268:5:1269:19 | S | +| main.rs:1344:26:1344:27 | x7 | T | {EXTERNAL LOCATION} | & | +| main.rs:1344:26:1344:27 | x7 | T.TRef | main.rs:1271:5:1272:14 | S2 | +| main.rs:1346:13:1346:14 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1346:26:1346:32 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1346:26:1346:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1346:26:1346:44 | "Hello".to_string() | | {EXTERNAL LOCATION} | String | +| main.rs:1350:13:1350:13 | u | | {EXTERNAL LOCATION} | Result | +| main.rs:1350:13:1350:13 | u | T | {EXTERNAL LOCATION} | u32 | +| main.rs:1350:17:1350:18 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1350:17:1350:33 | x9.parse() | | {EXTERNAL LOCATION} | Result | +| main.rs:1350:17:1350:33 | x9.parse() | T | {EXTERNAL LOCATION} | u32 | +| main.rs:1352:13:1352:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1352:13:1352:20 | my_thing | TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1352:24:1352:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1352:24:1352:39 | &... | TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1352:25:1352:39 | MyInt {...} | | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1352:36:1352:37 | 37 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1354:13:1354:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1354:17:1354:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1354:17:1354:24 | my_thing | TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1354:17:1354:43 | my_thing.method_on_borrow() | | {EXTERNAL LOCATION} | i64 | +| main.rs:1355:9:1355:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1355:18:1355:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1355:18:1355:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1355:18:1355:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1355:18:1355:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1355:18:1355:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1355:26:1355:26 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1358:13:1358:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1358:13:1358:20 | my_thing | TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1358:24:1358:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1358:24:1358:39 | &... | TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1358:25:1358:39 | MyInt {...} | | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1358:36:1358:37 | 38 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1359:13:1359:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1359:17:1359:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1359:17:1359:24 | my_thing | TRef | main.rs:1274:5:1277:5 | MyInt | +| main.rs:1359:17:1359:47 | my_thing.method_not_on_borrow() | | {EXTERNAL LOCATION} | i64 | +| main.rs:1360:9:1360:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1360:18:1360:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1360:18:1360:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1360:18:1360:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1360:18:1360:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1360:18:1360:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1360:26:1360:26 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1367:16:1367:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1367:16:1367:20 | SelfParam | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | +| main.rs:1370:16:1370:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1370:16:1370:20 | SelfParam | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | +| main.rs:1370:32:1372:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1370:32:1372:9 | { ... } | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | +| main.rs:1371:13:1371:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1371:13:1371:16 | self | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | +| main.rs:1371:13:1371:22 | self.foo() | | {EXTERNAL LOCATION} | & | +| main.rs:1371:13:1371:22 | self.foo() | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | +| main.rs:1379:16:1379:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1379:16:1379:20 | SelfParam | TRef | main.rs:1375:5:1375:20 | MyStruct | +| main.rs:1379:36:1381:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1379:36:1381:9 | { ... } | TRef | main.rs:1375:5:1375:20 | MyStruct | +| main.rs:1380:13:1380:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1380:13:1380:16 | self | TRef | main.rs:1375:5:1375:20 | MyStruct | +| main.rs:1384:16:1387:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1385:13:1385:13 | x | | main.rs:1375:5:1375:20 | MyStruct | +| main.rs:1385:17:1385:24 | MyStruct | | main.rs:1375:5:1375:20 | MyStruct | +| main.rs:1386:9:1386:9 | x | | main.rs:1375:5:1375:20 | MyStruct | +| main.rs:1386:9:1386:15 | x.bar() | | {EXTERNAL LOCATION} | & | +| main.rs:1386:9:1386:15 | x.bar() | TRef | main.rs:1375:5:1375:20 | MyStruct | +| main.rs:1396:16:1396:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1396:16:1396:20 | SelfParam | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1396:16:1396:20 | SelfParam | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1396:32:1398:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1396:32:1398:9 | { ... } | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1396:32:1398:9 | { ... } | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1397:13:1397:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1397:13:1397:16 | self | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1397:13:1397:16 | self | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1400:16:1400:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1400:16:1400:20 | SelfParam | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1400:16:1400:20 | SelfParam | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1400:23:1400:23 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1400:23:1400:23 | x | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1400:23:1400:23 | x | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1400:42:1402:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1400:42:1402:9 | { ... } | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1400:42:1402:9 | { ... } | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1401:13:1401:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1401:13:1401:16 | self | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1401:13:1401:16 | self | TRef.T | main.rs:1395:10:1395:10 | T | +| main.rs:1405:16:1411:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1406:13:1406:13 | x | | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1406:13:1406:13 | x | T | main.rs:1391:5:1391:13 | S | +| main.rs:1406:17:1406:27 | MyStruct(...) | | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1406:17:1406:27 | MyStruct(...) | T | main.rs:1391:5:1391:13 | S | +| main.rs:1406:26:1406:26 | S | | main.rs:1391:5:1391:13 | S | +| main.rs:1407:9:1407:9 | x | | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1407:9:1407:9 | x | T | main.rs:1391:5:1391:13 | S | +| main.rs:1407:9:1407:15 | x.foo() | | {EXTERNAL LOCATION} | & | +| main.rs:1407:9:1407:15 | x.foo() | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1407:9:1407:15 | x.foo() | TRef.T | main.rs:1391:5:1391:13 | S | +| main.rs:1408:13:1408:13 | x | | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1408:13:1408:13 | x | T | main.rs:1391:5:1391:13 | S | +| main.rs:1408:17:1408:27 | MyStruct(...) | | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1408:17:1408:27 | MyStruct(...) | T | main.rs:1391:5:1391:13 | S | +| main.rs:1408:26:1408:26 | S | | main.rs:1391:5:1391:13 | S | +| main.rs:1410:9:1410:9 | x | | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1410:9:1410:9 | x | T | main.rs:1391:5:1391:13 | S | +| main.rs:1410:9:1410:18 | x.bar(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1410:9:1410:18 | x.bar(...) | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1410:9:1410:18 | x.bar(...) | TRef.T | main.rs:1391:5:1391:13 | S | +| main.rs:1410:15:1410:17 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1410:15:1410:17 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1410:15:1410:17 | &... | TRef.TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1410:15:1410:17 | &... | TRef.TRef.T | main.rs:1391:5:1391:13 | S | +| main.rs:1410:16:1410:17 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1410:16:1410:17 | &x | TRef | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1410:16:1410:17 | &x | TRef.T | main.rs:1391:5:1391:13 | S | +| main.rs:1410:17:1410:17 | x | | main.rs:1393:5:1393:26 | MyStruct | +| main.rs:1410:17:1410:17 | x | T | main.rs:1391:5:1391:13 | S | +| main.rs:1421:17:1421:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1421:17:1421:25 | SelfParam | TRefMut | main.rs:1415:5:1418:5 | MyFlag | +| main.rs:1421:28:1423:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1422:13:1422:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1422:13:1422:16 | self | TRefMut | main.rs:1415:5:1418:5 | MyFlag | +| main.rs:1422:13:1422:21 | self.bool | | {EXTERNAL LOCATION} | bool | +| main.rs:1422:13:1422:34 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:1422:25:1422:34 | ! ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1422:26:1422:29 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1422:26:1422:29 | self | TRefMut | main.rs:1415:5:1418:5 | MyFlag | +| main.rs:1422:26:1422:34 | self.bool | | {EXTERNAL LOCATION} | bool | +| main.rs:1429:15:1429:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1429:15:1429:19 | SelfParam | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1429:31:1431:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1429:31:1431:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1430:13:1430:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1430:13:1430:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1430:13:1430:19 | &... | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1430:13:1430:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1430:13:1430:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1430:13:1430:19 | &... | TRef.TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1430:14:1430:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1430:14:1430:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1430:14:1430:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1430:14:1430:19 | &... | TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1430:15:1430:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1430:15:1430:19 | &self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1430:15:1430:19 | &self | TRef.TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1430:16:1430:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1430:16:1430:19 | self | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1433:15:1433:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1433:15:1433:25 | SelfParam | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1433:37:1435:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1433:37:1435:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1434:13:1434:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1434:13:1434:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1434:13:1434:19 | &... | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1434:13:1434:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1434:13:1434:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1434:13:1434:19 | &... | TRef.TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1434:14:1434:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1434:14:1434:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1434:14:1434:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1434:14:1434:19 | &... | TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1434:15:1434:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1434:15:1434:19 | &self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1434:15:1434:19 | &self | TRef.TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1434:16:1434:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1434:16:1434:19 | self | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1437:15:1437:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1437:15:1437:15 | x | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1437:34:1439:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1437:34:1439:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1438:13:1438:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1438:13:1438:13 | x | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1441:15:1441:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1441:15:1441:15 | x | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1441:34:1443:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1441:34:1443:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1442:13:1442:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1442:13:1442:16 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1442:13:1442:16 | &... | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1442:13:1442:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1442:13:1442:16 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1442:13:1442:16 | &... | TRef.TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1442:14:1442:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1442:14:1442:16 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1442:14:1442:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1442:14:1442:16 | &... | TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1442:15:1442:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1442:15:1442:16 | &x | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1442:15:1442:16 | &x | TRef.TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1442:16:1442:16 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1442:16:1442:16 | x | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1446:16:1459:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1447:13:1447:13 | x | | main.rs:1426:5:1426:13 | S | +| main.rs:1447:17:1447:20 | S {...} | | main.rs:1426:5:1426:13 | S | +| main.rs:1448:9:1448:9 | x | | main.rs:1426:5:1426:13 | S | +| main.rs:1448:9:1448:14 | x.f1() | | {EXTERNAL LOCATION} | & | +| main.rs:1448:9:1448:14 | x.f1() | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1449:9:1449:9 | x | | main.rs:1426:5:1426:13 | S | +| main.rs:1449:9:1449:14 | x.f2() | | {EXTERNAL LOCATION} | & | +| main.rs:1449:9:1449:14 | x.f2() | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1450:9:1450:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1450:9:1450:17 | ...::f3(...) | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1450:15:1450:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1450:15:1450:16 | &x | TRef | main.rs:1426:5:1426:13 | S | +| main.rs:1450:16:1450:16 | x | | main.rs:1426:5:1426:13 | S | +| main.rs:1452:13:1452:13 | n | | {EXTERNAL LOCATION} | bool | +| main.rs:1452:17:1452:24 | * ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1452:18:1452:24 | * ... | | {EXTERNAL LOCATION} | & | +| main.rs:1452:18:1452:24 | * ... | TRef | {EXTERNAL LOCATION} | bool | +| main.rs:1452:19:1452:24 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1452:19:1452:24 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1452:19:1452:24 | &... | TRef.TRef | {EXTERNAL LOCATION} | bool | +| main.rs:1452:20:1452:24 | &true | | {EXTERNAL LOCATION} | & | +| main.rs:1452:20:1452:24 | &true | TRef | {EXTERNAL LOCATION} | bool | +| main.rs:1452:21:1452:24 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1456:17:1456:20 | flag | | main.rs:1415:5:1418:5 | MyFlag | +| main.rs:1456:24:1456:41 | ...::default(...) | | main.rs:1415:5:1418:5 | MyFlag | +| main.rs:1457:9:1457:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1457:22:1457:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | +| main.rs:1457:22:1457:30 | &mut flag | TRefMut | main.rs:1415:5:1418:5 | MyFlag | +| main.rs:1457:27:1457:30 | flag | | main.rs:1415:5:1418:5 | MyFlag | +| main.rs:1458:9:1458:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1458:18:1458:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1458:18:1458:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1458:18:1458:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1458:18:1458:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1458:18:1458:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1458:26:1458:29 | flag | | main.rs:1415:5:1418:5 | MyFlag | +| main.rs:1473:43:1476:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1473:43:1476:5 | { ... } | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1473:43:1476:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1474:13:1474:13 | x | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1474:17:1474:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1474:17:1474:30 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1474:17:1474:31 | TryExpr | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1474:28:1474:29 | S1 | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1475:9:1475:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1475:9:1475:22 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1475:9:1475:22 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1475:20:1475:21 | S1 | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1480:46:1484:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1480:46:1484:5 | { ... } | E | main.rs:1468:5:1469:14 | S2 | +| main.rs:1480:46:1484:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1481:13:1481:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1481:13:1481:13 | x | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1481:17:1481:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1481:17:1481:30 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1481:28:1481:29 | S1 | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1482:13:1482:13 | y | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1482:17:1482:17 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1482:17:1482:17 | x | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1482:17:1482:18 | TryExpr | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1483:9:1483:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1483:9:1483:22 | ...::Ok(...) | E | main.rs:1468:5:1469:14 | S2 | +| main.rs:1483:9:1483:22 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1483:20:1483:21 | S1 | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1488:40:1493:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1488:40:1493:5 | { ... } | E | main.rs:1468:5:1469:14 | S2 | +| main.rs:1488:40:1493:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1489:13:1489:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1489:13:1489:13 | x | T | {EXTERNAL LOCATION} | Result | +| main.rs:1489:13:1489:13 | x | T.T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1489:17:1489:42 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1489:17:1489:42 | ...::Ok(...) | T | {EXTERNAL LOCATION} | Result | +| main.rs:1489:17:1489:42 | ...::Ok(...) | T.T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1489:28:1489:41 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1489:28:1489:41 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1489:39:1489:40 | S1 | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1491:17:1491:17 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1491:17:1491:17 | x | T | {EXTERNAL LOCATION} | Result | +| main.rs:1491:17:1491:17 | x | T.T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1491:17:1491:18 | TryExpr | | {EXTERNAL LOCATION} | Result | +| main.rs:1491:17:1491:18 | TryExpr | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1491:17:1491:29 | ... .map(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1491:24:1491:28 | \|...\| s | | {EXTERNAL LOCATION} | dyn Fn | +| main.rs:1491:24:1491:28 | \|...\| s | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:1492:9:1492:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1492:9:1492:22 | ...::Ok(...) | E | main.rs:1468:5:1469:14 | S2 | +| main.rs:1492:9:1492:22 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1492:20:1492:21 | S1 | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1497:30:1497:34 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1497:30:1497:34 | input | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1497:30:1497:34 | input | T | main.rs:1497:20:1497:27 | T | +| main.rs:1497:69:1504:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1497:69:1504:5 | { ... } | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1497:69:1504:5 | { ... } | T | main.rs:1497:20:1497:27 | T | +| main.rs:1498:13:1498:17 | value | | main.rs:1497:20:1497:27 | T | +| main.rs:1498:21:1498:25 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1498:21:1498:25 | input | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1498:21:1498:25 | input | T | main.rs:1497:20:1497:27 | T | +| main.rs:1498:21:1498:26 | TryExpr | | main.rs:1497:20:1497:27 | T | +| main.rs:1499:22:1499:38 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1499:22:1499:38 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1499:22:1499:38 | ...::Ok(...) | T | main.rs:1497:20:1497:27 | T | +| main.rs:1499:22:1502:10 | ... .and_then(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1499:22:1502:10 | ... .and_then(...) | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1499:33:1499:37 | value | | main.rs:1497:20:1497:27 | T | +| main.rs:1499:49:1502:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| main.rs:1499:49:1502:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:1499:49:1502:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | Result | +| main.rs:1499:49:1502:9 | \|...\| ... | dyn(Output).E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1499:53:1502:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1499:53:1502:9 | { ... } | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1500:13:1500:31 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1500:22:1500:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1500:22:1500:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1500:22:1500:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1500:22:1500:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1500:22:1500:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1501:13:1501:34 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1501:13:1501:34 | ...::Ok::<...>(...) | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1503:9:1503:23 | ...::Err(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1503:9:1503:23 | ...::Err(...) | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1503:9:1503:23 | ...::Err(...) | T | main.rs:1497:20:1497:27 | T | +| main.rs:1503:21:1503:22 | S1 | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1507:16:1523:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1508:9:1510:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1508:16:1508:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1508:16:1508:33 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1508:16:1508:33 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1508:27:1508:32 | result | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1508:37:1508:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1508:37:1508:52 | try_same_error(...) | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1508:37:1508:52 | try_same_error(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1508:54:1510:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1509:13:1509:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1509:22:1509:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1509:22:1509:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1509:22:1509:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1509:22:1509:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1509:22:1509:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1509:30:1509:35 | result | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1512:9:1514:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1512:16:1512:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1512:16:1512:33 | ...::Ok(...) | E | main.rs:1468:5:1469:14 | S2 | +| main.rs:1512:16:1512:33 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1512:27:1512:32 | result | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1512:37:1512:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1512:37:1512:55 | try_convert_error(...) | E | main.rs:1468:5:1469:14 | S2 | +| main.rs:1512:37:1512:55 | try_convert_error(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1512:57:1514:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1513:13:1513:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1513:22:1513:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1513:22:1513:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1513:22:1513:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1513:22:1513:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1513:22:1513:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1513:30:1513:35 | result | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1516:9:1518:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1516:16:1516:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1516:16:1516:33 | ...::Ok(...) | E | main.rs:1468:5:1469:14 | S2 | +| main.rs:1516:16:1516:33 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1516:27:1516:32 | result | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1516:37:1516:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1516:37:1516:49 | try_chained(...) | E | main.rs:1468:5:1469:14 | S2 | +| main.rs:1516:37:1516:49 | try_chained(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1516:51:1518:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1517:13:1517:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1517:22:1517:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1517:22:1517:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1517:22:1517:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1517:22:1517:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1517:22:1517:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1517:30:1517:35 | result | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1520:9:1522:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1520:16:1520:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1520:16:1520:33 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1520:16:1520:33 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1520:27:1520:32 | result | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1520:37:1520:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1520:37:1520:63 | try_complex(...) | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1520:37:1520:63 | try_complex(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1520:49:1520:62 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1520:49:1520:62 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | +| main.rs:1520:49:1520:62 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | +| main.rs:1520:60:1520:61 | S1 | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1520:65:1522:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1521:13:1521:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1521:22:1521:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1521:22:1521:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1521:22:1521:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1521:22:1521:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1521:22:1521:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1521:30:1521:35 | result | | main.rs:1465:5:1466:14 | S1 | +| main.rs:1527:16:1618:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1528:13:1528:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1528:22:1528:22 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1529:13:1529:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:1529:17:1529:17 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1530:13:1530:13 | z | | {EXTERNAL LOCATION} | i32 | +| main.rs:1530:17:1530:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1530:17:1530:21 | ... + ... | | {EXTERNAL LOCATION} | i32 | +| main.rs:1530:21:1530:21 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:1531:13:1531:13 | z | | {EXTERNAL LOCATION} | i32 | +| main.rs:1531:17:1531:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1531:17:1531:23 | x.abs() | | {EXTERNAL LOCATION} | i32 | +| main.rs:1532:13:1532:13 | c | | {EXTERNAL LOCATION} | char | +| main.rs:1532:17:1532:19 | 'c' | | {EXTERNAL LOCATION} | char | +| main.rs:1533:13:1533:17 | hello | | {EXTERNAL LOCATION} | & | +| main.rs:1533:13:1533:17 | hello | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1533:21:1533:27 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1533:21:1533:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1534:13:1534:13 | f | | {EXTERNAL LOCATION} | f64 | +| main.rs:1534:17:1534:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | +| main.rs:1535:13:1535:13 | t | | {EXTERNAL LOCATION} | bool | +| main.rs:1535:17:1535:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1536:13:1536:13 | f | | {EXTERNAL LOCATION} | bool | +| main.rs:1536:17:1536:21 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1539:26:1539:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1539:26:1539:30 | SelfParam | TRef | main.rs:1538:9:1542:9 | Self [trait MyTrait] | +| main.rs:1545:26:1545:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1545:26:1545:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1545:26:1545:30 | SelfParam | TRef.TArray | main.rs:1544:14:1544:23 | T | +| main.rs:1545:39:1547:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1545:39:1547:13 | { ... } | TRef | main.rs:1544:14:1544:23 | T | +| main.rs:1546:17:1546:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1546:17:1546:20 | self | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1546:17:1546:20 | self | TRef.TArray | main.rs:1544:14:1544:23 | T | +| main.rs:1546:17:1546:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | +| main.rs:1546:17:1546:36 | ... .unwrap() | TRef | main.rs:1544:14:1544:23 | T | +| main.rs:1546:26:1546:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1549:31:1551:13 | { ... } | | main.rs:1544:14:1544:23 | T | +| main.rs:1550:17:1550:28 | ...::default(...) | | main.rs:1544:14:1544:23 | T | +| main.rs:1554:13:1554:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1554:13:1554:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1554:17:1554:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1554:17:1554:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1554:17:1554:37 | ... .my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1554:17:1554:37 | ... .my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1554:18:1554:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1554:21:1554:21 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1554:24:1554:24 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1555:13:1555:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1555:13:1555:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1555:17:1555:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1555:17:1555:47 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1555:22:1555:22 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1555:37:1555:46 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1555:37:1555:46 | &... | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1555:37:1555:46 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1555:38:1555:46 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1555:38:1555:46 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1555:39:1555:39 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1555:42:1555:42 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1555:45:1555:45 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1556:13:1556:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1556:17:1556:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1556:24:1556:24 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1559:26:1559:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1559:26:1559:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1559:26:1559:30 | SelfParam | TRef.TSlice | main.rs:1558:14:1558:23 | T | +| main.rs:1559:39:1561:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1559:39:1561:13 | { ... } | TRef | main.rs:1558:14:1558:23 | T | +| main.rs:1560:17:1560:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1560:17:1560:20 | self | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1560:17:1560:20 | self | TRef.TSlice | main.rs:1558:14:1558:23 | T | +| main.rs:1560:17:1560:27 | self.get(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1560:17:1560:27 | self.get(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:1560:17:1560:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | +| main.rs:1560:17:1560:36 | ... .unwrap() | TRef | main.rs:1558:14:1558:23 | T | +| main.rs:1560:26:1560:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1563:31:1565:13 | { ... } | | main.rs:1558:14:1558:23 | T | +| main.rs:1564:17:1564:28 | ...::default(...) | | main.rs:1558:14:1558:23 | T | +| main.rs:1568:13:1568:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1568:13:1568:13 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1568:13:1568:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1568:25:1568:34 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1568:25:1568:34 | &... | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1568:25:1568:34 | &... | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1568:25:1568:34 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1568:25:1568:34 | &... | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1568:26:1568:34 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1568:26:1568:34 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1568:27:1568:27 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1568:30:1568:30 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1568:33:1568:33 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1569:13:1569:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1569:13:1569:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1569:17:1569:17 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1569:17:1569:17 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1569:17:1569:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1569:17:1569:29 | s.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1569:17:1569:29 | s.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1570:13:1570:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1570:13:1570:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1570:17:1570:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1570:17:1570:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1570:34:1570:34 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1570:34:1570:34 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1570:34:1570:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1571:13:1571:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1571:17:1571:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1574:26:1574:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1574:26:1574:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1574:26:1574:30 | SelfParam | TRef.T0 | main.rs:1573:14:1573:23 | T | +| main.rs:1574:26:1574:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1574:39:1576:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1574:39:1576:13 | { ... } | TRef | main.rs:1573:14:1573:23 | T | +| main.rs:1575:17:1575:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1575:17:1575:23 | &... | TRef | main.rs:1573:14:1573:23 | T | +| main.rs:1575:18:1575:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1575:18:1575:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1575:18:1575:21 | self | TRef.T0 | main.rs:1573:14:1573:23 | T | +| main.rs:1575:18:1575:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1575:18:1575:23 | self.0 | | main.rs:1573:14:1573:23 | T | +| main.rs:1578:31:1580:13 | { ... } | | main.rs:1573:14:1573:23 | T | +| main.rs:1579:17:1579:28 | ...::default(...) | | main.rs:1573:14:1573:23 | T | +| main.rs:1583:13:1583:13 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1583:13:1583:13 | p | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1583:13:1583:13 | p | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1583:17:1583:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1583:17:1583:23 | TupleExpr | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1583:17:1583:23 | TupleExpr | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1583:18:1583:19 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1583:22:1583:22 | 7 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1584:13:1584:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1584:13:1584:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1584:17:1584:17 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1584:17:1584:17 | p | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1584:17:1584:17 | p | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1584:17:1584:29 | p.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1584:17:1584:29 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1585:13:1585:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1585:13:1585:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1585:17:1585:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1585:17:1585:39 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1585:37:1585:38 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1585:37:1585:38 | &p | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1585:37:1585:38 | &p | TRef.T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1585:37:1585:38 | &p | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1585:38:1585:38 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1585:38:1585:38 | p | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1585:38:1585:38 | p | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1586:13:1586:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1586:17:1586:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1589:26:1589:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1589:26:1589:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1589:26:1589:30 | SelfParam | TRef.TRef | main.rs:1588:14:1588:23 | T | +| main.rs:1589:39:1591:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1589:39:1591:13 | { ... } | TRef | main.rs:1588:14:1588:23 | T | +| main.rs:1590:17:1590:21 | * ... | | {EXTERNAL LOCATION} | & | +| main.rs:1590:17:1590:21 | * ... | TRef | main.rs:1588:14:1588:23 | T | +| main.rs:1590:18:1590:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1590:18:1590:21 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1590:18:1590:21 | self | TRef.TRef | main.rs:1588:14:1588:23 | T | +| main.rs:1593:31:1595:13 | { ... } | | main.rs:1588:14:1588:23 | T | +| main.rs:1594:17:1594:28 | ...::default(...) | | main.rs:1588:14:1588:23 | T | +| main.rs:1598:13:1598:13 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1598:13:1598:13 | r | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1598:17:1598:19 | &42 | | {EXTERNAL LOCATION} | & | +| main.rs:1598:17:1598:19 | &42 | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1598:18:1598:19 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1599:13:1599:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1599:13:1599:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1599:17:1599:17 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1599:17:1599:17 | r | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1599:17:1599:29 | r.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1599:17:1599:29 | r.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1600:13:1600:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1600:13:1600:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1600:17:1600:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1600:17:1600:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1600:33:1600:34 | &r | | {EXTERNAL LOCATION} | & | +| main.rs:1600:33:1600:34 | &r | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1600:33:1600:34 | &r | TRef.TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1600:34:1600:34 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1600:34:1600:34 | r | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1601:13:1601:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1601:17:1601:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1604:26:1604:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1604:26:1604:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1604:26:1604:30 | SelfParam | TRef.TPtrMut | main.rs:1603:14:1603:23 | T | +| main.rs:1604:39:1606:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1604:39:1606:13 | { ... } | TRef | main.rs:1603:14:1603:23 | T | +| main.rs:1605:17:1605:34 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1605:17:1605:34 | { ... } | TRef | main.rs:1603:14:1603:23 | T | +| main.rs:1605:26:1605:32 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1605:26:1605:32 | &... | TRef | main.rs:1603:14:1603:23 | T | +| main.rs:1605:27:1605:32 | * ... | | main.rs:1603:14:1603:23 | T | +| main.rs:1605:28:1605:32 | * ... | | {EXTERNAL LOCATION} | *mut | +| main.rs:1605:28:1605:32 | * ... | TPtrMut | main.rs:1603:14:1603:23 | T | +| main.rs:1605:29:1605:32 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1605:29:1605:32 | self | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1605:29:1605:32 | self | TRef.TPtrMut | main.rs:1603:14:1603:23 | T | +| main.rs:1608:31:1610:13 | { ... } | | main.rs:1603:14:1603:23 | T | +| main.rs:1609:17:1609:28 | ...::default(...) | | main.rs:1603:14:1603:23 | T | +| main.rs:1613:17:1613:17 | v | | {EXTERNAL LOCATION} | i32 | +| main.rs:1613:21:1613:22 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1614:13:1614:13 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1614:13:1614:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1614:27:1614:32 | &mut v | | {EXTERNAL LOCATION} | &mut | +| main.rs:1614:27:1614:32 | &mut v | TRefMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1614:32:1614:32 | v | | {EXTERNAL LOCATION} | i32 | +| main.rs:1615:13:1615:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1615:13:1615:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1615:17:1615:40 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1615:17:1615:40 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1615:26:1615:26 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1615:26:1615:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1615:26:1615:38 | p.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1615:26:1615:38 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1616:13:1616:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1616:13:1616:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1616:17:1616:50 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1616:17:1616:50 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1616:26:1616:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1616:26:1616:48 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1616:46:1616:47 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1616:46:1616:47 | &p | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1616:46:1616:47 | &p | TRef.TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1616:47:1616:47 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1616:47:1616:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1617:13:1617:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1617:17:1617:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1623:16:1635:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1624:13:1624:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:1624:17:1624:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1624:17:1624:29 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1624:25:1624:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1625:13:1625:13 | y | | {EXTERNAL LOCATION} | bool | +| main.rs:1625:17:1625:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1625:17:1625:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1625:25:1625:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1627:17:1627:17 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1628:13:1628:16 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:1628:20:1628:21 | 34 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1628:20:1628:27 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1628:26:1628:27 | 33 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1629:9:1633:9 | if cond {...} else {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1629:12:1629:15 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:1629:17:1631:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1630:17:1630:17 | z | | {EXTERNAL LOCATION} | () | +| main.rs:1630:21:1630:27 | (...) | | {EXTERNAL LOCATION} | () | +| main.rs:1630:22:1630:22 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1630:22:1630:26 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:1630:26:1630:26 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1631:16:1633:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1632:13:1632:13 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1632:13:1632:17 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:1632:17:1632:17 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1634:9:1634:9 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1648:30:1650:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1649:13:1649:31 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1649:23:1649:23 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1649:29:1649:29 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1656:16:1656:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1656:22:1656:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1656:41:1661:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1657:13:1660:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1658:20:1658:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1658:20:1658:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1658:20:1658:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1658:29:1658:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1658:29:1658:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1659:20:1659:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1659:20:1659:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1659:20:1659:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1659:29:1659:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1659:29:1659:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1666:23:1666:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1666:23:1666:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1666:34:1666:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1666:45:1669:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1667:13:1667:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1667:13:1667:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1667:13:1667:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1667:13:1667:27 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1667:23:1667:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1667:23:1667:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1668:13:1668:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1668:13:1668:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1668:13:1668:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1668:13:1668:27 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1668:23:1668:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1668:23:1668:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1674:16:1674:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1674:22:1674:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1674:41:1679:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1675:13:1678:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1676:20:1676:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1676:20:1676:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1676:20:1676:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1676:29:1676:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1676:29:1676:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1677:20:1677:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1677:20:1677:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1677:20:1677:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1677:29:1677:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1677:29:1677:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1684:23:1684:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1684:23:1684:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1684:34:1684:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1684:45:1687:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1685:13:1685:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1685:13:1685:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1685:13:1685:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1685:13:1685:27 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1685:23:1685:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1685:23:1685:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1686:13:1686:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1686:13:1686:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1686:13:1686:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1686:13:1686:27 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1686:23:1686:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1686:23:1686:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1692:16:1692:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1692:22:1692:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1692:41:1697:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1693:13:1696:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1694:20:1694:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1694:20:1694:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1694:20:1694:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1694:29:1694:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1694:29:1694:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1695:20:1695:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1695:20:1695:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1695:20:1695:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1695:29:1695:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1695:29:1695:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1701:23:1701:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1701:23:1701:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1701:34:1701:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1701:45:1704:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1702:13:1702:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1702:13:1702:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1702:13:1702:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1702:13:1702:27 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1702:23:1702:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1702:23:1702:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1703:13:1703:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1703:13:1703:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1703:13:1703:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1703:13:1703:27 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1703:23:1703:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1703:23:1703:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1709:16:1709:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1709:22:1709:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1709:41:1714:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1710:13:1713:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1711:20:1711:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1711:20:1711:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1711:20:1711:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1711:29:1711:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1711:29:1711:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1712:20:1712:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1712:20:1712:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1712:20:1712:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1712:29:1712:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1712:29:1712:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1718:23:1718:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1718:23:1718:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1718:34:1718:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1718:45:1721:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1719:13:1719:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1719:13:1719:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1719:13:1719:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1719:13:1719:27 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1719:23:1719:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1719:23:1719:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1720:13:1720:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1720:13:1720:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1720:13:1720:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1720:13:1720:27 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1720:23:1720:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1720:23:1720:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1726:16:1726:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1726:22:1726:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1726:41:1731:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1727:13:1730:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1728:20:1728:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1728:20:1728:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1728:20:1728:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1728:29:1728:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1728:29:1728:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1729:20:1729:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1729:20:1729:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1729:20:1729:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1729:29:1729:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1729:29:1729:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1735:23:1735:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1735:23:1735:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1735:34:1735:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1735:45:1738:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1736:13:1736:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1736:13:1736:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1736:13:1736:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1736:13:1736:27 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1736:23:1736:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1736:23:1736:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1737:13:1737:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1737:13:1737:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1737:13:1737:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1737:13:1737:27 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1737:23:1737:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1737:23:1737:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1743:19:1743:22 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1743:25:1743:27 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1743:44:1748:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1744:13:1747:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1745:20:1745:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1745:20:1745:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1745:20:1745:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1745:29:1745:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1745:29:1745:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:20:1746:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1746:20:1746:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:20:1746:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:29:1746:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1746:29:1746:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1752:26:1752:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1752:26:1752:34 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1752:37:1752:39 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1752:48:1755:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1753:13:1753:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1753:13:1753:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1753:13:1753:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1753:13:1753:27 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1753:23:1753:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1753:23:1753:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1754:13:1754:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1754:13:1754:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1754:13:1754:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1754:13:1754:27 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1754:23:1754:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1754:23:1754:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1760:18:1760:21 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1760:24:1760:26 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1760:43:1765:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1761:13:1764:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1762:20:1762:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1762:20:1762:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1762:20:1762:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1762:29:1762:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1762:29:1762:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1763:20:1763:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1763:20:1763:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1763:20:1763:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1763:29:1763:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1763:29:1763:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1769:25:1769:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1769:25:1769:33 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1769:36:1769:38 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1769:47:1772:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1770:13:1770:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1770:13:1770:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1770:13:1770:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:13:1770:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1770:23:1770:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1770:23:1770:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:13:1771:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1771:13:1771:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1771:13:1771:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:13:1771:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1771:23:1771:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1771:23:1771:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1777:19:1777:22 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1777:25:1777:27 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1777:44:1782:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1778:13:1781:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1779:20:1779:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1779:20:1779:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1779:20:1779:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1779:29:1779:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1779:29:1779:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1780:20:1780:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1780:20:1780:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1780:20:1780:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1780:29:1780:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1780:29:1780:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1786:26:1786:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1786:26:1786:34 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1786:37:1786:39 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1786:48:1789:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1787:13:1787:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1787:13:1787:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1787:13:1787:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1787:13:1787:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1787:23:1787:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1787:23:1787:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1788:13:1788:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1788:13:1788:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1788:13:1788:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1788:13:1788:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1788:23:1788:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1788:23:1788:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1794:16:1794:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1794:22:1794:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1794:40:1799:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1795:13:1798:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1796:20:1796:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1796:20:1796:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1796:20:1796:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1796:30:1796:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1797:20:1797:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1797:20:1797:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1797:20:1797:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1797:30:1797:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1803:23:1803:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1803:23:1803:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1803:34:1803:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1803:44:1806:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1804:13:1804:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1804:13:1804:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1804:13:1804:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1804:13:1804:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1804:24:1804:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1805:13:1805:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1805:13:1805:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1805:13:1805:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1805:13:1805:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1805:24:1805:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1811:16:1811:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1811:22:1811:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1811:40:1816:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1812:13:1815:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1813:20:1813:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1813:20:1813:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1813:20:1813:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1813:30:1813:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1814:20:1814:23 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1814:20:1814:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1814:20:1814:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1814:30:1814:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1820:23:1820:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1820:23:1820:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1820:34:1820:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1820:44:1823:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1821:13:1821:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1821:13:1821:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1821:13:1821:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1821:13:1821:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1821:24:1821:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1822:13:1822:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1822:13:1822:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1822:13:1822:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1822:13:1822:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1822:24:1822:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1828:16:1828:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1828:30:1833:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1829:13:1832:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1830:20:1830:26 | - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1830:21:1830:24 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1830:21:1830:26 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1831:20:1831:26 | - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1831:21:1831:24 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1831:21:1831:26 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1838:16:1838:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1838:30:1843:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1839:13:1842:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1840:20:1840:26 | ! ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1840:21:1840:24 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1840:21:1840:26 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1841:20:1841:26 | ! ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1841:21:1841:24 | self | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1841:21:1841:26 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1847:15:1847:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1847:15:1847:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1847:22:1847:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1847:22:1847:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1847:44:1849:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1848:13:1848:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1848:13:1848:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1848:13:1848:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1848:13:1848:29 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1848:13:1848:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1848:23:1848:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1848:23:1848:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1848:23:1848:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1848:34:1848:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1848:34:1848:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1848:34:1848:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1848:34:1848:50 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1848:44:1848:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1848:44:1848:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1848:44:1848:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1851:15:1851:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1851:15:1851:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | | main.rs:1851:22:1851:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1851:22:1851:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1851:22:1851:28 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1851:33:1851:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1851:33:1851:36 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1851:33:1851:38 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1851:33:1851:48 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1851:42:1851:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1851:42:1851:46 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1851:42:1851:48 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1854:15:1854:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1854:15:1854:19 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1854:22:1854:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1854:22:1854:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1854:44:1856:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1855:13:1855:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1855:13:1855:16 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1855:13:1855:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1855:13:1855:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1855:13:1855:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1855:23:1855:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1855:23:1855:27 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1855:23:1855:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1855:34:1855:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1855:34:1855:37 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1855:34:1855:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1855:34:1855:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1855:44:1855:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1855:44:1855:48 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1855:44:1855:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:15:1858:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1858:15:1858:19 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1858:22:1858:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1858:22:1858:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1858:44:1860:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1859:13:1859:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1859:13:1859:16 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1859:13:1859:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1859:13:1859:28 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1859:13:1859:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1859:22:1859:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1859:22:1859:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1859:22:1859:28 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1859:33:1859:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1859:33:1859:36 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1859:33:1859:38 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1859:33:1859:48 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1859:42:1859:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1859:42:1859:46 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1859:42:1859:48 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1862:15:1862:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1862:15:1862:19 | SelfParam | TRef | main.rs:1630:5:1635:5 | Vec2 | +| main.rs:1851:22:1851:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1851:44:1853:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1852:13:1852:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1852:13:1852:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1852:13:1852:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1852:13:1852:29 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1852:13:1852:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1852:23:1852:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1852:23:1852:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1852:23:1852:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1852:34:1852:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1852:34:1852:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1852:34:1852:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1852:34:1852:50 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1852:44:1852:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1852:44:1852:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1852:44:1852:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1857:24:1857:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1857:24:1857:28 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1857:31:1857:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1857:31:1857:35 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1857:75:1859:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:1857:75:1859:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | +| main.rs:1858:13:1858:29 | (...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:1858:13:1858:63 | ... .partial_cmp(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1858:13:1858:63 | ... .partial_cmp(...) | T | {EXTERNAL LOCATION} | Ordering | +| main.rs:1858:14:1858:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1858:14:1858:17 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1858:14:1858:19 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1858:14:1858:28 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1858:23:1858:26 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1858:23:1858:26 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1858:23:1858:28 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1858:43:1858:62 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1858:43:1858:62 | &... | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:1858:44:1858:62 | (...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:1858:45:1858:49 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1858:45:1858:49 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1858:45:1858:51 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1858:45:1858:61 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1858:55:1858:59 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1858:55:1858:59 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1858:55:1858:61 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1861:15:1861:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1861:15:1861:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1861:22:1861:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1861:22:1861:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1861:44:1863:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1862:13:1862:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1862:13:1862:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1862:13:1862:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1862:13:1862:28 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1862:13:1862:48 | ... && ... | | {EXTERNAL LOCATION} | bool | | main.rs:1862:22:1862:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1862:22:1862:26 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1862:44:1864:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1863:13:1863:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1863:13:1863:16 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1863:13:1863:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1863:13:1863:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1863:13:1863:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1863:23:1863:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1863:23:1863:27 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1863:23:1863:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1863:34:1863:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1863:34:1863:37 | self | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1863:34:1863:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1863:34:1863:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1863:44:1863:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1863:44:1863:48 | other | TRef | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1863:44:1863:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1867:26:1867:26 | a | | main.rs:1867:18:1867:23 | T | -| main.rs:1867:32:1867:32 | b | | main.rs:1867:18:1867:23 | T | -| main.rs:1868:9:1868:9 | a | | main.rs:1867:18:1867:23 | T | -| main.rs:1868:13:1868:13 | b | | main.rs:1867:18:1867:23 | T | -| main.rs:1871:16:2002:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1875:13:1875:18 | i64_eq | | {EXTERNAL LOCATION} | bool | -| main.rs:1875:22:1875:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1875:23:1875:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1875:23:1875:34 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1875:31:1875:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1876:13:1876:18 | i64_ne | | {EXTERNAL LOCATION} | bool | -| main.rs:1876:22:1876:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1876:23:1876:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1876:23:1876:34 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1876:31:1876:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1877:13:1877:18 | i64_lt | | {EXTERNAL LOCATION} | bool | -| main.rs:1877:22:1877:34 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1877:23:1877:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1877:23:1877:33 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1877:30:1877:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1878:13:1878:18 | i64_le | | {EXTERNAL LOCATION} | bool | -| main.rs:1878:22:1878:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1878:23:1878:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1878:23:1878:34 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1878:31:1878:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1879:13:1879:18 | i64_gt | | {EXTERNAL LOCATION} | bool | -| main.rs:1879:22:1879:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1879:23:1879:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1879:23:1879:34 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1879:30:1879:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1880:13:1880:18 | i64_ge | | {EXTERNAL LOCATION} | bool | -| main.rs:1880:22:1880:37 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1880:23:1880:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1880:23:1880:36 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1880:32:1880:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1883:13:1883:19 | i64_add | | {EXTERNAL LOCATION} | i64 | -| main.rs:1883:23:1883:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1883:23:1883:35 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1883:31:1883:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1884:13:1884:19 | i64_sub | | {EXTERNAL LOCATION} | i64 | -| main.rs:1884:23:1884:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1884:23:1884:35 | ... - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1884:31:1884:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1885:13:1885:19 | i64_mul | | {EXTERNAL LOCATION} | i64 | -| main.rs:1885:23:1885:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1885:23:1885:35 | ... * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1885:31:1885:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1886:13:1886:19 | i64_div | | {EXTERNAL LOCATION} | i64 | -| main.rs:1886:23:1886:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1886:23:1886:35 | ... / ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1886:31:1886:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:13:1887:19 | i64_rem | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:23:1887:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:23:1887:35 | ... % ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:31:1887:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:39:1888:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:45:1888:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1891:17:1891:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1891:34:1891:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1892:9:1892:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1892:9:1892:31 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1892:27:1892:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:17:1894:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:34:1894:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:9:1895:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:9:1895:31 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1895:27:1895:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:17:1897:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:34:1897:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:9:1898:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:9:1898:31 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1898:27:1898:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1900:17:1900:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1900:34:1900:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1901:9:1901:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1901:9:1901:31 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1901:27:1901:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1903:17:1903:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1903:34:1903:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1904:9:1904:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1904:9:1904:31 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1904:27:1904:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1907:13:1907:22 | i64_bitand | | {EXTERNAL LOCATION} | i64 | -| main.rs:1907:26:1907:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1907:26:1907:38 | ... & ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1907:34:1907:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:13:1908:21 | i64_bitor | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:25:1908:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:25:1908:37 | ... \| ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:33:1908:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:13:1909:22 | i64_bitxor | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:26:1909:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:26:1909:38 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:34:1909:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1910:13:1910:19 | i64_shl | | {EXTERNAL LOCATION} | i64 | -| main.rs:1910:23:1910:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1910:23:1910:36 | ... << ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1910:32:1910:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:13:1911:19 | i64_shr | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:23:1911:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:23:1911:36 | ... >> ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:32:1911:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1914:17:1914:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1914:37:1914:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1915:9:1915:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1915:9:1915:34 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1915:30:1915:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1917:17:1917:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1917:36:1917:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:9:1918:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:9:1918:33 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1918:29:1918:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:17:1920:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:37:1920:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:9:1921:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:9:1921:34 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1921:30:1921:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1923:17:1923:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1923:34:1923:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1924:9:1924:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1924:9:1924:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1924:28:1924:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:17:1926:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:34:1926:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1927:9:1927:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1927:9:1927:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1927:28:1927:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:13:1929:19 | i64_neg | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:23:1929:28 | - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:24:1929:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1930:13:1930:19 | i64_not | | {EXTERNAL LOCATION} | i64 | -| main.rs:1930:23:1930:28 | ! ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1930:24:1930:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1933:13:1933:14 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1933:18:1933:36 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1933:28:1933:28 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1933:34:1933:34 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1934:13:1934:14 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1934:18:1934:36 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1934:28:1934:28 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1934:34:1934:34 | 4 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1937:13:1937:19 | vec2_eq | | {EXTERNAL LOCATION} | bool | -| main.rs:1937:23:1937:24 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1937:23:1937:30 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1937:29:1937:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1938:13:1938:19 | vec2_ne | | {EXTERNAL LOCATION} | bool | -| main.rs:1938:23:1938:24 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1938:23:1938:30 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1938:29:1938:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1939:13:1939:19 | vec2_lt | | {EXTERNAL LOCATION} | bool | -| main.rs:1939:23:1939:24 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1939:23:1939:29 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1939:28:1939:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1940:13:1940:19 | vec2_le | | {EXTERNAL LOCATION} | bool | -| main.rs:1940:23:1940:24 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1940:23:1940:30 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1940:29:1940:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1941:13:1941:19 | vec2_gt | | {EXTERNAL LOCATION} | bool | -| main.rs:1941:23:1941:24 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1941:23:1941:29 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1941:28:1941:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1942:13:1942:19 | vec2_ge | | {EXTERNAL LOCATION} | bool | -| main.rs:1942:23:1942:24 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1942:23:1942:30 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1942:29:1942:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1945:13:1945:20 | vec2_add | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1945:24:1945:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1945:24:1945:30 | ... + ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1945:29:1945:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1946:13:1946:20 | vec2_sub | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1946:24:1946:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1946:24:1946:30 | ... - ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1946:29:1946:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1947:13:1947:20 | vec2_mul | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1947:24:1947:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1947:24:1947:30 | ... * ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1947:29:1947:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1948:13:1948:20 | vec2_div | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1948:24:1948:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1948:24:1948:30 | ... / ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1948:29:1948:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1949:13:1949:20 | vec2_rem | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1949:24:1949:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1949:24:1949:30 | ... % ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1949:29:1949:30 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1952:17:1952:31 | vec2_add_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1952:35:1952:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1953:9:1953:23 | vec2_add_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1953:9:1953:29 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1953:28:1953:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1955:17:1955:31 | vec2_sub_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1955:35:1955:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1956:9:1956:23 | vec2_sub_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1956:9:1956:29 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1956:28:1956:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1958:17:1958:31 | vec2_mul_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1958:35:1958:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1959:9:1959:23 | vec2_mul_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1959:9:1959:29 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1959:28:1959:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1961:17:1961:31 | vec2_div_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1961:35:1961:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1962:9:1962:23 | vec2_div_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1962:9:1962:29 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1962:28:1962:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1964:17:1964:31 | vec2_rem_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1964:35:1964:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1965:9:1965:23 | vec2_rem_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1965:9:1965:29 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1965:28:1965:29 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1968:13:1968:23 | vec2_bitand | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1968:27:1968:28 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1968:27:1968:33 | ... & ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1968:32:1968:33 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1969:13:1969:22 | vec2_bitor | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1969:26:1969:27 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1969:26:1969:32 | ... \| ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1969:31:1969:32 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1970:13:1970:23 | vec2_bitxor | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1970:27:1970:28 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1970:27:1970:33 | ... ^ ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1970:32:1970:33 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1971:13:1971:20 | vec2_shl | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1971:24:1971:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1971:24:1971:33 | ... << ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1971:30:1971:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1972:13:1972:20 | vec2_shr | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1972:24:1972:25 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1972:24:1972:33 | ... >> ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1972:30:1972:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1975:17:1975:34 | vec2_bitand_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1975:38:1975:39 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1976:9:1976:26 | vec2_bitand_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1976:9:1976:32 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1976:31:1976:32 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1978:17:1978:33 | vec2_bitor_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1978:37:1978:38 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1979:9:1979:25 | vec2_bitor_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1979:9:1979:31 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1979:30:1979:31 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1981:17:1981:34 | vec2_bitxor_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1981:38:1981:39 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1982:9:1982:26 | vec2_bitxor_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1982:9:1982:32 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1982:31:1982:32 | v2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1984:17:1984:31 | vec2_shl_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1984:35:1984:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1985:9:1985:23 | vec2_shl_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1985:9:1985:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1985:29:1985:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1987:17:1987:31 | vec2_shr_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1987:35:1987:36 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1988:9:1988:23 | vec2_shr_assign | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1988:9:1988:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1988:29:1988:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1991:13:1991:20 | vec2_neg | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1991:24:1991:26 | - ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1991:25:1991:26 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1992:13:1992:20 | vec2_not | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1992:24:1992:26 | ! ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1992:25:1992:26 | v1 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1995:13:1995:24 | default_vec2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1995:28:1995:45 | ...::default(...) | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1996:13:1996:26 | vec2_zero_plus | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1996:30:1996:48 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1996:30:1996:63 | ... + ... | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:1996:40:1996:40 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1996:46:1996:46 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1996:52:1996:63 | default_vec2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:2000:13:2000:24 | default_vec2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:2000:28:2000:45 | ...::default(...) | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:2001:13:2001:26 | vec2_zero_plus | | {EXTERNAL LOCATION} | bool | -| main.rs:2001:30:2001:48 | Vec2 {...} | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:2001:30:2001:64 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:2001:40:2001:40 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2001:46:2001:46 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2001:53:2001:64 | default_vec2 | | main.rs:1630:5:1635:5 | Vec2 | -| main.rs:2011:18:2011:21 | SelfParam | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2011:24:2011:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2014:25:2016:5 | { ... } | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2015:9:2015:10 | S1 | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2018:41:2020:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2018:41:2020:5 | { ... } | dyn(Output) | main.rs:2008:5:2008:14 | S1 | -| main.rs:2019:9:2019:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2019:9:2019:20 | { ... } | dyn(Output) | main.rs:2008:5:2008:14 | S1 | -| main.rs:2019:17:2019:18 | S1 | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2022:41:2024:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2022:41:2024:5 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2023:9:2023:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2023:9:2023:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2032:13:2032:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | -| main.rs:2032:13:2032:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | -| main.rs:2032:13:2032:42 | SelfParam | Ptr.TRefMut | main.rs:2026:5:2026:14 | S2 | -| main.rs:2033:13:2033:15 | _cx | | {EXTERNAL LOCATION} | &mut | -| main.rs:2033:13:2033:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | -| main.rs:2034:44:2036:9 | { ... } | | {EXTERNAL LOCATION} | Poll | -| main.rs:2034:44:2036:9 | { ... } | T | main.rs:2008:5:2008:14 | S1 | -| main.rs:2035:13:2035:38 | ...::Ready(...) | | {EXTERNAL LOCATION} | Poll | -| main.rs:2035:13:2035:38 | ...::Ready(...) | T | main.rs:2008:5:2008:14 | S1 | -| main.rs:2035:36:2035:37 | S1 | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2039:41:2041:5 | { ... } | | main.rs:2026:5:2026:14 | S2 | -| main.rs:2040:9:2040:10 | S2 | | main.rs:2026:5:2026:14 | S2 | -| main.rs:2043:22:2051:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2044:9:2044:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2044:9:2044:12 | f1(...) | dyn(Output) | main.rs:2008:5:2008:14 | S1 | -| main.rs:2044:9:2044:18 | await ... | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2044:9:2044:22 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2045:9:2045:12 | f2(...) | | main.rs:2018:16:2018:39 | impl ... | -| main.rs:2045:9:2045:18 | await ... | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2045:9:2045:22 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2046:9:2046:12 | f3(...) | | main.rs:2022:16:2022:39 | impl ... | -| main.rs:2046:9:2046:18 | await ... | | {EXTERNAL LOCATION} | () | -| main.rs:2047:9:2047:12 | f4(...) | | main.rs:2039:16:2039:39 | impl ... | -| main.rs:2047:9:2047:18 | await ... | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2047:9:2047:22 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2048:9:2048:10 | S2 | | main.rs:2026:5:2026:14 | S2 | -| main.rs:2048:9:2048:16 | await S2 | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2048:9:2048:20 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2049:13:2049:13 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2049:13:2049:13 | b | dyn(Output) | main.rs:2008:5:2008:14 | S1 | -| main.rs:2049:17:2049:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2049:17:2049:28 | { ... } | dyn(Output) | main.rs:2008:5:2008:14 | S1 | -| main.rs:2049:25:2049:26 | S1 | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2050:9:2050:9 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2050:9:2050:9 | b | dyn(Output) | main.rs:2008:5:2008:14 | S1 | -| main.rs:2050:9:2050:15 | await b | | main.rs:2008:5:2008:14 | S1 | -| main.rs:2050:9:2050:19 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2061:15:2061:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2061:15:2061:19 | SelfParam | TRef | main.rs:2060:5:2062:5 | Self [trait Trait1] | -| main.rs:2061:22:2061:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2065:15:2065:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2065:15:2065:19 | SelfParam | TRef | main.rs:2064:5:2066:5 | Self [trait Trait2] | -| main.rs:2065:22:2065:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2069:15:2069:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2069:15:2069:19 | SelfParam | TRef | main.rs:2055:5:2056:14 | S1 | -| main.rs:2069:22:2069:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2073:15:2073:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2073:15:2073:19 | SelfParam | TRef | main.rs:2055:5:2056:14 | S1 | -| main.rs:2073:22:2073:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2076:37:2078:5 | { ... } | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2077:9:2077:10 | S1 | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2081:18:2081:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2081:18:2081:22 | SelfParam | TRef | main.rs:2080:5:2082:5 | Self [trait MyTrait] | -| main.rs:2085:18:2085:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2085:18:2085:22 | SelfParam | TRef | main.rs:2055:5:2056:14 | S1 | -| main.rs:2085:31:2087:9 | { ... } | | main.rs:2057:5:2057:14 | S2 | -| main.rs:2086:13:2086:14 | S2 | | main.rs:2057:5:2057:14 | S2 | -| main.rs:2091:18:2091:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2091:18:2091:22 | SelfParam | TRef | main.rs:2058:5:2058:22 | S3 | -| main.rs:2091:18:2091:22 | SelfParam | TRef.T3 | main.rs:2090:10:2090:17 | T | -| main.rs:2091:30:2094:9 | { ... } | | main.rs:2090:10:2090:17 | T | -| main.rs:2092:17:2092:21 | S3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:2092:17:2092:21 | S3(...) | | main.rs:2058:5:2058:22 | S3 | -| main.rs:2092:17:2092:21 | S3(...) | TRef | main.rs:2058:5:2058:22 | S3 | -| main.rs:2092:17:2092:21 | S3(...) | TRef.T3 | main.rs:2090:10:2090:17 | T | -| main.rs:2092:25:2092:28 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2092:25:2092:28 | self | TRef | main.rs:2058:5:2058:22 | S3 | -| main.rs:2092:25:2092:28 | self | TRef.T3 | main.rs:2090:10:2090:17 | T | -| main.rs:2093:13:2093:21 | t.clone() | | main.rs:2090:10:2090:17 | T | -| main.rs:2097:45:2099:5 | { ... } | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2098:9:2098:10 | S1 | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2101:41:2101:41 | t | | main.rs:2101:26:2101:38 | B | -| main.rs:2101:52:2103:5 | { ... } | | main.rs:2101:23:2101:23 | A | -| main.rs:2102:9:2102:9 | t | | main.rs:2101:26:2101:38 | B | -| main.rs:2102:9:2102:17 | t.get_a() | | main.rs:2101:23:2101:23 | A | -| main.rs:2105:34:2105:34 | x | | main.rs:2105:24:2105:31 | T | -| main.rs:2105:59:2107:5 | { ... } | | main.rs:2105:43:2105:57 | impl ... | -| main.rs:2105:59:2107:5 | { ... } | impl(T) | main.rs:2105:24:2105:31 | T | -| main.rs:2106:9:2106:13 | S3(...) | | main.rs:2058:5:2058:22 | S3 | -| main.rs:2106:9:2106:13 | S3(...) | | main.rs:2105:43:2105:57 | impl ... | -| main.rs:2106:9:2106:13 | S3(...) | T3 | main.rs:2105:24:2105:31 | T | -| main.rs:2106:9:2106:13 | S3(...) | impl(T) | main.rs:2105:24:2105:31 | T | -| main.rs:2106:12:2106:12 | x | | main.rs:2105:24:2105:31 | T | -| main.rs:2109:34:2109:34 | x | | main.rs:2109:24:2109:31 | T | -| main.rs:2109:67:2111:5 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2109:67:2111:5 | { ... } | T | main.rs:2109:50:2109:64 | impl ... | -| main.rs:2109:67:2111:5 | { ... } | T.impl(T) | main.rs:2109:24:2109:31 | T | -| main.rs:2110:9:2110:19 | Some(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2110:9:2110:19 | Some(...) | T | main.rs:2058:5:2058:22 | S3 | -| main.rs:2110:9:2110:19 | Some(...) | T | main.rs:2109:50:2109:64 | impl ... | -| main.rs:2110:9:2110:19 | Some(...) | T.T3 | main.rs:2109:24:2109:31 | T | -| main.rs:2110:9:2110:19 | Some(...) | T.impl(T) | main.rs:2109:24:2109:31 | T | -| main.rs:2110:14:2110:18 | S3(...) | | main.rs:2058:5:2058:22 | S3 | -| main.rs:2110:14:2110:18 | S3(...) | T3 | main.rs:2109:24:2109:31 | T | -| main.rs:2110:17:2110:17 | x | | main.rs:2109:24:2109:31 | T | -| main.rs:2113:34:2113:34 | x | | main.rs:2113:24:2113:31 | T | -| main.rs:2113:78:2115:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2113:78:2115:5 | { ... } | T0 | main.rs:2113:44:2113:58 | impl ... | -| main.rs:2113:78:2115:5 | { ... } | T0.impl(T) | main.rs:2113:24:2113:31 | T | -| main.rs:2113:78:2115:5 | { ... } | T1 | main.rs:2113:61:2113:75 | impl ... | -| main.rs:2113:78:2115:5 | { ... } | T1.impl(T) | main.rs:2113:24:2113:31 | T | -| main.rs:2114:9:2114:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2114:9:2114:30 | TupleExpr | T0 | main.rs:2058:5:2058:22 | S3 | -| main.rs:2114:9:2114:30 | TupleExpr | T0 | main.rs:2113:44:2113:58 | impl ... | -| main.rs:2114:9:2114:30 | TupleExpr | T0.T3 | main.rs:2113:24:2113:31 | T | -| main.rs:2114:9:2114:30 | TupleExpr | T0.impl(T) | main.rs:2113:24:2113:31 | T | -| main.rs:2114:9:2114:30 | TupleExpr | T1 | main.rs:2058:5:2058:22 | S3 | -| main.rs:2114:9:2114:30 | TupleExpr | T1 | main.rs:2113:61:2113:75 | impl ... | -| main.rs:2114:9:2114:30 | TupleExpr | T1.T3 | main.rs:2113:24:2113:31 | T | -| main.rs:2114:9:2114:30 | TupleExpr | T1.impl(T) | main.rs:2113:24:2113:31 | T | -| main.rs:2114:10:2114:22 | S3(...) | | main.rs:2058:5:2058:22 | S3 | -| main.rs:2114:10:2114:22 | S3(...) | | main.rs:2113:44:2113:58 | impl ... | -| main.rs:2114:10:2114:22 | S3(...) | T3 | main.rs:2113:24:2113:31 | T | -| main.rs:2114:10:2114:22 | S3(...) | impl(T) | main.rs:2113:24:2113:31 | T | -| main.rs:2114:13:2114:13 | x | | main.rs:2113:24:2113:31 | T | -| main.rs:2114:13:2114:21 | x.clone() | | main.rs:2113:24:2113:31 | T | -| main.rs:2114:25:2114:29 | S3(...) | | main.rs:2058:5:2058:22 | S3 | -| main.rs:2114:25:2114:29 | S3(...) | | main.rs:2113:61:2113:75 | impl ... | -| main.rs:2114:25:2114:29 | S3(...) | T3 | main.rs:2113:24:2113:31 | T | -| main.rs:2114:25:2114:29 | S3(...) | impl(T) | main.rs:2113:24:2113:31 | T | -| main.rs:2114:28:2114:28 | x | | main.rs:2113:24:2113:31 | T | -| main.rs:2117:26:2117:26 | t | | main.rs:2117:29:2117:43 | impl ... | -| main.rs:2117:51:2119:5 | { ... } | | main.rs:2117:23:2117:23 | A | -| main.rs:2118:9:2118:9 | t | | main.rs:2117:29:2117:43 | impl ... | -| main.rs:2118:9:2118:17 | t.get_a() | | main.rs:2117:23:2117:23 | A | -| main.rs:2121:16:2135:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2122:13:2122:13 | x | | main.rs:2076:16:2076:35 | impl ... + ... | -| main.rs:2122:17:2122:20 | f1(...) | | main.rs:2076:16:2076:35 | impl ... + ... | -| main.rs:2123:9:2123:9 | x | | main.rs:2076:16:2076:35 | impl ... + ... | -| main.rs:2123:9:2123:14 | x.f1() | | {EXTERNAL LOCATION} | () | -| main.rs:2124:9:2124:9 | x | | main.rs:2076:16:2076:35 | impl ... + ... | -| main.rs:2124:9:2124:14 | x.f2() | | {EXTERNAL LOCATION} | () | -| main.rs:2125:13:2125:13 | a | | main.rs:2097:28:2097:43 | impl ... | -| main.rs:2125:17:2125:32 | get_a_my_trait(...) | | main.rs:2097:28:2097:43 | impl ... | -| main.rs:2126:13:2126:13 | b | | main.rs:2057:5:2057:14 | S2 | -| main.rs:2126:17:2126:33 | uses_my_trait1(...) | | main.rs:2057:5:2057:14 | S2 | -| main.rs:2126:32:2126:32 | a | | main.rs:2097:28:2097:43 | impl ... | -| main.rs:2127:13:2127:13 | a | | main.rs:2097:28:2097:43 | impl ... | -| main.rs:2127:17:2127:32 | get_a_my_trait(...) | | main.rs:2097:28:2097:43 | impl ... | -| main.rs:2128:13:2128:13 | c | | main.rs:2057:5:2057:14 | S2 | -| main.rs:2128:17:2128:33 | uses_my_trait2(...) | | main.rs:2057:5:2057:14 | S2 | -| main.rs:2128:32:2128:32 | a | | main.rs:2097:28:2097:43 | impl ... | -| main.rs:2129:13:2129:13 | d | | main.rs:2057:5:2057:14 | S2 | -| main.rs:2129:17:2129:34 | uses_my_trait2(...) | | main.rs:2057:5:2057:14 | S2 | -| main.rs:2129:32:2129:33 | S1 | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2130:13:2130:13 | e | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2130:17:2130:35 | get_a_my_trait2(...) | | main.rs:2105:43:2105:57 | impl ... | -| main.rs:2130:17:2130:35 | get_a_my_trait2(...) | impl(T) | main.rs:2055:5:2056:14 | S1 | -| main.rs:2130:17:2130:43 | ... .get_a() | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2130:33:2130:34 | S1 | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2133:13:2133:13 | f | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2133:17:2133:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2133:17:2133:35 | get_a_my_trait3(...) | T | main.rs:2109:50:2109:64 | impl ... | -| main.rs:2133:17:2133:35 | get_a_my_trait3(...) | T.impl(T) | main.rs:2055:5:2056:14 | S1 | -| main.rs:2133:17:2133:44 | ... .unwrap() | | main.rs:2109:50:2109:64 | impl ... | -| main.rs:2133:17:2133:44 | ... .unwrap() | impl(T) | main.rs:2055:5:2056:14 | S1 | -| main.rs:2133:17:2133:52 | ... .get_a() | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2133:33:2133:34 | S1 | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2134:13:2134:13 | g | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2134:17:2134:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2134:17:2134:35 | get_a_my_trait4(...) | T0 | main.rs:2113:44:2113:58 | impl ... | -| main.rs:2134:17:2134:35 | get_a_my_trait4(...) | T0.impl(T) | main.rs:2055:5:2056:14 | S1 | -| main.rs:2134:17:2134:35 | get_a_my_trait4(...) | T1 | main.rs:2113:61:2113:75 | impl ... | -| main.rs:2134:17:2134:35 | get_a_my_trait4(...) | T1.impl(T) | main.rs:2055:5:2056:14 | S1 | -| main.rs:2134:17:2134:37 | ... .0 | | main.rs:2113:44:2113:58 | impl ... | -| main.rs:2134:17:2134:37 | ... .0 | impl(T) | main.rs:2055:5:2056:14 | S1 | -| main.rs:2134:17:2134:45 | ... .get_a() | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2134:33:2134:34 | S1 | | main.rs:2055:5:2056:14 | S1 | -| main.rs:2145:16:2145:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2145:16:2145:20 | SelfParam | TRef | main.rs:2141:5:2142:13 | S | -| main.rs:2145:31:2147:9 | { ... } | | main.rs:2141:5:2142:13 | S | -| main.rs:2146:13:2146:13 | S | | main.rs:2141:5:2142:13 | S | -| main.rs:2156:26:2158:9 | { ... } | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2156:26:2158:9 | { ... } | T | main.rs:2155:10:2155:10 | T | -| main.rs:2157:13:2157:38 | MyVec {...} | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2157:13:2157:38 | MyVec {...} | T | main.rs:2155:10:2155:10 | T | -| main.rs:2157:27:2157:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2157:27:2157:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2157:27:2157:36 | ...::new(...) | T | main.rs:2155:10:2155:10 | T | -| main.rs:2160:17:2160:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:2160:17:2160:25 | SelfParam | TRefMut | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2160:17:2160:25 | SelfParam | TRefMut.T | main.rs:2155:10:2155:10 | T | -| main.rs:2160:28:2160:32 | value | | main.rs:2155:10:2155:10 | T | -| main.rs:2160:38:2162:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2161:13:2161:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:2161:13:2161:16 | self | TRefMut | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2161:13:2161:16 | self | TRefMut.T | main.rs:2155:10:2155:10 | T | -| main.rs:2161:13:2161:21 | self.data | | {EXTERNAL LOCATION} | Vec | -| main.rs:2161:13:2161:21 | self.data | A | {EXTERNAL LOCATION} | Global | -| main.rs:2161:13:2161:21 | self.data | T | main.rs:2155:10:2155:10 | T | -| main.rs:2161:13:2161:33 | ... .push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2161:28:2161:32 | value | | main.rs:2155:10:2155:10 | T | -| main.rs:2169:18:2169:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2169:18:2169:22 | SelfParam | TRef | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2169:18:2169:22 | SelfParam | TRef.T | main.rs:2165:10:2165:10 | T | -| main.rs:2169:25:2169:29 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2169:56:2171:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2169:56:2171:9 | { ... } | TRef | main.rs:2165:10:2165:10 | T | -| main.rs:2170:13:2170:29 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2170:13:2170:29 | &... | TRef | main.rs:2165:10:2165:10 | T | -| main.rs:2170:14:2170:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2170:14:2170:17 | self | TRef | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2170:14:2170:17 | self | TRef.T | main.rs:2165:10:2165:10 | T | -| main.rs:2170:14:2170:22 | self.data | | {EXTERNAL LOCATION} | Vec | -| main.rs:2170:14:2170:22 | self.data | A | {EXTERNAL LOCATION} | Global | -| main.rs:2170:14:2170:22 | self.data | T | main.rs:2165:10:2165:10 | T | -| main.rs:2170:14:2170:29 | ...[index] | | main.rs:2165:10:2165:10 | T | -| main.rs:2170:24:2170:28 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2174:22:2174:26 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2174:22:2174:26 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2174:22:2174:26 | slice | TRef.TSlice | main.rs:2141:5:2142:13 | S | -| main.rs:2174:35:2176:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2175:13:2175:13 | x | | main.rs:2141:5:2142:13 | S | -| main.rs:2175:17:2175:21 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2175:17:2175:21 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2175:17:2175:21 | slice | TRef.TSlice | main.rs:2141:5:2142:13 | S | -| main.rs:2175:17:2175:24 | slice[0] | | main.rs:2141:5:2142:13 | S | -| main.rs:2175:17:2175:30 | ... .foo() | | main.rs:2141:5:2142:13 | S | -| main.rs:2175:23:2175:23 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2178:37:2178:37 | a | | main.rs:2178:20:2178:34 | T | -| main.rs:2178:43:2178:43 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2182:9:2182:9 | a | | main.rs:2178:20:2178:34 | T | -| main.rs:2182:11:2182:11 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2185:16:2196:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2186:17:2186:19 | vec | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2186:17:2186:19 | vec | T | main.rs:2141:5:2142:13 | S | -| main.rs:2186:23:2186:34 | ...::new(...) | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2186:23:2186:34 | ...::new(...) | T | main.rs:2141:5:2142:13 | S | -| main.rs:2187:9:2187:11 | vec | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2187:9:2187:11 | vec | T | main.rs:2141:5:2142:13 | S | -| main.rs:2187:9:2187:19 | vec.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2187:18:2187:18 | S | | main.rs:2141:5:2142:13 | S | -| main.rs:2188:9:2188:11 | vec | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2188:9:2188:11 | vec | T | main.rs:2141:5:2142:13 | S | -| main.rs:2188:9:2188:14 | vec[0] | | main.rs:2141:5:2142:13 | S | -| main.rs:2188:9:2188:20 | ... .foo() | | main.rs:2141:5:2142:13 | S | -| main.rs:2188:13:2188:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2190:13:2190:14 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2190:13:2190:14 | xs | TArray | main.rs:2141:5:2142:13 | S | -| main.rs:2190:21:2190:21 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2190:26:2190:28 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2190:26:2190:28 | [...] | TArray | main.rs:2141:5:2142:13 | S | -| main.rs:2190:27:2190:27 | S | | main.rs:2141:5:2142:13 | S | -| main.rs:2191:13:2191:13 | x | | main.rs:2141:5:2142:13 | S | -| main.rs:2191:17:2191:18 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2191:17:2191:18 | xs | TArray | main.rs:2141:5:2142:13 | S | -| main.rs:2191:17:2191:21 | xs[0] | | main.rs:2141:5:2142:13 | S | -| main.rs:2191:17:2191:27 | ... .foo() | | main.rs:2141:5:2142:13 | S | -| main.rs:2191:20:2191:20 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2193:29:2193:31 | vec | | main.rs:2150:5:2153:5 | MyVec | -| main.rs:2193:29:2193:31 | vec | T | main.rs:2141:5:2142:13 | S | -| main.rs:2193:34:2193:34 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2195:9:2195:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2195:23:2195:25 | &xs | | {EXTERNAL LOCATION} | & | -| main.rs:2195:23:2195:25 | &xs | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2195:23:2195:25 | &xs | TRef.TArray | main.rs:2141:5:2142:13 | S | -| main.rs:2195:24:2195:25 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2195:24:2195:25 | xs | TArray | main.rs:2141:5:2142:13 | S | -| main.rs:2200:16:2202:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2201:13:2201:13 | x | | {EXTERNAL LOCATION} | String | -| main.rs:2201:17:2201:46 | MacroExpr | | {EXTERNAL LOCATION} | String | -| main.rs:2201:25:2201:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | -| main.rs:2201:25:2201:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2201:25:2201:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2201:25:2201:45 | ...::must_use(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2201:25:2201:45 | { ... } | | {EXTERNAL LOCATION} | String | -| main.rs:2201:38:2201:45 | "World!" | | {EXTERNAL LOCATION} | & | -| main.rs:2201:38:2201:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2210:19:2210:22 | SelfParam | | main.rs:2206:5:2211:5 | Self [trait MyAdd] | -| main.rs:2210:25:2210:27 | rhs | | main.rs:2206:17:2206:26 | Rhs | -| main.rs:2217:19:2217:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2217:25:2217:29 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2217:45:2219:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2218:13:2218:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2226:19:2226:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2226:25:2226:29 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2226:25:2226:29 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2226:46:2228:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2227:13:2227:18 | * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:2227:14:2227:18 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2227:14:2227:18 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2235:19:2235:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2235:25:2235:29 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2235:46:2241:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2236:13:2240:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| main.rs:2236:13:2240:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | -| main.rs:2236:16:2236:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2236:22:2238:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2236:22:2238:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:17:2237:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2237:17:2237:17 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2238:20:2240:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2238:20:2240:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2239:17:2239:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2239:17:2239:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2250:19:2250:22 | SelfParam | | main.rs:2244:5:2244:19 | S | -| main.rs:2250:19:2250:22 | SelfParam | T | main.rs:2246:10:2246:17 | T | -| main.rs:2250:25:2250:29 | other | | main.rs:2244:5:2244:19 | S | -| main.rs:2250:25:2250:29 | other | T | main.rs:2246:10:2246:17 | T | -| main.rs:2250:54:2252:9 | { ... } | | main.rs:2244:5:2244:19 | S | -| main.rs:2251:13:2251:39 | S(...) | | main.rs:2244:5:2244:19 | S | -| main.rs:2251:15:2251:22 | (...) | | main.rs:2246:10:2246:17 | T | -| main.rs:2251:16:2251:19 | self | | main.rs:2244:5:2244:19 | S | -| main.rs:2251:16:2251:19 | self | T | main.rs:2246:10:2246:17 | T | -| main.rs:2251:16:2251:21 | self.0 | | main.rs:2246:10:2246:17 | T | -| main.rs:2251:31:2251:35 | other | | main.rs:2244:5:2244:19 | S | -| main.rs:2251:31:2251:35 | other | T | main.rs:2246:10:2246:17 | T | -| main.rs:2251:31:2251:37 | other.0 | | main.rs:2246:10:2246:17 | T | -| main.rs:2259:19:2259:22 | SelfParam | | main.rs:2244:5:2244:19 | S | -| main.rs:2259:19:2259:22 | SelfParam | T | main.rs:2255:10:2255:17 | T | -| main.rs:2259:25:2259:29 | other | | main.rs:2255:10:2255:17 | T | -| main.rs:2259:51:2261:9 | { ... } | | main.rs:2244:5:2244:19 | S | -| main.rs:2260:13:2260:37 | S(...) | | main.rs:2244:5:2244:19 | S | -| main.rs:2260:15:2260:22 | (...) | | main.rs:2255:10:2255:17 | T | -| main.rs:2260:16:2260:19 | self | | main.rs:2244:5:2244:19 | S | -| main.rs:2260:16:2260:19 | self | T | main.rs:2255:10:2255:17 | T | -| main.rs:2260:16:2260:21 | self.0 | | main.rs:2255:10:2255:17 | T | -| main.rs:2260:31:2260:35 | other | | main.rs:2255:10:2255:17 | T | -| main.rs:2271:19:2271:22 | SelfParam | | main.rs:2244:5:2244:19 | S | -| main.rs:2271:19:2271:22 | SelfParam | T | main.rs:2264:14:2264:14 | T | -| main.rs:2271:25:2271:29 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2271:25:2271:29 | other | TRef | main.rs:2264:14:2264:14 | T | -| main.rs:2271:55:2273:9 | { ... } | | main.rs:2244:5:2244:19 | S | -| main.rs:2272:13:2272:37 | S(...) | | main.rs:2244:5:2244:19 | S | -| main.rs:2272:15:2272:22 | (...) | | main.rs:2264:14:2264:14 | T | -| main.rs:2272:16:2272:19 | self | | main.rs:2244:5:2244:19 | S | -| main.rs:2272:16:2272:19 | self | T | main.rs:2264:14:2264:14 | T | -| main.rs:2272:16:2272:21 | self.0 | | main.rs:2264:14:2264:14 | T | -| main.rs:2272:31:2272:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2272:31:2272:35 | other | TRef | main.rs:2264:14:2264:14 | T | -| main.rs:2278:20:2278:24 | value | | main.rs:2276:18:2276:18 | T | -| main.rs:2283:20:2283:24 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2283:40:2285:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2284:13:2284:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2290:20:2290:24 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2290:41:2296:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2291:13:2295:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| main.rs:2291:13:2295:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | -| main.rs:2291:16:2291:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2291:22:2293:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2291:22:2293:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2292:17:2292:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2292:17:2292:17 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2293:20:2295:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2293:20:2295:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2294:17:2294:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2294:17:2294:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2301:21:2301:25 | value | | main.rs:2299:19:2299:19 | T | -| main.rs:2301:31:2301:31 | x | | main.rs:2299:5:2302:5 | Self [trait MyFrom2] | -| main.rs:2306:21:2306:25 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2306:33:2306:33 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2306:48:2308:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2307:13:2307:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2313:21:2313:25 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2313:34:2313:34 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2313:49:2319:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2314:13:2318:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| main.rs:2314:16:2314:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2314:22:2316:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2315:17:2315:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2316:20:2318:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2317:17:2317:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2324:15:2324:15 | x | | main.rs:2322:5:2328:5 | Self [trait MySelfTrait] | -| main.rs:2327:15:2327:15 | x | | main.rs:2322:5:2328:5 | Self [trait MySelfTrait] | -| main.rs:2332:15:2332:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2332:31:2334:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2333:13:2333:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2333:13:2333:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:2333:17:2333:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2337:15:2337:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2337:32:2339:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2338:13:2338:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2338:13:2338:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:2338:17:2338:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2344:15:2344:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2344:31:2346:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2345:13:2345:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2345:13:2345:13 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2349:15:2349:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2349:32:2351:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:2350:13:2350:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2354:16:2379:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2355:13:2355:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2355:22:2355:23 | 73 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2355:22:2355:23 | 73 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2356:9:2356:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2356:9:2356:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2356:18:2356:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2357:9:2357:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2357:9:2357:23 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2357:18:2357:22 | &5i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2357:18:2357:22 | &5i64 | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2357:19:2357:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2358:9:2358:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2358:9:2358:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2358:18:2358:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2360:9:2360:15 | S(...) | | main.rs:2244:5:2244:19 | S | -| main.rs:2360:9:2360:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2360:9:2360:31 | ... .my_add(...) | | main.rs:2244:5:2244:19 | S | -| main.rs:2360:11:2360:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2360:24:2360:30 | S(...) | | main.rs:2244:5:2244:19 | S | -| main.rs:2360:24:2360:30 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2360:26:2360:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2361:9:2361:15 | S(...) | | main.rs:2244:5:2244:19 | S | -| main.rs:2361:9:2361:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2361:11:2361:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2361:24:2361:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2362:9:2362:15 | S(...) | | main.rs:2244:5:2244:19 | S | -| main.rs:2362:9:2362:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2362:9:2362:29 | ... .my_add(...) | | main.rs:2244:5:2244:19 | S | -| main.rs:2362:11:2362:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2362:24:2362:28 | &3i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2362:24:2362:28 | &3i64 | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2362:25:2362:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2364:13:2364:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2364:17:2364:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2364:30:2364:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2365:13:2365:13 | y | | {EXTERNAL LOCATION} | i64 | -| main.rs:2365:17:2365:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2365:30:2365:33 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2366:13:2366:13 | z | | {EXTERNAL LOCATION} | i64 | -| main.rs:2366:22:2366:43 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2366:38:2366:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:9:2367:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2367:23:2367:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:30:2367:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:9:2368:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2368:23:2368:26 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2368:29:2368:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:9:2369:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2369:27:2369:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:34:2369:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2371:9:2371:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2371:17:2371:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:9:2372:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:17:2372:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:9:2373:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:18:2373:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2374:9:2374:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2374:18:2374:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2375:9:2375:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:25:2375:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:9:2376:30 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:25:2376:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2377:9:2377:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2377:25:2377:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2378:9:2378:29 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2378:25:2378:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2386:26:2388:9 | { ... } | | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2387:13:2387:25 | MyCallable {...} | | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2390:17:2390:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2390:17:2390:21 | SelfParam | TRef | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2390:31:2392:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2391:13:2391:13 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2391:13:2391:13 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2395:16:2502:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2398:9:2398:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2398:13:2398:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2398:18:2398:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2398:18:2398:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2398:19:2398:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2398:22:2398:22 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2398:25:2398:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2398:28:2398:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2399:9:2399:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2399:18:2399:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2399:18:2399:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2399:18:2399:41 | ... .map(...) | | {EXTERNAL LOCATION} | [;] | -| main.rs:2399:19:2399:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2399:22:2399:22 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2399:25:2399:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2399:32:2399:40 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | -| main.rs:2399:32:2399:40 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| main.rs:2399:40:2399:40 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2399:43:2399:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2400:9:2400:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2400:13:2400:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2400:18:2400:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2400:18:2400:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2400:18:2400:38 | ... .into_iter() | | {EXTERNAL LOCATION} | IntoIter | -| main.rs:2400:18:2400:38 | ... .into_iter() | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2400:19:2400:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2400:22:2400:22 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2400:25:2400:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2400:40:2400:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2402:13:2402:17 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2402:13:2402:17 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2402:13:2402:17 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | -| main.rs:2402:21:2402:31 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2402:21:2402:31 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2402:21:2402:31 | [...] | TArray | {EXTERNAL LOCATION} | u8 | -| main.rs:2402:22:2402:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2402:27:2402:27 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2402:27:2402:27 | 2 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2402:30:2402:30 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2402:30:2402:30 | 3 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2403:9:2403:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2403:13:2403:13 | u | | {EXTERNAL LOCATION} | i32 | -| main.rs:2403:13:2403:13 | u | | {EXTERNAL LOCATION} | u8 | -| main.rs:2403:18:2403:22 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2403:18:2403:22 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2403:18:2403:22 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | -| main.rs:2403:24:2403:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2405:13:2405:17 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2405:13:2405:17 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2405:21:2405:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2405:21:2405:29 | [1u16; 3] | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2405:22:2405:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2405:28:2405:28 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2406:9:2406:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2406:13:2406:13 | u | | {EXTERNAL LOCATION} | u16 | -| main.rs:2406:18:2406:22 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2406:18:2406:22 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2406:24:2406:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2408:13:2408:17 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2408:13:2408:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2408:26:2408:26 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2408:31:2408:39 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2408:31:2408:39 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2408:31:2408:39 | [...] | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2408:32:2408:32 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2408:32:2408:32 | 1 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2408:35:2408:35 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2408:35:2408:35 | 2 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2408:38:2408:38 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2408:38:2408:38 | 3 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2409:9:2409:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2409:13:2409:13 | u | | {EXTERNAL LOCATION} | u32 | -| main.rs:2409:18:2409:22 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2409:18:2409:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2409:24:2409:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2411:13:2411:17 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2411:13:2411:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2411:26:2411:26 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:31:2411:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2411:31:2411:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:31:2411:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2411:32:2411:32 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:32:2411:32 | 1 | | {EXTERNAL LOCATION} | u64 | -| main.rs:2411:35:2411:35 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2412:9:2412:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2412:13:2412:13 | u | | {EXTERNAL LOCATION} | u64 | -| main.rs:2412:18:2412:22 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2412:18:2412:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2412:24:2412:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2414:17:2414:24 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2414:17:2414:24 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2414:17:2414:24 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2414:28:2414:48 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2414:28:2414:48 | [...] | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2414:28:2414:48 | [...] | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2414:29:2414:33 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2414:29:2414:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2414:36:2414:40 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2414:36:2414:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2414:43:2414:47 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2414:43:2414:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2415:9:2415:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2415:13:2415:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:2415:13:2415:13 | s | TRef | {EXTERNAL LOCATION} | & | -| main.rs:2415:13:2415:13 | s | TRef.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2415:18:2415:26 | &strings1 | | {EXTERNAL LOCATION} | & | -| main.rs:2415:18:2415:26 | &strings1 | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2415:18:2415:26 | &strings1 | TRef.TArray | {EXTERNAL LOCATION} | & | -| main.rs:2415:18:2415:26 | &strings1 | TRef.TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2415:19:2415:26 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2415:19:2415:26 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2415:19:2415:26 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2415:28:2415:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2416:9:2416:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2416:13:2416:13 | s | | {EXTERNAL LOCATION} | &mut | -| main.rs:2416:13:2416:13 | s | TRefMut | {EXTERNAL LOCATION} | & | -| main.rs:2416:13:2416:13 | s | TRefMut.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2416:18:2416:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | -| main.rs:2416:18:2416:30 | &mut strings1 | TRefMut | {EXTERNAL LOCATION} | [;] | -| main.rs:2416:18:2416:30 | &mut strings1 | TRefMut.TArray | {EXTERNAL LOCATION} | & | -| main.rs:2416:18:2416:30 | &mut strings1 | TRefMut.TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2416:23:2416:30 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2416:23:2416:30 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2416:23:2416:30 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2416:32:2416:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2417:9:2417:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2417:13:2417:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:2417:13:2417:13 | s | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2417:18:2417:25 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2417:18:2417:25 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2417:18:2417:25 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2417:27:2417:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2419:13:2419:20 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2419:13:2419:20 | strings2 | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2420:9:2424:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2420:9:2424:9 | [...] | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2421:13:2421:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2421:26:2421:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2421:26:2421:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2422:13:2422:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2422:26:2422:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2422:26:2422:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2423:13:2423:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2423:26:2423:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2423:26:2423:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:9:2425:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2425:13:2425:13 | s | | {EXTERNAL LOCATION} | String | -| main.rs:2425:18:2425:25 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2425:18:2425:25 | strings2 | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2425:27:2425:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2427:13:2427:20 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2427:13:2427:20 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2427:13:2427:20 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | -| main.rs:2428:9:2432:9 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2428:9:2432:9 | &... | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2428:9:2432:9 | &... | TRef.TArray | {EXTERNAL LOCATION} | String | -| main.rs:2428:10:2432:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2428:10:2432:9 | [...] | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2429:13:2429:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2429:26:2429:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2429:26:2429:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2430:13:2430:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2430:26:2430:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2430:26:2430:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2431:13:2431:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2431:26:2431:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2431:26:2431:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2433:9:2433:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2433:13:2433:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:2433:13:2433:13 | s | TRef | {EXTERNAL LOCATION} | String | -| main.rs:2433:18:2433:25 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2433:18:2433:25 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2433:18:2433:25 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | -| main.rs:2433:27:2433:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2435:13:2435:21 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2435:13:2435:21 | callables | TArray | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2435:25:2435:81 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2435:25:2435:81 | [...] | TArray | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2435:26:2435:42 | ...::new(...) | | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2435:45:2435:61 | ...::new(...) | | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2435:64:2435:80 | ...::new(...) | | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2436:9:2440:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2436:13:2436:13 | c | | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2437:12:2437:20 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2437:12:2437:20 | callables | TArray | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2438:9:2440:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2439:17:2439:22 | result | | {EXTERNAL LOCATION} | i64 | -| main.rs:2439:26:2439:26 | c | | main.rs:2383:5:2383:24 | MyCallable | -| main.rs:2439:26:2439:33 | c.call() | | {EXTERNAL LOCATION} | i64 | -| main.rs:2444:9:2444:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2444:13:2444:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2444:18:2444:18 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2444:18:2444:22 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2444:18:2444:22 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2444:21:2444:22 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2444:24:2444:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2445:9:2445:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2445:13:2445:13 | u | | {EXTERNAL LOCATION} | Range | -| main.rs:2445:13:2445:13 | u | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2445:13:2445:13 | u | Idx | {EXTERNAL LOCATION} | u8 | -| main.rs:2445:18:2445:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2445:18:2445:26 | [...] | TArray | {EXTERNAL LOCATION} | Range | -| main.rs:2445:18:2445:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2445:18:2445:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | u8 | -| main.rs:2445:19:2445:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2445:19:2445:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2445:19:2445:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2445:19:2445:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | u8 | -| main.rs:2445:24:2445:25 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2445:24:2445:25 | 10 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2445:28:2445:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2446:13:2446:17 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2446:13:2446:17 | range | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2446:21:2446:21 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2446:21:2446:25 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2446:21:2446:25 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2446:24:2446:25 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2447:9:2447:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2447:13:2447:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2447:18:2447:22 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2447:18:2447:22 | range | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2447:24:2447:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2448:13:2448:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2448:26:2448:27 | .. | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2449:9:2449:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2449:18:2449:48 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2449:19:2449:36 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2449:19:2449:36 | [...] | TArray | {EXTERNAL LOCATION} | i64 | -| main.rs:2449:20:2449:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2449:26:2449:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2449:32:2449:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2449:38:2449:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2449:50:2449:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2451:13:2451:18 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2451:13:2451:18 | range1 | Idx | {EXTERNAL LOCATION} | u16 | -| main.rs:2452:9:2455:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | -| main.rs:2452:9:2455:9 | ...::Range {...} | Idx | {EXTERNAL LOCATION} | u16 | -| main.rs:2453:20:2453:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2454:18:2454:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2456:9:2456:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2456:13:2456:13 | u | | {EXTERNAL LOCATION} | u16 | -| main.rs:2456:18:2456:23 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2456:18:2456:23 | range1 | Idx | {EXTERNAL LOCATION} | u16 | -| main.rs:2456:25:2456:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2460:13:2460:17 | vals3 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2460:21:2460:33 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2460:26:2460:26 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2460:29:2460:29 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2460:32:2460:32 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2461:9:2461:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2461:18:2461:22 | vals3 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2461:24:2461:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2463:13:2463:18 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2463:13:2463:18 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2463:13:2463:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2463:32:2463:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2463:32:2463:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2463:32:2463:43 | [...] | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2463:32:2463:52 | ... .to_vec() | | {EXTERNAL LOCATION} | Vec | -| main.rs:2463:32:2463:52 | ... .to_vec() | A | {EXTERNAL LOCATION} | Global | -| main.rs:2463:32:2463:52 | ... .to_vec() | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2463:33:2463:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2463:39:2463:39 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2463:42:2463:42 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2464:9:2464:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2464:13:2464:13 | u | | {EXTERNAL LOCATION} | u16 | -| main.rs:2464:18:2464:23 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2464:18:2464:23 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2464:18:2464:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2464:25:2464:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2466:22:2466:33 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2466:22:2466:33 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2466:22:2466:33 | [...] | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2466:23:2466:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2466:29:2466:29 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2466:32:2466:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1862:22:1862:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1862:22:1862:28 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1862:33:1862:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1862:33:1862:36 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1862:33:1862:38 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1862:33:1862:48 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1862:42:1862:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1862:42:1862:46 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1862:42:1862:48 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1865:15:1865:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1865:15:1865:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1865:22:1865:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1865:22:1865:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1865:44:1867:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1866:13:1866:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1866:13:1866:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1866:13:1866:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1866:13:1866:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1866:13:1866:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1866:23:1866:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1866:23:1866:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1866:23:1866:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1866:34:1866:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1866:34:1866:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1866:34:1866:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1866:34:1866:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1866:44:1866:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1866:44:1866:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1866:44:1866:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1869:15:1869:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1869:15:1869:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1869:22:1869:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1869:22:1869:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1869:44:1871:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1870:13:1870:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1870:13:1870:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1870:13:1870:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1870:13:1870:28 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1870:13:1870:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1870:22:1870:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1870:22:1870:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1870:22:1870:28 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1870:33:1870:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1870:33:1870:36 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1870:33:1870:38 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1870:33:1870:48 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1870:42:1870:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1870:42:1870:46 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1870:42:1870:48 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1873:15:1873:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1873:15:1873:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1873:22:1873:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1873:22:1873:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1873:44:1875:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1874:13:1874:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1874:13:1874:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1874:13:1874:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1874:13:1874:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1874:13:1874:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1874:23:1874:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1874:23:1874:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1874:23:1874:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1874:34:1874:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1874:34:1874:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1874:34:1874:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1874:34:1874:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1874:44:1874:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1874:44:1874:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1874:44:1874:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1878:26:1878:26 | a | | main.rs:1878:18:1878:23 | T | +| main.rs:1878:32:1878:32 | b | | main.rs:1878:18:1878:23 | T | +| main.rs:1879:9:1879:9 | a | | main.rs:1878:18:1878:23 | T | +| main.rs:1879:13:1879:13 | b | | main.rs:1878:18:1878:23 | T | +| main.rs:1882:16:2013:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1886:13:1886:18 | i64_eq | | {EXTERNAL LOCATION} | bool | +| main.rs:1886:22:1886:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1886:23:1886:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1886:23:1886:34 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1886:31:1886:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1887:13:1887:18 | i64_ne | | {EXTERNAL LOCATION} | bool | +| main.rs:1887:22:1887:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1887:23:1887:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1887:23:1887:34 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1887:31:1887:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1888:13:1888:18 | i64_lt | | {EXTERNAL LOCATION} | bool | +| main.rs:1888:22:1888:34 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1888:23:1888:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1888:23:1888:33 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1888:30:1888:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1889:13:1889:18 | i64_le | | {EXTERNAL LOCATION} | bool | +| main.rs:1889:22:1889:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1889:23:1889:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1889:23:1889:34 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1889:31:1889:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1890:13:1890:18 | i64_gt | | {EXTERNAL LOCATION} | bool | +| main.rs:1890:22:1890:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1890:23:1890:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1890:23:1890:34 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1890:30:1890:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1891:13:1891:18 | i64_ge | | {EXTERNAL LOCATION} | bool | +| main.rs:1891:22:1891:37 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1891:23:1891:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1891:23:1891:36 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1891:32:1891:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1894:13:1894:19 | i64_add | | {EXTERNAL LOCATION} | i64 | +| main.rs:1894:23:1894:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1894:23:1894:35 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1894:31:1894:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1895:13:1895:19 | i64_sub | | {EXTERNAL LOCATION} | i64 | +| main.rs:1895:23:1895:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1895:23:1895:35 | ... - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1895:31:1895:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1896:13:1896:19 | i64_mul | | {EXTERNAL LOCATION} | i64 | +| main.rs:1896:23:1896:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1896:23:1896:35 | ... * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1896:31:1896:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1897:13:1897:19 | i64_div | | {EXTERNAL LOCATION} | i64 | +| main.rs:1897:23:1897:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1897:23:1897:35 | ... / ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1897:31:1897:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1898:13:1898:19 | i64_rem | | {EXTERNAL LOCATION} | i64 | +| main.rs:1898:23:1898:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1898:23:1898:35 | ... % ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1898:31:1898:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1899:39:1899:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1899:45:1899:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1902:17:1902:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1902:34:1902:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1903:9:1903:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1903:9:1903:31 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1903:27:1903:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1905:17:1905:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1905:34:1905:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1906:9:1906:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1906:9:1906:31 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1906:27:1906:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1908:17:1908:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1908:34:1908:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1909:9:1909:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1909:9:1909:31 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1909:27:1909:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1911:17:1911:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1911:34:1911:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1912:9:1912:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1912:9:1912:31 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1912:27:1912:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1914:17:1914:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1914:34:1914:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1915:9:1915:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1915:9:1915:31 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1915:27:1915:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1918:13:1918:22 | i64_bitand | | {EXTERNAL LOCATION} | i64 | +| main.rs:1918:26:1918:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1918:26:1918:38 | ... & ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1918:34:1918:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1919:13:1919:21 | i64_bitor | | {EXTERNAL LOCATION} | i64 | +| main.rs:1919:25:1919:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1919:25:1919:37 | ... \| ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1919:33:1919:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1920:13:1920:22 | i64_bitxor | | {EXTERNAL LOCATION} | i64 | +| main.rs:1920:26:1920:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1920:26:1920:38 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1920:34:1920:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1921:13:1921:19 | i64_shl | | {EXTERNAL LOCATION} | i64 | +| main.rs:1921:23:1921:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1921:23:1921:36 | ... << ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1921:32:1921:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1922:13:1922:19 | i64_shr | | {EXTERNAL LOCATION} | i64 | +| main.rs:1922:23:1922:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1922:23:1922:36 | ... >> ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1922:32:1922:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1925:17:1925:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1925:37:1925:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1926:9:1926:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1926:9:1926:34 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1926:30:1926:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1928:17:1928:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1928:36:1928:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1929:9:1929:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1929:9:1929:33 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1929:29:1929:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1931:17:1931:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1931:37:1931:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1932:9:1932:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1932:9:1932:34 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1932:30:1932:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1934:17:1934:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1934:34:1934:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1935:9:1935:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1935:9:1935:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1935:28:1935:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1937:17:1937:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1937:34:1937:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1938:9:1938:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1938:9:1938:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1938:28:1938:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1940:13:1940:19 | i64_neg | | {EXTERNAL LOCATION} | i64 | +| main.rs:1940:23:1940:28 | - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1940:24:1940:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1941:13:1941:19 | i64_not | | {EXTERNAL LOCATION} | i64 | +| main.rs:1941:23:1941:28 | ! ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1941:24:1941:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1944:13:1944:14 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1944:18:1944:36 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1944:28:1944:28 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1944:34:1944:34 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1945:13:1945:14 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1945:18:1945:36 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1945:28:1945:28 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1945:34:1945:34 | 4 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1948:13:1948:19 | vec2_eq | | {EXTERNAL LOCATION} | bool | +| main.rs:1948:23:1948:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1948:23:1948:30 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1948:29:1948:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1949:13:1949:19 | vec2_ne | | {EXTERNAL LOCATION} | bool | +| main.rs:1949:23:1949:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1949:23:1949:30 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1949:29:1949:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1950:13:1950:19 | vec2_lt | | {EXTERNAL LOCATION} | bool | +| main.rs:1950:23:1950:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1950:23:1950:29 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1950:28:1950:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1951:13:1951:19 | vec2_le | | {EXTERNAL LOCATION} | bool | +| main.rs:1951:23:1951:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1951:23:1951:30 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1951:29:1951:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1952:13:1952:19 | vec2_gt | | {EXTERNAL LOCATION} | bool | +| main.rs:1952:23:1952:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1952:23:1952:29 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1952:28:1952:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1953:13:1953:19 | vec2_ge | | {EXTERNAL LOCATION} | bool | +| main.rs:1953:23:1953:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1953:23:1953:30 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1953:29:1953:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1956:13:1956:20 | vec2_add | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1956:24:1956:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1956:24:1956:30 | ... + ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1956:29:1956:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1957:13:1957:20 | vec2_sub | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1957:24:1957:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1957:24:1957:30 | ... - ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1957:29:1957:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1958:13:1958:20 | vec2_mul | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1958:24:1958:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1958:24:1958:30 | ... * ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1958:29:1958:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1959:13:1959:20 | vec2_div | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1959:24:1959:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1959:24:1959:30 | ... / ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1959:29:1959:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1960:13:1960:20 | vec2_rem | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1960:24:1960:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1960:24:1960:30 | ... % ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1960:29:1960:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1963:17:1963:31 | vec2_add_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1963:35:1963:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1964:9:1964:23 | vec2_add_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1964:9:1964:29 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1964:28:1964:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1966:17:1966:31 | vec2_sub_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1966:35:1966:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1967:9:1967:23 | vec2_sub_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1967:9:1967:29 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1967:28:1967:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1969:17:1969:31 | vec2_mul_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1969:35:1969:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1970:9:1970:23 | vec2_mul_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1970:9:1970:29 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1970:28:1970:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1972:17:1972:31 | vec2_div_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1972:35:1972:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1973:9:1973:23 | vec2_div_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1973:9:1973:29 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1973:28:1973:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1975:17:1975:31 | vec2_rem_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1975:35:1975:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1976:9:1976:23 | vec2_rem_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1976:9:1976:29 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1976:28:1976:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1979:13:1979:23 | vec2_bitand | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1979:27:1979:28 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1979:27:1979:33 | ... & ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1979:32:1979:33 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1980:13:1980:22 | vec2_bitor | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1980:26:1980:27 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1980:26:1980:32 | ... \| ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1980:31:1980:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1981:13:1981:23 | vec2_bitxor | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1981:27:1981:28 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1981:27:1981:33 | ... ^ ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1981:32:1981:33 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1982:13:1982:20 | vec2_shl | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1982:24:1982:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1982:24:1982:33 | ... << ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1982:30:1982:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1983:13:1983:20 | vec2_shr | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1983:24:1983:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1983:24:1983:33 | ... >> ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1983:30:1983:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1986:17:1986:34 | vec2_bitand_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1986:38:1986:39 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1987:9:1987:26 | vec2_bitand_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1987:9:1987:32 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1987:31:1987:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1989:17:1989:33 | vec2_bitor_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1989:37:1989:38 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1990:9:1990:25 | vec2_bitor_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1990:9:1990:31 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1990:30:1990:31 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1992:17:1992:34 | vec2_bitxor_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1992:38:1992:39 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1993:9:1993:26 | vec2_bitxor_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1993:9:1993:32 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1993:31:1993:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1995:17:1995:31 | vec2_shl_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1995:35:1995:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1996:9:1996:23 | vec2_shl_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1996:9:1996:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1996:29:1996:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1998:17:1998:31 | vec2_shr_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1998:35:1998:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1999:9:1999:23 | vec2_shr_assign | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1999:9:1999:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1999:29:1999:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2002:13:2002:20 | vec2_neg | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2002:24:2002:26 | - ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2002:25:2002:26 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2003:13:2003:20 | vec2_not | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2003:24:2003:26 | ! ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2003:25:2003:26 | v1 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2006:13:2006:24 | default_vec2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2006:28:2006:45 | ...::default(...) | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2007:13:2007:26 | vec2_zero_plus | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2007:30:2007:48 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2007:30:2007:63 | ... + ... | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2007:40:2007:40 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2007:46:2007:46 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2007:52:2007:63 | default_vec2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2011:13:2011:24 | default_vec2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2011:28:2011:45 | ...::default(...) | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2012:13:2012:26 | vec2_zero_plus | | {EXTERNAL LOCATION} | bool | +| main.rs:2012:30:2012:48 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2012:30:2012:64 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:2012:40:2012:40 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2012:46:2012:46 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2012:53:2012:64 | default_vec2 | | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:2022:18:2022:21 | SelfParam | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2022:24:2022:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2025:25:2027:5 | { ... } | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2026:9:2026:10 | S1 | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2029:41:2031:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2029:41:2031:5 | { ... } | dyn(Output) | main.rs:2019:5:2019:14 | S1 | +| main.rs:2030:9:2030:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2030:9:2030:20 | { ... } | dyn(Output) | main.rs:2019:5:2019:14 | S1 | +| main.rs:2030:17:2030:18 | S1 | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2033:41:2035:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2033:41:2035:5 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2034:9:2034:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2034:9:2034:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2043:13:2043:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | +| main.rs:2043:13:2043:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | +| main.rs:2043:13:2043:42 | SelfParam | Ptr.TRefMut | main.rs:2037:5:2037:14 | S2 | +| main.rs:2044:13:2044:15 | _cx | | {EXTERNAL LOCATION} | &mut | +| main.rs:2044:13:2044:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | +| main.rs:2045:44:2047:9 | { ... } | | {EXTERNAL LOCATION} | Poll | +| main.rs:2045:44:2047:9 | { ... } | T | main.rs:2019:5:2019:14 | S1 | +| main.rs:2046:13:2046:38 | ...::Ready(...) | | {EXTERNAL LOCATION} | Poll | +| main.rs:2046:13:2046:38 | ...::Ready(...) | T | main.rs:2019:5:2019:14 | S1 | +| main.rs:2046:36:2046:37 | S1 | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2050:41:2052:5 | { ... } | | main.rs:2037:5:2037:14 | S2 | +| main.rs:2051:9:2051:10 | S2 | | main.rs:2037:5:2037:14 | S2 | +| main.rs:2054:22:2062:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2055:9:2055:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2055:9:2055:12 | f1(...) | dyn(Output) | main.rs:2019:5:2019:14 | S1 | +| main.rs:2055:9:2055:18 | await ... | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2055:9:2055:22 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:2056:9:2056:12 | f2(...) | | main.rs:2029:16:2029:39 | impl ... | +| main.rs:2056:9:2056:18 | await ... | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2056:9:2056:22 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:2057:9:2057:12 | f3(...) | | main.rs:2033:16:2033:39 | impl ... | +| main.rs:2057:9:2057:18 | await ... | | {EXTERNAL LOCATION} | () | +| main.rs:2058:9:2058:12 | f4(...) | | main.rs:2050:16:2050:39 | impl ... | +| main.rs:2058:9:2058:18 | await ... | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2058:9:2058:22 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:2059:9:2059:10 | S2 | | main.rs:2037:5:2037:14 | S2 | +| main.rs:2059:9:2059:16 | await S2 | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2059:9:2059:20 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:2060:13:2060:13 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2060:13:2060:13 | b | dyn(Output) | main.rs:2019:5:2019:14 | S1 | +| main.rs:2060:17:2060:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2060:17:2060:28 | { ... } | dyn(Output) | main.rs:2019:5:2019:14 | S1 | +| main.rs:2060:25:2060:26 | S1 | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2061:9:2061:9 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2061:9:2061:9 | b | dyn(Output) | main.rs:2019:5:2019:14 | S1 | +| main.rs:2061:9:2061:15 | await b | | main.rs:2019:5:2019:14 | S1 | +| main.rs:2061:9:2061:19 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:2072:15:2072:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2072:15:2072:19 | SelfParam | TRef | main.rs:2071:5:2073:5 | Self [trait Trait1] | +| main.rs:2072:22:2072:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2076:15:2076:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2076:15:2076:19 | SelfParam | TRef | main.rs:2075:5:2077:5 | Self [trait Trait2] | +| main.rs:2076:22:2076:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2080:15:2080:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2080:15:2080:19 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | +| main.rs:2080:22:2080:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2084:15:2084:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2084:15:2084:19 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | +| main.rs:2084:22:2084:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2087:37:2089:5 | { ... } | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2088:9:2088:10 | S1 | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2092:18:2092:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2092:18:2092:22 | SelfParam | TRef | main.rs:2091:5:2093:5 | Self [trait MyTrait] | +| main.rs:2096:18:2096:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2096:18:2096:22 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | +| main.rs:2096:31:2098:9 | { ... } | | main.rs:2068:5:2068:14 | S2 | +| main.rs:2097:13:2097:14 | S2 | | main.rs:2068:5:2068:14 | S2 | +| main.rs:2102:18:2102:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2102:18:2102:22 | SelfParam | TRef | main.rs:2069:5:2069:22 | S3 | +| main.rs:2102:18:2102:22 | SelfParam | TRef.T3 | main.rs:2101:10:2101:17 | T | +| main.rs:2102:30:2105:9 | { ... } | | main.rs:2101:10:2101:17 | T | +| main.rs:2103:17:2103:21 | S3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:2103:17:2103:21 | S3(...) | | main.rs:2069:5:2069:22 | S3 | +| main.rs:2103:17:2103:21 | S3(...) | TRef | main.rs:2069:5:2069:22 | S3 | +| main.rs:2103:17:2103:21 | S3(...) | TRef.T3 | main.rs:2101:10:2101:17 | T | +| main.rs:2103:25:2103:28 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2103:25:2103:28 | self | TRef | main.rs:2069:5:2069:22 | S3 | +| main.rs:2103:25:2103:28 | self | TRef.T3 | main.rs:2101:10:2101:17 | T | +| main.rs:2104:13:2104:21 | t.clone() | | main.rs:2101:10:2101:17 | T | +| main.rs:2108:45:2110:5 | { ... } | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2109:9:2109:10 | S1 | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2112:41:2112:41 | t | | main.rs:2112:26:2112:38 | B | +| main.rs:2112:52:2114:5 | { ... } | | main.rs:2112:23:2112:23 | A | +| main.rs:2113:9:2113:9 | t | | main.rs:2112:26:2112:38 | B | +| main.rs:2113:9:2113:17 | t.get_a() | | main.rs:2112:23:2112:23 | A | +| main.rs:2116:34:2116:34 | x | | main.rs:2116:24:2116:31 | T | +| main.rs:2116:59:2118:5 | { ... } | | main.rs:2116:43:2116:57 | impl ... | +| main.rs:2116:59:2118:5 | { ... } | impl(T) | main.rs:2116:24:2116:31 | T | +| main.rs:2117:9:2117:13 | S3(...) | | main.rs:2069:5:2069:22 | S3 | +| main.rs:2117:9:2117:13 | S3(...) | | main.rs:2116:43:2116:57 | impl ... | +| main.rs:2117:9:2117:13 | S3(...) | T3 | main.rs:2116:24:2116:31 | T | +| main.rs:2117:9:2117:13 | S3(...) | impl(T) | main.rs:2116:24:2116:31 | T | +| main.rs:2117:12:2117:12 | x | | main.rs:2116:24:2116:31 | T | +| main.rs:2120:34:2120:34 | x | | main.rs:2120:24:2120:31 | T | +| main.rs:2120:67:2122:5 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:2120:67:2122:5 | { ... } | T | main.rs:2120:50:2120:64 | impl ... | +| main.rs:2120:67:2122:5 | { ... } | T.impl(T) | main.rs:2120:24:2120:31 | T | +| main.rs:2121:9:2121:19 | Some(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2121:9:2121:19 | Some(...) | T | main.rs:2069:5:2069:22 | S3 | +| main.rs:2121:9:2121:19 | Some(...) | T | main.rs:2120:50:2120:64 | impl ... | +| main.rs:2121:9:2121:19 | Some(...) | T.T3 | main.rs:2120:24:2120:31 | T | +| main.rs:2121:9:2121:19 | Some(...) | T.impl(T) | main.rs:2120:24:2120:31 | T | +| main.rs:2121:14:2121:18 | S3(...) | | main.rs:2069:5:2069:22 | S3 | +| main.rs:2121:14:2121:18 | S3(...) | T3 | main.rs:2120:24:2120:31 | T | +| main.rs:2121:17:2121:17 | x | | main.rs:2120:24:2120:31 | T | +| main.rs:2124:34:2124:34 | x | | main.rs:2124:24:2124:31 | T | +| main.rs:2124:78:2126:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2124:78:2126:5 | { ... } | T0 | main.rs:2124:44:2124:58 | impl ... | +| main.rs:2124:78:2126:5 | { ... } | T0.impl(T) | main.rs:2124:24:2124:31 | T | +| main.rs:2124:78:2126:5 | { ... } | T1 | main.rs:2124:61:2124:75 | impl ... | +| main.rs:2124:78:2126:5 | { ... } | T1.impl(T) | main.rs:2124:24:2124:31 | T | +| main.rs:2125:9:2125:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2125:9:2125:30 | TupleExpr | T0 | main.rs:2069:5:2069:22 | S3 | +| main.rs:2125:9:2125:30 | TupleExpr | T0 | main.rs:2124:44:2124:58 | impl ... | +| main.rs:2125:9:2125:30 | TupleExpr | T0.T3 | main.rs:2124:24:2124:31 | T | +| main.rs:2125:9:2125:30 | TupleExpr | T0.impl(T) | main.rs:2124:24:2124:31 | T | +| main.rs:2125:9:2125:30 | TupleExpr | T1 | main.rs:2069:5:2069:22 | S3 | +| main.rs:2125:9:2125:30 | TupleExpr | T1 | main.rs:2124:61:2124:75 | impl ... | +| main.rs:2125:9:2125:30 | TupleExpr | T1.T3 | main.rs:2124:24:2124:31 | T | +| main.rs:2125:9:2125:30 | TupleExpr | T1.impl(T) | main.rs:2124:24:2124:31 | T | +| main.rs:2125:10:2125:22 | S3(...) | | main.rs:2069:5:2069:22 | S3 | +| main.rs:2125:10:2125:22 | S3(...) | | main.rs:2124:44:2124:58 | impl ... | +| main.rs:2125:10:2125:22 | S3(...) | T3 | main.rs:2124:24:2124:31 | T | +| main.rs:2125:10:2125:22 | S3(...) | impl(T) | main.rs:2124:24:2124:31 | T | +| main.rs:2125:13:2125:13 | x | | main.rs:2124:24:2124:31 | T | +| main.rs:2125:13:2125:21 | x.clone() | | main.rs:2124:24:2124:31 | T | +| main.rs:2125:25:2125:29 | S3(...) | | main.rs:2069:5:2069:22 | S3 | +| main.rs:2125:25:2125:29 | S3(...) | | main.rs:2124:61:2124:75 | impl ... | +| main.rs:2125:25:2125:29 | S3(...) | T3 | main.rs:2124:24:2124:31 | T | +| main.rs:2125:25:2125:29 | S3(...) | impl(T) | main.rs:2124:24:2124:31 | T | +| main.rs:2125:28:2125:28 | x | | main.rs:2124:24:2124:31 | T | +| main.rs:2128:26:2128:26 | t | | main.rs:2128:29:2128:43 | impl ... | +| main.rs:2128:51:2130:5 | { ... } | | main.rs:2128:23:2128:23 | A | +| main.rs:2129:9:2129:9 | t | | main.rs:2128:29:2128:43 | impl ... | +| main.rs:2129:9:2129:17 | t.get_a() | | main.rs:2128:23:2128:23 | A | +| main.rs:2132:16:2146:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2133:13:2133:13 | x | | main.rs:2087:16:2087:35 | impl ... + ... | +| main.rs:2133:17:2133:20 | f1(...) | | main.rs:2087:16:2087:35 | impl ... + ... | +| main.rs:2134:9:2134:9 | x | | main.rs:2087:16:2087:35 | impl ... + ... | +| main.rs:2134:9:2134:14 | x.f1() | | {EXTERNAL LOCATION} | () | +| main.rs:2135:9:2135:9 | x | | main.rs:2087:16:2087:35 | impl ... + ... | +| main.rs:2135:9:2135:14 | x.f2() | | {EXTERNAL LOCATION} | () | +| main.rs:2136:13:2136:13 | a | | main.rs:2108:28:2108:43 | impl ... | +| main.rs:2136:17:2136:32 | get_a_my_trait(...) | | main.rs:2108:28:2108:43 | impl ... | +| main.rs:2137:13:2137:13 | b | | main.rs:2068:5:2068:14 | S2 | +| main.rs:2137:17:2137:33 | uses_my_trait1(...) | | main.rs:2068:5:2068:14 | S2 | +| main.rs:2137:32:2137:32 | a | | main.rs:2108:28:2108:43 | impl ... | +| main.rs:2138:13:2138:13 | a | | main.rs:2108:28:2108:43 | impl ... | +| main.rs:2138:17:2138:32 | get_a_my_trait(...) | | main.rs:2108:28:2108:43 | impl ... | +| main.rs:2139:13:2139:13 | c | | main.rs:2068:5:2068:14 | S2 | +| main.rs:2139:17:2139:33 | uses_my_trait2(...) | | main.rs:2068:5:2068:14 | S2 | +| main.rs:2139:32:2139:32 | a | | main.rs:2108:28:2108:43 | impl ... | +| main.rs:2140:13:2140:13 | d | | main.rs:2068:5:2068:14 | S2 | +| main.rs:2140:17:2140:34 | uses_my_trait2(...) | | main.rs:2068:5:2068:14 | S2 | +| main.rs:2140:32:2140:33 | S1 | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2141:13:2141:13 | e | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2141:17:2141:35 | get_a_my_trait2(...) | | main.rs:2116:43:2116:57 | impl ... | +| main.rs:2141:17:2141:35 | get_a_my_trait2(...) | impl(T) | main.rs:2066:5:2067:14 | S1 | +| main.rs:2141:17:2141:43 | ... .get_a() | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2141:33:2141:34 | S1 | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2144:13:2144:13 | f | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | T | main.rs:2120:50:2120:64 | impl ... | +| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | T.impl(T) | main.rs:2066:5:2067:14 | S1 | +| main.rs:2144:17:2144:44 | ... .unwrap() | | main.rs:2120:50:2120:64 | impl ... | +| main.rs:2144:17:2144:44 | ... .unwrap() | impl(T) | main.rs:2066:5:2067:14 | S1 | +| main.rs:2144:17:2144:52 | ... .get_a() | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2144:33:2144:34 | S1 | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2145:13:2145:13 | g | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T0 | main.rs:2124:44:2124:58 | impl ... | +| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T0.impl(T) | main.rs:2066:5:2067:14 | S1 | +| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T1 | main.rs:2124:61:2124:75 | impl ... | +| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T1.impl(T) | main.rs:2066:5:2067:14 | S1 | +| main.rs:2145:17:2145:37 | ... .0 | | main.rs:2124:44:2124:58 | impl ... | +| main.rs:2145:17:2145:37 | ... .0 | impl(T) | main.rs:2066:5:2067:14 | S1 | +| main.rs:2145:17:2145:45 | ... .get_a() | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2145:33:2145:34 | S1 | | main.rs:2066:5:2067:14 | S1 | +| main.rs:2156:16:2156:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2156:16:2156:20 | SelfParam | TRef | main.rs:2152:5:2153:13 | S | +| main.rs:2156:31:2158:9 | { ... } | | main.rs:2152:5:2153:13 | S | +| main.rs:2157:13:2157:13 | S | | main.rs:2152:5:2153:13 | S | +| main.rs:2167:26:2169:9 | { ... } | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2167:26:2169:9 | { ... } | T | main.rs:2166:10:2166:10 | T | +| main.rs:2168:13:2168:38 | MyVec {...} | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2168:13:2168:38 | MyVec {...} | T | main.rs:2166:10:2166:10 | T | +| main.rs:2168:27:2168:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2168:27:2168:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2168:27:2168:36 | ...::new(...) | T | main.rs:2166:10:2166:10 | T | +| main.rs:2171:17:2171:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:2171:17:2171:25 | SelfParam | TRefMut | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2171:17:2171:25 | SelfParam | TRefMut.T | main.rs:2166:10:2166:10 | T | +| main.rs:2171:28:2171:32 | value | | main.rs:2166:10:2166:10 | T | +| main.rs:2171:38:2173:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2172:13:2172:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:2172:13:2172:16 | self | TRefMut | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2172:13:2172:16 | self | TRefMut.T | main.rs:2166:10:2166:10 | T | +| main.rs:2172:13:2172:21 | self.data | | {EXTERNAL LOCATION} | Vec | +| main.rs:2172:13:2172:21 | self.data | A | {EXTERNAL LOCATION} | Global | +| main.rs:2172:13:2172:21 | self.data | T | main.rs:2166:10:2166:10 | T | +| main.rs:2172:13:2172:33 | ... .push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2172:28:2172:32 | value | | main.rs:2166:10:2166:10 | T | +| main.rs:2180:18:2180:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2180:18:2180:22 | SelfParam | TRef | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2180:18:2180:22 | SelfParam | TRef.T | main.rs:2176:10:2176:10 | T | +| main.rs:2180:25:2180:29 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2180:56:2182:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2180:56:2182:9 | { ... } | TRef | main.rs:2176:10:2176:10 | T | +| main.rs:2181:13:2181:29 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2181:13:2181:29 | &... | TRef | main.rs:2176:10:2176:10 | T | +| main.rs:2181:14:2181:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2181:14:2181:17 | self | TRef | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2181:14:2181:17 | self | TRef.T | main.rs:2176:10:2176:10 | T | +| main.rs:2181:14:2181:22 | self.data | | {EXTERNAL LOCATION} | Vec | +| main.rs:2181:14:2181:22 | self.data | A | {EXTERNAL LOCATION} | Global | +| main.rs:2181:14:2181:22 | self.data | T | main.rs:2176:10:2176:10 | T | +| main.rs:2181:14:2181:29 | ...[index] | | main.rs:2176:10:2176:10 | T | +| main.rs:2181:24:2181:28 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2185:22:2185:26 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2185:22:2185:26 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2185:22:2185:26 | slice | TRef.TSlice | main.rs:2152:5:2153:13 | S | +| main.rs:2185:35:2187:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2186:13:2186:13 | x | | main.rs:2152:5:2153:13 | S | +| main.rs:2186:17:2186:21 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2186:17:2186:21 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2186:17:2186:21 | slice | TRef.TSlice | main.rs:2152:5:2153:13 | S | +| main.rs:2186:17:2186:24 | slice[0] | | main.rs:2152:5:2153:13 | S | +| main.rs:2186:17:2186:30 | ... .foo() | | main.rs:2152:5:2153:13 | S | +| main.rs:2186:23:2186:23 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2189:37:2189:37 | a | | main.rs:2189:20:2189:34 | T | +| main.rs:2189:43:2189:43 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2193:9:2193:9 | a | | main.rs:2189:20:2189:34 | T | +| main.rs:2193:11:2193:11 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2196:16:2207:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2197:17:2197:19 | vec | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2197:17:2197:19 | vec | T | main.rs:2152:5:2153:13 | S | +| main.rs:2197:23:2197:34 | ...::new(...) | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2197:23:2197:34 | ...::new(...) | T | main.rs:2152:5:2153:13 | S | +| main.rs:2198:9:2198:11 | vec | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2198:9:2198:11 | vec | T | main.rs:2152:5:2153:13 | S | +| main.rs:2198:9:2198:19 | vec.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2198:18:2198:18 | S | | main.rs:2152:5:2153:13 | S | +| main.rs:2199:9:2199:11 | vec | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2199:9:2199:11 | vec | T | main.rs:2152:5:2153:13 | S | +| main.rs:2199:9:2199:14 | vec[0] | | main.rs:2152:5:2153:13 | S | +| main.rs:2199:9:2199:20 | ... .foo() | | main.rs:2152:5:2153:13 | S | +| main.rs:2199:13:2199:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2201:13:2201:14 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2201:13:2201:14 | xs | TArray | main.rs:2152:5:2153:13 | S | +| main.rs:2201:21:2201:21 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2201:26:2201:28 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2201:26:2201:28 | [...] | TArray | main.rs:2152:5:2153:13 | S | +| main.rs:2201:27:2201:27 | S | | main.rs:2152:5:2153:13 | S | +| main.rs:2202:13:2202:13 | x | | main.rs:2152:5:2153:13 | S | +| main.rs:2202:17:2202:18 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2202:17:2202:18 | xs | TArray | main.rs:2152:5:2153:13 | S | +| main.rs:2202:17:2202:21 | xs[0] | | main.rs:2152:5:2153:13 | S | +| main.rs:2202:17:2202:27 | ... .foo() | | main.rs:2152:5:2153:13 | S | +| main.rs:2202:20:2202:20 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2204:29:2204:31 | vec | | main.rs:2161:5:2164:5 | MyVec | +| main.rs:2204:29:2204:31 | vec | T | main.rs:2152:5:2153:13 | S | +| main.rs:2204:34:2204:34 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2206:9:2206:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2206:23:2206:25 | &xs | | {EXTERNAL LOCATION} | & | +| main.rs:2206:23:2206:25 | &xs | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2206:23:2206:25 | &xs | TRef.TArray | main.rs:2152:5:2153:13 | S | +| main.rs:2206:24:2206:25 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2206:24:2206:25 | xs | TArray | main.rs:2152:5:2153:13 | S | +| main.rs:2211:16:2213:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2212:13:2212:13 | x | | {EXTERNAL LOCATION} | String | +| main.rs:2212:17:2212:46 | MacroExpr | | {EXTERNAL LOCATION} | String | +| main.rs:2212:25:2212:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | +| main.rs:2212:25:2212:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2212:25:2212:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2212:25:2212:45 | ...::must_use(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2212:25:2212:45 | { ... } | | {EXTERNAL LOCATION} | String | +| main.rs:2212:38:2212:45 | "World!" | | {EXTERNAL LOCATION} | & | +| main.rs:2212:38:2212:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2221:19:2221:22 | SelfParam | | main.rs:2217:5:2222:5 | Self [trait MyAdd] | +| main.rs:2221:25:2221:27 | rhs | | main.rs:2217:17:2217:26 | Rhs | +| main.rs:2228:19:2228:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:25:2228:29 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:45:2230:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2229:13:2229:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2237:19:2237:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2237:25:2237:29 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2237:25:2237:29 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2237:46:2239:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2238:13:2238:18 | * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:2238:14:2238:18 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2238:14:2238:18 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2246:19:2246:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2246:25:2246:29 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2246:46:2252:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2247:13:2251:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| main.rs:2247:13:2251:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | +| main.rs:2247:16:2247:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2247:22:2249:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2247:22:2249:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2248:17:2248:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2248:17:2248:17 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2249:20:2251:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2249:20:2251:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2250:17:2250:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2250:17:2250:17 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2261:19:2261:22 | SelfParam | | main.rs:2255:5:2255:19 | S | +| main.rs:2261:19:2261:22 | SelfParam | T | main.rs:2257:10:2257:17 | T | +| main.rs:2261:25:2261:29 | other | | main.rs:2255:5:2255:19 | S | +| main.rs:2261:25:2261:29 | other | T | main.rs:2257:10:2257:17 | T | +| main.rs:2261:54:2263:9 | { ... } | | main.rs:2255:5:2255:19 | S | +| main.rs:2262:13:2262:39 | S(...) | | main.rs:2255:5:2255:19 | S | +| main.rs:2262:15:2262:22 | (...) | | main.rs:2257:10:2257:17 | T | +| main.rs:2262:16:2262:19 | self | | main.rs:2255:5:2255:19 | S | +| main.rs:2262:16:2262:19 | self | T | main.rs:2257:10:2257:17 | T | +| main.rs:2262:16:2262:21 | self.0 | | main.rs:2257:10:2257:17 | T | +| main.rs:2262:31:2262:35 | other | | main.rs:2255:5:2255:19 | S | +| main.rs:2262:31:2262:35 | other | T | main.rs:2257:10:2257:17 | T | +| main.rs:2262:31:2262:37 | other.0 | | main.rs:2257:10:2257:17 | T | +| main.rs:2270:19:2270:22 | SelfParam | | main.rs:2255:5:2255:19 | S | +| main.rs:2270:19:2270:22 | SelfParam | T | main.rs:2266:10:2266:17 | T | +| main.rs:2270:25:2270:29 | other | | main.rs:2266:10:2266:17 | T | +| main.rs:2270:51:2272:9 | { ... } | | main.rs:2255:5:2255:19 | S | +| main.rs:2271:13:2271:37 | S(...) | | main.rs:2255:5:2255:19 | S | +| main.rs:2271:15:2271:22 | (...) | | main.rs:2266:10:2266:17 | T | +| main.rs:2271:16:2271:19 | self | | main.rs:2255:5:2255:19 | S | +| main.rs:2271:16:2271:19 | self | T | main.rs:2266:10:2266:17 | T | +| main.rs:2271:16:2271:21 | self.0 | | main.rs:2266:10:2266:17 | T | +| main.rs:2271:31:2271:35 | other | | main.rs:2266:10:2266:17 | T | +| main.rs:2282:19:2282:22 | SelfParam | | main.rs:2255:5:2255:19 | S | +| main.rs:2282:19:2282:22 | SelfParam | T | main.rs:2275:14:2275:14 | T | +| main.rs:2282:25:2282:29 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2282:25:2282:29 | other | TRef | main.rs:2275:14:2275:14 | T | +| main.rs:2282:55:2284:9 | { ... } | | main.rs:2255:5:2255:19 | S | +| main.rs:2283:13:2283:37 | S(...) | | main.rs:2255:5:2255:19 | S | +| main.rs:2283:15:2283:22 | (...) | | main.rs:2275:14:2275:14 | T | +| main.rs:2283:16:2283:19 | self | | main.rs:2255:5:2255:19 | S | +| main.rs:2283:16:2283:19 | self | T | main.rs:2275:14:2275:14 | T | +| main.rs:2283:16:2283:21 | self.0 | | main.rs:2275:14:2275:14 | T | +| main.rs:2283:31:2283:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2283:31:2283:35 | other | TRef | main.rs:2275:14:2275:14 | T | +| main.rs:2289:20:2289:24 | value | | main.rs:2287:18:2287:18 | T | +| main.rs:2294:20:2294:24 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2294:40:2296:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2295:13:2295:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2301:20:2301:24 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2301:41:2307:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2302:13:2306:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| main.rs:2302:13:2306:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | +| main.rs:2302:16:2302:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2302:22:2304:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2302:22:2304:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2303:17:2303:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2303:17:2303:17 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2304:20:2306:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2304:20:2306:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2305:17:2305:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2305:17:2305:17 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:21:2312:25 | value | | main.rs:2310:19:2310:19 | T | +| main.rs:2312:31:2312:31 | x | | main.rs:2310:5:2313:5 | Self [trait MyFrom2] | +| main.rs:2317:21:2317:25 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2317:33:2317:33 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2317:48:2319:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2318:13:2318:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2324:21:2324:25 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2324:34:2324:34 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2324:49:2330:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2325:13:2329:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| main.rs:2325:16:2325:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2325:22:2327:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2326:17:2326:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2327:20:2329:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2328:17:2328:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2335:15:2335:15 | x | | main.rs:2333:5:2339:5 | Self [trait MySelfTrait] | +| main.rs:2338:15:2338:15 | x | | main.rs:2333:5:2339:5 | Self [trait MySelfTrait] | +| main.rs:2343:15:2343:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2343:31:2345:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2344:13:2344:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2344:13:2344:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:2344:17:2344:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2348:15:2348:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2348:32:2350:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2349:13:2349:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2349:13:2349:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:2349:17:2349:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2355:15:2355:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2355:31:2357:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2356:13:2356:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2356:13:2356:13 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2360:15:2360:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2360:32:2362:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:2361:13:2361:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2365:16:2390:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2366:13:2366:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2366:22:2366:23 | 73 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2366:22:2366:23 | 73 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2367:9:2367:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2367:9:2367:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2367:18:2367:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2368:9:2368:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2368:9:2368:23 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2368:18:2368:22 | &5i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2368:18:2368:22 | &5i64 | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2368:19:2368:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2369:9:2369:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2369:9:2369:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2369:18:2369:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2371:9:2371:15 | S(...) | | main.rs:2255:5:2255:19 | S | +| main.rs:2371:9:2371:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2371:9:2371:31 | ... .my_add(...) | | main.rs:2255:5:2255:19 | S | +| main.rs:2371:11:2371:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2371:24:2371:30 | S(...) | | main.rs:2255:5:2255:19 | S | +| main.rs:2371:24:2371:30 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2371:26:2371:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2372:9:2372:15 | S(...) | | main.rs:2255:5:2255:19 | S | +| main.rs:2372:9:2372:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2372:11:2372:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2372:24:2372:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2373:9:2373:15 | S(...) | | main.rs:2255:5:2255:19 | S | +| main.rs:2373:9:2373:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2373:9:2373:29 | ... .my_add(...) | | main.rs:2255:5:2255:19 | S | +| main.rs:2373:11:2373:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2373:24:2373:28 | &3i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2373:24:2373:28 | &3i64 | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2373:25:2373:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2375:13:2375:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2375:17:2375:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2375:30:2375:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2376:13:2376:13 | y | | {EXTERNAL LOCATION} | i64 | +| main.rs:2376:17:2376:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2376:30:2376:33 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2377:13:2377:13 | z | | {EXTERNAL LOCATION} | i64 | +| main.rs:2377:22:2377:43 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2377:38:2377:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2378:9:2378:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2378:23:2378:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2378:30:2378:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2379:9:2379:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2379:23:2379:26 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2379:29:2379:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2380:9:2380:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2380:27:2380:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2380:34:2380:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2382:9:2382:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2382:17:2382:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2383:9:2383:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2383:17:2383:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2384:9:2384:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2384:18:2384:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2385:9:2385:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2385:18:2385:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2386:9:2386:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2386:25:2386:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2387:9:2387:30 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2387:25:2387:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2388:9:2388:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2388:25:2388:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2389:9:2389:29 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2389:25:2389:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2397:26:2399:9 | { ... } | | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2398:13:2398:25 | MyCallable {...} | | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2401:17:2401:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2401:17:2401:21 | SelfParam | TRef | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2401:31:2403:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2402:13:2402:13 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2402:13:2402:13 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2406:16:2513:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2409:9:2409:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2409:13:2409:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2409:18:2409:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2409:18:2409:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2409:19:2409:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2409:22:2409:22 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2409:25:2409:25 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2409:28:2409:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2410:9:2410:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2410:18:2410:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2410:18:2410:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2410:18:2410:41 | ... .map(...) | | {EXTERNAL LOCATION} | [;] | +| main.rs:2410:19:2410:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2410:22:2410:22 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2410:25:2410:25 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2410:32:2410:40 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| main.rs:2410:32:2410:40 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:2410:40:2410:40 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2410:43:2410:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2411:9:2411:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2411:13:2411:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2411:18:2411:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2411:18:2411:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2411:18:2411:38 | ... .into_iter() | | {EXTERNAL LOCATION} | IntoIter | +| main.rs:2411:18:2411:38 | ... .into_iter() | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2411:19:2411:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2411:22:2411:22 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2411:25:2411:25 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2411:40:2411:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2413:13:2413:17 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2413:13:2413:17 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2413:13:2413:17 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | +| main.rs:2413:21:2413:31 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2413:21:2413:31 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2413:21:2413:31 | [...] | TArray | {EXTERNAL LOCATION} | u8 | +| main.rs:2413:22:2413:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2413:27:2413:27 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2413:27:2413:27 | 2 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2413:30:2413:30 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2413:30:2413:30 | 3 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2414:9:2414:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2414:13:2414:13 | u | | {EXTERNAL LOCATION} | i32 | +| main.rs:2414:13:2414:13 | u | | {EXTERNAL LOCATION} | u8 | +| main.rs:2414:18:2414:22 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2414:18:2414:22 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2414:18:2414:22 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | +| main.rs:2414:24:2414:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2416:13:2416:17 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2416:13:2416:17 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2416:21:2416:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2416:21:2416:29 | [1u16; 3] | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2416:22:2416:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2416:28:2416:28 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2417:9:2417:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2417:13:2417:13 | u | | {EXTERNAL LOCATION} | u16 | +| main.rs:2417:18:2417:22 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2417:18:2417:22 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2417:24:2417:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2419:13:2419:17 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2419:13:2419:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2419:26:2419:26 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2419:31:2419:39 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2419:31:2419:39 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2419:31:2419:39 | [...] | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2419:32:2419:32 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2419:32:2419:32 | 1 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2419:35:2419:35 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2419:35:2419:35 | 2 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2419:38:2419:38 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2419:38:2419:38 | 3 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2420:9:2420:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2420:13:2420:13 | u | | {EXTERNAL LOCATION} | u32 | +| main.rs:2420:18:2420:22 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2420:18:2420:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2420:24:2420:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2422:13:2422:17 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2422:13:2422:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2422:26:2422:26 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2422:31:2422:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2422:31:2422:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2422:31:2422:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2422:32:2422:32 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2422:32:2422:32 | 1 | | {EXTERNAL LOCATION} | u64 | +| main.rs:2422:35:2422:35 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2423:9:2423:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2423:13:2423:13 | u | | {EXTERNAL LOCATION} | u64 | +| main.rs:2423:18:2423:22 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2423:18:2423:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2423:24:2423:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2425:17:2425:24 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2425:17:2425:24 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2425:17:2425:24 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2425:28:2425:48 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2425:28:2425:48 | [...] | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2425:28:2425:48 | [...] | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2425:29:2425:33 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2425:29:2425:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2425:36:2425:40 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2425:36:2425:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2425:43:2425:47 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2425:43:2425:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2426:9:2426:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2426:13:2426:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:2426:13:2426:13 | s | TRef | {EXTERNAL LOCATION} | & | +| main.rs:2426:13:2426:13 | s | TRef.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2426:18:2426:26 | &strings1 | | {EXTERNAL LOCATION} | & | +| main.rs:2426:18:2426:26 | &strings1 | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2426:18:2426:26 | &strings1 | TRef.TArray | {EXTERNAL LOCATION} | & | +| main.rs:2426:18:2426:26 | &strings1 | TRef.TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2426:19:2426:26 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2426:19:2426:26 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2426:19:2426:26 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2426:28:2426:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2427:9:2427:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2427:13:2427:13 | s | | {EXTERNAL LOCATION} | &mut | +| main.rs:2427:13:2427:13 | s | TRefMut | {EXTERNAL LOCATION} | & | +| main.rs:2427:13:2427:13 | s | TRefMut.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2427:18:2427:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | +| main.rs:2427:18:2427:30 | &mut strings1 | TRefMut | {EXTERNAL LOCATION} | [;] | +| main.rs:2427:18:2427:30 | &mut strings1 | TRefMut.TArray | {EXTERNAL LOCATION} | & | +| main.rs:2427:18:2427:30 | &mut strings1 | TRefMut.TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2427:23:2427:30 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2427:23:2427:30 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2427:23:2427:30 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2427:32:2427:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2428:9:2428:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2428:13:2428:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:2428:13:2428:13 | s | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2428:18:2428:25 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2428:18:2428:25 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2428:18:2428:25 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2428:27:2428:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2430:13:2430:20 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2430:13:2430:20 | strings2 | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2431:9:2435:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2431:9:2435:9 | [...] | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2432:13:2432:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2432:26:2432:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2432:26:2432:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2433:13:2433:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2433:26:2433:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2433:26:2433:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2434:13:2434:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2434:26:2434:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2434:26:2434:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2436:9:2436:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2436:13:2436:13 | s | | {EXTERNAL LOCATION} | String | +| main.rs:2436:18:2436:25 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2436:18:2436:25 | strings2 | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2436:27:2436:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2438:13:2438:20 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2438:13:2438:20 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2438:13:2438:20 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | +| main.rs:2439:9:2443:9 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2439:9:2443:9 | &... | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2439:9:2443:9 | &... | TRef.TArray | {EXTERNAL LOCATION} | String | +| main.rs:2439:10:2443:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2439:10:2443:9 | [...] | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2440:13:2440:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2440:26:2440:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2440:26:2440:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2441:13:2441:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2441:26:2441:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2441:26:2441:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2442:13:2442:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2442:26:2442:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2442:26:2442:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2444:9:2444:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2444:13:2444:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:2444:13:2444:13 | s | TRef | {EXTERNAL LOCATION} | String | +| main.rs:2444:18:2444:25 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2444:18:2444:25 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2444:18:2444:25 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | +| main.rs:2444:27:2444:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2446:13:2446:21 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2446:13:2446:21 | callables | TArray | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2446:25:2446:81 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2446:25:2446:81 | [...] | TArray | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2446:26:2446:42 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2446:45:2446:61 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2446:64:2446:80 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2447:9:2451:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2447:13:2447:13 | c | | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2448:12:2448:20 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2448:12:2448:20 | callables | TArray | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2449:9:2451:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2450:17:2450:22 | result | | {EXTERNAL LOCATION} | i64 | +| main.rs:2450:26:2450:26 | c | | main.rs:2394:5:2394:24 | MyCallable | +| main.rs:2450:26:2450:33 | c.call() | | {EXTERNAL LOCATION} | i64 | +| main.rs:2455:9:2455:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2455:13:2455:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2455:18:2455:18 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2455:18:2455:22 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2455:18:2455:22 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2455:21:2455:22 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2455:24:2455:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2456:9:2456:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2456:13:2456:13 | u | | {EXTERNAL LOCATION} | Range | +| main.rs:2456:13:2456:13 | u | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2456:13:2456:13 | u | Idx | {EXTERNAL LOCATION} | u8 | +| main.rs:2456:18:2456:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2456:18:2456:26 | [...] | TArray | {EXTERNAL LOCATION} | Range | +| main.rs:2456:18:2456:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2456:18:2456:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | u8 | +| main.rs:2456:19:2456:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2456:19:2456:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2456:19:2456:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2456:19:2456:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | u8 | +| main.rs:2456:24:2456:25 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2456:24:2456:25 | 10 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2456:28:2456:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2457:13:2457:17 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2457:13:2457:17 | range | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2457:21:2457:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2457:21:2457:25 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2457:21:2457:25 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2457:24:2457:25 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2458:9:2458:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2458:13:2458:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2458:18:2458:22 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2458:18:2458:22 | range | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2458:24:2458:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2459:13:2459:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2459:26:2459:27 | .. | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2460:9:2460:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2460:18:2460:48 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2460:19:2460:36 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2460:19:2460:36 | [...] | TArray | {EXTERNAL LOCATION} | i64 | +| main.rs:2460:20:2460:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2460:26:2460:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2460:32:2460:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2460:38:2460:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2460:50:2460:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2462:13:2462:18 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2462:13:2462:18 | range1 | Idx | {EXTERNAL LOCATION} | u16 | +| main.rs:2463:9:2466:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | +| main.rs:2463:9:2466:9 | ...::Range {...} | Idx | {EXTERNAL LOCATION} | u16 | +| main.rs:2464:20:2464:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2465:18:2465:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | | main.rs:2467:9:2467:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2467:13:2467:13 | u | | {EXTERNAL LOCATION} | u16 | +| main.rs:2467:18:2467:23 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2467:18:2467:23 | range1 | Idx | {EXTERNAL LOCATION} | u16 | | main.rs:2467:25:2467:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2469:13:2469:17 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2469:13:2469:17 | vals5 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2469:13:2469:17 | vals5 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2469:13:2469:17 | vals5 | T | {EXTERNAL LOCATION} | u32 | -| main.rs:2469:21:2469:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2469:21:2469:43 | ...::from(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2469:21:2469:43 | ...::from(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2469:21:2469:43 | ...::from(...) | T | {EXTERNAL LOCATION} | u32 | -| main.rs:2469:31:2469:42 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2469:31:2469:42 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2469:31:2469:42 | [...] | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2469:32:2469:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2469:38:2469:38 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2469:41:2469:41 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2470:9:2470:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2470:13:2470:13 | u | | {EXTERNAL LOCATION} | i32 | -| main.rs:2470:13:2470:13 | u | | {EXTERNAL LOCATION} | u32 | -| main.rs:2470:18:2470:22 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2470:18:2470:22 | vals5 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2470:18:2470:22 | vals5 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2470:18:2470:22 | vals5 | T | {EXTERNAL LOCATION} | u32 | -| main.rs:2470:24:2470:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2472:13:2472:17 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2472:13:2472:17 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2472:13:2472:17 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2472:13:2472:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2472:32:2472:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2472:32:2472:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2472:32:2472:43 | [...] | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2472:32:2472:60 | ... .collect() | | {EXTERNAL LOCATION} | Vec | -| main.rs:2472:32:2472:60 | ... .collect() | A | {EXTERNAL LOCATION} | Global | -| main.rs:2472:32:2472:60 | ... .collect() | T | {EXTERNAL LOCATION} | & | -| main.rs:2472:32:2472:60 | ... .collect() | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2472:33:2472:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | -| main.rs:2472:39:2472:39 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2472:42:2472:42 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2473:9:2473:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2473:13:2473:13 | u | | {EXTERNAL LOCATION} | & | -| main.rs:2473:13:2473:13 | u | TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2473:18:2473:22 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2473:18:2473:22 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2473:18:2473:22 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2473:18:2473:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2473:24:2473:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2475:17:2475:21 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2475:17:2475:21 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2475:17:2475:21 | vals7 | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2475:25:2475:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2475:25:2475:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2475:25:2475:34 | ...::new(...) | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2476:9:2476:13 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2476:9:2476:13 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2476:9:2476:13 | vals7 | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2476:9:2476:23 | vals7.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2476:20:2476:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2477:9:2477:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2477:13:2477:13 | u | | {EXTERNAL LOCATION} | u8 | -| main.rs:2477:18:2477:22 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2477:18:2477:22 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2477:18:2477:22 | vals7 | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2477:24:2477:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2479:13:2479:19 | matrix1 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2479:23:2479:50 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2479:28:2479:37 | (...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2479:28:2479:37 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2479:33:2479:33 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2479:36:2479:36 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2479:40:2479:49 | (...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2479:40:2479:49 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2479:45:2479:45 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2479:48:2479:48 | 4 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2481:13:2481:13 | _ | | {EXTERNAL LOCATION} | () | -| main.rs:2481:17:2484:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2481:28:2481:34 | matrix1 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2481:36:2484:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2482:13:2483:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2482:29:2483:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2486:17:2486:20 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2486:17:2486:20 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2486:17:2486:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2486:17:2486:20 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2486:17:2486:20 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2486:17:2486:20 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2486:17:2486:20 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2486:24:2486:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2486:24:2486:55 | ...::new(...) | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2486:24:2486:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2486:24:2486:55 | ...::new(...) | V | {EXTERNAL LOCATION} | Box | -| main.rs:2486:24:2486:55 | ...::new(...) | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2486:24:2486:55 | ...::new(...) | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2486:24:2486:55 | ...::new(...) | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2487:9:2487:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2487:9:2487:12 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2487:9:2487:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2487:9:2487:12 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2487:9:2487:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2487:9:2487:12 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2487:9:2487:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2487:9:2487:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2487:9:2487:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | -| main.rs:2487:9:2487:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2487:9:2487:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | -| main.rs:2487:9:2487:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2487:21:2487:21 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2487:24:2487:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2487:24:2487:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2487:24:2487:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:2487:24:2487:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2487:33:2487:37 | "one" | | {EXTERNAL LOCATION} | & | -| main.rs:2487:33:2487:37 | "one" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2488:9:2488:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2488:9:2488:12 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2488:9:2488:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2488:9:2488:12 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2488:9:2488:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2488:9:2488:12 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2488:9:2488:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2488:9:2488:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2488:9:2488:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | -| main.rs:2488:9:2488:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2488:9:2488:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | -| main.rs:2488:9:2488:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2488:21:2488:21 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2488:24:2488:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2488:24:2488:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2488:24:2488:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:2488:24:2488:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2488:33:2488:37 | "two" | | {EXTERNAL LOCATION} | & | -| main.rs:2488:33:2488:37 | "two" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2489:9:2489:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2489:13:2489:15 | key | | {EXTERNAL LOCATION} | & | -| main.rs:2489:13:2489:15 | key | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2489:20:2489:23 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2489:20:2489:23 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2489:20:2489:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2489:20:2489:23 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2489:20:2489:23 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2489:20:2489:23 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2489:20:2489:23 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2489:20:2489:30 | map1.keys() | | {EXTERNAL LOCATION} | Keys | -| main.rs:2489:20:2489:30 | map1.keys() | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2489:20:2489:30 | map1.keys() | V | {EXTERNAL LOCATION} | Box | -| main.rs:2489:20:2489:30 | map1.keys() | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2489:20:2489:30 | map1.keys() | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2489:20:2489:30 | map1.keys() | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2489:32:2489:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2490:9:2490:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2490:13:2490:17 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2490:13:2490:17 | value | TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2490:13:2490:17 | value | TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2490:13:2490:17 | value | TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2490:13:2490:17 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2490:22:2490:25 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2490:22:2490:25 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2490:22:2490:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2490:22:2490:25 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2490:22:2490:25 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2490:22:2490:25 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2490:22:2490:25 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2490:22:2490:34 | map1.values() | | {EXTERNAL LOCATION} | Values | -| main.rs:2490:22:2490:34 | map1.values() | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2490:22:2490:34 | map1.values() | V | {EXTERNAL LOCATION} | Box | -| main.rs:2490:22:2490:34 | map1.values() | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2490:22:2490:34 | map1.values() | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2490:22:2490:34 | map1.values() | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2490:36:2490:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2491:9:2491:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2491:13:2491:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2491:13:2491:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | -| main.rs:2491:13:2491:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2491:13:2491:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | -| main.rs:2491:13:2491:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2491:13:2491:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2491:13:2491:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2491:13:2491:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2491:14:2491:16 | key | | {EXTERNAL LOCATION} | & | -| main.rs:2491:14:2491:16 | key | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2491:19:2491:23 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2491:19:2491:23 | value | TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2491:19:2491:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2491:19:2491:23 | value | TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2491:19:2491:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2491:29:2491:32 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2491:29:2491:32 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2491:29:2491:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2491:29:2491:32 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2491:29:2491:32 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2491:29:2491:32 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2491:29:2491:32 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2491:29:2491:39 | map1.iter() | | {EXTERNAL LOCATION} | Iter | -| main.rs:2491:29:2491:39 | map1.iter() | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2491:29:2491:39 | map1.iter() | V | {EXTERNAL LOCATION} | Box | -| main.rs:2491:29:2491:39 | map1.iter() | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2491:29:2491:39 | map1.iter() | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2491:29:2491:39 | map1.iter() | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2491:41:2491:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2492:9:2492:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2492:13:2492:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2492:13:2492:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | -| main.rs:2492:13:2492:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2492:13:2492:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | -| main.rs:2492:13:2492:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2492:13:2492:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2492:13:2492:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2492:13:2492:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2492:14:2492:16 | key | | {EXTERNAL LOCATION} | & | -| main.rs:2492:14:2492:16 | key | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2492:19:2492:23 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2492:19:2492:23 | value | TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2492:19:2492:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2492:19:2492:23 | value | TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2492:19:2492:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2492:29:2492:33 | &map1 | | {EXTERNAL LOCATION} | & | -| main.rs:2492:29:2492:33 | &map1 | TRef | {EXTERNAL LOCATION} | HashMap | -| main.rs:2492:29:2492:33 | &map1 | TRef.K | {EXTERNAL LOCATION} | i32 | -| main.rs:2492:29:2492:33 | &map1 | TRef.S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2492:29:2492:33 | &map1 | TRef.V | {EXTERNAL LOCATION} | Box | -| main.rs:2492:29:2492:33 | &map1 | TRef.V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2492:29:2492:33 | &map1 | TRef.V.T | {EXTERNAL LOCATION} | & | -| main.rs:2492:29:2492:33 | &map1 | TRef.V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2492:30:2492:33 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2492:30:2492:33 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2492:30:2492:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2492:30:2492:33 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2492:30:2492:33 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2492:30:2492:33 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2492:30:2492:33 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2492:35:2492:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2496:17:2496:17 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2496:26:2496:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2496:26:2496:26 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2498:13:2498:13 | _ | | {EXTERNAL LOCATION} | () | -| main.rs:2498:17:2501:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2498:23:2498:23 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2498:23:2498:28 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:2498:27:2498:28 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2499:9:2501:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2500:13:2500:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2500:13:2500:18 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:2500:18:2500:18 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2512:40:2514:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2512:40:2514:9 | { ... } | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2512:40:2514:9 | { ... } | T.T | main.rs:2511:10:2511:19 | T | -| main.rs:2513:13:2513:16 | None | | {EXTERNAL LOCATION} | Option | -| main.rs:2513:13:2513:16 | None | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2513:13:2513:16 | None | T.T | main.rs:2511:10:2511:19 | T | -| main.rs:2516:30:2518:9 | { ... } | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2516:30:2518:9 | { ... } | T | main.rs:2511:10:2511:19 | T | -| main.rs:2517:13:2517:28 | S1(...) | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2517:13:2517:28 | S1(...) | T | main.rs:2511:10:2511:19 | T | -| main.rs:2517:16:2517:27 | ...::default(...) | | main.rs:2511:10:2511:19 | T | -| main.rs:2520:19:2520:22 | SelfParam | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2520:19:2520:22 | SelfParam | T | main.rs:2511:10:2511:19 | T | -| main.rs:2520:33:2522:9 | { ... } | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2520:33:2522:9 | { ... } | T | main.rs:2511:10:2511:19 | T | -| main.rs:2521:13:2521:16 | self | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2521:13:2521:16 | self | T | main.rs:2511:10:2511:19 | T | -| main.rs:2533:15:2533:15 | x | | main.rs:2533:12:2533:12 | T | -| main.rs:2533:26:2535:5 | { ... } | | main.rs:2533:12:2533:12 | T | -| main.rs:2534:9:2534:9 | x | | main.rs:2533:12:2533:12 | T | -| main.rs:2537:16:2559:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2538:13:2538:14 | x1 | | {EXTERNAL LOCATION} | Option | -| main.rs:2538:13:2538:14 | x1 | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2538:13:2538:14 | x1 | T.T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2538:34:2538:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2538:34:2538:48 | ...::assoc_fun(...) | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2538:34:2538:48 | ...::assoc_fun(...) | T.T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2539:13:2539:14 | x2 | | {EXTERNAL LOCATION} | Option | -| main.rs:2539:13:2539:14 | x2 | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2539:13:2539:14 | x2 | T.T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2539:18:2539:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2539:18:2539:38 | ...::assoc_fun(...) | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2539:18:2539:38 | ...::assoc_fun(...) | T.T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2540:13:2540:14 | x3 | | {EXTERNAL LOCATION} | Option | -| main.rs:2540:13:2540:14 | x3 | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2540:13:2540:14 | x3 | T.T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2540:18:2540:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2540:18:2540:32 | ...::assoc_fun(...) | T | main.rs:2506:5:2506:20 | S1 | -| main.rs:2540:18:2540:32 | ...::assoc_fun(...) | T.T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2541:13:2541:14 | x4 | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2541:13:2541:14 | x4 | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2541:18:2541:48 | ...::method(...) | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2541:18:2541:48 | ...::method(...) | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2541:35:2541:47 | ...::default(...) | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2541:35:2541:47 | ...::default(...) | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2542:13:2542:14 | x5 | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2542:13:2542:14 | x5 | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2542:18:2542:42 | ...::method(...) | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2542:18:2542:42 | ...::method(...) | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2542:29:2542:41 | ...::default(...) | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2542:29:2542:41 | ...::default(...) | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2543:13:2543:14 | x6 | | main.rs:2527:5:2527:27 | S4 | -| main.rs:2543:13:2543:14 | x6 | T4 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2543:18:2543:45 | S4::<...>(...) | | main.rs:2527:5:2527:27 | S4 | -| main.rs:2543:18:2543:45 | S4::<...>(...) | T4 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2543:27:2543:44 | ...::default(...) | | main.rs:2508:5:2509:14 | S2 | -| main.rs:2544:13:2544:14 | x7 | | main.rs:2527:5:2527:27 | S4 | -| main.rs:2544:13:2544:14 | x7 | T4 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2544:18:2544:23 | S4(...) | | main.rs:2527:5:2527:27 | S4 | -| main.rs:2544:18:2544:23 | S4(...) | T4 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2544:21:2544:22 | S2 | | main.rs:2508:5:2509:14 | S2 | -| main.rs:2545:13:2545:14 | x8 | | main.rs:2527:5:2527:27 | S4 | -| main.rs:2545:13:2545:14 | x8 | T4 | {EXTERNAL LOCATION} | i32 | -| main.rs:2545:18:2545:22 | S4(...) | | main.rs:2527:5:2527:27 | S4 | -| main.rs:2545:18:2545:22 | S4(...) | T4 | {EXTERNAL LOCATION} | i32 | -| main.rs:2545:21:2545:21 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2546:13:2546:14 | x9 | | main.rs:2527:5:2527:27 | S4 | -| main.rs:2546:13:2546:14 | x9 | T4 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2546:18:2546:34 | S4(...) | | main.rs:2527:5:2527:27 | S4 | -| main.rs:2546:18:2546:34 | S4(...) | T4 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2546:21:2546:33 | ...::default(...) | | main.rs:2508:5:2509:14 | S2 | -| main.rs:2547:13:2547:15 | x10 | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2547:13:2547:15 | x10 | T5 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2547:19:2550:9 | S5::<...> {...} | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2547:19:2550:9 | S5::<...> {...} | T5 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2549:20:2549:37 | ...::default(...) | | main.rs:2508:5:2509:14 | S2 | -| main.rs:2551:13:2551:15 | x11 | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2551:13:2551:15 | x11 | T5 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2551:19:2551:34 | S5 {...} | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2551:19:2551:34 | S5 {...} | T5 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2551:31:2551:32 | S2 | | main.rs:2508:5:2509:14 | S2 | -| main.rs:2552:13:2552:15 | x12 | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2552:13:2552:15 | x12 | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:2552:19:2552:33 | S5 {...} | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2552:19:2552:33 | S5 {...} | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:2552:31:2552:31 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2553:13:2553:15 | x13 | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2553:13:2553:15 | x13 | T5 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2553:19:2556:9 | S5 {...} | | main.rs:2529:5:2531:5 | S5 | -| main.rs:2553:19:2556:9 | S5 {...} | T5 | main.rs:2508:5:2509:14 | S2 | -| main.rs:2555:20:2555:32 | ...::default(...) | | main.rs:2508:5:2509:14 | S2 | -| main.rs:2557:13:2557:15 | x14 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2557:19:2557:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2557:30:2557:47 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2558:13:2558:15 | x15 | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2558:13:2558:15 | x15 | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2558:19:2558:37 | ...::default(...) | | main.rs:2506:5:2506:20 | S1 | -| main.rs:2558:19:2558:37 | ...::default(...) | T | main.rs:2508:5:2509:14 | S2 | -| main.rs:2567:35:2569:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2567:35:2569:9 | { ... } | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2567:35:2569:9 | { ... } | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2568:13:2568:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2568:13:2568:26 | TupleExpr | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2568:13:2568:26 | TupleExpr | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2568:14:2568:18 | S1 {...} | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2568:21:2568:25 | S1 {...} | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2570:16:2570:19 | SelfParam | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2570:22:2570:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2573:16:2607:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2574:13:2574:13 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2574:13:2574:13 | a | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2574:13:2574:13 | a | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2574:17:2574:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2574:17:2574:30 | ...::get_pair(...) | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2574:17:2574:30 | ...::get_pair(...) | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2575:17:2575:17 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2575:17:2575:17 | b | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2575:17:2575:17 | b | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2575:21:2575:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2575:21:2575:34 | ...::get_pair(...) | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2575:21:2575:34 | ...::get_pair(...) | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2576:13:2576:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2576:13:2576:18 | TuplePat | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2576:13:2576:18 | TuplePat | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2576:14:2576:14 | c | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2576:17:2576:17 | d | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2576:22:2576:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2576:22:2576:35 | ...::get_pair(...) | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2576:22:2576:35 | ...::get_pair(...) | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2577:13:2577:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2577:13:2577:22 | TuplePat | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2577:13:2577:22 | TuplePat | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2577:18:2577:18 | e | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2577:21:2577:21 | f | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2577:26:2577:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2577:26:2577:39 | ...::get_pair(...) | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2577:26:2577:39 | ...::get_pair(...) | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2578:13:2578:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2578:13:2578:26 | TuplePat | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2578:13:2578:26 | TuplePat | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2578:18:2578:18 | g | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2578:25:2578:25 | h | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2578:30:2578:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2578:30:2578:43 | ...::get_pair(...) | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2578:30:2578:43 | ...::get_pair(...) | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2580:9:2580:9 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2580:9:2580:9 | a | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2580:9:2580:9 | a | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2580:9:2580:11 | a.0 | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2580:9:2580:17 | ... .foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2581:9:2581:9 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2581:9:2581:9 | b | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2581:9:2581:9 | b | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2581:9:2581:11 | b.1 | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2581:9:2581:17 | ... .foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2582:9:2582:9 | c | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2582:9:2582:15 | c.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2583:9:2583:9 | d | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2583:9:2583:15 | d.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2584:9:2584:9 | e | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2584:9:2584:15 | e.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2585:9:2585:9 | f | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2585:9:2585:15 | f.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2586:9:2586:9 | g | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2586:9:2586:15 | g.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2587:9:2587:9 | h | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2587:9:2587:15 | h.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2592:13:2592:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2592:17:2592:34 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2593:13:2593:13 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2593:17:2593:34 | ...::default(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2594:13:2594:16 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2594:13:2594:16 | pair | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2594:13:2594:16 | pair | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2594:20:2594:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2594:20:2594:25 | TupleExpr | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2594:20:2594:25 | TupleExpr | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2594:21:2594:21 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2594:24:2594:24 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2595:13:2595:13 | i | | {EXTERNAL LOCATION} | i64 | -| main.rs:2595:22:2595:25 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2595:22:2595:25 | pair | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2595:22:2595:25 | pair | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2595:22:2595:27 | pair.0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2596:13:2596:13 | j | | {EXTERNAL LOCATION} | bool | -| main.rs:2596:23:2596:26 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2596:23:2596:26 | pair | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2596:23:2596:26 | pair | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2596:23:2596:28 | pair.1 | | {EXTERNAL LOCATION} | bool | -| main.rs:2598:13:2598:16 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2598:13:2598:16 | pair | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2598:13:2598:16 | pair | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2598:20:2598:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2598:20:2598:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2598:20:2598:32 | ... .into() | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2598:20:2598:32 | ... .into() | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2598:20:2598:32 | ... .into() | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2598:21:2598:21 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2598:24:2598:24 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2599:9:2602:9 | match pair { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2599:15:2599:18 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2599:15:2599:18 | pair | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2599:15:2599:18 | pair | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2600:13:2600:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2600:13:2600:18 | TuplePat | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2600:13:2600:18 | TuplePat | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2600:14:2600:14 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2600:17:2600:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2600:23:2600:42 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2600:30:2600:41 | "unexpected" | | {EXTERNAL LOCATION} | & | -| main.rs:2600:30:2600:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2600:30:2600:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2600:30:2600:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2601:13:2601:13 | _ | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2601:13:2601:13 | _ | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2601:13:2601:13 | _ | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2601:18:2601:35 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2601:25:2601:34 | "expected" | | {EXTERNAL LOCATION} | & | -| main.rs:2601:25:2601:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2601:25:2601:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2601:25:2601:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2603:13:2603:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2603:17:2603:20 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2603:17:2603:20 | pair | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2603:17:2603:20 | pair | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2603:17:2603:22 | pair.0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2605:13:2605:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2605:13:2605:13 | y | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2605:13:2605:13 | y | TRef.T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2605:13:2605:13 | y | TRef.T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2605:17:2605:31 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2605:17:2605:31 | &... | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2605:17:2605:31 | &... | TRef.T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2605:17:2605:31 | &... | TRef.T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2605:18:2605:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2605:18:2605:31 | ...::get_pair(...) | T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2605:18:2605:31 | ...::get_pair(...) | T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2606:9:2606:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2606:9:2606:9 | y | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2606:9:2606:9 | y | TRef.T0 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2606:9:2606:9 | y | TRef.T1 | main.rs:2563:5:2564:16 | S1 | -| main.rs:2606:9:2606:11 | y.0 | | main.rs:2563:5:2564:16 | S1 | -| main.rs:2606:9:2606:17 | ... .foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2612:27:2634:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2613:13:2613:23 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2613:13:2613:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2613:13:2613:23 | boxed_value | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2613:27:2613:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2613:27:2613:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2613:27:2613:42 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2613:36:2613:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2616:9:2624:9 | match boxed_value { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2616:15:2616:25 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2616:15:2616:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2616:15:2616:25 | boxed_value | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2617:13:2617:19 | box 100 | | {EXTERNAL LOCATION} | Box | -| main.rs:2617:13:2617:19 | box 100 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2617:13:2617:19 | box 100 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2617:17:2617:19 | 100 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2617:24:2619:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2618:17:2618:37 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2618:26:2618:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2618:26:2618:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2618:26:2618:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2618:26:2618:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2618:26:2618:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2620:13:2620:17 | box ... | | {EXTERNAL LOCATION} | Box | -| main.rs:2620:13:2620:17 | box ... | A | {EXTERNAL LOCATION} | Global | -| main.rs:2620:13:2620:17 | box ... | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2620:22:2623:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2622:17:2622:52 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2622:26:2622:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2622:26:2622:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2622:26:2622:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2622:26:2622:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2622:26:2622:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2627:13:2627:22 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2627:13:2627:22 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2627:13:2627:22 | nested_box | T | {EXTERNAL LOCATION} | Box | -| main.rs:2627:13:2627:22 | nested_box | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2627:13:2627:22 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2627:26:2627:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2627:26:2627:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2627:26:2627:50 | ...::new(...) | T | {EXTERNAL LOCATION} | Box | -| main.rs:2627:26:2627:50 | ...::new(...) | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2627:26:2627:50 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2627:35:2627:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2627:35:2627:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2627:35:2627:49 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2627:44:2627:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2628:9:2633:9 | match nested_box { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2628:15:2628:24 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2628:15:2628:24 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2628:15:2628:24 | nested_box | T | {EXTERNAL LOCATION} | Box | -| main.rs:2628:15:2628:24 | nested_box | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2628:15:2628:24 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2629:13:2629:21 | box ... | | {EXTERNAL LOCATION} | Box | -| main.rs:2629:13:2629:21 | box ... | A | {EXTERNAL LOCATION} | Global | -| main.rs:2629:13:2629:21 | box ... | T | {EXTERNAL LOCATION} | Box | -| main.rs:2629:13:2629:21 | box ... | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2629:13:2629:21 | box ... | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2629:26:2632:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2631:17:2631:60 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2631:26:2631:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2631:26:2631:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2631:26:2631:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2631:26:2631:59 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2631:26:2631:59 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2643:36:2645:9 | { ... } | | main.rs:2640:5:2640:22 | Path | -| main.rs:2644:13:2644:19 | Path {...} | | main.rs:2640:5:2640:22 | Path | -| main.rs:2647:29:2647:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2647:29:2647:33 | SelfParam | TRef | main.rs:2640:5:2640:22 | Path | -| main.rs:2647:59:2649:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:2647:59:2649:9 | { ... } | E | {EXTERNAL LOCATION} | () | -| main.rs:2647:59:2649:9 | { ... } | T | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2648:13:2648:30 | Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2648:13:2648:30 | Ok(...) | E | {EXTERNAL LOCATION} | () | -| main.rs:2648:13:2648:30 | Ok(...) | T | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2648:16:2648:29 | ...::new(...) | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2655:39:2657:9 | { ... } | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2656:13:2656:22 | PathBuf {...} | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2665:18:2665:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2665:18:2665:22 | SelfParam | TRef | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2665:34:2669:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2665:34:2669:9 | { ... } | TRef | main.rs:2640:5:2640:22 | Path | -| main.rs:2667:33:2667:43 | ...::new(...) | | main.rs:2640:5:2640:22 | Path | -| main.rs:2668:13:2668:17 | &path | | {EXTERNAL LOCATION} | & | -| main.rs:2668:13:2668:17 | &path | TRef | main.rs:2640:5:2640:22 | Path | -| main.rs:2668:14:2668:17 | path | | main.rs:2640:5:2640:22 | Path | -| main.rs:2672:16:2680:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2673:13:2673:17 | path1 | | main.rs:2640:5:2640:22 | Path | -| main.rs:2673:21:2673:31 | ...::new(...) | | main.rs:2640:5:2640:22 | Path | -| main.rs:2674:13:2674:17 | path2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2674:13:2674:17 | path2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2674:13:2674:17 | path2 | T | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2674:21:2674:25 | path1 | | main.rs:2640:5:2640:22 | Path | -| main.rs:2674:21:2674:40 | path1.canonicalize() | | {EXTERNAL LOCATION} | Result | -| main.rs:2674:21:2674:40 | path1.canonicalize() | E | {EXTERNAL LOCATION} | () | -| main.rs:2674:21:2674:40 | path1.canonicalize() | T | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2675:13:2675:17 | path3 | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2675:21:2675:25 | path2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2675:21:2675:25 | path2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2675:21:2675:25 | path2 | T | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2675:21:2675:34 | path2.unwrap() | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2677:13:2677:20 | pathbuf1 | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2677:24:2677:37 | ...::new(...) | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2678:13:2678:20 | pathbuf2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2678:13:2678:20 | pathbuf2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2678:13:2678:20 | pathbuf2 | T | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2678:24:2678:31 | pathbuf1 | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2678:24:2678:46 | pathbuf1.canonicalize() | | {EXTERNAL LOCATION} | Result | -| main.rs:2678:24:2678:46 | pathbuf1.canonicalize() | E | {EXTERNAL LOCATION} | () | -| main.rs:2678:24:2678:46 | pathbuf1.canonicalize() | T | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2679:13:2679:20 | pathbuf3 | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2679:24:2679:31 | pathbuf2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2679:24:2679:31 | pathbuf2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2679:24:2679:31 | pathbuf2 | T | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2679:24:2679:40 | pathbuf2.unwrap() | | main.rs:2652:5:2652:25 | PathBuf | -| main.rs:2685:14:2685:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2685:14:2685:18 | SelfParam | TRef | main.rs:2684:5:2686:5 | Self [trait MyTrait] | -| main.rs:2692:14:2692:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2692:14:2692:18 | SelfParam | TRef | main.rs:2688:5:2689:19 | S | -| main.rs:2692:14:2692:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2692:28:2694:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2693:13:2693:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2693:13:2693:16 | self | TRef | main.rs:2688:5:2689:19 | S | -| main.rs:2693:13:2693:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2693:13:2693:18 | self.0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2698:14:2698:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2698:14:2698:18 | SelfParam | TRef | main.rs:2688:5:2689:19 | S | -| main.rs:2698:14:2698:18 | SelfParam | TRef.T | main.rs:2688:5:2689:19 | S | -| main.rs:2698:14:2698:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2698:28:2700:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2699:13:2699:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2699:13:2699:16 | self | TRef | main.rs:2688:5:2689:19 | S | -| main.rs:2699:13:2699:16 | self | TRef.T | main.rs:2688:5:2689:19 | S | -| main.rs:2699:13:2699:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2699:13:2699:18 | self.0 | | main.rs:2688:5:2689:19 | S | -| main.rs:2699:13:2699:18 | self.0 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2699:13:2699:21 | ... .0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2704:15:2704:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2704:15:2704:19 | SelfParam | TRef | main.rs:2688:5:2689:19 | S | -| main.rs:2704:15:2704:19 | SelfParam | TRef.T | main.rs:2703:10:2703:16 | T | -| main.rs:2704:33:2706:9 | { ... } | | main.rs:2688:5:2689:19 | S | -| main.rs:2704:33:2706:9 | { ... } | T | main.rs:2688:5:2689:19 | S | -| main.rs:2704:33:2706:9 | { ... } | T.T | main.rs:2703:10:2703:16 | T | -| main.rs:2705:13:2705:24 | S(...) | | main.rs:2688:5:2689:19 | S | -| main.rs:2705:13:2705:24 | S(...) | T | main.rs:2688:5:2689:19 | S | -| main.rs:2705:13:2705:24 | S(...) | T.T | main.rs:2703:10:2703:16 | T | -| main.rs:2705:15:2705:23 | S(...) | | main.rs:2688:5:2689:19 | S | -| main.rs:2705:15:2705:23 | S(...) | T | main.rs:2703:10:2703:16 | T | -| main.rs:2705:17:2705:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2705:17:2705:20 | self | TRef | main.rs:2688:5:2689:19 | S | -| main.rs:2705:17:2705:20 | self | TRef.T | main.rs:2703:10:2703:16 | T | -| main.rs:2705:17:2705:22 | self.0 | | main.rs:2703:10:2703:16 | T | -| main.rs:2709:14:2709:14 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2709:48:2726:5 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2709:48:2726:5 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2709:48:2726:5 | { ... } | T | main.rs:2684:5:2686:5 | dyn MyTrait | -| main.rs:2709:48:2726:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2710:13:2710:13 | x | | main.rs:2688:5:2689:19 | S | -| main.rs:2710:13:2710:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2710:17:2715:9 | if b {...} else {...} | | main.rs:2688:5:2689:19 | S | -| main.rs:2710:17:2715:9 | if b {...} else {...} | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2710:20:2710:20 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2710:22:2713:9 | { ... } | | main.rs:2688:5:2689:19 | S | -| main.rs:2710:22:2713:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2711:17:2711:17 | y | | main.rs:2688:5:2689:19 | S | -| main.rs:2711:17:2711:17 | y | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2711:21:2711:38 | ...::default(...) | | main.rs:2688:5:2689:19 | S | -| main.rs:2711:21:2711:38 | ...::default(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2712:13:2712:13 | y | | main.rs:2688:5:2689:19 | S | -| main.rs:2712:13:2712:13 | y | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2713:16:2715:9 | { ... } | | main.rs:2688:5:2689:19 | S | -| main.rs:2713:16:2715:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2714:13:2714:16 | S(...) | | main.rs:2688:5:2689:19 | S | -| main.rs:2714:13:2714:16 | S(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2714:15:2714:15 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2719:13:2719:13 | x | | main.rs:2688:5:2689:19 | S | -| main.rs:2719:13:2719:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2719:17:2719:20 | S(...) | | main.rs:2688:5:2689:19 | S | -| main.rs:2719:17:2719:20 | S(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2719:19:2719:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2720:9:2725:9 | if b {...} else {...} | | {EXTERNAL LOCATION} | Box | -| main.rs:2720:9:2725:9 | if b {...} else {...} | A | {EXTERNAL LOCATION} | Global | -| main.rs:2720:9:2725:9 | if b {...} else {...} | T | main.rs:2684:5:2686:5 | dyn MyTrait | -| main.rs:2720:9:2725:9 | if b {...} else {...} | T | main.rs:2688:5:2689:19 | S | -| main.rs:2720:9:2725:9 | if b {...} else {...} | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2720:9:2725:9 | if b {...} else {...} | T.T | main.rs:2688:5:2689:19 | S | -| main.rs:2720:9:2725:9 | if b {...} else {...} | T.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2720:9:2725:9 | if b {...} else {...} | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2720:12:2720:12 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2720:14:2723:9 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2720:14:2723:9 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2720:14:2723:9 | { ... } | T | main.rs:2684:5:2686:5 | dyn MyTrait | -| main.rs:2720:14:2723:9 | { ... } | T | main.rs:2688:5:2689:19 | S | -| main.rs:2720:14:2723:9 | { ... } | T.T | main.rs:2688:5:2689:19 | S | -| main.rs:2720:14:2723:9 | { ... } | T.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2720:14:2723:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2721:17:2721:17 | x | | main.rs:2688:5:2689:19 | S | -| main.rs:2721:17:2721:17 | x | T | main.rs:2688:5:2689:19 | S | -| main.rs:2721:17:2721:17 | x | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2721:21:2721:21 | x | | main.rs:2688:5:2689:19 | S | -| main.rs:2721:21:2721:21 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2721:21:2721:26 | x.m2() | | main.rs:2688:5:2689:19 | S | -| main.rs:2721:21:2721:26 | x.m2() | T | main.rs:2688:5:2689:19 | S | -| main.rs:2721:21:2721:26 | x.m2() | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2722:13:2722:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2722:13:2722:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2722:13:2722:23 | ...::new(...) | T | main.rs:2684:5:2686:5 | dyn MyTrait | -| main.rs:2722:13:2722:23 | ...::new(...) | T | main.rs:2688:5:2689:19 | S | -| main.rs:2722:13:2722:23 | ...::new(...) | T.T | main.rs:2688:5:2689:19 | S | -| main.rs:2722:13:2722:23 | ...::new(...) | T.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2722:13:2722:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2722:22:2722:22 | x | | main.rs:2688:5:2689:19 | S | -| main.rs:2722:22:2722:22 | x | T | main.rs:2688:5:2689:19 | S | -| main.rs:2722:22:2722:22 | x | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2723:16:2725:9 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2723:16:2725:9 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2723:16:2725:9 | { ... } | T | main.rs:2684:5:2686:5 | dyn MyTrait | -| main.rs:2723:16:2725:9 | { ... } | T | main.rs:2688:5:2689:19 | S | -| main.rs:2723:16:2725:9 | { ... } | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2723:16:2725:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2724:13:2724:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2724:13:2724:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2724:13:2724:23 | ...::new(...) | T | main.rs:2684:5:2686:5 | dyn MyTrait | -| main.rs:2724:13:2724:23 | ...::new(...) | T | main.rs:2688:5:2689:19 | S | -| main.rs:2724:13:2724:23 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2724:13:2724:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2724:22:2724:22 | x | | main.rs:2688:5:2689:19 | S | -| main.rs:2724:22:2724:22 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2730:22:2734:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2731:18:2731:18 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2731:33:2733:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2732:13:2732:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2732:13:2732:17 | ... + ... | | {EXTERNAL LOCATION} | i32 | -| main.rs:2732:17:2732:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2739:11:2739:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2739:30:2747:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2741:13:2741:13 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2741:17:2745:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2742:13:2744:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2742:16:2742:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2742:21:2744:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2743:24:2743:25 | 12 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2746:9:2746:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2750:20:2757:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2753:26:2753:27 | 12 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2755:9:2755:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2755:18:2755:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2755:18:2755:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2755:18:2755:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2755:18:2755:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2755:18:2755:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2756:9:2756:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2759:20:2761:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2760:16:2760:16 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2764:11:2764:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2764:30:2772:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2765:13:2765:13 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2765:17:2769:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2766:13:2768:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2766:16:2766:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2766:21:2768:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2767:24:2767:25 | 12 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2770:9:2770:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2770:18:2770:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2770:18:2770:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2770:18:2770:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2770:18:2770:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2770:18:2770:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2770:29:2770:29 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2771:9:2771:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2776:16:2823:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2777:13:2777:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2777:13:2777:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2777:17:2777:20 | None | | {EXTERNAL LOCATION} | Option | -| main.rs:2777:17:2777:20 | None | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2778:13:2778:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2778:13:2778:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2778:30:2778:30 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2778:30:2778:30 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2779:13:2779:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2779:13:2779:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2779:17:2779:35 | ...::None | | {EXTERNAL LOCATION} | Option | -| main.rs:2779:17:2779:35 | ...::None | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2780:13:2780:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2780:13:2780:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2780:17:2780:35 | ...::None::<...> | | {EXTERNAL LOCATION} | Option | -| main.rs:2780:17:2780:35 | ...::None::<...> | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2782:26:2782:28 | opt | | {EXTERNAL LOCATION} | Option | -| main.rs:2782:26:2782:28 | opt | T | main.rs:2782:23:2782:23 | T | -| main.rs:2782:42:2782:42 | x | | main.rs:2782:23:2782:23 | T | -| main.rs:2782:48:2782:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2784:13:2784:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2784:13:2784:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2784:17:2784:20 | None | | {EXTERNAL LOCATION} | Option | -| main.rs:2784:17:2784:20 | None | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2785:9:2785:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2785:20:2785:20 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2785:20:2785:20 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2785:23:2785:23 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2792:13:2792:13 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2792:13:2792:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2792:13:2792:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2792:17:2792:39 | ...::A {...} | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2792:17:2792:39 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2792:17:2792:39 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2792:37:2792:37 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2793:13:2793:13 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2793:13:2793:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2793:13:2793:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2793:40:2793:40 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2793:40:2793:40 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2793:40:2793:40 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2794:13:2794:13 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2794:13:2794:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2794:13:2794:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2794:17:2794:52 | ...::A {...} | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2794:17:2794:52 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2794:17:2794:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2794:50:2794:50 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2796:13:2796:13 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2796:13:2796:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2796:13:2796:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2796:17:2798:9 | ...::B::<...> {...} | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2796:17:2798:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2796:17:2798:9 | ...::B::<...> {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2797:20:2797:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2800:29:2800:29 | e | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2800:29:2800:29 | e | T1 | main.rs:2800:26:2800:26 | T | -| main.rs:2800:29:2800:29 | e | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2800:53:2800:53 | x | | main.rs:2800:26:2800:26 | T | -| main.rs:2800:59:2800:60 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2803:13:2803:13 | x | | main.rs:2787:9:2790:9 | MyEither | +| main.rs:2471:13:2471:17 | vals3 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2471:21:2471:33 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2471:26:2471:26 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2471:29:2471:29 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2471:32:2471:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2472:9:2472:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2472:18:2472:22 | vals3 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2472:24:2472:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2474:13:2474:18 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2474:13:2474:18 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2474:13:2474:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2474:32:2474:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2474:32:2474:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2474:32:2474:43 | [...] | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2474:32:2474:52 | ... .to_vec() | | {EXTERNAL LOCATION} | Vec | +| main.rs:2474:32:2474:52 | ... .to_vec() | A | {EXTERNAL LOCATION} | Global | +| main.rs:2474:32:2474:52 | ... .to_vec() | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2474:33:2474:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2474:39:2474:39 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2474:42:2474:42 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2475:9:2475:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2475:13:2475:13 | u | | {EXTERNAL LOCATION} | u16 | +| main.rs:2475:18:2475:23 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2475:18:2475:23 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2475:18:2475:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2475:25:2475:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2477:22:2477:33 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2477:22:2477:33 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2477:22:2477:33 | [...] | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2477:23:2477:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2477:29:2477:29 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2477:32:2477:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2478:9:2478:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2478:25:2478:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2480:13:2480:17 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2480:13:2480:17 | vals5 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2480:13:2480:17 | vals5 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2480:13:2480:17 | vals5 | T | {EXTERNAL LOCATION} | u32 | +| main.rs:2480:21:2480:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2480:21:2480:43 | ...::from(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2480:21:2480:43 | ...::from(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2480:21:2480:43 | ...::from(...) | T | {EXTERNAL LOCATION} | u32 | +| main.rs:2480:31:2480:42 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2480:31:2480:42 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2480:31:2480:42 | [...] | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2480:32:2480:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2480:38:2480:38 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2480:41:2480:41 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2481:9:2481:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2481:13:2481:13 | u | | {EXTERNAL LOCATION} | i32 | +| main.rs:2481:13:2481:13 | u | | {EXTERNAL LOCATION} | u32 | +| main.rs:2481:18:2481:22 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2481:18:2481:22 | vals5 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2481:18:2481:22 | vals5 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2481:18:2481:22 | vals5 | T | {EXTERNAL LOCATION} | u32 | +| main.rs:2481:24:2481:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2483:13:2483:17 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2483:13:2483:17 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2483:13:2483:17 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2483:13:2483:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2483:32:2483:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2483:32:2483:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2483:32:2483:43 | [...] | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2483:32:2483:60 | ... .collect() | | {EXTERNAL LOCATION} | Vec | +| main.rs:2483:32:2483:60 | ... .collect() | A | {EXTERNAL LOCATION} | Global | +| main.rs:2483:32:2483:60 | ... .collect() | T | {EXTERNAL LOCATION} | & | +| main.rs:2483:32:2483:60 | ... .collect() | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2483:33:2483:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | +| main.rs:2483:39:2483:39 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2483:42:2483:42 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2484:9:2484:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2484:13:2484:13 | u | | {EXTERNAL LOCATION} | & | +| main.rs:2484:13:2484:13 | u | TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2484:18:2484:22 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2484:18:2484:22 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2484:18:2484:22 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2484:18:2484:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2484:24:2484:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2486:17:2486:21 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2486:17:2486:21 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2486:17:2486:21 | vals7 | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2486:25:2486:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2486:25:2486:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2486:25:2486:34 | ...::new(...) | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2487:9:2487:13 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2487:9:2487:13 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2487:9:2487:13 | vals7 | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2487:9:2487:23 | vals7.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2487:20:2487:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2488:9:2488:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2488:13:2488:13 | u | | {EXTERNAL LOCATION} | u8 | +| main.rs:2488:18:2488:22 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2488:18:2488:22 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2488:18:2488:22 | vals7 | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2488:24:2488:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2490:13:2490:19 | matrix1 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2490:23:2490:50 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2490:28:2490:37 | (...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2490:28:2490:37 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2490:33:2490:33 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2490:36:2490:36 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2490:40:2490:49 | (...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2490:40:2490:49 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2490:45:2490:45 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2490:48:2490:48 | 4 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2492:13:2492:13 | _ | | {EXTERNAL LOCATION} | () | +| main.rs:2492:17:2495:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2492:28:2492:34 | matrix1 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2492:36:2495:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2493:13:2494:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2493:29:2494:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2497:17:2497:20 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2497:17:2497:20 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2497:17:2497:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2497:17:2497:20 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2497:17:2497:20 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2497:17:2497:20 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2497:17:2497:20 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2497:24:2497:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2497:24:2497:55 | ...::new(...) | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2497:24:2497:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2497:24:2497:55 | ...::new(...) | V | {EXTERNAL LOCATION} | Box | +| main.rs:2497:24:2497:55 | ...::new(...) | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2497:24:2497:55 | ...::new(...) | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2497:24:2497:55 | ...::new(...) | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2498:9:2498:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2498:9:2498:12 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2498:9:2498:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2498:9:2498:12 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2498:9:2498:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2498:9:2498:12 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2498:9:2498:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2498:9:2498:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2498:9:2498:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | +| main.rs:2498:9:2498:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2498:9:2498:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | +| main.rs:2498:9:2498:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2498:21:2498:21 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2498:24:2498:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2498:24:2498:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2498:24:2498:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:2498:24:2498:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2498:33:2498:37 | "one" | | {EXTERNAL LOCATION} | & | +| main.rs:2498:33:2498:37 | "one" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2499:9:2499:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2499:9:2499:12 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2499:9:2499:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2499:9:2499:12 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2499:9:2499:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2499:9:2499:12 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2499:9:2499:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2499:9:2499:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2499:9:2499:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | +| main.rs:2499:9:2499:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2499:9:2499:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | +| main.rs:2499:9:2499:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2499:21:2499:21 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2499:24:2499:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2499:24:2499:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2499:24:2499:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:2499:24:2499:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2499:33:2499:37 | "two" | | {EXTERNAL LOCATION} | & | +| main.rs:2499:33:2499:37 | "two" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2500:9:2500:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2500:13:2500:15 | key | | {EXTERNAL LOCATION} | & | +| main.rs:2500:13:2500:15 | key | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2500:20:2500:23 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2500:20:2500:23 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2500:20:2500:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2500:20:2500:23 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2500:20:2500:23 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2500:20:2500:23 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2500:20:2500:23 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2500:20:2500:30 | map1.keys() | | {EXTERNAL LOCATION} | Keys | +| main.rs:2500:20:2500:30 | map1.keys() | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2500:20:2500:30 | map1.keys() | V | {EXTERNAL LOCATION} | Box | +| main.rs:2500:20:2500:30 | map1.keys() | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2500:20:2500:30 | map1.keys() | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2500:20:2500:30 | map1.keys() | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2500:32:2500:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2501:9:2501:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2501:13:2501:17 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2501:13:2501:17 | value | TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2501:13:2501:17 | value | TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2501:13:2501:17 | value | TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2501:13:2501:17 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2501:22:2501:25 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2501:22:2501:25 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2501:22:2501:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2501:22:2501:25 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2501:22:2501:25 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2501:22:2501:25 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2501:22:2501:25 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2501:22:2501:34 | map1.values() | | {EXTERNAL LOCATION} | Values | +| main.rs:2501:22:2501:34 | map1.values() | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2501:22:2501:34 | map1.values() | V | {EXTERNAL LOCATION} | Box | +| main.rs:2501:22:2501:34 | map1.values() | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2501:22:2501:34 | map1.values() | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2501:22:2501:34 | map1.values() | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2501:36:2501:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2502:9:2502:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2502:13:2502:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2502:13:2502:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | +| main.rs:2502:13:2502:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2502:13:2502:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | +| main.rs:2502:13:2502:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2502:13:2502:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2502:13:2502:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2502:13:2502:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2502:14:2502:16 | key | | {EXTERNAL LOCATION} | & | +| main.rs:2502:14:2502:16 | key | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2502:19:2502:23 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2502:19:2502:23 | value | TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2502:19:2502:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2502:19:2502:23 | value | TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2502:19:2502:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2502:29:2502:32 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2502:29:2502:32 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2502:29:2502:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2502:29:2502:32 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2502:29:2502:32 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2502:29:2502:32 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2502:29:2502:32 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2502:29:2502:39 | map1.iter() | | {EXTERNAL LOCATION} | Iter | +| main.rs:2502:29:2502:39 | map1.iter() | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2502:29:2502:39 | map1.iter() | V | {EXTERNAL LOCATION} | Box | +| main.rs:2502:29:2502:39 | map1.iter() | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2502:29:2502:39 | map1.iter() | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2502:29:2502:39 | map1.iter() | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2502:41:2502:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2503:9:2503:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2503:13:2503:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2503:13:2503:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | +| main.rs:2503:13:2503:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2503:13:2503:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | +| main.rs:2503:13:2503:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2503:13:2503:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2503:13:2503:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2503:13:2503:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2503:14:2503:16 | key | | {EXTERNAL LOCATION} | & | +| main.rs:2503:14:2503:16 | key | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2503:19:2503:23 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2503:19:2503:23 | value | TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2503:19:2503:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2503:19:2503:23 | value | TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2503:19:2503:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2503:29:2503:33 | &map1 | | {EXTERNAL LOCATION} | & | +| main.rs:2503:29:2503:33 | &map1 | TRef | {EXTERNAL LOCATION} | HashMap | +| main.rs:2503:29:2503:33 | &map1 | TRef.K | {EXTERNAL LOCATION} | i32 | +| main.rs:2503:29:2503:33 | &map1 | TRef.S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2503:29:2503:33 | &map1 | TRef.V | {EXTERNAL LOCATION} | Box | +| main.rs:2503:29:2503:33 | &map1 | TRef.V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2503:29:2503:33 | &map1 | TRef.V.T | {EXTERNAL LOCATION} | & | +| main.rs:2503:29:2503:33 | &map1 | TRef.V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2503:30:2503:33 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2503:30:2503:33 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2503:30:2503:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2503:30:2503:33 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2503:30:2503:33 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2503:30:2503:33 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2503:30:2503:33 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2503:35:2503:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2507:17:2507:17 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2507:26:2507:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2507:26:2507:26 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2509:13:2509:13 | _ | | {EXTERNAL LOCATION} | () | +| main.rs:2509:17:2512:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2509:23:2509:23 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2509:23:2509:28 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:2509:27:2509:28 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2510:9:2512:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2511:13:2511:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2511:13:2511:18 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:2511:18:2511:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2523:40:2525:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:2523:40:2525:9 | { ... } | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2523:40:2525:9 | { ... } | T.T | main.rs:2522:10:2522:19 | T | +| main.rs:2524:13:2524:16 | None | | {EXTERNAL LOCATION} | Option | +| main.rs:2524:13:2524:16 | None | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2524:13:2524:16 | None | T.T | main.rs:2522:10:2522:19 | T | +| main.rs:2527:30:2529:9 | { ... } | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2527:30:2529:9 | { ... } | T | main.rs:2522:10:2522:19 | T | +| main.rs:2528:13:2528:28 | S1(...) | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2528:13:2528:28 | S1(...) | T | main.rs:2522:10:2522:19 | T | +| main.rs:2528:16:2528:27 | ...::default(...) | | main.rs:2522:10:2522:19 | T | +| main.rs:2531:19:2531:22 | SelfParam | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2531:19:2531:22 | SelfParam | T | main.rs:2522:10:2522:19 | T | +| main.rs:2531:33:2533:9 | { ... } | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2531:33:2533:9 | { ... } | T | main.rs:2522:10:2522:19 | T | +| main.rs:2532:13:2532:16 | self | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2532:13:2532:16 | self | T | main.rs:2522:10:2522:19 | T | +| main.rs:2544:15:2544:15 | x | | main.rs:2544:12:2544:12 | T | +| main.rs:2544:26:2546:5 | { ... } | | main.rs:2544:12:2544:12 | T | +| main.rs:2545:9:2545:9 | x | | main.rs:2544:12:2544:12 | T | +| main.rs:2548:16:2570:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2549:13:2549:14 | x1 | | {EXTERNAL LOCATION} | Option | +| main.rs:2549:13:2549:14 | x1 | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2549:13:2549:14 | x1 | T.T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2550:13:2550:14 | x2 | | {EXTERNAL LOCATION} | Option | +| main.rs:2550:13:2550:14 | x2 | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2550:13:2550:14 | x2 | T.T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2551:13:2551:14 | x3 | | {EXTERNAL LOCATION} | Option | +| main.rs:2551:13:2551:14 | x3 | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2551:13:2551:14 | x3 | T.T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | +| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2552:13:2552:14 | x4 | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2552:13:2552:14 | x4 | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2552:18:2552:48 | ...::method(...) | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2552:18:2552:48 | ...::method(...) | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2552:35:2552:47 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2552:35:2552:47 | ...::default(...) | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2553:13:2553:14 | x5 | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2553:13:2553:14 | x5 | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2553:18:2553:42 | ...::method(...) | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2553:18:2553:42 | ...::method(...) | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2553:29:2553:41 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2553:29:2553:41 | ...::default(...) | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2554:13:2554:14 | x6 | | main.rs:2538:5:2538:27 | S4 | +| main.rs:2554:13:2554:14 | x6 | T4 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2554:18:2554:45 | S4::<...>(...) | | main.rs:2538:5:2538:27 | S4 | +| main.rs:2554:18:2554:45 | S4::<...>(...) | T4 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2554:27:2554:44 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | +| main.rs:2555:13:2555:14 | x7 | | main.rs:2538:5:2538:27 | S4 | +| main.rs:2555:13:2555:14 | x7 | T4 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2555:18:2555:23 | S4(...) | | main.rs:2538:5:2538:27 | S4 | +| main.rs:2555:18:2555:23 | S4(...) | T4 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2555:21:2555:22 | S2 | | main.rs:2519:5:2520:14 | S2 | +| main.rs:2556:13:2556:14 | x8 | | main.rs:2538:5:2538:27 | S4 | +| main.rs:2556:13:2556:14 | x8 | T4 | {EXTERNAL LOCATION} | i32 | +| main.rs:2556:18:2556:22 | S4(...) | | main.rs:2538:5:2538:27 | S4 | +| main.rs:2556:18:2556:22 | S4(...) | T4 | {EXTERNAL LOCATION} | i32 | +| main.rs:2556:21:2556:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2557:13:2557:14 | x9 | | main.rs:2538:5:2538:27 | S4 | +| main.rs:2557:13:2557:14 | x9 | T4 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2557:18:2557:34 | S4(...) | | main.rs:2538:5:2538:27 | S4 | +| main.rs:2557:18:2557:34 | S4(...) | T4 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2557:21:2557:33 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | +| main.rs:2558:13:2558:15 | x10 | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2558:13:2558:15 | x10 | T5 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2558:19:2561:9 | S5::<...> {...} | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2558:19:2561:9 | S5::<...> {...} | T5 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2560:20:2560:37 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | +| main.rs:2562:13:2562:15 | x11 | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2562:13:2562:15 | x11 | T5 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2562:19:2562:34 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2562:19:2562:34 | S5 {...} | T5 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2562:31:2562:32 | S2 | | main.rs:2519:5:2520:14 | S2 | +| main.rs:2563:13:2563:15 | x12 | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2563:13:2563:15 | x12 | T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:2563:19:2563:33 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2563:19:2563:33 | S5 {...} | T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:2563:31:2563:31 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2564:13:2564:15 | x13 | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2564:13:2564:15 | x13 | T5 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2564:19:2567:9 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | +| main.rs:2564:19:2567:9 | S5 {...} | T5 | main.rs:2519:5:2520:14 | S2 | +| main.rs:2566:20:2566:32 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | +| main.rs:2568:13:2568:15 | x14 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2568:19:2568:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2568:30:2568:47 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2569:13:2569:15 | x15 | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2569:13:2569:15 | x15 | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2569:19:2569:37 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | +| main.rs:2569:19:2569:37 | ...::default(...) | T | main.rs:2519:5:2520:14 | S2 | +| main.rs:2578:35:2580:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2578:35:2580:9 | { ... } | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2578:35:2580:9 | { ... } | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2579:13:2579:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2579:13:2579:26 | TupleExpr | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2579:13:2579:26 | TupleExpr | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2579:14:2579:18 | S1 {...} | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2579:21:2579:25 | S1 {...} | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2581:16:2581:19 | SelfParam | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2581:22:2581:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2584:16:2618:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2585:13:2585:13 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2585:13:2585:13 | a | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2585:13:2585:13 | a | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2585:17:2585:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2585:17:2585:30 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2585:17:2585:30 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2586:17:2586:17 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2586:17:2586:17 | b | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2586:17:2586:17 | b | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2586:21:2586:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2586:21:2586:34 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2586:21:2586:34 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2587:13:2587:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2587:13:2587:18 | TuplePat | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2587:13:2587:18 | TuplePat | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2587:14:2587:14 | c | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2587:17:2587:17 | d | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2587:22:2587:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2587:22:2587:35 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2587:22:2587:35 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2588:13:2588:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2588:13:2588:22 | TuplePat | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2588:13:2588:22 | TuplePat | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2588:18:2588:18 | e | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2588:21:2588:21 | f | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2588:26:2588:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2588:26:2588:39 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2588:26:2588:39 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2589:13:2589:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2589:13:2589:26 | TuplePat | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2589:13:2589:26 | TuplePat | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2589:18:2589:18 | g | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2589:25:2589:25 | h | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2589:30:2589:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2589:30:2589:43 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2589:30:2589:43 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2591:9:2591:9 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2591:9:2591:9 | a | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2591:9:2591:9 | a | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2591:9:2591:11 | a.0 | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2591:9:2591:17 | ... .foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2592:9:2592:9 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2592:9:2592:9 | b | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2592:9:2592:9 | b | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2592:9:2592:11 | b.1 | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2592:9:2592:17 | ... .foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2593:9:2593:9 | c | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2593:9:2593:15 | c.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2594:9:2594:9 | d | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2594:9:2594:15 | d.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2595:9:2595:9 | e | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2595:9:2595:15 | e.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2596:9:2596:9 | f | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2596:9:2596:15 | f.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2597:9:2597:9 | g | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2597:9:2597:15 | g.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2598:9:2598:9 | h | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2598:9:2598:15 | h.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2603:13:2603:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2603:17:2603:34 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2604:13:2604:13 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2604:17:2604:34 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2605:13:2605:16 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2605:13:2605:16 | pair | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2605:13:2605:16 | pair | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2605:20:2605:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2605:20:2605:25 | TupleExpr | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2605:20:2605:25 | TupleExpr | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2605:21:2605:21 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2605:24:2605:24 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2606:13:2606:13 | i | | {EXTERNAL LOCATION} | i64 | +| main.rs:2606:22:2606:25 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2606:22:2606:25 | pair | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2606:22:2606:25 | pair | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2606:22:2606:27 | pair.0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2607:13:2607:13 | j | | {EXTERNAL LOCATION} | bool | +| main.rs:2607:23:2607:26 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2607:23:2607:26 | pair | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2607:23:2607:26 | pair | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2607:23:2607:28 | pair.1 | | {EXTERNAL LOCATION} | bool | +| main.rs:2609:13:2609:16 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2609:13:2609:16 | pair | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2609:13:2609:16 | pair | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2609:20:2609:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2609:20:2609:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2609:20:2609:32 | ... .into() | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2609:20:2609:32 | ... .into() | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2609:20:2609:32 | ... .into() | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2609:21:2609:21 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2609:24:2609:24 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2610:9:2613:9 | match pair { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2610:15:2610:18 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2610:15:2610:18 | pair | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2610:15:2610:18 | pair | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2611:13:2611:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2611:13:2611:18 | TuplePat | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2611:13:2611:18 | TuplePat | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2611:14:2611:14 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2611:17:2611:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2611:23:2611:42 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2611:30:2611:41 | "unexpected" | | {EXTERNAL LOCATION} | & | +| main.rs:2611:30:2611:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2611:30:2611:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2611:30:2611:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2612:13:2612:13 | _ | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2612:13:2612:13 | _ | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2612:13:2612:13 | _ | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2612:18:2612:35 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2612:25:2612:34 | "expected" | | {EXTERNAL LOCATION} | & | +| main.rs:2612:25:2612:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2612:25:2612:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2612:25:2612:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2614:13:2614:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2614:17:2614:20 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2614:17:2614:20 | pair | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2614:17:2614:20 | pair | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2614:17:2614:22 | pair.0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2616:13:2616:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2616:13:2616:13 | y | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2616:13:2616:13 | y | TRef.T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2616:13:2616:13 | y | TRef.T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2616:17:2616:31 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2616:17:2616:31 | &... | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2616:17:2616:31 | &... | TRef.T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2616:17:2616:31 | &... | TRef.T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2616:18:2616:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2616:18:2616:31 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2616:18:2616:31 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2617:9:2617:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2617:9:2617:9 | y | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2617:9:2617:9 | y | TRef.T0 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2617:9:2617:9 | y | TRef.T1 | main.rs:2574:5:2575:16 | S1 | +| main.rs:2617:9:2617:11 | y.0 | | main.rs:2574:5:2575:16 | S1 | +| main.rs:2617:9:2617:17 | ... .foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2623:27:2645:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2624:13:2624:23 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2624:13:2624:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2624:13:2624:23 | boxed_value | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2624:27:2624:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2624:27:2624:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2624:27:2624:42 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2624:36:2624:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2627:9:2635:9 | match boxed_value { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2627:15:2627:25 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2627:15:2627:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2627:15:2627:25 | boxed_value | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2628:13:2628:19 | box 100 | | {EXTERNAL LOCATION} | Box | +| main.rs:2628:13:2628:19 | box 100 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2628:13:2628:19 | box 100 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2628:17:2628:19 | 100 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2628:24:2630:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2629:17:2629:37 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2629:26:2629:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2629:26:2629:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2629:26:2629:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2629:26:2629:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2629:26:2629:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2631:13:2631:17 | box ... | | {EXTERNAL LOCATION} | Box | +| main.rs:2631:13:2631:17 | box ... | A | {EXTERNAL LOCATION} | Global | +| main.rs:2631:13:2631:17 | box ... | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2631:22:2634:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2633:17:2633:52 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2633:26:2633:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2633:26:2633:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2633:26:2633:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2633:26:2633:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2633:26:2633:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2638:13:2638:22 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2638:13:2638:22 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2638:13:2638:22 | nested_box | T | {EXTERNAL LOCATION} | Box | +| main.rs:2638:13:2638:22 | nested_box | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2638:13:2638:22 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2638:26:2638:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2638:26:2638:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2638:26:2638:50 | ...::new(...) | T | {EXTERNAL LOCATION} | Box | +| main.rs:2638:26:2638:50 | ...::new(...) | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2638:26:2638:50 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2638:35:2638:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2638:35:2638:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2638:35:2638:49 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2638:44:2638:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2639:9:2644:9 | match nested_box { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2639:15:2639:24 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2639:15:2639:24 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2639:15:2639:24 | nested_box | T | {EXTERNAL LOCATION} | Box | +| main.rs:2639:15:2639:24 | nested_box | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2639:15:2639:24 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2640:13:2640:21 | box ... | | {EXTERNAL LOCATION} | Box | +| main.rs:2640:13:2640:21 | box ... | A | {EXTERNAL LOCATION} | Global | +| main.rs:2640:13:2640:21 | box ... | T | {EXTERNAL LOCATION} | Box | +| main.rs:2640:13:2640:21 | box ... | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2640:13:2640:21 | box ... | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2640:26:2643:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2642:17:2642:60 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2642:26:2642:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2642:26:2642:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2642:26:2642:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2642:26:2642:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2642:26:2642:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2654:36:2656:9 | { ... } | | main.rs:2651:5:2651:22 | Path | +| main.rs:2655:13:2655:19 | Path {...} | | main.rs:2651:5:2651:22 | Path | +| main.rs:2658:29:2658:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2658:29:2658:33 | SelfParam | TRef | main.rs:2651:5:2651:22 | Path | +| main.rs:2658:59:2660:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:2658:59:2660:9 | { ... } | E | {EXTERNAL LOCATION} | () | +| main.rs:2658:59:2660:9 | { ... } | T | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2659:13:2659:30 | Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2659:13:2659:30 | Ok(...) | E | {EXTERNAL LOCATION} | () | +| main.rs:2659:13:2659:30 | Ok(...) | T | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2659:16:2659:29 | ...::new(...) | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2666:39:2668:9 | { ... } | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2667:13:2667:22 | PathBuf {...} | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2676:18:2676:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2676:18:2676:22 | SelfParam | TRef | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2676:34:2680:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2676:34:2680:9 | { ... } | TRef | main.rs:2651:5:2651:22 | Path | +| main.rs:2678:33:2678:43 | ...::new(...) | | main.rs:2651:5:2651:22 | Path | +| main.rs:2679:13:2679:17 | &path | | {EXTERNAL LOCATION} | & | +| main.rs:2679:13:2679:17 | &path | TRef | main.rs:2651:5:2651:22 | Path | +| main.rs:2679:14:2679:17 | path | | main.rs:2651:5:2651:22 | Path | +| main.rs:2683:16:2691:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2684:13:2684:17 | path1 | | main.rs:2651:5:2651:22 | Path | +| main.rs:2684:21:2684:31 | ...::new(...) | | main.rs:2651:5:2651:22 | Path | +| main.rs:2685:13:2685:17 | path2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2685:13:2685:17 | path2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2685:13:2685:17 | path2 | T | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2685:21:2685:25 | path1 | | main.rs:2651:5:2651:22 | Path | +| main.rs:2685:21:2685:40 | path1.canonicalize() | | {EXTERNAL LOCATION} | Result | +| main.rs:2685:21:2685:40 | path1.canonicalize() | E | {EXTERNAL LOCATION} | () | +| main.rs:2685:21:2685:40 | path1.canonicalize() | T | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2686:13:2686:17 | path3 | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2686:21:2686:25 | path2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2686:21:2686:25 | path2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2686:21:2686:25 | path2 | T | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2686:21:2686:34 | path2.unwrap() | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2688:13:2688:20 | pathbuf1 | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2688:24:2688:37 | ...::new(...) | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2689:13:2689:20 | pathbuf2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2689:13:2689:20 | pathbuf2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2689:13:2689:20 | pathbuf2 | T | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2689:24:2689:31 | pathbuf1 | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2689:24:2689:46 | pathbuf1.canonicalize() | | {EXTERNAL LOCATION} | Result | +| main.rs:2689:24:2689:46 | pathbuf1.canonicalize() | E | {EXTERNAL LOCATION} | () | +| main.rs:2689:24:2689:46 | pathbuf1.canonicalize() | T | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2690:13:2690:20 | pathbuf3 | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2690:24:2690:31 | pathbuf2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2690:24:2690:31 | pathbuf2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2690:24:2690:31 | pathbuf2 | T | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2690:24:2690:40 | pathbuf2.unwrap() | | main.rs:2663:5:2663:25 | PathBuf | +| main.rs:2696:14:2696:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2696:14:2696:18 | SelfParam | TRef | main.rs:2695:5:2697:5 | Self [trait MyTrait] | +| main.rs:2703:14:2703:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2703:14:2703:18 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | +| main.rs:2703:14:2703:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2703:28:2705:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2704:13:2704:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2704:13:2704:16 | self | TRef | main.rs:2699:5:2700:19 | S | +| main.rs:2704:13:2704:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2704:13:2704:18 | self.0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2709:14:2709:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2709:14:2709:18 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | +| main.rs:2709:14:2709:18 | SelfParam | TRef.T | main.rs:2699:5:2700:19 | S | +| main.rs:2709:14:2709:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2709:28:2711:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2710:13:2710:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2710:13:2710:16 | self | TRef | main.rs:2699:5:2700:19 | S | +| main.rs:2710:13:2710:16 | self | TRef.T | main.rs:2699:5:2700:19 | S | +| main.rs:2710:13:2710:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2710:13:2710:18 | self.0 | | main.rs:2699:5:2700:19 | S | +| main.rs:2710:13:2710:18 | self.0 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2710:13:2710:21 | ... .0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2715:15:2715:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2715:15:2715:19 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | +| main.rs:2715:15:2715:19 | SelfParam | TRef.T | main.rs:2714:10:2714:16 | T | +| main.rs:2715:33:2717:9 | { ... } | | main.rs:2699:5:2700:19 | S | +| main.rs:2715:33:2717:9 | { ... } | T | main.rs:2699:5:2700:19 | S | +| main.rs:2715:33:2717:9 | { ... } | T.T | main.rs:2714:10:2714:16 | T | +| main.rs:2716:13:2716:24 | S(...) | | main.rs:2699:5:2700:19 | S | +| main.rs:2716:13:2716:24 | S(...) | T | main.rs:2699:5:2700:19 | S | +| main.rs:2716:13:2716:24 | S(...) | T.T | main.rs:2714:10:2714:16 | T | +| main.rs:2716:15:2716:23 | S(...) | | main.rs:2699:5:2700:19 | S | +| main.rs:2716:15:2716:23 | S(...) | T | main.rs:2714:10:2714:16 | T | +| main.rs:2716:17:2716:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2716:17:2716:20 | self | TRef | main.rs:2699:5:2700:19 | S | +| main.rs:2716:17:2716:20 | self | TRef.T | main.rs:2714:10:2714:16 | T | +| main.rs:2716:17:2716:22 | self.0 | | main.rs:2714:10:2714:16 | T | +| main.rs:2720:14:2720:14 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2720:48:2737:5 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2720:48:2737:5 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2720:48:2737:5 | { ... } | T | main.rs:2695:5:2697:5 | dyn MyTrait | +| main.rs:2720:48:2737:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2721:13:2721:13 | x | | main.rs:2699:5:2700:19 | S | +| main.rs:2721:13:2721:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2721:17:2726:9 | if b {...} else {...} | | main.rs:2699:5:2700:19 | S | +| main.rs:2721:17:2726:9 | if b {...} else {...} | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2721:20:2721:20 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2721:22:2724:9 | { ... } | | main.rs:2699:5:2700:19 | S | +| main.rs:2721:22:2724:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2722:17:2722:17 | y | | main.rs:2699:5:2700:19 | S | +| main.rs:2722:17:2722:17 | y | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2722:21:2722:38 | ...::default(...) | | main.rs:2699:5:2700:19 | S | +| main.rs:2722:21:2722:38 | ...::default(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2723:13:2723:13 | y | | main.rs:2699:5:2700:19 | S | +| main.rs:2723:13:2723:13 | y | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2724:16:2726:9 | { ... } | | main.rs:2699:5:2700:19 | S | +| main.rs:2724:16:2726:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2725:13:2725:16 | S(...) | | main.rs:2699:5:2700:19 | S | +| main.rs:2725:13:2725:16 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2725:15:2725:15 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2730:13:2730:13 | x | | main.rs:2699:5:2700:19 | S | +| main.rs:2730:13:2730:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2730:17:2730:20 | S(...) | | main.rs:2699:5:2700:19 | S | +| main.rs:2730:17:2730:20 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2730:19:2730:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2731:9:2736:9 | if b {...} else {...} | | {EXTERNAL LOCATION} | Box | +| main.rs:2731:9:2736:9 | if b {...} else {...} | A | {EXTERNAL LOCATION} | Global | +| main.rs:2731:9:2736:9 | if b {...} else {...} | T | main.rs:2695:5:2697:5 | dyn MyTrait | +| main.rs:2731:9:2736:9 | if b {...} else {...} | T | main.rs:2699:5:2700:19 | S | +| main.rs:2731:9:2736:9 | if b {...} else {...} | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2731:9:2736:9 | if b {...} else {...} | T.T | main.rs:2699:5:2700:19 | S | +| main.rs:2731:9:2736:9 | if b {...} else {...} | T.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2731:9:2736:9 | if b {...} else {...} | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2731:12:2731:12 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2731:14:2734:9 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2731:14:2734:9 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2731:14:2734:9 | { ... } | T | main.rs:2695:5:2697:5 | dyn MyTrait | +| main.rs:2731:14:2734:9 | { ... } | T | main.rs:2699:5:2700:19 | S | +| main.rs:2731:14:2734:9 | { ... } | T.T | main.rs:2699:5:2700:19 | S | +| main.rs:2731:14:2734:9 | { ... } | T.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2731:14:2734:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2732:17:2732:17 | x | | main.rs:2699:5:2700:19 | S | +| main.rs:2732:17:2732:17 | x | T | main.rs:2699:5:2700:19 | S | +| main.rs:2732:17:2732:17 | x | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2732:21:2732:21 | x | | main.rs:2699:5:2700:19 | S | +| main.rs:2732:21:2732:21 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2732:21:2732:26 | x.m2() | | main.rs:2699:5:2700:19 | S | +| main.rs:2732:21:2732:26 | x.m2() | T | main.rs:2699:5:2700:19 | S | +| main.rs:2732:21:2732:26 | x.m2() | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2733:13:2733:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2733:13:2733:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2733:13:2733:23 | ...::new(...) | T | main.rs:2695:5:2697:5 | dyn MyTrait | +| main.rs:2733:13:2733:23 | ...::new(...) | T | main.rs:2699:5:2700:19 | S | +| main.rs:2733:13:2733:23 | ...::new(...) | T.T | main.rs:2699:5:2700:19 | S | +| main.rs:2733:13:2733:23 | ...::new(...) | T.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2733:13:2733:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2733:22:2733:22 | x | | main.rs:2699:5:2700:19 | S | +| main.rs:2733:22:2733:22 | x | T | main.rs:2699:5:2700:19 | S | +| main.rs:2733:22:2733:22 | x | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2734:16:2736:9 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2734:16:2736:9 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2734:16:2736:9 | { ... } | T | main.rs:2695:5:2697:5 | dyn MyTrait | +| main.rs:2734:16:2736:9 | { ... } | T | main.rs:2699:5:2700:19 | S | +| main.rs:2734:16:2736:9 | { ... } | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2734:16:2736:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2735:13:2735:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2735:13:2735:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2735:13:2735:23 | ...::new(...) | T | main.rs:2695:5:2697:5 | dyn MyTrait | +| main.rs:2735:13:2735:23 | ...::new(...) | T | main.rs:2699:5:2700:19 | S | +| main.rs:2735:13:2735:23 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2735:13:2735:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2735:22:2735:22 | x | | main.rs:2699:5:2700:19 | S | +| main.rs:2735:22:2735:22 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2741:22:2745:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2742:18:2742:18 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2742:33:2744:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2743:13:2743:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2743:13:2743:17 | ... + ... | | {EXTERNAL LOCATION} | i32 | +| main.rs:2743:17:2743:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2750:11:2750:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2750:30:2758:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2752:13:2752:13 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2752:17:2756:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2753:13:2755:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2753:16:2753:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2753:21:2755:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2754:24:2754:25 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2757:9:2757:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2761:20:2768:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2764:26:2764:27 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2766:9:2766:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2766:18:2766:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2766:18:2766:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2766:18:2766:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2766:18:2766:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2766:18:2766:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2767:9:2767:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2770:20:2772:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2771:16:2771:16 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2775:11:2775:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2775:30:2783:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2776:13:2776:13 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2776:17:2780:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2777:13:2779:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2777:16:2777:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2777:21:2779:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2778:24:2778:25 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2781:9:2781:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2781:18:2781:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2781:18:2781:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2781:18:2781:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2781:18:2781:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2781:18:2781:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2781:29:2781:29 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2782:9:2782:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2787:16:2834:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2788:13:2788:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2788:13:2788:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2788:17:2788:20 | None | | {EXTERNAL LOCATION} | Option | +| main.rs:2788:17:2788:20 | None | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2789:13:2789:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2789:13:2789:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2789:30:2789:30 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2789:30:2789:30 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2790:13:2790:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2790:13:2790:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2790:17:2790:35 | ...::None | | {EXTERNAL LOCATION} | Option | +| main.rs:2790:17:2790:35 | ...::None | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2791:13:2791:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2791:13:2791:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2791:17:2791:35 | ...::None::<...> | | {EXTERNAL LOCATION} | Option | +| main.rs:2791:17:2791:35 | ...::None::<...> | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2793:26:2793:28 | opt | | {EXTERNAL LOCATION} | Option | +| main.rs:2793:26:2793:28 | opt | T | main.rs:2793:23:2793:23 | T | +| main.rs:2793:42:2793:42 | x | | main.rs:2793:23:2793:23 | T | +| main.rs:2793:48:2793:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2795:13:2795:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2795:13:2795:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2795:17:2795:20 | None | | {EXTERNAL LOCATION} | Option | +| main.rs:2795:17:2795:20 | None | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2796:9:2796:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2796:20:2796:20 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2796:20:2796:20 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2796:23:2796:23 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2803:13:2803:13 | x | | main.rs:2798:9:2801:9 | MyEither | | main.rs:2803:13:2803:13 | x | T1 | {EXTERNAL LOCATION} | i32 | | main.rs:2803:13:2803:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2803:17:2805:9 | ...::B {...} | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2803:17:2805:9 | ...::B {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2803:17:2805:9 | ...::B {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2804:20:2804:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2806:9:2806:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2806:23:2806:23 | x | | main.rs:2787:9:2790:9 | MyEither | -| main.rs:2806:23:2806:23 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2806:23:2806:23 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2806:26:2806:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2808:13:2808:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2808:13:2808:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2808:13:2808:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2808:17:2808:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2808:17:2808:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | -| main.rs:2808:17:2808:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2808:28:2808:28 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2809:13:2809:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2809:13:2809:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2809:13:2809:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2809:38:2809:38 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2809:38:2809:38 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2809:38:2809:38 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2810:13:2810:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2810:13:2810:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2810:13:2810:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2810:17:2810:44 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2810:17:2810:44 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | -| main.rs:2810:17:2810:44 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2810:43:2810:43 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2811:13:2811:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2811:13:2811:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2811:13:2811:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2811:17:2811:44 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2811:17:2811:44 | ...::Ok::<...>(...) | E | {EXTERNAL LOCATION} | String | -| main.rs:2811:17:2811:44 | ...::Ok::<...>(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2811:43:2811:43 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2813:29:2813:31 | res | | {EXTERNAL LOCATION} | Result | -| main.rs:2813:29:2813:31 | res | E | main.rs:2813:26:2813:26 | E | -| main.rs:2813:29:2813:31 | res | T | main.rs:2813:23:2813:23 | T | -| main.rs:2813:48:2813:48 | x | | main.rs:2813:26:2813:26 | E | -| main.rs:2813:54:2813:55 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2815:13:2815:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2815:13:2815:13 | x | E | {EXTERNAL LOCATION} | bool | -| main.rs:2815:13:2815:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2815:17:2815:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2815:17:2815:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | bool | -| main.rs:2815:17:2815:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2815:28:2815:28 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2816:9:2816:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2816:20:2816:20 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2816:20:2816:20 | x | E | {EXTERNAL LOCATION} | bool | -| main.rs:2816:20:2816:20 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2816:23:2816:27 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:2818:17:2818:17 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2818:17:2818:17 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2818:17:2818:17 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2818:21:2818:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2818:21:2818:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2818:21:2818:30 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2819:9:2819:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2819:9:2819:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2819:9:2819:9 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2819:9:2819:17 | x.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2819:16:2819:16 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2821:13:2821:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:2821:17:2821:34 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2822:9:2822:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2822:9:2822:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2822:9:2822:9 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2822:9:2822:17 | x.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2822:16:2822:16 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:2829:14:2829:17 | SelfParam | | main.rs:2827:5:2835:5 | Self [trait MyTrait] | -| main.rs:2832:14:2832:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2832:14:2832:18 | SelfParam | TRef | main.rs:2827:5:2835:5 | Self [trait MyTrait] | -| main.rs:2832:21:2832:25 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2832:21:2832:25 | other | TRef | main.rs:2827:5:2835:5 | Self [trait MyTrait] | -| main.rs:2832:44:2834:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2832:44:2834:9 | { ... } | TRef | main.rs:2827:5:2835:5 | Self [trait MyTrait] | -| main.rs:2833:13:2833:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2833:13:2833:16 | self | TRef | main.rs:2827:5:2835:5 | Self [trait MyTrait] | -| main.rs:2833:13:2833:20 | self.f() | | {EXTERNAL LOCATION} | & | -| main.rs:2833:13:2833:20 | self.f() | TRef | main.rs:2827:5:2835:5 | Self [trait MyTrait] | -| main.rs:2839:14:2839:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | -| main.rs:2839:28:2841:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2840:13:2840:16 | self | | {EXTERNAL LOCATION} | i32 | -| main.rs:2846:14:2846:17 | SelfParam | | {EXTERNAL LOCATION} | usize | -| main.rs:2846:28:2848:9 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2847:13:2847:16 | self | | {EXTERNAL LOCATION} | usize | -| main.rs:2853:14:2853:17 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2853:14:2853:17 | SelfParam | TRef | main.rs:2851:10:2851:10 | T | -| main.rs:2853:28:2855:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2853:28:2855:9 | { ... } | TRef | main.rs:2851:10:2851:10 | T | -| main.rs:2854:13:2854:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2854:13:2854:16 | self | TRef | main.rs:2851:10:2851:10 | T | -| main.rs:2858:25:2862:5 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2859:17:2859:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2859:17:2859:17 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2859:21:2859:21 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2859:21:2859:21 | 0 | | {EXTERNAL LOCATION} | usize | -| main.rs:2860:9:2860:9 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2860:9:2860:9 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2860:9:2860:17 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:2860:13:2860:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2860:13:2860:13 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2860:13:2860:17 | x.f() | | {EXTERNAL LOCATION} | i32 | -| main.rs:2860:13:2860:17 | x.f() | | {EXTERNAL LOCATION} | usize | -| main.rs:2861:9:2861:9 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2861:9:2861:9 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2864:12:2872:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2865:13:2865:13 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2865:24:2865:24 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2865:24:2865:24 | 0 | | {EXTERNAL LOCATION} | usize | -| main.rs:2866:13:2866:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2866:13:2866:13 | y | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2866:17:2866:18 | &1 | | {EXTERNAL LOCATION} | & | -| main.rs:2866:17:2866:18 | &1 | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2866:18:2866:18 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2867:13:2867:13 | z | | {EXTERNAL LOCATION} | & | -| main.rs:2867:13:2867:13 | z | TRef | {EXTERNAL LOCATION} | usize | -| main.rs:2867:17:2867:17 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2867:17:2867:22 | x.g(...) | | {EXTERNAL LOCATION} | & | -| main.rs:2867:17:2867:22 | x.g(...) | TRef | {EXTERNAL LOCATION} | usize | -| main.rs:2867:21:2867:21 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2867:21:2867:21 | y | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2869:13:2869:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2869:17:2869:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2870:13:2870:13 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2870:24:2870:24 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2870:24:2870:24 | 1 | | {EXTERNAL LOCATION} | usize | -| main.rs:2871:13:2871:13 | z | | {EXTERNAL LOCATION} | i32 | -| main.rs:2871:17:2871:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2871:17:2871:24 | x.max(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2871:23:2871:23 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2881:11:2916:1 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2882:5:2882:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2883:5:2883:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2884:5:2884:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2884:20:2884:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2884:41:2884:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2885:5:2885:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2886:5:2886:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2887:5:2887:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2888:5:2888:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2889:5:2889:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2890:5:2890:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2891:5:2891:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2892:5:2892:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2893:5:2893:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2894:5:2894:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2895:5:2895:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2896:5:2896:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2897:5:2897:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2898:5:2898:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2899:5:2899:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2900:5:2900:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2900:5:2900:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2901:5:2901:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2902:5:2902:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2903:5:2903:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2904:5:2904:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2905:5:2905:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2906:5:2906:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2907:5:2907:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2908:5:2908:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2909:5:2909:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2910:5:2910:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2911:5:2911:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2912:5:2912:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2913:5:2913:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2914:5:2914:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2914:5:2914:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2914:5:2914:20 | ...::f(...) | T | main.rs:2684:5:2686:5 | dyn MyTrait | -| main.rs:2914:5:2914:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2914:16:2914:19 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2915:5:2915:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2803:17:2803:39 | ...::A {...} | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2803:17:2803:39 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2803:17:2803:39 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2803:37:2803:37 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2804:13:2804:13 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2804:13:2804:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2804:13:2804:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2804:40:2804:40 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2804:40:2804:40 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2804:40:2804:40 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2805:13:2805:13 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2805:13:2805:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2805:13:2805:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2805:17:2805:52 | ...::A {...} | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2805:17:2805:52 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2805:17:2805:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2805:50:2805:50 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2807:13:2807:13 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2807:13:2807:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2807:13:2807:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2807:17:2809:9 | ...::B::<...> {...} | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2807:17:2809:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2807:17:2809:9 | ...::B::<...> {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2808:20:2808:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2811:29:2811:29 | e | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2811:29:2811:29 | e | T1 | main.rs:2811:26:2811:26 | T | +| main.rs:2811:29:2811:29 | e | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2811:53:2811:53 | x | | main.rs:2811:26:2811:26 | T | +| main.rs:2811:59:2811:60 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2814:13:2814:13 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2814:13:2814:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2814:13:2814:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2814:17:2816:9 | ...::B {...} | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2814:17:2816:9 | ...::B {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2814:17:2816:9 | ...::B {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2815:20:2815:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2817:9:2817:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2817:23:2817:23 | x | | main.rs:2798:9:2801:9 | MyEither | +| main.rs:2817:23:2817:23 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2817:23:2817:23 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2817:26:2817:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2819:13:2819:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2819:13:2819:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2819:13:2819:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2819:17:2819:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2819:17:2819:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | +| main.rs:2819:17:2819:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2819:28:2819:28 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2820:13:2820:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2820:13:2820:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2820:13:2820:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2820:38:2820:38 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2820:38:2820:38 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2820:38:2820:38 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2821:13:2821:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2821:13:2821:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2821:13:2821:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2821:17:2821:44 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2821:17:2821:44 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | +| main.rs:2821:17:2821:44 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2821:43:2821:43 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2822:13:2822:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2822:13:2822:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2822:13:2822:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2822:17:2822:44 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2822:17:2822:44 | ...::Ok::<...>(...) | E | {EXTERNAL LOCATION} | String | +| main.rs:2822:17:2822:44 | ...::Ok::<...>(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2822:43:2822:43 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2824:29:2824:31 | res | | {EXTERNAL LOCATION} | Result | +| main.rs:2824:29:2824:31 | res | E | main.rs:2824:26:2824:26 | E | +| main.rs:2824:29:2824:31 | res | T | main.rs:2824:23:2824:23 | T | +| main.rs:2824:48:2824:48 | x | | main.rs:2824:26:2824:26 | E | +| main.rs:2824:54:2824:55 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2826:13:2826:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2826:13:2826:13 | x | E | {EXTERNAL LOCATION} | bool | +| main.rs:2826:13:2826:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2826:17:2826:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2826:17:2826:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | bool | +| main.rs:2826:17:2826:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2826:28:2826:28 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2827:9:2827:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2827:20:2827:20 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2827:20:2827:20 | x | E | {EXTERNAL LOCATION} | bool | +| main.rs:2827:20:2827:20 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2827:23:2827:27 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:2829:17:2829:17 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2829:17:2829:17 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2829:17:2829:17 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2829:21:2829:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2829:21:2829:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2829:21:2829:30 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2830:9:2830:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2830:9:2830:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2830:9:2830:9 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2830:9:2830:17 | x.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2830:16:2830:16 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2832:13:2832:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:2832:17:2832:34 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2833:9:2833:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2833:9:2833:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2833:9:2833:9 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2833:9:2833:17 | x.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2833:16:2833:16 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:2840:14:2840:17 | SelfParam | | main.rs:2838:5:2846:5 | Self [trait MyTrait] | +| main.rs:2843:14:2843:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2843:14:2843:18 | SelfParam | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | +| main.rs:2843:21:2843:25 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2843:21:2843:25 | other | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | +| main.rs:2843:44:2845:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2843:44:2845:9 | { ... } | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | +| main.rs:2844:13:2844:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2844:13:2844:16 | self | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | +| main.rs:2844:13:2844:20 | self.f() | | {EXTERNAL LOCATION} | & | +| main.rs:2844:13:2844:20 | self.f() | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | +| main.rs:2850:14:2850:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| main.rs:2850:28:2852:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2851:13:2851:16 | self | | {EXTERNAL LOCATION} | i32 | +| main.rs:2857:14:2857:17 | SelfParam | | {EXTERNAL LOCATION} | usize | +| main.rs:2857:28:2859:9 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2858:13:2858:16 | self | | {EXTERNAL LOCATION} | usize | +| main.rs:2864:14:2864:17 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2864:14:2864:17 | SelfParam | TRef | main.rs:2862:10:2862:10 | T | +| main.rs:2864:28:2866:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2864:28:2866:9 | { ... } | TRef | main.rs:2862:10:2862:10 | T | +| main.rs:2865:13:2865:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2865:13:2865:16 | self | TRef | main.rs:2862:10:2862:10 | T | +| main.rs:2869:25:2873:5 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2870:17:2870:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2870:17:2870:17 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2870:21:2870:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2870:21:2870:21 | 0 | | {EXTERNAL LOCATION} | usize | +| main.rs:2871:9:2871:9 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2871:9:2871:9 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2871:9:2871:17 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:2871:13:2871:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2871:13:2871:13 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2871:13:2871:17 | x.f() | | {EXTERNAL LOCATION} | i32 | +| main.rs:2871:13:2871:17 | x.f() | | {EXTERNAL LOCATION} | usize | +| main.rs:2872:9:2872:9 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2872:9:2872:9 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2875:12:2883:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2876:13:2876:13 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2876:24:2876:24 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2876:24:2876:24 | 0 | | {EXTERNAL LOCATION} | usize | +| main.rs:2877:13:2877:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2877:13:2877:13 | y | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2877:17:2877:18 | &1 | | {EXTERNAL LOCATION} | & | +| main.rs:2877:17:2877:18 | &1 | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2877:18:2877:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2878:13:2878:13 | z | | {EXTERNAL LOCATION} | & | +| main.rs:2878:13:2878:13 | z | TRef | {EXTERNAL LOCATION} | usize | +| main.rs:2878:17:2878:17 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2878:17:2878:22 | x.g(...) | | {EXTERNAL LOCATION} | & | +| main.rs:2878:17:2878:22 | x.g(...) | TRef | {EXTERNAL LOCATION} | usize | +| main.rs:2878:21:2878:21 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2878:21:2878:21 | y | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2880:13:2880:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2880:17:2880:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2881:13:2881:13 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2881:24:2881:24 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2881:24:2881:24 | 1 | | {EXTERNAL LOCATION} | usize | +| main.rs:2882:13:2882:13 | z | | {EXTERNAL LOCATION} | i32 | +| main.rs:2882:17:2882:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2882:17:2882:24 | x.max(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2882:23:2882:23 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2892:11:2927:1 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2893:5:2893:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2894:5:2894:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2895:5:2895:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2895:20:2895:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2895:41:2895:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2896:5:2896:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2897:5:2897:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2898:5:2898:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2899:5:2899:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2900:5:2900:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2901:5:2901:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2902:5:2902:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2903:5:2903:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2904:5:2904:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2905:5:2905:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2906:5:2906:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2907:5:2907:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2908:5:2908:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2909:5:2909:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2910:5:2910:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2911:5:2911:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2911:5:2911:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2912:5:2912:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2913:5:2913:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2914:5:2914:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2915:5:2915:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2916:5:2916:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2917:5:2917:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2918:5:2918:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2919:5:2919:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2920:5:2920:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2921:5:2921:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2922:5:2922:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2923:5:2923:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2924:5:2924:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2925:5:2925:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2925:5:2925:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2925:5:2925:20 | ...::f(...) | T | main.rs:2695:5:2697:5 | dyn MyTrait | +| main.rs:2925:5:2925:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2925:16:2925:19 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2926:5:2926:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:13:26:133:1 | { ... } | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:13:26:133:1 | { ... } | T | {EXTERNAL LOCATION} | () | | pattern_matching.rs:14:9:14:13 | value | | {EXTERNAL LOCATION} | Option | From 8f6f7d0985c9d1973dbf94a826f430cc46c115ec Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Fri, 23 Jan 2026 10:07:11 +0100 Subject: [PATCH 129/433] Rust: Fix typo Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- rust/ql/test/library-tests/path-resolution/main.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/ql/test/library-tests/path-resolution/main.rs b/rust/ql/test/library-tests/path-resolution/main.rs index d44d0d84ce09..0c60ac9d2d01 100644 --- a/rust/ql/test/library-tests/path-resolution/main.rs +++ b/rust/ql/test/library-tests/path-resolution/main.rs @@ -938,7 +938,7 @@ mod patterns { } } -/// Tests for refering to constructors via `Self` +/// Tests for referring to constructors via `Self` mod self_constructors { struct TupleStruct(i32); // $ item=i32 From ecd247bf1655a881652ef24ee8ec67137d1b80a9 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Fri, 23 Jan 2026 11:31:15 +0100 Subject: [PATCH 130/433] C++: Add MaD models for MySQL escaping --- cpp/ql/lib/ext/MySql.model.yml | 14 ++++++++++++++ .../code/cpp/models/implementations/MySql.qll | 14 -------------- 2 files changed, 14 insertions(+), 14 deletions(-) create mode 100644 cpp/ql/lib/ext/MySql.model.yml diff --git a/cpp/ql/lib/ext/MySql.model.yml b/cpp/ql/lib/ext/MySql.model.yml new file mode 100644 index 000000000000..93608177efdc --- /dev/null +++ b/cpp/ql/lib/ext/MySql.model.yml @@ -0,0 +1,14 @@ +# partial model of the MySQL api +extensions: + - addsTo: + pack: codeql/cpp-all + extensible: summaryModel + data: # namespace, type, subtypes, name, signature, ext, input, output, kind, provenance + - ["", "", False, "mysql_real_escape_string", "", "", "Argument[*2]", "Argument[*1]", "taint", "manual"] + - ["", "", False, "mysql_real_escape_string_quote", "", "", "Argument[*2]", "Argument[*1]", "taint", "manual"] + - addsTo: + pack: codeql/cpp-all + extensible: barrierModel + data: # namespace, type, subtypes, name, signature, ext, output, kind, provenance + - ["", "", False, "mysql_real_escape_string", "", "", "Argument[*1]", "sql-injection", "manual"] + - ["", "", False, "mysql_real_escape_string_quote", "", "", "Argument[*1]", "sql-injection", "manual"] diff --git a/cpp/ql/lib/semmle/code/cpp/models/implementations/MySql.qll b/cpp/ql/lib/semmle/code/cpp/models/implementations/MySql.qll index ca5d7020158c..b3fc722b0ed0 100644 --- a/cpp/ql/lib/semmle/code/cpp/models/implementations/MySql.qll +++ b/cpp/ql/lib/semmle/code/cpp/models/implementations/MySql.qll @@ -16,17 +16,3 @@ private class MySqlExecutionFunction extends SqlExecutionFunction { override predicate hasSqlArgument(FunctionInput input) { input.isParameterDeref(1) } } - -/** - * The `mysql_real_escape_string` family of functions from the MySQL C API. - */ -private class MySqlBarrierFunction extends SqlBarrierFunction { - MySqlBarrierFunction() { - this.hasName(["mysql_real_escape_string", "mysql_real_escape_string_quote"]) - } - - override predicate barrierSqlArgument(FunctionInput input, FunctionOutput output) { - input.isParameterDeref(2) and - output.isParameterDeref(1) - } -} From 7ed1c0a2eed2d8e0998ccc0f8d20bc4928977337 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Fri, 23 Jan 2026 14:09:10 +0100 Subject: [PATCH 131/433] C++: Add change note --- cpp/ql/lib/change-notes/2026-01-23-mysql.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/lib/change-notes/2026-01-23-mysql.md diff --git a/cpp/ql/lib/change-notes/2026-01-23-mysql.md b/cpp/ql/lib/change-notes/2026-01-23-mysql.md new file mode 100644 index 000000000000..ee4268f8152c --- /dev/null +++ b/cpp/ql/lib/change-notes/2026-01-23-mysql.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* Added `taint` summary models and `sql-injection` barrier models for the mySQL `mysql_real_escape_string` and `mysql_real_escape_string_quote` escaping functions. From dc26a57548370ac80709d7a022591d74f62f3242 Mon Sep 17 00:00:00 2001 From: Chris Smowton Date: Fri, 23 Jan 2026 15:03:33 +0000 Subject: [PATCH 132/433] Use posessive quantifier to avoid stack overflow on large ${{}} expressions --- actions/ql/lib/codeql/actions/ast/internal/Ast.qll | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/actions/ql/lib/codeql/actions/ast/internal/Ast.qll b/actions/ql/lib/codeql/actions/ast/internal/Ast.qll index b922214e21c5..6c2adbf461fd 100644 --- a/actions/ql/lib/codeql/actions/ast/internal/Ast.qll +++ b/actions/ql/lib/codeql/actions/ast/internal/Ast.qll @@ -27,8 +27,8 @@ string getADelimitedExpression(YamlString s, int offset) { // not just the last (greedy match) or first (reluctant match). result = s.getValue() - .regexpFind("\\$\\{\\{(?:[^}]|}(?!}))*\\}\\}", _, offset) - .regexpCapture("(\\$\\{\\{(?:[^}]|}(?!}))*\\}\\})", 1) + .regexpFind("\\$\\{\\{(?:[^}]|}(?!}))*+\\}\\}", _, offset) + .regexpCapture("(\\$\\{\\{(?:[^}]|}(?!}))*+\\}\\})", 1) .trim() } From 6c2e0f765811ebde2c283036a69a7e31ebb6d19d Mon Sep 17 00:00:00 2001 From: Chris Smowton Date: Fri, 23 Jan 2026 15:06:07 +0000 Subject: [PATCH 133/433] Move library tests into subdirectory --- .../test/library-tests/{ => basic}/.github/workflows/commands.yml | 0 .../{ => basic}/.github/workflows/expression_nodes.yml | 0 .../library-tests/{ => basic}/.github/workflows/many_strings.yml | 0 .../library-tests/{ => basic}/.github/workflows/multiline.yml | 0 .../library-tests/{ => basic}/.github/workflows/multiline2.yml | 0 .../{ => basic}/.github/workflows/poisonable_steps.yml | 0 .../ql/test/library-tests/{ => basic}/.github/workflows/shell.yml | 0 .../ql/test/library-tests/{ => basic}/.github/workflows/test.yml | 0 actions/ql/test/library-tests/{ => basic}/commands.expected | 0 actions/ql/test/library-tests/{ => basic}/commands.ql | 0 .../ql/test/library-tests/{ => basic}/poisonable_steps.expected | 0 actions/ql/test/library-tests/{ => basic}/poisonable_steps.ql | 0 actions/ql/test/library-tests/{ => basic}/test.expected | 0 actions/ql/test/library-tests/{ => basic}/test.ql | 0 actions/ql/test/library-tests/{ => basic}/workflowenum.expected | 0 actions/ql/test/library-tests/{ => basic}/workflowenum.ql | 0 16 files changed, 0 insertions(+), 0 deletions(-) rename actions/ql/test/library-tests/{ => basic}/.github/workflows/commands.yml (100%) rename actions/ql/test/library-tests/{ => basic}/.github/workflows/expression_nodes.yml (100%) rename actions/ql/test/library-tests/{ => basic}/.github/workflows/many_strings.yml (100%) rename actions/ql/test/library-tests/{ => basic}/.github/workflows/multiline.yml (100%) rename actions/ql/test/library-tests/{ => basic}/.github/workflows/multiline2.yml (100%) rename actions/ql/test/library-tests/{ => basic}/.github/workflows/poisonable_steps.yml (100%) rename actions/ql/test/library-tests/{ => basic}/.github/workflows/shell.yml (100%) rename actions/ql/test/library-tests/{ => basic}/.github/workflows/test.yml (100%) rename actions/ql/test/library-tests/{ => basic}/commands.expected (100%) rename actions/ql/test/library-tests/{ => basic}/commands.ql (100%) rename actions/ql/test/library-tests/{ => basic}/poisonable_steps.expected (100%) rename actions/ql/test/library-tests/{ => basic}/poisonable_steps.ql (100%) rename actions/ql/test/library-tests/{ => basic}/test.expected (100%) rename actions/ql/test/library-tests/{ => basic}/test.ql (100%) rename actions/ql/test/library-tests/{ => basic}/workflowenum.expected (100%) rename actions/ql/test/library-tests/{ => basic}/workflowenum.ql (100%) diff --git a/actions/ql/test/library-tests/.github/workflows/commands.yml b/actions/ql/test/library-tests/basic/.github/workflows/commands.yml similarity index 100% rename from actions/ql/test/library-tests/.github/workflows/commands.yml rename to actions/ql/test/library-tests/basic/.github/workflows/commands.yml diff --git a/actions/ql/test/library-tests/.github/workflows/expression_nodes.yml b/actions/ql/test/library-tests/basic/.github/workflows/expression_nodes.yml similarity index 100% rename from actions/ql/test/library-tests/.github/workflows/expression_nodes.yml rename to actions/ql/test/library-tests/basic/.github/workflows/expression_nodes.yml diff --git a/actions/ql/test/library-tests/.github/workflows/many_strings.yml b/actions/ql/test/library-tests/basic/.github/workflows/many_strings.yml similarity index 100% rename from actions/ql/test/library-tests/.github/workflows/many_strings.yml rename to actions/ql/test/library-tests/basic/.github/workflows/many_strings.yml diff --git a/actions/ql/test/library-tests/.github/workflows/multiline.yml b/actions/ql/test/library-tests/basic/.github/workflows/multiline.yml similarity index 100% rename from actions/ql/test/library-tests/.github/workflows/multiline.yml rename to actions/ql/test/library-tests/basic/.github/workflows/multiline.yml diff --git a/actions/ql/test/library-tests/.github/workflows/multiline2.yml b/actions/ql/test/library-tests/basic/.github/workflows/multiline2.yml similarity index 100% rename from actions/ql/test/library-tests/.github/workflows/multiline2.yml rename to actions/ql/test/library-tests/basic/.github/workflows/multiline2.yml diff --git a/actions/ql/test/library-tests/.github/workflows/poisonable_steps.yml b/actions/ql/test/library-tests/basic/.github/workflows/poisonable_steps.yml similarity index 100% rename from actions/ql/test/library-tests/.github/workflows/poisonable_steps.yml rename to actions/ql/test/library-tests/basic/.github/workflows/poisonable_steps.yml diff --git a/actions/ql/test/library-tests/.github/workflows/shell.yml b/actions/ql/test/library-tests/basic/.github/workflows/shell.yml similarity index 100% rename from actions/ql/test/library-tests/.github/workflows/shell.yml rename to actions/ql/test/library-tests/basic/.github/workflows/shell.yml diff --git a/actions/ql/test/library-tests/.github/workflows/test.yml b/actions/ql/test/library-tests/basic/.github/workflows/test.yml similarity index 100% rename from actions/ql/test/library-tests/.github/workflows/test.yml rename to actions/ql/test/library-tests/basic/.github/workflows/test.yml diff --git a/actions/ql/test/library-tests/commands.expected b/actions/ql/test/library-tests/basic/commands.expected similarity index 100% rename from actions/ql/test/library-tests/commands.expected rename to actions/ql/test/library-tests/basic/commands.expected diff --git a/actions/ql/test/library-tests/commands.ql b/actions/ql/test/library-tests/basic/commands.ql similarity index 100% rename from actions/ql/test/library-tests/commands.ql rename to actions/ql/test/library-tests/basic/commands.ql diff --git a/actions/ql/test/library-tests/poisonable_steps.expected b/actions/ql/test/library-tests/basic/poisonable_steps.expected similarity index 100% rename from actions/ql/test/library-tests/poisonable_steps.expected rename to actions/ql/test/library-tests/basic/poisonable_steps.expected diff --git a/actions/ql/test/library-tests/poisonable_steps.ql b/actions/ql/test/library-tests/basic/poisonable_steps.ql similarity index 100% rename from actions/ql/test/library-tests/poisonable_steps.ql rename to actions/ql/test/library-tests/basic/poisonable_steps.ql diff --git a/actions/ql/test/library-tests/test.expected b/actions/ql/test/library-tests/basic/test.expected similarity index 100% rename from actions/ql/test/library-tests/test.expected rename to actions/ql/test/library-tests/basic/test.expected diff --git a/actions/ql/test/library-tests/test.ql b/actions/ql/test/library-tests/basic/test.ql similarity index 100% rename from actions/ql/test/library-tests/test.ql rename to actions/ql/test/library-tests/basic/test.ql diff --git a/actions/ql/test/library-tests/workflowenum.expected b/actions/ql/test/library-tests/basic/workflowenum.expected similarity index 100% rename from actions/ql/test/library-tests/workflowenum.expected rename to actions/ql/test/library-tests/basic/workflowenum.expected diff --git a/actions/ql/test/library-tests/workflowenum.ql b/actions/ql/test/library-tests/basic/workflowenum.ql similarity index 100% rename from actions/ql/test/library-tests/workflowenum.ql rename to actions/ql/test/library-tests/basic/workflowenum.ql From 90184017227e4a6977d9b7530559058215aa99d0 Mon Sep 17 00:00:00 2001 From: Chris Smowton Date: Fri, 23 Jan 2026 15:34:35 +0000 Subject: [PATCH 134/433] Add test --- .../workflows/very_long_expression_node.yml | 1002 +++++++++++++++++ .../very_long_expression_node.expected | 1 + .../very_long_expression_node.ql | 5 + 3 files changed, 1008 insertions(+) create mode 100644 actions/ql/test/library-tests/very-long-expression/.github/workflows/very_long_expression_node.yml create mode 100644 actions/ql/test/library-tests/very-long-expression/very_long_expression_node.expected create mode 100644 actions/ql/test/library-tests/very-long-expression/very_long_expression_node.ql diff --git a/actions/ql/test/library-tests/very-long-expression/.github/workflows/very_long_expression_node.yml b/actions/ql/test/library-tests/very-long-expression/.github/workflows/very_long_expression_node.yml new file mode 100644 index 000000000000..d94655caae13 --- /dev/null +++ b/actions/ql/test/library-tests/very-long-expression/.github/workflows/very_long_expression_node.yml @@ -0,0 +1,1002 @@ +on: issue_comment + +jobs: + echo-chamber: + runs-on: ubuntu-latest + steps: + - run: | + LINE 1 echo '${{ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + }}' diff --git a/actions/ql/test/library-tests/very-long-expression/very_long_expression_node.expected b/actions/ql/test/library-tests/very-long-expression/very_long_expression_node.expected new file mode 100644 index 000000000000..0757bb2f7dc9 --- /dev/null +++ b/actions/ql/test/library-tests/very-long-expression/very_long_expression_node.expected @@ -0,0 +1 @@ +| 97418 | diff --git a/actions/ql/test/library-tests/very-long-expression/very_long_expression_node.ql b/actions/ql/test/library-tests/very-long-expression/very_long_expression_node.ql new file mode 100644 index 000000000000..d83ce6c7ea9c --- /dev/null +++ b/actions/ql/test/library-tests/very-long-expression/very_long_expression_node.ql @@ -0,0 +1,5 @@ +import codeql.actions.ast.internal.Ast + +int getAnExpressionLength() { result = any(ExpressionImpl e).toString().length() } + +select max(getAnExpressionLength()) From a326ce34a8bcc869908838db40245a0c179f1f4b Mon Sep 17 00:00:00 2001 From: Chris Smowton Date: Fri, 23 Jan 2026 15:47:17 +0000 Subject: [PATCH 135/433] change note --- actions/ql/lib/change-notes/2026-01-23-long-expression-fix.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 actions/ql/lib/change-notes/2026-01-23-long-expression-fix.md diff --git a/actions/ql/lib/change-notes/2026-01-23-long-expression-fix.md b/actions/ql/lib/change-notes/2026-01-23-long-expression-fix.md new file mode 100644 index 000000000000..31adf6058a7d --- /dev/null +++ b/actions/ql/lib/change-notes/2026-01-23-long-expression-fix.md @@ -0,0 +1,4 @@ +--- +category: fix +--- +* Fixed a crash when analysing a `${{ ... }}` expression over around 300 characters in length. From e58a8330cd263ef0053f8f4fe58180fcdf2ffde2 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Fri, 23 Jan 2026 16:19:06 +0000 Subject: [PATCH 136/433] C++: Add test for asDefinition. --- .../dataflow/asDefinition/test.cpp | 18 +++++++++++++++ .../dataflow/asDefinition/test.expected | 0 .../dataflow/asDefinition/test.ql | 22 +++++++++++++++++++ 3 files changed, 40 insertions(+) create mode 100644 cpp/ql/test/library-tests/dataflow/asDefinition/test.cpp create mode 100644 cpp/ql/test/library-tests/dataflow/asDefinition/test.expected create mode 100644 cpp/ql/test/library-tests/dataflow/asDefinition/test.ql diff --git a/cpp/ql/test/library-tests/dataflow/asDefinition/test.cpp b/cpp/ql/test/library-tests/dataflow/asDefinition/test.cpp new file mode 100644 index 000000000000..6af97c18b150 --- /dev/null +++ b/cpp/ql/test/library-tests/dataflow/asDefinition/test.cpp @@ -0,0 +1,18 @@ +struct S { + int x; +}; + +void use(int); + +void test() { + int y = 43; // $ asDefinition=43 + use(y); + y = 44; // $ asDefinition="... = ..." + use(y); + + int x = 43; // $ MISSING: asDefinition=43 + x = 44; // $ MISSING: asDefinition="... = ..." + + S s; + s.x = 42; // $ MISSING: asDefinition="... = ..." +} \ No newline at end of file diff --git a/cpp/ql/test/library-tests/dataflow/asDefinition/test.expected b/cpp/ql/test/library-tests/dataflow/asDefinition/test.expected new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/cpp/ql/test/library-tests/dataflow/asDefinition/test.ql b/cpp/ql/test/library-tests/dataflow/asDefinition/test.ql new file mode 100644 index 000000000000..b996f47fb49f --- /dev/null +++ b/cpp/ql/test/library-tests/dataflow/asDefinition/test.ql @@ -0,0 +1,22 @@ +import cpp +import utils.test.InlineExpectationsTest +import semmle.code.cpp.dataflow.new.DataFlow::DataFlow + +bindingset[s] +string quote(string s) { if s.matches("% %") then result = "\"" + s + "\"" else result = s } + +module AsDefinitionTest implements TestSig { + string getARelevantTag() { result = "asDefinition" } + + predicate hasActualResult(Location location, string element, string tag, string value) { + exists(Node n, Expr e | + e = n.asDefinition() and + location = e.getLocation() and + element = n.toString() and + tag = "asDefinition" and + value = quote(e.toString()) + ) + } +} + +import MakeTest From a556152b9d2b60c7c804dcc45329d09587595410 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Fri, 23 Jan 2026 16:23:21 +0000 Subject: [PATCH 137/433] C++: Fix asDefinition to not only work for SSA definitions. --- .../code/cpp/ir/dataflow/internal/DataFlowUtil.qll | 12 +++++++++--- .../library-tests/dataflow/asDefinition/test.cpp | 6 +++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll index 1c338d5a52d9..c66c76e60d78 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll @@ -312,6 +312,13 @@ class Node extends TIRDataFlowNode { */ Expr asDefinition() { result = this.asDefinition(_) } + private predicate isCertainStore() { + exists(SsaImpl::Definition def | + SsaImpl::defToNode(this, def, _) and + def.isCertain() + ) + } + /** * Gets the definition associated with this node, if any. * @@ -361,11 +368,10 @@ class Node extends TIRDataFlowNode { * pointed to by `p`. */ Expr asDefinition(boolean uncertain) { - exists(StoreInstruction store, SsaImpl::Definition def | + exists(StoreInstruction store | store = this.asInstruction() and result = asDefinitionImpl(store) and - SsaImpl::defToNode(this, def, _) and - if def.isCertain() then uncertain = false else uncertain = true + if this.isCertainStore() then uncertain = false else uncertain = true ) } diff --git a/cpp/ql/test/library-tests/dataflow/asDefinition/test.cpp b/cpp/ql/test/library-tests/dataflow/asDefinition/test.cpp index 6af97c18b150..facb67399585 100644 --- a/cpp/ql/test/library-tests/dataflow/asDefinition/test.cpp +++ b/cpp/ql/test/library-tests/dataflow/asDefinition/test.cpp @@ -10,9 +10,9 @@ void test() { y = 44; // $ asDefinition="... = ..." use(y); - int x = 43; // $ MISSING: asDefinition=43 - x = 44; // $ MISSING: asDefinition="... = ..." + int x = 43; // $ asDefinition=43 + x = 44; // $ asDefinition="... = ..." S s; - s.x = 42; // $ MISSING: asDefinition="... = ..." + s.x = 42; // $ asDefinition="... = ..." } \ No newline at end of file From 6c2a3a68b6b82c793cbdfcd69de394ea0a309193 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Fri, 23 Jan 2026 16:35:02 +0000 Subject: [PATCH 138/433] C++: Add change note. --- cpp/ql/lib/change-notes/2026-01-23-as-definition.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/lib/change-notes/2026-01-23-as-definition.md diff --git a/cpp/ql/lib/change-notes/2026-01-23-as-definition.md b/cpp/ql/lib/change-notes/2026-01-23-as-definition.md new file mode 100644 index 000000000000..1f18562cdcd7 --- /dev/null +++ b/cpp/ql/lib/change-notes/2026-01-23-as-definition.md @@ -0,0 +1,4 @@ +--- +category: fix +--- +* Fixed a bug which caused `Node.asDefinition()` to not have a result for certain assignments. \ No newline at end of file From e250c711aa96daeaba0f119de8c6a51de3e69ef4 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Sun, 25 Jan 2026 12:06:30 +0000 Subject: [PATCH 139/433] Add `IsDynamicActionsWorkflow` --- go/extractor/util/util.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/go/extractor/util/util.go b/go/extractor/util/util.go index 5cb97a7bc1d6..2c8719d4a188 100644 --- a/go/extractor/util/util.go +++ b/go/extractor/util/util.go @@ -312,3 +312,10 @@ func IsGolangVendorDirectory(dirPath string) bool { fileExists(filepath.Join(dirPath, "../Gopkg.lock")) || fileExists(filepath.Join(dirPath, "../vendor.conf"))) } + +// Returns true if the `GITHUB_EVENT_NAME` environment variable is set and suggests that +// we are running in a GitHub Actions workflow that was triggered by the `dynamic` event. +// This is the case for e.g. Default Setup. +func IsDynamicActionsWorkflow() bool { + return os.Getenv("GITHUB_EVENT_NAME") == "dynamic" +} From fdc5ae375b0b0986a83676c347f5caf453c5a9ed Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Sun, 25 Jan 2026 12:39:56 +0000 Subject: [PATCH 140/433] Add `IsActionsWorkflow` --- go/extractor/cli/go-autobuilder/go-autobuilder.go | 2 +- go/extractor/util/util.go | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/go/extractor/cli/go-autobuilder/go-autobuilder.go b/go/extractor/cli/go-autobuilder/go-autobuilder.go index 756bd19b45e9..2531f72cf341 100644 --- a/go/extractor/cli/go-autobuilder/go-autobuilder.go +++ b/go/extractor/cli/go-autobuilder/go-autobuilder.go @@ -565,7 +565,7 @@ func installDependenciesAndBuild() { // Go tooling should install required Go versions as needed. if toolchain.GetEnvGoSemVer().IsOlderThan(toolchain.V1_21) && greatestGoVersion != nil && greatestGoVersion.IsNewerThan(toolchain.GetEnvGoSemVer()) { diagnostics.EmitNewerGoVersionNeeded(toolchain.GetEnvGoSemVer().String(), greatestGoVersion.String()) - if val, _ := os.LookupEnv("GITHUB_ACTIONS"); val == "true" { + if util.IsActionsWorkflow() { log.Printf( "A go.mod file requires version %s of Go, but version %s is installed. Consider adding an actions/setup-go step to your workflow.\n", greatestGoVersion, diff --git a/go/extractor/util/util.go b/go/extractor/util/util.go index 2c8719d4a188..0925d1439d87 100644 --- a/go/extractor/util/util.go +++ b/go/extractor/util/util.go @@ -313,6 +313,12 @@ func IsGolangVendorDirectory(dirPath string) bool { fileExists(filepath.Join(dirPath, "../vendor.conf"))) } +// Returns true if the `GITHUB_ACTIONS` environment variable is set to `true`. +// This is the case in GitHub Actions workflows. +func IsActionsWorkflow() bool { + return os.Getenv("GITHUB_ACTIONS") == "true" +} + // Returns true if the `GITHUB_EVENT_NAME` environment variable is set and suggests that // we are running in a GitHub Actions workflow that was triggered by the `dynamic` event. // This is the case for e.g. Default Setup. From f837d90060d7f2be58fea9e3092ee5757ec3406c Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Sun, 25 Jan 2026 13:10:26 +0000 Subject: [PATCH 141/433] Improve `go/autobuilder/package-not-found` diagnostic message --- go/extractor/diagnostics/BUILD.bazel | 1 + go/extractor/diagnostics/diagnostics.go | 40 ++++++++++++++++--- .../diagnostics.expected | 2 +- .../package-not-found-with-go-mod/test.py | 6 +++ .../diagnostics.expected | 2 +- .../package-not-found-without-go-mod/test.py | 6 +++ 6 files changed, 50 insertions(+), 7 deletions(-) diff --git a/go/extractor/diagnostics/BUILD.bazel b/go/extractor/diagnostics/BUILD.bazel index 9b0c148db320..436cf15e8549 100644 --- a/go/extractor/diagnostics/BUILD.bazel +++ b/go/extractor/diagnostics/BUILD.bazel @@ -7,4 +7,5 @@ go_library( srcs = ["diagnostics.go"], importpath = "github.com/github/codeql-go/extractor/diagnostics", visibility = ["//visibility:public"], + deps = ["//go/extractor/util"], ) diff --git a/go/extractor/diagnostics/diagnostics.go b/go/extractor/diagnostics/diagnostics.go index 00179b98cca5..4a49347f0f76 100644 --- a/go/extractor/diagnostics/diagnostics.go +++ b/go/extractor/diagnostics/diagnostics.go @@ -7,6 +7,8 @@ import ( "os" "strings" "time" + + "github.com/github/codeql-go/extractor/util" ) type sourceStruct struct { @@ -154,14 +156,42 @@ func EmitCannotFindPackages(pkgPaths []string) { secondLine += fmt.Sprintf(" and %d more", numPkgPaths-maxNumPkgPaths) } + message := fmt.Sprintf( + "%d package%s could not be found:\n\n%s.\n\n"+ + "CodeQL is able to analyze your code without those packages, but definitions from them may not be recognized and "+ + "source files that use them may only be partially analyzed.\n\n"+ + "To ensure that you have comprehensive alert coverage, check that the paths are correct and make sure any private packages can be accessed by CodeQL. ", + numPkgPaths, + plural(len(pkgPaths), "", "s"), + secondLine, + ) + + // Depending on the environment we are running in, provide a different message for how to configure access to private registries. + if util.IsDynamicActionsWorkflow() { + // For GitHub-managed (dynamic) workflows, we offer built-in support for private registries that customers can set up. + message = message + + "Organizations [can grant access to private registries for GitHub security products](https://docs.github.com/en/code-security/how-tos/secure-at-scale/configure-organization-security/manage-usage-and-access/giving-org-access-private-registries). " + } else { + if util.IsActionsWorkflow() { + // For custom workflows, users can add a workflow step to set up credentials or environment variables. + message = message + + "To set up access to a private registry, add a step to your workflow which sets up the necessary credentials and environment variables. " + } else { + // Otherwise, we are running locally or in some other CI system. + message = message + + "To set up access to private registries, ensure that the necessary credentials and environment variables are set up for `go` to use. " + } + + // This should be less likely since we improved Go project discovery. We only include it in the message if we are not running in a + // GitHub-managed workflow, since users would not be able to act on this there. + message = message + + "If any of the packages are already present in the repository, but were not found, then you may need a [custom build command](https://docs.github.com/en/code-security/how-tos/scan-code-for-vulnerabilities/manage-your-configuration/codeql-code-scanning-for-compiled-languages)." + } + emitDiagnostic( "go/autobuilder/package-not-found", "Some packages could not be found", - fmt.Sprintf( - "%d package%s could not be found:\n\n%s.\n\nDefinitions in those packages may not be recognized by CodeQL, and files that use them may only be partially analyzed.\n\nCheck that the paths are correct and make sure any private packages can be accessed. If any of the packages are present in the repository then you may need a [custom build command](https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-the-codeql-workflow-for-compiled-languages).", - numPkgPaths, - plural(len(pkgPaths), "", "s"), - secondLine), + message, severityWarning, fullVisibility, noLocation, diff --git a/go/ql/integration-tests/diagnostics/package-not-found-with-go-mod/diagnostics.expected b/go/ql/integration-tests/diagnostics/package-not-found-with-go-mod/diagnostics.expected index 31204020a029..7af3c3a0cd00 100644 --- a/go/ql/integration-tests/diagnostics/package-not-found-with-go-mod/diagnostics.expected +++ b/go/ql/integration-tests/diagnostics/package-not-found-with-go-mod/diagnostics.expected @@ -1,5 +1,5 @@ { - "markdownMessage": "110 packages could not be found:\n\n`github.com/nosuchorg/nosuchrepo000`, `github.com/nosuchorg/nosuchrepo001`, `github.com/nosuchorg/nosuchrepo002`, `github.com/nosuchorg/nosuchrepo003`, `github.com/nosuchorg/nosuchrepo004` and 105 more.\n\nDefinitions in those packages may not be recognized by CodeQL, and files that use them may only be partially analyzed.\n\nCheck that the paths are correct and make sure any private packages can be accessed. If any of the packages are present in the repository then you may need a [custom build command](https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-the-codeql-workflow-for-compiled-languages).", + "markdownMessage": "110 packages could not be found:\n\n`github.com/nosuchorg/nosuchrepo000`, `github.com/nosuchorg/nosuchrepo001`, `github.com/nosuchorg/nosuchrepo002`, `github.com/nosuchorg/nosuchrepo003`, `github.com/nosuchorg/nosuchrepo004` and 105 more.\n\nCodeQL is able to analyze your code without those packages, but definitions from them may not be recognized and source files that use them may only be partially analyzed.\n\nTo ensure that you have comprehensive alert coverage, check that the paths are correct and make sure any private packages can be accessed by CodeQL. To set up access to a private registry, add a step to your workflow which sets up the necessary credentials and environment variables. If any of the packages are already present in the repository, but were not found, then you may need a [custom build command](https://docs.github.com/en/code-security/how-tos/scan-code-for-vulnerabilities/manage-your-configuration/codeql-code-scanning-for-compiled-languages).", "severity": "warning", "source": { "extractorName": "go", diff --git a/go/ql/integration-tests/diagnostics/package-not-found-with-go-mod/test.py b/go/ql/integration-tests/diagnostics/package-not-found-with-go-mod/test.py index 1800c6ddda87..854924199691 100644 --- a/go/ql/integration-tests/diagnostics/package-not-found-with-go-mod/test.py +++ b/go/ql/integration-tests/diagnostics/package-not-found-with-go-mod/test.py @@ -4,4 +4,10 @@ def test(codeql, go, check_build_environment): check_build_environment.source_root = "work" os.environ["LGTM_INDEX_IMPORT_PATH"] = "test" + + # The diagnostic message depends on the environment we are running in. To ensure consistent + # output, we set `GITHUB_ACTIONS` to `true` if we are not actually running in a workflow. + if (os.environ.get("GITHUB_ACTIONS", "") != "true"): + os.environ["GITHUB_ACTIONS"] = "true" + codeql.database.create(source_root="work") diff --git a/go/ql/integration-tests/diagnostics/package-not-found-without-go-mod/diagnostics.expected b/go/ql/integration-tests/diagnostics/package-not-found-without-go-mod/diagnostics.expected index 4f3f4e643434..f39fb5b324c8 100644 --- a/go/ql/integration-tests/diagnostics/package-not-found-without-go-mod/diagnostics.expected +++ b/go/ql/integration-tests/diagnostics/package-not-found-without-go-mod/diagnostics.expected @@ -1,5 +1,5 @@ { - "markdownMessage": "1 package could not be found:\n\n`github.com/linode/linode-docs-theme`.\n\nDefinitions in those packages may not be recognized by CodeQL, and files that use them may only be partially analyzed.\n\nCheck that the paths are correct and make sure any private packages can be accessed. If any of the packages are present in the repository then you may need a [custom build command](https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-the-codeql-workflow-for-compiled-languages).", + "markdownMessage": "1 package could not be found:\n\n`github.com/linode/linode-docs-theme`.\n\nCodeQL is able to analyze your code without those packages, but definitions from them may not be recognized and source files that use them may only be partially analyzed.\n\nTo ensure that you have comprehensive alert coverage, check that the paths are correct and make sure any private packages can be accessed by CodeQL. To set up access to a private registry, add a step to your workflow which sets up the necessary credentials and environment variables. If any of the packages are already present in the repository, but were not found, then you may need a [custom build command](https://docs.github.com/en/code-security/how-tos/scan-code-for-vulnerabilities/manage-your-configuration/codeql-code-scanning-for-compiled-languages).", "severity": "warning", "source": { "extractorName": "go", diff --git a/go/ql/integration-tests/diagnostics/package-not-found-without-go-mod/test.py b/go/ql/integration-tests/diagnostics/package-not-found-without-go-mod/test.py index 1800c6ddda87..854924199691 100644 --- a/go/ql/integration-tests/diagnostics/package-not-found-without-go-mod/test.py +++ b/go/ql/integration-tests/diagnostics/package-not-found-without-go-mod/test.py @@ -4,4 +4,10 @@ def test(codeql, go, check_build_environment): check_build_environment.source_root = "work" os.environ["LGTM_INDEX_IMPORT_PATH"] = "test" + + # The diagnostic message depends on the environment we are running in. To ensure consistent + # output, we set `GITHUB_ACTIONS` to `true` if we are not actually running in a workflow. + if (os.environ.get("GITHUB_ACTIONS", "") != "true"): + os.environ["GITHUB_ACTIONS"] = "true" + codeql.database.create(source_root="work") From fafc2ddc0b1349bcf0f19e1f82ae03f6df53e0c2 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Sun, 25 Jan 2026 14:14:27 +0000 Subject: [PATCH 142/433] Add `DiagnosticsWriter` interface to abstract over diagnostics output implementation --- go/extractor/diagnostics/diagnostics.go | 96 ++++++++++++++++--------- 1 file changed, 62 insertions(+), 34 deletions(-) diff --git a/go/extractor/diagnostics/diagnostics.go b/go/extractor/diagnostics/diagnostics.go index 4a49347f0f76..a825bf862880 100644 --- a/go/extractor/diagnostics/diagnostics.go +++ b/go/extractor/diagnostics/diagnostics.go @@ -3,7 +3,7 @@ package diagnostics import ( "encoding/json" "fmt" - "log" + "log/slog" "os" "strings" "time" @@ -56,18 +56,61 @@ type diagnostic struct { var diagnosticsEmitted, diagnosticsLimit uint = 0, 100 var noDiagnosticDirPrinted bool = false -func emitDiagnostic(sourceid, sourcename, markdownMessage string, severity diagnosticSeverity, visibility *visibilityStruct, location *locationStruct) { - if diagnosticsEmitted < diagnosticsLimit { - diagnosticsEmitted += 1 +type DiagnosticsWriter interface { + WriteDiagnostic(d diagnostic) +} - diagnosticDir := os.Getenv("CODEQL_EXTRACTOR_GO_DIAGNOSTIC_DIR") - if diagnosticDir == "" { - if !noDiagnosticDirPrinted { - log.Println("No diagnostic directory set, so not emitting diagnostic") - noDiagnosticDirPrinted = true - } - return +type FileDiagnosticsWriter struct { + diagnosticDir string +} + +func (writer *FileDiagnosticsWriter) WriteDiagnostic(d diagnostic) { + content, err := json.Marshal(d) + if err != nil { + slog.Error("Failed to encode diagnostic as JSON", slog.Any("err", err)) + return + } + + targetFile, err := os.CreateTemp(writer.diagnosticDir, "go-extractor.*.json") + if err != nil { + slog.Error("Failed to create diagnostic file", slog.Any("err", err)) + return + } + defer func() { + if err := targetFile.Close(); err != nil { + slog.Error("Failed to close diagnostic file", slog.Any("err", err)) + } + }() + + _, err = targetFile.Write(content) + if err != nil { + slog.Error("Failed to write to diagnostic file", slog.Any("err", err)) + } +} + +var DefaultWriter *FileDiagnosticsWriter = nil + +func NewFileDiagnosticsWriter() *FileDiagnosticsWriter { + diagnosticDir := os.Getenv("CODEQL_EXTRACTOR_GO_DIAGNOSTIC_DIR") + if diagnosticDir == "" { + if !noDiagnosticDirPrinted { + slog.Warn("No diagnostic directory set, so not emitting diagnostics") + noDiagnosticDirPrinted = true } + return nil + } + + return &FileDiagnosticsWriter{diagnosticDir} +} + +func init() { + DefaultWriter = NewFileDiagnosticsWriter() +} + +// Emits a diagnostic using the specified `DiagnosticsWriter`. +func emitDiagnosticTo(writer DiagnosticsWriter, sourceid, sourcename, markdownMessage string, severity diagnosticSeverity, visibility *visibilityStruct, location *locationStruct) { + if diagnosticsEmitted < diagnosticsLimit { + diagnosticsEmitted += 1 timestamp := time.Now().UTC().Format("2006-01-02T15:04:05.000") + "Z" @@ -93,31 +136,16 @@ func emitDiagnostic(sourceid, sourcename, markdownMessage string, severity diagn } } - content, err := json.Marshal(d) - if err != nil { - log.Println(err) - return - } - - targetFile, err := os.CreateTemp(diagnosticDir, "go-extractor.*.json") - if err != nil { - log.Println("Failed to create diagnostic file: ") - log.Println(err) - return - } - defer func() { - if err := targetFile.Close(); err != nil { - log.Println("Failed to close diagnostic file:") - log.Println(err) - } - }() + writer.WriteDiagnostic(d) + } +} - _, err = targetFile.Write(content) - if err != nil { - log.Println("Failed to write to diagnostic file: ") - log.Println(err) - } +// Emits a diagnostic using the default `DiagnosticsWriter`. +func emitDiagnostic(sourceid, sourcename, markdownMessage string, severity diagnosticSeverity, visibility *visibilityStruct, location *locationStruct) { + if DefaultWriter == nil { + return } + emitDiagnosticTo(DefaultWriter, sourceid, sourcename, markdownMessage, severity, visibility, location) } func EmitPackageDifferentOSArchitecture(pkgPath string) { From f1f4ddb76c8da64486ff8542f6c89cf8b5163ab7 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Sun, 25 Jan 2026 14:58:47 +0000 Subject: [PATCH 143/433] Add dependency on `testify/assert` --- go/extractor/go.mod | 8 +++++++- go/extractor/go.sum | 9 +++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/go/extractor/go.mod b/go/extractor/go.mod index 62d42b037ef6..c88573bb8c2b 100644 --- a/go/extractor/go.mod +++ b/go/extractor/go.mod @@ -13,4 +13,10 @@ require ( golang.org/x/tools v0.41.0 ) -require golang.org/x/sync v0.19.0 // indirect +require ( + github.com/davecgh/go-spew v1.1.1 // indirect + github.com/pmezard/go-difflib v1.0.0 // indirect + github.com/stretchr/testify v1.11.1 // indirect + golang.org/x/sync v0.19.0 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect +) diff --git a/go/extractor/go.sum b/go/extractor/go.sum index d462d8f36686..838db152fd67 100644 --- a/go/extractor/go.sum +++ b/go/extractor/go.sum @@ -1,8 +1,17 @@ +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= +github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= golang.org/x/mod v0.32.0 h1:9F4d3PHLljb6x//jOyokMv3eX+YDeepZSEo3mFJy93c= golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU= golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4= golang.org/x/sync v0.19.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= golang.org/x/tools v0.41.0 h1:a9b8iMweWG+S0OBnlU36rzLp20z1Rp10w+IY2czHTQc= golang.org/x/tools v0.41.0/go.mod h1:XSY6eDqxVNiYgezAVqqCeihT4j1U2CCsqvH3WhQpnlg= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= From 8e7d62600d3634e2b188a342abe8b9f2ed49f84f Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Sun, 25 Jan 2026 15:10:25 +0000 Subject: [PATCH 144/433] Make `EmitCannotFindPackages` testable and add tests --- go/extractor/diagnostics/BUILD.bazel | 9 ++- go/extractor/diagnostics/diagnostics.go | 5 +- go/extractor/diagnostics/diagnostics_test.go | 85 ++++++++++++++++++++ go/extractor/extractor.go | 2 +- 4 files changed, 97 insertions(+), 4 deletions(-) create mode 100644 go/extractor/diagnostics/diagnostics_test.go diff --git a/go/extractor/diagnostics/BUILD.bazel b/go/extractor/diagnostics/BUILD.bazel index 436cf15e8549..698c27e02b65 100644 --- a/go/extractor/diagnostics/BUILD.bazel +++ b/go/extractor/diagnostics/BUILD.bazel @@ -1,6 +1,6 @@ # generated running `bazel run //go/gazelle`, do not edit -load("@rules_go//go:def.bzl", "go_library") +load("@rules_go//go:def.bzl", "go_library", "go_test") go_library( name = "diagnostics", @@ -9,3 +9,10 @@ go_library( visibility = ["//visibility:public"], deps = ["//go/extractor/util"], ) + +go_test( + name = "diagnostics_test", + srcs = ["diagnostics_test.go"], + embed = [":diagnostics"], + deps = ["@com_github_stretchr_testify//assert"], +) diff --git a/go/extractor/diagnostics/diagnostics.go b/go/extractor/diagnostics/diagnostics.go index a825bf862880..aea46a9827c6 100644 --- a/go/extractor/diagnostics/diagnostics.go +++ b/go/extractor/diagnostics/diagnostics.go @@ -169,7 +169,7 @@ func plural(n int, singular, plural string) string { const maxNumPkgPaths = 5 -func EmitCannotFindPackages(pkgPaths []string) { +func EmitCannotFindPackages(writer DiagnosticsWriter, pkgPaths []string) { numPkgPaths := len(pkgPaths) numPrinted := numPkgPaths @@ -216,7 +216,8 @@ func EmitCannotFindPackages(pkgPaths []string) { "If any of the packages are already present in the repository, but were not found, then you may need a [custom build command](https://docs.github.com/en/code-security/how-tos/scan-code-for-vulnerabilities/manage-your-configuration/codeql-code-scanning-for-compiled-languages)." } - emitDiagnostic( + emitDiagnosticTo( + writer, "go/autobuilder/package-not-found", "Some packages could not be found", message, diff --git a/go/extractor/diagnostics/diagnostics_test.go b/go/extractor/diagnostics/diagnostics_test.go new file mode 100644 index 000000000000..f2b560004bae --- /dev/null +++ b/go/extractor/diagnostics/diagnostics_test.go @@ -0,0 +1,85 @@ +package diagnostics + +import ( + "testing" + + "github.com/stretchr/testify/assert" +) + +type memoryDiagnosticsWriter struct { + diagnostics []diagnostic +} + +func newMemoryDiagnosticsWriter() *memoryDiagnosticsWriter { + return &memoryDiagnosticsWriter{[]diagnostic{}} +} + +func (writer *memoryDiagnosticsWriter) WriteDiagnostic(d diagnostic) { + writer.diagnostics = append(writer.diagnostics, d) +} + +func Test_EmitCannotFindPackages_Default(t *testing.T) { + writer := newMemoryDiagnosticsWriter() + + // Clear environment variables that affect the diagnostic message. + t.Setenv("GITHUB_EVENT_NAME", "") + t.Setenv("GITHUB_ACTIONS", "") + + EmitCannotFindPackages(writer, []string{"github.com/github/foo"}) + + assert.Len(t, writer.diagnostics, 1, "Expected one diagnostic to be emitted") + + d := writer.diagnostics[0] + assert.Equal(t, d.Source.Id, "go/autobuilder/package-not-found") + assert.Equal(t, d.Severity, string(severityWarning)) + assert.True(t, d.Visibility.CliSummaryTable) + assert.True(t, d.Visibility.StatusPage) + assert.True(t, d.Visibility.Telemetry) + // Non-Actions suggestion for private registries + assert.Contains(t, d.MarkdownMessage, "ensure that the necessary credentials and environment variables are set up") + // Custom build command suggestion + assert.Contains(t, d.MarkdownMessage, "If any of the packages are already present in the repository") +} + +func Test_EmitCannotFindPackages_Dynamic(t *testing.T) { + writer := newMemoryDiagnosticsWriter() + + // Set environment variables that affect the diagnostic message. + t.Setenv("GITHUB_EVENT_NAME", "dynamic") + t.Setenv("GITHUB_ACTIONS", "true") + + EmitCannotFindPackages(writer, []string{"github.com/github/foo"}) + + assert.Len(t, writer.diagnostics, 1, "Expected one diagnostic to be emitted") + + d := writer.diagnostics[0] + assert.Equal(t, d.Source.Id, "go/autobuilder/package-not-found") + assert.Equal(t, d.Severity, string(severityWarning)) + // Dynamic workflow suggestion for private registries + assert.Contains(t, d.MarkdownMessage, "can grant access to private registries for GitHub security products") + // No default suggestions for private registries and custom build command + assert.NotContains(t, d.MarkdownMessage, "ensure that the necessary credentials and environment variables are set up") + assert.NotContains(t, d.MarkdownMessage, "If any of the packages are already present in the repository") +} + +func Test_EmitCannotFindPackages_Actions(t *testing.T) { + writer := newMemoryDiagnosticsWriter() + + // Set environment variables that affect the diagnostic message. + t.Setenv("GITHUB_EVENT_NAME", "push") + t.Setenv("GITHUB_ACTIONS", "true") + + EmitCannotFindPackages(writer, []string{"github.com/github/foo"}) + + assert.Len(t, writer.diagnostics, 1, "Expected one diagnostic to be emitted") + + d := writer.diagnostics[0] + assert.Equal(t, d.Source.Id, "go/autobuilder/package-not-found") + assert.Equal(t, d.Severity, string(severityWarning)) + // Advanced workflow suggestion for private registries + assert.Contains(t, d.MarkdownMessage, "add a step to your workflow which sets up") + // No default suggestion for private registries + assert.NotContains(t, d.MarkdownMessage, "ensure that the necessary credentials and environment variables are set up") + // Custom build command suggestion + assert.Contains(t, d.MarkdownMessage, "If any of the packages are already present in the repository") +} diff --git a/go/extractor/extractor.go b/go/extractor/extractor.go index 314fb8a56c13..bbcd32c10d24 100644 --- a/go/extractor/extractor.go +++ b/go/extractor/extractor.go @@ -223,7 +223,7 @@ func ExtractWithFlags(buildFlags []string, patterns []string, extractTests bool, }) if len(pkgsNotFound) > 0 { - diagnostics.EmitCannotFindPackages(pkgsNotFound) + diagnostics.EmitCannotFindPackages(diagnostics.DefaultWriter, pkgsNotFound) } for _, pkg := range pkgs { From 45e0a929a8029f763e792c312df781266f183382 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Sun, 25 Jan 2026 15:33:26 +0000 Subject: [PATCH 145/433] Move `nil` check into `FileDiagnosticsWriter` implementation of `WriteDiagnostic` --- go/extractor/diagnostics/diagnostics.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/go/extractor/diagnostics/diagnostics.go b/go/extractor/diagnostics/diagnostics.go index aea46a9827c6..a91a9efac0d1 100644 --- a/go/extractor/diagnostics/diagnostics.go +++ b/go/extractor/diagnostics/diagnostics.go @@ -65,6 +65,10 @@ type FileDiagnosticsWriter struct { } func (writer *FileDiagnosticsWriter) WriteDiagnostic(d diagnostic) { + if writer == nil { + return + } + content, err := json.Marshal(d) if err != nil { slog.Error("Failed to encode diagnostic as JSON", slog.Any("err", err)) @@ -142,9 +146,6 @@ func emitDiagnosticTo(writer DiagnosticsWriter, sourceid, sourcename, markdownMe // Emits a diagnostic using the default `DiagnosticsWriter`. func emitDiagnostic(sourceid, sourcename, markdownMessage string, severity diagnosticSeverity, visibility *visibilityStruct, location *locationStruct) { - if DefaultWriter == nil { - return - } emitDiagnosticTo(DefaultWriter, sourceid, sourcename, markdownMessage, severity, visibility, location) } From a7fecaaa1be67079279beae619cabe42784b38a9 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 26 Jan 2026 09:28:43 +0100 Subject: [PATCH 146/433] Shared: Use `HasTypeTreeSig` for `TypeMention` --- .../typeinference/internal/TypeInference.qll | 136 ++++++++---------- 1 file changed, 58 insertions(+), 78 deletions(-) diff --git a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll index 0a20bd59f1b2..654102ce2167 100644 --- a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll +++ b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll @@ -281,43 +281,36 @@ module Make1 Input1> { /** Gets the type at `path` in the type tree. */ Type getTypeAt(TypePath path); - /** Gets a textual representation of this type. */ + /** Gets a textual representation of this type tree. */ string toString(); - /** Gets the location of this type. */ + /** Gets the location of this type tree. */ Location getLocation(); } - /** Provides the input to `Make2`. */ - signature module InputSig2 { - /** A type mention, for example a type annotation in a local variable declaration. */ - class TypeMention { - /** - * Gets the type being mentioned at `path` inside this type mention. - * - * For example, in - * - * ```csharp - * C x = ... - * ``` - * - * the type mention in the declaration of `x` resolves to the following - * types: - * - * `TypePath` | `Type` - * ---------- | ------- - * `""` | ``C`1`` - * `"0"` | `int` - */ - Type resolveTypeAt(TypePath path); - - /** Gets a textual representation of this type mention. */ - string toString(); - - /** Gets the location of this type mention. */ - Location getLocation(); - } - + /** + * Provides the input to `Make2`. + * + * The `TypeMention` parameter is used to build the base type hierarchy based on + * `getABaseTypeMention` and to construct the constraint satisfaction + * hierarchy based on `conditionSatisfiesConstraint`. + * + * It will usually be based on syntactic occurrences of types in the source + * code. For example, in + * + * ```csharp + * class C : Base, Interface { } + * ``` + * + * a type mention would exist for `Base` and resolve to the following + * types: + * + * `TypePath` | `Type` + * ---------- | ------- + * `""` | ``Base`1`` + * `"0"` | `T` + */ + signature module InputSig2 { /** * Gets a base type mention of `t`, if any. Example: * @@ -394,22 +387,13 @@ module Make1 Input1> { ); } - module Make2 { + module Make2 Input2> { private import Input2 - final private class FinalTypeMention = TypeMention; - - /** An adapter for type mentions to implement `HasTypeTreeSig`. */ - final class TypeMentionTypeTree extends FinalTypeMention { - Type getTypeAt(TypePath path) { result = this.resolveTypeAt(path) } - } - /** Gets the type at the empty path of `tm`. */ bindingset[tm] pragma[inline_late] - private Type resolveTypeMentionRoot(TypeMention tm) { - result = tm.resolveTypeAt(TypePath::nil()) - } + private Type getTypeMentionRoot(TypeMention tm) { result = tm.getTypeAt(TypePath::nil()) } /** Provides the input to `IsInstantiationOf`. */ signature module IsInstantiationOfInputSig { @@ -467,17 +451,17 @@ module Make1 Input1> { } pragma[nomagic] - private Type resolveTypeAt(App app, TypeAbstraction abs, Constraint constraint, TypePath path) { + private Type getTypeAt(App app, TypeAbstraction abs, Constraint constraint, TypePath path) { potentialInstantiationOf(app, abs, constraint) and result = constraint.getTypeAt(path) } pragma[nomagic] - private Type resolveNthTypeAt( + private Type getNthTypeAt( App app, TypeAbstraction abs, Constraint constraint, int i, TypePath path ) { path = getNthPath(constraint, i) and - result = resolveTypeAt(app, abs, constraint, path) + result = getTypeAt(app, abs, constraint, path) } pragma[nomagic] @@ -485,7 +469,7 @@ module Make1 Input1> { App app, TypeAbstraction abs, Constraint constraint, int i ) { exists(Type t, TypePath path | - t = resolveNthTypeAt(app, abs, constraint, i, path) and + t = getNthTypeAt(app, abs, constraint, i, path) and if t = abs.getATypeParameter() then any() else app.getTypeAt(path) = t ) and // Recurse unless we are at the first path @@ -622,7 +606,7 @@ module Make1 Input1> { ) { // `app` and `constraint` differ on a concrete type exists(Type t, Type t2 | - t = resolveTypeAt(app, abs, constraint, path) and + t = getTypeAt(app, abs, constraint, path) and not t = abs.getATypeParameter() and app.getTypeAt(path) = t2 and t2 != t @@ -645,29 +629,27 @@ module Make1 Input1> { TypeMention tm1, TypeMention tm2, TypeParameter tp, TypePath path, Type t ) { exists(TypePath prefix | - tm2.resolveTypeAt(prefix) = tp and t = tm1.resolveTypeAt(prefix.appendInverse(path)) + tm2.getTypeAt(prefix) = tp and t = tm1.getTypeAt(prefix.appendInverse(path)) ) } private module IsInstantiationOfInput implements - IsInstantiationOfInputSig + IsInstantiationOfInputSig { pragma[nomagic] - private predicate typeCondition( - Type type, TypeAbstraction abs, TypeMentionTypeTree condition - ) { + private predicate typeCondition(Type type, TypeAbstraction abs, TypeMention condition) { conditionSatisfiesConstraint(abs, condition, _, _) and - type = resolveTypeMentionRoot(condition) + type = getTypeMentionRoot(condition) } pragma[nomagic] - private predicate typeConstraint(Type type, TypeMentionTypeTree constraint) { + private predicate typeConstraint(Type type, TypeMention constraint) { conditionSatisfiesConstraint(_, _, constraint, _) and - type = resolveTypeMentionRoot(constraint) + type = getTypeMentionRoot(constraint) } predicate potentialInstantiationOf( - TypeMentionTypeTree constraint, TypeAbstraction abs, TypeMentionTypeTree condition + TypeMention constraint, TypeAbstraction abs, TypeMention condition ) { exists(Type type | typeConstraint(type, constraint) and typeCondition(type, abs, condition) @@ -684,14 +666,14 @@ module Make1 Input1> { ) { // base case conditionSatisfiesConstraint(abs, condition, constraint, _) and - constraint.resolveTypeAt(path) = t + constraint.getTypeAt(path) = t or // recursive case exists(TypeAbstraction midAbs, TypeMention midConstraint, TypeMention midCondition | conditionSatisfiesConstraint(abs, condition, midConstraint, true) and // NOTE: `midAbs` describe the free type variables in `midCondition`, hence // we use that for instantiation check. - IsInstantiationOf::isInstantiationOf(midConstraint, + IsInstantiationOf::isInstantiationOf(midConstraint, midAbs, midCondition) | conditionSatisfiesConstraintTypeAt(midAbs, midCondition, constraint, path, t) and @@ -716,8 +698,8 @@ module Make1 Input1> { TypeMention constraint ) { conditionSatisfiesConstraintTypeAt(abs, condition, constraint, _, _) and - conditionRoot = resolveTypeMentionRoot(condition) and - constraintRoot = resolveTypeMentionRoot(constraint) + conditionRoot = getTypeMentionRoot(condition) and + constraintRoot = getTypeMentionRoot(constraint) } /** @@ -778,10 +760,10 @@ module Make1 Input1> { | // immediate base class baseMention = immediateBaseMention and - t = immediateBaseMention.resolveTypeAt(path) + t = immediateBaseMention.getTypeAt(path) or // transitive base class - exists(Type immediateBase | immediateBase = resolveTypeMentionRoot(immediateBaseMention) | + exists(Type immediateBase | immediateBase = getTypeMentionRoot(immediateBaseMention) | baseTypeMentionHasNonTypeParameterAt(immediateBase, baseMention, path, t) or exists(TypePath path0, TypePath prefix, TypePath suffix, TypeParameter tp | @@ -811,7 +793,7 @@ module Make1 Input1> { */ baseTypeMentionHasTypeParameterAt(immediateBase, baseMention, prefix, tp) and - t = immediateBaseMention.resolveTypeAt(path0) and + t = immediateBaseMention.getTypeAt(path0) and path0.isCons(tp, suffix) and path = prefix.append(suffix) ) @@ -862,11 +844,9 @@ module Make1 Input1> { } private module IsInstantiationOfInput implements - IsInstantiationOfInputSig + IsInstantiationOfInputSig { - predicate potentialInstantiationOf( - HasTypeTree tt, TypeAbstraction abs, TypeMentionTypeTree cond - ) { + predicate potentialInstantiationOf(HasTypeTree tt, TypeAbstraction abs, TypeMention cond) { exists(Type constraint, Type type | hasTypeConstraint(tt, type, constraint) and rootTypesSatisfaction(type, constraint, abs, cond, _) and @@ -875,13 +855,13 @@ module Make1 Input1> { ) } - predicate relevantConstraint(TypeMentionTypeTree constraint) { + predicate relevantConstraint(TypeMention constraint) { rootTypesSatisfaction(_, _, _, constraint, _) } } private module SatisfiesConstraintIsInstantiationOf = - IsInstantiationOf; + IsInstantiationOf; /** * Holds if `tt` satisfies `constraint` through `abs`, `sub`, and `constraintMention`. @@ -897,8 +877,8 @@ module Make1 Input1> { // // not exists(countConstraintImplementations(type, constraint)) and // conditionSatisfiesConstraintTypeAt(abs, condition, constraintMention, _, _) and - // resolveTypeMentionRoot(condition) = abs.getATypeParameter() and - // constraint = resolveTypeMentionRoot(constraintMention) + // getTypeMentionRoot(condition) = abs.getATypeParameter() and + // constraint = getTypeMentionRoot(constraintMention) // or countConstraintImplementations(type, constraint) > 0 and rootTypesSatisfaction(type, constraint, abs, condition, constraintMention) and @@ -935,9 +915,9 @@ module Make1 Input1> { // or // forall(TypeAbstraction abs, TypeMention condition, TypeMention constraintMention | // conditionSatisfiesConstraintTypeAt(abs, condition, constraintMention, _, _) and - // resolveTypeMentionRoot(condition) = abs.getATypeParameter() + // getTypeMentionRoot(condition) = abs.getATypeParameter() // | - // not constraint = resolveTypeMentionRoot(constraintMention) + // not constraint = getTypeMentionRoot(constraintMention) // ) // ) and ( @@ -973,7 +953,7 @@ module Make1 Input1> { exists(TypeMention sub, TypeParameter tp | satisfiesConstraintTypeMention0(tt, constraint, abs, sub, path, tp) and tp = abs.getATypeParameter() and - sub.resolveTypeAt(pathToTypeParamInSub) = tp + sub.getTypeAt(pathToTypeParamInSub) = tp ) } @@ -1265,7 +1245,7 @@ module Make1 Input1> { Access a, AccessEnvironment e, AccessPosition apos, TypeMention baseMention, TypePath path, Type t ) { - relevantAccess(a, e, apos, resolveTypeMentionRoot(baseMention)) and + relevantAccess(a, e, apos, getTypeMentionRoot(baseMention)) and exists(Type sub | sub = a.getInferredType(e, apos, TypePath::nil()) | baseTypeMentionHasNonTypeParameterAt(sub, baseMention, path, t) or @@ -1351,7 +1331,7 @@ module Make1 Input1> { ) { exists(TypeMention tm | AccessBaseType::hasBaseTypeMention(a, e, apos, tm, path, t) and - base = resolveTypeMentionRoot(tm) + base = getTypeMentionRoot(tm) ) } @@ -1680,7 +1660,7 @@ module Make1 Input1> { } query predicate illFormedTypeMention(TypeMention tm) { - not exists(tm.resolveTypeAt(TypePath::nil())) and exists(tm.getLocation()) + not exists(tm.getTypeAt(TypePath::nil())) and exists(tm.getLocation()) } } } From 7100ca42628ac4a3709dc6e649eecf6c0f4e74e6 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 26 Jan 2026 09:33:50 +0100 Subject: [PATCH 147/433] Rust: Adapt to changes in shared type inference library --- .../rust/internal/typeinference/TypeInference.qll | 13 +++++-------- .../rust/internal/typeinference/TypeMention.qll | 7 +++++++ 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index ebf7bd2aa82d..e2b687a0079e 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -134,12 +134,8 @@ class TypePath = M1::TypePath; module TypePath = M1::TypePath; -private module Input2 implements InputSig2 { - private import TypeMention as TM - - class TypeMention = TM::TypeMention; - - TypeMention getABaseTypeMention(Type t) { none() } +private module Input2 implements InputSig2 { + TypeMentionTypeTree getABaseTypeMention(Type t) { none() } Type getATypeParameterConstraint(TypeParameter tp, TypePath path) { exists(TypeMention tm | result = tm.resolveTypeAt(path) | @@ -162,7 +158,8 @@ private module Input2 implements InputSig2 { * inference module for more information. */ predicate conditionSatisfiesConstraint( - TypeAbstraction abs, TypeMention condition, TypeMention constraint, boolean transitive + TypeAbstraction abs, TypeMentionTypeTree condition, TypeMentionTypeTree constraint, + boolean transitive ) { // `impl` blocks implementing traits transitive = false and @@ -212,7 +209,7 @@ private module Input2 implements InputSig2 { } } -private module M2 = Make2; +private module M2 = Make2; import M2 diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index 063e9beffd39..7e5abaa5a3a3 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -18,6 +18,13 @@ abstract class TypeMention extends AstNode { final Type resolveType() { result = this.resolveTypeAt(TypePath::nil()) } } +final private class FinalTypeMention = TypeMention; + +/** An adapter for type mentions to implement `HasTypeTreeSig`. */ +final class TypeMentionTypeTree extends FinalTypeMention { + Type getTypeAt(TypePath path) { result = this.resolveTypeAt(path) } +} + class TupleTypeReprMention extends TypeMention instanceof TupleTypeRepr { override Type resolveTypeAt(TypePath path) { path.isEmpty() and From 452d307fd58381979dc1ff9c2006a746490d7eeb Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 26 Jan 2026 09:46:33 +0100 Subject: [PATCH 148/433] Rust: Make `TypeMention` directly satisfy `HasTypeTree` --- .../rust/dataflow/internal/ModelsAsData.qll | 4 +- .../typeinference/BlanketImplementation.qll | 4 +- .../internal/typeinference/DerefChain.qll | 4 +- .../typeinference/FunctionOverloading.qll | 4 +- .../internal/typeinference/FunctionType.qll | 4 +- .../internal/typeinference/TypeInference.qll | 70 ++++++++-------- .../TypeInferenceConsistency.qll | 2 +- .../internal/typeinference/TypeMention.qll | 83 +++++++++---------- 8 files changed, 83 insertions(+), 92 deletions(-) diff --git a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll index a0c6caf85423..efd1fc35dc57 100644 --- a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll +++ b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll @@ -224,7 +224,7 @@ private module Debug { sc.propagatesFlow(input, _, _, _) and input.head() = SummaryComponent::argument(pos) and p = pos.getParameterIn(sc.getParamList()) and - tm.resolveType() instanceof RefType and + tm.getType() instanceof RefType and not input.tail().head() = SummaryComponent::content(TSingletonContentSet(TReferenceContent())) | tm = p.getTypeRepr() @@ -239,7 +239,7 @@ private module Debug { exists(TypeMention tm | relevantManualModel(sc, can) and sc.propagatesFlow(_, output, _, _) and - tm.resolveType() instanceof RefType and + tm.getType() instanceof RefType and output.head() = SummaryComponent::return(_) and not output.tail().head() = SummaryComponent::content(TSingletonContentSet(TReferenceContent())) and diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll b/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll index 8526e1199425..51781a473057 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll @@ -47,8 +47,8 @@ predicate isBlanketLike(ImplItemNode i, TypePath blanketSelfPath, TypeParam blan exists(TypeMention tm, Type root, TypeParameter tp | tm = i.(Impl).getSelfTy() and complexSelfRoot(root, tp) and - tm.resolveType() = root and - tm.resolveTypeAt(blanketSelfPath) = TTypeParamTypeParameter(blanketTypeParam) and + tm.getType() = root and + tm.getTypeAt(blanketSelfPath) = TTypeParamTypeParameter(blanketTypeParam) and blanketSelfPath = TypePath::singleton(tp) and hasFirstNonTrivialTraitBound(blanketTypeParam, _) ) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll b/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll index c568fca48b61..6b8c57812486 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll @@ -25,8 +25,8 @@ class DerefImplItemNode extends ImplItemNode { */ pragma[nomagic] predicate targetHasTypeParameterAt(TypePath path) { - this.getAssocItem("Target").(TypeAlias).getTypeRepr().(TypeMention).resolveTypeAt(path) - instanceof TypeParameter + this.getAssocItem("Target").(TypeAlias).getTypeRepr().(TypeMention).getTypeAt(path) instanceof + TypeParameter } /** Gets the first type parameter of the type being implemented, if any. */ diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll index 0e4bc2729051..e1da3352d0cd 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll @@ -15,7 +15,7 @@ private import FunctionType pragma[nomagic] private Type resolveNonTypeParameterTypeAt(TypeMention tm, TypePath path) { - result = tm.resolveTypeAt(path) and + result = tm.getTypeAt(path) and not result instanceof TypeParameter } @@ -32,7 +32,7 @@ private predicate implSiblingCandidate( ) { trait = impl.(ImplItemNode).resolveTraitTy() and selfTy = impl.getSelfTy() and - rootType = selfTy.resolveType() + rootType = selfTy.getType() } pragma[nomagic] diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll index d375ddfc9847..02c0b45c8e9b 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll @@ -103,12 +103,12 @@ Type getAssocFunctionTypeAt(Function f, ImplOrTraitItemNode i, FunctionPosition // No specialization needed when the function is directly in the trait or // impl block or the declared type is not a type parameter (parent = i or not result instanceof TypeParameter) and - result = pos.getTypeMention(f).resolveTypeAt(path) + result = pos.getTypeMention(f).getTypeAt(path) or exists(TypePath prefix, TypePath suffix, TypeParameter tp, TypeMention constraint | BaseTypes::rootTypesSatisfaction(_, TTrait(parent), i, _, constraint) and path = prefix.append(suffix) and - tp = pos.getTypeMention(f).resolveTypeAt(prefix) and + tp = pos.getTypeMention(f).getTypeAt(prefix) and if tp = TSelfTypeParameter(_) then result = resolveImplOrTraitType(i, suffix) else result = getTraitConstraintTypeAt(i, constraint, tp, suffix) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index e2b687a0079e..b051d60d8b4d 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -134,11 +134,11 @@ class TypePath = M1::TypePath; module TypePath = M1::TypePath; -private module Input2 implements InputSig2 { - TypeMentionTypeTree getABaseTypeMention(Type t) { none() } +private module Input2 implements InputSig2 { + TypeMention getABaseTypeMention(Type t) { none() } Type getATypeParameterConstraint(TypeParameter tp, TypePath path) { - exists(TypeMention tm | result = tm.resolveTypeAt(path) | + exists(TypeMention tm | result = tm.getTypeAt(path) | tm = tp.(TypeParamTypeParameter).getTypeParam().getATypeBound().getTypeRepr() or tm = tp.(SelfTypeParameter).getTrait() or tm = @@ -158,8 +158,7 @@ private module Input2 implements InputSig2 { * inference module for more information. */ predicate conditionSatisfiesConstraint( - TypeAbstraction abs, TypeMentionTypeTree condition, TypeMentionTypeTree constraint, - boolean transitive + TypeAbstraction abs, TypeMention condition, TypeMention constraint, boolean transitive ) { // `impl` blocks implementing traits transitive = false and @@ -209,7 +208,7 @@ private module Input2 implements InputSig2 { } } -private module M2 = Make2; +private module M2 = Make2; import M2 @@ -228,7 +227,7 @@ module Consistency { // mention for the self type has multiple types for a path. not exists(ImplItemNode impl, TypePath selfTypePath | n = impl.getAnAssocItem().(Function).getSelfParam() and - strictcount(impl.(Impl).getSelfTy().(TypeMention).resolveTypeAt(selfTypePath)) > 1 + strictcount(impl.(Impl).getSelfTy().(TypeMention).getTypeAt(selfTypePath)) > 1 ) } } @@ -294,7 +293,7 @@ private class FunctionDeclaration extends Function { result = getAssocFunctionTypeAt(this, i.asSome(), pos, path) or i.isNone() and - result = this.getParam(pos.asPosition()).getTypeRepr().(TypeMention).resolveTypeAt(path) + result = this.getParam(pos.asPosition()).getTypeRepr().(TypeMention).getTypeAt(path) ) } @@ -305,7 +304,7 @@ private class FunctionDeclaration extends Function { getAssocFunctionTypeAt(this, i.asSome(), any(FunctionPosition pos | pos.isReturn()), path) or i.isNone() and - result = getReturnTypeMention(this).resolveTypeAt(path) + result = getReturnTypeMention(this).getTypeAt(path) ) } @@ -349,12 +348,12 @@ private TypeMention getCallExprTypeMentionArgument(CallExpr ce, TypeArgumentPosi pragma[nomagic] private Type getCallExprTypeArgument(CallExpr ce, TypeArgumentPosition apos, TypePath path) { - result = getCallExprTypeMentionArgument(ce, apos).resolveTypeAt(path) + result = getCallExprTypeMentionArgument(ce, apos).getTypeAt(path) or // Handle constructions that use `Self(...)` syntax exists(Path p, TypePath path0 | p = CallExprImpl::getFunctionPath(ce) and - result = p.(TypeMention).resolveTypeAt(path0) and + result = p.(TypeMention).getTypeAt(path0) and path0.isCons(TTypeParamTypeParameter(apos.asTypeParam()), path) ) } @@ -377,16 +376,16 @@ private TypeMention getTypeAnnotation(AstNode n) { /** Gets the type of `n`, which has an explicit type annotation. */ pragma[nomagic] private Type inferAnnotatedType(AstNode n, TypePath path) { - result = getTypeAnnotation(n).resolveTypeAt(path) + result = getTypeAnnotation(n).getTypeAt(path) or - result = n.(ShorthandSelfParameterMention).resolveTypeAt(path) + result = n.(ShorthandSelfParameterMention).getTypeAt(path) } pragma[nomagic] private Type inferFunctionBodyType(AstNode n, TypePath path) { exists(Function f | n = f.getFunctionBody() and - result = getReturnTypeMention(f).resolveTypeAt(path) and + result = getReturnTypeMention(f).getTypeAt(path) and not exists(ImplTraitReturnType i | i.getFunction() = f | result = i or result = i.getATypeParameter() ) @@ -430,7 +429,7 @@ module CertainTypeInference { private TypePath getPathToImplSelfTypeParam(TypeParam tp) { exists(ImplItemNode impl | tp = impl.getTypeParam(_) and - TTypeParamTypeParameter(tp) = impl.(Impl).getSelfTy().(TypeMention).resolveTypeAt(result) + TTypeParamTypeParameter(tp) = impl.(Impl).getSelfTy().(TypeMention).getTypeAt(result) ) } @@ -446,7 +445,7 @@ module CertainTypeInference { // and the path `Foo::bar` we must resolve `A` to `i64`. exists(TypePath pathToTp | pathToTp = getPathToImplSelfTypeParam(tp) and - result = p.getQualifier().(TypeMention).resolveTypeAt(pathToTp.appendInverse(suffix)) + result = p.getQualifier().(TypeMention).getTypeAt(pathToTp.appendInverse(suffix)) ) or // For type parameters of the function we must resolve their @@ -462,11 +461,11 @@ module CertainTypeInference { } private Type inferCertainStructExprType(StructExpr se, TypePath path) { - result = se.getPath().(TypeMention).resolveTypeAt(path) + result = se.getPath().(TypeMention).getTypeAt(path) } private Type inferCertainStructPatType(StructPat sp, TypePath path) { - result = sp.getPath().(TypeMention).resolveTypeAt(path) + result = sp.getPath().(TypeMention).getTypeAt(path) } predicate certainTypeEquality(AstNode n1, TypePath prefix1, AstNode n2, TypePath prefix2) { @@ -902,7 +901,7 @@ private module StructExprMatchingInput implements MatchingInputSig { // type of a field exists(TypeMention tp | tp = this.getField(dpos.asFieldPos()).getTypeRepr() and - result = tp.resolveTypeAt(path) + result = tp.getTypeAt(path) ) or // type parameter of the struct itself @@ -955,7 +954,7 @@ private module StructExprMatchingInput implements MatchingInputSig { // Handle constructions that use `Self {...}` syntax exists(TypeMention tm, TypePath path0 | tm = this.getStructPath() and - result = tm.resolveTypeAt(path0) and + result = tm.getTypeAt(path0) and path0.isCons(TTypeParamTypeParameter(apos.asTypeParam()), path) ) } @@ -1065,7 +1064,7 @@ pragma[nomagic] private Type getCallExprTypeQualifier(CallExpr ce, TypePath path) { exists(TypeMention tm | tm = getCallExprPathQualifier(ce) and - result = tm.resolveTypeAt(path) and + result = tm.getTypeAt(path) and not resolvePath(tm) instanceof Trait ) } @@ -2327,11 +2326,11 @@ private module MethodResolution { * instance of the type being implemented. */ private module TypeQualifierIsInstantiationOfImplSelfInput implements - IsInstantiationOfInputSig + IsInstantiationOfInputSig { pragma[nomagic] private predicate potentialInstantiationOf0( - MethodCallCallExpr ce, ImplItemNode impl, TypeMentionTypeTree constraint + MethodCallCallExpr ce, ImplItemNode impl, TypeMention constraint ) { ce.hasTypeQualifiedCandidate(impl) and constraint = impl.getSelfPath() @@ -2339,7 +2338,7 @@ private module MethodResolution { pragma[nomagic] predicate potentialInstantiationOf( - MethodCallCallExpr ce, TypeAbstraction abs, TypeMentionTypeTree constraint + MethodCallCallExpr ce, TypeAbstraction abs, TypeMention constraint ) { potentialInstantiationOf0(ce, abs, constraint) and if abs.(Impl).hasTrait() @@ -2350,14 +2349,13 @@ private module MethodResolution { else any() } - predicate relevantConstraint(TypeMentionTypeTree constraint) { + predicate relevantConstraint(TypeMention constraint) { potentialInstantiationOf0(_, _, constraint) } } private module TypeQualifierIsInstantiationOfImplSelf = - IsInstantiationOf; + IsInstantiationOf; /** * A configuration for anti-matching the type of a receiver against the type of @@ -2478,7 +2476,7 @@ private module MethodCallMatchingInput implements MatchingWithEnvironmentInputSi .getGenericArgList() .getTypeArg(apos.asMethodTypeArgumentPosition()) .(TypeMention) - .resolveTypeAt(path) + .getTypeAt(path) or result = getCallExprTypeArgument(this, apos, path) } @@ -3009,7 +3007,7 @@ abstract private class TupleLikeConstructor extends Addressable { } Type getParameterType(FunctionPosition pos, TypePath path) { - result = this.getTupleField(pos.asPosition()).getTypeRepr().(TypeMention).resolveTypeAt(path) + result = this.getTupleField(pos.asPosition()).getTypeRepr().(TypeMention).getTypeAt(path) } } @@ -3364,7 +3362,7 @@ private module FieldExprMatchingInput implements MatchingInputSig { ) or dpos.isField() and - result = this.getTypeRepr().(TypeMention).resolveTypeAt(path) + result = this.getTypeRepr().(TypeMention).getTypeAt(path) } override string toString() { result = this.getAstNode().toString() } @@ -3716,7 +3714,7 @@ private module StructPatMatchingInput implements MatchingInputSig { // The struct/enum type is supplied explicitly as a type qualifier, e.g. // `let Foo::Variant { ... } = ...`. apos.isStructPos() and - result = this.getPath().(TypeMention).resolveTypeAt(path) + result = this.getPath().(TypeMention).getTypeAt(path) } Declaration getTarget() { result = resolvePath(this.getPath()) } @@ -3766,7 +3764,7 @@ private module TupleStructPatMatchingInput implements MatchingInputSig { // The struct/enum type is supplied explicitly as a type qualifier, e.g. // `let Option::::Some(x) = ...`. apos.isSelf() and - result = this.getPath().(TypeMention).resolveTypeAt(path) + result = this.getPath().(TypeMention).getTypeAt(path) } Declaration getTarget() { result = resolvePath(this.getPath()) } @@ -3955,13 +3953,13 @@ private Type inferClosureExprType(AstNode n, TypePath path) { or // Propagate return type annotation to body n = ce.getClosureBody() and - result = ce.getRetType().getTypeRepr().(TypeMention).resolveTypeAt(path) + result = ce.getRetType().getTypeRepr().(TypeMention).getTypeAt(path) ) } pragma[nomagic] private Type inferCastExprType(CastExpr ce, TypePath path) { - result = ce.getTypeRepr().(TypeMention).resolveTypeAt(path) + result = ce.getTypeRepr().(TypeMention).getTypeAt(path) } cached @@ -4159,7 +4157,7 @@ private module Debug { predicate debugInferShorthandSelfType(ShorthandSelfParameterMention self, TypePath path, Type t) { self = getRelevantLocatable() and - t = self.resolveTypeAt(path) + t = self.getTypeAt(path) } predicate debugInferMethodCallType(AstNode n, TypePath path, Type t) { @@ -4174,7 +4172,7 @@ private module Debug { predicate debugTypeMention(TypeMention tm, TypePath path, Type type) { tm = getRelevantLocatable() and - tm.resolveTypeAt(path) = type + tm.getTypeAt(path) = type } Type debugInferAnnotatedType(AstNode n, TypePath path) { diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll index cde873f3685b..e50c7393f727 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll @@ -17,7 +17,7 @@ query predicate illFormedTypeMention(TypeMention tm) { not tm = any(PathTypeMention ptm | exists(ptm.resolvePathTypeAt(TypePath::nil())) and - not exists(ptm.resolveType()) + not exists(ptm.getType()) or ptm.(NonAliasPathTypeMention).getResolved() instanceof TypeAlias ) and diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index 7e5abaa5a3a3..a5a9eae37156 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -11,51 +11,44 @@ private import TypeInference abstract class TypeMention extends AstNode { /** Gets the type at `path` that this mention resolves to, if any. */ pragma[nomagic] - abstract Type resolveTypeAt(TypePath path); + abstract Type getTypeAt(TypePath path); /** Gets the type that this node resolves to, if any. */ pragma[nomagic] - final Type resolveType() { result = this.resolveTypeAt(TypePath::nil()) } -} - -final private class FinalTypeMention = TypeMention; - -/** An adapter for type mentions to implement `HasTypeTreeSig`. */ -final class TypeMentionTypeTree extends FinalTypeMention { - Type getTypeAt(TypePath path) { result = this.resolveTypeAt(path) } + final Type getType() { result = this.getTypeAt(TypePath::nil()) } } class TupleTypeReprMention extends TypeMention instanceof TupleTypeRepr { - override Type resolveTypeAt(TypePath path) { + override Type getTypeAt(TypePath path) { path.isEmpty() and result.(TupleType).getArity() = super.getNumberOfFields() or exists(TypePath suffix, int i | - result = super.getField(i).(TypeMention).resolveTypeAt(suffix) and + result = super.getField(i).(TypeMention).getTypeAt(suffix) and path = TypePath::cons(getTupleTypeParameter(super.getNumberOfFields(), i), suffix) ) } } class ParenthesizedArgListMention extends TypeMention instanceof ParenthesizedArgList { - override Type resolveTypeAt(TypePath path) { + override Type getTypeAt(TypePath path) { path.isEmpty() and result.(TupleType).getArity() = super.getNumberOfTypeArgs() or exists(TypePath suffix, int index | - result = super.getTypeArg(index).getTypeRepr().(TypeMention).resolveTypeAt(suffix) and + result = super.getTypeArg(index).getTypeRepr().(TypeMention).getTypeAt(suffix) and path = TypePath::cons(getTupleTypeParameter(super.getNumberOfTypeArgs(), index), suffix) ) } } class ArrayTypeReprMention extends TypeMention instanceof ArrayTypeRepr { - override Type resolveTypeAt(TypePath path) { + override Type getTypeAt(TypePath path) { path.isEmpty() and result instanceof ArrayType or exists(TypePath suffix | - result = super.getElementTypeRepr().(TypeMention).resolveTypeAt(suffix) and + result = super.getElementTypeRepr().(TypeMention).getTypeAt(suffix) and path = TypePath::cons(getArrayTypeParameter(), suffix) ) } @@ -66,23 +59,23 @@ class RefTypeReprMention extends TypeMention instanceof RefTypeRepr { if super.isMut() then result instanceof RefMutType else result instanceof RefSharedType } - override Type resolveTypeAt(TypePath path) { + override Type getTypeAt(TypePath path) { path.isEmpty() and result = this.resolveRootType() or exists(TypePath suffix | - result = super.getTypeRepr().(TypeMention).resolveTypeAt(suffix) and + result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and path = TypePath::cons(this.resolveRootType().getPositionalTypeParameter(0), suffix) ) } } class SliceTypeReprMention extends TypeMention instanceof SliceTypeRepr { - override Type resolveTypeAt(TypePath path) { + override Type getTypeAt(TypePath path) { path.isEmpty() and result instanceof SliceType or exists(TypePath suffix | - result = super.getTypeRepr().(TypeMention).resolveTypeAt(suffix) and + result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and path = TypePath::cons(getSliceTypeParameter(), suffix) ) } @@ -91,7 +84,7 @@ class SliceTypeReprMention extends TypeMention instanceof SliceTypeRepr { abstract class PathTypeMention extends TypeMention, Path { abstract Type resolvePathTypeAt(TypePath typePath); - final override Type resolveTypeAt(TypePath typePath) { + final override Type getTypeAt(TypePath typePath) { result = this.resolvePathTypeAt(typePath) and ( not result instanceof TypeParameter @@ -118,14 +111,14 @@ class AliasPathTypeMention extends PathTypeMention { * resulting type at `typePath`. */ override Type resolvePathTypeAt(TypePath typePath) { - result = rhs.resolveTypeAt(typePath) and + result = rhs.getTypeAt(typePath) and not result = pathGetTypeParameter(resolved, _) or exists(TypeParameter tp, TypeMention arg, TypePath prefix, TypePath suffix, int i | - tp = rhs.resolveTypeAt(prefix) and + tp = rhs.getTypeAt(prefix) and tp = pathGetTypeParameter(resolved, pragma[only_bind_into](i)) and arg = this.getSegment().getGenericArgList().getTypeArg(pragma[only_bind_into](i)) and - result = arg.resolveTypeAt(suffix) and + result = arg.getTypeAt(suffix) and typePath = prefix.append(suffix) ) } @@ -183,7 +176,7 @@ class NonAliasPathTypeMention extends PathTypeMention { // Defaults only apply to type mentions in type annotations this = any(PathTypeRepr ptp).getPath().getQualifier*() and exists(Type ty, TypePath prefix | - ty = this.resolveRootType().getTypeParameterDefault(i).resolveTypeAt(prefix) and + ty = this.resolveRootType().getTypeParameterDefault(i).getTypeAt(prefix) and if not ty = TSelfTypeParameter(resolved) then result = ty and path = prefix else @@ -191,13 +184,13 @@ class NonAliasPathTypeMention extends PathTypeMention { // be substituted for the type that implements the trait. exists(TypePath suffix | path = prefix.append(suffix) and - result = this.getSelfTraitBoundArg().resolveTypeAt(suffix) + result = this.getSelfTraitBoundArg().getTypeAt(suffix) ) ) } private Type getPositionalTypeArgument(int i, TypePath path) { - result = getPathTypeArgument(this, i).resolveTypeAt(path) + result = getPathTypeArgument(this, i).getTypeAt(path) or result = this.getDefaultPositionalTypeArgument(i, path) } @@ -226,11 +219,11 @@ class NonAliasPathTypeMention extends PathTypeMention { s.hasParenthesizedArgList() | tp = TTypeParamTypeParameter(t.getTypeParam()) and - result = s.getParenthesizedArgList().(TypeMention).resolveTypeAt(path) + result = s.getParenthesizedArgList().(TypeMention).getTypeAt(path) or tp = TAssociatedTypeTypeParameter(t, any(FnOnceTrait tr).getOutputType()) and ( - result = s.getRetType().getTypeRepr().(TypeMention).resolveTypeAt(path) + result = s.getRetType().getTypeRepr().(TypeMention).getTypeAt(path) or // When the `-> ...` return type is omitted, it defaults to `()`. not s.hasRetType() and @@ -326,24 +319,24 @@ class NonAliasPathTypeMention extends PathTypeMention { exists(TypeParameter tp, TypePath suffix | typePath = TypePath::cons(tp, suffix) | result = this.getTypeForTypeParameterAt(tp, suffix) or - result = this.getTypeMentionForTypeParameter(tp).resolveTypeAt(suffix) + result = this.getTypeMentionForTypeParameter(tp).getTypeAt(suffix) ) or // When the path refers to a trait, then the implicit `Self` type parameter // should be instantiated from the context. exists(TypePath suffix | - result = this.getSelfTraitBoundArg().resolveTypeAt(suffix) and + result = this.getSelfTraitBoundArg().getTypeAt(suffix) and typePath = TypePath::cons(TSelfTypeParameter(resolved), suffix) ) or not this.getSegment().hasTraitTypeRepr() and - result = this.getSegment().getTypeRepr().(TypeMention).resolveTypeAt(typePath) + result = this.getSegment().getTypeRepr().(TypeMention).getTypeAt(typePath) } } pragma[nomagic] Type resolveImplSelfTypeAt(Impl i, TypePath path) { - result = i.getSelfTy().(TypeMention).resolveTypeAt(path) + result = i.getSelfTy().(TypeMention).getTypeAt(path) } class ImplSelfMention extends PathTypeMention { @@ -361,11 +354,11 @@ class PathTypeReprMention extends TypeMention, PathTypeRepr { PathTypeReprMention() { path = this.getPath() } - override Type resolveTypeAt(TypePath typePath) { result = path.resolveTypeAt(typePath) } + override Type getTypeAt(TypePath typePath) { result = path.getTypeAt(typePath) } } class ImplTraitTypeReprMention extends TypeMention instanceof ImplTraitTypeRepr { - override Type resolveTypeAt(TypePath typePath) { + override Type getTypeAt(TypePath typePath) { typePath.isEmpty() and result.(ImplTraitType).getImplTraitTypeRepr() = this or @@ -384,14 +377,14 @@ private TypeParameter pathGetTypeParameter(TypeAlias alias, int i) { // Used to represent implicit `Self` type arguments in traits and `impl` blocks, // see `PathMention` for details. class TypeParamMention extends TypeMention instanceof TypeParam { - override Type resolveTypeAt(TypePath typePath) { + override Type getTypeAt(TypePath typePath) { typePath.isEmpty() and result = TTypeParamTypeParameter(this) } } class TraitMention extends TypeMention instanceof TraitItemNode { - override Type resolveTypeAt(TypePath typePath) { + override Type getTypeAt(TypePath typePath) { typePath.isEmpty() and result = TTrait(this) or @@ -424,7 +417,7 @@ class SelfTypeParameterMention extends TypeMention instanceof Name { Trait getTrait() { result = trait } - override Type resolveTypeAt(TypePath typePath) { + override Type getTypeAt(TypePath typePath) { typePath.isEmpty() and result = TSelfTypeParameter(trait) } @@ -474,7 +467,7 @@ class ShorthandSelfParameterMention extends TypeMention instanceof SelfParam { if super.isMut() then result instanceof RefMutType else result instanceof RefSharedType } - override Type resolveTypeAt(TypePath typePath) { + override Type getTypeAt(TypePath typePath) { // `fn f(&self, ...)` typePath.isEmpty() and result = this.resolveSelfRefRootType() @@ -512,7 +505,7 @@ class ShorthandReturnTypeMention extends TypeMention instanceof Name { not f.getRetType().hasTypeRepr() } - override Type resolveTypeAt(TypePath typePath) { + override Type getTypeAt(TypePath typePath) { typePath.isEmpty() and result instanceof UnitType } @@ -534,14 +527,14 @@ class DynTraitTypeReprMention extends TypeMention instanceof DynTraitTypeRepr { dynType.getTrait() = super.getTrait() } - override Type resolveTypeAt(TypePath path) { + override Type getTypeAt(TypePath path) { path.isEmpty() and result = dynType or exists(DynTraitTypeParameter tp, TypePath path0, TypePath suffix | dynType = tp.getDynTraitType() and path = TypePath::cons(tp, suffix) and - result = super.getTypeBoundList().getBound(0).getTypeRepr().(TypeMention).resolveTypeAt(path0) and + result = super.getTypeBoundList().getBound(0).getTypeRepr().(TypeMention).getTypeAt(path0) and path0.isCons(tp.getTraitTypeParameter(), suffix) ) } @@ -581,7 +574,7 @@ class DynTypeBoundListMention extends TypeMention instanceof TypeBoundList { ) } - override Type resolveTypeAt(TypePath path) { + override Type getTypeAt(TypePath path) { path.isEmpty() and result.(DynTraitType).getTrait() = trait or @@ -594,7 +587,7 @@ class DynTypeBoundListMention extends TypeMention instanceof TypeBoundList { } class NeverTypeReprMention extends TypeMention, NeverTypeRepr { - override Type resolveTypeAt(TypePath path) { result = TNeverType() and path.isEmpty() } + override Type getTypeAt(TypePath path) { result = TNeverType() and path.isEmpty() } } class PtrTypeReprMention extends TypeMention instanceof PtrTypeRepr { @@ -604,11 +597,11 @@ class PtrTypeReprMention extends TypeMention instanceof PtrTypeRepr { super.isMut() and result instanceof PtrMutType } - override Type resolveTypeAt(TypePath path) { + override Type getTypeAt(TypePath path) { path.isEmpty() and result = this.resolveRootType() or exists(TypePath suffix | - result = super.getTypeRepr().(TypeMention).resolveTypeAt(suffix) and + result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and path = TypePath::cons(this.resolveRootType().getPositionalTypeParameter(0), suffix) ) } From c488086135e8153c953f62a9c38411461df48187 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Mon, 26 Jan 2026 10:26:28 +0100 Subject: [PATCH 149/433] Kotlin: Ensure the kotlin extractor is loaded as the last extension to be able to capture expansions from other extensions --- .../main/kotlin/KotlinExtractorComponentRegistrar.kt | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/java/kotlin-extractor/src/main/kotlin/KotlinExtractorComponentRegistrar.kt b/java/kotlin-extractor/src/main/kotlin/KotlinExtractorComponentRegistrar.kt index 7fd6416dcd62..81e3c2bba360 100644 --- a/java/kotlin-extractor/src/main/kotlin/KotlinExtractorComponentRegistrar.kt +++ b/java/kotlin-extractor/src/main/kotlin/KotlinExtractorComponentRegistrar.kt @@ -4,6 +4,7 @@ package com.github.codeql import com.intellij.mock.MockProject +import com.intellij.openapi.extensions.LoadingOrder import org.jetbrains.kotlin.backend.common.extensions.IrGenerationExtension import org.jetbrains.kotlin.config.CompilerConfiguration @@ -16,14 +17,18 @@ class KotlinExtractorComponentRegistrar : Kotlin2ComponentRegistrar() { if (invocationTrapFile == null) { throw Exception("Required argument for TRAP invocation file not given") } - IrGenerationExtension.registerExtension( - project, + // Register with LoadingOrder.LAST to ensure the extractor runs after other + // IR generation plugins (like kotlinx.serialization) have generated their code. + val extensionPoint = project.extensionArea.getExtensionPoint(IrGenerationExtension.extensionPointName) + extensionPoint.registerExtension( KotlinExtractorExtension( invocationTrapFile, configuration[KEY_CHECK_TRAP_IDENTICAL] ?: false, configuration[KEY_COMPILATION_STARTTIME], configuration[KEY_EXIT_AFTER_EXTRACTION] ?: false - ) + ), + LoadingOrder.LAST, + project ) } } From 01cc19cffc61b3226037e4eb87f83f8075ab0653 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Fri, 23 Jan 2026 13:39:26 +0100 Subject: [PATCH 150/433] Rust: Add trait visibility test using `Self` --- .../library-tests/path-resolution/main.rs | 7 + .../path-resolution/path-resolution.expected | 499 +++++++++--------- 2 files changed, 258 insertions(+), 248 deletions(-) diff --git a/rust/ql/test/library-tests/path-resolution/main.rs b/rust/ql/test/library-tests/path-resolution/main.rs index 0c60ac9d2d01..f428f851c31d 100644 --- a/rust/ql/test/library-tests/path-resolution/main.rs +++ b/rust/ql/test/library-tests/path-resolution/main.rs @@ -606,6 +606,13 @@ mod trait_visibility { // Only the `Foo` trait is visible use m::Foo; // $ item=Foo X::a_method(&x); // $ item=X_Foo::a_method + + #[rustfmt::skip] + impl X { // $ item=X + fn test(&self) { + Self::a_method(self); // $ item=X_Foo::a_method + } + } } { // Only the `Bar` trait is visible diff --git a/rust/ql/test/library-tests/path-resolution/path-resolution.expected b/rust/ql/test/library-tests/path-resolution/path-resolution.expected index b204368cdb53..ad581e8bf93e 100644 --- a/rust/ql/test/library-tests/path-resolution/path-resolution.expected +++ b/rust/ql/test/library-tests/path-resolution/path-resolution.expected @@ -19,21 +19,21 @@ mod | main.rs:295:5:303:5 | mod m14 | | main.rs:306:1:375:1 | mod m15 | | main.rs:377:1:574:1 | mod m16 | -| main.rs:576:1:626:1 | mod trait_visibility | +| main.rs:576:1:633:1 | mod trait_visibility | | main.rs:577:5:599:5 | mod m | -| main.rs:628:1:658:1 | mod m17 | -| main.rs:660:1:678:1 | mod m18 | -| main.rs:665:5:677:5 | mod m19 | -| main.rs:670:9:676:9 | mod m20 | -| main.rs:680:1:705:1 | mod m21 | -| main.rs:681:5:687:5 | mod m22 | -| main.rs:689:5:704:5 | mod m33 | -| main.rs:707:1:732:1 | mod m23 | -| main.rs:734:1:802:1 | mod m24 | -| main.rs:819:1:871:1 | mod associated_types | -| main.rs:877:1:896:1 | mod impl_with_attribute_macro | -| main.rs:898:1:939:1 | mod patterns | -| main.rs:941:1:985:1 | mod self_constructors | +| main.rs:635:1:665:1 | mod m17 | +| main.rs:667:1:685:1 | mod m18 | +| main.rs:672:5:684:5 | mod m19 | +| main.rs:677:9:683:9 | mod m20 | +| main.rs:687:1:712:1 | mod m21 | +| main.rs:688:5:694:5 | mod m22 | +| main.rs:696:5:711:5 | mod m33 | +| main.rs:714:1:739:1 | mod m23 | +| main.rs:741:1:809:1 | mod m24 | +| main.rs:826:1:878:1 | mod associated_types | +| main.rs:884:1:903:1 | mod impl_with_attribute_macro | +| main.rs:905:1:946:1 | mod patterns | +| main.rs:948:1:992:1 | mod self_constructors | | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:20:1:20:12 | mod my3 | | my2/mod.rs:22:1:23:10 | mod mymod | @@ -74,7 +74,7 @@ resolvePath | main.rs:37:17:37:24 | ...::f | main.rs:26:9:28:9 | fn f | | main.rs:39:17:39:23 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:40:17:40:17 | f | main.rs:26:9:28:9 | fn f | -| main.rs:47:9:47:13 | super | main.rs:1:1:1024:2 | SourceFile | +| main.rs:47:9:47:13 | super | main.rs:1:1:1031:2 | SourceFile | | main.rs:47:9:47:17 | ...::m1 | main.rs:20:1:44:1 | mod m1 | | main.rs:47:9:47:21 | ...::m2 | main.rs:25:5:43:5 | mod m2 | | main.rs:47:9:47:24 | ...::g | main.rs:30:9:34:9 | fn g | @@ -89,7 +89,7 @@ resolvePath | main.rs:68:17:68:19 | Foo | main.rs:66:9:66:21 | struct Foo | | main.rs:71:13:71:15 | Foo | main.rs:60:5:60:17 | struct Foo | | main.rs:73:5:73:5 | f | main.rs:62:5:69:5 | fn f | -| main.rs:75:5:75:8 | self | main.rs:1:1:1024:2 | SourceFile | +| main.rs:75:5:75:8 | self | main.rs:1:1:1031:2 | SourceFile | | main.rs:75:5:75:11 | ...::i | main.rs:78:1:90:1 | fn i | | main.rs:79:5:79:11 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:81:13:81:15 | Foo | main.rs:55:1:55:13 | struct Foo | @@ -111,7 +111,7 @@ resolvePath | main.rs:112:9:112:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:118:9:118:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:122:9:122:15 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:125:13:125:17 | super | main.rs:1:1:1024:2 | SourceFile | +| main.rs:125:13:125:17 | super | main.rs:1:1:1031:2 | SourceFile | | main.rs:125:13:125:21 | ...::m5 | main.rs:110:1:114:1 | mod m5 | | main.rs:126:9:126:9 | f | main.rs:111:5:113:5 | fn f | | main.rs:126:9:126:9 | f | main.rs:117:5:119:5 | fn f | @@ -336,237 +336,240 @@ resolvePath | main.rs:607:17:607:22 | ...::Foo | main.rs:578:9:580:9 | trait Foo | | main.rs:608:13:608:13 | X | main.rs:586:9:586:21 | struct X | | main.rs:608:13:608:23 | ...::a_method | main.rs:588:26:591:13 | fn a_method | -| main.rs:612:17:612:17 | m | main.rs:577:5:599:5 | mod m | -| main.rs:612:17:612:22 | ...::Bar | main.rs:582:9:584:9 | trait Bar | -| main.rs:613:13:613:13 | X | main.rs:586:9:586:21 | struct X | -| main.rs:613:13:613:23 | ...::a_method | main.rs:594:26:597:13 | fn a_method | -| main.rs:617:17:617:17 | m | main.rs:577:5:599:5 | mod m | -| main.rs:617:17:617:22 | ...::Bar | main.rs:582:9:584:9 | trait Bar | -| main.rs:618:13:618:13 | X | main.rs:586:9:586:21 | struct X | -| main.rs:618:13:618:23 | ...::a_method | main.rs:594:26:597:13 | fn a_method | -| main.rs:623:13:623:13 | m | main.rs:577:5:599:5 | mod m | -| main.rs:623:13:623:18 | ...::Bar | main.rs:582:9:584:9 | trait Bar | -| main.rs:623:13:623:28 | ...::a_method | main.rs:583:13:583:31 | fn a_method | -| main.rs:636:10:636:16 | MyTrait | main.rs:629:5:631:5 | trait MyTrait | -| main.rs:637:9:637:9 | S | main.rs:633:5:633:13 | struct S | -| main.rs:639:13:639:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:645:7:645:13 | MyTrait | main.rs:629:5:631:5 | trait MyTrait | -| main.rs:646:10:646:10 | T | main.rs:644:10:644:10 | T | -| main.rs:648:9:648:9 | T | main.rs:644:10:644:10 | T | -| main.rs:648:9:648:12 | ...::f | main.rs:630:9:630:20 | fn f | -| main.rs:649:9:649:15 | MyTrait | main.rs:629:5:631:5 | trait MyTrait | -| main.rs:649:9:649:18 | ...::f | main.rs:630:9:630:20 | fn f | -| main.rs:654:9:654:9 | g | main.rs:643:5:650:5 | fn g | -| main.rs:655:11:655:11 | S | main.rs:633:5:633:13 | struct S | -| main.rs:662:9:662:15 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:667:13:667:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:672:17:672:23 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:673:17:673:21 | super | main.rs:665:5:677:5 | mod m19 | -| main.rs:673:17:673:24 | ...::f | main.rs:666:9:668:9 | fn f | -| main.rs:674:17:674:21 | super | main.rs:665:5:677:5 | mod m19 | -| main.rs:674:17:674:28 | ...::super | main.rs:660:1:678:1 | mod m18 | -| main.rs:674:17:674:31 | ...::f | main.rs:661:5:663:5 | fn f | -| main.rs:691:13:691:17 | super | main.rs:680:1:705:1 | mod m21 | -| main.rs:691:13:691:22 | ...::m22 | main.rs:681:5:687:5 | mod m22 | -| main.rs:691:13:691:30 | ...::MyEnum | main.rs:682:9:684:9 | enum MyEnum | -| main.rs:692:13:692:16 | self | main.rs:682:9:684:9 | enum MyEnum | -| main.rs:696:13:696:17 | super | main.rs:680:1:705:1 | mod m21 | -| main.rs:696:13:696:22 | ...::m22 | main.rs:681:5:687:5 | mod m22 | -| main.rs:696:13:696:32 | ...::MyStruct | main.rs:686:9:686:28 | struct MyStruct | -| main.rs:697:13:697:16 | self | main.rs:686:9:686:28 | struct MyStruct | -| main.rs:701:21:701:26 | MyEnum | main.rs:682:9:684:9 | enum MyEnum | -| main.rs:701:21:701:29 | ...::A | main.rs:683:13:683:13 | A | -| main.rs:702:21:702:28 | MyStruct | main.rs:686:9:686:28 | struct MyStruct | -| main.rs:718:10:720:5 | Trait1::<...> | main.rs:708:5:713:5 | trait Trait1 | -| main.rs:719:7:719:10 | Self | main.rs:715:5:715:13 | struct S | -| main.rs:721:11:721:11 | S | main.rs:715:5:715:13 | struct S | -| main.rs:723:13:723:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:729:17:729:17 | S | main.rs:715:5:715:13 | struct S | -| main.rs:745:15:745:15 | T | main.rs:744:26:744:26 | T | -| main.rs:750:9:750:24 | GenericStruct::<...> | main.rs:743:5:746:5 | struct GenericStruct | -| main.rs:750:23:750:23 | T | main.rs:749:10:749:10 | T | -| main.rs:752:9:752:9 | T | main.rs:749:10:749:10 | T | -| main.rs:752:12:752:17 | TraitA | main.rs:735:5:737:5 | trait TraitA | -| main.rs:761:9:761:24 | GenericStruct::<...> | main.rs:743:5:746:5 | struct GenericStruct | -| main.rs:761:23:761:23 | T | main.rs:760:10:760:10 | T | -| main.rs:763:9:763:9 | T | main.rs:760:10:760:10 | T | -| main.rs:763:12:763:17 | TraitB | main.rs:739:5:741:5 | trait TraitB | -| main.rs:764:9:764:9 | T | main.rs:760:10:760:10 | T | -| main.rs:764:12:764:17 | TraitA | main.rs:735:5:737:5 | trait TraitA | -| main.rs:775:10:775:15 | TraitA | main.rs:735:5:737:5 | trait TraitA | -| main.rs:775:21:775:31 | Implementor | main.rs:772:5:772:23 | struct Implementor | -| main.rs:777:13:777:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:782:10:782:15 | TraitB | main.rs:739:5:741:5 | trait TraitB | -| main.rs:782:21:782:31 | Implementor | main.rs:772:5:772:23 | struct Implementor | +| main.rs:611:18:611:18 | X | main.rs:586:9:586:21 | struct X | +| main.rs:613:21:613:24 | Self | main.rs:586:9:586:21 | struct X | +| main.rs:613:21:613:34 | ...::a_method | main.rs:588:26:591:13 | fn a_method | +| main.rs:619:17:619:17 | m | main.rs:577:5:599:5 | mod m | +| main.rs:619:17:619:22 | ...::Bar | main.rs:582:9:584:9 | trait Bar | +| main.rs:620:13:620:13 | X | main.rs:586:9:586:21 | struct X | +| main.rs:620:13:620:23 | ...::a_method | main.rs:594:26:597:13 | fn a_method | +| main.rs:624:17:624:17 | m | main.rs:577:5:599:5 | mod m | +| main.rs:624:17:624:22 | ...::Bar | main.rs:582:9:584:9 | trait Bar | +| main.rs:625:13:625:13 | X | main.rs:586:9:586:21 | struct X | +| main.rs:625:13:625:23 | ...::a_method | main.rs:594:26:597:13 | fn a_method | +| main.rs:630:13:630:13 | m | main.rs:577:5:599:5 | mod m | +| main.rs:630:13:630:18 | ...::Bar | main.rs:582:9:584:9 | trait Bar | +| main.rs:630:13:630:28 | ...::a_method | main.rs:583:13:583:31 | fn a_method | +| main.rs:643:10:643:16 | MyTrait | main.rs:636:5:638:5 | trait MyTrait | +| main.rs:644:9:644:9 | S | main.rs:640:5:640:13 | struct S | +| main.rs:646:13:646:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:652:7:652:13 | MyTrait | main.rs:636:5:638:5 | trait MyTrait | +| main.rs:653:10:653:10 | T | main.rs:651:10:651:10 | T | +| main.rs:655:9:655:9 | T | main.rs:651:10:651:10 | T | +| main.rs:655:9:655:12 | ...::f | main.rs:637:9:637:20 | fn f | +| main.rs:656:9:656:15 | MyTrait | main.rs:636:5:638:5 | trait MyTrait | +| main.rs:656:9:656:18 | ...::f | main.rs:637:9:637:20 | fn f | +| main.rs:661:9:661:9 | g | main.rs:650:5:657:5 | fn g | +| main.rs:662:11:662:11 | S | main.rs:640:5:640:13 | struct S | +| main.rs:669:9:669:15 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:674:13:674:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:679:17:679:23 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:680:17:680:21 | super | main.rs:672:5:684:5 | mod m19 | +| main.rs:680:17:680:24 | ...::f | main.rs:673:9:675:9 | fn f | +| main.rs:681:17:681:21 | super | main.rs:672:5:684:5 | mod m19 | +| main.rs:681:17:681:28 | ...::super | main.rs:667:1:685:1 | mod m18 | +| main.rs:681:17:681:31 | ...::f | main.rs:668:5:670:5 | fn f | +| main.rs:698:13:698:17 | super | main.rs:687:1:712:1 | mod m21 | +| main.rs:698:13:698:22 | ...::m22 | main.rs:688:5:694:5 | mod m22 | +| main.rs:698:13:698:30 | ...::MyEnum | main.rs:689:9:691:9 | enum MyEnum | +| main.rs:699:13:699:16 | self | main.rs:689:9:691:9 | enum MyEnum | +| main.rs:703:13:703:17 | super | main.rs:687:1:712:1 | mod m21 | +| main.rs:703:13:703:22 | ...::m22 | main.rs:688:5:694:5 | mod m22 | +| main.rs:703:13:703:32 | ...::MyStruct | main.rs:693:9:693:28 | struct MyStruct | +| main.rs:704:13:704:16 | self | main.rs:693:9:693:28 | struct MyStruct | +| main.rs:708:21:708:26 | MyEnum | main.rs:689:9:691:9 | enum MyEnum | +| main.rs:708:21:708:29 | ...::A | main.rs:690:13:690:13 | A | +| main.rs:709:21:709:28 | MyStruct | main.rs:693:9:693:28 | struct MyStruct | +| main.rs:725:10:727:5 | Trait1::<...> | main.rs:715:5:720:5 | trait Trait1 | +| main.rs:726:7:726:10 | Self | main.rs:722:5:722:13 | struct S | +| main.rs:728:11:728:11 | S | main.rs:722:5:722:13 | struct S | +| main.rs:730:13:730:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:736:17:736:17 | S | main.rs:722:5:722:13 | struct S | +| main.rs:752:15:752:15 | T | main.rs:751:26:751:26 | T | +| main.rs:757:9:757:24 | GenericStruct::<...> | main.rs:750:5:753:5 | struct GenericStruct | +| main.rs:757:23:757:23 | T | main.rs:756:10:756:10 | T | +| main.rs:759:9:759:9 | T | main.rs:756:10:756:10 | T | +| main.rs:759:12:759:17 | TraitA | main.rs:742:5:744:5 | trait TraitA | +| main.rs:768:9:768:24 | GenericStruct::<...> | main.rs:750:5:753:5 | struct GenericStruct | +| main.rs:768:23:768:23 | T | main.rs:767:10:767:10 | T | +| main.rs:770:9:770:9 | T | main.rs:767:10:767:10 | T | +| main.rs:770:12:770:17 | TraitB | main.rs:746:5:748:5 | trait TraitB | +| main.rs:771:9:771:9 | T | main.rs:767:10:767:10 | T | +| main.rs:771:12:771:17 | TraitA | main.rs:742:5:744:5 | trait TraitA | +| main.rs:782:10:782:15 | TraitA | main.rs:742:5:744:5 | trait TraitA | +| main.rs:782:21:782:31 | Implementor | main.rs:779:5:779:23 | struct Implementor | | main.rs:784:13:784:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:790:24:790:34 | Implementor | main.rs:772:5:772:23 | struct Implementor | -| main.rs:791:23:791:35 | GenericStruct | main.rs:743:5:746:5 | struct GenericStruct | -| main.rs:797:9:797:36 | GenericStruct::<...> | main.rs:743:5:746:5 | struct GenericStruct | -| main.rs:797:9:797:50 | ...::call_trait_a | main.rs:754:9:756:9 | fn call_trait_a | -| main.rs:797:25:797:35 | Implementor | main.rs:772:5:772:23 | struct Implementor | -| main.rs:800:9:800:36 | GenericStruct::<...> | main.rs:743:5:746:5 | struct GenericStruct | -| main.rs:800:9:800:47 | ...::call_both | main.rs:766:9:769:9 | fn call_both | -| main.rs:800:25:800:35 | Implementor | main.rs:772:5:772:23 | struct Implementor | -| main.rs:806:3:806:12 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:806:3:806:24 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | -| main.rs:810:6:810:12 | AStruct | main.rs:809:1:809:17 | struct AStruct | -| main.rs:812:7:812:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:812:7:812:28 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | -| main.rs:815:7:815:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:815:7:815:28 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | -| main.rs:820:9:820:11 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:820:9:820:19 | ...::marker | {EXTERNAL LOCATION} | mod marker | -| main.rs:820:9:820:32 | ...::PhantomData | {EXTERNAL LOCATION} | struct PhantomData | -| main.rs:821:9:821:11 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:821:9:821:19 | ...::result | {EXTERNAL LOCATION} | mod result | -| main.rs:821:9:821:27 | ...::Result | {EXTERNAL LOCATION} | enum Result | -| main.rs:829:19:829:22 | Self | main.rs:823:5:831:5 | trait Reduce | -| main.rs:829:19:829:29 | ...::Input | main.rs:824:9:824:19 | type Input | -| main.rs:830:14:830:46 | Result::<...> | {EXTERNAL LOCATION} | enum Result | -| main.rs:830:21:830:24 | Self | main.rs:823:5:831:5 | trait Reduce | -| main.rs:830:21:830:32 | ...::Output | main.rs:825:21:826:20 | type Output | -| main.rs:830:35:830:38 | Self | main.rs:823:5:831:5 | trait Reduce | -| main.rs:830:35:830:45 | ...::Error | main.rs:824:21:825:19 | type Error | -| main.rs:834:17:834:34 | PhantomData::<...> | {EXTERNAL LOCATION} | struct PhantomData | -| main.rs:834:29:834:33 | Input | main.rs:833:19:833:23 | Input | -| main.rs:835:17:835:34 | PhantomData::<...> | {EXTERNAL LOCATION} | struct PhantomData | -| main.rs:835:29:835:33 | Error | main.rs:833:26:833:30 | Error | -| main.rs:842:11:842:16 | Reduce | main.rs:823:5:831:5 | trait Reduce | -| main.rs:843:13:846:9 | MyImpl::<...> | main.rs:833:5:836:5 | struct MyImpl | -| main.rs:844:13:844:17 | Input | main.rs:840:13:840:17 | Input | -| main.rs:845:13:845:17 | Error | main.rs:841:13:841:17 | Error | -| main.rs:848:22:851:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | -| main.rs:849:13:849:17 | Input | main.rs:840:13:840:17 | Input | -| main.rs:850:13:850:16 | Self | main.rs:833:5:836:5 | struct MyImpl | -| main.rs:850:13:850:23 | ...::Error | main.rs:852:11:856:9 | type Error | -| main.rs:853:22:855:9 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:854:11:854:15 | Error | main.rs:841:13:841:17 | Error | -| main.rs:858:13:858:17 | Input | main.rs:840:13:840:17 | Input | -| main.rs:863:19:863:22 | Self | main.rs:833:5:836:5 | struct MyImpl | -| main.rs:863:19:863:29 | ...::Input | main.rs:848:9:852:9 | type Input | -| main.rs:864:14:867:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | -| main.rs:865:13:865:16 | Self | main.rs:833:5:836:5 | struct MyImpl | -| main.rs:865:13:865:24 | ...::Output | main.rs:856:11:859:9 | type Output | -| main.rs:866:13:866:16 | Self | main.rs:833:5:836:5 | struct MyImpl | -| main.rs:866:13:866:23 | ...::Error | main.rs:852:11:856:9 | type Error | -| main.rs:873:5:873:7 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:873:11:873:14 | self | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:875:15:875:17 | ztd | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:875:15:875:25 | ...::string | {EXTERNAL LOCATION} | mod string | -| main.rs:875:15:875:33 | ...::String | {EXTERNAL LOCATION} | struct String | -| main.rs:885:7:885:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:885:7:885:26 | ...::identity | proc_macro.rs:15:1:18:1 | fn identity | -| main.rs:886:10:886:15 | ATrait | main.rs:881:5:883:5 | trait ATrait | -| main.rs:886:21:886:23 | i64 | {EXTERNAL LOCATION} | struct i64 | -| main.rs:888:11:888:13 | i64 | {EXTERNAL LOCATION} | struct i64 | -| main.rs:894:17:894:19 | Foo | main.rs:879:5:879:15 | struct Foo | -| main.rs:900:22:900:32 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:900:29:900:31 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:901:17:901:20 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:902:17:902:27 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:902:24:902:26 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:903:13:903:16 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:904:17:904:20 | None | {EXTERNAL LOCATION} | None | -| main.rs:906:13:906:16 | None | {EXTERNAL LOCATION} | None | -| main.rs:907:17:907:20 | None | {EXTERNAL LOCATION} | None | -| main.rs:916:19:916:29 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:916:26:916:28 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:917:26:917:29 | test | main.rs:899:5:913:5 | fn test | -| main.rs:923:14:923:16 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:928:17:928:20 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:930:13:930:16 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:935:13:935:16 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:935:18:935:18 | z | main.rs:922:5:924:12 | Const | -| main.rs:935:24:935:24 | z | main.rs:922:5:924:12 | Const | -| main.rs:943:24:943:26 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:946:10:946:20 | TupleStruct | main.rs:943:5:943:28 | struct TupleStruct | -| main.rs:948:19:948:21 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:948:27:948:30 | Self | main.rs:943:5:943:28 | struct TupleStruct | -| main.rs:949:21:949:24 | Self | main.rs:943:5:943:28 | struct TupleStruct | -| main.rs:950:31:950:34 | Self | main.rs:943:5:943:28 | struct TupleStruct | -| main.rs:956:12:956:14 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:960:10:960:21 | StructStruct | main.rs:955:5:957:5 | struct StructStruct | -| main.rs:962:19:962:21 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:962:27:962:30 | Self | main.rs:955:5:957:5 | struct StructStruct | -| main.rs:963:13:963:16 | Self | main.rs:955:5:957:5 | struct StructStruct | -| main.rs:969:13:969:15 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:974:10:974:15 | MyEnum | main.rs:967:5:971:5 | enum MyEnum | -| main.rs:975:25:975:27 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:977:17:977:20 | Self | main.rs:967:5:971:5 | enum MyEnum | -| main.rs:977:17:977:23 | ...::A | main.rs:968:9:970:9 | A | -| main.rs:988:5:988:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:988:5:988:14 | ...::nested | my.rs:1:1:1:15 | mod nested | -| main.rs:988:5:988:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | -| main.rs:988:5:988:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | -| main.rs:988:5:988:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | -| main.rs:989:5:989:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:989:5:989:9 | ...::f | my.rs:5:1:7:1 | fn f | -| main.rs:990:5:990:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | -| main.rs:990:5:990:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | -| main.rs:990:5:990:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | -| main.rs:990:5:990:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:991:5:991:5 | f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:992:5:992:5 | g | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:993:5:993:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:993:5:993:12 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:994:5:994:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:994:5:994:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:994:5:994:13 | ...::g | main.rs:30:9:34:9 | fn g | -| main.rs:995:5:995:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:995:5:995:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:995:5:995:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | -| main.rs:995:5:995:17 | ...::h | main.rs:37:27:41:13 | fn h | -| main.rs:996:5:996:6 | m4 | main.rs:46:1:53:1 | mod m4 | -| main.rs:996:5:996:9 | ...::i | main.rs:49:5:52:5 | fn i | -| main.rs:997:5:997:5 | h | main.rs:57:1:76:1 | fn h | -| main.rs:998:5:998:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:999:5:999:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:1000:5:1000:5 | j | main.rs:104:1:108:1 | fn j | -| main.rs:1001:5:1001:6 | m6 | main.rs:116:1:128:1 | mod m6 | -| main.rs:1001:5:1001:9 | ...::g | main.rs:121:5:127:5 | fn g | -| main.rs:1002:5:1002:6 | m7 | main.rs:130:1:149:1 | mod m7 | -| main.rs:1002:5:1002:9 | ...::f | main.rs:141:5:148:5 | fn f | -| main.rs:1003:5:1003:6 | m8 | main.rs:151:1:205:1 | mod m8 | -| main.rs:1003:5:1003:9 | ...::g | main.rs:189:5:204:5 | fn g | -| main.rs:1004:5:1004:6 | m9 | main.rs:207:1:215:1 | mod m9 | -| main.rs:1004:5:1004:9 | ...::f | main.rs:210:5:214:5 | fn f | -| main.rs:1005:5:1005:7 | m11 | main.rs:238:1:275:1 | mod m11 | -| main.rs:1005:5:1005:10 | ...::f | main.rs:243:5:246:5 | fn f | -| main.rs:1006:5:1006:7 | m15 | main.rs:306:1:375:1 | mod m15 | -| main.rs:1006:5:1006:10 | ...::f | main.rs:362:5:374:5 | fn f | -| main.rs:1007:5:1007:7 | m16 | main.rs:377:1:574:1 | mod m16 | -| main.rs:1007:5:1007:10 | ...::f | main.rs:446:5:470:5 | fn f | -| main.rs:1008:5:1008:20 | trait_visibility | main.rs:576:1:626:1 | mod trait_visibility | -| main.rs:1008:5:1008:23 | ...::f | main.rs:603:5:625:5 | fn f | -| main.rs:1009:5:1009:7 | m17 | main.rs:628:1:658:1 | mod m17 | -| main.rs:1009:5:1009:10 | ...::f | main.rs:652:5:657:5 | fn f | -| main.rs:1010:5:1010:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | -| main.rs:1010:5:1010:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | -| main.rs:1011:5:1011:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | -| main.rs:1011:5:1011:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | -| main.rs:1012:5:1012:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | -| main.rs:1012:5:1012:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | -| main.rs:1013:5:1013:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:1014:5:1014:12 | my_alias | main.rs:1:1:1:7 | mod my | -| main.rs:1014:5:1014:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:1015:5:1015:7 | m18 | main.rs:660:1:678:1 | mod m18 | -| main.rs:1015:5:1015:12 | ...::m19 | main.rs:665:5:677:5 | mod m19 | -| main.rs:1015:5:1015:17 | ...::m20 | main.rs:670:9:676:9 | mod m20 | -| main.rs:1015:5:1015:20 | ...::g | main.rs:671:13:675:13 | fn g | -| main.rs:1016:5:1016:7 | m23 | main.rs:707:1:732:1 | mod m23 | -| main.rs:1016:5:1016:10 | ...::f | main.rs:727:5:731:5 | fn f | -| main.rs:1017:5:1017:7 | m24 | main.rs:734:1:802:1 | mod m24 | -| main.rs:1017:5:1017:10 | ...::f | main.rs:788:5:801:5 | fn f | -| main.rs:1018:5:1018:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:1018:5:1018:11 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:1019:5:1019:13 | z_changed | main.rs:807:1:807:9 | fn z_changed | -| main.rs:1020:5:1020:11 | AStruct | main.rs:809:1:809:17 | struct AStruct | -| main.rs:1020:5:1020:22 | ...::z_on_type | main.rs:813:5:813:17 | fn z_on_type | -| main.rs:1021:5:1021:11 | AStruct | main.rs:809:1:809:17 | struct AStruct | -| main.rs:1022:5:1022:29 | impl_with_attribute_macro | main.rs:877:1:896:1 | mod impl_with_attribute_macro | -| main.rs:1022:5:1022:35 | ...::test | main.rs:892:5:895:5 | fn test | -| main.rs:1023:5:1023:12 | patterns | main.rs:898:1:939:1 | mod patterns | -| main.rs:1023:5:1023:18 | ...::test | main.rs:899:5:913:5 | fn test | +| main.rs:789:10:789:15 | TraitB | main.rs:746:5:748:5 | trait TraitB | +| main.rs:789:21:789:31 | Implementor | main.rs:779:5:779:23 | struct Implementor | +| main.rs:791:13:791:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:797:24:797:34 | Implementor | main.rs:779:5:779:23 | struct Implementor | +| main.rs:798:23:798:35 | GenericStruct | main.rs:750:5:753:5 | struct GenericStruct | +| main.rs:804:9:804:36 | GenericStruct::<...> | main.rs:750:5:753:5 | struct GenericStruct | +| main.rs:804:9:804:50 | ...::call_trait_a | main.rs:761:9:763:9 | fn call_trait_a | +| main.rs:804:25:804:35 | Implementor | main.rs:779:5:779:23 | struct Implementor | +| main.rs:807:9:807:36 | GenericStruct::<...> | main.rs:750:5:753:5 | struct GenericStruct | +| main.rs:807:9:807:47 | ...::call_both | main.rs:773:9:776:9 | fn call_both | +| main.rs:807:25:807:35 | Implementor | main.rs:779:5:779:23 | struct Implementor | +| main.rs:813:3:813:12 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:813:3:813:24 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | +| main.rs:817:6:817:12 | AStruct | main.rs:816:1:816:17 | struct AStruct | +| main.rs:819:7:819:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:819:7:819:28 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | +| main.rs:822:7:822:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:822:7:822:28 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | +| main.rs:827:9:827:11 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:827:9:827:19 | ...::marker | {EXTERNAL LOCATION} | mod marker | +| main.rs:827:9:827:32 | ...::PhantomData | {EXTERNAL LOCATION} | struct PhantomData | +| main.rs:828:9:828:11 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:828:9:828:19 | ...::result | {EXTERNAL LOCATION} | mod result | +| main.rs:828:9:828:27 | ...::Result | {EXTERNAL LOCATION} | enum Result | +| main.rs:836:19:836:22 | Self | main.rs:830:5:838:5 | trait Reduce | +| main.rs:836:19:836:29 | ...::Input | main.rs:831:9:831:19 | type Input | +| main.rs:837:14:837:46 | Result::<...> | {EXTERNAL LOCATION} | enum Result | +| main.rs:837:21:837:24 | Self | main.rs:830:5:838:5 | trait Reduce | +| main.rs:837:21:837:32 | ...::Output | main.rs:832:21:833:20 | type Output | +| main.rs:837:35:837:38 | Self | main.rs:830:5:838:5 | trait Reduce | +| main.rs:837:35:837:45 | ...::Error | main.rs:831:21:832:19 | type Error | +| main.rs:841:17:841:34 | PhantomData::<...> | {EXTERNAL LOCATION} | struct PhantomData | +| main.rs:841:29:841:33 | Input | main.rs:840:19:840:23 | Input | +| main.rs:842:17:842:34 | PhantomData::<...> | {EXTERNAL LOCATION} | struct PhantomData | +| main.rs:842:29:842:33 | Error | main.rs:840:26:840:30 | Error | +| main.rs:849:11:849:16 | Reduce | main.rs:830:5:838:5 | trait Reduce | +| main.rs:850:13:853:9 | MyImpl::<...> | main.rs:840:5:843:5 | struct MyImpl | +| main.rs:851:13:851:17 | Input | main.rs:847:13:847:17 | Input | +| main.rs:852:13:852:17 | Error | main.rs:848:13:848:17 | Error | +| main.rs:855:22:858:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | +| main.rs:856:13:856:17 | Input | main.rs:847:13:847:17 | Input | +| main.rs:857:13:857:16 | Self | main.rs:840:5:843:5 | struct MyImpl | +| main.rs:857:13:857:23 | ...::Error | main.rs:859:11:863:9 | type Error | +| main.rs:860:22:862:9 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:861:11:861:15 | Error | main.rs:848:13:848:17 | Error | +| main.rs:865:13:865:17 | Input | main.rs:847:13:847:17 | Input | +| main.rs:870:19:870:22 | Self | main.rs:840:5:843:5 | struct MyImpl | +| main.rs:870:19:870:29 | ...::Input | main.rs:855:9:859:9 | type Input | +| main.rs:871:14:874:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | +| main.rs:872:13:872:16 | Self | main.rs:840:5:843:5 | struct MyImpl | +| main.rs:872:13:872:24 | ...::Output | main.rs:863:11:866:9 | type Output | +| main.rs:873:13:873:16 | Self | main.rs:840:5:843:5 | struct MyImpl | +| main.rs:873:13:873:23 | ...::Error | main.rs:859:11:863:9 | type Error | +| main.rs:880:5:880:7 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:880:11:880:14 | self | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:882:15:882:17 | ztd | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:882:15:882:25 | ...::string | {EXTERNAL LOCATION} | mod string | +| main.rs:882:15:882:33 | ...::String | {EXTERNAL LOCATION} | struct String | +| main.rs:892:7:892:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:892:7:892:26 | ...::identity | proc_macro.rs:15:1:18:1 | fn identity | +| main.rs:893:10:893:15 | ATrait | main.rs:888:5:890:5 | trait ATrait | +| main.rs:893:21:893:23 | i64 | {EXTERNAL LOCATION} | struct i64 | +| main.rs:895:11:895:13 | i64 | {EXTERNAL LOCATION} | struct i64 | +| main.rs:901:17:901:19 | Foo | main.rs:886:5:886:15 | struct Foo | +| main.rs:907:22:907:32 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:907:29:907:31 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:908:17:908:20 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:909:17:909:27 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:909:24:909:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:910:13:910:16 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:911:17:911:20 | None | {EXTERNAL LOCATION} | None | +| main.rs:913:13:913:16 | None | {EXTERNAL LOCATION} | None | +| main.rs:914:17:914:20 | None | {EXTERNAL LOCATION} | None | +| main.rs:923:19:923:29 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:923:26:923:28 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:924:26:924:29 | test | main.rs:906:5:920:5 | fn test | +| main.rs:930:14:930:16 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:935:17:935:20 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:937:13:937:16 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:942:13:942:16 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:942:18:942:18 | z | main.rs:929:5:931:12 | Const | +| main.rs:942:24:942:24 | z | main.rs:929:5:931:12 | Const | +| main.rs:950:24:950:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:953:10:953:20 | TupleStruct | main.rs:950:5:950:28 | struct TupleStruct | +| main.rs:955:19:955:21 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:955:27:955:30 | Self | main.rs:950:5:950:28 | struct TupleStruct | +| main.rs:956:21:956:24 | Self | main.rs:950:5:950:28 | struct TupleStruct | +| main.rs:957:31:957:34 | Self | main.rs:950:5:950:28 | struct TupleStruct | +| main.rs:963:12:963:14 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:967:10:967:21 | StructStruct | main.rs:962:5:964:5 | struct StructStruct | +| main.rs:969:19:969:21 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:969:27:969:30 | Self | main.rs:962:5:964:5 | struct StructStruct | +| main.rs:970:13:970:16 | Self | main.rs:962:5:964:5 | struct StructStruct | +| main.rs:976:13:976:15 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:981:10:981:15 | MyEnum | main.rs:974:5:978:5 | enum MyEnum | +| main.rs:982:25:982:27 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:984:17:984:20 | Self | main.rs:974:5:978:5 | enum MyEnum | +| main.rs:984:17:984:23 | ...::A | main.rs:975:9:977:9 | A | +| main.rs:995:5:995:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:995:5:995:14 | ...::nested | my.rs:1:1:1:15 | mod nested | +| main.rs:995:5:995:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | +| main.rs:995:5:995:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | +| main.rs:995:5:995:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | +| main.rs:996:5:996:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:996:5:996:9 | ...::f | my.rs:5:1:7:1 | fn f | +| main.rs:997:5:997:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | +| main.rs:997:5:997:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | +| main.rs:997:5:997:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | +| main.rs:997:5:997:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:998:5:998:5 | f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:999:5:999:5 | g | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1000:5:1000:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1000:5:1000:12 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1001:5:1001:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:1001:5:1001:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:1001:5:1001:13 | ...::g | main.rs:30:9:34:9 | fn g | +| main.rs:1002:5:1002:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:1002:5:1002:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:1002:5:1002:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | +| main.rs:1002:5:1002:17 | ...::h | main.rs:37:27:41:13 | fn h | +| main.rs:1003:5:1003:6 | m4 | main.rs:46:1:53:1 | mod m4 | +| main.rs:1003:5:1003:9 | ...::i | main.rs:49:5:52:5 | fn i | +| main.rs:1004:5:1004:5 | h | main.rs:57:1:76:1 | fn h | +| main.rs:1005:5:1005:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1006:5:1006:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1007:5:1007:5 | j | main.rs:104:1:108:1 | fn j | +| main.rs:1008:5:1008:6 | m6 | main.rs:116:1:128:1 | mod m6 | +| main.rs:1008:5:1008:9 | ...::g | main.rs:121:5:127:5 | fn g | +| main.rs:1009:5:1009:6 | m7 | main.rs:130:1:149:1 | mod m7 | +| main.rs:1009:5:1009:9 | ...::f | main.rs:141:5:148:5 | fn f | +| main.rs:1010:5:1010:6 | m8 | main.rs:151:1:205:1 | mod m8 | +| main.rs:1010:5:1010:9 | ...::g | main.rs:189:5:204:5 | fn g | +| main.rs:1011:5:1011:6 | m9 | main.rs:207:1:215:1 | mod m9 | +| main.rs:1011:5:1011:9 | ...::f | main.rs:210:5:214:5 | fn f | +| main.rs:1012:5:1012:7 | m11 | main.rs:238:1:275:1 | mod m11 | +| main.rs:1012:5:1012:10 | ...::f | main.rs:243:5:246:5 | fn f | +| main.rs:1013:5:1013:7 | m15 | main.rs:306:1:375:1 | mod m15 | +| main.rs:1013:5:1013:10 | ...::f | main.rs:362:5:374:5 | fn f | +| main.rs:1014:5:1014:7 | m16 | main.rs:377:1:574:1 | mod m16 | +| main.rs:1014:5:1014:10 | ...::f | main.rs:446:5:470:5 | fn f | +| main.rs:1015:5:1015:20 | trait_visibility | main.rs:576:1:633:1 | mod trait_visibility | +| main.rs:1015:5:1015:23 | ...::f | main.rs:603:5:632:5 | fn f | +| main.rs:1016:5:1016:7 | m17 | main.rs:635:1:665:1 | mod m17 | +| main.rs:1016:5:1016:10 | ...::f | main.rs:659:5:664:5 | fn f | +| main.rs:1017:5:1017:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | +| main.rs:1017:5:1017:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | +| main.rs:1018:5:1018:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | +| main.rs:1018:5:1018:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | +| main.rs:1019:5:1019:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | +| main.rs:1019:5:1019:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | +| main.rs:1020:5:1020:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1021:5:1021:12 | my_alias | main.rs:1:1:1:7 | mod my | +| main.rs:1021:5:1021:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1022:5:1022:7 | m18 | main.rs:667:1:685:1 | mod m18 | +| main.rs:1022:5:1022:12 | ...::m19 | main.rs:672:5:684:5 | mod m19 | +| main.rs:1022:5:1022:17 | ...::m20 | main.rs:677:9:683:9 | mod m20 | +| main.rs:1022:5:1022:20 | ...::g | main.rs:678:13:682:13 | fn g | +| main.rs:1023:5:1023:7 | m23 | main.rs:714:1:739:1 | mod m23 | +| main.rs:1023:5:1023:10 | ...::f | main.rs:734:5:738:5 | fn f | +| main.rs:1024:5:1024:7 | m24 | main.rs:741:1:809:1 | mod m24 | +| main.rs:1024:5:1024:10 | ...::f | main.rs:795:5:808:5 | fn f | +| main.rs:1025:5:1025:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1025:5:1025:11 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1026:5:1026:13 | z_changed | main.rs:814:1:814:9 | fn z_changed | +| main.rs:1027:5:1027:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | +| main.rs:1027:5:1027:22 | ...::z_on_type | main.rs:820:5:820:17 | fn z_on_type | +| main.rs:1028:5:1028:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | +| main.rs:1029:5:1029:29 | impl_with_attribute_macro | main.rs:884:1:903:1 | mod impl_with_attribute_macro | +| main.rs:1029:5:1029:35 | ...::test | main.rs:899:5:902:5 | fn test | +| main.rs:1030:5:1030:12 | patterns | main.rs:905:1:946:1 | mod patterns | +| main.rs:1030:5:1030:18 | ...::test | main.rs:906:5:920:5 | fn test | | my2/mod.rs:4:5:4:11 | println | {EXTERNAL LOCATION} | MacroRules | | my2/mod.rs:5:5:5:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:5:5:5:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | @@ -592,7 +595,7 @@ resolvePath | my2/my3/mod.rs:3:5:3:5 | g | my2/mod.rs:3:1:6:1 | fn g | | my2/my3/mod.rs:4:5:4:5 | h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:7:5:7:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | -| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1024:2 | SourceFile | +| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1031:2 | SourceFile | | my2/my3/mod.rs:7:5:7:19 | ...::h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:8:5:8:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | | my2/my3/mod.rs:8:5:8:12 | ...::g | my2/mod.rs:3:1:6:1 | fn g | From 4ce04e474948496bbf42993d229d0a3ff01f0313 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 16 Dec 2025 13:50:06 +0100 Subject: [PATCH 151/433] Shared: Provenance-based filtering of flow summaries --- .../dataflow/internal/FlowSummaryImpl.qll | 185 ++++++++++-------- 1 file changed, 105 insertions(+), 80 deletions(-) diff --git a/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll b/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll index a8260440938e..f7a47bdc74b7 100644 --- a/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll +++ b/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll @@ -21,6 +21,10 @@ signature module InputSig Lang> { string toString(); } + /** Holds if `c` is defined in source code. */ + bindingset[c] + predicate callableFromSource(SummarizedCallableBase c); + /** * A base class of elements that are candidates for flow source modeling. */ @@ -268,6 +272,9 @@ module Make< this = verification and verification = "manual" } + /** Gets the verification part of this provenance. */ + string getVerification() { result = verification } + /** * Holds if this is a valid generated provenance value. */ @@ -289,55 +296,42 @@ module Make< * * `preservesValue` indicates whether this is a value-preserving step or a taint-step. * - * If `model` is non-empty then it indicates the provenance of the model - * defining this flow. + * `p` indicates the provenance of the flow. + * + * `isExact` indicates whether there exists a model for which this callable is an exact + * match, that is, no overriding was used to identify this callable from the model. + * + * If `model` is non-empty then it indicates the origin of the model defining this flow. */ pragma[nomagic] abstract predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, + string model ); - /** - * Holds if there exists a generated summary that applies to this callable. - */ - final predicate hasGeneratedModel() { - exists(Provenance p | p.isGenerated() and this.hasProvenance(p)) - } - - /** - * Holds if all the summaries that apply to this callable are auto generated and not manually created. - * That is, only apply generated models, when there are no manual models. - */ - final predicate applyGeneratedModel() { - this.hasGeneratedModel() and - not this.hasManualModel() - } - /** * Holds if there exists a manual summary that applies to this callable. */ final predicate hasManualModel() { - exists(Provenance p | p.isManual() and this.hasProvenance(p)) + any(Provenance p | this.propagatesFlow(_, _, _, p, _, _)).isManual() } + } - /** - * Holds if there exists a manual summary that applies to this callable. - * Always apply manual models if they exist. - */ - final predicate applyManualModel() { this.hasManualModel() } - - /** - * Holds if there exists a summary that applies to this callable - * that has provenance `provenance`. - */ - predicate hasProvenance(Provenance provenance) { provenance = "manual" } + final private class SummarizedCallableFinal = SummarizedCallable; - /** - * Holds if there exists a model for which this callable is an exact - * match, that is, no overriding was used to identify this callable from - * the model. - */ - predicate hasExactModel() { none() } + /** + * A callable with a relevant flow summary. + * + * A flow summary is relevant if: + * + * - It is manual exact model, or + * - It is a manual inexact model and there is no exact manual (neutral) model, or + * - It is a generated model and (a) there is no source code available for the modeled + * callable, (b) there is no manual (neutral) model, and (c) the model is inexact + * and there is no generated exact (neutral) model. + */ + final class RelevantSummarizedCallable extends SummarizedCallableFinal { + RelevantSummarizedCallable() { this instanceof SummarizedCallableImpl } } /** A source element. */ @@ -476,6 +470,41 @@ module Make< module Private { private import Public + /** + * Holds if `c` has a relevant flow summary. + * + * A flow summary is relevant if: + * + * - It is manual exact model, or + * - It is a manual inexact model and there is no exact manual (neutral) model, or + * - It is a generated model and (a) there is no source code available for the modeled + * callable, (b) there is no manual (neutral) model, and (c) the model is inexact + * and there is no generated exact (neutral) model. + */ + predicate relevantSummary( + SummarizedCallable c, string input, string output, boolean preservesValue, Provenance p, + boolean isExact, string model + ) { + c.propagatesFlow(input, output, preservesValue, p, isExact, model) and + if p.isGenerated() or isExact = false + then + // Only apply generated models to functions in library code + not (p.isGenerated() and callableFromSource(c)) and + // Only apply generated or inexact models when no strictly better model exists + not exists(Provenance other, boolean isExactOther | + c.propagatesFlow(_, _, _, other, isExactOther, _) + or + neutralElement(c, "summary", other, isExactOther) + | + p.isGenerated() and other.isManual() + or + p.getVerification() = other.getVerification() and + isExact = false and + isExactOther = true + ) + else any() + } + /** * A synthetic global. This represents some form of global state, which * summaries can read and write individually. @@ -647,7 +676,7 @@ module Make< SummarizedCallableImpl callable, SummaryComponentStack input, SummaryComponentStack output, string whichOne ) { - callable.propagatesFlow(input, output, _, _) and + callable.propagatesFlow(input, output, _, _, _, _) and ( not isSupportedInputStack(input) and whichOne = "input" or @@ -688,9 +717,9 @@ module Make< private predicate summarySpec(string spec) { exists(SummarizedCallable c | - c.propagatesFlow(spec, _, _, _) + c.propagatesFlow(spec, _, _, _, _, _) or - c.propagatesFlow(_, spec, _, _) + c.propagatesFlow(_, spec, _, _, _, _) ) or isRelevantSource(_, spec, _, _, _) @@ -848,7 +877,7 @@ module Make< } /** - * A callable with a flow summary. + * A callable with a relevant flow summary. * * This interface is not meant to be used directly, instead use the public * `SummarizedCallable` interface. However, _if_ you need to use this, make @@ -857,13 +886,9 @@ module Make< * * ```ql * private class CAdapter extends SummarizedCallable instanceof C { - * override predicate propagatesFlow(string input, string output, boolean preservesValue, string model) { + * override predicate propagatesFlow(string input, string output, boolean preservesValue, Provenance p, string model) { * none() * } - * - * override predicate hasProvenance(Provenance provenance) { - * C.super.hasProvenance(provenance) - * } * } * ``` */ @@ -897,14 +922,8 @@ module Make< pragma[nomagic] abstract predicate propagatesFlow( SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue, - string model + Provenance p, boolean isExact, string model ); - - /** - * Holds if there exists a summary that applies to this callable - * that has provenance `provenance`. - */ - abstract predicate hasProvenance(Provenance provenance); } pragma[nomagic] @@ -912,17 +931,17 @@ module Make< SummarizedCallableImpl c, SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue, string model ) { - c.propagatesFlow(input, output, preservesValue, model) + c.propagatesFlow(input, output, preservesValue, _, _, model) or // observe side effects of callbacks on input arguments - c.propagatesFlow(output, input, preservesValue, model) and + c.propagatesFlow(output, input, preservesValue, _, _, model) and preservesValue = true and isCallbackParameter(input) and isContentOfArgument(output, _) or // flow from the receiver of a callback into the instance-parameter exists(SummaryComponentStack s, SummaryComponentStack callbackRef | - c.propagatesFlow(s, _, _, model) or c.propagatesFlow(_, s, _, model) + c.propagatesFlow(s, _, _, _, _, model) or c.propagatesFlow(_, s, _, _, _, model) | callbackRef = s.drop(_) and (isCallbackParameter(callbackRef) or callbackRef.head() = TReturnSummaryComponent(_)) and @@ -948,8 +967,8 @@ module Make< SummaryComponentStack mid, boolean preservesValue1, boolean preservesValue2, string model1, string model2 | - c.propagatesFlow(input, mid, preservesValue1, model1) and - c.propagatesFlow(mid, output, preservesValue2, model2) and + c.propagatesFlow(input, mid, preservesValue1, _, _, model1) and + c.propagatesFlow(mid, output, preservesValue2, _, _, model2) and mid.drop(mid.length() - 2) = SummaryComponentStack::push(TParameterSummaryComponent(_), SummaryComponentStack::singleton(TArgumentSummaryComponent(_))) and @@ -2046,19 +2065,31 @@ module Make< // adapter class for converting `SummarizedCallable`s to `SummarizedCallableImpl`s private class SummarizedCallableImplAdapter extends SummarizedCallableImpl instanceof SummarizedCallable { - override predicate propagatesFlow( - SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue, - string model - ) { + private SummaryComponentStack input_; + private SummaryComponentStack output_; + private boolean preservesValue_; + private Provenance p_; + private boolean isExact_; + private string model_; + + SummarizedCallableImplAdapter() { exists(AccessPath inSpec, AccessPath outSpec | - SummarizedCallable.super.propagatesFlow(inSpec, outSpec, preservesValue, model) and - interpretSpec(inSpec, input) and - interpretSpec(outSpec, output) + relevantSummary(this, inSpec, outSpec, preservesValue_, p_, isExact_, model_) and + interpretSpec(inSpec, input_) and + interpretSpec(outSpec, output_) ) } - override predicate hasProvenance(Provenance provenance) { - SummarizedCallable.super.hasProvenance(provenance) + override predicate propagatesFlow( + SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue, + Provenance p, boolean isExact, string model + ) { + input = input_ and + output = output_ and + preservesValue = preservesValue_ and + p = p_ and + isExact = isExact_ and + model = model_ } } @@ -2492,12 +2523,13 @@ module Make< string getCallableCsv(); predicate relevantSummary( - SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue + SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue, + Provenance p ); } /** Provides a query predicate for outputting a set of relevant flow summaries. */ - module TestSummaryOutput { + module TestSummaryOutput { /** Render the kind in the format used in flow summaries. */ private string renderKind(boolean preservesValue) { preservesValue = true and result = "value" @@ -2505,13 +2537,6 @@ module Make< preservesValue = false and result = "taint" } - private string renderProvenance(SummarizedCallable c) { - exists(Provenance p | p.isManual() and c.hasProvenance(p) and result = p.toString()) - or - not c.applyManualModel() and - c.hasProvenance(result) - } - /** * Holds if there exists a relevant summary callable with information roughly corresponding to `csv`. * Used for testing. @@ -2520,16 +2545,16 @@ module Make< */ query predicate summary(string csv) { exists( - RelevantSummarizedCallable c, SummaryComponentStack input, SummaryComponentStack output, - boolean preservesValue + RelSummarizedCallable c, SummaryComponentStack input, SummaryComponentStack output, + boolean preservesValue, Provenance p | - c.relevantSummary(input, output, preservesValue) and + c.relevantSummary(input, output, preservesValue, p) and csv = c.getCallableCsv() // Callable information + input.getMadRepresentation() + ";" // input + output.getMadRepresentation() + ";" // output + renderKind(preservesValue) + ";" // kind - + renderProvenance(c) // provenance + + p // provenance ) } } From b11b091559fd85317a3962784ed53c7c4d45d291 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 16 Dec 2025 13:50:39 +0100 Subject: [PATCH 152/433] C#: Adapt to changes in `FlowSummaryImpl` --- .../code/csharp/dataflow/FlowSummary.qll | 7 +- .../dataflow/internal/DataFlowDispatch.qll | 17 +- .../dataflow/internal/DataFlowPrivate.qll | 4 +- .../csharp/dataflow/internal/ExternalFlow.qll | 73 +- .../dataflow/internal/FlowSummaryImpl.qll | 31 +- .../csharp/frameworks/EntityFramework.qll | 31 +- .../modelgenerator/internal/CaptureModels.qll | 2 +- .../dataflow/external-models/ExternalFlow.cs | 4 +- .../dataflow/global/DataFlowPath.expected | 6 - .../global/TaintTrackingPath.expected | 6 - .../dataflow/library/FlowSummaries.expected | 2894 ----------------- .../library/FlowSummariesFiltered.expected | 2069 ------------ .../dataflow/library/FlowSummariesFiltered.ql | 6 +- csharp/ql/test/shared/FlowSummaries.qll | 4 +- 14 files changed, 81 insertions(+), 5073 deletions(-) diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/FlowSummary.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/FlowSummary.qll index 18e4025f9e67..dcd07be496d9 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/FlowSummary.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/FlowSummary.qll @@ -18,6 +18,11 @@ deprecated module SummaryComponentStack = Impl::Private::SummaryComponentStack; deprecated class RequiredSummaryComponentStack = Impl::Private::RequiredSummaryComponentStack; -class SummarizedCallable = Impl::Public::SummarizedCallable; +/** Provides the `Range` class used to define the extent of `SummarizedCallable`. */ +module SummarizedCallable { + class Range = Impl::Public::SummarizedCallable; +} + +class SummarizedCallable = Impl::Public::RelevantSummarizedCallable; class Provenance = Impl::Public::Provenance; diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowDispatch.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowDispatch.qll index c7d34a389793..c2c432fb68e5 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowDispatch.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowDispatch.qll @@ -371,24 +371,9 @@ class NonDelegateDataFlowCall extends DataFlowCall, TNonDelegateCall { /** Gets the underlying call. */ DispatchCall getDispatchCall() { result = dc } - pragma[nomagic] - private predicate hasSourceTarget() { dc.getAStaticTarget().fromSource() } - pragma[nomagic] private FlowSummary::SummarizedCallable getASummarizedCallableTarget() { - // Only use summarized callables with generated summaries in case - // we are not able to dispatch to a source declaration. - exists(boolean static | - result = this.getATarget(static) and - not ( - result.applyGeneratedModel() and - this.hasSourceTarget() - ) - | - static = false - or - static = true and not result instanceof RuntimeCallable - ) + result = this.getATarget(_) } pragma[nomagic] diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll index a05651b4c644..1b3de63495f0 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll @@ -848,7 +848,7 @@ private predicate fieldOrPropertyStore(Expr e, ContentSet c, Expr src, Expr q, b FlowSummaryImpl::Private::SummarizedCallableImpl sc, FlowSummaryImpl::Private::SummaryComponentStack input, ContentSet readSet | - sc.propagatesFlow(input, _, _, _) and + sc.propagatesFlow(input, _, _, _, _, _) and input.contains(FlowSummaryImpl::Private::SummaryComponent::content(readSet)) and c.getAStoreContent() = readSet.getAReadContent() ) @@ -1021,7 +1021,6 @@ private class InstanceCallable extends Callable { private Location l; InstanceCallable() { - this = any(DataFlowCallable dfc).asCallable(l) and not this.(Modifiable).isStatic() and // local functions and delegate capture `this` and should therefore // not have a `this` parameter @@ -1119,6 +1118,7 @@ private module Cached { p = c.asCallable(_).(CallableUsedInSource).getAParameter() } or TInstanceParameterNode(InstanceCallable c, Location l) { + c = any(DataFlowCallable dfc).asCallable(l) and c instanceof CallableUsedInSource and l = c.getARelevantLocation() } or diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll index 1e6fed03d5c4..61954f63e10b 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll @@ -380,20 +380,23 @@ private Declaration interpretExt(Declaration d, ExtPath ext) { /** Gets the source/sink/summary/neutral element corresponding to the supplied parameters. */ pragma[nomagic] Declaration interpretElement( - string namespace, string type, boolean subtypes, string name, string signature, string ext + string namespace, string type, boolean subtypes, string name, string signature, string ext, + boolean isExact ) { elementSpec(namespace, type, subtypes, name, signature, ext) and exists(Declaration base, Declaration d | base = interpretBaseDeclaration(namespace, type, name, signature) and ( - d = base + d = base and + isExact = true or subtypes = true and ( d.(UnboundCallable).overridesOrImplementsUnbound(base) or d = base.(UnboundValueOrRefType).getASubTypeUnbound+() - ) + ) and + isExact = false ) | result = interpretExt(d, ext) @@ -586,71 +589,47 @@ string getSignature(UnboundCallable c) { } private predicate interpretSummary( - UnboundCallable c, string input, string output, string kind, string provenance, string model + UnboundCallable c, string input, string output, string kind, string provenance, boolean isExact, + string model ) { exists( string namespace, string type, boolean subtypes, string name, string signature, string ext | summaryModel(namespace, type, subtypes, name, signature, ext, input, output, kind, provenance, model) and - c = interpretElement(namespace, type, subtypes, name, signature, ext) + c = interpretElement(namespace, type, subtypes, name, signature, ext, isExact) ) } -predicate interpretNeutral(UnboundCallable c, string kind, string provenance) { +predicate interpretNeutral(UnboundCallable c, string kind, string provenance, boolean isExact) { exists(string namespace, string type, string name, string signature | Extensions::neutralModel(namespace, type, name, signature, kind, provenance) and - c = interpretElement(namespace, type, true, name, signature, "") + c = interpretElement(namespace, type, true, name, signature, "", isExact) ) } // adapter class for converting Mad summaries to `SummarizedCallable`s private class SummarizedCallableAdapter extends SummarizedCallable { - SummarizedCallableAdapter() { - exists(Provenance provenance | interpretSummary(this, _, _, _, provenance, _) | - not this.fromSource() - or - this.fromSource() and provenance.isManual() - ) - } - - private predicate relevantSummaryElementManual( - string input, string output, string kind, string model - ) { - exists(Provenance provenance | - interpretSummary(this, input, output, kind, provenance, model) and - provenance.isManual() - ) - } + string input_; + string output_; + string kind; + Provenance p_; + boolean isExact_; + string model_; - private predicate relevantSummaryElementGenerated( - string input, string output, string kind, string model - ) { - exists(Provenance provenance | - interpretSummary(this, input, output, kind, provenance, model) and - provenance.isGenerated() - ) and - not exists(Provenance provenance | - interpretNeutral(this, "summary", provenance) and - provenance.isManual() - ) + SummarizedCallableAdapter() { + interpretSummary(this, input_, output_, kind, p_, isExact_, model_) } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, string model ) { - exists(string kind | - this.relevantSummaryElementManual(input, output, kind, model) - or - not this.relevantSummaryElementManual(_, _, _, _) and - this.relevantSummaryElementGenerated(input, output, kind, model) - | - if kind = "value" then preservesValue = true else preservesValue = false - ) - } - - override predicate hasProvenance(Provenance provenance) { - interpretSummary(this, _, _, _, provenance, _) + input = input_ and + output = output_ and + (if kind = "value" then preservesValue = true else preservesValue = false) and + p = p_ and + isExact = isExact_ and + model = model_ } } diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/FlowSummaryImpl.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/FlowSummaryImpl.qll index fd1bbebd3e4b..6f9b621ff404 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/FlowSummaryImpl.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/FlowSummaryImpl.qll @@ -18,14 +18,24 @@ module Input implements InputSig class SummarizedCallableBase = UnboundCallable; + predicate callableFromSource(SummarizedCallableBase c) { + c.fromSource() and + not c.getFile().isStub() and + not ( + c.getFile().extractedQlTest() and + ( + c.getBody() instanceof ThrowElement or + c.getBody().(BlockStmt).getStmt(0) instanceof ThrowElement + ) + ) + } + class SourceBase = Void; class SinkBase = Void; predicate neutralElement(SummarizedCallableBase c, string kind, string provenance, boolean isExact) { - interpretNeutral(c, kind, provenance) and - // isExact is not needed for C#. - isExact = false + interpretNeutral(c, kind, provenance, isExact) } ArgumentPosition callbackSelfParameterPosition() { result.isDelegateSelf() } @@ -216,7 +226,7 @@ module SourceSinkInterpretationInput implements string namespace, string type, boolean subtypes, string name, string signature, string ext | sourceModel(namespace, type, subtypes, name, signature, ext, output, kind, provenance, model) and - e = interpretElement(namespace, type, subtypes, name, signature, ext) + e = interpretElement(namespace, type, subtypes, name, signature, ext, _) ) } @@ -227,7 +237,7 @@ module SourceSinkInterpretationInput implements string namespace, string type, boolean subtypes, string name, string signature, string ext | sinkModel(namespace, type, subtypes, name, signature, ext, input, kind, provenance, model) and - e = interpretElement(namespace, type, subtypes, name, signature, ext) + e = interpretElement(namespace, type, subtypes, name, signature, ext, _) ) } @@ -238,7 +248,7 @@ module SourceSinkInterpretationInput implements string namespace, string type, boolean subtypes, string name, string signature, string ext | barrierModel(namespace, type, subtypes, name, signature, ext, output, kind, provenance, model) and - e = interpretElement(namespace, type, subtypes, name, signature, ext) + e = interpretElement(namespace, type, subtypes, name, signature, ext, _) ) } @@ -251,7 +261,7 @@ module SourceSinkInterpretationInput implements | barrierGuardModel(namespace, type, subtypes, name, signature, ext, input, acceptingvalue, kind, provenance, model) and - e = interpretElement(namespace, type, subtypes, name, signature, ext) + e = interpretElement(namespace, type, subtypes, name, signature, ext, _) ) } @@ -448,13 +458,14 @@ private class SummarizedCallableWithCallback extends Public::SummarizedCallable SummarizedCallableWithCallback() { mayInvokeCallback(this, pos) } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Public::Provenance provenance, + boolean isExact, string model ) { input = "Argument[" + pos + "]" and output = "Argument[" + pos + "].Parameter[delegate-self]" and preservesValue = true and + provenance = "hq-generated" and + isExact = true and model = "heuristic-callback" } - - override predicate hasProvenance(Public::Provenance provenance) { provenance = "hq-generated" } } diff --git a/csharp/ql/lib/semmle/code/csharp/frameworks/EntityFramework.qll b/csharp/ql/lib/semmle/code/csharp/frameworks/EntityFramework.qll index 9bf516bc8760..181bfaae5cce 100644 --- a/csharp/ql/lib/semmle/code/csharp/frameworks/EntityFramework.qll +++ b/csharp/ql/lib/semmle/code/csharp/frameworks/EntityFramework.qll @@ -92,22 +92,17 @@ module EntityFramework { abstract class EFSummarizedCallable extends SummarizedCallableImpl { bindingset[this] EFSummarizedCallable() { any() } - - override predicate hasProvenance(Provenance provenance) { provenance = "manual" } } // see `SummarizedCallableImpl` qldoc private class EFSummarizedCallableAdapter extends SummarizedCallable instanceof EFSummarizedCallable { override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance provenance, boolean isExact, + string model ) { none() } - - override predicate hasProvenance(Provenance provenance) { - EFSummarizedCallable.super.hasProvenance(provenance) - } } /** The class ``Microsoft.EntityFrameworkCore.DbQuery`1`` or ``System.Data.Entity.DbQuery`1``. */ @@ -177,11 +172,13 @@ module EntityFramework { override predicate propagatesFlow( SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue, - string model + Provenance p, boolean isExact, string model ) { input = SummaryComponentStack::argument(0) and output = SummaryComponentStack::return() and preservesValue = false and + p = "manual" and + isExact = true and model = "RawSqlStringConstructorSummarizedCallable" } } @@ -193,11 +190,13 @@ module EntityFramework { override predicate propagatesFlow( SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue, - string model + Provenance p, boolean isExact, string model ) { input = SummaryComponentStack::argument(0) and output = SummaryComponentStack::return() and preservesValue = false and + p = "manual" and + isExact = true and model = "RawSqlStringConversionSummarizedCallable" } } @@ -459,18 +458,20 @@ module EntityFramework { } private class DbContextClassSetPropertySynthetic extends EFSummarizedCallable { - private DbContextClassSetProperty p; + private DbContextClassSetProperty prop; - DbContextClassSetPropertySynthetic() { this = p.getGetter() } + DbContextClassSetPropertySynthetic() { this = prop.getGetter() } override predicate propagatesFlow( SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue, - string model + Provenance p, boolean isExact, string model ) { exists(string name, DbContextClass c | preservesValue = true and - name = c.getSyntheticName(output, _, p) and + name = c.getSyntheticName(output, _, prop) and input = SummaryComponentStack::syntheticGlobal(name) and + p = "manual" and + isExact = true and model = "DbContextClassSetPropertySynthetic" ) } @@ -483,13 +484,15 @@ module EntityFramework { override predicate propagatesFlow( SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue, - string model + Provenance p, boolean isExact, string model ) { exists(string name, Property mapped | preservesValue = true and c.input(input, mapped) and name = c.getSyntheticNameProj(mapped) and output = SummaryComponentStack::syntheticGlobal(name) and + p = "manual" and + isExact = true and model = "DbContextSaveChanges" ) } diff --git a/csharp/ql/src/utils/modelgenerator/internal/CaptureModels.qll b/csharp/ql/src/utils/modelgenerator/internal/CaptureModels.qll index f27743fda475..5b1b9e4ae65c 100644 --- a/csharp/ql/src/utils/modelgenerator/internal/CaptureModels.qll +++ b/csharp/ql/src/utils/modelgenerator/internal/CaptureModels.qll @@ -230,7 +230,7 @@ module SummaryModelGeneratorInput implements SummaryModelGeneratorInputSig { } private predicate hasManualSummaryModel(Callable api) { - api = any(FlowSummaryImpl::Public::SummarizedCallable sc | sc.applyManualModel()) or + api = any(FlowSummaryImpl::Public::SummarizedCallable sc | sc.hasManualModel()) or api = any(FlowSummaryImpl::Public::NeutralSummaryCallable sc | sc.hasManualModel()) } diff --git a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.cs b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.cs index d7552376c0f0..e28b8fdfcc92 100644 --- a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.cs +++ b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.cs @@ -215,9 +215,9 @@ void M4() Sink(Library.GeneratedFlowWithManualNeutral(o2)); // no flow because the modelled method has a manual neutral summary model } - object GeneratedFlow(object o) => throw null; + object GeneratedFlow(object o) => null; - object GeneratedFlowArgs(object o1, object o2) => throw null; + object GeneratedFlowArgs(object o1, object o2) => null; static void Sink(object o) { } } diff --git a/csharp/ql/test/library-tests/dataflow/global/DataFlowPath.expected b/csharp/ql/test/library-tests/dataflow/global/DataFlowPath.expected index 81f76ca4dc06..1bdd6ddf95ab 100644 --- a/csharp/ql/test/library-tests/dataflow/global/DataFlowPath.expected +++ b/csharp/ql/test/library-tests/dataflow/global/DataFlowPath.expected @@ -29,7 +29,6 @@ edges | Capture.cs:29:26:29:32 | access to parameter tainted : String | Capture.cs:29:17:29:22 | access to local variable sink29 : String | provenance | | | Capture.cs:33:30:33:39 | access to local variable captureIn3 : Func [captured tainted] : String | Capture.cs:29:26:29:32 | access to parameter tainted : String | provenance | MaD:3 | | Capture.cs:33:30:33:39 | access to local variable captureIn3 : Func [captured tainted] : String | Capture.cs:29:26:29:32 | access to parameter tainted : String | provenance | MaD:4 | -| Capture.cs:33:30:33:39 | access to local variable captureIn3 : Func [captured tainted] : String | Capture.cs:29:26:29:32 | access to parameter tainted : String | provenance | heuristic-callback | | Capture.cs:50:50:50:55 | sink39 : String | Capture.cs:52:23:59:13 | (...) => ... : (...) => ... [captured sink39] : String | provenance | | | Capture.cs:52:23:59:13 | (...) => ... : (...) => ... [captured sink39] : String | Capture.cs:350:34:350:34 | a : (...) => ... [captured sink39] : String | provenance | | | Capture.cs:55:27:58:17 | (...) => ... : (...) => ... [captured sink39] : String | Capture.cs:350:34:350:34 | a : (...) => ... [captured sink39] : String | provenance | | @@ -40,7 +39,6 @@ edges | Capture.cs:81:13:81:13 | [post] access to local function M : M [captured sink31] : String | Capture.cs:83:9:83:19 | [post] access to local function CaptureOut2 : CaptureOut2 [captured sink31] : String | provenance | | | Capture.cs:83:9:83:19 | [post] access to local function CaptureOut2 : CaptureOut2 [captured sink31] : String | Capture.cs:84:15:84:20 | access to local variable sink31 | provenance | | | Capture.cs:89:22:89:35 | "taint source" : String | Capture.cs:92:30:92:40 | [post] access to local variable captureOut3 : (...) => ... [captured sink32] : String | provenance | | -| Capture.cs:89:22:89:35 | "taint source" : String | Capture.cs:92:30:92:40 | [post] access to local variable captureOut3 : (...) => ... [captured sink32] : String | provenance | heuristic-callback | | Capture.cs:92:30:92:40 | [post] access to local variable captureOut3 : (...) => ... [captured sink32] : String | Capture.cs:93:15:93:20 | access to local variable sink32 | provenance | | | Capture.cs:114:23:117:13 | [post] (...) => ... : (...) => ... [captured sink40] : String | Capture.cs:123:9:123:33 | [post] access to local function CaptureOutMultipleLambdas : CaptureOutMultipleLambdas [captured sink40] : String | provenance | | | Capture.cs:116:26:116:39 | "taint source" : String | Capture.cs:352:9:352:9 | [post] access to parameter a : (...) => ... [captured sink40] : String | provenance | | @@ -62,10 +60,8 @@ edges | Capture.cs:155:30:155:44 | [post] access to local variable captureThrough3 : (...) => ... [captured sink35] : String | Capture.cs:156:15:156:20 | access to local variable sink35 | provenance | | | Capture.cs:155:30:155:44 | access to local variable captureThrough3 : Func [captured tainted] : String | Capture.cs:152:22:152:28 | access to parameter tainted : String | provenance | MaD:3 | | Capture.cs:155:30:155:44 | access to local variable captureThrough3 : Func [captured tainted] : String | Capture.cs:152:22:152:28 | access to parameter tainted : String | provenance | MaD:4 | -| Capture.cs:155:30:155:44 | access to local variable captureThrough3 : Func [captured tainted] : String | Capture.cs:152:22:152:28 | access to parameter tainted : String | provenance | heuristic-callback | | Capture.cs:155:30:155:44 | access to local variable captureThrough3 : Func [captured tainted] : String | Capture.cs:155:30:155:44 | [post] access to local variable captureThrough3 : (...) => ... [captured sink35] : String | provenance | MaD:3 | | Capture.cs:155:30:155:44 | access to local variable captureThrough3 : Func [captured tainted] : String | Capture.cs:155:30:155:44 | [post] access to local variable captureThrough3 : (...) => ... [captured sink35] : String | provenance | MaD:4 | -| Capture.cs:155:30:155:44 | access to local variable captureThrough3 : Func [captured tainted] : String | Capture.cs:155:30:155:44 | [post] access to local variable captureThrough3 : (...) => ... [captured sink35] : String | provenance | heuristic-callback | | Capture.cs:162:13:162:18 | access to local variable sink36 : String | Capture.cs:163:15:163:20 | access to local variable sink36 | provenance | | | Capture.cs:162:22:162:36 | access to local function CaptureThrough4 : CaptureThrough4 [captured tainted] : String | Capture.cs:160:20:160:26 | access to parameter tainted : String | provenance | | | Capture.cs:162:22:162:36 | access to local function CaptureThrough4 : CaptureThrough4 [captured tainted] : String | Capture.cs:162:22:162:38 | call to local function CaptureThrough4 : String | provenance | | @@ -94,10 +90,8 @@ edges | Capture.cs:228:17:228:30 | "taint source" : String | Capture.cs:229:20:233:9 | (...) => ... : (...) => ... [captured x] : String | provenance | | | Capture.cs:228:17:228:30 | "taint source" : String | Capture.cs:234:15:234:15 | access to local variable x | provenance | | | Capture.cs:229:20:233:9 | (...) => ... : (...) => ... [captured x] : String | Capture.cs:231:19:231:19 | access to local variable x | provenance | MaD:1 | -| Capture.cs:229:20:233:9 | (...) => ... : (...) => ... [captured x] : String | Capture.cs:231:19:231:19 | access to local variable x | provenance | heuristic-callback | | Capture.cs:229:20:233:9 | [post] (...) => ... : (...) => ... [captured x] : String | Capture.cs:234:15:234:15 | access to local variable x | provenance | | | Capture.cs:232:17:232:30 | "taint source" : String | Capture.cs:229:20:233:9 | [post] (...) => ... : (...) => ... [captured x] : String | provenance | | -| Capture.cs:232:17:232:30 | "taint source" : String | Capture.cs:229:20:233:9 | [post] (...) => ... : (...) => ... [captured x] : String | provenance | heuristic-callback | | Capture.cs:242:9:242:9 | [post] access to local variable c : Capture [field Field] : String | Capture.cs:249:9:249:9 | access to local variable a : Action [captured c, field Field] : String | provenance | | | Capture.cs:242:9:242:9 | [post] access to local variable c : Capture [field Field] : String | Capture.cs:251:15:251:15 | access to local variable c : Capture [field Field] : String | provenance | | | Capture.cs:242:19:242:32 | "taint source" : String | Capture.cs:242:9:242:9 | [post] access to local variable c : Capture [field Field] : String | provenance | | diff --git a/csharp/ql/test/library-tests/dataflow/global/TaintTrackingPath.expected b/csharp/ql/test/library-tests/dataflow/global/TaintTrackingPath.expected index 7a6f90e961da..d02d0612c42c 100644 --- a/csharp/ql/test/library-tests/dataflow/global/TaintTrackingPath.expected +++ b/csharp/ql/test/library-tests/dataflow/global/TaintTrackingPath.expected @@ -39,7 +39,6 @@ edges | Capture.cs:29:26:29:32 | access to parameter tainted : String | Capture.cs:29:17:29:22 | access to local variable sink29 : String | provenance | | | Capture.cs:33:30:33:39 | access to local variable captureIn3 : Func [captured tainted] : String | Capture.cs:29:26:29:32 | access to parameter tainted : String | provenance | MaD:5 | | Capture.cs:33:30:33:39 | access to local variable captureIn3 : Func [captured tainted] : String | Capture.cs:29:26:29:32 | access to parameter tainted : String | provenance | MaD:6 | -| Capture.cs:33:30:33:39 | access to local variable captureIn3 : Func [captured tainted] : String | Capture.cs:29:26:29:32 | access to parameter tainted : String | provenance | heuristic-callback | | Capture.cs:50:50:50:55 | sink39 : String | Capture.cs:52:23:59:13 | (...) => ... : (...) => ... [captured sink39] : String | provenance | | | Capture.cs:52:23:59:13 | (...) => ... : (...) => ... [captured sink39] : String | Capture.cs:350:34:350:34 | a : (...) => ... [captured sink39] : String | provenance | | | Capture.cs:55:27:58:17 | (...) => ... : (...) => ... [captured sink39] : String | Capture.cs:350:34:350:34 | a : (...) => ... [captured sink39] : String | provenance | | @@ -50,7 +49,6 @@ edges | Capture.cs:81:13:81:13 | [post] access to local function M : M [captured sink31] : String | Capture.cs:83:9:83:19 | [post] access to local function CaptureOut2 : CaptureOut2 [captured sink31] : String | provenance | | | Capture.cs:83:9:83:19 | [post] access to local function CaptureOut2 : CaptureOut2 [captured sink31] : String | Capture.cs:84:15:84:20 | access to local variable sink31 | provenance | | | Capture.cs:89:22:89:35 | "taint source" : String | Capture.cs:92:30:92:40 | [post] access to local variable captureOut3 : (...) => ... [captured sink32] : String | provenance | | -| Capture.cs:89:22:89:35 | "taint source" : String | Capture.cs:92:30:92:40 | [post] access to local variable captureOut3 : (...) => ... [captured sink32] : String | provenance | heuristic-callback | | Capture.cs:92:30:92:40 | [post] access to local variable captureOut3 : (...) => ... [captured sink32] : String | Capture.cs:93:15:93:20 | access to local variable sink32 | provenance | | | Capture.cs:114:23:117:13 | [post] (...) => ... : (...) => ... [captured sink40] : String | Capture.cs:123:9:123:33 | [post] access to local function CaptureOutMultipleLambdas : CaptureOutMultipleLambdas [captured sink40] : String | provenance | | | Capture.cs:116:26:116:39 | "taint source" : String | Capture.cs:352:9:352:9 | [post] access to parameter a : (...) => ... [captured sink40] : String | provenance | | @@ -72,10 +70,8 @@ edges | Capture.cs:155:30:155:44 | [post] access to local variable captureThrough3 : (...) => ... [captured sink35] : String | Capture.cs:156:15:156:20 | access to local variable sink35 | provenance | | | Capture.cs:155:30:155:44 | access to local variable captureThrough3 : Func [captured tainted] : String | Capture.cs:152:22:152:28 | access to parameter tainted : String | provenance | MaD:5 | | Capture.cs:155:30:155:44 | access to local variable captureThrough3 : Func [captured tainted] : String | Capture.cs:152:22:152:28 | access to parameter tainted : String | provenance | MaD:6 | -| Capture.cs:155:30:155:44 | access to local variable captureThrough3 : Func [captured tainted] : String | Capture.cs:152:22:152:28 | access to parameter tainted : String | provenance | heuristic-callback | | Capture.cs:155:30:155:44 | access to local variable captureThrough3 : Func [captured tainted] : String | Capture.cs:155:30:155:44 | [post] access to local variable captureThrough3 : (...) => ... [captured sink35] : String | provenance | MaD:5 | | Capture.cs:155:30:155:44 | access to local variable captureThrough3 : Func [captured tainted] : String | Capture.cs:155:30:155:44 | [post] access to local variable captureThrough3 : (...) => ... [captured sink35] : String | provenance | MaD:6 | -| Capture.cs:155:30:155:44 | access to local variable captureThrough3 : Func [captured tainted] : String | Capture.cs:155:30:155:44 | [post] access to local variable captureThrough3 : (...) => ... [captured sink35] : String | provenance | heuristic-callback | | Capture.cs:162:13:162:18 | access to local variable sink36 : String | Capture.cs:163:15:163:20 | access to local variable sink36 | provenance | | | Capture.cs:162:22:162:36 | access to local function CaptureThrough4 : CaptureThrough4 [captured tainted] : String | Capture.cs:160:20:160:26 | access to parameter tainted : String | provenance | | | Capture.cs:162:22:162:36 | access to local function CaptureThrough4 : CaptureThrough4 [captured tainted] : String | Capture.cs:162:22:162:38 | call to local function CaptureThrough4 : String | provenance | | @@ -104,10 +100,8 @@ edges | Capture.cs:228:17:228:30 | "taint source" : String | Capture.cs:229:20:233:9 | (...) => ... : (...) => ... [captured x] : String | provenance | | | Capture.cs:228:17:228:30 | "taint source" : String | Capture.cs:234:15:234:15 | access to local variable x | provenance | | | Capture.cs:229:20:233:9 | (...) => ... : (...) => ... [captured x] : String | Capture.cs:231:19:231:19 | access to local variable x | provenance | MaD:1 | -| Capture.cs:229:20:233:9 | (...) => ... : (...) => ... [captured x] : String | Capture.cs:231:19:231:19 | access to local variable x | provenance | heuristic-callback | | Capture.cs:229:20:233:9 | [post] (...) => ... : (...) => ... [captured x] : String | Capture.cs:234:15:234:15 | access to local variable x | provenance | | | Capture.cs:232:17:232:30 | "taint source" : String | Capture.cs:229:20:233:9 | [post] (...) => ... : (...) => ... [captured x] : String | provenance | | -| Capture.cs:232:17:232:30 | "taint source" : String | Capture.cs:229:20:233:9 | [post] (...) => ... : (...) => ... [captured x] : String | provenance | heuristic-callback | | Capture.cs:242:9:242:9 | [post] access to local variable c : Capture [field Field] : String | Capture.cs:249:9:249:9 | access to local variable a : Action [captured c, field Field] : String | provenance | | | Capture.cs:242:9:242:9 | [post] access to local variable c : Capture [field Field] : String | Capture.cs:251:15:251:15 | access to local variable c : Capture [field Field] : String | provenance | | | Capture.cs:242:19:242:32 | "taint source" : String | Capture.cs:242:9:242:9 | [post] access to local variable c : Capture [field Field] : String | provenance | | diff --git a/csharp/ql/test/library-tests/dataflow/library/FlowSummaries.expected b/csharp/ql/test/library-tests/dataflow/library/FlowSummaries.expected index 1a067f2644bd..be6a2302cc35 100644 --- a/csharp/ql/test/library-tests/dataflow/library/FlowSummaries.expected +++ b/csharp/ql/test/library-tests/dataflow/library/FlowSummaries.expected @@ -905,29 +905,14 @@ summary | Microsoft.AspNetCore.Builder;ComponentEndpointConventionBuilder;Finally;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.AspNetCore.Builder;ComponentEndpointRouteBuilderExtensions;MapBlazorHub;(Microsoft.AspNetCore.Routing.IEndpointRouteBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.AspNetCore.Builder;ComponentEndpointRouteBuilderExtensions;MapBlazorHub;(Microsoft.AspNetCore.Routing.IEndpointRouteBuilder,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureContainer;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureContainer;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureContainer;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureContainer;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureHostConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureHostConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureHostConfiguration;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureHostConfiguration;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureServices;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureServices;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureServices;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureServices;(System.Action);Argument[this];ReturnValue;value;hq-generated | | Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureWebHost;(System.Action,System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.AspNetCore.Builder;ConfigureHostBuilder;ConfigureWebHost;(System.Action,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.AspNetCore.Builder;ConfigureHostBuilder;UseServiceProviderFactory;(Microsoft.Extensions.DependencyInjection.IServiceProviderFactory);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;UseServiceProviderFactory;(System.Func>);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.AspNetCore.Builder;ConfigureHostBuilder;UseServiceProviderFactory;(System.Func>);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;UseServiceProviderFactory;(System.Func>);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.AspNetCore.Builder;ConfigureHostBuilder;UseServiceProviderFactory;(System.Func>);Argument[this];ReturnValue;value;hq-generated | | Microsoft.AspNetCore.Builder;ConfigureWebHostBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.AspNetCore.Builder;ConfigureWebHostBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.AspNetCore.Builder;ConfigureWebHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -1851,12 +1836,8 @@ summary | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;AddExpirationToken;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Primitives.IChangeToken);Argument[1];Argument[0].Property[Microsoft.Extensions.Caching.Memory.ICacheEntry.ExpirationTokens].Element;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;AddExpirationToken;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Primitives.IChangeToken);Argument[1];ReturnValue.Property[Microsoft.Extensions.Caching.Memory.ICacheEntry.ExpirationTokens].Element;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;SetAbsoluteExpiration;(Microsoft.Extensions.Caching.Memory.ICacheEntry,System.DateTimeOffset);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;SetAbsoluteExpiration;(Microsoft.Extensions.Caching.Memory.ICacheEntry,System.TimeSpan);Argument[0];ReturnValue;value;dfc-generated | @@ -1866,12 +1847,8 @@ summary | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;SetSlidingExpiration;(Microsoft.Extensions.Caching.Memory.ICacheEntry,System.TimeSpan);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;SetValue;(Microsoft.Extensions.Caching.Memory.ICacheEntry,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func,Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func,Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func,Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func,Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreateAsync;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreateAsync;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func>,Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | @@ -1891,12 +1868,8 @@ summary | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;AddExpirationToken;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Primitives.IChangeToken);Argument[1];Argument[0].Property[Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions.ExpirationTokens].Element;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;AddExpirationToken;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Primitives.IChangeToken);Argument[1];ReturnValue.Property[Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions.ExpirationTokens].Element;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;SetAbsoluteExpiration;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,System.DateTimeOffset);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;SetAbsoluteExpiration;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,System.TimeSpan);Argument[0];ReturnValue;value;dfc-generated | @@ -1947,7 +1920,6 @@ summary | Microsoft.Extensions.Configuration;ChainedConfigurationProvider;get_Configuration;();Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ChainedConfigurationProvider._config];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ChainedConfigurationSource;Build;(Microsoft.Extensions.Configuration.IConfigurationBuilder);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Configuration;CommandLineConfigurationExtensions;AddCommandLine;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[0];taint;manual | -| Microsoft.Extensions.Configuration;CommandLineConfigurationExtensions;AddCommandLine;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | Microsoft.Extensions.Configuration;CommandLineConfigurationExtensions;AddCommandLine;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];ReturnValue;taint;manual | | Microsoft.Extensions.Configuration;CommandLineConfigurationExtensions;AddCommandLine;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String[]);Argument[1];Argument[0];taint;manual | | Microsoft.Extensions.Configuration;CommandLineConfigurationExtensions;AddCommandLine;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String[]);Argument[1];ReturnValue;taint;manual | @@ -1959,24 +1931,17 @@ summary | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationSection.Value];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.Action);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationSection.Value];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.Action);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationSection.Value];ReturnValue;value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationSection.Value];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationSection.Value];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationSection.Value];ReturnValue;value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;GetValue;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.String,System.Object);Argument[3];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;GetValue;(Microsoft.Extensions.Configuration.IConfiguration,System.String,T);Argument[2];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBuilder;Add;(Microsoft.Extensions.Configuration.IConfigurationSource);Argument[0];Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationBuilder._sources].Element;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBuilder;Add;(Microsoft.Extensions.Configuration.IConfigurationSource);Argument[0];ReturnValue.SyntheticField[Microsoft.Extensions.Configuration.ConfigurationBuilder._sources].Element;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationBuilder;Add;(Microsoft.Extensions.Configuration.IConfigurationSource);Argument[this];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBuilder;Build;();Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Configuration;ConfigurationBuilder;get_Properties;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Configuration;ConfigurationBuilder;get_Sources;();Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationBuilder._sources];ReturnValue;value;dfc-generated | @@ -1985,13 +1950,10 @@ summary | Microsoft.Extensions.Configuration;ConfigurationDebugViewContext;ConfigurationDebugViewContext;(System.String,System.String,System.String,Microsoft.Extensions.Configuration.IConfigurationProvider);Argument[2];Argument[this].Property[Microsoft.Extensions.Configuration.ConfigurationDebugViewContext.Value];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationDebugViewContext;ConfigurationDebugViewContext;(System.String,System.String,System.String,Microsoft.Extensions.Configuration.IConfigurationProvider);Argument[3];Argument[this].Property[Microsoft.Extensions.Configuration.ConfigurationDebugViewContext.ConfigurationProvider];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationExtensions;Add;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationExtensions;Add;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;ConfigurationExtensions;Add;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationExtensions;Add;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationKeyNameAttribute;ConfigurationKeyNameAttribute;(System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Configuration.ConfigurationKeyNameAttribute.Name];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationManager;Add;(Microsoft.Extensions.Configuration.IConfigurationSource);Argument[0];Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationManager._sources].Element;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationManager;Add;(Microsoft.Extensions.Configuration.IConfigurationSource);Argument[0];ReturnValue.SyntheticField[Microsoft.Extensions.Configuration.ConfigurationManager._sources].Element;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationManager;Add;(Microsoft.Extensions.Configuration.IConfigurationSource);Argument[this];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationManager;Build;();Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Configuration;ConfigurationManager;GetReloadToken;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Configuration;ConfigurationManager;get_Item;(System.String);Argument[this];ReturnValue;taint;manual | @@ -2005,23 +1967,14 @@ summary | Microsoft.Extensions.Configuration;ConfigurationProvider;GetChildKeys;(System.Collections.Generic.IEnumerable,System.String);Argument[0].Element;ReturnValue.Element;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationProvider;GetReloadToken;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Configuration;ConfigurationProvider;Set;(System.String,System.String);Argument[1];Argument[this];taint;df-generated | -| Microsoft.Extensions.Configuration;ConfigurationReloadToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationReloadToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Configuration;ConfigurationReloadToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationReloadToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationRoot;ConfigurationRoot;(System.Collections.Generic.IList);Argument[0];Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationRoot._providers];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationRoot;GetReloadToken;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Configuration;ConfigurationRoot;get_Item;(System.String);Argument[this];ReturnValue;taint;manual | -| Microsoft.Extensions.Configuration;ConfigurationRoot;get_Providers;();Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationRoot._providers];ReturnValue;value;df-generated | | Microsoft.Extensions.Configuration;ConfigurationRoot;get_Providers;();Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationRoot._providers];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationRoot;get_Providers;();Argument[this];ReturnValue;taint;df-generated | -| Microsoft.Extensions.Configuration;ConfigurationRoot;get_Providers;();Argument[this];ReturnValue;taint;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationRoot.Providers].Element;ReturnValue;taint;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.Func);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationRoot.Providers].Element;ReturnValue;taint;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.Func);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationRoot.Providers].Element;ReturnValue;taint;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.Func);Argument[1].ReturnValue;ReturnValue;taint;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.Func);Argument[1].ReturnValue;ReturnValue;taint;hq-generated | -| Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationSection;ConfigurationSection;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.String);Argument[1];Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationSection._path];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationSection;GetReloadToken;();Argument[this];ReturnValue;taint;df-generated | @@ -2029,16 +1982,12 @@ summary | Microsoft.Extensions.Configuration;ConfigurationSection;get_Path;();Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationSection._path];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;EnvironmentVariablesExtensions;AddEnvironmentVariables;(Microsoft.Extensions.Configuration.IConfigurationBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;EnvironmentVariablesExtensions;AddEnvironmentVariables;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;EnvironmentVariablesExtensions;AddEnvironmentVariables;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;EnvironmentVariablesExtensions;AddEnvironmentVariables;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;EnvironmentVariablesExtensions;AddEnvironmentVariables;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;EnvironmentVariablesExtensions;AddEnvironmentVariables;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;FileConfigurationExtensions;GetFileLoadExceptionHandler;(Microsoft.Extensions.Configuration.IConfigurationBuilder);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Configuration;FileConfigurationExtensions;GetFileProvider;(Microsoft.Extensions.Configuration.IConfigurationBuilder);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Configuration;FileConfigurationExtensions;SetBasePath;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;FileConfigurationExtensions;SetFileLoadExceptionHandler;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;FileConfigurationExtensions;SetFileLoadExceptionHandler;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;FileConfigurationExtensions;SetFileLoadExceptionHandler;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;FileConfigurationExtensions;SetFileLoadExceptionHandler;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;FileConfigurationExtensions;SetFileProvider;(Microsoft.Extensions.Configuration.IConfigurationBuilder,Microsoft.Extensions.FileProviders.IFileProvider);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;FileConfigurationProvider;FileConfigurationProvider;(Microsoft.Extensions.Configuration.FileConfigurationSource);Argument[0];Argument[this].Property[Microsoft.Extensions.Configuration.FileConfigurationProvider.Source];value;dfc-generated | @@ -2059,8 +2008,6 @@ summary | Microsoft.Extensions.Configuration;IConfigurationSource;Build;(Microsoft.Extensions.Configuration.IConfigurationBuilder);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,Microsoft.Extensions.FileProviders.IFileProvider,System.String,System.Boolean,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | @@ -2068,8 +2015,6 @@ summary | Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniStream;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.IO.Stream);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,Microsoft.Extensions.FileProviders.IFileProvider,System.String,System.Boolean,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | @@ -2091,8 +2036,6 @@ summary | Microsoft.Extensions.Configuration;UserSecretsConfigurationExtensions;AddUserSecrets;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Boolean,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,Microsoft.Extensions.FileProviders.IFileProvider,System.String,System.Boolean,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | @@ -2134,7 +2077,6 @@ summary | Microsoft.Extensions.DependencyInjection;AsyncServiceScope;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.DependencyInjection;AsyncServiceScope;get_ServiceProvider;();Argument[this].SyntheticField[Microsoft.Extensions.DependencyInjection.AsyncServiceScope._serviceScope].Property[Microsoft.Extensions.DependencyInjection.IServiceScope.ServiceProvider];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;AsyncServiceScope;get_ServiceProvider;();Argument[this].SyntheticField[Microsoft.Extensions.DependencyInjection.AsyncServiceScope._serviceScope];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;AsyncServiceScope;get_ServiceProvider;();Argument[this];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;AuthenticationCoreServiceCollectionExtensions;AddAuthenticationCore;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;AuthenticationServiceCollectionExtensions;AddAuthentication;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;AuthorizationServiceCollectionExtensions;AddAuthorizationCore;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -2174,73 +2116,43 @@ summary | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddAsKeyed;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,Microsoft.Extensions.DependencyInjection.ServiceLifetime);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddDefaultLogger;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddLogger;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddLogger;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func,System.Boolean);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddLogger;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func,System.Boolean);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddLogger;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func,System.Boolean);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddLogger;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureAdditionalHttpMessageHandlers;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action,System.IServiceProvider>);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureAdditionalHttpMessageHandlers;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action,System.IServiceProvider>);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureAdditionalHttpMessageHandlers;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action,System.IServiceProvider>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureAdditionalHttpMessageHandlers;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action,System.IServiceProvider>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpMessageHandlerBuilder;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpMessageHandlerBuilder;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpMessageHandlerBuilder;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpMessageHandlerBuilder;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RedactLoggedHeaders;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Collections.Generic.IEnumerable);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RedactLoggedHeaders;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RedactLoggedHeaders;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RedactLoggedHeaders;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RedactLoggedHeaders;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RemoveAllLoggers;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RemoveAsKeyed;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;SetHandlerLifetime;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.TimeSpan);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;AddHttpClient;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;AddHttpClient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String);Argument[0].Element;ReturnValue;taint;df-generated | @@ -2266,8 +2178,6 @@ summary | Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;AddHttpClient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;AddHttpClient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;ConfigureHttpClientDefaults;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;ConfigureHttpClientDefaults;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;ConfigureHttpClientDefaults;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;ConfigureHttpClientDefaults;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpJsonServiceExtensions;ConfigureHttpJsonOptions;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpLoggingServicesExtensions;AddHttpLogging;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -2283,23 +2193,15 @@ summary | Microsoft.Extensions.DependencyInjection;LocalizationServiceCollectionExtensions;AddLocalization;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;LoggingServiceCollectionExtensions;AddLogging;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;LoggingServiceCollectionExtensions;AddLogging;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;LoggingServiceCollectionExtensions;AddLogging;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;LoggingServiceCollectionExtensions;AddLogging;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;LoggingServiceCollectionExtensions;AddLogging;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddDistributedMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddDistributedMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddDistributedMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddDistributedMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddDistributedMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;MetricsServiceExtensions;AddMetrics;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;MetricsServiceExtensions;AddMetrics;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;MetricsServiceExtensions;AddMetrics;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;MetricsServiceExtensions;AddMetrics;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;MetricsServiceExtensions;AddMetrics;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;MvcCoreMvcBuilderExtensions;AddFormatterMappings;(Microsoft.Extensions.DependencyInjection.IMvcBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;MvcCoreMvcBuilderExtensions;AddJsonOptions;(Microsoft.Extensions.DependencyInjection.IMvcBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -2366,52 +2268,32 @@ summary | Microsoft.Extensions.DependencyInjection;ObjectFactory;BeginInvoke;(System.IServiceProvider,System.Object[],System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;Bind;(Microsoft.Extensions.Options.OptionsBuilder,Microsoft.Extensions.Configuration.IConfiguration);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;Bind;(Microsoft.Extensions.Options.OptionsBuilder,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;Bind;(Microsoft.Extensions.Options.OptionsBuilder,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;Bind;(Microsoft.Extensions.Options.OptionsBuilder,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;Bind;(Microsoft.Extensions.Options.OptionsBuilder,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;BindConfiguration;(Microsoft.Extensions.Options.OptionsBuilder,System.String,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;BindConfiguration;(Microsoft.Extensions.Options.OptionsBuilder,System.String,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;BindConfiguration;(Microsoft.Extensions.Options.OptionsBuilder,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;BindConfiguration;(Microsoft.Extensions.Options.OptionsBuilder,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderDataAnnotationsExtensions;ValidateDataAnnotations;(Microsoft.Extensions.Options.OptionsBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderExtensions;ValidateOnStart;(Microsoft.Extensions.Options.OptionsBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,Microsoft.Extensions.Configuration.IConfiguration);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,Microsoft.Extensions.Configuration.IConfiguration);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;AddOptions;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureOptions;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureOptions;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureOptions;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OutputCacheConventionBuilderExtensions;CacheOutput;(TBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OutputCacheConventionBuilderExtensions;CacheOutput;(TBuilder,System.Action,System.Boolean);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -2442,108 +2324,70 @@ summary | Microsoft.Extensions.DependencyInjection;ServiceCollectionContainerBuilderExtensions;BuildServiceProvider;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Boolean);Argument[0].Element;ReturnValue;taint;df-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionHostedServiceExtensions;AddHostedService;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionHostedServiceExtensions;AddHostedService;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionHostedServiceExtensions;AddHostedService;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionHostedServiceExtensions;AddHostedService;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionHostedServiceExtensions;AddHostedService;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,TService);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,TService);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceDescriptor;Describe;(System.Type,System.Func,Microsoft.Extensions.DependencyInjection.ServiceLifetime);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceDescriptor;DescribeKeyed;(System.Type,System.Object,System.Func,Microsoft.Extensions.DependencyInjection.ServiceLifetime);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | @@ -2582,8 +2426,6 @@ summary | Microsoft.Extensions.DependencyInjection;SignalRDependencyInjectionExtensions;AddSignalR;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;SocketsHttpHandlerBuilderExtensions;Configure;(Microsoft.Extensions.DependencyInjection.ISocketsHttpHandlerBuilder,Microsoft.Extensions.Configuration.IConfiguration);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;SocketsHttpHandlerBuilderExtensions;Configure;(Microsoft.Extensions.DependencyInjection.ISocketsHttpHandlerBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;SocketsHttpHandlerBuilderExtensions;Configure;(Microsoft.Extensions.DependencyInjection.ISocketsHttpHandlerBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;SocketsHttpHandlerBuilderExtensions;Configure;(Microsoft.Extensions.DependencyInjection.ISocketsHttpHandlerBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;SocketsHttpHandlerBuilderExtensions;Configure;(Microsoft.Extensions.DependencyInjection.ISocketsHttpHandlerBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;TagHelperServicesExtensions;AddCacheTagHelperLimits;(Microsoft.Extensions.DependencyInjection.IMvcBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;TagHelperServicesExtensions;AddCacheTagHelperLimits;(Microsoft.Extensions.DependencyInjection.IMvcCoreBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -2633,24 +2475,15 @@ summary | Microsoft.Extensions.FileProviders.Physical;PhysicalFilesWatcher;PhysicalFilesWatcher;(System.String,System.IO.FileSystemWatcher,System.Boolean,Microsoft.Extensions.FileProviders.Physical.ExclusionFilters);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.FileProviders.Physical;PhysicalFilesWatcher;PhysicalFilesWatcher;(System.String,System.IO.FileSystemWatcher,System.Boolean,Microsoft.Extensions.FileProviders.Physical.ExclusionFilters);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.FileProviders.Physical;PollingFileChangeToken;PollingFileChangeToken;(System.IO.FileInfo);Argument[0];Argument[this];taint;df-generated | -| Microsoft.Extensions.FileProviders.Physical;PollingFileChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.FileProviders.Physical;PollingFileChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.FileProviders.Physical;PollingFileChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.FileProviders.Physical;PollingFileChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.FileProviders.Physical;PollingWildCardChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.FileProviders.Physical;PollingWildCardChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.FileProviders.Physical;PollingWildCardChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.FileProviders.Physical;PollingWildCardChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.FileProviders;CompositeFileProvider;CompositeFileProvider;(Microsoft.Extensions.FileProviders.IFileProvider[]);Argument[0];Argument[this].SyntheticField[Microsoft.Extensions.FileProviders.CompositeFileProvider._fileProviders];value;dfc-generated | | Microsoft.Extensions.FileProviders;CompositeFileProvider;CompositeFileProvider;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].SyntheticField[Microsoft.Extensions.FileProviders.CompositeFileProvider._fileProviders].Element;value;dfc-generated | | Microsoft.Extensions.FileProviders;CompositeFileProvider;get_FileProviders;();Argument[this].SyntheticField[Microsoft.Extensions.FileProviders.CompositeFileProvider._fileProviders];ReturnValue;value;dfc-generated | | Microsoft.Extensions.FileProviders;NotFoundDirectoryContents;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | Microsoft.Extensions.FileProviders;NotFoundDirectoryContents;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | Microsoft.Extensions.FileProviders;NotFoundFileInfo;NotFoundFileInfo;(System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.FileProviders.NotFoundFileInfo.Name];value;dfc-generated | -| Microsoft.Extensions.FileProviders;NullChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.FileProviders;NullChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.FileProviders;NullChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.FileProviders;NullChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.FileProviders;PhysicalFileProvider;PhysicalFileProvider;(System.String,Microsoft.Extensions.FileProviders.Physical.ExclusionFilters);Argument[0];Argument[this].Property[Microsoft.Extensions.FileProviders.PhysicalFileProvider.Root];taint;dfc-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;DirectoryInfoBase;EnumerateFileSystemInfos;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;DirectoryInfoBase;GetDirectory;(System.String);Argument[this];ReturnValue;taint;df-generated | @@ -2660,14 +2493,8 @@ summary | Microsoft.Extensions.FileSystemGlobbing.Abstractions;DirectoryInfoWrapper;get_Name;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;DirectoryInfoWrapper;get_ParentDirectory;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;FileInfoWrapper;(System.IO.FileInfo);Argument[0];Argument[this].SyntheticField[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoWrapper._fileInfo];value;dfc-generated | -| Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_FullName;();Argument[this].SyntheticField[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoWrapper._fileInfo].Property[System.IO.FileSystemInfo.FullName];ReturnValue;value;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_FullName;();Argument[this].SyntheticField[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoWrapper._fileInfo].Property[System.IO.FileSystemInfo.FullName];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_FullName;();Argument[this];ReturnValue;taint;df-generated | -| Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_FullName;();Argument[this];ReturnValue;taint;dfc-generated | -| Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_Name;();Argument[this].SyntheticField[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoWrapper._fileInfo].Property[System.IO.FileInfo.Name];ReturnValue;value;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_Name;();Argument[this].SyntheticField[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoWrapper._fileInfo].Property[System.IO.FileInfo.Name];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_Name;();Argument[this];ReturnValue;taint;df-generated | -| Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_Name;();Argument[this];ReturnValue;taint;dfc-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_ParentDirectory;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileSystemInfoBase;get_FullName;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileSystemInfoBase;get_Name;();Argument[this];ReturnValue;taint;df-generated | @@ -2691,11 +2518,7 @@ summary | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;CalculateStem;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoBase);Argument[0].Property[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileSystemInfoBase.Name];ReturnValue;value;dfc-generated | | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;CalculateStem;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoBase);Argument[this].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContext`1.Frame].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged+FrameData.Stem];ReturnValue;taint;dfc-generated | | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;PatternContextRagged;(Microsoft.Extensions.FileSystemGlobbing.Internal.IRaggedPattern);Argument[0];Argument[this].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged.Pattern];value;dfc-generated | -| Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;PushDirectory;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.DirectoryInfoBase);Argument[0];Argument[this];taint;df-generated | -| Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;PushDirectory;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.DirectoryInfoBase);Argument[0];Argument[this];taint;dfc-generated | -| Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;PushDirectory;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.DirectoryInfoBase);Argument[this].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged.Pattern].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.IRaggedPattern.EndsWith];Argument[this].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContext`1.Frame].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged+FrameData.SegmentGroup];value;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;PushDirectory;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.DirectoryInfoBase);Argument[this].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged.Pattern].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.IRaggedPattern.EndsWith];Argument[this].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContext`1.Frame].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged+FrameData.SegmentGroup];value;dfc-generated | -| Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;PushDirectory;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.DirectoryInfoBase);Argument[this].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged.Pattern].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.IRaggedPattern.StartsWith];Argument[this].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContext`1.Frame].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged+FrameData.SegmentGroup];value;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;PushDirectory;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.DirectoryInfoBase);Argument[this].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged.Pattern].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.IRaggedPattern.StartsWith];Argument[this].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContext`1.Frame].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged+FrameData.SegmentGroup];value;dfc-generated | | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;Test;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoBase);Argument[0].Property[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileSystemInfoBase.Name];ReturnValue.Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternTestResult.Stem];value;dfc-generated | | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;Test;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoBase);Argument[this].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContext`1.Frame].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged+FrameData.Stem];ReturnValue.Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternTestResult.Stem];taint;dfc-generated | @@ -2745,79 +2568,40 @@ summary | Microsoft.Extensions.Hosting;HostApplicationBuilder;get_Metrics;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Hosting;HostApplicationBuilder;get_Properties;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Hosting;HostApplicationBuilder;get_Services;();Argument[this];ReturnValue;taint;df-generated | -| Microsoft.Extensions.Hosting;HostBuilder;ConfigureAppConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostBuilder;ConfigureAppConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Hosting;HostBuilder;ConfigureAppConfiguration;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostBuilder;ConfigureAppConfiguration;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostBuilder;ConfigureContainer;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostBuilder;ConfigureContainer;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Hosting;HostBuilder;ConfigureContainer;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostBuilder;ConfigureContainer;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostBuilder;ConfigureHostConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostBuilder;ConfigureHostConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Hosting;HostBuilder;ConfigureHostConfiguration;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostBuilder;ConfigureHostConfiguration;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostBuilder;ConfigureServices;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostBuilder;ConfigureServices;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Hosting;HostBuilder;ConfigureServices;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostBuilder;ConfigureServices;(System.Action);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Hosting;HostBuilder;UseServiceProviderFactory;(Microsoft.Extensions.DependencyInjection.IServiceProviderFactory);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostBuilder;UseServiceProviderFactory;(System.Func>);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostBuilder;UseServiceProviderFactory;(System.Func>);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Hosting;HostBuilder;UseServiceProviderFactory;(System.Func>);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostBuilder;UseServiceProviderFactory;(System.Func>);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Hosting;HostBuilderContext;HostBuilderContext;(System.Collections.Generic.IDictionary);Argument[0];Argument[this].Property[Microsoft.Extensions.Hosting.HostBuilderContext.Properties];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureAppConfiguration;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureAppConfiguration;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureAppConfiguration;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureAppConfiguration;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureContainer;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureContainer;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureContainer;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureContainer;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureDefaults;(Microsoft.Extensions.Hosting.IHostBuilder,System.String[]);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureServices;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureServices;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureServices;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureServices;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;RunConsoleAsync;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseConsoleLifetime;(Microsoft.Extensions.Hosting.IHostBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseConsoleLifetime;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseConsoleLifetime;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseConsoleLifetime;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseConsoleLifetime;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseContentRoot;(Microsoft.Extensions.Hosting.IHostBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseEnvironment;(Microsoft.Extensions.Hosting.IHostBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Hosting;IApplicationLifetime;get_ApplicationStarted;();Argument[this];ReturnValue;taint;df-generated | @@ -2832,27 +2616,17 @@ summary | Microsoft.Extensions.Hosting;IHostApplicationLifetime;get_ApplicationStarted;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Hosting;IHostApplicationLifetime;get_ApplicationStopped;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Hosting;IHostApplicationLifetime;get_ApplicationStopping;();Argument[this];ReturnValue;taint;df-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureContainer;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureContainer;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureContainer;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureContainer;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureHostConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureHostConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureHostConfiguration;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureHostConfiguration;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureServices;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureServices;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureServices;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureServices;(System.Action);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Hosting;IHostBuilder;UseServiceProviderFactory;(Microsoft.Extensions.DependencyInjection.IServiceProviderFactory);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;UseServiceProviderFactory;(System.Func>);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;IHostBuilder;UseServiceProviderFactory;(System.Func>);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;IHostBuilder;UseServiceProviderFactory;(System.Func>);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;UseServiceProviderFactory;(System.Func>);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Hosting;IHostLifetime;WaitForStartAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Http.Logging;LoggingHttpMessageHandler;LoggingHttpMessageHandler;(Microsoft.Extensions.Logging.ILogger);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Http.Logging;LoggingHttpMessageHandler;LoggingHttpMessageHandler;(Microsoft.Extensions.Logging.ILogger,Microsoft.Extensions.Http.HttpClientFactoryOptions);Argument[0];Argument[this];taint;df-generated | @@ -2868,32 +2642,16 @@ summary | Microsoft.Extensions.Localization;IResourceNamesCache;GetOrAdd;(System.String,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Localization;ResourceNamesCache;GetOrAdd;(System.String,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[1];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.Category];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[1];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.Category];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.EventId];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.EventId];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.State];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.State];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.Exception];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.Exception];value;hq-generated | -| Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[5];Argument[5].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[5];Argument[5].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[5];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.Formatter];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[5];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.Formatter];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;NullLogger;BeginScope;(TState);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging.Abstractions;NullLogger;BeginScope;(TState);Argument[this];ReturnValue;taint;df-generated | -| Microsoft.Extensions.Logging.Abstractions;NullLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[4].Parameter[0];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;NullLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[4].Parameter[0];value;hq-generated | -| Microsoft.Extensions.Logging.Abstractions;NullLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[4].Parameter[1];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;NullLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[4].Parameter[1];value;hq-generated | -| Microsoft.Extensions.Logging.Abstractions;NullLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging.Abstractions;NullLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;NullLogger;BeginScope;(TState);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging.Abstractions;NullLogger;BeginScope;(TState);Argument[this];ReturnValue;taint;df-generated | -| Microsoft.Extensions.Logging.Abstractions;NullLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[4].Parameter[0];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;NullLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[4].Parameter[0];value;hq-generated | -| Microsoft.Extensions.Logging.Abstractions;NullLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[4].Parameter[1];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;NullLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[4].Parameter[1];value;hq-generated | -| Microsoft.Extensions.Logging.Abstractions;NullLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging.Abstractions;NullLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;NullLoggerFactory;AddProvider;(Microsoft.Extensions.Logging.ILoggerProvider);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Logging.Abstractions;NullLoggerFactory;AddProvider;(Microsoft.Extensions.Logging.ILoggerProvider);Argument[this];Argument[0];taint;df-generated | @@ -2938,43 +2696,27 @@ summary | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,Microsoft.Extensions.Logging.LogLevel,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func,System.Boolean);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func,System.Boolean);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func,System.Boolean);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsoleFormatter;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsoleFormatter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsoleFormatter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsoleFormatter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsoleFormatter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddJsonConsole;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddJsonConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddJsonConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddJsonConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddJsonConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSimpleConsole;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSimpleConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSimpleConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSimpleConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSimpleConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSystemdConsole;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSystemdConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSystemdConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSystemdConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSystemdConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggerFactory);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggerFactory,Microsoft.Extensions.Logging.LogLevel);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;EventId;EventId;(System.Int32,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Logging.EventId.Name];value;dfc-generated | @@ -2985,84 +2727,49 @@ summary | Microsoft.Extensions.Logging;EventLoggerFactoryExtensions;AddEventLog;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;EventLoggerFactoryExtensions;AddEventLog;(Microsoft.Extensions.Logging.ILoggingBuilder,Microsoft.Extensions.Logging.EventLog.EventLogSettings);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;EventLoggerFactoryExtensions;AddEventLog;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;EventLoggerFactoryExtensions;AddEventLog;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;EventLoggerFactoryExtensions;AddEventLog;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;EventLoggerFactoryExtensions;AddEventLog;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;EventSourceLoggerFactoryExtensions;AddEventSourceLogger;(Microsoft.Extensions.Logging.ILoggerFactory);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;EventSourceLoggerFactoryExtensions;AddEventSourceLogger;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,Microsoft.Extensions.Logging.LogLevel);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,Microsoft.Extensions.Logging.LogLevel);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,Microsoft.Extensions.Logging.LogLevel);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,Microsoft.Extensions.Logging.LogLevel);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Logging;IExternalScopeProvider;ForEachScope;(System.Action,TState);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;IExternalScopeProvider;ForEachScope;(System.Action,TState);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;IExternalScopeProvider;ForEachScope;(System.Action,TState);Argument[1];Argument[0].Parameter[1];value;dfc-generated | -| Microsoft.Extensions.Logging;IExternalScopeProvider;ForEachScope;(System.Action,TState);Argument[1];Argument[0].Parameter[1];value;hq-generated | | Microsoft.Extensions.Logging;IExternalScopeProvider;Push;(System.Object);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;IExternalScopeProvider;Push;(System.Object);Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;ILogger;BeginScope;(TState);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;ILogger;BeginScope;(TState);Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;ILogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[4].Parameter[0];value;dfc-generated | -| Microsoft.Extensions.Logging;ILogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[4].Parameter[0];value;hq-generated | | Microsoft.Extensions.Logging;ILogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[4].Parameter[1];value;dfc-generated | -| Microsoft.Extensions.Logging;ILogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[4].Parameter[1];value;hq-generated | -| Microsoft.Extensions.Logging;ILogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ILogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ILoggerFactory;AddProvider;(Microsoft.Extensions.Logging.ILoggerProvider);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Logging;ILoggerFactory;AddProvider;(Microsoft.Extensions.Logging.ILoggerProvider);Argument[this];Argument[0];taint;df-generated | @@ -3074,19 +2781,11 @@ summary | Microsoft.Extensions.Logging;ISupportExternalScope;SetScopeProvider;(Microsoft.Extensions.Logging.IExternalScopeProvider);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Logging;Logger;BeginScope;(TState);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;Logger;BeginScope;(TState);Argument[this];ReturnValue;taint;df-generated | -| Microsoft.Extensions.Logging;Logger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[4].Parameter[0];value;dfc-generated | -| Microsoft.Extensions.Logging;Logger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[4].Parameter[0];value;hq-generated | -| Microsoft.Extensions.Logging;Logger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[4].Parameter[1];value;dfc-generated | -| Microsoft.Extensions.Logging;Logger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[4].Parameter[1];value;hq-generated | -| Microsoft.Extensions.Logging;Logger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;Logger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;LoggerExtensions;BeginScope;(Microsoft.Extensions.Logging.ILogger,System.String,System.Object[]);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;LoggerExtensions;BeginScope;(Microsoft.Extensions.Logging.ILogger,System.String,System.Object[]);Argument[1];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;LoggerExtensions;BeginScope;(Microsoft.Extensions.Logging.ILogger,System.String,System.Object[]);Argument[2].Element;ReturnValue;taint;df-generated | -| Microsoft.Extensions.Logging;LoggerExternalScopeProvider;ForEachScope;(System.Action,TState);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;LoggerExternalScopeProvider;ForEachScope;(System.Action,TState);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Logging;LoggerExternalScopeProvider;ForEachScope;(System.Action,TState);Argument[1];Argument[0].Parameter[1];value;dfc-generated | -| Microsoft.Extensions.Logging;LoggerExternalScopeProvider;ForEachScope;(System.Action,TState);Argument[1];Argument[0].Parameter[1];value;hq-generated | | Microsoft.Extensions.Logging;LoggerExternalScopeProvider;Push;(System.Object);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;LoggerExternalScopeProvider;Push;(System.Object);Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;LoggerFactory;AddProvider;(Microsoft.Extensions.Logging.ILoggerProvider);Argument[0];Argument[this];taint;df-generated | @@ -3100,15 +2799,10 @@ summary | Microsoft.Extensions.Logging;LoggerFactory;LoggerFactory;(System.Collections.Generic.IEnumerable,Microsoft.Extensions.Options.IOptionsMonitor,Microsoft.Extensions.Options.IOptions,Microsoft.Extensions.Logging.IExternalScopeProvider);Argument[3];Argument[this];taint;df-generated | | Microsoft.Extensions.Logging;LoggerFilterOptions;get_Rules;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[0];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.ProviderName];value;dfc-generated | -| Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[0];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.ProviderName];value;hq-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[1];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.CategoryName];value;dfc-generated | -| Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[1];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.CategoryName];value;hq-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[2];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.LogLevel];value;dfc-generated | -| Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[2];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.LogLevel];value;hq-generated | -| Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[3];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.Filter];value;dfc-generated | -| Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[3];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.Filter];value;hq-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;ToString;();Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.CategoryName];ReturnValue;taint;dfc-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;ToString;();Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.ProviderName];ReturnValue;taint;dfc-generated | | Microsoft.Extensions.Logging;LoggerMessageAttribute;LoggerMessageAttribute;(Microsoft.Extensions.Logging.LogLevel,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Logging.LoggerMessageAttribute.Message];value;dfc-generated | @@ -3118,8 +2812,6 @@ summary | Microsoft.Extensions.Logging;LoggingBuilderExtensions;AddProvider;(Microsoft.Extensions.Logging.ILoggingBuilder,Microsoft.Extensions.Logging.ILoggerProvider);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;LoggingBuilderExtensions;ClearProviders;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;LoggingBuilderExtensions;Configure;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;LoggingBuilderExtensions;Configure;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;LoggingBuilderExtensions;Configure;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;LoggingBuilderExtensions;Configure;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;LoggingBuilderExtensions;SetMinimumLevel;(Microsoft.Extensions.Logging.ILoggingBuilder,Microsoft.Extensions.Logging.LogLevel);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ProviderAliasAttribute;ProviderAliasAttribute;(System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Logging.ProviderAliasAttribute.Alias];value;dfc-generated | @@ -3136,188 +2828,105 @@ summary | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Name];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency3];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency4];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency4];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency5];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency5];value;hq-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[6].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[6].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Action];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Name];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency3];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency4];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency4];value;hq-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[5].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[5].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Action];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Name];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Dependency3];value;hq-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Action];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Name];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Dependency2];value;hq-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Action];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`2.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`2.Name];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`2.Dependency];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`2.Dependency];value;hq-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`2.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`2.Action];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`1.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`1.Name];value;hq-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`1.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`1.Action];value;hq-generated | | Microsoft.Extensions.Options;ConfigureOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | -| Microsoft.Extensions.Options;ConfigureOptions;ConfigureOptions;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureOptions;ConfigureOptions;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureOptions;ConfigureOptions;(System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureOptions`1.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureOptions;ConfigureOptions;(System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureOptions`1.Action];value;hq-generated | | Microsoft.Extensions.Options;DataAnnotationValidateOptions;DataAnnotationValidateOptions;(System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.DataAnnotationValidateOptions`1.Name];value;dfc-generated | | Microsoft.Extensions.Options;IOptionsMonitor;OnChange;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;IOptionsMonitorCache;GetOrAdd;(System.String,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;NamedConfigureFromConfigurationOptions;NamedConfigureFromConfigurationOptions;(System.String,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;OptionsBuilder;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.OptionsBuilder`1.Services];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;OptionsBuilder;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.OptionsBuilder`1.Name];value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Options;OptionsCache;GetOrAdd;(System.String,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsFactory;Create;(System.String);Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Options;OptionsFactory;OptionsFactory;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEnumerable>);Argument[0].Element;Argument[this];taint;df-generated | @@ -3332,175 +2941,102 @@ summary | Microsoft.Extensions.Options;OptionsValidationException;OptionsValidationException;(System.String,System.Type,System.Collections.Generic.IEnumerable);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.OptionsValidationException.OptionsName];value;dfc-generated | | Microsoft.Extensions.Options;OptionsValidationException;OptionsValidationException;(System.String,System.Type,System.Collections.Generic.IEnumerable);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.OptionsValidationException.Failures];value;dfc-generated | | Microsoft.Extensions.Options;OptionsValidationException;get_Message;();Argument[this].Property[Microsoft.Extensions.Options.OptionsValidationException.Failures].Element;ReturnValue;taint;dfc-generated | -| Microsoft.Extensions.Options;OptionsValidationException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Options;OptionsWrapper;OptionsWrapper;(TOptions);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.OptionsWrapper`1.Value];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Name];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Name];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency3];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency4];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency4];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency5];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency5];value;hq-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[6].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[6].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Action];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Action];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Name];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Name];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency3];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency4];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency4];value;hq-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[5].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[5].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Action];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Action];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Name];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Name];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Dependency3];value;hq-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Action];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Action];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Name];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Name];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Dependency2];value;hq-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Action];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Action];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`2.Name];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`2.Name];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`2.Dependency];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`2.Dependency];value;hq-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`2.Action];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`2.Action];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`1.Name];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`1.Name];value;hq-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`1.Action];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`1.Action];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures].Element;value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Name];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency3];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency4];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency4];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency5];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency5];value;hq-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[6];Argument[6].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[6];Argument[6].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Validation];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Validation];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[7];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.FailureMessage];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[7];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.FailureMessage];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures].Element;value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Name];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency3];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency4];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency4];value;hq-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[5];Argument[5].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[5];Argument[5].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Validation];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Validation];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.FailureMessage];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.FailureMessage];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures].Element;value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Name];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Dependency3];value;hq-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Validation];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Validation];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.FailureMessage];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.FailureMessage];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures].Element;value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Name];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Dependency2];value;hq-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Validation];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Validation];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.FailureMessage];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.FailureMessage];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures].Element;value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.Name];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.Dependency];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.Dependency];value;hq-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.Validation];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.Validation];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.FailureMessage];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.FailureMessage];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures].Element;value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.Name];value;hq-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.Validation];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.Validation];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.FailureMessage];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.FailureMessage];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptionsResult;Fail;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];taint;dfc-generated | | Microsoft.Extensions.Options;ValidateOptionsResult;Fail;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptionsResult;Fail;(System.String);Argument[0];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | @@ -3512,26 +3048,18 @@ summary | Microsoft.Extensions.Options;ValidateOptionsResultBuilder;AddResults;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ValidateOptionsResultBuilder;Build;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Primitives;CancellationChangeToken;CancellationChangeToken;(System.Threading.CancellationToken);Argument[0];Argument[this];taint;df-generated | -| Microsoft.Extensions.Primitives;CancellationChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Primitives;CancellationChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Primitives;CancellationChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Primitives;CancellationChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Primitives;ChangeToken;OnChange;(System.Func,System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Primitives;ChangeToken;OnChange;(System.Func,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Primitives;ChangeToken;OnChange;(System.Func,System.Action,TState);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Primitives;ChangeToken;OnChange;(System.Func,System.Action,TState);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Primitives;CompositeChangeToken;CompositeChangeToken;(System.Collections.Generic.IReadOnlyList);Argument[0];Argument[this].Property[Microsoft.Extensions.Primitives.CompositeChangeToken.ChangeTokens];value;dfc-generated | -| Microsoft.Extensions.Primitives;CompositeChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Primitives;CompositeChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Primitives;CompositeChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Primitives;CompositeChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Primitives;Extensions;Append;(System.Text.StringBuilder,Microsoft.Extensions.Primitives.StringSegment);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Primitives;Extensions;Append;(System.Text.StringBuilder,Microsoft.Extensions.Primitives.StringSegment);Argument[1].Property[Microsoft.Extensions.Primitives.StringSegment.Buffer];Argument[0];taint;dfc-generated | | Microsoft.Extensions.Primitives;Extensions;Append;(System.Text.StringBuilder,Microsoft.Extensions.Primitives.StringSegment);Argument[1].Property[Microsoft.Extensions.Primitives.StringSegment.Buffer];ReturnValue;taint;dfc-generated | -| Microsoft.Extensions.Primitives;IChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Primitives;IChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Primitives;IChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Primitives;IChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Primitives;InplaceStringBuilder;ToString;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Primitives;StringSegment;StringSegment;(System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Primitives.StringSegment.Buffer];value;dfc-generated | | Microsoft.Extensions.Primitives;StringSegment;StringSegment;(System.String,System.Int32,System.Int32);Argument[0];Argument[this].Property[Microsoft.Extensions.Primitives.StringSegment.Buffer];value;dfc-generated | @@ -3541,10 +3069,7 @@ summary | Microsoft.Extensions.Primitives;StringSegment;ToString;();Argument[this].Property[Microsoft.Extensions.Primitives.StringSegment.Value];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Primitives;StringSegment;get_Value;();Argument[this].Property[Microsoft.Extensions.Primitives.StringSegment.Buffer];ReturnValue;taint;dfc-generated | | Microsoft.Extensions.Primitives;StringTokenizer+Enumerator;Enumerator;(Microsoft.Extensions.Primitives.StringTokenizer);Argument[0].Element;Argument[this];taint;df-generated | -| Microsoft.Extensions.Primitives;StringTokenizer+Enumerator;get_Current;();Argument[this].Property[Microsoft.Extensions.Primitives.StringTokenizer+Enumerator.Current];ReturnValue;value;df-generated | | Microsoft.Extensions.Primitives;StringTokenizer+Enumerator;get_Current;();Argument[this].Property[Microsoft.Extensions.Primitives.StringTokenizer+Enumerator.Current];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Primitives;StringTokenizer+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| Microsoft.Extensions.Primitives;StringTokenizer+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | Microsoft.Extensions.Primitives;StringTokenizer;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | Microsoft.Extensions.Primitives;StringTokenizer;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | Microsoft.Extensions.Primitives;StringTokenizer;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | @@ -3552,7 +3077,6 @@ summary | Microsoft.Extensions.Primitives;StringTokenizer;StringTokenizer;(Microsoft.Extensions.Primitives.StringSegment,System.Char[]);Argument[1].Element;Argument[this];taint;df-generated | | Microsoft.Extensions.Primitives;StringTokenizer;StringTokenizer;(System.String,System.Char[]);Argument[1].Element;Argument[this];taint;df-generated | | Microsoft.Extensions.Primitives;StringValues+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| Microsoft.Extensions.Primitives;StringValues;Add;(System.String);Argument[0];Argument[this].Element;value;manual | | Microsoft.Extensions.Primitives;StringValues;Add;(System.String);Argument[0];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;Add;(System.String);Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | @@ -3566,7 +3090,6 @@ summary | Microsoft.Extensions.Primitives;StringValues;Contains;(System.String);Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;CopyTo;(System.String[],System.Int32);Argument[0].Element;ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;CopyTo;(System.String[],System.Int32);Argument[1];ReturnValue;taint;manual | -| Microsoft.Extensions.Primitives;StringValues;CopyTo;(System.String[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | Microsoft.Extensions.Primitives;StringValues;CopyTo;(System.String[],System.Int32);Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;Equals;(Microsoft.Extensions.Primitives.StringValues);Argument[0];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;Equals;(Microsoft.Extensions.Primitives.StringValues);Argument[this];ReturnValue;taint;manual | @@ -3586,14 +3109,11 @@ summary | Microsoft.Extensions.Primitives;StringValues;Equals;(System.String[]);Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;Equals;(System.String[],Microsoft.Extensions.Primitives.StringValues);Argument[0].Element;ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;Equals;(System.String[],Microsoft.Extensions.Primitives.StringValues);Argument[1];ReturnValue;taint;manual | -| Microsoft.Extensions.Primitives;StringValues;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| Microsoft.Extensions.Primitives;StringValues;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | Microsoft.Extensions.Primitives;StringValues;GetEnumerator;();Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;GetHashCode;();Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;IndexOf;(System.String);Argument[0];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;IndexOf;(System.String);Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;Insert;(System.Int32,System.String);Argument[0];ReturnValue;taint;manual | -| Microsoft.Extensions.Primitives;StringValues;Insert;(System.Int32,System.String);Argument[1];Argument[this].Element;value;manual | | Microsoft.Extensions.Primitives;StringValues;Insert;(System.Int32,System.String);Argument[1];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;Insert;(System.Int32,System.String);Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;IsNullOrEmpty;(Microsoft.Extensions.Primitives.StringValues);Argument[0];ReturnValue;taint;manual | @@ -3608,10 +3128,8 @@ summary | Microsoft.Extensions.Primitives;StringValues;get_Count;();Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;get_IsReadOnly;();Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;get_Item;(System.Int32);Argument[0];ReturnValue;taint;manual | -| Microsoft.Extensions.Primitives;StringValues;get_Item;(System.Int32);Argument[this].Element;ReturnValue;value;manual | | Microsoft.Extensions.Primitives;StringValues;get_Item;(System.Int32);Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;set_Item;(System.Int32,System.String);Argument[0];ReturnValue;taint;manual | -| Microsoft.Extensions.Primitives;StringValues;set_Item;(System.Int32,System.String);Argument[1];Argument[this].Element;value;manual | | Microsoft.Extensions.Primitives;StringValues;set_Item;(System.Int32,System.String);Argument[1];ReturnValue;taint;manual | | Microsoft.Extensions.Primitives;StringValues;set_Item;(System.Int32,System.String);Argument[this];ReturnValue;taint;manual | | Microsoft.Extensions.Validation;ValidateContext;add_OnValidationError;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -3727,7 +3245,6 @@ summary | Newtonsoft.Json.Linq;JEnumerable;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | Newtonsoft.Json.Linq;JObject;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | Newtonsoft.Json.Linq;JObject;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| Newtonsoft.Json.Linq;JObject;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | Newtonsoft.Json.Linq;JObject;Add;(System.String,Newtonsoft.Json.Linq.JToken);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | Newtonsoft.Json.Linq;JObject;Add;(System.String,Newtonsoft.Json.Linq.JToken);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | Newtonsoft.Json.Linq;JObject;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | @@ -3746,7 +3263,6 @@ summary | Newtonsoft.Json.Linq;JObject;add_PropertyChanging;(System.ComponentModel.PropertyChangingEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Newtonsoft.Json.Linq;JObject;get_Item;(System.Object);Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;manual | | Newtonsoft.Json.Linq;JObject;get_Item;(System.Object);Argument[this].Element;ReturnValue;value;manual | -| Newtonsoft.Json.Linq;JObject;get_Item;(System.String);Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;manual | | Newtonsoft.Json.Linq;JObject;get_Item;(System.String);Argument[this].Element;ReturnValue;value;manual | | Newtonsoft.Json.Linq;JObject;get_Keys;();Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue.Element;value;manual | | Newtonsoft.Json.Linq;JObject;get_Values;();Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue.Element;value;manual | @@ -3755,8 +3271,6 @@ summary | Newtonsoft.Json.Linq;JObject;set_Item;(System.Object,Newtonsoft.Json.Linq.JToken);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | Newtonsoft.Json.Linq;JObject;set_Item;(System.Object,Newtonsoft.Json.Linq.JToken);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | Newtonsoft.Json.Linq;JObject;set_Item;(System.Object,Newtonsoft.Json.Linq.JToken);Argument[1];Argument[this].Element;value;manual | -| Newtonsoft.Json.Linq;JObject;set_Item;(System.String,Newtonsoft.Json.Linq.JToken);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | -| Newtonsoft.Json.Linq;JObject;set_Item;(System.String,Newtonsoft.Json.Linq.JToken);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | Newtonsoft.Json.Linq;JObject;set_Item;(System.String,Newtonsoft.Json.Linq.JToken);Argument[1];Argument[this].Element;value;manual | | Newtonsoft.Json.Linq;JPropertyDescriptor;ResetValue;(System.Object);Argument[this];Argument[0];taint;df-generated | | Newtonsoft.Json.Linq;JPropertyDescriptor;SetValue;(System.Object,System.Object);Argument[0];Argument[this];taint;df-generated | @@ -4242,11 +3756,6 @@ summary | ServiceStack.Jobs;BackgroundJobOptions;set_OnSuccess;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | ServiceStack.Jobs;JobLogger;BeginScope;(TState);Argument[0];ReturnValue;taint;df-generated | | ServiceStack.Jobs;JobLogger;BeginScope;(TState);Argument[this];ReturnValue;taint;df-generated | -| ServiceStack.Jobs;JobLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[4].Parameter[0];value;dfc-generated | -| ServiceStack.Jobs;JobLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[4].Parameter[0];value;hq-generated | -| ServiceStack.Jobs;JobLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[4].Parameter[1];value;dfc-generated | -| ServiceStack.Jobs;JobLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[4].Parameter[1];value;hq-generated | -| ServiceStack.Jobs;JobLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | ServiceStack.Jobs;JobLogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | ServiceStack.Logging;GenericLogFactory;GenericLogFactory;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | ServiceStack.Messaging;BackgroundMqService;CreateMessageHandlerFactory;(System.Func,System.Object>,System.Action,System.Exception>);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -6274,33 +5783,12 @@ summary | System.CodeDom.Compiler;CodeGenerator;GenerateAttachEventStatement;(System.CodeDom.CodeAttachEventStatement);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateBinaryOperatorExpression;(System.CodeDom.CodeBinaryOperatorExpression);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCastExpression;(System.CodeDom.CodeCastExpression);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromCompileUnit;(System.CodeDom.CodeCompileUnit,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromCompileUnit;(System.CodeDom.CodeCompileUnit,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromCompileUnit;(System.CodeDom.CodeCompileUnit,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromCompileUnit;(System.CodeDom.CodeCompileUnit,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromCompileUnit;(System.CodeDom.CodeCompileUnit,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromCompileUnit;(System.CodeDom.CodeCompileUnit,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromExpression;(System.CodeDom.CodeExpression,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromExpression;(System.CodeDom.CodeExpression,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromExpression;(System.CodeDom.CodeExpression,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromExpression;(System.CodeDom.CodeExpression,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this];taint;dfc-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromMember;(System.CodeDom.CodeTypeMember,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromNamespace;(System.CodeDom.CodeNamespace,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromNamespace;(System.CodeDom.CodeNamespace,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromNamespace;(System.CodeDom.CodeNamespace,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromNamespace;(System.CodeDom.CodeNamespace,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromNamespace;(System.CodeDom.CodeNamespace,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromNamespace;(System.CodeDom.CodeNamespace,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromStatement;(System.CodeDom.CodeStatement,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromStatement;(System.CodeDom.CodeStatement,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromStatement;(System.CodeDom.CodeStatement,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromStatement;(System.CodeDom.CodeStatement,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromType;(System.CodeDom.CodeTypeDeclaration,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromType;(System.CodeDom.CodeTypeDeclaration,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromType;(System.CodeDom.CodeTypeDeclaration,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromType;(System.CodeDom.CodeTypeDeclaration,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromType;(System.CodeDom.CodeTypeDeclaration,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromType;(System.CodeDom.CodeTypeDeclaration,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this];taint;dfc-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCompileUnit;(System.CodeDom.CodeCompileUnit);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCompileUnitEnd;(System.CodeDom.CodeCompileUnit);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCompileUnitStart;(System.CodeDom.CodeCompileUnit);Argument[0];Argument[this];taint;df-generated | @@ -6342,12 +5830,9 @@ summary | System.CodeDom.Compiler;CodeGenerator;GenerateTypes;(System.CodeDom.CodeNamespace);Argument[0].Property[System.CodeDom.CodeNamespace.Types].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._currentClass];value;dfc-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateVariableDeclarationStatement;(System.CodeDom.CodeVariableDeclarationStatement);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateVariableReferenceExpression;(System.CodeDom.CodeVariableReferenceExpression);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GetTypeOutput;(System.CodeDom.CodeTypeReference);Argument[0].Property[System.CodeDom.CodeTypeReference.ArrayElementType].Property[System.CodeDom.CodeTypeReference.BaseType];ReturnValue;taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GetTypeOutput;(System.CodeDom.CodeTypeReference);Argument[0].Property[System.CodeDom.CodeTypeReference.ArrayElementType].Property[System.CodeDom.CodeTypeReference.BaseType];ReturnValue;taint;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GetTypeOutput;(System.CodeDom.CodeTypeReference);Argument[0].Property[System.CodeDom.CodeTypeReference.BaseType];ReturnValue;taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GetTypeOutput;(System.CodeDom.CodeTypeReference);Argument[0].Property[System.CodeDom.CodeTypeReference.BaseType];ReturnValue;taint;dfc-generated | | System.CodeDom.Compiler;CodeGenerator;GetTypeOutput;(System.CodeDom.CodeTypeReference);Argument[0];ReturnValue;taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GetTypeOutput;(System.CodeDom.CodeTypeReference);Argument[0];ReturnValue;taint;dfc-generated | | System.CodeDom.Compiler;CodeGenerator;OutputAttributeArgument;(System.CodeDom.CodeAttributeArgument);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;OutputAttributeDeclarations;(System.CodeDom.CodeAttributeDeclarationCollection);Argument[0].Element;Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;OutputExpressionList;(System.CodeDom.CodeExpressionCollection);Argument[0].Element;Argument[this];taint;df-generated | @@ -6408,54 +5893,22 @@ summary | System.CodeDom.Compiler;IndentedTextWriter;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;FlushAsync;();Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;FlushAsync;();Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;FlushAsync;();Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;FlushAsync;(System.Threading.CancellationToken);Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;FlushAsync;(System.Threading.CancellationToken);Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;FlushAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;IndentedTextWriter;(System.IO.TextWriter,System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];value;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.Char[]);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.Char[]);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.Char[]);Argument[0].Element;Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.Char[]);Argument[0].Element;Argument[this];taint;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object);Argument[1];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object);Argument[1];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[1];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[1];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[2];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[2];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object[]);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object[]);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object[]);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object[]);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object[]);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object[]);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object[]);Argument[1].Element;Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object[]);Argument[1].Element;Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.ReadOnlySpan);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.ReadOnlySpan);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.ReadOnlySpan);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.ReadOnlySpan);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.ReadOnlySpan);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.ReadOnlySpan);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.ReadOnlySpan);Argument[1];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.ReadOnlySpan);Argument[1];Argument[this];taint;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteAsync;(System.Char);Argument[this];ReturnValue;taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this];taint;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[0];ReturnValue;taint;df-generated | @@ -6464,80 +5917,28 @@ summary | System.CodeDom.Compiler;IndentedTextWriter;WriteAsync;(System.String);Argument[0];Argument[this];taint;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteAsync;(System.Text.StringBuilder,System.Threading.CancellationToken);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteAsync;(System.Text.StringBuilder,System.Threading.CancellationToken);Argument[1];ReturnValue;taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Char[]);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Char[]);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Char[]);Argument[0].Element;Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Char[]);Argument[0].Element;Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this];taint;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Object);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object);Argument[1];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object);Argument[1];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[1];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[1];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[2];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[2];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object[]);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object[]);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object[]);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object[]);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object[]);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object[]);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object[]);Argument[1].Element;Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object[]);Argument[1].Element;Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.ReadOnlySpan);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.ReadOnlySpan);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.ReadOnlySpan);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.ReadOnlySpan);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.ReadOnlySpan);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.ReadOnlySpan);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.ReadOnlySpan);Argument[1];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.ReadOnlySpan);Argument[1];Argument[this];taint;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;();Argument[this];ReturnValue;taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char);Argument[this];ReturnValue;taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;ReturnValue;taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;ReturnValue;taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[this];ReturnValue;taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[this];ReturnValue;taint;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[0];ReturnValue;taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[1];ReturnValue;taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[this];ReturnValue;taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[0];Argument[this];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[0];ReturnValue;taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[0];ReturnValue;taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[this];ReturnValue;taint;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Text.StringBuilder,System.Threading.CancellationToken);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Text.StringBuilder,System.Threading.CancellationToken);Argument[1];ReturnValue;taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Text.StringBuilder,System.Threading.CancellationToken);Argument[this];ReturnValue;taint;df-generated | @@ -6545,10 +5946,7 @@ summary | System.CodeDom.Compiler;IndentedTextWriter;WriteLineNoTabsAsync;(System.String);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineNoTabsAsync;(System.String);Argument[0];ReturnValue;taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineNoTabsAsync;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;get_Encoding;();Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].Property[System.IO.TextWriter.Encoding];ReturnValue;value;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;get_Encoding;();Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].Property[System.IO.TextWriter.Encoding];ReturnValue;value;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;get_Encoding;();Argument[this];ReturnValue;taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;get_Encoding;();Argument[this];ReturnValue;taint;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;get_InnerWriter;();Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];ReturnValue;value;dfc-generated | | System.CodeDom.Compiler;TempFileCollection;AddExtension;(System.String);Argument[0];ReturnValue;taint;dfc-generated | | System.CodeDom.Compiler;TempFileCollection;AddExtension;(System.String);Argument[this].Property[System.CodeDom.Compiler.TempFileCollection.BasePath];ReturnValue;taint;dfc-generated | @@ -6828,47 +6226,28 @@ summary | System.Collections.Concurrent;ConcurrentBag;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Collections.Concurrent;ConcurrentDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Collections.Concurrent;ConcurrentDictionary;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;Add;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;Add;(TKey,TValue);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;Add;(TKey,TValue);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[0];Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[0];Argument[2].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[0];Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[0];Argument[2].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[1];ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[1];ReturnValue;value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[0];Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[0];Argument[2].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[3];Argument[2].Parameter[2];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[3];Argument[2].Parameter[2];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;ConcurrentDictionary;(System.Collections.Generic.IEnumerable>);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;ConcurrentDictionary;(System.Collections.Generic.IEnumerable>);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | @@ -6883,20 +6262,13 @@ summary | System.Collections.Concurrent;ConcurrentDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,TValue);Argument[1];ReturnValue;value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Collections.Concurrent;ConcurrentDictionary;get_Comparer;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Concurrent;ConcurrentDictionary;get_Item;(System.Object);Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;manual | @@ -6941,10 +6313,8 @@ summary | System.Collections.Frozen;FrozenDictionary+AlternateLookup;ContainsKey;(TAlternateKey);Argument[0];Argument[this];taint;df-generated | | System.Collections.Frozen;FrozenDictionary+AlternateLookup;TryGetValue;(TAlternateKey,TValue);Argument[0];Argument[this];taint;df-generated | | System.Collections.Frozen;FrozenDictionary+AlternateLookup;get_Item;(TAlternateKey);Argument[0];Argument[this];taint;df-generated | -| System.Collections.Frozen;FrozenDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Frozen.FrozenDictionary`2+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Frozen;FrozenDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Frozen.FrozenDictionary`2+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Frozen;FrozenDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Frozen;FrozenDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Frozen;FrozenDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Collections.Frozen;FrozenDictionary;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Frozen;FrozenDictionary;Add;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | @@ -6957,7 +6327,6 @@ summary | System.Collections.Frozen;FrozenDictionary;GetAlternateLookup;();Argument[this];ReturnValue.Property[System.Collections.Frozen.FrozenDictionary`2+AlternateLookup`1.Dictionary];value;dfc-generated | | System.Collections.Frozen;FrozenDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Collections.Frozen;FrozenDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | -| System.Collections.Frozen;FrozenDictionary;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Frozen;FrozenDictionary;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Collections.Frozen;FrozenDictionary;TryGetAlternateLookup;(System.Collections.Frozen.FrozenDictionary+AlternateLookup);Argument[this];Argument[0].Property[System.Collections.Frozen.FrozenDictionary`2+AlternateLookup`1.Dictionary];value;dfc-generated | | System.Collections.Frozen;FrozenDictionary;get_Item;(System.Object);Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;manual | @@ -6977,10 +6346,8 @@ summary | System.Collections.Frozen;FrozenSet+AlternateLookup;Contains;(TAlternate);Argument[0];Argument[this];taint;df-generated | | System.Collections.Frozen;FrozenSet+AlternateLookup;TryGetValue;(TAlternate,T);Argument[0];Argument[this];taint;df-generated | | System.Collections.Frozen;FrozenSet+AlternateLookup;TryGetValue;(TAlternate,T);Argument[this];Argument[1];taint;df-generated | -| System.Collections.Frozen;FrozenSet+Enumerator;get_Current;();Argument[this].Property[System.Collections.Frozen.FrozenSet`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Frozen;FrozenSet+Enumerator;get_Current;();Argument[this].Property[System.Collections.Frozen.FrozenSet`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Frozen;FrozenSet+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Frozen;FrozenSet+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Frozen;FrozenSet;Add;(T);Argument[0];Argument[this].Element;value;manual | | System.Collections.Frozen;FrozenSet;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Frozen;FrozenSet;Contains;(T);Argument[this];Argument[0];taint;df-generated | @@ -7016,27 +6383,20 @@ summary | System.Collections.Generic;Dictionary+KeyCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;Dictionary+KeyCollection;CopyTo;(TKey[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;Dictionary+KeyCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.Dictionary`2+KeyCollection+Enumerator.Current];value;manual | -| System.Collections.Generic;Dictionary+KeyCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Generic;Dictionary+KeyCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;Dictionary+KeyCollection;KeyCollection;(System.Collections.Generic.Dictionary);Argument[0];Argument[this].SyntheticField[System.Collections.Generic.Dictionary`2+KeyCollection._dictionary];value;dfc-generated | | System.Collections.Generic;Dictionary+KeyCollection;get_SyncRoot;();Argument[this].SyntheticField[System.Collections.Generic.Dictionary`2+KeyCollection._dictionary].Property[System.Collections.ICollection.SyncRoot];ReturnValue;value;dfc-generated | | System.Collections.Generic;Dictionary+KeyCollection;get_SyncRoot;();Argument[this].SyntheticField[System.Collections.Generic.Dictionary`2+KeyCollection._dictionary];ReturnValue;value;dfc-generated | -| System.Collections.Generic;Dictionary+KeyCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Generic;Dictionary+ValueCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Generic;Dictionary+ValueCollection;Add;(TValue);Argument[0];Argument[this].Element;value;manual | | System.Collections.Generic;Dictionary+ValueCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Generic;Dictionary+ValueCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;Dictionary+ValueCollection;CopyTo;(TValue[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;Dictionary+ValueCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.Dictionary`2+ValueCollection+Enumerator.Current];value;manual | -| System.Collections.Generic;Dictionary+ValueCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Generic;Dictionary+ValueCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;Dictionary+ValueCollection;ValueCollection;(System.Collections.Generic.Dictionary);Argument[0];Argument[this].SyntheticField[System.Collections.Generic.Dictionary`2+ValueCollection._dictionary];value;dfc-generated | | System.Collections.Generic;Dictionary+ValueCollection;get_SyncRoot;();Argument[this].SyntheticField[System.Collections.Generic.Dictionary`2+ValueCollection._dictionary].Property[System.Collections.ICollection.SyncRoot];ReturnValue;value;dfc-generated | | System.Collections.Generic;Dictionary+ValueCollection;get_SyncRoot;();Argument[this].SyntheticField[System.Collections.Generic.Dictionary`2+ValueCollection._dictionary];ReturnValue;value;dfc-generated | -| System.Collections.Generic;Dictionary+ValueCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Generic;Dictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Generic;Dictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Collections.Generic;Dictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Collections.Generic;Dictionary;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Generic;Dictionary;Add;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Generic;Dictionary;Add;(TKey,TValue);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | @@ -7055,8 +6415,6 @@ summary | System.Collections.Generic;Dictionary;Dictionary;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEqualityComparer);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Generic;Dictionary;Dictionary;(System.Int32,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[this].SyntheticField[System.Collections.Generic.Dictionary`2._comparer];value;dfc-generated | | System.Collections.Generic;Dictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.Dictionary`2+Enumerator.Current];value;manual | -| System.Collections.Generic;Dictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Generic;Dictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;Dictionary;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Collections.Generic;Dictionary;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Collections.Generic;Dictionary;get_Comparer;();Argument[this].SyntheticField[System.Collections.Generic.Dictionary`2._comparer];ReturnValue;value;dfc-generated | @@ -7077,8 +6435,6 @@ summary | System.Collections.Generic;HashSet;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Generic;HashSet;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;HashSet;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.HashSet`1+Enumerator.Current];value;manual | -| System.Collections.Generic;HashSet;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Generic;HashSet;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;HashSet;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Collections.Generic;HashSet;HashSet;(System.Collections.Generic.IEqualityComparer);Argument[0];Argument[this].SyntheticField[System.Collections.Generic.HashSet`1._comparer];value;dfc-generated | | System.Collections.Generic;HashSet;RemoveWhere;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -7108,10 +6464,8 @@ summary | System.Collections.Generic;KeyValuePair;get_Key;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Generic;KeyValuePair;get_Value;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Generic;LinkedList+Enumerator;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | -| System.Collections.Generic;LinkedList+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.LinkedList`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;LinkedList+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.LinkedList`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Generic;LinkedList+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;LinkedList+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Generic;LinkedList;Add;(T);Argument[0];Argument[this].Element;value;manual | | System.Collections.Generic;LinkedList;AddAfter;(System.Collections.Generic.LinkedListNode,System.Collections.Generic.LinkedListNode);Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.next].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev];Argument[1].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev];value;dfc-generated | | System.Collections.Generic;LinkedList;AddAfter;(System.Collections.Generic.LinkedListNode,System.Collections.Generic.LinkedListNode);Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.next];Argument[1].SyntheticField[System.Collections.Generic.LinkedListNode`1.next];value;dfc-generated | @@ -7140,9 +6494,7 @@ summary | System.Collections.Generic;LinkedList;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;LinkedList;Find;(T);Argument[this].Element;ReturnValue;value;manual | | System.Collections.Generic;LinkedList;FindLast;(T);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.Generic;LinkedList;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Collections.Generic;LinkedList;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.LinkedList`1+Enumerator.Current];value;manual | -| System.Collections.Generic;LinkedList;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;LinkedList;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Collections.Generic;LinkedList;LinkedList;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this];taint;df-generated | | System.Collections.Generic;LinkedList;LinkedList;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this];taint;df-generated | @@ -7162,97 +6514,56 @@ summary | System.Collections.Generic;List;AsReadOnly;();Argument[this].Element;ReturnValue.Element;value;manual | | System.Collections.Generic;List;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Generic;List;Contains;(System.Object);Argument[0];Argument[this];taint;df-generated | -| System.Collections.Generic;List;ConvertAll;(System.Converter);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;ConvertAll;(System.Converter);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;ConvertAll;(System.Converter);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;ConvertAll;(System.Converter);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Generic;List;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;List;CopyTo;(T[]);Argument[this].Element;Argument[0].Element;value;dfc-generated | | System.Collections.Generic;List;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Collections.Generic;List;Exists;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;Exists;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;Exists;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;Exists;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;Find;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Generic;List;Find;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Generic;List;Find;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.Generic;List;FindAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Generic;List;FindAll;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Generic;List;FindAll;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.Generic;List;FindIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;FindIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;FindIndex;(System.Int32,System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;FindIndex;(System.Int32,System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[2].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;FindIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;FindIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;FindIndex;(System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;FindIndex;(System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[1].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;FindIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;FindIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;FindIndex;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;FindIndex;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;FindLast;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Generic;List;FindLast;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Generic;List;FindLast;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[2].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[1].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;FindLastIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;FindLastIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;FindLastIndex;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;FindLastIndex;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;ForEach;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Generic;List;ForEach;(System.Action);Argument[this].Element;Argument[0].Parameter[0];value;manual | -| System.Collections.Generic;List;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Collections.Generic;List;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.List`1+Enumerator.Current];value;manual | -| System.Collections.Generic;List;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;List;GetRange;(System.Int32,System.Int32);Argument[this].Element;ReturnValue.Element;value;manual | | System.Collections.Generic;List;Insert;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Collections.Generic;List;Insert;(System.Int32,T);Argument[1];Argument[this].Element;value;manual | | System.Collections.Generic;List;InsertRange;(System.Int32,System.Collections.Generic.IEnumerable);Argument[1].Element;Argument[this].Element;value;manual | | System.Collections.Generic;List;List;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;value;dfc-generated | | System.Collections.Generic;List;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | -| System.Collections.Generic;List;RemoveAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;RemoveAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;RemoveAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;RemoveAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Generic;List;Slice;(System.Int32,System.Int32);Argument[this].Element;ReturnValue.Element;value;dfc-generated | -| System.Collections.Generic;List;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;Sort;(System.Comparison);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;Sort;(System.Comparison);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Generic;List;Sort;(System.Comparison);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[1];value;dfc-generated | -| System.Collections.Generic;List;Sort;(System.Comparison);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[1];value;hq-generated | -| System.Collections.Generic;List;TrueForAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;TrueForAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;TrueForAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;TrueForAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Generic;List;get_Item;(System.Int32);Argument[this].Element;ReturnValue;value;manual | | System.Collections.Generic;List;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Generic;List;set_Item;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Collections.Generic;List;set_Item;(System.Int32,T);Argument[1];Argument[this].Element;value;manual | -| System.Collections.Generic;OrderedDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;OrderedDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Collections.Generic;OrderedDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;OrderedDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Generic;OrderedDictionary+Enumerator;get_Entry;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;OrderedDictionary+Enumerator;get_Key;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue;value;df-generated | | System.Collections.Generic;OrderedDictionary+Enumerator;get_Key;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue;value;dfc-generated | -| System.Collections.Generic;OrderedDictionary+Enumerator;get_Key;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;OrderedDictionary+Enumerator;get_Key;();Argument[this];ReturnValue;taint;dfc-generated | -| System.Collections.Generic;OrderedDictionary+Enumerator;get_Value;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;df-generated | | System.Collections.Generic;OrderedDictionary+Enumerator;get_Value;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;dfc-generated | -| System.Collections.Generic;OrderedDictionary+Enumerator;get_Value;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;OrderedDictionary+Enumerator;get_Value;();Argument[this];ReturnValue;taint;dfc-generated | -| System.Collections.Generic;OrderedDictionary+KeyCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+KeyCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;OrderedDictionary+KeyCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+KeyCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Collections.Generic;OrderedDictionary+KeyCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;OrderedDictionary+KeyCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Generic;OrderedDictionary+KeyCollection;Add;(System.Object);Argument[0];Argument[this].Element;value;manual | | System.Collections.Generic;OrderedDictionary+KeyCollection;Add;(TKey);Argument[0];Argument[this].Element;value;manual | | System.Collections.Generic;OrderedDictionary+KeyCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | @@ -7269,10 +6580,7 @@ summary | System.Collections.Generic;OrderedDictionary+KeyCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Generic;OrderedDictionary+KeyCollection;set_Item;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Collections.Generic;OrderedDictionary+KeyCollection;set_Item;(System.Int32,TKey);Argument[1];Argument[this].Element;value;manual | -| System.Collections.Generic;OrderedDictionary+ValueCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+ValueCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;OrderedDictionary+ValueCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+ValueCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Collections.Generic;OrderedDictionary+ValueCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;OrderedDictionary+ValueCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Generic;OrderedDictionary+ValueCollection;Add;(System.Object);Argument[0];Argument[this].Element;value;manual | | System.Collections.Generic;OrderedDictionary+ValueCollection;Add;(TValue);Argument[0];Argument[this].Element;value;manual | | System.Collections.Generic;OrderedDictionary+ValueCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | @@ -7352,68 +6660,43 @@ summary | System.Collections.Generic;PriorityQueue;TryPeek;(TElement,TPriority);Argument[this];Argument[0];taint;df-generated | | System.Collections.Generic;PriorityQueue;TryPeek;(TElement,TPriority);Argument[this];Argument[1];taint;df-generated | | System.Collections.Generic;PriorityQueue;get_Comparer;();Argument[this].SyntheticField[System.Collections.Generic.PriorityQueue`2._comparer];ReturnValue;value;dfc-generated | -| System.Collections.Generic;Queue+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.Queue`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;Queue+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.Queue`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Generic;Queue+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;Queue+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Generic;Queue;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Generic;Queue;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;Queue;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;Queue;Dequeue;();Argument[this].SyntheticField[System.Collections.Generic.Queue`1._array].Element;ReturnValue;value;dfc-generated | | System.Collections.Generic;Queue;Enqueue;(T);Argument[0];Argument[this].SyntheticField[System.Collections.Generic.Queue`1._array].Element;value;dfc-generated | -| System.Collections.Generic;Queue;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Collections.Generic;Queue;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.Queue`1+Enumerator.Current];value;manual | -| System.Collections.Generic;Queue;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;Queue;Peek;();Argument[this].Element;ReturnValue;value;manual | | System.Collections.Generic;Queue;Queue;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].SyntheticField[System.Collections.Generic.Queue`1._array].Element;value;dfc-generated | | System.Collections.Generic;Queue;TryDequeue;(T);Argument[this].SyntheticField[System.Collections.Generic.Queue`1._array].Element;Argument[0];value;dfc-generated | | System.Collections.Generic;Queue;TryPeek;(T);Argument[this].SyntheticField[System.Collections.Generic.Queue`1._array].Element;Argument[0];value;dfc-generated | | System.Collections.Generic;Queue;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Generic;ReferenceEqualityComparer;GetHashCode;(System.Object);Argument[0];Argument[this];taint;df-generated | -| System.Collections.Generic;SortedDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;SortedDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Generic;SortedDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;SortedDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Generic;SortedDictionary+Enumerator;get_Entry;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;SortedDictionary+Enumerator;get_Key;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue;value;df-generated | | System.Collections.Generic;SortedDictionary+Enumerator;get_Key;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue;value;dfc-generated | -| System.Collections.Generic;SortedDictionary+Enumerator;get_Key;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;SortedDictionary+Enumerator;get_Key;();Argument[this];ReturnValue;taint;dfc-generated | -| System.Collections.Generic;SortedDictionary+Enumerator;get_Value;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;df-generated | | System.Collections.Generic;SortedDictionary+Enumerator;get_Value;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;dfc-generated | -| System.Collections.Generic;SortedDictionary+Enumerator;get_Value;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;SortedDictionary+Enumerator;get_Value;();Argument[this];ReturnValue;taint;dfc-generated | -| System.Collections.Generic;SortedDictionary+KeyCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+KeyCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;SortedDictionary+KeyCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+KeyCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Collections.Generic;SortedDictionary+KeyCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;SortedDictionary+KeyCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Generic;SortedDictionary+KeyCollection;Add;(TKey);Argument[0];Argument[this].Element;value;manual | | System.Collections.Generic;SortedDictionary+KeyCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Generic;SortedDictionary+KeyCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;SortedDictionary+KeyCollection;CopyTo;(TKey[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Collections.Generic;SortedDictionary+KeyCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Collections.Generic;SortedDictionary+KeyCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.SortedDictionary`2+KeyCollection+Enumerator.Current];value;manual | -| System.Collections.Generic;SortedDictionary+KeyCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;SortedDictionary+KeyCollection;KeyCollection;(System.Collections.Generic.SortedDictionary);Argument[0];Argument[this].SyntheticField[System.Collections.Generic.SortedDictionary`2+KeyCollection._dictionary];value;dfc-generated | | System.Collections.Generic;SortedDictionary+KeyCollection;get_SyncRoot;();Argument[this].SyntheticField[System.Collections.Generic.SortedDictionary`2+KeyCollection._dictionary].Property[System.Collections.ICollection.SyncRoot];ReturnValue;value;dfc-generated | -| System.Collections.Generic;SortedDictionary+KeyCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Generic;SortedDictionary+ValueCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+ValueCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;SortedDictionary+ValueCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+ValueCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Collections.Generic;SortedDictionary+ValueCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;SortedDictionary+ValueCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Generic;SortedDictionary+ValueCollection;Add;(TValue);Argument[0];Argument[this].Element;value;manual | | System.Collections.Generic;SortedDictionary+ValueCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Generic;SortedDictionary+ValueCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;SortedDictionary+ValueCollection;CopyTo;(TValue[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Collections.Generic;SortedDictionary+ValueCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Collections.Generic;SortedDictionary+ValueCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.SortedDictionary`2+ValueCollection+Enumerator.Current];value;manual | -| System.Collections.Generic;SortedDictionary+ValueCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;SortedDictionary+ValueCollection;ValueCollection;(System.Collections.Generic.SortedDictionary);Argument[0];Argument[this].SyntheticField[System.Collections.Generic.SortedDictionary`2+ValueCollection._dictionary];value;dfc-generated | | System.Collections.Generic;SortedDictionary+ValueCollection;get_SyncRoot;();Argument[this].SyntheticField[System.Collections.Generic.SortedDictionary`2+ValueCollection._dictionary].Property[System.Collections.ICollection.SyncRoot];ReturnValue;value;dfc-generated | -| System.Collections.Generic;SortedDictionary+ValueCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Generic;SortedDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Generic;SortedDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Collections.Generic;SortedDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Collections.Generic;SortedDictionary;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Generic;SortedDictionary;Add;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Generic;SortedDictionary;Add;(TKey,TValue);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | @@ -7422,9 +6705,7 @@ summary | System.Collections.Generic;SortedDictionary;Contains;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Collections.Generic;SortedDictionary;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;SortedDictionary;CopyTo;(System.Collections.Generic.KeyValuePair[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Collections.Generic;SortedDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Collections.Generic;SortedDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current];value;manual | -| System.Collections.Generic;SortedDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;SortedDictionary;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Collections.Generic;SortedDictionary;SortedDictionary;(System.Collections.Generic.IDictionary);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Generic;SortedDictionary;SortedDictionary;(System.Collections.Generic.IDictionary);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | @@ -7441,7 +6722,6 @@ summary | System.Collections.Generic;SortedDictionary;set_Item;(TKey,TValue);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Generic;SortedList;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Generic;SortedList;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Collections.Generic;SortedList;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Collections.Generic;SortedList;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Generic;SortedList;Add;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Generic;SortedList;Add;(TKey,TValue);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | @@ -7451,7 +6731,6 @@ summary | System.Collections.Generic;SortedList;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;SortedList;CopyTo;(System.Collections.Generic.KeyValuePair[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;SortedList;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Generic;SortedList;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;SortedList;GetKeyAtIndex;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Collections.Generic;SortedList;GetValueAtIndex;(System.Int32);Argument[this].SyntheticField[System.Collections.Generic.SortedList`2.values].Element;ReturnValue;value;dfc-generated | | System.Collections.Generic;SortedList;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | @@ -7481,11 +6760,8 @@ summary | System.Collections.Generic;SortedSet;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;SortedSet;CopyTo;(T[],System.Int32,System.Int32);Argument[this].SyntheticField[System.Collections.Generic.SortedSet`1.root].SyntheticField[System.Collections.Generic.SortedSet`1+Node.Item];Argument[0].Element;value;dfc-generated | | System.Collections.Generic;SortedSet;ExceptWith;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this];taint;df-generated | -| System.Collections.Generic;SortedSet;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Collections.Generic;SortedSet;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.SortedSet`1+Enumerator.Current];value;manual | -| System.Collections.Generic;SortedSet;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;SortedSet;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Collections.Generic.SortedSet`1.comparer];Argument[0];taint;dfc-generated | -| System.Collections.Generic;SortedSet;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Collections.Generic;SortedSet;GetViewBetween;(T,T);Argument[0];Argument[this];taint;df-generated | | System.Collections.Generic;SortedSet;GetViewBetween;(T,T);Argument[0];ReturnValue;taint;df-generated | | System.Collections.Generic;SortedSet;GetViewBetween;(T,T);Argument[1];Argument[this];taint;df-generated | @@ -7517,16 +6793,12 @@ summary | System.Collections.Generic;SortedSet;get_Max;();Argument[this].SyntheticField[System.Collections.Generic.SortedSet`1.root].SyntheticField[System.Collections.Generic.SortedSet`1+Node.Item];ReturnValue;value;dfc-generated | | System.Collections.Generic;SortedSet;get_Min;();Argument[this].SyntheticField[System.Collections.Generic.SortedSet`1.root].SyntheticField[System.Collections.Generic.SortedSet`1+Node.Item];ReturnValue;value;dfc-generated | | System.Collections.Generic;SortedSet;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Generic;Stack+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.Stack`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;Stack+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.Stack`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Generic;Stack+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;Stack+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Generic;Stack;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Generic;Stack;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;Stack;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Collections.Generic;Stack;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Collections.Generic;Stack;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.Stack`1+Enumerator.Current];value;manual | -| System.Collections.Generic;Stack;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Generic;Stack;Peek;();Argument[this].Element;ReturnValue;value;manual | | System.Collections.Generic;Stack;Pop;();Argument[this].Element;ReturnValue;value;manual | | System.Collections.Generic;Stack;Push;(T);Argument[0];Argument[this].SyntheticField[System.Collections.Generic.Stack`1._array].Element;value;dfc-generated | @@ -7558,14 +6830,10 @@ summary | System.Collections.Immutable;ImmutableArray;Create;(T,T,T,T);Argument[2];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableArray;Create;(T,T,T,T);Argument[3];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;hq-generated | -| System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Int32,System.Int32,System.Func,TArg);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Int32,System.Int32,System.Func,TArg);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Int32,System.Int32,System.Func,TArg);Argument[4];Argument[3].Parameter[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Int32,System.Int32,System.Func,TArg);Argument[4];Argument[3].Parameter[1];value;hq-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Int32,System.Int32,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray;ToImmutableArray;(System.ReadOnlySpan);Argument[0].Element;ReturnValue.Element;value;manual | @@ -7584,7 +6852,6 @@ summary | System.Collections.Immutable;ImmutableArray+Builder;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Immutable;ImmutableArray+Builder;DrainToImmutable;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1+Builder._elements];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array];value;dfc-generated | | System.Collections.Immutable;ImmutableArray+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableArray+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableArray+Builder;IndexOf;(T,System.Int32,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[2];taint;df-generated | | System.Collections.Immutable;ImmutableArray+Builder;IndexOf;(T,System.Int32,System.Collections.Generic.IEqualityComparer);Argument[this];Argument[2];taint;df-generated | | System.Collections.Immutable;ImmutableArray+Builder;IndexOf;(T,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[3];taint;df-generated | @@ -7600,10 +6867,8 @@ summary | System.Collections.Immutable;ImmutableArray+Builder;MoveToImmutable;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1+Builder._elements];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array];value;dfc-generated | | System.Collections.Immutable;ImmutableArray+Builder;Remove;(T,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[1];taint;df-generated | | System.Collections.Immutable;ImmutableArray+Builder;Remove;(T,System.Collections.Generic.IEqualityComparer);Argument[this];Argument[1];taint;df-generated | -| System.Collections.Immutable;ImmutableArray+Builder;RemoveAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableArray+Builder;RemoveAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray+Builder;RemoveAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1+Builder._elements].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableArray+Builder;RemoveAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1+Builder._elements].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableArray+Builder;RemoveRange;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1];taint;df-generated | | System.Collections.Immutable;ImmutableArray+Builder;RemoveRange;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[this];Argument[1];taint;df-generated | | System.Collections.Immutable;ImmutableArray+Builder;Replace;(T,T);Argument[1];Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1+Builder._elements].Element;value;dfc-generated | @@ -7652,10 +6917,8 @@ summary | System.Collections.Immutable;ImmutableArray;IndexOf;(T,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer);Argument[this];Argument[3];taint;df-generated | | System.Collections.Immutable;ImmutableArray;Insert;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableArray;Insert;(System.Int32,T);Argument[1];Argument[this].Element;value;manual | -| System.Collections.Immutable;ImmutableArray;Insert;(System.Int32,T);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;df-generated | | System.Collections.Immutable;ImmutableArray;Insert;(System.Int32,T);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Insert;(System.Int32,T);Argument[1];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableArray;Insert;(System.Int32,T);Argument[1];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableArray;InsertRange;(System.Int32,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;InsertRange;(System.Int32,System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;InsertRange;(System.Int32,System.Collections.Immutable.ImmutableArray);Argument[1];ReturnValue;value;dfc-generated | @@ -7675,12 +6938,9 @@ summary | System.Collections.Immutable;ImmutableArray;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Collections.Immutable;ImmutableArray;Remove;(T);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Remove;(T,System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;RemoveAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableArray;RemoveAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray;RemoveAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;RemoveAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableArray;RemoveAll;(System.Predicate);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;RemoveAll;(System.Predicate);Argument[this];ReturnValue;value;hq-generated | | System.Collections.Immutable;ImmutableArray;RemoveAt;(System.Int32);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;RemoveRange;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;RemoveRange;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | @@ -7691,24 +6951,16 @@ summary | System.Collections.Immutable;ImmutableArray;RemoveRange;(T[],System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Replace;(T,T);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[2];taint;df-generated | -| System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[2];taint;dfc-generated | -| System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;df-generated | | System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[this];Argument[2];taint;df-generated | -| System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[this];Argument[2];taint;dfc-generated | -| System.Collections.Immutable;ImmutableArray;SetItem;(System.Int32,T);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;df-generated | | System.Collections.Immutable;ImmutableArray;SetItem;(System.Int32,T);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;SetItem;(System.Int32,T);Argument[1];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableArray;SetItem;(System.Int32,T);Argument[1];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableArray;Slice;(System.Int32,System.Int32);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Sort;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Sort;(System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray;Sort;(System.Comparison);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;Sort;(System.Comparison);Argument[this];ReturnValue;value;hq-generated | | System.Collections.Immutable;ImmutableArray;Sort;(System.Int32,System.Int32,System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;ToBuilder;();Argument[this].Element;ReturnValue.Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;get_Item;(System.Int32);Argument[this].Element;ReturnValue;value;manual | @@ -7733,56 +6985,31 @@ summary | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary+Builder;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Immutable;ImmutableDictionary+Builder;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Collections.Immutable;ImmutableDictionary+Builder;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableDictionary+Builder;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Immutable;ImmutableDictionary+Builder;Add;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Immutable;ImmutableDictionary+Builder;Add;(TKey,TValue);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | @@ -7793,8 +7020,6 @@ summary | System.Collections.Immutable;ImmutableDictionary+Builder;ContainsValue;(TValue);Argument[this];Argument[0];taint;df-generated | | System.Collections.Immutable;ImmutableDictionary+Builder;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Immutable;ImmutableDictionary+Builder;CopyTo;(System.Collections.Generic.KeyValuePair[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Collections.Immutable;ImmutableDictionary+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableDictionary+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableDictionary+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableDictionary`2+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableDictionary+Builder;GetValueOrDefault;(TKey,TValue);Argument[1];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary+Builder;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | @@ -7808,13 +7033,10 @@ summary | System.Collections.Immutable;ImmutableDictionary+Builder;set_Item;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Immutable;ImmutableDictionary+Builder;set_Item;(TKey,TValue);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Immutable;ImmutableDictionary+Builder;set_Item;(TKey,TValue);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Collections.Immutable;ImmutableDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableDictionary`2+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableDictionary`2+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Immutable;ImmutableDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Collections.Immutable;ImmutableDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableDictionary;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Immutable;ImmutableDictionary;Add;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Immutable;ImmutableDictionary;Add;(TKey,TValue);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | @@ -7827,8 +7049,6 @@ summary | System.Collections.Immutable;ImmutableDictionary;ContainsValue;(TValue);Argument[this];Argument[0];taint;df-generated | | System.Collections.Immutable;ImmutableDictionary;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Immutable;ImmutableDictionary;CopyTo;(System.Collections.Generic.KeyValuePair[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Collections.Immutable;ImmutableDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableDictionary`2+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableDictionary;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Collections.Immutable;ImmutableDictionary;Remove;(TKey);Argument[this];ReturnValue;value;df-generated | @@ -7838,10 +7058,8 @@ summary | System.Collections.Immutable;ImmutableDictionary;SetItems;(System.Collections.Generic.IEnumerable>);Argument[this];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableDictionary;ToBuilder;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableDictionary;TryGetKey;(TKey,TKey);Argument[0];Argument[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableDictionary`2._comparers].SyntheticField[System.Collections.Immutable.ImmutableDictionary`2+Comparers._keyComparer];value;df-generated | | System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableDictionary`2._comparers].SyntheticField[System.Collections.Immutable.ImmutableDictionary`2+Comparers._keyComparer];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableDictionary`2._comparers].SyntheticField[System.Collections.Immutable.ImmutableDictionary`2+Comparers._keyComparer];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableDictionary`2._comparers].SyntheticField[System.Collections.Immutable.ImmutableDictionary`2+Comparers._valueComparer];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | @@ -7867,79 +7085,49 @@ summary | System.Collections.Immutable;ImmutableHashSet+Builder;Add;(T);Argument[0];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableHashSet+Builder;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Immutable;ImmutableHashSet+Builder;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Collections.Immutable;ImmutableHashSet+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableHashSet+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableHashSet+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableHashSet`1+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableHashSet+Builder;SymmetricExceptWith;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this];taint;df-generated | | System.Collections.Immutable;ImmutableHashSet+Builder;TryGetValue;(T,T);Argument[0];Argument[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableHashSet+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableHashSet`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableHashSet+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableHashSet`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableHashSet+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableHashSet+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableHashSet;Add;(T);Argument[0];Argument[this].Element;value;manual | -| System.Collections.Immutable;ImmutableHashSet;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Immutable;ImmutableHashSet;Clear;();Argument[this].WithoutElement;ReturnValue;value;manual | | System.Collections.Immutable;ImmutableHashSet;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Immutable;ImmutableHashSet;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Immutable;ImmutableHashSet;Except;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableHashSet;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableHashSet;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableHashSet;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableHashSet`1+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableHashSet;Intersect;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableHashSet;Remove;(T);Argument[this];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableHashSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableHashSet;ToBuilder;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableHashSet;TryGetValue;(T,T);Argument[0];Argument[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableHashSet;Union;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableHashSet;Union;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableHashSet;Union;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableHashSet;Union;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableHashSet;WithComparer;(System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableHashSet;get_KeyComparer;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableHashSet;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[1];Argument[3].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[1];Argument[3].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[1];Argument[3].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[1];Argument[3].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[2];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[2];ReturnValue;value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[3].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[3].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[3];Argument[2].Parameter[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[3];Argument[2].Parameter[1];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue);Argument[2];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;Update;(System.Collections.Immutable.ImmutableArray,System.Func,TArg,System.Collections.Immutable.ImmutableArray>,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;Update;(System.Collections.Immutable.ImmutableArray,System.Func,TArg,System.Collections.Immutable.ImmutableArray>,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;Update;(System.Collections.Immutable.ImmutableArray,System.Func,TArg,System.Collections.Immutable.ImmutableArray>,TArg);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;Update;(System.Collections.Immutable.ImmutableArray,System.Func,TArg,System.Collections.Immutable.ImmutableArray>,TArg);Argument[2];Argument[1].Parameter[1];value;hq-generated | -| System.Collections.Immutable;ImmutableInterlocked;Update;(T,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;Update;(T,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;Update;(T,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;Update;(T,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;Update;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Immutable.ImmutableArray>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;Update;(T,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;Create;(System.ReadOnlySpan);Argument[0];ReturnValue;taint;df-generated | @@ -7973,27 +7161,20 @@ summary | System.Collections.Immutable;ImmutableList+Builder;CopyTo;(T[]);Argument[this];Argument[0].Element;taint;df-generated | | System.Collections.Immutable;ImmutableList+Builder;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Immutable;ImmutableList+Builder;Exists;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList+Builder;Find;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Immutable;ImmutableList+Builder;Find;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Immutable;ImmutableList+Builder;Find;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.Immutable;ImmutableList+Builder;FindAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Immutable;ImmutableList+Builder;FindAll;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Immutable;ImmutableList+Builder;FindAll;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | | System.Collections.Immutable;ImmutableList+Builder;FindIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;FindIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;FindIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList+Builder;FindLast;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Immutable;ImmutableList+Builder;FindLast;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Immutable;ImmutableList+Builder;FindLast;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | | System.Collections.Immutable;ImmutableList+Builder;FindLastIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;FindLastIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;FindLastIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList+Builder;ForEach;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableList+Builder;ForEach;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;ForEach;(System.Action);Argument[this].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableList+Builder;ForEach;(System.Action);Argument[this].Element;Argument[0].Parameter[0];value;hq-generated | -| System.Collections.Immutable;ImmutableList+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableList+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableList+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableList`1+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableList+Builder;GetRange;(System.Int32,System.Int32);Argument[this].Element;ReturnValue.Element;value;manual | | System.Collections.Immutable;ImmutableList+Builder;IndexOf;(T,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[3];taint;df-generated | @@ -8013,10 +7194,8 @@ summary | System.Collections.Immutable;ImmutableList+Builder;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableList+Builder;set_Item;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableList+Builder;set_Item;(System.Int32,T);Argument[1];Argument[this].Element;value;manual | -| System.Collections.Immutable;ImmutableList+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableList`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableList+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableList`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableList+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableList+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableList;Add;(System.Object);Argument[0];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableList;Add;(T);Argument[0];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableList;AddRange;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].Element;value;manual | @@ -8032,27 +7211,20 @@ summary | System.Collections.Immutable;ImmutableList;CopyTo;(T[]);Argument[this];Argument[0].Element;taint;df-generated | | System.Collections.Immutable;ImmutableList;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Immutable;ImmutableList;Exists;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList;Find;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Immutable;ImmutableList;Find;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Immutable;ImmutableList;Find;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.Immutable;ImmutableList;FindAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Immutable;ImmutableList;FindAll;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Immutable;ImmutableList;FindAll;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | | System.Collections.Immutable;ImmutableList;FindIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;FindIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;FindIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList;FindLast;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Immutable;ImmutableList;FindLast;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Immutable;ImmutableList;FindLast;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | | System.Collections.Immutable;ImmutableList;FindLastIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;FindLastIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;FindLastIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList;ForEach;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableList;ForEach;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;ForEach;(System.Action);Argument[this].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableList;ForEach;(System.Action);Argument[this].Element;Argument[0].Parameter[0];value;hq-generated | -| System.Collections.Immutable;ImmutableList;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableList;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableList;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableList`1+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableList;GetRange;(System.Int32,System.Int32);Argument[this].Element;ReturnValue.Element;value;manual | | System.Collections.Immutable;ImmutableList;IndexOf;(T,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[3];taint;df-generated | @@ -8083,10 +7255,8 @@ summary | System.Collections.Immutable;ImmutableList;SetItem;(System.Int32,T);Argument[this];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableList;Sort;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableList;Sort;(System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableList;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableList;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;Sort;(System.Comparison);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableList;Sort;(System.Comparison);Argument[this];ReturnValue;value;hq-generated | | System.Collections.Immutable;ImmutableList;Sort;(System.Int32,System.Int32,System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableList;ToBuilder;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableList;TrueForAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -8105,8 +7275,6 @@ summary | System.Collections.Immutable;ImmutableQueue;Dequeue;(T);Argument[this];Argument[0];taint;df-generated | | System.Collections.Immutable;ImmutableQueue;Dequeue;(T);Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableQueue;Enqueue;(T);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableQueue`1._forwards].SyntheticField[System.Collections.Immutable.ImmutableStack`1._head];value;dfc-generated | -| System.Collections.Immutable;ImmutableQueue;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableQueue;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableQueue;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableQueue`1+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableQueue;Peek;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableQueue`1._forwards].SyntheticField[System.Collections.Immutable.ImmutableStack`1._head];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;Create;(System.Collections.Generic.IComparer);Argument[0];ReturnValue;taint;df-generated | @@ -8128,44 +7296,25 @@ summary | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[2];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary+Builder;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Immutable;ImmutableSortedDictionary+Builder;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Collections.Immutable;ImmutableSortedDictionary+Builder;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableSortedDictionary+Builder;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Immutable;ImmutableSortedDictionary+Builder;Add;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Immutable;ImmutableSortedDictionary+Builder;Add;(TKey,TValue);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | @@ -8175,8 +7324,6 @@ summary | System.Collections.Immutable;ImmutableSortedDictionary+Builder;Contains;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary+Builder;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Immutable;ImmutableSortedDictionary+Builder;CopyTo;(System.Collections.Generic.KeyValuePair[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Collections.Immutable;ImmutableSortedDictionary+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableSortedDictionary+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableSortedDictionary+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableSortedDictionary`2+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableSortedDictionary+Builder;GetValueOrDefault;(TKey,TValue);Argument[1];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary+Builder;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | @@ -8193,7 +7340,6 @@ summary | System.Collections.Immutable;ImmutableSortedDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Immutable;ImmutableSortedDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Collections.Immutable;ImmutableSortedDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableSortedDictionary;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Immutable;ImmutableSortedDictionary;Add;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Immutable;ImmutableSortedDictionary;Add;(TKey,TValue);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | @@ -8207,31 +7353,22 @@ summary | System.Collections.Immutable;ImmutableSortedDictionary;Contains;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Immutable;ImmutableSortedDictionary;CopyTo;(System.Collections.Generic.KeyValuePair[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Collections.Immutable;ImmutableSortedDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableSortedDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableSortedDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableSortedDictionary`2+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableSortedDictionary;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;Remove;(TKey);Argument[this];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;RemoveRange;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;SetItem;(TKey,TValue);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._root].SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2+Node._key];value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;SetItem;(TKey,TValue);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._root].SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2+Node._key];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;SetItem;(TKey,TValue);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;SetItem;(TKey,TValue);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;SetItems;(System.Collections.Generic.IEnumerable>);Argument[0];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;SetItems;(System.Collections.Generic.IEnumerable>);Argument[this];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToBuilder;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;TryGetKey;(TKey,TKey);Argument[0];Argument[1];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;TryGetKey;(TKey,TKey);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._root].SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2+Node._key];Argument[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._keyComparer];value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._keyComparer];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._keyComparer];value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._keyComparer];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._valueComparer];value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._valueComparer];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;get_Item;(System.Object);Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;manual | | System.Collections.Immutable;ImmutableSortedDictionary;get_Item;(TKey);Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;manual | | System.Collections.Immutable;ImmutableSortedDictionary;get_KeyComparer;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._keyComparer];ReturnValue;value;dfc-generated | @@ -8262,8 +7399,6 @@ summary | System.Collections.Immutable;ImmutableSortedSet+Builder;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Immutable;ImmutableSortedSet+Builder;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Immutable;ImmutableSortedSet+Builder;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Collections.Immutable;ImmutableSortedSet+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableSortedSet+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableSortedSet+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableSortedSet`1+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableSortedSet+Builder;IntersectWith;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Builder._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet+Builder;Reverse;();Argument[this].Element;ReturnValue.Element;value;manual | @@ -8274,10 +7409,8 @@ summary | System.Collections.Immutable;ImmutableSortedSet+Builder;get_Max;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Builder._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet+Builder;get_Min;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Builder._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet+Builder;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedSet+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableSortedSet`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedSet+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableSortedSet`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableSortedSet+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;Add;(System.Object);Argument[0];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableSortedSet;Add;(T);Argument[0];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableSortedSet;Clear;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._comparer];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._comparer];value;dfc-generated | @@ -8288,8 +7421,6 @@ summary | System.Collections.Immutable;ImmutableSortedSet;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Immutable;ImmutableSortedSet;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Immutable;ImmutableSortedSet;Except;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedSet;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableSortedSet;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableSortedSet;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableSortedSet`1+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableSortedSet;Insert;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableSortedSet;Insert;(System.Int32,T);Argument[1];Argument[this].Element;value;manual | @@ -8298,21 +7429,16 @@ summary | System.Collections.Immutable;ImmutableSortedSet;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Collections.Immutable;ImmutableSortedSet;Remove;(T);Argument[this];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedSet;Reverse;();Argument[this].Element;ReturnValue.Element;value;manual | -| System.Collections.Immutable;ImmutableSortedSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].Element;value;df-generated | | System.Collections.Immutable;ImmutableSortedSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].Element;value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];value;df-generated | | System.Collections.Immutable;ImmutableSortedSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;ToBuilder;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableSortedSet;TryGetValue;(T,T);Argument[0];Argument[1];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;TryGetValue;(T,T);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];Argument[1];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;Union;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedSet;Union;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedSet;WithComparer;(System.Collections.Generic.IComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._comparer];value;df-generated | | System.Collections.Immutable;ImmutableSortedSet;WithComparer;(System.Collections.Generic.IComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._comparer];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;WithComparer;(System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedSet;WithComparer;(System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;get_Item;(System.Int32);Argument[this].Element;ReturnValue;value;manual | | System.Collections.Immutable;ImmutableSortedSet;get_KeyComparer;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._comparer];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;get_Max;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];ReturnValue;value;dfc-generated | @@ -8327,8 +7453,6 @@ summary | System.Collections.Immutable;ImmutableStack;Pop;(System.Collections.Immutable.IImmutableStack,T);Argument[0].Element;ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableStack+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableStack;Clear;();Argument[this].WithoutElement;ReturnValue;value;manual | -| System.Collections.Immutable;ImmutableStack;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Collections.Immutable;ImmutableStack;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Immutable;ImmutableStack;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableStack`1+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableStack;Peek;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableStack`1._head];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableStack;Pop;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableStack`1._tail];ReturnValue;value;dfc-generated | @@ -8354,23 +7478,17 @@ summary | System.Collections.ObjectModel;Collection;get_Items;();Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items];ReturnValue;value;dfc-generated | | System.Collections.ObjectModel;Collection;get_SyncRoot;();Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Property[System.Collections.ICollection.SyncRoot];ReturnValue;value;dfc-generated | | System.Collections.ObjectModel;Collection;get_SyncRoot;();Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items];ReturnValue;value;dfc-generated | -| System.Collections.ObjectModel;Collection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.ObjectModel;Collection;set_Item;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Collections.ObjectModel;Collection;set_Item;(System.Int32,T);Argument[1];Argument[this].Element;value;manual | | System.Collections.ObjectModel;KeyedCollection;ChangeItemKey;(TItem,TKey);Argument[0];Argument[this];taint;df-generated | | System.Collections.ObjectModel;KeyedCollection;ChangeItemKey;(TItem,TKey);Argument[1];Argument[this];taint;df-generated | -| System.Collections.ObjectModel;KeyedCollection;InsertItem;(System.Int32,TItem);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;df-generated | -| System.Collections.ObjectModel;KeyedCollection;InsertItem;(System.Int32,TItem);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | | System.Collections.ObjectModel;KeyedCollection;InsertItem;(System.Int32,TItem);Argument[1];Argument[this];taint;df-generated | -| System.Collections.ObjectModel;KeyedCollection;InsertItem;(System.Int32,TItem);Argument[1];Argument[this];taint;dfc-generated | | System.Collections.ObjectModel;KeyedCollection;KeyedCollection;(System.Collections.Generic.IEqualityComparer,System.Int32);Argument[0];Argument[this].SyntheticField[System.Collections.ObjectModel.KeyedCollection`2.comparer];value;dfc-generated | | System.Collections.ObjectModel;KeyedCollection;SetItem;(System.Int32,TItem);Argument[1];Argument[this];taint;df-generated | | System.Collections.ObjectModel;KeyedCollection;TryGetValue;(TKey,TItem);Argument[this].Property[System.Collections.ObjectModel.Collection`1.Items].Element;Argument[1];value;dfc-generated | | System.Collections.ObjectModel;KeyedCollection;get_Comparer;();Argument[this].SyntheticField[System.Collections.ObjectModel.KeyedCollection`2.comparer];ReturnValue;value;dfc-generated | | System.Collections.ObjectModel;KeyedCollection;get_Dictionary;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.ObjectModel;KeyedCollection;get_Item;(TKey);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.ObjectModel;ObservableCollection;InsertItem;(System.Int32,T);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | -| System.Collections.ObjectModel;ObservableCollection;SetItem;(System.Int32,T);Argument[1];Argument[this];taint;df-generated | | System.Collections.ObjectModel;ObservableCollection;add_CollectionChanged;(System.Collections.Specialized.NotifyCollectionChangedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.ObjectModel;ObservableCollection;add_PropertyChanged;(System.ComponentModel.PropertyChangedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.ObjectModel;ObservableCollection;remove_CollectionChanged;(System.Collections.Specialized.NotifyCollectionChangedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -8392,7 +7510,6 @@ summary | System.Collections.ObjectModel;ReadOnlyCollection;get_Item;(System.Int32);Argument[this].Element;ReturnValue;value;manual | | System.Collections.ObjectModel;ReadOnlyCollection;get_Items;();Argument[this].SyntheticField[System.Collections.ObjectModel.ReadOnlyCollection`1.list];ReturnValue;value;dfc-generated | | System.Collections.ObjectModel;ReadOnlyCollection;get_SyncRoot;();Argument[this].SyntheticField[System.Collections.ObjectModel.ReadOnlyCollection`1.list].Property[System.Collections.ICollection.SyncRoot];ReturnValue;value;dfc-generated | -| System.Collections.ObjectModel;ReadOnlyCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.ObjectModel;ReadOnlyCollection;set_Item;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Collections.ObjectModel;ReadOnlyCollection;set_Item;(System.Int32,T);Argument[1];Argument[this].Element;value;manual | | System.Collections.ObjectModel;ReadOnlyDictionary+KeyCollection;Add;(TKey);Argument[0];Argument[this].Element;value;manual | @@ -8411,7 +7528,6 @@ summary | System.Collections.ObjectModel;ReadOnlyDictionary+ValueCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.ObjectModel;ReadOnlyDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.ObjectModel;ReadOnlyDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Collections.ObjectModel;ReadOnlyDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Collections.ObjectModel;ReadOnlyDictionary;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.ObjectModel;ReadOnlyDictionary;Add;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.ObjectModel;ReadOnlyDictionary;Add;(TKey,TValue);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | @@ -8449,7 +7565,6 @@ summary | System.Collections.ObjectModel;ReadOnlySet;ReadOnlySet;(System.Collections.Generic.ISet);Argument[0];Argument[this].SyntheticField[System.Collections.ObjectModel.ReadOnlySet`1._set];value;dfc-generated | | System.Collections.ObjectModel;ReadOnlySet;get_Set;();Argument[this].SyntheticField[System.Collections.ObjectModel.ReadOnlySet`1._set];ReturnValue;value;dfc-generated | | System.Collections.ObjectModel;ReadOnlySet;get_SyncRoot;();Argument[this].SyntheticField[System.Collections.ObjectModel.ReadOnlySet`1._set].Property[System.Collections.ICollection.SyncRoot];ReturnValue;value;dfc-generated | -| System.Collections.ObjectModel;ReadOnlySet;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Specialized;CollectionsUtil;CreateCaseInsensitiveHashtable;(System.Collections.IDictionary);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | | System.Collections.Specialized;CollectionsUtil;CreateCaseInsensitiveHashtable;(System.Collections.IDictionary);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | | System.Collections.Specialized;HybridDictionary;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | @@ -8544,7 +7659,6 @@ summary | System.Collections.Specialized;OrderedDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Specialized;OrderedDictionary;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Specialized;OrderedDictionary;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Collections.Specialized.OrderedDictionary._comparer];Argument[0];taint;dfc-generated | -| System.Collections.Specialized;OrderedDictionary;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Collections.Specialized;OrderedDictionary;OnDeserialization;(System.Object);Argument[this].SyntheticField[System.Collections.Specialized.OrderedDictionary._siInfo];Argument[this].SyntheticField[System.Collections.Specialized.OrderedDictionary._comparer];taint;dfc-generated | | System.Collections.Specialized;OrderedDictionary;OrderedDictionary;(System.Int32,System.Collections.IEqualityComparer);Argument[1];Argument[this].SyntheticField[System.Collections.Specialized.OrderedDictionary._comparer];value;dfc-generated | | System.Collections.Specialized;OrderedDictionary;OrderedDictionary;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.Collections.Specialized.OrderedDictionary._siInfo];value;dfc-generated | @@ -8565,7 +7679,6 @@ summary | System.Collections.Specialized;StringCollection;Contains;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Collections.Specialized;StringCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Specialized;StringCollection;CopyTo;(System.String[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Collections.Specialized;StringCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Collections.Specialized;StringCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Specialized.StringEnumerator.Current];value;manual | | System.Collections.Specialized;StringCollection;Insert;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Collections.Specialized;StringCollection;Insert;(System.Int32,System.String);Argument[1];Argument[this].Element;value;manual | @@ -8635,12 +7748,8 @@ summary | System.Collections;CollectionBase;Insert;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Collections;CollectionBase;OnInsert;(System.Int32,System.Object);Argument[1];Argument[this];taint;df-generated | | System.Collections;CollectionBase;OnSet;(System.Int32,System.Object,System.Object);Argument[2];Argument[this];taint;df-generated | -| System.Collections;CollectionBase;Remove;(System.Object);Argument[0];Argument[this].Property[System.Collections.CollectionBase.InnerList].Element;value;df-generated | | System.Collections;CollectionBase;Remove;(System.Object);Argument[0];Argument[this].Property[System.Collections.CollectionBase.InnerList].Element;value;dfc-generated | -| System.Collections;CollectionBase;Remove;(System.Object);Argument[0];Argument[this].SyntheticField[System.Collections.CollectionBase._list].Element;value;df-generated | | System.Collections;CollectionBase;Remove;(System.Object);Argument[0];Argument[this].SyntheticField[System.Collections.CollectionBase._list].Element;value;dfc-generated | -| System.Collections;CollectionBase;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | -| System.Collections;CollectionBase;Remove;(System.Object);Argument[0];Argument[this];taint;dfc-generated | | System.Collections;CollectionBase;get_InnerList;();Argument[this].SyntheticField[System.Collections.CollectionBase._list];ReturnValue;value;dfc-generated | | System.Collections;CollectionBase;get_Item;(System.Int32);Argument[this].Element;ReturnValue;value;manual | | System.Collections;CollectionBase;get_List;();Argument[this];ReturnValue;value;dfc-generated | @@ -8651,7 +7760,6 @@ summary | System.Collections;Comparer;Comparer;(System.Globalization.CultureInfo);Argument[0].Property[System.Globalization.CultureInfo.CompareInfo];Argument[this].SyntheticField[System.Collections.Comparer._compareInfo];value;dfc-generated | | System.Collections;Comparer;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Collections.Comparer._compareInfo];Argument[0].SyntheticField[System.Runtime.Serialization.SerializationInfo._values].Element;value;dfc-generated | | System.Collections;Comparer;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Collections.Comparer._compareInfo];Argument[0];taint;dfc-generated | -| System.Collections;Comparer;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Collections;DictionaryBase;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections;DictionaryBase;Add;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections;DictionaryBase;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | @@ -8665,7 +7773,6 @@ summary | System.Collections;DictionaryBase;get_Item;(System.Object);Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;manual | | System.Collections;DictionaryBase;get_Keys;();Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue.Element;value;manual | | System.Collections;DictionaryBase;get_SyncRoot;();Argument[this].Property[System.Collections.DictionaryBase.InnerHashtable].Property[System.Collections.Hashtable.SyncRoot];ReturnValue;value;dfc-generated | -| System.Collections;DictionaryBase;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections;DictionaryBase;get_Values;();Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue.Element;value;manual | | System.Collections;DictionaryBase;set_Item;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections;DictionaryBase;set_Item;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | @@ -8793,17 +7900,12 @@ summary | System.ComponentModel.DataAnnotations;AssociationAttribute;get_ThisKeyMembers;();Argument[this].Property[System.ComponentModel.DataAnnotations.AssociationAttribute.ThisKey];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel.DataAnnotations;Base64StringAttribute;IsValid;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel.DataAnnotations;CompareAttribute;CompareAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherProperty];value;dfc-generated | -| System.ComponentModel.DataAnnotations;CompareAttribute;FormatErrorMessage;(System.String);Argument[0];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;CompareAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherPropertyDisplayName];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;CompareAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherProperty];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;CompareAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.ValidationAttribute.ErrorMessageString];ReturnValue;taint;dfc-generated | -| System.ComponentModel.DataAnnotations;CompareAttribute;IsValid;(System.Object,System.ComponentModel.DataAnnotations.ValidationContext);Argument[0];Argument[this];taint;df-generated | -| System.ComponentModel.DataAnnotations;CompareAttribute;IsValid;(System.Object,System.ComponentModel.DataAnnotations.ValidationContext);Argument[0];Argument[this];taint;dfc-generated | -| System.ComponentModel.DataAnnotations;CompareAttribute;IsValid;(System.Object,System.ComponentModel.DataAnnotations.ValidationContext);Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherProperty];Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherPropertyDisplayName];value;df-generated | | System.ComponentModel.DataAnnotations;CompareAttribute;IsValid;(System.Object,System.ComponentModel.DataAnnotations.ValidationContext);Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherProperty];Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherPropertyDisplayName];value;dfc-generated | | System.ComponentModel.DataAnnotations;CreditCardAttribute;IsValid;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel.DataAnnotations;CustomValidationAttribute;CustomValidationAttribute;(System.Type,System.String);Argument[1];Argument[this].Property[System.ComponentModel.DataAnnotations.CustomValidationAttribute.Method];value;dfc-generated | -| System.ComponentModel.DataAnnotations;CustomValidationAttribute;FormatErrorMessage;(System.String);Argument[0];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;CustomValidationAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.ValidationAttribute.ErrorMessageString];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;CustomValidationAttribute;IsValid;(System.Object,System.ComponentModel.DataAnnotations.ValidationContext);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel.DataAnnotations;DataTypeAttribute;GetDataTypeName;();Argument[this].Property[System.ComponentModel.DataAnnotations.DataTypeAttribute.CustomDataType];ReturnValue;value;dfc-generated | @@ -8831,30 +7933,24 @@ summary | System.ComponentModel.DataAnnotations;FilterUIHintAttribute;get_ControlParameters;();Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel.DataAnnotations;FilterUIHintAttribute;get_FilterUIHint;();Argument[this].SyntheticField[System.ComponentModel.DataAnnotations.FilterUIHintAttribute._implementation].SyntheticField[System.ComponentModel.DataAnnotations.UIHintAttribute+UIHintImplementation.UIHint];ReturnValue;value;dfc-generated | | System.ComponentModel.DataAnnotations;FilterUIHintAttribute;get_PresentationLayer;();Argument[this].SyntheticField[System.ComponentModel.DataAnnotations.FilterUIHintAttribute._implementation].SyntheticField[System.ComponentModel.DataAnnotations.UIHintAttribute+UIHintImplementation.PresentationLayer];ReturnValue;value;dfc-generated | -| System.ComponentModel.DataAnnotations;LengthAttribute;FormatErrorMessage;(System.String);Argument[0];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;LengthAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.ValidationAttribute.ErrorMessageString];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;LengthAttribute;IsValid;(System.Object);Argument[0];Argument[this];taint;df-generated | -| System.ComponentModel.DataAnnotations;MaxLengthAttribute;FormatErrorMessage;(System.String);Argument[0];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;MaxLengthAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.ValidationAttribute.ErrorMessageString];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;MaxLengthAttribute;IsValid;(System.Object);Argument[0];Argument[this];taint;df-generated | -| System.ComponentModel.DataAnnotations;MinLengthAttribute;FormatErrorMessage;(System.String);Argument[0];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;MinLengthAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.ValidationAttribute.ErrorMessageString];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;MinLengthAttribute;IsValid;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel.DataAnnotations;PhoneAttribute;IsValid;(System.Object);Argument[0];Argument[this];taint;df-generated | -| System.ComponentModel.DataAnnotations;RangeAttribute;FormatErrorMessage;(System.String);Argument[0];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;RangeAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.RangeAttribute.Maximum];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;RangeAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.RangeAttribute.Minimum];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;RangeAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.ValidationAttribute.ErrorMessageString];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;RangeAttribute;IsValid;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel.DataAnnotations;RangeAttribute;RangeAttribute;(System.Type,System.String,System.String);Argument[1];Argument[this].Property[System.ComponentModel.DataAnnotations.RangeAttribute.Minimum];value;dfc-generated | | System.ComponentModel.DataAnnotations;RangeAttribute;RangeAttribute;(System.Type,System.String,System.String);Argument[2];Argument[this].Property[System.ComponentModel.DataAnnotations.RangeAttribute.Maximum];value;dfc-generated | -| System.ComponentModel.DataAnnotations;RegularExpressionAttribute;FormatErrorMessage;(System.String);Argument[0];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;RegularExpressionAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.RegularExpressionAttribute.Pattern];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;RegularExpressionAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.ValidationAttribute.ErrorMessageString];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;RegularExpressionAttribute;IsValid;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel.DataAnnotations;RegularExpressionAttribute;RegularExpressionAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DataAnnotations.RegularExpressionAttribute.Pattern];value;dfc-generated | | System.ComponentModel.DataAnnotations;RequiredAttribute;IsValid;(System.Object);Argument[0];Argument[this];taint;df-generated | -| System.ComponentModel.DataAnnotations;StringLengthAttribute;FormatErrorMessage;(System.String);Argument[0];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;StringLengthAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.ValidationAttribute.ErrorMessageString];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;StringLengthAttribute;IsValid;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel.DataAnnotations;UIHintAttribute;UIHintAttribute;(System.String,System.String,System.Object[]);Argument[0];Argument[this].SyntheticField[System.ComponentModel.DataAnnotations.UIHintAttribute._implementation].SyntheticField[System.ComponentModel.DataAnnotations.UIHintAttribute+UIHintImplementation.UIHint];value;dfc-generated | @@ -8894,14 +7990,9 @@ summary | System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;DesignerSerializerAttribute;(System.String,System.String);Argument[0];Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerTypeName];value;dfc-generated | | System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;DesignerSerializerAttribute;(System.String,System.String);Argument[1];Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerBaseTypeName];value;dfc-generated | | System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;DesignerSerializerAttribute;(System.String,System.Type);Argument[0];Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerTypeName];value;dfc-generated | -| System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerBaseTypeName];Argument[this].SyntheticField[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute._typeId];taint;df-generated | | System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerBaseTypeName];Argument[this].SyntheticField[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute._typeId];taint;dfc-generated | -| System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerBaseTypeName];ReturnValue;taint;df-generated | | System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerBaseTypeName];ReturnValue;taint;dfc-generated | -| System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute._typeId];ReturnValue;value;df-generated | | System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute._typeId];ReturnValue;value;dfc-generated | -| System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this];ReturnValue;taint;df-generated | -| System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this];ReturnValue;taint;dfc-generated | | System.ComponentModel.Design.Serialization;IDesignerSerializationManager;add_ResolveName;(System.ComponentModel.Design.Serialization.ResolveNameEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.ComponentModel.Design.Serialization;IDesignerSerializationManager;add_SerializationComplete;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.ComponentModel.Design.Serialization;IDesignerSerializationManager;remove_ResolveName;(System.ComponentModel.Design.Serialization.ResolveNameEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -9032,12 +8123,9 @@ summary | System.ComponentModel;AmbientValueAttribute;AmbientValueAttribute;(System.String);Argument[0];Argument[this].SyntheticField[System.ComponentModel.AmbientValueAttribute._value];value;dfc-generated | | System.ComponentModel;AmbientValueAttribute;AmbientValueAttribute;(System.Type,System.String);Argument[1];Argument[this].SyntheticField[System.ComponentModel.AmbientValueAttribute._value];value;dfc-generated | | System.ComponentModel;AmbientValueAttribute;get_Value;();Argument[this].SyntheticField[System.ComponentModel.AmbientValueAttribute._value];ReturnValue;value;dfc-generated | -| System.ComponentModel;ArrayConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;ArrayConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;ArrayConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;ArrayConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;ArrayConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;ArrayConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;ArrayConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.ComponentModel;AsyncCompletedEventArgs;AsyncCompletedEventArgs;(System.Exception,System.Boolean,System.Object);Argument[0];Argument[this].Property[System.ComponentModel.AsyncCompletedEventArgs.Error];value;dfc-generated | | System.ComponentModel;AsyncCompletedEventArgs;AsyncCompletedEventArgs;(System.Exception,System.Boolean,System.Object);Argument[2];Argument[this].Property[System.ComponentModel.AsyncCompletedEventArgs.UserState];value;dfc-generated | @@ -9067,19 +8155,14 @@ summary | System.ComponentModel;BaseNumberConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;BaseNumberConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;BaseNumberConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;BaseNumberConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;BaseNumberConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;BaseNumberConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;BaseNumberConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;BaseNumberConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;BaseNumberConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;BindingList;AddIndex;(System.ComponentModel.PropertyDescriptor);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel;BindingList;ApplySort;(System.ComponentModel.PropertyDescriptor,System.ComponentModel.ListSortDirection);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel;BindingList;Find;(System.ComponentModel.PropertyDescriptor,System.Object);Argument[this].Element;ReturnValue;value;manual | -| System.ComponentModel;BindingList;InsertItem;(System.Int32,T);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | | System.ComponentModel;BindingList;OnAddingNew;(System.ComponentModel.AddingNewEventArgs);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel;BindingList;OnListChanged;(System.ComponentModel.ListChangedEventArgs);Argument[0];Argument[this];taint;df-generated | -| System.ComponentModel;BindingList;SetItem;(System.Int32,T);Argument[1];Argument[this];taint;df-generated | | System.ComponentModel;BindingList;add_AddingNew;(System.ComponentModel.AddingNewEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.ComponentModel;BindingList;add_ListChanged;(System.ComponentModel.ListChangedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.ComponentModel;BindingList;get_SortProperty;();Argument[this].Property[System.ComponentModel.BindingList`1.SortPropertyCore];ReturnValue;value;dfc-generated | @@ -9095,19 +8178,13 @@ summary | System.ComponentModel;CharConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;CharConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;CharConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;CharConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;CharConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;CharConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;CharConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;CharConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;CharConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;CollectionChangeEventHandler;BeginInvoke;(System.Object,System.ComponentModel.CollectionChangeEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.ComponentModel;CollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;CollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;CollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;CollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;CollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;CollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;CollectionConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.ComponentModel;ComplexBindingPropertiesAttribute;ComplexBindingPropertiesAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.ComplexBindingPropertiesAttribute.DataSource];value;dfc-generated | | System.ComponentModel;ComplexBindingPropertiesAttribute;ComplexBindingPropertiesAttribute;(System.String,System.String);Argument[0];Argument[this].Property[System.ComponentModel.ComplexBindingPropertiesAttribute.DataSource];value;dfc-generated | @@ -9136,12 +8213,9 @@ summary | System.ComponentModel;CultureInfoConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;CultureInfoConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;CultureInfoConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;CultureInfoConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;CultureInfoConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;CultureInfoConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;CultureInfoConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;CultureInfoConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;CultureInfoConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;CultureInfoConverter;GetCultureName;(System.Globalization.CultureInfo);Argument[0].Property[System.Globalization.CultureInfo.Name];ReturnValue;value;dfc-generated | | System.ComponentModel;CultureInfoConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;CustomTypeDescriptor;CustomTypeDescriptor;(System.ComponentModel.ICustomTypeDescriptor);Argument[0];Argument[this].SyntheticField[System.ComponentModel.CustomTypeDescriptor._parent];value;dfc-generated | @@ -9153,36 +8227,24 @@ summary | System.ComponentModel;DateOnlyConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;DateOnlyConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DateOnlyConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;DateOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;DateOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;DateOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;DateOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DateOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;DateOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;DateTimeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;DateTimeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DateTimeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;DateTimeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;DateTimeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;DateTimeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;DateTimeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DateTimeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;DateTimeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;DateTimeOffsetConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;DateTimeOffsetConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DateTimeOffsetConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;DateTimeOffsetConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;DateTimeOffsetConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;DateTimeOffsetConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;DateTimeOffsetConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DateTimeOffsetConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;DateTimeOffsetConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;DecimalConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;DecimalConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;DecimalConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;DecimalConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DecimalConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;DecimalConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;DefaultBindingPropertyAttribute;DefaultBindingPropertyAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DefaultBindingPropertyAttribute.Name];value;dfc-generated | | System.ComponentModel;DefaultEventAttribute;DefaultEventAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DefaultEventAttribute.Name];value;dfc-generated | | System.ComponentModel;DefaultPropertyAttribute;DefaultPropertyAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DefaultPropertyAttribute.Name];value;dfc-generated | @@ -9197,19 +8259,11 @@ summary | System.ComponentModel;DesignerAttribute;DesignerAttribute;(System.String,System.String);Argument[0];Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerTypeName];value;dfc-generated | | System.ComponentModel;DesignerAttribute;DesignerAttribute;(System.String,System.String);Argument[1];Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerBaseTypeName];value;dfc-generated | | System.ComponentModel;DesignerAttribute;DesignerAttribute;(System.String,System.Type);Argument[0];Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerTypeName];value;dfc-generated | -| System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerBaseTypeName];Argument[this].SyntheticField[System.ComponentModel.DesignerAttribute._typeId];taint;df-generated | | System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerBaseTypeName];Argument[this].SyntheticField[System.ComponentModel.DesignerAttribute._typeId];taint;dfc-generated | -| System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerBaseTypeName];ReturnValue;taint;df-generated | | System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerBaseTypeName];ReturnValue;taint;dfc-generated | -| System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.DesignerAttribute._typeId];ReturnValue;value;df-generated | | System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.DesignerAttribute._typeId];ReturnValue;value;dfc-generated | -| System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this];ReturnValue;taint;df-generated | -| System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this];ReturnValue;taint;dfc-generated | | System.ComponentModel;DesignerCategoryAttribute;DesignerCategoryAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DesignerCategoryAttribute.Category];value;dfc-generated | -| System.ComponentModel;DesignerCategoryAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.DesignerCategoryAttribute.Category];ReturnValue;taint;df-generated | | System.ComponentModel;DesignerCategoryAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.DesignerCategoryAttribute.Category];ReturnValue;taint;dfc-generated | -| System.ComponentModel;DesignerCategoryAttribute;get_TypeId;();Argument[this];ReturnValue;taint;df-generated | -| System.ComponentModel;DesignerCategoryAttribute;get_TypeId;();Argument[this];ReturnValue;taint;dfc-generated | | System.ComponentModel;DisplayNameAttribute;DisplayNameAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DisplayNameAttribute.DisplayNameValue];value;dfc-generated | | System.ComponentModel;DisplayNameAttribute;get_DisplayName;();Argument[this].Property[System.ComponentModel.DisplayNameAttribute.DisplayNameValue];ReturnValue;value;dfc-generated | | System.ComponentModel;DoWorkEventArgs;DoWorkEventArgs;(System.Object);Argument[0];Argument[this].Property[System.ComponentModel.DoWorkEventArgs.Argument];value;dfc-generated | @@ -9217,27 +8271,16 @@ summary | System.ComponentModel;EditorAttribute;EditorAttribute;(System.String,System.String);Argument[0];Argument[this].Property[System.ComponentModel.EditorAttribute.EditorTypeName];value;dfc-generated | | System.ComponentModel;EditorAttribute;EditorAttribute;(System.String,System.String);Argument[1];Argument[this].Property[System.ComponentModel.EditorAttribute.EditorBaseTypeName];value;dfc-generated | | System.ComponentModel;EditorAttribute;EditorAttribute;(System.String,System.Type);Argument[0];Argument[this].Property[System.ComponentModel.EditorAttribute.EditorTypeName];value;dfc-generated | -| System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.EditorAttribute.EditorBaseTypeName];Argument[this].SyntheticField[System.ComponentModel.EditorAttribute._typeId];taint;df-generated | | System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.EditorAttribute.EditorBaseTypeName];Argument[this].SyntheticField[System.ComponentModel.EditorAttribute._typeId];taint;dfc-generated | -| System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.EditorAttribute.EditorBaseTypeName];ReturnValue;taint;df-generated | | System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.EditorAttribute.EditorBaseTypeName];ReturnValue;taint;dfc-generated | -| System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.EditorAttribute._typeId];ReturnValue;value;df-generated | | System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.EditorAttribute._typeId];ReturnValue;value;dfc-generated | -| System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this];ReturnValue;taint;df-generated | -| System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this];ReturnValue;taint;dfc-generated | | System.ComponentModel;EnumConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;EnumConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;EnumConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;EnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;EnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;EnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;EnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;EnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;EnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;EnumConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this].Property[System.ComponentModel.EnumConverter.Values];ReturnValue;value;df-generated | | System.ComponentModel;EnumConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this].Property[System.ComponentModel.EnumConverter.Values];ReturnValue;value;dfc-generated | -| System.ComponentModel;EnumConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | -| System.ComponentModel;EnumConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;dfc-generated | | System.ComponentModel;EventDescriptorCollection;Add;(System.ComponentModel.EventDescriptor);Argument[0];Argument[this].Element;value;manual | | System.ComponentModel;EventDescriptorCollection;Add;(System.Object);Argument[0];Argument[this].Element;value;manual | | System.ComponentModel;EventDescriptorCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | @@ -9269,12 +8312,9 @@ summary | System.ComponentModel;GuidConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;GuidConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;GuidConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;GuidConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;GuidConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;GuidConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;GuidConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;GuidConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;GuidConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;HandledEventHandler;BeginInvoke;(System.Object,System.ComponentModel.HandledEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.ComponentModel;IBindingList;AddIndex;(System.ComponentModel.PropertyDescriptor);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel;IBindingList;ApplySort;(System.ComponentModel.PropertyDescriptor,System.ComponentModel.ListSortDirection);Argument[0];Argument[this];taint;df-generated | @@ -9317,16 +8357,12 @@ summary | System.ComponentModel;LicenseContext;GetService;(System.Type);Argument[this];ReturnValue;value;dfc-generated | | System.ComponentModel;LicenseContext;SetSavedLicenseKey;(System.Type,System.String);Argument[1];Argument[this];taint;df-generated | | System.ComponentModel;LicenseException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.ComponentModel.LicenseException._instance];Argument[0];taint;dfc-generated | -| System.ComponentModel;LicenseException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.ComponentModel;LicenseException;LicenseException;(System.Type,System.Object,System.String);Argument[1];Argument[this].SyntheticField[System.ComponentModel.LicenseException._instance];value;dfc-generated | | System.ComponentModel;LicenseException;LicenseException;(System.Type,System.Object,System.String,System.Exception);Argument[1];Argument[this].SyntheticField[System.ComponentModel.LicenseException._instance];value;dfc-generated | | System.ComponentModel;LicenseProvider;GetLicense;(System.ComponentModel.LicenseContext,System.Type,System.Object,System.Boolean);Argument[0];ReturnValue;taint;df-generated | | System.ComponentModel;LicenseProvider;GetLicense;(System.ComponentModel.LicenseContext,System.Type,System.Object,System.Boolean);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;LicenseProviderAttribute;LicenseProviderAttribute;(System.String);Argument[0];Argument[this].SyntheticField[System.ComponentModel.LicenseProviderAttribute._licenseProviderName];value;dfc-generated | -| System.ComponentModel;LicenseProviderAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.LicenseProviderAttribute._licenseProviderName];ReturnValue;taint;df-generated | | System.ComponentModel;LicenseProviderAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.LicenseProviderAttribute._licenseProviderName];ReturnValue;taint;dfc-generated | -| System.ComponentModel;LicenseProviderAttribute;get_TypeId;();Argument[this];ReturnValue;taint;df-generated | -| System.ComponentModel;LicenseProviderAttribute;get_TypeId;();Argument[this];ReturnValue;taint;dfc-generated | | System.ComponentModel;ListChangedEventArgs;ListChangedEventArgs;(System.ComponentModel.ListChangedType,System.ComponentModel.PropertyDescriptor);Argument[1];Argument[this].Property[System.ComponentModel.ListChangedEventArgs.PropertyDescriptor];value;dfc-generated | | System.ComponentModel;ListChangedEventHandler;BeginInvoke;(System.Object,System.ComponentModel.ListChangedEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.ComponentModel;ListSortDescription;ListSortDescription;(System.ComponentModel.PropertyDescriptor,System.ComponentModel.ListSortDirection);Argument[0];Argument[this].Property[System.ComponentModel.ListSortDescription.PropertyDescriptor];value;dfc-generated | @@ -9375,30 +8411,16 @@ summary | System.ComponentModel;MemberDescriptor;get_Attributes;();Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;MemberDescriptor;get_DisplayName;();Argument[this].SyntheticField[System.ComponentModel.MemberDescriptor._displayName];ReturnValue;value;dfc-generated | | System.ComponentModel;MemberDescriptor;get_Name;();Argument[this].SyntheticField[System.ComponentModel.MemberDescriptor._name];ReturnValue;value;dfc-generated | -| System.ComponentModel;MultilineStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;MultilineStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;MultilineStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;MultilineStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;MultilineStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;MultilineStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;MultilineStringConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.ComponentModel;NestedContainer;CreateSite;(System.ComponentModel.IComponent,System.String);Argument[1];ReturnValue.SyntheticField[System.ComponentModel.NestedContainer+Site._name];value;dfc-generated | -| System.ComponentModel;NestedContainer;CreateSite;(System.ComponentModel.IComponent,System.String);Argument[this];ReturnValue.SyntheticField[System.ComponentModel.Container+Site.Container];value;dfc-generated | | System.ComponentModel;NestedContainer;CreateSite;(System.ComponentModel.IComponent,System.String);Argument[this];ReturnValue.SyntheticField[System.ComponentModel.NestedContainer+Site.Container];value;dfc-generated | | System.ComponentModel;NestedContainer;GetService;(System.Type);Argument[this];ReturnValue;value;dfc-generated | | System.ComponentModel;NestedContainer;NestedContainer;(System.ComponentModel.IComponent);Argument[0];Argument[this].Property[System.ComponentModel.NestedContainer.Owner];value;dfc-generated | | System.ComponentModel;NullableConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2].Property[System.Uri.OriginalString];ReturnValue;taint;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;NullableConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.ComponentModel;NullableConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;ProgressChangedEventArgs;ProgressChangedEventArgs;(System.Int32,System.Object);Argument[1];Argument[this].SyntheticField[System.ComponentModel.ProgressChangedEventArgs._userState];value;dfc-generated | @@ -9423,7 +8445,6 @@ summary | System.ComponentModel;PropertyDescriptorCollection;Add;(System.ComponentModel.PropertyDescriptor);Argument[0];Argument[this].Element;value;manual | | System.ComponentModel;PropertyDescriptorCollection;Add;(System.Object);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.ComponentModel;PropertyDescriptorCollection;Add;(System.Object);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.ComponentModel;PropertyDescriptorCollection;Add;(System.Object);Argument[0];Argument[this].Element;value;manual | | System.ComponentModel;PropertyDescriptorCollection;Add;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.ComponentModel;PropertyDescriptorCollection;Add;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.ComponentModel;PropertyDescriptorCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | @@ -9448,7 +8469,6 @@ summary | System.ComponentModel;PropertyDescriptorCollection;Sort;(System.String[],System.Collections.IComparer);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;PropertyDescriptorCollection;get_Item;(System.Int32);Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;manual | | System.ComponentModel;PropertyDescriptorCollection;get_Item;(System.Int32);Argument[this].Element;ReturnValue;value;manual | -| System.ComponentModel;PropertyDescriptorCollection;get_Item;(System.Object);Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;manual | | System.ComponentModel;PropertyDescriptorCollection;get_Item;(System.Object);Argument[this].Element;ReturnValue;value;manual | | System.ComponentModel;PropertyDescriptorCollection;get_Item;(System.String);Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;manual | | System.ComponentModel;PropertyDescriptorCollection;get_Item;(System.String);Argument[this].Element;ReturnValue;value;manual | @@ -9457,9 +8477,6 @@ summary | System.ComponentModel;PropertyDescriptorCollection;get_Values;();Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue.Element;value;manual | | System.ComponentModel;PropertyDescriptorCollection;set_Item;(System.Int32,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.ComponentModel;PropertyDescriptorCollection;set_Item;(System.Int32,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.ComponentModel;PropertyDescriptorCollection;set_Item;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | -| System.ComponentModel;PropertyDescriptorCollection;set_Item;(System.Object,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | -| System.ComponentModel;PropertyDescriptorCollection;set_Item;(System.Object,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.ComponentModel;PropertyDescriptorCollection;set_Item;(System.Object,System.Object);Argument[1];Argument[this].Element;value;manual | | System.ComponentModel;PropertyTabAttribute;InitializeArrays;(System.String[],System.ComponentModel.PropertyTabScope[]);Argument[0].Element;Argument[this].SyntheticField[System.ComponentModel.PropertyTabAttribute._tabClassNames].Element;value;dfc-generated | | System.ComponentModel;PropertyTabAttribute;InitializeArrays;(System.String[],System.ComponentModel.PropertyTabScope[]);Argument[1].Element;Argument[this].Property[System.ComponentModel.PropertyTabAttribute.TabScopes].Element;value;dfc-generated | @@ -9471,19 +8488,13 @@ summary | System.ComponentModel;ProvidePropertyAttribute;ProvidePropertyAttribute;(System.String,System.String);Argument[0];Argument[this].Property[System.ComponentModel.ProvidePropertyAttribute.PropertyName];value;dfc-generated | | System.ComponentModel;ProvidePropertyAttribute;ProvidePropertyAttribute;(System.String,System.String);Argument[1];Argument[this].Property[System.ComponentModel.ProvidePropertyAttribute.ReceiverTypeName];value;dfc-generated | | System.ComponentModel;ProvidePropertyAttribute;ProvidePropertyAttribute;(System.String,System.Type);Argument[0];Argument[this].Property[System.ComponentModel.ProvidePropertyAttribute.PropertyName];value;dfc-generated | -| System.ComponentModel;ProvidePropertyAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.ProvidePropertyAttribute.PropertyName];ReturnValue;taint;df-generated | | System.ComponentModel;ProvidePropertyAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.ProvidePropertyAttribute.PropertyName];ReturnValue;taint;dfc-generated | -| System.ComponentModel;ProvidePropertyAttribute;get_TypeId;();Argument[this];ReturnValue;taint;df-generated | -| System.ComponentModel;ProvidePropertyAttribute;get_TypeId;();Argument[this];ReturnValue;taint;dfc-generated | | System.ComponentModel;ReferenceConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;ReferenceConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;ReferenceConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;ReferenceConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;ReferenceConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;ReferenceConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;ReferenceConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;ReferenceConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;ReferenceConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;ReferenceConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;RefreshEventArgs;RefreshEventArgs;(System.Object);Argument[0];Argument[this].Property[System.ComponentModel.RefreshEventArgs.ComponentChanged];value;dfc-generated | | System.ComponentModel;RefreshEventHandler;BeginInvoke;(System.ComponentModel.RefreshEventArgs,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -9497,21 +8508,15 @@ summary | System.ComponentModel;TimeOnlyConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;TimeOnlyConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TimeOnlyConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;TimeOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;TimeOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;TimeOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;TimeOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TimeOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;TimeOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;TimeSpanConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;TimeSpanConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TimeSpanConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;TimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;TimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;TimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;TimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;TimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;ToolboxItemAttribute;ToolboxItemAttribute;(System.String);Argument[0];Argument[this].SyntheticField[System.ComponentModel.ToolboxItemAttribute._toolboxItemTypeName];value;dfc-generated | | System.ComponentModel;ToolboxItemAttribute;get_ToolboxItemTypeName;();Argument[this].SyntheticField[System.ComponentModel.ToolboxItemAttribute._toolboxItemTypeName];ReturnValue;value;dfc-generated | | System.ComponentModel;ToolboxItemFilterAttribute;ToString;();Argument[this].Property[System.ComponentModel.ToolboxItemFilterAttribute.FilterString];ReturnValue;taint;dfc-generated | @@ -9533,22 +8538,17 @@ summary | System.ComponentModel;TypeConverter;ConvertFromString;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.String);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;TypeConverter;ConvertFromString;(System.ComponentModel.ITypeDescriptorContext,System.String);Argument[1];ReturnValue;value;dfc-generated | | System.ComponentModel;TypeConverter;ConvertFromString;(System.String);Argument[0];ReturnValue;value;dfc-generated | -| System.ComponentModel;TypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;TypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;TypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;TypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;TypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;TypeConverter;ConvertTo;(System.Object,System.Type);Argument[0];ReturnValue;value;df-generated | | System.ComponentModel;TypeConverter;ConvertTo;(System.Object,System.Type);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;TypeConverter;ConvertToInvariantString;(System.ComponentModel.ITypeDescriptorContext,System.Object);Argument[1];ReturnValue;value;df-generated | | System.ComponentModel;TypeConverter;ConvertToInvariantString;(System.ComponentModel.ITypeDescriptorContext,System.Object);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;TypeConverter;ConvertToInvariantString;(System.Object);Argument[0];ReturnValue;value;df-generated | | System.ComponentModel;TypeConverter;ConvertToInvariantString;(System.Object);Argument[this];ReturnValue;taint;df-generated | -| System.ComponentModel;TypeConverter;ConvertToString;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.ComponentModel;TypeConverter;ConvertToString;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | | System.ComponentModel;TypeConverter;ConvertToString;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;TypeConverter;ConvertToString;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;TypeConverter;ConvertToString;(System.ComponentModel.ITypeDescriptorContext,System.Object);Argument[1];ReturnValue;value;df-generated | | System.ComponentModel;TypeConverter;ConvertToString;(System.ComponentModel.ITypeDescriptorContext,System.Object);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;TypeConverter;ConvertToString;(System.Object);Argument[0];ReturnValue;value;df-generated | @@ -9585,26 +8585,19 @@ summary | System.ComponentModel;TypeListConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;TypeListConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TypeListConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;TypeListConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;TypeListConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;TypeListConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;TypeListConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TypeListConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;TypeListConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;TypeListConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;TypeListConverter;TypeListConverter;(System.Type[]);Argument[0].Element;Argument[this];taint;df-generated | | System.ComponentModel;VersionConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;VersionConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;VersionConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;VersionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;VersionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;VersionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;VersionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;VersionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;VersionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;WarningException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].Property[System.ComponentModel.WarningException.HelpTopic];Argument[0];taint;dfc-generated | | System.ComponentModel;WarningException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].Property[System.ComponentModel.WarningException.HelpUrl];Argument[0];taint;dfc-generated | -| System.ComponentModel;WarningException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.ComponentModel;WarningException;WarningException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].Property[System.ComponentModel.WarningException.HelpTopic];taint;dfc-generated | | System.ComponentModel;WarningException;WarningException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].Property[System.ComponentModel.WarningException.HelpUrl];taint;dfc-generated | | System.ComponentModel;WarningException;WarningException;(System.String,System.String,System.String);Argument[1];Argument[this].Property[System.ComponentModel.WarningException.HelpUrl];value;dfc-generated | @@ -9688,10 +8681,7 @@ summary | System.Configuration;ApplicationSettingsBase;get_Context;();Argument[this].SyntheticField[System.Configuration.SettingsBase._context];ReturnValue;value;dfc-generated | | System.Configuration;ApplicationSettingsBase;get_Item;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Configuration;ApplicationSettingsBase;get_Properties;();Argument[this].SyntheticField[System.Configuration.SettingsBase._properties];ReturnValue;value;dfc-generated | -| System.Configuration;ApplicationSettingsBase;get_PropertyValues;();Argument[this].Property[System.Configuration.SettingsBase.PropertyValues];ReturnValue;value;df-generated | | System.Configuration;ApplicationSettingsBase;get_PropertyValues;();Argument[this].Property[System.Configuration.SettingsBase.PropertyValues];ReturnValue;value;dfc-generated | -| System.Configuration;ApplicationSettingsBase;get_PropertyValues;();Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ApplicationSettingsBase;get_PropertyValues;();Argument[this];ReturnValue;taint;dfc-generated | | System.Configuration;ApplicationSettingsBase;get_Providers;();Argument[this].SyntheticField[System.Configuration.SettingsBase._providers];ReturnValue;value;dfc-generated | | System.Configuration;ApplicationSettingsBase;remove_PropertyChanged;(System.ComponentModel.PropertyChangedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Configuration;ApplicationSettingsBase;remove_SettingChanging;(System.Configuration.SettingChangingEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -9713,60 +8703,21 @@ summary | System.Configuration;CommaDelimitedStringCollectionConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;CommaDelimitedStringCollectionConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;CommaDelimitedStringCollectionConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;CommaDelimitedStringCollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;CommaDelimitedStringCollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;CommaDelimitedStringCollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;CommaDelimitedStringCollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;CommaDelimitedStringCollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;CommaDelimitedStringCollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[0];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[0];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[1];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[1];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[2];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[2];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlAttribute._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlAttribute._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[this];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateCDataSection;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlCDataSection._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateCDataSection;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlCDataSection._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateCDataSection;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateCDataSection;(System.String);Argument[this];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateComment;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlComment._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateComment;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlComment._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateComment;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateComment;(System.String);Argument[this];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[0];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[0];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[1];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[1];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[2];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[2];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlElement._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlElement._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[this];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateSignificantWhitespace;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlSignificantWhitespace._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateSignificantWhitespace;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlSignificantWhitespace._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateSignificantWhitespace;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateSignificantWhitespace;(System.String);Argument[this];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateTextNode;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlText._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateTextNode;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlText._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateTextNode;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateTextNode;(System.String);Argument[this];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateWhitespace;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlWhitespace._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateWhitespace;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlWhitespace._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateWhitespace;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateWhitespace;(System.String);Argument[this];ReturnValue;taint;dfc-generated | | System.Configuration;ConfigXmlDocument;LoadSingleElement;(System.String,System.Xml.XmlTextReader);Argument[0];Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];value;dfc-generated | | System.Configuration;ConfigXmlDocument;LoadSingleElement;(System.String,System.Xml.XmlTextReader);Argument[1];Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._reader];taint;dfc-generated | | System.Configuration;ConfigXmlDocument;LoadSingleElement;(System.String,System.Xml.XmlTextReader);Argument[1];Argument[this];taint;dfc-generated | | System.Configuration;ConfigXmlDocument;LoadSingleElement;(System.String,System.Xml.XmlTextReader);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._reader];Argument[this];taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;get_Filename;();Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue;value;df-generated | | System.Configuration;ConfigXmlDocument;get_Filename;();Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue;value;dfc-generated | -| System.Configuration;ConfigXmlDocument;get_Filename;();Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;get_Filename;();Argument[this];ReturnValue;taint;dfc-generated | | System.Configuration;Configuration;GetSection;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Configuration;Configuration;GetSectionGroup;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Configuration;Configuration;get_AppSettings;();Argument[this];ReturnValue;taint;df-generated | @@ -9825,22 +8776,17 @@ summary | System.Configuration;ConfigurationErrorsException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Configuration;ConfigurationErrorsException;get_Errors;();Argument[this].SyntheticField[System.Configuration.ConfigurationErrorsException._errors];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationErrorsException;get_Filename;();Argument[this].SyntheticField[System.Configuration.ConfigurationErrorsException._firstFilename];ReturnValue;value;dfc-generated | -| System.Configuration;ConfigurationErrorsException;get_Filename;();Argument[this].SyntheticField[System.Configuration.ConfigurationException._filename];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationErrorsException;get_Message;();Argument[this].Property[System.Configuration.ConfigurationErrorsException.Filename];ReturnValue;taint;dfc-generated | | System.Configuration;ConfigurationErrorsException;get_Message;();Argument[this].Property[System.Configuration.ConfigurationException.BareMessage];ReturnValue;value;dfc-generated | -| System.Configuration;ConfigurationErrorsException;get_Message;();Argument[this].Property[System.Configuration.ConfigurationException.Filename];ReturnValue;taint;dfc-generated | | System.Configuration;ConfigurationErrorsException;get_Message;();Argument[this].SyntheticField[System.Configuration.ConfigurationErrorsException._firstFilename];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigurationErrorsException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationException;ConfigurationException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.Configuration.ConfigurationException._filename];taint;dfc-generated | | System.Configuration;ConfigurationException;ConfigurationException;(System.String,System.Exception,System.String,System.Int32);Argument[2];Argument[this].SyntheticField[System.Configuration.ConfigurationException._filename];value;dfc-generated | | System.Configuration;ConfigurationException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Configuration.ConfigurationException._filename];Argument[0];taint;dfc-generated | -| System.Configuration;ConfigurationException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Configuration;ConfigurationException;GetXmlNodeFilename;(System.Xml.XmlNode);Argument[0].Element;ReturnValue;taint;df-generated | | System.Configuration;ConfigurationException;get_BareMessage;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationException;get_Filename;();Argument[this].SyntheticField[System.Configuration.ConfigurationException._filename];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationException;get_Message;();Argument[this].Property[System.Configuration.ConfigurationException.BareMessage];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationException;get_Message;();Argument[this].Property[System.Configuration.ConfigurationException.Filename];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigurationException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationFileMap;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationLocation;OpenConfiguration;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;ConfigurationLocationCollection;get_Item;(System.Int32);Argument[this].Property[System.Collections.ReadOnlyCollectionBase.InnerList].Element;ReturnValue;value;dfc-generated | @@ -9877,7 +8823,6 @@ summary | System.Configuration;ConfigurationPropertyCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Configuration;ConfigurationPropertyCollection;get_Item;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigurationPropertyCollection._items].Element;ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationPropertyCollection;get_SyncRoot;();Argument[this].SyntheticField[System.Configuration.ConfigurationPropertyCollection._items];ReturnValue;value;dfc-generated | -| System.Configuration;ConfigurationPropertyCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationSection;DeserializeSection;(System.Xml.XmlReader);Argument[0];Argument[this];taint;df-generated | | System.Configuration;ConfigurationSection;GetRuntimeObject;();Argument[this];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationSection;SerializeSection;(System.Configuration.ConfigurationElement,System.String,System.Configuration.ConfigurationSaveMode);Argument[this];ReturnValue;taint;df-generated | @@ -9909,10 +8854,7 @@ summary | System.Configuration;ConnectionStringSettingsCollection;BaseAdd;(System.Int32,System.Configuration.ConfigurationElement);Argument[1];Argument[this];taint;df-generated | | System.Configuration;ConnectionStringSettingsCollection;BaseAdd;(System.Int32,System.Configuration.ConfigurationElement);Argument[this];Argument[1];taint;df-generated | | System.Configuration;ConnectionStringSettingsCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | -| System.Configuration;ConnectionStringSettingsCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.ConnectionStringSettings.Name];ReturnValue;value;df-generated | | System.Configuration;ConnectionStringSettingsCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.ConnectionStringSettings.Name];ReturnValue;value;dfc-generated | -| System.Configuration;ConnectionStringSettingsCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0];ReturnValue;taint;df-generated | -| System.Configuration;ConnectionStringSettingsCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0];ReturnValue;taint;dfc-generated | | System.Configuration;ConnectionStringSettingsCollection;Remove;(System.Configuration.ConnectionStringSettings);Argument[0];Argument[this];taint;df-generated | | System.Configuration;ConnectionStringSettingsCollection;Remove;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Configuration;ConnectionStringSettingsCollection;get_Item;(System.Int32);Argument[this];ReturnValue;taint;df-generated | @@ -9937,16 +8879,12 @@ summary | System.Configuration;ExeConfigurationFileMap;Clone;();Argument[this].Property[System.Configuration.ExeConfigurationFileMap.ExeConfigFilename];ReturnValue.Property[System.Configuration.ExeConfigurationFileMap.ExeConfigFilename];value;dfc-generated | | System.Configuration;ExeConfigurationFileMap;Clone;();Argument[this].Property[System.Configuration.ExeConfigurationFileMap.LocalUserConfigFilename];ReturnValue.Property[System.Configuration.ExeConfigurationFileMap.LocalUserConfigFilename];value;dfc-generated | | System.Configuration;ExeConfigurationFileMap;Clone;();Argument[this].Property[System.Configuration.ExeConfigurationFileMap.RoamingUserConfigFilename];ReturnValue.Property[System.Configuration.ExeConfigurationFileMap.RoamingUserConfigFilename];value;dfc-generated | -| System.Configuration;ExeConfigurationFileMap;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Configuration;GenericEnumConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;GenericEnumConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;GenericEnumConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;GenericEnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;GenericEnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;GenericEnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;GenericEnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;GenericEnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;GenericEnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;IApplicationSettingsProvider;GetPreviousVersion;(System.Configuration.SettingsContext,System.Configuration.SettingsProperty);Argument[this];ReturnValue;taint;df-generated | | System.Configuration;IConfigurationSectionHandler;Create;(System.Object,System.Object,System.Xml.XmlNode);Argument[0].Element;ReturnValue.Element;value;dfc-generated | | System.Configuration;IdnElement;get_Properties;();Argument[this];ReturnValue;taint;df-generated | @@ -9958,31 +8896,22 @@ summary | System.Configuration;InfiniteIntConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;InfiniteIntConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;InfiniteIntConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;InfiniteIntConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;InfiniteIntConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;InfiniteIntConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;InfiniteIntConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;InfiniteIntConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;InfiniteIntConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;InfiniteTimeSpanConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;InfiniteTimeSpanConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;InfiniteTimeSpanConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;InfiniteTimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;InfiniteTimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;InfiniteTimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;InfiniteTimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;InfiniteTimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;InfiniteTimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;IntegerValidator;Validate;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Configuration;IntegerValidatorAttribute;get_ValidatorInstance;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;IriParsingElement;get_Properties;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;KeyValueConfigurationCollection;Add;(System.Configuration.KeyValueConfigurationElement);Argument[0];Argument[this];taint;df-generated | | System.Configuration;KeyValueConfigurationCollection;Add;(System.Configuration.KeyValueConfigurationElement);Argument[this];Argument[0];taint;df-generated | | System.Configuration;KeyValueConfigurationCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | -| System.Configuration;KeyValueConfigurationCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.KeyValueConfigurationElement.Key];ReturnValue;value;df-generated | | System.Configuration;KeyValueConfigurationCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.KeyValueConfigurationElement.Key];ReturnValue;value;dfc-generated | -| System.Configuration;KeyValueConfigurationCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0];ReturnValue;taint;df-generated | -| System.Configuration;KeyValueConfigurationCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0];ReturnValue;taint;dfc-generated | | System.Configuration;KeyValueConfigurationCollection;Remove;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Configuration;KeyValueConfigurationCollection;get_AllKeys;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;KeyValueConfigurationCollection;get_Item;(System.String);Argument[this];ReturnValue;taint;df-generated | @@ -9998,10 +8927,7 @@ summary | System.Configuration;NameValueConfigurationCollection;Add;(System.Configuration.NameValueConfigurationElement);Argument[0];Argument[this];taint;df-generated | | System.Configuration;NameValueConfigurationCollection;Add;(System.Configuration.NameValueConfigurationElement);Argument[this];Argument[0];taint;df-generated | | System.Configuration;NameValueConfigurationCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | -| System.Configuration;NameValueConfigurationCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.NameValueConfigurationElement.Name];ReturnValue;value;df-generated | | System.Configuration;NameValueConfigurationCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.NameValueConfigurationElement.Name];ReturnValue;value;dfc-generated | -| System.Configuration;NameValueConfigurationCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0];ReturnValue;taint;df-generated | -| System.Configuration;NameValueConfigurationCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0];ReturnValue;taint;dfc-generated | | System.Configuration;NameValueConfigurationCollection;Remove;(System.Configuration.NameValueConfigurationElement);Argument[0];Argument[this];taint;df-generated | | System.Configuration;NameValueConfigurationCollection;Remove;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Configuration;NameValueConfigurationCollection;get_AllKeys;();Argument[this];ReturnValue;taint;df-generated | @@ -10035,10 +8961,7 @@ summary | System.Configuration;ProviderSettingsCollection;Add;(System.Configuration.ProviderSettings);Argument[0];Argument[this];taint;df-generated | | System.Configuration;ProviderSettingsCollection;Add;(System.Configuration.ProviderSettings);Argument[this];Argument[0];taint;df-generated | | System.Configuration;ProviderSettingsCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | -| System.Configuration;ProviderSettingsCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.ProviderSettings.Name];ReturnValue;value;df-generated | | System.Configuration;ProviderSettingsCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.ProviderSettings.Name];ReturnValue;value;dfc-generated | -| System.Configuration;ProviderSettingsCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0];ReturnValue;taint;df-generated | -| System.Configuration;ProviderSettingsCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0];ReturnValue;taint;dfc-generated | | System.Configuration;ProviderSettingsCollection;Remove;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Configuration;ProviderSettingsCollection;get_Item;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Configuration;ProviderSettingsCollection;get_Item;(System.String);Argument[this];ReturnValue;taint;df-generated | @@ -10051,10 +8974,7 @@ summary | System.Configuration;RegexStringValidatorAttribute;get_ValidatorInstance;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;SchemeSettingElement;get_Name;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;SchemeSettingElement;get_Properties;();Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;SchemeSettingElementCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.SchemeSettingElement.Name];ReturnValue;value;df-generated | | System.Configuration;SchemeSettingElementCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.SchemeSettingElement.Name];ReturnValue;value;dfc-generated | -| System.Configuration;SchemeSettingElementCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0];ReturnValue;taint;df-generated | -| System.Configuration;SchemeSettingElementCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0];ReturnValue;taint;dfc-generated | | System.Configuration;SchemeSettingElementCollection;get_Item;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Configuration;SchemeSettingElementCollection;get_Item;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Configuration;SectionInformation;GetParentSection;();Argument[this];ReturnValue;taint;df-generated | @@ -10077,10 +8997,7 @@ summary | System.Configuration;SettingElementCollection;Add;(System.Configuration.SettingElement);Argument[this];Argument[0];taint;df-generated | | System.Configuration;SettingElementCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Configuration;SettingElementCollection;Get;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;SettingElementCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.SettingElement.Name];ReturnValue;value;df-generated | | System.Configuration;SettingElementCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.SettingElement.Name];ReturnValue;value;dfc-generated | -| System.Configuration;SettingElementCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0];ReturnValue;taint;df-generated | -| System.Configuration;SettingElementCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0];ReturnValue;taint;dfc-generated | | System.Configuration;SettingElementCollection;Remove;(System.Configuration.SettingElement);Argument[0];Argument[this];taint;df-generated | | System.Configuration;SettingValueElement;DeserializeElement;(System.Xml.XmlReader,System.Boolean);Argument[0];Argument[this];taint;df-generated | | System.Configuration;SettingValueElement;Reset;(System.Configuration.ConfigurationElement);Argument[0];Argument[this];taint;df-generated | @@ -10129,7 +9046,6 @@ summary | System.Configuration;SettingsSavingEventHandler;BeginInvoke;(System.Object,System.ComponentModel.CancelEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Configuration;SingleTagSectionHandler;Create;(System.Object,System.Object,System.Xml.XmlNode);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | | System.Configuration;SingleTagSectionHandler;Create;(System.Object,System.Object,System.Xml.XmlNode);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Configuration;SingleTagSectionHandler;Create;(System.Object,System.Object,System.Xml.XmlNode);Argument[0].Element;ReturnValue.Element;value;dfc-generated | | System.Configuration;StringValidator;StringValidator;(System.Int32,System.Int32,System.String);Argument[2];Argument[this];taint;df-generated | | System.Configuration;StringValidator;Validate;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Configuration;StringValidatorAttribute;get_ValidatorInstance;();Argument[this];ReturnValue;taint;df-generated | @@ -10138,39 +9054,27 @@ summary | System.Configuration;TimeSpanMinutesConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;TimeSpanMinutesConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanMinutesConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;TimeSpanMinutesConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;TimeSpanMinutesConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;TimeSpanMinutesConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;TimeSpanMinutesConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanMinutesConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;TimeSpanMinutesConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;TimeSpanSecondsConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;TimeSpanSecondsConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanSecondsConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;TimeSpanSecondsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;TimeSpanSecondsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;TimeSpanSecondsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;TimeSpanSecondsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanSecondsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;TimeSpanSecondsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;TimeSpanValidator;TimeSpanValidator;(System.TimeSpan,System.TimeSpan,System.Boolean,System.Int64);Argument[0];Argument[this];taint;df-generated | | System.Configuration;TimeSpanValidator;TimeSpanValidator;(System.TimeSpan,System.TimeSpan,System.Boolean,System.Int64);Argument[1];Argument[this];taint;df-generated | | System.Configuration;TimeSpanValidator;Validate;(System.Object);Argument[0];Argument[this];taint;df-generated | @@ -10178,12 +9082,9 @@ summary | System.Configuration;TypeNameConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;TypeNameConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TypeNameConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;TypeNameConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;TypeNameConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;TypeNameConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;TypeNameConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TypeNameConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;TypeNameConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;UriSection;get_Idn;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;UriSection;get_IriParsing;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;UriSection;get_Properties;();Argument[this];ReturnValue;taint;df-generated | @@ -10192,12 +9093,9 @@ summary | System.Configuration;WhiteSpaceTrimStringConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;WhiteSpaceTrimStringConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;WhiteSpaceTrimStringConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;WhiteSpaceTrimStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;WhiteSpaceTrimStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;WhiteSpaceTrimStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;WhiteSpaceTrimStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;WhiteSpaceTrimStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;WhiteSpaceTrimStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Data.Common;DBDataPermission;Copy;();Argument[this];ReturnValue;value;dfc-generated | | System.Data.Common;DBDataPermission;Intersect;(System.Security.IPermission);Argument[0];ReturnValue;value;dfc-generated | | System.Data.Common;DBDataPermission;Union;(System.Security.IPermission);Argument[this];ReturnValue;taint;df-generated | @@ -10206,13 +9104,10 @@ summary | System.Data.Common;DataAdapter;FillSchema;(System.Data.DataTable,System.Data.SchemaType,System.Data.IDataReader);Argument[0];ReturnValue;value;dfc-generated | | System.Data.Common;DataAdapter;GetFillParameters;();Argument[this];ReturnValue;taint;df-generated | | System.Data.Common;DataAdapter;add_FillError;(System.Data.FillErrorEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Data.Common;DataAdapter;get_TableMappings;();Argument[this].Property[System.Data.Common.DataAdapter.TableMappings];ReturnValue;value;df-generated | | System.Data.Common;DataAdapter;get_TableMappings;();Argument[this].Property[System.Data.Common.DataAdapter.TableMappings];ReturnValue;value;dfc-generated | | System.Data.Common;DataAdapter;get_TableMappings;();Argument[this];ReturnValue;taint;df-generated | -| System.Data.Common;DataAdapter;get_TableMappings;();Argument[this];ReturnValue;taint;dfc-generated | | System.Data.Common;DataAdapter;remove_FillError;(System.Data.FillErrorEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Data.Common;DataColumnMapping;Clone;();Argument[this].SyntheticField[System.Data.Common.DataColumnMapping._sourceColumnName];ReturnValue.SyntheticField[System.Data.Common.DataColumnMapping._sourceColumnName];value;dfc-generated | -| System.Data.Common;DataColumnMapping;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Data.Common;DataColumnMapping;DataColumnMapping;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Data.Common.DataColumnMapping._sourceColumnName];value;dfc-generated | | System.Data.Common;DataColumnMapping;GetDataColumnBySchemaAction;(System.Data.DataTable,System.Type,System.Data.MissingSchemaAction);Argument[0];ReturnValue;taint;df-generated | | System.Data.Common;DataColumnMapping;GetDataColumnBySchemaAction;(System.String,System.String,System.Data.DataTable,System.Type,System.Data.MissingSchemaAction);Argument[2];ReturnValue;taint;df-generated | @@ -10241,7 +9136,6 @@ summary | System.Data.Common;DataColumnMappingCollection;set_Item;(System.String,System.Data.Common.DataColumnMapping);Argument[1];Argument[this].Element;value;manual | | System.Data.Common;DataColumnMappingCollection;set_Item;(System.String,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Data.Common;DataTableMapping;Clone;();Argument[this].SyntheticField[System.Data.Common.DataTableMapping._sourceTableName];ReturnValue.SyntheticField[System.Data.Common.DataTableMapping._sourceTableName];value;dfc-generated | -| System.Data.Common;DataTableMapping;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Data.Common;DataTableMapping;DataTableMapping;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Data.Common.DataTableMapping._sourceTableName];value;dfc-generated | | System.Data.Common;DataTableMapping;DataTableMapping;(System.String,System.String,System.Data.Common.DataColumnMapping[]);Argument[0];Argument[this].SyntheticField[System.Data.Common.DataTableMapping._sourceTableName];value;dfc-generated | | System.Data.Common;DataTableMapping;DataTableMapping;(System.String,System.String,System.Data.Common.DataColumnMapping[]);Argument[2].Element;Argument[this].Property[System.Data.Common.DataTableMapping.ColumnMappings].Element;value;dfc-generated | @@ -10377,11 +9271,9 @@ summary | System.Data.Common;DbParameterCollection;Add;(System.Object);Argument[0];Argument[this].Element;value;manual | | System.Data.Common;DbParameterCollection;AddRange;(System.Array);Argument[0].Element;Argument[this].Element;value;manual | | System.Data.Common;DbParameterCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | -| System.Data.Common;DbParameterCollection;Contains;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Data.Common;DbParameterCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Data.Common;DbParameterCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Data.Common;DbParameterCollection;Insert;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | -| System.Data.Common;DbParameterCollection;Remove;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Data.Common;DbParameterCollection;SetParameter;(System.Int32,System.Data.Common.DbParameter);Argument[this];Argument[1];taint;df-generated | | System.Data.Common;DbParameterCollection;SetParameter;(System.String,System.Data.Common.DbParameter);Argument[this];Argument[1];taint;df-generated | | System.Data.Common;DbParameterCollection;get_Item;(System.Int32);Argument[this].Element;ReturnValue;value;manual | @@ -11196,8 +10088,6 @@ summary | System.Data;DataSet;GetList;();Argument[this];ReturnValue;taint;df-generated | | System.Data;DataSet;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Data;DataSet;Load;(System.Data.IDataReader,System.Data.LoadOption,System.Data.FillErrorEventHandler,System.Data.DataTable[]);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Data;DataSet;ReadXml;(System.Xml.XmlReader);Argument[0];Argument[this];taint;df-generated | -| System.Data;DataSet;WriteXml;(System.Xml.XmlWriter);Argument[this];Argument[0];taint;df-generated | | System.Data;DataSet;WriteXmlSchema;(System.IO.Stream,System.Converter);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Data;DataSet;WriteXmlSchema;(System.IO.TextWriter,System.Converter);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Data;DataSet;WriteXmlSchema;(System.String,System.Converter);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -11209,7 +10099,6 @@ summary | System.Data;DataSet;get_Tables;();Argument[this];ReturnValue;taint;df-generated | | System.Data;DataSet;remove_Initialized;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Data;DataSet;remove_MergeFailed;(System.Data.MergeFailedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Data;DataSysDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.DescriptionValue];ReturnValue;value;dfc-generated | | System.Data;DataSysDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.Description];Argument[this].Property[System.ComponentModel.DescriptionAttribute.DescriptionValue];value;dfc-generated | | System.Data;DataSysDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.Description];ReturnValue;value;dfc-generated | | System.Data;DataTable;Clone;();Argument[this];ReturnValue;taint;df-generated | @@ -11217,10 +10106,7 @@ summary | System.Data;DataTable;GetChanges;();Argument[this];ReturnValue;taint;df-generated | | System.Data;DataTable;GetChanges;(System.Data.DataRowState);Argument[this];ReturnValue;taint;df-generated | | System.Data;DataTable;GetErrors;();Argument[this];ReturnValue;taint;df-generated | -| System.Data;DataTable;GetList;();Argument[this].Property[System.Data.DataTable.DefaultView];ReturnValue;value;df-generated | | System.Data;DataTable;GetList;();Argument[this].Property[System.Data.DataTable.DefaultView];ReturnValue;value;dfc-generated | -| System.Data;DataTable;GetList;();Argument[this];ReturnValue;taint;df-generated | -| System.Data;DataTable;GetList;();Argument[this];ReturnValue;taint;dfc-generated | | System.Data;DataTable;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Data;DataTable;Load;(System.Data.IDataReader,System.Data.LoadOption,System.Data.FillErrorEventHandler);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Data;DataTable;LoadDataRow;(System.Object[],System.Boolean);Argument[0];Argument[this].Property[System.Data.DataTable.Rows].Element;value;dfc-generated | @@ -11237,12 +10123,10 @@ summary | System.Data;DataTable;OnTableCleared;(System.Data.DataTableClearEventArgs);Argument[0];Argument[this];taint;df-generated | | System.Data;DataTable;OnTableClearing;(System.Data.DataTableClearEventArgs);Argument[0];Argument[this];taint;df-generated | | System.Data;DataTable;OnTableNewRow;(System.Data.DataTableNewRowEventArgs);Argument[0];Argument[this];taint;df-generated | -| System.Data;DataTable;ReadXml;(System.Xml.XmlReader);Argument[0];Argument[this];taint;df-generated | | System.Data;DataTable;Select;();Argument[this];ReturnValue;taint;df-generated | | System.Data;DataTable;Select;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Data;DataTable;Select;(System.String,System.String);Argument[this];ReturnValue;taint;df-generated | | System.Data;DataTable;Select;(System.String,System.String,System.Data.DataViewRowState);Argument[this];ReturnValue;taint;df-generated | -| System.Data;DataTable;WriteXml;(System.Xml.XmlWriter);Argument[this];Argument[0];taint;df-generated | | System.Data;DataTable;add_ColumnChanged;(System.Data.DataColumnChangeEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Data;DataTable;add_ColumnChanging;(System.Data.DataColumnChangeEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Data;DataTable;add_Initialized;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -11321,12 +10205,7 @@ summary | System.Data;DataView;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Data;DataView;GetItemProperties;(System.ComponentModel.PropertyDescriptor[]);Argument[0].Element;ReturnValue;taint;df-generated | | System.Data;DataView;GetItemProperties;(System.ComponentModel.PropertyDescriptor[]);Argument[this];ReturnValue;taint;df-generated | -| System.Data;DataView;GetListName;(System.ComponentModel.PropertyDescriptor[]);Argument[0].Element;ReturnValue;taint;df-generated | -| System.Data;DataView;GetListName;(System.ComponentModel.PropertyDescriptor[]);Argument[0].Element;ReturnValue;taint;dfc-generated | -| System.Data;DataView;GetListName;(System.ComponentModel.PropertyDescriptor[]);Argument[this].SyntheticField[System.Data.DataView._table].Property[System.Data.DataTable.TableName];ReturnValue;value;df-generated | | System.Data;DataView;GetListName;(System.ComponentModel.PropertyDescriptor[]);Argument[this].SyntheticField[System.Data.DataView._table].Property[System.Data.DataTable.TableName];ReturnValue;value;dfc-generated | -| System.Data;DataView;GetListName;(System.ComponentModel.PropertyDescriptor[]);Argument[this];ReturnValue;taint;df-generated | -| System.Data;DataView;GetListName;(System.ComponentModel.PropertyDescriptor[]);Argument[this];ReturnValue;taint;dfc-generated | | System.Data;DataView;IndexListChanged;(System.Object,System.ComponentModel.ListChangedEventArgs);Argument[1];Argument[this];taint;df-generated | | System.Data;DataView;Insert;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Data;DataView;OnListChanged;(System.ComponentModel.ListChangedEventArgs);Argument[0];Argument[this];taint;df-generated | @@ -11384,34 +10263,24 @@ summary | System.Data;EnumerableRowCollectionExtensions;Cast;(System.Data.EnumerableRowCollection);Argument[0].Element;ReturnValue.Element;value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderBy;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderBy;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;OrderBy;(System.Data.EnumerableRowCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderBy;(System.Data.EnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderBy;(System.Data.EnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;OrderBy;(System.Data.EnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderByDescending;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderByDescending;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;OrderByDescending;(System.Data.EnumerableRowCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderByDescending;(System.Data.EnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderByDescending;(System.Data.EnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;OrderByDescending;(System.Data.EnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;Select;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;Select;(System.Data.EnumerableRowCollection,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;Select;(System.Data.EnumerableRowCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenBy;(System.Data.OrderedEnumerableRowCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenBy;(System.Data.OrderedEnumerableRowCollection,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;ThenBy;(System.Data.OrderedEnumerableRowCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenBy;(System.Data.OrderedEnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenBy;(System.Data.OrderedEnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;ThenBy;(System.Data.OrderedEnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenByDescending;(System.Data.OrderedEnumerableRowCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenByDescending;(System.Data.OrderedEnumerableRowCollection,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;ThenByDescending;(System.Data.OrderedEnumerableRowCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenByDescending;(System.Data.OrderedEnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenByDescending;(System.Data.OrderedEnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;ThenByDescending;(System.Data.OrderedEnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;Where;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;Where;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;Where;(System.Data.EnumerableRowCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;FillErrorEventArgs;FillErrorEventArgs;(System.Data.DataTable,System.Object[]);Argument[0];Argument[this].SyntheticField[System.Data.FillErrorEventArgs._dataTable];value;dfc-generated | | System.Data;FillErrorEventArgs;FillErrorEventArgs;(System.Data.DataTable,System.Object[]);Argument[1];Argument[this].SyntheticField[System.Data.FillErrorEventArgs._values];value;dfc-generated | | System.Data;FillErrorEventArgs;get_DataTable;();Argument[this].SyntheticField[System.Data.FillErrorEventArgs._dataTable];ReturnValue;value;dfc-generated | @@ -11473,22 +10342,16 @@ summary | System.Data;TypedTableBaseExtensions;ElementAtOrDefault;(System.Data.TypedTableBase,System.Int32);Argument[0].Element;ReturnValue;value;manual | | System.Data;TypedTableBaseExtensions;OrderBy;(System.Data.TypedTableBase,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;TypedTableBaseExtensions;OrderBy;(System.Data.TypedTableBase,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;TypedTableBaseExtensions;OrderBy;(System.Data.TypedTableBase,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;TypedTableBaseExtensions;OrderBy;(System.Data.TypedTableBase,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;TypedTableBaseExtensions;OrderBy;(System.Data.TypedTableBase,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;TypedTableBaseExtensions;OrderBy;(System.Data.TypedTableBase,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;TypedTableBaseExtensions;OrderByDescending;(System.Data.TypedTableBase,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;TypedTableBaseExtensions;OrderByDescending;(System.Data.TypedTableBase,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;TypedTableBaseExtensions;OrderByDescending;(System.Data.TypedTableBase,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;TypedTableBaseExtensions;OrderByDescending;(System.Data.TypedTableBase,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;TypedTableBaseExtensions;OrderByDescending;(System.Data.TypedTableBase,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;TypedTableBaseExtensions;OrderByDescending;(System.Data.TypedTableBase,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;TypedTableBaseExtensions;Select;(System.Data.TypedTableBase,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;TypedTableBaseExtensions;Select;(System.Data.TypedTableBase,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Data;TypedTableBaseExtensions;Select;(System.Data.TypedTableBase,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;TypedTableBaseExtensions;Where;(System.Data.TypedTableBase,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;TypedTableBaseExtensions;Where;(System.Data.TypedTableBase,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;TypedTableBaseExtensions;Where;(System.Data.TypedTableBase,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;UniqueConstraint;UniqueConstraint;(System.Data.DataColumn);Argument[0];Argument[this];taint;df-generated | | System.Data;UniqueConstraint;UniqueConstraint;(System.Data.DataColumn,System.Boolean);Argument[0];Argument[this];taint;df-generated | | System.Data;UniqueConstraint;UniqueConstraint;(System.Data.DataColumn[]);Argument[0].Element;Argument[this];taint;df-generated | @@ -11514,13 +10377,9 @@ summary | System.Diagnostics.CodeAnalysis;RequiresUnreferencedCodeAttribute;RequiresUnreferencedCodeAttribute;(System.String);Argument[0];Argument[this].Property[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute.Message];value;dfc-generated | | System.Diagnostics.Contracts;Contract;Exists;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Contracts;Contract;Exists;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Diagnostics.Contracts;Contract;Exists;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System.Diagnostics.Contracts;Contract;Exists;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics.Contracts;Contract;Exists;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Contracts;Contract;ForAll;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Contracts;Contract;ForAll;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Diagnostics.Contracts;Contract;ForAll;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System.Diagnostics.Contracts;Contract;ForAll;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics.Contracts;Contract;ForAll;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Contracts;Contract;add_ContractFailed;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Contracts;Contract;remove_ContractFailed;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -11609,10 +10468,8 @@ summary | System.Diagnostics.Tracing;EventListener;EnableEvents;(System.Diagnostics.Tracing.EventSource,System.Diagnostics.Tracing.EventLevel);Argument[this];Argument[0];taint;df-generated | | System.Diagnostics.Tracing;EventListener;EnableEvents;(System.Diagnostics.Tracing.EventSource,System.Diagnostics.Tracing.EventLevel,System.Diagnostics.Tracing.EventKeywords);Argument[this];Argument[0];taint;df-generated | | System.Diagnostics.Tracing;EventListener;EnableEvents;(System.Diagnostics.Tracing.EventSource,System.Diagnostics.Tracing.EventLevel,System.Diagnostics.Tracing.EventKeywords,System.Collections.Generic.IDictionary);Argument[3];Argument[0].SyntheticField[System.Diagnostics.Tracing.EventSource.m_deferredCommands].Property[System.Diagnostics.Tracing.EventCommandEventArgs.Arguments];value;dfc-generated | -| System.Diagnostics.Tracing;EventListener;add_EventSourceCreated;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics.Tracing;EventListener;add_EventSourceCreated;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Tracing;EventListener;add_EventSourceCreated;(System.EventHandler);Argument[this];Argument[0].Parameter[0];value;dfc-generated | -| System.Diagnostics.Tracing;EventListener;add_EventSourceCreated;(System.EventHandler);Argument[this];Argument[0].Parameter[0];value;hq-generated | | System.Diagnostics.Tracing;EventListener;add_EventWritten;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Tracing;EventListener;remove_EventSourceCreated;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Tracing;EventListener;remove_EventWritten;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -11622,12 +10479,9 @@ summary | System.Diagnostics.Tracing;EventSource;GetTrait;(System.String);Argument[this].SyntheticField[System.Diagnostics.Tracing.EventSource.m_traits].Element;ReturnValue;value;dfc-generated | | System.Diagnostics.Tracing;EventSource;SendCommand;(System.Diagnostics.Tracing.EventSource,System.Diagnostics.Tracing.EventCommand,System.Collections.Generic.IDictionary);Argument[2];Argument[0].SyntheticField[System.Diagnostics.Tracing.EventSource.m_deferredCommands].Property[System.Diagnostics.Tracing.EventCommandEventArgs.Arguments];value;dfc-generated | | System.Diagnostics.Tracing;EventSource;ToString;();Argument[this];ReturnValue;taint;df-generated | -| System.Diagnostics.Tracing;EventSource;add_EventCommandExecuted;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics.Tracing;EventSource;add_EventCommandExecuted;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Tracing;EventSource;add_EventCommandExecuted;(System.EventHandler);Argument[this].SyntheticField[System.Diagnostics.Tracing.EventSource.m_deferredCommands];Argument[0].Parameter[1];value;dfc-generated | -| System.Diagnostics.Tracing;EventSource;add_EventCommandExecuted;(System.EventHandler);Argument[this].SyntheticField[System.Diagnostics.Tracing.EventSource.m_deferredCommands];Argument[0].Parameter[1];value;hq-generated | | System.Diagnostics.Tracing;EventSource;add_EventCommandExecuted;(System.EventHandler);Argument[this];Argument[0].Parameter[0];value;dfc-generated | -| System.Diagnostics.Tracing;EventSource;add_EventCommandExecuted;(System.EventHandler);Argument[this];Argument[0].Parameter[0];value;hq-generated | | System.Diagnostics.Tracing;EventSource;get_ConstructionException;();Argument[this];ReturnValue;taint;df-generated | | System.Diagnostics.Tracing;EventSource;get_Guid;();Argument[this].SyntheticField[System.Diagnostics.Tracing.EventSource.m_guid];ReturnValue;value;dfc-generated | | System.Diagnostics.Tracing;EventSource;get_Name;();Argument[this].SyntheticField[System.Diagnostics.Tracing.EventSource.m_name];ReturnValue;value;dfc-generated | @@ -11712,13 +10566,10 @@ summary | System.Diagnostics;ActivityTagsCollection;ActivityTagsCollection;(System.Collections.Generic.IEnumerable>);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Diagnostics;ActivityTagsCollection;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Diagnostics;ActivityTagsCollection;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Diagnostics;ActivityTagsCollection;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Diagnostics;ActivityTagsCollection;Add;(System.String,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Diagnostics;ActivityTagsCollection;Add;(System.String,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Diagnostics;ActivityTagsCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Diagnostics;ActivityTagsCollection;CopyTo;(System.Collections.Generic.KeyValuePair[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Diagnostics;ActivityTagsCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Diagnostics;ActivityTagsCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Diagnostics;ActivityTagsCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Diagnostics.ActivityTagsCollection+Enumerator.Current];value;manual | | System.Diagnostics;ActivityTagsCollection;TryGetValue;(System.String,System.Object);Argument[this];Argument[1];taint;df-generated | | System.Diagnostics;ActivityTagsCollection;get_Item;(System.String);Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;manual | @@ -11762,16 +10613,10 @@ summary | System.Diagnostics;DistributedContextPropagator+PropagatorGetterCallback;BeginInvoke;(System.Object,System.String,System.String,System.Collections.Generic.IEnumerable,System.AsyncCallback,System.Object);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Diagnostics;DistributedContextPropagator+PropagatorSetterCallback;BeginInvoke;(System.Object,System.String,System.String,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Diagnostics;DistributedContextPropagator;ExtractBaggage;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Diagnostics;DistributedContextPropagator;ExtractBaggage;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback);Argument[0];Argument[1].Parameter[0];value;hq-generated | -| System.Diagnostics;DistributedContextPropagator;ExtractBaggage;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics;DistributedContextPropagator;ExtractBaggage;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Diagnostics;DistributedContextPropagator;ExtractTraceIdAndState;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback,System.String,System.String);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Diagnostics;DistributedContextPropagator;ExtractTraceIdAndState;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback,System.String,System.String);Argument[0];Argument[1].Parameter[0];value;hq-generated | -| System.Diagnostics;DistributedContextPropagator;ExtractTraceIdAndState;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback,System.String,System.String);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics;DistributedContextPropagator;ExtractTraceIdAndState;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback,System.String,System.String);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Diagnostics;DistributedContextPropagator;Inject;(System.Diagnostics.Activity,System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorSetterCallback);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Diagnostics;DistributedContextPropagator;Inject;(System.Diagnostics.Activity,System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorSetterCallback);Argument[1];Argument[2].Parameter[0];value;hq-generated | -| System.Diagnostics;DistributedContextPropagator;Inject;(System.Diagnostics.Activity,System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorSetterCallback);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics;DistributedContextPropagator;Inject;(System.Diagnostics.Activity,System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorSetterCallback);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Diagnostics;EntryWrittenEventHandler;BeginInvoke;(System.Object,System.Diagnostics.EntryWrittenEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Diagnostics;EventLog;add_EntryWritten;(System.Diagnostics.EntryWrittenEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -11815,7 +10660,6 @@ summary | System.Diagnostics;FileVersionInfo;get_SpecialBuild;();Argument[this];ReturnValue;taint;df-generated | | System.Diagnostics;InitializingSwitchEventArgs;InitializingSwitchEventArgs;(System.Diagnostics.Switch);Argument[0];Argument[this].Property[System.Diagnostics.InitializingSwitchEventArgs.Switch];value;dfc-generated | | System.Diagnostics;InitializingTraceSourceEventArgs;InitializingTraceSourceEventArgs;(System.Diagnostics.TraceSource);Argument[0];Argument[this].Property[System.Diagnostics.InitializingTraceSourceEventArgs.TraceSource];value;dfc-generated | -| System.Diagnostics;MonitoringDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.DescriptionValue];ReturnValue;value;dfc-generated | | System.Diagnostics;MonitoringDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.Description];Argument[this].Property[System.ComponentModel.DescriptionAttribute.DescriptionValue];value;dfc-generated | | System.Diagnostics;MonitoringDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.Description];ReturnValue;value;dfc-generated | | System.Diagnostics;PerformanceCounterPermissionEntryCollection;OnInsert;(System.Int32,System.Object);Argument[1];Argument[this];taint;df-generated | @@ -11963,12 +10807,9 @@ summary | System.Drawing.Printing;MarginsConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing.Printing;MarginsConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing.Printing;MarginsConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing.Printing;MarginsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Drawing.Printing;MarginsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing.Printing;MarginsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Drawing.Printing;MarginsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing.Printing;MarginsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing.Printing;MarginsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing.Printing;PageSettings;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Drawing.Printing;PrintDocument;add_BeginPrint;(System.Drawing.Printing.PrintEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Drawing.Printing;PrintDocument;add_EndPrint;(System.Drawing.Printing.PrintEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -12006,14 +10847,7 @@ summary | System.Drawing;ColorConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;ColorConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;ColorConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;ColorConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | | System.Drawing;ColorTranslator;ToHtml;(System.Drawing.Color);Argument[0].Property[System.Drawing.Color.Name];ReturnValue;value;dfc-generated | | System.Drawing;ColorTranslator;ToHtml;(System.Drawing.Color);Argument[0].SyntheticField[System.Drawing.Color.name];ReturnValue;value;dfc-generated | @@ -12023,19 +10857,14 @@ summary | System.Drawing;FontConverter+FontNameConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;FontConverter+FontNameConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;FontConverter+FontNameConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | -| System.Drawing;FontConverter+FontUnitConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this].Property[System.ComponentModel.EnumConverter.Values];ReturnValue;value;df-generated | | System.Drawing;FontConverter+FontUnitConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this].Property[System.ComponentModel.EnumConverter.Values];ReturnValue;value;dfc-generated | | System.Drawing;FontConverter+FontUnitConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | -| System.Drawing;FontConverter+FontUnitConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;dfc-generated | | System.Drawing;FontConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;FontConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;FontConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;FontConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Drawing;FontConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;FontConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Drawing;FontConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;FontConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;FontConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;FontConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.Drawing;Graphics+DrawImageAbort;BeginInvoke;(System.IntPtr,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Drawing;Graphics+EnumerateMetafileProc;BeginInvoke;(System.Drawing.Imaging.EmfPlusRecordType,System.Int32,System.Int32,System.IntPtr,System.Drawing.Imaging.PlayRecordCallback,System.AsyncCallback,System.Object);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | @@ -12090,12 +10919,9 @@ summary | System.Drawing;IconConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;IconConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;IconConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;IconConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Drawing;IconConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;IconConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Drawing;IconConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;IconConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;IconConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;Image+GetThumbnailImageAbort;BeginInvoke;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Drawing;Image;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Drawing;Image;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | @@ -12105,73 +10931,39 @@ summary | System.Drawing;ImageConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;ImageConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;ImageConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;ImageConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Drawing;ImageConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;ImageConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Drawing;ImageConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;ImageConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;ImageConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;ImageConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.Drawing;ImageFormatConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;ImageFormatConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;ImageFormatConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;ImageFormatConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Drawing;ImageFormatConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;ImageFormatConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Drawing;ImageFormatConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;ImageFormatConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;ImageFormatConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;ImageFormatConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | | System.Drawing;Pen;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Drawing;PointConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;PointConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;PointConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;PointConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.Drawing;Rectangle;Inflate;(System.Drawing.Rectangle,System.Int32,System.Int32);Argument[0];ReturnValue;value;dfc-generated | | System.Drawing;RectangleConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;RectangleConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;RectangleConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;RectangleConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.Drawing;RectangleF;Inflate;(System.Drawing.RectangleF,System.Single,System.Single);Argument[0];ReturnValue;value;dfc-generated | | System.Drawing;SizeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;SizeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;SizeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;SizeConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.Drawing;SizeFConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;SizeFConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;SizeFConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;SizeFConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.Drawing;SolidBrush;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Drawing;StringFormat;Clone;();Argument[this];ReturnValue;value;dfc-generated | @@ -12196,7 +10988,6 @@ summary | System.Dynamic;DynamicMetaObjectBinder;Bind;(System.Object[],System.Collections.ObjectModel.ReadOnlyCollection,System.Linq.Expressions.LabelTarget);Argument[2];ReturnValue.Property[System.Linq.Expressions.GotoExpression.Target];value;dfc-generated | | System.Dynamic;ExpandoObject;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Dynamic;ExpandoObject;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Dynamic;ExpandoObject;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Dynamic;ExpandoObject;Add;(System.String,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Dynamic;ExpandoObject;Add;(System.String,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Dynamic;ExpandoObject;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | @@ -12245,18 +11036,11 @@ summary | System.Formats.Asn1;AsnReader;TryReadCharacterStringBytes;(System.Span,System.Formats.Asn1.Asn1Tag,System.Int32);Argument[this];Argument[0];taint;df-generated | | System.Formats.Asn1;AsnReader;TryReadOctetString;(System.Span,System.Int32,System.Nullable);Argument[this];Argument[0];taint;df-generated | | System.Formats.Asn1;AsnWriter;Encode;(System.Func,TReturn>);Argument[0].ReturnValue;ReturnValue;value;dfc-generated | -| System.Formats.Asn1;AsnWriter;Encode;(System.Func,TReturn>);Argument[0].ReturnValue;ReturnValue;value;hq-generated | -| System.Formats.Asn1;AsnWriter;Encode;(System.Func,TReturn>);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Formats.Asn1;AsnWriter;Encode;(System.Func,TReturn>);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Formats.Asn1;AsnWriter;Encode;(TState,System.Func,TReturn>);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Formats.Asn1;AsnWriter;Encode;(TState,System.Func,TReturn>);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Formats.Asn1;AsnWriter;Encode;(TState,System.Func,TReturn>);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Formats.Asn1;AsnWriter;Encode;(TState,System.Func,TReturn>);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Formats.Asn1;AsnWriter;Encode;(TState,System.Func,TReturn>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Formats.Asn1;AsnWriter;Encode;(TState,System.Func,TReturn>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Formats.Asn1;AsnWriter;Encode;(TState,System.Action>);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Formats.Asn1;AsnWriter;Encode;(TState,System.Action>);Argument[0];Argument[1].Parameter[0];value;hq-generated | -| System.Formats.Asn1;AsnWriter;Encode;(TState,System.Action>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Formats.Asn1;AsnWriter;Encode;(TState,System.Action>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Formats.Asn1;AsnWriter;PushOctetString;(System.Nullable);Argument[this];ReturnValue;taint;df-generated | | System.Formats.Asn1;AsnWriter;PushSequence;(System.Nullable);Argument[this];ReturnValue;taint;df-generated | @@ -12374,12 +11158,8 @@ summary | System.Globalization;TextElementEnumerator;GetTextElement;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._currentTextElementSubstr];ReturnValue;value;dfc-generated | | System.Globalization;TextElementEnumerator;GetTextElement;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._str];Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._currentTextElementSubstr];value;dfc-generated | | System.Globalization;TextElementEnumerator;GetTextElement;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._str];ReturnValue;value;dfc-generated | -| System.Globalization;TextElementEnumerator;get_Current;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._currentTextElementSubstr];ReturnValue;value;df-generated | | System.Globalization;TextElementEnumerator;get_Current;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._currentTextElementSubstr];ReturnValue;value;dfc-generated | -| System.Globalization;TextElementEnumerator;get_Current;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._str];ReturnValue;value;df-generated | | System.Globalization;TextElementEnumerator;get_Current;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._str];ReturnValue;value;dfc-generated | -| System.Globalization;TextElementEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Globalization;TextElementEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Globalization;TextInfo;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Globalization;TextInfo;ReadOnly;(System.Globalization.TextInfo);Argument[0];ReturnValue;value;dfc-generated | | System.Globalization;TextInfo;ToLower;(System.String);Argument[0];ReturnValue;value;dfc-generated | @@ -12387,10 +11167,8 @@ summary | System.Globalization;TextInfo;ToTitleCase;(System.String);Argument[0];ReturnValue;value;dfc-generated | | System.Globalization;TextInfo;ToUpper;(System.String);Argument[0];ReturnValue;value;dfc-generated | | System.Globalization;TextInfo;get_CultureName;();Argument[this];ReturnValue;taint;df-generated | -| System.IO.Compression;BrotliStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO.Compression;BrotliStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.IO.Compression;BrotliStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.IO.Compression;BrotliStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO.Compression;BrotliStream;BrotliStream;(System.IO.Stream,System.IO.Compression.CompressionMode,System.Boolean);Argument[0];Argument[this].SyntheticField[System.IO.Compression.BrotliStream._stream];value;dfc-generated | | System.IO.Compression;BrotliStream;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | | System.IO.Compression;BrotliStream;FlushAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | @@ -12406,10 +11184,8 @@ summary | System.IO.Compression;BrotliStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[1];ReturnValue;taint;df-generated | | System.IO.Compression;BrotliStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[this];ReturnValue;taint;df-generated | | System.IO.Compression;BrotliStream;get_BaseStream;();Argument[this].SyntheticField[System.IO.Compression.BrotliStream._stream];ReturnValue;value;dfc-generated | -| System.IO.Compression;DeflateStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO.Compression;DeflateStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.IO.Compression;DeflateStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.IO.Compression;DeflateStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO.Compression;DeflateStream;CopyTo;(System.IO.Stream,System.Int32);Argument[this];Argument[0];taint;manual | | System.IO.Compression;DeflateStream;CopyToAsync;(System.IO.Stream,System.Int32,System.Threading.CancellationToken);Argument[this];Argument[0];taint;manual | | System.IO.Compression;DeflateStream;DeflateStream;(System.IO.Stream,System.IO.Compression.CompressionLevel);Argument[0];Argument[this];taint;manual | @@ -12430,10 +11206,8 @@ summary | System.IO.Compression;DeflateStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[1];ReturnValue;taint;df-generated | | System.IO.Compression;DeflateStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[this];ReturnValue;taint;df-generated | | System.IO.Compression;DeflateStream;get_BaseStream;();Argument[this];ReturnValue;taint;df-generated | -| System.IO.Compression;GZipStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO.Compression;GZipStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.IO.Compression;GZipStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.IO.Compression;GZipStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO.Compression;GZipStream;CopyTo;(System.IO.Stream,System.Int32);Argument[this];Argument[0];taint;manual | | System.IO.Compression;GZipStream;CopyToAsync;(System.IO.Stream,System.Int32,System.Threading.CancellationToken);Argument[this];Argument[0];taint;manual | | System.IO.Compression;GZipStream;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | @@ -12453,10 +11227,8 @@ summary | System.IO.Compression;GZipStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[1];ReturnValue;taint;df-generated | | System.IO.Compression;GZipStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[this];ReturnValue;taint;df-generated | | System.IO.Compression;GZipStream;get_BaseStream;();Argument[this].SyntheticField[System.IO.Compression.GZipStream._deflateStream].SyntheticField[System.IO.Compression.DeflateStream._stream];ReturnValue;value;dfc-generated | -| System.IO.Compression;ZLibStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO.Compression;ZLibStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.IO.Compression;ZLibStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.IO.Compression;ZLibStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO.Compression;ZLibStream;CopyTo;(System.IO.Stream,System.Int32);Argument[this];Argument[0];taint;manual | | System.IO.Compression;ZLibStream;CopyToAsync;(System.IO.Stream,System.Int32,System.Threading.CancellationToken);Argument[this];Argument[0];taint;manual | | System.IO.Compression;ZLibStream;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | @@ -12498,18 +11270,14 @@ summary | System.IO.Enumeration;FileSystemEnumerable;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.IO.Enumeration;FileSystemEnumerable;set_ShouldIncludePredicate;(System.IO.Enumeration.FileSystemEnumerable+FindPredicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.IO.Enumeration;FileSystemEnumerable;set_ShouldRecursePredicate;(System.IO.Enumeration.FileSystemEnumerable+FindPredicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.IO.Enumeration;FileSystemEnumerator;get_Current;();Argument[this].Property[System.IO.Enumeration.FileSystemEnumerator`1.Current];ReturnValue;value;df-generated | | System.IO.Enumeration;FileSystemEnumerator;get_Current;();Argument[this].Property[System.IO.Enumeration.FileSystemEnumerator`1.Current];ReturnValue;value;dfc-generated | | System.IO.Enumeration;FileSystemEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.IO.Enumeration;FileSystemEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.IO.Enumeration;FileSystemName;TranslateWin32Expression;(System.String);Argument[0];ReturnValue;value;dfc-generated | | System.IO.IsolatedStorage;IsolatedStorage;get_ApplicationIdentity;();Argument[this];ReturnValue;taint;df-generated | | System.IO.IsolatedStorage;IsolatedStorage;get_AssemblyIdentity;();Argument[this];ReturnValue;taint;df-generated | | System.IO.IsolatedStorage;IsolatedStorage;get_DomainIdentity;();Argument[this];ReturnValue;taint;df-generated | -| System.IO.IsolatedStorage;IsolatedStorageFileStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO.IsolatedStorage;IsolatedStorageFileStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.IO.IsolatedStorage;IsolatedStorageFileStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.IO.IsolatedStorage;IsolatedStorageFileStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO.IsolatedStorage;IsolatedStorageFileStream;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | | System.IO.IsolatedStorage;IsolatedStorageFileStream;FlushAsync;(System.Threading.CancellationToken);Argument[this].SyntheticField[System.IO.FileStream._strategy].SyntheticField[System.IO.Strategies.DerivedFileStreamStrategy._fileStream];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.IO.IsolatedStorage;IsolatedStorageFileStream;FlushAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | @@ -12543,10 +11311,8 @@ summary | System.IO.Pipelines;PipeReader;Create;(System.IO.Stream,System.IO.Pipelines.StreamPipeReaderOptions);Argument[0];ReturnValue;taint;df-generated | | System.IO.Pipelines;PipeReader;Create;(System.IO.Stream,System.IO.Pipelines.StreamPipeReaderOptions);Argument[1];ReturnValue;taint;df-generated | | System.IO.Pipelines;PipeReader;OnWriterCompleted;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.IO.Pipelines;PipeScheduler;Schedule;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.IO.Pipelines;PipeScheduler;Schedule;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.IO.Pipelines;PipeScheduler;Schedule;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.IO.Pipelines;PipeScheduler;Schedule;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;hq-generated | | System.IO.Pipelines;PipeWriter;AsStream;(System.Boolean);Argument[this];ReturnValue;taint;df-generated | | System.IO.Pipelines;PipeWriter;Create;(System.IO.Stream,System.IO.Pipelines.StreamPipeWriterOptions);Argument[0];ReturnValue;taint;df-generated | | System.IO.Pipelines;PipeWriter;Create;(System.IO.Stream,System.IO.Pipelines.StreamPipeWriterOptions);Argument[1];ReturnValue;taint;df-generated | @@ -12565,10 +11331,8 @@ summary | System.IO.Pipes;NamedPipeServerStream;BeginWaitForConnection;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.IO.Pipes;NamedPipeServerStream;NamedPipeServerStream;(System.IO.Pipes.PipeDirection,System.Boolean,System.Boolean,Microsoft.Win32.SafeHandles.SafePipeHandle);Argument[3];Argument[this];taint;df-generated | | System.IO.Pipes;NamedPipeServerStream;RunAsClient;(System.IO.Pipes.PipeStreamImpersonationWorker);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.IO.Pipes;PipeStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO.Pipes;PipeStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.IO.Pipes;PipeStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.IO.Pipes;PipeStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO.Pipes;PipeStream;FlushAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.IO.Pipes;PipeStream;InitializeHandle;(Microsoft.Win32.SafeHandles.SafePipeHandle,System.Boolean,System.Boolean);Argument[0];Argument[this].SyntheticField[System.IO.Pipes.PipeStream._handle];value;dfc-generated | | System.IO.Pipes;PipeStream;Read;(System.Byte[],System.Int32,System.Int32);Argument[this];Argument[0];taint;manual | @@ -12597,10 +11361,8 @@ summary | System.IO;BinaryWriter;Write;(System.Byte[],System.Int32,System.Int32);Argument[0].Element;Argument[this];taint;df-generated | | System.IO;BinaryWriter;Write;(System.ReadOnlySpan);Argument[0];Argument[this];taint;df-generated | | System.IO;BinaryWriter;get_BaseStream;();Argument[this].Field[System.IO.BinaryWriter.OutStream];ReturnValue;value;dfc-generated | -| System.IO;BufferedStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO;BufferedStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.IO;BufferedStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.IO;BufferedStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO;BufferedStream;BufferedStream;(System.IO.Stream);Argument[0];Argument[this];taint;manual | | System.IO;BufferedStream;BufferedStream;(System.IO.Stream,System.Int32);Argument[0];Argument[this];taint;manual | | System.IO;BufferedStream;CopyTo;(System.IO.Stream,System.Int32);Argument[this];Argument[0];taint;manual | @@ -12717,13 +11479,10 @@ summary | System.IO;FileInfo;get_Name;();Argument[this];ReturnValue;taint;df-generated | | System.IO;FileLoadException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.IO;FileLoadException;get_Message;();Argument[this].Property[System.IO.FileLoadException.FileName];Argument[this].SyntheticField[System.Exception._message];taint;dfc-generated | -| System.IO;FileLoadException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.IO;FileNotFoundException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.IO;FileNotFoundException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | -| System.IO;FileStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO;FileStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.IO;FileStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.IO;FileStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO;FileStream;CopyTo;(System.IO.Stream,System.Int32);Argument[this];Argument[0];taint;manual | | System.IO;FileStream;CopyToAsync;(System.IO.Stream,System.Int32,System.Threading.CancellationToken);Argument[this];Argument[0];taint;manual | | System.IO;FileStream;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | @@ -12738,7 +11497,6 @@ summary | System.IO;FileStream;FileStream;(System.String,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare,System.Int32,System.IO.FileOptions);Argument[0];Argument[this];taint;manual | | System.IO;FileStream;FileStream;(System.String,System.IO.FileStreamOptions);Argument[this];Argument[this].SyntheticField[System.IO.FileStream._strategy].SyntheticField[System.IO.Strategies.DerivedFileStreamStrategy._fileStream];value;dfc-generated | | System.IO;FileStream;FlushAsync;(System.Threading.CancellationToken);Argument[this].SyntheticField[System.IO.FileStream._strategy].SyntheticField[System.IO.Strategies.DerivedFileStreamStrategy._fileStream];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | -| System.IO;FileStream;FlushAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.IO;FileStream;Read;(System.Byte[],System.Int32,System.Int32);Argument[this];Argument[0];taint;manual | | System.IO;FileStream;Read;(System.Span);Argument[this];Argument[0];taint;manual | | System.IO;FileStream;ReadAsync;(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken);Argument[this];Argument[0];taint;manual | @@ -12782,10 +11540,8 @@ summary | System.IO;FileSystemWatcher;remove_Deleted;(System.IO.FileSystemEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.IO;FileSystemWatcher;remove_Error;(System.IO.ErrorEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.IO;FileSystemWatcher;remove_Renamed;(System.IO.RenamedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.IO;MemoryStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO;MemoryStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.IO;MemoryStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.IO;MemoryStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO;MemoryStream;CopyTo;(System.IO.Stream,System.Int32);Argument[this];Argument[0];taint;manual | | System.IO;MemoryStream;CopyToAsync;(System.IO.Stream,System.Int32,System.Threading.CancellationToken);Argument[this];Argument[0];taint;manual | | System.IO;MemoryStream;FlushAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | @@ -12804,16 +11560,7 @@ summary | System.IO;MemoryStream;Write;(System.Byte[],System.Int32,System.Int32);Argument[0].Element;Argument[this];taint;manual | | System.IO;MemoryStream;Write;(System.ReadOnlySpan);Argument[0].Element;Argument[this];taint;manual | | System.IO;MemoryStream;WriteAsync;(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken);Argument[0].Element;Argument[this];taint;manual | -| System.IO;MemoryStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[0].Property[System.ReadOnlyMemory`1.Span].Element;Argument[this];taint;df-generated | | System.IO;MemoryStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[0].Property[System.ReadOnlyMemory`1.Span].Element;Argument[this];taint;dfc-generated | -| System.IO;MemoryStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[0];Argument[this];taint;df-generated | -| System.IO;MemoryStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[0];Argument[this];taint;dfc-generated | -| System.IO;MemoryStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[0];ReturnValue;taint;df-generated | -| System.IO;MemoryStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[0];ReturnValue;taint;dfc-generated | -| System.IO;MemoryStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[1];ReturnValue;taint;df-generated | -| System.IO;MemoryStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[1];ReturnValue;taint;dfc-generated | -| System.IO;MemoryStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[this];ReturnValue;taint;df-generated | -| System.IO;MemoryStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[this];ReturnValue;taint;dfc-generated | | System.IO;MemoryStream;WriteTo;(System.IO.Stream);Argument[this];Argument[0];taint;df-generated | | System.IO;Path;ChangeExtension;(System.String,System.String);Argument[0];ReturnValue;value;dfc-generated | | System.IO;Path;Combine;(System.ReadOnlySpan);Argument[0].Element;ReturnValue;taint;manual | @@ -12881,10 +11628,8 @@ summary | System.IO;RenamedEventArgs;get_OldFullPath;();Argument[this].SyntheticField[System.IO.RenamedEventArgs._oldFullPath];ReturnValue;value;dfc-generated | | System.IO;RenamedEventArgs;get_OldName;();Argument[this].SyntheticField[System.IO.RenamedEventArgs._oldName];ReturnValue;value;dfc-generated | | System.IO;RenamedEventHandler;BeginInvoke;(System.Object,System.IO.RenamedEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.IO;Stream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO;Stream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.IO;Stream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.IO;Stream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO;Stream;CopyTo;(System.IO.Stream);Argument[this];Argument[0];taint;manual | | System.IO;Stream;CopyTo;(System.IO.Stream,System.Int32);Argument[this];Argument[0];taint;manual | | System.IO;Stream;CopyToAsync;(System.IO.Stream);Argument[this];Argument[0];taint;manual | @@ -13197,10 +11942,7 @@ summary | System.Linq.Expressions;DynamicExpression;Update;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Linq.Expressions;DynamicExpression;get_Arguments;();Argument[this];ReturnValue;taint;df-generated | | System.Linq.Expressions;DynamicExpressionVisitor;VisitDynamic;(System.Linq.Expressions.DynamicExpression);Argument[0];ReturnValue;value;dfc-generated | -| System.Linq.Expressions;ElementInit;GetArgument;(System.Int32);Argument[this].Property[System.Linq.Expressions.ElementInit.Arguments].Element;ReturnValue;value;df-generated | | System.Linq.Expressions;ElementInit;GetArgument;(System.Int32);Argument[this].Property[System.Linq.Expressions.ElementInit.Arguments].Element;ReturnValue;value;dfc-generated | -| System.Linq.Expressions;ElementInit;GetArgument;(System.Int32);Argument[this];ReturnValue;taint;df-generated | -| System.Linq.Expressions;ElementInit;GetArgument;(System.Int32);Argument[this];ReturnValue;taint;dfc-generated | | System.Linq.Expressions;ElementInit;ToString;();Argument[this];ReturnValue;taint;df-generated | | System.Linq.Expressions;ElementInit;Update;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue.Property[System.Linq.Expressions.ElementInit.Arguments];value;dfc-generated | | System.Linq.Expressions;ElementInit;Update;(System.Collections.Generic.IEnumerable);Argument[this].Property[System.Linq.Expressions.ElementInit.AddMethod];ReturnValue.Property[System.Linq.Expressions.ElementInit.AddMethod];value;dfc-generated | @@ -13566,10 +12308,7 @@ summary | System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection);Argument[0];ReturnValue;value;df-generated | | System.Linq.Expressions;ExpressionVisitor;Visit;(System.Linq.Expressions.Expression);Argument[0];ReturnValue;value;dfc-generated | | System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq.Expressions;ExpressionVisitor;VisitAndConvert;(System.Collections.ObjectModel.ReadOnlyCollection,System.String);Argument[0].Element;Argument[this];taint;df-generated | | System.Linq.Expressions;ExpressionVisitor;VisitAndConvert;(System.Collections.ObjectModel.ReadOnlyCollection,System.String);Argument[0];ReturnValue;value;df-generated | @@ -13629,10 +12368,7 @@ summary | System.Linq.Expressions;GotoExpression;Update;(System.Linq.Expressions.LabelTarget,System.Linq.Expressions.Expression);Argument[this];ReturnValue;value;dfc-generated | | System.Linq.Expressions;IArgumentProvider;GetArgument;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Linq.Expressions;IndexExpression;Accept;(System.Linq.Expressions.ExpressionVisitor);Argument[this];ReturnValue;value;dfc-generated | -| System.Linq.Expressions;IndexExpression;GetArgument;(System.Int32);Argument[this].SyntheticField[System.Linq.Expressions.IndexExpression._arguments].Element;ReturnValue;value;df-generated | | System.Linq.Expressions;IndexExpression;GetArgument;(System.Int32);Argument[this].SyntheticField[System.Linq.Expressions.IndexExpression._arguments].Element;ReturnValue;value;dfc-generated | -| System.Linq.Expressions;IndexExpression;GetArgument;(System.Int32);Argument[this];ReturnValue;taint;df-generated | -| System.Linq.Expressions;IndexExpression;GetArgument;(System.Int32);Argument[this];ReturnValue;taint;dfc-generated | | System.Linq.Expressions;IndexExpression;Update;(System.Linq.Expressions.Expression,System.Collections.Generic.IEnumerable);Argument[0];ReturnValue.Property[System.Linq.Expressions.IndexExpression.Object];value;dfc-generated | | System.Linq.Expressions;IndexExpression;Update;(System.Linq.Expressions.Expression,System.Collections.Generic.IEnumerable);Argument[1];ReturnValue.SyntheticField[System.Linq.Expressions.IndexExpression._arguments];value;dfc-generated | | System.Linq.Expressions;IndexExpression;Update;(System.Linq.Expressions.Expression,System.Collections.Generic.IEnumerable);Argument[this].Property[System.Linq.Expressions.IndexExpression.Indexer];ReturnValue.Property[System.Linq.Expressions.IndexExpression.Indexer];value;dfc-generated | @@ -13687,11 +12423,7 @@ summary | System.Linq.Expressions;NewArrayExpression;Update;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Linq.Expressions;NewExpression;Accept;(System.Linq.Expressions.ExpressionVisitor);Argument[this].Property[System.Linq.Expressions.NewExpression.Constructor];ReturnValue.Property[System.Linq.Expressions.NewExpression.Constructor];value;dfc-generated | | System.Linq.Expressions;NewExpression;Accept;(System.Linq.Expressions.ExpressionVisitor);Argument[this].Property[System.Linq.Expressions.NewExpression.Members];ReturnValue.Property[System.Linq.Expressions.NewExpression.Members];value;dfc-generated | -| System.Linq.Expressions;NewExpression;Accept;(System.Linq.Expressions.ExpressionVisitor);Argument[this];ReturnValue;value;dfc-generated | -| System.Linq.Expressions;NewExpression;GetArgument;(System.Int32);Argument[this].SyntheticField[System.Linq.Expressions.NewExpression._arguments].Element;ReturnValue;value;df-generated | | System.Linq.Expressions;NewExpression;GetArgument;(System.Int32);Argument[this].SyntheticField[System.Linq.Expressions.NewExpression._arguments].Element;ReturnValue;value;dfc-generated | -| System.Linq.Expressions;NewExpression;GetArgument;(System.Int32);Argument[this];ReturnValue;taint;df-generated | -| System.Linq.Expressions;NewExpression;GetArgument;(System.Int32);Argument[this];ReturnValue;taint;dfc-generated | | System.Linq.Expressions;NewExpression;Update;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue.SyntheticField[System.Linq.Expressions.NewExpression._arguments];value;dfc-generated | | System.Linq.Expressions;NewExpression;Update;(System.Collections.Generic.IEnumerable);Argument[this].Property[System.Linq.Expressions.NewExpression.Constructor];ReturnValue.Property[System.Linq.Expressions.NewExpression.Constructor];value;dfc-generated | | System.Linq.Expressions;NewExpression;Update;(System.Collections.Generic.IEnumerable);Argument[this].Property[System.Linq.Expressions.NewExpression.Members];ReturnValue.Property[System.Linq.Expressions.NewExpression.Members];value;dfc-generated | @@ -13699,7 +12431,6 @@ summary | System.Linq.Expressions;NewExpression;get_Arguments;();Argument[this].SyntheticField[System.Linq.Expressions.NewExpression._arguments];ReturnValue;value;dfc-generated | | System.Linq.Expressions;ParameterExpression;Accept;(System.Linq.Expressions.ExpressionVisitor);Argument[this];ReturnValue;value;dfc-generated | | System.Linq.Expressions;RuntimeVariablesExpression;Accept;(System.Linq.Expressions.ExpressionVisitor);Argument[this].Property[System.Linq.Expressions.RuntimeVariablesExpression.Variables];ReturnValue.Property[System.Linq.Expressions.RuntimeVariablesExpression.Variables];value;dfc-generated | -| System.Linq.Expressions;RuntimeVariablesExpression;Accept;(System.Linq.Expressions.ExpressionVisitor);Argument[this];ReturnValue;value;dfc-generated | | System.Linq.Expressions;RuntimeVariablesExpression;Update;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue.Property[System.Linq.Expressions.RuntimeVariablesExpression.Variables];value;dfc-generated | | System.Linq.Expressions;RuntimeVariablesExpression;Update;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Linq.Expressions;SwitchCase;Update;(System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression);Argument[0];ReturnValue.Property[System.Linq.Expressions.SwitchCase.TestValues];value;dfc-generated | @@ -13726,112 +12457,62 @@ summary | System.Linq.Expressions;UnaryExpression;Update;(System.Linq.Expressions.Expression);Argument[this].Property[System.Linq.Expressions.UnaryExpression.Method];ReturnValue.Property[System.Linq.Expressions.UnaryExpression.Method];value;dfc-generated | | System.Linq.Expressions;UnaryExpression;Update;(System.Linq.Expressions.Expression);Argument[this];ReturnValue;value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[3].Parameter[0];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[2].ReturnValue;Argument[3].Parameter[0];taint;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[2].ReturnValue;Argument[3].Parameter[0];taint;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[3].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[3].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[4];Argument[2].Parameter[2];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[4];Argument[2].Parameter[2];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[4];Argument[3].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[4];Argument[3].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[1];Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[1];Argument[3].Parameter[0];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[2].ReturnValue;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[2].ReturnValue;Argument[3].Parameter[0];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[3].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[3].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[2].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[2].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[3];Argument[2].Parameter[2];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[3];Argument[2].Parameter[2];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[2].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[2].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[2];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[2];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];taint;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];taint;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[0];taint;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[0];taint;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TAccumulate,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TAccumulate,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TAccumulate,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TAccumulate,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[3].Parameter[0];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TAccumulate,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TAccumulate,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[0];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[3].Parameter[0];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AllAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;AllAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AllAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AllAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;AllAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;AnyAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;AnyAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AnyAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AnyAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;AnyAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;Append;(System.Collections.Generic.IAsyncEnumerable,TSource);Argument[1];ReturnValue.Element;value;dfc-generated | | System.Linq;AsyncEnumerable;Cast;(System.Collections.Generic.IAsyncEnumerable);Argument[0];ReturnValue;value;dfc-generated | | System.Linq;AsyncEnumerable;Concat;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable);Argument[0];ReturnValue;value;dfc-generated | | System.Linq;AsyncEnumerable;Concat;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable);Argument[1];ReturnValue;value;dfc-generated | | System.Linq;AsyncEnumerable;CountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;CountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;CountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;CountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;CountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;CountBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;CountBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;DefaultIfEmpty;(System.Collections.Generic.IAsyncEnumerable,TSource);Argument[1];ReturnValue.Element;value;dfc-generated | @@ -13840,146 +12521,84 @@ summary | System.Linq;AsyncEnumerable;ExceptBy;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ExceptBy;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;FirstAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;FirstAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;FirstAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;FirstAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;FirstAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,TSource,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;InfiniteSequence;(T,T);Argument[0];ReturnValue.Element;value;dfc-generated | | System.Linq;AsyncEnumerable;IntersectBy;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;IntersectBy;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LastAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;LastAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LastAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LastAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;LastAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,TSource,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LongCountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;LongCountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LongCountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LongCountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;LongCountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | -| System.Linq;AsyncEnumerable;MaxByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;MaxByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;MaxByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;MaxByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;MaxByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;MinByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;MinByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;MinByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;MinByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;MinByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Order;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IComparer);Argument[1];ReturnValue;taint;df-generated | | System.Linq;AsyncEnumerable;OrderBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -13989,117 +12608,65 @@ summary | System.Linq;AsyncEnumerable;OrderDescending;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IComparer);Argument[1];ReturnValue;taint;df-generated | | System.Linq;AsyncEnumerable;Prepend;(System.Collections.Generic.IAsyncEnumerable,TSource);Argument[1];ReturnValue.Element;value;dfc-generated | | System.Linq;AsyncEnumerable;Repeat;(TResult,System.Int32);Argument[0];ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue.Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue.Element;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue.Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue.Element;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Sequence;(T,T,T);Argument[0];ReturnValue.Element;value;dfc-generated | | System.Linq;AsyncEnumerable;SingleAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SingleAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SingleAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SingleAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;SingleAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,TSource,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | | System.Linq;AsyncEnumerable;Skip;(System.Collections.Generic.IAsyncEnumerable,System.Int32);Argument[0];ReturnValue;value;dfc-generated | | System.Linq;AsyncEnumerable;SkipLast;(System.Collections.Generic.IAsyncEnumerable,System.Int32);Argument[0];ReturnValue;value;dfc-generated | @@ -14112,51 +12679,31 @@ summary | System.Linq;AsyncEnumerable;TakeWhile;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;TakeWhile;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;dfc-generated | -| System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;hq-generated | -| System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;dfc-generated | -| System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;hq-generated | -| System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;dfc-generated | -| System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;hq-generated | -| System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;dfc-generated | -| System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;hq-generated | -| System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToAsyncEnumerable;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[2].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[2].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[2].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[2].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;UnionBy;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;UnionBy;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | @@ -14165,76 +12712,44 @@ summary | System.Linq;AsyncEnumerable;Where;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Where;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[1];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func,System.Func);Argument[1];Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func,System.Func);Argument[2].ReturnValue;Argument[3].Parameter[0];value;manual | -| System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;manual | -| System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func);Argument[0].Element;Argument[2].Parameter[1];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func);Argument[1];Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func);Argument[2].ReturnValue;ReturnValue;value;manual | -| System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[1];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue;value;manual | -| System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[3].Parameter[1];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[3].Parameter[1];value;hq-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;hq-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[0];value;hq-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[3].Parameter[1];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[3].Parameter[1];value;hq-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[3].Parameter[0];value;hq-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;All;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;All;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Any;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Any;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Append;(System.Collections.Generic.IEnumerable,TSource);Argument[1];ReturnValue;taint;df-generated | | System.Linq;Enumerable;AsEnumerable;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Cast;(System.Collections.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Chunk;(System.Collections.Generic.IEnumerable,System.Int32);Argument[0].Element;ReturnValue.Element.Element;value;dfc-generated | | System.Linq;Enumerable;Concat;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | @@ -14242,10 +12757,7 @@ summary | System.Linq;Enumerable;Contains;(System.Collections.Generic.IEnumerable,TSource,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2];taint;df-generated | | System.Linq;Enumerable;Contains;(System.Collections.Generic.IEnumerable,TSource,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[2];taint;df-generated | | System.Linq;Enumerable;Count;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Count;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;CountBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;CountBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System.Linq;Enumerable;CountBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;CountBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;DefaultIfEmpty;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;DefaultIfEmpty;(System.Collections.Generic.IEnumerable,TSource);Argument[0].Element;ReturnValue.Element;value;manual | @@ -14253,16 +12765,10 @@ summary | System.Linq;Enumerable;Distinct;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Distinct;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;ElementAt;(System.Collections.Generic.IEnumerable,System.Index);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;ElementAt;(System.Collections.Generic.IEnumerable,System.Int32);Argument[0].Element;ReturnValue;value;manual | @@ -14271,91 +12777,57 @@ summary | System.Linq;Enumerable;Except;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Except;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;First;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Enumerable;First;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;First;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Enumerable;First;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;ReturnValue;value;dfc-generated | -| System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;ReturnValue;value;hq-generated | -| System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[2];ReturnValue;value;dfc-generated | -| System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[2];ReturnValue;value;hq-generated | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,TSource);Argument[1];ReturnValue;value;dfc-generated | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[2].ReturnValue;Argument[3].Parameter[1].Element;value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[3].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[1].Element;value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>);Argument[0];Argument[2].Parameter[1];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Index;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element.Field[System.ValueTuple`2.Item2];value;dfc-generated | | System.Linq;Enumerable;InfiniteSequence;(T,T);Argument[0];ReturnValue.Element;value;dfc-generated | | System.Linq;Enumerable;Intersect;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | @@ -14363,105 +12835,63 @@ summary | System.Linq;Enumerable;Intersect;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Intersect;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Last;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Enumerable;Last;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;Last;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Enumerable;Last;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[2];ReturnValue;value;dfc-generated | -| System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[2];ReturnValue;value;hq-generated | | System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,TSource);Argument[1];ReturnValue;value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[4].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[4].Parameter[0];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;hq-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;hq-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;LongCount;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;LongCount;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1];taint;df-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;MaxBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;MaxBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | @@ -14469,30 +12899,19 @@ summary | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1];taint;df-generated | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;MinBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;MinBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;OfType;(System.Collections.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | @@ -14500,16 +12919,12 @@ summary | System.Linq;Enumerable;Order;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;dfc-generated | | System.Linq;Enumerable;OrderBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;OrderBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;OrderBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;OrderBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;OrderBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;OrderBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;OrderByDescending;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;OrderByDescending;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;OrderByDescending;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;OrderByDescending;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;OrderByDescending;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;OrderByDescending;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;OrderDescending;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;dfc-generated | | System.Linq;Enumerable;OrderDescending;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;dfc-generated | | System.Linq;Enumerable;Prepend;(System.Collections.Generic.IEnumerable,TSource);Argument[1];ReturnValue;taint;df-generated | @@ -14517,57 +12932,35 @@ summary | System.Linq;Enumerable;Reverse;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Reverse;(TSource[]);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[4].Parameter[1];value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[4].Parameter[1];value;hq-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;hq-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;Select;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;Select;(System.Collections.Generic.IEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Select;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Select;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;Select;(System.Collections.Generic.IEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Select;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;manual | -| System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;manual | -| System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sequence;(T,T,T);Argument[0];ReturnValue.Element;value;dfc-generated | | System.Linq;Enumerable;SequenceEqual;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[1].Element;Argument[0].Element;taint;df-generated | | System.Linq;Enumerable;SequenceEqual;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2];taint;df-generated | @@ -14577,70 +12970,46 @@ summary | System.Linq;Enumerable;Single;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Enumerable;Single;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;Single;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Enumerable;Single;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;ReturnValue;value;dfc-generated | -| System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;ReturnValue;value;hq-generated | -| System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[2];ReturnValue;value;dfc-generated | -| System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[2];ReturnValue;value;hq-generated | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,TSource);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,TSource);Argument[1];ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Skip;(System.Collections.Generic.IEnumerable,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;SkipLast;(System.Collections.Generic.IEnumerable,System.Int32);Argument[0];ReturnValue;value;df-generated | | System.Linq;Enumerable;SkipWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SkipWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;SkipWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SkipWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SkipWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;SkipWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Take;(System.Collections.Generic.IEnumerable,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Take;(System.Collections.Generic.IEnumerable,System.Range);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;TakeLast;(System.Collections.Generic.IEnumerable,System.Int32);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;TakeWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;TakeWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;TakeWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;TakeWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;TakeWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;TakeWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ThenBy;(System.Linq.IOrderedEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ThenBy;(System.Linq.IOrderedEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ThenBy;(System.Linq.IOrderedEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ThenBy;(System.Linq.IOrderedEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ThenBy;(System.Linq.IOrderedEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ThenBy;(System.Linq.IOrderedEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ThenByDescending;(System.Linq.IOrderedEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ThenByDescending;(System.Linq.IOrderedEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ThenByDescending;(System.Linq.IOrderedEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ThenByDescending;(System.Linq.IOrderedEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ThenByDescending;(System.Linq.IOrderedEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ThenByDescending;(System.Linq.IOrderedEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToArray;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable>);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable>);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | @@ -14654,71 +13023,46 @@ summary | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEqualityComparer);Argument[0].Element.Field[System.ValueTuple`2.Item2];ReturnValue.Element;value;dfc-generated | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToList;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Union;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Union;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Union;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Union;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[1].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[1].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[1].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[1].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;Where;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;Where;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Where;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Where;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;Where;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Where;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[1].Element;Argument[2].Parameter[1];value;manual | | System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element.Field[System.ValueTuple`3.Item1];value;dfc-generated | | System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element.Field[System.ValueTuple`3.Item2];value;dfc-generated | | System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[2].Element;ReturnValue.Element.Field[System.ValueTuple`3.Item3];value;dfc-generated | @@ -14728,7 +13072,6 @@ summary | System.Linq;EnumerableQuery;EnumerableQuery;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this];taint;df-generated | | System.Linq;EnumerableQuery;EnumerableQuery;(System.Linq.Expressions.Expression);Argument[0];Argument[this].SyntheticField[System.Linq.EnumerableQuery`1._expression];value;dfc-generated | | System.Linq;EnumerableQuery;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Linq;EnumerableQuery;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Linq;EnumerableQuery;ToString;();Argument[this];ReturnValue;taint;df-generated | | System.Linq;EnumerableQuery;get_Expression;();Argument[this].SyntheticField[System.Linq.EnumerableQuery`1._expression];ReturnValue;value;dfc-generated | | System.Linq;EnumerableQuery;get_Provider;();Argument[this];ReturnValue;value;dfc-generated | @@ -14737,32 +13080,18 @@ summary | System.Linq;IOrderedEnumerable;CreateOrderedEnumerable;(System.Func,System.Collections.Generic.IComparer,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Linq;IQueryable;get_Provider;();Argument[this];ReturnValue;value;dfc-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1].ReturnValue;Argument[1].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[1];ReturnValue;value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[1];ReturnValue;value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[2].ReturnValue;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[2].ReturnValue;Argument[2].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[1];Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[1];Argument[3].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[2].ReturnValue;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[2].ReturnValue;Argument[3].Parameter[0];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;All;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Any;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -14782,12 +13111,8 @@ summary | System.Linq;ImmutableArrayExtensions;LastOrDefault;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Select;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;SequenceEqual;(System.Collections.Immutable.ImmutableArray,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2];taint;df-generated | | System.Linq;ImmutableArrayExtensions;SequenceEqual;(System.Collections.Immutable.ImmutableArray,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[2];taint;df-generated | @@ -14800,89 +13125,51 @@ summary | System.Linq;ImmutableArrayExtensions;SingleOrDefault;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToArray;(System.Collections.Immutable.ImmutableArray);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[0].Element;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[0].Element;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Where;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Lookup;ApplyResultSelector;(System.Func,TResult>);Argument[0].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;Lookup;ApplyResultSelector;(System.Func,TResult>);Argument[0].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;Lookup;ApplyResultSelector;(System.Func,TResult>);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Linq;Lookup;ApplyResultSelector;(System.Func,TResult>);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Linq;Lookup;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Linq;Lookup;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Linq;Lookup;get_Item;(TKey);Argument[this];ReturnValue;taint;df-generated | | System.Linq;OrderedParallelQuery;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[1];ReturnValue;value;dfc-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[1];ReturnValue;value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[1];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func);Argument[1];Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func);Argument[2].ReturnValue;Argument[3].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func);Argument[0].Element;Argument[2].Parameter[1];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func);Argument[1];Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func);Argument[2].ReturnValue;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[1];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func);Argument[1].ReturnValue;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;All;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;All;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Any;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Any;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;AsEnumerable;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;AsOrdered;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;ParallelEnumerable;AsOrdered;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;taint;df-generated | @@ -14892,32 +13179,21 @@ summary | System.Linq;ParallelEnumerable;AsSequential;(System.Linq.ParallelQuery);Argument[0];ReturnValue;value;dfc-generated | | System.Linq;ParallelEnumerable;AsUnordered;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Cast;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Concat;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Concat;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Concat;(System.Linq.ParallelQuery,System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Concat;(System.Linq.ParallelQuery,System.Linq.ParallelQuery);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Count;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Count;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;DefaultIfEmpty;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;DefaultIfEmpty;(System.Linq.ParallelQuery,TSource);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;DefaultIfEmpty;(System.Linq.ParallelQuery,TSource);Argument[1];ReturnValue.Element;value;manual | @@ -14932,85 +13208,55 @@ summary | System.Linq;ParallelEnumerable;First;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;value;manual | | System.Linq;ParallelEnumerable;First;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;First;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;First;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;FirstOrDefault;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;value;manual | | System.Linq;ParallelEnumerable;FirstOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;FirstOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;FirstOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ForAll;(System.Linq.ParallelQuery,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[2].ReturnValue;Argument[3].Parameter[1].Element;value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[3].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[1].Element;value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>);Argument[0];Argument[2].Parameter[1];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Intersect;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Intersect;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Intersect;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | @@ -15023,217 +13269,136 @@ summary | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Last;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;value;manual | | System.Linq;ParallelEnumerable;Last;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Last;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;Last;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;LastOrDefault;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;value;manual | | System.Linq;ParallelEnumerable;LastOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;LastOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;LastOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;LongCount;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;LongCount;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;OfType;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;OrderBy;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;OrderBy;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;OrderBy;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;OrderBy;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;OrderBy;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;OrderBy;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;OrderByDescending;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;OrderByDescending;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;OrderByDescending;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;OrderByDescending;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;OrderByDescending;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;OrderByDescending;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Repeat;(TResult,System.Int32);Argument[0];ReturnValue;taint;df-generated | | System.Linq;ParallelEnumerable;Reverse;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Select;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Select;(System.Linq.ParallelQuery,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Select;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Select;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Select;(System.Linq.ParallelQuery,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Select;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SequenceEqual;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2];taint;df-generated | | System.Linq;ParallelEnumerable;SequenceEqual;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[2];taint;df-generated | | System.Linq;ParallelEnumerable;Single;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;value;manual | | System.Linq;ParallelEnumerable;Single;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Single;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;Single;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SingleOrDefault;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;value;manual | | System.Linq;ParallelEnumerable;SingleOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SingleOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;SingleOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Skip;(System.Linq.ParallelQuery,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;SkipWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SkipWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;SkipWhile;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SkipWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SkipWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;SkipWhile;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Take;(System.Linq.ParallelQuery,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;TakeWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;TakeWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;TakeWhile;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;TakeWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;TakeWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;TakeWhile;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ThenBy;(System.Linq.OrderedParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ThenBy;(System.Linq.OrderedParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ThenBy;(System.Linq.OrderedParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ThenBy;(System.Linq.OrderedParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ThenBy;(System.Linq.OrderedParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ThenBy;(System.Linq.OrderedParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ThenByDescending;(System.Linq.OrderedParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ThenByDescending;(System.Linq.OrderedParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ThenByDescending;(System.Linq.OrderedParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ThenByDescending;(System.Linq.OrderedParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ThenByDescending;(System.Linq.OrderedParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ThenByDescending;(System.Linq.OrderedParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToArray;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToList;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Union;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Union;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Union;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | @@ -15244,10 +13409,8 @@ summary | System.Linq;ParallelEnumerable;Union;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Collections.Generic.IEqualityComparer);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Where;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Where;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Where;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Where;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Where;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Where;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;WithCancellation;(System.Linq.ParallelQuery,System.Threading.CancellationToken);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;ParallelEnumerable;WithDegreeOfParallelism;(System.Linq.ParallelQuery,System.Int32);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;ParallelEnumerable;WithExecutionMode;(System.Linq.ParallelQuery,System.Linq.ParallelExecutionMode);Argument[0].Element;ReturnValue;taint;df-generated | @@ -15255,62 +13418,43 @@ summary | System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func);Argument[1].Element;Argument[2].Parameter[1];value;manual | | System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func);Argument[1].Element;Argument[2].Parameter[1];value;manual | | System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelQuery;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Linq;ParallelQuery;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[2].Parameter[1];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[1];Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2].ReturnValue;Argument[3].Parameter[0];value;manual | -| System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[3].ReturnValue;ReturnValue;value;manual | -| System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[2].Parameter[1];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>);Argument[1];Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>);Argument[2].ReturnValue;ReturnValue;value;manual | -| System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[1];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1].ReturnValue;ReturnValue;value;manual | -| System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;AggregateBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;AggregateBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;AggregateBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;AggregateBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,TAccumulate,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;AggregateBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,TAccumulate,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;All;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;All;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Any;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Any;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;AsQueryable;(System.Collections.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;AsQueryable;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Cast;(System.Linq.IQueryable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Concat;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Concat;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Count;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Count;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;CountBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;DefaultIfEmpty;(System.Linq.IQueryable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;DefaultIfEmpty;(System.Linq.IQueryable,TSource);Argument[0].Element;ReturnValue.Element;value;manual | @@ -15328,66 +13472,42 @@ summary | System.Linq;Queryable;First;(System.Linq.IQueryable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Queryable;First;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;First;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Queryable;First;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;FirstOrDefault;(System.Linq.IQueryable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Queryable;FirstOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;FirstOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Queryable;FirstOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;FirstOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[2].ReturnValue;Argument[3].Parameter[1].Element;value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[3].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[1].Element;value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Intersect;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Intersect;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Intersect;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | @@ -15398,26 +13518,18 @@ summary | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Last;(System.Linq.IQueryable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Queryable;Last;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;Last;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Queryable;Last;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;LastOrDefault;(System.Linq.IQueryable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Queryable;LastOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;LastOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Queryable;LastOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;LastOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;LeftJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;LeftJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | @@ -15426,30 +13538,23 @@ summary | System.Linq;Queryable;LeftJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;LeftJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;LongCount;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;LongCount;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Max;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Max;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;MaxBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;MaxBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;MaxBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;Min;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Min;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;MinBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;MinBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;MinBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;OfType;(System.Linq.IQueryable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;OrderBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;OrderBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;OrderBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;OrderBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;OrderBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;OrderBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;OrderByDescending;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;OrderByDescending;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;OrderByDescending;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;OrderByDescending;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;OrderByDescending;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;OrderByDescending;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Reverse;(System.Linq.IQueryable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;RightJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;RightJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | @@ -15459,83 +13564,55 @@ summary | System.Linq;Queryable;RightJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;Select;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;Select;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Select;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Select;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;Select;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Select;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;manual | -| System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;manual | -| System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Single;(System.Linq.IQueryable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Queryable;Single;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;Single;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Queryable;Single;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SingleOrDefault;(System.Linq.IQueryable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Queryable;SingleOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SingleOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Queryable;SingleOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SingleOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;Skip;(System.Linq.IQueryable,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;SkipWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SkipWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;SkipWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SkipWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SkipWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;SkipWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Take;(System.Linq.IQueryable,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;TakeWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;TakeWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;TakeWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;TakeWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;TakeWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;TakeWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;ThenBy;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;ThenBy;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;ThenBy;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;ThenBy;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;ThenBy;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;ThenBy;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;ThenByDescending;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;ThenByDescending;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;ThenByDescending;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;ThenByDescending;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;ThenByDescending;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;ThenByDescending;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Union;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Union;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Union;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | @@ -15544,14 +13621,11 @@ summary | System.Linq;Queryable;UnionBy;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;Where;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;Where;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Where;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Where;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;Where;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Where;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Zip;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;Zip;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>);Argument[1].Element;Argument[2].Parameter[1];value;manual | | System.Linq;Queryable;Zip;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Zip;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Media;SoundPlayer;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Media;SoundPlayer;add_LoadCompleted;(System.ComponentModel.AsyncCompletedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Media;SoundPlayer;add_SoundLocationChanged;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -15566,7 +13640,6 @@ summary | System.Net.Http.Headers;AuthenticationHeaderValue;AuthenticationHeaderValue;(System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Net.Http.Headers.AuthenticationHeaderValue._parameter];value;dfc-generated | | System.Net.Http.Headers;AuthenticationHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.AuthenticationHeaderValue._parameter];ReturnValue.SyntheticField[System.Net.Http.Headers.AuthenticationHeaderValue._parameter];value;dfc-generated | | System.Net.Http.Headers;AuthenticationHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.AuthenticationHeaderValue._scheme];ReturnValue.SyntheticField[System.Net.Http.Headers.AuthenticationHeaderValue._scheme];value;dfc-generated | -| System.Net.Http.Headers;AuthenticationHeaderValue;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;AuthenticationHeaderValue;ToString;();Argument[this].SyntheticField[System.Net.Http.Headers.AuthenticationHeaderValue._parameter];ReturnValue;taint;dfc-generated | | System.Net.Http.Headers;AuthenticationHeaderValue;ToString;();Argument[this].SyntheticField[System.Net.Http.Headers.AuthenticationHeaderValue._scheme];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;AuthenticationHeaderValue;get_Parameter;();Argument[this].SyntheticField[System.Net.Http.Headers.AuthenticationHeaderValue._parameter];ReturnValue;value;dfc-generated | @@ -15579,13 +13652,10 @@ summary | System.Net.Http.Headers;ContentDispositionHeaderValue;ToString;();Argument[this].SyntheticField[System.Net.Http.Headers.ContentDispositionHeaderValue._dispositionType];ReturnValue;taint;dfc-generated | | System.Net.Http.Headers;ContentRangeHeaderValue;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;EntityTagHeaderValue;Clone;();Argument[this].Property[System.Net.Http.Headers.EntityTagHeaderValue.Tag];ReturnValue.Property[System.Net.Http.Headers.EntityTagHeaderValue.Tag];value;dfc-generated | -| System.Net.Http.Headers;EntityTagHeaderValue;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;EntityTagHeaderValue;EntityTagHeaderValue;(System.String,System.Boolean);Argument[0];Argument[this].Property[System.Net.Http.Headers.EntityTagHeaderValue.Tag];value;dfc-generated | | System.Net.Http.Headers;EntityTagHeaderValue;ToString;();Argument[this].Property[System.Net.Http.Headers.EntityTagHeaderValue.Tag];ReturnValue;value;dfc-generated | -| System.Net.Http.Headers;HeaderStringValues+Enumerator;get_Current;();Argument[this].Property[System.Net.Http.Headers.HeaderStringValues+Enumerator.Current];ReturnValue;value;df-generated | | System.Net.Http.Headers;HeaderStringValues+Enumerator;get_Current;();Argument[this].Property[System.Net.Http.Headers.HeaderStringValues+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;HeaderStringValues+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Net.Http.Headers;HeaderStringValues+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Net.Http.Headers;HeaderStringValues;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Net.Http.Headers;HeaderStringValues;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Net.Http.Headers;HeaderStringValues;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | @@ -15641,7 +13711,6 @@ summary | System.Net.Http.Headers;NameValueWithParametersHeaderValue;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;ProductHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.ProductHeaderValue._name];ReturnValue.SyntheticField[System.Net.Http.Headers.ProductHeaderValue._name];value;dfc-generated | | System.Net.Http.Headers;ProductHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.ProductHeaderValue._version];ReturnValue.SyntheticField[System.Net.Http.Headers.ProductHeaderValue._version];value;dfc-generated | -| System.Net.Http.Headers;ProductHeaderValue;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;ProductHeaderValue;ProductHeaderValue;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Net.Http.Headers.ProductHeaderValue._name];value;dfc-generated | | System.Net.Http.Headers;ProductHeaderValue;ProductHeaderValue;(System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Net.Http.Headers.ProductHeaderValue._version];value;dfc-generated | | System.Net.Http.Headers;ProductHeaderValue;ToString;();Argument[this].SyntheticField[System.Net.Http.Headers.ProductHeaderValue._name];ReturnValue;value;dfc-generated | @@ -15650,7 +13719,6 @@ summary | System.Net.Http.Headers;ProductHeaderValue;get_Version;();Argument[this].SyntheticField[System.Net.Http.Headers.ProductHeaderValue._version];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;ProductInfoHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.ProductInfoHeaderValue._comment];ReturnValue.SyntheticField[System.Net.Http.Headers.ProductInfoHeaderValue._comment];value;dfc-generated | | System.Net.Http.Headers;ProductInfoHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.ProductInfoHeaderValue._product];ReturnValue.SyntheticField[System.Net.Http.Headers.ProductInfoHeaderValue._product];value;dfc-generated | -| System.Net.Http.Headers;ProductInfoHeaderValue;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;ProductInfoHeaderValue;ProductInfoHeaderValue;(System.Net.Http.Headers.ProductHeaderValue);Argument[0];Argument[this].SyntheticField[System.Net.Http.Headers.ProductInfoHeaderValue._product];value;dfc-generated | | System.Net.Http.Headers;ProductInfoHeaderValue;ProductInfoHeaderValue;(System.String);Argument[0];Argument[this].SyntheticField[System.Net.Http.Headers.ProductInfoHeaderValue._comment];value;dfc-generated | | System.Net.Http.Headers;ProductInfoHeaderValue;ToString;();Argument[this].SyntheticField[System.Net.Http.Headers.ProductInfoHeaderValue._comment];ReturnValue;value;dfc-generated | @@ -15658,7 +13726,6 @@ summary | System.Net.Http.Headers;ProductInfoHeaderValue;get_Product;();Argument[this].SyntheticField[System.Net.Http.Headers.ProductInfoHeaderValue._product];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;RangeConditionHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.RangeConditionHeaderValue._date];ReturnValue.SyntheticField[System.Net.Http.Headers.RangeConditionHeaderValue._date];value;dfc-generated | | System.Net.Http.Headers;RangeConditionHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.RangeConditionHeaderValue._entityTag];ReturnValue.SyntheticField[System.Net.Http.Headers.RangeConditionHeaderValue._entityTag];value;dfc-generated | -| System.Net.Http.Headers;RangeConditionHeaderValue;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;RangeConditionHeaderValue;RangeConditionHeaderValue;(System.DateTimeOffset);Argument[0];Argument[this].SyntheticField[System.Net.Http.Headers.RangeConditionHeaderValue._date];value;dfc-generated | | System.Net.Http.Headers;RangeConditionHeaderValue;RangeConditionHeaderValue;(System.Net.Http.Headers.EntityTagHeaderValue);Argument[0];Argument[this].SyntheticField[System.Net.Http.Headers.RangeConditionHeaderValue._entityTag];value;dfc-generated | | System.Net.Http.Headers;RangeConditionHeaderValue;ToString;();Argument[this].SyntheticField[System.Net.Http.Headers.RangeConditionHeaderValue._entityTag].Property[System.Net.Http.Headers.EntityTagHeaderValue.Tag];ReturnValue;value;dfc-generated | @@ -15668,13 +13735,11 @@ summary | System.Net.Http.Headers;RangeItemHeaderValue;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;RetryConditionHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.RetryConditionHeaderValue._date];ReturnValue.SyntheticField[System.Net.Http.Headers.RetryConditionHeaderValue._date];value;dfc-generated | | System.Net.Http.Headers;RetryConditionHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.RetryConditionHeaderValue._delta];ReturnValue.SyntheticField[System.Net.Http.Headers.RetryConditionHeaderValue._delta];value;dfc-generated | -| System.Net.Http.Headers;RetryConditionHeaderValue;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;RetryConditionHeaderValue;RetryConditionHeaderValue;(System.DateTimeOffset);Argument[0];Argument[this].SyntheticField[System.Net.Http.Headers.RetryConditionHeaderValue._date];value;dfc-generated | | System.Net.Http.Headers;RetryConditionHeaderValue;RetryConditionHeaderValue;(System.TimeSpan);Argument[0];Argument[this].SyntheticField[System.Net.Http.Headers.RetryConditionHeaderValue._delta];value;dfc-generated | | System.Net.Http.Headers;RetryConditionHeaderValue;get_Date;();Argument[this].SyntheticField[System.Net.Http.Headers.RetryConditionHeaderValue._date];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;RetryConditionHeaderValue;get_Delta;();Argument[this].SyntheticField[System.Net.Http.Headers.RetryConditionHeaderValue._delta];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;StringWithQualityHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.StringWithQualityHeaderValue._value];ReturnValue.SyntheticField[System.Net.Http.Headers.StringWithQualityHeaderValue._value];value;dfc-generated | -| System.Net.Http.Headers;StringWithQualityHeaderValue;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;StringWithQualityHeaderValue;StringWithQualityHeaderValue;(System.String);Argument[0];Argument[this].SyntheticField[System.Net.Http.Headers.StringWithQualityHeaderValue._value];value;dfc-generated | | System.Net.Http.Headers;StringWithQualityHeaderValue;StringWithQualityHeaderValue;(System.String,System.Double);Argument[0];Argument[this].SyntheticField[System.Net.Http.Headers.StringWithQualityHeaderValue._value];value;dfc-generated | | System.Net.Http.Headers;StringWithQualityHeaderValue;ToString;();Argument[this].SyntheticField[System.Net.Http.Headers.StringWithQualityHeaderValue._value];ReturnValue;value;dfc-generated | @@ -15699,7 +13764,6 @@ summary | System.Net.Http.Headers;WarningHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.WarningHeaderValue._agent];ReturnValue.SyntheticField[System.Net.Http.Headers.WarningHeaderValue._agent];value;dfc-generated | | System.Net.Http.Headers;WarningHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.WarningHeaderValue._date];ReturnValue.SyntheticField[System.Net.Http.Headers.WarningHeaderValue._date];value;dfc-generated | | System.Net.Http.Headers;WarningHeaderValue;Clone;();Argument[this].SyntheticField[System.Net.Http.Headers.WarningHeaderValue._text];ReturnValue.SyntheticField[System.Net.Http.Headers.WarningHeaderValue._text];value;dfc-generated | -| System.Net.Http.Headers;WarningHeaderValue;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;WarningHeaderValue;WarningHeaderValue;(System.Int32,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Net.Http.Headers.WarningHeaderValue._agent];value;dfc-generated | | System.Net.Http.Headers;WarningHeaderValue;WarningHeaderValue;(System.Int32,System.String,System.String);Argument[2];Argument[this].SyntheticField[System.Net.Http.Headers.WarningHeaderValue._text];value;dfc-generated | | System.Net.Http.Headers;WarningHeaderValue;WarningHeaderValue;(System.Int32,System.String,System.String,System.DateTimeOffset);Argument[1];Argument[this].SyntheticField[System.Net.Http.Headers.WarningHeaderValue._agent];value;dfc-generated | @@ -15726,14 +13790,8 @@ summary | System.Net.Http.Metrics;HttpMetricsEnrichmentContext;get_Response;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Http;ByteArrayContent;ByteArrayContent;(System.Byte[]);Argument[0];Argument[this].SyntheticField[System.Net.Http.ByteArrayContent._content];value;dfc-generated | | System.Net.Http;ByteArrayContent;ByteArrayContent;(System.Byte[],System.Int32,System.Int32);Argument[0];Argument[this].SyntheticField[System.Net.Http.ByteArrayContent._content];value;dfc-generated | -| System.Net.Http;ByteArrayContent;CreateContentReadStream;(System.Threading.CancellationToken);Argument[this].SyntheticField[System.Net.Http.ByteArrayContent._content].Element;ReturnValue;taint;df-generated | | System.Net.Http;ByteArrayContent;CreateContentReadStream;(System.Threading.CancellationToken);Argument[this].SyntheticField[System.Net.Http.ByteArrayContent._content].Element;ReturnValue;taint;dfc-generated | -| System.Net.Http;ByteArrayContent;CreateContentReadStream;(System.Threading.CancellationToken);Argument[this];ReturnValue;taint;df-generated | -| System.Net.Http;ByteArrayContent;CreateContentReadStream;(System.Threading.CancellationToken);Argument[this];ReturnValue;taint;dfc-generated | -| System.Net.Http;ByteArrayContent;CreateContentReadStreamAsync;();Argument[this].SyntheticField[System.Net.Http.ByteArrayContent._content].Element;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;df-generated | | System.Net.Http;ByteArrayContent;CreateContentReadStreamAsync;();Argument[this].SyntheticField[System.Net.Http.ByteArrayContent._content].Element;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Net.Http;ByteArrayContent;CreateContentReadStreamAsync;();Argument[this];ReturnValue;taint;df-generated | -| System.Net.Http;ByteArrayContent;CreateContentReadStreamAsync;();Argument[this];ReturnValue;taint;dfc-generated | | System.Net.Http;ByteArrayContent;SerializeToStream;(System.IO.Stream,System.Net.TransportContext,System.Threading.CancellationToken);Argument[this];Argument[0];taint;df-generated | | System.Net.Http;ByteArrayContent;SerializeToStreamAsync;(System.IO.Stream,System.Net.TransportContext);Argument[0];ReturnValue;taint;df-generated | | System.Net.Http;ByteArrayContent;SerializeToStreamAsync;(System.IO.Stream,System.Net.TransportContext);Argument[this];Argument[0];taint;df-generated | @@ -15779,7 +13837,6 @@ summary | System.Net.Http;HttpContent;SerializeToStreamAsync;(System.IO.Stream,System.Net.TransportContext,System.Threading.CancellationToken);Argument[this];Argument[0];taint;df-generated | | System.Net.Http;HttpContent;SerializeToStreamAsync;(System.IO.Stream,System.Net.TransportContext,System.Threading.CancellationToken);Argument[this];ReturnValue;taint;df-generated | | System.Net.Http;HttpIOException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;taint;dfc-generated | -| System.Net.Http;HttpIOException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Net.Http;HttpMessageInvoker;HttpMessageInvoker;(System.Net.Http.HttpMessageHandler,System.Boolean);Argument[0];Argument[this];taint;df-generated | | System.Net.Http;HttpMessageInvoker;Send;(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken);Argument[this];Argument[0];taint;df-generated | | System.Net.Http;HttpMessageInvoker;SendAsync;(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken);Argument[this];Argument[0];taint;df-generated | @@ -15793,7 +13850,6 @@ summary | System.Net.Http;HttpRequestMessage;get_Properties;();Argument[this].Property[System.Net.Http.HttpRequestMessage.Options];ReturnValue;value;dfc-generated | | System.Net.Http;HttpRequestOptions;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Net.Http;HttpRequestOptions;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | -| System.Net.Http;HttpRequestOptions;Add;(System.Collections.Generic.KeyValuePair);Argument[0];Argument[this].Element;value;manual | | System.Net.Http;HttpRequestOptions;Add;(System.String,System.Object);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Net.Http;HttpRequestOptions;Add;(System.String,System.Object);Argument[1];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Net.Http;HttpRequestOptions;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | @@ -15856,10 +13912,7 @@ summary | System.Net.Http;SocketsHttpPlaintextStreamFilterContext;get_PlaintextStream;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Http;StreamContent;CreateContentReadStream;(System.Threading.CancellationToken);Argument[this];ReturnValue;taint;df-generated | | System.Net.Http;StreamContent;CreateContentReadStreamAsync;();Argument[this];ReturnValue;taint;df-generated | -| System.Net.Http;StreamContent;SerializeToStream;(System.IO.Stream,System.Net.TransportContext,System.Threading.CancellationToken);Argument[this].SyntheticField[System.Net.Http.StreamContent._content];Argument[0];taint;df-generated | | System.Net.Http;StreamContent;SerializeToStream;(System.IO.Stream,System.Net.TransportContext,System.Threading.CancellationToken);Argument[this].SyntheticField[System.Net.Http.StreamContent._content];Argument[0];taint;dfc-generated | -| System.Net.Http;StreamContent;SerializeToStream;(System.IO.Stream,System.Net.TransportContext,System.Threading.CancellationToken);Argument[this];Argument[0];taint;df-generated | -| System.Net.Http;StreamContent;SerializeToStream;(System.IO.Stream,System.Net.TransportContext,System.Threading.CancellationToken);Argument[this];Argument[0];taint;dfc-generated | | System.Net.Http;StreamContent;SerializeToStreamAsync;(System.IO.Stream,System.Net.TransportContext);Argument[0];ReturnValue;taint;df-generated | | System.Net.Http;StreamContent;SerializeToStreamAsync;(System.IO.Stream,System.Net.TransportContext);Argument[this];Argument[0];taint;df-generated | | System.Net.Http;StreamContent;SerializeToStreamAsync;(System.IO.Stream,System.Net.TransportContext);Argument[this];ReturnValue;taint;df-generated | @@ -15877,8 +13930,6 @@ summary | System.Net.Mail;AlternateView;CreateAlternateViewFromString;(System.String,System.Net.Mime.ContentType);Argument[0];ReturnValue;taint;df-generated | | System.Net.Mail;AlternateView;CreateAlternateViewFromString;(System.String,System.Net.Mime.ContentType);Argument[1];ReturnValue;taint;df-generated | | System.Net.Mail;AlternateView;CreateAlternateViewFromString;(System.String,System.Text.Encoding,System.String);Argument[0];ReturnValue;taint;df-generated | -| System.Net.Mail;AlternateViewCollection;InsertItem;(System.Int32,System.Net.Mail.AlternateView);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | -| System.Net.Mail;AlternateViewCollection;SetItem;(System.Int32,System.Net.Mail.AlternateView);Argument[1];Argument[this];taint;df-generated | | System.Net.Mail;Attachment;Attachment;(System.IO.Stream,System.Net.Mime.ContentType);Argument[1];Argument[this];taint;df-generated | | System.Net.Mail;Attachment;Attachment;(System.IO.Stream,System.String);Argument[1];Argument[this];taint;df-generated | | System.Net.Mail;Attachment;Attachment;(System.IO.Stream,System.String,System.String);Argument[1];Argument[this];taint;df-generated | @@ -15900,14 +13951,10 @@ summary | System.Net.Mail;AttachmentBase;AttachmentBase;(System.String,System.Net.Mime.ContentType);Argument[0];Argument[this].SyntheticField[System.Net.Mail.AttachmentBase._part].SyntheticField[System.Net.Mime.MimePart._stream];taint;dfc-generated | | System.Net.Mail;AttachmentBase;AttachmentBase;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Net.Mail.AttachmentBase._part].SyntheticField[System.Net.Mime.MimePart._stream];taint;dfc-generated | | System.Net.Mail;AttachmentBase;get_ContentStream;();Argument[this].SyntheticField[System.Net.Mail.AttachmentBase._part].SyntheticField[System.Net.Mime.MimePart._stream];ReturnValue;value;dfc-generated | -| System.Net.Mail;AttachmentCollection;InsertItem;(System.Int32,System.Net.Mail.Attachment);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | -| System.Net.Mail;AttachmentCollection;SetItem;(System.Int32,System.Net.Mail.Attachment);Argument[1];Argument[this];taint;df-generated | | System.Net.Mail;LinkedResource;CreateLinkedResourceFromString;(System.String);Argument[0];ReturnValue;taint;df-generated | | System.Net.Mail;LinkedResource;CreateLinkedResourceFromString;(System.String,System.Net.Mime.ContentType);Argument[0];ReturnValue;taint;df-generated | | System.Net.Mail;LinkedResource;CreateLinkedResourceFromString;(System.String,System.Net.Mime.ContentType);Argument[1];ReturnValue;taint;df-generated | | System.Net.Mail;LinkedResource;CreateLinkedResourceFromString;(System.String,System.Text.Encoding,System.String);Argument[0];ReturnValue;taint;df-generated | -| System.Net.Mail;LinkedResourceCollection;InsertItem;(System.Int32,System.Net.Mail.LinkedResource);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | -| System.Net.Mail;LinkedResourceCollection;SetItem;(System.Int32,System.Net.Mail.LinkedResource);Argument[1];Argument[this];taint;df-generated | | System.Net.Mail;MailAddress;MailAddress;(System.String,System.String,System.Text.Encoding);Argument[0];Argument[this].SyntheticField[System.Net.Mail.MailAddress._displayName];taint;dfc-generated | | System.Net.Mail;MailAddress;MailAddress;(System.String,System.String,System.Text.Encoding);Argument[0];Argument[this].SyntheticField[System.Net.Mail.MailAddress._host];taint;dfc-generated | | System.Net.Mail;MailAddress;MailAddress;(System.String,System.String,System.Text.Encoding);Argument[0];Argument[this].SyntheticField[System.Net.Mail.MailAddress._userName];taint;dfc-generated | @@ -15930,8 +13977,6 @@ summary | System.Net.Mail;MailAddress;get_Host;();Argument[this].SyntheticField[System.Net.Mail.MailAddress._host];ReturnValue;value;dfc-generated | | System.Net.Mail;MailAddress;get_User;();Argument[this].SyntheticField[System.Net.Mail.MailAddress._userName];ReturnValue;value;dfc-generated | | System.Net.Mail;MailAddressCollection;Add;(System.String);Argument[0];Argument[this].Element;value;manual | -| System.Net.Mail;MailAddressCollection;InsertItem;(System.Int32,System.Net.Mail.MailAddress);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | -| System.Net.Mail;MailAddressCollection;SetItem;(System.Int32,System.Net.Mail.MailAddress);Argument[1];Argument[this];taint;df-generated | | System.Net.Mail;MailAddressCollection;ToString;();Argument[this].Element;ReturnValue;taint;dfc-generated | | System.Net.Mail;MailMessage;MailMessage;(System.Net.Mail.MailAddress,System.Net.Mail.MailAddress);Argument[0];Argument[this];taint;df-generated | | System.Net.Mail;MailMessage;MailMessage;(System.Net.Mail.MailAddress,System.Net.Mail.MailAddress);Argument[1];Argument[this];taint;df-generated | @@ -15949,15 +13994,12 @@ summary | System.Net.Mail;SmtpClient;remove_SendCompleted;(System.Net.Mail.SendCompletedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Net.Mail;SmtpException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Net.Mail;SmtpFailedRecipientException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientException._failedRecipient];Argument[0];taint;dfc-generated | -| System.Net.Mail;SmtpFailedRecipientException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Net.Mail;SmtpFailedRecipientException;SmtpFailedRecipientException;(System.Net.Mail.SmtpStatusCode,System.String);Argument[1];Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientException._failedRecipient];value;dfc-generated | | System.Net.Mail;SmtpFailedRecipientException;SmtpFailedRecipientException;(System.Net.Mail.SmtpStatusCode,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientException._failedRecipient];value;dfc-generated | | System.Net.Mail;SmtpFailedRecipientException;SmtpFailedRecipientException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientException._failedRecipient];taint;dfc-generated | | System.Net.Mail;SmtpFailedRecipientException;SmtpFailedRecipientException;(System.String,System.String,System.Exception);Argument[1];Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientException._failedRecipient];value;dfc-generated | | System.Net.Mail;SmtpFailedRecipientException;get_FailedRecipient;();Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientException._failedRecipient];ReturnValue;value;dfc-generated | -| System.Net.Mail;SmtpFailedRecipientsException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientException._failedRecipient];Argument[0];taint;dfc-generated | | System.Net.Mail;SmtpFailedRecipientsException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientsException._innerExceptions];Argument[0];taint;dfc-generated | -| System.Net.Mail;SmtpFailedRecipientsException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Net.Mail;SmtpFailedRecipientsException;SmtpFailedRecipientsException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientsException._innerExceptions];taint;dfc-generated | | System.Net.Mail;SmtpFailedRecipientsException;SmtpFailedRecipientsException;(System.String,System.Exception);Argument[1];Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientsException._innerExceptions].Element;value;dfc-generated | | System.Net.Mail;SmtpFailedRecipientsException;SmtpFailedRecipientsException;(System.String,System.Net.Mail.SmtpFailedRecipientException[]);Argument[1];Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientsException._innerExceptions];value;dfc-generated | @@ -16050,10 +14092,8 @@ summary | System.Net.Quic;QuicConnectionOptions;set_StreamCapacityCallback;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Net.Quic;QuicListener;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Quic;QuicListenerOptions;set_ConnectionOptionsCallback;(System.Func>);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Net.Quic;QuicStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Net.Quic;QuicStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.Net.Quic;QuicStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.Net.Quic;QuicStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Net.Quic;QuicStream;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Quic;QuicStream;FlushAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.Net.Quic;QuicStream;Read;(System.Byte[],System.Int32,System.Int32);Argument[this];Argument[0];taint;manual | @@ -16091,10 +14131,8 @@ summary | System.Net.Security;NegotiateStream;BeginAuthenticateAsServer;(System.Net.NetworkCredential,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Net.Security;NegotiateStream;BeginAuthenticateAsServer;(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel,System.AsyncCallback,System.Object);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Net.Security;NegotiateStream;BeginAuthenticateAsServer;(System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Net.Security;NegotiateStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Net.Security;NegotiateStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.Net.Security;NegotiateStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.Net.Security;NegotiateStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Net.Security;NegotiateStream;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Security;NegotiateStream;FlushAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.Net.Security;NegotiateStream;Read;(System.Byte[],System.Int32,System.Int32);Argument[this];Argument[0];taint;manual | @@ -16130,24 +14168,16 @@ summary | System.Net.Security;SslStream;AuthenticateAsServerAsync;(System.Net.Security.ServerOptionsSelectionCallback,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Net.Security;SslStream;AuthenticateAsServerAsync;(System.Net.Security.SslServerAuthenticationOptions,System.Threading.CancellationToken);Argument[0];Argument[this];taint;df-generated | | System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.AsyncCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Net.Security.SslStream._sslAuthenticationOptions].SyntheticField[System.Net.Security.SslAuthenticationOptions.TargetHost];value;dfc-generated | -| System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.AsyncCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Net.Security.SslStream._sslAuthenticationOptions].SyntheticField[System.Net.Security.SslAuthenticationOptions.TargetHost];value;hq-generated | -| System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean,System.AsyncCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Net.Security.SslStream._sslAuthenticationOptions].SyntheticField[System.Net.Security.SslAuthenticationOptions.TargetHost];value;dfc-generated | -| System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean,System.AsyncCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Net.Security.SslStream._sslAuthenticationOptions].SyntheticField[System.Net.Security.SslAuthenticationOptions.TargetHost];value;hq-generated | -| System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Security.Authentication.SslProtocols,System.Boolean,System.AsyncCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Net.Security.SslStream._sslAuthenticationOptions].SyntheticField[System.Net.Security.SslAuthenticationOptions.TargetHost];value;dfc-generated | -| System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Security.Authentication.SslProtocols,System.Boolean,System.AsyncCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Net.Security.SslStream._sslAuthenticationOptions].SyntheticField[System.Net.Security.SslAuthenticationOptions.TargetHost];value;hq-generated | -| System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Security.Authentication.SslProtocols,System.Boolean,System.AsyncCallback,System.Object);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Security.Authentication.SslProtocols,System.Boolean,System.AsyncCallback,System.Object);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Net.Security;SslStream;BeginAuthenticateAsServer;(System.Security.Cryptography.X509Certificates.X509Certificate,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Net.Security;SslStream;BeginAuthenticateAsServer;(System.Security.Cryptography.X509Certificates.X509Certificate,System.Boolean,System.Boolean,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Net.Security;SslStream;BeginAuthenticateAsServer;(System.Security.Cryptography.X509Certificates.X509Certificate,System.Boolean,System.Security.Authentication.SslProtocols,System.Boolean,System.AsyncCallback,System.Object);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | -| System.Net.Security;SslStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Net.Security;SslStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.Net.Security;SslStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.Net.Security;SslStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Net.Security;SslStream;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Security;SslStream;FlushAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.Net.Security;SslStream;Read;(System.Byte[],System.Int32,System.Int32);Argument[this];Argument[0];taint;manual | @@ -16190,10 +14220,8 @@ summary | System.Net.Sockets;MulticastOption;MulticastOption;(System.Net.IPAddress,System.Int32);Argument[0];Argument[this];taint;df-generated | | System.Net.Sockets;MulticastOption;MulticastOption;(System.Net.IPAddress,System.Net.IPAddress);Argument[0];Argument[this];taint;df-generated | | System.Net.Sockets;MulticastOption;MulticastOption;(System.Net.IPAddress,System.Net.IPAddress);Argument[1];Argument[this];taint;df-generated | -| System.Net.Sockets;NetworkStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Net.Sockets;NetworkStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.Net.Sockets;NetworkStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.Net.Sockets;NetworkStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Net.Sockets;NetworkStream;FlushAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.Net.Sockets;NetworkStream;NetworkStream;(System.Net.Sockets.Socket,System.IO.FileAccess,System.Boolean);Argument[0];Argument[this].SyntheticField[System.Net.Sockets.NetworkStream._streamSocket];value;dfc-generated | | System.Net.Sockets;NetworkStream;Read;(System.Byte[],System.Int32,System.Int32);Argument[this];Argument[0];taint;manual | @@ -16278,7 +14306,6 @@ summary | System.Net.Sockets;SocketAsyncEventArgs;get_ReceiveMessageFromPacketInfo;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Sockets;SocketAsyncEventArgs;remove_Completed;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Net.Sockets;SocketException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Net.Sockets;SocketException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Net.Sockets;SocketTaskExtensions;ConnectAsync;(System.Net.Sockets.Socket,System.Net.EndPoint);Argument[1];Argument[0];taint;df-generated | | System.Net.Sockets;SocketTaskExtensions;ConnectAsync;(System.Net.Sockets.Socket,System.Net.EndPoint,System.Threading.CancellationToken);Argument[1];Argument[0];taint;df-generated | | System.Net.Sockets;SocketTaskExtensions;SendToAsync;(System.Net.Sockets.Socket,System.ArraySegment,System.Net.Sockets.SocketFlags,System.Net.EndPoint);Argument[3];Argument[0];taint;df-generated | @@ -16342,10 +14369,8 @@ summary | System.Net.WebSockets;WebSocketException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Net.WebSockets;WebSocketReceiveResult;WebSocketReceiveResult;(System.Int32,System.Net.WebSockets.WebSocketMessageType,System.Boolean,System.Nullable,System.String);Argument[3];Argument[this].Property[System.Net.WebSockets.WebSocketReceiveResult.CloseStatus];value;dfc-generated | | System.Net.WebSockets;WebSocketReceiveResult;WebSocketReceiveResult;(System.Int32,System.Net.WebSockets.WebSocketMessageType,System.Boolean,System.Nullable,System.String);Argument[4];Argument[this].Property[System.Net.WebSockets.WebSocketReceiveResult.CloseStatusDescription];value;dfc-generated | -| System.Net.WebSockets;WebSocketStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Net.WebSockets;WebSocketStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.Net.WebSockets;WebSocketStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.Net.WebSockets;WebSocketStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Net.WebSockets;WebSocketStream;Create;(System.Net.WebSockets.WebSocket,System.Net.WebSockets.WebSocketMessageType,System.TimeSpan);Argument[2];ReturnValue;taint;df-generated | | System.Net.WebSockets;WebSocketStream;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | | System.Net.WebSockets;WebSocketStream;FlushAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | @@ -16407,12 +14432,10 @@ summary | System.Net;FileWebRequest;BeginGetResponse;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Net;FileWebRequest;EndGetRequestStream;(System.IAsyncResult);Argument[this];ReturnValue;taint;df-generated | | System.Net;FileWebRequest;EndGetResponse;(System.IAsyncResult);Argument[this];ReturnValue;taint;df-generated | -| System.Net;FileWebRequest;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Net;FileWebRequest;GetRequestStream;();Argument[this];ReturnValue;taint;df-generated | | System.Net;FileWebRequest;GetRequestStreamAsync;();Argument[this];ReturnValue;taint;df-generated | | System.Net;FileWebRequest;GetResponse;();Argument[this];ReturnValue;taint;df-generated | | System.Net;FileWebRequest;get_RequestUri;();Argument[this].SyntheticField[System.Net.FileWebRequest._uri];ReturnValue;value;dfc-generated | -| System.Net;FileWebResponse;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Net;FileWebResponse;GetResponseStream;();Argument[this];ReturnValue;taint;df-generated | | System.Net;FileWebResponse;get_Headers;();Argument[this];ReturnValue;taint;df-generated | | System.Net;FileWebResponse;get_ResponseUri;();Argument[this];ReturnValue;taint;df-generated | @@ -16432,10 +14455,8 @@ summary | System.Net;FtpWebResponse;get_WelcomeMessage;();Argument[this];ReturnValue;taint;df-generated | | System.Net;HttpContinueDelegate;BeginInvoke;(System.Int32,System.Net.WebHeaderCollection,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Net;HttpListener+ExtendedProtectionSelector;BeginInvoke;(System.Net.HttpListenerRequest,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Net;HttpListener;BeginGetContext;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Net;HttpListener;BeginGetContext;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Net;HttpListener;BeginGetContext;(System.AsyncCallback,System.Object);Argument[1];ReturnValue.SyntheticField[System.Net.ListenerAsyncResult._state];value;dfc-generated | -| System.Net;HttpListener;BeginGetContext;(System.AsyncCallback,System.Object);Argument[1];ReturnValue.SyntheticField[System.Net.ListenerAsyncResult._state];value;hq-generated | | System.Net;HttpListener;EndGetContext;(System.IAsyncResult);Argument[0];ReturnValue;taint;df-generated | | System.Net;HttpListener;GetContext;();Argument[this];ReturnValue;taint;df-generated | | System.Net;HttpListener;get_DefaultServiceNames;();Argument[this];ReturnValue;taint;df-generated | @@ -16478,16 +14499,9 @@ summary | System.Net;HttpListenerResponse;get_OutputStream;();Argument[this];ReturnValue;taint;df-generated | | System.Net;HttpWebRequest;BeginGetRequestStream;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Net;HttpWebRequest;BeginGetResponse;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Net;HttpWebRequest;EndGetRequestStream;(System.IAsyncResult);Argument[0].Property[System.Threading.Tasks.Task`1.Result];ReturnValue;value;df-generated | | System.Net;HttpWebRequest;EndGetRequestStream;(System.IAsyncResult);Argument[0].Property[System.Threading.Tasks.Task`1.Result];ReturnValue;value;dfc-generated | -| System.Net;HttpWebRequest;EndGetRequestStream;(System.IAsyncResult);Argument[this];ReturnValue;taint;df-generated | -| System.Net;HttpWebRequest;EndGetRequestStream;(System.IAsyncResult);Argument[this];ReturnValue;taint;dfc-generated | | System.Net;HttpWebRequest;EndGetRequestStream;(System.IAsyncResult,System.Net.TransportContext);Argument[0].Property[System.Threading.Tasks.Task`1.Result];ReturnValue;value;dfc-generated | -| System.Net;HttpWebRequest;EndGetResponse;(System.IAsyncResult);Argument[0].Property[System.Threading.Tasks.Task`1.Result];ReturnValue;value;df-generated | | System.Net;HttpWebRequest;EndGetResponse;(System.IAsyncResult);Argument[0].Property[System.Threading.Tasks.Task`1.Result];ReturnValue;value;dfc-generated | -| System.Net;HttpWebRequest;EndGetResponse;(System.IAsyncResult);Argument[this];ReturnValue;taint;df-generated | -| System.Net;HttpWebRequest;EndGetResponse;(System.IAsyncResult);Argument[this];ReturnValue;taint;dfc-generated | -| System.Net;HttpWebRequest;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Net;HttpWebRequest;GetRequestStream;();Argument[this];ReturnValue;taint;df-generated | | System.Net;HttpWebRequest;GetRequestStream;(System.Net.TransportContext);Argument[this];ReturnValue;taint;df-generated | | System.Net;HttpWebRequest;GetResponse;();Argument[this];ReturnValue;taint;df-generated | @@ -16495,7 +14509,6 @@ summary | System.Net;HttpWebRequest;get_RequestUri;();Argument[this].SyntheticField[System.Net.HttpWebRequest._requestUri];ReturnValue;value;dfc-generated | | System.Net;HttpWebRequest;set_ContinueDelegate;(System.Net.HttpContinueDelegate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Net;HttpWebRequest;set_ServerCertificateValidationCallback;(System.Net.Security.RemoteCertificateValidationCallback);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Net;HttpWebResponse;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Net;HttpWebResponse;GetResponseHeader;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Net;HttpWebResponse;GetResponseStream;();Argument[this];ReturnValue;taint;df-generated | | System.Net;HttpWebResponse;get_CharacterSet;();Argument[this];ReturnValue;taint;df-generated | @@ -16627,8 +14640,6 @@ summary | System.Net;WebPermission;Copy;();Argument[this];ReturnValue;value;dfc-generated | | System.Net;WebPermission;Intersect;(System.Security.IPermission);Argument[0];ReturnValue;value;dfc-generated | | System.Net;WebPermission;Union;(System.Security.IPermission);Argument[this];ReturnValue;taint;df-generated | -| System.Net;WebProxy;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | -| System.Net;WebProxy;GetProxy;(System.Uri);Argument[0];ReturnValue;value;dfc-generated | | System.Net;WebProxy;GetProxy;(System.Uri);Argument[this].Property[System.Net.WebProxy.Address];ReturnValue;value;dfc-generated | | System.Net;WebProxy;WebProxy;(System.Uri,System.Boolean,System.String[],System.Net.ICredentials);Argument[0];Argument[this].Property[System.Net.WebProxy.Address];value;dfc-generated | | System.Net;WebProxy;WebProxy;(System.Uri,System.Boolean,System.String[],System.Net.ICredentials);Argument[3];Argument[this].Property[System.Net.WebProxy.Credentials];value;dfc-generated | @@ -16641,11 +14652,9 @@ summary | System.Net;WebRequest;CreateHttp;(System.Uri);Argument[0];ReturnValue.SyntheticField[System.Net.HttpWebRequest._requestUri];value;dfc-generated | | System.Net;WebRequest;EndGetRequestStream;(System.IAsyncResult);Argument[this];ReturnValue;taint;df-generated | | System.Net;WebRequest;EndGetResponse;(System.IAsyncResult);Argument[this];ReturnValue;taint;df-generated | -| System.Net;WebRequest;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Net;WebRequest;GetRequestStream;();Argument[this];ReturnValue;taint;df-generated | | System.Net;WebRequest;GetRequestStreamAsync;();Argument[this];ReturnValue;taint;df-generated | | System.Net;WebRequest;GetResponse;();Argument[this];ReturnValue;taint;df-generated | -| System.Net;WebResponse;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Net;WebResponse;GetResponseStream;();Argument[this];ReturnValue;taint;df-generated | | System.Net;WebResponse;get_Headers;();Argument[this];ReturnValue;taint;df-generated | | System.Net;WebResponse;get_ResponseUri;();Argument[this];ReturnValue;taint;df-generated | @@ -16681,7 +14690,6 @@ summary | System.Numerics;BigInteger;MinMagnitudeNumber;(System.Numerics.BigInteger,System.Numerics.BigInteger);Argument[1];ReturnValue;value;dfc-generated | | System.Numerics;BigInteger;MinNumber;(System.Numerics.BigInteger,System.Numerics.BigInteger);Argument[0];ReturnValue;value;dfc-generated | | System.Numerics;BigInteger;MinNumber;(System.Numerics.BigInteger,System.Numerics.BigInteger);Argument[1];ReturnValue;value;dfc-generated | -| System.Numerics;BigInteger;MultiplyAddEstimate;(System.Numerics.BigInteger,System.Numerics.BigInteger,System.Numerics.BigInteger);Argument[2];ReturnValue;taint;dfc-generated | | System.Numerics;BigInteger;Pow;(System.Numerics.BigInteger,System.Int32);Argument[0];ReturnValue;value;dfc-generated | | System.Numerics;BigInteger;Remainder;(System.Numerics.BigInteger,System.Numerics.BigInteger);Argument[0];ReturnValue;value;dfc-generated | | System.Numerics;BigInteger;RotateLeft;(System.Numerics.BigInteger,System.Int32);Argument[0];ReturnValue;value;dfc-generated | @@ -16698,7 +14706,6 @@ summary | System.Numerics;Complex;MinMagnitude;(System.Numerics.Complex,System.Numerics.Complex);Argument[1];ReturnValue;value;dfc-generated | | System.Numerics;Complex;MinMagnitudeNumber;(System.Numerics.Complex,System.Numerics.Complex);Argument[0];ReturnValue;value;dfc-generated | | System.Numerics;Complex;MinMagnitudeNumber;(System.Numerics.Complex,System.Numerics.Complex);Argument[1];ReturnValue;value;dfc-generated | -| System.Numerics;Complex;MultiplyAddEstimate;(System.Numerics.Complex,System.Numerics.Complex,System.Numerics.Complex);Argument[2];ReturnValue;taint;dfc-generated | | System.Numerics;Complex;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System.Numerics;IAdditionOperators;op_CheckedAddition;(TSelf,TOther);Argument[0];ReturnValue;taint;dfc-generated | | System.Numerics;IAdditionOperators;op_CheckedAddition;(TSelf,TOther);Argument[1];ReturnValue;taint;dfc-generated | @@ -16818,19 +14825,10 @@ summary | System.Reflection.Emit;DynamicMethod;Invoke;(System.Object,System.Reflection.BindingFlags,System.Reflection.Binder,System.Object[],System.Globalization.CultureInfo);Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Emit;DynamicMethod;get_DeclaringType;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Emit;DynamicMethod;get_MethodHandle;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Emit;DynamicMethod;get_Module;();Argument[this].SyntheticField[System.Reflection.Emit.DynamicMethod._module];ReturnValue;value;df-generated | | System.Reflection.Emit;DynamicMethod;get_Module;();Argument[this].SyntheticField[System.Reflection.Emit.DynamicMethod._module];ReturnValue;value;dfc-generated | -| System.Reflection.Emit;DynamicMethod;get_Module;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Emit;DynamicMethod;get_Module;();Argument[this];ReturnValue;taint;dfc-generated | -| System.Reflection.Emit;DynamicMethod;get_Name;();Argument[this].SyntheticField[System.Reflection.Emit.DynamicMethod._name];ReturnValue;value;df-generated | | System.Reflection.Emit;DynamicMethod;get_Name;();Argument[this].SyntheticField[System.Reflection.Emit.DynamicMethod._name];ReturnValue;value;dfc-generated | -| System.Reflection.Emit;DynamicMethod;get_Name;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Emit;DynamicMethod;get_Name;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Emit;DynamicMethod;get_ReflectedType;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Emit;DynamicMethod;get_ReturnParameter;();Argument[this];ReturnValue.Field[System.Reflection.ParameterInfo.MemberImpl];value;df-generated | | System.Reflection.Emit;DynamicMethod;get_ReturnParameter;();Argument[this];ReturnValue.Field[System.Reflection.ParameterInfo.MemberImpl];value;dfc-generated | -| System.Reflection.Emit;DynamicMethod;get_ReturnParameter;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Emit;DynamicMethod;get_ReturnParameter;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Emit;DynamicMethod;get_ReturnType;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Emit;DynamicMethod;get_ReturnTypeCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Emit;EnumBuilder;GetConstructorImpl;(System.Reflection.BindingFlags,System.Reflection.Binder,System.Reflection.CallingConventions,System.Type[],System.Reflection.ParameterModifier[]);Argument[this];ReturnValue;taint;df-generated | @@ -17298,10 +15296,8 @@ summary | System.Reflection.Metadata.Ecma335;PermissionSetEncoder;AddPermission;(System.String,System.Collections.Immutable.ImmutableArray);Argument[this];ReturnValue;value;dfc-generated | | System.Reflection.Metadata.Ecma335;PermissionSetEncoder;AddPermission;(System.String,System.Reflection.Metadata.BlobBuilder);Argument[this];ReturnValue;value;dfc-generated | | System.Reflection.Metadata.Ecma335;PermissionSetEncoder;PermissionSetEncoder;(System.Reflection.Metadata.BlobBuilder);Argument[0];Argument[this].Property[System.Reflection.Metadata.Ecma335.PermissionSetEncoder.Builder];value;dfc-generated | -| System.Reflection.Metadata.Ecma335;PortablePdbBuilder;PortablePdbBuilder;(System.Reflection.Metadata.Ecma335.MetadataBuilder,System.Collections.Immutable.ImmutableArray,System.Reflection.Metadata.MethodDefinitionHandle,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Reflection.Metadata.Ecma335;PortablePdbBuilder;PortablePdbBuilder;(System.Reflection.Metadata.Ecma335.MetadataBuilder,System.Collections.Immutable.ImmutableArray,System.Reflection.Metadata.MethodDefinitionHandle,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Reflection.Metadata.Ecma335;PortablePdbBuilder;PortablePdbBuilder;(System.Reflection.Metadata.Ecma335.MetadataBuilder,System.Collections.Immutable.ImmutableArray,System.Reflection.Metadata.MethodDefinitionHandle,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[3];Argument[this].Property[System.Reflection.Metadata.Ecma335.PortablePdbBuilder.IdProvider];value;dfc-generated | -| System.Reflection.Metadata.Ecma335;PortablePdbBuilder;PortablePdbBuilder;(System.Reflection.Metadata.Ecma335.MetadataBuilder,System.Collections.Immutable.ImmutableArray,System.Reflection.Metadata.MethodDefinitionHandle,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[3];Argument[this].Property[System.Reflection.Metadata.Ecma335.PortablePdbBuilder.IdProvider];value;hq-generated | | System.Reflection.Metadata.Ecma335;PortablePdbBuilder;Serialize;(System.Reflection.Metadata.BlobBuilder);Argument[0];Argument[this];taint;df-generated | | System.Reflection.Metadata.Ecma335;PortablePdbBuilder;Serialize;(System.Reflection.Metadata.BlobBuilder);Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata.Ecma335;ReturnTypeEncoder;ReturnTypeEncoder;(System.Reflection.Metadata.BlobBuilder);Argument[0];Argument[this].Property[System.Reflection.Metadata.Ecma335.ReturnTypeEncoder.Builder];value;dfc-generated | @@ -17311,12 +15307,9 @@ summary | System.Reflection.Metadata.Ecma335;SignatureDecoder;SignatureDecoder;(System.Reflection.Metadata.ISignatureTypeProvider,System.Reflection.Metadata.MetadataReader,TGenericContext);Argument[0];Argument[this];taint;df-generated | | System.Reflection.Metadata.Ecma335;SignatureDecoder;SignatureDecoder;(System.Reflection.Metadata.ISignatureTypeProvider,System.Reflection.Metadata.MetadataReader,TGenericContext);Argument[1];Argument[this];taint;df-generated | | System.Reflection.Metadata.Ecma335;SignatureDecoder;SignatureDecoder;(System.Reflection.Metadata.ISignatureTypeProvider,System.Reflection.Metadata.MetadataReader,TGenericContext);Argument[2];Argument[this];taint;df-generated | -| System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Action,System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Action,System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Action,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Action,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Action,System.Action);Argument[this];Argument[0].Parameter[0];value;dfc-generated | -| System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Action,System.Action);Argument[this];Argument[0].Parameter[0];value;hq-generated | | System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Reflection.Metadata.Ecma335.SignatureTypeEncoder,System.Reflection.Metadata.Ecma335.ArrayShapeEncoder);Argument[this];Argument[0];value;dfc-generated | | System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Pointer;();Argument[this];ReturnValue;value;dfc-generated | | System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;SZArray;();Argument[this];ReturnValue;value;dfc-generated | @@ -17325,10 +15318,7 @@ summary | System.Reflection.Metadata;AssemblyDefinition;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;AssemblyDefinition;GetDeclarativeSecurityAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;AssemblyFile;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;AssemblyFileHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.AssemblyFileHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;AssemblyFileHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.AssemblyFileHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;AssemblyFileHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;AssemblyFileHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;AssemblyFileHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;AssemblyFileHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;AssemblyNameInfo;AssemblyNameInfo;(System.String,System.Version,System.String,System.Reflection.AssemblyNameFlags,System.Collections.Immutable.ImmutableArray);Argument[0];Argument[this].Property[System.Reflection.Metadata.AssemblyNameInfo.Name];value;dfc-generated | @@ -17337,20 +15327,14 @@ summary | System.Reflection.Metadata;AssemblyNameInfo;AssemblyNameInfo;(System.String,System.Version,System.String,System.Reflection.AssemblyNameFlags,System.Collections.Immutable.ImmutableArray);Argument[4];Argument[this].Property[System.Reflection.Metadata.AssemblyNameInfo.PublicKeyOrToken];value;dfc-generated | | System.Reflection.Metadata;AssemblyNameInfo;get_FullName;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;AssemblyReference;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;AssemblyReferenceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.AssemblyReferenceHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;AssemblyReferenceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.AssemblyReferenceHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;AssemblyReferenceHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;AssemblyReferenceHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;AssemblyReferenceHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;AssemblyReferenceHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;AssemblyReferenceHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;BlobBuilder+Blobs;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;BlobBuilder+Blobs;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;BlobBuilder+Blobs;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;BlobBuilder+Blobs;get_Current;();Argument[this].Property[System.Reflection.Metadata.BlobBuilder+Blobs.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;BlobBuilder+Blobs;get_Current;();Argument[this].Property[System.Reflection.Metadata.BlobBuilder+Blobs.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;BlobBuilder+Blobs;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;BlobBuilder+Blobs;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;BlobBuilder;GetBlobs;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;BlobBuilder;LinkPrefix;(System.Reflection.Metadata.BlobBuilder);Argument[0];Argument[this];taint;df-generated | | System.Reflection.Metadata;BlobBuilder;LinkPrefix;(System.Reflection.Metadata.BlobBuilder);Argument[this];Argument[0];taint;df-generated | @@ -17369,10 +15353,7 @@ summary | System.Reflection.Metadata;BlobWriter;BlobWriter;(System.Byte[],System.Int32,System.Int32);Argument[0].Element;Argument[this];taint;df-generated | | System.Reflection.Metadata;BlobWriter;WriteBytes;(System.IO.Stream,System.Int32);Argument[0];Argument[this];taint;df-generated | | System.Reflection.Metadata;BlobWriter;get_Blob;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;CustomAttributeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.CustomAttributeHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;CustomAttributeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.CustomAttributeHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;CustomAttributeHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;CustomAttributeHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;CustomAttributeHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;CustomAttributeHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;CustomAttributeHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | @@ -17383,124 +15364,76 @@ summary | System.Reflection.Metadata;CustomAttributeTypedArgument;CustomAttributeTypedArgument;(TType,System.Object);Argument[1];Argument[this].Property[System.Reflection.Metadata.CustomAttributeTypedArgument`1.Value];value;dfc-generated | | System.Reflection.Metadata;CustomAttributeValue;CustomAttributeValue;(System.Collections.Immutable.ImmutableArray>,System.Collections.Immutable.ImmutableArray>);Argument[0];Argument[this].Property[System.Reflection.Metadata.CustomAttributeValue`1.FixedArguments];value;dfc-generated | | System.Reflection.Metadata;CustomAttributeValue;CustomAttributeValue;(System.Collections.Immutable.ImmutableArray>,System.Collections.Immutable.ImmutableArray>);Argument[1];Argument[this].Property[System.Reflection.Metadata.CustomAttributeValue`1.NamedArguments];value;dfc-generated | -| System.Reflection.Metadata;CustomDebugInformationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.CustomDebugInformationHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;CustomDebugInformationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.CustomDebugInformationHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;CustomDebugInformationHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;CustomDebugInformationHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;CustomDebugInformationHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;CustomDebugInformationHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;CustomDebugInformationHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;DeclarativeSecurityAttributeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.DeclarativeSecurityAttributeHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;DeclarativeSecurityAttributeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.DeclarativeSecurityAttributeHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;DeclarativeSecurityAttributeHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;DeclarativeSecurityAttributeHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;DeclarativeSecurityAttributeHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;DeclarativeSecurityAttributeHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;DeclarativeSecurityAttributeHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;DocumentHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.DocumentHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;DocumentHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.DocumentHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;DocumentHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;DocumentHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;DocumentHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;DocumentHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;DocumentHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;EventAccessors;get_Others;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;EventDefinition;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;EventDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.EventDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;EventDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.EventDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;EventDefinitionHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;EventDefinitionHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;EventDefinitionHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;EventDefinitionHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;EventDefinitionHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;ExportedType;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;ExportedTypeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ExportedTypeHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;ExportedTypeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ExportedTypeHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;ExportedTypeHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;ExportedTypeHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;ExportedTypeHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;ExportedTypeHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;FieldDefinition;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;FieldDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.FieldDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;FieldDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.FieldDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;FieldDefinitionHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;FieldDefinitionHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;FieldDefinitionHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;FieldDefinitionHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;FieldDefinitionHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;GenericParameter;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;GenericParameterConstraint;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;GenericParameterConstraintHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.GenericParameterConstraintHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;GenericParameterConstraintHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.GenericParameterConstraintHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;GenericParameterConstraintHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;GenericParameterConstraintHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;GenericParameterConstraintHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;GenericParameterConstraintHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | -| System.Reflection.Metadata;GenericParameterHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.GenericParameterHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;GenericParameterHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.GenericParameterHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;GenericParameterHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;GenericParameterHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;GenericParameterHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;GenericParameterHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;ImportDefinitionCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;ImportDefinitionCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;ImportDefinitionCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;ImportDefinitionCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;ImportScopeCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ImportScopeCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;ImportScopeCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ImportScopeCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;ImportScopeCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;ImportScopeCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;ImportScopeCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;ImportScopeCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;ImportScopeCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;InterfaceImplementation;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;InterfaceImplementationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.InterfaceImplementationHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;InterfaceImplementationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.InterfaceImplementationHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;InterfaceImplementationHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;InterfaceImplementationHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;InterfaceImplementationHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;InterfaceImplementationHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;InterfaceImplementationHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;LocalConstantHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalConstantHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;LocalConstantHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalConstantHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;LocalConstantHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;LocalConstantHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;LocalConstantHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;LocalConstantHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;LocalConstantHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;LocalScope;GetChildren;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;LocalScope;GetLocalConstants;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;LocalScope;GetLocalVariables;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;LocalScopeHandleCollection+ChildrenEnumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalScopeHandleCollection+ChildrenEnumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;LocalScopeHandleCollection+ChildrenEnumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalScopeHandleCollection+ChildrenEnumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;LocalScopeHandleCollection+ChildrenEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;LocalScopeHandleCollection+ChildrenEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | -| System.Reflection.Metadata;LocalScopeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalScopeHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;LocalScopeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalScopeHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;LocalScopeHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;LocalScopeHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;LocalScopeHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;LocalScopeHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;LocalScopeHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;LocalVariableHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalVariableHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;LocalVariableHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalVariableHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;LocalVariableHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;LocalVariableHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;LocalVariableHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;LocalVariableHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;LocalVariableHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;ManifestResource;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;ManifestResourceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ManifestResourceHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;ManifestResourceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ManifestResourceHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;ManifestResourceHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;ManifestResourceHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;ManifestResourceHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;ManifestResourceHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;MemberReference;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;MemberReferenceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MemberReferenceHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;MemberReferenceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MemberReferenceHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;MemberReferenceHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;MemberReferenceHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;MemberReferenceHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;MemberReferenceHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;MetadataReader;GetAssemblyDefinition;();Argument[this];ReturnValue;taint;df-generated | @@ -17573,28 +15506,19 @@ summary | System.Reflection.Metadata;MethodBodyBlock;get_ExceptionRegions;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodBodyBlock;get_LocalSignature;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodDebugInformation;GetSequencePoints;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;MethodDebugInformationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MethodDebugInformationHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;MethodDebugInformationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MethodDebugInformationHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;MethodDebugInformationHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;MethodDebugInformationHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;MethodDebugInformationHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;MethodDebugInformationHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;MethodDebugInformationHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodDefinition;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodDefinition;GetDeclarativeSecurityAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodDefinition;GetParameters;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;MethodDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MethodDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;MethodDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MethodDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;MethodDefinitionHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;MethodDefinitionHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;MethodDefinitionHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;MethodDefinitionHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;MethodDefinitionHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodImplementation;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;MethodImplementationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MethodImplementationHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;MethodImplementationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MethodImplementationHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;MethodImplementationHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;MethodImplementationHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;MethodImplementationHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;MethodImplementationHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;MethodImport;get_Module;();Argument[this];ReturnValue;taint;df-generated | @@ -17614,19 +15538,13 @@ summary | System.Reflection.Metadata;PEReaderExtensions;GetMetadataReader;(System.Reflection.PortableExecutable.PEReader,System.Reflection.Metadata.MetadataReaderOptions);Argument[0];ReturnValue;taint;df-generated | | System.Reflection.Metadata;PEReaderExtensions;GetMetadataReader;(System.Reflection.PortableExecutable.PEReader,System.Reflection.Metadata.MetadataReaderOptions,System.Reflection.Metadata.MetadataStringDecoder);Argument[2];ReturnValue.Property[System.Reflection.Metadata.MetadataReader.UTF8Decoder];value;dfc-generated | | System.Reflection.Metadata;Parameter;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;ParameterHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ParameterHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;ParameterHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ParameterHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;ParameterHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;ParameterHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;ParameterHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;ParameterHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;ParameterHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;PropertyAccessors;get_Others;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;PropertyDefinition;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;PropertyDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.PropertyDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;PropertyDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.PropertyDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;PropertyDefinitionHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;PropertyDefinitionHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;PropertyDefinitionHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;PropertyDefinitionHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;PropertyDefinitionHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | @@ -17642,10 +15560,7 @@ summary | System.Reflection.Metadata;TypeDefinition;GetInterfaceImplementations;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;TypeDefinition;GetMethods;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;TypeDefinition;GetProperties;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;TypeDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.TypeDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;TypeDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.TypeDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;TypeDefinitionHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;TypeDefinitionHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;TypeDefinitionHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;TypeDefinitionHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;TypeName;GetElementType;();Argument[this].SyntheticField[System.Reflection.Metadata.TypeName._elementOrGenericType];ReturnValue;value;dfc-generated | @@ -17671,16 +15586,11 @@ summary | System.Reflection.Metadata;TypeName;get_FullName;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;TypeName;get_Name;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;TypeName;get_Namespace;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;TypeReferenceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.TypeReferenceHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;TypeReferenceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.TypeReferenceHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;TypeReferenceHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;TypeReferenceHandleCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Reflection.Metadata;TypeReferenceHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Reflection.Metadata;TypeReferenceHandleCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Reflection.Metadata;TypeSpecification;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.PortableExecutable;DebugDirectoryBuilder;AddEntry;(System.Reflection.PortableExecutable.DebugDirectoryEntryType,System.UInt32,System.UInt32,TData,System.Action);Argument[3];Argument[4].Parameter[1];value;dfc-generated | -| System.Reflection.PortableExecutable;DebugDirectoryBuilder;AddEntry;(System.Reflection.PortableExecutable.DebugDirectoryEntryType,System.UInt32,System.UInt32,TData,System.Action);Argument[3];Argument[4].Parameter[1];value;hq-generated | -| System.Reflection.PortableExecutable;DebugDirectoryBuilder;AddEntry;(System.Reflection.PortableExecutable.DebugDirectoryEntryType,System.UInt32,System.UInt32,TData,System.Action);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Reflection.PortableExecutable;DebugDirectoryBuilder;AddEntry;(System.Reflection.PortableExecutable.DebugDirectoryEntryType,System.UInt32,System.UInt32,TData,System.Action);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Reflection.PortableExecutable;ManagedPEBuilder;GetDirectories;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.PortableExecutable;ManagedPEBuilder;ManagedPEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Reflection.Metadata.Ecma335.MetadataRootBuilder,System.Reflection.Metadata.BlobBuilder,System.Reflection.Metadata.BlobBuilder,System.Reflection.Metadata.BlobBuilder,System.Reflection.PortableExecutable.ResourceSectionBuilder,System.Reflection.PortableExecutable.DebugDirectoryBuilder,System.Int32,System.Reflection.Metadata.MethodDefinitionHandle,System.Reflection.PortableExecutable.CorFlags,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[10];Argument[10].Parameter[delegate-self];value;hq-generated | @@ -17690,11 +15600,8 @@ summary | System.Reflection.PortableExecutable;PEBuilder;GetDirectories;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.PortableExecutable;PEBuilder;GetSections;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.PortableExecutable;PEBuilder;PEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[0];Argument[this].Property[System.Reflection.PortableExecutable.PEBuilder.Header];value;dfc-generated | -| System.Reflection.PortableExecutable;PEBuilder;PEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[0];Argument[this].Property[System.Reflection.PortableExecutable.PEBuilder.Header];value;hq-generated | -| System.Reflection.PortableExecutable;PEBuilder;PEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Reflection.PortableExecutable;PEBuilder;PEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Reflection.PortableExecutable;PEBuilder;PEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[1];Argument[this].Property[System.Reflection.PortableExecutable.PEBuilder.IdProvider];value;dfc-generated | -| System.Reflection.PortableExecutable;PEBuilder;PEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[1];Argument[this].Property[System.Reflection.PortableExecutable.PEBuilder.IdProvider];value;hq-generated | | System.Reflection.PortableExecutable;PEBuilder;Serialize;(System.Reflection.Metadata.BlobBuilder);Argument[0];Argument[this];taint;df-generated | | System.Reflection.PortableExecutable;PEBuilder;Serialize;(System.Reflection.Metadata.BlobBuilder);Argument[this];ReturnValue;taint;df-generated | | System.Reflection.PortableExecutable;PEBuilder;SerializeSection;(System.String,System.Reflection.PortableExecutable.SectionLocation);Argument[this];ReturnValue;taint;df-generated | @@ -17711,10 +15618,7 @@ summary | System.Reflection.PortableExecutable;PEReader;PEReader;(System.Collections.Immutable.ImmutableArray);Argument[0].Element;Argument[this];taint;df-generated | | System.Reflection.PortableExecutable;PEReader;PEReader;(System.IO.Stream,System.Reflection.PortableExecutable.PEStreamOptions,System.Int32);Argument[0];Argument[this];taint;df-generated | | System.Reflection.PortableExecutable;PEReader;TryOpenAssociatedPortablePdb;(System.String,System.Func,System.Reflection.Metadata.MetadataReaderProvider,System.String);Argument[0];Argument[1].Parameter[0];taint;dfc-generated | -| System.Reflection.PortableExecutable;PEReader;TryOpenAssociatedPortablePdb;(System.String,System.Func,System.Reflection.Metadata.MetadataReaderProvider,System.String);Argument[0];Argument[1].Parameter[0];taint;hq-generated | | System.Reflection.PortableExecutable;PEReader;TryOpenAssociatedPortablePdb;(System.String,System.Func,System.Reflection.Metadata.MetadataReaderProvider,System.String);Argument[0];Argument[3];taint;dfc-generated | -| System.Reflection.PortableExecutable;PEReader;TryOpenAssociatedPortablePdb;(System.String,System.Func,System.Reflection.Metadata.MetadataReaderProvider,System.String);Argument[0];Argument[3];taint;hq-generated | -| System.Reflection.PortableExecutable;PEReader;TryOpenAssociatedPortablePdb;(System.String,System.Func,System.Reflection.Metadata.MetadataReaderProvider,System.String);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Reflection.PortableExecutable;PEReader;TryOpenAssociatedPortablePdb;(System.String,System.Func,System.Reflection.Metadata.MetadataReaderProvider,System.String);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Reflection.PortableExecutable;PEReader;get_PEHeaders;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection;Assembly;CreateQualifiedName;(System.String,System.String);Argument[0];ReturnValue;taint;dfc-generated | @@ -17870,10 +15774,8 @@ summary | System.Reflection;MethodInvoker;Invoke;(System.Object,System.Span);Argument[1];Argument[this];taint;df-generated | | System.Reflection;MethodInvoker;Invoke;(System.Object,System.Span);Argument[this];ReturnValue;taint;df-generated | | System.Reflection;Missing;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | -| System.Reflection;Module;FindTypes;(System.Reflection.TypeFilter,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Reflection;Module;FindTypes;(System.Reflection.TypeFilter,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Reflection;Module;FindTypes;(System.Reflection.TypeFilter,System.Object);Argument[1];Argument[0].Parameter[1];value;dfc-generated | -| System.Reflection;Module;FindTypes;(System.Reflection.TypeFilter,System.Object);Argument[1];Argument[0].Parameter[1];value;hq-generated | | System.Reflection;Module;GetField;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Reflection;Module;GetField;(System.String,System.Reflection.BindingFlags);Argument[this];ReturnValue;taint;df-generated | | System.Reflection;Module;GetMethod;(System.String);Argument[this];ReturnValue;taint;df-generated | @@ -17938,7 +15840,6 @@ summary | System.Reflection;ReflectionContext;MapType;(System.Reflection.TypeInfo);Argument[0];ReturnValue;value;dfc-generated | | System.Reflection;ReflectionTypeLoadException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Reflection;ReflectionTypeLoadException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Reflection;ReflectionTypeLoadException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Reflection;RuntimeReflectionExtensions;GetMethodInfo;(System.Delegate);Argument[0].Property[System.Delegate.Method];ReturnValue;value;dfc-generated | | System.Reflection;RuntimeReflectionExtensions;GetRuntimeBaseDefinition;(System.Reflection.MethodInfo);Argument[0];ReturnValue;value;df-generated | | System.Reflection;RuntimeReflectionExtensions;GetRuntimeInterfaceMap;(System.Reflection.TypeInfo,System.Type);Argument[0];ReturnValue;taint;df-generated | @@ -18039,25 +15940,15 @@ summary | System.Runtime.CompilerServices;ConditionalWeakTable;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Runtime.CompilerServices;ConditionalWeakTable;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,TValue);Argument[1];ReturnValue;value;dfc-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetValue;(TKey,System.Runtime.CompilerServices.ConditionalWeakTable+CreateValueCallback);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetValue;(TKey,System.Runtime.CompilerServices.ConditionalWeakTable+CreateValueCallback);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetValue;(TKey,System.Runtime.CompilerServices.ConditionalWeakTable+CreateValueCallback);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetValue;(TKey,System.Runtime.CompilerServices.ConditionalWeakTable+CreateValueCallback);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetValue;(TKey,System.Runtime.CompilerServices.ConditionalWeakTable+CreateValueCallback);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetValue;(TKey,System.Runtime.CompilerServices.ConditionalWeakTable+CreateValueCallback);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;ConfiguredCancelableAsyncEnumerable+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Runtime.CompilerServices;ConfiguredCancelableAsyncEnumerable;ConfigureAwait;(System.Boolean);Argument[this];ReturnValue;taint;df-generated | @@ -18114,14 +16005,10 @@ summary | System.Runtime.CompilerServices;ReadOnlyCollectionBuilder;set_Item;(System.Int32,T);Argument[1];Argument[this].Element;value;manual | | System.Runtime.CompilerServices;RuntimeHelpers+CleanupCode;BeginInvoke;(System.Object,System.Boolean,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;RuntimeHelpers+TryCode;BeginInvoke;(System.Object,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[2];Argument[1].Parameter[0];value;dfc-generated | -| System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[2];Argument[1].Parameter[0];value;hq-generated | | System.Runtime.CompilerServices;RuntimeWrappedException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Runtime.CompilerServices;RuntimeWrappedException;RuntimeWrappedException;(System.Object);Argument[0];Argument[this].SyntheticField[System.Runtime.CompilerServices.RuntimeWrappedException._wrappedException];value;dfc-generated | | System.Runtime.CompilerServices;RuntimeWrappedException;get_WrappedException;();Argument[this].SyntheticField[System.Runtime.CompilerServices.RuntimeWrappedException._wrappedException];ReturnValue;value;dfc-generated | @@ -18129,7 +16016,6 @@ summary | System.Runtime.CompilerServices;SwitchExpressionException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Runtime.CompilerServices;SwitchExpressionException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | | System.Runtime.CompilerServices;SwitchExpressionException;get_Message;();Argument[this].Property[System.Runtime.CompilerServices.SwitchExpressionException.UnmatchedValue];ReturnValue;taint;dfc-generated | -| System.Runtime.CompilerServices;SwitchExpressionException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Runtime.CompilerServices;TaskAwaiter;OnCompleted;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;TaskAwaiter;UnsafeOnCompleted;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;TaskAwaiter;GetResult;();Argument[this].SyntheticField[m_task_task_awaiter].Property[System.Threading.Tasks.Task`1.Result];ReturnValue;value;manual | @@ -18286,33 +16172,11 @@ summary | System.Runtime.InteropServices;MemoryMarshal;TryGetMemoryManager;(System.ReadOnlyMemory,TManager);Argument[0];Argument[1];taint;df-generated | | System.Runtime.InteropServices;MemoryMarshal;TryGetMemoryManager;(System.ReadOnlyMemory,TManager,System.Int32,System.Int32);Argument[0];Argument[1];taint;df-generated | | System.Runtime.InteropServices;MemoryMarshal;TryGetString;(System.ReadOnlyMemory,System.String,System.Int32,System.Int32);Argument[0].SyntheticField[System.ReadOnlyMemory`1._object];Argument[1];value;dfc-generated | -| System.Runtime.InteropServices;NFloat;Clamp;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[0];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;Clamp;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[1];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;Clamp;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[2];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;ClampNative;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[0];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;ClampNative;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[1];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;ClampNative;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[2];ReturnValue;value;dfc-generated | | System.Runtime.InteropServices;NFloat;ConvertToInteger;(System.Runtime.InteropServices.NFloat);Argument[0];ReturnValue;value;dfc-generated | | System.Runtime.InteropServices;NFloat;ConvertToIntegerNative;(System.Runtime.InteropServices.NFloat);Argument[0];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;CopySign;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[0];ReturnValue;value;dfc-generated | | System.Runtime.InteropServices;NFloat;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | | System.Runtime.InteropServices;NFloat;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | | System.Runtime.InteropServices;NFloat;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;Max;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[0];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;Max;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[1];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;MaxNative;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[0];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;MaxNative;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[1];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;MaxNumber;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[0];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;MaxNumber;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[1];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;Min;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[0];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;Min;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[1];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;MinNative;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[0];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;MinNative;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[1];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;MinNumber;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[0];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;MinNumber;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[1];ReturnValue;value;dfc-generated | -| System.Runtime.InteropServices;NFloat;MultiplyAddEstimate;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[2];ReturnValue;taint;dfc-generated | -| System.Runtime.InteropServices;NFloat;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[0];ReturnValue;taint;dfc-generated | -| System.Runtime.InteropServices;NFloat;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Runtime.InteropServices.NFloat,System.Runtime.InteropServices.NFloat);Argument[1];ReturnValue;taint;dfc-generated | | System.Runtime.InteropServices;NFloat;ToString;(System.IFormatProvider);Argument[0];ReturnValue;taint;df-generated | | System.Runtime.InteropServices;NFloat;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System.Runtime.InteropServices;NativeLibrary;SetDllImportResolver;(System.Reflection.Assembly,System.Runtime.InteropServices.DllImportResolver);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -18447,7 +16311,6 @@ summary | System.Runtime.Serialization;SurrogateSelector;ChainSelector;(System.Runtime.Serialization.ISurrogateSelector);Argument[0];Argument[this].SyntheticField[System.Runtime.Serialization.SurrogateSelector._nextSelector];value;dfc-generated | | System.Runtime.Serialization;SurrogateSelector;GetNextSelector;();Argument[this].SyntheticField[System.Runtime.Serialization.SurrogateSelector._nextSelector];ReturnValue;value;dfc-generated | | System.Runtime.Serialization;SurrogateSelector;GetSurrogate;(System.Type,System.Runtime.Serialization.StreamingContext,System.Runtime.Serialization.ISurrogateSelector);Argument[this].SyntheticField[System.Runtime.Serialization.SurrogateSelector._nextSelector];Argument[2];value;dfc-generated | -| System.Runtime.Serialization;SurrogateSelector;GetSurrogate;(System.Type,System.Runtime.Serialization.StreamingContext,System.Runtime.Serialization.ISurrogateSelector);Argument[this];Argument[2];value;dfc-generated | | System.Runtime.Serialization;XPathQueryGenerator;CreateFromDataContractSerializer;(System.Type,System.Reflection.MemberInfo[],System.Text.StringBuilder,System.Xml.XmlNamespaceManager);Argument[2];ReturnValue;taint;dfc-generated | | System.Runtime.Serialization;XmlSerializableServices;WriteNodes;(System.Xml.XmlWriter,System.Xml.XmlNode[]);Argument[1].Element;Argument[0];taint;df-generated | | System.Runtime.Serialization;XsdDataContractExporter;XsdDataContractExporter;(System.Xml.Schema.XmlSchemaSet);Argument[0];Argument[this].SyntheticField[System.Runtime.Serialization.XsdDataContractExporter._schemas];value;dfc-generated | @@ -18468,7 +16331,6 @@ summary | System.Runtime;DependentHandle;DependentHandle;(System.Object,System.Object);Argument[0];Argument[this];taint;df-generated | | System.Runtime;DependentHandle;DependentHandle;(System.Object,System.Object);Argument[1];Argument[this];taint;df-generated | | System.Runtime;DependentHandle;get_TargetAndDependent;();Argument[this];ReturnValue;taint;df-generated | -| System.Security.AccessControl;AceEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Security.AccessControl;GenericAcl;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Security.AccessControl;GenericAcl;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Security.AccessControl;GenericAcl;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | @@ -18485,12 +16347,9 @@ summary | System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicy;ToString;();Argument[this].SyntheticField[System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy._customServiceNames].Element;ReturnValue;taint;dfc-generated | | System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicy;get_CustomChannelBinding;();Argument[this].SyntheticField[System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy._customChannelBinding];ReturnValue;value;dfc-generated | | System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicy;get_CustomServiceNames;();Argument[this].SyntheticField[System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy._customServiceNames];ReturnValue;value;dfc-generated | -| System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicyTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicyTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicyTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicyTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicyTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicyTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Security.Authentication.ExtendedProtection;ServiceNameCollection;Merge;(System.Collections.IEnumerable);Argument[0].Element;ReturnValue.Property[System.Collections.ReadOnlyCollectionBase.InnerList].Element;value;dfc-generated | | System.Security.Authentication.ExtendedProtection;ServiceNameCollection;Merge;(System.Collections.IEnumerable);Argument[0].Property[System.Collections.ReadOnlyCollectionBase.InnerList].Element;ReturnValue.Property[System.Collections.ReadOnlyCollectionBase.InnerList].Element;value;dfc-generated | | System.Security.Authentication.ExtendedProtection;ServiceNameCollection;Merge;(System.String);Argument[0];ReturnValue.Property[System.Collections.ReadOnlyCollectionBase.InnerList].Element;value;dfc-generated | @@ -18518,12 +16377,9 @@ summary | System.Security.Claims;ClaimsIdentity;FindFirst;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Security.Claims;ClaimsIdentity;FindFirst;(System.String);Argument[this].Property[System.Security.Claims.ClaimsIdentity.Claims].Element;ReturnValue;value;dfc-generated | | System.Security.Claims;ClaimsIdentity;FindFirst;(System.String);Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims].Element;ReturnValue;value;dfc-generated | -| System.Security.Claims;ClaimsIdentity;HasClaim;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Security.Claims;ClaimsIdentity;HasClaim;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Security.Claims;ClaimsIdentity;HasClaim;(System.Predicate);Argument[this].Property[System.Security.Claims.ClaimsIdentity.Claims].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Security.Claims;ClaimsIdentity;HasClaim;(System.Predicate);Argument[this].Property[System.Security.Claims.ClaimsIdentity.Claims].Element;Argument[0].Parameter[0];value;hq-generated | | System.Security.Claims;ClaimsIdentity;HasClaim;(System.Predicate);Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Security.Claims;ClaimsIdentity;HasClaim;(System.Predicate);Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims].Element;Argument[0].Parameter[0];value;hq-generated | | System.Security.Claims;ClaimsIdentity;get_AuthenticationType;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._authenticationType];ReturnValue;value;dfc-generated | | System.Security.Claims;ClaimsIdentity;get_Claims;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims].Element;ReturnValue.Element;value;dfc-generated | | System.Security.Claims;ClaimsIdentity;get_Claims;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims];ReturnValue;value;dfc-generated | @@ -18601,7 +16457,6 @@ summary | System.Security.Cryptography.X509Certificates;X509Certificate2Collection;FindByThumbprint;(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan);Argument[this].Element;ReturnValue.Property[System.Collections.CollectionBase.List].Element;value;dfc-generated | | System.Security.Cryptography.X509Certificates;X509Certificate2Collection;FindByThumbprint;(System.Security.Cryptography.HashAlgorithmName,System.String);Argument[this].Element;ReturnValue.Element;value;dfc-generated | | System.Security.Cryptography.X509Certificates;X509Certificate2Collection;FindByThumbprint;(System.Security.Cryptography.HashAlgorithmName,System.String);Argument[this].Element;ReturnValue.Property[System.Collections.CollectionBase.List].Element;value;dfc-generated | -| System.Security.Cryptography.X509Certificates;X509Certificate2Collection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Security.Cryptography.X509Certificates;X509Certificate2Collection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Security.Cryptography.X509Certificates.X509Certificate2Enumerator.Current];value;manual | | System.Security.Cryptography.X509Certificates;X509Certificate2Collection;Insert;(System.Int32,System.Security.Cryptography.X509Certificates.X509Certificate2);Argument[1];Argument[this].Element;value;manual | | System.Security.Cryptography.X509Certificates;X509Certificate2Collection;RemoveRange;(System.Security.Cryptography.X509Certificates.X509Certificate2Collection);Argument[0].Element;Argument[this];taint;df-generated | @@ -18641,15 +16496,11 @@ summary | System.Security.Cryptography.X509Certificates;X509Chain;get_SafeHandle;();Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography.X509Certificates;X509ChainElementCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Security.Cryptography.X509Certificates;X509ChainElementCollection;CopyTo;(System.Security.Cryptography.X509Certificates.X509ChainElement[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Security.Cryptography.X509Certificates;X509ChainElementCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Security.Cryptography.X509Certificates;X509ChainElementCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Security.Cryptography.X509Certificates;X509ChainElementCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator.Current];value;manual | | System.Security.Cryptography.X509Certificates;X509ChainElementCollection;get_Item;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography.X509Certificates;X509ChainElementCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | -| System.Security.Cryptography.X509Certificates;X509ChainElementEnumerator;get_Current;();Argument[this].Property[System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator.Current];ReturnValue;value;df-generated | | System.Security.Cryptography.X509Certificates;X509ChainElementEnumerator;get_Current;();Argument[this].Property[System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator.Current];ReturnValue;value;dfc-generated | | System.Security.Cryptography.X509Certificates;X509ChainElementEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Security.Cryptography.X509Certificates;X509ChainElementEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Security.Cryptography.X509Certificates;X509ChainPolicy;Clone;();Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography.X509Certificates;X509EnhancedKeyUsageExtension;CopyFrom;(System.Security.Cryptography.AsnEncodedData);Argument[0].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData].Element;Argument[this].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData].Element;value;dfc-generated | | System.Security.Cryptography.X509Certificates;X509EnhancedKeyUsageExtension;CopyFrom;(System.Security.Cryptography.AsnEncodedData);Argument[0].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData];Argument[this].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData];value;dfc-generated | @@ -18659,16 +16510,12 @@ summary | System.Security.Cryptography.X509Certificates;X509ExtensionCollection;Add;(System.Security.Cryptography.X509Certificates.X509Extension);Argument[0];Argument[this].Element;value;manual | | System.Security.Cryptography.X509Certificates;X509ExtensionCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Security.Cryptography.X509Certificates;X509ExtensionCollection;CopyTo;(System.Security.Cryptography.X509Certificates.X509Extension[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Security.Cryptography.X509Certificates;X509ExtensionCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System.Security.Cryptography.X509Certificates;X509ExtensionCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Security.Cryptography.X509Certificates;X509ExtensionCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator.Current];value;manual | | System.Security.Cryptography.X509Certificates;X509ExtensionCollection;get_Item;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography.X509Certificates;X509ExtensionCollection;get_Item;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography.X509Certificates;X509ExtensionCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | -| System.Security.Cryptography.X509Certificates;X509ExtensionEnumerator;get_Current;();Argument[this].Property[System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator.Current];ReturnValue;value;df-generated | | System.Security.Cryptography.X509Certificates;X509ExtensionEnumerator;get_Current;();Argument[this].Property[System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator.Current];ReturnValue;value;dfc-generated | | System.Security.Cryptography.X509Certificates;X509ExtensionEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Security.Cryptography.X509Certificates;X509ExtensionEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Security.Cryptography.X509Certificates;X509KeyUsageExtension;CopyFrom;(System.Security.Cryptography.AsnEncodedData);Argument[0].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData].Element;Argument[this].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData].Element;value;dfc-generated | | System.Security.Cryptography.X509Certificates;X509KeyUsageExtension;CopyFrom;(System.Security.Cryptography.AsnEncodedData);Argument[0].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData];Argument[this].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData];value;dfc-generated | | System.Security.Cryptography.X509Certificates;X509SignatureGenerator;CreateForECDsa;(System.Security.Cryptography.ECDsa);Argument[0];ReturnValue;taint;df-generated | @@ -18738,7 +16585,6 @@ summary | System.Security.Cryptography.Xml;EncryptionPropertyCollection;get_ItemOf;(System.Int32);Argument[this].Element;ReturnValue;value;dfc-generated | | System.Security.Cryptography.Xml;EncryptionPropertyCollection;get_ItemOf;(System.Int32);Argument[this].SyntheticField[System.Security.Cryptography.Xml.EncryptionPropertyCollection._props].Element;ReturnValue;value;dfc-generated | | System.Security.Cryptography.Xml;EncryptionPropertyCollection;get_SyncRoot;();Argument[this].SyntheticField[System.Security.Cryptography.Xml.EncryptionPropertyCollection._props].Property[System.Collections.ArrayList.SyncRoot];ReturnValue;value;dfc-generated | -| System.Security.Cryptography.Xml;EncryptionPropertyCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Security.Cryptography.Xml;EncryptionPropertyCollection;set_Item;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Security.Cryptography.Xml;EncryptionPropertyCollection;set_ItemOf;(System.Int32,System.Security.Cryptography.Xml.EncryptionProperty);Argument[1];Argument[this].Element;value;dfc-generated | | System.Security.Cryptography.Xml;EncryptionPropertyCollection;set_ItemOf;(System.Int32,System.Security.Cryptography.Xml.EncryptionProperty);Argument[1];Argument[this].SyntheticField[System.Security.Cryptography.Xml.EncryptionPropertyCollection._props].Element;value;dfc-generated | @@ -18749,9 +16595,6 @@ summary | System.Security.Cryptography.Xml;KeyInfoClause;LoadXml;(System.Xml.XmlElement);Argument[0].Element;Argument[this];taint;df-generated | | System.Security.Cryptography.Xml;KeyInfoEncryptedKey;GetXml;();Argument[this].SyntheticField[System.Security.Cryptography.Xml.KeyInfoEncryptedKey._encryptedKey].SyntheticField[System.Security.Cryptography.Xml.EncryptedType._cachedXml];ReturnValue;value;dfc-generated | | System.Security.Cryptography.Xml;KeyInfoEncryptedKey;KeyInfoEncryptedKey;(System.Security.Cryptography.Xml.EncryptedKey);Argument[0];Argument[this];taint;df-generated | -| System.Security.Cryptography.Xml;KeyInfoEncryptedKey;LoadXml;(System.Xml.XmlElement);Argument[0].Element;Argument[this];taint;df-generated | -| System.Security.Cryptography.Xml;KeyInfoEncryptedKey;LoadXml;(System.Xml.XmlElement);Argument[0].Element;Argument[this];taint;dfc-generated | -| System.Security.Cryptography.Xml;KeyInfoEncryptedKey;LoadXml;(System.Xml.XmlElement);Argument[0];Argument[this].SyntheticField[System.Security.Cryptography.Xml.KeyInfoEncryptedKey._encryptedKey].SyntheticField[System.Security.Cryptography.Xml.EncryptedType._cachedXml];value;df-generated | | System.Security.Cryptography.Xml;KeyInfoEncryptedKey;LoadXml;(System.Xml.XmlElement);Argument[0];Argument[this].SyntheticField[System.Security.Cryptography.Xml.KeyInfoEncryptedKey._encryptedKey].SyntheticField[System.Security.Cryptography.Xml.EncryptedType._cachedXml];value;dfc-generated | | System.Security.Cryptography.Xml;KeyInfoName;KeyInfoName;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Security.Cryptography.Xml;KeyInfoName;LoadXml;(System.Xml.XmlElement);Argument[0].Element;Argument[this];taint;df-generated | @@ -18787,7 +16630,6 @@ summary | System.Security.Cryptography.Xml;ReferenceList;get_Item;(System.Int32);Argument[this].Element;ReturnValue;value;manual | | System.Security.Cryptography.Xml;ReferenceList;get_ItemOf;(System.Int32);Argument[this].SyntheticField[System.Security.Cryptography.Xml.ReferenceList._references].Element;ReturnValue;value;dfc-generated | | System.Security.Cryptography.Xml;ReferenceList;get_SyncRoot;();Argument[this].SyntheticField[System.Security.Cryptography.Xml.ReferenceList._references].Property[System.Collections.ArrayList.SyncRoot];ReturnValue;value;dfc-generated | -| System.Security.Cryptography.Xml;ReferenceList;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Security.Cryptography.Xml;ReferenceList;set_Item;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | | System.Security.Cryptography.Xml;ReferenceList;set_ItemOf;(System.Int32,System.Security.Cryptography.Xml.EncryptedReference);Argument[1];Argument[this].Element;value;dfc-generated | | System.Security.Cryptography.Xml;ReferenceList;set_ItemOf;(System.Int32,System.Security.Cryptography.Xml.EncryptedReference);Argument[1];Argument[this].SyntheticField[System.Security.Cryptography.Xml.ReferenceList._references].Element;value;dfc-generated | @@ -18826,19 +16668,10 @@ summary | System.Security.Cryptography.Xml;TransformChain;GetEnumerator;();Argument[this].SyntheticField[System.Security.Cryptography.Xml.TransformChain._transforms].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;dfc-generated | | System.Security.Cryptography.Xml;TransformChain;get_Item;(System.Int32);Argument[this].SyntheticField[System.Security.Cryptography.Xml.TransformChain._transforms].Element;ReturnValue;value;dfc-generated | | System.Security.Cryptography.Xml;XmlDecryptionTransform;AddExceptUri;(System.String);Argument[0];Argument[this];taint;df-generated | -| System.Security.Cryptography.Xml;XmlDecryptionTransform;GetOutput;();Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDecryptionTransform._containingDocument];ReturnValue;value;df-generated | | System.Security.Cryptography.Xml;XmlDecryptionTransform;GetOutput;();Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDecryptionTransform._containingDocument];ReturnValue;value;dfc-generated | -| System.Security.Cryptography.Xml;XmlDecryptionTransform;GetOutput;();Argument[this];ReturnValue;taint;df-generated | -| System.Security.Cryptography.Xml;XmlDecryptionTransform;GetOutput;();Argument[this];ReturnValue;taint;dfc-generated | -| System.Security.Cryptography.Xml;XmlDecryptionTransform;GetOutput;(System.Type);Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDecryptionTransform._containingDocument];ReturnValue;value;df-generated | | System.Security.Cryptography.Xml;XmlDecryptionTransform;GetOutput;(System.Type);Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDecryptionTransform._containingDocument];ReturnValue;value;dfc-generated | -| System.Security.Cryptography.Xml;XmlDecryptionTransform;GetOutput;(System.Type);Argument[this];ReturnValue;taint;df-generated | -| System.Security.Cryptography.Xml;XmlDecryptionTransform;GetOutput;(System.Type);Argument[this];ReturnValue;taint;dfc-generated | | System.Security.Cryptography.Xml;XmlDecryptionTransform;LoadInnerXml;(System.Xml.XmlNodeList);Argument[0].Element;Argument[this];taint;df-generated | -| System.Security.Cryptography.Xml;XmlDecryptionTransform;LoadInput;(System.Object);Argument[0];Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDecryptionTransform._containingDocument];value;df-generated | | System.Security.Cryptography.Xml;XmlDecryptionTransform;LoadInput;(System.Object);Argument[0];Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDecryptionTransform._containingDocument];value;dfc-generated | -| System.Security.Cryptography.Xml;XmlDecryptionTransform;LoadInput;(System.Object);Argument[0];Argument[this];taint;df-generated | -| System.Security.Cryptography.Xml;XmlDecryptionTransform;LoadInput;(System.Object);Argument[0];Argument[this];taint;dfc-generated | | System.Security.Cryptography.Xml;XmlDecryptionTransform;get_InputTypes;();Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography.Xml;XmlDecryptionTransform;get_OutputTypes;();Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography.Xml;XmlDsigBase64Transform;GetOutput;();Argument[this];ReturnValue;taint;df-generated | @@ -18877,9 +16710,6 @@ summary | System.Security.Cryptography.Xml;XmlDsigXsltTransform;GetInnerXml;();Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDsigXsltTransform._xslNodes];ReturnValue;value;dfc-generated | | System.Security.Cryptography.Xml;XmlDsigXsltTransform;GetOutput;();Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography.Xml;XmlDsigXsltTransform;GetOutput;(System.Type);Argument[this];ReturnValue;taint;df-generated | -| System.Security.Cryptography.Xml;XmlDsigXsltTransform;LoadInnerXml;(System.Xml.XmlNodeList);Argument[0].Element;Argument[this];taint;df-generated | -| System.Security.Cryptography.Xml;XmlDsigXsltTransform;LoadInnerXml;(System.Xml.XmlNodeList);Argument[0].Element;Argument[this];taint;dfc-generated | -| System.Security.Cryptography.Xml;XmlDsigXsltTransform;LoadInnerXml;(System.Xml.XmlNodeList);Argument[0];Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDsigXsltTransform._xslNodes];value;df-generated | | System.Security.Cryptography.Xml;XmlDsigXsltTransform;LoadInnerXml;(System.Xml.XmlNodeList);Argument[0];Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDsigXsltTransform._xslNodes];value;dfc-generated | | System.Security.Cryptography.Xml;XmlDsigXsltTransform;LoadInput;(System.Object);Argument[0];Argument[this];taint;df-generated | | System.Security.Cryptography.Xml;XmlDsigXsltTransform;get_InputTypes;();Argument[this];ReturnValue;taint;df-generated | @@ -18915,7 +16745,6 @@ summary | System.Security.Cryptography;AsnEncodedDataCollection;Add;(System.Security.Cryptography.AsnEncodedData);Argument[0];Argument[this].Element;value;manual | | System.Security.Cryptography;AsnEncodedDataCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Security.Cryptography;AsnEncodedDataCollection;CopyTo;(System.Security.Cryptography.AsnEncodedData[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Security.Cryptography;AsnEncodedDataCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Security.Cryptography;AsnEncodedDataCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Security.Cryptography.AsnEncodedDataEnumerator.Current];value;manual | | System.Security.Cryptography;AsnEncodedDataCollection;get_Item;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography;AsnEncodedDataCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | @@ -18948,10 +16777,8 @@ summary | System.Security.Cryptography;CngUIPolicy;CngUIPolicy;(System.Security.Cryptography.CngUIProtectionLevels,System.String,System.String,System.String,System.String);Argument[4];Argument[this].Property[System.Security.Cryptography.CngUIPolicy.CreationTitle];value;dfc-generated | | System.Security.Cryptography;CompositeMLDsa;CompositeMLDsa;(System.Security.Cryptography.CompositeMLDsaAlgorithm);Argument[0];Argument[this].Property[System.Security.Cryptography.CompositeMLDsa.Algorithm];value;dfc-generated | | System.Security.Cryptography;CompositeMLDsaAlgorithm;ToString;();Argument[this].Property[System.Security.Cryptography.CompositeMLDsaAlgorithm.Name];ReturnValue;value;dfc-generated | -| System.Security.Cryptography;CryptoStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Security.Cryptography;CryptoStream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.Security.Cryptography;CryptoStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.Security.Cryptography;CryptoStream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Security.Cryptography;CryptoStream;CopyTo;(System.IO.Stream,System.Int32);Argument[this];Argument[0];taint;manual | | System.Security.Cryptography;CryptoStream;CopyToAsync;(System.IO.Stream,System.Int32,System.Threading.CancellationToken);Argument[this];Argument[0];taint;manual | | System.Security.Cryptography;CryptoStream;CryptoStream;(System.IO.Stream,System.Security.Cryptography.ICryptoTransform,System.Security.Cryptography.CryptoStreamMode,System.Boolean);Argument[0];Argument[this];taint;df-generated | @@ -19052,15 +16879,12 @@ summary | System.Security.Cryptography;OidCollection;Add;(System.Security.Cryptography.Oid);Argument[0];Argument[this].Element;value;manual | | System.Security.Cryptography;OidCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Security.Cryptography;OidCollection;CopyTo;(System.Security.Cryptography.Oid[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Security.Cryptography;OidCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Security.Cryptography;OidCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Security.Cryptography.OidEnumerator.Current];value;manual | | System.Security.Cryptography;OidCollection;get_Item;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography;OidCollection;get_Item;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography;OidCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | -| System.Security.Cryptography;OidEnumerator;get_Current;();Argument[this].Property[System.Security.Cryptography.OidEnumerator.Current];ReturnValue;value;df-generated | | System.Security.Cryptography;OidEnumerator;get_Current;();Argument[this].Property[System.Security.Cryptography.OidEnumerator.Current];ReturnValue;value;dfc-generated | | System.Security.Cryptography;OidEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Security.Cryptography;OidEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Security.Cryptography;PasswordDeriveBytes;PasswordDeriveBytes;(System.Byte[],System.Byte[],System.String,System.Int32,System.Security.Cryptography.CspParameters);Argument[0].Element;Argument[this];taint;df-generated | | System.Security.Cryptography;PasswordDeriveBytes;PasswordDeriveBytes;(System.Byte[],System.Byte[],System.String,System.Int32,System.Security.Cryptography.CspParameters);Argument[1].Element;Argument[this];taint;df-generated | | System.Security.Cryptography;PasswordDeriveBytes;PasswordDeriveBytes;(System.Byte[],System.Byte[],System.String,System.Int32,System.Security.Cryptography.CspParameters);Argument[2];Argument[this];taint;df-generated | @@ -19150,7 +16974,6 @@ summary | System.Security.Permissions;KeyContainerPermissionAccessEntryCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Security.Permissions;KeyContainerPermissionAccessEntryCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Security.Permissions;KeyContainerPermissionAccessEntryCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | -| System.Security.Permissions;KeyContainerPermissionAccessEntryEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Security.Permissions;MediaPermission;Copy;();Argument[this];ReturnValue;value;dfc-generated | | System.Security.Permissions;MediaPermission;Intersect;(System.Security.IPermission);Argument[0];ReturnValue;value;dfc-generated | | System.Security.Permissions;MediaPermission;Union;(System.Security.IPermission);Argument[this];ReturnValue;taint;df-generated | @@ -19206,7 +17029,6 @@ summary | System.Security.Policy;ApplicationTrustCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Security.Policy;ApplicationTrustCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Security.Policy;ApplicationTrustCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | -| System.Security.Policy;ApplicationTrustEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Security.Policy;Evidence;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Security.Policy;Evidence;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Security.Policy;Evidence;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | @@ -19227,17 +17049,10 @@ summary | System.Security.Principal;GenericIdentity;GenericIdentity;(System.String);Argument[0];Argument[this].SyntheticField[System.Security.Principal.GenericIdentity.m_name];value;dfc-generated | | System.Security.Principal;GenericIdentity;GenericIdentity;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Security.Principal.GenericIdentity.m_name];value;dfc-generated | | System.Security.Principal;GenericIdentity;GenericIdentity;(System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Security.Principal.GenericIdentity.m_type];value;dfc-generated | -| System.Security.Principal;GenericIdentity;get_AuthenticationType;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._authenticationType];ReturnValue;value;dfc-generated | | System.Security.Principal;GenericIdentity;get_AuthenticationType;();Argument[this].SyntheticField[System.Security.Principal.GenericIdentity.m_type];ReturnValue;value;dfc-generated | | System.Security.Principal;GenericIdentity;get_Claims;();Argument[this].Property[System.Security.Claims.ClaimsIdentity.Claims];ReturnValue;value;dfc-generated | -| System.Security.Principal;GenericIdentity;get_Claims;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims].Element;ReturnValue.Element;value;dfc-generated | -| System.Security.Principal;GenericIdentity;get_Claims;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims];ReturnValue;value;dfc-generated | -| System.Security.Principal;GenericIdentity;get_Name;();Argument[this].SyntheticField[System.Security.Principal.GenericIdentity.m_name];ReturnValue;value;df-generated | | System.Security.Principal;GenericIdentity;get_Name;();Argument[this].SyntheticField[System.Security.Principal.GenericIdentity.m_name];ReturnValue;value;dfc-generated | -| System.Security.Principal;GenericIdentity;get_Name;();Argument[this];ReturnValue;taint;df-generated | -| System.Security.Principal;GenericIdentity;get_Name;();Argument[this];ReturnValue;taint;dfc-generated | | System.Security.Principal;GenericPrincipal;GenericPrincipal;(System.Security.Principal.IIdentity,System.String[]);Argument[0];Argument[this].SyntheticField[System.Security.Principal.GenericPrincipal.m_identity];value;dfc-generated | -| System.Security.Principal;GenericPrincipal;get_Identity;();Argument[this].SyntheticField[System.Security.Claims.ClaimsPrincipal._identities].Element;ReturnValue;value;dfc-generated | | System.Security.Principal;GenericPrincipal;get_Identity;();Argument[this].SyntheticField[System.Security.Principal.GenericPrincipal.m_identity];ReturnValue;value;dfc-generated | | System.Security.Principal;IIdentity;get_Name;();Argument[this];ReturnValue;taint;df-generated | | System.Security.Principal;IdentityNotMappedException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | @@ -19251,11 +17066,9 @@ summary | System.Security.Principal;WindowsIdentity;RunImpersonated;(Microsoft.Win32.SafeHandles.SafeAccessTokenHandle,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Security.Principal;WindowsIdentity;RunImpersonatedAsync;(Microsoft.Win32.SafeHandles.SafeAccessTokenHandle,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Security.Principal;WindowsIdentity;RunImpersonatedAsync;(Microsoft.Win32.SafeHandles.SafeAccessTokenHandle,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Security.Principal;WindowsIdentity;get_AuthenticationType;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._authenticationType];ReturnValue;value;dfc-generated | | System.Security.Principal;WindowsIdentity;get_Claims;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims].Element;ReturnValue.Element;value;dfc-generated | | System.Security.Principal;WindowsIdentity;get_Claims;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims];ReturnValue;value;dfc-generated | | System.Security.Principal;WindowsIdentity;get_Name;();Argument[this];ReturnValue;taint;df-generated | -| System.Security.Principal;WindowsPrincipal;get_Identity;();Argument[this].SyntheticField[System.Security.Claims.ClaimsPrincipal._identities].Element;ReturnValue;value;dfc-generated | | System.Security;CodeAccessPermission;Copy;();Argument[this];ReturnValue;value;dfc-generated | | System.Security;CodeAccessPermission;Intersect;(System.Security.IPermission);Argument[0];ReturnValue;value;dfc-generated | | System.Security;CodeAccessPermission;Union;(System.Security.IPermission);Argument[this];ReturnValue;taint;df-generated | @@ -19417,17 +17230,13 @@ summary | System.Text.Json;JsonElement+ArrayEnumerator;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Text.Json;JsonElement+ArrayEnumerator;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Text.Json;JsonElement+ArrayEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | -| System.Text.Json;JsonElement+ArrayEnumerator;get_Current;();Argument[this].Property[System.Text.Json.JsonElement+ArrayEnumerator.Current];ReturnValue;value;df-generated | | System.Text.Json;JsonElement+ArrayEnumerator;get_Current;();Argument[this].Property[System.Text.Json.JsonElement+ArrayEnumerator.Current];ReturnValue;value;dfc-generated | | System.Text.Json;JsonElement+ArrayEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Text.Json;JsonElement+ArrayEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Text.Json;JsonElement+ObjectEnumerator;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Text.Json;JsonElement+ObjectEnumerator;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Text.Json;JsonElement+ObjectEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | -| System.Text.Json;JsonElement+ObjectEnumerator;get_Current;();Argument[this].Property[System.Text.Json.JsonElement+ObjectEnumerator.Current];ReturnValue;value;df-generated | | System.Text.Json;JsonElement+ObjectEnumerator;get_Current;();Argument[this].Property[System.Text.Json.JsonElement+ObjectEnumerator.Current];ReturnValue;value;dfc-generated | | System.Text.Json;JsonElement+ObjectEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Text.Json;JsonElement+ObjectEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Text.Json;JsonElement;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Text.Json;JsonElement;EnumerateArray;();Argument[this];ReturnValue;taint;df-generated | | System.Text.Json;JsonElement;EnumerateObject;();Argument[this];ReturnValue;taint;df-generated | @@ -19454,7 +17263,6 @@ summary | System.Text.Json;JsonException;JsonException;(System.String,System.String,System.Nullable,System.Nullable,System.Exception);Argument[2];Argument[this].Property[System.Text.Json.JsonException.LineNumber];value;dfc-generated | | System.Text.Json;JsonException;JsonException;(System.String,System.String,System.Nullable,System.Nullable,System.Exception);Argument[3];Argument[this].Property[System.Text.Json.JsonException.BytePositionInLine];value;dfc-generated | | System.Text.Json;JsonException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Text.Json;JsonException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Text.Json;JsonException;get_Message;();Argument[this].SyntheticField[System.Text.Json.JsonException._message];ReturnValue;value;dfc-generated | | System.Text.Json;JsonNamingPolicy;ConvertName;(System.String);Argument[0];ReturnValue;value;dfc-generated | | System.Text.Json;JsonReaderState;JsonReaderState;(System.Text.Json.JsonReaderOptions);Argument[0];Argument[this].SyntheticField[System.Text.Json.JsonReaderState._readerOptions];value;dfc-generated | @@ -19555,10 +17363,8 @@ summary | System.Text.RegularExpressions;Regex+ValueMatchEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | | System.Text.RegularExpressions;Regex+ValueMatchEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Text.RegularExpressions;Regex+ValueSplitEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex+ValueSplitEnumerator;get_Current;();Argument[this].Property[System.Text.RegularExpressions.Regex+ValueSplitEnumerator.Current];ReturnValue;value;df-generated | | System.Text.RegularExpressions;Regex+ValueSplitEnumerator;get_Current;();Argument[this].Property[System.Text.RegularExpressions.Regex+ValueSplitEnumerator.Current];ReturnValue;value;dfc-generated | | System.Text.RegularExpressions;Regex+ValueSplitEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Text.RegularExpressions;Regex+ValueSplitEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Text.RegularExpressions;Regex;Count;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Text.RegularExpressions;Regex;EnumerateMatches;(System.ReadOnlySpan);Argument[0];ReturnValue;taint;df-generated | | System.Text.RegularExpressions;Regex;EnumerateMatches;(System.ReadOnlySpan);Argument[this];ReturnValue;taint;df-generated | @@ -19623,28 +17429,16 @@ summary | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.String,System.Text.RegularExpressions.RegexOptions);Argument[0];ReturnValue;value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.String,System.Text.RegularExpressions.RegexOptions,System.TimeSpan);Argument[0];ReturnValue;value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[0];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[0];ReturnValue;value;hq-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions);Argument[0];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions);Argument[0];ReturnValue;value;hq-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions,System.TimeSpan);Argument[0];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions,System.TimeSpan);Argument[0];ReturnValue;value;hq-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions,System.TimeSpan);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions,System.TimeSpan);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[0];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[0];ReturnValue;value;hq-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32);Argument[0];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32);Argument[0];ReturnValue;value;hq-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32,System.Int32);Argument[0];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32,System.Int32);Argument[0];ReturnValue;value;hq-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32,System.Int32);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32,System.Int32);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Text.RegularExpressions;Regex;Split;(System.String);Argument[0];ReturnValue.Element;value;dfc-generated | | System.Text.RegularExpressions;Regex;Split;(System.String,System.Int32);Argument[0];ReturnValue.Element;value;dfc-generated | @@ -19661,7 +17455,6 @@ summary | System.Text.RegularExpressions;RegexCompilationInfo;RegexCompilationInfo;(System.String,System.Text.RegularExpressions.RegexOptions,System.String,System.String,System.Boolean,System.TimeSpan);Argument[5];Argument[this];taint;df-generated | | System.Text.RegularExpressions;RegexMatchTimeoutException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].Property[System.Text.RegularExpressions.RegexMatchTimeoutException.Input];Argument[0];taint;dfc-generated | | System.Text.RegularExpressions;RegexMatchTimeoutException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].Property[System.Text.RegularExpressions.RegexMatchTimeoutException.Pattern];Argument[0];taint;dfc-generated | -| System.Text.RegularExpressions;RegexMatchTimeoutException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Text.RegularExpressions;RegexMatchTimeoutException;RegexMatchTimeoutException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].Property[System.Text.RegularExpressions.RegexMatchTimeoutException.Input];taint;dfc-generated | | System.Text.RegularExpressions;RegexMatchTimeoutException;RegexMatchTimeoutException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].Property[System.Text.RegularExpressions.RegexMatchTimeoutException.Pattern];taint;dfc-generated | | System.Text.RegularExpressions;RegexMatchTimeoutException;RegexMatchTimeoutException;(System.String,System.String,System.TimeSpan);Argument[0];Argument[this].Property[System.Text.RegularExpressions.RegexMatchTimeoutException.Input];value;dfc-generated | @@ -19754,15 +17547,10 @@ summary | System.Text;SpanLineEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | | System.Text;SpanLineEnumerator;MoveNext;();Argument[this].SyntheticField[System.Text.SpanLineEnumerator._remaining].Element;Argument[this].SyntheticField[System.Text.SpanLineEnumerator._current].Element;value;dfc-generated | | System.Text;SpanLineEnumerator;MoveNext;();Argument[this].SyntheticField[System.Text.SpanLineEnumerator._remaining];Argument[this].SyntheticField[System.Text.SpanLineEnumerator._current];value;dfc-generated | -| System.Text;SpanLineEnumerator;get_Current;();Argument[this].SyntheticField[System.Text.SpanLineEnumerator._current];ReturnValue;value;df-generated | | System.Text;SpanLineEnumerator;get_Current;();Argument[this].SyntheticField[System.Text.SpanLineEnumerator._current];ReturnValue;value;dfc-generated | -| System.Text;SpanLineEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Text;SpanLineEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Text;SpanRuneEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | -| System.Text;SpanRuneEnumerator;get_Current;();Argument[this].Property[System.Text.SpanRuneEnumerator.Current];ReturnValue;value;df-generated | | System.Text;SpanRuneEnumerator;get_Current;();Argument[this].Property[System.Text.SpanRuneEnumerator.Current];ReturnValue;value;dfc-generated | | System.Text;SpanRuneEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Text;SpanRuneEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Text;StringBuilder+AppendInterpolatedStringHandler;AppendFormatted;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Text;StringBuilder+AppendInterpolatedStringHandler;AppendFormatted;(T);Argument[0];Argument[this];taint;df-generated | | System.Text;StringBuilder+AppendInterpolatedStringHandler;AppendFormatted;(T,System.String);Argument[0];Argument[this];taint;df-generated | @@ -19887,7 +17675,6 @@ summary | System.Text;StringBuilder;Clear;();Argument[this];ReturnValue;value;dfc-generated | | System.Text;StringBuilder;GetChunks;();Argument[this];ReturnValue;taint;df-generated | | System.Text;StringBuilder;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0].SyntheticField[System.Runtime.Serialization.SerializationInfo._values].Element;taint;dfc-generated | -| System.Text;StringBuilder;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Text;StringBuilder;Insert;(System.Int32,System.Boolean);Argument[this];ReturnValue;value;dfc-generated | | System.Text;StringBuilder;Insert;(System.Int32,System.Byte);Argument[this];ReturnValue;value;dfc-generated | | System.Text;StringBuilder;Insert;(System.Int32,System.Char);Argument[this];ReturnValue;value;dfc-generated | @@ -19963,10 +17750,7 @@ summary | System.Threading.RateLimiting;FixedWindowRateLimiter;AttemptAcquireCore;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Threading.RateLimiting;FixedWindowRateLimiter;FixedWindowRateLimiter;(System.Threading.RateLimiting.FixedWindowRateLimiterOptions);Argument[0].Property[System.Threading.RateLimiting.FixedWindowRateLimiterOptions.Window];Argument[this].SyntheticField[System.Threading.RateLimiting.FixedWindowRateLimiter._options].Property[System.Threading.RateLimiting.FixedWindowRateLimiterOptions.Window];value;dfc-generated | | System.Threading.RateLimiting;FixedWindowRateLimiter;get_IdleDuration;();Argument[this];ReturnValue;taint;df-generated | -| System.Threading.RateLimiting;FixedWindowRateLimiter;get_ReplenishmentPeriod;();Argument[this].SyntheticField[System.Threading.RateLimiting.FixedWindowRateLimiter._options].Property[System.Threading.RateLimiting.FixedWindowRateLimiterOptions.Window];ReturnValue;value;df-generated | | System.Threading.RateLimiting;FixedWindowRateLimiter;get_ReplenishmentPeriod;();Argument[this].SyntheticField[System.Threading.RateLimiting.FixedWindowRateLimiter._options].Property[System.Threading.RateLimiting.FixedWindowRateLimiterOptions.Window];ReturnValue;value;dfc-generated | -| System.Threading.RateLimiting;FixedWindowRateLimiter;get_ReplenishmentPeriod;();Argument[this];ReturnValue;taint;df-generated | -| System.Threading.RateLimiting;FixedWindowRateLimiter;get_ReplenishmentPeriod;();Argument[this];ReturnValue;taint;dfc-generated | | System.Threading.RateLimiting;MetadataName;MetadataName;(System.String);Argument[0];Argument[this].SyntheticField[System.Threading.RateLimiting.MetadataName`1._name];value;dfc-generated | | System.Threading.RateLimiting;MetadataName;ToString;();Argument[this].SyntheticField[System.Threading.RateLimiting.MetadataName`1._name];ReturnValue;value;dfc-generated | | System.Threading.RateLimiting;MetadataName;get_Name;();Argument[this].SyntheticField[System.Threading.RateLimiting.MetadataName`1._name];ReturnValue;value;dfc-generated | @@ -19984,11 +17768,8 @@ summary | System.Threading.RateLimiting;RateLimitPartition;GetSlidingWindowLimiter;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.RateLimiting;RateLimitPartition;GetTokenBucketLimiter;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.RateLimiting;RateLimitPartition;RateLimitPartition;(TKey,System.Func);Argument[0];Argument[this].Property[System.Threading.RateLimiting.RateLimitPartition`1.PartitionKey];value;dfc-generated | -| System.Threading.RateLimiting;RateLimitPartition;RateLimitPartition;(TKey,System.Func);Argument[0];Argument[this].Property[System.Threading.RateLimiting.RateLimitPartition`1.PartitionKey];value;hq-generated | -| System.Threading.RateLimiting;RateLimitPartition;RateLimitPartition;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.RateLimiting;RateLimitPartition;RateLimitPartition;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.RateLimiting;RateLimitPartition;RateLimitPartition;(TKey,System.Func);Argument[1];Argument[this].Property[System.Threading.RateLimiting.RateLimitPartition`1.Factory];value;dfc-generated | -| System.Threading.RateLimiting;RateLimitPartition;RateLimitPartition;(TKey,System.Func);Argument[1];Argument[this].Property[System.Threading.RateLimiting.RateLimitPartition`1.Factory];value;hq-generated | | System.Threading.RateLimiting;RateLimiter;AttemptAcquire;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Threading.RateLimiting;RateLimiter;AttemptAcquireCore;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Threading.RateLimiting;RateLimiter;CreateChained;(System.Threading.RateLimiting.RateLimiter[]);Argument[0].Element;ReturnValue;taint;df-generated | @@ -20002,10 +17783,7 @@ summary | System.Threading.RateLimiting;TokenBucketRateLimiter;AttemptAcquireCore;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Threading.RateLimiting;TokenBucketRateLimiter;TokenBucketRateLimiter;(System.Threading.RateLimiting.TokenBucketRateLimiterOptions);Argument[0].Property[System.Threading.RateLimiting.TokenBucketRateLimiterOptions.ReplenishmentPeriod];Argument[this].SyntheticField[System.Threading.RateLimiting.TokenBucketRateLimiter._options].Property[System.Threading.RateLimiting.TokenBucketRateLimiterOptions.ReplenishmentPeriod];value;dfc-generated | | System.Threading.RateLimiting;TokenBucketRateLimiter;get_IdleDuration;();Argument[this];ReturnValue;taint;df-generated | -| System.Threading.RateLimiting;TokenBucketRateLimiter;get_ReplenishmentPeriod;();Argument[this].SyntheticField[System.Threading.RateLimiting.TokenBucketRateLimiter._options].Property[System.Threading.RateLimiting.TokenBucketRateLimiterOptions.ReplenishmentPeriod];ReturnValue;value;df-generated | | System.Threading.RateLimiting;TokenBucketRateLimiter;get_ReplenishmentPeriod;();Argument[this].SyntheticField[System.Threading.RateLimiting.TokenBucketRateLimiter._options].Property[System.Threading.RateLimiting.TokenBucketRateLimiterOptions.ReplenishmentPeriod];ReturnValue;value;dfc-generated | -| System.Threading.RateLimiting;TokenBucketRateLimiter;get_ReplenishmentPeriod;();Argument[this];ReturnValue;taint;df-generated | -| System.Threading.RateLimiting;TokenBucketRateLimiter;get_ReplenishmentPeriod;();Argument[this];ReturnValue;taint;dfc-generated | | System.Threading.Tasks.Dataflow;ActionBlock;ActionBlock;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks.Dataflow;ActionBlock;ActionBlock;(System.Action,System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks.Dataflow;ActionBlock;ActionBlock;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -20138,12 +17916,9 @@ summary | System.Threading.Tasks.Dataflow;WriteOnceBlock;OfferMessage;(System.Threading.Tasks.Dataflow.DataflowMessageHeader,T,System.Threading.Tasks.Dataflow.ISourceBlock,System.Boolean);Argument[1];Argument[this].SyntheticField[System.Threading.Tasks.Dataflow.WriteOnceBlock`1._value];value;dfc-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;ReleaseReservation;(System.Threading.Tasks.Dataflow.DataflowMessageHeader,System.Threading.Tasks.Dataflow.ITargetBlock);Argument[this];Argument[1];taint;df-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;ToString;();Argument[this];ReturnValue;taint;df-generated | -| System.Threading.Tasks.Dataflow;WriteOnceBlock;TryReceive;(System.Predicate,T);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;TryReceive;(System.Predicate,T);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;TryReceive;(System.Predicate,T);Argument[this].SyntheticField[System.Threading.Tasks.Dataflow.WriteOnceBlock`1._value];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks.Dataflow;WriteOnceBlock;TryReceive;(System.Predicate,T);Argument[this].SyntheticField[System.Threading.Tasks.Dataflow.WriteOnceBlock`1._value];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;TryReceive;(System.Predicate,T);Argument[this].SyntheticField[System.Threading.Tasks.Dataflow.WriteOnceBlock`1._value];Argument[1];value;dfc-generated | -| System.Threading.Tasks.Dataflow;WriteOnceBlock;TryReceive;(System.Predicate,T);Argument[this].SyntheticField[System.Threading.Tasks.Dataflow.WriteOnceBlock`1._value];Argument[1];value;hq-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;TryReceiveAll;(System.Collections.Generic.IList);Argument[this].SyntheticField[System.Threading.Tasks.Dataflow.WriteOnceBlock`1._value];Argument[0].Element;value;dfc-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;WriteOnceBlock;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;WriteOnceBlock;(System.Func,System.Threading.Tasks.Dataflow.DataflowBlockOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -20226,15 +18001,10 @@ summary | System.Threading.Tasks;ParallelLoopState;get_LowestBreakIteration;();Argument[this];ReturnValue;taint;df-generated | | System.Threading.Tasks;Task;ConfigureAwait;(System.Boolean);Argument[this];ReturnValue;taint;df-generated | | System.Threading.Tasks;Task;ConfigureAwait;(System.Threading.Tasks.ConfigureAwaitOptions);Argument[this];ReturnValue;taint;df-generated | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object);Argument[1];Argument[0].Parameter[1];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[1];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[0].Parameter[1];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -20242,30 +18012,20 @@ summary | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Delay;(System.Int32,System.Threading.CancellationToken);Argument[1];ReturnValue;taint;df-generated | | System.Threading.Tasks;Task;Delay;(System.TimeSpan,System.Threading.CancellationToken);Argument[1];ReturnValue;taint;df-generated | | System.Threading.Tasks;Task;Delay;(System.TimeSpan,System.TimeProvider,System.Threading.CancellationToken);Argument[2];ReturnValue;taint;df-generated | @@ -20277,24 +18037,16 @@ summary | System.Threading.Tasks;Task;Run;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;Run;(System.Func,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;Run;(System.Func>);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Run;(System.Func>);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Run;(System.Func>,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Run;(System.Func>,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Run;(System.Func);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Run;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Run;(System.Func,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Run;(System.Func,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;Task;(System.Action,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;Task;(System.Action,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;Task;(System.Action,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;Task;Task;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;Task;(System.Action,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Action,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;Task;(System.Action,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Action,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;Task;(System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;WaitAsync;(System.Threading.CancellationToken);Argument[0];ReturnValue;taint;df-generated | | System.Threading.Tasks;Task;WaitAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue;value;df-generated | @@ -20318,94 +18070,63 @@ summary | System.Threading.Tasks;Task;WhenAny;(System.Threading.Tasks.Task,System.Threading.Tasks.Task);Argument[1].Element.Property[System.Threading.Tasks.Task`1.Result];ReturnValue.Property[System.Threading.Tasks.Task`1.Result].Element;value;manual | | System.Threading.Tasks;Task;WhenAny;(System.Threading.Tasks.Task[]);Argument[0].Element.Property[System.Threading.Tasks.Task`1.Result];ReturnValue.Property[System.Threading.Tasks.Task`1.Result].Element;value;manual | | System.Threading.Tasks;Task;WhenEach;(System.ReadOnlySpan);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Threading.Tasks;Task;get_AsyncState;();Argument[this].SyntheticField[System.Threading.Tasks.Task.m_stateObject];ReturnValue;value;df-generated | | System.Threading.Tasks;Task;get_AsyncState;();Argument[this].SyntheticField[System.Threading.Tasks.Task.m_stateObject];ReturnValue;value;dfc-generated | -| System.Threading.Tasks;Task;get_AsyncState;();Argument[this];ReturnValue;taint;df-generated | -| System.Threading.Tasks;Task;get_AsyncState;();Argument[this];ReturnValue;taint;dfc-generated | | System.Threading.Tasks;Task;get_AsyncWaitHandle;();Argument[this];ReturnValue;taint;df-generated | | System.Threading.Tasks;Task;ConfigureAwait;(System.Boolean);Argument[this];ReturnValue.SyntheticField[m_configuredTaskAwaiter].SyntheticField[m_task_configured_task_awaitable];value;manual | | System.Threading.Tasks;Task;ConfigureAwait;(System.Threading.Tasks.ConfigureAwaitOptions);Argument[this];ReturnValue;taint;df-generated | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.CancellationToken);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action>);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action>);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.CancellationToken);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.Tasks.TaskContinuationOptions);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.CancellationToken);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;GetAwaiter;();Argument[this];ReturnValue.SyntheticField[m_task_task_awaiter];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;Task;(System.Func);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Threading.CancellationToken);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;WaitAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue;value;df-generated | | System.Threading.Tasks;Task;WaitAsync;(System.TimeSpan);Argument[this];ReturnValue;value;df-generated | | System.Threading.Tasks;Task;WaitAsync;(System.TimeSpan,System.Threading.CancellationToken);Argument[this];ReturnValue;value;df-generated | @@ -20434,243 +18155,131 @@ summary | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>,System.Threading.CancellationToken);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>,System.Threading.CancellationToken);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[2];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[2];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Action,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Action,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[4];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[4];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[5];Argument[0].Parameter[4];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[5];Argument[0].Parameter[4];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[5];Argument[0].Parameter[4];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[5];Argument[0].Parameter[4];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[4];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[4];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[5];Argument[0].Parameter[4];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[5];Argument[0].Parameter[4];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[5];Argument[0].Parameter[4];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[5];Argument[0].Parameter[4];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[4];Argument[0].Parameter[3];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[4];Argument[0].Parameter[3];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[3];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[3];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[4];Argument[0].Parameter[3];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[4];Argument[0].Parameter[3];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[3];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[3];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[3];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[3];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[3];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[3];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[2];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[2];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Func,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -20678,189 +18287,109 @@ summary | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;TaskFactory;(System.Threading.CancellationToken);Argument[0];Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory.m_defaultCancellationToken];value;dfc-generated | | System.Threading.Tasks;TaskFactory;TaskFactory;(System.Threading.Tasks.TaskScheduler);Argument[0];Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory.m_defaultScheduler];value;dfc-generated | | System.Threading.Tasks;TaskFactory;get_CancellationToken;();Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory.m_defaultCancellationToken];ReturnValue;value;dfc-generated | | System.Threading.Tasks;TaskFactory;get_Scheduler;();Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory.m_defaultScheduler];ReturnValue;value;dfc-generated | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[2];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[2];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Func,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[4];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[4];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[5];Argument[0].Parameter[4];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[5];Argument[0].Parameter[4];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[5];Argument[0].Parameter[4];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[5];Argument[0].Parameter[4];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[4];Argument[0].Parameter[3];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[4];Argument[0].Parameter[3];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[3];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[3];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[3];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[3];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;TaskFactory;(System.Threading.CancellationToken);Argument[0];Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory`1.m_defaultCancellationToken];value;dfc-generated | | System.Threading.Tasks;TaskFactory;TaskFactory;(System.Threading.Tasks.TaskScheduler);Argument[0];Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory`1.m_defaultScheduler];value;dfc-generated | | System.Threading.Tasks;TaskFactory;get_CancellationToken;();Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory`1.m_defaultCancellationToken];ReturnValue;value;dfc-generated | @@ -20869,8 +18398,6 @@ summary | System.Threading.Tasks;TaskScheduler;add_UnobservedTaskException;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskScheduler;remove_UnobservedTaskException;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskToAsyncResult;Begin;(System.Threading.Tasks.Task,System.AsyncCallback,System.Object);Argument[0];ReturnValue.SyntheticField[System.Threading.Tasks.TaskToAsyncResult+TaskAsyncResult._task];value;dfc-generated | -| System.Threading.Tasks;TaskToAsyncResult;Begin;(System.Threading.Tasks.Task,System.AsyncCallback,System.Object);Argument[0];ReturnValue.SyntheticField[System.Threading.Tasks.TaskToAsyncResult+TaskAsyncResult._task];value;hq-generated | -| System.Threading.Tasks;TaskToAsyncResult;Begin;(System.Threading.Tasks.Task,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskToAsyncResult;Begin;(System.Threading.Tasks.Task,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;UnobservedTaskExceptionEventArgs;UnobservedTaskExceptionEventArgs;(System.AggregateException);Argument[0];Argument[this].SyntheticField[System.Threading.Tasks.UnobservedTaskExceptionEventArgs.m_exception];value;dfc-generated | | System.Threading.Tasks;UnobservedTaskExceptionEventArgs;get_Exception;();Argument[this].SyntheticField[System.Threading.Tasks.UnobservedTaskExceptionEventArgs.m_exception];ReturnValue;value;dfc-generated | @@ -20900,63 +18427,41 @@ summary | System.Threading;Barrier;Barrier;(System.Int32,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;Register;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;hq-generated | -| System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;hq-generated | -| System.Threading;CancellationToken;Register;(System.Action,System.Object,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Object,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Object,System.Boolean);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading;CancellationToken;Register;(System.Action,System.Object,System.Boolean);Argument[1];Argument[0].Parameter[0];value;hq-generated | -| System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;hq-generated | -| System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;hq-generated | | System.Threading;CancellationToken;get_WaitHandle;();Argument[this];ReturnValue;taint;df-generated | | System.Threading;CancellationTokenRegistration;DisposeAsync;();Argument[this];ReturnValue;taint;df-generated | | System.Threading;CancellationTokenSource;CancelAsync;();Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.Threading;CancellationTokenSource;get_Token;();Argument[this];ReturnValue;taint;df-generated | | System.Threading;CompressedStack;CreateCopy;();Argument[this];ReturnValue;value;dfc-generated | | System.Threading;CompressedStack;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | -| System.Threading;CompressedStack;Run;(System.Threading.CompressedStack,System.Threading.ContextCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading;CompressedStack;Run;(System.Threading.CompressedStack,System.Threading.ContextCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading;CompressedStack;Run;(System.Threading.CompressedStack,System.Threading.ContextCallback,System.Object);Argument[2];Argument[1].Parameter[0];value;dfc-generated | -| System.Threading;CompressedStack;Run;(System.Threading.CompressedStack,System.Threading.ContextCallback,System.Object);Argument[2];Argument[1].Parameter[0];value;hq-generated | | System.Threading;ContextCallback;BeginInvoke;(System.Object,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading;CountdownEvent;get_WaitHandle;();Argument[this];ReturnValue;taint;df-generated | | System.Threading;ExecutionContext;CreateCopy;();Argument[this];ReturnValue;value;dfc-generated | | System.Threading;ExecutionContext;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | -| System.Threading;ExecutionContext;Run;(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading;ExecutionContext;Run;(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading;ExecutionContext;Run;(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object);Argument[2];Argument[1].Parameter[0];value;dfc-generated | -| System.Threading;ExecutionContext;Run;(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object);Argument[2];Argument[1].Parameter[0];value;hq-generated | | System.Threading;HostExecutionContextManager;SetHostExecutionContext;(System.Threading.HostExecutionContext);Argument[0];ReturnValue;taint;df-generated | | System.Threading;IOCompletionCallback;BeginInvoke;(System.UInt32,System.UInt32,System.Threading.NativeOverlapped*,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T);Argument[0];ReturnValue;value;dfc-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object);Argument[0];ReturnValue;value;dfc-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[3].ReturnValue;Argument[0];value;dfc-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[3].ReturnValue;Argument[0];value;hq-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[3].ReturnValue;ReturnValue;value;dfc-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[3].ReturnValue;ReturnValue;value;hq-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Func);Argument[0];ReturnValue;value;hq-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Threading;Lock;EnterScope;();Argument[this];ReturnValue;taint;df-generated | | System.Threading;ManualResetEventSlim;get_WaitHandle;();Argument[this];ReturnValue;taint;df-generated | @@ -20985,10 +18490,8 @@ summary | System.Threading;SpinWait;SpinUntil;(System.Func,System.Int32);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;SpinWait;SpinUntil;(System.Func,System.TimeSpan);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;SynchronizationContext;Post;(System.Threading.SendOrPostCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading;SynchronizationContext;Send;(System.Threading.SendOrPostCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading;SynchronizationContext;Send;(System.Threading.SendOrPostCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;SynchronizationContext;Send;(System.Threading.SendOrPostCallback,System.Object);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading;SynchronizationContext;Send;(System.Threading.SendOrPostCallback,System.Object);Argument[1];Argument[0].Parameter[0];value;hq-generated | | System.Threading;Thread;GetData;(System.LocalDataStoreSlot);Argument[0].SyntheticField[System.LocalDataStoreSlot.Data].Property[System.Threading.ThreadLocal`1.Value];ReturnValue;value;dfc-generated | | System.Threading;Thread;SetData;(System.LocalDataStoreSlot,System.Object);Argument[1];Argument[0].SyntheticField[System.LocalDataStoreSlot.Data].Property[System.Threading.ThreadLocal`1.Value];value;dfc-generated | | System.Threading;Thread;Thread;(System.Threading.ParameterizedThreadStart);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -21033,19 +18536,12 @@ summary | System.Timers;ElapsedEventHandler;BeginInvoke;(System.Object,System.Timers.ElapsedEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Timers;Timer;add_Elapsed;(System.Timers.ElapsedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Timers;Timer;remove_Elapsed;(System.Timers.ElapsedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Timers;TimersDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.DescriptionValue];ReturnValue;value;dfc-generated | | System.Timers;TimersDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.Description];Argument[this].Property[System.ComponentModel.DescriptionAttribute.DescriptionValue];taint;dfc-generated | | System.Timers;TimersDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.Description];ReturnValue;value;dfc-generated | -| System.Transactions;CommittableTransaction;BeginCommit;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Transactions;CommittableTransaction;BeginCommit;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Transactions;CommittableTransaction;BeginCommit;(System.AsyncCallback,System.Object);Argument[1];ReturnValue.SyntheticField[System.Transactions.Transaction._internalTransaction].SyntheticField[System.Transactions.InternalTransaction._asyncState];value;dfc-generated | -| System.Transactions;CommittableTransaction;BeginCommit;(System.AsyncCallback,System.Object);Argument[1];ReturnValue.SyntheticField[System.Transactions.Transaction._internalTransaction].SyntheticField[System.Transactions.InternalTransaction._asyncState];value;hq-generated | | System.Transactions;CommittableTransaction;BeginCommit;(System.AsyncCallback,System.Object);Argument[this];ReturnValue;value;dfc-generated | -| System.Transactions;CommittableTransaction;BeginCommit;(System.AsyncCallback,System.Object);Argument[this];ReturnValue;value;hq-generated | -| System.Transactions;CommittableTransaction;get_AsyncState;();Argument[this].SyntheticField[System.Transactions.Transaction._internalTransaction].SyntheticField[System.Transactions.InternalTransaction._asyncState];ReturnValue;value;df-generated | | System.Transactions;CommittableTransaction;get_AsyncState;();Argument[this].SyntheticField[System.Transactions.Transaction._internalTransaction].SyntheticField[System.Transactions.InternalTransaction._asyncState];ReturnValue;value;dfc-generated | -| System.Transactions;CommittableTransaction;get_AsyncState;();Argument[this];ReturnValue;taint;df-generated | -| System.Transactions;CommittableTransaction;get_AsyncState;();Argument[this];ReturnValue;taint;dfc-generated | | System.Transactions;CommittableTransaction;get_AsyncWaitHandle;();Argument[this];ReturnValue;taint;df-generated | | System.Transactions;DistributedTransactionPermission;Copy;();Argument[this];ReturnValue;value;dfc-generated | | System.Transactions;DistributedTransactionPermission;Intersect;(System.Security.IPermission);Argument[0];ReturnValue;value;dfc-generated | @@ -21290,13 +18786,8 @@ summary | System.Xml.Resolvers;XmlPreloadedResolver;Add;(System.Uri,System.IO.Stream);Argument[0];Argument[this];taint;df-generated | | System.Xml.Resolvers;XmlPreloadedResolver;Add;(System.Uri,System.String);Argument[0];Argument[this];taint;df-generated | | System.Xml.Resolvers;XmlPreloadedResolver;GetEntity;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue;taint;dfc-generated | -| System.Xml.Resolvers;XmlPreloadedResolver;GetEntity;(System.Uri,System.String,System.Type);Argument[0];ReturnValue;taint;dfc-generated | -| System.Xml.Resolvers;XmlPreloadedResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;df-generated | | System.Xml.Resolvers;XmlPreloadedResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Xml.Resolvers;XmlPreloadedResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;df-generated | | System.Xml.Resolvers;XmlPreloadedResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Xml.Resolvers;XmlPreloadedResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue;taint;df-generated | -| System.Xml.Resolvers;XmlPreloadedResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue;taint;dfc-generated | | System.Xml.Resolvers;XmlPreloadedResolver;ResolveUri;(System.Uri,System.String);Argument[0];ReturnValue;value;dfc-generated | | System.Xml.Resolvers;XmlPreloadedResolver;ResolveUri;(System.Uri,System.String);Argument[1];ReturnValue;taint;dfc-generated | | System.Xml.Resolvers;XmlPreloadedResolver;XmlPreloadedResolver;(System.Xml.XmlResolver,System.Xml.Resolvers.XmlKnownDtds,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[this];taint;df-generated | @@ -21352,7 +18843,6 @@ summary | System.Xml.Schema;XmlSchemaCollection;Add;(System.Xml.Schema.XmlSchemaCollection);Argument[0];Argument[this].Element;value;manual | | System.Xml.Schema;XmlSchemaCollection;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Xml.Schema;XmlSchemaCollection;CopyTo;(System.Xml.Schema.XmlSchema[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | -| System.Xml.Schema;XmlSchemaCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Xml.Schema;XmlSchemaCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Xml.Schema.XmlSchemaCollectionEnumerator.Current];value;manual | | System.Xml.Schema;XmlSchemaCollection;XmlSchemaCollection;(System.Xml.XmlNameTable);Argument[0];Argument[this].SyntheticField[System.Xml.Schema.XmlSchemaCollection._nameTable];value;dfc-generated | | System.Xml.Schema;XmlSchemaCollection;add_ValidationEventHandler;(System.Xml.Schema.ValidationEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -21360,10 +18850,7 @@ summary | System.Xml.Schema;XmlSchemaCollection;get_NameTable;();Argument[this].SyntheticField[System.Xml.Schema.XmlSchemaCollection._nameTable];ReturnValue;value;dfc-generated | | System.Xml.Schema;XmlSchemaCollection;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System.Xml.Schema;XmlSchemaCollection;remove_ValidationEventHandler;(System.Xml.Schema.ValidationEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Xml.Schema;XmlSchemaCollectionEnumerator;get_Current;();Argument[this].Property[System.Xml.Schema.XmlSchemaCollectionEnumerator.Current];ReturnValue;value;df-generated | | System.Xml.Schema;XmlSchemaCollectionEnumerator;get_Current;();Argument[this].Property[System.Xml.Schema.XmlSchemaCollectionEnumerator.Current];ReturnValue;value;dfc-generated | -| System.Xml.Schema;XmlSchemaCollectionEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Xml.Schema;XmlSchemaCollectionEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Xml.Schema;XmlSchemaComplexContentExtension;get_Attributes;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.Schema;XmlSchemaComplexContentRestriction;get_Attributes;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.Schema;XmlSchemaComplexType;get_AttributeWildcard;();Argument[this];ReturnValue;taint;df-generated | @@ -21386,7 +18873,6 @@ summary | System.Xml.Schema;XmlSchemaException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Xml.Schema;XmlSchemaException;XmlSchemaException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this];taint;df-generated | | System.Xml.Schema;XmlSchemaException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Xml.Schema;XmlSchemaException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Xml.Schema;XmlSchemaException;get_SourceSchemaObject;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.Schema;XmlSchemaException;get_SourceUri;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.Schema;XmlSchemaGroup;get_QualifiedName;();Argument[this];ReturnValue;taint;df-generated | @@ -21594,10 +19080,7 @@ summary | System.Xml.Serialization;XmlReflectionImporter;XmlReflectionImporter;(System.Xml.Serialization.XmlAttributeOverrides,System.String);Argument[1];Argument[this];taint;df-generated | | System.Xml.Serialization;XmlRootAttribute;XmlRootAttribute;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Xml.Serialization;XmlSchemaEnumerator;XmlSchemaEnumerator;(System.Xml.Serialization.XmlSchemas);Argument[0];Argument[this].SyntheticField[System.Xml.Serialization.XmlSchemaEnumerator._list];value;dfc-generated | -| System.Xml.Serialization;XmlSchemaEnumerator;get_Current;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSchemaEnumerator._list].Element;ReturnValue;value;df-generated | | System.Xml.Serialization;XmlSchemaEnumerator;get_Current;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSchemaEnumerator._list].Element;ReturnValue;value;dfc-generated | -| System.Xml.Serialization;XmlSchemaEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Xml.Serialization;XmlSchemaEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Xml.Serialization;XmlSchemaExporter;ExportAnyType;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Xml.Serialization;XmlSchemaExporter;ExportAnyType;(System.Xml.Serialization.XmlMembersMapping);Argument[0];Argument[this];taint;df-generated | | System.Xml.Serialization;XmlSchemaExporter;ExportMembersMapping;(System.Xml.Serialization.XmlMembersMapping);Argument[0];Argument[this];taint;df-generated | @@ -21628,23 +19111,16 @@ summary | System.Xml.Serialization;XmlSerializationFixupCallback;BeginInvoke;(System.Object,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Xml.Serialization;XmlSerializationReadCallback;BeginInvoke;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._collection];value;dfc-generated | -| System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._collection];value;hq-generated | -| System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[1];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._callback];value;dfc-generated | -| System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[1];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._callback];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[2];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._collectionItems];value;dfc-generated | -| System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[2];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._collectionItems];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;get_Callback;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._callback];ReturnValue;value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;get_Collection;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._collection];ReturnValue;value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;get_CollectionItems;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._collectionItems];ReturnValue;value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.Int32);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.String[]);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.String[]);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.String[]);Argument[1];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+Fixup._callback];value;dfc-generated | -| System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.String[]);Argument[1];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+Fixup._callback];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.String[]);Argument[2];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+Fixup._ids];value;dfc-generated | -| System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.String[]);Argument[2];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+Fixup._ids];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+Fixup;get_Callback;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+Fixup._callback];ReturnValue;value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader+Fixup;get_Ids;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+Fixup._ids];ReturnValue;value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader;AddFixup;(System.Xml.Serialization.XmlSerializationReader+CollectionFixup);Argument[0];Argument[this];taint;df-generated | @@ -21876,13 +19352,11 @@ summary | System.Xml.XPath;XPathDocument;XPathDocument;(System.Xml.XmlReader,System.Xml.XmlSpace);Argument[0];Argument[this];taint;df-generated | | System.Xml.XPath;XPathException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Xml.XPath.XPathException._args];Argument[0];taint;dfc-generated | | System.Xml.XPath;XPathException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Xml.XPath.XPathException._res];Argument[0];taint;dfc-generated | -| System.Xml.XPath;XPathException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Xml.XPath;XPathException;XPathException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.Xml.XPath.XPathException._args];taint;dfc-generated | | System.Xml.XPath;XPathException;XPathException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.Xml.XPath.XPathException._message];taint;dfc-generated | | System.Xml.XPath;XPathException;XPathException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.Xml.XPath.XPathException._res];taint;dfc-generated | | System.Xml.XPath;XPathException;XPathException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Xml.XPath.XPathException._res];Argument[this].SyntheticField[System.Xml.XPath.XPathException._message];value;dfc-generated | | System.Xml.XPath;XPathException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Xml.XPath;XPathException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Xml.XPath;XPathException;get_Message;();Argument[this].SyntheticField[System.Xml.XPath.XPathException._message];ReturnValue;value;dfc-generated | | System.Xml.XPath;XPathExpression;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Xml.XPath;XPathExpression;Compile;(System.String);Argument[0];ReturnValue;taint;df-generated | @@ -21914,10 +19388,7 @@ summary | System.Xml.XPath;XPathNavigator;InsertAfter;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.XPath;XPathNavigator;InsertBefore;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.XPath;XPathNavigator;LookupNamespace;(System.String);Argument[0];ReturnValue;value;dfc-generated | -| System.Xml.XPath;XPathNavigator;LookupPrefix;(System.String);Argument[this].Property[System.Xml.XPath.XPathNavigator.LocalName];ReturnValue;value;df-generated | | System.Xml.XPath;XPathNavigator;LookupPrefix;(System.String);Argument[this].Property[System.Xml.XPath.XPathNavigator.LocalName];ReturnValue;value;dfc-generated | -| System.Xml.XPath;XPathNavigator;LookupPrefix;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Xml.XPath;XPathNavigator;LookupPrefix;(System.String);Argument[this];ReturnValue;taint;dfc-generated | | System.Xml.XPath;XPathNavigator;MoveTo;(System.Xml.XPath.XPathNavigator);Argument[0];Argument[this];taint;df-generated | | System.Xml.XPath;XPathNavigator;PrependChild;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.XPath;XPathNavigator;ReadSubtree;();Argument[this];ReturnValue;taint;df-generated | @@ -21980,7 +19451,6 @@ summary | System.Xml.Xsl;XsltException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Xml.Xsl;XsltException;XsltException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this];taint;df-generated | | System.Xml.Xsl;XsltException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Xml.Xsl;XsltException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Xml.Xsl;XsltException;get_SourceUri;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.Xsl;XsltMessageEncounteredEventArgs;get_Message;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.Xsl;XsltMessageEncounteredEventHandler;BeginInvoke;(System.Object,System.Xml.Xsl.XsltMessageEncounteredEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | @@ -22112,7 +19582,6 @@ summary | System.Xml;XmlDataDocument;CreateElement;(System.String,System.String,System.String);Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlDataDocument;CreateEntityReference;(System.String);Argument[0];ReturnValue;taint;df-generated | | System.Xml;XmlDataDocument;CreateNavigator;(System.Xml.XmlNode);Argument[this];ReturnValue.SyntheticField[System.Xml.DataDocumentXPathNavigator._doc];value;dfc-generated | -| System.Xml;XmlDataDocument;CreateNavigator;(System.Xml.XmlNode);Argument[this];ReturnValue.SyntheticField[System.Xml.DocumentXPathNavigator._document];value;dfc-generated | | System.Xml;XmlDataDocument;GetElementFromRow;(System.Data.DataRow);Argument[0];ReturnValue;taint;df-generated | | System.Xml;XmlDataDocument;GetElementsByTagName;(System.String);Argument[0];ReturnValue;taint;df-generated | | System.Xml;XmlDataDocument;GetRowFromElement;(System.Xml.XmlElement);Argument[0].Element;ReturnValue;taint;df-generated | @@ -22142,7 +19611,6 @@ summary | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.Byte[],System.Int32,System.Int32,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[0].Element;ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.Byte[],System.Int32,System.Int32,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[3];ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.Byte[],System.Int32,System.Int32,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[5];ReturnValue;taint;manual | -| System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.Byte[],System.Int32,System.Int32,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[6];Argument[6].Parameter[delegate-self];value;manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.Byte[],System.Int32,System.Int32,System.Xml.XmlDictionaryReaderQuotas);Argument[0].Element;ReturnValue;taint;df-manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.Byte[],System.Xml.XmlDictionaryReaderQuotas);Argument[0].Element;ReturnValue;taint;df-manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.IO.Stream,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas);Argument[0];ReturnValue;taint;df-manual | @@ -22153,17 +19621,14 @@ summary | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.IO.Stream,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[0];ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.IO.Stream,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[1];ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.IO.Stream,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[3];ReturnValue;taint;manual | -| System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.IO.Stream,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.IO.Stream,System.Xml.XmlDictionaryReaderQuotas);Argument[0];ReturnValue;taint;df-manual | | System.Xml;XmlDictionaryReader;CreateDictionaryReader;(System.Xml.XmlReader);Argument[0];ReturnValue;value;dfc-generated | | System.Xml;XmlDictionaryReader;CreateMtomReader;(System.Byte[],System.Int32,System.Int32,System.Text.Encoding[],System.String,System.Xml.XmlDictionaryReaderQuotas,System.Int32,System.Xml.OnXmlDictionaryReaderClose);Argument[7];Argument[7].Parameter[delegate-self];value;hq-generated | | System.Xml;XmlDictionaryReader;CreateMtomReader;(System.IO.Stream,System.Text.Encoding[],System.String,System.Xml.XmlDictionaryReaderQuotas,System.Int32,System.Xml.OnXmlDictionaryReaderClose);Argument[5];Argument[5].Parameter[delegate-self];value;hq-generated | | System.Xml;XmlDictionaryReader;CreateTextReader;(System.Byte[],System.Int32,System.Int32,System.Text.Encoding,System.Xml.XmlDictionaryReaderQuotas,System.Xml.OnXmlDictionaryReaderClose);Argument[0].Element;ReturnValue;taint;manual | -| System.Xml;XmlDictionaryReader;CreateTextReader;(System.Byte[],System.Int32,System.Int32,System.Text.Encoding,System.Xml.XmlDictionaryReaderQuotas,System.Xml.OnXmlDictionaryReaderClose);Argument[5];Argument[5].Parameter[delegate-self];value;manual | | System.Xml;XmlDictionaryReader;CreateTextReader;(System.Byte[],System.Int32,System.Int32,System.Xml.XmlDictionaryReaderQuotas);Argument[0].Element;ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;CreateTextReader;(System.Byte[],System.Xml.XmlDictionaryReaderQuotas);Argument[0].Element;ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;CreateTextReader;(System.IO.Stream,System.Text.Encoding,System.Xml.XmlDictionaryReaderQuotas,System.Xml.OnXmlDictionaryReaderClose);Argument[0];ReturnValue;taint;manual | -| System.Xml;XmlDictionaryReader;CreateTextReader;(System.IO.Stream,System.Text.Encoding,System.Xml.XmlDictionaryReaderQuotas,System.Xml.OnXmlDictionaryReaderClose);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Xml;XmlDictionaryReader;CreateTextReader;(System.IO.Stream,System.Xml.XmlDictionaryReaderQuotas);Argument[0];ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;GetAttribute;(System.Xml.XmlDictionaryString,System.Xml.XmlDictionaryString);Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlDictionaryReader;GetNonAtomizedNames;(System.String,System.String);Argument[this];Argument[0];taint;df-generated | @@ -22437,7 +19902,6 @@ summary | System.Xml;XmlException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System.Xml;XmlException;XmlException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this];taint;df-generated | | System.Xml;XmlException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Xml;XmlException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Xml;XmlException;get_SourceUri;();Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlImplementation;CreateDocument;();Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlImplementation;XmlImplementation;(System.Xml.XmlNameTable);Argument[0];Argument[this];taint;df-generated | @@ -22469,9 +19933,6 @@ summary | System.Xml;XmlNode;AppendChild;(System.Xml.XmlNode);Argument[this];Argument[0].Element;taint;df-generated | | System.Xml;XmlNode;AppendChild;(System.Xml.XmlNode);Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlNode;Clone;();Argument[this];ReturnValue;taint;df-generated | -| System.Xml;XmlNode;Clone;();Argument[this];ReturnValue;taint;dfc-generated | -| System.Xml;XmlNode;Clone;();Argument[this];ReturnValue;value;df-generated | -| System.Xml;XmlNode;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Xml;XmlNode;CloneNode;(System.Boolean);Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlNode;CreateNavigator;();Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlNode;CreateNavigator;();Argument[this];ReturnValue;value;df-generated | @@ -22594,10 +20055,7 @@ summary | System.Xml;XmlParserContext;XmlParserContext;(System.Xml.XmlNameTable,System.Xml.XmlNamespaceManager,System.String,System.String,System.String,System.String,System.String,System.String,System.Xml.XmlSpace,System.Text.Encoding);Argument[6];Argument[this];taint;df-generated | | System.Xml;XmlParserContext;XmlParserContext;(System.Xml.XmlNameTable,System.Xml.XmlNamespaceManager,System.String,System.String,System.String,System.String,System.String,System.String,System.Xml.XmlSpace,System.Text.Encoding);Argument[7];Argument[this];taint;df-generated | | System.Xml;XmlParserContext;XmlParserContext;(System.Xml.XmlNameTable,System.Xml.XmlNamespaceManager,System.String,System.String,System.String,System.String,System.String,System.String,System.Xml.XmlSpace,System.Text.Encoding);Argument[9];Argument[this];taint;df-generated | -| System.Xml;XmlProcessingInstruction;CloneNode;(System.Boolean);Argument[this].SyntheticField[System.Xml.XmlProcessingInstruction._target];ReturnValue.SyntheticField[System.Xml.XmlProcessingInstruction._target];value;df-generated | | System.Xml;XmlProcessingInstruction;CloneNode;(System.Boolean);Argument[this].SyntheticField[System.Xml.XmlProcessingInstruction._target];ReturnValue.SyntheticField[System.Xml.XmlProcessingInstruction._target];value;dfc-generated | -| System.Xml;XmlProcessingInstruction;CloneNode;(System.Boolean);Argument[this];ReturnValue;taint;df-generated | -| System.Xml;XmlProcessingInstruction;CloneNode;(System.Boolean);Argument[this];ReturnValue;taint;dfc-generated | | System.Xml;XmlProcessingInstruction;WriteContentTo;(System.Xml.XmlWriter);Argument[this];Argument[0];taint;df-generated | | System.Xml;XmlProcessingInstruction;WriteTo;(System.Xml.XmlWriter);Argument[this];Argument[0];taint;df-generated | | System.Xml;XmlProcessingInstruction;XmlProcessingInstruction;(System.String,System.String,System.Xml.XmlDocument);Argument[0];Argument[this].SyntheticField[System.Xml.XmlProcessingInstruction._target];value;dfc-generated | @@ -22687,13 +20145,8 @@ summary | System.Xml;XmlResolver;ResolveUri;(System.Uri,System.String);Argument[1];ReturnValue;taint;dfc-generated | | System.Xml;XmlResolver;set_Credentials;(System.Net.ICredentials);Argument[0];Argument[this];taint;df-generated | | System.Xml;XmlSecureResolver;GetEntity;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue;taint;dfc-generated | -| System.Xml;XmlSecureResolver;GetEntity;(System.Uri,System.String,System.Type);Argument[0];ReturnValue;taint;dfc-generated | -| System.Xml;XmlSecureResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;df-generated | | System.Xml;XmlSecureResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Xml;XmlSecureResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;df-generated | | System.Xml;XmlSecureResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Xml;XmlSecureResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue;taint;df-generated | -| System.Xml;XmlSecureResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue;taint;dfc-generated | | System.Xml;XmlSecureResolver;ResolveUri;(System.Uri,System.String);Argument[0];ReturnValue;value;dfc-generated | | System.Xml;XmlSecureResolver;ResolveUri;(System.Uri,System.String);Argument[1];ReturnValue;taint;dfc-generated | | System.Xml;XmlSecureResolver;set_Credentials;(System.Net.ICredentials);Argument[0];Argument[this];taint;df-generated | @@ -22762,69 +20215,26 @@ summary | System.Xml;XmlTextWriter;WriteCData;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Xml;XmlTextWriter;WriteChars;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this];taint;df-generated | | System.Xml;XmlTextWriter;WriteComment;(System.String);Argument[0];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[0];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[0];Argument[this];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[1];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[1];Argument[this];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[2];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[2];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[2];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[2];Argument[this];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[3];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[3];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[3];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[3];Argument[this];taint;dfc-generated | | System.Xml;XmlTextWriter;WriteEntityRef;(System.String);Argument[0];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteName;(System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteName;(System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteName;(System.String);Argument[0];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteName;(System.String);Argument[0];Argument[this];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteNmToken;(System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteNmToken;(System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteNmToken;(System.String);Argument[0];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteNmToken;(System.String);Argument[0];Argument[this];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteProcessingInstruction;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteProcessingInstruction;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteProcessingInstruction;(System.String,System.String);Argument[0];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteProcessingInstruction;(System.String,System.String);Argument[0];Argument[this];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteProcessingInstruction;(System.String,System.String);Argument[1];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteProcessingInstruction;(System.String,System.String);Argument[1];Argument[this];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteQualifiedName;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteQualifiedName;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteQualifiedName;(System.String,System.String);Argument[0];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteQualifiedName;(System.String,System.String);Argument[0];Argument[this];taint;dfc-generated | | System.Xml;XmlTextWriter;WriteRaw;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this];taint;df-generated | | System.Xml;XmlTextWriter;WriteRaw;(System.String);Argument[0];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[0];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[0];Argument[this];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[1];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[1];Argument[this];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[2];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[2];Argument[this];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[0];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[0];Argument[this];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[1];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[1];Argument[this];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[2];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[2];Argument[this];taint;dfc-generated | | System.Xml;XmlTextWriter;WriteString;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Xml;XmlTextWriter;WriteWhitespace;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Xml;XmlTextWriter;get_BaseStream;();Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter].Property[System.IO.StreamWriter.BaseStream];ReturnValue;value;dfc-generated | | System.Xml;XmlTextWriter;get_XmlLang;();Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlUrlResolver;GetEntity;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue;taint;dfc-generated | -| System.Xml;XmlUrlResolver;GetEntity;(System.Uri,System.String,System.Type);Argument[0];ReturnValue;taint;dfc-generated | | System.Xml;XmlUrlResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue;taint;df-generated | | System.Xml;XmlUrlResolver;ResolveUri;(System.Uri,System.String);Argument[0];ReturnValue;value;dfc-generated | | System.Xml;XmlUrlResolver;ResolveUri;(System.Uri,System.String);Argument[1];ReturnValue;taint;dfc-generated | @@ -22978,12 +20388,9 @@ summary | System;AggregateException;AggregateException;(System.String,System.Exception);Argument[1];Argument[this].SyntheticField[System.AggregateException._innerExceptions].Element;value;dfc-generated | | System;AggregateException;GetBaseException;();Argument[this];ReturnValue;value;df-generated | | System;AggregateException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | -| System;AggregateException;Handle;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System;AggregateException;Handle;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System;AggregateException;Handle;(System.Func);Argument[this].SyntheticField[System.AggregateException._innerExceptions].Element;Argument[0].Parameter[0];value;dfc-generated | -| System;AggregateException;Handle;(System.Func);Argument[this].SyntheticField[System.AggregateException._innerExceptions].Element;Argument[0].Parameter[0];value;hq-generated | | System;AggregateException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System;AggregateException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System;AppDomain;ApplyPolicy;(System.String);Argument[0];ReturnValue;value;dfc-generated | | System;AppDomain;ToString;();Argument[this].Property[System.AppDomain.FriendlyName];ReturnValue;taint;dfc-generated | | System;AppDomain;add_AssemblyLoad;(System.AssemblyLoadEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -23015,7 +20422,6 @@ summary | System;ArgumentException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System;ArgumentException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | | System;ArgumentException;get_Message;();Argument[this].SyntheticField[System.ArgumentException._paramName];ReturnValue;taint;dfc-generated | -| System;ArgumentException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System;ArgumentException;get_ParamName;();Argument[this].SyntheticField[System.ArgumentException._paramName];ReturnValue;value;dfc-generated | | System;ArgumentOutOfRangeException;ArgumentOutOfRangeException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0].SyntheticField[System.Runtime.Serialization.SerializationInfo._values].Element;Argument[this].SyntheticField[System.ArgumentOutOfRangeException._actualValue];value;dfc-generated | | System;ArgumentOutOfRangeException;ArgumentOutOfRangeException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.ArgumentOutOfRangeException._actualValue];taint;dfc-generated | @@ -23033,55 +20439,33 @@ summary | System;Array;Clone;();Argument[this].Element;ReturnValue.Element;value;manual | | System;Array;Contains;(System.Object);Argument[0];Argument[this];taint;df-generated | | System;Array;ConvertAll;(TInput[],System.Converter);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;Array;ConvertAll;(TInput[],System.Converter);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System;Array;ConvertAll;(TInput[],System.Converter);Argument[1].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System;Array;ConvertAll;(TInput[],System.Converter);Argument[1].ReturnValue;ReturnValue.Element;value;hq-generated | -| System;Array;ConvertAll;(TInput[],System.Converter);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;Array;ConvertAll;(TInput[],System.Converter);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;CopyTo;(System.Array,System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System;Array;CopyTo;(System.Array,System.Int64);Argument[this].Element;Argument[0].Element;value;manual | | System;Array;Exists;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;Array;Exists;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System;Array;Exists;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;Array;Exists;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;Fill;(T[],T);Argument[1];Argument[0].Element;value;dfc-generated | | System;Array;Fill;(T[],T,System.Int32,System.Int32);Argument[1];Argument[0].Element;value;dfc-generated | | System;Array;Find;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System;Array;Find;(T[],System.Predicate);Argument[0].Element;ReturnValue;value;manual | -| System;Array;Find;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System;Array;FindAll;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System;Array;FindAll;(T[],System.Predicate);Argument[0].Element;ReturnValue;value;manual | -| System;Array;FindAll;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System;Array;FindIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[0].Element;Argument[3].Parameter[0];value;dfc-generated | -| System;Array;FindIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[0].Element;Argument[3].Parameter[0];value;hq-generated | -| System;Array;FindIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System;Array;FindIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System;Array;FindIndex;(T[],System.Int32,System.Predicate);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System;Array;FindIndex;(T[],System.Int32,System.Predicate);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | -| System;Array;FindIndex;(T[],System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System;Array;FindIndex;(T[],System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System;Array;FindIndex;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;Array;FindIndex;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System;Array;FindIndex;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;Array;FindIndex;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;FindLast;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System;Array;FindLast;(T[],System.Predicate);Argument[0].Element;ReturnValue;value;manual | -| System;Array;FindLast;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System;Array;FindLastIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[0].Element;Argument[3].Parameter[0];value;dfc-generated | -| System;Array;FindLastIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[0].Element;Argument[3].Parameter[0];value;hq-generated | -| System;Array;FindLastIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System;Array;FindLastIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System;Array;FindLastIndex;(T[],System.Int32,System.Predicate);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System;Array;FindLastIndex;(T[],System.Int32,System.Predicate);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | -| System;Array;FindLastIndex;(T[],System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System;Array;FindLastIndex;(T[],System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System;Array;FindLastIndex;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;Array;FindLastIndex;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System;Array;FindLastIndex;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;Array;FindLastIndex;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;ForEach;(T[],System.Action);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;Array;ForEach;(T[],System.Action);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System;Array;ForEach;(T[],System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;Array;ForEach;(T[],System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System;Array;Insert;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | @@ -23092,18 +20476,12 @@ summary | System;Array;Reverse;(T[],System.Int32,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System;Array;Sort;(T[],System.Comparison);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;TrueForAll;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;Array;TrueForAll;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System;Array;TrueForAll;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;Array;TrueForAll;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;get_Item;(System.Int32);Argument[this].Element;ReturnValue;value;manual | | System;Array;get_SyncRoot;();Argument[this];ReturnValue;value;dfc-generated | | System;Array;set_Item;(System.Int32,System.Object);Argument[1];Argument[this].Element;value;manual | -| System;ArraySegment+Enumerator;get_Current;();Argument[this].Property[System.ArraySegment`1+Enumerator.Current];ReturnValue;value;df-generated | | System;ArraySegment+Enumerator;get_Current;();Argument[this].Property[System.ArraySegment`1+Enumerator.Current];ReturnValue;value;dfc-generated | -| System;ArraySegment+Enumerator;get_Current;();Argument[this].SyntheticField[System.ArraySegment`1+Enumerator._array].Element;ReturnValue;value;df-generated | | System;ArraySegment+Enumerator;get_Current;();Argument[this].SyntheticField[System.ArraySegment`1+Enumerator._array].Element;ReturnValue;value;dfc-generated | -| System;ArraySegment+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System;ArraySegment+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System;ArraySegment;Add;(T);Argument[0];Argument[this].Element;value;manual | | System;ArraySegment;ArraySegment;(T[]);Argument[0];Argument[this].SyntheticField[System.ArraySegment`1._array];value;dfc-generated | | System;ArraySegment;ArraySegment;(T[],System.Int32,System.Int32);Argument[0];Argument[this].SyntheticField[System.ArraySegment`1._array];value;dfc-generated | @@ -23140,39 +20518,17 @@ summary | System;Boolean;TryParse;(System.ReadOnlySpan,System.Boolean);Argument[0].Element;ReturnValue;taint;manual | | System;Boolean;TryParse;(System.String,System.Boolean);Argument[0];Argument[1];taint;manual | | System;Boolean;TryParse;(System.String,System.Boolean);Argument[0];ReturnValue;taint;manual | -| System;Byte;Clamp;(System.Byte,System.Byte,System.Byte);Argument[0];ReturnValue;value;dfc-generated | -| System;Byte;Clamp;(System.Byte,System.Byte,System.Byte);Argument[1];ReturnValue;value;dfc-generated | -| System;Byte;Clamp;(System.Byte,System.Byte,System.Byte);Argument[2];ReturnValue;value;dfc-generated | -| System;Byte;CopySign;(System.Byte,System.Byte);Argument[0];ReturnValue;value;dfc-generated | -| System;Byte;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Byte;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Byte;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Byte;Max;(System.Byte,System.Byte);Argument[0];ReturnValue;value;dfc-generated | -| System;Byte;Max;(System.Byte,System.Byte);Argument[1];ReturnValue;value;dfc-generated | -| System;Byte;MaxNumber;(System.Byte,System.Byte);Argument[0];ReturnValue;value;dfc-generated | -| System;Byte;MaxNumber;(System.Byte,System.Byte);Argument[1];ReturnValue;value;dfc-generated | -| System;Byte;Min;(System.Byte,System.Byte);Argument[0];ReturnValue;value;dfc-generated | -| System;Byte;Min;(System.Byte,System.Byte);Argument[1];ReturnValue;value;dfc-generated | -| System;Byte;MinNumber;(System.Byte,System.Byte);Argument[0];ReturnValue;value;dfc-generated | -| System;Byte;MinNumber;(System.Byte,System.Byte);Argument[1];ReturnValue;value;dfc-generated | -| System;Byte;MultiplyAddEstimate;(System.Byte,System.Byte,System.Byte);Argument[2];ReturnValue;taint;dfc-generated | -| System;Byte;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Byte,System.Byte);Argument[0];ReturnValue;taint;dfc-generated | -| System;Byte;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Byte,System.Byte);Argument[1];ReturnValue;taint;dfc-generated | | System;Byte;ToDateTime;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Byte;ToDecimal;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Byte;ToString;(System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | | System;Byte;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System;Byte;ToType;(System.Type,System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | -| System;Char;MultiplyAddEstimate;(System.Char,System.Char,System.Char);Argument[2];ReturnValue;taint;dfc-generated | -| System;Char;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Char,System.Char);Argument[0];ReturnValue;taint;dfc-generated | -| System;Char;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Char,System.Char);Argument[1];ReturnValue;taint;dfc-generated | | System;Char;ToDateTime;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Char;ToDecimal;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Char;ToString;(System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | | System;Char;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System;Char;ToType;(System.Type,System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | | System;CharEnumerator;Clone;();Argument[this];ReturnValue;value;dfc-generated | -| System;CharEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System;Comparison;BeginInvoke;(T,T,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System;Console;add_CancelKeyPress;(System.ConsoleCancelEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System;Console;remove_CancelKeyPress;(System.ConsoleCancelEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -23521,25 +20877,7 @@ summary | System;DateTimeOffset;Deconstruct;(System.DateOnly,System.TimeOnly,System.TimeSpan);Argument[this].Property[System.DateTimeOffset.Offset];Argument[2];value;dfc-generated | | System;DateTimeOffset;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System;DateTimeOffset;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | -| System;Decimal;Clamp;(System.Decimal,System.Decimal,System.Decimal);Argument[0];ReturnValue;value;dfc-generated | -| System;Decimal;Clamp;(System.Decimal,System.Decimal,System.Decimal);Argument[1];ReturnValue;value;dfc-generated | -| System;Decimal;Clamp;(System.Decimal,System.Decimal,System.Decimal);Argument[2];ReturnValue;value;dfc-generated | -| System;Decimal;ConvertToInteger;(System.Decimal);Argument[0];ReturnValue;value;dfc-generated | -| System;Decimal;ConvertToIntegerNative;(System.Decimal);Argument[0];ReturnValue;value;dfc-generated | -| System;Decimal;CopySign;(System.Decimal,System.Decimal);Argument[0];ReturnValue;value;dfc-generated | -| System;Decimal;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Decimal;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Decimal;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | | System;Decimal;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | -| System;Decimal;Max;(System.Decimal,System.Decimal);Argument[0];ReturnValue;value;dfc-generated | -| System;Decimal;Max;(System.Decimal,System.Decimal);Argument[1];ReturnValue;value;dfc-generated | -| System;Decimal;MaxNumber;(System.Decimal,System.Decimal);Argument[0];ReturnValue;value;dfc-generated | -| System;Decimal;MaxNumber;(System.Decimal,System.Decimal);Argument[1];ReturnValue;value;dfc-generated | -| System;Decimal;Min;(System.Decimal,System.Decimal);Argument[0];ReturnValue;value;dfc-generated | -| System;Decimal;Min;(System.Decimal,System.Decimal);Argument[1];ReturnValue;value;dfc-generated | -| System;Decimal;MinNumber;(System.Decimal,System.Decimal);Argument[0];ReturnValue;value;dfc-generated | -| System;Decimal;MinNumber;(System.Decimal,System.Decimal);Argument[1];ReturnValue;value;dfc-generated | -| System;Decimal;MultiplyAddEstimate;(System.Decimal,System.Decimal,System.Decimal);Argument[2];ReturnValue;taint;dfc-generated | | System;Decimal;ToDateTime;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Decimal;ToDecimal;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Decimal;ToString;(System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | @@ -23564,31 +20902,6 @@ summary | System;Delegate;RemoveAll;(System.Delegate,System.Delegate);Argument[0];ReturnValue;value;dfc-generated | | System;Delegate;RemoveImpl;(System.Delegate);Argument[this];ReturnValue;value;dfc-generated | | System;Delegate;get_Target;();Argument[this].SyntheticField[System.Delegate._target];ReturnValue;value;dfc-generated | -| System;Double;Clamp;(System.Double,System.Double,System.Double);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;Clamp;(System.Double,System.Double,System.Double);Argument[1];ReturnValue;value;dfc-generated | -| System;Double;Clamp;(System.Double,System.Double,System.Double);Argument[2];ReturnValue;value;dfc-generated | -| System;Double;ClampNative;(System.Double,System.Double,System.Double);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;ClampNative;(System.Double,System.Double,System.Double);Argument[1];ReturnValue;value;dfc-generated | -| System;Double;ClampNative;(System.Double,System.Double,System.Double);Argument[2];ReturnValue;value;dfc-generated | -| System;Double;ConvertToInteger;(System.Double);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;ConvertToIntegerNative;(System.Double);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;CopySign;(System.Double,System.Double);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;Max;(System.Double,System.Double);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;Max;(System.Double,System.Double);Argument[1];ReturnValue;value;dfc-generated | -| System;Double;MaxNative;(System.Double,System.Double);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;MaxNative;(System.Double,System.Double);Argument[1];ReturnValue;value;dfc-generated | -| System;Double;MaxNumber;(System.Double,System.Double);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;MaxNumber;(System.Double,System.Double);Argument[1];ReturnValue;value;dfc-generated | -| System;Double;Min;(System.Double,System.Double);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;Min;(System.Double,System.Double);Argument[1];ReturnValue;value;dfc-generated | -| System;Double;MinNative;(System.Double,System.Double);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;MinNative;(System.Double,System.Double);Argument[1];ReturnValue;value;dfc-generated | -| System;Double;MinNumber;(System.Double,System.Double);Argument[0];ReturnValue;value;dfc-generated | -| System;Double;MinNumber;(System.Double,System.Double);Argument[1];ReturnValue;value;dfc-generated | -| System;Double;MultiplyAddEstimate;(System.Double,System.Double,System.Double);Argument[2];ReturnValue;taint;dfc-generated | | System;Double;ToDateTime;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Double;ToDecimal;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Double;ToString;(System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | @@ -23643,35 +20956,26 @@ summary | System;Guid;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System;Half;BitDecrement;(System.Half);Argument[0];ReturnValue;value;dfc-generated | | System;Half;BitIncrement;(System.Half);Argument[0];ReturnValue;value;dfc-generated | -| System;Half;Clamp;(System.Half,System.Half,System.Half);Argument[0];ReturnValue;value;dfc-generated | -| System;Half;Clamp;(System.Half,System.Half,System.Half);Argument[1];ReturnValue;value;dfc-generated | -| System;Half;Clamp;(System.Half,System.Half,System.Half);Argument[2];ReturnValue;value;dfc-generated | | System;Half;ClampNative;(System.Half,System.Half,System.Half);Argument[0];ReturnValue;value;dfc-generated | | System;Half;ClampNative;(System.Half,System.Half,System.Half);Argument[1];ReturnValue;value;dfc-generated | | System;Half;ClampNative;(System.Half,System.Half,System.Half);Argument[2];ReturnValue;value;dfc-generated | | System;Half;ConvertToInteger;(System.Half);Argument[0];ReturnValue;value;dfc-generated | | System;Half;ConvertToIntegerNative;(System.Half);Argument[0];ReturnValue;value;dfc-generated | -| System;Half;CopySign;(System.Half,System.Half);Argument[0];ReturnValue;value;dfc-generated | | System;Half;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | | System;Half;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | | System;Half;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Half;Max;(System.Half,System.Half);Argument[0];ReturnValue;value;dfc-generated | -| System;Half;Max;(System.Half,System.Half);Argument[1];ReturnValue;value;dfc-generated | | System;Half;MaxMagnitudeNumber;(System.Half,System.Half);Argument[0];ReturnValue;value;dfc-generated | | System;Half;MaxMagnitudeNumber;(System.Half,System.Half);Argument[1];ReturnValue;value;dfc-generated | | System;Half;MaxNative;(System.Half,System.Half);Argument[0];ReturnValue;value;dfc-generated | | System;Half;MaxNative;(System.Half,System.Half);Argument[1];ReturnValue;value;dfc-generated | | System;Half;MaxNumber;(System.Half,System.Half);Argument[0];ReturnValue;value;dfc-generated | | System;Half;MaxNumber;(System.Half,System.Half);Argument[1];ReturnValue;value;dfc-generated | -| System;Half;Min;(System.Half,System.Half);Argument[0];ReturnValue;value;dfc-generated | -| System;Half;Min;(System.Half,System.Half);Argument[1];ReturnValue;value;dfc-generated | | System;Half;MinMagnitudeNumber;(System.Half,System.Half);Argument[0];ReturnValue;value;dfc-generated | | System;Half;MinMagnitudeNumber;(System.Half,System.Half);Argument[1];ReturnValue;value;dfc-generated | | System;Half;MinNative;(System.Half,System.Half);Argument[0];ReturnValue;value;dfc-generated | | System;Half;MinNative;(System.Half,System.Half);Argument[1];ReturnValue;value;dfc-generated | | System;Half;MinNumber;(System.Half,System.Half);Argument[0];ReturnValue;value;dfc-generated | | System;Half;MinNumber;(System.Half,System.Half);Argument[1];ReturnValue;value;dfc-generated | -| System;Half;MultiplyAddEstimate;(System.Half,System.Half,System.Half);Argument[2];ReturnValue;taint;dfc-generated | | System;Half;ToString;(System.IFormatProvider);Argument[0];ReturnValue;taint;df-generated | | System;Half;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System;HashCode;Add;(T,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[1];taint;df-generated | @@ -23686,52 +20990,16 @@ summary | System;IFormatProvider;GetFormat;(System.Type);Argument[this];ReturnValue;value;dfc-generated | | System;IFormattable;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System;IServiceProvider;GetService;(System.Type);Argument[this];ReturnValue;value;dfc-generated | -| System;Int16;Clamp;(System.Int16,System.Int16,System.Int16);Argument[0];ReturnValue;value;dfc-generated | -| System;Int16;Clamp;(System.Int16,System.Int16,System.Int16);Argument[1];ReturnValue;value;dfc-generated | -| System;Int16;Clamp;(System.Int16,System.Int16,System.Int16);Argument[2];ReturnValue;value;dfc-generated | -| System;Int16;CopySign;(System.Int16,System.Int16);Argument[0];ReturnValue;value;dfc-generated | -| System;Int16;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Int16;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Int16;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Int16;Max;(System.Int16,System.Int16);Argument[0];ReturnValue;value;dfc-generated | -| System;Int16;Max;(System.Int16,System.Int16);Argument[1];ReturnValue;value;dfc-generated | -| System;Int16;MaxNumber;(System.Int16,System.Int16);Argument[0];ReturnValue;value;dfc-generated | -| System;Int16;MaxNumber;(System.Int16,System.Int16);Argument[1];ReturnValue;value;dfc-generated | -| System;Int16;Min;(System.Int16,System.Int16);Argument[0];ReturnValue;value;dfc-generated | -| System;Int16;Min;(System.Int16,System.Int16);Argument[1];ReturnValue;value;dfc-generated | -| System;Int16;MinNumber;(System.Int16,System.Int16);Argument[0];ReturnValue;value;dfc-generated | -| System;Int16;MinNumber;(System.Int16,System.Int16);Argument[1];ReturnValue;value;dfc-generated | -| System;Int16;MultiplyAddEstimate;(System.Int16,System.Int16,System.Int16);Argument[2];ReturnValue;taint;dfc-generated | -| System;Int16;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Int16,System.Int16);Argument[0];ReturnValue;taint;dfc-generated | -| System;Int16;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Int16,System.Int16);Argument[1];ReturnValue;taint;dfc-generated | | System;Int16;ToDateTime;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Int16;ToDecimal;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Int16;ToString;(System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | | System;Int16;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System;Int16;ToType;(System.Type,System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | -| System;Int32;Clamp;(System.Int32,System.Int32,System.Int32);Argument[0];ReturnValue;value;dfc-generated | -| System;Int32;Clamp;(System.Int32,System.Int32,System.Int32);Argument[1];ReturnValue;value;dfc-generated | -| System;Int32;Clamp;(System.Int32,System.Int32,System.Int32);Argument[2];ReturnValue;value;dfc-generated | -| System;Int32;CopySign;(System.Int32,System.Int32);Argument[0];ReturnValue;value;dfc-generated | -| System;Int32;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Int32;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Int32;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Int32;Max;(System.Int32,System.Int32);Argument[0];ReturnValue;value;dfc-generated | -| System;Int32;Max;(System.Int32,System.Int32);Argument[1];ReturnValue;value;dfc-generated | -| System;Int32;MaxNumber;(System.Int32,System.Int32);Argument[0];ReturnValue;value;dfc-generated | -| System;Int32;MaxNumber;(System.Int32,System.Int32);Argument[1];ReturnValue;value;dfc-generated | -| System;Int32;Min;(System.Int32,System.Int32);Argument[0];ReturnValue;value;dfc-generated | -| System;Int32;Min;(System.Int32,System.Int32);Argument[1];ReturnValue;value;dfc-generated | -| System;Int32;MinNumber;(System.Int32,System.Int32);Argument[0];ReturnValue;value;dfc-generated | -| System;Int32;MinNumber;(System.Int32,System.Int32);Argument[1];ReturnValue;value;dfc-generated | -| System;Int32;MultiplyAddEstimate;(System.Int32,System.Int32,System.Int32);Argument[2];ReturnValue;taint;dfc-generated | | System;Int32;Parse;(System.ReadOnlySpan,System.Globalization.NumberStyles,System.IFormatProvider);Argument[0].Element;ReturnValue;taint;manual | | System;Int32;Parse;(System.String);Argument[0];ReturnValue;taint;manual | | System;Int32;Parse;(System.String,System.Globalization.NumberStyles);Argument[0];ReturnValue;taint;manual | | System;Int32;Parse;(System.String,System.Globalization.NumberStyles,System.IFormatProvider);Argument[0];ReturnValue;taint;manual | | System;Int32;Parse;(System.String,System.IFormatProvider);Argument[0];ReturnValue;taint;manual | -| System;Int32;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Int32,System.Int32);Argument[0];ReturnValue;taint;dfc-generated | -| System;Int32;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Int32,System.Int32);Argument[1];ReturnValue;taint;dfc-generated | | System;Int32;ToDateTime;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Int32;ToDecimal;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Int32;ToString;(System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | @@ -23745,24 +21013,6 @@ summary | System;Int32;TryParse;(System.String,System.Globalization.NumberStyles,System.IFormatProvider,System.Int32);Argument[0];ReturnValue;taint;manual | | System;Int32;TryParse;(System.String,System.Int32);Argument[0];Argument[1];taint;manual | | System;Int32;TryParse;(System.String,System.Int32);Argument[0];ReturnValue;taint;manual | -| System;Int64;Clamp;(System.Int64,System.Int64,System.Int64);Argument[0];ReturnValue;value;dfc-generated | -| System;Int64;Clamp;(System.Int64,System.Int64,System.Int64);Argument[1];ReturnValue;value;dfc-generated | -| System;Int64;Clamp;(System.Int64,System.Int64,System.Int64);Argument[2];ReturnValue;value;dfc-generated | -| System;Int64;CopySign;(System.Int64,System.Int64);Argument[0];ReturnValue;value;dfc-generated | -| System;Int64;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Int64;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Int64;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Int64;Max;(System.Int64,System.Int64);Argument[0];ReturnValue;value;dfc-generated | -| System;Int64;Max;(System.Int64,System.Int64);Argument[1];ReturnValue;value;dfc-generated | -| System;Int64;MaxNumber;(System.Int64,System.Int64);Argument[0];ReturnValue;value;dfc-generated | -| System;Int64;MaxNumber;(System.Int64,System.Int64);Argument[1];ReturnValue;value;dfc-generated | -| System;Int64;Min;(System.Int64,System.Int64);Argument[0];ReturnValue;value;dfc-generated | -| System;Int64;Min;(System.Int64,System.Int64);Argument[1];ReturnValue;value;dfc-generated | -| System;Int64;MinNumber;(System.Int64,System.Int64);Argument[0];ReturnValue;value;dfc-generated | -| System;Int64;MinNumber;(System.Int64,System.Int64);Argument[1];ReturnValue;value;dfc-generated | -| System;Int64;MultiplyAddEstimate;(System.Int64,System.Int64,System.Int64);Argument[2];ReturnValue;taint;dfc-generated | -| System;Int64;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Int64,System.Int64);Argument[0];ReturnValue;taint;dfc-generated | -| System;Int64;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Int64,System.Int64);Argument[1];ReturnValue;taint;dfc-generated | | System;Int64;ToDateTime;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Int64;ToDecimal;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Int64;ToString;(System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | @@ -23792,7 +21042,6 @@ summary | System;Int128;MinMagnitudeNumber;(System.Int128,System.Int128);Argument[1];ReturnValue;value;dfc-generated | | System;Int128;MinNumber;(System.Int128,System.Int128);Argument[0];ReturnValue;value;dfc-generated | | System;Int128;MinNumber;(System.Int128,System.Int128);Argument[1];ReturnValue;value;dfc-generated | -| System;Int128;MultiplyAddEstimate;(System.Int128,System.Int128,System.Int128);Argument[2];ReturnValue;taint;dfc-generated | | System;Int128;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Int128,System.Int128);Argument[0];ReturnValue;taint;dfc-generated | | System;Int128;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.Int128,System.Int128);Argument[1];ReturnValue;taint;dfc-generated | | System;Int128;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | @@ -23829,28 +21078,19 @@ summary | System;IntPtr;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.IntPtr,System.IntPtr);Argument[1];ReturnValue;taint;dfc-generated | | System;IntPtr;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System;IntPtr;op_Addition;(System.IntPtr,System.Int32);Argument[0];ReturnValue;taint;dfc-generated | -| System;Lazy;Lazy;(System.Func,TMetadata);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System;Lazy;Lazy;(System.Func,TMetadata);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System;Lazy;Lazy;(System.Func,TMetadata);Argument[1];Argument[this].SyntheticField[System.Lazy`2._metadata];value;dfc-generated | -| System;Lazy;Lazy;(System.Func,TMetadata);Argument[1];Argument[this].SyntheticField[System.Lazy`2._metadata];value;hq-generated | -| System;Lazy;Lazy;(System.Func,TMetadata,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System;Lazy;Lazy;(System.Func,TMetadata,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System;Lazy;Lazy;(System.Func,TMetadata,System.Boolean);Argument[1];Argument[this].SyntheticField[System.Lazy`2._metadata];value;dfc-generated | -| System;Lazy;Lazy;(System.Func,TMetadata,System.Boolean);Argument[1];Argument[this].SyntheticField[System.Lazy`2._metadata];value;hq-generated | -| System;Lazy;Lazy;(System.Func,TMetadata,System.Threading.LazyThreadSafetyMode);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System;Lazy;Lazy;(System.Func,TMetadata,System.Threading.LazyThreadSafetyMode);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System;Lazy;Lazy;(System.Func,TMetadata,System.Threading.LazyThreadSafetyMode);Argument[1];Argument[this].SyntheticField[System.Lazy`2._metadata];value;dfc-generated | -| System;Lazy;Lazy;(System.Func,TMetadata,System.Threading.LazyThreadSafetyMode);Argument[1];Argument[this].SyntheticField[System.Lazy`2._metadata];value;hq-generated | | System;Lazy;Lazy;(TMetadata);Argument[0];Argument[this].SyntheticField[System.Lazy`2._metadata];value;dfc-generated | | System;Lazy;Lazy;(TMetadata,System.Boolean);Argument[0];Argument[this].SyntheticField[System.Lazy`2._metadata];value;dfc-generated | | System;Lazy;Lazy;(TMetadata,System.Threading.LazyThreadSafetyMode);Argument[0];Argument[this].SyntheticField[System.Lazy`2._metadata];value;dfc-generated | | System;Lazy;get_Metadata;();Argument[this].SyntheticField[System.Lazy`2._metadata];ReturnValue;value;dfc-generated | | System;Lazy;Lazy;(System.Func);Argument[0].ReturnValue;Argument[this].Property[System.Lazy`1.Value];value;manual | -| System;Lazy;Lazy;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System;Lazy;Lazy;(System.Func,System.Boolean);Argument[0].ReturnValue;Argument[this].Property[System.Lazy`1.Value];value;manual | -| System;Lazy;Lazy;(System.Func,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System;Lazy;Lazy;(System.Func,System.Threading.LazyThreadSafetyMode);Argument[0].ReturnValue;Argument[this].Property[System.Lazy`1.Value];value;manual | -| System;Lazy;Lazy;(System.Func,System.Threading.LazyThreadSafetyMode);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System;Lazy;Lazy;(T);Argument[0];Argument[this];taint;df-generated | | System;Lazy;ToString;();Argument[this];ReturnValue;taint;df-generated | | System;Lazy;get_Value;();Argument[this];ReturnValue;taint;manual | @@ -23878,10 +21118,7 @@ summary | System;Memory;ToString;();Argument[this].SyntheticField[System.Memory`1._object];ReturnValue;value;dfc-generated | | System;Memory;TryCopyTo;(System.Memory);Argument[this].Property[System.Memory`1.Span].Element;Argument[0].Property[System.Memory`1.Span].Element;value;dfc-generated | | System;MemoryExtensions+SpanSplitEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | -| System;MemoryExtensions+SpanSplitEnumerator;get_Current;();Argument[this].Property[System.MemoryExtensions+SpanSplitEnumerator`1.Current];ReturnValue;value;df-generated | | System;MemoryExtensions+SpanSplitEnumerator;get_Current;();Argument[this].Property[System.MemoryExtensions+SpanSplitEnumerator`1.Current];ReturnValue;value;dfc-generated | -| System;MemoryExtensions+SpanSplitEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System;MemoryExtensions+SpanSplitEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System;MemoryExtensions+SpanSplitEnumerator;get_Source;();Argument[this];ReturnValue;taint;df-generated | | System;MemoryExtensions+TryWriteInterpolatedStringHandler;TryWriteInterpolatedStringHandler;(System.Int32,System.Int32,System.Span,System.Boolean);Argument[2];Argument[this];taint;df-generated | | System;MemoryExtensions+TryWriteInterpolatedStringHandler;TryWriteInterpolatedStringHandler;(System.Int32,System.Int32,System.Span,System.IFormatProvider,System.Boolean);Argument[2];Argument[this];taint;df-generated | @@ -24069,10 +21306,7 @@ summary | System;MemoryExtensions;SequenceEqual;(System.Span,System.ReadOnlySpan,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[2];taint;df-generated | | System;MemoryExtensions;Sort;(System.Span,TComparer);Argument[0];Argument[1];taint;df-generated | | System;MemoryExtensions;Sort;(System.Span,System.Comparison);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;MemoryExtensions;Sort;(System.Span,System.Comparison);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System;MemoryExtensions;Sort;(System.Span,System.Comparison);Argument[0].Element;Argument[1].Parameter[1];value;dfc-generated | -| System;MemoryExtensions;Sort;(System.Span,System.Comparison);Argument[0].Element;Argument[1].Parameter[1];value;hq-generated | -| System;MemoryExtensions;Sort;(System.Span,System.Comparison);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;MemoryExtensions;Sort;(System.Span,System.Comparison);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;MemoryExtensions;Sort;(System.Span,System.Span,TComparer);Argument[0];Argument[2];taint;df-generated | | System;MemoryExtensions;Sort;(System.Span,System.Span,System.Comparison);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | @@ -24152,13 +21386,10 @@ summary | System;MissingMethodException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System;MulticastDelegate;CombineImpl;(System.Delegate);Argument[0];ReturnValue.SyntheticField[System.MulticastDelegate.delegates].Element;value;dfc-generated | | System;MulticastDelegate;CombineImpl;(System.Delegate);Argument[this];ReturnValue.SyntheticField[System.MulticastDelegate.delegates].Element;value;dfc-generated | -| System;MulticastDelegate;CombineImpl;(System.Delegate);Argument[this];ReturnValue;value;dfc-generated | | System;MulticastDelegate;GetInvocationList;();Argument[this].SyntheticField[System.MulticastDelegate.delegates].Element;ReturnValue.Element;value;dfc-generated | -| System;MulticastDelegate;GetInvocationList;();Argument[this];ReturnValue.Element;value;dfc-generated | | System;MulticastDelegate;GetMethodImpl;();Argument[this];ReturnValue;taint;df-generated | | System;MulticastDelegate;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System;MulticastDelegate;RemoveImpl;(System.Delegate);Argument[this].SyntheticField[System.MulticastDelegate.delegates].Element;ReturnValue;value;dfc-generated | -| System;MulticastDelegate;RemoveImpl;(System.Delegate);Argument[this];ReturnValue;value;dfc-generated | | System;NotFiniteNumberException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System;Nullable;GetValueOrDefault;();Argument[this].Property[System.Nullable`1.Value];ReturnValue;value;manual | | System;Nullable;GetValueOrDefault;(T);Argument[0];ReturnValue;value;manual | @@ -24191,10 +21422,7 @@ summary | System;ReadOnlyMemory;ToArray;();Argument[this].Property[System.ReadOnlyMemory`1.Span].Element;ReturnValue.Element;value;dfc-generated | | System;ReadOnlyMemory;ToString;();Argument[this].SyntheticField[System.ReadOnlyMemory`1._object];ReturnValue;value;dfc-generated | | System;ReadOnlyMemory;TryCopyTo;(System.Memory);Argument[this].Property[System.ReadOnlyMemory`1.Span].Element;Argument[0].Property[System.Memory`1.Span].Element;value;dfc-generated | -| System;ReadOnlySpan+Enumerator;get_Current;();Argument[this].Property[System.ReadOnlySpan`1+Enumerator.Current];ReturnValue;value;df-generated | | System;ReadOnlySpan+Enumerator;get_Current;();Argument[this].Property[System.ReadOnlySpan`1+Enumerator.Current];ReturnValue;value;dfc-generated | -| System;ReadOnlySpan+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System;ReadOnlySpan+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System;ReadOnlySpan;CopyTo;(System.Span);Argument[this].Element;Argument[0].Element;value;manual | | System;ReadOnlySpan;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System;ReadOnlySpan;GetPinnableReference;();Argument[this].Element;ReturnValue;value;manual | @@ -24222,24 +21450,6 @@ summary | System;RuntimeTypeHandle;ToIntPtr;(System.RuntimeTypeHandle);Argument[0].Property[System.RuntimeTypeHandle.Value];ReturnValue;value;dfc-generated | | System;RuntimeTypeHandle;ToIntPtr;(System.RuntimeTypeHandle);Argument[0].SyntheticField[System.RuntimeTypeHandle.value];ReturnValue;value;dfc-generated | | System;RuntimeTypeHandle;get_Value;();Argument[this].SyntheticField[System.RuntimeTypeHandle.value];ReturnValue;value;dfc-generated | -| System;SByte;Clamp;(System.SByte,System.SByte,System.SByte);Argument[0];ReturnValue;value;dfc-generated | -| System;SByte;Clamp;(System.SByte,System.SByte,System.SByte);Argument[1];ReturnValue;value;dfc-generated | -| System;SByte;Clamp;(System.SByte,System.SByte,System.SByte);Argument[2];ReturnValue;value;dfc-generated | -| System;SByte;CopySign;(System.SByte,System.SByte);Argument[0];ReturnValue;value;dfc-generated | -| System;SByte;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;SByte;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;SByte;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;SByte;Max;(System.SByte,System.SByte);Argument[0];ReturnValue;value;dfc-generated | -| System;SByte;Max;(System.SByte,System.SByte);Argument[1];ReturnValue;value;dfc-generated | -| System;SByte;MaxNumber;(System.SByte,System.SByte);Argument[0];ReturnValue;value;dfc-generated | -| System;SByte;MaxNumber;(System.SByte,System.SByte);Argument[1];ReturnValue;value;dfc-generated | -| System;SByte;Min;(System.SByte,System.SByte);Argument[0];ReturnValue;value;dfc-generated | -| System;SByte;Min;(System.SByte,System.SByte);Argument[1];ReturnValue;value;dfc-generated | -| System;SByte;MinNumber;(System.SByte,System.SByte);Argument[0];ReturnValue;value;dfc-generated | -| System;SByte;MinNumber;(System.SByte,System.SByte);Argument[1];ReturnValue;value;dfc-generated | -| System;SByte;MultiplyAddEstimate;(System.SByte,System.SByte,System.SByte);Argument[2];ReturnValue;taint;dfc-generated | -| System;SByte;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.SByte,System.SByte);Argument[0];ReturnValue;taint;dfc-generated | -| System;SByte;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.SByte,System.SByte);Argument[1];ReturnValue;taint;dfc-generated | | System;SByte;ToDateTime;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;SByte;ToDecimal;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;SByte;ToString;(System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | @@ -24247,40 +21457,12 @@ summary | System;SByte;ToType;(System.Type,System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | | System;SequencePosition;GetObject;();Argument[this].SyntheticField[System.SequencePosition._object];ReturnValue;value;dfc-generated | | System;SequencePosition;SequencePosition;(System.Object,System.Int32);Argument[0];Argument[this].SyntheticField[System.SequencePosition._object];value;dfc-generated | -| System;Single;Clamp;(System.Single,System.Single,System.Single);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;Clamp;(System.Single,System.Single,System.Single);Argument[1];ReturnValue;value;dfc-generated | -| System;Single;Clamp;(System.Single,System.Single,System.Single);Argument[2];ReturnValue;value;dfc-generated | -| System;Single;ClampNative;(System.Single,System.Single,System.Single);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;ClampNative;(System.Single,System.Single,System.Single);Argument[1];ReturnValue;value;dfc-generated | -| System;Single;ClampNative;(System.Single,System.Single,System.Single);Argument[2];ReturnValue;value;dfc-generated | -| System;Single;ConvertToInteger;(System.Single);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;ConvertToIntegerNative;(System.Single);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;CopySign;(System.Single,System.Single);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;Max;(System.Single,System.Single);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;Max;(System.Single,System.Single);Argument[1];ReturnValue;value;dfc-generated | -| System;Single;MaxNative;(System.Single,System.Single);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;MaxNative;(System.Single,System.Single);Argument[1];ReturnValue;value;dfc-generated | -| System;Single;MaxNumber;(System.Single,System.Single);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;MaxNumber;(System.Single,System.Single);Argument[1];ReturnValue;value;dfc-generated | -| System;Single;Min;(System.Single,System.Single);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;Min;(System.Single,System.Single);Argument[1];ReturnValue;value;dfc-generated | -| System;Single;MinNative;(System.Single,System.Single);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;MinNative;(System.Single,System.Single);Argument[1];ReturnValue;value;dfc-generated | -| System;Single;MinNumber;(System.Single,System.Single);Argument[0];ReturnValue;value;dfc-generated | -| System;Single;MinNumber;(System.Single,System.Single);Argument[1];ReturnValue;value;dfc-generated | -| System;Single;MultiplyAddEstimate;(System.Single,System.Single,System.Single);Argument[2];ReturnValue;taint;dfc-generated | | System;Single;ToDateTime;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Single;ToDecimal;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;Single;ToString;(System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | | System;Single;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System;Single;ToType;(System.Type,System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | -| System;Span+Enumerator;get_Current;();Argument[this].Property[System.Span`1+Enumerator.Current];ReturnValue;value;df-generated | | System;Span+Enumerator;get_Current;();Argument[this].Property[System.Span`1+Enumerator.Current];ReturnValue;value;dfc-generated | -| System;Span+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System;Span+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System;Span;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System;Span;CopyTo;(System.Span);Argument[this].Element;Argument[0].Element;value;manual | | System;Span;Fill;(T);Argument[0];Argument[this].Element;value;manual | @@ -24327,8 +21509,6 @@ summary | System;String;Concat;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;taint;manual | | System;String;Copy;(System.String);Argument[0];ReturnValue;value;manual | | System;String;Create;(System.Int32,TState,System.Buffers.SpanAction);Argument[1];Argument[2].Parameter[1];value;dfc-generated | -| System;String;Create;(System.Int32,TState,System.Buffers.SpanAction);Argument[1];Argument[2].Parameter[1];value;hq-generated | -| System;String;Create;(System.Int32,TState,System.Buffers.SpanAction);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System;String;Create;(System.Int32,TState,System.Buffers.SpanAction);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System;String;EnumerateRunes;();Argument[this];ReturnValue;taint;df-generated | | System;String;Format;(System.IFormatProvider,System.String,System.Object);Argument[1];ReturnValue;taint;manual | @@ -24366,7 +21546,6 @@ summary | System;String;Format;(System.IFormatProvider,System.Text.CompositeFormat,TArg0);Argument[1].Property[System.Text.CompositeFormat.Format];ReturnValue;value;dfc-generated | | System;String;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.CharEnumerator.Current];value;manual | | System;String;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | -| System;String;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System;String;Insert;(System.Int32,System.String);Argument[1];ReturnValue;taint;manual | | System;String;Insert;(System.Int32,System.String);Argument[this];ReturnValue;taint;manual | | System;String;Join;(System.Char,System.Object[]);Argument[0];ReturnValue;taint;manual | @@ -24451,7 +21630,6 @@ summary | System;String;TryParse;(System.String,System.IFormatProvider,System.String);Argument[0];Argument[2];value;dfc-generated | | System;StringComparer;Compare;(System.Object,System.Object);Argument[0];Argument[this];taint;df-generated | | System;StringComparer;Compare;(System.Object,System.Object);Argument[1];Argument[this];taint;df-generated | -| System;StringComparer;GetHashCode;(System.Object);Argument[0];Argument[this];taint;df-generated | | System;StringNormalizationExtensions;Normalize;(System.String);Argument[0];ReturnValue;value;dfc-generated | | System;StringNormalizationExtensions;Normalize;(System.String,System.Text.NormalizationForm);Argument[0];ReturnValue;value;dfc-generated | | System;StringNormalizationExtensions;TryNormalize;(System.ReadOnlySpan,System.Span,System.Int32,System.Text.NormalizationForm);Argument[0].Element;Argument[1].Element;value;dfc-generated | @@ -24819,14 +21997,10 @@ summary | System;TupleExtensions;ToValueTuple;(System.Tuple);Argument[0];ReturnValue;taint;df-generated | | System;TupleExtensions;ToValueTuple;(System.Tuple);Argument[0];ReturnValue;taint;df-generated | | System;TupleExtensions;ToValueTuple;(System.Tuple);Argument[0].Property[System.Tuple`1.Item1];ReturnValue.Field[System.ValueTuple`1.Item1];value;dfc-generated | -| System;Type;FindInterfaces;(System.Reflection.TypeFilter,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System;Type;FindInterfaces;(System.Reflection.TypeFilter,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System;Type;FindInterfaces;(System.Reflection.TypeFilter,System.Object);Argument[1];Argument[0].Parameter[1];value;dfc-generated | -| System;Type;FindInterfaces;(System.Reflection.TypeFilter,System.Object);Argument[1];Argument[0].Parameter[1];value;hq-generated | -| System;Type;FindMembers;(System.Reflection.MemberTypes,System.Reflection.BindingFlags,System.Reflection.MemberFilter,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System;Type;FindMembers;(System.Reflection.MemberTypes,System.Reflection.BindingFlags,System.Reflection.MemberFilter,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System;Type;FindMembers;(System.Reflection.MemberTypes,System.Reflection.BindingFlags,System.Reflection.MemberFilter,System.Object);Argument[3];Argument[2].Parameter[1];value;dfc-generated | -| System;Type;FindMembers;(System.Reflection.MemberTypes,System.Reflection.BindingFlags,System.Reflection.MemberFilter,System.Object);Argument[3];Argument[2].Parameter[1];value;hq-generated | | System;Type;GetConstructorImpl;(System.Reflection.BindingFlags,System.Reflection.Binder,System.Reflection.CallingConventions,System.Type[],System.Reflection.ParameterModifier[]);Argument[this];ReturnValue;taint;df-generated | | System;Type;GetConstructors;(System.Reflection.BindingFlags);Argument[this];ReturnValue;taint;df-generated | | System;Type;GetElementType;();Argument[this];ReturnValue;taint;df-generated | @@ -24884,70 +22058,16 @@ summary | System;TypeLoadException;TypeLoadException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this];taint;df-generated | | System;TypeLoadException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System;TypeLoadException;get_TypeName;();Argument[this];ReturnValue;taint;df-generated | -| System;UInt16;Clamp;(System.UInt16,System.UInt16,System.UInt16);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt16;Clamp;(System.UInt16,System.UInt16,System.UInt16);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt16;Clamp;(System.UInt16,System.UInt16,System.UInt16);Argument[2];ReturnValue;value;dfc-generated | -| System;UInt16;CopySign;(System.UInt16,System.UInt16);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt16;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt16;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt16;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt16;Max;(System.UInt16,System.UInt16);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt16;Max;(System.UInt16,System.UInt16);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt16;MaxNumber;(System.UInt16,System.UInt16);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt16;MaxNumber;(System.UInt16,System.UInt16);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt16;Min;(System.UInt16,System.UInt16);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt16;Min;(System.UInt16,System.UInt16);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt16;MinNumber;(System.UInt16,System.UInt16);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt16;MinNumber;(System.UInt16,System.UInt16);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt16;MultiplyAddEstimate;(System.UInt16,System.UInt16,System.UInt16);Argument[2];ReturnValue;taint;dfc-generated | -| System;UInt16;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.UInt16,System.UInt16);Argument[0];ReturnValue;taint;dfc-generated | -| System;UInt16;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.UInt16,System.UInt16);Argument[1];ReturnValue;taint;dfc-generated | | System;UInt16;ToDateTime;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;UInt16;ToDecimal;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;UInt16;ToString;(System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | | System;UInt16;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System;UInt16;ToType;(System.Type,System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | -| System;UInt32;Clamp;(System.UInt32,System.UInt32,System.UInt32);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt32;Clamp;(System.UInt32,System.UInt32,System.UInt32);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt32;Clamp;(System.UInt32,System.UInt32,System.UInt32);Argument[2];ReturnValue;value;dfc-generated | -| System;UInt32;CopySign;(System.UInt32,System.UInt32);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt32;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt32;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt32;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt32;Max;(System.UInt32,System.UInt32);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt32;Max;(System.UInt32,System.UInt32);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt32;MaxNumber;(System.UInt32,System.UInt32);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt32;MaxNumber;(System.UInt32,System.UInt32);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt32;Min;(System.UInt32,System.UInt32);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt32;Min;(System.UInt32,System.UInt32);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt32;MinNumber;(System.UInt32,System.UInt32);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt32;MinNumber;(System.UInt32,System.UInt32);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt32;MultiplyAddEstimate;(System.UInt32,System.UInt32,System.UInt32);Argument[2];ReturnValue;taint;dfc-generated | -| System;UInt32;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.UInt32,System.UInt32);Argument[0];ReturnValue;taint;dfc-generated | -| System;UInt32;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.UInt32,System.UInt32);Argument[1];ReturnValue;taint;dfc-generated | | System;UInt32;ToDateTime;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;UInt32;ToDecimal;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;UInt32;ToString;(System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | | System;UInt32;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System;UInt32;ToType;(System.Type,System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | -| System;UInt64;Clamp;(System.UInt64,System.UInt64,System.UInt64);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt64;Clamp;(System.UInt64,System.UInt64,System.UInt64);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt64;Clamp;(System.UInt64,System.UInt64,System.UInt64);Argument[2];ReturnValue;value;dfc-generated | -| System;UInt64;CopySign;(System.UInt64,System.UInt64);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt64;CreateChecked;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt64;CreateSaturating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt64;CreateTruncating;(TOther);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt64;Max;(System.UInt64,System.UInt64);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt64;Max;(System.UInt64,System.UInt64);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt64;MaxNumber;(System.UInt64,System.UInt64);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt64;MaxNumber;(System.UInt64,System.UInt64);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt64;Min;(System.UInt64,System.UInt64);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt64;Min;(System.UInt64,System.UInt64);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt64;MinNumber;(System.UInt64,System.UInt64);Argument[0];ReturnValue;value;dfc-generated | -| System;UInt64;MinNumber;(System.UInt64,System.UInt64);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt64;MultiplyAddEstimate;(System.UInt64,System.UInt64,System.UInt64);Argument[2];ReturnValue;taint;dfc-generated | -| System;UInt64;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.UInt64,System.UInt64);Argument[0];ReturnValue;taint;dfc-generated | -| System;UInt64;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.UInt64,System.UInt64);Argument[1];ReturnValue;taint;dfc-generated | | System;UInt64;ToDateTime;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;UInt64;ToDecimal;(System.IFormatProvider);Argument[this];ReturnValue;value;df-generated | | System;UInt64;ToString;(System.IFormatProvider);Argument[this];ReturnValue;value;dfc-generated | @@ -24977,7 +22097,6 @@ summary | System;UInt128;MinMagnitudeNumber;(System.UInt128,System.UInt128);Argument[1];ReturnValue;value;dfc-generated | | System;UInt128;MinNumber;(System.UInt128,System.UInt128);Argument[0];ReturnValue;value;dfc-generated | | System;UInt128;MinNumber;(System.UInt128,System.UInt128);Argument[1];ReturnValue;value;dfc-generated | -| System;UInt128;MultiplyAddEstimate;(System.UInt128,System.UInt128,System.UInt128);Argument[2];ReturnValue;taint;dfc-generated | | System;UInt128;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.UInt128,System.UInt128);Argument[0];ReturnValue;taint;dfc-generated | | System;UInt128;System.Numerics.IAdditionOperators.op_CheckedAddition;(System.UInt128,System.UInt128);Argument[1];ReturnValue;taint;dfc-generated | | System;UInt128;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | @@ -25024,12 +22143,10 @@ summary | System;Uri;GetComponents;(System.UriComponents,System.UriFormat);Argument[this];ReturnValue;taint;df-generated | | System;Uri;GetLeftPart;(System.UriPartial);Argument[this];ReturnValue;taint;df-generated | | System;Uri;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;df-generated | -| System;Uri;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System;Uri;MakeRelative;(System.Uri);Argument[0];ReturnValue;taint;df-generated | | System;Uri;MakeRelativeUri;(System.Uri);Argument[0];ReturnValue;value;df-generated | | System;Uri;ToString;();Argument[this];ReturnValue;taint;manual | | System;Uri;ToString;(System.String,System.IFormatProvider);Argument[this].SyntheticField[System.Uri._string];ReturnValue;value;dfc-generated | -| System;Uri;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System;Uri;TryCreate;(System.String,System.UriCreationOptions,System.Uri);Argument[0];Argument[2];taint;manual | | System;Uri;TryCreate;(System.String,System.UriKind,System.Uri);Argument[0];Argument[2];taint;manual | | System;Uri;TryCreate;(System.Uri,System.String,System.Uri);Argument[0];Argument[2];taint;manual | @@ -25114,17 +22231,7 @@ summary | System;UriParser;Resolve;(System.Uri,System.Uri,System.UriFormatException);Argument[0];ReturnValue;taint;df-generated | | System;UriParser;Resolve;(System.Uri,System.Uri,System.UriFormatException);Argument[1];ReturnValue;taint;df-generated | | System;UriTypeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2].Property[System.Uri.OriginalString];ReturnValue;taint;dfc-generated | -| System;UriTypeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | -| System;UriTypeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | -| System;UriTypeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Property[System.Uri.OriginalString];ReturnValue;value;df-generated | | System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Property[System.Uri.OriginalString];ReturnValue;value;dfc-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System;ValueTuple;Create;(T1,T2,T3,T4,T5,T6,T7,T8);Argument[0];ReturnValue.Field[System.ValueTuple`8.Item1];value;manual | | System;ValueTuple;Create;(T1,T2,T3,T4,T5,T6,T7,T8);Argument[1];ReturnValue.Field[System.ValueTuple`8.Item2];value;manual | | System;ValueTuple;Create;(T1,T2,T3,T4,T5,T6,T7,T8);Argument[2];ReturnValue.Field[System.ValueTuple`8.Item3];value;manual | @@ -25243,7 +22350,6 @@ summary | System;Version;ToString;(System.String,System.IFormatProvider);Argument[this];ReturnValue;taint;dfc-generated | | System;WeakReference;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].Property[System.WeakReference.Target];Argument[0].SyntheticField[System.Runtime.Serialization.SerializationInfo._values].Element;value;dfc-generated | | System;WeakReference;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].Property[System.WeakReference.Target];Argument[0];taint;dfc-generated | -| System;WeakReference;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System;WeakReference;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this];Argument[0];taint;dfc-generated | | System;WeakReference;TryGetTarget;(T);Argument[this];Argument[0];taint;df-generated | neutral diff --git a/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.expected b/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.expected index c2a8f49d6b94..c88c901bd75b 100644 --- a/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.expected +++ b/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.expected @@ -720,12 +720,8 @@ | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;AddExpirationToken;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Primitives.IChangeToken);Argument[1];Argument[0].Property[Microsoft.Extensions.Caching.Memory.ICacheEntry.ExpirationTokens].Element;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;AddExpirationToken;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Primitives.IChangeToken);Argument[1];ReturnValue.Property[Microsoft.Extensions.Caching.Memory.ICacheEntry.ExpirationTokens].Element;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.ICacheEntry,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;SetAbsoluteExpiration;(Microsoft.Extensions.Caching.Memory.ICacheEntry,System.DateTimeOffset);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;SetAbsoluteExpiration;(Microsoft.Extensions.Caching.Memory.ICacheEntry,System.TimeSpan);Argument[0];ReturnValue;value;dfc-generated | @@ -735,12 +731,8 @@ | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;SetSlidingExpiration;(Microsoft.Extensions.Caching.Memory.ICacheEntry,System.TimeSpan);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheEntryExtensions;SetValue;(Microsoft.Extensions.Caching.Memory.ICacheEntry,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func,Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func,Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func,Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreate;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func,Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreateAsync;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;CacheExtensions;GetOrCreateAsync;(Microsoft.Extensions.Caching.Memory.IMemoryCache,System.Object,System.Func>,Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | @@ -758,12 +750,8 @@ | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;AddExpirationToken;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Primitives.IChangeToken);Argument[1];Argument[0].Property[Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions.ExpirationTokens].Element;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;AddExpirationToken;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Primitives.IChangeToken);Argument[1];ReturnValue.Property[Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions.ExpirationTokens].Element;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;RegisterPostEvictionCallback;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,Microsoft.Extensions.Caching.Memory.PostEvictionDelegate,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;SetAbsoluteExpiration;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,System.DateTimeOffset);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Caching.Memory;MemoryCacheEntryExtensions;SetAbsoluteExpiration;(Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions,System.TimeSpan);Argument[0];ReturnValue;value;dfc-generated | @@ -792,7 +780,6 @@ | Microsoft.Extensions.Configuration;ChainedConfigurationProvider;TryGet;(System.String,System.String);Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ChainedConfigurationProvider._config];Argument[1];taint;dfc-generated | | Microsoft.Extensions.Configuration;ChainedConfigurationProvider;get_Configuration;();Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ChainedConfigurationProvider._config];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;CommandLineConfigurationExtensions;AddCommandLine;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[0];taint;manual | -| Microsoft.Extensions.Configuration;CommandLineConfigurationExtensions;AddCommandLine;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | Microsoft.Extensions.Configuration;CommandLineConfigurationExtensions;AddCommandLine;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];ReturnValue;taint;manual | | Microsoft.Extensions.Configuration;CommandLineConfigurationExtensions;AddCommandLine;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String[]);Argument[1];Argument[0];taint;manual | | Microsoft.Extensions.Configuration;CommandLineConfigurationExtensions;AddCommandLine;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String[]);Argument[1];ReturnValue;taint;manual | @@ -804,18 +791,12 @@ | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationSection.Value];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.Action);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationSection.Value];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.Action);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationSection.Value];ReturnValue;value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationSection.Value];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationSection.Value];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationSection.Value];ReturnValue;value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;Get;(Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;GetValue;(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.String,System.Object);Argument[3];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationBinder;GetValue;(Microsoft.Extensions.Configuration.IConfiguration,System.String,T);Argument[2];ReturnValue;value;dfc-generated | @@ -827,8 +808,6 @@ | Microsoft.Extensions.Configuration;ConfigurationDebugViewContext;ConfigurationDebugViewContext;(System.String,System.String,System.String,Microsoft.Extensions.Configuration.IConfigurationProvider);Argument[2];Argument[this].Property[Microsoft.Extensions.Configuration.ConfigurationDebugViewContext.Value];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationDebugViewContext;ConfigurationDebugViewContext;(System.String,System.String,System.String,Microsoft.Extensions.Configuration.IConfigurationProvider);Argument[3];Argument[this].Property[Microsoft.Extensions.Configuration.ConfigurationDebugViewContext.ConfigurationProvider];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationExtensions;Add;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationExtensions;Add;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;ConfigurationExtensions;Add;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationExtensions;Add;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationKeyNameAttribute;ConfigurationKeyNameAttribute;(System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Configuration.ConfigurationKeyNameAttribute.Name];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationManager;Add;(Microsoft.Extensions.Configuration.IConfigurationSource);Argument[0];Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationManager._sources].Element;value;dfc-generated | @@ -839,29 +818,21 @@ | Microsoft.Extensions.Configuration;ConfigurationPath;GetParentPath;(System.String);Argument[0];ReturnValue;taint;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationPath;GetSectionKey;(System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationRoot;ConfigurationRoot;(System.Collections.Generic.IList);Argument[0];Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationRoot._providers];value;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationRoot;get_Providers;();Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationRoot._providers];ReturnValue;value;df-generated | | Microsoft.Extensions.Configuration;ConfigurationRoot;get_Providers;();Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationRoot._providers];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationRoot.Providers].Element;ReturnValue;taint;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.Func);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationRoot.Providers].Element;ReturnValue;taint;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.Func);Argument[0].Property[Microsoft.Extensions.Configuration.IConfigurationRoot.Providers].Element;ReturnValue;taint;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.Func);Argument[1].ReturnValue;ReturnValue;taint;dfc-generated | -| Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.Func);Argument[1].ReturnValue;ReturnValue;taint;hq-generated | -| Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationRootExtensions;GetDebugView;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;ConfigurationSection;ConfigurationSection;(Microsoft.Extensions.Configuration.IConfigurationRoot,System.String);Argument[1];Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationSection._path];value;dfc-generated | | Microsoft.Extensions.Configuration;ConfigurationSection;get_Path;();Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationSection._path];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;EnvironmentVariablesExtensions;AddEnvironmentVariables;(Microsoft.Extensions.Configuration.IConfigurationBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;EnvironmentVariablesExtensions;AddEnvironmentVariables;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;EnvironmentVariablesExtensions;AddEnvironmentVariables;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;EnvironmentVariablesExtensions;AddEnvironmentVariables;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;EnvironmentVariablesExtensions;AddEnvironmentVariables;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;EnvironmentVariablesExtensions;AddEnvironmentVariables;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;FileConfigurationExtensions;GetFileLoadExceptionHandler;(Microsoft.Extensions.Configuration.IConfigurationBuilder);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Configuration;FileConfigurationExtensions;GetFileProvider;(Microsoft.Extensions.Configuration.IConfigurationBuilder);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Configuration;FileConfigurationExtensions;SetBasePath;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;FileConfigurationExtensions;SetFileLoadExceptionHandler;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;FileConfigurationExtensions;SetFileLoadExceptionHandler;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;FileConfigurationExtensions;SetFileLoadExceptionHandler;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;FileConfigurationExtensions;SetFileLoadExceptionHandler;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;FileConfigurationExtensions;SetFileProvider;(Microsoft.Extensions.Configuration.IConfigurationBuilder,Microsoft.Extensions.FileProviders.IFileProvider);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;FileConfigurationProvider;FileConfigurationProvider;(Microsoft.Extensions.Configuration.FileConfigurationSource);Argument[0];Argument[this].Property[Microsoft.Extensions.Configuration.FileConfigurationProvider.Source];value;dfc-generated | @@ -881,8 +852,6 @@ | Microsoft.Extensions.Configuration;IConfigurationSource;Build;(Microsoft.Extensions.Configuration.IConfigurationBuilder);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,Microsoft.Extensions.FileProviders.IFileProvider,System.String,System.Boolean,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | @@ -890,8 +859,6 @@ | Microsoft.Extensions.Configuration;IniConfigurationExtensions;AddIniStream;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.IO.Stream);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,Microsoft.Extensions.FileProviders.IFileProvider,System.String,System.Boolean,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;JsonConfigurationExtensions;AddJsonFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | @@ -912,8 +879,6 @@ | Microsoft.Extensions.Configuration;UserSecretsConfigurationExtensions;AddUserSecrets;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Boolean,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,Microsoft.Extensions.FileProviders.IFileProvider,System.String,System.Boolean,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Configuration;XmlConfigurationExtensions;AddXmlFile;(Microsoft.Extensions.Configuration.IConfigurationBuilder,System.String,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | @@ -993,73 +958,43 @@ | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddAsKeyed;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,Microsoft.Extensions.DependencyInjection.ServiceLifetime);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddDefaultLogger;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddLogger;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddLogger;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func,System.Boolean);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddLogger;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func,System.Boolean);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddLogger;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func,System.Boolean);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddLogger;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;AddTypedClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureAdditionalHttpMessageHandlers;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action,System.IServiceProvider>);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureAdditionalHttpMessageHandlers;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action,System.IServiceProvider>);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureAdditionalHttpMessageHandlers;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action,System.IServiceProvider>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureAdditionalHttpMessageHandlers;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action,System.IServiceProvider>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpClient;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpMessageHandlerBuilder;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpMessageHandlerBuilder;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpMessageHandlerBuilder;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigureHttpMessageHandlerBuilder;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;ConfigurePrimaryHttpMessageHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RedactLoggedHeaders;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Collections.Generic.IEnumerable);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RedactLoggedHeaders;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RedactLoggedHeaders;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RedactLoggedHeaders;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RedactLoggedHeaders;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RemoveAllLoggers;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;RemoveAsKeyed;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;SetHandlerLifetime;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.TimeSpan);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientBuilderExtensions;UseSocketsHttpHandler;(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;AddHttpClient;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;AddHttpClient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String);Argument[0].Element;ReturnValue;taint;df-generated | @@ -1085,8 +1020,6 @@ | Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;AddHttpClient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;AddHttpClient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;ConfigureHttpClientDefaults;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;ConfigureHttpClientDefaults;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;ConfigureHttpClientDefaults;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;HttpClientFactoryServiceCollectionExtensions;ConfigureHttpClientDefaults;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpJsonServiceExtensions;ConfigureHttpJsonOptions;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;HttpLoggingServicesExtensions;AddHttpLogging;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -1102,23 +1035,15 @@ | Microsoft.Extensions.DependencyInjection;LocalizationServiceCollectionExtensions;AddLocalization;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;LoggingServiceCollectionExtensions;AddLogging;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;LoggingServiceCollectionExtensions;AddLogging;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;LoggingServiceCollectionExtensions;AddLogging;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;LoggingServiceCollectionExtensions;AddLogging;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;LoggingServiceCollectionExtensions;AddLogging;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddDistributedMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddDistributedMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddDistributedMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddDistributedMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddDistributedMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;MemoryCacheServiceCollectionExtensions;AddMemoryCache;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;MetricsServiceExtensions;AddMetrics;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;MetricsServiceExtensions;AddMetrics;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;MetricsServiceExtensions;AddMetrics;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;MetricsServiceExtensions;AddMetrics;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;MetricsServiceExtensions;AddMetrics;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;MvcCoreMvcBuilderExtensions;AddFormatterMappings;(Microsoft.Extensions.DependencyInjection.IMvcBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;MvcCoreMvcBuilderExtensions;AddJsonOptions;(Microsoft.Extensions.DependencyInjection.IMvcBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -1185,52 +1110,32 @@ | Microsoft.Extensions.DependencyInjection;ObjectFactory;BeginInvoke;(System.IServiceProvider,System.Object[],System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;Bind;(Microsoft.Extensions.Options.OptionsBuilder,Microsoft.Extensions.Configuration.IConfiguration);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;Bind;(Microsoft.Extensions.Options.OptionsBuilder,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;Bind;(Microsoft.Extensions.Options.OptionsBuilder,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;Bind;(Microsoft.Extensions.Options.OptionsBuilder,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;Bind;(Microsoft.Extensions.Options.OptionsBuilder,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;BindConfiguration;(Microsoft.Extensions.Options.OptionsBuilder,System.String,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;BindConfiguration;(Microsoft.Extensions.Options.OptionsBuilder,System.String,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;BindConfiguration;(Microsoft.Extensions.Options.OptionsBuilder,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderConfigurationExtensions;BindConfiguration;(Microsoft.Extensions.Options.OptionsBuilder,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderDataAnnotationsExtensions;ValidateDataAnnotations;(Microsoft.Extensions.Options.OptionsBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsBuilderExtensions;ValidateOnStart;(Microsoft.Extensions.Options.OptionsBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,Microsoft.Extensions.Configuration.IConfiguration);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,Microsoft.Extensions.Configuration.IConfiguration);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsConfigurationServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;AddOptions;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;Configure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureOptions;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureOptions;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;ConfigureOptions;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigure;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;OptionsServiceCollectionExtensions;PostConfigureAll;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OutputCacheConventionBuilderExtensions;CacheOutput;(TBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;OutputCacheConventionBuilderExtensions;CacheOutput;(TBuilder,System.Action,System.Boolean);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -1253,108 +1158,70 @@ | Microsoft.Extensions.DependencyInjection;ServiceCollectionContainerBuilderExtensions;BuildServiceProvider;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Boolean);Argument[0].Element;ReturnValue;taint;df-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionHostedServiceExtensions;AddHostedService;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionHostedServiceExtensions;AddHostedService;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionHostedServiceExtensions;AddHostedService;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionHostedServiceExtensions;AddHostedService;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionHostedServiceExtensions;AddHostedService;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,TService);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddKeyedTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddScoped;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Object);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddSingleton;(Microsoft.Extensions.DependencyInjection.IServiceCollection,TService);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Type,System.Type);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;ServiceCollectionServiceExtensions;AddTransient;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceDescriptor;Describe;(System.Type,System.Func,Microsoft.Extensions.DependencyInjection.ServiceLifetime);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;ServiceDescriptor;DescribeKeyed;(System.Type,System.Object,System.Func,Microsoft.Extensions.DependencyInjection.ServiceLifetime);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | @@ -1391,8 +1258,6 @@ | Microsoft.Extensions.DependencyInjection;SignalRDependencyInjectionExtensions;AddSignalR;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;SocketsHttpHandlerBuilderExtensions;Configure;(Microsoft.Extensions.DependencyInjection.ISocketsHttpHandlerBuilder,Microsoft.Extensions.Configuration.IConfiguration);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.DependencyInjection;SocketsHttpHandlerBuilderExtensions;Configure;(Microsoft.Extensions.DependencyInjection.ISocketsHttpHandlerBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.DependencyInjection;SocketsHttpHandlerBuilderExtensions;Configure;(Microsoft.Extensions.DependencyInjection.ISocketsHttpHandlerBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.DependencyInjection;SocketsHttpHandlerBuilderExtensions;Configure;(Microsoft.Extensions.DependencyInjection.ISocketsHttpHandlerBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.DependencyInjection;SocketsHttpHandlerBuilderExtensions;Configure;(Microsoft.Extensions.DependencyInjection.ISocketsHttpHandlerBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;TagHelperServicesExtensions;AddCacheTagHelperLimits;(Microsoft.Extensions.DependencyInjection.IMvcBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.DependencyInjection;TagHelperServicesExtensions;AddCacheTagHelperLimits;(Microsoft.Extensions.DependencyInjection.IMvcCoreBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -1444,9 +1309,7 @@ | Microsoft.Extensions.FileSystemGlobbing.Abstractions;DirectoryInfoBase;EnumerateFileSystemInfos;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;DirectoryInfoBase;GetDirectory;(System.String);Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;FileInfoWrapper;(System.IO.FileInfo);Argument[0];Argument[this].SyntheticField[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoWrapper._fileInfo];value;dfc-generated | -| Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_FullName;();Argument[this].SyntheticField[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoWrapper._fileInfo].Property[System.IO.FileSystemInfo.FullName];ReturnValue;value;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_FullName;();Argument[this].SyntheticField[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoWrapper._fileInfo].Property[System.IO.FileSystemInfo.FullName];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_Name;();Argument[this].SyntheticField[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoWrapper._fileInfo].Property[System.IO.FileInfo.Name];ReturnValue;value;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileInfoWrapper;get_Name;();Argument[this].SyntheticField[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoWrapper._fileInfo].Property[System.IO.FileInfo.Name];ReturnValue;value;dfc-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileSystemInfoBase;get_FullName;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Abstractions;FileSystemInfoBase;get_Name;();Argument[this];ReturnValue;taint;df-generated | @@ -1466,9 +1329,7 @@ | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;CalculateStem;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoBase);Argument[0].Property[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileSystemInfoBase.Name];ReturnValue;value;dfc-generated | | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;CalculateStem;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoBase);Argument[this].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContext`1.Frame].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged+FrameData.Stem];ReturnValue;taint;dfc-generated | | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;PatternContextRagged;(Microsoft.Extensions.FileSystemGlobbing.Internal.IRaggedPattern);Argument[0];Argument[this].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged.Pattern];value;dfc-generated | -| Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;PushDirectory;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.DirectoryInfoBase);Argument[this].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged.Pattern].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.IRaggedPattern.EndsWith];Argument[this].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContext`1.Frame].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged+FrameData.SegmentGroup];value;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;PushDirectory;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.DirectoryInfoBase);Argument[this].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged.Pattern].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.IRaggedPattern.EndsWith];Argument[this].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContext`1.Frame].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged+FrameData.SegmentGroup];value;dfc-generated | -| Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;PushDirectory;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.DirectoryInfoBase);Argument[this].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged.Pattern].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.IRaggedPattern.StartsWith];Argument[this].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContext`1.Frame].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged+FrameData.SegmentGroup];value;df-generated | | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;PushDirectory;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.DirectoryInfoBase);Argument[this].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged.Pattern].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.IRaggedPattern.StartsWith];Argument[this].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContext`1.Frame].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged+FrameData.SegmentGroup];value;dfc-generated | | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;Test;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoBase);Argument[0].Property[Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileSystemInfoBase.Name];ReturnValue.Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternTestResult.Stem];value;dfc-generated | | Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts;PatternContextRagged;Test;(Microsoft.Extensions.FileSystemGlobbing.Abstractions.FileInfoBase);Argument[this].Field[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContext`1.Frame].Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternContexts.PatternContextRagged+FrameData.Stem];ReturnValue.Property[Microsoft.Extensions.FileSystemGlobbing.Internal.PatternTestResult.Stem];taint;dfc-generated | @@ -1504,56 +1365,32 @@ | Microsoft.Extensions.Hosting;HostApplicationBuilder;get_Configuration;();Argument[this].Property[Microsoft.Extensions.Hosting.HostApplicationBuilder.Configuration];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Hosting;HostBuilderContext;HostBuilderContext;(System.Collections.Generic.IDictionary);Argument[0];Argument[this].Property[Microsoft.Extensions.Hosting.HostBuilderContext.Properties];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureAppConfiguration;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureAppConfiguration;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureAppConfiguration;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureAppConfiguration;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureContainer;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureContainer;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureContainer;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureContainer;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureDefaults;(Microsoft.Extensions.Hosting.IHostBuilder,System.String[]);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureHostOptions;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureLogging;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureMetrics;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureServices;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureServices;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureServices;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;ConfigureServices;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;RunConsoleAsync;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseConsoleLifetime;(Microsoft.Extensions.Hosting.IHostBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseConsoleLifetime;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseConsoleLifetime;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseConsoleLifetime;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseConsoleLifetime;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseContentRoot;(Microsoft.Extensions.Hosting.IHostBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseDefaultServiceProvider;(Microsoft.Extensions.Hosting.IHostBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;HostingHostBuilderExtensions;UseEnvironment;(Microsoft.Extensions.Hosting.IHostBuilder,System.String);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Hosting;IApplicationLifetime;get_ApplicationStarted;();Argument[this];ReturnValue;taint;df-generated | @@ -1568,27 +1405,17 @@ | Microsoft.Extensions.Hosting;IHostApplicationLifetime;get_ApplicationStarted;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Hosting;IHostApplicationLifetime;get_ApplicationStopped;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Hosting;IHostApplicationLifetime;get_ApplicationStopping;();Argument[this];ReturnValue;taint;df-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureAppConfiguration;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureContainer;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureContainer;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureContainer;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureContainer;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureHostConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureHostConfiguration;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureHostConfiguration;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureHostConfiguration;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureServices;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureServices;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;IHostBuilder;ConfigureServices;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;ConfigureServices;(System.Action);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Hosting;IHostBuilder;UseServiceProviderFactory;(Microsoft.Extensions.DependencyInjection.IServiceProviderFactory);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;UseServiceProviderFactory;(System.Func>);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Hosting;IHostBuilder;UseServiceProviderFactory;(System.Func>);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Hosting;IHostBuilder;UseServiceProviderFactory;(System.Func>);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Hosting;IHostBuilder;UseServiceProviderFactory;(System.Func>);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Hosting;IHostLifetime;WaitForStartAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Http.Logging;LoggingHttpMessageHandler;LoggingHttpMessageHandler;(Microsoft.Extensions.Logging.ILogger);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Http.Logging;LoggingHttpMessageHandler;LoggingHttpMessageHandler;(Microsoft.Extensions.Logging.ILogger,Microsoft.Extensions.Http.HttpClientFactoryOptions);Argument[0];Argument[this];taint;df-generated | @@ -1603,17 +1430,11 @@ | Microsoft.Extensions.Http;IHttpMessageHandlerBuilderFilter;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Localization;IResourceNamesCache;GetOrAdd;(System.String,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[1];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.Category];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[1];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.Category];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.EventId];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.EventId];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.State];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.State];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.Exception];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.Exception];value;hq-generated | -| Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[5];Argument[5].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[5];Argument[5].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[5];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.Formatter];value;dfc-generated | -| Microsoft.Extensions.Logging.Abstractions;LogEntry;LogEntry;(Microsoft.Extensions.Logging.LogLevel,System.String,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[5];Argument[this].Property[Microsoft.Extensions.Logging.Abstractions.LogEntry`1.Formatter];value;hq-generated | | Microsoft.Extensions.Logging.Console;ConfigurationConsoleLoggerSettings;ConfigurationConsoleLoggerSettings;(Microsoft.Extensions.Configuration.IConfiguration);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Logging.Console;ConsoleFormatter;ConsoleFormatter;(System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Logging.Console.ConsoleFormatter.Name];value;dfc-generated | | Microsoft.Extensions.Logging.Console;ConsoleFormatter;Write;(Microsoft.Extensions.Logging.Abstractions.LogEntry,Microsoft.Extensions.Logging.IExternalScopeProvider,System.IO.TextWriter);Argument[0];Argument[2];taint;df-generated | @@ -1631,43 +1452,27 @@ | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,Microsoft.Extensions.Logging.LogLevel,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func,System.Boolean);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func,System.Boolean);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func,System.Boolean);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func,System.Boolean);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsoleFormatter;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsoleFormatter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsoleFormatter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsoleFormatter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddConsoleFormatter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddJsonConsole;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddJsonConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddJsonConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddJsonConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddJsonConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSimpleConsole;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSimpleConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSimpleConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSimpleConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSimpleConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSystemdConsole;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSystemdConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSystemdConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSystemdConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ConsoleLoggerExtensions;AddSystemdConsole;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggerFactory);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggerFactory,Microsoft.Extensions.Logging.LogLevel);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggerFactory,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;DebugLoggerFactoryExtensions;AddDebug;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;EventId;EventId;(System.Int32,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Logging.EventId.Name];value;dfc-generated | @@ -1678,84 +1483,49 @@ | Microsoft.Extensions.Logging;EventLoggerFactoryExtensions;AddEventLog;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;EventLoggerFactoryExtensions;AddEventLog;(Microsoft.Extensions.Logging.ILoggingBuilder,Microsoft.Extensions.Logging.EventLog.EventLogSettings);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;EventLoggerFactoryExtensions;AddEventLog;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;EventLoggerFactoryExtensions;AddEventLog;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;EventLoggerFactoryExtensions;AddEventLog;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;EventLoggerFactoryExtensions;AddEventLog;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;EventSourceLoggerFactoryExtensions;AddEventSourceLogger;(Microsoft.Extensions.Logging.ILoggerFactory);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;EventSourceLoggerFactoryExtensions;AddEventSourceLogger;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,Microsoft.Extensions.Logging.LogLevel);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,Microsoft.Extensions.Logging.LogLevel);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,Microsoft.Extensions.Logging.LogLevel);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.ILoggingBuilder,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,Microsoft.Extensions.Logging.LogLevel);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;FilterLoggingBuilderExtensions;AddFilter;(Microsoft.Extensions.Logging.LoggerFilterOptions,System.String,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Logging;IExternalScopeProvider;ForEachScope;(System.Action,TState);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;IExternalScopeProvider;ForEachScope;(System.Action,TState);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;IExternalScopeProvider;ForEachScope;(System.Action,TState);Argument[1];Argument[0].Parameter[1];value;dfc-generated | -| Microsoft.Extensions.Logging;IExternalScopeProvider;ForEachScope;(System.Action,TState);Argument[1];Argument[0].Parameter[1];value;hq-generated | | Microsoft.Extensions.Logging;IExternalScopeProvider;Push;(System.Object);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;IExternalScopeProvider;Push;(System.Object);Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;ILogger;BeginScope;(TState);Argument[0];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;ILogger;BeginScope;(TState);Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;ILogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[4].Parameter[0];value;dfc-generated | -| Microsoft.Extensions.Logging;ILogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[2];Argument[4].Parameter[0];value;hq-generated | | Microsoft.Extensions.Logging;ILogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[4].Parameter[1];value;dfc-generated | -| Microsoft.Extensions.Logging;ILogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[3];Argument[4].Parameter[1];value;hq-generated | -| Microsoft.Extensions.Logging;ILogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;ILogger;Log;(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,TState,System.Exception,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;ILoggerFactory;AddProvider;(Microsoft.Extensions.Logging.ILoggerProvider);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Logging;ILoggerFactory;AddProvider;(Microsoft.Extensions.Logging.ILoggerProvider);Argument[this];Argument[0];taint;df-generated | @@ -1775,15 +1545,10 @@ | Microsoft.Extensions.Logging;LoggerFactory;LoggerFactory;(System.Collections.Generic.IEnumerable,Microsoft.Extensions.Options.IOptionsMonitor,Microsoft.Extensions.Options.IOptions,Microsoft.Extensions.Logging.IExternalScopeProvider);Argument[3];Argument[this];taint;df-generated | | Microsoft.Extensions.Logging;LoggerFilterOptions;get_Rules;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[0];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.ProviderName];value;dfc-generated | -| Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[0];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.ProviderName];value;hq-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[1];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.CategoryName];value;dfc-generated | -| Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[1];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.CategoryName];value;hq-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[2];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.LogLevel];value;dfc-generated | -| Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[2];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.LogLevel];value;hq-generated | -| Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[3];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.Filter];value;dfc-generated | -| Microsoft.Extensions.Logging;LoggerFilterRule;LoggerFilterRule;(System.String,System.String,System.Nullable,System.Func);Argument[3];Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.Filter];value;hq-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;ToString;();Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.CategoryName];ReturnValue;taint;dfc-generated | | Microsoft.Extensions.Logging;LoggerFilterRule;ToString;();Argument[this].Property[Microsoft.Extensions.Logging.LoggerFilterRule.ProviderName];ReturnValue;taint;dfc-generated | | Microsoft.Extensions.Logging;LoggerMessageAttribute;LoggerMessageAttribute;(Microsoft.Extensions.Logging.LogLevel,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Logging.LoggerMessageAttribute.Message];value;dfc-generated | @@ -1793,8 +1558,6 @@ | Microsoft.Extensions.Logging;LoggingBuilderExtensions;AddProvider;(Microsoft.Extensions.Logging.ILoggingBuilder,Microsoft.Extensions.Logging.ILoggerProvider);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;LoggingBuilderExtensions;ClearProviders;(Microsoft.Extensions.Logging.ILoggingBuilder);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;LoggingBuilderExtensions;Configure;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Logging;LoggingBuilderExtensions;Configure;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[0];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Logging;LoggingBuilderExtensions;Configure;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Logging;LoggingBuilderExtensions;Configure;(Microsoft.Extensions.Logging.ILoggingBuilder,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Logging;LoggingBuilderExtensions;SetMinimumLevel;(Microsoft.Extensions.Logging.ILoggingBuilder,Microsoft.Extensions.Logging.LogLevel);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Logging;ProviderAliasAttribute;ProviderAliasAttribute;(System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Logging.ProviderAliasAttribute.Alias];value;dfc-generated | @@ -1811,188 +1574,105 @@ | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Name];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency3];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency4];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency4];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency5];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Dependency5];value;hq-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[6].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[6].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`6.Action];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Name];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency3];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency4];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Dependency4];value;hq-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[5].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[5].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`5.Action];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Name];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Dependency3];value;hq-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`4.Action];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Name];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Dependency2];value;hq-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`3.Action];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`2.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`2.Name];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`2.Dependency];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`2.Dependency];value;hq-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`2.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,TDep,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`2.Action];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`1.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`1.Name];value;hq-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`1.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureNamedOptions;ConfigureNamedOptions;(System.String,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ConfigureNamedOptions`1.Action];value;hq-generated | | Microsoft.Extensions.Options;ConfigureOptions;Configure;(TOptions);Argument[0];Argument[this];taint;df-generated | -| Microsoft.Extensions.Options;ConfigureOptions;ConfigureOptions;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ConfigureOptions;ConfigureOptions;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ConfigureOptions;ConfigureOptions;(System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureOptions`1.Action];value;dfc-generated | -| Microsoft.Extensions.Options;ConfigureOptions;ConfigureOptions;(System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ConfigureOptions`1.Action];value;hq-generated | | Microsoft.Extensions.Options;DataAnnotationValidateOptions;DataAnnotationValidateOptions;(System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.DataAnnotationValidateOptions`1.Name];value;dfc-generated | | Microsoft.Extensions.Options;IOptionsMonitor;OnChange;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;IOptionsMonitorCache;GetOrAdd;(System.String,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;NamedConfigureFromConfigurationOptions;NamedConfigureFromConfigurationOptions;(System.String,Microsoft.Extensions.Configuration.IConfiguration,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Configure;(System.Action);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;OptionsBuilder;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.OptionsBuilder`1.Services];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;OptionsBuilder;(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.OptionsBuilder`1.Name];value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;PostConfigure;(System.Action);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func);Argument[this];ReturnValue;value;hq-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Options;OptionsBuilder;Validate;(System.Func,System.String);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Options;OptionsFactory;Create;(System.String);Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Options;OptionsFactory;OptionsFactory;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEnumerable>);Argument[0].Element;Argument[this];taint;df-generated | | Microsoft.Extensions.Options;OptionsFactory;OptionsFactory;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEnumerable>);Argument[1].Element;Argument[this];taint;df-generated | @@ -2005,175 +1685,102 @@ | Microsoft.Extensions.Options;OptionsValidationException;OptionsValidationException;(System.String,System.Type,System.Collections.Generic.IEnumerable);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.OptionsValidationException.OptionsName];value;dfc-generated | | Microsoft.Extensions.Options;OptionsValidationException;OptionsValidationException;(System.String,System.Type,System.Collections.Generic.IEnumerable);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.OptionsValidationException.Failures];value;dfc-generated | | Microsoft.Extensions.Options;OptionsValidationException;get_Message;();Argument[this].Property[Microsoft.Extensions.Options.OptionsValidationException.Failures].Element;ReturnValue;taint;dfc-generated | -| Microsoft.Extensions.Options;OptionsValidationException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Options;OptionsWrapper;OptionsWrapper;(TOptions);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.OptionsWrapper`1.Value];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Name];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Name];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency3];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency4];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency4];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency5];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Dependency5];value;hq-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[6].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[6].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Action];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Action);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`6.Action];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Name];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Name];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency3];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency4];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Dependency4];value;hq-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[5].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[5].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Action];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Action);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`5.Action];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Name];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Name];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Dependency3];value;hq-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Action];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,TDep3,System.Action);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`4.Action];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Name];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Name];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Dependency2];value;hq-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Action];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep1,TDep2,System.Action);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`3.Action];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(TOptions);Argument[0];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`2.Name];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`2.Name];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`2.Dependency];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`2.Dependency];value;hq-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`2.Action];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,TDep,System.Action);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`2.Action];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigure;(System.String,TOptions);Argument[1];Argument[this];taint;df-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`1.Name];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,System.Action);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`1.Name];value;hq-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`1.Action];value;dfc-generated | -| Microsoft.Extensions.Options;PostConfigureOptions;PostConfigureOptions;(System.String,System.Action);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.PostConfigureOptions`1.Action];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures].Element;value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Name];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency3];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency4];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency4];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency5];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Dependency5];value;hq-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[6];Argument[6].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[6];Argument[6].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Validation];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.Validation];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[7];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.FailureMessage];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,TDep5,System.Func,System.String);Argument[7];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`6.FailureMessage];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures].Element;value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Name];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency3];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency4];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Dependency4];value;hq-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[5];Argument[5].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[5];Argument[5].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Validation];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.Validation];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.FailureMessage];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,TDep4,System.Func,System.String);Argument[6];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`5.FailureMessage];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures].Element;value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Name];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Dependency2];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Dependency3];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Dependency3];value;hq-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Validation];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.Validation];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.FailureMessage];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,TDep3,System.Func,System.String);Argument[5];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`4.FailureMessage];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures].Element;value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Name];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Dependency1];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Dependency1];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Dependency2];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Dependency2];value;hq-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Validation];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.Validation];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.FailureMessage];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep1,TDep2,System.Func,System.String);Argument[4];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`3.FailureMessage];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures].Element;value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.Name];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.Dependency];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.Dependency];value;hq-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.Validation];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.Validation];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.FailureMessage];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,TDep,System.Func,System.String);Argument[3];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`2.FailureMessage];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;Validate;(System.String,TOptions);Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.FailureMessage];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures].Element;value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.Name];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.Name];value;hq-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.Validation];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[1];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.Validation];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.FailureMessage];value;dfc-generated | -| Microsoft.Extensions.Options;ValidateOptions;ValidateOptions;(System.String,System.Func,System.String);Argument[2];Argument[this].Property[Microsoft.Extensions.Options.ValidateOptions`1.FailureMessage];value;hq-generated | | Microsoft.Extensions.Options;ValidateOptionsResult;Fail;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];taint;dfc-generated | | Microsoft.Extensions.Options;ValidateOptionsResult;Fail;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.Failures];value;dfc-generated | | Microsoft.Extensions.Options;ValidateOptionsResult;Fail;(System.String);Argument[0];ReturnValue.Property[Microsoft.Extensions.Options.ValidateOptionsResult.FailureMessage];value;dfc-generated | @@ -2193,10 +1800,8 @@ | Microsoft.Extensions.Primitives;Extensions;Append;(System.Text.StringBuilder,Microsoft.Extensions.Primitives.StringSegment);Argument[0];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Primitives;Extensions;Append;(System.Text.StringBuilder,Microsoft.Extensions.Primitives.StringSegment);Argument[1].Property[Microsoft.Extensions.Primitives.StringSegment.Buffer];Argument[0];taint;dfc-generated | | Microsoft.Extensions.Primitives;Extensions;Append;(System.Text.StringBuilder,Microsoft.Extensions.Primitives.StringSegment);Argument[1].Property[Microsoft.Extensions.Primitives.StringSegment.Buffer];ReturnValue;taint;dfc-generated | -| Microsoft.Extensions.Primitives;IChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | Microsoft.Extensions.Primitives;IChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | Microsoft.Extensions.Primitives;IChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;dfc-generated | -| Microsoft.Extensions.Primitives;IChangeToken;RegisterChangeCallback;(System.Action,System.Object);Argument[this];ReturnValue;value;hq-generated | | Microsoft.Extensions.Primitives;InplaceStringBuilder;ToString;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Primitives;StringSegment;StringSegment;(System.String);Argument[0];Argument[this].Property[Microsoft.Extensions.Primitives.StringSegment.Buffer];value;dfc-generated | | Microsoft.Extensions.Primitives;StringSegment;StringSegment;(System.String,System.Int32,System.Int32);Argument[0];Argument[this].Property[Microsoft.Extensions.Primitives.StringSegment.Buffer];value;dfc-generated | @@ -2206,7 +1811,6 @@ | Microsoft.Extensions.Primitives;StringSegment;ToString;();Argument[this].Property[Microsoft.Extensions.Primitives.StringSegment.Value];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Primitives;StringSegment;get_Value;();Argument[this].Property[Microsoft.Extensions.Primitives.StringSegment.Buffer];ReturnValue;taint;dfc-generated | | Microsoft.Extensions.Primitives;StringTokenizer+Enumerator;Enumerator;(Microsoft.Extensions.Primitives.StringTokenizer);Argument[0].Element;Argument[this];taint;df-generated | -| Microsoft.Extensions.Primitives;StringTokenizer+Enumerator;get_Current;();Argument[this].Property[Microsoft.Extensions.Primitives.StringTokenizer+Enumerator.Current];ReturnValue;value;df-generated | | Microsoft.Extensions.Primitives;StringTokenizer+Enumerator;get_Current;();Argument[this].Property[Microsoft.Extensions.Primitives.StringTokenizer+Enumerator.Current];ReturnValue;value;dfc-generated | | Microsoft.Extensions.Primitives;StringTokenizer;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | Microsoft.Extensions.Primitives;StringTokenizer;StringTokenizer;(Microsoft.Extensions.Primitives.StringSegment,System.Char[]);Argument[0];Argument[this];taint;df-generated | @@ -4645,16 +4249,11 @@ | System.CodeDom.Compiler;CodeGenerator;GenerateAttachEventStatement;(System.CodeDom.CodeAttachEventStatement);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateBinaryOperatorExpression;(System.CodeDom.CodeBinaryOperatorExpression);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCastExpression;(System.CodeDom.CodeCastExpression);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromCompileUnit;(System.CodeDom.CodeCompileUnit,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromCompileUnit;(System.CodeDom.CodeCompileUnit,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromExpression;(System.CodeDom.CodeExpression,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromExpression;(System.CodeDom.CodeExpression,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;dfc-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromMember;(System.CodeDom.CodeTypeMember,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromNamespace;(System.CodeDom.CodeNamespace,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromNamespace;(System.CodeDom.CodeNamespace,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromStatement;(System.CodeDom.CodeStatement,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromStatement;(System.CodeDom.CodeStatement,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromType;(System.CodeDom.CodeTypeDeclaration,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCodeFromType;(System.CodeDom.CodeTypeDeclaration,System.IO.TextWriter,System.CodeDom.Compiler.CodeGeneratorOptions);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._options];value;dfc-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCompileUnit;(System.CodeDom.CodeCompileUnit);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateCompileUnitEnd;(System.CodeDom.CodeCompileUnit);Argument[0];Argument[this];taint;df-generated | @@ -4697,12 +4296,9 @@ | System.CodeDom.Compiler;CodeGenerator;GenerateTypes;(System.CodeDom.CodeNamespace);Argument[0].Property[System.CodeDom.CodeNamespace.Types].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.CodeGenerator._currentClass];value;dfc-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateVariableDeclarationStatement;(System.CodeDom.CodeVariableDeclarationStatement);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GenerateVariableReferenceExpression;(System.CodeDom.CodeVariableReferenceExpression);Argument[0];Argument[this];taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GetTypeOutput;(System.CodeDom.CodeTypeReference);Argument[0].Property[System.CodeDom.CodeTypeReference.ArrayElementType].Property[System.CodeDom.CodeTypeReference.BaseType];ReturnValue;taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GetTypeOutput;(System.CodeDom.CodeTypeReference);Argument[0].Property[System.CodeDom.CodeTypeReference.ArrayElementType].Property[System.CodeDom.CodeTypeReference.BaseType];ReturnValue;taint;dfc-generated | -| System.CodeDom.Compiler;CodeGenerator;GetTypeOutput;(System.CodeDom.CodeTypeReference);Argument[0].Property[System.CodeDom.CodeTypeReference.BaseType];ReturnValue;taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;GetTypeOutput;(System.CodeDom.CodeTypeReference);Argument[0].Property[System.CodeDom.CodeTypeReference.BaseType];ReturnValue;taint;dfc-generated | | System.CodeDom.Compiler;CodeGenerator;GetTypeOutput;(System.CodeDom.CodeTypeReference);Argument[0];ReturnValue;taint;df-generated | -| System.CodeDom.Compiler;CodeGenerator;GetTypeOutput;(System.CodeDom.CodeTypeReference);Argument[0];ReturnValue;taint;dfc-generated | | System.CodeDom.Compiler;CodeGenerator;OutputAttributeArgument;(System.CodeDom.CodeAttributeArgument);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;OutputAttributeDeclarations;(System.CodeDom.CodeAttributeDeclarationCollection);Argument[0].Element;Argument[this];taint;df-generated | | System.CodeDom.Compiler;CodeGenerator;OutputExpressionList;(System.CodeDom.CodeExpressionCollection);Argument[0].Element;Argument[this];taint;df-generated | @@ -4765,63 +4361,36 @@ | System.CodeDom.Compiler;IndentedTextWriter;FlushAsync;(System.Threading.CancellationToken);Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;FlushAsync;(System.Threading.CancellationToken);Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;IndentedTextWriter;(System.IO.TextWriter,System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];value;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.Char[]);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.Char[]);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object,System.Object);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object[]);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object[]);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object[]);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.Object[]);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.ReadOnlySpan);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.ReadOnlySpan);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.ReadOnlySpan);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;Write;(System.String,System.ReadOnlySpan);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Char[]);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Char[]);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[1];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object,System.Object);Argument[2];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object[]);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object[]);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object[]);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.Object[]);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.ReadOnlySpan);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.ReadOnlySpan);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.ReadOnlySpan);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLine;(System.String,System.ReadOnlySpan);Argument[1].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.Char[],System.Int32,System.Int32);Argument[0].Element;Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | -| System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineAsync;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineNoTabs;(System.String);Argument[0];Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];taint;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineNoTabsAsync;(System.String);Argument[0];Argument[this];taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineNoTabsAsync;(System.String);Argument[0];ReturnValue;taint;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;WriteLineNoTabsAsync;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.CodeDom.Compiler;IndentedTextWriter;get_Encoding;();Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].Property[System.IO.TextWriter.Encoding];ReturnValue;value;df-generated | | System.CodeDom.Compiler;IndentedTextWriter;get_Encoding;();Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer].Property[System.IO.TextWriter.Encoding];ReturnValue;value;dfc-generated | | System.CodeDom.Compiler;IndentedTextWriter;get_InnerWriter;();Argument[this].SyntheticField[System.CodeDom.Compiler.IndentedTextWriter._writer];ReturnValue;value;dfc-generated | | System.CodeDom.Compiler;TempFileCollection;AddExtension;(System.String);Argument[0];ReturnValue;taint;dfc-generated | @@ -5082,41 +4651,23 @@ | System.Collections.Concurrent;ConcurrentDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[0];Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[0];Argument[2].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[0];Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[0];Argument[2].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[1];ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[1];ReturnValue;value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,TValue,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[0];Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[0];Argument[2].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[3];Argument[2].Parameter[2];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;AddOrUpdate;(TKey,System.Func,System.Func,TArg);Argument[3];Argument[2].Parameter[2];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;ConcurrentDictionary;(System.Collections.Generic.IEnumerable>);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;ConcurrentDictionary;(System.Collections.Generic.IEnumerable>);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;ConcurrentDictionary;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEqualityComparer);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | @@ -5124,20 +4675,13 @@ | System.Collections.Concurrent;ConcurrentDictionary;ConcurrentDictionary;(System.Int32,System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEqualityComparer);Argument[1].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;ConcurrentDictionary;(System.Int32,System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEqualityComparer);Argument[1].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,TValue);Argument[1];ReturnValue;value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Collections.Concurrent;ConcurrentDictionary;GetOrAdd;(TKey,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Collections.Concurrent;ConcurrentDictionary;get_Comparer;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Concurrent;ConcurrentDictionary;get_Keys;();Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue.Element;value;manual | | System.Collections.Concurrent;ConcurrentDictionary;get_Values;();Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue.Element;value;manual | @@ -5164,10 +4708,8 @@ | System.Collections.Frozen;FrozenDictionary+AlternateLookup;ContainsKey;(TAlternateKey);Argument[0];Argument[this];taint;df-generated | | System.Collections.Frozen;FrozenDictionary+AlternateLookup;TryGetValue;(TAlternateKey,TValue);Argument[0];Argument[this];taint;df-generated | | System.Collections.Frozen;FrozenDictionary+AlternateLookup;get_Item;(TAlternateKey);Argument[0];Argument[this];taint;df-generated | -| System.Collections.Frozen;FrozenDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Frozen.FrozenDictionary`2+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Frozen;FrozenDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Frozen.FrozenDictionary`2+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Frozen;FrozenDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Frozen;FrozenDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Frozen;FrozenDictionary;GetAlternateLookup;();Argument[this];ReturnValue.Property[System.Collections.Frozen.FrozenDictionary`2+AlternateLookup`1.Dictionary];value;dfc-generated | | System.Collections.Frozen;FrozenDictionary;TryGetAlternateLookup;(System.Collections.Frozen.FrozenDictionary+AlternateLookup);Argument[this];Argument[0].Property[System.Collections.Frozen.FrozenDictionary`2+AlternateLookup`1.Dictionary];value;dfc-generated | | System.Collections.Frozen;FrozenDictionary;get_Keys;();Argument[this];ReturnValue;taint;df-generated | @@ -5178,10 +4720,8 @@ | System.Collections.Frozen;FrozenSet+AlternateLookup;Contains;(TAlternate);Argument[0];Argument[this];taint;df-generated | | System.Collections.Frozen;FrozenSet+AlternateLookup;TryGetValue;(TAlternate,T);Argument[0];Argument[this];taint;df-generated | | System.Collections.Frozen;FrozenSet+AlternateLookup;TryGetValue;(TAlternate,T);Argument[this];Argument[1];taint;df-generated | -| System.Collections.Frozen;FrozenSet+Enumerator;get_Current;();Argument[this].Property[System.Collections.Frozen.FrozenSet`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Frozen;FrozenSet+Enumerator;get_Current;();Argument[this].Property[System.Collections.Frozen.FrozenSet`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Frozen;FrozenSet+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Frozen;FrozenSet+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Frozen;FrozenSet;Contains;(T);Argument[this];Argument[0];taint;df-generated | | System.Collections.Frozen;FrozenSet;CopyTo;(System.Span);Argument[this].Property[System.Collections.Frozen.FrozenSet`1.Items].Element;Argument[0].Element;value;dfc-generated | | System.Collections.Frozen;FrozenSet;GetAlternateLookup;();Argument[this];ReturnValue.Property[System.Collections.Frozen.FrozenSet`1+AlternateLookup`1.Set];value;dfc-generated | @@ -5255,10 +4795,8 @@ | System.Collections.Generic;KeyValuePair;KeyValuePair;(TKey,TValue);Argument[1];Argument[this].Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Generic;KeyValuePair;get_Key;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Generic;KeyValuePair;get_Value;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;LinkedList+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.LinkedList`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;LinkedList+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.LinkedList`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Generic;LinkedList+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;LinkedList+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Generic;LinkedList;AddAfter;(System.Collections.Generic.LinkedListNode,System.Collections.Generic.LinkedListNode);Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.next].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev];Argument[1].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev];value;dfc-generated | | System.Collections.Generic;LinkedList;AddAfter;(System.Collections.Generic.LinkedListNode,System.Collections.Generic.LinkedListNode);Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.next];Argument[1].SyntheticField[System.Collections.Generic.LinkedListNode`1.next];value;dfc-generated | | System.Collections.Generic;LinkedList;AddAfter;(System.Collections.Generic.LinkedListNode,System.Collections.Generic.LinkedListNode);Argument[1];Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.next].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev];value;dfc-generated | @@ -5297,79 +4835,47 @@ | System.Collections.Generic;List+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Generic;List;AddRange;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].Element;value;manual | | System.Collections.Generic;List;AsReadOnly;();Argument[this].Element;ReturnValue.Element;value;manual | -| System.Collections.Generic;List;ConvertAll;(System.Converter);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;ConvertAll;(System.Converter);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;ConvertAll;(System.Converter);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;ConvertAll;(System.Converter);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Generic;List;CopyTo;(T[]);Argument[this].Element;Argument[0].Element;value;dfc-generated | -| System.Collections.Generic;List;Exists;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;Exists;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;Exists;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;Exists;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;Find;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Generic;List;Find;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Generic;List;Find;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.Generic;List;FindAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Generic;List;FindAll;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Generic;List;FindAll;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.Generic;List;FindIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;FindIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;FindIndex;(System.Int32,System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;FindIndex;(System.Int32,System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[2].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;FindIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;FindIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;FindIndex;(System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;FindIndex;(System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[1].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;FindIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;FindIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;FindIndex;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;FindIndex;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;FindLast;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Generic;List;FindLast;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Generic;List;FindLast;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[2].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;FindLastIndex;(System.Int32,System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[1].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;FindLastIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;FindLastIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;FindLastIndex;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;FindLastIndex;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | -| System.Collections.Generic;List;ForEach;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Generic;List;ForEach;(System.Action);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Generic;List;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.List`1+Enumerator.Current];value;manual | | System.Collections.Generic;List;GetRange;(System.Int32,System.Int32);Argument[this].Element;ReturnValue.Element;value;manual | | System.Collections.Generic;List;InsertRange;(System.Int32,System.Collections.Generic.IEnumerable);Argument[1].Element;Argument[this].Element;value;manual | | System.Collections.Generic;List;List;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;value;dfc-generated | -| System.Collections.Generic;List;RemoveAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;RemoveAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;RemoveAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;RemoveAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Generic;List;Slice;(System.Int32,System.Int32);Argument[this].Element;ReturnValue.Element;value;dfc-generated | -| System.Collections.Generic;List;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;Sort;(System.Comparison);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;Sort;(System.Comparison);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Generic;List;Sort;(System.Comparison);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[1];value;dfc-generated | -| System.Collections.Generic;List;Sort;(System.Comparison);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[1];value;hq-generated | -| System.Collections.Generic;List;TrueForAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Generic;List;TrueForAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Generic;List;TrueForAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Generic;List;TrueForAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Generic.List`1._items].Element;Argument[0].Parameter[0];value;hq-generated | -| System.Collections.Generic;OrderedDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;OrderedDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Collections.Generic;OrderedDictionary+Enumerator;get_Key;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue;value;df-generated | | System.Collections.Generic;OrderedDictionary+Enumerator;get_Key;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue;value;dfc-generated | -| System.Collections.Generic;OrderedDictionary+Enumerator;get_Value;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;df-generated | | System.Collections.Generic;OrderedDictionary+Enumerator;get_Value;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;dfc-generated | -| System.Collections.Generic;OrderedDictionary+KeyCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+KeyCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;OrderedDictionary+KeyCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+KeyCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Generic;OrderedDictionary+KeyCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;OrderedDictionary+ValueCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+ValueCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;OrderedDictionary+ValueCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.OrderedDictionary`2+ValueCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Generic;OrderedDictionary+ValueCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Generic;OrderedDictionary;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | @@ -5404,10 +4910,8 @@ | System.Collections.Generic;PriorityQueue;TryPeek;(TElement,TPriority);Argument[this];Argument[0];taint;df-generated | | System.Collections.Generic;PriorityQueue;TryPeek;(TElement,TPriority);Argument[this];Argument[1];taint;df-generated | | System.Collections.Generic;PriorityQueue;get_Comparer;();Argument[this].SyntheticField[System.Collections.Generic.PriorityQueue`2._comparer];ReturnValue;value;dfc-generated | -| System.Collections.Generic;Queue+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.Queue`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;Queue+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.Queue`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Generic;Queue+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;Queue+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Generic;Queue;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Generic;Queue;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;Queue;Dequeue;();Argument[this].SyntheticField[System.Collections.Generic.Queue`1._array].Element;ReturnValue;value;dfc-generated | @@ -5417,20 +4921,14 @@ | System.Collections.Generic;Queue;Queue;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].SyntheticField[System.Collections.Generic.Queue`1._array].Element;value;dfc-generated | | System.Collections.Generic;Queue;TryDequeue;(T);Argument[this].SyntheticField[System.Collections.Generic.Queue`1._array].Element;Argument[0];value;dfc-generated | | System.Collections.Generic;Queue;TryPeek;(T);Argument[this].SyntheticField[System.Collections.Generic.Queue`1._array].Element;Argument[0];value;dfc-generated | -| System.Collections.Generic;SortedDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;SortedDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Generic;SortedDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;SortedDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | -| System.Collections.Generic;SortedDictionary+Enumerator;get_Key;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue;value;df-generated | | System.Collections.Generic;SortedDictionary+Enumerator;get_Key;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue;value;dfc-generated | -| System.Collections.Generic;SortedDictionary+Enumerator;get_Value;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;df-generated | | System.Collections.Generic;SortedDictionary+Enumerator;get_Value;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+Enumerator.Current].Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;dfc-generated | -| System.Collections.Generic;SortedDictionary+KeyCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+KeyCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;SortedDictionary+KeyCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+KeyCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Generic;SortedDictionary+KeyCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.SortedDictionary`2+KeyCollection+Enumerator.Current];value;manual | | System.Collections.Generic;SortedDictionary+KeyCollection;KeyCollection;(System.Collections.Generic.SortedDictionary);Argument[0];Argument[this].SyntheticField[System.Collections.Generic.SortedDictionary`2+KeyCollection._dictionary];value;dfc-generated | | System.Collections.Generic;SortedDictionary+KeyCollection;get_SyncRoot;();Argument[this].SyntheticField[System.Collections.Generic.SortedDictionary`2+KeyCollection._dictionary].Property[System.Collections.ICollection.SyncRoot];ReturnValue;value;dfc-generated | -| System.Collections.Generic;SortedDictionary+ValueCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+ValueCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;SortedDictionary+ValueCollection+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.SortedDictionary`2+ValueCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Generic;SortedDictionary+ValueCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.SortedDictionary`2+ValueCollection+Enumerator.Current];value;manual | | System.Collections.Generic;SortedDictionary+ValueCollection;ValueCollection;(System.Collections.Generic.SortedDictionary);Argument[0];Argument[this].SyntheticField[System.Collections.Generic.SortedDictionary`2+ValueCollection._dictionary];value;dfc-generated | @@ -5495,10 +4993,8 @@ | System.Collections.Generic;SortedSet;get_Comparer;();Argument[this].SyntheticField[System.Collections.Generic.SortedSet`1.comparer];ReturnValue;value;dfc-generated | | System.Collections.Generic;SortedSet;get_Max;();Argument[this].SyntheticField[System.Collections.Generic.SortedSet`1.root].SyntheticField[System.Collections.Generic.SortedSet`1+Node.Item];ReturnValue;value;dfc-generated | | System.Collections.Generic;SortedSet;get_Min;();Argument[this].SyntheticField[System.Collections.Generic.SortedSet`1.root].SyntheticField[System.Collections.Generic.SortedSet`1+Node.Item];ReturnValue;value;dfc-generated | -| System.Collections.Generic;Stack+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.Stack`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Generic;Stack+Enumerator;get_Current;();Argument[this].Property[System.Collections.Generic.Stack`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Generic;Stack+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Generic;Stack+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Generic;Stack;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Collections.Generic;Stack;CopyTo;(T[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Collections.Generic;Stack;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.Stack`1+Enumerator.Current];value;manual | @@ -5532,14 +5028,10 @@ | System.Collections.Immutable;ImmutableArray;Create;(T,T,T,T);Argument[2];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableArray;Create;(T,T,T,T);Argument[3];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;hq-generated | -| System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Int32,System.Int32,System.Func,TArg);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Int32,System.Int32,System.Func,TArg);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Int32,System.Int32,System.Func,TArg);Argument[4];Argument[3].Parameter[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Int32,System.Int32,System.Func,TArg);Argument[4];Argument[3].Parameter[1];value;hq-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray;CreateRange;(System.Collections.Immutable.ImmutableArray,System.Int32,System.Int32,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray;ToImmutableArray;(System.ReadOnlySpan);Argument[0].Element;ReturnValue.Element;value;manual | @@ -5569,10 +5061,8 @@ | System.Collections.Immutable;ImmutableArray+Builder;MoveToImmutable;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1+Builder._elements];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array];value;dfc-generated | | System.Collections.Immutable;ImmutableArray+Builder;Remove;(T,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[1];taint;df-generated | | System.Collections.Immutable;ImmutableArray+Builder;Remove;(T,System.Collections.Generic.IEqualityComparer);Argument[this];Argument[1];taint;df-generated | -| System.Collections.Immutable;ImmutableArray+Builder;RemoveAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableArray+Builder;RemoveAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray+Builder;RemoveAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1+Builder._elements].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableArray+Builder;RemoveAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1+Builder._elements].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableArray+Builder;RemoveRange;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1];taint;df-generated | | System.Collections.Immutable;ImmutableArray+Builder;RemoveRange;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[this];Argument[1];taint;df-generated | | System.Collections.Immutable;ImmutableArray+Builder;Replace;(T,T);Argument[1];Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1+Builder._elements].Element;value;dfc-generated | @@ -5607,10 +5097,8 @@ | System.Collections.Immutable;ImmutableArray;IndexOf;(T,System.Int32,System.Collections.Generic.IEqualityComparer);Argument[this];Argument[2];taint;df-generated | | System.Collections.Immutable;ImmutableArray;IndexOf;(T,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[3];taint;df-generated | | System.Collections.Immutable;ImmutableArray;IndexOf;(T,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer);Argument[this];Argument[3];taint;df-generated | -| System.Collections.Immutable;ImmutableArray;Insert;(System.Int32,T);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;df-generated | | System.Collections.Immutable;ImmutableArray;Insert;(System.Int32,T);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Insert;(System.Int32,T);Argument[1];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableArray;Insert;(System.Int32,T);Argument[1];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableArray;InsertRange;(System.Int32,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;InsertRange;(System.Int32,System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;InsertRange;(System.Int32,System.Collections.Immutable.ImmutableArray);Argument[1];ReturnValue;value;dfc-generated | @@ -5629,12 +5117,9 @@ | System.Collections.Immutable;ImmutableArray;OfType;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;ReturnValue.Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Remove;(T);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Remove;(T,System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;RemoveAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableArray;RemoveAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray;RemoveAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;RemoveAll;(System.Predicate);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableArray;RemoveAll;(System.Predicate);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;RemoveAll;(System.Predicate);Argument[this];ReturnValue;value;hq-generated | | System.Collections.Immutable;ImmutableArray;RemoveAt;(System.Int32);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;RemoveRange;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;RemoveRange;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | @@ -5645,24 +5130,16 @@ | System.Collections.Immutable;ImmutableArray;RemoveRange;(T[],System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Replace;(T,T);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[2];taint;df-generated | -| System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[2];taint;dfc-generated | -| System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;df-generated | | System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[this];Argument[2];taint;df-generated | -| System.Collections.Immutable;ImmutableArray;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[this];Argument[2];taint;dfc-generated | -| System.Collections.Immutable;ImmutableArray;SetItem;(System.Int32,T);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;df-generated | | System.Collections.Immutable;ImmutableArray;SetItem;(System.Int32,T);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;SetItem;(System.Int32,T);Argument[1];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableArray;SetItem;(System.Int32,T);Argument[1];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableArray;Slice;(System.Int32,System.Int32);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Sort;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Sort;(System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableArray;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableArray;Sort;(System.Comparison);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableArray;Sort;(System.Comparison);Argument[this];ReturnValue;value;hq-generated | | System.Collections.Immutable;ImmutableArray;Sort;(System.Int32,System.Int32,System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;ToBuilder;();Argument[this].Element;ReturnValue.Element;value;dfc-generated | | System.Collections.Immutable;ImmutableArray;get_Item;(System.Int32);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableArray`1.array].Element;ReturnValue;value;dfc-generated | @@ -5683,52 +5160,28 @@ | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;ToImmutableDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableDictionary+Builder;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Immutable;ImmutableDictionary+Builder;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | @@ -5739,10 +5192,8 @@ | System.Collections.Immutable;ImmutableDictionary+Builder;TryGetKey;(TKey,TKey);Argument[0];Argument[1];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary+Builder;get_Keys;();Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue.Element;value;manual | | System.Collections.Immutable;ImmutableDictionary+Builder;get_Values;();Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue.Element;value;manual | -| System.Collections.Immutable;ImmutableDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableDictionary`2+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableDictionary+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableDictionary`2+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableDictionary+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Immutable;ImmutableDictionary;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | | System.Collections.Immutable;ImmutableDictionary;Add;(TKey,TValue);Argument[0];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | @@ -5758,10 +5209,8 @@ | System.Collections.Immutable;ImmutableDictionary;SetItems;(System.Collections.Generic.IEnumerable>);Argument[this];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableDictionary;ToBuilder;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableDictionary;TryGetKey;(TKey,TKey);Argument[0];Argument[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableDictionary`2._comparers].SyntheticField[System.Collections.Immutable.ImmutableDictionary`2+Comparers._keyComparer];value;df-generated | | System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableDictionary`2._comparers].SyntheticField[System.Collections.Immutable.ImmutableDictionary`2+Comparers._keyComparer];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableDictionary`2._comparers].SyntheticField[System.Collections.Immutable.ImmutableDictionary`2+Comparers._keyComparer];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableDictionary`2._comparers].SyntheticField[System.Collections.Immutable.ImmutableDictionary`2+Comparers._valueComparer];value;dfc-generated | | System.Collections.Immutable;ImmutableDictionary;WithComparers;(System.Collections.Generic.IEqualityComparer,System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | @@ -5781,10 +5230,8 @@ | System.Collections.Immutable;ImmutableHashSet+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableHashSet`1+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableHashSet+Builder;SymmetricExceptWith;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this];taint;df-generated | | System.Collections.Immutable;ImmutableHashSet+Builder;TryGetValue;(T,T);Argument[0];Argument[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableHashSet+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableHashSet`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableHashSet+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableHashSet`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableHashSet+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableHashSet+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableHashSet;Add;(T);Argument[0];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableHashSet;Clear;();Argument[this].WithoutElement;ReturnValue;value;manual | | System.Collections.Immutable;ImmutableHashSet;Except;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;df-generated | @@ -5794,55 +5241,32 @@ | System.Collections.Immutable;ImmutableHashSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableHashSet;ToBuilder;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableHashSet;TryGetValue;(T,T);Argument[0];Argument[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableHashSet;Union;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableHashSet;Union;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableHashSet;Union;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableHashSet;Union;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableHashSet;WithComparer;(System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableHashSet;get_KeyComparer;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[1];Argument[3].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[1];Argument[3].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[1];Argument[3].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[1];Argument[3].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[2];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[2];ReturnValue;value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[3].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[3].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;AddOrUpdate;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[3];Argument[2].Parameter[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func,TArg);Argument[3];Argument[2].Parameter[1];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;GetOrAdd;(System.Collections.Immutable.ImmutableDictionary,TKey,TValue);Argument[2];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;Update;(System.Collections.Immutable.ImmutableArray,System.Func,TArg,System.Collections.Immutable.ImmutableArray>,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;Update;(System.Collections.Immutable.ImmutableArray,System.Func,TArg,System.Collections.Immutable.ImmutableArray>,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;Update;(System.Collections.Immutable.ImmutableArray,System.Func,TArg,System.Collections.Immutable.ImmutableArray>,TArg);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;Update;(System.Collections.Immutable.ImmutableArray,System.Func,TArg,System.Collections.Immutable.ImmutableArray>,TArg);Argument[2];Argument[1].Parameter[1];value;hq-generated | -| System.Collections.Immutable;ImmutableInterlocked;Update;(T,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableInterlocked;Update;(T,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;Update;(T,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableInterlocked;Update;(T,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;Update;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Immutable.ImmutableArray>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableInterlocked;Update;(T,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;Create;(System.ReadOnlySpan);Argument[0];ReturnValue;taint;df-generated | @@ -5870,25 +5294,20 @@ | System.Collections.Immutable;ImmutableList+Builder;ConvertAll;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;CopyTo;(T[]);Argument[this];Argument[0].Element;taint;df-generated | | System.Collections.Immutable;ImmutableList+Builder;Exists;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList+Builder;Find;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Immutable;ImmutableList+Builder;Find;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Immutable;ImmutableList+Builder;Find;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.Immutable;ImmutableList+Builder;FindAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Immutable;ImmutableList+Builder;FindAll;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Immutable;ImmutableList+Builder;FindAll;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | | System.Collections.Immutable;ImmutableList+Builder;FindIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;FindIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;FindIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList+Builder;FindLast;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Immutable;ImmutableList+Builder;FindLast;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Immutable;ImmutableList+Builder;FindLast;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | | System.Collections.Immutable;ImmutableList+Builder;FindLastIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;FindLastIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;FindLastIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList+Builder;ForEach;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableList+Builder;ForEach;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;ForEach;(System.Action);Argument[this].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableList+Builder;ForEach;(System.Action);Argument[this].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableList`1+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableList+Builder;GetRange;(System.Int32,System.Int32);Argument[this].Element;ReturnValue.Element;value;manual | | System.Collections.Immutable;ImmutableList+Builder;IndexOf;(T,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[3];taint;df-generated | @@ -5901,10 +5320,8 @@ | System.Collections.Immutable;ImmutableList+Builder;Replace;(T,T,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[this];taint;df-generated | | System.Collections.Immutable;ImmutableList+Builder;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList+Builder;TrueForAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableList`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableList+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableList`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableList+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableList+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableList;Add;(T);Argument[0];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableList;AddRange;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableList;BinarySearch;(System.Int32,System.Int32,T,System.Collections.Generic.IComparer);Argument[2];Argument[3];taint;df-generated | @@ -5914,25 +5331,20 @@ | System.Collections.Immutable;ImmutableList;ConvertAll;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;CopyTo;(T[]);Argument[this];Argument[0].Element;taint;df-generated | | System.Collections.Immutable;ImmutableList;Exists;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList;Find;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Immutable;ImmutableList;Find;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Immutable;ImmutableList;Find;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.Immutable;ImmutableList;FindAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Immutable;ImmutableList;FindAll;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Immutable;ImmutableList;FindAll;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | | System.Collections.Immutable;ImmutableList;FindIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;FindIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;FindIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList;FindLast;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Collections.Immutable;ImmutableList;FindLast;(System.Predicate);Argument[this].Element;Argument[0].Parameter[0];value;manual | | System.Collections.Immutable;ImmutableList;FindLast;(System.Predicate);Argument[this].Element;ReturnValue;value;manual | | System.Collections.Immutable;ImmutableList;FindLastIndex;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;FindLastIndex;(System.Int32,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;FindLastIndex;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Collections.Immutable;ImmutableList;ForEach;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableList;ForEach;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;ForEach;(System.Action);Argument[this].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableList;ForEach;(System.Action);Argument[this].Element;Argument[0].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableList;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableList`1+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableList;GetRange;(System.Int32,System.Int32);Argument[this].Element;ReturnValue.Element;value;manual | | System.Collections.Immutable;ImmutableList;IndexOf;(T,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[3];taint;df-generated | @@ -5961,10 +5373,8 @@ | System.Collections.Immutable;ImmutableList;SetItem;(System.Int32,T);Argument[this];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableList;Sort;();Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableList;Sort;(System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableList;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableList;Sort;(System.Comparison);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableList;Sort;(System.Comparison);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableList;Sort;(System.Comparison);Argument[this];ReturnValue;value;hq-generated | | System.Collections.Immutable;ImmutableList;Sort;(System.Int32,System.Int32,System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableList;ToBuilder;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableList;TrueForAll;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -6000,40 +5410,22 @@ | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[2];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToImmutableSortedDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Collections.Immutable;ImmutableSortedDictionary+Builder;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Key];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;manual | | System.Collections.Immutable;ImmutableSortedDictionary+Builder;Add;(System.Collections.Generic.KeyValuePair);Argument[0].Property[System.Collections.Generic.KeyValuePair`2.Value];Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;manual | @@ -6055,25 +5447,18 @@ | System.Collections.Immutable;ImmutableSortedDictionary;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Immutable.ImmutableSortedDictionary`2+Enumerator.Current];value;manual | | System.Collections.Immutable;ImmutableSortedDictionary;Remove;(TKey);Argument[this];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;RemoveRange;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;SetItem;(TKey,TValue);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._root].SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2+Node._key];value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;SetItem;(TKey,TValue);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._root].SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2+Node._key];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;SetItem;(TKey,TValue);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;SetItem;(TKey,TValue);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;SetItems;(System.Collections.Generic.IEnumerable>);Argument[0];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;SetItems;(System.Collections.Generic.IEnumerable>);Argument[this];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;ToBuilder;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;TryGetKey;(TKey,TKey);Argument[0];Argument[1];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;TryGetKey;(TKey,TKey);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._root].SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2+Node._key];Argument[1];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._keyComparer];value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._keyComparer];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._keyComparer];value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._keyComparer];value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._valueComparer];value;df-generated | | System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[1];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._valueComparer];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedDictionary;WithComparers;(System.Collections.Generic.IComparer,System.Collections.Generic.IEqualityComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;get_Item;(TKey);Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue;value;manual | | System.Collections.Immutable;ImmutableSortedDictionary;get_KeyComparer;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedDictionary`2._keyComparer];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedDictionary;get_Keys;();Argument[this].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue.Element;value;manual | @@ -6103,10 +5488,8 @@ | System.Collections.Immutable;ImmutableSortedSet+Builder;UnionWith;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Builder._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet+Builder;get_Max;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Builder._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet+Builder;get_Min;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Builder._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];ReturnValue;value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedSet+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableSortedSet`1+Enumerator.Current];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedSet+Enumerator;get_Current;();Argument[this].Property[System.Collections.Immutable.ImmutableSortedSet`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Collections.Immutable;ImmutableSortedSet+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;Add;(T);Argument[0];Argument[this].Element;value;manual | | System.Collections.Immutable;ImmutableSortedSet;Clear;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._comparer];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._comparer];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;Clear;();Argument[this];ReturnValue;value;dfc-generated | @@ -6116,21 +5499,16 @@ | System.Collections.Immutable;ImmutableSortedSet;Intersect;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedSet;Remove;(T);Argument[this];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedSet;Reverse;();Argument[this].Element;ReturnValue.Element;value;manual | -| System.Collections.Immutable;ImmutableSortedSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].Element;value;df-generated | | System.Collections.Immutable;ImmutableSortedSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this].Element;value;dfc-generated | -| System.Collections.Immutable;ImmutableSortedSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];value;df-generated | | System.Collections.Immutable;ImmutableSortedSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedSet;SymmetricExcept;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;ToBuilder;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.Immutable;ImmutableSortedSet;TryGetValue;(T,T);Argument[0];Argument[1];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;TryGetValue;(T,T);Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];Argument[1];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;Union;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue;value;df-generated | | System.Collections.Immutable;ImmutableSortedSet;Union;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedSet;WithComparer;(System.Collections.Generic.IComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._comparer];value;df-generated | | System.Collections.Immutable;ImmutableSortedSet;WithComparer;(System.Collections.Generic.IComparer);Argument[0];ReturnValue.SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._comparer];value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;WithComparer;(System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;df-generated | -| System.Collections.Immutable;ImmutableSortedSet;WithComparer;(System.Collections.Generic.IComparer);Argument[this];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;get_Item;(System.Int32);Argument[this].Element;ReturnValue;value;manual | | System.Collections.Immutable;ImmutableSortedSet;get_KeyComparer;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._comparer];ReturnValue;value;dfc-generated | | System.Collections.Immutable;ImmutableSortedSet;get_Max;();Argument[this].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1._root].SyntheticField[System.Collections.Immutable.ImmutableSortedSet`1+Node._key];ReturnValue;value;dfc-generated | @@ -6156,18 +5534,13 @@ | System.Collections.ObjectModel;Collection;get_SyncRoot;();Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items];ReturnValue;value;dfc-generated | | System.Collections.ObjectModel;KeyedCollection;ChangeItemKey;(TItem,TKey);Argument[0];Argument[this];taint;df-generated | | System.Collections.ObjectModel;KeyedCollection;ChangeItemKey;(TItem,TKey);Argument[1];Argument[this];taint;df-generated | -| System.Collections.ObjectModel;KeyedCollection;InsertItem;(System.Int32,TItem);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;df-generated | -| System.Collections.ObjectModel;KeyedCollection;InsertItem;(System.Int32,TItem);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | | System.Collections.ObjectModel;KeyedCollection;InsertItem;(System.Int32,TItem);Argument[1];Argument[this];taint;df-generated | -| System.Collections.ObjectModel;KeyedCollection;InsertItem;(System.Int32,TItem);Argument[1];Argument[this];taint;dfc-generated | | System.Collections.ObjectModel;KeyedCollection;KeyedCollection;(System.Collections.Generic.IEqualityComparer,System.Int32);Argument[0];Argument[this].SyntheticField[System.Collections.ObjectModel.KeyedCollection`2.comparer];value;dfc-generated | | System.Collections.ObjectModel;KeyedCollection;SetItem;(System.Int32,TItem);Argument[1];Argument[this];taint;df-generated | | System.Collections.ObjectModel;KeyedCollection;TryGetValue;(TKey,TItem);Argument[this].Property[System.Collections.ObjectModel.Collection`1.Items].Element;Argument[1];value;dfc-generated | | System.Collections.ObjectModel;KeyedCollection;get_Comparer;();Argument[this].SyntheticField[System.Collections.ObjectModel.KeyedCollection`2.comparer];ReturnValue;value;dfc-generated | | System.Collections.ObjectModel;KeyedCollection;get_Dictionary;();Argument[this];ReturnValue;taint;df-generated | | System.Collections.ObjectModel;KeyedCollection;get_Item;(TKey);Argument[this].Element;ReturnValue;value;manual | -| System.Collections.ObjectModel;ObservableCollection;InsertItem;(System.Int32,T);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | -| System.Collections.ObjectModel;ObservableCollection;SetItem;(System.Int32,T);Argument[1];Argument[this];taint;df-generated | | System.Collections.ObjectModel;ObservableCollection;add_PropertyChanged;(System.ComponentModel.PropertyChangedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.ObjectModel;ObservableCollection;remove_PropertyChanged;(System.ComponentModel.PropertyChangedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Collections.ObjectModel;ReadOnlyCollection;CreateCollection;(System.ReadOnlySpan);Argument[0];ReturnValue;taint;df-generated | @@ -6292,9 +5665,7 @@ | System.Collections;CaseInsensitiveHashCodeProvider;CaseInsensitiveHashCodeProvider;(System.Globalization.CultureInfo);Argument[0];Argument[this];taint;df-generated | | System.Collections;CollectionBase;OnInsert;(System.Int32,System.Object);Argument[1];Argument[this];taint;df-generated | | System.Collections;CollectionBase;OnSet;(System.Int32,System.Object,System.Object);Argument[2];Argument[this];taint;df-generated | -| System.Collections;CollectionBase;Remove;(System.Object);Argument[0];Argument[this].Property[System.Collections.CollectionBase.InnerList].Element;value;df-generated | | System.Collections;CollectionBase;Remove;(System.Object);Argument[0];Argument[this].Property[System.Collections.CollectionBase.InnerList].Element;value;dfc-generated | -| System.Collections;CollectionBase;Remove;(System.Object);Argument[0];Argument[this].SyntheticField[System.Collections.CollectionBase._list].Element;value;df-generated | | System.Collections;CollectionBase;Remove;(System.Object);Argument[0];Argument[this].SyntheticField[System.Collections.CollectionBase._list].Element;value;dfc-generated | | System.Collections;CollectionBase;get_InnerList;();Argument[this].SyntheticField[System.Collections.CollectionBase._list];ReturnValue;value;dfc-generated | | System.Collections;CollectionBase;get_List;();Argument[this];ReturnValue;value;dfc-generated | @@ -6387,7 +5758,6 @@ | System.ComponentModel.DataAnnotations;CompareAttribute;CompareAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherProperty];value;dfc-generated | | System.ComponentModel.DataAnnotations;CompareAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherPropertyDisplayName];ReturnValue;taint;dfc-generated | | System.ComponentModel.DataAnnotations;CompareAttribute;FormatErrorMessage;(System.String);Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherProperty];ReturnValue;taint;dfc-generated | -| System.ComponentModel.DataAnnotations;CompareAttribute;IsValid;(System.Object,System.ComponentModel.DataAnnotations.ValidationContext);Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherProperty];Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherPropertyDisplayName];value;df-generated | | System.ComponentModel.DataAnnotations;CompareAttribute;IsValid;(System.Object,System.ComponentModel.DataAnnotations.ValidationContext);Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherProperty];Argument[this].Property[System.ComponentModel.DataAnnotations.CompareAttribute.OtherPropertyDisplayName];value;dfc-generated | | System.ComponentModel.DataAnnotations;CustomValidationAttribute;CustomValidationAttribute;(System.Type,System.String);Argument[1];Argument[this].Property[System.ComponentModel.DataAnnotations.CustomValidationAttribute.Method];value;dfc-generated | | System.ComponentModel.DataAnnotations;DataTypeAttribute;GetDataTypeName;();Argument[this].Property[System.ComponentModel.DataAnnotations.DataTypeAttribute.CustomDataType];ReturnValue;value;dfc-generated | @@ -6449,11 +5819,8 @@ | System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;DesignerSerializerAttribute;(System.String,System.String);Argument[0];Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerTypeName];value;dfc-generated | | System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;DesignerSerializerAttribute;(System.String,System.String);Argument[1];Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerBaseTypeName];value;dfc-generated | | System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;DesignerSerializerAttribute;(System.String,System.Type);Argument[0];Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerTypeName];value;dfc-generated | -| System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerBaseTypeName];Argument[this].SyntheticField[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute._typeId];taint;df-generated | | System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerBaseTypeName];Argument[this].SyntheticField[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute._typeId];taint;dfc-generated | -| System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerBaseTypeName];ReturnValue;taint;df-generated | | System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute.SerializerBaseTypeName];ReturnValue;taint;dfc-generated | -| System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute._typeId];ReturnValue;value;df-generated | | System.ComponentModel.Design.Serialization;DesignerSerializerAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.Design.Serialization.DesignerSerializerAttribute._typeId];ReturnValue;value;dfc-generated | | System.ComponentModel.Design.Serialization;IDesignerSerializationManager;add_ResolveName;(System.ComponentModel.Design.Serialization.ResolveNameEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.ComponentModel.Design.Serialization;IDesignerSerializationManager;add_SerializationComplete;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -6568,12 +5935,9 @@ | System.ComponentModel;AmbientValueAttribute;AmbientValueAttribute;(System.String);Argument[0];Argument[this].SyntheticField[System.ComponentModel.AmbientValueAttribute._value];value;dfc-generated | | System.ComponentModel;AmbientValueAttribute;AmbientValueAttribute;(System.Type,System.String);Argument[1];Argument[this].SyntheticField[System.ComponentModel.AmbientValueAttribute._value];value;dfc-generated | | System.ComponentModel;AmbientValueAttribute;get_Value;();Argument[this].SyntheticField[System.ComponentModel.AmbientValueAttribute._value];ReturnValue;value;dfc-generated | -| System.ComponentModel;ArrayConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;ArrayConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;ArrayConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;ArrayConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;ArrayConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;ArrayConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;ArrayConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.ComponentModel;AsyncCompletedEventArgs;AsyncCompletedEventArgs;(System.Exception,System.Boolean,System.Object);Argument[0];Argument[this].Property[System.ComponentModel.AsyncCompletedEventArgs.Error];value;dfc-generated | | System.ComponentModel;AsyncCompletedEventArgs;AsyncCompletedEventArgs;(System.Exception,System.Boolean,System.Object);Argument[2];Argument[this].Property[System.ComponentModel.AsyncCompletedEventArgs.UserState];value;dfc-generated | @@ -6601,16 +5965,11 @@ | System.ComponentModel;BaseNumberConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;BaseNumberConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;BaseNumberConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;BaseNumberConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;BaseNumberConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;BaseNumberConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;BaseNumberConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;BaseNumberConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;BaseNumberConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;BindingList;InsertItem;(System.Int32,T);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | | System.ComponentModel;BindingList;OnAddingNew;(System.ComponentModel.AddingNewEventArgs);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel;BindingList;OnListChanged;(System.ComponentModel.ListChangedEventArgs);Argument[0];Argument[this];taint;df-generated | -| System.ComponentModel;BindingList;SetItem;(System.Int32,T);Argument[1];Argument[this];taint;df-generated | | System.ComponentModel;BindingList;add_AddingNew;(System.ComponentModel.AddingNewEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.ComponentModel;BindingList;get_SortProperty;();Argument[this].Property[System.ComponentModel.BindingList`1.SortPropertyCore];ReturnValue;value;dfc-generated | | System.ComponentModel;BindingList;remove_AddingNew;(System.ComponentModel.AddingNewEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -6624,19 +5983,13 @@ | System.ComponentModel;CharConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;CharConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;CharConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;CharConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;CharConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;CharConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;CharConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;CharConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;CharConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;CollectionChangeEventHandler;BeginInvoke;(System.Object,System.ComponentModel.CollectionChangeEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.ComponentModel;CollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;CollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;CollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;CollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;CollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;CollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;CollectionConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.ComponentModel;ComplexBindingPropertiesAttribute;ComplexBindingPropertiesAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.ComplexBindingPropertiesAttribute.DataSource];value;dfc-generated | | System.ComponentModel;ComplexBindingPropertiesAttribute;ComplexBindingPropertiesAttribute;(System.String,System.String);Argument[0];Argument[this].Property[System.ComponentModel.ComplexBindingPropertiesAttribute.DataSource];value;dfc-generated | @@ -6656,12 +6009,9 @@ | System.ComponentModel;CultureInfoConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;CultureInfoConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;CultureInfoConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;CultureInfoConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;CultureInfoConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;CultureInfoConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;CultureInfoConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;CultureInfoConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;CultureInfoConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;CultureInfoConverter;GetCultureName;(System.Globalization.CultureInfo);Argument[0].Property[System.Globalization.CultureInfo.Name];ReturnValue;value;dfc-generated | | System.ComponentModel;CultureInfoConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;CustomTypeDescriptor;CustomTypeDescriptor;(System.ComponentModel.ICustomTypeDescriptor);Argument[0];Argument[this].SyntheticField[System.ComponentModel.CustomTypeDescriptor._parent];value;dfc-generated | @@ -6669,36 +6019,24 @@ | System.ComponentModel;DateOnlyConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;DateOnlyConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DateOnlyConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;DateOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;DateOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;DateOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;DateOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DateOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;DateOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;DateTimeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;DateTimeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DateTimeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;DateTimeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;DateTimeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;DateTimeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;DateTimeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DateTimeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;DateTimeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;DateTimeOffsetConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;DateTimeOffsetConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DateTimeOffsetConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;DateTimeOffsetConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;DateTimeOffsetConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;DateTimeOffsetConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;DateTimeOffsetConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DateTimeOffsetConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;DateTimeOffsetConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;DecimalConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;DecimalConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;DecimalConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;DecimalConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;DecimalConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;DecimalConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;DefaultBindingPropertyAttribute;DefaultBindingPropertyAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DefaultBindingPropertyAttribute.Name];value;dfc-generated | | System.ComponentModel;DefaultEventAttribute;DefaultEventAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DefaultEventAttribute.Name];value;dfc-generated | | System.ComponentModel;DefaultPropertyAttribute;DefaultPropertyAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DefaultPropertyAttribute.Name];value;dfc-generated | @@ -6713,14 +6051,10 @@ | System.ComponentModel;DesignerAttribute;DesignerAttribute;(System.String,System.String);Argument[0];Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerTypeName];value;dfc-generated | | System.ComponentModel;DesignerAttribute;DesignerAttribute;(System.String,System.String);Argument[1];Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerBaseTypeName];value;dfc-generated | | System.ComponentModel;DesignerAttribute;DesignerAttribute;(System.String,System.Type);Argument[0];Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerTypeName];value;dfc-generated | -| System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerBaseTypeName];Argument[this].SyntheticField[System.ComponentModel.DesignerAttribute._typeId];taint;df-generated | | System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerBaseTypeName];Argument[this].SyntheticField[System.ComponentModel.DesignerAttribute._typeId];taint;dfc-generated | -| System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerBaseTypeName];ReturnValue;taint;df-generated | | System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.DesignerAttribute.DesignerBaseTypeName];ReturnValue;taint;dfc-generated | -| System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.DesignerAttribute._typeId];ReturnValue;value;df-generated | | System.ComponentModel;DesignerAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.DesignerAttribute._typeId];ReturnValue;value;dfc-generated | | System.ComponentModel;DesignerCategoryAttribute;DesignerCategoryAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DesignerCategoryAttribute.Category];value;dfc-generated | -| System.ComponentModel;DesignerCategoryAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.DesignerCategoryAttribute.Category];ReturnValue;taint;df-generated | | System.ComponentModel;DesignerCategoryAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.DesignerCategoryAttribute.Category];ReturnValue;taint;dfc-generated | | System.ComponentModel;DisplayNameAttribute;DisplayNameAttribute;(System.String);Argument[0];Argument[this].Property[System.ComponentModel.DisplayNameAttribute.DisplayNameValue];value;dfc-generated | | System.ComponentModel;DisplayNameAttribute;get_DisplayName;();Argument[this].Property[System.ComponentModel.DisplayNameAttribute.DisplayNameValue];ReturnValue;value;dfc-generated | @@ -6729,25 +6063,16 @@ | System.ComponentModel;EditorAttribute;EditorAttribute;(System.String,System.String);Argument[0];Argument[this].Property[System.ComponentModel.EditorAttribute.EditorTypeName];value;dfc-generated | | System.ComponentModel;EditorAttribute;EditorAttribute;(System.String,System.String);Argument[1];Argument[this].Property[System.ComponentModel.EditorAttribute.EditorBaseTypeName];value;dfc-generated | | System.ComponentModel;EditorAttribute;EditorAttribute;(System.String,System.Type);Argument[0];Argument[this].Property[System.ComponentModel.EditorAttribute.EditorTypeName];value;dfc-generated | -| System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.EditorAttribute.EditorBaseTypeName];Argument[this].SyntheticField[System.ComponentModel.EditorAttribute._typeId];taint;df-generated | | System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.EditorAttribute.EditorBaseTypeName];Argument[this].SyntheticField[System.ComponentModel.EditorAttribute._typeId];taint;dfc-generated | -| System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.EditorAttribute.EditorBaseTypeName];ReturnValue;taint;df-generated | | System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.EditorAttribute.EditorBaseTypeName];ReturnValue;taint;dfc-generated | -| System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.EditorAttribute._typeId];ReturnValue;value;df-generated | | System.ComponentModel;EditorAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.EditorAttribute._typeId];ReturnValue;value;dfc-generated | | System.ComponentModel;EnumConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;EnumConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;EnumConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;EnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;EnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;EnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;EnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;EnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;EnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;EnumConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this].Property[System.ComponentModel.EnumConverter.Values];ReturnValue;value;df-generated | | System.ComponentModel;EnumConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this].Property[System.ComponentModel.EnumConverter.Values];ReturnValue;value;dfc-generated | -| System.ComponentModel;EnumConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | -| System.ComponentModel;EnumConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;dfc-generated | | System.ComponentModel;EventDescriptorCollection;Add;(System.ComponentModel.EventDescriptor);Argument[0];Argument[this].Element;value;manual | | System.ComponentModel;EventDescriptorCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.ComponentModel;EventDescriptorCollection;EventDescriptorCollection;(System.ComponentModel.EventDescriptor[]);Argument[0].Element;Argument[this];taint;df-generated | @@ -6772,12 +6097,9 @@ | System.ComponentModel;GuidConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;GuidConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;GuidConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;GuidConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;GuidConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;GuidConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;GuidConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;GuidConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;GuidConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;HandledEventHandler;BeginInvoke;(System.Object,System.ComponentModel.HandledEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.ComponentModel;IBindingList;AddIndex;(System.ComponentModel.PropertyDescriptor);Argument[0];Argument[this];taint;df-generated | | System.ComponentModel;IBindingList;ApplySort;(System.ComponentModel.PropertyDescriptor,System.ComponentModel.ListSortDirection);Argument[0];Argument[this];taint;df-generated | @@ -6822,7 +6144,6 @@ | System.ComponentModel;LicenseProvider;GetLicense;(System.ComponentModel.LicenseContext,System.Type,System.Object,System.Boolean);Argument[0];ReturnValue;taint;df-generated | | System.ComponentModel;LicenseProvider;GetLicense;(System.ComponentModel.LicenseContext,System.Type,System.Object,System.Boolean);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;LicenseProviderAttribute;LicenseProviderAttribute;(System.String);Argument[0];Argument[this].SyntheticField[System.ComponentModel.LicenseProviderAttribute._licenseProviderName];value;dfc-generated | -| System.ComponentModel;LicenseProviderAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.LicenseProviderAttribute._licenseProviderName];ReturnValue;taint;df-generated | | System.ComponentModel;LicenseProviderAttribute;get_TypeId;();Argument[this].SyntheticField[System.ComponentModel.LicenseProviderAttribute._licenseProviderName];ReturnValue;taint;dfc-generated | | System.ComponentModel;ListChangedEventArgs;ListChangedEventArgs;(System.ComponentModel.ListChangedType,System.ComponentModel.PropertyDescriptor);Argument[1];Argument[this].Property[System.ComponentModel.ListChangedEventArgs.PropertyDescriptor];value;dfc-generated | | System.ComponentModel;ListChangedEventHandler;BeginInvoke;(System.Object,System.ComponentModel.ListChangedEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | @@ -6859,30 +6180,16 @@ | System.ComponentModel;MemberDescriptor;get_Attributes;();Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;MemberDescriptor;get_DisplayName;();Argument[this].SyntheticField[System.ComponentModel.MemberDescriptor._displayName];ReturnValue;value;dfc-generated | | System.ComponentModel;MemberDescriptor;get_Name;();Argument[this].SyntheticField[System.ComponentModel.MemberDescriptor._name];ReturnValue;value;dfc-generated | -| System.ComponentModel;MultilineStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;MultilineStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;MultilineStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;MultilineStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;MultilineStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;MultilineStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;MultilineStringConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.ComponentModel;NestedContainer;CreateSite;(System.ComponentModel.IComponent,System.String);Argument[1];ReturnValue.SyntheticField[System.ComponentModel.NestedContainer+Site._name];value;dfc-generated | -| System.ComponentModel;NestedContainer;CreateSite;(System.ComponentModel.IComponent,System.String);Argument[this];ReturnValue.SyntheticField[System.ComponentModel.Container+Site.Container];value;dfc-generated | | System.ComponentModel;NestedContainer;CreateSite;(System.ComponentModel.IComponent,System.String);Argument[this];ReturnValue.SyntheticField[System.ComponentModel.NestedContainer+Site.Container];value;dfc-generated | | System.ComponentModel;NestedContainer;GetService;(System.Type);Argument[this];ReturnValue;value;dfc-generated | | System.ComponentModel;NestedContainer;NestedContainer;(System.ComponentModel.IComponent);Argument[0];Argument[this].Property[System.ComponentModel.NestedContainer.Owner];value;dfc-generated | | System.ComponentModel;NullableConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2].Property[System.Uri.OriginalString];ReturnValue;taint;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;NullableConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;NullableConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.ComponentModel;NullableConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;ProgressChangedEventArgs;ProgressChangedEventArgs;(System.Int32,System.Object);Argument[1];Argument[this].SyntheticField[System.ComponentModel.ProgressChangedEventArgs._userState];value;dfc-generated | @@ -6939,17 +6246,13 @@ | System.ComponentModel;ProvidePropertyAttribute;ProvidePropertyAttribute;(System.String,System.String);Argument[0];Argument[this].Property[System.ComponentModel.ProvidePropertyAttribute.PropertyName];value;dfc-generated | | System.ComponentModel;ProvidePropertyAttribute;ProvidePropertyAttribute;(System.String,System.String);Argument[1];Argument[this].Property[System.ComponentModel.ProvidePropertyAttribute.ReceiverTypeName];value;dfc-generated | | System.ComponentModel;ProvidePropertyAttribute;ProvidePropertyAttribute;(System.String,System.Type);Argument[0];Argument[this].Property[System.ComponentModel.ProvidePropertyAttribute.PropertyName];value;dfc-generated | -| System.ComponentModel;ProvidePropertyAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.ProvidePropertyAttribute.PropertyName];ReturnValue;taint;df-generated | | System.ComponentModel;ProvidePropertyAttribute;get_TypeId;();Argument[this].Property[System.ComponentModel.ProvidePropertyAttribute.PropertyName];ReturnValue;taint;dfc-generated | | System.ComponentModel;ReferenceConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;ReferenceConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;ReferenceConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;ReferenceConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;ReferenceConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;ReferenceConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;ReferenceConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;ReferenceConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;ReferenceConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;ReferenceConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;RefreshEventArgs;RefreshEventArgs;(System.Object);Argument[0];Argument[this].Property[System.ComponentModel.RefreshEventArgs.ComponentChanged];value;dfc-generated | | System.ComponentModel;RefreshEventHandler;BeginInvoke;(System.ComponentModel.RefreshEventArgs,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -6963,21 +6266,15 @@ | System.ComponentModel;TimeOnlyConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;TimeOnlyConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TimeOnlyConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;TimeOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;TimeOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;TimeOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;TimeOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TimeOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;TimeOnlyConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;TimeSpanConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;TimeSpanConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TimeSpanConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;TimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;TimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;TimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;TimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;TimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;ToolboxItemAttribute;ToolboxItemAttribute;(System.String);Argument[0];Argument[this].SyntheticField[System.ComponentModel.ToolboxItemAttribute._toolboxItemTypeName];value;dfc-generated | | System.ComponentModel;ToolboxItemAttribute;get_ToolboxItemTypeName;();Argument[this].SyntheticField[System.ComponentModel.ToolboxItemAttribute._toolboxItemTypeName];ReturnValue;value;dfc-generated | | System.ComponentModel;ToolboxItemFilterAttribute;ToString;();Argument[this].Property[System.ComponentModel.ToolboxItemFilterAttribute.FilterString];ReturnValue;taint;dfc-generated | @@ -6994,22 +6291,17 @@ | System.ComponentModel;TypeConverter;ConvertFromString;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.String);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;TypeConverter;ConvertFromString;(System.ComponentModel.ITypeDescriptorContext,System.String);Argument[1];ReturnValue;value;dfc-generated | | System.ComponentModel;TypeConverter;ConvertFromString;(System.String);Argument[0];ReturnValue;value;dfc-generated | -| System.ComponentModel;TypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;TypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;TypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;TypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;TypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;TypeConverter;ConvertTo;(System.Object,System.Type);Argument[0];ReturnValue;value;df-generated | | System.ComponentModel;TypeConverter;ConvertTo;(System.Object,System.Type);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;TypeConverter;ConvertToInvariantString;(System.ComponentModel.ITypeDescriptorContext,System.Object);Argument[1];ReturnValue;value;df-generated | | System.ComponentModel;TypeConverter;ConvertToInvariantString;(System.ComponentModel.ITypeDescriptorContext,System.Object);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;TypeConverter;ConvertToInvariantString;(System.Object);Argument[0];ReturnValue;value;df-generated | | System.ComponentModel;TypeConverter;ConvertToInvariantString;(System.Object);Argument[this];ReturnValue;taint;df-generated | -| System.ComponentModel;TypeConverter;ConvertToString;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.ComponentModel;TypeConverter;ConvertToString;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | | System.ComponentModel;TypeConverter;ConvertToString;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;TypeConverter;ConvertToString;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;TypeConverter;ConvertToString;(System.ComponentModel.ITypeDescriptorContext,System.Object);Argument[1];ReturnValue;value;df-generated | | System.ComponentModel;TypeConverter;ConvertToString;(System.ComponentModel.ITypeDescriptorContext,System.Object);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;TypeConverter;ConvertToString;(System.Object);Argument[0];ReturnValue;value;df-generated | @@ -7046,23 +6338,17 @@ | System.ComponentModel;TypeListConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;TypeListConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TypeListConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;TypeListConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;TypeListConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;TypeListConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;TypeListConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;TypeListConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;TypeListConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;TypeListConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | | System.ComponentModel;TypeListConverter;TypeListConverter;(System.Type[]);Argument[0].Element;Argument[this];taint;df-generated | | System.ComponentModel;VersionConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.ComponentModel;VersionConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;VersionConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.ComponentModel;VersionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.ComponentModel;VersionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.ComponentModel;VersionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.ComponentModel;VersionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.ComponentModel;VersionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.ComponentModel;VersionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.ComponentModel;WarningException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].Property[System.ComponentModel.WarningException.HelpTopic];Argument[0];taint;dfc-generated | | System.ComponentModel;WarningException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].Property[System.ComponentModel.WarningException.HelpUrl];Argument[0];taint;dfc-generated | | System.ComponentModel;WarningException;WarningException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].Property[System.ComponentModel.WarningException.HelpTopic];taint;dfc-generated | @@ -7124,7 +6410,6 @@ | System.Configuration;ApplicationSettingsBase;add_SettingChanging;(System.Configuration.SettingChangingEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Configuration;ApplicationSettingsBase;add_SettingsLoaded;(System.Configuration.SettingsLoadedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Configuration;ApplicationSettingsBase;add_SettingsSaving;(System.Configuration.SettingsSavingEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Configuration;ApplicationSettingsBase;get_PropertyValues;();Argument[this].Property[System.Configuration.SettingsBase.PropertyValues];ReturnValue;value;df-generated | | System.Configuration;ApplicationSettingsBase;get_PropertyValues;();Argument[this].Property[System.Configuration.SettingsBase.PropertyValues];ReturnValue;value;dfc-generated | | System.Configuration;ApplicationSettingsBase;remove_SettingChanging;(System.Configuration.SettingChangingEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Configuration;ApplicationSettingsBase;remove_SettingsLoaded;(System.Configuration.SettingsLoadedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -7143,57 +6428,20 @@ | System.Configuration;CommaDelimitedStringCollectionConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;CommaDelimitedStringCollectionConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;CommaDelimitedStringCollectionConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;CommaDelimitedStringCollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;CommaDelimitedStringCollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;CommaDelimitedStringCollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;CommaDelimitedStringCollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;CommaDelimitedStringCollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;CommaDelimitedStringCollectionConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[0];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[0];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[1];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[1];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[2];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[2];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlAttribute._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlAttribute._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateAttribute;(System.String,System.String,System.String);Argument[this];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateCDataSection;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlCDataSection._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateCDataSection;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlCDataSection._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateCDataSection;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateCDataSection;(System.String);Argument[this];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateComment;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlComment._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateComment;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlComment._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateComment;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateComment;(System.String);Argument[this];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[0];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[0];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[1];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[1];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[2];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[2];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlElement._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlElement._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateElement;(System.String,System.String,System.String);Argument[this];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateSignificantWhitespace;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlSignificantWhitespace._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateSignificantWhitespace;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlSignificantWhitespace._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateSignificantWhitespace;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateSignificantWhitespace;(System.String);Argument[this];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateTextNode;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlText._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateTextNode;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlText._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateTextNode;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateTextNode;(System.String);Argument[this];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateWhitespace;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlWhitespace._filename];value;df-generated | | System.Configuration;ConfigXmlDocument;CreateWhitespace;(System.String);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue.SyntheticField[System.Configuration.ConfigXmlWhitespace._filename];value;dfc-generated | -| System.Configuration;ConfigXmlDocument;CreateWhitespace;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;ConfigXmlDocument;CreateWhitespace;(System.String);Argument[this];ReturnValue;taint;dfc-generated | | System.Configuration;ConfigXmlDocument;LoadSingleElement;(System.String,System.Xml.XmlTextReader);Argument[0];Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];value;dfc-generated | | System.Configuration;ConfigXmlDocument;LoadSingleElement;(System.String,System.Xml.XmlTextReader);Argument[1];Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._reader];taint;dfc-generated | | System.Configuration;ConfigXmlDocument;LoadSingleElement;(System.String,System.Xml.XmlTextReader);Argument[1];Argument[this];taint;dfc-generated | | System.Configuration;ConfigXmlDocument;LoadSingleElement;(System.String,System.Xml.XmlTextReader);Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._reader];Argument[this];taint;dfc-generated | -| System.Configuration;ConfigXmlDocument;get_Filename;();Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue;value;df-generated | | System.Configuration;ConfigXmlDocument;get_Filename;();Argument[this].SyntheticField[System.Configuration.ConfigXmlDocument._filename];ReturnValue;value;dfc-generated | | System.Configuration;Configuration;GetSection;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Configuration;Configuration;GetSectionGroup;(System.String);Argument[this];ReturnValue;taint;df-generated | @@ -7245,12 +6493,9 @@ | System.Configuration;ConfigurationErrorsException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Configuration.ConfigurationException._filename];Argument[0];taint;dfc-generated | | System.Configuration;ConfigurationErrorsException;get_Errors;();Argument[this].SyntheticField[System.Configuration.ConfigurationErrorsException._errors];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationErrorsException;get_Filename;();Argument[this].SyntheticField[System.Configuration.ConfigurationErrorsException._firstFilename];ReturnValue;value;dfc-generated | -| System.Configuration;ConfigurationErrorsException;get_Filename;();Argument[this].SyntheticField[System.Configuration.ConfigurationException._filename];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationErrorsException;get_Message;();Argument[this].Property[System.Configuration.ConfigurationErrorsException.Filename];ReturnValue;taint;dfc-generated | | System.Configuration;ConfigurationErrorsException;get_Message;();Argument[this].Property[System.Configuration.ConfigurationException.BareMessage];ReturnValue;value;dfc-generated | -| System.Configuration;ConfigurationErrorsException;get_Message;();Argument[this].Property[System.Configuration.ConfigurationException.Filename];ReturnValue;taint;dfc-generated | | System.Configuration;ConfigurationErrorsException;get_Message;();Argument[this].SyntheticField[System.Configuration.ConfigurationErrorsException._firstFilename];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigurationErrorsException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationException;ConfigurationException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.Configuration.ConfigurationException._filename];taint;dfc-generated | | System.Configuration;ConfigurationException;ConfigurationException;(System.String,System.Exception,System.String,System.Int32);Argument[2];Argument[this].SyntheticField[System.Configuration.ConfigurationException._filename];value;dfc-generated | | System.Configuration;ConfigurationException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Configuration.ConfigurationException._filename];Argument[0];taint;dfc-generated | @@ -7259,7 +6504,6 @@ | System.Configuration;ConfigurationException;get_Filename;();Argument[this].SyntheticField[System.Configuration.ConfigurationException._filename];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationException;get_Message;();Argument[this].Property[System.Configuration.ConfigurationException.BareMessage];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationException;get_Message;();Argument[this].Property[System.Configuration.ConfigurationException.Filename];ReturnValue;taint;dfc-generated | -| System.Configuration;ConfigurationException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationLocation;OpenConfiguration;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;ConfigurationLocationCollection;get_Item;(System.Int32);Argument[this].Property[System.Collections.ReadOnlyCollectionBase.InnerList].Element;ReturnValue;value;dfc-generated | | System.Configuration;ConfigurationLockCollection;Add;(System.String);Argument[0];Argument[this].SyntheticField[System.Configuration.ConfigurationLockCollection._internalArraylist].Element;value;dfc-generated | @@ -7313,7 +6557,6 @@ | System.Configuration;ConnectionStringSettingsCollection;Add;(System.Configuration.ConnectionStringSettings);Argument[0];Argument[this];taint;df-generated | | System.Configuration;ConnectionStringSettingsCollection;Add;(System.Configuration.ConnectionStringSettings);Argument[this];Argument[0];taint;df-generated | | System.Configuration;ConnectionStringSettingsCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | -| System.Configuration;ConnectionStringSettingsCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.ConnectionStringSettings.Name];ReturnValue;value;df-generated | | System.Configuration;ConnectionStringSettingsCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.ConnectionStringSettings.Name];ReturnValue;value;dfc-generated | | System.Configuration;ConnectionStringSettingsCollection;Remove;(System.Configuration.ConnectionStringSettings);Argument[0];Argument[this];taint;df-generated | | System.Configuration;ConnectionStringSettingsCollection;Remove;(System.String);Argument[0];Argument[this];taint;df-generated | @@ -7332,37 +6575,27 @@ | System.Configuration;GenericEnumConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;GenericEnumConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;GenericEnumConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;GenericEnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;GenericEnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;GenericEnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;GenericEnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;GenericEnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;GenericEnumConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;IApplicationSettingsProvider;GetPreviousVersion;(System.Configuration.SettingsContext,System.Configuration.SettingsProperty);Argument[this];ReturnValue;taint;df-generated | | System.Configuration;IConfigurationSectionHandler;Create;(System.Object,System.Object,System.Xml.XmlNode);Argument[0].Element;ReturnValue.Element;value;dfc-generated | | System.Configuration;InfiniteIntConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;InfiniteIntConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;InfiniteIntConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;InfiniteIntConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;InfiniteIntConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;InfiniteIntConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;InfiniteIntConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;InfiniteIntConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;InfiniteIntConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;InfiniteTimeSpanConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;InfiniteTimeSpanConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;InfiniteTimeSpanConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;InfiniteTimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;InfiniteTimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;InfiniteTimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;InfiniteTimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;InfiniteTimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;InfiniteTimeSpanConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;IntegerValidatorAttribute;get_ValidatorInstance;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;KeyValueConfigurationCollection;Add;(System.Configuration.KeyValueConfigurationElement);Argument[0];Argument[this];taint;df-generated | | System.Configuration;KeyValueConfigurationCollection;Add;(System.Configuration.KeyValueConfigurationElement);Argument[this];Argument[0];taint;df-generated | | System.Configuration;KeyValueConfigurationCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | -| System.Configuration;KeyValueConfigurationCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.KeyValueConfigurationElement.Key];ReturnValue;value;df-generated | | System.Configuration;KeyValueConfigurationCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.KeyValueConfigurationElement.Key];ReturnValue;value;dfc-generated | | System.Configuration;KeyValueConfigurationCollection;Remove;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Configuration;KeyValueConfigurationCollection;get_AllKeys;();Argument[this];ReturnValue;taint;df-generated | @@ -7374,7 +6607,6 @@ | System.Configuration;NameValueConfigurationCollection;Add;(System.Configuration.NameValueConfigurationElement);Argument[0];Argument[this];taint;df-generated | | System.Configuration;NameValueConfigurationCollection;Add;(System.Configuration.NameValueConfigurationElement);Argument[this];Argument[0];taint;df-generated | | System.Configuration;NameValueConfigurationCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | -| System.Configuration;NameValueConfigurationCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.NameValueConfigurationElement.Name];ReturnValue;value;df-generated | | System.Configuration;NameValueConfigurationCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.NameValueConfigurationElement.Name];ReturnValue;value;dfc-generated | | System.Configuration;NameValueConfigurationCollection;Remove;(System.Configuration.NameValueConfigurationElement);Argument[0];Argument[this];taint;df-generated | | System.Configuration;NameValueConfigurationCollection;Remove;(System.String);Argument[0];Argument[this];taint;df-generated | @@ -7397,7 +6629,6 @@ | System.Configuration;ProviderSettingsCollection;Add;(System.Configuration.ProviderSettings);Argument[0];Argument[this];taint;df-generated | | System.Configuration;ProviderSettingsCollection;Add;(System.Configuration.ProviderSettings);Argument[this];Argument[0];taint;df-generated | | System.Configuration;ProviderSettingsCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | -| System.Configuration;ProviderSettingsCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.ProviderSettings.Name];ReturnValue;value;df-generated | | System.Configuration;ProviderSettingsCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.ProviderSettings.Name];ReturnValue;value;dfc-generated | | System.Configuration;ProviderSettingsCollection;Remove;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Configuration;ProviderSettingsCollection;get_Item;(System.Int32);Argument[this];ReturnValue;taint;df-generated | @@ -7408,7 +6639,6 @@ | System.Configuration;RegexStringValidatorAttribute;RegexStringValidatorAttribute;(System.String);Argument[0];Argument[this].Property[System.Configuration.RegexStringValidatorAttribute.Regex];value;dfc-generated | | System.Configuration;RegexStringValidatorAttribute;get_ValidatorInstance;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;SchemeSettingElement;get_Name;();Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;SchemeSettingElementCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.SchemeSettingElement.Name];ReturnValue;value;df-generated | | System.Configuration;SchemeSettingElementCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.SchemeSettingElement.Name];ReturnValue;value;dfc-generated | | System.Configuration;SchemeSettingElementCollection;get_Item;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Configuration;SchemeSettingElementCollection;get_Item;(System.String);Argument[this];ReturnValue;taint;df-generated | @@ -7431,7 +6661,6 @@ | System.Configuration;SettingElementCollection;Add;(System.Configuration.SettingElement);Argument[this];Argument[0];taint;df-generated | | System.Configuration;SettingElementCollection;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Configuration;SettingElementCollection;Get;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Configuration;SettingElementCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.SettingElement.Name];ReturnValue;value;df-generated | | System.Configuration;SettingElementCollection;GetElementKey;(System.Configuration.ConfigurationElement);Argument[0].Property[System.Configuration.SettingElement.Name];ReturnValue;value;dfc-generated | | System.Configuration;SettingElementCollection;Remove;(System.Configuration.SettingElement);Argument[0];Argument[this];taint;df-generated | | System.Configuration;SettingsBase;Initialize;(System.Configuration.SettingsContext,System.Configuration.SettingsPropertyCollection,System.Configuration.SettingsProviderCollection);Argument[0];Argument[this].SyntheticField[System.Configuration.SettingsBase._context];value;dfc-generated | @@ -7473,51 +6702,36 @@ | System.Configuration;TimeSpanMinutesConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;TimeSpanMinutesConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanMinutesConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;TimeSpanMinutesConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;TimeSpanMinutesConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;TimeSpanMinutesConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;TimeSpanMinutesConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanMinutesConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;TimeSpanMinutesConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;TimeSpanMinutesOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;TimeSpanSecondsConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;TimeSpanSecondsConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanSecondsConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;TimeSpanSecondsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;TimeSpanSecondsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;TimeSpanSecondsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;TimeSpanSecondsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanSecondsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;TimeSpanSecondsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;TimeSpanSecondsOrInfiniteConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;TimeSpanValidator;TimeSpanValidator;(System.TimeSpan,System.TimeSpan,System.Boolean,System.Int64);Argument[0];Argument[this];taint;df-generated | | System.Configuration;TimeSpanValidator;TimeSpanValidator;(System.TimeSpan,System.TimeSpan,System.Boolean,System.Int64);Argument[1];Argument[this];taint;df-generated | | System.Configuration;TimeSpanValidatorAttribute;get_ValidatorInstance;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;TypeNameConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;TypeNameConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TypeNameConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;TypeNameConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;TypeNameConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;TypeNameConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;TypeNameConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;TypeNameConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;TypeNameConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Configuration;UriSection;get_Idn;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;UriSection;get_IriParsing;();Argument[this];ReturnValue;taint;df-generated | | System.Configuration;UriSection;get_SchemeSettings;();Argument[this];ReturnValue;taint;df-generated | @@ -7525,19 +6739,14 @@ | System.Configuration;WhiteSpaceTrimStringConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Configuration;WhiteSpaceTrimStringConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;WhiteSpaceTrimStringConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Configuration;WhiteSpaceTrimStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Configuration;WhiteSpaceTrimStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Configuration;WhiteSpaceTrimStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Configuration;WhiteSpaceTrimStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Configuration;WhiteSpaceTrimStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Configuration;WhiteSpaceTrimStringConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Data.Common;DataAdapter;FillSchema;(System.Data.DataSet,System.Data.SchemaType,System.String,System.Data.IDataReader);Argument[0];ReturnValue;taint;df-generated | | System.Data.Common;DataAdapter;FillSchema;(System.Data.DataTable,System.Data.SchemaType,System.Data.IDataReader);Argument[0];ReturnValue;value;dfc-generated | | System.Data.Common;DataAdapter;add_FillError;(System.Data.FillErrorEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Data.Common;DataAdapter;get_TableMappings;();Argument[this].Property[System.Data.Common.DataAdapter.TableMappings];ReturnValue;value;df-generated | | System.Data.Common;DataAdapter;get_TableMappings;();Argument[this].Property[System.Data.Common.DataAdapter.TableMappings];ReturnValue;value;dfc-generated | | System.Data.Common;DataAdapter;get_TableMappings;();Argument[this];ReturnValue;taint;df-generated | -| System.Data.Common;DataAdapter;get_TableMappings;();Argument[this];ReturnValue;taint;dfc-generated | | System.Data.Common;DataAdapter;remove_FillError;(System.Data.FillErrorEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Data.Common;DataColumnMapping;Clone;();Argument[this].SyntheticField[System.Data.Common.DataColumnMapping._sourceColumnName];ReturnValue.SyntheticField[System.Data.Common.DataColumnMapping._sourceColumnName];value;dfc-generated | | System.Data.Common;DataColumnMapping;DataColumnMapping;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Data.Common.DataColumnMapping._sourceColumnName];value;dfc-generated | @@ -8246,7 +7455,6 @@ | System.Data;DataSet;get_Relations;();Argument[this];ReturnValue;taint;df-generated | | System.Data;DataSet;get_Tables;();Argument[this];ReturnValue;taint;df-generated | | System.Data;DataSet;remove_MergeFailed;(System.Data.MergeFailedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Data;DataSysDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.DescriptionValue];ReturnValue;value;dfc-generated | | System.Data;DataSysDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.Description];Argument[this].Property[System.ComponentModel.DescriptionAttribute.DescriptionValue];value;dfc-generated | | System.Data;DataSysDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.Description];ReturnValue;value;dfc-generated | | System.Data;DataTable;Clone;();Argument[this];ReturnValue;taint;df-generated | @@ -8254,7 +7462,6 @@ | System.Data;DataTable;GetChanges;();Argument[this];ReturnValue;taint;df-generated | | System.Data;DataTable;GetChanges;(System.Data.DataRowState);Argument[this];ReturnValue;taint;df-generated | | System.Data;DataTable;GetErrors;();Argument[this];ReturnValue;taint;df-generated | -| System.Data;DataTable;GetList;();Argument[this].Property[System.Data.DataTable.DefaultView];ReturnValue;value;df-generated | | System.Data;DataTable;GetList;();Argument[this].Property[System.Data.DataTable.DefaultView];ReturnValue;value;dfc-generated | | System.Data;DataTable;Load;(System.Data.IDataReader,System.Data.LoadOption,System.Data.FillErrorEventHandler);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Data;DataTable;LoadDataRow;(System.Object[],System.Boolean);Argument[0];Argument[this].Property[System.Data.DataTable.Rows].Element;value;dfc-generated | @@ -8331,7 +7538,6 @@ | System.Data;DataView;Find;(System.Object[]);Argument[this].Element;ReturnValue;value;manual | | System.Data;DataView;FindRows;(System.Object);Argument[this].Element;ReturnValue.Element;value;dfc-generated | | System.Data;DataView;FindRows;(System.Object[]);Argument[this].Element;ReturnValue.Element;value;dfc-generated | -| System.Data;DataView;GetListName;(System.ComponentModel.PropertyDescriptor[]);Argument[this].SyntheticField[System.Data.DataView._table].Property[System.Data.DataTable.TableName];ReturnValue;value;df-generated | | System.Data;DataView;GetListName;(System.ComponentModel.PropertyDescriptor[]);Argument[this].SyntheticField[System.Data.DataView._table].Property[System.Data.DataTable.TableName];ReturnValue;value;dfc-generated | | System.Data;DataView;IndexListChanged;(System.Object,System.ComponentModel.ListChangedEventArgs);Argument[1];Argument[this];taint;df-generated | | System.Data;DataView;OnListChanged;(System.ComponentModel.ListChangedEventArgs);Argument[0];Argument[this];taint;df-generated | @@ -8357,34 +7563,24 @@ | System.Data;EnumerableRowCollectionExtensions;Cast;(System.Data.EnumerableRowCollection);Argument[0].Element;ReturnValue.Element;value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderBy;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderBy;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;OrderBy;(System.Data.EnumerableRowCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderBy;(System.Data.EnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderBy;(System.Data.EnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;OrderBy;(System.Data.EnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderByDescending;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderByDescending;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;OrderByDescending;(System.Data.EnumerableRowCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderByDescending;(System.Data.EnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;OrderByDescending;(System.Data.EnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;OrderByDescending;(System.Data.EnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;Select;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;Select;(System.Data.EnumerableRowCollection,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;Select;(System.Data.EnumerableRowCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenBy;(System.Data.OrderedEnumerableRowCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenBy;(System.Data.OrderedEnumerableRowCollection,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;ThenBy;(System.Data.OrderedEnumerableRowCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenBy;(System.Data.OrderedEnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenBy;(System.Data.OrderedEnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;ThenBy;(System.Data.OrderedEnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenByDescending;(System.Data.OrderedEnumerableRowCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenByDescending;(System.Data.OrderedEnumerableRowCollection,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;ThenByDescending;(System.Data.OrderedEnumerableRowCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenByDescending;(System.Data.OrderedEnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;ThenByDescending;(System.Data.OrderedEnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;ThenByDescending;(System.Data.OrderedEnumerableRowCollection,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;EnumerableRowCollectionExtensions;Where;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;EnumerableRowCollectionExtensions;Where;(System.Data.EnumerableRowCollection,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;EnumerableRowCollectionExtensions;Where;(System.Data.EnumerableRowCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;FillErrorEventArgs;FillErrorEventArgs;(System.Data.DataTable,System.Object[]);Argument[0];Argument[this].SyntheticField[System.Data.FillErrorEventArgs._dataTable];value;dfc-generated | | System.Data;FillErrorEventArgs;FillErrorEventArgs;(System.Data.DataTable,System.Object[]);Argument[1];Argument[this].SyntheticField[System.Data.FillErrorEventArgs._values];value;dfc-generated | | System.Data;FillErrorEventArgs;get_DataTable;();Argument[this].SyntheticField[System.Data.FillErrorEventArgs._dataTable];ReturnValue;value;dfc-generated | @@ -8440,22 +7636,16 @@ | System.Data;TypedTableBaseExtensions;ElementAtOrDefault;(System.Data.TypedTableBase,System.Int32);Argument[0].Element;ReturnValue;value;manual | | System.Data;TypedTableBaseExtensions;OrderBy;(System.Data.TypedTableBase,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;TypedTableBaseExtensions;OrderBy;(System.Data.TypedTableBase,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;TypedTableBaseExtensions;OrderBy;(System.Data.TypedTableBase,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;TypedTableBaseExtensions;OrderBy;(System.Data.TypedTableBase,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;TypedTableBaseExtensions;OrderBy;(System.Data.TypedTableBase,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;TypedTableBaseExtensions;OrderBy;(System.Data.TypedTableBase,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;TypedTableBaseExtensions;OrderByDescending;(System.Data.TypedTableBase,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;TypedTableBaseExtensions;OrderByDescending;(System.Data.TypedTableBase,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;TypedTableBaseExtensions;OrderByDescending;(System.Data.TypedTableBase,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;TypedTableBaseExtensions;OrderByDescending;(System.Data.TypedTableBase,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;TypedTableBaseExtensions;OrderByDescending;(System.Data.TypedTableBase,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;TypedTableBaseExtensions;OrderByDescending;(System.Data.TypedTableBase,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;TypedTableBaseExtensions;Select;(System.Data.TypedTableBase,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;TypedTableBaseExtensions;Select;(System.Data.TypedTableBase,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Data;TypedTableBaseExtensions;Select;(System.Data.TypedTableBase,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;TypedTableBaseExtensions;Where;(System.Data.TypedTableBase,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Data;TypedTableBaseExtensions;Where;(System.Data.TypedTableBase,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Data;TypedTableBaseExtensions;Where;(System.Data.TypedTableBase,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Data;UniqueConstraint;UniqueConstraint;(System.Data.DataColumn);Argument[0];Argument[this];taint;df-generated | | System.Data;UniqueConstraint;UniqueConstraint;(System.Data.DataColumn,System.Boolean);Argument[0];Argument[this];taint;df-generated | | System.Data;UniqueConstraint;UniqueConstraint;(System.Data.DataColumn[]);Argument[0].Element;Argument[this];taint;df-generated | @@ -8480,13 +7670,9 @@ | System.Diagnostics.CodeAnalysis;RequiresUnreferencedCodeAttribute;RequiresUnreferencedCodeAttribute;(System.String);Argument[0];Argument[this].Property[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute.Message];value;dfc-generated | | System.Diagnostics.Contracts;Contract;Exists;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Contracts;Contract;Exists;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Diagnostics.Contracts;Contract;Exists;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System.Diagnostics.Contracts;Contract;Exists;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics.Contracts;Contract;Exists;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Contracts;Contract;ForAll;(System.Int32,System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Contracts;Contract;ForAll;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Diagnostics.Contracts;Contract;ForAll;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System.Diagnostics.Contracts;Contract;ForAll;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics.Contracts;Contract;ForAll;(System.Collections.Generic.IEnumerable,System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Contracts;Contract;add_ContractFailed;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Contracts;Contract;remove_ContractFailed;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -8574,10 +7760,8 @@ | System.Diagnostics.Tracing;EventListener;EnableEvents;(System.Diagnostics.Tracing.EventSource,System.Diagnostics.Tracing.EventLevel);Argument[this];Argument[0];taint;df-generated | | System.Diagnostics.Tracing;EventListener;EnableEvents;(System.Diagnostics.Tracing.EventSource,System.Diagnostics.Tracing.EventLevel,System.Diagnostics.Tracing.EventKeywords);Argument[this];Argument[0];taint;df-generated | | System.Diagnostics.Tracing;EventListener;EnableEvents;(System.Diagnostics.Tracing.EventSource,System.Diagnostics.Tracing.EventLevel,System.Diagnostics.Tracing.EventKeywords,System.Collections.Generic.IDictionary);Argument[3];Argument[0].SyntheticField[System.Diagnostics.Tracing.EventSource.m_deferredCommands].Property[System.Diagnostics.Tracing.EventCommandEventArgs.Arguments];value;dfc-generated | -| System.Diagnostics.Tracing;EventListener;add_EventSourceCreated;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics.Tracing;EventListener;add_EventSourceCreated;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Tracing;EventListener;add_EventSourceCreated;(System.EventHandler);Argument[this];Argument[0].Parameter[0];value;dfc-generated | -| System.Diagnostics.Tracing;EventListener;add_EventSourceCreated;(System.EventHandler);Argument[this];Argument[0].Parameter[0];value;hq-generated | | System.Diagnostics.Tracing;EventListener;add_EventWritten;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Tracing;EventListener;remove_EventSourceCreated;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Tracing;EventListener;remove_EventWritten;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -8587,12 +7771,9 @@ | System.Diagnostics.Tracing;EventSource;GetTrait;(System.String);Argument[this].SyntheticField[System.Diagnostics.Tracing.EventSource.m_traits].Element;ReturnValue;value;dfc-generated | | System.Diagnostics.Tracing;EventSource;SendCommand;(System.Diagnostics.Tracing.EventSource,System.Diagnostics.Tracing.EventCommand,System.Collections.Generic.IDictionary);Argument[2];Argument[0].SyntheticField[System.Diagnostics.Tracing.EventSource.m_deferredCommands].Property[System.Diagnostics.Tracing.EventCommandEventArgs.Arguments];value;dfc-generated | | System.Diagnostics.Tracing;EventSource;ToString;();Argument[this];ReturnValue;taint;df-generated | -| System.Diagnostics.Tracing;EventSource;add_EventCommandExecuted;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics.Tracing;EventSource;add_EventCommandExecuted;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Diagnostics.Tracing;EventSource;add_EventCommandExecuted;(System.EventHandler);Argument[this].SyntheticField[System.Diagnostics.Tracing.EventSource.m_deferredCommands];Argument[0].Parameter[1];value;dfc-generated | -| System.Diagnostics.Tracing;EventSource;add_EventCommandExecuted;(System.EventHandler);Argument[this].SyntheticField[System.Diagnostics.Tracing.EventSource.m_deferredCommands];Argument[0].Parameter[1];value;hq-generated | | System.Diagnostics.Tracing;EventSource;add_EventCommandExecuted;(System.EventHandler);Argument[this];Argument[0].Parameter[0];value;dfc-generated | -| System.Diagnostics.Tracing;EventSource;add_EventCommandExecuted;(System.EventHandler);Argument[this];Argument[0].Parameter[0];value;hq-generated | | System.Diagnostics.Tracing;EventSource;get_ConstructionException;();Argument[this];ReturnValue;taint;df-generated | | System.Diagnostics.Tracing;EventSource;get_Guid;();Argument[this].SyntheticField[System.Diagnostics.Tracing.EventSource.m_guid];ReturnValue;value;dfc-generated | | System.Diagnostics.Tracing;EventSource;get_Name;();Argument[this].SyntheticField[System.Diagnostics.Tracing.EventSource.m_name];ReturnValue;value;dfc-generated | @@ -8701,16 +7882,10 @@ | System.Diagnostics;DistributedContextPropagator+PropagatorGetterCallback;BeginInvoke;(System.Object,System.String,System.String,System.Collections.Generic.IEnumerable,System.AsyncCallback,System.Object);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Diagnostics;DistributedContextPropagator+PropagatorSetterCallback;BeginInvoke;(System.Object,System.String,System.String,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Diagnostics;DistributedContextPropagator;ExtractBaggage;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Diagnostics;DistributedContextPropagator;ExtractBaggage;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback);Argument[0];Argument[1].Parameter[0];value;hq-generated | -| System.Diagnostics;DistributedContextPropagator;ExtractBaggage;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics;DistributedContextPropagator;ExtractBaggage;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Diagnostics;DistributedContextPropagator;ExtractTraceIdAndState;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback,System.String,System.String);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Diagnostics;DistributedContextPropagator;ExtractTraceIdAndState;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback,System.String,System.String);Argument[0];Argument[1].Parameter[0];value;hq-generated | -| System.Diagnostics;DistributedContextPropagator;ExtractTraceIdAndState;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback,System.String,System.String);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics;DistributedContextPropagator;ExtractTraceIdAndState;(System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorGetterCallback,System.String,System.String);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Diagnostics;DistributedContextPropagator;Inject;(System.Diagnostics.Activity,System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorSetterCallback);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Diagnostics;DistributedContextPropagator;Inject;(System.Diagnostics.Activity,System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorSetterCallback);Argument[1];Argument[2].Parameter[0];value;hq-generated | -| System.Diagnostics;DistributedContextPropagator;Inject;(System.Diagnostics.Activity,System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorSetterCallback);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Diagnostics;DistributedContextPropagator;Inject;(System.Diagnostics.Activity,System.Object,System.Diagnostics.DistributedContextPropagator+PropagatorSetterCallback);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Diagnostics;EntryWrittenEventHandler;BeginInvoke;(System.Object,System.Diagnostics.EntryWrittenEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Diagnostics;EventLog;add_EntryWritten;(System.Diagnostics.EntryWrittenEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -8734,7 +7909,6 @@ | System.Diagnostics;FileVersionInfo;get_SpecialBuild;();Argument[this];ReturnValue;taint;df-generated | | System.Diagnostics;InitializingSwitchEventArgs;InitializingSwitchEventArgs;(System.Diagnostics.Switch);Argument[0];Argument[this].Property[System.Diagnostics.InitializingSwitchEventArgs.Switch];value;dfc-generated | | System.Diagnostics;InitializingTraceSourceEventArgs;InitializingTraceSourceEventArgs;(System.Diagnostics.TraceSource);Argument[0];Argument[this].Property[System.Diagnostics.InitializingTraceSourceEventArgs.TraceSource];value;dfc-generated | -| System.Diagnostics;MonitoringDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.DescriptionValue];ReturnValue;value;dfc-generated | | System.Diagnostics;MonitoringDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.Description];Argument[this].Property[System.ComponentModel.DescriptionAttribute.DescriptionValue];value;dfc-generated | | System.Diagnostics;MonitoringDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.Description];ReturnValue;value;dfc-generated | | System.Diagnostics;Process;GetProcessById;(System.Int32,System.String);Argument[1];ReturnValue.SyntheticField[System.Diagnostics.Process._machineName];value;dfc-generated | @@ -8837,12 +8011,9 @@ | System.Drawing.Printing;MarginsConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing.Printing;MarginsConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing.Printing;MarginsConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing.Printing;MarginsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Drawing.Printing;MarginsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing.Printing;MarginsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Drawing.Printing;MarginsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing.Printing;MarginsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing.Printing;MarginsConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing.Printing;PrintDocument;add_BeginPrint;(System.Drawing.Printing.PrintEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Drawing.Printing;PrintDocument;add_EndPrint;(System.Drawing.Printing.PrintEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Drawing.Printing;PrintDocument;add_PrintPage;(System.Drawing.Printing.PrintPageEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -8861,14 +8032,7 @@ | System.Drawing;ColorConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;ColorConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;ColorConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;ColorConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;ColorConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | | System.Drawing;ColorTranslator;ToHtml;(System.Drawing.Color);Argument[0].Property[System.Drawing.Color.Name];ReturnValue;value;dfc-generated | | System.Drawing;ColorTranslator;ToHtml;(System.Drawing.Color);Argument[0].SyntheticField[System.Drawing.Color.name];ReturnValue;value;dfc-generated | @@ -8876,19 +8040,14 @@ | System.Drawing;FontConverter+FontNameConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;FontConverter+FontNameConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;FontConverter+FontNameConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | -| System.Drawing;FontConverter+FontUnitConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this].Property[System.ComponentModel.EnumConverter.Values];ReturnValue;value;df-generated | | System.Drawing;FontConverter+FontUnitConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this].Property[System.ComponentModel.EnumConverter.Values];ReturnValue;value;dfc-generated | | System.Drawing;FontConverter+FontUnitConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | -| System.Drawing;FontConverter+FontUnitConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;dfc-generated | | System.Drawing;FontConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;FontConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;FontConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;FontConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Drawing;FontConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;FontConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Drawing;FontConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;FontConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;FontConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;FontConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.Drawing;Graphics+DrawImageAbort;BeginInvoke;(System.IntPtr,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Drawing;Graphics+EnumerateMetafileProc;BeginInvoke;(System.Drawing.Imaging.EmfPlusRecordType,System.Int32,System.Int32,System.IntPtr,System.Drawing.Imaging.PlayRecordCallback,System.AsyncCallback,System.Object);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | @@ -8941,12 +8100,9 @@ | System.Drawing;IconConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;IconConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;IconConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;IconConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Drawing;IconConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;IconConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Drawing;IconConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;IconConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;IconConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;Image+GetThumbnailImageAbort;BeginInvoke;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Drawing;Image;GetThumbnailImage;(System.Int32,System.Int32,System.Drawing.Image+GetThumbnailImageAbort,System.IntPtr);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Drawing;ImageAnimator;Animate;(System.Drawing.Image,System.EventHandler);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -8954,72 +8110,38 @@ | System.Drawing;ImageConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;ImageConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;ImageConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;ImageConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Drawing;ImageConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;ImageConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Drawing;ImageConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;ImageConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;ImageConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;ImageConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.Drawing;ImageFormatConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;ImageFormatConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;ImageFormatConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;ImageFormatConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Drawing;ImageFormatConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;ImageFormatConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Drawing;ImageFormatConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;ImageFormatConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;ImageFormatConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;ImageFormatConverter;GetStandardValues;(System.ComponentModel.ITypeDescriptorContext);Argument[this];ReturnValue;taint;df-generated | | System.Drawing;PointConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;PointConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;PointConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;PointConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;PointConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.Drawing;Rectangle;Inflate;(System.Drawing.Rectangle,System.Int32,System.Int32);Argument[0];ReturnValue;value;dfc-generated | | System.Drawing;RectangleConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;RectangleConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;RectangleConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;RectangleConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;RectangleConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.Drawing;RectangleF;Inflate;(System.Drawing.RectangleF,System.Single,System.Single);Argument[0];ReturnValue;value;dfc-generated | | System.Drawing;SizeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;SizeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;SizeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;SizeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;SizeConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.Drawing;SizeFConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | | System.Drawing;SizeFConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | | System.Drawing;SizeFConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;df-generated | | System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[1].Property[System.Globalization.CultureInfo.TextInfo].Property[System.Globalization.TextInfo.ListSeparator];ReturnValue;taint;dfc-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Drawing;SizeFConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Drawing;SizeFConverter;GetProperties;(System.ComponentModel.ITypeDescriptorContext,System.Object,System.Attribute[]);Argument[1];ReturnValue;taint;df-generated | | System.Dynamic;BinaryOperationBinder;FallbackBinaryOperation;(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject);Argument[2];ReturnValue;value;dfc-generated | | System.Dynamic;BindingRestrictions;Combine;(System.Collections.Generic.IList);Argument[0].Element;ReturnValue;taint;df-generated | @@ -9076,18 +8198,11 @@ | System.Formats.Asn1;AsnReader;TryReadCharacterStringBytes;(System.Span,System.Formats.Asn1.Asn1Tag,System.Int32);Argument[this];Argument[0];taint;df-generated | | System.Formats.Asn1;AsnReader;TryReadOctetString;(System.Span,System.Int32,System.Nullable);Argument[this];Argument[0];taint;df-generated | | System.Formats.Asn1;AsnWriter;Encode;(System.Func,TReturn>);Argument[0].ReturnValue;ReturnValue;value;dfc-generated | -| System.Formats.Asn1;AsnWriter;Encode;(System.Func,TReturn>);Argument[0].ReturnValue;ReturnValue;value;hq-generated | -| System.Formats.Asn1;AsnWriter;Encode;(System.Func,TReturn>);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Formats.Asn1;AsnWriter;Encode;(System.Func,TReturn>);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Formats.Asn1;AsnWriter;Encode;(TState,System.Func,TReturn>);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Formats.Asn1;AsnWriter;Encode;(TState,System.Func,TReturn>);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Formats.Asn1;AsnWriter;Encode;(TState,System.Func,TReturn>);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Formats.Asn1;AsnWriter;Encode;(TState,System.Func,TReturn>);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Formats.Asn1;AsnWriter;Encode;(TState,System.Func,TReturn>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Formats.Asn1;AsnWriter;Encode;(TState,System.Func,TReturn>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Formats.Asn1;AsnWriter;Encode;(TState,System.Action>);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Formats.Asn1;AsnWriter;Encode;(TState,System.Action>);Argument[0];Argument[1].Parameter[0];value;hq-generated | -| System.Formats.Asn1;AsnWriter;Encode;(TState,System.Action>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Formats.Asn1;AsnWriter;Encode;(TState,System.Action>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Formats.Asn1;AsnWriter;PushOctetString;(System.Nullable);Argument[this];ReturnValue;taint;df-generated | | System.Formats.Asn1;AsnWriter;PushSequence;(System.Nullable);Argument[this];ReturnValue;taint;df-generated | @@ -9195,9 +8310,7 @@ | System.Globalization;TextElementEnumerator;GetTextElement;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._currentTextElementSubstr];ReturnValue;value;dfc-generated | | System.Globalization;TextElementEnumerator;GetTextElement;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._str];Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._currentTextElementSubstr];value;dfc-generated | | System.Globalization;TextElementEnumerator;GetTextElement;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._str];ReturnValue;value;dfc-generated | -| System.Globalization;TextElementEnumerator;get_Current;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._currentTextElementSubstr];ReturnValue;value;df-generated | | System.Globalization;TextElementEnumerator;get_Current;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._currentTextElementSubstr];ReturnValue;value;dfc-generated | -| System.Globalization;TextElementEnumerator;get_Current;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._str];ReturnValue;value;df-generated | | System.Globalization;TextElementEnumerator;get_Current;();Argument[this].SyntheticField[System.Globalization.TextElementEnumerator._str];ReturnValue;value;dfc-generated | | System.Globalization;TextInfo;ReadOnly;(System.Globalization.TextInfo);Argument[0];ReturnValue;value;dfc-generated | | System.Globalization;TextInfo;ToLower;(System.String);Argument[0];ReturnValue;value;dfc-generated | @@ -9239,10 +8352,8 @@ | System.IO.Enumeration;FileSystemEnumerable;FileSystemEnumerable;(System.String,System.IO.Enumeration.FileSystemEnumerable+FindTransform,System.IO.EnumerationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.IO.Enumeration;FileSystemEnumerable;set_ShouldIncludePredicate;(System.IO.Enumeration.FileSystemEnumerable+FindPredicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.IO.Enumeration;FileSystemEnumerable;set_ShouldRecursePredicate;(System.IO.Enumeration.FileSystemEnumerable+FindPredicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.IO.Enumeration;FileSystemEnumerator;get_Current;();Argument[this].Property[System.IO.Enumeration.FileSystemEnumerator`1.Current];ReturnValue;value;df-generated | | System.IO.Enumeration;FileSystemEnumerator;get_Current;();Argument[this].Property[System.IO.Enumeration.FileSystemEnumerator`1.Current];ReturnValue;value;dfc-generated | | System.IO.Enumeration;FileSystemEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.IO.Enumeration;FileSystemEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.IO.Enumeration;FileSystemName;TranslateWin32Expression;(System.String);Argument[0];ReturnValue;value;dfc-generated | | System.IO.IsolatedStorage;IsolatedStorage;get_ApplicationIdentity;();Argument[this];ReturnValue;taint;df-generated | | System.IO.IsolatedStorage;IsolatedStorage;get_AssemblyIdentity;();Argument[this];ReturnValue;taint;df-generated | @@ -9267,10 +8378,8 @@ | System.IO.Pipelines;PipeReader;Create;(System.IO.Stream,System.IO.Pipelines.StreamPipeReaderOptions);Argument[0];ReturnValue;taint;df-generated | | System.IO.Pipelines;PipeReader;Create;(System.IO.Stream,System.IO.Pipelines.StreamPipeReaderOptions);Argument[1];ReturnValue;taint;df-generated | | System.IO.Pipelines;PipeReader;OnWriterCompleted;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.IO.Pipelines;PipeScheduler;Schedule;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.IO.Pipelines;PipeScheduler;Schedule;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.IO.Pipelines;PipeScheduler;Schedule;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.IO.Pipelines;PipeScheduler;Schedule;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;hq-generated | | System.IO.Pipelines;PipeWriter;AsStream;(System.Boolean);Argument[this];ReturnValue;taint;df-generated | | System.IO.Pipelines;PipeWriter;Create;(System.IO.Stream,System.IO.Pipelines.StreamPipeWriterOptions);Argument[0];ReturnValue;taint;df-generated | | System.IO.Pipelines;PipeWriter;Create;(System.IO.Stream,System.IO.Pipelines.StreamPipeWriterOptions);Argument[1];ReturnValue;taint;df-generated | @@ -9401,7 +8510,6 @@ | System.IO;FileInfo;get_Directory;();Argument[this];ReturnValue;taint;df-generated | | System.IO;FileInfo;get_DirectoryName;();Argument[this].Field[System.IO.FileSystemInfo.FullPath];ReturnValue;value;dfc-generated | | System.IO;FileLoadException;get_Message;();Argument[this].Property[System.IO.FileLoadException.FileName];Argument[this].SyntheticField[System.Exception._message];taint;dfc-generated | -| System.IO;FileLoadException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.IO;FileNotFoundException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.IO;FileStream;FileStream;(Microsoft.Win32.SafeHandles.SafeFileHandle,System.IO.FileAccess,System.Int32);Argument[this];Argument[this].SyntheticField[System.IO.FileStream._strategy].SyntheticField[System.IO.Strategies.DerivedFileStreamStrategy._fileStream];value;dfc-generated | | System.IO;FileStream;FileStream;(Microsoft.Win32.SafeHandles.SafeFileHandle,System.IO.FileAccess,System.Int32,System.Boolean);Argument[this];Argument[this].SyntheticField[System.IO.FileStream._strategy].SyntheticField[System.IO.Strategies.DerivedFileStreamStrategy._fileStream];value;dfc-generated | @@ -9453,7 +8561,6 @@ | System.IO;MemoryStream;MemoryStream;(System.Byte[],System.Int32,System.Int32,System.Boolean,System.Boolean);Argument[0].Element;Argument[this];taint;manual | | System.IO;MemoryStream;ToArray;();Argument[this];ReturnValue;taint;manual | | System.IO;MemoryStream;TryGetBuffer;(System.ArraySegment);Argument[this];Argument[0].Element;taint;df-generated | -| System.IO;MemoryStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[0].Property[System.ReadOnlyMemory`1.Span].Element;Argument[this];taint;df-generated | | System.IO;MemoryStream;WriteAsync;(System.ReadOnlyMemory,System.Threading.CancellationToken);Argument[0].Property[System.ReadOnlyMemory`1.Span].Element;Argument[this];taint;dfc-generated | | System.IO;MemoryStream;WriteTo;(System.IO.Stream);Argument[this];Argument[0];taint;df-generated | | System.IO;Path;ChangeExtension;(System.String,System.String);Argument[0];ReturnValue;value;dfc-generated | @@ -9522,10 +8629,8 @@ | System.IO;RenamedEventArgs;get_OldFullPath;();Argument[this].SyntheticField[System.IO.RenamedEventArgs._oldFullPath];ReturnValue;value;dfc-generated | | System.IO;RenamedEventArgs;get_OldName;();Argument[this].SyntheticField[System.IO.RenamedEventArgs._oldName];ReturnValue;value;dfc-generated | | System.IO;RenamedEventHandler;BeginInvoke;(System.Object,System.IO.RenamedEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.IO;Stream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO;Stream;BeginRead;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[this];Argument[0];taint;manual | | System.IO;Stream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[0].Element;Argument[this];taint;manual | -| System.IO;Stream;BeginWrite;(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.IO;Stream;CopyTo;(System.IO.Stream);Argument[this];Argument[0];taint;manual | | System.IO;Stream;CopyTo;(System.IO.Stream,System.Int32);Argument[this];Argument[0];taint;manual | | System.IO;Stream;CopyToAsync;(System.IO.Stream);Argument[this];Argument[0];taint;manual | @@ -9714,7 +8819,6 @@ | System.Linq.Expressions;DynamicExpression;MakeDynamic;(System.Type,System.Runtime.CompilerServices.CallSiteBinder,System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Linq.Expressions.Expression);Argument[5];ReturnValue;taint;df-generated | | System.Linq.Expressions;DynamicExpression;Update;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Linq.Expressions;DynamicExpression;get_Arguments;();Argument[this];ReturnValue;taint;df-generated | -| System.Linq.Expressions;ElementInit;GetArgument;(System.Int32);Argument[this].Property[System.Linq.Expressions.ElementInit.Arguments].Element;ReturnValue;value;df-generated | | System.Linq.Expressions;ElementInit;GetArgument;(System.Int32);Argument[this].Property[System.Linq.Expressions.ElementInit.Arguments].Element;ReturnValue;value;dfc-generated | | System.Linq.Expressions;ElementInit;ToString;();Argument[this];ReturnValue;taint;df-generated | | System.Linq.Expressions;ElementInit;Update;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue.Property[System.Linq.Expressions.ElementInit.Arguments];value;dfc-generated | @@ -10080,10 +9184,7 @@ | System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection);Argument[0];ReturnValue;value;df-generated | | System.Linq.Expressions;ExpressionVisitor;Visit;(System.Linq.Expressions.Expression);Argument[0];ReturnValue;value;dfc-generated | | System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection,System.Func);Argument[0];ReturnValue;value;hq-generated | -| System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq.Expressions;ExpressionVisitor;Visit;(System.Collections.ObjectModel.ReadOnlyCollection,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq.Expressions;ExpressionVisitor;VisitAndConvert;(System.Collections.ObjectModel.ReadOnlyCollection,System.String);Argument[0].Element;Argument[this];taint;df-generated | | System.Linq.Expressions;ExpressionVisitor;VisitAndConvert;(System.Collections.ObjectModel.ReadOnlyCollection,System.String);Argument[0];ReturnValue;value;df-generated | @@ -10141,7 +9242,6 @@ | System.Linq.Expressions;GotoExpression;Update;(System.Linq.Expressions.LabelTarget,System.Linq.Expressions.Expression);Argument[1];ReturnValue.Property[System.Linq.Expressions.GotoExpression.Value];value;dfc-generated | | System.Linq.Expressions;GotoExpression;Update;(System.Linq.Expressions.LabelTarget,System.Linq.Expressions.Expression);Argument[this];ReturnValue;value;dfc-generated | | System.Linq.Expressions;IArgumentProvider;GetArgument;(System.Int32);Argument[this];ReturnValue;taint;df-generated | -| System.Linq.Expressions;IndexExpression;GetArgument;(System.Int32);Argument[this].SyntheticField[System.Linq.Expressions.IndexExpression._arguments].Element;ReturnValue;value;df-generated | | System.Linq.Expressions;IndexExpression;GetArgument;(System.Int32);Argument[this].SyntheticField[System.Linq.Expressions.IndexExpression._arguments].Element;ReturnValue;value;dfc-generated | | System.Linq.Expressions;IndexExpression;Update;(System.Linq.Expressions.Expression,System.Collections.Generic.IEnumerable);Argument[0];ReturnValue.Property[System.Linq.Expressions.IndexExpression.Object];value;dfc-generated | | System.Linq.Expressions;IndexExpression;Update;(System.Linq.Expressions.Expression,System.Collections.Generic.IEnumerable);Argument[1];ReturnValue.SyntheticField[System.Linq.Expressions.IndexExpression._arguments];value;dfc-generated | @@ -10185,7 +9285,6 @@ | System.Linq.Expressions;NewArrayExpression;Update;(System.Collections.Generic.IEnumerable);Argument[this];ReturnValue;value;dfc-generated | | System.Linq.Expressions;NewExpression;Accept;(System.Linq.Expressions.ExpressionVisitor);Argument[this].Property[System.Linq.Expressions.NewExpression.Constructor];ReturnValue.Property[System.Linq.Expressions.NewExpression.Constructor];value;dfc-generated | | System.Linq.Expressions;NewExpression;Accept;(System.Linq.Expressions.ExpressionVisitor);Argument[this].Property[System.Linq.Expressions.NewExpression.Members];ReturnValue.Property[System.Linq.Expressions.NewExpression.Members];value;dfc-generated | -| System.Linq.Expressions;NewExpression;GetArgument;(System.Int32);Argument[this].SyntheticField[System.Linq.Expressions.NewExpression._arguments].Element;ReturnValue;value;df-generated | | System.Linq.Expressions;NewExpression;GetArgument;(System.Int32);Argument[this].SyntheticField[System.Linq.Expressions.NewExpression._arguments].Element;ReturnValue;value;dfc-generated | | System.Linq.Expressions;NewExpression;Update;(System.Collections.Generic.IEnumerable);Argument[0];ReturnValue.SyntheticField[System.Linq.Expressions.NewExpression._arguments];value;dfc-generated | | System.Linq.Expressions;NewExpression;Update;(System.Collections.Generic.IEnumerable);Argument[this].Property[System.Linq.Expressions.NewExpression.Constructor];ReturnValue.Property[System.Linq.Expressions.NewExpression.Constructor];value;dfc-generated | @@ -10214,112 +9313,62 @@ | System.Linq.Expressions;UnaryExpression;Update;(System.Linq.Expressions.Expression);Argument[this].Property[System.Linq.Expressions.UnaryExpression.Method];ReturnValue.Property[System.Linq.Expressions.UnaryExpression.Method];value;dfc-generated | | System.Linq.Expressions;UnaryExpression;Update;(System.Linq.Expressions.Expression);Argument[this];ReturnValue;value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[3].Parameter[0];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[2].ReturnValue;Argument[3].Parameter[0];taint;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[2].ReturnValue;Argument[3].Parameter[0];taint;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[3].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[3].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[4];Argument[2].Parameter[2];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[4];Argument[2].Parameter[2];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[4];Argument[3].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Func>,System.Threading.CancellationToken);Argument[4];Argument[3].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[1];Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[1];Argument[3].Parameter[0];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[2].ReturnValue;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[2].ReturnValue;Argument[3].Parameter[0];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[3].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[3].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Func,System.Threading.CancellationToken);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[2].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[2].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[3];Argument[2].Parameter[2];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func>,System.Threading.CancellationToken);Argument[3];Argument[2].Parameter[2];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[2].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[2].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,TAccumulate,System.Func,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[2];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[2];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];taint;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];taint;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[0];taint;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[0];taint;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TAccumulate,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TAccumulate,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TAccumulate,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TAccumulate,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[3].Parameter[0];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TAccumulate,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TAccumulate,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[0];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[3].Parameter[0];value;hq-generated | -| System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AggregateBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AllAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;AllAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AllAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AllAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;AllAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;AnyAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;AnyAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;AnyAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;AnyAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;AnyAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;Append;(System.Collections.Generic.IAsyncEnumerable,TSource);Argument[1];ReturnValue.Element;value;dfc-generated | | System.Linq;AsyncEnumerable;Cast;(System.Collections.Generic.IAsyncEnumerable);Argument[0];ReturnValue;value;dfc-generated | | System.Linq;AsyncEnumerable;Concat;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable);Argument[0];ReturnValue;value;dfc-generated | | System.Linq;AsyncEnumerable;Concat;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable);Argument[1];ReturnValue;value;dfc-generated | | System.Linq;AsyncEnumerable;CountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;CountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;CountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;CountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;CountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;CountBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;CountBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;DefaultIfEmpty;(System.Collections.Generic.IAsyncEnumerable,TSource);Argument[1];ReturnValue.Element;value;dfc-generated | @@ -10328,146 +9377,84 @@ | System.Linq;AsyncEnumerable;ExceptBy;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ExceptBy;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;FirstAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;FirstAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;FirstAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;FirstAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;FirstAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;FirstOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,TSource,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupBy;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;GroupJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;InfiniteSequence;(T,T);Argument[0];ReturnValue.Element;value;dfc-generated | | System.Linq;AsyncEnumerable;IntersectBy;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;IntersectBy;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Join;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LastAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;LastAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LastAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LastAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;LastAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;LastOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,TSource,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LeftJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LongCountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;LongCountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;LongCountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;LongCountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;LongCountAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | -| System.Linq;AsyncEnumerable;MaxByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;MaxByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;MaxByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;MaxByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;MaxByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;MinByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;MinByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;MinByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;MinByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;MinByAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Order;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IComparer);Argument[1];ReturnValue;taint;df-generated | | System.Linq;AsyncEnumerable;OrderBy;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -10477,117 +9464,65 @@ | System.Linq;AsyncEnumerable;OrderDescending;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IComparer);Argument[1];ReturnValue;taint;df-generated | | System.Linq;AsyncEnumerable;Prepend;(System.Collections.Generic.IAsyncEnumerable,TSource);Argument[1];ReturnValue.Element;value;dfc-generated | | System.Linq;AsyncEnumerable;Repeat;(TResult,System.Int32);Argument[0];ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;RightJoin;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Select;(System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue.Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue.Element;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue.Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1].ReturnValue.Element;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SelectMany;(System.Collections.Generic.IAsyncEnumerable,System.Func>>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Sequence;(T,T,T);Argument[0];ReturnValue.Element;value;dfc-generated | | System.Linq;AsyncEnumerable;SingleAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SingleAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SingleAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SingleAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;SingleAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Threading.CancellationToken);Argument[2];Argument[1].Parameter[1];value;hq-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[2];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;hq-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,TSource,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;SingleOrDefaultAsync;(System.Collections.Generic.IAsyncEnumerable,TSource,System.Threading.CancellationToken);Argument[1];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;dfc-generated | | System.Linq;AsyncEnumerable;Skip;(System.Collections.Generic.IAsyncEnumerable,System.Int32);Argument[0];ReturnValue;value;dfc-generated | | System.Linq;AsyncEnumerable;SkipLast;(System.Collections.Generic.IAsyncEnumerable,System.Int32);Argument[0];ReturnValue;value;dfc-generated | @@ -10600,51 +9535,31 @@ | System.Linq;AsyncEnumerable;TakeWhile;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;TakeWhile;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;dfc-generated | -| System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;hq-generated | -| System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;dfc-generated | -| System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;hq-generated | -| System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ThenBy;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;dfc-generated | -| System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;hq-generated | -| System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;dfc-generated | -| System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0];ReturnValue;value;hq-generated | -| System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ThenByDescending;(System.Linq.IOrderedAsyncEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToAsyncEnumerable;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[2].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[2].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;ToDictionaryAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[2].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[4];Argument[2].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;dfc-generated | -| System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[3];Argument[1].Parameter[1];value;hq-generated | | System.Linq;AsyncEnumerable;ToLookupAsync;(System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;UnionBy;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;UnionBy;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | @@ -10653,76 +9568,44 @@ | System.Linq;AsyncEnumerable;Where;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Where;(System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;dfc-generated | -| System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[2].ReturnValue;ReturnValue.Element;taint;hq-generated | -| System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;AsyncEnumerable;Zip;(System.Collections.Generic.IAsyncEnumerable,System.Collections.Generic.IAsyncEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[1];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func,System.Func);Argument[1];Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func,System.Func);Argument[2].ReturnValue;Argument[3].Parameter[0];value;manual | -| System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;manual | -| System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func);Argument[0].Element;Argument[2].Parameter[1];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func);Argument[1];Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func);Argument[2].ReturnValue;ReturnValue;value;manual | -| System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,TAccumulate,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[1];value;manual | | System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue;value;manual | -| System.Linq;Enumerable;Aggregate;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[3].Parameter[1];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[3].Parameter[1];value;hq-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;hq-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[0];value;hq-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[3].Parameter[1];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[3].Parameter[1];value;hq-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[3].Parameter[0];value;hq-generated | -| System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;AggregateBy;(System.Collections.Generic.IEnumerable,System.Func,TAccumulate,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;All;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;All;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Any;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Any;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Append;(System.Collections.Generic.IEnumerable,TSource);Argument[1];ReturnValue;taint;df-generated | | System.Linq;Enumerable;AsEnumerable;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Average;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Cast;(System.Collections.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Chunk;(System.Collections.Generic.IEnumerable,System.Int32);Argument[0].Element;ReturnValue.Element.Element;value;dfc-generated | | System.Linq;Enumerable;Concat;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | @@ -10730,10 +9613,7 @@ | System.Linq;Enumerable;Contains;(System.Collections.Generic.IEnumerable,TSource,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2];taint;df-generated | | System.Linq;Enumerable;Contains;(System.Collections.Generic.IEnumerable,TSource,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[2];taint;df-generated | | System.Linq;Enumerable;Count;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Count;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;CountBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;CountBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System.Linq;Enumerable;CountBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;CountBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;DefaultIfEmpty;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;DefaultIfEmpty;(System.Collections.Generic.IEnumerable,TSource);Argument[0].Element;ReturnValue.Element;value;manual | @@ -10741,16 +9621,10 @@ | System.Linq;Enumerable;Distinct;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Distinct;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;DistinctBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;ElementAt;(System.Collections.Generic.IEnumerable,System.Index);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;ElementAt;(System.Collections.Generic.IEnumerable,System.Int32);Argument[0].Element;ReturnValue;value;manual | @@ -10759,91 +9633,57 @@ | System.Linq;Enumerable;Except;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Except;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;ExceptBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;First;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Enumerable;First;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;First;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Enumerable;First;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;ReturnValue;value;dfc-generated | -| System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;ReturnValue;value;hq-generated | -| System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[2];ReturnValue;value;dfc-generated | -| System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[2];ReturnValue;value;hq-generated | | System.Linq;Enumerable;FirstOrDefault;(System.Collections.Generic.IEnumerable,TSource);Argument[1];ReturnValue;value;dfc-generated | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[2].ReturnValue;Argument[3].Parameter[1].Element;value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[3].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[1].Element;value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>);Argument[0];Argument[2].Parameter[1];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;GroupBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;GroupJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Index;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element.Field[System.ValueTuple`2.Item2];value;dfc-generated | | System.Linq;Enumerable;InfiniteSequence;(T,T);Argument[0];ReturnValue.Element;value;dfc-generated | | System.Linq;Enumerable;Intersect;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | @@ -10851,105 +9691,63 @@ | System.Linq;Enumerable;Intersect;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Intersect;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;IntersectBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Join;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Last;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Enumerable;Last;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;Last;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Enumerable;Last;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[2];ReturnValue;value;dfc-generated | -| System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[2];ReturnValue;value;hq-generated | | System.Linq;Enumerable;LastOrDefault;(System.Collections.Generic.IEnumerable,TSource);Argument[1];ReturnValue;value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[4].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[4].Parameter[0];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;hq-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;hq-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;LeftJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;LongCount;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;LongCount;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1];taint;df-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Max;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;MaxBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;MaxBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | @@ -10957,30 +9755,19 @@ | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable>);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1];taint;df-generated | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Min;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;MinBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;MinBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;OfType;(System.Collections.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | @@ -10988,16 +9775,12 @@ | System.Linq;Enumerable;Order;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;dfc-generated | | System.Linq;Enumerable;OrderBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;OrderBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;OrderBy;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;OrderBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;OrderBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;OrderBy;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;OrderByDescending;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;OrderByDescending;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;OrderByDescending;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;OrderByDescending;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;OrderByDescending;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;OrderByDescending;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;OrderDescending;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;dfc-generated | | System.Linq;Enumerable;OrderDescending;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;dfc-generated | | System.Linq;Enumerable;Prepend;(System.Collections.Generic.IEnumerable,TSource);Argument[1];ReturnValue;taint;df-generated | @@ -11005,57 +9788,35 @@ | System.Linq;Enumerable;Reverse;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Reverse;(TSource[]);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[4].Parameter[1];value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[4].Parameter[1];value;hq-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;hq-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;RightJoin;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;Select;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;Select;(System.Collections.Generic.IEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Select;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Select;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;Select;(System.Collections.Generic.IEnumerable,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Select;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;manual | -| System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;manual | -| System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;SelectMany;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sequence;(T,T,T);Argument[0];ReturnValue.Element;value;dfc-generated | | System.Linq;Enumerable;SequenceEqual;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[1].Element;Argument[0].Element;taint;df-generated | | System.Linq;Enumerable;SequenceEqual;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2];taint;df-generated | @@ -11065,70 +9826,46 @@ | System.Linq;Enumerable;Single;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Enumerable;Single;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;Single;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Enumerable;Single;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;ReturnValue;value;dfc-generated | -| System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[0].Element;ReturnValue;value;hq-generated | -| System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[2];ReturnValue;value;dfc-generated | -| System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,System.Func,TSource);Argument[2];ReturnValue;value;hq-generated | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,TSource);Argument[0].Element;ReturnValue;value;dfc-generated | | System.Linq;Enumerable;SingleOrDefault;(System.Collections.Generic.IEnumerable,TSource);Argument[1];ReturnValue;value;dfc-generated | | System.Linq;Enumerable;Skip;(System.Collections.Generic.IEnumerable,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;SkipLast;(System.Collections.Generic.IEnumerable,System.Int32);Argument[0];ReturnValue;value;df-generated | | System.Linq;Enumerable;SkipWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SkipWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;SkipWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;SkipWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;SkipWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;SkipWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Enumerable;Sum;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Take;(System.Collections.Generic.IEnumerable,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Take;(System.Collections.Generic.IEnumerable,System.Range);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;TakeLast;(System.Collections.Generic.IEnumerable,System.Int32);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;Enumerable;TakeWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;TakeWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;TakeWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;TakeWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;TakeWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;TakeWhile;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ThenBy;(System.Linq.IOrderedEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ThenBy;(System.Linq.IOrderedEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ThenBy;(System.Linq.IOrderedEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ThenBy;(System.Linq.IOrderedEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ThenBy;(System.Linq.IOrderedEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ThenBy;(System.Linq.IOrderedEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ThenByDescending;(System.Linq.IOrderedEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ThenByDescending;(System.Linq.IOrderedEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ThenByDescending;(System.Linq.IOrderedEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ThenByDescending;(System.Linq.IOrderedEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ThenByDescending;(System.Linq.IOrderedEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ThenByDescending;(System.Linq.IOrderedEnumerable,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToArray;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable>);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Key];ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable>);Argument[0].Element.Property[System.Collections.Generic.KeyValuePair`2.Value];ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | @@ -11142,71 +9879,46 @@ | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable>,System.Collections.Generic.IEqualityComparer);Argument[0].Element.Field[System.ValueTuple`2.Item2];ReturnValue.Element;value;dfc-generated | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToDictionary;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToList;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;ToLookup;(System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Union;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Union;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Union;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;Union;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[1].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[1].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[1].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[1].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[2].Parameter[0];value;hq-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;ReturnValue.Element;value;dfc-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;ReturnValue.Element;value;hq-generated | -| System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;Enumerable;UnionBy;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Enumerable;Where;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;Where;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Where;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Where;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Enumerable;Where;(System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Where;(System.Collections.Generic.IEnumerable,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[1].Element;Argument[2].Parameter[1];value;manual | | System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element.Field[System.ValueTuple`3.Item1];value;dfc-generated | | System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element.Field[System.ValueTuple`3.Item2];value;dfc-generated | | System.Linq;Enumerable;Zip;(System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEnumerable);Argument[2].Element;ReturnValue.Element.Field[System.ValueTuple`3.Item3];value;dfc-generated | @@ -11223,32 +9935,18 @@ | System.Linq;IOrderedEnumerable;CreateOrderedEnumerable;(System.Func,System.Collections.Generic.IComparer,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Linq;IQueryable;get_Provider;();Argument[this];ReturnValue;value;dfc-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1].ReturnValue;Argument[1].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[1];ReturnValue;value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[1];ReturnValue;value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[2].ReturnValue;Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[2].ReturnValue;Argument[2].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[2].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[2].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[1];Argument[2].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[1];Argument[2].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[1];Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[1];Argument[3].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[2].ReturnValue;Argument[3].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[2].ReturnValue;Argument[3].Parameter[0];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;Aggregate;(System.Collections.Immutable.ImmutableArray,TAccumulate,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;All;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Any;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -11268,12 +9966,8 @@ | System.Linq;ImmutableArrayExtensions;LastOrDefault;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Select;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;SelectMany;(System.Collections.Immutable.ImmutableArray,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;SequenceEqual;(System.Collections.Immutable.ImmutableArray,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2];taint;df-generated | | System.Linq;ImmutableArrayExtensions;SequenceEqual;(System.Collections.Immutable.ImmutableArray,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[2];taint;df-generated | @@ -11286,87 +9980,50 @@ | System.Linq;ImmutableArrayExtensions;SingleOrDefault;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToArray;(System.Collections.Immutable.ImmutableArray);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[0].Element;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[0].Element;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Key];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;dfc-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element.Property[System.Collections.Generic.KeyValuePair`2.Value];value;hq-generated | -| System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ImmutableArrayExtensions;ToDictionary;(System.Collections.Immutable.ImmutableArray,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ImmutableArrayExtensions;Where;(System.Collections.Immutable.ImmutableArray,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Lookup;ApplyResultSelector;(System.Func,TResult>);Argument[0].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System.Linq;Lookup;ApplyResultSelector;(System.Func,TResult>);Argument[0].ReturnValue;ReturnValue.Element;value;hq-generated | -| System.Linq;Lookup;ApplyResultSelector;(System.Func,TResult>);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Linq;Lookup;ApplyResultSelector;(System.Func,TResult>);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Linq;Lookup;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.Generic.IEnumerator`1.Current];value;manual | | System.Linq;Lookup;get_Item;(TKey);Argument[this];ReturnValue;taint;df-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[1];ReturnValue;value;dfc-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[1];ReturnValue;value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue;value;dfc-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue;value;hq-generated | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[1];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func);Argument[1];Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func);Argument[2].ReturnValue;Argument[3].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func);Argument[3].ReturnValue;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func);Argument[0].Element;Argument[2].Parameter[1];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func);Argument[1];Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func);Argument[2].ReturnValue;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,TAccumulate,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[1];value;manual | | System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func);Argument[1].ReturnValue;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;Aggregate;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;All;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;All;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Any;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Any;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;AsEnumerable;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;AsOrdered;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;ParallelEnumerable;AsOrdered;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;taint;df-generated | @@ -11376,32 +10033,21 @@ | System.Linq;ParallelEnumerable;AsSequential;(System.Linq.ParallelQuery);Argument[0];ReturnValue;value;dfc-generated | | System.Linq;ParallelEnumerable;AsUnordered;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Average;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Cast;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Concat;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Concat;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Concat;(System.Linq.ParallelQuery,System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Concat;(System.Linq.ParallelQuery,System.Linq.ParallelQuery);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Count;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Count;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;DefaultIfEmpty;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;DefaultIfEmpty;(System.Linq.ParallelQuery,TSource);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;DefaultIfEmpty;(System.Linq.ParallelQuery,TSource);Argument[1];ReturnValue.Element;value;manual | @@ -11416,85 +10062,55 @@ | System.Linq;ParallelEnumerable;First;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;value;manual | | System.Linq;ParallelEnumerable;First;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;First;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;First;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;FirstOrDefault;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;value;manual | | System.Linq;ParallelEnumerable;FirstOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;FirstOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;FirstOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ForAll;(System.Linq.ParallelQuery,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[2].ReturnValue;Argument[3].Parameter[1].Element;value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[3].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[1].Element;value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>);Argument[0];Argument[2].Parameter[1];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;GroupBy;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;GroupJoin;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,TResult>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Intersect;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Intersect;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Intersect;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | @@ -11507,217 +10123,136 @@ | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Join;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Last;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;value;manual | | System.Linq;ParallelEnumerable;Last;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Last;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;Last;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;LastOrDefault;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;value;manual | | System.Linq;ParallelEnumerable;LastOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;LastOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;LastOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;LongCount;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;LongCount;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Max;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Min;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;OfType;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;OrderBy;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;OrderBy;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;OrderBy;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;OrderBy;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;OrderBy;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;OrderBy;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;OrderByDescending;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;OrderByDescending;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;OrderByDescending;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;OrderByDescending;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;OrderByDescending;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;OrderByDescending;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Repeat;(TResult,System.Int32);Argument[0];ReturnValue;taint;df-generated | | System.Linq;ParallelEnumerable;Reverse;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Select;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Select;(System.Linq.ParallelQuery,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Select;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Select;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Select;(System.Linq.ParallelQuery,System.Func);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Select;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;manual | -| System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;SelectMany;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SequenceEqual;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2];taint;df-generated | | System.Linq;ParallelEnumerable;SequenceEqual;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[2];taint;df-generated | | System.Linq;ParallelEnumerable;Single;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;value;manual | | System.Linq;ParallelEnumerable;Single;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Single;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;Single;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SingleOrDefault;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue;value;manual | | System.Linq;ParallelEnumerable;SingleOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SingleOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;ParallelEnumerable;SingleOrDefault;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Skip;(System.Linq.ParallelQuery,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;SkipWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SkipWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;SkipWhile;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;SkipWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;SkipWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;SkipWhile;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;Sum;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Take;(System.Linq.ParallelQuery,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;TakeWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;TakeWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;TakeWhile;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;TakeWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;TakeWhile;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;TakeWhile;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ThenBy;(System.Linq.OrderedParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ThenBy;(System.Linq.OrderedParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ThenBy;(System.Linq.OrderedParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ThenBy;(System.Linq.OrderedParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ThenBy;(System.Linq.OrderedParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ThenBy;(System.Linq.OrderedParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ThenByDescending;(System.Linq.OrderedParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ThenByDescending;(System.Linq.OrderedParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ThenByDescending;(System.Linq.OrderedParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ThenByDescending;(System.Linq.OrderedParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ThenByDescending;(System.Linq.OrderedParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ThenByDescending;(System.Linq.OrderedParallelQuery,System.Func,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToArray;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToDictionary;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToList;(System.Linq.ParallelQuery);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | -| System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Func,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;ToLookup;(System.Linq.ParallelQuery,System.Func,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Union;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Union;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Union;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | @@ -11728,10 +10263,8 @@ | System.Linq;ParallelEnumerable;Union;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Collections.Generic.IEqualityComparer);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;ParallelEnumerable;Where;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Where;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Where;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Where;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Where;(System.Linq.ParallelQuery,System.Func);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Where;(System.Linq.ParallelQuery,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;WithCancellation;(System.Linq.ParallelQuery,System.Threading.CancellationToken);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;ParallelEnumerable;WithDegreeOfParallelism;(System.Linq.ParallelQuery,System.Int32);Argument[0].Element;ReturnValue;taint;df-generated | | System.Linq;ParallelEnumerable;WithExecutionMode;(System.Linq.ParallelQuery,System.Linq.ParallelExecutionMode);Argument[0].Element;ReturnValue;taint;df-generated | @@ -11739,60 +10272,41 @@ | System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func);Argument[1].Element;Argument[2].Parameter[1];value;manual | | System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func);Argument[1].Element;Argument[2].Parameter[1];value;manual | | System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;ParallelEnumerable;Zip;(System.Linq.ParallelQuery,System.Linq.ParallelQuery,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[2].Parameter[1];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[1];Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2].ReturnValue;Argument[3].Parameter[0];value;manual | -| System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[3].ReturnValue;ReturnValue;value;manual | -| System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[2].Parameter[1];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>);Argument[1];Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>);Argument[2].ReturnValue;ReturnValue;value;manual | -| System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,TAccumulate,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[1];value;manual | | System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1].ReturnValue;ReturnValue;value;manual | -| System.Linq;Queryable;Aggregate;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;AggregateBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;AggregateBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;AggregateBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;AggregateBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,TAccumulate,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;AggregateBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,TAccumulate,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;All;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;All;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Any;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Any;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;AsQueryable;(System.Collections.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;AsQueryable;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Average;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Cast;(System.Linq.IQueryable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Concat;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Concat;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Count;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Count;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;CountBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;DefaultIfEmpty;(System.Linq.IQueryable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;DefaultIfEmpty;(System.Linq.IQueryable,TSource);Argument[0].Element;ReturnValue.Element;value;manual | @@ -11810,66 +10324,42 @@ | System.Linq;Queryable;First;(System.Linq.IQueryable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Queryable;First;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;First;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Queryable;First;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;FirstOrDefault;(System.Linq.IQueryable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Queryable;FirstOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;FirstOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Queryable;FirstOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;FirstOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[2].ReturnValue;Argument[3].Parameter[1].Element;value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[3].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[2].ReturnValue;Argument[3].Parameter[1].Element;value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[3].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[1].ReturnValue;Argument[2].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;GroupBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;GroupJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression,TResult>>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Intersect;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Intersect;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Intersect;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | @@ -11880,26 +10370,18 @@ | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[0].Element;Argument[4].Parameter[0];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[3].Parameter[0];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[1].Element;Argument[4].Parameter[1];value;manual | -| System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;manual | -| System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[4].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Join;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Last;(System.Linq.IQueryable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Queryable;Last;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;Last;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Queryable;Last;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;LastOrDefault;(System.Linq.IQueryable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Queryable;LastOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;LastOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Queryable;LastOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;LastOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;LeftJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;LeftJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | @@ -11908,30 +10390,23 @@ | System.Linq;Queryable;LeftJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;LeftJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;LongCount;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;LongCount;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Max;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Max;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;MaxBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;MaxBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;MaxBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;Min;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Min;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;MinBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;MinBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;MinBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;OfType;(System.Linq.IQueryable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;OrderBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;OrderBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;OrderBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;OrderBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;OrderBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;OrderBy;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;OrderByDescending;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;OrderByDescending;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;OrderByDescending;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;OrderByDescending;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;OrderByDescending;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;OrderByDescending;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Reverse;(System.Linq.IQueryable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;RightJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;RightJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | @@ -11941,83 +10416,55 @@ | System.Linq;Queryable;RightJoin;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;Select;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;Select;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Select;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Select;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;Select;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Select;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;manual | -| System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[1].ReturnValue.Element;Argument[2].Parameter[1];value;manual | -| System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;SelectMany;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Single;(System.Linq.IQueryable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Queryable;Single;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;Single;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Queryable;Single;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SingleOrDefault;(System.Linq.IQueryable);Argument[0].Element;ReturnValue;value;manual | | System.Linq;Queryable;SingleOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SingleOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue;value;manual | -| System.Linq;Queryable;SingleOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SingleOrDefault;(System.Linq.IQueryable,System.Linq.Expressions.Expression>,TSource);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;Skip;(System.Linq.IQueryable,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;SkipWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SkipWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;SkipWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;SkipWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;SkipWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;SkipWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | -| System.Linq;Queryable;Sum;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Take;(System.Linq.IQueryable,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;TakeWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;TakeWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;TakeWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;TakeWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;TakeWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;TakeWhile;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;ThenBy;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;ThenBy;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;ThenBy;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;ThenBy;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;ThenBy;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;ThenBy;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;ThenByDescending;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;ThenByDescending;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;ThenByDescending;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;ThenByDescending;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;ThenByDescending;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;ThenByDescending;(System.Linq.IOrderedQueryable,System.Linq.Expressions.Expression>,System.Collections.Generic.IComparer);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Union;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Union;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable);Argument[1].Element;ReturnValue.Element;value;manual | | System.Linq;Queryable;Union;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Collections.Generic.IEqualityComparer);Argument[0].Element;ReturnValue.Element;value;manual | @@ -12026,14 +10473,11 @@ | System.Linq;Queryable;UnionBy;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>,System.Collections.Generic.IEqualityComparer);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Linq;Queryable;Where;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;Where;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Where;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Where;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System.Linq;Queryable;Where;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[0].Element;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Where;(System.Linq.IQueryable,System.Linq.Expressions.Expression>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Linq;Queryable;Zip;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>);Argument[0].Element;Argument[2].Parameter[0];value;manual | | System.Linq;Queryable;Zip;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>);Argument[1].Element;Argument[2].Parameter[1];value;manual | | System.Linq;Queryable;Zip;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>);Argument[2].ReturnValue;ReturnValue.Element;value;manual | -| System.Linq;Queryable;Zip;(System.Linq.IQueryable,System.Collections.Generic.IEnumerable,System.Linq.Expressions.Expression>);Argument[2];Argument[2].Parameter[delegate-self];value;manual | | System.Media;SoundPlayer;add_LoadCompleted;(System.ComponentModel.AsyncCompletedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Media;SoundPlayer;add_SoundLocationChanged;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Media;SoundPlayer;add_StreamChanged;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -12058,10 +10502,8 @@ | System.Net.Http.Headers;EntityTagHeaderValue;Clone;();Argument[this].Property[System.Net.Http.Headers.EntityTagHeaderValue.Tag];ReturnValue.Property[System.Net.Http.Headers.EntityTagHeaderValue.Tag];value;dfc-generated | | System.Net.Http.Headers;EntityTagHeaderValue;EntityTagHeaderValue;(System.String,System.Boolean);Argument[0];Argument[this].Property[System.Net.Http.Headers.EntityTagHeaderValue.Tag];value;dfc-generated | | System.Net.Http.Headers;EntityTagHeaderValue;ToString;();Argument[this].Property[System.Net.Http.Headers.EntityTagHeaderValue.Tag];ReturnValue;value;dfc-generated | -| System.Net.Http.Headers;HeaderStringValues+Enumerator;get_Current;();Argument[this].Property[System.Net.Http.Headers.HeaderStringValues+Enumerator.Current];ReturnValue;value;df-generated | | System.Net.Http.Headers;HeaderStringValues+Enumerator;get_Current;();Argument[this].Property[System.Net.Http.Headers.HeaderStringValues+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Net.Http.Headers;HeaderStringValues+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Net.Http.Headers;HeaderStringValues+Enumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Net.Http.Headers;HeaderStringValues;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Http.Headers;HeaderStringValues;ToString;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Http.Headers;HttpHeaderValueCollection;ToString;();Argument[this];ReturnValue;taint;df-generated | @@ -12168,9 +10610,7 @@ | System.Net.Http.Metrics;HttpMetricsEnrichmentContext;get_Response;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Http;ByteArrayContent;ByteArrayContent;(System.Byte[]);Argument[0];Argument[this].SyntheticField[System.Net.Http.ByteArrayContent._content];value;dfc-generated | | System.Net.Http;ByteArrayContent;ByteArrayContent;(System.Byte[],System.Int32,System.Int32);Argument[0];Argument[this].SyntheticField[System.Net.Http.ByteArrayContent._content];value;dfc-generated | -| System.Net.Http;ByteArrayContent;CreateContentReadStream;(System.Threading.CancellationToken);Argument[this].SyntheticField[System.Net.Http.ByteArrayContent._content].Element;ReturnValue;taint;df-generated | | System.Net.Http;ByteArrayContent;CreateContentReadStream;(System.Threading.CancellationToken);Argument[this].SyntheticField[System.Net.Http.ByteArrayContent._content].Element;ReturnValue;taint;dfc-generated | -| System.Net.Http;ByteArrayContent;CreateContentReadStreamAsync;();Argument[this].SyntheticField[System.Net.Http.ByteArrayContent._content].Element;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;df-generated | | System.Net.Http;ByteArrayContent;CreateContentReadStreamAsync;();Argument[this].SyntheticField[System.Net.Http.ByteArrayContent._content].Element;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | | System.Net.Http;DelegatingHandler;DelegatingHandler;(System.Net.Http.HttpMessageHandler);Argument[0];Argument[this];taint;df-generated | | System.Net.Http;HeaderEncodingSelector;BeginInvoke;(System.String,TContext,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | @@ -12205,7 +10645,6 @@ | System.Net.Http;HttpContent;SerializeToStreamAsync;(System.IO.Stream,System.Net.TransportContext,System.Threading.CancellationToken);Argument[this];Argument[0];taint;df-generated | | System.Net.Http;HttpContent;SerializeToStreamAsync;(System.IO.Stream,System.Net.TransportContext,System.Threading.CancellationToken);Argument[this];ReturnValue;taint;df-generated | | System.Net.Http;HttpIOException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;taint;dfc-generated | -| System.Net.Http;HttpIOException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Net.Http;HttpMessageInvoker;HttpMessageInvoker;(System.Net.Http.HttpMessageHandler,System.Boolean);Argument[0];Argument[this];taint;df-generated | | System.Net.Http;HttpMessageInvoker;Send;(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken);Argument[this];Argument[0];taint;df-generated | | System.Net.Http;HttpMessageInvoker;SendAsync;(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken);Argument[this];Argument[0];taint;df-generated | @@ -12241,7 +10680,6 @@ | System.Net.Http;SocketsHttpPlaintextStreamFilterContext;get_InitialRequestMessage;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Http;SocketsHttpPlaintextStreamFilterContext;get_NegotiatedHttpVersion;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Http;SocketsHttpPlaintextStreamFilterContext;get_PlaintextStream;();Argument[this];ReturnValue;taint;df-generated | -| System.Net.Http;StreamContent;SerializeToStream;(System.IO.Stream,System.Net.TransportContext,System.Threading.CancellationToken);Argument[this].SyntheticField[System.Net.Http.StreamContent._content];Argument[0];taint;df-generated | | System.Net.Http;StreamContent;SerializeToStream;(System.IO.Stream,System.Net.TransportContext,System.Threading.CancellationToken);Argument[this].SyntheticField[System.Net.Http.StreamContent._content];Argument[0];taint;dfc-generated | | System.Net.Http;StreamContent;StreamContent;(System.IO.Stream);Argument[0];Argument[this].SyntheticField[System.Net.Http.StreamContent._content];value;dfc-generated | | System.Net.Http;StreamContent;StreamContent;(System.IO.Stream,System.Int32);Argument[0];Argument[this].SyntheticField[System.Net.Http.StreamContent._content];value;dfc-generated | @@ -12249,8 +10687,6 @@ | System.Net.Mail;AlternateView;CreateAlternateViewFromString;(System.String,System.Net.Mime.ContentType);Argument[0];ReturnValue;taint;df-generated | | System.Net.Mail;AlternateView;CreateAlternateViewFromString;(System.String,System.Net.Mime.ContentType);Argument[1];ReturnValue;taint;df-generated | | System.Net.Mail;AlternateView;CreateAlternateViewFromString;(System.String,System.Text.Encoding,System.String);Argument[0];ReturnValue;taint;df-generated | -| System.Net.Mail;AlternateViewCollection;InsertItem;(System.Int32,System.Net.Mail.AlternateView);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | -| System.Net.Mail;AlternateViewCollection;SetItem;(System.Int32,System.Net.Mail.AlternateView);Argument[1];Argument[this];taint;df-generated | | System.Net.Mail;Attachment;Attachment;(System.IO.Stream,System.Net.Mime.ContentType);Argument[1];Argument[this];taint;df-generated | | System.Net.Mail;Attachment;Attachment;(System.IO.Stream,System.String);Argument[1];Argument[this];taint;df-generated | | System.Net.Mail;Attachment;Attachment;(System.IO.Stream,System.String,System.String);Argument[1];Argument[this];taint;df-generated | @@ -12272,14 +10708,10 @@ | System.Net.Mail;AttachmentBase;AttachmentBase;(System.String,System.Net.Mime.ContentType);Argument[0];Argument[this].SyntheticField[System.Net.Mail.AttachmentBase._part].SyntheticField[System.Net.Mime.MimePart._stream];taint;dfc-generated | | System.Net.Mail;AttachmentBase;AttachmentBase;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Net.Mail.AttachmentBase._part].SyntheticField[System.Net.Mime.MimePart._stream];taint;dfc-generated | | System.Net.Mail;AttachmentBase;get_ContentStream;();Argument[this].SyntheticField[System.Net.Mail.AttachmentBase._part].SyntheticField[System.Net.Mime.MimePart._stream];ReturnValue;value;dfc-generated | -| System.Net.Mail;AttachmentCollection;InsertItem;(System.Int32,System.Net.Mail.Attachment);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | -| System.Net.Mail;AttachmentCollection;SetItem;(System.Int32,System.Net.Mail.Attachment);Argument[1];Argument[this];taint;df-generated | | System.Net.Mail;LinkedResource;CreateLinkedResourceFromString;(System.String);Argument[0];ReturnValue;taint;df-generated | | System.Net.Mail;LinkedResource;CreateLinkedResourceFromString;(System.String,System.Net.Mime.ContentType);Argument[0];ReturnValue;taint;df-generated | | System.Net.Mail;LinkedResource;CreateLinkedResourceFromString;(System.String,System.Net.Mime.ContentType);Argument[1];ReturnValue;taint;df-generated | | System.Net.Mail;LinkedResource;CreateLinkedResourceFromString;(System.String,System.Text.Encoding,System.String);Argument[0];ReturnValue;taint;df-generated | -| System.Net.Mail;LinkedResourceCollection;InsertItem;(System.Int32,System.Net.Mail.LinkedResource);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | -| System.Net.Mail;LinkedResourceCollection;SetItem;(System.Int32,System.Net.Mail.LinkedResource);Argument[1];Argument[this];taint;df-generated | | System.Net.Mail;MailAddress;MailAddress;(System.String,System.String,System.Text.Encoding);Argument[0];Argument[this].SyntheticField[System.Net.Mail.MailAddress._displayName];taint;dfc-generated | | System.Net.Mail;MailAddress;MailAddress;(System.String,System.String,System.Text.Encoding);Argument[0];Argument[this].SyntheticField[System.Net.Mail.MailAddress._host];taint;dfc-generated | | System.Net.Mail;MailAddress;MailAddress;(System.String,System.String,System.Text.Encoding);Argument[0];Argument[this].SyntheticField[System.Net.Mail.MailAddress._userName];taint;dfc-generated | @@ -12302,8 +10734,6 @@ | System.Net.Mail;MailAddress;get_Host;();Argument[this].SyntheticField[System.Net.Mail.MailAddress._host];ReturnValue;value;dfc-generated | | System.Net.Mail;MailAddress;get_User;();Argument[this].SyntheticField[System.Net.Mail.MailAddress._userName];ReturnValue;value;dfc-generated | | System.Net.Mail;MailAddressCollection;Add;(System.String);Argument[0];Argument[this].Element;value;manual | -| System.Net.Mail;MailAddressCollection;InsertItem;(System.Int32,System.Net.Mail.MailAddress);Argument[1];Argument[this].SyntheticField[System.Collections.ObjectModel.Collection`1.items].Element;value;dfc-generated | -| System.Net.Mail;MailAddressCollection;SetItem;(System.Int32,System.Net.Mail.MailAddress);Argument[1];Argument[this];taint;df-generated | | System.Net.Mail;MailAddressCollection;ToString;();Argument[this].Element;ReturnValue;taint;dfc-generated | | System.Net.Mail;MailMessage;MailMessage;(System.Net.Mail.MailAddress,System.Net.Mail.MailAddress);Argument[0];Argument[this];taint;df-generated | | System.Net.Mail;MailMessage;MailMessage;(System.Net.Mail.MailAddress,System.Net.Mail.MailAddress);Argument[1];Argument[this];taint;df-generated | @@ -12325,7 +10755,6 @@ | System.Net.Mail;SmtpFailedRecipientException;SmtpFailedRecipientException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientException._failedRecipient];taint;dfc-generated | | System.Net.Mail;SmtpFailedRecipientException;SmtpFailedRecipientException;(System.String,System.String,System.Exception);Argument[1];Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientException._failedRecipient];value;dfc-generated | | System.Net.Mail;SmtpFailedRecipientException;get_FailedRecipient;();Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientException._failedRecipient];ReturnValue;value;dfc-generated | -| System.Net.Mail;SmtpFailedRecipientsException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientException._failedRecipient];Argument[0];taint;dfc-generated | | System.Net.Mail;SmtpFailedRecipientsException;GetObjectData;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientsException._innerExceptions];Argument[0];taint;dfc-generated | | System.Net.Mail;SmtpFailedRecipientsException;SmtpFailedRecipientsException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientsException._innerExceptions];taint;dfc-generated | | System.Net.Mail;SmtpFailedRecipientsException;SmtpFailedRecipientsException;(System.String,System.Exception);Argument[1];Argument[this].SyntheticField[System.Net.Mail.SmtpFailedRecipientsException._innerExceptions].Element;value;dfc-generated | @@ -12427,16 +10856,10 @@ | System.Net.Security;SslStream;AuthenticateAsServerAsync;(System.Net.Security.ServerOptionsSelectionCallback,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Net.Security;SslStream;AuthenticateAsServerAsync;(System.Net.Security.SslServerAuthenticationOptions,System.Threading.CancellationToken);Argument[0];Argument[this];taint;df-generated | | System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.AsyncCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Net.Security.SslStream._sslAuthenticationOptions].SyntheticField[System.Net.Security.SslAuthenticationOptions.TargetHost];value;dfc-generated | -| System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.AsyncCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Net.Security.SslStream._sslAuthenticationOptions].SyntheticField[System.Net.Security.SslAuthenticationOptions.TargetHost];value;hq-generated | -| System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean,System.AsyncCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Net.Security.SslStream._sslAuthenticationOptions].SyntheticField[System.Net.Security.SslAuthenticationOptions.TargetHost];value;dfc-generated | -| System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean,System.AsyncCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Net.Security.SslStream._sslAuthenticationOptions].SyntheticField[System.Net.Security.SslAuthenticationOptions.TargetHost];value;hq-generated | -| System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Security.Authentication.SslProtocols,System.Boolean,System.AsyncCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Net.Security.SslStream._sslAuthenticationOptions].SyntheticField[System.Net.Security.SslAuthenticationOptions.TargetHost];value;dfc-generated | -| System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Security.Authentication.SslProtocols,System.Boolean,System.AsyncCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Net.Security.SslStream._sslAuthenticationOptions].SyntheticField[System.Net.Security.SslAuthenticationOptions.TargetHost];value;hq-generated | -| System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Security.Authentication.SslProtocols,System.Boolean,System.AsyncCallback,System.Object);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Net.Security;SslStream;BeginAuthenticateAsClient;(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Security.Authentication.SslProtocols,System.Boolean,System.AsyncCallback,System.Object);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Net.Security;SslStream;BeginAuthenticateAsServer;(System.Security.Cryptography.X509Certificates.X509Certificate,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Net.Security;SslStream;BeginAuthenticateAsServer;(System.Security.Cryptography.X509Certificates.X509Certificate,System.Boolean,System.Boolean,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | @@ -12542,7 +10965,6 @@ | System.Net.Sockets;SocketAsyncEventArgs;get_ReceiveMessageFromPacketInfo;();Argument[this];ReturnValue;taint;df-generated | | System.Net.Sockets;SocketAsyncEventArgs;remove_Completed;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Net.Sockets;SocketException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Net.Sockets;SocketException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Net.Sockets;SocketTaskExtensions;ConnectAsync;(System.Net.Sockets.Socket,System.Net.EndPoint);Argument[1];Argument[0];taint;df-generated | | System.Net.Sockets;SocketTaskExtensions;ConnectAsync;(System.Net.Sockets.Socket,System.Net.EndPoint,System.Threading.CancellationToken);Argument[1];Argument[0];taint;df-generated | | System.Net.Sockets;SocketTaskExtensions;SendToAsync;(System.Net.Sockets.Socket,System.ArraySegment,System.Net.Sockets.SocketFlags,System.Net.EndPoint);Argument[3];Argument[0];taint;df-generated | @@ -12633,10 +11055,8 @@ | System.Net;FtpWebResponse;get_WelcomeMessage;();Argument[this];ReturnValue;taint;df-generated | | System.Net;HttpContinueDelegate;BeginInvoke;(System.Int32,System.Net.WebHeaderCollection,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Net;HttpListener+ExtendedProtectionSelector;BeginInvoke;(System.Net.HttpListenerRequest,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Net;HttpListener;BeginGetContext;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Net;HttpListener;BeginGetContext;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Net;HttpListener;BeginGetContext;(System.AsyncCallback,System.Object);Argument[1];ReturnValue.SyntheticField[System.Net.ListenerAsyncResult._state];value;dfc-generated | -| System.Net;HttpListener;BeginGetContext;(System.AsyncCallback,System.Object);Argument[1];ReturnValue.SyntheticField[System.Net.ListenerAsyncResult._state];value;hq-generated | | System.Net;HttpListener;EndGetContext;(System.IAsyncResult);Argument[0];ReturnValue;taint;df-generated | | System.Net;HttpListener;GetContext;();Argument[this];ReturnValue;taint;df-generated | | System.Net;HttpListener;get_DefaultServiceNames;();Argument[this];ReturnValue;taint;df-generated | @@ -12672,10 +11092,8 @@ | System.Net;HttpListenerResponse;Close;(System.Byte[],System.Boolean);Argument[0].Element;Argument[this];taint;df-generated | | System.Net;HttpListenerResponse;CopyFrom;(System.Net.HttpListenerResponse);Argument[0];Argument[this];taint;df-generated | | System.Net;HttpListenerResponse;get_OutputStream;();Argument[this];ReturnValue;taint;df-generated | -| System.Net;HttpWebRequest;EndGetRequestStream;(System.IAsyncResult);Argument[0].Property[System.Threading.Tasks.Task`1.Result];ReturnValue;value;df-generated | | System.Net;HttpWebRequest;EndGetRequestStream;(System.IAsyncResult);Argument[0].Property[System.Threading.Tasks.Task`1.Result];ReturnValue;value;dfc-generated | | System.Net;HttpWebRequest;EndGetRequestStream;(System.IAsyncResult,System.Net.TransportContext);Argument[0].Property[System.Threading.Tasks.Task`1.Result];ReturnValue;value;dfc-generated | -| System.Net;HttpWebRequest;EndGetResponse;(System.IAsyncResult);Argument[0].Property[System.Threading.Tasks.Task`1.Result];ReturnValue;value;df-generated | | System.Net;HttpWebRequest;EndGetResponse;(System.IAsyncResult);Argument[0].Property[System.Threading.Tasks.Task`1.Result];ReturnValue;value;dfc-generated | | System.Net;HttpWebRequest;GetRequestStream;(System.Net.TransportContext);Argument[this];ReturnValue;taint;df-generated | | System.Net;HttpWebRequest;get_Address;();Argument[this].SyntheticField[System.Net.HttpWebRequest._requestUri];ReturnValue;value;dfc-generated | @@ -12925,11 +11343,8 @@ | System.Reflection.Emit;DynamicMethod;DynamicMethod;(System.String,System.Type,System.Type[],System.Reflection.Module,System.Boolean);Argument[3];Argument[this].SyntheticField[System.Reflection.Emit.DynamicMethod._module];value;dfc-generated | | System.Reflection.Emit;DynamicMethod;DynamicMethod;(System.String,System.Type,System.Type[],System.Type);Argument[0];Argument[this].SyntheticField[System.Reflection.Emit.DynamicMethod._name];value;dfc-generated | | System.Reflection.Emit;DynamicMethod;DynamicMethod;(System.String,System.Type,System.Type[],System.Type,System.Boolean);Argument[0];Argument[this].SyntheticField[System.Reflection.Emit.DynamicMethod._name];value;dfc-generated | -| System.Reflection.Emit;DynamicMethod;get_Module;();Argument[this].SyntheticField[System.Reflection.Emit.DynamicMethod._module];ReturnValue;value;df-generated | | System.Reflection.Emit;DynamicMethod;get_Module;();Argument[this].SyntheticField[System.Reflection.Emit.DynamicMethod._module];ReturnValue;value;dfc-generated | -| System.Reflection.Emit;DynamicMethod;get_Name;();Argument[this].SyntheticField[System.Reflection.Emit.DynamicMethod._name];ReturnValue;value;df-generated | | System.Reflection.Emit;DynamicMethod;get_Name;();Argument[this].SyntheticField[System.Reflection.Emit.DynamicMethod._name];ReturnValue;value;dfc-generated | -| System.Reflection.Emit;DynamicMethod;get_ReturnParameter;();Argument[this];ReturnValue.Field[System.Reflection.ParameterInfo.MemberImpl];value;df-generated | | System.Reflection.Emit;DynamicMethod;get_ReturnParameter;();Argument[this];ReturnValue.Field[System.Reflection.ParameterInfo.MemberImpl];value;dfc-generated | | System.Reflection.Emit;EnumBuilder;get_UnderlyingField;();Argument[this].Property[System.Reflection.Emit.EnumBuilder.UnderlyingFieldCore];ReturnValue;value;dfc-generated | | System.Reflection.Emit;EnumBuilder;get_UnderlyingFieldCore;();Argument[this];ReturnValue;taint;df-generated | @@ -13237,10 +11652,8 @@ | System.Reflection.Metadata.Ecma335;PermissionSetEncoder;AddPermission;(System.String,System.Collections.Immutable.ImmutableArray);Argument[this];ReturnValue;value;dfc-generated | | System.Reflection.Metadata.Ecma335;PermissionSetEncoder;AddPermission;(System.String,System.Reflection.Metadata.BlobBuilder);Argument[this];ReturnValue;value;dfc-generated | | System.Reflection.Metadata.Ecma335;PermissionSetEncoder;PermissionSetEncoder;(System.Reflection.Metadata.BlobBuilder);Argument[0];Argument[this].Property[System.Reflection.Metadata.Ecma335.PermissionSetEncoder.Builder];value;dfc-generated | -| System.Reflection.Metadata.Ecma335;PortablePdbBuilder;PortablePdbBuilder;(System.Reflection.Metadata.Ecma335.MetadataBuilder,System.Collections.Immutable.ImmutableArray,System.Reflection.Metadata.MethodDefinitionHandle,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Reflection.Metadata.Ecma335;PortablePdbBuilder;PortablePdbBuilder;(System.Reflection.Metadata.Ecma335.MetadataBuilder,System.Collections.Immutable.ImmutableArray,System.Reflection.Metadata.MethodDefinitionHandle,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Reflection.Metadata.Ecma335;PortablePdbBuilder;PortablePdbBuilder;(System.Reflection.Metadata.Ecma335.MetadataBuilder,System.Collections.Immutable.ImmutableArray,System.Reflection.Metadata.MethodDefinitionHandle,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[3];Argument[this].Property[System.Reflection.Metadata.Ecma335.PortablePdbBuilder.IdProvider];value;dfc-generated | -| System.Reflection.Metadata.Ecma335;PortablePdbBuilder;PortablePdbBuilder;(System.Reflection.Metadata.Ecma335.MetadataBuilder,System.Collections.Immutable.ImmutableArray,System.Reflection.Metadata.MethodDefinitionHandle,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[3];Argument[this].Property[System.Reflection.Metadata.Ecma335.PortablePdbBuilder.IdProvider];value;hq-generated | | System.Reflection.Metadata.Ecma335;PortablePdbBuilder;Serialize;(System.Reflection.Metadata.BlobBuilder);Argument[0];Argument[this];taint;df-generated | | System.Reflection.Metadata.Ecma335;PortablePdbBuilder;Serialize;(System.Reflection.Metadata.BlobBuilder);Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata.Ecma335;ReturnTypeEncoder;ReturnTypeEncoder;(System.Reflection.Metadata.BlobBuilder);Argument[0];Argument[this].Property[System.Reflection.Metadata.Ecma335.ReturnTypeEncoder.Builder];value;dfc-generated | @@ -13250,12 +11663,9 @@ | System.Reflection.Metadata.Ecma335;SignatureDecoder;SignatureDecoder;(System.Reflection.Metadata.ISignatureTypeProvider,System.Reflection.Metadata.MetadataReader,TGenericContext);Argument[0];Argument[this];taint;df-generated | | System.Reflection.Metadata.Ecma335;SignatureDecoder;SignatureDecoder;(System.Reflection.Metadata.ISignatureTypeProvider,System.Reflection.Metadata.MetadataReader,TGenericContext);Argument[1];Argument[this];taint;df-generated | | System.Reflection.Metadata.Ecma335;SignatureDecoder;SignatureDecoder;(System.Reflection.Metadata.ISignatureTypeProvider,System.Reflection.Metadata.MetadataReader,TGenericContext);Argument[2];Argument[this];taint;df-generated | -| System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Action,System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Action,System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Action,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Action,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Action,System.Action);Argument[this];Argument[0].Parameter[0];value;dfc-generated | -| System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Action,System.Action);Argument[this];Argument[0].Parameter[0];value;hq-generated | | System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Array;(System.Reflection.Metadata.Ecma335.SignatureTypeEncoder,System.Reflection.Metadata.Ecma335.ArrayShapeEncoder);Argument[this];Argument[0];value;dfc-generated | | System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;Pointer;();Argument[this];ReturnValue;value;dfc-generated | | System.Reflection.Metadata.Ecma335;SignatureTypeEncoder;SZArray;();Argument[this];ReturnValue;value;dfc-generated | @@ -13264,7 +11674,6 @@ | System.Reflection.Metadata;AssemblyDefinition;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;AssemblyDefinition;GetDeclarativeSecurityAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;AssemblyFile;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;AssemblyFileHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.AssemblyFileHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;AssemblyFileHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.AssemblyFileHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;AssemblyNameInfo;AssemblyNameInfo;(System.String,System.Version,System.String,System.Reflection.AssemblyNameFlags,System.Collections.Immutable.ImmutableArray);Argument[0];Argument[this].Property[System.Reflection.Metadata.AssemblyNameInfo.Name];value;dfc-generated | | System.Reflection.Metadata;AssemblyNameInfo;AssemblyNameInfo;(System.String,System.Version,System.String,System.Reflection.AssemblyNameFlags,System.Collections.Immutable.ImmutableArray);Argument[1];Argument[this].Property[System.Reflection.Metadata.AssemblyNameInfo.Version];value;dfc-generated | @@ -13272,11 +11681,9 @@ | System.Reflection.Metadata;AssemblyNameInfo;AssemblyNameInfo;(System.String,System.Version,System.String,System.Reflection.AssemblyNameFlags,System.Collections.Immutable.ImmutableArray);Argument[4];Argument[this].Property[System.Reflection.Metadata.AssemblyNameInfo.PublicKeyOrToken];value;dfc-generated | | System.Reflection.Metadata;AssemblyNameInfo;get_FullName;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;AssemblyReference;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;AssemblyReferenceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.AssemblyReferenceHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;AssemblyReferenceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.AssemblyReferenceHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;AssemblyReferenceHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;BlobBuilder+Blobs;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;BlobBuilder+Blobs;get_Current;();Argument[this].Property[System.Reflection.Metadata.BlobBuilder+Blobs.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;BlobBuilder+Blobs;get_Current;();Argument[this].Property[System.Reflection.Metadata.BlobBuilder+Blobs.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;BlobBuilder;GetBlobs;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;BlobBuilder;LinkPrefix;(System.Reflection.Metadata.BlobBuilder);Argument[0];Argument[this];taint;df-generated | @@ -13296,7 +11703,6 @@ | System.Reflection.Metadata;BlobWriter;BlobWriter;(System.Byte[],System.Int32,System.Int32);Argument[0].Element;Argument[this];taint;df-generated | | System.Reflection.Metadata;BlobWriter;WriteBytes;(System.IO.Stream,System.Int32);Argument[0];Argument[this];taint;df-generated | | System.Reflection.Metadata;BlobWriter;get_Blob;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;CustomAttributeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.CustomAttributeHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;CustomAttributeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.CustomAttributeHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;CustomAttributeHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;CustomAttributeNamedArgument;CustomAttributeNamedArgument;(System.String,System.Reflection.Metadata.CustomAttributeNamedArgumentKind,TType,System.Object);Argument[0];Argument[this].Property[System.Reflection.Metadata.CustomAttributeNamedArgument`1.Name];value;dfc-generated | @@ -13306,61 +11712,45 @@ | System.Reflection.Metadata;CustomAttributeTypedArgument;CustomAttributeTypedArgument;(TType,System.Object);Argument[1];Argument[this].Property[System.Reflection.Metadata.CustomAttributeTypedArgument`1.Value];value;dfc-generated | | System.Reflection.Metadata;CustomAttributeValue;CustomAttributeValue;(System.Collections.Immutable.ImmutableArray>,System.Collections.Immutable.ImmutableArray>);Argument[0];Argument[this].Property[System.Reflection.Metadata.CustomAttributeValue`1.FixedArguments];value;dfc-generated | | System.Reflection.Metadata;CustomAttributeValue;CustomAttributeValue;(System.Collections.Immutable.ImmutableArray>,System.Collections.Immutable.ImmutableArray>);Argument[1];Argument[this].Property[System.Reflection.Metadata.CustomAttributeValue`1.NamedArguments];value;dfc-generated | -| System.Reflection.Metadata;CustomDebugInformationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.CustomDebugInformationHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;CustomDebugInformationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.CustomDebugInformationHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;CustomDebugInformationHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;DeclarativeSecurityAttributeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.DeclarativeSecurityAttributeHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;DeclarativeSecurityAttributeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.DeclarativeSecurityAttributeHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;DeclarativeSecurityAttributeHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;DocumentHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.DocumentHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;DocumentHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.DocumentHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;DocumentHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;EventAccessors;get_Others;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;EventDefinition;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;EventDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.EventDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;EventDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.EventDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;EventDefinitionHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;ExportedType;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;ExportedTypeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ExportedTypeHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;ExportedTypeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ExportedTypeHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;FieldDefinition;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;FieldDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.FieldDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;FieldDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.FieldDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;FieldDefinitionHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;GenericParameter;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;GenericParameterConstraint;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;GenericParameterConstraintHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.GenericParameterConstraintHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;GenericParameterConstraintHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.GenericParameterConstraintHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;GenericParameterHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.GenericParameterHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;GenericParameterHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.GenericParameterHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;ImportDefinitionCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;ImportDefinitionCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;ImportScopeCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ImportScopeCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;ImportScopeCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ImportScopeCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;ImportScopeCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;InterfaceImplementation;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;InterfaceImplementationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.InterfaceImplementationHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;InterfaceImplementationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.InterfaceImplementationHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;InterfaceImplementationHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;LocalConstantHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalConstantHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;LocalConstantHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalConstantHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;LocalConstantHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;LocalScope;GetChildren;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;LocalScope;GetLocalConstants;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;LocalScope;GetLocalVariables;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;LocalScopeHandleCollection+ChildrenEnumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalScopeHandleCollection+ChildrenEnumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;LocalScopeHandleCollection+ChildrenEnumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalScopeHandleCollection+ChildrenEnumerator.Current];ReturnValue;value;dfc-generated | -| System.Reflection.Metadata;LocalScopeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalScopeHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;LocalScopeHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalScopeHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;LocalScopeHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;LocalVariableHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalVariableHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;LocalVariableHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.LocalVariableHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;LocalVariableHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;ManifestResource;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;ManifestResourceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ManifestResourceHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;ManifestResourceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ManifestResourceHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;MemberReference;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;MemberReferenceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MemberReferenceHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;MemberReferenceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MemberReferenceHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;MetadataReader;GetAssemblyDefinition;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MetadataReader;GetAssemblyFile;(System.Reflection.Metadata.AssemblyFileHandle);Argument[this];ReturnValue;taint;df-generated | @@ -13432,17 +11822,14 @@ | System.Reflection.Metadata;MethodBodyBlock;get_ExceptionRegions;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodBodyBlock;get_LocalSignature;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodDebugInformation;GetSequencePoints;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;MethodDebugInformationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MethodDebugInformationHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;MethodDebugInformationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MethodDebugInformationHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;MethodDebugInformationHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodDefinition;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodDefinition;GetDeclarativeSecurityAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodDefinition;GetParameters;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;MethodDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MethodDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;MethodDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MethodDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;MethodDefinitionHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodImplementation;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;MethodImplementationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MethodImplementationHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;MethodImplementationHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.MethodImplementationHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;MethodImport;get_Module;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;MethodImport;get_Name;();Argument[this];ReturnValue;taint;df-generated | @@ -13461,12 +11848,10 @@ | System.Reflection.Metadata;PEReaderExtensions;GetMetadataReader;(System.Reflection.PortableExecutable.PEReader,System.Reflection.Metadata.MetadataReaderOptions);Argument[0];ReturnValue;taint;df-generated | | System.Reflection.Metadata;PEReaderExtensions;GetMetadataReader;(System.Reflection.PortableExecutable.PEReader,System.Reflection.Metadata.MetadataReaderOptions,System.Reflection.Metadata.MetadataStringDecoder);Argument[2];ReturnValue.Property[System.Reflection.Metadata.MetadataReader.UTF8Decoder];value;dfc-generated | | System.Reflection.Metadata;Parameter;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;ParameterHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ParameterHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;ParameterHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.ParameterHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;ParameterHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;PropertyAccessors;get_Others;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;PropertyDefinition;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;PropertyDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.PropertyDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;PropertyDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.PropertyDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;PropertyDefinitionHandleCollection;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;SequencePointCollection+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | @@ -13479,7 +11864,6 @@ | System.Reflection.Metadata;TypeDefinition;GetInterfaceImplementations;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;TypeDefinition;GetMethods;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;TypeDefinition;GetProperties;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;TypeDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.TypeDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;TypeDefinitionHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.TypeDefinitionHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;TypeName;GetElementType;();Argument[this].SyntheticField[System.Reflection.Metadata.TypeName._elementOrGenericType];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;TypeName;GetGenericArguments;();Argument[this].SyntheticField[System.Reflection.Metadata.TypeName._genericArguments];ReturnValue;value;dfc-generated | @@ -13504,12 +11888,9 @@ | System.Reflection.Metadata;TypeName;get_FullName;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;TypeName;get_Name;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.Metadata;TypeName;get_Namespace;();Argument[this];ReturnValue;taint;df-generated | -| System.Reflection.Metadata;TypeReferenceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.TypeReferenceHandleCollection+Enumerator.Current];ReturnValue;value;df-generated | | System.Reflection.Metadata;TypeReferenceHandleCollection+Enumerator;get_Current;();Argument[this].Property[System.Reflection.Metadata.TypeReferenceHandleCollection+Enumerator.Current];ReturnValue;value;dfc-generated | | System.Reflection.Metadata;TypeSpecification;GetCustomAttributes;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.PortableExecutable;DebugDirectoryBuilder;AddEntry;(System.Reflection.PortableExecutable.DebugDirectoryEntryType,System.UInt32,System.UInt32,TData,System.Action);Argument[3];Argument[4].Parameter[1];value;dfc-generated | -| System.Reflection.PortableExecutable;DebugDirectoryBuilder;AddEntry;(System.Reflection.PortableExecutable.DebugDirectoryEntryType,System.UInt32,System.UInt32,TData,System.Action);Argument[3];Argument[4].Parameter[1];value;hq-generated | -| System.Reflection.PortableExecutable;DebugDirectoryBuilder;AddEntry;(System.Reflection.PortableExecutable.DebugDirectoryEntryType,System.UInt32,System.UInt32,TData,System.Action);Argument[4];Argument[4].Parameter[delegate-self];value;dfc-generated | | System.Reflection.PortableExecutable;DebugDirectoryBuilder;AddEntry;(System.Reflection.PortableExecutable.DebugDirectoryEntryType,System.UInt32,System.UInt32,TData,System.Action);Argument[4];Argument[4].Parameter[delegate-self];value;hq-generated | | System.Reflection.PortableExecutable;ManagedPEBuilder;ManagedPEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Reflection.Metadata.Ecma335.MetadataRootBuilder,System.Reflection.Metadata.BlobBuilder,System.Reflection.Metadata.BlobBuilder,System.Reflection.Metadata.BlobBuilder,System.Reflection.PortableExecutable.ResourceSectionBuilder,System.Reflection.PortableExecutable.DebugDirectoryBuilder,System.Int32,System.Reflection.Metadata.MethodDefinitionHandle,System.Reflection.PortableExecutable.CorFlags,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[10];Argument[10].Parameter[delegate-self];value;hq-generated | | System.Reflection.PortableExecutable;ManagedPEBuilder;Sign;(System.Reflection.Metadata.BlobBuilder,System.Func,System.Byte[]>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -13517,11 +11898,8 @@ | System.Reflection.PortableExecutable;PEBuilder;GetDirectories;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.PortableExecutable;PEBuilder;GetSections;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection.PortableExecutable;PEBuilder;PEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[0];Argument[this].Property[System.Reflection.PortableExecutable.PEBuilder.Header];value;dfc-generated | -| System.Reflection.PortableExecutable;PEBuilder;PEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[0];Argument[this].Property[System.Reflection.PortableExecutable.PEBuilder.Header];value;hq-generated | -| System.Reflection.PortableExecutable;PEBuilder;PEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Reflection.PortableExecutable;PEBuilder;PEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Reflection.PortableExecutable;PEBuilder;PEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[1];Argument[this].Property[System.Reflection.PortableExecutable.PEBuilder.IdProvider];value;dfc-generated | -| System.Reflection.PortableExecutable;PEBuilder;PEBuilder;(System.Reflection.PortableExecutable.PEHeaderBuilder,System.Func,System.Reflection.Metadata.BlobContentId>);Argument[1];Argument[this].Property[System.Reflection.PortableExecutable.PEBuilder.IdProvider];value;hq-generated | | System.Reflection.PortableExecutable;PEBuilder;Serialize;(System.Reflection.Metadata.BlobBuilder);Argument[0];Argument[this];taint;df-generated | | System.Reflection.PortableExecutable;PEBuilder;Serialize;(System.Reflection.Metadata.BlobBuilder);Argument[this];ReturnValue;taint;df-generated | | System.Reflection.PortableExecutable;PEBuilder;SerializeSection;(System.String,System.Reflection.PortableExecutable.SectionLocation);Argument[this];ReturnValue;taint;df-generated | @@ -13538,10 +11916,7 @@ | System.Reflection.PortableExecutable;PEReader;PEReader;(System.Collections.Immutable.ImmutableArray);Argument[0].Element;Argument[this];taint;df-generated | | System.Reflection.PortableExecutable;PEReader;PEReader;(System.IO.Stream,System.Reflection.PortableExecutable.PEStreamOptions,System.Int32);Argument[0];Argument[this];taint;df-generated | | System.Reflection.PortableExecutable;PEReader;TryOpenAssociatedPortablePdb;(System.String,System.Func,System.Reflection.Metadata.MetadataReaderProvider,System.String);Argument[0];Argument[1].Parameter[0];taint;dfc-generated | -| System.Reflection.PortableExecutable;PEReader;TryOpenAssociatedPortablePdb;(System.String,System.Func,System.Reflection.Metadata.MetadataReaderProvider,System.String);Argument[0];Argument[1].Parameter[0];taint;hq-generated | | System.Reflection.PortableExecutable;PEReader;TryOpenAssociatedPortablePdb;(System.String,System.Func,System.Reflection.Metadata.MetadataReaderProvider,System.String);Argument[0];Argument[3];taint;dfc-generated | -| System.Reflection.PortableExecutable;PEReader;TryOpenAssociatedPortablePdb;(System.String,System.Func,System.Reflection.Metadata.MetadataReaderProvider,System.String);Argument[0];Argument[3];taint;hq-generated | -| System.Reflection.PortableExecutable;PEReader;TryOpenAssociatedPortablePdb;(System.String,System.Func,System.Reflection.Metadata.MetadataReaderProvider,System.String);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Reflection.PortableExecutable;PEReader;TryOpenAssociatedPortablePdb;(System.String,System.Func,System.Reflection.Metadata.MetadataReaderProvider,System.String);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Reflection.PortableExecutable;PEReader;get_PEHeaders;();Argument[this];ReturnValue;taint;df-generated | | System.Reflection;Assembly;CreateQualifiedName;(System.String,System.String);Argument[0];ReturnValue;taint;dfc-generated | @@ -13692,10 +12067,8 @@ | System.Reflection;MethodInvoker;Invoke;(System.Object,System.Span);Argument[0];Argument[this];taint;df-generated | | System.Reflection;MethodInvoker;Invoke;(System.Object,System.Span);Argument[1];Argument[this];taint;df-generated | | System.Reflection;MethodInvoker;Invoke;(System.Object,System.Span);Argument[this];ReturnValue;taint;df-generated | -| System.Reflection;Module;FindTypes;(System.Reflection.TypeFilter,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Reflection;Module;FindTypes;(System.Reflection.TypeFilter,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Reflection;Module;FindTypes;(System.Reflection.TypeFilter,System.Object);Argument[1];Argument[0].Parameter[1];value;dfc-generated | -| System.Reflection;Module;FindTypes;(System.Reflection.TypeFilter,System.Object);Argument[1];Argument[0].Parameter[1];value;hq-generated | | System.Reflection;Module;GetField;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Reflection;Module;GetField;(System.String,System.Reflection.BindingFlags);Argument[this];ReturnValue;taint;df-generated | | System.Reflection;Module;GetMethod;(System.String);Argument[this];ReturnValue;taint;df-generated | @@ -13756,7 +12129,6 @@ | System.Reflection;ReflectionContext;MapAssembly;(System.Reflection.Assembly);Argument[0];ReturnValue;value;dfc-generated | | System.Reflection;ReflectionContext;MapType;(System.Reflection.TypeInfo);Argument[0];ReturnValue;value;dfc-generated | | System.Reflection;ReflectionTypeLoadException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Reflection;ReflectionTypeLoadException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Reflection;RuntimeReflectionExtensions;GetMethodInfo;(System.Delegate);Argument[0].Property[System.Delegate.Method];ReturnValue;value;dfc-generated | | System.Reflection;RuntimeReflectionExtensions;GetRuntimeBaseDefinition;(System.Reflection.MethodInfo);Argument[0];ReturnValue;value;df-generated | | System.Reflection;RuntimeReflectionExtensions;GetRuntimeInterfaceMap;(System.Reflection.TypeInfo,System.Type);Argument[0];ReturnValue;taint;df-generated | @@ -13814,25 +12186,15 @@ | System.Runtime.CompilerServices;ConditionalWeakTable+CreateValueCallback;BeginInvoke;(TKey,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,TValue);Argument[1];ReturnValue;value;dfc-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetOrAdd;(TKey,System.Func,TArg);Argument[2];Argument[1].Parameter[1];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetValue;(TKey,System.Runtime.CompilerServices.ConditionalWeakTable+CreateValueCallback);Argument[0];Argument[1].Parameter[0];value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetValue;(TKey,System.Runtime.CompilerServices.ConditionalWeakTable+CreateValueCallback);Argument[0];Argument[1].Parameter[0];value;hq-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetValue;(TKey,System.Runtime.CompilerServices.ConditionalWeakTable+CreateValueCallback);Argument[1].ReturnValue;ReturnValue;value;dfc-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetValue;(TKey,System.Runtime.CompilerServices.ConditionalWeakTable+CreateValueCallback);Argument[1].ReturnValue;ReturnValue;value;hq-generated | -| System.Runtime.CompilerServices;ConditionalWeakTable;GetValue;(TKey,System.Runtime.CompilerServices.ConditionalWeakTable+CreateValueCallback);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Runtime.CompilerServices;ConditionalWeakTable;GetValue;(TKey,System.Runtime.CompilerServices.ConditionalWeakTable+CreateValueCallback);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;ConfiguredCancelableAsyncEnumerable+Enumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Runtime.CompilerServices;ConfiguredCancelableAsyncEnumerable;ConfigureAwait;(System.Boolean);Argument[this];ReturnValue;taint;df-generated | @@ -13866,20 +12228,15 @@ | System.Runtime.CompilerServices;ReadOnlyCollectionBuilder;ReadOnlyCollectionBuilder;(System.Collections.Generic.IEnumerable);Argument[0].Element;Argument[this];taint;df-generated | | System.Runtime.CompilerServices;RuntimeHelpers+CleanupCode;BeginInvoke;(System.Object,System.Boolean,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;RuntimeHelpers+TryCode;BeginInvoke;(System.Object,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[2];Argument[1].Parameter[0];value;dfc-generated | -| System.Runtime.CompilerServices;RuntimeHelpers;ExecuteCodeWithGuaranteedCleanup;(System.Runtime.CompilerServices.RuntimeHelpers+TryCode,System.Runtime.CompilerServices.RuntimeHelpers+CleanupCode,System.Object);Argument[2];Argument[1].Parameter[0];value;hq-generated | | System.Runtime.CompilerServices;RuntimeWrappedException;RuntimeWrappedException;(System.Object);Argument[0];Argument[this].SyntheticField[System.Runtime.CompilerServices.RuntimeWrappedException._wrappedException];value;dfc-generated | | System.Runtime.CompilerServices;RuntimeWrappedException;get_WrappedException;();Argument[this].SyntheticField[System.Runtime.CompilerServices.RuntimeWrappedException._wrappedException];ReturnValue;value;dfc-generated | | System.Runtime.CompilerServices;StrongBox;StrongBox;(T);Argument[0];Argument[this].Field[System.Runtime.CompilerServices.StrongBox`1.Value];value;dfc-generated | | System.Runtime.CompilerServices;SwitchExpressionException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | | System.Runtime.CompilerServices;SwitchExpressionException;get_Message;();Argument[this].Property[System.Runtime.CompilerServices.SwitchExpressionException.UnmatchedValue];ReturnValue;taint;dfc-generated | -| System.Runtime.CompilerServices;SwitchExpressionException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Runtime.CompilerServices;TaskAwaiter;GetResult;();Argument[this].SyntheticField[m_task_task_awaiter].Property[System.Threading.Tasks.Task`1.Result];ReturnValue;value;manual | | System.Runtime.CompilerServices;TupleElementNamesAttribute;TupleElementNamesAttribute;(System.String[]);Argument[0];Argument[this].SyntheticField[System.Runtime.CompilerServices.TupleElementNamesAttribute._transformNames];value;dfc-generated | | System.Runtime.CompilerServices;TupleElementNamesAttribute;get_TransformNames;();Argument[this].SyntheticField[System.Runtime.CompilerServices.TupleElementNamesAttribute._transformNames];ReturnValue;value;dfc-generated | @@ -14179,12 +12536,9 @@ | System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicy;ToString;();Argument[this].SyntheticField[System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy._customServiceNames].Element;ReturnValue;taint;dfc-generated | | System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicy;get_CustomChannelBinding;();Argument[this].SyntheticField[System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy._customChannelBinding];ReturnValue;value;dfc-generated | | System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicy;get_CustomServiceNames;();Argument[this].SyntheticField[System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy._customServiceNames];ReturnValue;value;dfc-generated | -| System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicyTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | | System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicyTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicyTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | | System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicyTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | | System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicyTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System.Security.Authentication.ExtendedProtection;ExtendedProtectionPolicyTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System.Security.Authentication.ExtendedProtection;ServiceNameCollection;Merge;(System.Collections.IEnumerable);Argument[0].Element;ReturnValue.Property[System.Collections.ReadOnlyCollectionBase.InnerList].Element;value;dfc-generated | | System.Security.Authentication.ExtendedProtection;ServiceNameCollection;Merge;(System.Collections.IEnumerable);Argument[0].Property[System.Collections.ReadOnlyCollectionBase.InnerList].Element;ReturnValue.Property[System.Collections.ReadOnlyCollectionBase.InnerList].Element;value;dfc-generated | | System.Security.Authentication.ExtendedProtection;ServiceNameCollection;Merge;(System.String);Argument[0];ReturnValue.Property[System.Collections.ReadOnlyCollectionBase.InnerList].Element;value;dfc-generated | @@ -14212,12 +12566,9 @@ | System.Security.Claims;ClaimsIdentity;FindFirst;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Security.Claims;ClaimsIdentity;FindFirst;(System.String);Argument[this].Property[System.Security.Claims.ClaimsIdentity.Claims].Element;ReturnValue;value;dfc-generated | | System.Security.Claims;ClaimsIdentity;FindFirst;(System.String);Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims].Element;ReturnValue;value;dfc-generated | -| System.Security.Claims;ClaimsIdentity;HasClaim;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Security.Claims;ClaimsIdentity;HasClaim;(System.Predicate);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Security.Claims;ClaimsIdentity;HasClaim;(System.Predicate);Argument[this].Property[System.Security.Claims.ClaimsIdentity.Claims].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Security.Claims;ClaimsIdentity;HasClaim;(System.Predicate);Argument[this].Property[System.Security.Claims.ClaimsIdentity.Claims].Element;Argument[0].Parameter[0];value;hq-generated | | System.Security.Claims;ClaimsIdentity;HasClaim;(System.Predicate);Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims].Element;Argument[0].Parameter[0];value;dfc-generated | -| System.Security.Claims;ClaimsIdentity;HasClaim;(System.Predicate);Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims].Element;Argument[0].Parameter[0];value;hq-generated | | System.Security.Claims;ClaimsIdentity;get_AuthenticationType;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._authenticationType];ReturnValue;value;dfc-generated | | System.Security.Claims;ClaimsIdentity;get_Claims;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims].Element;ReturnValue.Element;value;dfc-generated | | System.Security.Claims;ClaimsIdentity;get_Claims;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims];ReturnValue;value;dfc-generated | @@ -14333,10 +12684,8 @@ | System.Security.Cryptography.X509Certificates;X509ChainElementCollection;CopyTo;(System.Security.Cryptography.X509Certificates.X509ChainElement[],System.Int32);Argument[this].Element;Argument[0].Element;value;manual | | System.Security.Cryptography.X509Certificates;X509ChainElementCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator.Current];value;manual | | System.Security.Cryptography.X509Certificates;X509ChainElementCollection;get_Item;(System.Int32);Argument[this];ReturnValue;taint;df-generated | -| System.Security.Cryptography.X509Certificates;X509ChainElementEnumerator;get_Current;();Argument[this].Property[System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator.Current];ReturnValue;value;df-generated | | System.Security.Cryptography.X509Certificates;X509ChainElementEnumerator;get_Current;();Argument[this].Property[System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator.Current];ReturnValue;value;dfc-generated | | System.Security.Cryptography.X509Certificates;X509ChainElementEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Security.Cryptography.X509Certificates;X509ChainElementEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Security.Cryptography.X509Certificates;X509ChainPolicy;Clone;();Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography.X509Certificates;X509EnhancedKeyUsageExtension;CopyFrom;(System.Security.Cryptography.AsnEncodedData);Argument[0].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData].Element;Argument[this].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData].Element;value;dfc-generated | | System.Security.Cryptography.X509Certificates;X509EnhancedKeyUsageExtension;CopyFrom;(System.Security.Cryptography.AsnEncodedData);Argument[0].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData];Argument[this].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData];value;dfc-generated | @@ -14348,10 +12697,8 @@ | System.Security.Cryptography.X509Certificates;X509ExtensionCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator.Current];value;manual | | System.Security.Cryptography.X509Certificates;X509ExtensionCollection;get_Item;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography.X509Certificates;X509ExtensionCollection;get_Item;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Security.Cryptography.X509Certificates;X509ExtensionEnumerator;get_Current;();Argument[this].Property[System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator.Current];ReturnValue;value;df-generated | | System.Security.Cryptography.X509Certificates;X509ExtensionEnumerator;get_Current;();Argument[this].Property[System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator.Current];ReturnValue;value;dfc-generated | | System.Security.Cryptography.X509Certificates;X509ExtensionEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Security.Cryptography.X509Certificates;X509ExtensionEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Security.Cryptography.X509Certificates;X509KeyUsageExtension;CopyFrom;(System.Security.Cryptography.AsnEncodedData);Argument[0].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData].Element;Argument[this].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData].Element;value;dfc-generated | | System.Security.Cryptography.X509Certificates;X509KeyUsageExtension;CopyFrom;(System.Security.Cryptography.AsnEncodedData);Argument[0].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData];Argument[this].SyntheticField[System.Security.Cryptography.AsnEncodedData._rawData];value;dfc-generated | | System.Security.Cryptography.X509Certificates;X509SignatureGenerator;CreateForECDsa;(System.Security.Cryptography.ECDsa);Argument[0];ReturnValue;taint;df-generated | @@ -14414,7 +12761,6 @@ | System.Security.Cryptography.Xml;KeyInfoClause;LoadXml;(System.Xml.XmlElement);Argument[0].Element;Argument[this];taint;df-generated | | System.Security.Cryptography.Xml;KeyInfoEncryptedKey;GetXml;();Argument[this].SyntheticField[System.Security.Cryptography.Xml.KeyInfoEncryptedKey._encryptedKey].SyntheticField[System.Security.Cryptography.Xml.EncryptedType._cachedXml];ReturnValue;value;dfc-generated | | System.Security.Cryptography.Xml;KeyInfoEncryptedKey;KeyInfoEncryptedKey;(System.Security.Cryptography.Xml.EncryptedKey);Argument[0];Argument[this];taint;df-generated | -| System.Security.Cryptography.Xml;KeyInfoEncryptedKey;LoadXml;(System.Xml.XmlElement);Argument[0];Argument[this].SyntheticField[System.Security.Cryptography.Xml.KeyInfoEncryptedKey._encryptedKey].SyntheticField[System.Security.Cryptography.Xml.EncryptedType._cachedXml];value;df-generated | | System.Security.Cryptography.Xml;KeyInfoEncryptedKey;LoadXml;(System.Xml.XmlElement);Argument[0];Argument[this].SyntheticField[System.Security.Cryptography.Xml.KeyInfoEncryptedKey._encryptedKey].SyntheticField[System.Security.Cryptography.Xml.EncryptedType._cachedXml];value;dfc-generated | | System.Security.Cryptography.Xml;KeyInfoName;KeyInfoName;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Security.Cryptography.Xml;KeyInfoNode;KeyInfoNode;(System.Xml.XmlElement);Argument[0].Element;Argument[this];taint;df-generated | @@ -14471,17 +12817,13 @@ | System.Security.Cryptography.Xml;TransformChain;GetEnumerator;();Argument[this].SyntheticField[System.Security.Cryptography.Xml.TransformChain._transforms].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;dfc-generated | | System.Security.Cryptography.Xml;TransformChain;get_Item;(System.Int32);Argument[this].SyntheticField[System.Security.Cryptography.Xml.TransformChain._transforms].Element;ReturnValue;value;dfc-generated | | System.Security.Cryptography.Xml;XmlDecryptionTransform;AddExceptUri;(System.String);Argument[0];Argument[this];taint;df-generated | -| System.Security.Cryptography.Xml;XmlDecryptionTransform;GetOutput;();Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDecryptionTransform._containingDocument];ReturnValue;value;df-generated | | System.Security.Cryptography.Xml;XmlDecryptionTransform;GetOutput;();Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDecryptionTransform._containingDocument];ReturnValue;value;dfc-generated | -| System.Security.Cryptography.Xml;XmlDecryptionTransform;GetOutput;(System.Type);Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDecryptionTransform._containingDocument];ReturnValue;value;df-generated | | System.Security.Cryptography.Xml;XmlDecryptionTransform;GetOutput;(System.Type);Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDecryptionTransform._containingDocument];ReturnValue;value;dfc-generated | -| System.Security.Cryptography.Xml;XmlDecryptionTransform;LoadInput;(System.Object);Argument[0];Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDecryptionTransform._containingDocument];value;df-generated | | System.Security.Cryptography.Xml;XmlDecryptionTransform;LoadInput;(System.Object);Argument[0];Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDecryptionTransform._containingDocument];value;dfc-generated | | System.Security.Cryptography.Xml;XmlDsigC14NTransform;GetDigestedOutput;(System.Security.Cryptography.HashAlgorithm);Argument[0].Property[System.Security.Cryptography.HashAlgorithm.Hash].Element;ReturnValue.Element;value;dfc-generated | | System.Security.Cryptography.Xml;XmlDsigExcC14NTransform;GetDigestedOutput;(System.Security.Cryptography.HashAlgorithm);Argument[0].Property[System.Security.Cryptography.HashAlgorithm.Hash].Element;ReturnValue.Element;value;dfc-generated | | System.Security.Cryptography.Xml;XmlDsigExcC14NTransform;XmlDsigExcC14NTransform;(System.Boolean,System.String);Argument[1];Argument[this];taint;df-generated | | System.Security.Cryptography.Xml;XmlDsigXsltTransform;GetInnerXml;();Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDsigXsltTransform._xslNodes];ReturnValue;value;dfc-generated | -| System.Security.Cryptography.Xml;XmlDsigXsltTransform;LoadInnerXml;(System.Xml.XmlNodeList);Argument[0];Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDsigXsltTransform._xslNodes];value;df-generated | | System.Security.Cryptography.Xml;XmlDsigXsltTransform;LoadInnerXml;(System.Xml.XmlNodeList);Argument[0];Argument[this].SyntheticField[System.Security.Cryptography.Xml.XmlDsigXsltTransform._xslNodes];value;dfc-generated | | System.Security.Cryptography;Aes;DecryptKeyWrapPadded;(System.Byte[]);Argument[0].Element;ReturnValue.Element;value;dfc-generated | | System.Security.Cryptography;Aes;DecryptKeyWrapPadded;(System.ReadOnlySpan);Argument[0].Element;ReturnValue.Element;value;dfc-generated | @@ -14602,10 +12944,8 @@ | System.Security.Cryptography;OidCollection;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Security.Cryptography.OidEnumerator.Current];value;manual | | System.Security.Cryptography;OidCollection;get_Item;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Security.Cryptography;OidCollection;get_Item;(System.String);Argument[this];ReturnValue;taint;df-generated | -| System.Security.Cryptography;OidEnumerator;get_Current;();Argument[this].Property[System.Security.Cryptography.OidEnumerator.Current];ReturnValue;value;df-generated | | System.Security.Cryptography;OidEnumerator;get_Current;();Argument[this].Property[System.Security.Cryptography.OidEnumerator.Current];ReturnValue;value;dfc-generated | | System.Security.Cryptography;OidEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Security.Cryptography;OidEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Security.Cryptography;PasswordDeriveBytes;PasswordDeriveBytes;(System.Byte[],System.Byte[],System.String,System.Int32,System.Security.Cryptography.CspParameters);Argument[0].Element;Argument[this];taint;df-generated | | System.Security.Cryptography;PasswordDeriveBytes;PasswordDeriveBytes;(System.Byte[],System.Byte[],System.String,System.Int32,System.Security.Cryptography.CspParameters);Argument[1].Element;Argument[this];taint;df-generated | | System.Security.Cryptography;PasswordDeriveBytes;PasswordDeriveBytes;(System.Byte[],System.Byte[],System.String,System.Int32,System.Security.Cryptography.CspParameters);Argument[2];Argument[this];taint;df-generated | @@ -14664,25 +13004,18 @@ | System.Security.Principal;GenericIdentity;GenericIdentity;(System.String);Argument[0];Argument[this].SyntheticField[System.Security.Principal.GenericIdentity.m_name];value;dfc-generated | | System.Security.Principal;GenericIdentity;GenericIdentity;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Security.Principal.GenericIdentity.m_name];value;dfc-generated | | System.Security.Principal;GenericIdentity;GenericIdentity;(System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Security.Principal.GenericIdentity.m_type];value;dfc-generated | -| System.Security.Principal;GenericIdentity;get_AuthenticationType;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._authenticationType];ReturnValue;value;dfc-generated | | System.Security.Principal;GenericIdentity;get_AuthenticationType;();Argument[this].SyntheticField[System.Security.Principal.GenericIdentity.m_type];ReturnValue;value;dfc-generated | | System.Security.Principal;GenericIdentity;get_Claims;();Argument[this].Property[System.Security.Claims.ClaimsIdentity.Claims];ReturnValue;value;dfc-generated | -| System.Security.Principal;GenericIdentity;get_Claims;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims].Element;ReturnValue.Element;value;dfc-generated | -| System.Security.Principal;GenericIdentity;get_Claims;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims];ReturnValue;value;dfc-generated | -| System.Security.Principal;GenericIdentity;get_Name;();Argument[this].SyntheticField[System.Security.Principal.GenericIdentity.m_name];ReturnValue;value;df-generated | | System.Security.Principal;GenericIdentity;get_Name;();Argument[this].SyntheticField[System.Security.Principal.GenericIdentity.m_name];ReturnValue;value;dfc-generated | | System.Security.Principal;GenericPrincipal;GenericPrincipal;(System.Security.Principal.IIdentity,System.String[]);Argument[0];Argument[this].SyntheticField[System.Security.Principal.GenericPrincipal.m_identity];value;dfc-generated | -| System.Security.Principal;GenericPrincipal;get_Identity;();Argument[this].SyntheticField[System.Security.Claims.ClaimsPrincipal._identities].Element;ReturnValue;value;dfc-generated | | System.Security.Principal;GenericPrincipal;get_Identity;();Argument[this].SyntheticField[System.Security.Principal.GenericPrincipal.m_identity];ReturnValue;value;dfc-generated | | System.Security.Principal;IIdentity;get_Name;();Argument[this];ReturnValue;taint;df-generated | | System.Security.Principal;WindowsIdentity;RunImpersonated;(Microsoft.Win32.SafeHandles.SafeAccessTokenHandle,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Security.Principal;WindowsIdentity;RunImpersonated;(Microsoft.Win32.SafeHandles.SafeAccessTokenHandle,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Security.Principal;WindowsIdentity;RunImpersonatedAsync;(Microsoft.Win32.SafeHandles.SafeAccessTokenHandle,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Security.Principal;WindowsIdentity;RunImpersonatedAsync;(Microsoft.Win32.SafeHandles.SafeAccessTokenHandle,System.Func>);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Security.Principal;WindowsIdentity;get_AuthenticationType;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._authenticationType];ReturnValue;value;dfc-generated | | System.Security.Principal;WindowsIdentity;get_Claims;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims].Element;ReturnValue.Element;value;dfc-generated | | System.Security.Principal;WindowsIdentity;get_Claims;();Argument[this].SyntheticField[System.Security.Claims.ClaimsIdentity._instanceClaims];ReturnValue;value;dfc-generated | -| System.Security.Principal;WindowsPrincipal;get_Identity;();Argument[this].SyntheticField[System.Security.Claims.ClaimsPrincipal._identities].Element;ReturnValue;value;dfc-generated | | System.Security;IPermission;Copy;();Argument[this];ReturnValue;value;dfc-generated | | System.Security;IPermission;Intersect;(System.Security.IPermission);Argument[0];ReturnValue;value;dfc-generated | | System.Security;IPermission;Union;(System.Security.IPermission);Argument[this];ReturnValue;taint;df-generated | @@ -14802,15 +13135,11 @@ | System.Text.Json;JsonDocument;Parse;(System.ReadOnlyMemory,System.Text.Json.JsonDocumentOptions);Argument[0];ReturnValue;taint;df-generated | | System.Text.Json;JsonDocument;get_RootElement;();Argument[this];ReturnValue;taint;df-generated | | System.Text.Json;JsonElement+ArrayEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | -| System.Text.Json;JsonElement+ArrayEnumerator;get_Current;();Argument[this].Property[System.Text.Json.JsonElement+ArrayEnumerator.Current];ReturnValue;value;df-generated | | System.Text.Json;JsonElement+ArrayEnumerator;get_Current;();Argument[this].Property[System.Text.Json.JsonElement+ArrayEnumerator.Current];ReturnValue;value;dfc-generated | | System.Text.Json;JsonElement+ArrayEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Text.Json;JsonElement+ArrayEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Text.Json;JsonElement+ObjectEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | -| System.Text.Json;JsonElement+ObjectEnumerator;get_Current;();Argument[this].Property[System.Text.Json.JsonElement+ObjectEnumerator.Current];ReturnValue;value;df-generated | | System.Text.Json;JsonElement+ObjectEnumerator;get_Current;();Argument[this].Property[System.Text.Json.JsonElement+ObjectEnumerator.Current];ReturnValue;value;dfc-generated | | System.Text.Json;JsonElement+ObjectEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Text.Json;JsonElement+ObjectEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Text.Json;JsonElement;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Text.Json;JsonElement;EnumerateArray;();Argument[this];ReturnValue;taint;df-generated | | System.Text.Json;JsonElement;EnumerateObject;();Argument[this];ReturnValue;taint;df-generated | @@ -14836,7 +13165,6 @@ | System.Text.Json;JsonException;JsonException;(System.String,System.String,System.Nullable,System.Nullable,System.Exception);Argument[2];Argument[this].Property[System.Text.Json.JsonException.LineNumber];value;dfc-generated | | System.Text.Json;JsonException;JsonException;(System.String,System.String,System.Nullable,System.Nullable,System.Exception);Argument[3];Argument[this].Property[System.Text.Json.JsonException.BytePositionInLine];value;dfc-generated | | System.Text.Json;JsonException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Text.Json;JsonException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Text.Json;JsonException;get_Message;();Argument[this].SyntheticField[System.Text.Json.JsonException._message];ReturnValue;value;dfc-generated | | System.Text.Json;JsonNamingPolicy;ConvertName;(System.String);Argument[0];ReturnValue;value;dfc-generated | | System.Text.Json;JsonReaderState;JsonReaderState;(System.Text.Json.JsonReaderOptions);Argument[0];Argument[this].SyntheticField[System.Text.Json.JsonReaderState._readerOptions];value;dfc-generated | @@ -14894,10 +13222,8 @@ | System.Text.RegularExpressions;Regex+ValueMatchEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | | System.Text.RegularExpressions;Regex+ValueMatchEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Text.RegularExpressions;Regex+ValueSplitEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex+ValueSplitEnumerator;get_Current;();Argument[this].Property[System.Text.RegularExpressions.Regex+ValueSplitEnumerator.Current];ReturnValue;value;df-generated | | System.Text.RegularExpressions;Regex+ValueSplitEnumerator;get_Current;();Argument[this].Property[System.Text.RegularExpressions.Regex+ValueSplitEnumerator.Current];ReturnValue;value;dfc-generated | | System.Text.RegularExpressions;Regex+ValueSplitEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Text.RegularExpressions;Regex+ValueSplitEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Text.RegularExpressions;Regex;Count;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Text.RegularExpressions;Regex;EnumerateMatches;(System.ReadOnlySpan);Argument[0];ReturnValue;taint;df-generated | | System.Text.RegularExpressions;Regex;EnumerateMatches;(System.ReadOnlySpan);Argument[this];ReturnValue;taint;df-generated | @@ -14961,28 +13287,16 @@ | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.String,System.Text.RegularExpressions.RegexOptions);Argument[0];ReturnValue;value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.String,System.Text.RegularExpressions.RegexOptions,System.TimeSpan);Argument[0];ReturnValue;value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[0];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[0];ReturnValue;value;hq-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions);Argument[0];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions);Argument[0];ReturnValue;value;hq-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions,System.TimeSpan);Argument[0];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions,System.TimeSpan);Argument[0];ReturnValue;value;hq-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions,System.TimeSpan);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.String,System.Text.RegularExpressions.MatchEvaluator,System.Text.RegularExpressions.RegexOptions,System.TimeSpan);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[0];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[0];ReturnValue;value;hq-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32);Argument[0];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32);Argument[0];ReturnValue;value;hq-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32,System.Int32);Argument[0];ReturnValue;value;dfc-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32,System.Int32);Argument[0];ReturnValue;value;hq-generated | -| System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32,System.Int32);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Text.RegularExpressions;Regex;Replace;(System.String,System.Text.RegularExpressions.MatchEvaluator,System.Int32,System.Int32);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Text.RegularExpressions;Regex;Split;(System.String);Argument[0];ReturnValue.Element;value;dfc-generated | | System.Text.RegularExpressions;Regex;Split;(System.String,System.Int32);Argument[0];ReturnValue.Element;value;dfc-generated | @@ -15074,13 +13388,10 @@ | System.Text;SpanLineEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | | System.Text;SpanLineEnumerator;MoveNext;();Argument[this].SyntheticField[System.Text.SpanLineEnumerator._remaining].Element;Argument[this].SyntheticField[System.Text.SpanLineEnumerator._current].Element;value;dfc-generated | | System.Text;SpanLineEnumerator;MoveNext;();Argument[this].SyntheticField[System.Text.SpanLineEnumerator._remaining];Argument[this].SyntheticField[System.Text.SpanLineEnumerator._current];value;dfc-generated | -| System.Text;SpanLineEnumerator;get_Current;();Argument[this].SyntheticField[System.Text.SpanLineEnumerator._current];ReturnValue;value;df-generated | | System.Text;SpanLineEnumerator;get_Current;();Argument[this].SyntheticField[System.Text.SpanLineEnumerator._current];ReturnValue;value;dfc-generated | | System.Text;SpanRuneEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | -| System.Text;SpanRuneEnumerator;get_Current;();Argument[this].Property[System.Text.SpanRuneEnumerator.Current];ReturnValue;value;df-generated | | System.Text;SpanRuneEnumerator;get_Current;();Argument[this].Property[System.Text.SpanRuneEnumerator.Current];ReturnValue;value;dfc-generated | | System.Text;SpanRuneEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | -| System.Text;SpanRuneEnumerator;get_Current;();Argument[this];ReturnValue;taint;dfc-generated | | System.Text;StringBuilder+AppendInterpolatedStringHandler;AppendFormatted;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Text;StringBuilder+AppendInterpolatedStringHandler;AppendFormatted;(T);Argument[0];Argument[this];taint;df-generated | | System.Text;StringBuilder+AppendInterpolatedStringHandler;AppendFormatted;(T,System.String);Argument[0];Argument[this];taint;df-generated | @@ -15240,7 +13551,6 @@ | System.Text;StringRuneEnumerator;get_Current;();Argument[this];ReturnValue;taint;df-generated | | System.Threading.Channels;Channel;CreateBounded;(System.Threading.Channels.BoundedChannelOptions,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.RateLimiting;FixedWindowRateLimiter;FixedWindowRateLimiter;(System.Threading.RateLimiting.FixedWindowRateLimiterOptions);Argument[0].Property[System.Threading.RateLimiting.FixedWindowRateLimiterOptions.Window];Argument[this].SyntheticField[System.Threading.RateLimiting.FixedWindowRateLimiter._options].Property[System.Threading.RateLimiting.FixedWindowRateLimiterOptions.Window];value;dfc-generated | -| System.Threading.RateLimiting;FixedWindowRateLimiter;get_ReplenishmentPeriod;();Argument[this].SyntheticField[System.Threading.RateLimiting.FixedWindowRateLimiter._options].Property[System.Threading.RateLimiting.FixedWindowRateLimiterOptions.Window];ReturnValue;value;df-generated | | System.Threading.RateLimiting;FixedWindowRateLimiter;get_ReplenishmentPeriod;();Argument[this].SyntheticField[System.Threading.RateLimiting.FixedWindowRateLimiter._options].Property[System.Threading.RateLimiting.FixedWindowRateLimiterOptions.Window];ReturnValue;value;dfc-generated | | System.Threading.RateLimiting;MetadataName;MetadataName;(System.String);Argument[0];Argument[this].SyntheticField[System.Threading.RateLimiting.MetadataName`1._name];value;dfc-generated | | System.Threading.RateLimiting;MetadataName;ToString;();Argument[this].SyntheticField[System.Threading.RateLimiting.MetadataName`1._name];ReturnValue;value;dfc-generated | @@ -15258,11 +13568,8 @@ | System.Threading.RateLimiting;RateLimitPartition;GetSlidingWindowLimiter;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.RateLimiting;RateLimitPartition;GetTokenBucketLimiter;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.RateLimiting;RateLimitPartition;RateLimitPartition;(TKey,System.Func);Argument[0];Argument[this].Property[System.Threading.RateLimiting.RateLimitPartition`1.PartitionKey];value;dfc-generated | -| System.Threading.RateLimiting;RateLimitPartition;RateLimitPartition;(TKey,System.Func);Argument[0];Argument[this].Property[System.Threading.RateLimiting.RateLimitPartition`1.PartitionKey];value;hq-generated | -| System.Threading.RateLimiting;RateLimitPartition;RateLimitPartition;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.RateLimiting;RateLimitPartition;RateLimitPartition;(TKey,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.RateLimiting;RateLimitPartition;RateLimitPartition;(TKey,System.Func);Argument[1];Argument[this].Property[System.Threading.RateLimiting.RateLimitPartition`1.Factory];value;dfc-generated | -| System.Threading.RateLimiting;RateLimitPartition;RateLimitPartition;(TKey,System.Func);Argument[1];Argument[this].Property[System.Threading.RateLimiting.RateLimitPartition`1.Factory];value;hq-generated | | System.Threading.RateLimiting;RateLimiter;AttemptAcquire;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Threading.RateLimiting;RateLimiter;AttemptAcquireCore;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Threading.RateLimiting;RateLimiter;CreateChained;(System.Threading.RateLimiting.RateLimiter[]);Argument[0].Element;ReturnValue;taint;df-generated | @@ -15270,7 +13577,6 @@ | System.Threading.RateLimiting;ReplenishingRateLimiter;get_ReplenishmentPeriod;();Argument[this];ReturnValue;taint;df-generated | | System.Threading.RateLimiting;SlidingWindowRateLimiter;SlidingWindowRateLimiter;(System.Threading.RateLimiting.SlidingWindowRateLimiterOptions);Argument[0];Argument[this];taint;df-generated | | System.Threading.RateLimiting;TokenBucketRateLimiter;TokenBucketRateLimiter;(System.Threading.RateLimiting.TokenBucketRateLimiterOptions);Argument[0].Property[System.Threading.RateLimiting.TokenBucketRateLimiterOptions.ReplenishmentPeriod];Argument[this].SyntheticField[System.Threading.RateLimiting.TokenBucketRateLimiter._options].Property[System.Threading.RateLimiting.TokenBucketRateLimiterOptions.ReplenishmentPeriod];value;dfc-generated | -| System.Threading.RateLimiting;TokenBucketRateLimiter;get_ReplenishmentPeriod;();Argument[this].SyntheticField[System.Threading.RateLimiting.TokenBucketRateLimiter._options].Property[System.Threading.RateLimiting.TokenBucketRateLimiterOptions.ReplenishmentPeriod];ReturnValue;value;df-generated | | System.Threading.RateLimiting;TokenBucketRateLimiter;get_ReplenishmentPeriod;();Argument[this].SyntheticField[System.Threading.RateLimiting.TokenBucketRateLimiter._options].Property[System.Threading.RateLimiting.TokenBucketRateLimiterOptions.ReplenishmentPeriod];ReturnValue;value;dfc-generated | | System.Threading.Tasks.Dataflow;ActionBlock;ActionBlock;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks.Dataflow;ActionBlock;ActionBlock;(System.Action,System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -15375,9 +13681,7 @@ | System.Threading.Tasks.Dataflow;WriteOnceBlock;ReleaseReservation;(System.Threading.Tasks.Dataflow.DataflowMessageHeader,System.Threading.Tasks.Dataflow.ITargetBlock);Argument[this];Argument[1];taint;df-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;ToString;();Argument[this];ReturnValue;taint;df-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;TryReceive;(System.Predicate,T);Argument[this].SyntheticField[System.Threading.Tasks.Dataflow.WriteOnceBlock`1._value];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks.Dataflow;WriteOnceBlock;TryReceive;(System.Predicate,T);Argument[this].SyntheticField[System.Threading.Tasks.Dataflow.WriteOnceBlock`1._value];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;TryReceive;(System.Predicate,T);Argument[this].SyntheticField[System.Threading.Tasks.Dataflow.WriteOnceBlock`1._value];Argument[1];value;dfc-generated | -| System.Threading.Tasks.Dataflow;WriteOnceBlock;TryReceive;(System.Predicate,T);Argument[this].SyntheticField[System.Threading.Tasks.Dataflow.WriteOnceBlock`1._value];Argument[1];value;hq-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;TryReceiveAll;(System.Collections.Generic.IList);Argument[this].SyntheticField[System.Threading.Tasks.Dataflow.WriteOnceBlock`1._value];Argument[0].Element;value;dfc-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;WriteOnceBlock;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks.Dataflow;WriteOnceBlock;WriteOnceBlock;(System.Func,System.Threading.Tasks.Dataflow.DataflowBlockOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -15459,15 +13763,10 @@ | System.Threading.Tasks;ParallelLoopState;get_LowestBreakIteration;();Argument[this];ReturnValue;taint;df-generated | | System.Threading.Tasks;Task;ConfigureAwait;(System.Boolean);Argument[this];ReturnValue;taint;df-generated | | System.Threading.Tasks;Task;ConfigureAwait;(System.Threading.Tasks.ConfigureAwaitOptions);Argument[this];ReturnValue;taint;df-generated | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object);Argument[1];Argument[0].Parameter[1];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[1];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[0].Parameter[1];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -15475,30 +13774,20 @@ | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Delay;(System.Int32,System.Threading.CancellationToken);Argument[1];ReturnValue;taint;df-generated | | System.Threading.Tasks;Task;Delay;(System.TimeSpan,System.Threading.CancellationToken);Argument[1];ReturnValue;taint;df-generated | | System.Threading.Tasks;Task;Delay;(System.TimeSpan,System.TimeProvider,System.Threading.CancellationToken);Argument[2];ReturnValue;taint;df-generated | @@ -15510,24 +13799,16 @@ | System.Threading.Tasks;Task;Run;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;Run;(System.Func,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;Run;(System.Func>);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Run;(System.Func>);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Run;(System.Func>,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Run;(System.Func>,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Run;(System.Func);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Run;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Run;(System.Func,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Run;(System.Func,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;Task;(System.Action,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;Task;(System.Action,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;Task;Task;(System.Action,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;Task;Task;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;Task;(System.Action,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Action,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;Task;(System.Action,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Action,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;Task;(System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;WaitAsync;(System.Threading.CancellationToken);Argument[0];ReturnValue;taint;df-generated | | System.Threading.Tasks;Task;WaitAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue;value;df-generated | @@ -15551,91 +13832,62 @@ | System.Threading.Tasks;Task;WhenAny;(System.Threading.Tasks.Task,System.Threading.Tasks.Task);Argument[1].Element.Property[System.Threading.Tasks.Task`1.Result];ReturnValue.Property[System.Threading.Tasks.Task`1.Result].Element;value;manual | | System.Threading.Tasks;Task;WhenAny;(System.Threading.Tasks.Task[]);Argument[0].Element.Property[System.Threading.Tasks.Task`1.Result];ReturnValue.Property[System.Threading.Tasks.Task`1.Result].Element;value;manual | | System.Threading.Tasks;Task;WhenEach;(System.ReadOnlySpan);Argument[0].Element;ReturnValue.Element;value;dfc-generated | -| System.Threading.Tasks;Task;get_AsyncState;();Argument[this].SyntheticField[System.Threading.Tasks.Task.m_stateObject];ReturnValue;value;df-generated | | System.Threading.Tasks;Task;get_AsyncState;();Argument[this].SyntheticField[System.Threading.Tasks.Task.m_stateObject];ReturnValue;value;dfc-generated | | System.Threading.Tasks;Task;ConfigureAwait;(System.Boolean);Argument[this];ReturnValue.SyntheticField[m_configuredTaskAwaiter].SyntheticField[m_task_configured_task_awaitable];value;manual | | System.Threading.Tasks;Task;ConfigureAwait;(System.Threading.Tasks.ConfigureAwaitOptions);Argument[this];ReturnValue;taint;df-generated | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.CancellationToken);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action,System.Object>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action>);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action>);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.CancellationToken);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.Tasks.TaskContinuationOptions);Argument[this];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Action>,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskContinuationOptions);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[1];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,System.Object,TNewResult>,System.Object,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.CancellationToken);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;ContinueWith;(System.Func,TNewResult>,System.Threading.Tasks.TaskScheduler);Argument[this];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;GetAwaiter;();Argument[this];ReturnValue.SyntheticField[m_task_task_awaiter];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;Task;Task;(System.Func);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Threading.CancellationToken);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;Task;(System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[this].Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;Task;Task;(System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;Task;WaitAsync;(System.Threading.CancellationToken);Argument[this];ReturnValue;value;df-generated | | System.Threading.Tasks;Task;WaitAsync;(System.TimeSpan);Argument[this];ReturnValue;value;df-generated | | System.Threading.Tasks;Task;WaitAsync;(System.TimeSpan,System.Threading.CancellationToken);Argument[this];ReturnValue;value;df-generated | @@ -15664,243 +13916,131 @@ | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>,System.Threading.CancellationToken);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Action[]>,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>,System.Threading.CancellationToken);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[1].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Action>,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[2];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object);Argument[2];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Action,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Action,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[4];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[4];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[5];Argument[0].Parameter[4];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[5];Argument[0].Parameter[4];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[5];Argument[0].Parameter[4];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[5];Argument[0].Parameter[4];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[4];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[4];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[5];Argument[0].Parameter[4];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object);Argument[5];Argument[0].Parameter[4];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[5];Argument[0].Parameter[4];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[5];Argument[0].Parameter[4];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[4];Argument[0].Parameter[3];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[4];Argument[0].Parameter[3];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[3];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[3];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[4];Argument[0].Parameter[3];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object);Argument[4];Argument[0].Parameter[3];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[3];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[3];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[3];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[3];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[3];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object);Argument[3];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Action,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[2];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[2];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Func,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | @@ -15908,189 +14048,109 @@ | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[0];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Action,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;TaskFactory;(System.Threading.CancellationToken);Argument[0];Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory.m_defaultCancellationToken];value;dfc-generated | | System.Threading.Tasks;TaskFactory;TaskFactory;(System.Threading.Tasks.TaskScheduler);Argument[0];Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory.m_defaultScheduler];value;dfc-generated | | System.Threading.Tasks;TaskFactory;get_CancellationToken;();Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory.m_defaultCancellationToken];ReturnValue;value;dfc-generated | | System.Threading.Tasks;TaskFactory;get_Scheduler;();Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory.m_defaultScheduler];ReturnValue;value;dfc-generated | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAll;(System.Threading.Tasks.Task[],System.Func[],TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[0];Argument[1].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;ContinueWhenAny;(System.Threading.Tasks.Task[],System.Func,TResult>,System.Threading.Tasks.TaskContinuationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[2];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object);Argument[2];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.IAsyncResult,System.Func,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[4];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[4];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[5];Argument[0].Parameter[4];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object);Argument[5];Argument[0].Parameter[4];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[5];Argument[0].Parameter[4];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,TArg3,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[5];Argument[0].Parameter[4];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[4];Argument[0].Parameter[3];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object);Argument[4];Argument[0].Parameter[3];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[1];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[3];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,TArg2,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[4];Argument[0].Parameter[3];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[3];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object);Argument[3];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;Argument[1].Parameter[0];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[2];Argument[0].Parameter[0];value;hq-generated | | System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[2];value;dfc-generated | -| System.Threading.Tasks;TaskFactory;FromAsync;(System.Func,System.Func,TArg1,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[3];Argument[0].Parameter[2];value;hq-generated | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Object,System.Threading.Tasks.TaskCreationOptions);Argument[1];Argument[0].Parameter[0];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[0].ReturnValue;ReturnValue.Property[System.Threading.Tasks.Task`1.Result];value;manual | -| System.Threading.Tasks;TaskFactory;StartNew;(System.Func,System.Threading.Tasks.TaskCreationOptions);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System.Threading.Tasks;TaskFactory;TaskFactory;(System.Threading.CancellationToken);Argument[0];Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory`1.m_defaultCancellationToken];value;dfc-generated | | System.Threading.Tasks;TaskFactory;TaskFactory;(System.Threading.Tasks.TaskScheduler);Argument[0];Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory`1.m_defaultScheduler];value;dfc-generated | | System.Threading.Tasks;TaskFactory;get_CancellationToken;();Argument[this].SyntheticField[System.Threading.Tasks.TaskFactory`1.m_defaultCancellationToken];ReturnValue;value;dfc-generated | @@ -16099,8 +14159,6 @@ | System.Threading.Tasks;TaskScheduler;add_UnobservedTaskException;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskScheduler;remove_UnobservedTaskException;(System.EventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;TaskToAsyncResult;Begin;(System.Threading.Tasks.Task,System.AsyncCallback,System.Object);Argument[0];ReturnValue.SyntheticField[System.Threading.Tasks.TaskToAsyncResult+TaskAsyncResult._task];value;dfc-generated | -| System.Threading.Tasks;TaskToAsyncResult;Begin;(System.Threading.Tasks.Task,System.AsyncCallback,System.Object);Argument[0];ReturnValue.SyntheticField[System.Threading.Tasks.TaskToAsyncResult+TaskAsyncResult._task];value;hq-generated | -| System.Threading.Tasks;TaskToAsyncResult;Begin;(System.Threading.Tasks.Task,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading.Tasks;TaskToAsyncResult;Begin;(System.Threading.Tasks.Task,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading.Tasks;UnobservedTaskExceptionEventArgs;UnobservedTaskExceptionEventArgs;(System.AggregateException);Argument[0];Argument[this].SyntheticField[System.Threading.Tasks.UnobservedTaskExceptionEventArgs.m_exception];value;dfc-generated | | System.Threading.Tasks;UnobservedTaskExceptionEventArgs;get_Exception;();Argument[this].SyntheticField[System.Threading.Tasks.UnobservedTaskExceptionEventArgs.m_exception];ReturnValue;value;dfc-generated | @@ -16130,60 +14188,38 @@ | System.Threading;Barrier;Barrier;(System.Int32,System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;Register;(System.Action);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;hq-generated | -| System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading;CancellationToken;Register;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;hq-generated | -| System.Threading;CancellationToken;Register;(System.Action,System.Object,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Object,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;Register;(System.Action,System.Object,System.Boolean);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading;CancellationToken;Register;(System.Action,System.Object,System.Boolean);Argument[1];Argument[0].Parameter[0];value;hq-generated | -| System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;hq-generated | -| System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading;CancellationToken;UnsafeRegister;(System.Action,System.Object);Argument[1];Argument[0].Parameter[0];value;hq-generated | | System.Threading;CancellationToken;get_WaitHandle;();Argument[this];ReturnValue;taint;df-generated | | System.Threading;CancellationTokenSource;CancelAsync;();Argument[this];ReturnValue.SyntheticField[System.Threading.Tasks.Task.m_stateObject];value;dfc-generated | | System.Threading;CancellationTokenSource;get_Token;();Argument[this];ReturnValue;taint;df-generated | | System.Threading;CompressedStack;CreateCopy;();Argument[this];ReturnValue;value;dfc-generated | -| System.Threading;CompressedStack;Run;(System.Threading.CompressedStack,System.Threading.ContextCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading;CompressedStack;Run;(System.Threading.CompressedStack,System.Threading.ContextCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading;CompressedStack;Run;(System.Threading.CompressedStack,System.Threading.ContextCallback,System.Object);Argument[2];Argument[1].Parameter[0];value;dfc-generated | -| System.Threading;CompressedStack;Run;(System.Threading.CompressedStack,System.Threading.ContextCallback,System.Object);Argument[2];Argument[1].Parameter[0];value;hq-generated | | System.Threading;ContextCallback;BeginInvoke;(System.Object,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading;CountdownEvent;get_WaitHandle;();Argument[this];ReturnValue;taint;df-generated | | System.Threading;ExecutionContext;CreateCopy;();Argument[this];ReturnValue;value;dfc-generated | -| System.Threading;ExecutionContext;Run;(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading;ExecutionContext;Run;(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading;ExecutionContext;Run;(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object);Argument[2];Argument[1].Parameter[0];value;dfc-generated | -| System.Threading;ExecutionContext;Run;(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object);Argument[2];Argument[1].Parameter[0];value;hq-generated | | System.Threading;HostExecutionContextManager;SetHostExecutionContext;(System.Threading.HostExecutionContext);Argument[0];ReturnValue;taint;df-generated | | System.Threading;IOCompletionCallback;BeginInvoke;(System.UInt32,System.UInt32,System.Threading.NativeOverlapped*,System.AsyncCallback,System.Object);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T);Argument[0];ReturnValue;value;dfc-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object);Argument[0];ReturnValue;value;dfc-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[3].ReturnValue;Argument[0];value;dfc-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[3].ReturnValue;Argument[0];value;hq-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[3].ReturnValue;ReturnValue;value;dfc-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[3].ReturnValue;ReturnValue;value;hq-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Boolean,System.Object,System.Func);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Func);Argument[0];ReturnValue;value;hq-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Func);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Object,System.Func);Argument[0];ReturnValue;value;dfc-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Object,System.Func);Argument[0];ReturnValue;value;hq-generated | -| System.Threading;LazyInitializer;EnsureInitialized;(T,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System.Threading;LazyInitializer;EnsureInitialized;(T,System.Object,System.Func);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Threading;Lock;EnterScope;();Argument[this];ReturnValue;taint;df-generated | | System.Threading;ManualResetEventSlim;get_WaitHandle;();Argument[this];ReturnValue;taint;df-generated | @@ -16212,10 +14248,8 @@ | System.Threading;SpinWait;SpinUntil;(System.Func,System.Int32);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;SpinWait;SpinUntil;(System.Func,System.TimeSpan);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;SynchronizationContext;Post;(System.Threading.SendOrPostCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Threading;SynchronizationContext;Send;(System.Threading.SendOrPostCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Threading;SynchronizationContext;Send;(System.Threading.SendOrPostCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Threading;SynchronizationContext;Send;(System.Threading.SendOrPostCallback,System.Object);Argument[1];Argument[0].Parameter[0];value;dfc-generated | -| System.Threading;SynchronizationContext;Send;(System.Threading.SendOrPostCallback,System.Object);Argument[1];Argument[0].Parameter[0];value;hq-generated | | System.Threading;Thread;GetData;(System.LocalDataStoreSlot);Argument[0].SyntheticField[System.LocalDataStoreSlot.Data].Property[System.Threading.ThreadLocal`1.Value];ReturnValue;value;dfc-generated | | System.Threading;Thread;SetData;(System.LocalDataStoreSlot,System.Object);Argument[1];Argument[0].SyntheticField[System.LocalDataStoreSlot.Data].Property[System.Threading.ThreadLocal`1.Value];value;dfc-generated | | System.Threading;Thread;Thread;(System.Threading.ParameterizedThreadStart);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -16259,16 +14293,11 @@ | System.Timers;ElapsedEventHandler;BeginInvoke;(System.Object,System.Timers.ElapsedEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System.Timers;Timer;add_Elapsed;(System.Timers.ElapsedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Timers;Timer;remove_Elapsed;(System.Timers.ElapsedEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Timers;TimersDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.DescriptionValue];ReturnValue;value;dfc-generated | | System.Timers;TimersDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.Description];Argument[this].Property[System.ComponentModel.DescriptionAttribute.DescriptionValue];taint;dfc-generated | | System.Timers;TimersDescriptionAttribute;get_Description;();Argument[this].Property[System.ComponentModel.DescriptionAttribute.Description];ReturnValue;value;dfc-generated | -| System.Transactions;CommittableTransaction;BeginCommit;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System.Transactions;CommittableTransaction;BeginCommit;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Transactions;CommittableTransaction;BeginCommit;(System.AsyncCallback,System.Object);Argument[1];ReturnValue.SyntheticField[System.Transactions.Transaction._internalTransaction].SyntheticField[System.Transactions.InternalTransaction._asyncState];value;dfc-generated | -| System.Transactions;CommittableTransaction;BeginCommit;(System.AsyncCallback,System.Object);Argument[1];ReturnValue.SyntheticField[System.Transactions.Transaction._internalTransaction].SyntheticField[System.Transactions.InternalTransaction._asyncState];value;hq-generated | | System.Transactions;CommittableTransaction;BeginCommit;(System.AsyncCallback,System.Object);Argument[this];ReturnValue;value;dfc-generated | -| System.Transactions;CommittableTransaction;BeginCommit;(System.AsyncCallback,System.Object);Argument[this];ReturnValue;value;hq-generated | -| System.Transactions;CommittableTransaction;get_AsyncState;();Argument[this].SyntheticField[System.Transactions.Transaction._internalTransaction].SyntheticField[System.Transactions.InternalTransaction._asyncState];ReturnValue;value;df-generated | | System.Transactions;CommittableTransaction;get_AsyncState;();Argument[this].SyntheticField[System.Transactions.Transaction._internalTransaction].SyntheticField[System.Transactions.InternalTransaction._asyncState];ReturnValue;value;dfc-generated | | System.Transactions;HostCurrentTransactionCallback;BeginInvoke;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Transactions;Transaction;Clone;();Argument[this];ReturnValue;taint;df-generated | @@ -16483,9 +14512,7 @@ | System.Xml.Resolvers;XmlPreloadedResolver;Add;(System.Uri,System.IO.Stream);Argument[0];Argument[this];taint;df-generated | | System.Xml.Resolvers;XmlPreloadedResolver;Add;(System.Uri,System.String);Argument[0];Argument[this];taint;df-generated | | System.Xml.Resolvers;XmlPreloadedResolver;GetEntity;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue;taint;dfc-generated | -| System.Xml.Resolvers;XmlPreloadedResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;df-generated | | System.Xml.Resolvers;XmlPreloadedResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Xml.Resolvers;XmlPreloadedResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;df-generated | | System.Xml.Resolvers;XmlPreloadedResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | | System.Xml.Resolvers;XmlPreloadedResolver;XmlPreloadedResolver;(System.Xml.XmlResolver,System.Xml.Resolvers.XmlKnownDtds,System.Collections.Generic.IEqualityComparer);Argument[0];Argument[this];taint;df-generated | | System.Xml.Resolvers;XmlPreloadedResolver;get_PreloadedUris;();Argument[this];ReturnValue;taint;df-generated | @@ -16535,7 +14562,6 @@ | System.Xml.Schema;XmlSchemaCollection;get_Item;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Xml.Schema;XmlSchemaCollection;get_NameTable;();Argument[this].SyntheticField[System.Xml.Schema.XmlSchemaCollection._nameTable];ReturnValue;value;dfc-generated | | System.Xml.Schema;XmlSchemaCollection;remove_ValidationEventHandler;(System.Xml.Schema.ValidationEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | -| System.Xml.Schema;XmlSchemaCollectionEnumerator;get_Current;();Argument[this].Property[System.Xml.Schema.XmlSchemaCollectionEnumerator.Current];ReturnValue;value;df-generated | | System.Xml.Schema;XmlSchemaCollectionEnumerator;get_Current;();Argument[this].Property[System.Xml.Schema.XmlSchemaCollectionEnumerator.Current];ReturnValue;value;dfc-generated | | System.Xml.Schema;XmlSchemaComplexContentExtension;get_Attributes;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.Schema;XmlSchemaComplexContentRestriction;get_Attributes;();Argument[this];ReturnValue;taint;df-generated | @@ -16558,7 +14584,6 @@ | System.Xml.Schema;XmlSchemaElement;get_QualifiedName;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.Schema;XmlSchemaException;XmlSchemaException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this];taint;df-generated | | System.Xml.Schema;XmlSchemaException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Xml.Schema;XmlSchemaException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Xml.Schema;XmlSchemaException;get_SourceSchemaObject;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.Schema;XmlSchemaException;get_SourceUri;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.Schema;XmlSchemaGroup;get_QualifiedName;();Argument[this];ReturnValue;taint;df-generated | @@ -16757,7 +14782,6 @@ | System.Xml.Serialization;XmlReflectionImporter;XmlReflectionImporter;(System.Xml.Serialization.XmlAttributeOverrides,System.String);Argument[1];Argument[this];taint;df-generated | | System.Xml.Serialization;XmlRootAttribute;XmlRootAttribute;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Xml.Serialization;XmlSchemaEnumerator;XmlSchemaEnumerator;(System.Xml.Serialization.XmlSchemas);Argument[0];Argument[this].SyntheticField[System.Xml.Serialization.XmlSchemaEnumerator._list];value;dfc-generated | -| System.Xml.Serialization;XmlSchemaEnumerator;get_Current;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSchemaEnumerator._list].Element;ReturnValue;value;df-generated | | System.Xml.Serialization;XmlSchemaEnumerator;get_Current;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSchemaEnumerator._list].Element;ReturnValue;value;dfc-generated | | System.Xml.Serialization;XmlSchemaExporter;ExportAnyType;(System.String);Argument[0];Argument[this];taint;df-generated | | System.Xml.Serialization;XmlSchemaExporter;ExportAnyType;(System.Xml.Serialization.XmlMembersMapping);Argument[0];Argument[this];taint;df-generated | @@ -16786,23 +14810,16 @@ | System.Xml.Serialization;XmlSerializationFixupCallback;BeginInvoke;(System.Object,System.AsyncCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Xml.Serialization;XmlSerializationReadCallback;BeginInvoke;(System.AsyncCallback,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._collection];value;dfc-generated | -| System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[0];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._collection];value;hq-generated | -| System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[1];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._callback];value;dfc-generated | -| System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[1];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._callback];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[2];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._collectionItems];value;dfc-generated | -| System.Xml.Serialization;XmlSerializationReader+CollectionFixup;CollectionFixup;(System.Object,System.Xml.Serialization.XmlSerializationCollectionFixupCallback,System.Object);Argument[2];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._collectionItems];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;get_Callback;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._callback];ReturnValue;value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;get_Collection;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._collection];ReturnValue;value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader+CollectionFixup;get_CollectionItems;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+CollectionFixup._collectionItems];ReturnValue;value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.Int32);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.String[]);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.String[]);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.String[]);Argument[1];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+Fixup._callback];value;dfc-generated | -| System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.String[]);Argument[1];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+Fixup._callback];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.String[]);Argument[2];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+Fixup._ids];value;dfc-generated | -| System.Xml.Serialization;XmlSerializationReader+Fixup;Fixup;(System.Object,System.Xml.Serialization.XmlSerializationFixupCallback,System.String[]);Argument[2];Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+Fixup._ids];value;hq-generated | | System.Xml.Serialization;XmlSerializationReader+Fixup;get_Callback;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+Fixup._callback];ReturnValue;value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader+Fixup;get_Ids;();Argument[this].SyntheticField[System.Xml.Serialization.XmlSerializationReader+Fixup._ids];ReturnValue;value;dfc-generated | | System.Xml.Serialization;XmlSerializationReader;AddFixup;(System.Xml.Serialization.XmlSerializationReader+CollectionFixup);Argument[0];Argument[this];taint;df-generated | @@ -17037,7 +15054,6 @@ | System.Xml.XPath;XPathException;XPathException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.Xml.XPath.XPathException._res];taint;dfc-generated | | System.Xml.XPath;XPathException;XPathException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[this].SyntheticField[System.Xml.XPath.XPathException._res];Argument[this].SyntheticField[System.Xml.XPath.XPathException._message];value;dfc-generated | | System.Xml.XPath;XPathException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Xml.XPath;XPathException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Xml.XPath;XPathException;get_Message;();Argument[this].SyntheticField[System.Xml.XPath.XPathException._message];ReturnValue;value;dfc-generated | | System.Xml.XPath;XPathExpression;Clone;();Argument[this];ReturnValue;value;dfc-generated | | System.Xml.XPath;XPathExpression;Compile;(System.String);Argument[0];ReturnValue;taint;df-generated | @@ -17065,7 +15081,6 @@ | System.Xml.XPath;XPathNavigator;GetNamespace;(System.String);Argument[this];ReturnValue;taint;df-generated | | System.Xml.XPath;XPathNavigator;InsertAfter;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.XPath;XPathNavigator;InsertBefore;();Argument[this];ReturnValue;taint;df-generated | -| System.Xml.XPath;XPathNavigator;LookupPrefix;(System.String);Argument[this].Property[System.Xml.XPath.XPathNavigator.LocalName];ReturnValue;value;df-generated | | System.Xml.XPath;XPathNavigator;LookupPrefix;(System.String);Argument[this].Property[System.Xml.XPath.XPathNavigator.LocalName];ReturnValue;value;dfc-generated | | System.Xml.XPath;XPathNavigator;MoveTo;(System.Xml.XPath.XPathNavigator);Argument[0];Argument[this];taint;df-generated | | System.Xml.XPath;XPathNavigator;PrependChild;();Argument[this];ReturnValue;taint;df-generated | @@ -17120,7 +15135,6 @@ | System.Xml.Xsl;XsltContext;ResolveFunction;(System.String,System.String,System.Xml.XPath.XPathResultType[]);Argument[this];ReturnValue;taint;df-generated | | System.Xml.Xsl;XsltException;XsltException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this];taint;df-generated | | System.Xml.Xsl;XsltException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Xml.Xsl;XsltException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Xml.Xsl;XsltException;get_SourceUri;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.Xsl;XsltMessageEncounteredEventArgs;get_Message;();Argument[this];ReturnValue;taint;df-generated | | System.Xml.Xsl;XsltMessageEncounteredEventHandler;BeginInvoke;(System.Object,System.Xml.Xsl.XsltMessageEncounteredEventArgs,System.AsyncCallback,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | @@ -17179,7 +15193,6 @@ | System.Xml;XmlDataDocument;CreateElement;(System.String,System.String,System.String);Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlDataDocument;CreateEntityReference;(System.String);Argument[0];ReturnValue;taint;df-generated | | System.Xml;XmlDataDocument;CreateNavigator;(System.Xml.XmlNode);Argument[this];ReturnValue.SyntheticField[System.Xml.DataDocumentXPathNavigator._doc];value;dfc-generated | -| System.Xml;XmlDataDocument;CreateNavigator;(System.Xml.XmlNode);Argument[this];ReturnValue.SyntheticField[System.Xml.DocumentXPathNavigator._document];value;dfc-generated | | System.Xml;XmlDataDocument;GetElementFromRow;(System.Data.DataRow);Argument[0];ReturnValue;taint;df-generated | | System.Xml;XmlDataDocument;GetElementsByTagName;(System.String);Argument[0];ReturnValue;taint;df-generated | | System.Xml;XmlDataDocument;GetRowFromElement;(System.Xml.XmlElement);Argument[0].Element;ReturnValue;taint;df-generated | @@ -17198,7 +15211,6 @@ | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.Byte[],System.Int32,System.Int32,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[0].Element;ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.Byte[],System.Int32,System.Int32,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[3];ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.Byte[],System.Int32,System.Int32,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[5];ReturnValue;taint;manual | -| System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.Byte[],System.Int32,System.Int32,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[6];Argument[6].Parameter[delegate-self];value;manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.Byte[],System.Int32,System.Int32,System.Xml.XmlDictionaryReaderQuotas);Argument[0].Element;ReturnValue;taint;df-manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.Byte[],System.Xml.XmlDictionaryReaderQuotas);Argument[0].Element;ReturnValue;taint;df-manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.IO.Stream,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas);Argument[0];ReturnValue;taint;df-manual | @@ -17209,17 +15221,14 @@ | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.IO.Stream,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[0];ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.IO.Stream,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[1];ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.IO.Stream,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[3];ReturnValue;taint;manual | -| System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.IO.Stream,System.Xml.IXmlDictionary,System.Xml.XmlDictionaryReaderQuotas,System.Xml.XmlBinaryReaderSession,System.Xml.OnXmlDictionaryReaderClose);Argument[4];Argument[4].Parameter[delegate-self];value;manual | | System.Xml;XmlDictionaryReader;CreateBinaryReader;(System.IO.Stream,System.Xml.XmlDictionaryReaderQuotas);Argument[0];ReturnValue;taint;df-manual | | System.Xml;XmlDictionaryReader;CreateDictionaryReader;(System.Xml.XmlReader);Argument[0];ReturnValue;value;dfc-generated | | System.Xml;XmlDictionaryReader;CreateMtomReader;(System.Byte[],System.Int32,System.Int32,System.Text.Encoding[],System.String,System.Xml.XmlDictionaryReaderQuotas,System.Int32,System.Xml.OnXmlDictionaryReaderClose);Argument[7];Argument[7].Parameter[delegate-self];value;hq-generated | | System.Xml;XmlDictionaryReader;CreateMtomReader;(System.IO.Stream,System.Text.Encoding[],System.String,System.Xml.XmlDictionaryReaderQuotas,System.Int32,System.Xml.OnXmlDictionaryReaderClose);Argument[5];Argument[5].Parameter[delegate-self];value;hq-generated | | System.Xml;XmlDictionaryReader;CreateTextReader;(System.Byte[],System.Int32,System.Int32,System.Text.Encoding,System.Xml.XmlDictionaryReaderQuotas,System.Xml.OnXmlDictionaryReaderClose);Argument[0].Element;ReturnValue;taint;manual | -| System.Xml;XmlDictionaryReader;CreateTextReader;(System.Byte[],System.Int32,System.Int32,System.Text.Encoding,System.Xml.XmlDictionaryReaderQuotas,System.Xml.OnXmlDictionaryReaderClose);Argument[5];Argument[5].Parameter[delegate-self];value;manual | | System.Xml;XmlDictionaryReader;CreateTextReader;(System.Byte[],System.Int32,System.Int32,System.Xml.XmlDictionaryReaderQuotas);Argument[0].Element;ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;CreateTextReader;(System.Byte[],System.Xml.XmlDictionaryReaderQuotas);Argument[0].Element;ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;CreateTextReader;(System.IO.Stream,System.Text.Encoding,System.Xml.XmlDictionaryReaderQuotas,System.Xml.OnXmlDictionaryReaderClose);Argument[0];ReturnValue;taint;manual | -| System.Xml;XmlDictionaryReader;CreateTextReader;(System.IO.Stream,System.Text.Encoding,System.Xml.XmlDictionaryReaderQuotas,System.Xml.OnXmlDictionaryReaderClose);Argument[3];Argument[3].Parameter[delegate-self];value;manual | | System.Xml;XmlDictionaryReader;CreateTextReader;(System.IO.Stream,System.Xml.XmlDictionaryReaderQuotas);Argument[0];ReturnValue;taint;manual | | System.Xml;XmlDictionaryReader;GetAttribute;(System.Xml.XmlDictionaryString,System.Xml.XmlDictionaryString);Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlDictionaryReader;GetNonAtomizedNames;(System.String,System.String);Argument[this];Argument[0];taint;df-generated | @@ -17421,7 +15430,6 @@ | System.Xml;XmlEntityReference;XmlEntityReference;(System.String,System.Xml.XmlDocument);Argument[0];Argument[this];taint;df-generated | | System.Xml;XmlException;XmlException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this];taint;df-generated | | System.Xml;XmlException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System.Xml;XmlException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System.Xml;XmlException;get_SourceUri;();Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlImplementation;CreateDocument;();Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlImplementation;XmlImplementation;(System.Xml.XmlNameTable);Argument[0];Argument[this];taint;df-generated | @@ -17446,7 +15454,6 @@ | System.Xml;XmlNode;AppendChild;(System.Xml.XmlNode);Argument[this];Argument[0].Element;taint;df-generated | | System.Xml;XmlNode;AppendChild;(System.Xml.XmlNode);Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlNode;Clone;();Argument[this];ReturnValue;taint;df-generated | -| System.Xml;XmlNode;Clone;();Argument[this];ReturnValue;taint;dfc-generated | | System.Xml;XmlNode;CloneNode;(System.Boolean);Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlNode;GetEnumerator;();Argument[this].Element;ReturnValue.Property[System.Collections.IEnumerator.Current];value;manual | | System.Xml;XmlNode;GetNamespaceOfPrefix;(System.String);Argument[this];ReturnValue;taint;df-generated | @@ -17535,7 +15542,6 @@ | System.Xml;XmlParserContext;XmlParserContext;(System.Xml.XmlNameTable,System.Xml.XmlNamespaceManager,System.String,System.String,System.String,System.String,System.String,System.String,System.Xml.XmlSpace,System.Text.Encoding);Argument[6];Argument[this];taint;df-generated | | System.Xml;XmlParserContext;XmlParserContext;(System.Xml.XmlNameTable,System.Xml.XmlNamespaceManager,System.String,System.String,System.String,System.String,System.String,System.String,System.Xml.XmlSpace,System.Text.Encoding);Argument[7];Argument[this];taint;df-generated | | System.Xml;XmlParserContext;XmlParserContext;(System.Xml.XmlNameTable,System.Xml.XmlNamespaceManager,System.String,System.String,System.String,System.String,System.String,System.String,System.Xml.XmlSpace,System.Text.Encoding);Argument[9];Argument[this];taint;df-generated | -| System.Xml;XmlProcessingInstruction;CloneNode;(System.Boolean);Argument[this].SyntheticField[System.Xml.XmlProcessingInstruction._target];ReturnValue.SyntheticField[System.Xml.XmlProcessingInstruction._target];value;df-generated | | System.Xml;XmlProcessingInstruction;CloneNode;(System.Boolean);Argument[this].SyntheticField[System.Xml.XmlProcessingInstruction._target];ReturnValue.SyntheticField[System.Xml.XmlProcessingInstruction._target];value;dfc-generated | | System.Xml;XmlProcessingInstruction;XmlProcessingInstruction;(System.String,System.String,System.Xml.XmlDocument);Argument[0];Argument[this].SyntheticField[System.Xml.XmlProcessingInstruction._target];value;dfc-generated | | System.Xml;XmlProcessingInstruction;get_Target;();Argument[this].SyntheticField[System.Xml.XmlProcessingInstruction._target];ReturnValue;value;dfc-generated | @@ -17619,9 +15625,7 @@ | System.Xml;XmlResolver;ResolveUri;(System.Uri,System.String);Argument[1];ReturnValue;taint;dfc-generated | | System.Xml;XmlResolver;set_Credentials;(System.Net.ICredentials);Argument[0];Argument[this];taint;df-generated | | System.Xml;XmlSecureResolver;GetEntity;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue;taint;dfc-generated | -| System.Xml;XmlSecureResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;df-generated | | System.Xml;XmlSecureResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | -| System.Xml;XmlSecureResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;df-generated | | System.Xml;XmlSecureResolver;GetEntityAsync;(System.Uri,System.String,System.Type);Argument[0];ReturnValue.Property[System.Threading.Tasks.Task`1.Result];taint;dfc-generated | | System.Xml;XmlText;SplitText;(System.Int32);Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlTextReader;GetNamespacesInScope;(System.Xml.XmlNamespaceScope);Argument[0];Argument[this];taint;manual | @@ -17644,29 +15648,17 @@ | System.Xml;XmlTextReader;XmlTextReader;(System.Xml.XmlNameTable);Argument[0];Argument[this];taint;manual | | System.Xml;XmlTextReader;get_Encoding;();Argument[this];ReturnValue;taint;df-generated | | System.Xml;XmlTextReader;set_XmlResolver;(System.Xml.XmlResolver);Argument[0];Argument[this];taint;df-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[2];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[2];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[3];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteDocType;(System.String,System.String,System.String,System.String);Argument[3];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteName;(System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteName;(System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteNmToken;(System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteNmToken;(System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteProcessingInstruction;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteProcessingInstruction;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteQualifiedName;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteQualifiedName;(System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteStartAttribute;(System.String,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[0];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | -| System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;df-generated | | System.Xml;XmlTextWriter;WriteStartElement;(System.String,System.String,System.String);Argument[1];Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter];taint;dfc-generated | | System.Xml;XmlTextWriter;get_BaseStream;();Argument[this].SyntheticField[System.Xml.XmlTextWriter._textWriter].Property[System.IO.StreamWriter.BaseStream];ReturnValue;value;dfc-generated | | System.Xml;XmlUrlResolver;GetEntity;(System.Uri,System.String,System.Type);Argument[0].Property[System.Uri.LocalPath];ReturnValue;taint;dfc-generated | @@ -17787,12 +15779,9 @@ | System;AggregateException;AggregateException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.AggregateException._innerExceptions];taint;dfc-generated | | System;AggregateException;AggregateException;(System.String,System.Exception);Argument[1];Argument[this].SyntheticField[System.AggregateException._innerExceptions].Element;value;dfc-generated | | System;AggregateException;GetBaseException;();Argument[this];ReturnValue;value;df-generated | -| System;AggregateException;Handle;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System;AggregateException;Handle;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System;AggregateException;Handle;(System.Func);Argument[this].SyntheticField[System.AggregateException._innerExceptions].Element;Argument[0].Parameter[0];value;dfc-generated | -| System;AggregateException;Handle;(System.Func);Argument[this].SyntheticField[System.AggregateException._innerExceptions].Element;Argument[0].Parameter[0];value;hq-generated | | System;AggregateException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | -| System;AggregateException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System;AppDomain;ApplyPolicy;(System.String);Argument[0];ReturnValue;value;dfc-generated | | System;AppDomain;ToString;();Argument[this].Property[System.AppDomain.FriendlyName];ReturnValue;taint;dfc-generated | | System;AppDomain;add_AssemblyLoad;(System.AssemblyLoadEventHandler);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | @@ -17822,7 +15811,6 @@ | System;ArgumentException;ArgumentException;(System.String,System.String,System.Exception);Argument[1];Argument[this].SyntheticField[System.ArgumentException._paramName];value;dfc-generated | | System;ArgumentException;get_Message;();Argument[this].Property[System.Exception.Message];ReturnValue;value;dfc-generated | | System;ArgumentException;get_Message;();Argument[this].SyntheticField[System.ArgumentException._paramName];ReturnValue;taint;dfc-generated | -| System;ArgumentException;get_Message;();Argument[this].SyntheticField[System.Exception._message];ReturnValue;value;dfc-generated | | System;ArgumentException;get_ParamName;();Argument[this].SyntheticField[System.ArgumentException._paramName];ReturnValue;value;dfc-generated | | System;ArgumentOutOfRangeException;ArgumentOutOfRangeException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0].SyntheticField[System.Runtime.Serialization.SerializationInfo._values].Element;Argument[this].SyntheticField[System.ArgumentOutOfRangeException._actualValue];value;dfc-generated | | System;ArgumentOutOfRangeException;ArgumentOutOfRangeException;(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext);Argument[0];Argument[this].SyntheticField[System.ArgumentOutOfRangeException._actualValue];taint;dfc-generated | @@ -17836,54 +15824,32 @@ | System;Array;Clear;(System.Array,System.Int32,System.Int32);Argument[0].WithoutElement;Argument[0];value;manual | | System;Array;Clone;();Argument[this].Element;ReturnValue.Element;value;manual | | System;Array;ConvertAll;(TInput[],System.Converter);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;Array;ConvertAll;(TInput[],System.Converter);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System;Array;ConvertAll;(TInput[],System.Converter);Argument[1].ReturnValue;ReturnValue.Element;value;dfc-generated | -| System;Array;ConvertAll;(TInput[],System.Converter);Argument[1].ReturnValue;ReturnValue.Element;value;hq-generated | -| System;Array;ConvertAll;(TInput[],System.Converter);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;Array;ConvertAll;(TInput[],System.Converter);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;CopyTo;(System.Array,System.Int64);Argument[this].Element;Argument[0].Element;value;manual | | System;Array;Exists;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;Array;Exists;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System;Array;Exists;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;Array;Exists;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;Fill;(T[],T);Argument[1];Argument[0].Element;value;dfc-generated | | System;Array;Fill;(T[],T,System.Int32,System.Int32);Argument[1];Argument[0].Element;value;dfc-generated | | System;Array;Find;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System;Array;Find;(T[],System.Predicate);Argument[0].Element;ReturnValue;value;manual | -| System;Array;Find;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System;Array;FindAll;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System;Array;FindAll;(T[],System.Predicate);Argument[0].Element;ReturnValue;value;manual | -| System;Array;FindAll;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System;Array;FindIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[0].Element;Argument[3].Parameter[0];value;dfc-generated | -| System;Array;FindIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[0].Element;Argument[3].Parameter[0];value;hq-generated | -| System;Array;FindIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System;Array;FindIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System;Array;FindIndex;(T[],System.Int32,System.Predicate);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System;Array;FindIndex;(T[],System.Int32,System.Predicate);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | -| System;Array;FindIndex;(T[],System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System;Array;FindIndex;(T[],System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System;Array;FindIndex;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;Array;FindIndex;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System;Array;FindIndex;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;Array;FindIndex;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;FindLast;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;manual | | System;Array;FindLast;(T[],System.Predicate);Argument[0].Element;ReturnValue;value;manual | -| System;Array;FindLast;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;manual | | System;Array;FindLastIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[0].Element;Argument[3].Parameter[0];value;dfc-generated | -| System;Array;FindLastIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[0].Element;Argument[3].Parameter[0];value;hq-generated | -| System;Array;FindLastIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[3];Argument[3].Parameter[delegate-self];value;dfc-generated | | System;Array;FindLastIndex;(T[],System.Int32,System.Int32,System.Predicate);Argument[3];Argument[3].Parameter[delegate-self];value;hq-generated | | System;Array;FindLastIndex;(T[],System.Int32,System.Predicate);Argument[0].Element;Argument[2].Parameter[0];value;dfc-generated | -| System;Array;FindLastIndex;(T[],System.Int32,System.Predicate);Argument[0].Element;Argument[2].Parameter[0];value;hq-generated | -| System;Array;FindLastIndex;(T[],System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System;Array;FindLastIndex;(T[],System.Int32,System.Predicate);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System;Array;FindLastIndex;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;Array;FindLastIndex;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System;Array;FindLastIndex;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;Array;FindLastIndex;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;ForEach;(T[],System.Action);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;Array;ForEach;(T[],System.Action);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System;Array;ForEach;(T[],System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;Array;ForEach;(T[],System.Action);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;Reverse;(System.Array);Argument[0].Element;ReturnValue.Element;value;manual | | System;Array;Reverse;(System.Array,System.Int32,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | @@ -17891,12 +15857,8 @@ | System;Array;Reverse;(T[],System.Int32,System.Int32);Argument[0].Element;ReturnValue.Element;value;manual | | System;Array;Sort;(T[],System.Comparison);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;Array;TrueForAll;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;Array;TrueForAll;(T[],System.Predicate);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | -| System;Array;TrueForAll;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;Array;TrueForAll;(T[],System.Predicate);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | -| System;ArraySegment+Enumerator;get_Current;();Argument[this].Property[System.ArraySegment`1+Enumerator.Current];ReturnValue;value;df-generated | | System;ArraySegment+Enumerator;get_Current;();Argument[this].Property[System.ArraySegment`1+Enumerator.Current];ReturnValue;value;dfc-generated | -| System;ArraySegment+Enumerator;get_Current;();Argument[this].SyntheticField[System.ArraySegment`1+Enumerator._array].Element;ReturnValue;value;df-generated | | System;ArraySegment+Enumerator;get_Current;();Argument[this].SyntheticField[System.ArraySegment`1+Enumerator._array].Element;ReturnValue;value;dfc-generated | | System;ArraySegment;ArraySegment;(T[]);Argument[0];Argument[this].SyntheticField[System.ArraySegment`1._array];value;dfc-generated | | System;ArraySegment;ArraySegment;(T[],System.Int32,System.Int32);Argument[0];Argument[this].SyntheticField[System.ArraySegment`1._array];value;dfc-generated | @@ -18365,28 +16327,19 @@ | System;IntPtr;System.Numerics.IAdditionOperators.op_Addition;(System.IntPtr,System.IntPtr);Argument[0];ReturnValue;taint;dfc-generated | | System;IntPtr;System.Numerics.IAdditionOperators.op_Addition;(System.IntPtr,System.IntPtr);Argument[1];ReturnValue;taint;dfc-generated | | System;IntPtr;op_Addition;(System.IntPtr,System.Int32);Argument[0];ReturnValue;taint;dfc-generated | -| System;Lazy;Lazy;(System.Func,TMetadata);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System;Lazy;Lazy;(System.Func,TMetadata);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System;Lazy;Lazy;(System.Func,TMetadata);Argument[1];Argument[this].SyntheticField[System.Lazy`2._metadata];value;dfc-generated | -| System;Lazy;Lazy;(System.Func,TMetadata);Argument[1];Argument[this].SyntheticField[System.Lazy`2._metadata];value;hq-generated | -| System;Lazy;Lazy;(System.Func,TMetadata,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System;Lazy;Lazy;(System.Func,TMetadata,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System;Lazy;Lazy;(System.Func,TMetadata,System.Boolean);Argument[1];Argument[this].SyntheticField[System.Lazy`2._metadata];value;dfc-generated | -| System;Lazy;Lazy;(System.Func,TMetadata,System.Boolean);Argument[1];Argument[this].SyntheticField[System.Lazy`2._metadata];value;hq-generated | -| System;Lazy;Lazy;(System.Func,TMetadata,System.Threading.LazyThreadSafetyMode);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System;Lazy;Lazy;(System.Func,TMetadata,System.Threading.LazyThreadSafetyMode);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System;Lazy;Lazy;(System.Func,TMetadata,System.Threading.LazyThreadSafetyMode);Argument[1];Argument[this].SyntheticField[System.Lazy`2._metadata];value;dfc-generated | -| System;Lazy;Lazy;(System.Func,TMetadata,System.Threading.LazyThreadSafetyMode);Argument[1];Argument[this].SyntheticField[System.Lazy`2._metadata];value;hq-generated | | System;Lazy;Lazy;(TMetadata);Argument[0];Argument[this].SyntheticField[System.Lazy`2._metadata];value;dfc-generated | | System;Lazy;Lazy;(TMetadata,System.Boolean);Argument[0];Argument[this].SyntheticField[System.Lazy`2._metadata];value;dfc-generated | | System;Lazy;Lazy;(TMetadata,System.Threading.LazyThreadSafetyMode);Argument[0];Argument[this].SyntheticField[System.Lazy`2._metadata];value;dfc-generated | | System;Lazy;get_Metadata;();Argument[this].SyntheticField[System.Lazy`2._metadata];ReturnValue;value;dfc-generated | | System;Lazy;Lazy;(System.Func);Argument[0].ReturnValue;Argument[this].Property[System.Lazy`1.Value];value;manual | -| System;Lazy;Lazy;(System.Func);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System;Lazy;Lazy;(System.Func,System.Boolean);Argument[0].ReturnValue;Argument[this].Property[System.Lazy`1.Value];value;manual | -| System;Lazy;Lazy;(System.Func,System.Boolean);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System;Lazy;Lazy;(System.Func,System.Threading.LazyThreadSafetyMode);Argument[0].ReturnValue;Argument[this].Property[System.Lazy`1.Value];value;manual | -| System;Lazy;Lazy;(System.Func,System.Threading.LazyThreadSafetyMode);Argument[0];Argument[0].Parameter[delegate-self];value;manual | | System;Lazy;Lazy;(T);Argument[0];Argument[this];taint;df-generated | | System;Lazy;ToString;();Argument[this];ReturnValue;taint;df-generated | | System;Lazy;get_Value;();Argument[this];ReturnValue;taint;manual | @@ -18414,7 +16367,6 @@ | System;Memory;ToString;();Argument[this].SyntheticField[System.Memory`1._object];ReturnValue;value;dfc-generated | | System;Memory;TryCopyTo;(System.Memory);Argument[this].Property[System.Memory`1.Span].Element;Argument[0].Property[System.Memory`1.Span].Element;value;dfc-generated | | System;MemoryExtensions+SpanSplitEnumerator;GetEnumerator;();Argument[this];ReturnValue;value;dfc-generated | -| System;MemoryExtensions+SpanSplitEnumerator;get_Current;();Argument[this].Property[System.MemoryExtensions+SpanSplitEnumerator`1.Current];ReturnValue;value;df-generated | | System;MemoryExtensions+SpanSplitEnumerator;get_Current;();Argument[this].Property[System.MemoryExtensions+SpanSplitEnumerator`1.Current];ReturnValue;value;dfc-generated | | System;MemoryExtensions+SpanSplitEnumerator;get_Source;();Argument[this];ReturnValue;taint;df-generated | | System;MemoryExtensions+TryWriteInterpolatedStringHandler;TryWriteInterpolatedStringHandler;(System.Int32,System.Int32,System.Span,System.Boolean);Argument[2];Argument[this];taint;df-generated | @@ -18603,10 +16555,7 @@ | System;MemoryExtensions;SequenceEqual;(System.Span,System.ReadOnlySpan,System.Collections.Generic.IEqualityComparer);Argument[1];Argument[2];taint;df-generated | | System;MemoryExtensions;Sort;(System.Span,TComparer);Argument[0];Argument[1];taint;df-generated | | System;MemoryExtensions;Sort;(System.Span,System.Comparison);Argument[0].Element;Argument[1].Parameter[0];value;dfc-generated | -| System;MemoryExtensions;Sort;(System.Span,System.Comparison);Argument[0].Element;Argument[1].Parameter[0];value;hq-generated | | System;MemoryExtensions;Sort;(System.Span,System.Comparison);Argument[0].Element;Argument[1].Parameter[1];value;dfc-generated | -| System;MemoryExtensions;Sort;(System.Span,System.Comparison);Argument[0].Element;Argument[1].Parameter[1];value;hq-generated | -| System;MemoryExtensions;Sort;(System.Span,System.Comparison);Argument[1];Argument[1].Parameter[delegate-self];value;dfc-generated | | System;MemoryExtensions;Sort;(System.Span,System.Comparison);Argument[1];Argument[1].Parameter[delegate-self];value;hq-generated | | System;MemoryExtensions;Sort;(System.Span,System.Span,TComparer);Argument[0];Argument[2];taint;df-generated | | System;MemoryExtensions;Sort;(System.Span,System.Span,System.Comparison);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | @@ -18715,7 +16664,6 @@ | System;ReadOnlyMemory;ToArray;();Argument[this].Property[System.ReadOnlyMemory`1.Span].Element;ReturnValue.Element;value;dfc-generated | | System;ReadOnlyMemory;ToString;();Argument[this].SyntheticField[System.ReadOnlyMemory`1._object];ReturnValue;value;dfc-generated | | System;ReadOnlyMemory;TryCopyTo;(System.Memory);Argument[this].Property[System.ReadOnlyMemory`1.Span].Element;Argument[0].Property[System.Memory`1.Span].Element;value;dfc-generated | -| System;ReadOnlySpan+Enumerator;get_Current;();Argument[this].Property[System.ReadOnlySpan`1+Enumerator.Current];ReturnValue;value;df-generated | | System;ReadOnlySpan+Enumerator;get_Current;();Argument[this].Property[System.ReadOnlySpan`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System;ReadOnlySpan;CopyTo;(System.Span);Argument[this].Element;Argument[0].Element;value;manual | | System;ReadOnlySpan;GetEnumerator;();Argument[this];ReturnValue;taint;df-generated | @@ -18743,7 +16691,6 @@ | System;RuntimeTypeHandle;get_Value;();Argument[this].SyntheticField[System.RuntimeTypeHandle.value];ReturnValue;value;dfc-generated | | System;SequencePosition;GetObject;();Argument[this].SyntheticField[System.SequencePosition._object];ReturnValue;value;dfc-generated | | System;SequencePosition;SequencePosition;(System.Object,System.Int32);Argument[0];Argument[this].SyntheticField[System.SequencePosition._object];value;dfc-generated | -| System;Span+Enumerator;get_Current;();Argument[this].Property[System.Span`1+Enumerator.Current];ReturnValue;value;df-generated | | System;Span+Enumerator;get_Current;();Argument[this].Property[System.Span`1+Enumerator.Current];ReturnValue;value;dfc-generated | | System;Span;Clear;();Argument[this].WithoutElement;Argument[this];value;manual | | System;Span;CopyTo;(System.Span);Argument[this].Element;Argument[0].Element;value;manual | @@ -18790,8 +16737,6 @@ | System;String;Concat;(System.Collections.Generic.IEnumerable);Argument[0].Element;ReturnValue;taint;manual | | System;String;Copy;(System.String);Argument[0];ReturnValue;value;manual | | System;String;Create;(System.Int32,TState,System.Buffers.SpanAction);Argument[1];Argument[2].Parameter[1];value;dfc-generated | -| System;String;Create;(System.Int32,TState,System.Buffers.SpanAction);Argument[1];Argument[2].Parameter[1];value;hq-generated | -| System;String;Create;(System.Int32,TState,System.Buffers.SpanAction);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System;String;Create;(System.Int32,TState,System.Buffers.SpanAction);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System;String;EnumerateRunes;();Argument[this];ReturnValue;taint;df-generated | | System;String;Format;(System.IFormatProvider,System.String,System.Object);Argument[1];ReturnValue;taint;manual | @@ -19269,14 +17214,10 @@ | System;TupleExtensions;ToValueTuple;(System.Tuple);Argument[0];ReturnValue;taint;df-generated | | System;TupleExtensions;ToValueTuple;(System.Tuple);Argument[0];ReturnValue;taint;df-generated | | System;TupleExtensions;ToValueTuple;(System.Tuple);Argument[0].Property[System.Tuple`1.Item1];ReturnValue.Field[System.ValueTuple`1.Item1];value;dfc-generated | -| System;Type;FindInterfaces;(System.Reflection.TypeFilter,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;dfc-generated | | System;Type;FindInterfaces;(System.Reflection.TypeFilter,System.Object);Argument[0];Argument[0].Parameter[delegate-self];value;hq-generated | | System;Type;FindInterfaces;(System.Reflection.TypeFilter,System.Object);Argument[1];Argument[0].Parameter[1];value;dfc-generated | -| System;Type;FindInterfaces;(System.Reflection.TypeFilter,System.Object);Argument[1];Argument[0].Parameter[1];value;hq-generated | -| System;Type;FindMembers;(System.Reflection.MemberTypes,System.Reflection.BindingFlags,System.Reflection.MemberFilter,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;dfc-generated | | System;Type;FindMembers;(System.Reflection.MemberTypes,System.Reflection.BindingFlags,System.Reflection.MemberFilter,System.Object);Argument[2];Argument[2].Parameter[delegate-self];value;hq-generated | | System;Type;FindMembers;(System.Reflection.MemberTypes,System.Reflection.BindingFlags,System.Reflection.MemberFilter,System.Object);Argument[3];Argument[2].Parameter[1];value;dfc-generated | -| System;Type;FindMembers;(System.Reflection.MemberTypes,System.Reflection.BindingFlags,System.Reflection.MemberFilter,System.Object);Argument[3];Argument[2].Parameter[1];value;hq-generated | | System;Type;GetConstructorImpl;(System.Reflection.BindingFlags,System.Reflection.Binder,System.Reflection.CallingConventions,System.Type[],System.Reflection.ParameterModifier[]);Argument[this];ReturnValue;taint;df-generated | | System;Type;GetConstructors;(System.Reflection.BindingFlags);Argument[this];ReturnValue;taint;df-generated | | System;Type;GetElementType;();Argument[this];ReturnValue;taint;df-generated | @@ -19442,17 +17383,7 @@ | System;UriParser;Resolve;(System.Uri,System.Uri,System.UriFormatException);Argument[0];ReturnValue;taint;df-generated | | System;UriParser;Resolve;(System.Uri,System.Uri,System.UriFormatException);Argument[1];ReturnValue;taint;df-generated | | System;UriTypeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2].Property[System.Uri.OriginalString];ReturnValue;taint;dfc-generated | -| System;UriTypeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue.Element;taint;dfc-generated | -| System;UriTypeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;taint;dfc-generated | -| System;UriTypeConverter;ConvertFrom;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object);Argument[2];ReturnValue;value;dfc-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;df-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Element;ReturnValue;taint;dfc-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Property[System.Uri.OriginalString];ReturnValue;value;df-generated | | System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2].Property[System.Uri.OriginalString];ReturnValue;value;dfc-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;df-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;taint;dfc-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;df-generated | -| System;UriTypeConverter;ConvertTo;(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type);Argument[2];ReturnValue;value;dfc-generated | | System;ValueTuple;Create;(T1,T2,T3,T4,T5,T6,T7,T8);Argument[0];ReturnValue.Field[System.ValueTuple`8.Item1];value;manual | | System;ValueTuple;Create;(T1,T2,T3,T4,T5,T6,T7,T8);Argument[1];ReturnValue.Field[System.ValueTuple`8.Item2];value;manual | | System;ValueTuple;Create;(T1,T2,T3,T4,T5,T6,T7,T8);Argument[2];ReturnValue.Field[System.ValueTuple`8.Item3];value;manual | diff --git a/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.ql b/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.ql index 7426226c957b..ea165092688e 100644 --- a/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.ql +++ b/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.ql @@ -19,12 +19,12 @@ class IncludeFilteredSummarizedCallable extends IncludeSummarizedCallable { * that propagates the same flow between `input` and `output`. */ override predicate relevantSummary( - SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue + SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue, Provenance p ) { - this.propagatesFlow(input, output, preservesValue, _) and + this.propagatesFlow(input, output, preservesValue, p, _, _) and not exists(IncludeSummarizedCallable rsc | isBaseCallableOrPrototype(rsc) and - rsc.propagatesFlow(input, output, preservesValue, _) and + rsc.propagatesFlow(input, output, preservesValue, _, _, _) and this.(UnboundCallable).overridesOrImplementsUnbound(rsc) ) } diff --git a/csharp/ql/test/shared/FlowSummaries.qll b/csharp/ql/test/shared/FlowSummaries.qll index a9fbeb8f08ea..2d28fe2bb6bd 100644 --- a/csharp/ql/test/shared/FlowSummaries.qll +++ b/csharp/ql/test/shared/FlowSummaries.qll @@ -13,8 +13,8 @@ class IncludeSummarizedCallable extends SummarizedCallableImplFinal { final string getCallableCsv() { result = getSignature(this) } predicate relevantSummary( - SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue + SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue, Provenance p ) { - this.propagatesFlow(input, output, preservesValue, _) + this.propagatesFlow(input, output, preservesValue, p, _, _) } } From c4e0dda178351d34484c6557a28c11dff6e21fb7 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 12 Jan 2026 20:24:34 +0100 Subject: [PATCH 153/433] Rust: Adapt to changes in `FlowSummaryImpl` --- .../lib/codeql/rust/dataflow/FlowSummary.qll | 10 +- .../dataflow/internal/FlowSummaryImpl.qll | 2 + .../rust/dataflow/internal/ModelsAsData.qll | 80 +++----- .../codeql/rust/frameworks/stdlib/Stdlib.qll | 4 +- .../rust/frameworks/stdlib/core.model.yml | 4 +- .../rust/frameworks/stdlib/ffi.model.yml | 4 +- .../rust/frameworks/stdlib/fs.model.yml | 4 + .../rust/frameworks/stdlib/io.model.yml | 15 ++ .../dataflow/local/inline-flow.expected | 91 +++++---- .../dataflow/modeled/inline-flow.expected | 1 - .../library-tests/dataflow/models/models.ql | 15 +- .../dataflow/sources/env/InlineFlow.expected | 38 ++-- .../dataflow/sources/file/InlineFlow.expected | 156 ++++++++-------- .../sources/stdin/InlineFlow.expected | 175 +++++++++--------- .../strings/inline-taint-flow.expected | 40 ++-- .../dataflow/taint/inline-taint-flow.expected | 160 ++++++++-------- .../security/CWE-022/TaintedPath.expected | 60 +++--- .../CWE-295/DisabledCertificateCheck.expected | 28 ++- .../UncontrolledAllocationSize.expected | 149 ++++++++------- .../HardcodedCryptographicValue.expected | 50 +++-- 20 files changed, 533 insertions(+), 553 deletions(-) diff --git a/rust/ql/lib/codeql/rust/dataflow/FlowSummary.qll b/rust/ql/lib/codeql/rust/dataflow/FlowSummary.qll index 0c41bb6d7a8e..6eb6641634d0 100644 --- a/rust/ql/lib/codeql/rust/dataflow/FlowSummary.qll +++ b/rust/ql/lib/codeql/rust/dataflow/FlowSummary.qll @@ -17,9 +17,13 @@ module SummarizedCallable { Range() { any() } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, + string model ) { - this.propagatesFlow(input, output, preservesValue) and model = "" + this.propagatesFlow(input, output, preservesValue) and + p = "manual" and + isExact = true and + model = "QL" } /** @@ -31,6 +35,6 @@ module SummarizedCallable { } } -final class SummarizedCallable = SummarizedCallable::Range; +class SummarizedCallable = Impl::Public::RelevantSummarizedCallable; final class Provenance = Impl::Public::Provenance; diff --git a/rust/ql/lib/codeql/rust/dataflow/internal/FlowSummaryImpl.qll b/rust/ql/lib/codeql/rust/dataflow/internal/FlowSummaryImpl.qll index 582e58612354..ec468747ab6c 100644 --- a/rust/ql/lib/codeql/rust/dataflow/internal/FlowSummaryImpl.qll +++ b/rust/ql/lib/codeql/rust/dataflow/internal/FlowSummaryImpl.qll @@ -30,6 +30,8 @@ module Input implements InputSig { class SummarizedCallableBase = Function; + predicate callableFromSource(SummarizedCallableBase c) { c.fromSource() } + abstract private class SourceSinkBase extends AstNode { /** Gets the associated call. */ abstract Call getCall(); diff --git a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll index efd1fc35dc57..e33bc3b461bd 100644 --- a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll +++ b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll @@ -111,60 +111,38 @@ predicate interpretModelForTest(QlBuiltins::ExtensionId madId, string model) { ) } -private predicate summaryModel( - Function f, string input, string output, string kind, Provenance provenance, boolean isInherited, - QlBuiltins::ExtensionId madId -) { - exists(string path, Function f0 | - summaryModel(path, input, output, kind, provenance, madId) and - f0.getCanonicalPath() = path - | - f = f0 and - isInherited = false - or - f.implements(f0) and - isInherited = true - ) -} - -private predicate summaryModelRelevant( - Function f, string input, string output, string kind, Provenance provenance, boolean isInherited, - QlBuiltins::ExtensionId madId -) { - summaryModel(f, input, output, kind, provenance, isInherited, madId) and - // Only apply generated or inherited models to functions in library code and - // when no strictly better model exists - if provenance.isGenerated() or isInherited = true - then - not f.fromSource() and - not exists(Provenance other | summaryModel(f, _, _, _, other, false, _) | - provenance.isGenerated() and other.isManual() +private class SummarizedCallableFromModel extends SummarizedCallable::Range { + string input_; + string output_; + string kind; + Provenance p_; + boolean isExact_; + QlBuiltins::ExtensionId madId; + + SummarizedCallableFromModel() { + exists(string path, Function f, Provenance p | + summaryModel(path, input_, output_, kind, p, madId) and + f.getCanonicalPath() = path + | + this = f and isExact_ = true and p_ = p or - provenance = other and isInherited = true + this.implements(f) and + isExact_ = false and + // making inherited models generated means that source code definitions and + // exact generated models take precedence + p_ = "hq-generated" ) - else any() -} - -private class SummarizedCallableFromModel extends SummarizedCallable::Range { - SummarizedCallableFromModel() { summaryModelRelevant(this, _, _, _, _, _, _) } - - override predicate hasProvenance(Provenance provenance) { - summaryModelRelevant(this, _, _, _, provenance, _, _) } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, string model ) { - exists(string kind, QlBuiltins::ExtensionId madId | - summaryModelRelevant(this, input, output, kind, _, _, madId) and - model = "MaD:" + madId.toString() - | - kind = "value" and - preservesValue = true - or - kind = "taint" and - preservesValue = false - ) + input = input_ and + output = output_ and + (if kind = "value" then preservesValue = true else preservesValue = false) and + p = p_ and + isExact = isExact_ and + model = "MaD:" + madId.toString() } } @@ -211,7 +189,7 @@ private module Debug { private predicate relevantManualModel(SummarizedCallableImpl sc, string can) { exists(Provenance manual | can = sc.getCanonicalPath() and - summaryModelRelevant(sc, _, _, _, manual, false, _) and + sc.(SummarizedCallableFromModel).propagatesFlow(_, _, _, manual, true, _) and manual.isManual() ) } @@ -221,7 +199,7 @@ private module Debug { ) { exists(RustDataFlow::ParameterPosition pos, TypeMention tm | relevantManualModel(sc, can) and - sc.propagatesFlow(input, _, _, _) and + sc.propagatesFlow(input, _, _, _, _, _) and input.head() = SummaryComponent::argument(pos) and p = pos.getParameterIn(sc.getParamList()) and tm.getType() instanceof RefType and @@ -238,7 +216,7 @@ private module Debug { ) { exists(TypeMention tm | relevantManualModel(sc, can) and - sc.propagatesFlow(_, output, _, _) and + sc.propagatesFlow(_, output, _, _, _, _) and tm.getType() instanceof RefType and output.head() = SummaryComponent::return(_) and not output.tail().head() = diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll b/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll index cc07beb2b714..b839f9d55255 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/Stdlib.qll @@ -41,11 +41,13 @@ private class ReflexiveFrom extends SummarizedCallable::Range { } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, string model ) { input = "Argument[0]" and output = "ReturnValue" and preservesValue = true and + p = "manual" and + isExact = true and model = "ReflexiveFrom" } } diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml b/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml index 94aae55a60e7..c81926a607b3 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/core.model.yml @@ -12,9 +12,9 @@ extensions: - ["<_ as core::ops::index::IndexMut>::index_mut", "Argument[self].Reference.Element", "ReturnValue.Reference", "value", "manual"] # Unary operators - ["<_ as core::ops::arith::Neg>::neg", "Argument[self]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::arith::Neg>::neg", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["::neg", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] - ["<_ as core::ops::bit::Not>::not", "Argument[self]", "ReturnValue", "taint", "manual"] - - ["<_ as core::ops::bit::Not>::not", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] + - ["::not", "Argument[self].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] # Arithmetic operators - ["<_ as core::ops::arith::Add>::add", "Argument[self,0]", "ReturnValue", "taint", "manual"] - ["<_ as core::ops::arith::Add>::add", "Argument[self,0].Field[core::num::wrapping::Wrapping(0)]", "ReturnValue.Field[core::num::wrapping::Wrapping(0)]", "taint", "manual"] diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/ffi.model.yml b/rust/ql/lib/codeql/rust/frameworks/stdlib/ffi.model.yml index 0f7545f8a924..83ba0f81776a 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/ffi.model.yml +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/ffi.model.yml @@ -5,4 +5,6 @@ extensions: data: - ["::to_str", "Argument[self].Reference.Field[std::ffi::os_str::OsStr::inner]", "ReturnValue.Field[core::option::Option::Some(0)].Reference", "taint", "manual"] - ["::to_string_lossy", "Argument[self].Reference.Field[std::ffi::os_str::OsStr::inner]", "ReturnValue.Field[alloc::borrow::Cow::Owned(0)]", "taint", "manual"] - - ["::as_encoded_bytes", "Argument[self].Reference.Field[std::ffi::os_str::OsStr::inner]", "ReturnValue.Reference", "taint", "manual"] \ No newline at end of file + - ["::as_encoded_bytes", "Argument[self].Reference.Field[std::ffi::os_str::OsStr::inner]", "ReturnValue.Reference", "taint", "manual"] + # Overwrite generated model + - ["::deref", "Argument[self].Reference", "ReturnValue.Reference", "taint", "manual"] \ No newline at end of file diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/fs.model.yml b/rust/ql/lib/codeql/rust/frameworks/stdlib/fs.model.yml index 7532a06a178d..96f32915f739 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/fs.model.yml +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/fs.model.yml @@ -86,3 +86,7 @@ extensions: - ["::len", "Argument[self].Reference", "ReturnValue", "taint", "manual"] - ["::modified", "Argument[self].Reference", "ReturnValue.Field[core::result::Result::Ok(0)]", "taint", "manual"] - ["::permissions", "Argument[self].Reference", "ReturnValue", "taint", "manual"] + # Overwrite generated models + - ["::read_to_end", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::read_to_string", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + \ No newline at end of file diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/io.model.yml b/rust/ql/lib/codeql/rust/frameworks/stdlib/io.model.yml index afb6757ef66e..d3eb2fa58af3 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/io.model.yml +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/io.model.yml @@ -26,3 +26,18 @@ extensions: - ["::lock", "Argument[self].Reference", "ReturnValue", "taint", "manual"] - ["::read_line", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] - ["::next", "Argument[self].Reference.Element", "ReturnValue.Field[core::option::Option::Some(0)].Field[core::result::Result::Ok(0)]", "value", "manual"] + # Overwrite generated models + - ["::read", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::read_to_string", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::read_to_end", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::read_exact", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::read", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::read_to_string", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::read_to_end", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::read_exact", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::fill_buf", "Argument[self].Reference", "ReturnValue.Field[core::result::Result::Ok(0)]", "taint", "manual"] + - ["::read", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::read_to_string", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::read_to_end", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::read_exact", "Argument[self].Reference", "Argument[0].Reference", "taint", "manual"] + - ["::fill_buf", "Argument[self].Reference", "ReturnValue.Field[core::result::Result::Ok(0)]", "taint", "manual"] diff --git a/rust/ql/test/library-tests/dataflow/local/inline-flow.expected b/rust/ql/test/library-tests/dataflow/local/inline-flow.expected index 0a130b8a2888..3b8052fdc84a 100644 --- a/rust/ql/test/library-tests/dataflow/local/inline-flow.expected +++ b/rust/ql/test/library-tests/dataflow/local/inline-flow.expected @@ -1,25 +1,23 @@ models | 1 | Summary: <& as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue; value | | 2 | Summary: <_ as alloc::string::ToString>::to_string; Argument[self].Reference; ReturnValue; taint | -| 3 | Summary: <_ as core::convert::From>::from; Argument[0]; ReturnValue; taint | -| 4 | Summary: <_ as core::convert::Into>::into; Argument[self].Element; ReturnValue.Element; taint | -| 5 | Summary: <_ as core::convert::Into>::into; Argument[self].Reference.Element; ReturnValue.Element; taint | -| 6 | Summary: <_ as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue.Reference; taint | -| 7 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | -| 8 | Summary: ::deref; Argument[self].Reference.Field[alloc::boxed::Box(0)]; ReturnValue.Reference; value | -| 9 | Summary: ::new; Argument[0]; ReturnValue.Field[alloc::boxed::Box(0)]; value | -| 10 | Summary: ::deref; Argument[self]; ReturnValue; value | -| 11 | Summary: ::from; Argument[0]; ReturnValue; taint | -| 12 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 13 | Summary: ::unwrap_or; Argument[0]; ReturnValue; value | -| 14 | Summary: ::unwrap_or; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 15 | Summary: ::unwrap_or_else; Argument[0].ReturnValue; ReturnValue; value | -| 16 | Summary: ::unwrap_or_else; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 17 | Summary: ::err; Argument[self].Field[core::result::Result::Err(0)]; ReturnValue.Field[core::option::Option::Some(0)]; value | -| 18 | Summary: ::expect; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 19 | Summary: ::expect_err; Argument[self].Field[core::result::Result::Err(0)]; ReturnValue; value | -| 20 | Summary: ::ok; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue.Field[core::option::Option::Some(0)]; value | -| 21 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 3 | Summary: <_ as core::convert::Into>::into; Argument[self].Element; ReturnValue.Element; taint | +| 4 | Summary: <_ as core::convert::Into>::into; Argument[self].Reference.Element; ReturnValue.Element; taint | +| 5 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | +| 6 | Summary: ::deref; Argument[self].Reference.Field[alloc::boxed::Box(0)]; ReturnValue.Reference; value | +| 7 | Summary: ::new; Argument[0]; ReturnValue.Field[alloc::boxed::Box(0)]; value | +| 8 | Summary: ::deref; Argument[self]; ReturnValue; value | +| 9 | Summary: ::from; Argument[0]; ReturnValue; taint | +| 10 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 11 | Summary: ::unwrap_or; Argument[0]; ReturnValue; value | +| 12 | Summary: ::unwrap_or; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 13 | Summary: ::unwrap_or_else; Argument[0].ReturnValue; ReturnValue; value | +| 14 | Summary: ::unwrap_or_else; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 15 | Summary: ::err; Argument[self].Field[core::result::Result::Err(0)]; ReturnValue.Field[core::option::Option::Some(0)]; value | +| 16 | Summary: ::expect; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 17 | Summary: ::expect_err; Argument[self].Field[core::result::Result::Err(0)]; ReturnValue; value | +| 18 | Summary: ::ok; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue.Field[core::option::Option::Some(0)]; value | +| 19 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | edges | main.rs:23:9:23:9 | s | main.rs:24:10:24:10 | s | provenance | | | main.rs:23:9:23:9 | s | main.rs:26:12:26:12 | x | provenance | | @@ -47,8 +45,8 @@ edges | main.rs:82:5:82:5 | l | main.rs:83:10:83:10 | l | provenance | | | main.rs:115:9:115:9 | i [Box(0)] | main.rs:116:11:116:11 | i [Box(0)] | provenance | | | main.rs:115:13:115:31 | ...::new(...) [Box(0)] | main.rs:115:9:115:9 | i [Box(0)] | provenance | | -| main.rs:115:22:115:30 | source(...) | main.rs:115:13:115:31 | ...::new(...) [Box(0)] | provenance | MaD:9 | -| main.rs:116:11:116:11 | i [Box(0)] | main.rs:116:10:116:11 | * ... | provenance | MaD:8 | +| main.rs:115:22:115:30 | source(...) | main.rs:115:13:115:31 | ...::new(...) [Box(0)] | provenance | MaD:7 | +| main.rs:116:11:116:11 | i [Box(0)] | main.rs:116:10:116:11 | * ... | provenance | MaD:6 | | main.rs:123:9:123:9 | a [tuple.0] | main.rs:124:10:124:10 | a [tuple.0] | provenance | | | main.rs:123:13:123:26 | TupleExpr [tuple.0] | main.rs:123:9:123:9 | a [tuple.0] | provenance | | | main.rs:123:14:123:22 | source(...) | main.rs:123:13:123:26 | TupleExpr [tuple.0] | provenance | | @@ -131,17 +129,17 @@ edges | main.rs:278:9:278:10 | s1 [Some] | main.rs:279:10:279:11 | s1 [Some] | provenance | | | main.rs:278:14:278:29 | Some(...) [Some] | main.rs:278:9:278:10 | s1 [Some] | provenance | | | main.rs:278:19:278:28 | source(...) | main.rs:278:14:278:29 | Some(...) [Some] | provenance | | -| main.rs:279:10:279:11 | s1 [Some] | main.rs:279:10:279:20 | s1.unwrap() | provenance | MaD:12 | +| main.rs:279:10:279:11 | s1 [Some] | main.rs:279:10:279:20 | s1.unwrap() | provenance | MaD:10 | | main.rs:283:9:283:10 | s1 [Some] | main.rs:284:10:284:11 | s1 [Some] | provenance | | | main.rs:283:14:283:29 | Some(...) [Some] | main.rs:283:9:283:10 | s1 [Some] | provenance | | | main.rs:283:19:283:28 | source(...) | main.rs:283:14:283:29 | Some(...) [Some] | provenance | | -| main.rs:284:10:284:11 | s1 [Some] | main.rs:284:10:284:24 | s1.unwrap_or(...) | provenance | MaD:14 | -| main.rs:287:23:287:32 | source(...) | main.rs:287:10:287:33 | s2.unwrap_or(...) | provenance | MaD:13 | +| main.rs:284:10:284:11 | s1 [Some] | main.rs:284:10:284:24 | s1.unwrap_or(...) | provenance | MaD:12 | +| main.rs:287:23:287:32 | source(...) | main.rs:287:10:287:33 | s2.unwrap_or(...) | provenance | MaD:11 | | main.rs:291:9:291:10 | s1 [Some] | main.rs:292:10:292:11 | s1 [Some] | provenance | | | main.rs:291:14:291:29 | Some(...) [Some] | main.rs:291:9:291:10 | s1 [Some] | provenance | | | main.rs:291:19:291:28 | source(...) | main.rs:291:14:291:29 | Some(...) [Some] | provenance | | -| main.rs:292:10:292:11 | s1 [Some] | main.rs:292:10:292:32 | s1.unwrap_or_else(...) | provenance | MaD:16 | -| main.rs:295:31:295:40 | source(...) | main.rs:295:10:295:41 | s2.unwrap_or_else(...) | provenance | MaD:15 | +| main.rs:292:10:292:11 | s1 [Some] | main.rs:292:10:292:32 | s1.unwrap_or_else(...) | provenance | MaD:14 | +| main.rs:295:31:295:40 | source(...) | main.rs:295:10:295:41 | s2.unwrap_or_else(...) | provenance | MaD:13 | | main.rs:299:9:299:10 | s1 [Some] | main.rs:301:14:301:15 | s1 [Some] | provenance | | | main.rs:299:14:299:29 | Some(...) [Some] | main.rs:299:9:299:10 | s1 [Some] | provenance | | | main.rs:299:19:299:28 | source(...) | main.rs:299:14:299:29 | Some(...) [Some] | provenance | | @@ -152,16 +150,16 @@ edges | main.rs:308:32:308:45 | Ok(...) [Ok] | main.rs:308:9:308:10 | r1 [Ok] | provenance | | | main.rs:308:35:308:44 | source(...) | main.rs:308:32:308:45 | Ok(...) [Ok] | provenance | | | main.rs:309:9:309:11 | o1a [Some] | main.rs:311:10:311:12 | o1a [Some] | provenance | | -| main.rs:309:28:309:29 | r1 [Ok] | main.rs:309:28:309:34 | r1.ok() [Some] | provenance | MaD:20 | +| main.rs:309:28:309:29 | r1 [Ok] | main.rs:309:28:309:34 | r1.ok() [Some] | provenance | MaD:18 | | main.rs:309:28:309:34 | r1.ok() [Some] | main.rs:309:9:309:11 | o1a [Some] | provenance | | -| main.rs:311:10:311:12 | o1a [Some] | main.rs:311:10:311:21 | o1a.unwrap() | provenance | MaD:12 | +| main.rs:311:10:311:12 | o1a [Some] | main.rs:311:10:311:21 | o1a.unwrap() | provenance | MaD:10 | | main.rs:314:9:314:10 | r2 [Err] | main.rs:316:28:316:29 | r2 [Err] | provenance | | | main.rs:314:32:314:46 | Err(...) [Err] | main.rs:314:9:314:10 | r2 [Err] | provenance | | | main.rs:314:36:314:45 | source(...) | main.rs:314:32:314:46 | Err(...) [Err] | provenance | | | main.rs:316:9:316:11 | o2b [Some] | main.rs:318:10:318:12 | o2b [Some] | provenance | | -| main.rs:316:28:316:29 | r2 [Err] | main.rs:316:28:316:35 | r2.err() [Some] | provenance | MaD:17 | +| main.rs:316:28:316:29 | r2 [Err] | main.rs:316:28:316:35 | r2.err() [Some] | provenance | MaD:15 | | main.rs:316:28:316:35 | r2.err() [Some] | main.rs:316:9:316:11 | o2b [Some] | provenance | | -| main.rs:318:10:318:12 | o2b [Some] | main.rs:318:10:318:21 | o2b.unwrap() | provenance | MaD:12 | +| main.rs:318:10:318:12 | o2b [Some] | main.rs:318:10:318:21 | o2b.unwrap() | provenance | MaD:10 | | main.rs:322:9:322:10 | s1 [Ok] | main.rs:325:14:325:15 | s1 [Ok] | provenance | | | main.rs:322:32:322:45 | Ok(...) [Ok] | main.rs:322:9:322:10 | s1 [Ok] | provenance | | | main.rs:322:35:322:44 | source(...) | main.rs:322:32:322:45 | Ok(...) [Ok] | provenance | | @@ -171,11 +169,11 @@ edges | main.rs:335:9:335:10 | s1 [Ok] | main.rs:336:10:336:11 | s1 [Ok] | provenance | | | main.rs:335:32:335:45 | Ok(...) [Ok] | main.rs:335:9:335:10 | s1 [Ok] | provenance | | | main.rs:335:35:335:44 | source(...) | main.rs:335:32:335:45 | Ok(...) [Ok] | provenance | | -| main.rs:336:10:336:11 | s1 [Ok] | main.rs:336:10:336:22 | s1.expect(...) | provenance | MaD:18 | +| main.rs:336:10:336:11 | s1 [Ok] | main.rs:336:10:336:22 | s1.expect(...) | provenance | MaD:16 | | main.rs:339:9:339:10 | s2 [Err] | main.rs:341:10:341:11 | s2 [Err] | provenance | | | main.rs:339:32:339:46 | Err(...) [Err] | main.rs:339:9:339:10 | s2 [Err] | provenance | | | main.rs:339:36:339:45 | source(...) | main.rs:339:32:339:46 | Err(...) [Err] | provenance | | -| main.rs:341:10:341:11 | s2 [Err] | main.rs:341:10:341:26 | s2.expect_err(...) | provenance | MaD:19 | +| main.rs:341:10:341:11 | s2 [Err] | main.rs:341:10:341:26 | s2.expect_err(...) | provenance | MaD:17 | | main.rs:350:9:350:10 | s1 [A] | main.rs:352:11:352:12 | s1 [A] | provenance | | | main.rs:350:14:350:39 | ...::A(...) [A] | main.rs:350:9:350:10 | s1 [A] | provenance | | | main.rs:350:29:350:38 | source(...) | main.rs:350:14:350:39 | ...::A(...) [A] | provenance | | @@ -224,13 +222,13 @@ edges | main.rs:430:16:430:33 | [...] [element] | main.rs:430:9:430:12 | arr1 [element] | provenance | | | main.rs:430:23:430:32 | source(...) | main.rs:430:16:430:33 | [...] [element] | provenance | | | main.rs:431:9:431:10 | n1 | main.rs:432:10:432:11 | n1 | provenance | | -| main.rs:431:14:431:17 | arr1 [element] | main.rs:431:14:431:20 | arr1[2] | provenance | MaD:7 | +| main.rs:431:14:431:17 | arr1 [element] | main.rs:431:14:431:20 | arr1[2] | provenance | MaD:5 | | main.rs:431:14:431:20 | arr1[2] | main.rs:431:9:431:10 | n1 | provenance | | | main.rs:434:9:434:12 | arr2 [element] | main.rs:435:14:435:17 | arr2 [element] | provenance | | | main.rs:434:16:434:31 | [...; 10] [element] | main.rs:434:9:434:12 | arr2 [element] | provenance | | | main.rs:434:17:434:26 | source(...) | main.rs:434:16:434:31 | [...; 10] [element] | provenance | | | main.rs:435:9:435:10 | n2 | main.rs:436:10:436:11 | n2 | provenance | | -| main.rs:435:14:435:17 | arr2 [element] | main.rs:435:14:435:20 | arr2[4] | provenance | MaD:7 | +| main.rs:435:14:435:17 | arr2 [element] | main.rs:435:14:435:20 | arr2[4] | provenance | MaD:5 | | main.rs:435:14:435:20 | arr2[4] | main.rs:435:9:435:10 | n2 | provenance | | | main.rs:444:9:444:12 | arr1 [element] | main.rs:445:15:445:18 | arr1 [element] | provenance | | | main.rs:444:16:444:33 | [...] [element] | main.rs:444:9:444:12 | arr1 [element] | provenance | | @@ -251,9 +249,9 @@ edges | main.rs:470:5:470:11 | [post] mut_arr [element] | main.rs:473:10:473:16 | mut_arr [element] | provenance | | | main.rs:470:18:470:27 | source(...) | main.rs:470:5:470:11 | [post] mut_arr [element] | provenance | | | main.rs:471:9:471:9 | d | main.rs:472:10:472:10 | d | provenance | | -| main.rs:471:13:471:19 | mut_arr [element] | main.rs:471:13:471:22 | mut_arr[1] | provenance | MaD:7 | +| main.rs:471:13:471:19 | mut_arr [element] | main.rs:471:13:471:22 | mut_arr[1] | provenance | MaD:5 | | main.rs:471:13:471:22 | mut_arr[1] | main.rs:471:9:471:9 | d | provenance | | -| main.rs:473:10:473:16 | mut_arr [element] | main.rs:473:10:473:19 | mut_arr[0] | provenance | MaD:7 | +| main.rs:473:10:473:16 | mut_arr [element] | main.rs:473:10:473:19 | mut_arr[0] | provenance | MaD:5 | | main.rs:496:9:496:9 | s | main.rs:497:10:497:10 | s | provenance | | | main.rs:496:25:496:26 | source(...) | main.rs:496:9:496:9 | s | provenance | | | main.rs:505:9:505:9 | a | main.rs:506:13:506:13 | a | provenance | | @@ -265,26 +263,24 @@ edges | main.rs:506:13:506:13 | a | main.rs:506:13:506:25 | a.to_string() | provenance | MaD:2 | | main.rs:506:13:506:25 | a.to_string() | main.rs:506:9:506:9 | b | provenance | | | main.rs:507:9:507:9 | c | main.rs:512:10:512:10 | c | provenance | | -| main.rs:507:13:507:13 | b | main.rs:507:13:507:28 | b.parse() [Ok] | provenance | MaD:6 | -| main.rs:507:13:507:13 | b | main.rs:507:13:507:28 | b.parse() [Ok] | provenance | MaD:10 | -| main.rs:507:13:507:28 | b.parse() [Ok] | main.rs:507:13:507:37 | ... .unwrap() | provenance | MaD:21 | +| main.rs:507:13:507:13 | b | main.rs:507:13:507:28 | b.parse() [Ok] | provenance | MaD:8 | +| main.rs:507:13:507:28 | b.parse() [Ok] | main.rs:507:13:507:37 | ... .unwrap() | provenance | MaD:19 | | main.rs:507:13:507:37 | ... .unwrap() | main.rs:507:9:507:9 | c | provenance | | | main.rs:508:9:508:9 | d | main.rs:513:10:513:10 | d | provenance | | -| main.rs:508:18:508:18 | b | main.rs:508:18:508:26 | b.parse() [Ok] | provenance | MaD:6 | -| main.rs:508:18:508:18 | b | main.rs:508:18:508:26 | b.parse() [Ok] | provenance | MaD:10 | -| main.rs:508:18:508:26 | b.parse() [Ok] | main.rs:508:18:508:35 | ... .unwrap() | provenance | MaD:21 | +| main.rs:508:18:508:18 | b | main.rs:508:18:508:26 | b.parse() [Ok] | provenance | MaD:8 | +| main.rs:508:18:508:26 | b.parse() [Ok] | main.rs:508:18:508:35 | ... .unwrap() | provenance | MaD:19 | | main.rs:508:18:508:35 | ... .unwrap() | main.rs:508:9:508:9 | d | provenance | | | main.rs:517:9:517:10 | vs [element] | main.rs:519:10:519:11 | vs [element] | provenance | | | main.rs:517:9:517:10 | vs [element] | main.rs:523:14:523:15 | vs [element] | provenance | | | main.rs:517:14:517:34 | [...] [element] | main.rs:517:9:517:10 | vs [element] | provenance | | | main.rs:517:15:517:24 | source(...) | main.rs:517:14:517:34 | [...] [element] | provenance | | -| main.rs:519:10:519:11 | vs [element] | main.rs:519:10:519:14 | vs[0] | provenance | MaD:7 | +| main.rs:519:10:519:11 | vs [element] | main.rs:519:10:519:14 | vs[0] | provenance | MaD:5 | | main.rs:523:9:523:9 | v | main.rs:524:14:524:14 | v | provenance | | | main.rs:523:14:523:15 | vs [element] | main.rs:523:9:523:9 | v | provenance | | | main.rs:542:9:542:18 | mut vs_mut [element] | main.rs:544:10:544:15 | vs_mut [element] | provenance | | | main.rs:542:22:542:42 | [...] [element] | main.rs:542:9:542:18 | mut vs_mut [element] | provenance | | | main.rs:542:23:542:32 | source(...) | main.rs:542:22:542:42 | [...] [element] | provenance | | -| main.rs:544:10:544:15 | vs_mut [element] | main.rs:544:10:544:18 | vs_mut[0] | provenance | MaD:7 | +| main.rs:544:10:544:15 | vs_mut [element] | main.rs:544:10:544:18 | vs_mut[0] | provenance | MaD:5 | | main.rs:554:9:554:9 | a | main.rs:559:10:559:10 | a | provenance | | | main.rs:554:13:554:22 | source(...) | main.rs:554:9:554:9 | a | provenance | | | main.rs:555:9:555:9 | b | main.rs:560:15:560:15 | b | provenance | | @@ -301,17 +297,16 @@ edges | main.rs:566:9:566:9 | a | main.rs:569:10:569:10 | a | provenance | | | main.rs:566:9:566:9 | a | main.rs:570:20:570:20 | a | provenance | | | main.rs:566:18:566:27 | source(...) | main.rs:566:9:566:9 | a | provenance | | +| main.rs:569:10:569:10 | a | main.rs:569:10:569:17 | a.into() | provenance | MaD:3 | | main.rs:569:10:569:10 | a | main.rs:569:10:569:17 | a.into() | provenance | MaD:4 | -| main.rs:569:10:569:10 | a | main.rs:569:10:569:17 | a.into() | provenance | MaD:5 | | main.rs:570:20:570:20 | a | main.rs:570:10:570:21 | ...::from(...) | provenance | ReflexiveFrom | | main.rs:572:9:572:9 | b | main.rs:574:10:574:17 | b as i64 | provenance | | | main.rs:572:9:572:9 | b | main.rs:575:10:575:10 | b | provenance | | | main.rs:572:9:572:9 | b | main.rs:576:20:576:20 | b | provenance | | | main.rs:572:18:572:27 | source(...) | main.rs:572:9:572:9 | b | provenance | | +| main.rs:575:10:575:10 | b | main.rs:575:10:575:17 | b.into() | provenance | MaD:3 | | main.rs:575:10:575:10 | b | main.rs:575:10:575:17 | b.into() | provenance | MaD:4 | -| main.rs:575:10:575:10 | b | main.rs:575:10:575:17 | b.into() | provenance | MaD:5 | -| main.rs:576:20:576:20 | b | main.rs:576:10:576:21 | ...::from(...) | provenance | MaD:3 | -| main.rs:576:20:576:20 | b | main.rs:576:10:576:21 | ...::from(...) | provenance | MaD:11 | +| main.rs:576:20:576:20 | b | main.rs:576:10:576:21 | ...::from(...) | provenance | MaD:9 | nodes | main.rs:19:10:19:18 | source(...) | semmle.label | source(...) | | main.rs:23:9:23:9 | s | semmle.label | s | diff --git a/rust/ql/test/library-tests/dataflow/modeled/inline-flow.expected b/rust/ql/test/library-tests/dataflow/modeled/inline-flow.expected index 58a421b4d3f7..cba4f0a3028e 100644 --- a/rust/ql/test/library-tests/dataflow/modeled/inline-flow.expected +++ b/rust/ql/test/library-tests/dataflow/modeled/inline-flow.expected @@ -47,7 +47,6 @@ edges | main.rs:26:13:26:22 | source(...) | main.rs:26:9:26:9 | a | provenance | | | main.rs:28:9:28:9 | b | main.rs:29:10:29:10 | b | provenance | | | main.rs:28:9:28:9 | b [&ref] | main.rs:29:10:29:10 | b | provenance | | -| main.rs:28:13:28:13 | a | main.rs:28:13:28:21 | a.clone() | provenance | MaD:2 | | main.rs:28:13:28:13 | a | main.rs:28:13:28:21 | a.clone() | provenance | MaD:10 | | main.rs:28:13:28:13 | a | main.rs:28:13:28:21 | a.clone() [&ref] | provenance | MaD:11 | | main.rs:28:13:28:21 | a.clone() | main.rs:28:9:28:9 | b | provenance | | diff --git a/rust/ql/test/library-tests/dataflow/models/models.ql b/rust/ql/test/library-tests/dataflow/models/models.ql index e621834bdec7..c472ccb3a908 100644 --- a/rust/ql/test/library-tests/dataflow/models/models.ql +++ b/rust/ql/test/library-tests/dataflow/models/models.ql @@ -13,8 +13,12 @@ import codeql.rust.dataflow.FlowSink import PathGraph query predicate invalidSpecComponent(SummarizedCallable sc, string s, string c) { - (sc.propagatesFlow(s, _, _) or sc.propagatesFlow(_, s, _)) and - Private::External::invalidSpecComponent(s, c) + exists(Provenance p | + Private::External::invalidSpecComponent(s, c) and + p.isManual() + | + sc.propagatesFlow(s, _, _, p, _, _) or sc.propagatesFlow(_, s, _, p, _, _) + ) } // not defined in `models.ext.yml`, in order to test that we can also define @@ -22,13 +26,10 @@ query predicate invalidSpecComponent(SummarizedCallable sc, string s, string c) private class SummarizedCallableIdentity extends SummarizedCallable::Range { SummarizedCallableIdentity() { this.getName().getText() = "identity" } - override predicate propagatesFlow( - string input, string output, boolean preservesValue, string provenance - ) { + override predicate propagatesFlow(string input, string output, boolean preservesValue) { input = "Argument[0]" and output = "ReturnValue" and - preservesValue = true and - provenance = "QL" + preservesValue = true } } diff --git a/rust/ql/test/library-tests/dataflow/sources/env/InlineFlow.expected b/rust/ql/test/library-tests/dataflow/sources/env/InlineFlow.expected index 7456dda7e631..78527083096e 100644 --- a/rust/ql/test/library-tests/dataflow/sources/env/InlineFlow.expected +++ b/rust/ql/test/library-tests/dataflow/sources/env/InlineFlow.expected @@ -10,23 +10,22 @@ models | 9 | Source: std::env::vars_os; ReturnValue.Element; environment | | 10 | Summary: <_ as core::iter::traits::iterator::Iterator>::collect; Argument[self].Element; ReturnValue.Element; value | | 11 | Summary: <_ as core::iter::traits::iterator::Iterator>::nth; Argument[self].Reference.Element; ReturnValue.Field[core::option::Option::Some(0)]; value | -| 12 | Summary: <_ as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue.Reference; taint | -| 13 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | -| 14 | Summary: ::deref; Argument[self]; ReturnValue; value | -| 15 | Summary: ::expect; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 16 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 17 | Summary: ::expect; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 18 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 12 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | +| 13 | Summary: ::deref; Argument[self]; ReturnValue; value | +| 14 | Summary: ::expect; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 15 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 16 | Summary: ::expect; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 17 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | edges | test.rs:6:10:6:22 | ...::var | test.rs:6:10:6:30 | ...::var(...) | provenance | Src:MaD:6 | | test.rs:7:10:7:25 | ...::var_os | test.rs:7:10:7:33 | ...::var_os(...) | provenance | Src:MaD:7 | | test.rs:9:9:9:12 | var1 | test.rs:12:10:12:13 | var1 | provenance | | | test.rs:9:16:9:28 | ...::var | test.rs:9:16:9:36 | ...::var(...) [Ok] | provenance | Src:MaD:6 | -| test.rs:9:16:9:36 | ...::var(...) [Ok] | test.rs:9:16:9:59 | ... .expect(...) | provenance | MaD:17 | +| test.rs:9:16:9:36 | ...::var(...) [Ok] | test.rs:9:16:9:59 | ... .expect(...) | provenance | MaD:16 | | test.rs:9:16:9:59 | ... .expect(...) | test.rs:9:9:9:12 | var1 | provenance | | | test.rs:10:9:10:12 | var2 | test.rs:13:10:13:13 | var2 | provenance | | | test.rs:10:16:10:31 | ...::var_os | test.rs:10:16:10:39 | ...::var_os(...) [Some] | provenance | Src:MaD:7 | -| test.rs:10:16:10:39 | ...::var_os(...) [Some] | test.rs:10:16:10:48 | ... .unwrap() | provenance | MaD:16 | +| test.rs:10:16:10:39 | ...::var_os(...) [Some] | test.rs:10:16:10:48 | ... .unwrap() | provenance | MaD:15 | | test.rs:10:16:10:48 | ... .unwrap() | test.rs:10:9:10:12 | var2 | provenance | | | test.rs:15:9:15:20 | TuplePat | test.rs:16:14:16:16 | key | provenance | | | test.rs:15:9:15:20 | TuplePat | test.rs:17:14:17:18 | value | provenance | | @@ -43,29 +42,28 @@ edges | test.rs:27:29:27:54 | ... .collect() [element] | test.rs:27:9:27:12 | args [element] | provenance | | | test.rs:28:9:28:15 | my_path [&ref] | test.rs:34:10:34:16 | my_path | provenance | | | test.rs:28:19:28:26 | &... [&ref] | test.rs:28:9:28:15 | my_path [&ref] | provenance | | -| test.rs:28:20:28:23 | args [element] | test.rs:28:20:28:26 | args[0] | provenance | MaD:13 | +| test.rs:28:20:28:23 | args [element] | test.rs:28:20:28:26 | args[0] | provenance | MaD:12 | | test.rs:28:20:28:26 | args[0] | test.rs:28:19:28:26 | &... [&ref] | provenance | | | test.rs:29:9:29:12 | arg1 [&ref] | test.rs:35:10:35:13 | arg1 | provenance | | | test.rs:29:16:29:23 | &... [&ref] | test.rs:29:9:29:12 | arg1 [&ref] | provenance | | -| test.rs:29:17:29:20 | args [element] | test.rs:29:17:29:23 | args[1] | provenance | MaD:13 | +| test.rs:29:17:29:20 | args [element] | test.rs:29:17:29:23 | args[1] | provenance | MaD:12 | | test.rs:29:17:29:23 | args[1] | test.rs:29:16:29:23 | &... [&ref] | provenance | | | test.rs:30:9:30:12 | arg2 | test.rs:36:10:36:13 | arg2 | provenance | | | test.rs:30:16:30:29 | ...::args | test.rs:30:16:30:31 | ...::args(...) [element] | provenance | Src:MaD:1 | | test.rs:30:16:30:31 | ...::args(...) [element] | test.rs:30:16:30:38 | ... .nth(...) [Some] | provenance | MaD:11 | -| test.rs:30:16:30:38 | ... .nth(...) [Some] | test.rs:30:16:30:47 | ... .unwrap() | provenance | MaD:16 | +| test.rs:30:16:30:38 | ... .nth(...) [Some] | test.rs:30:16:30:47 | ... .unwrap() | provenance | MaD:15 | | test.rs:30:16:30:47 | ... .unwrap() | test.rs:30:9:30:12 | arg2 | provenance | | | test.rs:31:9:31:12 | arg3 | test.rs:37:10:37:13 | arg3 | provenance | | | test.rs:31:16:31:32 | ...::args_os | test.rs:31:16:31:34 | ...::args_os(...) [element] | provenance | Src:MaD:2 | | test.rs:31:16:31:34 | ...::args_os(...) [element] | test.rs:31:16:31:41 | ... .nth(...) [Some] | provenance | MaD:11 | -| test.rs:31:16:31:41 | ... .nth(...) [Some] | test.rs:31:16:31:50 | ... .unwrap() | provenance | MaD:16 | +| test.rs:31:16:31:41 | ... .nth(...) [Some] | test.rs:31:16:31:50 | ... .unwrap() | provenance | MaD:15 | | test.rs:31:16:31:50 | ... .unwrap() | test.rs:31:9:31:12 | arg3 | provenance | | | test.rs:32:9:32:12 | arg4 | test.rs:38:10:38:13 | arg4 | provenance | | | test.rs:32:16:32:29 | ...::args | test.rs:32:16:32:31 | ...::args(...) [element] | provenance | Src:MaD:1 | | test.rs:32:16:32:31 | ...::args(...) [element] | test.rs:32:16:32:38 | ... .nth(...) [Some] | provenance | MaD:11 | -| test.rs:32:16:32:38 | ... .nth(...) [Some] | test.rs:32:16:32:47 | ... .unwrap() | provenance | MaD:16 | -| test.rs:32:16:32:47 | ... .unwrap() | test.rs:32:16:32:64 | ... .parse() [Ok] | provenance | MaD:12 | -| test.rs:32:16:32:47 | ... .unwrap() | test.rs:32:16:32:64 | ... .parse() [Ok] | provenance | MaD:14 | -| test.rs:32:16:32:64 | ... .parse() [Ok] | test.rs:32:16:32:73 | ... .unwrap() | provenance | MaD:18 | +| test.rs:32:16:32:38 | ... .nth(...) [Some] | test.rs:32:16:32:47 | ... .unwrap() | provenance | MaD:15 | +| test.rs:32:16:32:47 | ... .unwrap() | test.rs:32:16:32:64 | ... .parse() [Ok] | provenance | MaD:13 | +| test.rs:32:16:32:64 | ... .parse() [Ok] | test.rs:32:16:32:73 | ... .unwrap() | provenance | MaD:17 | | test.rs:32:16:32:73 | ... .unwrap() | test.rs:32:9:32:12 | arg4 | provenance | | | test.rs:40:9:40:11 | arg | test.rs:41:14:41:16 | arg | provenance | | | test.rs:40:16:40:29 | ...::args | test.rs:40:16:40:31 | ...::args(...) [element] | provenance | Src:MaD:1 | @@ -75,15 +73,15 @@ edges | test.rs:44:16:44:34 | ...::args_os(...) [element] | test.rs:44:9:44:11 | arg | provenance | | | test.rs:50:9:50:11 | dir | test.rs:54:10:54:12 | dir | provenance | | | test.rs:50:15:50:35 | ...::current_dir | test.rs:50:15:50:37 | ...::current_dir(...) [Ok] | provenance | Src:MaD:3 | -| test.rs:50:15:50:37 | ...::current_dir(...) [Ok] | test.rs:50:15:50:54 | ... .expect(...) | provenance | MaD:17 | +| test.rs:50:15:50:37 | ...::current_dir(...) [Ok] | test.rs:50:15:50:54 | ... .expect(...) | provenance | MaD:16 | | test.rs:50:15:50:54 | ... .expect(...) | test.rs:50:9:50:11 | dir | provenance | | | test.rs:51:9:51:11 | exe | test.rs:55:10:55:12 | exe | provenance | | | test.rs:51:15:51:35 | ...::current_exe | test.rs:51:15:51:37 | ...::current_exe(...) [Ok] | provenance | Src:MaD:4 | -| test.rs:51:15:51:37 | ...::current_exe(...) [Ok] | test.rs:51:15:51:54 | ... .expect(...) | provenance | MaD:17 | +| test.rs:51:15:51:37 | ...::current_exe(...) [Ok] | test.rs:51:15:51:54 | ... .expect(...) | provenance | MaD:16 | | test.rs:51:15:51:54 | ... .expect(...) | test.rs:51:9:51:11 | exe | provenance | | | test.rs:52:9:52:12 | home | test.rs:56:10:56:13 | home | provenance | | | test.rs:52:16:52:33 | ...::home_dir | test.rs:52:16:52:35 | ...::home_dir(...) [Some] | provenance | Src:MaD:5 | -| test.rs:52:16:52:35 | ...::home_dir(...) [Some] | test.rs:52:16:52:52 | ... .expect(...) | provenance | MaD:15 | +| test.rs:52:16:52:35 | ...::home_dir(...) [Some] | test.rs:52:16:52:52 | ... .expect(...) | provenance | MaD:14 | | test.rs:52:16:52:52 | ... .expect(...) | test.rs:52:9:52:12 | home | provenance | | nodes | test.rs:6:10:6:22 | ...::var | semmle.label | ...::var | diff --git a/rust/ql/test/library-tests/dataflow/sources/file/InlineFlow.expected b/rust/ql/test/library-tests/dataflow/sources/file/InlineFlow.expected index 746226c411e5..27d884fe565b 100644 --- a/rust/ql/test/library-tests/dataflow/sources/file/InlineFlow.expected +++ b/rust/ql/test/library-tests/dataflow/sources/file/InlineFlow.expected @@ -17,33 +17,34 @@ models | 16 | Source: tokio::fs::read_to_string::read_to_string; ReturnValue.Future.Field[core::result::Result::Ok(0)]; file | | 17 | Summary: <_ as async_std::io::read::ReadExt>::read; Argument[self].Reference; Argument[0].Reference; taint | | 18 | Summary: <_ as core::clone::Clone>::clone; Argument[self].Reference; ReturnValue; value | -| 19 | Summary: <_ as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue.Reference; taint | -| 20 | Summary: <_ as std::io::Read>::bytes; Argument[self]; ReturnValue; taint | -| 21 | Summary: <_ as std::io::Read>::chain; Argument[0]; ReturnValue; taint | -| 22 | Summary: <_ as std::io::Read>::chain; Argument[self]; ReturnValue; taint | -| 23 | Summary: <_ as std::io::Read>::read; Argument[self].Reference; Argument[0].Reference; taint | -| 24 | Summary: <_ as std::io::Read>::read_exact; Argument[self].Reference; Argument[0].Reference; taint | -| 25 | Summary: <_ as std::io::Read>::read_to_end; Argument[self].Reference; Argument[0].Reference; taint | -| 26 | Summary: <_ as std::io::Read>::read_to_string; Argument[self].Reference; Argument[0].Reference; taint | -| 27 | Summary: <_ as std::io::Read>::take; Argument[self]; ReturnValue; taint | -| 28 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read; Argument[self].Reference; Argument[0].Reference; taint | -| 29 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_buf; Argument[self].Reference; Argument[0].Reference; taint | -| 30 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_exact; Argument[self].Reference; Argument[0].Reference; taint | -| 31 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_f32; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | -| 32 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_i16; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | -| 33 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_i64_le; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | -| 34 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_to_end; Argument[self].Reference; Argument[0].Reference; taint | -| 35 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_to_string; Argument[self].Reference; Argument[0].Reference; taint | -| 36 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_u8; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | -| 37 | Summary: ::to_mut; Argument[self].Reference.Field[alloc::borrow::Cow::Owned(0)]; ReturnValue.Reference; value | -| 38 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 39 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 40 | Summary: ::into_string; Argument[self].Field[std::ffi::os_str::OsString::inner].Field[std::sys::os_str::bytes::Buf::inner]; ReturnValue.Field[core::result::Result::Ok(0)].Field[alloc::string::String::vec]; value | -| 41 | Summary: ::from; Argument[0]; ReturnValue.Field[std::path::PathBuf::inner]; value | -| 42 | Summary: ::deref; Argument[self].Reference.Field[std::path::PathBuf::inner]; ReturnValue.Reference; value | -| 43 | Summary: ::as_path; Argument[self].Reference; ReturnValue.Reference; value | -| 44 | Summary: ::into_boxed_path; Argument[self]; ReturnValue.Field[alloc::boxed::Box(0)]; taint | -| 45 | Summary: ::into_os_string; Argument[self].Field[std::path::PathBuf::inner]; ReturnValue; value | +| 19 | Summary: <_ as std::io::Read>::bytes; Argument[self]; ReturnValue; taint | +| 20 | Summary: <_ as std::io::Read>::chain; Argument[0]; ReturnValue; taint | +| 21 | Summary: <_ as std::io::Read>::chain; Argument[self]; ReturnValue; taint | +| 22 | Summary: <_ as std::io::Read>::read; Argument[self].Reference; Argument[0].Reference; taint | +| 23 | Summary: <_ as std::io::Read>::read_exact; Argument[self].Reference; Argument[0].Reference; taint | +| 24 | Summary: <_ as std::io::Read>::read_to_string; Argument[self].Reference; Argument[0].Reference; taint | +| 25 | Summary: <_ as std::io::Read>::take; Argument[self]; ReturnValue; taint | +| 26 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read; Argument[self].Reference; Argument[0].Reference; taint | +| 27 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_buf; Argument[self].Reference; Argument[0].Reference; taint | +| 28 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_exact; Argument[self].Reference; Argument[0].Reference; taint | +| 29 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_f32; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | +| 30 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_i16; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | +| 31 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_i64_le; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | +| 32 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_to_end; Argument[self].Reference; Argument[0].Reference; taint | +| 33 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_to_string; Argument[self].Reference; Argument[0].Reference; taint | +| 34 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_u8; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | +| 35 | Summary: ::to_mut; Argument[self].Reference.Field[alloc::borrow::Cow::Owned(0)]; ReturnValue.Reference; value | +| 36 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 37 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 38 | Summary: ::deref; Argument[self].Reference; ReturnValue.Reference; taint | +| 39 | Summary: ::into_string; Argument[self].Field[std::ffi::os_str::OsString::inner].Field[std::sys::os_str::bytes::Buf::inner]; ReturnValue.Field[core::result::Result::Ok(0)].Field[alloc::string::String::vec]; value | +| 40 | Summary: ::read_to_end; Argument[self].Reference; Argument[0].Reference; taint | +| 41 | Summary: ::read_to_string; Argument[self].Reference; Argument[0].Reference; taint | +| 42 | Summary: ::from; Argument[0]; ReturnValue.Field[std::path::PathBuf::inner]; value | +| 43 | Summary: ::deref; Argument[self].Reference.Field[std::path::PathBuf::inner]; ReturnValue.Reference; value | +| 44 | Summary: ::as_path; Argument[self].Reference; ReturnValue.Reference; value | +| 45 | Summary: ::into_boxed_path; Argument[self]; ReturnValue.Field[alloc::boxed::Box(0)]; taint | +| 46 | Summary: ::into_os_string; Argument[self].Field[std::path::PathBuf::inner]; ReturnValue; value | edges | test.rs:12:13:12:18 | buffer | test.rs:13:14:13:19 | buffer | provenance | | | test.rs:12:31:12:43 | ...::read | test.rs:12:31:12:55 | ...::read(...) [Ok] | provenance | Src:MaD:11 | @@ -73,31 +74,24 @@ edges | test.rs:30:22:30:25 | path | test.rs:30:20:30:27 | e.path() | provenance | Src:MaD:4 MaD:4 | | test.rs:31:14:31:17 | path | test.rs:31:14:31:25 | path.clone() | provenance | MaD:18 | | test.rs:32:14:32:17 | path | test.rs:32:14:32:25 | path.clone() | provenance | MaD:18 | -| test.rs:32:14:32:25 | path.clone() | test.rs:32:14:32:35 | ... .as_path() | provenance | MaD:43 | +| test.rs:32:14:32:25 | path.clone() | test.rs:32:14:32:35 | ... .as_path() | provenance | MaD:44 | | test.rs:33:14:33:17 | path | test.rs:33:14:33:25 | path.clone() | provenance | MaD:18 | -| test.rs:33:14:33:25 | path.clone() | test.rs:33:14:33:42 | ... .into_os_string() | provenance | MaD:45 | +| test.rs:33:14:33:25 | path.clone() | test.rs:33:14:33:42 | ... .into_os_string() | provenance | MaD:46 | | test.rs:34:39:34:42 | path | test.rs:34:39:34:50 | path.clone() | provenance | MaD:18 | -| test.rs:34:39:34:50 | path.clone() | test.rs:34:39:34:68 | ... .into_boxed_path() [Box(0)] | provenance | MaD:44 | -| test.rs:34:39:34:68 | ... .into_boxed_path() [Box(0)] | test.rs:34:14:34:69 | ...::from(...) | provenance | MaD:41 | +| test.rs:34:39:34:50 | path.clone() | test.rs:34:39:34:68 | ... .into_boxed_path() [Box(0)] | provenance | MaD:45 | +| test.rs:34:39:34:68 | ... .into_boxed_path() [Box(0)] | test.rs:34:14:34:69 | ...::from(...) | provenance | MaD:42 | | test.rs:35:14:35:17 | path | test.rs:35:14:35:25 | path.clone() | provenance | MaD:18 | -| test.rs:35:14:35:25 | path.clone() | test.rs:35:14:35:37 | ... .as_os_str() | provenance | MaD:19 | -| test.rs:35:14:35:25 | path.clone() | test.rs:35:14:35:37 | ... .as_os_str() | provenance | MaD:42 | +| test.rs:35:14:35:25 | path.clone() | test.rs:35:14:35:37 | ... .as_os_str() | provenance | MaD:43 | | test.rs:36:14:36:17 | path | test.rs:36:14:36:25 | path.clone() | provenance | MaD:18 | -| test.rs:36:14:36:25 | path.clone() | test.rs:36:14:36:41 | ... .as_mut_os_str() | provenance | MaD:19 | -| test.rs:36:14:36:25 | path.clone() | test.rs:36:14:36:41 | ... .as_mut_os_str() | provenance | MaD:42 | -| test.rs:37:14:37:17 | path | test.rs:37:14:37:26 | path.to_str() | provenance | MaD:19 | -| test.rs:37:14:37:17 | path | test.rs:37:14:37:26 | path.to_str() | provenance | MaD:42 | -| test.rs:38:14:38:17 | path | test.rs:38:14:38:31 | path.to_path_buf() | provenance | MaD:19 | -| test.rs:38:14:38:17 | path | test.rs:38:14:38:31 | path.to_path_buf() | provenance | MaD:42 | -| test.rs:39:14:39:17 | path | test.rs:39:14:39:29 | path.file_name() [Some, &ref] | provenance | MaD:19 | -| test.rs:39:14:39:17 | path | test.rs:39:14:39:29 | path.file_name() [Some, &ref] | provenance | MaD:42 | -| test.rs:39:14:39:29 | path.file_name() [Some, &ref] | test.rs:39:14:39:38 | ... .unwrap() | provenance | MaD:38 | -| test.rs:40:14:40:17 | path | test.rs:40:14:40:29 | path.extension() [Some, &ref] | provenance | MaD:19 | -| test.rs:40:14:40:17 | path | test.rs:40:14:40:29 | path.extension() [Some, &ref] | provenance | MaD:42 | -| test.rs:40:14:40:29 | path.extension() [Some, &ref] | test.rs:40:14:40:38 | ... .unwrap() | provenance | MaD:38 | -| test.rs:41:14:41:17 | path | test.rs:41:14:41:32 | path.canonicalize() [Ok] | provenance | MaD:19 | -| test.rs:41:14:41:17 | path | test.rs:41:14:41:32 | path.canonicalize() [Ok] | provenance | MaD:42 | -| test.rs:41:14:41:32 | path.canonicalize() [Ok] | test.rs:41:14:41:41 | ... .unwrap() | provenance | MaD:39 | +| test.rs:36:14:36:25 | path.clone() | test.rs:36:14:36:41 | ... .as_mut_os_str() | provenance | MaD:43 | +| test.rs:37:14:37:17 | path | test.rs:37:14:37:26 | path.to_str() | provenance | MaD:43 | +| test.rs:38:14:38:17 | path | test.rs:38:14:38:31 | path.to_path_buf() | provenance | MaD:43 | +| test.rs:39:14:39:17 | path | test.rs:39:14:39:29 | path.file_name() [Some, &ref] | provenance | MaD:43 | +| test.rs:39:14:39:29 | path.file_name() [Some, &ref] | test.rs:39:14:39:38 | ... .unwrap() | provenance | MaD:36 | +| test.rs:40:14:40:17 | path | test.rs:40:14:40:29 | path.extension() [Some, &ref] | provenance | MaD:43 | +| test.rs:40:14:40:29 | path.extension() [Some, &ref] | test.rs:40:14:40:38 | ... .unwrap() | provenance | MaD:36 | +| test.rs:41:14:41:17 | path | test.rs:41:14:41:32 | path.canonicalize() [Ok] | provenance | MaD:43 | +| test.rs:41:14:41:32 | path.canonicalize() [Ok] | test.rs:41:14:41:41 | ... .unwrap() | provenance | MaD:37 | | test.rs:44:13:44:21 | file_name | test.rs:45:14:45:22 | file_name | provenance | | | test.rs:44:13:44:21 | file_name | test.rs:46:14:46:22 | file_name | provenance | | | test.rs:44:13:44:21 | file_name | test.rs:47:14:47:22 | file_name | provenance | | @@ -108,14 +102,14 @@ edges | test.rs:44:27:44:35 | file_name | test.rs:44:25:44:37 | e.file_name() | provenance | Src:MaD:3 MaD:3 | | test.rs:45:14:45:22 | file_name | test.rs:45:14:45:30 | file_name.clone() | provenance | MaD:18 | | test.rs:46:14:46:22 | file_name | test.rs:46:14:46:30 | file_name.clone() | provenance | MaD:18 | -| test.rs:46:14:46:30 | file_name.clone() | test.rs:46:14:46:44 | ... .into_string() [Ok, String] | provenance | MaD:40 | -| test.rs:46:14:46:44 | ... .into_string() [Ok, String] | test.rs:46:14:46:53 | ... .unwrap() | provenance | MaD:39 | -| test.rs:47:14:47:22 | file_name | test.rs:47:14:47:31 | file_name.to_str() [Some, &ref] | provenance | MaD:19 | -| test.rs:47:14:47:31 | file_name.to_str() [Some, &ref] | test.rs:47:14:47:40 | ... .unwrap() | provenance | MaD:38 | -| test.rs:48:14:48:22 | file_name | test.rs:48:14:48:40 | file_name.to_string_lossy() [Owned] | provenance | MaD:19 | -| test.rs:48:14:48:40 | file_name.to_string_lossy() [Owned] | test.rs:48:14:48:49 | ... .to_mut() | provenance | MaD:37 | +| test.rs:46:14:46:30 | file_name.clone() | test.rs:46:14:46:44 | ... .into_string() [Ok, String] | provenance | MaD:39 | +| test.rs:46:14:46:44 | ... .into_string() [Ok, String] | test.rs:46:14:46:53 | ... .unwrap() | provenance | MaD:37 | +| test.rs:47:14:47:22 | file_name | test.rs:47:14:47:31 | file_name.to_str() [Some, &ref] | provenance | MaD:38 | +| test.rs:47:14:47:31 | file_name.to_str() [Some, &ref] | test.rs:47:14:47:40 | ... .unwrap() | provenance | MaD:36 | +| test.rs:48:14:48:22 | file_name | test.rs:48:14:48:40 | file_name.to_string_lossy() [Owned] | provenance | MaD:38 | +| test.rs:48:14:48:40 | file_name.to_string_lossy() [Owned] | test.rs:48:14:48:49 | ... .to_mut() | provenance | MaD:35 | | test.rs:49:14:49:22 | file_name | test.rs:49:14:49:30 | file_name.clone() | provenance | MaD:18 | -| test.rs:49:14:49:30 | file_name.clone() | test.rs:49:14:49:49 | ... .as_encoded_bytes() | provenance | MaD:19 | +| test.rs:49:14:49:30 | file_name.clone() | test.rs:49:14:49:49 | ... .as_encoded_bytes() | provenance | MaD:38 | | test.rs:68:13:68:18 | target | test.rs:69:14:69:19 | target | provenance | | | test.rs:68:22:68:34 | ...::read_link | test.rs:68:22:68:49 | ...::read_link(...) [Ok] | provenance | Src:MaD:12 | | test.rs:68:22:68:49 | ...::read_link(...) [Ok] | test.rs:68:22:68:50 | TryExpr | provenance | | @@ -154,45 +148,45 @@ edges | test.rs:110:20:110:38 | ...::open | test.rs:110:20:110:50 | ...::open(...) [Ok] | provenance | Src:MaD:5 | | test.rs:110:20:110:50 | ...::open(...) [Ok] | test.rs:110:20:110:51 | TryExpr | provenance | | | test.rs:110:20:110:51 | TryExpr | test.rs:110:9:110:16 | mut file | provenance | | -| test.rs:114:22:114:25 | file | test.rs:114:32:114:42 | [post] &mut buffer [&ref] | provenance | MaD:23 | +| test.rs:114:22:114:25 | file | test.rs:114:32:114:42 | [post] &mut buffer [&ref] | provenance | MaD:22 | | test.rs:114:32:114:42 | [post] &mut buffer [&ref] | test.rs:114:37:114:42 | [post] buffer | provenance | | | test.rs:114:37:114:42 | [post] buffer | test.rs:115:15:115:20 | buffer | provenance | | | test.rs:115:15:115:20 | buffer | test.rs:115:14:115:20 | &buffer | provenance | | -| test.rs:120:22:120:25 | file | test.rs:120:39:120:49 | [post] &mut buffer [&ref] | provenance | MaD:25 | +| test.rs:120:22:120:25 | file | test.rs:120:39:120:49 | [post] &mut buffer [&ref] | provenance | MaD:40 | | test.rs:120:39:120:49 | [post] &mut buffer [&ref] | test.rs:120:44:120:49 | [post] buffer | provenance | | | test.rs:120:44:120:49 | [post] buffer | test.rs:121:15:121:20 | buffer | provenance | | | test.rs:121:15:121:20 | buffer | test.rs:121:14:121:20 | &buffer | provenance | | -| test.rs:126:22:126:25 | file | test.rs:126:42:126:52 | [post] &mut buffer [&ref] | provenance | MaD:26 | +| test.rs:126:22:126:25 | file | test.rs:126:42:126:52 | [post] &mut buffer [&ref] | provenance | MaD:41 | | test.rs:126:42:126:52 | [post] &mut buffer [&ref] | test.rs:126:47:126:52 | [post] buffer | provenance | | | test.rs:126:47:126:52 | [post] buffer | test.rs:127:15:127:20 | buffer | provenance | | | test.rs:127:15:127:20 | buffer | test.rs:127:14:127:20 | &buffer | provenance | | -| test.rs:132:9:132:12 | file | test.rs:132:25:132:35 | [post] &mut buffer [&ref] | provenance | MaD:24 | +| test.rs:132:9:132:12 | file | test.rs:132:25:132:35 | [post] &mut buffer [&ref] | provenance | MaD:23 | | test.rs:132:25:132:35 | [post] &mut buffer [&ref] | test.rs:132:30:132:35 | [post] buffer | provenance | | | test.rs:132:30:132:35 | [post] buffer | test.rs:133:15:133:20 | buffer | provenance | | | test.rs:133:15:133:20 | buffer | test.rs:133:14:133:20 | &buffer | provenance | | -| test.rs:136:17:136:20 | file | test.rs:136:17:136:28 | file.bytes() | provenance | MaD:20 | +| test.rs:136:17:136:20 | file | test.rs:136:17:136:28 | file.bytes() | provenance | MaD:19 | | test.rs:136:17:136:28 | file.bytes() | test.rs:137:14:137:17 | byte | provenance | | | test.rs:143:13:143:18 | mut f1 | test.rs:145:22:145:23 | f1 | provenance | | -| test.rs:143:22:143:63 | ... .open(...) [Ok] | test.rs:143:22:143:72 | ... .unwrap() | provenance | MaD:39 | +| test.rs:143:22:143:63 | ... .open(...) [Ok] | test.rs:143:22:143:72 | ... .unwrap() | provenance | MaD:37 | | test.rs:143:22:143:72 | ... .unwrap() | test.rs:143:13:143:18 | mut f1 | provenance | | | test.rs:143:50:143:53 | open | test.rs:143:22:143:63 | ... .open(...) [Ok] | provenance | Src:MaD:6 | -| test.rs:145:22:145:23 | f1 | test.rs:145:30:145:40 | [post] &mut buffer [&ref] | provenance | MaD:23 | +| test.rs:145:22:145:23 | f1 | test.rs:145:30:145:40 | [post] &mut buffer [&ref] | provenance | MaD:22 | | test.rs:145:30:145:40 | [post] &mut buffer [&ref] | test.rs:145:35:145:40 | [post] buffer | provenance | | | test.rs:145:35:145:40 | [post] buffer | test.rs:146:15:146:20 | buffer | provenance | | | test.rs:146:15:146:20 | buffer | test.rs:146:14:146:20 | &buffer | provenance | | | test.rs:150:13:150:18 | mut f2 | test.rs:155:22:155:23 | f2 | provenance | | -| test.rs:150:22:152:27 | ... .open(...) [Ok] | test.rs:150:22:153:21 | ... .unwrap() | provenance | MaD:39 | +| test.rs:150:22:152:27 | ... .open(...) [Ok] | test.rs:150:22:153:21 | ... .unwrap() | provenance | MaD:37 | | test.rs:150:22:153:21 | ... .unwrap() | test.rs:150:13:150:18 | mut f2 | provenance | | | test.rs:152:14:152:17 | open | test.rs:150:22:152:27 | ... .open(...) [Ok] | provenance | Src:MaD:6 | -| test.rs:155:22:155:23 | f2 | test.rs:155:30:155:40 | [post] &mut buffer [&ref] | provenance | MaD:23 | +| test.rs:155:22:155:23 | f2 | test.rs:155:30:155:40 | [post] &mut buffer [&ref] | provenance | MaD:22 | | test.rs:155:30:155:40 | [post] &mut buffer [&ref] | test.rs:155:35:155:40 | [post] buffer | provenance | | | test.rs:155:35:155:40 | [post] buffer | test.rs:156:15:156:20 | buffer | provenance | | | test.rs:156:15:156:20 | buffer | test.rs:156:14:156:20 | &buffer | provenance | | | test.rs:160:13:160:18 | mut f3 | test.rs:168:22:168:23 | f3 | provenance | | -| test.rs:160:22:165:27 | ... .open(...) [Ok] | test.rs:160:22:166:21 | ... .unwrap() | provenance | MaD:39 | +| test.rs:160:22:165:27 | ... .open(...) [Ok] | test.rs:160:22:166:21 | ... .unwrap() | provenance | MaD:37 | | test.rs:160:22:166:21 | ... .unwrap() | test.rs:160:13:160:18 | mut f3 | provenance | | | test.rs:165:14:165:17 | open | test.rs:160:22:165:27 | ... .open(...) [Ok] | provenance | Src:MaD:6 | -| test.rs:168:22:168:23 | f3 | test.rs:168:30:168:40 | [post] &mut buffer [&ref] | provenance | MaD:23 | +| test.rs:168:22:168:23 | f3 | test.rs:168:30:168:40 | [post] &mut buffer [&ref] | provenance | MaD:22 | | test.rs:168:30:168:40 | [post] &mut buffer [&ref] | test.rs:168:35:168:40 | [post] buffer | provenance | | | test.rs:168:35:168:40 | [post] buffer | test.rs:169:15:169:20 | buffer | provenance | | | test.rs:169:15:169:20 | buffer | test.rs:169:14:169:20 | &buffer | provenance | | @@ -205,10 +199,10 @@ edges | test.rs:177:21:177:59 | ...::open(...) [Ok] | test.rs:177:21:177:60 | TryExpr | provenance | | | test.rs:177:21:177:60 | TryExpr | test.rs:177:13:177:17 | file2 | provenance | | | test.rs:178:13:178:22 | mut reader | test.rs:179:9:179:14 | reader | provenance | | -| test.rs:178:26:178:30 | file1 | test.rs:178:26:178:43 | file1.chain(...) | provenance | MaD:22 | +| test.rs:178:26:178:30 | file1 | test.rs:178:26:178:43 | file1.chain(...) | provenance | MaD:21 | | test.rs:178:26:178:43 | file1.chain(...) | test.rs:178:13:178:22 | mut reader | provenance | | -| test.rs:178:38:178:42 | file2 | test.rs:178:26:178:43 | file1.chain(...) | provenance | MaD:21 | -| test.rs:179:9:179:14 | reader | test.rs:179:31:179:41 | [post] &mut buffer [&ref] | provenance | MaD:26 | +| test.rs:178:38:178:42 | file2 | test.rs:178:26:178:43 | file1.chain(...) | provenance | MaD:20 | +| test.rs:179:9:179:14 | reader | test.rs:179:31:179:41 | [post] &mut buffer [&ref] | provenance | MaD:24 | | test.rs:179:31:179:41 | [post] &mut buffer [&ref] | test.rs:179:36:179:41 | [post] buffer | provenance | | | test.rs:179:36:179:41 | [post] buffer | test.rs:180:15:180:20 | buffer | provenance | | | test.rs:180:15:180:20 | buffer | test.rs:180:14:180:20 | &buffer | provenance | | @@ -217,9 +211,9 @@ edges | test.rs:185:21:185:51 | ...::open(...) [Ok] | test.rs:185:21:185:52 | TryExpr | provenance | | | test.rs:185:21:185:52 | TryExpr | test.rs:185:13:185:17 | file1 | provenance | | | test.rs:186:13:186:22 | mut reader | test.rs:187:9:187:14 | reader | provenance | | -| test.rs:186:26:186:30 | file1 | test.rs:186:26:186:40 | file1.take(...) | provenance | MaD:27 | +| test.rs:186:26:186:30 | file1 | test.rs:186:26:186:40 | file1.take(...) | provenance | MaD:25 | | test.rs:186:26:186:40 | file1.take(...) | test.rs:186:13:186:22 | mut reader | provenance | | -| test.rs:187:9:187:14 | reader | test.rs:187:31:187:41 | [post] &mut buffer [&ref] | provenance | MaD:26 | +| test.rs:187:9:187:14 | reader | test.rs:187:31:187:41 | [post] &mut buffer [&ref] | provenance | MaD:24 | | test.rs:187:31:187:41 | [post] &mut buffer [&ref] | test.rs:187:36:187:41 | [post] buffer | provenance | | | test.rs:187:36:187:41 | [post] buffer | test.rs:188:15:188:20 | buffer | provenance | | | test.rs:188:15:188:20 | buffer | test.rs:188:14:188:20 | &buffer | provenance | | @@ -236,43 +230,43 @@ edges | test.rs:197:20:197:52 | ...::open(...) [future, Ok] | test.rs:197:20:197:58 | await ... [Ok] | provenance | | | test.rs:197:20:197:58 | await ... [Ok] | test.rs:197:20:197:59 | TryExpr | provenance | | | test.rs:197:20:197:59 | TryExpr | test.rs:197:9:197:16 | mut file | provenance | | -| test.rs:201:22:201:25 | file | test.rs:201:32:201:42 | [post] &mut buffer [&ref] | provenance | MaD:28 | +| test.rs:201:22:201:25 | file | test.rs:201:32:201:42 | [post] &mut buffer [&ref] | provenance | MaD:26 | | test.rs:201:32:201:42 | [post] &mut buffer [&ref] | test.rs:201:37:201:42 | [post] buffer | provenance | | | test.rs:201:37:201:42 | [post] buffer | test.rs:202:15:202:20 | buffer | provenance | | | test.rs:202:15:202:20 | buffer | test.rs:202:14:202:20 | &buffer | provenance | | -| test.rs:207:22:207:25 | file | test.rs:207:39:207:49 | [post] &mut buffer [&ref] | provenance | MaD:34 | +| test.rs:207:22:207:25 | file | test.rs:207:39:207:49 | [post] &mut buffer [&ref] | provenance | MaD:32 | | test.rs:207:39:207:49 | [post] &mut buffer [&ref] | test.rs:207:44:207:49 | [post] buffer | provenance | | | test.rs:207:44:207:49 | [post] buffer | test.rs:208:15:208:20 | buffer | provenance | | | test.rs:208:15:208:20 | buffer | test.rs:208:14:208:20 | &buffer | provenance | | -| test.rs:213:22:213:25 | file | test.rs:213:42:213:52 | [post] &mut buffer [&ref] | provenance | MaD:35 | +| test.rs:213:22:213:25 | file | test.rs:213:42:213:52 | [post] &mut buffer [&ref] | provenance | MaD:33 | | test.rs:213:42:213:52 | [post] &mut buffer [&ref] | test.rs:213:47:213:52 | [post] buffer | provenance | | | test.rs:213:47:213:52 | [post] buffer | test.rs:214:15:214:20 | buffer | provenance | | | test.rs:214:15:214:20 | buffer | test.rs:214:14:214:20 | &buffer | provenance | | -| test.rs:219:9:219:12 | file | test.rs:219:25:219:35 | [post] &mut buffer [&ref] | provenance | MaD:30 | +| test.rs:219:9:219:12 | file | test.rs:219:25:219:35 | [post] &mut buffer [&ref] | provenance | MaD:28 | | test.rs:219:25:219:35 | [post] &mut buffer [&ref] | test.rs:219:30:219:35 | [post] buffer | provenance | | | test.rs:219:30:219:35 | [post] buffer | test.rs:220:15:220:20 | buffer | provenance | | | test.rs:220:15:220:20 | buffer | test.rs:220:14:220:20 | &buffer | provenance | | | test.rs:224:13:224:14 | v1 | test.rs:228:14:228:15 | v1 | provenance | | -| test.rs:224:18:224:21 | file | test.rs:224:18:224:31 | file.read_u8() [future, Ok] | provenance | MaD:36 | +| test.rs:224:18:224:21 | file | test.rs:224:18:224:31 | file.read_u8() [future, Ok] | provenance | MaD:34 | | test.rs:224:18:224:31 | file.read_u8() [future, Ok] | test.rs:224:18:224:37 | await ... [Ok] | provenance | | | test.rs:224:18:224:37 | await ... [Ok] | test.rs:224:18:224:38 | TryExpr | provenance | | | test.rs:224:18:224:38 | TryExpr | test.rs:224:13:224:14 | v1 | provenance | | | test.rs:225:13:225:14 | v2 | test.rs:229:14:229:15 | v2 | provenance | | -| test.rs:225:18:225:21 | file | test.rs:225:18:225:32 | file.read_i16() [future, Ok] | provenance | MaD:32 | +| test.rs:225:18:225:21 | file | test.rs:225:18:225:32 | file.read_i16() [future, Ok] | provenance | MaD:30 | | test.rs:225:18:225:32 | file.read_i16() [future, Ok] | test.rs:225:18:225:38 | await ... [Ok] | provenance | | | test.rs:225:18:225:38 | await ... [Ok] | test.rs:225:18:225:39 | TryExpr | provenance | | | test.rs:225:18:225:39 | TryExpr | test.rs:225:13:225:14 | v2 | provenance | | | test.rs:226:13:226:14 | v3 | test.rs:230:14:230:15 | v3 | provenance | | -| test.rs:226:18:226:21 | file | test.rs:226:18:226:32 | file.read_f32() [future, Ok] | provenance | MaD:31 | +| test.rs:226:18:226:21 | file | test.rs:226:18:226:32 | file.read_f32() [future, Ok] | provenance | MaD:29 | | test.rs:226:18:226:32 | file.read_f32() [future, Ok] | test.rs:226:18:226:38 | await ... [Ok] | provenance | | | test.rs:226:18:226:38 | await ... [Ok] | test.rs:226:18:226:39 | TryExpr | provenance | | | test.rs:226:18:226:39 | TryExpr | test.rs:226:13:226:14 | v3 | provenance | | | test.rs:227:13:227:14 | v4 | test.rs:231:14:231:15 | v4 | provenance | | -| test.rs:227:18:227:21 | file | test.rs:227:18:227:35 | file.read_i64_le() [future, Ok] | provenance | MaD:33 | +| test.rs:227:18:227:21 | file | test.rs:227:18:227:35 | file.read_i64_le() [future, Ok] | provenance | MaD:31 | | test.rs:227:18:227:35 | file.read_i64_le() [future, Ok] | test.rs:227:18:227:41 | await ... [Ok] | provenance | | | test.rs:227:18:227:41 | await ... [Ok] | test.rs:227:18:227:42 | TryExpr | provenance | | | test.rs:227:18:227:42 | TryExpr | test.rs:227:13:227:14 | v4 | provenance | | -| test.rs:236:9:236:12 | file | test.rs:236:23:236:33 | [post] &mut buffer [&ref] | provenance | MaD:29 | +| test.rs:236:9:236:12 | file | test.rs:236:23:236:33 | [post] &mut buffer [&ref] | provenance | MaD:27 | | test.rs:236:23:236:33 | [post] &mut buffer [&ref] | test.rs:236:28:236:33 | [post] buffer | provenance | | | test.rs:236:28:236:33 | [post] buffer | test.rs:237:15:237:20 | buffer | provenance | | | test.rs:237:15:237:20 | buffer | test.rs:237:14:237:20 | &buffer | provenance | | @@ -281,7 +275,7 @@ edges | test.rs:243:22:243:71 | await ... [Ok] | test.rs:243:22:243:72 | TryExpr | provenance | | | test.rs:243:22:243:72 | TryExpr | test.rs:243:13:243:18 | mut f1 | provenance | | | test.rs:243:52:243:55 | open | test.rs:243:22:243:65 | ... .open(...) [future, Ok] | provenance | Src:MaD:8 | -| test.rs:245:22:245:23 | f1 | test.rs:245:30:245:40 | [post] &mut buffer [&ref] | provenance | MaD:28 | +| test.rs:245:22:245:23 | f1 | test.rs:245:30:245:40 | [post] &mut buffer [&ref] | provenance | MaD:26 | | test.rs:245:30:245:40 | [post] &mut buffer [&ref] | test.rs:245:35:245:40 | [post] buffer | provenance | | | test.rs:245:35:245:40 | [post] buffer | test.rs:246:15:246:20 | buffer | provenance | | | test.rs:246:15:246:20 | buffer | test.rs:246:14:246:20 | &buffer | provenance | | diff --git a/rust/ql/test/library-tests/dataflow/sources/stdin/InlineFlow.expected b/rust/ql/test/library-tests/dataflow/sources/stdin/InlineFlow.expected index a6ad21c10b46..c407a05f90d2 100644 --- a/rust/ql/test/library-tests/dataflow/sources/stdin/InlineFlow.expected +++ b/rust/ql/test/library-tests/dataflow/sources/stdin/InlineFlow.expected @@ -4,100 +4,101 @@ models | 3 | Summary: <_ as core::clone::Clone>::clone; Argument[self].Reference; ReturnValue; value | | 4 | Summary: <_ as core::iter::traits::iterator::Iterator>::nth; Argument[self].Reference.Element; ReturnValue.Field[core::option::Option::Some(0)]; value | | 5 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | -| 6 | Summary: <_ as std::io::BufRead>::fill_buf; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 7 | Summary: <_ as std::io::BufRead>::lines; Argument[self]; ReturnValue; taint | -| 8 | Summary: <_ as std::io::BufRead>::read_line; Argument[self].Reference; Argument[0].Reference; taint | -| 9 | Summary: <_ as std::io::BufRead>::read_until; Argument[self].Reference; Argument[1].Reference; taint | -| 10 | Summary: <_ as std::io::BufRead>::split; Argument[self]; ReturnValue; taint | -| 11 | Summary: <_ as std::io::Read>::bytes; Argument[self]; ReturnValue; taint | -| 12 | Summary: <_ as std::io::Read>::read; Argument[self].Reference; Argument[0].Reference; taint | -| 13 | Summary: <_ as std::io::Read>::read_exact; Argument[self].Reference; Argument[0].Reference; taint | -| 14 | Summary: <_ as std::io::Read>::read_to_end; Argument[self].Reference; Argument[0].Reference; taint | -| 15 | Summary: <_ as std::io::Read>::read_to_string; Argument[self].Reference; Argument[0].Reference; taint | -| 16 | Summary: <_ as tokio::io::util::async_buf_read_ext::AsyncBufReadExt>::fill_buf; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | -| 17 | Summary: <_ as tokio::io::util::async_buf_read_ext::AsyncBufReadExt>::lines; Argument[self]; ReturnValue; taint | -| 18 | Summary: <_ as tokio::io::util::async_buf_read_ext::AsyncBufReadExt>::read_line; Argument[self].Reference; Argument[0].Reference; taint | -| 19 | Summary: <_ as tokio::io::util::async_buf_read_ext::AsyncBufReadExt>::read_until; Argument[self].Reference; Argument[1].Reference; taint | -| 20 | Summary: <_ as tokio::io::util::async_buf_read_ext::AsyncBufReadExt>::split; Argument[self]; ReturnValue; taint | -| 21 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read; Argument[self].Reference; Argument[0].Reference; taint | -| 22 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_buf; Argument[self].Reference; Argument[0].Reference; taint | -| 23 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_exact; Argument[self].Reference; Argument[0].Reference; taint | -| 24 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_f32; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | -| 25 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_i16; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | -| 26 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_i64_le; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | -| 27 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_to_end; Argument[self].Reference; Argument[0].Reference; taint | -| 28 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_to_string; Argument[self].Reference; Argument[0].Reference; taint | -| 29 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_u8; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | -| 30 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 31 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 32 | Summary: ::next; Argument[self].Reference.Element; ReturnValue.Field[core::option::Option::Some(0)].Field[core::result::Result::Ok(0)]; value | -| 33 | Summary: ::buffer; Argument[self].Reference; ReturnValue.Reference; taint | -| 34 | Summary: ::new; Argument[0]; ReturnValue; taint | +| 6 | Summary: <_ as std::io::BufRead>::lines; Argument[self]; ReturnValue; taint | +| 7 | Summary: <_ as std::io::BufRead>::read_line; Argument[self].Reference; Argument[0].Reference; taint | +| 8 | Summary: <_ as std::io::BufRead>::read_until; Argument[self].Reference; Argument[1].Reference; taint | +| 9 | Summary: <_ as std::io::BufRead>::split; Argument[self]; ReturnValue; taint | +| 10 | Summary: <_ as std::io::Read>::bytes; Argument[self]; ReturnValue; taint | +| 11 | Summary: <_ as tokio::io::util::async_buf_read_ext::AsyncBufReadExt>::fill_buf; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | +| 12 | Summary: <_ as tokio::io::util::async_buf_read_ext::AsyncBufReadExt>::lines; Argument[self]; ReturnValue; taint | +| 13 | Summary: <_ as tokio::io::util::async_buf_read_ext::AsyncBufReadExt>::read_line; Argument[self].Reference; Argument[0].Reference; taint | +| 14 | Summary: <_ as tokio::io::util::async_buf_read_ext::AsyncBufReadExt>::read_until; Argument[self].Reference; Argument[1].Reference; taint | +| 15 | Summary: <_ as tokio::io::util::async_buf_read_ext::AsyncBufReadExt>::split; Argument[self]; ReturnValue; taint | +| 16 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read; Argument[self].Reference; Argument[0].Reference; taint | +| 17 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_buf; Argument[self].Reference; Argument[0].Reference; taint | +| 18 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_exact; Argument[self].Reference; Argument[0].Reference; taint | +| 19 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_f32; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | +| 20 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_i16; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | +| 21 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_i64_le; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | +| 22 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_to_end; Argument[self].Reference; Argument[0].Reference; taint | +| 23 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_to_string; Argument[self].Reference; Argument[0].Reference; taint | +| 24 | Summary: <_ as tokio::io::util::async_read_ext::AsyncReadExt>::read_u8; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)]; taint | +| 25 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 26 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 27 | Summary: ::next; Argument[self].Reference.Element; ReturnValue.Field[core::option::Option::Some(0)].Field[core::result::Result::Ok(0)]; value | +| 28 | Summary: ::fill_buf; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 29 | Summary: ::buffer; Argument[self].Reference; ReturnValue.Reference; taint | +| 30 | Summary: ::new; Argument[0]; ReturnValue; taint | +| 31 | Summary: ::read; Argument[self].Reference; Argument[0].Reference; taint | +| 32 | Summary: ::read_exact; Argument[self].Reference; Argument[0].Reference; taint | +| 33 | Summary: ::read_to_end; Argument[self].Reference; Argument[0].Reference; taint | +| 34 | Summary: ::read_to_string; Argument[self].Reference; Argument[0].Reference; taint | | 35 | Summary: ::lock; Argument[self].Reference; ReturnValue; taint | -| 36 | Summary: ::buffer; Argument[self].Reference; ReturnValue.Reference; taint | -| 37 | Summary: ::new; Argument[0]; ReturnValue; taint | -| 38 | Summary: ::next_line; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)].Field[core::option::Option::Some(0)]; taint | -| 39 | Summary: ::next_segment; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)].Field[core::option::Option::Some(0)]; taint | +| 36 | Summary: ::read_to_string; Argument[self].Reference; Argument[0].Reference; taint | +| 37 | Summary: ::buffer; Argument[self].Reference; ReturnValue.Reference; taint | +| 38 | Summary: ::new; Argument[0]; ReturnValue; taint | +| 39 | Summary: ::next_line; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)].Field[core::option::Option::Some(0)]; taint | +| 40 | Summary: ::next_segment; Argument[self].Reference; ReturnValue.Future.Field[core::result::Result::Ok(0)].Field[core::option::Option::Some(0)]; taint | edges | test.rs:13:22:13:35 | ...::stdin | test.rs:13:22:13:37 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | -| test.rs:13:22:13:37 | ...::stdin(...) | test.rs:13:44:13:54 | [post] &mut buffer [&ref] | provenance | MaD:12 | +| test.rs:13:22:13:37 | ...::stdin(...) | test.rs:13:44:13:54 | [post] &mut buffer [&ref] | provenance | MaD:31 | | test.rs:13:44:13:54 | [post] &mut buffer [&ref] | test.rs:13:49:13:54 | [post] buffer | provenance | | | test.rs:13:49:13:54 | [post] buffer | test.rs:14:15:14:20 | buffer | provenance | | | test.rs:14:15:14:20 | buffer | test.rs:14:14:14:20 | &buffer | provenance | | | test.rs:19:22:19:35 | ...::stdin | test.rs:19:22:19:37 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | -| test.rs:19:22:19:37 | ...::stdin(...) | test.rs:19:51:19:61 | [post] &mut buffer [&ref] | provenance | MaD:14 | +| test.rs:19:22:19:37 | ...::stdin(...) | test.rs:19:51:19:61 | [post] &mut buffer [&ref] | provenance | MaD:33 | | test.rs:19:51:19:61 | [post] &mut buffer [&ref] | test.rs:19:56:19:61 | [post] buffer | provenance | | | test.rs:19:56:19:61 | [post] buffer | test.rs:20:15:20:20 | buffer | provenance | | | test.rs:20:15:20:20 | buffer | test.rs:20:14:20:20 | &buffer | provenance | | | test.rs:25:22:25:35 | ...::stdin | test.rs:25:22:25:37 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | -| test.rs:25:22:25:37 | ...::stdin(...) | test.rs:25:54:25:64 | [post] &mut buffer [&ref] | provenance | MaD:15 | +| test.rs:25:22:25:37 | ...::stdin(...) | test.rs:25:54:25:64 | [post] &mut buffer [&ref] | provenance | MaD:34 | | test.rs:25:54:25:64 | [post] &mut buffer [&ref] | test.rs:25:59:25:64 | [post] buffer | provenance | | | test.rs:25:59:25:64 | [post] buffer | test.rs:26:15:26:20 | buffer | provenance | | | test.rs:26:15:26:20 | buffer | test.rs:26:14:26:20 | &buffer | provenance | | | test.rs:31:22:31:35 | ...::stdin | test.rs:31:22:31:37 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | | test.rs:31:22:31:37 | ...::stdin(...) | test.rs:31:22:31:44 | ... .lock() | provenance | MaD:35 | -| test.rs:31:22:31:44 | ... .lock() | test.rs:31:61:31:71 | [post] &mut buffer [&ref] | provenance | MaD:15 | +| test.rs:31:22:31:44 | ... .lock() | test.rs:31:61:31:71 | [post] &mut buffer [&ref] | provenance | MaD:36 | | test.rs:31:61:31:71 | [post] &mut buffer [&ref] | test.rs:31:66:31:71 | [post] buffer | provenance | | | test.rs:31:66:31:71 | [post] buffer | test.rs:32:15:32:20 | buffer | provenance | | | test.rs:32:15:32:20 | buffer | test.rs:32:14:32:20 | &buffer | provenance | | | test.rs:37:9:37:22 | ...::stdin | test.rs:37:9:37:24 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | -| test.rs:37:9:37:24 | ...::stdin(...) | test.rs:37:37:37:47 | [post] &mut buffer [&ref] | provenance | MaD:13 | +| test.rs:37:9:37:24 | ...::stdin(...) | test.rs:37:37:37:47 | [post] &mut buffer [&ref] | provenance | MaD:32 | | test.rs:37:37:37:47 | [post] &mut buffer [&ref] | test.rs:37:42:37:47 | [post] buffer | provenance | | | test.rs:37:42:37:47 | [post] buffer | test.rs:38:15:38:20 | buffer | provenance | | | test.rs:38:15:38:20 | buffer | test.rs:38:14:38:20 | &buffer | provenance | | | test.rs:41:17:41:30 | ...::stdin | test.rs:41:17:41:32 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | -| test.rs:41:17:41:32 | ...::stdin(...) | test.rs:41:17:41:40 | ... .bytes() | provenance | MaD:11 | +| test.rs:41:17:41:32 | ...::stdin(...) | test.rs:41:17:41:40 | ... .bytes() | provenance | MaD:10 | | test.rs:41:17:41:40 | ... .bytes() | test.rs:42:14:42:17 | byte | provenance | | | test.rs:48:13:48:22 | mut reader | test.rs:49:20:49:25 | reader | provenance | | | test.rs:48:26:48:66 | ...::new(...) | test.rs:48:13:48:22 | mut reader | provenance | | | test.rs:48:50:48:63 | ...::stdin | test.rs:48:50:48:65 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | -| test.rs:48:50:48:65 | ...::stdin(...) | test.rs:48:26:48:66 | ...::new(...) | provenance | MaD:34 | +| test.rs:48:50:48:65 | ...::stdin(...) | test.rs:48:26:48:66 | ...::new(...) | provenance | MaD:30 | | test.rs:49:13:49:16 | data | test.rs:50:15:50:18 | data | provenance | | -| test.rs:49:20:49:25 | reader | test.rs:49:20:49:36 | reader.fill_buf() [Ok] | provenance | MaD:6 | +| test.rs:49:20:49:25 | reader | test.rs:49:20:49:36 | reader.fill_buf() [Ok] | provenance | MaD:28 | | test.rs:49:20:49:36 | reader.fill_buf() [Ok] | test.rs:49:20:49:37 | TryExpr | provenance | | | test.rs:49:20:49:37 | TryExpr | test.rs:49:13:49:16 | data | provenance | | | test.rs:50:15:50:18 | data | test.rs:50:14:50:18 | &data | provenance | | | test.rs:54:13:54:18 | reader | test.rs:55:20:55:25 | reader | provenance | | | test.rs:54:22:54:62 | ...::new(...) | test.rs:54:13:54:18 | reader | provenance | | | test.rs:54:46:54:59 | ...::stdin | test.rs:54:46:54:61 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | -| test.rs:54:46:54:61 | ...::stdin(...) | test.rs:54:22:54:62 | ...::new(...) | provenance | MaD:34 | +| test.rs:54:46:54:61 | ...::stdin(...) | test.rs:54:22:54:62 | ...::new(...) | provenance | MaD:30 | | test.rs:55:13:55:16 | data [&ref] | test.rs:56:15:56:18 | data [&ref] | provenance | | -| test.rs:55:20:55:25 | reader | test.rs:55:20:55:34 | reader.buffer() [&ref] | provenance | MaD:33 | +| test.rs:55:20:55:25 | reader | test.rs:55:20:55:34 | reader.buffer() [&ref] | provenance | MaD:29 | | test.rs:55:20:55:34 | reader.buffer() [&ref] | test.rs:55:13:55:16 | data [&ref] | provenance | | | test.rs:56:15:56:18 | data [&ref] | test.rs:56:14:56:18 | &data | provenance | | | test.rs:61:13:61:22 | mut reader | test.rs:62:9:62:14 | reader | provenance | | | test.rs:61:26:61:66 | ...::new(...) | test.rs:61:13:61:22 | mut reader | provenance | | | test.rs:61:50:61:63 | ...::stdin | test.rs:61:50:61:65 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | -| test.rs:61:50:61:65 | ...::stdin(...) | test.rs:61:26:61:66 | ...::new(...) | provenance | MaD:34 | -| test.rs:62:9:62:14 | reader | test.rs:62:26:62:36 | [post] &mut buffer [&ref] | provenance | MaD:8 | +| test.rs:61:50:61:65 | ...::stdin(...) | test.rs:61:26:61:66 | ...::new(...) | provenance | MaD:30 | +| test.rs:62:9:62:14 | reader | test.rs:62:26:62:36 | [post] &mut buffer [&ref] | provenance | MaD:7 | | test.rs:62:26:62:36 | [post] &mut buffer [&ref] | test.rs:62:31:62:36 | [post] buffer | provenance | | | test.rs:62:31:62:36 | [post] buffer | test.rs:63:15:63:20 | buffer | provenance | | | test.rs:63:15:63:20 | buffer | test.rs:63:14:63:20 | &buffer | provenance | | | test.rs:68:13:68:22 | mut reader | test.rs:69:9:69:14 | reader | provenance | | | test.rs:68:26:68:66 | ...::new(...) | test.rs:68:13:68:22 | mut reader | provenance | | | test.rs:68:50:68:63 | ...::stdin | test.rs:68:50:68:65 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | -| test.rs:68:50:68:65 | ...::stdin(...) | test.rs:68:26:68:66 | ...::new(...) | provenance | MaD:34 | -| test.rs:69:9:69:14 | reader | test.rs:69:33:69:43 | [post] &mut buffer [&ref] | provenance | MaD:9 | +| test.rs:68:50:68:65 | ...::stdin(...) | test.rs:68:26:68:66 | ...::new(...) | provenance | MaD:30 | +| test.rs:69:9:69:14 | reader | test.rs:69:33:69:43 | [post] &mut buffer [&ref] | provenance | MaD:8 | | test.rs:69:33:69:43 | [post] &mut buffer [&ref] | test.rs:69:38:69:43 | [post] buffer | provenance | | | test.rs:69:38:69:43 | [post] buffer | test.rs:70:15:70:20 | buffer | provenance | | | test.rs:69:38:69:43 | [post] buffer | test.rs:71:14:71:19 | buffer | provenance | | @@ -105,60 +106,60 @@ edges | test.rs:71:14:71:19 | buffer | test.rs:71:14:71:22 | buffer[0] | provenance | MaD:5 | | test.rs:75:13:75:28 | mut reader_split | test.rs:76:14:76:25 | reader_split | provenance | | | test.rs:75:13:75:28 | mut reader_split | test.rs:77:33:77:44 | reader_split | provenance | | -| test.rs:75:32:75:72 | ...::new(...) | test.rs:75:32:75:84 | ... .split(...) | provenance | MaD:10 | +| test.rs:75:32:75:72 | ...::new(...) | test.rs:75:32:75:84 | ... .split(...) | provenance | MaD:9 | | test.rs:75:32:75:84 | ... .split(...) | test.rs:75:13:75:28 | mut reader_split | provenance | | | test.rs:75:56:75:69 | ...::stdin | test.rs:75:56:75:71 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | -| test.rs:75:56:75:71 | ...::stdin(...) | test.rs:75:32:75:72 | ...::new(...) | provenance | MaD:34 | -| test.rs:76:14:76:25 | reader_split | test.rs:76:14:76:32 | reader_split.next() [Some, Ok] | provenance | MaD:32 | -| test.rs:76:14:76:32 | reader_split.next() [Some, Ok] | test.rs:76:14:76:41 | ... .unwrap() [Ok] | provenance | MaD:30 | -| test.rs:76:14:76:41 | ... .unwrap() [Ok] | test.rs:76:14:76:50 | ... .unwrap() | provenance | MaD:31 | +| test.rs:75:56:75:71 | ...::stdin(...) | test.rs:75:32:75:72 | ...::new(...) | provenance | MaD:30 | +| test.rs:76:14:76:25 | reader_split | test.rs:76:14:76:32 | reader_split.next() [Some, Ok] | provenance | MaD:27 | +| test.rs:76:14:76:32 | reader_split.next() [Some, Ok] | test.rs:76:14:76:41 | ... .unwrap() [Ok] | provenance | MaD:25 | +| test.rs:76:14:76:41 | ... .unwrap() [Ok] | test.rs:76:14:76:50 | ... .unwrap() | provenance | MaD:26 | | test.rs:77:19:77:29 | Some(...) [Some, Ok] | test.rs:77:24:77:28 | chunk [Ok] | provenance | | | test.rs:77:24:77:28 | chunk [Ok] | test.rs:78:18:78:22 | chunk [Ok] | provenance | | -| test.rs:77:33:77:44 | reader_split | test.rs:77:33:77:51 | reader_split.next() [Some, Ok] | provenance | MaD:32 | +| test.rs:77:33:77:44 | reader_split | test.rs:77:33:77:51 | reader_split.next() [Some, Ok] | provenance | MaD:27 | | test.rs:77:33:77:51 | reader_split.next() [Some, Ok] | test.rs:77:19:77:29 | Some(...) [Some, Ok] | provenance | | -| test.rs:78:18:78:22 | chunk [Ok] | test.rs:78:18:78:31 | chunk.unwrap() | provenance | MaD:31 | +| test.rs:78:18:78:22 | chunk [Ok] | test.rs:78:18:78:31 | chunk.unwrap() | provenance | MaD:26 | | test.rs:83:13:83:18 | reader | test.rs:84:21:84:26 | reader | provenance | | | test.rs:83:22:83:62 | ...::new(...) | test.rs:83:13:83:18 | reader | provenance | | | test.rs:83:46:83:59 | ...::stdin | test.rs:83:46:83:61 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | -| test.rs:83:46:83:61 | ...::stdin(...) | test.rs:83:22:83:62 | ...::new(...) | provenance | MaD:34 | -| test.rs:84:21:84:26 | reader | test.rs:84:21:84:34 | reader.lines() | provenance | MaD:7 | +| test.rs:83:46:83:61 | ...::stdin(...) | test.rs:83:22:83:62 | ...::new(...) | provenance | MaD:30 | +| test.rs:84:21:84:26 | reader | test.rs:84:21:84:34 | reader.lines() | provenance | MaD:6 | | test.rs:84:21:84:34 | reader.lines() | test.rs:85:18:85:21 | line | provenance | | | test.rs:90:13:90:18 | reader | test.rs:91:20:91:25 | reader | provenance | | | test.rs:90:22:90:62 | ...::new(...) | test.rs:90:13:90:18 | reader | provenance | | | test.rs:90:46:90:59 | ...::stdin | test.rs:90:46:90:61 | ...::stdin(...) | provenance | Src:MaD:1 MaD:1 | -| test.rs:90:46:90:61 | ...::stdin(...) | test.rs:90:22:90:62 | ...::new(...) | provenance | MaD:34 | +| test.rs:90:46:90:61 | ...::stdin(...) | test.rs:90:22:90:62 | ...::new(...) | provenance | MaD:30 | | test.rs:91:13:91:16 | line | test.rs:92:14:92:17 | line | provenance | | -| test.rs:91:20:91:25 | reader | test.rs:91:20:91:33 | reader.lines() | provenance | MaD:7 | +| test.rs:91:20:91:25 | reader | test.rs:91:20:91:33 | reader.lines() | provenance | MaD:6 | | test.rs:91:20:91:33 | reader.lines() | test.rs:91:20:91:40 | ... .nth(...) [Some] | provenance | MaD:4 | -| test.rs:91:20:91:40 | ... .nth(...) [Some] | test.rs:91:20:91:49 | ... .unwrap() | provenance | MaD:30 | +| test.rs:91:20:91:40 | ... .nth(...) [Some] | test.rs:91:20:91:49 | ... .unwrap() | provenance | MaD:25 | | test.rs:91:20:91:49 | ... .unwrap() | test.rs:91:13:91:16 | line | provenance | | -| test.rs:92:14:92:17 | line | test.rs:92:14:92:26 | line.unwrap() | provenance | MaD:31 | +| test.rs:92:14:92:17 | line | test.rs:92:14:92:26 | line.unwrap() | provenance | MaD:26 | | test.rs:92:14:92:26 | line.unwrap() | test.rs:92:14:92:34 | ... .clone() | provenance | MaD:3 | | test.rs:109:13:109:21 | mut stdin | test.rs:111:22:111:26 | stdin | provenance | | | test.rs:109:25:109:40 | ...::stdin | test.rs:109:25:109:42 | ...::stdin(...) | provenance | Src:MaD:2 MaD:2 | | test.rs:109:25:109:42 | ...::stdin(...) | test.rs:109:13:109:21 | mut stdin | provenance | | -| test.rs:111:22:111:26 | stdin | test.rs:111:33:111:43 | [post] &mut buffer [&ref] | provenance | MaD:21 | +| test.rs:111:22:111:26 | stdin | test.rs:111:33:111:43 | [post] &mut buffer [&ref] | provenance | MaD:16 | | test.rs:111:33:111:43 | [post] &mut buffer [&ref] | test.rs:111:38:111:43 | [post] buffer | provenance | | | test.rs:111:38:111:43 | [post] buffer | test.rs:112:15:112:20 | buffer | provenance | | | test.rs:112:15:112:20 | buffer | test.rs:112:14:112:20 | &buffer | provenance | | | test.rs:116:13:116:21 | mut stdin | test.rs:118:22:118:26 | stdin | provenance | | | test.rs:116:25:116:40 | ...::stdin | test.rs:116:25:116:42 | ...::stdin(...) | provenance | Src:MaD:2 MaD:2 | | test.rs:116:25:116:42 | ...::stdin(...) | test.rs:116:13:116:21 | mut stdin | provenance | | -| test.rs:118:22:118:26 | stdin | test.rs:118:40:118:50 | [post] &mut buffer [&ref] | provenance | MaD:27 | +| test.rs:118:22:118:26 | stdin | test.rs:118:40:118:50 | [post] &mut buffer [&ref] | provenance | MaD:22 | | test.rs:118:40:118:50 | [post] &mut buffer [&ref] | test.rs:118:45:118:50 | [post] buffer | provenance | | | test.rs:118:45:118:50 | [post] buffer | test.rs:119:15:119:20 | buffer | provenance | | | test.rs:119:15:119:20 | buffer | test.rs:119:14:119:20 | &buffer | provenance | | | test.rs:123:13:123:21 | mut stdin | test.rs:125:22:125:26 | stdin | provenance | | | test.rs:123:25:123:40 | ...::stdin | test.rs:123:25:123:42 | ...::stdin(...) | provenance | Src:MaD:2 MaD:2 | | test.rs:123:25:123:42 | ...::stdin(...) | test.rs:123:13:123:21 | mut stdin | provenance | | -| test.rs:125:22:125:26 | stdin | test.rs:125:43:125:53 | [post] &mut buffer [&ref] | provenance | MaD:28 | +| test.rs:125:22:125:26 | stdin | test.rs:125:43:125:53 | [post] &mut buffer [&ref] | provenance | MaD:23 | | test.rs:125:43:125:53 | [post] &mut buffer [&ref] | test.rs:125:48:125:53 | [post] buffer | provenance | | | test.rs:125:48:125:53 | [post] buffer | test.rs:126:15:126:20 | buffer | provenance | | | test.rs:126:15:126:20 | buffer | test.rs:126:14:126:20 | &buffer | provenance | | | test.rs:130:13:130:21 | mut stdin | test.rs:132:9:132:13 | stdin | provenance | | | test.rs:130:25:130:40 | ...::stdin | test.rs:130:25:130:42 | ...::stdin(...) | provenance | Src:MaD:2 MaD:2 | | test.rs:130:25:130:42 | ...::stdin(...) | test.rs:130:13:130:21 | mut stdin | provenance | | -| test.rs:132:9:132:13 | stdin | test.rs:132:26:132:36 | [post] &mut buffer [&ref] | provenance | MaD:23 | +| test.rs:132:9:132:13 | stdin | test.rs:132:26:132:36 | [post] &mut buffer [&ref] | provenance | MaD:18 | | test.rs:132:26:132:36 | [post] &mut buffer [&ref] | test.rs:132:31:132:36 | [post] buffer | provenance | | | test.rs:132:31:132:36 | [post] buffer | test.rs:133:15:133:20 | buffer | provenance | | | test.rs:133:15:133:20 | buffer | test.rs:133:14:133:20 | &buffer | provenance | | @@ -169,38 +170,38 @@ edges | test.rs:137:25:137:40 | ...::stdin | test.rs:137:25:137:42 | ...::stdin(...) | provenance | Src:MaD:2 MaD:2 | | test.rs:137:25:137:42 | ...::stdin(...) | test.rs:137:13:137:21 | mut stdin | provenance | | | test.rs:138:13:138:14 | v1 | test.rs:142:14:142:15 | v1 | provenance | | -| test.rs:138:18:138:22 | stdin | test.rs:138:18:138:32 | stdin.read_u8() [future, Ok] | provenance | MaD:29 | +| test.rs:138:18:138:22 | stdin | test.rs:138:18:138:32 | stdin.read_u8() [future, Ok] | provenance | MaD:24 | | test.rs:138:18:138:32 | stdin.read_u8() [future, Ok] | test.rs:138:18:138:38 | await ... [Ok] | provenance | | | test.rs:138:18:138:38 | await ... [Ok] | test.rs:138:18:138:39 | TryExpr | provenance | | | test.rs:138:18:138:39 | TryExpr | test.rs:138:13:138:14 | v1 | provenance | | | test.rs:139:13:139:14 | v2 | test.rs:143:14:143:15 | v2 | provenance | | -| test.rs:139:18:139:22 | stdin | test.rs:139:18:139:33 | stdin.read_i16() [future, Ok] | provenance | MaD:25 | +| test.rs:139:18:139:22 | stdin | test.rs:139:18:139:33 | stdin.read_i16() [future, Ok] | provenance | MaD:20 | | test.rs:139:18:139:33 | stdin.read_i16() [future, Ok] | test.rs:139:18:139:39 | await ... [Ok] | provenance | | | test.rs:139:18:139:39 | await ... [Ok] | test.rs:139:18:139:40 | TryExpr | provenance | | | test.rs:139:18:139:40 | TryExpr | test.rs:139:13:139:14 | v2 | provenance | | | test.rs:140:13:140:14 | v3 | test.rs:144:14:144:15 | v3 | provenance | | -| test.rs:140:18:140:22 | stdin | test.rs:140:18:140:33 | stdin.read_f32() [future, Ok] | provenance | MaD:24 | +| test.rs:140:18:140:22 | stdin | test.rs:140:18:140:33 | stdin.read_f32() [future, Ok] | provenance | MaD:19 | | test.rs:140:18:140:33 | stdin.read_f32() [future, Ok] | test.rs:140:18:140:39 | await ... [Ok] | provenance | | | test.rs:140:18:140:39 | await ... [Ok] | test.rs:140:18:140:40 | TryExpr | provenance | | | test.rs:140:18:140:40 | TryExpr | test.rs:140:13:140:14 | v3 | provenance | | | test.rs:141:13:141:14 | v4 | test.rs:145:14:145:15 | v4 | provenance | | -| test.rs:141:18:141:22 | stdin | test.rs:141:18:141:36 | stdin.read_i64_le() [future, Ok] | provenance | MaD:26 | +| test.rs:141:18:141:22 | stdin | test.rs:141:18:141:36 | stdin.read_i64_le() [future, Ok] | provenance | MaD:21 | | test.rs:141:18:141:36 | stdin.read_i64_le() [future, Ok] | test.rs:141:18:141:42 | await ... [Ok] | provenance | | | test.rs:141:18:141:42 | await ... [Ok] | test.rs:141:18:141:43 | TryExpr | provenance | | | test.rs:141:18:141:43 | TryExpr | test.rs:141:13:141:14 | v4 | provenance | | | test.rs:149:13:149:21 | mut stdin | test.rs:151:9:151:13 | stdin | provenance | | | test.rs:149:25:149:40 | ...::stdin | test.rs:149:25:149:42 | ...::stdin(...) | provenance | Src:MaD:2 MaD:2 | | test.rs:149:25:149:42 | ...::stdin(...) | test.rs:149:13:149:21 | mut stdin | provenance | | -| test.rs:151:9:151:13 | stdin | test.rs:151:24:151:34 | [post] &mut buffer [&ref] | provenance | MaD:22 | +| test.rs:151:9:151:13 | stdin | test.rs:151:24:151:34 | [post] &mut buffer [&ref] | provenance | MaD:17 | | test.rs:151:24:151:34 | [post] &mut buffer [&ref] | test.rs:151:29:151:34 | [post] buffer | provenance | | | test.rs:151:29:151:34 | [post] buffer | test.rs:152:15:152:20 | buffer | provenance | | | test.rs:152:15:152:20 | buffer | test.rs:152:14:152:20 | &buffer | provenance | | | test.rs:158:13:158:22 | mut reader | test.rs:159:20:159:25 | reader | provenance | | | test.rs:158:26:158:70 | ...::new(...) | test.rs:158:13:158:22 | mut reader | provenance | | | test.rs:158:52:158:67 | ...::stdin | test.rs:158:52:158:69 | ...::stdin(...) | provenance | Src:MaD:2 MaD:2 | -| test.rs:158:52:158:69 | ...::stdin(...) | test.rs:158:26:158:70 | ...::new(...) | provenance | MaD:37 | +| test.rs:158:52:158:69 | ...::stdin(...) | test.rs:158:26:158:70 | ...::new(...) | provenance | MaD:38 | | test.rs:159:13:159:16 | data | test.rs:160:15:160:18 | data | provenance | | -| test.rs:159:20:159:25 | reader | test.rs:159:20:159:36 | reader.fill_buf() [future, Ok] | provenance | MaD:16 | +| test.rs:159:20:159:25 | reader | test.rs:159:20:159:36 | reader.fill_buf() [future, Ok] | provenance | MaD:11 | | test.rs:159:20:159:36 | reader.fill_buf() [future, Ok] | test.rs:159:20:159:42 | await ... [Ok] | provenance | | | test.rs:159:20:159:42 | await ... [Ok] | test.rs:159:20:159:43 | TryExpr | provenance | | | test.rs:159:20:159:43 | TryExpr | test.rs:159:13:159:16 | data | provenance | | @@ -208,24 +209,24 @@ edges | test.rs:164:13:164:18 | reader | test.rs:165:20:165:25 | reader | provenance | | | test.rs:164:22:164:66 | ...::new(...) | test.rs:164:13:164:18 | reader | provenance | | | test.rs:164:48:164:63 | ...::stdin | test.rs:164:48:164:65 | ...::stdin(...) | provenance | Src:MaD:2 MaD:2 | -| test.rs:164:48:164:65 | ...::stdin(...) | test.rs:164:22:164:66 | ...::new(...) | provenance | MaD:37 | +| test.rs:164:48:164:65 | ...::stdin(...) | test.rs:164:22:164:66 | ...::new(...) | provenance | MaD:38 | | test.rs:165:13:165:16 | data [&ref] | test.rs:166:15:166:18 | data [&ref] | provenance | | -| test.rs:165:20:165:25 | reader | test.rs:165:20:165:34 | reader.buffer() [&ref] | provenance | MaD:36 | +| test.rs:165:20:165:25 | reader | test.rs:165:20:165:34 | reader.buffer() [&ref] | provenance | MaD:37 | | test.rs:165:20:165:34 | reader.buffer() [&ref] | test.rs:165:13:165:16 | data [&ref] | provenance | | | test.rs:166:15:166:18 | data [&ref] | test.rs:166:14:166:18 | &data | provenance | | | test.rs:171:13:171:22 | mut reader | test.rs:172:9:172:14 | reader | provenance | | | test.rs:171:26:171:70 | ...::new(...) | test.rs:171:13:171:22 | mut reader | provenance | | | test.rs:171:52:171:67 | ...::stdin | test.rs:171:52:171:69 | ...::stdin(...) | provenance | Src:MaD:2 MaD:2 | -| test.rs:171:52:171:69 | ...::stdin(...) | test.rs:171:26:171:70 | ...::new(...) | provenance | MaD:37 | -| test.rs:172:9:172:14 | reader | test.rs:172:26:172:36 | [post] &mut buffer [&ref] | provenance | MaD:18 | +| test.rs:171:52:171:69 | ...::stdin(...) | test.rs:171:26:171:70 | ...::new(...) | provenance | MaD:38 | +| test.rs:172:9:172:14 | reader | test.rs:172:26:172:36 | [post] &mut buffer [&ref] | provenance | MaD:13 | | test.rs:172:26:172:36 | [post] &mut buffer [&ref] | test.rs:172:31:172:36 | [post] buffer | provenance | | | test.rs:172:31:172:36 | [post] buffer | test.rs:173:15:173:20 | buffer | provenance | | | test.rs:173:15:173:20 | buffer | test.rs:173:14:173:20 | &buffer | provenance | | | test.rs:178:13:178:22 | mut reader | test.rs:179:9:179:14 | reader | provenance | | | test.rs:178:26:178:70 | ...::new(...) | test.rs:178:13:178:22 | mut reader | provenance | | | test.rs:178:52:178:67 | ...::stdin | test.rs:178:52:178:69 | ...::stdin(...) | provenance | Src:MaD:2 MaD:2 | -| test.rs:178:52:178:69 | ...::stdin(...) | test.rs:178:26:178:70 | ...::new(...) | provenance | MaD:37 | -| test.rs:179:9:179:14 | reader | test.rs:179:33:179:43 | [post] &mut buffer [&ref] | provenance | MaD:19 | +| test.rs:178:52:178:69 | ...::stdin(...) | test.rs:178:26:178:70 | ...::new(...) | provenance | MaD:38 | +| test.rs:179:9:179:14 | reader | test.rs:179:33:179:43 | [post] &mut buffer [&ref] | provenance | MaD:14 | | test.rs:179:33:179:43 | [post] &mut buffer [&ref] | test.rs:179:38:179:43 | [post] buffer | provenance | | | test.rs:179:38:179:43 | [post] buffer | test.rs:180:15:180:20 | buffer | provenance | | | test.rs:179:38:179:43 | [post] buffer | test.rs:181:14:181:19 | buffer | provenance | | @@ -233,35 +234,35 @@ edges | test.rs:181:14:181:19 | buffer | test.rs:181:14:181:22 | buffer[0] | provenance | MaD:5 | | test.rs:185:13:185:28 | mut reader_split | test.rs:186:14:186:25 | reader_split | provenance | | | test.rs:185:13:185:28 | mut reader_split | test.rs:187:33:187:44 | reader_split | provenance | | -| test.rs:185:32:185:76 | ...::new(...) | test.rs:185:32:185:88 | ... .split(...) | provenance | MaD:20 | +| test.rs:185:32:185:76 | ...::new(...) | test.rs:185:32:185:88 | ... .split(...) | provenance | MaD:15 | | test.rs:185:32:185:88 | ... .split(...) | test.rs:185:13:185:28 | mut reader_split | provenance | | | test.rs:185:58:185:73 | ...::stdin | test.rs:185:58:185:75 | ...::stdin(...) | provenance | Src:MaD:2 MaD:2 | -| test.rs:185:58:185:75 | ...::stdin(...) | test.rs:185:32:185:76 | ...::new(...) | provenance | MaD:37 | -| test.rs:186:14:186:25 | reader_split | test.rs:186:14:186:40 | reader_split.next_segment() [future, Ok, Some] | provenance | MaD:39 | +| test.rs:185:58:185:75 | ...::stdin(...) | test.rs:185:32:185:76 | ...::new(...) | provenance | MaD:38 | +| test.rs:186:14:186:25 | reader_split | test.rs:186:14:186:40 | reader_split.next_segment() [future, Ok, Some] | provenance | MaD:40 | | test.rs:186:14:186:40 | reader_split.next_segment() [future, Ok, Some] | test.rs:186:14:186:46 | await ... [Ok, Some] | provenance | | | test.rs:186:14:186:46 | await ... [Ok, Some] | test.rs:186:14:186:47 | TryExpr [Some] | provenance | | -| test.rs:186:14:186:47 | TryExpr [Some] | test.rs:186:14:186:56 | ... .unwrap() | provenance | MaD:30 | +| test.rs:186:14:186:47 | TryExpr [Some] | test.rs:186:14:186:56 | ... .unwrap() | provenance | MaD:25 | | test.rs:187:19:187:29 | Some(...) [Some] | test.rs:187:24:187:28 | chunk | provenance | | | test.rs:187:24:187:28 | chunk | test.rs:188:18:188:22 | chunk | provenance | | -| test.rs:187:33:187:44 | reader_split | test.rs:187:33:187:59 | reader_split.next_segment() [future, Ok, Some] | provenance | MaD:39 | +| test.rs:187:33:187:44 | reader_split | test.rs:187:33:187:59 | reader_split.next_segment() [future, Ok, Some] | provenance | MaD:40 | | test.rs:187:33:187:59 | reader_split.next_segment() [future, Ok, Some] | test.rs:187:33:187:65 | await ... [Ok, Some] | provenance | | | test.rs:187:33:187:65 | await ... [Ok, Some] | test.rs:187:33:187:66 | TryExpr [Some] | provenance | | | test.rs:187:33:187:66 | TryExpr [Some] | test.rs:187:19:187:29 | Some(...) [Some] | provenance | | | test.rs:193:13:193:18 | reader | test.rs:194:25:194:30 | reader | provenance | | | test.rs:193:22:193:66 | ...::new(...) | test.rs:193:13:193:18 | reader | provenance | | | test.rs:193:48:193:63 | ...::stdin | test.rs:193:48:193:65 | ...::stdin(...) | provenance | Src:MaD:2 MaD:2 | -| test.rs:193:48:193:65 | ...::stdin(...) | test.rs:193:22:193:66 | ...::new(...) | provenance | MaD:37 | +| test.rs:193:48:193:65 | ...::stdin(...) | test.rs:193:22:193:66 | ...::new(...) | provenance | MaD:38 | | test.rs:194:13:194:21 | mut lines | test.rs:195:14:195:18 | lines | provenance | | | test.rs:194:13:194:21 | mut lines | test.rs:196:32:196:36 | lines | provenance | | -| test.rs:194:25:194:30 | reader | test.rs:194:25:194:38 | reader.lines() | provenance | MaD:17 | +| test.rs:194:25:194:30 | reader | test.rs:194:25:194:38 | reader.lines() | provenance | MaD:12 | | test.rs:194:25:194:38 | reader.lines() | test.rs:194:13:194:21 | mut lines | provenance | | -| test.rs:195:14:195:18 | lines | test.rs:195:14:195:30 | lines.next_line() [future, Ok, Some] | provenance | MaD:38 | +| test.rs:195:14:195:18 | lines | test.rs:195:14:195:30 | lines.next_line() [future, Ok, Some] | provenance | MaD:39 | | test.rs:195:14:195:30 | lines.next_line() [future, Ok, Some] | test.rs:195:14:195:36 | await ... [Ok, Some] | provenance | | | test.rs:195:14:195:36 | await ... [Ok, Some] | test.rs:195:14:195:37 | TryExpr [Some] | provenance | | -| test.rs:195:14:195:37 | TryExpr [Some] | test.rs:195:14:195:46 | ... .unwrap() | provenance | MaD:30 | +| test.rs:195:14:195:37 | TryExpr [Some] | test.rs:195:14:195:46 | ... .unwrap() | provenance | MaD:25 | | test.rs:196:19:196:28 | Some(...) [Some] | test.rs:196:24:196:27 | line | provenance | | | test.rs:196:24:196:27 | line | test.rs:197:18:197:21 | line | provenance | | -| test.rs:196:32:196:36 | lines | test.rs:196:32:196:48 | lines.next_line() [future, Ok, Some] | provenance | MaD:38 | +| test.rs:196:32:196:36 | lines | test.rs:196:32:196:48 | lines.next_line() [future, Ok, Some] | provenance | MaD:39 | | test.rs:196:32:196:48 | lines.next_line() [future, Ok, Some] | test.rs:196:32:196:54 | await ... [Ok, Some] | provenance | | | test.rs:196:32:196:54 | await ... [Ok, Some] | test.rs:196:32:196:55 | TryExpr [Some] | provenance | | | test.rs:196:32:196:55 | TryExpr [Some] | test.rs:196:19:196:28 | Some(...) [Some] | provenance | | diff --git a/rust/ql/test/library-tests/dataflow/strings/inline-taint-flow.expected b/rust/ql/test/library-tests/dataflow/strings/inline-taint-flow.expected index 3c95a70e2d8d..859ab8e116e8 100644 --- a/rust/ql/test/library-tests/dataflow/strings/inline-taint-flow.expected +++ b/rust/ql/test/library-tests/dataflow/strings/inline-taint-flow.expected @@ -1,36 +1,34 @@ models | 1 | Summary: <_ as alloc::string::ToString>::to_string; Argument[self].Reference; ReturnValue; taint | -| 2 | Summary: <_ as core::convert::From>::from; Argument[0]; ReturnValue; taint | -| 3 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | -| 4 | Summary: ::from; Argument[0].Field[alloc::borrow::Cow::Owned(0)]; ReturnValue; value | -| 5 | Summary: ::add; Argument[0].Reference; ReturnValue; taint | -| 6 | Summary: ::add; Argument[self]; ReturnValue; taint | -| 7 | Summary: ::as_str; Argument[self].Reference; ReturnValue.Reference; taint | -| 8 | Summary: alloc::fmt::format; Argument[0]; ReturnValue; taint | -| 9 | Summary: core::hint::must_use; Argument[0]; ReturnValue; value | +| 2 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | +| 3 | Summary: ::from; Argument[0].Field[alloc::borrow::Cow::Owned(0)]; ReturnValue; value | +| 4 | Summary: ::add; Argument[0].Reference; ReturnValue; taint | +| 5 | Summary: ::add; Argument[self]; ReturnValue; taint | +| 6 | Summary: ::as_str; Argument[self].Reference; ReturnValue.Reference; taint | +| 7 | Summary: alloc::fmt::format; Argument[0]; ReturnValue; taint | +| 8 | Summary: core::hint::must_use; Argument[0]; ReturnValue; value | edges | main.rs:26:9:26:9 | s | main.rs:27:19:27:19 | s | provenance | | | main.rs:26:9:26:9 | s | main.rs:27:19:27:25 | s[...] | provenance | | | main.rs:26:13:26:22 | source(...) | main.rs:26:9:26:9 | s | provenance | | | main.rs:27:9:27:14 | sliced [&ref] | main.rs:28:16:28:21 | sliced | provenance | | | main.rs:27:18:27:25 | &... [&ref] | main.rs:27:9:27:14 | sliced [&ref] | provenance | | -| main.rs:27:19:27:19 | s | main.rs:27:19:27:25 | s[...] | provenance | MaD:3 | +| main.rs:27:19:27:19 | s | main.rs:27:19:27:25 | s[...] | provenance | MaD:2 | | main.rs:27:19:27:25 | s[...] | main.rs:27:18:27:25 | &... [&ref] | provenance | | | main.rs:32:9:32:10 | s1 | main.rs:35:14:35:15 | s1 | provenance | | | main.rs:32:14:32:23 | source(...) | main.rs:32:9:32:10 | s1 | provenance | | | main.rs:35:9:35:10 | s4 | main.rs:38:10:38:11 | s4 | provenance | | -| main.rs:35:14:35:15 | s1 | main.rs:35:14:35:20 | ... + ... | provenance | MaD:6 | +| main.rs:35:14:35:15 | s1 | main.rs:35:14:35:20 | ... + ... | provenance | MaD:5 | | main.rs:35:14:35:20 | ... + ... | main.rs:35:9:35:10 | s4 | provenance | | | main.rs:43:9:43:10 | s1 | main.rs:46:34:46:35 | s1 | provenance | | | main.rs:43:14:43:23 | source(...) | main.rs:43:9:43:10 | s1 | provenance | | -| main.rs:46:33:46:35 | &s1 [&ref] | main.rs:46:10:46:35 | ... + ... | provenance | MaD:5 | +| main.rs:46:33:46:35 | &s1 [&ref] | main.rs:46:10:46:35 | ... + ... | provenance | MaD:4 | | main.rs:46:34:46:35 | s1 | main.rs:46:33:46:35 | &s1 [&ref] | provenance | | | main.rs:51:9:51:10 | s1 | main.rs:52:27:52:28 | s1 | provenance | | | main.rs:51:14:51:29 | source_slice(...) | main.rs:51:9:51:10 | s1 | provenance | | | main.rs:52:9:52:10 | s2 | main.rs:53:10:53:11 | s2 | provenance | | | main.rs:52:14:52:29 | ...::from(...) | main.rs:52:9:52:10 | s2 | provenance | | -| main.rs:52:27:52:28 | s1 | main.rs:52:14:52:29 | ...::from(...) | provenance | MaD:2 | -| main.rs:52:27:52:28 | s1 | main.rs:52:14:52:29 | ...::from(...) | provenance | MaD:4 | +| main.rs:52:27:52:28 | s1 | main.rs:52:14:52:29 | ...::from(...) | provenance | MaD:3 | | main.rs:57:9:57:10 | s1 | main.rs:58:14:58:15 | s1 | provenance | | | main.rs:57:14:57:29 | source_slice(...) | main.rs:57:9:57:10 | s1 | provenance | | | main.rs:58:9:58:10 | s2 | main.rs:59:10:59:11 | s2 | provenance | | @@ -38,32 +36,32 @@ edges | main.rs:58:14:58:27 | s1.to_string() | main.rs:58:9:58:10 | s2 | provenance | | | main.rs:63:9:63:9 | s | main.rs:64:16:64:16 | s | provenance | | | main.rs:63:13:63:22 | source(...) | main.rs:63:9:63:9 | s | provenance | | -| main.rs:64:16:64:16 | s | main.rs:64:16:64:25 | s.as_str() | provenance | MaD:7 | +| main.rs:64:16:64:16 | s | main.rs:64:16:64:25 | s.as_str() | provenance | MaD:6 | | main.rs:68:9:68:9 | s | main.rs:70:34:70:61 | MacroExpr | provenance | | | main.rs:68:9:68:9 | s | main.rs:73:34:73:59 | MacroExpr | provenance | | | main.rs:68:13:68:22 | source(...) | main.rs:68:9:68:9 | s | provenance | | | main.rs:70:9:70:18 | formatted1 | main.rs:71:10:71:19 | formatted1 | provenance | | | main.rs:70:22:70:62 | ...::format(...) | main.rs:70:9:70:18 | formatted1 | provenance | | -| main.rs:70:34:70:61 | MacroExpr | main.rs:70:22:70:62 | ...::format(...) | provenance | MaD:8 | +| main.rs:70:34:70:61 | MacroExpr | main.rs:70:22:70:62 | ...::format(...) | provenance | MaD:7 | | main.rs:73:9:73:18 | formatted2 | main.rs:74:10:74:19 | formatted2 | provenance | | | main.rs:73:22:73:60 | ...::format(...) | main.rs:73:9:73:18 | formatted2 | provenance | | -| main.rs:73:34:73:59 | MacroExpr | main.rs:73:22:73:60 | ...::format(...) | provenance | MaD:8 | +| main.rs:73:34:73:59 | MacroExpr | main.rs:73:22:73:60 | ...::format(...) | provenance | MaD:7 | | main.rs:76:9:76:13 | width | main.rs:77:34:77:74 | MacroExpr | provenance | | | main.rs:76:17:76:32 | source_usize(...) | main.rs:76:9:76:13 | width | provenance | | | main.rs:77:9:77:18 | formatted3 | main.rs:78:10:78:19 | formatted3 | provenance | | | main.rs:77:22:77:75 | ...::format(...) | main.rs:77:9:77:18 | formatted3 | provenance | | -| main.rs:77:34:77:74 | MacroExpr | main.rs:77:22:77:75 | ...::format(...) | provenance | MaD:8 | +| main.rs:77:34:77:74 | MacroExpr | main.rs:77:22:77:75 | ...::format(...) | provenance | MaD:7 | | main.rs:82:9:82:10 | s1 | main.rs:86:18:86:25 | MacroExpr | provenance | | | main.rs:82:9:82:10 | s1 | main.rs:87:18:87:32 | MacroExpr | provenance | | | main.rs:82:14:82:23 | source(...) | main.rs:82:9:82:10 | s1 | provenance | | | main.rs:86:18:86:25 | ...::format(...) | main.rs:86:18:86:25 | { ... } | provenance | | | main.rs:86:18:86:25 | ...::must_use(...) | main.rs:86:10:86:26 | MacroExpr | provenance | | -| main.rs:86:18:86:25 | MacroExpr | main.rs:86:18:86:25 | ...::format(...) | provenance | MaD:8 | -| main.rs:86:18:86:25 | { ... } | main.rs:86:18:86:25 | ...::must_use(...) | provenance | MaD:9 | +| main.rs:86:18:86:25 | MacroExpr | main.rs:86:18:86:25 | ...::format(...) | provenance | MaD:7 | +| main.rs:86:18:86:25 | { ... } | main.rs:86:18:86:25 | ...::must_use(...) | provenance | MaD:8 | | main.rs:87:18:87:32 | ...::format(...) | main.rs:87:18:87:32 | { ... } | provenance | | | main.rs:87:18:87:32 | ...::must_use(...) | main.rs:87:10:87:33 | MacroExpr | provenance | | -| main.rs:87:18:87:32 | MacroExpr | main.rs:87:18:87:32 | ...::format(...) | provenance | MaD:8 | -| main.rs:87:18:87:32 | { ... } | main.rs:87:18:87:32 | ...::must_use(...) | provenance | MaD:9 | +| main.rs:87:18:87:32 | MacroExpr | main.rs:87:18:87:32 | ...::format(...) | provenance | MaD:7 | +| main.rs:87:18:87:32 | { ... } | main.rs:87:18:87:32 | ...::must_use(...) | provenance | MaD:8 | nodes | main.rs:26:9:26:9 | s | semmle.label | s | | main.rs:26:13:26:22 | source(...) | semmle.label | source(...) | diff --git a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected index 221de45702b5..255af4cc86ed 100644 --- a/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected +++ b/rust/ql/test/library-tests/dataflow/taint/inline-taint-flow.expected @@ -8,32 +8,32 @@ models | 7 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self,0]; ReturnValue; taint | | 8 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[0]; Argument[self].Reference; taint | | 9 | Summary: <_ as core::ops::arith::MulAssign>::mul_assign; Argument[self].Reference; Argument[self].Reference; taint | -| 10 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | -| 11 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self]; ReturnValue; taint | -| 12 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[self,0]; ReturnValue; taint | -| 13 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[0]; Argument[self].Reference; taint | -| 14 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[self].Reference; Argument[self].Reference; taint | -| 15 | Summary: <_ as core::ops::bit::BitAnd>::bitand; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | -| 16 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | -| 17 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[0]; Argument[self].Reference; taint | -| 18 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | -| 19 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[self].Reference; Argument[self].Reference; taint | -| 20 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[self,0]; ReturnValue; taint | -| 21 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self,0]; ReturnValue; taint | -| 22 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0]; Argument[self].Reference; taint | -| 23 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[self].Reference; Argument[self].Reference; taint | -| 24 | Summary: <_ as core::ops::bit::Not>::not; Argument[self].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | -| 25 | Summary: <_ as core::ops::bit::Not>::not; Argument[self]; ReturnValue; taint | -| 26 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | -| 27 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0]; ReturnValue; taint | -| 28 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | -| 29 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0]; Argument[self].Reference; taint | -| 30 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | -| 31 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[self].Reference; Argument[self].Reference; taint | -| 32 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[self,0]; ReturnValue; taint | -| 33 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0]; Argument[self].Reference; taint | -| 34 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[self].Reference; Argument[self].Reference; taint | -| 35 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | +| 10 | Summary: <_ as core::ops::arith::Neg>::neg; Argument[self]; ReturnValue; taint | +| 11 | Summary: <_ as core::ops::arith::Sub>::sub; Argument[self,0]; ReturnValue; taint | +| 12 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[0]; Argument[self].Reference; taint | +| 13 | Summary: <_ as core::ops::arith::SubAssign>::sub_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 14 | Summary: <_ as core::ops::bit::BitAnd>::bitand; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 15 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 16 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[0]; Argument[self].Reference; taint | +| 17 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 18 | Summary: <_ as core::ops::bit::BitAndAssign>::bitand_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 19 | Summary: <_ as core::ops::bit::BitOr>::bitor; Argument[self,0]; ReturnValue; taint | +| 20 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self,0]; ReturnValue; taint | +| 21 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[0]; Argument[self].Reference; taint | +| 22 | Summary: <_ as core::ops::bit::BitXorAssign>::bitxor_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 23 | Summary: <_ as core::ops::bit::Not>::not; Argument[self]; ReturnValue; taint | +| 24 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 25 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0]; ReturnValue; taint | +| 26 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0].Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 27 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[0]; Argument[self].Reference; taint | +| 28 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; Argument[self].Reference.Field[core::num::wrapping::Wrapping(0)]; taint | +| 29 | Summary: <_ as core::ops::bit::ShlAssign>::shl_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 30 | Summary: <_ as core::ops::bit::Shr>::shr; Argument[self,0]; ReturnValue; taint | +| 31 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[0]; Argument[self].Reference; taint | +| 32 | Summary: <_ as core::ops::bit::ShrAssign>::shr_assign; Argument[self].Reference; Argument[self].Reference; taint | +| 33 | Summary: <_ as core::ops::index::Index>::index; Argument[self].Reference.Element; ReturnValue.Reference; value | +| 34 | Summary: ::neg; Argument[self].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | +| 35 | Summary: ::not; Argument[self].Field[core::num::wrapping::Wrapping(0)]; ReturnValue.Field[core::num::wrapping::Wrapping(0)]; taint | edges | main.rs:12:9:12:9 | a | main.rs:13:10:13:10 | a | provenance | | | main.rs:12:9:12:9 | a | main.rs:14:14:14:14 | a | provenance | | @@ -46,16 +46,16 @@ edges | main.rs:21:10:21:19 | source(...) | main.rs:22:10:22:10 | c | provenance | MaD:4 | | main.rs:26:9:26:9 | a | main.rs:27:11:27:11 | a | provenance | | | main.rs:26:13:26:21 | source(...) | main.rs:26:9:26:9 | a | provenance | | -| main.rs:27:11:27:11 | a | main.rs:27:10:27:11 | - ... | provenance | MaD:11 | -| main.rs:29:11:29:19 | source(...) | main.rs:29:10:29:19 | ! ... | provenance | MaD:25 | -| main.rs:31:10:31:18 | source(...) | main.rs:31:10:31:22 | ... - ... | provenance | MaD:12 | -| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:12 | +| main.rs:27:11:27:11 | a | main.rs:27:10:27:11 | - ... | provenance | MaD:10 | +| main.rs:29:11:29:19 | source(...) | main.rs:29:10:29:19 | ! ... | provenance | MaD:23 | +| main.rs:31:10:31:18 | source(...) | main.rs:31:10:31:22 | ... - ... | provenance | MaD:11 | +| main.rs:32:17:32:25 | source(...) | main.rs:32:10:32:25 | ... - ... | provenance | MaD:11 | | main.rs:34:10:34:18 | source(...) | main.rs:34:10:34:22 | ... * ... | provenance | MaD:7 | | main.rs:35:17:35:25 | source(...) | main.rs:35:10:35:25 | ... * ... | provenance | MaD:7 | -| main.rs:37:10:37:18 | source(...) | main.rs:37:10:37:23 | ... << ... | provenance | MaD:27 | -| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:27 | -| main.rs:40:10:40:18 | source(...) | main.rs:40:10:40:22 | ... ^ ... | provenance | MaD:21 | -| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:21 | +| main.rs:37:10:37:18 | source(...) | main.rs:37:10:37:23 | ... << ... | provenance | MaD:25 | +| main.rs:38:18:38:26 | source(...) | main.rs:38:10:38:26 | ... << ... | provenance | MaD:25 | +| main.rs:40:10:40:18 | source(...) | main.rs:40:10:40:22 | ... ^ ... | provenance | MaD:20 | +| main.rs:41:18:41:27 | source(...) | main.rs:41:10:41:27 | ... ^ ... | provenance | MaD:20 | | main.rs:45:9:45:9 | a | main.rs:46:9:46:9 | b | provenance | | | main.rs:45:13:45:22 | source(...) | main.rs:45:9:45:9 | a | provenance | | | main.rs:46:9:46:9 | b | main.rs:47:10:47:17 | b as i64 | provenance | | @@ -64,11 +64,11 @@ edges | main.rs:60:17:60:26 | source(...) | main.rs:60:13:60:13 | s | provenance | | | main.rs:61:13:61:18 | sliced [&ref] | main.rs:62:14:62:19 | sliced | provenance | | | main.rs:61:22:61:29 | &... [&ref] | main.rs:61:13:61:18 | sliced [&ref] | provenance | | -| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:35 | +| main.rs:61:23:61:23 | s | main.rs:61:23:61:29 | s[...] | provenance | MaD:33 | | main.rs:61:23:61:29 | s[...] | main.rs:61:22:61:29 | &... [&ref] | provenance | | | main.rs:76:13:76:15 | arr | main.rs:77:14:77:16 | arr | provenance | | | main.rs:76:19:76:28 | source(...) | main.rs:76:13:76:15 | arr | provenance | | -| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:35 | +| main.rs:77:14:77:16 | arr | main.rs:77:14:77:19 | arr[1] | provenance | MaD:33 | | main.rs:92:9:92:12 | [post] arr2 [element] | main.rs:93:14:93:17 | arr2 | provenance | | | main.rs:92:19:92:28 | source(...) | main.rs:92:9:92:12 | [post] arr2 [element] | provenance | | | main.rs:113:14:113:47 | TupleExpr [tuple.0] | main.rs:113:14:113:49 | ... .0 | provenance | | @@ -89,18 +89,18 @@ edges | main.rs:131:15:131:29 | source_tuple(...) | main.rs:131:14:131:64 | TupleExpr [tuple.0] | provenance | | | main.rs:141:10:141:18 | source(...) | main.rs:141:10:141:28 | ... .add(...) | provenance | MaD:2 | | main.rs:143:19:143:27 | source(...) | main.rs:143:10:143:28 | 1i64.add(...) | provenance | MaD:2 | -| main.rs:146:10:146:18 | source(...) | main.rs:146:10:146:28 | ... .sub(...) | provenance | MaD:12 | -| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:12 | +| main.rs:146:10:146:18 | source(...) | main.rs:146:10:146:28 | ... .sub(...) | provenance | MaD:11 | +| main.rs:148:19:148:27 | source(...) | main.rs:148:10:148:28 | 1i64.sub(...) | provenance | MaD:11 | | main.rs:151:10:151:18 | source(...) | main.rs:151:10:151:28 | ... .mul(...) | provenance | MaD:7 | | main.rs:153:19:153:27 | source(...) | main.rs:153:10:153:28 | 1i64.mul(...) | provenance | MaD:7 | -| main.rs:156:10:156:18 | source(...) | main.rs:156:10:156:28 | ... .shl(...) | provenance | MaD:27 | -| main.rs:157:10:157:18 | source(...) | main.rs:157:10:157:25 | ... .shl(...) | provenance | MaD:27 | -| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:27 | -| main.rs:160:10:160:18 | source(...) | main.rs:160:10:160:28 | ... .shr(...) | provenance | MaD:32 | -| main.rs:161:10:161:18 | source(...) | main.rs:161:10:161:25 | ... .shr(...) | provenance | MaD:32 | -| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:32 | -| main.rs:164:10:164:18 | source(...) | main.rs:164:10:164:30 | ... .bitor(...) | provenance | MaD:20 | -| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:20 | +| main.rs:156:10:156:18 | source(...) | main.rs:156:10:156:28 | ... .shl(...) | provenance | MaD:25 | +| main.rs:157:10:157:18 | source(...) | main.rs:157:10:157:25 | ... .shl(...) | provenance | MaD:25 | +| main.rs:158:19:158:27 | source(...) | main.rs:158:10:158:28 | 1i64.shl(...) | provenance | MaD:25 | +| main.rs:160:10:160:18 | source(...) | main.rs:160:10:160:28 | ... .shr(...) | provenance | MaD:30 | +| main.rs:161:10:161:18 | source(...) | main.rs:161:10:161:25 | ... .shr(...) | provenance | MaD:30 | +| main.rs:162:19:162:27 | source(...) | main.rs:162:10:162:28 | 1i64.shr(...) | provenance | MaD:30 | +| main.rs:164:10:164:18 | source(...) | main.rs:164:10:164:30 | ... .bitor(...) | provenance | MaD:19 | +| main.rs:166:21:166:29 | source(...) | main.rs:166:10:166:30 | 1i64.bitor(...) | provenance | MaD:19 | | main.rs:170:5:170:5 | [post] a | main.rs:171:5:171:5 | a | provenance | | | main.rs:170:5:170:5 | [post] a | main.rs:172:5:172:5 | a | provenance | | | main.rs:170:5:170:5 | [post] a | main.rs:173:5:173:5 | a | provenance | | @@ -113,8 +113,8 @@ edges | main.rs:171:5:171:5 | [post] a | main.rs:174:5:174:5 | a | provenance | | | main.rs:171:5:171:5 | [post] a | main.rs:175:5:175:5 | a | provenance | | | main.rs:171:5:171:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:171:5:171:5 | a | main.rs:171:5:171:5 | [post] a | provenance | MaD:14 | -| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:13 | +| main.rs:171:5:171:5 | a | main.rs:171:5:171:5 | [post] a | provenance | MaD:13 | +| main.rs:171:18:171:26 | source(...) | main.rs:171:5:171:5 | [post] a | provenance | MaD:12 | | main.rs:172:5:172:5 | [post] a | main.rs:173:5:173:5 | a | provenance | | | main.rs:172:5:172:5 | [post] a | main.rs:174:5:174:5 | a | provenance | | | main.rs:172:5:172:5 | [post] a | main.rs:175:5:175:5 | a | provenance | | @@ -124,17 +124,17 @@ edges | main.rs:173:5:173:5 | [post] a | main.rs:174:5:174:5 | a | provenance | | | main.rs:173:5:173:5 | [post] a | main.rs:175:5:175:5 | a | provenance | | | main.rs:173:5:173:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:173:5:173:5 | a | main.rs:173:5:173:5 | [post] a | provenance | MaD:31 | -| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:29 | +| main.rs:173:5:173:5 | a | main.rs:173:5:173:5 | [post] a | provenance | MaD:29 | +| main.rs:173:18:173:26 | source(...) | main.rs:173:5:173:5 | [post] a | provenance | MaD:27 | | main.rs:174:5:174:5 | [post] a | main.rs:175:5:175:5 | a | provenance | | | main.rs:174:5:174:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:174:5:174:5 | a | main.rs:174:5:174:5 | [post] a | provenance | MaD:34 | -| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:33 | +| main.rs:174:5:174:5 | a | main.rs:174:5:174:5 | [post] a | provenance | MaD:32 | +| main.rs:174:18:174:26 | source(...) | main.rs:174:5:174:5 | [post] a | provenance | MaD:31 | | main.rs:175:5:175:5 | [post] a | main.rs:176:10:176:10 | a | provenance | | -| main.rs:175:5:175:5 | a | main.rs:175:5:175:5 | [post] a | provenance | MaD:23 | -| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:22 | -| main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | provenance | MaD:11 | -| main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:25 | +| main.rs:175:5:175:5 | a | main.rs:175:5:175:5 | [post] a | provenance | MaD:22 | +| main.rs:175:21:175:29 | source(...) | main.rs:175:5:175:5 | [post] a | provenance | MaD:21 | +| main.rs:178:10:178:18 | source(...) | main.rs:178:10:178:24 | ... .neg() | provenance | MaD:10 | +| main.rs:179:10:179:18 | source(...) | main.rs:179:10:179:24 | ... .not() | provenance | MaD:23 | | main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:201:21:201:21 | a [Wrapping] | provenance | | | main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:203:9:203:9 | a [Wrapping] | provenance | | | main.rs:199:13:199:17 | mut a [Wrapping] | main.rs:204:9:204:9 | a [Wrapping] | provenance | | @@ -174,25 +174,25 @@ edges | main.rs:212:21:212:21 | a [Wrapping] | main.rs:212:21:212:23 | a.0 | provenance | | | main.rs:214:9:214:9 | a | main.rs:215:9:215:9 | a | provenance | | | main.rs:214:13:214:21 | source(...) | main.rs:214:9:214:9 | a | provenance | | -| main.rs:215:9:215:9 | a | main.rs:216:9:216:9 | a | provenance | MaD:19 | -| main.rs:215:9:215:9 | a | main.rs:216:9:216:9 | a [Wrapping] | provenance | MaD:18 | -| main.rs:215:14:215:22 | source(...) | main.rs:216:9:216:9 | a | provenance | MaD:17 | -| main.rs:215:14:215:22 | source(...) | main.rs:216:9:216:9 | a [Wrapping] | provenance | MaD:16 | -| main.rs:216:9:216:9 | a | main.rs:217:14:217:14 | a | provenance | MaD:19 | -| main.rs:216:9:216:9 | a | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:18 | -| main.rs:216:9:216:9 | a | main.rs:218:21:218:23 | a.0 | provenance | MaD:19 | -| main.rs:216:9:216:9 | a [Wrapping] | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:18 | -| main.rs:216:14:216:39 | Wrapping(...) [Wrapping] | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:16 | +| main.rs:215:9:215:9 | a | main.rs:216:9:216:9 | a | provenance | MaD:18 | +| main.rs:215:9:215:9 | a | main.rs:216:9:216:9 | a [Wrapping] | provenance | MaD:17 | +| main.rs:215:14:215:22 | source(...) | main.rs:216:9:216:9 | a | provenance | MaD:16 | +| main.rs:215:14:215:22 | source(...) | main.rs:216:9:216:9 | a [Wrapping] | provenance | MaD:15 | +| main.rs:216:9:216:9 | a | main.rs:217:14:217:14 | a | provenance | MaD:18 | +| main.rs:216:9:216:9 | a | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:17 | +| main.rs:216:9:216:9 | a | main.rs:218:21:218:23 | a.0 | provenance | MaD:18 | +| main.rs:216:9:216:9 | a [Wrapping] | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:17 | +| main.rs:216:14:216:39 | Wrapping(...) [Wrapping] | main.rs:218:21:218:21 | a [Wrapping] | provenance | MaD:15 | | main.rs:216:23:216:38 | ...::source(...) | main.rs:216:14:216:39 | Wrapping(...) [Wrapping] | provenance | | | main.rs:218:21:218:21 | a [Wrapping] | main.rs:218:21:218:23 | a.0 | provenance | | | main.rs:220:9:220:9 | a | main.rs:221:9:221:9 | a | provenance | | | main.rs:220:13:220:22 | source(...) | main.rs:220:9:220:9 | a | provenance | | -| main.rs:221:9:221:9 | a | main.rs:222:14:222:14 | a | provenance | MaD:31 | -| main.rs:221:9:221:9 | a | main.rs:223:21:223:21 | a [Wrapping] | provenance | MaD:30 | -| main.rs:221:9:221:9 | a | main.rs:223:21:223:23 | a.0 | provenance | MaD:31 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:29 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:21 | a [Wrapping] | provenance | MaD:28 | -| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:29 | +| main.rs:221:9:221:9 | a | main.rs:222:14:222:14 | a | provenance | MaD:29 | +| main.rs:221:9:221:9 | a | main.rs:223:21:223:21 | a [Wrapping] | provenance | MaD:28 | +| main.rs:221:9:221:9 | a | main.rs:223:21:223:23 | a.0 | provenance | MaD:29 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:222:14:222:14 | a | provenance | MaD:27 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:21 | a [Wrapping] | provenance | MaD:26 | +| main.rs:221:15:221:30 | source_usize(...) | main.rs:223:21:223:23 | a.0 | provenance | MaD:27 | | main.rs:223:21:223:21 | a [Wrapping] | main.rs:223:21:223:23 | a.0 | provenance | | | main.rs:225:13:225:13 | b [Wrapping] | main.rs:227:18:227:18 | b [Wrapping] | provenance | | | main.rs:225:13:225:13 | b [Wrapping] | main.rs:229:18:229:18 | b [Wrapping] | provenance | | @@ -221,32 +221,32 @@ edges | main.rs:230:21:230:22 | v2 [Wrapping] | main.rs:230:21:230:24 | v2.0 | provenance | | | main.rs:231:13:231:14 | v3 [Wrapping] | main.rs:232:21:232:22 | v3 [Wrapping] | provenance | | | main.rs:231:18:231:19 | - ... [Wrapping] | main.rs:231:13:231:14 | v3 [Wrapping] | provenance | | -| main.rs:231:19:231:19 | b [Wrapping] | main.rs:231:18:231:19 | - ... [Wrapping] | provenance | MaD:10 | +| main.rs:231:19:231:19 | b [Wrapping] | main.rs:231:18:231:19 | - ... [Wrapping] | provenance | MaD:34 | | main.rs:232:21:232:22 | v3 [Wrapping] | main.rs:232:21:232:24 | v3.0 | provenance | | | main.rs:233:13:233:14 | v4 [Wrapping] | main.rs:234:21:234:22 | v4 [Wrapping] | provenance | | -| main.rs:233:18:233:18 | b [Wrapping] | main.rs:233:18:233:24 | b.neg() [Wrapping] | provenance | MaD:10 | +| main.rs:233:18:233:18 | b [Wrapping] | main.rs:233:18:233:24 | b.neg() [Wrapping] | provenance | MaD:34 | | main.rs:233:18:233:24 | b.neg() [Wrapping] | main.rs:233:13:233:14 | v4 [Wrapping] | provenance | | | main.rs:234:21:234:22 | v4 [Wrapping] | main.rs:234:21:234:24 | v4.0 | provenance | | | main.rs:235:13:235:14 | v5 [Wrapping] | main.rs:236:21:236:22 | v5 [Wrapping] | provenance | | | main.rs:235:18:235:19 | ! ... [Wrapping] | main.rs:235:13:235:14 | v5 [Wrapping] | provenance | | -| main.rs:235:19:235:19 | b [Wrapping] | main.rs:235:18:235:19 | ! ... [Wrapping] | provenance | MaD:24 | +| main.rs:235:19:235:19 | b [Wrapping] | main.rs:235:18:235:19 | ! ... [Wrapping] | provenance | MaD:35 | | main.rs:236:21:236:22 | v5 [Wrapping] | main.rs:236:21:236:24 | v5.0 | provenance | | | main.rs:237:13:237:14 | v6 [Wrapping] | main.rs:238:21:238:22 | v6 [Wrapping] | provenance | | -| main.rs:237:18:237:18 | b [Wrapping] | main.rs:237:18:237:24 | b.not() [Wrapping] | provenance | MaD:24 | +| main.rs:237:18:237:18 | b [Wrapping] | main.rs:237:18:237:24 | b.not() [Wrapping] | provenance | MaD:35 | | main.rs:237:18:237:24 | b.not() [Wrapping] | main.rs:237:13:237:14 | v6 [Wrapping] | provenance | | | main.rs:238:21:238:22 | v6 [Wrapping] | main.rs:238:21:238:24 | v6.0 | provenance | | | main.rs:239:13:239:14 | v7 [Wrapping] | main.rs:240:21:240:22 | v7 [Wrapping] | provenance | | -| main.rs:239:18:239:18 | b [Wrapping] | main.rs:239:18:239:22 | ... & ... [Wrapping] | provenance | MaD:15 | +| main.rs:239:18:239:18 | b [Wrapping] | main.rs:239:18:239:22 | ... & ... [Wrapping] | provenance | MaD:14 | | main.rs:239:18:239:22 | ... & ... [Wrapping] | main.rs:239:13:239:14 | v7 [Wrapping] | provenance | | -| main.rs:239:22:239:22 | c [Wrapping] | main.rs:239:18:239:22 | ... & ... [Wrapping] | provenance | MaD:15 | +| main.rs:239:22:239:22 | c [Wrapping] | main.rs:239:18:239:22 | ... & ... [Wrapping] | provenance | MaD:14 | | main.rs:240:21:240:22 | v7 [Wrapping] | main.rs:240:21:240:24 | v7.0 | provenance | | | main.rs:241:13:241:14 | v8 | main.rs:242:21:242:24 | v8.0 | provenance | | | main.rs:241:13:241:14 | v8 [Wrapping] | main.rs:242:21:242:22 | v8 [Wrapping] | provenance | | -| main.rs:241:18:241:18 | b [Wrapping] | main.rs:241:18:241:37 | ... << ... [Wrapping] | provenance | MaD:26 | +| main.rs:241:18:241:18 | b [Wrapping] | main.rs:241:18:241:37 | ... << ... [Wrapping] | provenance | MaD:24 | | main.rs:241:18:241:37 | ... << ... | main.rs:241:13:241:14 | v8 | provenance | | | main.rs:241:18:241:37 | ... << ... [Wrapping] | main.rs:241:13:241:14 | v8 [Wrapping] | provenance | | -| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:27 | -| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... [Wrapping] | provenance | MaD:26 | +| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... | provenance | MaD:25 | +| main.rs:241:23:241:37 | source_usize(...) | main.rs:241:18:241:37 | ... << ... [Wrapping] | provenance | MaD:24 | | main.rs:242:21:242:22 | v8 [Wrapping] | main.rs:242:21:242:24 | v8.0 | provenance | | nodes | main.rs:12:9:12:9 | a | semmle.label | a | diff --git a/rust/ql/test/query-tests/security/CWE-022/TaintedPath.expected b/rust/ql/test/query-tests/security/CWE-022/TaintedPath.expected index a47e37ae2e70..182648d9caf6 100644 --- a/rust/ql/test/query-tests/security/CWE-022/TaintedPath.expected +++ b/rust/ql/test/query-tests/security/CWE-022/TaintedPath.expected @@ -19,42 +19,38 @@ edges | src/main.rs:7:11:7:19 | file_name | src/main.rs:9:35:9:43 | file_name | provenance | | | src/main.rs:9:9:9:17 | file_path | src/main.rs:11:24:11:32 | file_path | provenance | | | src/main.rs:9:21:9:44 | ...::from(...) | src/main.rs:9:9:9:17 | file_path | provenance | | -| src/main.rs:9:35:9:43 | file_name | src/main.rs:9:21:9:44 | ...::from(...) | provenance | MaD:9 | -| src/main.rs:9:35:9:43 | file_name | src/main.rs:9:21:9:44 | ...::from(...) | provenance | MaD:16 | +| src/main.rs:9:35:9:43 | file_name | src/main.rs:9:21:9:44 | ...::from(...) | provenance | MaD:14 | | src/main.rs:11:24:11:32 | file_path | src/main.rs:11:5:11:22 | ...::read_to_string | provenance | MaD:6 Sink:MaD:6 | | src/main.rs:38:11:38:19 | file_path | src/main.rs:41:52:41:60 | file_path | provenance | | | src/main.rs:41:9:41:17 | file_path | src/main.rs:46:24:46:32 | file_path | provenance | | | src/main.rs:41:21:41:62 | public_path.join(...) | src/main.rs:41:9:41:17 | file_path | provenance | | -| src/main.rs:41:38:41:61 | ...::from(...) | src/main.rs:41:21:41:62 | public_path.join(...) | provenance | MaD:14 | -| src/main.rs:41:52:41:60 | file_path | src/main.rs:41:38:41:61 | ...::from(...) | provenance | MaD:9 | -| src/main.rs:41:52:41:60 | file_path | src/main.rs:41:38:41:61 | ...::from(...) | provenance | MaD:16 | +| src/main.rs:41:38:41:61 | ...::from(...) | src/main.rs:41:21:41:62 | public_path.join(...) | provenance | MaD:12 | +| src/main.rs:41:52:41:60 | file_path | src/main.rs:41:38:41:61 | ...::from(...) | provenance | MaD:14 | | src/main.rs:46:24:46:32 | file_path | src/main.rs:46:5:46:22 | ...::read_to_string | provenance | MaD:6 Sink:MaD:6 | | src/main.rs:63:11:63:19 | file_path | src/main.rs:66:32:66:40 | file_path | provenance | | | src/main.rs:66:9:66:17 | file_path [&ref] | src/main.rs:71:24:71:32 | file_path [&ref] | provenance | | | src/main.rs:66:21:66:41 | ...::new(...) [&ref] | src/main.rs:66:9:66:17 | file_path [&ref] | provenance | | -| src/main.rs:66:31:66:40 | &file_path [&ref] | src/main.rs:66:21:66:41 | ...::new(...) [&ref] | provenance | MaD:15 | +| src/main.rs:66:31:66:40 | &file_path [&ref] | src/main.rs:66:21:66:41 | ...::new(...) [&ref] | provenance | MaD:13 | | src/main.rs:66:32:66:40 | file_path | src/main.rs:66:31:66:40 | &file_path [&ref] | provenance | | | src/main.rs:71:24:71:32 | file_path [&ref] | src/main.rs:71:5:71:22 | ...::read_to_string | provenance | MaD:6 Sink:MaD:6 | | src/main.rs:76:11:76:19 | file_path | src/main.rs:79:52:79:60 | file_path | provenance | | | src/main.rs:79:9:79:17 | file_path | src/main.rs:80:21:80:29 | file_path | provenance | | | src/main.rs:79:21:79:62 | public_path.join(...) | src/main.rs:79:9:79:17 | file_path | provenance | | -| src/main.rs:79:38:79:61 | ...::from(...) | src/main.rs:79:21:79:62 | public_path.join(...) | provenance | MaD:14 | -| src/main.rs:79:52:79:60 | file_path | src/main.rs:79:38:79:61 | ...::from(...) | provenance | MaD:9 | -| src/main.rs:79:52:79:60 | file_path | src/main.rs:79:38:79:61 | ...::from(...) | provenance | MaD:16 | +| src/main.rs:79:38:79:61 | ...::from(...) | src/main.rs:79:21:79:62 | public_path.join(...) | provenance | MaD:12 | +| src/main.rs:79:52:79:60 | file_path | src/main.rs:79:38:79:61 | ...::from(...) | provenance | MaD:14 | | src/main.rs:80:9:80:17 | file_path | src/main.rs:85:24:85:32 | file_path | provenance | | -| src/main.rs:80:21:80:29 | file_path | src/main.rs:80:21:80:44 | file_path.canonicalize() [Ok] | provenance | MaD:11 | -| src/main.rs:80:21:80:29 | file_path | src/main.rs:80:21:80:44 | file_path.canonicalize() [Ok] | provenance | MaD:17 | -| src/main.rs:80:21:80:44 | file_path.canonicalize() [Ok] | src/main.rs:80:21:80:53 | ... .unwrap() | provenance | MaD:13 | +| src/main.rs:80:21:80:29 | file_path | src/main.rs:80:21:80:44 | file_path.canonicalize() [Ok] | provenance | MaD:15 | +| src/main.rs:80:21:80:44 | file_path.canonicalize() [Ok] | src/main.rs:80:21:80:53 | ... .unwrap() | provenance | MaD:11 | | src/main.rs:80:21:80:53 | ... .unwrap() | src/main.rs:80:9:80:17 | file_path | provenance | | | src/main.rs:85:24:85:32 | file_path | src/main.rs:85:5:85:22 | ...::read_to_string | provenance | MaD:6 Sink:MaD:6 | | src/main.rs:90:11:90:19 | file_path | src/main.rs:93:32:93:40 | file_path | provenance | | | src/main.rs:93:9:93:17 | file_path [&ref] | src/main.rs:98:21:98:29 | file_path [&ref] | provenance | | | src/main.rs:93:21:93:41 | ...::new(...) [&ref] | src/main.rs:93:9:93:17 | file_path [&ref] | provenance | | -| src/main.rs:93:31:93:40 | &file_path [&ref] | src/main.rs:93:21:93:41 | ...::new(...) [&ref] | provenance | MaD:15 | +| src/main.rs:93:31:93:40 | &file_path [&ref] | src/main.rs:93:21:93:41 | ...::new(...) [&ref] | provenance | MaD:13 | | src/main.rs:93:32:93:40 | file_path | src/main.rs:93:31:93:40 | &file_path [&ref] | provenance | | | src/main.rs:98:9:98:17 | file_path | src/main.rs:99:24:99:32 | file_path | provenance | | | src/main.rs:98:21:98:29 | file_path [&ref] | src/main.rs:98:21:98:44 | file_path.canonicalize() [Ok] | provenance | Config | -| src/main.rs:98:21:98:44 | file_path.canonicalize() [Ok] | src/main.rs:98:21:98:53 | ... .unwrap() | provenance | MaD:13 | +| src/main.rs:98:21:98:44 | file_path.canonicalize() [Ok] | src/main.rs:98:21:98:53 | ... .unwrap() | provenance | MaD:11 | | src/main.rs:98:21:98:53 | ... .unwrap() | src/main.rs:98:9:98:17 | file_path | provenance | | | src/main.rs:99:24:99:32 | file_path | src/main.rs:99:5:99:22 | ...::read_to_string | provenance | MaD:6 Sink:MaD:6 | | src/main.rs:103:9:103:13 | path1 | src/main.rs:104:33:104:37 | path1 | provenance | | @@ -65,40 +61,40 @@ edges | src/main.rs:103:9:103:13 | path1 | src/main.rs:122:27:122:31 | path1 | provenance | | | src/main.rs:103:9:103:13 | path1 | src/main.rs:123:37:123:41 | path1 | provenance | | | src/main.rs:103:17:103:30 | ...::args | src/main.rs:103:17:103:32 | ...::args(...) [element] | provenance | Src:MaD:7 | -| src/main.rs:103:17:103:32 | ...::args(...) [element] | src/main.rs:103:17:103:39 | ... .nth(...) [Some] | provenance | MaD:10 | -| src/main.rs:103:17:103:39 | ... .nth(...) [Some] | src/main.rs:103:17:103:48 | ... .unwrap() | provenance | MaD:12 | +| src/main.rs:103:17:103:32 | ...::args(...) [element] | src/main.rs:103:17:103:39 | ... .nth(...) [Some] | provenance | MaD:9 | +| src/main.rs:103:17:103:39 | ... .nth(...) [Some] | src/main.rs:103:17:103:48 | ... .unwrap() | provenance | MaD:10 | | src/main.rs:103:17:103:48 | ... .unwrap() | src/main.rs:103:9:103:13 | path1 | provenance | | | src/main.rs:104:33:104:37 | path1 | src/main.rs:104:33:104:45 | path1.clone() | provenance | MaD:8 | | src/main.rs:104:33:104:45 | path1.clone() | src/main.rs:104:13:104:31 | ...::open | provenance | MaD:2 Sink:MaD:2 | | src/main.rs:106:9:106:13 | path2 | src/main.rs:107:33:107:37 | path2 | provenance | | -| src/main.rs:106:17:106:52 | ...::canonicalize(...) [Ok] | src/main.rs:106:17:106:61 | ... .unwrap() | provenance | MaD:13 | +| src/main.rs:106:17:106:52 | ...::canonicalize(...) [Ok] | src/main.rs:106:17:106:61 | ... .unwrap() | provenance | MaD:11 | | src/main.rs:106:17:106:61 | ... .unwrap() | src/main.rs:106:9:106:13 | path2 | provenance | | | src/main.rs:106:39:106:43 | path1 | src/main.rs:106:39:106:51 | path1.clone() | provenance | MaD:8 | | src/main.rs:106:39:106:51 | path1.clone() | src/main.rs:106:17:106:52 | ...::canonicalize(...) [Ok] | provenance | Config | | src/main.rs:107:33:107:37 | path2 | src/main.rs:107:13:107:31 | ...::open | provenance | MaD:2 Sink:MaD:2 | | src/main.rs:109:9:109:13 | path3 | src/main.rs:110:35:110:39 | path3 | provenance | | | src/main.rs:109:17:109:54 | ...::canonicalize(...) [future, Ok] | src/main.rs:109:17:109:60 | await ... [Ok] | provenance | | -| src/main.rs:109:17:109:60 | await ... [Ok] | src/main.rs:109:17:109:69 | ... .unwrap() | provenance | MaD:13 | +| src/main.rs:109:17:109:60 | await ... [Ok] | src/main.rs:109:17:109:69 | ... .unwrap() | provenance | MaD:11 | | src/main.rs:109:17:109:69 | ... .unwrap() | src/main.rs:109:9:109:13 | path3 | provenance | | | src/main.rs:109:41:109:45 | path1 | src/main.rs:109:41:109:53 | path1.clone() | provenance | MaD:8 | | src/main.rs:109:41:109:53 | path1.clone() | src/main.rs:109:17:109:54 | ...::canonicalize(...) [future, Ok] | provenance | Config | | src/main.rs:110:35:110:39 | path3 | src/main.rs:110:13:110:33 | ...::open | provenance | MaD:4 Sink:MaD:4 | | src/main.rs:112:9:112:13 | path4 | src/main.rs:113:39:113:43 | path4 | provenance | | | src/main.rs:112:17:112:58 | ...::canonicalize(...) [future, Ok] | src/main.rs:112:17:112:64 | await ... [Ok] | provenance | | -| src/main.rs:112:17:112:64 | await ... [Ok] | src/main.rs:112:17:112:73 | ... .unwrap() | provenance | MaD:13 | +| src/main.rs:112:17:112:64 | await ... [Ok] | src/main.rs:112:17:112:73 | ... .unwrap() | provenance | MaD:11 | | src/main.rs:112:17:112:73 | ... .unwrap() | src/main.rs:112:9:112:13 | path4 | provenance | | | src/main.rs:112:45:112:49 | path1 | src/main.rs:112:45:112:57 | path1.clone() | provenance | MaD:8 | | src/main.rs:112:45:112:57 | path1.clone() | src/main.rs:112:17:112:58 | ...::canonicalize(...) [future, Ok] | provenance | Config | | src/main.rs:113:39:113:43 | path4 | src/main.rs:113:13:113:37 | ...::open | provenance | MaD:1 Sink:MaD:1 | | src/main.rs:115:9:115:13 | path5 [&ref] | src/main.rs:116:33:116:37 | path5 [&ref] | provenance | | | src/main.rs:115:17:115:44 | ...::new(...) [&ref] | src/main.rs:115:9:115:13 | path5 [&ref] | provenance | | -| src/main.rs:115:38:115:43 | &path1 [&ref] | src/main.rs:115:17:115:44 | ...::new(...) [&ref] | provenance | MaD:15 | +| src/main.rs:115:38:115:43 | &path1 [&ref] | src/main.rs:115:17:115:44 | ...::new(...) [&ref] | provenance | MaD:13 | | src/main.rs:115:39:115:43 | path1 | src/main.rs:115:38:115:43 | &path1 [&ref] | provenance | | | src/main.rs:116:33:116:37 | path5 [&ref] | src/main.rs:116:13:116:31 | ...::open | provenance | MaD:2 Sink:MaD:2 | | src/main.rs:116:33:116:37 | path5 [&ref] | src/main.rs:118:17:118:21 | path5 [&ref] | provenance | | | src/main.rs:118:9:118:13 | path6 | src/main.rs:119:33:119:37 | path6 | provenance | | | src/main.rs:118:17:118:21 | path5 [&ref] | src/main.rs:118:17:118:36 | path5.canonicalize() [Ok] | provenance | Config | -| src/main.rs:118:17:118:36 | path5.canonicalize() [Ok] | src/main.rs:118:17:118:45 | ... .unwrap() | provenance | MaD:13 | +| src/main.rs:118:17:118:36 | path5.canonicalize() [Ok] | src/main.rs:118:17:118:45 | ... .unwrap() | provenance | MaD:11 | | src/main.rs:118:17:118:45 | ... .unwrap() | src/main.rs:118:9:118:13 | path6 | provenance | | | src/main.rs:119:33:119:37 | path6 | src/main.rs:119:13:119:31 | ...::open | provenance | MaD:2 Sink:MaD:2 | | src/main.rs:122:27:122:31 | path1 | src/main.rs:122:27:122:39 | path1.clone() | provenance | MaD:8 | @@ -109,15 +105,15 @@ edges | src/main.rs:170:16:170:29 | ...: ... [&ref] | src/main.rs:174:36:174:43 | path_str [&ref] | provenance | | | src/main.rs:172:9:172:12 | path [&ref] | src/main.rs:173:8:173:11 | path [&ref] | provenance | | | src/main.rs:172:16:172:34 | ...::new(...) [&ref] | src/main.rs:172:9:172:12 | path [&ref] | provenance | | -| src/main.rs:172:26:172:33 | path_str [&ref] | src/main.rs:172:16:172:34 | ...::new(...) [&ref] | provenance | MaD:15 | +| src/main.rs:172:26:172:33 | path_str [&ref] | src/main.rs:172:16:172:34 | ...::new(...) [&ref] | provenance | MaD:13 | | src/main.rs:173:8:173:11 | path [&ref] | src/main.rs:173:13:173:18 | exists | provenance | MaD:3 Sink:MaD:3 | | src/main.rs:173:8:173:11 | path [&ref] | src/main.rs:177:36:177:39 | path [&ref] | provenance | | | src/main.rs:174:36:174:43 | path_str [&ref] | src/main.rs:174:25:174:34 | ...::open | provenance | MaD:2 Sink:MaD:2 | | src/main.rs:177:36:177:39 | path [&ref] | src/main.rs:177:25:177:34 | ...::open | provenance | MaD:2 Sink:MaD:2 | | src/main.rs:185:9:185:13 | path1 | src/main.rs:186:18:186:22 | path1 | provenance | | | src/main.rs:185:17:185:30 | ...::args | src/main.rs:185:17:185:32 | ...::args(...) [element] | provenance | Src:MaD:7 | -| src/main.rs:185:17:185:32 | ...::args(...) [element] | src/main.rs:185:17:185:39 | ... .nth(...) [Some] | provenance | MaD:10 | -| src/main.rs:185:17:185:39 | ... .nth(...) [Some] | src/main.rs:185:17:185:48 | ... .unwrap() | provenance | MaD:12 | +| src/main.rs:185:17:185:32 | ...::args(...) [element] | src/main.rs:185:17:185:39 | ... .nth(...) [Some] | provenance | MaD:9 | +| src/main.rs:185:17:185:39 | ... .nth(...) [Some] | src/main.rs:185:17:185:48 | ... .unwrap() | provenance | MaD:10 | | src/main.rs:185:17:185:48 | ... .unwrap() | src/main.rs:185:9:185:13 | path1 | provenance | | | src/main.rs:186:17:186:22 | &path1 [&ref] | src/main.rs:170:16:170:29 | ...: ... [&ref] | provenance | | | src/main.rs:186:18:186:22 | path1 | src/main.rs:186:17:186:22 | &path1 [&ref] | provenance | | @@ -130,15 +126,13 @@ models | 6 | Sink: std::fs::read_to_string; Argument[0]; path-injection | | 7 | Source: std::env::args; ReturnValue.Element; commandargs | | 8 | Summary: <_ as core::clone::Clone>::clone; Argument[self].Reference; ReturnValue; value | -| 9 | Summary: <_ as core::convert::From>::from; Argument[0]; ReturnValue; taint | -| 10 | Summary: <_ as core::iter::traits::iterator::Iterator>::nth; Argument[self].Reference.Element; ReturnValue.Field[core::option::Option::Some(0)]; value | -| 11 | Summary: <_ as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue.Reference; taint | -| 12 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 13 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 14 | Summary: ::join; Argument[0]; ReturnValue; taint | -| 15 | Summary: ::new; Argument[0].Reference; ReturnValue.Reference; value | -| 16 | Summary: ::from; Argument[0].Field[alloc::borrow::Cow::Owned(0)]; ReturnValue; value | -| 17 | Summary: ::deref; Argument[self].Reference.Field[std::path::PathBuf::inner]; ReturnValue.Reference; value | +| 9 | Summary: <_ as core::iter::traits::iterator::Iterator>::nth; Argument[self].Reference.Element; ReturnValue.Field[core::option::Option::Some(0)]; value | +| 10 | Summary: ::unwrap; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 11 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 12 | Summary: ::join; Argument[0]; ReturnValue; taint | +| 13 | Summary: ::new; Argument[0].Reference; ReturnValue.Reference; value | +| 14 | Summary: ::from; Argument[0].Field[alloc::borrow::Cow::Owned(0)]; ReturnValue; value | +| 15 | Summary: ::deref; Argument[self].Reference.Field[std::path::PathBuf::inner]; ReturnValue.Reference; value | nodes | src/main.rs:7:11:7:19 | file_name | semmle.label | file_name | | src/main.rs:9:9:9:17 | file_path | semmle.label | file_path | diff --git a/rust/ql/test/query-tests/security/CWE-295/DisabledCertificateCheck.expected b/rust/ql/test/query-tests/security/CWE-295/DisabledCertificateCheck.expected index dd4fd9294046..c807bc739fd0 100644 --- a/rust/ql/test/query-tests/security/CWE-295/DisabledCertificateCheck.expected +++ b/rust/ql/test/query-tests/security/CWE-295/DisabledCertificateCheck.expected @@ -38,31 +38,30 @@ edges | main.rs:93:32:93:47 | sometimes_global | main.rs:93:4:93:30 | danger_accept_invalid_certs | provenance | MaD:1 Sink:MaD:1 | | main.rs:107:6:107:7 | b1 | main.rs:109:36:109:37 | b1 | provenance | | | main.rs:107:17:107:31 | ...::exists | main.rs:107:17:107:42 | ...::exists(...) [Ok] | provenance | Src:MaD:8 | -| main.rs:107:17:107:42 | ...::exists(...) [Ok] | main.rs:107:17:107:51 | ... .unwrap() | provenance | MaD:13 | +| main.rs:107:17:107:42 | ...::exists(...) [Ok] | main.rs:107:17:107:51 | ... .unwrap() | provenance | MaD:12 | | main.rs:107:17:107:51 | ... .unwrap() | main.rs:107:6:107:7 | b1 | provenance | | | main.rs:109:36:109:37 | b1 | main.rs:109:4:109:34 | danger_accept_invalid_hostnames | provenance | MaD:2 Sink:MaD:2 | | main.rs:113:6:113:7 | b2 | main.rs:115:36:115:37 | b2 | provenance | | -| main.rs:113:11:113:52 | ... .metadata() [Ok] | main.rs:113:11:113:61 | ... .unwrap() | provenance | MaD:13 | -| main.rs:113:11:113:61 | ... .unwrap() | main.rs:113:11:113:71 | ... .is_file() | provenance | MaD:16 | +| main.rs:113:11:113:52 | ... .metadata() [Ok] | main.rs:113:11:113:61 | ... .unwrap() | provenance | MaD:12 | +| main.rs:113:11:113:61 | ... .unwrap() | main.rs:113:11:113:71 | ... .is_file() | provenance | MaD:15 | | main.rs:113:11:113:71 | ... .is_file() | main.rs:113:6:113:7 | b2 | provenance | | | main.rs:113:43:113:50 | metadata | main.rs:113:11:113:52 | ... .metadata() [Ok] | provenance | Src:MaD:7 | | main.rs:115:36:115:37 | b2 | main.rs:115:4:115:34 | danger_accept_invalid_hostnames | provenance | MaD:2 Sink:MaD:2 | | main.rs:119:6:119:7 | b3 | main.rs:121:36:121:37 | b3 | provenance | | | main.rs:119:11:119:27 | ...::metadata | main.rs:119:11:119:38 | ...::metadata(...) [Ok] | provenance | Src:MaD:9 | -| main.rs:119:11:119:38 | ...::metadata(...) [Ok] | main.rs:119:11:119:47 | ... .unwrap() | provenance | MaD:13 | -| main.rs:119:11:119:47 | ... .unwrap() | main.rs:119:11:119:56 | ... .is_dir() | provenance | MaD:15 | +| main.rs:119:11:119:38 | ...::metadata(...) [Ok] | main.rs:119:11:119:47 | ... .unwrap() | provenance | MaD:12 | +| main.rs:119:11:119:47 | ... .unwrap() | main.rs:119:11:119:56 | ... .is_dir() | provenance | MaD:14 | | main.rs:119:11:119:56 | ... .is_dir() | main.rs:119:6:119:7 | b3 | provenance | | | main.rs:121:36:121:37 | b3 | main.rs:121:4:121:34 | danger_accept_invalid_hostnames | provenance | MaD:2 Sink:MaD:2 | | main.rs:129:6:129:10 | input | main.rs:130:2:130:6 | input | provenance | | | main.rs:129:14:129:27 | ...::stdin | main.rs:129:14:129:29 | ...::stdin(...) | provenance | Src:MaD:10 MaD:10 | | main.rs:129:14:129:29 | ...::stdin(...) | main.rs:129:6:129:10 | input | provenance | | -| main.rs:130:2:130:6 | input | main.rs:130:18:130:32 | [post] &mut input_line [&ref] | provenance | MaD:17 | +| main.rs:130:2:130:6 | input | main.rs:130:18:130:32 | [post] &mut input_line [&ref] | provenance | MaD:16 | | main.rs:130:18:130:32 | [post] &mut input_line [&ref] | main.rs:130:23:130:32 | [post] input_line | provenance | | | main.rs:130:23:130:32 | [post] input_line | main.rs:132:17:132:26 | input_line | provenance | | | main.rs:132:6:132:7 | b4 | main.rs:134:36:134:37 | b4 | provenance | | | main.rs:132:17:132:26 | input_line | main.rs:132:17:132:42 | input_line.parse() [Ok] | provenance | MaD:11 | -| main.rs:132:17:132:26 | input_line | main.rs:132:17:132:42 | input_line.parse() [Ok] | provenance | MaD:12 | -| main.rs:132:17:132:42 | input_line.parse() [Ok] | main.rs:132:17:132:59 | ... .unwrap_or(...) | provenance | MaD:14 | +| main.rs:132:17:132:42 | input_line.parse() [Ok] | main.rs:132:17:132:59 | ... .unwrap_or(...) | provenance | MaD:13 | | main.rs:132:17:132:59 | ... .unwrap_or(...) | main.rs:132:6:132:7 | b4 | provenance | | | main.rs:134:36:134:37 | b4 | main.rs:134:4:134:34 | danger_accept_invalid_hostnames | provenance | MaD:2 Sink:MaD:2 | | main.rs:144:6:144:7 | b6 | main.rs:146:36:146:37 | b6 | provenance | | @@ -80,13 +79,12 @@ models | 8 | Source: std::fs::exists; ReturnValue.Field[core::result::Result::Ok(0)]; file | | 9 | Source: std::fs::metadata; ReturnValue.Field[core::result::Result::Ok(0)]; file | | 10 | Source: std::io::stdio::stdin; ReturnValue; stdin | -| 11 | Summary: <_ as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue.Reference; taint | -| 12 | Summary: ::deref; Argument[self]; ReturnValue; value | -| 13 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 14 | Summary: ::unwrap_or; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 15 | Summary: ::is_dir; Argument[self].Reference; ReturnValue; taint | -| 16 | Summary: ::is_file; Argument[self].Reference; ReturnValue; taint | -| 17 | Summary: ::read_line; Argument[self].Reference; Argument[0].Reference; taint | +| 11 | Summary: ::deref; Argument[self]; ReturnValue; value | +| 12 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 13 | Summary: ::unwrap_or; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 14 | Summary: ::is_dir; Argument[self].Reference; ReturnValue; taint | +| 15 | Summary: ::is_file; Argument[self].Reference; ReturnValue; taint | +| 16 | Summary: ::read_line; Argument[self].Reference; Argument[0].Reference; taint | nodes | main.rs:4:4:4:30 | danger_accept_invalid_certs | semmle.label | danger_accept_invalid_certs | | main.rs:4:32:4:35 | true | semmle.label | true | diff --git a/rust/ql/test/query-tests/security/CWE-770/UncontrolledAllocationSize.expected b/rust/ql/test/query-tests/security/CWE-770/UncontrolledAllocationSize.expected index 907ac816ea97..070e05c8ae6b 100644 --- a/rust/ql/test/query-tests/security/CWE-770/UncontrolledAllocationSize.expected +++ b/rust/ql/test/query-tests/security/CWE-770/UncontrolledAllocationSize.expected @@ -59,29 +59,29 @@ edges | main.rs:18:41:18:41 | v | main.rs:32:60:32:60 | v | provenance | | | main.rs:18:41:18:41 | v | main.rs:35:49:35:49 | v | provenance | | | main.rs:20:9:20:10 | l2 | main.rs:21:31:21:32 | l2 | provenance | | -| main.rs:20:14:20:54 | ...::from_size_align(...) [Ok] | main.rs:20:14:20:63 | ... .unwrap() | provenance | MaD:42 | +| main.rs:20:14:20:54 | ...::from_size_align(...) [Ok] | main.rs:20:14:20:63 | ... .unwrap() | provenance | MaD:41 | | main.rs:20:14:20:63 | ... .unwrap() | main.rs:20:9:20:10 | l2 | provenance | | -| main.rs:20:50:20:50 | v | main.rs:20:14:20:54 | ...::from_size_align(...) [Ok] | provenance | MaD:34 | +| main.rs:20:50:20:50 | v | main.rs:20:14:20:54 | ...::from_size_align(...) [Ok] | provenance | MaD:33 | | main.rs:21:31:21:32 | l2 | main.rs:21:13:21:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:21:31:21:32 | l2 | main.rs:22:31:22:32 | l2 | provenance | | | main.rs:21:31:21:32 | l2 | main.rs:23:31:23:32 | l2 | provenance | | | main.rs:21:31:21:32 | l2 | main.rs:24:38:24:39 | l2 | provenance | | -| main.rs:22:31:22:32 | l2 | main.rs:22:31:22:44 | l2.align_to(...) [Ok] | provenance | MaD:28 | -| main.rs:22:31:22:44 | l2.align_to(...) [Ok] | main.rs:22:31:22:53 | ... .unwrap() | provenance | MaD:42 | +| main.rs:22:31:22:32 | l2 | main.rs:22:31:22:44 | l2.align_to(...) [Ok] | provenance | MaD:27 | +| main.rs:22:31:22:44 | l2.align_to(...) [Ok] | main.rs:22:31:22:53 | ... .unwrap() | provenance | MaD:41 | | main.rs:22:31:22:53 | ... .unwrap() | main.rs:22:13:22:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | -| main.rs:23:31:23:32 | l2 | main.rs:23:31:23:44 | l2.align_to(...) [Ok] | provenance | MaD:28 | -| main.rs:23:31:23:44 | l2.align_to(...) [Ok] | main.rs:23:31:23:53 | ... .unwrap() | provenance | MaD:42 | -| main.rs:23:31:23:53 | ... .unwrap() | main.rs:23:31:23:68 | ... .pad_to_align() | provenance | MaD:36 | +| main.rs:23:31:23:32 | l2 | main.rs:23:31:23:44 | l2.align_to(...) [Ok] | provenance | MaD:27 | +| main.rs:23:31:23:44 | l2.align_to(...) [Ok] | main.rs:23:31:23:53 | ... .unwrap() | provenance | MaD:41 | +| main.rs:23:31:23:53 | ... .unwrap() | main.rs:23:31:23:68 | ... .pad_to_align() | provenance | MaD:35 | | main.rs:23:31:23:68 | ... .pad_to_align() | main.rs:23:13:23:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:24:38:24:39 | l2 | main.rs:24:13:24:36 | ...::alloc_zeroed | provenance | MaD:16 Sink:MaD:16 | | main.rs:29:9:29:10 | l4 | main.rs:30:31:30:32 | l4 | provenance | | | main.rs:29:14:29:64 | ...::from_size_align_unchecked(...) | main.rs:29:9:29:10 | l4 | provenance | | -| main.rs:29:60:29:60 | v | main.rs:29:14:29:64 | ...::from_size_align_unchecked(...) | provenance | MaD:35 | +| main.rs:29:60:29:60 | v | main.rs:29:14:29:64 | ...::from_size_align_unchecked(...) | provenance | MaD:34 | | main.rs:30:31:30:32 | l4 | main.rs:30:13:30:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:32:9:32:10 | l5 | main.rs:33:31:33:32 | l5 | provenance | | | main.rs:32:14:32:118 | ...::from_size_align_unchecked(...) | main.rs:32:9:32:10 | l5 | provenance | | | main.rs:32:60:32:60 | v | main.rs:32:60:32:89 | ... * ... | provenance | MaD:25 | -| main.rs:32:60:32:89 | ... * ... | main.rs:32:14:32:118 | ...::from_size_align_unchecked(...) | provenance | MaD:35 | +| main.rs:32:60:32:89 | ... * ... | main.rs:32:14:32:118 | ...::from_size_align_unchecked(...) | provenance | MaD:34 | | main.rs:33:31:33:32 | l5 | main.rs:33:13:33:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:35:9:35:10 | s6 | main.rs:36:60:36:61 | s6 | provenance | | | main.rs:35:14:35:54 | ... + ... | main.rs:35:9:35:10 | s6 | provenance | | @@ -89,13 +89,13 @@ edges | main.rs:35:49:35:49 | v | main.rs:35:15:35:49 | ... * ... | provenance | MaD:25 | | main.rs:36:9:36:10 | l6 | main.rs:37:31:37:32 | l6 | provenance | | | main.rs:36:14:36:65 | ...::from_size_align_unchecked(...) | main.rs:36:9:36:10 | l6 | provenance | | -| main.rs:36:60:36:61 | s6 | main.rs:36:14:36:65 | ...::from_size_align_unchecked(...) | provenance | MaD:35 | +| main.rs:36:60:36:61 | s6 | main.rs:36:14:36:65 | ...::from_size_align_unchecked(...) | provenance | MaD:34 | | main.rs:37:31:37:32 | l6 | main.rs:37:13:37:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:37:31:37:32 | l6 | main.rs:39:60:39:61 | l6 | provenance | | | main.rs:39:9:39:10 | l7 | main.rs:40:31:40:32 | l7 | provenance | | | main.rs:39:14:39:72 | ...::from_size_align_unchecked(...) | main.rs:39:9:39:10 | l7 | provenance | | -| main.rs:39:60:39:61 | l6 | main.rs:39:60:39:68 | l6.size() | provenance | MaD:39 | -| main.rs:39:60:39:68 | l6.size() | main.rs:39:14:39:72 | ...::from_size_align_unchecked(...) | provenance | MaD:35 | +| main.rs:39:60:39:61 | l6 | main.rs:39:60:39:68 | l6.size() | provenance | MaD:38 | +| main.rs:39:60:39:68 | l6.size() | main.rs:39:14:39:72 | ...::from_size_align_unchecked(...) | provenance | MaD:34 | | main.rs:40:31:40:32 | l7 | main.rs:40:13:40:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:43:44:43:51 | ...: usize | main.rs:50:41:50:41 | v | provenance | | | main.rs:43:44:43:51 | ...: usize | main.rs:51:41:51:41 | v | provenance | | @@ -103,27 +103,27 @@ edges | main.rs:43:44:43:51 | ...: usize | main.rs:54:48:54:48 | v | provenance | | | main.rs:43:44:43:51 | ...: usize | main.rs:58:34:58:34 | v | provenance | | | main.rs:43:44:43:51 | ...: usize | main.rs:67:46:67:46 | v | provenance | | -| main.rs:50:31:50:42 | l2.repeat(...) [Ok, tuple.0] | main.rs:50:31:50:51 | ... .unwrap() [tuple.0] | provenance | MaD:42 | +| main.rs:50:31:50:42 | l2.repeat(...) [Ok, tuple.0] | main.rs:50:31:50:51 | ... .unwrap() [tuple.0] | provenance | MaD:41 | | main.rs:50:31:50:51 | ... .unwrap() [tuple.0] | main.rs:50:31:50:53 | ... .0 | provenance | | | main.rs:50:31:50:53 | ... .0 | main.rs:50:13:50:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | -| main.rs:50:41:50:41 | v | main.rs:50:31:50:42 | l2.repeat(...) [Ok, tuple.0] | provenance | MaD:37 | -| main.rs:51:31:51:46 | l2.repeat(...) [Ok, tuple.0] | main.rs:51:31:51:55 | ... .unwrap() [tuple.0] | provenance | MaD:42 | +| main.rs:50:41:50:41 | v | main.rs:50:31:50:42 | l2.repeat(...) [Ok, tuple.0] | provenance | MaD:36 | +| main.rs:51:31:51:46 | l2.repeat(...) [Ok, tuple.0] | main.rs:51:31:51:55 | ... .unwrap() [tuple.0] | provenance | MaD:41 | | main.rs:51:31:51:55 | ... .unwrap() [tuple.0] | main.rs:51:31:51:57 | ... .0 | provenance | | | main.rs:51:31:51:57 | ... .0 | main.rs:51:13:51:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:51:41:51:41 | v | main.rs:51:41:51:45 | ... + ... | provenance | MaD:24 | -| main.rs:51:41:51:45 | ... + ... | main.rs:51:31:51:46 | l2.repeat(...) [Ok, tuple.0] | provenance | MaD:37 | -| main.rs:53:31:53:49 | l2.repeat_packed(...) [Ok] | main.rs:53:31:53:58 | ... .unwrap() | provenance | MaD:42 | +| main.rs:51:41:51:45 | ... + ... | main.rs:51:31:51:46 | l2.repeat(...) [Ok, tuple.0] | provenance | MaD:36 | +| main.rs:53:31:53:49 | l2.repeat_packed(...) [Ok] | main.rs:53:31:53:58 | ... .unwrap() | provenance | MaD:41 | | main.rs:53:31:53:58 | ... .unwrap() | main.rs:53:13:53:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | -| main.rs:53:48:53:48 | v | main.rs:53:31:53:49 | l2.repeat_packed(...) [Ok] | provenance | MaD:38 | -| main.rs:54:31:54:54 | l2.repeat_packed(...) [Ok] | main.rs:54:31:54:63 | ... .unwrap() | provenance | MaD:42 | +| main.rs:53:48:53:48 | v | main.rs:53:31:53:49 | l2.repeat_packed(...) [Ok] | provenance | MaD:37 | +| main.rs:54:31:54:54 | l2.repeat_packed(...) [Ok] | main.rs:54:31:54:63 | ... .unwrap() | provenance | MaD:41 | | main.rs:54:31:54:63 | ... .unwrap() | main.rs:54:13:54:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:54:48:54:48 | v | main.rs:54:48:54:53 | ... * ... | provenance | MaD:25 | -| main.rs:54:48:54:53 | ... * ... | main.rs:54:31:54:54 | l2.repeat_packed(...) [Ok] | provenance | MaD:38 | +| main.rs:54:48:54:53 | ... * ... | main.rs:54:31:54:54 | l2.repeat_packed(...) [Ok] | provenance | MaD:37 | | main.rs:58:9:58:20 | TuplePat [tuple.0] | main.rs:58:10:58:11 | k1 | provenance | | | main.rs:58:10:58:11 | k1 | main.rs:59:31:59:32 | k1 | provenance | | -| main.rs:58:24:58:35 | l3.repeat(...) [Ok, tuple.0] | main.rs:58:24:58:66 | ... .expect(...) [tuple.0] | provenance | MaD:41 | +| main.rs:58:24:58:35 | l3.repeat(...) [Ok, tuple.0] | main.rs:58:24:58:66 | ... .expect(...) [tuple.0] | provenance | MaD:40 | | main.rs:58:24:58:66 | ... .expect(...) [tuple.0] | main.rs:58:9:58:20 | TuplePat [tuple.0] | provenance | | -| main.rs:58:34:58:34 | v | main.rs:58:24:58:35 | l3.repeat(...) [Ok, tuple.0] | provenance | MaD:37 | +| main.rs:58:34:58:34 | v | main.rs:58:24:58:35 | l3.repeat(...) [Ok, tuple.0] | provenance | MaD:36 | | main.rs:59:31:59:32 | k1 | main.rs:59:13:59:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:59:31:59:32 | k1 | main.rs:60:34:60:35 | k1 | provenance | | | main.rs:59:31:59:32 | k1 | main.rs:62:24:62:25 | k1 | provenance | | @@ -131,32 +131,32 @@ edges | main.rs:59:31:59:32 | k1 | main.rs:65:31:65:32 | k1 | provenance | | | main.rs:60:9:60:20 | TuplePat [tuple.0] | main.rs:60:10:60:11 | k2 | provenance | | | main.rs:60:10:60:11 | k2 | main.rs:61:31:61:32 | k2 | provenance | | -| main.rs:60:24:60:36 | l3.extend(...) [Ok, tuple.0] | main.rs:60:24:60:45 | ... .unwrap() [tuple.0] | provenance | MaD:42 | +| main.rs:60:24:60:36 | l3.extend(...) [Ok, tuple.0] | main.rs:60:24:60:45 | ... .unwrap() [tuple.0] | provenance | MaD:41 | | main.rs:60:24:60:45 | ... .unwrap() [tuple.0] | main.rs:60:9:60:20 | TuplePat [tuple.0] | provenance | | -| main.rs:60:34:60:35 | k1 | main.rs:60:24:60:36 | l3.extend(...) [Ok, tuple.0] | provenance | MaD:30 | +| main.rs:60:34:60:35 | k1 | main.rs:60:24:60:36 | l3.extend(...) [Ok, tuple.0] | provenance | MaD:29 | | main.rs:61:31:61:32 | k2 | main.rs:61:13:61:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:62:9:62:20 | TuplePat [tuple.0] | main.rs:62:10:62:11 | k3 | provenance | | | main.rs:62:10:62:11 | k3 | main.rs:63:31:63:32 | k3 | provenance | | -| main.rs:62:24:62:25 | k1 | main.rs:62:24:62:36 | k1.extend(...) [Ok, tuple.0] | provenance | MaD:31 | -| main.rs:62:24:62:36 | k1.extend(...) [Ok, tuple.0] | main.rs:62:24:62:45 | ... .unwrap() [tuple.0] | provenance | MaD:42 | +| main.rs:62:24:62:25 | k1 | main.rs:62:24:62:36 | k1.extend(...) [Ok, tuple.0] | provenance | MaD:30 | +| main.rs:62:24:62:36 | k1.extend(...) [Ok, tuple.0] | main.rs:62:24:62:45 | ... .unwrap() [tuple.0] | provenance | MaD:41 | | main.rs:62:24:62:45 | ... .unwrap() [tuple.0] | main.rs:62:9:62:20 | TuplePat [tuple.0] | provenance | | | main.rs:63:31:63:32 | k3 | main.rs:63:13:63:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | -| main.rs:64:31:64:50 | l3.extend_packed(...) [Ok] | main.rs:64:31:64:59 | ... .unwrap() | provenance | MaD:42 | +| main.rs:64:31:64:50 | l3.extend_packed(...) [Ok] | main.rs:64:31:64:59 | ... .unwrap() | provenance | MaD:41 | | main.rs:64:31:64:59 | ... .unwrap() | main.rs:64:13:64:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | -| main.rs:64:48:64:49 | k1 | main.rs:64:31:64:50 | l3.extend_packed(...) [Ok] | provenance | MaD:32 | -| main.rs:65:31:65:32 | k1 | main.rs:65:31:65:50 | k1.extend_packed(...) [Ok] | provenance | MaD:33 | -| main.rs:65:31:65:50 | k1.extend_packed(...) [Ok] | main.rs:65:31:65:59 | ... .unwrap() | provenance | MaD:42 | +| main.rs:64:48:64:49 | k1 | main.rs:64:31:64:50 | l3.extend_packed(...) [Ok] | provenance | MaD:31 | +| main.rs:65:31:65:32 | k1 | main.rs:65:31:65:50 | k1.extend_packed(...) [Ok] | provenance | MaD:32 | +| main.rs:65:31:65:50 | k1.extend_packed(...) [Ok] | main.rs:65:31:65:59 | ... .unwrap() | provenance | MaD:41 | | main.rs:65:31:65:59 | ... .unwrap() | main.rs:65:13:65:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:67:9:67:10 | l4 | main.rs:68:31:68:32 | l4 | provenance | | -| main.rs:67:14:67:47 | ...::array::<...>(...) [Ok] | main.rs:67:14:67:56 | ... .unwrap() | provenance | MaD:42 | +| main.rs:67:14:67:47 | ...::array::<...>(...) [Ok] | main.rs:67:14:67:56 | ... .unwrap() | provenance | MaD:41 | | main.rs:67:14:67:56 | ... .unwrap() | main.rs:67:9:67:10 | l4 | provenance | | -| main.rs:67:46:67:46 | v | main.rs:67:14:67:47 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | +| main.rs:67:46:67:46 | v | main.rs:67:14:67:47 | ...::array::<...>(...) [Ok] | provenance | MaD:28 | | main.rs:68:31:68:32 | l4 | main.rs:68:13:68:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:86:35:86:42 | ...: usize | main.rs:87:54:87:54 | v | provenance | | | main.rs:87:9:87:14 | layout | main.rs:88:31:88:36 | layout | provenance | | -| main.rs:87:18:87:58 | ...::from_size_align(...) [Ok] | main.rs:87:18:87:67 | ... .unwrap() | provenance | MaD:42 | +| main.rs:87:18:87:58 | ...::from_size_align(...) [Ok] | main.rs:87:18:87:67 | ... .unwrap() | provenance | MaD:41 | | main.rs:87:18:87:67 | ... .unwrap() | main.rs:87:9:87:14 | layout | provenance | | -| main.rs:87:54:87:54 | v | main.rs:87:18:87:58 | ...::from_size_align(...) [Ok] | provenance | MaD:34 | +| main.rs:87:54:87:54 | v | main.rs:87:18:87:58 | ...::from_size_align(...) [Ok] | provenance | MaD:33 | | main.rs:88:31:88:36 | layout | main.rs:88:13:88:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:91:38:91:45 | ...: usize | main.rs:92:47:92:47 | v | provenance | | | main.rs:91:38:91:45 | ...: usize | main.rs:101:51:101:51 | v | provenance | | @@ -167,16 +167,16 @@ edges | main.rs:91:38:91:45 | ...: usize | main.rs:161:55:161:55 | v | provenance | | | main.rs:92:9:92:10 | l1 | main.rs:96:35:96:36 | l1 | provenance | | | main.rs:92:9:92:10 | l1 | main.rs:102:35:102:36 | l1 | provenance | | -| main.rs:92:14:92:48 | ...::array::<...>(...) [Ok] | main.rs:92:14:92:57 | ... .unwrap() | provenance | MaD:42 | +| main.rs:92:14:92:48 | ...::array::<...>(...) [Ok] | main.rs:92:14:92:57 | ... .unwrap() | provenance | MaD:41 | | main.rs:92:14:92:57 | ... .unwrap() | main.rs:92:9:92:10 | l1 | provenance | | -| main.rs:92:47:92:47 | v | main.rs:92:14:92:48 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | +| main.rs:92:47:92:47 | v | main.rs:92:14:92:48 | ...::array::<...>(...) [Ok] | provenance | MaD:28 | | main.rs:96:35:96:36 | l1 | main.rs:96:17:96:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:96:35:96:36 | l1 | main.rs:109:35:109:36 | l1 | provenance | | | main.rs:96:35:96:36 | l1 | main.rs:111:35:111:36 | l1 | provenance | | | main.rs:101:13:101:14 | l3 | main.rs:103:35:103:36 | l3 | provenance | | -| main.rs:101:18:101:52 | ...::array::<...>(...) [Ok] | main.rs:101:18:101:61 | ... .unwrap() | provenance | MaD:42 | +| main.rs:101:18:101:52 | ...::array::<...>(...) [Ok] | main.rs:101:18:101:61 | ... .unwrap() | provenance | MaD:41 | | main.rs:101:18:101:61 | ... .unwrap() | main.rs:101:13:101:14 | l3 | provenance | | -| main.rs:101:51:101:51 | v | main.rs:101:18:101:52 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | +| main.rs:101:51:101:51 | v | main.rs:101:18:101:52 | ...::array::<...>(...) [Ok] | provenance | MaD:28 | | main.rs:102:35:102:36 | l1 | main.rs:102:17:102:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:102:35:102:36 | l1 | main.rs:109:35:109:36 | l1 | provenance | | | main.rs:102:35:102:36 | l1 | main.rs:111:35:111:36 | l1 | provenance | | @@ -187,28 +187,28 @@ edges | main.rs:111:35:111:36 | l1 | main.rs:111:17:111:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:111:35:111:36 | l1 | main.rs:146:35:146:36 | l1 | provenance | | | main.rs:145:13:145:14 | l9 | main.rs:148:35:148:36 | l9 | provenance | | -| main.rs:145:18:145:52 | ...::array::<...>(...) [Ok] | main.rs:145:18:145:61 | ... .unwrap() | provenance | MaD:42 | +| main.rs:145:18:145:52 | ...::array::<...>(...) [Ok] | main.rs:145:18:145:61 | ... .unwrap() | provenance | MaD:41 | | main.rs:145:18:145:61 | ... .unwrap() | main.rs:145:13:145:14 | l9 | provenance | | -| main.rs:145:51:145:51 | v | main.rs:145:18:145:52 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | +| main.rs:145:51:145:51 | v | main.rs:145:18:145:52 | ...::array::<...>(...) [Ok] | provenance | MaD:28 | | main.rs:146:35:146:36 | l1 | main.rs:146:17:146:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:146:35:146:36 | l1 | main.rs:177:31:177:32 | l1 | provenance | | | main.rs:148:35:148:36 | l9 | main.rs:148:17:148:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:151:9:151:11 | l10 | main.rs:152:31:152:33 | l10 | provenance | | -| main.rs:151:15:151:69 | ...::array::<...>(...) [Ok] | main.rs:151:15:151:78 | ... .unwrap() | provenance | MaD:42 | +| main.rs:151:15:151:69 | ...::array::<...>(...) [Ok] | main.rs:151:15:151:78 | ... .unwrap() | provenance | MaD:41 | | main.rs:151:15:151:78 | ... .unwrap() | main.rs:151:9:151:11 | l10 | provenance | | -| main.rs:151:48:151:68 | ...::min(...) | main.rs:151:15:151:69 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | -| main.rs:151:62:151:62 | v | main.rs:151:48:151:68 | ...::min(...) | provenance | MaD:44 | +| main.rs:151:48:151:68 | ...::min(...) | main.rs:151:15:151:69 | ...::array::<...>(...) [Ok] | provenance | MaD:28 | +| main.rs:151:62:151:62 | v | main.rs:151:48:151:68 | ...::min(...) | provenance | MaD:43 | | main.rs:152:31:152:33 | l10 | main.rs:152:13:152:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:154:9:154:11 | l11 | main.rs:155:31:155:33 | l11 | provenance | | -| main.rs:154:15:154:69 | ...::array::<...>(...) [Ok] | main.rs:154:15:154:78 | ... .unwrap() | provenance | MaD:42 | +| main.rs:154:15:154:69 | ...::array::<...>(...) [Ok] | main.rs:154:15:154:78 | ... .unwrap() | provenance | MaD:41 | | main.rs:154:15:154:78 | ... .unwrap() | main.rs:154:9:154:11 | l11 | provenance | | -| main.rs:154:48:154:68 | ...::max(...) | main.rs:154:15:154:69 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | -| main.rs:154:62:154:62 | v | main.rs:154:48:154:68 | ...::max(...) | provenance | MaD:43 | +| main.rs:154:48:154:68 | ...::max(...) | main.rs:154:15:154:69 | ...::array::<...>(...) [Ok] | provenance | MaD:28 | +| main.rs:154:62:154:62 | v | main.rs:154:48:154:68 | ...::max(...) | provenance | MaD:42 | | main.rs:155:31:155:33 | l11 | main.rs:155:13:155:29 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:161:13:161:15 | l13 | main.rs:162:35:162:37 | l13 | provenance | | -| main.rs:161:19:161:59 | ...::from_size_align(...) [Ok] | main.rs:161:19:161:68 | ... .unwrap() | provenance | MaD:42 | +| main.rs:161:19:161:59 | ...::from_size_align(...) [Ok] | main.rs:161:19:161:68 | ... .unwrap() | provenance | MaD:41 | | main.rs:161:19:161:68 | ... .unwrap() | main.rs:161:13:161:15 | l13 | provenance | | -| main.rs:161:55:161:55 | v | main.rs:161:19:161:59 | ...::from_size_align(...) [Ok] | provenance | MaD:34 | +| main.rs:161:55:161:55 | v | main.rs:161:19:161:59 | ...::from_size_align(...) [Ok] | provenance | MaD:33 | | main.rs:162:35:162:37 | l13 | main.rs:162:17:162:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:162:35:162:37 | l13 | main.rs:169:35:169:37 | l13 | provenance | | | main.rs:169:35:169:37 | l13 | main.rs:169:17:169:33 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | @@ -216,9 +216,9 @@ edges | main.rs:183:29:183:36 | ...: usize | main.rs:192:46:192:46 | v | provenance | | | main.rs:183:29:183:36 | ...: usize | main.rs:202:48:202:48 | v | provenance | | | main.rs:192:9:192:10 | l2 | main.rs:193:38:193:39 | l2 | provenance | | -| main.rs:192:14:192:47 | ...::array::<...>(...) [Ok] | main.rs:192:14:192:56 | ... .unwrap() | provenance | MaD:42 | +| main.rs:192:14:192:47 | ...::array::<...>(...) [Ok] | main.rs:192:14:192:56 | ... .unwrap() | provenance | MaD:41 | | main.rs:192:14:192:56 | ... .unwrap() | main.rs:192:9:192:10 | l2 | provenance | | -| main.rs:192:46:192:46 | v | main.rs:192:14:192:47 | ...::array::<...>(...) [Ok] | provenance | MaD:29 | +| main.rs:192:46:192:46 | v | main.rs:192:14:192:47 | ...::array::<...>(...) [Ok] | provenance | MaD:28 | | main.rs:193:38:193:39 | l2 | main.rs:193:32:193:36 | alloc | provenance | MaD:12 Sink:MaD:12 | | main.rs:193:38:193:39 | l2 | main.rs:194:45:194:46 | l2 | provenance | | | main.rs:194:45:194:46 | l2 | main.rs:194:32:194:43 | alloc_zeroed | provenance | MaD:13 Sink:MaD:13 | @@ -258,18 +258,17 @@ edges | main.rs:282:24:282:41 | ...: String | main.rs:283:21:283:30 | user_input | provenance | | | main.rs:283:9:283:17 | num_bytes | main.rs:285:54:285:62 | num_bytes | provenance | | | main.rs:283:21:283:30 | user_input | main.rs:283:21:283:47 | user_input.parse() [Ok] | provenance | MaD:26 | -| main.rs:283:21:283:30 | user_input | main.rs:283:21:283:47 | user_input.parse() [Ok] | provenance | MaD:27 | | main.rs:283:21:283:47 | user_input.parse() [Ok] | main.rs:283:21:283:48 | TryExpr | provenance | | | main.rs:283:21:283:48 | TryExpr | main.rs:283:21:283:77 | ... * ... | provenance | MaD:25 | | main.rs:283:21:283:77 | ... * ... | main.rs:283:9:283:17 | num_bytes | provenance | | | main.rs:285:9:285:14 | layout | main.rs:287:40:287:45 | layout | provenance | | -| main.rs:285:18:285:66 | ...::from_size_align(...) [Ok] | main.rs:285:18:285:75 | ... .unwrap() | provenance | MaD:42 | +| main.rs:285:18:285:66 | ...::from_size_align(...) [Ok] | main.rs:285:18:285:75 | ... .unwrap() | provenance | MaD:41 | | main.rs:285:18:285:75 | ... .unwrap() | main.rs:285:9:285:14 | layout | provenance | | -| main.rs:285:54:285:62 | num_bytes | main.rs:285:18:285:66 | ...::from_size_align(...) [Ok] | provenance | MaD:34 | +| main.rs:285:54:285:62 | num_bytes | main.rs:285:18:285:66 | ...::from_size_align(...) [Ok] | provenance | MaD:33 | | main.rs:287:40:287:45 | layout | main.rs:287:22:287:38 | ...::alloc | provenance | MaD:15 Sink:MaD:15 | | main.rs:311:25:311:38 | ...::args | main.rs:311:25:311:40 | ...::args(...) [element] | provenance | Src:MaD:22 | | main.rs:311:25:311:40 | ...::args(...) [element] | main.rs:311:25:311:47 | ... .nth(...) [Some] | provenance | MaD:23 | -| main.rs:311:25:311:47 | ... .nth(...) [Some] | main.rs:311:25:311:74 | ... .unwrap_or(...) | provenance | MaD:40 | +| main.rs:311:25:311:47 | ... .nth(...) [Some] | main.rs:311:25:311:74 | ... .unwrap_or(...) | provenance | MaD:39 | | main.rs:311:25:311:74 | ... .unwrap_or(...) | main.rs:282:24:282:41 | ...: String | provenance | | | main.rs:320:9:320:9 | v | main.rs:323:34:323:34 | v | provenance | | | main.rs:320:9:320:9 | v | main.rs:324:42:324:42 | v | provenance | | @@ -279,10 +278,9 @@ edges | main.rs:320:9:320:9 | v | main.rs:328:22:328:22 | v | provenance | | | main.rs:320:13:320:26 | ...::args | main.rs:320:13:320:28 | ...::args(...) [element] | provenance | Src:MaD:22 | | main.rs:320:13:320:28 | ...::args(...) [element] | main.rs:320:13:320:35 | ... .nth(...) [Some] | provenance | MaD:23 | -| main.rs:320:13:320:35 | ... .nth(...) [Some] | main.rs:320:13:320:65 | ... .unwrap_or(...) | provenance | MaD:40 | +| main.rs:320:13:320:35 | ... .nth(...) [Some] | main.rs:320:13:320:65 | ... .unwrap_or(...) | provenance | MaD:39 | | main.rs:320:13:320:65 | ... .unwrap_or(...) | main.rs:320:13:320:82 | ... .parse() [Ok] | provenance | MaD:26 | -| main.rs:320:13:320:65 | ... .unwrap_or(...) | main.rs:320:13:320:82 | ... .parse() [Ok] | provenance | MaD:27 | -| main.rs:320:13:320:82 | ... .parse() [Ok] | main.rs:320:13:320:91 | ... .unwrap() | provenance | MaD:42 | +| main.rs:320:13:320:82 | ... .parse() [Ok] | main.rs:320:13:320:91 | ... .unwrap() | provenance | MaD:41 | | main.rs:320:13:320:91 | ... .unwrap() | main.rs:320:9:320:9 | v | provenance | | | main.rs:323:34:323:34 | v | main.rs:12:36:12:43 | ...: usize | provenance | | | main.rs:324:42:324:42 | v | main.rs:43:44:43:51 | ...: usize | provenance | | @@ -316,25 +314,24 @@ models | 23 | Summary: <_ as core::iter::traits::iterator::Iterator>::nth; Argument[self].Reference.Element; ReturnValue.Field[core::option::Option::Some(0)]; value | | 24 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0]; ReturnValue; taint | | 25 | Summary: <_ as core::ops::arith::Mul>::mul; Argument[self,0]; ReturnValue; taint | -| 26 | Summary: <_ as core::ops::deref::Deref>::deref; Argument[self].Reference; ReturnValue.Reference; taint | -| 27 | Summary: ::deref; Argument[self]; ReturnValue; value | -| 28 | Summary: ::align_to; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 29 | Summary: ::array; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 30 | Summary: ::extend; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)].Field[0]; taint | -| 31 | Summary: ::extend; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)].Field[0]; taint | -| 32 | Summary: ::extend_packed; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 33 | Summary: ::extend_packed; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 34 | Summary: ::from_size_align; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 35 | Summary: ::from_size_align_unchecked; Argument[0]; ReturnValue; taint | -| 36 | Summary: ::pad_to_align; Argument[self].Reference; ReturnValue; taint | -| 37 | Summary: ::repeat; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)].Field[0]; taint | -| 38 | Summary: ::repeat_packed; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | -| 39 | Summary: ::size; Argument[self].Reference; ReturnValue; taint | -| 40 | Summary: ::unwrap_or; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | -| 41 | Summary: ::expect; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 42 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | -| 43 | Summary: core::cmp::max; Argument[0]; ReturnValue; value | -| 44 | Summary: core::cmp::min; Argument[0]; ReturnValue; value | +| 26 | Summary: ::deref; Argument[self]; ReturnValue; value | +| 27 | Summary: ::align_to; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 28 | Summary: ::array; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 29 | Summary: ::extend; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)].Field[0]; taint | +| 30 | Summary: ::extend; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)].Field[0]; taint | +| 31 | Summary: ::extend_packed; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 32 | Summary: ::extend_packed; Argument[self].Reference; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 33 | Summary: ::from_size_align; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 34 | Summary: ::from_size_align_unchecked; Argument[0]; ReturnValue; taint | +| 35 | Summary: ::pad_to_align; Argument[self].Reference; ReturnValue; taint | +| 36 | Summary: ::repeat; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)].Field[0]; taint | +| 37 | Summary: ::repeat_packed; Argument[0]; ReturnValue.Field[core::result::Result::Ok(0)]; taint | +| 38 | Summary: ::size; Argument[self].Reference; ReturnValue; taint | +| 39 | Summary: ::unwrap_or; Argument[self].Field[core::option::Option::Some(0)]; ReturnValue; value | +| 40 | Summary: ::expect; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 41 | Summary: ::unwrap; Argument[self].Field[core::result::Result::Ok(0)]; ReturnValue; value | +| 42 | Summary: core::cmp::max; Argument[0]; ReturnValue; value | +| 43 | Summary: core::cmp::min; Argument[0]; ReturnValue; value | nodes | main.rs:12:36:12:43 | ...: usize | semmle.label | ...: usize | | main.rs:18:13:18:31 | ...::realloc | semmle.label | ...::realloc | diff --git a/rust/ql/test/query-tests/security/CWE-798/HardcodedCryptographicValue.expected b/rust/ql/test/query-tests/security/CWE-798/HardcodedCryptographicValue.expected index 5423999d7c3f..f416e2b7b387 100644 --- a/rust/ql/test/query-tests/security/CWE-798/HardcodedCryptographicValue.expected +++ b/rust/ql/test/query-tests/security/CWE-798/HardcodedCryptographicValue.expected @@ -23,32 +23,32 @@ edges | test_cipher.rs:18:28:18:36 | &... [&ref] | test_cipher.rs:18:9:18:14 | const1 [&ref] | provenance | | | test_cipher.rs:18:29:18:36 | [0u8; 16] | test_cipher.rs:18:28:18:36 | &... [&ref] | provenance | | | test_cipher.rs:19:49:19:79 | ...::from_slice(...) [&ref] | test_cipher.rs:19:30:19:47 | ...::new | provenance | MaD:3 Sink:MaD:3 | -| test_cipher.rs:19:73:19:78 | const1 [&ref] | test_cipher.rs:19:49:19:79 | ...::from_slice(...) [&ref] | provenance | MaD:18 | +| test_cipher.rs:19:73:19:78 | const1 [&ref] | test_cipher.rs:19:49:19:79 | ...::from_slice(...) [&ref] | provenance | MaD:17 | | test_cipher.rs:25:9:25:14 | const4 [&ref] | test_cipher.rs:26:66:26:71 | const4 [&ref] | provenance | | | test_cipher.rs:25:28:25:36 | &... [&ref] | test_cipher.rs:25:9:25:14 | const4 [&ref] | provenance | | | test_cipher.rs:25:29:25:36 | [0u8; 16] | test_cipher.rs:25:28:25:36 | &... [&ref] | provenance | | | test_cipher.rs:26:42:26:72 | ...::from_slice(...) [&ref] | test_cipher.rs:26:30:26:40 | ...::new | provenance | MaD:4 Sink:MaD:4 | -| test_cipher.rs:26:66:26:71 | const4 [&ref] | test_cipher.rs:26:42:26:72 | ...::from_slice(...) [&ref] | provenance | MaD:18 | +| test_cipher.rs:26:66:26:71 | const4 [&ref] | test_cipher.rs:26:42:26:72 | ...::from_slice(...) [&ref] | provenance | MaD:17 | | test_cipher.rs:29:9:29:14 | const5 [&ref] | test_cipher.rs:30:95:30:100 | const5 [&ref] | provenance | | | test_cipher.rs:29:28:29:36 | &... [&ref] | test_cipher.rs:29:9:29:14 | const5 [&ref] | provenance | | | test_cipher.rs:29:29:29:36 | [0u8; 16] | test_cipher.rs:29:28:29:36 | &... [&ref] | provenance | | | test_cipher.rs:30:72:30:101 | ...::from_slice(...) [&ref] | test_cipher.rs:30:30:30:40 | ...::new | provenance | MaD:5 Sink:MaD:5 | -| test_cipher.rs:30:95:30:100 | const5 [&ref] | test_cipher.rs:30:72:30:101 | ...::from_slice(...) [&ref] | provenance | MaD:18 | +| test_cipher.rs:30:95:30:100 | const5 [&ref] | test_cipher.rs:30:72:30:101 | ...::from_slice(...) [&ref] | provenance | MaD:17 | | test_cipher.rs:37:9:37:14 | const7 | test_cipher.rs:38:74:38:79 | const7 | provenance | | | test_cipher.rs:37:27:37:74 | [...] | test_cipher.rs:37:9:37:14 | const7 | provenance | | | test_cipher.rs:38:49:38:80 | ...::from_slice(...) [&ref] | test_cipher.rs:38:30:38:47 | ...::new | provenance | MaD:3 Sink:MaD:3 | -| test_cipher.rs:38:73:38:79 | &const7 [&ref] | test_cipher.rs:38:49:38:80 | ...::from_slice(...) [&ref] | provenance | MaD:18 | +| test_cipher.rs:38:73:38:79 | &const7 [&ref] | test_cipher.rs:38:49:38:80 | ...::from_slice(...) [&ref] | provenance | MaD:17 | | test_cipher.rs:38:74:38:79 | const7 | test_cipher.rs:38:73:38:79 | &const7 [&ref] | provenance | | | test_cipher.rs:41:9:41:14 | const8 [&ref] | test_cipher.rs:42:73:42:78 | const8 [&ref] | provenance | | | test_cipher.rs:41:28:41:76 | &... [&ref] | test_cipher.rs:41:9:41:14 | const8 [&ref] | provenance | | | test_cipher.rs:41:29:41:76 | [...] | test_cipher.rs:41:28:41:76 | &... [&ref] | provenance | | | test_cipher.rs:42:49:42:79 | ...::from_slice(...) [&ref] | test_cipher.rs:42:30:42:47 | ...::new | provenance | MaD:3 Sink:MaD:3 | -| test_cipher.rs:42:73:42:78 | const8 [&ref] | test_cipher.rs:42:49:42:79 | ...::from_slice(...) [&ref] | provenance | MaD:18 | +| test_cipher.rs:42:73:42:78 | const8 [&ref] | test_cipher.rs:42:49:42:79 | ...::from_slice(...) [&ref] | provenance | MaD:17 | | test_cipher.rs:50:9:50:15 | const10 [element] | test_cipher.rs:51:75:51:81 | const10 [element] | provenance | | | test_cipher.rs:50:37:50:52 | ...::zeroed | test_cipher.rs:50:37:50:54 | ...::zeroed(...) [element] | provenance | Src:MaD:7 | | test_cipher.rs:50:37:50:54 | ...::zeroed(...) [element] | test_cipher.rs:50:9:50:15 | const10 [element] | provenance | | | test_cipher.rs:51:50:51:82 | ...::from_slice(...) [&ref, element] | test_cipher.rs:51:31:51:48 | ...::new | provenance | MaD:3 Sink:MaD:3 Sink:MaD:3 | -| test_cipher.rs:51:74:51:81 | &const10 [&ref, element] | test_cipher.rs:51:50:51:82 | ...::from_slice(...) [&ref, element] | provenance | MaD:18 | +| test_cipher.rs:51:74:51:81 | &const10 [&ref, element] | test_cipher.rs:51:50:51:82 | ...::from_slice(...) [&ref, element] | provenance | MaD:17 | | test_cipher.rs:51:75:51:81 | const10 [element] | test_cipher.rs:51:74:51:81 | &const10 [&ref, element] | provenance | | | test_cipher.rs:73:9:73:14 | const2 [&ref] | test_cipher.rs:74:46:74:51 | const2 [&ref] | provenance | | | test_cipher.rs:73:18:73:26 | &... [&ref] | test_cipher.rs:73:9:73:14 | const2 [&ref] | provenance | | @@ -64,15 +64,14 @@ edges | test_cookie.rs:22:27:22:32 | array2 | test_cookie.rs:22:26:22:32 | &array2 [&ref] | provenance | | | test_cookie.rs:38:9:38:14 | array2 | test_cookie.rs:42:34:42:39 | array2 | provenance | | | test_cookie.rs:38:18:38:37 | ...::from(...) | test_cookie.rs:38:9:38:14 | array2 | provenance | | -| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:8 | +| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:12 | | test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:13 | | test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:14 | | test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:15 | | test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:16 | -| test_cookie.rs:38:28:38:36 | [0u8; 64] | test_cookie.rs:38:18:38:37 | ...::from(...) | provenance | MaD:17 | | test_cookie.rs:42:34:42:39 | array2 | test_cookie.rs:42:14:42:32 | ...::from | provenance | MaD:2 Sink:MaD:2 | | test_cookie.rs:49:9:49:14 | array3 [element] | test_cookie.rs:53:34:53:39 | array3 [element] | provenance | | -| test_cookie.rs:49:23:49:25 | 0u8 | test_cookie.rs:49:23:49:29 | ...::from_elem(...) [element] | provenance | MaD:19 | +| test_cookie.rs:49:23:49:25 | 0u8 | test_cookie.rs:49:23:49:29 | ...::from_elem(...) [element] | provenance | MaD:18 | | test_cookie.rs:49:23:49:29 | ...::from_elem(...) [element] | test_cookie.rs:49:9:49:14 | array3 [element] | provenance | | | test_cookie.rs:53:34:53:39 | array3 [element] | test_cookie.rs:53:14:53:32 | ...::from | provenance | MaD:2 Sink:MaD:2 | | test_heuristic.rs:44:9:44:16 | const_iv [&ref] | test_heuristic.rs:45:41:45:48 | const_iv | provenance | | @@ -80,11 +79,11 @@ edges | test_heuristic.rs:44:31:44:38 | [0u8; 16] | test_heuristic.rs:44:30:44:38 | &... [&ref] | provenance | | | test_heuristic.rs:64:20:64:27 | [0u8; 16] | test_heuristic.rs:64:19:64:27 | &... | provenance | | | test_heuristic.rs:65:31:65:38 | [0u8; 16] | test_heuristic.rs:65:30:65:38 | &... | provenance | | -| test_heuristic.rs:69:32:69:32 | 1 | test_heuristic.rs:69:22:69:32 | ... + ... | provenance | MaD:9 | -| test_heuristic.rs:70:23:70:35 | ... << ... | test_heuristic.rs:70:22:70:62 | ... ^ ... | provenance | MaD:11 | -| test_heuristic.rs:70:34:70:35 | 32 | test_heuristic.rs:70:23:70:35 | ... << ... | provenance | MaD:12 | -| test_heuristic.rs:70:41:70:61 | ... & ... | test_heuristic.rs:70:22:70:62 | ... ^ ... | provenance | MaD:11 | -| test_heuristic.rs:70:52:70:61 | 0xFFFFFFFF | test_heuristic.rs:70:41:70:61 | ... & ... | provenance | MaD:10 | +| test_heuristic.rs:69:32:69:32 | 1 | test_heuristic.rs:69:22:69:32 | ... + ... | provenance | MaD:8 | +| test_heuristic.rs:70:23:70:35 | ... << ... | test_heuristic.rs:70:22:70:62 | ... ^ ... | provenance | MaD:10 | +| test_heuristic.rs:70:34:70:35 | 32 | test_heuristic.rs:70:23:70:35 | ... << ... | provenance | MaD:11 | +| test_heuristic.rs:70:41:70:61 | ... & ... | test_heuristic.rs:70:22:70:62 | ... ^ ... | provenance | MaD:10 | +| test_heuristic.rs:70:52:70:61 | 0xFFFFFFFF | test_heuristic.rs:70:41:70:61 | ... & ... | provenance | MaD:9 | models | 1 | Sink: <_ as crypto_common::KeyInit>::new_from_slice; Argument[0]; credentials-key | | 2 | Sink: ::from; Argument[0]; credentials-key | @@ -93,18 +92,17 @@ models | 5 | Sink: ::new; Argument[1]; credentials-iv | | 6 | Sink: ::from; Argument[0].Reference; credentials-key | | 7 | Source: core::mem::zeroed; ReturnValue.Element; constant-source | -| 8 | Summary: <_ as core::convert::From>::from; Argument[0]; ReturnValue; taint | -| 9 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0]; ReturnValue; taint | -| 10 | Summary: <_ as core::ops::bit::BitAnd>::bitand; Argument[self,0]; ReturnValue; taint | -| 11 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self,0]; ReturnValue; taint | -| 12 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0]; ReturnValue; taint | -| 13 | Summary: ::from; Argument[0].Field[alloc::borrow::Cow::Owned(0)]; ReturnValue; value | -| 14 | Summary: ::from; Argument[0].Field[alloc::bstr::ByteString(0)]; ReturnValue; value | -| 15 | Summary: ::from; Argument[0].Field[alloc::collections::binary_heap::BinaryHeap::data]; ReturnValue; value | -| 16 | Summary: ::from; Argument[0].Field[alloc::string::String::vec]; ReturnValue; value | -| 17 | Summary: ::from; Argument[0]; ReturnValue; taint | -| 18 | Summary: ::from_slice; Argument[0].Reference; ReturnValue.Reference; value | -| 19 | Summary: alloc::vec::from_elem; Argument[0]; ReturnValue.Element; value | +| 8 | Summary: <_ as core::ops::arith::Add>::add; Argument[self,0]; ReturnValue; taint | +| 9 | Summary: <_ as core::ops::bit::BitAnd>::bitand; Argument[self,0]; ReturnValue; taint | +| 10 | Summary: <_ as core::ops::bit::BitXor>::bitxor; Argument[self,0]; ReturnValue; taint | +| 11 | Summary: <_ as core::ops::bit::Shl>::shl; Argument[self,0]; ReturnValue; taint | +| 12 | Summary: ::from; Argument[0].Field[alloc::borrow::Cow::Owned(0)]; ReturnValue; value | +| 13 | Summary: ::from; Argument[0].Field[alloc::bstr::ByteString(0)]; ReturnValue; value | +| 14 | Summary: ::from; Argument[0].Field[alloc::collections::binary_heap::BinaryHeap::data]; ReturnValue; value | +| 15 | Summary: ::from; Argument[0].Field[alloc::string::String::vec]; ReturnValue; value | +| 16 | Summary: ::from; Argument[0]; ReturnValue; taint | +| 17 | Summary: ::from_slice; Argument[0].Reference; ReturnValue.Reference; value | +| 18 | Summary: alloc::vec::from_elem; Argument[0]; ReturnValue.Element; value | nodes | test_cipher.rs:18:9:18:14 | const1 [&ref] | semmle.label | const1 [&ref] | | test_cipher.rs:18:28:18:36 | &... [&ref] | semmle.label | &... [&ref] | From c975ae5231c92bc5a22b953835aefb4dccbc48a1 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 16 Dec 2025 13:49:04 +0100 Subject: [PATCH 154/433] Ruby: Adapt to changes in `FlowSummaryImpl` --- ruby/ql/docs/flow_summaries.md | 2 +- .../lib/codeql/ruby/dataflow/FlowSummary.qll | 100 ++++----- .../dataflow/internal/DataFlowDispatch.qll | 4 +- .../dataflow/internal/FlowSummaryImpl.qll | 2 + .../ruby/frameworks/ActionController.qll | 10 +- .../codeql/ruby/frameworks/ActiveSupport.qll | 38 ++-- ruby/ql/lib/codeql/ruby/frameworks/Arel.qll | 4 +- ruby/ql/lib/codeql/ruby/frameworks/Core.qll | 4 +- ruby/ql/lib/codeql/ruby/frameworks/Erb.qll | 2 +- ruby/ql/lib/codeql/ruby/frameworks/Files.qll | 4 +- ruby/ql/lib/codeql/ruby/frameworks/Ldap.qll | 4 +- ruby/ql/lib/codeql/ruby/frameworks/Mysql2.qll | 4 +- ruby/ql/lib/codeql/ruby/frameworks/Pg.qll | 2 +- ruby/ql/lib/codeql/ruby/frameworks/Rails.qll | 6 +- ruby/ql/lib/codeql/ruby/frameworks/Sequel.qll | 2 +- .../ql/lib/codeql/ruby/frameworks/Sinatra.qll | 4 +- .../ql/lib/codeql/ruby/frameworks/Sqlite3.qll | 2 +- .../codeql/ruby/frameworks/Translation.qll | 2 +- .../lib/codeql/ruby/frameworks/core/Array.qll | 200 +++++++++--------- .../codeql/ruby/frameworks/core/Base64.qll | 2 +- .../lib/codeql/ruby/frameworks/core/Hash.qll | 48 ++--- .../codeql/ruby/frameworks/core/Kernel.qll | 4 +- .../codeql/ruby/frameworks/core/Object.qll | 2 +- .../codeql/ruby/frameworks/core/String.qll | 64 +++--- .../ruby/frameworks/data/ModelsAsData.qll | 10 +- .../ruby/frameworks/rack/internal/Utils.qll | 2 +- .../internal/TypeTrackingImpl.qll | 2 +- .../dataflow/flow-summaries/semantics.ql | 2 +- .../dataflow/regressions/Regressions.ql | 2 +- .../dataflow/summaries/Summaries.ql | 6 +- 30 files changed, 275 insertions(+), 265 deletions(-) diff --git a/ruby/ql/docs/flow_summaries.md b/ruby/ql/docs/flow_summaries.md index 5f39e1585884..bb5fe5d71787 100644 --- a/ruby/ql/docs/flow_summaries.md +++ b/ruby/ql/docs/flow_summaries.md @@ -19,7 +19,7 @@ to be tainted in the call to `system`. have no source code, so we include a flow summary for it: ```ql -private class ChompSummary extends SimpleSummarizedCallable { +private class ChompSummary extends SummarizedCallable::RangeSimple { ChompSummary() { this = "chomp" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { diff --git a/ruby/ql/lib/codeql/ruby/dataflow/FlowSummary.qll b/ruby/ql/lib/codeql/ruby/dataflow/FlowSummary.qll index 73e4ca8dfec7..3ec9a9d87dc5 100644 --- a/ruby/ql/lib/codeql/ruby/dataflow/FlowSummary.qll +++ b/ruby/ql/lib/codeql/ruby/dataflow/FlowSummary.qll @@ -15,65 +15,64 @@ private module Summaries { private import codeql.ruby.frameworks.data.ModelsAsData } -deprecated class SummaryComponent = Impl::Private::SummaryComponent; +class Provenance = Impl::Public::Provenance; -deprecated module SummaryComponent = Impl::Private::SummaryComponent; +/** Provides the `Range` class used to define the extent of `SummarizedCallable`. */ +module SummarizedCallable { + /** A callable with a flow summary, identified by a unique string. */ + abstract class Range extends LibraryCallable, Impl::Public::SummarizedCallable { + bindingset[this] + Range() { any() } -deprecated class SummaryComponentStack = Impl::Private::SummaryComponentStack; - -deprecated module SummaryComponentStack = Impl::Private::SummaryComponentStack; - -/** A callable with a flow summary, identified by a unique string. */ -abstract class SummarizedCallable extends LibraryCallable, Impl::Public::SummarizedCallable { - bindingset[this] - SummarizedCallable() { any() } - - /** - * DEPRECATED: Use `propagatesFlow` instead. - */ - deprecated predicate propagatesFlowExt(string input, string output, boolean preservesValue) { - this.propagatesFlow(input, output, preservesValue, _) - } + override predicate propagatesFlow( + string input, string output, boolean preservesValue, Provenance p, boolean isExact, + string model + ) { + this.propagatesFlow(input, output, preservesValue) and + p = "manual" and + isExact = true and + model = "" + } - override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model - ) { - this.propagatesFlow(input, output, preservesValue) and model = "" + /** + * Holds if data may flow from `input` to `output` through this callable. + * + * `preservesValue` indicates whether this is a value-preserving step or a taint-step. + */ + predicate propagatesFlow(string input, string output, boolean preservesValue) { none() } + + /** + * Gets the synthesized parameter that results from an input specification + * that starts with `Argument[s]` for this library callable. + */ + DataFlow::ParameterNode getParameter(string s) { + exists(ParameterPosition pos | + DataFlowImplCommon::parameterNode(result, TLibraryCallable(this), pos) and + s = Impl::Input::encodeParameterPosition(pos) + ) + } } /** - * Holds if data may flow from `input` to `output` through this callable. - * - * `preservesValue` indicates whether this is a value-preserving step or a taint-step. + * A callable with a flow summary, identified by a unique string, where all + * calls to a method with the same name are considered relevant. */ - predicate propagatesFlow(string input, string output, boolean preservesValue) { none() } + abstract class RangeSimple extends Range { + MethodCall mc; - /** - * Gets the synthesized parameter that results from an input specification - * that starts with `Argument[s]` for this library callable. - */ - DataFlow::ParameterNode getParameter(string s) { - exists(ParameterPosition pos | - DataFlowImplCommon::parameterNode(result, TLibraryCallable(this), pos) and - s = Impl::Input::encodeParameterPosition(pos) - ) + bindingset[this] + RangeSimple() { mc.getMethodName() = this } + + final override MethodCall getACallSimple() { result = mc } } } -/** - * A callable with a flow summary, identified by a unique string, where all - * calls to a method with the same name are considered relevant. - */ -abstract class SimpleSummarizedCallable extends SummarizedCallable { - MethodCall mc; - - bindingset[this] - SimpleSummarizedCallable() { mc.getMethodName() = this } +final private class SummarizedCallableFinal = SummarizedCallable::Range; - final override MethodCall getACallSimple() { result = mc } -} - -deprecated class RequiredSummaryComponentStack = Impl::Private::RequiredSummaryComponentStack; +/** A callable with a flow summary, identified by a unique string. */ +final class SummarizedCallable extends SummarizedCallableFinal, + Impl::Public::RelevantSummarizedCallable +{ } /** * Provides a set of special flow summaries to ensure that callbacks passed into @@ -103,7 +102,7 @@ private module LibraryCallbackSummaries { ) } - private class LibraryLambdaMethod extends SummarizedCallable { + private class LibraryLambdaMethod extends SummarizedCallable::Range { LibraryLambdaMethod() { this = "" } final override MethodCall getACall() { @@ -114,7 +113,8 @@ private module LibraryCallbackSummaries { } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, + string model ) { ( input = "Argument[block]" and @@ -127,6 +127,8 @@ private module LibraryCallbackSummaries { ) ) and preservesValue = true and + p = "hq-generated" and + isExact = true and model = "heuristic-callback" } } diff --git a/ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowDispatch.qll b/ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowDispatch.qll index 62253587e7ad..70c761e411cf 100644 --- a/ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowDispatch.qll +++ b/ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowDispatch.qll @@ -240,7 +240,9 @@ class NormalCall extends DataFlowCall, TNormalCall { module ViewComponentRenderModeling { private import codeql.ruby.frameworks.ViewComponent - private class RenderMethod extends SummarizedCallable, LibraryCallableToIncludeInTypeTracking { + private class RenderMethod extends SummarizedCallable::Range, + LibraryCallableToIncludeInTypeTracking + { RenderMethod() { this = "render view component" } override MethodCall getACallSimple() { result.getMethodName() = "render" } diff --git a/ruby/ql/lib/codeql/ruby/dataflow/internal/FlowSummaryImpl.qll b/ruby/ql/lib/codeql/ruby/dataflow/internal/FlowSummaryImpl.qll index f8e3894a8331..d7326d9594b5 100644 --- a/ruby/ql/lib/codeql/ruby/dataflow/internal/FlowSummaryImpl.qll +++ b/ruby/ql/lib/codeql/ruby/dataflow/internal/FlowSummaryImpl.qll @@ -18,6 +18,8 @@ module Input implements InputSig { class SinkBase = Void; + predicate callableFromSource(SummarizedCallableBase c) { none() } + ArgumentPosition callbackSelfParameterPosition() { result.isLambdaSelf() } ReturnKind getStandardReturnValueKind() { result instanceof NormalReturnKind } diff --git a/ruby/ql/lib/codeql/ruby/frameworks/ActionController.qll b/ruby/ql/lib/codeql/ruby/frameworks/ActionController.qll index 5a1cf3f53181..a1d56e5fe15f 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/ActionController.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/ActionController.qll @@ -545,7 +545,7 @@ private module ParamsSummaries { * A flow summary for methods on `ActionController::Parameters` which * propagate taint from receiver to return value. */ - private class MethodsReturningParamsInstanceSummary extends SummarizedCallable { + private class MethodsReturningParamsInstanceSummary extends SummarizedCallable::Range { MethodsReturningParamsInstanceSummary() { this = "ActionController::Parameters#" } override MethodCall getACall() { @@ -566,7 +566,7 @@ private module ParamsSummaries { * `#with_defaults` * Returns a new ActionController::Parameters with all keys from current hash merged into other_hash. */ - private class MergeSummary extends SummarizedCallable { + private class MergeSummary extends SummarizedCallable::Range { MergeSummary() { this = "ActionController::Parameters#merge" } override MethodCall getACall() { @@ -590,7 +590,7 @@ private module ParamsSummaries { * `#reverse_update` * Returns a new ActionController::Parameters with all keys from current hash merged into other_hash. */ - private class MergeBangSummary extends SummarizedCallable { + private class MergeBangSummary extends SummarizedCallable::Range { MergeBangSummary() { this = "ActionController::Parameters#merge!" } override MethodCall getACall() { @@ -609,7 +609,7 @@ private module ParamsSummaries { /** Flow summaries for `ActiveDispatch::Http::UploadedFile`, which can be an field of `ActionController::Parameters`. */ module UploadedFileSummaries { /** Flow summary for various string attributes of `UploadedFile`, including `original_filename`, `content_type`, and `headers`. */ - private class UploadedFileStringAttributeSummary extends SummarizedCallable { + private class UploadedFileStringAttributeSummary extends SummarizedCallable::Range { UploadedFileStringAttributeSummary() { this = "ActionDispatch::Http::UploadedFile#[original_filename,content_type,headers]" } @@ -632,7 +632,7 @@ private module ParamsSummaries { * Flow summary for `ActiveDispatch::Http::UploadedFile#read`, * which propagates taint from the receiver to the return value or to the second (out string) argument */ - private class UploadedFileReadSummary extends SummarizedCallable { + private class UploadedFileReadSummary extends SummarizedCallable::Range { UploadedFileReadSummary() { this = "ActionDispatch::Http::UploadedFile#read" } override MethodCall getACall() { diff --git a/ruby/ql/lib/codeql/ruby/frameworks/ActiveSupport.qll b/ruby/ql/lib/codeql/ruby/frameworks/ActiveSupport.qll index 349a17bbeac3..ccfbdf67f115 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/ActiveSupport.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/ActiveSupport.qll @@ -45,7 +45,7 @@ module ActiveSupport { /** * Flow summary for methods which transform the receiver in some way, possibly preserving taint. */ - private class StringTransformSummary extends SummarizedCallable { + private class StringTransformSummary extends SummarizedCallable::Range { // We're modeling a lot of different methods, so we make up a name for this summary. StringTransformSummary() { this = "ActiveSupportStringTransform" } @@ -72,7 +72,7 @@ module ActiveSupport { */ module Object { /** Flow summary for methods which can return the receiver. */ - private class IdentitySummary extends SimpleSummarizedCallable { + private class IdentitySummary extends SummarizedCallable::RangeSimple { IdentitySummary() { this = ["presence", "deep_dup"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -106,7 +106,7 @@ module ActiveSupport { } /** Flow summary for `Object#to_json`, which serializes the receiver as a JSON string. */ - private class ToJsonSummary extends SimpleSummarizedCallable { + private class ToJsonSummary extends SummarizedCallable::RangeSimple { ToJsonSummary() { this = "to_json" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -124,7 +124,7 @@ module ActiveSupport { /** * Flow summary for `reverse_merge`, and its alias `with_defaults`. */ - private class ReverseMergeSummary extends SimpleSummarizedCallable { + private class ReverseMergeSummary extends SummarizedCallable::RangeSimple { ReverseMergeSummary() { this = ["reverse_merge", "with_defaults"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -137,7 +137,7 @@ module ActiveSupport { /** * Flow summary for `reverse_merge!`, and its aliases `with_defaults!` and `reverse_update`. */ - private class ReverseMergeBangSummary extends SimpleSummarizedCallable { + private class ReverseMergeBangSummary extends SummarizedCallable::RangeSimple { ReverseMergeBangSummary() { this = ["reverse_merge!", "with_defaults!", "reverse_update"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -147,7 +147,7 @@ module ActiveSupport { } } - private class TransformSummary extends SimpleSummarizedCallable { + private class TransformSummary extends SummarizedCallable::RangeSimple { TransformSummary() { this = [ @@ -188,7 +188,7 @@ module ActiveSupport { * mentioned in the arguments to an element in `self`, including elements * at unknown keys. */ - private class ExtractSummary extends SummarizedCallable { + private class ExtractSummary extends SummarizedCallable::Range { MethodCall mc; ExtractSummary() { @@ -232,7 +232,7 @@ module ActiveSupport { ArrayIndex() { this = any(DataFlow::Content::KnownElementContent c).getIndex().getInt() } } - private class CompactBlankSummary extends SimpleSummarizedCallable { + private class CompactBlankSummary extends SummarizedCallable::RangeSimple { CompactBlankSummary() { this = "compact_blank" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -242,7 +242,7 @@ module ActiveSupport { } } - private class ExcludingSummary extends SimpleSummarizedCallable { + private class ExcludingSummary extends SummarizedCallable::RangeSimple { ExcludingSummary() { this = ["excluding", "without"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -252,7 +252,7 @@ module ActiveSupport { } } - private class InOrderOfSummary extends SimpleSummarizedCallable { + private class InOrderOfSummary extends SummarizedCallable::RangeSimple { InOrderOfSummary() { this = "in_order_of" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -265,7 +265,7 @@ module ActiveSupport { /** * Like `Array#push` but doesn't update the receiver. */ - private class IncludingSummary extends SimpleSummarizedCallable { + private class IncludingSummary extends SummarizedCallable::RangeSimple { IncludingSummary() { this = "including" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -287,7 +287,7 @@ module ActiveSupport { } } - private class IndexBySummary extends SimpleSummarizedCallable { + private class IndexBySummary extends SummarizedCallable::RangeSimple { IndexBySummary() { this = "index_by" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -297,7 +297,7 @@ module ActiveSupport { } } - private class IndexWithSummary extends SimpleSummarizedCallable { + private class IndexWithSummary extends SummarizedCallable::RangeSimple { IndexWithSummary() { this = "index_with" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -316,7 +316,7 @@ module ActiveSupport { result = DataFlow::Content::getKnownElementIndex(mc.getArgument(i)).serialize() } - private class PickSingleSummary extends SummarizedCallable { + private class PickSingleSummary extends SummarizedCallable::Range { private MethodCall mc; private string key; @@ -336,7 +336,7 @@ module ActiveSupport { } } - private class PickMultipleSummary extends SummarizedCallable { + private class PickMultipleSummary extends SummarizedCallable::Range { private MethodCall mc; PickMultipleSummary() { @@ -370,7 +370,7 @@ module ActiveSupport { } } - private class PluckSingleSummary extends SummarizedCallable { + private class PluckSingleSummary extends SummarizedCallable::Range { private MethodCall mc; private string key; @@ -390,7 +390,7 @@ module ActiveSupport { } } - private class PluckMultipleSummary extends SummarizedCallable { + private class PluckMultipleSummary extends SummarizedCallable::Range { private MethodCall mc; PluckMultipleSummary() { @@ -424,7 +424,7 @@ module ActiveSupport { } } - private class SoleSummary extends SimpleSummarizedCallable { + private class SoleSummary extends SummarizedCallable::RangeSimple { SoleSummary() { this = "sole" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -458,7 +458,7 @@ module ActiveSupport { * `ActiveSupport::ERB::Util` */ module Util { - private class JsonEscapeSummary extends SimpleSummarizedCallable { + private class JsonEscapeSummary extends SummarizedCallable::RangeSimple { JsonEscapeSummary() { this = "json_escape" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { diff --git a/ruby/ql/lib/codeql/ruby/frameworks/Arel.qll b/ruby/ql/lib/codeql/ruby/frameworks/Arel.qll index d4336cd35c54..ae0b37cf78f3 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/Arel.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/Arel.qll @@ -18,7 +18,7 @@ module Arel { * Flow summary for `Arel.sql`. This method wraps a SQL string, marking it as * safe. */ - private class SqlSummary extends SummarizedCallable { + private class SqlSummary extends SummarizedCallable::Range { SqlSummary() { this = "Arel.sql" } override MethodCall getACall() { @@ -44,7 +44,7 @@ module Arel { * Flow summary for `Arel::Nodes::SqlLiteral.new`. This method wraps a SQL string, marking it as * safe. */ - private class SqlLiteralNewSummary extends SummarizedCallable { + private class SqlLiteralNewSummary extends SummarizedCallable::Range { SqlLiteralNewSummary() { this = "Arel::Nodes::SqlLiteral.new" } override MethodCall getACall() { diff --git a/ruby/ql/lib/codeql/ruby/frameworks/Core.qll b/ruby/ql/lib/codeql/ruby/frameworks/Core.qll index e409e042e6bb..c14abdbb2c38 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/Core.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/Core.qll @@ -57,7 +57,7 @@ class SubshellHeredocExecution extends SystemCommandExecution::Range { override predicate isShellInterpreted(DataFlow::Node arg) { arg = this.getAnArgument() } } -private class SplatSummary extends SummarizedCallable { +private class SplatSummary extends SummarizedCallable::Range { SplatSummary() { this = "*(splat)" } override SplatExpr getACallSimple() { any() } @@ -76,7 +76,7 @@ private class SplatSummary extends SummarizedCallable { } } -private class HashSplatSummary extends SummarizedCallable { +private class HashSplatSummary extends SummarizedCallable::Range { HashSplatSummary() { this = "**(hash-splat)" } override HashSplatExpr getACallSimple() { any() } diff --git a/ruby/ql/lib/codeql/ruby/frameworks/Erb.qll b/ruby/ql/lib/codeql/ruby/frameworks/Erb.qll index d29eda88e401..954f21726c4c 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/Erb.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/Erb.qll @@ -13,7 +13,7 @@ module Erb { /** * Flow summary for `ERB.new`. This method wraps a template string, compiling it. */ - private class TemplateSummary extends SummarizedCallable { + private class TemplateSummary extends SummarizedCallable::Range { TemplateSummary() { this = "ERB.new" } override MethodCall getACall() { result = any(ErbTemplateNewCall c).asExpr().getExpr() } diff --git a/ruby/ql/lib/codeql/ruby/frameworks/Files.qll b/ruby/ql/lib/codeql/ruby/frameworks/Files.qll index b908e3da8f90..1639dac7b600 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/Files.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/Files.qll @@ -103,7 +103,7 @@ module File { * A flow summary for several methods on the `File` class that propagate taint * from their first argument to the return value. */ - class FilePathConversionSummary extends SummarizedCallable { + class FilePathConversionSummary extends SummarizedCallable::Range { string methodName; FilePathConversionSummary() { @@ -126,7 +126,7 @@ module File { * A flow summary for `File.join`, which propagates taint from every argument to * its return value. */ - class FileJoinSummary extends SummarizedCallable { + class FileJoinSummary extends SummarizedCallable::Range { FileJoinSummary() { this = "File.join" } override MethodCall getACall() { diff --git a/ruby/ql/lib/codeql/ruby/frameworks/Ldap.qll b/ruby/ql/lib/codeql/ruby/frameworks/Ldap.qll index f3f12bbd55be..e3f9cd727f79 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/Ldap.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/Ldap.qll @@ -14,7 +14,7 @@ module NetLdap { /** * Flow summary for `Net::LDAP.new`. This method establishes a connection to a LDAP server. */ - private class LdapConnSummary extends SummarizedCallable { + private class LdapConnSummary extends SummarizedCallable::Range { LdapConnSummary() { this = "Net::LDAP.new" } override MethodCall getACall() { result = any(NetLdapConnection l).asExpr().getExpr() } @@ -27,7 +27,7 @@ module NetLdap { /** * Flow summary for `Net::LDAP.Filter`. */ - private class LdapFilterSummary extends SummarizedCallable { + private class LdapFilterSummary extends SummarizedCallable::Range { LdapFilterSummary() { this = "Net::LDAP::Filter" } override MethodCall getACall() { result = any(NetLdapFilter l).asExpr().getExpr() } diff --git a/ruby/ql/lib/codeql/ruby/frameworks/Mysql2.qll b/ruby/ql/lib/codeql/ruby/frameworks/Mysql2.qll index efd295c44e7e..baca5bba95f3 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/Mysql2.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/Mysql2.qll @@ -13,7 +13,7 @@ module Mysql2 { /** * Flow summary for `Mysql2::Client.new()`. */ - private class SqlSummary extends SummarizedCallable { + private class SqlSummary extends SummarizedCallable::Range { SqlSummary() { this = "Mysql2::Client.new()" } override MethodCall getACall() { result = any(Mysql2Connection c).asExpr().getExpr() } @@ -61,7 +61,7 @@ module Mysql2 { /** * Flow summary for `Mysql2::Client.escape()`. */ - private class EscapeSummary extends SummarizedCallable { + private class EscapeSummary extends SummarizedCallable::Range { EscapeSummary() { this = "Mysql2::Client.escape()" } override MethodCall getACall() { result = any(Mysql2EscapeSanitization c).asExpr().getExpr() } diff --git a/ruby/ql/lib/codeql/ruby/frameworks/Pg.qll b/ruby/ql/lib/codeql/ruby/frameworks/Pg.qll index 2c3007cd20bb..0c56b6eeb43d 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/Pg.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/Pg.qll @@ -13,7 +13,7 @@ module Pg { /** * Flow summary for `PG.new()`. This method initializes a database connection. */ - private class SqlSummary extends SummarizedCallable { + private class SqlSummary extends SummarizedCallable::Range { SqlSummary() { this = "PG.new()" } override MethodCall getACall() { result = any(PgConnection c).asExpr().getExpr() } diff --git a/ruby/ql/lib/codeql/ruby/frameworks/Rails.qll b/ruby/ql/lib/codeql/ruby/frameworks/Rails.qll index 8b657c17ec7d..4a9f7fa9c87a 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/Rails.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/Rails.qll @@ -330,7 +330,7 @@ private class LocalAssignsHashSyntheticGlobal extends string { } /** A summary for `render` calls linked to some specific ERB file. */ -private class RenderLocalsSummary extends SummarizedCallable { +private class RenderLocalsSummary extends SummarizedCallable::Range { private LocalAssignsHashSyntheticGlobal glob; RenderLocalsSummary() { this = "rails_render_locals()" + glob.getId() } @@ -345,7 +345,7 @@ private class RenderLocalsSummary extends SummarizedCallable { } /** A summary for calls to `local_assigns` in a view to access a `render` call `locals` hash. */ -private class AccessLocalsSummary extends SummarizedCallable { +private class AccessLocalsSummary extends SummarizedCallable::Range { private LocalAssignsHashSyntheticGlobal glob; AccessLocalsSummary() { this = "rails_local_assigns()" + glob.getId() } @@ -366,7 +366,7 @@ private string getAMethodNameFromErbFile(ErbFile f) { result = any(MethodCall c | c.getLocation().getFile() = f).getMethodName() } -private class AccessLocalsKeySummary extends SummarizedCallable { +private class AccessLocalsKeySummary extends SummarizedCallable::Range { private LocalAssignsHashSyntheticGlobal glob; private string methodName; diff --git a/ruby/ql/lib/codeql/ruby/frameworks/Sequel.qll b/ruby/ql/lib/codeql/ruby/frameworks/Sequel.qll index 65d091e82294..9a39e80128e0 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/Sequel.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/Sequel.qll @@ -14,7 +14,7 @@ private import codeql.ruby.Concepts */ module Sequel { /** Flow Summary for `Sequel`. */ - private class SqlSummary extends SummarizedCallable { + private class SqlSummary extends SummarizedCallable::Range { SqlSummary() { this = "Sequel.connect" } override MethodCall getACall() { result = any(SequelConnection c).asExpr().getExpr() } diff --git a/ruby/ql/lib/codeql/ruby/frameworks/Sinatra.qll b/ruby/ql/lib/codeql/ruby/frameworks/Sinatra.qll index 5b6bb33edf38..eabee2ea5133 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/Sinatra.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/Sinatra.qll @@ -167,7 +167,7 @@ module Sinatra { * from the `locals` keyword argument to variables in the ERB template. The * second half is modeled by `ErbLocalsAccessSummary`. */ - private class ErbLocalsSummary extends SummarizedCallable { + private class ErbLocalsSummary extends SummarizedCallable::Range { ErbLocalsSummary() { this = "Sinatra::Base#erb" } override MethodCall getACall() { result = any(ErbCall c).asExpr().getExpr() } @@ -191,7 +191,7 @@ module Sinatra { * keyword argument to variables in the ERB template. * The first half is modeled by `ErbLocalsSummary`. */ - private class ErbLocalsAccessSummary extends SummarizedCallable { + private class ErbLocalsAccessSummary extends SummarizedCallable::Range { private ErbLocalsHashSyntheticGlobal global; private string local; diff --git a/ruby/ql/lib/codeql/ruby/frameworks/Sqlite3.qll b/ruby/ql/lib/codeql/ruby/frameworks/Sqlite3.qll index abb7eec297d3..f3e7626f7337 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/Sqlite3.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/Sqlite3.qll @@ -89,7 +89,7 @@ module Sqlite3 { /** * Flow summary for `SQLite3::Database.quote()`. */ - private class QuoteSummary extends SummarizedCallable { + private class QuoteSummary extends SummarizedCallable::Range { QuoteSummary() { this = "SQLite3::Database.quote()" } override MethodCall getACall() { result = any(SQLite3QuoteSanitization c).asExpr().getExpr() } diff --git a/ruby/ql/lib/codeql/ruby/frameworks/Translation.qll b/ruby/ql/lib/codeql/ruby/frameworks/Translation.qll index cf3f0aa77c40..62e67188d07d 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/Translation.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/Translation.qll @@ -35,7 +35,7 @@ private MethodCall getControllerHelperTranslateCall() { } /** Flow summary for translation methods. */ -private class TranslateSummary extends SummarizedCallable { +private class TranslateSummary extends SummarizedCallable::Range { TranslateSummary() { this = "I18n.translate" } override MethodCall getACall() { diff --git a/ruby/ql/lib/codeql/ruby/frameworks/core/Array.qll b/ruby/ql/lib/codeql/ruby/frameworks/core/Array.qll index 2da521e54a1b..ec21ffc7475c 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/core/Array.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/core/Array.qll @@ -41,7 +41,7 @@ module Array { not e instanceof RangeLiteral } - private class ArrayLiteralSummary extends SummarizedCallable { + private class ArrayLiteralSummary extends SummarizedCallable::Range { ArrayLiteralSummary() { this = "Array.[]" } override MethodCall getACallSimple() { result = getAStaticArrayCall("[]") } @@ -55,7 +55,7 @@ module Array { } } - private class NewSummary extends SummarizedCallable { + private class NewSummary extends SummarizedCallable::Range { NewSummary() { this = "Array.new" } override MethodCall getACallSimple() { result = getAStaticArrayCall("new") } @@ -75,7 +75,7 @@ module Array { } } - private class TryConvertSummary extends SummarizedCallable { + private class TryConvertSummary extends SummarizedCallable::Range { TryConvertSummary() { this = "Array.try_convert" } override MethodCall getACallSimple() { result = getAStaticArrayCall("try_convert") } @@ -87,7 +87,7 @@ module Array { } } - private class SetIntersectionSummary extends SummarizedCallable { + private class SetIntersectionSummary extends SummarizedCallable::Range { SetIntersectionSummary() { this = "&" } override BitwiseAndExpr getACallSimple() { any() } @@ -99,7 +99,7 @@ module Array { } } - private class SetUnionSummary extends SummarizedCallable { + private class SetUnionSummary extends SummarizedCallable::Range { SetUnionSummary() { this = "|" } override BitwiseOrExpr getACallSimple() { any() } @@ -111,7 +111,7 @@ module Array { } } - private class RepetitionSummary extends SummarizedCallable { + private class RepetitionSummary extends SummarizedCallable::Range { RepetitionSummary() { this = "*" } override MulExpr getACallSimple() { any() } @@ -123,7 +123,7 @@ module Array { } } - private class ConcatenationSummary extends SummarizedCallable { + private class ConcatenationSummary extends SummarizedCallable::Range { ConcatenationSummary() { this = "+" } override AddExpr getACallSimple() { any() } @@ -140,7 +140,7 @@ module Array { } } - abstract private class DifferenceSummaryShared extends SummarizedCallable { + abstract private class DifferenceSummaryShared extends SummarizedCallable::Range { bindingset[this] DifferenceSummaryShared() { any() } @@ -158,7 +158,7 @@ module Array { } /** Flow summary for `Array#<<`. For `Array#append`, see `PushSummary`. */ - private class AppendOperatorSummary extends SummarizedCallable { + private class AppendOperatorSummary extends SummarizedCallable::Range { AppendOperatorSummary() { this = "<<" } override LShiftExpr getACallSimple() { any() } @@ -180,7 +180,7 @@ module Array { } /** A call to `[]`, or its alias, `slice`. */ - abstract private class ElementReferenceReadSummary extends SummarizedCallable { + abstract private class ElementReferenceReadSummary extends SummarizedCallable::Range { MethodCall mc; ElementReferenceReadMethodName methodName; // adding this as a field helps give a better join order @@ -306,7 +306,7 @@ module Array { } /** A call to `[]=`. */ - abstract private class ElementReferenceStoreSummary extends SummarizedCallable { + abstract private class ElementReferenceStoreSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -381,7 +381,7 @@ module Array { } } - private class AssocSummary extends SimpleSummarizedCallable { + private class AssocSummary extends SummarizedCallable::RangeSimple { AssocSummary() { this = ["assoc", "rassoc"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -391,7 +391,7 @@ module Array { } } - abstract private class AtSummary extends SummarizedCallable { + abstract private class AtSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -430,7 +430,7 @@ module Array { } } - private class BSearchSummary extends SimpleSummarizedCallable { + private class BSearchSummary extends SummarizedCallable::RangeSimple { BSearchSummary() { this = "bsearch" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -440,7 +440,7 @@ module Array { } } - private class BSearchIndexSummary extends SimpleSummarizedCallable { + private class BSearchIndexSummary extends SummarizedCallable::RangeSimple { BSearchIndexSummary() { this = "bsearch_index" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -450,7 +450,7 @@ module Array { } } - private class ClearSummary extends SimpleSummarizedCallable { + private class ClearSummary extends SummarizedCallable::RangeSimple { ClearSummary() { this = "clear" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -460,7 +460,7 @@ module Array { } } - private class CollectBangSummary extends SimpleSummarizedCallable { + private class CollectBangSummary extends SummarizedCallable::RangeSimple { // `map!` is an alias of `collect!`. CollectBangSummary() { this = ["collect!", "map!"] } @@ -475,7 +475,7 @@ module Array { } } - private class CombinationSummary extends SimpleSummarizedCallable { + private class CombinationSummary extends SummarizedCallable::RangeSimple { CombinationSummary() { this = "combination" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -489,7 +489,7 @@ module Array { } } - private class CompactBangSummary extends SimpleSummarizedCallable { + private class CompactBangSummary extends SummarizedCallable::RangeSimple { CompactBangSummary() { this = "compact!" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -499,7 +499,7 @@ module Array { } } - private class ConcatSummary extends SimpleSummarizedCallable { + private class ConcatSummary extends SummarizedCallable::RangeSimple { ConcatSummary() { this = "concat" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -509,7 +509,7 @@ module Array { } } - private class DeconstructSummary extends SimpleSummarizedCallable { + private class DeconstructSummary extends SummarizedCallable::RangeSimple { DeconstructSummary() { this = "deconstruct" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -522,7 +522,7 @@ module Array { } } - abstract private class DeleteSummary extends SummarizedCallable { + abstract private class DeleteSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -604,7 +604,7 @@ module Array { } } - abstract private class DeleteAtSummary extends SummarizedCallable { + abstract private class DeleteAtSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -667,7 +667,7 @@ module Array { } } - private class DeleteIfSummary extends SummarizedCallable { + private class DeleteIfSummary extends SummarizedCallable::Range { MethodCall mc; int lastBlockParam; @@ -691,7 +691,7 @@ module Array { } } - private class DifferenceSummary extends DifferenceSummaryShared, SimpleSummarizedCallable { + private class DifferenceSummary extends DifferenceSummaryShared, SummarizedCallable::RangeSimple { DifferenceSummary() { this = "difference" } } @@ -728,7 +728,7 @@ module Array { ) } - private class DigSummary extends SummarizedCallable { + private class DigSummary extends SummarizedCallable::Range { private RelevantDigMethodCall dig; DigSummary() { @@ -750,7 +750,7 @@ module Array { } } - private class EachSummary extends SummarizedCallable { + private class EachSummary extends SummarizedCallable::Range { MethodCall mc; int lastBlockParam; @@ -776,7 +776,7 @@ module Array { } } - private class EachIndexSummary extends SimpleSummarizedCallable { + private class EachIndexSummary extends SummarizedCallable::RangeSimple { EachIndexSummary() { this = ["each_index", "each_key"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -786,7 +786,7 @@ module Array { } } - abstract private class FetchSummary extends SummarizedCallable { + abstract private class FetchSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -839,7 +839,7 @@ module Array { } } - abstract private class FillSummary extends SummarizedCallable { + abstract private class FillSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -882,7 +882,7 @@ module Array { * Note that we model flow from elements up to 3 levels of nesting * (`[[[1],[2]]]`), but not beyond that. */ - private class FlattenSummary extends SimpleSummarizedCallable { + private class FlattenSummary extends SummarizedCallable::RangeSimple { FlattenSummary() { this = "flatten" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -898,7 +898,7 @@ module Array { } } - private class FlattenBangSummary extends SimpleSummarizedCallable { + private class FlattenBangSummary extends SummarizedCallable::RangeSimple { FlattenBangSummary() { this = "flatten!" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -917,7 +917,7 @@ module Array { } } - private class IndexSummary extends SimpleSummarizedCallable { + private class IndexSummary extends SummarizedCallable::RangeSimple { IndexSummary() { this = ["index", "rindex"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -927,7 +927,7 @@ module Array { } } - abstract private class InsertSummary extends SummarizedCallable { + abstract private class InsertSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -995,7 +995,7 @@ module Array { } } - private class IntersectionSummary extends SummarizedCallable { + private class IntersectionSummary extends SummarizedCallable::Range { MethodCall mc; IntersectionSummary() { this = "intersection" and mc.getMethodName() = this } @@ -1015,7 +1015,7 @@ module Array { override MethodCall getACallSimple() { result = mc } } - private class KeepIfSummary extends SummarizedCallable { + private class KeepIfSummary extends SummarizedCallable::Range { MethodCall mc; int lastBlockParam; @@ -1042,7 +1042,7 @@ module Array { } } - abstract private class LastSummary extends SummarizedCallable { + abstract private class LastSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -1071,7 +1071,7 @@ module Array { } } - private class PackSummary extends SimpleSummarizedCallable { + private class PackSummary extends SummarizedCallable::RangeSimple { PackSummary() { this = "pack" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1081,7 +1081,7 @@ module Array { } } - private class PermutationSummary extends SimpleSummarizedCallable { + private class PermutationSummary extends SummarizedCallable::RangeSimple { PermutationSummary() { this = ["permutation", "repeated_combination", "repeated_permutation"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1096,7 +1096,7 @@ module Array { } } - abstract private class PopSummary extends SummarizedCallable { + abstract private class PopSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -1131,7 +1131,7 @@ module Array { } } - private class PrependSummary extends SummarizedCallable { + private class PrependSummary extends SummarizedCallable::Range { private MethodCall mc; // `unshift` is an alias for `prepend` @@ -1169,7 +1169,7 @@ module Array { } } - private class ProductSummary extends SimpleSummarizedCallable { + private class ProductSummary extends SummarizedCallable::RangeSimple { ProductSummary() { this = "product" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1185,7 +1185,7 @@ module Array { } } - private class JoinSummary extends SimpleSummarizedCallable { + private class JoinSummary extends SummarizedCallable::RangeSimple { JoinSummary() { this = ["join"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1195,7 +1195,7 @@ module Array { } } - private class PushSummary extends SimpleSummarizedCallable { + private class PushSummary extends SummarizedCallable::RangeSimple { // `append` is an alias for `push` PushSummary() { this = ["push", "append"] } @@ -1213,7 +1213,7 @@ module Array { } } - private class RejectBangSummary extends SummarizedCallable { + private class RejectBangSummary extends SummarizedCallable::Range { MethodCall mc; int lastBlockParam; @@ -1237,7 +1237,7 @@ module Array { } } - private class ReplaceSummary extends SimpleSummarizedCallable { + private class ReplaceSummary extends SummarizedCallable::RangeSimple { ReplaceSummary() { this = "replace" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1251,7 +1251,7 @@ module Array { } } - private class ReverseSummary extends SimpleSummarizedCallable { + private class ReverseSummary extends SummarizedCallable::RangeSimple { ReverseSummary() { this = "reverse" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1261,7 +1261,7 @@ module Array { } } - private class ReverseBangSummary extends SimpleSummarizedCallable { + private class ReverseBangSummary extends SummarizedCallable::RangeSimple { ReverseBangSummary() { this = "reverse!" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1271,7 +1271,7 @@ module Array { } } - abstract private class RotateSummary extends SummarizedCallable { + abstract private class RotateSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -1322,7 +1322,7 @@ module Array { } } - abstract private class RotateBangSummary extends SummarizedCallable { + abstract private class RotateBangSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -1382,7 +1382,7 @@ module Array { } } - private class SelectBangSummary extends SummarizedCallable { + private class SelectBangSummary extends SummarizedCallable::Range { MethodCall mc; int lastBlockParam; @@ -1414,7 +1414,7 @@ module Array { } } - abstract private class ShiftSummary extends SummarizedCallable { + abstract private class ShiftSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -1502,7 +1502,7 @@ module Array { } } - private class ShuffleSummary extends SimpleSummarizedCallable { + private class ShuffleSummary extends SummarizedCallable::RangeSimple { ShuffleSummary() { this = "shuffle" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1512,7 +1512,7 @@ module Array { } } - private class ShuffleBangSummary extends SimpleSummarizedCallable { + private class ShuffleBangSummary extends SummarizedCallable::RangeSimple { ShuffleBangSummary() { this = "shuffle!" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1522,7 +1522,7 @@ module Array { } } - abstract private class SliceBangSummary extends SummarizedCallable { + abstract private class SliceBangSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -1684,7 +1684,7 @@ module Array { } } - private class SortBangSummary extends SimpleSummarizedCallable { + private class SortBangSummary extends SummarizedCallable::RangeSimple { SortBangSummary() { this = "sort!" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1702,7 +1702,7 @@ module Array { } } - private class SortByBangSummary extends SimpleSummarizedCallable { + private class SortByBangSummary extends SummarizedCallable::RangeSimple { SortByBangSummary() { this = "sort_by!" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1717,7 +1717,7 @@ module Array { } } - private class TransposeSummary extends SimpleSummarizedCallable { + private class TransposeSummary extends SummarizedCallable::RangeSimple { TransposeSummary() { this = "transpose" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1742,7 +1742,7 @@ module Array { } } - private class UniqBangSummary extends SimpleSummarizedCallable { + private class UniqBangSummary extends SummarizedCallable::RangeSimple { UniqBangSummary() { this = "uniq!" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1757,7 +1757,7 @@ module Array { } } - private class UnionSummary extends SimpleSummarizedCallable { + private class UnionSummary extends SummarizedCallable::RangeSimple { UnionSummary() { this = "union" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1773,7 +1773,7 @@ module Array { } } - abstract private class ValuesAtSummary extends SummarizedCallable { + abstract private class ValuesAtSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -1829,7 +1829,7 @@ module Array { * https://docs.ruby-lang.org/en/3.1/Enumerable.html */ module Enumerable { - private class ChunkSummary extends SimpleSummarizedCallable { + private class ChunkSummary extends SummarizedCallable::RangeSimple { ChunkSummary() { this = "chunk" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1839,7 +1839,7 @@ module Enumerable { } } - private class ChunkWhileSummary extends SimpleSummarizedCallable { + private class ChunkWhileSummary extends SummarizedCallable::RangeSimple { ChunkWhileSummary() { this = "chunk_while" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1849,7 +1849,7 @@ module Enumerable { } } - private class CollectSummary extends SimpleSummarizedCallable { + private class CollectSummary extends SummarizedCallable::RangeSimple { // `map` is an alias of `collect`. CollectSummary() { this = ["collect", "map"] } @@ -1865,7 +1865,7 @@ module Enumerable { } } - private class CollectConcatSummary extends SimpleSummarizedCallable { + private class CollectConcatSummary extends SummarizedCallable::RangeSimple { // `flat_map` is an alias of `collect_concat`. CollectConcatSummary() { this = ["collect_concat", "flat_map"] } @@ -1880,7 +1880,7 @@ module Enumerable { } } - private class CompactSummary extends SimpleSummarizedCallable { + private class CompactSummary extends SummarizedCallable::RangeSimple { CompactSummary() { this = "compact" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1897,7 +1897,7 @@ module Enumerable { } } - private class CountSummary extends SimpleSummarizedCallable { + private class CountSummary extends SummarizedCallable::RangeSimple { CountSummary() { this = "count" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1907,7 +1907,7 @@ module Enumerable { } } - private class CycleSummary extends SimpleSummarizedCallable { + private class CycleSummary extends SummarizedCallable::RangeSimple { CycleSummary() { this = "cycle" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1917,7 +1917,7 @@ module Enumerable { } } - private class DetectSummary extends SimpleSummarizedCallable { + private class DetectSummary extends SummarizedCallable::RangeSimple { // `find` is an alias of `detect`. DetectSummary() { this = ["detect", "find"] } @@ -1933,7 +1933,7 @@ module Enumerable { } } - abstract private class DropSummary extends SummarizedCallable { + abstract private class DropSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -1978,7 +1978,7 @@ module Enumerable { } } - private class DropWhileSummary extends SimpleSummarizedCallable { + private class DropWhileSummary extends SummarizedCallable::RangeSimple { DropWhileSummary() { this = "drop_while" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1988,7 +1988,7 @@ module Enumerable { } } - private class EachConsSummary extends SimpleSummarizedCallable { + private class EachConsSummary extends SummarizedCallable::RangeSimple { EachConsSummary() { this = "each_cons" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -1998,7 +1998,7 @@ module Enumerable { } } - private class EachEntrySummary extends SimpleSummarizedCallable { + private class EachEntrySummary extends SummarizedCallable::RangeSimple { EachEntrySummary() { this = "each_entry" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2013,7 +2013,7 @@ module Enumerable { } } - private class EachSliceSummary extends SimpleSummarizedCallable { + private class EachSliceSummary extends SummarizedCallable::RangeSimple { EachSliceSummary() { this = "each_slice" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2028,7 +2028,7 @@ module Enumerable { } } - private class EachWithIndexSummary extends SimpleSummarizedCallable { + private class EachWithIndexSummary extends SummarizedCallable::RangeSimple { EachWithIndexSummary() { this = "each_with_index" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2043,7 +2043,7 @@ module Enumerable { } } - private class EachWithObjectSummary extends SimpleSummarizedCallable { + private class EachWithObjectSummary extends SummarizedCallable::RangeSimple { EachWithObjectSummary() { this = "each_with_object" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2058,7 +2058,7 @@ module Enumerable { } } - private class FilterMapSummary extends SimpleSummarizedCallable { + private class FilterMapSummary extends SummarizedCallable::RangeSimple { FilterMapSummary() { this = "filter_map" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2072,7 +2072,7 @@ module Enumerable { } } - private class FindIndexSummary extends SimpleSummarizedCallable { + private class FindIndexSummary extends SummarizedCallable::RangeSimple { FindIndexSummary() { this = "find_index" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2082,7 +2082,7 @@ module Enumerable { } } - abstract private class FirstSummary extends SummarizedCallable { + abstract private class FirstSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -2141,7 +2141,7 @@ module Enumerable { GrepMethodName() { this = ["grep", "grep_v"] } } - abstract private class GrepSummary extends SummarizedCallable { + abstract private class GrepSummary extends SummarizedCallable::Range { MethodCall mc; GrepMethodName methodName; // adding this as a field helps give a better join order @@ -2176,7 +2176,7 @@ module Enumerable { } } - private class GroupBySummary extends SimpleSummarizedCallable { + private class GroupBySummary extends SummarizedCallable::RangeSimple { GroupBySummary() { this = "group_by" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2192,7 +2192,7 @@ module Enumerable { InjectMethodName() { this = ["inject", "reduce"] } } - abstract private class InjectSummary extends SummarizedCallable { + abstract private class InjectSummary extends SummarizedCallable::Range { MethodCall mc; InjectMethodName methodName; // adding this as a field helps give a better join order @@ -2245,7 +2245,7 @@ module Enumerable { MinOrMaxByMethodName() { this = ["min_by", "max_by"] } } - abstract private class MinOrMaxBySummary extends SummarizedCallable { + abstract private class MinOrMaxBySummary extends SummarizedCallable::Range { MethodCall mc; MinOrMaxByMethodName methodName; // adding this as a field helps give a better join order @@ -2285,7 +2285,7 @@ module Enumerable { MinOrMaxMethodName() { this = ["min", "max"] } } - abstract private class MinOrMaxSummary extends SummarizedCallable { + abstract private class MinOrMaxSummary extends SummarizedCallable::Range { MethodCall mc; MinOrMaxMethodName methodName; // adding this as a field helps give a better join order @@ -2352,7 +2352,7 @@ module Enumerable { } } - abstract private class MinmaxSummary extends SummarizedCallable { + abstract private class MinmaxSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -2388,7 +2388,7 @@ module Enumerable { } } - private class MinmaxBySummary extends SimpleSummarizedCallable { + private class MinmaxBySummary extends SummarizedCallable::RangeSimple { MinmaxBySummary() { this = "minmax_by" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2398,7 +2398,7 @@ module Enumerable { } } - private class PartitionSummary extends SimpleSummarizedCallable { + private class PartitionSummary extends SummarizedCallable::RangeSimple { PartitionSummary() { this = "partition" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2408,7 +2408,7 @@ module Enumerable { } } - private class QuerySummary extends SummarizedCallable { + private class QuerySummary extends SummarizedCallable::Range { MethodCall mc; int lastBlockParam; @@ -2428,7 +2428,7 @@ module Enumerable { } } - private class RejectSummary extends SummarizedCallable { + private class RejectSummary extends SummarizedCallable::Range { MethodCall mc; int lastBlockParam; @@ -2452,7 +2452,7 @@ module Enumerable { } } - private class SelectSummary extends SummarizedCallable { + private class SelectSummary extends SummarizedCallable::Range { MethodCall mc; int lastBlockParam; @@ -2481,7 +2481,7 @@ module Enumerable { } } - private class SliceBeforeAfterSummary extends SimpleSummarizedCallable { + private class SliceBeforeAfterSummary extends SummarizedCallable::RangeSimple { SliceBeforeAfterSummary() { this = ["slice_before", "slice_after"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2491,7 +2491,7 @@ module Enumerable { } } - private class SliceWhenSummary extends SimpleSummarizedCallable { + private class SliceWhenSummary extends SummarizedCallable::RangeSimple { SliceWhenSummary() { this = "slice_when" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2501,7 +2501,7 @@ module Enumerable { } } - private class SortSummary extends SimpleSummarizedCallable { + private class SortSummary extends SummarizedCallable::RangeSimple { SortSummary() { this = "sort" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2512,7 +2512,7 @@ module Enumerable { } } - private class SortBySummary extends SimpleSummarizedCallable { + private class SortBySummary extends SummarizedCallable::RangeSimple { SortBySummary() { this = "sort_by" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2522,7 +2522,7 @@ module Enumerable { } } - private class SumSummary extends SimpleSummarizedCallable { + private class SumSummary extends SummarizedCallable::RangeSimple { SumSummary() { this = "sum" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2532,7 +2532,7 @@ module Enumerable { } } - abstract private class TakeSummary extends SummarizedCallable { + abstract private class TakeSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -2579,7 +2579,7 @@ module Enumerable { } } - private class TakeWhileSummary extends SimpleSummarizedCallable { + private class TakeWhileSummary extends SummarizedCallable::RangeSimple { TakeWhileSummary() { this = "take_while" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2596,7 +2596,7 @@ module Enumerable { } } - private class ToASummary extends SimpleSummarizedCallable { + private class ToASummary extends SummarizedCallable::RangeSimple { // `entries` is an alias of `to_a`. // `to_ary` works a bit like `to_a` (close enough for our purposes). ToASummary() { this = ["to_a", "entries", "to_ary"] } @@ -2608,7 +2608,7 @@ module Enumerable { } } - private class UniqSummary extends SimpleSummarizedCallable { + private class UniqSummary extends SummarizedCallable::RangeSimple { UniqSummary() { this = "uniq" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -2618,7 +2618,7 @@ module Enumerable { } } - abstract private class ZipSummary extends SummarizedCallable { + abstract private class ZipSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] diff --git a/ruby/ql/lib/codeql/ruby/frameworks/core/Base64.qll b/ruby/ql/lib/codeql/ruby/frameworks/core/Base64.qll index fbf7470847e2..b9abf7cba4c5 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/core/Base64.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/core/Base64.qll @@ -6,7 +6,7 @@ private import ruby private import codeql.ruby.dataflow.FlowSummary private import codeql.ruby.ApiGraphs -private class Base64Decode extends SummarizedCallable { +private class Base64Decode extends SummarizedCallable::Range { Base64Decode() { this = "Base64.decode64()" } override MethodCall getACall() { diff --git a/ruby/ql/lib/codeql/ruby/frameworks/core/Hash.qll b/ruby/ql/lib/codeql/ruby/frameworks/core/Hash.qll index 38a9a70f0d3f..36d7bd2cc75d 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/core/Hash.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/core/Hash.qll @@ -26,7 +26,7 @@ module Hash { resolveConstantReadAccess(result.getReceiver()) = TResolved("Hash") } - private class HashLiteralSummary extends SummarizedCallable { + private class HashLiteralSummary extends SummarizedCallable::Range { HashLiteralSummary() { this = "Hash.[]" } final override MethodCall getACallSimple() { result = getAStaticHashCall("[]") } @@ -54,7 +54,7 @@ module Hash { * Hash[ [ [:foo, 0], [:bar, 1] ] ] # => {:foo=>0, :bar=>1} * ``` */ - private class HashNewSummary extends SummarizedCallable { + private class HashNewSummary extends SummarizedCallable::Range { HashNewSummary() { this = "Hash[]" } final override MethodCall getACallSimple() { @@ -83,7 +83,7 @@ module Hash { * Hash[:foo, 0, :bar, 1] # => {:foo=>0, :bar=>1} * ``` */ - private class HashNewSuccessivePairsSummary extends SummarizedCallable { + private class HashNewSuccessivePairsSummary extends SummarizedCallable::Range { private int i; private ConstantValue key; @@ -110,7 +110,7 @@ module Hash { } } - private class TryConvertSummary extends SummarizedCallable { + private class TryConvertSummary extends SummarizedCallable::Range { TryConvertSummary() { this = "Hash.try_convert" } override MethodCall getACallSimple() { result = getAStaticHashCall("try_convert") } @@ -122,7 +122,7 @@ module Hash { } } - abstract private class StoreSummary extends SummarizedCallable { + abstract private class StoreSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -173,7 +173,7 @@ module Hash { } } - abstract private class AssocSummary extends SummarizedCallable { + abstract private class AssocSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -199,7 +199,7 @@ module Hash { } } - private class AssocUnknownSummary extends SummarizedCallable { + private class AssocUnknownSummary extends SummarizedCallable::Range { AssocUnknownSummary() { this = "assoc-unknown-arg" } override MethodCall getACallSimple() { @@ -215,7 +215,7 @@ module Hash { } } - private class EachPairSummary extends SimpleSummarizedCallable { + private class EachPairSummary extends SummarizedCallable::RangeSimple { EachPairSummary() { this = "each_pair" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -230,7 +230,7 @@ module Hash { } } - private class EachValueSummary extends SimpleSummarizedCallable { + private class EachValueSummary extends SummarizedCallable::RangeSimple { EachValueSummary() { this = "each_value" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -250,7 +250,7 @@ module Hash { result = DataFlow::Content::getKnownElementIndex(mc.getArgument(i)).serialize() } - private class ExceptSummary extends SummarizedCallable { + private class ExceptSummary extends SummarizedCallable::Range { MethodCall mc; ExceptSummary() { @@ -282,7 +282,7 @@ module Hash { } } -abstract private class FetchValuesSummary extends SummarizedCallable { +abstract private class FetchValuesSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -338,7 +338,7 @@ private class FetchValuesUnknownSummary extends FetchValuesSummary { } } -private class MergeSummary extends SimpleSummarizedCallable { +private class MergeSummary extends SummarizedCallable::RangeSimple { MergeSummary() { // deep_merge is an ActiveSupport extension // https://api.rubyonrails.org/classes/Hash.html#method-i-deep_merge @@ -357,7 +357,7 @@ private class MergeSummary extends SimpleSummarizedCallable { } } -private class MergeBangSummary extends SimpleSummarizedCallable { +private class MergeBangSummary extends SummarizedCallable::RangeSimple { MergeBangSummary() { // deep_merge! is an ActiveSupport extension // https://api.rubyonrails.org/classes/Hash.html#method-i-deep_merge-21 @@ -376,7 +376,7 @@ private class MergeBangSummary extends SimpleSummarizedCallable { } } -private class RassocSummary extends SimpleSummarizedCallable { +private class RassocSummary extends SummarizedCallable::RangeSimple { RassocSummary() { this = "rassoc" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -386,7 +386,7 @@ private class RassocSummary extends SimpleSummarizedCallable { } } -abstract private class SliceSummary extends SummarizedCallable { +abstract private class SliceSummary extends SummarizedCallable::Range { MethodCall mc; bindingset[this] @@ -424,7 +424,7 @@ private class SliceUnknownSummary extends SliceSummary { } } -private class ToASummary extends SimpleSummarizedCallable { +private class ToASummary extends SummarizedCallable::RangeSimple { ToASummary() { this = "to_a" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -434,7 +434,7 @@ private class ToASummary extends SimpleSummarizedCallable { } } -private class ToHWithoutBlockSummary extends SimpleSummarizedCallable { +private class ToHWithoutBlockSummary extends SummarizedCallable::RangeSimple { ToHWithoutBlockSummary() { this = ["to_h", "to_hash"] and not exists(mc.getBlock()) } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -444,7 +444,7 @@ private class ToHWithoutBlockSummary extends SimpleSummarizedCallable { } } -private class ToHWithBlockSummary extends SimpleSummarizedCallable { +private class ToHWithBlockSummary extends SummarizedCallable::RangeSimple { ToHWithBlockSummary() { this = "to_h" and exists(mc.getBlock()) } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -459,7 +459,7 @@ private class ToHWithBlockSummary extends SimpleSummarizedCallable { } } -private class TransformKeysSummary extends SimpleSummarizedCallable { +private class TransformKeysSummary extends SummarizedCallable::RangeSimple { TransformKeysSummary() { this = "transform_keys" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -469,7 +469,7 @@ private class TransformKeysSummary extends SimpleSummarizedCallable { } } -private class TransformKeysBangSummary extends SimpleSummarizedCallable { +private class TransformKeysBangSummary extends SummarizedCallable::RangeSimple { TransformKeysBangSummary() { this = "transform_keys!" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -481,7 +481,7 @@ private class TransformKeysBangSummary extends SimpleSummarizedCallable { } } -private class TransformValuesSummary extends SimpleSummarizedCallable { +private class TransformValuesSummary extends SummarizedCallable::RangeSimple { TransformValuesSummary() { this = "transform_values" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -496,7 +496,7 @@ private class TransformValuesSummary extends SimpleSummarizedCallable { } } -private class TransformValuesBangSummary extends SimpleSummarizedCallable { +private class TransformValuesBangSummary extends SummarizedCallable::RangeSimple { TransformValuesBangSummary() { this = "transform_values!" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -514,7 +514,7 @@ private class TransformValuesBangSummary extends SimpleSummarizedCallable { } } -private class ValuesSummary extends SimpleSummarizedCallable { +private class ValuesSummary extends SummarizedCallable::RangeSimple { ValuesSummary() { this = "values" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -526,7 +526,7 @@ private class ValuesSummary extends SimpleSummarizedCallable { // We don't (yet) track data flow through hash keys, but this is still useful in cases where a // whole hash(like) object is tainted, such as `ActionController#params`. -private class KeysSummary extends SimpleSummarizedCallable { +private class KeysSummary extends SummarizedCallable::RangeSimple { KeysSummary() { this = "keys" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { diff --git a/ruby/ql/lib/codeql/ruby/frameworks/core/Kernel.qll b/ruby/ql/lib/codeql/ruby/frameworks/core/Kernel.qll index 0342932a6144..d5857efad8a1 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/core/Kernel.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/core/Kernel.qll @@ -195,7 +195,7 @@ module Kernel { override predicate runsArbitraryCode() { none() } } - private class TapSummary extends SimpleSummarizedCallable { + private class TapSummary extends SummarizedCallable::RangeSimple { TapSummary() { this = "tap" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -226,7 +226,7 @@ module Kernel { * A call to `Array()`, that converts it's singular argument to an array. * This summary is based on https://ruby-doc.org/3.2.1/Kernel.html#method-i-Array */ - private class KernelArraySummary extends SummarizedCallable { + private class KernelArraySummary extends SummarizedCallable::Range { KernelArraySummary() { this = "Array()" } override MethodCall getACallSimple() { diff --git a/ruby/ql/lib/codeql/ruby/frameworks/core/Object.qll b/ruby/ql/lib/codeql/ruby/frameworks/core/Object.qll index 5fbb1b6eff75..85afa6fc93f0 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/core/Object.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/core/Object.qll @@ -33,7 +33,7 @@ module Object { ] } - private class DupSummary extends SimpleSummarizedCallable { + private class DupSummary extends SummarizedCallable::RangeSimple { DupSummary() { this = "dup" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { diff --git a/ruby/ql/lib/codeql/ruby/frameworks/core/String.qll b/ruby/ql/lib/codeql/ruby/frameworks/core/String.qll index 23a902c00195..ae77492e0c08 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/core/String.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/core/String.qll @@ -110,16 +110,16 @@ module String { } /** A `String` callable with a flow summary. */ - abstract class SummarizedCallable extends FlowSummary::SummarizedCallable { + abstract class SummarizedCallable extends FlowSummary::SummarizedCallable::Range { bindingset[this] SummarizedCallable() { any() } } - abstract private class SimpleSummarizedCallable extends SummarizedCallable, - FlowSummary::SimpleSummarizedCallable + abstract private class SummarizedCallableSimple extends SummarizedCallable, + FlowSummary::SummarizedCallable::RangeSimple { bindingset[this] - SimpleSummarizedCallable() { any() } + SummarizedCallableSimple() { any() } } private class NewSummary extends SummarizedCallable { @@ -154,7 +154,7 @@ module String { /** * A flow summary for the `String#%` method. */ - private class FormatSummary extends SimpleSummarizedCallable { + private class FormatSummary extends SummarizedCallableSimple { FormatSummary() { this = "%" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -168,7 +168,7 @@ module String { /** * A flow summary for the `String#b` method. */ - private class BSummary extends SimpleSummarizedCallable { + private class BSummary extends SummarizedCallableSimple { BSummary() { this = "b" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -179,7 +179,7 @@ module String { /** * A flow summary for the `String#byteslice` method. */ - private class BytesliceSummary extends SimpleSummarizedCallable { + private class BytesliceSummary extends SummarizedCallableSimple { BytesliceSummary() { this = "byteslice" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -190,7 +190,7 @@ module String { /** * A flow summary for `String#capitalize(!)`. */ - private class CapitalizeSummary extends SimpleSummarizedCallable { + private class CapitalizeSummary extends SummarizedCallableSimple { CapitalizeSummary() { this = ["capitalize", "capitalize!"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -203,7 +203,7 @@ module String { /** * A flow summary for `String#center`, `String#ljust` and `String#rjust`. */ - private class CenterSummary extends SimpleSummarizedCallable { + private class CenterSummary extends SummarizedCallableSimple { CenterSummary() { this = ["center", "ljust", "rjust"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -218,7 +218,7 @@ module String { /** * A flow summary for the `String#chomp`, `String#chomp!`, `String#chop` and `String#chop!` methods. */ - private class ChompSummary extends SimpleSummarizedCallable { + private class ChompSummary extends SummarizedCallableSimple { ChompSummary() { this = ["chomp", "chomp!", "chop", "chop!"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -236,7 +236,7 @@ module String { * We can't currently write this summary because there is no `DataFlow::Content` node to refer to (unlike with `Array#clear`). * We need a `DataFlow::Content` node in order to override `clearsContent`. */ - private class ClearSummary extends SimpleSummarizedCallable { + private class ClearSummary extends SummarizedCallableSimple { ClearSummary() { none() } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -247,7 +247,7 @@ module String { /** * A flow summary for `String#concat` and `String#prepend`. */ - private class ConcatSummary extends SimpleSummarizedCallable { + private class ConcatSummary extends SummarizedCallableSimple { ConcatSummary() { // `concat` and `prepend` omitted because they clash with the summaries for // `Array#concat` and `Array#prepend`. @@ -265,7 +265,7 @@ module String { /** * A flow summary for `String#delete(!)`, `String#delete_prefix(!)` and `String#delete_suffix(!)`. */ - private class DeleteSummary extends SimpleSummarizedCallable { + private class DeleteSummary extends SummarizedCallableSimple { DeleteSummary() { this = ["delete", "delete_prefix", "delete_suffix"] + ["", "!"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -276,7 +276,7 @@ module String { /** * A flow summary for `String#downcase(!)`, `String#upcase` and `String#swapcase(!)`. */ - private class DowncaseSummary extends SimpleSummarizedCallable { + private class DowncaseSummary extends SummarizedCallableSimple { DowncaseSummary() { this = ["downcase", "upcase", "swapcase"] + ["", "!"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -287,7 +287,7 @@ module String { /** * A flow summary for `String#dump` and `String#undump`. */ - private class DumpSummary extends SimpleSummarizedCallable { + private class DumpSummary extends SummarizedCallableSimple { DumpSummary() { this = ["dump", "undump"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -337,7 +337,7 @@ module String { /** * A flow summary for `String#encode(!)` and `String#unicode_normalize(!)`. */ - private class EncodeSummary extends SimpleSummarizedCallable { + private class EncodeSummary extends SummarizedCallableSimple { EncodeSummary() { this = ["encode", "unicode_normalize"] + ["", "!"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -348,7 +348,7 @@ module String { /** * A flow summary for `String#force_encoding`. */ - private class ForceEncodingSummary extends SimpleSummarizedCallable { + private class ForceEncodingSummary extends SummarizedCallableSimple { ForceEncodingSummary() { this = "force_encoding" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -359,7 +359,7 @@ module String { /** * A flow summary for `String#freeze`. */ - private class FreezeSummary extends SimpleSummarizedCallable { + private class FreezeSummary extends SummarizedCallableSimple { FreezeSummary() { this = "freeze" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -370,7 +370,7 @@ module String { /** * A flow summary for `String#gsub(!)` and `String#sub(!)`. */ - private class GsubSummary extends SimpleSummarizedCallable { + private class GsubSummary extends SummarizedCallableSimple { GsubSummary() { this = ["sub", "gsub"] + ["", "!"] } // str.gsub(pattern, replacement) -> new_str @@ -389,7 +389,7 @@ module String { /** * A flow summary for `String#insert`. */ - private class InsertSummary extends SimpleSummarizedCallable { + private class InsertSummary extends SummarizedCallableSimple { InsertSummary() { this = "insert" and // Disabled because it clashes with the summary for Array#insert. @@ -406,7 +406,7 @@ module String { /** * A flow summary for `String#inspect`. */ - private class InspectSummary extends SimpleSummarizedCallable { + private class InspectSummary extends SummarizedCallableSimple { InspectSummary() { this = "inspect" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -417,7 +417,7 @@ module String { /** * A flow summary for `String#strip(!)`, `String#lstrip(!)` and `String#rstrip(!)`. */ - private class StripSummary extends SimpleSummarizedCallable { + private class StripSummary extends SummarizedCallableSimple { StripSummary() { this = ["strip", "lstrip", "rstrip"] + ["", "!"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -428,7 +428,7 @@ module String { /** * A flow summary for `String#next(!)` and `String#succ(!)`. */ - private class NextSummary extends SimpleSummarizedCallable { + private class NextSummary extends SummarizedCallableSimple { NextSummary() { this = ["next", "succ"] + ["", "!"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -439,7 +439,7 @@ module String { /** * A flow summary for `String#partition` and `String#rpartition`. */ - private class PartitionSummary extends SimpleSummarizedCallable { + private class PartitionSummary extends SummarizedCallableSimple { PartitionSummary() { this = ["partition", "rpartition"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -452,7 +452,7 @@ module String { /** * A flow summary for `String#replace`. */ - private class ReplaceSummary extends SimpleSummarizedCallable { + private class ReplaceSummary extends SummarizedCallableSimple { ReplaceSummary() { this = "replace" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -466,7 +466,7 @@ module String { /** * A flow summary for `String#reverse(!)`. */ - private class ReverseSummary extends SimpleSummarizedCallable { + private class ReverseSummary extends SummarizedCallableSimple { ReverseSummary() { this = ["reverse", "reverse!"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -560,7 +560,7 @@ module String { /** * A flow summary for `String#shellescape`. */ - private class ShellescapeSummary extends SimpleSummarizedCallable { + private class ShellescapeSummary extends SummarizedCallableSimple { ShellescapeSummary() { this = "shellescape" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -571,7 +571,7 @@ module String { /** * A flow summary for `String#shellsplit`. */ - private class ShellSplitSummary extends SimpleSummarizedCallable { + private class ShellSplitSummary extends SummarizedCallableSimple { ShellSplitSummary() { this = "shellsplit" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -584,7 +584,7 @@ module String { /** * A flow summary for `String#slice(!)`, `String#split` and `String#[]`. */ - private class SliceSummary extends SimpleSummarizedCallable { + private class SliceSummary extends SummarizedCallableSimple { SliceSummary() { this = ["slice", "slice!", "split", "[]"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -595,7 +595,7 @@ module String { /** * A flow summary for `String#squeeze(!)`. */ - private class SqueezeSummary extends SimpleSummarizedCallable { + private class SqueezeSummary extends SummarizedCallableSimple { SqueezeSummary() { this = ["squeeze", "squeeze!"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -606,7 +606,7 @@ module String { /** * A flow summary for `String#to_s` and `String.to_str`. */ - private class ToStrSummary extends SimpleSummarizedCallable { + private class ToStrSummary extends SummarizedCallableSimple { ToStrSummary() { this = ["to_str", "to_s"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { @@ -617,7 +617,7 @@ module String { /** * A flow summary for `String#tr`. */ - private class TrSummary extends SimpleSummarizedCallable { + private class TrSummary extends SummarizedCallableSimple { TrSummary() { this = ["tr", "tr_s"] + ["", "!"] } override predicate propagatesFlow(string input, string output, boolean preservesValue) { diff --git a/ruby/ql/lib/codeql/ruby/frameworks/data/ModelsAsData.qll b/ruby/ql/lib/codeql/ruby/frameworks/data/ModelsAsData.qll index 4d57191dc1ed..09580b98a285 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/data/ModelsAsData.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/data/ModelsAsData.qll @@ -32,7 +32,7 @@ private class RemoteFlowSourceFromCsv extends RemoteFlowSource::Range { override string getSourceType() { result = "Remote flow (from model)" } } -private class SummarizedCallableFromModel extends SummarizedCallable { +private class SummarizedCallableFromModel extends SummarizedCallable::Range { string type; string path; @@ -49,9 +49,13 @@ private class SummarizedCallableFromModel extends SummarizedCallable { } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, string model ) { - exists(string kind | ModelOutput::relevantSummaryModel(type, path, input, output, kind, model) | + exists(string kind | + ModelOutput::relevantSummaryModel(type, path, input, output, kind, model) and + p = "manual" and + isExact = true + | kind = "value" and preservesValue = true or diff --git a/ruby/ql/lib/codeql/ruby/frameworks/rack/internal/Utils.qll b/ruby/ql/lib/codeql/ruby/frameworks/rack/internal/Utils.qll index c41c97b006fe..f82fa46a4b2a 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/rack/internal/Utils.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/rack/internal/Utils.qll @@ -10,7 +10,7 @@ private import codeql.ruby.dataflow.FlowSummary */ module Utils { /** Flow summary for `Rack::Utils.parse_query`, which parses a query string. */ - private class ParseQuerySummary extends SummarizedCallable { + private class ParseQuerySummary extends SummarizedCallable::Range { ParseQuerySummary() { this = "Rack::Utils.parse_query" } override MethodCall getACall() { diff --git a/ruby/ql/lib/codeql/ruby/typetracking/internal/TypeTrackingImpl.qll b/ruby/ql/lib/codeql/ruby/typetracking/internal/TypeTrackingImpl.qll index cd556a67f4f0..468a8971d94d 100644 --- a/ruby/ql/lib/codeql/ruby/typetracking/internal/TypeTrackingImpl.qll +++ b/ruby/ql/lib/codeql/ruby/typetracking/internal/TypeTrackingImpl.qll @@ -223,7 +223,7 @@ private module SummaryTypeTrackerInput implements SummaryTypeTracker::Input { predicate propagatesFlow( SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue ) { - super.propagatesFlow(input, output, preservesValue, _) + super.propagatesFlow(input, output, preservesValue, _, _, _) } } diff --git a/ruby/ql/test/library-tests/dataflow/flow-summaries/semantics.ql b/ruby/ql/test/library-tests/dataflow/flow-summaries/semantics.ql index 07a804beba57..45a278bf2127 100644 --- a/ruby/ql/test/library-tests/dataflow/flow-summaries/semantics.ql +++ b/ruby/ql/test/library-tests/dataflow/flow-summaries/semantics.ql @@ -12,7 +12,7 @@ private import codeql.ruby.dataflow.FlowSummary /** * A convenience class for defining value (c.f. taint) flow summaries. */ -abstract private class Summary extends SimpleSummarizedCallable { +abstract private class Summary extends SummarizedCallable::RangeSimple { bindingset[this] Summary() { any() } diff --git a/ruby/ql/test/library-tests/dataflow/regressions/Regressions.ql b/ruby/ql/test/library-tests/dataflow/regressions/Regressions.ql index 2d6c879aa396..3a989e1a1392 100644 --- a/ruby/ql/test/library-tests/dataflow/regressions/Regressions.ql +++ b/ruby/ql/test/library-tests/dataflow/regressions/Regressions.ql @@ -1,6 +1,6 @@ private import codeql.ruby.dataflow.FlowSummary -private class ReverseSummary extends SimpleSummarizedCallable { +private class ReverseSummary extends SummarizedCallable::RangeSimple { ReverseSummary() { this = "reverse" } override predicate propagatesFlow(string input, string output, boolean preservesValue) { diff --git a/ruby/ql/test/library-tests/dataflow/summaries/Summaries.ql b/ruby/ql/test/library-tests/dataflow/summaries/Summaries.ql index 7b370496f0a6..eebb30faf1c1 100644 --- a/ruby/ql/test/library-tests/dataflow/summaries/Summaries.ql +++ b/ruby/ql/test/library-tests/dataflow/summaries/Summaries.ql @@ -18,7 +18,7 @@ query predicate invalidSpecComponent(SummarizedCallable sc, string s, string c) query predicate warning = ModelOutput::getAWarning/0; -private class SummarizedCallableIdentity extends SummarizedCallable { +private class SummarizedCallableIdentity extends SummarizedCallable::Range { SummarizedCallableIdentity() { this = "identity" } override MethodCall getACall() { result.getMethodName() = this } @@ -30,7 +30,7 @@ private class SummarizedCallableIdentity extends SummarizedCallable { } } -private class SummarizedCallableApplyBlock extends SummarizedCallable { +private class SummarizedCallableApplyBlock extends SummarizedCallable::Range { SummarizedCallableApplyBlock() { this = "apply_block" } override MethodCall getACall() { result.getMethodName() = this } @@ -46,7 +46,7 @@ private class SummarizedCallableApplyBlock extends SummarizedCallable { } } -private class SummarizedCallableApplyLambda extends SummarizedCallable { +private class SummarizedCallableApplyLambda extends SummarizedCallable::Range { SummarizedCallableApplyLambda() { this = "apply_lambda" } override MethodCall getACall() { result.getMethodName() = this } From 7024b07dd2b77d9ff57acbbb37c4ac1e89e30ab8 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 16 Dec 2025 14:09:09 +0100 Subject: [PATCH 155/433] Java: Adapt to changes in `FlowSummaryImpl` Missing manual models were added using the following code added to `FlowSummaryImpl.qll`: ```ql private predicate testsummaryElement( Input::SummarizedCallableBase c, string namespace, string type, boolean subtypes, string name, string signature, string ext, string originalInput, string originalOutput, string kind, string provenance, string model, boolean isExact ) { exists(string input, string output, Callable baseCallable | summaryModel(namespace, type, subtypes, name, signature, ext, originalInput, originalOutput, kind, provenance, model) and baseCallable = interpretElement(namespace, type, subtypes, name, signature, ext, isExact) and ( c.asCallable() = baseCallable and input = originalInput and output = originalOutput or correspondingKotlinParameterDefaultsArgSpec(baseCallable, c.asCallable(), originalInput, input) and correspondingKotlinParameterDefaultsArgSpec(baseCallable, c.asCallable(), originalOutput, output) ) ) } private predicate testsummaryElement2( string namespace, string type, boolean subtypes, string name, string signature, string ext, string originalInput, string originalOutput, string kind, string provenance, string model, string namespace2, string type2 ) { exists(Input::SummarizedCallableBase c | testsummaryElement(c, namespace2, type2, _, _, _, ext, originalInput, originalOutput, kind, provenance, model, false) and testsummaryElement(c, namespace, type, subtypes, name, _, _, _, _, _, provenance, _, true) and signature = paramsString(c.asCallable()) and not testsummaryElement(c, _, _, _, _, _, _, originalInput, originalOutput, kind, provenance, _, true) ) } private string getAMissingManualModel(string namespace2, string type2) { exists( string namespace, string type, boolean subtypes, string name, string signature, string ext, string originalInput, string originalOutput, string kind, string provenance, string model | testsummaryElement2(namespace, type, subtypes, name, signature, ext, originalInput, originalOutput, kind, provenance, model, namespace2, type2) and result = "- [\"" + namespace + "\", \"" + type + "\", True, \"" + name + "\", \"" + signature + "\", \"\", \"" + originalInput + "\", \"" + originalOutput + "\", \"" + kind + "\", \"" + provenance + "\"]" ) } ``` --- java/ql/lib/ext/java.util.model.yml | 1 + ....apache.commons.collections4.map.model.yml | 12 +- .../org.apache.commons.collections4.model.yml | 8 +- ....apache.commons.collections4.set.model.yml | 2 + .../org.springframework.web.util.model.yml | 8 +- .../semmle/code/java/ConflictingAccess.qll | 2 +- .../code/java/dataflow/ExternalFlow.qll | 51 +- .../semmle/code/java/dataflow/FlowSummary.qll | 17 +- .../dataflow/internal/DataFlowDispatch.qll | 22 +- .../dataflow/internal/FlowSummaryImpl.qll | 4 + .../code/java/dispatch/WrappedInvocation.qll | 8 +- .../GeneratedVsManualCoverageQuery.qll | 6 +- .../modelgenerator/internal/CaptureModels.qll | 2 +- .../CWE-601/SpringUrlRedirect.expected | 10 - .../dataflow/capture/inlinetest.expected | 4 - .../collections/containerflow.expected | 15 - .../frameworks/apache-collections/Test.java | 12 +- .../apache-collections/test.expected | 22456 ++++++++-------- .../apache-commons-lang3/flow.expected | 4392 ++- .../frameworks/json-java/test.expected | 1 - .../frameworks/netty/generated/test.expected | 328 +- .../frameworks/spring/beans/test.expected | 22 - .../frameworks/spring/http/flow.expected | 305 +- .../frameworks/spring/util/test.expected | 1038 +- .../frameworks/spring/webutil/test.expected | 526 +- .../test/library-tests/optional/test.expected | 2 - .../test/library-tests/scanner/test.expected | 126 +- 27 files changed, 14499 insertions(+), 14881 deletions(-) diff --git a/java/ql/lib/ext/java.util.model.yml b/java/ql/lib/ext/java.util.model.yml index bfae915d36ad..ad4a326dfdc0 100644 --- a/java/ql/lib/ext/java.util.model.yml +++ b/java/ql/lib/ext/java.util.model.yml @@ -398,6 +398,7 @@ extensions: - ["java.util", "StringJoiner", False, "toString", "", "", "Argument[this]", "ReturnValue", "taint", "manual"] - ["java.util", "StringTokenizer", False, "StringTokenizer", "", "", "Argument[0]", "Argument[this]", "taint", "manual"] - ["java.util", "StringTokenizer", False, "nextElement", "()", "", "Argument[this]", "ReturnValue", "taint", "manual"] + - ["java.util", "StringTokenizer", False, "nextElement", "()", "", "Argument[this].Element", "ReturnValue", "value", "manual"] - ["java.util", "StringTokenizer", False, "nextToken", "", "", "Argument[this]", "ReturnValue", "taint", "manual"] - ["java.util", "TreeMap", False, "TreeMap", "(Map)", "", "Argument[0].MapKey", "Argument[this].MapKey", "value", "manual"] - ["java.util", "TreeMap", False, "TreeMap", "(Map)", "", "Argument[0].MapValue", "Argument[this].MapValue", "value", "manual"] diff --git a/java/ql/lib/ext/org.apache.commons.collections4.map.model.yml b/java/ql/lib/ext/org.apache.commons.collections4.map.model.yml index abf97a49f19a..352358ecd554 100644 --- a/java/ql/lib/ext/org.apache.commons.collections4.map.model.yml +++ b/java/ql/lib/ext/org.apache.commons.collections4.map.model.yml @@ -70,10 +70,10 @@ extensions: - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "keyList", "", "", "Argument[this].MapKey", "ReturnValue.Element", "value", "manual"] - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "listOrderedMap", "", "", "Argument[0].MapKey", "ReturnValue.MapKey", "value", "manual"] - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "listOrderedMap", "", "", "Argument[0].MapValue", "ReturnValue.MapValue", "value", "manual"] - - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "put", "", "", "Argument[1]", "Argument[this].MapKey", "value", "manual"] - - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "put", "", "", "Argument[2]", "Argument[this].MapValue", "value", "manual"] - - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "putAll", "", "", "Argument[1].MapKey", "Argument[this].MapKey", "value", "manual"] - - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "putAll", "", "", "Argument[1].MapValue", "Argument[this].MapValue", "value", "manual"] + - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "put", "(int,Object,Object)", "", "Argument[1]", "Argument[this].MapKey", "value", "manual"] + - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "put", "(int,Object,Object)", "", "Argument[2]", "Argument[this].MapValue", "value", "manual"] + - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "putAll", "(int,Map)", "", "Argument[1].MapKey", "Argument[this].MapKey", "value", "manual"] + - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "putAll", "(int,Map)", "", "Argument[1].MapValue", "Argument[this].MapValue", "value", "manual"] - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "remove", "(int)", "", "Argument[this].MapValue", "ReturnValue", "value", "manual"] - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "setValue", "", "", "Argument[1]", "Argument[this].MapValue", "value", "manual"] - ["org.apache.commons.collections4.map", "ListOrderedMap", True, "valueList", "", "", "Argument[this].MapValue", "ReturnValue.Element", "value", "manual"] @@ -87,6 +87,8 @@ extensions: - ["org.apache.commons.collections4.map", "MultiKeyMap", True, "put", "(Object,Object,Object,Object,Object)", "", "Argument[4]", "Argument[this].MapValue", "value", "manual"] - ["org.apache.commons.collections4.map", "MultiKeyMap", True, "put", "(Object,Object,Object,Object,Object,Object)", "", "Argument[0..4]", "Argument[this].MapKey.Element", "value", "manual"] - ["org.apache.commons.collections4.map", "MultiKeyMap", True, "put", "(Object,Object,Object,Object,Object,Object)", "", "Argument[5]", "Argument[this].MapValue", "value", "manual"] + - ["org.apache.commons.collections4.map", "MultiKeyMap", True, "put", "(MultiKey,Object)", "", "Argument[0]", "Argument[this].MapKey", "value", "manual"] + - ["org.apache.commons.collections4.map", "MultiKeyMap", True, "put", "(MultiKey,Object)", "", "Argument[1]", "Argument[this].MapValue", "value", "manual"] - ["org.apache.commons.collections4.map", "MultiKeyMap", True, "removeMultiKey", "", "", "Argument[this].MapValue", "ReturnValue", "value", "manual"] - ["org.apache.commons.collections4.map", "MultiValueMap", True, "getCollection", "", "", "Argument[this].MapValue.Element", "ReturnValue.Element", "value", "manual"] - ["org.apache.commons.collections4.map", "MultiValueMap", True, "iterator", "()", "", "Argument[this].MapKey", "ReturnValue.Element.MapKey", "value", "manual"] @@ -98,6 +100,8 @@ extensions: - ["org.apache.commons.collections4.map", "MultiValueMap", True, "putAll", "(Map)", "", "Argument[0].MapValue.Element", "Argument[this].MapValue.Element", "value", "manual"] - ["org.apache.commons.collections4.map", "MultiValueMap", True, "putAll", "(Object,Collection)", "", "Argument[0]", "Argument[this].MapKey", "value", "manual"] - ["org.apache.commons.collections4.map", "MultiValueMap", True, "putAll", "(Object,Collection)", "", "Argument[1].Element", "Argument[this].MapValue.Element", "value", "manual"] + - ["org.apache.commons.collections4.map", "MultiValueMap", True, "putAll", "(Map)", "", "Argument[0].MapKey", "Argument[this].MapKey", "value", "manual"] + - ["org.apache.commons.collections4.map", "MultiValueMap", True, "putAll", "(Map)", "", "Argument[0].MapValue", "Argument[this].MapValue", "value", "manual"] - ["org.apache.commons.collections4.map", "MultiValueMap", True, "values", "", "", "Argument[this].MapValue.Element", "ReturnValue.Element", "value", "manual"] - ["org.apache.commons.collections4.map", "PassiveExpiringMap", True, "PassiveExpiringMap", "(PassiveExpiringMap$ExpirationPolicy,Map)", "", "Argument[1].MapKey", "Argument[this].MapKey", "value", "manual"] - ["org.apache.commons.collections4.map", "PassiveExpiringMap", True, "PassiveExpiringMap", "(PassiveExpiringMap$ExpirationPolicy,Map)", "", "Argument[1].MapValue", "Argument[this].MapValue", "value", "manual"] diff --git a/java/ql/lib/ext/org.apache.commons.collections4.model.yml b/java/ql/lib/ext/org.apache.commons.collections4.model.yml index fd1f8b405821..b9c6b6e2838b 100644 --- a/java/ql/lib/ext/org.apache.commons.collections4.model.yml +++ b/java/ql/lib/ext/org.apache.commons.collections4.model.yml @@ -287,7 +287,7 @@ extensions: - ["org.apache.commons.collections4", "MapUtils", True, "unmodifiableMap", "", "", "Argument[0].MapValue", "ReturnValue.MapValue", "value", "manual"] - ["org.apache.commons.collections4", "MapUtils", True, "unmodifiableSortedMap", "", "", "Argument[0].MapKey", "ReturnValue.MapKey", "value", "manual"] - ["org.apache.commons.collections4", "MapUtils", True, "unmodifiableSortedMap", "", "", "Argument[0].MapValue", "ReturnValue.MapValue", "value", "manual"] - - ["org.apache.commons.collections4", "MultiMap", True, "get", "", "", "Argument[this].MapValue.Element", "ReturnValue.Element", "value", "manual"] + - ["org.apache.commons.collections4", "MultiMap", True, "get", "", "", "Argument[this].MapValue", "ReturnValue", "value", "manual"] - ["org.apache.commons.collections4", "MultiMap", True, "put", "", "", "Argument[0]", "Argument[this].MapKey", "value", "manual"] - ["org.apache.commons.collections4", "MultiMap", True, "put", "", "", "Argument[1]", "Argument[this].MapValue.Element", "value", "manual"] - ["org.apache.commons.collections4", "MultiMap", True, "values", "", "", "Argument[this].MapValue.Element", "ReturnValue.Element", "value", "manual"] @@ -331,9 +331,9 @@ extensions: - ["org.apache.commons.collections4", "OrderedMap", True, "lastKey", "", "", "Argument[this].MapKey", "ReturnValue", "value", "manual"] - ["org.apache.commons.collections4", "OrderedMap", True, "nextKey", "", "", "Argument[this].MapKey", "ReturnValue", "value", "manual"] - ["org.apache.commons.collections4", "OrderedMap", True, "previousKey", "", "", "Argument[this].MapKey", "ReturnValue", "value", "manual"] - - ["org.apache.commons.collections4", "Put", True, "put", "", "", "Argument[this].MapValue", "ReturnValue", "value", "manual"] - - ["org.apache.commons.collections4", "Put", True, "put", "", "", "Argument[0]", "Argument[this].MapKey", "value", "manual"] - - ["org.apache.commons.collections4", "Put", True, "put", "", "", "Argument[1]", "Argument[this].MapValue", "value", "manual"] + - ["org.apache.commons.collections4", "Put", True, "put", "(Object,Object)", "", "Argument[this].MapValue", "ReturnValue", "value", "manual"] + - ["org.apache.commons.collections4", "Put", True, "put", "(Object,Object)", "", "Argument[0]", "Argument[this].MapKey", "value", "manual"] + - ["org.apache.commons.collections4", "Put", True, "put", "(Object,Object)", "", "Argument[1]", "Argument[this].MapValue", "value", "manual"] - ["org.apache.commons.collections4", "Put", True, "putAll", "(Map)", "", "Argument[0].MapKey", "Argument[this].MapKey", "value", "manual"] - ["org.apache.commons.collections4", "Put", True, "putAll", "(Map)", "", "Argument[0].MapValue", "Argument[this].MapValue", "value", "manual"] - ["org.apache.commons.collections4", "QueueUtils", True, "predicatedQueue", "", "", "Argument[0].Element", "ReturnValue.Element", "value", "manual"] diff --git a/java/ql/lib/ext/org.apache.commons.collections4.set.model.yml b/java/ql/lib/ext/org.apache.commons.collections4.set.model.yml index 829b9a4d0d07..ecb6d4f46fb1 100644 --- a/java/ql/lib/ext/org.apache.commons.collections4.set.model.yml +++ b/java/ql/lib/ext/org.apache.commons.collections4.set.model.yml @@ -20,7 +20,9 @@ extensions: - ["org.apache.commons.collections4.set", "CompositeSet$SetMutator", True, "addAll", "", "", "Argument[2].Element", "Argument[0].Element", "value", "manual"] - ["org.apache.commons.collections4.set", "CompositeSet$SetMutator", True, "addAll", "", "", "Argument[2].Element", "Argument[1].Element.Element", "value", "manual"] - ["org.apache.commons.collections4.set", "ListOrderedSet", True, "add", "", "", "Argument[1]", "Argument[this].Element", "value", "manual"] + - ["org.apache.commons.collections4.set", "ListOrderedSet", True, "add", "(Object)", "", "Argument[0]", "Argument[this].Element", "value", "manual"] - ["org.apache.commons.collections4.set", "ListOrderedSet", True, "addAll", "", "", "Argument[1].Element", "Argument[this].Element", "value", "manual"] + - ["org.apache.commons.collections4.set", "ListOrderedSet", True, "addAll", "(Collection)", "", "Argument[0].Element", "Argument[this].Element", "value", "manual"] - ["org.apache.commons.collections4.set", "ListOrderedSet", True, "asList", "", "", "Argument[this].Element", "ReturnValue.Element", "value", "manual"] - ["org.apache.commons.collections4.set", "ListOrderedSet", True, "get", "", "", "Argument[this].Element", "ReturnValue", "value", "manual"] - ["org.apache.commons.collections4.set", "ListOrderedSet", True, "listOrderedSet", "(List)", "", "Argument[0].Element", "ReturnValue.Element", "value", "manual"] diff --git a/java/ql/lib/ext/org.springframework.web.util.model.yml b/java/ql/lib/ext/org.springframework.web.util.model.yml index 3b1418aec90a..b3a313a6178c 100644 --- a/java/ql/lib/ext/org.springframework.web.util.model.yml +++ b/java/ql/lib/ext/org.springframework.web.util.model.yml @@ -30,7 +30,7 @@ extensions: - ["org.springframework.web.util", "DefaultUriBuilderFactory", False, "builder", "", "", "Argument[this]", "ReturnValue", "taint", "manual"] - ["org.springframework.web.util", "DefaultUriBuilderFactory", False, "getDefaultUriVariables", "", "", "Argument[this]", "ReturnValue.MapValue", "taint", "manual"] - ["org.springframework.web.util", "DefaultUriBuilderFactory", False, "setDefaultUriVariables", "", "", "Argument[0].MapValue", "Argument[this]", "taint", "manual"] - - ["org.springframework.web.util", "DefaultUriBuilderFactory", False, "uriString", "", "", "Argument[this]", "ReturnValue", "taint", "manual"] + - ["org.springframework.web.util", "DefaultUriBuilderFactory", False, "uriString", "", "", "Argument[this,0]", "ReturnValue", "taint", "manual"] - ["org.springframework.web.util", "HtmlUtils", False, "htmlEscape", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["org.springframework.web.util", "HtmlUtils", False, "htmlEscapeDecimal", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["org.springframework.web.util", "HtmlUtils", False, "htmlEscapeHex", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] @@ -83,8 +83,7 @@ extensions: - ["org.springframework.web.util", "UriBuilder", True, "userInfo", "", "", "Argument[this]", "ReturnValue", "value", "manual"] - ["org.springframework.web.util", "UriBuilder", True, "userInfo", "", "", "Argument[0]", "Argument[this]", "taint", "manual"] - ["org.springframework.web.util", "UriBuilderFactory", True, "builder", "", "", "Argument[this]", "ReturnValue", "taint", "manual"] - - ["org.springframework.web.util", "UriBuilderFactory", True, "uriString", "", "", "Argument[this]", "ReturnValue", "taint", "manual"] - - ["org.springframework.web.util", "UriBuilderFactory", True, "uriString", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["org.springframework.web.util", "UriBuilderFactory", True, "uriString", "", "", "Argument[this,0]", "ReturnValue", "taint", "manual"] - ["org.springframework.web.util", "UriComponents", False, "UriComponents", "", "", "Argument[0..1]", "Argument[this]", "taint", "manual"] - ["org.springframework.web.util", "UriComponents", False, "copyToUriComponentsBuilder", "", "", "Argument[this]", "Argument[0]", "taint", "manual"] - ["org.springframework.web.util", "UriComponents", False, "encode", "", "", "Argument[this]", "ReturnValue", "taint", "manual"] @@ -107,6 +106,9 @@ extensions: - ["org.springframework.web.util", "UriComponents", False, "toUriString", "", "", "Argument[this]", "ReturnValue", "taint", "manual"] - ["org.springframework.web.util", "UriComponents$UriTemplateVariables", True, "getValue", "", "", "Argument[this].MapValue", "ReturnValue", "value", "manual"] - ["org.springframework.web.util", "UriComponentsBuilder", False, "build", "", "", "Argument[this]", "ReturnValue", "taint", "manual"] + - ["org.springframework.web.util", "UriComponentsBuilder", False, "build", "(Map)", "", "Argument[0].MapValue", "Argument[this]", "taint", "manual"] + - ["org.springframework.web.util", "UriComponentsBuilder", False, "build", "(Map)", "", "Argument[0].MapValue", "ReturnValue", "taint", "manual"] + - ["org.springframework.web.util", "UriComponentsBuilder", False, "build", "(Object[])", "", "Argument[0].ArrayElement", "ReturnValue", "taint", "manual"] - ["org.springframework.web.util", "UriComponentsBuilder", False, "buildAndExpand", "(Map)", "", "Argument[0].MapValue", "ReturnValue", "taint", "manual"] - ["org.springframework.web.util", "UriComponentsBuilder", False, "buildAndExpand", "(Object[])", "", "Argument[0].ArrayElement", "ReturnValue", "taint", "manual"] - ["org.springframework.web.util", "UriComponentsBuilder", False, "cloneBuilder", "", "", "Argument[this]", "ReturnValue", "value", "manual"] diff --git a/java/ql/lib/semmle/code/java/ConflictingAccess.qll b/java/ql/lib/semmle/code/java/ConflictingAccess.qll index 28908e2c117d..92fb7e253501 100644 --- a/java/ql/lib/semmle/code/java/ConflictingAccess.qll +++ b/java/ql/lib/semmle/code/java/ConflictingAccess.qll @@ -23,7 +23,7 @@ module Modification { /** Holds if the call `c` modifies a shared resource. */ predicate isModifyingCall(Call c) { exists(SummarizedCallable sc, string output | sc.getACall() = c | - sc.propagatesFlow(_, output, _, _) and + sc.propagatesFlow(_, output, _, _, _, _) and output.matches("Argument[this]%") ) } diff --git a/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll b/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll index 4a0fc3f85464..70c03f6fce44 100644 --- a/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll +++ b/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll @@ -620,48 +620,25 @@ predicate barrierNode(Node node, string kind) { barrierNode(node, kind, _) } // adapter class for converting Mad summaries to `SummarizedCallable`s private class SummarizedCallableAdapter extends SummarizedCallable { - SummarizedCallableAdapter() { summaryElement(this, _, _, _, _, _, _) } + string input_; + string output_; + string kind; + Provenance p_; + boolean isExact_; + string model_; - private predicate relevantSummaryElementManual( - string input, string output, string kind, string model - ) { - exists(Provenance provenance | - summaryElement(this, input, output, kind, provenance, model, _) and - provenance.isManual() - ) - } - - private predicate relevantSummaryElementGenerated( - string input, string output, string kind, string model - ) { - exists(Provenance provenance | - summaryElement(this, input, output, kind, provenance, model, _) and - provenance.isGenerated() - ) and - not exists(Provenance provenance | - neutralElement(this, "summary", provenance, _) and - provenance.isManual() - ) - } + SummarizedCallableAdapter() { summaryElement(this, input_, output_, kind, p_, model_, isExact_) } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, string model ) { - exists(string kind | - this.relevantSummaryElementManual(input, output, kind, model) - or - not this.relevantSummaryElementManual(_, _, _, _) and - this.relevantSummaryElementGenerated(input, output, kind, model) - | - if kind = "value" then preservesValue = true else preservesValue = false - ) + input = input_ and + output = output_ and + (if kind = "value" then preservesValue = true else preservesValue = false) and + p = p_ and + isExact = isExact_ and + model = model_ } - - override predicate hasProvenance(Provenance provenance) { - summaryElement(this, _, _, _, provenance, _, _) - } - - override predicate hasExactModel() { summaryElement(this, _, _, _, _, _, true) } } final class SinkCallable = SinkModelCallable; diff --git a/java/ql/lib/semmle/code/java/dataflow/FlowSummary.qll b/java/ql/lib/semmle/code/java/dataflow/FlowSummary.qll index d038851d8374..5995e57a4ed5 100644 --- a/java/ql/lib/semmle/code/java/dataflow/FlowSummary.qll +++ b/java/ql/lib/semmle/code/java/dataflow/FlowSummary.qll @@ -121,24 +121,31 @@ class SummarizedCallableBase extends TSummarizedCallableBase { class Provenance = Impl::Public::Provenance; -class SummarizedCallable = Impl::Public::SummarizedCallable; +/** Provides the `Range` class used to define the extent of `SummarizedCallable`. */ +module SummarizedCallable { + class Range = Impl::Public::SummarizedCallable; +} + +class SummarizedCallable = Impl::Public::RelevantSummarizedCallable; /** * An adapter class to add the flow summaries specified on `SyntheticCallable` * to `SummarizedCallable`. */ -private class SummarizedSyntheticCallableAdapter extends SummarizedCallable, TSyntheticCallable { +private class SummarizedSyntheticCallableAdapter extends SummarizedCallable::Range, + TSyntheticCallable +{ override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, string model ) { exists(SyntheticCallable sc | sc = this.asSyntheticCallable() and sc.propagatesFlow(input, output, preservesValue) and + p = "manual" and + isExact = true and model = sc ) } - - override predicate hasExactModel() { any() } } deprecated class RequiredSummaryComponentStack = Impl::Private::RequiredSummaryComponentStack; diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowDispatch.qll b/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowDispatch.qll index a27f14cede08..2b1cb6be982b 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowDispatch.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowDispatch.qll @@ -12,7 +12,11 @@ private import semmle.code.java.dispatch.internal.Unification private module DispatchImpl { private predicate hasHighConfidenceTarget(Call c) { - exists(Impl::Public::SummarizedCallable sc | sc.getACall() = c and not sc.applyGeneratedModel()) + exists(Impl::Public::SummarizedCallable sc, Impl::Public::Provenance p | + sc.getACall() = c and + sc.propagatesFlow(_, _, _, p, _, _) and + not p.isGenerated() + ) or exists(Impl::Public::NeutralSummaryCallable nc | nc.getACall() = c and nc.hasManualModel()) or @@ -25,8 +29,10 @@ private module DispatchImpl { private predicate hasExactManualModel(Call c, Callable tgt) { tgt = c.getCallee().getSourceDeclaration() and ( - exists(Impl::Public::SummarizedCallable sc | - sc.getACall() = c and sc.hasExactModel() and sc.hasManualModel() + exists(Impl::Public::SummarizedCallable sc, Impl::Public::Provenance p | + sc.getACall() = c and + sc.propagatesFlow(_, _, _, p, true, _) and + p.isManual() ) or exists(Impl::Public::NeutralSummaryCallable nc | @@ -57,16 +63,6 @@ private module DispatchImpl { exists(Call call | call = c.asCall() | result.asCallable() = sourceDispatch(call) or - not ( - // Only use summarized callables with generated summaries in case - // the static call target is not in the source code. - // Note that if `applyGeneratedModel` holds it implies that there doesn't - // exist a manual model. - exists(Callable staticTarget | staticTarget = call.getCallee().getSourceDeclaration() | - staticTarget.fromSource() and not staticTarget.isStub() - ) and - result.asSummarizedCallable().applyGeneratedModel() - ) and result.asSummarizedCallable().getACall() = call ) } diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImpl.qll b/java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImpl.qll index b9d8f58cecbc..64fa30c7d914 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImpl.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImpl.qll @@ -33,6 +33,10 @@ module Input implements InputSig { class SummarizedCallableBase = FlowSummary::SummarizedCallableBase; + predicate callableFromSource(SummarizedCallableBase sc) { + sc.asCallable() = any(Callable c | c.fromSource() and not c.isStub()) + } + class SourceBase = Void; class SinkBase = Void; diff --git a/java/ql/lib/semmle/code/java/dispatch/WrappedInvocation.qll b/java/ql/lib/semmle/code/java/dispatch/WrappedInvocation.qll index e76c252662a3..64c759343d83 100644 --- a/java/ql/lib/semmle/code/java/dispatch/WrappedInvocation.qll +++ b/java/ql/lib/semmle/code/java/dispatch/WrappedInvocation.qll @@ -68,19 +68,19 @@ private predicate mayInvokeCallback(SrcMethod m, int n) { (not m.fromSource() or m.isNative() or m.getFile().getAbsolutePath().matches("%/test/stubs/%")) } -private class SummarizedCallableWithCallback extends SummarizedCallable { +private class SummarizedCallableWithCallback extends SummarizedCallable::Range { private int pos; SummarizedCallableWithCallback() { mayInvokeCallback(this.asCallable(), pos) } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, string model ) { input = "Argument[" + pos + "]" and output = "Argument[" + pos + "].Parameter[-1]" and preservesValue = true and + p = "hq-generated" and + isExact = true and model = "heuristic-callback" } - - override predicate hasProvenance(Provenance provenance) { provenance = "hq-generated" } } diff --git a/java/ql/src/Metrics/Summaries/GeneratedVsManualCoverageQuery.qll b/java/ql/src/Metrics/Summaries/GeneratedVsManualCoverageQuery.qll index 8309126c06de..ee32549a71c4 100644 --- a/java/ql/src/Metrics/Summaries/GeneratedVsManualCoverageQuery.qll +++ b/java/ql/src/Metrics/Summaries/GeneratedVsManualCoverageQuery.qll @@ -10,19 +10,19 @@ bindingset[package, apiSubset] private int getNumMadModeledApis(string package, string provenance, string apiSubset) { provenance in ["generated", "manual", "both"] and result = - count(SummarizedCallable sc | + count(SummarizedCallable::Range sc | callableSubset(sc.asCallable(), apiSubset) and package = sc.asCallable().getCompilationUnit().getPackage().getName() and sc.asCallable() instanceof ModelApi and ( // "auto-only" not sc.hasManualModel() and - sc.hasGeneratedModel() and + any(Provenance p | sc.propagatesFlow(_, _, _, p, _, _)).isGenerated() and provenance = "generated" or sc.hasManualModel() and ( - if sc.hasGeneratedModel() + if any(Provenance p | sc.propagatesFlow(_, _, _, p, _, _)).isGenerated() then // "both" provenance = "both" diff --git a/java/ql/src/utils/modelgenerator/internal/CaptureModels.qll b/java/ql/src/utils/modelgenerator/internal/CaptureModels.qll index 6978ca7e308d..7e98cd927be3 100644 --- a/java/ql/src/utils/modelgenerator/internal/CaptureModels.qll +++ b/java/ql/src/utils/modelgenerator/internal/CaptureModels.qll @@ -187,7 +187,7 @@ module SummaryModelGeneratorInput implements SummaryModelGeneratorInputSig { } private predicate hasManualSummaryModel(Callable api) { - api = any(FlowSummaryImpl::Public::SummarizedCallable sc | sc.applyManualModel()).asCallable() or + api = any(FlowSummaryImpl::Public::SummarizedCallable sc | sc.hasManualModel()).asCallable() or api = any(FlowSummaryImpl::Public::NeutralSummaryCallable sc | sc.hasManualModel()).asCallable() } diff --git a/java/ql/test/experimental/query-tests/security/CWE-601/SpringUrlRedirect.expected b/java/ql/test/experimental/query-tests/security/CWE-601/SpringUrlRedirect.expected index ec8d0f9ce0a7..89201a3624a3 100644 --- a/java/ql/test/experimental/query-tests/security/CWE-601/SpringUrlRedirect.expected +++ b/java/ql/test/experimental/query-tests/security/CWE-601/SpringUrlRedirect.expected @@ -18,19 +18,13 @@ edges | SpringUrlRedirect.java:98:44:98:54 | redirectUrl : String | SpringUrlRedirect.java:98:33:98:55 | create(...) : URI | provenance | MaD:3 | | SpringUrlRedirect.java:104:39:104:56 | redirectUrl : String | SpringUrlRedirect.java:106:37:106:47 | redirectUrl : String | provenance | | | SpringUrlRedirect.java:106:9:106:19 | httpHeaders [post update] : HttpHeaders | SpringUrlRedirect.java:108:68:108:78 | httpHeaders | provenance | | -| SpringUrlRedirect.java:106:9:106:19 | httpHeaders [post update] : HttpHeaders [, ] : String | SpringUrlRedirect.java:108:68:108:78 | httpHeaders | provenance | | | SpringUrlRedirect.java:106:37:106:47 | redirectUrl : String | SpringUrlRedirect.java:106:9:106:19 | httpHeaders [post update] : HttpHeaders | provenance | MaD:4 | -| SpringUrlRedirect.java:106:37:106:47 | redirectUrl : String | SpringUrlRedirect.java:106:9:106:19 | httpHeaders [post update] : HttpHeaders [, ] : String | provenance | MaD:5 | | SpringUrlRedirect.java:112:39:112:56 | redirectUrl : String | SpringUrlRedirect.java:114:37:114:47 | redirectUrl : String | provenance | | | SpringUrlRedirect.java:114:9:114:19 | httpHeaders [post update] : HttpHeaders | SpringUrlRedirect.java:116:37:116:47 | httpHeaders | provenance | | -| SpringUrlRedirect.java:114:9:114:19 | httpHeaders [post update] : HttpHeaders [, ] : String | SpringUrlRedirect.java:116:37:116:47 | httpHeaders | provenance | | | SpringUrlRedirect.java:114:37:114:47 | redirectUrl : String | SpringUrlRedirect.java:114:9:114:19 | httpHeaders [post update] : HttpHeaders | provenance | MaD:4 | -| SpringUrlRedirect.java:114:37:114:47 | redirectUrl : String | SpringUrlRedirect.java:114:9:114:19 | httpHeaders [post update] : HttpHeaders [, ] : String | provenance | MaD:5 | | SpringUrlRedirect.java:120:33:120:50 | redirectUrl : String | SpringUrlRedirect.java:122:37:122:47 | redirectUrl : String | provenance | | | SpringUrlRedirect.java:122:9:122:19 | httpHeaders [post update] : HttpHeaders | SpringUrlRedirect.java:124:49:124:59 | httpHeaders | provenance | | -| SpringUrlRedirect.java:122:9:122:19 | httpHeaders [post update] : HttpHeaders [, ] : String | SpringUrlRedirect.java:124:49:124:59 | httpHeaders | provenance | | | SpringUrlRedirect.java:122:37:122:47 | redirectUrl : String | SpringUrlRedirect.java:122:9:122:19 | httpHeaders [post update] : HttpHeaders | provenance | MaD:4 | -| SpringUrlRedirect.java:122:37:122:47 | redirectUrl : String | SpringUrlRedirect.java:122:9:122:19 | httpHeaders [post update] : HttpHeaders [, ] : String | provenance | MaD:5 | | SpringUrlRedirect.java:128:33:128:50 | redirectUrl : String | SpringUrlRedirect.java:130:44:130:54 | redirectUrl : String | provenance | | | SpringUrlRedirect.java:130:9:130:19 | httpHeaders : HttpHeaders | SpringUrlRedirect.java:132:49:132:59 | httpHeaders | provenance | | | SpringUrlRedirect.java:130:33:130:55 | create(...) : URI | SpringUrlRedirect.java:130:9:130:19 | httpHeaders : HttpHeaders | provenance | Config | @@ -40,7 +34,6 @@ models | 2 | Summary: java.lang; String; false; format; (String,Object[]); ; Argument[1].ArrayElement; ReturnValue; taint; manual | | 3 | Summary: java.net; URI; false; create; ; ; Argument[0]; ReturnValue; taint; manual | | 4 | Summary: org.springframework.http; HttpHeaders; true; add; (String,String); ; Argument[0..1]; Argument[this]; taint; manual | -| 5 | Summary: org.springframework.util; MultiValueMap; true; add; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | nodes | SpringUrlRedirect.java:17:30:17:47 | redirectUrl : String | semmle.label | redirectUrl : String | | SpringUrlRedirect.java:19:19:19:29 | redirectUrl | semmle.label | redirectUrl | @@ -71,17 +64,14 @@ nodes | SpringUrlRedirect.java:100:37:100:47 | httpHeaders | semmle.label | httpHeaders | | SpringUrlRedirect.java:104:39:104:56 | redirectUrl : String | semmle.label | redirectUrl : String | | SpringUrlRedirect.java:106:9:106:19 | httpHeaders [post update] : HttpHeaders | semmle.label | httpHeaders [post update] : HttpHeaders | -| SpringUrlRedirect.java:106:9:106:19 | httpHeaders [post update] : HttpHeaders [, ] : String | semmle.label | httpHeaders [post update] : HttpHeaders [, ] : String | | SpringUrlRedirect.java:106:37:106:47 | redirectUrl : String | semmle.label | redirectUrl : String | | SpringUrlRedirect.java:108:68:108:78 | httpHeaders | semmle.label | httpHeaders | | SpringUrlRedirect.java:112:39:112:56 | redirectUrl : String | semmle.label | redirectUrl : String | | SpringUrlRedirect.java:114:9:114:19 | httpHeaders [post update] : HttpHeaders | semmle.label | httpHeaders [post update] : HttpHeaders | -| SpringUrlRedirect.java:114:9:114:19 | httpHeaders [post update] : HttpHeaders [, ] : String | semmle.label | httpHeaders [post update] : HttpHeaders [, ] : String | | SpringUrlRedirect.java:114:37:114:47 | redirectUrl : String | semmle.label | redirectUrl : String | | SpringUrlRedirect.java:116:37:116:47 | httpHeaders | semmle.label | httpHeaders | | SpringUrlRedirect.java:120:33:120:50 | redirectUrl : String | semmle.label | redirectUrl : String | | SpringUrlRedirect.java:122:9:122:19 | httpHeaders [post update] : HttpHeaders | semmle.label | httpHeaders [post update] : HttpHeaders | -| SpringUrlRedirect.java:122:9:122:19 | httpHeaders [post update] : HttpHeaders [, ] : String | semmle.label | httpHeaders [post update] : HttpHeaders [, ] : String | | SpringUrlRedirect.java:122:37:122:47 | redirectUrl : String | semmle.label | redirectUrl : String | | SpringUrlRedirect.java:124:49:124:59 | httpHeaders | semmle.label | httpHeaders | | SpringUrlRedirect.java:128:33:128:50 | redirectUrl : String | semmle.label | redirectUrl : String | diff --git a/java/ql/test/library-tests/dataflow/capture/inlinetest.expected b/java/ql/test/library-tests/dataflow/capture/inlinetest.expected index a336577503f2..1e8ba06d501c 100644 --- a/java/ql/test/library-tests/dataflow/capture/inlinetest.expected +++ b/java/ql/test/library-tests/dataflow/capture/inlinetest.expected @@ -98,9 +98,7 @@ edges | B.java:107:5:107:6 | l2 : ArrayList [, ] : String | B.java:107:16:111:6 | ...->... [post update] : new Consumer>(...) { ... } [List out1, ] : String | provenance | MaD:1 | | B.java:107:16:107:16 | l : List [] : String | B.java:107:21:107:21 | l : List [] : String | provenance | | | B.java:107:16:111:6 | ...->... : new Consumer>(...) { ... } [String s] : String | B.java:107:16:111:6 | ...->... [post update] : new Consumer>(...) { ... } [List out2, ] : String | provenance | MaD:1 | -| B.java:107:16:111:6 | ...->... : new Consumer>(...) { ... } [String s] : String | B.java:107:16:111:6 | ...->... [post update] : new Consumer>(...) { ... } [List out2, ] : String | provenance | heuristic-callback | | B.java:107:16:111:6 | ...->... : new Consumer>(...) { ... } [String s] : String | B.java:107:16:111:6 | parameter this : new Consumer>(...) { ... } [String s] : String | provenance | MaD:1 | -| B.java:107:16:111:6 | ...->... : new Consumer>(...) { ... } [String s] : String | B.java:107:16:111:6 | parameter this : new Consumer>(...) { ... } [String s] : String | provenance | heuristic-callback | | B.java:107:16:111:6 | ...->... [post update] : new Consumer>(...) { ... } [List out1, ] : String | B.java:107:16:111:6 | List out1 : List [] : String | provenance | | | B.java:107:16:111:6 | ...->... [post update] : new Consumer>(...) { ... } [List out2, ] : String | B.java:107:16:111:6 | List out2 : List [] : String | provenance | | | B.java:107:16:111:6 | List out1 : List [] : String | B.java:112:10:112:13 | out1 : List [] : String | provenance | | @@ -111,9 +109,7 @@ edges | B.java:107:21:107:21 | l : List [] : String | B.java:107:31:111:5 | ...->... [post update] : new Consumer(...) { ... } [List out1, ] : String | provenance | MaD:1 | | B.java:107:31:107:31 | x : String | B.java:109:16:109:16 | x : String | provenance | | | B.java:107:31:111:5 | ...->... : new Consumer(...) { ... } [String s] : String | B.java:107:31:111:5 | ...->... [post update] : new Consumer(...) { ... } [List out2, ] : String | provenance | MaD:1 | -| B.java:107:31:111:5 | ...->... : new Consumer(...) { ... } [String s] : String | B.java:107:31:111:5 | ...->... [post update] : new Consumer(...) { ... } [List out2, ] : String | provenance | heuristic-callback | | B.java:107:31:111:5 | ...->... : new Consumer(...) { ... } [String s] : String | B.java:107:31:111:5 | parameter this : new Consumer(...) { ... } [String s] : String | provenance | MaD:1 | -| B.java:107:31:111:5 | ...->... : new Consumer(...) { ... } [String s] : String | B.java:107:31:111:5 | parameter this : new Consumer(...) { ... } [String s] : String | provenance | heuristic-callback | | B.java:107:31:111:5 | ...->... [post update] : new Consumer(...) { ... } [List out1, ] : String | B.java:107:31:111:5 | List out1 : List [] : String | provenance | | | B.java:107:31:111:5 | ...->... [post update] : new Consumer(...) { ... } [List out2, ] : String | B.java:107:31:111:5 | List out2 : List [] : String | provenance | | | B.java:107:31:111:5 | List out1 : List [] : String | B.java:107:31:111:5 | this : new Consumer>(...) { ... } [List out1, ] : String | provenance | | diff --git a/java/ql/test/library-tests/dataflow/collections/containerflow.expected b/java/ql/test/library-tests/dataflow/collections/containerflow.expected index 84c24154fb4c..36d8251c2b81 100644 --- a/java/ql/test/library-tests/dataflow/collections/containerflow.expected +++ b/java/ql/test/library-tests/dataflow/collections/containerflow.expected @@ -877,13 +877,11 @@ edges | B.java:404:44:404:51 | source(...) : Object | B.java:28:57:28:61 | obj : Object | provenance | | | B.java:404:44:404:51 | source(...) : Object | B.java:404:18:404:52 | storeElementBlockingDeque(...) : LinkedBlockingDeque [] : Object | provenance | MaD:54 | | B.java:404:61:404:62 | in : LinkedBlockingDeque [] : Object | B.java:404:61:404:73 | getFirst(...) : Object | provenance | MaD:113 | -| B.java:404:61:404:62 | in : LinkedBlockingDeque [] : Object | B.java:404:61:404:73 | getFirst(...) : Object | provenance | MaD:274 | | B.java:404:61:404:73 | getFirst(...) : Object | B.java:404:81:404:83 | out | provenance | | | B.java:409:18:409:52 | storeElementBlockingDeque(...) : LinkedBlockingDeque [] : Object | B.java:409:61:409:62 | in : LinkedBlockingDeque [] : Object | provenance | | | B.java:409:44:409:51 | source(...) : Object | B.java:28:57:28:61 | obj : Object | provenance | | | B.java:409:44:409:51 | source(...) : Object | B.java:409:18:409:52 | storeElementBlockingDeque(...) : LinkedBlockingDeque [] : Object | provenance | MaD:54 | | B.java:409:61:409:62 | in : LinkedBlockingDeque [] : Object | B.java:409:61:409:72 | getLast(...) : Object | provenance | MaD:114 | -| B.java:409:61:409:62 | in : LinkedBlockingDeque [] : Object | B.java:409:61:409:72 | getLast(...) : Object | provenance | MaD:275 | | B.java:409:61:409:72 | getLast(...) : Object | B.java:409:80:409:82 | out | provenance | | | B.java:414:18:414:52 | storeElementBlockingDeque(...) : LinkedBlockingDeque [] : Object | B.java:414:61:414:62 | in : LinkedBlockingDeque [] : Object | provenance | | | B.java:414:44:414:51 | source(...) : Object | B.java:28:57:28:61 | obj : Object | provenance | | @@ -914,13 +912,11 @@ edges | B.java:439:44:439:51 | source(...) : Object | B.java:28:57:28:61 | obj : Object | provenance | | | B.java:439:44:439:51 | source(...) : Object | B.java:439:18:439:52 | storeElementBlockingDeque(...) : LinkedBlockingDeque [] : Object | provenance | MaD:54 | | B.java:439:61:439:62 | in : LinkedBlockingDeque [] : Object | B.java:439:61:439:76 | removeFirst(...) : Object | provenance | MaD:123 | -| B.java:439:61:439:62 | in : LinkedBlockingDeque [] : Object | B.java:439:61:439:76 | removeFirst(...) : Object | provenance | MaD:276 | | B.java:439:61:439:76 | removeFirst(...) : Object | B.java:439:84:439:86 | out | provenance | | | B.java:444:18:444:52 | storeElementBlockingDeque(...) : LinkedBlockingDeque [] : Object | B.java:444:61:444:62 | in : LinkedBlockingDeque [] : Object | provenance | | | B.java:444:44:444:51 | source(...) : Object | B.java:28:57:28:61 | obj : Object | provenance | | | B.java:444:44:444:51 | source(...) : Object | B.java:444:18:444:52 | storeElementBlockingDeque(...) : LinkedBlockingDeque [] : Object | provenance | MaD:54 | | B.java:444:61:444:62 | in : LinkedBlockingDeque [] : Object | B.java:444:61:444:75 | removeLast(...) : Object | provenance | MaD:124 | -| B.java:444:61:444:62 | in : LinkedBlockingDeque [] : Object | B.java:444:61:444:75 | removeLast(...) : Object | provenance | MaD:277 | | B.java:444:61:444:75 | removeLast(...) : Object | B.java:444:83:444:85 | out | provenance | | | B.java:449:19:449:26 | source(...) : Object | B.java:449:38:449:39 | in : Object | provenance | | | B.java:449:29:449:31 | out [post update] : Deque [] : Object | B.java:449:60:449:62 | out : Deque [] : Object | provenance | | @@ -940,13 +936,11 @@ edges | B.java:464:19:464:26 | source(...) : Object | B.java:464:41:464:42 | in : Object | provenance | | | B.java:464:29:464:31 | out [post update] : Deque [] : Object | B.java:464:63:464:65 | out : Deque [] : Object | provenance | | | B.java:464:41:464:42 | in : Object | B.java:464:29:464:31 | out [post update] : Deque [] : Object | provenance | MaD:111 | -| B.java:464:41:464:42 | in : Object | B.java:464:29:464:31 | out [post update] : Deque [] : Object | provenance | MaD:273 | | B.java:464:63:464:65 | out : Deque [] : Object | B.java:31:28:31:42 | obj : Deque [] : Object | provenance | | | B.java:464:63:464:65 | out : Deque [] : Object | B.java:464:51:464:66 | readElement(...) | provenance | MaD:3 | | B.java:469:19:469:26 | source(...) : Object | B.java:469:42:469:43 | in : Object | provenance | | | B.java:469:29:469:31 | out [post update] : Deque [] : Object | B.java:469:64:469:66 | out : Deque [] : Object | provenance | | | B.java:469:42:469:43 | in : Object | B.java:469:29:469:31 | out [post update] : Deque [] : Object | provenance | MaD:110 | -| B.java:469:42:469:43 | in : Object | B.java:469:29:469:31 | out [post update] : Deque [] : Object | provenance | MaD:272 | | B.java:469:64:469:66 | out : Deque [] : Object | B.java:31:28:31:42 | obj : Deque [] : Object | provenance | | | B.java:469:64:469:66 | out : Deque [] : Object | B.java:469:52:469:67 | readElement(...) | provenance | MaD:3 | | B.java:474:26:474:60 | storeElementBlockingDeque(...) : LinkedBlockingDeque [] : Object | B.java:474:69:474:70 | in : LinkedBlockingDeque [] : Object | provenance | | @@ -1095,7 +1089,6 @@ edges | B.java:599:31:599:38 | source(...) : Object | B.java:599:19:599:39 | storeMapKey(...) : TreeMap [] : Object | provenance | MaD:214 | | B.java:599:48:599:78 | firstEntry(...) : Entry [] : Object | B.java:599:97:599:99 | out : Entry [] : Object | provenance | | | B.java:599:49:599:64 | (...)... : TreeMap [] : Object | B.java:599:48:599:78 | firstEntry(...) : Entry [] : Object | provenance | MaD:233 | -| B.java:599:49:599:64 | (...)... : TreeMap [] : Object | B.java:599:48:599:78 | firstEntry(...) : Entry [] : Object | provenance | MaD:279 | | B.java:599:97:599:99 | out : Entry [] : Object | B.java:43:29:43:46 | obj : Entry [] : Object | provenance | | | B.java:599:97:599:99 | out : Entry [] : Object | B.java:599:86:599:100 | readMapKey(...) | provenance | MaD:174 | | B.java:604:19:604:41 | storeMapValue(...) : Map [] : Object | B.java:604:51:604:66 | (...)... : NavigableMap [] : Object | provenance | | @@ -1103,7 +1096,6 @@ edges | B.java:604:33:604:40 | source(...) : Object | B.java:604:19:604:41 | storeMapValue(...) : Map [] : Object | provenance | MaD:215 | | B.java:604:50:604:80 | firstEntry(...) : Entry [] : Object | B.java:604:101:604:103 | out : Entry [] : Object | provenance | | | B.java:604:51:604:66 | (...)... : NavigableMap [] : Object | B.java:604:50:604:80 | firstEntry(...) : Entry [] : Object | provenance | MaD:234 | -| B.java:604:51:604:66 | (...)... : NavigableMap [] : Object | B.java:604:50:604:80 | firstEntry(...) : Entry [] : Object | provenance | MaD:280 | | B.java:604:101:604:103 | out : Entry [] : Object | B.java:47:31:47:48 | obj : Entry [] : Object | provenance | | | B.java:604:101:604:103 | out : Entry [] : Object | B.java:604:88:604:104 | readMapValue(...) | provenance | MaD:175 | | B.java:609:19:609:39 | storeMapKey(...) : TreeMap [] : Object | B.java:609:49:609:64 | (...)... : TreeMap [] : Object | provenance | | @@ -1153,7 +1145,6 @@ edges | B.java:639:31:639:38 | source(...) : Object | B.java:639:19:639:39 | storeMapKey(...) : TreeMap [] : Object | provenance | MaD:214 | | B.java:639:48:639:77 | lastEntry(...) : Entry [] : Object | B.java:639:96:639:98 | out : Entry [] : Object | provenance | | | B.java:639:49:639:64 | (...)... : TreeMap [] : Object | B.java:639:48:639:77 | lastEntry(...) : Entry [] : Object | provenance | MaD:241 | -| B.java:639:49:639:64 | (...)... : TreeMap [] : Object | B.java:639:48:639:77 | lastEntry(...) : Entry [] : Object | provenance | MaD:281 | | B.java:639:96:639:98 | out : Entry [] : Object | B.java:43:29:43:46 | obj : Entry [] : Object | provenance | | | B.java:639:96:639:98 | out : Entry [] : Object | B.java:639:85:639:99 | readMapKey(...) | provenance | MaD:174 | | B.java:644:19:644:41 | storeMapValue(...) : Map [] : Object | B.java:644:51:644:66 | (...)... : NavigableMap [] : Object | provenance | | @@ -1161,7 +1152,6 @@ edges | B.java:644:33:644:40 | source(...) : Object | B.java:644:19:644:41 | storeMapValue(...) : Map [] : Object | provenance | MaD:215 | | B.java:644:50:644:79 | lastEntry(...) : Entry [] : Object | B.java:644:100:644:102 | out : Entry [] : Object | provenance | | | B.java:644:51:644:66 | (...)... : NavigableMap [] : Object | B.java:644:50:644:79 | lastEntry(...) : Entry [] : Object | provenance | MaD:242 | -| B.java:644:51:644:66 | (...)... : NavigableMap [] : Object | B.java:644:50:644:79 | lastEntry(...) : Entry [] : Object | provenance | MaD:282 | | B.java:644:100:644:102 | out : Entry [] : Object | B.java:47:31:47:48 | obj : Entry [] : Object | provenance | | | B.java:644:100:644:102 | out : Entry [] : Object | B.java:644:87:644:103 | readMapValue(...) | provenance | MaD:175 | | B.java:649:19:649:39 | storeMapKey(...) : TreeMap [] : Object | B.java:649:49:649:64 | (...)... : TreeMap [] : Object | provenance | | @@ -1183,7 +1173,6 @@ edges | B.java:659:31:659:38 | source(...) : Object | B.java:659:19:659:39 | storeMapKey(...) : TreeMap [] : Object | provenance | MaD:214 | | B.java:659:48:659:82 | pollFirstEntry(...) : Entry [] : Object | B.java:659:101:659:103 | out : Entry [] : Object | provenance | | | B.java:659:49:659:64 | (...)... : TreeMap [] : Object | B.java:659:48:659:82 | pollFirstEntry(...) : Entry [] : Object | provenance | MaD:245 | -| B.java:659:49:659:64 | (...)... : TreeMap [] : Object | B.java:659:48:659:82 | pollFirstEntry(...) : Entry [] : Object | provenance | MaD:283 | | B.java:659:101:659:103 | out : Entry [] : Object | B.java:43:29:43:46 | obj : Entry [] : Object | provenance | | | B.java:659:101:659:103 | out : Entry [] : Object | B.java:659:90:659:104 | readMapKey(...) | provenance | MaD:174 | | B.java:664:19:664:41 | storeMapValue(...) : Map [] : Object | B.java:664:51:664:66 | (...)... : NavigableMap [] : Object | provenance | | @@ -1191,7 +1180,6 @@ edges | B.java:664:33:664:40 | source(...) : Object | B.java:664:19:664:41 | storeMapValue(...) : Map [] : Object | provenance | MaD:215 | | B.java:664:50:664:84 | pollFirstEntry(...) : Entry [] : Object | B.java:664:105:664:107 | out : Entry [] : Object | provenance | | | B.java:664:51:664:66 | (...)... : NavigableMap [] : Object | B.java:664:50:664:84 | pollFirstEntry(...) : Entry [] : Object | provenance | MaD:246 | -| B.java:664:51:664:66 | (...)... : NavigableMap [] : Object | B.java:664:50:664:84 | pollFirstEntry(...) : Entry [] : Object | provenance | MaD:284 | | B.java:664:105:664:107 | out : Entry [] : Object | B.java:47:31:47:48 | obj : Entry [] : Object | provenance | | | B.java:664:105:664:107 | out : Entry [] : Object | B.java:664:92:664:108 | readMapValue(...) | provenance | MaD:175 | | B.java:669:19:669:39 | storeMapKey(...) : TreeMap [] : Object | B.java:669:49:669:64 | (...)... : TreeMap [] : Object | provenance | | @@ -1199,7 +1187,6 @@ edges | B.java:669:31:669:38 | source(...) : Object | B.java:669:19:669:39 | storeMapKey(...) : TreeMap [] : Object | provenance | MaD:214 | | B.java:669:48:669:81 | pollLastEntry(...) : Entry [] : Object | B.java:669:100:669:102 | out : Entry [] : Object | provenance | | | B.java:669:49:669:64 | (...)... : TreeMap [] : Object | B.java:669:48:669:81 | pollLastEntry(...) : Entry [] : Object | provenance | MaD:247 | -| B.java:669:49:669:64 | (...)... : TreeMap [] : Object | B.java:669:48:669:81 | pollLastEntry(...) : Entry [] : Object | provenance | MaD:285 | | B.java:669:100:669:102 | out : Entry [] : Object | B.java:43:29:43:46 | obj : Entry [] : Object | provenance | | | B.java:669:100:669:102 | out : Entry [] : Object | B.java:669:89:669:103 | readMapKey(...) | provenance | MaD:174 | | B.java:674:19:674:41 | storeMapValue(...) : Map [] : Object | B.java:674:51:674:66 | (...)... : NavigableMap [] : Object | provenance | | @@ -1207,7 +1194,6 @@ edges | B.java:674:33:674:40 | source(...) : Object | B.java:674:19:674:41 | storeMapValue(...) : Map [] : Object | provenance | MaD:215 | | B.java:674:50:674:83 | pollLastEntry(...) : Entry [] : Object | B.java:674:104:674:106 | out : Entry [] : Object | provenance | | | B.java:674:51:674:66 | (...)... : NavigableMap [] : Object | B.java:674:50:674:83 | pollLastEntry(...) : Entry [] : Object | provenance | MaD:248 | -| B.java:674:51:674:66 | (...)... : NavigableMap [] : Object | B.java:674:50:674:83 | pollLastEntry(...) : Entry [] : Object | provenance | MaD:286 | | B.java:674:104:674:106 | out : Entry [] : Object | B.java:47:31:47:48 | obj : Entry [] : Object | provenance | | | B.java:674:104:674:106 | out : Entry [] : Object | B.java:674:91:674:107 | readMapValue(...) | provenance | MaD:175 | | B.java:679:19:679:39 | storeMapKey(...) : TreeMap [] : Object | B.java:679:49:679:64 | (...)... : TreeMap [] : Object | provenance | | @@ -2746,7 +2732,6 @@ edges | B.java:2015:25:2015:52 | storeElementNavSet(...) : TreeSet [] : Object | B.java:2015:61:2015:62 | in : TreeSet [] : Object | provenance | | | B.java:2015:44:2015:51 | source(...) : Object | B.java:26:49:26:53 | obj : Object | provenance | | | B.java:2015:44:2015:51 | source(...) : Object | B.java:2015:25:2015:52 | storeElementNavSet(...) : TreeSet [] : Object | provenance | MaD:54 | -| B.java:2015:61:2015:62 | in : TreeSet [] : Object | B.java:2015:61:2015:73 | reversed(...) : SequencedSet [] : Object | provenance | MaD:278 | | B.java:2015:61:2015:62 | in : TreeSet [] : Object | B.java:2015:61:2015:73 | reversed(...) : SequencedSet [] : Object | provenance | MaD:299 | | B.java:2015:61:2015:73 | reversed(...) : SequencedSet [] : Object | B.java:2015:93:2015:95 | out : SequencedSet [] : Object | provenance | | | B.java:2015:93:2015:95 | out : SequencedSet [] : Object | B.java:31:28:31:42 | obj : SequencedSet [] : Object | provenance | | diff --git a/java/ql/test/library-tests/frameworks/apache-collections/Test.java b/java/ql/test/library-tests/frameworks/apache-collections/Test.java index 09906405d75a..2d42e85247e2 100644 --- a/java/ql/test/library-tests/frameworks/apache-collections/Test.java +++ b/java/ql/test/library-tests/frameworks/apache-collections/Test.java @@ -3427,7 +3427,8 @@ public void test() throws Exception { MultiMap out = null; Object in = source(); out.put(null, in); - sink(getMapValue(out)); // $ hasValueFlow + Collection coll = (Collection) getMapValue(out); + sink(coll.toArray()[0]); // $ hasValueFlow } { // "org.apache.commons.collections4;Put;true;put;;;Argument[1];MapValue of Argument[this];value;manual" @@ -3457,13 +3458,6 @@ public void test() throws Exception { out = in.put(null, null); sink(out); // $ hasValueFlow } - { - // "org.apache.commons.collections4;Put;true;put;;;MapValue of Argument[this];ReturnValue;value;manual" - Object out = null; - MultiMap in = newMVMWithMapValue((String)source()); - out = in.put(null, null); - sink(out); // $ hasValueFlow - } { // "org.apache.commons.collections4;Put;true;put;;;MapValue of Argument[this];ReturnValue;value;manual" Object out = null; @@ -5902,7 +5896,7 @@ public void test() throws Exception { ListOrderedMap out = null; Object in = source(); out.put(null, in); - sink(getMapKey(out)); // $ hasValueFlow + sink(getMapValue(out)); // $ hasValueFlow } { // "org.apache.commons.collections4.map;ListOrderedMap;true;put;;;Argument[1];MapKey of Argument[this];value;manual" diff --git a/java/ql/test/library-tests/frameworks/apache-collections/test.expected b/java/ql/test/library-tests/frameworks/apache-collections/test.expected index a75de01c6123..02fa025a1d7d 100644 --- a/java/ql/test/library-tests/frameworks/apache-collections/test.expected +++ b/java/ql/test/library-tests/frameworks/apache-collections/test.expected @@ -3,824 +3,828 @@ models | 2 | Summary: generatedtest; Test; false; newRBWithMapValue; ; ; Argument[0]; ReturnValue.MapValue; value; manual | | 3 | Summary: java.lang; Iterable; true; iterator; (); ; Argument[this].Element; ReturnValue.Element; value; manual | | 4 | Summary: java.util; Collection; true; add; ; ; Argument[0]; Argument[this].Element; value; manual | -| 5 | Summary: java.util; Enumeration; true; nextElement; ; ; Argument[this].Element; ReturnValue; value; manual | -| 6 | Summary: java.util; Iterator; true; next; ; ; Argument[this].Element; ReturnValue; value; manual | -| 7 | Summary: java.util; List; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | -| 8 | Summary: java.util; List; true; listIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 9 | Summary: java.util; Map$Entry; true; getKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | -| 10 | Summary: java.util; Map$Entry; true; getValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 11 | Summary: java.util; Map$Entry; true; setValue; ; ; Argument[0]; Argument[this].MapValue; value; manual | -| 12 | Summary: java.util; Map$Entry; true; setValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 13 | Summary: java.util; Map; false; of; ; ; Argument[0]; ReturnValue.MapKey; value; manual | -| 14 | Summary: java.util; Map; false; of; ; ; Argument[1]; ReturnValue.MapValue; value; manual | -| 15 | Summary: java.util; Map; true; entrySet; ; ; Argument[this].MapKey; ReturnValue.Element.MapKey; value; manual | -| 16 | Summary: java.util; Map; true; entrySet; ; ; Argument[this].MapValue; ReturnValue.Element.MapValue; value; manual | -| 17 | Summary: java.util; Map; true; get; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 18 | Summary: java.util; Map; true; keySet; (); ; Argument[this].MapKey; ReturnValue.Element; value; manual | -| 19 | Summary: java.util; Map; true; put; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | -| 20 | Summary: java.util; Map; true; put; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | -| 21 | Summary: java.util; Map; true; put; (Object,Object); ; Argument[this].MapValue; ReturnValue; value; manual | -| 22 | Summary: java.util; Map; true; putAll; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 23 | Summary: java.util; Map; true; putAll; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 24 | Summary: java.util; Map; true; remove; (Object); ; Argument[this].MapValue; ReturnValue; value; manual | -| 25 | Summary: java.util; Map; true; values; (); ; Argument[this].MapValue; ReturnValue.Element; value; manual | -| 26 | Summary: org.apache.commons.collections4.bag; AbstractBagDecorator; true; AbstractBagDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 27 | Summary: org.apache.commons.collections4.bag; AbstractMapBag; true; AbstractMapBag; ; ; Argument[0].MapKey; Argument[this].Element; value; manual | -| 28 | Summary: org.apache.commons.collections4.bag; AbstractMapBag; true; getMap; ; ; Argument[this].Element; ReturnValue.MapKey; value; manual | -| 29 | Summary: org.apache.commons.collections4.bag; AbstractSortedBagDecorator; true; AbstractSortedBagDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 30 | Summary: org.apache.commons.collections4.bag; CollectionBag; true; CollectionBag; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 31 | Summary: org.apache.commons.collections4.bag; CollectionBag; true; collectionBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 32 | Summary: org.apache.commons.collections4.bag; CollectionSortedBag; true; CollectionSortedBag; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 33 | Summary: org.apache.commons.collections4.bag; CollectionSortedBag; true; collectionSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 34 | Summary: org.apache.commons.collections4.bag; HashBag; true; HashBag; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 35 | Summary: org.apache.commons.collections4.bag; PredicatedBag; true; predicatedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 36 | Summary: org.apache.commons.collections4.bag; PredicatedSortedBag; true; predicatedSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 37 | Summary: org.apache.commons.collections4.bag; SynchronizedBag; true; synchronizedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 38 | Summary: org.apache.commons.collections4.bag; SynchronizedSortedBag; true; synchronizedSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 39 | Summary: org.apache.commons.collections4.bag; TransformedBag; true; transformedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 40 | Summary: org.apache.commons.collections4.bag; TransformedSortedBag; true; transformedSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 41 | Summary: org.apache.commons.collections4.bag; TreeBag; true; TreeBag; (Collection); ; Argument[0].Element; Argument[this].Element; value; manual | -| 42 | Summary: org.apache.commons.collections4.bag; UnmodifiableBag; true; unmodifiableBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 43 | Summary: org.apache.commons.collections4.bag; UnmodifiableSortedBag; true; unmodifiableSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 44 | Summary: org.apache.commons.collections4.bidimap; AbstractBidiMapDecorator; true; AbstractBidiMapDecorator; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 45 | Summary: org.apache.commons.collections4.bidimap; AbstractBidiMapDecorator; true; AbstractBidiMapDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 46 | Summary: org.apache.commons.collections4.bidimap; AbstractDualBidiMap; true; AbstractDualBidiMap; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 47 | Summary: org.apache.commons.collections4.bidimap; AbstractDualBidiMap; true; AbstractDualBidiMap; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 48 | Summary: org.apache.commons.collections4.bidimap; AbstractDualBidiMap; true; AbstractDualBidiMap; ; ; Argument[1].MapKey; Argument[this].MapValue; value; manual | -| 49 | Summary: org.apache.commons.collections4.bidimap; AbstractDualBidiMap; true; AbstractDualBidiMap; ; ; Argument[1].MapValue; Argument[this].MapKey; value; manual | -| 50 | Summary: org.apache.commons.collections4.bidimap; AbstractDualBidiMap; true; AbstractDualBidiMap; ; ; Argument[2].MapKey; Argument[this].MapValue; value; manual | -| 51 | Summary: org.apache.commons.collections4.bidimap; AbstractDualBidiMap; true; AbstractDualBidiMap; ; ; Argument[2].MapValue; Argument[this].MapKey; value; manual | -| 52 | Summary: org.apache.commons.collections4.bidimap; AbstractOrderedBidiMapDecorator; true; AbstractOrderedBidiMapDecorator; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 53 | Summary: org.apache.commons.collections4.bidimap; AbstractOrderedBidiMapDecorator; true; AbstractOrderedBidiMapDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 54 | Summary: org.apache.commons.collections4.bidimap; AbstractSortedBidiMapDecorator; true; AbstractSortedBidiMapDecorator; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 55 | Summary: org.apache.commons.collections4.bidimap; AbstractSortedBidiMapDecorator; true; AbstractSortedBidiMapDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 56 | Summary: org.apache.commons.collections4.bidimap; DualHashBidiMap; true; DualHashBidiMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 57 | Summary: org.apache.commons.collections4.bidimap; DualHashBidiMap; true; DualHashBidiMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 58 | Summary: org.apache.commons.collections4.bidimap; DualLinkedHashBidiMap; true; DualLinkedHashBidiMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 59 | Summary: org.apache.commons.collections4.bidimap; DualLinkedHashBidiMap; true; DualLinkedHashBidiMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 60 | Summary: org.apache.commons.collections4.bidimap; DualTreeBidiMap; true; DualTreeBidiMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 61 | Summary: org.apache.commons.collections4.bidimap; DualTreeBidiMap; true; DualTreeBidiMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 62 | Summary: org.apache.commons.collections4.bidimap; DualTreeBidiMap; true; inverseOrderedBidiMap; ; ; Argument[this].MapKey; ReturnValue.MapValue; value; manual | -| 63 | Summary: org.apache.commons.collections4.bidimap; DualTreeBidiMap; true; inverseOrderedBidiMap; ; ; Argument[this].MapValue; ReturnValue.MapKey; value; manual | -| 64 | Summary: org.apache.commons.collections4.bidimap; DualTreeBidiMap; true; inverseSortedBidiMap; ; ; Argument[this].MapKey; ReturnValue.MapValue; value; manual | -| 65 | Summary: org.apache.commons.collections4.bidimap; DualTreeBidiMap; true; inverseSortedBidiMap; ; ; Argument[this].MapValue; ReturnValue.MapKey; value; manual | -| 66 | Summary: org.apache.commons.collections4.bidimap; TreeBidiMap; true; TreeBidiMap; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 67 | Summary: org.apache.commons.collections4.bidimap; TreeBidiMap; true; TreeBidiMap; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 68 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableBidiMap; true; unmodifiableBidiMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 69 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableBidiMap; true; unmodifiableBidiMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 70 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableOrderedBidiMap; true; inverseOrderedBidiMap; ; ; Argument[this].MapKey; ReturnValue.MapValue; value; manual | -| 71 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableOrderedBidiMap; true; inverseOrderedBidiMap; ; ; Argument[this].MapValue; ReturnValue.MapKey; value; manual | -| 72 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableOrderedBidiMap; true; unmodifiableOrderedBidiMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 73 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableOrderedBidiMap; true; unmodifiableOrderedBidiMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 74 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableSortedBidiMap; true; unmodifiableSortedBidiMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 75 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableSortedBidiMap; true; unmodifiableSortedBidiMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 76 | Summary: org.apache.commons.collections4.collection; AbstractCollectionDecorator; true; AbstractCollectionDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 77 | Summary: org.apache.commons.collections4.collection; AbstractCollectionDecorator; true; decorated; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 78 | Summary: org.apache.commons.collections4.collection; AbstractCollectionDecorator; true; setCollection; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 79 | Summary: org.apache.commons.collections4.collection; CompositeCollection$CollectionMutator; true; add; ; ; Argument[2]; Argument[0].Element; value; manual | -| 80 | Summary: org.apache.commons.collections4.collection; CompositeCollection$CollectionMutator; true; add; ; ; Argument[2]; Argument[1].Element.Element; value; manual | -| 81 | Summary: org.apache.commons.collections4.collection; CompositeCollection$CollectionMutator; true; addAll; ; ; Argument[2].Element; Argument[0].Element; value; manual | -| 82 | Summary: org.apache.commons.collections4.collection; CompositeCollection$CollectionMutator; true; addAll; ; ; Argument[2].Element; Argument[1].Element.Element; value; manual | -| 83 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; CompositeCollection; (Collection); ; Argument[0].Element; Argument[this].Element; value; manual | -| 84 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; CompositeCollection; (Collection,Collection); ; Argument[0].Element; Argument[this].Element; value; manual | -| 85 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; CompositeCollection; (Collection,Collection); ; Argument[1].Element; Argument[this].Element; value; manual | -| 86 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; CompositeCollection; (Collection[]); ; Argument[0].ArrayElement.Element; Argument[this].Element; value; manual | -| 87 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; addComposited; (Collection); ; Argument[0].Element; Argument[this].Element; value; manual | -| 88 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; addComposited; (Collection,Collection); ; Argument[0].Element; Argument[this].Element; value; manual | -| 89 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; addComposited; (Collection,Collection); ; Argument[1].Element; Argument[this].Element; value; manual | -| 90 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; addComposited; (Collection[]); ; Argument[0].ArrayElement.Element; Argument[this].Element; value; manual | -| 91 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; getCollections; ; ; Argument[this].Element; ReturnValue.Element.Element; value; manual | -| 92 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; toCollection; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 93 | Summary: org.apache.commons.collections4.collection; IndexedCollection; true; IndexedCollection; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 94 | Summary: org.apache.commons.collections4.collection; IndexedCollection; true; get; ; ; Argument[this].Element; ReturnValue; value; manual | -| 95 | Summary: org.apache.commons.collections4.collection; IndexedCollection; true; nonUniqueIndexedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 96 | Summary: org.apache.commons.collections4.collection; IndexedCollection; true; uniqueIndexedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 97 | Summary: org.apache.commons.collections4.collection; IndexedCollection; true; values; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 98 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; add; ; ; Argument[0]; Argument[this].Element; value; manual | -| 99 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; addAll; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 100 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 101 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedBag; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 102 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 103 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedList; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 104 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 105 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedMultiSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 106 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 107 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedQueue; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 108 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 109 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 110 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; rejectedElements; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 111 | Summary: org.apache.commons.collections4.collection; PredicatedCollection; true; predicatedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 112 | Summary: org.apache.commons.collections4.collection; SynchronizedCollection; true; synchronizedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 113 | Summary: org.apache.commons.collections4.collection; TransformedCollection; true; transformingCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 114 | Summary: org.apache.commons.collections4.collection; UnmodifiableBoundedCollection; true; unmodifiableBoundedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 115 | Summary: org.apache.commons.collections4.collection; UnmodifiableCollection; true; unmodifiableCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 116 | Summary: org.apache.commons.collections4.iterators; AbstractIteratorDecorator; true; AbstractIteratorDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 117 | Summary: org.apache.commons.collections4.iterators; AbstractListIteratorDecorator; true; AbstractListIteratorDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 118 | Summary: org.apache.commons.collections4.iterators; AbstractListIteratorDecorator; true; getListIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 119 | Summary: org.apache.commons.collections4.iterators; AbstractMapIteratorDecorator; true; AbstractMapIteratorDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 120 | Summary: org.apache.commons.collections4.iterators; AbstractMapIteratorDecorator; true; AbstractMapIteratorDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 121 | Summary: org.apache.commons.collections4.iterators; AbstractMapIteratorDecorator; true; getMapIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 122 | Summary: org.apache.commons.collections4.iterators; AbstractMapIteratorDecorator; true; getMapIterator; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | -| 123 | Summary: org.apache.commons.collections4.iterators; AbstractOrderedMapIteratorDecorator; true; AbstractOrderedMapIteratorDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 124 | Summary: org.apache.commons.collections4.iterators; AbstractOrderedMapIteratorDecorator; true; AbstractOrderedMapIteratorDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 125 | Summary: org.apache.commons.collections4.iterators; AbstractOrderedMapIteratorDecorator; true; getOrderedMapIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 126 | Summary: org.apache.commons.collections4.iterators; AbstractOrderedMapIteratorDecorator; true; getOrderedMapIterator; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | -| 127 | Summary: org.apache.commons.collections4.iterators; AbstractUntypedIteratorDecorator; true; AbstractUntypedIteratorDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 128 | Summary: org.apache.commons.collections4.iterators; AbstractUntypedIteratorDecorator; true; getIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 129 | Summary: org.apache.commons.collections4.iterators; ArrayIterator; true; ArrayIterator; ; ; Argument[0].ArrayElement; Argument[this].Element; value; manual | -| 130 | Summary: org.apache.commons.collections4.iterators; ArrayIterator; true; getArray; ; ; Argument[this].Element; ReturnValue.ArrayElement; value; manual | -| 131 | Summary: org.apache.commons.collections4.iterators; ArrayListIterator; true; ArrayListIterator; ; ; Argument[0].ArrayElement; Argument[this].Element; value; manual | -| 132 | Summary: org.apache.commons.collections4.iterators; BoundedIterator; true; BoundedIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 133 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; CollatingIterator; (Comparator,Collection); ; Argument[1].Element.Element; Argument[this].Element; value; manual | -| 134 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; CollatingIterator; (Comparator,Iterator,Iterator); ; Argument[1].Element; Argument[this].Element; value; manual | -| 135 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; CollatingIterator; (Comparator,Iterator,Iterator); ; Argument[2].Element; Argument[this].Element; value; manual | -| 136 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; CollatingIterator; (Comparator,Iterator[]); ; Argument[1].ArrayElement.Element; Argument[this].Element; value; manual | -| 137 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; addIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 138 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; getIterators; ; ; Argument[this].Element; ReturnValue.Element.Element; value; manual | -| 139 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; setIterator; ; ; Argument[1].Element; Argument[this].Element; value; manual | -| 140 | Summary: org.apache.commons.collections4.iterators; EnumerationIterator; true; EnumerationIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 141 | Summary: org.apache.commons.collections4.iterators; EnumerationIterator; true; getEnumeration; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 142 | Summary: org.apache.commons.collections4.iterators; EnumerationIterator; true; setEnumeration; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 143 | Summary: org.apache.commons.collections4.iterators; FilterIterator; true; FilterIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 144 | Summary: org.apache.commons.collections4.iterators; FilterIterator; true; getIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 145 | Summary: org.apache.commons.collections4.iterators; FilterIterator; true; setIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 146 | Summary: org.apache.commons.collections4.iterators; FilterListIterator; true; FilterListIterator; (ListIterator); ; Argument[0].Element; Argument[this].Element; value; manual | -| 147 | Summary: org.apache.commons.collections4.iterators; FilterListIterator; true; FilterListIterator; (ListIterator,Predicate); ; Argument[0].Element; Argument[this].Element; value; manual | -| 148 | Summary: org.apache.commons.collections4.iterators; FilterListIterator; true; getListIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 149 | Summary: org.apache.commons.collections4.iterators; FilterListIterator; true; setListIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 150 | Summary: org.apache.commons.collections4.iterators; IteratorChain; true; IteratorChain; (Collection); ; Argument[0].Element.Element; Argument[this].Element; value; manual | -| 151 | Summary: org.apache.commons.collections4.iterators; IteratorChain; true; IteratorChain; (Iterator); ; Argument[0].Element; Argument[this].Element; value; manual | -| 152 | Summary: org.apache.commons.collections4.iterators; IteratorChain; true; IteratorChain; (Iterator,Iterator); ; Argument[0].Element; Argument[this].Element; value; manual | -| 153 | Summary: org.apache.commons.collections4.iterators; IteratorChain; true; IteratorChain; (Iterator,Iterator); ; Argument[1].Element; Argument[this].Element; value; manual | -| 154 | Summary: org.apache.commons.collections4.iterators; IteratorChain; true; IteratorChain; (Iterator[]); ; Argument[0].ArrayElement.Element; Argument[this].Element; value; manual | -| 155 | Summary: org.apache.commons.collections4.iterators; IteratorChain; true; addIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 156 | Summary: org.apache.commons.collections4.iterators; IteratorEnumeration; true; IteratorEnumeration; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 157 | Summary: org.apache.commons.collections4.iterators; IteratorEnumeration; true; getIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 158 | Summary: org.apache.commons.collections4.iterators; IteratorEnumeration; true; setIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 159 | Summary: org.apache.commons.collections4.iterators; IteratorIterable; true; IteratorIterable; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 160 | Summary: org.apache.commons.collections4.iterators; ListIteratorWrapper; true; ListIteratorWrapper; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 161 | Summary: org.apache.commons.collections4.iterators; LoopingIterator; true; LoopingIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 162 | Summary: org.apache.commons.collections4.iterators; LoopingListIterator; true; LoopingListIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 163 | Summary: org.apache.commons.collections4.iterators; ObjectArrayIterator; true; ObjectArrayIterator; ; ; Argument[0].ArrayElement; Argument[this].Element; value; manual | -| 164 | Summary: org.apache.commons.collections4.iterators; ObjectArrayIterator; true; getArray; ; ; Argument[this].Element; ReturnValue.ArrayElement; value; manual | -| 165 | Summary: org.apache.commons.collections4.iterators; ObjectArrayListIterator; true; ObjectArrayListIterator; ; ; Argument[0].ArrayElement; Argument[this].Element; value; manual | -| 166 | Summary: org.apache.commons.collections4.iterators; PeekingIterator; true; PeekingIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 167 | Summary: org.apache.commons.collections4.iterators; PeekingIterator; true; element; ; ; Argument[this].Element; ReturnValue; value; manual | -| 168 | Summary: org.apache.commons.collections4.iterators; PeekingIterator; true; peek; ; ; Argument[this].Element; ReturnValue; value; manual | -| 169 | Summary: org.apache.commons.collections4.iterators; PeekingIterator; true; peekingIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 170 | Summary: org.apache.commons.collections4.iterators; PermutationIterator; true; PermutationIterator; ; ; Argument[0].Element; Argument[this].Element.Element; value; manual | -| 171 | Summary: org.apache.commons.collections4.iterators; PushbackIterator; true; PushbackIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 172 | Summary: org.apache.commons.collections4.iterators; PushbackIterator; true; pushback; ; ; Argument[0]; Argument[this].Element; value; manual | -| 173 | Summary: org.apache.commons.collections4.iterators; PushbackIterator; true; pushbackIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 174 | Summary: org.apache.commons.collections4.iterators; ReverseListIterator; true; ReverseListIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 175 | Summary: org.apache.commons.collections4.iterators; SingletonIterator; true; SingletonIterator; ; ; Argument[0]; Argument[this].Element; value; manual | -| 176 | Summary: org.apache.commons.collections4.iterators; SingletonListIterator; true; SingletonListIterator; ; ; Argument[0]; Argument[this].Element; value; manual | -| 177 | Summary: org.apache.commons.collections4.iterators; SkippingIterator; true; SkippingIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 178 | Summary: org.apache.commons.collections4.iterators; UniqueFilterIterator; true; UniqueFilterIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 179 | Summary: org.apache.commons.collections4.iterators; UnmodifiableIterator; true; unmodifiableIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 180 | Summary: org.apache.commons.collections4.iterators; UnmodifiableListIterator; true; umodifiableListIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 181 | Summary: org.apache.commons.collections4.iterators; UnmodifiableMapIterator; true; unmodifiableMapIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 182 | Summary: org.apache.commons.collections4.iterators; UnmodifiableMapIterator; true; unmodifiableMapIterator; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 183 | Summary: org.apache.commons.collections4.iterators; UnmodifiableOrderedMapIterator; true; unmodifiableOrderedMapIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 184 | Summary: org.apache.commons.collections4.iterators; UnmodifiableOrderedMapIterator; true; unmodifiableOrderedMapIterator; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 185 | Summary: org.apache.commons.collections4.iterators; ZippingIterator; true; ZippingIterator; (Iterator,Iterator); ; Argument[0].Element; Argument[this].Element; value; manual | -| 186 | Summary: org.apache.commons.collections4.iterators; ZippingIterator; true; ZippingIterator; (Iterator,Iterator); ; Argument[1].Element; Argument[this].Element; value; manual | -| 187 | Summary: org.apache.commons.collections4.iterators; ZippingIterator; true; ZippingIterator; (Iterator,Iterator,Iterator); ; Argument[0].Element; Argument[this].Element; value; manual | -| 188 | Summary: org.apache.commons.collections4.iterators; ZippingIterator; true; ZippingIterator; (Iterator,Iterator,Iterator); ; Argument[1].Element; Argument[this].Element; value; manual | -| 189 | Summary: org.apache.commons.collections4.iterators; ZippingIterator; true; ZippingIterator; (Iterator,Iterator,Iterator); ; Argument[2].Element; Argument[this].Element; value; manual | -| 190 | Summary: org.apache.commons.collections4.iterators; ZippingIterator; true; ZippingIterator; (Iterator[]); ; Argument[0].ArrayElement.Element; Argument[this].Element; value; manual | -| 191 | Summary: org.apache.commons.collections4.keyvalue; AbstractKeyValue; true; AbstractKeyValue; ; ; Argument[0]; Argument[this].MapKey; value; manual | -| 192 | Summary: org.apache.commons.collections4.keyvalue; AbstractKeyValue; true; AbstractKeyValue; ; ; Argument[1]; Argument[this].MapValue; value; manual | -| 193 | Summary: org.apache.commons.collections4.keyvalue; AbstractKeyValue; true; setKey; ; ; Argument[0]; Argument[this].MapKey; value; manual | -| 194 | Summary: org.apache.commons.collections4.keyvalue; AbstractKeyValue; true; setKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | -| 195 | Summary: org.apache.commons.collections4.keyvalue; AbstractKeyValue; true; setValue; ; ; Argument[0]; Argument[this].MapValue; value; manual | -| 196 | Summary: org.apache.commons.collections4.keyvalue; AbstractKeyValue; true; setValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 197 | Summary: org.apache.commons.collections4.keyvalue; AbstractMapEntry; true; AbstractMapEntry; ; ; Argument[0]; Argument[this].MapKey; value; manual | -| 198 | Summary: org.apache.commons.collections4.keyvalue; AbstractMapEntry; true; AbstractMapEntry; ; ; Argument[1]; Argument[this].MapValue; value; manual | -| 199 | Summary: org.apache.commons.collections4.keyvalue; AbstractMapEntryDecorator; true; AbstractMapEntryDecorator; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 200 | Summary: org.apache.commons.collections4.keyvalue; AbstractMapEntryDecorator; true; AbstractMapEntryDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 201 | Summary: org.apache.commons.collections4.keyvalue; AbstractMapEntryDecorator; true; getMapEntry; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | -| 202 | Summary: org.apache.commons.collections4.keyvalue; AbstractMapEntryDecorator; true; getMapEntry; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | -| 203 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; DefaultKeyValue; (KeyValue); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 204 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; DefaultKeyValue; (KeyValue); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 205 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; DefaultKeyValue; (Map$Entry); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 206 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; DefaultKeyValue; (Map$Entry); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 207 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; DefaultKeyValue; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | -| 208 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; DefaultKeyValue; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | -| 209 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; toMapEntry; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | -| 210 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; toMapEntry; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | -| 211 | Summary: org.apache.commons.collections4.keyvalue; DefaultMapEntry; true; DefaultMapEntry; (KeyValue); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 212 | Summary: org.apache.commons.collections4.keyvalue; DefaultMapEntry; true; DefaultMapEntry; (KeyValue); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 213 | Summary: org.apache.commons.collections4.keyvalue; DefaultMapEntry; true; DefaultMapEntry; (Map$Entry); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 214 | Summary: org.apache.commons.collections4.keyvalue; DefaultMapEntry; true; DefaultMapEntry; (Map$Entry); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 215 | Summary: org.apache.commons.collections4.keyvalue; DefaultMapEntry; true; DefaultMapEntry; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | -| 216 | Summary: org.apache.commons.collections4.keyvalue; DefaultMapEntry; true; DefaultMapEntry; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | -| 217 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object); ; Argument[0]; Argument[this].Element; value; manual | -| 218 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object); ; Argument[1]; Argument[this].Element; value; manual | -| 219 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object); ; Argument[0]; Argument[this].Element; value; manual | -| 220 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object); ; Argument[1]; Argument[this].Element; value; manual | -| 221 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object); ; Argument[2]; Argument[this].Element; value; manual | -| 222 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object); ; Argument[0]; Argument[this].Element; value; manual | -| 223 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object); ; Argument[1]; Argument[this].Element; value; manual | -| 224 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object); ; Argument[2]; Argument[this].Element; value; manual | -| 225 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object); ; Argument[3]; Argument[this].Element; value; manual | -| 226 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object,Object); ; Argument[0]; Argument[this].Element; value; manual | -| 227 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object,Object); ; Argument[1]; Argument[this].Element; value; manual | -| 228 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object,Object); ; Argument[2]; Argument[this].Element; value; manual | -| 229 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object,Object); ; Argument[3]; Argument[this].Element; value; manual | -| 230 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object,Object); ; Argument[4]; Argument[this].Element; value; manual | -| 231 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object[]); ; Argument[0].ArrayElement; Argument[this].Element; value; manual | -| 232 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object[],boolean); ; Argument[0].ArrayElement; Argument[this].Element; value; manual | -| 233 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; getKey; ; ; Argument[this].Element; ReturnValue; value; manual | -| 234 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; getKeys; ; ; Argument[this].Element; ReturnValue.ArrayElement; value; manual | -| 235 | Summary: org.apache.commons.collections4.keyvalue; TiedMapEntry; true; TiedMapEntry; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 236 | Summary: org.apache.commons.collections4.keyvalue; TiedMapEntry; true; TiedMapEntry; ; ; Argument[1]; Argument[this].MapKey; value; manual | -| 237 | Summary: org.apache.commons.collections4.keyvalue; UnmodifiableMapEntry; true; UnmodifiableMapEntry; (KeyValue); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 238 | Summary: org.apache.commons.collections4.keyvalue; UnmodifiableMapEntry; true; UnmodifiableMapEntry; (KeyValue); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 239 | Summary: org.apache.commons.collections4.keyvalue; UnmodifiableMapEntry; true; UnmodifiableMapEntry; (Map$Entry); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 240 | Summary: org.apache.commons.collections4.keyvalue; UnmodifiableMapEntry; true; UnmodifiableMapEntry; (Map$Entry); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 241 | Summary: org.apache.commons.collections4.keyvalue; UnmodifiableMapEntry; true; UnmodifiableMapEntry; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | -| 242 | Summary: org.apache.commons.collections4.keyvalue; UnmodifiableMapEntry; true; UnmodifiableMapEntry; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | -| 243 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; AbstractLinkedList; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 244 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; addFirst; ; ; Argument[0]; Argument[this].Element; value; manual | -| 245 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; addLast; ; ; Argument[0]; Argument[this].Element; value; manual | -| 246 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; getFirst; ; ; Argument[this].Element; ReturnValue; value; manual | -| 247 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; getLast; ; ; Argument[this].Element; ReturnValue; value; manual | -| 248 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; removeFirst; ; ; Argument[this].Element; ReturnValue; value; manual | -| 249 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; removeLast; ; ; Argument[this].Element; ReturnValue; value; manual | -| 250 | Summary: org.apache.commons.collections4.list; AbstractListDecorator; true; AbstractListDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 251 | Summary: org.apache.commons.collections4.list; AbstractSerializableListDecorator; true; AbstractSerializableListDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 252 | Summary: org.apache.commons.collections4.list; CursorableLinkedList; true; CursorableLinkedList; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 253 | Summary: org.apache.commons.collections4.list; CursorableLinkedList; true; cursor; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 254 | Summary: org.apache.commons.collections4.list; FixedSizeList; true; fixedSizeList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 255 | Summary: org.apache.commons.collections4.list; GrowthList; true; growthList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 256 | Summary: org.apache.commons.collections4.list; LazyList; true; lazyList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 257 | Summary: org.apache.commons.collections4.list; NodeCachingLinkedList; true; NodeCachingLinkedList; (Collection); ; Argument[0].Element; Argument[this].Element; value; manual | -| 258 | Summary: org.apache.commons.collections4.list; PredicatedList; true; predicatedList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 259 | Summary: org.apache.commons.collections4.list; SetUniqueList; true; asSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 260 | Summary: org.apache.commons.collections4.list; SetUniqueList; true; setUniqueList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 261 | Summary: org.apache.commons.collections4.list; TransformedList; true; transformingList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 262 | Summary: org.apache.commons.collections4.list; TreeList; true; TreeList; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 263 | Summary: org.apache.commons.collections4.list; UnmodifiableList; true; UnmodifiableList; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 264 | Summary: org.apache.commons.collections4.list; UnmodifiableList; true; unmodifiableList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 265 | Summary: org.apache.commons.collections4.map; AbstractHashedMap; true; AbstractHashedMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 266 | Summary: org.apache.commons.collections4.map; AbstractHashedMap; true; AbstractHashedMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 267 | Summary: org.apache.commons.collections4.map; AbstractLinkedMap; true; AbstractLinkedMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 268 | Summary: org.apache.commons.collections4.map; AbstractLinkedMap; true; AbstractLinkedMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 269 | Summary: org.apache.commons.collections4.map; AbstractMapDecorator; true; AbstractMapDecorator; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 270 | Summary: org.apache.commons.collections4.map; AbstractMapDecorator; true; AbstractMapDecorator; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 271 | Summary: org.apache.commons.collections4.map; AbstractMapDecorator; true; decorated; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | -| 272 | Summary: org.apache.commons.collections4.map; AbstractMapDecorator; true; decorated; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | -| 273 | Summary: org.apache.commons.collections4.map; AbstractOrderedMapDecorator; true; AbstractOrderedMapDecorator; (OrderedMap); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 274 | Summary: org.apache.commons.collections4.map; AbstractOrderedMapDecorator; true; AbstractOrderedMapDecorator; (OrderedMap); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 275 | Summary: org.apache.commons.collections4.map; AbstractSortedMapDecorator; true; AbstractSortedMapDecorator; (SortedMap); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 276 | Summary: org.apache.commons.collections4.map; AbstractSortedMapDecorator; true; AbstractSortedMapDecorator; (SortedMap); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 277 | Summary: org.apache.commons.collections4.map; CaseInsensitiveMap; true; CaseInsensitiveMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 278 | Summary: org.apache.commons.collections4.map; CaseInsensitiveMap; true; CaseInsensitiveMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 279 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 280 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 281 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map); ; Argument[1].MapKey; Argument[this].MapKey; value; manual | -| 282 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map); ; Argument[1].MapValue; Argument[this].MapValue; value; manual | -| 283 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map,CompositeMap$MapMutator); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 284 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map,CompositeMap$MapMutator); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 285 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map,CompositeMap$MapMutator); ; Argument[1].MapKey; Argument[this].MapKey; value; manual | -| 286 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map,CompositeMap$MapMutator); ; Argument[1].MapValue; Argument[this].MapValue; value; manual | -| 287 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map[]); ; Argument[0].ArrayElement.MapKey; Argument[this].MapKey; value; manual | -| 288 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map[]); ; Argument[0].ArrayElement.MapValue; Argument[this].MapValue; value; manual | -| 289 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map[],CompositeMap$MapMutator); ; Argument[0].ArrayElement.MapKey; Argument[this].MapKey; value; manual | -| 290 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map[],CompositeMap$MapMutator); ; Argument[0].ArrayElement.MapValue; Argument[this].MapValue; value; manual | -| 291 | Summary: org.apache.commons.collections4.map; CompositeMap; true; addComposited; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 292 | Summary: org.apache.commons.collections4.map; CompositeMap; true; addComposited; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 293 | Summary: org.apache.commons.collections4.map; CompositeMap; true; removeComposited; ; ; Argument[0]; ReturnValue; value; manual | -| 294 | Summary: org.apache.commons.collections4.map; CompositeMap; true; removeComposited; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | -| 295 | Summary: org.apache.commons.collections4.map; CompositeMap; true; removeComposited; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | -| 296 | Summary: org.apache.commons.collections4.map; DefaultedMap; true; DefaultedMap; (Object); ; Argument[0]; Argument[this].MapValue; value; manual | -| 297 | Summary: org.apache.commons.collections4.map; DefaultedMap; true; defaultedMap; (Map,Object); ; Argument[1]; ReturnValue.MapValue; value; manual | -| 298 | Summary: org.apache.commons.collections4.map; DefaultedMap; true; defaultedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 299 | Summary: org.apache.commons.collections4.map; DefaultedMap; true; defaultedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 300 | Summary: org.apache.commons.collections4.map; EntrySetToMapIteratorAdapter; true; EntrySetToMapIteratorAdapter; ; ; Argument[0].Element.MapKey; Argument[this].Element; value; manual | -| 301 | Summary: org.apache.commons.collections4.map; EntrySetToMapIteratorAdapter; true; EntrySetToMapIteratorAdapter; ; ; Argument[0].Element.MapValue; Argument[this].MapValue; value; manual | -| 302 | Summary: org.apache.commons.collections4.map; FixedSizeMap; true; fixedSizeMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 303 | Summary: org.apache.commons.collections4.map; FixedSizeMap; true; fixedSizeMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 304 | Summary: org.apache.commons.collections4.map; FixedSizeSortedMap; true; fixedSizeSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 305 | Summary: org.apache.commons.collections4.map; FixedSizeSortedMap; true; fixedSizeSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 306 | Summary: org.apache.commons.collections4.map; Flat3Map; true; Flat3Map; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 307 | Summary: org.apache.commons.collections4.map; Flat3Map; true; Flat3Map; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 308 | Summary: org.apache.commons.collections4.map; HashedMap; true; HashedMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 309 | Summary: org.apache.commons.collections4.map; HashedMap; true; HashedMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 310 | Summary: org.apache.commons.collections4.map; LRUMap; true; LRUMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 311 | Summary: org.apache.commons.collections4.map; LRUMap; true; LRUMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 312 | Summary: org.apache.commons.collections4.map; LRUMap; true; LRUMap; (Map,boolean); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 313 | Summary: org.apache.commons.collections4.map; LRUMap; true; LRUMap; (Map,boolean); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 314 | Summary: org.apache.commons.collections4.map; LRUMap; true; get; (Object,boolean); ; Argument[0].MapValue; ReturnValue; value; manual | -| 315 | Summary: org.apache.commons.collections4.map; LazyMap; true; lazyMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 316 | Summary: org.apache.commons.collections4.map; LazyMap; true; lazyMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 317 | Summary: org.apache.commons.collections4.map; LazySortedMap; true; lazySortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 318 | Summary: org.apache.commons.collections4.map; LazySortedMap; true; lazySortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 319 | Summary: org.apache.commons.collections4.map; LinkedMap; true; LinkedMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 320 | Summary: org.apache.commons.collections4.map; LinkedMap; true; LinkedMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 321 | Summary: org.apache.commons.collections4.map; LinkedMap; true; asList; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | -| 322 | Summary: org.apache.commons.collections4.map; LinkedMap; true; get; (int); ; Argument[this].MapKey; ReturnValue; value; manual | -| 323 | Summary: org.apache.commons.collections4.map; LinkedMap; true; getValue; (int); ; Argument[this].MapValue; ReturnValue; value; manual | -| 324 | Summary: org.apache.commons.collections4.map; LinkedMap; true; remove; (int); ; Argument[this].MapValue; ReturnValue; value; manual | -| 325 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; asList; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | -| 326 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; get; (int); ; Argument[this].MapKey; ReturnValue; value; manual | -| 327 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; getValue; (int); ; Argument[this].MapValue; ReturnValue; value; manual | -| 328 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; keyList; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | -| 329 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; listOrderedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 330 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; listOrderedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 331 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; put; ; ; Argument[1]; Argument[this].MapKey; value; manual | -| 332 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; put; ; ; Argument[2]; Argument[this].MapValue; value; manual | -| 333 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; putAll; ; ; Argument[1].MapKey; Argument[this].MapKey; value; manual | -| 334 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; putAll; ; ; Argument[1].MapValue; Argument[this].MapValue; value; manual | -| 335 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; remove; (int); ; Argument[this].MapValue; ReturnValue; value; manual | -| 336 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; setValue; ; ; Argument[1]; Argument[this].MapValue; value; manual | -| 337 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; valueList; ; ; Argument[this].MapValue; ReturnValue.Element; value; manual | -| 338 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; get; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 339 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object); ; Argument[0..1]; Argument[this].MapKey.Element; value; manual | -| 340 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object); ; Argument[2]; Argument[this].MapValue; value; manual | -| 341 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object,Object); ; Argument[0..2]; Argument[this].MapKey.Element; value; manual | -| 342 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object,Object); ; Argument[3]; Argument[this].MapValue; value; manual | -| 343 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object,Object,Object); ; Argument[0..3]; Argument[this].MapKey.Element; value; manual | -| 344 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object,Object,Object); ; Argument[4]; Argument[this].MapValue; value; manual | -| 345 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object,Object,Object,Object); ; Argument[0..4]; Argument[this].MapKey.Element; value; manual | -| 346 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object,Object,Object,Object); ; Argument[5]; Argument[this].MapValue; value; manual | -| 347 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 348 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; removeMultiKey; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 349 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; getCollection; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | -| 350 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; iterator; (); ; Argument[this].MapKey; ReturnValue.Element.MapKey; value; manual | -| 351 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; iterator; (); ; Argument[this].MapValue.Element; ReturnValue.Element.MapValue; value; manual | -| 352 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; iterator; (Object); ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | -| 353 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; multiValueMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 354 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; multiValueMap; ; ; Argument[0].MapValue.Element; ReturnValue.MapValue.Element; value; manual | -| 355 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; putAll; (Map); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | -| 356 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; putAll; (Map); ; Argument[0].MapValue; Argument[this].MapValue.Element; value; manual | -| 357 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; putAll; (Object,Collection); ; Argument[0]; Argument[this].MapKey; value; manual | -| 358 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; putAll; (Object,Collection); ; Argument[1].Element; Argument[this].MapValue.Element; value; manual | -| 359 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; values; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | -| 360 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 361 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 362 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (PassiveExpiringMap$ExpirationPolicy,Map); ; Argument[1].MapKey; Argument[this].MapKey; value; manual | -| 363 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (PassiveExpiringMap$ExpirationPolicy,Map); ; Argument[1].MapValue; Argument[this].MapValue; value; manual | -| 364 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (long,Map); ; Argument[1].MapKey; Argument[this].MapKey; value; manual | -| 365 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (long,Map); ; Argument[1].MapValue; Argument[this].MapValue; value; manual | -| 366 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (long,TimeUnit,Map); ; Argument[2].MapKey; Argument[this].MapKey; value; manual | -| 367 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (long,TimeUnit,Map); ; Argument[2].MapValue; Argument[this].MapValue; value; manual | -| 368 | Summary: org.apache.commons.collections4.map; PredicatedMap; true; predicatedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 369 | Summary: org.apache.commons.collections4.map; PredicatedMap; true; predicatedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 370 | Summary: org.apache.commons.collections4.map; PredicatedSortedMap; true; predicatedSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 371 | Summary: org.apache.commons.collections4.map; PredicatedSortedMap; true; predicatedSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 372 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (KeyValue); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 373 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (KeyValue); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 374 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (Map$Entry); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 375 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (Map$Entry); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 376 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 377 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 378 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | -| 379 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | -| 380 | Summary: org.apache.commons.collections4.map; SingletonMap; true; setValue; ; ; Argument[0]; Argument[this].MapValue; value; manual | -| 381 | Summary: org.apache.commons.collections4.map; TransformedMap; true; transformingMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 382 | Summary: org.apache.commons.collections4.map; TransformedMap; true; transformingMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 383 | Summary: org.apache.commons.collections4.map; TransformedSortedMap; true; transformingSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 384 | Summary: org.apache.commons.collections4.map; TransformedSortedMap; true; transformingSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 385 | Summary: org.apache.commons.collections4.map; UnmodifiableEntrySet; true; unmodifiableEntrySet; ; ; Argument[0].Element.MapKey; ReturnValue.Element.MapKey; value; manual | -| 386 | Summary: org.apache.commons.collections4.map; UnmodifiableEntrySet; true; unmodifiableEntrySet; ; ; Argument[0].Element.MapValue; ReturnValue.Element.MapValue; value; manual | -| 387 | Summary: org.apache.commons.collections4.map; UnmodifiableMap; true; unmodifiableMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 388 | Summary: org.apache.commons.collections4.map; UnmodifiableMap; true; unmodifiableMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 389 | Summary: org.apache.commons.collections4.map; UnmodifiableOrderedMap; true; unmodifiableOrderedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 390 | Summary: org.apache.commons.collections4.map; UnmodifiableOrderedMap; true; unmodifiableOrderedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 391 | Summary: org.apache.commons.collections4.map; UnmodifiableSortedMap; true; unmodifiableSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 392 | Summary: org.apache.commons.collections4.map; UnmodifiableSortedMap; true; unmodifiableSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 393 | Summary: org.apache.commons.collections4.multimap; ArrayListValuedHashMap; true; ArrayListValuedHashMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 394 | Summary: org.apache.commons.collections4.multimap; ArrayListValuedHashMap; true; ArrayListValuedHashMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue.Element; value; manual | -| 395 | Summary: org.apache.commons.collections4.multimap; ArrayListValuedHashMap; true; ArrayListValuedHashMap; (MultiValuedMap); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 396 | Summary: org.apache.commons.collections4.multimap; ArrayListValuedHashMap; true; ArrayListValuedHashMap; (MultiValuedMap); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | -| 397 | Summary: org.apache.commons.collections4.multimap; HashSetValuedHashMap; true; HashSetValuedHashMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 398 | Summary: org.apache.commons.collections4.multimap; HashSetValuedHashMap; true; HashSetValuedHashMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue.Element; value; manual | -| 399 | Summary: org.apache.commons.collections4.multimap; HashSetValuedHashMap; true; HashSetValuedHashMap; (MultiValuedMap); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 400 | Summary: org.apache.commons.collections4.multimap; HashSetValuedHashMap; true; HashSetValuedHashMap; (MultiValuedMap); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | -| 401 | Summary: org.apache.commons.collections4.multimap; TransformedMultiValuedMap; true; transformingMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 402 | Summary: org.apache.commons.collections4.multimap; TransformedMultiValuedMap; true; transformingMap; ; ; Argument[0].MapValue.Element; ReturnValue.MapValue.Element; value; manual | -| 403 | Summary: org.apache.commons.collections4.multimap; UnmodifiableMultiValuedMap; true; unmodifiableMultiValuedMap; (MultiValuedMap); ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 404 | Summary: org.apache.commons.collections4.multimap; UnmodifiableMultiValuedMap; true; unmodifiableMultiValuedMap; (MultiValuedMap); ; Argument[0].MapValue.Element; ReturnValue.MapValue.Element; value; manual | -| 405 | Summary: org.apache.commons.collections4.multiset; HashMultiSet; true; HashMultiSet; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 406 | Summary: org.apache.commons.collections4.multiset; PredicatedMultiSet; true; predicatedMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 407 | Summary: org.apache.commons.collections4.multiset; SynchronizedMultiSet; true; synchronizedMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 408 | Summary: org.apache.commons.collections4.multiset; UnmodifiableMultiSet; true; unmodifiableMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 409 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (ClassLoader,String); ; Argument[1]; ReturnValue; taint; manual | -| 410 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (File); ; Argument[0]; ReturnValue; taint; manual | -| 411 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (InputStream); ; Argument[0]; ReturnValue; taint; manual | -| 412 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (Path); ; Argument[0]; ReturnValue; taint; manual | -| 413 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (Reader); ; Argument[0]; ReturnValue; taint; manual | -| 414 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (String); ; Argument[0]; ReturnValue; taint; manual | -| 415 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (URI); ; Argument[0]; ReturnValue; taint; manual | -| 416 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (URL); ; Argument[0]; ReturnValue; taint; manual | -| 417 | Summary: org.apache.commons.collections4.queue; CircularFifoQueue; true; CircularFifoQueue; (Collection); ; Argument[0].Element; Argument[this].Element; value; manual | -| 418 | Summary: org.apache.commons.collections4.queue; CircularFifoQueue; true; get; ; ; Argument[this].Element; ReturnValue; value; manual | -| 419 | Summary: org.apache.commons.collections4.queue; PredicatedQueue; true; predicatedQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 420 | Summary: org.apache.commons.collections4.queue; SynchronizedQueue; true; synchronizedQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 421 | Summary: org.apache.commons.collections4.queue; TransformedQueue; true; transformingQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 422 | Summary: org.apache.commons.collections4.queue; UnmodifiableQueue; true; unmodifiableQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 423 | Summary: org.apache.commons.collections4.set; AbstractNavigableSetDecorator; true; AbstractNavigableSetDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 424 | Summary: org.apache.commons.collections4.set; AbstractSetDecorator; true; AbstractSetDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 425 | Summary: org.apache.commons.collections4.set; AbstractSortedSetDecorator; true; AbstractSortedSetDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 426 | Summary: org.apache.commons.collections4.set; CompositeSet$SetMutator; true; add; ; ; Argument[2]; Argument[0].Element; value; manual | -| 427 | Summary: org.apache.commons.collections4.set; CompositeSet$SetMutator; true; add; ; ; Argument[2]; Argument[1].Element.Element; value; manual | -| 428 | Summary: org.apache.commons.collections4.set; CompositeSet$SetMutator; true; addAll; ; ; Argument[2].Element; Argument[0].Element; value; manual | -| 429 | Summary: org.apache.commons.collections4.set; CompositeSet$SetMutator; true; addAll; ; ; Argument[2].Element; Argument[1].Element.Element; value; manual | -| 430 | Summary: org.apache.commons.collections4.set; CompositeSet; true; CompositeSet; (Set); ; Argument[0].Element; Argument[this].Element; value; manual | -| 431 | Summary: org.apache.commons.collections4.set; CompositeSet; true; CompositeSet; (Set[]); ; Argument[0].ArrayElement.Element; Argument[this].Element; value; manual | -| 432 | Summary: org.apache.commons.collections4.set; CompositeSet; true; addComposited; (Set); ; Argument[0].Element; Argument[this].Element; value; manual | -| 433 | Summary: org.apache.commons.collections4.set; CompositeSet; true; addComposited; (Set,Set); ; Argument[0].Element; Argument[this].Element; value; manual | -| 434 | Summary: org.apache.commons.collections4.set; CompositeSet; true; addComposited; (Set,Set); ; Argument[1].Element; Argument[this].Element; value; manual | -| 435 | Summary: org.apache.commons.collections4.set; CompositeSet; true; addComposited; (Set[]); ; Argument[0].ArrayElement.Element; Argument[this].Element; value; manual | -| 436 | Summary: org.apache.commons.collections4.set; CompositeSet; true; getSets; ; ; Argument[this].Element; ReturnValue.Element.Element; value; manual | -| 437 | Summary: org.apache.commons.collections4.set; CompositeSet; true; toSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 438 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; add; ; ; Argument[1]; Argument[this].Element; value; manual | -| 439 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; addAll; ; ; Argument[1].Element; Argument[this].Element; value; manual | -| 440 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; asList; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 441 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; get; ; ; Argument[this].Element; ReturnValue; value; manual | -| 442 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; listOrderedSet; (List); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 443 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; listOrderedSet; (Set); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 444 | Summary: org.apache.commons.collections4.set; MapBackedSet; true; mapBackedSet; ; ; Argument[0].MapKey; ReturnValue.Element; value; manual | -| 445 | Summary: org.apache.commons.collections4.set; PredicatedNavigableSet; true; predicatedNavigableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 446 | Summary: org.apache.commons.collections4.set; PredicatedSet; true; predicatedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 447 | Summary: org.apache.commons.collections4.set; PredicatedSortedSet; true; predicatedSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 448 | Summary: org.apache.commons.collections4.set; TransformedNavigableSet; true; transformingNavigableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 449 | Summary: org.apache.commons.collections4.set; TransformedSet; true; transformingSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 450 | Summary: org.apache.commons.collections4.set; TransformedSortedSet; true; transformingSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 451 | Summary: org.apache.commons.collections4.set; UnmodifiableNavigableSet; true; unmodifiableNavigableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 452 | Summary: org.apache.commons.collections4.set; UnmodifiableSet; true; unmodifiableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 453 | Summary: org.apache.commons.collections4.set; UnmodifiableSortedSet; true; unmodifiableSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 454 | Summary: org.apache.commons.collections4.splitmap; AbstractIterableGetMapDecorator; true; AbstractIterableGetMapDecorator; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 455 | Summary: org.apache.commons.collections4.splitmap; AbstractIterableGetMapDecorator; true; AbstractIterableGetMapDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 456 | Summary: org.apache.commons.collections4.splitmap; TransformedSplitMap; true; transformingMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 457 | Summary: org.apache.commons.collections4.splitmap; TransformedSplitMap; true; transformingMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 458 | Summary: org.apache.commons.collections4.trie; AbstractPatriciaTrie; true; select; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | -| 459 | Summary: org.apache.commons.collections4.trie; AbstractPatriciaTrie; true; select; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | -| 460 | Summary: org.apache.commons.collections4.trie; AbstractPatriciaTrie; true; selectKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | -| 461 | Summary: org.apache.commons.collections4.trie; AbstractPatriciaTrie; true; selectValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 462 | Summary: org.apache.commons.collections4.trie; PatriciaTrie; true; PatriciaTrie; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 463 | Summary: org.apache.commons.collections4.trie; PatriciaTrie; true; PatriciaTrie; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 464 | Summary: org.apache.commons.collections4.trie; UnmodifiableTrie; true; unmodifiableTrie; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 465 | Summary: org.apache.commons.collections4.trie; UnmodifiableTrie; true; unmodifiableTrie; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 466 | Summary: org.apache.commons.collections4; ArrayStack; true; peek; ; ; Argument[this].Element; ReturnValue; value; manual | -| 467 | Summary: org.apache.commons.collections4; ArrayStack; true; pop; ; ; Argument[this].Element; ReturnValue; value; manual | -| 468 | Summary: org.apache.commons.collections4; ArrayStack; true; push; ; ; Argument[0]; Argument[this].Element; value; manual | -| 469 | Summary: org.apache.commons.collections4; ArrayStack; true; push; ; ; Argument[0]; ReturnValue; value; manual | -| 470 | Summary: org.apache.commons.collections4; Bag; true; add; ; ; Argument[0]; Argument[this].Element; value; manual | -| 471 | Summary: org.apache.commons.collections4; Bag; true; uniqueSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 472 | Summary: org.apache.commons.collections4; BagUtils; true; collectionBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 473 | Summary: org.apache.commons.collections4; BagUtils; true; predicatedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 474 | Summary: org.apache.commons.collections4; BagUtils; true; predicatedSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 475 | Summary: org.apache.commons.collections4; BagUtils; true; synchronizedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 476 | Summary: org.apache.commons.collections4; BagUtils; true; synchronizedSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 477 | Summary: org.apache.commons.collections4; BagUtils; true; transformingBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 478 | Summary: org.apache.commons.collections4; BagUtils; true; transformingSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 479 | Summary: org.apache.commons.collections4; BagUtils; true; unmodifiableBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 480 | Summary: org.apache.commons.collections4; BagUtils; true; unmodifiableSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 481 | Summary: org.apache.commons.collections4; BidiMap; true; getKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | -| 482 | Summary: org.apache.commons.collections4; BidiMap; true; inverseBidiMap; ; ; Argument[this].MapKey; ReturnValue.MapValue; value; manual | -| 483 | Summary: org.apache.commons.collections4; BidiMap; true; inverseBidiMap; ; ; Argument[this].MapValue; ReturnValue.MapKey; value; manual | -| 484 | Summary: org.apache.commons.collections4; BidiMap; true; removeValue; ; ; Argument[this].MapKey; ReturnValue; value; manual | -| 485 | Summary: org.apache.commons.collections4; CollectionUtils; true; addAll; (Collection,Enumeration); ; Argument[1].Element; Argument[0].Element; value; manual | -| 486 | Summary: org.apache.commons.collections4; CollectionUtils; true; addAll; (Collection,Iterable); ; Argument[1].Element; Argument[0].Element; value; manual | -| 487 | Summary: org.apache.commons.collections4; CollectionUtils; true; addAll; (Collection,Iterator); ; Argument[1].Element; Argument[0].Element; value; manual | -| 488 | Summary: org.apache.commons.collections4; CollectionUtils; true; addAll; (Collection,Object[]); ; Argument[1].ArrayElement; Argument[0].Element; value; manual | -| 489 | Summary: org.apache.commons.collections4; CollectionUtils; true; addIgnoreNull; ; ; Argument[1]; Argument[0].Element; value; manual | -| 490 | Summary: org.apache.commons.collections4; CollectionUtils; true; collate; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 491 | Summary: org.apache.commons.collections4; CollectionUtils; true; collate; ; ; Argument[1].Element; ReturnValue.Element; value; manual | -| 492 | Summary: org.apache.commons.collections4; CollectionUtils; true; disjunction; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 493 | Summary: org.apache.commons.collections4; CollectionUtils; true; disjunction; ; ; Argument[1].Element; ReturnValue.Element; value; manual | -| 494 | Summary: org.apache.commons.collections4; CollectionUtils; true; emptyIfNull; ; ; Argument[0]; ReturnValue; value; manual | -| 495 | Summary: org.apache.commons.collections4; CollectionUtils; true; extractSingleton; ; ; Argument[0].Element; ReturnValue; value; manual | -| 496 | Summary: org.apache.commons.collections4; CollectionUtils; true; find; ; ; Argument[0].Element; ReturnValue; value; manual | -| 497 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Iterable,int); ; Argument[0].Element; ReturnValue; value; manual | -| 498 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Iterator,int); ; Argument[0].Element; ReturnValue; value; manual | -| 499 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Map,int); ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 500 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Map,int); ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 501 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Object,int); ; Argument[0].ArrayElement; ReturnValue; value; manual | -| 502 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Object,int); ; Argument[0].Element; ReturnValue; value; manual | -| 503 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Object,int); ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 504 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Object,int); ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 505 | Summary: org.apache.commons.collections4; CollectionUtils; true; getCardinalityMap; ; ; Argument[0].Element; ReturnValue.MapKey; value; manual | -| 506 | Summary: org.apache.commons.collections4; CollectionUtils; true; intersection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 507 | Summary: org.apache.commons.collections4; CollectionUtils; true; intersection; ; ; Argument[1].Element; ReturnValue.Element; value; manual | -| 508 | Summary: org.apache.commons.collections4; CollectionUtils; true; permutations; ; ; Argument[0].Element; ReturnValue.Element.Element; value; manual | -| 509 | Summary: org.apache.commons.collections4; CollectionUtils; true; predicatedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 510 | Summary: org.apache.commons.collections4; CollectionUtils; true; removeAll; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 511 | Summary: org.apache.commons.collections4; CollectionUtils; true; retainAll; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 512 | Summary: org.apache.commons.collections4; CollectionUtils; true; select; (Iterable,Predicate); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 513 | Summary: org.apache.commons.collections4; CollectionUtils; true; select; (Iterable,Predicate,Collection); ; Argument[0].Element; Argument[2].Element; value; manual | -| 514 | Summary: org.apache.commons.collections4; CollectionUtils; true; select; (Iterable,Predicate,Collection); ; Argument[2]; ReturnValue; value; manual | -| 515 | Summary: org.apache.commons.collections4; CollectionUtils; true; select; (Iterable,Predicate,Collection,Collection); ; Argument[0].Element; Argument[2].Element; value; manual | -| 516 | Summary: org.apache.commons.collections4; CollectionUtils; true; select; (Iterable,Predicate,Collection,Collection); ; Argument[0].Element; Argument[3].Element; value; manual | -| 517 | Summary: org.apache.commons.collections4; CollectionUtils; true; select; (Iterable,Predicate,Collection,Collection); ; Argument[2]; ReturnValue; value; manual | -| 518 | Summary: org.apache.commons.collections4; CollectionUtils; true; selectRejected; (Iterable,Predicate); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 519 | Summary: org.apache.commons.collections4; CollectionUtils; true; selectRejected; (Iterable,Predicate,Collection); ; Argument[0].Element; Argument[2].Element; value; manual | -| 520 | Summary: org.apache.commons.collections4; CollectionUtils; true; selectRejected; (Iterable,Predicate,Collection); ; Argument[2]; ReturnValue; value; manual | -| 521 | Summary: org.apache.commons.collections4; CollectionUtils; true; subtract; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 522 | Summary: org.apache.commons.collections4; CollectionUtils; true; synchronizedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 523 | Summary: org.apache.commons.collections4; CollectionUtils; true; transformingCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 524 | Summary: org.apache.commons.collections4; CollectionUtils; true; union; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 525 | Summary: org.apache.commons.collections4; CollectionUtils; true; union; ; ; Argument[1].Element; ReturnValue.Element; value; manual | -| 526 | Summary: org.apache.commons.collections4; CollectionUtils; true; unmodifiableCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 527 | Summary: org.apache.commons.collections4; EnumerationUtils; true; get; ; ; Argument[0].Element; ReturnValue; value; manual | -| 528 | Summary: org.apache.commons.collections4; EnumerationUtils; true; toList; (Enumeration); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 529 | Summary: org.apache.commons.collections4; EnumerationUtils; true; toList; (StringTokenizer); ; Argument[0]; ReturnValue.Element; taint; manual | -| 530 | Summary: org.apache.commons.collections4; FluentIterable; true; append; (Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 531 | Summary: org.apache.commons.collections4; FluentIterable; true; append; (Iterable); ; Argument[this].Element; ReturnValue.Element; value; manual | -| 532 | Summary: org.apache.commons.collections4; FluentIterable; true; append; (Object[]); ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | -| 533 | Summary: org.apache.commons.collections4; FluentIterable; true; append; (Object[]); ; Argument[this].Element; ReturnValue.Element; value; manual | -| 534 | Summary: org.apache.commons.collections4; FluentIterable; true; asEnumeration; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 535 | Summary: org.apache.commons.collections4; FluentIterable; true; collate; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 536 | Summary: org.apache.commons.collections4; FluentIterable; true; collate; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 537 | Summary: org.apache.commons.collections4; FluentIterable; true; copyInto; ; ; Argument[this].Element; Argument[0].Element; value; manual | -| 538 | Summary: org.apache.commons.collections4; FluentIterable; true; eval; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 539 | Summary: org.apache.commons.collections4; FluentIterable; true; filter; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 540 | Summary: org.apache.commons.collections4; FluentIterable; true; get; ; ; Argument[this].Element; ReturnValue; value; manual | -| 541 | Summary: org.apache.commons.collections4; FluentIterable; true; limit; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 542 | Summary: org.apache.commons.collections4; FluentIterable; true; loop; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 543 | Summary: org.apache.commons.collections4; FluentIterable; true; of; (Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 544 | Summary: org.apache.commons.collections4; FluentIterable; true; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | -| 545 | Summary: org.apache.commons.collections4; FluentIterable; true; of; (Object[]); ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | -| 546 | Summary: org.apache.commons.collections4; FluentIterable; true; reverse; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 547 | Summary: org.apache.commons.collections4; FluentIterable; true; skip; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 548 | Summary: org.apache.commons.collections4; FluentIterable; true; toArray; ; ; Argument[this].Element; ReturnValue.ArrayElement; value; manual | -| 549 | Summary: org.apache.commons.collections4; FluentIterable; true; toList; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 550 | Summary: org.apache.commons.collections4; FluentIterable; true; unique; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 551 | Summary: org.apache.commons.collections4; FluentIterable; true; unmodifiable; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 552 | Summary: org.apache.commons.collections4; FluentIterable; true; zip; (Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 553 | Summary: org.apache.commons.collections4; FluentIterable; true; zip; (Iterable); ; Argument[this].Element; ReturnValue.Element; value; manual | -| 554 | Summary: org.apache.commons.collections4; FluentIterable; true; zip; (Iterable[]); ; Argument[0].ArrayElement.Element; ReturnValue.Element; value; manual | -| 555 | Summary: org.apache.commons.collections4; FluentIterable; true; zip; (Iterable[]); ; Argument[this].Element; ReturnValue.Element; value; manual | -| 556 | Summary: org.apache.commons.collections4; Get; true; entrySet; ; ; Argument[this].MapKey; ReturnValue.Element.MapKey; value; manual | -| 557 | Summary: org.apache.commons.collections4; Get; true; entrySet; ; ; Argument[this].MapValue; ReturnValue.Element.MapValue; value; manual | -| 558 | Summary: org.apache.commons.collections4; Get; true; get; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 559 | Summary: org.apache.commons.collections4; Get; true; keySet; (); ; Argument[this].MapKey; ReturnValue.Element; value; manual | -| 560 | Summary: org.apache.commons.collections4; Get; true; remove; (Object); ; Argument[this].MapValue; ReturnValue; value; manual | -| 561 | Summary: org.apache.commons.collections4; Get; true; values; (); ; Argument[this].MapValue; ReturnValue.Element; value; manual | -| 562 | Summary: org.apache.commons.collections4; IterableGet; true; mapIterator; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | -| 563 | Summary: org.apache.commons.collections4; IterableGet; true; mapIterator; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | -| 564 | Summary: org.apache.commons.collections4; IterableUtils; true; boundedIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 565 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 566 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable); ; Argument[1].Element; ReturnValue.Element; value; manual | -| 567 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 568 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable); ; Argument[1].Element; ReturnValue.Element; value; manual | -| 569 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable); ; Argument[2].Element; ReturnValue.Element; value; manual | -| 570 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable,Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 571 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable,Iterable); ; Argument[1].Element; ReturnValue.Element; value; manual | -| 572 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable,Iterable); ; Argument[2].Element; ReturnValue.Element; value; manual | -| 573 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable,Iterable); ; Argument[3].Element; ReturnValue.Element; value; manual | -| 574 | Summary: org.apache.commons.collections4; IterableUtils; true; collatedIterable; (Comparator,Iterable,Iterable); ; Argument[1].Element; ReturnValue.Element; value; manual | -| 575 | Summary: org.apache.commons.collections4; IterableUtils; true; collatedIterable; (Comparator,Iterable,Iterable); ; Argument[2].Element; ReturnValue.Element; value; manual | -| 576 | Summary: org.apache.commons.collections4; IterableUtils; true; collatedIterable; (Iterable,Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 577 | Summary: org.apache.commons.collections4; IterableUtils; true; collatedIterable; (Iterable,Iterable); ; Argument[1].Element; ReturnValue.Element; value; manual | -| 578 | Summary: org.apache.commons.collections4; IterableUtils; true; emptyIfNull; ; ; Argument[0]; ReturnValue; value; manual | -| 579 | Summary: org.apache.commons.collections4; IterableUtils; true; filteredIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 580 | Summary: org.apache.commons.collections4; IterableUtils; true; find; ; ; Argument[0].Element; ReturnValue; value; manual | -| 581 | Summary: org.apache.commons.collections4; IterableUtils; true; first; ; ; Argument[0].Element; ReturnValue; value; manual | -| 582 | Summary: org.apache.commons.collections4; IterableUtils; true; forEachButLast; ; ; Argument[0].Element; ReturnValue; value; manual | -| 583 | Summary: org.apache.commons.collections4; IterableUtils; true; get; ; ; Argument[0].Element; ReturnValue; value; manual | -| 584 | Summary: org.apache.commons.collections4; IterableUtils; true; loopingIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 585 | Summary: org.apache.commons.collections4; IterableUtils; true; partition; ; ; Argument[0].Element; ReturnValue.Element.Element; value; manual | -| 586 | Summary: org.apache.commons.collections4; IterableUtils; true; reversedIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 587 | Summary: org.apache.commons.collections4; IterableUtils; true; skippingIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 588 | Summary: org.apache.commons.collections4; IterableUtils; true; toList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 589 | Summary: org.apache.commons.collections4; IterableUtils; true; toString; ; ; Argument[2]; ReturnValue; taint; manual | -| 590 | Summary: org.apache.commons.collections4; IterableUtils; true; toString; ; ; Argument[3]; ReturnValue; taint; manual | -| 591 | Summary: org.apache.commons.collections4; IterableUtils; true; toString; ; ; Argument[4]; ReturnValue; taint; manual | -| 592 | Summary: org.apache.commons.collections4; IterableUtils; true; uniqueIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 593 | Summary: org.apache.commons.collections4; IterableUtils; true; unmodifiableIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 594 | Summary: org.apache.commons.collections4; IterableUtils; true; zippingIterable; (Iterable,Iterable); ; Argument[1].Element; ReturnValue.Element; value; manual | -| 595 | Summary: org.apache.commons.collections4; IterableUtils; true; zippingIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 596 | Summary: org.apache.commons.collections4; IteratorUtils; true; arrayIterator; ; ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | -| 597 | Summary: org.apache.commons.collections4; IteratorUtils; true; arrayListIterator; ; ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | -| 598 | Summary: org.apache.commons.collections4; IteratorUtils; true; asEnumeration; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 599 | Summary: org.apache.commons.collections4; IteratorUtils; true; asIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 600 | Summary: org.apache.commons.collections4; IteratorUtils; true; asIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 601 | Summary: org.apache.commons.collections4; IteratorUtils; true; asMultipleUseIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 602 | Summary: org.apache.commons.collections4; IteratorUtils; true; boundedIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 603 | Summary: org.apache.commons.collections4; IteratorUtils; true; chainedIterator; (Collection); ; Argument[0].Element.Element; ReturnValue.Element; value; manual | -| 604 | Summary: org.apache.commons.collections4; IteratorUtils; true; chainedIterator; (Iterator,Iterator); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 605 | Summary: org.apache.commons.collections4; IteratorUtils; true; chainedIterator; (Iterator,Iterator); ; Argument[1].Element; ReturnValue.Element; value; manual | -| 606 | Summary: org.apache.commons.collections4; IteratorUtils; true; collatedIterator; (Comparator,Collection); ; Argument[1].Element.Element; ReturnValue.Element; value; manual | -| 607 | Summary: org.apache.commons.collections4; IteratorUtils; true; collatedIterator; (Comparator,Iterator,Iterator); ; Argument[1].Element; ReturnValue.Element; value; manual | -| 608 | Summary: org.apache.commons.collections4; IteratorUtils; true; collatedIterator; (Comparator,Iterator,Iterator); ; Argument[2].Element; ReturnValue.Element; value; manual | -| 609 | Summary: org.apache.commons.collections4; IteratorUtils; true; collatedIterator; (Comparator,Iterator[]); ; Argument[1].ArrayElement.Element; ReturnValue.Element; value; manual | -| 610 | Summary: org.apache.commons.collections4; IteratorUtils; true; filteredIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 611 | Summary: org.apache.commons.collections4; IteratorUtils; true; filteredListIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 612 | Summary: org.apache.commons.collections4; IteratorUtils; true; find; ; ; Argument[0].Element; ReturnValue; value; manual | -| 613 | Summary: org.apache.commons.collections4; IteratorUtils; true; first; ; ; Argument[0].Element; ReturnValue; value; manual | -| 614 | Summary: org.apache.commons.collections4; IteratorUtils; true; forEachButLast; ; ; Argument[0].Element; ReturnValue; value; manual | -| 615 | Summary: org.apache.commons.collections4; IteratorUtils; true; get; ; ; Argument[0].Element; ReturnValue; value; manual | -| 616 | Summary: org.apache.commons.collections4; IteratorUtils; true; getIterator; ; ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | -| 617 | Summary: org.apache.commons.collections4; IteratorUtils; true; getIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 618 | Summary: org.apache.commons.collections4; IteratorUtils; true; getIterator; ; ; Argument[0].MapValue; ReturnValue.Element; value; manual | -| 619 | Summary: org.apache.commons.collections4; IteratorUtils; true; getIterator; ; ; Argument[0]; ReturnValue.Element; value; manual | -| 620 | Summary: org.apache.commons.collections4; IteratorUtils; true; loopingIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 621 | Summary: org.apache.commons.collections4; IteratorUtils; true; loopingListIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 622 | Summary: org.apache.commons.collections4; IteratorUtils; true; peekingIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 623 | Summary: org.apache.commons.collections4; IteratorUtils; true; pushbackIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 624 | Summary: org.apache.commons.collections4; IteratorUtils; true; singletonIterator; ; ; Argument[0]; ReturnValue.Element; value; manual | -| 625 | Summary: org.apache.commons.collections4; IteratorUtils; true; singletonListIterator; ; ; Argument[0]; ReturnValue.Element; value; manual | -| 626 | Summary: org.apache.commons.collections4; IteratorUtils; true; skippingIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 627 | Summary: org.apache.commons.collections4; IteratorUtils; true; toArray; ; ; Argument[0].Element; ReturnValue.ArrayElement; value; manual | -| 628 | Summary: org.apache.commons.collections4; IteratorUtils; true; toList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 629 | Summary: org.apache.commons.collections4; IteratorUtils; true; toListIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 630 | Summary: org.apache.commons.collections4; IteratorUtils; true; toString; ; ; Argument[2]; ReturnValue; taint; manual | -| 631 | Summary: org.apache.commons.collections4; IteratorUtils; true; toString; ; ; Argument[3]; ReturnValue; taint; manual | -| 632 | Summary: org.apache.commons.collections4; IteratorUtils; true; toString; ; ; Argument[4]; ReturnValue; taint; manual | -| 633 | Summary: org.apache.commons.collections4; IteratorUtils; true; unmodifiableIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 634 | Summary: org.apache.commons.collections4; IteratorUtils; true; unmodifiableListIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 635 | Summary: org.apache.commons.collections4; IteratorUtils; true; unmodifiableMapIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 636 | Summary: org.apache.commons.collections4; IteratorUtils; true; unmodifiableMapIterator; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 637 | Summary: org.apache.commons.collections4; IteratorUtils; true; zippingIterator; (Iterator,Iterator); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 638 | Summary: org.apache.commons.collections4; IteratorUtils; true; zippingIterator; (Iterator,Iterator); ; Argument[1].Element; ReturnValue.Element; value; manual | -| 639 | Summary: org.apache.commons.collections4; IteratorUtils; true; zippingIterator; (Iterator,Iterator,Iterator); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 640 | Summary: org.apache.commons.collections4; IteratorUtils; true; zippingIterator; (Iterator,Iterator,Iterator); ; Argument[1].Element; ReturnValue.Element; value; manual | -| 641 | Summary: org.apache.commons.collections4; IteratorUtils; true; zippingIterator; (Iterator,Iterator,Iterator); ; Argument[2].Element; ReturnValue.Element; value; manual | -| 642 | Summary: org.apache.commons.collections4; IteratorUtils; true; zippingIterator; (Iterator[]); ; Argument[0].ArrayElement.Element; ReturnValue.Element; value; manual | -| 643 | Summary: org.apache.commons.collections4; KeyValue; true; getKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | -| 644 | Summary: org.apache.commons.collections4; KeyValue; true; getValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 645 | Summary: org.apache.commons.collections4; ListUtils; true; defaultIfNull; ; ; Argument[0]; ReturnValue; value; manual | -| 646 | Summary: org.apache.commons.collections4; ListUtils; true; defaultIfNull; ; ; Argument[1]; ReturnValue; value; manual | -| 647 | Summary: org.apache.commons.collections4; ListUtils; true; emptyIfNull; ; ; Argument[0]; ReturnValue; value; manual | -| 648 | Summary: org.apache.commons.collections4; ListUtils; true; fixedSizeList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 649 | Summary: org.apache.commons.collections4; ListUtils; true; intersection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 650 | Summary: org.apache.commons.collections4; ListUtils; true; intersection; ; ; Argument[1].Element; ReturnValue.Element; value; manual | -| 651 | Summary: org.apache.commons.collections4; ListUtils; true; lazyList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 652 | Summary: org.apache.commons.collections4; ListUtils; true; longestCommonSubsequence; (CharSequence,CharSequence); ; Argument[0]; ReturnValue; taint; manual | -| 653 | Summary: org.apache.commons.collections4; ListUtils; true; longestCommonSubsequence; (CharSequence,CharSequence); ; Argument[1]; ReturnValue; taint; manual | -| 654 | Summary: org.apache.commons.collections4; ListUtils; true; longestCommonSubsequence; (List,List); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 655 | Summary: org.apache.commons.collections4; ListUtils; true; longestCommonSubsequence; (List,List); ; Argument[1].Element; ReturnValue.Element; value; manual | -| 656 | Summary: org.apache.commons.collections4; ListUtils; true; longestCommonSubsequence; (List,List,Equator); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 657 | Summary: org.apache.commons.collections4; ListUtils; true; longestCommonSubsequence; (List,List,Equator); ; Argument[1].Element; ReturnValue.Element; value; manual | -| 658 | Summary: org.apache.commons.collections4; ListUtils; true; partition; ; ; Argument[0].Element; ReturnValue.Element.Element; value; manual | -| 659 | Summary: org.apache.commons.collections4; ListUtils; true; predicatedList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 660 | Summary: org.apache.commons.collections4; ListUtils; true; removeAll; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 661 | Summary: org.apache.commons.collections4; ListUtils; true; retainAll; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 662 | Summary: org.apache.commons.collections4; ListUtils; true; select; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 663 | Summary: org.apache.commons.collections4; ListUtils; true; selectRejected; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 664 | Summary: org.apache.commons.collections4; ListUtils; true; subtract; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 665 | Summary: org.apache.commons.collections4; ListUtils; true; sum; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 666 | Summary: org.apache.commons.collections4; ListUtils; true; sum; ; ; Argument[1].Element; ReturnValue.Element; value; manual | -| 667 | Summary: org.apache.commons.collections4; ListUtils; true; synchronizedList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 668 | Summary: org.apache.commons.collections4; ListUtils; true; transformedList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 669 | Summary: org.apache.commons.collections4; ListUtils; true; union; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 670 | Summary: org.apache.commons.collections4; ListUtils; true; union; ; ; Argument[1].Element; ReturnValue.Element; value; manual | -| 671 | Summary: org.apache.commons.collections4; ListUtils; true; unmodifiableList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 672 | Summary: org.apache.commons.collections4; MapIterator; true; getKey; ; ; Argument[this].Element; ReturnValue; value; manual | -| 673 | Summary: org.apache.commons.collections4; MapIterator; true; getValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 674 | Summary: org.apache.commons.collections4; MapIterator; true; setValue; ; ; Argument[0]; Argument[this].MapValue; value; manual | -| 675 | Summary: org.apache.commons.collections4; MapIterator; true; setValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 676 | Summary: org.apache.commons.collections4; MapUtils; true; emptyIfNull; ; ; Argument[0]; ReturnValue; value; manual | -| 677 | Summary: org.apache.commons.collections4; MapUtils; true; fixedSizeMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 678 | Summary: org.apache.commons.collections4; MapUtils; true; fixedSizeMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 679 | Summary: org.apache.commons.collections4; MapUtils; true; fixedSizeSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 680 | Summary: org.apache.commons.collections4; MapUtils; true; fixedSizeSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 681 | Summary: org.apache.commons.collections4; MapUtils; true; getMap; ; ; Argument[0].MapValue; ReturnValue; value; manual | -| 682 | Summary: org.apache.commons.collections4; MapUtils; true; getMap; ; ; Argument[2]; ReturnValue; value; manual | -| 683 | Summary: org.apache.commons.collections4; MapUtils; true; getObject; ; ; Argument[0].MapValue; ReturnValue; value; manual | -| 684 | Summary: org.apache.commons.collections4; MapUtils; true; getObject; ; ; Argument[2]; ReturnValue; value; manual | -| 685 | Summary: org.apache.commons.collections4; MapUtils; true; getString; ; ; Argument[0].MapValue; ReturnValue; value; manual | -| 686 | Summary: org.apache.commons.collections4; MapUtils; true; getString; ; ; Argument[2]; ReturnValue; value; manual | -| 687 | Summary: org.apache.commons.collections4; MapUtils; true; invertMap; ; ; Argument[0].MapKey; ReturnValue.MapValue; value; manual | -| 688 | Summary: org.apache.commons.collections4; MapUtils; true; invertMap; ; ; Argument[0].MapValue; ReturnValue.MapKey; value; manual | -| 689 | Summary: org.apache.commons.collections4; MapUtils; true; iterableMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 690 | Summary: org.apache.commons.collections4; MapUtils; true; iterableMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 691 | Summary: org.apache.commons.collections4; MapUtils; true; iterableSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 692 | Summary: org.apache.commons.collections4; MapUtils; true; iterableSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 693 | Summary: org.apache.commons.collections4; MapUtils; true; lazyMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 694 | Summary: org.apache.commons.collections4; MapUtils; true; lazyMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 695 | Summary: org.apache.commons.collections4; MapUtils; true; lazySortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 696 | Summary: org.apache.commons.collections4; MapUtils; true; lazySortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 697 | Summary: org.apache.commons.collections4; MapUtils; true; multiValueMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 698 | Summary: org.apache.commons.collections4; MapUtils; true; multiValueMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 699 | Summary: org.apache.commons.collections4; MapUtils; true; orderedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 700 | Summary: org.apache.commons.collections4; MapUtils; true; orderedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 701 | Summary: org.apache.commons.collections4; MapUtils; true; populateMap; (Map,Iterable,Transformer); ; Argument[1].Element; Argument[0].MapValue; value; manual | -| 702 | Summary: org.apache.commons.collections4; MapUtils; true; populateMap; (MultiMap,Iterable,Transformer); ; Argument[1].Element; Argument[0].MapValue.Element; value; manual | -| 703 | Summary: org.apache.commons.collections4; MapUtils; true; predicatedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 704 | Summary: org.apache.commons.collections4; MapUtils; true; predicatedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 705 | Summary: org.apache.commons.collections4; MapUtils; true; predicatedSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 706 | Summary: org.apache.commons.collections4; MapUtils; true; predicatedSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 707 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.ArrayElement; Argument[0].MapKey; value; manual | -| 708 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.ArrayElement; Argument[0].MapValue; value; manual | -| 709 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.ArrayElement; ReturnValue.MapKey; value; manual | -| 710 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.ArrayElement; ReturnValue.MapValue; value; manual | -| 711 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.MapKey; Argument[0].MapKey; value; manual | -| 712 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.MapKey; ReturnValue.MapKey; value; manual | -| 713 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.MapValue; Argument[0].MapValue; value; manual | -| 714 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.MapValue; ReturnValue.MapValue; value; manual | -| 715 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement; Argument[0].MapKey; value; manual | -| 716 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement; Argument[0].MapValue; value; manual | -| 717 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement; ReturnValue.MapKey; value; manual | -| 718 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement; ReturnValue.MapValue; value; manual | -| 719 | Summary: org.apache.commons.collections4; MapUtils; true; safeAddToMap; ; ; Argument[1]; Argument[0].MapKey; value; manual | -| 720 | Summary: org.apache.commons.collections4; MapUtils; true; safeAddToMap; ; ; Argument[2]; Argument[0].MapValue; value; manual | -| 721 | Summary: org.apache.commons.collections4; MapUtils; true; synchronizedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 722 | Summary: org.apache.commons.collections4; MapUtils; true; synchronizedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 723 | Summary: org.apache.commons.collections4; MapUtils; true; synchronizedSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 724 | Summary: org.apache.commons.collections4; MapUtils; true; synchronizedSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 725 | Summary: org.apache.commons.collections4; MapUtils; true; toMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 726 | Summary: org.apache.commons.collections4; MapUtils; true; toMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 727 | Summary: org.apache.commons.collections4; MapUtils; true; transformedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 728 | Summary: org.apache.commons.collections4; MapUtils; true; transformedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 729 | Summary: org.apache.commons.collections4; MapUtils; true; transformedSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 730 | Summary: org.apache.commons.collections4; MapUtils; true; transformedSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 731 | Summary: org.apache.commons.collections4; MapUtils; true; unmodifiableMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 732 | Summary: org.apache.commons.collections4; MapUtils; true; unmodifiableMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 733 | Summary: org.apache.commons.collections4; MapUtils; true; unmodifiableSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 734 | Summary: org.apache.commons.collections4; MapUtils; true; unmodifiableSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 735 | Summary: org.apache.commons.collections4; MultiMap; true; get; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | -| 736 | Summary: org.apache.commons.collections4; MultiMap; true; put; ; ; Argument[0]; Argument[this].MapKey; value; manual | -| 737 | Summary: org.apache.commons.collections4; MultiMap; true; put; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | -| 738 | Summary: org.apache.commons.collections4; MultiMap; true; values; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | -| 739 | Summary: org.apache.commons.collections4; MultiMapUtils; true; emptyIfNull; ; ; Argument[0]; ReturnValue; value; manual | -| 740 | Summary: org.apache.commons.collections4; MultiMapUtils; true; getCollection; ; ; Argument[0].MapValue; ReturnValue; value; manual | -| 741 | Summary: org.apache.commons.collections4; MultiMapUtils; true; getValuesAsBag; ; ; Argument[0].MapValue.Element; ReturnValue.Element; value; manual | -| 742 | Summary: org.apache.commons.collections4; MultiMapUtils; true; getValuesAsList; ; ; Argument[0].MapValue.Element; ReturnValue.Element; value; manual | -| 743 | Summary: org.apache.commons.collections4; MultiMapUtils; true; getValuesAsSet; ; ; Argument[0].MapValue.Element; ReturnValue.Element; value; manual | -| 744 | Summary: org.apache.commons.collections4; MultiMapUtils; true; transformedMultiValuedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 745 | Summary: org.apache.commons.collections4; MultiMapUtils; true; transformedMultiValuedMap; ; ; Argument[0].MapValue.Element; ReturnValue.MapValue.Element; value; manual | -| 746 | Summary: org.apache.commons.collections4; MultiMapUtils; true; unmodifiableMultiValuedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 747 | Summary: org.apache.commons.collections4; MultiMapUtils; true; unmodifiableMultiValuedMap; ; ; Argument[0].MapValue.Element; ReturnValue.MapValue.Element; value; manual | -| 748 | Summary: org.apache.commons.collections4; MultiSet$Entry; true; getElement; ; ; Argument[this].Element; ReturnValue; value; manual | -| 749 | Summary: org.apache.commons.collections4; MultiSet; true; add; ; ; Argument[0]; Argument[this].Element; value; manual | -| 750 | Summary: org.apache.commons.collections4; MultiSet; true; entrySet; ; ; Argument[this].Element; ReturnValue.Element.Element; value; manual | -| 751 | Summary: org.apache.commons.collections4; MultiSet; true; uniqueSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 752 | Summary: org.apache.commons.collections4; MultiSetUtils; true; predicatedMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 753 | Summary: org.apache.commons.collections4; MultiSetUtils; true; synchronizedMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 754 | Summary: org.apache.commons.collections4; MultiSetUtils; true; unmodifiableMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 755 | Summary: org.apache.commons.collections4; MultiValuedMap; true; asMap; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | -| 756 | Summary: org.apache.commons.collections4; MultiValuedMap; true; asMap; ; ; Argument[this].MapValue.Element; ReturnValue.MapValue.Element; value; manual | -| 757 | Summary: org.apache.commons.collections4; MultiValuedMap; true; entries; ; ; Argument[this].MapKey; ReturnValue.Element.MapKey; value; manual | -| 758 | Summary: org.apache.commons.collections4; MultiValuedMap; true; entries; ; ; Argument[this].MapValue.Element; ReturnValue.Element.MapValue; value; manual | -| 759 | Summary: org.apache.commons.collections4; MultiValuedMap; true; get; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | -| 760 | Summary: org.apache.commons.collections4; MultiValuedMap; true; keySet; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | -| 761 | Summary: org.apache.commons.collections4; MultiValuedMap; true; keys; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | -| 762 | Summary: org.apache.commons.collections4; MultiValuedMap; true; mapIterator; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | -| 763 | Summary: org.apache.commons.collections4; MultiValuedMap; true; mapIterator; ; ; Argument[this].MapValue.Element; ReturnValue.MapValue; value; manual | -| 764 | Summary: org.apache.commons.collections4; MultiValuedMap; true; put; ; ; Argument[0]; Argument[this].MapKey; value; manual | -| 765 | Summary: org.apache.commons.collections4; MultiValuedMap; true; put; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | -| 766 | Summary: org.apache.commons.collections4; MultiValuedMap; true; putAll; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 767 | Summary: org.apache.commons.collections4; MultiValuedMap; true; putAll; (Map); ; Argument[0].MapValue; Argument[this].MapValue.Element; value; manual | -| 768 | Summary: org.apache.commons.collections4; MultiValuedMap; true; putAll; (MultiValuedMap); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 769 | Summary: org.apache.commons.collections4; MultiValuedMap; true; putAll; (MultiValuedMap); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | -| 770 | Summary: org.apache.commons.collections4; MultiValuedMap; true; putAll; (Object,Iterable); ; Argument[0]; Argument[this].MapKey; value; manual | -| 771 | Summary: org.apache.commons.collections4; MultiValuedMap; true; putAll; (Object,Iterable); ; Argument[1].Element; Argument[this].MapValue.Element; value; manual | -| 772 | Summary: org.apache.commons.collections4; MultiValuedMap; true; remove; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | -| 773 | Summary: org.apache.commons.collections4; MultiValuedMap; true; values; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | -| 774 | Summary: org.apache.commons.collections4; OrderedIterator; true; previous; ; ; Argument[this].Element; ReturnValue; value; manual | -| 775 | Summary: org.apache.commons.collections4; OrderedMap; true; firstKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | -| 776 | Summary: org.apache.commons.collections4; OrderedMap; true; lastKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | -| 777 | Summary: org.apache.commons.collections4; OrderedMap; true; nextKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | -| 778 | Summary: org.apache.commons.collections4; OrderedMap; true; previousKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | -| 779 | Summary: org.apache.commons.collections4; Put; true; put; ; ; Argument[0]; Argument[this].MapKey; value; manual | -| 780 | Summary: org.apache.commons.collections4; Put; true; put; ; ; Argument[1]; Argument[this].MapValue; value; manual | -| 781 | Summary: org.apache.commons.collections4; Put; true; put; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 782 | Summary: org.apache.commons.collections4; Put; true; putAll; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 783 | Summary: org.apache.commons.collections4; Put; true; putAll; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | -| 784 | Summary: org.apache.commons.collections4; QueueUtils; true; predicatedQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 785 | Summary: org.apache.commons.collections4; QueueUtils; true; synchronizedQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 786 | Summary: org.apache.commons.collections4; QueueUtils; true; transformingQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 787 | Summary: org.apache.commons.collections4; QueueUtils; true; unmodifiableQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 788 | Summary: org.apache.commons.collections4; SetUtils$SetView; true; copyInto; ; ; Argument[this].Element; Argument[0].Element; value; manual | -| 789 | Summary: org.apache.commons.collections4; SetUtils$SetView; true; createIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 790 | Summary: org.apache.commons.collections4; SetUtils$SetView; true; toSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | -| 791 | Summary: org.apache.commons.collections4; SetUtils; true; difference; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 792 | Summary: org.apache.commons.collections4; SetUtils; true; disjunction; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 793 | Summary: org.apache.commons.collections4; SetUtils; true; disjunction; ; ; Argument[1].Element; ReturnValue.Element; value; manual | -| 794 | Summary: org.apache.commons.collections4; SetUtils; true; emptyIfNull; ; ; Argument[0]; ReturnValue; value; manual | -| 795 | Summary: org.apache.commons.collections4; SetUtils; true; hashSet; ; ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | -| 796 | Summary: org.apache.commons.collections4; SetUtils; true; intersection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 797 | Summary: org.apache.commons.collections4; SetUtils; true; intersection; ; ; Argument[1].Element; ReturnValue.Element; value; manual | -| 798 | Summary: org.apache.commons.collections4; SetUtils; true; orderedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 799 | Summary: org.apache.commons.collections4; SetUtils; true; predicatedNavigableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 800 | Summary: org.apache.commons.collections4; SetUtils; true; predicatedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 801 | Summary: org.apache.commons.collections4; SetUtils; true; predicatedSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 802 | Summary: org.apache.commons.collections4; SetUtils; true; synchronizedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 803 | Summary: org.apache.commons.collections4; SetUtils; true; synchronizedSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 804 | Summary: org.apache.commons.collections4; SetUtils; true; transformedNavigableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 805 | Summary: org.apache.commons.collections4; SetUtils; true; transformedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 806 | Summary: org.apache.commons.collections4; SetUtils; true; transformedSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 807 | Summary: org.apache.commons.collections4; SetUtils; true; union; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 808 | Summary: org.apache.commons.collections4; SetUtils; true; union; ; ; Argument[1].Element; ReturnValue.Element; value; manual | -| 809 | Summary: org.apache.commons.collections4; SetUtils; true; unmodifiableNavigableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 810 | Summary: org.apache.commons.collections4; SetUtils; true; unmodifiableSet; (Object[]); ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | -| 811 | Summary: org.apache.commons.collections4; SetUtils; true; unmodifiableSet; (Set); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 812 | Summary: org.apache.commons.collections4; SetUtils; true; unmodifiableSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 813 | Summary: org.apache.commons.collections4; SortedBag; true; first; ; ; Argument[this].Element; ReturnValue; value; manual | -| 814 | Summary: org.apache.commons.collections4; SortedBag; true; last; ; ; Argument[this].Element; ReturnValue; value; manual | -| 815 | Summary: org.apache.commons.collections4; SplitMapUtils; true; readableMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 816 | Summary: org.apache.commons.collections4; SplitMapUtils; true; readableMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 817 | Summary: org.apache.commons.collections4; SplitMapUtils; true; writableMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 818 | Summary: org.apache.commons.collections4; SplitMapUtils; true; writableMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 819 | Summary: org.apache.commons.collections4; Trie; true; prefixMap; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | -| 820 | Summary: org.apache.commons.collections4; Trie; true; prefixMap; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | -| 821 | Summary: org.apache.commons.collections4; TrieUtils; true; unmodifiableTrie; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 822 | Summary: org.apache.commons.collections4; TrieUtils; true; unmodifiableTrie; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 5 | Summary: java.util; Collection; true; toArray; ; ; Argument[this].Element; ReturnValue.ArrayElement; value; manual | +| 6 | Summary: java.util; Enumeration; true; nextElement; ; ; Argument[this].Element; ReturnValue; value; manual | +| 7 | Summary: java.util; Iterator; true; next; ; ; Argument[this].Element; ReturnValue; value; manual | +| 8 | Summary: java.util; List; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | +| 9 | Summary: java.util; List; true; listIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 10 | Summary: java.util; Map$Entry; true; getKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | +| 11 | Summary: java.util; Map$Entry; true; getValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 12 | Summary: java.util; Map$Entry; true; setValue; ; ; Argument[0]; Argument[this].MapValue; value; manual | +| 13 | Summary: java.util; Map$Entry; true; setValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 14 | Summary: java.util; Map; false; of; ; ; Argument[0]; ReturnValue.MapKey; value; manual | +| 15 | Summary: java.util; Map; false; of; ; ; Argument[1]; ReturnValue.MapValue; value; manual | +| 16 | Summary: java.util; Map; true; entrySet; ; ; Argument[this].MapKey; ReturnValue.Element.MapKey; value; manual | +| 17 | Summary: java.util; Map; true; entrySet; ; ; Argument[this].MapValue; ReturnValue.Element.MapValue; value; manual | +| 18 | Summary: java.util; Map; true; get; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 19 | Summary: java.util; Map; true; keySet; (); ; Argument[this].MapKey; ReturnValue.Element; value; manual | +| 20 | Summary: java.util; Map; true; put; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | +| 21 | Summary: java.util; Map; true; put; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | +| 22 | Summary: java.util; Map; true; put; (Object,Object); ; Argument[this].MapValue; ReturnValue; value; manual | +| 23 | Summary: java.util; Map; true; putAll; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 24 | Summary: java.util; Map; true; putAll; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 25 | Summary: java.util; Map; true; remove; (Object); ; Argument[this].MapValue; ReturnValue; value; manual | +| 26 | Summary: java.util; Map; true; values; (); ; Argument[this].MapValue; ReturnValue.Element; value; manual | +| 27 | Summary: org.apache.commons.collections4.bag; AbstractBagDecorator; true; AbstractBagDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 28 | Summary: org.apache.commons.collections4.bag; AbstractMapBag; true; AbstractMapBag; ; ; Argument[0].MapKey; Argument[this].Element; value; manual | +| 29 | Summary: org.apache.commons.collections4.bag; AbstractMapBag; true; getMap; ; ; Argument[this].Element; ReturnValue.MapKey; value; manual | +| 30 | Summary: org.apache.commons.collections4.bag; AbstractSortedBagDecorator; true; AbstractSortedBagDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 31 | Summary: org.apache.commons.collections4.bag; CollectionBag; true; CollectionBag; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 32 | Summary: org.apache.commons.collections4.bag; CollectionBag; true; collectionBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 33 | Summary: org.apache.commons.collections4.bag; CollectionSortedBag; true; CollectionSortedBag; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 34 | Summary: org.apache.commons.collections4.bag; CollectionSortedBag; true; collectionSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 35 | Summary: org.apache.commons.collections4.bag; HashBag; true; HashBag; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 36 | Summary: org.apache.commons.collections4.bag; PredicatedBag; true; predicatedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 37 | Summary: org.apache.commons.collections4.bag; PredicatedSortedBag; true; predicatedSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 38 | Summary: org.apache.commons.collections4.bag; SynchronizedBag; true; synchronizedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 39 | Summary: org.apache.commons.collections4.bag; SynchronizedSortedBag; true; synchronizedSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 40 | Summary: org.apache.commons.collections4.bag; TransformedBag; true; transformedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 41 | Summary: org.apache.commons.collections4.bag; TransformedSortedBag; true; transformedSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 42 | Summary: org.apache.commons.collections4.bag; TreeBag; true; TreeBag; (Collection); ; Argument[0].Element; Argument[this].Element; value; manual | +| 43 | Summary: org.apache.commons.collections4.bag; UnmodifiableBag; true; unmodifiableBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 44 | Summary: org.apache.commons.collections4.bag; UnmodifiableSortedBag; true; unmodifiableSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 45 | Summary: org.apache.commons.collections4.bidimap; AbstractBidiMapDecorator; true; AbstractBidiMapDecorator; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 46 | Summary: org.apache.commons.collections4.bidimap; AbstractBidiMapDecorator; true; AbstractBidiMapDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 47 | Summary: org.apache.commons.collections4.bidimap; AbstractDualBidiMap; true; AbstractDualBidiMap; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 48 | Summary: org.apache.commons.collections4.bidimap; AbstractDualBidiMap; true; AbstractDualBidiMap; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 49 | Summary: org.apache.commons.collections4.bidimap; AbstractDualBidiMap; true; AbstractDualBidiMap; ; ; Argument[1].MapKey; Argument[this].MapValue; value; manual | +| 50 | Summary: org.apache.commons.collections4.bidimap; AbstractDualBidiMap; true; AbstractDualBidiMap; ; ; Argument[1].MapValue; Argument[this].MapKey; value; manual | +| 51 | Summary: org.apache.commons.collections4.bidimap; AbstractDualBidiMap; true; AbstractDualBidiMap; ; ; Argument[2].MapKey; Argument[this].MapValue; value; manual | +| 52 | Summary: org.apache.commons.collections4.bidimap; AbstractDualBidiMap; true; AbstractDualBidiMap; ; ; Argument[2].MapValue; Argument[this].MapKey; value; manual | +| 53 | Summary: org.apache.commons.collections4.bidimap; AbstractOrderedBidiMapDecorator; true; AbstractOrderedBidiMapDecorator; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 54 | Summary: org.apache.commons.collections4.bidimap; AbstractOrderedBidiMapDecorator; true; AbstractOrderedBidiMapDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 55 | Summary: org.apache.commons.collections4.bidimap; AbstractSortedBidiMapDecorator; true; AbstractSortedBidiMapDecorator; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 56 | Summary: org.apache.commons.collections4.bidimap; AbstractSortedBidiMapDecorator; true; AbstractSortedBidiMapDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 57 | Summary: org.apache.commons.collections4.bidimap; DualHashBidiMap; true; DualHashBidiMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 58 | Summary: org.apache.commons.collections4.bidimap; DualHashBidiMap; true; DualHashBidiMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 59 | Summary: org.apache.commons.collections4.bidimap; DualLinkedHashBidiMap; true; DualLinkedHashBidiMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 60 | Summary: org.apache.commons.collections4.bidimap; DualLinkedHashBidiMap; true; DualLinkedHashBidiMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 61 | Summary: org.apache.commons.collections4.bidimap; DualTreeBidiMap; true; DualTreeBidiMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 62 | Summary: org.apache.commons.collections4.bidimap; DualTreeBidiMap; true; DualTreeBidiMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 63 | Summary: org.apache.commons.collections4.bidimap; DualTreeBidiMap; true; inverseOrderedBidiMap; ; ; Argument[this].MapKey; ReturnValue.MapValue; value; manual | +| 64 | Summary: org.apache.commons.collections4.bidimap; DualTreeBidiMap; true; inverseOrderedBidiMap; ; ; Argument[this].MapValue; ReturnValue.MapKey; value; manual | +| 65 | Summary: org.apache.commons.collections4.bidimap; DualTreeBidiMap; true; inverseSortedBidiMap; ; ; Argument[this].MapKey; ReturnValue.MapValue; value; manual | +| 66 | Summary: org.apache.commons.collections4.bidimap; DualTreeBidiMap; true; inverseSortedBidiMap; ; ; Argument[this].MapValue; ReturnValue.MapKey; value; manual | +| 67 | Summary: org.apache.commons.collections4.bidimap; TreeBidiMap; true; TreeBidiMap; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 68 | Summary: org.apache.commons.collections4.bidimap; TreeBidiMap; true; TreeBidiMap; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 69 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableBidiMap; true; unmodifiableBidiMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 70 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableBidiMap; true; unmodifiableBidiMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 71 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableOrderedBidiMap; true; inverseOrderedBidiMap; ; ; Argument[this].MapKey; ReturnValue.MapValue; value; manual | +| 72 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableOrderedBidiMap; true; inverseOrderedBidiMap; ; ; Argument[this].MapValue; ReturnValue.MapKey; value; manual | +| 73 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableOrderedBidiMap; true; unmodifiableOrderedBidiMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 74 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableOrderedBidiMap; true; unmodifiableOrderedBidiMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 75 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableSortedBidiMap; true; unmodifiableSortedBidiMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 76 | Summary: org.apache.commons.collections4.bidimap; UnmodifiableSortedBidiMap; true; unmodifiableSortedBidiMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 77 | Summary: org.apache.commons.collections4.collection; AbstractCollectionDecorator; true; AbstractCollectionDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 78 | Summary: org.apache.commons.collections4.collection; AbstractCollectionDecorator; true; decorated; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 79 | Summary: org.apache.commons.collections4.collection; AbstractCollectionDecorator; true; setCollection; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 80 | Summary: org.apache.commons.collections4.collection; CompositeCollection$CollectionMutator; true; add; ; ; Argument[2]; Argument[0].Element; value; manual | +| 81 | Summary: org.apache.commons.collections4.collection; CompositeCollection$CollectionMutator; true; add; ; ; Argument[2]; Argument[1].Element.Element; value; manual | +| 82 | Summary: org.apache.commons.collections4.collection; CompositeCollection$CollectionMutator; true; addAll; ; ; Argument[2].Element; Argument[0].Element; value; manual | +| 83 | Summary: org.apache.commons.collections4.collection; CompositeCollection$CollectionMutator; true; addAll; ; ; Argument[2].Element; Argument[1].Element.Element; value; manual | +| 84 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; CompositeCollection; (Collection); ; Argument[0].Element; Argument[this].Element; value; manual | +| 85 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; CompositeCollection; (Collection,Collection); ; Argument[0].Element; Argument[this].Element; value; manual | +| 86 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; CompositeCollection; (Collection,Collection); ; Argument[1].Element; Argument[this].Element; value; manual | +| 87 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; CompositeCollection; (Collection[]); ; Argument[0].ArrayElement.Element; Argument[this].Element; value; manual | +| 88 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; addComposited; (Collection); ; Argument[0].Element; Argument[this].Element; value; manual | +| 89 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; addComposited; (Collection,Collection); ; Argument[0].Element; Argument[this].Element; value; manual | +| 90 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; addComposited; (Collection,Collection); ; Argument[1].Element; Argument[this].Element; value; manual | +| 91 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; addComposited; (Collection[]); ; Argument[0].ArrayElement.Element; Argument[this].Element; value; manual | +| 92 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; getCollections; ; ; Argument[this].Element; ReturnValue.Element.Element; value; manual | +| 93 | Summary: org.apache.commons.collections4.collection; CompositeCollection; true; toCollection; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 94 | Summary: org.apache.commons.collections4.collection; IndexedCollection; true; IndexedCollection; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 95 | Summary: org.apache.commons.collections4.collection; IndexedCollection; true; get; ; ; Argument[this].Element; ReturnValue; value; manual | +| 96 | Summary: org.apache.commons.collections4.collection; IndexedCollection; true; nonUniqueIndexedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 97 | Summary: org.apache.commons.collections4.collection; IndexedCollection; true; uniqueIndexedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 98 | Summary: org.apache.commons.collections4.collection; IndexedCollection; true; values; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 99 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; add; ; ; Argument[0]; Argument[this].Element; value; manual | +| 100 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; addAll; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 101 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 102 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedBag; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 103 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 104 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedList; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 105 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 106 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedMultiSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 107 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 108 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedQueue; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 109 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 110 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; createPredicatedSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 111 | Summary: org.apache.commons.collections4.collection; PredicatedCollection$Builder; true; rejectedElements; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 112 | Summary: org.apache.commons.collections4.collection; PredicatedCollection; true; predicatedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 113 | Summary: org.apache.commons.collections4.collection; SynchronizedCollection; true; synchronizedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 114 | Summary: org.apache.commons.collections4.collection; TransformedCollection; true; transformingCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 115 | Summary: org.apache.commons.collections4.collection; UnmodifiableBoundedCollection; true; unmodifiableBoundedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 116 | Summary: org.apache.commons.collections4.collection; UnmodifiableCollection; true; unmodifiableCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 117 | Summary: org.apache.commons.collections4.iterators; AbstractIteratorDecorator; true; AbstractIteratorDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 118 | Summary: org.apache.commons.collections4.iterators; AbstractListIteratorDecorator; true; AbstractListIteratorDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 119 | Summary: org.apache.commons.collections4.iterators; AbstractListIteratorDecorator; true; getListIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 120 | Summary: org.apache.commons.collections4.iterators; AbstractMapIteratorDecorator; true; AbstractMapIteratorDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 121 | Summary: org.apache.commons.collections4.iterators; AbstractMapIteratorDecorator; true; AbstractMapIteratorDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 122 | Summary: org.apache.commons.collections4.iterators; AbstractMapIteratorDecorator; true; getMapIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 123 | Summary: org.apache.commons.collections4.iterators; AbstractMapIteratorDecorator; true; getMapIterator; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | +| 124 | Summary: org.apache.commons.collections4.iterators; AbstractOrderedMapIteratorDecorator; true; AbstractOrderedMapIteratorDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 125 | Summary: org.apache.commons.collections4.iterators; AbstractOrderedMapIteratorDecorator; true; AbstractOrderedMapIteratorDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 126 | Summary: org.apache.commons.collections4.iterators; AbstractOrderedMapIteratorDecorator; true; getOrderedMapIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 127 | Summary: org.apache.commons.collections4.iterators; AbstractOrderedMapIteratorDecorator; true; getOrderedMapIterator; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | +| 128 | Summary: org.apache.commons.collections4.iterators; AbstractUntypedIteratorDecorator; true; AbstractUntypedIteratorDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 129 | Summary: org.apache.commons.collections4.iterators; AbstractUntypedIteratorDecorator; true; getIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 130 | Summary: org.apache.commons.collections4.iterators; ArrayIterator; true; ArrayIterator; ; ; Argument[0].ArrayElement; Argument[this].Element; value; manual | +| 131 | Summary: org.apache.commons.collections4.iterators; ArrayIterator; true; getArray; ; ; Argument[this].Element; ReturnValue.ArrayElement; value; manual | +| 132 | Summary: org.apache.commons.collections4.iterators; ArrayListIterator; true; ArrayListIterator; ; ; Argument[0].ArrayElement; Argument[this].Element; value; manual | +| 133 | Summary: org.apache.commons.collections4.iterators; BoundedIterator; true; BoundedIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 134 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; CollatingIterator; (Comparator,Collection); ; Argument[1].Element.Element; Argument[this].Element; value; manual | +| 135 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; CollatingIterator; (Comparator,Iterator,Iterator); ; Argument[1].Element; Argument[this].Element; value; manual | +| 136 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; CollatingIterator; (Comparator,Iterator,Iterator); ; Argument[2].Element; Argument[this].Element; value; manual | +| 137 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; CollatingIterator; (Comparator,Iterator[]); ; Argument[1].ArrayElement.Element; Argument[this].Element; value; manual | +| 138 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; addIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 139 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; getIterators; ; ; Argument[this].Element; ReturnValue.Element.Element; value; manual | +| 140 | Summary: org.apache.commons.collections4.iterators; CollatingIterator; true; setIterator; ; ; Argument[1].Element; Argument[this].Element; value; manual | +| 141 | Summary: org.apache.commons.collections4.iterators; EnumerationIterator; true; EnumerationIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 142 | Summary: org.apache.commons.collections4.iterators; EnumerationIterator; true; getEnumeration; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 143 | Summary: org.apache.commons.collections4.iterators; EnumerationIterator; true; setEnumeration; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 144 | Summary: org.apache.commons.collections4.iterators; FilterIterator; true; FilterIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 145 | Summary: org.apache.commons.collections4.iterators; FilterIterator; true; getIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 146 | Summary: org.apache.commons.collections4.iterators; FilterIterator; true; setIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 147 | Summary: org.apache.commons.collections4.iterators; FilterListIterator; true; FilterListIterator; (ListIterator); ; Argument[0].Element; Argument[this].Element; value; manual | +| 148 | Summary: org.apache.commons.collections4.iterators; FilterListIterator; true; FilterListIterator; (ListIterator,Predicate); ; Argument[0].Element; Argument[this].Element; value; manual | +| 149 | Summary: org.apache.commons.collections4.iterators; FilterListIterator; true; getListIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 150 | Summary: org.apache.commons.collections4.iterators; FilterListIterator; true; setListIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 151 | Summary: org.apache.commons.collections4.iterators; IteratorChain; true; IteratorChain; (Collection); ; Argument[0].Element.Element; Argument[this].Element; value; manual | +| 152 | Summary: org.apache.commons.collections4.iterators; IteratorChain; true; IteratorChain; (Iterator); ; Argument[0].Element; Argument[this].Element; value; manual | +| 153 | Summary: org.apache.commons.collections4.iterators; IteratorChain; true; IteratorChain; (Iterator,Iterator); ; Argument[0].Element; Argument[this].Element; value; manual | +| 154 | Summary: org.apache.commons.collections4.iterators; IteratorChain; true; IteratorChain; (Iterator,Iterator); ; Argument[1].Element; Argument[this].Element; value; manual | +| 155 | Summary: org.apache.commons.collections4.iterators; IteratorChain; true; IteratorChain; (Iterator[]); ; Argument[0].ArrayElement.Element; Argument[this].Element; value; manual | +| 156 | Summary: org.apache.commons.collections4.iterators; IteratorChain; true; addIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 157 | Summary: org.apache.commons.collections4.iterators; IteratorEnumeration; true; IteratorEnumeration; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 158 | Summary: org.apache.commons.collections4.iterators; IteratorEnumeration; true; getIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 159 | Summary: org.apache.commons.collections4.iterators; IteratorEnumeration; true; setIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 160 | Summary: org.apache.commons.collections4.iterators; IteratorIterable; true; IteratorIterable; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 161 | Summary: org.apache.commons.collections4.iterators; ListIteratorWrapper; true; ListIteratorWrapper; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 162 | Summary: org.apache.commons.collections4.iterators; LoopingIterator; true; LoopingIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 163 | Summary: org.apache.commons.collections4.iterators; LoopingListIterator; true; LoopingListIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 164 | Summary: org.apache.commons.collections4.iterators; ObjectArrayIterator; true; ObjectArrayIterator; ; ; Argument[0].ArrayElement; Argument[this].Element; value; manual | +| 165 | Summary: org.apache.commons.collections4.iterators; ObjectArrayIterator; true; getArray; ; ; Argument[this].Element; ReturnValue.ArrayElement; value; manual | +| 166 | Summary: org.apache.commons.collections4.iterators; ObjectArrayListIterator; true; ObjectArrayListIterator; ; ; Argument[0].ArrayElement; Argument[this].Element; value; manual | +| 167 | Summary: org.apache.commons.collections4.iterators; PeekingIterator; true; PeekingIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 168 | Summary: org.apache.commons.collections4.iterators; PeekingIterator; true; element; ; ; Argument[this].Element; ReturnValue; value; manual | +| 169 | Summary: org.apache.commons.collections4.iterators; PeekingIterator; true; peek; ; ; Argument[this].Element; ReturnValue; value; manual | +| 170 | Summary: org.apache.commons.collections4.iterators; PeekingIterator; true; peekingIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 171 | Summary: org.apache.commons.collections4.iterators; PermutationIterator; true; PermutationIterator; ; ; Argument[0].Element; Argument[this].Element.Element; value; manual | +| 172 | Summary: org.apache.commons.collections4.iterators; PushbackIterator; true; PushbackIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 173 | Summary: org.apache.commons.collections4.iterators; PushbackIterator; true; pushback; ; ; Argument[0]; Argument[this].Element; value; manual | +| 174 | Summary: org.apache.commons.collections4.iterators; PushbackIterator; true; pushbackIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 175 | Summary: org.apache.commons.collections4.iterators; ReverseListIterator; true; ReverseListIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 176 | Summary: org.apache.commons.collections4.iterators; SingletonIterator; true; SingletonIterator; ; ; Argument[0]; Argument[this].Element; value; manual | +| 177 | Summary: org.apache.commons.collections4.iterators; SingletonListIterator; true; SingletonListIterator; ; ; Argument[0]; Argument[this].Element; value; manual | +| 178 | Summary: org.apache.commons.collections4.iterators; SkippingIterator; true; SkippingIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 179 | Summary: org.apache.commons.collections4.iterators; UniqueFilterIterator; true; UniqueFilterIterator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 180 | Summary: org.apache.commons.collections4.iterators; UnmodifiableIterator; true; unmodifiableIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 181 | Summary: org.apache.commons.collections4.iterators; UnmodifiableListIterator; true; umodifiableListIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 182 | Summary: org.apache.commons.collections4.iterators; UnmodifiableMapIterator; true; unmodifiableMapIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 183 | Summary: org.apache.commons.collections4.iterators; UnmodifiableMapIterator; true; unmodifiableMapIterator; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 184 | Summary: org.apache.commons.collections4.iterators; UnmodifiableOrderedMapIterator; true; unmodifiableOrderedMapIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 185 | Summary: org.apache.commons.collections4.iterators; UnmodifiableOrderedMapIterator; true; unmodifiableOrderedMapIterator; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 186 | Summary: org.apache.commons.collections4.iterators; ZippingIterator; true; ZippingIterator; (Iterator,Iterator); ; Argument[0].Element; Argument[this].Element; value; manual | +| 187 | Summary: org.apache.commons.collections4.iterators; ZippingIterator; true; ZippingIterator; (Iterator,Iterator); ; Argument[1].Element; Argument[this].Element; value; manual | +| 188 | Summary: org.apache.commons.collections4.iterators; ZippingIterator; true; ZippingIterator; (Iterator,Iterator,Iterator); ; Argument[0].Element; Argument[this].Element; value; manual | +| 189 | Summary: org.apache.commons.collections4.iterators; ZippingIterator; true; ZippingIterator; (Iterator,Iterator,Iterator); ; Argument[1].Element; Argument[this].Element; value; manual | +| 190 | Summary: org.apache.commons.collections4.iterators; ZippingIterator; true; ZippingIterator; (Iterator,Iterator,Iterator); ; Argument[2].Element; Argument[this].Element; value; manual | +| 191 | Summary: org.apache.commons.collections4.iterators; ZippingIterator; true; ZippingIterator; (Iterator[]); ; Argument[0].ArrayElement.Element; Argument[this].Element; value; manual | +| 192 | Summary: org.apache.commons.collections4.keyvalue; AbstractKeyValue; true; AbstractKeyValue; ; ; Argument[0]; Argument[this].MapKey; value; manual | +| 193 | Summary: org.apache.commons.collections4.keyvalue; AbstractKeyValue; true; AbstractKeyValue; ; ; Argument[1]; Argument[this].MapValue; value; manual | +| 194 | Summary: org.apache.commons.collections4.keyvalue; AbstractKeyValue; true; setKey; ; ; Argument[0]; Argument[this].MapKey; value; manual | +| 195 | Summary: org.apache.commons.collections4.keyvalue; AbstractKeyValue; true; setKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | +| 196 | Summary: org.apache.commons.collections4.keyvalue; AbstractKeyValue; true; setValue; ; ; Argument[0]; Argument[this].MapValue; value; manual | +| 197 | Summary: org.apache.commons.collections4.keyvalue; AbstractKeyValue; true; setValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 198 | Summary: org.apache.commons.collections4.keyvalue; AbstractMapEntry; true; AbstractMapEntry; ; ; Argument[0]; Argument[this].MapKey; value; manual | +| 199 | Summary: org.apache.commons.collections4.keyvalue; AbstractMapEntry; true; AbstractMapEntry; ; ; Argument[1]; Argument[this].MapValue; value; manual | +| 200 | Summary: org.apache.commons.collections4.keyvalue; AbstractMapEntryDecorator; true; AbstractMapEntryDecorator; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 201 | Summary: org.apache.commons.collections4.keyvalue; AbstractMapEntryDecorator; true; AbstractMapEntryDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 202 | Summary: org.apache.commons.collections4.keyvalue; AbstractMapEntryDecorator; true; getMapEntry; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | +| 203 | Summary: org.apache.commons.collections4.keyvalue; AbstractMapEntryDecorator; true; getMapEntry; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | +| 204 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; DefaultKeyValue; (KeyValue); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 205 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; DefaultKeyValue; (KeyValue); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 206 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; DefaultKeyValue; (Map$Entry); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 207 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; DefaultKeyValue; (Map$Entry); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 208 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; DefaultKeyValue; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | +| 209 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; DefaultKeyValue; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | +| 210 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; toMapEntry; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | +| 211 | Summary: org.apache.commons.collections4.keyvalue; DefaultKeyValue; true; toMapEntry; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | +| 212 | Summary: org.apache.commons.collections4.keyvalue; DefaultMapEntry; true; DefaultMapEntry; (KeyValue); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 213 | Summary: org.apache.commons.collections4.keyvalue; DefaultMapEntry; true; DefaultMapEntry; (KeyValue); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 214 | Summary: org.apache.commons.collections4.keyvalue; DefaultMapEntry; true; DefaultMapEntry; (Map$Entry); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 215 | Summary: org.apache.commons.collections4.keyvalue; DefaultMapEntry; true; DefaultMapEntry; (Map$Entry); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 216 | Summary: org.apache.commons.collections4.keyvalue; DefaultMapEntry; true; DefaultMapEntry; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | +| 217 | Summary: org.apache.commons.collections4.keyvalue; DefaultMapEntry; true; DefaultMapEntry; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | +| 218 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object); ; Argument[0]; Argument[this].Element; value; manual | +| 219 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object); ; Argument[1]; Argument[this].Element; value; manual | +| 220 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object); ; Argument[0]; Argument[this].Element; value; manual | +| 221 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object); ; Argument[1]; Argument[this].Element; value; manual | +| 222 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object); ; Argument[2]; Argument[this].Element; value; manual | +| 223 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object); ; Argument[0]; Argument[this].Element; value; manual | +| 224 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object); ; Argument[1]; Argument[this].Element; value; manual | +| 225 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object); ; Argument[2]; Argument[this].Element; value; manual | +| 226 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object); ; Argument[3]; Argument[this].Element; value; manual | +| 227 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object,Object); ; Argument[0]; Argument[this].Element; value; manual | +| 228 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object,Object); ; Argument[1]; Argument[this].Element; value; manual | +| 229 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object,Object); ; Argument[2]; Argument[this].Element; value; manual | +| 230 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object,Object); ; Argument[3]; Argument[this].Element; value; manual | +| 231 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object,Object,Object,Object,Object); ; Argument[4]; Argument[this].Element; value; manual | +| 232 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object[]); ; Argument[0].ArrayElement; Argument[this].Element; value; manual | +| 233 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; MultiKey; (Object[],boolean); ; Argument[0].ArrayElement; Argument[this].Element; value; manual | +| 234 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; getKey; ; ; Argument[this].Element; ReturnValue; value; manual | +| 235 | Summary: org.apache.commons.collections4.keyvalue; MultiKey; true; getKeys; ; ; Argument[this].Element; ReturnValue.ArrayElement; value; manual | +| 236 | Summary: org.apache.commons.collections4.keyvalue; TiedMapEntry; true; TiedMapEntry; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 237 | Summary: org.apache.commons.collections4.keyvalue; TiedMapEntry; true; TiedMapEntry; ; ; Argument[1]; Argument[this].MapKey; value; manual | +| 238 | Summary: org.apache.commons.collections4.keyvalue; UnmodifiableMapEntry; true; UnmodifiableMapEntry; (KeyValue); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 239 | Summary: org.apache.commons.collections4.keyvalue; UnmodifiableMapEntry; true; UnmodifiableMapEntry; (KeyValue); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 240 | Summary: org.apache.commons.collections4.keyvalue; UnmodifiableMapEntry; true; UnmodifiableMapEntry; (Map$Entry); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 241 | Summary: org.apache.commons.collections4.keyvalue; UnmodifiableMapEntry; true; UnmodifiableMapEntry; (Map$Entry); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 242 | Summary: org.apache.commons.collections4.keyvalue; UnmodifiableMapEntry; true; UnmodifiableMapEntry; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | +| 243 | Summary: org.apache.commons.collections4.keyvalue; UnmodifiableMapEntry; true; UnmodifiableMapEntry; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | +| 244 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; AbstractLinkedList; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 245 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; addFirst; ; ; Argument[0]; Argument[this].Element; value; manual | +| 246 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; addLast; ; ; Argument[0]; Argument[this].Element; value; manual | +| 247 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; getFirst; ; ; Argument[this].Element; ReturnValue; value; manual | +| 248 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; getLast; ; ; Argument[this].Element; ReturnValue; value; manual | +| 249 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; removeFirst; ; ; Argument[this].Element; ReturnValue; value; manual | +| 250 | Summary: org.apache.commons.collections4.list; AbstractLinkedList; true; removeLast; ; ; Argument[this].Element; ReturnValue; value; manual | +| 251 | Summary: org.apache.commons.collections4.list; AbstractListDecorator; true; AbstractListDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 252 | Summary: org.apache.commons.collections4.list; AbstractSerializableListDecorator; true; AbstractSerializableListDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 253 | Summary: org.apache.commons.collections4.list; CursorableLinkedList; true; CursorableLinkedList; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 254 | Summary: org.apache.commons.collections4.list; CursorableLinkedList; true; cursor; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 255 | Summary: org.apache.commons.collections4.list; FixedSizeList; true; fixedSizeList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 256 | Summary: org.apache.commons.collections4.list; GrowthList; true; growthList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 257 | Summary: org.apache.commons.collections4.list; LazyList; true; lazyList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 258 | Summary: org.apache.commons.collections4.list; NodeCachingLinkedList; true; NodeCachingLinkedList; (Collection); ; Argument[0].Element; Argument[this].Element; value; manual | +| 259 | Summary: org.apache.commons.collections4.list; PredicatedList; true; predicatedList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 260 | Summary: org.apache.commons.collections4.list; SetUniqueList; true; asSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 261 | Summary: org.apache.commons.collections4.list; SetUniqueList; true; setUniqueList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 262 | Summary: org.apache.commons.collections4.list; TransformedList; true; transformingList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 263 | Summary: org.apache.commons.collections4.list; TreeList; true; TreeList; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 264 | Summary: org.apache.commons.collections4.list; UnmodifiableList; true; UnmodifiableList; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 265 | Summary: org.apache.commons.collections4.list; UnmodifiableList; true; unmodifiableList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 266 | Summary: org.apache.commons.collections4.map; AbstractHashedMap; true; AbstractHashedMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 267 | Summary: org.apache.commons.collections4.map; AbstractHashedMap; true; AbstractHashedMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 268 | Summary: org.apache.commons.collections4.map; AbstractLinkedMap; true; AbstractLinkedMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 269 | Summary: org.apache.commons.collections4.map; AbstractLinkedMap; true; AbstractLinkedMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 270 | Summary: org.apache.commons.collections4.map; AbstractMapDecorator; true; AbstractMapDecorator; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 271 | Summary: org.apache.commons.collections4.map; AbstractMapDecorator; true; AbstractMapDecorator; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 272 | Summary: org.apache.commons.collections4.map; AbstractMapDecorator; true; decorated; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | +| 273 | Summary: org.apache.commons.collections4.map; AbstractMapDecorator; true; decorated; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | +| 274 | Summary: org.apache.commons.collections4.map; AbstractOrderedMapDecorator; true; AbstractOrderedMapDecorator; (OrderedMap); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 275 | Summary: org.apache.commons.collections4.map; AbstractOrderedMapDecorator; true; AbstractOrderedMapDecorator; (OrderedMap); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 276 | Summary: org.apache.commons.collections4.map; AbstractSortedMapDecorator; true; AbstractSortedMapDecorator; (SortedMap); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 277 | Summary: org.apache.commons.collections4.map; AbstractSortedMapDecorator; true; AbstractSortedMapDecorator; (SortedMap); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 278 | Summary: org.apache.commons.collections4.map; CaseInsensitiveMap; true; CaseInsensitiveMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 279 | Summary: org.apache.commons.collections4.map; CaseInsensitiveMap; true; CaseInsensitiveMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 280 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 281 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 282 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map); ; Argument[1].MapKey; Argument[this].MapKey; value; manual | +| 283 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map); ; Argument[1].MapValue; Argument[this].MapValue; value; manual | +| 284 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map,CompositeMap$MapMutator); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 285 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map,CompositeMap$MapMutator); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 286 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map,CompositeMap$MapMutator); ; Argument[1].MapKey; Argument[this].MapKey; value; manual | +| 287 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map,Map,CompositeMap$MapMutator); ; Argument[1].MapValue; Argument[this].MapValue; value; manual | +| 288 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map[]); ; Argument[0].ArrayElement.MapKey; Argument[this].MapKey; value; manual | +| 289 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map[]); ; Argument[0].ArrayElement.MapValue; Argument[this].MapValue; value; manual | +| 290 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map[],CompositeMap$MapMutator); ; Argument[0].ArrayElement.MapKey; Argument[this].MapKey; value; manual | +| 291 | Summary: org.apache.commons.collections4.map; CompositeMap; true; CompositeMap; (Map[],CompositeMap$MapMutator); ; Argument[0].ArrayElement.MapValue; Argument[this].MapValue; value; manual | +| 292 | Summary: org.apache.commons.collections4.map; CompositeMap; true; addComposited; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 293 | Summary: org.apache.commons.collections4.map; CompositeMap; true; addComposited; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 294 | Summary: org.apache.commons.collections4.map; CompositeMap; true; removeComposited; ; ; Argument[0]; ReturnValue; value; manual | +| 295 | Summary: org.apache.commons.collections4.map; CompositeMap; true; removeComposited; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | +| 296 | Summary: org.apache.commons.collections4.map; CompositeMap; true; removeComposited; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | +| 297 | Summary: org.apache.commons.collections4.map; DefaultedMap; true; DefaultedMap; (Object); ; Argument[0]; Argument[this].MapValue; value; manual | +| 298 | Summary: org.apache.commons.collections4.map; DefaultedMap; true; defaultedMap; (Map,Object); ; Argument[1]; ReturnValue.MapValue; value; manual | +| 299 | Summary: org.apache.commons.collections4.map; DefaultedMap; true; defaultedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 300 | Summary: org.apache.commons.collections4.map; DefaultedMap; true; defaultedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 301 | Summary: org.apache.commons.collections4.map; EntrySetToMapIteratorAdapter; true; EntrySetToMapIteratorAdapter; ; ; Argument[0].Element.MapKey; Argument[this].Element; value; manual | +| 302 | Summary: org.apache.commons.collections4.map; EntrySetToMapIteratorAdapter; true; EntrySetToMapIteratorAdapter; ; ; Argument[0].Element.MapValue; Argument[this].MapValue; value; manual | +| 303 | Summary: org.apache.commons.collections4.map; FixedSizeMap; true; fixedSizeMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 304 | Summary: org.apache.commons.collections4.map; FixedSizeMap; true; fixedSizeMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 305 | Summary: org.apache.commons.collections4.map; FixedSizeSortedMap; true; fixedSizeSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 306 | Summary: org.apache.commons.collections4.map; FixedSizeSortedMap; true; fixedSizeSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 307 | Summary: org.apache.commons.collections4.map; Flat3Map; true; Flat3Map; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 308 | Summary: org.apache.commons.collections4.map; Flat3Map; true; Flat3Map; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 309 | Summary: org.apache.commons.collections4.map; HashedMap; true; HashedMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 310 | Summary: org.apache.commons.collections4.map; HashedMap; true; HashedMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 311 | Summary: org.apache.commons.collections4.map; LRUMap; true; LRUMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 312 | Summary: org.apache.commons.collections4.map; LRUMap; true; LRUMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 313 | Summary: org.apache.commons.collections4.map; LRUMap; true; LRUMap; (Map,boolean); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 314 | Summary: org.apache.commons.collections4.map; LRUMap; true; LRUMap; (Map,boolean); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 315 | Summary: org.apache.commons.collections4.map; LRUMap; true; get; (Object,boolean); ; Argument[0].MapValue; ReturnValue; value; manual | +| 316 | Summary: org.apache.commons.collections4.map; LazyMap; true; lazyMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 317 | Summary: org.apache.commons.collections4.map; LazyMap; true; lazyMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 318 | Summary: org.apache.commons.collections4.map; LazySortedMap; true; lazySortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 319 | Summary: org.apache.commons.collections4.map; LazySortedMap; true; lazySortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 320 | Summary: org.apache.commons.collections4.map; LinkedMap; true; LinkedMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 321 | Summary: org.apache.commons.collections4.map; LinkedMap; true; LinkedMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 322 | Summary: org.apache.commons.collections4.map; LinkedMap; true; asList; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | +| 323 | Summary: org.apache.commons.collections4.map; LinkedMap; true; get; (int); ; Argument[this].MapKey; ReturnValue; value; manual | +| 324 | Summary: org.apache.commons.collections4.map; LinkedMap; true; getValue; (int); ; Argument[this].MapValue; ReturnValue; value; manual | +| 325 | Summary: org.apache.commons.collections4.map; LinkedMap; true; remove; (int); ; Argument[this].MapValue; ReturnValue; value; manual | +| 326 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; asList; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | +| 327 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; get; (int); ; Argument[this].MapKey; ReturnValue; value; manual | +| 328 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; getValue; (int); ; Argument[this].MapValue; ReturnValue; value; manual | +| 329 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; keyList; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | +| 330 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; listOrderedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 331 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; listOrderedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 332 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; put; (int,Object,Object); ; Argument[1]; Argument[this].MapKey; value; manual | +| 333 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; put; (int,Object,Object); ; Argument[2]; Argument[this].MapValue; value; manual | +| 334 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; putAll; (int,Map); ; Argument[1].MapKey; Argument[this].MapKey; value; manual | +| 335 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; putAll; (int,Map); ; Argument[1].MapValue; Argument[this].MapValue; value; manual | +| 336 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; remove; (int); ; Argument[this].MapValue; ReturnValue; value; manual | +| 337 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; setValue; ; ; Argument[1]; Argument[this].MapValue; value; manual | +| 338 | Summary: org.apache.commons.collections4.map; ListOrderedMap; true; valueList; ; ; Argument[this].MapValue; ReturnValue.Element; value; manual | +| 339 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; get; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 340 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object); ; Argument[0..1]; Argument[this].MapKey.Element; value; manual | +| 341 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object); ; Argument[2]; Argument[this].MapValue; value; manual | +| 342 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object,Object); ; Argument[0..2]; Argument[this].MapKey.Element; value; manual | +| 343 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object,Object); ; Argument[3]; Argument[this].MapValue; value; manual | +| 344 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object,Object,Object); ; Argument[0..3]; Argument[this].MapKey.Element; value; manual | +| 345 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object,Object,Object); ; Argument[4]; Argument[this].MapValue; value; manual | +| 346 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object,Object,Object,Object); ; Argument[0..4]; Argument[this].MapKey.Element; value; manual | +| 347 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; (Object,Object,Object,Object,Object,Object); ; Argument[5]; Argument[this].MapValue; value; manual | +| 348 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; put; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 349 | Summary: org.apache.commons.collections4.map; MultiKeyMap; true; removeMultiKey; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 350 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; getCollection; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | +| 351 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; iterator; (); ; Argument[this].MapKey; ReturnValue.Element.MapKey; value; manual | +| 352 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; iterator; (); ; Argument[this].MapValue.Element; ReturnValue.Element.MapValue; value; manual | +| 353 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; iterator; (Object); ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | +| 354 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; multiValueMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 355 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; multiValueMap; ; ; Argument[0].MapValue.Element; ReturnValue.MapValue.Element; value; manual | +| 356 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; putAll; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 357 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; putAll; (Map); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | +| 358 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; putAll; (Map); ; Argument[0].MapValue; Argument[this].MapValue.Element; value; manual | +| 359 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; putAll; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 360 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; putAll; (Object,Collection); ; Argument[0]; Argument[this].MapKey; value; manual | +| 361 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; putAll; (Object,Collection); ; Argument[1].Element; Argument[this].MapValue.Element; value; manual | +| 362 | Summary: org.apache.commons.collections4.map; MultiValueMap; true; values; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | +| 363 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 364 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 365 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (PassiveExpiringMap$ExpirationPolicy,Map); ; Argument[1].MapKey; Argument[this].MapKey; value; manual | +| 366 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (PassiveExpiringMap$ExpirationPolicy,Map); ; Argument[1].MapValue; Argument[this].MapValue; value; manual | +| 367 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (long,Map); ; Argument[1].MapKey; Argument[this].MapKey; value; manual | +| 368 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (long,Map); ; Argument[1].MapValue; Argument[this].MapValue; value; manual | +| 369 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (long,TimeUnit,Map); ; Argument[2].MapKey; Argument[this].MapKey; value; manual | +| 370 | Summary: org.apache.commons.collections4.map; PassiveExpiringMap; true; PassiveExpiringMap; (long,TimeUnit,Map); ; Argument[2].MapValue; Argument[this].MapValue; value; manual | +| 371 | Summary: org.apache.commons.collections4.map; PredicatedMap; true; predicatedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 372 | Summary: org.apache.commons.collections4.map; PredicatedMap; true; predicatedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 373 | Summary: org.apache.commons.collections4.map; PredicatedSortedMap; true; predicatedSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 374 | Summary: org.apache.commons.collections4.map; PredicatedSortedMap; true; predicatedSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 375 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (KeyValue); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 376 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (KeyValue); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 377 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (Map$Entry); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 378 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (Map$Entry); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 379 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 380 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 381 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | +| 382 | Summary: org.apache.commons.collections4.map; SingletonMap; true; SingletonMap; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | +| 383 | Summary: org.apache.commons.collections4.map; SingletonMap; true; setValue; ; ; Argument[0]; Argument[this].MapValue; value; manual | +| 384 | Summary: org.apache.commons.collections4.map; TransformedMap; true; transformingMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 385 | Summary: org.apache.commons.collections4.map; TransformedMap; true; transformingMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 386 | Summary: org.apache.commons.collections4.map; TransformedSortedMap; true; transformingSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 387 | Summary: org.apache.commons.collections4.map; TransformedSortedMap; true; transformingSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 388 | Summary: org.apache.commons.collections4.map; UnmodifiableEntrySet; true; unmodifiableEntrySet; ; ; Argument[0].Element.MapKey; ReturnValue.Element.MapKey; value; manual | +| 389 | Summary: org.apache.commons.collections4.map; UnmodifiableEntrySet; true; unmodifiableEntrySet; ; ; Argument[0].Element.MapValue; ReturnValue.Element.MapValue; value; manual | +| 390 | Summary: org.apache.commons.collections4.map; UnmodifiableMap; true; unmodifiableMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 391 | Summary: org.apache.commons.collections4.map; UnmodifiableMap; true; unmodifiableMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 392 | Summary: org.apache.commons.collections4.map; UnmodifiableOrderedMap; true; unmodifiableOrderedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 393 | Summary: org.apache.commons.collections4.map; UnmodifiableOrderedMap; true; unmodifiableOrderedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 394 | Summary: org.apache.commons.collections4.map; UnmodifiableSortedMap; true; unmodifiableSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 395 | Summary: org.apache.commons.collections4.map; UnmodifiableSortedMap; true; unmodifiableSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 396 | Summary: org.apache.commons.collections4.multimap; ArrayListValuedHashMap; true; ArrayListValuedHashMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 397 | Summary: org.apache.commons.collections4.multimap; ArrayListValuedHashMap; true; ArrayListValuedHashMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue.Element; value; manual | +| 398 | Summary: org.apache.commons.collections4.multimap; ArrayListValuedHashMap; true; ArrayListValuedHashMap; (MultiValuedMap); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 399 | Summary: org.apache.commons.collections4.multimap; ArrayListValuedHashMap; true; ArrayListValuedHashMap; (MultiValuedMap); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | +| 400 | Summary: org.apache.commons.collections4.multimap; HashSetValuedHashMap; true; HashSetValuedHashMap; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 401 | Summary: org.apache.commons.collections4.multimap; HashSetValuedHashMap; true; HashSetValuedHashMap; (Map); ; Argument[0].MapValue; Argument[this].MapValue.Element; value; manual | +| 402 | Summary: org.apache.commons.collections4.multimap; HashSetValuedHashMap; true; HashSetValuedHashMap; (MultiValuedMap); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 403 | Summary: org.apache.commons.collections4.multimap; HashSetValuedHashMap; true; HashSetValuedHashMap; (MultiValuedMap); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | +| 404 | Summary: org.apache.commons.collections4.multimap; TransformedMultiValuedMap; true; transformingMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 405 | Summary: org.apache.commons.collections4.multimap; TransformedMultiValuedMap; true; transformingMap; ; ; Argument[0].MapValue.Element; ReturnValue.MapValue.Element; value; manual | +| 406 | Summary: org.apache.commons.collections4.multimap; UnmodifiableMultiValuedMap; true; unmodifiableMultiValuedMap; (MultiValuedMap); ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 407 | Summary: org.apache.commons.collections4.multimap; UnmodifiableMultiValuedMap; true; unmodifiableMultiValuedMap; (MultiValuedMap); ; Argument[0].MapValue.Element; ReturnValue.MapValue.Element; value; manual | +| 408 | Summary: org.apache.commons.collections4.multiset; HashMultiSet; true; HashMultiSet; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 409 | Summary: org.apache.commons.collections4.multiset; PredicatedMultiSet; true; predicatedMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 410 | Summary: org.apache.commons.collections4.multiset; SynchronizedMultiSet; true; synchronizedMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 411 | Summary: org.apache.commons.collections4.multiset; UnmodifiableMultiSet; true; unmodifiableMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 412 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (ClassLoader,String); ; Argument[1]; ReturnValue; taint; manual | +| 413 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (File); ; Argument[0]; ReturnValue; taint; manual | +| 414 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (InputStream); ; Argument[0]; ReturnValue; taint; manual | +| 415 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (Path); ; Argument[0]; ReturnValue; taint; manual | +| 416 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (Reader); ; Argument[0]; ReturnValue; taint; manual | +| 417 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (String); ; Argument[0]; ReturnValue; taint; manual | +| 418 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (URI); ; Argument[0]; ReturnValue; taint; manual | +| 419 | Summary: org.apache.commons.collections4.properties; AbstractPropertiesFactory; true; load; (URL); ; Argument[0]; ReturnValue; taint; manual | +| 420 | Summary: org.apache.commons.collections4.queue; CircularFifoQueue; true; CircularFifoQueue; (Collection); ; Argument[0].Element; Argument[this].Element; value; manual | +| 421 | Summary: org.apache.commons.collections4.queue; CircularFifoQueue; true; get; ; ; Argument[this].Element; ReturnValue; value; manual | +| 422 | Summary: org.apache.commons.collections4.queue; PredicatedQueue; true; predicatedQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 423 | Summary: org.apache.commons.collections4.queue; SynchronizedQueue; true; synchronizedQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 424 | Summary: org.apache.commons.collections4.queue; TransformedQueue; true; transformingQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 425 | Summary: org.apache.commons.collections4.queue; UnmodifiableQueue; true; unmodifiableQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 426 | Summary: org.apache.commons.collections4.set; AbstractNavigableSetDecorator; true; AbstractNavigableSetDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 427 | Summary: org.apache.commons.collections4.set; AbstractSetDecorator; true; AbstractSetDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 428 | Summary: org.apache.commons.collections4.set; AbstractSortedSetDecorator; true; AbstractSortedSetDecorator; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 429 | Summary: org.apache.commons.collections4.set; CompositeSet$SetMutator; true; add; ; ; Argument[2]; Argument[0].Element; value; manual | +| 430 | Summary: org.apache.commons.collections4.set; CompositeSet$SetMutator; true; add; ; ; Argument[2]; Argument[1].Element.Element; value; manual | +| 431 | Summary: org.apache.commons.collections4.set; CompositeSet$SetMutator; true; addAll; ; ; Argument[2].Element; Argument[0].Element; value; manual | +| 432 | Summary: org.apache.commons.collections4.set; CompositeSet$SetMutator; true; addAll; ; ; Argument[2].Element; Argument[1].Element.Element; value; manual | +| 433 | Summary: org.apache.commons.collections4.set; CompositeSet; true; CompositeSet; (Set); ; Argument[0].Element; Argument[this].Element; value; manual | +| 434 | Summary: org.apache.commons.collections4.set; CompositeSet; true; CompositeSet; (Set[]); ; Argument[0].ArrayElement.Element; Argument[this].Element; value; manual | +| 435 | Summary: org.apache.commons.collections4.set; CompositeSet; true; addComposited; (Set); ; Argument[0].Element; Argument[this].Element; value; manual | +| 436 | Summary: org.apache.commons.collections4.set; CompositeSet; true; addComposited; (Set,Set); ; Argument[0].Element; Argument[this].Element; value; manual | +| 437 | Summary: org.apache.commons.collections4.set; CompositeSet; true; addComposited; (Set,Set); ; Argument[1].Element; Argument[this].Element; value; manual | +| 438 | Summary: org.apache.commons.collections4.set; CompositeSet; true; addComposited; (Set[]); ; Argument[0].ArrayElement.Element; Argument[this].Element; value; manual | +| 439 | Summary: org.apache.commons.collections4.set; CompositeSet; true; getSets; ; ; Argument[this].Element; ReturnValue.Element.Element; value; manual | +| 440 | Summary: org.apache.commons.collections4.set; CompositeSet; true; toSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 441 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; add; (Object); ; Argument[0]; Argument[this].Element; value; manual | +| 442 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; add; ; ; Argument[1]; Argument[this].Element; value; manual | +| 443 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; addAll; ; ; Argument[1].Element; Argument[this].Element; value; manual | +| 444 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; asList; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 445 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; get; ; ; Argument[this].Element; ReturnValue; value; manual | +| 446 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; listOrderedSet; (List); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 447 | Summary: org.apache.commons.collections4.set; ListOrderedSet; true; listOrderedSet; (Set); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 448 | Summary: org.apache.commons.collections4.set; MapBackedSet; true; mapBackedSet; ; ; Argument[0].MapKey; ReturnValue.Element; value; manual | +| 449 | Summary: org.apache.commons.collections4.set; PredicatedNavigableSet; true; predicatedNavigableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 450 | Summary: org.apache.commons.collections4.set; PredicatedSet; true; predicatedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 451 | Summary: org.apache.commons.collections4.set; PredicatedSortedSet; true; predicatedSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 452 | Summary: org.apache.commons.collections4.set; TransformedNavigableSet; true; transformingNavigableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 453 | Summary: org.apache.commons.collections4.set; TransformedSet; true; transformingSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 454 | Summary: org.apache.commons.collections4.set; TransformedSortedSet; true; transformingSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 455 | Summary: org.apache.commons.collections4.set; UnmodifiableNavigableSet; true; unmodifiableNavigableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 456 | Summary: org.apache.commons.collections4.set; UnmodifiableSet; true; unmodifiableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 457 | Summary: org.apache.commons.collections4.set; UnmodifiableSortedSet; true; unmodifiableSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 458 | Summary: org.apache.commons.collections4.splitmap; AbstractIterableGetMapDecorator; true; AbstractIterableGetMapDecorator; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 459 | Summary: org.apache.commons.collections4.splitmap; AbstractIterableGetMapDecorator; true; AbstractIterableGetMapDecorator; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 460 | Summary: org.apache.commons.collections4.splitmap; TransformedSplitMap; true; transformingMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 461 | Summary: org.apache.commons.collections4.splitmap; TransformedSplitMap; true; transformingMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 462 | Summary: org.apache.commons.collections4.trie; AbstractPatriciaTrie; true; select; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | +| 463 | Summary: org.apache.commons.collections4.trie; AbstractPatriciaTrie; true; select; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | +| 464 | Summary: org.apache.commons.collections4.trie; AbstractPatriciaTrie; true; selectKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | +| 465 | Summary: org.apache.commons.collections4.trie; AbstractPatriciaTrie; true; selectValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 466 | Summary: org.apache.commons.collections4.trie; PatriciaTrie; true; PatriciaTrie; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 467 | Summary: org.apache.commons.collections4.trie; PatriciaTrie; true; PatriciaTrie; ; ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 468 | Summary: org.apache.commons.collections4.trie; UnmodifiableTrie; true; unmodifiableTrie; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 469 | Summary: org.apache.commons.collections4.trie; UnmodifiableTrie; true; unmodifiableTrie; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 470 | Summary: org.apache.commons.collections4; ArrayStack; true; peek; ; ; Argument[this].Element; ReturnValue; value; manual | +| 471 | Summary: org.apache.commons.collections4; ArrayStack; true; pop; ; ; Argument[this].Element; ReturnValue; value; manual | +| 472 | Summary: org.apache.commons.collections4; ArrayStack; true; push; ; ; Argument[0]; Argument[this].Element; value; manual | +| 473 | Summary: org.apache.commons.collections4; ArrayStack; true; push; ; ; Argument[0]; ReturnValue; value; manual | +| 474 | Summary: org.apache.commons.collections4; Bag; true; add; ; ; Argument[0]; Argument[this].Element; value; manual | +| 475 | Summary: org.apache.commons.collections4; Bag; true; uniqueSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 476 | Summary: org.apache.commons.collections4; BagUtils; true; collectionBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 477 | Summary: org.apache.commons.collections4; BagUtils; true; predicatedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 478 | Summary: org.apache.commons.collections4; BagUtils; true; predicatedSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 479 | Summary: org.apache.commons.collections4; BagUtils; true; synchronizedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 480 | Summary: org.apache.commons.collections4; BagUtils; true; synchronizedSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 481 | Summary: org.apache.commons.collections4; BagUtils; true; transformingBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 482 | Summary: org.apache.commons.collections4; BagUtils; true; transformingSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 483 | Summary: org.apache.commons.collections4; BagUtils; true; unmodifiableBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 484 | Summary: org.apache.commons.collections4; BagUtils; true; unmodifiableSortedBag; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 485 | Summary: org.apache.commons.collections4; BidiMap; true; getKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | +| 486 | Summary: org.apache.commons.collections4; BidiMap; true; inverseBidiMap; ; ; Argument[this].MapKey; ReturnValue.MapValue; value; manual | +| 487 | Summary: org.apache.commons.collections4; BidiMap; true; inverseBidiMap; ; ; Argument[this].MapValue; ReturnValue.MapKey; value; manual | +| 488 | Summary: org.apache.commons.collections4; BidiMap; true; removeValue; ; ; Argument[this].MapKey; ReturnValue; value; manual | +| 489 | Summary: org.apache.commons.collections4; CollectionUtils; true; addAll; (Collection,Enumeration); ; Argument[1].Element; Argument[0].Element; value; manual | +| 490 | Summary: org.apache.commons.collections4; CollectionUtils; true; addAll; (Collection,Iterable); ; Argument[1].Element; Argument[0].Element; value; manual | +| 491 | Summary: org.apache.commons.collections4; CollectionUtils; true; addAll; (Collection,Iterator); ; Argument[1].Element; Argument[0].Element; value; manual | +| 492 | Summary: org.apache.commons.collections4; CollectionUtils; true; addAll; (Collection,Object[]); ; Argument[1].ArrayElement; Argument[0].Element; value; manual | +| 493 | Summary: org.apache.commons.collections4; CollectionUtils; true; addIgnoreNull; ; ; Argument[1]; Argument[0].Element; value; manual | +| 494 | Summary: org.apache.commons.collections4; CollectionUtils; true; collate; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 495 | Summary: org.apache.commons.collections4; CollectionUtils; true; collate; ; ; Argument[1].Element; ReturnValue.Element; value; manual | +| 496 | Summary: org.apache.commons.collections4; CollectionUtils; true; disjunction; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 497 | Summary: org.apache.commons.collections4; CollectionUtils; true; disjunction; ; ; Argument[1].Element; ReturnValue.Element; value; manual | +| 498 | Summary: org.apache.commons.collections4; CollectionUtils; true; emptyIfNull; ; ; Argument[0]; ReturnValue; value; manual | +| 499 | Summary: org.apache.commons.collections4; CollectionUtils; true; extractSingleton; ; ; Argument[0].Element; ReturnValue; value; manual | +| 500 | Summary: org.apache.commons.collections4; CollectionUtils; true; find; ; ; Argument[0].Element; ReturnValue; value; manual | +| 501 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Iterable,int); ; Argument[0].Element; ReturnValue; value; manual | +| 502 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Iterator,int); ; Argument[0].Element; ReturnValue; value; manual | +| 503 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Map,int); ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 504 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Map,int); ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 505 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Object,int); ; Argument[0].ArrayElement; ReturnValue; value; manual | +| 506 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Object,int); ; Argument[0].Element; ReturnValue; value; manual | +| 507 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Object,int); ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 508 | Summary: org.apache.commons.collections4; CollectionUtils; true; get; (Object,int); ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 509 | Summary: org.apache.commons.collections4; CollectionUtils; true; getCardinalityMap; ; ; Argument[0].Element; ReturnValue.MapKey; value; manual | +| 510 | Summary: org.apache.commons.collections4; CollectionUtils; true; intersection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 511 | Summary: org.apache.commons.collections4; CollectionUtils; true; intersection; ; ; Argument[1].Element; ReturnValue.Element; value; manual | +| 512 | Summary: org.apache.commons.collections4; CollectionUtils; true; permutations; ; ; Argument[0].Element; ReturnValue.Element.Element; value; manual | +| 513 | Summary: org.apache.commons.collections4; CollectionUtils; true; predicatedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 514 | Summary: org.apache.commons.collections4; CollectionUtils; true; removeAll; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 515 | Summary: org.apache.commons.collections4; CollectionUtils; true; retainAll; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 516 | Summary: org.apache.commons.collections4; CollectionUtils; true; select; (Iterable,Predicate); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 517 | Summary: org.apache.commons.collections4; CollectionUtils; true; select; (Iterable,Predicate,Collection); ; Argument[0].Element; Argument[2].Element; value; manual | +| 518 | Summary: org.apache.commons.collections4; CollectionUtils; true; select; (Iterable,Predicate,Collection); ; Argument[2]; ReturnValue; value; manual | +| 519 | Summary: org.apache.commons.collections4; CollectionUtils; true; select; (Iterable,Predicate,Collection,Collection); ; Argument[0].Element; Argument[2].Element; value; manual | +| 520 | Summary: org.apache.commons.collections4; CollectionUtils; true; select; (Iterable,Predicate,Collection,Collection); ; Argument[0].Element; Argument[3].Element; value; manual | +| 521 | Summary: org.apache.commons.collections4; CollectionUtils; true; select; (Iterable,Predicate,Collection,Collection); ; Argument[2]; ReturnValue; value; manual | +| 522 | Summary: org.apache.commons.collections4; CollectionUtils; true; selectRejected; (Iterable,Predicate); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 523 | Summary: org.apache.commons.collections4; CollectionUtils; true; selectRejected; (Iterable,Predicate,Collection); ; Argument[0].Element; Argument[2].Element; value; manual | +| 524 | Summary: org.apache.commons.collections4; CollectionUtils; true; selectRejected; (Iterable,Predicate,Collection); ; Argument[2]; ReturnValue; value; manual | +| 525 | Summary: org.apache.commons.collections4; CollectionUtils; true; subtract; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 526 | Summary: org.apache.commons.collections4; CollectionUtils; true; synchronizedCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 527 | Summary: org.apache.commons.collections4; CollectionUtils; true; transformingCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 528 | Summary: org.apache.commons.collections4; CollectionUtils; true; union; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 529 | Summary: org.apache.commons.collections4; CollectionUtils; true; union; ; ; Argument[1].Element; ReturnValue.Element; value; manual | +| 530 | Summary: org.apache.commons.collections4; CollectionUtils; true; unmodifiableCollection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 531 | Summary: org.apache.commons.collections4; EnumerationUtils; true; get; ; ; Argument[0].Element; ReturnValue; value; manual | +| 532 | Summary: org.apache.commons.collections4; EnumerationUtils; true; toList; (Enumeration); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 533 | Summary: org.apache.commons.collections4; EnumerationUtils; true; toList; (StringTokenizer); ; Argument[0]; ReturnValue.Element; taint; manual | +| 534 | Summary: org.apache.commons.collections4; FluentIterable; true; append; (Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 535 | Summary: org.apache.commons.collections4; FluentIterable; true; append; (Iterable); ; Argument[this].Element; ReturnValue.Element; value; manual | +| 536 | Summary: org.apache.commons.collections4; FluentIterable; true; append; (Object[]); ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | +| 537 | Summary: org.apache.commons.collections4; FluentIterable; true; append; (Object[]); ; Argument[this].Element; ReturnValue.Element; value; manual | +| 538 | Summary: org.apache.commons.collections4; FluentIterable; true; asEnumeration; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 539 | Summary: org.apache.commons.collections4; FluentIterable; true; collate; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 540 | Summary: org.apache.commons.collections4; FluentIterable; true; collate; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 541 | Summary: org.apache.commons.collections4; FluentIterable; true; copyInto; ; ; Argument[this].Element; Argument[0].Element; value; manual | +| 542 | Summary: org.apache.commons.collections4; FluentIterable; true; eval; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 543 | Summary: org.apache.commons.collections4; FluentIterable; true; filter; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 544 | Summary: org.apache.commons.collections4; FluentIterable; true; get; ; ; Argument[this].Element; ReturnValue; value; manual | +| 545 | Summary: org.apache.commons.collections4; FluentIterable; true; limit; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 546 | Summary: org.apache.commons.collections4; FluentIterable; true; loop; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 547 | Summary: org.apache.commons.collections4; FluentIterable; true; of; (Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 548 | Summary: org.apache.commons.collections4; FluentIterable; true; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | +| 549 | Summary: org.apache.commons.collections4; FluentIterable; true; of; (Object[]); ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | +| 550 | Summary: org.apache.commons.collections4; FluentIterable; true; reverse; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 551 | Summary: org.apache.commons.collections4; FluentIterable; true; skip; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 552 | Summary: org.apache.commons.collections4; FluentIterable; true; toArray; ; ; Argument[this].Element; ReturnValue.ArrayElement; value; manual | +| 553 | Summary: org.apache.commons.collections4; FluentIterable; true; toList; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 554 | Summary: org.apache.commons.collections4; FluentIterable; true; unique; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 555 | Summary: org.apache.commons.collections4; FluentIterable; true; unmodifiable; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 556 | Summary: org.apache.commons.collections4; FluentIterable; true; zip; (Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 557 | Summary: org.apache.commons.collections4; FluentIterable; true; zip; (Iterable); ; Argument[this].Element; ReturnValue.Element; value; manual | +| 558 | Summary: org.apache.commons.collections4; FluentIterable; true; zip; (Iterable[]); ; Argument[0].ArrayElement.Element; ReturnValue.Element; value; manual | +| 559 | Summary: org.apache.commons.collections4; FluentIterable; true; zip; (Iterable[]); ; Argument[this].Element; ReturnValue.Element; value; manual | +| 560 | Summary: org.apache.commons.collections4; Get; true; entrySet; ; ; Argument[this].MapKey; ReturnValue.Element.MapKey; value; manual | +| 561 | Summary: org.apache.commons.collections4; Get; true; entrySet; ; ; Argument[this].MapValue; ReturnValue.Element.MapValue; value; manual | +| 562 | Summary: org.apache.commons.collections4; Get; true; get; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 563 | Summary: org.apache.commons.collections4; Get; true; keySet; (); ; Argument[this].MapKey; ReturnValue.Element; value; manual | +| 564 | Summary: org.apache.commons.collections4; Get; true; remove; (Object); ; Argument[this].MapValue; ReturnValue; value; manual | +| 565 | Summary: org.apache.commons.collections4; Get; true; values; (); ; Argument[this].MapValue; ReturnValue.Element; value; manual | +| 566 | Summary: org.apache.commons.collections4; IterableGet; true; mapIterator; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | +| 567 | Summary: org.apache.commons.collections4; IterableGet; true; mapIterator; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | +| 568 | Summary: org.apache.commons.collections4; IterableUtils; true; boundedIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 569 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 570 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable); ; Argument[1].Element; ReturnValue.Element; value; manual | +| 571 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 572 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable); ; Argument[1].Element; ReturnValue.Element; value; manual | +| 573 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable); ; Argument[2].Element; ReturnValue.Element; value; manual | +| 574 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable,Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 575 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable,Iterable); ; Argument[1].Element; ReturnValue.Element; value; manual | +| 576 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable,Iterable); ; Argument[2].Element; ReturnValue.Element; value; manual | +| 577 | Summary: org.apache.commons.collections4; IterableUtils; true; chainedIterable; (Iterable,Iterable,Iterable,Iterable); ; Argument[3].Element; ReturnValue.Element; value; manual | +| 578 | Summary: org.apache.commons.collections4; IterableUtils; true; collatedIterable; (Comparator,Iterable,Iterable); ; Argument[1].Element; ReturnValue.Element; value; manual | +| 579 | Summary: org.apache.commons.collections4; IterableUtils; true; collatedIterable; (Comparator,Iterable,Iterable); ; Argument[2].Element; ReturnValue.Element; value; manual | +| 580 | Summary: org.apache.commons.collections4; IterableUtils; true; collatedIterable; (Iterable,Iterable); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 581 | Summary: org.apache.commons.collections4; IterableUtils; true; collatedIterable; (Iterable,Iterable); ; Argument[1].Element; ReturnValue.Element; value; manual | +| 582 | Summary: org.apache.commons.collections4; IterableUtils; true; emptyIfNull; ; ; Argument[0]; ReturnValue; value; manual | +| 583 | Summary: org.apache.commons.collections4; IterableUtils; true; filteredIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 584 | Summary: org.apache.commons.collections4; IterableUtils; true; find; ; ; Argument[0].Element; ReturnValue; value; manual | +| 585 | Summary: org.apache.commons.collections4; IterableUtils; true; first; ; ; Argument[0].Element; ReturnValue; value; manual | +| 586 | Summary: org.apache.commons.collections4; IterableUtils; true; forEachButLast; ; ; Argument[0].Element; ReturnValue; value; manual | +| 587 | Summary: org.apache.commons.collections4; IterableUtils; true; get; ; ; Argument[0].Element; ReturnValue; value; manual | +| 588 | Summary: org.apache.commons.collections4; IterableUtils; true; loopingIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 589 | Summary: org.apache.commons.collections4; IterableUtils; true; partition; ; ; Argument[0].Element; ReturnValue.Element.Element; value; manual | +| 590 | Summary: org.apache.commons.collections4; IterableUtils; true; reversedIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 591 | Summary: org.apache.commons.collections4; IterableUtils; true; skippingIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 592 | Summary: org.apache.commons.collections4; IterableUtils; true; toList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 593 | Summary: org.apache.commons.collections4; IterableUtils; true; toString; ; ; Argument[2]; ReturnValue; taint; manual | +| 594 | Summary: org.apache.commons.collections4; IterableUtils; true; toString; ; ; Argument[3]; ReturnValue; taint; manual | +| 595 | Summary: org.apache.commons.collections4; IterableUtils; true; toString; ; ; Argument[4]; ReturnValue; taint; manual | +| 596 | Summary: org.apache.commons.collections4; IterableUtils; true; uniqueIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 597 | Summary: org.apache.commons.collections4; IterableUtils; true; unmodifiableIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 598 | Summary: org.apache.commons.collections4; IterableUtils; true; zippingIterable; (Iterable,Iterable); ; Argument[1].Element; ReturnValue.Element; value; manual | +| 599 | Summary: org.apache.commons.collections4; IterableUtils; true; zippingIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 600 | Summary: org.apache.commons.collections4; IteratorUtils; true; arrayIterator; ; ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | +| 601 | Summary: org.apache.commons.collections4; IteratorUtils; true; arrayListIterator; ; ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | +| 602 | Summary: org.apache.commons.collections4; IteratorUtils; true; asEnumeration; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 603 | Summary: org.apache.commons.collections4; IteratorUtils; true; asIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 604 | Summary: org.apache.commons.collections4; IteratorUtils; true; asIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 605 | Summary: org.apache.commons.collections4; IteratorUtils; true; asMultipleUseIterable; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 606 | Summary: org.apache.commons.collections4; IteratorUtils; true; boundedIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 607 | Summary: org.apache.commons.collections4; IteratorUtils; true; chainedIterator; (Collection); ; Argument[0].Element.Element; ReturnValue.Element; value; manual | +| 608 | Summary: org.apache.commons.collections4; IteratorUtils; true; chainedIterator; (Iterator,Iterator); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 609 | Summary: org.apache.commons.collections4; IteratorUtils; true; chainedIterator; (Iterator,Iterator); ; Argument[1].Element; ReturnValue.Element; value; manual | +| 610 | Summary: org.apache.commons.collections4; IteratorUtils; true; collatedIterator; (Comparator,Collection); ; Argument[1].Element.Element; ReturnValue.Element; value; manual | +| 611 | Summary: org.apache.commons.collections4; IteratorUtils; true; collatedIterator; (Comparator,Iterator,Iterator); ; Argument[1].Element; ReturnValue.Element; value; manual | +| 612 | Summary: org.apache.commons.collections4; IteratorUtils; true; collatedIterator; (Comparator,Iterator,Iterator); ; Argument[2].Element; ReturnValue.Element; value; manual | +| 613 | Summary: org.apache.commons.collections4; IteratorUtils; true; collatedIterator; (Comparator,Iterator[]); ; Argument[1].ArrayElement.Element; ReturnValue.Element; value; manual | +| 614 | Summary: org.apache.commons.collections4; IteratorUtils; true; filteredIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 615 | Summary: org.apache.commons.collections4; IteratorUtils; true; filteredListIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 616 | Summary: org.apache.commons.collections4; IteratorUtils; true; find; ; ; Argument[0].Element; ReturnValue; value; manual | +| 617 | Summary: org.apache.commons.collections4; IteratorUtils; true; first; ; ; Argument[0].Element; ReturnValue; value; manual | +| 618 | Summary: org.apache.commons.collections4; IteratorUtils; true; forEachButLast; ; ; Argument[0].Element; ReturnValue; value; manual | +| 619 | Summary: org.apache.commons.collections4; IteratorUtils; true; get; ; ; Argument[0].Element; ReturnValue; value; manual | +| 620 | Summary: org.apache.commons.collections4; IteratorUtils; true; getIterator; ; ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | +| 621 | Summary: org.apache.commons.collections4; IteratorUtils; true; getIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 622 | Summary: org.apache.commons.collections4; IteratorUtils; true; getIterator; ; ; Argument[0].MapValue; ReturnValue.Element; value; manual | +| 623 | Summary: org.apache.commons.collections4; IteratorUtils; true; getIterator; ; ; Argument[0]; ReturnValue.Element; value; manual | +| 624 | Summary: org.apache.commons.collections4; IteratorUtils; true; loopingIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 625 | Summary: org.apache.commons.collections4; IteratorUtils; true; loopingListIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 626 | Summary: org.apache.commons.collections4; IteratorUtils; true; peekingIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 627 | Summary: org.apache.commons.collections4; IteratorUtils; true; pushbackIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 628 | Summary: org.apache.commons.collections4; IteratorUtils; true; singletonIterator; ; ; Argument[0]; ReturnValue.Element; value; manual | +| 629 | Summary: org.apache.commons.collections4; IteratorUtils; true; singletonListIterator; ; ; Argument[0]; ReturnValue.Element; value; manual | +| 630 | Summary: org.apache.commons.collections4; IteratorUtils; true; skippingIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 631 | Summary: org.apache.commons.collections4; IteratorUtils; true; toArray; ; ; Argument[0].Element; ReturnValue.ArrayElement; value; manual | +| 632 | Summary: org.apache.commons.collections4; IteratorUtils; true; toList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 633 | Summary: org.apache.commons.collections4; IteratorUtils; true; toListIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 634 | Summary: org.apache.commons.collections4; IteratorUtils; true; toString; ; ; Argument[2]; ReturnValue; taint; manual | +| 635 | Summary: org.apache.commons.collections4; IteratorUtils; true; toString; ; ; Argument[3]; ReturnValue; taint; manual | +| 636 | Summary: org.apache.commons.collections4; IteratorUtils; true; toString; ; ; Argument[4]; ReturnValue; taint; manual | +| 637 | Summary: org.apache.commons.collections4; IteratorUtils; true; unmodifiableIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 638 | Summary: org.apache.commons.collections4; IteratorUtils; true; unmodifiableListIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 639 | Summary: org.apache.commons.collections4; IteratorUtils; true; unmodifiableMapIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 640 | Summary: org.apache.commons.collections4; IteratorUtils; true; unmodifiableMapIterator; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 641 | Summary: org.apache.commons.collections4; IteratorUtils; true; zippingIterator; (Iterator,Iterator); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 642 | Summary: org.apache.commons.collections4; IteratorUtils; true; zippingIterator; (Iterator,Iterator); ; Argument[1].Element; ReturnValue.Element; value; manual | +| 643 | Summary: org.apache.commons.collections4; IteratorUtils; true; zippingIterator; (Iterator,Iterator,Iterator); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 644 | Summary: org.apache.commons.collections4; IteratorUtils; true; zippingIterator; (Iterator,Iterator,Iterator); ; Argument[1].Element; ReturnValue.Element; value; manual | +| 645 | Summary: org.apache.commons.collections4; IteratorUtils; true; zippingIterator; (Iterator,Iterator,Iterator); ; Argument[2].Element; ReturnValue.Element; value; manual | +| 646 | Summary: org.apache.commons.collections4; IteratorUtils; true; zippingIterator; (Iterator[]); ; Argument[0].ArrayElement.Element; ReturnValue.Element; value; manual | +| 647 | Summary: org.apache.commons.collections4; KeyValue; true; getKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | +| 648 | Summary: org.apache.commons.collections4; KeyValue; true; getValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 649 | Summary: org.apache.commons.collections4; ListUtils; true; defaultIfNull; ; ; Argument[0]; ReturnValue; value; manual | +| 650 | Summary: org.apache.commons.collections4; ListUtils; true; defaultIfNull; ; ; Argument[1]; ReturnValue; value; manual | +| 651 | Summary: org.apache.commons.collections4; ListUtils; true; emptyIfNull; ; ; Argument[0]; ReturnValue; value; manual | +| 652 | Summary: org.apache.commons.collections4; ListUtils; true; fixedSizeList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 653 | Summary: org.apache.commons.collections4; ListUtils; true; intersection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 654 | Summary: org.apache.commons.collections4; ListUtils; true; intersection; ; ; Argument[1].Element; ReturnValue.Element; value; manual | +| 655 | Summary: org.apache.commons.collections4; ListUtils; true; lazyList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 656 | Summary: org.apache.commons.collections4; ListUtils; true; longestCommonSubsequence; (CharSequence,CharSequence); ; Argument[0]; ReturnValue; taint; manual | +| 657 | Summary: org.apache.commons.collections4; ListUtils; true; longestCommonSubsequence; (CharSequence,CharSequence); ; Argument[1]; ReturnValue; taint; manual | +| 658 | Summary: org.apache.commons.collections4; ListUtils; true; longestCommonSubsequence; (List,List); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 659 | Summary: org.apache.commons.collections4; ListUtils; true; longestCommonSubsequence; (List,List); ; Argument[1].Element; ReturnValue.Element; value; manual | +| 660 | Summary: org.apache.commons.collections4; ListUtils; true; longestCommonSubsequence; (List,List,Equator); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 661 | Summary: org.apache.commons.collections4; ListUtils; true; longestCommonSubsequence; (List,List,Equator); ; Argument[1].Element; ReturnValue.Element; value; manual | +| 662 | Summary: org.apache.commons.collections4; ListUtils; true; partition; ; ; Argument[0].Element; ReturnValue.Element.Element; value; manual | +| 663 | Summary: org.apache.commons.collections4; ListUtils; true; predicatedList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 664 | Summary: org.apache.commons.collections4; ListUtils; true; removeAll; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 665 | Summary: org.apache.commons.collections4; ListUtils; true; retainAll; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 666 | Summary: org.apache.commons.collections4; ListUtils; true; select; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 667 | Summary: org.apache.commons.collections4; ListUtils; true; selectRejected; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 668 | Summary: org.apache.commons.collections4; ListUtils; true; subtract; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 669 | Summary: org.apache.commons.collections4; ListUtils; true; sum; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 670 | Summary: org.apache.commons.collections4; ListUtils; true; sum; ; ; Argument[1].Element; ReturnValue.Element; value; manual | +| 671 | Summary: org.apache.commons.collections4; ListUtils; true; synchronizedList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 672 | Summary: org.apache.commons.collections4; ListUtils; true; transformedList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 673 | Summary: org.apache.commons.collections4; ListUtils; true; union; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 674 | Summary: org.apache.commons.collections4; ListUtils; true; union; ; ; Argument[1].Element; ReturnValue.Element; value; manual | +| 675 | Summary: org.apache.commons.collections4; ListUtils; true; unmodifiableList; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 676 | Summary: org.apache.commons.collections4; MapIterator; true; getKey; ; ; Argument[this].Element; ReturnValue; value; manual | +| 677 | Summary: org.apache.commons.collections4; MapIterator; true; getValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 678 | Summary: org.apache.commons.collections4; MapIterator; true; setValue; ; ; Argument[0]; Argument[this].MapValue; value; manual | +| 679 | Summary: org.apache.commons.collections4; MapIterator; true; setValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 680 | Summary: org.apache.commons.collections4; MapUtils; true; emptyIfNull; ; ; Argument[0]; ReturnValue; value; manual | +| 681 | Summary: org.apache.commons.collections4; MapUtils; true; fixedSizeMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 682 | Summary: org.apache.commons.collections4; MapUtils; true; fixedSizeMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 683 | Summary: org.apache.commons.collections4; MapUtils; true; fixedSizeSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 684 | Summary: org.apache.commons.collections4; MapUtils; true; fixedSizeSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 685 | Summary: org.apache.commons.collections4; MapUtils; true; getMap; ; ; Argument[0].MapValue; ReturnValue; value; manual | +| 686 | Summary: org.apache.commons.collections4; MapUtils; true; getMap; ; ; Argument[2]; ReturnValue; value; manual | +| 687 | Summary: org.apache.commons.collections4; MapUtils; true; getObject; ; ; Argument[0].MapValue; ReturnValue; value; manual | +| 688 | Summary: org.apache.commons.collections4; MapUtils; true; getObject; ; ; Argument[2]; ReturnValue; value; manual | +| 689 | Summary: org.apache.commons.collections4; MapUtils; true; getString; ; ; Argument[0].MapValue; ReturnValue; value; manual | +| 690 | Summary: org.apache.commons.collections4; MapUtils; true; getString; ; ; Argument[2]; ReturnValue; value; manual | +| 691 | Summary: org.apache.commons.collections4; MapUtils; true; invertMap; ; ; Argument[0].MapKey; ReturnValue.MapValue; value; manual | +| 692 | Summary: org.apache.commons.collections4; MapUtils; true; invertMap; ; ; Argument[0].MapValue; ReturnValue.MapKey; value; manual | +| 693 | Summary: org.apache.commons.collections4; MapUtils; true; iterableMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 694 | Summary: org.apache.commons.collections4; MapUtils; true; iterableMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 695 | Summary: org.apache.commons.collections4; MapUtils; true; iterableSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 696 | Summary: org.apache.commons.collections4; MapUtils; true; iterableSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 697 | Summary: org.apache.commons.collections4; MapUtils; true; lazyMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 698 | Summary: org.apache.commons.collections4; MapUtils; true; lazyMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 699 | Summary: org.apache.commons.collections4; MapUtils; true; lazySortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 700 | Summary: org.apache.commons.collections4; MapUtils; true; lazySortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 701 | Summary: org.apache.commons.collections4; MapUtils; true; multiValueMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 702 | Summary: org.apache.commons.collections4; MapUtils; true; multiValueMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 703 | Summary: org.apache.commons.collections4; MapUtils; true; orderedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 704 | Summary: org.apache.commons.collections4; MapUtils; true; orderedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 705 | Summary: org.apache.commons.collections4; MapUtils; true; populateMap; (Map,Iterable,Transformer); ; Argument[1].Element; Argument[0].MapValue; value; manual | +| 706 | Summary: org.apache.commons.collections4; MapUtils; true; populateMap; (MultiMap,Iterable,Transformer); ; Argument[1].Element; Argument[0].MapValue.Element; value; manual | +| 707 | Summary: org.apache.commons.collections4; MapUtils; true; predicatedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 708 | Summary: org.apache.commons.collections4; MapUtils; true; predicatedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 709 | Summary: org.apache.commons.collections4; MapUtils; true; predicatedSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 710 | Summary: org.apache.commons.collections4; MapUtils; true; predicatedSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 711 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.ArrayElement; Argument[0].MapKey; value; manual | +| 712 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.ArrayElement; Argument[0].MapValue; value; manual | +| 713 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.ArrayElement; ReturnValue.MapKey; value; manual | +| 714 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.ArrayElement; ReturnValue.MapValue; value; manual | +| 715 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.MapKey; Argument[0].MapKey; value; manual | +| 716 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.MapKey; ReturnValue.MapKey; value; manual | +| 717 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.MapValue; Argument[0].MapValue; value; manual | +| 718 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement.MapValue; ReturnValue.MapValue; value; manual | +| 719 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement; Argument[0].MapKey; value; manual | +| 720 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement; Argument[0].MapValue; value; manual | +| 721 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement; ReturnValue.MapKey; value; manual | +| 722 | Summary: org.apache.commons.collections4; MapUtils; true; putAll; ; ; Argument[1].ArrayElement; ReturnValue.MapValue; value; manual | +| 723 | Summary: org.apache.commons.collections4; MapUtils; true; safeAddToMap; ; ; Argument[1]; Argument[0].MapKey; value; manual | +| 724 | Summary: org.apache.commons.collections4; MapUtils; true; safeAddToMap; ; ; Argument[2]; Argument[0].MapValue; value; manual | +| 725 | Summary: org.apache.commons.collections4; MapUtils; true; synchronizedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 726 | Summary: org.apache.commons.collections4; MapUtils; true; synchronizedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 727 | Summary: org.apache.commons.collections4; MapUtils; true; synchronizedSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 728 | Summary: org.apache.commons.collections4; MapUtils; true; synchronizedSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 729 | Summary: org.apache.commons.collections4; MapUtils; true; toMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 730 | Summary: org.apache.commons.collections4; MapUtils; true; toMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 731 | Summary: org.apache.commons.collections4; MapUtils; true; transformedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 732 | Summary: org.apache.commons.collections4; MapUtils; true; transformedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 733 | Summary: org.apache.commons.collections4; MapUtils; true; transformedSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 734 | Summary: org.apache.commons.collections4; MapUtils; true; transformedSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 735 | Summary: org.apache.commons.collections4; MapUtils; true; unmodifiableMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 736 | Summary: org.apache.commons.collections4; MapUtils; true; unmodifiableMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 737 | Summary: org.apache.commons.collections4; MapUtils; true; unmodifiableSortedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 738 | Summary: org.apache.commons.collections4; MapUtils; true; unmodifiableSortedMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 739 | Summary: org.apache.commons.collections4; MultiMap; true; get; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 740 | Summary: org.apache.commons.collections4; MultiMap; true; put; ; ; Argument[0]; Argument[this].MapKey; value; manual | +| 741 | Summary: org.apache.commons.collections4; MultiMap; true; put; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | +| 742 | Summary: org.apache.commons.collections4; MultiMap; true; values; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | +| 743 | Summary: org.apache.commons.collections4; MultiMapUtils; true; emptyIfNull; ; ; Argument[0]; ReturnValue; value; manual | +| 744 | Summary: org.apache.commons.collections4; MultiMapUtils; true; getCollection; ; ; Argument[0].MapValue; ReturnValue; value; manual | +| 745 | Summary: org.apache.commons.collections4; MultiMapUtils; true; getValuesAsBag; ; ; Argument[0].MapValue.Element; ReturnValue.Element; value; manual | +| 746 | Summary: org.apache.commons.collections4; MultiMapUtils; true; getValuesAsList; ; ; Argument[0].MapValue.Element; ReturnValue.Element; value; manual | +| 747 | Summary: org.apache.commons.collections4; MultiMapUtils; true; getValuesAsSet; ; ; Argument[0].MapValue.Element; ReturnValue.Element; value; manual | +| 748 | Summary: org.apache.commons.collections4; MultiMapUtils; true; transformedMultiValuedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 749 | Summary: org.apache.commons.collections4; MultiMapUtils; true; transformedMultiValuedMap; ; ; Argument[0].MapValue.Element; ReturnValue.MapValue.Element; value; manual | +| 750 | Summary: org.apache.commons.collections4; MultiMapUtils; true; unmodifiableMultiValuedMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 751 | Summary: org.apache.commons.collections4; MultiMapUtils; true; unmodifiableMultiValuedMap; ; ; Argument[0].MapValue.Element; ReturnValue.MapValue.Element; value; manual | +| 752 | Summary: org.apache.commons.collections4; MultiSet$Entry; true; getElement; ; ; Argument[this].Element; ReturnValue; value; manual | +| 753 | Summary: org.apache.commons.collections4; MultiSet; true; add; ; ; Argument[0]; Argument[this].Element; value; manual | +| 754 | Summary: org.apache.commons.collections4; MultiSet; true; entrySet; ; ; Argument[this].Element; ReturnValue.Element.Element; value; manual | +| 755 | Summary: org.apache.commons.collections4; MultiSet; true; uniqueSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 756 | Summary: org.apache.commons.collections4; MultiSetUtils; true; predicatedMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 757 | Summary: org.apache.commons.collections4; MultiSetUtils; true; synchronizedMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 758 | Summary: org.apache.commons.collections4; MultiSetUtils; true; unmodifiableMultiSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 759 | Summary: org.apache.commons.collections4; MultiValuedMap; true; asMap; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | +| 760 | Summary: org.apache.commons.collections4; MultiValuedMap; true; asMap; ; ; Argument[this].MapValue.Element; ReturnValue.MapValue.Element; value; manual | +| 761 | Summary: org.apache.commons.collections4; MultiValuedMap; true; entries; ; ; Argument[this].MapKey; ReturnValue.Element.MapKey; value; manual | +| 762 | Summary: org.apache.commons.collections4; MultiValuedMap; true; entries; ; ; Argument[this].MapValue.Element; ReturnValue.Element.MapValue; value; manual | +| 763 | Summary: org.apache.commons.collections4; MultiValuedMap; true; get; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | +| 764 | Summary: org.apache.commons.collections4; MultiValuedMap; true; keySet; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | +| 765 | Summary: org.apache.commons.collections4; MultiValuedMap; true; keys; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | +| 766 | Summary: org.apache.commons.collections4; MultiValuedMap; true; mapIterator; ; ; Argument[this].MapKey; ReturnValue.Element; value; manual | +| 767 | Summary: org.apache.commons.collections4; MultiValuedMap; true; mapIterator; ; ; Argument[this].MapValue.Element; ReturnValue.MapValue; value; manual | +| 768 | Summary: org.apache.commons.collections4; MultiValuedMap; true; put; ; ; Argument[0]; Argument[this].MapKey; value; manual | +| 769 | Summary: org.apache.commons.collections4; MultiValuedMap; true; put; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | +| 770 | Summary: org.apache.commons.collections4; MultiValuedMap; true; putAll; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 771 | Summary: org.apache.commons.collections4; MultiValuedMap; true; putAll; (Map); ; Argument[0].MapValue; Argument[this].MapValue.Element; value; manual | +| 772 | Summary: org.apache.commons.collections4; MultiValuedMap; true; putAll; (MultiValuedMap); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 773 | Summary: org.apache.commons.collections4; MultiValuedMap; true; putAll; (MultiValuedMap); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | +| 774 | Summary: org.apache.commons.collections4; MultiValuedMap; true; putAll; (Object,Iterable); ; Argument[0]; Argument[this].MapKey; value; manual | +| 775 | Summary: org.apache.commons.collections4; MultiValuedMap; true; putAll; (Object,Iterable); ; Argument[1].Element; Argument[this].MapValue.Element; value; manual | +| 776 | Summary: org.apache.commons.collections4; MultiValuedMap; true; remove; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | +| 777 | Summary: org.apache.commons.collections4; MultiValuedMap; true; values; ; ; Argument[this].MapValue.Element; ReturnValue.Element; value; manual | +| 778 | Summary: org.apache.commons.collections4; OrderedIterator; true; previous; ; ; Argument[this].Element; ReturnValue; value; manual | +| 779 | Summary: org.apache.commons.collections4; OrderedMap; true; firstKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | +| 780 | Summary: org.apache.commons.collections4; OrderedMap; true; lastKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | +| 781 | Summary: org.apache.commons.collections4; OrderedMap; true; nextKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | +| 782 | Summary: org.apache.commons.collections4; OrderedMap; true; previousKey; ; ; Argument[this].MapKey; ReturnValue; value; manual | +| 783 | Summary: org.apache.commons.collections4; Put; true; put; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | +| 784 | Summary: org.apache.commons.collections4; Put; true; put; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | +| 785 | Summary: org.apache.commons.collections4; Put; true; put; (Object,Object); ; Argument[this].MapValue; ReturnValue; value; manual | +| 786 | Summary: org.apache.commons.collections4; Put; true; putAll; (Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 787 | Summary: org.apache.commons.collections4; Put; true; putAll; (Map); ; Argument[0].MapValue; Argument[this].MapValue; value; manual | +| 788 | Summary: org.apache.commons.collections4; QueueUtils; true; predicatedQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 789 | Summary: org.apache.commons.collections4; QueueUtils; true; synchronizedQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 790 | Summary: org.apache.commons.collections4; QueueUtils; true; transformingQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 791 | Summary: org.apache.commons.collections4; QueueUtils; true; unmodifiableQueue; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 792 | Summary: org.apache.commons.collections4; SetUtils$SetView; true; copyInto; ; ; Argument[this].Element; Argument[0].Element; value; manual | +| 793 | Summary: org.apache.commons.collections4; SetUtils$SetView; true; createIterator; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 794 | Summary: org.apache.commons.collections4; SetUtils$SetView; true; toSet; ; ; Argument[this].Element; ReturnValue.Element; value; manual | +| 795 | Summary: org.apache.commons.collections4; SetUtils; true; difference; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 796 | Summary: org.apache.commons.collections4; SetUtils; true; disjunction; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 797 | Summary: org.apache.commons.collections4; SetUtils; true; disjunction; ; ; Argument[1].Element; ReturnValue.Element; value; manual | +| 798 | Summary: org.apache.commons.collections4; SetUtils; true; emptyIfNull; ; ; Argument[0]; ReturnValue; value; manual | +| 799 | Summary: org.apache.commons.collections4; SetUtils; true; hashSet; ; ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | +| 800 | Summary: org.apache.commons.collections4; SetUtils; true; intersection; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 801 | Summary: org.apache.commons.collections4; SetUtils; true; intersection; ; ; Argument[1].Element; ReturnValue.Element; value; manual | +| 802 | Summary: org.apache.commons.collections4; SetUtils; true; orderedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 803 | Summary: org.apache.commons.collections4; SetUtils; true; predicatedNavigableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 804 | Summary: org.apache.commons.collections4; SetUtils; true; predicatedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 805 | Summary: org.apache.commons.collections4; SetUtils; true; predicatedSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 806 | Summary: org.apache.commons.collections4; SetUtils; true; synchronizedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 807 | Summary: org.apache.commons.collections4; SetUtils; true; synchronizedSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 808 | Summary: org.apache.commons.collections4; SetUtils; true; transformedNavigableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 809 | Summary: org.apache.commons.collections4; SetUtils; true; transformedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 810 | Summary: org.apache.commons.collections4; SetUtils; true; transformedSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 811 | Summary: org.apache.commons.collections4; SetUtils; true; union; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 812 | Summary: org.apache.commons.collections4; SetUtils; true; union; ; ; Argument[1].Element; ReturnValue.Element; value; manual | +| 813 | Summary: org.apache.commons.collections4; SetUtils; true; unmodifiableNavigableSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 814 | Summary: org.apache.commons.collections4; SetUtils; true; unmodifiableSet; (Object[]); ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | +| 815 | Summary: org.apache.commons.collections4; SetUtils; true; unmodifiableSet; (Set); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 816 | Summary: org.apache.commons.collections4; SetUtils; true; unmodifiableSortedSet; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 817 | Summary: org.apache.commons.collections4; SortedBag; true; first; ; ; Argument[this].Element; ReturnValue; value; manual | +| 818 | Summary: org.apache.commons.collections4; SortedBag; true; last; ; ; Argument[this].Element; ReturnValue; value; manual | +| 819 | Summary: org.apache.commons.collections4; SplitMapUtils; true; readableMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 820 | Summary: org.apache.commons.collections4; SplitMapUtils; true; readableMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 821 | Summary: org.apache.commons.collections4; SplitMapUtils; true; writableMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 822 | Summary: org.apache.commons.collections4; SplitMapUtils; true; writableMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 823 | Summary: org.apache.commons.collections4; Trie; true; prefixMap; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | +| 824 | Summary: org.apache.commons.collections4; Trie; true; prefixMap; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | +| 825 | Summary: org.apache.commons.collections4; TrieUtils; true; unmodifiableTrie; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 826 | Summary: org.apache.commons.collections4; TrieUtils; true; unmodifiableTrie; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | edges | Test.java:228:18:228:29 | map : AbstractMapDecorator [] : Object | Test.java:228:41:228:43 | map : AbstractMapDecorator [] : Object | provenance | | | Test.java:228:18:228:29 | map : AbstractMapDecorator [] : String | Test.java:228:41:228:43 | map : AbstractMapDecorator [] : String | provenance | | @@ -875,59 +879,59 @@ edges | Test.java:228:18:228:29 | map : TransformedSortedMap [] : String | Test.java:228:41:228:43 | map : TransformedSortedMap [] : String | provenance | | | Test.java:228:18:228:29 | map : TreeBidiMap [] : String | Test.java:228:41:228:43 | map : TreeBidiMap [] : String | provenance | | | Test.java:228:18:228:29 | map : Trie [] : String | Test.java:228:41:228:43 | map : Trie [] : String | provenance | | -| Test.java:228:41:228:43 | map : AbstractMapDecorator [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : AbstractMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : BidiMap [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : BidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : CaseInsensitiveMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : CompositeMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : DefaultedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : DualHashBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : DualLinkedHashBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : DualTreeBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : FixedSizeMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : FixedSizeSortedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : Flat3Map [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : HashedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : IterableMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : IterableSortedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : LRUMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : LazyMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : LazySortedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : LinkedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : ListOrderedMap [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : ListOrderedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : Map [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : Map [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:52 | keySet(...) : Set [, ] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MultiMap [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MultiValueMap [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MultiValueMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MyAbstractBidiMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MyAbstractDualBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MyAbstractHashedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MyAbstractLinkedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MyAbstractMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MyAbstractOrderedMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MyAbstractSortedBidiMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : MyAbstractSortedMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : OrderedBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : OrderedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : PassiveExpiringMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : PatriciaTrie [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : PredicatedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : PredicatedSortedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : Put [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : Put [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : SingletonMap [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : SingletonMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : SortedBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : SortedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : TransformedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : TransformedSortedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : TreeBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:228:41:228:43 | map : Trie [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:18 | +| Test.java:228:41:228:43 | map : AbstractMapDecorator [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : AbstractMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : BidiMap [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : BidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : CaseInsensitiveMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : CompositeMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : DefaultedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : DualHashBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : DualLinkedHashBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : DualTreeBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : FixedSizeMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : FixedSizeSortedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : Flat3Map [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : HashedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : IterableMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : IterableSortedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : LRUMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : LazyMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : LazySortedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : LinkedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : ListOrderedMap [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : ListOrderedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : Map [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : Map [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:52 | keySet(...) : Set [, ] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MultiMap [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MultiValueMap [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MultiValueMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MyAbstractBidiMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MyAbstractDualBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MyAbstractHashedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MyAbstractLinkedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MyAbstractMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MyAbstractOrderedMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MyAbstractSortedBidiMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : MyAbstractSortedMapDecorator [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : OrderedBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : OrderedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : PassiveExpiringMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : PatriciaTrie [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : PredicatedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : PredicatedSortedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : Put [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : Put [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : SingletonMap [] : Object | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : SingletonMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : SortedBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : SortedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : TransformedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : TransformedSortedMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : TreeBidiMap [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:228:41:228:43 | map : Trie [] : String | Test.java:228:41:228:52 | keySet(...) : Set [] : String | provenance | MaD:19 | | Test.java:228:41:228:52 | keySet(...) : Set [, ] : String | Test.java:228:41:228:63 | iterator(...) : Iterator [, ] : String | provenance | MaD:3 | | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | | Test.java:228:41:228:52 | keySet(...) : Set [] : Object | Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | @@ -981,59 +985,59 @@ edges | Test.java:228:41:228:52 | keySet(...) : Set [] : String | Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | provenance | MaD:3 | | Test.java:228:41:228:52 | keySet(...) : Set [] : String | Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | provenance | MaD:3 | | Test.java:228:41:228:52 | keySet(...) : Set [] : String | Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | provenance | MaD:3 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | -| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:6 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : Object | Test.java:228:41:228:70 | next(...) : Object | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | +| Test.java:228:41:228:63 | iterator(...) : Iterator [] : String | Test.java:228:41:228:70 | next(...) : String | provenance | MaD:7 | | Test.java:229:24:229:32 | array : Object[] [[]] : String | Test.java:229:44:229:48 | array : Object[] [[]] : String | provenance | | | Test.java:229:24:229:32 | array : String[] [[]] : String | Test.java:229:44:229:48 | array : String[] [[]] : String | provenance | | | Test.java:229:44:229:48 | array : Object[] [[]] : String | Test.java:229:44:229:51 | ...[...] : String | provenance | | @@ -1208,91 +1212,91 @@ edges | Test.java:230:44:230:45 | it : TreeBag [] : String | Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | provenance | MaD:3 | | Test.java:230:44:230:45 | it : TreeList [] : String | Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | provenance | MaD:3 | | Test.java:230:44:230:45 | it : UnmodifiableList [] : String | Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | provenance | MaD:3 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : Object | Test.java:230:44:230:63 | next(...) : Object [] : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | -| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:6 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : Object | Test.java:230:44:230:63 | next(...) : Object [] : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : Object | Test.java:230:44:230:63 | next(...) : Object | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | +| Test.java:230:44:230:56 | iterator(...) : Iterator [] : String | Test.java:230:44:230:63 | next(...) : String | provenance | MaD:7 | | Test.java:231:19:231:32 | it : ArrayIterator [] : String | Test.java:231:44:231:45 | it : ArrayIterator [] : String | provenance | | | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | Test.java:231:44:231:45 | it : ArrayListIterator [] : String | provenance | | | Test.java:231:19:231:32 | it : BoundedIterator [] : String | Test.java:231:44:231:45 | it : BoundedIterator [] : String | provenance | | @@ -1336,49 +1340,49 @@ edges | Test.java:231:19:231:32 | it : SkippingIterator [] : String | Test.java:231:44:231:45 | it : SkippingIterator [] : String | provenance | | | Test.java:231:19:231:32 | it : UniqueFilterIterator [] : String | Test.java:231:44:231:45 | it : UniqueFilterIterator [] : String | provenance | | | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:45 | it : ZippingIterator [] : String | provenance | | -| Test.java:231:44:231:45 | it : ArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : ArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : BoundedIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : Cursor [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : EntrySetToMapIteratorAdapter [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : EnumerationIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : FilterIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : FilterListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : Iterator [, ] : String | Test.java:231:44:231:52 | next(...) : Object [] : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : Iterator [, ] : Object | Test.java:231:44:231:52 | next(...) : Object [] : Object | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : Iterator [, ] : String | Test.java:231:44:231:52 | next(...) : Object [] : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : Iterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : ListIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : ListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : ListIteratorWrapper [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : LoopingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : LoopingListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : MapIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : MyAbstractIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : MyAbstractListIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : MyAbstractMapIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : MyAbstractUntypedIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : ObjectArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : ObjectArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : OrderedMapIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : PeekingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : PermutationIterator [, ] : String | Test.java:231:44:231:52 | next(...) : Object [] : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : PushbackIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : PushbackIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : ResettableIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : ResettableIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : ResettableListIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : ResettableListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : ReverseListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : SingletonIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : SingletonListIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : SkippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : UniqueFilterIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | -| Test.java:231:44:231:45 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:6 | +| Test.java:231:44:231:45 | it : ArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : ArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : BoundedIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : Cursor [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : EntrySetToMapIteratorAdapter [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : EnumerationIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : FilterIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : FilterListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : Iterator [, ] : String | Test.java:231:44:231:52 | next(...) : Object [] : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : Iterator [, ] : Object | Test.java:231:44:231:52 | next(...) : Object [] : Object | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : Iterator [, ] : String | Test.java:231:44:231:52 | next(...) : Object [] : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : Iterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : ListIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : ListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : ListIteratorWrapper [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : LoopingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : LoopingListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : MapIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : MyAbstractIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : MyAbstractListIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : MyAbstractMapIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : MyAbstractUntypedIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : ObjectArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : ObjectArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : OrderedMapIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : PeekingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : PermutationIterator [, ] : String | Test.java:231:44:231:52 | next(...) : Object [] : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : PushbackIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : PushbackIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : ResettableIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : ResettableIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : ResettableListIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : ResettableListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : ReverseListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : SingletonIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : SingletonListIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : SkippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : UniqueFilterIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | +| Test.java:231:44:231:45 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | provenance | MaD:7 | | Test.java:232:20:232:31 | map : AbstractMapDecorator [] : Object | Test.java:232:43:232:45 | map : AbstractMapDecorator [] : Object | provenance | | | Test.java:232:20:232:31 | map : AbstractMapDecorator [] : String | Test.java:232:43:232:45 | map : AbstractMapDecorator [] : String | provenance | | | Test.java:232:20:232:31 | map : BidiMap [] : Object | Test.java:232:43:232:45 | map : BidiMap [] : Object | provenance | | @@ -1408,7 +1412,6 @@ edges | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | Test.java:232:43:232:45 | map : MultiKeyMap [] : String | provenance | | | Test.java:232:20:232:31 | map : MultiMap [, ] : Object | Test.java:232:43:232:45 | map : MultiMap [, ] : Object | provenance | | | Test.java:232:20:232:31 | map : MultiMap [, ] : String | Test.java:232:43:232:45 | map : MultiMap [, ] : String | provenance | | -| Test.java:232:20:232:31 | map : MultiMap [] : Object | Test.java:232:43:232:45 | map : MultiMap [] : Object | provenance | | | Test.java:232:20:232:31 | map : MultiValueMap [, ] : Object | Test.java:232:43:232:45 | map : MultiValueMap [, ] : Object | provenance | | | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | Test.java:232:43:232:45 | map : MultiValueMap [, ] : String | provenance | | | Test.java:232:20:232:31 | map : MultiValueMap [] : Object | Test.java:232:43:232:45 | map : MultiValueMap [] : Object | provenance | | @@ -1438,75 +1441,74 @@ edges | Test.java:232:20:232:31 | map : TransformedSortedMap [] : String | Test.java:232:43:232:45 | map : TransformedSortedMap [] : String | provenance | | | Test.java:232:20:232:31 | map : TreeBidiMap [] : String | Test.java:232:43:232:45 | map : TreeBidiMap [] : String | provenance | | | Test.java:232:20:232:31 | map : Trie [] : String | Test.java:232:43:232:45 | map : Trie [] : String | provenance | | -| Test.java:232:43:232:45 | map : AbstractMapDecorator [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : AbstractMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : BidiMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : BidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : CaseInsensitiveMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : DefaultedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : DefaultedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : DualHashBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : DualLinkedHashBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : DualTreeBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : FixedSizeMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : FixedSizeSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : Flat3Map [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : HashedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : IterableMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : IterableSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : LRUMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : LazyMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : LazySortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : LinkedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : ListOrderedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : ListOrderedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : Map [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : Map [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : Map [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MultiKeyMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MultiMap [, ] : Object | Test.java:232:43:232:55 | get(...) : Object [] : Object | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MultiMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MultiMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MultiValueMap [, ] : Object | Test.java:232:43:232:55 | get(...) : Object [] : Object | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MultiValueMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MultiValueMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MultiValueMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MyAbstractBidiMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MyAbstractDualBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MyAbstractHashedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MyAbstractLinkedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MyAbstractMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MyAbstractOrderedMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MyAbstractSortedBidiMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : MyAbstractSortedMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : OrderedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : OrderedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : PassiveExpiringMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : PatriciaTrie [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : PredicatedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : PredicatedSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : Put [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : Put [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : SingletonMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : SingletonMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : SortedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : SortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : TransformedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : TransformedSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : TreeBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | -| Test.java:232:43:232:45 | map : Trie [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:17 | +| Test.java:232:43:232:45 | map : AbstractMapDecorator [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : AbstractMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : BidiMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : BidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : CaseInsensitiveMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : DefaultedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : DefaultedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : DualHashBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : DualLinkedHashBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : DualTreeBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : FixedSizeMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : FixedSizeSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : Flat3Map [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : HashedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : IterableMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : IterableSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : LRUMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : LazyMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : LazySortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : LinkedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : ListOrderedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : ListOrderedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : Map [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : Map [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : Map [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MultiKeyMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MultiMap [, ] : Object | Test.java:232:43:232:55 | get(...) : Object [] : Object | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MultiMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MultiValueMap [, ] : Object | Test.java:232:43:232:55 | get(...) : Object [] : Object | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MultiValueMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MultiValueMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MultiValueMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MyAbstractBidiMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MyAbstractDualBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MyAbstractHashedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MyAbstractLinkedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MyAbstractMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MyAbstractOrderedMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MyAbstractSortedBidiMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : MyAbstractSortedMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : OrderedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : OrderedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : PassiveExpiringMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : PatriciaTrie [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : PredicatedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : PredicatedSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : Put [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : Put [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : SingletonMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : SingletonMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : SortedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : SortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : TransformedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : TransformedSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : TreeBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | +| Test.java:232:43:232:45 | map : Trie [] : String | Test.java:232:43:232:55 | get(...) : String | provenance | MaD:18 | | Test.java:234:19:234:42 | container : Enumeration [] : String | Test.java:234:54:234:62 | container : Enumeration [] : String | provenance | | | Test.java:234:19:234:42 | container : IteratorEnumeration [] : String | Test.java:234:54:234:62 | container : IteratorEnumeration [] : String | provenance | | -| Test.java:234:54:234:62 | container : Enumeration [] : String | Test.java:234:54:234:76 | nextElement(...) : String | provenance | MaD:5 | -| Test.java:234:54:234:62 | container : IteratorEnumeration [] : String | Test.java:234:54:234:76 | nextElement(...) : String | provenance | MaD:5 | +| Test.java:234:54:234:62 | container : Enumeration [] : String | Test.java:234:54:234:76 | nextElement(...) : String | provenance | MaD:6 | +| Test.java:234:54:234:62 | container : IteratorEnumeration [] : String | Test.java:234:54:234:76 | nextElement(...) : String | provenance | MaD:6 | | Test.java:235:19:235:45 | container : Entry [] : String | Test.java:235:57:235:65 | container : Entry [] : String | provenance | | -| Test.java:235:57:235:65 | container : Entry [] : String | Test.java:235:57:235:78 | getElement(...) : String | provenance | MaD:748 | +| Test.java:235:57:235:65 | container : Entry [] : String | Test.java:235:57:235:78 | getElement(...) : String | provenance | MaD:752 | | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:59 | container : MultiKey [] : Object | provenance | | | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:59 | container : MultiKey [] : String | provenance | | -| Test.java:236:51:236:59 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | provenance | MaD:233 | -| Test.java:236:51:236:59 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | provenance | MaD:233 | +| Test.java:236:51:236:59 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | provenance | MaD:234 | +| Test.java:236:51:236:59 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | provenance | MaD:234 | | Test.java:237:18:237:48 | container : DefaultKeyValue [] : Object | Test.java:237:60:237:68 | container : DefaultKeyValue [] : Object | provenance | | | Test.java:237:18:237:48 | container : DefaultKeyValue [] : String | Test.java:237:60:237:68 | container : DefaultKeyValue [] : String | provenance | | | Test.java:237:18:237:48 | container : DefaultMapEntry [] : Object | Test.java:237:60:237:68 | container : DefaultMapEntry [] : Object | provenance | | @@ -1515,59 +1517,59 @@ edges | Test.java:237:18:237:48 | container : MyAbstractMapEntry [] : Object | Test.java:237:60:237:68 | container : MyAbstractMapEntry [] : Object | provenance | | | Test.java:237:18:237:48 | container : UnmodifiableMapEntry [] : Object | Test.java:237:60:237:68 | container : UnmodifiableMapEntry [] : Object | provenance | | | Test.java:237:18:237:48 | container : UnmodifiableMapEntry [] : String | Test.java:237:60:237:68 | container : UnmodifiableMapEntry [] : String | provenance | | -| Test.java:237:60:237:68 | container : DefaultKeyValue [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | provenance | MaD:643 | -| Test.java:237:60:237:68 | container : DefaultKeyValue [] : String | Test.java:237:60:237:77 | getKey(...) : String | provenance | MaD:643 | -| Test.java:237:60:237:68 | container : DefaultMapEntry [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | provenance | MaD:643 | -| Test.java:237:60:237:68 | container : DefaultMapEntry [] : String | Test.java:237:60:237:77 | getKey(...) : String | provenance | MaD:643 | -| Test.java:237:60:237:68 | container : MyAbstractKeyValue [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | provenance | MaD:643 | -| Test.java:237:60:237:68 | container : MyAbstractMapEntry [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | provenance | MaD:643 | -| Test.java:237:60:237:68 | container : UnmodifiableMapEntry [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | provenance | MaD:643 | -| Test.java:237:60:237:68 | container : UnmodifiableMapEntry [] : String | Test.java:237:60:237:77 | getKey(...) : String | provenance | MaD:643 | +| Test.java:237:60:237:68 | container : DefaultKeyValue [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | provenance | MaD:647 | +| Test.java:237:60:237:68 | container : DefaultKeyValue [] : String | Test.java:237:60:237:77 | getKey(...) : String | provenance | MaD:647 | +| Test.java:237:60:237:68 | container : DefaultMapEntry [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | provenance | MaD:647 | +| Test.java:237:60:237:68 | container : DefaultMapEntry [] : String | Test.java:237:60:237:77 | getKey(...) : String | provenance | MaD:647 | +| Test.java:237:60:237:68 | container : MyAbstractKeyValue [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | provenance | MaD:647 | +| Test.java:237:60:237:68 | container : MyAbstractMapEntry [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | provenance | MaD:647 | +| Test.java:237:60:237:68 | container : UnmodifiableMapEntry [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | provenance | MaD:647 | +| Test.java:237:60:237:68 | container : UnmodifiableMapEntry [] : String | Test.java:237:60:237:77 | getKey(...) : String | provenance | MaD:647 | | Test.java:238:27:238:50 | container : Entry [] : String | Test.java:238:62:238:70 | container : Entry [] : String | provenance | | | Test.java:238:27:238:50 | container : TiedMapEntry [] : Object | Test.java:238:62:238:70 | container : TiedMapEntry [] : Object | provenance | | -| Test.java:238:62:238:70 | container : Entry [] : String | Test.java:238:62:238:79 | getKey(...) : String | provenance | MaD:9 | -| Test.java:238:62:238:70 | container : TiedMapEntry [] : Object | Test.java:238:62:238:79 | getKey(...) : Object | provenance | MaD:9 | +| Test.java:238:62:238:70 | container : Entry [] : String | Test.java:238:62:238:79 | getKey(...) : String | provenance | MaD:10 | +| Test.java:238:62:238:70 | container : TiedMapEntry [] : Object | Test.java:238:62:238:79 | getKey(...) : Object | provenance | MaD:10 | | Test.java:239:18:239:57 | container : MyAbstractMapEntryDecorator [] : String | Test.java:239:69:239:77 | container : MyAbstractMapEntryDecorator [] : String | provenance | | -| Test.java:239:69:239:77 | container : MyAbstractMapEntryDecorator [] : String | Test.java:239:69:239:86 | getKey(...) : String | provenance | MaD:9 | -| Test.java:239:69:239:77 | container : MyAbstractMapEntryDecorator [] : String | Test.java:239:69:239:86 | getKey(...) : String | provenance | MaD:643 | +| Test.java:239:69:239:77 | container : MyAbstractMapEntryDecorator [] : String | Test.java:239:69:239:86 | getKey(...) : String | provenance | MaD:10 | +| Test.java:239:69:239:77 | container : MyAbstractMapEntryDecorator [] : String | Test.java:239:69:239:86 | getKey(...) : String | provenance | MaD:647 | | Test.java:240:18:240:46 | container : ArrayListValuedHashMap [] : String | Test.java:240:58:240:66 | container : ArrayListValuedHashMap [] : String | provenance | | | Test.java:240:18:240:46 | container : HashSetValuedHashMap [] : String | Test.java:240:58:240:66 | container : HashSetValuedHashMap [] : String | provenance | | | Test.java:240:18:240:46 | container : MultiValuedMap [] : Object | Test.java:240:58:240:66 | container : MultiValuedMap [] : Object | provenance | | | Test.java:240:18:240:46 | container : MultiValuedMap [] : String | Test.java:240:58:240:66 | container : MultiValuedMap [] : String | provenance | | | Test.java:240:18:240:46 | container : TransformedMultiValuedMap [] : String | Test.java:240:58:240:66 | container : TransformedMultiValuedMap [] : String | provenance | | | Test.java:240:18:240:46 | container : UnmodifiableMultiValuedMap [] : String | Test.java:240:58:240:66 | container : UnmodifiableMultiValuedMap [] : String | provenance | | -| Test.java:240:58:240:66 | container : ArrayListValuedHashMap [] : String | Test.java:240:58:240:75 | keySet(...) : Set [] : String | provenance | MaD:760 | -| Test.java:240:58:240:66 | container : HashSetValuedHashMap [] : String | Test.java:240:58:240:75 | keySet(...) : Set [] : String | provenance | MaD:760 | -| Test.java:240:58:240:66 | container : MultiValuedMap [] : Object | Test.java:240:58:240:75 | keySet(...) : Set [] : Object | provenance | MaD:760 | -| Test.java:240:58:240:66 | container : MultiValuedMap [] : String | Test.java:240:58:240:75 | keySet(...) : Set [] : String | provenance | MaD:760 | -| Test.java:240:58:240:66 | container : TransformedMultiValuedMap [] : String | Test.java:240:58:240:75 | keySet(...) : Set [] : String | provenance | MaD:760 | -| Test.java:240:58:240:66 | container : UnmodifiableMultiValuedMap [] : String | Test.java:240:58:240:75 | keySet(...) : Set [] : String | provenance | MaD:760 | +| Test.java:240:58:240:66 | container : ArrayListValuedHashMap [] : String | Test.java:240:58:240:75 | keySet(...) : Set [] : String | provenance | MaD:764 | +| Test.java:240:58:240:66 | container : HashSetValuedHashMap [] : String | Test.java:240:58:240:75 | keySet(...) : Set [] : String | provenance | MaD:764 | +| Test.java:240:58:240:66 | container : MultiValuedMap [] : Object | Test.java:240:58:240:75 | keySet(...) : Set [] : Object | provenance | MaD:764 | +| Test.java:240:58:240:66 | container : MultiValuedMap [] : String | Test.java:240:58:240:75 | keySet(...) : Set [] : String | provenance | MaD:764 | +| Test.java:240:58:240:66 | container : TransformedMultiValuedMap [] : String | Test.java:240:58:240:75 | keySet(...) : Set [] : String | provenance | MaD:764 | +| Test.java:240:58:240:66 | container : UnmodifiableMultiValuedMap [] : String | Test.java:240:58:240:75 | keySet(...) : Set [] : String | provenance | MaD:764 | | Test.java:240:58:240:75 | keySet(...) : Set [] : Object | Test.java:240:58:240:86 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | | Test.java:240:58:240:75 | keySet(...) : Set [] : String | Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | provenance | MaD:3 | | Test.java:240:58:240:75 | keySet(...) : Set [] : String | Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | provenance | MaD:3 | | Test.java:240:58:240:75 | keySet(...) : Set [] : String | Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | provenance | MaD:3 | | Test.java:240:58:240:75 | keySet(...) : Set [] : String | Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | provenance | MaD:3 | | Test.java:240:58:240:75 | keySet(...) : Set [] : String | Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | provenance | MaD:3 | -| Test.java:240:58:240:86 | iterator(...) : Iterator [] : Object | Test.java:240:58:240:93 | next(...) : Object | provenance | MaD:6 | -| Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | Test.java:240:58:240:93 | next(...) : String | provenance | MaD:6 | -| Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | Test.java:240:58:240:93 | next(...) : String | provenance | MaD:6 | -| Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | Test.java:240:58:240:93 | next(...) : String | provenance | MaD:6 | -| Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | Test.java:240:58:240:93 | next(...) : String | provenance | MaD:6 | -| Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | Test.java:240:58:240:93 | next(...) : String | provenance | MaD:6 | +| Test.java:240:58:240:86 | iterator(...) : Iterator [] : Object | Test.java:240:58:240:93 | next(...) : Object | provenance | MaD:7 | +| Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | Test.java:240:58:240:93 | next(...) : String | provenance | MaD:7 | +| Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | Test.java:240:58:240:93 | next(...) : String | provenance | MaD:7 | +| Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | Test.java:240:58:240:93 | next(...) : String | provenance | MaD:7 | +| Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | Test.java:240:58:240:93 | next(...) : String | provenance | MaD:7 | +| Test.java:240:58:240:86 | iterator(...) : Iterator [] : String | Test.java:240:58:240:93 | next(...) : String | provenance | MaD:7 | | Test.java:241:25:241:42 | container : AbstractIterableGetMapDecorator [] : String | Test.java:241:54:241:62 | container : AbstractIterableGetMapDecorator [] : String | provenance | | | Test.java:241:25:241:42 | container : TransformedSplitMap [] : String | Test.java:241:54:241:62 | container : TransformedSplitMap [] : String | provenance | | -| Test.java:241:54:241:62 | container : AbstractIterableGetMapDecorator [] : String | Test.java:241:54:241:71 | keySet(...) : Set [] : String | provenance | MaD:559 | -| Test.java:241:54:241:62 | container : TransformedSplitMap [] : String | Test.java:241:54:241:71 | keySet(...) : Set [] : String | provenance | MaD:559 | +| Test.java:241:54:241:62 | container : AbstractIterableGetMapDecorator [] : String | Test.java:241:54:241:71 | keySet(...) : Set [] : String | provenance | MaD:563 | +| Test.java:241:54:241:62 | container : TransformedSplitMap [] : String | Test.java:241:54:241:71 | keySet(...) : Set [] : String | provenance | MaD:563 | | Test.java:241:54:241:71 | keySet(...) : Set [] : String | Test.java:241:54:241:82 | iterator(...) : Iterator [] : String | provenance | MaD:3 | | Test.java:241:54:241:71 | keySet(...) : Set [] : String | Test.java:241:54:241:82 | iterator(...) : Iterator [] : String | provenance | MaD:3 | -| Test.java:241:54:241:82 | iterator(...) : Iterator [] : String | Test.java:241:54:241:89 | next(...) : String | provenance | MaD:6 | -| Test.java:241:54:241:82 | iterator(...) : Iterator [] : String | Test.java:241:54:241:89 | next(...) : String | provenance | MaD:6 | +| Test.java:241:54:241:82 | iterator(...) : Iterator [] : String | Test.java:241:54:241:89 | next(...) : String | provenance | MaD:7 | +| Test.java:241:54:241:82 | iterator(...) : Iterator [] : String | Test.java:241:54:241:89 | next(...) : String | provenance | MaD:7 | | Test.java:242:27:242:44 | container : Put [] : Object | Test.java:242:66:242:84 | (...)... : Put [] : Object | provenance | | | Test.java:242:27:242:44 | container : Put [] : String | Test.java:242:66:242:84 | (...)... : Put [] : String | provenance | | | Test.java:242:66:242:84 | (...)... : Put [] : Object | Test.java:228:18:228:29 | map : Put [] : Object | provenance | | -| Test.java:242:66:242:84 | (...)... : Put [] : Object | Test.java:242:56:242:85 | getMapKey(...) : Object | provenance | MaD:18 | +| Test.java:242:66:242:84 | (...)... : Put [] : Object | Test.java:242:56:242:85 | getMapKey(...) : Object | provenance | MaD:19 | | Test.java:242:66:242:84 | (...)... : Put [] : String | Test.java:228:18:228:29 | map : Put [] : String | provenance | | -| Test.java:242:66:242:84 | (...)... : Put [] : String | Test.java:242:56:242:85 | getMapKey(...) : String | provenance | MaD:18 | +| Test.java:242:66:242:84 | (...)... : Put [] : String | Test.java:242:56:242:85 | getMapKey(...) : String | provenance | MaD:19 | | Test.java:243:20:243:50 | container : AbstractMapEntry [] : Object | Test.java:243:62:243:70 | container : AbstractMapEntry [] : Object | provenance | | | Test.java:243:20:243:50 | container : DefaultKeyValue [] : Object | Test.java:243:62:243:70 | container : DefaultKeyValue [] : Object | provenance | | | Test.java:243:20:243:50 | container : DefaultKeyValue [] : String | Test.java:243:62:243:70 | container : DefaultKeyValue [] : String | provenance | | @@ -1577,58 +1579,58 @@ edges | Test.java:243:20:243:50 | container : MyAbstractMapEntry [] : Object | Test.java:243:62:243:70 | container : MyAbstractMapEntry [] : Object | provenance | | | Test.java:243:20:243:50 | container : UnmodifiableMapEntry [] : Object | Test.java:243:62:243:70 | container : UnmodifiableMapEntry [] : Object | provenance | | | Test.java:243:20:243:50 | container : UnmodifiableMapEntry [] : String | Test.java:243:62:243:70 | container : UnmodifiableMapEntry [] : String | provenance | | -| Test.java:243:62:243:70 | container : AbstractMapEntry [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | provenance | MaD:644 | -| Test.java:243:62:243:70 | container : DefaultKeyValue [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | provenance | MaD:644 | -| Test.java:243:62:243:70 | container : DefaultKeyValue [] : String | Test.java:243:62:243:81 | getValue(...) : String | provenance | MaD:644 | -| Test.java:243:62:243:70 | container : DefaultMapEntry [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | provenance | MaD:644 | -| Test.java:243:62:243:70 | container : DefaultMapEntry [] : String | Test.java:243:62:243:81 | getValue(...) : String | provenance | MaD:644 | -| Test.java:243:62:243:70 | container : MyAbstractKeyValue [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | provenance | MaD:644 | -| Test.java:243:62:243:70 | container : MyAbstractMapEntry [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | provenance | MaD:644 | -| Test.java:243:62:243:70 | container : UnmodifiableMapEntry [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | provenance | MaD:644 | -| Test.java:243:62:243:70 | container : UnmodifiableMapEntry [] : String | Test.java:243:62:243:81 | getValue(...) : String | provenance | MaD:644 | +| Test.java:243:62:243:70 | container : AbstractMapEntry [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | provenance | MaD:648 | +| Test.java:243:62:243:70 | container : DefaultKeyValue [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | provenance | MaD:648 | +| Test.java:243:62:243:70 | container : DefaultKeyValue [] : String | Test.java:243:62:243:81 | getValue(...) : String | provenance | MaD:648 | +| Test.java:243:62:243:70 | container : DefaultMapEntry [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | provenance | MaD:648 | +| Test.java:243:62:243:70 | container : DefaultMapEntry [] : String | Test.java:243:62:243:81 | getValue(...) : String | provenance | MaD:648 | +| Test.java:243:62:243:70 | container : MyAbstractKeyValue [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | provenance | MaD:648 | +| Test.java:243:62:243:70 | container : MyAbstractMapEntry [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | provenance | MaD:648 | +| Test.java:243:62:243:70 | container : UnmodifiableMapEntry [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | provenance | MaD:648 | +| Test.java:243:62:243:70 | container : UnmodifiableMapEntry [] : String | Test.java:243:62:243:81 | getValue(...) : String | provenance | MaD:648 | | Test.java:244:29:244:52 | container : Entry [] : Object | Test.java:244:64:244:72 | container : Entry [] : Object | provenance | | | Test.java:244:29:244:52 | container : Entry [] : String | Test.java:244:64:244:72 | container : Entry [] : String | provenance | | | Test.java:244:29:244:52 | container : TiedMapEntry [] : String | Test.java:244:64:244:72 | container : TiedMapEntry [] : String | provenance | | -| Test.java:244:64:244:72 | container : Entry [] : Object | Test.java:244:64:244:83 | getValue(...) : Object | provenance | MaD:10 | -| Test.java:244:64:244:72 | container : Entry [] : String | Test.java:244:64:244:83 | getValue(...) : String | provenance | MaD:10 | -| Test.java:244:64:244:72 | container : TiedMapEntry [] : String | Test.java:244:64:244:83 | getValue(...) : String | provenance | MaD:10 | +| Test.java:244:64:244:72 | container : Entry [] : Object | Test.java:244:64:244:83 | getValue(...) : Object | provenance | MaD:11 | +| Test.java:244:64:244:72 | container : Entry [] : String | Test.java:244:64:244:83 | getValue(...) : String | provenance | MaD:11 | +| Test.java:244:64:244:72 | container : TiedMapEntry [] : String | Test.java:244:64:244:83 | getValue(...) : String | provenance | MaD:11 | | Test.java:245:20:245:59 | container : MyAbstractMapEntryDecorator [] : String | Test.java:245:71:245:79 | container : MyAbstractMapEntryDecorator [] : String | provenance | | -| Test.java:245:71:245:79 | container : MyAbstractMapEntryDecorator [] : String | Test.java:245:71:245:90 | getValue(...) : String | provenance | MaD:10 | -| Test.java:245:71:245:79 | container : MyAbstractMapEntryDecorator [] : String | Test.java:245:71:245:90 | getValue(...) : String | provenance | MaD:644 | +| Test.java:245:71:245:79 | container : MyAbstractMapEntryDecorator [] : String | Test.java:245:71:245:90 | getValue(...) : String | provenance | MaD:11 | +| Test.java:245:71:245:79 | container : MyAbstractMapEntryDecorator [] : String | Test.java:245:71:245:90 | getValue(...) : String | provenance | MaD:648 | | Test.java:246:20:246:47 | mapIterator : EntrySetToMapIteratorAdapter [] : String | Test.java:246:59:246:69 | mapIterator : EntrySetToMapIteratorAdapter [] : String | provenance | | | Test.java:246:20:246:47 | mapIterator : MapIterator [] : Object | Test.java:246:59:246:69 | mapIterator : MapIterator [] : Object | provenance | | | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | Test.java:246:59:246:69 | mapIterator : MapIterator [] : String | provenance | | | Test.java:246:20:246:47 | mapIterator : MyAbstractMapIteratorDecorator [] : String | Test.java:246:59:246:69 | mapIterator : MyAbstractMapIteratorDecorator [] : String | provenance | | | Test.java:246:20:246:47 | mapIterator : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:246:59:246:69 | mapIterator : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | | Test.java:246:20:246:47 | mapIterator : OrderedMapIterator [] : String | Test.java:246:59:246:69 | mapIterator : OrderedMapIterator [] : String | provenance | | -| Test.java:246:59:246:69 | mapIterator : EntrySetToMapIteratorAdapter [] : String | Test.java:246:59:246:80 | getValue(...) : String | provenance | MaD:673 | -| Test.java:246:59:246:69 | mapIterator : MapIterator [] : Object | Test.java:246:59:246:80 | getValue(...) : Object | provenance | MaD:673 | -| Test.java:246:59:246:69 | mapIterator : MapIterator [] : String | Test.java:246:59:246:80 | getValue(...) : String | provenance | MaD:673 | -| Test.java:246:59:246:69 | mapIterator : MyAbstractMapIteratorDecorator [] : String | Test.java:246:59:246:80 | getValue(...) : String | provenance | MaD:673 | -| Test.java:246:59:246:69 | mapIterator : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:246:59:246:80 | getValue(...) : String | provenance | MaD:673 | -| Test.java:246:59:246:69 | mapIterator : OrderedMapIterator [] : String | Test.java:246:59:246:80 | getValue(...) : String | provenance | MaD:673 | +| Test.java:246:59:246:69 | mapIterator : EntrySetToMapIteratorAdapter [] : String | Test.java:246:59:246:80 | getValue(...) : String | provenance | MaD:677 | +| Test.java:246:59:246:69 | mapIterator : MapIterator [] : Object | Test.java:246:59:246:80 | getValue(...) : Object | provenance | MaD:677 | +| Test.java:246:59:246:69 | mapIterator : MapIterator [] : String | Test.java:246:59:246:80 | getValue(...) : String | provenance | MaD:677 | +| Test.java:246:59:246:69 | mapIterator : MyAbstractMapIteratorDecorator [] : String | Test.java:246:59:246:80 | getValue(...) : String | provenance | MaD:677 | +| Test.java:246:59:246:69 | mapIterator : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:246:59:246:80 | getValue(...) : String | provenance | MaD:677 | +| Test.java:246:59:246:69 | mapIterator : OrderedMapIterator [] : String | Test.java:246:59:246:80 | getValue(...) : String | provenance | MaD:677 | | Test.java:247:32:247:60 | container : ArrayListValuedHashMap [, ] : String | Test.java:247:72:247:80 | container : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:247:32:247:60 | container : HashSetValuedHashMap [, ] : String | Test.java:247:72:247:80 | container : HashSetValuedHashMap [, ] : String | provenance | | | Test.java:247:32:247:60 | container : MultiValuedMap [, ] : Object | Test.java:247:72:247:80 | container : MultiValuedMap [, ] : Object | provenance | | | Test.java:247:32:247:60 | container : MultiValuedMap [, ] : String | Test.java:247:72:247:80 | container : MultiValuedMap [, ] : String | provenance | | | Test.java:247:32:247:60 | container : TransformedMultiValuedMap [, ] : String | Test.java:247:72:247:80 | container : TransformedMultiValuedMap [, ] : String | provenance | | | Test.java:247:32:247:60 | container : UnmodifiableMultiValuedMap [, ] : String | Test.java:247:72:247:80 | container : UnmodifiableMultiValuedMap [, ] : String | provenance | | -| Test.java:247:72:247:80 | container : ArrayListValuedHashMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | provenance | MaD:759 | -| Test.java:247:72:247:80 | container : HashSetValuedHashMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | provenance | MaD:759 | -| Test.java:247:72:247:80 | container : MultiValuedMap [, ] : Object | Test.java:247:72:247:90 | get(...) : Collection [] : Object | provenance | MaD:759 | -| Test.java:247:72:247:80 | container : MultiValuedMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | provenance | MaD:759 | -| Test.java:247:72:247:80 | container : TransformedMultiValuedMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | provenance | MaD:759 | -| Test.java:247:72:247:80 | container : UnmodifiableMultiValuedMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | provenance | MaD:759 | +| Test.java:247:72:247:80 | container : ArrayListValuedHashMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | provenance | MaD:763 | +| Test.java:247:72:247:80 | container : HashSetValuedHashMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | provenance | MaD:763 | +| Test.java:247:72:247:80 | container : MultiValuedMap [, ] : Object | Test.java:247:72:247:90 | get(...) : Collection [] : Object | provenance | MaD:763 | +| Test.java:247:72:247:80 | container : MultiValuedMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | provenance | MaD:763 | +| Test.java:247:72:247:80 | container : TransformedMultiValuedMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | provenance | MaD:763 | +| Test.java:247:72:247:80 | container : UnmodifiableMultiValuedMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | provenance | MaD:763 | | Test.java:248:27:248:44 | container : AbstractIterableGetMapDecorator [] : String | Test.java:248:56:248:64 | container : AbstractIterableGetMapDecorator [] : String | provenance | | | Test.java:248:27:248:44 | container : TransformedSplitMap [] : String | Test.java:248:56:248:64 | container : TransformedSplitMap [] : String | provenance | | -| Test.java:248:56:248:64 | container : AbstractIterableGetMapDecorator [] : String | Test.java:248:56:248:74 | get(...) : String | provenance | MaD:558 | -| Test.java:248:56:248:64 | container : TransformedSplitMap [] : String | Test.java:248:56:248:74 | get(...) : String | provenance | MaD:558 | +| Test.java:248:56:248:64 | container : AbstractIterableGetMapDecorator [] : String | Test.java:248:56:248:74 | get(...) : String | provenance | MaD:562 | +| Test.java:248:56:248:64 | container : TransformedSplitMap [] : String | Test.java:248:56:248:74 | get(...) : String | provenance | MaD:562 | | Test.java:249:29:249:46 | container : Put [] : Object | Test.java:249:70:249:88 | (...)... : Put [] : Object | provenance | | | Test.java:249:29:249:46 | container : Put [] : String | Test.java:249:70:249:88 | (...)... : Put [] : String | provenance | | | Test.java:249:70:249:88 | (...)... : Put [] : Object | Test.java:232:20:232:31 | map : Put [] : Object | provenance | | -| Test.java:249:70:249:88 | (...)... : Put [] : Object | Test.java:249:58:249:89 | getMapValue(...) : Object | provenance | MaD:17 | +| Test.java:249:70:249:88 | (...)... : Put [] : Object | Test.java:249:58:249:89 | getMapValue(...) : Object | provenance | MaD:18 | | Test.java:249:70:249:88 | (...)... : Put [] : String | Test.java:232:20:232:31 | map : Put [] : String | provenance | | -| Test.java:249:70:249:88 | (...)... : Put [] : String | Test.java:249:58:249:89 | getMapValue(...) : String | provenance | MaD:17 | +| Test.java:249:70:249:88 | (...)... : Put [] : String | Test.java:249:58:249:89 | getMapValue(...) : String | provenance | MaD:18 | | Test.java:251:31:251:44 | element : MyAbstractKeyValue [] : String | Test.java:251:70:251:76 | element : MyAbstractKeyValue [] : String | provenance | | | Test.java:251:31:251:44 | element : MyAbstractKeyValue [] : String | Test.java:251:70:251:76 | element : MyAbstractKeyValue [] : String | provenance | | | Test.java:251:31:251:44 | element : Object[] [[]] : String | Test.java:251:70:251:76 | element : Object[] [[]] : String | provenance | | @@ -1643,30 +1645,30 @@ edges | Test.java:251:70:251:76 | element : String | Test.java:251:56:251:77 | {...} : Object[] [[]] : String | provenance | | | Test.java:252:45:252:53 | element : String | Test.java:252:103:252:109 | element : String | provenance | | | Test.java:252:96:252:96 | a [post update] : ArrayStack [] : String | Test.java:252:120:252:120 | a : ArrayStack [] : String | provenance | | -| Test.java:252:103:252:109 | element : String | Test.java:252:96:252:96 | a [post update] : ArrayStack [] : String | provenance | MaD:468 | +| Test.java:252:103:252:109 | element : String | Test.java:252:96:252:96 | a [post update] : ArrayStack [] : String | provenance | MaD:472 | | Test.java:253:59:253:67 | element : String | Test.java:253:130:253:136 | element : String | provenance | | | Test.java:253:124:253:124 | x [post update] : CircularFifoQueue [] : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | provenance | | | Test.java:253:130:253:136 | element : String | Test.java:253:124:253:124 | x [post update] : CircularFifoQueue [] : String | provenance | MaD:4 | | Test.java:254:49:254:57 | element : String | Test.java:254:118:254:124 | element : String | provenance | | -| Test.java:254:89:254:125 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:254:69:254:126 | new CompositeSet(...) : CompositeSet [] : String | provenance | MaD:430 | -| Test.java:254:118:254:124 | element : String | Test.java:254:89:254:125 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | +| Test.java:254:89:254:125 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:254:69:254:126 | new CompositeSet(...) : CompositeSet [] : String | provenance | MaD:433 | +| Test.java:254:118:254:124 | element : String | Test.java:254:89:254:125 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | | Test.java:254:118:254:124 | element : String | Test.java:260:53:260:61 | element : String | provenance | | | Test.java:255:65:255:73 | element : String | Test.java:255:142:255:148 | element : String | provenance | | | Test.java:255:136:255:136 | x [post update] : CursorableLinkedList [] : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | provenance | | | Test.java:255:142:255:148 | element : String | Test.java:255:136:255:136 | x [post update] : CursorableLinkedList [] : String | provenance | MaD:4 | | Test.java:256:47:256:55 | element : String | Test.java:256:115:256:121 | element : String | provenance | | | Test.java:256:94:256:122 | newVectorWithElement(...) : Vector [] : String | Test.java:256:94:256:133 | iterator(...) : Iterator [] : String | provenance | MaD:3 | -| Test.java:256:94:256:133 | iterator(...) : Iterator [] : String | Test.java:256:67:256:134 | new IteratorEnumeration(...) : IteratorEnumeration [] : String | provenance | MaD:156 | +| Test.java:256:94:256:133 | iterator(...) : Iterator [] : String | Test.java:256:67:256:134 | new IteratorEnumeration(...) : IteratorEnumeration [] : String | provenance | MaD:157 | | Test.java:256:115:256:121 | element : String | Test.java:256:94:256:122 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:256:115:256:121 | element : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:257:53:257:61 | element : String | Test.java:257:91:257:97 | element : String | provenance | | -| Test.java:257:91:257:97 | element : String | Test.java:257:73:257:98 | of(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:257:91:257:97 | element : String | Test.java:257:73:257:98 | of(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:258:49:258:57 | element : String | Test.java:258:110:258:116 | element : String | provenance | | | Test.java:258:104:258:104 | x [post update] : HashMultiSet [] : String | Test.java:258:127:258:127 | x : HashMultiSet [] : String | provenance | | | Test.java:258:110:258:116 | element : String | Test.java:258:104:258:104 | x [post update] : HashMultiSet [] : String | provenance | MaD:4 | -| Test.java:258:110:258:116 | element : String | Test.java:258:104:258:104 | x [post update] : HashMultiSet [] : String | provenance | MaD:749 | +| Test.java:258:110:258:116 | element : String | Test.java:258:104:258:104 | x [post update] : HashMultiSet [] : String | provenance | MaD:753 | | Test.java:259:49:259:57 | element : String | Test.java:259:90:259:96 | element : String | provenance | | -| Test.java:259:69:259:97 | newVectorWithElement(...) : Vector [] : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | provenance | MaD:8 | +| Test.java:259:69:259:97 | newVectorWithElement(...) : Vector [] : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | provenance | MaD:9 | | Test.java:259:90:259:96 | element : String | Test.java:259:69:259:97 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:259:90:259:96 | element : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:260:53:260:61 | element : String | Test.java:260:118:260:124 | element : String | provenance | | @@ -1675,25 +1677,25 @@ edges | Test.java:260:112:260:112 | x [post update] : ListOrderedSet [, ] : String | Test.java:260:135:260:135 | x : ListOrderedSet [, ] : String | provenance | | | Test.java:260:112:260:112 | x [post update] : ListOrderedSet [, ] : String | Test.java:260:135:260:135 | x : ListOrderedSet [, ] : String | provenance | | | Test.java:260:112:260:112 | x [post update] : ListOrderedSet [] : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | provenance | | -| Test.java:260:118:260:124 | element : String | Test.java:260:112:260:112 | x [post update] : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:260:118:260:124 | element : TiedMapEntry [] : String | Test.java:260:112:260:112 | x [post update] : ListOrderedSet [, ] : String | provenance | MaD:4 | -| Test.java:260:118:260:124 | element : TiedMapEntry [] : String | Test.java:260:112:260:112 | x [post update] : ListOrderedSet [, ] : String | provenance | MaD:4 | +| Test.java:260:118:260:124 | element : String | Test.java:260:112:260:112 | x [post update] : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:260:118:260:124 | element : TiedMapEntry [] : String | Test.java:260:112:260:112 | x [post update] : ListOrderedSet [, ] : String | provenance | MaD:441 | +| Test.java:260:118:260:124 | element : TiedMapEntry [] : String | Test.java:260:112:260:112 | x [post update] : ListOrderedSet [, ] : String | provenance | MaD:441 | | Test.java:261:41:261:49 | element : String | Test.java:261:77:261:83 | element : String | provenance | | -| Test.java:261:77:261:83 | element : String | Test.java:261:61:261:93 | new MultiKey(...) : MultiKey [] : String | provenance | MaD:217 | +| Test.java:261:77:261:83 | element : String | Test.java:261:61:261:93 | new MultiKey(...) : MultiKey [] : String | provenance | MaD:218 | | Test.java:262:52:262:60 | element : String | Test.java:262:106:262:112 | element : String | provenance | | -| Test.java:262:83:262:113 | newMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:262:83:262:124 | entrySet(...) : Set [, ] : String | provenance | MaD:750 | +| Test.java:262:83:262:113 | newMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:262:83:262:124 | entrySet(...) : Set [, ] : String | provenance | MaD:754 | | Test.java:262:83:262:124 | entrySet(...) : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | provenance | | | Test.java:262:83:262:124 | entrySet(...) : Set [, ] : String | Test.java:262:72:262:125 | getElement(...) : Entry [] : String | provenance | MaD:3 | | Test.java:262:106:262:112 | element : String | Test.java:262:83:262:113 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | -| Test.java:262:106:262:112 | element : String | Test.java:262:83:262:113 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:749 | +| Test.java:262:106:262:112 | element : String | Test.java:262:83:262:113 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:753 | | Test.java:262:106:262:112 | element : String | Test.java:263:41:263:49 | element : String | provenance | | | Test.java:263:41:263:49 | element : String | Test.java:263:102:263:108 | element : String | provenance | | | Test.java:263:96:263:96 | h [post update] : HashMultiSet [] : String | Test.java:263:119:263:119 | h : HashMultiSet [] : String | provenance | | | Test.java:263:102:263:108 | element : String | Test.java:263:96:263:96 | h [post update] : HashMultiSet [] : String | provenance | MaD:4 | -| Test.java:263:102:263:108 | element : String | Test.java:263:96:263:96 | h [post update] : HashMultiSet [] : String | provenance | MaD:749 | +| Test.java:263:102:263:108 | element : String | Test.java:263:96:263:96 | h [post update] : HashMultiSet [] : String | provenance | MaD:753 | | Test.java:264:80:264:88 | element : String | Test.java:264:177:264:183 | element : String | provenance | | | Test.java:264:171:264:171 | x [post update] : Builder [] : String | Test.java:264:194:264:194 | x : Builder [] : String | provenance | | -| Test.java:264:177:264:183 | element : String | Test.java:264:171:264:171 | x [post update] : Builder [] : String | provenance | MaD:98 | +| Test.java:264:177:264:183 | element : String | Test.java:264:171:264:171 | x [post update] : Builder [] : String | provenance | MaD:99 | | Test.java:265:35:265:43 | element : String | Test.java:265:92:265:98 | element : String | provenance | | | Test.java:265:86:265:86 | q [post update] : LinkedList [] : String | Test.java:265:109:265:109 | q : LinkedList [] : String | provenance | | | Test.java:265:92:265:98 | element : String | Test.java:265:86:265:86 | q [post update] : LinkedList [] : String | provenance | MaD:4 | @@ -1705,9 +1707,9 @@ edges | Test.java:267:84:267:84 | b [post update] : TreeBag [, ] : String | Test.java:267:107:267:107 | b : TreeBag [, ] : String | provenance | | | Test.java:267:84:267:84 | b [post update] : TreeBag [] : String | Test.java:267:107:267:107 | b : TreeBag [] : String | provenance | | | Test.java:267:90:267:96 | element : ListIterator [] : String | Test.java:267:84:267:84 | b [post update] : TreeBag [, ] : String | provenance | MaD:4 | -| Test.java:267:90:267:96 | element : ListIterator [] : String | Test.java:267:84:267:84 | b [post update] : TreeBag [, ] : String | provenance | MaD:470 | +| Test.java:267:90:267:96 | element : ListIterator [] : String | Test.java:267:84:267:84 | b [post update] : TreeBag [, ] : String | provenance | MaD:474 | | Test.java:267:90:267:96 | element : String | Test.java:267:84:267:84 | b [post update] : TreeBag [] : String | provenance | MaD:4 | -| Test.java:267:90:267:96 | element : String | Test.java:267:84:267:84 | b [post update] : TreeBag [] : String | provenance | MaD:470 | +| Test.java:267:90:267:96 | element : String | Test.java:267:84:267:84 | b [post update] : TreeBag [] : String | provenance | MaD:474 | | Test.java:268:39:268:47 | element : String | Test.java:268:90:268:96 | element : String | provenance | | | Test.java:268:84:268:84 | h [post update] : TreeSet [] : String | Test.java:268:107:268:107 | h : TreeSet [] : String | provenance | | | Test.java:268:90:268:96 | element : String | Test.java:268:84:268:84 | h [post update] : TreeSet [] : String | provenance | MaD:4 | @@ -1719,847 +1721,847 @@ edges | Test.java:270:116:270:122 | element : Vector [] : String | Test.java:270:110:270:110 | v [post update] : Vector [, ] : String | provenance | MaD:4 | | Test.java:272:58:272:62 | key : String | Test.java:272:142:272:144 | key : String | provenance | | | Test.java:272:136:272:136 | m [post update] : ArrayListValuedHashMap [] : String | Test.java:272:160:272:160 | m : ArrayListValuedHashMap [] : String | provenance | | -| Test.java:272:142:272:144 | key : String | Test.java:272:136:272:136 | m [post update] : ArrayListValuedHashMap [] : String | provenance | MaD:764 | +| Test.java:272:142:272:144 | key : String | Test.java:272:136:272:136 | m [post update] : ArrayListValuedHashMap [] : String | provenance | MaD:768 | | Test.java:273:49:273:53 | key : String | Test.java:273:95:273:97 | key : String | provenance | | -| Test.java:273:95:273:97 | key : String | Test.java:273:65:273:103 | new DefaultKeyValue(...) : DefaultKeyValue [] : String | provenance | MaD:207 | +| Test.java:273:95:273:97 | key : String | Test.java:273:65:273:103 | new DefaultKeyValue(...) : DefaultKeyValue [] : String | provenance | MaD:208 | | Test.java:274:61:274:65 | key : String | Test.java:274:114:274:116 | key : String | provenance | | -| Test.java:274:107:274:123 | of(...) : Map [] : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | provenance | MaD:60 | -| Test.java:274:114:274:116 | key : String | Test.java:274:107:274:123 | of(...) : Map [] : String | provenance | MaD:13 | +| Test.java:274:107:274:123 | of(...) : Map [] : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | provenance | MaD:61 | +| Test.java:274:114:274:116 | key : String | Test.java:274:107:274:123 | of(...) : Map [] : String | provenance | MaD:14 | | Test.java:275:49:275:53 | key : String | Test.java:275:107:275:109 | key : String | provenance | | | Test.java:275:101:275:101 | m [post update] : HashedMap [] : String | Test.java:275:125:275:125 | m : HashedMap [] : String | provenance | | -| Test.java:275:107:275:109 | key : String | Test.java:275:101:275:101 | m [post update] : HashedMap [] : String | provenance | MaD:19 | -| Test.java:275:107:275:109 | key : String | Test.java:275:101:275:101 | m [post update] : HashedMap [] : String | provenance | MaD:779 | +| Test.java:275:107:275:109 | key : String | Test.java:275:101:275:101 | m [post update] : HashedMap [] : String | provenance | MaD:20 | +| Test.java:275:107:275:109 | key : String | Test.java:275:101:275:101 | m [post update] : HashedMap [] : String | provenance | MaD:783 | | Test.java:276:49:276:53 | key : String | Test.java:276:96:276:98 | key : String | provenance | | -| Test.java:276:89:276:105 | of(...) : Map [] : String | Test.java:276:65:276:106 | new LinkedMap(...) : LinkedMap [] : String | provenance | MaD:319 | -| Test.java:276:96:276:98 | key : String | Test.java:276:89:276:105 | of(...) : Map [] : String | provenance | MaD:13 | +| Test.java:276:89:276:105 | of(...) : Map [] : String | Test.java:276:65:276:106 | new LinkedMap(...) : LinkedMap [] : String | provenance | MaD:320 | +| Test.java:276:96:276:98 | key : String | Test.java:276:89:276:105 | of(...) : Map [] : String | provenance | MaD:14 | | Test.java:277:59:277:63 | key : Object | Test.java:277:122:277:124 | key : Object | provenance | | | Test.java:277:59:277:63 | key : String | Test.java:277:122:277:124 | key : String | provenance | | -| Test.java:277:115:277:131 | of(...) : Map [] : Object | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : Object | provenance | MaD:329 | -| Test.java:277:115:277:131 | of(...) : Map [] : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | provenance | MaD:329 | -| Test.java:277:122:277:124 | key : Object | Test.java:277:115:277:131 | of(...) : Map [] : Object | provenance | MaD:13 | -| Test.java:277:122:277:124 | key : String | Test.java:277:115:277:131 | of(...) : Map [] : String | provenance | MaD:13 | +| Test.java:277:115:277:131 | of(...) : Map [] : Object | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : Object | provenance | MaD:330 | +| Test.java:277:115:277:131 | of(...) : Map [] : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | provenance | MaD:330 | +| Test.java:277:122:277:124 | key : Object | Test.java:277:115:277:131 | of(...) : Map [] : Object | provenance | MaD:14 | +| Test.java:277:122:277:124 | key : String | Test.java:277:115:277:131 | of(...) : Map [] : String | provenance | MaD:14 | | Test.java:279:47:279:51 | key : String | Test.java:279:113:279:115 | key : String | provenance | | | Test.java:279:107:279:107 | m [post update] : MultiValueMap [] : String | Test.java:279:131:279:131 | m : MultiValueMap [] : String | provenance | | -| Test.java:279:113:279:115 | key : String | Test.java:279:107:279:107 | m [post update] : MultiValueMap [] : String | provenance | MaD:19 | -| Test.java:279:113:279:115 | key : String | Test.java:279:107:279:107 | m [post update] : MultiValueMap [] : String | provenance | MaD:736 | -| Test.java:279:113:279:115 | key : String | Test.java:279:107:279:107 | m [post update] : MultiValueMap [] : String | provenance | MaD:779 | +| Test.java:279:113:279:115 | key : String | Test.java:279:107:279:107 | m [post update] : MultiValueMap [] : String | provenance | MaD:20 | +| Test.java:279:113:279:115 | key : String | Test.java:279:107:279:107 | m [post update] : MultiValueMap [] : String | provenance | MaD:740 | +| Test.java:279:113:279:115 | key : String | Test.java:279:107:279:107 | m [post update] : MultiValueMap [] : String | provenance | MaD:783 | | Test.java:280:53:280:57 | key : String | Test.java:280:102:280:104 | key : String | provenance | | -| Test.java:280:102:280:104 | key : String | Test.java:280:69:280:110 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | provenance | MaD:197 | -| Test.java:280:102:280:104 | key : String | Test.java:7057:22:7057:32 | key : String | provenance | | +| Test.java:280:102:280:104 | key : String | Test.java:280:69:280:110 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | +| Test.java:280:102:280:104 | key : String | Test.java:7051:22:7051:32 | key : String | provenance | | | Test.java:281:63:281:67 | key : String | Test.java:281:139:281:141 | key : String | provenance | | -| Test.java:281:121:281:142 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | Test.java:281:79:281:143 | new MyAbstractMapEntryDecorator(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:199 | -| Test.java:281:121:281:142 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | Test.java:7067:31:7067:57 | entry : MyAbstractMapEntry [] : String | provenance | | +| Test.java:281:121:281:142 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | Test.java:281:79:281:143 | new MyAbstractMapEntryDecorator(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:200 | +| Test.java:281:121:281:142 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | Test.java:7061:31:7061:57 | entry : MyAbstractMapEntry [] : String | provenance | | | Test.java:281:139:281:141 | key : String | Test.java:280:53:280:57 | key : String | provenance | | -| Test.java:281:139:281:141 | key : String | Test.java:281:121:281:142 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | provenance | MaD:197 | +| Test.java:281:139:281:141 | key : String | Test.java:281:121:281:142 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | | Test.java:282:53:282:57 | key : String | Test.java:282:102:282:104 | key : String | provenance | | -| Test.java:282:102:282:104 | key : String | Test.java:282:69:282:110 | new MyAbstractKeyValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:191 | -| Test.java:282:102:282:104 | key : String | Test.java:7043:22:7043:26 | key : String | provenance | | +| Test.java:282:102:282:104 | key : String | Test.java:282:69:282:110 | new MyAbstractKeyValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | +| Test.java:282:102:282:104 | key : String | Test.java:7037:22:7037:26 | key : String | provenance | | | Test.java:283:53:283:57 | key : String | Test.java:283:111:283:113 | key : String | provenance | | | Test.java:283:105:283:105 | m [post update] : LinkedMap [] : String | Test.java:283:129:283:129 | m : LinkedMap [] : String | provenance | | -| Test.java:283:111:283:113 | key : String | Test.java:283:105:283:105 | m [post update] : LinkedMap [] : String | provenance | MaD:19 | -| Test.java:283:111:283:113 | key : String | Test.java:283:105:283:105 | m [post update] : LinkedMap [] : String | provenance | MaD:779 | -| Test.java:283:129:283:129 | m : LinkedMap [] : String | Test.java:283:129:283:143 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:562 | +| Test.java:283:111:283:113 | key : String | Test.java:283:105:283:105 | m [post update] : LinkedMap [] : String | provenance | MaD:20 | +| Test.java:283:111:283:113 | key : String | Test.java:283:105:283:105 | m [post update] : LinkedMap [] : String | provenance | MaD:783 | +| Test.java:283:129:283:129 | m : LinkedMap [] : String | Test.java:283:129:283:143 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:566 | | Test.java:285:47:285:51 | key : String | Test.java:285:103:285:105 | key : String | provenance | | | Test.java:285:97:285:97 | m [post update] : TreeMap [] : String | Test.java:285:121:285:121 | m : TreeMap [] : String | provenance | | -| Test.java:285:103:285:105 | key : String | Test.java:285:97:285:97 | m [post update] : TreeMap [] : String | provenance | MaD:19 | +| Test.java:285:103:285:105 | key : String | Test.java:285:97:285:97 | m [post update] : TreeMap [] : String | provenance | MaD:20 | | Test.java:286:46:286:50 | key : String | Test.java:286:113:286:115 | key : String | provenance | | -| Test.java:286:113:286:115 | key : String | Test.java:286:62:286:116 | new TiedMapEntry(...) : TiedMapEntry [] : String | provenance | MaD:236 | +| Test.java:286:113:286:115 | key : String | Test.java:286:62:286:116 | new TiedMapEntry(...) : TiedMapEntry [] : String | provenance | MaD:237 | | Test.java:287:75:287:79 | key : String | Test.java:287:137:287:139 | key : String | provenance | | | Test.java:287:131:287:131 | m [post update] : TreeBidiMap [] : String | Test.java:287:155:287:155 | m : TreeBidiMap [] : String | provenance | | -| Test.java:287:137:287:139 | key : String | Test.java:287:131:287:131 | m [post update] : TreeBidiMap [] : String | provenance | MaD:19 | -| Test.java:287:137:287:139 | key : String | Test.java:287:131:287:131 | m [post update] : TreeBidiMap [] : String | provenance | MaD:779 | +| Test.java:287:137:287:139 | key : String | Test.java:287:131:287:131 | m [post update] : TreeBidiMap [] : String | provenance | MaD:20 | +| Test.java:287:137:287:139 | key : String | Test.java:287:131:287:131 | m [post update] : TreeBidiMap [] : String | provenance | MaD:783 | | Test.java:288:49:288:58 | key : String | Test.java:288:116:288:118 | key : String | provenance | | | Test.java:288:110:288:110 | m [post update] : PatriciaTrie [] : String | Test.java:288:134:288:134 | m : PatriciaTrie [] : String | provenance | | -| Test.java:288:116:288:118 | key : String | Test.java:288:110:288:110 | m [post update] : PatriciaTrie [] : String | provenance | MaD:19 | -| Test.java:288:116:288:118 | key : String | Test.java:288:110:288:110 | m [post update] : PatriciaTrie [] : String | provenance | MaD:779 | +| Test.java:288:116:288:118 | key : String | Test.java:288:110:288:110 | m [post update] : PatriciaTrie [] : String | provenance | MaD:20 | +| Test.java:288:116:288:118 | key : String | Test.java:288:110:288:110 | m [post update] : PatriciaTrie [] : String | provenance | MaD:783 | | Test.java:290:60:290:66 | value : String | Test.java:290:151:290:155 | value : String | provenance | | | Test.java:290:140:290:140 | m [post update] : ArrayListValuedHashMap [, ] : String | Test.java:290:166:290:166 | m : ArrayListValuedHashMap [, ] : String | provenance | | -| Test.java:290:151:290:155 | value : String | Test.java:290:140:290:140 | m [post update] : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:290:151:290:155 | value : String | Test.java:290:140:290:140 | m [post update] : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:291:51:291:57 | value : String | Test.java:291:104:291:108 | value : String | provenance | | -| Test.java:291:104:291:108 | value : String | Test.java:291:69:291:109 | new DefaultKeyValue(...) : DefaultKeyValue [] : String | provenance | MaD:208 | +| Test.java:291:104:291:108 | value : String | Test.java:291:69:291:109 | new DefaultKeyValue(...) : DefaultKeyValue [] : String | provenance | MaD:209 | | Test.java:292:63:292:69 | value : String | Test.java:292:124:292:128 | value : String | provenance | | -| Test.java:292:111:292:129 | of(...) : Map [] : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | provenance | MaD:61 | -| Test.java:292:124:292:128 | value : String | Test.java:292:111:292:129 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:292:111:292:129 | of(...) : Map [] : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | provenance | MaD:62 | +| Test.java:292:124:292:128 | value : String | Test.java:292:111:292:129 | of(...) : Map [] : String | provenance | MaD:15 | | Test.java:293:51:293:57 | value : String | Test.java:293:116:293:120 | value : String | provenance | | | Test.java:293:105:293:105 | m [post update] : HashedMap [] : String | Test.java:293:131:293:131 | m : HashedMap [] : String | provenance | | -| Test.java:293:116:293:120 | value : String | Test.java:293:105:293:105 | m [post update] : HashedMap [] : String | provenance | MaD:20 | -| Test.java:293:116:293:120 | value : String | Test.java:293:105:293:105 | m [post update] : HashedMap [] : String | provenance | MaD:780 | +| Test.java:293:116:293:120 | value : String | Test.java:293:105:293:105 | m [post update] : HashedMap [] : String | provenance | MaD:21 | +| Test.java:293:116:293:120 | value : String | Test.java:293:105:293:105 | m [post update] : HashedMap [] : String | provenance | MaD:784 | | Test.java:294:58:294:64 | value : String | Test.java:294:145:294:149 | value : String | provenance | | | Test.java:294:134:294:134 | m [post update] : HashSetValuedHashMap [, ] : String | Test.java:294:160:294:160 | m : HashSetValuedHashMap [, ] : String | provenance | | -| Test.java:294:145:294:149 | value : String | Test.java:294:134:294:134 | m [post update] : HashSetValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:294:145:294:149 | value : String | Test.java:294:134:294:134 | m [post update] : HashSetValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:295:51:295:57 | value : String | Test.java:295:106:295:110 | value : String | provenance | | -| Test.java:295:93:295:111 | of(...) : Map [] : String | Test.java:295:69:295:112 | new LinkedMap(...) : LinkedMap [] : String | provenance | MaD:320 | -| Test.java:295:106:295:110 | value : String | Test.java:295:93:295:111 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:295:93:295:111 | of(...) : Map [] : String | Test.java:295:69:295:112 | new LinkedMap(...) : LinkedMap [] : String | provenance | MaD:321 | +| Test.java:295:106:295:110 | value : String | Test.java:295:93:295:111 | of(...) : Map [] : String | provenance | MaD:15 | | Test.java:296:61:296:67 | value : Object | Test.java:296:132:296:136 | value : Object | provenance | | | Test.java:296:61:296:67 | value : String | Test.java:296:132:296:136 | value : String | provenance | | -| Test.java:296:119:296:137 | of(...) : Map [] : Object | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : Object | provenance | MaD:330 | -| Test.java:296:119:296:137 | of(...) : Map [] : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | provenance | MaD:330 | -| Test.java:296:132:296:136 | value : Object | Test.java:296:119:296:137 | of(...) : Map [] : Object | provenance | MaD:14 | -| Test.java:296:132:296:136 | value : String | Test.java:296:119:296:137 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:296:119:296:137 | of(...) : Map [] : Object | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : Object | provenance | MaD:331 | +| Test.java:296:119:296:137 | of(...) : Map [] : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | provenance | MaD:331 | +| Test.java:296:132:296:136 | value : Object | Test.java:296:119:296:137 | of(...) : Map [] : Object | provenance | MaD:15 | +| Test.java:296:132:296:136 | value : String | Test.java:296:119:296:137 | of(...) : Map [] : String | provenance | MaD:15 | | Test.java:297:47:297:53 | value : String | Test.java:297:121:297:125 | value : String | provenance | | | Test.java:297:105:297:105 | m [post update] : MultiKeyMap [] : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | provenance | | -| Test.java:297:121:297:125 | value : String | Test.java:297:105:297:105 | m [post update] : MultiKeyMap [] : String | provenance | MaD:340 | +| Test.java:297:121:297:125 | value : String | Test.java:297:105:297:105 | m [post update] : MultiKeyMap [] : String | provenance | MaD:341 | | Test.java:298:49:298:55 | value : String | Test.java:298:122:298:126 | value : String | provenance | | | Test.java:298:111:298:111 | m [post update] : MultiValueMap [, ] : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | provenance | | | Test.java:298:111:298:111 | m [post update] : MultiValueMap [] : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | provenance | | -| Test.java:298:122:298:126 | value : String | Test.java:298:111:298:111 | m [post update] : MultiValueMap [, ] : String | provenance | MaD:737 | -| Test.java:298:122:298:126 | value : String | Test.java:298:111:298:111 | m [post update] : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:298:122:298:126 | value : String | Test.java:298:111:298:111 | m [post update] : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:298:122:298:126 | value : String | Test.java:298:111:298:111 | m [post update] : MultiValueMap [, ] : String | provenance | MaD:741 | +| Test.java:298:122:298:126 | value : String | Test.java:298:111:298:111 | m [post update] : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:298:122:298:126 | value : String | Test.java:298:111:298:111 | m [post update] : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:299:55:299:61 | value : String | Test.java:299:111:299:115 | value : String | provenance | | -| Test.java:299:111:299:115 | value : String | Test.java:299:73:299:116 | new MyAbstractKeyValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | -| Test.java:299:111:299:115 | value : String | Test.java:7043:29:7043:35 | value : String | provenance | | +| Test.java:299:111:299:115 | value : String | Test.java:299:73:299:116 | new MyAbstractKeyValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:193 | +| Test.java:299:111:299:115 | value : String | Test.java:7037:29:7037:35 | value : String | provenance | | | Test.java:300:55:300:61 | value : String | Test.java:300:111:300:115 | value : String | provenance | | -| Test.java:300:111:300:115 | value : String | Test.java:300:73:300:116 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | -| Test.java:300:111:300:115 | value : String | Test.java:7057:35:7057:47 | value : String | provenance | | +| Test.java:300:111:300:115 | value : String | Test.java:300:73:300:116 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | provenance | MaD:199 | +| Test.java:300:111:300:115 | value : String | Test.java:7051:35:7051:47 | value : String | provenance | | | Test.java:301:65:301:71 | value : String | Test.java:301:145:301:149 | value : String | provenance | | -| Test.java:301:125:301:150 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | Test.java:301:83:301:151 | new MyAbstractMapEntryDecorator(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:200 | -| Test.java:301:125:301:150 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | Test.java:7067:31:7067:57 | entry : MyAbstractMapEntry [] : String | provenance | | +| Test.java:301:125:301:150 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | Test.java:301:83:301:151 | new MyAbstractMapEntryDecorator(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:201 | +| Test.java:301:125:301:150 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | Test.java:7061:31:7061:57 | entry : MyAbstractMapEntry [] : String | provenance | | | Test.java:301:145:301:149 | value : String | Test.java:300:55:300:61 | value : String | provenance | | -| Test.java:301:145:301:149 | value : String | Test.java:301:125:301:150 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | +| Test.java:301:145:301:149 | value : String | Test.java:301:125:301:150 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:199 | | Test.java:302:54:302:60 | value : String | Test.java:302:119:302:123 | value : String | provenance | | | Test.java:302:108:302:108 | m [post update] : LinkedMap [] : String | Test.java:302:134:302:134 | m : LinkedMap [] : String | provenance | | -| Test.java:302:119:302:123 | value : String | Test.java:302:108:302:108 | m [post update] : LinkedMap [] : String | provenance | MaD:20 | -| Test.java:302:119:302:123 | value : String | Test.java:302:108:302:108 | m [post update] : LinkedMap [] : String | provenance | MaD:780 | -| Test.java:302:134:302:134 | m : LinkedMap [] : String | Test.java:302:134:302:148 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:563 | +| Test.java:302:119:302:123 | value : String | Test.java:302:108:302:108 | m [post update] : LinkedMap [] : String | provenance | MaD:21 | +| Test.java:302:119:302:123 | value : String | Test.java:302:108:302:108 | m [post update] : LinkedMap [] : String | provenance | MaD:784 | +| Test.java:302:134:302:134 | m : LinkedMap [] : String | Test.java:302:134:302:148 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:567 | | Test.java:304:49:304:55 | value : Map | Test.java:304:112:304:116 | value : Map | provenance | | | Test.java:304:49:304:55 | value : String | Test.java:304:112:304:116 | value : String | provenance | | | Test.java:304:101:304:101 | m [post update] : TreeMap [] : Map | Test.java:304:127:304:127 | m : TreeMap [] : Map | provenance | | | Test.java:304:101:304:101 | m [post update] : TreeMap [] : String | Test.java:304:127:304:127 | m : TreeMap [] : String | provenance | | -| Test.java:304:112:304:116 | value : Map | Test.java:304:101:304:101 | m [post update] : TreeMap [] : Map | provenance | MaD:20 | -| Test.java:304:112:304:116 | value : String | Test.java:304:101:304:101 | m [post update] : TreeMap [] : String | provenance | MaD:20 | +| Test.java:304:112:304:116 | value : Map | Test.java:304:101:304:101 | m [post update] : TreeMap [] : Map | provenance | MaD:21 | +| Test.java:304:112:304:116 | value : String | Test.java:304:101:304:101 | m [post update] : TreeMap [] : String | provenance | MaD:21 | | Test.java:305:48:305:54 | value : String | Test.java:305:116:305:120 | value : String | provenance | | -| Test.java:305:93:305:121 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:305:66:305:127 | new TiedMapEntry(...) : TiedMapEntry [] : String | provenance | MaD:235 | +| Test.java:305:93:305:121 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:305:66:305:127 | new TiedMapEntry(...) : TiedMapEntry [] : String | provenance | MaD:236 | | Test.java:305:116:305:120 | value : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:305:116:305:120 | value : String | Test.java:305:93:305:121 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:305:116:305:120 | value : String | Test.java:305:93:305:121 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:306:77:306:83 | value : String | Test.java:306:146:306:150 | value : String | provenance | | | Test.java:306:135:306:135 | m [post update] : TreeBidiMap [] : String | Test.java:306:161:306:161 | m : TreeBidiMap [] : String | provenance | | -| Test.java:306:146:306:150 | value : String | Test.java:306:135:306:135 | m [post update] : TreeBidiMap [] : String | provenance | MaD:20 | -| Test.java:306:146:306:150 | value : String | Test.java:306:135:306:135 | m [post update] : TreeBidiMap [] : String | provenance | MaD:780 | +| Test.java:306:146:306:150 | value : String | Test.java:306:135:306:135 | m [post update] : TreeBidiMap [] : String | provenance | MaD:21 | +| Test.java:306:146:306:150 | value : String | Test.java:306:135:306:135 | m [post update] : TreeBidiMap [] : String | provenance | MaD:784 | | Test.java:307:50:307:56 | value : String | Test.java:307:114:307:118 | value : String | provenance | | | Test.java:307:103:307:103 | m [post update] : PatriciaTrie [] : String | Test.java:307:129:307:129 | m : PatriciaTrie [] : String | provenance | | -| Test.java:307:114:307:118 | value : String | Test.java:307:103:307:103 | m [post update] : PatriciaTrie [] : String | provenance | MaD:20 | -| Test.java:307:114:307:118 | value : String | Test.java:307:103:307:103 | m [post update] : PatriciaTrie [] : String | provenance | MaD:780 | +| Test.java:307:114:307:118 | value : String | Test.java:307:103:307:103 | m [post update] : PatriciaTrie [] : String | provenance | MaD:21 | +| Test.java:307:114:307:118 | value : String | Test.java:307:103:307:103 | m [post update] : PatriciaTrie [] : String | provenance | MaD:784 | | Test.java:308:56:308:62 | value : String | Test.java:308:114:308:118 | value : String | provenance | | -| Test.java:308:114:308:118 | value : String | Test.java:308:74:308:119 | new UnmodifiableMapEntry(...) : UnmodifiableMapEntry [] : String | provenance | MaD:242 | +| Test.java:308:114:308:118 | value : String | Test.java:308:74:308:119 | new UnmodifiableMapEntry(...) : UnmodifiableMapEntry [] : String | provenance | MaD:243 | | Test.java:318:16:318:23 | source(...) : Object | Test.java:319:33:319:34 | in : Object | provenance | | | Test.java:319:10:319:41 | new MyAbstractKeyValue<>(...) : MyAbstractKeyValue [] : Object | Test.java:320:19:320:21 | out : MyAbstractKeyValue [] : Object | provenance | | -| Test.java:319:33:319:34 | in : Object | Test.java:319:10:319:41 | new MyAbstractKeyValue<>(...) : MyAbstractKeyValue [] : Object | provenance | MaD:191 | -| Test.java:319:33:319:34 | in : Object | Test.java:7043:22:7043:26 | key : Object | provenance | | +| Test.java:319:33:319:34 | in : Object | Test.java:319:10:319:41 | new MyAbstractKeyValue<>(...) : MyAbstractKeyValue [] : Object | provenance | MaD:192 | +| Test.java:319:33:319:34 | in : Object | Test.java:7037:22:7037:26 | key : Object | provenance | | | Test.java:320:19:320:21 | out : MyAbstractKeyValue [] : Object | Test.java:237:18:237:48 | container : MyAbstractKeyValue [] : Object | provenance | | -| Test.java:320:19:320:21 | out : MyAbstractKeyValue [] : Object | Test.java:320:9:320:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:320:19:320:21 | out : MyAbstractKeyValue [] : Object | Test.java:320:9:320:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:325:16:325:23 | source(...) : Object | Test.java:326:39:326:40 | in : Object | provenance | | | Test.java:326:10:326:41 | new MyAbstractKeyValue<>(...) : MyAbstractKeyValue [] : Object | Test.java:327:21:327:23 | out : MyAbstractKeyValue [] : Object | provenance | | -| Test.java:326:39:326:40 | in : Object | Test.java:326:10:326:41 | new MyAbstractKeyValue<>(...) : MyAbstractKeyValue [] : Object | provenance | MaD:192 | -| Test.java:326:39:326:40 | in : Object | Test.java:7043:29:7043:35 | value : Object | provenance | | +| Test.java:326:39:326:40 | in : Object | Test.java:326:10:326:41 | new MyAbstractKeyValue<>(...) : MyAbstractKeyValue [] : Object | provenance | MaD:193 | +| Test.java:326:39:326:40 | in : Object | Test.java:7037:29:7037:35 | value : Object | provenance | | | Test.java:327:21:327:23 | out : MyAbstractKeyValue [] : Object | Test.java:243:20:243:50 | container : MyAbstractKeyValue [] : Object | provenance | | -| Test.java:327:21:327:23 | out : MyAbstractKeyValue [] : Object | Test.java:327:9:327:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:327:21:327:23 | out : MyAbstractKeyValue [] : Object | Test.java:327:9:327:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:332:16:332:23 | source(...) : Object | Test.java:333:15:333:16 | in : Object | provenance | | | Test.java:333:4:333:6 | out [post update] : DefaultKeyValue [] : Object | Test.java:334:19:334:21 | out : DefaultKeyValue [] : Object | provenance | | -| Test.java:333:15:333:16 | in : Object | Test.java:333:4:333:6 | out [post update] : DefaultKeyValue [] : Object | provenance | MaD:193 | +| Test.java:333:15:333:16 | in : Object | Test.java:333:4:333:6 | out [post update] : DefaultKeyValue [] : Object | provenance | MaD:194 | | Test.java:334:19:334:21 | out : DefaultKeyValue [] : Object | Test.java:237:18:237:48 | container : DefaultKeyValue [] : Object | provenance | | -| Test.java:334:19:334:21 | out : DefaultKeyValue [] : Object | Test.java:334:9:334:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:334:19:334:21 | out : DefaultKeyValue [] : Object | Test.java:334:9:334:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:339:16:339:23 | source(...) : Object | Test.java:340:17:340:18 | in : Object | provenance | | | Test.java:340:4:340:6 | out [post update] : MyAbstractKeyValue [] : Object | Test.java:341:19:341:21 | out : MyAbstractKeyValue [] : Object | provenance | | -| Test.java:340:17:340:18 | in : Object | Test.java:340:4:340:6 | out [post update] : MyAbstractKeyValue [] : Object | provenance | MaD:193 | -| Test.java:340:17:340:18 | in : Object | Test.java:7047:14:7047:24 | key : Object | provenance | | +| Test.java:340:17:340:18 | in : Object | Test.java:340:4:340:6 | out [post update] : MyAbstractKeyValue [] : Object | provenance | MaD:194 | +| Test.java:340:17:340:18 | in : Object | Test.java:7041:14:7041:24 | key : Object | provenance | | | Test.java:341:19:341:21 | out : MyAbstractKeyValue [] : Object | Test.java:237:18:237:48 | container : MyAbstractKeyValue [] : Object | provenance | | -| Test.java:341:19:341:21 | out : MyAbstractKeyValue [] : Object | Test.java:341:9:341:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:341:19:341:21 | out : MyAbstractKeyValue [] : Object | Test.java:341:9:341:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:346:25:346:58 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | Test.java:347:10:347:11 | in : DefaultKeyValue [] : String | provenance | | | Test.java:346:42:346:57 | (...)... : String | Test.java:273:49:273:53 | key : String | provenance | | -| Test.java:346:42:346:57 | (...)... : String | Test.java:346:25:346:58 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | provenance | MaD:207 | +| Test.java:346:42:346:57 | (...)... : String | Test.java:346:25:346:58 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | provenance | MaD:208 | | Test.java:346:50:346:57 | source(...) : Object | Test.java:346:42:346:57 | (...)... : String | provenance | | -| Test.java:347:10:347:11 | in : DefaultKeyValue [] : String | Test.java:347:10:347:24 | setKey(...) : String | provenance | MaD:194 | +| Test.java:347:10:347:11 | in : DefaultKeyValue [] : String | Test.java:347:10:347:24 | setKey(...) : String | provenance | MaD:195 | | Test.java:347:10:347:24 | setKey(...) : String | Test.java:348:9:348:11 | out | provenance | | | Test.java:353:28:353:62 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | Test.java:354:10:354:11 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:353:46:353:61 | (...)... : String | Test.java:282:53:282:57 | key : String | provenance | | -| Test.java:353:46:353:61 | (...)... : String | Test.java:353:28:353:62 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:191 | +| Test.java:353:46:353:61 | (...)... : String | Test.java:353:28:353:62 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | | Test.java:353:54:353:61 | source(...) : Object | Test.java:353:46:353:61 | (...)... : String | provenance | | -| Test.java:354:10:354:11 | in : MyAbstractKeyValue [] : String | Test.java:354:10:354:26 | mySetKey(...) : String | provenance | MaD:194 | -| Test.java:354:10:354:11 | in : MyAbstractKeyValue [] : String | Test.java:7047:5:7047:12 | parameter this : MyAbstractKeyValue [] : String | provenance | | +| Test.java:354:10:354:11 | in : MyAbstractKeyValue [] : String | Test.java:354:10:354:26 | mySetKey(...) : String | provenance | MaD:195 | +| Test.java:354:10:354:11 | in : MyAbstractKeyValue [] : String | Test.java:7041:5:7041:12 | parameter this : MyAbstractKeyValue [] : String | provenance | | | Test.java:354:10:354:26 | mySetKey(...) : String | Test.java:355:9:355:11 | out | provenance | | | Test.java:360:16:360:23 | source(...) : Object | Test.java:361:17:361:18 | in : Object | provenance | | | Test.java:361:4:361:6 | out [post update] : UnmodifiableMapEntry [] : Object | Test.java:362:21:362:23 | out : UnmodifiableMapEntry [] : Object | provenance | | -| Test.java:361:17:361:18 | in : Object | Test.java:361:4:361:6 | out [post update] : UnmodifiableMapEntry [] : Object | provenance | MaD:11 | -| Test.java:361:17:361:18 | in : Object | Test.java:361:4:361:6 | out [post update] : UnmodifiableMapEntry [] : Object | provenance | MaD:195 | +| Test.java:361:17:361:18 | in : Object | Test.java:361:4:361:6 | out [post update] : UnmodifiableMapEntry [] : Object | provenance | MaD:12 | +| Test.java:361:17:361:18 | in : Object | Test.java:361:4:361:6 | out [post update] : UnmodifiableMapEntry [] : Object | provenance | MaD:196 | | Test.java:362:21:362:23 | out : UnmodifiableMapEntry [] : Object | Test.java:243:20:243:50 | container : UnmodifiableMapEntry [] : Object | provenance | | -| Test.java:362:21:362:23 | out : UnmodifiableMapEntry [] : Object | Test.java:362:9:362:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:362:21:362:23 | out : UnmodifiableMapEntry [] : Object | Test.java:362:9:362:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:367:16:367:23 | source(...) : Object | Test.java:368:17:368:18 | in : Object | provenance | | | Test.java:368:4:368:6 | out [post update] : DefaultKeyValue [] : Object | Test.java:369:21:369:23 | out : DefaultKeyValue [] : Object | provenance | | -| Test.java:368:17:368:18 | in : Object | Test.java:368:4:368:6 | out [post update] : DefaultKeyValue [] : Object | provenance | MaD:195 | +| Test.java:368:17:368:18 | in : Object | Test.java:368:4:368:6 | out [post update] : DefaultKeyValue [] : Object | provenance | MaD:196 | | Test.java:369:21:369:23 | out : DefaultKeyValue [] : Object | Test.java:243:20:243:50 | container : DefaultKeyValue [] : Object | provenance | | -| Test.java:369:21:369:23 | out : DefaultKeyValue [] : Object | Test.java:369:9:369:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:369:21:369:23 | out : DefaultKeyValue [] : Object | Test.java:369:9:369:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:374:16:374:23 | source(...) : Object | Test.java:375:17:375:18 | in : Object | provenance | | | Test.java:375:4:375:6 | out [post update] : AbstractMapEntry [] : Object | Test.java:376:21:376:23 | out : AbstractMapEntry [] : Object | provenance | | -| Test.java:375:17:375:18 | in : Object | Test.java:375:4:375:6 | out [post update] : AbstractMapEntry [] : Object | provenance | MaD:11 | -| Test.java:375:17:375:18 | in : Object | Test.java:375:4:375:6 | out [post update] : AbstractMapEntry [] : Object | provenance | MaD:195 | +| Test.java:375:17:375:18 | in : Object | Test.java:375:4:375:6 | out [post update] : AbstractMapEntry [] : Object | provenance | MaD:12 | +| Test.java:375:17:375:18 | in : Object | Test.java:375:4:375:6 | out [post update] : AbstractMapEntry [] : Object | provenance | MaD:196 | | Test.java:376:21:376:23 | out : AbstractMapEntry [] : Object | Test.java:243:20:243:50 | container : AbstractMapEntry [] : Object | provenance | | -| Test.java:376:21:376:23 | out : AbstractMapEntry [] : Object | Test.java:376:9:376:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:376:21:376:23 | out : AbstractMapEntry [] : Object | Test.java:376:9:376:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:381:16:381:23 | source(...) : Object | Test.java:382:19:382:20 | in : Object | provenance | | | Test.java:382:4:382:6 | out [post update] : MyAbstractKeyValue [] : Object | Test.java:383:21:383:23 | out : MyAbstractKeyValue [] : Object | provenance | | -| Test.java:382:19:382:20 | in : Object | Test.java:382:4:382:6 | out [post update] : MyAbstractKeyValue [] : Object | provenance | MaD:195 | -| Test.java:382:19:382:20 | in : Object | Test.java:7051:16:7051:28 | value : Object | provenance | | +| Test.java:382:19:382:20 | in : Object | Test.java:382:4:382:6 | out [post update] : MyAbstractKeyValue [] : Object | provenance | MaD:196 | +| Test.java:382:19:382:20 | in : Object | Test.java:7045:16:7045:28 | value : Object | provenance | | | Test.java:383:21:383:23 | out : MyAbstractKeyValue [] : Object | Test.java:243:20:243:50 | container : MyAbstractKeyValue [] : Object | provenance | | -| Test.java:383:21:383:23 | out : MyAbstractKeyValue [] : Object | Test.java:383:9:383:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:383:21:383:23 | out : MyAbstractKeyValue [] : Object | Test.java:383:9:383:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:388:30:388:65 | newUMEWithMapValue(...) : UnmodifiableMapEntry [] : String | Test.java:389:10:389:11 | in : UnmodifiableMapEntry [] : String | provenance | | | Test.java:388:49:388:64 | (...)... : String | Test.java:308:56:308:62 | value : String | provenance | | -| Test.java:388:49:388:64 | (...)... : String | Test.java:388:30:388:65 | newUMEWithMapValue(...) : UnmodifiableMapEntry [] : String | provenance | MaD:242 | +| Test.java:388:49:388:64 | (...)... : String | Test.java:388:30:388:65 | newUMEWithMapValue(...) : UnmodifiableMapEntry [] : String | provenance | MaD:243 | | Test.java:388:57:388:64 | source(...) : Object | Test.java:388:49:388:64 | (...)... : String | provenance | | -| Test.java:389:10:389:11 | in : UnmodifiableMapEntry [] : String | Test.java:389:10:389:26 | setValue(...) : String | provenance | MaD:12 | -| Test.java:389:10:389:11 | in : UnmodifiableMapEntry [] : String | Test.java:389:10:389:26 | setValue(...) : String | provenance | MaD:196 | +| Test.java:389:10:389:11 | in : UnmodifiableMapEntry [] : String | Test.java:389:10:389:26 | setValue(...) : String | provenance | MaD:13 | +| Test.java:389:10:389:11 | in : UnmodifiableMapEntry [] : String | Test.java:389:10:389:26 | setValue(...) : String | provenance | MaD:197 | | Test.java:389:10:389:26 | setValue(...) : String | Test.java:390:9:390:11 | out | provenance | | | Test.java:395:25:395:60 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | Test.java:396:10:396:11 | in : DefaultKeyValue [] : String | provenance | | | Test.java:395:44:395:59 | (...)... : String | Test.java:291:51:291:57 | value : String | provenance | | -| Test.java:395:44:395:59 | (...)... : String | Test.java:395:25:395:60 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | provenance | MaD:208 | +| Test.java:395:44:395:59 | (...)... : String | Test.java:395:25:395:60 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | provenance | MaD:209 | | Test.java:395:52:395:59 | source(...) : Object | Test.java:395:44:395:59 | (...)... : String | provenance | | -| Test.java:396:10:396:11 | in : DefaultKeyValue [] : String | Test.java:396:10:396:26 | setValue(...) : String | provenance | MaD:196 | +| Test.java:396:10:396:11 | in : DefaultKeyValue [] : String | Test.java:396:10:396:26 | setValue(...) : String | provenance | MaD:197 | | Test.java:396:10:396:26 | setValue(...) : String | Test.java:397:9:397:11 | out | provenance | | | Test.java:402:26:402:62 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | Test.java:403:10:403:11 | in : MyAbstractMapEntry [] : String | provenance | | | Test.java:402:46:402:61 | (...)... : String | Test.java:300:55:300:61 | value : String | provenance | | -| Test.java:402:46:402:61 | (...)... : String | Test.java:402:26:402:62 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | +| Test.java:402:46:402:61 | (...)... : String | Test.java:402:26:402:62 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:199 | | Test.java:402:54:402:61 | source(...) : Object | Test.java:402:46:402:61 | (...)... : String | provenance | | -| Test.java:403:10:403:11 | in : MyAbstractMapEntry [] : String | Test.java:403:10:403:26 | setValue(...) : String | provenance | MaD:12 | -| Test.java:403:10:403:11 | in : MyAbstractMapEntry [] : String | Test.java:403:10:403:26 | setValue(...) : String | provenance | MaD:196 | +| Test.java:403:10:403:11 | in : MyAbstractMapEntry [] : String | Test.java:403:10:403:26 | setValue(...) : String | provenance | MaD:13 | +| Test.java:403:10:403:11 | in : MyAbstractMapEntry [] : String | Test.java:403:10:403:26 | setValue(...) : String | provenance | MaD:197 | | Test.java:403:10:403:26 | setValue(...) : String | Test.java:404:9:404:11 | out | provenance | | | Test.java:409:26:409:62 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | Test.java:410:10:410:11 | in : MyAbstractMapEntry [] : String | provenance | | | Test.java:409:46:409:61 | (...)... : String | Test.java:300:55:300:61 | value : String | provenance | | -| Test.java:409:46:409:61 | (...)... : String | Test.java:409:26:409:62 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | +| Test.java:409:46:409:61 | (...)... : String | Test.java:409:26:409:62 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:199 | | Test.java:409:54:409:61 | source(...) : Object | Test.java:409:46:409:61 | (...)... : String | provenance | | -| Test.java:410:10:410:11 | in : MyAbstractMapEntry [] : String | Test.java:410:10:410:26 | setValue(...) : String | provenance | MaD:12 | -| Test.java:410:10:410:11 | in : MyAbstractMapEntry [] : String | Test.java:410:10:410:26 | setValue(...) : String | provenance | MaD:196 | +| Test.java:410:10:410:11 | in : MyAbstractMapEntry [] : String | Test.java:410:10:410:26 | setValue(...) : String | provenance | MaD:13 | +| Test.java:410:10:410:11 | in : MyAbstractMapEntry [] : String | Test.java:410:10:410:26 | setValue(...) : String | provenance | MaD:197 | | Test.java:410:10:410:26 | setValue(...) : String | Test.java:411:9:411:11 | out | provenance | | | Test.java:416:28:416:64 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | Test.java:417:10:417:11 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:416:48:416:63 | (...)... : String | Test.java:299:55:299:61 | value : String | provenance | | -| Test.java:416:48:416:63 | (...)... : String | Test.java:416:28:416:64 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | +| Test.java:416:48:416:63 | (...)... : String | Test.java:416:28:416:64 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:193 | | Test.java:416:56:416:63 | source(...) : Object | Test.java:416:48:416:63 | (...)... : String | provenance | | -| Test.java:417:10:417:11 | in : MyAbstractKeyValue [] : String | Test.java:417:10:417:28 | mySetValue(...) : String | provenance | MaD:196 | -| Test.java:417:10:417:11 | in : MyAbstractKeyValue [] : String | Test.java:7051:5:7051:14 | parameter this : MyAbstractKeyValue [] : String | provenance | | +| Test.java:417:10:417:11 | in : MyAbstractKeyValue [] : String | Test.java:417:10:417:28 | mySetValue(...) : String | provenance | MaD:197 | +| Test.java:417:10:417:11 | in : MyAbstractKeyValue [] : String | Test.java:7045:5:7045:14 | parameter this : MyAbstractKeyValue [] : String | provenance | | | Test.java:417:10:417:28 | mySetValue(...) : String | Test.java:418:9:418:11 | out | provenance | | | Test.java:423:28:423:64 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | Test.java:424:10:424:11 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:423:48:423:63 | (...)... : String | Test.java:299:55:299:61 | value : String | provenance | | -| Test.java:423:48:423:63 | (...)... : String | Test.java:423:28:423:64 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | +| Test.java:423:48:423:63 | (...)... : String | Test.java:423:28:423:64 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:193 | | Test.java:423:56:423:63 | source(...) : Object | Test.java:423:48:423:63 | (...)... : String | provenance | | -| Test.java:424:10:424:11 | in : MyAbstractKeyValue [] : String | Test.java:424:10:424:36 | mySetValue(...) : String | provenance | MaD:196 | -| Test.java:424:10:424:11 | in : MyAbstractKeyValue [] : String | Test.java:7051:5:7051:14 | parameter this : MyAbstractKeyValue [] : String | provenance | | +| Test.java:424:10:424:11 | in : MyAbstractKeyValue [] : String | Test.java:424:10:424:36 | mySetValue(...) : String | provenance | MaD:197 | +| Test.java:424:10:424:11 | in : MyAbstractKeyValue [] : String | Test.java:7045:5:7045:14 | parameter this : MyAbstractKeyValue [] : String | provenance | | | Test.java:424:10:424:36 | mySetValue(...) : String | Test.java:425:9:425:11 | out | provenance | | | Test.java:430:16:430:23 | source(...) : Object | Test.java:431:33:431:34 | in : Object | provenance | | | Test.java:431:10:431:41 | new MyAbstractMapEntry<>(...) : MyAbstractMapEntry [] : Object | Test.java:432:19:432:21 | out : MyAbstractMapEntry [] : Object | provenance | | -| Test.java:431:33:431:34 | in : Object | Test.java:431:10:431:41 | new MyAbstractMapEntry<>(...) : MyAbstractMapEntry [] : Object | provenance | MaD:197 | -| Test.java:431:33:431:34 | in : Object | Test.java:7057:22:7057:32 | key : Object | provenance | | +| Test.java:431:33:431:34 | in : Object | Test.java:431:10:431:41 | new MyAbstractMapEntry<>(...) : MyAbstractMapEntry [] : Object | provenance | MaD:198 | +| Test.java:431:33:431:34 | in : Object | Test.java:7051:22:7051:32 | key : Object | provenance | | | Test.java:432:19:432:21 | out : MyAbstractMapEntry [] : Object | Test.java:237:18:237:48 | container : MyAbstractMapEntry [] : Object | provenance | | -| Test.java:432:19:432:21 | out : MyAbstractMapEntry [] : Object | Test.java:432:9:432:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:432:19:432:21 | out : MyAbstractMapEntry [] : Object | Test.java:432:9:432:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:437:16:437:23 | source(...) : Object | Test.java:438:39:438:40 | in : Object | provenance | | | Test.java:438:10:438:41 | new MyAbstractMapEntry<>(...) : MyAbstractMapEntry [] : Object | Test.java:439:21:439:23 | out : MyAbstractMapEntry [] : Object | provenance | | -| Test.java:438:39:438:40 | in : Object | Test.java:438:10:438:41 | new MyAbstractMapEntry<>(...) : MyAbstractMapEntry [] : Object | provenance | MaD:198 | -| Test.java:438:39:438:40 | in : Object | Test.java:7057:35:7057:47 | value : Object | provenance | | +| Test.java:438:39:438:40 | in : Object | Test.java:438:10:438:41 | new MyAbstractMapEntry<>(...) : MyAbstractMapEntry [] : Object | provenance | MaD:199 | +| Test.java:438:39:438:40 | in : Object | Test.java:7051:35:7051:47 | value : Object | provenance | | | Test.java:439:21:439:23 | out : MyAbstractMapEntry [] : Object | Test.java:243:20:243:50 | container : MyAbstractMapEntry [] : Object | provenance | | -| Test.java:439:21:439:23 | out : MyAbstractMapEntry [] : Object | Test.java:439:9:439:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:439:21:439:23 | out : MyAbstractMapEntry [] : Object | Test.java:439:9:439:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:444:34:444:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | Test.java:445:42:445:43 | in : MyAbstractMapEntry [] : String | provenance | | | Test.java:444:52:444:67 | (...)... : String | Test.java:280:53:280:57 | key : String | provenance | | -| Test.java:444:52:444:67 | (...)... : String | Test.java:444:34:444:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | provenance | MaD:197 | +| Test.java:444:52:444:67 | (...)... : String | Test.java:444:34:444:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | | Test.java:444:60:444:67 | source(...) : Object | Test.java:444:52:444:67 | (...)... : String | provenance | | | Test.java:445:10:445:44 | new MyAbstractMapEntryDecorator<>(...) : MyAbstractMapEntryDecorator [] : String | Test.java:446:19:446:21 | out : MyAbstractMapEntryDecorator [] : String | provenance | | -| Test.java:445:42:445:43 | in : MyAbstractMapEntry [] : String | Test.java:445:10:445:44 | new MyAbstractMapEntryDecorator<>(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:199 | -| Test.java:445:42:445:43 | in : MyAbstractMapEntry [] : String | Test.java:7067:31:7067:57 | entry : MyAbstractMapEntry [] : String | provenance | | +| Test.java:445:42:445:43 | in : MyAbstractMapEntry [] : String | Test.java:445:10:445:44 | new MyAbstractMapEntryDecorator<>(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:200 | +| Test.java:445:42:445:43 | in : MyAbstractMapEntry [] : String | Test.java:7061:31:7061:57 | entry : MyAbstractMapEntry [] : String | provenance | | | Test.java:446:19:446:21 | out : MyAbstractMapEntryDecorator [] : String | Test.java:239:18:239:57 | container : MyAbstractMapEntryDecorator [] : String | provenance | | -| Test.java:446:19:446:21 | out : MyAbstractMapEntryDecorator [] : String | Test.java:446:9:446:22 | getMapKey(...) | provenance | MaD:9 | -| Test.java:446:19:446:21 | out : MyAbstractMapEntryDecorator [] : String | Test.java:446:9:446:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:446:19:446:21 | out : MyAbstractMapEntryDecorator [] : String | Test.java:446:9:446:22 | getMapKey(...) | provenance | MaD:10 | +| Test.java:446:19:446:21 | out : MyAbstractMapEntryDecorator [] : String | Test.java:446:9:446:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:451:34:451:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | Test.java:452:42:452:43 | in : MyAbstractMapEntry [] : String | provenance | | | Test.java:451:54:451:69 | (...)... : String | Test.java:300:55:300:61 | value : String | provenance | | -| Test.java:451:54:451:69 | (...)... : String | Test.java:451:34:451:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | +| Test.java:451:54:451:69 | (...)... : String | Test.java:451:34:451:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:199 | | Test.java:451:62:451:69 | source(...) : Object | Test.java:451:54:451:69 | (...)... : String | provenance | | | Test.java:452:10:452:44 | new MyAbstractMapEntryDecorator<>(...) : MyAbstractMapEntryDecorator [] : String | Test.java:453:21:453:23 | out : MyAbstractMapEntryDecorator [] : String | provenance | | -| Test.java:452:42:452:43 | in : MyAbstractMapEntry [] : String | Test.java:452:10:452:44 | new MyAbstractMapEntryDecorator<>(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:200 | -| Test.java:452:42:452:43 | in : MyAbstractMapEntry [] : String | Test.java:7067:31:7067:57 | entry : MyAbstractMapEntry [] : String | provenance | | +| Test.java:452:42:452:43 | in : MyAbstractMapEntry [] : String | Test.java:452:10:452:44 | new MyAbstractMapEntryDecorator<>(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:201 | +| Test.java:452:42:452:43 | in : MyAbstractMapEntry [] : String | Test.java:7061:31:7061:57 | entry : MyAbstractMapEntry [] : String | provenance | | | Test.java:453:21:453:23 | out : MyAbstractMapEntryDecorator [] : String | Test.java:245:20:245:59 | container : MyAbstractMapEntryDecorator [] : String | provenance | | -| Test.java:453:21:453:23 | out : MyAbstractMapEntryDecorator [] : String | Test.java:453:9:453:24 | getMapValue(...) | provenance | MaD:10 | -| Test.java:453:21:453:23 | out : MyAbstractMapEntryDecorator [] : String | Test.java:453:9:453:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:453:21:453:23 | out : MyAbstractMapEntryDecorator [] : String | Test.java:453:9:453:24 | getMapValue(...) | provenance | MaD:11 | +| Test.java:453:21:453:23 | out : MyAbstractMapEntryDecorator [] : String | Test.java:453:9:453:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:458:37:458:72 | newMAMEDWithMapKey(...) : MyAbstractMapEntryDecorator [] : String | Test.java:459:10:459:11 | in : MyAbstractMapEntryDecorator [] : String | provenance | | | Test.java:458:56:458:71 | (...)... : String | Test.java:281:63:281:67 | key : String | provenance | | -| Test.java:458:56:458:71 | (...)... : String | Test.java:458:37:458:72 | newMAMEDWithMapKey(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:197 | +| Test.java:458:56:458:71 | (...)... : String | Test.java:458:37:458:72 | newMAMEDWithMapKey(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:198 | | Test.java:458:64:458:71 | source(...) : Object | Test.java:458:56:458:71 | (...)... : String | provenance | | -| Test.java:459:10:459:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:459:10:459:27 | myGetMapEntry(...) : Entry [] : String | provenance | MaD:201 | -| Test.java:459:10:459:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:7071:19:7071:31 | parameter this : MyAbstractMapEntryDecorator [] : String | provenance | | +| Test.java:459:10:459:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:459:10:459:27 | myGetMapEntry(...) : Entry [] : String | provenance | MaD:202 | +| Test.java:459:10:459:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:7065:19:7065:31 | parameter this : MyAbstractMapEntryDecorator [] : String | provenance | | | Test.java:459:10:459:27 | myGetMapEntry(...) : Entry [] : String | Test.java:460:28:460:30 | out : Entry [] : String | provenance | | | Test.java:460:28:460:30 | out : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | -| Test.java:460:28:460:30 | out : Entry [] : String | Test.java:460:9:460:31 | getMapKeyFromEntry(...) | provenance | MaD:9 | +| Test.java:460:28:460:30 | out : Entry [] : String | Test.java:460:9:460:31 | getMapKeyFromEntry(...) | provenance | MaD:10 | | Test.java:465:37:465:74 | newMAMEDWithMapValue(...) : MyAbstractMapEntryDecorator [] : String | Test.java:466:10:466:11 | in : MyAbstractMapEntryDecorator [] : String | provenance | | | Test.java:465:58:465:73 | (...)... : String | Test.java:301:65:301:71 | value : String | provenance | | -| Test.java:465:58:465:73 | (...)... : String | Test.java:465:37:465:74 | newMAMEDWithMapValue(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:198 | +| Test.java:465:58:465:73 | (...)... : String | Test.java:465:37:465:74 | newMAMEDWithMapValue(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:199 | | Test.java:465:66:465:73 | source(...) : Object | Test.java:465:58:465:73 | (...)... : String | provenance | | -| Test.java:466:10:466:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:466:10:466:27 | myGetMapEntry(...) : Entry [] : String | provenance | MaD:202 | -| Test.java:466:10:466:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:7071:19:7071:31 | parameter this : MyAbstractMapEntryDecorator [] : String | provenance | | +| Test.java:466:10:466:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:466:10:466:27 | myGetMapEntry(...) : Entry [] : String | provenance | MaD:203 | +| Test.java:466:10:466:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:7065:19:7065:31 | parameter this : MyAbstractMapEntryDecorator [] : String | provenance | | | Test.java:466:10:466:27 | myGetMapEntry(...) : Entry [] : String | Test.java:467:30:467:32 | out : Entry [] : String | provenance | | | Test.java:467:30:467:32 | out : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | -| Test.java:467:30:467:32 | out : Entry [] : String | Test.java:467:9:467:33 | getMapValueFromEntry(...) | provenance | MaD:10 | +| Test.java:467:30:467:32 | out : Entry [] : String | Test.java:467:9:467:33 | getMapValueFromEntry(...) | provenance | MaD:11 | | Test.java:472:34:472:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | Test.java:473:30:473:31 | in : MyAbstractMapEntry [] : String | provenance | | | Test.java:472:52:472:67 | (...)... : String | Test.java:280:53:280:57 | key : String | provenance | | -| Test.java:472:52:472:67 | (...)... : String | Test.java:472:34:472:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | provenance | MaD:197 | +| Test.java:472:52:472:67 | (...)... : String | Test.java:472:34:472:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | | Test.java:472:60:472:67 | source(...) : Object | Test.java:472:52:472:67 | (...)... : String | provenance | | | Test.java:473:10:473:32 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : String | Test.java:474:19:474:21 | out : DefaultKeyValue [] : String | provenance | | -| Test.java:473:30:473:31 | in : MyAbstractMapEntry [] : String | Test.java:473:10:473:32 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : String | provenance | MaD:205 | +| Test.java:473:30:473:31 | in : MyAbstractMapEntry [] : String | Test.java:473:10:473:32 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : String | provenance | MaD:206 | | Test.java:474:19:474:21 | out : DefaultKeyValue [] : String | Test.java:237:18:237:48 | container : DefaultKeyValue [] : String | provenance | | -| Test.java:474:19:474:21 | out : DefaultKeyValue [] : String | Test.java:474:9:474:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:474:19:474:21 | out : DefaultKeyValue [] : String | Test.java:474:9:474:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:479:34:479:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | Test.java:480:30:480:31 | in : MyAbstractMapEntry [] : String | provenance | | | Test.java:479:54:479:69 | (...)... : String | Test.java:300:55:300:61 | value : String | provenance | | -| Test.java:479:54:479:69 | (...)... : String | Test.java:479:34:479:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | +| Test.java:479:54:479:69 | (...)... : String | Test.java:479:34:479:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:199 | | Test.java:479:62:479:69 | source(...) : Object | Test.java:479:54:479:69 | (...)... : String | provenance | | | Test.java:480:10:480:32 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : String | Test.java:481:21:481:23 | out : DefaultKeyValue [] : String | provenance | | -| Test.java:480:30:480:31 | in : MyAbstractMapEntry [] : String | Test.java:480:10:480:32 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : String | provenance | MaD:206 | +| Test.java:480:30:480:31 | in : MyAbstractMapEntry [] : String | Test.java:480:10:480:32 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : String | provenance | MaD:207 | | Test.java:481:21:481:23 | out : DefaultKeyValue [] : String | Test.java:243:20:243:50 | container : DefaultKeyValue [] : String | provenance | | -| Test.java:481:21:481:23 | out : DefaultKeyValue [] : String | Test.java:481:9:481:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:481:21:481:23 | out : DefaultKeyValue [] : String | Test.java:481:9:481:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:486:18:486:52 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | Test.java:487:30:487:31 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:486:36:486:51 | (...)... : String | Test.java:282:53:282:57 | key : String | provenance | | -| Test.java:486:36:486:51 | (...)... : String | Test.java:486:18:486:52 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:191 | +| Test.java:486:36:486:51 | (...)... : String | Test.java:486:18:486:52 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | | Test.java:486:44:486:51 | source(...) : Object | Test.java:486:36:486:51 | (...)... : String | provenance | | | Test.java:487:10:487:32 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : String | Test.java:488:19:488:21 | out : DefaultKeyValue [] : String | provenance | | -| Test.java:487:30:487:31 | in : MyAbstractKeyValue [] : String | Test.java:487:10:487:32 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : String | provenance | MaD:203 | +| Test.java:487:30:487:31 | in : MyAbstractKeyValue [] : String | Test.java:487:10:487:32 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : String | provenance | MaD:204 | | Test.java:488:19:488:21 | out : DefaultKeyValue [] : String | Test.java:237:18:237:48 | container : DefaultKeyValue [] : String | provenance | | -| Test.java:488:19:488:21 | out : DefaultKeyValue [] : String | Test.java:488:9:488:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:488:19:488:21 | out : DefaultKeyValue [] : String | Test.java:488:9:488:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:493:18:493:54 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | Test.java:494:30:494:31 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:493:38:493:53 | (...)... : String | Test.java:299:55:299:61 | value : String | provenance | | -| Test.java:493:38:493:53 | (...)... : String | Test.java:493:18:493:54 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | +| Test.java:493:38:493:53 | (...)... : String | Test.java:493:18:493:54 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:193 | | Test.java:493:46:493:53 | source(...) : Object | Test.java:493:38:493:53 | (...)... : String | provenance | | | Test.java:494:10:494:32 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : String | Test.java:495:21:495:23 | out : DefaultKeyValue [] : String | provenance | | -| Test.java:494:30:494:31 | in : MyAbstractKeyValue [] : String | Test.java:494:10:494:32 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : String | provenance | MaD:204 | +| Test.java:494:30:494:31 | in : MyAbstractKeyValue [] : String | Test.java:494:10:494:32 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : String | provenance | MaD:205 | | Test.java:495:21:495:23 | out : DefaultKeyValue [] : String | Test.java:243:20:243:50 | container : DefaultKeyValue [] : String | provenance | | -| Test.java:495:21:495:23 | out : DefaultKeyValue [] : String | Test.java:495:9:495:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:495:21:495:23 | out : DefaultKeyValue [] : String | Test.java:495:9:495:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:500:16:500:23 | source(...) : Object | Test.java:501:30:501:31 | in : Object | provenance | | | Test.java:501:10:501:38 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : Object | Test.java:502:19:502:21 | out : DefaultKeyValue [] : Object | provenance | | -| Test.java:501:30:501:31 | in : Object | Test.java:501:10:501:38 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : Object | provenance | MaD:207 | +| Test.java:501:30:501:31 | in : Object | Test.java:501:10:501:38 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : Object | provenance | MaD:208 | | Test.java:502:19:502:21 | out : DefaultKeyValue [] : Object | Test.java:237:18:237:48 | container : DefaultKeyValue [] : Object | provenance | | -| Test.java:502:19:502:21 | out : DefaultKeyValue [] : Object | Test.java:502:9:502:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:502:19:502:21 | out : DefaultKeyValue [] : Object | Test.java:502:9:502:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:507:16:507:23 | source(...) : Object | Test.java:508:36:508:37 | in : Object | provenance | | | Test.java:508:10:508:38 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : Object | Test.java:509:21:509:23 | out : DefaultKeyValue [] : Object | provenance | | -| Test.java:508:36:508:37 | in : Object | Test.java:508:10:508:38 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : Object | provenance | MaD:208 | +| Test.java:508:36:508:37 | in : Object | Test.java:508:10:508:38 | new DefaultKeyValue<>(...) : DefaultKeyValue [] : Object | provenance | MaD:209 | | Test.java:509:21:509:23 | out : DefaultKeyValue [] : Object | Test.java:243:20:243:50 | container : DefaultKeyValue [] : Object | provenance | | -| Test.java:509:21:509:23 | out : DefaultKeyValue [] : Object | Test.java:509:9:509:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:509:21:509:23 | out : DefaultKeyValue [] : Object | Test.java:509:9:509:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:514:25:514:58 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | Test.java:515:10:515:11 | in : DefaultKeyValue [] : String | provenance | | | Test.java:514:42:514:57 | (...)... : String | Test.java:273:49:273:53 | key : String | provenance | | -| Test.java:514:42:514:57 | (...)... : String | Test.java:514:25:514:58 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | provenance | MaD:207 | +| Test.java:514:42:514:57 | (...)... : String | Test.java:514:25:514:58 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | provenance | MaD:208 | | Test.java:514:50:514:57 | source(...) : Object | Test.java:514:42:514:57 | (...)... : String | provenance | | -| Test.java:515:10:515:11 | in : DefaultKeyValue [] : String | Test.java:515:10:515:24 | toMapEntry(...) : Entry [] : String | provenance | MaD:209 | +| Test.java:515:10:515:11 | in : DefaultKeyValue [] : String | Test.java:515:10:515:24 | toMapEntry(...) : Entry [] : String | provenance | MaD:210 | | Test.java:515:10:515:24 | toMapEntry(...) : Entry [] : String | Test.java:516:28:516:30 | out : Entry [] : String | provenance | | | Test.java:516:28:516:30 | out : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | -| Test.java:516:28:516:30 | out : Entry [] : String | Test.java:516:9:516:31 | getMapKeyFromEntry(...) | provenance | MaD:9 | +| Test.java:516:28:516:30 | out : Entry [] : String | Test.java:516:9:516:31 | getMapKeyFromEntry(...) | provenance | MaD:10 | | Test.java:521:25:521:60 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | Test.java:522:10:522:11 | in : DefaultKeyValue [] : String | provenance | | | Test.java:521:44:521:59 | (...)... : String | Test.java:291:51:291:57 | value : String | provenance | | -| Test.java:521:44:521:59 | (...)... : String | Test.java:521:25:521:60 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | provenance | MaD:208 | +| Test.java:521:44:521:59 | (...)... : String | Test.java:521:25:521:60 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | provenance | MaD:209 | | Test.java:521:52:521:59 | source(...) : Object | Test.java:521:44:521:59 | (...)... : String | provenance | | -| Test.java:522:10:522:11 | in : DefaultKeyValue [] : String | Test.java:522:10:522:24 | toMapEntry(...) : Entry [] : String | provenance | MaD:210 | +| Test.java:522:10:522:11 | in : DefaultKeyValue [] : String | Test.java:522:10:522:24 | toMapEntry(...) : Entry [] : String | provenance | MaD:211 | | Test.java:522:10:522:24 | toMapEntry(...) : Entry [] : String | Test.java:523:30:523:32 | out : Entry [] : String | provenance | | | Test.java:523:30:523:32 | out : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | -| Test.java:523:30:523:32 | out : Entry [] : String | Test.java:523:9:523:33 | getMapValueFromEntry(...) | provenance | MaD:10 | +| Test.java:523:30:523:32 | out : Entry [] : String | Test.java:523:9:523:33 | getMapValueFromEntry(...) | provenance | MaD:11 | | Test.java:528:34:528:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | Test.java:529:30:529:31 | in : MyAbstractMapEntry [] : String | provenance | | | Test.java:528:52:528:67 | (...)... : String | Test.java:280:53:280:57 | key : String | provenance | | -| Test.java:528:52:528:67 | (...)... : String | Test.java:528:34:528:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | provenance | MaD:197 | +| Test.java:528:52:528:67 | (...)... : String | Test.java:528:34:528:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | | Test.java:528:60:528:67 | source(...) : Object | Test.java:528:52:528:67 | (...)... : String | provenance | | | Test.java:529:10:529:32 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : String | Test.java:530:19:530:21 | out : DefaultMapEntry [] : String | provenance | | -| Test.java:529:30:529:31 | in : MyAbstractMapEntry [] : String | Test.java:529:10:529:32 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : String | provenance | MaD:213 | +| Test.java:529:30:529:31 | in : MyAbstractMapEntry [] : String | Test.java:529:10:529:32 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : String | provenance | MaD:214 | | Test.java:530:19:530:21 | out : DefaultMapEntry [] : String | Test.java:237:18:237:48 | container : DefaultMapEntry [] : String | provenance | | -| Test.java:530:19:530:21 | out : DefaultMapEntry [] : String | Test.java:530:9:530:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:530:19:530:21 | out : DefaultMapEntry [] : String | Test.java:530:9:530:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:535:34:535:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | Test.java:536:30:536:31 | in : MyAbstractMapEntry [] : String | provenance | | | Test.java:535:54:535:69 | (...)... : String | Test.java:300:55:300:61 | value : String | provenance | | -| Test.java:535:54:535:69 | (...)... : String | Test.java:535:34:535:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | +| Test.java:535:54:535:69 | (...)... : String | Test.java:535:34:535:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:199 | | Test.java:535:62:535:69 | source(...) : Object | Test.java:535:54:535:69 | (...)... : String | provenance | | | Test.java:536:10:536:32 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : String | Test.java:537:21:537:23 | out : DefaultMapEntry [] : String | provenance | | -| Test.java:536:30:536:31 | in : MyAbstractMapEntry [] : String | Test.java:536:10:536:32 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : String | provenance | MaD:214 | +| Test.java:536:30:536:31 | in : MyAbstractMapEntry [] : String | Test.java:536:10:536:32 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : String | provenance | MaD:215 | | Test.java:537:21:537:23 | out : DefaultMapEntry [] : String | Test.java:243:20:243:50 | container : DefaultMapEntry [] : String | provenance | | -| Test.java:537:21:537:23 | out : DefaultMapEntry [] : String | Test.java:537:9:537:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:537:21:537:23 | out : DefaultMapEntry [] : String | Test.java:537:9:537:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:542:18:542:52 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | Test.java:543:30:543:31 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:542:36:542:51 | (...)... : String | Test.java:282:53:282:57 | key : String | provenance | | -| Test.java:542:36:542:51 | (...)... : String | Test.java:542:18:542:52 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:191 | +| Test.java:542:36:542:51 | (...)... : String | Test.java:542:18:542:52 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | | Test.java:542:44:542:51 | source(...) : Object | Test.java:542:36:542:51 | (...)... : String | provenance | | | Test.java:543:10:543:32 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : String | Test.java:544:19:544:21 | out : DefaultMapEntry [] : String | provenance | | -| Test.java:543:30:543:31 | in : MyAbstractKeyValue [] : String | Test.java:543:10:543:32 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : String | provenance | MaD:211 | +| Test.java:543:30:543:31 | in : MyAbstractKeyValue [] : String | Test.java:543:10:543:32 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : String | provenance | MaD:212 | | Test.java:544:19:544:21 | out : DefaultMapEntry [] : String | Test.java:237:18:237:48 | container : DefaultMapEntry [] : String | provenance | | -| Test.java:544:19:544:21 | out : DefaultMapEntry [] : String | Test.java:544:9:544:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:544:19:544:21 | out : DefaultMapEntry [] : String | Test.java:544:9:544:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:549:18:549:54 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | Test.java:550:30:550:31 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:549:38:549:53 | (...)... : String | Test.java:299:55:299:61 | value : String | provenance | | -| Test.java:549:38:549:53 | (...)... : String | Test.java:549:18:549:54 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | +| Test.java:549:38:549:53 | (...)... : String | Test.java:549:18:549:54 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:193 | | Test.java:549:46:549:53 | source(...) : Object | Test.java:549:38:549:53 | (...)... : String | provenance | | | Test.java:550:10:550:32 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : String | Test.java:551:21:551:23 | out : DefaultMapEntry [] : String | provenance | | -| Test.java:550:30:550:31 | in : MyAbstractKeyValue [] : String | Test.java:550:10:550:32 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : String | provenance | MaD:212 | +| Test.java:550:30:550:31 | in : MyAbstractKeyValue [] : String | Test.java:550:10:550:32 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : String | provenance | MaD:213 | | Test.java:551:21:551:23 | out : DefaultMapEntry [] : String | Test.java:243:20:243:50 | container : DefaultMapEntry [] : String | provenance | | -| Test.java:551:21:551:23 | out : DefaultMapEntry [] : String | Test.java:551:9:551:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:551:21:551:23 | out : DefaultMapEntry [] : String | Test.java:551:9:551:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:556:16:556:23 | source(...) : Object | Test.java:557:30:557:31 | in : Object | provenance | | | Test.java:557:10:557:38 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : Object | Test.java:558:19:558:21 | out : DefaultMapEntry [] : Object | provenance | | -| Test.java:557:30:557:31 | in : Object | Test.java:557:10:557:38 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : Object | provenance | MaD:215 | +| Test.java:557:30:557:31 | in : Object | Test.java:557:10:557:38 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : Object | provenance | MaD:216 | | Test.java:558:19:558:21 | out : DefaultMapEntry [] : Object | Test.java:237:18:237:48 | container : DefaultMapEntry [] : Object | provenance | | -| Test.java:558:19:558:21 | out : DefaultMapEntry [] : Object | Test.java:558:9:558:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:558:19:558:21 | out : DefaultMapEntry [] : Object | Test.java:558:9:558:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:563:16:563:23 | source(...) : Object | Test.java:564:36:564:37 | in : Object | provenance | | | Test.java:564:10:564:38 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : Object | Test.java:565:21:565:23 | out : DefaultMapEntry [] : Object | provenance | | -| Test.java:564:36:564:37 | in : Object | Test.java:564:10:564:38 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : Object | provenance | MaD:216 | +| Test.java:564:36:564:37 | in : Object | Test.java:564:10:564:38 | new DefaultMapEntry<>(...) : DefaultMapEntry [] : Object | provenance | MaD:217 | | Test.java:565:21:565:23 | out : DefaultMapEntry [] : Object | Test.java:243:20:243:50 | container : DefaultMapEntry [] : Object | provenance | | -| Test.java:565:21:565:23 | out : DefaultMapEntry [] : Object | Test.java:565:9:565:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:565:21:565:23 | out : DefaultMapEntry [] : Object | Test.java:565:9:565:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:570:16:570:23 | source(...) : Object | Test.java:571:33:571:34 | in : Object | provenance | | | Test.java:571:10:571:35 | new TiedMapEntry<>(...) : TiedMapEntry [] : Object | Test.java:572:28:572:30 | out : TiedMapEntry [] : Object | provenance | | -| Test.java:571:33:571:34 | in : Object | Test.java:571:10:571:35 | new TiedMapEntry<>(...) : TiedMapEntry [] : Object | provenance | MaD:236 | +| Test.java:571:33:571:34 | in : Object | Test.java:571:10:571:35 | new TiedMapEntry<>(...) : TiedMapEntry [] : Object | provenance | MaD:237 | | Test.java:572:28:572:30 | out : TiedMapEntry [] : Object | Test.java:238:27:238:50 | container : TiedMapEntry [] : Object | provenance | | -| Test.java:572:28:572:30 | out : TiedMapEntry [] : Object | Test.java:572:9:572:31 | getMapKeyFromEntry(...) | provenance | MaD:9 | +| Test.java:572:28:572:30 | out : TiedMapEntry [] : Object | Test.java:572:9:572:31 | getMapKeyFromEntry(...) | provenance | MaD:10 | | Test.java:577:13:577:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:578:27:578:28 | in : TreeMap [] : String | provenance | | | Test.java:577:36:577:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:577:36:577:51 | (...)... : String | Test.java:577:13:577:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:577:36:577:51 | (...)... : String | Test.java:577:13:577:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:577:44:577:51 | source(...) : Object | Test.java:577:36:577:51 | (...)... : String | provenance | | | Test.java:578:10:578:35 | new TiedMapEntry<>(...) : TiedMapEntry [] : String | Test.java:579:30:579:32 | out : TiedMapEntry [] : String | provenance | | -| Test.java:578:27:578:28 | in : TreeMap [] : String | Test.java:578:10:578:35 | new TiedMapEntry<>(...) : TiedMapEntry [] : String | provenance | MaD:235 | +| Test.java:578:27:578:28 | in : TreeMap [] : String | Test.java:578:10:578:35 | new TiedMapEntry<>(...) : TiedMapEntry [] : String | provenance | MaD:236 | | Test.java:579:30:579:32 | out : TiedMapEntry [] : String | Test.java:244:29:244:52 | container : TiedMapEntry [] : String | provenance | | -| Test.java:579:30:579:32 | out : TiedMapEntry [] : String | Test.java:579:9:579:33 | getMapValueFromEntry(...) | provenance | MaD:10 | +| Test.java:579:30:579:32 | out : TiedMapEntry [] : String | Test.java:579:9:579:33 | getMapValueFromEntry(...) | provenance | MaD:11 | | Test.java:584:34:584:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | Test.java:585:35:585:36 | in : MyAbstractMapEntry [] : String | provenance | | | Test.java:584:52:584:67 | (...)... : String | Test.java:280:53:280:57 | key : String | provenance | | -| Test.java:584:52:584:67 | (...)... : String | Test.java:584:34:584:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | provenance | MaD:197 | +| Test.java:584:52:584:67 | (...)... : String | Test.java:584:34:584:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | | Test.java:584:60:584:67 | source(...) : Object | Test.java:584:52:584:67 | (...)... : String | provenance | | | Test.java:585:10:585:37 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : String | Test.java:586:19:586:21 | out : UnmodifiableMapEntry [] : String | provenance | | -| Test.java:585:35:585:36 | in : MyAbstractMapEntry [] : String | Test.java:585:10:585:37 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : String | provenance | MaD:239 | +| Test.java:585:35:585:36 | in : MyAbstractMapEntry [] : String | Test.java:585:10:585:37 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : String | provenance | MaD:240 | | Test.java:586:19:586:21 | out : UnmodifiableMapEntry [] : String | Test.java:237:18:237:48 | container : UnmodifiableMapEntry [] : String | provenance | | -| Test.java:586:19:586:21 | out : UnmodifiableMapEntry [] : String | Test.java:586:9:586:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:586:19:586:21 | out : UnmodifiableMapEntry [] : String | Test.java:586:9:586:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:591:34:591:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | Test.java:592:35:592:36 | in : MyAbstractMapEntry [] : String | provenance | | | Test.java:591:54:591:69 | (...)... : String | Test.java:300:55:300:61 | value : String | provenance | | -| Test.java:591:54:591:69 | (...)... : String | Test.java:591:34:591:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:198 | +| Test.java:591:54:591:69 | (...)... : String | Test.java:591:34:591:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | provenance | MaD:199 | | Test.java:591:62:591:69 | source(...) : Object | Test.java:591:54:591:69 | (...)... : String | provenance | | | Test.java:592:10:592:37 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : String | Test.java:593:21:593:23 | out : UnmodifiableMapEntry [] : String | provenance | | -| Test.java:592:35:592:36 | in : MyAbstractMapEntry [] : String | Test.java:592:10:592:37 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : String | provenance | MaD:240 | +| Test.java:592:35:592:36 | in : MyAbstractMapEntry [] : String | Test.java:592:10:592:37 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : String | provenance | MaD:241 | | Test.java:593:21:593:23 | out : UnmodifiableMapEntry [] : String | Test.java:243:20:243:50 | container : UnmodifiableMapEntry [] : String | provenance | | -| Test.java:593:21:593:23 | out : UnmodifiableMapEntry [] : String | Test.java:593:9:593:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:593:21:593:23 | out : UnmodifiableMapEntry [] : String | Test.java:593:9:593:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:598:18:598:52 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | Test.java:599:35:599:36 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:598:36:598:51 | (...)... : String | Test.java:282:53:282:57 | key : String | provenance | | -| Test.java:598:36:598:51 | (...)... : String | Test.java:598:18:598:52 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:191 | +| Test.java:598:36:598:51 | (...)... : String | Test.java:598:18:598:52 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | | Test.java:598:44:598:51 | source(...) : Object | Test.java:598:36:598:51 | (...)... : String | provenance | | | Test.java:599:10:599:37 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : String | Test.java:600:19:600:21 | out : UnmodifiableMapEntry [] : String | provenance | | -| Test.java:599:35:599:36 | in : MyAbstractKeyValue [] : String | Test.java:599:10:599:37 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : String | provenance | MaD:237 | +| Test.java:599:35:599:36 | in : MyAbstractKeyValue [] : String | Test.java:599:10:599:37 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : String | provenance | MaD:238 | | Test.java:600:19:600:21 | out : UnmodifiableMapEntry [] : String | Test.java:237:18:237:48 | container : UnmodifiableMapEntry [] : String | provenance | | -| Test.java:600:19:600:21 | out : UnmodifiableMapEntry [] : String | Test.java:600:9:600:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:600:19:600:21 | out : UnmodifiableMapEntry [] : String | Test.java:600:9:600:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:605:18:605:54 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | Test.java:606:35:606:36 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:605:38:605:53 | (...)... : String | Test.java:299:55:299:61 | value : String | provenance | | -| Test.java:605:38:605:53 | (...)... : String | Test.java:605:18:605:54 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | +| Test.java:605:38:605:53 | (...)... : String | Test.java:605:18:605:54 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:193 | | Test.java:605:46:605:53 | source(...) : Object | Test.java:605:38:605:53 | (...)... : String | provenance | | | Test.java:606:10:606:37 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : String | Test.java:607:21:607:23 | out : UnmodifiableMapEntry [] : String | provenance | | -| Test.java:606:35:606:36 | in : MyAbstractKeyValue [] : String | Test.java:606:10:606:37 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : String | provenance | MaD:238 | +| Test.java:606:35:606:36 | in : MyAbstractKeyValue [] : String | Test.java:606:10:606:37 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : String | provenance | MaD:239 | | Test.java:607:21:607:23 | out : UnmodifiableMapEntry [] : String | Test.java:243:20:243:50 | container : UnmodifiableMapEntry [] : String | provenance | | -| Test.java:607:21:607:23 | out : UnmodifiableMapEntry [] : String | Test.java:607:9:607:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:607:21:607:23 | out : UnmodifiableMapEntry [] : String | Test.java:607:9:607:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:612:16:612:23 | source(...) : Object | Test.java:613:35:613:36 | in : Object | provenance | | | Test.java:613:10:613:43 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : Object | Test.java:614:19:614:21 | out : UnmodifiableMapEntry [] : Object | provenance | | -| Test.java:613:35:613:36 | in : Object | Test.java:613:10:613:43 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : Object | provenance | MaD:241 | +| Test.java:613:35:613:36 | in : Object | Test.java:613:10:613:43 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : Object | provenance | MaD:242 | | Test.java:614:19:614:21 | out : UnmodifiableMapEntry [] : Object | Test.java:237:18:237:48 | container : UnmodifiableMapEntry [] : Object | provenance | | -| Test.java:614:19:614:21 | out : UnmodifiableMapEntry [] : Object | Test.java:614:9:614:22 | getMapKey(...) | provenance | MaD:643 | +| Test.java:614:19:614:21 | out : UnmodifiableMapEntry [] : Object | Test.java:614:9:614:22 | getMapKey(...) | provenance | MaD:647 | | Test.java:619:16:619:23 | source(...) : Object | Test.java:620:41:620:42 | in : Object | provenance | | | Test.java:620:10:620:43 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : Object | Test.java:621:21:621:23 | out : UnmodifiableMapEntry [] : Object | provenance | | -| Test.java:620:41:620:42 | in : Object | Test.java:620:10:620:43 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : Object | provenance | MaD:242 | +| Test.java:620:41:620:42 | in : Object | Test.java:620:10:620:43 | new UnmodifiableMapEntry<>(...) : UnmodifiableMapEntry [] : Object | provenance | MaD:243 | | Test.java:621:21:621:23 | out : UnmodifiableMapEntry [] : Object | Test.java:243:20:243:50 | container : UnmodifiableMapEntry [] : Object | provenance | | -| Test.java:621:21:621:23 | out : UnmodifiableMapEntry [] : Object | Test.java:621:9:621:24 | getMapValue(...) | provenance | MaD:644 | +| Test.java:621:21:621:23 | out : UnmodifiableMapEntry [] : Object | Test.java:621:9:621:24 | getMapValue(...) | provenance | MaD:648 | | Test.java:626:22:626:55 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:627:10:627:11 | in : TiedMapEntry [] : String | provenance | | | Test.java:626:39:626:54 | (...)... : String | Test.java:286:46:286:50 | key : String | provenance | | -| Test.java:626:39:626:54 | (...)... : String | Test.java:626:22:626:55 | newTMEWithMapKey(...) : TiedMapEntry [] : String | provenance | MaD:236 | +| Test.java:626:39:626:54 | (...)... : String | Test.java:626:22:626:55 | newTMEWithMapKey(...) : TiedMapEntry [] : String | provenance | MaD:237 | | Test.java:626:47:626:54 | source(...) : Object | Test.java:626:39:626:54 | (...)... : String | provenance | | -| Test.java:627:10:627:11 | in : TiedMapEntry [] : String | Test.java:627:10:627:20 | getKey(...) : String | provenance | MaD:9 | -| Test.java:627:10:627:11 | in : TiedMapEntry [] : String | Test.java:627:10:627:20 | getKey(...) : String | provenance | MaD:643 | +| Test.java:627:10:627:11 | in : TiedMapEntry [] : String | Test.java:627:10:627:20 | getKey(...) : String | provenance | MaD:10 | +| Test.java:627:10:627:11 | in : TiedMapEntry [] : String | Test.java:627:10:627:20 | getKey(...) : String | provenance | MaD:647 | | Test.java:627:10:627:20 | getKey(...) : String | Test.java:628:9:628:11 | out | provenance | | | Test.java:633:18:633:52 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | Test.java:634:10:634:11 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:633:36:633:51 | (...)... : String | Test.java:282:53:282:57 | key : String | provenance | | -| Test.java:633:36:633:51 | (...)... : String | Test.java:633:18:633:52 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:191 | +| Test.java:633:36:633:51 | (...)... : String | Test.java:633:18:633:52 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | | Test.java:633:44:633:51 | source(...) : Object | Test.java:633:36:633:51 | (...)... : String | provenance | | -| Test.java:634:10:634:11 | in : MyAbstractKeyValue [] : String | Test.java:634:10:634:20 | getKey(...) : String | provenance | MaD:643 | +| Test.java:634:10:634:11 | in : MyAbstractKeyValue [] : String | Test.java:634:10:634:20 | getKey(...) : String | provenance | MaD:647 | | Test.java:634:10:634:20 | getKey(...) : String | Test.java:635:9:635:11 | out | provenance | | | Test.java:640:35:640:70 | newMAMEDWithMapKey(...) : MyAbstractMapEntryDecorator [] : String | Test.java:641:10:641:11 | in : MyAbstractMapEntryDecorator [] : String | provenance | | | Test.java:640:54:640:69 | (...)... : String | Test.java:281:63:281:67 | key : String | provenance | | -| Test.java:640:54:640:69 | (...)... : String | Test.java:640:35:640:70 | newMAMEDWithMapKey(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:197 | +| Test.java:640:54:640:69 | (...)... : String | Test.java:640:35:640:70 | newMAMEDWithMapKey(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:198 | | Test.java:640:62:640:69 | source(...) : Object | Test.java:640:54:640:69 | (...)... : String | provenance | | -| Test.java:641:10:641:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:641:10:641:20 | getKey(...) : String | provenance | MaD:9 | -| Test.java:641:10:641:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:641:10:641:20 | getKey(...) : String | provenance | MaD:643 | +| Test.java:641:10:641:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:641:10:641:20 | getKey(...) : String | provenance | MaD:10 | +| Test.java:641:10:641:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:641:10:641:20 | getKey(...) : String | provenance | MaD:647 | | Test.java:641:10:641:20 | getKey(...) : String | Test.java:642:9:642:11 | out | provenance | | | Test.java:647:26:647:60 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | Test.java:648:10:648:11 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:647:44:647:59 | (...)... : String | Test.java:282:53:282:57 | key : String | provenance | | -| Test.java:647:44:647:59 | (...)... : String | Test.java:647:26:647:60 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:191 | +| Test.java:647:44:647:59 | (...)... : String | Test.java:647:26:647:60 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | | Test.java:647:52:647:59 | source(...) : Object | Test.java:647:44:647:59 | (...)... : String | provenance | | -| Test.java:648:10:648:11 | in : MyAbstractKeyValue [] : String | Test.java:648:10:648:20 | getKey(...) : String | provenance | MaD:643 | +| Test.java:648:10:648:11 | in : MyAbstractKeyValue [] : String | Test.java:648:10:648:20 | getKey(...) : String | provenance | MaD:647 | | Test.java:648:10:648:20 | getKey(...) : String | Test.java:649:9:649:11 | out | provenance | | | Test.java:654:22:654:57 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:655:10:655:11 | in : TiedMapEntry [] : String | provenance | | | Test.java:654:41:654:56 | (...)... : String | Test.java:305:48:305:54 | value : String | provenance | | -| Test.java:654:41:654:56 | (...)... : String | Test.java:654:22:654:57 | newTMEWithMapValue(...) : TiedMapEntry [] : String | provenance | MaD:20 | +| Test.java:654:41:654:56 | (...)... : String | Test.java:654:22:654:57 | newTMEWithMapValue(...) : TiedMapEntry [] : String | provenance | MaD:21 | | Test.java:654:49:654:56 | source(...) : Object | Test.java:654:41:654:56 | (...)... : String | provenance | | -| Test.java:655:10:655:11 | in : TiedMapEntry [] : String | Test.java:655:10:655:22 | getValue(...) : String | provenance | MaD:10 | -| Test.java:655:10:655:11 | in : TiedMapEntry [] : String | Test.java:655:10:655:22 | getValue(...) : String | provenance | MaD:644 | +| Test.java:655:10:655:11 | in : TiedMapEntry [] : String | Test.java:655:10:655:22 | getValue(...) : String | provenance | MaD:11 | +| Test.java:655:10:655:11 | in : TiedMapEntry [] : String | Test.java:655:10:655:22 | getValue(...) : String | provenance | MaD:648 | | Test.java:655:10:655:22 | getValue(...) : String | Test.java:656:9:656:11 | out | provenance | | | Test.java:661:18:661:54 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | Test.java:662:10:662:11 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:661:38:661:53 | (...)... : String | Test.java:299:55:299:61 | value : String | provenance | | -| Test.java:661:38:661:53 | (...)... : String | Test.java:661:18:661:54 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | +| Test.java:661:38:661:53 | (...)... : String | Test.java:661:18:661:54 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:193 | | Test.java:661:46:661:53 | source(...) : Object | Test.java:661:38:661:53 | (...)... : String | provenance | | -| Test.java:662:10:662:11 | in : MyAbstractKeyValue [] : String | Test.java:662:10:662:22 | getValue(...) : String | provenance | MaD:644 | +| Test.java:662:10:662:11 | in : MyAbstractKeyValue [] : String | Test.java:662:10:662:22 | getValue(...) : String | provenance | MaD:648 | | Test.java:662:10:662:22 | getValue(...) : String | Test.java:663:9:663:11 | out | provenance | | | Test.java:668:35:668:72 | newMAMEDWithMapValue(...) : MyAbstractMapEntryDecorator [] : String | Test.java:669:10:669:11 | in : MyAbstractMapEntryDecorator [] : String | provenance | | | Test.java:668:56:668:71 | (...)... : String | Test.java:301:65:301:71 | value : String | provenance | | -| Test.java:668:56:668:71 | (...)... : String | Test.java:668:35:668:72 | newMAMEDWithMapValue(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:198 | +| Test.java:668:56:668:71 | (...)... : String | Test.java:668:35:668:72 | newMAMEDWithMapValue(...) : MyAbstractMapEntryDecorator [] : String | provenance | MaD:199 | | Test.java:668:64:668:71 | source(...) : Object | Test.java:668:56:668:71 | (...)... : String | provenance | | -| Test.java:669:10:669:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:669:10:669:22 | getValue(...) : String | provenance | MaD:10 | -| Test.java:669:10:669:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:669:10:669:22 | getValue(...) : String | provenance | MaD:644 | +| Test.java:669:10:669:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:669:10:669:22 | getValue(...) : String | provenance | MaD:11 | +| Test.java:669:10:669:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:669:10:669:22 | getValue(...) : String | provenance | MaD:648 | | Test.java:669:10:669:22 | getValue(...) : String | Test.java:670:9:670:11 | out | provenance | | | Test.java:675:26:675:62 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | Test.java:676:10:676:11 | in : MyAbstractKeyValue [] : String | provenance | | | Test.java:675:46:675:61 | (...)... : String | Test.java:299:55:299:61 | value : String | provenance | | -| Test.java:675:46:675:61 | (...)... : String | Test.java:675:26:675:62 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | +| Test.java:675:46:675:61 | (...)... : String | Test.java:675:26:675:62 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:193 | | Test.java:675:54:675:61 | source(...) : Object | Test.java:675:46:675:61 | (...)... : String | provenance | | -| Test.java:676:10:676:11 | in : MyAbstractKeyValue [] : String | Test.java:676:10:676:22 | getValue(...) : String | provenance | MaD:644 | +| Test.java:676:10:676:11 | in : MyAbstractKeyValue [] : String | Test.java:676:10:676:22 | getValue(...) : String | provenance | MaD:648 | | Test.java:676:10:676:22 | getValue(...) : String | Test.java:677:9:677:11 | out | provenance | | | Test.java:682:13:682:25 | (...)... : Map | Test.java:683:31:683:32 | in : Map | provenance | | | Test.java:682:18:682:25 | source(...) : Object | Test.java:682:13:682:25 | (...)... : Map | provenance | | | Test.java:683:10:683:33 | emptyIfNull(...) : Map | Test.java:684:9:684:11 | out | provenance | | -| Test.java:683:31:683:32 | in : Map | Test.java:683:10:683:33 | emptyIfNull(...) : Map | provenance | MaD:676 | +| Test.java:683:31:683:32 | in : Map | Test.java:683:10:683:33 | emptyIfNull(...) : Map | provenance | MaD:680 | | Test.java:689:13:689:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:690:32:690:33 | in : TreeMap [] : String | provenance | | | Test.java:689:34:689:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:689:34:689:49 | (...)... : String | Test.java:689:13:689:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:689:34:689:49 | (...)... : String | Test.java:689:13:689:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:689:42:689:49 | source(...) : Object | Test.java:689:34:689:49 | (...)... : String | provenance | | | Test.java:690:10:690:34 | fixedSizeMap(...) : IterableMap [] : String | Test.java:691:19:691:21 | out : IterableMap [] : String | provenance | | -| Test.java:690:32:690:33 | in : TreeMap [] : String | Test.java:690:10:690:34 | fixedSizeMap(...) : IterableMap [] : String | provenance | MaD:677 | +| Test.java:690:32:690:33 | in : TreeMap [] : String | Test.java:690:10:690:34 | fixedSizeMap(...) : IterableMap [] : String | provenance | MaD:681 | | Test.java:691:19:691:21 | out : IterableMap [] : String | Test.java:228:18:228:29 | map : IterableMap [] : String | provenance | | -| Test.java:691:19:691:21 | out : IterableMap [] : String | Test.java:691:9:691:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:691:19:691:21 | out : IterableMap [] : String | Test.java:691:9:691:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:696:13:696:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:697:32:697:33 | in : TreeMap [] : String | provenance | | | Test.java:696:36:696:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:696:36:696:51 | (...)... : String | Test.java:696:13:696:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:696:36:696:51 | (...)... : String | Test.java:696:13:696:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:696:44:696:51 | source(...) : Object | Test.java:696:36:696:51 | (...)... : String | provenance | | | Test.java:697:10:697:34 | fixedSizeMap(...) : IterableMap [] : String | Test.java:698:21:698:23 | out : IterableMap [] : String | provenance | | -| Test.java:697:32:697:33 | in : TreeMap [] : String | Test.java:697:10:697:34 | fixedSizeMap(...) : IterableMap [] : String | provenance | MaD:678 | +| Test.java:697:32:697:33 | in : TreeMap [] : String | Test.java:697:10:697:34 | fixedSizeMap(...) : IterableMap [] : String | provenance | MaD:682 | | Test.java:698:21:698:23 | out : IterableMap [] : String | Test.java:232:20:232:31 | map : IterableMap [] : String | provenance | | -| Test.java:698:21:698:23 | out : IterableMap [] : String | Test.java:698:9:698:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:698:21:698:23 | out : IterableMap [] : String | Test.java:698:9:698:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:703:19:703:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:704:38:704:39 | in : TreeMap [] : String | provenance | | | Test.java:703:40:703:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:703:40:703:55 | (...)... : String | Test.java:703:19:703:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:703:40:703:55 | (...)... : String | Test.java:703:19:703:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:703:48:703:55 | source(...) : Object | Test.java:703:40:703:55 | (...)... : String | provenance | | | Test.java:704:10:704:40 | fixedSizeSortedMap(...) : SortedMap [] : String | Test.java:705:19:705:21 | out : SortedMap [] : String | provenance | | -| Test.java:704:38:704:39 | in : TreeMap [] : String | Test.java:704:10:704:40 | fixedSizeSortedMap(...) : SortedMap [] : String | provenance | MaD:679 | +| Test.java:704:38:704:39 | in : TreeMap [] : String | Test.java:704:10:704:40 | fixedSizeSortedMap(...) : SortedMap [] : String | provenance | MaD:683 | | Test.java:705:19:705:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | provenance | | -| Test.java:705:19:705:21 | out : SortedMap [] : String | Test.java:705:9:705:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:705:19:705:21 | out : SortedMap [] : String | Test.java:705:9:705:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:710:19:710:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:711:38:711:39 | in : TreeMap [] : String | provenance | | | Test.java:710:42:710:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:710:42:710:57 | (...)... : String | Test.java:710:19:710:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:710:42:710:57 | (...)... : String | Test.java:710:19:710:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:710:50:710:57 | source(...) : Object | Test.java:710:42:710:57 | (...)... : String | provenance | | | Test.java:711:10:711:40 | fixedSizeSortedMap(...) : SortedMap [] : String | Test.java:712:21:712:23 | out : SortedMap [] : String | provenance | | -| Test.java:711:38:711:39 | in : TreeMap [] : String | Test.java:711:10:711:40 | fixedSizeSortedMap(...) : SortedMap [] : String | provenance | MaD:680 | +| Test.java:711:38:711:39 | in : TreeMap [] : String | Test.java:711:10:711:40 | fixedSizeSortedMap(...) : SortedMap [] : String | provenance | MaD:684 | | Test.java:712:21:712:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | provenance | | -| Test.java:712:21:712:23 | out : SortedMap [] : String | Test.java:712:9:712:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:712:21:712:23 | out : SortedMap [] : String | Test.java:712:9:712:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:717:13:717:25 | (...)... : Map | Test.java:718:38:718:39 | in : Map | provenance | | | Test.java:717:18:717:25 | source(...) : Object | Test.java:717:13:717:25 | (...)... : Map | provenance | | | Test.java:718:10:718:40 | getMap(...) : Map | Test.java:719:9:719:11 | out | provenance | | -| Test.java:718:38:718:39 | in : Map | Test.java:718:10:718:40 | getMap(...) : Map | provenance | MaD:682 | +| Test.java:718:38:718:39 | in : Map | Test.java:718:10:718:40 | getMap(...) : Map | provenance | MaD:686 | | Test.java:724:13:724:49 | newTreeMapWithMapValue(...) : TreeMap [] : Map | Test.java:725:26:725:27 | in : TreeMap [] : Map | provenance | | | Test.java:724:36:724:48 | (...)... : Map | Test.java:304:49:304:55 | value : Map | provenance | | -| Test.java:724:36:724:48 | (...)... : Map | Test.java:724:13:724:49 | newTreeMapWithMapValue(...) : TreeMap [] : Map | provenance | MaD:20 | +| Test.java:724:36:724:48 | (...)... : Map | Test.java:724:13:724:49 | newTreeMapWithMapValue(...) : TreeMap [] : Map | provenance | MaD:21 | | Test.java:724:41:724:48 | source(...) : Object | Test.java:724:36:724:48 | (...)... : Map | provenance | | | Test.java:725:10:725:40 | getMap(...) : Map | Test.java:726:9:726:11 | out | provenance | | -| Test.java:725:26:725:27 | in : TreeMap [] : Map | Test.java:725:10:725:40 | getMap(...) : Map | provenance | MaD:681 | +| Test.java:725:26:725:27 | in : TreeMap [] : Map | Test.java:725:10:725:40 | getMap(...) : Map | provenance | MaD:685 | | Test.java:731:13:731:49 | newTreeMapWithMapValue(...) : TreeMap [] : Map | Test.java:732:26:732:27 | in : TreeMap [] : Map | provenance | | | Test.java:731:36:731:48 | (...)... : Map | Test.java:304:49:304:55 | value : Map | provenance | | -| Test.java:731:36:731:48 | (...)... : Map | Test.java:731:13:731:49 | newTreeMapWithMapValue(...) : TreeMap [] : Map | provenance | MaD:20 | +| Test.java:731:36:731:48 | (...)... : Map | Test.java:731:13:731:49 | newTreeMapWithMapValue(...) : TreeMap [] : Map | provenance | MaD:21 | | Test.java:731:41:731:48 | source(...) : Object | Test.java:731:36:731:48 | (...)... : Map | provenance | | | Test.java:732:10:732:34 | getMap(...) : Map | Test.java:733:9:733:11 | out | provenance | | -| Test.java:732:26:732:27 | in : TreeMap [] : Map | Test.java:732:10:732:34 | getMap(...) : Map | provenance | MaD:681 | +| Test.java:732:26:732:27 | in : TreeMap [] : Map | Test.java:732:10:732:34 | getMap(...) : Map | provenance | MaD:685 | | Test.java:738:16:738:23 | source(...) : Object | Test.java:739:41:739:42 | in : Object | provenance | | | Test.java:739:10:739:43 | getObject(...) : Object | Test.java:740:9:740:11 | out | provenance | | -| Test.java:739:41:739:42 | in : Object | Test.java:739:10:739:43 | getObject(...) : Object | provenance | MaD:684 | +| Test.java:739:41:739:42 | in : Object | Test.java:739:10:739:43 | getObject(...) : Object | provenance | MaD:688 | | Test.java:745:13:745:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:746:29:746:30 | in : TreeMap [] : String | provenance | | | Test.java:745:36:745:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:745:36:745:51 | (...)... : String | Test.java:745:13:745:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:745:36:745:51 | (...)... : String | Test.java:745:13:745:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:745:44:745:51 | source(...) : Object | Test.java:745:36:745:51 | (...)... : String | provenance | | | Test.java:746:10:746:43 | getObject(...) : String | Test.java:747:9:747:11 | out | provenance | | -| Test.java:746:29:746:30 | in : TreeMap [] : String | Test.java:746:10:746:43 | getObject(...) : String | provenance | MaD:683 | +| Test.java:746:29:746:30 | in : TreeMap [] : String | Test.java:746:10:746:43 | getObject(...) : String | provenance | MaD:687 | | Test.java:752:13:752:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:753:29:753:30 | in : TreeMap [] : String | provenance | | | Test.java:752:36:752:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:752:36:752:51 | (...)... : String | Test.java:752:13:752:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:752:36:752:51 | (...)... : String | Test.java:752:13:752:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:752:44:752:51 | source(...) : Object | Test.java:752:36:752:51 | (...)... : String | provenance | | | Test.java:753:10:753:37 | getObject(...) : String | Test.java:754:9:754:11 | out | provenance | | -| Test.java:753:29:753:30 | in : TreeMap [] : String | Test.java:753:10:753:37 | getObject(...) : String | provenance | MaD:683 | +| Test.java:753:29:753:30 | in : TreeMap [] : String | Test.java:753:10:753:37 | getObject(...) : String | provenance | MaD:687 | | Test.java:759:16:759:31 | (...)... : String | Test.java:760:41:760:42 | in : String | provenance | | | Test.java:759:24:759:31 | source(...) : Object | Test.java:759:16:759:31 | (...)... : String | provenance | | | Test.java:760:10:760:43 | getString(...) : String | Test.java:761:9:761:11 | out | provenance | | -| Test.java:760:41:760:42 | in : String | Test.java:760:10:760:43 | getString(...) : String | provenance | MaD:686 | +| Test.java:760:41:760:42 | in : String | Test.java:760:10:760:43 | getString(...) : String | provenance | MaD:690 | | Test.java:766:13:766:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:767:29:767:30 | in : TreeMap [] : String | provenance | | | Test.java:766:36:766:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:766:36:766:51 | (...)... : String | Test.java:766:13:766:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:766:36:766:51 | (...)... : String | Test.java:766:13:766:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:766:44:766:51 | source(...) : Object | Test.java:766:36:766:51 | (...)... : String | provenance | | | Test.java:767:10:767:43 | getString(...) : String | Test.java:768:9:768:11 | out | provenance | | -| Test.java:767:29:767:30 | in : TreeMap [] : String | Test.java:767:10:767:43 | getString(...) : String | provenance | MaD:685 | +| Test.java:767:29:767:30 | in : TreeMap [] : String | Test.java:767:10:767:43 | getString(...) : String | provenance | MaD:689 | | Test.java:773:13:773:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:774:29:774:30 | in : TreeMap [] : String | provenance | | | Test.java:773:36:773:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:773:36:773:51 | (...)... : String | Test.java:773:13:773:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:773:36:773:51 | (...)... : String | Test.java:773:13:773:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:773:44:773:51 | source(...) : Object | Test.java:773:36:773:51 | (...)... : String | provenance | | | Test.java:774:10:774:37 | getString(...) : String | Test.java:775:9:775:11 | out | provenance | | -| Test.java:774:29:774:30 | in : TreeMap [] : String | Test.java:774:10:774:37 | getString(...) : String | provenance | MaD:685 | +| Test.java:774:29:774:30 | in : TreeMap [] : String | Test.java:774:10:774:37 | getString(...) : String | provenance | MaD:689 | | Test.java:780:13:780:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:781:29:781:30 | in : TreeMap [] : String | provenance | | | Test.java:780:34:780:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:780:34:780:49 | (...)... : String | Test.java:780:13:780:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:780:34:780:49 | (...)... : String | Test.java:780:13:780:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:780:42:780:49 | source(...) : Object | Test.java:780:34:780:49 | (...)... : String | provenance | | | Test.java:781:10:781:31 | invertMap(...) : Map [] : String | Test.java:782:21:782:23 | out : Map [] : String | provenance | | -| Test.java:781:29:781:30 | in : TreeMap [] : String | Test.java:781:10:781:31 | invertMap(...) : Map [] : String | provenance | MaD:687 | +| Test.java:781:29:781:30 | in : TreeMap [] : String | Test.java:781:10:781:31 | invertMap(...) : Map [] : String | provenance | MaD:691 | | Test.java:782:21:782:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:782:21:782:23 | out : Map [] : String | Test.java:782:9:782:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:782:21:782:23 | out : Map [] : String | Test.java:782:9:782:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:787:13:787:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:788:29:788:30 | in : TreeMap [] : String | provenance | | | Test.java:787:36:787:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:787:36:787:51 | (...)... : String | Test.java:787:13:787:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:787:36:787:51 | (...)... : String | Test.java:787:13:787:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:787:44:787:51 | source(...) : Object | Test.java:787:36:787:51 | (...)... : String | provenance | | | Test.java:788:10:788:31 | invertMap(...) : Map [] : String | Test.java:789:19:789:21 | out : Map [] : String | provenance | | -| Test.java:788:29:788:30 | in : TreeMap [] : String | Test.java:788:10:788:31 | invertMap(...) : Map [] : String | provenance | MaD:688 | +| Test.java:788:29:788:30 | in : TreeMap [] : String | Test.java:788:10:788:31 | invertMap(...) : Map [] : String | provenance | MaD:692 | | Test.java:789:19:789:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:789:19:789:21 | out : Map [] : String | Test.java:789:9:789:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:789:19:789:21 | out : Map [] : String | Test.java:789:9:789:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:794:13:794:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:795:31:795:32 | in : TreeMap [] : String | provenance | | | Test.java:794:34:794:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:794:34:794:49 | (...)... : String | Test.java:794:13:794:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:794:34:794:49 | (...)... : String | Test.java:794:13:794:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:794:42:794:49 | source(...) : Object | Test.java:794:34:794:49 | (...)... : String | provenance | | | Test.java:795:10:795:33 | iterableMap(...) : IterableMap [] : String | Test.java:796:19:796:21 | out : IterableMap [] : String | provenance | | -| Test.java:795:31:795:32 | in : TreeMap [] : String | Test.java:795:10:795:33 | iterableMap(...) : IterableMap [] : String | provenance | MaD:689 | +| Test.java:795:31:795:32 | in : TreeMap [] : String | Test.java:795:10:795:33 | iterableMap(...) : IterableMap [] : String | provenance | MaD:693 | | Test.java:796:19:796:21 | out : IterableMap [] : String | Test.java:228:18:228:29 | map : IterableMap [] : String | provenance | | -| Test.java:796:19:796:21 | out : IterableMap [] : String | Test.java:796:9:796:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:796:19:796:21 | out : IterableMap [] : String | Test.java:796:9:796:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:801:13:801:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:802:31:802:32 | in : TreeMap [] : String | provenance | | | Test.java:801:36:801:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:801:36:801:51 | (...)... : String | Test.java:801:13:801:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:801:36:801:51 | (...)... : String | Test.java:801:13:801:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:801:44:801:51 | source(...) : Object | Test.java:801:36:801:51 | (...)... : String | provenance | | | Test.java:802:10:802:33 | iterableMap(...) : IterableMap [] : String | Test.java:803:21:803:23 | out : IterableMap [] : String | provenance | | -| Test.java:802:31:802:32 | in : TreeMap [] : String | Test.java:802:10:802:33 | iterableMap(...) : IterableMap [] : String | provenance | MaD:690 | +| Test.java:802:31:802:32 | in : TreeMap [] : String | Test.java:802:10:802:33 | iterableMap(...) : IterableMap [] : String | provenance | MaD:694 | | Test.java:803:21:803:23 | out : IterableMap [] : String | Test.java:232:20:232:31 | map : IterableMap [] : String | provenance | | -| Test.java:803:21:803:23 | out : IterableMap [] : String | Test.java:803:9:803:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:803:21:803:23 | out : IterableMap [] : String | Test.java:803:9:803:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:808:19:808:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:809:37:809:38 | in : TreeMap [] : String | provenance | | | Test.java:808:40:808:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:808:40:808:55 | (...)... : String | Test.java:808:19:808:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:808:40:808:55 | (...)... : String | Test.java:808:19:808:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:808:48:808:55 | source(...) : Object | Test.java:808:40:808:55 | (...)... : String | provenance | | | Test.java:809:10:809:39 | iterableSortedMap(...) : IterableSortedMap [] : String | Test.java:810:19:810:21 | out : IterableSortedMap [] : String | provenance | | -| Test.java:809:37:809:38 | in : TreeMap [] : String | Test.java:809:10:809:39 | iterableSortedMap(...) : IterableSortedMap [] : String | provenance | MaD:691 | +| Test.java:809:37:809:38 | in : TreeMap [] : String | Test.java:809:10:809:39 | iterableSortedMap(...) : IterableSortedMap [] : String | provenance | MaD:695 | | Test.java:810:19:810:21 | out : IterableSortedMap [] : String | Test.java:228:18:228:29 | map : IterableSortedMap [] : String | provenance | | -| Test.java:810:19:810:21 | out : IterableSortedMap [] : String | Test.java:810:9:810:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:810:19:810:21 | out : IterableSortedMap [] : String | Test.java:810:9:810:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:815:19:815:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:816:37:816:38 | in : TreeMap [] : String | provenance | | | Test.java:815:42:815:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:815:42:815:57 | (...)... : String | Test.java:815:19:815:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:815:42:815:57 | (...)... : String | Test.java:815:19:815:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:815:50:815:57 | source(...) : Object | Test.java:815:42:815:57 | (...)... : String | provenance | | | Test.java:816:10:816:39 | iterableSortedMap(...) : IterableSortedMap [] : String | Test.java:817:21:817:23 | out : IterableSortedMap [] : String | provenance | | -| Test.java:816:37:816:38 | in : TreeMap [] : String | Test.java:816:10:816:39 | iterableSortedMap(...) : IterableSortedMap [] : String | provenance | MaD:692 | +| Test.java:816:37:816:38 | in : TreeMap [] : String | Test.java:816:10:816:39 | iterableSortedMap(...) : IterableSortedMap [] : String | provenance | MaD:696 | | Test.java:817:21:817:23 | out : IterableSortedMap [] : String | Test.java:232:20:232:31 | map : IterableSortedMap [] : String | provenance | | -| Test.java:817:21:817:23 | out : IterableSortedMap [] : String | Test.java:817:9:817:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:817:21:817:23 | out : IterableSortedMap [] : String | Test.java:817:9:817:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:822:13:822:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:823:27:823:28 | in : TreeMap [] : String | provenance | | | Test.java:822:34:822:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:822:34:822:49 | (...)... : String | Test.java:822:13:822:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:822:34:822:49 | (...)... : String | Test.java:822:13:822:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:822:42:822:49 | source(...) : Object | Test.java:822:34:822:49 | (...)... : String | provenance | | | Test.java:823:10:823:48 | lazyMap(...) : IterableMap [] : String | Test.java:824:19:824:21 | out : IterableMap [] : String | provenance | | -| Test.java:823:27:823:28 | in : TreeMap [] : String | Test.java:823:10:823:48 | lazyMap(...) : IterableMap [] : String | provenance | MaD:693 | +| Test.java:823:27:823:28 | in : TreeMap [] : String | Test.java:823:10:823:48 | lazyMap(...) : IterableMap [] : String | provenance | MaD:697 | | Test.java:824:19:824:21 | out : IterableMap [] : String | Test.java:228:18:228:29 | map : IterableMap [] : String | provenance | | -| Test.java:824:19:824:21 | out : IterableMap [] : String | Test.java:824:9:824:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:824:19:824:21 | out : IterableMap [] : String | Test.java:824:9:824:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:829:13:829:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:830:27:830:28 | in : TreeMap [] : String | provenance | | | Test.java:829:34:829:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:829:34:829:49 | (...)... : String | Test.java:829:13:829:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:829:34:829:49 | (...)... : String | Test.java:829:13:829:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:829:42:829:49 | source(...) : Object | Test.java:829:34:829:49 | (...)... : String | provenance | | | Test.java:830:10:830:44 | lazyMap(...) : IterableMap [] : String | Test.java:831:19:831:21 | out : IterableMap [] : String | provenance | | -| Test.java:830:27:830:28 | in : TreeMap [] : String | Test.java:830:10:830:44 | lazyMap(...) : IterableMap [] : String | provenance | MaD:693 | +| Test.java:830:27:830:28 | in : TreeMap [] : String | Test.java:830:10:830:44 | lazyMap(...) : IterableMap [] : String | provenance | MaD:697 | | Test.java:831:19:831:21 | out : IterableMap [] : String | Test.java:228:18:228:29 | map : IterableMap [] : String | provenance | | -| Test.java:831:19:831:21 | out : IterableMap [] : String | Test.java:831:9:831:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:831:19:831:21 | out : IterableMap [] : String | Test.java:831:9:831:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:836:13:836:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:837:27:837:28 | in : TreeMap [] : String | provenance | | | Test.java:836:36:836:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:836:36:836:51 | (...)... : String | Test.java:836:13:836:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:836:36:836:51 | (...)... : String | Test.java:836:13:836:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:836:44:836:51 | source(...) : Object | Test.java:836:36:836:51 | (...)... : String | provenance | | | Test.java:837:10:837:48 | lazyMap(...) : IterableMap [] : String | Test.java:838:21:838:23 | out : IterableMap [] : String | provenance | | -| Test.java:837:27:837:28 | in : TreeMap [] : String | Test.java:837:10:837:48 | lazyMap(...) : IterableMap [] : String | provenance | MaD:694 | +| Test.java:837:27:837:28 | in : TreeMap [] : String | Test.java:837:10:837:48 | lazyMap(...) : IterableMap [] : String | provenance | MaD:698 | | Test.java:838:21:838:23 | out : IterableMap [] : String | Test.java:232:20:232:31 | map : IterableMap [] : String | provenance | | -| Test.java:838:21:838:23 | out : IterableMap [] : String | Test.java:838:9:838:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:838:21:838:23 | out : IterableMap [] : String | Test.java:838:9:838:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:843:13:843:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:844:27:844:28 | in : TreeMap [] : String | provenance | | | Test.java:843:36:843:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:843:36:843:51 | (...)... : String | Test.java:843:13:843:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:843:36:843:51 | (...)... : String | Test.java:843:13:843:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:843:44:843:51 | source(...) : Object | Test.java:843:36:843:51 | (...)... : String | provenance | | | Test.java:844:10:844:44 | lazyMap(...) : IterableMap [] : String | Test.java:845:21:845:23 | out : IterableMap [] : String | provenance | | -| Test.java:844:27:844:28 | in : TreeMap [] : String | Test.java:844:10:844:44 | lazyMap(...) : IterableMap [] : String | provenance | MaD:694 | +| Test.java:844:27:844:28 | in : TreeMap [] : String | Test.java:844:10:844:44 | lazyMap(...) : IterableMap [] : String | provenance | MaD:698 | | Test.java:845:21:845:23 | out : IterableMap [] : String | Test.java:232:20:232:31 | map : IterableMap [] : String | provenance | | -| Test.java:845:21:845:23 | out : IterableMap [] : String | Test.java:845:9:845:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:845:21:845:23 | out : IterableMap [] : String | Test.java:845:9:845:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:850:19:850:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:851:33:851:34 | in : TreeMap [] : String | provenance | | | Test.java:850:40:850:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:850:40:850:55 | (...)... : String | Test.java:850:19:850:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:850:40:850:55 | (...)... : String | Test.java:850:19:850:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:850:48:850:55 | source(...) : Object | Test.java:850:40:850:55 | (...)... : String | provenance | | | Test.java:851:10:851:54 | lazySortedMap(...) : SortedMap [] : String | Test.java:852:19:852:21 | out : SortedMap [] : String | provenance | | -| Test.java:851:33:851:34 | in : TreeMap [] : String | Test.java:851:10:851:54 | lazySortedMap(...) : SortedMap [] : String | provenance | MaD:695 | +| Test.java:851:33:851:34 | in : TreeMap [] : String | Test.java:851:10:851:54 | lazySortedMap(...) : SortedMap [] : String | provenance | MaD:699 | | Test.java:852:19:852:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | provenance | | -| Test.java:852:19:852:21 | out : SortedMap [] : String | Test.java:852:9:852:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:852:19:852:21 | out : SortedMap [] : String | Test.java:852:9:852:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:857:19:857:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:858:33:858:34 | in : TreeMap [] : String | provenance | | | Test.java:857:40:857:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:857:40:857:55 | (...)... : String | Test.java:857:19:857:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:857:40:857:55 | (...)... : String | Test.java:857:19:857:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:857:48:857:55 | source(...) : Object | Test.java:857:40:857:55 | (...)... : String | provenance | | | Test.java:858:10:858:50 | lazySortedMap(...) : SortedMap [] : String | Test.java:859:19:859:21 | out : SortedMap [] : String | provenance | | -| Test.java:858:33:858:34 | in : TreeMap [] : String | Test.java:858:10:858:50 | lazySortedMap(...) : SortedMap [] : String | provenance | MaD:695 | +| Test.java:858:33:858:34 | in : TreeMap [] : String | Test.java:858:10:858:50 | lazySortedMap(...) : SortedMap [] : String | provenance | MaD:699 | | Test.java:859:19:859:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | provenance | | -| Test.java:859:19:859:21 | out : SortedMap [] : String | Test.java:859:9:859:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:859:19:859:21 | out : SortedMap [] : String | Test.java:859:9:859:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:864:19:864:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:865:33:865:34 | in : TreeMap [] : String | provenance | | | Test.java:864:42:864:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:864:42:864:57 | (...)... : String | Test.java:864:19:864:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:864:42:864:57 | (...)... : String | Test.java:864:19:864:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:864:50:864:57 | source(...) : Object | Test.java:864:42:864:57 | (...)... : String | provenance | | | Test.java:865:10:865:54 | lazySortedMap(...) : SortedMap [] : String | Test.java:866:21:866:23 | out : SortedMap [] : String | provenance | | -| Test.java:865:33:865:34 | in : TreeMap [] : String | Test.java:865:10:865:54 | lazySortedMap(...) : SortedMap [] : String | provenance | MaD:696 | +| Test.java:865:33:865:34 | in : TreeMap [] : String | Test.java:865:10:865:54 | lazySortedMap(...) : SortedMap [] : String | provenance | MaD:700 | | Test.java:866:21:866:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | provenance | | -| Test.java:866:21:866:23 | out : SortedMap [] : String | Test.java:866:9:866:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:866:21:866:23 | out : SortedMap [] : String | Test.java:866:9:866:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:871:19:871:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:872:33:872:34 | in : TreeMap [] : String | provenance | | | Test.java:871:42:871:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:871:42:871:57 | (...)... : String | Test.java:871:19:871:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:871:42:871:57 | (...)... : String | Test.java:871:19:871:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:871:50:871:57 | source(...) : Object | Test.java:871:42:871:57 | (...)... : String | provenance | | | Test.java:872:10:872:50 | lazySortedMap(...) : SortedMap [] : String | Test.java:873:21:873:23 | out : SortedMap [] : String | provenance | | -| Test.java:872:33:872:34 | in : TreeMap [] : String | Test.java:872:10:872:50 | lazySortedMap(...) : SortedMap [] : String | provenance | MaD:696 | +| Test.java:872:33:872:34 | in : TreeMap [] : String | Test.java:872:10:872:50 | lazySortedMap(...) : SortedMap [] : String | provenance | MaD:700 | | Test.java:873:21:873:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | provenance | | -| Test.java:873:21:873:23 | out : SortedMap [] : String | Test.java:873:9:873:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:873:21:873:23 | out : SortedMap [] : String | Test.java:873:9:873:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:878:13:878:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:879:33:879:34 | in : TreeMap [] : String | provenance | | | Test.java:878:34:878:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:878:34:878:49 | (...)... : String | Test.java:878:13:878:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:878:34:878:49 | (...)... : String | Test.java:878:13:878:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:878:42:878:49 | source(...) : Object | Test.java:878:34:878:49 | (...)... : String | provenance | | | Test.java:879:10:879:50 | multiValueMap(...) : MultiValueMap [] : String | Test.java:880:19:880:21 | out : MultiValueMap [] : String | provenance | | -| Test.java:879:33:879:34 | in : TreeMap [] : String | Test.java:879:10:879:50 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:697 | +| Test.java:879:33:879:34 | in : TreeMap [] : String | Test.java:879:10:879:50 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:701 | | Test.java:880:19:880:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | provenance | | -| Test.java:880:19:880:21 | out : MultiValueMap [] : String | Test.java:880:9:880:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:880:19:880:21 | out : MultiValueMap [] : String | Test.java:880:9:880:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:885:13:885:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:886:33:886:34 | in : TreeMap [] : String | provenance | | | Test.java:885:34:885:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:885:34:885:49 | (...)... : String | Test.java:885:13:885:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:885:34:885:49 | (...)... : String | Test.java:885:13:885:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:885:42:885:49 | source(...) : Object | Test.java:885:34:885:49 | (...)... : String | provenance | | | Test.java:886:10:886:48 | multiValueMap(...) : MultiValueMap [] : String | Test.java:887:19:887:21 | out : MultiValueMap [] : String | provenance | | -| Test.java:886:33:886:34 | in : TreeMap [] : String | Test.java:886:10:886:48 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:697 | +| Test.java:886:33:886:34 | in : TreeMap [] : String | Test.java:886:10:886:48 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:701 | | Test.java:887:19:887:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | provenance | | -| Test.java:887:19:887:21 | out : MultiValueMap [] : String | Test.java:887:9:887:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:887:19:887:21 | out : MultiValueMap [] : String | Test.java:887:9:887:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:892:13:892:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:893:33:893:34 | in : TreeMap [] : String | provenance | | | Test.java:892:34:892:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:892:34:892:49 | (...)... : String | Test.java:892:13:892:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:892:34:892:49 | (...)... : String | Test.java:892:13:892:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:892:42:892:49 | source(...) : Object | Test.java:892:34:892:49 | (...)... : String | provenance | | | Test.java:893:10:893:35 | multiValueMap(...) : MultiValueMap [] : String | Test.java:894:19:894:21 | out : MultiValueMap [] : String | provenance | | -| Test.java:893:33:893:34 | in : TreeMap [] : String | Test.java:893:10:893:35 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:697 | +| Test.java:893:33:893:34 | in : TreeMap [] : String | Test.java:893:10:893:35 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:701 | | Test.java:894:19:894:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | provenance | | -| Test.java:894:19:894:21 | out : MultiValueMap [] : String | Test.java:894:9:894:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:894:19:894:21 | out : MultiValueMap [] : String | Test.java:894:9:894:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:899:13:899:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:900:33:900:34 | in : TreeMap [] : String | provenance | | | Test.java:899:36:899:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:899:36:899:51 | (...)... : String | Test.java:899:13:899:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:899:36:899:51 | (...)... : String | Test.java:899:13:899:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:899:44:899:51 | source(...) : Object | Test.java:899:36:899:51 | (...)... : String | provenance | | | Test.java:900:10:900:50 | multiValueMap(...) : MultiValueMap [] : String | Test.java:901:21:901:23 | out : MultiValueMap [] : String | provenance | | -| Test.java:900:33:900:34 | in : TreeMap [] : String | Test.java:900:10:900:50 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:698 | +| Test.java:900:33:900:34 | in : TreeMap [] : String | Test.java:900:10:900:50 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:702 | | Test.java:901:21:901:23 | out : MultiValueMap [] : String | Test.java:232:20:232:31 | map : MultiValueMap [] : String | provenance | | -| Test.java:901:21:901:23 | out : MultiValueMap [] : String | Test.java:901:9:901:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:901:21:901:23 | out : MultiValueMap [] : String | Test.java:901:9:901:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:906:13:906:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:907:33:907:34 | in : TreeMap [] : String | provenance | | | Test.java:906:36:906:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:906:36:906:51 | (...)... : String | Test.java:906:13:906:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:906:36:906:51 | (...)... : String | Test.java:906:13:906:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:906:44:906:51 | source(...) : Object | Test.java:906:36:906:51 | (...)... : String | provenance | | | Test.java:907:10:907:48 | multiValueMap(...) : MultiValueMap [] : String | Test.java:908:21:908:23 | out : MultiValueMap [] : String | provenance | | -| Test.java:907:33:907:34 | in : TreeMap [] : String | Test.java:907:10:907:48 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:698 | +| Test.java:907:33:907:34 | in : TreeMap [] : String | Test.java:907:10:907:48 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:702 | | Test.java:908:21:908:23 | out : MultiValueMap [] : String | Test.java:232:20:232:31 | map : MultiValueMap [] : String | provenance | | -| Test.java:908:21:908:23 | out : MultiValueMap [] : String | Test.java:908:9:908:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:908:21:908:23 | out : MultiValueMap [] : String | Test.java:908:9:908:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:913:13:913:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:914:33:914:34 | in : TreeMap [] : String | provenance | | | Test.java:913:36:913:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:913:36:913:51 | (...)... : String | Test.java:913:13:913:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:913:36:913:51 | (...)... : String | Test.java:913:13:913:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:913:44:913:51 | source(...) : Object | Test.java:913:36:913:51 | (...)... : String | provenance | | | Test.java:914:10:914:35 | multiValueMap(...) : MultiValueMap [] : String | Test.java:915:21:915:23 | out : MultiValueMap [] : String | provenance | | -| Test.java:914:33:914:34 | in : TreeMap [] : String | Test.java:914:10:914:35 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:698 | +| Test.java:914:33:914:34 | in : TreeMap [] : String | Test.java:914:10:914:35 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:702 | | Test.java:915:21:915:23 | out : MultiValueMap [] : String | Test.java:232:20:232:31 | map : MultiValueMap [] : String | provenance | | -| Test.java:915:21:915:23 | out : MultiValueMap [] : String | Test.java:915:9:915:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:915:21:915:23 | out : MultiValueMap [] : String | Test.java:915:9:915:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:920:13:920:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:921:30:921:31 | in : TreeMap [] : String | provenance | | | Test.java:920:34:920:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:920:34:920:49 | (...)... : String | Test.java:920:13:920:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:920:34:920:49 | (...)... : String | Test.java:920:13:920:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:920:42:920:49 | source(...) : Object | Test.java:920:34:920:49 | (...)... : String | provenance | | | Test.java:921:10:921:32 | orderedMap(...) : OrderedMap [] : String | Test.java:922:19:922:21 | out : OrderedMap [] : String | provenance | | -| Test.java:921:30:921:31 | in : TreeMap [] : String | Test.java:921:10:921:32 | orderedMap(...) : OrderedMap [] : String | provenance | MaD:699 | +| Test.java:921:30:921:31 | in : TreeMap [] : String | Test.java:921:10:921:32 | orderedMap(...) : OrderedMap [] : String | provenance | MaD:703 | | Test.java:922:19:922:21 | out : OrderedMap [] : String | Test.java:228:18:228:29 | map : OrderedMap [] : String | provenance | | -| Test.java:922:19:922:21 | out : OrderedMap [] : String | Test.java:922:9:922:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:922:19:922:21 | out : OrderedMap [] : String | Test.java:922:9:922:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:927:13:927:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:928:30:928:31 | in : TreeMap [] : String | provenance | | | Test.java:927:36:927:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:927:36:927:51 | (...)... : String | Test.java:927:13:927:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:927:36:927:51 | (...)... : String | Test.java:927:13:927:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:927:44:927:51 | source(...) : Object | Test.java:927:36:927:51 | (...)... : String | provenance | | | Test.java:928:10:928:32 | orderedMap(...) : OrderedMap [] : String | Test.java:929:21:929:23 | out : OrderedMap [] : String | provenance | | -| Test.java:928:30:928:31 | in : TreeMap [] : String | Test.java:928:10:928:32 | orderedMap(...) : OrderedMap [] : String | provenance | MaD:700 | +| Test.java:928:30:928:31 | in : TreeMap [] : String | Test.java:928:10:928:32 | orderedMap(...) : OrderedMap [] : String | provenance | MaD:704 | | Test.java:929:21:929:23 | out : OrderedMap [] : String | Test.java:232:20:232:31 | map : OrderedMap [] : String | provenance | | -| Test.java:929:21:929:23 | out : OrderedMap [] : String | Test.java:929:9:929:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:929:21:929:23 | out : OrderedMap [] : String | Test.java:929:9:929:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:934:18:934:55 | newVectorWithElement(...) : Vector [] : String | Test.java:935:30:935:31 | in : Vector [] : String | provenance | | | Test.java:934:39:934:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:934:39:934:54 | (...)... : String | Test.java:934:18:934:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:934:47:934:54 | source(...) : Object | Test.java:934:39:934:54 | (...)... : String | provenance | | | Test.java:935:25:935:27 | out [post update] : Map [] : String | Test.java:936:21:936:23 | out : Map [] : String | provenance | | -| Test.java:935:30:935:31 | in : Vector [] : String | Test.java:935:25:935:27 | out [post update] : Map [] : String | provenance | MaD:701 | +| Test.java:935:30:935:31 | in : Vector [] : String | Test.java:935:25:935:27 | out [post update] : Map [] : String | provenance | MaD:705 | | Test.java:936:21:936:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:936:21:936:23 | out : Map [] : String | Test.java:936:9:936:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:936:21:936:23 | out : Map [] : String | Test.java:936:9:936:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:943:26:943:63 | newVectorWithElement(...) : Vector [] : String | Test.java:944:30:944:31 | in : Vector [] : String | provenance | | | Test.java:943:47:943:62 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:943:47:943:62 | (...)... : String | Test.java:943:26:943:63 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:943:55:943:62 | source(...) : Object | Test.java:943:47:943:62 | (...)... : String | provenance | | | Test.java:944:25:944:27 | out [post update] : MultiMap [, ] : String | Test.java:945:44:945:46 | out : MultiMap [, ] : String | provenance | | -| Test.java:944:30:944:31 | in : Vector [] : String | Test.java:944:25:944:27 | out [post update] : MultiMap [, ] : String | provenance | MaD:702 | +| Test.java:944:30:944:31 | in : Vector [] : String | Test.java:944:25:944:27 | out [post update] : MultiMap [, ] : String | provenance | MaD:706 | | Test.java:945:20:945:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:945:20:945:47 | (...)... : Collection [] : String | Test.java:945:9:945:48 | getElement(...) | provenance | MaD:3 | | Test.java:945:32:945:47 | getMapValue(...) : Object [] : String | Test.java:945:20:945:47 | (...)... : Collection [] : String | provenance | | | Test.java:945:44:945:46 | out : MultiMap [, ] : String | Test.java:232:20:232:31 | map : MultiMap [, ] : String | provenance | | -| Test.java:945:44:945:46 | out : MultiMap [, ] : String | Test.java:945:32:945:47 | getMapValue(...) : Object [] : String | provenance | MaD:17 | +| Test.java:945:44:945:46 | out : MultiMap [, ] : String | Test.java:945:32:945:47 | getMapValue(...) : Object [] : String | provenance | MaD:18 | | Test.java:950:13:950:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:951:33:951:34 | in : TreeMap [] : String | provenance | | | Test.java:950:34:950:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:950:34:950:49 | (...)... : String | Test.java:950:13:950:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:950:34:950:49 | (...)... : String | Test.java:950:13:950:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:950:42:950:49 | source(...) : Object | Test.java:950:34:950:49 | (...)... : String | provenance | | | Test.java:951:10:951:47 | predicatedMap(...) : IterableMap [] : String | Test.java:952:19:952:21 | out : IterableMap [] : String | provenance | | -| Test.java:951:33:951:34 | in : TreeMap [] : String | Test.java:951:10:951:47 | predicatedMap(...) : IterableMap [] : String | provenance | MaD:703 | +| Test.java:951:33:951:34 | in : TreeMap [] : String | Test.java:951:10:951:47 | predicatedMap(...) : IterableMap [] : String | provenance | MaD:707 | | Test.java:952:19:952:21 | out : IterableMap [] : String | Test.java:228:18:228:29 | map : IterableMap [] : String | provenance | | -| Test.java:952:19:952:21 | out : IterableMap [] : String | Test.java:952:9:952:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:952:19:952:21 | out : IterableMap [] : String | Test.java:952:9:952:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:957:13:957:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:958:33:958:34 | in : TreeMap [] : String | provenance | | | Test.java:957:36:957:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:957:36:957:51 | (...)... : String | Test.java:957:13:957:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:957:36:957:51 | (...)... : String | Test.java:957:13:957:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:957:44:957:51 | source(...) : Object | Test.java:957:36:957:51 | (...)... : String | provenance | | | Test.java:958:10:958:47 | predicatedMap(...) : IterableMap [] : String | Test.java:959:21:959:23 | out : IterableMap [] : String | provenance | | -| Test.java:958:33:958:34 | in : TreeMap [] : String | Test.java:958:10:958:47 | predicatedMap(...) : IterableMap [] : String | provenance | MaD:704 | +| Test.java:958:33:958:34 | in : TreeMap [] : String | Test.java:958:10:958:47 | predicatedMap(...) : IterableMap [] : String | provenance | MaD:708 | | Test.java:959:21:959:23 | out : IterableMap [] : String | Test.java:232:20:232:31 | map : IterableMap [] : String | provenance | | -| Test.java:959:21:959:23 | out : IterableMap [] : String | Test.java:959:9:959:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:959:21:959:23 | out : IterableMap [] : String | Test.java:959:9:959:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:964:19:964:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:965:39:965:40 | in : TreeMap [] : String | provenance | | | Test.java:964:40:964:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:964:40:964:55 | (...)... : String | Test.java:964:19:964:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:964:40:964:55 | (...)... : String | Test.java:964:19:964:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:964:48:964:55 | source(...) : Object | Test.java:964:40:964:55 | (...)... : String | provenance | | | Test.java:965:10:965:53 | predicatedSortedMap(...) : SortedMap [] : String | Test.java:966:19:966:21 | out : SortedMap [] : String | provenance | | -| Test.java:965:39:965:40 | in : TreeMap [] : String | Test.java:965:10:965:53 | predicatedSortedMap(...) : SortedMap [] : String | provenance | MaD:705 | +| Test.java:965:39:965:40 | in : TreeMap [] : String | Test.java:965:10:965:53 | predicatedSortedMap(...) : SortedMap [] : String | provenance | MaD:709 | | Test.java:966:19:966:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | provenance | | -| Test.java:966:19:966:21 | out : SortedMap [] : String | Test.java:966:9:966:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:966:19:966:21 | out : SortedMap [] : String | Test.java:966:9:966:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:971:19:971:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:972:39:972:40 | in : TreeMap [] : String | provenance | | | Test.java:971:42:971:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:971:42:971:57 | (...)... : String | Test.java:971:19:971:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:971:42:971:57 | (...)... : String | Test.java:971:19:971:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:971:50:971:57 | source(...) : Object | Test.java:971:42:971:57 | (...)... : String | provenance | | | Test.java:972:10:972:53 | predicatedSortedMap(...) : SortedMap [] : String | Test.java:973:21:973:23 | out : SortedMap [] : String | provenance | | -| Test.java:972:39:972:40 | in : TreeMap [] : String | Test.java:972:10:972:53 | predicatedSortedMap(...) : SortedMap [] : String | provenance | MaD:706 | +| Test.java:972:39:972:40 | in : TreeMap [] : String | Test.java:972:10:972:53 | predicatedSortedMap(...) : SortedMap [] : String | provenance | MaD:710 | | Test.java:973:21:973:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | provenance | | -| Test.java:973:21:973:23 | out : SortedMap [] : String | Test.java:973:9:973:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:973:21:973:23 | out : SortedMap [] : String | Test.java:973:9:973:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:978:18:978:54 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:979:25:979:26 | in : Object[] [[]] : String | provenance | | | Test.java:978:38:978:53 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:978:38:978:53 | (...)... : String | Test.java:978:18:978:54 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:978:46:978:53 | source(...) : Object | Test.java:978:38:978:53 | (...)... : String | provenance | | | Test.java:979:20:979:22 | out [post update] : Map [] : Object | Test.java:980:19:980:21 | out : Map [] : Object | provenance | | | Test.java:979:20:979:22 | out [post update] : Map [] : String | Test.java:980:19:980:21 | out : Map [] : String | provenance | | -| Test.java:979:25:979:26 | in : Object[] [[]] : String | Test.java:979:20:979:22 | out [post update] : Map [] : Object | provenance | MaD:707 | | Test.java:979:25:979:26 | in : Object[] [[]] : String | Test.java:979:20:979:22 | out [post update] : Map [] : Object | provenance | MaD:711 | -| Test.java:979:25:979:26 | in : Object[] [[]] : String | Test.java:979:20:979:22 | out [post update] : Map [] : String | provenance | MaD:715 | +| Test.java:979:25:979:26 | in : Object[] [[]] : String | Test.java:979:20:979:22 | out [post update] : Map [] : Object | provenance | MaD:715 | +| Test.java:979:25:979:26 | in : Object[] [[]] : String | Test.java:979:20:979:22 | out [post update] : Map [] : String | provenance | MaD:719 | | Test.java:980:19:980:21 | out : Map [] : Object | Test.java:228:18:228:29 | map : Map [] : Object | provenance | | -| Test.java:980:19:980:21 | out : Map [] : Object | Test.java:980:9:980:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:980:19:980:21 | out : Map [] : Object | Test.java:980:9:980:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:980:19:980:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:980:19:980:21 | out : Map [] : String | Test.java:980:9:980:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:980:19:980:21 | out : Map [] : String | Test.java:980:9:980:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:985:18:985:54 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:986:32:986:33 | in : Object[] [[]] : String | provenance | | | Test.java:985:38:985:53 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:985:38:985:53 | (...)... : String | Test.java:985:18:985:54 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:985:46:985:53 | source(...) : Object | Test.java:985:38:985:53 | (...)... : String | provenance | | | Test.java:986:10:986:34 | putAll(...) : Map [] : Object | Test.java:987:19:987:21 | out : Map [] : Object | provenance | | | Test.java:986:10:986:34 | putAll(...) : Map [] : String | Test.java:987:19:987:21 | out : Map [] : String | provenance | | -| Test.java:986:32:986:33 | in : Object[] [[]] : String | Test.java:986:10:986:34 | putAll(...) : Map [] : Object | provenance | MaD:709 | -| Test.java:986:32:986:33 | in : Object[] [[]] : String | Test.java:986:10:986:34 | putAll(...) : Map [] : Object | provenance | MaD:712 | -| Test.java:986:32:986:33 | in : Object[] [[]] : String | Test.java:986:10:986:34 | putAll(...) : Map [] : String | provenance | MaD:717 | +| Test.java:986:32:986:33 | in : Object[] [[]] : String | Test.java:986:10:986:34 | putAll(...) : Map [] : Object | provenance | MaD:713 | +| Test.java:986:32:986:33 | in : Object[] [[]] : String | Test.java:986:10:986:34 | putAll(...) : Map [] : Object | provenance | MaD:716 | +| Test.java:986:32:986:33 | in : Object[] [[]] : String | Test.java:986:10:986:34 | putAll(...) : Map [] : String | provenance | MaD:721 | | Test.java:987:19:987:21 | out : Map [] : Object | Test.java:228:18:228:29 | map : Map [] : Object | provenance | | -| Test.java:987:19:987:21 | out : Map [] : Object | Test.java:987:9:987:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:987:19:987:21 | out : Map [] : Object | Test.java:987:9:987:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:987:19:987:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:987:19:987:21 | out : Map [] : String | Test.java:987:9:987:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:987:19:987:21 | out : Map [] : String | Test.java:987:9:987:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:992:18:992:54 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:993:25:993:26 | in : Object[] [[]] : String | provenance | | | Test.java:992:38:992:53 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:992:38:992:53 | (...)... : String | Test.java:992:18:992:54 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:992:46:992:53 | source(...) : Object | Test.java:992:38:992:53 | (...)... : String | provenance | | | Test.java:993:20:993:22 | out [post update] : Map [] : Object | Test.java:994:21:994:23 | out : Map [] : Object | provenance | | | Test.java:993:20:993:22 | out [post update] : Map [] : String | Test.java:994:21:994:23 | out : Map [] : String | provenance | | -| Test.java:993:25:993:26 | in : Object[] [[]] : String | Test.java:993:20:993:22 | out [post update] : Map [] : Object | provenance | MaD:708 | -| Test.java:993:25:993:26 | in : Object[] [[]] : String | Test.java:993:20:993:22 | out [post update] : Map [] : Object | provenance | MaD:713 | -| Test.java:993:25:993:26 | in : Object[] [[]] : String | Test.java:993:20:993:22 | out [post update] : Map [] : String | provenance | MaD:716 | +| Test.java:993:25:993:26 | in : Object[] [[]] : String | Test.java:993:20:993:22 | out [post update] : Map [] : Object | provenance | MaD:712 | +| Test.java:993:25:993:26 | in : Object[] [[]] : String | Test.java:993:20:993:22 | out [post update] : Map [] : Object | provenance | MaD:717 | +| Test.java:993:25:993:26 | in : Object[] [[]] : String | Test.java:993:20:993:22 | out [post update] : Map [] : String | provenance | MaD:720 | | Test.java:994:21:994:23 | out : Map [] : Object | Test.java:232:20:232:31 | map : Map [] : Object | provenance | | -| Test.java:994:21:994:23 | out : Map [] : Object | Test.java:994:9:994:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:994:21:994:23 | out : Map [] : Object | Test.java:994:9:994:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:994:21:994:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:994:21:994:23 | out : Map [] : String | Test.java:994:9:994:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:994:21:994:23 | out : Map [] : String | Test.java:994:9:994:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:999:18:999:54 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:1000:32:1000:33 | in : Object[] [[]] : String | provenance | | | Test.java:999:38:999:53 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:999:38:999:53 | (...)... : String | Test.java:999:18:999:54 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:999:46:999:53 | source(...) : Object | Test.java:999:38:999:53 | (...)... : String | provenance | | | Test.java:1000:10:1000:34 | putAll(...) : Map [] : Object | Test.java:1001:21:1001:23 | out : Map [] : Object | provenance | | | Test.java:1000:10:1000:34 | putAll(...) : Map [] : String | Test.java:1001:21:1001:23 | out : Map [] : String | provenance | | -| Test.java:1000:32:1000:33 | in : Object[] [[]] : String | Test.java:1000:10:1000:34 | putAll(...) : Map [] : Object | provenance | MaD:710 | | Test.java:1000:32:1000:33 | in : Object[] [[]] : String | Test.java:1000:10:1000:34 | putAll(...) : Map [] : Object | provenance | MaD:714 | -| Test.java:1000:32:1000:33 | in : Object[] [[]] : String | Test.java:1000:10:1000:34 | putAll(...) : Map [] : String | provenance | MaD:718 | +| Test.java:1000:32:1000:33 | in : Object[] [[]] : String | Test.java:1000:10:1000:34 | putAll(...) : Map [] : Object | provenance | MaD:718 | +| Test.java:1000:32:1000:33 | in : Object[] [[]] : String | Test.java:1000:10:1000:34 | putAll(...) : Map [] : String | provenance | MaD:722 | | Test.java:1001:21:1001:23 | out : Map [] : Object | Test.java:232:20:232:31 | map : Map [] : Object | provenance | | -| Test.java:1001:21:1001:23 | out : Map [] : Object | Test.java:1001:9:1001:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1001:21:1001:23 | out : Map [] : Object | Test.java:1001:9:1001:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1001:21:1001:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:1001:21:1001:23 | out : Map [] : String | Test.java:1001:9:1001:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1001:21:1001:23 | out : Map [] : String | Test.java:1001:9:1001:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1006:18:1006:75 | newWithArrayElement(...) : Object[] [[], []] : String | Test.java:1007:25:1007:26 | in : Object[] [[], []] : String | provenance | | | Test.java:1006:38:1006:74 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:251:31:251:44 | element : Object[] [[]] : String | provenance | | | Test.java:1006:38:1006:74 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:1006:18:1006:75 | newWithArrayElement(...) : Object[] [[], []] : String | provenance | | @@ -2567,9 +2569,9 @@ edges | Test.java:1006:58:1006:73 | (...)... : String | Test.java:1006:38:1006:74 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:1006:66:1006:73 | source(...) : Object | Test.java:1006:58:1006:73 | (...)... : String | provenance | | | Test.java:1007:20:1007:22 | out [post update] : Map [] : String | Test.java:1008:19:1008:21 | out : Map [] : String | provenance | | -| Test.java:1007:25:1007:26 | in : Object[] [[], []] : String | Test.java:1007:20:1007:22 | out [post update] : Map [] : String | provenance | MaD:707 | +| Test.java:1007:25:1007:26 | in : Object[] [[], []] : String | Test.java:1007:20:1007:22 | out [post update] : Map [] : String | provenance | MaD:711 | | Test.java:1008:19:1008:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:1008:19:1008:21 | out : Map [] : String | Test.java:1008:9:1008:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1008:19:1008:21 | out : Map [] : String | Test.java:1008:9:1008:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1013:18:1013:75 | newWithArrayElement(...) : Object[] [[], []] : String | Test.java:1014:32:1014:33 | in : Object[] [[], []] : String | provenance | | | Test.java:1013:38:1013:74 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:251:31:251:44 | element : Object[] [[]] : String | provenance | | | Test.java:1013:38:1013:74 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:1013:18:1013:75 | newWithArrayElement(...) : Object[] [[], []] : String | provenance | | @@ -2577,9 +2579,9 @@ edges | Test.java:1013:58:1013:73 | (...)... : String | Test.java:1013:38:1013:74 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:1013:66:1013:73 | source(...) : Object | Test.java:1013:58:1013:73 | (...)... : String | provenance | | | Test.java:1014:10:1014:34 | putAll(...) : Map [] : String | Test.java:1015:19:1015:21 | out : Map [] : String | provenance | | -| Test.java:1014:32:1014:33 | in : Object[] [[], []] : String | Test.java:1014:10:1014:34 | putAll(...) : Map [] : String | provenance | MaD:709 | +| Test.java:1014:32:1014:33 | in : Object[] [[], []] : String | Test.java:1014:10:1014:34 | putAll(...) : Map [] : String | provenance | MaD:713 | | Test.java:1015:19:1015:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:1015:19:1015:21 | out : Map [] : String | Test.java:1015:9:1015:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1015:19:1015:21 | out : Map [] : String | Test.java:1015:9:1015:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1020:18:1020:75 | newWithArrayElement(...) : Object[] [[], []] : String | Test.java:1021:25:1021:26 | in : Object[] [[], []] : String | provenance | | | Test.java:1020:38:1020:74 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:251:31:251:44 | element : Object[] [[]] : String | provenance | | | Test.java:1020:38:1020:74 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:1020:18:1020:75 | newWithArrayElement(...) : Object[] [[], []] : String | provenance | | @@ -2587,9 +2589,9 @@ edges | Test.java:1020:58:1020:73 | (...)... : String | Test.java:1020:38:1020:74 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:1020:66:1020:73 | source(...) : Object | Test.java:1020:58:1020:73 | (...)... : String | provenance | | | Test.java:1021:20:1021:22 | out [post update] : Map [] : String | Test.java:1022:21:1022:23 | out : Map [] : String | provenance | | -| Test.java:1021:25:1021:26 | in : Object[] [[], []] : String | Test.java:1021:20:1021:22 | out [post update] : Map [] : String | provenance | MaD:708 | +| Test.java:1021:25:1021:26 | in : Object[] [[], []] : String | Test.java:1021:20:1021:22 | out [post update] : Map [] : String | provenance | MaD:712 | | Test.java:1022:21:1022:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:1022:21:1022:23 | out : Map [] : String | Test.java:1022:9:1022:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1022:21:1022:23 | out : Map [] : String | Test.java:1022:9:1022:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1027:18:1027:75 | newWithArrayElement(...) : Object[] [[], []] : String | Test.java:1028:32:1028:33 | in : Object[] [[], []] : String | provenance | | | Test.java:1027:38:1027:74 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:251:31:251:44 | element : Object[] [[]] : String | provenance | | | Test.java:1027:38:1027:74 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:1027:18:1027:75 | newWithArrayElement(...) : Object[] [[], []] : String | provenance | | @@ -2597,334 +2599,333 @@ edges | Test.java:1027:58:1027:73 | (...)... : String | Test.java:1027:38:1027:74 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:1027:66:1027:73 | source(...) : Object | Test.java:1027:58:1027:73 | (...)... : String | provenance | | | Test.java:1028:10:1028:34 | putAll(...) : Map [] : String | Test.java:1029:21:1029:23 | out : Map [] : String | provenance | | -| Test.java:1028:32:1028:33 | in : Object[] [[], []] : String | Test.java:1028:10:1028:34 | putAll(...) : Map [] : String | provenance | MaD:710 | +| Test.java:1028:32:1028:33 | in : Object[] [[], []] : String | Test.java:1028:10:1028:34 | putAll(...) : Map [] : String | provenance | MaD:714 | | Test.java:1029:21:1029:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:1029:21:1029:23 | out : Map [] : String | Test.java:1029:9:1029:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1029:21:1029:23 | out : Map [] : String | Test.java:1029:9:1029:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1034:18:1034:73 | newWithArrayElement(...) : Object[] [[], ] : String | Test.java:1035:25:1035:26 | in : Object[] [[], ] : String | provenance | | | Test.java:1034:38:1034:72 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | Test.java:251:31:251:44 | element : MyAbstractKeyValue [] : String | provenance | | | Test.java:1034:38:1034:72 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | Test.java:1034:18:1034:73 | newWithArrayElement(...) : Object[] [[], ] : String | provenance | | | Test.java:1034:56:1034:71 | (...)... : String | Test.java:282:53:282:57 | key : String | provenance | | -| Test.java:1034:56:1034:71 | (...)... : String | Test.java:1034:38:1034:72 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:191 | +| Test.java:1034:56:1034:71 | (...)... : String | Test.java:1034:38:1034:72 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | | Test.java:1034:64:1034:71 | source(...) : Object | Test.java:1034:56:1034:71 | (...)... : String | provenance | | | Test.java:1035:20:1035:22 | out [post update] : Map [] : String | Test.java:1036:19:1036:21 | out : Map [] : String | provenance | | -| Test.java:1035:25:1035:26 | in : Object[] [[], ] : String | Test.java:1035:20:1035:22 | out [post update] : Map [] : String | provenance | MaD:711 | +| Test.java:1035:25:1035:26 | in : Object[] [[], ] : String | Test.java:1035:20:1035:22 | out [post update] : Map [] : String | provenance | MaD:715 | | Test.java:1036:19:1036:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:1036:19:1036:21 | out : Map [] : String | Test.java:1036:9:1036:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1036:19:1036:21 | out : Map [] : String | Test.java:1036:9:1036:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1041:18:1041:73 | newWithArrayElement(...) : Object[] [[], ] : String | Test.java:1042:32:1042:33 | in : Object[] [[], ] : String | provenance | | | Test.java:1041:38:1041:72 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | Test.java:251:31:251:44 | element : MyAbstractKeyValue [] : String | provenance | | | Test.java:1041:38:1041:72 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | Test.java:1041:18:1041:73 | newWithArrayElement(...) : Object[] [[], ] : String | provenance | | | Test.java:1041:56:1041:71 | (...)... : String | Test.java:282:53:282:57 | key : String | provenance | | -| Test.java:1041:56:1041:71 | (...)... : String | Test.java:1041:38:1041:72 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:191 | +| Test.java:1041:56:1041:71 | (...)... : String | Test.java:1041:38:1041:72 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | | Test.java:1041:64:1041:71 | source(...) : Object | Test.java:1041:56:1041:71 | (...)... : String | provenance | | | Test.java:1042:10:1042:34 | putAll(...) : Map [] : String | Test.java:1043:19:1043:21 | out : Map [] : String | provenance | | -| Test.java:1042:32:1042:33 | in : Object[] [[], ] : String | Test.java:1042:10:1042:34 | putAll(...) : Map [] : String | provenance | MaD:712 | +| Test.java:1042:32:1042:33 | in : Object[] [[], ] : String | Test.java:1042:10:1042:34 | putAll(...) : Map [] : String | provenance | MaD:716 | | Test.java:1043:19:1043:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:1043:19:1043:21 | out : Map [] : String | Test.java:1043:9:1043:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1043:19:1043:21 | out : Map [] : String | Test.java:1043:9:1043:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1048:18:1048:75 | newWithArrayElement(...) : Object[] [[], ] : String | Test.java:1049:25:1049:26 | in : Object[] [[], ] : String | provenance | | | Test.java:1048:38:1048:74 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | Test.java:251:31:251:44 | element : MyAbstractKeyValue [] : String | provenance | | | Test.java:1048:38:1048:74 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | Test.java:1048:18:1048:75 | newWithArrayElement(...) : Object[] [[], ] : String | provenance | | | Test.java:1048:58:1048:73 | (...)... : String | Test.java:299:55:299:61 | value : String | provenance | | -| Test.java:1048:58:1048:73 | (...)... : String | Test.java:1048:38:1048:74 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | +| Test.java:1048:58:1048:73 | (...)... : String | Test.java:1048:38:1048:74 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:193 | | Test.java:1048:66:1048:73 | source(...) : Object | Test.java:1048:58:1048:73 | (...)... : String | provenance | | | Test.java:1049:20:1049:22 | out [post update] : Map [] : String | Test.java:1050:21:1050:23 | out : Map [] : String | provenance | | -| Test.java:1049:25:1049:26 | in : Object[] [[], ] : String | Test.java:1049:20:1049:22 | out [post update] : Map [] : String | provenance | MaD:713 | +| Test.java:1049:25:1049:26 | in : Object[] [[], ] : String | Test.java:1049:20:1049:22 | out [post update] : Map [] : String | provenance | MaD:717 | | Test.java:1050:21:1050:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:1050:21:1050:23 | out : Map [] : String | Test.java:1050:9:1050:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1050:21:1050:23 | out : Map [] : String | Test.java:1050:9:1050:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1055:18:1055:75 | newWithArrayElement(...) : Object[] [[], ] : String | Test.java:1056:32:1056:33 | in : Object[] [[], ] : String | provenance | | | Test.java:1055:38:1055:74 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | Test.java:251:31:251:44 | element : MyAbstractKeyValue [] : String | provenance | | | Test.java:1055:38:1055:74 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | Test.java:1055:18:1055:75 | newWithArrayElement(...) : Object[] [[], ] : String | provenance | | | Test.java:1055:58:1055:73 | (...)... : String | Test.java:299:55:299:61 | value : String | provenance | | -| Test.java:1055:58:1055:73 | (...)... : String | Test.java:1055:38:1055:74 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:192 | +| Test.java:1055:58:1055:73 | (...)... : String | Test.java:1055:38:1055:74 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | provenance | MaD:193 | | Test.java:1055:66:1055:73 | source(...) : Object | Test.java:1055:58:1055:73 | (...)... : String | provenance | | | Test.java:1056:10:1056:34 | putAll(...) : Map [] : String | Test.java:1057:21:1057:23 | out : Map [] : String | provenance | | -| Test.java:1056:32:1056:33 | in : Object[] [[], ] : String | Test.java:1056:10:1056:34 | putAll(...) : Map [] : String | provenance | MaD:714 | +| Test.java:1056:32:1056:33 | in : Object[] [[], ] : String | Test.java:1056:10:1056:34 | putAll(...) : Map [] : String | provenance | MaD:718 | | Test.java:1057:21:1057:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:1057:21:1057:23 | out : Map [] : String | Test.java:1057:9:1057:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1057:21:1057:23 | out : Map [] : String | Test.java:1057:9:1057:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1062:16:1062:23 | source(...) : Object | Test.java:1063:31:1063:32 | in : Object | provenance | | | Test.java:1063:26:1063:28 | out [post update] : Map [] : Object | Test.java:1064:19:1064:21 | out : Map [] : Object | provenance | | -| Test.java:1063:31:1063:32 | in : Object | Test.java:1063:26:1063:28 | out [post update] : Map [] : Object | provenance | MaD:719 | +| Test.java:1063:31:1063:32 | in : Object | Test.java:1063:26:1063:28 | out [post update] : Map [] : Object | provenance | MaD:723 | | Test.java:1064:19:1064:21 | out : Map [] : Object | Test.java:228:18:228:29 | map : Map [] : Object | provenance | | -| Test.java:1064:19:1064:21 | out : Map [] : Object | Test.java:1064:9:1064:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1064:19:1064:21 | out : Map [] : Object | Test.java:1064:9:1064:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1069:16:1069:23 | source(...) : Object | Test.java:1070:37:1070:38 | in : Object | provenance | | | Test.java:1070:26:1070:28 | out [post update] : Map [] : Object | Test.java:1071:21:1071:23 | out : Map [] : Object | provenance | | -| Test.java:1070:37:1070:38 | in : Object | Test.java:1070:26:1070:28 | out [post update] : Map [] : Object | provenance | MaD:720 | +| Test.java:1070:37:1070:38 | in : Object | Test.java:1070:26:1070:28 | out [post update] : Map [] : Object | provenance | MaD:724 | | Test.java:1071:21:1071:23 | out : Map [] : Object | Test.java:232:20:232:31 | map : Map [] : Object | provenance | | -| Test.java:1071:21:1071:23 | out : Map [] : Object | Test.java:1071:9:1071:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1071:21:1071:23 | out : Map [] : Object | Test.java:1071:9:1071:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1076:13:1076:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:1077:35:1077:36 | in : TreeMap [] : String | provenance | | | Test.java:1076:34:1076:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:1076:34:1076:49 | (...)... : String | Test.java:1076:13:1076:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:1076:34:1076:49 | (...)... : String | Test.java:1076:13:1076:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:1076:42:1076:49 | source(...) : Object | Test.java:1076:34:1076:49 | (...)... : String | provenance | | | Test.java:1077:10:1077:37 | synchronizedMap(...) : Map [] : String | Test.java:1078:19:1078:21 | out : Map [] : String | provenance | | -| Test.java:1077:35:1077:36 | in : TreeMap [] : String | Test.java:1077:10:1077:37 | synchronizedMap(...) : Map [] : String | provenance | MaD:721 | +| Test.java:1077:35:1077:36 | in : TreeMap [] : String | Test.java:1077:10:1077:37 | synchronizedMap(...) : Map [] : String | provenance | MaD:725 | | Test.java:1078:19:1078:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:1078:19:1078:21 | out : Map [] : String | Test.java:1078:9:1078:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1078:19:1078:21 | out : Map [] : String | Test.java:1078:9:1078:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1083:13:1083:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:1084:35:1084:36 | in : TreeMap [] : String | provenance | | | Test.java:1083:36:1083:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:1083:36:1083:51 | (...)... : String | Test.java:1083:13:1083:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:1083:36:1083:51 | (...)... : String | Test.java:1083:13:1083:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:1083:44:1083:51 | source(...) : Object | Test.java:1083:36:1083:51 | (...)... : String | provenance | | | Test.java:1084:10:1084:37 | synchronizedMap(...) : Map [] : String | Test.java:1085:21:1085:23 | out : Map [] : String | provenance | | -| Test.java:1084:35:1084:36 | in : TreeMap [] : String | Test.java:1084:10:1084:37 | synchronizedMap(...) : Map [] : String | provenance | MaD:722 | +| Test.java:1084:35:1084:36 | in : TreeMap [] : String | Test.java:1084:10:1084:37 | synchronizedMap(...) : Map [] : String | provenance | MaD:726 | | Test.java:1085:21:1085:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:1085:21:1085:23 | out : Map [] : String | Test.java:1085:9:1085:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1085:21:1085:23 | out : Map [] : String | Test.java:1085:9:1085:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1090:19:1090:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:1091:41:1091:42 | in : TreeMap [] : String | provenance | | | Test.java:1090:40:1090:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:1090:40:1090:55 | (...)... : String | Test.java:1090:19:1090:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:1090:40:1090:55 | (...)... : String | Test.java:1090:19:1090:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:1090:48:1090:55 | source(...) : Object | Test.java:1090:40:1090:55 | (...)... : String | provenance | | | Test.java:1091:10:1091:43 | synchronizedSortedMap(...) : SortedMap [] : String | Test.java:1092:19:1092:21 | out : SortedMap [] : String | provenance | | -| Test.java:1091:41:1091:42 | in : TreeMap [] : String | Test.java:1091:10:1091:43 | synchronizedSortedMap(...) : SortedMap [] : String | provenance | MaD:723 | +| Test.java:1091:41:1091:42 | in : TreeMap [] : String | Test.java:1091:10:1091:43 | synchronizedSortedMap(...) : SortedMap [] : String | provenance | MaD:727 | | Test.java:1092:19:1092:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | provenance | | -| Test.java:1092:19:1092:21 | out : SortedMap [] : String | Test.java:1092:9:1092:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1092:19:1092:21 | out : SortedMap [] : String | Test.java:1092:9:1092:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1097:19:1097:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:1098:41:1098:42 | in : TreeMap [] : String | provenance | | | Test.java:1097:42:1097:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:1097:42:1097:57 | (...)... : String | Test.java:1097:19:1097:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:1097:42:1097:57 | (...)... : String | Test.java:1097:19:1097:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:1097:50:1097:57 | source(...) : Object | Test.java:1097:42:1097:57 | (...)... : String | provenance | | | Test.java:1098:10:1098:43 | synchronizedSortedMap(...) : SortedMap [] : String | Test.java:1099:21:1099:23 | out : SortedMap [] : String | provenance | | -| Test.java:1098:41:1098:42 | in : TreeMap [] : String | Test.java:1098:10:1098:43 | synchronizedSortedMap(...) : SortedMap [] : String | provenance | MaD:724 | +| Test.java:1098:41:1098:42 | in : TreeMap [] : String | Test.java:1098:10:1098:43 | synchronizedSortedMap(...) : SortedMap [] : String | provenance | MaD:728 | | Test.java:1099:21:1099:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | provenance | | -| Test.java:1099:21:1099:23 | out : SortedMap [] : String | Test.java:1099:9:1099:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1099:21:1099:23 | out : SortedMap [] : String | Test.java:1099:9:1099:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1104:24:1104:56 | newRBWithMapKey(...) : ResourceBundle [] : String | Test.java:1105:25:1105:26 | in : ResourceBundle [] : String | provenance | | | Test.java:1104:40:1104:55 | (...)... : String | Test.java:1104:24:1104:56 | newRBWithMapKey(...) : ResourceBundle [] : String | provenance | MaD:1 | | Test.java:1104:48:1104:55 | source(...) : Object | Test.java:1104:40:1104:55 | (...)... : String | provenance | | | Test.java:1105:10:1105:27 | toMap(...) : Map [] : String | Test.java:1106:19:1106:21 | out : Map [] : String | provenance | | -| Test.java:1105:25:1105:26 | in : ResourceBundle [] : String | Test.java:1105:10:1105:27 | toMap(...) : Map [] : String | provenance | MaD:725 | +| Test.java:1105:25:1105:26 | in : ResourceBundle [] : String | Test.java:1105:10:1105:27 | toMap(...) : Map [] : String | provenance | MaD:729 | | Test.java:1106:19:1106:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:1106:19:1106:21 | out : Map [] : String | Test.java:1106:9:1106:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1106:19:1106:21 | out : Map [] : String | Test.java:1106:9:1106:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1111:24:1111:58 | newRBWithMapValue(...) : ResourceBundle [] : String | Test.java:1112:25:1112:26 | in : ResourceBundle [] : String | provenance | | | Test.java:1111:42:1111:57 | (...)... : String | Test.java:1111:24:1111:58 | newRBWithMapValue(...) : ResourceBundle [] : String | provenance | MaD:2 | | Test.java:1111:50:1111:57 | source(...) : Object | Test.java:1111:42:1111:57 | (...)... : String | provenance | | | Test.java:1112:10:1112:27 | toMap(...) : Map [] : String | Test.java:1113:21:1113:23 | out : Map [] : String | provenance | | -| Test.java:1112:25:1112:26 | in : ResourceBundle [] : String | Test.java:1112:10:1112:27 | toMap(...) : Map [] : String | provenance | MaD:726 | +| Test.java:1112:25:1112:26 | in : ResourceBundle [] : String | Test.java:1112:10:1112:27 | toMap(...) : Map [] : String | provenance | MaD:730 | | Test.java:1113:21:1113:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:1113:21:1113:23 | out : Map [] : String | Test.java:1113:9:1113:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1113:21:1113:23 | out : Map [] : String | Test.java:1113:9:1113:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1118:13:1118:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:1119:34:1119:35 | in : TreeMap [] : String | provenance | | | Test.java:1118:34:1118:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:1118:34:1118:49 | (...)... : String | Test.java:1118:13:1118:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:1118:34:1118:49 | (...)... : String | Test.java:1118:13:1118:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:1118:42:1118:49 | source(...) : Object | Test.java:1118:34:1118:49 | (...)... : String | provenance | | | Test.java:1119:10:1119:48 | transformedMap(...) : IterableMap [] : String | Test.java:1120:19:1120:21 | out : IterableMap [] : String | provenance | | -| Test.java:1119:34:1119:35 | in : TreeMap [] : String | Test.java:1119:10:1119:48 | transformedMap(...) : IterableMap [] : String | provenance | MaD:727 | +| Test.java:1119:34:1119:35 | in : TreeMap [] : String | Test.java:1119:10:1119:48 | transformedMap(...) : IterableMap [] : String | provenance | MaD:731 | | Test.java:1120:19:1120:21 | out : IterableMap [] : String | Test.java:228:18:228:29 | map : IterableMap [] : String | provenance | | -| Test.java:1120:19:1120:21 | out : IterableMap [] : String | Test.java:1120:9:1120:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1120:19:1120:21 | out : IterableMap [] : String | Test.java:1120:9:1120:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1125:13:1125:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:1126:34:1126:35 | in : TreeMap [] : String | provenance | | | Test.java:1125:36:1125:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:1125:36:1125:51 | (...)... : String | Test.java:1125:13:1125:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:1125:36:1125:51 | (...)... : String | Test.java:1125:13:1125:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:1125:44:1125:51 | source(...) : Object | Test.java:1125:36:1125:51 | (...)... : String | provenance | | | Test.java:1126:10:1126:48 | transformedMap(...) : IterableMap [] : String | Test.java:1127:21:1127:23 | out : IterableMap [] : String | provenance | | -| Test.java:1126:34:1126:35 | in : TreeMap [] : String | Test.java:1126:10:1126:48 | transformedMap(...) : IterableMap [] : String | provenance | MaD:728 | +| Test.java:1126:34:1126:35 | in : TreeMap [] : String | Test.java:1126:10:1126:48 | transformedMap(...) : IterableMap [] : String | provenance | MaD:732 | | Test.java:1127:21:1127:23 | out : IterableMap [] : String | Test.java:232:20:232:31 | map : IterableMap [] : String | provenance | | -| Test.java:1127:21:1127:23 | out : IterableMap [] : String | Test.java:1127:9:1127:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1127:21:1127:23 | out : IterableMap [] : String | Test.java:1127:9:1127:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1132:19:1132:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:1133:40:1133:41 | in : TreeMap [] : String | provenance | | | Test.java:1132:40:1132:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:1132:40:1132:55 | (...)... : String | Test.java:1132:19:1132:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:1132:40:1132:55 | (...)... : String | Test.java:1132:19:1132:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:1132:48:1132:55 | source(...) : Object | Test.java:1132:40:1132:55 | (...)... : String | provenance | | | Test.java:1133:10:1133:54 | transformedSortedMap(...) : SortedMap [] : String | Test.java:1134:19:1134:21 | out : SortedMap [] : String | provenance | | -| Test.java:1133:40:1133:41 | in : TreeMap [] : String | Test.java:1133:10:1133:54 | transformedSortedMap(...) : SortedMap [] : String | provenance | MaD:729 | +| Test.java:1133:40:1133:41 | in : TreeMap [] : String | Test.java:1133:10:1133:54 | transformedSortedMap(...) : SortedMap [] : String | provenance | MaD:733 | | Test.java:1134:19:1134:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | provenance | | -| Test.java:1134:19:1134:21 | out : SortedMap [] : String | Test.java:1134:9:1134:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1134:19:1134:21 | out : SortedMap [] : String | Test.java:1134:9:1134:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1139:19:1139:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:1140:40:1140:41 | in : TreeMap [] : String | provenance | | | Test.java:1139:42:1139:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:1139:42:1139:57 | (...)... : String | Test.java:1139:19:1139:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:1139:42:1139:57 | (...)... : String | Test.java:1139:19:1139:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:1139:50:1139:57 | source(...) : Object | Test.java:1139:42:1139:57 | (...)... : String | provenance | | | Test.java:1140:10:1140:54 | transformedSortedMap(...) : SortedMap [] : String | Test.java:1141:21:1141:23 | out : SortedMap [] : String | provenance | | -| Test.java:1140:40:1140:41 | in : TreeMap [] : String | Test.java:1140:10:1140:54 | transformedSortedMap(...) : SortedMap [] : String | provenance | MaD:730 | +| Test.java:1140:40:1140:41 | in : TreeMap [] : String | Test.java:1140:10:1140:54 | transformedSortedMap(...) : SortedMap [] : String | provenance | MaD:734 | | Test.java:1141:21:1141:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | provenance | | -| Test.java:1141:21:1141:23 | out : SortedMap [] : String | Test.java:1141:9:1141:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1141:21:1141:23 | out : SortedMap [] : String | Test.java:1141:9:1141:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1146:13:1146:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:1147:35:1147:36 | in : TreeMap [] : String | provenance | | | Test.java:1146:34:1146:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:1146:34:1146:49 | (...)... : String | Test.java:1146:13:1146:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:1146:34:1146:49 | (...)... : String | Test.java:1146:13:1146:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:1146:42:1146:49 | source(...) : Object | Test.java:1146:34:1146:49 | (...)... : String | provenance | | | Test.java:1147:10:1147:37 | unmodifiableMap(...) : Map [] : String | Test.java:1148:19:1148:21 | out : Map [] : String | provenance | | -| Test.java:1147:35:1147:36 | in : TreeMap [] : String | Test.java:1147:10:1147:37 | unmodifiableMap(...) : Map [] : String | provenance | MaD:731 | +| Test.java:1147:35:1147:36 | in : TreeMap [] : String | Test.java:1147:10:1147:37 | unmodifiableMap(...) : Map [] : String | provenance | MaD:735 | | Test.java:1148:19:1148:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:1148:19:1148:21 | out : Map [] : String | Test.java:1148:9:1148:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1148:19:1148:21 | out : Map [] : String | Test.java:1148:9:1148:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1153:13:1153:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:1154:35:1154:36 | in : TreeMap [] : String | provenance | | | Test.java:1153:36:1153:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:1153:36:1153:51 | (...)... : String | Test.java:1153:13:1153:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:1153:36:1153:51 | (...)... : String | Test.java:1153:13:1153:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:1153:44:1153:51 | source(...) : Object | Test.java:1153:36:1153:51 | (...)... : String | provenance | | | Test.java:1154:10:1154:37 | unmodifiableMap(...) : Map [] : String | Test.java:1155:21:1155:23 | out : Map [] : String | provenance | | -| Test.java:1154:35:1154:36 | in : TreeMap [] : String | Test.java:1154:10:1154:37 | unmodifiableMap(...) : Map [] : String | provenance | MaD:732 | +| Test.java:1154:35:1154:36 | in : TreeMap [] : String | Test.java:1154:10:1154:37 | unmodifiableMap(...) : Map [] : String | provenance | MaD:736 | | Test.java:1155:21:1155:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:1155:21:1155:23 | out : Map [] : String | Test.java:1155:9:1155:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1155:21:1155:23 | out : Map [] : String | Test.java:1155:9:1155:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1160:19:1160:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:1161:41:1161:42 | in : TreeMap [] : String | provenance | | | Test.java:1160:40:1160:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:1160:40:1160:55 | (...)... : String | Test.java:1160:19:1160:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:1160:40:1160:55 | (...)... : String | Test.java:1160:19:1160:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:1160:48:1160:55 | source(...) : Object | Test.java:1160:40:1160:55 | (...)... : String | provenance | | | Test.java:1161:10:1161:43 | unmodifiableSortedMap(...) : SortedMap [] : String | Test.java:1162:19:1162:21 | out : SortedMap [] : String | provenance | | -| Test.java:1161:41:1161:42 | in : TreeMap [] : String | Test.java:1161:10:1161:43 | unmodifiableSortedMap(...) : SortedMap [] : String | provenance | MaD:733 | +| Test.java:1161:41:1161:42 | in : TreeMap [] : String | Test.java:1161:10:1161:43 | unmodifiableSortedMap(...) : SortedMap [] : String | provenance | MaD:737 | | Test.java:1162:19:1162:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | provenance | | -| Test.java:1162:19:1162:21 | out : SortedMap [] : String | Test.java:1162:9:1162:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1162:19:1162:21 | out : SortedMap [] : String | Test.java:1162:9:1162:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1167:19:1167:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:1168:41:1168:42 | in : TreeMap [] : String | provenance | | | Test.java:1167:42:1167:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:1167:42:1167:57 | (...)... : String | Test.java:1167:19:1167:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:1167:42:1167:57 | (...)... : String | Test.java:1167:19:1167:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:1167:50:1167:57 | source(...) : Object | Test.java:1167:42:1167:57 | (...)... : String | provenance | | | Test.java:1168:10:1168:43 | unmodifiableSortedMap(...) : SortedMap [] : String | Test.java:1169:21:1169:23 | out : SortedMap [] : String | provenance | | -| Test.java:1168:41:1168:42 | in : TreeMap [] : String | Test.java:1168:10:1168:43 | unmodifiableSortedMap(...) : SortedMap [] : String | provenance | MaD:734 | +| Test.java:1168:41:1168:42 | in : TreeMap [] : String | Test.java:1168:10:1168:43 | unmodifiableSortedMap(...) : SortedMap [] : String | provenance | MaD:738 | | Test.java:1169:21:1169:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | provenance | | -| Test.java:1169:21:1169:23 | out : SortedMap [] : String | Test.java:1169:9:1169:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1169:21:1169:23 | out : SortedMap [] : String | Test.java:1169:9:1169:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1174:20:1174:61 | newArrayStackWithElement(...) : ArrayStack [] : String | Test.java:1175:10:1175:11 | in : ArrayStack [] : String | provenance | | | Test.java:1174:45:1174:60 | (...)... : String | Test.java:252:45:252:53 | element : String | provenance | | -| Test.java:1174:45:1174:60 | (...)... : String | Test.java:1174:20:1174:61 | newArrayStackWithElement(...) : ArrayStack [] : String | provenance | MaD:468 | +| Test.java:1174:45:1174:60 | (...)... : String | Test.java:1174:20:1174:61 | newArrayStackWithElement(...) : ArrayStack [] : String | provenance | MaD:472 | | Test.java:1174:53:1174:60 | source(...) : Object | Test.java:1174:45:1174:60 | (...)... : String | provenance | | -| Test.java:1175:10:1175:11 | in : ArrayStack [] : String | Test.java:1175:10:1175:19 | peek(...) : String | provenance | MaD:466 | +| Test.java:1175:10:1175:11 | in : ArrayStack [] : String | Test.java:1175:10:1175:19 | peek(...) : String | provenance | MaD:470 | | Test.java:1175:10:1175:19 | peek(...) : String | Test.java:1176:9:1176:11 | out | provenance | | | Test.java:1181:20:1181:61 | newArrayStackWithElement(...) : ArrayStack [] : String | Test.java:1182:10:1182:11 | in : ArrayStack [] : String | provenance | | | Test.java:1181:45:1181:60 | (...)... : String | Test.java:252:45:252:53 | element : String | provenance | | -| Test.java:1181:45:1181:60 | (...)... : String | Test.java:1181:20:1181:61 | newArrayStackWithElement(...) : ArrayStack [] : String | provenance | MaD:468 | +| Test.java:1181:45:1181:60 | (...)... : String | Test.java:1181:20:1181:61 | newArrayStackWithElement(...) : ArrayStack [] : String | provenance | MaD:472 | | Test.java:1181:53:1181:60 | source(...) : Object | Test.java:1181:45:1181:60 | (...)... : String | provenance | | -| Test.java:1182:10:1182:11 | in : ArrayStack [] : String | Test.java:1182:10:1182:18 | peek(...) : String | provenance | MaD:466 | +| Test.java:1182:10:1182:11 | in : ArrayStack [] : String | Test.java:1182:10:1182:18 | peek(...) : String | provenance | MaD:470 | | Test.java:1182:10:1182:18 | peek(...) : String | Test.java:1183:9:1183:11 | out | provenance | | | Test.java:1188:20:1188:61 | newArrayStackWithElement(...) : ArrayStack [] : String | Test.java:1189:10:1189:11 | in : ArrayStack [] : String | provenance | | | Test.java:1188:45:1188:60 | (...)... : String | Test.java:252:45:252:53 | element : String | provenance | | -| Test.java:1188:45:1188:60 | (...)... : String | Test.java:1188:20:1188:61 | newArrayStackWithElement(...) : ArrayStack [] : String | provenance | MaD:468 | +| Test.java:1188:45:1188:60 | (...)... : String | Test.java:1188:20:1188:61 | newArrayStackWithElement(...) : ArrayStack [] : String | provenance | MaD:472 | | Test.java:1188:53:1188:60 | source(...) : Object | Test.java:1188:45:1188:60 | (...)... : String | provenance | | -| Test.java:1189:10:1189:11 | in : ArrayStack [] : String | Test.java:1189:10:1189:17 | pop(...) : String | provenance | MaD:467 | +| Test.java:1189:10:1189:11 | in : ArrayStack [] : String | Test.java:1189:10:1189:17 | pop(...) : String | provenance | MaD:471 | | Test.java:1189:10:1189:17 | pop(...) : String | Test.java:1190:9:1190:11 | out | provenance | | | Test.java:1195:16:1195:23 | source(...) : Object | Test.java:1196:13:1196:14 | in : Object | provenance | | | Test.java:1196:4:1196:6 | out [post update] : ArrayStack [] : Object | Test.java:1197:20:1197:22 | out : ArrayStack [] : Object | provenance | | -| Test.java:1196:13:1196:14 | in : Object | Test.java:1196:4:1196:6 | out [post update] : ArrayStack [] : Object | provenance | MaD:468 | +| Test.java:1196:13:1196:14 | in : Object | Test.java:1196:4:1196:6 | out [post update] : ArrayStack [] : Object | provenance | MaD:472 | | Test.java:1197:20:1197:22 | out : ArrayStack [] : Object | Test.java:230:19:230:32 | it : ArrayStack [] : Object | provenance | | | Test.java:1197:20:1197:22 | out : ArrayStack [] : Object | Test.java:1197:9:1197:23 | getElement(...) | provenance | MaD:3 | | Test.java:1202:16:1202:23 | source(...) : Object | Test.java:1204:24:1204:25 | in : Object | provenance | | | Test.java:1204:10:1204:26 | push(...) : Object | Test.java:1205:9:1205:11 | out | provenance | | -| Test.java:1204:24:1204:25 | in : Object | Test.java:1204:10:1204:26 | push(...) : Object | provenance | MaD:469 | +| Test.java:1204:24:1204:25 | in : Object | Test.java:1204:10:1204:26 | push(...) : Object | provenance | MaD:473 | | Test.java:1210:16:1210:23 | source(...) : Object | Test.java:1211:12:1211:13 | in : Object | provenance | | | Test.java:1211:4:1211:6 | out [post update] : Bag [] : Object | Test.java:1212:20:1212:22 | out : Bag [] : Object | provenance | | -| Test.java:1211:12:1211:13 | in : Object | Test.java:1211:4:1211:6 | out [post update] : Bag [] : Object | provenance | MaD:470 | +| Test.java:1211:12:1211:13 | in : Object | Test.java:1211:4:1211:6 | out [post update] : Bag [] : Object | provenance | MaD:474 | | Test.java:1212:20:1212:22 | out : Bag [] : Object | Test.java:230:19:230:32 | it : Bag [] : Object | provenance | | | Test.java:1212:20:1212:22 | out : Bag [] : Object | Test.java:1212:9:1212:23 | getElement(...) | provenance | MaD:3 | | Test.java:1217:16:1217:23 | source(...) : Object | Test.java:1218:12:1218:13 | in : Object | provenance | | | Test.java:1218:4:1218:6 | out [post update] : Bag [] : Object | Test.java:1219:20:1219:22 | out : Bag [] : Object | provenance | | -| Test.java:1218:12:1218:13 | in : Object | Test.java:1218:4:1218:6 | out [post update] : Bag [] : Object | provenance | MaD:4 | -| Test.java:1218:12:1218:13 | in : Object | Test.java:1218:4:1218:6 | out [post update] : Bag [] : Object | provenance | MaD:470 | +| Test.java:1218:12:1218:13 | in : Object | Test.java:1218:4:1218:6 | out [post update] : Bag [] : Object | provenance | MaD:474 | | Test.java:1219:20:1219:22 | out : Bag [] : Object | Test.java:230:19:230:32 | it : Bag [] : Object | provenance | | | Test.java:1219:20:1219:22 | out : Bag [] : Object | Test.java:1219:9:1219:23 | getElement(...) | provenance | MaD:3 | | Test.java:1224:13:1224:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:1225:10:1225:11 | in : TreeBag [] : String | provenance | | | Test.java:1224:35:1224:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | | Test.java:1224:35:1224:50 | (...)... : String | Test.java:1224:13:1224:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:1224:35:1224:50 | (...)... : String | Test.java:1224:13:1224:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | +| Test.java:1224:35:1224:50 | (...)... : String | Test.java:1224:13:1224:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | | Test.java:1224:43:1224:50 | source(...) : Object | Test.java:1224:35:1224:50 | (...)... : String | provenance | | -| Test.java:1225:10:1225:11 | in : TreeBag [] : String | Test.java:1225:10:1225:23 | uniqueSet(...) : Set [] : String | provenance | MaD:471 | +| Test.java:1225:10:1225:11 | in : TreeBag [] : String | Test.java:1225:10:1225:23 | uniqueSet(...) : Set [] : String | provenance | MaD:475 | | Test.java:1225:10:1225:23 | uniqueSet(...) : Set [] : String | Test.java:1226:20:1226:22 | out : Set [] : String | provenance | | | Test.java:1226:20:1226:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | | Test.java:1226:20:1226:22 | out : Set [] : String | Test.java:1226:9:1226:23 | getElement(...) | provenance | MaD:3 | | Test.java:1231:13:1231:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:1232:33:1232:34 | in : TreeBag [] : String | provenance | | | Test.java:1231:35:1231:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | | Test.java:1231:35:1231:50 | (...)... : String | Test.java:1231:13:1231:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:1231:35:1231:50 | (...)... : String | Test.java:1231:13:1231:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | +| Test.java:1231:35:1231:50 | (...)... : String | Test.java:1231:13:1231:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | | Test.java:1231:43:1231:50 | source(...) : Object | Test.java:1231:35:1231:50 | (...)... : String | provenance | | | Test.java:1232:10:1232:35 | collectionBag(...) : Bag [] : String | Test.java:1233:20:1233:22 | out : Bag [] : String | provenance | | -| Test.java:1232:33:1232:34 | in : TreeBag [] : String | Test.java:1232:10:1232:35 | collectionBag(...) : Bag [] : String | provenance | MaD:472 | +| Test.java:1232:33:1232:34 | in : TreeBag [] : String | Test.java:1232:10:1232:35 | collectionBag(...) : Bag [] : String | provenance | MaD:476 | | Test.java:1233:20:1233:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | | Test.java:1233:20:1233:22 | out : Bag [] : String | Test.java:1233:9:1233:23 | getElement(...) | provenance | MaD:3 | | Test.java:1238:13:1238:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:1239:33:1239:34 | in : TreeBag [] : String | provenance | | | Test.java:1238:35:1238:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | | Test.java:1238:35:1238:50 | (...)... : String | Test.java:1238:13:1238:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:1238:35:1238:50 | (...)... : String | Test.java:1238:13:1238:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | +| Test.java:1238:35:1238:50 | (...)... : String | Test.java:1238:13:1238:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | | Test.java:1238:43:1238:50 | source(...) : Object | Test.java:1238:35:1238:50 | (...)... : String | provenance | | | Test.java:1239:10:1239:41 | predicatedBag(...) : Bag [] : String | Test.java:1240:20:1240:22 | out : Bag [] : String | provenance | | -| Test.java:1239:33:1239:34 | in : TreeBag [] : String | Test.java:1239:10:1239:41 | predicatedBag(...) : Bag [] : String | provenance | MaD:473 | +| Test.java:1239:33:1239:34 | in : TreeBag [] : String | Test.java:1239:10:1239:41 | predicatedBag(...) : Bag [] : String | provenance | MaD:477 | | Test.java:1240:20:1240:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | | Test.java:1240:20:1240:22 | out : Bag [] : String | Test.java:1240:9:1240:23 | getElement(...) | provenance | MaD:3 | | Test.java:1245:19:1245:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:1246:39:1246:40 | in : TreeBag [] : String | provenance | | | Test.java:1245:41:1245:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | | Test.java:1245:41:1245:56 | (...)... : String | Test.java:1245:19:1245:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:1245:41:1245:56 | (...)... : String | Test.java:1245:19:1245:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | +| Test.java:1245:41:1245:56 | (...)... : String | Test.java:1245:19:1245:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | | Test.java:1245:49:1245:56 | source(...) : Object | Test.java:1245:41:1245:56 | (...)... : String | provenance | | | Test.java:1246:10:1246:47 | predicatedSortedBag(...) : SortedBag [] : String | Test.java:1247:20:1247:22 | out : SortedBag [] : String | provenance | | -| Test.java:1246:39:1246:40 | in : TreeBag [] : String | Test.java:1246:10:1246:47 | predicatedSortedBag(...) : SortedBag [] : String | provenance | MaD:474 | +| Test.java:1246:39:1246:40 | in : TreeBag [] : String | Test.java:1246:10:1246:47 | predicatedSortedBag(...) : SortedBag [] : String | provenance | MaD:478 | | Test.java:1247:20:1247:22 | out : SortedBag [] : String | Test.java:230:19:230:32 | it : SortedBag [] : String | provenance | | | Test.java:1247:20:1247:22 | out : SortedBag [] : String | Test.java:1247:9:1247:23 | getElement(...) | provenance | MaD:3 | | Test.java:1252:13:1252:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:1253:35:1253:36 | in : TreeBag [] : String | provenance | | | Test.java:1252:35:1252:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | | Test.java:1252:35:1252:50 | (...)... : String | Test.java:1252:13:1252:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:1252:35:1252:50 | (...)... : String | Test.java:1252:13:1252:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | +| Test.java:1252:35:1252:50 | (...)... : String | Test.java:1252:13:1252:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | | Test.java:1252:43:1252:50 | source(...) : Object | Test.java:1252:35:1252:50 | (...)... : String | provenance | | | Test.java:1253:10:1253:37 | synchronizedBag(...) : Bag [] : String | Test.java:1254:20:1254:22 | out : Bag [] : String | provenance | | -| Test.java:1253:35:1253:36 | in : TreeBag [] : String | Test.java:1253:10:1253:37 | synchronizedBag(...) : Bag [] : String | provenance | MaD:475 | +| Test.java:1253:35:1253:36 | in : TreeBag [] : String | Test.java:1253:10:1253:37 | synchronizedBag(...) : Bag [] : String | provenance | MaD:479 | | Test.java:1254:20:1254:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | | Test.java:1254:20:1254:22 | out : Bag [] : String | Test.java:1254:9:1254:23 | getElement(...) | provenance | MaD:3 | | Test.java:1259:19:1259:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:1260:41:1260:42 | in : TreeBag [] : String | provenance | | | Test.java:1259:41:1259:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | | Test.java:1259:41:1259:56 | (...)... : String | Test.java:1259:19:1259:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:1259:41:1259:56 | (...)... : String | Test.java:1259:19:1259:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | +| Test.java:1259:41:1259:56 | (...)... : String | Test.java:1259:19:1259:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | | Test.java:1259:49:1259:56 | source(...) : Object | Test.java:1259:41:1259:56 | (...)... : String | provenance | | | Test.java:1260:10:1260:43 | synchronizedSortedBag(...) : SortedBag [] : String | Test.java:1261:20:1261:22 | out : SortedBag [] : String | provenance | | -| Test.java:1260:41:1260:42 | in : TreeBag [] : String | Test.java:1260:10:1260:43 | synchronizedSortedBag(...) : SortedBag [] : String | provenance | MaD:476 | +| Test.java:1260:41:1260:42 | in : TreeBag [] : String | Test.java:1260:10:1260:43 | synchronizedSortedBag(...) : SortedBag [] : String | provenance | MaD:480 | | Test.java:1261:20:1261:22 | out : SortedBag [] : String | Test.java:230:19:230:32 | it : SortedBag [] : String | provenance | | | Test.java:1261:20:1261:22 | out : SortedBag [] : String | Test.java:1261:9:1261:23 | getElement(...) | provenance | MaD:3 | | Test.java:1266:13:1266:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:1267:35:1267:36 | in : TreeBag [] : String | provenance | | | Test.java:1266:35:1266:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | | Test.java:1266:35:1266:50 | (...)... : String | Test.java:1266:13:1266:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:1266:35:1266:50 | (...)... : String | Test.java:1266:13:1266:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | +| Test.java:1266:35:1266:50 | (...)... : String | Test.java:1266:13:1266:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | | Test.java:1266:43:1266:50 | source(...) : Object | Test.java:1266:35:1266:50 | (...)... : String | provenance | | | Test.java:1267:10:1267:43 | transformingBag(...) : Bag [] : String | Test.java:1268:20:1268:22 | out : Bag [] : String | provenance | | -| Test.java:1267:35:1267:36 | in : TreeBag [] : String | Test.java:1267:10:1267:43 | transformingBag(...) : Bag [] : String | provenance | MaD:477 | +| Test.java:1267:35:1267:36 | in : TreeBag [] : String | Test.java:1267:10:1267:43 | transformingBag(...) : Bag [] : String | provenance | MaD:481 | | Test.java:1268:20:1268:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | | Test.java:1268:20:1268:22 | out : Bag [] : String | Test.java:1268:9:1268:23 | getElement(...) | provenance | MaD:3 | | Test.java:1273:19:1273:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:1274:41:1274:42 | in : TreeBag [] : String | provenance | | | Test.java:1273:41:1273:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | | Test.java:1273:41:1273:56 | (...)... : String | Test.java:1273:19:1273:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:1273:41:1273:56 | (...)... : String | Test.java:1273:19:1273:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | +| Test.java:1273:41:1273:56 | (...)... : String | Test.java:1273:19:1273:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | | Test.java:1273:49:1273:56 | source(...) : Object | Test.java:1273:41:1273:56 | (...)... : String | provenance | | | Test.java:1274:10:1274:49 | transformingSortedBag(...) : SortedBag [] : String | Test.java:1275:20:1275:22 | out : SortedBag [] : String | provenance | | -| Test.java:1274:41:1274:42 | in : TreeBag [] : String | Test.java:1274:10:1274:49 | transformingSortedBag(...) : SortedBag [] : String | provenance | MaD:478 | +| Test.java:1274:41:1274:42 | in : TreeBag [] : String | Test.java:1274:10:1274:49 | transformingSortedBag(...) : SortedBag [] : String | provenance | MaD:482 | | Test.java:1275:20:1275:22 | out : SortedBag [] : String | Test.java:230:19:230:32 | it : SortedBag [] : String | provenance | | | Test.java:1275:20:1275:22 | out : SortedBag [] : String | Test.java:1275:9:1275:23 | getElement(...) | provenance | MaD:3 | | Test.java:1280:13:1280:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:1281:35:1281:36 | in : TreeBag [] : String | provenance | | | Test.java:1280:35:1280:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | | Test.java:1280:35:1280:50 | (...)... : String | Test.java:1280:13:1280:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:1280:35:1280:50 | (...)... : String | Test.java:1280:13:1280:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | +| Test.java:1280:35:1280:50 | (...)... : String | Test.java:1280:13:1280:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | | Test.java:1280:43:1280:50 | source(...) : Object | Test.java:1280:35:1280:50 | (...)... : String | provenance | | | Test.java:1281:10:1281:37 | unmodifiableBag(...) : Bag [] : String | Test.java:1282:20:1282:22 | out : Bag [] : String | provenance | | -| Test.java:1281:35:1281:36 | in : TreeBag [] : String | Test.java:1281:10:1281:37 | unmodifiableBag(...) : Bag [] : String | provenance | MaD:479 | +| Test.java:1281:35:1281:36 | in : TreeBag [] : String | Test.java:1281:10:1281:37 | unmodifiableBag(...) : Bag [] : String | provenance | MaD:483 | | Test.java:1282:20:1282:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | | Test.java:1282:20:1282:22 | out : Bag [] : String | Test.java:1282:9:1282:23 | getElement(...) | provenance | MaD:3 | | Test.java:1287:19:1287:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:1288:41:1288:42 | in : TreeBag [] : String | provenance | | | Test.java:1287:41:1287:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | | Test.java:1287:41:1287:56 | (...)... : String | Test.java:1287:19:1287:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:1287:41:1287:56 | (...)... : String | Test.java:1287:19:1287:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | +| Test.java:1287:41:1287:56 | (...)... : String | Test.java:1287:19:1287:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | | Test.java:1287:49:1287:56 | source(...) : Object | Test.java:1287:41:1287:56 | (...)... : String | provenance | | | Test.java:1288:10:1288:43 | unmodifiableSortedBag(...) : SortedBag [] : String | Test.java:1289:20:1289:22 | out : SortedBag [] : String | provenance | | -| Test.java:1288:41:1288:42 | in : TreeBag [] : String | Test.java:1288:10:1288:43 | unmodifiableSortedBag(...) : SortedBag [] : String | provenance | MaD:480 | +| Test.java:1288:41:1288:42 | in : TreeBag [] : String | Test.java:1288:10:1288:43 | unmodifiableSortedBag(...) : SortedBag [] : String | provenance | MaD:484 | | Test.java:1289:20:1289:22 | out : SortedBag [] : String | Test.java:230:19:230:32 | it : SortedBag [] : String | provenance | | | Test.java:1289:20:1289:22 | out : SortedBag [] : String | Test.java:1289:9:1289:23 | getElement(...) | provenance | MaD:3 | | Test.java:1294:17:1294:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | Test.java:1295:10:1295:11 | in : TreeBidiMap [] : String | provenance | | | Test.java:1294:42:1294:57 | (...)... : String | Test.java:287:75:287:79 | key : String | provenance | | -| Test.java:1294:42:1294:57 | (...)... : String | Test.java:1294:17:1294:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:19 | -| Test.java:1294:42:1294:57 | (...)... : String | Test.java:1294:17:1294:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:779 | +| Test.java:1294:42:1294:57 | (...)... : String | Test.java:1294:17:1294:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:20 | +| Test.java:1294:42:1294:57 | (...)... : String | Test.java:1294:17:1294:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:783 | | Test.java:1294:50:1294:57 | source(...) : Object | Test.java:1294:42:1294:57 | (...)... : String | provenance | | -| Test.java:1295:10:1295:11 | in : TreeBidiMap [] : String | Test.java:1295:10:1295:24 | getKey(...) : String | provenance | MaD:481 | +| Test.java:1295:10:1295:11 | in : TreeBidiMap [] : String | Test.java:1295:10:1295:24 | getKey(...) : String | provenance | MaD:485 | | Test.java:1295:10:1295:24 | getKey(...) : String | Test.java:1296:9:1296:11 | out | provenance | | | Test.java:1301:17:1301:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | Test.java:1302:10:1302:11 | in : TreeBidiMap [] : String | provenance | | | Test.java:1301:42:1301:57 | (...)... : String | Test.java:287:75:287:79 | key : String | provenance | | -| Test.java:1301:42:1301:57 | (...)... : String | Test.java:1301:17:1301:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:19 | -| Test.java:1301:42:1301:57 | (...)... : String | Test.java:1301:17:1301:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:779 | +| Test.java:1301:42:1301:57 | (...)... : String | Test.java:1301:17:1301:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:20 | +| Test.java:1301:42:1301:57 | (...)... : String | Test.java:1301:17:1301:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:783 | | Test.java:1301:50:1301:57 | source(...) : Object | Test.java:1301:42:1301:57 | (...)... : String | provenance | | -| Test.java:1302:10:1302:11 | in : TreeBidiMap [] : String | Test.java:1302:10:1302:28 | inverseBidiMap(...) : BidiMap [] : String | provenance | MaD:482 | +| Test.java:1302:10:1302:11 | in : TreeBidiMap [] : String | Test.java:1302:10:1302:28 | inverseBidiMap(...) : BidiMap [] : String | provenance | MaD:486 | | Test.java:1302:10:1302:28 | inverseBidiMap(...) : BidiMap [] : String | Test.java:1303:21:1303:23 | out : BidiMap [] : String | provenance | | | Test.java:1303:21:1303:23 | out : BidiMap [] : String | Test.java:232:20:232:31 | map : BidiMap [] : String | provenance | | -| Test.java:1303:21:1303:23 | out : BidiMap [] : String | Test.java:1303:9:1303:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:1303:21:1303:23 | out : BidiMap [] : String | Test.java:1303:9:1303:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:1308:17:1308:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | Test.java:1309:10:1309:11 | in : TreeBidiMap [] : String | provenance | | | Test.java:1308:44:1308:59 | (...)... : String | Test.java:306:77:306:83 | value : String | provenance | | -| Test.java:1308:44:1308:59 | (...)... : String | Test.java:1308:17:1308:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:20 | -| Test.java:1308:44:1308:59 | (...)... : String | Test.java:1308:17:1308:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:780 | +| Test.java:1308:44:1308:59 | (...)... : String | Test.java:1308:17:1308:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:21 | +| Test.java:1308:44:1308:59 | (...)... : String | Test.java:1308:17:1308:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:784 | | Test.java:1308:52:1308:59 | source(...) : Object | Test.java:1308:44:1308:59 | (...)... : String | provenance | | -| Test.java:1309:10:1309:11 | in : TreeBidiMap [] : String | Test.java:1309:10:1309:28 | inverseBidiMap(...) : BidiMap [] : String | provenance | MaD:483 | +| Test.java:1309:10:1309:11 | in : TreeBidiMap [] : String | Test.java:1309:10:1309:28 | inverseBidiMap(...) : BidiMap [] : String | provenance | MaD:487 | | Test.java:1309:10:1309:28 | inverseBidiMap(...) : BidiMap [] : String | Test.java:1310:19:1310:21 | out : BidiMap [] : String | provenance | | | Test.java:1310:19:1310:21 | out : BidiMap [] : String | Test.java:228:18:228:29 | map : BidiMap [] : String | provenance | | -| Test.java:1310:19:1310:21 | out : BidiMap [] : String | Test.java:1310:9:1310:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1310:19:1310:21 | out : BidiMap [] : String | Test.java:1310:9:1310:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1315:17:1315:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | Test.java:1316:10:1316:11 | in : TreeBidiMap [] : String | provenance | | | Test.java:1315:42:1315:57 | (...)... : String | Test.java:287:75:287:79 | key : String | provenance | | -| Test.java:1315:42:1315:57 | (...)... : String | Test.java:1315:17:1315:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:19 | -| Test.java:1315:42:1315:57 | (...)... : String | Test.java:1315:17:1315:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:779 | +| Test.java:1315:42:1315:57 | (...)... : String | Test.java:1315:17:1315:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:20 | +| Test.java:1315:42:1315:57 | (...)... : String | Test.java:1315:17:1315:58 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:783 | | Test.java:1315:50:1315:57 | source(...) : Object | Test.java:1315:42:1315:57 | (...)... : String | provenance | | -| Test.java:1316:10:1316:11 | in : TreeBidiMap [] : String | Test.java:1316:10:1316:29 | removeValue(...) : String | provenance | MaD:484 | +| Test.java:1316:10:1316:11 | in : TreeBidiMap [] : String | Test.java:1316:10:1316:29 | removeValue(...) : String | provenance | MaD:488 | | Test.java:1316:10:1316:29 | removeValue(...) : String | Test.java:1317:9:1317:11 | out | provenance | | | Test.java:1322:21:1322:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:1323:32:1323:33 | in : IteratorEnumeration [] : String | provenance | | | Test.java:1322:47:1322:62 | (...)... : String | Test.java:256:47:256:55 | element : String | provenance | | | Test.java:1322:47:1322:62 | (...)... : String | Test.java:1322:21:1322:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | | Test.java:1322:55:1322:62 | source(...) : Object | Test.java:1322:47:1322:62 | (...)... : String | provenance | | | Test.java:1323:27:1323:29 | out [post update] : Collection [] : String | Test.java:1324:20:1324:22 | out : Collection [] : String | provenance | | -| Test.java:1323:32:1323:33 | in : IteratorEnumeration [] : String | Test.java:1323:27:1323:29 | out [post update] : Collection [] : String | provenance | MaD:485 | +| Test.java:1323:32:1323:33 | in : IteratorEnumeration [] : String | Test.java:1323:27:1323:29 | out [post update] : Collection [] : String | provenance | MaD:489 | | Test.java:1324:20:1324:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1324:20:1324:22 | out : Collection [] : String | Test.java:1324:9:1324:23 | getElement(...) | provenance | MaD:3 | | Test.java:1329:18:1329:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1330:32:1330:33 | in : Vector [] : String | provenance | | @@ -2932,7 +2933,7 @@ edges | Test.java:1329:39:1329:54 | (...)... : String | Test.java:1329:18:1329:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1329:47:1329:54 | source(...) : Object | Test.java:1329:39:1329:54 | (...)... : String | provenance | | | Test.java:1330:27:1330:29 | out [post update] : Collection [] : String | Test.java:1331:20:1331:22 | out : Collection [] : String | provenance | | -| Test.java:1330:32:1330:33 | in : Vector [] : String | Test.java:1330:27:1330:29 | out [post update] : Collection [] : String | provenance | MaD:486 | +| Test.java:1330:32:1330:33 | in : Vector [] : String | Test.java:1330:27:1330:29 | out [post update] : Collection [] : String | provenance | MaD:490 | | Test.java:1331:20:1331:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1331:20:1331:22 | out : Collection [] : String | Test.java:1331:9:1331:23 | getElement(...) | provenance | MaD:3 | | Test.java:1336:18:1336:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:1337:32:1337:33 | in : ListIterator [] : String | provenance | | @@ -2940,7 +2941,7 @@ edges | Test.java:1336:45:1336:60 | (...)... : String | Test.java:1336:18:1336:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:1336:53:1336:60 | source(...) : Object | Test.java:1336:45:1336:60 | (...)... : String | provenance | | | Test.java:1337:27:1337:29 | out [post update] : Collection [] : String | Test.java:1338:20:1338:22 | out : Collection [] : String | provenance | | -| Test.java:1337:32:1337:33 | in : ListIterator [] : String | Test.java:1337:27:1337:29 | out [post update] : Collection [] : String | provenance | MaD:487 | +| Test.java:1337:32:1337:33 | in : ListIterator [] : String | Test.java:1337:27:1337:29 | out [post update] : Collection [] : String | provenance | MaD:491 | | Test.java:1338:20:1338:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1338:20:1338:22 | out : Collection [] : String | Test.java:1338:9:1338:23 | getElement(...) | provenance | MaD:3 | | Test.java:1343:18:1343:54 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:1344:32:1344:33 | in : Object[] [[]] : String | provenance | | @@ -2948,12 +2949,12 @@ edges | Test.java:1343:38:1343:53 | (...)... : String | Test.java:1343:18:1343:54 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:1343:46:1343:53 | source(...) : Object | Test.java:1343:38:1343:53 | (...)... : String | provenance | | | Test.java:1344:27:1344:29 | out [post update] : Collection [] : String | Test.java:1345:20:1345:22 | out : Collection [] : String | provenance | | -| Test.java:1344:32:1344:33 | in : Object[] [[]] : String | Test.java:1344:27:1344:29 | out [post update] : Collection [] : String | provenance | MaD:488 | +| Test.java:1344:32:1344:33 | in : Object[] [[]] : String | Test.java:1344:27:1344:29 | out [post update] : Collection [] : String | provenance | MaD:492 | | Test.java:1345:20:1345:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1345:20:1345:22 | out : Collection [] : String | Test.java:1345:9:1345:23 | getElement(...) | provenance | MaD:3 | | Test.java:1350:16:1350:23 | source(...) : Object | Test.java:1351:39:1351:40 | in : Object | provenance | | | Test.java:1351:34:1351:36 | out [post update] : Collection [] : Object | Test.java:1352:20:1352:22 | out : Collection [] : Object | provenance | | -| Test.java:1351:39:1351:40 | in : Object | Test.java:1351:34:1351:36 | out [post update] : Collection [] : Object | provenance | MaD:489 | +| Test.java:1351:39:1351:40 | in : Object | Test.java:1351:34:1351:36 | out [post update] : Collection [] : Object | provenance | MaD:493 | | Test.java:1352:20:1352:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | | Test.java:1352:20:1352:22 | out : Collection [] : Object | Test.java:1352:9:1352:23 | getElement(...) | provenance | MaD:3 | | Test.java:1357:18:1357:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1358:34:1358:35 | in : Vector [] : String | provenance | | @@ -2961,7 +2962,7 @@ edges | Test.java:1357:39:1357:54 | (...)... : String | Test.java:1357:18:1357:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1357:47:1357:54 | source(...) : Object | Test.java:1357:39:1357:54 | (...)... : String | provenance | | | Test.java:1358:10:1358:55 | collate(...) : List [] : String | Test.java:1359:20:1359:22 | out : List [] : String | provenance | | -| Test.java:1358:34:1358:35 | in : Vector [] : String | Test.java:1358:10:1358:55 | collate(...) : List [] : String | provenance | MaD:490 | +| Test.java:1358:34:1358:35 | in : Vector [] : String | Test.java:1358:10:1358:55 | collate(...) : List [] : String | provenance | MaD:494 | | Test.java:1359:20:1359:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:1359:20:1359:22 | out : List [] : String | Test.java:1359:9:1359:23 | getElement(...) | provenance | MaD:3 | | Test.java:1364:18:1364:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1365:34:1365:35 | in : Vector [] : String | provenance | | @@ -2969,7 +2970,7 @@ edges | Test.java:1364:39:1364:54 | (...)... : String | Test.java:1364:18:1364:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1364:47:1364:54 | source(...) : Object | Test.java:1364:39:1364:54 | (...)... : String | provenance | | | Test.java:1365:10:1365:42 | collate(...) : List [] : String | Test.java:1366:20:1366:22 | out : List [] : String | provenance | | -| Test.java:1365:34:1365:35 | in : Vector [] : String | Test.java:1365:10:1365:42 | collate(...) : List [] : String | provenance | MaD:490 | +| Test.java:1365:34:1365:35 | in : Vector [] : String | Test.java:1365:10:1365:42 | collate(...) : List [] : String | provenance | MaD:494 | | Test.java:1366:20:1366:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:1366:20:1366:22 | out : List [] : String | Test.java:1366:9:1366:23 | getElement(...) | provenance | MaD:3 | | Test.java:1371:18:1371:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1372:34:1372:35 | in : Vector [] : String | provenance | | @@ -2977,7 +2978,7 @@ edges | Test.java:1371:39:1371:54 | (...)... : String | Test.java:1371:18:1371:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1371:47:1371:54 | source(...) : Object | Test.java:1371:39:1371:54 | (...)... : String | provenance | | | Test.java:1372:10:1372:59 | collate(...) : List [] : String | Test.java:1373:20:1373:22 | out : List [] : String | provenance | | -| Test.java:1372:34:1372:35 | in : Vector [] : String | Test.java:1372:10:1372:59 | collate(...) : List [] : String | provenance | MaD:490 | +| Test.java:1372:34:1372:35 | in : Vector [] : String | Test.java:1372:10:1372:59 | collate(...) : List [] : String | provenance | MaD:494 | | Test.java:1373:20:1373:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:1373:20:1373:22 | out : List [] : String | Test.java:1373:9:1373:23 | getElement(...) | provenance | MaD:3 | | Test.java:1378:18:1378:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1379:34:1379:35 | in : Vector [] : String | provenance | | @@ -2985,7 +2986,7 @@ edges | Test.java:1378:39:1378:54 | (...)... : String | Test.java:1378:18:1378:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1378:47:1378:54 | source(...) : Object | Test.java:1378:39:1378:54 | (...)... : String | provenance | | | Test.java:1379:10:1379:70 | collate(...) : List [] : String | Test.java:1380:20:1380:22 | out : List [] : String | provenance | | -| Test.java:1379:34:1379:35 | in : Vector [] : String | Test.java:1379:10:1379:70 | collate(...) : List [] : String | provenance | MaD:490 | +| Test.java:1379:34:1379:35 | in : Vector [] : String | Test.java:1379:10:1379:70 | collate(...) : List [] : String | provenance | MaD:494 | | Test.java:1380:20:1380:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:1380:20:1380:22 | out : List [] : String | Test.java:1380:9:1380:23 | getElement(...) | provenance | MaD:3 | | Test.java:1385:18:1385:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1386:40:1386:41 | in : Vector [] : String | provenance | | @@ -2993,7 +2994,7 @@ edges | Test.java:1385:39:1385:54 | (...)... : String | Test.java:1385:18:1385:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1385:47:1385:54 | source(...) : Object | Test.java:1385:39:1385:54 | (...)... : String | provenance | | | Test.java:1386:10:1386:55 | collate(...) : List [] : String | Test.java:1387:20:1387:22 | out : List [] : String | provenance | | -| Test.java:1386:40:1386:41 | in : Vector [] : String | Test.java:1386:10:1386:55 | collate(...) : List [] : String | provenance | MaD:491 | +| Test.java:1386:40:1386:41 | in : Vector [] : String | Test.java:1386:10:1386:55 | collate(...) : List [] : String | provenance | MaD:495 | | Test.java:1387:20:1387:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:1387:20:1387:22 | out : List [] : String | Test.java:1387:9:1387:23 | getElement(...) | provenance | MaD:3 | | Test.java:1392:18:1392:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1393:40:1393:41 | in : Vector [] : String | provenance | | @@ -3001,7 +3002,7 @@ edges | Test.java:1392:39:1392:54 | (...)... : String | Test.java:1392:18:1392:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1392:47:1392:54 | source(...) : Object | Test.java:1392:39:1392:54 | (...)... : String | provenance | | | Test.java:1393:10:1393:42 | collate(...) : List [] : String | Test.java:1394:20:1394:22 | out : List [] : String | provenance | | -| Test.java:1393:40:1393:41 | in : Vector [] : String | Test.java:1393:10:1393:42 | collate(...) : List [] : String | provenance | MaD:491 | +| Test.java:1393:40:1393:41 | in : Vector [] : String | Test.java:1393:10:1393:42 | collate(...) : List [] : String | provenance | MaD:495 | | Test.java:1394:20:1394:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:1394:20:1394:22 | out : List [] : String | Test.java:1394:9:1394:23 | getElement(...) | provenance | MaD:3 | | Test.java:1399:18:1399:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1400:50:1400:51 | in : Vector [] : String | provenance | | @@ -3009,7 +3010,7 @@ edges | Test.java:1399:39:1399:54 | (...)... : String | Test.java:1399:18:1399:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1399:47:1399:54 | source(...) : Object | Test.java:1399:39:1399:54 | (...)... : String | provenance | | | Test.java:1400:10:1400:59 | collate(...) : List [] : String | Test.java:1401:20:1401:22 | out : List [] : String | provenance | | -| Test.java:1400:50:1400:51 | in : Vector [] : String | Test.java:1400:10:1400:59 | collate(...) : List [] : String | provenance | MaD:491 | +| Test.java:1400:50:1400:51 | in : Vector [] : String | Test.java:1400:10:1400:59 | collate(...) : List [] : String | provenance | MaD:495 | | Test.java:1401:20:1401:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:1401:20:1401:22 | out : List [] : String | Test.java:1401:9:1401:23 | getElement(...) | provenance | MaD:3 | | Test.java:1406:18:1406:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1407:50:1407:51 | in : Vector [] : String | provenance | | @@ -3017,7 +3018,7 @@ edges | Test.java:1406:39:1406:54 | (...)... : String | Test.java:1406:18:1406:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1406:47:1406:54 | source(...) : Object | Test.java:1406:39:1406:54 | (...)... : String | provenance | | | Test.java:1407:10:1407:70 | collate(...) : List [] : String | Test.java:1408:20:1408:22 | out : List [] : String | provenance | | -| Test.java:1407:50:1407:51 | in : Vector [] : String | Test.java:1407:10:1407:70 | collate(...) : List [] : String | provenance | MaD:491 | +| Test.java:1407:50:1407:51 | in : Vector [] : String | Test.java:1407:10:1407:70 | collate(...) : List [] : String | provenance | MaD:495 | | Test.java:1408:20:1408:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:1408:20:1408:22 | out : List [] : String | Test.java:1408:9:1408:23 | getElement(...) | provenance | MaD:3 | | Test.java:1413:18:1413:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1414:38:1414:39 | in : Vector [] : String | provenance | | @@ -3025,7 +3026,7 @@ edges | Test.java:1413:39:1413:54 | (...)... : String | Test.java:1413:18:1413:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1413:47:1413:54 | source(...) : Object | Test.java:1413:39:1413:54 | (...)... : String | provenance | | | Test.java:1414:10:1414:46 | disjunction(...) : Collection [] : String | Test.java:1415:20:1415:22 | out : Collection [] : String | provenance | | -| Test.java:1414:38:1414:39 | in : Vector [] : String | Test.java:1414:10:1414:46 | disjunction(...) : Collection [] : String | provenance | MaD:492 | +| Test.java:1414:38:1414:39 | in : Vector [] : String | Test.java:1414:10:1414:46 | disjunction(...) : Collection [] : String | provenance | MaD:496 | | Test.java:1415:20:1415:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1415:20:1415:22 | out : Collection [] : String | Test.java:1415:9:1415:23 | getElement(...) | provenance | MaD:3 | | Test.java:1420:18:1420:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1421:44:1421:45 | in : Vector [] : String | provenance | | @@ -3033,97 +3034,97 @@ edges | Test.java:1420:39:1420:54 | (...)... : String | Test.java:1420:18:1420:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1420:47:1420:54 | source(...) : Object | Test.java:1420:39:1420:54 | (...)... : String | provenance | | | Test.java:1421:10:1421:46 | disjunction(...) : Collection [] : String | Test.java:1422:20:1422:22 | out : Collection [] : String | provenance | | -| Test.java:1421:44:1421:45 | in : Vector [] : String | Test.java:1421:10:1421:46 | disjunction(...) : Collection [] : String | provenance | MaD:493 | +| Test.java:1421:44:1421:45 | in : Vector [] : String | Test.java:1421:10:1421:46 | disjunction(...) : Collection [] : String | provenance | MaD:497 | | Test.java:1422:20:1422:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1422:20:1422:22 | out : Collection [] : String | Test.java:1422:9:1422:23 | getElement(...) | provenance | MaD:3 | | Test.java:1427:20:1427:39 | (...)... : Collection | Test.java:1428:38:1428:39 | in : Collection | provenance | | | Test.java:1427:32:1427:39 | source(...) : Object | Test.java:1427:20:1427:39 | (...)... : Collection | provenance | | | Test.java:1428:10:1428:40 | emptyIfNull(...) : Collection | Test.java:1429:9:1429:11 | out | provenance | | -| Test.java:1428:38:1428:39 | in : Collection | Test.java:1428:10:1428:40 | emptyIfNull(...) : Collection | provenance | MaD:494 | +| Test.java:1428:38:1428:39 | in : Collection | Test.java:1428:10:1428:40 | emptyIfNull(...) : Collection | provenance | MaD:498 | | Test.java:1434:20:1434:57 | newVectorWithElement(...) : Vector [] : String | Test.java:1435:43:1435:44 | in : Vector [] : String | provenance | | | Test.java:1434:41:1434:56 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:1434:41:1434:56 | (...)... : String | Test.java:1434:20:1434:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1434:49:1434:56 | source(...) : Object | Test.java:1434:41:1434:56 | (...)... : String | provenance | | | Test.java:1435:10:1435:45 | extractSingleton(...) : String | Test.java:1436:9:1436:11 | out | provenance | | -| Test.java:1435:43:1435:44 | in : Vector [] : String | Test.java:1435:10:1435:45 | extractSingleton(...) : String | provenance | MaD:495 | +| Test.java:1435:43:1435:44 | in : Vector [] : String | Test.java:1435:10:1435:45 | extractSingleton(...) : String | provenance | MaD:499 | | Test.java:1441:18:1441:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1442:31:1442:32 | in : Vector [] : String | provenance | | | Test.java:1441:39:1441:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:1441:39:1441:54 | (...)... : String | Test.java:1441:18:1441:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1441:47:1441:54 | source(...) : Object | Test.java:1441:39:1441:54 | (...)... : String | provenance | | | Test.java:1442:10:1442:39 | find(...) : String | Test.java:1443:9:1443:11 | out | provenance | | -| Test.java:1442:31:1442:32 | in : Vector [] : String | Test.java:1442:10:1442:39 | find(...) : String | provenance | MaD:496 | +| Test.java:1442:31:1442:32 | in : Vector [] : String | Test.java:1442:10:1442:39 | find(...) : String | provenance | MaD:500 | | Test.java:1448:18:1448:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:1449:30:1449:31 | in : ListIterator [] : String | provenance | | | Test.java:1448:45:1448:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:1448:45:1448:60 | (...)... : String | Test.java:1448:18:1448:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:1448:53:1448:60 | source(...) : Object | Test.java:1448:45:1448:60 | (...)... : String | provenance | | | Test.java:1449:10:1449:35 | get(...) : String | Test.java:1450:9:1450:11 | out | provenance | | -| Test.java:1449:30:1449:31 | in : ListIterator [] : String | Test.java:1449:10:1449:35 | get(...) : String | provenance | MaD:498 | +| Test.java:1449:30:1449:31 | in : ListIterator [] : String | Test.java:1449:10:1449:35 | get(...) : String | provenance | MaD:502 | | Test.java:1455:18:1455:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1456:30:1456:31 | in : Vector [] : String | provenance | | | Test.java:1455:39:1455:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:1455:39:1455:54 | (...)... : String | Test.java:1455:18:1455:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1455:47:1455:54 | source(...) : Object | Test.java:1455:39:1455:54 | (...)... : String | provenance | | | Test.java:1456:10:1456:35 | get(...) : String | Test.java:1457:9:1457:11 | out | provenance | | -| Test.java:1456:30:1456:31 | in : Vector [] : String | Test.java:1456:10:1456:35 | get(...) : String | provenance | MaD:497 | +| Test.java:1456:30:1456:31 | in : Vector [] : String | Test.java:1456:10:1456:35 | get(...) : String | provenance | MaD:501 | | Test.java:1462:13:1462:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:1463:30:1463:31 | in : TreeMap [] : String | provenance | | | Test.java:1462:34:1462:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:1462:34:1462:49 | (...)... : String | Test.java:1462:13:1462:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:1462:34:1462:49 | (...)... : String | Test.java:1462:13:1462:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:1462:42:1462:49 | source(...) : Object | Test.java:1462:34:1462:49 | (...)... : String | provenance | | | Test.java:1463:10:1463:35 | get(...) : Entry [] : String | Test.java:1464:28:1464:30 | out : Entry [] : String | provenance | | -| Test.java:1463:30:1463:31 | in : TreeMap [] : String | Test.java:1463:10:1463:35 | get(...) : Entry [] : String | provenance | MaD:499 | +| Test.java:1463:30:1463:31 | in : TreeMap [] : String | Test.java:1463:10:1463:35 | get(...) : Entry [] : String | provenance | MaD:503 | | Test.java:1464:28:1464:30 | out : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | -| Test.java:1464:28:1464:30 | out : Entry [] : String | Test.java:1464:9:1464:31 | getMapKeyFromEntry(...) | provenance | MaD:9 | +| Test.java:1464:28:1464:30 | out : Entry [] : String | Test.java:1464:9:1464:31 | getMapKeyFromEntry(...) | provenance | MaD:10 | | Test.java:1469:13:1469:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:1470:30:1470:31 | in : TreeMap [] : String | provenance | | | Test.java:1469:36:1469:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:1469:36:1469:51 | (...)... : String | Test.java:1469:13:1469:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:1469:36:1469:51 | (...)... : String | Test.java:1469:13:1469:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:1469:44:1469:51 | source(...) : Object | Test.java:1469:36:1469:51 | (...)... : String | provenance | | | Test.java:1470:10:1470:35 | get(...) : Entry [] : String | Test.java:1471:30:1471:32 | out : Entry [] : String | provenance | | -| Test.java:1470:30:1470:31 | in : TreeMap [] : String | Test.java:1470:10:1470:35 | get(...) : Entry [] : String | provenance | MaD:500 | +| Test.java:1470:30:1470:31 | in : TreeMap [] : String | Test.java:1470:10:1470:35 | get(...) : Entry [] : String | provenance | MaD:504 | | Test.java:1471:30:1471:32 | out : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | -| Test.java:1471:30:1471:32 | out : Entry [] : String | Test.java:1471:9:1471:33 | getMapValueFromEntry(...) | provenance | MaD:10 | +| Test.java:1471:30:1471:32 | out : Entry [] : String | Test.java:1471:9:1471:33 | getMapValueFromEntry(...) | provenance | MaD:11 | | Test.java:1476:16:1476:52 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:1477:30:1477:31 | in : Object[] [[]] : String | provenance | | | Test.java:1476:36:1476:51 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:1476:36:1476:51 | (...)... : String | Test.java:1476:16:1476:52 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:1476:44:1476:51 | source(...) : Object | Test.java:1476:36:1476:51 | (...)... : String | provenance | | | Test.java:1477:10:1477:35 | get(...) : String | Test.java:1478:9:1478:11 | out | provenance | | -| Test.java:1477:30:1477:31 | in : Object[] [[]] : String | Test.java:1477:10:1477:35 | get(...) : String | provenance | MaD:501 | +| Test.java:1477:30:1477:31 | in : Object[] [[]] : String | Test.java:1477:10:1477:35 | get(...) : String | provenance | MaD:505 | | Test.java:1483:16:1483:53 | newVectorWithElement(...) : Vector [] : String | Test.java:1484:30:1484:31 | in : Vector [] : String | provenance | | | Test.java:1483:37:1483:52 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:1483:37:1483:52 | (...)... : String | Test.java:1483:16:1483:53 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1483:45:1483:52 | source(...) : Object | Test.java:1483:37:1483:52 | (...)... : String | provenance | | | Test.java:1484:10:1484:35 | get(...) : String | Test.java:1485:9:1485:11 | out | provenance | | -| Test.java:1484:30:1484:31 | in : Vector [] : String | Test.java:1484:10:1484:35 | get(...) : String | provenance | MaD:502 | +| Test.java:1484:30:1484:31 | in : Vector [] : String | Test.java:1484:10:1484:35 | get(...) : String | provenance | MaD:506 | | Test.java:1490:16:1490:53 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:1491:41:1491:42 | in : TreeMap [] : String | provenance | | | Test.java:1490:37:1490:52 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:1490:37:1490:52 | (...)... : String | Test.java:1490:16:1490:53 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:1490:37:1490:52 | (...)... : String | Test.java:1490:16:1490:53 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:1490:45:1490:52 | source(...) : Object | Test.java:1490:37:1490:52 | (...)... : String | provenance | | | Test.java:1491:10:1491:46 | (...)... : Entry [] : String | Test.java:1492:28:1492:30 | out : Entry [] : String | provenance | | | Test.java:1491:21:1491:46 | get(...) : Object [] : String | Test.java:1491:10:1491:46 | (...)... : Entry [] : String | provenance | | -| Test.java:1491:41:1491:42 | in : TreeMap [] : String | Test.java:1491:21:1491:46 | get(...) : Object [] : String | provenance | MaD:503 | +| Test.java:1491:41:1491:42 | in : TreeMap [] : String | Test.java:1491:21:1491:46 | get(...) : Object [] : String | provenance | MaD:507 | | Test.java:1492:28:1492:30 | out : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | -| Test.java:1492:28:1492:30 | out : Entry [] : String | Test.java:1492:9:1492:31 | getMapKeyFromEntry(...) | provenance | MaD:9 | +| Test.java:1492:28:1492:30 | out : Entry [] : String | Test.java:1492:9:1492:31 | getMapKeyFromEntry(...) | provenance | MaD:10 | | Test.java:1497:16:1497:55 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:1498:41:1498:42 | in : TreeMap [] : String | provenance | | | Test.java:1497:39:1497:54 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:1497:39:1497:54 | (...)... : String | Test.java:1497:16:1497:55 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:1497:39:1497:54 | (...)... : String | Test.java:1497:16:1497:55 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:1497:47:1497:54 | source(...) : Object | Test.java:1497:39:1497:54 | (...)... : String | provenance | | | Test.java:1498:10:1498:46 | (...)... : Entry [] : String | Test.java:1499:30:1499:32 | out : Entry [] : String | provenance | | | Test.java:1498:21:1498:46 | get(...) : Object [] : String | Test.java:1498:10:1498:46 | (...)... : Entry [] : String | provenance | | -| Test.java:1498:41:1498:42 | in : TreeMap [] : String | Test.java:1498:21:1498:46 | get(...) : Object [] : String | provenance | MaD:504 | +| Test.java:1498:41:1498:42 | in : TreeMap [] : String | Test.java:1498:21:1498:46 | get(...) : Object [] : String | provenance | MaD:508 | | Test.java:1499:30:1499:32 | out : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | -| Test.java:1499:30:1499:32 | out : Entry [] : String | Test.java:1499:9:1499:33 | getMapValueFromEntry(...) | provenance | MaD:10 | +| Test.java:1499:30:1499:32 | out : Entry [] : String | Test.java:1499:9:1499:33 | getMapValueFromEntry(...) | provenance | MaD:11 | | Test.java:1504:18:1504:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1505:44:1505:45 | in : Vector [] : String | provenance | | | Test.java:1504:39:1504:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:1504:39:1504:54 | (...)... : String | Test.java:1504:18:1504:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1504:47:1504:54 | source(...) : Object | Test.java:1504:39:1504:54 | (...)... : String | provenance | | | Test.java:1505:10:1505:46 | getCardinalityMap(...) : Map [] : String | Test.java:1506:19:1506:21 | out : Map [] : String | provenance | | -| Test.java:1505:44:1505:45 | in : Vector [] : String | Test.java:1505:10:1505:46 | getCardinalityMap(...) : Map [] : String | provenance | MaD:505 | +| Test.java:1505:44:1505:45 | in : Vector [] : String | Test.java:1505:10:1505:46 | getCardinalityMap(...) : Map [] : String | provenance | MaD:509 | | Test.java:1506:19:1506:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:1506:19:1506:21 | out : Map [] : String | Test.java:1506:9:1506:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:1506:19:1506:21 | out : Map [] : String | Test.java:1506:9:1506:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:1511:18:1511:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1512:39:1512:40 | in : Vector [] : String | provenance | | | Test.java:1511:39:1511:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:1511:39:1511:54 | (...)... : String | Test.java:1511:18:1511:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1511:47:1511:54 | source(...) : Object | Test.java:1511:39:1511:54 | (...)... : String | provenance | | | Test.java:1512:10:1512:47 | intersection(...) : Collection [] : String | Test.java:1513:20:1513:22 | out : Collection [] : String | provenance | | -| Test.java:1512:39:1512:40 | in : Vector [] : String | Test.java:1512:10:1512:47 | intersection(...) : Collection [] : String | provenance | MaD:506 | +| Test.java:1512:39:1512:40 | in : Vector [] : String | Test.java:1512:10:1512:47 | intersection(...) : Collection [] : String | provenance | MaD:510 | | Test.java:1513:20:1513:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1513:20:1513:22 | out : Collection [] : String | Test.java:1513:9:1513:23 | getElement(...) | provenance | MaD:3 | | Test.java:1518:18:1518:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1519:45:1519:46 | in : Vector [] : String | provenance | | @@ -3131,7 +3132,7 @@ edges | Test.java:1518:39:1518:54 | (...)... : String | Test.java:1518:18:1518:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1518:47:1518:54 | source(...) : Object | Test.java:1518:39:1518:54 | (...)... : String | provenance | | | Test.java:1519:10:1519:47 | intersection(...) : Collection [] : String | Test.java:1520:20:1520:22 | out : Collection [] : String | provenance | | -| Test.java:1519:45:1519:46 | in : Vector [] : String | Test.java:1519:10:1519:47 | intersection(...) : Collection [] : String | provenance | MaD:507 | +| Test.java:1519:45:1519:46 | in : Vector [] : String | Test.java:1519:10:1519:47 | intersection(...) : Collection [] : String | provenance | MaD:511 | | Test.java:1520:20:1520:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1520:20:1520:22 | out : Collection [] : String | Test.java:1520:9:1520:23 | getElement(...) | provenance | MaD:3 | | Test.java:1525:20:1525:57 | newVectorWithElement(...) : Vector [] : String | Test.java:1526:39:1526:40 | in : Vector [] : String | provenance | | @@ -3139,7 +3140,7 @@ edges | Test.java:1525:41:1525:56 | (...)... : String | Test.java:1525:20:1525:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1525:49:1525:56 | source(...) : Object | Test.java:1525:41:1525:56 | (...)... : String | provenance | | | Test.java:1526:10:1526:41 | permutations(...) : Collection [, ] : String | Test.java:1527:41:1527:43 | out : Collection [, ] : String | provenance | | -| Test.java:1526:39:1526:40 | in : Vector [] : String | Test.java:1526:10:1526:41 | permutations(...) : Collection [, ] : String | provenance | MaD:508 | +| Test.java:1526:39:1526:40 | in : Vector [] : String | Test.java:1526:10:1526:41 | permutations(...) : Collection [, ] : String | provenance | MaD:512 | | Test.java:1527:20:1527:44 | (...)... : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:1527:20:1527:44 | (...)... : Iterable [] : String | Test.java:1527:9:1527:45 | getElement(...) | provenance | MaD:3 | | Test.java:1527:30:1527:44 | getElement(...) : Object [] : String | Test.java:1527:20:1527:44 | (...)... : Iterable [] : String | provenance | | @@ -3150,7 +3151,7 @@ edges | Test.java:1532:41:1532:56 | (...)... : String | Test.java:1532:20:1532:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1532:49:1532:56 | source(...) : Object | Test.java:1532:41:1532:56 | (...)... : String | provenance | | | Test.java:1533:10:1533:55 | predicatedCollection(...) : Collection [] : String | Test.java:1534:20:1534:22 | out : Collection [] : String | provenance | | -| Test.java:1533:47:1533:48 | in : Vector [] : String | Test.java:1533:10:1533:55 | predicatedCollection(...) : Collection [] : String | provenance | MaD:509 | +| Test.java:1533:47:1533:48 | in : Vector [] : String | Test.java:1533:10:1533:55 | predicatedCollection(...) : Collection [] : String | provenance | MaD:513 | | Test.java:1534:20:1534:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1534:20:1534:22 | out : Collection [] : String | Test.java:1534:9:1534:23 | getElement(...) | provenance | MaD:3 | | Test.java:1539:18:1539:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1540:36:1540:37 | in : Vector [] : String | provenance | | @@ -3158,7 +3159,7 @@ edges | Test.java:1539:39:1539:54 | (...)... : String | Test.java:1539:18:1539:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1539:47:1539:54 | source(...) : Object | Test.java:1539:39:1539:54 | (...)... : String | provenance | | | Test.java:1540:10:1540:50 | removeAll(...) : Collection [] : String | Test.java:1541:20:1541:22 | out : Collection [] : String | provenance | | -| Test.java:1540:36:1540:37 | in : Vector [] : String | Test.java:1540:10:1540:50 | removeAll(...) : Collection [] : String | provenance | MaD:510 | +| Test.java:1540:36:1540:37 | in : Vector [] : String | Test.java:1540:10:1540:50 | removeAll(...) : Collection [] : String | provenance | MaD:514 | | Test.java:1541:20:1541:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1541:20:1541:22 | out : Collection [] : String | Test.java:1541:9:1541:23 | getElement(...) | provenance | MaD:3 | | Test.java:1546:20:1546:57 | newVectorWithElement(...) : Vector [] : String | Test.java:1547:36:1547:37 | in : Vector [] : String | provenance | | @@ -3166,7 +3167,7 @@ edges | Test.java:1546:41:1546:56 | (...)... : String | Test.java:1546:20:1546:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1546:49:1546:56 | source(...) : Object | Test.java:1546:41:1546:56 | (...)... : String | provenance | | | Test.java:1547:10:1547:44 | removeAll(...) : Collection [] : String | Test.java:1548:20:1548:22 | out : Collection [] : String | provenance | | -| Test.java:1547:36:1547:37 | in : Vector [] : String | Test.java:1547:10:1547:44 | removeAll(...) : Collection [] : String | provenance | MaD:510 | +| Test.java:1547:36:1547:37 | in : Vector [] : String | Test.java:1547:10:1547:44 | removeAll(...) : Collection [] : String | provenance | MaD:514 | | Test.java:1548:20:1548:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1548:20:1548:22 | out : Collection [] : String | Test.java:1548:9:1548:23 | getElement(...) | provenance | MaD:3 | | Test.java:1553:18:1553:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1554:36:1554:37 | in : Vector [] : String | provenance | | @@ -3174,7 +3175,7 @@ edges | Test.java:1553:39:1553:54 | (...)... : String | Test.java:1553:18:1553:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1553:47:1553:54 | source(...) : Object | Test.java:1553:39:1553:54 | (...)... : String | provenance | | | Test.java:1554:10:1554:50 | retainAll(...) : Collection [] : String | Test.java:1555:20:1555:22 | out : Collection [] : String | provenance | | -| Test.java:1554:36:1554:37 | in : Vector [] : String | Test.java:1554:10:1554:50 | retainAll(...) : Collection [] : String | provenance | MaD:511 | +| Test.java:1554:36:1554:37 | in : Vector [] : String | Test.java:1554:10:1554:50 | retainAll(...) : Collection [] : String | provenance | MaD:515 | | Test.java:1555:20:1555:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1555:20:1555:22 | out : Collection [] : String | Test.java:1555:9:1555:23 | getElement(...) | provenance | MaD:3 | | Test.java:1560:20:1560:57 | newVectorWithElement(...) : Vector [] : String | Test.java:1561:36:1561:37 | in : Vector [] : String | provenance | | @@ -3182,7 +3183,7 @@ edges | Test.java:1560:41:1560:56 | (...)... : String | Test.java:1560:20:1560:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1560:49:1560:56 | source(...) : Object | Test.java:1560:41:1560:56 | (...)... : String | provenance | | | Test.java:1561:10:1561:44 | retainAll(...) : Collection [] : String | Test.java:1562:20:1562:22 | out : Collection [] : String | provenance | | -| Test.java:1561:36:1561:37 | in : Vector [] : String | Test.java:1561:10:1561:44 | retainAll(...) : Collection [] : String | provenance | MaD:511 | +| Test.java:1561:36:1561:37 | in : Vector [] : String | Test.java:1561:10:1561:44 | retainAll(...) : Collection [] : String | provenance | MaD:515 | | Test.java:1562:20:1562:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1562:20:1562:22 | out : Collection [] : String | Test.java:1562:9:1562:23 | getElement(...) | provenance | MaD:3 | | Test.java:1567:18:1567:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1568:33:1568:34 | in : Vector [] : String | provenance | | @@ -3190,18 +3191,18 @@ edges | Test.java:1567:39:1567:54 | (...)... : String | Test.java:1567:18:1567:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1567:47:1567:54 | source(...) : Object | Test.java:1567:39:1567:54 | (...)... : String | provenance | | | Test.java:1568:10:1568:41 | select(...) : Collection [] : String | Test.java:1569:20:1569:22 | out : Collection [] : String | provenance | | -| Test.java:1568:33:1568:34 | in : Vector [] : String | Test.java:1568:10:1568:41 | select(...) : Collection [] : String | provenance | MaD:512 | +| Test.java:1568:33:1568:34 | in : Vector [] : String | Test.java:1568:10:1568:41 | select(...) : Collection [] : String | provenance | MaD:516 | | Test.java:1569:20:1569:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1569:20:1569:22 | out : Collection [] : String | Test.java:1569:9:1569:23 | getElement(...) | provenance | MaD:3 | | Test.java:1574:20:1574:39 | (...)... : Collection | Test.java:1575:45:1575:46 | in : Collection | provenance | | | Test.java:1574:32:1574:39 | source(...) : Object | Test.java:1574:20:1574:39 | (...)... : Collection | provenance | | | Test.java:1575:10:1575:47 | select(...) : Collection | Test.java:1576:9:1576:11 | out | provenance | | -| Test.java:1575:45:1575:46 | in : Collection | Test.java:1575:10:1575:47 | select(...) : Collection | provenance | MaD:514 | +| Test.java:1575:45:1575:46 | in : Collection | Test.java:1575:10:1575:47 | select(...) : Collection | provenance | MaD:518 | | Test.java:1581:18:1581:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1582:27:1582:28 | in : Vector [] : String | provenance | | | Test.java:1581:39:1581:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:1581:39:1581:54 | (...)... : String | Test.java:1581:18:1581:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1581:47:1581:54 | source(...) : Object | Test.java:1581:39:1581:54 | (...)... : String | provenance | | -| Test.java:1582:27:1582:28 | in : Vector [] : String | Test.java:1582:37:1582:39 | out [post update] : Collection [] : String | provenance | MaD:513 | +| Test.java:1582:27:1582:28 | in : Vector [] : String | Test.java:1582:37:1582:39 | out [post update] : Collection [] : String | provenance | MaD:517 | | Test.java:1582:37:1582:39 | out [post update] : Collection [] : String | Test.java:1583:20:1583:22 | out : Collection [] : String | provenance | | | Test.java:1583:20:1583:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1583:20:1583:22 | out : Collection [] : String | Test.java:1583:9:1583:23 | getElement(...) | provenance | MaD:3 | @@ -3210,18 +3211,18 @@ edges | Test.java:1588:39:1588:54 | (...)... : String | Test.java:1588:18:1588:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1588:47:1588:54 | source(...) : Object | Test.java:1588:39:1588:54 | (...)... : String | provenance | | | Test.java:1589:10:1589:46 | select(...) : Collection [] : String | Test.java:1590:20:1590:22 | out : Collection [] : String | provenance | | -| Test.java:1589:33:1589:34 | in : Vector [] : String | Test.java:1589:10:1589:46 | select(...) : Collection [] : String | provenance | MaD:513+MaD:514 | +| Test.java:1589:33:1589:34 | in : Vector [] : String | Test.java:1589:10:1589:46 | select(...) : Collection [] : String | provenance | MaD:517+MaD:518 | | Test.java:1590:20:1590:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1590:20:1590:22 | out : Collection [] : String | Test.java:1590:9:1590:23 | getElement(...) | provenance | MaD:3 | | Test.java:1595:20:1595:39 | (...)... : Collection | Test.java:1596:45:1596:46 | in : Collection | provenance | | | Test.java:1595:32:1595:39 | source(...) : Object | Test.java:1595:20:1595:39 | (...)... : Collection | provenance | | | Test.java:1596:10:1596:53 | select(...) : Collection | Test.java:1597:9:1597:11 | out | provenance | | -| Test.java:1596:45:1596:46 | in : Collection | Test.java:1596:10:1596:53 | select(...) : Collection | provenance | MaD:517 | +| Test.java:1596:45:1596:46 | in : Collection | Test.java:1596:10:1596:53 | select(...) : Collection | provenance | MaD:521 | | Test.java:1602:18:1602:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1603:27:1603:28 | in : Vector [] : String | provenance | | | Test.java:1602:39:1602:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:1602:39:1602:54 | (...)... : String | Test.java:1602:18:1602:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1602:47:1602:54 | source(...) : Object | Test.java:1602:39:1602:54 | (...)... : String | provenance | | -| Test.java:1603:27:1603:28 | in : Vector [] : String | Test.java:1603:37:1603:39 | out [post update] : Collection [] : String | provenance | MaD:515 | +| Test.java:1603:27:1603:28 | in : Vector [] : String | Test.java:1603:37:1603:39 | out [post update] : Collection [] : String | provenance | MaD:519 | | Test.java:1603:37:1603:39 | out [post update] : Collection [] : String | Test.java:1604:20:1604:22 | out : Collection [] : String | provenance | | | Test.java:1604:20:1604:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1604:20:1604:22 | out : Collection [] : String | Test.java:1604:9:1604:23 | getElement(...) | provenance | MaD:3 | @@ -3230,14 +3231,14 @@ edges | Test.java:1609:39:1609:54 | (...)... : String | Test.java:1609:18:1609:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1609:47:1609:54 | source(...) : Object | Test.java:1609:39:1609:54 | (...)... : String | provenance | | | Test.java:1610:10:1610:52 | select(...) : Collection [] : String | Test.java:1611:20:1611:22 | out : Collection [] : String | provenance | | -| Test.java:1610:33:1610:34 | in : Vector [] : String | Test.java:1610:10:1610:52 | select(...) : Collection [] : String | provenance | MaD:515+MaD:517 | +| Test.java:1610:33:1610:34 | in : Vector [] : String | Test.java:1610:10:1610:52 | select(...) : Collection [] : String | provenance | MaD:519+MaD:521 | | Test.java:1611:20:1611:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1611:20:1611:22 | out : Collection [] : String | Test.java:1611:9:1611:23 | getElement(...) | provenance | MaD:3 | | Test.java:1616:18:1616:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1617:27:1617:28 | in : Vector [] : String | provenance | | | Test.java:1616:39:1616:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:1616:39:1616:54 | (...)... : String | Test.java:1616:18:1616:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1616:47:1616:54 | source(...) : Object | Test.java:1616:39:1616:54 | (...)... : String | provenance | | -| Test.java:1617:27:1617:28 | in : Vector [] : String | Test.java:1617:43:1617:45 | out [post update] : Collection [] : String | provenance | MaD:516 | +| Test.java:1617:27:1617:28 | in : Vector [] : String | Test.java:1617:43:1617:45 | out [post update] : Collection [] : String | provenance | MaD:520 | | Test.java:1617:43:1617:45 | out [post update] : Collection [] : String | Test.java:1618:20:1618:22 | out : Collection [] : String | provenance | | | Test.java:1618:20:1618:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1618:20:1618:22 | out : Collection [] : String | Test.java:1618:9:1618:23 | getElement(...) | provenance | MaD:3 | @@ -3246,18 +3247,18 @@ edges | Test.java:1623:39:1623:54 | (...)... : String | Test.java:1623:18:1623:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1623:47:1623:54 | source(...) : Object | Test.java:1623:39:1623:54 | (...)... : String | provenance | | | Test.java:1624:10:1624:49 | selectRejected(...) : Collection [] : String | Test.java:1625:20:1625:22 | out : Collection [] : String | provenance | | -| Test.java:1624:41:1624:42 | in : Vector [] : String | Test.java:1624:10:1624:49 | selectRejected(...) : Collection [] : String | provenance | MaD:518 | +| Test.java:1624:41:1624:42 | in : Vector [] : String | Test.java:1624:10:1624:49 | selectRejected(...) : Collection [] : String | provenance | MaD:522 | | Test.java:1625:20:1625:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1625:20:1625:22 | out : Collection [] : String | Test.java:1625:9:1625:23 | getElement(...) | provenance | MaD:3 | | Test.java:1630:20:1630:39 | (...)... : Collection | Test.java:1631:53:1631:54 | in : Collection | provenance | | | Test.java:1630:32:1630:39 | source(...) : Object | Test.java:1630:20:1630:39 | (...)... : Collection | provenance | | | Test.java:1631:10:1631:55 | selectRejected(...) : Collection | Test.java:1632:9:1632:11 | out | provenance | | -| Test.java:1631:53:1631:54 | in : Collection | Test.java:1631:10:1631:55 | selectRejected(...) : Collection | provenance | MaD:520 | +| Test.java:1631:53:1631:54 | in : Collection | Test.java:1631:10:1631:55 | selectRejected(...) : Collection | provenance | MaD:524 | | Test.java:1637:18:1637:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1638:35:1638:36 | in : Vector [] : String | provenance | | | Test.java:1637:39:1637:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:1637:39:1637:54 | (...)... : String | Test.java:1637:18:1637:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1637:47:1637:54 | source(...) : Object | Test.java:1637:39:1637:54 | (...)... : String | provenance | | -| Test.java:1638:35:1638:36 | in : Vector [] : String | Test.java:1638:45:1638:47 | out [post update] : Collection [] : String | provenance | MaD:519 | +| Test.java:1638:35:1638:36 | in : Vector [] : String | Test.java:1638:45:1638:47 | out [post update] : Collection [] : String | provenance | MaD:523 | | Test.java:1638:45:1638:47 | out [post update] : Collection [] : String | Test.java:1639:20:1639:22 | out : Collection [] : String | provenance | | | Test.java:1639:20:1639:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1639:20:1639:22 | out : Collection [] : String | Test.java:1639:9:1639:23 | getElement(...) | provenance | MaD:3 | @@ -3266,7 +3267,7 @@ edges | Test.java:1644:39:1644:54 | (...)... : String | Test.java:1644:18:1644:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1644:47:1644:54 | source(...) : Object | Test.java:1644:39:1644:54 | (...)... : String | provenance | | | Test.java:1645:10:1645:49 | subtract(...) : Collection [] : String | Test.java:1646:20:1646:22 | out : Collection [] : String | provenance | | -| Test.java:1645:35:1645:36 | in : Vector [] : String | Test.java:1645:10:1645:49 | subtract(...) : Collection [] : String | provenance | MaD:521 | +| Test.java:1645:35:1645:36 | in : Vector [] : String | Test.java:1645:10:1645:49 | subtract(...) : Collection [] : String | provenance | MaD:525 | | Test.java:1646:20:1646:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1646:20:1646:22 | out : Collection [] : String | Test.java:1646:9:1646:23 | getElement(...) | provenance | MaD:3 | | Test.java:1651:18:1651:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1652:35:1652:36 | in : Vector [] : String | provenance | | @@ -3274,7 +3275,7 @@ edges | Test.java:1651:39:1651:54 | (...)... : String | Test.java:1651:18:1651:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1651:47:1651:54 | source(...) : Object | Test.java:1651:39:1651:54 | (...)... : String | provenance | | | Test.java:1652:10:1652:43 | subtract(...) : Collection [] : String | Test.java:1653:20:1653:22 | out : Collection [] : String | provenance | | -| Test.java:1652:35:1652:36 | in : Vector [] : String | Test.java:1652:10:1652:43 | subtract(...) : Collection [] : String | provenance | MaD:521 | +| Test.java:1652:35:1652:36 | in : Vector [] : String | Test.java:1652:10:1652:43 | subtract(...) : Collection [] : String | provenance | MaD:525 | | Test.java:1653:20:1653:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1653:20:1653:22 | out : Collection [] : String | Test.java:1653:9:1653:23 | getElement(...) | provenance | MaD:3 | | Test.java:1658:20:1658:57 | newVectorWithElement(...) : Vector [] : String | Test.java:1659:49:1659:50 | in : Vector [] : String | provenance | | @@ -3282,7 +3283,7 @@ edges | Test.java:1658:41:1658:56 | (...)... : String | Test.java:1658:20:1658:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1658:49:1658:56 | source(...) : Object | Test.java:1658:41:1658:56 | (...)... : String | provenance | | | Test.java:1659:10:1659:51 | synchronizedCollection(...) : Collection [] : String | Test.java:1660:20:1660:22 | out : Collection [] : String | provenance | | -| Test.java:1659:49:1659:50 | in : Vector [] : String | Test.java:1659:10:1659:51 | synchronizedCollection(...) : Collection [] : String | provenance | MaD:522 | +| Test.java:1659:49:1659:50 | in : Vector [] : String | Test.java:1659:10:1659:51 | synchronizedCollection(...) : Collection [] : String | provenance | MaD:526 | | Test.java:1660:20:1660:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1660:20:1660:22 | out : Collection [] : String | Test.java:1660:9:1660:23 | getElement(...) | provenance | MaD:3 | | Test.java:1665:20:1665:57 | newVectorWithElement(...) : Vector [] : String | Test.java:1666:49:1666:50 | in : Vector [] : String | provenance | | @@ -3290,7 +3291,7 @@ edges | Test.java:1665:41:1665:56 | (...)... : String | Test.java:1665:20:1665:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1665:49:1665:56 | source(...) : Object | Test.java:1665:41:1665:56 | (...)... : String | provenance | | | Test.java:1666:10:1666:57 | transformingCollection(...) : Collection [] : String | Test.java:1667:20:1667:22 | out : Collection [] : String | provenance | | -| Test.java:1666:49:1666:50 | in : Vector [] : String | Test.java:1666:10:1666:57 | transformingCollection(...) : Collection [] : String | provenance | MaD:523 | +| Test.java:1666:49:1666:50 | in : Vector [] : String | Test.java:1666:10:1666:57 | transformingCollection(...) : Collection [] : String | provenance | MaD:527 | | Test.java:1667:20:1667:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1667:20:1667:22 | out : Collection [] : String | Test.java:1667:9:1667:23 | getElement(...) | provenance | MaD:3 | | Test.java:1672:18:1672:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1673:32:1673:33 | in : Vector [] : String | provenance | | @@ -3298,7 +3299,7 @@ edges | Test.java:1672:39:1672:54 | (...)... : String | Test.java:1672:18:1672:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1672:47:1672:54 | source(...) : Object | Test.java:1672:39:1672:54 | (...)... : String | provenance | | | Test.java:1673:10:1673:40 | union(...) : Collection [] : String | Test.java:1674:20:1674:22 | out : Collection [] : String | provenance | | -| Test.java:1673:32:1673:33 | in : Vector [] : String | Test.java:1673:10:1673:40 | union(...) : Collection [] : String | provenance | MaD:524 | +| Test.java:1673:32:1673:33 | in : Vector [] : String | Test.java:1673:10:1673:40 | union(...) : Collection [] : String | provenance | MaD:528 | | Test.java:1674:20:1674:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1674:20:1674:22 | out : Collection [] : String | Test.java:1674:9:1674:23 | getElement(...) | provenance | MaD:3 | | Test.java:1679:18:1679:55 | newVectorWithElement(...) : Vector [] : String | Test.java:1680:38:1680:39 | in : Vector [] : String | provenance | | @@ -3306,7 +3307,7 @@ edges | Test.java:1679:39:1679:54 | (...)... : String | Test.java:1679:18:1679:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1679:47:1679:54 | source(...) : Object | Test.java:1679:39:1679:54 | (...)... : String | provenance | | | Test.java:1680:10:1680:40 | union(...) : Collection [] : String | Test.java:1681:20:1681:22 | out : Collection [] : String | provenance | | -| Test.java:1680:38:1680:39 | in : Vector [] : String | Test.java:1680:10:1680:40 | union(...) : Collection [] : String | provenance | MaD:525 | +| Test.java:1680:38:1680:39 | in : Vector [] : String | Test.java:1680:10:1680:40 | union(...) : Collection [] : String | provenance | MaD:529 | | Test.java:1681:20:1681:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1681:20:1681:22 | out : Collection [] : String | Test.java:1681:9:1681:23 | getElement(...) | provenance | MaD:3 | | Test.java:1686:20:1686:57 | newVectorWithElement(...) : Vector [] : String | Test.java:1687:49:1687:50 | in : Vector [] : String | provenance | | @@ -3314,7 +3315,7 @@ edges | Test.java:1686:41:1686:56 | (...)... : String | Test.java:1686:20:1686:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1686:49:1686:56 | source(...) : Object | Test.java:1686:41:1686:56 | (...)... : String | provenance | | | Test.java:1687:10:1687:51 | unmodifiableCollection(...) : Collection [] : String | Test.java:1688:20:1688:22 | out : Collection [] : String | provenance | | -| Test.java:1687:49:1687:50 | in : Vector [] : String | Test.java:1687:10:1687:51 | unmodifiableCollection(...) : Collection [] : String | provenance | MaD:526 | +| Test.java:1687:49:1687:50 | in : Vector [] : String | Test.java:1687:10:1687:51 | unmodifiableCollection(...) : Collection [] : String | provenance | MaD:530 | | Test.java:1688:20:1688:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1688:20:1688:22 | out : Collection [] : String | Test.java:1688:9:1688:23 | getElement(...) | provenance | MaD:3 | | Test.java:1693:21:1693:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:1694:31:1694:32 | in : IteratorEnumeration [] : String | provenance | | @@ -3322,148 +3323,148 @@ edges | Test.java:1693:47:1693:62 | (...)... : String | Test.java:1693:21:1693:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | | Test.java:1693:55:1693:62 | source(...) : Object | Test.java:1693:47:1693:62 | (...)... : String | provenance | | | Test.java:1694:10:1694:36 | get(...) : String | Test.java:1695:9:1695:11 | out | provenance | | -| Test.java:1694:31:1694:32 | in : IteratorEnumeration [] : String | Test.java:1694:10:1694:36 | get(...) : String | provenance | MaD:527 | +| Test.java:1694:31:1694:32 | in : IteratorEnumeration [] : String | Test.java:1694:10:1694:36 | get(...) : String | provenance | MaD:531 | | Test.java:1700:21:1700:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:1701:34:1701:35 | in : IteratorEnumeration [] : String | provenance | | | Test.java:1700:47:1700:62 | (...)... : String | Test.java:256:47:256:55 | element : String | provenance | | | Test.java:1700:47:1700:62 | (...)... : String | Test.java:1700:21:1700:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | | Test.java:1700:55:1700:62 | source(...) : Object | Test.java:1700:47:1700:62 | (...)... : String | provenance | | | Test.java:1701:10:1701:36 | toList(...) : List [] : String | Test.java:1702:20:1702:22 | out : List [] : String | provenance | | -| Test.java:1701:34:1701:35 | in : IteratorEnumeration [] : String | Test.java:1701:10:1701:36 | toList(...) : List [] : String | provenance | MaD:528 | +| Test.java:1701:34:1701:35 | in : IteratorEnumeration [] : String | Test.java:1701:10:1701:36 | toList(...) : List [] : String | provenance | MaD:532 | | Test.java:1702:20:1702:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:1702:20:1702:22 | out : List [] : String | Test.java:1702:9:1702:23 | getElement(...) | provenance | MaD:3 | | Test.java:1707:25:1707:49 | (...)... : StringTokenizer | Test.java:1708:34:1708:35 | in : StringTokenizer | provenance | | | Test.java:1707:42:1707:49 | source(...) : Object | Test.java:1707:25:1707:49 | (...)... : StringTokenizer | provenance | | | Test.java:1708:10:1708:36 | toList(...) : List [] : Object | Test.java:1709:20:1709:22 | out : List [] : Object | provenance | | -| Test.java:1708:34:1708:35 | in : StringTokenizer | Test.java:1708:10:1708:36 | toList(...) : List [] : Object | provenance | MaD:529 | +| Test.java:1708:34:1708:35 | in : StringTokenizer | Test.java:1708:10:1708:36 | toList(...) : List [] : Object | provenance | MaD:533 | | Test.java:1709:20:1709:22 | out : List [] : Object | Test.java:230:19:230:32 | it : List [] : Object | provenance | | | Test.java:1709:20:1709:22 | out : List [] : Object | Test.java:1709:9:1709:23 | getElement(...) | provenance | MaD:3 | | Test.java:1714:24:1714:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1715:10:1715:11 | in : FluentIterable [] : String | provenance | | | Test.java:1714:53:1714:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1714:53:1714:68 | (...)... : String | Test.java:1714:24:1714:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1714:53:1714:68 | (...)... : String | Test.java:1714:24:1714:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1714:61:1714:68 | source(...) : Object | Test.java:1714:53:1714:68 | (...)... : String | provenance | | -| Test.java:1715:10:1715:11 | in : FluentIterable [] : String | Test.java:1715:10:1715:34 | append(...) : FluentIterable [] : String | provenance | MaD:531 | +| Test.java:1715:10:1715:11 | in : FluentIterable [] : String | Test.java:1715:10:1715:34 | append(...) : FluentIterable [] : String | provenance | MaD:535 | | Test.java:1715:10:1715:34 | append(...) : FluentIterable [] : String | Test.java:1716:20:1716:22 | out : FluentIterable [] : String | provenance | | | Test.java:1716:20:1716:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1716:20:1716:22 | out : FluentIterable [] : String | Test.java:1716:9:1716:23 | getElement(...) | provenance | MaD:3 | | Test.java:1721:18:1721:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1723:26:1723:27 | in : FluentIterable [] : String | provenance | | | Test.java:1721:47:1721:62 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1721:47:1721:62 | (...)... : String | Test.java:1721:18:1721:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1721:47:1721:62 | (...)... : String | Test.java:1721:18:1721:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1721:55:1721:62 | source(...) : Object | Test.java:1721:47:1721:62 | (...)... : String | provenance | | | Test.java:1723:10:1723:28 | append(...) : FluentIterable [] : String | Test.java:1724:20:1724:22 | out : FluentIterable [] : String | provenance | | -| Test.java:1723:26:1723:27 | in : FluentIterable [] : String | Test.java:1723:10:1723:28 | append(...) : FluentIterable [] : String | provenance | MaD:530 | +| Test.java:1723:26:1723:27 | in : FluentIterable [] : String | Test.java:1723:10:1723:28 | append(...) : FluentIterable [] : String | provenance | MaD:534 | | Test.java:1724:20:1724:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1724:20:1724:22 | out : FluentIterable [] : String | Test.java:1724:9:1724:23 | getElement(...) | provenance | MaD:3 | | Test.java:1729:16:1729:23 | source(...) : Object | Test.java:1731:26:1731:27 | in : Object | provenance | | | Test.java:1731:10:1731:28 | append(...) : FluentIterable [] : Object | Test.java:1732:20:1732:22 | out : FluentIterable [] : Object | provenance | | -| Test.java:1731:10:1731:28 | new ..[] { .. } : Object[] [[]] : Object | Test.java:1731:10:1731:28 | append(...) : FluentIterable [] : Object | provenance | MaD:532 | +| Test.java:1731:10:1731:28 | new ..[] { .. } : Object[] [[]] : Object | Test.java:1731:10:1731:28 | append(...) : FluentIterable [] : Object | provenance | MaD:536 | | Test.java:1731:26:1731:27 | in : Object | Test.java:1731:10:1731:28 | new ..[] { .. } : Object[] [[]] : Object | provenance | | | Test.java:1732:20:1732:22 | out : FluentIterable [] : Object | Test.java:230:19:230:32 | it : FluentIterable [] : Object | provenance | | | Test.java:1732:20:1732:22 | out : FluentIterable [] : Object | Test.java:1732:9:1732:23 | getElement(...) | provenance | MaD:3 | | Test.java:1737:24:1737:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1738:10:1738:11 | in : FluentIterable [] : String | provenance | | | Test.java:1737:53:1737:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1737:53:1737:68 | (...)... : String | Test.java:1737:24:1737:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1737:53:1737:68 | (...)... : String | Test.java:1737:24:1737:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1737:61:1737:68 | source(...) : Object | Test.java:1737:53:1737:68 | (...)... : String | provenance | | -| Test.java:1738:10:1738:11 | in : FluentIterable [] : String | Test.java:1738:10:1738:20 | append(...) : FluentIterable [] : String | provenance | MaD:533 | +| Test.java:1738:10:1738:11 | in : FluentIterable [] : String | Test.java:1738:10:1738:20 | append(...) : FluentIterable [] : String | provenance | MaD:537 | | Test.java:1738:10:1738:20 | append(...) : FluentIterable [] : String | Test.java:1739:20:1739:22 | out : FluentIterable [] : String | provenance | | | Test.java:1739:20:1739:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1739:20:1739:22 | out : FluentIterable [] : String | Test.java:1739:9:1739:23 | getElement(...) | provenance | MaD:3 | | Test.java:1744:24:1744:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1745:10:1745:11 | in : FluentIterable [] : String | provenance | | | Test.java:1744:53:1744:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1744:53:1744:68 | (...)... : String | Test.java:1744:24:1744:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1744:53:1744:68 | (...)... : String | Test.java:1744:24:1744:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1744:61:1744:68 | source(...) : Object | Test.java:1744:53:1744:68 | (...)... : String | provenance | | -| Test.java:1745:10:1745:11 | in : FluentIterable [] : String | Test.java:1745:10:1745:27 | asEnumeration(...) : Enumeration [] : String | provenance | MaD:534 | +| Test.java:1745:10:1745:11 | in : FluentIterable [] : String | Test.java:1745:10:1745:27 | asEnumeration(...) : Enumeration [] : String | provenance | MaD:538 | | Test.java:1745:10:1745:27 | asEnumeration(...) : Enumeration [] : String | Test.java:1746:20:1746:22 | out : Enumeration [] : String | provenance | | | Test.java:1746:20:1746:22 | out : Enumeration [] : String | Test.java:234:19:234:42 | container : Enumeration [] : String | provenance | | -| Test.java:1746:20:1746:22 | out : Enumeration [] : String | Test.java:1746:9:1746:23 | getElement(...) | provenance | MaD:5 | +| Test.java:1746:20:1746:22 | out : Enumeration [] : String | Test.java:1746:9:1746:23 | getElement(...) | provenance | MaD:6 | | Test.java:1751:24:1751:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1752:10:1752:11 | in : FluentIterable [] : String | provenance | | | Test.java:1751:53:1751:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1751:53:1751:68 | (...)... : String | Test.java:1751:24:1751:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1751:53:1751:68 | (...)... : String | Test.java:1751:24:1751:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1751:61:1751:68 | source(...) : Object | Test.java:1751:53:1751:68 | (...)... : String | provenance | | -| Test.java:1752:10:1752:11 | in : FluentIterable [] : String | Test.java:1752:10:1752:31 | collate(...) : FluentIterable [] : String | provenance | MaD:536 | +| Test.java:1752:10:1752:11 | in : FluentIterable [] : String | Test.java:1752:10:1752:31 | collate(...) : FluentIterable [] : String | provenance | MaD:540 | | Test.java:1752:10:1752:31 | collate(...) : FluentIterable [] : String | Test.java:1753:20:1753:22 | out : FluentIterable [] : String | provenance | | | Test.java:1753:20:1753:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1753:20:1753:22 | out : FluentIterable [] : String | Test.java:1753:9:1753:23 | getElement(...) | provenance | MaD:3 | | Test.java:1758:24:1758:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1759:10:1759:11 | in : FluentIterable [] : String | provenance | | | Test.java:1758:53:1758:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1758:53:1758:68 | (...)... : String | Test.java:1758:24:1758:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1758:53:1758:68 | (...)... : String | Test.java:1758:24:1758:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1758:61:1758:68 | source(...) : Object | Test.java:1758:53:1758:68 | (...)... : String | provenance | | -| Test.java:1759:10:1759:11 | in : FluentIterable [] : String | Test.java:1759:10:1759:25 | collate(...) : FluentIterable [] : String | provenance | MaD:536 | +| Test.java:1759:10:1759:11 | in : FluentIterable [] : String | Test.java:1759:10:1759:25 | collate(...) : FluentIterable [] : String | provenance | MaD:540 | | Test.java:1759:10:1759:25 | collate(...) : FluentIterable [] : String | Test.java:1760:20:1760:22 | out : FluentIterable [] : String | provenance | | | Test.java:1760:20:1760:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1760:20:1760:22 | out : FluentIterable [] : String | Test.java:1760:9:1760:23 | getElement(...) | provenance | MaD:3 | | Test.java:1765:18:1765:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1767:27:1767:28 | in : FluentIterable [] : String | provenance | | | Test.java:1765:47:1765:62 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1765:47:1765:62 | (...)... : String | Test.java:1765:18:1765:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1765:47:1765:62 | (...)... : String | Test.java:1765:18:1765:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1765:55:1765:62 | source(...) : Object | Test.java:1765:47:1765:62 | (...)... : String | provenance | | | Test.java:1767:10:1767:35 | collate(...) : FluentIterable [] : String | Test.java:1768:20:1768:22 | out : FluentIterable [] : String | provenance | | -| Test.java:1767:27:1767:28 | in : FluentIterable [] : String | Test.java:1767:10:1767:35 | collate(...) : FluentIterable [] : String | provenance | MaD:535 | +| Test.java:1767:27:1767:28 | in : FluentIterable [] : String | Test.java:1767:10:1767:35 | collate(...) : FluentIterable [] : String | provenance | MaD:539 | | Test.java:1768:20:1768:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1768:20:1768:22 | out : FluentIterable [] : String | Test.java:1768:9:1768:23 | getElement(...) | provenance | MaD:3 | | Test.java:1773:18:1773:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1775:27:1775:28 | in : FluentIterable [] : String | provenance | | | Test.java:1773:47:1773:62 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1773:47:1773:62 | (...)... : String | Test.java:1773:18:1773:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1773:47:1773:62 | (...)... : String | Test.java:1773:18:1773:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1773:55:1773:62 | source(...) : Object | Test.java:1773:47:1773:62 | (...)... : String | provenance | | | Test.java:1775:10:1775:29 | collate(...) : FluentIterable [] : String | Test.java:1776:20:1776:22 | out : FluentIterable [] : String | provenance | | -| Test.java:1775:27:1775:28 | in : FluentIterable [] : String | Test.java:1775:10:1775:29 | collate(...) : FluentIterable [] : String | provenance | MaD:535 | +| Test.java:1775:27:1775:28 | in : FluentIterable [] : String | Test.java:1775:10:1775:29 | collate(...) : FluentIterable [] : String | provenance | MaD:539 | | Test.java:1776:20:1776:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1776:20:1776:22 | out : FluentIterable [] : String | Test.java:1776:9:1776:23 | getElement(...) | provenance | MaD:3 | | Test.java:1781:24:1781:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1782:4:1782:5 | in : FluentIterable [] : String | provenance | | | Test.java:1781:53:1781:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1781:53:1781:68 | (...)... : String | Test.java:1781:24:1781:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1781:53:1781:68 | (...)... : String | Test.java:1781:24:1781:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1781:61:1781:68 | source(...) : Object | Test.java:1781:53:1781:68 | (...)... : String | provenance | | -| Test.java:1782:4:1782:5 | in : FluentIterable [] : String | Test.java:1782:16:1782:18 | out [post update] : Collection [] : String | provenance | MaD:537 | +| Test.java:1782:4:1782:5 | in : FluentIterable [] : String | Test.java:1782:16:1782:18 | out [post update] : Collection [] : String | provenance | MaD:541 | | Test.java:1782:16:1782:18 | out [post update] : Collection [] : String | Test.java:1783:20:1783:22 | out : Collection [] : String | provenance | | | Test.java:1783:20:1783:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:1783:20:1783:22 | out : Collection [] : String | Test.java:1783:9:1783:23 | getElement(...) | provenance | MaD:3 | | Test.java:1788:24:1788:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1789:10:1789:11 | in : FluentIterable [] : String | provenance | | | Test.java:1788:53:1788:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1788:53:1788:68 | (...)... : String | Test.java:1788:24:1788:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1788:53:1788:68 | (...)... : String | Test.java:1788:24:1788:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1788:61:1788:68 | source(...) : Object | Test.java:1788:53:1788:68 | (...)... : String | provenance | | -| Test.java:1789:10:1789:11 | in : FluentIterable [] : String | Test.java:1789:10:1789:18 | eval(...) : FluentIterable [] : String | provenance | MaD:538 | +| Test.java:1789:10:1789:11 | in : FluentIterable [] : String | Test.java:1789:10:1789:18 | eval(...) : FluentIterable [] : String | provenance | MaD:542 | | Test.java:1789:10:1789:18 | eval(...) : FluentIterable [] : String | Test.java:1790:20:1790:22 | out : FluentIterable [] : String | provenance | | | Test.java:1790:20:1790:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1790:20:1790:22 | out : FluentIterable [] : String | Test.java:1790:9:1790:23 | getElement(...) | provenance | MaD:3 | | Test.java:1795:24:1795:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1796:10:1796:11 | in : FluentIterable [] : String | provenance | | | Test.java:1795:53:1795:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1795:53:1795:68 | (...)... : String | Test.java:1795:24:1795:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1795:53:1795:68 | (...)... : String | Test.java:1795:24:1795:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1795:61:1795:68 | source(...) : Object | Test.java:1795:53:1795:68 | (...)... : String | provenance | | -| Test.java:1796:10:1796:11 | in : FluentIterable [] : String | Test.java:1796:10:1796:24 | filter(...) : FluentIterable [] : String | provenance | MaD:539 | +| Test.java:1796:10:1796:11 | in : FluentIterable [] : String | Test.java:1796:10:1796:24 | filter(...) : FluentIterable [] : String | provenance | MaD:543 | | Test.java:1796:10:1796:24 | filter(...) : FluentIterable [] : String | Test.java:1797:20:1797:22 | out : FluentIterable [] : String | provenance | | | Test.java:1797:20:1797:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1797:20:1797:22 | out : FluentIterable [] : String | Test.java:1797:9:1797:23 | getElement(...) | provenance | MaD:3 | | Test.java:1802:24:1802:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1803:10:1803:11 | in : FluentIterable [] : String | provenance | | | Test.java:1802:53:1802:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1802:53:1802:68 | (...)... : String | Test.java:1802:24:1802:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1802:53:1802:68 | (...)... : String | Test.java:1802:24:1802:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1802:61:1802:68 | source(...) : Object | Test.java:1802:53:1802:68 | (...)... : String | provenance | | -| Test.java:1803:10:1803:11 | in : FluentIterable [] : String | Test.java:1803:10:1803:18 | get(...) : String | provenance | MaD:540 | +| Test.java:1803:10:1803:11 | in : FluentIterable [] : String | Test.java:1803:10:1803:18 | get(...) : String | provenance | MaD:544 | | Test.java:1803:10:1803:18 | get(...) : String | Test.java:1804:9:1804:11 | out | provenance | | | Test.java:1809:24:1809:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1810:10:1810:11 | in : FluentIterable [] : String | provenance | | | Test.java:1809:53:1809:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1809:53:1809:68 | (...)... : String | Test.java:1809:24:1809:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1809:53:1809:68 | (...)... : String | Test.java:1809:24:1809:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1809:61:1809:68 | source(...) : Object | Test.java:1809:53:1809:68 | (...)... : String | provenance | | -| Test.java:1810:10:1810:11 | in : FluentIterable [] : String | Test.java:1810:10:1810:21 | limit(...) : FluentIterable [] : String | provenance | MaD:541 | +| Test.java:1810:10:1810:11 | in : FluentIterable [] : String | Test.java:1810:10:1810:21 | limit(...) : FluentIterable [] : String | provenance | MaD:545 | | Test.java:1810:10:1810:21 | limit(...) : FluentIterable [] : String | Test.java:1811:20:1811:22 | out : FluentIterable [] : String | provenance | | | Test.java:1811:20:1811:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1811:20:1811:22 | out : FluentIterable [] : String | Test.java:1811:9:1811:23 | getElement(...) | provenance | MaD:3 | | Test.java:1816:24:1816:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1817:10:1817:11 | in : FluentIterable [] : String | provenance | | | Test.java:1816:53:1816:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1816:53:1816:68 | (...)... : String | Test.java:1816:24:1816:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1816:53:1816:68 | (...)... : String | Test.java:1816:24:1816:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1816:61:1816:68 | source(...) : Object | Test.java:1816:53:1816:68 | (...)... : String | provenance | | -| Test.java:1817:10:1817:11 | in : FluentIterable [] : String | Test.java:1817:10:1817:18 | loop(...) : FluentIterable [] : String | provenance | MaD:542 | +| Test.java:1817:10:1817:11 | in : FluentIterable [] : String | Test.java:1817:10:1817:18 | loop(...) : FluentIterable [] : String | provenance | MaD:546 | | Test.java:1817:10:1817:18 | loop(...) : FluentIterable [] : String | Test.java:1818:20:1818:22 | out : FluentIterable [] : String | provenance | | | Test.java:1818:20:1818:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1818:20:1818:22 | out : FluentIterable [] : String | Test.java:1818:9:1818:23 | getElement(...) | provenance | MaD:3 | | Test.java:1823:18:1823:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1824:28:1824:29 | in : FluentIterable [] : String | provenance | | | Test.java:1823:47:1823:62 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1823:47:1823:62 | (...)... : String | Test.java:1823:18:1823:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1823:47:1823:62 | (...)... : String | Test.java:1823:18:1823:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1823:55:1823:62 | source(...) : Object | Test.java:1823:47:1823:62 | (...)... : String | provenance | | | Test.java:1824:10:1824:30 | of(...) : FluentIterable [] : String | Test.java:1825:20:1825:22 | out : FluentIterable [] : String | provenance | | -| Test.java:1824:28:1824:29 | in : FluentIterable [] : String | Test.java:1824:10:1824:30 | of(...) : FluentIterable [] : String | provenance | MaD:543 | +| Test.java:1824:28:1824:29 | in : FluentIterable [] : String | Test.java:1824:10:1824:30 | of(...) : FluentIterable [] : String | provenance | MaD:547 | | Test.java:1825:20:1825:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1825:20:1825:22 | out : FluentIterable [] : String | Test.java:1825:9:1825:23 | getElement(...) | provenance | MaD:3 | | Test.java:1830:16:1830:23 | source(...) : Object | Test.java:1831:28:1831:29 | in : Object | provenance | | | Test.java:1831:10:1831:30 | of(...) : FluentIterable [] : Object | Test.java:1832:20:1832:22 | out : FluentIterable [] : Object | provenance | | -| Test.java:1831:28:1831:29 | in : Object | Test.java:1831:10:1831:30 | of(...) : FluentIterable [] : Object | provenance | MaD:544 | +| Test.java:1831:28:1831:29 | in : Object | Test.java:1831:10:1831:30 | of(...) : FluentIterable [] : Object | provenance | MaD:548 | | Test.java:1832:20:1832:22 | out : FluentIterable [] : Object | Test.java:230:19:230:32 | it : FluentIterable [] : Object | provenance | | | Test.java:1832:20:1832:22 | out : FluentIterable [] : Object | Test.java:1832:9:1832:23 | getElement(...) | provenance | MaD:3 | | Test.java:1837:18:1837:54 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:1838:28:1838:29 | in : Object[] [[]] : String | provenance | | @@ -3471,78 +3472,78 @@ edges | Test.java:1837:38:1837:53 | (...)... : String | Test.java:1837:18:1837:54 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:1837:46:1837:53 | source(...) : Object | Test.java:1837:38:1837:53 | (...)... : String | provenance | | | Test.java:1838:10:1838:30 | of(...) : FluentIterable [] : String | Test.java:1839:20:1839:22 | out : FluentIterable [] : String | provenance | | -| Test.java:1838:28:1838:29 | in : Object[] [[]] : String | Test.java:1838:10:1838:30 | of(...) : FluentIterable [] : String | provenance | MaD:545 | +| Test.java:1838:28:1838:29 | in : Object[] [[]] : String | Test.java:1838:10:1838:30 | of(...) : FluentIterable [] : String | provenance | MaD:549 | | Test.java:1839:20:1839:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1839:20:1839:22 | out : FluentIterable [] : String | Test.java:1839:9:1839:23 | getElement(...) | provenance | MaD:3 | | Test.java:1844:24:1844:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1845:10:1845:11 | in : FluentIterable [] : String | provenance | | | Test.java:1844:53:1844:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1844:53:1844:68 | (...)... : String | Test.java:1844:24:1844:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1844:53:1844:68 | (...)... : String | Test.java:1844:24:1844:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1844:61:1844:68 | source(...) : Object | Test.java:1844:53:1844:68 | (...)... : String | provenance | | -| Test.java:1845:10:1845:11 | in : FluentIterable [] : String | Test.java:1845:10:1845:21 | reverse(...) : FluentIterable [] : String | provenance | MaD:546 | +| Test.java:1845:10:1845:11 | in : FluentIterable [] : String | Test.java:1845:10:1845:21 | reverse(...) : FluentIterable [] : String | provenance | MaD:550 | | Test.java:1845:10:1845:21 | reverse(...) : FluentIterable [] : String | Test.java:1846:20:1846:22 | out : FluentIterable [] : String | provenance | | | Test.java:1846:20:1846:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1846:20:1846:22 | out : FluentIterable [] : String | Test.java:1846:9:1846:23 | getElement(...) | provenance | MaD:3 | | Test.java:1851:24:1851:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1852:10:1852:11 | in : FluentIterable [] : String | provenance | | | Test.java:1851:53:1851:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1851:53:1851:68 | (...)... : String | Test.java:1851:24:1851:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1851:53:1851:68 | (...)... : String | Test.java:1851:24:1851:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1851:61:1851:68 | source(...) : Object | Test.java:1851:53:1851:68 | (...)... : String | provenance | | -| Test.java:1852:10:1852:11 | in : FluentIterable [] : String | Test.java:1852:10:1852:20 | skip(...) : FluentIterable [] : String | provenance | MaD:547 | +| Test.java:1852:10:1852:11 | in : FluentIterable [] : String | Test.java:1852:10:1852:20 | skip(...) : FluentIterable [] : String | provenance | MaD:551 | | Test.java:1852:10:1852:20 | skip(...) : FluentIterable [] : String | Test.java:1853:20:1853:22 | out : FluentIterable [] : String | provenance | | | Test.java:1853:20:1853:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1853:20:1853:22 | out : FluentIterable [] : String | Test.java:1853:9:1853:23 | getElement(...) | provenance | MaD:3 | | Test.java:1858:24:1858:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1859:10:1859:11 | in : FluentIterable [] : String | provenance | | | Test.java:1858:53:1858:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1858:53:1858:68 | (...)... : String | Test.java:1858:24:1858:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1858:53:1858:68 | (...)... : String | Test.java:1858:24:1858:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1858:61:1858:68 | source(...) : Object | Test.java:1858:53:1858:68 | (...)... : String | provenance | | -| Test.java:1859:10:1859:11 | in : FluentIterable [] : String | Test.java:1859:10:1859:25 | toArray(...) : Object[] [[]] : String | provenance | MaD:548 | +| Test.java:1859:10:1859:11 | in : FluentIterable [] : String | Test.java:1859:10:1859:25 | toArray(...) : Object[] [[]] : String | provenance | MaD:552 | | Test.java:1859:10:1859:25 | toArray(...) : Object[] [[]] : String | Test.java:1860:25:1860:27 | out : Object[] [[]] : String | provenance | | | Test.java:1860:25:1860:27 | out : Object[] [[]] : String | Test.java:229:24:229:32 | array : Object[] [[]] : String | provenance | | | Test.java:1860:25:1860:27 | out : Object[] [[]] : String | Test.java:1860:9:1860:28 | getArrayElement(...) | provenance | | | Test.java:1865:24:1865:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1866:10:1866:11 | in : FluentIterable [] : String | provenance | | | Test.java:1865:53:1865:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1865:53:1865:68 | (...)... : String | Test.java:1865:24:1865:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1865:53:1865:68 | (...)... : String | Test.java:1865:24:1865:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1865:61:1865:68 | source(...) : Object | Test.java:1865:53:1865:68 | (...)... : String | provenance | | -| Test.java:1866:10:1866:11 | in : FluentIterable [] : String | Test.java:1866:10:1866:20 | toList(...) : List [] : String | provenance | MaD:549 | +| Test.java:1866:10:1866:11 | in : FluentIterable [] : String | Test.java:1866:10:1866:20 | toList(...) : List [] : String | provenance | MaD:553 | | Test.java:1866:10:1866:20 | toList(...) : List [] : String | Test.java:1867:20:1867:22 | out : List [] : String | provenance | | | Test.java:1867:20:1867:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:1867:20:1867:22 | out : List [] : String | Test.java:1867:9:1867:23 | getElement(...) | provenance | MaD:3 | | Test.java:1872:24:1872:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1873:10:1873:11 | in : FluentIterable [] : String | provenance | | | Test.java:1872:53:1872:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1872:53:1872:68 | (...)... : String | Test.java:1872:24:1872:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1872:53:1872:68 | (...)... : String | Test.java:1872:24:1872:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1872:61:1872:68 | source(...) : Object | Test.java:1872:53:1872:68 | (...)... : String | provenance | | -| Test.java:1873:10:1873:11 | in : FluentIterable [] : String | Test.java:1873:10:1873:20 | unique(...) : FluentIterable [] : String | provenance | MaD:550 | +| Test.java:1873:10:1873:11 | in : FluentIterable [] : String | Test.java:1873:10:1873:20 | unique(...) : FluentIterable [] : String | provenance | MaD:554 | | Test.java:1873:10:1873:20 | unique(...) : FluentIterable [] : String | Test.java:1874:20:1874:22 | out : FluentIterable [] : String | provenance | | | Test.java:1874:20:1874:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1874:20:1874:22 | out : FluentIterable [] : String | Test.java:1874:9:1874:23 | getElement(...) | provenance | MaD:3 | | Test.java:1879:24:1879:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1880:10:1880:11 | in : FluentIterable [] : String | provenance | | | Test.java:1879:53:1879:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1879:53:1879:68 | (...)... : String | Test.java:1879:24:1879:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1879:53:1879:68 | (...)... : String | Test.java:1879:24:1879:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1879:61:1879:68 | source(...) : Object | Test.java:1879:53:1879:68 | (...)... : String | provenance | | -| Test.java:1880:10:1880:11 | in : FluentIterable [] : String | Test.java:1880:10:1880:26 | unmodifiable(...) : FluentIterable [] : String | provenance | MaD:551 | +| Test.java:1880:10:1880:11 | in : FluentIterable [] : String | Test.java:1880:10:1880:26 | unmodifiable(...) : FluentIterable [] : String | provenance | MaD:555 | | Test.java:1880:10:1880:26 | unmodifiable(...) : FluentIterable [] : String | Test.java:1881:20:1881:22 | out : FluentIterable [] : String | provenance | | | Test.java:1881:20:1881:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1881:20:1881:22 | out : FluentIterable [] : String | Test.java:1881:9:1881:23 | getElement(...) | provenance | MaD:3 | | Test.java:1886:24:1886:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1887:10:1887:11 | in : FluentIterable [] : String | provenance | | | Test.java:1886:53:1886:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1886:53:1886:68 | (...)... : String | Test.java:1886:24:1886:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1886:53:1886:68 | (...)... : String | Test.java:1886:24:1886:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1886:61:1886:68 | source(...) : Object | Test.java:1886:53:1886:68 | (...)... : String | provenance | | -| Test.java:1887:10:1887:11 | in : FluentIterable [] : String | Test.java:1887:10:1887:31 | zip(...) : FluentIterable [] : String | provenance | MaD:553 | +| Test.java:1887:10:1887:11 | in : FluentIterable [] : String | Test.java:1887:10:1887:31 | zip(...) : FluentIterable [] : String | provenance | MaD:557 | | Test.java:1887:10:1887:31 | zip(...) : FluentIterable [] : String | Test.java:1888:20:1888:22 | out : FluentIterable [] : String | provenance | | | Test.java:1888:20:1888:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1888:20:1888:22 | out : FluentIterable [] : String | Test.java:1888:9:1888:23 | getElement(...) | provenance | MaD:3 | | Test.java:1893:18:1893:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1895:23:1895:24 | in : FluentIterable [] : String | provenance | | | Test.java:1893:47:1893:62 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1893:47:1893:62 | (...)... : String | Test.java:1893:18:1893:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1893:47:1893:62 | (...)... : String | Test.java:1893:18:1893:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1893:55:1893:62 | source(...) : Object | Test.java:1893:47:1893:62 | (...)... : String | provenance | | | Test.java:1895:10:1895:25 | zip(...) : FluentIterable [] : String | Test.java:1896:20:1896:22 | out : FluentIterable [] : String | provenance | | -| Test.java:1895:23:1895:24 | in : FluentIterable [] : String | Test.java:1895:10:1895:25 | zip(...) : FluentIterable [] : String | provenance | MaD:552 | +| Test.java:1895:23:1895:24 | in : FluentIterable [] : String | Test.java:1895:10:1895:25 | zip(...) : FluentIterable [] : String | provenance | MaD:556 | | Test.java:1896:20:1896:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1896:20:1896:22 | out : FluentIterable [] : String | Test.java:1896:9:1896:23 | getElement(...) | provenance | MaD:3 | | Test.java:1901:24:1901:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:1902:10:1902:11 | in : FluentIterable [] : String | provenance | | | Test.java:1901:53:1901:68 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:1901:53:1901:68 | (...)... : String | Test.java:1901:24:1901:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:1901:53:1901:68 | (...)... : String | Test.java:1901:24:1901:69 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:1901:61:1901:68 | source(...) : Object | Test.java:1901:53:1901:68 | (...)... : String | provenance | | -| Test.java:1902:10:1902:11 | in : FluentIterable [] : String | Test.java:1902:10:1902:47 | zip(...) : FluentIterable [] : String | provenance | MaD:555 | +| Test.java:1902:10:1902:11 | in : FluentIterable [] : String | Test.java:1902:10:1902:47 | zip(...) : FluentIterable [] : String | provenance | MaD:559 | | Test.java:1902:10:1902:47 | zip(...) : FluentIterable [] : String | Test.java:1903:20:1903:22 | out : FluentIterable [] : String | provenance | | | Test.java:1903:20:1903:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1903:20:1903:22 | out : FluentIterable [] : String | Test.java:1903:9:1903:23 | getElement(...) | provenance | MaD:3 | @@ -3550,172 +3551,167 @@ edges | Test.java:1908:39:1908:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:1908:39:1908:54 | (...)... : String | Test.java:1908:18:1908:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:1908:47:1908:54 | source(...) : Object | Test.java:1908:39:1908:54 | (...)... : String | provenance | | -| Test.java:1910:10:1910:41 | new ..[] { .. } : Iterable[] [[], ] : String | Test.java:1910:10:1910:41 | zip(...) : FluentIterable [] : String | provenance | MaD:554 | +| Test.java:1910:10:1910:41 | new ..[] { .. } : Iterable[] [[], ] : String | Test.java:1910:10:1910:41 | zip(...) : FluentIterable [] : String | provenance | MaD:558 | | Test.java:1910:10:1910:41 | zip(...) : FluentIterable [] : String | Test.java:1911:20:1911:22 | out : FluentIterable [] : String | provenance | | | Test.java:1910:23:1910:24 | in : Vector [] : String | Test.java:1910:10:1910:41 | new ..[] { .. } : Iterable[] [[], ] : String | provenance | | | Test.java:1911:20:1911:22 | out : FluentIterable [] : String | Test.java:230:19:230:32 | it : FluentIterable [] : String | provenance | | | Test.java:1911:20:1911:22 | out : FluentIterable [] : String | Test.java:1911:9:1911:23 | getElement(...) | provenance | MaD:3 | | Test.java:1916:23:1916:56 | newMVMWithMapKey(...) : MultiValueMap [] : String | Test.java:1917:10:1917:11 | in : MultiValueMap [] : String | provenance | | | Test.java:1916:40:1916:55 | (...)... : String | Test.java:279:47:279:51 | key : String | provenance | | -| Test.java:1916:40:1916:55 | (...)... : String | Test.java:1916:23:1916:56 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:19 | -| Test.java:1916:40:1916:55 | (...)... : String | Test.java:1916:23:1916:56 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:736 | -| Test.java:1916:40:1916:55 | (...)... : String | Test.java:1916:23:1916:56 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:779 | +| Test.java:1916:40:1916:55 | (...)... : String | Test.java:1916:23:1916:56 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:20 | +| Test.java:1916:40:1916:55 | (...)... : String | Test.java:1916:23:1916:56 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:740 | +| Test.java:1916:40:1916:55 | (...)... : String | Test.java:1916:23:1916:56 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:783 | | Test.java:1916:48:1916:55 | source(...) : Object | Test.java:1916:40:1916:55 | (...)... : String | provenance | | -| Test.java:1917:10:1917:11 | in : MultiValueMap [] : String | Test.java:1917:10:1917:22 | entrySet(...) : Set [, ] : String | provenance | MaD:15 | -| Test.java:1917:10:1917:11 | in : MultiValueMap [] : String | Test.java:1917:10:1917:22 | entrySet(...) : Set [, ] : String | provenance | MaD:556 | +| Test.java:1917:10:1917:11 | in : MultiValueMap [] : String | Test.java:1917:10:1917:22 | entrySet(...) : Set [, ] : String | provenance | MaD:16 | +| Test.java:1917:10:1917:11 | in : MultiValueMap [] : String | Test.java:1917:10:1917:22 | entrySet(...) : Set [, ] : String | provenance | MaD:560 | | Test.java:1917:10:1917:22 | entrySet(...) : Set [, ] : String | Test.java:1918:39:1918:41 | out : Set [, ] : String | provenance | | | Test.java:1918:28:1918:42 | getElement(...) : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | -| Test.java:1918:28:1918:42 | getElement(...) : Entry [] : String | Test.java:1918:9:1918:43 | getMapKeyFromEntry(...) | provenance | MaD:9 | +| Test.java:1918:28:1918:42 | getElement(...) : Entry [] : String | Test.java:1918:9:1918:43 | getMapKeyFromEntry(...) | provenance | MaD:10 | | Test.java:1918:39:1918:41 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | provenance | | | Test.java:1918:39:1918:41 | out : Set [, ] : String | Test.java:1918:28:1918:42 | getElement(...) : Entry [] : String | provenance | MaD:3 | | Test.java:1923:13:1923:55 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | Test.java:1924:10:1924:11 | in : PatriciaTrie [] : String | provenance | | | Test.java:1923:39:1923:54 | (...)... : String | Test.java:288:49:288:58 | key : String | provenance | | -| Test.java:1923:39:1923:54 | (...)... : String | Test.java:1923:13:1923:55 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:19 | -| Test.java:1923:39:1923:54 | (...)... : String | Test.java:1923:13:1923:55 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:779 | +| Test.java:1923:39:1923:54 | (...)... : String | Test.java:1923:13:1923:55 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:20 | +| Test.java:1923:39:1923:54 | (...)... : String | Test.java:1923:13:1923:55 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:783 | | Test.java:1923:47:1923:54 | source(...) : Object | Test.java:1923:39:1923:54 | (...)... : String | provenance | | -| Test.java:1924:10:1924:11 | in : PatriciaTrie [] : String | Test.java:1924:10:1924:22 | entrySet(...) : Set [, ] : String | provenance | MaD:556 | +| Test.java:1924:10:1924:11 | in : PatriciaTrie [] : String | Test.java:1924:10:1924:22 | entrySet(...) : Set [, ] : String | provenance | MaD:560 | | Test.java:1924:10:1924:22 | entrySet(...) : Set [, ] : String | Test.java:1925:39:1925:41 | out : Set [, ] : String | provenance | | | Test.java:1925:28:1925:42 | getElement(...) : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | -| Test.java:1925:28:1925:42 | getElement(...) : Entry [] : String | Test.java:1925:9:1925:43 | getMapKeyFromEntry(...) | provenance | MaD:9 | +| Test.java:1925:28:1925:42 | getElement(...) : Entry [] : String | Test.java:1925:9:1925:43 | getMapKeyFromEntry(...) | provenance | MaD:10 | | Test.java:1925:39:1925:41 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | provenance | | | Test.java:1925:39:1925:41 | out : Set [, ] : String | Test.java:1925:28:1925:42 | getElement(...) : Entry [] : String | provenance | MaD:3 | | Test.java:1930:30:1930:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | Test.java:1931:10:1931:11 | in : MultiValueMap [] : String | provenance | | | Test.java:1930:47:1930:62 | (...)... : String | Test.java:279:47:279:51 | key : String | provenance | | -| Test.java:1930:47:1930:62 | (...)... : String | Test.java:1930:30:1930:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:19 | -| Test.java:1930:47:1930:62 | (...)... : String | Test.java:1930:30:1930:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:736 | -| Test.java:1930:47:1930:62 | (...)... : String | Test.java:1930:30:1930:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:779 | +| Test.java:1930:47:1930:62 | (...)... : String | Test.java:1930:30:1930:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:20 | +| Test.java:1930:47:1930:62 | (...)... : String | Test.java:1930:30:1930:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:740 | +| Test.java:1930:47:1930:62 | (...)... : String | Test.java:1930:30:1930:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:783 | | Test.java:1930:55:1930:62 | source(...) : Object | Test.java:1930:47:1930:62 | (...)... : String | provenance | | -| Test.java:1931:10:1931:11 | in : MultiValueMap [] : String | Test.java:1931:10:1931:22 | entrySet(...) : Set [, ] : String | provenance | MaD:15 | -| Test.java:1931:10:1931:11 | in : MultiValueMap [] : String | Test.java:1931:10:1931:22 | entrySet(...) : Set [, ] : String | provenance | MaD:556 | +| Test.java:1931:10:1931:11 | in : MultiValueMap [] : String | Test.java:1931:10:1931:22 | entrySet(...) : Set [, ] : String | provenance | MaD:16 | +| Test.java:1931:10:1931:11 | in : MultiValueMap [] : String | Test.java:1931:10:1931:22 | entrySet(...) : Set [, ] : String | provenance | MaD:560 | | Test.java:1931:10:1931:22 | entrySet(...) : Set [, ] : String | Test.java:1932:39:1932:41 | out : Set [, ] : String | provenance | | | Test.java:1932:28:1932:42 | getElement(...) : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | -| Test.java:1932:28:1932:42 | getElement(...) : Entry [] : String | Test.java:1932:9:1932:43 | getMapKeyFromEntry(...) | provenance | MaD:9 | +| Test.java:1932:28:1932:42 | getElement(...) : Entry [] : String | Test.java:1932:9:1932:43 | getMapKeyFromEntry(...) | provenance | MaD:10 | | Test.java:1932:39:1932:41 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | provenance | | | Test.java:1932:39:1932:41 | out : Set [, ] : String | Test.java:1932:28:1932:42 | getElement(...) : Entry [] : String | provenance | MaD:3 | | Test.java:1937:23:1937:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:1938:10:1938:11 | in : MultiValueMap [] : String | provenance | | | Test.java:1937:42:1937:57 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:1937:42:1937:57 | (...)... : String | Test.java:1937:23:1937:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:1937:42:1937:57 | (...)... : String | Test.java:1937:23:1937:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:1937:42:1937:57 | (...)... : String | Test.java:1937:23:1937:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:1937:42:1937:57 | (...)... : String | Test.java:1937:23:1937:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:1937:50:1937:57 | source(...) : Object | Test.java:1937:42:1937:57 | (...)... : String | provenance | | -| Test.java:1938:10:1938:11 | in : MultiValueMap [] : String | Test.java:1938:10:1938:22 | entrySet(...) : Set [, ] : String | provenance | MaD:16 | -| Test.java:1938:10:1938:11 | in : MultiValueMap [] : String | Test.java:1938:10:1938:22 | entrySet(...) : Set [, ] : String | provenance | MaD:557 | +| Test.java:1938:10:1938:11 | in : MultiValueMap [] : String | Test.java:1938:10:1938:22 | entrySet(...) : Set [, ] : String | provenance | MaD:17 | +| Test.java:1938:10:1938:11 | in : MultiValueMap [] : String | Test.java:1938:10:1938:22 | entrySet(...) : Set [, ] : String | provenance | MaD:561 | | Test.java:1938:10:1938:22 | entrySet(...) : Set [, ] : String | Test.java:1939:41:1939:43 | out : Set [, ] : String | provenance | | | Test.java:1939:30:1939:44 | getElement(...) : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | -| Test.java:1939:30:1939:44 | getElement(...) : Entry [] : String | Test.java:1939:9:1939:45 | getMapValueFromEntry(...) | provenance | MaD:10 | +| Test.java:1939:30:1939:44 | getElement(...) : Entry [] : String | Test.java:1939:9:1939:45 | getMapValueFromEntry(...) | provenance | MaD:11 | | Test.java:1939:41:1939:43 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | provenance | | | Test.java:1939:41:1939:43 | out : Set [, ] : String | Test.java:1939:30:1939:44 | getElement(...) : Entry [] : String | provenance | MaD:3 | | Test.java:1944:13:1944:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:1945:10:1945:11 | in : PatriciaTrie [] : String | provenance | | | Test.java:1944:41:1944:56 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | -| Test.java:1944:41:1944:56 | (...)... : String | Test.java:1944:13:1944:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:20 | -| Test.java:1944:41:1944:56 | (...)... : String | Test.java:1944:13:1944:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:780 | +| Test.java:1944:41:1944:56 | (...)... : String | Test.java:1944:13:1944:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:21 | +| Test.java:1944:41:1944:56 | (...)... : String | Test.java:1944:13:1944:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:784 | | Test.java:1944:49:1944:56 | source(...) : Object | Test.java:1944:41:1944:56 | (...)... : String | provenance | | -| Test.java:1945:10:1945:11 | in : PatriciaTrie [] : String | Test.java:1945:10:1945:22 | entrySet(...) : Set [, ] : String | provenance | MaD:557 | +| Test.java:1945:10:1945:11 | in : PatriciaTrie [] : String | Test.java:1945:10:1945:22 | entrySet(...) : Set [, ] : String | provenance | MaD:561 | | Test.java:1945:10:1945:22 | entrySet(...) : Set [, ] : String | Test.java:1946:41:1946:43 | out : Set [, ] : String | provenance | | | Test.java:1946:30:1946:44 | getElement(...) : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | -| Test.java:1946:30:1946:44 | getElement(...) : Entry [] : String | Test.java:1946:9:1946:45 | getMapValueFromEntry(...) | provenance | MaD:10 | +| Test.java:1946:30:1946:44 | getElement(...) : Entry [] : String | Test.java:1946:9:1946:45 | getMapValueFromEntry(...) | provenance | MaD:11 | | Test.java:1946:41:1946:43 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | provenance | | | Test.java:1946:41:1946:43 | out : Set [, ] : String | Test.java:1946:30:1946:44 | getElement(...) : Entry [] : String | provenance | MaD:3 | | Test.java:1951:30:1951:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:1952:10:1952:11 | in : MultiValueMap [] : String | provenance | | | Test.java:1951:49:1951:64 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:1951:49:1951:64 | (...)... : String | Test.java:1951:30:1951:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:1951:49:1951:64 | (...)... : String | Test.java:1951:30:1951:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:1951:49:1951:64 | (...)... : String | Test.java:1951:30:1951:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:1951:49:1951:64 | (...)... : String | Test.java:1951:30:1951:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:1951:57:1951:64 | source(...) : Object | Test.java:1951:49:1951:64 | (...)... : String | provenance | | -| Test.java:1952:10:1952:11 | in : MultiValueMap [] : String | Test.java:1952:10:1952:22 | entrySet(...) : Set [, ] : String | provenance | MaD:16 | -| Test.java:1952:10:1952:11 | in : MultiValueMap [] : String | Test.java:1952:10:1952:22 | entrySet(...) : Set [, ] : String | provenance | MaD:557 | +| Test.java:1952:10:1952:11 | in : MultiValueMap [] : String | Test.java:1952:10:1952:22 | entrySet(...) : Set [, ] : String | provenance | MaD:17 | +| Test.java:1952:10:1952:11 | in : MultiValueMap [] : String | Test.java:1952:10:1952:22 | entrySet(...) : Set [, ] : String | provenance | MaD:561 | | Test.java:1952:10:1952:22 | entrySet(...) : Set [, ] : String | Test.java:1953:41:1953:43 | out : Set [, ] : String | provenance | | | Test.java:1953:30:1953:44 | getElement(...) : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | -| Test.java:1953:30:1953:44 | getElement(...) : Entry [] : String | Test.java:1953:9:1953:45 | getMapValueFromEntry(...) | provenance | MaD:10 | +| Test.java:1953:30:1953:44 | getElement(...) : Entry [] : String | Test.java:1953:9:1953:45 | getMapValueFromEntry(...) | provenance | MaD:11 | | Test.java:1953:41:1953:43 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | provenance | | | Test.java:1953:41:1953:43 | out : Set [, ] : String | Test.java:1953:30:1953:44 | getElement(...) : Entry [] : String | provenance | MaD:3 | | Test.java:1958:18:1958:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:1959:10:1959:11 | in : MultiValueMap [] : String | provenance | | | Test.java:1958:37:1958:52 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:1958:37:1958:52 | (...)... : String | Test.java:1958:18:1958:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:1958:37:1958:52 | (...)... : String | Test.java:1958:18:1958:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:1958:37:1958:52 | (...)... : String | Test.java:1958:18:1958:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:1958:37:1958:52 | (...)... : String | Test.java:1958:18:1958:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:1958:45:1958:52 | source(...) : Object | Test.java:1958:37:1958:52 | (...)... : String | provenance | | -| Test.java:1959:10:1959:11 | in : MultiValueMap [] : String | Test.java:1959:10:1959:21 | get(...) : String | provenance | MaD:17 | -| Test.java:1959:10:1959:11 | in : MultiValueMap [] : String | Test.java:1959:10:1959:21 | get(...) : String | provenance | MaD:558 | +| Test.java:1959:10:1959:11 | in : MultiValueMap [] : String | Test.java:1959:10:1959:21 | get(...) : String | provenance | MaD:739 | | Test.java:1959:10:1959:21 | get(...) : String | Test.java:1960:9:1960:11 | out | provenance | | | Test.java:1965:13:1965:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:1966:10:1966:11 | in : PatriciaTrie [] : String | provenance | | | Test.java:1965:41:1965:56 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | -| Test.java:1965:41:1965:56 | (...)... : String | Test.java:1965:13:1965:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:20 | -| Test.java:1965:41:1965:56 | (...)... : String | Test.java:1965:13:1965:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:780 | +| Test.java:1965:41:1965:56 | (...)... : String | Test.java:1965:13:1965:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:21 | +| Test.java:1965:41:1965:56 | (...)... : String | Test.java:1965:13:1965:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:784 | | Test.java:1965:49:1965:56 | source(...) : Object | Test.java:1965:41:1965:56 | (...)... : String | provenance | | -| Test.java:1966:10:1966:11 | in : PatriciaTrie [] : String | Test.java:1966:10:1966:21 | get(...) : String | provenance | MaD:558 | +| Test.java:1966:10:1966:11 | in : PatriciaTrie [] : String | Test.java:1966:10:1966:21 | get(...) : String | provenance | MaD:562 | | Test.java:1966:10:1966:21 | get(...) : String | Test.java:1967:9:1967:11 | out | provenance | | | Test.java:1972:30:1972:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:1973:10:1973:11 | in : MultiValueMap [] : String | provenance | | | Test.java:1972:49:1972:64 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:1972:49:1972:64 | (...)... : String | Test.java:1972:30:1972:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:1972:49:1972:64 | (...)... : String | Test.java:1972:30:1972:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:1972:49:1972:64 | (...)... : String | Test.java:1972:30:1972:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:1972:49:1972:64 | (...)... : String | Test.java:1972:30:1972:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:1972:57:1972:64 | source(...) : Object | Test.java:1972:49:1972:64 | (...)... : String | provenance | | -| Test.java:1973:10:1973:11 | in : MultiValueMap [] : String | Test.java:1973:10:1973:21 | get(...) : String | provenance | MaD:17 | -| Test.java:1973:10:1973:11 | in : MultiValueMap [] : String | Test.java:1973:10:1973:21 | get(...) : String | provenance | MaD:558 | +| Test.java:1973:10:1973:11 | in : MultiValueMap [] : String | Test.java:1973:10:1973:21 | get(...) : String | provenance | MaD:18 | +| Test.java:1973:10:1973:11 | in : MultiValueMap [] : String | Test.java:1973:10:1973:21 | get(...) : String | provenance | MaD:562 | | Test.java:1973:10:1973:21 | get(...) : String | Test.java:1974:9:1974:11 | out | provenance | | | Test.java:1979:13:1979:55 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | Test.java:1980:10:1980:11 | in : PatriciaTrie [] : String | provenance | | | Test.java:1979:39:1979:54 | (...)... : String | Test.java:288:49:288:58 | key : String | provenance | | -| Test.java:1979:39:1979:54 | (...)... : String | Test.java:1979:13:1979:55 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:19 | -| Test.java:1979:39:1979:54 | (...)... : String | Test.java:1979:13:1979:55 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:779 | +| Test.java:1979:39:1979:54 | (...)... : String | Test.java:1979:13:1979:55 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:20 | +| Test.java:1979:39:1979:54 | (...)... : String | Test.java:1979:13:1979:55 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:783 | | Test.java:1979:47:1979:54 | source(...) : Object | Test.java:1979:39:1979:54 | (...)... : String | provenance | | -| Test.java:1980:10:1980:11 | in : PatriciaTrie [] : String | Test.java:1980:10:1980:20 | keySet(...) : Set [] : String | provenance | MaD:559 | +| Test.java:1980:10:1980:11 | in : PatriciaTrie [] : String | Test.java:1980:10:1980:20 | keySet(...) : Set [] : String | provenance | MaD:563 | | Test.java:1980:10:1980:20 | keySet(...) : Set [] : String | Test.java:1981:20:1981:22 | out : Set [] : String | provenance | | | Test.java:1981:20:1981:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | | Test.java:1981:20:1981:22 | out : Set [] : String | Test.java:1981:9:1981:23 | getElement(...) | provenance | MaD:3 | | Test.java:1986:30:1986:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | Test.java:1987:10:1987:11 | in : MultiValueMap [] : String | provenance | | | Test.java:1986:47:1986:62 | (...)... : String | Test.java:279:47:279:51 | key : String | provenance | | -| Test.java:1986:47:1986:62 | (...)... : String | Test.java:1986:30:1986:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:19 | -| Test.java:1986:47:1986:62 | (...)... : String | Test.java:1986:30:1986:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:736 | -| Test.java:1986:47:1986:62 | (...)... : String | Test.java:1986:30:1986:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:779 | +| Test.java:1986:47:1986:62 | (...)... : String | Test.java:1986:30:1986:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:20 | +| Test.java:1986:47:1986:62 | (...)... : String | Test.java:1986:30:1986:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:740 | +| Test.java:1986:47:1986:62 | (...)... : String | Test.java:1986:30:1986:63 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:783 | | Test.java:1986:55:1986:62 | source(...) : Object | Test.java:1986:47:1986:62 | (...)... : String | provenance | | -| Test.java:1987:10:1987:11 | in : MultiValueMap [] : String | Test.java:1987:10:1987:20 | keySet(...) : Set [] : String | provenance | MaD:18 | -| Test.java:1987:10:1987:11 | in : MultiValueMap [] : String | Test.java:1987:10:1987:20 | keySet(...) : Set [] : String | provenance | MaD:559 | +| Test.java:1987:10:1987:11 | in : MultiValueMap [] : String | Test.java:1987:10:1987:20 | keySet(...) : Set [] : String | provenance | MaD:19 | +| Test.java:1987:10:1987:11 | in : MultiValueMap [] : String | Test.java:1987:10:1987:20 | keySet(...) : Set [] : String | provenance | MaD:563 | | Test.java:1987:10:1987:20 | keySet(...) : Set [] : String | Test.java:1988:20:1988:22 | out : Set [] : String | provenance | | | Test.java:1988:20:1988:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | | Test.java:1988:20:1988:22 | out : Set [] : String | Test.java:1988:9:1988:23 | getElement(...) | provenance | MaD:3 | | Test.java:1993:18:1993:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:1994:10:1994:11 | in : MultiValueMap [] : String | provenance | | | Test.java:1993:37:1993:52 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:1993:37:1993:52 | (...)... : String | Test.java:1993:18:1993:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:1993:37:1993:52 | (...)... : String | Test.java:1993:18:1993:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:1993:37:1993:52 | (...)... : String | Test.java:1993:18:1993:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:1993:37:1993:52 | (...)... : String | Test.java:1993:18:1993:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:1993:45:1993:52 | source(...) : Object | Test.java:1993:37:1993:52 | (...)... : String | provenance | | -| Test.java:1994:10:1994:11 | in : MultiValueMap [] : String | Test.java:1994:10:1994:24 | remove(...) : String | provenance | MaD:24 | -| Test.java:1994:10:1994:11 | in : MultiValueMap [] : String | Test.java:1994:10:1994:24 | remove(...) : String | provenance | MaD:560 | +| Test.java:1994:10:1994:11 | in : MultiValueMap [] : String | Test.java:1994:10:1994:24 | remove(...) : String | provenance | MaD:25 | +| Test.java:1994:10:1994:11 | in : MultiValueMap [] : String | Test.java:1994:10:1994:24 | remove(...) : String | provenance | MaD:564 | | Test.java:1994:10:1994:24 | remove(...) : String | Test.java:1995:9:1995:11 | out | provenance | | | Test.java:2000:13:2000:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:2001:10:2001:11 | in : PatriciaTrie [] : String | provenance | | | Test.java:2000:41:2000:56 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | -| Test.java:2000:41:2000:56 | (...)... : String | Test.java:2000:13:2000:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:20 | -| Test.java:2000:41:2000:56 | (...)... : String | Test.java:2000:13:2000:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:780 | +| Test.java:2000:41:2000:56 | (...)... : String | Test.java:2000:13:2000:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:21 | +| Test.java:2000:41:2000:56 | (...)... : String | Test.java:2000:13:2000:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:784 | | Test.java:2000:49:2000:56 | source(...) : Object | Test.java:2000:41:2000:56 | (...)... : String | provenance | | -| Test.java:2001:10:2001:11 | in : PatriciaTrie [] : String | Test.java:2001:10:2001:24 | remove(...) : String | provenance | MaD:560 | +| Test.java:2001:10:2001:11 | in : PatriciaTrie [] : String | Test.java:2001:10:2001:24 | remove(...) : String | provenance | MaD:564 | | Test.java:2001:10:2001:24 | remove(...) : String | Test.java:2002:9:2002:11 | out | provenance | | | Test.java:2007:30:2007:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:2008:10:2008:11 | in : MultiValueMap [] : String | provenance | | | Test.java:2007:49:2007:64 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:2007:49:2007:64 | (...)... : String | Test.java:2007:30:2007:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:2007:49:2007:64 | (...)... : String | Test.java:2007:30:2007:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:2007:49:2007:64 | (...)... : String | Test.java:2007:30:2007:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:2007:49:2007:64 | (...)... : String | Test.java:2007:30:2007:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:2007:57:2007:64 | source(...) : Object | Test.java:2007:49:2007:64 | (...)... : String | provenance | | -| Test.java:2008:10:2008:11 | in : MultiValueMap [] : String | Test.java:2008:10:2008:24 | remove(...) : String | provenance | MaD:24 | -| Test.java:2008:10:2008:11 | in : MultiValueMap [] : String | Test.java:2008:10:2008:24 | remove(...) : String | provenance | MaD:560 | +| Test.java:2008:10:2008:11 | in : MultiValueMap [] : String | Test.java:2008:10:2008:24 | remove(...) : String | provenance | MaD:25 | +| Test.java:2008:10:2008:11 | in : MultiValueMap [] : String | Test.java:2008:10:2008:24 | remove(...) : String | provenance | MaD:564 | | Test.java:2008:10:2008:24 | remove(...) : String | Test.java:2009:9:2009:11 | out | provenance | | | Test.java:2014:17:2014:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | Test.java:2015:10:2015:11 | in : TreeBidiMap [] : String | provenance | | | Test.java:2014:44:2014:59 | (...)... : String | Test.java:306:77:306:83 | value : String | provenance | | -| Test.java:2014:44:2014:59 | (...)... : String | Test.java:2014:17:2014:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:20 | -| Test.java:2014:44:2014:59 | (...)... : String | Test.java:2014:17:2014:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:780 | +| Test.java:2014:44:2014:59 | (...)... : String | Test.java:2014:17:2014:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:21 | +| Test.java:2014:44:2014:59 | (...)... : String | Test.java:2014:17:2014:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:784 | | Test.java:2014:52:2014:59 | source(...) : Object | Test.java:2014:44:2014:59 | (...)... : String | provenance | | -| Test.java:2015:10:2015:11 | in : TreeBidiMap [] : String | Test.java:2015:10:2015:20 | values(...) : Set [] : String | provenance | MaD:25 | -| Test.java:2015:10:2015:11 | in : TreeBidiMap [] : String | Test.java:2015:10:2015:20 | values(...) : Set [] : String | provenance | MaD:561 | +| Test.java:2015:10:2015:11 | in : TreeBidiMap [] : String | Test.java:2015:10:2015:20 | values(...) : Set [] : String | provenance | MaD:26 | +| Test.java:2015:10:2015:11 | in : TreeBidiMap [] : String | Test.java:2015:10:2015:20 | values(...) : Set [] : String | provenance | MaD:565 | | Test.java:2015:10:2015:20 | values(...) : Set [] : String | Test.java:2016:20:2016:22 | out : Set [] : String | provenance | | | Test.java:2016:20:2016:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | | Test.java:2016:20:2016:22 | out : Set [] : String | Test.java:2016:9:2016:23 | getElement(...) | provenance | MaD:3 | | Test.java:2021:23:2021:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:2022:10:2022:11 | in : MultiValueMap [, ] : String | provenance | | | Test.java:2021:23:2021:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:2022:10:2022:11 | in : MultiValueMap [] : String | provenance | | | Test.java:2021:42:2021:57 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:2021:42:2021:57 | (...)... : String | Test.java:2021:23:2021:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:737 | -| Test.java:2021:42:2021:57 | (...)... : String | Test.java:2021:23:2021:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:2021:42:2021:57 | (...)... : String | Test.java:2021:23:2021:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:2021:42:2021:57 | (...)... : String | Test.java:2021:23:2021:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:741 | +| Test.java:2021:42:2021:57 | (...)... : String | Test.java:2021:23:2021:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:2021:42:2021:57 | (...)... : String | Test.java:2021:23:2021:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:2021:50:2021:57 | source(...) : Object | Test.java:2021:42:2021:57 | (...)... : String | provenance | | -| Test.java:2022:10:2022:11 | in : MultiValueMap [, ] : String | Test.java:2022:10:2022:20 | values(...) : Collection [] : String | provenance | MaD:359 | -| Test.java:2022:10:2022:11 | in : MultiValueMap [, ] : String | Test.java:2022:10:2022:20 | values(...) : Collection [] : String | provenance | MaD:738 | -| Test.java:2022:10:2022:11 | in : MultiValueMap [] : String | Test.java:2022:10:2022:20 | values(...) : Collection [] : Object | provenance | MaD:359 | -| Test.java:2022:10:2022:11 | in : MultiValueMap [] : String | Test.java:2022:10:2022:20 | values(...) : Collection [] : Object | provenance | MaD:738 | -| Test.java:2022:10:2022:11 | in : MultiValueMap [] : String | Test.java:2022:10:2022:20 | values(...) : Collection [] : String | provenance | MaD:25 | -| Test.java:2022:10:2022:11 | in : MultiValueMap [] : String | Test.java:2022:10:2022:20 | values(...) : Collection [] : String | provenance | MaD:561 | +| Test.java:2022:10:2022:11 | in : MultiValueMap [, ] : String | Test.java:2022:10:2022:20 | values(...) : Collection [] : String | provenance | MaD:362 | +| Test.java:2022:10:2022:11 | in : MultiValueMap [] : String | Test.java:2022:10:2022:20 | values(...) : Collection [] : Object | provenance | MaD:362 | | Test.java:2022:10:2022:20 | values(...) : Collection [] : Object | Test.java:2023:20:2023:22 | out : Collection [] : Object | provenance | | | Test.java:2022:10:2022:20 | values(...) : Collection [] : String | Test.java:2023:20:2023:22 | out : Collection [] : String | provenance | | | Test.java:2023:20:2023:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | @@ -3725,14 +3721,12 @@ edges | Test.java:2028:18:2028:53 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:2029:10:2029:11 | in : MultiValueMap [, ] : String | provenance | | | Test.java:2028:18:2028:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:2029:10:2029:11 | in : MultiValueMap [] : String | provenance | | | Test.java:2028:37:2028:52 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:2028:37:2028:52 | (...)... : String | Test.java:2028:18:2028:53 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:737 | -| Test.java:2028:37:2028:52 | (...)... : String | Test.java:2028:18:2028:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:2028:37:2028:52 | (...)... : String | Test.java:2028:18:2028:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:2028:37:2028:52 | (...)... : String | Test.java:2028:18:2028:53 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:741 | +| Test.java:2028:37:2028:52 | (...)... : String | Test.java:2028:18:2028:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:2028:37:2028:52 | (...)... : String | Test.java:2028:18:2028:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:2028:45:2028:52 | source(...) : Object | Test.java:2028:37:2028:52 | (...)... : String | provenance | | -| Test.java:2029:10:2029:11 | in : MultiValueMap [, ] : String | Test.java:2029:10:2029:20 | values(...) : Collection [] : String | provenance | MaD:738 | -| Test.java:2029:10:2029:11 | in : MultiValueMap [] : String | Test.java:2029:10:2029:20 | values(...) : Collection [] : Object | provenance | MaD:738 | -| Test.java:2029:10:2029:11 | in : MultiValueMap [] : String | Test.java:2029:10:2029:20 | values(...) : Collection [] : String | provenance | MaD:25 | -| Test.java:2029:10:2029:11 | in : MultiValueMap [] : String | Test.java:2029:10:2029:20 | values(...) : Collection [] : String | provenance | MaD:561 | +| Test.java:2029:10:2029:11 | in : MultiValueMap [, ] : String | Test.java:2029:10:2029:20 | values(...) : Collection [] : String | provenance | MaD:742 | +| Test.java:2029:10:2029:11 | in : MultiValueMap [] : String | Test.java:2029:10:2029:20 | values(...) : Collection [] : Object | provenance | MaD:742 | | Test.java:2029:10:2029:20 | values(...) : Collection [] : Object | Test.java:2030:20:2030:22 | out : Collection [] : Object | provenance | | | Test.java:2029:10:2029:20 | values(...) : Collection [] : String | Test.java:2030:20:2030:22 | out : Collection [] : String | provenance | | | Test.java:2030:20:2030:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | @@ -3741,84 +3735,84 @@ edges | Test.java:2030:20:2030:22 | out : Collection [] : String | Test.java:2030:9:2030:23 | getElement(...) | provenance | MaD:3 | | Test.java:2035:13:2035:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:2036:10:2036:11 | in : PatriciaTrie [] : String | provenance | | | Test.java:2035:41:2035:56 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | -| Test.java:2035:41:2035:56 | (...)... : String | Test.java:2035:13:2035:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:20 | -| Test.java:2035:41:2035:56 | (...)... : String | Test.java:2035:13:2035:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:780 | +| Test.java:2035:41:2035:56 | (...)... : String | Test.java:2035:13:2035:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:21 | +| Test.java:2035:41:2035:56 | (...)... : String | Test.java:2035:13:2035:57 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:784 | | Test.java:2035:49:2035:56 | source(...) : Object | Test.java:2035:41:2035:56 | (...)... : String | provenance | | -| Test.java:2036:10:2036:11 | in : PatriciaTrie [] : String | Test.java:2036:10:2036:20 | values(...) : Collection [] : String | provenance | MaD:561 | +| Test.java:2036:10:2036:11 | in : PatriciaTrie [] : String | Test.java:2036:10:2036:20 | values(...) : Collection [] : String | provenance | MaD:565 | | Test.java:2036:10:2036:20 | values(...) : Collection [] : String | Test.java:2037:20:2037:22 | out : Collection [] : String | provenance | | | Test.java:2037:20:2037:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:2037:20:2037:22 | out : Collection [] : String | Test.java:2037:9:2037:23 | getElement(...) | provenance | MaD:3 | | Test.java:2042:30:2042:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:2043:10:2043:11 | in : MultiValueMap [] : String | provenance | | | Test.java:2042:49:2042:64 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:2042:49:2042:64 | (...)... : String | Test.java:2042:30:2042:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:2042:49:2042:64 | (...)... : String | Test.java:2042:30:2042:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:2042:49:2042:64 | (...)... : String | Test.java:2042:30:2042:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:2042:49:2042:64 | (...)... : String | Test.java:2042:30:2042:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:2042:57:2042:64 | source(...) : Object | Test.java:2042:49:2042:64 | (...)... : String | provenance | | -| Test.java:2043:10:2043:11 | in : MultiValueMap [] : String | Test.java:2043:10:2043:20 | values(...) : Collection [] : String | provenance | MaD:25 | -| Test.java:2043:10:2043:11 | in : MultiValueMap [] : String | Test.java:2043:10:2043:20 | values(...) : Collection [] : String | provenance | MaD:561 | +| Test.java:2043:10:2043:11 | in : MultiValueMap [] : String | Test.java:2043:10:2043:20 | values(...) : Collection [] : String | provenance | MaD:26 | +| Test.java:2043:10:2043:11 | in : MultiValueMap [] : String | Test.java:2043:10:2043:20 | values(...) : Collection [] : String | provenance | MaD:565 | | Test.java:2043:10:2043:20 | values(...) : Collection [] : String | Test.java:2044:20:2044:22 | out : Collection [] : String | provenance | | | Test.java:2044:20:2044:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:2044:20:2044:22 | out : Collection [] : String | Test.java:2044:9:2044:23 | getElement(...) | provenance | MaD:3 | | Test.java:2049:20:2049:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | Test.java:2050:10:2050:11 | in : TreeBidiMap [] : String | provenance | | | Test.java:2049:45:2049:60 | (...)... : String | Test.java:287:75:287:79 | key : String | provenance | | -| Test.java:2049:45:2049:60 | (...)... : String | Test.java:2049:20:2049:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:19 | -| Test.java:2049:45:2049:60 | (...)... : String | Test.java:2049:20:2049:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:779 | +| Test.java:2049:45:2049:60 | (...)... : String | Test.java:2049:20:2049:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:20 | +| Test.java:2049:45:2049:60 | (...)... : String | Test.java:2049:20:2049:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:783 | | Test.java:2049:53:2049:60 | source(...) : Object | Test.java:2049:45:2049:60 | (...)... : String | provenance | | -| Test.java:2050:10:2050:11 | in : TreeBidiMap [] : String | Test.java:2050:10:2050:25 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:562 | +| Test.java:2050:10:2050:11 | in : TreeBidiMap [] : String | Test.java:2050:10:2050:25 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:566 | | Test.java:2050:10:2050:25 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:2051:20:2051:22 | out : OrderedMapIterator [] : String | provenance | | | Test.java:2051:20:2051:22 | out : OrderedMapIterator [] : String | Test.java:231:19:231:32 | it : OrderedMapIterator [] : String | provenance | | -| Test.java:2051:20:2051:22 | out : OrderedMapIterator [] : String | Test.java:2051:9:2051:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2051:20:2051:22 | out : OrderedMapIterator [] : String | Test.java:2051:9:2051:23 | getElement(...) | provenance | MaD:7 | | Test.java:2056:21:2056:60 | newHashedMapWithMapKey(...) : HashedMap [] : String | Test.java:2057:10:2057:11 | in : HashedMap [] : String | provenance | | | Test.java:2056:44:2056:59 | (...)... : String | Test.java:275:49:275:53 | key : String | provenance | | -| Test.java:2056:44:2056:59 | (...)... : String | Test.java:2056:21:2056:60 | newHashedMapWithMapKey(...) : HashedMap [] : String | provenance | MaD:19 | -| Test.java:2056:44:2056:59 | (...)... : String | Test.java:2056:21:2056:60 | newHashedMapWithMapKey(...) : HashedMap [] : String | provenance | MaD:779 | +| Test.java:2056:44:2056:59 | (...)... : String | Test.java:2056:21:2056:60 | newHashedMapWithMapKey(...) : HashedMap [] : String | provenance | MaD:20 | +| Test.java:2056:44:2056:59 | (...)... : String | Test.java:2056:21:2056:60 | newHashedMapWithMapKey(...) : HashedMap [] : String | provenance | MaD:783 | | Test.java:2056:52:2056:59 | source(...) : Object | Test.java:2056:44:2056:59 | (...)... : String | provenance | | -| Test.java:2057:10:2057:11 | in : HashedMap [] : String | Test.java:2057:10:2057:25 | mapIterator(...) : MapIterator [] : String | provenance | MaD:562 | +| Test.java:2057:10:2057:11 | in : HashedMap [] : String | Test.java:2057:10:2057:25 | mapIterator(...) : MapIterator [] : String | provenance | MaD:566 | | Test.java:2057:10:2057:25 | mapIterator(...) : MapIterator [] : String | Test.java:2058:20:2058:22 | out : MapIterator [] : String | provenance | | | Test.java:2058:20:2058:22 | out : MapIterator [] : String | Test.java:231:19:231:32 | it : MapIterator [] : String | provenance | | -| Test.java:2058:20:2058:22 | out : MapIterator [] : String | Test.java:2058:9:2058:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2058:20:2058:22 | out : MapIterator [] : String | Test.java:2058:9:2058:23 | getElement(...) | provenance | MaD:7 | | Test.java:2063:29:2063:62 | newMVMWithMapKey(...) : MultiValueMap [] : String | Test.java:2064:10:2064:11 | in : MultiValueMap [] : String | provenance | | | Test.java:2063:46:2063:61 | (...)... : String | Test.java:279:47:279:51 | key : String | provenance | | -| Test.java:2063:46:2063:61 | (...)... : String | Test.java:2063:29:2063:62 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:19 | -| Test.java:2063:46:2063:61 | (...)... : String | Test.java:2063:29:2063:62 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:736 | -| Test.java:2063:46:2063:61 | (...)... : String | Test.java:2063:29:2063:62 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:779 | +| Test.java:2063:46:2063:61 | (...)... : String | Test.java:2063:29:2063:62 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:20 | +| Test.java:2063:46:2063:61 | (...)... : String | Test.java:2063:29:2063:62 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:740 | +| Test.java:2063:46:2063:61 | (...)... : String | Test.java:2063:29:2063:62 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:783 | | Test.java:2063:54:2063:61 | source(...) : Object | Test.java:2063:46:2063:61 | (...)... : String | provenance | | -| Test.java:2064:10:2064:11 | in : MultiValueMap [] : String | Test.java:2064:10:2064:25 | mapIterator(...) : MapIterator [] : String | provenance | MaD:562 | +| Test.java:2064:10:2064:11 | in : MultiValueMap [] : String | Test.java:2064:10:2064:25 | mapIterator(...) : MapIterator [] : String | provenance | MaD:566 | | Test.java:2064:10:2064:25 | mapIterator(...) : MapIterator [] : String | Test.java:2065:20:2065:22 | out : MapIterator [] : String | provenance | | | Test.java:2065:20:2065:22 | out : MapIterator [] : String | Test.java:231:19:231:32 | it : MapIterator [] : String | provenance | | -| Test.java:2065:20:2065:22 | out : MapIterator [] : String | Test.java:2065:9:2065:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2065:20:2065:22 | out : MapIterator [] : String | Test.java:2065:9:2065:23 | getElement(...) | provenance | MaD:7 | | Test.java:2070:20:2070:63 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | Test.java:2071:10:2071:11 | in : TreeBidiMap [] : String | provenance | | | Test.java:2070:47:2070:62 | (...)... : String | Test.java:306:77:306:83 | value : String | provenance | | -| Test.java:2070:47:2070:62 | (...)... : String | Test.java:2070:20:2070:63 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:20 | -| Test.java:2070:47:2070:62 | (...)... : String | Test.java:2070:20:2070:63 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:780 | +| Test.java:2070:47:2070:62 | (...)... : String | Test.java:2070:20:2070:63 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:21 | +| Test.java:2070:47:2070:62 | (...)... : String | Test.java:2070:20:2070:63 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:784 | | Test.java:2070:55:2070:62 | source(...) : Object | Test.java:2070:47:2070:62 | (...)... : String | provenance | | -| Test.java:2071:10:2071:11 | in : TreeBidiMap [] : String | Test.java:2071:10:2071:25 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:563 | +| Test.java:2071:10:2071:11 | in : TreeBidiMap [] : String | Test.java:2071:10:2071:25 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:567 | | Test.java:2071:10:2071:25 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:2072:21:2072:23 | out : OrderedMapIterator [] : String | provenance | | | Test.java:2072:21:2072:23 | out : OrderedMapIterator [] : String | Test.java:246:20:246:47 | mapIterator : OrderedMapIterator [] : String | provenance | | -| Test.java:2072:21:2072:23 | out : OrderedMapIterator [] : String | Test.java:2072:9:2072:24 | getMapValue(...) | provenance | MaD:673 | +| Test.java:2072:21:2072:23 | out : OrderedMapIterator [] : String | Test.java:2072:9:2072:24 | getMapValue(...) | provenance | MaD:677 | | Test.java:2077:21:2077:62 | newHashedMapWithMapValue(...) : HashedMap [] : String | Test.java:2078:10:2078:11 | in : HashedMap [] : String | provenance | | | Test.java:2077:46:2077:61 | (...)... : String | Test.java:293:51:293:57 | value : String | provenance | | -| Test.java:2077:46:2077:61 | (...)... : String | Test.java:2077:21:2077:62 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:20 | -| Test.java:2077:46:2077:61 | (...)... : String | Test.java:2077:21:2077:62 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:780 | +| Test.java:2077:46:2077:61 | (...)... : String | Test.java:2077:21:2077:62 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:21 | +| Test.java:2077:46:2077:61 | (...)... : String | Test.java:2077:21:2077:62 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:784 | | Test.java:2077:54:2077:61 | source(...) : Object | Test.java:2077:46:2077:61 | (...)... : String | provenance | | -| Test.java:2078:10:2078:11 | in : HashedMap [] : String | Test.java:2078:10:2078:25 | mapIterator(...) : MapIterator [] : String | provenance | MaD:563 | +| Test.java:2078:10:2078:11 | in : HashedMap [] : String | Test.java:2078:10:2078:25 | mapIterator(...) : MapIterator [] : String | provenance | MaD:567 | | Test.java:2078:10:2078:25 | mapIterator(...) : MapIterator [] : String | Test.java:2079:21:2079:23 | out : MapIterator [] : String | provenance | | | Test.java:2079:21:2079:23 | out : MapIterator [] : String | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | provenance | | -| Test.java:2079:21:2079:23 | out : MapIterator [] : String | Test.java:2079:9:2079:24 | getMapValue(...) | provenance | MaD:673 | +| Test.java:2079:21:2079:23 | out : MapIterator [] : String | Test.java:2079:9:2079:24 | getMapValue(...) | provenance | MaD:677 | | Test.java:2084:29:2084:64 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:2085:10:2085:11 | in : MultiValueMap [] : String | provenance | | | Test.java:2084:48:2084:63 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:2084:48:2084:63 | (...)... : String | Test.java:2084:29:2084:64 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:2084:48:2084:63 | (...)... : String | Test.java:2084:29:2084:64 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:2084:48:2084:63 | (...)... : String | Test.java:2084:29:2084:64 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:2084:48:2084:63 | (...)... : String | Test.java:2084:29:2084:64 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:2084:56:2084:63 | source(...) : Object | Test.java:2084:48:2084:63 | (...)... : String | provenance | | -| Test.java:2085:10:2085:11 | in : MultiValueMap [] : String | Test.java:2085:10:2085:25 | mapIterator(...) : MapIterator [] : String | provenance | MaD:563 | +| Test.java:2085:10:2085:11 | in : MultiValueMap [] : String | Test.java:2085:10:2085:25 | mapIterator(...) : MapIterator [] : String | provenance | MaD:567 | | Test.java:2085:10:2085:25 | mapIterator(...) : MapIterator [] : String | Test.java:2086:21:2086:23 | out : MapIterator [] : String | provenance | | | Test.java:2086:21:2086:23 | out : MapIterator [] : String | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | provenance | | -| Test.java:2086:21:2086:23 | out : MapIterator [] : String | Test.java:2086:9:2086:24 | getMapValue(...) | provenance | MaD:673 | +| Test.java:2086:21:2086:23 | out : MapIterator [] : String | Test.java:2086:9:2086:24 | getMapValue(...) | provenance | MaD:677 | | Test.java:2091:18:2091:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2092:40:2092:41 | in : Vector [] : String | provenance | | | Test.java:2091:39:2091:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:2091:39:2091:54 | (...)... : String | Test.java:2091:18:2091:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2091:47:2091:54 | source(...) : Object | Test.java:2091:39:2091:54 | (...)... : String | provenance | | | Test.java:2092:10:2092:46 | boundedIterable(...) : Iterable [] : String | Test.java:2093:20:2093:22 | out : Iterable [] : String | provenance | | -| Test.java:2092:40:2092:41 | in : Vector [] : String | Test.java:2092:10:2092:46 | boundedIterable(...) : Iterable [] : String | provenance | MaD:564 | +| Test.java:2092:40:2092:41 | in : Vector [] : String | Test.java:2092:10:2092:46 | boundedIterable(...) : Iterable [] : String | provenance | MaD:568 | | Test.java:2093:20:2093:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2093:20:2093:22 | out : Iterable [] : String | Test.java:2093:9:2093:23 | getElement(...) | provenance | MaD:3 | | Test.java:2098:18:2098:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2099:40:2099:41 | in : Vector [] : String | provenance | | @@ -3826,7 +3820,7 @@ edges | Test.java:2098:39:2098:54 | (...)... : String | Test.java:2098:18:2098:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2098:47:2098:54 | source(...) : Object | Test.java:2098:39:2098:54 | (...)... : String | provenance | | | Test.java:2099:10:2099:58 | chainedIterable(...) : Iterable [] : String | Test.java:2100:20:2100:22 | out : Iterable [] : String | provenance | | -| Test.java:2099:40:2099:41 | in : Vector [] : String | Test.java:2099:10:2099:58 | chainedIterable(...) : Iterable [] : String | provenance | MaD:565 | +| Test.java:2099:40:2099:41 | in : Vector [] : String | Test.java:2099:10:2099:58 | chainedIterable(...) : Iterable [] : String | provenance | MaD:569 | | Test.java:2100:20:2100:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2100:20:2100:22 | out : Iterable [] : String | Test.java:2100:9:2100:23 | getElement(...) | provenance | MaD:3 | | Test.java:2105:18:2105:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2106:40:2106:41 | in : Vector [] : String | provenance | | @@ -3834,7 +3828,7 @@ edges | Test.java:2105:39:2105:54 | (...)... : String | Test.java:2105:18:2105:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2105:47:2105:54 | source(...) : Object | Test.java:2105:39:2105:54 | (...)... : String | provenance | | | Test.java:2106:10:2106:48 | chainedIterable(...) : Iterable [] : String | Test.java:2107:20:2107:22 | out : Iterable [] : String | provenance | | -| Test.java:2106:40:2106:41 | in : Vector [] : String | Test.java:2106:10:2106:48 | chainedIterable(...) : Iterable [] : String | provenance | MaD:565 | +| Test.java:2106:40:2106:41 | in : Vector [] : String | Test.java:2106:10:2106:48 | chainedIterable(...) : Iterable [] : String | provenance | MaD:569 | | Test.java:2107:20:2107:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2107:20:2107:22 | out : Iterable [] : String | Test.java:2107:9:2107:23 | getElement(...) | provenance | MaD:3 | | Test.java:2112:18:2112:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2113:46:2113:47 | in : Vector [] : String | provenance | | @@ -3842,7 +3836,7 @@ edges | Test.java:2112:39:2112:54 | (...)... : String | Test.java:2112:18:2112:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2112:47:2112:54 | source(...) : Object | Test.java:2112:39:2112:54 | (...)... : String | provenance | | | Test.java:2113:10:2113:48 | chainedIterable(...) : Iterable [] : String | Test.java:2114:20:2114:22 | out : Iterable [] : String | provenance | | -| Test.java:2113:46:2113:47 | in : Vector [] : String | Test.java:2113:10:2113:48 | chainedIterable(...) : Iterable [] : String | provenance | MaD:566 | +| Test.java:2113:46:2113:47 | in : Vector [] : String | Test.java:2113:10:2113:48 | chainedIterable(...) : Iterable [] : String | provenance | MaD:570 | | Test.java:2114:20:2114:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2114:20:2114:22 | out : Iterable [] : String | Test.java:2114:9:2114:23 | getElement(...) | provenance | MaD:3 | | Test.java:2119:18:2119:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2120:40:2120:41 | in : Vector [] : String | provenance | | @@ -3850,7 +3844,7 @@ edges | Test.java:2119:39:2119:54 | (...)... : String | Test.java:2119:18:2119:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2119:47:2119:54 | source(...) : Object | Test.java:2119:39:2119:54 | (...)... : String | provenance | | | Test.java:2120:10:2120:54 | chainedIterable(...) : Iterable [] : String | Test.java:2121:20:2121:22 | out : Iterable [] : String | provenance | | -| Test.java:2120:40:2120:41 | in : Vector [] : String | Test.java:2120:10:2120:54 | chainedIterable(...) : Iterable [] : String | provenance | MaD:567 | +| Test.java:2120:40:2120:41 | in : Vector [] : String | Test.java:2120:10:2120:54 | chainedIterable(...) : Iterable [] : String | provenance | MaD:571 | | Test.java:2121:20:2121:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2121:20:2121:22 | out : Iterable [] : String | Test.java:2121:9:2121:23 | getElement(...) | provenance | MaD:3 | | Test.java:2126:18:2126:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2127:46:2127:47 | in : Vector [] : String | provenance | | @@ -3858,7 +3852,7 @@ edges | Test.java:2126:39:2126:54 | (...)... : String | Test.java:2126:18:2126:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2126:47:2126:54 | source(...) : Object | Test.java:2126:39:2126:54 | (...)... : String | provenance | | | Test.java:2127:10:2127:54 | chainedIterable(...) : Iterable [] : String | Test.java:2128:20:2128:22 | out : Iterable [] : String | provenance | | -| Test.java:2127:46:2127:47 | in : Vector [] : String | Test.java:2127:10:2127:54 | chainedIterable(...) : Iterable [] : String | provenance | MaD:568 | +| Test.java:2127:46:2127:47 | in : Vector [] : String | Test.java:2127:10:2127:54 | chainedIterable(...) : Iterable [] : String | provenance | MaD:572 | | Test.java:2128:20:2128:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2128:20:2128:22 | out : Iterable [] : String | Test.java:2128:9:2128:23 | getElement(...) | provenance | MaD:3 | | Test.java:2133:18:2133:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2134:52:2134:53 | in : Vector [] : String | provenance | | @@ -3866,7 +3860,7 @@ edges | Test.java:2133:39:2133:54 | (...)... : String | Test.java:2133:18:2133:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2133:47:2133:54 | source(...) : Object | Test.java:2133:39:2133:54 | (...)... : String | provenance | | | Test.java:2134:10:2134:54 | chainedIterable(...) : Iterable [] : String | Test.java:2135:20:2135:22 | out : Iterable [] : String | provenance | | -| Test.java:2134:52:2134:53 | in : Vector [] : String | Test.java:2134:10:2134:54 | chainedIterable(...) : Iterable [] : String | provenance | MaD:569 | +| Test.java:2134:52:2134:53 | in : Vector [] : String | Test.java:2134:10:2134:54 | chainedIterable(...) : Iterable [] : String | provenance | MaD:573 | | Test.java:2135:20:2135:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2135:20:2135:22 | out : Iterable [] : String | Test.java:2135:9:2135:23 | getElement(...) | provenance | MaD:3 | | Test.java:2140:18:2140:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2141:40:2141:41 | in : Vector [] : String | provenance | | @@ -3874,7 +3868,7 @@ edges | Test.java:2140:39:2140:54 | (...)... : String | Test.java:2140:18:2140:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2140:47:2140:54 | source(...) : Object | Test.java:2140:39:2140:54 | (...)... : String | provenance | | | Test.java:2141:10:2141:60 | chainedIterable(...) : Iterable [] : String | Test.java:2142:20:2142:22 | out : Iterable [] : String | provenance | | -| Test.java:2141:40:2141:41 | in : Vector [] : String | Test.java:2141:10:2141:60 | chainedIterable(...) : Iterable [] : String | provenance | MaD:570 | +| Test.java:2141:40:2141:41 | in : Vector [] : String | Test.java:2141:10:2141:60 | chainedIterable(...) : Iterable [] : String | provenance | MaD:574 | | Test.java:2142:20:2142:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2142:20:2142:22 | out : Iterable [] : String | Test.java:2142:9:2142:23 | getElement(...) | provenance | MaD:3 | | Test.java:2147:18:2147:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2148:46:2148:47 | in : Vector [] : String | provenance | | @@ -3882,7 +3876,7 @@ edges | Test.java:2147:39:2147:54 | (...)... : String | Test.java:2147:18:2147:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2147:47:2147:54 | source(...) : Object | Test.java:2147:39:2147:54 | (...)... : String | provenance | | | Test.java:2148:10:2148:60 | chainedIterable(...) : Iterable [] : String | Test.java:2149:20:2149:22 | out : Iterable [] : String | provenance | | -| Test.java:2148:46:2148:47 | in : Vector [] : String | Test.java:2148:10:2148:60 | chainedIterable(...) : Iterable [] : String | provenance | MaD:571 | +| Test.java:2148:46:2148:47 | in : Vector [] : String | Test.java:2148:10:2148:60 | chainedIterable(...) : Iterable [] : String | provenance | MaD:575 | | Test.java:2149:20:2149:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2149:20:2149:22 | out : Iterable [] : String | Test.java:2149:9:2149:23 | getElement(...) | provenance | MaD:3 | | Test.java:2154:18:2154:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2155:52:2155:53 | in : Vector [] : String | provenance | | @@ -3890,7 +3884,7 @@ edges | Test.java:2154:39:2154:54 | (...)... : String | Test.java:2154:18:2154:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2154:47:2154:54 | source(...) : Object | Test.java:2154:39:2154:54 | (...)... : String | provenance | | | Test.java:2155:10:2155:60 | chainedIterable(...) : Iterable [] : String | Test.java:2156:20:2156:22 | out : Iterable [] : String | provenance | | -| Test.java:2155:52:2155:53 | in : Vector [] : String | Test.java:2155:10:2155:60 | chainedIterable(...) : Iterable [] : String | provenance | MaD:572 | +| Test.java:2155:52:2155:53 | in : Vector [] : String | Test.java:2155:10:2155:60 | chainedIterable(...) : Iterable [] : String | provenance | MaD:576 | | Test.java:2156:20:2156:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2156:20:2156:22 | out : Iterable [] : String | Test.java:2156:9:2156:23 | getElement(...) | provenance | MaD:3 | | Test.java:2161:18:2161:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2162:58:2162:59 | in : Vector [] : String | provenance | | @@ -3898,7 +3892,7 @@ edges | Test.java:2161:39:2161:54 | (...)... : String | Test.java:2161:18:2161:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2161:47:2161:54 | source(...) : Object | Test.java:2161:39:2161:54 | (...)... : String | provenance | | | Test.java:2162:10:2162:60 | chainedIterable(...) : Iterable [] : String | Test.java:2163:20:2163:22 | out : Iterable [] : String | provenance | | -| Test.java:2162:58:2162:59 | in : Vector [] : String | Test.java:2162:10:2162:60 | chainedIterable(...) : Iterable [] : String | provenance | MaD:573 | +| Test.java:2162:58:2162:59 | in : Vector [] : String | Test.java:2162:10:2162:60 | chainedIterable(...) : Iterable [] : String | provenance | MaD:577 | | Test.java:2163:20:2163:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2163:20:2163:22 | out : Iterable [] : String | Test.java:2163:9:2163:23 | getElement(...) | provenance | MaD:3 | | Test.java:2168:18:2168:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2169:47:2169:48 | in : Vector [] : String | provenance | | @@ -3906,7 +3900,7 @@ edges | Test.java:2168:39:2168:54 | (...)... : String | Test.java:2168:18:2168:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2168:47:2168:54 | source(...) : Object | Test.java:2168:39:2168:54 | (...)... : String | provenance | | | Test.java:2169:10:2169:55 | collatedIterable(...) : Iterable [] : String | Test.java:2170:20:2170:22 | out : Iterable [] : String | provenance | | -| Test.java:2169:47:2169:48 | in : Vector [] : String | Test.java:2169:10:2169:55 | collatedIterable(...) : Iterable [] : String | provenance | MaD:574 | +| Test.java:2169:47:2169:48 | in : Vector [] : String | Test.java:2169:10:2169:55 | collatedIterable(...) : Iterable [] : String | provenance | MaD:578 | | Test.java:2170:20:2170:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2170:20:2170:22 | out : Iterable [] : String | Test.java:2170:9:2170:23 | getElement(...) | provenance | MaD:3 | | Test.java:2175:18:2175:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2176:53:2176:54 | in : Vector [] : String | provenance | | @@ -3914,7 +3908,7 @@ edges | Test.java:2175:39:2175:54 | (...)... : String | Test.java:2175:18:2175:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2175:47:2175:54 | source(...) : Object | Test.java:2175:39:2175:54 | (...)... : String | provenance | | | Test.java:2176:10:2176:55 | collatedIterable(...) : Iterable [] : String | Test.java:2177:20:2177:22 | out : Iterable [] : String | provenance | | -| Test.java:2176:53:2176:54 | in : Vector [] : String | Test.java:2176:10:2176:55 | collatedIterable(...) : Iterable [] : String | provenance | MaD:575 | +| Test.java:2176:53:2176:54 | in : Vector [] : String | Test.java:2176:10:2176:55 | collatedIterable(...) : Iterable [] : String | provenance | MaD:579 | | Test.java:2177:20:2177:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2177:20:2177:22 | out : Iterable [] : String | Test.java:2177:9:2177:23 | getElement(...) | provenance | MaD:3 | | Test.java:2182:18:2182:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2183:41:2183:42 | in : Vector [] : String | provenance | | @@ -3922,7 +3916,7 @@ edges | Test.java:2182:39:2182:54 | (...)... : String | Test.java:2182:18:2182:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2182:47:2182:54 | source(...) : Object | Test.java:2182:39:2182:54 | (...)... : String | provenance | | | Test.java:2183:10:2183:49 | collatedIterable(...) : Iterable [] : String | Test.java:2184:20:2184:22 | out : Iterable [] : String | provenance | | -| Test.java:2183:41:2183:42 | in : Vector [] : String | Test.java:2183:10:2183:49 | collatedIterable(...) : Iterable [] : String | provenance | MaD:576 | +| Test.java:2183:41:2183:42 | in : Vector [] : String | Test.java:2183:10:2183:49 | collatedIterable(...) : Iterable [] : String | provenance | MaD:580 | | Test.java:2184:20:2184:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2184:20:2184:22 | out : Iterable [] : String | Test.java:2184:9:2184:23 | getElement(...) | provenance | MaD:3 | | Test.java:2189:18:2189:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2190:47:2190:48 | in : Vector [] : String | provenance | | @@ -3930,19 +3924,19 @@ edges | Test.java:2189:39:2189:54 | (...)... : String | Test.java:2189:18:2189:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2189:47:2189:54 | source(...) : Object | Test.java:2189:39:2189:54 | (...)... : String | provenance | | | Test.java:2190:10:2190:49 | collatedIterable(...) : Iterable [] : String | Test.java:2191:20:2191:22 | out : Iterable [] : String | provenance | | -| Test.java:2190:47:2190:48 | in : Vector [] : String | Test.java:2190:10:2190:49 | collatedIterable(...) : Iterable [] : String | provenance | MaD:577 | +| Test.java:2190:47:2190:48 | in : Vector [] : String | Test.java:2190:10:2190:49 | collatedIterable(...) : Iterable [] : String | provenance | MaD:581 | | Test.java:2191:20:2191:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2191:20:2191:22 | out : Iterable [] : String | Test.java:2191:9:2191:23 | getElement(...) | provenance | MaD:3 | | Test.java:2196:18:2196:35 | (...)... : Iterable | Test.java:2197:36:2197:37 | in : Iterable | provenance | | | Test.java:2196:28:2196:35 | source(...) : Object | Test.java:2196:18:2196:35 | (...)... : Iterable | provenance | | | Test.java:2197:10:2197:38 | emptyIfNull(...) : Iterable | Test.java:2198:9:2198:11 | out | provenance | | -| Test.java:2197:36:2197:37 | in : Iterable | Test.java:2197:10:2197:38 | emptyIfNull(...) : Iterable | provenance | MaD:578 | +| Test.java:2197:36:2197:37 | in : Iterable | Test.java:2197:10:2197:38 | emptyIfNull(...) : Iterable | provenance | MaD:582 | | Test.java:2203:18:2203:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2204:41:2204:42 | in : Vector [] : String | provenance | | | Test.java:2203:39:2203:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:2203:39:2203:54 | (...)... : String | Test.java:2203:18:2203:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2203:47:2203:54 | source(...) : Object | Test.java:2203:39:2203:54 | (...)... : String | provenance | | | Test.java:2204:10:2204:49 | filteredIterable(...) : Iterable [] : String | Test.java:2205:20:2205:22 | out : Iterable [] : String | provenance | | -| Test.java:2204:41:2204:42 | in : Vector [] : String | Test.java:2204:10:2204:49 | filteredIterable(...) : Iterable [] : String | provenance | MaD:579 | +| Test.java:2204:41:2204:42 | in : Vector [] : String | Test.java:2204:10:2204:49 | filteredIterable(...) : Iterable [] : String | provenance | MaD:583 | | Test.java:2205:20:2205:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2205:20:2205:22 | out : Iterable [] : String | Test.java:2205:9:2205:23 | getElement(...) | provenance | MaD:3 | | Test.java:2210:18:2210:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2211:29:2211:30 | in : Vector [] : String | provenance | | @@ -3950,31 +3944,31 @@ edges | Test.java:2210:39:2210:54 | (...)... : String | Test.java:2210:18:2210:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2210:47:2210:54 | source(...) : Object | Test.java:2210:39:2210:54 | (...)... : String | provenance | | | Test.java:2211:10:2211:37 | find(...) : String | Test.java:2212:9:2212:11 | out | provenance | | -| Test.java:2211:29:2211:30 | in : Vector [] : String | Test.java:2211:10:2211:37 | find(...) : String | provenance | MaD:580 | +| Test.java:2211:29:2211:30 | in : Vector [] : String | Test.java:2211:10:2211:37 | find(...) : String | provenance | MaD:584 | | Test.java:2217:18:2217:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2218:30:2218:31 | in : Vector [] : String | provenance | | | Test.java:2217:39:2217:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:2217:39:2217:54 | (...)... : String | Test.java:2217:18:2217:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2217:47:2217:54 | source(...) : Object | Test.java:2217:39:2217:54 | (...)... : String | provenance | | | Test.java:2218:10:2218:32 | first(...) : String | Test.java:2219:9:2219:11 | out | provenance | | -| Test.java:2218:30:2218:31 | in : Vector [] : String | Test.java:2218:10:2218:32 | first(...) : String | provenance | MaD:581 | +| Test.java:2218:30:2218:31 | in : Vector [] : String | Test.java:2218:10:2218:32 | first(...) : String | provenance | MaD:585 | | Test.java:2224:18:2224:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2225:39:2225:40 | in : Vector [] : String | provenance | | | Test.java:2224:39:2224:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:2224:39:2224:54 | (...)... : String | Test.java:2224:18:2224:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2224:47:2224:54 | source(...) : Object | Test.java:2224:39:2224:54 | (...)... : String | provenance | | | Test.java:2225:10:2225:47 | forEachButLast(...) : String | Test.java:2226:9:2226:11 | out | provenance | | -| Test.java:2225:39:2225:40 | in : Vector [] : String | Test.java:2225:10:2225:47 | forEachButLast(...) : String | provenance | MaD:582 | +| Test.java:2225:39:2225:40 | in : Vector [] : String | Test.java:2225:10:2225:47 | forEachButLast(...) : String | provenance | MaD:586 | | Test.java:2231:18:2231:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2232:28:2232:29 | in : Vector [] : String | provenance | | | Test.java:2231:39:2231:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:2231:39:2231:54 | (...)... : String | Test.java:2231:18:2231:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2231:47:2231:54 | source(...) : Object | Test.java:2231:39:2231:54 | (...)... : String | provenance | | | Test.java:2232:10:2232:33 | get(...) : String | Test.java:2233:9:2233:11 | out | provenance | | -| Test.java:2232:28:2232:29 | in : Vector [] : String | Test.java:2232:10:2232:33 | get(...) : String | provenance | MaD:583 | +| Test.java:2232:28:2232:29 | in : Vector [] : String | Test.java:2232:10:2232:33 | get(...) : String | provenance | MaD:587 | | Test.java:2238:18:2238:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2239:40:2239:41 | in : Vector [] : String | provenance | | | Test.java:2238:39:2238:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:2238:39:2238:54 | (...)... : String | Test.java:2238:18:2238:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2238:47:2238:54 | source(...) : Object | Test.java:2238:39:2238:54 | (...)... : String | provenance | | | Test.java:2239:10:2239:42 | loopingIterable(...) : Iterable [] : String | Test.java:2240:20:2240:22 | out : Iterable [] : String | provenance | | -| Test.java:2239:40:2239:41 | in : Vector [] : String | Test.java:2239:10:2239:42 | loopingIterable(...) : Iterable [] : String | provenance | MaD:584 | +| Test.java:2239:40:2239:41 | in : Vector [] : String | Test.java:2239:10:2239:42 | loopingIterable(...) : Iterable [] : String | provenance | MaD:588 | | Test.java:2240:20:2240:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2240:20:2240:22 | out : Iterable [] : String | Test.java:2240:9:2240:23 | getElement(...) | provenance | MaD:3 | | Test.java:2245:18:2245:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2246:34:2246:35 | in : Vector [] : String | provenance | | @@ -3982,7 +3976,7 @@ edges | Test.java:2245:39:2245:54 | (...)... : String | Test.java:2245:18:2245:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2245:47:2245:54 | source(...) : Object | Test.java:2245:39:2245:54 | (...)... : String | provenance | | | Test.java:2246:10:2246:85 | partition(...) : List [, ] : String | Test.java:2247:41:2247:43 | out : List [, ] : String | provenance | | -| Test.java:2246:34:2246:35 | in : Vector [] : String | Test.java:2246:10:2246:85 | partition(...) : List [, ] : String | provenance | MaD:585 | +| Test.java:2246:34:2246:35 | in : Vector [] : String | Test.java:2246:10:2246:85 | partition(...) : List [, ] : String | provenance | MaD:589 | | Test.java:2247:20:2247:44 | (...)... : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2247:20:2247:44 | (...)... : Iterable [] : String | Test.java:2247:9:2247:45 | getElement(...) | provenance | MaD:3 | | Test.java:2247:30:2247:44 | getElement(...) : Object [] : String | Test.java:2247:20:2247:44 | (...)... : Iterable [] : String | provenance | | @@ -3993,7 +3987,7 @@ edges | Test.java:2252:39:2252:54 | (...)... : String | Test.java:2252:18:2252:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2252:47:2252:54 | source(...) : Object | Test.java:2252:39:2252:54 | (...)... : String | provenance | | | Test.java:2253:10:2253:70 | partition(...) : List [, ] : String | Test.java:2254:41:2254:43 | out : List [, ] : String | provenance | | -| Test.java:2253:34:2253:35 | in : Vector [] : String | Test.java:2253:10:2253:70 | partition(...) : List [, ] : String | provenance | MaD:585 | +| Test.java:2253:34:2253:35 | in : Vector [] : String | Test.java:2253:10:2253:70 | partition(...) : List [, ] : String | provenance | MaD:589 | | Test.java:2254:20:2254:44 | (...)... : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2254:20:2254:44 | (...)... : Iterable [] : String | Test.java:2254:9:2254:45 | getElement(...) | provenance | MaD:3 | | Test.java:2254:30:2254:44 | getElement(...) : Object [] : String | Test.java:2254:20:2254:44 | (...)... : Iterable [] : String | provenance | | @@ -4004,7 +3998,7 @@ edges | Test.java:2259:39:2259:54 | (...)... : String | Test.java:2259:18:2259:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2259:47:2259:54 | source(...) : Object | Test.java:2259:39:2259:54 | (...)... : String | provenance | | | Test.java:2260:10:2260:70 | partition(...) : List [, ] : String | Test.java:2261:41:2261:43 | out : List [, ] : String | provenance | | -| Test.java:2260:34:2260:35 | in : Vector [] : String | Test.java:2260:10:2260:70 | partition(...) : List [, ] : String | provenance | MaD:585 | +| Test.java:2260:34:2260:35 | in : Vector [] : String | Test.java:2260:10:2260:70 | partition(...) : List [, ] : String | provenance | MaD:589 | | Test.java:2261:20:2261:44 | (...)... : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2261:20:2261:44 | (...)... : Iterable [] : String | Test.java:2261:9:2261:45 | getElement(...) | provenance | MaD:3 | | Test.java:2261:30:2261:44 | getElement(...) : Object [] : String | Test.java:2261:20:2261:44 | (...)... : Iterable [] : String | provenance | | @@ -4015,7 +4009,7 @@ edges | Test.java:2266:39:2266:54 | (...)... : String | Test.java:2266:18:2266:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2266:47:2266:54 | source(...) : Object | Test.java:2266:39:2266:54 | (...)... : String | provenance | | | Test.java:2267:10:2267:43 | reversedIterable(...) : Iterable [] : String | Test.java:2268:20:2268:22 | out : Iterable [] : String | provenance | | -| Test.java:2267:41:2267:42 | in : Vector [] : String | Test.java:2267:10:2267:43 | reversedIterable(...) : Iterable [] : String | provenance | MaD:586 | +| Test.java:2267:41:2267:42 | in : Vector [] : String | Test.java:2267:10:2267:43 | reversedIterable(...) : Iterable [] : String | provenance | MaD:590 | | Test.java:2268:20:2268:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2268:20:2268:22 | out : Iterable [] : String | Test.java:2268:9:2268:23 | getElement(...) | provenance | MaD:3 | | Test.java:2273:18:2273:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2274:41:2274:42 | in : Vector [] : String | provenance | | @@ -4023,7 +4017,7 @@ edges | Test.java:2273:39:2273:54 | (...)... : String | Test.java:2273:18:2273:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2273:47:2273:54 | source(...) : Object | Test.java:2273:39:2273:54 | (...)... : String | provenance | | | Test.java:2274:10:2274:47 | skippingIterable(...) : Iterable [] : String | Test.java:2275:20:2275:22 | out : Iterable [] : String | provenance | | -| Test.java:2274:41:2274:42 | in : Vector [] : String | Test.java:2274:10:2274:47 | skippingIterable(...) : Iterable [] : String | provenance | MaD:587 | +| Test.java:2274:41:2274:42 | in : Vector [] : String | Test.java:2274:10:2274:47 | skippingIterable(...) : Iterable [] : String | provenance | MaD:591 | | Test.java:2275:20:2275:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2275:20:2275:22 | out : Iterable [] : String | Test.java:2275:9:2275:23 | getElement(...) | provenance | MaD:3 | | Test.java:2280:18:2280:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2281:31:2281:32 | in : Vector [] : String | provenance | | @@ -4031,27 +4025,27 @@ edges | Test.java:2280:39:2280:54 | (...)... : String | Test.java:2280:18:2280:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2280:47:2280:54 | source(...) : Object | Test.java:2280:39:2280:54 | (...)... : String | provenance | | | Test.java:2281:10:2281:33 | toList(...) : List [] : String | Test.java:2282:20:2282:22 | out : List [] : String | provenance | | -| Test.java:2281:31:2281:32 | in : Vector [] : String | Test.java:2281:10:2281:33 | toList(...) : List [] : String | provenance | MaD:588 | +| Test.java:2281:31:2281:32 | in : Vector [] : String | Test.java:2281:10:2281:33 | toList(...) : List [] : String | provenance | MaD:592 | | Test.java:2282:20:2282:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2282:20:2282:22 | out : List [] : String | Test.java:2282:9:2282:23 | getElement(...) | provenance | MaD:3 | | Test.java:2287:16:2287:31 | (...)... : String | Test.java:2288:45:2288:46 | in : String | provenance | | | Test.java:2287:24:2287:31 | source(...) : Object | Test.java:2287:16:2287:31 | (...)... : String | provenance | | | Test.java:2288:10:2288:59 | toString(...) : String | Test.java:2289:9:2289:11 | out | provenance | | -| Test.java:2288:45:2288:46 | in : String | Test.java:2288:10:2288:59 | toString(...) : String | provenance | MaD:589 | +| Test.java:2288:45:2288:46 | in : String | Test.java:2288:10:2288:59 | toString(...) : String | provenance | MaD:593 | | Test.java:2294:16:2294:31 | (...)... : String | Test.java:2295:51:2295:52 | in : String | provenance | | | Test.java:2294:24:2294:31 | source(...) : Object | Test.java:2294:16:2294:31 | (...)... : String | provenance | | | Test.java:2295:10:2295:59 | toString(...) : String | Test.java:2296:9:2296:11 | out | provenance | | -| Test.java:2295:51:2295:52 | in : String | Test.java:2295:10:2295:59 | toString(...) : String | provenance | MaD:590 | +| Test.java:2295:51:2295:52 | in : String | Test.java:2295:10:2295:59 | toString(...) : String | provenance | MaD:594 | | Test.java:2301:16:2301:31 | (...)... : String | Test.java:2302:57:2302:58 | in : String | provenance | | | Test.java:2301:24:2301:31 | source(...) : Object | Test.java:2301:16:2301:31 | (...)... : String | provenance | | | Test.java:2302:10:2302:59 | toString(...) : String | Test.java:2303:9:2303:11 | out | provenance | | -| Test.java:2302:57:2302:58 | in : String | Test.java:2302:10:2302:59 | toString(...) : String | provenance | MaD:591 | +| Test.java:2302:57:2302:58 | in : String | Test.java:2302:10:2302:59 | toString(...) : String | provenance | MaD:595 | | Test.java:2308:18:2308:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2309:39:2309:40 | in : Vector [] : String | provenance | | | Test.java:2308:39:2308:54 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:2308:39:2308:54 | (...)... : String | Test.java:2308:18:2308:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2308:47:2308:54 | source(...) : Object | Test.java:2308:39:2308:54 | (...)... : String | provenance | | | Test.java:2309:10:2309:41 | uniqueIterable(...) : Iterable [] : String | Test.java:2310:20:2310:22 | out : Iterable [] : String | provenance | | -| Test.java:2309:39:2309:40 | in : Vector [] : String | Test.java:2309:10:2309:41 | uniqueIterable(...) : Iterable [] : String | provenance | MaD:592 | +| Test.java:2309:39:2309:40 | in : Vector [] : String | Test.java:2309:10:2309:41 | uniqueIterable(...) : Iterable [] : String | provenance | MaD:596 | | Test.java:2310:20:2310:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2310:20:2310:22 | out : Iterable [] : String | Test.java:2310:9:2310:23 | getElement(...) | provenance | MaD:3 | | Test.java:2315:18:2315:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2316:45:2316:46 | in : Vector [] : String | provenance | | @@ -4059,7 +4053,7 @@ edges | Test.java:2315:39:2315:54 | (...)... : String | Test.java:2315:18:2315:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2315:47:2315:54 | source(...) : Object | Test.java:2315:39:2315:54 | (...)... : String | provenance | | | Test.java:2316:10:2316:47 | unmodifiableIterable(...) : Iterable [] : String | Test.java:2317:20:2317:22 | out : Iterable [] : String | provenance | | -| Test.java:2316:45:2316:46 | in : Vector [] : String | Test.java:2316:10:2316:47 | unmodifiableIterable(...) : Iterable [] : String | provenance | MaD:593 | +| Test.java:2316:45:2316:46 | in : Vector [] : String | Test.java:2316:10:2316:47 | unmodifiableIterable(...) : Iterable [] : String | provenance | MaD:597 | | Test.java:2317:20:2317:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2317:20:2317:22 | out : Iterable [] : String | Test.java:2317:9:2317:23 | getElement(...) | provenance | MaD:3 | | Test.java:2322:18:2322:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2323:56:2323:57 | in : Vector [] : String | provenance | | @@ -4067,7 +4061,7 @@ edges | Test.java:2322:39:2322:54 | (...)... : String | Test.java:2322:18:2322:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2322:47:2322:54 | source(...) : Object | Test.java:2322:39:2322:54 | (...)... : String | provenance | | | Test.java:2323:10:2323:58 | zippingIterable(...) : Iterable [] : String | Test.java:2324:20:2324:22 | out : Iterable [] : String | provenance | | -| Test.java:2323:56:2323:57 | in : Vector [] : String | Test.java:2323:10:2323:58 | zippingIterable(...) : Iterable [] : String | provenance | MaD:594 | +| Test.java:2323:56:2323:57 | in : Vector [] : String | Test.java:2323:10:2323:58 | zippingIterable(...) : Iterable [] : String | provenance | MaD:598 | | Test.java:2324:20:2324:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2324:20:2324:22 | out : Iterable [] : String | Test.java:2324:9:2324:23 | getElement(...) | provenance | MaD:3 | | Test.java:2329:18:2329:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2330:56:2330:57 | in : Vector [] : String | provenance | | @@ -4075,7 +4069,7 @@ edges | Test.java:2329:39:2329:54 | (...)... : String | Test.java:2329:18:2329:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2329:47:2329:54 | source(...) : Object | Test.java:2329:39:2329:54 | (...)... : String | provenance | | | Test.java:2330:10:2330:58 | zippingIterable(...) : Iterable [] : String | Test.java:2331:20:2331:22 | out : Iterable [] : String | provenance | | -| Test.java:2330:56:2330:57 | in : Vector [] : String | Test.java:2330:10:2330:58 | zippingIterable(...) : Iterable [] : String | provenance | MaD:594 | +| Test.java:2330:56:2330:57 | in : Vector [] : String | Test.java:2330:10:2330:58 | zippingIterable(...) : Iterable [] : String | provenance | MaD:598 | | Test.java:2331:20:2331:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2331:20:2331:22 | out : Iterable [] : String | Test.java:2331:9:2331:23 | getElement(...) | provenance | MaD:3 | | Test.java:2336:18:2336:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2337:40:2337:41 | in : Vector [] : String | provenance | | @@ -4083,7 +4077,7 @@ edges | Test.java:2336:39:2336:54 | (...)... : String | Test.java:2336:18:2336:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2336:47:2336:54 | source(...) : Object | Test.java:2336:39:2336:54 | (...)... : String | provenance | | | Test.java:2337:10:2337:74 | zippingIterable(...) : Iterable [] : String | Test.java:2338:20:2338:22 | out : Iterable [] : String | provenance | | -| Test.java:2337:40:2337:41 | in : Vector [] : String | Test.java:2337:10:2337:74 | zippingIterable(...) : Iterable [] : String | provenance | MaD:595 | +| Test.java:2337:40:2337:41 | in : Vector [] : String | Test.java:2337:10:2337:74 | zippingIterable(...) : Iterable [] : String | provenance | MaD:599 | | Test.java:2338:20:2338:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2338:20:2338:22 | out : Iterable [] : String | Test.java:2338:9:2338:23 | getElement(...) | provenance | MaD:3 | | Test.java:2343:18:2343:55 | newVectorWithElement(...) : Vector [] : String | Test.java:2344:40:2344:41 | in : Vector [] : String | provenance | | @@ -4091,7 +4085,7 @@ edges | Test.java:2343:39:2343:54 | (...)... : String | Test.java:2343:18:2343:55 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2343:47:2343:54 | source(...) : Object | Test.java:2343:39:2343:54 | (...)... : String | provenance | | | Test.java:2344:10:2344:58 | zippingIterable(...) : Iterable [] : String | Test.java:2345:20:2345:22 | out : Iterable [] : String | provenance | | -| Test.java:2344:40:2344:41 | in : Vector [] : String | Test.java:2344:10:2344:58 | zippingIterable(...) : Iterable [] : String | provenance | MaD:595 | +| Test.java:2344:40:2344:41 | in : Vector [] : String | Test.java:2344:10:2344:58 | zippingIterable(...) : Iterable [] : String | provenance | MaD:599 | | Test.java:2345:20:2345:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2345:20:2345:22 | out : Iterable [] : String | Test.java:2345:9:2345:23 | getElement(...) | provenance | MaD:3 | | Test.java:2350:18:2350:54 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:2351:38:2351:39 | in : Object[] [[]] : String | provenance | | @@ -4099,107 +4093,107 @@ edges | Test.java:2350:38:2350:53 | (...)... : String | Test.java:2350:18:2350:54 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:2350:46:2350:53 | source(...) : Object | Test.java:2350:38:2350:53 | (...)... : String | provenance | | | Test.java:2351:10:2351:46 | arrayIterator(...) : ResettableIterator [] : String | Test.java:2352:20:2352:22 | out : ResettableIterator [] : String | provenance | | -| Test.java:2351:38:2351:39 | in : Object[] [[]] : String | Test.java:2351:10:2351:46 | arrayIterator(...) : ResettableIterator [] : String | provenance | MaD:596 | +| Test.java:2351:38:2351:39 | in : Object[] [[]] : String | Test.java:2351:10:2351:46 | arrayIterator(...) : ResettableIterator [] : String | provenance | MaD:600 | | Test.java:2352:20:2352:22 | out : ResettableIterator [] : String | Test.java:231:19:231:32 | it : ResettableIterator [] : String | provenance | | -| Test.java:2352:20:2352:22 | out : ResettableIterator [] : String | Test.java:2352:9:2352:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2352:20:2352:22 | out : ResettableIterator [] : String | Test.java:2352:9:2352:23 | getElement(...) | provenance | MaD:7 | | Test.java:2357:18:2357:54 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:2358:38:2358:39 | in : Object[] [[]] : String | provenance | | | Test.java:2357:38:2357:53 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:2357:38:2357:53 | (...)... : String | Test.java:2357:18:2357:54 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:2357:46:2357:53 | source(...) : Object | Test.java:2357:38:2357:53 | (...)... : String | provenance | | | Test.java:2358:10:2358:43 | arrayIterator(...) : ResettableIterator [] : String | Test.java:2359:20:2359:22 | out : ResettableIterator [] : String | provenance | | -| Test.java:2358:38:2358:39 | in : Object[] [[]] : String | Test.java:2358:10:2358:43 | arrayIterator(...) : ResettableIterator [] : String | provenance | MaD:596 | +| Test.java:2358:38:2358:39 | in : Object[] [[]] : String | Test.java:2358:10:2358:43 | arrayIterator(...) : ResettableIterator [] : String | provenance | MaD:600 | | Test.java:2359:20:2359:22 | out : ResettableIterator [] : String | Test.java:231:19:231:32 | it : ResettableIterator [] : String | provenance | | -| Test.java:2359:20:2359:22 | out : ResettableIterator [] : String | Test.java:2359:9:2359:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2359:20:2359:22 | out : ResettableIterator [] : String | Test.java:2359:9:2359:23 | getElement(...) | provenance | MaD:7 | | Test.java:2364:16:2364:23 | source(...) : Object | Test.java:2365:38:2365:39 | in : Object | provenance | | | Test.java:2365:10:2365:54 | arrayIterator(...) : ResettableIterator [] : Object | Test.java:2366:20:2366:22 | out : ResettableIterator [] : Object | provenance | | -| Test.java:2365:10:2365:54 | new ..[] { .. } : Object[] [[]] : Object | Test.java:2365:10:2365:54 | arrayIterator(...) : ResettableIterator [] : Object | provenance | MaD:596 | +| Test.java:2365:10:2365:54 | new ..[] { .. } : Object[] [[]] : Object | Test.java:2365:10:2365:54 | arrayIterator(...) : ResettableIterator [] : Object | provenance | MaD:600 | | Test.java:2365:38:2365:39 | in : Object | Test.java:2365:10:2365:54 | new ..[] { .. } : Object[] [[]] : Object | provenance | | | Test.java:2366:20:2366:22 | out : ResettableIterator [] : Object | Test.java:231:19:231:32 | it : ResettableIterator [] : Object | provenance | | -| Test.java:2366:20:2366:22 | out : ResettableIterator [] : Object | Test.java:2366:9:2366:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2366:20:2366:22 | out : ResettableIterator [] : Object | Test.java:2366:9:2366:23 | getElement(...) | provenance | MaD:7 | | Test.java:2371:16:2371:52 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:2372:38:2372:39 | in : Object[] [[]] : String | provenance | | | Test.java:2371:36:2371:51 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:2371:36:2371:51 | (...)... : String | Test.java:2371:16:2371:52 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:2371:44:2371:51 | source(...) : Object | Test.java:2371:36:2371:51 | (...)... : String | provenance | | | Test.java:2372:10:2372:46 | arrayIterator(...) : ResettableIterator [] : String | Test.java:2373:20:2373:22 | out : ResettableIterator [] : String | provenance | | -| Test.java:2372:38:2372:39 | in : Object[] [[]] : String | Test.java:2372:10:2372:46 | arrayIterator(...) : ResettableIterator [] : String | provenance | MaD:596 | +| Test.java:2372:38:2372:39 | in : Object[] [[]] : String | Test.java:2372:10:2372:46 | arrayIterator(...) : ResettableIterator [] : String | provenance | MaD:600 | | Test.java:2373:20:2373:22 | out : ResettableIterator [] : String | Test.java:231:19:231:32 | it : ResettableIterator [] : String | provenance | | -| Test.java:2373:20:2373:22 | out : ResettableIterator [] : String | Test.java:2373:9:2373:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2373:20:2373:22 | out : ResettableIterator [] : String | Test.java:2373:9:2373:23 | getElement(...) | provenance | MaD:7 | | Test.java:2378:16:2378:52 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:2379:38:2379:39 | in : Object[] [[]] : String | provenance | | | Test.java:2378:36:2378:51 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:2378:36:2378:51 | (...)... : String | Test.java:2378:16:2378:52 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:2378:44:2378:51 | source(...) : Object | Test.java:2378:36:2378:51 | (...)... : String | provenance | | | Test.java:2379:10:2379:43 | arrayIterator(...) : ResettableIterator [] : String | Test.java:2380:20:2380:22 | out : ResettableIterator [] : String | provenance | | -| Test.java:2379:38:2379:39 | in : Object[] [[]] : String | Test.java:2379:10:2379:43 | arrayIterator(...) : ResettableIterator [] : String | provenance | MaD:596 | +| Test.java:2379:38:2379:39 | in : Object[] [[]] : String | Test.java:2379:10:2379:43 | arrayIterator(...) : ResettableIterator [] : String | provenance | MaD:600 | | Test.java:2380:20:2380:22 | out : ResettableIterator [] : String | Test.java:231:19:231:32 | it : ResettableIterator [] : String | provenance | | -| Test.java:2380:20:2380:22 | out : ResettableIterator [] : String | Test.java:2380:9:2380:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2380:20:2380:22 | out : ResettableIterator [] : String | Test.java:2380:9:2380:23 | getElement(...) | provenance | MaD:7 | | Test.java:2385:16:2385:52 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:2386:38:2386:39 | in : Object[] [[]] : String | provenance | | | Test.java:2385:36:2385:51 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:2385:36:2385:51 | (...)... : String | Test.java:2385:16:2385:52 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:2385:44:2385:51 | source(...) : Object | Test.java:2385:36:2385:51 | (...)... : String | provenance | | | Test.java:2386:10:2386:40 | arrayIterator(...) : ResettableIterator [] : String | Test.java:2387:20:2387:22 | out : ResettableIterator [] : String | provenance | | -| Test.java:2386:38:2386:39 | in : Object[] [[]] : String | Test.java:2386:10:2386:40 | arrayIterator(...) : ResettableIterator [] : String | provenance | MaD:596 | +| Test.java:2386:38:2386:39 | in : Object[] [[]] : String | Test.java:2386:10:2386:40 | arrayIterator(...) : ResettableIterator [] : String | provenance | MaD:600 | | Test.java:2387:20:2387:22 | out : ResettableIterator [] : String | Test.java:231:19:231:32 | it : ResettableIterator [] : String | provenance | | -| Test.java:2387:20:2387:22 | out : ResettableIterator [] : String | Test.java:2387:9:2387:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2387:20:2387:22 | out : ResettableIterator [] : String | Test.java:2387:9:2387:23 | getElement(...) | provenance | MaD:7 | | Test.java:2392:18:2392:54 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:2393:42:2393:43 | in : Object[] [[]] : String | provenance | | | Test.java:2392:38:2392:53 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:2392:38:2392:53 | (...)... : String | Test.java:2392:18:2392:54 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:2392:46:2392:53 | source(...) : Object | Test.java:2392:38:2392:53 | (...)... : String | provenance | | | Test.java:2393:10:2393:50 | arrayListIterator(...) : ResettableListIterator [] : String | Test.java:2394:20:2394:22 | out : ResettableListIterator [] : String | provenance | | -| Test.java:2393:42:2393:43 | in : Object[] [[]] : String | Test.java:2393:10:2393:50 | arrayListIterator(...) : ResettableListIterator [] : String | provenance | MaD:597 | +| Test.java:2393:42:2393:43 | in : Object[] [[]] : String | Test.java:2393:10:2393:50 | arrayListIterator(...) : ResettableListIterator [] : String | provenance | MaD:601 | | Test.java:2394:20:2394:22 | out : ResettableListIterator [] : String | Test.java:231:19:231:32 | it : ResettableListIterator [] : String | provenance | | -| Test.java:2394:20:2394:22 | out : ResettableListIterator [] : String | Test.java:2394:9:2394:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2394:20:2394:22 | out : ResettableListIterator [] : String | Test.java:2394:9:2394:23 | getElement(...) | provenance | MaD:7 | | Test.java:2399:18:2399:54 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:2400:42:2400:43 | in : Object[] [[]] : String | provenance | | | Test.java:2399:38:2399:53 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:2399:38:2399:53 | (...)... : String | Test.java:2399:18:2399:54 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:2399:46:2399:53 | source(...) : Object | Test.java:2399:38:2399:53 | (...)... : String | provenance | | | Test.java:2400:10:2400:47 | arrayListIterator(...) : ResettableListIterator [] : String | Test.java:2401:20:2401:22 | out : ResettableListIterator [] : String | provenance | | -| Test.java:2400:42:2400:43 | in : Object[] [[]] : String | Test.java:2400:10:2400:47 | arrayListIterator(...) : ResettableListIterator [] : String | provenance | MaD:597 | +| Test.java:2400:42:2400:43 | in : Object[] [[]] : String | Test.java:2400:10:2400:47 | arrayListIterator(...) : ResettableListIterator [] : String | provenance | MaD:601 | | Test.java:2401:20:2401:22 | out : ResettableListIterator [] : String | Test.java:231:19:231:32 | it : ResettableListIterator [] : String | provenance | | -| Test.java:2401:20:2401:22 | out : ResettableListIterator [] : String | Test.java:2401:9:2401:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2401:20:2401:22 | out : ResettableListIterator [] : String | Test.java:2401:9:2401:23 | getElement(...) | provenance | MaD:7 | | Test.java:2406:16:2406:23 | source(...) : Object | Test.java:2407:42:2407:43 | in : Object | provenance | | | Test.java:2407:10:2407:58 | arrayListIterator(...) : ResettableListIterator [] : Object | Test.java:2408:20:2408:22 | out : ResettableListIterator [] : Object | provenance | | -| Test.java:2407:10:2407:58 | new ..[] { .. } : Object[] [[]] : Object | Test.java:2407:10:2407:58 | arrayListIterator(...) : ResettableListIterator [] : Object | provenance | MaD:597 | +| Test.java:2407:10:2407:58 | new ..[] { .. } : Object[] [[]] : Object | Test.java:2407:10:2407:58 | arrayListIterator(...) : ResettableListIterator [] : Object | provenance | MaD:601 | | Test.java:2407:42:2407:43 | in : Object | Test.java:2407:10:2407:58 | new ..[] { .. } : Object[] [[]] : Object | provenance | | | Test.java:2408:20:2408:22 | out : ResettableListIterator [] : Object | Test.java:231:19:231:32 | it : ResettableListIterator [] : Object | provenance | | -| Test.java:2408:20:2408:22 | out : ResettableListIterator [] : Object | Test.java:2408:9:2408:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2408:20:2408:22 | out : ResettableListIterator [] : Object | Test.java:2408:9:2408:23 | getElement(...) | provenance | MaD:7 | | Test.java:2413:16:2413:52 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:2414:42:2414:43 | in : Object[] [[]] : String | provenance | | | Test.java:2413:36:2413:51 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:2413:36:2413:51 | (...)... : String | Test.java:2413:16:2413:52 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:2413:44:2413:51 | source(...) : Object | Test.java:2413:36:2413:51 | (...)... : String | provenance | | | Test.java:2414:10:2414:50 | arrayListIterator(...) : ResettableListIterator [] : String | Test.java:2415:20:2415:22 | out : ResettableListIterator [] : String | provenance | | -| Test.java:2414:42:2414:43 | in : Object[] [[]] : String | Test.java:2414:10:2414:50 | arrayListIterator(...) : ResettableListIterator [] : String | provenance | MaD:597 | +| Test.java:2414:42:2414:43 | in : Object[] [[]] : String | Test.java:2414:10:2414:50 | arrayListIterator(...) : ResettableListIterator [] : String | provenance | MaD:601 | | Test.java:2415:20:2415:22 | out : ResettableListIterator [] : String | Test.java:231:19:231:32 | it : ResettableListIterator [] : String | provenance | | -| Test.java:2415:20:2415:22 | out : ResettableListIterator [] : String | Test.java:2415:9:2415:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2415:20:2415:22 | out : ResettableListIterator [] : String | Test.java:2415:9:2415:23 | getElement(...) | provenance | MaD:7 | | Test.java:2420:16:2420:52 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:2421:42:2421:43 | in : Object[] [[]] : String | provenance | | | Test.java:2420:36:2420:51 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:2420:36:2420:51 | (...)... : String | Test.java:2420:16:2420:52 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:2420:44:2420:51 | source(...) : Object | Test.java:2420:36:2420:51 | (...)... : String | provenance | | | Test.java:2421:10:2421:47 | arrayListIterator(...) : ResettableListIterator [] : String | Test.java:2422:20:2422:22 | out : ResettableListIterator [] : String | provenance | | -| Test.java:2421:42:2421:43 | in : Object[] [[]] : String | Test.java:2421:10:2421:47 | arrayListIterator(...) : ResettableListIterator [] : String | provenance | MaD:597 | +| Test.java:2421:42:2421:43 | in : Object[] [[]] : String | Test.java:2421:10:2421:47 | arrayListIterator(...) : ResettableListIterator [] : String | provenance | MaD:601 | | Test.java:2422:20:2422:22 | out : ResettableListIterator [] : String | Test.java:231:19:231:32 | it : ResettableListIterator [] : String | provenance | | -| Test.java:2422:20:2422:22 | out : ResettableListIterator [] : String | Test.java:2422:9:2422:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2422:20:2422:22 | out : ResettableListIterator [] : String | Test.java:2422:9:2422:23 | getElement(...) | provenance | MaD:7 | | Test.java:2427:16:2427:52 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:2428:42:2428:43 | in : Object[] [[]] : String | provenance | | | Test.java:2427:36:2427:51 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:2427:36:2427:51 | (...)... : String | Test.java:2427:16:2427:52 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:2427:44:2427:51 | source(...) : Object | Test.java:2427:36:2427:51 | (...)... : String | provenance | | | Test.java:2428:10:2428:44 | arrayListIterator(...) : ResettableListIterator [] : String | Test.java:2429:20:2429:22 | out : ResettableListIterator [] : String | provenance | | -| Test.java:2428:42:2428:43 | in : Object[] [[]] : String | Test.java:2428:10:2428:44 | arrayListIterator(...) : ResettableListIterator [] : String | provenance | MaD:597 | +| Test.java:2428:42:2428:43 | in : Object[] [[]] : String | Test.java:2428:10:2428:44 | arrayListIterator(...) : ResettableListIterator [] : String | provenance | MaD:601 | | Test.java:2429:20:2429:22 | out : ResettableListIterator [] : String | Test.java:231:19:231:32 | it : ResettableListIterator [] : String | provenance | | -| Test.java:2429:20:2429:22 | out : ResettableListIterator [] : String | Test.java:2429:9:2429:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2429:20:2429:22 | out : ResettableListIterator [] : String | Test.java:2429:9:2429:23 | getElement(...) | provenance | MaD:7 | | Test.java:2434:18:2434:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2435:38:2435:39 | in : ListIterator [] : String | provenance | | | Test.java:2434:45:2434:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2434:45:2434:60 | (...)... : String | Test.java:2434:18:2434:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2434:53:2434:60 | source(...) : Object | Test.java:2434:45:2434:60 | (...)... : String | provenance | | | Test.java:2435:10:2435:40 | asEnumeration(...) : Enumeration [] : String | Test.java:2436:20:2436:22 | out : Enumeration [] : String | provenance | | -| Test.java:2435:38:2435:39 | in : ListIterator [] : String | Test.java:2435:10:2435:40 | asEnumeration(...) : Enumeration [] : String | provenance | MaD:598 | +| Test.java:2435:38:2435:39 | in : ListIterator [] : String | Test.java:2435:10:2435:40 | asEnumeration(...) : Enumeration [] : String | provenance | MaD:602 | | Test.java:2436:20:2436:22 | out : Enumeration [] : String | Test.java:234:19:234:42 | container : Enumeration [] : String | provenance | | -| Test.java:2436:20:2436:22 | out : Enumeration [] : String | Test.java:2436:9:2436:23 | getElement(...) | provenance | MaD:5 | +| Test.java:2436:20:2436:22 | out : Enumeration [] : String | Test.java:2436:9:2436:23 | getElement(...) | provenance | MaD:6 | | Test.java:2441:18:2441:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2442:35:2442:36 | in : ListIterator [] : String | provenance | | | Test.java:2441:45:2441:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2441:45:2441:60 | (...)... : String | Test.java:2441:18:2441:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2441:53:2441:60 | source(...) : Object | Test.java:2441:45:2441:60 | (...)... : String | provenance | | | Test.java:2442:10:2442:37 | asIterable(...) : Iterable [] : String | Test.java:2443:20:2443:22 | out : Iterable [] : String | provenance | | -| Test.java:2442:35:2442:36 | in : ListIterator [] : String | Test.java:2442:10:2442:37 | asIterable(...) : Iterable [] : String | provenance | MaD:599 | +| Test.java:2442:35:2442:36 | in : ListIterator [] : String | Test.java:2442:10:2442:37 | asIterable(...) : Iterable [] : String | provenance | MaD:603 | | Test.java:2443:20:2443:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2443:20:2443:22 | out : Iterable [] : String | Test.java:2443:9:2443:23 | getElement(...) | provenance | MaD:3 | | Test.java:2448:21:2448:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:2449:35:2449:36 | in : IteratorEnumeration [] : String | provenance | | @@ -4207,23 +4201,23 @@ edges | Test.java:2448:47:2448:62 | (...)... : String | Test.java:2448:21:2448:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | | Test.java:2448:55:2448:62 | source(...) : Object | Test.java:2448:47:2448:62 | (...)... : String | provenance | | | Test.java:2449:10:2449:43 | asIterator(...) : Iterator [] : String | Test.java:2450:20:2450:22 | out : Iterator [] : String | provenance | | -| Test.java:2449:35:2449:36 | in : IteratorEnumeration [] : String | Test.java:2449:10:2449:43 | asIterator(...) : Iterator [] : String | provenance | MaD:600 | +| Test.java:2449:35:2449:36 | in : IteratorEnumeration [] : String | Test.java:2449:10:2449:43 | asIterator(...) : Iterator [] : String | provenance | MaD:604 | | Test.java:2450:20:2450:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2450:20:2450:22 | out : Iterator [] : String | Test.java:2450:9:2450:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2450:20:2450:22 | out : Iterator [] : String | Test.java:2450:9:2450:23 | getElement(...) | provenance | MaD:7 | | Test.java:2455:21:2455:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:2456:35:2456:36 | in : IteratorEnumeration [] : String | provenance | | | Test.java:2455:47:2455:62 | (...)... : String | Test.java:256:47:256:55 | element : String | provenance | | | Test.java:2455:47:2455:62 | (...)... : String | Test.java:2455:21:2455:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | | Test.java:2455:55:2455:62 | source(...) : Object | Test.java:2455:47:2455:62 | (...)... : String | provenance | | | Test.java:2456:10:2456:37 | asIterator(...) : Iterator [] : String | Test.java:2457:20:2457:22 | out : Iterator [] : String | provenance | | -| Test.java:2456:35:2456:36 | in : IteratorEnumeration [] : String | Test.java:2456:10:2456:37 | asIterator(...) : Iterator [] : String | provenance | MaD:600 | +| Test.java:2456:35:2456:36 | in : IteratorEnumeration [] : String | Test.java:2456:10:2456:37 | asIterator(...) : Iterator [] : String | provenance | MaD:604 | | Test.java:2457:20:2457:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2457:20:2457:22 | out : Iterator [] : String | Test.java:2457:9:2457:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2457:20:2457:22 | out : Iterator [] : String | Test.java:2457:9:2457:23 | getElement(...) | provenance | MaD:7 | | Test.java:2462:18:2462:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2463:46:2463:47 | in : ListIterator [] : String | provenance | | | Test.java:2462:45:2462:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2462:45:2462:60 | (...)... : String | Test.java:2462:18:2462:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2462:53:2462:60 | source(...) : Object | Test.java:2462:45:2462:60 | (...)... : String | provenance | | | Test.java:2463:10:2463:48 | asMultipleUseIterable(...) : Iterable [] : String | Test.java:2464:20:2464:22 | out : Iterable [] : String | provenance | | -| Test.java:2463:46:2463:47 | in : ListIterator [] : String | Test.java:2463:10:2463:48 | asMultipleUseIterable(...) : Iterable [] : String | provenance | MaD:601 | +| Test.java:2463:46:2463:47 | in : ListIterator [] : String | Test.java:2463:10:2463:48 | asMultipleUseIterable(...) : Iterable [] : String | provenance | MaD:605 | | Test.java:2464:20:2464:22 | out : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2464:20:2464:22 | out : Iterable [] : String | Test.java:2464:9:2464:23 | getElement(...) | provenance | MaD:3 | | Test.java:2469:18:2469:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2470:40:2470:41 | in : ListIterator [] : String | provenance | | @@ -4231,17 +4225,17 @@ edges | Test.java:2469:45:2469:60 | (...)... : String | Test.java:2469:18:2469:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2469:53:2469:60 | source(...) : Object | Test.java:2469:45:2469:60 | (...)... : String | provenance | | | Test.java:2470:10:2470:50 | boundedIterator(...) : BoundedIterator [] : String | Test.java:2471:20:2471:22 | out : BoundedIterator [] : String | provenance | | -| Test.java:2470:40:2470:41 | in : ListIterator [] : String | Test.java:2470:10:2470:50 | boundedIterator(...) : BoundedIterator [] : String | provenance | MaD:602 | +| Test.java:2470:40:2470:41 | in : ListIterator [] : String | Test.java:2470:10:2470:50 | boundedIterator(...) : BoundedIterator [] : String | provenance | MaD:606 | | Test.java:2471:20:2471:22 | out : BoundedIterator [] : String | Test.java:231:19:231:32 | it : BoundedIterator [] : String | provenance | | -| Test.java:2471:20:2471:22 | out : BoundedIterator [] : String | Test.java:2471:9:2471:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2471:20:2471:22 | out : BoundedIterator [] : String | Test.java:2471:9:2471:23 | getElement(...) | provenance | MaD:7 | | Test.java:2476:18:2476:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2477:40:2477:41 | in : ListIterator [] : String | provenance | | | Test.java:2476:45:2476:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2476:45:2476:60 | (...)... : String | Test.java:2476:18:2476:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2476:53:2476:60 | source(...) : Object | Test.java:2476:45:2476:60 | (...)... : String | provenance | | | Test.java:2477:10:2477:46 | boundedIterator(...) : BoundedIterator [] : String | Test.java:2478:20:2478:22 | out : BoundedIterator [] : String | provenance | | -| Test.java:2477:40:2477:41 | in : ListIterator [] : String | Test.java:2477:10:2477:46 | boundedIterator(...) : BoundedIterator [] : String | provenance | MaD:602 | +| Test.java:2477:40:2477:41 | in : ListIterator [] : String | Test.java:2477:10:2477:46 | boundedIterator(...) : BoundedIterator [] : String | provenance | MaD:606 | | Test.java:2478:20:2478:22 | out : BoundedIterator [] : String | Test.java:231:19:231:32 | it : BoundedIterator [] : String | provenance | | -| Test.java:2478:20:2478:22 | out : BoundedIterator [] : String | Test.java:2478:9:2478:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2478:20:2478:22 | out : BoundedIterator [] : String | Test.java:2478:9:2478:23 | getElement(...) | provenance | MaD:7 | | Test.java:2483:20:2483:79 | newVectorWithElement(...) : Vector [, ] : String | Test.java:2484:40:2484:41 | in : Vector [, ] : String | provenance | | | Test.java:2483:41:2483:78 | newVectorWithElement(...) : Vector [] : String | Test.java:270:47:270:65 | element : Vector [] : String | provenance | | | Test.java:2483:41:2483:78 | newVectorWithElement(...) : Vector [] : String | Test.java:2483:20:2483:79 | newVectorWithElement(...) : Vector [, ] : String | provenance | MaD:4 | @@ -4249,33 +4243,33 @@ edges | Test.java:2483:62:2483:77 | (...)... : String | Test.java:2483:41:2483:78 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2483:70:2483:77 | source(...) : Object | Test.java:2483:62:2483:77 | (...)... : String | provenance | | | Test.java:2484:10:2484:42 | chainedIterator(...) : Iterator [] : String | Test.java:2485:20:2485:22 | out : Iterator [] : String | provenance | | -| Test.java:2484:40:2484:41 | in : Vector [, ] : String | Test.java:2484:10:2484:42 | chainedIterator(...) : Iterator [] : String | provenance | MaD:603 | +| Test.java:2484:40:2484:41 | in : Vector [, ] : String | Test.java:2484:10:2484:42 | chainedIterator(...) : Iterator [] : String | provenance | MaD:607 | | Test.java:2485:20:2485:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2485:20:2485:22 | out : Iterator [] : String | Test.java:2485:9:2485:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2485:20:2485:22 | out : Iterator [] : String | Test.java:2485:9:2485:23 | getElement(...) | provenance | MaD:7 | | Test.java:2490:18:2490:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2491:40:2491:41 | in : ListIterator [] : String | provenance | | | Test.java:2490:45:2490:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2490:45:2490:60 | (...)... : String | Test.java:2490:18:2490:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2490:53:2490:60 | source(...) : Object | Test.java:2490:45:2490:60 | (...)... : String | provenance | | | Test.java:2491:10:2491:58 | chainedIterator(...) : Iterator [] : String | Test.java:2492:20:2492:22 | out : Iterator [] : String | provenance | | -| Test.java:2491:40:2491:41 | in : ListIterator [] : String | Test.java:2491:10:2491:58 | chainedIterator(...) : Iterator [] : String | provenance | MaD:604 | +| Test.java:2491:40:2491:41 | in : ListIterator [] : String | Test.java:2491:10:2491:58 | chainedIterator(...) : Iterator [] : String | provenance | MaD:608 | | Test.java:2492:20:2492:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2492:20:2492:22 | out : Iterator [] : String | Test.java:2492:9:2492:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2492:20:2492:22 | out : Iterator [] : String | Test.java:2492:9:2492:23 | getElement(...) | provenance | MaD:7 | | Test.java:2497:18:2497:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2498:40:2498:41 | in : ListIterator [] : String | provenance | | | Test.java:2497:45:2497:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2497:45:2497:60 | (...)... : String | Test.java:2497:18:2497:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2497:53:2497:60 | source(...) : Object | Test.java:2497:45:2497:60 | (...)... : String | provenance | | | Test.java:2498:10:2498:48 | chainedIterator(...) : Iterator [] : String | Test.java:2499:20:2499:22 | out : Iterator [] : String | provenance | | -| Test.java:2498:40:2498:41 | in : ListIterator [] : String | Test.java:2498:10:2498:48 | chainedIterator(...) : Iterator [] : String | provenance | MaD:604 | +| Test.java:2498:40:2498:41 | in : ListIterator [] : String | Test.java:2498:10:2498:48 | chainedIterator(...) : Iterator [] : String | provenance | MaD:608 | | Test.java:2499:20:2499:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2499:20:2499:22 | out : Iterator [] : String | Test.java:2499:9:2499:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2499:20:2499:22 | out : Iterator [] : String | Test.java:2499:9:2499:23 | getElement(...) | provenance | MaD:7 | | Test.java:2504:18:2504:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2505:46:2505:47 | in : ListIterator [] : String | provenance | | | Test.java:2504:45:2504:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2504:45:2504:60 | (...)... : String | Test.java:2504:18:2504:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2504:53:2504:60 | source(...) : Object | Test.java:2504:45:2504:60 | (...)... : String | provenance | | | Test.java:2505:10:2505:48 | chainedIterator(...) : Iterator [] : String | Test.java:2506:20:2506:22 | out : Iterator [] : String | provenance | | -| Test.java:2505:46:2505:47 | in : ListIterator [] : String | Test.java:2505:10:2505:48 | chainedIterator(...) : Iterator [] : String | provenance | MaD:605 | +| Test.java:2505:46:2505:47 | in : ListIterator [] : String | Test.java:2505:10:2505:48 | chainedIterator(...) : Iterator [] : String | provenance | MaD:609 | | Test.java:2506:20:2506:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2506:20:2506:22 | out : Iterator [] : String | Test.java:2506:9:2506:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2506:20:2506:22 | out : Iterator [] : String | Test.java:2506:9:2506:23 | getElement(...) | provenance | MaD:7 | | Test.java:2511:20:2511:79 | newVectorWithElement(...) : Vector [, ] : String | Test.java:2512:59:2512:60 | in : Vector [, ] : String | provenance | | | Test.java:2511:41:2511:78 | newVectorWithElement(...) : Vector [] : String | Test.java:270:47:270:65 | element : Vector [] : String | provenance | | | Test.java:2511:41:2511:78 | newVectorWithElement(...) : Vector [] : String | Test.java:2511:20:2511:79 | newVectorWithElement(...) : Vector [, ] : String | provenance | MaD:4 | @@ -4283,162 +4277,162 @@ edges | Test.java:2511:62:2511:77 | (...)... : String | Test.java:2511:41:2511:78 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2511:70:2511:77 | source(...) : Object | Test.java:2511:62:2511:77 | (...)... : String | provenance | | | Test.java:2512:10:2512:61 | collatedIterator(...) : Iterator [] : String | Test.java:2513:20:2513:22 | out : Iterator [] : String | provenance | | -| Test.java:2512:59:2512:60 | in : Vector [, ] : String | Test.java:2512:10:2512:61 | collatedIterator(...) : Iterator [] : String | provenance | MaD:606 | +| Test.java:2512:59:2512:60 | in : Vector [, ] : String | Test.java:2512:10:2512:61 | collatedIterator(...) : Iterator [] : String | provenance | MaD:610 | | Test.java:2513:20:2513:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2513:20:2513:22 | out : Iterator [] : String | Test.java:2513:9:2513:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2513:20:2513:22 | out : Iterator [] : String | Test.java:2513:9:2513:23 | getElement(...) | provenance | MaD:7 | | Test.java:2518:18:2518:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2519:59:2519:60 | in : ListIterator [] : String | provenance | | | Test.java:2518:45:2518:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2518:45:2518:60 | (...)... : String | Test.java:2518:18:2518:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2518:53:2518:60 | source(...) : Object | Test.java:2518:45:2518:60 | (...)... : String | provenance | | | Test.java:2519:10:2519:61 | collatedIterator(...) : Iterator [] : String | Test.java:2520:20:2520:22 | out : Iterator [] : String | provenance | | -| Test.java:2519:10:2519:61 | new ..[] { .. } : Iterator[] [[], ] : String | Test.java:2519:10:2519:61 | collatedIterator(...) : Iterator [] : String | provenance | MaD:609 | +| Test.java:2519:10:2519:61 | new ..[] { .. } : Iterator[] [[], ] : String | Test.java:2519:10:2519:61 | collatedIterator(...) : Iterator [] : String | provenance | MaD:613 | | Test.java:2519:59:2519:60 | in : ListIterator [] : String | Test.java:2519:10:2519:61 | new ..[] { .. } : Iterator[] [[], ] : String | provenance | | | Test.java:2520:20:2520:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2520:20:2520:22 | out : Iterator [] : String | Test.java:2520:9:2520:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2520:20:2520:22 | out : Iterator [] : String | Test.java:2520:9:2520:23 | getElement(...) | provenance | MaD:7 | | Test.java:2525:18:2525:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2526:47:2526:48 | in : ListIterator [] : String | provenance | | | Test.java:2525:45:2525:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2525:45:2525:60 | (...)... : String | Test.java:2525:18:2525:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2525:53:2525:60 | source(...) : Object | Test.java:2525:45:2525:60 | (...)... : String | provenance | | | Test.java:2526:10:2526:55 | collatedIterator(...) : Iterator [] : String | Test.java:2527:20:2527:22 | out : Iterator [] : String | provenance | | -| Test.java:2526:47:2526:48 | in : ListIterator [] : String | Test.java:2526:10:2526:55 | collatedIterator(...) : Iterator [] : String | provenance | MaD:607 | +| Test.java:2526:47:2526:48 | in : ListIterator [] : String | Test.java:2526:10:2526:55 | collatedIterator(...) : Iterator [] : String | provenance | MaD:611 | | Test.java:2527:20:2527:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2527:20:2527:22 | out : Iterator [] : String | Test.java:2527:9:2527:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2527:20:2527:22 | out : Iterator [] : String | Test.java:2527:9:2527:23 | getElement(...) | provenance | MaD:7 | | Test.java:2532:18:2532:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2533:53:2533:54 | in : ListIterator [] : String | provenance | | | Test.java:2532:45:2532:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2532:45:2532:60 | (...)... : String | Test.java:2532:18:2532:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2532:53:2532:60 | source(...) : Object | Test.java:2532:45:2532:60 | (...)... : String | provenance | | | Test.java:2533:10:2533:55 | collatedIterator(...) : Iterator [] : String | Test.java:2534:20:2534:22 | out : Iterator [] : String | provenance | | -| Test.java:2533:53:2533:54 | in : ListIterator [] : String | Test.java:2533:10:2533:55 | collatedIterator(...) : Iterator [] : String | provenance | MaD:608 | +| Test.java:2533:53:2533:54 | in : ListIterator [] : String | Test.java:2533:10:2533:55 | collatedIterator(...) : Iterator [] : String | provenance | MaD:612 | | Test.java:2534:20:2534:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2534:20:2534:22 | out : Iterator [] : String | Test.java:2534:9:2534:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2534:20:2534:22 | out : Iterator [] : String | Test.java:2534:9:2534:23 | getElement(...) | provenance | MaD:7 | | Test.java:2539:18:2539:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2540:41:2540:42 | in : ListIterator [] : String | provenance | | | Test.java:2539:45:2539:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2539:45:2539:60 | (...)... : String | Test.java:2539:18:2539:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2539:53:2539:60 | source(...) : Object | Test.java:2539:45:2539:60 | (...)... : String | provenance | | | Test.java:2540:10:2540:49 | filteredIterator(...) : Iterator [] : String | Test.java:2541:20:2541:22 | out : Iterator [] : String | provenance | | -| Test.java:2540:41:2540:42 | in : ListIterator [] : String | Test.java:2540:10:2540:49 | filteredIterator(...) : Iterator [] : String | provenance | MaD:610 | +| Test.java:2540:41:2540:42 | in : ListIterator [] : String | Test.java:2540:10:2540:49 | filteredIterator(...) : Iterator [] : String | provenance | MaD:614 | | Test.java:2541:20:2541:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2541:20:2541:22 | out : Iterator [] : String | Test.java:2541:9:2541:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2541:20:2541:22 | out : Iterator [] : String | Test.java:2541:9:2541:23 | getElement(...) | provenance | MaD:7 | | Test.java:2546:22:2546:65 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2547:45:2547:46 | in : ListIterator [] : String | provenance | | | Test.java:2546:49:2546:64 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2546:49:2546:64 | (...)... : String | Test.java:2546:22:2546:65 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2546:57:2546:64 | source(...) : Object | Test.java:2546:49:2546:64 | (...)... : String | provenance | | | Test.java:2547:10:2547:53 | filteredListIterator(...) : ListIterator [] : String | Test.java:2548:20:2548:22 | out : ListIterator [] : String | provenance | | -| Test.java:2547:45:2547:46 | in : ListIterator [] : String | Test.java:2547:10:2547:53 | filteredListIterator(...) : ListIterator [] : String | provenance | MaD:611 | +| Test.java:2547:45:2547:46 | in : ListIterator [] : String | Test.java:2547:10:2547:53 | filteredListIterator(...) : ListIterator [] : String | provenance | MaD:615 | | Test.java:2548:20:2548:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | provenance | | -| Test.java:2548:20:2548:22 | out : ListIterator [] : String | Test.java:2548:9:2548:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2548:20:2548:22 | out : ListIterator [] : String | Test.java:2548:9:2548:23 | getElement(...) | provenance | MaD:7 | | Test.java:2553:18:2553:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2554:29:2554:30 | in : ListIterator [] : String | provenance | | | Test.java:2553:45:2553:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2553:45:2553:60 | (...)... : String | Test.java:2553:18:2553:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2553:53:2553:60 | source(...) : Object | Test.java:2553:45:2553:60 | (...)... : String | provenance | | | Test.java:2554:10:2554:37 | find(...) : String | Test.java:2555:9:2555:11 | out | provenance | | -| Test.java:2554:29:2554:30 | in : ListIterator [] : String | Test.java:2554:10:2554:37 | find(...) : String | provenance | MaD:612 | +| Test.java:2554:29:2554:30 | in : ListIterator [] : String | Test.java:2554:10:2554:37 | find(...) : String | provenance | MaD:616 | | Test.java:2560:18:2560:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2561:30:2561:31 | in : ListIterator [] : String | provenance | | | Test.java:2560:45:2560:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2560:45:2560:60 | (...)... : String | Test.java:2560:18:2560:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2560:53:2560:60 | source(...) : Object | Test.java:2560:45:2560:60 | (...)... : String | provenance | | | Test.java:2561:10:2561:32 | first(...) : String | Test.java:2562:9:2562:11 | out | provenance | | -| Test.java:2561:30:2561:31 | in : ListIterator [] : String | Test.java:2561:10:2561:32 | first(...) : String | provenance | MaD:613 | +| Test.java:2561:30:2561:31 | in : ListIterator [] : String | Test.java:2561:10:2561:32 | first(...) : String | provenance | MaD:617 | | Test.java:2567:18:2567:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2568:39:2568:40 | in : ListIterator [] : String | provenance | | | Test.java:2567:45:2567:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2567:45:2567:60 | (...)... : String | Test.java:2567:18:2567:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2567:53:2567:60 | source(...) : Object | Test.java:2567:45:2567:60 | (...)... : String | provenance | | | Test.java:2568:10:2568:47 | forEachButLast(...) : String | Test.java:2569:9:2569:11 | out | provenance | | -| Test.java:2568:39:2568:40 | in : ListIterator [] : String | Test.java:2568:10:2568:47 | forEachButLast(...) : String | provenance | MaD:614 | +| Test.java:2568:39:2568:40 | in : ListIterator [] : String | Test.java:2568:10:2568:47 | forEachButLast(...) : String | provenance | MaD:618 | | Test.java:2574:18:2574:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2575:28:2575:29 | in : ListIterator [] : String | provenance | | | Test.java:2574:45:2574:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2574:45:2574:60 | (...)... : String | Test.java:2574:18:2574:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2574:53:2574:60 | source(...) : Object | Test.java:2574:45:2574:60 | (...)... : String | provenance | | | Test.java:2575:10:2575:33 | get(...) : String | Test.java:2576:9:2576:11 | out | provenance | | -| Test.java:2575:28:2575:29 | in : ListIterator [] : String | Test.java:2575:10:2575:33 | get(...) : String | provenance | MaD:615 | +| Test.java:2575:28:2575:29 | in : ListIterator [] : String | Test.java:2575:10:2575:33 | get(...) : String | provenance | MaD:619 | | Test.java:2581:16:2581:23 | source(...) : Object | Test.java:2582:36:2582:37 | in : Object | provenance | | | Test.java:2582:10:2582:38 | getIterator(...) : Iterator [] : Object | Test.java:2583:20:2583:22 | out : Iterator [] : Object | provenance | | -| Test.java:2582:36:2582:37 | in : Object | Test.java:2582:10:2582:38 | getIterator(...) : Iterator [] : Object | provenance | MaD:616 | -| Test.java:2582:36:2582:37 | in : Object | Test.java:2582:10:2582:38 | getIterator(...) : Iterator [] : Object | provenance | MaD:617 | -| Test.java:2582:36:2582:37 | in : Object | Test.java:2582:10:2582:38 | getIterator(...) : Iterator [] : Object | provenance | MaD:618 | -| Test.java:2582:36:2582:37 | in : Object | Test.java:2582:10:2582:38 | getIterator(...) : Iterator [] : Object | provenance | MaD:619 | +| Test.java:2582:36:2582:37 | in : Object | Test.java:2582:10:2582:38 | getIterator(...) : Iterator [] : Object | provenance | MaD:620 | +| Test.java:2582:36:2582:37 | in : Object | Test.java:2582:10:2582:38 | getIterator(...) : Iterator [] : Object | provenance | MaD:621 | +| Test.java:2582:36:2582:37 | in : Object | Test.java:2582:10:2582:38 | getIterator(...) : Iterator [] : Object | provenance | MaD:622 | +| Test.java:2582:36:2582:37 | in : Object | Test.java:2582:10:2582:38 | getIterator(...) : Iterator [] : Object | provenance | MaD:623 | | Test.java:2583:20:2583:22 | out : Iterator [] : Object | Test.java:231:19:231:32 | it : Iterator [] : Object | provenance | | -| Test.java:2583:20:2583:22 | out : Iterator [] : Object | Test.java:2583:9:2583:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2583:20:2583:22 | out : Iterator [] : Object | Test.java:2583:9:2583:23 | getElement(...) | provenance | MaD:7 | | Test.java:2588:16:2588:52 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:2589:36:2589:37 | in : Object[] [[]] : String | provenance | | | Test.java:2588:36:2588:51 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | | Test.java:2588:36:2588:51 | (...)... : String | Test.java:2588:16:2588:52 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | | Test.java:2588:44:2588:51 | source(...) : Object | Test.java:2588:36:2588:51 | (...)... : String | provenance | | | Test.java:2589:10:2589:38 | getIterator(...) : Iterator [] : String | Test.java:2590:20:2590:22 | out : Iterator [] : String | provenance | | -| Test.java:2589:36:2589:37 | in : Object[] [[]] : String | Test.java:2589:10:2589:38 | getIterator(...) : Iterator [] : String | provenance | MaD:616 | +| Test.java:2589:36:2589:37 | in : Object[] [[]] : String | Test.java:2589:10:2589:38 | getIterator(...) : Iterator [] : String | provenance | MaD:620 | | Test.java:2590:20:2590:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2590:20:2590:22 | out : Iterator [] : String | Test.java:2590:9:2590:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2590:20:2590:22 | out : Iterator [] : String | Test.java:2590:9:2590:23 | getElement(...) | provenance | MaD:7 | | Test.java:2595:16:2595:53 | newVectorWithElement(...) : Vector [] : String | Test.java:2596:36:2596:37 | in : Vector [] : String | provenance | | | Test.java:2595:37:2595:52 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:2595:37:2595:52 | (...)... : String | Test.java:2595:16:2595:53 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2595:45:2595:52 | source(...) : Object | Test.java:2595:37:2595:52 | (...)... : String | provenance | | | Test.java:2596:10:2596:38 | getIterator(...) : Iterator [] : String | Test.java:2597:20:2597:22 | out : Iterator [] : String | provenance | | -| Test.java:2596:36:2596:37 | in : Vector [] : String | Test.java:2596:10:2596:38 | getIterator(...) : Iterator [] : String | provenance | MaD:617 | +| Test.java:2596:36:2596:37 | in : Vector [] : String | Test.java:2596:10:2596:38 | getIterator(...) : Iterator [] : String | provenance | MaD:621 | | Test.java:2597:20:2597:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2597:20:2597:22 | out : Iterator [] : String | Test.java:2597:9:2597:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2597:20:2597:22 | out : Iterator [] : String | Test.java:2597:9:2597:23 | getElement(...) | provenance | MaD:7 | | Test.java:2602:13:2602:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:2603:36:2603:37 | in : TreeMap [] : String | provenance | | | Test.java:2602:36:2602:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:2602:36:2602:51 | (...)... : String | Test.java:2602:13:2602:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:2602:36:2602:51 | (...)... : String | Test.java:2602:13:2602:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:2602:44:2602:51 | source(...) : Object | Test.java:2602:36:2602:51 | (...)... : String | provenance | | | Test.java:2603:10:2603:38 | getIterator(...) : Iterator [] : String | Test.java:2604:20:2604:22 | out : Iterator [] : String | provenance | | -| Test.java:2603:36:2603:37 | in : TreeMap [] : String | Test.java:2603:10:2603:38 | getIterator(...) : Iterator [] : String | provenance | MaD:618 | +| Test.java:2603:36:2603:37 | in : TreeMap [] : String | Test.java:2603:10:2603:38 | getIterator(...) : Iterator [] : String | provenance | MaD:622 | | Test.java:2604:20:2604:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2604:20:2604:22 | out : Iterator [] : String | Test.java:2604:9:2604:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2604:20:2604:22 | out : Iterator [] : String | Test.java:2604:9:2604:23 | getElement(...) | provenance | MaD:7 | | Test.java:2609:20:2609:57 | newVectorWithElement(...) : Vector [] : String | Test.java:2610:40:2610:41 | in : Vector [] : String | provenance | | | Test.java:2609:41:2609:56 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:2609:41:2609:56 | (...)... : String | Test.java:2609:20:2609:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2609:49:2609:56 | source(...) : Object | Test.java:2609:41:2609:56 | (...)... : String | provenance | | | Test.java:2610:10:2610:42 | loopingIterator(...) : ResettableIterator [] : String | Test.java:2611:20:2611:22 | out : ResettableIterator [] : String | provenance | | -| Test.java:2610:40:2610:41 | in : Vector [] : String | Test.java:2610:10:2610:42 | loopingIterator(...) : ResettableIterator [] : String | provenance | MaD:620 | +| Test.java:2610:40:2610:41 | in : Vector [] : String | Test.java:2610:10:2610:42 | loopingIterator(...) : ResettableIterator [] : String | provenance | MaD:624 | | Test.java:2611:20:2611:22 | out : ResettableIterator [] : String | Test.java:231:19:231:32 | it : ResettableIterator [] : String | provenance | | -| Test.java:2611:20:2611:22 | out : ResettableIterator [] : String | Test.java:2611:9:2611:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2611:20:2611:22 | out : ResettableIterator [] : String | Test.java:2611:9:2611:23 | getElement(...) | provenance | MaD:7 | | Test.java:2616:14:2616:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2617:44:2617:45 | in : Vector [] : String | provenance | | | Test.java:2616:35:2616:50 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:2616:35:2616:50 | (...)... : String | Test.java:2616:14:2616:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2616:43:2616:50 | source(...) : Object | Test.java:2616:35:2616:50 | (...)... : String | provenance | | | Test.java:2617:10:2617:46 | loopingListIterator(...) : ResettableListIterator [] : String | Test.java:2618:20:2618:22 | out : ResettableListIterator [] : String | provenance | | -| Test.java:2617:44:2617:45 | in : Vector [] : String | Test.java:2617:10:2617:46 | loopingListIterator(...) : ResettableListIterator [] : String | provenance | MaD:621 | +| Test.java:2617:44:2617:45 | in : Vector [] : String | Test.java:2617:10:2617:46 | loopingListIterator(...) : ResettableListIterator [] : String | provenance | MaD:625 | | Test.java:2618:20:2618:22 | out : ResettableListIterator [] : String | Test.java:231:19:231:32 | it : ResettableListIterator [] : String | provenance | | -| Test.java:2618:20:2618:22 | out : ResettableListIterator [] : String | Test.java:2618:9:2618:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2618:20:2618:22 | out : ResettableListIterator [] : String | Test.java:2618:9:2618:23 | getElement(...) | provenance | MaD:7 | | Test.java:2623:18:2623:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2624:40:2624:41 | in : ListIterator [] : String | provenance | | | Test.java:2623:45:2623:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2623:45:2623:60 | (...)... : String | Test.java:2623:18:2623:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2623:53:2623:60 | source(...) : Object | Test.java:2623:45:2623:60 | (...)... : String | provenance | | | Test.java:2624:10:2624:42 | peekingIterator(...) : Iterator [] : String | Test.java:2625:20:2625:22 | out : Iterator [] : String | provenance | | -| Test.java:2624:40:2624:41 | in : ListIterator [] : String | Test.java:2624:10:2624:42 | peekingIterator(...) : Iterator [] : String | provenance | MaD:622 | +| Test.java:2624:40:2624:41 | in : ListIterator [] : String | Test.java:2624:10:2624:42 | peekingIterator(...) : Iterator [] : String | provenance | MaD:626 | | Test.java:2625:20:2625:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2625:20:2625:22 | out : Iterator [] : String | Test.java:2625:9:2625:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2625:20:2625:22 | out : Iterator [] : String | Test.java:2625:9:2625:23 | getElement(...) | provenance | MaD:7 | | Test.java:2630:18:2630:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2631:41:2631:42 | in : ListIterator [] : String | provenance | | | Test.java:2630:45:2630:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2630:45:2630:60 | (...)... : String | Test.java:2630:18:2630:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2630:53:2630:60 | source(...) : Object | Test.java:2630:45:2630:60 | (...)... : String | provenance | | | Test.java:2631:10:2631:43 | pushbackIterator(...) : Iterator [] : String | Test.java:2632:20:2632:22 | out : Iterator [] : String | provenance | | -| Test.java:2631:41:2631:42 | in : ListIterator [] : String | Test.java:2631:10:2631:43 | pushbackIterator(...) : Iterator [] : String | provenance | MaD:623 | +| Test.java:2631:41:2631:42 | in : ListIterator [] : String | Test.java:2631:10:2631:43 | pushbackIterator(...) : Iterator [] : String | provenance | MaD:627 | | Test.java:2632:20:2632:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2632:20:2632:22 | out : Iterator [] : String | Test.java:2632:9:2632:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2632:20:2632:22 | out : Iterator [] : String | Test.java:2632:9:2632:23 | getElement(...) | provenance | MaD:7 | | Test.java:2637:16:2637:23 | source(...) : Object | Test.java:2638:42:2638:43 | in : Object | provenance | | | Test.java:2638:10:2638:44 | singletonIterator(...) : ResettableIterator [] : Object | Test.java:2639:20:2639:22 | out : ResettableIterator [] : Object | provenance | | -| Test.java:2638:42:2638:43 | in : Object | Test.java:2638:10:2638:44 | singletonIterator(...) : ResettableIterator [] : Object | provenance | MaD:624 | +| Test.java:2638:42:2638:43 | in : Object | Test.java:2638:10:2638:44 | singletonIterator(...) : ResettableIterator [] : Object | provenance | MaD:628 | | Test.java:2639:20:2639:22 | out : ResettableIterator [] : Object | Test.java:231:19:231:32 | it : ResettableIterator [] : Object | provenance | | -| Test.java:2639:20:2639:22 | out : ResettableIterator [] : Object | Test.java:2639:9:2639:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2639:20:2639:22 | out : ResettableIterator [] : Object | Test.java:2639:9:2639:23 | getElement(...) | provenance | MaD:7 | | Test.java:2644:16:2644:23 | source(...) : Object | Test.java:2645:46:2645:47 | in : Object | provenance | | | Test.java:2645:10:2645:48 | singletonListIterator(...) : ListIterator [] : Object | Test.java:2646:20:2646:22 | out : ListIterator [] : Object | provenance | | -| Test.java:2645:46:2645:47 | in : Object | Test.java:2645:10:2645:48 | singletonListIterator(...) : ListIterator [] : Object | provenance | MaD:625 | +| Test.java:2645:46:2645:47 | in : Object | Test.java:2645:10:2645:48 | singletonListIterator(...) : ListIterator [] : Object | provenance | MaD:629 | | Test.java:2646:20:2646:22 | out : ListIterator [] : Object | Test.java:231:19:231:32 | it : ListIterator [] : Object | provenance | | -| Test.java:2646:20:2646:22 | out : ListIterator [] : Object | Test.java:2646:9:2646:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2646:20:2646:22 | out : ListIterator [] : Object | Test.java:2646:9:2646:23 | getElement(...) | provenance | MaD:7 | | Test.java:2651:18:2651:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2652:41:2652:42 | in : ListIterator [] : String | provenance | | | Test.java:2651:45:2651:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2651:45:2651:60 | (...)... : String | Test.java:2651:18:2651:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2651:53:2651:60 | source(...) : Object | Test.java:2651:45:2651:60 | (...)... : String | provenance | | | Test.java:2652:10:2652:47 | skippingIterator(...) : SkippingIterator [] : String | Test.java:2653:20:2653:22 | out : SkippingIterator [] : String | provenance | | -| Test.java:2652:41:2652:42 | in : ListIterator [] : String | Test.java:2652:10:2652:47 | skippingIterator(...) : SkippingIterator [] : String | provenance | MaD:626 | +| Test.java:2652:41:2652:42 | in : ListIterator [] : String | Test.java:2652:10:2652:47 | skippingIterator(...) : SkippingIterator [] : String | provenance | MaD:630 | | Test.java:2653:20:2653:22 | out : SkippingIterator [] : String | Test.java:231:19:231:32 | it : SkippingIterator [] : String | provenance | | -| Test.java:2653:20:2653:22 | out : SkippingIterator [] : String | Test.java:2653:9:2653:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2653:20:2653:22 | out : SkippingIterator [] : String | Test.java:2653:9:2653:23 | getElement(...) | provenance | MaD:7 | | Test.java:2658:18:2658:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2659:32:2659:33 | in : ListIterator [] : String | provenance | | | Test.java:2658:45:2658:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2658:45:2658:60 | (...)... : String | Test.java:2658:18:2658:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2658:53:2658:60 | source(...) : Object | Test.java:2658:45:2658:60 | (...)... : String | provenance | | | Test.java:2659:10:2659:40 | toArray(...) : Object[] [[]] : String | Test.java:2660:25:2660:27 | out : Object[] [[]] : String | provenance | | -| Test.java:2659:32:2659:33 | in : ListIterator [] : String | Test.java:2659:10:2659:40 | toArray(...) : Object[] [[]] : String | provenance | MaD:627 | +| Test.java:2659:32:2659:33 | in : ListIterator [] : String | Test.java:2659:10:2659:40 | toArray(...) : Object[] [[]] : String | provenance | MaD:631 | | Test.java:2660:25:2660:27 | out : Object[] [[]] : String | Test.java:229:24:229:32 | array : Object[] [[]] : String | provenance | | | Test.java:2660:25:2660:27 | out : Object[] [[]] : String | Test.java:2660:9:2660:28 | getArrayElement(...) | provenance | | | Test.java:2665:18:2665:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2666:32:2666:33 | in : ListIterator [] : String | provenance | | @@ -4446,7 +4440,7 @@ edges | Test.java:2665:45:2665:60 | (...)... : String | Test.java:2665:18:2665:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2665:53:2665:60 | source(...) : Object | Test.java:2665:45:2665:60 | (...)... : String | provenance | | | Test.java:2666:10:2666:34 | toArray(...) : Object[] [[]] : String | Test.java:2667:25:2667:27 | out : Object[] [[]] : String | provenance | | -| Test.java:2666:32:2666:33 | in : ListIterator [] : String | Test.java:2666:10:2666:34 | toArray(...) : Object[] [[]] : String | provenance | MaD:627 | +| Test.java:2666:32:2666:33 | in : ListIterator [] : String | Test.java:2666:10:2666:34 | toArray(...) : Object[] [[]] : String | provenance | MaD:631 | | Test.java:2667:25:2667:27 | out : Object[] [[]] : String | Test.java:229:24:229:32 | array : Object[] [[]] : String | provenance | | | Test.java:2667:25:2667:27 | out : Object[] [[]] : String | Test.java:2667:9:2667:28 | getArrayElement(...) | provenance | | | Test.java:2672:18:2672:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2673:31:2673:32 | in : ListIterator [] : String | provenance | | @@ -4454,7 +4448,7 @@ edges | Test.java:2672:45:2672:60 | (...)... : String | Test.java:2672:18:2672:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2672:53:2672:60 | source(...) : Object | Test.java:2672:45:2672:60 | (...)... : String | provenance | | | Test.java:2673:10:2673:36 | toList(...) : List [] : String | Test.java:2674:20:2674:22 | out : List [] : String | provenance | | -| Test.java:2673:31:2673:32 | in : ListIterator [] : String | Test.java:2673:10:2673:36 | toList(...) : List [] : String | provenance | MaD:628 | +| Test.java:2673:31:2673:32 | in : ListIterator [] : String | Test.java:2673:10:2673:36 | toList(...) : List [] : String | provenance | MaD:632 | | Test.java:2674:20:2674:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2674:20:2674:22 | out : List [] : String | Test.java:2674:9:2674:23 | getElement(...) | provenance | MaD:3 | | Test.java:2679:18:2679:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2680:31:2680:32 | in : ListIterator [] : String | provenance | | @@ -4462,7 +4456,7 @@ edges | Test.java:2679:45:2679:60 | (...)... : String | Test.java:2679:18:2679:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2679:53:2679:60 | source(...) : Object | Test.java:2679:45:2679:60 | (...)... : String | provenance | | | Test.java:2680:10:2680:33 | toList(...) : List [] : String | Test.java:2681:20:2681:22 | out : List [] : String | provenance | | -| Test.java:2680:31:2680:32 | in : ListIterator [] : String | Test.java:2680:10:2680:33 | toList(...) : List [] : String | provenance | MaD:628 | +| Test.java:2680:31:2680:32 | in : ListIterator [] : String | Test.java:2680:10:2680:33 | toList(...) : List [] : String | provenance | MaD:632 | | Test.java:2681:20:2681:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2681:20:2681:22 | out : List [] : String | Test.java:2681:9:2681:23 | getElement(...) | provenance | MaD:3 | | Test.java:2686:18:2686:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2687:39:2687:40 | in : ListIterator [] : String | provenance | | @@ -4470,122 +4464,122 @@ edges | Test.java:2686:45:2686:60 | (...)... : String | Test.java:2686:18:2686:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2686:53:2686:60 | source(...) : Object | Test.java:2686:45:2686:60 | (...)... : String | provenance | | | Test.java:2687:10:2687:41 | toListIterator(...) : ListIterator [] : String | Test.java:2688:20:2688:22 | out : ListIterator [] : String | provenance | | -| Test.java:2687:39:2687:40 | in : ListIterator [] : String | Test.java:2687:10:2687:41 | toListIterator(...) : ListIterator [] : String | provenance | MaD:629 | +| Test.java:2687:39:2687:40 | in : ListIterator [] : String | Test.java:2687:10:2687:41 | toListIterator(...) : ListIterator [] : String | provenance | MaD:633 | | Test.java:2688:20:2688:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | provenance | | -| Test.java:2688:20:2688:22 | out : ListIterator [] : String | Test.java:2688:9:2688:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2688:20:2688:22 | out : ListIterator [] : String | Test.java:2688:9:2688:23 | getElement(...) | provenance | MaD:7 | | Test.java:2693:16:2693:31 | (...)... : String | Test.java:2694:45:2694:46 | in : String | provenance | | | Test.java:2693:24:2693:31 | source(...) : Object | Test.java:2693:16:2693:31 | (...)... : String | provenance | | | Test.java:2694:10:2694:59 | toString(...) : String | Test.java:2695:9:2695:11 | out | provenance | | -| Test.java:2694:45:2694:46 | in : String | Test.java:2694:10:2694:59 | toString(...) : String | provenance | MaD:630 | +| Test.java:2694:45:2694:46 | in : String | Test.java:2694:10:2694:59 | toString(...) : String | provenance | MaD:634 | | Test.java:2700:16:2700:31 | (...)... : String | Test.java:2701:51:2701:52 | in : String | provenance | | | Test.java:2700:24:2700:31 | source(...) : Object | Test.java:2700:16:2700:31 | (...)... : String | provenance | | | Test.java:2701:10:2701:59 | toString(...) : String | Test.java:2702:9:2702:11 | out | provenance | | -| Test.java:2701:51:2701:52 | in : String | Test.java:2701:10:2701:59 | toString(...) : String | provenance | MaD:631 | +| Test.java:2701:51:2701:52 | in : String | Test.java:2701:10:2701:59 | toString(...) : String | provenance | MaD:635 | | Test.java:2707:16:2707:31 | (...)... : String | Test.java:2708:57:2708:58 | in : String | provenance | | | Test.java:2707:24:2707:31 | source(...) : Object | Test.java:2707:16:2707:31 | (...)... : String | provenance | | | Test.java:2708:10:2708:59 | toString(...) : String | Test.java:2709:9:2709:11 | out | provenance | | -| Test.java:2708:57:2708:58 | in : String | Test.java:2708:10:2708:59 | toString(...) : String | provenance | MaD:632 | +| Test.java:2708:57:2708:58 | in : String | Test.java:2708:10:2708:59 | toString(...) : String | provenance | MaD:636 | | Test.java:2714:18:2714:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2715:45:2715:46 | in : ListIterator [] : String | provenance | | | Test.java:2714:45:2714:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2714:45:2714:60 | (...)... : String | Test.java:2714:18:2714:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2714:53:2714:60 | source(...) : Object | Test.java:2714:45:2714:60 | (...)... : String | provenance | | | Test.java:2715:10:2715:47 | unmodifiableIterator(...) : Iterator [] : String | Test.java:2716:20:2716:22 | out : Iterator [] : String | provenance | | -| Test.java:2715:45:2715:46 | in : ListIterator [] : String | Test.java:2715:10:2715:47 | unmodifiableIterator(...) : Iterator [] : String | provenance | MaD:633 | +| Test.java:2715:45:2715:46 | in : ListIterator [] : String | Test.java:2715:10:2715:47 | unmodifiableIterator(...) : Iterator [] : String | provenance | MaD:637 | | Test.java:2716:20:2716:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:2716:20:2716:22 | out : Iterator [] : String | Test.java:2716:9:2716:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2716:20:2716:22 | out : Iterator [] : String | Test.java:2716:9:2716:23 | getElement(...) | provenance | MaD:7 | | Test.java:2721:22:2721:65 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2722:49:2722:50 | in : ListIterator [] : String | provenance | | | Test.java:2721:49:2721:64 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2721:49:2721:64 | (...)... : String | Test.java:2721:22:2721:65 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2721:57:2721:64 | source(...) : Object | Test.java:2721:49:2721:64 | (...)... : String | provenance | | | Test.java:2722:10:2722:51 | unmodifiableListIterator(...) : ListIterator [] : String | Test.java:2723:20:2723:22 | out : ListIterator [] : String | provenance | | -| Test.java:2722:49:2722:50 | in : ListIterator [] : String | Test.java:2722:10:2722:51 | unmodifiableListIterator(...) : ListIterator [] : String | provenance | MaD:634 | +| Test.java:2722:49:2722:50 | in : ListIterator [] : String | Test.java:2722:10:2722:51 | unmodifiableListIterator(...) : ListIterator [] : String | provenance | MaD:638 | | Test.java:2723:20:2723:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | provenance | | -| Test.java:2723:20:2723:22 | out : ListIterator [] : String | Test.java:2723:9:2723:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2723:20:2723:22 | out : ListIterator [] : String | Test.java:2723:9:2723:23 | getElement(...) | provenance | MaD:7 | | Test.java:2728:21:2728:55 | newOMIWithElement(...) : OrderedMapIterator [] : String | Test.java:2729:48:2729:49 | in : OrderedMapIterator [] : String | provenance | | | Test.java:2728:39:2728:54 | (...)... : String | Test.java:283:53:283:57 | key : String | provenance | | -| Test.java:2728:39:2728:54 | (...)... : String | Test.java:2728:21:2728:55 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:19 | -| Test.java:2728:39:2728:54 | (...)... : String | Test.java:2728:21:2728:55 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:779 | +| Test.java:2728:39:2728:54 | (...)... : String | Test.java:2728:21:2728:55 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:20 | +| Test.java:2728:39:2728:54 | (...)... : String | Test.java:2728:21:2728:55 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:783 | | Test.java:2728:47:2728:54 | source(...) : Object | Test.java:2728:39:2728:54 | (...)... : String | provenance | | | Test.java:2729:10:2729:50 | unmodifiableMapIterator(...) : MapIterator [] : String | Test.java:2730:20:2730:22 | out : MapIterator [] : String | provenance | | -| Test.java:2729:48:2729:49 | in : OrderedMapIterator [] : String | Test.java:2729:10:2729:50 | unmodifiableMapIterator(...) : MapIterator [] : String | provenance | MaD:635 | +| Test.java:2729:48:2729:49 | in : OrderedMapIterator [] : String | Test.java:2729:10:2729:50 | unmodifiableMapIterator(...) : MapIterator [] : String | provenance | MaD:639 | | Test.java:2730:20:2730:22 | out : MapIterator [] : String | Test.java:231:19:231:32 | it : MapIterator [] : String | provenance | | -| Test.java:2730:20:2730:22 | out : MapIterator [] : String | Test.java:2730:9:2730:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2730:20:2730:22 | out : MapIterator [] : String | Test.java:2730:9:2730:23 | getElement(...) | provenance | MaD:7 | | Test.java:2735:21:2735:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | Test.java:2736:48:2736:49 | in : OrderedMapIterator [] : String | provenance | | | Test.java:2735:40:2735:55 | (...)... : String | Test.java:302:54:302:60 | value : String | provenance | | -| Test.java:2735:40:2735:55 | (...)... : String | Test.java:2735:21:2735:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | provenance | MaD:20 | -| Test.java:2735:40:2735:55 | (...)... : String | Test.java:2735:21:2735:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | provenance | MaD:780 | +| Test.java:2735:40:2735:55 | (...)... : String | Test.java:2735:21:2735:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | provenance | MaD:21 | +| Test.java:2735:40:2735:55 | (...)... : String | Test.java:2735:21:2735:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | provenance | MaD:784 | | Test.java:2735:48:2735:55 | source(...) : Object | Test.java:2735:40:2735:55 | (...)... : String | provenance | | | Test.java:2736:10:2736:50 | unmodifiableMapIterator(...) : MapIterator [] : String | Test.java:2737:21:2737:23 | out : MapIterator [] : String | provenance | | -| Test.java:2736:48:2736:49 | in : OrderedMapIterator [] : String | Test.java:2736:10:2736:50 | unmodifiableMapIterator(...) : MapIterator [] : String | provenance | MaD:636 | +| Test.java:2736:48:2736:49 | in : OrderedMapIterator [] : String | Test.java:2736:10:2736:50 | unmodifiableMapIterator(...) : MapIterator [] : String | provenance | MaD:640 | | Test.java:2737:21:2737:23 | out : MapIterator [] : String | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | provenance | | -| Test.java:2737:21:2737:23 | out : MapIterator [] : String | Test.java:2737:9:2737:24 | getMapValue(...) | provenance | MaD:673 | +| Test.java:2737:21:2737:23 | out : MapIterator [] : String | Test.java:2737:9:2737:24 | getMapValue(...) | provenance | MaD:677 | | Test.java:2742:18:2742:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2743:40:2743:41 | in : ListIterator [] : String | provenance | | | Test.java:2742:45:2742:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2742:45:2742:60 | (...)... : String | Test.java:2742:18:2742:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2742:53:2742:60 | source(...) : Object | Test.java:2742:45:2742:60 | (...)... : String | provenance | | -| Test.java:2743:10:2743:42 | new ..[] { .. } : Iterator[] [[], ] : String | Test.java:2743:10:2743:42 | zippingIterator(...) : ZippingIterator [] : String | provenance | MaD:642 | +| Test.java:2743:10:2743:42 | new ..[] { .. } : Iterator[] [[], ] : String | Test.java:2743:10:2743:42 | zippingIterator(...) : ZippingIterator [] : String | provenance | MaD:646 | | Test.java:2743:10:2743:42 | zippingIterator(...) : ZippingIterator [] : String | Test.java:2744:20:2744:22 | out : ZippingIterator [] : String | provenance | | | Test.java:2743:40:2743:41 | in : ListIterator [] : String | Test.java:2743:10:2743:42 | new ..[] { .. } : Iterator[] [[], ] : String | provenance | | | Test.java:2744:20:2744:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | -| Test.java:2744:20:2744:22 | out : ZippingIterator [] : String | Test.java:2744:9:2744:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2744:20:2744:22 | out : ZippingIterator [] : String | Test.java:2744:9:2744:23 | getElement(...) | provenance | MaD:7 | | Test.java:2749:18:2749:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2750:40:2750:41 | in : ListIterator [] : String | provenance | | | Test.java:2749:45:2749:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2749:45:2749:60 | (...)... : String | Test.java:2749:18:2749:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2749:53:2749:60 | source(...) : Object | Test.java:2749:45:2749:60 | (...)... : String | provenance | | | Test.java:2750:10:2750:48 | zippingIterator(...) : ZippingIterator [] : String | Test.java:2751:20:2751:22 | out : ZippingIterator [] : String | provenance | | -| Test.java:2750:40:2750:41 | in : ListIterator [] : String | Test.java:2750:10:2750:48 | zippingIterator(...) : ZippingIterator [] : String | provenance | MaD:637 | +| Test.java:2750:40:2750:41 | in : ListIterator [] : String | Test.java:2750:10:2750:48 | zippingIterator(...) : ZippingIterator [] : String | provenance | MaD:641 | | Test.java:2751:20:2751:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | -| Test.java:2751:20:2751:22 | out : ZippingIterator [] : String | Test.java:2751:9:2751:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2751:20:2751:22 | out : ZippingIterator [] : String | Test.java:2751:9:2751:23 | getElement(...) | provenance | MaD:7 | | Test.java:2756:18:2756:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2757:46:2757:47 | in : ListIterator [] : String | provenance | | | Test.java:2756:45:2756:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2756:45:2756:60 | (...)... : String | Test.java:2756:18:2756:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2756:53:2756:60 | source(...) : Object | Test.java:2756:45:2756:60 | (...)... : String | provenance | | | Test.java:2757:10:2757:48 | zippingIterator(...) : ZippingIterator [] : String | Test.java:2758:20:2758:22 | out : ZippingIterator [] : String | provenance | | -| Test.java:2757:46:2757:47 | in : ListIterator [] : String | Test.java:2757:10:2757:48 | zippingIterator(...) : ZippingIterator [] : String | provenance | MaD:638 | +| Test.java:2757:46:2757:47 | in : ListIterator [] : String | Test.java:2757:10:2757:48 | zippingIterator(...) : ZippingIterator [] : String | provenance | MaD:642 | | Test.java:2758:20:2758:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | -| Test.java:2758:20:2758:22 | out : ZippingIterator [] : String | Test.java:2758:9:2758:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2758:20:2758:22 | out : ZippingIterator [] : String | Test.java:2758:9:2758:23 | getElement(...) | provenance | MaD:7 | | Test.java:2763:18:2763:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2764:40:2764:41 | in : ListIterator [] : String | provenance | | | Test.java:2763:45:2763:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2763:45:2763:60 | (...)... : String | Test.java:2763:18:2763:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2763:53:2763:60 | source(...) : Object | Test.java:2763:45:2763:60 | (...)... : String | provenance | | | Test.java:2764:10:2764:54 | zippingIterator(...) : ZippingIterator [] : String | Test.java:2765:20:2765:22 | out : ZippingIterator [] : String | provenance | | -| Test.java:2764:40:2764:41 | in : ListIterator [] : String | Test.java:2764:10:2764:54 | zippingIterator(...) : ZippingIterator [] : String | provenance | MaD:639 | +| Test.java:2764:40:2764:41 | in : ListIterator [] : String | Test.java:2764:10:2764:54 | zippingIterator(...) : ZippingIterator [] : String | provenance | MaD:643 | | Test.java:2765:20:2765:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | -| Test.java:2765:20:2765:22 | out : ZippingIterator [] : String | Test.java:2765:9:2765:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2765:20:2765:22 | out : ZippingIterator [] : String | Test.java:2765:9:2765:23 | getElement(...) | provenance | MaD:7 | | Test.java:2770:18:2770:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2771:46:2771:47 | in : ListIterator [] : String | provenance | | | Test.java:2770:45:2770:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2770:45:2770:60 | (...)... : String | Test.java:2770:18:2770:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2770:53:2770:60 | source(...) : Object | Test.java:2770:45:2770:60 | (...)... : String | provenance | | | Test.java:2771:10:2771:54 | zippingIterator(...) : ZippingIterator [] : String | Test.java:2772:20:2772:22 | out : ZippingIterator [] : String | provenance | | -| Test.java:2771:46:2771:47 | in : ListIterator [] : String | Test.java:2771:10:2771:54 | zippingIterator(...) : ZippingIterator [] : String | provenance | MaD:640 | +| Test.java:2771:46:2771:47 | in : ListIterator [] : String | Test.java:2771:10:2771:54 | zippingIterator(...) : ZippingIterator [] : String | provenance | MaD:644 | | Test.java:2772:20:2772:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | -| Test.java:2772:20:2772:22 | out : ZippingIterator [] : String | Test.java:2772:9:2772:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2772:20:2772:22 | out : ZippingIterator [] : String | Test.java:2772:9:2772:23 | getElement(...) | provenance | MaD:7 | | Test.java:2777:18:2777:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:2778:52:2778:53 | in : ListIterator [] : String | provenance | | | Test.java:2777:45:2777:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | | Test.java:2777:45:2777:60 | (...)... : String | Test.java:2777:18:2777:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | | Test.java:2777:53:2777:60 | source(...) : Object | Test.java:2777:45:2777:60 | (...)... : String | provenance | | | Test.java:2778:10:2778:54 | zippingIterator(...) : ZippingIterator [] : String | Test.java:2779:20:2779:22 | out : ZippingIterator [] : String | provenance | | -| Test.java:2778:52:2778:53 | in : ListIterator [] : String | Test.java:2778:10:2778:54 | zippingIterator(...) : ZippingIterator [] : String | provenance | MaD:641 | +| Test.java:2778:52:2778:53 | in : ListIterator [] : String | Test.java:2778:10:2778:54 | zippingIterator(...) : ZippingIterator [] : String | provenance | MaD:645 | | Test.java:2779:20:2779:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | -| Test.java:2779:20:2779:22 | out : ZippingIterator [] : String | Test.java:2779:9:2779:23 | getElement(...) | provenance | MaD:6 | +| Test.java:2779:20:2779:22 | out : ZippingIterator [] : String | Test.java:2779:9:2779:23 | getElement(...) | provenance | MaD:7 | | Test.java:2784:14:2784:27 | (...)... : List | Test.java:2785:34:2785:35 | in : List | provenance | | | Test.java:2784:20:2784:27 | source(...) : Object | Test.java:2784:14:2784:27 | (...)... : List | provenance | | | Test.java:2785:10:2785:42 | defaultIfNull(...) : List | Test.java:2786:9:2786:11 | out | provenance | | -| Test.java:2785:34:2785:35 | in : List | Test.java:2785:10:2785:42 | defaultIfNull(...) : List | provenance | MaD:645 | +| Test.java:2785:34:2785:35 | in : List | Test.java:2785:10:2785:42 | defaultIfNull(...) : List | provenance | MaD:649 | | Test.java:2791:14:2791:27 | (...)... : List | Test.java:2792:40:2792:41 | in : List | provenance | | | Test.java:2791:20:2791:27 | source(...) : Object | Test.java:2791:14:2791:27 | (...)... : List | provenance | | | Test.java:2792:10:2792:42 | defaultIfNull(...) : List | Test.java:2793:9:2793:11 | out | provenance | | -| Test.java:2792:40:2792:41 | in : List | Test.java:2792:10:2792:42 | defaultIfNull(...) : List | provenance | MaD:646 | +| Test.java:2792:40:2792:41 | in : List | Test.java:2792:10:2792:42 | defaultIfNull(...) : List | provenance | MaD:650 | | Test.java:2798:14:2798:27 | (...)... : List | Test.java:2799:32:2799:33 | in : List | provenance | | | Test.java:2798:20:2798:27 | source(...) : Object | Test.java:2798:14:2798:27 | (...)... : List | provenance | | | Test.java:2799:10:2799:34 | emptyIfNull(...) : List | Test.java:2800:9:2800:11 | out | provenance | | -| Test.java:2799:32:2799:33 | in : List | Test.java:2799:10:2799:34 | emptyIfNull(...) : List | provenance | MaD:647 | +| Test.java:2799:32:2799:33 | in : List | Test.java:2799:10:2799:34 | emptyIfNull(...) : List | provenance | MaD:651 | | Test.java:2805:14:2805:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2806:34:2806:35 | in : Vector [] : String | provenance | | | Test.java:2805:35:2805:50 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:2805:35:2805:50 | (...)... : String | Test.java:2805:14:2805:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2805:43:2805:50 | source(...) : Object | Test.java:2805:35:2805:50 | (...)... : String | provenance | | | Test.java:2806:10:2806:36 | fixedSizeList(...) : List [] : String | Test.java:2807:20:2807:22 | out : List [] : String | provenance | | -| Test.java:2806:34:2806:35 | in : Vector [] : String | Test.java:2806:10:2806:36 | fixedSizeList(...) : List [] : String | provenance | MaD:648 | +| Test.java:2806:34:2806:35 | in : Vector [] : String | Test.java:2806:10:2806:36 | fixedSizeList(...) : List [] : String | provenance | MaD:652 | | Test.java:2807:20:2807:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2807:20:2807:22 | out : List [] : String | Test.java:2807:9:2807:23 | getElement(...) | provenance | MaD:3 | | Test.java:2812:14:2812:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2813:33:2813:34 | in : Vector [] : String | provenance | | @@ -4593,7 +4587,7 @@ edges | Test.java:2812:35:2812:50 | (...)... : String | Test.java:2812:14:2812:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2812:43:2812:50 | source(...) : Object | Test.java:2812:35:2812:50 | (...)... : String | provenance | | | Test.java:2813:10:2813:41 | intersection(...) : List [] : String | Test.java:2814:20:2814:22 | out : List [] : String | provenance | | -| Test.java:2813:33:2813:34 | in : Vector [] : String | Test.java:2813:10:2813:41 | intersection(...) : List [] : String | provenance | MaD:649 | +| Test.java:2813:33:2813:34 | in : Vector [] : String | Test.java:2813:10:2813:41 | intersection(...) : List [] : String | provenance | MaD:653 | | Test.java:2814:20:2814:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2814:20:2814:22 | out : List [] : String | Test.java:2814:9:2814:23 | getElement(...) | provenance | MaD:3 | | Test.java:2819:14:2819:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2820:39:2820:40 | in : Vector [] : String | provenance | | @@ -4601,7 +4595,7 @@ edges | Test.java:2819:35:2819:50 | (...)... : String | Test.java:2819:14:2819:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2819:43:2819:50 | source(...) : Object | Test.java:2819:35:2819:50 | (...)... : String | provenance | | | Test.java:2820:10:2820:41 | intersection(...) : List [] : String | Test.java:2821:20:2821:22 | out : List [] : String | provenance | | -| Test.java:2820:39:2820:40 | in : Vector [] : String | Test.java:2820:10:2820:41 | intersection(...) : List [] : String | provenance | MaD:650 | +| Test.java:2820:39:2820:40 | in : Vector [] : String | Test.java:2820:10:2820:41 | intersection(...) : List [] : String | provenance | MaD:654 | | Test.java:2821:20:2821:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2821:20:2821:22 | out : List [] : String | Test.java:2821:9:2821:23 | getElement(...) | provenance | MaD:3 | | Test.java:2826:14:2826:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2827:29:2827:30 | in : Vector [] : String | provenance | | @@ -4609,7 +4603,7 @@ edges | Test.java:2826:35:2826:50 | (...)... : String | Test.java:2826:14:2826:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2826:43:2826:50 | source(...) : Object | Test.java:2826:35:2826:50 | (...)... : String | provenance | | | Test.java:2827:10:2827:50 | lazyList(...) : List [] : String | Test.java:2828:20:2828:22 | out : List [] : String | provenance | | -| Test.java:2827:29:2827:30 | in : Vector [] : String | Test.java:2827:10:2827:50 | lazyList(...) : List [] : String | provenance | MaD:651 | +| Test.java:2827:29:2827:30 | in : Vector [] : String | Test.java:2827:10:2827:50 | lazyList(...) : List [] : String | provenance | MaD:655 | | Test.java:2828:20:2828:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2828:20:2828:22 | out : List [] : String | Test.java:2828:9:2828:23 | getElement(...) | provenance | MaD:3 | | Test.java:2833:14:2833:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2834:29:2834:30 | in : Vector [] : String | provenance | | @@ -4617,23 +4611,23 @@ edges | Test.java:2833:35:2833:50 | (...)... : String | Test.java:2833:14:2833:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2833:43:2833:50 | source(...) : Object | Test.java:2833:35:2833:50 | (...)... : String | provenance | | | Test.java:2834:10:2834:46 | lazyList(...) : List [] : String | Test.java:2835:20:2835:22 | out : List [] : String | provenance | | -| Test.java:2834:29:2834:30 | in : Vector [] : String | Test.java:2834:10:2834:46 | lazyList(...) : List [] : String | provenance | MaD:651 | +| Test.java:2834:29:2834:30 | in : Vector [] : String | Test.java:2834:10:2834:46 | lazyList(...) : List [] : String | provenance | MaD:655 | | Test.java:2835:20:2835:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2835:20:2835:22 | out : List [] : String | Test.java:2835:9:2835:23 | getElement(...) | provenance | MaD:3 | | Test.java:2840:22:2840:43 | (...)... : CharSequence | Test.java:2841:45:2841:46 | in : CharSequence | provenance | | | Test.java:2840:36:2840:43 | source(...) : Object | Test.java:2840:22:2840:43 | (...)... : CharSequence | provenance | | | Test.java:2841:10:2841:67 | longestCommonSubsequence(...) : String | Test.java:2842:9:2842:11 | out | provenance | | -| Test.java:2841:45:2841:46 | in : CharSequence | Test.java:2841:10:2841:67 | longestCommonSubsequence(...) : String | provenance | MaD:652 | +| Test.java:2841:45:2841:46 | in : CharSequence | Test.java:2841:10:2841:67 | longestCommonSubsequence(...) : String | provenance | MaD:656 | | Test.java:2847:22:2847:43 | (...)... : CharSequence | Test.java:2848:65:2848:66 | in : CharSequence | provenance | | | Test.java:2847:36:2847:43 | source(...) : Object | Test.java:2847:22:2847:43 | (...)... : CharSequence | provenance | | | Test.java:2848:10:2848:67 | longestCommonSubsequence(...) : String | Test.java:2849:9:2849:11 | out | provenance | | -| Test.java:2848:65:2848:66 | in : CharSequence | Test.java:2848:10:2848:67 | longestCommonSubsequence(...) : String | provenance | MaD:653 | +| Test.java:2848:65:2848:66 | in : CharSequence | Test.java:2848:10:2848:67 | longestCommonSubsequence(...) : String | provenance | MaD:657 | | Test.java:2854:14:2854:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2855:45:2855:46 | in : Vector [] : String | provenance | | | Test.java:2854:35:2854:50 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | | Test.java:2854:35:2854:50 | (...)... : String | Test.java:2854:14:2854:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2854:43:2854:50 | source(...) : Object | Test.java:2854:35:2854:50 | (...)... : String | provenance | | | Test.java:2855:10:2855:59 | longestCommonSubsequence(...) : List [] : String | Test.java:2856:20:2856:22 | out : List [] : String | provenance | | -| Test.java:2855:45:2855:46 | in : Vector [] : String | Test.java:2855:10:2855:59 | longestCommonSubsequence(...) : List [] : String | provenance | MaD:654 | +| Test.java:2855:45:2855:46 | in : Vector [] : String | Test.java:2855:10:2855:59 | longestCommonSubsequence(...) : List [] : String | provenance | MaD:658 | | Test.java:2856:20:2856:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2856:20:2856:22 | out : List [] : String | Test.java:2856:9:2856:23 | getElement(...) | provenance | MaD:3 | | Test.java:2861:14:2861:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2862:57:2862:58 | in : Vector [] : String | provenance | | @@ -4641,7 +4635,7 @@ edges | Test.java:2861:35:2861:50 | (...)... : String | Test.java:2861:14:2861:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2861:43:2861:50 | source(...) : Object | Test.java:2861:35:2861:50 | (...)... : String | provenance | | | Test.java:2862:10:2862:59 | longestCommonSubsequence(...) : List [] : String | Test.java:2863:20:2863:22 | out : List [] : String | provenance | | -| Test.java:2862:57:2862:58 | in : Vector [] : String | Test.java:2862:10:2862:59 | longestCommonSubsequence(...) : List [] : String | provenance | MaD:655 | +| Test.java:2862:57:2862:58 | in : Vector [] : String | Test.java:2862:10:2862:59 | longestCommonSubsequence(...) : List [] : String | provenance | MaD:659 | | Test.java:2863:20:2863:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2863:20:2863:22 | out : List [] : String | Test.java:2863:9:2863:23 | getElement(...) | provenance | MaD:3 | | Test.java:2868:14:2868:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2869:45:2869:46 | in : Vector [] : String | provenance | | @@ -4649,7 +4643,7 @@ edges | Test.java:2868:35:2868:50 | (...)... : String | Test.java:2868:14:2868:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2868:43:2868:50 | source(...) : Object | Test.java:2868:35:2868:50 | (...)... : String | provenance | | | Test.java:2869:10:2869:59 | longestCommonSubsequence(...) : List [] : String | Test.java:2870:20:2870:22 | out : List [] : String | provenance | | -| Test.java:2869:45:2869:46 | in : Vector [] : String | Test.java:2869:10:2869:59 | longestCommonSubsequence(...) : List [] : String | provenance | MaD:656 | +| Test.java:2869:45:2869:46 | in : Vector [] : String | Test.java:2869:10:2869:59 | longestCommonSubsequence(...) : List [] : String | provenance | MaD:660 | | Test.java:2870:20:2870:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2870:20:2870:22 | out : List [] : String | Test.java:2870:9:2870:23 | getElement(...) | provenance | MaD:3 | | Test.java:2875:14:2875:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2876:51:2876:52 | in : Vector [] : String | provenance | | @@ -4657,7 +4651,7 @@ edges | Test.java:2875:35:2875:50 | (...)... : String | Test.java:2875:14:2875:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2875:43:2875:50 | source(...) : Object | Test.java:2875:35:2875:50 | (...)... : String | provenance | | | Test.java:2876:10:2876:59 | longestCommonSubsequence(...) : List [] : String | Test.java:2877:20:2877:22 | out : List [] : String | provenance | | -| Test.java:2876:51:2876:52 | in : Vector [] : String | Test.java:2876:10:2876:59 | longestCommonSubsequence(...) : List [] : String | provenance | MaD:657 | +| Test.java:2876:51:2876:52 | in : Vector [] : String | Test.java:2876:10:2876:59 | longestCommonSubsequence(...) : List [] : String | provenance | MaD:661 | | Test.java:2877:20:2877:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2877:20:2877:22 | out : List [] : String | Test.java:2877:9:2877:23 | getElement(...) | provenance | MaD:3 | | Test.java:2882:14:2882:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2883:30:2883:31 | in : Vector [] : String | provenance | | @@ -4665,7 +4659,7 @@ edges | Test.java:2882:35:2882:50 | (...)... : String | Test.java:2882:14:2882:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2882:43:2882:50 | source(...) : Object | Test.java:2882:35:2882:50 | (...)... : String | provenance | | | Test.java:2883:10:2883:35 | partition(...) : List [, ] : String | Test.java:2884:41:2884:43 | out : List [, ] : String | provenance | | -| Test.java:2883:30:2883:31 | in : Vector [] : String | Test.java:2883:10:2883:35 | partition(...) : List [, ] : String | provenance | MaD:658 | +| Test.java:2883:30:2883:31 | in : Vector [] : String | Test.java:2883:10:2883:35 | partition(...) : List [, ] : String | provenance | MaD:662 | | Test.java:2884:20:2884:44 | (...)... : Iterable [] : String | Test.java:230:19:230:32 | it : Iterable [] : String | provenance | | | Test.java:2884:20:2884:44 | (...)... : Iterable [] : String | Test.java:2884:9:2884:45 | getElement(...) | provenance | MaD:3 | | Test.java:2884:30:2884:44 | getElement(...) : Object [] : String | Test.java:2884:20:2884:44 | (...)... : Iterable [] : String | provenance | | @@ -4676,7 +4670,7 @@ edges | Test.java:2889:35:2889:50 | (...)... : String | Test.java:2889:14:2889:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2889:43:2889:50 | source(...) : Object | Test.java:2889:35:2889:50 | (...)... : String | provenance | | | Test.java:2890:10:2890:43 | predicatedList(...) : List [] : String | Test.java:2891:20:2891:22 | out : List [] : String | provenance | | -| Test.java:2890:35:2890:36 | in : Vector [] : String | Test.java:2890:10:2890:43 | predicatedList(...) : List [] : String | provenance | MaD:659 | +| Test.java:2890:35:2890:36 | in : Vector [] : String | Test.java:2890:10:2890:43 | predicatedList(...) : List [] : String | provenance | MaD:663 | | Test.java:2891:20:2891:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2891:20:2891:22 | out : List [] : String | Test.java:2891:9:2891:23 | getElement(...) | provenance | MaD:3 | | Test.java:2896:20:2896:57 | newVectorWithElement(...) : Vector [] : String | Test.java:2897:30:2897:31 | in : Vector [] : String | provenance | | @@ -4684,7 +4678,7 @@ edges | Test.java:2896:41:2896:56 | (...)... : String | Test.java:2896:20:2896:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2896:49:2896:56 | source(...) : Object | Test.java:2896:41:2896:56 | (...)... : String | provenance | | | Test.java:2897:10:2897:38 | removeAll(...) : List [] : String | Test.java:2898:20:2898:22 | out : List [] : String | provenance | | -| Test.java:2897:30:2897:31 | in : Vector [] : String | Test.java:2897:10:2897:38 | removeAll(...) : List [] : String | provenance | MaD:660 | +| Test.java:2897:30:2897:31 | in : Vector [] : String | Test.java:2897:10:2897:38 | removeAll(...) : List [] : String | provenance | MaD:664 | | Test.java:2898:20:2898:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2898:20:2898:22 | out : List [] : String | Test.java:2898:9:2898:23 | getElement(...) | provenance | MaD:3 | | Test.java:2903:20:2903:57 | newVectorWithElement(...) : Vector [] : String | Test.java:2904:30:2904:31 | in : Vector [] : String | provenance | | @@ -4692,7 +4686,7 @@ edges | Test.java:2903:41:2903:56 | (...)... : String | Test.java:2903:20:2903:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2903:49:2903:56 | source(...) : Object | Test.java:2903:41:2903:56 | (...)... : String | provenance | | | Test.java:2904:10:2904:38 | retainAll(...) : List [] : String | Test.java:2905:20:2905:22 | out : List [] : String | provenance | | -| Test.java:2904:30:2904:31 | in : Vector [] : String | Test.java:2904:10:2904:38 | retainAll(...) : List [] : String | provenance | MaD:661 | +| Test.java:2904:30:2904:31 | in : Vector [] : String | Test.java:2904:10:2904:38 | retainAll(...) : List [] : String | provenance | MaD:665 | | Test.java:2905:20:2905:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2905:20:2905:22 | out : List [] : String | Test.java:2905:9:2905:23 | getElement(...) | provenance | MaD:3 | | Test.java:2910:20:2910:57 | newVectorWithElement(...) : Vector [] : String | Test.java:2911:27:2911:28 | in : Vector [] : String | provenance | | @@ -4700,7 +4694,7 @@ edges | Test.java:2910:41:2910:56 | (...)... : String | Test.java:2910:20:2910:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2910:49:2910:56 | source(...) : Object | Test.java:2910:41:2910:56 | (...)... : String | provenance | | | Test.java:2911:10:2911:35 | select(...) : List [] : String | Test.java:2912:20:2912:22 | out : List [] : String | provenance | | -| Test.java:2911:27:2911:28 | in : Vector [] : String | Test.java:2911:10:2911:35 | select(...) : List [] : String | provenance | MaD:662 | +| Test.java:2911:27:2911:28 | in : Vector [] : String | Test.java:2911:10:2911:35 | select(...) : List [] : String | provenance | MaD:666 | | Test.java:2912:20:2912:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2912:20:2912:22 | out : List [] : String | Test.java:2912:9:2912:23 | getElement(...) | provenance | MaD:3 | | Test.java:2917:20:2917:57 | newVectorWithElement(...) : Vector [] : String | Test.java:2918:35:2918:36 | in : Vector [] : String | provenance | | @@ -4708,7 +4702,7 @@ edges | Test.java:2917:41:2917:56 | (...)... : String | Test.java:2917:20:2917:57 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2917:49:2917:56 | source(...) : Object | Test.java:2917:41:2917:56 | (...)... : String | provenance | | | Test.java:2918:10:2918:43 | selectRejected(...) : List [] : String | Test.java:2919:20:2919:22 | out : List [] : String | provenance | | -| Test.java:2918:35:2918:36 | in : Vector [] : String | Test.java:2918:10:2918:43 | selectRejected(...) : List [] : String | provenance | MaD:663 | +| Test.java:2918:35:2918:36 | in : Vector [] : String | Test.java:2918:10:2918:43 | selectRejected(...) : List [] : String | provenance | MaD:667 | | Test.java:2919:20:2919:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2919:20:2919:22 | out : List [] : String | Test.java:2919:9:2919:23 | getElement(...) | provenance | MaD:3 | | Test.java:2924:14:2924:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2925:29:2925:30 | in : Vector [] : String | provenance | | @@ -4716,7 +4710,7 @@ edges | Test.java:2924:35:2924:50 | (...)... : String | Test.java:2924:14:2924:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2924:43:2924:50 | source(...) : Object | Test.java:2924:35:2924:50 | (...)... : String | provenance | | | Test.java:2925:10:2925:37 | subtract(...) : List [] : String | Test.java:2926:20:2926:22 | out : List [] : String | provenance | | -| Test.java:2925:29:2925:30 | in : Vector [] : String | Test.java:2925:10:2925:37 | subtract(...) : List [] : String | provenance | MaD:664 | +| Test.java:2925:29:2925:30 | in : Vector [] : String | Test.java:2925:10:2925:37 | subtract(...) : List [] : String | provenance | MaD:668 | | Test.java:2926:20:2926:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2926:20:2926:22 | out : List [] : String | Test.java:2926:9:2926:23 | getElement(...) | provenance | MaD:3 | | Test.java:2931:14:2931:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2932:24:2932:25 | in : Vector [] : String | provenance | | @@ -4724,7 +4718,7 @@ edges | Test.java:2931:35:2931:50 | (...)... : String | Test.java:2931:14:2931:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2931:43:2931:50 | source(...) : Object | Test.java:2931:35:2931:50 | (...)... : String | provenance | | | Test.java:2932:10:2932:32 | sum(...) : List [] : String | Test.java:2933:20:2933:22 | out : List [] : String | provenance | | -| Test.java:2932:24:2932:25 | in : Vector [] : String | Test.java:2932:10:2932:32 | sum(...) : List [] : String | provenance | MaD:665 | +| Test.java:2932:24:2932:25 | in : Vector [] : String | Test.java:2932:10:2932:32 | sum(...) : List [] : String | provenance | MaD:669 | | Test.java:2933:20:2933:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2933:20:2933:22 | out : List [] : String | Test.java:2933:9:2933:23 | getElement(...) | provenance | MaD:3 | | Test.java:2938:14:2938:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2939:30:2939:31 | in : Vector [] : String | provenance | | @@ -4732,7 +4726,7 @@ edges | Test.java:2938:35:2938:50 | (...)... : String | Test.java:2938:14:2938:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2938:43:2938:50 | source(...) : Object | Test.java:2938:35:2938:50 | (...)... : String | provenance | | | Test.java:2939:10:2939:32 | sum(...) : List [] : String | Test.java:2940:20:2940:22 | out : List [] : String | provenance | | -| Test.java:2939:30:2939:31 | in : Vector [] : String | Test.java:2939:10:2939:32 | sum(...) : List [] : String | provenance | MaD:666 | +| Test.java:2939:30:2939:31 | in : Vector [] : String | Test.java:2939:10:2939:32 | sum(...) : List [] : String | provenance | MaD:670 | | Test.java:2940:20:2940:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2940:20:2940:22 | out : List [] : String | Test.java:2940:9:2940:23 | getElement(...) | provenance | MaD:3 | | Test.java:2945:14:2945:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2946:37:2946:38 | in : Vector [] : String | provenance | | @@ -4740,7 +4734,7 @@ edges | Test.java:2945:35:2945:50 | (...)... : String | Test.java:2945:14:2945:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2945:43:2945:50 | source(...) : Object | Test.java:2945:35:2945:50 | (...)... : String | provenance | | | Test.java:2946:10:2946:39 | synchronizedList(...) : List [] : String | Test.java:2947:20:2947:22 | out : List [] : String | provenance | | -| Test.java:2946:37:2946:38 | in : Vector [] : String | Test.java:2946:10:2946:39 | synchronizedList(...) : List [] : String | provenance | MaD:667 | +| Test.java:2946:37:2946:38 | in : Vector [] : String | Test.java:2946:10:2946:39 | synchronizedList(...) : List [] : String | provenance | MaD:671 | | Test.java:2947:20:2947:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2947:20:2947:22 | out : List [] : String | Test.java:2947:9:2947:23 | getElement(...) | provenance | MaD:3 | | Test.java:2952:14:2952:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2953:36:2953:37 | in : Vector [] : String | provenance | | @@ -4748,7 +4742,7 @@ edges | Test.java:2952:35:2952:50 | (...)... : String | Test.java:2952:14:2952:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2952:43:2952:50 | source(...) : Object | Test.java:2952:35:2952:50 | (...)... : String | provenance | | | Test.java:2953:10:2953:44 | transformedList(...) : List [] : String | Test.java:2954:20:2954:22 | out : List [] : String | provenance | | -| Test.java:2953:36:2953:37 | in : Vector [] : String | Test.java:2953:10:2953:44 | transformedList(...) : List [] : String | provenance | MaD:668 | +| Test.java:2953:36:2953:37 | in : Vector [] : String | Test.java:2953:10:2953:44 | transformedList(...) : List [] : String | provenance | MaD:672 | | Test.java:2954:20:2954:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2954:20:2954:22 | out : List [] : String | Test.java:2954:9:2954:23 | getElement(...) | provenance | MaD:3 | | Test.java:2959:14:2959:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2960:26:2960:27 | in : Vector [] : String | provenance | | @@ -4756,7 +4750,7 @@ edges | Test.java:2959:35:2959:50 | (...)... : String | Test.java:2959:14:2959:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2959:43:2959:50 | source(...) : Object | Test.java:2959:35:2959:50 | (...)... : String | provenance | | | Test.java:2960:10:2960:34 | union(...) : List [] : String | Test.java:2961:20:2961:22 | out : List [] : String | provenance | | -| Test.java:2960:26:2960:27 | in : Vector [] : String | Test.java:2960:10:2960:34 | union(...) : List [] : String | provenance | MaD:669 | +| Test.java:2960:26:2960:27 | in : Vector [] : String | Test.java:2960:10:2960:34 | union(...) : List [] : String | provenance | MaD:673 | | Test.java:2961:20:2961:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2961:20:2961:22 | out : List [] : String | Test.java:2961:9:2961:23 | getElement(...) | provenance | MaD:3 | | Test.java:2966:14:2966:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2967:32:2967:33 | in : Vector [] : String | provenance | | @@ -4764,7 +4758,7 @@ edges | Test.java:2966:35:2966:50 | (...)... : String | Test.java:2966:14:2966:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2966:43:2966:50 | source(...) : Object | Test.java:2966:35:2966:50 | (...)... : String | provenance | | | Test.java:2967:10:2967:34 | union(...) : List [] : String | Test.java:2968:20:2968:22 | out : List [] : String | provenance | | -| Test.java:2967:32:2967:33 | in : Vector [] : String | Test.java:2967:10:2967:34 | union(...) : List [] : String | provenance | MaD:670 | +| Test.java:2967:32:2967:33 | in : Vector [] : String | Test.java:2967:10:2967:34 | union(...) : List [] : String | provenance | MaD:674 | | Test.java:2968:20:2968:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2968:20:2968:22 | out : List [] : String | Test.java:2968:9:2968:23 | getElement(...) | provenance | MaD:3 | | Test.java:2973:14:2973:51 | newVectorWithElement(...) : Vector [] : String | Test.java:2974:37:2974:38 | in : Vector [] : String | provenance | | @@ -4772,74 +4766,62 @@ edges | Test.java:2973:35:2973:50 | (...)... : String | Test.java:2973:14:2973:51 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | | Test.java:2973:43:2973:50 | source(...) : Object | Test.java:2973:35:2973:50 | (...)... : String | provenance | | | Test.java:2974:10:2974:39 | unmodifiableList(...) : List [] : String | Test.java:2975:20:2975:22 | out : List [] : String | provenance | | -| Test.java:2974:37:2974:38 | in : Vector [] : String | Test.java:2974:10:2974:39 | unmodifiableList(...) : List [] : String | provenance | MaD:671 | +| Test.java:2974:37:2974:38 | in : Vector [] : String | Test.java:2974:10:2974:39 | unmodifiableList(...) : List [] : String | provenance | MaD:675 | | Test.java:2975:20:2975:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:2975:20:2975:22 | out : List [] : String | Test.java:2975:9:2975:23 | getElement(...) | provenance | MaD:3 | | Test.java:2980:21:2980:55 | newOMIWithElement(...) : OrderedMapIterator [] : String | Test.java:2981:10:2981:11 | in : OrderedMapIterator [] : String | provenance | | | Test.java:2980:39:2980:54 | (...)... : String | Test.java:283:53:283:57 | key : String | provenance | | -| Test.java:2980:39:2980:54 | (...)... : String | Test.java:2980:21:2980:55 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:19 | -| Test.java:2980:39:2980:54 | (...)... : String | Test.java:2980:21:2980:55 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:779 | +| Test.java:2980:39:2980:54 | (...)... : String | Test.java:2980:21:2980:55 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:20 | +| Test.java:2980:39:2980:54 | (...)... : String | Test.java:2980:21:2980:55 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:783 | | Test.java:2980:47:2980:54 | source(...) : Object | Test.java:2980:39:2980:54 | (...)... : String | provenance | | -| Test.java:2981:10:2981:11 | in : OrderedMapIterator [] : String | Test.java:2981:10:2981:20 | getKey(...) : String | provenance | MaD:672 | +| Test.java:2981:10:2981:11 | in : OrderedMapIterator [] : String | Test.java:2981:10:2981:20 | getKey(...) : String | provenance | MaD:676 | | Test.java:2981:10:2981:20 | getKey(...) : String | Test.java:2982:9:2982:11 | out | provenance | | | Test.java:2987:21:2987:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | Test.java:2988:10:2988:11 | in : OrderedMapIterator [] : String | provenance | | | Test.java:2987:40:2987:55 | (...)... : String | Test.java:302:54:302:60 | value : String | provenance | | -| Test.java:2987:40:2987:55 | (...)... : String | Test.java:2987:21:2987:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | provenance | MaD:20 | -| Test.java:2987:40:2987:55 | (...)... : String | Test.java:2987:21:2987:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | provenance | MaD:780 | +| Test.java:2987:40:2987:55 | (...)... : String | Test.java:2987:21:2987:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | provenance | MaD:21 | +| Test.java:2987:40:2987:55 | (...)... : String | Test.java:2987:21:2987:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | provenance | MaD:784 | | Test.java:2987:48:2987:55 | source(...) : Object | Test.java:2987:40:2987:55 | (...)... : String | provenance | | -| Test.java:2988:10:2988:11 | in : OrderedMapIterator [] : String | Test.java:2988:10:2988:22 | getValue(...) : String | provenance | MaD:673 | +| Test.java:2988:10:2988:11 | in : OrderedMapIterator [] : String | Test.java:2988:10:2988:22 | getValue(...) : String | provenance | MaD:677 | | Test.java:2988:10:2988:22 | getValue(...) : String | Test.java:2989:9:2989:11 | out | provenance | | | Test.java:2994:16:2994:23 | source(...) : Object | Test.java:2995:17:2995:18 | in : Object | provenance | | | Test.java:2995:4:2995:6 | out [post update] : MapIterator [] : Object | Test.java:2996:21:2996:23 | out : MapIterator [] : Object | provenance | | -| Test.java:2995:17:2995:18 | in : Object | Test.java:2995:4:2995:6 | out [post update] : MapIterator [] : Object | provenance | MaD:674 | +| Test.java:2995:17:2995:18 | in : Object | Test.java:2995:4:2995:6 | out [post update] : MapIterator [] : Object | provenance | MaD:678 | | Test.java:2996:21:2996:23 | out : MapIterator [] : Object | Test.java:246:20:246:47 | mapIterator : MapIterator [] : Object | provenance | | -| Test.java:2996:21:2996:23 | out : MapIterator [] : Object | Test.java:2996:9:2996:24 | getMapValue(...) | provenance | MaD:673 | +| Test.java:2996:21:2996:23 | out : MapIterator [] : Object | Test.java:2996:9:2996:24 | getMapValue(...) | provenance | MaD:677 | | Test.java:3001:21:3001:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | Test.java:3002:10:3002:11 | in : OrderedMapIterator [] : String | provenance | | | Test.java:3001:40:3001:55 | (...)... : String | Test.java:302:54:302:60 | value : String | provenance | | -| Test.java:3001:40:3001:55 | (...)... : String | Test.java:3001:21:3001:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | provenance | MaD:20 | -| Test.java:3001:40:3001:55 | (...)... : String | Test.java:3001:21:3001:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | provenance | MaD:780 | +| Test.java:3001:40:3001:55 | (...)... : String | Test.java:3001:21:3001:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | provenance | MaD:21 | +| Test.java:3001:40:3001:55 | (...)... : String | Test.java:3001:21:3001:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | provenance | MaD:784 | | Test.java:3001:48:3001:55 | source(...) : Object | Test.java:3001:40:3001:55 | (...)... : String | provenance | | -| Test.java:3002:10:3002:11 | in : OrderedMapIterator [] : String | Test.java:3002:10:3002:26 | setValue(...) : String | provenance | MaD:675 | +| Test.java:3002:10:3002:11 | in : OrderedMapIterator [] : String | Test.java:3002:10:3002:26 | setValue(...) : String | provenance | MaD:679 | | Test.java:3002:10:3002:26 | setValue(...) : String | Test.java:3003:9:3003:11 | out | provenance | | | Test.java:3008:18:3008:53 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:3009:22:3009:23 | in : MultiValueMap [, ] : String | provenance | | -| Test.java:3008:18:3008:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:3009:22:3009:23 | in : MultiValueMap [] : String | provenance | | | Test.java:3008:37:3008:52 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:3008:37:3008:52 | (...)... : String | Test.java:3008:18:3008:53 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:737 | -| Test.java:3008:37:3008:52 | (...)... : String | Test.java:3008:18:3008:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:3008:37:3008:52 | (...)... : String | Test.java:3008:18:3008:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:3008:37:3008:52 | (...)... : String | Test.java:3008:18:3008:53 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:741 | | Test.java:3008:45:3008:52 | source(...) : Object | Test.java:3008:37:3008:52 | (...)... : String | provenance | | -| Test.java:3009:10:3009:33 | (...)... : Collection [] : Object | Test.java:3010:20:3010:22 | out : Collection [] : Object | provenance | | | Test.java:3009:10:3009:33 | (...)... : Collection [] : String | Test.java:3010:20:3010:22 | out : Collection [] : String | provenance | | -| Test.java:3009:22:3009:23 | in : MultiValueMap [, ] : String | Test.java:3009:22:3009:33 | get(...) : Object [] : String | provenance | MaD:17 | -| Test.java:3009:22:3009:23 | in : MultiValueMap [, ] : String | Test.java:3009:22:3009:33 | get(...) : Object [] : String | provenance | MaD:558 | -| Test.java:3009:22:3009:23 | in : MultiValueMap [, ] : String | Test.java:3009:22:3009:33 | get(...) : Object [] : String | provenance | MaD:735 | -| Test.java:3009:22:3009:23 | in : MultiValueMap [] : String | Test.java:3009:22:3009:33 | get(...) : Object [] : Object | provenance | MaD:735 | -| Test.java:3009:22:3009:33 | get(...) : Object [] : Object | Test.java:3009:10:3009:33 | (...)... : Collection [] : Object | provenance | | +| Test.java:3009:22:3009:23 | in : MultiValueMap [, ] : String | Test.java:3009:22:3009:33 | get(...) : Object [] : String | provenance | MaD:739 | | Test.java:3009:22:3009:33 | get(...) : Object [] : String | Test.java:3009:10:3009:33 | (...)... : Collection [] : String | provenance | | -| Test.java:3010:20:3010:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | -| Test.java:3010:20:3010:22 | out : Collection [] : Object | Test.java:3010:9:3010:23 | getElement(...) | provenance | MaD:3 | | Test.java:3010:20:3010:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:3010:20:3010:22 | out : Collection [] : String | Test.java:3010:9:3010:23 | getElement(...) | provenance | MaD:3 | | Test.java:3015:16:3015:23 | source(...) : Object | Test.java:3016:12:3016:13 | in : Object | provenance | | | Test.java:3016:4:3016:6 | out [post update] : MultiValueMap [] : Object | Test.java:3017:19:3017:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:3016:12:3016:13 | in : Object | Test.java:3016:4:3016:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:19 | -| Test.java:3016:12:3016:13 | in : Object | Test.java:3016:4:3016:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:736 | -| Test.java:3016:12:3016:13 | in : Object | Test.java:3016:4:3016:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:779 | +| Test.java:3016:12:3016:13 | in : Object | Test.java:3016:4:3016:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:20 | +| Test.java:3016:12:3016:13 | in : Object | Test.java:3016:4:3016:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:740 | +| Test.java:3016:12:3016:13 | in : Object | Test.java:3016:4:3016:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:783 | | Test.java:3017:19:3017:21 | out : MultiValueMap [] : Object | Test.java:228:18:228:29 | map : MultiValueMap [] : Object | provenance | | -| Test.java:3017:19:3017:21 | out : MultiValueMap [] : Object | Test.java:3017:9:3017:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:3017:19:3017:21 | out : MultiValueMap [] : Object | Test.java:3017:9:3017:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:3022:16:3022:23 | source(...) : Object | Test.java:3023:12:3023:13 | in : Object | provenance | | | Test.java:3023:4:3023:6 | out [post update] : MultiMap [] : Object | Test.java:3024:19:3024:21 | out : MultiMap [] : Object | provenance | | -| Test.java:3023:12:3023:13 | in : Object | Test.java:3023:4:3023:6 | out [post update] : MultiMap [] : Object | provenance | MaD:19 | -| Test.java:3023:12:3023:13 | in : Object | Test.java:3023:4:3023:6 | out [post update] : MultiMap [] : Object | provenance | MaD:736 | -| Test.java:3023:12:3023:13 | in : Object | Test.java:3023:4:3023:6 | out [post update] : MultiMap [] : Object | provenance | MaD:779 | +| Test.java:3023:12:3023:13 | in : Object | Test.java:3023:4:3023:6 | out [post update] : MultiMap [] : Object | provenance | MaD:740 | | Test.java:3024:19:3024:21 | out : MultiMap [] : Object | Test.java:228:18:228:29 | map : MultiMap [] : Object | provenance | | -| Test.java:3024:19:3024:21 | out : MultiMap [] : Object | Test.java:3024:9:3024:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:3024:19:3024:21 | out : MultiMap [] : Object | Test.java:3024:9:3024:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:3029:16:3029:23 | source(...) : Object | Test.java:3030:18:3030:19 | in : Object | provenance | | | Test.java:3030:4:3030:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:3031:44:3031:46 | out : MultiValueMap [, ] : Object | provenance | | | Test.java:3030:4:3030:6 | out [post update] : MultiValueMap [] : Object | Test.java:3031:44:3031:46 | out : MultiValueMap [] : Object | provenance | | -| Test.java:3030:18:3030:19 | in : Object | Test.java:3030:4:3030:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:737 | -| Test.java:3030:18:3030:19 | in : Object | Test.java:3030:4:3030:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:20 | -| Test.java:3030:18:3030:19 | in : Object | Test.java:3030:4:3030:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:780 | +| Test.java:3030:18:3030:19 | in : Object | Test.java:3030:4:3030:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:741 | +| Test.java:3030:18:3030:19 | in : Object | Test.java:3030:4:3030:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:21 | +| Test.java:3030:18:3030:19 | in : Object | Test.java:3030:4:3030:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:784 | | Test.java:3031:20:3031:47 | (...)... : Collection | Test.java:230:19:230:32 | it : Collection | provenance | | | Test.java:3031:20:3031:47 | (...)... : Collection | Test.java:3031:9:3031:48 | getElement(...) | provenance | MaD:3 | | Test.java:3031:20:3031:47 | (...)... : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | @@ -4847,38 +4829,26 @@ edges | Test.java:3031:32:3031:47 | getMapValue(...) : Object | Test.java:3031:20:3031:47 | (...)... : Collection | provenance | | | Test.java:3031:32:3031:47 | getMapValue(...) : Object [] : Object | Test.java:3031:20:3031:47 | (...)... : Collection [] : Object | provenance | | | Test.java:3031:44:3031:46 | out : MultiValueMap [, ] : Object | Test.java:232:20:232:31 | map : MultiValueMap [, ] : Object | provenance | | -| Test.java:3031:44:3031:46 | out : MultiValueMap [, ] : Object | Test.java:3031:32:3031:47 | getMapValue(...) : Object [] : Object | provenance | MaD:17 | +| Test.java:3031:44:3031:46 | out : MultiValueMap [, ] : Object | Test.java:3031:32:3031:47 | getMapValue(...) : Object [] : Object | provenance | MaD:18 | | Test.java:3031:44:3031:46 | out : MultiValueMap [] : Object | Test.java:232:20:232:31 | map : MultiValueMap [] : Object | provenance | | -| Test.java:3031:44:3031:46 | out : MultiValueMap [] : Object | Test.java:3031:32:3031:47 | getMapValue(...) : Object | provenance | MaD:17 | +| Test.java:3031:44:3031:46 | out : MultiValueMap [] : Object | Test.java:3031:32:3031:47 | getMapValue(...) : Object | provenance | MaD:18 | | Test.java:3036:16:3036:23 | source(...) : Object | Test.java:3037:18:3037:19 | in : Object | provenance | | | Test.java:3037:4:3037:6 | out [post update] : MultiMap [, ] : Object | Test.java:3038:44:3038:46 | out : MultiMap [, ] : Object | provenance | | -| Test.java:3037:4:3037:6 | out [post update] : MultiMap [] : Object | Test.java:3038:44:3038:46 | out : MultiMap [] : Object | provenance | | -| Test.java:3037:18:3037:19 | in : Object | Test.java:3037:4:3037:6 | out [post update] : MultiMap [, ] : Object | provenance | MaD:737 | -| Test.java:3037:18:3037:19 | in : Object | Test.java:3037:4:3037:6 | out [post update] : MultiMap [] : Object | provenance | MaD:20 | -| Test.java:3037:18:3037:19 | in : Object | Test.java:3037:4:3037:6 | out [post update] : MultiMap [] : Object | provenance | MaD:780 | -| Test.java:3038:20:3038:47 | (...)... : Collection | Test.java:230:19:230:32 | it : Collection | provenance | | -| Test.java:3038:20:3038:47 | (...)... : Collection | Test.java:3038:9:3038:48 | getElement(...) | provenance | MaD:3 | +| Test.java:3037:18:3037:19 | in : Object | Test.java:3037:4:3037:6 | out [post update] : MultiMap [, ] : Object | provenance | MaD:741 | | Test.java:3038:20:3038:47 | (...)... : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | | Test.java:3038:20:3038:47 | (...)... : Collection [] : Object | Test.java:3038:9:3038:48 | getElement(...) | provenance | MaD:3 | -| Test.java:3038:32:3038:47 | getMapValue(...) : Object | Test.java:3038:20:3038:47 | (...)... : Collection | provenance | | | Test.java:3038:32:3038:47 | getMapValue(...) : Object [] : Object | Test.java:3038:20:3038:47 | (...)... : Collection [] : Object | provenance | | | Test.java:3038:44:3038:46 | out : MultiMap [, ] : Object | Test.java:232:20:232:31 | map : MultiMap [, ] : Object | provenance | | -| Test.java:3038:44:3038:46 | out : MultiMap [, ] : Object | Test.java:3038:32:3038:47 | getMapValue(...) : Object [] : Object | provenance | MaD:17 | -| Test.java:3038:44:3038:46 | out : MultiMap [] : Object | Test.java:232:20:232:31 | map : MultiMap [] : Object | provenance | | -| Test.java:3038:44:3038:46 | out : MultiMap [] : Object | Test.java:3038:32:3038:47 | getMapValue(...) : Object | provenance | MaD:17 | +| Test.java:3038:44:3038:46 | out : MultiMap [, ] : Object | Test.java:3038:32:3038:47 | getMapValue(...) : Object [] : Object | provenance | MaD:18 | | Test.java:3043:23:3043:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:3044:10:3044:11 | in : MultiValueMap [, ] : String | provenance | | | Test.java:3043:23:3043:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:3044:10:3044:11 | in : MultiValueMap [] : String | provenance | | | Test.java:3043:42:3043:57 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:3043:42:3043:57 | (...)... : String | Test.java:3043:23:3043:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:737 | -| Test.java:3043:42:3043:57 | (...)... : String | Test.java:3043:23:3043:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:3043:42:3043:57 | (...)... : String | Test.java:3043:23:3043:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:3043:42:3043:57 | (...)... : String | Test.java:3043:23:3043:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:741 | +| Test.java:3043:42:3043:57 | (...)... : String | Test.java:3043:23:3043:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:3043:42:3043:57 | (...)... : String | Test.java:3043:23:3043:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:3043:50:3043:57 | source(...) : Object | Test.java:3043:42:3043:57 | (...)... : String | provenance | | -| Test.java:3044:10:3044:11 | in : MultiValueMap [, ] : String | Test.java:3044:10:3044:20 | values(...) : Collection [] : String | provenance | MaD:359 | -| Test.java:3044:10:3044:11 | in : MultiValueMap [, ] : String | Test.java:3044:10:3044:20 | values(...) : Collection [] : String | provenance | MaD:738 | -| Test.java:3044:10:3044:11 | in : MultiValueMap [] : String | Test.java:3044:10:3044:20 | values(...) : Collection [] : Object | provenance | MaD:359 | -| Test.java:3044:10:3044:11 | in : MultiValueMap [] : String | Test.java:3044:10:3044:20 | values(...) : Collection [] : Object | provenance | MaD:738 | -| Test.java:3044:10:3044:11 | in : MultiValueMap [] : String | Test.java:3044:10:3044:20 | values(...) : Collection [] : String | provenance | MaD:25 | -| Test.java:3044:10:3044:11 | in : MultiValueMap [] : String | Test.java:3044:10:3044:20 | values(...) : Collection [] : String | provenance | MaD:561 | +| Test.java:3044:10:3044:11 | in : MultiValueMap [, ] : String | Test.java:3044:10:3044:20 | values(...) : Collection [] : String | provenance | MaD:362 | +| Test.java:3044:10:3044:11 | in : MultiValueMap [] : String | Test.java:3044:10:3044:20 | values(...) : Collection [] : Object | provenance | MaD:362 | | Test.java:3044:10:3044:20 | values(...) : Collection [] : Object | Test.java:3045:20:3045:22 | out : Collection [] : Object | provenance | | | Test.java:3044:10:3044:20 | values(...) : Collection [] : String | Test.java:3045:20:3045:22 | out : Collection [] : String | provenance | | | Test.java:3045:20:3045:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | @@ -4888,14 +4858,12 @@ edges | Test.java:3050:18:3050:53 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:3051:10:3051:11 | in : MultiValueMap [, ] : String | provenance | | | Test.java:3050:18:3050:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:3051:10:3051:11 | in : MultiValueMap [] : String | provenance | | | Test.java:3050:37:3050:52 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:3050:37:3050:52 | (...)... : String | Test.java:3050:18:3050:53 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:737 | -| Test.java:3050:37:3050:52 | (...)... : String | Test.java:3050:18:3050:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:3050:37:3050:52 | (...)... : String | Test.java:3050:18:3050:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | +| Test.java:3050:37:3050:52 | (...)... : String | Test.java:3050:18:3050:53 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:741 | +| Test.java:3050:37:3050:52 | (...)... : String | Test.java:3050:18:3050:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:3050:37:3050:52 | (...)... : String | Test.java:3050:18:3050:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | | Test.java:3050:45:3050:52 | source(...) : Object | Test.java:3050:37:3050:52 | (...)... : String | provenance | | -| Test.java:3051:10:3051:11 | in : MultiValueMap [, ] : String | Test.java:3051:10:3051:20 | values(...) : Collection [] : String | provenance | MaD:738 | -| Test.java:3051:10:3051:11 | in : MultiValueMap [] : String | Test.java:3051:10:3051:20 | values(...) : Collection [] : Object | provenance | MaD:738 | -| Test.java:3051:10:3051:11 | in : MultiValueMap [] : String | Test.java:3051:10:3051:20 | values(...) : Collection [] : String | provenance | MaD:25 | -| Test.java:3051:10:3051:11 | in : MultiValueMap [] : String | Test.java:3051:10:3051:20 | values(...) : Collection [] : String | provenance | MaD:561 | +| Test.java:3051:10:3051:11 | in : MultiValueMap [, ] : String | Test.java:3051:10:3051:20 | values(...) : Collection [] : String | provenance | MaD:742 | +| Test.java:3051:10:3051:11 | in : MultiValueMap [] : String | Test.java:3051:10:3051:20 | values(...) : Collection [] : Object | provenance | MaD:742 | | Test.java:3051:10:3051:20 | values(...) : Collection [] : Object | Test.java:3052:20:3052:22 | out : Collection [] : Object | provenance | | | Test.java:3051:10:3051:20 | values(...) : Collection [] : String | Test.java:3052:20:3052:22 | out : Collection [] : String | provenance | | | Test.java:3052:20:3052:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | @@ -4905,4670 +4873,4653 @@ edges | Test.java:3057:24:3057:47 | (...)... : MultiValuedMap | Test.java:3058:36:3058:37 | in : MultiValuedMap | provenance | | | Test.java:3057:40:3057:47 | source(...) : Object | Test.java:3057:24:3057:47 | (...)... : MultiValuedMap | provenance | | | Test.java:3058:10:3058:38 | emptyIfNull(...) : MultiValuedMap | Test.java:3059:9:3059:11 | out | provenance | | -| Test.java:3058:36:3058:37 | in : MultiValuedMap | Test.java:3058:10:3058:38 | emptyIfNull(...) : MultiValuedMap | provenance | MaD:739 | +| Test.java:3058:36:3058:37 | in : MultiValuedMap | Test.java:3058:10:3058:38 | emptyIfNull(...) : MultiValuedMap | provenance | MaD:743 | | Test.java:3064:24:3064:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:3065:10:3065:11 | in : ArrayListValuedHashMap [] : String | provenance | | | Test.java:3064:43:3064:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | -| Test.java:3064:43:3064:58 | (...)... : String | Test.java:3064:24:3064:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:764 | +| Test.java:3064:43:3064:58 | (...)... : String | Test.java:3064:24:3064:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:768 | | Test.java:3064:51:3064:58 | source(...) : Object | Test.java:3064:43:3064:58 | (...)... : String | provenance | | -| Test.java:3065:10:3065:11 | in : ArrayListValuedHashMap [] : String | Test.java:3065:10:3065:21 | entries(...) : Collection [, ] : String | provenance | MaD:757 | +| Test.java:3065:10:3065:11 | in : ArrayListValuedHashMap [] : String | Test.java:3065:10:3065:21 | entries(...) : Collection [, ] : String | provenance | MaD:761 | | Test.java:3065:10:3065:21 | entries(...) : Collection [, ] : String | Test.java:3066:39:3066:41 | out : Collection [, ] : String | provenance | | | Test.java:3066:28:3066:42 | getElement(...) : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | -| Test.java:3066:28:3066:42 | getElement(...) : Entry [] : String | Test.java:3066:9:3066:43 | getMapKeyFromEntry(...) | provenance | MaD:9 | +| Test.java:3066:28:3066:42 | getElement(...) : Entry [] : String | Test.java:3066:9:3066:43 | getMapKeyFromEntry(...) | provenance | MaD:10 | | Test.java:3066:39:3066:41 | out : Collection [, ] : String | Test.java:230:19:230:32 | it : Collection [, ] : String | provenance | | | Test.java:3066:39:3066:41 | out : Collection [, ] : String | Test.java:3066:28:3066:42 | getElement(...) : Entry [] : String | provenance | MaD:3 | | Test.java:3071:24:3071:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3072:10:3072:11 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3071:45:3071:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3071:45:3071:60 | (...)... : String | Test.java:3071:24:3071:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3071:45:3071:60 | (...)... : String | Test.java:3071:24:3071:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3071:53:3071:60 | source(...) : Object | Test.java:3071:45:3071:60 | (...)... : String | provenance | | -| Test.java:3072:10:3072:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3072:10:3072:21 | entries(...) : Collection [, ] : String | provenance | MaD:758 | +| Test.java:3072:10:3072:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3072:10:3072:21 | entries(...) : Collection [, ] : String | provenance | MaD:762 | | Test.java:3072:10:3072:21 | entries(...) : Collection [, ] : String | Test.java:3073:41:3073:43 | out : Collection [, ] : String | provenance | | | Test.java:3073:30:3073:44 | getElement(...) : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | -| Test.java:3073:30:3073:44 | getElement(...) : Entry [] : String | Test.java:3073:9:3073:45 | getMapValueFromEntry(...) | provenance | MaD:10 | +| Test.java:3073:30:3073:44 | getElement(...) : Entry [] : String | Test.java:3073:9:3073:45 | getMapValueFromEntry(...) | provenance | MaD:11 | | Test.java:3073:41:3073:43 | out : Collection [, ] : String | Test.java:230:19:230:32 | it : Collection [, ] : String | provenance | | | Test.java:3073:41:3073:43 | out : Collection [, ] : String | Test.java:3073:30:3073:44 | getElement(...) : Entry [] : String | provenance | MaD:3 | | Test.java:3078:24:3078:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3079:38:3079:39 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3078:45:3078:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3078:45:3078:60 | (...)... : String | Test.java:3078:24:3078:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3078:45:3078:60 | (...)... : String | Test.java:3078:24:3078:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3078:53:3078:60 | source(...) : Object | Test.java:3078:45:3078:60 | (...)... : String | provenance | | | Test.java:3079:10:3079:46 | getCollection(...) : Collection [] : String | Test.java:3080:20:3080:22 | out : Collection [] : String | provenance | | -| Test.java:3079:38:3079:39 | in : ArrayListValuedHashMap [, ] : String | Test.java:3079:10:3079:46 | getCollection(...) : Collection [] : String | provenance | MaD:740 | +| Test.java:3079:38:3079:39 | in : ArrayListValuedHashMap [, ] : String | Test.java:3079:10:3079:46 | getCollection(...) : Collection [] : String | provenance | MaD:744 | | Test.java:3080:20:3080:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:3080:20:3080:22 | out : Collection [] : String | Test.java:3080:9:3080:23 | getElement(...) | provenance | MaD:3 | | Test.java:3085:24:3085:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3086:39:3086:40 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3085:45:3085:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3085:45:3085:60 | (...)... : String | Test.java:3085:24:3085:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3085:45:3085:60 | (...)... : String | Test.java:3085:24:3085:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3085:53:3085:60 | source(...) : Object | Test.java:3085:45:3085:60 | (...)... : String | provenance | | | Test.java:3086:10:3086:47 | getValuesAsBag(...) : Bag [] : String | Test.java:3087:20:3087:22 | out : Bag [] : String | provenance | | -| Test.java:3086:39:3086:40 | in : ArrayListValuedHashMap [, ] : String | Test.java:3086:10:3086:47 | getValuesAsBag(...) : Bag [] : String | provenance | MaD:741 | +| Test.java:3086:39:3086:40 | in : ArrayListValuedHashMap [, ] : String | Test.java:3086:10:3086:47 | getValuesAsBag(...) : Bag [] : String | provenance | MaD:745 | | Test.java:3087:20:3087:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | | Test.java:3087:20:3087:22 | out : Bag [] : String | Test.java:3087:9:3087:23 | getElement(...) | provenance | MaD:3 | | Test.java:3092:24:3092:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3093:40:3093:41 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3092:45:3092:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3092:45:3092:60 | (...)... : String | Test.java:3092:24:3092:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3092:45:3092:60 | (...)... : String | Test.java:3092:24:3092:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3092:53:3092:60 | source(...) : Object | Test.java:3092:45:3092:60 | (...)... : String | provenance | | | Test.java:3093:10:3093:48 | getValuesAsList(...) : List [] : String | Test.java:3094:20:3094:22 | out : List [] : String | provenance | | -| Test.java:3093:40:3093:41 | in : ArrayListValuedHashMap [, ] : String | Test.java:3093:10:3093:48 | getValuesAsList(...) : List [] : String | provenance | MaD:742 | +| Test.java:3093:40:3093:41 | in : ArrayListValuedHashMap [, ] : String | Test.java:3093:10:3093:48 | getValuesAsList(...) : List [] : String | provenance | MaD:746 | | Test.java:3094:20:3094:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:3094:20:3094:22 | out : List [] : String | Test.java:3094:9:3094:23 | getElement(...) | provenance | MaD:3 | | Test.java:3099:24:3099:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3100:39:3100:40 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3099:45:3099:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3099:45:3099:60 | (...)... : String | Test.java:3099:24:3099:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3099:45:3099:60 | (...)... : String | Test.java:3099:24:3099:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3099:53:3099:60 | source(...) : Object | Test.java:3099:45:3099:60 | (...)... : String | provenance | | | Test.java:3100:10:3100:47 | getValuesAsSet(...) : Set [] : String | Test.java:3101:20:3101:22 | out : Set [] : String | provenance | | -| Test.java:3100:39:3100:40 | in : ArrayListValuedHashMap [, ] : String | Test.java:3100:10:3100:47 | getValuesAsSet(...) : Set [] : String | provenance | MaD:743 | +| Test.java:3100:39:3100:40 | in : ArrayListValuedHashMap [, ] : String | Test.java:3100:10:3100:47 | getValuesAsSet(...) : Set [] : String | provenance | MaD:747 | | Test.java:3101:20:3101:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | | Test.java:3101:20:3101:22 | out : Set [] : String | Test.java:3101:9:3101:23 | getElement(...) | provenance | MaD:3 | | Test.java:3106:24:3106:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:3107:50:3107:51 | in : ArrayListValuedHashMap [] : String | provenance | | | Test.java:3106:43:3106:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | -| Test.java:3106:43:3106:58 | (...)... : String | Test.java:3106:24:3106:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:764 | +| Test.java:3106:43:3106:58 | (...)... : String | Test.java:3106:24:3106:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:768 | | Test.java:3106:51:3106:58 | source(...) : Object | Test.java:3106:43:3106:58 | (...)... : String | provenance | | | Test.java:3107:10:3107:64 | transformedMultiValuedMap(...) : MultiValuedMap [] : String | Test.java:3108:19:3108:21 | out : MultiValuedMap [] : String | provenance | | -| Test.java:3107:50:3107:51 | in : ArrayListValuedHashMap [] : String | Test.java:3107:10:3107:64 | transformedMultiValuedMap(...) : MultiValuedMap [] : String | provenance | MaD:744 | +| Test.java:3107:50:3107:51 | in : ArrayListValuedHashMap [] : String | Test.java:3107:10:3107:64 | transformedMultiValuedMap(...) : MultiValuedMap [] : String | provenance | MaD:748 | | Test.java:3108:19:3108:21 | out : MultiValuedMap [] : String | Test.java:240:18:240:46 | container : MultiValuedMap [] : String | provenance | | -| Test.java:3108:19:3108:21 | out : MultiValuedMap [] : String | Test.java:3108:9:3108:22 | getMapKey(...) | provenance | MaD:760 | +| Test.java:3108:19:3108:21 | out : MultiValuedMap [] : String | Test.java:3108:9:3108:22 | getMapKey(...) | provenance | MaD:764 | | Test.java:3113:24:3113:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3114:50:3114:51 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3113:45:3113:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3113:45:3113:60 | (...)... : String | Test.java:3113:24:3113:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3113:45:3113:60 | (...)... : String | Test.java:3113:24:3113:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3113:53:3113:60 | source(...) : Object | Test.java:3113:45:3113:60 | (...)... : String | provenance | | | Test.java:3114:10:3114:64 | transformedMultiValuedMap(...) : MultiValuedMap [, ] : String | Test.java:3115:32:3115:34 | out : MultiValuedMap [, ] : String | provenance | | -| Test.java:3114:50:3114:51 | in : ArrayListValuedHashMap [, ] : String | Test.java:3114:10:3114:64 | transformedMultiValuedMap(...) : MultiValuedMap [, ] : String | provenance | MaD:745 | +| Test.java:3114:50:3114:51 | in : ArrayListValuedHashMap [, ] : String | Test.java:3114:10:3114:64 | transformedMultiValuedMap(...) : MultiValuedMap [, ] : String | provenance | MaD:749 | | Test.java:3115:20:3115:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:3115:20:3115:35 | getMapValue(...) : Collection [] : String | Test.java:3115:9:3115:36 | getElement(...) | provenance | MaD:3 | | Test.java:3115:32:3115:34 | out : MultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : MultiValuedMap [, ] : String | provenance | | -| Test.java:3115:32:3115:34 | out : MultiValuedMap [, ] : String | Test.java:3115:20:3115:35 | getMapValue(...) : Collection [] : String | provenance | MaD:759 | +| Test.java:3115:32:3115:34 | out : MultiValuedMap [, ] : String | Test.java:3115:20:3115:35 | getMapValue(...) : Collection [] : String | provenance | MaD:763 | | Test.java:3120:24:3120:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:3121:51:3121:52 | in : ArrayListValuedHashMap [] : String | provenance | | | Test.java:3120:43:3120:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | -| Test.java:3120:43:3120:58 | (...)... : String | Test.java:3120:24:3120:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:764 | +| Test.java:3120:43:3120:58 | (...)... : String | Test.java:3120:24:3120:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:768 | | Test.java:3120:51:3120:58 | source(...) : Object | Test.java:3120:43:3120:58 | (...)... : String | provenance | | | Test.java:3121:10:3121:53 | unmodifiableMultiValuedMap(...) : MultiValuedMap [] : String | Test.java:3122:19:3122:21 | out : MultiValuedMap [] : String | provenance | | -| Test.java:3121:51:3121:52 | in : ArrayListValuedHashMap [] : String | Test.java:3121:10:3121:53 | unmodifiableMultiValuedMap(...) : MultiValuedMap [] : String | provenance | MaD:746 | +| Test.java:3121:51:3121:52 | in : ArrayListValuedHashMap [] : String | Test.java:3121:10:3121:53 | unmodifiableMultiValuedMap(...) : MultiValuedMap [] : String | provenance | MaD:750 | | Test.java:3122:19:3122:21 | out : MultiValuedMap [] : String | Test.java:240:18:240:46 | container : MultiValuedMap [] : String | provenance | | -| Test.java:3122:19:3122:21 | out : MultiValuedMap [] : String | Test.java:3122:9:3122:22 | getMapKey(...) | provenance | MaD:760 | +| Test.java:3122:19:3122:21 | out : MultiValuedMap [] : String | Test.java:3122:9:3122:22 | getMapKey(...) | provenance | MaD:764 | | Test.java:3127:24:3127:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3128:51:3128:52 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3127:45:3127:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3127:45:3127:60 | (...)... : String | Test.java:3127:24:3127:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3127:45:3127:60 | (...)... : String | Test.java:3127:24:3127:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3127:53:3127:60 | source(...) : Object | Test.java:3127:45:3127:60 | (...)... : String | provenance | | | Test.java:3128:10:3128:53 | unmodifiableMultiValuedMap(...) : MultiValuedMap [, ] : String | Test.java:3129:32:3129:34 | out : MultiValuedMap [, ] : String | provenance | | -| Test.java:3128:51:3128:52 | in : ArrayListValuedHashMap [, ] : String | Test.java:3128:10:3128:53 | unmodifiableMultiValuedMap(...) : MultiValuedMap [, ] : String | provenance | MaD:747 | +| Test.java:3128:51:3128:52 | in : ArrayListValuedHashMap [, ] : String | Test.java:3128:10:3128:53 | unmodifiableMultiValuedMap(...) : MultiValuedMap [, ] : String | provenance | MaD:751 | | Test.java:3129:20:3129:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:3129:20:3129:35 | getMapValue(...) : Collection [] : String | Test.java:3129:9:3129:36 | getElement(...) | provenance | MaD:3 | | Test.java:3129:32:3129:34 | out : MultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : MultiValuedMap [, ] : String | provenance | | -| Test.java:3129:32:3129:34 | out : MultiValuedMap [, ] : String | Test.java:3129:20:3129:35 | getMapValue(...) : Collection [] : String | provenance | MaD:759 | +| Test.java:3129:32:3129:34 | out : MultiValuedMap [, ] : String | Test.java:3129:20:3129:35 | getMapValue(...) : Collection [] : String | provenance | MaD:763 | | Test.java:3134:24:3134:68 | newMultiSetEntryWithElement(...) : Entry [] : String | Test.java:3135:10:3135:11 | in : Entry [] : String | provenance | | | Test.java:3134:52:3134:67 | (...)... : String | Test.java:262:52:262:60 | element : String | provenance | | | Test.java:3134:52:3134:67 | (...)... : String | Test.java:3134:24:3134:68 | newMultiSetEntryWithElement(...) : Entry [] : String | provenance | MaD:4 | -| Test.java:3134:52:3134:67 | (...)... : String | Test.java:3134:24:3134:68 | newMultiSetEntryWithElement(...) : Entry [] : String | provenance | MaD:749 | +| Test.java:3134:52:3134:67 | (...)... : String | Test.java:3134:24:3134:68 | newMultiSetEntryWithElement(...) : Entry [] : String | provenance | MaD:753 | | Test.java:3134:60:3134:67 | source(...) : Object | Test.java:3134:52:3134:67 | (...)... : String | provenance | | -| Test.java:3135:10:3135:11 | in : Entry [] : String | Test.java:3135:10:3135:24 | getElement(...) : String | provenance | MaD:748 | +| Test.java:3135:10:3135:11 | in : Entry [] : String | Test.java:3135:10:3135:24 | getElement(...) : String | provenance | MaD:752 | | Test.java:3135:10:3135:24 | getElement(...) : String | Test.java:3136:9:3136:11 | out | provenance | | | Test.java:3141:16:3141:23 | source(...) : Object | Test.java:3142:12:3142:13 | in : Object | provenance | | | Test.java:3142:4:3142:6 | out [post update] : MultiSet [] : Object | Test.java:3143:20:3143:22 | out : MultiSet [] : Object | provenance | | -| Test.java:3142:12:3142:13 | in : Object | Test.java:3142:4:3142:6 | out [post update] : MultiSet [] : Object | provenance | MaD:749 | +| Test.java:3142:12:3142:13 | in : Object | Test.java:3142:4:3142:6 | out [post update] : MultiSet [] : Object | provenance | MaD:753 | | Test.java:3143:20:3143:22 | out : MultiSet [] : Object | Test.java:230:19:230:32 | it : MultiSet [] : Object | provenance | | | Test.java:3143:20:3143:22 | out : MultiSet [] : Object | Test.java:3143:9:3143:23 | getElement(...) | provenance | MaD:3 | | Test.java:3148:16:3148:23 | source(...) : Object | Test.java:3149:12:3149:13 | in : Object | provenance | | | Test.java:3149:4:3149:6 | out [post update] : MultiSet [] : Object | Test.java:3150:20:3150:22 | out : MultiSet [] : Object | provenance | | -| Test.java:3149:12:3149:13 | in : Object | Test.java:3149:4:3149:6 | out [post update] : MultiSet [] : Object | provenance | MaD:4 | -| Test.java:3149:12:3149:13 | in : Object | Test.java:3149:4:3149:6 | out [post update] : MultiSet [] : Object | provenance | MaD:749 | +| Test.java:3149:12:3149:13 | in : Object | Test.java:3149:4:3149:6 | out [post update] : MultiSet [] : Object | provenance | MaD:753 | | Test.java:3150:20:3150:22 | out : MultiSet [] : Object | Test.java:230:19:230:32 | it : MultiSet [] : Object | provenance | | | Test.java:3150:20:3150:22 | out : MultiSet [] : Object | Test.java:3150:9:3150:23 | getElement(...) | provenance | MaD:3 | | Test.java:3155:18:3155:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:3156:10:3156:11 | in : HashMultiSet [] : String | provenance | | | Test.java:3155:41:3155:56 | (...)... : String | Test.java:263:41:263:49 | element : String | provenance | | | Test.java:3155:41:3155:56 | (...)... : String | Test.java:3155:18:3155:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | -| Test.java:3155:41:3155:56 | (...)... : String | Test.java:3155:18:3155:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:749 | +| Test.java:3155:41:3155:56 | (...)... : String | Test.java:3155:18:3155:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:753 | | Test.java:3155:49:3155:56 | source(...) : Object | Test.java:3155:41:3155:56 | (...)... : String | provenance | | -| Test.java:3156:10:3156:11 | in : HashMultiSet [] : String | Test.java:3156:10:3156:22 | entrySet(...) : Set [, ] : String | provenance | MaD:750 | +| Test.java:3156:10:3156:11 | in : HashMultiSet [] : String | Test.java:3156:10:3156:22 | entrySet(...) : Set [, ] : String | provenance | MaD:754 | | Test.java:3156:10:3156:22 | entrySet(...) : Set [, ] : String | Test.java:3157:31:3157:33 | out : Set [, ] : String | provenance | | | Test.java:3157:20:3157:34 | getElement(...) : Entry [] : String | Test.java:235:19:235:45 | container : Entry [] : String | provenance | | -| Test.java:3157:20:3157:34 | getElement(...) : Entry [] : String | Test.java:3157:9:3157:35 | getElement(...) | provenance | MaD:748 | +| Test.java:3157:20:3157:34 | getElement(...) : Entry [] : String | Test.java:3157:9:3157:35 | getElement(...) | provenance | MaD:752 | | Test.java:3157:31:3157:33 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | provenance | | | Test.java:3157:31:3157:33 | out : Set [, ] : String | Test.java:3157:20:3157:34 | getElement(...) : Entry [] : String | provenance | MaD:3 | | Test.java:3162:18:3162:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:3163:10:3163:11 | in : HashMultiSet [] : String | provenance | | | Test.java:3162:41:3162:56 | (...)... : String | Test.java:263:41:263:49 | element : String | provenance | | | Test.java:3162:41:3162:56 | (...)... : String | Test.java:3162:18:3162:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | -| Test.java:3162:41:3162:56 | (...)... : String | Test.java:3162:18:3162:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:749 | +| Test.java:3162:41:3162:56 | (...)... : String | Test.java:3162:18:3162:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:753 | | Test.java:3162:49:3162:56 | source(...) : Object | Test.java:3162:41:3162:56 | (...)... : String | provenance | | -| Test.java:3163:10:3163:11 | in : HashMultiSet [] : String | Test.java:3163:10:3163:23 | uniqueSet(...) : Set [] : String | provenance | MaD:751 | +| Test.java:3163:10:3163:11 | in : HashMultiSet [] : String | Test.java:3163:10:3163:23 | uniqueSet(...) : Set [] : String | provenance | MaD:755 | | Test.java:3163:10:3163:23 | uniqueSet(...) : Set [] : String | Test.java:3164:20:3164:22 | out : Set [] : String | provenance | | | Test.java:3164:20:3164:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | | Test.java:3164:20:3164:22 | out : Set [] : String | Test.java:3164:9:3164:23 | getElement(...) | provenance | MaD:3 | | Test.java:3169:18:3169:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:3170:43:3170:44 | in : HashMultiSet [] : String | provenance | | | Test.java:3169:41:3169:56 | (...)... : String | Test.java:263:41:263:49 | element : String | provenance | | | Test.java:3169:41:3169:56 | (...)... : String | Test.java:3169:18:3169:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | -| Test.java:3169:41:3169:56 | (...)... : String | Test.java:3169:18:3169:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:749 | +| Test.java:3169:41:3169:56 | (...)... : String | Test.java:3169:18:3169:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:753 | | Test.java:3169:49:3169:56 | source(...) : Object | Test.java:3169:41:3169:56 | (...)... : String | provenance | | | Test.java:3170:10:3170:51 | predicatedMultiSet(...) : MultiSet [] : String | Test.java:3171:20:3171:22 | out : MultiSet [] : String | provenance | | -| Test.java:3170:43:3170:44 | in : HashMultiSet [] : String | Test.java:3170:10:3170:51 | predicatedMultiSet(...) : MultiSet [] : String | provenance | MaD:752 | +| Test.java:3170:43:3170:44 | in : HashMultiSet [] : String | Test.java:3170:10:3170:51 | predicatedMultiSet(...) : MultiSet [] : String | provenance | MaD:756 | | Test.java:3171:20:3171:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | provenance | | | Test.java:3171:20:3171:22 | out : MultiSet [] : String | Test.java:3171:9:3171:23 | getElement(...) | provenance | MaD:3 | | Test.java:3176:18:3176:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:3177:45:3177:46 | in : HashMultiSet [] : String | provenance | | | Test.java:3176:41:3176:56 | (...)... : String | Test.java:263:41:263:49 | element : String | provenance | | | Test.java:3176:41:3176:56 | (...)... : String | Test.java:3176:18:3176:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | -| Test.java:3176:41:3176:56 | (...)... : String | Test.java:3176:18:3176:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:749 | +| Test.java:3176:41:3176:56 | (...)... : String | Test.java:3176:18:3176:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:753 | | Test.java:3176:49:3176:56 | source(...) : Object | Test.java:3176:41:3176:56 | (...)... : String | provenance | | | Test.java:3177:10:3177:47 | synchronizedMultiSet(...) : MultiSet [] : String | Test.java:3178:20:3178:22 | out : MultiSet [] : String | provenance | | -| Test.java:3177:45:3177:46 | in : HashMultiSet [] : String | Test.java:3177:10:3177:47 | synchronizedMultiSet(...) : MultiSet [] : String | provenance | MaD:753 | +| Test.java:3177:45:3177:46 | in : HashMultiSet [] : String | Test.java:3177:10:3177:47 | synchronizedMultiSet(...) : MultiSet [] : String | provenance | MaD:757 | | Test.java:3178:20:3178:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | provenance | | | Test.java:3178:20:3178:22 | out : MultiSet [] : String | Test.java:3178:9:3178:23 | getElement(...) | provenance | MaD:3 | | Test.java:3183:18:3183:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:3184:45:3184:46 | in : HashMultiSet [] : String | provenance | | | Test.java:3183:41:3183:56 | (...)... : String | Test.java:263:41:263:49 | element : String | provenance | | | Test.java:3183:41:3183:56 | (...)... : String | Test.java:3183:18:3183:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | -| Test.java:3183:41:3183:56 | (...)... : String | Test.java:3183:18:3183:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:749 | +| Test.java:3183:41:3183:56 | (...)... : String | Test.java:3183:18:3183:57 | newMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:753 | | Test.java:3183:49:3183:56 | source(...) : Object | Test.java:3183:41:3183:56 | (...)... : String | provenance | | | Test.java:3184:10:3184:47 | unmodifiableMultiSet(...) : MultiSet [] : String | Test.java:3185:20:3185:22 | out : MultiSet [] : String | provenance | | -| Test.java:3184:45:3184:46 | in : HashMultiSet [] : String | Test.java:3184:10:3184:47 | unmodifiableMultiSet(...) : MultiSet [] : String | provenance | MaD:754 | +| Test.java:3184:45:3184:46 | in : HashMultiSet [] : String | Test.java:3184:10:3184:47 | unmodifiableMultiSet(...) : MultiSet [] : String | provenance | MaD:758 | | Test.java:3185:20:3185:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | provenance | | | Test.java:3185:20:3185:22 | out : MultiSet [] : String | Test.java:3185:9:3185:23 | getElement(...) | provenance | MaD:3 | | Test.java:3190:24:3190:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3191:10:3191:11 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3190:45:3190:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3190:45:3190:60 | (...)... : String | Test.java:3190:24:3190:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3190:45:3190:60 | (...)... : String | Test.java:3190:24:3190:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3190:53:3190:60 | source(...) : Object | Test.java:3190:45:3190:60 | (...)... : String | provenance | | -| Test.java:3191:10:3191:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3191:10:3191:19 | asMap(...) : Map [, ] : String | provenance | MaD:756 | +| Test.java:3191:10:3191:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3191:10:3191:19 | asMap(...) : Map [, ] : String | provenance | MaD:760 | | Test.java:3191:10:3191:19 | asMap(...) : Map [, ] : String | Test.java:3192:44:3192:46 | out : Map [, ] : String | provenance | | | Test.java:3192:20:3192:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:3192:20:3192:47 | (...)... : Collection [] : String | Test.java:3192:9:3192:48 | getElement(...) | provenance | MaD:3 | | Test.java:3192:32:3192:47 | getMapValue(...) : Object [] : String | Test.java:3192:20:3192:47 | (...)... : Collection [] : String | provenance | | | Test.java:3192:44:3192:46 | out : Map [, ] : String | Test.java:232:20:232:31 | map : Map [, ] : String | provenance | | -| Test.java:3192:44:3192:46 | out : Map [, ] : String | Test.java:3192:32:3192:47 | getMapValue(...) : Object [] : String | provenance | MaD:17 | +| Test.java:3192:44:3192:46 | out : Map [, ] : String | Test.java:3192:32:3192:47 | getMapValue(...) : Object [] : String | provenance | MaD:18 | | Test.java:3197:24:3197:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:3198:10:3198:11 | in : ArrayListValuedHashMap [] : String | provenance | | | Test.java:3197:43:3197:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | -| Test.java:3197:43:3197:58 | (...)... : String | Test.java:3197:24:3197:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:764 | +| Test.java:3197:43:3197:58 | (...)... : String | Test.java:3197:24:3197:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:768 | | Test.java:3197:51:3197:58 | source(...) : Object | Test.java:3197:43:3197:58 | (...)... : String | provenance | | -| Test.java:3198:10:3198:11 | in : ArrayListValuedHashMap [] : String | Test.java:3198:10:3198:19 | asMap(...) : Map [] : String | provenance | MaD:755 | +| Test.java:3198:10:3198:11 | in : ArrayListValuedHashMap [] : String | Test.java:3198:10:3198:19 | asMap(...) : Map [] : String | provenance | MaD:759 | | Test.java:3198:10:3198:19 | asMap(...) : Map [] : String | Test.java:3199:19:3199:21 | out : Map [] : String | provenance | | | Test.java:3199:19:3199:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:3199:19:3199:21 | out : Map [] : String | Test.java:3199:9:3199:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:3199:19:3199:21 | out : Map [] : String | Test.java:3199:9:3199:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:3204:22:3204:59 | newHSVHMWithMapValue(...) : HashSetValuedHashMap [, ] : String | Test.java:3205:10:3205:11 | in : HashSetValuedHashMap [, ] : String | provenance | | | Test.java:3204:43:3204:58 | (...)... : String | Test.java:294:58:294:64 | value : String | provenance | | -| Test.java:3204:43:3204:58 | (...)... : String | Test.java:3204:22:3204:59 | newHSVHMWithMapValue(...) : HashSetValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3204:43:3204:58 | (...)... : String | Test.java:3204:22:3204:59 | newHSVHMWithMapValue(...) : HashSetValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3204:51:3204:58 | source(...) : Object | Test.java:3204:43:3204:58 | (...)... : String | provenance | | -| Test.java:3205:10:3205:11 | in : HashSetValuedHashMap [, ] : String | Test.java:3205:10:3205:21 | get(...) : Set [] : String | provenance | MaD:759 | +| Test.java:3205:10:3205:11 | in : HashSetValuedHashMap [, ] : String | Test.java:3205:10:3205:21 | get(...) : Set [] : String | provenance | MaD:763 | | Test.java:3205:10:3205:21 | get(...) : Set [] : String | Test.java:3206:20:3206:22 | out : Set [] : String | provenance | | | Test.java:3206:20:3206:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | | Test.java:3206:20:3206:22 | out : Set [] : String | Test.java:3206:9:3206:23 | getElement(...) | provenance | MaD:3 | | Test.java:3211:23:3211:60 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3212:10:3212:11 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3211:44:3211:59 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3211:44:3211:59 | (...)... : String | Test.java:3211:23:3211:60 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3211:44:3211:59 | (...)... : String | Test.java:3211:23:3211:60 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3211:52:3211:59 | source(...) : Object | Test.java:3211:44:3211:59 | (...)... : String | provenance | | -| Test.java:3212:10:3212:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3212:10:3212:21 | get(...) : List [] : String | provenance | MaD:759 | +| Test.java:3212:10:3212:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3212:10:3212:21 | get(...) : List [] : String | provenance | MaD:763 | | Test.java:3212:10:3212:21 | get(...) : List [] : String | Test.java:3213:20:3213:22 | out : List [] : String | provenance | | | Test.java:3213:20:3213:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:3213:20:3213:22 | out : List [] : String | Test.java:3213:9:3213:23 | getElement(...) | provenance | MaD:3 | | Test.java:3218:24:3218:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3219:10:3219:11 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3218:45:3218:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3218:45:3218:60 | (...)... : String | Test.java:3218:24:3218:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3218:45:3218:60 | (...)... : String | Test.java:3218:24:3218:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3218:53:3218:60 | source(...) : Object | Test.java:3218:45:3218:60 | (...)... : String | provenance | | -| Test.java:3219:10:3219:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3219:10:3219:21 | get(...) : Collection [] : String | provenance | MaD:759 | +| Test.java:3219:10:3219:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3219:10:3219:21 | get(...) : Collection [] : String | provenance | MaD:763 | | Test.java:3219:10:3219:21 | get(...) : Collection [] : String | Test.java:3220:20:3220:22 | out : Collection [] : String | provenance | | | Test.java:3220:20:3220:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:3220:20:3220:22 | out : Collection [] : String | Test.java:3220:9:3220:23 | getElement(...) | provenance | MaD:3 | | Test.java:3225:24:3225:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:3226:10:3226:11 | in : ArrayListValuedHashMap [] : String | provenance | | | Test.java:3225:43:3225:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | -| Test.java:3225:43:3225:58 | (...)... : String | Test.java:3225:24:3225:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:764 | +| Test.java:3225:43:3225:58 | (...)... : String | Test.java:3225:24:3225:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:768 | | Test.java:3225:51:3225:58 | source(...) : Object | Test.java:3225:43:3225:58 | (...)... : String | provenance | | -| Test.java:3226:10:3226:11 | in : ArrayListValuedHashMap [] : String | Test.java:3226:10:3226:20 | keySet(...) : Set [] : String | provenance | MaD:760 | +| Test.java:3226:10:3226:11 | in : ArrayListValuedHashMap [] : String | Test.java:3226:10:3226:20 | keySet(...) : Set [] : String | provenance | MaD:764 | | Test.java:3226:10:3226:20 | keySet(...) : Set [] : String | Test.java:3227:20:3227:22 | out : Set [] : String | provenance | | | Test.java:3227:20:3227:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | | Test.java:3227:20:3227:22 | out : Set [] : String | Test.java:3227:9:3227:23 | getElement(...) | provenance | MaD:3 | | Test.java:3232:24:3232:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:3233:10:3233:11 | in : ArrayListValuedHashMap [] : String | provenance | | | Test.java:3232:43:3232:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | -| Test.java:3232:43:3232:58 | (...)... : String | Test.java:3232:24:3232:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:764 | +| Test.java:3232:43:3232:58 | (...)... : String | Test.java:3232:24:3232:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:768 | | Test.java:3232:51:3232:58 | source(...) : Object | Test.java:3232:43:3232:58 | (...)... : String | provenance | | -| Test.java:3233:10:3233:11 | in : ArrayListValuedHashMap [] : String | Test.java:3233:10:3233:18 | keys(...) : MultiSet [] : String | provenance | MaD:761 | +| Test.java:3233:10:3233:11 | in : ArrayListValuedHashMap [] : String | Test.java:3233:10:3233:18 | keys(...) : MultiSet [] : String | provenance | MaD:765 | | Test.java:3233:10:3233:18 | keys(...) : MultiSet [] : String | Test.java:3234:20:3234:22 | out : MultiSet [] : String | provenance | | | Test.java:3234:20:3234:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | provenance | | | Test.java:3234:20:3234:22 | out : MultiSet [] : String | Test.java:3234:9:3234:23 | getElement(...) | provenance | MaD:3 | | Test.java:3239:24:3239:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3240:10:3240:11 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3239:45:3239:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3239:45:3239:60 | (...)... : String | Test.java:3239:24:3239:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3239:45:3239:60 | (...)... : String | Test.java:3239:24:3239:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3239:53:3239:60 | source(...) : Object | Test.java:3239:45:3239:60 | (...)... : String | provenance | | -| Test.java:3240:10:3240:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3240:10:3240:25 | mapIterator(...) : MapIterator [] : String | provenance | MaD:763 | +| Test.java:3240:10:3240:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3240:10:3240:25 | mapIterator(...) : MapIterator [] : String | provenance | MaD:767 | | Test.java:3240:10:3240:25 | mapIterator(...) : MapIterator [] : String | Test.java:3241:21:3241:23 | out : MapIterator [] : String | provenance | | | Test.java:3241:21:3241:23 | out : MapIterator [] : String | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | provenance | | -| Test.java:3241:21:3241:23 | out : MapIterator [] : String | Test.java:3241:9:3241:24 | getMapValue(...) | provenance | MaD:673 | +| Test.java:3241:21:3241:23 | out : MapIterator [] : String | Test.java:3241:9:3241:24 | getMapValue(...) | provenance | MaD:677 | | Test.java:3246:24:3246:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:3247:10:3247:11 | in : ArrayListValuedHashMap [] : String | provenance | | | Test.java:3246:43:3246:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | -| Test.java:3246:43:3246:58 | (...)... : String | Test.java:3246:24:3246:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:764 | +| Test.java:3246:43:3246:58 | (...)... : String | Test.java:3246:24:3246:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:768 | | Test.java:3246:51:3246:58 | source(...) : Object | Test.java:3246:43:3246:58 | (...)... : String | provenance | | -| Test.java:3247:10:3247:11 | in : ArrayListValuedHashMap [] : String | Test.java:3247:10:3247:25 | mapIterator(...) : MapIterator [] : String | provenance | MaD:762 | +| Test.java:3247:10:3247:11 | in : ArrayListValuedHashMap [] : String | Test.java:3247:10:3247:25 | mapIterator(...) : MapIterator [] : String | provenance | MaD:766 | | Test.java:3247:10:3247:25 | mapIterator(...) : MapIterator [] : String | Test.java:3248:20:3248:22 | out : MapIterator [] : String | provenance | | | Test.java:3248:20:3248:22 | out : MapIterator [] : String | Test.java:231:19:231:32 | it : MapIterator [] : String | provenance | | -| Test.java:3248:20:3248:22 | out : MapIterator [] : String | Test.java:3248:9:3248:23 | getElement(...) | provenance | MaD:6 | +| Test.java:3248:20:3248:22 | out : MapIterator [] : String | Test.java:3248:9:3248:23 | getElement(...) | provenance | MaD:7 | | Test.java:3253:16:3253:23 | source(...) : Object | Test.java:3254:12:3254:13 | in : Object | provenance | | | Test.java:3254:4:3254:6 | out [post update] : MultiValuedMap [] : Object | Test.java:3255:19:3255:21 | out : MultiValuedMap [] : Object | provenance | | -| Test.java:3254:12:3254:13 | in : Object | Test.java:3254:4:3254:6 | out [post update] : MultiValuedMap [] : Object | provenance | MaD:764 | +| Test.java:3254:12:3254:13 | in : Object | Test.java:3254:4:3254:6 | out [post update] : MultiValuedMap [] : Object | provenance | MaD:768 | | Test.java:3255:19:3255:21 | out : MultiValuedMap [] : Object | Test.java:240:18:240:46 | container : MultiValuedMap [] : Object | provenance | | -| Test.java:3255:19:3255:21 | out : MultiValuedMap [] : Object | Test.java:3255:9:3255:22 | getMapKey(...) | provenance | MaD:760 | +| Test.java:3255:19:3255:21 | out : MultiValuedMap [] : Object | Test.java:3255:9:3255:22 | getMapKey(...) | provenance | MaD:764 | | Test.java:3260:16:3260:23 | source(...) : Object | Test.java:3261:18:3261:19 | in : Object | provenance | | | Test.java:3261:4:3261:6 | out [post update] : MultiValuedMap [, ] : Object | Test.java:3262:32:3262:34 | out : MultiValuedMap [, ] : Object | provenance | | -| Test.java:3261:18:3261:19 | in : Object | Test.java:3261:4:3261:6 | out [post update] : MultiValuedMap [, ] : Object | provenance | MaD:765 | +| Test.java:3261:18:3261:19 | in : Object | Test.java:3261:4:3261:6 | out [post update] : MultiValuedMap [, ] : Object | provenance | MaD:769 | | Test.java:3262:20:3262:35 | getMapValue(...) : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | | Test.java:3262:20:3262:35 | getMapValue(...) : Collection [] : Object | Test.java:3262:9:3262:36 | getElement(...) | provenance | MaD:3 | | Test.java:3262:32:3262:34 | out : MultiValuedMap [, ] : Object | Test.java:247:32:247:60 | container : MultiValuedMap [, ] : Object | provenance | | -| Test.java:3262:32:3262:34 | out : MultiValuedMap [, ] : Object | Test.java:3262:20:3262:35 | getMapValue(...) : Collection [] : Object | provenance | MaD:759 | +| Test.java:3262:32:3262:34 | out : MultiValuedMap [, ] : Object | Test.java:3262:20:3262:35 | getMapValue(...) : Collection [] : Object | provenance | MaD:763 | | Test.java:3267:13:3267:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:3268:15:3268:16 | in : TreeMap [] : String | provenance | | | Test.java:3267:34:3267:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:3267:34:3267:49 | (...)... : String | Test.java:3267:13:3267:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | +| Test.java:3267:34:3267:49 | (...)... : String | Test.java:3267:13:3267:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | | Test.java:3267:42:3267:49 | source(...) : Object | Test.java:3267:34:3267:49 | (...)... : String | provenance | | | Test.java:3268:4:3268:6 | out [post update] : MultiValuedMap [] : String | Test.java:3269:19:3269:21 | out : MultiValuedMap [] : String | provenance | | -| Test.java:3268:15:3268:16 | in : TreeMap [] : String | Test.java:3268:4:3268:6 | out [post update] : MultiValuedMap [] : String | provenance | MaD:766 | +| Test.java:3268:15:3268:16 | in : TreeMap [] : String | Test.java:3268:4:3268:6 | out [post update] : MultiValuedMap [] : String | provenance | MaD:770 | | Test.java:3269:19:3269:21 | out : MultiValuedMap [] : String | Test.java:240:18:240:46 | container : MultiValuedMap [] : String | provenance | | -| Test.java:3269:19:3269:21 | out : MultiValuedMap [] : String | Test.java:3269:9:3269:22 | getMapKey(...) | provenance | MaD:760 | +| Test.java:3269:19:3269:21 | out : MultiValuedMap [] : String | Test.java:3269:9:3269:22 | getMapKey(...) | provenance | MaD:764 | | Test.java:3274:13:3274:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:3275:15:3275:16 | in : TreeMap [] : String | provenance | | | Test.java:3274:36:3274:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:3274:36:3274:51 | (...)... : String | Test.java:3274:13:3274:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:3274:36:3274:51 | (...)... : String | Test.java:3274:13:3274:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | | Test.java:3274:44:3274:51 | source(...) : Object | Test.java:3274:36:3274:51 | (...)... : String | provenance | | | Test.java:3275:4:3275:6 | out [post update] : MultiValuedMap [, ] : String | Test.java:3276:32:3276:34 | out : MultiValuedMap [, ] : String | provenance | | -| Test.java:3275:15:3275:16 | in : TreeMap [] : String | Test.java:3275:4:3275:6 | out [post update] : MultiValuedMap [, ] : String | provenance | MaD:767 | +| Test.java:3275:15:3275:16 | in : TreeMap [] : String | Test.java:3275:4:3275:6 | out [post update] : MultiValuedMap [, ] : String | provenance | MaD:771 | | Test.java:3276:20:3276:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:3276:20:3276:35 | getMapValue(...) : Collection [] : String | Test.java:3276:9:3276:36 | getElement(...) | provenance | MaD:3 | | Test.java:3276:32:3276:34 | out : MultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : MultiValuedMap [, ] : String | provenance | | -| Test.java:3276:32:3276:34 | out : MultiValuedMap [, ] : String | Test.java:3276:20:3276:35 | getMapValue(...) : Collection [] : String | provenance | MaD:759 | +| Test.java:3276:32:3276:34 | out : MultiValuedMap [, ] : String | Test.java:3276:20:3276:35 | getMapValue(...) : Collection [] : String | provenance | MaD:763 | | Test.java:3281:24:3281:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3282:15:3282:16 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3281:45:3281:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3281:45:3281:60 | (...)... : String | Test.java:3281:24:3281:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3281:45:3281:60 | (...)... : String | Test.java:3281:24:3281:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3281:53:3281:60 | source(...) : Object | Test.java:3281:45:3281:60 | (...)... : String | provenance | | | Test.java:3282:4:3282:6 | out [post update] : MultiValuedMap [, ] : String | Test.java:3283:32:3283:34 | out : MultiValuedMap [, ] : String | provenance | | -| Test.java:3282:15:3282:16 | in : ArrayListValuedHashMap [, ] : String | Test.java:3282:4:3282:6 | out [post update] : MultiValuedMap [, ] : String | provenance | MaD:769 | +| Test.java:3282:15:3282:16 | in : ArrayListValuedHashMap [, ] : String | Test.java:3282:4:3282:6 | out [post update] : MultiValuedMap [, ] : String | provenance | MaD:773 | | Test.java:3283:20:3283:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:3283:20:3283:35 | getMapValue(...) : Collection [] : String | Test.java:3283:9:3283:36 | getElement(...) | provenance | MaD:3 | | Test.java:3283:32:3283:34 | out : MultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : MultiValuedMap [, ] : String | provenance | | -| Test.java:3283:32:3283:34 | out : MultiValuedMap [, ] : String | Test.java:3283:20:3283:35 | getMapValue(...) : Collection [] : String | provenance | MaD:759 | +| Test.java:3283:32:3283:34 | out : MultiValuedMap [, ] : String | Test.java:3283:20:3283:35 | getMapValue(...) : Collection [] : String | provenance | MaD:763 | | Test.java:3288:24:3288:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:3289:15:3289:16 | in : ArrayListValuedHashMap [] : String | provenance | | | Test.java:3288:43:3288:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | -| Test.java:3288:43:3288:58 | (...)... : String | Test.java:3288:24:3288:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:764 | +| Test.java:3288:43:3288:58 | (...)... : String | Test.java:3288:24:3288:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:768 | | Test.java:3288:51:3288:58 | source(...) : Object | Test.java:3288:43:3288:58 | (...)... : String | provenance | | | Test.java:3289:4:3289:6 | out [post update] : MultiValuedMap [] : String | Test.java:3290:19:3290:21 | out : MultiValuedMap [] : String | provenance | | -| Test.java:3289:15:3289:16 | in : ArrayListValuedHashMap [] : String | Test.java:3289:4:3289:6 | out [post update] : MultiValuedMap [] : String | provenance | MaD:768 | +| Test.java:3289:15:3289:16 | in : ArrayListValuedHashMap [] : String | Test.java:3289:4:3289:6 | out [post update] : MultiValuedMap [] : String | provenance | MaD:772 | | Test.java:3290:19:3290:21 | out : MultiValuedMap [] : String | Test.java:240:18:240:46 | container : MultiValuedMap [] : String | provenance | | -| Test.java:3290:19:3290:21 | out : MultiValuedMap [] : String | Test.java:3290:9:3290:22 | getMapKey(...) | provenance | MaD:760 | +| Test.java:3290:19:3290:21 | out : MultiValuedMap [] : String | Test.java:3290:9:3290:22 | getMapKey(...) | provenance | MaD:764 | | Test.java:3295:16:3295:23 | source(...) : Object | Test.java:3296:15:3296:16 | in : Object | provenance | | | Test.java:3296:4:3296:6 | out [post update] : MultiValuedMap [] : Object | Test.java:3297:19:3297:21 | out : MultiValuedMap [] : Object | provenance | | -| Test.java:3296:15:3296:16 | in : Object | Test.java:3296:4:3296:6 | out [post update] : MultiValuedMap [] : Object | provenance | MaD:770 | +| Test.java:3296:15:3296:16 | in : Object | Test.java:3296:4:3296:6 | out [post update] : MultiValuedMap [] : Object | provenance | MaD:774 | | Test.java:3297:19:3297:21 | out : MultiValuedMap [] : Object | Test.java:240:18:240:46 | container : MultiValuedMap [] : Object | provenance | | -| Test.java:3297:19:3297:21 | out : MultiValuedMap [] : Object | Test.java:3297:9:3297:22 | getMapKey(...) | provenance | MaD:760 | +| Test.java:3297:19:3297:21 | out : MultiValuedMap [] : Object | Test.java:3297:9:3297:22 | getMapKey(...) | provenance | MaD:764 | | Test.java:3302:18:3302:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | Test.java:3303:21:3303:22 | in : FluentIterable [] : String | provenance | | | Test.java:3302:47:3302:62 | (...)... : String | Test.java:257:53:257:61 | element : String | provenance | | -| Test.java:3302:47:3302:62 | (...)... : String | Test.java:3302:18:3302:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:544 | +| Test.java:3302:47:3302:62 | (...)... : String | Test.java:3302:18:3302:63 | newFluentIterableWithElement(...) : FluentIterable [] : String | provenance | MaD:548 | | Test.java:3302:55:3302:62 | source(...) : Object | Test.java:3302:47:3302:62 | (...)... : String | provenance | | | Test.java:3303:4:3303:6 | out [post update] : MultiValuedMap [, ] : String | Test.java:3304:32:3304:34 | out : MultiValuedMap [, ] : String | provenance | | -| Test.java:3303:21:3303:22 | in : FluentIterable [] : String | Test.java:3303:4:3303:6 | out [post update] : MultiValuedMap [, ] : String | provenance | MaD:771 | +| Test.java:3303:21:3303:22 | in : FluentIterable [] : String | Test.java:3303:4:3303:6 | out [post update] : MultiValuedMap [, ] : String | provenance | MaD:775 | | Test.java:3304:20:3304:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:3304:20:3304:35 | getMapValue(...) : Collection [] : String | Test.java:3304:9:3304:36 | getElement(...) | provenance | MaD:3 | | Test.java:3304:32:3304:34 | out : MultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : MultiValuedMap [, ] : String | provenance | | -| Test.java:3304:32:3304:34 | out : MultiValuedMap [, ] : String | Test.java:3304:20:3304:35 | getMapValue(...) : Collection [] : String | provenance | MaD:759 | +| Test.java:3304:32:3304:34 | out : MultiValuedMap [, ] : String | Test.java:3304:20:3304:35 | getMapValue(...) : Collection [] : String | provenance | MaD:763 | | Test.java:3309:22:3309:59 | newHSVHMWithMapValue(...) : HashSetValuedHashMap [, ] : String | Test.java:3310:10:3310:11 | in : HashSetValuedHashMap [, ] : String | provenance | | | Test.java:3309:43:3309:58 | (...)... : String | Test.java:294:58:294:64 | value : String | provenance | | -| Test.java:3309:43:3309:58 | (...)... : String | Test.java:3309:22:3309:59 | newHSVHMWithMapValue(...) : HashSetValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3309:43:3309:58 | (...)... : String | Test.java:3309:22:3309:59 | newHSVHMWithMapValue(...) : HashSetValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3309:51:3309:58 | source(...) : Object | Test.java:3309:43:3309:58 | (...)... : String | provenance | | -| Test.java:3310:10:3310:11 | in : HashSetValuedHashMap [, ] : String | Test.java:3310:10:3310:24 | remove(...) : Set [] : String | provenance | MaD:772 | +| Test.java:3310:10:3310:11 | in : HashSetValuedHashMap [, ] : String | Test.java:3310:10:3310:24 | remove(...) : Set [] : String | provenance | MaD:776 | | Test.java:3310:10:3310:24 | remove(...) : Set [] : String | Test.java:3311:20:3311:22 | out : Set [] : String | provenance | | | Test.java:3311:20:3311:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | | Test.java:3311:20:3311:22 | out : Set [] : String | Test.java:3311:9:3311:23 | getElement(...) | provenance | MaD:3 | | Test.java:3316:23:3316:60 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3317:10:3317:11 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3316:44:3316:59 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3316:44:3316:59 | (...)... : String | Test.java:3316:23:3316:60 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3316:44:3316:59 | (...)... : String | Test.java:3316:23:3316:60 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3316:52:3316:59 | source(...) : Object | Test.java:3316:44:3316:59 | (...)... : String | provenance | | -| Test.java:3317:10:3317:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3317:10:3317:24 | remove(...) : List [] : String | provenance | MaD:772 | +| Test.java:3317:10:3317:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3317:10:3317:24 | remove(...) : List [] : String | provenance | MaD:776 | | Test.java:3317:10:3317:24 | remove(...) : List [] : String | Test.java:3318:20:3318:22 | out : List [] : String | provenance | | | Test.java:3318:20:3318:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | | Test.java:3318:20:3318:22 | out : List [] : String | Test.java:3318:9:3318:23 | getElement(...) | provenance | MaD:3 | | Test.java:3323:24:3323:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3324:10:3324:11 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3323:45:3323:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3323:45:3323:60 | (...)... : String | Test.java:3323:24:3323:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3323:45:3323:60 | (...)... : String | Test.java:3323:24:3323:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3323:53:3323:60 | source(...) : Object | Test.java:3323:45:3323:60 | (...)... : String | provenance | | -| Test.java:3324:10:3324:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3324:10:3324:24 | remove(...) : Collection [] : String | provenance | MaD:772 | +| Test.java:3324:10:3324:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3324:10:3324:24 | remove(...) : Collection [] : String | provenance | MaD:776 | | Test.java:3324:10:3324:24 | remove(...) : Collection [] : String | Test.java:3325:20:3325:22 | out : Collection [] : String | provenance | | | Test.java:3325:20:3325:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:3325:20:3325:22 | out : Collection [] : String | Test.java:3325:9:3325:23 | getElement(...) | provenance | MaD:3 | | Test.java:3330:24:3330:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:3331:10:3331:11 | in : ArrayListValuedHashMap [, ] : String | provenance | | | Test.java:3330:45:3330:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:3330:45:3330:60 | (...)... : String | Test.java:3330:24:3330:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | +| Test.java:3330:45:3330:60 | (...)... : String | Test.java:3330:24:3330:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | | Test.java:3330:53:3330:60 | source(...) : Object | Test.java:3330:45:3330:60 | (...)... : String | provenance | | -| Test.java:3331:10:3331:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3331:10:3331:20 | values(...) : Collection [] : String | provenance | MaD:773 | +| Test.java:3331:10:3331:11 | in : ArrayListValuedHashMap [, ] : String | Test.java:3331:10:3331:20 | values(...) : Collection [] : String | provenance | MaD:777 | | Test.java:3331:10:3331:20 | values(...) : Collection [] : String | Test.java:3332:20:3332:22 | out : Collection [] : String | provenance | | | Test.java:3332:20:3332:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | | Test.java:3332:20:3332:22 | out : Collection [] : String | Test.java:3332:9:3332:23 | getElement(...) | provenance | MaD:3 | | Test.java:3337:28:3337:62 | newOMIWithElement(...) : OrderedMapIterator [] : String | Test.java:3338:10:3338:11 | in : OrderedMapIterator [] : String | provenance | | | Test.java:3337:46:3337:61 | (...)... : String | Test.java:283:53:283:57 | key : String | provenance | | -| Test.java:3337:46:3337:61 | (...)... : String | Test.java:3337:28:3337:62 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:19 | -| Test.java:3337:46:3337:61 | (...)... : String | Test.java:3337:28:3337:62 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:779 | +| Test.java:3337:46:3337:61 | (...)... : String | Test.java:3337:28:3337:62 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:20 | +| Test.java:3337:46:3337:61 | (...)... : String | Test.java:3337:28:3337:62 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:783 | | Test.java:3337:54:3337:61 | source(...) : Object | Test.java:3337:46:3337:61 | (...)... : String | provenance | | -| Test.java:3338:10:3338:11 | in : OrderedMapIterator [] : String | Test.java:3338:10:3338:22 | previous(...) : String | provenance | MaD:774 | +| Test.java:3338:10:3338:11 | in : OrderedMapIterator [] : String | Test.java:3338:10:3338:22 | previous(...) : String | provenance | MaD:778 | | Test.java:3338:10:3338:22 | previous(...) : String | Test.java:3339:9:3339:11 | out | provenance | | | Test.java:3344:25:3344:59 | newOMIWithElement(...) : OrderedMapIterator [] : String | Test.java:3345:10:3345:11 | in : OrderedMapIterator [] : String | provenance | | | Test.java:3344:43:3344:58 | (...)... : String | Test.java:283:53:283:57 | key : String | provenance | | -| Test.java:3344:43:3344:58 | (...)... : String | Test.java:3344:25:3344:59 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:19 | -| Test.java:3344:43:3344:58 | (...)... : String | Test.java:3344:25:3344:59 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:779 | +| Test.java:3344:43:3344:58 | (...)... : String | Test.java:3344:25:3344:59 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:20 | +| Test.java:3344:43:3344:58 | (...)... : String | Test.java:3344:25:3344:59 | newOMIWithElement(...) : OrderedMapIterator [] : String | provenance | MaD:783 | | Test.java:3344:51:3344:58 | source(...) : Object | Test.java:3344:43:3344:58 | (...)... : String | provenance | | -| Test.java:3345:10:3345:11 | in : OrderedMapIterator [] : String | Test.java:3345:10:3345:22 | previous(...) : String | provenance | MaD:774 | +| Test.java:3345:10:3345:11 | in : OrderedMapIterator [] : String | Test.java:3345:10:3345:22 | previous(...) : String | provenance | MaD:778 | | Test.java:3345:10:3345:22 | previous(...) : String | Test.java:3346:9:3346:11 | out | provenance | | | Test.java:3351:20:3351:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | Test.java:3352:10:3352:11 | in : TreeBidiMap [] : String | provenance | | | Test.java:3351:45:3351:60 | (...)... : String | Test.java:287:75:287:79 | key : String | provenance | | -| Test.java:3351:45:3351:60 | (...)... : String | Test.java:3351:20:3351:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:19 | -| Test.java:3351:45:3351:60 | (...)... : String | Test.java:3351:20:3351:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:779 | +| Test.java:3351:45:3351:60 | (...)... : String | Test.java:3351:20:3351:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:20 | +| Test.java:3351:45:3351:60 | (...)... : String | Test.java:3351:20:3351:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:783 | | Test.java:3351:53:3351:60 | source(...) : Object | Test.java:3351:45:3351:60 | (...)... : String | provenance | | -| Test.java:3352:10:3352:11 | in : TreeBidiMap [] : String | Test.java:3352:10:3352:22 | firstKey(...) : String | provenance | MaD:775 | +| Test.java:3352:10:3352:11 | in : TreeBidiMap [] : String | Test.java:3352:10:3352:22 | firstKey(...) : String | provenance | MaD:779 | | Test.java:3352:10:3352:22 | firstKey(...) : String | Test.java:3353:9:3353:11 | out | provenance | | | Test.java:3358:20:3358:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | Test.java:3359:10:3359:11 | in : TreeBidiMap [] : String | provenance | | | Test.java:3358:45:3358:60 | (...)... : String | Test.java:287:75:287:79 | key : String | provenance | | -| Test.java:3358:45:3358:60 | (...)... : String | Test.java:3358:20:3358:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:19 | -| Test.java:3358:45:3358:60 | (...)... : String | Test.java:3358:20:3358:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:779 | +| Test.java:3358:45:3358:60 | (...)... : String | Test.java:3358:20:3358:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:20 | +| Test.java:3358:45:3358:60 | (...)... : String | Test.java:3358:20:3358:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:783 | | Test.java:3358:53:3358:60 | source(...) : Object | Test.java:3358:45:3358:60 | (...)... : String | provenance | | -| Test.java:3359:10:3359:11 | in : TreeBidiMap [] : String | Test.java:3359:10:3359:21 | lastKey(...) : String | provenance | MaD:776 | +| Test.java:3359:10:3359:11 | in : TreeBidiMap [] : String | Test.java:3359:10:3359:21 | lastKey(...) : String | provenance | MaD:780 | | Test.java:3359:10:3359:21 | lastKey(...) : String | Test.java:3360:9:3360:11 | out | provenance | | | Test.java:3365:20:3365:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | Test.java:3366:10:3366:11 | in : TreeBidiMap [] : String | provenance | | | Test.java:3365:45:3365:60 | (...)... : String | Test.java:287:75:287:79 | key : String | provenance | | -| Test.java:3365:45:3365:60 | (...)... : String | Test.java:3365:20:3365:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:19 | -| Test.java:3365:45:3365:60 | (...)... : String | Test.java:3365:20:3365:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:779 | +| Test.java:3365:45:3365:60 | (...)... : String | Test.java:3365:20:3365:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:20 | +| Test.java:3365:45:3365:60 | (...)... : String | Test.java:3365:20:3365:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:783 | | Test.java:3365:53:3365:60 | source(...) : Object | Test.java:3365:45:3365:60 | (...)... : String | provenance | | -| Test.java:3366:10:3366:11 | in : TreeBidiMap [] : String | Test.java:3366:10:3366:25 | nextKey(...) : String | provenance | MaD:777 | +| Test.java:3366:10:3366:11 | in : TreeBidiMap [] : String | Test.java:3366:10:3366:25 | nextKey(...) : String | provenance | MaD:781 | | Test.java:3366:10:3366:25 | nextKey(...) : String | Test.java:3367:9:3367:11 | out | provenance | | | Test.java:3372:20:3372:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | Test.java:3373:10:3373:11 | in : TreeBidiMap [] : String | provenance | | | Test.java:3372:45:3372:60 | (...)... : String | Test.java:287:75:287:79 | key : String | provenance | | -| Test.java:3372:45:3372:60 | (...)... : String | Test.java:3372:20:3372:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:19 | -| Test.java:3372:45:3372:60 | (...)... : String | Test.java:3372:20:3372:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:779 | +| Test.java:3372:45:3372:60 | (...)... : String | Test.java:3372:20:3372:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:20 | +| Test.java:3372:45:3372:60 | (...)... : String | Test.java:3372:20:3372:61 | newTreeBidiMapWithMapKey(...) : TreeBidiMap [] : String | provenance | MaD:783 | | Test.java:3372:53:3372:60 | source(...) : Object | Test.java:3372:45:3372:60 | (...)... : String | provenance | | -| Test.java:3373:10:3373:11 | in : TreeBidiMap [] : String | Test.java:3373:10:3373:29 | previousKey(...) : String | provenance | MaD:778 | +| Test.java:3373:10:3373:11 | in : TreeBidiMap [] : String | Test.java:3373:10:3373:29 | previousKey(...) : String | provenance | MaD:782 | | Test.java:3373:10:3373:29 | previousKey(...) : String | Test.java:3374:9:3374:11 | out | provenance | | | Test.java:3379:16:3379:23 | source(...) : Object | Test.java:3380:12:3380:13 | in : Object | provenance | | | Test.java:3380:4:3380:6 | out [post update] : Put [] : Object | Test.java:3381:26:3381:28 | out : Put [] : Object | provenance | | -| Test.java:3380:12:3380:13 | in : Object | Test.java:3380:4:3380:6 | out [post update] : Put [] : Object | provenance | MaD:779 | +| Test.java:3380:12:3380:13 | in : Object | Test.java:3380:4:3380:6 | out [post update] : Put [] : Object | provenance | MaD:783 | | Test.java:3381:26:3381:28 | out : Put [] : Object | Test.java:242:27:242:44 | container : Put [] : Object | provenance | | -| Test.java:3381:26:3381:28 | out : Put [] : Object | Test.java:3381:9:3381:29 | getMapKeyFromPut(...) | provenance | MaD:18 | +| Test.java:3381:26:3381:28 | out : Put [] : Object | Test.java:3381:9:3381:29 | getMapKeyFromPut(...) | provenance | MaD:19 | | Test.java:3386:16:3386:23 | source(...) : Object | Test.java:3387:12:3387:13 | in : Object | provenance | | | Test.java:3387:4:3387:6 | out [post update] : MultiValueMap [] : Object | Test.java:3388:19:3388:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:3387:12:3387:13 | in : Object | Test.java:3387:4:3387:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:19 | -| Test.java:3387:12:3387:13 | in : Object | Test.java:3387:4:3387:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:736 | -| Test.java:3387:12:3387:13 | in : Object | Test.java:3387:4:3387:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:779 | +| Test.java:3387:12:3387:13 | in : Object | Test.java:3387:4:3387:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:20 | +| Test.java:3387:12:3387:13 | in : Object | Test.java:3387:4:3387:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:740 | +| Test.java:3387:12:3387:13 | in : Object | Test.java:3387:4:3387:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:783 | | Test.java:3388:19:3388:21 | out : MultiValueMap [] : Object | Test.java:228:18:228:29 | map : MultiValueMap [] : Object | provenance | | -| Test.java:3388:19:3388:21 | out : MultiValueMap [] : Object | Test.java:3388:9:3388:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:3388:19:3388:21 | out : MultiValueMap [] : Object | Test.java:3388:9:3388:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:3393:16:3393:23 | source(...) : Object | Test.java:3394:12:3394:13 | in : Object | provenance | | | Test.java:3394:4:3394:6 | out [post update] : MultiMap [] : Object | Test.java:3395:19:3395:21 | out : MultiMap [] : Object | provenance | | -| Test.java:3394:12:3394:13 | in : Object | Test.java:3394:4:3394:6 | out [post update] : MultiMap [] : Object | provenance | MaD:19 | -| Test.java:3394:12:3394:13 | in : Object | Test.java:3394:4:3394:6 | out [post update] : MultiMap [] : Object | provenance | MaD:736 | -| Test.java:3394:12:3394:13 | in : Object | Test.java:3394:4:3394:6 | out [post update] : MultiMap [] : Object | provenance | MaD:779 | +| Test.java:3394:12:3394:13 | in : Object | Test.java:3394:4:3394:6 | out [post update] : MultiMap [] : Object | provenance | MaD:740 | | Test.java:3395:19:3395:21 | out : MultiMap [] : Object | Test.java:228:18:228:29 | map : MultiMap [] : Object | provenance | | -| Test.java:3395:19:3395:21 | out : MultiMap [] : Object | Test.java:3395:9:3395:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:3395:19:3395:21 | out : MultiMap [] : Object | Test.java:3395:9:3395:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:3400:16:3400:23 | source(...) : Object | Test.java:3401:12:3401:13 | in : Object | provenance | | | Test.java:3401:4:3401:6 | out [post update] : BidiMap [] : Object | Test.java:3402:19:3402:21 | out : BidiMap [] : Object | provenance | | -| Test.java:3401:12:3401:13 | in : Object | Test.java:3401:4:3401:6 | out [post update] : BidiMap [] : Object | provenance | MaD:19 | -| Test.java:3401:12:3401:13 | in : Object | Test.java:3401:4:3401:6 | out [post update] : BidiMap [] : Object | provenance | MaD:779 | +| Test.java:3401:12:3401:13 | in : Object | Test.java:3401:4:3401:6 | out [post update] : BidiMap [] : Object | provenance | MaD:20 | +| Test.java:3401:12:3401:13 | in : Object | Test.java:3401:4:3401:6 | out [post update] : BidiMap [] : Object | provenance | MaD:783 | | Test.java:3402:19:3402:21 | out : BidiMap [] : Object | Test.java:228:18:228:29 | map : BidiMap [] : Object | provenance | | -| Test.java:3402:19:3402:21 | out : BidiMap [] : Object | Test.java:3402:9:3402:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:3402:19:3402:21 | out : BidiMap [] : Object | Test.java:3402:9:3402:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:3407:16:3407:23 | source(...) : Object | Test.java:3408:12:3408:13 | in : Object | provenance | | | Test.java:3408:4:3408:6 | out [post update] : AbstractMapDecorator [] : Object | Test.java:3409:19:3409:21 | out : AbstractMapDecorator [] : Object | provenance | | -| Test.java:3408:12:3408:13 | in : Object | Test.java:3408:4:3408:6 | out [post update] : AbstractMapDecorator [] : Object | provenance | MaD:19 | -| Test.java:3408:12:3408:13 | in : Object | Test.java:3408:4:3408:6 | out [post update] : AbstractMapDecorator [] : Object | provenance | MaD:779 | +| Test.java:3408:12:3408:13 | in : Object | Test.java:3408:4:3408:6 | out [post update] : AbstractMapDecorator [] : Object | provenance | MaD:20 | +| Test.java:3408:12:3408:13 | in : Object | Test.java:3408:4:3408:6 | out [post update] : AbstractMapDecorator [] : Object | provenance | MaD:783 | | Test.java:3409:19:3409:21 | out : AbstractMapDecorator [] : Object | Test.java:228:18:228:29 | map : AbstractMapDecorator [] : Object | provenance | | -| Test.java:3409:19:3409:21 | out : AbstractMapDecorator [] : Object | Test.java:3409:9:3409:22 | getMapKey(...) | provenance | MaD:18 | +| Test.java:3409:19:3409:21 | out : AbstractMapDecorator [] : Object | Test.java:3409:9:3409:22 | getMapKey(...) | provenance | MaD:19 | | Test.java:3414:16:3414:23 | source(...) : Object | Test.java:3415:18:3415:19 | in : Object | provenance | | | Test.java:3415:4:3415:6 | out [post update] : Put [] : Object | Test.java:3416:28:3416:30 | out : Put [] : Object | provenance | | -| Test.java:3415:18:3415:19 | in : Object | Test.java:3415:4:3415:6 | out [post update] : Put [] : Object | provenance | MaD:780 | +| Test.java:3415:18:3415:19 | in : Object | Test.java:3415:4:3415:6 | out [post update] : Put [] : Object | provenance | MaD:784 | | Test.java:3416:28:3416:30 | out : Put [] : Object | Test.java:249:29:249:46 | container : Put [] : Object | provenance | | -| Test.java:3416:28:3416:30 | out : Put [] : Object | Test.java:3416:9:3416:31 | getMapValueFromPut(...) | provenance | MaD:17 | +| Test.java:3416:28:3416:30 | out : Put [] : Object | Test.java:3416:9:3416:31 | getMapValueFromPut(...) | provenance | MaD:18 | | Test.java:3421:16:3421:23 | source(...) : Object | Test.java:3422:18:3422:19 | in : Object | provenance | | | Test.java:3422:4:3422:6 | out [post update] : MultiValueMap [] : Object | Test.java:3423:21:3423:23 | out : MultiValueMap [] : Object | provenance | | -| Test.java:3422:18:3422:19 | in : Object | Test.java:3422:4:3422:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:20 | -| Test.java:3422:18:3422:19 | in : Object | Test.java:3422:4:3422:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:780 | +| Test.java:3422:18:3422:19 | in : Object | Test.java:3422:4:3422:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:21 | +| Test.java:3422:18:3422:19 | in : Object | Test.java:3422:4:3422:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:784 | | Test.java:3423:21:3423:23 | out : MultiValueMap [] : Object | Test.java:232:20:232:31 | map : MultiValueMap [] : Object | provenance | | -| Test.java:3423:21:3423:23 | out : MultiValueMap [] : Object | Test.java:3423:9:3423:24 | getMapValue(...) | provenance | MaD:17 | +| Test.java:3423:21:3423:23 | out : MultiValueMap [] : Object | Test.java:3423:9:3423:24 | getMapValue(...) | provenance | MaD:18 | | Test.java:3428:16:3428:23 | source(...) : Object | Test.java:3429:18:3429:19 | in : Object | provenance | | -| Test.java:3429:4:3429:6 | out [post update] : MultiMap [] : Object | Test.java:3430:21:3430:23 | out : MultiMap [] : Object | provenance | | -| Test.java:3429:18:3429:19 | in : Object | Test.java:3429:4:3429:6 | out [post update] : MultiMap [] : Object | provenance | MaD:20 | -| Test.java:3429:18:3429:19 | in : Object | Test.java:3429:4:3429:6 | out [post update] : MultiMap [] : Object | provenance | MaD:780 | -| Test.java:3430:21:3430:23 | out : MultiMap [] : Object | Test.java:232:20:232:31 | map : MultiMap [] : Object | provenance | | -| Test.java:3430:21:3430:23 | out : MultiMap [] : Object | Test.java:3430:9:3430:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3435:16:3435:23 | source(...) : Object | Test.java:3436:18:3436:19 | in : Object | provenance | | -| Test.java:3436:4:3436:6 | out [post update] : BidiMap [] : Object | Test.java:3437:21:3437:23 | out : BidiMap [] : Object | provenance | | -| Test.java:3436:18:3436:19 | in : Object | Test.java:3436:4:3436:6 | out [post update] : BidiMap [] : Object | provenance | MaD:20 | -| Test.java:3436:18:3436:19 | in : Object | Test.java:3436:4:3436:6 | out [post update] : BidiMap [] : Object | provenance | MaD:780 | -| Test.java:3437:21:3437:23 | out : BidiMap [] : Object | Test.java:232:20:232:31 | map : BidiMap [] : Object | provenance | | -| Test.java:3437:21:3437:23 | out : BidiMap [] : Object | Test.java:3437:9:3437:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3442:16:3442:23 | source(...) : Object | Test.java:3443:18:3443:19 | in : Object | provenance | | -| Test.java:3443:4:3443:6 | out [post update] : AbstractMapDecorator [] : Object | Test.java:3444:21:3444:23 | out : AbstractMapDecorator [] : Object | provenance | | -| Test.java:3443:18:3443:19 | in : Object | Test.java:3443:4:3443:6 | out [post update] : AbstractMapDecorator [] : Object | provenance | MaD:20 | -| Test.java:3443:18:3443:19 | in : Object | Test.java:3443:4:3443:6 | out [post update] : AbstractMapDecorator [] : Object | provenance | MaD:780 | -| Test.java:3444:21:3444:23 | out : AbstractMapDecorator [] : Object | Test.java:232:20:232:31 | map : AbstractMapDecorator [] : Object | provenance | | -| Test.java:3444:21:3444:23 | out : AbstractMapDecorator [] : Object | Test.java:3444:9:3444:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3449:13:3449:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | Test.java:3450:10:3450:11 | in : HashedMap [] : String | provenance | | -| Test.java:3449:38:3449:53 | (...)... : String | Test.java:293:51:293:57 | value : String | provenance | | -| Test.java:3449:38:3449:53 | (...)... : String | Test.java:3449:13:3449:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:20 | -| Test.java:3449:38:3449:53 | (...)... : String | Test.java:3449:13:3449:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:780 | -| Test.java:3449:46:3449:53 | source(...) : Object | Test.java:3449:38:3449:53 | (...)... : String | provenance | | -| Test.java:3450:10:3450:11 | in : HashedMap [] : String | Test.java:3450:10:3450:27 | put(...) : String | provenance | MaD:781 | -| Test.java:3450:10:3450:27 | put(...) : String | Test.java:3451:9:3451:11 | out | provenance | | -| Test.java:3456:23:3456:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:3457:10:3457:11 | in : MultiValueMap [] : String | provenance | | -| Test.java:3456:42:3456:57 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:3456:42:3456:57 | (...)... : String | Test.java:3456:23:3456:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:3456:42:3456:57 | (...)... : String | Test.java:3456:23:3456:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | -| Test.java:3456:50:3456:57 | source(...) : Object | Test.java:3456:42:3456:57 | (...)... : String | provenance | | -| Test.java:3457:10:3457:11 | in : MultiValueMap [] : String | Test.java:3457:10:3457:27 | put(...) : String | provenance | MaD:21 | -| Test.java:3457:10:3457:11 | in : MultiValueMap [] : String | Test.java:3457:10:3457:27 | put(...) : String | provenance | MaD:781 | -| Test.java:3457:10:3457:27 | put(...) : String | Test.java:3458:9:3458:11 | out | provenance | | -| Test.java:3463:18:3463:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:3464:10:3464:11 | in : MultiValueMap [] : String | provenance | | -| Test.java:3463:37:3463:52 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:3463:37:3463:52 | (...)... : String | Test.java:3463:18:3463:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:3463:37:3463:52 | (...)... : String | Test.java:3463:18:3463:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | -| Test.java:3463:45:3463:52 | source(...) : Object | Test.java:3463:37:3463:52 | (...)... : String | provenance | | -| Test.java:3464:10:3464:11 | in : MultiValueMap [] : String | Test.java:3464:10:3464:27 | put(...) : String | provenance | MaD:21 | -| Test.java:3464:10:3464:11 | in : MultiValueMap [] : String | Test.java:3464:10:3464:27 | put(...) : String | provenance | MaD:781 | -| Test.java:3464:10:3464:27 | put(...) : String | Test.java:3465:9:3465:11 | out | provenance | | -| Test.java:3470:17:3470:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | Test.java:3471:10:3471:11 | in : TreeBidiMap [] : String | provenance | | -| Test.java:3470:44:3470:59 | (...)... : String | Test.java:306:77:306:83 | value : String | provenance | | -| Test.java:3470:44:3470:59 | (...)... : String | Test.java:3470:17:3470:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:20 | -| Test.java:3470:44:3470:59 | (...)... : String | Test.java:3470:17:3470:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:780 | -| Test.java:3470:52:3470:59 | source(...) : Object | Test.java:3470:44:3470:59 | (...)... : String | provenance | | -| Test.java:3471:10:3471:11 | in : TreeBidiMap [] : String | Test.java:3471:10:3471:27 | put(...) : String | provenance | MaD:21 | -| Test.java:3471:10:3471:11 | in : TreeBidiMap [] : String | Test.java:3471:10:3471:27 | put(...) : String | provenance | MaD:781 | -| Test.java:3471:10:3471:27 | put(...) : String | Test.java:3472:9:3472:11 | out | provenance | | -| Test.java:3477:30:3477:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:3478:10:3478:11 | in : MultiValueMap [] : String | provenance | | -| Test.java:3477:49:3477:64 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:3477:49:3477:64 | (...)... : String | Test.java:3477:30:3477:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:3477:49:3477:64 | (...)... : String | Test.java:3477:30:3477:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | -| Test.java:3477:57:3477:64 | source(...) : Object | Test.java:3477:49:3477:64 | (...)... : String | provenance | | -| Test.java:3478:10:3478:11 | in : MultiValueMap [] : String | Test.java:3478:10:3478:27 | put(...) : String | provenance | MaD:21 | -| Test.java:3478:10:3478:11 | in : MultiValueMap [] : String | Test.java:3478:10:3478:27 | put(...) : String | provenance | MaD:781 | -| Test.java:3478:10:3478:27 | put(...) : String | Test.java:3479:9:3479:11 | out | provenance | | -| Test.java:3484:13:3484:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:3485:15:3485:16 | in : TreeMap [] : String | provenance | | -| Test.java:3484:34:3484:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:3484:34:3484:49 | (...)... : String | Test.java:3484:13:3484:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | -| Test.java:3484:42:3484:49 | source(...) : Object | Test.java:3484:34:3484:49 | (...)... : String | provenance | | -| Test.java:3485:4:3485:6 | out [post update] : Put [] : String | Test.java:3486:26:3486:28 | out : Put [] : String | provenance | | -| Test.java:3485:15:3485:16 | in : TreeMap [] : String | Test.java:3485:4:3485:6 | out [post update] : Put [] : String | provenance | MaD:782 | -| Test.java:3486:26:3486:28 | out : Put [] : String | Test.java:242:27:242:44 | container : Put [] : String | provenance | | -| Test.java:3486:26:3486:28 | out : Put [] : String | Test.java:3486:9:3486:29 | getMapKeyFromPut(...) | provenance | MaD:18 | -| Test.java:3491:13:3491:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:3492:15:3492:16 | in : TreeMap [] : String | provenance | | -| Test.java:3491:34:3491:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:3491:34:3491:49 | (...)... : String | Test.java:3491:13:3491:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | -| Test.java:3491:42:3491:49 | source(...) : Object | Test.java:3491:34:3491:49 | (...)... : String | provenance | | -| Test.java:3492:4:3492:6 | out [post update] : MultiValueMap [] : String | Test.java:3493:19:3493:21 | out : MultiValueMap [] : String | provenance | | -| Test.java:3492:15:3492:16 | in : TreeMap [] : String | Test.java:3492:4:3492:6 | out [post update] : MultiValueMap [] : String | provenance | MaD:22 | -| Test.java:3492:15:3492:16 | in : TreeMap [] : String | Test.java:3492:4:3492:6 | out [post update] : MultiValueMap [] : String | provenance | MaD:782 | -| Test.java:3493:19:3493:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | provenance | | -| Test.java:3493:19:3493:21 | out : MultiValueMap [] : String | Test.java:3493:9:3493:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:3498:13:3498:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:3499:15:3499:16 | in : TreeMap [] : String | provenance | | -| Test.java:3498:34:3498:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:3498:34:3498:49 | (...)... : String | Test.java:3498:13:3498:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | -| Test.java:3498:42:3498:49 | source(...) : Object | Test.java:3498:34:3498:49 | (...)... : String | provenance | | -| Test.java:3499:4:3499:6 | out [post update] : AbstractMapDecorator [] : String | Test.java:3500:19:3500:21 | out : AbstractMapDecorator [] : String | provenance | | -| Test.java:3499:15:3499:16 | in : TreeMap [] : String | Test.java:3499:4:3499:6 | out [post update] : AbstractMapDecorator [] : String | provenance | MaD:22 | -| Test.java:3499:15:3499:16 | in : TreeMap [] : String | Test.java:3499:4:3499:6 | out [post update] : AbstractMapDecorator [] : String | provenance | MaD:782 | -| Test.java:3500:19:3500:21 | out : AbstractMapDecorator [] : String | Test.java:228:18:228:29 | map : AbstractMapDecorator [] : String | provenance | | -| Test.java:3500:19:3500:21 | out : AbstractMapDecorator [] : String | Test.java:3500:9:3500:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:3505:13:3505:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:3506:15:3506:16 | in : TreeMap [] : String | provenance | | -| Test.java:3505:36:3505:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:3505:36:3505:51 | (...)... : String | Test.java:3505:13:3505:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | -| Test.java:3505:44:3505:51 | source(...) : Object | Test.java:3505:36:3505:51 | (...)... : String | provenance | | -| Test.java:3506:4:3506:6 | out [post update] : Put [] : String | Test.java:3507:28:3507:30 | out : Put [] : String | provenance | | -| Test.java:3506:15:3506:16 | in : TreeMap [] : String | Test.java:3506:4:3506:6 | out [post update] : Put [] : String | provenance | MaD:783 | -| Test.java:3507:28:3507:30 | out : Put [] : String | Test.java:249:29:249:46 | container : Put [] : String | provenance | | -| Test.java:3507:28:3507:30 | out : Put [] : String | Test.java:3507:9:3507:31 | getMapValueFromPut(...) | provenance | MaD:17 | -| Test.java:3512:13:3512:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:3513:15:3513:16 | in : TreeMap [] : String | provenance | | -| Test.java:3512:36:3512:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:3512:36:3512:51 | (...)... : String | Test.java:3512:13:3512:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | -| Test.java:3512:44:3512:51 | source(...) : Object | Test.java:3512:36:3512:51 | (...)... : String | provenance | | -| Test.java:3513:4:3513:6 | out [post update] : MultiValueMap [] : String | Test.java:3514:21:3514:23 | out : MultiValueMap [] : String | provenance | | -| Test.java:3513:15:3513:16 | in : TreeMap [] : String | Test.java:3513:4:3513:6 | out [post update] : MultiValueMap [] : String | provenance | MaD:23 | -| Test.java:3513:15:3513:16 | in : TreeMap [] : String | Test.java:3513:4:3513:6 | out [post update] : MultiValueMap [] : String | provenance | MaD:783 | -| Test.java:3514:21:3514:23 | out : MultiValueMap [] : String | Test.java:232:20:232:31 | map : MultiValueMap [] : String | provenance | | -| Test.java:3514:21:3514:23 | out : MultiValueMap [] : String | Test.java:3514:9:3514:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3519:13:3519:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:3520:15:3520:16 | in : TreeMap [] : String | provenance | | -| Test.java:3519:36:3519:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:3519:36:3519:51 | (...)... : String | Test.java:3519:13:3519:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | -| Test.java:3519:44:3519:51 | source(...) : Object | Test.java:3519:36:3519:51 | (...)... : String | provenance | | -| Test.java:3520:4:3520:6 | out [post update] : AbstractMapDecorator [] : String | Test.java:3521:21:3521:23 | out : AbstractMapDecorator [] : String | provenance | | -| Test.java:3520:15:3520:16 | in : TreeMap [] : String | Test.java:3520:4:3520:6 | out [post update] : AbstractMapDecorator [] : String | provenance | MaD:23 | -| Test.java:3520:15:3520:16 | in : TreeMap [] : String | Test.java:3520:4:3520:6 | out [post update] : AbstractMapDecorator [] : String | provenance | MaD:783 | -| Test.java:3521:21:3521:23 | out : AbstractMapDecorator [] : String | Test.java:232:20:232:31 | map : AbstractMapDecorator [] : String | provenance | | -| Test.java:3521:21:3521:23 | out : AbstractMapDecorator [] : String | Test.java:3521:9:3521:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3526:15:3526:51 | newQueueWithElement(...) : LinkedList [] : String | Test.java:3527:37:3527:38 | in : LinkedList [] : String | provenance | | -| Test.java:3526:35:3526:50 | (...)... : String | Test.java:265:35:265:43 | element : String | provenance | | -| Test.java:3526:35:3526:50 | (...)... : String | Test.java:3526:15:3526:51 | newQueueWithElement(...) : LinkedList [] : String | provenance | MaD:4 | -| Test.java:3526:43:3526:50 | source(...) : Object | Test.java:3526:35:3526:50 | (...)... : String | provenance | | -| Test.java:3527:10:3527:45 | predicatedQueue(...) : Queue [] : String | Test.java:3528:20:3528:22 | out : Queue [] : String | provenance | | -| Test.java:3527:37:3527:38 | in : LinkedList [] : String | Test.java:3527:10:3527:45 | predicatedQueue(...) : Queue [] : String | provenance | MaD:784 | -| Test.java:3528:20:3528:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | -| Test.java:3528:20:3528:22 | out : Queue [] : String | Test.java:3528:9:3528:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3533:15:3533:51 | newQueueWithElement(...) : LinkedList [] : String | Test.java:3534:39:3534:40 | in : LinkedList [] : String | provenance | | -| Test.java:3533:35:3533:50 | (...)... : String | Test.java:265:35:265:43 | element : String | provenance | | -| Test.java:3533:35:3533:50 | (...)... : String | Test.java:3533:15:3533:51 | newQueueWithElement(...) : LinkedList [] : String | provenance | MaD:4 | -| Test.java:3533:43:3533:50 | source(...) : Object | Test.java:3533:35:3533:50 | (...)... : String | provenance | | -| Test.java:3534:10:3534:41 | synchronizedQueue(...) : Queue [] : String | Test.java:3535:20:3535:22 | out : Queue [] : String | provenance | | -| Test.java:3534:39:3534:40 | in : LinkedList [] : String | Test.java:3534:10:3534:41 | synchronizedQueue(...) : Queue [] : String | provenance | MaD:785 | -| Test.java:3535:20:3535:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | -| Test.java:3535:20:3535:22 | out : Queue [] : String | Test.java:3535:9:3535:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3540:15:3540:51 | newQueueWithElement(...) : LinkedList [] : String | Test.java:3541:39:3541:40 | in : LinkedList [] : String | provenance | | -| Test.java:3540:35:3540:50 | (...)... : String | Test.java:265:35:265:43 | element : String | provenance | | -| Test.java:3540:35:3540:50 | (...)... : String | Test.java:3540:15:3540:51 | newQueueWithElement(...) : LinkedList [] : String | provenance | MaD:4 | -| Test.java:3540:43:3540:50 | source(...) : Object | Test.java:3540:35:3540:50 | (...)... : String | provenance | | -| Test.java:3541:10:3541:47 | transformingQueue(...) : Queue [] : String | Test.java:3542:20:3542:22 | out : Queue [] : String | provenance | | -| Test.java:3541:39:3541:40 | in : LinkedList [] : String | Test.java:3541:10:3541:47 | transformingQueue(...) : Queue [] : String | provenance | MaD:786 | -| Test.java:3542:20:3542:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | -| Test.java:3542:20:3542:22 | out : Queue [] : String | Test.java:3542:9:3542:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3547:15:3547:51 | newQueueWithElement(...) : LinkedList [] : String | Test.java:3548:39:3548:40 | in : LinkedList [] : String | provenance | | -| Test.java:3547:35:3547:50 | (...)... : String | Test.java:265:35:265:43 | element : String | provenance | | -| Test.java:3547:35:3547:50 | (...)... : String | Test.java:3547:15:3547:51 | newQueueWithElement(...) : LinkedList [] : String | provenance | MaD:4 | -| Test.java:3547:43:3547:50 | source(...) : Object | Test.java:3547:35:3547:50 | (...)... : String | provenance | | -| Test.java:3548:10:3548:41 | unmodifiableQueue(...) : Queue [] : String | Test.java:3549:20:3549:22 | out : Queue [] : String | provenance | | -| Test.java:3548:39:3548:40 | in : LinkedList [] : String | Test.java:3548:10:3548:41 | unmodifiableQueue(...) : Queue [] : String | provenance | MaD:787 | -| Test.java:3549:20:3549:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | -| Test.java:3549:20:3549:22 | out : Queue [] : String | Test.java:3549:9:3549:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3554:26:3554:64 | newSetViewWithElement(...) : MySetView [] : String | Test.java:3555:4:3555:5 | in : MySetView [] : String | provenance | | -| Test.java:3554:48:3554:63 | (...)... : String | Test.java:266:41:266:49 | element : String | provenance | | -| Test.java:3554:48:3554:63 | (...)... : String | Test.java:3554:26:3554:64 | newSetViewWithElement(...) : MySetView [] : String | provenance | MaD:4 | -| Test.java:3554:56:3554:63 | source(...) : Object | Test.java:3554:48:3554:63 | (...)... : String | provenance | | -| Test.java:3555:4:3555:5 | in : MySetView [] : String | Test.java:3555:16:3555:18 | out [post update] : Set [] : String | provenance | MaD:788 | -| Test.java:3555:16:3555:18 | out [post update] : Set [] : String | Test.java:3556:20:3556:22 | out : Set [] : String | provenance | | -| Test.java:3556:20:3556:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:3556:20:3556:22 | out : Set [] : String | Test.java:3556:9:3556:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3561:19:3561:57 | newSetViewWithElement(...) : MySetView [] : String | Test.java:3562:10:3562:11 | in : MySetView [] : String | provenance | | -| Test.java:3561:41:3561:56 | (...)... : String | Test.java:266:41:266:49 | element : String | provenance | | -| Test.java:3561:41:3561:56 | (...)... : String | Test.java:3561:19:3561:57 | newSetViewWithElement(...) : MySetView [] : String | provenance | MaD:4 | -| Test.java:3561:49:3561:56 | source(...) : Object | Test.java:3561:41:3561:56 | (...)... : String | provenance | | -| Test.java:3562:10:3562:11 | in : MySetView [] : String | Test.java:3562:10:3562:30 | myCreateIterator(...) : Iterator [] : String | provenance | MaD:789 | -| Test.java:3562:10:3562:11 | in : MySetView [] : String | Test.java:7082:15:7082:30 | parameter this : MySetView [] : String | provenance | | -| Test.java:3562:10:3562:30 | myCreateIterator(...) : Iterator [] : String | Test.java:3563:20:3563:22 | out : Iterator [] : String | provenance | | -| Test.java:3563:20:3563:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:3563:20:3563:22 | out : Iterator [] : String | Test.java:3563:9:3563:23 | getElement(...) | provenance | MaD:6 | -| Test.java:3568:19:3568:57 | newSetViewWithElement(...) : MySetView [] : String | Test.java:3569:10:3569:11 | in : MySetView [] : String | provenance | | -| Test.java:3568:41:3568:56 | (...)... : String | Test.java:266:41:266:49 | element : String | provenance | | -| Test.java:3568:41:3568:56 | (...)... : String | Test.java:3568:19:3568:57 | newSetViewWithElement(...) : MySetView [] : String | provenance | MaD:4 | -| Test.java:3568:49:3568:56 | source(...) : Object | Test.java:3568:41:3568:56 | (...)... : String | provenance | | -| Test.java:3569:10:3569:11 | in : MySetView [] : String | Test.java:3569:10:3569:19 | toSet(...) : Set [] : String | provenance | MaD:790 | -| Test.java:3569:10:3569:19 | toSet(...) : Set [] : String | Test.java:3570:20:3570:22 | out : Set [] : String | provenance | | -| Test.java:3570:20:3570:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:3570:20:3570:22 | out : Set [] : String | Test.java:3570:9:3570:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3575:13:3575:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3576:30:3576:31 | in : TreeSet [] : String | provenance | | -| Test.java:3575:35:3575:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3575:35:3575:50 | (...)... : String | Test.java:3575:13:3575:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3575:43:3575:50 | source(...) : Object | Test.java:3575:35:3575:50 | (...)... : String | provenance | | -| Test.java:3576:10:3576:38 | difference(...) : SetView [] : String | Test.java:3577:20:3577:22 | out : SetView [] : String | provenance | | -| Test.java:3576:30:3576:31 | in : TreeSet [] : String | Test.java:3576:10:3576:38 | difference(...) : SetView [] : String | provenance | MaD:791 | -| Test.java:3577:20:3577:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | -| Test.java:3577:20:3577:22 | out : SetView [] : String | Test.java:3577:9:3577:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3582:13:3582:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3583:31:3583:32 | in : TreeSet [] : String | provenance | | -| Test.java:3582:35:3582:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3582:35:3582:50 | (...)... : String | Test.java:3582:13:3582:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3582:43:3582:50 | source(...) : Object | Test.java:3582:35:3582:50 | (...)... : String | provenance | | -| Test.java:3583:10:3583:39 | disjunction(...) : SetView [] : String | Test.java:3584:20:3584:22 | out : SetView [] : String | provenance | | -| Test.java:3583:31:3583:32 | in : TreeSet [] : String | Test.java:3583:10:3583:39 | disjunction(...) : SetView [] : String | provenance | MaD:792 | -| Test.java:3584:20:3584:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | -| Test.java:3584:20:3584:22 | out : SetView [] : String | Test.java:3584:9:3584:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3589:13:3589:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3590:37:3590:38 | in : TreeSet [] : String | provenance | | -| Test.java:3589:35:3589:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3589:35:3589:50 | (...)... : String | Test.java:3589:13:3589:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3589:43:3589:50 | source(...) : Object | Test.java:3589:35:3589:50 | (...)... : String | provenance | | -| Test.java:3590:10:3590:39 | disjunction(...) : SetView [] : String | Test.java:3591:20:3591:22 | out : SetView [] : String | provenance | | -| Test.java:3590:37:3590:38 | in : TreeSet [] : String | Test.java:3590:10:3590:39 | disjunction(...) : SetView [] : String | provenance | MaD:793 | -| Test.java:3591:20:3591:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | -| Test.java:3591:20:3591:22 | out : SetView [] : String | Test.java:3591:9:3591:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3596:13:3596:25 | (...)... : Set | Test.java:3597:31:3597:32 | in : Set | provenance | | -| Test.java:3596:18:3596:25 | source(...) : Object | Test.java:3596:13:3596:25 | (...)... : Set | provenance | | -| Test.java:3597:10:3597:33 | emptyIfNull(...) : Set | Test.java:3598:9:3598:11 | out | provenance | | -| Test.java:3597:31:3597:32 | in : Set | Test.java:3597:10:3597:33 | emptyIfNull(...) : Set | provenance | MaD:794 | -| Test.java:3603:16:3603:23 | source(...) : Object | Test.java:3604:27:3604:28 | in : Object | provenance | | -| Test.java:3604:10:3604:35 | hashSet(...) : HashSet [] : Object | Test.java:3605:20:3605:22 | out : HashSet [] : Object | provenance | | -| Test.java:3604:10:3604:35 | new ..[] { .. } : Object[] [[]] : Object | Test.java:3604:10:3604:35 | hashSet(...) : HashSet [] : Object | provenance | MaD:795 | -| Test.java:3604:27:3604:28 | in : Object | Test.java:3604:10:3604:35 | new ..[] { .. } : Object[] [[]] : Object | provenance | | -| Test.java:3605:20:3605:22 | out : HashSet [] : Object | Test.java:230:19:230:32 | it : HashSet [] : Object | provenance | | -| Test.java:3605:20:3605:22 | out : HashSet [] : Object | Test.java:3605:9:3605:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3610:13:3610:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3611:32:3611:33 | in : TreeSet [] : String | provenance | | -| Test.java:3610:35:3610:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3610:35:3610:50 | (...)... : String | Test.java:3610:13:3610:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3610:43:3610:50 | source(...) : Object | Test.java:3610:35:3610:50 | (...)... : String | provenance | | -| Test.java:3611:10:3611:40 | intersection(...) : SetView [] : String | Test.java:3612:20:3612:22 | out : SetView [] : String | provenance | | -| Test.java:3611:32:3611:33 | in : TreeSet [] : String | Test.java:3611:10:3611:40 | intersection(...) : SetView [] : String | provenance | MaD:796 | -| Test.java:3612:20:3612:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | -| Test.java:3612:20:3612:22 | out : SetView [] : String | Test.java:3612:9:3612:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3617:13:3617:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3618:38:3618:39 | in : TreeSet [] : String | provenance | | -| Test.java:3617:35:3617:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3617:35:3617:50 | (...)... : String | Test.java:3617:13:3617:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3617:43:3617:50 | source(...) : Object | Test.java:3617:35:3617:50 | (...)... : String | provenance | | -| Test.java:3618:10:3618:40 | intersection(...) : SetView [] : String | Test.java:3619:20:3619:22 | out : SetView [] : String | provenance | | -| Test.java:3618:38:3618:39 | in : TreeSet [] : String | Test.java:3618:10:3618:40 | intersection(...) : SetView [] : String | provenance | MaD:797 | -| Test.java:3619:20:3619:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | -| Test.java:3619:20:3619:22 | out : SetView [] : String | Test.java:3619:9:3619:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3624:13:3624:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3625:30:3625:31 | in : TreeSet [] : String | provenance | | -| Test.java:3624:35:3624:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3624:35:3624:50 | (...)... : String | Test.java:3624:13:3624:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3624:43:3624:50 | source(...) : Object | Test.java:3624:35:3624:50 | (...)... : String | provenance | | -| Test.java:3625:10:3625:32 | orderedSet(...) : Set [] : String | Test.java:3626:20:3626:22 | out : Set [] : String | provenance | | -| Test.java:3625:30:3625:31 | in : TreeSet [] : String | Test.java:3625:10:3625:32 | orderedSet(...) : Set [] : String | provenance | MaD:798 | -| Test.java:3626:20:3626:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:3626:20:3626:22 | out : Set [] : String | Test.java:3626:9:3626:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3631:22:3631:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3632:42:3632:43 | in : TreeSet [] : String | provenance | | -| Test.java:3631:44:3631:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3631:44:3631:59 | (...)... : String | Test.java:3631:22:3631:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3631:52:3631:59 | source(...) : Object | Test.java:3631:44:3631:59 | (...)... : String | provenance | | -| Test.java:3632:10:3632:50 | predicatedNavigableSet(...) : SortedSet [] : String | Test.java:3633:20:3633:22 | out : SortedSet [] : String | provenance | | -| Test.java:3632:42:3632:43 | in : TreeSet [] : String | Test.java:3632:10:3632:50 | predicatedNavigableSet(...) : SortedSet [] : String | provenance | MaD:799 | -| Test.java:3633:20:3633:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | -| Test.java:3633:20:3633:22 | out : SortedSet [] : String | Test.java:3633:9:3633:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3638:13:3638:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3639:33:3639:34 | in : TreeSet [] : String | provenance | | -| Test.java:3638:35:3638:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3638:35:3638:50 | (...)... : String | Test.java:3638:13:3638:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3638:43:3638:50 | source(...) : Object | Test.java:3638:35:3638:50 | (...)... : String | provenance | | -| Test.java:3639:10:3639:41 | predicatedSet(...) : Set [] : String | Test.java:3640:20:3640:22 | out : Set [] : String | provenance | | -| Test.java:3639:33:3639:34 | in : TreeSet [] : String | Test.java:3639:10:3639:41 | predicatedSet(...) : Set [] : String | provenance | MaD:800 | -| Test.java:3640:20:3640:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:3640:20:3640:22 | out : Set [] : String | Test.java:3640:9:3640:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3645:19:3645:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3646:39:3646:40 | in : TreeSet [] : String | provenance | | -| Test.java:3645:41:3645:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3645:41:3645:56 | (...)... : String | Test.java:3645:19:3645:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3645:49:3645:56 | source(...) : Object | Test.java:3645:41:3645:56 | (...)... : String | provenance | | -| Test.java:3646:10:3646:47 | predicatedSortedSet(...) : SortedSet [] : String | Test.java:3647:20:3647:22 | out : SortedSet [] : String | provenance | | -| Test.java:3646:39:3646:40 | in : TreeSet [] : String | Test.java:3646:10:3646:47 | predicatedSortedSet(...) : SortedSet [] : String | provenance | MaD:801 | -| Test.java:3647:20:3647:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | -| Test.java:3647:20:3647:22 | out : SortedSet [] : String | Test.java:3647:9:3647:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3652:13:3652:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3653:35:3653:36 | in : TreeSet [] : String | provenance | | -| Test.java:3652:35:3652:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3652:35:3652:50 | (...)... : String | Test.java:3652:13:3652:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3652:43:3652:50 | source(...) : Object | Test.java:3652:35:3652:50 | (...)... : String | provenance | | -| Test.java:3653:10:3653:37 | synchronizedSet(...) : Set [] : String | Test.java:3654:20:3654:22 | out : Set [] : String | provenance | | -| Test.java:3653:35:3653:36 | in : TreeSet [] : String | Test.java:3653:10:3653:37 | synchronizedSet(...) : Set [] : String | provenance | MaD:802 | -| Test.java:3654:20:3654:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:3654:20:3654:22 | out : Set [] : String | Test.java:3654:9:3654:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3659:19:3659:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3660:41:3660:42 | in : TreeSet [] : String | provenance | | -| Test.java:3659:41:3659:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3659:41:3659:56 | (...)... : String | Test.java:3659:19:3659:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3659:49:3659:56 | source(...) : Object | Test.java:3659:41:3659:56 | (...)... : String | provenance | | -| Test.java:3660:10:3660:43 | synchronizedSortedSet(...) : SortedSet [] : String | Test.java:3661:20:3661:22 | out : SortedSet [] : String | provenance | | -| Test.java:3660:41:3660:42 | in : TreeSet [] : String | Test.java:3660:10:3660:43 | synchronizedSortedSet(...) : SortedSet [] : String | provenance | MaD:803 | -| Test.java:3661:20:3661:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | -| Test.java:3661:20:3661:22 | out : SortedSet [] : String | Test.java:3661:9:3661:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3666:22:3666:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3667:43:3667:44 | in : TreeSet [] : String | provenance | | -| Test.java:3666:44:3666:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3666:44:3666:59 | (...)... : String | Test.java:3666:22:3666:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3666:52:3666:59 | source(...) : Object | Test.java:3666:44:3666:59 | (...)... : String | provenance | | -| Test.java:3667:10:3667:51 | transformedNavigableSet(...) : SortedSet [] : String | Test.java:3668:20:3668:22 | out : SortedSet [] : String | provenance | | -| Test.java:3667:43:3667:44 | in : TreeSet [] : String | Test.java:3667:10:3667:51 | transformedNavigableSet(...) : SortedSet [] : String | provenance | MaD:804 | -| Test.java:3668:20:3668:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | -| Test.java:3668:20:3668:22 | out : SortedSet [] : String | Test.java:3668:9:3668:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3673:13:3673:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3674:34:3674:35 | in : TreeSet [] : String | provenance | | -| Test.java:3673:35:3673:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3673:35:3673:50 | (...)... : String | Test.java:3673:13:3673:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3673:43:3673:50 | source(...) : Object | Test.java:3673:35:3673:50 | (...)... : String | provenance | | -| Test.java:3674:10:3674:42 | transformedSet(...) : Set [] : String | Test.java:3675:20:3675:22 | out : Set [] : String | provenance | | -| Test.java:3674:34:3674:35 | in : TreeSet [] : String | Test.java:3674:10:3674:42 | transformedSet(...) : Set [] : String | provenance | MaD:805 | -| Test.java:3675:20:3675:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:3675:20:3675:22 | out : Set [] : String | Test.java:3675:9:3675:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3680:19:3680:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3681:40:3681:41 | in : TreeSet [] : String | provenance | | -| Test.java:3680:41:3680:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3680:41:3680:56 | (...)... : String | Test.java:3680:19:3680:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3680:49:3680:56 | source(...) : Object | Test.java:3680:41:3680:56 | (...)... : String | provenance | | -| Test.java:3681:10:3681:48 | transformedSortedSet(...) : SortedSet [] : String | Test.java:3682:20:3682:22 | out : SortedSet [] : String | provenance | | -| Test.java:3681:40:3681:41 | in : TreeSet [] : String | Test.java:3681:10:3681:48 | transformedSortedSet(...) : SortedSet [] : String | provenance | MaD:806 | -| Test.java:3682:20:3682:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | -| Test.java:3682:20:3682:22 | out : SortedSet [] : String | Test.java:3682:9:3682:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3687:13:3687:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3688:25:3688:26 | in : TreeSet [] : String | provenance | | -| Test.java:3687:35:3687:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3687:35:3687:50 | (...)... : String | Test.java:3687:13:3687:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3687:43:3687:50 | source(...) : Object | Test.java:3687:35:3687:50 | (...)... : String | provenance | | -| Test.java:3688:10:3688:33 | union(...) : SetView [] : String | Test.java:3689:20:3689:22 | out : SetView [] : String | provenance | | -| Test.java:3688:25:3688:26 | in : TreeSet [] : String | Test.java:3688:10:3688:33 | union(...) : SetView [] : String | provenance | MaD:807 | -| Test.java:3689:20:3689:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | -| Test.java:3689:20:3689:22 | out : SetView [] : String | Test.java:3689:9:3689:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3694:13:3694:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3695:31:3695:32 | in : TreeSet [] : String | provenance | | -| Test.java:3694:35:3694:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3694:35:3694:50 | (...)... : String | Test.java:3694:13:3694:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3694:43:3694:50 | source(...) : Object | Test.java:3694:35:3694:50 | (...)... : String | provenance | | -| Test.java:3695:10:3695:33 | union(...) : SetView [] : String | Test.java:3696:20:3696:22 | out : SetView [] : String | provenance | | -| Test.java:3695:31:3695:32 | in : TreeSet [] : String | Test.java:3695:10:3695:33 | union(...) : SetView [] : String | provenance | MaD:808 | -| Test.java:3696:20:3696:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | -| Test.java:3696:20:3696:22 | out : SetView [] : String | Test.java:3696:9:3696:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3701:22:3701:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3702:44:3702:45 | in : TreeSet [] : String | provenance | | -| Test.java:3701:44:3701:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3701:44:3701:59 | (...)... : String | Test.java:3701:22:3701:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3701:52:3701:59 | source(...) : Object | Test.java:3701:44:3701:59 | (...)... : String | provenance | | -| Test.java:3702:10:3702:46 | unmodifiableNavigableSet(...) : SortedSet [] : String | Test.java:3703:20:3703:22 | out : SortedSet [] : String | provenance | | -| Test.java:3702:44:3702:45 | in : TreeSet [] : String | Test.java:3702:10:3702:46 | unmodifiableNavigableSet(...) : SortedSet [] : String | provenance | MaD:809 | -| Test.java:3703:20:3703:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | -| Test.java:3703:20:3703:22 | out : SortedSet [] : String | Test.java:3703:9:3703:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3708:16:3708:23 | source(...) : Object | Test.java:3709:35:3709:36 | in : Object | provenance | | -| Test.java:3709:10:3709:43 | new ..[] { .. } : Object[] [[]] : Object | Test.java:3709:10:3709:43 | unmodifiableSet(...) : Set [] : Object | provenance | MaD:810 | -| Test.java:3709:10:3709:43 | unmodifiableSet(...) : Set [] : Object | Test.java:3710:20:3710:22 | out : Set [] : Object | provenance | | -| Test.java:3709:35:3709:36 | in : Object | Test.java:3709:10:3709:43 | new ..[] { .. } : Object[] [[]] : Object | provenance | | -| Test.java:3710:20:3710:22 | out : Set [] : Object | Test.java:230:19:230:32 | it : Set [] : Object | provenance | | -| Test.java:3710:20:3710:22 | out : Set [] : Object | Test.java:3710:9:3710:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3715:13:3715:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3716:35:3716:36 | in : TreeSet [] : String | provenance | | -| Test.java:3715:35:3715:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3715:35:3715:50 | (...)... : String | Test.java:3715:13:3715:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3715:43:3715:50 | source(...) : Object | Test.java:3715:35:3715:50 | (...)... : String | provenance | | -| Test.java:3716:10:3716:37 | unmodifiableSet(...) : Set [] : String | Test.java:3717:20:3717:22 | out : Set [] : String | provenance | | -| Test.java:3716:35:3716:36 | in : TreeSet [] : String | Test.java:3716:10:3716:37 | unmodifiableSet(...) : Set [] : String | provenance | MaD:811 | -| Test.java:3717:20:3717:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:3717:20:3717:22 | out : Set [] : String | Test.java:3717:9:3717:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3722:19:3722:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3723:41:3723:42 | in : TreeSet [] : String | provenance | | -| Test.java:3722:41:3722:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:3722:41:3722:56 | (...)... : String | Test.java:3722:19:3722:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:3722:49:3722:56 | source(...) : Object | Test.java:3722:41:3722:56 | (...)... : String | provenance | | -| Test.java:3723:10:3723:43 | unmodifiableSortedSet(...) : SortedSet [] : String | Test.java:3724:20:3724:22 | out : SortedSet [] : String | provenance | | -| Test.java:3723:41:3723:42 | in : TreeSet [] : String | Test.java:3723:10:3723:43 | unmodifiableSortedSet(...) : SortedSet [] : String | provenance | MaD:812 | -| Test.java:3724:20:3724:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | -| Test.java:3724:20:3724:22 | out : SortedSet [] : String | Test.java:3724:9:3724:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3729:19:3729:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3730:10:3730:11 | in : TreeBag [] : String | provenance | | -| Test.java:3729:41:3729:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3729:41:3729:56 | (...)... : String | Test.java:3729:19:3729:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3729:41:3729:56 | (...)... : String | Test.java:3729:19:3729:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3729:49:3729:56 | source(...) : Object | Test.java:3729:41:3729:56 | (...)... : String | provenance | | -| Test.java:3730:10:3730:11 | in : TreeBag [] : String | Test.java:3730:10:3730:19 | first(...) : String | provenance | MaD:813 | -| Test.java:3730:10:3730:19 | first(...) : String | Test.java:3731:9:3731:11 | out | provenance | | -| Test.java:3736:19:3736:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3737:10:3737:11 | in : TreeBag [] : String | provenance | | -| Test.java:3736:41:3736:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3736:41:3736:56 | (...)... : String | Test.java:3736:19:3736:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3736:41:3736:56 | (...)... : String | Test.java:3736:19:3736:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3736:49:3736:56 | source(...) : Object | Test.java:3736:41:3736:56 | (...)... : String | provenance | | -| Test.java:3737:10:3737:11 | in : TreeBag [] : String | Test.java:3737:10:3737:18 | last(...) : String | provenance | MaD:814 | -| Test.java:3737:10:3737:18 | last(...) : String | Test.java:3738:9:3738:11 | out | provenance | | -| Test.java:3743:13:3743:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | Test.java:3744:36:3744:37 | in : HashedMap [] : String | provenance | | -| Test.java:3743:36:3743:51 | (...)... : String | Test.java:275:49:275:53 | key : String | provenance | | -| Test.java:3743:36:3743:51 | (...)... : String | Test.java:3743:13:3743:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | provenance | MaD:19 | -| Test.java:3743:36:3743:51 | (...)... : String | Test.java:3743:13:3743:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | provenance | MaD:779 | -| Test.java:3743:44:3743:51 | source(...) : Object | Test.java:3743:36:3743:51 | (...)... : String | provenance | | -| Test.java:3744:10:3744:38 | readableMap(...) : IterableMap [] : String | Test.java:3745:19:3745:21 | out : IterableMap [] : String | provenance | | -| Test.java:3744:36:3744:37 | in : HashedMap [] : String | Test.java:3744:10:3744:38 | readableMap(...) : IterableMap [] : String | provenance | MaD:815 | -| Test.java:3745:19:3745:21 | out : IterableMap [] : String | Test.java:228:18:228:29 | map : IterableMap [] : String | provenance | | -| Test.java:3745:19:3745:21 | out : IterableMap [] : String | Test.java:3745:9:3745:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:3750:13:3750:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | Test.java:3751:36:3751:37 | in : HashedMap [] : String | provenance | | -| Test.java:3750:38:3750:53 | (...)... : String | Test.java:293:51:293:57 | value : String | provenance | | -| Test.java:3750:38:3750:53 | (...)... : String | Test.java:3750:13:3750:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:20 | -| Test.java:3750:38:3750:53 | (...)... : String | Test.java:3750:13:3750:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:780 | -| Test.java:3750:46:3750:53 | source(...) : Object | Test.java:3750:38:3750:53 | (...)... : String | provenance | | -| Test.java:3751:10:3751:38 | readableMap(...) : IterableMap [] : String | Test.java:3752:21:3752:23 | out : IterableMap [] : String | provenance | | -| Test.java:3751:36:3751:37 | in : HashedMap [] : String | Test.java:3751:10:3751:38 | readableMap(...) : IterableMap [] : String | provenance | MaD:816 | -| Test.java:3752:21:3752:23 | out : IterableMap [] : String | Test.java:232:20:232:31 | map : IterableMap [] : String | provenance | | -| Test.java:3752:21:3752:23 | out : IterableMap [] : String | Test.java:3752:9:3752:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3757:13:3757:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | Test.java:3758:36:3758:37 | in : HashedMap [] : String | provenance | | -| Test.java:3757:36:3757:51 | (...)... : String | Test.java:275:49:275:53 | key : String | provenance | | -| Test.java:3757:36:3757:51 | (...)... : String | Test.java:3757:13:3757:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | provenance | MaD:19 | -| Test.java:3757:36:3757:51 | (...)... : String | Test.java:3757:13:3757:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | provenance | MaD:779 | -| Test.java:3757:44:3757:51 | source(...) : Object | Test.java:3757:36:3757:51 | (...)... : String | provenance | | -| Test.java:3758:10:3758:38 | writableMap(...) : Map [] : String | Test.java:3759:19:3759:21 | out : Map [] : String | provenance | | -| Test.java:3758:36:3758:37 | in : HashedMap [] : String | Test.java:3758:10:3758:38 | writableMap(...) : Map [] : String | provenance | MaD:817 | -| Test.java:3759:19:3759:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:3759:19:3759:21 | out : Map [] : String | Test.java:3759:9:3759:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:3764:13:3764:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | Test.java:3765:36:3765:37 | in : HashedMap [] : String | provenance | | -| Test.java:3764:38:3764:53 | (...)... : String | Test.java:293:51:293:57 | value : String | provenance | | -| Test.java:3764:38:3764:53 | (...)... : String | Test.java:3764:13:3764:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:20 | -| Test.java:3764:38:3764:53 | (...)... : String | Test.java:3764:13:3764:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:780 | -| Test.java:3764:46:3764:53 | source(...) : Object | Test.java:3764:38:3764:53 | (...)... : String | provenance | | -| Test.java:3765:10:3765:38 | writableMap(...) : Map [] : String | Test.java:3766:21:3766:23 | out : Map [] : String | provenance | | -| Test.java:3765:36:3765:37 | in : HashedMap [] : String | Test.java:3765:10:3765:38 | writableMap(...) : Map [] : String | provenance | MaD:818 | -| Test.java:3766:21:3766:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:3766:21:3766:23 | out : Map [] : String | Test.java:3766:9:3766:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3771:14:3771:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | Test.java:3772:10:3772:11 | in : PatriciaTrie [] : String | provenance | | -| Test.java:3771:40:3771:55 | (...)... : String | Test.java:288:49:288:58 | key : String | provenance | | -| Test.java:3771:40:3771:55 | (...)... : String | Test.java:3771:14:3771:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:19 | -| Test.java:3771:40:3771:55 | (...)... : String | Test.java:3771:14:3771:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:779 | -| Test.java:3771:48:3771:55 | source(...) : Object | Test.java:3771:40:3771:55 | (...)... : String | provenance | | -| Test.java:3772:10:3772:11 | in : PatriciaTrie [] : String | Test.java:3772:10:3772:27 | prefixMap(...) : SortedMap [] : String | provenance | MaD:819 | -| Test.java:3772:10:3772:27 | prefixMap(...) : SortedMap [] : String | Test.java:3773:19:3773:21 | out : SortedMap [] : String | provenance | | -| Test.java:3773:19:3773:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | provenance | | -| Test.java:3773:19:3773:21 | out : SortedMap [] : String | Test.java:3773:9:3773:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:3778:14:3778:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:3779:10:3779:11 | in : PatriciaTrie [] : String | provenance | | -| Test.java:3778:42:3778:57 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | -| Test.java:3778:42:3778:57 | (...)... : String | Test.java:3778:14:3778:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:20 | -| Test.java:3778:42:3778:57 | (...)... : String | Test.java:3778:14:3778:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:780 | -| Test.java:3778:50:3778:57 | source(...) : Object | Test.java:3778:42:3778:57 | (...)... : String | provenance | | -| Test.java:3779:10:3779:11 | in : PatriciaTrie [] : String | Test.java:3779:10:3779:27 | prefixMap(...) : SortedMap [] : String | provenance | MaD:820 | -| Test.java:3779:10:3779:27 | prefixMap(...) : SortedMap [] : String | Test.java:3780:21:3780:23 | out : SortedMap [] : String | provenance | | -| Test.java:3780:21:3780:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | provenance | | -| Test.java:3780:21:3780:23 | out : SortedMap [] : String | Test.java:3780:9:3780:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3785:14:3785:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | Test.java:3786:37:3786:38 | in : PatriciaTrie [] : String | provenance | | -| Test.java:3785:40:3785:55 | (...)... : String | Test.java:288:49:288:58 | key : String | provenance | | -| Test.java:3785:40:3785:55 | (...)... : String | Test.java:3785:14:3785:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:19 | -| Test.java:3785:40:3785:55 | (...)... : String | Test.java:3785:14:3785:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:779 | -| Test.java:3785:48:3785:55 | source(...) : Object | Test.java:3785:40:3785:55 | (...)... : String | provenance | | -| Test.java:3786:10:3786:39 | unmodifiableTrie(...) : Trie [] : String | Test.java:3787:19:3787:21 | out : Trie [] : String | provenance | | -| Test.java:3786:37:3786:38 | in : PatriciaTrie [] : String | Test.java:3786:10:3786:39 | unmodifiableTrie(...) : Trie [] : String | provenance | MaD:821 | -| Test.java:3787:19:3787:21 | out : Trie [] : String | Test.java:228:18:228:29 | map : Trie [] : String | provenance | | -| Test.java:3787:19:3787:21 | out : Trie [] : String | Test.java:3787:9:3787:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:3792:14:3792:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:3793:37:3793:38 | in : PatriciaTrie [] : String | provenance | | -| Test.java:3792:42:3792:57 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | -| Test.java:3792:42:3792:57 | (...)... : String | Test.java:3792:14:3792:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:20 | -| Test.java:3792:42:3792:57 | (...)... : String | Test.java:3792:14:3792:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:780 | -| Test.java:3792:50:3792:57 | source(...) : Object | Test.java:3792:42:3792:57 | (...)... : String | provenance | | -| Test.java:3793:10:3793:39 | unmodifiableTrie(...) : Trie [] : String | Test.java:3794:21:3794:23 | out : Trie [] : String | provenance | | -| Test.java:3793:37:3793:38 | in : PatriciaTrie [] : String | Test.java:3793:10:3793:39 | unmodifiableTrie(...) : Trie [] : String | provenance | MaD:822 | -| Test.java:3794:21:3794:23 | out : Trie [] : String | Test.java:232:20:232:31 | map : Trie [] : String | provenance | | -| Test.java:3794:21:3794:23 | out : Trie [] : String | Test.java:3794:9:3794:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3799:13:3799:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3800:37:3800:38 | in : TreeBag [] : String | provenance | | -| Test.java:3799:35:3799:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3799:35:3799:50 | (...)... : String | Test.java:3799:13:3799:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3799:35:3799:50 | (...)... : String | Test.java:3799:13:3799:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3799:43:3799:50 | source(...) : Object | Test.java:3799:35:3799:50 | (...)... : String | provenance | | -| Test.java:3800:10:3800:39 | new MyAbstractBagDecorator<>(...) : MyAbstractBagDecorator [] : String | Test.java:3801:20:3801:22 | out : MyAbstractBagDecorator [] : String | provenance | | -| Test.java:3800:37:3800:38 | in : TreeBag [] : String | Test.java:3800:10:3800:39 | new MyAbstractBagDecorator<>(...) : MyAbstractBagDecorator [] : String | provenance | MaD:26 | -| Test.java:3800:37:3800:38 | in : TreeBag [] : String | Test.java:7104:33:7104:48 | bag : TreeBag [] : String | provenance | | -| Test.java:3801:20:3801:22 | out : MyAbstractBagDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractBagDecorator [] : String | provenance | | -| Test.java:3801:20:3801:22 | out : MyAbstractBagDecorator [] : String | Test.java:3801:9:3801:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3806:13:3806:42 | of(...) : Map [] : String | Test.java:3807:31:3807:32 | in : Map [] : String | provenance | | -| Test.java:3806:20:3806:35 | (...)... : String | Test.java:3806:13:3806:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:3806:28:3806:35 | source(...) : Object | Test.java:3806:20:3806:35 | (...)... : String | provenance | | -| Test.java:3807:10:3807:33 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | Test.java:3808:20:3808:22 | out : MyAbstractMapBag [] : String | provenance | | -| Test.java:3807:31:3807:32 | in : Map [] : String | Test.java:3807:10:3807:33 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | provenance | MaD:27 | -| Test.java:3807:31:3807:32 | in : Map [] : String | Test.java:7110:27:7110:58 | map : Map [] : String | provenance | | -| Test.java:3808:20:3808:22 | out : MyAbstractMapBag [] : String | Test.java:230:19:230:32 | it : MyAbstractMapBag [] : String | provenance | | -| Test.java:3808:20:3808:22 | out : MyAbstractMapBag [] : String | Test.java:3808:9:3808:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3813:26:3813:77 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | Test.java:3814:10:3814:11 | in : MyAbstractMapBag [] : String | provenance | | -| Test.java:3813:47:3813:76 | of(...) : Map [] : String | Test.java:3813:26:3813:77 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | provenance | MaD:27 | -| Test.java:3813:47:3813:76 | of(...) : Map [] : String | Test.java:7110:27:7110:58 | map : Map [] : String | provenance | | -| Test.java:3813:54:3813:69 | (...)... : String | Test.java:3813:47:3813:76 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:3813:62:3813:69 | source(...) : Object | Test.java:3813:54:3813:69 | (...)... : String | provenance | | -| Test.java:3814:10:3814:11 | in : MyAbstractMapBag [] : String | Test.java:3814:10:3814:22 | myGetMap(...) : Map [] : String | provenance | MaD:28 | -| Test.java:3814:10:3814:11 | in : MyAbstractMapBag [] : String | Test.java:7113:33:7113:40 | parameter this : MyAbstractMapBag [] : String | provenance | | -| Test.java:3814:10:3814:22 | myGetMap(...) : Map [] : String | Test.java:3815:19:3815:21 | out : Map [] : String | provenance | | -| Test.java:3815:19:3815:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:3815:19:3815:21 | out : Map [] : String | Test.java:3815:9:3815:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:3820:19:3820:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3821:43:3821:44 | in : TreeBag [] : String | provenance | | -| Test.java:3820:41:3820:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3820:41:3820:56 | (...)... : String | Test.java:3820:19:3820:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3820:41:3820:56 | (...)... : String | Test.java:3820:19:3820:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3820:49:3820:56 | source(...) : Object | Test.java:3820:41:3820:56 | (...)... : String | provenance | | -| Test.java:3821:10:3821:45 | new MyAbstractSortedBagDecorator<>(...) : MyAbstractSortedBagDecorator [] : String | Test.java:3822:20:3822:22 | out : MyAbstractSortedBagDecorator [] : String | provenance | | -| Test.java:3821:43:3821:44 | in : TreeBag [] : String | Test.java:3821:10:3821:45 | new MyAbstractSortedBagDecorator<>(...) : MyAbstractSortedBagDecorator [] : String | provenance | MaD:29 | -| Test.java:3821:43:3821:44 | in : TreeBag [] : String | Test.java:7119:39:7119:60 | bag : TreeBag [] : String | provenance | | -| Test.java:3822:20:3822:22 | out : MyAbstractSortedBagDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSortedBagDecorator [] : String | provenance | | -| Test.java:3822:20:3822:22 | out : MyAbstractSortedBagDecorator [] : String | Test.java:3822:9:3822:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3827:13:3827:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3828:28:3828:29 | in : TreeBag [] : String | provenance | | -| Test.java:3827:35:3827:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3827:35:3827:50 | (...)... : String | Test.java:3827:13:3827:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3827:35:3827:50 | (...)... : String | Test.java:3827:13:3827:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3827:43:3827:50 | source(...) : Object | Test.java:3827:35:3827:50 | (...)... : String | provenance | | -| Test.java:3828:10:3828:30 | new CollectionBag<>(...) : CollectionBag [] : String | Test.java:3829:20:3829:22 | out : CollectionBag [] : String | provenance | | -| Test.java:3828:28:3828:29 | in : TreeBag [] : String | Test.java:3828:10:3828:30 | new CollectionBag<>(...) : CollectionBag [] : String | provenance | MaD:30 | -| Test.java:3829:20:3829:22 | out : CollectionBag [] : String | Test.java:230:19:230:32 | it : CollectionBag [] : String | provenance | | -| Test.java:3829:20:3829:22 | out : CollectionBag [] : String | Test.java:3829:9:3829:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3834:13:3834:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3835:38:3835:39 | in : TreeBag [] : String | provenance | | -| Test.java:3834:35:3834:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3834:35:3834:50 | (...)... : String | Test.java:3834:13:3834:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3834:35:3834:50 | (...)... : String | Test.java:3834:13:3834:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3834:43:3834:50 | source(...) : Object | Test.java:3834:35:3834:50 | (...)... : String | provenance | | -| Test.java:3835:10:3835:40 | collectionBag(...) : Bag [] : String | Test.java:3836:20:3836:22 | out : Bag [] : String | provenance | | -| Test.java:3835:38:3835:39 | in : TreeBag [] : String | Test.java:3835:10:3835:40 | collectionBag(...) : Bag [] : String | provenance | MaD:31 | -| Test.java:3836:20:3836:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | -| Test.java:3836:20:3836:22 | out : Bag [] : String | Test.java:3836:9:3836:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3841:19:3841:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3842:34:3842:35 | in : TreeBag [] : String | provenance | | -| Test.java:3841:41:3841:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3841:41:3841:56 | (...)... : String | Test.java:3841:19:3841:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3841:41:3841:56 | (...)... : String | Test.java:3841:19:3841:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3841:49:3841:56 | source(...) : Object | Test.java:3841:41:3841:56 | (...)... : String | provenance | | -| Test.java:3842:10:3842:36 | new CollectionSortedBag<>(...) : CollectionSortedBag [] : String | Test.java:3843:20:3843:22 | out : CollectionSortedBag [] : String | provenance | | -| Test.java:3842:34:3842:35 | in : TreeBag [] : String | Test.java:3842:10:3842:36 | new CollectionSortedBag<>(...) : CollectionSortedBag [] : String | provenance | MaD:32 | -| Test.java:3843:20:3843:22 | out : CollectionSortedBag [] : String | Test.java:230:19:230:32 | it : CollectionSortedBag [] : String | provenance | | -| Test.java:3843:20:3843:22 | out : CollectionSortedBag [] : String | Test.java:3843:9:3843:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3848:19:3848:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3849:50:3849:51 | in : TreeBag [] : String | provenance | | -| Test.java:3848:41:3848:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3848:41:3848:56 | (...)... : String | Test.java:3848:19:3848:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3848:41:3848:56 | (...)... : String | Test.java:3848:19:3848:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3848:49:3848:56 | source(...) : Object | Test.java:3848:41:3848:56 | (...)... : String | provenance | | -| Test.java:3849:10:3849:52 | collectionSortedBag(...) : SortedBag [] : String | Test.java:3850:20:3850:22 | out : SortedBag [] : String | provenance | | -| Test.java:3849:50:3849:51 | in : TreeBag [] : String | Test.java:3849:10:3849:52 | collectionSortedBag(...) : SortedBag [] : String | provenance | MaD:33 | -| Test.java:3850:20:3850:22 | out : SortedBag [] : String | Test.java:230:19:230:32 | it : SortedBag [] : String | provenance | | -| Test.java:3850:20:3850:22 | out : SortedBag [] : String | Test.java:3850:9:3850:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3855:20:3855:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3856:22:3856:23 | in : TreeBag [] : String | provenance | | -| Test.java:3855:42:3855:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3855:42:3855:57 | (...)... : String | Test.java:3855:20:3855:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3855:42:3855:57 | (...)... : String | Test.java:3855:20:3855:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3855:50:3855:57 | source(...) : Object | Test.java:3855:42:3855:57 | (...)... : String | provenance | | -| Test.java:3856:10:3856:24 | new HashBag<>(...) : HashBag [] : String | Test.java:3857:20:3857:22 | out : HashBag [] : String | provenance | | -| Test.java:3856:22:3856:23 | in : TreeBag [] : String | Test.java:3856:10:3856:24 | new HashBag<>(...) : HashBag [] : String | provenance | MaD:34 | -| Test.java:3857:20:3857:22 | out : HashBag [] : String | Test.java:230:19:230:32 | it : HashBag [] : String | provenance | | -| Test.java:3857:20:3857:22 | out : HashBag [] : String | Test.java:3857:9:3857:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3862:13:3862:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3863:38:3863:39 | in : TreeBag [] : String | provenance | | -| Test.java:3862:35:3862:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3862:35:3862:50 | (...)... : String | Test.java:3862:13:3862:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3862:35:3862:50 | (...)... : String | Test.java:3862:13:3862:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3862:43:3862:50 | source(...) : Object | Test.java:3862:35:3862:50 | (...)... : String | provenance | | -| Test.java:3863:10:3863:46 | predicatedBag(...) : PredicatedBag [] : String | Test.java:3864:20:3864:22 | out : PredicatedBag [] : String | provenance | | -| Test.java:3863:38:3863:39 | in : TreeBag [] : String | Test.java:3863:10:3863:46 | predicatedBag(...) : PredicatedBag [] : String | provenance | MaD:35 | -| Test.java:3864:20:3864:22 | out : PredicatedBag [] : String | Test.java:230:19:230:32 | it : PredicatedBag [] : String | provenance | | -| Test.java:3864:20:3864:22 | out : PredicatedBag [] : String | Test.java:3864:9:3864:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3869:19:3869:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3870:50:3870:51 | in : TreeBag [] : String | provenance | | -| Test.java:3869:41:3869:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3869:41:3869:56 | (...)... : String | Test.java:3869:19:3869:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3869:41:3869:56 | (...)... : String | Test.java:3869:19:3869:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3869:49:3869:56 | source(...) : Object | Test.java:3869:41:3869:56 | (...)... : String | provenance | | -| Test.java:3870:10:3870:58 | predicatedSortedBag(...) : PredicatedSortedBag [] : String | Test.java:3871:20:3871:22 | out : PredicatedSortedBag [] : String | provenance | | -| Test.java:3870:50:3870:51 | in : TreeBag [] : String | Test.java:3870:10:3870:58 | predicatedSortedBag(...) : PredicatedSortedBag [] : String | provenance | MaD:36 | -| Test.java:3871:20:3871:22 | out : PredicatedSortedBag [] : String | Test.java:230:19:230:32 | it : PredicatedSortedBag [] : String | provenance | | -| Test.java:3871:20:3871:22 | out : PredicatedSortedBag [] : String | Test.java:3871:9:3871:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3876:13:3876:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3877:42:3877:43 | in : TreeBag [] : String | provenance | | -| Test.java:3876:35:3876:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3876:35:3876:50 | (...)... : String | Test.java:3876:13:3876:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3876:35:3876:50 | (...)... : String | Test.java:3876:13:3876:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3876:43:3876:50 | source(...) : Object | Test.java:3876:35:3876:50 | (...)... : String | provenance | | -| Test.java:3877:10:3877:44 | synchronizedBag(...) : SynchronizedBag [] : String | Test.java:3878:20:3878:22 | out : SynchronizedBag [] : String | provenance | | -| Test.java:3877:42:3877:43 | in : TreeBag [] : String | Test.java:3877:10:3877:44 | synchronizedBag(...) : SynchronizedBag [] : String | provenance | MaD:37 | -| Test.java:3878:20:3878:22 | out : SynchronizedBag [] : String | Test.java:230:19:230:32 | it : SynchronizedBag [] : String | provenance | | -| Test.java:3878:20:3878:22 | out : SynchronizedBag [] : String | Test.java:3878:9:3878:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3883:19:3883:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3884:54:3884:55 | in : TreeBag [] : String | provenance | | -| Test.java:3883:41:3883:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3883:41:3883:56 | (...)... : String | Test.java:3883:19:3883:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3883:41:3883:56 | (...)... : String | Test.java:3883:19:3883:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3883:49:3883:56 | source(...) : Object | Test.java:3883:41:3883:56 | (...)... : String | provenance | | -| Test.java:3884:10:3884:56 | synchronizedSortedBag(...) : SynchronizedSortedBag [] : String | Test.java:3885:20:3885:22 | out : SynchronizedSortedBag [] : String | provenance | | -| Test.java:3884:54:3884:55 | in : TreeBag [] : String | Test.java:3884:10:3884:56 | synchronizedSortedBag(...) : SynchronizedSortedBag [] : String | provenance | MaD:38 | -| Test.java:3885:20:3885:22 | out : SynchronizedSortedBag [] : String | Test.java:230:19:230:32 | it : SynchronizedSortedBag [] : String | provenance | | -| Test.java:3885:20:3885:22 | out : SynchronizedSortedBag [] : String | Test.java:3885:9:3885:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3890:13:3890:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3891:40:3891:41 | in : TreeBag [] : String | provenance | | -| Test.java:3890:35:3890:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3890:35:3890:50 | (...)... : String | Test.java:3890:13:3890:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3890:35:3890:50 | (...)... : String | Test.java:3890:13:3890:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3890:43:3890:50 | source(...) : Object | Test.java:3890:35:3890:50 | (...)... : String | provenance | | -| Test.java:3891:10:3891:48 | transformedBag(...) : Bag [] : String | Test.java:3892:20:3892:22 | out : Bag [] : String | provenance | | -| Test.java:3891:40:3891:41 | in : TreeBag [] : String | Test.java:3891:10:3891:48 | transformedBag(...) : Bag [] : String | provenance | MaD:39 | -| Test.java:3892:20:3892:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | -| Test.java:3892:20:3892:22 | out : Bag [] : String | Test.java:3892:9:3892:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3897:19:3897:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3898:52:3898:53 | in : TreeBag [] : String | provenance | | -| Test.java:3897:41:3897:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3897:41:3897:56 | (...)... : String | Test.java:3897:19:3897:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3897:41:3897:56 | (...)... : String | Test.java:3897:19:3897:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3897:49:3897:56 | source(...) : Object | Test.java:3897:41:3897:56 | (...)... : String | provenance | | -| Test.java:3898:10:3898:60 | transformedSortedBag(...) : TransformedSortedBag [] : String | Test.java:3899:20:3899:22 | out : TransformedSortedBag [] : String | provenance | | -| Test.java:3898:52:3898:53 | in : TreeBag [] : String | Test.java:3898:10:3898:60 | transformedSortedBag(...) : TransformedSortedBag [] : String | provenance | MaD:40 | -| Test.java:3899:20:3899:22 | out : TransformedSortedBag [] : String | Test.java:230:19:230:32 | it : TransformedSortedBag [] : String | provenance | | -| Test.java:3899:20:3899:22 | out : TransformedSortedBag [] : String | Test.java:3899:9:3899:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3904:20:3904:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3905:22:3905:23 | in : TreeBag [] : String | provenance | | -| Test.java:3904:42:3904:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3904:42:3904:57 | (...)... : String | Test.java:3904:20:3904:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3904:42:3904:57 | (...)... : String | Test.java:3904:20:3904:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3904:50:3904:57 | source(...) : Object | Test.java:3904:42:3904:57 | (...)... : String | provenance | | -| Test.java:3905:10:3905:24 | new TreeBag<>(...) : TreeBag [] : String | Test.java:3906:20:3906:22 | out : TreeBag [] : String | provenance | | -| Test.java:3905:22:3905:23 | in : TreeBag [] : String | Test.java:3905:10:3905:24 | new TreeBag<>(...) : TreeBag [] : String | provenance | MaD:41 | -| Test.java:3906:20:3906:22 | out : TreeBag [] : String | Test.java:230:19:230:32 | it : TreeBag [] : String | provenance | | -| Test.java:3906:20:3906:22 | out : TreeBag [] : String | Test.java:3906:9:3906:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3911:13:3911:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3912:42:3912:43 | in : TreeBag [] : String | provenance | | -| Test.java:3911:35:3911:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3911:35:3911:50 | (...)... : String | Test.java:3911:13:3911:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3911:35:3911:50 | (...)... : String | Test.java:3911:13:3911:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3911:43:3911:50 | source(...) : Object | Test.java:3911:35:3911:50 | (...)... : String | provenance | | -| Test.java:3912:10:3912:44 | unmodifiableBag(...) : Bag [] : String | Test.java:3913:20:3913:22 | out : Bag [] : String | provenance | | -| Test.java:3912:42:3912:43 | in : TreeBag [] : String | Test.java:3912:10:3912:44 | unmodifiableBag(...) : Bag [] : String | provenance | MaD:42 | -| Test.java:3913:20:3913:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | -| Test.java:3913:20:3913:22 | out : Bag [] : String | Test.java:3913:9:3913:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3918:19:3918:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3919:54:3919:55 | in : TreeBag [] : String | provenance | | -| Test.java:3918:41:3918:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:3918:41:3918:56 | (...)... : String | Test.java:3918:19:3918:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:3918:41:3918:56 | (...)... : String | Test.java:3918:19:3918:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:3918:49:3918:56 | source(...) : Object | Test.java:3918:41:3918:56 | (...)... : String | provenance | | -| Test.java:3919:10:3919:56 | unmodifiableSortedBag(...) : SortedBag [] : String | Test.java:3920:20:3920:22 | out : SortedBag [] : String | provenance | | -| Test.java:3919:54:3919:55 | in : TreeBag [] : String | Test.java:3919:10:3919:56 | unmodifiableSortedBag(...) : SortedBag [] : String | provenance | MaD:43 | -| Test.java:3920:20:3920:22 | out : SortedBag [] : String | Test.java:230:19:230:32 | it : SortedBag [] : String | provenance | | -| Test.java:3920:20:3920:22 | out : SortedBag [] : String | Test.java:3920:9:3920:23 | getElement(...) | provenance | MaD:3 | -| Test.java:3925:17:3925:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:3926:41:3926:42 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:3925:46:3925:61 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | -| Test.java:3925:46:3925:61 | (...)... : String | Test.java:3925:17:3925:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:13 | -| Test.java:3925:54:3925:61 | source(...) : Object | Test.java:3925:46:3925:61 | (...)... : String | provenance | | -| Test.java:3926:10:3926:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | Test.java:3927:19:3927:21 | out : MyAbstractBidiMapDecorator [] : String | provenance | | -| Test.java:3926:41:3926:42 | in : DualTreeBidiMap [] : String | Test.java:3926:10:3926:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | provenance | MaD:44 | -| Test.java:3926:41:3926:42 | in : DualTreeBidiMap [] : String | Test.java:7125:37:7125:59 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:3927:19:3927:21 | out : MyAbstractBidiMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractBidiMapDecorator [] : String | provenance | | -| Test.java:3927:19:3927:21 | out : MyAbstractBidiMapDecorator [] : String | Test.java:3927:9:3927:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:3932:17:3932:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:3933:41:3933:42 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:3932:48:3932:63 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | -| Test.java:3932:48:3932:63 | (...)... : String | Test.java:3932:17:3932:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | -| Test.java:3932:56:3932:63 | source(...) : Object | Test.java:3932:48:3932:63 | (...)... : String | provenance | | -| Test.java:3933:10:3933:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | Test.java:3934:21:3934:23 | out : MyAbstractBidiMapDecorator [] : String | provenance | | -| Test.java:3933:41:3933:42 | in : DualTreeBidiMap [] : String | Test.java:3933:10:3933:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | provenance | MaD:45 | -| Test.java:3933:41:3933:42 | in : DualTreeBidiMap [] : String | Test.java:7125:37:7125:59 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:3934:21:3934:23 | out : MyAbstractBidiMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractBidiMapDecorator [] : String | provenance | | -| Test.java:3934:21:3934:23 | out : MyAbstractBidiMapDecorator [] : String | Test.java:3934:9:3934:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3939:17:3939:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:3940:36:3940:37 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:3939:46:3939:61 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | -| Test.java:3939:46:3939:61 | (...)... : String | Test.java:3939:17:3939:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:13 | -| Test.java:3939:54:3939:61 | source(...) : Object | Test.java:3939:46:3939:61 | (...)... : String | provenance | | -| Test.java:3940:10:3940:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | Test.java:3941:19:3941:21 | out : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:3940:36:3940:37 | in : DualTreeBidiMap [] : String | Test.java:3940:10:3940:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | provenance | MaD:46 | -| Test.java:3940:36:3940:37 | in : DualTreeBidiMap [] : String | Test.java:7134:32:7134:56 | normalMap : DualTreeBidiMap [] : String | provenance | | -| Test.java:3941:19:3941:21 | out : MyAbstractDualBidiMap [] : String | Test.java:228:18:228:29 | map : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:3941:19:3941:21 | out : MyAbstractDualBidiMap [] : String | Test.java:3941:9:3941:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:3946:17:3946:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:3947:42:3947:43 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:3946:46:3946:61 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | -| Test.java:3946:46:3946:61 | (...)... : String | Test.java:3946:17:3946:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:13 | -| Test.java:3946:54:3946:61 | source(...) : Object | Test.java:3946:46:3946:61 | (...)... : String | provenance | | -| Test.java:3947:10:3947:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | Test.java:3948:21:3948:23 | out : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:3947:42:3947:43 | in : DualTreeBidiMap [] : String | Test.java:3947:10:3947:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | provenance | MaD:48 | -| Test.java:3947:42:3947:43 | in : DualTreeBidiMap [] : String | Test.java:7134:59:7134:84 | reverseMap : DualTreeBidiMap [] : String | provenance | | -| Test.java:3948:21:3948:23 | out : MyAbstractDualBidiMap [] : String | Test.java:232:20:232:31 | map : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:3948:21:3948:23 | out : MyAbstractDualBidiMap [] : String | Test.java:3948:9:3948:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3953:17:3953:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:3954:48:3954:49 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:3953:46:3953:61 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | -| Test.java:3953:46:3953:61 | (...)... : String | Test.java:3953:17:3953:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:13 | -| Test.java:3953:54:3953:61 | source(...) : Object | Test.java:3953:46:3953:61 | (...)... : String | provenance | | -| Test.java:3954:10:3954:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | Test.java:3955:21:3955:23 | out : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:3954:48:3954:49 | in : DualTreeBidiMap [] : String | Test.java:3954:10:3954:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | provenance | MaD:50 | -| Test.java:3954:48:3954:49 | in : DualTreeBidiMap [] : String | Test.java:7134:87:7134:120 | inverseBidiMap : DualTreeBidiMap [] : String | provenance | | -| Test.java:3955:21:3955:23 | out : MyAbstractDualBidiMap [] : String | Test.java:232:20:232:31 | map : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:3955:21:3955:23 | out : MyAbstractDualBidiMap [] : String | Test.java:3955:9:3955:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3960:17:3960:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:3961:36:3961:37 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:3960:48:3960:63 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | -| Test.java:3960:48:3960:63 | (...)... : String | Test.java:3960:17:3960:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | -| Test.java:3960:56:3960:63 | source(...) : Object | Test.java:3960:48:3960:63 | (...)... : String | provenance | | -| Test.java:3961:10:3961:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | Test.java:3962:21:3962:23 | out : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:3961:36:3961:37 | in : DualTreeBidiMap [] : String | Test.java:3961:10:3961:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | provenance | MaD:47 | -| Test.java:3961:36:3961:37 | in : DualTreeBidiMap [] : String | Test.java:7134:32:7134:56 | normalMap : DualTreeBidiMap [] : String | provenance | | -| Test.java:3962:21:3962:23 | out : MyAbstractDualBidiMap [] : String | Test.java:232:20:232:31 | map : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:3962:21:3962:23 | out : MyAbstractDualBidiMap [] : String | Test.java:3962:9:3962:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3967:17:3967:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:3968:42:3968:43 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:3967:48:3967:63 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | -| Test.java:3967:48:3967:63 | (...)... : String | Test.java:3967:17:3967:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | -| Test.java:3967:56:3967:63 | source(...) : Object | Test.java:3967:48:3967:63 | (...)... : String | provenance | | -| Test.java:3968:10:3968:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | Test.java:3969:19:3969:21 | out : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:3968:42:3968:43 | in : DualTreeBidiMap [] : String | Test.java:3968:10:3968:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | provenance | MaD:49 | -| Test.java:3968:42:3968:43 | in : DualTreeBidiMap [] : String | Test.java:7134:59:7134:84 | reverseMap : DualTreeBidiMap [] : String | provenance | | -| Test.java:3969:19:3969:21 | out : MyAbstractDualBidiMap [] : String | Test.java:228:18:228:29 | map : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:3969:19:3969:21 | out : MyAbstractDualBidiMap [] : String | Test.java:3969:9:3969:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:3974:17:3974:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:3975:48:3975:49 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:3974:48:3974:63 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | -| Test.java:3974:48:3974:63 | (...)... : String | Test.java:3974:17:3974:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | -| Test.java:3974:56:3974:63 | source(...) : Object | Test.java:3974:48:3974:63 | (...)... : String | provenance | | -| Test.java:3975:10:3975:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | Test.java:3976:19:3976:21 | out : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:3975:48:3975:49 | in : DualTreeBidiMap [] : String | Test.java:3975:10:3975:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | provenance | MaD:51 | -| Test.java:3975:48:3975:49 | in : DualTreeBidiMap [] : String | Test.java:7134:87:7134:120 | inverseBidiMap : DualTreeBidiMap [] : String | provenance | | -| Test.java:3976:19:3976:21 | out : MyAbstractDualBidiMap [] : String | Test.java:228:18:228:29 | map : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:3976:19:3976:21 | out : MyAbstractDualBidiMap [] : String | Test.java:3976:9:3976:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:3981:24:3981:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:3982:48:3982:49 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:3981:53:3981:68 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | -| Test.java:3981:53:3981:68 | (...)... : String | Test.java:3981:24:3981:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:13 | -| Test.java:3981:61:3981:68 | source(...) : Object | Test.java:3981:53:3981:68 | (...)... : String | provenance | | -| Test.java:3982:10:3982:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:3983:19:3983:21 | out : MyAbstractOrderedBidiMapDecorator [] : String | provenance | | -| Test.java:3982:48:3982:49 | in : DualTreeBidiMap [] : String | Test.java:3982:10:3982:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | provenance | MaD:52 | -| Test.java:3982:48:3982:49 | in : DualTreeBidiMap [] : String | Test.java:7143:44:7143:73 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:3983:19:3983:21 | out : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractOrderedBidiMapDecorator [] : String | provenance | | -| Test.java:3983:19:3983:21 | out : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:3983:9:3983:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:3988:24:3988:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:3989:48:3989:49 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:3988:55:3988:70 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | -| Test.java:3988:55:3988:70 | (...)... : String | Test.java:3988:24:3988:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | -| Test.java:3988:63:3988:70 | source(...) : Object | Test.java:3988:55:3988:70 | (...)... : String | provenance | | -| Test.java:3989:10:3989:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:3990:21:3990:23 | out : MyAbstractOrderedBidiMapDecorator [] : String | provenance | | -| Test.java:3989:48:3989:49 | in : DualTreeBidiMap [] : String | Test.java:3989:10:3989:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | provenance | MaD:53 | -| Test.java:3989:48:3989:49 | in : DualTreeBidiMap [] : String | Test.java:7143:44:7143:73 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:3990:21:3990:23 | out : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractOrderedBidiMapDecorator [] : String | provenance | | -| Test.java:3990:21:3990:23 | out : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:3990:9:3990:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:3995:23:3995:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:3996:47:3996:48 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:3995:52:3995:67 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | -| Test.java:3995:52:3995:67 | (...)... : String | Test.java:3995:23:3995:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:13 | -| Test.java:3995:60:3995:67 | source(...) : Object | Test.java:3995:52:3995:67 | (...)... : String | provenance | | -| Test.java:3996:10:3996:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | Test.java:3997:19:3997:21 | out : MyAbstractSortedBidiMapDecorator [] : String | provenance | | -| Test.java:3996:47:3996:48 | in : DualTreeBidiMap [] : String | Test.java:3996:10:3996:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | provenance | MaD:54 | -| Test.java:3996:47:3996:48 | in : DualTreeBidiMap [] : String | Test.java:7086:43:7086:71 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:3997:19:3997:21 | out : MyAbstractSortedBidiMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractSortedBidiMapDecorator [] : String | provenance | | -| Test.java:3997:19:3997:21 | out : MyAbstractSortedBidiMapDecorator [] : String | Test.java:3997:9:3997:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:4002:23:4002:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4003:47:4003:48 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:4002:54:4002:69 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | -| Test.java:4002:54:4002:69 | (...)... : String | Test.java:4002:23:4002:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | -| Test.java:4002:62:4002:69 | source(...) : Object | Test.java:4002:54:4002:69 | (...)... : String | provenance | | -| Test.java:4003:10:4003:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | Test.java:4004:21:4004:23 | out : MyAbstractSortedBidiMapDecorator [] : String | provenance | | -| Test.java:4003:47:4003:48 | in : DualTreeBidiMap [] : String | Test.java:4003:10:4003:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | provenance | MaD:55 | -| Test.java:4003:47:4003:48 | in : DualTreeBidiMap [] : String | Test.java:7086:43:7086:71 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:4004:21:4004:23 | out : MyAbstractSortedBidiMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractSortedBidiMapDecorator [] : String | provenance | | -| Test.java:4004:21:4004:23 | out : MyAbstractSortedBidiMapDecorator [] : String | Test.java:4004:9:4004:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:4009:13:4009:42 | of(...) : Map [] : String | Test.java:4010:30:4010:31 | in : Map [] : String | provenance | | -| Test.java:4009:20:4009:35 | (...)... : String | Test.java:4009:13:4009:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:4009:28:4009:35 | source(...) : Object | Test.java:4009:20:4009:35 | (...)... : String | provenance | | -| Test.java:4010:10:4010:32 | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | Test.java:4011:19:4011:21 | out : DualHashBidiMap [] : String | provenance | | -| Test.java:4010:30:4010:31 | in : Map [] : String | Test.java:4010:10:4010:32 | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | provenance | MaD:56 | -| Test.java:4011:19:4011:21 | out : DualHashBidiMap [] : String | Test.java:228:18:228:29 | map : DualHashBidiMap [] : String | provenance | | -| Test.java:4011:19:4011:21 | out : DualHashBidiMap [] : String | Test.java:4011:9:4011:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:4016:13:4016:42 | of(...) : Map [] : String | Test.java:4017:30:4017:31 | in : Map [] : String | provenance | | -| Test.java:4016:26:4016:41 | (...)... : String | Test.java:4016:13:4016:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:4016:34:4016:41 | source(...) : Object | Test.java:4016:26:4016:41 | (...)... : String | provenance | | -| Test.java:4017:10:4017:32 | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | Test.java:4018:21:4018:23 | out : DualHashBidiMap [] : String | provenance | | -| Test.java:4017:30:4017:31 | in : Map [] : String | Test.java:4017:10:4017:32 | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | provenance | MaD:57 | -| Test.java:4018:21:4018:23 | out : DualHashBidiMap [] : String | Test.java:232:20:232:31 | map : DualHashBidiMap [] : String | provenance | | -| Test.java:4018:21:4018:23 | out : DualHashBidiMap [] : String | Test.java:4018:9:4018:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:4023:13:4023:42 | of(...) : Map [] : String | Test.java:4024:36:4024:37 | in : Map [] : String | provenance | | -| Test.java:4023:20:4023:35 | (...)... : String | Test.java:4023:13:4023:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:4023:28:4023:35 | source(...) : Object | Test.java:4023:20:4023:35 | (...)... : String | provenance | | -| Test.java:4024:10:4024:38 | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | Test.java:4025:19:4025:21 | out : DualLinkedHashBidiMap [] : String | provenance | | -| Test.java:4024:36:4024:37 | in : Map [] : String | Test.java:4024:10:4024:38 | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | provenance | MaD:58 | -| Test.java:4025:19:4025:21 | out : DualLinkedHashBidiMap [] : String | Test.java:228:18:228:29 | map : DualLinkedHashBidiMap [] : String | provenance | | -| Test.java:4025:19:4025:21 | out : DualLinkedHashBidiMap [] : String | Test.java:4025:9:4025:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:4030:13:4030:42 | of(...) : Map [] : String | Test.java:4031:36:4031:37 | in : Map [] : String | provenance | | -| Test.java:4030:26:4030:41 | (...)... : String | Test.java:4030:13:4030:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:4030:34:4030:41 | source(...) : Object | Test.java:4030:26:4030:41 | (...)... : String | provenance | | -| Test.java:4031:10:4031:38 | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | Test.java:4032:21:4032:23 | out : DualLinkedHashBidiMap [] : String | provenance | | -| Test.java:4031:36:4031:37 | in : Map [] : String | Test.java:4031:10:4031:38 | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | provenance | MaD:59 | -| Test.java:4032:21:4032:23 | out : DualLinkedHashBidiMap [] : String | Test.java:232:20:232:31 | map : DualLinkedHashBidiMap [] : String | provenance | | -| Test.java:4032:21:4032:23 | out : DualLinkedHashBidiMap [] : String | Test.java:4032:9:4032:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:4037:13:4037:42 | of(...) : Map [] : String | Test.java:4038:30:4038:31 | in : Map [] : String | provenance | | -| Test.java:4037:20:4037:35 | (...)... : String | Test.java:4037:13:4037:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:4037:28:4037:35 | source(...) : Object | Test.java:4037:20:4037:35 | (...)... : String | provenance | | -| Test.java:4038:10:4038:32 | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | Test.java:4039:19:4039:21 | out : DualTreeBidiMap [] : String | provenance | | -| Test.java:4038:30:4038:31 | in : Map [] : String | Test.java:4038:10:4038:32 | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | provenance | MaD:60 | -| Test.java:4039:19:4039:21 | out : DualTreeBidiMap [] : String | Test.java:228:18:228:29 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:4039:19:4039:21 | out : DualTreeBidiMap [] : String | Test.java:4039:9:4039:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:4044:13:4044:42 | of(...) : Map [] : String | Test.java:4045:30:4045:31 | in : Map [] : String | provenance | | -| Test.java:4044:26:4044:41 | (...)... : String | Test.java:4044:13:4044:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:4044:34:4044:41 | source(...) : Object | Test.java:4044:26:4044:41 | (...)... : String | provenance | | -| Test.java:4045:10:4045:32 | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | Test.java:4046:21:4046:23 | out : DualTreeBidiMap [] : String | provenance | | -| Test.java:4045:30:4045:31 | in : Map [] : String | Test.java:4045:10:4045:32 | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | provenance | MaD:61 | -| Test.java:4046:21:4046:23 | out : DualTreeBidiMap [] : String | Test.java:232:20:232:31 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:4046:21:4046:23 | out : DualTreeBidiMap [] : String | Test.java:4046:9:4046:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:4051:25:4051:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:4052:10:4052:11 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:4051:54:4051:69 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | -| Test.java:4051:54:4051:69 | (...)... : String | Test.java:4051:25:4051:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:13 | -| Test.java:4051:62:4051:69 | source(...) : Object | Test.java:4051:54:4051:69 | (...)... : String | provenance | | -| Test.java:4052:10:4052:11 | in : DualTreeBidiMap [] : String | Test.java:4052:10:4052:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:62 | -| Test.java:4052:10:4052:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4053:21:4053:23 | out : OrderedBidiMap [] : String | provenance | | -| Test.java:4053:21:4053:23 | out : OrderedBidiMap [] : String | Test.java:232:20:232:31 | map : OrderedBidiMap [] : String | provenance | | -| Test.java:4053:21:4053:23 | out : OrderedBidiMap [] : String | Test.java:4053:9:4053:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:4058:25:4058:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4059:10:4059:11 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:4058:56:4058:71 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | -| Test.java:4058:56:4058:71 | (...)... : String | Test.java:4058:25:4058:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | -| Test.java:4058:64:4058:71 | source(...) : Object | Test.java:4058:56:4058:71 | (...)... : String | provenance | | -| Test.java:4059:10:4059:11 | in : DualTreeBidiMap [] : String | Test.java:4059:10:4059:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:63 | -| Test.java:4059:10:4059:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4060:19:4060:21 | out : OrderedBidiMap [] : String | provenance | | -| Test.java:4060:19:4060:21 | out : OrderedBidiMap [] : String | Test.java:228:18:228:29 | map : OrderedBidiMap [] : String | provenance | | -| Test.java:4060:19:4060:21 | out : OrderedBidiMap [] : String | Test.java:4060:9:4060:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:4065:25:4065:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:4066:10:4066:11 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:4065:54:4065:69 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | -| Test.java:4065:54:4065:69 | (...)... : String | Test.java:4065:25:4065:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:13 | -| Test.java:4065:62:4065:69 | source(...) : Object | Test.java:4065:54:4065:69 | (...)... : String | provenance | | -| Test.java:4066:10:4066:11 | in : DualTreeBidiMap [] : String | Test.java:4066:10:4066:34 | inverseSortedBidiMap(...) : SortedBidiMap [] : String | provenance | MaD:64 | -| Test.java:4066:10:4066:34 | inverseSortedBidiMap(...) : SortedBidiMap [] : String | Test.java:4067:21:4067:23 | out : SortedBidiMap [] : String | provenance | | -| Test.java:4067:21:4067:23 | out : SortedBidiMap [] : String | Test.java:232:20:232:31 | map : SortedBidiMap [] : String | provenance | | -| Test.java:4067:21:4067:23 | out : SortedBidiMap [] : String | Test.java:4067:9:4067:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:4072:25:4072:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4073:10:4073:11 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:4072:56:4072:71 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | -| Test.java:4072:56:4072:71 | (...)... : String | Test.java:4072:25:4072:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | -| Test.java:4072:64:4072:71 | source(...) : Object | Test.java:4072:56:4072:71 | (...)... : String | provenance | | -| Test.java:4073:10:4073:11 | in : DualTreeBidiMap [] : String | Test.java:4073:10:4073:34 | inverseSortedBidiMap(...) : SortedBidiMap [] : String | provenance | MaD:65 | -| Test.java:4073:10:4073:34 | inverseSortedBidiMap(...) : SortedBidiMap [] : String | Test.java:4074:19:4074:21 | out : SortedBidiMap [] : String | provenance | | -| Test.java:4074:19:4074:21 | out : SortedBidiMap [] : String | Test.java:228:18:228:29 | map : SortedBidiMap [] : String | provenance | | -| Test.java:4074:19:4074:21 | out : SortedBidiMap [] : String | Test.java:4074:9:4074:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:4079:13:4079:42 | of(...) : Map [] : String | Test.java:4080:26:4080:27 | in : Map [] : String | provenance | | -| Test.java:4079:20:4079:35 | (...)... : String | Test.java:4079:13:4079:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:4079:28:4079:35 | source(...) : Object | Test.java:4079:20:4079:35 | (...)... : String | provenance | | -| Test.java:4080:10:4080:28 | new TreeBidiMap<>(...) : TreeBidiMap [] : String | Test.java:4081:19:4081:21 | out : TreeBidiMap [] : String | provenance | | -| Test.java:4080:26:4080:27 | in : Map [] : String | Test.java:4080:10:4080:28 | new TreeBidiMap<>(...) : TreeBidiMap [] : String | provenance | MaD:66 | -| Test.java:4081:19:4081:21 | out : TreeBidiMap [] : String | Test.java:228:18:228:29 | map : TreeBidiMap [] : String | provenance | | -| Test.java:4081:19:4081:21 | out : TreeBidiMap [] : String | Test.java:4081:9:4081:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:4086:13:4086:42 | of(...) : Map [] : String | Test.java:4087:26:4087:27 | in : Map [] : String | provenance | | -| Test.java:4086:26:4086:41 | (...)... : String | Test.java:4086:13:4086:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:4086:34:4086:41 | source(...) : Object | Test.java:4086:26:4086:41 | (...)... : String | provenance | | -| Test.java:4087:10:4087:28 | new TreeBidiMap<>(...) : TreeBidiMap [] : String | Test.java:4088:21:4088:23 | out : TreeBidiMap [] : String | provenance | | -| Test.java:4087:26:4087:27 | in : Map [] : String | Test.java:4087:10:4087:28 | new TreeBidiMap<>(...) : TreeBidiMap [] : String | provenance | MaD:67 | -| Test.java:4088:21:4088:23 | out : TreeBidiMap [] : String | Test.java:232:20:232:31 | map : TreeBidiMap [] : String | provenance | | -| Test.java:4088:21:4088:23 | out : TreeBidiMap [] : String | Test.java:4088:9:4088:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:4093:17:4093:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:4094:50:4094:51 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:4093:46:4093:61 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | -| Test.java:4093:46:4093:61 | (...)... : String | Test.java:4093:17:4093:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:13 | -| Test.java:4093:54:4093:61 | source(...) : Object | Test.java:4093:46:4093:61 | (...)... : String | provenance | | -| Test.java:4094:10:4094:52 | unmodifiableBidiMap(...) : BidiMap [] : String | Test.java:4095:19:4095:21 | out : BidiMap [] : String | provenance | | -| Test.java:4094:50:4094:51 | in : DualTreeBidiMap [] : String | Test.java:4094:10:4094:52 | unmodifiableBidiMap(...) : BidiMap [] : String | provenance | MaD:68 | -| Test.java:4095:19:4095:21 | out : BidiMap [] : String | Test.java:228:18:228:29 | map : BidiMap [] : String | provenance | | -| Test.java:4095:19:4095:21 | out : BidiMap [] : String | Test.java:4095:9:4095:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:4100:17:4100:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4101:50:4101:51 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:4100:48:4100:63 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | -| Test.java:4100:48:4100:63 | (...)... : String | Test.java:4100:17:4100:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | -| Test.java:4100:56:4100:63 | source(...) : Object | Test.java:4100:48:4100:63 | (...)... : String | provenance | | -| Test.java:4101:10:4101:52 | unmodifiableBidiMap(...) : BidiMap [] : String | Test.java:4102:21:4102:23 | out : BidiMap [] : String | provenance | | -| Test.java:4101:50:4101:51 | in : DualTreeBidiMap [] : String | Test.java:4101:10:4101:52 | unmodifiableBidiMap(...) : BidiMap [] : String | provenance | MaD:69 | -| Test.java:4102:21:4102:23 | out : BidiMap [] : String | Test.java:232:20:232:31 | map : BidiMap [] : String | provenance | | -| Test.java:4102:21:4102:23 | out : BidiMap [] : String | Test.java:4102:9:4102:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:4107:36:4107:164 | (...)... : UnmodifiableOrderedBidiMap [] : String | Test.java:4108:10:4108:11 | in : UnmodifiableOrderedBidiMap [] : String | provenance | | -| Test.java:4107:64:4107:164 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4107:36:4107:164 | (...)... : UnmodifiableOrderedBidiMap [] : String | provenance | | -| Test.java:4107:118:4107:163 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:4107:64:4107:164 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:72 | -| Test.java:4107:147:4107:162 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | -| Test.java:4107:147:4107:162 | (...)... : String | Test.java:4107:118:4107:163 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:13 | -| Test.java:4107:155:4107:162 | source(...) : Object | Test.java:4107:147:4107:162 | (...)... : String | provenance | | -| Test.java:4108:10:4108:11 | in : UnmodifiableOrderedBidiMap [] : String | Test.java:4108:10:4108:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:70 | -| Test.java:4108:10:4108:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4109:21:4109:23 | out : OrderedBidiMap [] : String | provenance | | -| Test.java:4109:21:4109:23 | out : OrderedBidiMap [] : String | Test.java:232:20:232:31 | map : OrderedBidiMap [] : String | provenance | | -| Test.java:4109:21:4109:23 | out : OrderedBidiMap [] : String | Test.java:4109:9:4109:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:4114:36:4114:166 | (...)... : UnmodifiableOrderedBidiMap [] : String | Test.java:4115:10:4115:11 | in : UnmodifiableOrderedBidiMap [] : String | provenance | | -| Test.java:4114:64:4114:166 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4114:36:4114:166 | (...)... : UnmodifiableOrderedBidiMap [] : String | provenance | | -| Test.java:4114:118:4114:165 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4114:64:4114:166 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:73 | -| Test.java:4114:149:4114:164 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | -| Test.java:4114:149:4114:164 | (...)... : String | Test.java:4114:118:4114:165 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | -| Test.java:4114:157:4114:164 | source(...) : Object | Test.java:4114:149:4114:164 | (...)... : String | provenance | | -| Test.java:4115:10:4115:11 | in : UnmodifiableOrderedBidiMap [] : String | Test.java:4115:10:4115:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:71 | -| Test.java:4115:10:4115:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4116:19:4116:21 | out : OrderedBidiMap [] : String | provenance | | -| Test.java:4116:19:4116:21 | out : OrderedBidiMap [] : String | Test.java:228:18:228:29 | map : OrderedBidiMap [] : String | provenance | | -| Test.java:4116:19:4116:21 | out : OrderedBidiMap [] : String | Test.java:4116:9:4116:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:4121:24:4121:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:4122:64:4122:65 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:4121:53:4121:68 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | -| Test.java:4121:53:4121:68 | (...)... : String | Test.java:4121:24:4121:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:13 | -| Test.java:4121:61:4121:68 | source(...) : Object | Test.java:4121:53:4121:68 | (...)... : String | provenance | | -| Test.java:4122:10:4122:66 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4123:19:4123:21 | out : OrderedBidiMap [] : String | provenance | | -| Test.java:4122:64:4122:65 | in : DualTreeBidiMap [] : String | Test.java:4122:10:4122:66 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:72 | -| Test.java:4123:19:4123:21 | out : OrderedBidiMap [] : String | Test.java:228:18:228:29 | map : OrderedBidiMap [] : String | provenance | | -| Test.java:4123:19:4123:21 | out : OrderedBidiMap [] : String | Test.java:4123:9:4123:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:4128:24:4128:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4129:64:4129:65 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:4128:55:4128:70 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | -| Test.java:4128:55:4128:70 | (...)... : String | Test.java:4128:24:4128:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | -| Test.java:4128:63:4128:70 | source(...) : Object | Test.java:4128:55:4128:70 | (...)... : String | provenance | | -| Test.java:4129:10:4129:66 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4130:21:4130:23 | out : OrderedBidiMap [] : String | provenance | | -| Test.java:4129:64:4129:65 | in : DualTreeBidiMap [] : String | Test.java:4129:10:4129:66 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:73 | -| Test.java:4130:21:4130:23 | out : OrderedBidiMap [] : String | Test.java:232:20:232:31 | map : OrderedBidiMap [] : String | provenance | | -| Test.java:4130:21:4130:23 | out : OrderedBidiMap [] : String | Test.java:4130:9:4130:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:4135:23:4135:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:4136:62:4136:63 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:4135:52:4135:67 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | -| Test.java:4135:52:4135:67 | (...)... : String | Test.java:4135:23:4135:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:13 | -| Test.java:4135:60:4135:67 | source(...) : Object | Test.java:4135:52:4135:67 | (...)... : String | provenance | | -| Test.java:4136:10:4136:64 | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | Test.java:4137:19:4137:21 | out : SortedBidiMap [] : String | provenance | | -| Test.java:4136:62:4136:63 | in : DualTreeBidiMap [] : String | Test.java:4136:10:4136:64 | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | provenance | MaD:74 | -| Test.java:4137:19:4137:21 | out : SortedBidiMap [] : String | Test.java:228:18:228:29 | map : SortedBidiMap [] : String | provenance | | -| Test.java:4137:19:4137:21 | out : SortedBidiMap [] : String | Test.java:4137:9:4137:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:4142:23:4142:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4143:62:4143:63 | in : DualTreeBidiMap [] : String | provenance | | -| Test.java:4142:54:4142:69 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | -| Test.java:4142:54:4142:69 | (...)... : String | Test.java:4142:23:4142:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | -| Test.java:4142:62:4142:69 | source(...) : Object | Test.java:4142:54:4142:69 | (...)... : String | provenance | | -| Test.java:4143:10:4143:64 | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | Test.java:4144:21:4144:23 | out : SortedBidiMap [] : String | provenance | | -| Test.java:4143:62:4143:63 | in : DualTreeBidiMap [] : String | Test.java:4143:10:4143:64 | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | provenance | MaD:75 | -| Test.java:4144:21:4144:23 | out : SortedBidiMap [] : String | Test.java:232:20:232:31 | map : SortedBidiMap [] : String | provenance | | -| Test.java:4144:21:4144:23 | out : SortedBidiMap [] : String | Test.java:4144:9:4144:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:4149:20:4149:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4150:44:4150:45 | in : TreeBag [] : String | provenance | | -| Test.java:4149:42:4149:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4149:42:4149:57 | (...)... : String | Test.java:4149:20:4149:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4149:42:4149:57 | (...)... : String | Test.java:4149:20:4149:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4149:50:4149:57 | source(...) : Object | Test.java:4149:42:4149:57 | (...)... : String | provenance | | -| Test.java:4150:10:4150:46 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | Test.java:4151:20:4151:22 | out : MyAbstractCollectionDecorator [] : String | provenance | | -| Test.java:4150:44:4150:45 | in : TreeBag [] : String | Test.java:4150:10:4150:46 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | provenance | MaD:76 | -| Test.java:4150:44:4150:45 | in : TreeBag [] : String | Test.java:7149:40:7149:63 | coll : TreeBag [] : String | provenance | | -| Test.java:4151:20:4151:22 | out : MyAbstractCollectionDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractCollectionDecorator [] : String | provenance | | -| Test.java:4151:20:4151:22 | out : MyAbstractCollectionDecorator [] : String | Test.java:4151:9:4151:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4156:39:4156:112 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | Test.java:4157:10:4157:11 | in : MyAbstractCollectionDecorator [] : String | provenance | | -| Test.java:4156:73:4156:111 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4156:39:4156:112 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | provenance | MaD:76 | -| Test.java:4156:73:4156:111 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:7149:40:7149:63 | coll : TreeBag [] : String | provenance | | -| Test.java:4156:95:4156:110 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4156:95:4156:110 | (...)... : String | Test.java:4156:73:4156:111 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4156:95:4156:110 | (...)... : String | Test.java:4156:73:4156:111 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4156:103:4156:110 | source(...) : Object | Test.java:4156:95:4156:110 | (...)... : String | provenance | | -| Test.java:4157:10:4157:11 | in : MyAbstractCollectionDecorator [] : String | Test.java:4157:10:4157:25 | myDecorated(...) : Collection [] : String | provenance | MaD:77 | -| Test.java:4157:10:4157:11 | in : MyAbstractCollectionDecorator [] : String | Test.java:7152:24:7152:34 | parameter this : MyAbstractCollectionDecorator [] : String | provenance | | -| Test.java:4157:10:4157:25 | myDecorated(...) : Collection [] : String | Test.java:4158:20:4158:22 | out : Collection [] : String | provenance | | -| Test.java:4158:20:4158:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:4158:20:4158:22 | out : Collection [] : String | Test.java:4158:9:4158:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4163:20:4163:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4164:24:4164:25 | in : TreeBag [] : String | provenance | | -| Test.java:4163:42:4163:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4163:42:4163:57 | (...)... : String | Test.java:4163:20:4163:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4163:42:4163:57 | (...)... : String | Test.java:4163:20:4163:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4163:50:4163:57 | source(...) : Object | Test.java:4163:42:4163:57 | (...)... : String | provenance | | -| Test.java:4164:4:4164:6 | out [post update] : MyAbstractCollectionDecorator [] : String | Test.java:4165:20:4165:22 | out : MyAbstractCollectionDecorator [] : String | provenance | | -| Test.java:4164:24:4164:25 | in : TreeBag [] : String | Test.java:4164:4:4164:6 | out [post update] : MyAbstractCollectionDecorator [] : String | provenance | MaD:78 | -| Test.java:4164:24:4164:25 | in : TreeBag [] : String | Test.java:7155:31:7155:54 | coll : TreeBag [] : String | provenance | | -| Test.java:4165:20:4165:22 | out : MyAbstractCollectionDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractCollectionDecorator [] : String | provenance | | -| Test.java:4165:20:4165:22 | out : MyAbstractCollectionDecorator [] : String | Test.java:4165:9:4165:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4170:16:4170:23 | source(...) : Object | Test.java:4172:28:4172:29 | in : Object | provenance | | -| Test.java:4172:17:4172:19 | out [post update] : CompositeCollection [] : Object | Test.java:4173:20:4173:22 | out : CompositeCollection [] : Object | provenance | | -| Test.java:4172:28:4172:29 | in : Object | Test.java:4172:17:4172:19 | out [post update] : CompositeCollection [] : Object | provenance | MaD:79 | -| Test.java:4173:20:4173:22 | out : CompositeCollection [] : Object | Test.java:230:19:230:32 | it : CompositeCollection [] : Object | provenance | | -| Test.java:4173:20:4173:22 | out : CompositeCollection [] : Object | Test.java:4173:9:4173:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4178:16:4178:23 | source(...) : Object | Test.java:4180:28:4180:29 | in : Object | provenance | | -| Test.java:4180:23:4180:25 | out [post update] : List [, ] : Object | Test.java:4181:31:4181:33 | out : List [, ] : Object | provenance | | -| Test.java:4180:28:4180:29 | in : Object | Test.java:4180:23:4180:25 | out [post update] : List [, ] : Object | provenance | MaD:80 | -| Test.java:4181:20:4181:34 | getElement(...) : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | -| Test.java:4181:20:4181:34 | getElement(...) : Collection [] : Object | Test.java:4181:9:4181:35 | getElement(...) | provenance | MaD:3 | -| Test.java:4181:31:4181:33 | out : List [, ] : Object | Test.java:230:19:230:32 | it : List [, ] : Object | provenance | | -| Test.java:4181:31:4181:33 | out : List [, ] : Object | Test.java:4181:20:4181:34 | getElement(...) : Collection [] : Object | provenance | MaD:3 | -| Test.java:4186:20:4186:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4188:31:4188:32 | in : TreeBag [] : String | provenance | | -| Test.java:4186:42:4186:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4186:42:4186:57 | (...)... : String | Test.java:4186:20:4186:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4186:42:4186:57 | (...)... : String | Test.java:4186:20:4186:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4186:50:4186:57 | source(...) : Object | Test.java:4186:42:4186:57 | (...)... : String | provenance | | -| Test.java:4188:20:4188:22 | out [post update] : CompositeCollection [] : String | Test.java:4189:20:4189:22 | out : CompositeCollection [] : String | provenance | | -| Test.java:4188:31:4188:32 | in : TreeBag [] : String | Test.java:4188:20:4188:22 | out [post update] : CompositeCollection [] : String | provenance | MaD:81 | -| Test.java:4189:20:4189:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | -| Test.java:4189:20:4189:22 | out : CompositeCollection [] : String | Test.java:4189:9:4189:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4194:20:4194:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4196:31:4196:32 | in : TreeBag [] : String | provenance | | -| Test.java:4194:42:4194:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4194:42:4194:57 | (...)... : String | Test.java:4194:20:4194:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4194:42:4194:57 | (...)... : String | Test.java:4194:20:4194:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4194:50:4194:57 | source(...) : Object | Test.java:4194:42:4194:57 | (...)... : String | provenance | | -| Test.java:4196:26:4196:28 | out [post update] : List [, ] : String | Test.java:4197:31:4197:33 | out : List [, ] : String | provenance | | -| Test.java:4196:31:4196:32 | in : TreeBag [] : String | Test.java:4196:26:4196:28 | out [post update] : List [, ] : String | provenance | MaD:82 | -| Test.java:4197:20:4197:34 | getElement(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:4197:20:4197:34 | getElement(...) : Collection [] : String | Test.java:4197:9:4197:35 | getElement(...) | provenance | MaD:3 | -| Test.java:4197:31:4197:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | provenance | | -| Test.java:4197:31:4197:33 | out : List [, ] : String | Test.java:4197:20:4197:34 | getElement(...) : Collection [] : String | provenance | MaD:3 | -| Test.java:4202:20:4202:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4203:34:4203:35 | in : TreeBag [] : String | provenance | | -| Test.java:4202:42:4202:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4202:42:4202:57 | (...)... : String | Test.java:4202:20:4202:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4202:42:4202:57 | (...)... : String | Test.java:4202:20:4202:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4202:50:4202:57 | source(...) : Object | Test.java:4202:42:4202:57 | (...)... : String | provenance | | -| Test.java:4203:10:4203:36 | new CompositeCollection<>(...) : CompositeCollection [] : String | Test.java:4204:20:4204:22 | out : CompositeCollection [] : String | provenance | | -| Test.java:4203:34:4203:35 | in : TreeBag [] : String | Test.java:4203:10:4203:36 | new CompositeCollection<>(...) : CompositeCollection [] : String | provenance | MaD:83 | -| Test.java:4204:20:4204:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | -| Test.java:4204:20:4204:22 | out : CompositeCollection [] : String | Test.java:4204:9:4204:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4209:20:4209:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4210:34:4210:35 | in : TreeBag [] : String | provenance | | -| Test.java:4209:42:4209:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4209:42:4209:57 | (...)... : String | Test.java:4209:20:4209:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4209:42:4209:57 | (...)... : String | Test.java:4209:20:4209:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4209:50:4209:57 | source(...) : Object | Test.java:4209:42:4209:57 | (...)... : String | provenance | | -| Test.java:4210:10:4210:42 | new CompositeCollection<>(...) : CompositeCollection [] : String | Test.java:4211:20:4211:22 | out : CompositeCollection [] : String | provenance | | -| Test.java:4210:34:4210:35 | in : TreeBag [] : String | Test.java:4210:10:4210:42 | new CompositeCollection<>(...) : CompositeCollection [] : String | provenance | MaD:84 | -| Test.java:4211:20:4211:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | -| Test.java:4211:20:4211:22 | out : CompositeCollection [] : String | Test.java:4211:9:4211:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4216:20:4216:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4217:40:4217:41 | in : TreeBag [] : String | provenance | | -| Test.java:4216:42:4216:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4216:42:4216:57 | (...)... : String | Test.java:4216:20:4216:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4216:42:4216:57 | (...)... : String | Test.java:4216:20:4216:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4216:50:4216:57 | source(...) : Object | Test.java:4216:42:4216:57 | (...)... : String | provenance | | -| Test.java:4217:10:4217:42 | new CompositeCollection<>(...) : CompositeCollection [] : String | Test.java:4218:20:4218:22 | out : CompositeCollection [] : String | provenance | | -| Test.java:4217:40:4217:41 | in : TreeBag [] : String | Test.java:4217:10:4217:42 | new CompositeCollection<>(...) : CompositeCollection [] : String | provenance | MaD:85 | -| Test.java:4218:20:4218:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | -| Test.java:4218:20:4218:22 | out : CompositeCollection [] : String | Test.java:4218:9:4218:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4223:22:4223:78 | {...} : Collection[] [[], ] : String | Test.java:4224:34:4224:35 | in : Collection[] [[], ] : String | provenance | | -| Test.java:4223:39:4223:77 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4223:22:4223:78 | {...} : Collection[] [[], ] : String | provenance | | -| Test.java:4223:61:4223:76 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4223:61:4223:76 | (...)... : String | Test.java:4223:39:4223:77 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4223:61:4223:76 | (...)... : String | Test.java:4223:39:4223:77 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4223:69:4223:76 | source(...) : Object | Test.java:4223:61:4223:76 | (...)... : String | provenance | | -| Test.java:4224:10:4224:36 | new CompositeCollection<>(...) : CompositeCollection [] : String | Test.java:4225:20:4225:22 | out : CompositeCollection [] : String | provenance | | -| Test.java:4224:34:4224:35 | in : Collection[] [[], ] : String | Test.java:4224:10:4224:36 | new CompositeCollection<>(...) : CompositeCollection [] : String | provenance | MaD:86 | -| Test.java:4225:20:4225:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | -| Test.java:4225:20:4225:22 | out : CompositeCollection [] : String | Test.java:4225:9:4225:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4230:20:4230:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4231:22:4231:23 | in : TreeBag [] : String | provenance | | -| Test.java:4230:42:4230:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4230:42:4230:57 | (...)... : String | Test.java:4230:20:4230:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4230:42:4230:57 | (...)... : String | Test.java:4230:20:4230:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4230:50:4230:57 | source(...) : Object | Test.java:4230:42:4230:57 | (...)... : String | provenance | | -| Test.java:4231:4:4231:6 | out [post update] : CompositeCollection [] : String | Test.java:4232:20:4232:22 | out : CompositeCollection [] : String | provenance | | -| Test.java:4231:22:4231:23 | in : TreeBag [] : String | Test.java:4231:4:4231:6 | out [post update] : CompositeCollection [] : String | provenance | MaD:87 | -| Test.java:4232:20:4232:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | -| Test.java:4232:20:4232:22 | out : CompositeCollection [] : String | Test.java:4232:9:4232:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4237:20:4237:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4238:22:4238:23 | in : TreeBag [] : String | provenance | | -| Test.java:4237:42:4237:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4237:42:4237:57 | (...)... : String | Test.java:4237:20:4237:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4237:42:4237:57 | (...)... : String | Test.java:4237:20:4237:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4237:50:4237:57 | source(...) : Object | Test.java:4237:42:4237:57 | (...)... : String | provenance | | -| Test.java:4238:4:4238:6 | out [post update] : CompositeCollection [] : String | Test.java:4239:20:4239:22 | out : CompositeCollection [] : String | provenance | | -| Test.java:4238:22:4238:23 | in : TreeBag [] : String | Test.java:4238:4:4238:6 | out [post update] : CompositeCollection [] : String | provenance | MaD:88 | -| Test.java:4239:20:4239:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | -| Test.java:4239:20:4239:22 | out : CompositeCollection [] : String | Test.java:4239:9:4239:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4244:20:4244:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4245:28:4245:29 | in : TreeBag [] : String | provenance | | -| Test.java:4244:42:4244:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4244:42:4244:57 | (...)... : String | Test.java:4244:20:4244:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4244:42:4244:57 | (...)... : String | Test.java:4244:20:4244:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4244:50:4244:57 | source(...) : Object | Test.java:4244:42:4244:57 | (...)... : String | provenance | | -| Test.java:4245:4:4245:6 | out [post update] : CompositeCollection [] : String | Test.java:4246:20:4246:22 | out : CompositeCollection [] : String | provenance | | -| Test.java:4245:28:4245:29 | in : TreeBag [] : String | Test.java:4245:4:4245:6 | out [post update] : CompositeCollection [] : String | provenance | MaD:89 | -| Test.java:4246:20:4246:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | -| Test.java:4246:20:4246:22 | out : CompositeCollection [] : String | Test.java:4246:9:4246:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4251:22:4251:78 | {...} : Collection[] [[], ] : String | Test.java:4252:22:4252:23 | in : Collection[] [[], ] : String | provenance | | -| Test.java:4251:39:4251:77 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4251:22:4251:78 | {...} : Collection[] [[], ] : String | provenance | | -| Test.java:4251:61:4251:76 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4251:61:4251:76 | (...)... : String | Test.java:4251:39:4251:77 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4251:61:4251:76 | (...)... : String | Test.java:4251:39:4251:77 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4251:69:4251:76 | source(...) : Object | Test.java:4251:61:4251:76 | (...)... : String | provenance | | -| Test.java:4252:4:4252:6 | out [post update] : CompositeCollection [] : String | Test.java:4253:20:4253:22 | out : CompositeCollection [] : String | provenance | | -| Test.java:4252:22:4252:23 | in : Collection[] [[], ] : String | Test.java:4252:4:4252:6 | out [post update] : CompositeCollection [] : String | provenance | MaD:90 | -| Test.java:4253:20:4253:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | -| Test.java:4253:20:4253:22 | out : CompositeCollection [] : String | Test.java:4253:9:4253:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4258:29:4258:92 | new CompositeCollection<>(...) : CompositeCollection [] : String | Test.java:4259:10:4259:11 | in : CompositeCollection [] : String | provenance | | -| Test.java:4258:53:4258:91 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4258:29:4258:92 | new CompositeCollection<>(...) : CompositeCollection [] : String | provenance | MaD:83 | -| Test.java:4258:75:4258:90 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4258:75:4258:90 | (...)... : String | Test.java:4258:53:4258:91 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4258:75:4258:90 | (...)... : String | Test.java:4258:53:4258:91 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4258:83:4258:90 | source(...) : Object | Test.java:4258:75:4258:90 | (...)... : String | provenance | | -| Test.java:4259:10:4259:11 | in : CompositeCollection [] : String | Test.java:4259:10:4259:28 | getCollections(...) : List [, ] : String | provenance | MaD:91 | -| Test.java:4259:10:4259:28 | getCollections(...) : List [, ] : String | Test.java:4260:31:4260:33 | out : List [, ] : String | provenance | | -| Test.java:4260:20:4260:34 | getElement(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:4260:20:4260:34 | getElement(...) : Collection [] : String | Test.java:4260:9:4260:35 | getElement(...) | provenance | MaD:3 | -| Test.java:4260:31:4260:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | provenance | | -| Test.java:4260:31:4260:33 | out : List [, ] : String | Test.java:4260:20:4260:34 | getElement(...) : Collection [] : String | provenance | MaD:3 | -| Test.java:4265:29:4265:92 | new CompositeCollection<>(...) : CompositeCollection [] : String | Test.java:4266:10:4266:11 | in : CompositeCollection [] : String | provenance | | -| Test.java:4265:53:4265:91 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4265:29:4265:92 | new CompositeCollection<>(...) : CompositeCollection [] : String | provenance | MaD:83 | -| Test.java:4265:75:4265:90 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4265:75:4265:90 | (...)... : String | Test.java:4265:53:4265:91 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4265:75:4265:90 | (...)... : String | Test.java:4265:53:4265:91 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4265:83:4265:90 | source(...) : Object | Test.java:4265:75:4265:90 | (...)... : String | provenance | | -| Test.java:4266:10:4266:11 | in : CompositeCollection [] : String | Test.java:4266:10:4266:26 | toCollection(...) : Collection [] : String | provenance | MaD:92 | -| Test.java:4266:10:4266:26 | toCollection(...) : Collection [] : String | Test.java:4267:20:4267:22 | out : Collection [] : String | provenance | | -| Test.java:4267:20:4267:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:4267:20:4267:22 | out : Collection [] : String | Test.java:4267:9:4267:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4272:20:4272:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4273:32:4273:33 | in : TreeBag [] : String | provenance | | -| Test.java:4272:42:4272:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4272:42:4272:57 | (...)... : String | Test.java:4272:20:4272:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4272:42:4272:57 | (...)... : String | Test.java:4272:20:4272:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4272:50:4272:57 | source(...) : Object | Test.java:4272:42:4272:57 | (...)... : String | provenance | | -| Test.java:4273:10:4273:53 | new IndexedCollection<>(...) : IndexedCollection [] : String | Test.java:4274:20:4274:22 | out : IndexedCollection [] : String | provenance | | -| Test.java:4273:32:4273:33 | in : TreeBag [] : String | Test.java:4273:10:4273:53 | new IndexedCollection<>(...) : IndexedCollection [] : String | provenance | MaD:93 | -| Test.java:4274:20:4274:22 | out : IndexedCollection [] : String | Test.java:230:19:230:32 | it : IndexedCollection [] : String | provenance | | -| Test.java:4274:20:4274:22 | out : IndexedCollection [] : String | Test.java:4274:9:4274:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4279:27:4279:107 | new IndexedCollection<>(...) : IndexedCollection [] : String | Test.java:4280:10:4280:11 | in : IndexedCollection [] : String | provenance | | -| Test.java:4279:49:4279:87 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4279:27:4279:107 | new IndexedCollection<>(...) : IndexedCollection [] : String | provenance | MaD:93 | -| Test.java:4279:71:4279:86 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4279:71:4279:86 | (...)... : String | Test.java:4279:49:4279:87 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4279:71:4279:86 | (...)... : String | Test.java:4279:49:4279:87 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4279:79:4279:86 | source(...) : Object | Test.java:4279:71:4279:86 | (...)... : String | provenance | | -| Test.java:4280:10:4280:11 | in : IndexedCollection [] : String | Test.java:4280:10:4280:21 | get(...) : String | provenance | MaD:94 | -| Test.java:4280:10:4280:21 | get(...) : String | Test.java:4281:9:4281:11 | out | provenance | | -| Test.java:4286:20:4286:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4287:55:4287:56 | in : TreeBag [] : String | provenance | | -| Test.java:4286:42:4286:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4286:42:4286:57 | (...)... : String | Test.java:4286:20:4286:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4286:42:4286:57 | (...)... : String | Test.java:4286:20:4286:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4286:50:4286:57 | source(...) : Object | Test.java:4286:42:4286:57 | (...)... : String | provenance | | -| Test.java:4287:10:4287:63 | nonUniqueIndexedCollection(...) : IndexedCollection [] : String | Test.java:4288:20:4288:22 | out : IndexedCollection [] : String | provenance | | -| Test.java:4287:55:4287:56 | in : TreeBag [] : String | Test.java:4287:10:4287:63 | nonUniqueIndexedCollection(...) : IndexedCollection [] : String | provenance | MaD:95 | -| Test.java:4288:20:4288:22 | out : IndexedCollection [] : String | Test.java:230:19:230:32 | it : IndexedCollection [] : String | provenance | | -| Test.java:4288:20:4288:22 | out : IndexedCollection [] : String | Test.java:4288:9:4288:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4293:20:4293:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4294:52:4294:53 | in : TreeBag [] : String | provenance | | -| Test.java:4293:42:4293:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4293:42:4293:57 | (...)... : String | Test.java:4293:20:4293:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4293:42:4293:57 | (...)... : String | Test.java:4293:20:4293:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4293:50:4293:57 | source(...) : Object | Test.java:4293:42:4293:57 | (...)... : String | provenance | | -| Test.java:4294:10:4294:60 | uniqueIndexedCollection(...) : IndexedCollection [] : String | Test.java:4295:20:4295:22 | out : IndexedCollection [] : String | provenance | | -| Test.java:4294:52:4294:53 | in : TreeBag [] : String | Test.java:4294:10:4294:60 | uniqueIndexedCollection(...) : IndexedCollection [] : String | provenance | MaD:96 | -| Test.java:4295:20:4295:22 | out : IndexedCollection [] : String | Test.java:230:19:230:32 | it : IndexedCollection [] : String | provenance | | -| Test.java:4295:20:4295:22 | out : IndexedCollection [] : String | Test.java:4295:9:4295:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4300:27:4300:107 | new IndexedCollection<>(...) : IndexedCollection [] : String | Test.java:4301:10:4301:11 | in : IndexedCollection [] : String | provenance | | -| Test.java:4300:49:4300:87 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4300:27:4300:107 | new IndexedCollection<>(...) : IndexedCollection [] : String | provenance | MaD:93 | -| Test.java:4300:71:4300:86 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4300:71:4300:86 | (...)... : String | Test.java:4300:49:4300:87 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4300:71:4300:86 | (...)... : String | Test.java:4300:49:4300:87 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4300:79:4300:86 | source(...) : Object | Test.java:4300:71:4300:86 | (...)... : String | provenance | | -| Test.java:4301:10:4301:11 | in : IndexedCollection [] : String | Test.java:4301:10:4301:24 | values(...) : Collection [] : String | provenance | MaD:97 | -| Test.java:4301:10:4301:24 | values(...) : Collection [] : String | Test.java:4302:20:4302:22 | out : Collection [] : String | provenance | | -| Test.java:4302:20:4302:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:4302:20:4302:22 | out : Collection [] : String | Test.java:4302:9:4302:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4307:16:4307:31 | (...)... : String | Test.java:4308:12:4308:13 | in : String | provenance | | -| Test.java:4307:24:4307:31 | source(...) : Object | Test.java:4307:16:4307:31 | (...)... : String | provenance | | -| Test.java:4308:4:4308:6 | out [post update] : Builder [] : String | Test.java:4309:20:4309:22 | out : Builder [] : String | provenance | | -| Test.java:4308:12:4308:13 | in : String | Test.java:4308:4:4308:6 | out [post update] : Builder [] : String | provenance | MaD:98 | -| Test.java:4309:20:4309:22 | out : Builder [] : String | Test.java:4309:20:4309:45 | createPredicatedList(...) : List [] : String | provenance | MaD:103 | -| Test.java:4309:20:4309:45 | createPredicatedList(...) : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | -| Test.java:4309:20:4309:45 | createPredicatedList(...) : List [] : String | Test.java:4309:9:4309:46 | getElement(...) | provenance | MaD:3 | -| Test.java:4314:20:4314:44 | of(...) : List [] : String | Test.java:4315:15:4315:16 | in : List [] : String | provenance | | -| Test.java:4314:28:4314:43 | (...)... : String | Test.java:4314:20:4314:44 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:4314:36:4314:43 | source(...) : Object | Test.java:4314:28:4314:43 | (...)... : String | provenance | | -| Test.java:4315:4:4315:6 | out [post update] : Builder [] : String | Test.java:4316:20:4316:22 | out : Builder [] : String | provenance | | -| Test.java:4315:15:4315:16 | in : List [] : String | Test.java:4315:4:4315:6 | out [post update] : Builder [] : String | provenance | MaD:99 | -| Test.java:4316:20:4316:22 | out : Builder [] : String | Test.java:4316:20:4316:45 | createPredicatedList(...) : List [] : String | provenance | MaD:103 | -| Test.java:4316:20:4316:45 | createPredicatedList(...) : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | -| Test.java:4316:20:4316:45 | createPredicatedList(...) : List [] : String | Test.java:4316:9:4316:46 | getElement(...) | provenance | MaD:3 | -| Test.java:4321:38:4321:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4322:10:4322:11 | in : Builder [] : String | provenance | | -| Test.java:4321:80:4321:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | -| Test.java:4321:80:4321:95 | (...)... : String | Test.java:4321:38:4321:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:98 | -| Test.java:4321:88:4321:95 | source(...) : Object | Test.java:4321:80:4321:95 | (...)... : String | provenance | | -| Test.java:4322:10:4322:11 | in : Builder [] : String | Test.java:4322:10:4322:37 | createPredicatedBag(...) : Bag [] : String | provenance | MaD:101 | -| Test.java:4322:10:4322:37 | createPredicatedBag(...) : Bag [] : String | Test.java:4323:20:4323:22 | out : Bag [] : String | provenance | | -| Test.java:4323:20:4323:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | -| Test.java:4323:20:4323:22 | out : Bag [] : String | Test.java:4323:9:4323:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4328:38:4328:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4329:10:4329:11 | in : Builder [] : String | provenance | | -| Test.java:4328:80:4328:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | -| Test.java:4328:80:4328:95 | (...)... : String | Test.java:4328:38:4328:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:98 | -| Test.java:4328:88:4328:95 | source(...) : Object | Test.java:4328:80:4328:95 | (...)... : String | provenance | | -| Test.java:4329:10:4329:11 | in : Builder [] : String | Test.java:4329:10:4329:33 | createPredicatedBag(...) : Bag [] : String | provenance | MaD:101 | -| Test.java:4329:10:4329:33 | createPredicatedBag(...) : Bag [] : String | Test.java:4330:20:4330:22 | out : Bag [] : String | provenance | | -| Test.java:4330:20:4330:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | -| Test.java:4330:20:4330:22 | out : Bag [] : String | Test.java:4330:9:4330:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4335:13:4335:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4337:39:4337:40 | in : TreeBag [] : String | provenance | | -| Test.java:4335:35:4335:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4335:35:4335:50 | (...)... : String | Test.java:4335:13:4335:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4335:35:4335:50 | (...)... : String | Test.java:4335:13:4335:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4335:43:4335:50 | source(...) : Object | Test.java:4335:35:4335:50 | (...)... : String | provenance | | -| Test.java:4337:10:4337:41 | createPredicatedBag(...) : Bag [] : String | Test.java:4338:20:4338:22 | out : Bag [] : String | provenance | | -| Test.java:4337:39:4337:40 | in : TreeBag [] : String | Test.java:4337:10:4337:41 | createPredicatedBag(...) : Bag [] : String | provenance | MaD:100 | -| Test.java:4338:20:4338:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | -| Test.java:4338:20:4338:22 | out : Bag [] : String | Test.java:4338:9:4338:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4343:38:4343:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4344:10:4344:11 | in : Builder [] : String | provenance | | -| Test.java:4343:80:4343:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | -| Test.java:4343:80:4343:95 | (...)... : String | Test.java:4343:38:4343:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:98 | -| Test.java:4343:88:4343:95 | source(...) : Object | Test.java:4343:80:4343:95 | (...)... : String | provenance | | -| Test.java:4344:10:4344:11 | in : Builder [] : String | Test.java:4344:10:4344:38 | createPredicatedList(...) : List [] : String | provenance | MaD:103 | -| Test.java:4344:10:4344:38 | createPredicatedList(...) : List [] : String | Test.java:4345:20:4345:22 | out : List [] : String | provenance | | -| Test.java:4345:20:4345:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | -| Test.java:4345:20:4345:22 | out : List [] : String | Test.java:4345:9:4345:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4350:38:4350:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4351:10:4351:11 | in : Builder [] : String | provenance | | -| Test.java:4350:80:4350:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | -| Test.java:4350:80:4350:95 | (...)... : String | Test.java:4350:38:4350:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:98 | -| Test.java:4350:88:4350:95 | source(...) : Object | Test.java:4350:80:4350:95 | (...)... : String | provenance | | -| Test.java:4351:10:4351:11 | in : Builder [] : String | Test.java:4351:10:4351:34 | createPredicatedList(...) : List [] : String | provenance | MaD:103 | -| Test.java:4351:10:4351:34 | createPredicatedList(...) : List [] : String | Test.java:4352:20:4352:22 | out : List [] : String | provenance | | -| Test.java:4352:20:4352:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | -| Test.java:4352:20:4352:22 | out : List [] : String | Test.java:4352:9:4352:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4357:14:4357:38 | of(...) : List [] : String | Test.java:4359:40:4359:41 | in : List [] : String | provenance | | -| Test.java:4357:22:4357:37 | (...)... : String | Test.java:4357:14:4357:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:4357:30:4357:37 | source(...) : Object | Test.java:4357:22:4357:37 | (...)... : String | provenance | | -| Test.java:4359:10:4359:42 | createPredicatedList(...) : List [] : String | Test.java:4360:20:4360:22 | out : List [] : String | provenance | | -| Test.java:4359:40:4359:41 | in : List [] : String | Test.java:4359:10:4359:42 | createPredicatedList(...) : List [] : String | provenance | MaD:102 | -| Test.java:4360:20:4360:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | -| Test.java:4360:20:4360:22 | out : List [] : String | Test.java:4360:9:4360:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4365:38:4365:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4366:10:4366:11 | in : Builder [] : String | provenance | | -| Test.java:4365:80:4365:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | -| Test.java:4365:80:4365:95 | (...)... : String | Test.java:4365:38:4365:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:98 | -| Test.java:4365:88:4365:95 | source(...) : Object | Test.java:4365:80:4365:95 | (...)... : String | provenance | | -| Test.java:4366:10:4366:11 | in : Builder [] : String | Test.java:4366:10:4366:42 | createPredicatedMultiSet(...) : MultiSet [] : String | provenance | MaD:105 | -| Test.java:4366:10:4366:42 | createPredicatedMultiSet(...) : MultiSet [] : String | Test.java:4367:20:4367:22 | out : MultiSet [] : String | provenance | | -| Test.java:4367:20:4367:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | provenance | | -| Test.java:4367:20:4367:22 | out : MultiSet [] : String | Test.java:4367:9:4367:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4372:38:4372:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4373:10:4373:11 | in : Builder [] : String | provenance | | -| Test.java:4372:80:4372:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | -| Test.java:4372:80:4372:95 | (...)... : String | Test.java:4372:38:4372:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:98 | -| Test.java:4372:88:4372:95 | source(...) : Object | Test.java:4372:80:4372:95 | (...)... : String | provenance | | -| Test.java:4373:10:4373:11 | in : Builder [] : String | Test.java:4373:10:4373:38 | createPredicatedMultiSet(...) : MultiSet [] : String | provenance | MaD:105 | -| Test.java:4373:10:4373:38 | createPredicatedMultiSet(...) : MultiSet [] : String | Test.java:4374:20:4374:22 | out : MultiSet [] : String | provenance | | -| Test.java:4374:20:4374:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | provenance | | -| Test.java:4374:20:4374:22 | out : MultiSet [] : String | Test.java:4374:9:4374:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4379:18:4379:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:4381:44:4381:45 | in : HashMultiSet [] : String | provenance | | -| Test.java:4379:45:4379:60 | (...)... : String | Test.java:258:49:258:57 | element : String | provenance | | -| Test.java:4379:45:4379:60 | (...)... : String | Test.java:4379:18:4379:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | -| Test.java:4379:45:4379:60 | (...)... : String | Test.java:4379:18:4379:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:749 | -| Test.java:4379:53:4379:60 | source(...) : Object | Test.java:4379:45:4379:60 | (...)... : String | provenance | | -| Test.java:4381:10:4381:46 | createPredicatedMultiSet(...) : MultiSet [] : String | Test.java:4382:20:4382:22 | out : MultiSet [] : String | provenance | | -| Test.java:4381:44:4381:45 | in : HashMultiSet [] : String | Test.java:4381:10:4381:46 | createPredicatedMultiSet(...) : MultiSet [] : String | provenance | MaD:104 | -| Test.java:4382:20:4382:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | provenance | | -| Test.java:4382:20:4382:22 | out : MultiSet [] : String | Test.java:4382:9:4382:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4387:38:4387:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4388:10:4388:11 | in : Builder [] : String | provenance | | -| Test.java:4387:80:4387:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | -| Test.java:4387:80:4387:95 | (...)... : String | Test.java:4387:38:4387:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:98 | -| Test.java:4387:88:4387:95 | source(...) : Object | Test.java:4387:80:4387:95 | (...)... : String | provenance | | -| Test.java:4388:10:4388:11 | in : Builder [] : String | Test.java:4388:10:4388:39 | createPredicatedQueue(...) : Queue [] : String | provenance | MaD:107 | -| Test.java:4388:10:4388:39 | createPredicatedQueue(...) : Queue [] : String | Test.java:4389:20:4389:22 | out : Queue [] : String | provenance | | -| Test.java:4389:20:4389:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | -| Test.java:4389:20:4389:22 | out : Queue [] : String | Test.java:4389:9:4389:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4394:38:4394:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4395:10:4395:11 | in : Builder [] : String | provenance | | -| Test.java:4394:80:4394:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | -| Test.java:4394:80:4394:95 | (...)... : String | Test.java:4394:38:4394:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:98 | -| Test.java:4394:88:4394:95 | source(...) : Object | Test.java:4394:80:4394:95 | (...)... : String | provenance | | -| Test.java:4395:10:4395:11 | in : Builder [] : String | Test.java:4395:10:4395:35 | createPredicatedQueue(...) : Queue [] : String | provenance | MaD:107 | -| Test.java:4395:10:4395:35 | createPredicatedQueue(...) : Queue [] : String | Test.java:4396:20:4396:22 | out : Queue [] : String | provenance | | -| Test.java:4396:20:4396:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | -| Test.java:4396:20:4396:22 | out : Queue [] : String | Test.java:4396:9:4396:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4401:15:4401:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:4403:41:4403:42 | in : CircularFifoQueue [] : String | provenance | | -| Test.java:4401:47:4401:62 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | -| Test.java:4401:47:4401:62 | (...)... : String | Test.java:4401:15:4401:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | -| Test.java:4401:55:4401:62 | source(...) : Object | Test.java:4401:47:4401:62 | (...)... : String | provenance | | -| Test.java:4403:10:4403:43 | createPredicatedQueue(...) : Queue [] : String | Test.java:4404:20:4404:22 | out : Queue [] : String | provenance | | -| Test.java:4403:41:4403:42 | in : CircularFifoQueue [] : String | Test.java:4403:10:4403:43 | createPredicatedQueue(...) : Queue [] : String | provenance | MaD:106 | -| Test.java:4404:20:4404:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | -| Test.java:4404:20:4404:22 | out : Queue [] : String | Test.java:4404:9:4404:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4409:38:4409:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4410:10:4410:11 | in : Builder [] : String | provenance | | -| Test.java:4409:80:4409:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | -| Test.java:4409:80:4409:95 | (...)... : String | Test.java:4409:38:4409:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:98 | -| Test.java:4409:88:4409:95 | source(...) : Object | Test.java:4409:80:4409:95 | (...)... : String | provenance | | -| Test.java:4410:10:4410:11 | in : Builder [] : String | Test.java:4410:10:4410:37 | createPredicatedSet(...) : Set [] : String | provenance | MaD:109 | -| Test.java:4410:10:4410:37 | createPredicatedSet(...) : Set [] : String | Test.java:4411:20:4411:22 | out : Set [] : String | provenance | | -| Test.java:4411:20:4411:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:4411:20:4411:22 | out : Set [] : String | Test.java:4411:9:4411:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4416:38:4416:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4417:10:4417:11 | in : Builder [] : String | provenance | | -| Test.java:4416:80:4416:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | -| Test.java:4416:80:4416:95 | (...)... : String | Test.java:4416:38:4416:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:98 | -| Test.java:4416:88:4416:95 | source(...) : Object | Test.java:4416:80:4416:95 | (...)... : String | provenance | | -| Test.java:4417:10:4417:11 | in : Builder [] : String | Test.java:4417:10:4417:33 | createPredicatedSet(...) : Set [] : String | provenance | MaD:109 | -| Test.java:4417:10:4417:33 | createPredicatedSet(...) : Set [] : String | Test.java:4418:20:4418:22 | out : Set [] : String | provenance | | -| Test.java:4418:20:4418:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:4418:20:4418:22 | out : Set [] : String | Test.java:4418:9:4418:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4423:13:4423:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:4425:39:4425:40 | in : ListOrderedSet [] : String | provenance | | -| Test.java:4423:42:4423:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:4423:42:4423:57 | (...)... : String | Test.java:4423:13:4423:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:4423:50:4423:57 | source(...) : Object | Test.java:4423:42:4423:57 | (...)... : String | provenance | | -| Test.java:4425:10:4425:41 | createPredicatedSet(...) : Set [] : String | Test.java:4426:20:4426:22 | out : Set [] : String | provenance | | -| Test.java:4425:39:4425:40 | in : ListOrderedSet [] : String | Test.java:4425:10:4425:41 | createPredicatedSet(...) : Set [] : String | provenance | MaD:108 | -| Test.java:4426:20:4426:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:4426:20:4426:22 | out : Set [] : String | Test.java:4426:9:4426:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4431:38:4431:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4432:10:4432:11 | in : Builder [] : String | provenance | | -| Test.java:4431:80:4431:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | -| Test.java:4431:80:4431:95 | (...)... : String | Test.java:4431:38:4431:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:98 | -| Test.java:4431:88:4431:95 | source(...) : Object | Test.java:4431:80:4431:95 | (...)... : String | provenance | | -| Test.java:4432:10:4432:11 | in : Builder [] : String | Test.java:4432:10:4432:30 | rejectedElements(...) : Collection [] : String | provenance | MaD:110 | -| Test.java:4432:10:4432:30 | rejectedElements(...) : Collection [] : String | Test.java:4433:20:4433:22 | out : Collection [] : String | provenance | | -| Test.java:4433:20:4433:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:4433:20:4433:22 | out : Collection [] : String | Test.java:4433:9:4433:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4438:20:4438:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4439:52:4439:53 | in : TreeBag [] : String | provenance | | -| Test.java:4438:42:4438:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4438:42:4438:57 | (...)... : String | Test.java:4438:20:4438:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4438:42:4438:57 | (...)... : String | Test.java:4438:20:4438:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4438:50:4438:57 | source(...) : Object | Test.java:4438:42:4438:57 | (...)... : String | provenance | | -| Test.java:4439:10:4439:60 | predicatedCollection(...) : PredicatedCollection [] : String | Test.java:4440:20:4440:22 | out : PredicatedCollection [] : String | provenance | | -| Test.java:4439:52:4439:53 | in : TreeBag [] : String | Test.java:4439:10:4439:60 | predicatedCollection(...) : PredicatedCollection [] : String | provenance | MaD:111 | -| Test.java:4440:20:4440:22 | out : PredicatedCollection [] : String | Test.java:230:19:230:32 | it : PredicatedCollection [] : String | provenance | | -| Test.java:4440:20:4440:22 | out : PredicatedCollection [] : String | Test.java:4440:9:4440:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4445:20:4445:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4446:56:4446:57 | in : TreeBag [] : String | provenance | | -| Test.java:4445:42:4445:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4445:42:4445:57 | (...)... : String | Test.java:4445:20:4445:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4445:42:4445:57 | (...)... : String | Test.java:4445:20:4445:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4445:50:4445:57 | source(...) : Object | Test.java:4445:42:4445:57 | (...)... : String | provenance | | -| Test.java:4446:10:4446:58 | synchronizedCollection(...) : SynchronizedCollection [] : String | Test.java:4447:20:4447:22 | out : SynchronizedCollection [] : String | provenance | | -| Test.java:4446:56:4446:57 | in : TreeBag [] : String | Test.java:4446:10:4446:58 | synchronizedCollection(...) : SynchronizedCollection [] : String | provenance | MaD:112 | -| Test.java:4447:20:4447:22 | out : SynchronizedCollection [] : String | Test.java:230:19:230:32 | it : SynchronizedCollection [] : String | provenance | | -| Test.java:4447:20:4447:22 | out : SynchronizedCollection [] : String | Test.java:4447:9:4447:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4452:20:4452:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4453:55:4453:56 | in : TreeBag [] : String | provenance | | -| Test.java:4452:42:4452:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4452:42:4452:57 | (...)... : String | Test.java:4452:20:4452:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4452:42:4452:57 | (...)... : String | Test.java:4452:20:4452:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4452:50:4452:57 | source(...) : Object | Test.java:4452:42:4452:57 | (...)... : String | provenance | | -| Test.java:4453:10:4453:63 | transformingCollection(...) : TransformedCollection [] : String | Test.java:4454:20:4454:22 | out : TransformedCollection [] : String | provenance | | -| Test.java:4453:55:4453:56 | in : TreeBag [] : String | Test.java:4453:10:4453:63 | transformingCollection(...) : TransformedCollection [] : String | provenance | MaD:113 | -| Test.java:4454:20:4454:22 | out : TransformedCollection [] : String | Test.java:230:19:230:32 | it : TransformedCollection [] : String | provenance | | -| Test.java:4454:20:4454:22 | out : TransformedCollection [] : String | Test.java:4454:9:4454:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4459:20:4459:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4460:70:4460:71 | in : TreeBag [] : String | provenance | | -| Test.java:4459:42:4459:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4459:42:4459:57 | (...)... : String | Test.java:4459:20:4459:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4459:42:4459:57 | (...)... : String | Test.java:4459:20:4459:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4459:50:4459:57 | source(...) : Object | Test.java:4459:42:4459:57 | (...)... : String | provenance | | -| Test.java:4460:10:4460:72 | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | Test.java:4461:20:4461:22 | out : BoundedCollection [] : String | provenance | | -| Test.java:4460:70:4460:71 | in : TreeBag [] : String | Test.java:4460:10:4460:72 | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | provenance | MaD:114 | -| Test.java:4461:20:4461:22 | out : BoundedCollection [] : String | Test.java:230:19:230:32 | it : BoundedCollection [] : String | provenance | | -| Test.java:4461:20:4461:22 | out : BoundedCollection [] : String | Test.java:4461:9:4461:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4466:27:4466:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:4467:70:4467:71 | in : CircularFifoQueue [] : String | provenance | | -| Test.java:4466:59:4466:74 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | -| Test.java:4466:59:4466:74 | (...)... : String | Test.java:4466:27:4466:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | -| Test.java:4466:67:4466:74 | source(...) : Object | Test.java:4466:59:4466:74 | (...)... : String | provenance | | -| Test.java:4467:10:4467:72 | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | Test.java:4468:20:4468:22 | out : BoundedCollection [] : String | provenance | | -| Test.java:4467:70:4467:71 | in : CircularFifoQueue [] : String | Test.java:4467:10:4467:72 | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | provenance | MaD:114 | -| Test.java:4468:20:4468:22 | out : BoundedCollection [] : String | Test.java:230:19:230:32 | it : BoundedCollection [] : String | provenance | | -| Test.java:4468:20:4468:22 | out : BoundedCollection [] : String | Test.java:4468:9:4468:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4473:20:4473:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4474:56:4474:57 | in : TreeBag [] : String | provenance | | -| Test.java:4473:42:4473:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4473:42:4473:57 | (...)... : String | Test.java:4473:20:4473:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4473:42:4473:57 | (...)... : String | Test.java:4473:20:4473:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4473:50:4473:57 | source(...) : Object | Test.java:4473:42:4473:57 | (...)... : String | provenance | | -| Test.java:4474:10:4474:58 | unmodifiableCollection(...) : Collection [] : String | Test.java:4475:20:4475:22 | out : Collection [] : String | provenance | | -| Test.java:4474:56:4474:57 | in : TreeBag [] : String | Test.java:4474:10:4474:58 | unmodifiableCollection(...) : Collection [] : String | provenance | MaD:115 | -| Test.java:4475:20:4475:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:4475:20:4475:22 | out : Collection [] : String | Test.java:4475:9:4475:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4480:18:4480:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4481:42:4481:43 | in : ListIterator [] : String | provenance | | -| Test.java:4480:45:4480:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4480:45:4480:60 | (...)... : String | Test.java:4480:18:4480:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4480:53:4480:60 | source(...) : Object | Test.java:4480:45:4480:60 | (...)... : String | provenance | | -| Test.java:4481:10:4481:44 | new MyAbstractIteratorDecorator<>(...) : MyAbstractIteratorDecorator [] : String | Test.java:4482:20:4482:22 | out : MyAbstractIteratorDecorator [] : String | provenance | | -| Test.java:4481:42:4481:43 | in : ListIterator [] : String | Test.java:4481:10:4481:44 | new MyAbstractIteratorDecorator<>(...) : MyAbstractIteratorDecorator [] : String | provenance | MaD:116 | -| Test.java:4481:42:4481:43 | in : ListIterator [] : String | Test.java:7161:38:7161:63 | iterator : ListIterator [] : String | provenance | | -| Test.java:4482:20:4482:22 | out : MyAbstractIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractIteratorDecorator [] : String | provenance | | -| Test.java:4482:20:4482:22 | out : MyAbstractIteratorDecorator [] : String | Test.java:4482:9:4482:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4487:22:4487:65 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4488:46:4488:47 | in : ListIterator [] : String | provenance | | -| Test.java:4487:49:4487:64 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4487:49:4487:64 | (...)... : String | Test.java:4487:22:4487:65 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4487:57:4487:64 | source(...) : Object | Test.java:4487:49:4487:64 | (...)... : String | provenance | | -| Test.java:4488:10:4488:48 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | Test.java:4489:20:4489:22 | out : MyAbstractListIteratorDecorator [] : String | provenance | | -| Test.java:4488:46:4488:47 | in : ListIterator [] : String | Test.java:4488:10:4488:48 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | provenance | MaD:117 | -| Test.java:4488:46:4488:47 | in : ListIterator [] : String | Test.java:7167:42:7167:71 | iterator : ListIterator [] : String | provenance | | -| Test.java:4489:20:4489:22 | out : MyAbstractListIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractListIteratorDecorator [] : String | provenance | | -| Test.java:4489:20:4489:22 | out : MyAbstractListIteratorDecorator [] : String | Test.java:4489:9:4489:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4494:41:4494:121 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | Test.java:4495:10:4495:11 | in : MyAbstractListIteratorDecorator [] : String | provenance | | -| Test.java:4494:77:4494:120 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4494:41:4494:121 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | provenance | MaD:117 | -| Test.java:4494:77:4494:120 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:7167:42:7167:71 | iterator : ListIterator [] : String | provenance | | -| Test.java:4494:104:4494:119 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4494:104:4494:119 | (...)... : String | Test.java:4494:77:4494:120 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4494:112:4494:119 | source(...) : Object | Test.java:4494:104:4494:119 | (...)... : String | provenance | | -| Test.java:4495:10:4495:11 | in : MyAbstractListIteratorDecorator [] : String | Test.java:4495:10:4495:31 | myGetListIterator(...) : ListIterator [] : String | provenance | MaD:118 | -| Test.java:4495:10:4495:11 | in : MyAbstractListIteratorDecorator [] : String | Test.java:7170:26:7170:42 | parameter this : MyAbstractListIteratorDecorator [] : String | provenance | | -| Test.java:4495:10:4495:31 | myGetListIterator(...) : ListIterator [] : String | Test.java:4496:20:4496:22 | out : ListIterator [] : String | provenance | | -| Test.java:4496:20:4496:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | provenance | | -| Test.java:4496:20:4496:22 | out : ListIterator [] : String | Test.java:4496:9:4496:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4501:21:4501:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | Test.java:4501:21:4501:74 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:562 | -| Test.java:4501:21:4501:74 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4502:45:4502:46 | in : OrderedMapIterator [] : String | provenance | | -| Test.java:4501:44:4501:59 | (...)... : String | Test.java:276:49:276:53 | key : String | provenance | | -| Test.java:4501:44:4501:59 | (...)... : String | Test.java:4501:21:4501:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | provenance | MaD:13 | -| Test.java:4501:52:4501:59 | source(...) : Object | Test.java:4501:44:4501:59 | (...)... : String | provenance | | -| Test.java:4502:10:4502:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | Test.java:4503:20:4503:22 | out : MyAbstractMapIteratorDecorator [] : String | provenance | | -| Test.java:4502:45:4502:46 | in : OrderedMapIterator [] : String | Test.java:4502:10:4502:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | provenance | MaD:119 | -| Test.java:4502:45:4502:46 | in : OrderedMapIterator [] : String | Test.java:7176:41:7176:72 | iterator : OrderedMapIterator [] : String | provenance | | -| Test.java:4503:20:4503:22 | out : MyAbstractMapIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractMapIteratorDecorator [] : String | provenance | | -| Test.java:4503:20:4503:22 | out : MyAbstractMapIteratorDecorator [] : String | Test.java:4503:9:4503:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4508:21:4508:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | Test.java:4508:21:4508:76 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:563 | -| Test.java:4508:21:4508:76 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4509:45:4509:46 | in : OrderedMapIterator [] : String | provenance | | -| Test.java:4508:46:4508:61 | (...)... : String | Test.java:295:51:295:57 | value : String | provenance | | -| Test.java:4508:46:4508:61 | (...)... : String | Test.java:4508:21:4508:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | provenance | MaD:14 | -| Test.java:4508:54:4508:61 | source(...) : Object | Test.java:4508:46:4508:61 | (...)... : String | provenance | | -| Test.java:4509:10:4509:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | Test.java:4510:21:4510:23 | out : MyAbstractMapIteratorDecorator [] : String | provenance | | -| Test.java:4509:45:4509:46 | in : OrderedMapIterator [] : String | Test.java:4509:10:4509:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | provenance | MaD:120 | -| Test.java:4509:45:4509:46 | in : OrderedMapIterator [] : String | Test.java:7176:41:7176:72 | iterator : OrderedMapIterator [] : String | provenance | | -| Test.java:4510:21:4510:23 | out : MyAbstractMapIteratorDecorator [] : String | Test.java:246:20:246:47 | mapIterator : MyAbstractMapIteratorDecorator [] : String | provenance | | -| Test.java:4510:21:4510:23 | out : MyAbstractMapIteratorDecorator [] : String | Test.java:4510:9:4510:24 | getMapValue(...) | provenance | MaD:673 | -| Test.java:4515:40:4515:129 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | Test.java:4516:10:4516:11 | in : MyAbstractMapIteratorDecorator [] : String | provenance | | -| Test.java:4515:75:4515:114 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | Test.java:4515:75:4515:128 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:562 | -| Test.java:4515:75:4515:128 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4515:40:4515:129 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | provenance | MaD:119 | -| Test.java:4515:75:4515:128 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7176:41:7176:72 | iterator : OrderedMapIterator [] : String | provenance | | -| Test.java:4515:98:4515:113 | (...)... : String | Test.java:276:49:276:53 | key : String | provenance | | -| Test.java:4515:98:4515:113 | (...)... : String | Test.java:4515:75:4515:114 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | provenance | MaD:13 | -| Test.java:4515:106:4515:113 | source(...) : Object | Test.java:4515:98:4515:113 | (...)... : String | provenance | | -| Test.java:4516:10:4516:11 | in : MyAbstractMapIteratorDecorator [] : String | Test.java:4516:10:4516:30 | myGetMapIterator(...) : MapIterator [] : String | provenance | MaD:121 | -| Test.java:4516:10:4516:11 | in : MyAbstractMapIteratorDecorator [] : String | Test.java:7179:28:7179:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | provenance | | -| Test.java:4516:10:4516:30 | myGetMapIterator(...) : MapIterator [] : String | Test.java:4517:20:4517:22 | out : MapIterator [] : String | provenance | | -| Test.java:4517:20:4517:22 | out : MapIterator [] : String | Test.java:231:19:231:32 | it : MapIterator [] : String | provenance | | -| Test.java:4517:20:4517:22 | out : MapIterator [] : String | Test.java:4517:9:4517:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4522:40:4522:131 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | Test.java:4523:10:4523:11 | in : MyAbstractMapIteratorDecorator [] : String | provenance | | -| Test.java:4522:75:4522:116 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | Test.java:4522:75:4522:130 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:563 | -| Test.java:4522:75:4522:130 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4522:40:4522:131 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | provenance | MaD:120 | -| Test.java:4522:75:4522:130 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7176:41:7176:72 | iterator : OrderedMapIterator [] : String | provenance | | -| Test.java:4522:100:4522:115 | (...)... : String | Test.java:295:51:295:57 | value : String | provenance | | -| Test.java:4522:100:4522:115 | (...)... : String | Test.java:4522:75:4522:116 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | provenance | MaD:14 | -| Test.java:4522:108:4522:115 | source(...) : Object | Test.java:4522:100:4522:115 | (...)... : String | provenance | | -| Test.java:4523:10:4523:11 | in : MyAbstractMapIteratorDecorator [] : String | Test.java:4523:10:4523:30 | myGetMapIterator(...) : MapIterator [] : String | provenance | MaD:122 | -| Test.java:4523:10:4523:11 | in : MyAbstractMapIteratorDecorator [] : String | Test.java:7179:28:7179:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | provenance | | -| Test.java:4523:10:4523:30 | myGetMapIterator(...) : MapIterator [] : String | Test.java:4524:21:4524:23 | out : MapIterator [] : String | provenance | | -| Test.java:4524:21:4524:23 | out : MapIterator [] : String | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | provenance | | -| Test.java:4524:21:4524:23 | out : MapIterator [] : String | Test.java:4524:9:4524:24 | getMapValue(...) | provenance | MaD:673 | -| Test.java:4529:28:4529:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:4529:28:4529:86 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:562 | -| Test.java:4529:28:4529:86 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4530:52:4530:53 | in : OrderedMapIterator [] : String | provenance | | -| Test.java:4529:56:4529:71 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | -| Test.java:4529:56:4529:71 | (...)... : String | Test.java:4529:28:4529:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:13 | -| Test.java:4529:64:4529:71 | source(...) : Object | Test.java:4529:56:4529:71 | (...)... : String | provenance | | -| Test.java:4530:10:4530:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4531:20:4531:22 | out : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | -| Test.java:4530:52:4530:53 | in : OrderedMapIterator [] : String | Test.java:4530:10:4530:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | MaD:123 | -| Test.java:4530:52:4530:53 | in : OrderedMapIterator [] : String | Test.java:7185:48:7185:86 | iterator : OrderedMapIterator [] : String | provenance | | -| Test.java:4531:20:4531:22 | out : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | -| Test.java:4531:20:4531:22 | out : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4531:9:4531:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4536:28:4536:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:4536:28:4536:88 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:563 | -| Test.java:4536:28:4536:88 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4537:52:4537:53 | in : OrderedMapIterator [] : String | provenance | | -| Test.java:4536:58:4536:73 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | -| Test.java:4536:58:4536:73 | (...)... : String | Test.java:4536:28:4536:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:14 | -| Test.java:4536:66:4536:73 | source(...) : Object | Test.java:4536:58:4536:73 | (...)... : String | provenance | | -| Test.java:4537:10:4537:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4538:21:4538:23 | out : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | -| Test.java:4537:52:4537:53 | in : OrderedMapIterator [] : String | Test.java:4537:10:4537:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | MaD:124 | -| Test.java:4537:52:4537:53 | in : OrderedMapIterator [] : String | Test.java:7185:48:7185:86 | iterator : OrderedMapIterator [] : String | provenance | | -| Test.java:4538:21:4538:23 | out : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:246:20:246:47 | mapIterator : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | -| Test.java:4538:21:4538:23 | out : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4538:9:4538:24 | getMapValue(...) | provenance | MaD:673 | -| Test.java:4543:47:4543:148 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4544:10:4544:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | -| Test.java:4543:89:4543:133 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:4543:89:4543:147 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:562 | -| Test.java:4543:89:4543:147 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4543:47:4543:148 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | MaD:123 | -| Test.java:4543:89:4543:147 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7185:48:7185:86 | iterator : OrderedMapIterator [] : String | provenance | | -| Test.java:4543:117:4543:132 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | -| Test.java:4543:117:4543:132 | (...)... : String | Test.java:4543:89:4543:133 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:13 | -| Test.java:4543:125:4543:132 | source(...) : Object | Test.java:4543:117:4543:132 | (...)... : String | provenance | | -| Test.java:4544:10:4544:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4544:10:4544:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:125 | -| Test.java:4544:10:4544:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7188:35:7188:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | -| Test.java:4544:10:4544:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | Test.java:4545:20:4545:22 | out : OrderedMapIterator [] : String | provenance | | -| Test.java:4545:20:4545:22 | out : OrderedMapIterator [] : String | Test.java:231:19:231:32 | it : OrderedMapIterator [] : String | provenance | | -| Test.java:4545:20:4545:22 | out : OrderedMapIterator [] : String | Test.java:4545:9:4545:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4550:47:4550:150 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4551:10:4551:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | -| Test.java:4550:89:4550:135 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:4550:89:4550:149 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:563 | -| Test.java:4550:89:4550:149 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4550:47:4550:150 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | MaD:124 | -| Test.java:4550:89:4550:149 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7185:48:7185:86 | iterator : OrderedMapIterator [] : String | provenance | | -| Test.java:4550:119:4550:134 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | -| Test.java:4550:119:4550:134 | (...)... : String | Test.java:4550:89:4550:135 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:14 | -| Test.java:4550:127:4550:134 | source(...) : Object | Test.java:4550:119:4550:134 | (...)... : String | provenance | | -| Test.java:4551:10:4551:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4551:10:4551:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:126 | -| Test.java:4551:10:4551:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7188:35:7188:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | -| Test.java:4551:10:4551:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | Test.java:4552:21:4552:23 | out : OrderedMapIterator [] : String | provenance | | -| Test.java:4552:21:4552:23 | out : OrderedMapIterator [] : String | Test.java:246:20:246:47 | mapIterator : OrderedMapIterator [] : String | provenance | | -| Test.java:4552:21:4552:23 | out : OrderedMapIterator [] : String | Test.java:4552:9:4552:24 | getMapValue(...) | provenance | MaD:673 | -| Test.java:4557:18:4557:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4558:49:4558:50 | in : ListIterator [] : String | provenance | | -| Test.java:4557:45:4557:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4557:45:4557:60 | (...)... : String | Test.java:4557:18:4557:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4557:53:4557:60 | source(...) : Object | Test.java:4557:45:4557:60 | (...)... : String | provenance | | -| Test.java:4558:10:4558:51 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | Test.java:4559:20:4559:22 | out : MyAbstractUntypedIteratorDecorator [] : String | provenance | | -| Test.java:4558:49:4558:50 | in : ListIterator [] : String | Test.java:4558:10:4558:51 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | provenance | MaD:127 | -| Test.java:4558:49:4558:50 | in : ListIterator [] : String | Test.java:7194:45:7194:70 | iterator : ListIterator [] : String | provenance | | -| Test.java:4559:20:4559:22 | out : MyAbstractUntypedIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractUntypedIteratorDecorator [] : String | provenance | | -| Test.java:4559:20:4559:22 | out : MyAbstractUntypedIteratorDecorator [] : String | Test.java:4559:9:4559:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4564:44:4564:127 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | Test.java:4565:10:4565:11 | in : MyAbstractUntypedIteratorDecorator [] : String | provenance | | -| Test.java:4564:83:4564:126 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4564:44:4564:127 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | provenance | MaD:127 | -| Test.java:4564:83:4564:126 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:7194:45:7194:70 | iterator : ListIterator [] : String | provenance | | -| Test.java:4564:110:4564:125 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4564:110:4564:125 | (...)... : String | Test.java:4564:83:4564:126 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4564:118:4564:125 | source(...) : Object | Test.java:4564:110:4564:125 | (...)... : String | provenance | | -| Test.java:4565:10:4565:11 | in : MyAbstractUntypedIteratorDecorator [] : String | Test.java:4565:10:4565:27 | myGetIterator(...) : Iterator [] : String | provenance | MaD:128 | -| Test.java:4565:10:4565:11 | in : MyAbstractUntypedIteratorDecorator [] : String | Test.java:7197:22:7197:34 | parameter this : MyAbstractUntypedIteratorDecorator [] : String | provenance | | -| Test.java:4565:10:4565:27 | myGetIterator(...) : Iterator [] : String | Test.java:4566:20:4566:22 | out : Iterator [] : String | provenance | | -| Test.java:4566:20:4566:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:4566:20:4566:22 | out : Iterator [] : String | Test.java:4566:9:4566:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4571:16:4571:60 | (...)... : Object[] [[]] : String | Test.java:4572:28:4572:29 | in : Object[] [[]] : String | provenance | | -| Test.java:4571:24:4571:60 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4571:16:4571:60 | (...)... : Object[] [[]] : String | provenance | | -| Test.java:4571:44:4571:59 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | -| Test.java:4571:44:4571:59 | (...)... : String | Test.java:4571:24:4571:60 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | -| Test.java:4571:52:4571:59 | source(...) : Object | Test.java:4571:44:4571:59 | (...)... : String | provenance | | -| Test.java:4572:10:4572:36 | new ArrayIterator<>(...) : ArrayIterator [] : String | Test.java:4573:20:4573:22 | out : ArrayIterator [] : String | provenance | | -| Test.java:4572:28:4572:29 | in : Object[] [[]] : String | Test.java:4572:10:4572:36 | new ArrayIterator<>(...) : ArrayIterator [] : String | provenance | MaD:129 | -| Test.java:4573:20:4573:22 | out : ArrayIterator [] : String | Test.java:231:19:231:32 | it : ArrayIterator [] : String | provenance | | -| Test.java:4573:20:4573:22 | out : ArrayIterator [] : String | Test.java:4573:9:4573:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4578:16:4578:60 | (...)... : Object[] [[]] : String | Test.java:4579:28:4579:29 | in : Object[] [[]] : String | provenance | | -| Test.java:4578:24:4578:60 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4578:16:4578:60 | (...)... : Object[] [[]] : String | provenance | | -| Test.java:4578:44:4578:59 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | -| Test.java:4578:44:4578:59 | (...)... : String | Test.java:4578:24:4578:60 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | -| Test.java:4578:52:4578:59 | source(...) : Object | Test.java:4578:44:4578:59 | (...)... : String | provenance | | -| Test.java:4579:10:4579:33 | new ArrayIterator<>(...) : ArrayIterator [] : String | Test.java:4580:20:4580:22 | out : ArrayIterator [] : String | provenance | | -| Test.java:4579:28:4579:29 | in : Object[] [[]] : String | Test.java:4579:10:4579:33 | new ArrayIterator<>(...) : ArrayIterator [] : String | provenance | MaD:129 | -| Test.java:4580:20:4580:22 | out : ArrayIterator [] : String | Test.java:231:19:231:32 | it : ArrayIterator [] : String | provenance | | -| Test.java:4580:20:4580:22 | out : ArrayIterator [] : String | Test.java:4580:9:4580:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4585:16:4585:60 | (...)... : Object[] [[]] : String | Test.java:4586:28:4586:29 | in : Object[] [[]] : String | provenance | | -| Test.java:4585:24:4585:60 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4585:16:4585:60 | (...)... : Object[] [[]] : String | provenance | | -| Test.java:4585:44:4585:59 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | -| Test.java:4585:44:4585:59 | (...)... : String | Test.java:4585:24:4585:60 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | -| Test.java:4585:52:4585:59 | source(...) : Object | Test.java:4585:44:4585:59 | (...)... : String | provenance | | -| Test.java:4586:10:4586:30 | new ArrayIterator<>(...) : ArrayIterator [] : String | Test.java:4587:20:4587:22 | out : ArrayIterator [] : String | provenance | | -| Test.java:4586:28:4586:29 | in : Object[] [[]] : String | Test.java:4586:10:4586:30 | new ArrayIterator<>(...) : ArrayIterator [] : String | provenance | MaD:129 | -| Test.java:4587:20:4587:22 | out : ArrayIterator [] : String | Test.java:231:19:231:32 | it : ArrayIterator [] : String | provenance | | -| Test.java:4587:20:4587:22 | out : ArrayIterator [] : String | Test.java:4587:9:4587:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4592:23:4592:86 | new ArrayIterator<>(...) : ArrayIterator [] : String | Test.java:4593:20:4593:21 | in : ArrayIterator [] : String | provenance | | -| Test.java:4592:41:4592:85 | (...)... : Object[] [[]] : String | Test.java:4592:23:4592:86 | new ArrayIterator<>(...) : ArrayIterator [] : String | provenance | MaD:129 | -| Test.java:4592:49:4592:85 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4592:41:4592:85 | (...)... : Object[] [[]] : String | provenance | | -| Test.java:4592:69:4592:84 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | -| Test.java:4592:69:4592:84 | (...)... : String | Test.java:4592:49:4592:85 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | -| Test.java:4592:77:4592:84 | source(...) : Object | Test.java:4592:69:4592:84 | (...)... : String | provenance | | -| Test.java:4593:10:4593:32 | (...)... : String[] [[]] : String | Test.java:4594:25:4594:27 | out : String[] [[]] : String | provenance | | -| Test.java:4593:20:4593:21 | in : ArrayIterator [] : String | Test.java:4593:20:4593:32 | getArray(...) : Object [[]] : String | provenance | MaD:130 | -| Test.java:4593:20:4593:32 | getArray(...) : Object [[]] : String | Test.java:4593:10:4593:32 | (...)... : String[] [[]] : String | provenance | | -| Test.java:4594:25:4594:27 | out : String[] [[]] : String | Test.java:229:24:229:32 | array : String[] [[]] : String | provenance | | -| Test.java:4594:25:4594:27 | out : String[] [[]] : String | Test.java:4594:9:4594:28 | getArrayElement(...) | provenance | | -| Test.java:4599:16:4599:60 | (...)... : Object[] [[]] : String | Test.java:4600:32:4600:33 | in : Object[] [[]] : String | provenance | | -| Test.java:4599:24:4599:60 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4599:16:4599:60 | (...)... : Object[] [[]] : String | provenance | | -| Test.java:4599:44:4599:59 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | -| Test.java:4599:44:4599:59 | (...)... : String | Test.java:4599:24:4599:60 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | -| Test.java:4599:52:4599:59 | source(...) : Object | Test.java:4599:44:4599:59 | (...)... : String | provenance | | -| Test.java:4600:10:4600:40 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | Test.java:4601:20:4601:22 | out : ArrayListIterator [] : String | provenance | | -| Test.java:4600:32:4600:33 | in : Object[] [[]] : String | Test.java:4600:10:4600:40 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | provenance | MaD:131 | -| Test.java:4601:20:4601:22 | out : ArrayListIterator [] : String | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | provenance | | -| Test.java:4601:20:4601:22 | out : ArrayListIterator [] : String | Test.java:4601:9:4601:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4606:16:4606:60 | (...)... : Object[] [[]] : String | Test.java:4607:32:4607:33 | in : Object[] [[]] : String | provenance | | -| Test.java:4606:24:4606:60 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4606:16:4606:60 | (...)... : Object[] [[]] : String | provenance | | -| Test.java:4606:44:4606:59 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | -| Test.java:4606:44:4606:59 | (...)... : String | Test.java:4606:24:4606:60 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | -| Test.java:4606:52:4606:59 | source(...) : Object | Test.java:4606:44:4606:59 | (...)... : String | provenance | | -| Test.java:4607:10:4607:37 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | Test.java:4608:20:4608:22 | out : ArrayListIterator [] : String | provenance | | -| Test.java:4607:32:4607:33 | in : Object[] [[]] : String | Test.java:4607:10:4607:37 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | provenance | MaD:131 | -| Test.java:4608:20:4608:22 | out : ArrayListIterator [] : String | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | provenance | | -| Test.java:4608:20:4608:22 | out : ArrayListIterator [] : String | Test.java:4608:9:4608:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4613:16:4613:60 | (...)... : Object[] [[]] : String | Test.java:4614:32:4614:33 | in : Object[] [[]] : String | provenance | | -| Test.java:4613:24:4613:60 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4613:16:4613:60 | (...)... : Object[] [[]] : String | provenance | | -| Test.java:4613:44:4613:59 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | -| Test.java:4613:44:4613:59 | (...)... : String | Test.java:4613:24:4613:60 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | -| Test.java:4613:52:4613:59 | source(...) : Object | Test.java:4613:44:4613:59 | (...)... : String | provenance | | -| Test.java:4614:10:4614:34 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | Test.java:4615:20:4615:22 | out : ArrayListIterator [] : String | provenance | | -| Test.java:4614:32:4614:33 | in : Object[] [[]] : String | Test.java:4614:10:4614:34 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | provenance | MaD:131 | -| Test.java:4615:20:4615:22 | out : ArrayListIterator [] : String | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | provenance | | -| Test.java:4615:20:4615:22 | out : ArrayListIterator [] : String | Test.java:4615:9:4615:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4620:18:4620:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4621:30:4621:31 | in : ListIterator [] : String | provenance | | -| Test.java:4620:45:4620:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4620:45:4620:60 | (...)... : String | Test.java:4620:18:4620:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4620:53:4620:60 | source(...) : Object | Test.java:4620:45:4620:60 | (...)... : String | provenance | | -| Test.java:4621:10:4621:40 | new BoundedIterator<>(...) : BoundedIterator [] : String | Test.java:4622:20:4622:22 | out : BoundedIterator [] : String | provenance | | -| Test.java:4621:30:4621:31 | in : ListIterator [] : String | Test.java:4621:10:4621:40 | new BoundedIterator<>(...) : BoundedIterator [] : String | provenance | MaD:132 | -| Test.java:4622:20:4622:22 | out : BoundedIterator [] : String | Test.java:231:19:231:32 | it : BoundedIterator [] : String | provenance | | -| Test.java:4622:20:4622:22 | out : BoundedIterator [] : String | Test.java:4622:9:4622:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4627:20:4627:72 | of(...) : List [, ] : String | Test.java:4628:50:4628:51 | in : List [, ] : String | provenance | | -| Test.java:4627:28:4627:71 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4627:20:4627:72 | of(...) : List [, ] : String | provenance | MaD:7 | -| Test.java:4627:55:4627:70 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4627:55:4627:70 | (...)... : String | Test.java:4627:28:4627:71 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4627:63:4627:70 | source(...) : Object | Test.java:4627:55:4627:70 | (...)... : String | provenance | | -| Test.java:4628:10:4628:52 | new CollatingIterator<>(...) : CollatingIterator [] : String | Test.java:4629:20:4629:22 | out : CollatingIterator [] : String | provenance | | -| Test.java:4628:50:4628:51 | in : List [, ] : String | Test.java:4628:10:4628:52 | new CollatingIterator<>(...) : CollatingIterator [] : String | provenance | MaD:133 | -| Test.java:4629:20:4629:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | provenance | | -| Test.java:4629:20:4629:22 | out : CollatingIterator [] : String | Test.java:4629:9:4629:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4634:18:4634:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4635:38:4635:39 | in : ListIterator [] : String | provenance | | -| Test.java:4634:45:4634:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4634:45:4634:60 | (...)... : String | Test.java:4634:18:4634:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4634:53:4634:60 | source(...) : Object | Test.java:4634:45:4634:60 | (...)... : String | provenance | | -| Test.java:4635:10:4635:46 | new CollatingIterator<>(...) : CollatingIterator [] : String | Test.java:4636:20:4636:22 | out : CollatingIterator [] : String | provenance | | -| Test.java:4635:38:4635:39 | in : ListIterator [] : String | Test.java:4635:10:4635:46 | new CollatingIterator<>(...) : CollatingIterator [] : String | provenance | MaD:134 | -| Test.java:4636:20:4636:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | provenance | | -| Test.java:4636:20:4636:22 | out : CollatingIterator [] : String | Test.java:4636:9:4636:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4641:18:4641:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4642:44:4642:45 | in : ListIterator [] : String | provenance | | -| Test.java:4641:45:4641:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4641:45:4641:60 | (...)... : String | Test.java:4641:18:4641:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4641:53:4641:60 | source(...) : Object | Test.java:4641:45:4641:60 | (...)... : String | provenance | | -| Test.java:4642:10:4642:46 | new CollatingIterator<>(...) : CollatingIterator [] : String | Test.java:4643:20:4643:22 | out : CollatingIterator [] : String | provenance | | -| Test.java:4642:44:4642:45 | in : ListIterator [] : String | Test.java:4642:10:4642:46 | new CollatingIterator<>(...) : CollatingIterator [] : String | provenance | MaD:135 | -| Test.java:4643:20:4643:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | provenance | | -| Test.java:4643:20:4643:22 | out : CollatingIterator [] : String | Test.java:4643:9:4643:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4648:20:4648:79 | {...} : Iterator[] [[], ] : String | Test.java:4649:50:4649:51 | in : Iterator[] [[], ] : String | provenance | | -| Test.java:4648:35:4648:78 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4648:20:4648:79 | {...} : Iterator[] [[], ] : String | provenance | | -| Test.java:4648:62:4648:77 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4648:62:4648:77 | (...)... : String | Test.java:4648:35:4648:78 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4648:70:4648:77 | source(...) : Object | Test.java:4648:62:4648:77 | (...)... : String | provenance | | -| Test.java:4649:10:4649:52 | new CollatingIterator<>(...) : CollatingIterator [] : String | Test.java:4650:20:4650:22 | out : CollatingIterator [] : String | provenance | | -| Test.java:4649:50:4649:51 | in : Iterator[] [[], ] : String | Test.java:4649:10:4649:52 | new CollatingIterator<>(...) : CollatingIterator [] : String | provenance | MaD:136 | -| Test.java:4650:20:4650:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | provenance | | -| Test.java:4650:20:4650:22 | out : CollatingIterator [] : String | Test.java:4650:9:4650:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4655:18:4655:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4656:20:4656:21 | in : ListIterator [] : String | provenance | | -| Test.java:4655:45:4655:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4655:45:4655:60 | (...)... : String | Test.java:4655:18:4655:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4655:53:4655:60 | source(...) : Object | Test.java:4655:45:4655:60 | (...)... : String | provenance | | -| Test.java:4656:4:4656:6 | out [post update] : CollatingIterator [] : String | Test.java:4657:20:4657:22 | out : CollatingIterator [] : String | provenance | | -| Test.java:4656:20:4656:21 | in : ListIterator [] : String | Test.java:4656:4:4656:6 | out [post update] : CollatingIterator [] : String | provenance | MaD:137 | -| Test.java:4657:20:4657:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | provenance | | -| Test.java:4657:20:4657:22 | out : CollatingIterator [] : String | Test.java:4657:9:4657:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4662:27:4662:120 | new CollatingIterator<>(...) : CollatingIterator [] : String | Test.java:4663:10:4663:11 | in : CollatingIterator [] : String | provenance | | -| Test.java:4662:67:4662:119 | of(...) : List [, ] : String | Test.java:4662:27:4662:120 | new CollatingIterator<>(...) : CollatingIterator [] : String | provenance | MaD:133 | -| Test.java:4662:75:4662:118 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4662:67:4662:119 | of(...) : List [, ] : String | provenance | MaD:7 | -| Test.java:4662:102:4662:117 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4662:102:4662:117 | (...)... : String | Test.java:4662:75:4662:118 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4662:110:4662:117 | source(...) : Object | Test.java:4662:102:4662:117 | (...)... : String | provenance | | -| Test.java:4663:10:4663:11 | in : CollatingIterator [] : String | Test.java:4663:10:4663:26 | getIterators(...) : List [, ] : String | provenance | MaD:138 | -| Test.java:4663:10:4663:26 | getIterators(...) : List [, ] : String | Test.java:4664:31:4664:33 | out : List [, ] : String | provenance | | -| Test.java:4664:20:4664:34 | getElement(...) : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:4664:20:4664:34 | getElement(...) : Iterator [] : String | Test.java:4664:9:4664:35 | getElement(...) | provenance | MaD:6 | -| Test.java:4664:31:4664:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | provenance | | -| Test.java:4664:31:4664:33 | out : List [, ] : String | Test.java:4664:20:4664:34 | getElement(...) : Iterator [] : String | provenance | MaD:3 | -| Test.java:4669:18:4669:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4670:23:4670:24 | in : ListIterator [] : String | provenance | | -| Test.java:4669:45:4669:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4669:45:4669:60 | (...)... : String | Test.java:4669:18:4669:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4669:53:4669:60 | source(...) : Object | Test.java:4669:45:4669:60 | (...)... : String | provenance | | -| Test.java:4670:4:4670:6 | out [post update] : CollatingIterator [] : String | Test.java:4671:20:4671:22 | out : CollatingIterator [] : String | provenance | | -| Test.java:4670:23:4670:24 | in : ListIterator [] : String | Test.java:4670:4:4670:6 | out [post update] : CollatingIterator [] : String | provenance | MaD:139 | -| Test.java:4671:20:4671:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | provenance | | -| Test.java:4671:20:4671:22 | out : CollatingIterator [] : String | Test.java:4671:9:4671:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4676:21:4676:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:4677:34:4677:35 | in : IteratorEnumeration [] : String | provenance | | -| Test.java:4676:47:4676:62 | (...)... : String | Test.java:256:47:256:55 | element : String | provenance | | -| Test.java:4676:47:4676:62 | (...)... : String | Test.java:4676:21:4676:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | -| Test.java:4676:55:4676:62 | source(...) : Object | Test.java:4676:47:4676:62 | (...)... : String | provenance | | -| Test.java:4677:10:4677:42 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | Test.java:4678:20:4678:22 | out : EnumerationIterator [] : String | provenance | | -| Test.java:4677:34:4677:35 | in : IteratorEnumeration [] : String | Test.java:4677:10:4677:42 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | provenance | MaD:140 | -| Test.java:4678:20:4678:22 | out : EnumerationIterator [] : String | Test.java:231:19:231:32 | it : EnumerationIterator [] : String | provenance | | -| Test.java:4678:20:4678:22 | out : EnumerationIterator [] : String | Test.java:4678:9:4678:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4683:21:4683:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:4684:34:4684:35 | in : IteratorEnumeration [] : String | provenance | | -| Test.java:4683:47:4683:62 | (...)... : String | Test.java:256:47:256:55 | element : String | provenance | | -| Test.java:4683:47:4683:62 | (...)... : String | Test.java:4683:21:4683:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | -| Test.java:4683:55:4683:62 | source(...) : Object | Test.java:4683:47:4683:62 | (...)... : String | provenance | | -| Test.java:4684:10:4684:36 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | Test.java:4685:20:4685:22 | out : EnumerationIterator [] : String | provenance | | -| Test.java:4684:34:4684:35 | in : IteratorEnumeration [] : String | Test.java:4684:10:4684:36 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | provenance | MaD:140 | -| Test.java:4685:20:4685:22 | out : EnumerationIterator [] : String | Test.java:231:19:231:32 | it : EnumerationIterator [] : String | provenance | | -| Test.java:4685:20:4685:22 | out : EnumerationIterator [] : String | Test.java:4685:9:4685:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4690:29:4690:96 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | Test.java:4691:10:4691:11 | in : EnumerationIterator [] : String | provenance | | -| Test.java:4690:53:4690:95 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:4690:29:4690:96 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | provenance | MaD:140 | -| Test.java:4690:79:4690:94 | (...)... : String | Test.java:256:47:256:55 | element : String | provenance | | -| Test.java:4690:79:4690:94 | (...)... : String | Test.java:4690:53:4690:95 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | -| Test.java:4690:87:4690:94 | source(...) : Object | Test.java:4690:79:4690:94 | (...)... : String | provenance | | -| Test.java:4691:10:4691:11 | in : EnumerationIterator [] : String | Test.java:4691:10:4691:28 | getEnumeration(...) : Enumeration [] : String | provenance | MaD:141 | -| Test.java:4691:10:4691:28 | getEnumeration(...) : Enumeration [] : String | Test.java:4692:20:4692:22 | out : Enumeration [] : String | provenance | | -| Test.java:4692:20:4692:22 | out : Enumeration [] : String | Test.java:234:19:234:42 | container : Enumeration [] : String | provenance | | -| Test.java:4692:20:4692:22 | out : Enumeration [] : String | Test.java:4692:9:4692:23 | getElement(...) | provenance | MaD:5 | -| Test.java:4697:21:4697:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:4698:23:4698:24 | in : IteratorEnumeration [] : String | provenance | | -| Test.java:4697:47:4697:62 | (...)... : String | Test.java:256:47:256:55 | element : String | provenance | | -| Test.java:4697:47:4697:62 | (...)... : String | Test.java:4697:21:4697:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | -| Test.java:4697:55:4697:62 | source(...) : Object | Test.java:4697:47:4697:62 | (...)... : String | provenance | | -| Test.java:4698:4:4698:6 | out [post update] : EnumerationIterator [] : String | Test.java:4699:20:4699:22 | out : EnumerationIterator [] : String | provenance | | -| Test.java:4698:23:4698:24 | in : IteratorEnumeration [] : String | Test.java:4698:4:4698:6 | out [post update] : EnumerationIterator [] : String | provenance | MaD:142 | -| Test.java:4699:20:4699:22 | out : EnumerationIterator [] : String | Test.java:231:19:231:32 | it : EnumerationIterator [] : String | provenance | | -| Test.java:4699:20:4699:22 | out : EnumerationIterator [] : String | Test.java:4699:9:4699:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4704:18:4704:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4705:29:4705:30 | in : ListIterator [] : String | provenance | | -| Test.java:4704:45:4704:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4704:45:4704:60 | (...)... : String | Test.java:4704:18:4704:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4704:53:4704:60 | source(...) : Object | Test.java:4704:45:4704:60 | (...)... : String | provenance | | -| Test.java:4705:10:4705:37 | new FilterIterator<>(...) : FilterIterator [] : String | Test.java:4706:20:4706:22 | out : FilterIterator [] : String | provenance | | -| Test.java:4705:29:4705:30 | in : ListIterator [] : String | Test.java:4705:10:4705:37 | new FilterIterator<>(...) : FilterIterator [] : String | provenance | MaD:143 | -| Test.java:4706:20:4706:22 | out : FilterIterator [] : String | Test.java:231:19:231:32 | it : FilterIterator [] : String | provenance | | -| Test.java:4706:20:4706:22 | out : FilterIterator [] : String | Test.java:4706:9:4706:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4711:18:4711:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4712:29:4712:30 | in : ListIterator [] : String | provenance | | -| Test.java:4711:45:4711:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4711:45:4711:60 | (...)... : String | Test.java:4711:18:4711:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4711:53:4711:60 | source(...) : Object | Test.java:4711:45:4711:60 | (...)... : String | provenance | | -| Test.java:4712:10:4712:31 | new FilterIterator<>(...) : FilterIterator [] : String | Test.java:4713:20:4713:22 | out : FilterIterator [] : String | provenance | | -| Test.java:4712:29:4712:30 | in : ListIterator [] : String | Test.java:4712:10:4712:31 | new FilterIterator<>(...) : FilterIterator [] : String | provenance | MaD:143 | -| Test.java:4713:20:4713:22 | out : FilterIterator [] : String | Test.java:231:19:231:32 | it : FilterIterator [] : String | provenance | | -| Test.java:4713:20:4713:22 | out : FilterIterator [] : String | Test.java:4713:9:4713:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4718:24:4718:87 | new FilterIterator<>(...) : FilterIterator [] : String | Test.java:4719:10:4719:11 | in : FilterIterator [] : String | provenance | | -| Test.java:4718:43:4718:86 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4718:24:4718:87 | new FilterIterator<>(...) : FilterIterator [] : String | provenance | MaD:143 | -| Test.java:4718:70:4718:85 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4718:70:4718:85 | (...)... : String | Test.java:4718:43:4718:86 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4718:78:4718:85 | source(...) : Object | Test.java:4718:70:4718:85 | (...)... : String | provenance | | -| Test.java:4719:10:4719:11 | in : FilterIterator [] : String | Test.java:4719:10:4719:25 | getIterator(...) : Iterator [] : String | provenance | MaD:144 | -| Test.java:4719:10:4719:25 | getIterator(...) : Iterator [] : String | Test.java:4720:20:4720:22 | out : Iterator [] : String | provenance | | -| Test.java:4720:20:4720:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:4720:20:4720:22 | out : Iterator [] : String | Test.java:4720:9:4720:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4725:18:4725:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4726:20:4726:21 | in : ListIterator [] : String | provenance | | -| Test.java:4725:45:4725:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4725:45:4725:60 | (...)... : String | Test.java:4725:18:4725:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4725:53:4725:60 | source(...) : Object | Test.java:4725:45:4725:60 | (...)... : String | provenance | | -| Test.java:4726:4:4726:6 | out [post update] : FilterIterator [] : String | Test.java:4727:20:4727:22 | out : FilterIterator [] : String | provenance | | -| Test.java:4726:20:4726:21 | in : ListIterator [] : String | Test.java:4726:4:4726:6 | out [post update] : FilterIterator [] : String | provenance | MaD:145 | -| Test.java:4727:20:4727:22 | out : FilterIterator [] : String | Test.java:231:19:231:32 | it : FilterIterator [] : String | provenance | | -| Test.java:4727:20:4727:22 | out : FilterIterator [] : String | Test.java:4727:9:4727:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4732:22:4732:65 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4733:33:4733:34 | in : ListIterator [] : String | provenance | | -| Test.java:4732:49:4732:64 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4732:49:4732:64 | (...)... : String | Test.java:4732:22:4732:65 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4732:57:4732:64 | source(...) : Object | Test.java:4732:49:4732:64 | (...)... : String | provenance | | -| Test.java:4733:10:4733:35 | new FilterListIterator<>(...) : FilterListIterator [] : String | Test.java:4734:20:4734:22 | out : FilterListIterator [] : String | provenance | | -| Test.java:4733:33:4733:34 | in : ListIterator [] : String | Test.java:4733:10:4733:35 | new FilterListIterator<>(...) : FilterListIterator [] : String | provenance | MaD:146 | -| Test.java:4734:20:4734:22 | out : FilterListIterator [] : String | Test.java:231:19:231:32 | it : FilterListIterator [] : String | provenance | | -| Test.java:4734:20:4734:22 | out : FilterListIterator [] : String | Test.java:4734:9:4734:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4739:22:4739:65 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4740:33:4740:34 | in : ListIterator [] : String | provenance | | -| Test.java:4739:49:4739:64 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4739:49:4739:64 | (...)... : String | Test.java:4739:22:4739:65 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4739:57:4739:64 | source(...) : Object | Test.java:4739:49:4739:64 | (...)... : String | provenance | | -| Test.java:4740:10:4740:41 | new FilterListIterator<>(...) : FilterListIterator [] : String | Test.java:4741:20:4741:22 | out : FilterListIterator [] : String | provenance | | -| Test.java:4740:33:4740:34 | in : ListIterator [] : String | Test.java:4740:10:4740:41 | new FilterListIterator<>(...) : FilterListIterator [] : String | provenance | MaD:147 | -| Test.java:4741:20:4741:22 | out : FilterListIterator [] : String | Test.java:231:19:231:32 | it : FilterListIterator [] : String | provenance | | -| Test.java:4741:20:4741:22 | out : FilterListIterator [] : String | Test.java:4741:9:4741:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4746:28:4746:95 | new FilterListIterator<>(...) : FilterListIterator [] : String | Test.java:4747:10:4747:11 | in : FilterListIterator [] : String | provenance | | -| Test.java:4746:51:4746:94 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4746:28:4746:95 | new FilterListIterator<>(...) : FilterListIterator [] : String | provenance | MaD:146 | -| Test.java:4746:78:4746:93 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4746:78:4746:93 | (...)... : String | Test.java:4746:51:4746:94 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4746:86:4746:93 | source(...) : Object | Test.java:4746:78:4746:93 | (...)... : String | provenance | | -| Test.java:4747:10:4747:11 | in : FilterListIterator [] : String | Test.java:4747:10:4747:29 | getListIterator(...) : ListIterator [] : String | provenance | MaD:148 | -| Test.java:4747:10:4747:29 | getListIterator(...) : ListIterator [] : String | Test.java:4748:20:4748:22 | out : ListIterator [] : String | provenance | | -| Test.java:4748:20:4748:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | provenance | | -| Test.java:4748:20:4748:22 | out : ListIterator [] : String | Test.java:4748:9:4748:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4753:22:4753:65 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4754:24:4754:25 | in : ListIterator [] : String | provenance | | -| Test.java:4753:49:4753:64 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4753:49:4753:64 | (...)... : String | Test.java:4753:22:4753:65 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4753:57:4753:64 | source(...) : Object | Test.java:4753:49:4753:64 | (...)... : String | provenance | | -| Test.java:4754:4:4754:6 | out [post update] : FilterListIterator [] : String | Test.java:4755:20:4755:22 | out : FilterListIterator [] : String | provenance | | -| Test.java:4754:24:4754:25 | in : ListIterator [] : String | Test.java:4754:4:4754:6 | out [post update] : FilterListIterator [] : String | provenance | MaD:149 | -| Test.java:4755:20:4755:22 | out : FilterListIterator [] : String | Test.java:231:19:231:32 | it : FilterListIterator [] : String | provenance | | -| Test.java:4755:20:4755:22 | out : FilterListIterator [] : String | Test.java:4755:9:4755:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4760:20:4760:86 | newTreeBagWithElement(...) : TreeBag [, ] : String | Test.java:4761:28:4761:29 | in : TreeBag [, ] : String | provenance | | -| Test.java:4760:42:4760:85 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:267:39:267:47 | element : ListIterator [] : String | provenance | | -| Test.java:4760:42:4760:85 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4760:20:4760:86 | newTreeBagWithElement(...) : TreeBag [, ] : String | provenance | MaD:4 | -| Test.java:4760:42:4760:85 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4760:20:4760:86 | newTreeBagWithElement(...) : TreeBag [, ] : String | provenance | MaD:470 | -| Test.java:4760:69:4760:84 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4760:69:4760:84 | (...)... : String | Test.java:4760:42:4760:85 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4760:77:4760:84 | source(...) : Object | Test.java:4760:69:4760:84 | (...)... : String | provenance | | -| Test.java:4761:10:4761:30 | new IteratorChain<>(...) : IteratorChain [] : String | Test.java:4762:20:4762:22 | out : IteratorChain [] : String | provenance | | -| Test.java:4761:28:4761:29 | in : TreeBag [, ] : String | Test.java:4761:10:4761:30 | new IteratorChain<>(...) : IteratorChain [] : String | provenance | MaD:150 | -| Test.java:4762:20:4762:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | provenance | | -| Test.java:4762:20:4762:22 | out : IteratorChain [] : String | Test.java:4762:9:4762:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4767:18:4767:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4768:28:4768:29 | in : ListIterator [] : String | provenance | | -| Test.java:4767:45:4767:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4767:45:4767:60 | (...)... : String | Test.java:4767:18:4767:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4767:53:4767:60 | source(...) : Object | Test.java:4767:45:4767:60 | (...)... : String | provenance | | -| Test.java:4768:10:4768:30 | new IteratorChain<>(...) : IteratorChain [] : String | Test.java:4769:20:4769:22 | out : IteratorChain [] : String | provenance | | -| Test.java:4768:28:4768:29 | in : ListIterator [] : String | Test.java:4768:10:4768:30 | new IteratorChain<>(...) : IteratorChain [] : String | provenance | MaD:151 | -| Test.java:4769:20:4769:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | provenance | | -| Test.java:4769:20:4769:22 | out : IteratorChain [] : String | Test.java:4769:9:4769:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4774:18:4774:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4775:28:4775:29 | in : ListIterator [] : String | provenance | | -| Test.java:4774:45:4774:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4774:45:4774:60 | (...)... : String | Test.java:4774:18:4774:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4774:53:4774:60 | source(...) : Object | Test.java:4774:45:4774:60 | (...)... : String | provenance | | -| Test.java:4775:10:4775:36 | new IteratorChain<>(...) : IteratorChain [] : String | Test.java:4776:20:4776:22 | out : IteratorChain [] : String | provenance | | -| Test.java:4775:28:4775:29 | in : ListIterator [] : String | Test.java:4775:10:4775:36 | new IteratorChain<>(...) : IteratorChain [] : String | provenance | MaD:152 | -| Test.java:4776:20:4776:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | provenance | | -| Test.java:4776:20:4776:22 | out : IteratorChain [] : String | Test.java:4776:9:4776:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4781:18:4781:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4782:34:4782:35 | in : ListIterator [] : String | provenance | | -| Test.java:4781:45:4781:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4781:45:4781:60 | (...)... : String | Test.java:4781:18:4781:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4781:53:4781:60 | source(...) : Object | Test.java:4781:45:4781:60 | (...)... : String | provenance | | -| Test.java:4782:10:4782:36 | new IteratorChain<>(...) : IteratorChain [] : String | Test.java:4783:20:4783:22 | out : IteratorChain [] : String | provenance | | -| Test.java:4782:34:4782:35 | in : ListIterator [] : String | Test.java:4782:10:4782:36 | new IteratorChain<>(...) : IteratorChain [] : String | provenance | MaD:153 | -| Test.java:4783:20:4783:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | provenance | | -| Test.java:4783:20:4783:22 | out : IteratorChain [] : String | Test.java:4783:9:4783:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4788:20:4788:79 | {...} : Iterator[] [[], ] : String | Test.java:4789:28:4789:29 | in : Iterator[] [[], ] : String | provenance | | -| Test.java:4788:35:4788:78 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4788:20:4788:79 | {...} : Iterator[] [[], ] : String | provenance | | -| Test.java:4788:62:4788:77 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4788:62:4788:77 | (...)... : String | Test.java:4788:35:4788:78 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4788:70:4788:77 | source(...) : Object | Test.java:4788:62:4788:77 | (...)... : String | provenance | | -| Test.java:4789:10:4789:30 | new IteratorChain<>(...) : IteratorChain [] : String | Test.java:4790:20:4790:22 | out : IteratorChain [] : String | provenance | | -| Test.java:4789:28:4789:29 | in : Iterator[] [[], ] : String | Test.java:4789:10:4789:30 | new IteratorChain<>(...) : IteratorChain [] : String | provenance | MaD:154 | -| Test.java:4790:20:4790:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | provenance | | -| Test.java:4790:20:4790:22 | out : IteratorChain [] : String | Test.java:4790:9:4790:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4795:18:4795:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4796:20:4796:21 | in : ListIterator [] : String | provenance | | -| Test.java:4795:45:4795:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4795:45:4795:60 | (...)... : String | Test.java:4795:18:4795:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4795:53:4795:60 | source(...) : Object | Test.java:4795:45:4795:60 | (...)... : String | provenance | | -| Test.java:4796:4:4796:6 | out [post update] : IteratorChain [] : String | Test.java:4797:20:4797:22 | out : IteratorChain [] : String | provenance | | -| Test.java:4796:20:4796:21 | in : ListIterator [] : String | Test.java:4796:4:4796:6 | out [post update] : IteratorChain [] : String | provenance | MaD:155 | -| Test.java:4797:20:4797:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | provenance | | -| Test.java:4797:20:4797:22 | out : IteratorChain [] : String | Test.java:4797:9:4797:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4802:18:4802:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4803:34:4803:35 | in : ListIterator [] : String | provenance | | -| Test.java:4802:45:4802:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4802:45:4802:60 | (...)... : String | Test.java:4802:18:4802:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4802:53:4802:60 | source(...) : Object | Test.java:4802:45:4802:60 | (...)... : String | provenance | | -| Test.java:4803:10:4803:36 | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | Test.java:4804:20:4804:22 | out : IteratorEnumeration [] : String | provenance | | -| Test.java:4803:34:4803:35 | in : ListIterator [] : String | Test.java:4803:10:4803:36 | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | provenance | MaD:156 | -| Test.java:4804:20:4804:22 | out : IteratorEnumeration [] : String | Test.java:234:19:234:42 | container : IteratorEnumeration [] : String | provenance | | -| Test.java:4804:20:4804:22 | out : IteratorEnumeration [] : String | Test.java:4804:9:4804:23 | getElement(...) | provenance | MaD:5 | -| Test.java:4809:29:4809:97 | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | Test.java:4810:10:4810:11 | in : IteratorEnumeration [] : String | provenance | | -| Test.java:4809:53:4809:96 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4809:29:4809:97 | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | provenance | MaD:156 | -| Test.java:4809:80:4809:95 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4809:80:4809:95 | (...)... : String | Test.java:4809:53:4809:96 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4809:88:4809:95 | source(...) : Object | Test.java:4809:80:4809:95 | (...)... : String | provenance | | -| Test.java:4810:10:4810:11 | in : IteratorEnumeration [] : String | Test.java:4810:10:4810:25 | getIterator(...) : Iterator [] : String | provenance | MaD:157 | -| Test.java:4810:10:4810:25 | getIterator(...) : Iterator [] : String | Test.java:4811:20:4811:22 | out : Iterator [] : String | provenance | | -| Test.java:4811:20:4811:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:4811:20:4811:22 | out : Iterator [] : String | Test.java:4811:9:4811:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4816:18:4816:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4817:20:4817:21 | in : ListIterator [] : String | provenance | | -| Test.java:4816:45:4816:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4816:45:4816:60 | (...)... : String | Test.java:4816:18:4816:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4816:53:4816:60 | source(...) : Object | Test.java:4816:45:4816:60 | (...)... : String | provenance | | -| Test.java:4817:4:4817:6 | out [post update] : IteratorEnumeration [] : String | Test.java:4818:20:4818:22 | out : IteratorEnumeration [] : String | provenance | | -| Test.java:4817:20:4817:21 | in : ListIterator [] : String | Test.java:4817:4:4817:6 | out [post update] : IteratorEnumeration [] : String | provenance | MaD:158 | -| Test.java:4818:20:4818:22 | out : IteratorEnumeration [] : String | Test.java:234:19:234:42 | container : IteratorEnumeration [] : String | provenance | | -| Test.java:4818:20:4818:22 | out : IteratorEnumeration [] : String | Test.java:4818:9:4818:23 | getElement(...) | provenance | MaD:5 | -| Test.java:4823:18:4823:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4824:31:4824:32 | in : ListIterator [] : String | provenance | | -| Test.java:4823:45:4823:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4823:45:4823:60 | (...)... : String | Test.java:4823:18:4823:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4823:53:4823:60 | source(...) : Object | Test.java:4823:45:4823:60 | (...)... : String | provenance | | -| Test.java:4824:10:4824:40 | new IteratorIterable<>(...) : IteratorIterable [] : String | Test.java:4825:20:4825:22 | out : IteratorIterable [] : String | provenance | | -| Test.java:4824:31:4824:32 | in : ListIterator [] : String | Test.java:4824:10:4824:40 | new IteratorIterable<>(...) : IteratorIterable [] : String | provenance | MaD:159 | -| Test.java:4825:20:4825:22 | out : IteratorIterable [] : String | Test.java:230:19:230:32 | it : IteratorIterable [] : String | provenance | | -| Test.java:4825:20:4825:22 | out : IteratorIterable [] : String | Test.java:4825:9:4825:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4830:18:4830:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4831:31:4831:32 | in : ListIterator [] : String | provenance | | -| Test.java:4830:45:4830:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4830:45:4830:60 | (...)... : String | Test.java:4830:18:4830:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4830:53:4830:60 | source(...) : Object | Test.java:4830:45:4830:60 | (...)... : String | provenance | | -| Test.java:4831:10:4831:33 | new IteratorIterable<>(...) : IteratorIterable [] : String | Test.java:4832:20:4832:22 | out : IteratorIterable [] : String | provenance | | -| Test.java:4831:31:4831:32 | in : ListIterator [] : String | Test.java:4831:10:4831:33 | new IteratorIterable<>(...) : IteratorIterable [] : String | provenance | MaD:159 | -| Test.java:4832:20:4832:22 | out : IteratorIterable [] : String | Test.java:230:19:230:32 | it : IteratorIterable [] : String | provenance | | -| Test.java:4832:20:4832:22 | out : IteratorIterable [] : String | Test.java:4832:9:4832:23 | getElement(...) | provenance | MaD:3 | -| Test.java:4837:18:4837:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4838:34:4838:35 | in : ListIterator [] : String | provenance | | -| Test.java:4837:45:4837:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4837:45:4837:60 | (...)... : String | Test.java:4837:18:4837:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4837:53:4837:60 | source(...) : Object | Test.java:4837:45:4837:60 | (...)... : String | provenance | | -| Test.java:4838:10:4838:36 | new ListIteratorWrapper<>(...) : ListIteratorWrapper [] : String | Test.java:4839:20:4839:22 | out : ListIteratorWrapper [] : String | provenance | | -| Test.java:4838:34:4838:35 | in : ListIterator [] : String | Test.java:4838:10:4838:36 | new ListIteratorWrapper<>(...) : ListIteratorWrapper [] : String | provenance | MaD:160 | -| Test.java:4839:20:4839:22 | out : ListIteratorWrapper [] : String | Test.java:231:19:231:32 | it : ListIteratorWrapper [] : String | provenance | | -| Test.java:4839:20:4839:22 | out : ListIteratorWrapper [] : String | Test.java:4839:9:4839:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4844:20:4844:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4845:30:4845:31 | in : TreeBag [] : String | provenance | | -| Test.java:4844:42:4844:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:4844:42:4844:57 | (...)... : String | Test.java:4844:20:4844:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:4844:42:4844:57 | (...)... : String | Test.java:4844:20:4844:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:4844:50:4844:57 | source(...) : Object | Test.java:4844:42:4844:57 | (...)... : String | provenance | | -| Test.java:4845:10:4845:32 | new LoopingIterator<>(...) : LoopingIterator [] : String | Test.java:4846:20:4846:22 | out : LoopingIterator [] : String | provenance | | -| Test.java:4845:30:4845:31 | in : TreeBag [] : String | Test.java:4845:10:4845:32 | new LoopingIterator<>(...) : LoopingIterator [] : String | provenance | MaD:161 | -| Test.java:4846:20:4846:22 | out : LoopingIterator [] : String | Test.java:231:19:231:32 | it : LoopingIterator [] : String | provenance | | -| Test.java:4846:20:4846:22 | out : LoopingIterator [] : String | Test.java:4846:9:4846:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4851:14:4851:38 | of(...) : List [] : String | Test.java:4852:34:4852:35 | in : List [] : String | provenance | | -| Test.java:4851:22:4851:37 | (...)... : String | Test.java:4851:14:4851:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:4851:30:4851:37 | source(...) : Object | Test.java:4851:22:4851:37 | (...)... : String | provenance | | -| Test.java:4852:10:4852:36 | new LoopingListIterator<>(...) : LoopingListIterator [] : String | Test.java:4853:20:4853:22 | out : LoopingListIterator [] : String | provenance | | -| Test.java:4852:34:4852:35 | in : List [] : String | Test.java:4852:10:4852:36 | new LoopingListIterator<>(...) : LoopingListIterator [] : String | provenance | MaD:162 | -| Test.java:4853:20:4853:22 | out : LoopingListIterator [] : String | Test.java:231:19:231:32 | it : LoopingListIterator [] : String | provenance | | -| Test.java:4853:20:4853:22 | out : LoopingListIterator [] : String | Test.java:4853:9:4853:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4858:18:4858:47 | {...} : Object[] [[]] : String | Test.java:4859:34:4859:35 | in : Object[] [[]] : String | provenance | | -| Test.java:4858:31:4858:46 | (...)... : String | Test.java:4858:18:4858:47 | {...} : Object[] [[]] : String | provenance | | -| Test.java:4858:39:4858:46 | source(...) : Object | Test.java:4858:31:4858:46 | (...)... : String | provenance | | -| Test.java:4859:10:4859:42 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | Test.java:4860:20:4860:22 | out : ObjectArrayIterator [] : String | provenance | | -| Test.java:4859:34:4859:35 | in : Object[] [[]] : String | Test.java:4859:10:4859:42 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | provenance | MaD:163 | -| Test.java:4860:20:4860:22 | out : ObjectArrayIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayIterator [] : String | provenance | | -| Test.java:4860:20:4860:22 | out : ObjectArrayIterator [] : String | Test.java:4860:9:4860:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4865:18:4865:47 | {...} : Object[] [[]] : String | Test.java:4866:34:4866:35 | in : Object[] [[]] : String | provenance | | -| Test.java:4865:31:4865:46 | (...)... : String | Test.java:4865:18:4865:47 | {...} : Object[] [[]] : String | provenance | | -| Test.java:4865:39:4865:46 | source(...) : Object | Test.java:4865:31:4865:46 | (...)... : String | provenance | | -| Test.java:4866:10:4866:39 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | Test.java:4867:20:4867:22 | out : ObjectArrayIterator [] : String | provenance | | -| Test.java:4866:34:4866:35 | in : Object[] [[]] : String | Test.java:4866:10:4866:39 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | provenance | MaD:163 | -| Test.java:4867:20:4867:22 | out : ObjectArrayIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayIterator [] : String | provenance | | -| Test.java:4867:20:4867:22 | out : ObjectArrayIterator [] : String | Test.java:4867:9:4867:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4872:18:4872:47 | {...} : Object[] [[]] : String | Test.java:4873:34:4873:35 | in : Object[] [[]] : String | provenance | | -| Test.java:4872:31:4872:46 | (...)... : String | Test.java:4872:18:4872:47 | {...} : Object[] [[]] : String | provenance | | -| Test.java:4872:39:4872:46 | source(...) : Object | Test.java:4872:31:4872:46 | (...)... : String | provenance | | -| Test.java:4873:10:4873:36 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | Test.java:4874:20:4874:22 | out : ObjectArrayIterator [] : String | provenance | | -| Test.java:4873:34:4873:35 | in : Object[] [[]] : String | Test.java:4873:10:4873:36 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | provenance | MaD:163 | -| Test.java:4874:20:4874:22 | out : ObjectArrayIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayIterator [] : String | provenance | | -| Test.java:4874:20:4874:22 | out : ObjectArrayIterator [] : String | Test.java:4874:9:4874:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4879:29:4879:83 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | Test.java:4880:10:4880:11 | in : ObjectArrayIterator [] : String | provenance | | -| Test.java:4879:53:4879:82 | new Object[] : Object[] [[]] : String | Test.java:4879:29:4879:83 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | provenance | MaD:163 | -| Test.java:4879:53:4879:82 | {...} : Object[] [[]] : String | Test.java:4879:53:4879:82 | new Object[] : Object[] [[]] : String | provenance | | -| Test.java:4879:66:4879:81 | (...)... : String | Test.java:4879:53:4879:82 | {...} : Object[] [[]] : String | provenance | | -| Test.java:4879:74:4879:81 | source(...) : Object | Test.java:4879:66:4879:81 | (...)... : String | provenance | | -| Test.java:4880:10:4880:11 | in : ObjectArrayIterator [] : String | Test.java:4880:10:4880:22 | getArray(...) : Object[] [[]] : String | provenance | MaD:164 | -| Test.java:4880:10:4880:22 | getArray(...) : Object[] [[]] : String | Test.java:4881:25:4881:27 | out : Object[] [[]] : String | provenance | | -| Test.java:4881:25:4881:27 | out : Object[] [[]] : String | Test.java:229:24:229:32 | array : Object[] [[]] : String | provenance | | -| Test.java:4881:25:4881:27 | out : Object[] [[]] : String | Test.java:4881:9:4881:28 | getArrayElement(...) | provenance | | -| Test.java:4886:18:4886:47 | {...} : Object[] [[]] : String | Test.java:4887:38:4887:39 | in : Object[] [[]] : String | provenance | | -| Test.java:4886:31:4886:46 | (...)... : String | Test.java:4886:18:4886:47 | {...} : Object[] [[]] : String | provenance | | -| Test.java:4886:39:4886:46 | source(...) : Object | Test.java:4886:31:4886:46 | (...)... : String | provenance | | -| Test.java:4887:10:4887:46 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | Test.java:4888:20:4888:22 | out : ObjectArrayListIterator [] : String | provenance | | -| Test.java:4887:38:4887:39 | in : Object[] [[]] : String | Test.java:4887:10:4887:46 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | provenance | MaD:165 | -| Test.java:4888:20:4888:22 | out : ObjectArrayListIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayListIterator [] : String | provenance | | -| Test.java:4888:20:4888:22 | out : ObjectArrayListIterator [] : String | Test.java:4888:9:4888:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4893:18:4893:47 | {...} : Object[] [[]] : String | Test.java:4894:38:4894:39 | in : Object[] [[]] : String | provenance | | -| Test.java:4893:31:4893:46 | (...)... : String | Test.java:4893:18:4893:47 | {...} : Object[] [[]] : String | provenance | | -| Test.java:4893:39:4893:46 | source(...) : Object | Test.java:4893:31:4893:46 | (...)... : String | provenance | | -| Test.java:4894:10:4894:43 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | Test.java:4895:20:4895:22 | out : ObjectArrayListIterator [] : String | provenance | | -| Test.java:4894:38:4894:39 | in : Object[] [[]] : String | Test.java:4894:10:4894:43 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | provenance | MaD:165 | -| Test.java:4895:20:4895:22 | out : ObjectArrayListIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayListIterator [] : String | provenance | | -| Test.java:4895:20:4895:22 | out : ObjectArrayListIterator [] : String | Test.java:4895:9:4895:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4900:18:4900:47 | {...} : Object[] [[]] : String | Test.java:4901:38:4901:39 | in : Object[] [[]] : String | provenance | | -| Test.java:4900:31:4900:46 | (...)... : String | Test.java:4900:18:4900:47 | {...} : Object[] [[]] : String | provenance | | -| Test.java:4900:39:4900:46 | source(...) : Object | Test.java:4900:31:4900:46 | (...)... : String | provenance | | -| Test.java:4901:10:4901:40 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | Test.java:4902:20:4902:22 | out : ObjectArrayListIterator [] : String | provenance | | -| Test.java:4901:38:4901:39 | in : Object[] [[]] : String | Test.java:4901:10:4901:40 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | provenance | MaD:165 | -| Test.java:4902:20:4902:22 | out : ObjectArrayListIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayListIterator [] : String | provenance | | -| Test.java:4902:20:4902:22 | out : ObjectArrayListIterator [] : String | Test.java:4902:9:4902:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4907:18:4907:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4908:30:4908:31 | in : ListIterator [] : String | provenance | | -| Test.java:4907:45:4907:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4907:45:4907:60 | (...)... : String | Test.java:4907:18:4907:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4907:53:4907:60 | source(...) : Object | Test.java:4907:45:4907:60 | (...)... : String | provenance | | -| Test.java:4908:10:4908:32 | new PeekingIterator<>(...) : PeekingIterator [] : String | Test.java:4909:20:4909:22 | out : PeekingIterator [] : String | provenance | | -| Test.java:4908:30:4908:31 | in : ListIterator [] : String | Test.java:4908:10:4908:32 | new PeekingIterator<>(...) : PeekingIterator [] : String | provenance | MaD:166 | -| Test.java:4909:20:4909:22 | out : PeekingIterator [] : String | Test.java:231:19:231:32 | it : PeekingIterator [] : String | provenance | | -| Test.java:4909:20:4909:22 | out : PeekingIterator [] : String | Test.java:4909:9:4909:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4914:25:4914:89 | new PeekingIterator<>(...) : PeekingIterator [] : String | Test.java:4915:10:4915:11 | in : PeekingIterator [] : String | provenance | | -| Test.java:4914:45:4914:88 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4914:25:4914:89 | new PeekingIterator<>(...) : PeekingIterator [] : String | provenance | MaD:166 | -| Test.java:4914:72:4914:87 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4914:72:4914:87 | (...)... : String | Test.java:4914:45:4914:88 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4914:80:4914:87 | source(...) : Object | Test.java:4914:72:4914:87 | (...)... : String | provenance | | -| Test.java:4915:10:4915:11 | in : PeekingIterator [] : String | Test.java:4915:10:4915:21 | element(...) : String | provenance | MaD:167 | -| Test.java:4915:10:4915:21 | element(...) : String | Test.java:4916:9:4916:11 | out | provenance | | -| Test.java:4921:25:4921:89 | new PeekingIterator<>(...) : PeekingIterator [] : String | Test.java:4922:10:4922:11 | in : PeekingIterator [] : String | provenance | | -| Test.java:4921:45:4921:88 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4921:25:4921:89 | new PeekingIterator<>(...) : PeekingIterator [] : String | provenance | MaD:166 | -| Test.java:4921:72:4921:87 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4921:72:4921:87 | (...)... : String | Test.java:4921:45:4921:88 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4921:80:4921:87 | source(...) : Object | Test.java:4921:72:4921:87 | (...)... : String | provenance | | -| Test.java:4922:10:4922:11 | in : PeekingIterator [] : String | Test.java:4922:10:4922:18 | peek(...) : String | provenance | MaD:168 | -| Test.java:4922:10:4922:18 | peek(...) : String | Test.java:4923:9:4923:11 | out | provenance | | -| Test.java:4928:18:4928:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4929:42:4929:43 | in : ListIterator [] : String | provenance | | -| Test.java:4928:45:4928:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4928:45:4928:60 | (...)... : String | Test.java:4928:18:4928:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4928:53:4928:60 | source(...) : Object | Test.java:4928:45:4928:60 | (...)... : String | provenance | | -| Test.java:4929:10:4929:44 | peekingIterator(...) : PeekingIterator [] : String | Test.java:4930:20:4930:22 | out : PeekingIterator [] : String | provenance | | -| Test.java:4929:42:4929:43 | in : ListIterator [] : String | Test.java:4929:10:4929:44 | peekingIterator(...) : PeekingIterator [] : String | provenance | MaD:169 | -| Test.java:4930:20:4930:22 | out : PeekingIterator [] : String | Test.java:231:19:231:32 | it : PeekingIterator [] : String | provenance | | -| Test.java:4930:20:4930:22 | out : PeekingIterator [] : String | Test.java:4930:9:4930:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4935:28:4935:60 | of(...) : List [] : String | Test.java:4936:34:4936:35 | in : List [] : String | provenance | | -| Test.java:4935:44:4935:59 | (...)... : String | Test.java:4935:28:4935:60 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:4935:52:4935:59 | source(...) : Object | Test.java:4935:44:4935:59 | (...)... : String | provenance | | -| Test.java:4936:10:4936:36 | new PermutationIterator<>(...) : PermutationIterator [, ] : String | Test.java:4937:31:4937:33 | out : PermutationIterator [, ] : String | provenance | | -| Test.java:4936:34:4936:35 | in : List [] : String | Test.java:4936:10:4936:36 | new PermutationIterator<>(...) : PermutationIterator [, ] : String | provenance | MaD:170 | -| Test.java:4937:20:4937:34 | getElement(...) : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | -| Test.java:4937:20:4937:34 | getElement(...) : List [] : String | Test.java:4937:9:4937:35 | getElement(...) | provenance | MaD:3 | -| Test.java:4937:31:4937:33 | out : PermutationIterator [, ] : String | Test.java:231:19:231:32 | it : PermutationIterator [, ] : String | provenance | | -| Test.java:4937:31:4937:33 | out : PermutationIterator [, ] : String | Test.java:4937:20:4937:34 | getElement(...) : List [] : String | provenance | MaD:6 | -| Test.java:4942:18:4942:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4943:31:4943:32 | in : ListIterator [] : String | provenance | | -| Test.java:4942:45:4942:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4942:45:4942:60 | (...)... : String | Test.java:4942:18:4942:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4942:53:4942:60 | source(...) : Object | Test.java:4942:45:4942:60 | (...)... : String | provenance | | -| Test.java:4943:10:4943:33 | new PushbackIterator<>(...) : PushbackIterator [] : String | Test.java:4944:20:4944:22 | out : PushbackIterator [] : String | provenance | | -| Test.java:4943:31:4943:32 | in : ListIterator [] : String | Test.java:4943:10:4943:33 | new PushbackIterator<>(...) : PushbackIterator [] : String | provenance | MaD:171 | -| Test.java:4944:20:4944:22 | out : PushbackIterator [] : String | Test.java:231:19:231:32 | it : PushbackIterator [] : String | provenance | | -| Test.java:4944:20:4944:22 | out : PushbackIterator [] : String | Test.java:4944:9:4944:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4949:16:4949:23 | source(...) : Object | Test.java:4950:17:4950:18 | in : Object | provenance | | -| Test.java:4950:4:4950:6 | out [post update] : PushbackIterator [] : Object | Test.java:4951:20:4951:22 | out : PushbackIterator [] : Object | provenance | | -| Test.java:4950:17:4950:18 | in : Object | Test.java:4950:4:4950:6 | out [post update] : PushbackIterator [] : Object | provenance | MaD:172 | -| Test.java:4951:20:4951:22 | out : PushbackIterator [] : Object | Test.java:231:19:231:32 | it : PushbackIterator [] : Object | provenance | | -| Test.java:4951:20:4951:22 | out : PushbackIterator [] : Object | Test.java:4951:9:4951:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4956:18:4956:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4957:44:4957:45 | in : ListIterator [] : String | provenance | | -| Test.java:4956:45:4956:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4956:45:4956:60 | (...)... : String | Test.java:4956:18:4956:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4956:53:4956:60 | source(...) : Object | Test.java:4956:45:4956:60 | (...)... : String | provenance | | -| Test.java:4957:10:4957:46 | pushbackIterator(...) : PushbackIterator [] : String | Test.java:4958:20:4958:22 | out : PushbackIterator [] : String | provenance | | -| Test.java:4957:44:4957:45 | in : ListIterator [] : String | Test.java:4957:10:4957:46 | pushbackIterator(...) : PushbackIterator [] : String | provenance | MaD:173 | -| Test.java:4958:20:4958:22 | out : PushbackIterator [] : String | Test.java:231:19:231:32 | it : PushbackIterator [] : String | provenance | | -| Test.java:4958:20:4958:22 | out : PushbackIterator [] : String | Test.java:4958:9:4958:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4963:14:4963:38 | of(...) : List [] : String | Test.java:4964:34:4964:35 | in : List [] : String | provenance | | -| Test.java:4963:22:4963:37 | (...)... : String | Test.java:4963:14:4963:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:4963:30:4963:37 | source(...) : Object | Test.java:4963:22:4963:37 | (...)... : String | provenance | | -| Test.java:4964:10:4964:36 | new ReverseListIterator<>(...) : ReverseListIterator [] : String | Test.java:4965:20:4965:22 | out : ReverseListIterator [] : String | provenance | | -| Test.java:4964:34:4964:35 | in : List [] : String | Test.java:4964:10:4964:36 | new ReverseListIterator<>(...) : ReverseListIterator [] : String | provenance | MaD:174 | -| Test.java:4965:20:4965:22 | out : ReverseListIterator [] : String | Test.java:231:19:231:32 | it : ReverseListIterator [] : String | provenance | | -| Test.java:4965:20:4965:22 | out : ReverseListIterator [] : String | Test.java:4965:9:4965:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4970:16:4970:23 | source(...) : Object | Test.java:4971:32:4971:33 | in : Object | provenance | | -| Test.java:4971:10:4971:41 | new SingletonIterator<>(...) : SingletonIterator [] : Object | Test.java:4972:20:4972:22 | out : SingletonIterator [] : Object | provenance | | -| Test.java:4971:32:4971:33 | in : Object | Test.java:4971:10:4971:41 | new SingletonIterator<>(...) : SingletonIterator [] : Object | provenance | MaD:175 | -| Test.java:4972:20:4972:22 | out : SingletonIterator [] : Object | Test.java:231:19:231:32 | it : SingletonIterator [] : Object | provenance | | -| Test.java:4972:20:4972:22 | out : SingletonIterator [] : Object | Test.java:4972:9:4972:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4977:16:4977:23 | source(...) : Object | Test.java:4978:32:4978:33 | in : Object | provenance | | -| Test.java:4978:10:4978:34 | new SingletonIterator<>(...) : SingletonIterator [] : Object | Test.java:4979:20:4979:22 | out : SingletonIterator [] : Object | provenance | | -| Test.java:4978:32:4978:33 | in : Object | Test.java:4978:10:4978:34 | new SingletonIterator<>(...) : SingletonIterator [] : Object | provenance | MaD:175 | -| Test.java:4979:20:4979:22 | out : SingletonIterator [] : Object | Test.java:231:19:231:32 | it : SingletonIterator [] : Object | provenance | | -| Test.java:4979:20:4979:22 | out : SingletonIterator [] : Object | Test.java:4979:9:4979:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4984:16:4984:23 | source(...) : Object | Test.java:4985:36:4985:37 | in : Object | provenance | | -| Test.java:4985:10:4985:38 | new SingletonListIterator<>(...) : SingletonListIterator [] : Object | Test.java:4986:20:4986:22 | out : SingletonListIterator [] : Object | provenance | | -| Test.java:4985:36:4985:37 | in : Object | Test.java:4985:10:4985:38 | new SingletonListIterator<>(...) : SingletonListIterator [] : Object | provenance | MaD:176 | -| Test.java:4986:20:4986:22 | out : SingletonListIterator [] : Object | Test.java:231:19:231:32 | it : SingletonListIterator [] : Object | provenance | | -| Test.java:4986:20:4986:22 | out : SingletonListIterator [] : Object | Test.java:4986:9:4986:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4991:18:4991:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4992:31:4992:32 | in : ListIterator [] : String | provenance | | -| Test.java:4991:45:4991:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4991:45:4991:60 | (...)... : String | Test.java:4991:18:4991:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4991:53:4991:60 | source(...) : Object | Test.java:4991:45:4991:60 | (...)... : String | provenance | | -| Test.java:4992:10:4992:37 | new SkippingIterator<>(...) : SkippingIterator [] : String | Test.java:4993:20:4993:22 | out : SkippingIterator [] : String | provenance | | -| Test.java:4992:31:4992:32 | in : ListIterator [] : String | Test.java:4992:10:4992:37 | new SkippingIterator<>(...) : SkippingIterator [] : String | provenance | MaD:177 | -| Test.java:4993:20:4993:22 | out : SkippingIterator [] : String | Test.java:231:19:231:32 | it : SkippingIterator [] : String | provenance | | -| Test.java:4993:20:4993:22 | out : SkippingIterator [] : String | Test.java:4993:9:4993:23 | getElement(...) | provenance | MaD:6 | -| Test.java:4998:18:4998:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4999:35:4999:36 | in : ListIterator [] : String | provenance | | -| Test.java:4998:45:4998:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:4998:45:4998:60 | (...)... : String | Test.java:4998:18:4998:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:4998:53:4998:60 | source(...) : Object | Test.java:4998:45:4998:60 | (...)... : String | provenance | | -| Test.java:4999:10:4999:37 | new UniqueFilterIterator<>(...) : UniqueFilterIterator [] : String | Test.java:5000:20:5000:22 | out : UniqueFilterIterator [] : String | provenance | | -| Test.java:4999:35:4999:36 | in : ListIterator [] : String | Test.java:4999:10:4999:37 | new UniqueFilterIterator<>(...) : UniqueFilterIterator [] : String | provenance | MaD:178 | -| Test.java:5000:20:5000:22 | out : UniqueFilterIterator [] : String | Test.java:231:19:231:32 | it : UniqueFilterIterator [] : String | provenance | | -| Test.java:5000:20:5000:22 | out : UniqueFilterIterator [] : String | Test.java:5000:9:5000:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5005:18:5005:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5006:52:5006:53 | in : ListIterator [] : String | provenance | | -| Test.java:5005:45:5005:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:5005:45:5005:60 | (...)... : String | Test.java:5005:18:5005:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:5005:53:5005:60 | source(...) : Object | Test.java:5005:45:5005:60 | (...)... : String | provenance | | -| Test.java:5006:10:5006:54 | unmodifiableIterator(...) : Iterator [] : String | Test.java:5007:20:5007:22 | out : Iterator [] : String | provenance | | -| Test.java:5006:52:5006:53 | in : ListIterator [] : String | Test.java:5006:10:5006:54 | unmodifiableIterator(...) : Iterator [] : String | provenance | MaD:179 | -| Test.java:5007:20:5007:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:5007:20:5007:22 | out : Iterator [] : String | Test.java:5007:9:5007:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5012:22:5012:65 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5013:59:5013:60 | in : ListIterator [] : String | provenance | | -| Test.java:5012:49:5012:64 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:5012:49:5012:64 | (...)... : String | Test.java:5012:22:5012:65 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:5012:57:5012:64 | source(...) : Object | Test.java:5012:49:5012:64 | (...)... : String | provenance | | -| Test.java:5013:10:5013:61 | umodifiableListIterator(...) : ListIterator [] : String | Test.java:5014:20:5014:22 | out : ListIterator [] : String | provenance | | -| Test.java:5013:59:5013:60 | in : ListIterator [] : String | Test.java:5013:10:5013:61 | umodifiableListIterator(...) : ListIterator [] : String | provenance | MaD:180 | -| Test.java:5014:20:5014:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | provenance | | -| Test.java:5014:20:5014:22 | out : ListIterator [] : String | Test.java:5014:9:5014:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5019:21:5019:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | Test.java:5019:21:5019:74 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:562 | -| Test.java:5019:21:5019:74 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:5020:58:5020:59 | in : OrderedMapIterator [] : String | provenance | | -| Test.java:5019:44:5019:59 | (...)... : String | Test.java:276:49:276:53 | key : String | provenance | | -| Test.java:5019:44:5019:59 | (...)... : String | Test.java:5019:21:5019:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | provenance | MaD:13 | -| Test.java:5019:52:5019:59 | source(...) : Object | Test.java:5019:44:5019:59 | (...)... : String | provenance | | -| Test.java:5020:10:5020:60 | unmodifiableMapIterator(...) : MapIterator [] : String | Test.java:5021:20:5021:22 | out : MapIterator [] : String | provenance | | -| Test.java:5020:58:5020:59 | in : OrderedMapIterator [] : String | Test.java:5020:10:5020:60 | unmodifiableMapIterator(...) : MapIterator [] : String | provenance | MaD:181 | -| Test.java:5021:20:5021:22 | out : MapIterator [] : String | Test.java:231:19:231:32 | it : MapIterator [] : String | provenance | | -| Test.java:5021:20:5021:22 | out : MapIterator [] : String | Test.java:5021:9:5021:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5026:21:5026:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | Test.java:5026:21:5026:76 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:563 | -| Test.java:5026:21:5026:76 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:5027:58:5027:59 | in : OrderedMapIterator [] : String | provenance | | -| Test.java:5026:46:5026:61 | (...)... : String | Test.java:295:51:295:57 | value : String | provenance | | -| Test.java:5026:46:5026:61 | (...)... : String | Test.java:5026:21:5026:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | provenance | MaD:14 | -| Test.java:5026:54:5026:61 | source(...) : Object | Test.java:5026:46:5026:61 | (...)... : String | provenance | | -| Test.java:5027:10:5027:60 | unmodifiableMapIterator(...) : MapIterator [] : String | Test.java:5028:21:5028:23 | out : MapIterator [] : String | provenance | | -| Test.java:5027:58:5027:59 | in : OrderedMapIterator [] : String | Test.java:5027:10:5027:60 | unmodifiableMapIterator(...) : MapIterator [] : String | provenance | MaD:182 | -| Test.java:5028:21:5028:23 | out : MapIterator [] : String | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | provenance | | -| Test.java:5028:21:5028:23 | out : MapIterator [] : String | Test.java:5028:9:5028:24 | getMapValue(...) | provenance | MaD:673 | -| Test.java:5033:28:5033:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:5033:28:5033:86 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:562 | -| Test.java:5033:28:5033:86 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:5034:72:5034:73 | in : OrderedMapIterator [] : String | provenance | | -| Test.java:5033:56:5033:71 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | -| Test.java:5033:56:5033:71 | (...)... : String | Test.java:5033:28:5033:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:13 | -| Test.java:5033:64:5033:71 | source(...) : Object | Test.java:5033:56:5033:71 | (...)... : String | provenance | | -| Test.java:5034:10:5034:74 | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | Test.java:5035:20:5035:22 | out : OrderedMapIterator [] : String | provenance | | -| Test.java:5034:72:5034:73 | in : OrderedMapIterator [] : String | Test.java:5034:10:5034:74 | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:183 | -| Test.java:5035:20:5035:22 | out : OrderedMapIterator [] : String | Test.java:231:19:231:32 | it : OrderedMapIterator [] : String | provenance | | -| Test.java:5035:20:5035:22 | out : OrderedMapIterator [] : String | Test.java:5035:9:5035:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5040:28:5040:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:5040:28:5040:88 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:563 | -| Test.java:5040:28:5040:88 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:5041:72:5041:73 | in : OrderedMapIterator [] : String | provenance | | -| Test.java:5040:58:5040:73 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | -| Test.java:5040:58:5040:73 | (...)... : String | Test.java:5040:28:5040:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:14 | -| Test.java:5040:66:5040:73 | source(...) : Object | Test.java:5040:58:5040:73 | (...)... : String | provenance | | -| Test.java:5041:10:5041:74 | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | Test.java:5042:21:5042:23 | out : OrderedMapIterator [] : String | provenance | | -| Test.java:5041:72:5041:73 | in : OrderedMapIterator [] : String | Test.java:5041:10:5041:74 | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:184 | -| Test.java:5042:21:5042:23 | out : OrderedMapIterator [] : String | Test.java:246:20:246:47 | mapIterator : OrderedMapIterator [] : String | provenance | | -| Test.java:5042:21:5042:23 | out : OrderedMapIterator [] : String | Test.java:5042:9:5042:24 | getMapValue(...) | provenance | MaD:673 | -| Test.java:5047:18:5047:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5048:30:5048:31 | in : ListIterator [] : String | provenance | | -| Test.java:5047:45:5047:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:5047:45:5047:60 | (...)... : String | Test.java:5047:18:5047:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:5047:53:5047:60 | source(...) : Object | Test.java:5047:45:5047:60 | (...)... : String | provenance | | -| Test.java:5048:10:5048:38 | new ZippingIterator<>(...) : ZippingIterator [] : String | Test.java:5049:20:5049:22 | out : ZippingIterator [] : String | provenance | | -| Test.java:5048:30:5048:31 | in : ListIterator [] : String | Test.java:5048:10:5048:38 | new ZippingIterator<>(...) : ZippingIterator [] : String | provenance | MaD:185 | -| Test.java:5049:20:5049:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | -| Test.java:5049:20:5049:22 | out : ZippingIterator [] : String | Test.java:5049:9:5049:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5054:18:5054:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5055:36:5055:37 | in : ListIterator [] : String | provenance | | -| Test.java:5054:45:5054:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:5054:45:5054:60 | (...)... : String | Test.java:5054:18:5054:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:5054:53:5054:60 | source(...) : Object | Test.java:5054:45:5054:60 | (...)... : String | provenance | | -| Test.java:5055:10:5055:38 | new ZippingIterator<>(...) : ZippingIterator [] : String | Test.java:5056:20:5056:22 | out : ZippingIterator [] : String | provenance | | -| Test.java:5055:36:5055:37 | in : ListIterator [] : String | Test.java:5055:10:5055:38 | new ZippingIterator<>(...) : ZippingIterator [] : String | provenance | MaD:186 | -| Test.java:5056:20:5056:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | -| Test.java:5056:20:5056:22 | out : ZippingIterator [] : String | Test.java:5056:9:5056:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5061:18:5061:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5062:30:5062:31 | in : ListIterator [] : String | provenance | | -| Test.java:5061:45:5061:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:5061:45:5061:60 | (...)... : String | Test.java:5061:18:5061:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:5061:53:5061:60 | source(...) : Object | Test.java:5061:45:5061:60 | (...)... : String | provenance | | -| Test.java:5062:10:5062:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | Test.java:5063:20:5063:22 | out : ZippingIterator [] : String | provenance | | -| Test.java:5062:30:5062:31 | in : ListIterator [] : String | Test.java:5062:10:5062:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | provenance | MaD:187 | -| Test.java:5063:20:5063:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | -| Test.java:5063:20:5063:22 | out : ZippingIterator [] : String | Test.java:5063:9:5063:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5068:18:5068:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5069:36:5069:37 | in : ListIterator [] : String | provenance | | -| Test.java:5068:45:5068:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:5068:45:5068:60 | (...)... : String | Test.java:5068:18:5068:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:5068:53:5068:60 | source(...) : Object | Test.java:5068:45:5068:60 | (...)... : String | provenance | | -| Test.java:5069:10:5069:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | Test.java:5070:20:5070:22 | out : ZippingIterator [] : String | provenance | | -| Test.java:5069:36:5069:37 | in : ListIterator [] : String | Test.java:5069:10:5069:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | provenance | MaD:188 | -| Test.java:5070:20:5070:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | -| Test.java:5070:20:5070:22 | out : ZippingIterator [] : String | Test.java:5070:9:5070:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5075:18:5075:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5076:42:5076:43 | in : ListIterator [] : String | provenance | | -| Test.java:5075:45:5075:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:5075:45:5075:60 | (...)... : String | Test.java:5075:18:5075:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:5075:53:5075:60 | source(...) : Object | Test.java:5075:45:5075:60 | (...)... : String | provenance | | -| Test.java:5076:10:5076:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | Test.java:5077:20:5077:22 | out : ZippingIterator [] : String | provenance | | -| Test.java:5076:42:5076:43 | in : ListIterator [] : String | Test.java:5076:10:5076:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | provenance | MaD:189 | -| Test.java:5077:20:5077:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | -| Test.java:5077:20:5077:22 | out : ZippingIterator [] : String | Test.java:5077:9:5077:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5082:20:5082:79 | {...} : Iterator[] [[], ] : String | Test.java:5083:30:5083:31 | in : Iterator[] [[], ] : String | provenance | | -| Test.java:5082:35:5082:78 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5082:20:5082:79 | {...} : Iterator[] [[], ] : String | provenance | | -| Test.java:5082:62:5082:77 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | -| Test.java:5082:62:5082:77 | (...)... : String | Test.java:5082:35:5082:78 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | -| Test.java:5082:70:5082:77 | source(...) : Object | Test.java:5082:62:5082:77 | (...)... : String | provenance | | -| Test.java:5083:10:5083:32 | new ZippingIterator<>(...) : ZippingIterator [] : String | Test.java:5084:20:5084:22 | out : ZippingIterator [] : String | provenance | | -| Test.java:5083:30:5083:31 | in : Iterator[] [[], ] : String | Test.java:5083:10:5083:32 | new ZippingIterator<>(...) : ZippingIterator [] : String | provenance | MaD:190 | -| Test.java:5084:20:5084:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | -| Test.java:5084:20:5084:22 | out : ZippingIterator [] : String | Test.java:5084:9:5084:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5089:16:5089:23 | source(...) : Object | Test.java:5090:23:5090:24 | in : Object | provenance | | -| Test.java:5090:10:5090:39 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5091:20:5091:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5090:23:5090:24 | in : Object | Test.java:5090:10:5090:39 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:217 | -| Test.java:5091:20:5091:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5091:20:5091:22 | out : MultiKey [] : Object | Test.java:5091:9:5091:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5096:16:5096:23 | source(...) : Object | Test.java:5097:37:5097:38 | in : Object | provenance | | -| Test.java:5097:10:5097:39 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5098:20:5098:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5097:37:5097:38 | in : Object | Test.java:5097:10:5097:39 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:218 | -| Test.java:5098:20:5098:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5098:20:5098:22 | out : MultiKey [] : Object | Test.java:5098:9:5098:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5103:16:5103:23 | source(...) : Object | Test.java:5104:23:5104:24 | in : Object | provenance | | -| Test.java:5104:10:5104:37 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5105:20:5105:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5104:23:5104:24 | in : Object | Test.java:5104:10:5104:37 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:219 | -| Test.java:5105:20:5105:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5105:20:5105:22 | out : MultiKey [] : Object | Test.java:5105:9:5105:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5110:16:5110:23 | source(...) : Object | Test.java:5111:29:5111:30 | in : Object | provenance | | -| Test.java:5111:10:5111:37 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5112:20:5112:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5111:29:5111:30 | in : Object | Test.java:5111:10:5111:37 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:220 | -| Test.java:5112:20:5112:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5112:20:5112:22 | out : MultiKey [] : Object | Test.java:5112:9:5112:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5117:16:5117:23 | source(...) : Object | Test.java:5118:35:5118:36 | in : Object | provenance | | -| Test.java:5118:10:5118:37 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5119:20:5119:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5118:35:5118:36 | in : Object | Test.java:5118:10:5118:37 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:221 | -| Test.java:5119:20:5119:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5119:20:5119:22 | out : MultiKey [] : Object | Test.java:5119:9:5119:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5124:16:5124:23 | source(...) : Object | Test.java:5125:23:5125:24 | in : Object | provenance | | -| Test.java:5125:10:5125:43 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5126:20:5126:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5125:23:5125:24 | in : Object | Test.java:5125:10:5125:43 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:222 | -| Test.java:5126:20:5126:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5126:20:5126:22 | out : MultiKey [] : Object | Test.java:5126:9:5126:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5131:16:5131:23 | source(...) : Object | Test.java:5132:29:5132:30 | in : Object | provenance | | -| Test.java:5132:10:5132:43 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5133:20:5133:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5132:29:5132:30 | in : Object | Test.java:5132:10:5132:43 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:223 | -| Test.java:5133:20:5133:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5133:20:5133:22 | out : MultiKey [] : Object | Test.java:5133:9:5133:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5138:16:5138:23 | source(...) : Object | Test.java:5139:35:5139:36 | in : Object | provenance | | -| Test.java:5139:10:5139:43 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5140:20:5140:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5139:35:5139:36 | in : Object | Test.java:5139:10:5139:43 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:224 | -| Test.java:5140:20:5140:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5140:20:5140:22 | out : MultiKey [] : Object | Test.java:5140:9:5140:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5145:16:5145:23 | source(...) : Object | Test.java:5146:41:5146:42 | in : Object | provenance | | -| Test.java:5146:10:5146:43 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5147:20:5147:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5146:41:5146:42 | in : Object | Test.java:5146:10:5146:43 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:225 | -| Test.java:5147:20:5147:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5147:20:5147:22 | out : MultiKey [] : Object | Test.java:5147:9:5147:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5152:16:5152:23 | source(...) : Object | Test.java:5153:23:5153:24 | in : Object | provenance | | -| Test.java:5153:10:5153:49 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5154:20:5154:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5153:23:5153:24 | in : Object | Test.java:5153:10:5153:49 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:226 | -| Test.java:5154:20:5154:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5154:20:5154:22 | out : MultiKey [] : Object | Test.java:5154:9:5154:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5159:16:5159:23 | source(...) : Object | Test.java:5160:29:5160:30 | in : Object | provenance | | -| Test.java:5160:10:5160:49 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5161:20:5161:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5160:29:5160:30 | in : Object | Test.java:5160:10:5160:49 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:227 | -| Test.java:5161:20:5161:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5161:20:5161:22 | out : MultiKey [] : Object | Test.java:5161:9:5161:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5166:16:5166:23 | source(...) : Object | Test.java:5167:35:5167:36 | in : Object | provenance | | -| Test.java:5167:10:5167:49 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5168:20:5168:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5167:35:5167:36 | in : Object | Test.java:5167:10:5167:49 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:228 | -| Test.java:5168:20:5168:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5168:20:5168:22 | out : MultiKey [] : Object | Test.java:5168:9:5168:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5173:16:5173:23 | source(...) : Object | Test.java:5174:41:5174:42 | in : Object | provenance | | -| Test.java:5174:10:5174:49 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5175:20:5175:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5174:41:5174:42 | in : Object | Test.java:5174:10:5174:49 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:229 | -| Test.java:5175:20:5175:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5175:20:5175:22 | out : MultiKey [] : Object | Test.java:5175:9:5175:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5180:16:5180:23 | source(...) : Object | Test.java:5181:47:5181:48 | in : Object | provenance | | -| Test.java:5181:10:5181:49 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5182:20:5182:22 | out : MultiKey [] : Object | provenance | | -| Test.java:5181:47:5181:48 | in : Object | Test.java:5181:10:5181:49 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:230 | -| Test.java:5182:20:5182:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | -| Test.java:5182:20:5182:22 | out : MultiKey [] : Object | Test.java:5182:9:5182:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5187:18:5187:47 | {...} : Object[] [[]] : String | Test.java:5188:23:5188:24 | in : Object[] [[]] : String | provenance | | -| Test.java:5187:31:5187:46 | (...)... : String | Test.java:5187:18:5187:47 | {...} : Object[] [[]] : String | provenance | | -| Test.java:5187:39:5187:46 | source(...) : Object | Test.java:5187:31:5187:46 | (...)... : String | provenance | | -| Test.java:5188:10:5188:25 | new MultiKey<>(...) : MultiKey [] : String | Test.java:5189:20:5189:22 | out : MultiKey [] : String | provenance | | -| Test.java:5188:23:5188:24 | in : Object[] [[]] : String | Test.java:5188:10:5188:25 | new MultiKey<>(...) : MultiKey [] : String | provenance | MaD:231 | -| Test.java:5189:20:5189:22 | out : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:5189:20:5189:22 | out : MultiKey [] : String | Test.java:5189:9:5189:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5194:18:5194:47 | {...} : Object[] [[]] : String | Test.java:5195:23:5195:24 | in : Object[] [[]] : String | provenance | | -| Test.java:5194:31:5194:46 | (...)... : String | Test.java:5194:18:5194:47 | {...} : Object[] [[]] : String | provenance | | -| Test.java:5194:39:5194:46 | source(...) : Object | Test.java:5194:31:5194:46 | (...)... : String | provenance | | -| Test.java:5195:10:5195:32 | new MultiKey<>(...) : MultiKey [] : String | Test.java:5196:20:5196:22 | out : MultiKey [] : String | provenance | | -| Test.java:5195:23:5195:24 | in : Object[] [[]] : String | Test.java:5195:10:5195:32 | new MultiKey<>(...) : MultiKey [] : String | provenance | MaD:232 | -| Test.java:5196:20:5196:22 | out : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:5196:20:5196:22 | out : MultiKey [] : String | Test.java:5196:9:5196:23 | getElement(...) | provenance | MaD:233 | -| Test.java:5201:18:5201:57 | newMultiKeyWithElement(...) : MultiKey [] : String | Test.java:5202:10:5202:11 | in : MultiKey [] : String | provenance | | -| Test.java:5201:41:5201:56 | (...)... : String | Test.java:261:41:261:49 | element : String | provenance | | -| Test.java:5201:41:5201:56 | (...)... : String | Test.java:5201:18:5201:57 | newMultiKeyWithElement(...) : MultiKey [] : String | provenance | MaD:217 | -| Test.java:5201:49:5201:56 | source(...) : Object | Test.java:5201:41:5201:56 | (...)... : String | provenance | | -| Test.java:5202:10:5202:11 | in : MultiKey [] : String | Test.java:5202:10:5202:21 | getKey(...) : String | provenance | MaD:233 | -| Test.java:5202:10:5202:21 | getKey(...) : String | Test.java:5203:9:5203:11 | out | provenance | | -| Test.java:5208:18:5208:57 | newMultiKeyWithElement(...) : MultiKey [] : String | Test.java:5209:10:5209:11 | in : MultiKey [] : String | provenance | | -| Test.java:5208:41:5208:56 | (...)... : String | Test.java:261:41:261:49 | element : String | provenance | | -| Test.java:5208:41:5208:56 | (...)... : String | Test.java:5208:18:5208:57 | newMultiKeyWithElement(...) : MultiKey [] : String | provenance | MaD:217 | -| Test.java:5208:49:5208:56 | source(...) : Object | Test.java:5208:41:5208:56 | (...)... : String | provenance | | -| Test.java:5209:10:5209:11 | in : MultiKey [] : String | Test.java:5209:10:5209:21 | getKeys(...) : Object[] [[]] : String | provenance | MaD:234 | -| Test.java:5209:10:5209:21 | getKeys(...) : Object[] [[]] : String | Test.java:5210:25:5210:27 | out : Object[] [[]] : String | provenance | | -| Test.java:5210:25:5210:27 | out : Object[] [[]] : String | Test.java:229:24:229:32 | array : Object[] [[]] : String | provenance | | -| Test.java:5210:25:5210:27 | out : Object[] [[]] : String | Test.java:5210:9:5210:28 | getArrayElement(...) | provenance | | -| Test.java:5215:20:5215:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:5216:35:5216:36 | in : TreeBag [] : String | provenance | | -| Test.java:5215:42:5215:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:5215:42:5215:57 | (...)... : String | Test.java:5215:20:5215:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:5215:42:5215:57 | (...)... : String | Test.java:5215:20:5215:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:5215:50:5215:57 | source(...) : Object | Test.java:5215:42:5215:57 | (...)... : String | provenance | | -| Test.java:5216:10:5216:37 | new MyAbstractLinkedList<>(...) : MyAbstractLinkedList [] : String | Test.java:5217:20:5217:22 | out : MyAbstractLinkedList [] : String | provenance | | -| Test.java:5216:35:5216:36 | in : TreeBag [] : String | Test.java:5216:10:5216:37 | new MyAbstractLinkedList<>(...) : MyAbstractLinkedList [] : String | provenance | MaD:243 | -| Test.java:5216:35:5216:36 | in : TreeBag [] : String | Test.java:7204:31:7204:64 | coll : TreeBag [] : String | provenance | | -| Test.java:5217:20:5217:22 | out : MyAbstractLinkedList [] : String | Test.java:230:19:230:32 | it : MyAbstractLinkedList [] : String | provenance | | -| Test.java:5217:20:5217:22 | out : MyAbstractLinkedList [] : String | Test.java:5217:9:5217:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5222:16:5222:23 | source(...) : Object | Test.java:5223:17:5223:18 | in : Object | provenance | | -| Test.java:5223:4:5223:6 | out [post update] : AbstractLinkedList [] : Object | Test.java:5224:20:5224:22 | out : AbstractLinkedList [] : Object | provenance | | -| Test.java:5223:17:5223:18 | in : Object | Test.java:5223:4:5223:6 | out [post update] : AbstractLinkedList [] : Object | provenance | MaD:244 | -| Test.java:5224:20:5224:22 | out : AbstractLinkedList [] : Object | Test.java:230:19:230:32 | it : AbstractLinkedList [] : Object | provenance | | -| Test.java:5224:20:5224:22 | out : AbstractLinkedList [] : Object | Test.java:5224:9:5224:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5229:16:5229:23 | source(...) : Object | Test.java:5230:16:5230:17 | in : Object | provenance | | -| Test.java:5230:4:5230:6 | out [post update] : AbstractLinkedList [] : Object | Test.java:5231:20:5231:22 | out : AbstractLinkedList [] : Object | provenance | | -| Test.java:5230:16:5230:17 | in : Object | Test.java:5230:4:5230:6 | out [post update] : AbstractLinkedList [] : Object | provenance | MaD:245 | -| Test.java:5231:20:5231:22 | out : AbstractLinkedList [] : Object | Test.java:230:19:230:32 | it : AbstractLinkedList [] : Object | provenance | | -| Test.java:5231:20:5231:22 | out : AbstractLinkedList [] : Object | Test.java:5231:9:5231:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5236:28:5236:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | Test.java:5237:10:5237:11 | in : CursorableLinkedList [] : String | provenance | | -| Test.java:5236:63:5236:78 | (...)... : String | Test.java:255:65:255:73 | element : String | provenance | | -| Test.java:5236:63:5236:78 | (...)... : String | Test.java:5236:28:5236:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | provenance | MaD:4 | -| Test.java:5236:71:5236:78 | source(...) : Object | Test.java:5236:63:5236:78 | (...)... : String | provenance | | -| Test.java:5237:10:5237:11 | in : CursorableLinkedList [] : String | Test.java:5237:10:5237:22 | getFirst(...) : String | provenance | MaD:246 | -| Test.java:5237:10:5237:22 | getFirst(...) : String | Test.java:5238:9:5238:11 | out | provenance | | -| Test.java:5243:28:5243:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | Test.java:5244:10:5244:11 | in : CursorableLinkedList [] : String | provenance | | -| Test.java:5243:63:5243:78 | (...)... : String | Test.java:255:65:255:73 | element : String | provenance | | -| Test.java:5243:63:5243:78 | (...)... : String | Test.java:5243:28:5243:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | provenance | MaD:4 | -| Test.java:5243:71:5243:78 | source(...) : Object | Test.java:5243:63:5243:78 | (...)... : String | provenance | | -| Test.java:5244:10:5244:11 | in : CursorableLinkedList [] : String | Test.java:5244:10:5244:21 | getLast(...) : String | provenance | MaD:247 | -| Test.java:5244:10:5244:21 | getLast(...) : String | Test.java:5245:9:5245:11 | out | provenance | | -| Test.java:5250:28:5250:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | Test.java:5251:10:5251:11 | in : CursorableLinkedList [] : String | provenance | | -| Test.java:5250:63:5250:78 | (...)... : String | Test.java:255:65:255:73 | element : String | provenance | | -| Test.java:5250:63:5250:78 | (...)... : String | Test.java:5250:28:5250:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | provenance | MaD:4 | -| Test.java:5250:71:5250:78 | source(...) : Object | Test.java:5250:63:5250:78 | (...)... : String | provenance | | -| Test.java:5251:10:5251:11 | in : CursorableLinkedList [] : String | Test.java:5251:10:5251:25 | removeFirst(...) : String | provenance | MaD:248 | -| Test.java:5251:10:5251:25 | removeFirst(...) : String | Test.java:5252:9:5252:11 | out | provenance | | -| Test.java:5257:28:5257:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | Test.java:5258:10:5258:11 | in : CursorableLinkedList [] : String | provenance | | -| Test.java:5257:63:5257:78 | (...)... : String | Test.java:255:65:255:73 | element : String | provenance | | -| Test.java:5257:63:5257:78 | (...)... : String | Test.java:5257:28:5257:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | provenance | MaD:4 | -| Test.java:5257:71:5257:78 | source(...) : Object | Test.java:5257:63:5257:78 | (...)... : String | provenance | | -| Test.java:5258:10:5258:11 | in : CursorableLinkedList [] : String | Test.java:5258:10:5258:24 | removeLast(...) : String | provenance | MaD:249 | -| Test.java:5258:10:5258:24 | removeLast(...) : String | Test.java:5259:9:5259:11 | out | provenance | | -| Test.java:5264:14:5264:38 | of(...) : List [] : String | Test.java:5265:38:5265:39 | in : List [] : String | provenance | | -| Test.java:5264:22:5264:37 | (...)... : String | Test.java:5264:14:5264:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5264:30:5264:37 | source(...) : Object | Test.java:5264:22:5264:37 | (...)... : String | provenance | | -| Test.java:5265:10:5265:40 | new MyAbstractListDecorator<>(...) : MyAbstractListDecorator [] : String | Test.java:5266:20:5266:22 | out : MyAbstractListDecorator [] : String | provenance | | -| Test.java:5265:38:5265:39 | in : List [] : String | Test.java:5265:10:5265:40 | new MyAbstractListDecorator<>(...) : MyAbstractListDecorator [] : String | provenance | MaD:250 | -| Test.java:5265:38:5265:39 | in : List [] : String | Test.java:7210:34:7210:51 | list : List [] : String | provenance | | -| Test.java:5266:20:5266:22 | out : MyAbstractListDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractListDecorator [] : String | provenance | | -| Test.java:5266:20:5266:22 | out : MyAbstractListDecorator [] : String | Test.java:5266:9:5266:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5271:14:5271:38 | of(...) : List [] : String | Test.java:5272:50:5272:51 | in : List [] : String | provenance | | -| Test.java:5271:22:5271:37 | (...)... : String | Test.java:5271:14:5271:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5271:30:5271:37 | source(...) : Object | Test.java:5271:22:5271:37 | (...)... : String | provenance | | -| Test.java:5272:10:5272:52 | new MyAbstractSerializableListDecorator<>(...) : MyAbstractSerializableListDecorator [] : String | Test.java:5273:20:5273:22 | out : MyAbstractSerializableListDecorator [] : String | provenance | | -| Test.java:5272:50:5272:51 | in : List [] : String | Test.java:5272:10:5272:52 | new MyAbstractSerializableListDecorator<>(...) : MyAbstractSerializableListDecorator [] : String | provenance | MaD:251 | -| Test.java:5272:50:5272:51 | in : List [] : String | Test.java:7216:46:7216:63 | list : List [] : String | provenance | | -| Test.java:5273:20:5273:22 | out : MyAbstractSerializableListDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSerializableListDecorator [] : String | provenance | | -| Test.java:5273:20:5273:22 | out : MyAbstractSerializableListDecorator [] : String | Test.java:5273:9:5273:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5278:20:5278:44 | of(...) : List [] : String | Test.java:5279:35:5279:36 | in : List [] : String | provenance | | -| Test.java:5278:28:5278:43 | (...)... : String | Test.java:5278:20:5278:44 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5278:36:5278:43 | source(...) : Object | Test.java:5278:28:5278:43 | (...)... : String | provenance | | -| Test.java:5279:10:5279:37 | new CursorableLinkedList<>(...) : CursorableLinkedList [] : String | Test.java:5280:20:5280:22 | out : CursorableLinkedList [] : String | provenance | | -| Test.java:5279:35:5279:36 | in : List [] : String | Test.java:5279:10:5279:37 | new CursorableLinkedList<>(...) : CursorableLinkedList [] : String | provenance | MaD:252 | -| Test.java:5280:20:5280:22 | out : CursorableLinkedList [] : String | Test.java:230:19:230:32 | it : CursorableLinkedList [] : String | provenance | | -| Test.java:5280:20:5280:22 | out : CursorableLinkedList [] : String | Test.java:5280:9:5280:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5285:30:5285:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | Test.java:5286:10:5286:11 | in : CursorableLinkedList [] : String | provenance | | -| Test.java:5285:65:5285:80 | (...)... : String | Test.java:255:65:255:73 | element : String | provenance | | -| Test.java:5285:65:5285:80 | (...)... : String | Test.java:5285:30:5285:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | provenance | MaD:4 | -| Test.java:5285:73:5285:80 | source(...) : Object | Test.java:5285:65:5285:80 | (...)... : String | provenance | | -| Test.java:5286:10:5286:11 | in : CursorableLinkedList [] : String | Test.java:5286:10:5286:21 | cursor(...) : Cursor [] : String | provenance | MaD:253 | -| Test.java:5286:10:5286:21 | cursor(...) : Cursor [] : String | Test.java:5287:20:5287:22 | out : Cursor [] : String | provenance | | -| Test.java:5287:20:5287:22 | out : Cursor [] : String | Test.java:231:19:231:32 | it : Cursor [] : String | provenance | | -| Test.java:5287:20:5287:22 | out : Cursor [] : String | Test.java:5287:9:5287:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5292:30:5292:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | Test.java:5293:10:5293:11 | in : CursorableLinkedList [] : String | provenance | | -| Test.java:5292:65:5292:80 | (...)... : String | Test.java:255:65:255:73 | element : String | provenance | | -| Test.java:5292:65:5292:80 | (...)... : String | Test.java:5292:30:5292:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | provenance | MaD:4 | -| Test.java:5292:73:5292:80 | source(...) : Object | Test.java:5292:65:5292:80 | (...)... : String | provenance | | -| Test.java:5293:10:5293:11 | in : CursorableLinkedList [] : String | Test.java:5293:10:5293:20 | cursor(...) : Cursor [] : String | provenance | MaD:253 | -| Test.java:5293:10:5293:20 | cursor(...) : Cursor [] : String | Test.java:5294:20:5294:22 | out : Cursor [] : String | provenance | | -| Test.java:5294:20:5294:22 | out : Cursor [] : String | Test.java:231:19:231:32 | it : Cursor [] : String | provenance | | -| Test.java:5294:20:5294:22 | out : Cursor [] : String | Test.java:5294:9:5294:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5299:14:5299:38 | of(...) : List [] : String | Test.java:5300:38:5300:39 | in : List [] : String | provenance | | -| Test.java:5299:22:5299:37 | (...)... : String | Test.java:5299:14:5299:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5299:30:5299:37 | source(...) : Object | Test.java:5299:22:5299:37 | (...)... : String | provenance | | -| Test.java:5300:10:5300:40 | fixedSizeList(...) : FixedSizeList [] : String | Test.java:5301:20:5301:22 | out : FixedSizeList [] : String | provenance | | -| Test.java:5300:38:5300:39 | in : List [] : String | Test.java:5300:10:5300:40 | fixedSizeList(...) : FixedSizeList [] : String | provenance | MaD:254 | -| Test.java:5301:20:5301:22 | out : FixedSizeList [] : String | Test.java:230:19:230:32 | it : FixedSizeList [] : String | provenance | | -| Test.java:5301:20:5301:22 | out : FixedSizeList [] : String | Test.java:5301:9:5301:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5306:14:5306:38 | of(...) : List [] : String | Test.java:5307:32:5307:33 | in : List [] : String | provenance | | -| Test.java:5306:22:5306:37 | (...)... : String | Test.java:5306:14:5306:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5306:30:5306:37 | source(...) : Object | Test.java:5306:22:5306:37 | (...)... : String | provenance | | -| Test.java:5307:10:5307:34 | growthList(...) : GrowthList [] : String | Test.java:5308:20:5308:22 | out : GrowthList [] : String | provenance | | -| Test.java:5307:32:5307:33 | in : List [] : String | Test.java:5307:10:5307:34 | growthList(...) : GrowthList [] : String | provenance | MaD:255 | -| Test.java:5308:20:5308:22 | out : GrowthList [] : String | Test.java:230:19:230:32 | it : GrowthList [] : String | provenance | | -| Test.java:5308:20:5308:22 | out : GrowthList [] : String | Test.java:5308:9:5308:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5313:14:5313:38 | of(...) : List [] : String | Test.java:5314:28:5314:29 | in : List [] : String | provenance | | -| Test.java:5313:22:5313:37 | (...)... : String | Test.java:5313:14:5313:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5313:30:5313:37 | source(...) : Object | Test.java:5313:22:5313:37 | (...)... : String | provenance | | -| Test.java:5314:10:5314:49 | lazyList(...) : LazyList [] : String | Test.java:5315:20:5315:22 | out : LazyList [] : String | provenance | | -| Test.java:5314:28:5314:29 | in : List [] : String | Test.java:5314:10:5314:49 | lazyList(...) : LazyList [] : String | provenance | MaD:256 | -| Test.java:5315:20:5315:22 | out : LazyList [] : String | Test.java:230:19:230:32 | it : LazyList [] : String | provenance | | -| Test.java:5315:20:5315:22 | out : LazyList [] : String | Test.java:5315:9:5315:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5320:14:5320:38 | of(...) : List [] : String | Test.java:5321:28:5321:29 | in : List [] : String | provenance | | -| Test.java:5320:22:5320:37 | (...)... : String | Test.java:5320:14:5320:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5320:30:5320:37 | source(...) : Object | Test.java:5320:22:5320:37 | (...)... : String | provenance | | -| Test.java:5321:10:5321:45 | lazyList(...) : LazyList [] : String | Test.java:5322:20:5322:22 | out : LazyList [] : String | provenance | | -| Test.java:5321:28:5321:29 | in : List [] : String | Test.java:5321:10:5321:45 | lazyList(...) : LazyList [] : String | provenance | MaD:256 | -| Test.java:5322:20:5322:22 | out : LazyList [] : String | Test.java:230:19:230:32 | it : LazyList [] : String | provenance | | -| Test.java:5322:20:5322:22 | out : LazyList [] : String | Test.java:5322:9:5322:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5327:20:5327:44 | of(...) : List [] : String | Test.java:5328:36:5328:37 | in : List [] : String | provenance | | -| Test.java:5327:28:5327:43 | (...)... : String | Test.java:5327:20:5327:44 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5327:36:5327:43 | source(...) : Object | Test.java:5327:28:5327:43 | (...)... : String | provenance | | -| Test.java:5328:10:5328:38 | new NodeCachingLinkedList<>(...) : NodeCachingLinkedList [] : String | Test.java:5329:20:5329:22 | out : NodeCachingLinkedList [] : String | provenance | | -| Test.java:5328:36:5328:37 | in : List [] : String | Test.java:5328:10:5328:38 | new NodeCachingLinkedList<>(...) : NodeCachingLinkedList [] : String | provenance | MaD:257 | -| Test.java:5329:20:5329:22 | out : NodeCachingLinkedList [] : String | Test.java:230:19:230:32 | it : NodeCachingLinkedList [] : String | provenance | | -| Test.java:5329:20:5329:22 | out : NodeCachingLinkedList [] : String | Test.java:5329:9:5329:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5334:14:5334:38 | of(...) : List [] : String | Test.java:5335:40:5335:41 | in : List [] : String | provenance | | -| Test.java:5334:22:5334:37 | (...)... : String | Test.java:5334:14:5334:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5334:30:5334:37 | source(...) : Object | Test.java:5334:22:5334:37 | (...)... : String | provenance | | -| Test.java:5335:10:5335:48 | predicatedList(...) : PredicatedList [] : String | Test.java:5336:20:5336:22 | out : PredicatedList [] : String | provenance | | -| Test.java:5335:40:5335:41 | in : List [] : String | Test.java:5335:10:5335:48 | predicatedList(...) : PredicatedList [] : String | provenance | MaD:258 | -| Test.java:5336:20:5336:22 | out : PredicatedList [] : String | Test.java:230:19:230:32 | it : PredicatedList [] : String | provenance | | -| Test.java:5336:20:5336:22 | out : PredicatedList [] : String | Test.java:5336:9:5336:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5341:23:5341:76 | setUniqueList(...) : SetUniqueList [] : String | Test.java:5342:10:5342:11 | in : SetUniqueList [] : String | provenance | | -| Test.java:5341:51:5341:75 | of(...) : List [] : String | Test.java:5341:23:5341:76 | setUniqueList(...) : SetUniqueList [] : String | provenance | MaD:260 | -| Test.java:5341:59:5341:74 | (...)... : String | Test.java:5341:51:5341:75 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5341:67:5341:74 | source(...) : Object | Test.java:5341:59:5341:74 | (...)... : String | provenance | | -| Test.java:5342:10:5342:11 | in : SetUniqueList [] : String | Test.java:5342:10:5342:19 | asSet(...) : Set [] : String | provenance | MaD:259 | -| Test.java:5342:10:5342:19 | asSet(...) : Set [] : String | Test.java:5343:20:5343:22 | out : Set [] : String | provenance | | -| Test.java:5343:20:5343:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:5343:20:5343:22 | out : Set [] : String | Test.java:5343:9:5343:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5348:14:5348:38 | of(...) : List [] : String | Test.java:5349:38:5349:39 | in : List [] : String | provenance | | -| Test.java:5348:22:5348:37 | (...)... : String | Test.java:5348:14:5348:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5348:30:5348:37 | source(...) : Object | Test.java:5348:22:5348:37 | (...)... : String | provenance | | -| Test.java:5349:10:5349:40 | setUniqueList(...) : SetUniqueList [] : String | Test.java:5350:20:5350:22 | out : SetUniqueList [] : String | provenance | | -| Test.java:5349:38:5349:39 | in : List [] : String | Test.java:5349:10:5349:40 | setUniqueList(...) : SetUniqueList [] : String | provenance | MaD:260 | -| Test.java:5350:20:5350:22 | out : SetUniqueList [] : String | Test.java:230:19:230:32 | it : SetUniqueList [] : String | provenance | | -| Test.java:5350:20:5350:22 | out : SetUniqueList [] : String | Test.java:5350:9:5350:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5355:14:5355:38 | of(...) : List [] : String | Test.java:5356:43:5356:44 | in : List [] : String | provenance | | -| Test.java:5355:22:5355:37 | (...)... : String | Test.java:5355:14:5355:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5355:30:5355:37 | source(...) : Object | Test.java:5355:22:5355:37 | (...)... : String | provenance | | -| Test.java:5356:10:5356:51 | transformingList(...) : TransformedList [] : String | Test.java:5357:20:5357:22 | out : TransformedList [] : String | provenance | | -| Test.java:5356:43:5356:44 | in : List [] : String | Test.java:5356:10:5356:51 | transformingList(...) : TransformedList [] : String | provenance | MaD:261 | -| Test.java:5357:20:5357:22 | out : TransformedList [] : String | Test.java:230:19:230:32 | it : TransformedList [] : String | provenance | | -| Test.java:5357:20:5357:22 | out : TransformedList [] : String | Test.java:5357:9:5357:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5362:20:5362:44 | of(...) : List [] : String | Test.java:5363:23:5363:24 | in : List [] : String | provenance | | -| Test.java:5362:28:5362:43 | (...)... : String | Test.java:5362:20:5362:44 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5362:36:5362:43 | source(...) : Object | Test.java:5362:28:5362:43 | (...)... : String | provenance | | -| Test.java:5363:10:5363:25 | new TreeList<>(...) : TreeList [] : String | Test.java:5364:20:5364:22 | out : TreeList [] : String | provenance | | -| Test.java:5363:23:5363:24 | in : List [] : String | Test.java:5363:10:5363:25 | new TreeList<>(...) : TreeList [] : String | provenance | MaD:262 | -| Test.java:5364:20:5364:22 | out : TreeList [] : String | Test.java:230:19:230:32 | it : TreeList [] : String | provenance | | -| Test.java:5364:20:5364:22 | out : TreeList [] : String | Test.java:5364:9:5364:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5369:14:5369:38 | of(...) : List [] : String | Test.java:5370:31:5370:32 | in : List [] : String | provenance | | -| Test.java:5369:22:5369:37 | (...)... : String | Test.java:5369:14:5369:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5369:30:5369:37 | source(...) : Object | Test.java:5369:22:5369:37 | (...)... : String | provenance | | -| Test.java:5370:10:5370:33 | new UnmodifiableList<>(...) : UnmodifiableList [] : String | Test.java:5371:20:5371:22 | out : UnmodifiableList [] : String | provenance | | -| Test.java:5370:31:5370:32 | in : List [] : String | Test.java:5370:10:5370:33 | new UnmodifiableList<>(...) : UnmodifiableList [] : String | provenance | MaD:263 | -| Test.java:5371:20:5371:22 | out : UnmodifiableList [] : String | Test.java:230:19:230:32 | it : UnmodifiableList [] : String | provenance | | -| Test.java:5371:20:5371:22 | out : UnmodifiableList [] : String | Test.java:5371:9:5371:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5376:14:5376:38 | of(...) : List [] : String | Test.java:5377:44:5377:45 | in : List [] : String | provenance | | -| Test.java:5376:22:5376:37 | (...)... : String | Test.java:5376:14:5376:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:5376:30:5376:37 | source(...) : Object | Test.java:5376:22:5376:37 | (...)... : String | provenance | | -| Test.java:5377:10:5377:46 | unmodifiableList(...) : List [] : String | Test.java:5378:20:5378:22 | out : List [] : String | provenance | | -| Test.java:5377:44:5377:45 | in : List [] : String | Test.java:5377:10:5377:46 | unmodifiableList(...) : List [] : String | provenance | MaD:264 | -| Test.java:5378:20:5378:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | -| Test.java:5378:20:5378:22 | out : List [] : String | Test.java:5378:9:5378:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5383:13:5383:42 | of(...) : Map [] : String | Test.java:5384:34:5384:35 | in : Map [] : String | provenance | | -| Test.java:5383:20:5383:35 | (...)... : String | Test.java:5383:13:5383:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5383:28:5383:35 | source(...) : Object | Test.java:5383:20:5383:35 | (...)... : String | provenance | | -| Test.java:5384:10:5384:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | Test.java:5385:19:5385:21 | out : MyAbstractHashedMap [] : String | provenance | | -| Test.java:5384:34:5384:35 | in : Map [] : String | Test.java:5384:10:5384:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | provenance | MaD:265 | -| Test.java:5384:34:5384:35 | in : Map [] : String | Test.java:7222:30:7222:68 | map : Map [] : String | provenance | | -| Test.java:5385:19:5385:21 | out : MyAbstractHashedMap [] : String | Test.java:228:18:228:29 | map : MyAbstractHashedMap [] : String | provenance | | -| Test.java:5385:19:5385:21 | out : MyAbstractHashedMap [] : String | Test.java:5385:9:5385:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5390:13:5390:42 | of(...) : Map [] : String | Test.java:5391:34:5391:35 | in : Map [] : String | provenance | | -| Test.java:5390:26:5390:41 | (...)... : String | Test.java:5390:13:5390:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5390:34:5390:41 | source(...) : Object | Test.java:5390:26:5390:41 | (...)... : String | provenance | | -| Test.java:5391:10:5391:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | Test.java:5392:21:5392:23 | out : MyAbstractHashedMap [] : String | provenance | | -| Test.java:5391:34:5391:35 | in : Map [] : String | Test.java:5391:10:5391:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | provenance | MaD:266 | -| Test.java:5391:34:5391:35 | in : Map [] : String | Test.java:7222:30:7222:68 | map : Map [] : String | provenance | | -| Test.java:5392:21:5392:23 | out : MyAbstractHashedMap [] : String | Test.java:232:20:232:31 | map : MyAbstractHashedMap [] : String | provenance | | -| Test.java:5392:21:5392:23 | out : MyAbstractHashedMap [] : String | Test.java:5392:9:5392:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5397:13:5397:42 | of(...) : Map [] : String | Test.java:5398:34:5398:35 | in : Map [] : String | provenance | | -| Test.java:5397:20:5397:35 | (...)... : String | Test.java:5397:13:5397:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5397:28:5397:35 | source(...) : Object | Test.java:5397:20:5397:35 | (...)... : String | provenance | | -| Test.java:5398:10:5398:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | Test.java:5399:19:5399:21 | out : MyAbstractLinkedMap [] : String | provenance | | -| Test.java:5398:34:5398:35 | in : Map [] : String | Test.java:5398:10:5398:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | provenance | MaD:267 | -| Test.java:5398:34:5398:35 | in : Map [] : String | Test.java:7228:30:7228:68 | map : Map [] : String | provenance | | -| Test.java:5399:19:5399:21 | out : MyAbstractLinkedMap [] : String | Test.java:228:18:228:29 | map : MyAbstractLinkedMap [] : String | provenance | | -| Test.java:5399:19:5399:21 | out : MyAbstractLinkedMap [] : String | Test.java:5399:9:5399:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5404:13:5404:42 | of(...) : Map [] : String | Test.java:5405:34:5405:35 | in : Map [] : String | provenance | | -| Test.java:5404:26:5404:41 | (...)... : String | Test.java:5404:13:5404:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5404:34:5404:41 | source(...) : Object | Test.java:5404:26:5404:41 | (...)... : String | provenance | | -| Test.java:5405:10:5405:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | Test.java:5406:21:5406:23 | out : MyAbstractLinkedMap [] : String | provenance | | -| Test.java:5405:34:5405:35 | in : Map [] : String | Test.java:5405:10:5405:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | provenance | MaD:268 | -| Test.java:5405:34:5405:35 | in : Map [] : String | Test.java:7228:30:7228:68 | map : Map [] : String | provenance | | -| Test.java:5406:21:5406:23 | out : MyAbstractLinkedMap [] : String | Test.java:232:20:232:31 | map : MyAbstractLinkedMap [] : String | provenance | | -| Test.java:5406:21:5406:23 | out : MyAbstractLinkedMap [] : String | Test.java:5406:9:5406:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5411:13:5411:42 | of(...) : Map [] : String | Test.java:5412:37:5412:38 | in : Map [] : String | provenance | | -| Test.java:5411:20:5411:35 | (...)... : String | Test.java:5411:13:5411:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5411:28:5411:35 | source(...) : Object | Test.java:5411:20:5411:35 | (...)... : String | provenance | | -| Test.java:5412:10:5412:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | Test.java:5413:19:5413:21 | out : MyAbstractMapDecorator [] : String | provenance | | -| Test.java:5412:37:5412:38 | in : Map [] : String | Test.java:5412:10:5412:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | provenance | MaD:269 | -| Test.java:5412:37:5412:38 | in : Map [] : String | Test.java:7234:33:7234:51 | map : Map [] : String | provenance | | -| Test.java:5413:19:5413:21 | out : MyAbstractMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractMapDecorator [] : String | provenance | | -| Test.java:5413:19:5413:21 | out : MyAbstractMapDecorator [] : String | Test.java:5413:9:5413:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5418:13:5418:42 | of(...) : Map [] : String | Test.java:5419:37:5419:38 | in : Map [] : String | provenance | | -| Test.java:5418:26:5418:41 | (...)... : String | Test.java:5418:13:5418:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5418:34:5418:41 | source(...) : Object | Test.java:5418:26:5418:41 | (...)... : String | provenance | | -| Test.java:5419:10:5419:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | Test.java:5420:21:5420:23 | out : MyAbstractMapDecorator [] : String | provenance | | -| Test.java:5419:37:5419:38 | in : Map [] : String | Test.java:5419:10:5419:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | provenance | MaD:270 | -| Test.java:5419:37:5419:38 | in : Map [] : String | Test.java:7234:33:7234:51 | map : Map [] : String | provenance | | -| Test.java:5420:21:5420:23 | out : MyAbstractMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractMapDecorator [] : String | provenance | | -| Test.java:5420:21:5420:23 | out : MyAbstractMapDecorator [] : String | Test.java:5420:9:5420:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5425:32:5425:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | Test.java:5426:10:5426:11 | in : MyAbstractMapDecorator [] : String | provenance | | -| Test.java:5425:59:5425:88 | of(...) : Map [] : String | Test.java:5425:32:5425:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | provenance | MaD:269 | -| Test.java:5425:59:5425:88 | of(...) : Map [] : String | Test.java:7234:33:7234:51 | map : Map [] : String | provenance | | -| Test.java:5425:66:5425:81 | (...)... : String | Test.java:5425:59:5425:88 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5425:74:5425:81 | source(...) : Object | Test.java:5425:66:5425:81 | (...)... : String | provenance | | -| Test.java:5426:10:5426:11 | in : MyAbstractMapDecorator [] : String | Test.java:5426:10:5426:25 | myDecorated(...) : Map [] : String | provenance | MaD:271 | -| Test.java:5426:10:5426:11 | in : MyAbstractMapDecorator [] : String | Test.java:7237:20:7237:30 | parameter this : MyAbstractMapDecorator [] : String | provenance | | -| Test.java:5426:10:5426:25 | myDecorated(...) : Map [] : String | Test.java:5427:19:5427:21 | out : Map [] : String | provenance | | -| Test.java:5427:19:5427:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:5427:19:5427:21 | out : Map [] : String | Test.java:5427:9:5427:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5432:32:5432:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | Test.java:5433:10:5433:11 | in : MyAbstractMapDecorator [] : String | provenance | | -| Test.java:5432:59:5432:88 | of(...) : Map [] : String | Test.java:5432:32:5432:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | provenance | MaD:270 | -| Test.java:5432:59:5432:88 | of(...) : Map [] : String | Test.java:7234:33:7234:51 | map : Map [] : String | provenance | | -| Test.java:5432:72:5432:87 | (...)... : String | Test.java:5432:59:5432:88 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5432:80:5432:87 | source(...) : Object | Test.java:5432:72:5432:87 | (...)... : String | provenance | | -| Test.java:5433:10:5433:11 | in : MyAbstractMapDecorator [] : String | Test.java:5433:10:5433:25 | myDecorated(...) : Map [] : String | provenance | MaD:272 | -| Test.java:5433:10:5433:11 | in : MyAbstractMapDecorator [] : String | Test.java:7237:20:7237:30 | parameter this : MyAbstractMapDecorator [] : String | provenance | | -| Test.java:5433:10:5433:25 | myDecorated(...) : Map [] : String | Test.java:5434:21:5434:23 | out : Map [] : String | provenance | | -| Test.java:5434:21:5434:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:5434:21:5434:23 | out : Map [] : String | Test.java:5434:9:5434:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5439:20:5439:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:5440:44:5440:45 | in : ListOrderedMap [] : String | provenance | | -| Test.java:5439:48:5439:63 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | -| Test.java:5439:48:5439:63 | (...)... : String | Test.java:5439:20:5439:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:13 | -| Test.java:5439:56:5439:63 | source(...) : Object | Test.java:5439:48:5439:63 | (...)... : String | provenance | | -| Test.java:5440:10:5440:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | Test.java:5441:19:5441:21 | out : MyAbstractOrderedMapDecorator [] : String | provenance | | -| Test.java:5440:44:5440:45 | in : ListOrderedMap [] : String | Test.java:5440:10:5440:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | provenance | MaD:273 | -| Test.java:5440:44:5440:45 | in : ListOrderedMap [] : String | Test.java:7092:40:7092:65 | map : ListOrderedMap [] : String | provenance | | -| Test.java:5441:19:5441:21 | out : MyAbstractOrderedMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractOrderedMapDecorator [] : String | provenance | | -| Test.java:5441:19:5441:21 | out : MyAbstractOrderedMapDecorator [] : String | Test.java:5441:9:5441:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5446:20:5446:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:5447:44:5447:45 | in : ListOrderedMap [] : String | provenance | | -| Test.java:5446:50:5446:65 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | -| Test.java:5446:50:5446:65 | (...)... : String | Test.java:5446:20:5446:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:14 | -| Test.java:5446:58:5446:65 | source(...) : Object | Test.java:5446:50:5446:65 | (...)... : String | provenance | | -| Test.java:5447:10:5447:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | Test.java:5448:21:5448:23 | out : MyAbstractOrderedMapDecorator [] : String | provenance | | -| Test.java:5447:44:5447:45 | in : ListOrderedMap [] : String | Test.java:5447:10:5447:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | provenance | MaD:274 | -| Test.java:5447:44:5447:45 | in : ListOrderedMap [] : String | Test.java:7092:40:7092:65 | map : ListOrderedMap [] : String | provenance | | -| Test.java:5448:21:5448:23 | out : MyAbstractOrderedMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractOrderedMapDecorator [] : String | provenance | | -| Test.java:5448:21:5448:23 | out : MyAbstractOrderedMapDecorator [] : String | Test.java:5448:9:5448:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5453:19:5453:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:5454:43:5454:44 | in : TreeMap [] : String | provenance | | -| Test.java:5453:40:5453:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:5453:40:5453:55 | (...)... : String | Test.java:5453:19:5453:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | -| Test.java:5453:48:5453:55 | source(...) : Object | Test.java:5453:40:5453:55 | (...)... : String | provenance | | -| Test.java:5454:10:5454:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | Test.java:5455:19:5455:21 | out : MyAbstractSortedMapDecorator [] : String | provenance | | -| Test.java:5454:43:5454:44 | in : TreeMap [] : String | Test.java:5454:10:5454:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | provenance | MaD:275 | -| Test.java:5454:43:5454:44 | in : TreeMap [] : String | Test.java:7098:39:7098:63 | map : TreeMap [] : String | provenance | | -| Test.java:5455:19:5455:21 | out : MyAbstractSortedMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractSortedMapDecorator [] : String | provenance | | -| Test.java:5455:19:5455:21 | out : MyAbstractSortedMapDecorator [] : String | Test.java:5455:9:5455:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5460:19:5460:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:5461:43:5461:44 | in : TreeMap [] : String | provenance | | -| Test.java:5460:42:5460:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:5460:42:5460:57 | (...)... : String | Test.java:5460:19:5460:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | -| Test.java:5460:50:5460:57 | source(...) : Object | Test.java:5460:42:5460:57 | (...)... : String | provenance | | -| Test.java:5461:10:5461:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | Test.java:5462:21:5462:23 | out : MyAbstractSortedMapDecorator [] : String | provenance | | -| Test.java:5461:43:5461:44 | in : TreeMap [] : String | Test.java:5461:10:5461:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | provenance | MaD:276 | -| Test.java:5461:43:5461:44 | in : TreeMap [] : String | Test.java:7098:39:7098:63 | map : TreeMap [] : String | provenance | | -| Test.java:5462:21:5462:23 | out : MyAbstractSortedMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractSortedMapDecorator [] : String | provenance | | -| Test.java:5462:21:5462:23 | out : MyAbstractSortedMapDecorator [] : String | Test.java:5462:9:5462:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5467:13:5467:42 | of(...) : Map [] : String | Test.java:5468:33:5468:34 | in : Map [] : String | provenance | | -| Test.java:5467:20:5467:35 | (...)... : String | Test.java:5467:13:5467:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5467:28:5467:35 | source(...) : Object | Test.java:5467:20:5467:35 | (...)... : String | provenance | | -| Test.java:5468:10:5468:35 | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | Test.java:5469:19:5469:21 | out : CaseInsensitiveMap [] : String | provenance | | -| Test.java:5468:33:5468:34 | in : Map [] : String | Test.java:5468:10:5468:35 | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | provenance | MaD:277 | -| Test.java:5469:19:5469:21 | out : CaseInsensitiveMap [] : String | Test.java:228:18:228:29 | map : CaseInsensitiveMap [] : String | provenance | | -| Test.java:5469:19:5469:21 | out : CaseInsensitiveMap [] : String | Test.java:5469:9:5469:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5474:13:5474:42 | of(...) : Map [] : String | Test.java:5475:33:5475:34 | in : Map [] : String | provenance | | -| Test.java:5474:26:5474:41 | (...)... : String | Test.java:5474:13:5474:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5474:34:5474:41 | source(...) : Object | Test.java:5474:26:5474:41 | (...)... : String | provenance | | -| Test.java:5475:10:5475:35 | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | Test.java:5476:21:5476:23 | out : CaseInsensitiveMap [] : String | provenance | | -| Test.java:5475:33:5475:34 | in : Map [] : String | Test.java:5475:10:5475:35 | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | provenance | MaD:278 | -| Test.java:5476:21:5476:23 | out : CaseInsensitiveMap [] : String | Test.java:232:20:232:31 | map : CaseInsensitiveMap [] : String | provenance | | -| Test.java:5476:21:5476:23 | out : CaseInsensitiveMap [] : String | Test.java:5476:9:5476:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5481:13:5481:42 | of(...) : Map [] : String | Test.java:5482:27:5482:28 | in : Map [] : String | provenance | | -| Test.java:5481:20:5481:35 | (...)... : String | Test.java:5481:13:5481:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5481:28:5481:35 | source(...) : Object | Test.java:5481:20:5481:35 | (...)... : String | provenance | | -| Test.java:5482:10:5482:40 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5483:19:5483:21 | out : CompositeMap [] : String | provenance | | -| Test.java:5482:27:5482:28 | in : Map [] : String | Test.java:5482:10:5482:40 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:279 | -| Test.java:5483:19:5483:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | -| Test.java:5483:19:5483:21 | out : CompositeMap [] : String | Test.java:5483:9:5483:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5488:13:5488:42 | of(...) : Map [] : String | Test.java:5489:38:5489:39 | in : Map [] : String | provenance | | -| Test.java:5488:20:5488:35 | (...)... : String | Test.java:5488:13:5488:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5488:28:5488:35 | source(...) : Object | Test.java:5488:20:5488:35 | (...)... : String | provenance | | -| Test.java:5489:10:5489:40 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5490:19:5490:21 | out : CompositeMap [] : String | provenance | | -| Test.java:5489:38:5489:39 | in : Map [] : String | Test.java:5489:10:5489:40 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:281 | -| Test.java:5490:19:5490:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | -| Test.java:5490:19:5490:21 | out : CompositeMap [] : String | Test.java:5490:9:5490:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5495:13:5495:42 | of(...) : Map [] : String | Test.java:5496:27:5496:28 | in : Map [] : String | provenance | | -| Test.java:5495:26:5495:41 | (...)... : String | Test.java:5495:13:5495:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5495:34:5495:41 | source(...) : Object | Test.java:5495:26:5495:41 | (...)... : String | provenance | | -| Test.java:5496:10:5496:40 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5497:21:5497:23 | out : CompositeMap [] : String | provenance | | -| Test.java:5496:27:5496:28 | in : Map [] : String | Test.java:5496:10:5496:40 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:280 | -| Test.java:5497:21:5497:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | -| Test.java:5497:21:5497:23 | out : CompositeMap [] : String | Test.java:5497:9:5497:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5502:13:5502:42 | of(...) : Map [] : String | Test.java:5503:38:5503:39 | in : Map [] : String | provenance | | -| Test.java:5502:26:5502:41 | (...)... : String | Test.java:5502:13:5502:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5502:34:5502:41 | source(...) : Object | Test.java:5502:26:5502:41 | (...)... : String | provenance | | -| Test.java:5503:10:5503:40 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5504:21:5504:23 | out : CompositeMap [] : String | provenance | | -| Test.java:5503:38:5503:39 | in : Map [] : String | Test.java:5503:10:5503:40 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:282 | -| Test.java:5504:21:5504:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | -| Test.java:5504:21:5504:23 | out : CompositeMap [] : String | Test.java:5504:9:5504:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5509:13:5509:42 | of(...) : Map [] : String | Test.java:5510:27:5510:28 | in : Map [] : String | provenance | | -| Test.java:5509:20:5509:35 | (...)... : String | Test.java:5509:13:5509:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5509:28:5509:35 | source(...) : Object | Test.java:5509:20:5509:35 | (...)... : String | provenance | | -| Test.java:5510:10:5510:41 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5511:19:5511:21 | out : CompositeMap [] : String | provenance | | -| Test.java:5510:27:5510:28 | in : Map [] : String | Test.java:5510:10:5510:41 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:283 | -| Test.java:5511:19:5511:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | -| Test.java:5511:19:5511:21 | out : CompositeMap [] : String | Test.java:5511:9:5511:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5516:13:5516:42 | of(...) : Map [] : String | Test.java:5517:33:5517:34 | in : Map [] : String | provenance | | -| Test.java:5516:20:5516:35 | (...)... : String | Test.java:5516:13:5516:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5516:28:5516:35 | source(...) : Object | Test.java:5516:20:5516:35 | (...)... : String | provenance | | -| Test.java:5517:10:5517:41 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5518:19:5518:21 | out : CompositeMap [] : String | provenance | | -| Test.java:5517:33:5517:34 | in : Map [] : String | Test.java:5517:10:5517:41 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:285 | -| Test.java:5518:19:5518:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | -| Test.java:5518:19:5518:21 | out : CompositeMap [] : String | Test.java:5518:9:5518:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5523:13:5523:42 | of(...) : Map [] : String | Test.java:5524:27:5524:28 | in : Map [] : String | provenance | | -| Test.java:5523:26:5523:41 | (...)... : String | Test.java:5523:13:5523:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5523:34:5523:41 | source(...) : Object | Test.java:5523:26:5523:41 | (...)... : String | provenance | | -| Test.java:5524:10:5524:41 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5525:21:5525:23 | out : CompositeMap [] : String | provenance | | -| Test.java:5524:27:5524:28 | in : Map [] : String | Test.java:5524:10:5524:41 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:284 | -| Test.java:5525:21:5525:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | -| Test.java:5525:21:5525:23 | out : CompositeMap [] : String | Test.java:5525:9:5525:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5530:13:5530:42 | of(...) : Map [] : String | Test.java:5531:33:5531:34 | in : Map [] : String | provenance | | -| Test.java:5530:26:5530:41 | (...)... : String | Test.java:5530:13:5530:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5530:34:5530:41 | source(...) : Object | Test.java:5530:26:5530:41 | (...)... : String | provenance | | -| Test.java:5531:10:5531:41 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5532:21:5532:23 | out : CompositeMap [] : String | provenance | | -| Test.java:5531:33:5531:34 | in : Map [] : String | Test.java:5531:10:5531:41 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:286 | -| Test.java:5532:21:5532:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | -| Test.java:5532:21:5532:23 | out : CompositeMap [] : String | Test.java:5532:9:5532:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5537:15:5537:55 | {...} : Map[] [[], ] : String | Test.java:5538:27:5538:28 | in : Map[] [[], ] : String | provenance | | -| Test.java:5537:25:5537:54 | of(...) : Map [] : String | Test.java:5537:15:5537:55 | {...} : Map[] [[], ] : String | provenance | | -| Test.java:5537:32:5537:47 | (...)... : String | Test.java:5537:25:5537:54 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5537:40:5537:47 | source(...) : Object | Test.java:5537:32:5537:47 | (...)... : String | provenance | | -| Test.java:5538:10:5538:29 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5539:19:5539:21 | out : CompositeMap [] : String | provenance | | -| Test.java:5538:27:5538:28 | in : Map[] [[], ] : String | Test.java:5538:10:5538:29 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:287 | -| Test.java:5539:19:5539:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | -| Test.java:5539:19:5539:21 | out : CompositeMap [] : String | Test.java:5539:9:5539:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5544:15:5544:55 | {...} : Map[] [[], ] : String | Test.java:5545:27:5545:28 | in : Map[] [[], ] : String | provenance | | -| Test.java:5544:25:5544:54 | of(...) : Map [] : String | Test.java:5544:15:5544:55 | {...} : Map[] [[], ] : String | provenance | | -| Test.java:5544:38:5544:53 | (...)... : String | Test.java:5544:25:5544:54 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5544:46:5544:53 | source(...) : Object | Test.java:5544:38:5544:53 | (...)... : String | provenance | | -| Test.java:5545:10:5545:29 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5546:21:5546:23 | out : CompositeMap [] : String | provenance | | -| Test.java:5545:27:5545:28 | in : Map[] [[], ] : String | Test.java:5545:10:5545:29 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:288 | -| Test.java:5546:21:5546:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | -| Test.java:5546:21:5546:23 | out : CompositeMap [] : String | Test.java:5546:9:5546:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5551:15:5551:55 | {...} : Map[] [[], ] : String | Test.java:5552:27:5552:28 | in : Map[] [[], ] : String | provenance | | -| Test.java:5551:25:5551:54 | of(...) : Map [] : String | Test.java:5551:15:5551:55 | {...} : Map[] [[], ] : String | provenance | | -| Test.java:5551:32:5551:47 | (...)... : String | Test.java:5551:25:5551:54 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5551:40:5551:47 | source(...) : Object | Test.java:5551:32:5551:47 | (...)... : String | provenance | | -| Test.java:5552:10:5552:60 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5553:19:5553:21 | out : CompositeMap [] : String | provenance | | -| Test.java:5552:27:5552:28 | in : Map[] [[], ] : String | Test.java:5552:10:5552:60 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:289 | -| Test.java:5553:19:5553:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | -| Test.java:5553:19:5553:21 | out : CompositeMap [] : String | Test.java:5553:9:5553:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5558:15:5558:55 | {...} : Map[] [[], ] : String | Test.java:5559:27:5559:28 | in : Map[] [[], ] : String | provenance | | -| Test.java:5558:25:5558:54 | of(...) : Map [] : String | Test.java:5558:15:5558:55 | {...} : Map[] [[], ] : String | provenance | | -| Test.java:5558:38:5558:53 | (...)... : String | Test.java:5558:25:5558:54 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5558:46:5558:53 | source(...) : Object | Test.java:5558:38:5558:53 | (...)... : String | provenance | | -| Test.java:5559:10:5559:60 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5560:21:5560:23 | out : CompositeMap [] : String | provenance | | -| Test.java:5559:27:5559:28 | in : Map[] [[], ] : String | Test.java:5559:10:5559:60 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:290 | -| Test.java:5560:21:5560:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | -| Test.java:5560:21:5560:23 | out : CompositeMap [] : String | Test.java:5560:9:5560:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5565:13:5565:42 | of(...) : Map [] : String | Test.java:5566:22:5566:23 | in : Map [] : String | provenance | | -| Test.java:5565:20:5565:35 | (...)... : String | Test.java:5565:13:5565:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5565:28:5565:35 | source(...) : Object | Test.java:5565:20:5565:35 | (...)... : String | provenance | | -| Test.java:5566:4:5566:6 | out [post update] : CompositeMap [] : String | Test.java:5567:19:5567:21 | out : CompositeMap [] : String | provenance | | -| Test.java:5566:22:5566:23 | in : Map [] : String | Test.java:5566:4:5566:6 | out [post update] : CompositeMap [] : String | provenance | MaD:291 | -| Test.java:5567:19:5567:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | -| Test.java:5567:19:5567:21 | out : CompositeMap [] : String | Test.java:5567:9:5567:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5572:13:5572:42 | of(...) : Map [] : String | Test.java:5573:22:5573:23 | in : Map [] : String | provenance | | -| Test.java:5572:26:5572:41 | (...)... : String | Test.java:5572:13:5572:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5572:34:5572:41 | source(...) : Object | Test.java:5572:26:5572:41 | (...)... : String | provenance | | -| Test.java:5573:4:5573:6 | out [post update] : CompositeMap [] : String | Test.java:5574:21:5574:23 | out : CompositeMap [] : String | provenance | | -| Test.java:5573:22:5573:23 | in : Map [] : String | Test.java:5573:4:5573:6 | out [post update] : CompositeMap [] : String | provenance | MaD:292 | -| Test.java:5574:21:5574:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | -| Test.java:5574:21:5574:23 | out : CompositeMap [] : String | Test.java:5574:9:5574:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5579:13:5579:25 | (...)... : Map | Test.java:5581:36:5581:37 | in : Map | provenance | | -| Test.java:5579:18:5579:25 | source(...) : Object | Test.java:5579:13:5579:25 | (...)... : Map | provenance | | -| Test.java:5581:10:5581:38 | removeComposited(...) : Map | Test.java:5582:9:5582:11 | out | provenance | | -| Test.java:5581:36:5581:37 | in : Map | Test.java:5581:10:5581:38 | removeComposited(...) : Map | provenance | MaD:293 | -| Test.java:5587:22:5587:75 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5588:10:5588:11 | in : CompositeMap [] : String | provenance | | -| Test.java:5587:39:5587:68 | of(...) : Map [] : String | Test.java:5587:22:5587:75 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:279 | -| Test.java:5587:46:5587:61 | (...)... : String | Test.java:5587:39:5587:68 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5587:54:5587:61 | source(...) : Object | Test.java:5587:46:5587:61 | (...)... : String | provenance | | -| Test.java:5588:10:5588:11 | in : CompositeMap [] : String | Test.java:5588:10:5588:34 | removeComposited(...) : Map [] : String | provenance | MaD:294 | -| Test.java:5588:10:5588:34 | removeComposited(...) : Map [] : String | Test.java:5589:19:5589:21 | out : Map [] : String | provenance | | -| Test.java:5589:19:5589:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:5589:19:5589:21 | out : Map [] : String | Test.java:5589:9:5589:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5594:22:5594:75 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5595:10:5595:11 | in : CompositeMap [] : String | provenance | | -| Test.java:5594:39:5594:68 | of(...) : Map [] : String | Test.java:5594:22:5594:75 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:280 | -| Test.java:5594:52:5594:67 | (...)... : String | Test.java:5594:39:5594:68 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5594:60:5594:67 | source(...) : Object | Test.java:5594:52:5594:67 | (...)... : String | provenance | | -| Test.java:5595:10:5595:11 | in : CompositeMap [] : String | Test.java:5595:10:5595:34 | removeComposited(...) : Map [] : String | provenance | MaD:295 | -| Test.java:5595:10:5595:34 | removeComposited(...) : Map [] : String | Test.java:5596:21:5596:23 | out : Map [] : String | provenance | | -| Test.java:5596:21:5596:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:5596:21:5596:23 | out : Map [] : String | Test.java:5596:9:5596:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5601:16:5601:23 | source(...) : Object | Test.java:5602:27:5602:28 | in : Object | provenance | | -| Test.java:5602:10:5602:29 | new DefaultedMap<>(...) : DefaultedMap [] : Object | Test.java:5603:21:5603:23 | out : DefaultedMap [] : Object | provenance | | -| Test.java:5602:27:5602:28 | in : Object | Test.java:5602:10:5602:29 | new DefaultedMap<>(...) : DefaultedMap [] : Object | provenance | MaD:296 | -| Test.java:5603:21:5603:23 | out : DefaultedMap [] : Object | Test.java:232:20:232:31 | map : DefaultedMap [] : Object | provenance | | -| Test.java:5603:21:5603:23 | out : DefaultedMap [] : Object | Test.java:5603:9:5603:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5608:16:5608:23 | source(...) : Object | Test.java:5609:47:5609:48 | in : Object | provenance | | -| Test.java:5609:10:5609:49 | defaultedMap(...) : DefaultedMap [] : Object | Test.java:5610:21:5610:23 | out : DefaultedMap [] : Object | provenance | | -| Test.java:5609:47:5609:48 | in : Object | Test.java:5609:10:5609:49 | defaultedMap(...) : DefaultedMap [] : Object | provenance | MaD:297 | -| Test.java:5610:21:5610:23 | out : DefaultedMap [] : Object | Test.java:232:20:232:31 | map : DefaultedMap [] : Object | provenance | | -| Test.java:5610:21:5610:23 | out : DefaultedMap [] : Object | Test.java:5610:9:5610:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5615:28:5615:57 | of(...) : Map [] : String | Test.java:5616:36:5616:37 | in : Map [] : String | provenance | | -| Test.java:5615:35:5615:50 | (...)... : String | Test.java:5615:28:5615:57 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5615:43:5615:50 | source(...) : Object | Test.java:5615:35:5615:50 | (...)... : String | provenance | | -| Test.java:5616:10:5616:57 | defaultedMap(...) : Map [] : String | Test.java:5617:19:5617:21 | out : Map [] : String | provenance | | -| Test.java:5616:36:5616:37 | in : Map [] : String | Test.java:5616:10:5616:57 | defaultedMap(...) : Map [] : String | provenance | MaD:298 | -| Test.java:5617:19:5617:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:5617:19:5617:21 | out : Map [] : String | Test.java:5617:9:5617:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5622:13:5622:42 | of(...) : Map [] : String | Test.java:5623:36:5623:37 | in : Map [] : String | provenance | | -| Test.java:5622:20:5622:35 | (...)... : String | Test.java:5622:13:5622:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5622:28:5622:35 | source(...) : Object | Test.java:5622:20:5622:35 | (...)... : String | provenance | | -| Test.java:5623:10:5623:52 | defaultedMap(...) : DefaultedMap [] : String | Test.java:5624:19:5624:21 | out : DefaultedMap [] : String | provenance | | -| Test.java:5623:36:5623:37 | in : Map [] : String | Test.java:5623:10:5623:52 | defaultedMap(...) : DefaultedMap [] : String | provenance | MaD:298 | -| Test.java:5624:19:5624:21 | out : DefaultedMap [] : String | Test.java:228:18:228:29 | map : DefaultedMap [] : String | provenance | | -| Test.java:5624:19:5624:21 | out : DefaultedMap [] : String | Test.java:5624:9:5624:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5629:28:5629:57 | of(...) : Map [] : String | Test.java:5630:36:5630:37 | in : Map [] : String | provenance | | -| Test.java:5629:35:5629:50 | (...)... : String | Test.java:5629:28:5629:57 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5629:43:5629:50 | source(...) : Object | Test.java:5629:35:5629:50 | (...)... : String | provenance | | -| Test.java:5630:10:5630:53 | defaultedMap(...) : DefaultedMap [] : String | Test.java:5631:19:5631:21 | out : DefaultedMap [] : String | provenance | | -| Test.java:5630:36:5630:37 | in : Map [] : String | Test.java:5630:10:5630:53 | defaultedMap(...) : DefaultedMap [] : String | provenance | MaD:298 | -| Test.java:5631:19:5631:21 | out : DefaultedMap [] : String | Test.java:228:18:228:29 | map : DefaultedMap [] : String | provenance | | -| Test.java:5631:19:5631:21 | out : DefaultedMap [] : String | Test.java:5631:9:5631:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5636:28:5636:57 | of(...) : Map [] : String | Test.java:5637:36:5637:37 | in : Map [] : String | provenance | | -| Test.java:5636:41:5636:56 | (...)... : String | Test.java:5636:28:5636:57 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5636:49:5636:56 | source(...) : Object | Test.java:5636:41:5636:56 | (...)... : String | provenance | | -| Test.java:5637:10:5637:57 | defaultedMap(...) : Map [] : String | Test.java:5638:21:5638:23 | out : Map [] : String | provenance | | -| Test.java:5637:36:5637:37 | in : Map [] : String | Test.java:5637:10:5637:57 | defaultedMap(...) : Map [] : String | provenance | MaD:299 | -| Test.java:5638:21:5638:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:5638:21:5638:23 | out : Map [] : String | Test.java:5638:9:5638:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5643:13:5643:42 | of(...) : Map [] : String | Test.java:5644:36:5644:37 | in : Map [] : String | provenance | | -| Test.java:5643:26:5643:41 | (...)... : String | Test.java:5643:13:5643:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5643:34:5643:41 | source(...) : Object | Test.java:5643:26:5643:41 | (...)... : String | provenance | | -| Test.java:5644:10:5644:52 | defaultedMap(...) : DefaultedMap [] : String | Test.java:5645:21:5645:23 | out : DefaultedMap [] : String | provenance | | -| Test.java:5644:36:5644:37 | in : Map [] : String | Test.java:5644:10:5644:52 | defaultedMap(...) : DefaultedMap [] : String | provenance | MaD:299 | -| Test.java:5645:21:5645:23 | out : DefaultedMap [] : String | Test.java:232:20:232:31 | map : DefaultedMap [] : String | provenance | | -| Test.java:5645:21:5645:23 | out : DefaultedMap [] : String | Test.java:5645:9:5645:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5650:28:5650:57 | of(...) : Map [] : String | Test.java:5651:36:5651:37 | in : Map [] : String | provenance | | -| Test.java:5650:41:5650:56 | (...)... : String | Test.java:5650:28:5650:57 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5650:49:5650:56 | source(...) : Object | Test.java:5650:41:5650:56 | (...)... : String | provenance | | -| Test.java:5651:10:5651:53 | defaultedMap(...) : DefaultedMap [] : String | Test.java:5652:21:5652:23 | out : DefaultedMap [] : String | provenance | | -| Test.java:5651:36:5651:37 | in : Map [] : String | Test.java:5651:10:5651:53 | defaultedMap(...) : DefaultedMap [] : String | provenance | MaD:299 | -| Test.java:5652:21:5652:23 | out : DefaultedMap [] : String | Test.java:232:20:232:31 | map : DefaultedMap [] : String | provenance | | -| Test.java:5652:21:5652:23 | out : DefaultedMap [] : String | Test.java:5652:9:5652:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5657:13:5657:76 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | Test.java:5658:43:5658:44 | in : ListOrderedSet [, ] : String | provenance | | -| Test.java:5657:42:5657:75 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | provenance | | -| Test.java:5657:42:5657:75 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:5657:13:5657:76 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | provenance | MaD:4 | -| Test.java:5657:59:5657:74 | (...)... : String | Test.java:286:46:286:50 | key : String | provenance | | -| Test.java:5657:59:5657:74 | (...)... : String | Test.java:5657:42:5657:75 | newTMEWithMapKey(...) : TiedMapEntry [] : String | provenance | MaD:236 | -| Test.java:5657:67:5657:74 | source(...) : Object | Test.java:5657:59:5657:74 | (...)... : String | provenance | | -| Test.java:5658:10:5658:45 | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | Test.java:5659:20:5659:22 | out : EntrySetToMapIteratorAdapter [] : String | provenance | | -| Test.java:5658:43:5658:44 | in : ListOrderedSet [, ] : String | Test.java:5658:10:5658:45 | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | provenance | MaD:300 | -| Test.java:5659:20:5659:22 | out : EntrySetToMapIteratorAdapter [] : String | Test.java:231:19:231:32 | it : EntrySetToMapIteratorAdapter [] : String | provenance | | -| Test.java:5659:20:5659:22 | out : EntrySetToMapIteratorAdapter [] : String | Test.java:5659:9:5659:23 | getElement(...) | provenance | MaD:6 | -| Test.java:5664:13:5664:78 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | Test.java:5665:43:5665:44 | in : ListOrderedSet [, ] : String | provenance | | -| Test.java:5664:42:5664:77 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | provenance | | -| Test.java:5664:42:5664:77 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:5664:13:5664:78 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | provenance | MaD:4 | -| Test.java:5664:61:5664:76 | (...)... : String | Test.java:305:48:305:54 | value : String | provenance | | -| Test.java:5664:61:5664:76 | (...)... : String | Test.java:5664:42:5664:77 | newTMEWithMapValue(...) : TiedMapEntry [] : String | provenance | MaD:20 | -| Test.java:5664:69:5664:76 | source(...) : Object | Test.java:5664:61:5664:76 | (...)... : String | provenance | | -| Test.java:5665:10:5665:45 | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | Test.java:5666:21:5666:23 | out : EntrySetToMapIteratorAdapter [] : String | provenance | | -| Test.java:5665:43:5665:44 | in : ListOrderedSet [, ] : String | Test.java:5665:10:5665:45 | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | provenance | MaD:301 | -| Test.java:5666:21:5666:23 | out : EntrySetToMapIteratorAdapter [] : String | Test.java:246:20:246:47 | mapIterator : EntrySetToMapIteratorAdapter [] : String | provenance | | -| Test.java:5666:21:5666:23 | out : EntrySetToMapIteratorAdapter [] : String | Test.java:5666:9:5666:24 | getMapValue(...) | provenance | MaD:673 | -| Test.java:5671:13:5671:42 | of(...) : Map [] : String | Test.java:5672:36:5672:37 | in : Map [] : String | provenance | | -| Test.java:5671:20:5671:35 | (...)... : String | Test.java:5671:13:5671:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5671:28:5671:35 | source(...) : Object | Test.java:5671:20:5671:35 | (...)... : String | provenance | | -| Test.java:5672:10:5672:38 | fixedSizeMap(...) : FixedSizeMap [] : String | Test.java:5673:19:5673:21 | out : FixedSizeMap [] : String | provenance | | -| Test.java:5672:36:5672:37 | in : Map [] : String | Test.java:5672:10:5672:38 | fixedSizeMap(...) : FixedSizeMap [] : String | provenance | MaD:302 | -| Test.java:5673:19:5673:21 | out : FixedSizeMap [] : String | Test.java:228:18:228:29 | map : FixedSizeMap [] : String | provenance | | -| Test.java:5673:19:5673:21 | out : FixedSizeMap [] : String | Test.java:5673:9:5673:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5678:13:5678:42 | of(...) : Map [] : String | Test.java:5679:36:5679:37 | in : Map [] : String | provenance | | -| Test.java:5678:26:5678:41 | (...)... : String | Test.java:5678:13:5678:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5678:34:5678:41 | source(...) : Object | Test.java:5678:26:5678:41 | (...)... : String | provenance | | -| Test.java:5679:10:5679:38 | fixedSizeMap(...) : FixedSizeMap [] : String | Test.java:5680:21:5680:23 | out : FixedSizeMap [] : String | provenance | | -| Test.java:5679:36:5679:37 | in : Map [] : String | Test.java:5679:10:5679:38 | fixedSizeMap(...) : FixedSizeMap [] : String | provenance | MaD:303 | -| Test.java:5680:21:5680:23 | out : FixedSizeMap [] : String | Test.java:232:20:232:31 | map : FixedSizeMap [] : String | provenance | | -| Test.java:5680:21:5680:23 | out : FixedSizeMap [] : String | Test.java:5680:9:5680:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5685:19:5685:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:5686:48:5686:49 | in : TreeMap [] : String | provenance | | -| Test.java:5685:40:5685:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:5685:40:5685:55 | (...)... : String | Test.java:5685:19:5685:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | -| Test.java:5685:48:5685:55 | source(...) : Object | Test.java:5685:40:5685:55 | (...)... : String | provenance | | -| Test.java:5686:10:5686:50 | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | Test.java:5687:19:5687:21 | out : FixedSizeSortedMap [] : String | provenance | | -| Test.java:5686:48:5686:49 | in : TreeMap [] : String | Test.java:5686:10:5686:50 | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | provenance | MaD:304 | -| Test.java:5687:19:5687:21 | out : FixedSizeSortedMap [] : String | Test.java:228:18:228:29 | map : FixedSizeSortedMap [] : String | provenance | | -| Test.java:5687:19:5687:21 | out : FixedSizeSortedMap [] : String | Test.java:5687:9:5687:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5692:19:5692:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:5693:48:5693:49 | in : TreeMap [] : String | provenance | | -| Test.java:5692:42:5692:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:5692:42:5692:57 | (...)... : String | Test.java:5692:19:5692:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | -| Test.java:5692:50:5692:57 | source(...) : Object | Test.java:5692:42:5692:57 | (...)... : String | provenance | | -| Test.java:5693:10:5693:50 | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | Test.java:5694:21:5694:23 | out : FixedSizeSortedMap [] : String | provenance | | -| Test.java:5693:48:5693:49 | in : TreeMap [] : String | Test.java:5693:10:5693:50 | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | provenance | MaD:305 | -| Test.java:5694:21:5694:23 | out : FixedSizeSortedMap [] : String | Test.java:232:20:232:31 | map : FixedSizeSortedMap [] : String | provenance | | -| Test.java:5694:21:5694:23 | out : FixedSizeSortedMap [] : String | Test.java:5694:9:5694:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5699:13:5699:42 | of(...) : Map [] : String | Test.java:5700:23:5700:24 | in : Map [] : String | provenance | | -| Test.java:5699:20:5699:35 | (...)... : String | Test.java:5699:13:5699:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5699:28:5699:35 | source(...) : Object | Test.java:5699:20:5699:35 | (...)... : String | provenance | | -| Test.java:5700:10:5700:25 | new Flat3Map<>(...) : Flat3Map [] : String | Test.java:5701:19:5701:21 | out : Flat3Map [] : String | provenance | | -| Test.java:5700:23:5700:24 | in : Map [] : String | Test.java:5700:10:5700:25 | new Flat3Map<>(...) : Flat3Map [] : String | provenance | MaD:306 | -| Test.java:5701:19:5701:21 | out : Flat3Map [] : String | Test.java:228:18:228:29 | map : Flat3Map [] : String | provenance | | -| Test.java:5701:19:5701:21 | out : Flat3Map [] : String | Test.java:5701:9:5701:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5706:13:5706:42 | of(...) : Map [] : String | Test.java:5707:23:5707:24 | in : Map [] : String | provenance | | -| Test.java:5706:26:5706:41 | (...)... : String | Test.java:5706:13:5706:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5706:34:5706:41 | source(...) : Object | Test.java:5706:26:5706:41 | (...)... : String | provenance | | -| Test.java:5707:10:5707:25 | new Flat3Map<>(...) : Flat3Map [] : String | Test.java:5708:21:5708:23 | out : Flat3Map [] : String | provenance | | -| Test.java:5707:23:5707:24 | in : Map [] : String | Test.java:5707:10:5707:25 | new Flat3Map<>(...) : Flat3Map [] : String | provenance | MaD:307 | -| Test.java:5708:21:5708:23 | out : Flat3Map [] : String | Test.java:232:20:232:31 | map : Flat3Map [] : String | provenance | | -| Test.java:5708:21:5708:23 | out : Flat3Map [] : String | Test.java:5708:9:5708:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5713:13:5713:42 | of(...) : Map [] : String | Test.java:5714:24:5714:25 | in : Map [] : String | provenance | | -| Test.java:5713:20:5713:35 | (...)... : String | Test.java:5713:13:5713:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5713:28:5713:35 | source(...) : Object | Test.java:5713:20:5713:35 | (...)... : String | provenance | | -| Test.java:5714:10:5714:26 | new HashedMap<>(...) : HashedMap [] : String | Test.java:5715:19:5715:21 | out : HashedMap [] : String | provenance | | -| Test.java:5714:24:5714:25 | in : Map [] : String | Test.java:5714:10:5714:26 | new HashedMap<>(...) : HashedMap [] : String | provenance | MaD:308 | -| Test.java:5715:19:5715:21 | out : HashedMap [] : String | Test.java:228:18:228:29 | map : HashedMap [] : String | provenance | | -| Test.java:5715:19:5715:21 | out : HashedMap [] : String | Test.java:5715:9:5715:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5720:13:5720:42 | of(...) : Map [] : String | Test.java:5721:24:5721:25 | in : Map [] : String | provenance | | -| Test.java:5720:26:5720:41 | (...)... : String | Test.java:5720:13:5720:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5720:34:5720:41 | source(...) : Object | Test.java:5720:26:5720:41 | (...)... : String | provenance | | -| Test.java:5721:10:5721:26 | new HashedMap<>(...) : HashedMap [] : String | Test.java:5722:21:5722:23 | out : HashedMap [] : String | provenance | | -| Test.java:5721:24:5721:25 | in : Map [] : String | Test.java:5721:10:5721:26 | new HashedMap<>(...) : HashedMap [] : String | provenance | MaD:309 | -| Test.java:5722:21:5722:23 | out : HashedMap [] : String | Test.java:232:20:232:31 | map : HashedMap [] : String | provenance | | -| Test.java:5722:21:5722:23 | out : HashedMap [] : String | Test.java:5722:9:5722:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5727:13:5727:42 | of(...) : Map [] : String | Test.java:5728:21:5728:22 | in : Map [] : String | provenance | | -| Test.java:5727:20:5727:35 | (...)... : String | Test.java:5727:13:5727:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5727:28:5727:35 | source(...) : Object | Test.java:5727:20:5727:35 | (...)... : String | provenance | | -| Test.java:5728:10:5728:23 | new LRUMap<>(...) : LRUMap [] : String | Test.java:5729:19:5729:21 | out : LRUMap [] : String | provenance | | -| Test.java:5728:21:5728:22 | in : Map [] : String | Test.java:5728:10:5728:23 | new LRUMap<>(...) : LRUMap [] : String | provenance | MaD:310 | -| Test.java:5729:19:5729:21 | out : LRUMap [] : String | Test.java:228:18:228:29 | map : LRUMap [] : String | provenance | | -| Test.java:5729:19:5729:21 | out : LRUMap [] : String | Test.java:5729:9:5729:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5734:13:5734:42 | of(...) : Map [] : String | Test.java:5735:21:5735:22 | in : Map [] : String | provenance | | -| Test.java:5734:26:5734:41 | (...)... : String | Test.java:5734:13:5734:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5734:34:5734:41 | source(...) : Object | Test.java:5734:26:5734:41 | (...)... : String | provenance | | -| Test.java:5735:10:5735:23 | new LRUMap<>(...) : LRUMap [] : String | Test.java:5736:21:5736:23 | out : LRUMap [] : String | provenance | | -| Test.java:5735:21:5735:22 | in : Map [] : String | Test.java:5735:10:5735:23 | new LRUMap<>(...) : LRUMap [] : String | provenance | MaD:311 | -| Test.java:5736:21:5736:23 | out : LRUMap [] : String | Test.java:232:20:232:31 | map : LRUMap [] : String | provenance | | -| Test.java:5736:21:5736:23 | out : LRUMap [] : String | Test.java:5736:9:5736:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5741:13:5741:42 | of(...) : Map [] : String | Test.java:5742:21:5742:22 | in : Map [] : String | provenance | | -| Test.java:5741:20:5741:35 | (...)... : String | Test.java:5741:13:5741:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5741:28:5741:35 | source(...) : Object | Test.java:5741:20:5741:35 | (...)... : String | provenance | | -| Test.java:5742:10:5742:30 | new LRUMap<>(...) : LRUMap [] : String | Test.java:5743:19:5743:21 | out : LRUMap [] : String | provenance | | -| Test.java:5742:21:5742:22 | in : Map [] : String | Test.java:5742:10:5742:30 | new LRUMap<>(...) : LRUMap [] : String | provenance | MaD:312 | -| Test.java:5743:19:5743:21 | out : LRUMap [] : String | Test.java:228:18:228:29 | map : LRUMap [] : String | provenance | | -| Test.java:5743:19:5743:21 | out : LRUMap [] : String | Test.java:5743:9:5743:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5748:13:5748:42 | of(...) : Map [] : String | Test.java:5749:21:5749:22 | in : Map [] : String | provenance | | -| Test.java:5748:26:5748:41 | (...)... : String | Test.java:5748:13:5748:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5748:34:5748:41 | source(...) : Object | Test.java:5748:26:5748:41 | (...)... : String | provenance | | -| Test.java:5749:10:5749:30 | new LRUMap<>(...) : LRUMap [] : String | Test.java:5750:21:5750:23 | out : LRUMap [] : String | provenance | | -| Test.java:5749:21:5749:22 | in : Map [] : String | Test.java:5749:10:5749:30 | new LRUMap<>(...) : LRUMap [] : String | provenance | MaD:313 | -| Test.java:5750:21:5750:23 | out : LRUMap [] : String | Test.java:232:20:232:31 | map : LRUMap [] : String | provenance | | -| Test.java:5750:21:5750:23 | out : LRUMap [] : String | Test.java:5750:9:5750:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5755:16:5755:53 | (...)... : Map [] : String | Test.java:5757:23:5757:24 | in : Map [] : String | provenance | | -| Test.java:5755:24:5755:53 | of(...) : Map [] : String | Test.java:5755:16:5755:53 | (...)... : Map [] : String | provenance | | -| Test.java:5755:37:5755:52 | (...)... : String | Test.java:5755:24:5755:53 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5755:45:5755:52 | source(...) : Object | Test.java:5755:37:5755:52 | (...)... : String | provenance | | -| Test.java:5757:10:5757:32 | get(...) : String | Test.java:5758:9:5758:11 | out | provenance | | -| Test.java:5757:23:5757:24 | in : Map [] : String | Test.java:5757:10:5757:32 | get(...) : String | provenance | MaD:314 | -| Test.java:5763:13:5763:42 | of(...) : Map [] : String | Test.java:5764:26:5764:27 | in : Map [] : String | provenance | | -| Test.java:5763:20:5763:35 | (...)... : String | Test.java:5763:13:5763:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5763:28:5763:35 | source(...) : Object | Test.java:5763:20:5763:35 | (...)... : String | provenance | | -| Test.java:5764:10:5764:47 | lazyMap(...) : LazyMap [] : String | Test.java:5765:19:5765:21 | out : LazyMap [] : String | provenance | | -| Test.java:5764:26:5764:27 | in : Map [] : String | Test.java:5764:10:5764:47 | lazyMap(...) : LazyMap [] : String | provenance | MaD:315 | -| Test.java:5765:19:5765:21 | out : LazyMap [] : String | Test.java:228:18:228:29 | map : LazyMap [] : String | provenance | | -| Test.java:5765:19:5765:21 | out : LazyMap [] : String | Test.java:5765:9:5765:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5770:13:5770:42 | of(...) : Map [] : String | Test.java:5771:26:5771:27 | in : Map [] : String | provenance | | -| Test.java:5770:20:5770:35 | (...)... : String | Test.java:5770:13:5770:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5770:28:5770:35 | source(...) : Object | Test.java:5770:20:5770:35 | (...)... : String | provenance | | -| Test.java:5771:10:5771:43 | lazyMap(...) : LazyMap [] : String | Test.java:5772:19:5772:21 | out : LazyMap [] : String | provenance | | -| Test.java:5771:26:5771:27 | in : Map [] : String | Test.java:5771:10:5771:43 | lazyMap(...) : LazyMap [] : String | provenance | MaD:315 | -| Test.java:5772:19:5772:21 | out : LazyMap [] : String | Test.java:228:18:228:29 | map : LazyMap [] : String | provenance | | -| Test.java:5772:19:5772:21 | out : LazyMap [] : String | Test.java:5772:9:5772:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5777:13:5777:42 | of(...) : Map [] : String | Test.java:5778:26:5778:27 | in : Map [] : String | provenance | | -| Test.java:5777:26:5777:41 | (...)... : String | Test.java:5777:13:5777:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5777:34:5777:41 | source(...) : Object | Test.java:5777:26:5777:41 | (...)... : String | provenance | | -| Test.java:5778:10:5778:47 | lazyMap(...) : LazyMap [] : String | Test.java:5779:21:5779:23 | out : LazyMap [] : String | provenance | | -| Test.java:5778:26:5778:27 | in : Map [] : String | Test.java:5778:10:5778:47 | lazyMap(...) : LazyMap [] : String | provenance | MaD:316 | -| Test.java:5779:21:5779:23 | out : LazyMap [] : String | Test.java:232:20:232:31 | map : LazyMap [] : String | provenance | | -| Test.java:5779:21:5779:23 | out : LazyMap [] : String | Test.java:5779:9:5779:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5784:13:5784:42 | of(...) : Map [] : String | Test.java:5785:26:5785:27 | in : Map [] : String | provenance | | -| Test.java:5784:26:5784:41 | (...)... : String | Test.java:5784:13:5784:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5784:34:5784:41 | source(...) : Object | Test.java:5784:26:5784:41 | (...)... : String | provenance | | -| Test.java:5785:10:5785:43 | lazyMap(...) : LazyMap [] : String | Test.java:5786:21:5786:23 | out : LazyMap [] : String | provenance | | -| Test.java:5785:26:5785:27 | in : Map [] : String | Test.java:5785:10:5785:43 | lazyMap(...) : LazyMap [] : String | provenance | MaD:316 | -| Test.java:5786:21:5786:23 | out : LazyMap [] : String | Test.java:232:20:232:31 | map : LazyMap [] : String | provenance | | -| Test.java:5786:21:5786:23 | out : LazyMap [] : String | Test.java:5786:9:5786:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5791:19:5791:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:5792:38:5792:39 | in : TreeMap [] : String | provenance | | -| Test.java:5791:40:5791:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:5791:40:5791:55 | (...)... : String | Test.java:5791:19:5791:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | -| Test.java:5791:48:5791:55 | source(...) : Object | Test.java:5791:40:5791:55 | (...)... : String | provenance | | -| Test.java:5792:10:5792:59 | lazySortedMap(...) : LazySortedMap [] : String | Test.java:5793:19:5793:21 | out : LazySortedMap [] : String | provenance | | -| Test.java:5792:38:5792:39 | in : TreeMap [] : String | Test.java:5792:10:5792:59 | lazySortedMap(...) : LazySortedMap [] : String | provenance | MaD:317 | -| Test.java:5793:19:5793:21 | out : LazySortedMap [] : String | Test.java:228:18:228:29 | map : LazySortedMap [] : String | provenance | | -| Test.java:5793:19:5793:21 | out : LazySortedMap [] : String | Test.java:5793:9:5793:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5798:19:5798:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:5799:38:5799:39 | in : TreeMap [] : String | provenance | | -| Test.java:5798:40:5798:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:5798:40:5798:55 | (...)... : String | Test.java:5798:19:5798:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | -| Test.java:5798:48:5798:55 | source(...) : Object | Test.java:5798:40:5798:55 | (...)... : String | provenance | | -| Test.java:5799:10:5799:55 | lazySortedMap(...) : LazySortedMap [] : String | Test.java:5800:19:5800:21 | out : LazySortedMap [] : String | provenance | | -| Test.java:5799:38:5799:39 | in : TreeMap [] : String | Test.java:5799:10:5799:55 | lazySortedMap(...) : LazySortedMap [] : String | provenance | MaD:317 | -| Test.java:5800:19:5800:21 | out : LazySortedMap [] : String | Test.java:228:18:228:29 | map : LazySortedMap [] : String | provenance | | -| Test.java:5800:19:5800:21 | out : LazySortedMap [] : String | Test.java:5800:9:5800:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5805:19:5805:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:5806:38:5806:39 | in : TreeMap [] : String | provenance | | -| Test.java:5805:42:5805:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:5805:42:5805:57 | (...)... : String | Test.java:5805:19:5805:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | -| Test.java:5805:50:5805:57 | source(...) : Object | Test.java:5805:42:5805:57 | (...)... : String | provenance | | -| Test.java:5806:10:5806:59 | lazySortedMap(...) : LazySortedMap [] : String | Test.java:5807:21:5807:23 | out : LazySortedMap [] : String | provenance | | -| Test.java:5806:38:5806:39 | in : TreeMap [] : String | Test.java:5806:10:5806:59 | lazySortedMap(...) : LazySortedMap [] : String | provenance | MaD:318 | -| Test.java:5807:21:5807:23 | out : LazySortedMap [] : String | Test.java:232:20:232:31 | map : LazySortedMap [] : String | provenance | | -| Test.java:5807:21:5807:23 | out : LazySortedMap [] : String | Test.java:5807:9:5807:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5812:19:5812:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:5813:38:5813:39 | in : TreeMap [] : String | provenance | | -| Test.java:5812:42:5812:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:5812:42:5812:57 | (...)... : String | Test.java:5812:19:5812:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | -| Test.java:5812:50:5812:57 | source(...) : Object | Test.java:5812:42:5812:57 | (...)... : String | provenance | | -| Test.java:5813:10:5813:55 | lazySortedMap(...) : LazySortedMap [] : String | Test.java:5814:21:5814:23 | out : LazySortedMap [] : String | provenance | | -| Test.java:5813:38:5813:39 | in : TreeMap [] : String | Test.java:5813:10:5813:55 | lazySortedMap(...) : LazySortedMap [] : String | provenance | MaD:318 | -| Test.java:5814:21:5814:23 | out : LazySortedMap [] : String | Test.java:232:20:232:31 | map : LazySortedMap [] : String | provenance | | -| Test.java:5814:21:5814:23 | out : LazySortedMap [] : String | Test.java:5814:9:5814:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5819:13:5819:42 | of(...) : Map [] : String | Test.java:5820:24:5820:25 | in : Map [] : String | provenance | | -| Test.java:5819:20:5819:35 | (...)... : String | Test.java:5819:13:5819:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5819:28:5819:35 | source(...) : Object | Test.java:5819:20:5819:35 | (...)... : String | provenance | | -| Test.java:5820:10:5820:26 | new LinkedMap<>(...) : LinkedMap [] : String | Test.java:5821:19:5821:21 | out : LinkedMap [] : String | provenance | | -| Test.java:5820:24:5820:25 | in : Map [] : String | Test.java:5820:10:5820:26 | new LinkedMap<>(...) : LinkedMap [] : String | provenance | MaD:319 | -| Test.java:5821:19:5821:21 | out : LinkedMap [] : String | Test.java:228:18:228:29 | map : LinkedMap [] : String | provenance | | -| Test.java:5821:19:5821:21 | out : LinkedMap [] : String | Test.java:5821:9:5821:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5826:13:5826:42 | of(...) : Map [] : String | Test.java:5827:24:5827:25 | in : Map [] : String | provenance | | -| Test.java:5826:26:5826:41 | (...)... : String | Test.java:5826:13:5826:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5826:34:5826:41 | source(...) : Object | Test.java:5826:26:5826:41 | (...)... : String | provenance | | -| Test.java:5827:10:5827:26 | new LinkedMap<>(...) : LinkedMap [] : String | Test.java:5828:21:5828:23 | out : LinkedMap [] : String | provenance | | -| Test.java:5827:24:5827:25 | in : Map [] : String | Test.java:5827:10:5827:26 | new LinkedMap<>(...) : LinkedMap [] : String | provenance | MaD:320 | -| Test.java:5828:21:5828:23 | out : LinkedMap [] : String | Test.java:232:20:232:31 | map : LinkedMap [] : String | provenance | | -| Test.java:5828:21:5828:23 | out : LinkedMap [] : String | Test.java:5828:9:5828:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5833:19:5833:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | Test.java:5834:10:5834:11 | in : LinkedMap [] : String | provenance | | -| Test.java:5833:42:5833:57 | (...)... : String | Test.java:276:49:276:53 | key : String | provenance | | -| Test.java:5833:42:5833:57 | (...)... : String | Test.java:5833:19:5833:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | provenance | MaD:13 | -| Test.java:5833:50:5833:57 | source(...) : Object | Test.java:5833:42:5833:57 | (...)... : String | provenance | | -| Test.java:5834:10:5834:11 | in : LinkedMap [] : String | Test.java:5834:10:5834:20 | asList(...) : List [] : String | provenance | MaD:321 | -| Test.java:5834:10:5834:20 | asList(...) : List [] : String | Test.java:5835:20:5835:22 | out : List [] : String | provenance | | -| Test.java:5835:20:5835:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | -| Test.java:5835:20:5835:22 | out : List [] : String | Test.java:5835:9:5835:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5840:19:5840:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | Test.java:5841:10:5841:11 | in : LinkedMap [] : String | provenance | | -| Test.java:5840:42:5840:57 | (...)... : String | Test.java:276:49:276:53 | key : String | provenance | | -| Test.java:5840:42:5840:57 | (...)... : String | Test.java:5840:19:5840:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | provenance | MaD:13 | -| Test.java:5840:50:5840:57 | source(...) : Object | Test.java:5840:42:5840:57 | (...)... : String | provenance | | -| Test.java:5841:10:5841:11 | in : LinkedMap [] : String | Test.java:5841:10:5841:18 | get(...) : String | provenance | MaD:322 | -| Test.java:5841:10:5841:18 | get(...) : String | Test.java:5842:9:5842:11 | out | provenance | | -| Test.java:5847:19:5847:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | Test.java:5848:10:5848:11 | in : LinkedMap [] : String | provenance | | -| Test.java:5847:44:5847:59 | (...)... : String | Test.java:295:51:295:57 | value : String | provenance | | -| Test.java:5847:44:5847:59 | (...)... : String | Test.java:5847:19:5847:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | provenance | MaD:14 | -| Test.java:5847:52:5847:59 | source(...) : Object | Test.java:5847:44:5847:59 | (...)... : String | provenance | | -| Test.java:5848:10:5848:11 | in : LinkedMap [] : String | Test.java:5848:10:5848:23 | getValue(...) : String | provenance | MaD:323 | -| Test.java:5848:10:5848:23 | getValue(...) : String | Test.java:5849:9:5849:11 | out | provenance | | -| Test.java:5854:19:5854:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | Test.java:5855:10:5855:11 | in : LinkedMap [] : String | provenance | | -| Test.java:5854:44:5854:59 | (...)... : String | Test.java:295:51:295:57 | value : String | provenance | | -| Test.java:5854:44:5854:59 | (...)... : String | Test.java:5854:19:5854:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | provenance | MaD:14 | -| Test.java:5854:52:5854:59 | source(...) : Object | Test.java:5854:44:5854:59 | (...)... : String | provenance | | -| Test.java:5855:10:5855:11 | in : LinkedMap [] : String | Test.java:5855:10:5855:21 | remove(...) : String | provenance | MaD:324 | -| Test.java:5855:10:5855:21 | remove(...) : String | Test.java:5856:9:5856:11 | out | provenance | | -| Test.java:5861:24:5861:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:5862:10:5862:11 | in : ListOrderedMap [] : String | provenance | | -| Test.java:5861:52:5861:67 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | -| Test.java:5861:52:5861:67 | (...)... : String | Test.java:5861:24:5861:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:13 | -| Test.java:5861:60:5861:67 | source(...) : Object | Test.java:5861:52:5861:67 | (...)... : String | provenance | | -| Test.java:5862:10:5862:11 | in : ListOrderedMap [] : String | Test.java:5862:10:5862:20 | asList(...) : List [] : String | provenance | MaD:325 | -| Test.java:5862:10:5862:20 | asList(...) : List [] : String | Test.java:5863:20:5863:22 | out : List [] : String | provenance | | -| Test.java:5863:20:5863:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | -| Test.java:5863:20:5863:22 | out : List [] : String | Test.java:5863:9:5863:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5868:24:5868:60 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : Object | Test.java:5869:10:5869:11 | in : ListOrderedMap [] : Object | provenance | | -| Test.java:5868:52:5868:59 | source(...) : Object | Test.java:277:59:277:63 | key : Object | provenance | | -| Test.java:5868:52:5868:59 | source(...) : Object | Test.java:5868:24:5868:60 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : Object | provenance | MaD:13 | -| Test.java:5869:10:5869:11 | in : ListOrderedMap [] : Object | Test.java:5869:10:5869:18 | get(...) : Object | provenance | MaD:326 | -| Test.java:5869:10:5869:18 | get(...) : Object | Test.java:5870:9:5870:11 | out | provenance | | -| Test.java:5875:24:5875:62 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : Object | Test.java:5876:10:5876:11 | in : ListOrderedMap [] : Object | provenance | | -| Test.java:5875:54:5875:61 | source(...) : Object | Test.java:296:61:296:67 | value : Object | provenance | | -| Test.java:5875:54:5875:61 | source(...) : Object | Test.java:5875:24:5875:62 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : Object | provenance | MaD:14 | -| Test.java:5876:10:5876:11 | in : ListOrderedMap [] : Object | Test.java:5876:10:5876:23 | getValue(...) : Object | provenance | MaD:327 | -| Test.java:5876:10:5876:23 | getValue(...) : Object | Test.java:5877:9:5877:11 | out | provenance | | -| Test.java:5882:24:5882:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:5883:10:5883:11 | in : ListOrderedMap [] : String | provenance | | -| Test.java:5882:52:5882:67 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | -| Test.java:5882:52:5882:67 | (...)... : String | Test.java:5882:24:5882:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:13 | -| Test.java:5882:60:5882:67 | source(...) : Object | Test.java:5882:52:5882:67 | (...)... : String | provenance | | -| Test.java:5883:10:5883:11 | in : ListOrderedMap [] : String | Test.java:5883:10:5883:21 | keyList(...) : List [] : String | provenance | MaD:328 | -| Test.java:5883:10:5883:21 | keyList(...) : List [] : String | Test.java:5884:20:5884:22 | out : List [] : String | provenance | | -| Test.java:5884:20:5884:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | -| Test.java:5884:20:5884:22 | out : List [] : String | Test.java:5884:9:5884:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5889:13:5889:42 | of(...) : Map [] : String | Test.java:5890:40:5890:41 | in : Map [] : String | provenance | | -| Test.java:5889:20:5889:35 | (...)... : String | Test.java:5889:13:5889:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5889:28:5889:35 | source(...) : Object | Test.java:5889:20:5889:35 | (...)... : String | provenance | | -| Test.java:5890:10:5890:42 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5891:19:5891:21 | out : ListOrderedMap [] : String | provenance | | -| Test.java:5890:40:5890:41 | in : Map [] : String | Test.java:5890:10:5890:42 | listOrderedMap(...) : ListOrderedMap [] : String | provenance | MaD:329 | -| Test.java:5891:19:5891:21 | out : ListOrderedMap [] : String | Test.java:228:18:228:29 | map : ListOrderedMap [] : String | provenance | | -| Test.java:5891:19:5891:21 | out : ListOrderedMap [] : String | Test.java:5891:9:5891:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5896:13:5896:42 | of(...) : Map [] : String | Test.java:5897:40:5897:41 | in : Map [] : String | provenance | | -| Test.java:5896:26:5896:41 | (...)... : String | Test.java:5896:13:5896:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5896:34:5896:41 | source(...) : Object | Test.java:5896:26:5896:41 | (...)... : String | provenance | | -| Test.java:5897:10:5897:42 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5898:21:5898:23 | out : ListOrderedMap [] : String | provenance | | -| Test.java:5897:40:5897:41 | in : Map [] : String | Test.java:5897:10:5897:42 | listOrderedMap(...) : ListOrderedMap [] : String | provenance | MaD:330 | -| Test.java:5898:21:5898:23 | out : ListOrderedMap [] : String | Test.java:232:20:232:31 | map : ListOrderedMap [] : String | provenance | | -| Test.java:5898:21:5898:23 | out : ListOrderedMap [] : String | Test.java:5898:9:5898:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5903:16:5903:23 | source(...) : Object | Test.java:5904:18:5904:19 | in : Object | provenance | | -| Test.java:5904:4:5904:6 | out [post update] : ListOrderedMap [] : Object | Test.java:5905:19:5905:21 | out : ListOrderedMap [] : Object | provenance | | -| Test.java:5904:18:5904:19 | in : Object | Test.java:5904:4:5904:6 | out [post update] : ListOrderedMap [] : Object | provenance | MaD:331 | -| Test.java:5905:19:5905:21 | out : ListOrderedMap [] : Object | Test.java:228:18:228:29 | map : ListOrderedMap [] : Object | provenance | | -| Test.java:5905:19:5905:21 | out : ListOrderedMap [] : Object | Test.java:5905:9:5905:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5910:16:5910:23 | source(...) : Object | Test.java:5911:15:5911:16 | in : Object | provenance | | -| Test.java:5911:4:5911:6 | out [post update] : ListOrderedMap [] : Object | Test.java:5912:19:5912:21 | out : ListOrderedMap [] : Object | provenance | | -| Test.java:5911:15:5911:16 | in : Object | Test.java:5911:4:5911:6 | out [post update] : ListOrderedMap [] : Object | provenance | MaD:331 | -| Test.java:5912:19:5912:21 | out : ListOrderedMap [] : Object | Test.java:228:18:228:29 | map : ListOrderedMap [] : Object | provenance | | -| Test.java:5912:19:5912:21 | out : ListOrderedMap [] : Object | Test.java:5912:9:5912:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5917:16:5917:23 | source(...) : Object | Test.java:5918:21:5918:22 | in : Object | provenance | | -| Test.java:5918:4:5918:6 | out [post update] : ListOrderedMap [] : Object | Test.java:5919:21:5919:23 | out : ListOrderedMap [] : Object | provenance | | -| Test.java:5918:21:5918:22 | in : Object | Test.java:5918:4:5918:6 | out [post update] : ListOrderedMap [] : Object | provenance | MaD:332 | -| Test.java:5919:21:5919:23 | out : ListOrderedMap [] : Object | Test.java:232:20:232:31 | map : ListOrderedMap [] : Object | provenance | | -| Test.java:5919:21:5919:23 | out : ListOrderedMap [] : Object | Test.java:5919:9:5919:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5924:13:5924:42 | of(...) : Map [] : String | Test.java:5925:18:5925:19 | in : Map [] : String | provenance | | -| Test.java:5924:20:5924:35 | (...)... : String | Test.java:5924:13:5924:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:5924:28:5924:35 | source(...) : Object | Test.java:5924:20:5924:35 | (...)... : String | provenance | | -| Test.java:5925:4:5925:6 | out [post update] : ListOrderedMap [] : String | Test.java:5926:19:5926:21 | out : ListOrderedMap [] : String | provenance | | -| Test.java:5925:18:5925:19 | in : Map [] : String | Test.java:5925:4:5925:6 | out [post update] : ListOrderedMap [] : String | provenance | MaD:333 | -| Test.java:5926:19:5926:21 | out : ListOrderedMap [] : String | Test.java:228:18:228:29 | map : ListOrderedMap [] : String | provenance | | -| Test.java:5926:19:5926:21 | out : ListOrderedMap [] : String | Test.java:5926:9:5926:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:5931:13:5931:42 | of(...) : Map [] : String | Test.java:5932:18:5932:19 | in : Map [] : String | provenance | | -| Test.java:5931:26:5931:41 | (...)... : String | Test.java:5931:13:5931:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:5931:34:5931:41 | source(...) : Object | Test.java:5931:26:5931:41 | (...)... : String | provenance | | -| Test.java:5932:4:5932:6 | out [post update] : ListOrderedMap [] : String | Test.java:5933:21:5933:23 | out : ListOrderedMap [] : String | provenance | | -| Test.java:5932:18:5932:19 | in : Map [] : String | Test.java:5932:4:5932:6 | out [post update] : ListOrderedMap [] : String | provenance | MaD:334 | -| Test.java:5933:21:5933:23 | out : ListOrderedMap [] : String | Test.java:232:20:232:31 | map : ListOrderedMap [] : String | provenance | | -| Test.java:5933:21:5933:23 | out : ListOrderedMap [] : String | Test.java:5933:9:5933:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5938:24:5938:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:5939:10:5939:11 | in : ListOrderedMap [] : String | provenance | | -| Test.java:5938:54:5938:69 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | -| Test.java:5938:54:5938:69 | (...)... : String | Test.java:5938:24:5938:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:14 | -| Test.java:5938:62:5938:69 | source(...) : Object | Test.java:5938:54:5938:69 | (...)... : String | provenance | | -| Test.java:5939:10:5939:11 | in : ListOrderedMap [] : String | Test.java:5939:10:5939:21 | remove(...) : String | provenance | MaD:335 | -| Test.java:5939:10:5939:21 | remove(...) : String | Test.java:5940:9:5940:11 | out | provenance | | -| Test.java:5945:16:5945:23 | source(...) : Object | Test.java:5946:20:5946:21 | in : Object | provenance | | -| Test.java:5946:4:5946:6 | out [post update] : ListOrderedMap [] : Object | Test.java:5947:21:5947:23 | out : ListOrderedMap [] : Object | provenance | | -| Test.java:5946:20:5946:21 | in : Object | Test.java:5946:4:5946:6 | out [post update] : ListOrderedMap [] : Object | provenance | MaD:336 | -| Test.java:5947:21:5947:23 | out : ListOrderedMap [] : Object | Test.java:232:20:232:31 | map : ListOrderedMap [] : Object | provenance | | -| Test.java:5947:21:5947:23 | out : ListOrderedMap [] : Object | Test.java:5947:9:5947:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:5952:24:5952:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:5953:10:5953:11 | in : ListOrderedMap [] : String | provenance | | -| Test.java:5952:54:5952:69 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | -| Test.java:5952:54:5952:69 | (...)... : String | Test.java:5952:24:5952:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:14 | -| Test.java:5952:62:5952:69 | source(...) : Object | Test.java:5952:54:5952:69 | (...)... : String | provenance | | -| Test.java:5953:10:5953:11 | in : ListOrderedMap [] : String | Test.java:5953:10:5953:23 | valueList(...) : List [] : String | provenance | MaD:337 | -| Test.java:5953:10:5953:23 | valueList(...) : List [] : String | Test.java:5954:20:5954:22 | out : List [] : String | provenance | | -| Test.java:5954:20:5954:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | -| Test.java:5954:20:5954:22 | out : List [] : String | Test.java:5954:9:5954:23 | getElement(...) | provenance | MaD:3 | -| Test.java:5959:21:5959:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:5960:10:5960:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:5959:40:5959:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:5959:40:5959:55 | (...)... : String | Test.java:5959:21:5959:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:5959:48:5959:55 | source(...) : Object | Test.java:5959:40:5959:55 | (...)... : String | provenance | | -| Test.java:5960:10:5960:11 | in : MultiKeyMap [] : String | Test.java:5960:10:5960:45 | get(...) : String | provenance | MaD:338 | -| Test.java:5960:10:5960:45 | get(...) : String | Test.java:5961:9:5961:11 | out | provenance | | -| Test.java:5966:21:5966:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:5967:10:5967:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:5966:40:5966:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:5966:40:5966:55 | (...)... : String | Test.java:5966:21:5966:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:5966:48:5966:55 | source(...) : Object | Test.java:5966:40:5966:55 | (...)... : String | provenance | | -| Test.java:5967:10:5967:11 | in : MultiKeyMap [] : String | Test.java:5967:10:5967:39 | get(...) : String | provenance | MaD:338 | -| Test.java:5967:10:5967:39 | get(...) : String | Test.java:5968:9:5968:11 | out | provenance | | -| Test.java:5973:21:5973:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:5974:10:5974:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:5973:40:5973:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:5973:40:5973:55 | (...)... : String | Test.java:5973:21:5973:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:5973:48:5973:55 | source(...) : Object | Test.java:5973:40:5973:55 | (...)... : String | provenance | | -| Test.java:5974:10:5974:11 | in : MultiKeyMap [] : String | Test.java:5974:10:5974:33 | get(...) : String | provenance | MaD:338 | -| Test.java:5974:10:5974:33 | get(...) : String | Test.java:5975:9:5975:11 | out | provenance | | -| Test.java:5980:21:5980:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:5981:10:5981:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:5980:40:5980:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:5980:40:5980:55 | (...)... : String | Test.java:5980:21:5980:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:5980:48:5980:55 | source(...) : Object | Test.java:5980:40:5980:55 | (...)... : String | provenance | | -| Test.java:5981:10:5981:11 | in : MultiKeyMap [] : String | Test.java:5981:10:5981:27 | get(...) : String | provenance | MaD:338 | -| Test.java:5981:10:5981:27 | get(...) : String | Test.java:5982:9:5982:11 | out | provenance | | -| Test.java:5987:16:5987:31 | (...)... : String | Test.java:5988:18:5988:19 | in : String | provenance | | -| Test.java:5987:24:5987:31 | source(...) : Object | Test.java:5987:16:5987:31 | (...)... : String | provenance | | -| Test.java:5988:4:5988:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:5989:30:5989:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:5988:18:5988:19 | in : String | Test.java:5988:4:5988:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:339 | -| Test.java:5989:20:5989:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:5989:20:5989:33 | getMapKey(...) : MultiKey [] : String | Test.java:5989:9:5989:34 | getElement(...) | provenance | MaD:233 | -| Test.java:5989:30:5989:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:5989:30:5989:32 | out : MultiKeyMap [, ] : String | Test.java:5989:20:5989:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:5994:16:5994:31 | (...)... : String | Test.java:5995:12:5995:13 | in : String | provenance | | -| Test.java:5994:24:5994:31 | source(...) : Object | Test.java:5994:16:5994:31 | (...)... : String | provenance | | -| Test.java:5995:4:5995:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:5996:30:5996:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:5995:12:5995:13 | in : String | Test.java:5995:4:5995:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:339 | -| Test.java:5996:20:5996:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:5996:20:5996:33 | getMapKey(...) : MultiKey [] : String | Test.java:5996:9:5996:34 | getElement(...) | provenance | MaD:233 | -| Test.java:5996:30:5996:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:5996:30:5996:32 | out : MultiKeyMap [, ] : String | Test.java:5996:20:5996:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6001:16:6001:31 | (...)... : String | Test.java:6002:24:6002:25 | in : String | provenance | | -| Test.java:6001:24:6001:31 | source(...) : Object | Test.java:6001:16:6001:31 | (...)... : String | provenance | | -| Test.java:6002:4:6002:6 | out [post update] : MultiKeyMap [] : String | Test.java:6003:21:6003:23 | out : MultiKeyMap [] : String | provenance | | -| Test.java:6002:24:6002:25 | in : String | Test.java:6002:4:6002:6 | out [post update] : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:6003:21:6003:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | provenance | | -| Test.java:6003:21:6003:23 | out : MultiKeyMap [] : String | Test.java:6003:9:6003:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6008:16:6008:31 | (...)... : String | Test.java:6009:24:6009:25 | in : String | provenance | | -| Test.java:6008:24:6008:31 | source(...) : Object | Test.java:6008:16:6008:31 | (...)... : String | provenance | | -| Test.java:6009:4:6009:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6010:30:6010:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:6009:24:6009:25 | in : String | Test.java:6009:4:6009:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:341 | -| Test.java:6010:20:6010:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:6010:20:6010:33 | getMapKey(...) : MultiKey [] : String | Test.java:6010:9:6010:34 | getElement(...) | provenance | MaD:233 | -| Test.java:6010:30:6010:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:6010:30:6010:32 | out : MultiKeyMap [, ] : String | Test.java:6010:20:6010:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6015:16:6015:31 | (...)... : String | Test.java:6016:18:6016:19 | in : String | provenance | | -| Test.java:6015:24:6015:31 | source(...) : Object | Test.java:6015:16:6015:31 | (...)... : String | provenance | | -| Test.java:6016:4:6016:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6017:30:6017:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:6016:18:6016:19 | in : String | Test.java:6016:4:6016:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:341 | -| Test.java:6017:20:6017:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:6017:20:6017:33 | getMapKey(...) : MultiKey [] : String | Test.java:6017:9:6017:34 | getElement(...) | provenance | MaD:233 | -| Test.java:6017:30:6017:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:6017:30:6017:32 | out : MultiKeyMap [, ] : String | Test.java:6017:20:6017:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6022:16:6022:31 | (...)... : String | Test.java:6023:12:6023:13 | in : String | provenance | | -| Test.java:6022:24:6022:31 | source(...) : Object | Test.java:6022:16:6022:31 | (...)... : String | provenance | | -| Test.java:6023:4:6023:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6024:30:6024:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:6023:12:6023:13 | in : String | Test.java:6023:4:6023:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:341 | -| Test.java:6024:20:6024:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:6024:20:6024:33 | getMapKey(...) : MultiKey [] : String | Test.java:6024:9:6024:34 | getElement(...) | provenance | MaD:233 | -| Test.java:6024:30:6024:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:6024:30:6024:32 | out : MultiKeyMap [, ] : String | Test.java:6024:20:6024:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6029:16:6029:31 | (...)... : String | Test.java:6030:30:6030:31 | in : String | provenance | | -| Test.java:6029:24:6029:31 | source(...) : Object | Test.java:6029:16:6029:31 | (...)... : String | provenance | | -| Test.java:6030:4:6030:6 | out [post update] : MultiKeyMap [] : String | Test.java:6031:21:6031:23 | out : MultiKeyMap [] : String | provenance | | -| Test.java:6030:30:6030:31 | in : String | Test.java:6030:4:6030:6 | out [post update] : MultiKeyMap [] : String | provenance | MaD:342 | -| Test.java:6031:21:6031:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | provenance | | -| Test.java:6031:21:6031:23 | out : MultiKeyMap [] : String | Test.java:6031:9:6031:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6036:16:6036:31 | (...)... : String | Test.java:6037:30:6037:31 | in : String | provenance | | -| Test.java:6036:24:6036:31 | source(...) : Object | Test.java:6036:16:6036:31 | (...)... : String | provenance | | -| Test.java:6037:4:6037:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6038:30:6038:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:6037:30:6037:31 | in : String | Test.java:6037:4:6037:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:343 | -| Test.java:6038:20:6038:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:6038:20:6038:33 | getMapKey(...) : MultiKey [] : String | Test.java:6038:9:6038:34 | getElement(...) | provenance | MaD:233 | -| Test.java:6038:30:6038:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:6038:30:6038:32 | out : MultiKeyMap [, ] : String | Test.java:6038:20:6038:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6043:16:6043:31 | (...)... : String | Test.java:6044:24:6044:25 | in : String | provenance | | -| Test.java:6043:24:6043:31 | source(...) : Object | Test.java:6043:16:6043:31 | (...)... : String | provenance | | -| Test.java:6044:4:6044:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6045:30:6045:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:6044:24:6044:25 | in : String | Test.java:6044:4:6044:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:343 | -| Test.java:6045:20:6045:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:6045:20:6045:33 | getMapKey(...) : MultiKey [] : String | Test.java:6045:9:6045:34 | getElement(...) | provenance | MaD:233 | -| Test.java:6045:30:6045:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:6045:30:6045:32 | out : MultiKeyMap [, ] : String | Test.java:6045:20:6045:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6050:16:6050:31 | (...)... : String | Test.java:6051:18:6051:19 | in : String | provenance | | -| Test.java:6050:24:6050:31 | source(...) : Object | Test.java:6050:16:6050:31 | (...)... : String | provenance | | -| Test.java:6051:4:6051:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6052:30:6052:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:6051:18:6051:19 | in : String | Test.java:6051:4:6051:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:343 | -| Test.java:6052:20:6052:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:6052:20:6052:33 | getMapKey(...) : MultiKey [] : String | Test.java:6052:9:6052:34 | getElement(...) | provenance | MaD:233 | -| Test.java:6052:30:6052:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:6052:30:6052:32 | out : MultiKeyMap [, ] : String | Test.java:6052:20:6052:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6057:16:6057:31 | (...)... : String | Test.java:6058:12:6058:13 | in : String | provenance | | -| Test.java:6057:24:6057:31 | source(...) : Object | Test.java:6057:16:6057:31 | (...)... : String | provenance | | -| Test.java:6058:4:6058:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6059:30:6059:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:6058:12:6058:13 | in : String | Test.java:6058:4:6058:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:343 | -| Test.java:6059:20:6059:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:6059:20:6059:33 | getMapKey(...) : MultiKey [] : String | Test.java:6059:9:6059:34 | getElement(...) | provenance | MaD:233 | -| Test.java:6059:30:6059:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:6059:30:6059:32 | out : MultiKeyMap [, ] : String | Test.java:6059:20:6059:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6064:16:6064:31 | (...)... : String | Test.java:6065:36:6065:37 | in : String | provenance | | -| Test.java:6064:24:6064:31 | source(...) : Object | Test.java:6064:16:6064:31 | (...)... : String | provenance | | -| Test.java:6065:4:6065:6 | out [post update] : MultiKeyMap [] : String | Test.java:6066:21:6066:23 | out : MultiKeyMap [] : String | provenance | | -| Test.java:6065:36:6065:37 | in : String | Test.java:6065:4:6065:6 | out [post update] : MultiKeyMap [] : String | provenance | MaD:344 | -| Test.java:6066:21:6066:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | provenance | | -| Test.java:6066:21:6066:23 | out : MultiKeyMap [] : String | Test.java:6066:9:6066:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6071:16:6071:31 | (...)... : String | Test.java:6072:36:6072:37 | in : String | provenance | | -| Test.java:6071:24:6071:31 | source(...) : Object | Test.java:6071:16:6071:31 | (...)... : String | provenance | | -| Test.java:6072:4:6072:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6073:30:6073:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:6072:36:6072:37 | in : String | Test.java:6072:4:6072:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:345 | -| Test.java:6073:20:6073:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:6073:20:6073:33 | getMapKey(...) : MultiKey [] : String | Test.java:6073:9:6073:34 | getElement(...) | provenance | MaD:233 | -| Test.java:6073:30:6073:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:6073:30:6073:32 | out : MultiKeyMap [, ] : String | Test.java:6073:20:6073:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6078:16:6078:31 | (...)... : String | Test.java:6079:30:6079:31 | in : String | provenance | | -| Test.java:6078:24:6078:31 | source(...) : Object | Test.java:6078:16:6078:31 | (...)... : String | provenance | | -| Test.java:6079:4:6079:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6080:30:6080:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:6079:30:6079:31 | in : String | Test.java:6079:4:6079:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:345 | -| Test.java:6080:20:6080:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:6080:20:6080:33 | getMapKey(...) : MultiKey [] : String | Test.java:6080:9:6080:34 | getElement(...) | provenance | MaD:233 | -| Test.java:6080:30:6080:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:6080:30:6080:32 | out : MultiKeyMap [, ] : String | Test.java:6080:20:6080:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6085:16:6085:31 | (...)... : String | Test.java:6086:24:6086:25 | in : String | provenance | | -| Test.java:6085:24:6085:31 | source(...) : Object | Test.java:6085:16:6085:31 | (...)... : String | provenance | | -| Test.java:6086:4:6086:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6087:30:6087:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:6086:24:6086:25 | in : String | Test.java:6086:4:6086:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:345 | -| Test.java:6087:20:6087:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:6087:20:6087:33 | getMapKey(...) : MultiKey [] : String | Test.java:6087:9:6087:34 | getElement(...) | provenance | MaD:233 | -| Test.java:6087:30:6087:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:6087:30:6087:32 | out : MultiKeyMap [, ] : String | Test.java:6087:20:6087:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6092:16:6092:31 | (...)... : String | Test.java:6093:18:6093:19 | in : String | provenance | | -| Test.java:6092:24:6092:31 | source(...) : Object | Test.java:6092:16:6092:31 | (...)... : String | provenance | | -| Test.java:6093:4:6093:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6094:30:6094:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:6093:18:6093:19 | in : String | Test.java:6093:4:6093:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:345 | -| Test.java:6094:20:6094:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:6094:20:6094:33 | getMapKey(...) : MultiKey [] : String | Test.java:6094:9:6094:34 | getElement(...) | provenance | MaD:233 | -| Test.java:6094:30:6094:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:6094:30:6094:32 | out : MultiKeyMap [, ] : String | Test.java:6094:20:6094:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6099:16:6099:31 | (...)... : String | Test.java:6100:12:6100:13 | in : String | provenance | | -| Test.java:6099:24:6099:31 | source(...) : Object | Test.java:6099:16:6099:31 | (...)... : String | provenance | | -| Test.java:6100:4:6100:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6101:30:6101:32 | out : MultiKeyMap [, ] : String | provenance | | -| Test.java:6100:12:6100:13 | in : String | Test.java:6100:4:6100:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:345 | -| Test.java:6101:20:6101:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | -| Test.java:6101:20:6101:33 | getMapKey(...) : MultiKey [] : String | Test.java:6101:9:6101:34 | getElement(...) | provenance | MaD:233 | -| Test.java:6101:30:6101:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | -| Test.java:6101:30:6101:32 | out : MultiKeyMap [, ] : String | Test.java:6101:20:6101:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:18 | -| Test.java:6106:16:6106:31 | (...)... : String | Test.java:6107:42:6107:43 | in : String | provenance | | -| Test.java:6106:24:6106:31 | source(...) : Object | Test.java:6106:16:6106:31 | (...)... : String | provenance | | -| Test.java:6107:4:6107:6 | out [post update] : MultiKeyMap [] : String | Test.java:6108:21:6108:23 | out : MultiKeyMap [] : String | provenance | | -| Test.java:6107:42:6107:43 | in : String | Test.java:6107:4:6107:6 | out [post update] : MultiKeyMap [] : String | provenance | MaD:346 | -| Test.java:6108:21:6108:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | provenance | | -| Test.java:6108:21:6108:23 | out : MultiKeyMap [] : String | Test.java:6108:9:6108:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6113:21:6113:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6114:10:6114:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:6113:40:6113:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:6113:40:6113:55 | (...)... : String | Test.java:6113:21:6113:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:6113:48:6113:55 | source(...) : Object | Test.java:6113:40:6113:55 | (...)... : String | provenance | | -| Test.java:6114:10:6114:11 | in : MultiKeyMap [] : String | Test.java:6114:10:6114:51 | put(...) : String | provenance | MaD:347 | -| Test.java:6114:10:6114:51 | put(...) : String | Test.java:6115:9:6115:11 | out | provenance | | -| Test.java:6120:21:6120:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6121:10:6121:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:6120:40:6120:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:6120:40:6120:55 | (...)... : String | Test.java:6120:21:6120:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:6120:48:6120:55 | source(...) : Object | Test.java:6120:40:6120:55 | (...)... : String | provenance | | -| Test.java:6121:10:6121:11 | in : MultiKeyMap [] : String | Test.java:6121:10:6121:45 | put(...) : String | provenance | MaD:347 | -| Test.java:6121:10:6121:45 | put(...) : String | Test.java:6122:9:6122:11 | out | provenance | | -| Test.java:6127:21:6127:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6128:10:6128:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:6127:40:6127:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:6127:40:6127:55 | (...)... : String | Test.java:6127:21:6127:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:6127:48:6127:55 | source(...) : Object | Test.java:6127:40:6127:55 | (...)... : String | provenance | | -| Test.java:6128:10:6128:11 | in : MultiKeyMap [] : String | Test.java:6128:10:6128:39 | put(...) : String | provenance | MaD:347 | -| Test.java:6128:10:6128:39 | put(...) : String | Test.java:6129:9:6129:11 | out | provenance | | -| Test.java:6134:21:6134:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6135:10:6135:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:6134:40:6134:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:6134:40:6134:55 | (...)... : String | Test.java:6134:21:6134:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:6134:48:6134:55 | source(...) : Object | Test.java:6134:40:6134:55 | (...)... : String | provenance | | -| Test.java:6135:10:6135:11 | in : MultiKeyMap [] : String | Test.java:6135:10:6135:33 | put(...) : String | provenance | MaD:347 | -| Test.java:6135:10:6135:33 | put(...) : String | Test.java:6136:9:6136:11 | out | provenance | | -| Test.java:6141:21:6141:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6142:10:6142:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:6141:40:6141:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:6141:40:6141:55 | (...)... : String | Test.java:6141:21:6141:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:6141:48:6141:55 | source(...) : Object | Test.java:6141:40:6141:55 | (...)... : String | provenance | | -| Test.java:6142:10:6142:11 | in : MultiKeyMap [] : String | Test.java:6142:10:6142:27 | put(...) : String | provenance | MaD:21 | -| Test.java:6142:10:6142:11 | in : MultiKeyMap [] : String | Test.java:6142:10:6142:27 | put(...) : String | provenance | MaD:347 | -| Test.java:6142:10:6142:11 | in : MultiKeyMap [] : String | Test.java:6142:10:6142:27 | put(...) : String | provenance | MaD:781 | -| Test.java:6142:10:6142:27 | put(...) : String | Test.java:6143:9:6143:11 | out | provenance | | -| Test.java:6148:21:6148:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6149:10:6149:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:6148:40:6148:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:6148:40:6148:55 | (...)... : String | Test.java:6148:21:6148:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:6148:48:6148:55 | source(...) : Object | Test.java:6148:40:6148:55 | (...)... : String | provenance | | -| Test.java:6149:10:6149:11 | in : MultiKeyMap [] : String | Test.java:6149:10:6149:56 | removeMultiKey(...) : String | provenance | MaD:348 | -| Test.java:6149:10:6149:56 | removeMultiKey(...) : String | Test.java:6150:9:6150:11 | out | provenance | | -| Test.java:6155:21:6155:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6156:10:6156:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:6155:40:6155:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:6155:40:6155:55 | (...)... : String | Test.java:6155:21:6155:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:6155:48:6155:55 | source(...) : Object | Test.java:6155:40:6155:55 | (...)... : String | provenance | | -| Test.java:6156:10:6156:11 | in : MultiKeyMap [] : String | Test.java:6156:10:6156:50 | removeMultiKey(...) : String | provenance | MaD:348 | -| Test.java:6156:10:6156:50 | removeMultiKey(...) : String | Test.java:6157:9:6157:11 | out | provenance | | -| Test.java:6162:21:6162:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6163:10:6163:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:6162:40:6162:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:6162:40:6162:55 | (...)... : String | Test.java:6162:21:6162:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:6162:48:6162:55 | source(...) : Object | Test.java:6162:40:6162:55 | (...)... : String | provenance | | -| Test.java:6163:10:6163:11 | in : MultiKeyMap [] : String | Test.java:6163:10:6163:44 | removeMultiKey(...) : String | provenance | MaD:348 | -| Test.java:6163:10:6163:44 | removeMultiKey(...) : String | Test.java:6164:9:6164:11 | out | provenance | | -| Test.java:6169:21:6169:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6170:10:6170:11 | in : MultiKeyMap [] : String | provenance | | -| Test.java:6169:40:6169:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | -| Test.java:6169:40:6169:55 | (...)... : String | Test.java:6169:21:6169:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:340 | -| Test.java:6169:48:6169:55 | source(...) : Object | Test.java:6169:40:6169:55 | (...)... : String | provenance | | -| Test.java:6170:10:6170:11 | in : MultiKeyMap [] : String | Test.java:6170:10:6170:38 | removeMultiKey(...) : String | provenance | MaD:348 | -| Test.java:6170:10:6170:38 | removeMultiKey(...) : String | Test.java:6171:9:6171:11 | out | provenance | | -| Test.java:6176:23:6176:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:6177:10:6177:11 | in : MultiValueMap [, ] : String | provenance | | -| Test.java:6176:23:6176:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:6177:10:6177:11 | in : MultiValueMap [] : String | provenance | | -| Test.java:6176:42:6176:57 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:6176:42:6176:57 | (...)... : String | Test.java:6176:23:6176:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:737 | -| Test.java:6176:42:6176:57 | (...)... : String | Test.java:6176:23:6176:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:6176:42:6176:57 | (...)... : String | Test.java:6176:23:6176:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | -| Test.java:6176:50:6176:57 | source(...) : Object | Test.java:6176:42:6176:57 | (...)... : String | provenance | | -| Test.java:6177:10:6177:11 | in : MultiValueMap [, ] : String | Test.java:6177:10:6177:31 | getCollection(...) : Collection [] : String | provenance | MaD:349 | -| Test.java:6177:10:6177:11 | in : MultiValueMap [] : String | Test.java:6177:10:6177:31 | getCollection(...) : Collection [] : Object | provenance | MaD:349 | -| Test.java:6177:10:6177:31 | getCollection(...) : Collection [] : Object | Test.java:6178:20:6178:22 | out : Collection [] : Object | provenance | | -| Test.java:6177:10:6177:31 | getCollection(...) : Collection [] : String | Test.java:6178:20:6178:22 | out : Collection [] : String | provenance | | -| Test.java:6178:20:6178:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | -| Test.java:6178:20:6178:22 | out : Collection [] : Object | Test.java:6178:9:6178:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6178:20:6178:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6178:20:6178:22 | out : Collection [] : String | Test.java:6178:9:6178:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6183:38:6183:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:6184:10:6184:11 | in : MultiValueMap [, ] : String | provenance | | -| Test.java:6183:38:6183:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:6184:10:6184:11 | in : MultiValueMap [] : String | provenance | | -| Test.java:6183:57:6183:72 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:6183:57:6183:72 | (...)... : String | Test.java:6183:38:6183:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:737 | -| Test.java:6183:57:6183:72 | (...)... : String | Test.java:6183:38:6183:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:6183:57:6183:72 | (...)... : String | Test.java:6183:38:6183:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | -| Test.java:6183:65:6183:72 | source(...) : Object | Test.java:6183:57:6183:72 | (...)... : String | provenance | | -| Test.java:6184:10:6184:11 | in : MultiValueMap [, ] : String | Test.java:6184:10:6184:22 | iterator(...) : Iterator [, ] : String | provenance | MaD:351 | -| Test.java:6184:10:6184:11 | in : MultiValueMap [] : String | Test.java:6184:10:6184:22 | iterator(...) : Iterator [, ] : Object | provenance | MaD:351 | -| Test.java:6184:10:6184:22 | iterator(...) : Iterator [, ] : Object | Test.java:6185:41:6185:43 | out : Iterator [, ] : Object | provenance | | -| Test.java:6184:10:6184:22 | iterator(...) : Iterator [, ] : String | Test.java:6185:41:6185:43 | out : Iterator [, ] : String | provenance | | -| Test.java:6185:30:6185:44 | getElement(...) : Entry [] : Object | Test.java:244:29:244:52 | container : Entry [] : Object | provenance | | -| Test.java:6185:30:6185:44 | getElement(...) : Entry [] : Object | Test.java:6185:9:6185:45 | getMapValueFromEntry(...) | provenance | MaD:10 | -| Test.java:6185:30:6185:44 | getElement(...) : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | -| Test.java:6185:30:6185:44 | getElement(...) : Entry [] : String | Test.java:6185:9:6185:45 | getMapValueFromEntry(...) | provenance | MaD:10 | -| Test.java:6185:41:6185:43 | out : Iterator [, ] : Object | Test.java:231:19:231:32 | it : Iterator [, ] : Object | provenance | | -| Test.java:6185:41:6185:43 | out : Iterator [, ] : Object | Test.java:6185:30:6185:44 | getElement(...) : Entry [] : Object | provenance | MaD:6 | -| Test.java:6185:41:6185:43 | out : Iterator [, ] : String | Test.java:231:19:231:32 | it : Iterator [, ] : String | provenance | | -| Test.java:6185:41:6185:43 | out : Iterator [, ] : String | Test.java:6185:30:6185:44 | getElement(...) : Entry [] : String | provenance | MaD:6 | -| Test.java:6190:38:6190:71 | newMVMWithMapKey(...) : MultiValueMap [] : String | Test.java:6191:10:6191:11 | in : MultiValueMap [] : String | provenance | | -| Test.java:6190:55:6190:70 | (...)... : String | Test.java:279:47:279:51 | key : String | provenance | | -| Test.java:6190:55:6190:70 | (...)... : String | Test.java:6190:38:6190:71 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:19 | -| Test.java:6190:55:6190:70 | (...)... : String | Test.java:6190:38:6190:71 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:736 | -| Test.java:6190:55:6190:70 | (...)... : String | Test.java:6190:38:6190:71 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:779 | -| Test.java:6190:63:6190:70 | source(...) : Object | Test.java:6190:55:6190:70 | (...)... : String | provenance | | -| Test.java:6191:10:6191:11 | in : MultiValueMap [] : String | Test.java:6191:10:6191:22 | iterator(...) : Iterator [, ] : String | provenance | MaD:350 | -| Test.java:6191:10:6191:22 | iterator(...) : Iterator [, ] : String | Test.java:6192:39:6192:41 | out : Iterator [, ] : String | provenance | | -| Test.java:6192:28:6192:42 | getElement(...) : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | -| Test.java:6192:28:6192:42 | getElement(...) : Entry [] : String | Test.java:6192:9:6192:43 | getMapKeyFromEntry(...) | provenance | MaD:9 | -| Test.java:6192:39:6192:41 | out : Iterator [, ] : String | Test.java:231:19:231:32 | it : Iterator [, ] : String | provenance | | -| Test.java:6192:39:6192:41 | out : Iterator [, ] : String | Test.java:6192:28:6192:42 | getElement(...) : Entry [] : String | provenance | MaD:6 | -| Test.java:6197:38:6197:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:6198:10:6198:11 | in : MultiValueMap [, ] : String | provenance | | -| Test.java:6197:38:6197:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:6198:10:6198:11 | in : MultiValueMap [] : String | provenance | | -| Test.java:6197:57:6197:72 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:6197:57:6197:72 | (...)... : String | Test.java:6197:38:6197:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:737 | -| Test.java:6197:57:6197:72 | (...)... : String | Test.java:6197:38:6197:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:6197:57:6197:72 | (...)... : String | Test.java:6197:38:6197:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | -| Test.java:6197:65:6197:72 | source(...) : Object | Test.java:6197:57:6197:72 | (...)... : String | provenance | | -| Test.java:6198:10:6198:11 | in : MultiValueMap [, ] : String | Test.java:6198:10:6198:26 | iterator(...) : Iterator [] : String | provenance | MaD:352 | -| Test.java:6198:10:6198:11 | in : MultiValueMap [] : String | Test.java:6198:10:6198:26 | iterator(...) : Iterator [] : Object | provenance | MaD:352 | -| Test.java:6198:10:6198:26 | iterator(...) : Iterator [] : Object | Test.java:6199:20:6199:22 | out : Iterator [] : Object | provenance | | -| Test.java:6198:10:6198:26 | iterator(...) : Iterator [] : String | Test.java:6199:20:6199:22 | out : Iterator [] : String | provenance | | -| Test.java:6199:20:6199:22 | out : Iterator [] : Object | Test.java:231:19:231:32 | it : Iterator [] : Object | provenance | | -| Test.java:6199:20:6199:22 | out : Iterator [] : Object | Test.java:6199:9:6199:23 | getElement(...) | provenance | MaD:6 | -| Test.java:6199:20:6199:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | -| Test.java:6199:20:6199:22 | out : Iterator [] : String | Test.java:6199:9:6199:23 | getElement(...) | provenance | MaD:6 | -| Test.java:6204:13:6204:64 | of(...) : Map [, ] : String | Test.java:6205:38:6205:39 | in : Map [, ] : String | provenance | | -| Test.java:6204:26:6204:63 | newVectorWithElement(...) : Vector [] : String | Test.java:6204:13:6204:64 | of(...) : Map [, ] : String | provenance | MaD:14 | -| Test.java:6204:47:6204:62 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | -| Test.java:6204:47:6204:62 | (...)... : String | Test.java:6204:26:6204:63 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | -| Test.java:6204:55:6204:62 | source(...) : Object | Test.java:6204:47:6204:62 | (...)... : String | provenance | | -| Test.java:6205:10:6205:55 | multiValueMap(...) : MultiValueMap [, ] : String | Test.java:6206:44:6206:46 | out : MultiValueMap [, ] : String | provenance | | -| Test.java:6205:38:6205:39 | in : Map [, ] : String | Test.java:6205:10:6205:55 | multiValueMap(...) : MultiValueMap [, ] : String | provenance | MaD:354 | -| Test.java:6206:20:6206:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6206:20:6206:47 | (...)... : Collection [] : String | Test.java:6206:9:6206:48 | getElement(...) | provenance | MaD:3 | -| Test.java:6206:32:6206:47 | getMapValue(...) : Object [] : String | Test.java:6206:20:6206:47 | (...)... : Collection [] : String | provenance | | -| Test.java:6206:44:6206:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | provenance | | -| Test.java:6206:44:6206:46 | out : MultiValueMap [, ] : String | Test.java:6206:32:6206:47 | getMapValue(...) : Object [] : String | provenance | MaD:17 | -| Test.java:6211:13:6211:64 | of(...) : Map [, ] : String | Test.java:6212:38:6212:39 | in : Map [, ] : String | provenance | | -| Test.java:6211:26:6211:63 | newVectorWithElement(...) : Vector [] : String | Test.java:6211:13:6211:64 | of(...) : Map [, ] : String | provenance | MaD:14 | -| Test.java:6211:47:6211:62 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | -| Test.java:6211:47:6211:62 | (...)... : String | Test.java:6211:26:6211:63 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | -| Test.java:6211:55:6211:62 | source(...) : Object | Test.java:6211:47:6211:62 | (...)... : String | provenance | | -| Test.java:6212:10:6212:53 | multiValueMap(...) : MultiValueMap [, ] : String | Test.java:6213:44:6213:46 | out : MultiValueMap [, ] : String | provenance | | -| Test.java:6212:38:6212:39 | in : Map [, ] : String | Test.java:6212:10:6212:53 | multiValueMap(...) : MultiValueMap [, ] : String | provenance | MaD:354 | -| Test.java:6213:20:6213:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6213:20:6213:47 | (...)... : Collection [] : String | Test.java:6213:9:6213:48 | getElement(...) | provenance | MaD:3 | -| Test.java:6213:32:6213:47 | getMapValue(...) : Object [] : String | Test.java:6213:20:6213:47 | (...)... : Collection [] : String | provenance | | -| Test.java:6213:44:6213:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | provenance | | -| Test.java:6213:44:6213:46 | out : MultiValueMap [, ] : String | Test.java:6213:32:6213:47 | getMapValue(...) : Object [] : String | provenance | MaD:17 | -| Test.java:6218:13:6218:64 | of(...) : Map [, ] : String | Test.java:6219:38:6219:39 | in : Map [, ] : String | provenance | | -| Test.java:6218:26:6218:63 | newVectorWithElement(...) : Vector [] : String | Test.java:6218:13:6218:64 | of(...) : Map [, ] : String | provenance | MaD:14 | -| Test.java:6218:47:6218:62 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | -| Test.java:6218:47:6218:62 | (...)... : String | Test.java:6218:26:6218:63 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | -| Test.java:6218:55:6218:62 | source(...) : Object | Test.java:6218:47:6218:62 | (...)... : String | provenance | | -| Test.java:6219:10:6219:40 | multiValueMap(...) : MultiValueMap [, ] : String | Test.java:6220:44:6220:46 | out : MultiValueMap [, ] : String | provenance | | -| Test.java:6219:38:6219:39 | in : Map [, ] : String | Test.java:6219:10:6219:40 | multiValueMap(...) : MultiValueMap [, ] : String | provenance | MaD:354 | -| Test.java:6220:20:6220:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6220:20:6220:47 | (...)... : Collection [] : String | Test.java:6220:9:6220:48 | getElement(...) | provenance | MaD:3 | -| Test.java:6220:32:6220:47 | getMapValue(...) : Object [] : String | Test.java:6220:20:6220:47 | (...)... : Collection [] : String | provenance | | -| Test.java:6220:44:6220:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | provenance | | -| Test.java:6220:44:6220:46 | out : MultiValueMap [, ] : String | Test.java:6220:32:6220:47 | getMapValue(...) : Object [] : String | provenance | MaD:17 | -| Test.java:6225:13:6225:42 | of(...) : Map [] : String | Test.java:6226:38:6226:39 | in : Map [] : String | provenance | | -| Test.java:6225:20:6225:35 | (...)... : String | Test.java:6225:13:6225:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6225:28:6225:35 | source(...) : Object | Test.java:6225:20:6225:35 | (...)... : String | provenance | | -| Test.java:6226:10:6226:55 | multiValueMap(...) : MultiValueMap [] : String | Test.java:6227:19:6227:21 | out : MultiValueMap [] : String | provenance | | -| Test.java:6226:38:6226:39 | in : Map [] : String | Test.java:6226:10:6226:55 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:353 | -| Test.java:6227:19:6227:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | provenance | | -| Test.java:6227:19:6227:21 | out : MultiValueMap [] : String | Test.java:6227:9:6227:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6232:13:6232:42 | of(...) : Map [] : String | Test.java:6233:38:6233:39 | in : Map [] : String | provenance | | -| Test.java:6232:20:6232:35 | (...)... : String | Test.java:6232:13:6232:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6232:28:6232:35 | source(...) : Object | Test.java:6232:20:6232:35 | (...)... : String | provenance | | -| Test.java:6233:10:6233:53 | multiValueMap(...) : MultiValueMap [] : String | Test.java:6234:19:6234:21 | out : MultiValueMap [] : String | provenance | | -| Test.java:6233:38:6233:39 | in : Map [] : String | Test.java:6233:10:6233:53 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:353 | -| Test.java:6234:19:6234:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | provenance | | -| Test.java:6234:19:6234:21 | out : MultiValueMap [] : String | Test.java:6234:9:6234:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6239:13:6239:42 | of(...) : Map [] : String | Test.java:6240:38:6240:39 | in : Map [] : String | provenance | | -| Test.java:6239:20:6239:35 | (...)... : String | Test.java:6239:13:6239:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6239:28:6239:35 | source(...) : Object | Test.java:6239:20:6239:35 | (...)... : String | provenance | | -| Test.java:6240:10:6240:40 | multiValueMap(...) : MultiValueMap [] : String | Test.java:6241:19:6241:21 | out : MultiValueMap [] : String | provenance | | -| Test.java:6240:38:6240:39 | in : Map [] : String | Test.java:6240:10:6240:40 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:353 | -| Test.java:6241:19:6241:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | provenance | | -| Test.java:6241:19:6241:21 | out : MultiValueMap [] : String | Test.java:6241:9:6241:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6246:13:6246:48 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:6247:15:6247:16 | in : MultiValueMap [, ] : String | provenance | | -| Test.java:6246:13:6246:48 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:6247:15:6247:16 | in : MultiValueMap [] : String | provenance | | -| Test.java:6246:32:6246:47 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:6246:32:6246:47 | (...)... : String | Test.java:6246:13:6246:48 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:737 | -| Test.java:6246:32:6246:47 | (...)... : String | Test.java:6246:13:6246:48 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:6246:32:6246:47 | (...)... : String | Test.java:6246:13:6246:48 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | -| Test.java:6246:40:6246:47 | source(...) : Object | Test.java:6246:32:6246:47 | (...)... : String | provenance | | -| Test.java:6247:4:6247:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:6248:44:6248:46 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:6247:4:6247:6 | out [post update] : MultiValueMap [, ] : String | Test.java:6248:44:6248:46 | out : MultiValueMap [, ] : String | provenance | | -| Test.java:6247:15:6247:16 | in : MultiValueMap [, ] : String | Test.java:6247:4:6247:6 | out [post update] : MultiValueMap [, ] : String | provenance | MaD:23 | -| Test.java:6247:15:6247:16 | in : MultiValueMap [, ] : String | Test.java:6247:4:6247:6 | out [post update] : MultiValueMap [, ] : String | provenance | MaD:355 | -| Test.java:6247:15:6247:16 | in : MultiValueMap [, ] : String | Test.java:6247:4:6247:6 | out [post update] : MultiValueMap [, ] : String | provenance | MaD:783 | -| Test.java:6247:15:6247:16 | in : MultiValueMap [] : String | Test.java:6247:4:6247:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:355 | -| Test.java:6247:15:6247:16 | in : MultiValueMap [] : String | Test.java:6247:4:6247:6 | out [post update] : MultiValueMap [, ] : String | provenance | MaD:356 | -| Test.java:6248:20:6248:47 | (...)... : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | -| Test.java:6248:20:6248:47 | (...)... : Collection [] : Object | Test.java:6248:9:6248:48 | getElement(...) | provenance | MaD:3 | -| Test.java:6248:20:6248:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6248:20:6248:47 | (...)... : Collection [] : String | Test.java:6248:9:6248:48 | getElement(...) | provenance | MaD:3 | -| Test.java:6248:32:6248:47 | getMapValue(...) : Object [] : Object | Test.java:6248:20:6248:47 | (...)... : Collection [] : Object | provenance | | -| Test.java:6248:32:6248:47 | getMapValue(...) : Object [] : String | Test.java:6248:20:6248:47 | (...)... : Collection [] : String | provenance | | -| Test.java:6248:44:6248:46 | out : MultiValueMap [, ] : Object | Test.java:232:20:232:31 | map : MultiValueMap [, ] : Object | provenance | | -| Test.java:6248:44:6248:46 | out : MultiValueMap [, ] : Object | Test.java:6248:32:6248:47 | getMapValue(...) : Object [] : Object | provenance | MaD:17 | -| Test.java:6248:44:6248:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | provenance | | -| Test.java:6248:44:6248:46 | out : MultiValueMap [, ] : String | Test.java:6248:32:6248:47 | getMapValue(...) : Object [] : String | provenance | MaD:17 | -| Test.java:6253:13:6253:34 | of(...) : Map [] : Object | Test.java:6254:15:6254:16 | in : Map [] : Object | provenance | | -| Test.java:6253:26:6253:33 | source(...) : Object | Test.java:6253:13:6253:34 | of(...) : Map [] : Object | provenance | MaD:14 | -| Test.java:6254:4:6254:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:6255:44:6255:46 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:6254:4:6254:6 | out [post update] : MultiValueMap [] : Object | Test.java:6255:44:6255:46 | out : MultiValueMap [] : Object | provenance | | -| Test.java:6254:15:6254:16 | in : Map [] : Object | Test.java:6254:4:6254:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:355 | -| Test.java:6254:15:6254:16 | in : Map [] : Object | Test.java:6254:4:6254:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:356 | -| Test.java:6254:15:6254:16 | in : Map [] : Object | Test.java:6254:4:6254:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:23 | -| Test.java:6254:15:6254:16 | in : Map [] : Object | Test.java:6254:4:6254:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:783 | -| Test.java:6255:20:6255:47 | (...)... : Collection | Test.java:230:19:230:32 | it : Collection | provenance | | -| Test.java:6255:20:6255:47 | (...)... : Collection | Test.java:6255:9:6255:48 | getElement(...) | provenance | MaD:3 | -| Test.java:6255:20:6255:47 | (...)... : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | -| Test.java:6255:20:6255:47 | (...)... : Collection [] : Object | Test.java:6255:9:6255:48 | getElement(...) | provenance | MaD:3 | -| Test.java:6255:32:6255:47 | getMapValue(...) : Object | Test.java:6255:20:6255:47 | (...)... : Collection | provenance | | -| Test.java:6255:32:6255:47 | getMapValue(...) : Object [] : Object | Test.java:6255:20:6255:47 | (...)... : Collection [] : Object | provenance | | -| Test.java:6255:44:6255:46 | out : MultiValueMap [, ] : Object | Test.java:232:20:232:31 | map : MultiValueMap [, ] : Object | provenance | | -| Test.java:6255:44:6255:46 | out : MultiValueMap [, ] : Object | Test.java:6255:32:6255:47 | getMapValue(...) : Object [] : Object | provenance | MaD:17 | -| Test.java:6255:44:6255:46 | out : MultiValueMap [] : Object | Test.java:232:20:232:31 | map : MultiValueMap [] : Object | provenance | | -| Test.java:6255:44:6255:46 | out : MultiValueMap [] : Object | Test.java:6255:32:6255:47 | getMapValue(...) : Object | provenance | MaD:17 | -| Test.java:6260:16:6260:23 | source(...) : Object | Test.java:6261:15:6261:16 | in : Object | provenance | | -| Test.java:6261:4:6261:6 | out [post update] : MultiValueMap [] : Object | Test.java:6262:19:6262:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:6261:15:6261:16 | in : Object | Test.java:6261:4:6261:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:357 | -| Test.java:6262:19:6262:21 | out : MultiValueMap [] : Object | Test.java:228:18:228:29 | map : MultiValueMap [] : Object | provenance | | -| Test.java:6262:19:6262:21 | out : MultiValueMap [] : Object | Test.java:6262:9:6262:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6267:20:6267:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:6268:21:6268:22 | in : TreeBag [] : String | provenance | | -| Test.java:6267:42:6267:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:6267:42:6267:57 | (...)... : String | Test.java:6267:20:6267:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:6267:42:6267:57 | (...)... : String | Test.java:6267:20:6267:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:6267:50:6267:57 | source(...) : Object | Test.java:6267:42:6267:57 | (...)... : String | provenance | | -| Test.java:6268:4:6268:6 | out [post update] : MultiValueMap [, ] : String | Test.java:6269:44:6269:46 | out : MultiValueMap [, ] : String | provenance | | -| Test.java:6268:21:6268:22 | in : TreeBag [] : String | Test.java:6268:4:6268:6 | out [post update] : MultiValueMap [, ] : String | provenance | MaD:358 | -| Test.java:6269:20:6269:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6269:20:6269:47 | (...)... : Collection [] : String | Test.java:6269:9:6269:48 | getElement(...) | provenance | MaD:3 | -| Test.java:6269:32:6269:47 | getMapValue(...) : Object [] : String | Test.java:6269:20:6269:47 | (...)... : Collection [] : String | provenance | | -| Test.java:6269:44:6269:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | provenance | | -| Test.java:6269:44:6269:46 | out : MultiValueMap [, ] : String | Test.java:6269:32:6269:47 | getMapValue(...) : Object [] : String | provenance | MaD:17 | -| Test.java:6274:23:6274:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:6275:10:6275:11 | in : MultiValueMap [, ] : String | provenance | | -| Test.java:6274:23:6274:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:6275:10:6275:11 | in : MultiValueMap [] : String | provenance | | -| Test.java:6274:42:6274:57 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | -| Test.java:6274:42:6274:57 | (...)... : String | Test.java:6274:23:6274:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:737 | -| Test.java:6274:42:6274:57 | (...)... : String | Test.java:6274:23:6274:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:20 | -| Test.java:6274:42:6274:57 | (...)... : String | Test.java:6274:23:6274:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:780 | -| Test.java:6274:50:6274:57 | source(...) : Object | Test.java:6274:42:6274:57 | (...)... : String | provenance | | -| Test.java:6275:10:6275:11 | in : MultiValueMap [, ] : String | Test.java:6275:10:6275:20 | values(...) : Collection [] : String | provenance | MaD:359 | -| Test.java:6275:10:6275:11 | in : MultiValueMap [, ] : String | Test.java:6275:10:6275:20 | values(...) : Collection [] : String | provenance | MaD:738 | -| Test.java:6275:10:6275:11 | in : MultiValueMap [] : String | Test.java:6275:10:6275:20 | values(...) : Collection [] : Object | provenance | MaD:359 | -| Test.java:6275:10:6275:11 | in : MultiValueMap [] : String | Test.java:6275:10:6275:20 | values(...) : Collection [] : Object | provenance | MaD:738 | -| Test.java:6275:10:6275:11 | in : MultiValueMap [] : String | Test.java:6275:10:6275:20 | values(...) : Collection [] : String | provenance | MaD:25 | -| Test.java:6275:10:6275:11 | in : MultiValueMap [] : String | Test.java:6275:10:6275:20 | values(...) : Collection [] : String | provenance | MaD:561 | -| Test.java:6275:10:6275:20 | values(...) : Collection [] : Object | Test.java:6276:20:6276:22 | out : Collection [] : Object | provenance | | -| Test.java:6275:10:6275:20 | values(...) : Collection [] : String | Test.java:6276:20:6276:22 | out : Collection [] : String | provenance | | -| Test.java:6276:20:6276:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | -| Test.java:6276:20:6276:22 | out : Collection [] : Object | Test.java:6276:9:6276:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6276:20:6276:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6276:20:6276:22 | out : Collection [] : String | Test.java:6276:9:6276:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6281:13:6281:42 | of(...) : Map [] : String | Test.java:6282:76:6282:77 | in : Map [] : String | provenance | | -| Test.java:6281:20:6281:35 | (...)... : String | Test.java:6281:13:6281:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6281:28:6281:35 | source(...) : Object | Test.java:6281:20:6281:35 | (...)... : String | provenance | | -| Test.java:6282:10:6282:78 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6283:19:6283:21 | out : PassiveExpiringMap [] : String | provenance | | -| Test.java:6282:76:6282:77 | in : Map [] : String | Test.java:6282:10:6282:78 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:362 | -| Test.java:6283:19:6283:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | provenance | | -| Test.java:6283:19:6283:21 | out : PassiveExpiringMap [] : String | Test.java:6283:9:6283:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6288:13:6288:42 | of(...) : Map [] : String | Test.java:6289:76:6289:77 | in : Map [] : String | provenance | | -| Test.java:6288:26:6288:41 | (...)... : String | Test.java:6288:13:6288:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6288:34:6288:41 | source(...) : Object | Test.java:6288:26:6288:41 | (...)... : String | provenance | | -| Test.java:6289:10:6289:78 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6290:21:6290:23 | out : PassiveExpiringMap [] : String | provenance | | -| Test.java:6289:76:6289:77 | in : Map [] : String | Test.java:6289:10:6289:78 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:363 | -| Test.java:6290:21:6290:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | provenance | | -| Test.java:6290:21:6290:23 | out : PassiveExpiringMap [] : String | Test.java:6290:9:6290:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6295:13:6295:42 | of(...) : Map [] : String | Test.java:6296:33:6296:34 | in : Map [] : String | provenance | | -| Test.java:6295:20:6295:35 | (...)... : String | Test.java:6295:13:6295:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6295:28:6295:35 | source(...) : Object | Test.java:6295:20:6295:35 | (...)... : String | provenance | | -| Test.java:6296:10:6296:35 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6297:19:6297:21 | out : PassiveExpiringMap [] : String | provenance | | -| Test.java:6296:33:6296:34 | in : Map [] : String | Test.java:6296:10:6296:35 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:360 | -| Test.java:6297:19:6297:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | provenance | | -| Test.java:6297:19:6297:21 | out : PassiveExpiringMap [] : String | Test.java:6297:9:6297:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6302:13:6302:42 | of(...) : Map [] : String | Test.java:6303:33:6303:34 | in : Map [] : String | provenance | | -| Test.java:6302:26:6302:41 | (...)... : String | Test.java:6302:13:6302:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6302:34:6302:41 | source(...) : Object | Test.java:6302:26:6302:41 | (...)... : String | provenance | | -| Test.java:6303:10:6303:35 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6304:21:6304:23 | out : PassiveExpiringMap [] : String | provenance | | -| Test.java:6303:33:6303:34 | in : Map [] : String | Test.java:6303:10:6303:35 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:361 | -| Test.java:6304:21:6304:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | provenance | | -| Test.java:6304:21:6304:23 | out : PassiveExpiringMap [] : String | Test.java:6304:9:6304:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6309:13:6309:42 | of(...) : Map [] : String | Test.java:6310:37:6310:38 | in : Map [] : String | provenance | | -| Test.java:6309:20:6309:35 | (...)... : String | Test.java:6309:13:6309:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6309:28:6309:35 | source(...) : Object | Test.java:6309:20:6309:35 | (...)... : String | provenance | | -| Test.java:6310:10:6310:39 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6311:19:6311:21 | out : PassiveExpiringMap [] : String | provenance | | -| Test.java:6310:37:6310:38 | in : Map [] : String | Test.java:6310:10:6310:39 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:364 | -| Test.java:6311:19:6311:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | provenance | | -| Test.java:6311:19:6311:21 | out : PassiveExpiringMap [] : String | Test.java:6311:9:6311:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6316:13:6316:42 | of(...) : Map [] : String | Test.java:6317:37:6317:38 | in : Map [] : String | provenance | | -| Test.java:6316:26:6316:41 | (...)... : String | Test.java:6316:13:6316:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6316:34:6316:41 | source(...) : Object | Test.java:6316:26:6316:41 | (...)... : String | provenance | | -| Test.java:6317:10:6317:39 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6318:21:6318:23 | out : PassiveExpiringMap [] : String | provenance | | -| Test.java:6317:37:6317:38 | in : Map [] : String | Test.java:6317:10:6317:39 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:365 | -| Test.java:6318:21:6318:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | provenance | | -| Test.java:6318:21:6318:23 | out : PassiveExpiringMap [] : String | Test.java:6318:9:6318:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6323:13:6323:42 | of(...) : Map [] : String | Test.java:6324:43:6324:44 | in : Map [] : String | provenance | | -| Test.java:6323:20:6323:35 | (...)... : String | Test.java:6323:13:6323:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6323:28:6323:35 | source(...) : Object | Test.java:6323:20:6323:35 | (...)... : String | provenance | | -| Test.java:6324:10:6324:45 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6325:19:6325:21 | out : PassiveExpiringMap [] : String | provenance | | -| Test.java:6324:43:6324:44 | in : Map [] : String | Test.java:6324:10:6324:45 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:366 | -| Test.java:6325:19:6325:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | provenance | | -| Test.java:6325:19:6325:21 | out : PassiveExpiringMap [] : String | Test.java:6325:9:6325:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6330:13:6330:42 | of(...) : Map [] : String | Test.java:6331:43:6331:44 | in : Map [] : String | provenance | | -| Test.java:6330:26:6330:41 | (...)... : String | Test.java:6330:13:6330:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6330:34:6330:41 | source(...) : Object | Test.java:6330:26:6330:41 | (...)... : String | provenance | | -| Test.java:6331:10:6331:45 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6332:21:6332:23 | out : PassiveExpiringMap [] : String | provenance | | -| Test.java:6331:43:6331:44 | in : Map [] : String | Test.java:6331:10:6331:45 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:367 | -| Test.java:6332:21:6332:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | provenance | | -| Test.java:6332:21:6332:23 | out : PassiveExpiringMap [] : String | Test.java:6332:9:6332:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6337:13:6337:42 | of(...) : Map [] : String | Test.java:6338:38:6338:39 | in : Map [] : String | provenance | | -| Test.java:6337:20:6337:35 | (...)... : String | Test.java:6337:13:6337:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6337:28:6337:35 | source(...) : Object | Test.java:6337:20:6337:35 | (...)... : String | provenance | | -| Test.java:6338:10:6338:52 | predicatedMap(...) : PredicatedMap [] : String | Test.java:6339:19:6339:21 | out : PredicatedMap [] : String | provenance | | -| Test.java:6338:38:6338:39 | in : Map [] : String | Test.java:6338:10:6338:52 | predicatedMap(...) : PredicatedMap [] : String | provenance | MaD:368 | -| Test.java:6339:19:6339:21 | out : PredicatedMap [] : String | Test.java:228:18:228:29 | map : PredicatedMap [] : String | provenance | | -| Test.java:6339:19:6339:21 | out : PredicatedMap [] : String | Test.java:6339:9:6339:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6344:13:6344:42 | of(...) : Map [] : String | Test.java:6345:38:6345:39 | in : Map [] : String | provenance | | -| Test.java:6344:26:6344:41 | (...)... : String | Test.java:6344:13:6344:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6344:34:6344:41 | source(...) : Object | Test.java:6344:26:6344:41 | (...)... : String | provenance | | -| Test.java:6345:10:6345:52 | predicatedMap(...) : PredicatedMap [] : String | Test.java:6346:21:6346:23 | out : PredicatedMap [] : String | provenance | | -| Test.java:6345:38:6345:39 | in : Map [] : String | Test.java:6345:10:6345:52 | predicatedMap(...) : PredicatedMap [] : String | provenance | MaD:369 | -| Test.java:6346:21:6346:23 | out : PredicatedMap [] : String | Test.java:232:20:232:31 | map : PredicatedMap [] : String | provenance | | -| Test.java:6346:21:6346:23 | out : PredicatedMap [] : String | Test.java:6346:9:6346:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6351:19:6351:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:6352:50:6352:51 | in : TreeMap [] : String | provenance | | -| Test.java:6351:40:6351:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:6351:40:6351:55 | (...)... : String | Test.java:6351:19:6351:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | -| Test.java:6351:48:6351:55 | source(...) : Object | Test.java:6351:40:6351:55 | (...)... : String | provenance | | -| Test.java:6352:10:6352:64 | predicatedSortedMap(...) : PredicatedSortedMap [] : String | Test.java:6353:19:6353:21 | out : PredicatedSortedMap [] : String | provenance | | -| Test.java:6352:50:6352:51 | in : TreeMap [] : String | Test.java:6352:10:6352:64 | predicatedSortedMap(...) : PredicatedSortedMap [] : String | provenance | MaD:370 | -| Test.java:6353:19:6353:21 | out : PredicatedSortedMap [] : String | Test.java:228:18:228:29 | map : PredicatedSortedMap [] : String | provenance | | -| Test.java:6353:19:6353:21 | out : PredicatedSortedMap [] : String | Test.java:6353:9:6353:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6358:19:6358:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:6359:50:6359:51 | in : TreeMap [] : String | provenance | | -| Test.java:6358:42:6358:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:6358:42:6358:57 | (...)... : String | Test.java:6358:19:6358:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | -| Test.java:6358:50:6358:57 | source(...) : Object | Test.java:6358:42:6358:57 | (...)... : String | provenance | | -| Test.java:6359:10:6359:64 | predicatedSortedMap(...) : PredicatedSortedMap [] : String | Test.java:6360:21:6360:23 | out : PredicatedSortedMap [] : String | provenance | | -| Test.java:6359:50:6359:51 | in : TreeMap [] : String | Test.java:6359:10:6359:64 | predicatedSortedMap(...) : PredicatedSortedMap [] : String | provenance | MaD:371 | -| Test.java:6360:21:6360:23 | out : PredicatedSortedMap [] : String | Test.java:232:20:232:31 | map : PredicatedSortedMap [] : String | provenance | | -| Test.java:6360:21:6360:23 | out : PredicatedSortedMap [] : String | Test.java:6360:9:6360:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6365:19:6365:52 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:6366:27:6366:28 | in : TiedMapEntry [] : String | provenance | | -| Test.java:6365:36:6365:51 | (...)... : String | Test.java:286:46:286:50 | key : String | provenance | | -| Test.java:6365:36:6365:51 | (...)... : String | Test.java:6365:19:6365:52 | newTMEWithMapKey(...) : TiedMapEntry [] : String | provenance | MaD:236 | -| Test.java:6365:44:6365:51 | source(...) : Object | Test.java:6365:36:6365:51 | (...)... : String | provenance | | -| Test.java:6366:10:6366:29 | new SingletonMap<>(...) : SingletonMap [] : String | Test.java:6367:19:6367:21 | out : SingletonMap [] : String | provenance | | -| Test.java:6366:27:6366:28 | in : TiedMapEntry [] : String | Test.java:6366:10:6366:29 | new SingletonMap<>(...) : SingletonMap [] : String | provenance | MaD:374 | -| Test.java:6367:19:6367:21 | out : SingletonMap [] : String | Test.java:228:18:228:29 | map : SingletonMap [] : String | provenance | | -| Test.java:6367:19:6367:21 | out : SingletonMap [] : String | Test.java:6367:9:6367:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6372:19:6372:54 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:6373:27:6373:28 | in : TiedMapEntry [] : String | provenance | | -| Test.java:6372:38:6372:53 | (...)... : String | Test.java:305:48:305:54 | value : String | provenance | | -| Test.java:6372:38:6372:53 | (...)... : String | Test.java:6372:19:6372:54 | newTMEWithMapValue(...) : TiedMapEntry [] : String | provenance | MaD:20 | -| Test.java:6372:46:6372:53 | source(...) : Object | Test.java:6372:38:6372:53 | (...)... : String | provenance | | -| Test.java:6373:10:6373:29 | new SingletonMap<>(...) : SingletonMap [] : String | Test.java:6374:21:6374:23 | out : SingletonMap [] : String | provenance | | -| Test.java:6373:27:6373:28 | in : TiedMapEntry [] : String | Test.java:6373:10:6373:29 | new SingletonMap<>(...) : SingletonMap [] : String | provenance | MaD:375 | -| Test.java:6374:21:6374:23 | out : SingletonMap [] : String | Test.java:232:20:232:31 | map : SingletonMap [] : String | provenance | | -| Test.java:6374:21:6374:23 | out : SingletonMap [] : String | Test.java:6374:9:6374:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6379:18:6379:51 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | Test.java:6380:27:6380:28 | in : DefaultKeyValue [] : String | provenance | | -| Test.java:6379:35:6379:50 | (...)... : String | Test.java:273:49:273:53 | key : String | provenance | | -| Test.java:6379:35:6379:50 | (...)... : String | Test.java:6379:18:6379:51 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | provenance | MaD:207 | -| Test.java:6379:43:6379:50 | source(...) : Object | Test.java:6379:35:6379:50 | (...)... : String | provenance | | -| Test.java:6380:10:6380:29 | new SingletonMap<>(...) : SingletonMap [] : String | Test.java:6381:19:6381:21 | out : SingletonMap [] : String | provenance | | -| Test.java:6380:27:6380:28 | in : DefaultKeyValue [] : String | Test.java:6380:10:6380:29 | new SingletonMap<>(...) : SingletonMap [] : String | provenance | MaD:372 | -| Test.java:6381:19:6381:21 | out : SingletonMap [] : String | Test.java:228:18:228:29 | map : SingletonMap [] : String | provenance | | -| Test.java:6381:19:6381:21 | out : SingletonMap [] : String | Test.java:6381:9:6381:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6386:18:6386:53 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | Test.java:6387:27:6387:28 | in : DefaultKeyValue [] : String | provenance | | -| Test.java:6386:37:6386:52 | (...)... : String | Test.java:291:51:291:57 | value : String | provenance | | -| Test.java:6386:37:6386:52 | (...)... : String | Test.java:6386:18:6386:53 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | provenance | MaD:208 | -| Test.java:6386:45:6386:52 | source(...) : Object | Test.java:6386:37:6386:52 | (...)... : String | provenance | | -| Test.java:6387:10:6387:29 | new SingletonMap<>(...) : SingletonMap [] : String | Test.java:6388:21:6388:23 | out : SingletonMap [] : String | provenance | | -| Test.java:6387:27:6387:28 | in : DefaultKeyValue [] : String | Test.java:6387:10:6387:29 | new SingletonMap<>(...) : SingletonMap [] : String | provenance | MaD:373 | -| Test.java:6388:21:6388:23 | out : SingletonMap [] : String | Test.java:232:20:232:31 | map : SingletonMap [] : String | provenance | | -| Test.java:6388:21:6388:23 | out : SingletonMap [] : String | Test.java:6388:9:6388:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6393:13:6393:42 | of(...) : Map [] : String | Test.java:6394:27:6394:28 | in : Map [] : String | provenance | | -| Test.java:6393:20:6393:35 | (...)... : String | Test.java:6393:13:6393:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6393:28:6393:35 | source(...) : Object | Test.java:6393:20:6393:35 | (...)... : String | provenance | | -| Test.java:6394:10:6394:29 | new SingletonMap<>(...) : SingletonMap [] : String | Test.java:6395:19:6395:21 | out : SingletonMap [] : String | provenance | | -| Test.java:6394:27:6394:28 | in : Map [] : String | Test.java:6394:10:6394:29 | new SingletonMap<>(...) : SingletonMap [] : String | provenance | MaD:376 | -| Test.java:6395:19:6395:21 | out : SingletonMap [] : String | Test.java:228:18:228:29 | map : SingletonMap [] : String | provenance | | -| Test.java:6395:19:6395:21 | out : SingletonMap [] : String | Test.java:6395:9:6395:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6400:13:6400:42 | of(...) : Map [] : String | Test.java:6401:27:6401:28 | in : Map [] : String | provenance | | -| Test.java:6400:26:6400:41 | (...)... : String | Test.java:6400:13:6400:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6400:34:6400:41 | source(...) : Object | Test.java:6400:26:6400:41 | (...)... : String | provenance | | -| Test.java:6401:10:6401:29 | new SingletonMap<>(...) : SingletonMap [] : String | Test.java:6402:21:6402:23 | out : SingletonMap [] : String | provenance | | -| Test.java:6401:27:6401:28 | in : Map [] : String | Test.java:6401:10:6401:29 | new SingletonMap<>(...) : SingletonMap [] : String | provenance | MaD:377 | -| Test.java:6402:21:6402:23 | out : SingletonMap [] : String | Test.java:232:20:232:31 | map : SingletonMap [] : String | provenance | | -| Test.java:6402:21:6402:23 | out : SingletonMap [] : String | Test.java:6402:9:6402:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6407:16:6407:23 | source(...) : Object | Test.java:6408:27:6408:28 | in : Object | provenance | | -| Test.java:6408:10:6408:35 | new SingletonMap<>(...) : SingletonMap [] : Object | Test.java:6409:19:6409:21 | out : SingletonMap [] : Object | provenance | | -| Test.java:6408:27:6408:28 | in : Object | Test.java:6408:10:6408:35 | new SingletonMap<>(...) : SingletonMap [] : Object | provenance | MaD:378 | -| Test.java:6409:19:6409:21 | out : SingletonMap [] : Object | Test.java:228:18:228:29 | map : SingletonMap [] : Object | provenance | | -| Test.java:6409:19:6409:21 | out : SingletonMap [] : Object | Test.java:6409:9:6409:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6414:16:6414:23 | source(...) : Object | Test.java:6415:33:6415:34 | in : Object | provenance | | -| Test.java:6415:10:6415:35 | new SingletonMap<>(...) : SingletonMap [] : Object | Test.java:6416:21:6416:23 | out : SingletonMap [] : Object | provenance | | -| Test.java:6415:33:6415:34 | in : Object | Test.java:6415:10:6415:35 | new SingletonMap<>(...) : SingletonMap [] : Object | provenance | MaD:379 | -| Test.java:6416:21:6416:23 | out : SingletonMap [] : Object | Test.java:232:20:232:31 | map : SingletonMap [] : Object | provenance | | -| Test.java:6416:21:6416:23 | out : SingletonMap [] : Object | Test.java:6416:9:6416:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6421:16:6421:23 | source(...) : Object | Test.java:6422:17:6422:18 | in : Object | provenance | | -| Test.java:6422:4:6422:6 | out [post update] : SingletonMap [] : Object | Test.java:6423:21:6423:23 | out : SingletonMap [] : Object | provenance | | -| Test.java:6422:17:6422:18 | in : Object | Test.java:6422:4:6422:6 | out [post update] : SingletonMap [] : Object | provenance | MaD:380 | -| Test.java:6423:21:6423:23 | out : SingletonMap [] : Object | Test.java:232:20:232:31 | map : SingletonMap [] : Object | provenance | | -| Test.java:6423:21:6423:23 | out : SingletonMap [] : Object | Test.java:6423:9:6423:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6428:13:6428:42 | of(...) : Map [] : String | Test.java:6429:41:6429:42 | in : Map [] : String | provenance | | -| Test.java:6428:20:6428:35 | (...)... : String | Test.java:6428:13:6428:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6428:28:6428:35 | source(...) : Object | Test.java:6428:20:6428:35 | (...)... : String | provenance | | -| Test.java:6429:10:6429:55 | transformingMap(...) : TransformedMap [] : String | Test.java:6430:19:6430:21 | out : TransformedMap [] : String | provenance | | -| Test.java:6429:41:6429:42 | in : Map [] : String | Test.java:6429:10:6429:55 | transformingMap(...) : TransformedMap [] : String | provenance | MaD:381 | -| Test.java:6430:19:6430:21 | out : TransformedMap [] : String | Test.java:228:18:228:29 | map : TransformedMap [] : String | provenance | | -| Test.java:6430:19:6430:21 | out : TransformedMap [] : String | Test.java:6430:9:6430:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6435:13:6435:42 | of(...) : Map [] : String | Test.java:6436:41:6436:42 | in : Map [] : String | provenance | | -| Test.java:6435:26:6435:41 | (...)... : String | Test.java:6435:13:6435:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6435:34:6435:41 | source(...) : Object | Test.java:6435:26:6435:41 | (...)... : String | provenance | | -| Test.java:6436:10:6436:55 | transformingMap(...) : TransformedMap [] : String | Test.java:6437:21:6437:23 | out : TransformedMap [] : String | provenance | | -| Test.java:6436:41:6436:42 | in : Map [] : String | Test.java:6436:10:6436:55 | transformingMap(...) : TransformedMap [] : String | provenance | MaD:382 | -| Test.java:6437:21:6437:23 | out : TransformedMap [] : String | Test.java:232:20:232:31 | map : TransformedMap [] : String | provenance | | -| Test.java:6437:21:6437:23 | out : TransformedMap [] : String | Test.java:6437:9:6437:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6442:19:6442:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:6443:53:6443:54 | in : TreeMap [] : String | provenance | | -| Test.java:6442:40:6442:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:6442:40:6442:55 | (...)... : String | Test.java:6442:19:6442:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | -| Test.java:6442:48:6442:55 | source(...) : Object | Test.java:6442:40:6442:55 | (...)... : String | provenance | | -| Test.java:6443:10:6443:67 | transformingSortedMap(...) : TransformedSortedMap [] : String | Test.java:6444:19:6444:21 | out : TransformedSortedMap [] : String | provenance | | -| Test.java:6443:53:6443:54 | in : TreeMap [] : String | Test.java:6443:10:6443:67 | transformingSortedMap(...) : TransformedSortedMap [] : String | provenance | MaD:383 | -| Test.java:6444:19:6444:21 | out : TransformedSortedMap [] : String | Test.java:228:18:228:29 | map : TransformedSortedMap [] : String | provenance | | -| Test.java:6444:19:6444:21 | out : TransformedSortedMap [] : String | Test.java:6444:9:6444:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6449:19:6449:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:6450:53:6450:54 | in : TreeMap [] : String | provenance | | -| Test.java:6449:42:6449:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:6449:42:6449:57 | (...)... : String | Test.java:6449:19:6449:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | -| Test.java:6449:50:6449:57 | source(...) : Object | Test.java:6449:42:6449:57 | (...)... : String | provenance | | -| Test.java:6450:10:6450:67 | transformingSortedMap(...) : TransformedSortedMap [] : String | Test.java:6451:21:6451:23 | out : TransformedSortedMap [] : String | provenance | | -| Test.java:6450:53:6450:54 | in : TreeMap [] : String | Test.java:6450:10:6450:67 | transformingSortedMap(...) : TransformedSortedMap [] : String | provenance | MaD:384 | -| Test.java:6451:21:6451:23 | out : TransformedSortedMap [] : String | Test.java:232:20:232:31 | map : TransformedSortedMap [] : String | provenance | | -| Test.java:6451:21:6451:23 | out : TransformedSortedMap [] : String | Test.java:6451:9:6451:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6456:39:6456:102 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | Test.java:6457:52:6457:53 | in : ListOrderedSet [, ] : String | provenance | | -| Test.java:6456:68:6456:101 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | provenance | | -| Test.java:6456:68:6456:101 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:6456:39:6456:102 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | provenance | MaD:4 | -| Test.java:6456:85:6456:100 | (...)... : String | Test.java:286:46:286:50 | key : String | provenance | | -| Test.java:6456:85:6456:100 | (...)... : String | Test.java:6456:68:6456:101 | newTMEWithMapKey(...) : TiedMapEntry [] : String | provenance | MaD:236 | -| Test.java:6456:93:6456:100 | source(...) : Object | Test.java:6456:85:6456:100 | (...)... : String | provenance | | -| Test.java:6457:10:6457:54 | unmodifiableEntrySet(...) : Set [, ] : String | Test.java:6458:39:6458:41 | out : Set [, ] : String | provenance | | -| Test.java:6457:52:6457:53 | in : ListOrderedSet [, ] : String | Test.java:6457:10:6457:54 | unmodifiableEntrySet(...) : Set [, ] : String | provenance | MaD:385 | -| Test.java:6458:28:6458:42 | getElement(...) : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | -| Test.java:6458:28:6458:42 | getElement(...) : Entry [] : String | Test.java:6458:9:6458:43 | getMapKeyFromEntry(...) | provenance | MaD:9 | -| Test.java:6458:39:6458:41 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | provenance | | -| Test.java:6458:39:6458:41 | out : Set [, ] : String | Test.java:6458:28:6458:42 | getElement(...) : Entry [] : String | provenance | MaD:3 | -| Test.java:6463:39:6463:104 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | Test.java:6464:52:6464:53 | in : ListOrderedSet [, ] : String | provenance | | -| Test.java:6463:68:6463:103 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | provenance | | -| Test.java:6463:68:6463:103 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:6463:39:6463:104 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | provenance | MaD:4 | -| Test.java:6463:87:6463:102 | (...)... : String | Test.java:305:48:305:54 | value : String | provenance | | -| Test.java:6463:87:6463:102 | (...)... : String | Test.java:6463:68:6463:103 | newTMEWithMapValue(...) : TiedMapEntry [] : String | provenance | MaD:20 | -| Test.java:6463:95:6463:102 | source(...) : Object | Test.java:6463:87:6463:102 | (...)... : String | provenance | | -| Test.java:6464:10:6464:54 | unmodifiableEntrySet(...) : Set [, ] : String | Test.java:6465:41:6465:43 | out : Set [, ] : String | provenance | | -| Test.java:6464:52:6464:53 | in : ListOrderedSet [, ] : String | Test.java:6464:10:6464:54 | unmodifiableEntrySet(...) : Set [, ] : String | provenance | MaD:386 | -| Test.java:6465:30:6465:44 | getElement(...) : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | -| Test.java:6465:30:6465:44 | getElement(...) : Entry [] : String | Test.java:6465:9:6465:45 | getMapValueFromEntry(...) | provenance | MaD:10 | -| Test.java:6465:41:6465:43 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | provenance | | -| Test.java:6465:41:6465:43 | out : Set [, ] : String | Test.java:6465:30:6465:44 | getElement(...) : Entry [] : String | provenance | MaD:3 | -| Test.java:6470:13:6470:42 | of(...) : Map [] : String | Test.java:6471:42:6471:43 | in : Map [] : String | provenance | | -| Test.java:6470:20:6470:35 | (...)... : String | Test.java:6470:13:6470:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6470:28:6470:35 | source(...) : Object | Test.java:6470:20:6470:35 | (...)... : String | provenance | | -| Test.java:6471:10:6471:44 | unmodifiableMap(...) : Map [] : String | Test.java:6472:19:6472:21 | out : Map [] : String | provenance | | -| Test.java:6471:42:6471:43 | in : Map [] : String | Test.java:6471:10:6471:44 | unmodifiableMap(...) : Map [] : String | provenance | MaD:387 | -| Test.java:6472:19:6472:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | -| Test.java:6472:19:6472:21 | out : Map [] : String | Test.java:6472:9:6472:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6477:13:6477:42 | of(...) : Map [] : String | Test.java:6478:42:6478:43 | in : Map [] : String | provenance | | -| Test.java:6477:26:6477:41 | (...)... : String | Test.java:6477:13:6477:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6477:34:6477:41 | source(...) : Object | Test.java:6477:26:6477:41 | (...)... : String | provenance | | -| Test.java:6478:10:6478:44 | unmodifiableMap(...) : Map [] : String | Test.java:6479:21:6479:23 | out : Map [] : String | provenance | | -| Test.java:6478:42:6478:43 | in : Map [] : String | Test.java:6478:10:6478:44 | unmodifiableMap(...) : Map [] : String | provenance | MaD:388 | -| Test.java:6479:21:6479:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | -| Test.java:6479:21:6479:23 | out : Map [] : String | Test.java:6479:9:6479:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6484:20:6484:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:6485:56:6485:57 | in : ListOrderedMap [] : String | provenance | | -| Test.java:6484:48:6484:63 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | -| Test.java:6484:48:6484:63 | (...)... : String | Test.java:6484:20:6484:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:13 | -| Test.java:6484:56:6484:63 | source(...) : Object | Test.java:6484:48:6484:63 | (...)... : String | provenance | | -| Test.java:6485:10:6485:58 | unmodifiableOrderedMap(...) : OrderedMap [] : String | Test.java:6486:19:6486:21 | out : OrderedMap [] : String | provenance | | -| Test.java:6485:56:6485:57 | in : ListOrderedMap [] : String | Test.java:6485:10:6485:58 | unmodifiableOrderedMap(...) : OrderedMap [] : String | provenance | MaD:389 | -| Test.java:6486:19:6486:21 | out : OrderedMap [] : String | Test.java:228:18:228:29 | map : OrderedMap [] : String | provenance | | -| Test.java:6486:19:6486:21 | out : OrderedMap [] : String | Test.java:6486:9:6486:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6491:20:6491:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:6492:56:6492:57 | in : ListOrderedMap [] : String | provenance | | -| Test.java:6491:50:6491:65 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | -| Test.java:6491:50:6491:65 | (...)... : String | Test.java:6491:20:6491:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:14 | -| Test.java:6491:58:6491:65 | source(...) : Object | Test.java:6491:50:6491:65 | (...)... : String | provenance | | -| Test.java:6492:10:6492:58 | unmodifiableOrderedMap(...) : OrderedMap [] : String | Test.java:6493:21:6493:23 | out : OrderedMap [] : String | provenance | | -| Test.java:6492:56:6492:57 | in : ListOrderedMap [] : String | Test.java:6492:10:6492:58 | unmodifiableOrderedMap(...) : OrderedMap [] : String | provenance | MaD:390 | -| Test.java:6493:21:6493:23 | out : OrderedMap [] : String | Test.java:232:20:232:31 | map : OrderedMap [] : String | provenance | | -| Test.java:6493:21:6493:23 | out : OrderedMap [] : String | Test.java:6493:9:6493:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6498:19:6498:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:6499:54:6499:55 | in : TreeMap [] : String | provenance | | -| Test.java:6498:40:6498:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | -| Test.java:6498:40:6498:55 | (...)... : String | Test.java:6498:19:6498:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:19 | -| Test.java:6498:48:6498:55 | source(...) : Object | Test.java:6498:40:6498:55 | (...)... : String | provenance | | -| Test.java:6499:10:6499:56 | unmodifiableSortedMap(...) : SortedMap [] : String | Test.java:6500:19:6500:21 | out : SortedMap [] : String | provenance | | -| Test.java:6499:54:6499:55 | in : TreeMap [] : String | Test.java:6499:10:6499:56 | unmodifiableSortedMap(...) : SortedMap [] : String | provenance | MaD:391 | -| Test.java:6500:19:6500:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | provenance | | -| Test.java:6500:19:6500:21 | out : SortedMap [] : String | Test.java:6500:9:6500:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6505:19:6505:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:6506:54:6506:55 | in : TreeMap [] : String | provenance | | -| Test.java:6505:42:6505:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | -| Test.java:6505:42:6505:57 | (...)... : String | Test.java:6505:19:6505:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:20 | -| Test.java:6505:50:6505:57 | source(...) : Object | Test.java:6505:42:6505:57 | (...)... : String | provenance | | -| Test.java:6506:10:6506:56 | unmodifiableSortedMap(...) : SortedMap [] : String | Test.java:6507:21:6507:23 | out : SortedMap [] : String | provenance | | -| Test.java:6506:54:6506:55 | in : TreeMap [] : String | Test.java:6506:10:6506:56 | unmodifiableSortedMap(...) : SortedMap [] : String | provenance | MaD:392 | -| Test.java:6507:21:6507:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | provenance | | -| Test.java:6507:21:6507:23 | out : SortedMap [] : String | Test.java:6507:9:6507:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6512:13:6512:42 | of(...) : Map [] : String | Test.java:6513:37:6513:38 | in : Map [] : String | provenance | | -| Test.java:6512:20:6512:35 | (...)... : String | Test.java:6512:13:6512:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6512:28:6512:35 | source(...) : Object | Test.java:6512:20:6512:35 | (...)... : String | provenance | | -| Test.java:6513:10:6513:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | Test.java:6514:19:6514:21 | out : ArrayListValuedHashMap [] : String | provenance | | -| Test.java:6513:37:6513:38 | in : Map [] : String | Test.java:6513:10:6513:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | provenance | MaD:393 | -| Test.java:6514:19:6514:21 | out : ArrayListValuedHashMap [] : String | Test.java:240:18:240:46 | container : ArrayListValuedHashMap [] : String | provenance | | -| Test.java:6514:19:6514:21 | out : ArrayListValuedHashMap [] : String | Test.java:6514:9:6514:22 | getMapKey(...) | provenance | MaD:760 | -| Test.java:6519:13:6519:42 | of(...) : Map [] : String | Test.java:6520:37:6520:38 | in : Map [] : String | provenance | | -| Test.java:6519:26:6519:41 | (...)... : String | Test.java:6519:13:6519:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6519:34:6519:41 | source(...) : Object | Test.java:6519:26:6519:41 | (...)... : String | provenance | | -| Test.java:6520:10:6520:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | Test.java:6521:32:6521:34 | out : ArrayListValuedHashMap [, ] : String | provenance | | -| Test.java:6520:37:6520:38 | in : Map [] : String | Test.java:6520:10:6520:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:394 | -| Test.java:6521:20:6521:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6521:20:6521:35 | getMapValue(...) : Collection [] : String | Test.java:6521:9:6521:36 | getElement(...) | provenance | MaD:3 | -| Test.java:6521:32:6521:34 | out : ArrayListValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : ArrayListValuedHashMap [, ] : String | provenance | | -| Test.java:6521:32:6521:34 | out : ArrayListValuedHashMap [, ] : String | Test.java:6521:20:6521:35 | getMapValue(...) : Collection [] : String | provenance | MaD:759 | -| Test.java:6526:24:6526:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:6527:37:6527:38 | in : ArrayListValuedHashMap [, ] : String | provenance | | -| Test.java:6526:45:6526:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:6526:45:6526:60 | (...)... : String | Test.java:6526:24:6526:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | -| Test.java:6526:53:6526:60 | source(...) : Object | Test.java:6526:45:6526:60 | (...)... : String | provenance | | -| Test.java:6527:10:6527:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | Test.java:6528:32:6528:34 | out : ArrayListValuedHashMap [, ] : String | provenance | | -| Test.java:6527:37:6527:38 | in : ArrayListValuedHashMap [, ] : String | Test.java:6527:10:6527:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:396 | -| Test.java:6528:20:6528:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6528:20:6528:35 | getMapValue(...) : Collection [] : String | Test.java:6528:9:6528:36 | getElement(...) | provenance | MaD:3 | -| Test.java:6528:32:6528:34 | out : ArrayListValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : ArrayListValuedHashMap [, ] : String | provenance | | -| Test.java:6528:32:6528:34 | out : ArrayListValuedHashMap [, ] : String | Test.java:6528:20:6528:35 | getMapValue(...) : Collection [] : String | provenance | MaD:759 | -| Test.java:6533:24:6533:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:6534:37:6534:38 | in : ArrayListValuedHashMap [] : String | provenance | | -| Test.java:6533:43:6533:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | -| Test.java:6533:43:6533:58 | (...)... : String | Test.java:6533:24:6533:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:764 | -| Test.java:6533:51:6533:58 | source(...) : Object | Test.java:6533:43:6533:58 | (...)... : String | provenance | | -| Test.java:6534:10:6534:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | Test.java:6535:19:6535:21 | out : ArrayListValuedHashMap [] : String | provenance | | -| Test.java:6534:37:6534:38 | in : ArrayListValuedHashMap [] : String | Test.java:6534:10:6534:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | provenance | MaD:395 | -| Test.java:6535:19:6535:21 | out : ArrayListValuedHashMap [] : String | Test.java:240:18:240:46 | container : ArrayListValuedHashMap [] : String | provenance | | -| Test.java:6535:19:6535:21 | out : ArrayListValuedHashMap [] : String | Test.java:6535:9:6535:22 | getMapKey(...) | provenance | MaD:760 | -| Test.java:6540:13:6540:42 | of(...) : Map [] : String | Test.java:6541:35:6541:36 | in : Map [] : String | provenance | | -| Test.java:6540:20:6540:35 | (...)... : String | Test.java:6540:13:6540:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6540:28:6540:35 | source(...) : Object | Test.java:6540:20:6540:35 | (...)... : String | provenance | | -| Test.java:6541:10:6541:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | Test.java:6542:19:6542:21 | out : HashSetValuedHashMap [] : String | provenance | | -| Test.java:6541:35:6541:36 | in : Map [] : String | Test.java:6541:10:6541:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | provenance | MaD:397 | -| Test.java:6542:19:6542:21 | out : HashSetValuedHashMap [] : String | Test.java:240:18:240:46 | container : HashSetValuedHashMap [] : String | provenance | | -| Test.java:6542:19:6542:21 | out : HashSetValuedHashMap [] : String | Test.java:6542:9:6542:22 | getMapKey(...) | provenance | MaD:760 | -| Test.java:6547:13:6547:42 | of(...) : Map [] : String | Test.java:6548:35:6548:36 | in : Map [] : String | provenance | | -| Test.java:6547:26:6547:41 | (...)... : String | Test.java:6547:13:6547:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6547:34:6547:41 | source(...) : Object | Test.java:6547:26:6547:41 | (...)... : String | provenance | | -| Test.java:6548:10:6548:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | Test.java:6549:32:6549:34 | out : HashSetValuedHashMap [, ] : String | provenance | | -| Test.java:6548:35:6548:36 | in : Map [] : String | Test.java:6548:10:6548:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | provenance | MaD:398 | -| Test.java:6549:20:6549:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6549:20:6549:35 | getMapValue(...) : Collection [] : String | Test.java:6549:9:6549:36 | getElement(...) | provenance | MaD:3 | -| Test.java:6549:32:6549:34 | out : HashSetValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : HashSetValuedHashMap [, ] : String | provenance | | -| Test.java:6549:32:6549:34 | out : HashSetValuedHashMap [, ] : String | Test.java:6549:20:6549:35 | getMapValue(...) : Collection [] : String | provenance | MaD:759 | -| Test.java:6554:24:6554:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:6555:35:6555:36 | in : ArrayListValuedHashMap [, ] : String | provenance | | -| Test.java:6554:45:6554:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:6554:45:6554:60 | (...)... : String | Test.java:6554:24:6554:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | -| Test.java:6554:53:6554:60 | source(...) : Object | Test.java:6554:45:6554:60 | (...)... : String | provenance | | -| Test.java:6555:10:6555:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | Test.java:6556:32:6556:34 | out : HashSetValuedHashMap [, ] : String | provenance | | -| Test.java:6555:35:6555:36 | in : ArrayListValuedHashMap [, ] : String | Test.java:6555:10:6555:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | provenance | MaD:400 | -| Test.java:6556:20:6556:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6556:20:6556:35 | getMapValue(...) : Collection [] : String | Test.java:6556:9:6556:36 | getElement(...) | provenance | MaD:3 | -| Test.java:6556:32:6556:34 | out : HashSetValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : HashSetValuedHashMap [, ] : String | provenance | | -| Test.java:6556:32:6556:34 | out : HashSetValuedHashMap [, ] : String | Test.java:6556:20:6556:35 | getMapValue(...) : Collection [] : String | provenance | MaD:759 | -| Test.java:6561:24:6561:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:6562:35:6562:36 | in : ArrayListValuedHashMap [] : String | provenance | | -| Test.java:6561:43:6561:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | -| Test.java:6561:43:6561:58 | (...)... : String | Test.java:6561:24:6561:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:764 | -| Test.java:6561:51:6561:58 | source(...) : Object | Test.java:6561:43:6561:58 | (...)... : String | provenance | | -| Test.java:6562:10:6562:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | Test.java:6563:19:6563:21 | out : HashSetValuedHashMap [] : String | provenance | | -| Test.java:6562:35:6562:36 | in : ArrayListValuedHashMap [] : String | Test.java:6562:10:6562:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | provenance | MaD:399 | -| Test.java:6563:19:6563:21 | out : HashSetValuedHashMap [] : String | Test.java:240:18:240:46 | container : HashSetValuedHashMap [] : String | provenance | | -| Test.java:6563:19:6563:21 | out : HashSetValuedHashMap [] : String | Test.java:6563:9:6563:22 | getMapKey(...) | provenance | MaD:760 | -| Test.java:6568:24:6568:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:6569:52:6569:53 | in : ArrayListValuedHashMap [, ] : String | provenance | | -| Test.java:6568:45:6568:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:6568:45:6568:60 | (...)... : String | Test.java:6568:24:6568:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | -| Test.java:6568:53:6568:60 | source(...) : Object | Test.java:6568:45:6568:60 | (...)... : String | provenance | | -| Test.java:6569:10:6569:66 | transformingMap(...) : TransformedMultiValuedMap [, ] : String | Test.java:6570:32:6570:34 | out : TransformedMultiValuedMap [, ] : String | provenance | | -| Test.java:6569:52:6569:53 | in : ArrayListValuedHashMap [, ] : String | Test.java:6569:10:6569:66 | transformingMap(...) : TransformedMultiValuedMap [, ] : String | provenance | MaD:402 | -| Test.java:6570:20:6570:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6570:20:6570:35 | getMapValue(...) : Collection [] : String | Test.java:6570:9:6570:36 | getElement(...) | provenance | MaD:3 | -| Test.java:6570:32:6570:34 | out : TransformedMultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : TransformedMultiValuedMap [, ] : String | provenance | | -| Test.java:6570:32:6570:34 | out : TransformedMultiValuedMap [, ] : String | Test.java:6570:20:6570:35 | getMapValue(...) : Collection [] : String | provenance | MaD:759 | -| Test.java:6575:24:6575:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:6576:52:6576:53 | in : ArrayListValuedHashMap [] : String | provenance | | -| Test.java:6575:43:6575:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | -| Test.java:6575:43:6575:58 | (...)... : String | Test.java:6575:24:6575:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:764 | -| Test.java:6575:51:6575:58 | source(...) : Object | Test.java:6575:43:6575:58 | (...)... : String | provenance | | -| Test.java:6576:10:6576:66 | transformingMap(...) : TransformedMultiValuedMap [] : String | Test.java:6577:19:6577:21 | out : TransformedMultiValuedMap [] : String | provenance | | -| Test.java:6576:52:6576:53 | in : ArrayListValuedHashMap [] : String | Test.java:6576:10:6576:66 | transformingMap(...) : TransformedMultiValuedMap [] : String | provenance | MaD:401 | -| Test.java:6577:19:6577:21 | out : TransformedMultiValuedMap [] : String | Test.java:240:18:240:46 | container : TransformedMultiValuedMap [] : String | provenance | | -| Test.java:6577:19:6577:21 | out : TransformedMultiValuedMap [] : String | Test.java:6577:9:6577:22 | getMapKey(...) | provenance | MaD:760 | -| Test.java:6582:24:6582:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:6583:64:6583:65 | in : ArrayListValuedHashMap [, ] : String | provenance | | -| Test.java:6582:45:6582:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | -| Test.java:6582:45:6582:60 | (...)... : String | Test.java:6582:24:6582:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:765 | -| Test.java:6582:53:6582:60 | source(...) : Object | Test.java:6582:45:6582:60 | (...)... : String | provenance | | -| Test.java:6583:10:6583:66 | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [, ] : String | Test.java:6584:32:6584:34 | out : UnmodifiableMultiValuedMap [, ] : String | provenance | | -| Test.java:6583:64:6583:65 | in : ArrayListValuedHashMap [, ] : String | Test.java:6583:10:6583:66 | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [, ] : String | provenance | MaD:404 | -| Test.java:6584:20:6584:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | -| Test.java:6584:20:6584:35 | getMapValue(...) : Collection [] : String | Test.java:6584:9:6584:36 | getElement(...) | provenance | MaD:3 | -| Test.java:6584:32:6584:34 | out : UnmodifiableMultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : UnmodifiableMultiValuedMap [, ] : String | provenance | | -| Test.java:6584:32:6584:34 | out : UnmodifiableMultiValuedMap [, ] : String | Test.java:6584:20:6584:35 | getMapValue(...) : Collection [] : String | provenance | MaD:759 | -| Test.java:6589:24:6589:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:6590:64:6590:65 | in : ArrayListValuedHashMap [] : String | provenance | | -| Test.java:6589:43:6589:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | -| Test.java:6589:43:6589:58 | (...)... : String | Test.java:6589:24:6589:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:764 | -| Test.java:6589:51:6589:58 | source(...) : Object | Test.java:6589:43:6589:58 | (...)... : String | provenance | | -| Test.java:6590:10:6590:66 | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [] : String | Test.java:6591:19:6591:21 | out : UnmodifiableMultiValuedMap [] : String | provenance | | -| Test.java:6590:64:6590:65 | in : ArrayListValuedHashMap [] : String | Test.java:6590:10:6590:66 | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [] : String | provenance | MaD:403 | -| Test.java:6591:19:6591:21 | out : UnmodifiableMultiValuedMap [] : String | Test.java:240:18:240:46 | container : UnmodifiableMultiValuedMap [] : String | provenance | | -| Test.java:6591:19:6591:21 | out : UnmodifiableMultiValuedMap [] : String | Test.java:6591:9:6591:22 | getMapKey(...) | provenance | MaD:760 | -| Test.java:6596:20:6596:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:6597:27:6597:28 | in : TreeBag [] : String | provenance | | -| Test.java:6596:42:6596:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:6596:42:6596:57 | (...)... : String | Test.java:6596:20:6596:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:6596:42:6596:57 | (...)... : String | Test.java:6596:20:6596:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:6596:50:6596:57 | source(...) : Object | Test.java:6596:42:6596:57 | (...)... : String | provenance | | -| Test.java:6597:10:6597:29 | new HashMultiSet<>(...) : HashMultiSet [] : String | Test.java:6598:20:6598:22 | out : HashMultiSet [] : String | provenance | | -| Test.java:6597:27:6597:28 | in : TreeBag [] : String | Test.java:6597:10:6597:29 | new HashMultiSet<>(...) : HashMultiSet [] : String | provenance | MaD:405 | -| Test.java:6598:20:6598:22 | out : HashMultiSet [] : String | Test.java:230:19:230:32 | it : HashMultiSet [] : String | provenance | | -| Test.java:6598:20:6598:22 | out : HashMultiSet [] : String | Test.java:6598:9:6598:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6603:18:6603:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:6604:48:6604:49 | in : HashMultiSet [] : String | provenance | | -| Test.java:6603:45:6603:60 | (...)... : String | Test.java:258:49:258:57 | element : String | provenance | | -| Test.java:6603:45:6603:60 | (...)... : String | Test.java:6603:18:6603:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | -| Test.java:6603:45:6603:60 | (...)... : String | Test.java:6603:18:6603:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:749 | -| Test.java:6603:53:6603:60 | source(...) : Object | Test.java:6603:45:6603:60 | (...)... : String | provenance | | -| Test.java:6604:10:6604:56 | predicatedMultiSet(...) : PredicatedMultiSet [] : String | Test.java:6605:20:6605:22 | out : PredicatedMultiSet [] : String | provenance | | -| Test.java:6604:48:6604:49 | in : HashMultiSet [] : String | Test.java:6604:10:6604:56 | predicatedMultiSet(...) : PredicatedMultiSet [] : String | provenance | MaD:406 | -| Test.java:6605:20:6605:22 | out : PredicatedMultiSet [] : String | Test.java:230:19:230:32 | it : PredicatedMultiSet [] : String | provenance | | -| Test.java:6605:20:6605:22 | out : PredicatedMultiSet [] : String | Test.java:6605:9:6605:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6610:18:6610:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:6611:52:6611:53 | in : HashMultiSet [] : String | provenance | | -| Test.java:6610:45:6610:60 | (...)... : String | Test.java:258:49:258:57 | element : String | provenance | | -| Test.java:6610:45:6610:60 | (...)... : String | Test.java:6610:18:6610:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | -| Test.java:6610:45:6610:60 | (...)... : String | Test.java:6610:18:6610:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:749 | -| Test.java:6610:53:6610:60 | source(...) : Object | Test.java:6610:45:6610:60 | (...)... : String | provenance | | -| Test.java:6611:10:6611:54 | synchronizedMultiSet(...) : SynchronizedMultiSet [] : String | Test.java:6612:20:6612:22 | out : SynchronizedMultiSet [] : String | provenance | | -| Test.java:6611:52:6611:53 | in : HashMultiSet [] : String | Test.java:6611:10:6611:54 | synchronizedMultiSet(...) : SynchronizedMultiSet [] : String | provenance | MaD:407 | -| Test.java:6612:20:6612:22 | out : SynchronizedMultiSet [] : String | Test.java:230:19:230:32 | it : SynchronizedMultiSet [] : String | provenance | | -| Test.java:6612:20:6612:22 | out : SynchronizedMultiSet [] : String | Test.java:6612:9:6612:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6617:18:6617:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:6618:52:6618:53 | in : HashMultiSet [] : String | provenance | | -| Test.java:6617:45:6617:60 | (...)... : String | Test.java:258:49:258:57 | element : String | provenance | | -| Test.java:6617:45:6617:60 | (...)... : String | Test.java:6617:18:6617:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | -| Test.java:6617:45:6617:60 | (...)... : String | Test.java:6617:18:6617:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:749 | -| Test.java:6617:53:6617:60 | source(...) : Object | Test.java:6617:45:6617:60 | (...)... : String | provenance | | -| Test.java:6618:10:6618:54 | unmodifiableMultiSet(...) : MultiSet [] : String | Test.java:6619:20:6619:22 | out : MultiSet [] : String | provenance | | -| Test.java:6618:52:6618:53 | in : HashMultiSet [] : String | Test.java:6618:10:6618:54 | unmodifiableMultiSet(...) : MultiSet [] : String | provenance | MaD:408 | -| Test.java:6619:20:6619:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | provenance | | -| Test.java:6619:20:6619:22 | out : MultiSet [] : String | Test.java:6619:9:6619:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6624:16:6624:31 | (...)... : String | Test.java:6626:30:6626:31 | in : String | provenance | | -| Test.java:6624:24:6624:31 | source(...) : Object | Test.java:6624:16:6624:31 | (...)... : String | provenance | | -| Test.java:6626:10:6626:32 | load(...) : Properties | Test.java:6627:9:6627:11 | out | provenance | | -| Test.java:6626:30:6626:31 | in : String | Test.java:6626:10:6626:32 | load(...) : Properties | provenance | MaD:409 | -| Test.java:6632:14:6632:27 | (...)... : File | Test.java:6634:24:6634:25 | in : File | provenance | | -| Test.java:6632:20:6632:27 | source(...) : Object | Test.java:6632:14:6632:27 | (...)... : File | provenance | | -| Test.java:6634:10:6634:26 | load(...) : Properties | Test.java:6635:9:6635:11 | out | provenance | | -| Test.java:6634:24:6634:25 | in : File | Test.java:6634:10:6634:26 | load(...) : Properties | provenance | MaD:410 | -| Test.java:6640:21:6640:41 | (...)... : InputStream | Test.java:6642:24:6642:25 | in : InputStream | provenance | | -| Test.java:6640:34:6640:41 | source(...) : Object | Test.java:6640:21:6640:41 | (...)... : InputStream | provenance | | -| Test.java:6642:10:6642:26 | load(...) : Properties | Test.java:6643:9:6643:11 | out | provenance | | -| Test.java:6642:24:6642:25 | in : InputStream | Test.java:6642:10:6642:26 | load(...) : Properties | provenance | MaD:411 | -| Test.java:6648:14:6648:27 | (...)... : Path | Test.java:6650:24:6650:25 | in : Path | provenance | | -| Test.java:6648:20:6648:27 | source(...) : Object | Test.java:6648:14:6648:27 | (...)... : Path | provenance | | -| Test.java:6650:10:6650:26 | load(...) : Properties | Test.java:6651:9:6651:11 | out | provenance | | -| Test.java:6650:24:6650:25 | in : Path | Test.java:6650:10:6650:26 | load(...) : Properties | provenance | MaD:412 | -| Test.java:6656:16:6656:31 | (...)... : Reader | Test.java:6658:24:6658:25 | in : Reader | provenance | | -| Test.java:6656:24:6656:31 | source(...) : Object | Test.java:6656:16:6656:31 | (...)... : Reader | provenance | | -| Test.java:6658:10:6658:26 | load(...) : Properties | Test.java:6659:9:6659:11 | out | provenance | | -| Test.java:6658:24:6658:25 | in : Reader | Test.java:6658:10:6658:26 | load(...) : Properties | provenance | MaD:413 | -| Test.java:6664:16:6664:31 | (...)... : String | Test.java:6666:24:6666:25 | in : String | provenance | | -| Test.java:6664:24:6664:31 | source(...) : Object | Test.java:6664:16:6664:31 | (...)... : String | provenance | | -| Test.java:6666:10:6666:26 | load(...) : Properties | Test.java:6667:9:6667:11 | out | provenance | | -| Test.java:6666:24:6666:25 | in : String | Test.java:6666:10:6666:26 | load(...) : Properties | provenance | MaD:414 | -| Test.java:6672:13:6672:25 | (...)... : URI | Test.java:6674:24:6674:25 | in : URI | provenance | | -| Test.java:6672:18:6672:25 | source(...) : Object | Test.java:6672:13:6672:25 | (...)... : URI | provenance | | -| Test.java:6674:10:6674:26 | load(...) : Properties | Test.java:6675:9:6675:11 | out | provenance | | -| Test.java:6674:24:6674:25 | in : URI | Test.java:6674:10:6674:26 | load(...) : Properties | provenance | MaD:415 | -| Test.java:6680:13:6680:25 | (...)... : URL | Test.java:6682:24:6682:25 | in : URL | provenance | | -| Test.java:6680:18:6680:25 | source(...) : Object | Test.java:6680:13:6680:25 | (...)... : URL | provenance | | -| Test.java:6682:10:6682:26 | load(...) : Properties | Test.java:6683:9:6683:11 | out | provenance | | -| Test.java:6682:24:6682:25 | in : URL | Test.java:6682:10:6682:26 | load(...) : Properties | provenance | MaD:416 | -| Test.java:6688:20:6688:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:6689:32:6689:33 | in : TreeBag [] : String | provenance | | -| Test.java:6688:42:6688:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:6688:42:6688:57 | (...)... : String | Test.java:6688:20:6688:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:6688:42:6688:57 | (...)... : String | Test.java:6688:20:6688:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:6688:50:6688:57 | source(...) : Object | Test.java:6688:42:6688:57 | (...)... : String | provenance | | -| Test.java:6689:10:6689:34 | new CircularFifoQueue<>(...) : CircularFifoQueue [] : String | Test.java:6690:20:6690:22 | out : CircularFifoQueue [] : String | provenance | | -| Test.java:6689:32:6689:33 | in : TreeBag [] : String | Test.java:6689:10:6689:34 | new CircularFifoQueue<>(...) : CircularFifoQueue [] : String | provenance | MaD:417 | -| Test.java:6690:20:6690:22 | out : CircularFifoQueue [] : String | Test.java:230:19:230:32 | it : CircularFifoQueue [] : String | provenance | | -| Test.java:6690:20:6690:22 | out : CircularFifoQueue [] : String | Test.java:6690:9:6690:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6695:27:6695:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:6696:10:6696:11 | in : CircularFifoQueue [] : String | provenance | | -| Test.java:6695:59:6695:74 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | -| Test.java:6695:59:6695:74 | (...)... : String | Test.java:6695:27:6695:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | -| Test.java:6695:67:6695:74 | source(...) : Object | Test.java:6695:59:6695:74 | (...)... : String | provenance | | -| Test.java:6696:10:6696:11 | in : CircularFifoQueue [] : String | Test.java:6696:10:6696:18 | get(...) : String | provenance | MaD:418 | -| Test.java:6696:10:6696:18 | get(...) : String | Test.java:6697:9:6697:11 | out | provenance | | -| Test.java:6702:15:6702:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:6703:42:6703:43 | in : CircularFifoQueue [] : String | provenance | | -| Test.java:6702:47:6702:62 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | -| Test.java:6702:47:6702:62 | (...)... : String | Test.java:6702:15:6702:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | -| Test.java:6702:55:6702:62 | source(...) : Object | Test.java:6702:47:6702:62 | (...)... : String | provenance | | -| Test.java:6703:10:6703:50 | predicatedQueue(...) : PredicatedQueue [] : String | Test.java:6704:20:6704:22 | out : PredicatedQueue [] : String | provenance | | -| Test.java:6703:42:6703:43 | in : CircularFifoQueue [] : String | Test.java:6703:10:6703:50 | predicatedQueue(...) : PredicatedQueue [] : String | provenance | MaD:419 | -| Test.java:6704:20:6704:22 | out : PredicatedQueue [] : String | Test.java:230:19:230:32 | it : PredicatedQueue [] : String | provenance | | -| Test.java:6704:20:6704:22 | out : PredicatedQueue [] : String | Test.java:6704:9:6704:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6709:15:6709:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:6710:46:6710:47 | in : CircularFifoQueue [] : String | provenance | | -| Test.java:6709:47:6709:62 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | -| Test.java:6709:47:6709:62 | (...)... : String | Test.java:6709:15:6709:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | -| Test.java:6709:55:6709:62 | source(...) : Object | Test.java:6709:47:6709:62 | (...)... : String | provenance | | -| Test.java:6710:10:6710:48 | synchronizedQueue(...) : SynchronizedQueue [] : String | Test.java:6711:20:6711:22 | out : SynchronizedQueue [] : String | provenance | | -| Test.java:6710:46:6710:47 | in : CircularFifoQueue [] : String | Test.java:6710:10:6710:48 | synchronizedQueue(...) : SynchronizedQueue [] : String | provenance | MaD:420 | -| Test.java:6711:20:6711:22 | out : SynchronizedQueue [] : String | Test.java:230:19:230:32 | it : SynchronizedQueue [] : String | provenance | | -| Test.java:6711:20:6711:22 | out : SynchronizedQueue [] : String | Test.java:6711:9:6711:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6716:15:6716:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:6717:45:6717:46 | in : CircularFifoQueue [] : String | provenance | | -| Test.java:6716:47:6716:62 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | -| Test.java:6716:47:6716:62 | (...)... : String | Test.java:6716:15:6716:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | -| Test.java:6716:55:6716:62 | source(...) : Object | Test.java:6716:47:6716:62 | (...)... : String | provenance | | -| Test.java:6717:10:6717:53 | transformingQueue(...) : TransformedQueue [] : String | Test.java:6718:20:6718:22 | out : TransformedQueue [] : String | provenance | | -| Test.java:6717:45:6717:46 | in : CircularFifoQueue [] : String | Test.java:6717:10:6717:53 | transformingQueue(...) : TransformedQueue [] : String | provenance | MaD:421 | -| Test.java:6718:20:6718:22 | out : TransformedQueue [] : String | Test.java:230:19:230:32 | it : TransformedQueue [] : String | provenance | | -| Test.java:6718:20:6718:22 | out : TransformedQueue [] : String | Test.java:6718:9:6718:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6723:15:6723:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:6724:46:6724:47 | in : CircularFifoQueue [] : String | provenance | | -| Test.java:6723:47:6723:62 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | -| Test.java:6723:47:6723:62 | (...)... : String | Test.java:6723:15:6723:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | -| Test.java:6723:55:6723:62 | source(...) : Object | Test.java:6723:47:6723:62 | (...)... : String | provenance | | -| Test.java:6724:10:6724:48 | unmodifiableQueue(...) : Queue [] : String | Test.java:6725:20:6725:22 | out : Queue [] : String | provenance | | -| Test.java:6724:46:6724:47 | in : CircularFifoQueue [] : String | Test.java:6724:10:6724:48 | unmodifiableQueue(...) : Queue [] : String | provenance | MaD:422 | -| Test.java:6725:20:6725:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | -| Test.java:6725:20:6725:22 | out : Queue [] : String | Test.java:6725:9:6725:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6730:22:6730:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6731:46:6731:47 | in : TreeSet [] : String | provenance | | -| Test.java:6730:44:6730:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:6730:44:6730:59 | (...)... : String | Test.java:6730:22:6730:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:6730:52:6730:59 | source(...) : Object | Test.java:6730:44:6730:59 | (...)... : String | provenance | | -| Test.java:6731:10:6731:48 | new MyAbstractNavigableSetDecorator<>(...) : MyAbstractNavigableSetDecorator [] : String | Test.java:6732:20:6732:22 | out : MyAbstractNavigableSetDecorator [] : String | provenance | | -| Test.java:6731:46:6731:47 | in : TreeSet [] : String | Test.java:6731:10:6731:48 | new MyAbstractNavigableSetDecorator<>(...) : MyAbstractNavigableSetDecorator [] : String | provenance | MaD:423 | -| Test.java:6731:46:6731:47 | in : TreeSet [] : String | Test.java:7243:42:7243:66 | set : TreeSet [] : String | provenance | | -| Test.java:6732:20:6732:22 | out : MyAbstractNavigableSetDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractNavigableSetDecorator [] : String | provenance | | -| Test.java:6732:20:6732:22 | out : MyAbstractNavigableSetDecorator [] : String | Test.java:6732:9:6732:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6737:13:6737:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6738:37:6738:38 | in : ListOrderedSet [] : String | provenance | | -| Test.java:6737:42:6737:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6737:42:6737:57 | (...)... : String | Test.java:6737:13:6737:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6737:50:6737:57 | source(...) : Object | Test.java:6737:42:6737:57 | (...)... : String | provenance | | -| Test.java:6738:10:6738:39 | new MyAbstractSetDecorator<>(...) : MyAbstractSetDecorator [] : String | Test.java:6739:20:6739:22 | out : MyAbstractSetDecorator [] : String | provenance | | -| Test.java:6738:37:6738:38 | in : ListOrderedSet [] : String | Test.java:6738:10:6738:39 | new MyAbstractSetDecorator<>(...) : MyAbstractSetDecorator [] : String | provenance | MaD:424 | -| Test.java:6738:37:6738:38 | in : ListOrderedSet [] : String | Test.java:7249:33:7249:48 | set : ListOrderedSet [] : String | provenance | | -| Test.java:6739:20:6739:22 | out : MyAbstractSetDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSetDecorator [] : String | provenance | | -| Test.java:6739:20:6739:22 | out : MyAbstractSetDecorator [] : String | Test.java:6739:9:6739:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6744:13:6744:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6745:43:6745:44 | in : ListOrderedSet [] : String | provenance | | -| Test.java:6744:42:6744:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6744:42:6744:57 | (...)... : String | Test.java:6744:13:6744:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6744:50:6744:57 | source(...) : Object | Test.java:6744:42:6744:57 | (...)... : String | provenance | | -| Test.java:6745:10:6745:45 | new MyAbstractSortedSetDecorator<>(...) : MyAbstractSortedSetDecorator [] : String | Test.java:6746:20:6746:22 | out : MyAbstractSortedSetDecorator [] : String | provenance | | -| Test.java:6745:43:6745:44 | in : ListOrderedSet [] : String | Test.java:6745:10:6745:45 | new MyAbstractSortedSetDecorator<>(...) : MyAbstractSortedSetDecorator [] : String | provenance | MaD:425 | -| Test.java:6745:43:6745:44 | in : ListOrderedSet [] : String | Test.java:7255:39:7255:54 | set : ListOrderedSet [] : String | provenance | | -| Test.java:6746:20:6746:22 | out : MyAbstractSortedSetDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSortedSetDecorator [] : String | provenance | | -| Test.java:6746:20:6746:22 | out : MyAbstractSortedSetDecorator [] : String | Test.java:6746:9:6746:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6751:16:6751:23 | source(...) : Object | Test.java:6753:28:6753:29 | in : Object | provenance | | -| Test.java:6753:17:6753:19 | out [post update] : CompositeSet [] : Object | Test.java:6754:20:6754:22 | out : CompositeSet [] : Object | provenance | | -| Test.java:6753:28:6753:29 | in : Object | Test.java:6753:17:6753:19 | out [post update] : CompositeSet [] : Object | provenance | MaD:426 | -| Test.java:6754:20:6754:22 | out : CompositeSet [] : Object | Test.java:230:19:230:32 | it : CompositeSet [] : Object | provenance | | -| Test.java:6754:20:6754:22 | out : CompositeSet [] : Object | Test.java:6754:9:6754:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6759:16:6759:23 | source(...) : Object | Test.java:6761:28:6761:29 | in : Object | provenance | | -| Test.java:6761:23:6761:25 | out [post update] : List [, ] : Object | Test.java:6762:31:6762:33 | out : List [, ] : Object | provenance | | -| Test.java:6761:28:6761:29 | in : Object | Test.java:6761:23:6761:25 | out [post update] : List [, ] : Object | provenance | MaD:427 | -| Test.java:6762:20:6762:34 | getElement(...) : Set [] : Object | Test.java:230:19:230:32 | it : Set [] : Object | provenance | | -| Test.java:6762:20:6762:34 | getElement(...) : Set [] : Object | Test.java:6762:9:6762:35 | getElement(...) | provenance | MaD:3 | -| Test.java:6762:31:6762:33 | out : List [, ] : Object | Test.java:230:19:230:32 | it : List [, ] : Object | provenance | | -| Test.java:6762:31:6762:33 | out : List [, ] : Object | Test.java:6762:20:6762:34 | getElement(...) : Set [] : Object | provenance | MaD:3 | -| Test.java:6767:20:6767:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:6769:31:6769:32 | in : TreeBag [] : String | provenance | | -| Test.java:6767:42:6767:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:6767:42:6767:57 | (...)... : String | Test.java:6767:20:6767:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:6767:42:6767:57 | (...)... : String | Test.java:6767:20:6767:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:6767:50:6767:57 | source(...) : Object | Test.java:6767:42:6767:57 | (...)... : String | provenance | | -| Test.java:6769:20:6769:22 | out [post update] : CompositeSet [] : String | Test.java:6770:20:6770:22 | out : CompositeSet [] : String | provenance | | -| Test.java:6769:31:6769:32 | in : TreeBag [] : String | Test.java:6769:20:6769:22 | out [post update] : CompositeSet [] : String | provenance | MaD:428 | -| Test.java:6770:20:6770:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | -| Test.java:6770:20:6770:22 | out : CompositeSet [] : String | Test.java:6770:9:6770:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6775:20:6775:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:6777:31:6777:32 | in : TreeBag [] : String | provenance | | -| Test.java:6775:42:6775:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | -| Test.java:6775:42:6775:57 | (...)... : String | Test.java:6775:20:6775:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | -| Test.java:6775:42:6775:57 | (...)... : String | Test.java:6775:20:6775:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:470 | -| Test.java:6775:50:6775:57 | source(...) : Object | Test.java:6775:42:6775:57 | (...)... : String | provenance | | -| Test.java:6777:26:6777:28 | out [post update] : List [, ] : String | Test.java:6778:31:6778:33 | out : List [, ] : String | provenance | | -| Test.java:6777:31:6777:32 | in : TreeBag [] : String | Test.java:6777:26:6777:28 | out [post update] : List [, ] : String | provenance | MaD:429 | -| Test.java:6778:20:6778:34 | getElement(...) : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:6778:20:6778:34 | getElement(...) : Set [] : String | Test.java:6778:9:6778:35 | getElement(...) | provenance | MaD:3 | -| Test.java:6778:31:6778:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | provenance | | -| Test.java:6778:31:6778:33 | out : List [, ] : String | Test.java:6778:20:6778:34 | getElement(...) : Set [] : String | provenance | MaD:3 | -| Test.java:6783:13:6783:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6784:27:6784:28 | in : ListOrderedSet [] : String | provenance | | -| Test.java:6783:42:6783:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6783:42:6783:57 | (...)... : String | Test.java:6783:13:6783:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6783:50:6783:57 | source(...) : Object | Test.java:6783:42:6783:57 | (...)... : String | provenance | | -| Test.java:6784:10:6784:29 | new CompositeSet<>(...) : CompositeSet [] : String | Test.java:6785:20:6785:22 | out : CompositeSet [] : String | provenance | | -| Test.java:6784:27:6784:28 | in : ListOrderedSet [] : String | Test.java:6784:10:6784:29 | new CompositeSet<>(...) : CompositeSet [] : String | provenance | MaD:430 | -| Test.java:6785:20:6785:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | -| Test.java:6785:20:6785:22 | out : CompositeSet [] : String | Test.java:6785:9:6785:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6790:15:6790:71 | {...} : Set[] [[], ] : String | Test.java:6791:27:6791:28 | in : Set[] [[], ] : String | provenance | | -| Test.java:6790:25:6790:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6790:15:6790:71 | {...} : Set[] [[], ] : String | provenance | | -| Test.java:6790:54:6790:69 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6790:54:6790:69 | (...)... : String | Test.java:6790:25:6790:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6790:62:6790:69 | source(...) : Object | Test.java:6790:54:6790:69 | (...)... : String | provenance | | -| Test.java:6791:10:6791:29 | new CompositeSet<>(...) : CompositeSet [] : String | Test.java:6792:20:6792:22 | out : CompositeSet [] : String | provenance | | -| Test.java:6791:27:6791:28 | in : Set[] [[], ] : String | Test.java:6791:10:6791:29 | new CompositeSet<>(...) : CompositeSet [] : String | provenance | MaD:431 | -| Test.java:6792:20:6792:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | -| Test.java:6792:20:6792:22 | out : CompositeSet [] : String | Test.java:6792:9:6792:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6797:13:6797:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6798:22:6798:23 | in : ListOrderedSet [] : String | provenance | | -| Test.java:6797:42:6797:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6797:42:6797:57 | (...)... : String | Test.java:6797:13:6797:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6797:50:6797:57 | source(...) : Object | Test.java:6797:42:6797:57 | (...)... : String | provenance | | -| Test.java:6798:4:6798:6 | out [post update] : CompositeSet [] : String | Test.java:6799:20:6799:22 | out : CompositeSet [] : String | provenance | | -| Test.java:6798:22:6798:23 | in : ListOrderedSet [] : String | Test.java:6798:4:6798:6 | out [post update] : CompositeSet [] : String | provenance | MaD:432 | -| Test.java:6799:20:6799:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | -| Test.java:6799:20:6799:22 | out : CompositeSet [] : String | Test.java:6799:9:6799:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6804:13:6804:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6805:22:6805:23 | in : ListOrderedSet [] : String | provenance | | -| Test.java:6804:42:6804:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6804:42:6804:57 | (...)... : String | Test.java:6804:13:6804:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6804:50:6804:57 | source(...) : Object | Test.java:6804:42:6804:57 | (...)... : String | provenance | | -| Test.java:6805:4:6805:6 | out [post update] : CompositeSet [] : String | Test.java:6806:20:6806:22 | out : CompositeSet [] : String | provenance | | -| Test.java:6805:22:6805:23 | in : ListOrderedSet [] : String | Test.java:6805:4:6805:6 | out [post update] : CompositeSet [] : String | provenance | MaD:433 | -| Test.java:6806:20:6806:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | -| Test.java:6806:20:6806:22 | out : CompositeSet [] : String | Test.java:6806:9:6806:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6811:13:6811:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6812:28:6812:29 | in : ListOrderedSet [] : String | provenance | | -| Test.java:6811:42:6811:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6811:42:6811:57 | (...)... : String | Test.java:6811:13:6811:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6811:50:6811:57 | source(...) : Object | Test.java:6811:42:6811:57 | (...)... : String | provenance | | -| Test.java:6812:4:6812:6 | out [post update] : CompositeSet [] : String | Test.java:6813:20:6813:22 | out : CompositeSet [] : String | provenance | | -| Test.java:6812:28:6812:29 | in : ListOrderedSet [] : String | Test.java:6812:4:6812:6 | out [post update] : CompositeSet [] : String | provenance | MaD:434 | -| Test.java:6813:20:6813:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | -| Test.java:6813:20:6813:22 | out : CompositeSet [] : String | Test.java:6813:9:6813:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6818:15:6818:71 | {...} : Set[] [[], ] : String | Test.java:6819:22:6819:23 | in : Set[] [[], ] : String | provenance | | -| Test.java:6818:25:6818:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6818:15:6818:71 | {...} : Set[] [[], ] : String | provenance | | -| Test.java:6818:54:6818:69 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6818:54:6818:69 | (...)... : String | Test.java:6818:25:6818:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6818:62:6818:69 | source(...) : Object | Test.java:6818:54:6818:69 | (...)... : String | provenance | | -| Test.java:6819:4:6819:6 | out [post update] : CompositeSet [] : String | Test.java:6820:20:6820:22 | out : CompositeSet [] : String | provenance | | -| Test.java:6819:22:6819:23 | in : Set[] [[], ] : String | Test.java:6819:4:6819:6 | out [post update] : CompositeSet [] : String | provenance | MaD:435 | -| Test.java:6820:20:6820:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | -| Test.java:6820:20:6820:22 | out : CompositeSet [] : String | Test.java:6820:9:6820:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6825:30:6825:73 | newCompositeSetWithElement(...) : CompositeSet [] : String | Test.java:6826:10:6826:11 | in : CompositeSet [] : String | provenance | | -| Test.java:6825:57:6825:72 | (...)... : String | Test.java:254:49:254:57 | element : String | provenance | | -| Test.java:6825:57:6825:72 | (...)... : String | Test.java:6825:30:6825:73 | newCompositeSetWithElement(...) : CompositeSet [] : String | provenance | MaD:4 | -| Test.java:6825:65:6825:72 | source(...) : Object | Test.java:6825:57:6825:72 | (...)... : String | provenance | | -| Test.java:6826:10:6826:11 | in : CompositeSet [] : String | Test.java:6826:10:6826:21 | getSets(...) : List [, ] : String | provenance | MaD:436 | -| Test.java:6826:10:6826:21 | getSets(...) : List [, ] : String | Test.java:6827:31:6827:33 | out : List [, ] : String | provenance | | -| Test.java:6827:20:6827:34 | getElement(...) : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:6827:20:6827:34 | getElement(...) : Set [] : String | Test.java:6827:9:6827:35 | getElement(...) | provenance | MaD:3 | -| Test.java:6827:31:6827:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | provenance | | -| Test.java:6827:31:6827:33 | out : List [, ] : String | Test.java:6827:20:6827:34 | getElement(...) : Set [] : String | provenance | MaD:3 | -| Test.java:6832:22:6832:65 | newCompositeSetWithElement(...) : CompositeSet [] : String | Test.java:6833:10:6833:11 | in : CompositeSet [] : String | provenance | | -| Test.java:6832:49:6832:64 | (...)... : String | Test.java:254:49:254:57 | element : String | provenance | | -| Test.java:6832:49:6832:64 | (...)... : String | Test.java:6832:22:6832:65 | newCompositeSetWithElement(...) : CompositeSet [] : String | provenance | MaD:4 | -| Test.java:6832:57:6832:64 | source(...) : Object | Test.java:6832:49:6832:64 | (...)... : String | provenance | | -| Test.java:6833:10:6833:11 | in : CompositeSet [] : String | Test.java:6833:10:6833:19 | toSet(...) : Set [] : String | provenance | MaD:437 | -| Test.java:6833:10:6833:19 | toSet(...) : Set [] : String | Test.java:6834:20:6834:22 | out : Set [] : String | provenance | | -| Test.java:6834:20:6834:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:6834:20:6834:22 | out : Set [] : String | Test.java:6834:9:6834:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6839:16:6839:23 | source(...) : Object | Test.java:6840:15:6840:16 | in : Object | provenance | | -| Test.java:6840:4:6840:6 | out [post update] : ListOrderedSet [] : Object | Test.java:6841:20:6841:22 | out : ListOrderedSet [] : Object | provenance | | -| Test.java:6840:15:6840:16 | in : Object | Test.java:6840:4:6840:6 | out [post update] : ListOrderedSet [] : Object | provenance | MaD:438 | -| Test.java:6841:20:6841:22 | out : ListOrderedSet [] : Object | Test.java:230:19:230:32 | it : ListOrderedSet [] : Object | provenance | | -| Test.java:6841:20:6841:22 | out : ListOrderedSet [] : Object | Test.java:6841:9:6841:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6846:20:6846:44 | of(...) : List [] : String | Test.java:6847:18:6847:19 | in : List [] : String | provenance | | -| Test.java:6846:28:6846:43 | (...)... : String | Test.java:6846:20:6846:44 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:6846:36:6846:43 | source(...) : Object | Test.java:6846:28:6846:43 | (...)... : String | provenance | | -| Test.java:6847:4:6847:6 | out [post update] : ListOrderedSet [] : String | Test.java:6848:20:6848:22 | out : ListOrderedSet [] : String | provenance | | -| Test.java:6847:18:6847:19 | in : List [] : String | Test.java:6847:4:6847:6 | out [post update] : ListOrderedSet [] : String | provenance | MaD:439 | -| Test.java:6848:20:6848:22 | out : ListOrderedSet [] : String | Test.java:230:19:230:32 | it : ListOrderedSet [] : String | provenance | | -| Test.java:6848:20:6848:22 | out : ListOrderedSet [] : String | Test.java:6848:9:6848:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6853:24:6853:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6854:10:6854:11 | in : ListOrderedSet [] : String | provenance | | -| Test.java:6853:53:6853:68 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6853:53:6853:68 | (...)... : String | Test.java:6853:24:6853:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6853:61:6853:68 | source(...) : Object | Test.java:6853:53:6853:68 | (...)... : String | provenance | | -| Test.java:6854:10:6854:11 | in : ListOrderedSet [] : String | Test.java:6854:10:6854:20 | asList(...) : List [] : String | provenance | MaD:440 | -| Test.java:6854:10:6854:20 | asList(...) : List [] : String | Test.java:6855:20:6855:22 | out : List [] : String | provenance | | -| Test.java:6855:20:6855:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | -| Test.java:6855:20:6855:22 | out : List [] : String | Test.java:6855:9:6855:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6860:24:6860:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6861:10:6861:11 | in : ListOrderedSet [] : String | provenance | | -| Test.java:6860:53:6860:68 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6860:53:6860:68 | (...)... : String | Test.java:6860:24:6860:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6860:61:6860:68 | source(...) : Object | Test.java:6860:53:6860:68 | (...)... : String | provenance | | -| Test.java:6861:10:6861:11 | in : ListOrderedSet [] : String | Test.java:6861:10:6861:18 | get(...) : String | provenance | MaD:441 | -| Test.java:6861:10:6861:18 | get(...) : String | Test.java:6862:9:6862:11 | out | provenance | | -| Test.java:6867:14:6867:38 | of(...) : List [] : String | Test.java:6868:40:6868:41 | in : List [] : String | provenance | | -| Test.java:6867:22:6867:37 | (...)... : String | Test.java:6867:14:6867:38 | of(...) : List [] : String | provenance | MaD:7 | -| Test.java:6867:30:6867:37 | source(...) : Object | Test.java:6867:22:6867:37 | (...)... : String | provenance | | -| Test.java:6868:10:6868:42 | listOrderedSet(...) : ListOrderedSet [] : String | Test.java:6869:20:6869:22 | out : ListOrderedSet [] : String | provenance | | -| Test.java:6868:40:6868:41 | in : List [] : String | Test.java:6868:10:6868:42 | listOrderedSet(...) : ListOrderedSet [] : String | provenance | MaD:442 | -| Test.java:6869:20:6869:22 | out : ListOrderedSet [] : String | Test.java:230:19:230:32 | it : ListOrderedSet [] : String | provenance | | -| Test.java:6869:20:6869:22 | out : ListOrderedSet [] : String | Test.java:6869:9:6869:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6874:13:6874:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6875:40:6875:41 | in : ListOrderedSet [] : String | provenance | | -| Test.java:6874:42:6874:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6874:42:6874:57 | (...)... : String | Test.java:6874:13:6874:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6874:50:6874:57 | source(...) : Object | Test.java:6874:42:6874:57 | (...)... : String | provenance | | -| Test.java:6875:10:6875:42 | listOrderedSet(...) : ListOrderedSet [] : String | Test.java:6876:20:6876:22 | out : ListOrderedSet [] : String | provenance | | -| Test.java:6875:40:6875:41 | in : ListOrderedSet [] : String | Test.java:6875:10:6875:42 | listOrderedSet(...) : ListOrderedSet [] : String | provenance | MaD:443 | -| Test.java:6876:20:6876:22 | out : ListOrderedSet [] : String | Test.java:230:19:230:32 | it : ListOrderedSet [] : String | provenance | | -| Test.java:6876:20:6876:22 | out : ListOrderedSet [] : String | Test.java:6876:9:6876:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6881:13:6881:42 | of(...) : Map [] : String | Test.java:6882:36:6882:37 | in : Map [] : String | provenance | | -| Test.java:6881:20:6881:35 | (...)... : String | Test.java:6881:13:6881:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6881:28:6881:35 | source(...) : Object | Test.java:6881:20:6881:35 | (...)... : String | provenance | | -| Test.java:6882:10:6882:44 | mapBackedSet(...) : MapBackedSet [] : String | Test.java:6883:20:6883:22 | out : MapBackedSet [] : String | provenance | | -| Test.java:6882:36:6882:37 | in : Map [] : String | Test.java:6882:10:6882:44 | mapBackedSet(...) : MapBackedSet [] : String | provenance | MaD:444 | -| Test.java:6883:20:6883:22 | out : MapBackedSet [] : String | Test.java:230:19:230:32 | it : MapBackedSet [] : String | provenance | | -| Test.java:6883:20:6883:22 | out : MapBackedSet [] : String | Test.java:6883:9:6883:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6888:13:6888:42 | of(...) : Map [] : String | Test.java:6889:36:6889:37 | in : Map [] : String | provenance | | -| Test.java:6888:20:6888:35 | (...)... : String | Test.java:6888:13:6888:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6888:28:6888:35 | source(...) : Object | Test.java:6888:20:6888:35 | (...)... : String | provenance | | -| Test.java:6889:10:6889:38 | mapBackedSet(...) : MapBackedSet [] : String | Test.java:6890:20:6890:22 | out : MapBackedSet [] : String | provenance | | -| Test.java:6889:36:6889:37 | in : Map [] : String | Test.java:6889:10:6889:38 | mapBackedSet(...) : MapBackedSet [] : String | provenance | MaD:444 | -| Test.java:6890:20:6890:22 | out : MapBackedSet [] : String | Test.java:230:19:230:32 | it : MapBackedSet [] : String | provenance | | -| Test.java:6890:20:6890:22 | out : MapBackedSet [] : String | Test.java:6890:9:6890:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6895:22:6895:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6896:56:6896:57 | in : TreeSet [] : String | provenance | | -| Test.java:6895:44:6895:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:6895:44:6895:59 | (...)... : String | Test.java:6895:22:6895:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:6895:52:6895:59 | source(...) : Object | Test.java:6895:44:6895:59 | (...)... : String | provenance | | -| Test.java:6896:10:6896:64 | predicatedNavigableSet(...) : PredicatedNavigableSet [] : String | Test.java:6897:20:6897:22 | out : PredicatedNavigableSet [] : String | provenance | | -| Test.java:6896:56:6896:57 | in : TreeSet [] : String | Test.java:6896:10:6896:64 | predicatedNavigableSet(...) : PredicatedNavigableSet [] : String | provenance | MaD:445 | -| Test.java:6897:20:6897:22 | out : PredicatedNavigableSet [] : String | Test.java:230:19:230:32 | it : PredicatedNavigableSet [] : String | provenance | | -| Test.java:6897:20:6897:22 | out : PredicatedNavigableSet [] : String | Test.java:6897:9:6897:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6902:13:6902:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6903:38:6903:39 | in : ListOrderedSet [] : String | provenance | | -| Test.java:6902:42:6902:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6902:42:6902:57 | (...)... : String | Test.java:6902:13:6902:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6902:50:6902:57 | source(...) : Object | Test.java:6902:42:6902:57 | (...)... : String | provenance | | -| Test.java:6903:10:6903:46 | predicatedSet(...) : PredicatedSet [] : String | Test.java:6904:20:6904:22 | out : PredicatedSet [] : String | provenance | | -| Test.java:6903:38:6903:39 | in : ListOrderedSet [] : String | Test.java:6903:10:6903:46 | predicatedSet(...) : PredicatedSet [] : String | provenance | MaD:446 | -| Test.java:6904:20:6904:22 | out : PredicatedSet [] : String | Test.java:230:19:230:32 | it : PredicatedSet [] : String | provenance | | -| Test.java:6904:20:6904:22 | out : PredicatedSet [] : String | Test.java:6904:9:6904:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6909:19:6909:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6910:50:6910:51 | in : TreeSet [] : String | provenance | | -| Test.java:6909:41:6909:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:6909:41:6909:56 | (...)... : String | Test.java:6909:19:6909:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:6909:49:6909:56 | source(...) : Object | Test.java:6909:41:6909:56 | (...)... : String | provenance | | -| Test.java:6910:10:6910:58 | predicatedSortedSet(...) : PredicatedSortedSet [] : String | Test.java:6911:20:6911:22 | out : PredicatedSortedSet [] : String | provenance | | -| Test.java:6910:50:6910:51 | in : TreeSet [] : String | Test.java:6910:10:6910:58 | predicatedSortedSet(...) : PredicatedSortedSet [] : String | provenance | MaD:447 | -| Test.java:6911:20:6911:22 | out : PredicatedSortedSet [] : String | Test.java:230:19:230:32 | it : PredicatedSortedSet [] : String | provenance | | -| Test.java:6911:20:6911:22 | out : PredicatedSortedSet [] : String | Test.java:6911:9:6911:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6916:22:6916:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6917:59:6917:60 | in : TreeSet [] : String | provenance | | -| Test.java:6916:44:6916:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:6916:44:6916:59 | (...)... : String | Test.java:6916:22:6916:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:6916:52:6916:59 | source(...) : Object | Test.java:6916:44:6916:59 | (...)... : String | provenance | | -| Test.java:6917:10:6917:67 | transformingNavigableSet(...) : TransformedNavigableSet [] : String | Test.java:6918:20:6918:22 | out : TransformedNavigableSet [] : String | provenance | | -| Test.java:6917:59:6917:60 | in : TreeSet [] : String | Test.java:6917:10:6917:67 | transformingNavigableSet(...) : TransformedNavigableSet [] : String | provenance | MaD:448 | -| Test.java:6918:20:6918:22 | out : TransformedNavigableSet [] : String | Test.java:230:19:230:32 | it : TransformedNavigableSet [] : String | provenance | | -| Test.java:6918:20:6918:22 | out : TransformedNavigableSet [] : String | Test.java:6918:9:6918:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6923:13:6923:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6924:41:6924:42 | in : ListOrderedSet [] : String | provenance | | -| Test.java:6923:42:6923:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6923:42:6923:57 | (...)... : String | Test.java:6923:13:6923:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6923:50:6923:57 | source(...) : Object | Test.java:6923:42:6923:57 | (...)... : String | provenance | | -| Test.java:6924:10:6924:49 | transformingSet(...) : TransformedSet [] : String | Test.java:6925:20:6925:22 | out : TransformedSet [] : String | provenance | | -| Test.java:6924:41:6924:42 | in : ListOrderedSet [] : String | Test.java:6924:10:6924:49 | transformingSet(...) : TransformedSet [] : String | provenance | MaD:449 | -| Test.java:6925:20:6925:22 | out : TransformedSet [] : String | Test.java:230:19:230:32 | it : TransformedSet [] : String | provenance | | -| Test.java:6925:20:6925:22 | out : TransformedSet [] : String | Test.java:6925:9:6925:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6930:19:6930:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6931:53:6931:54 | in : TreeSet [] : String | provenance | | -| Test.java:6930:41:6930:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:6930:41:6930:56 | (...)... : String | Test.java:6930:19:6930:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:6930:49:6930:56 | source(...) : Object | Test.java:6930:41:6930:56 | (...)... : String | provenance | | -| Test.java:6931:10:6931:61 | transformingSortedSet(...) : TransformedSortedSet [] : String | Test.java:6932:20:6932:22 | out : TransformedSortedSet [] : String | provenance | | -| Test.java:6931:53:6931:54 | in : TreeSet [] : String | Test.java:6931:10:6931:61 | transformingSortedSet(...) : TransformedSortedSet [] : String | provenance | MaD:450 | -| Test.java:6932:20:6932:22 | out : TransformedSortedSet [] : String | Test.java:230:19:230:32 | it : TransformedSortedSet [] : String | provenance | | -| Test.java:6932:20:6932:22 | out : TransformedSortedSet [] : String | Test.java:6932:9:6932:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6937:22:6937:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6938:60:6938:61 | in : TreeSet [] : String | provenance | | -| Test.java:6937:44:6937:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:6937:44:6937:59 | (...)... : String | Test.java:6937:22:6937:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:6937:52:6937:59 | source(...) : Object | Test.java:6937:44:6937:59 | (...)... : String | provenance | | -| Test.java:6938:10:6938:62 | unmodifiableNavigableSet(...) : NavigableSet [] : String | Test.java:6939:20:6939:22 | out : NavigableSet [] : String | provenance | | -| Test.java:6938:60:6938:61 | in : TreeSet [] : String | Test.java:6938:10:6938:62 | unmodifiableNavigableSet(...) : NavigableSet [] : String | provenance | MaD:451 | -| Test.java:6939:20:6939:22 | out : NavigableSet [] : String | Test.java:230:19:230:32 | it : NavigableSet [] : String | provenance | | -| Test.java:6939:20:6939:22 | out : NavigableSet [] : String | Test.java:6939:9:6939:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6944:13:6944:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6945:42:6945:43 | in : ListOrderedSet [] : String | provenance | | -| Test.java:6944:42:6944:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | -| Test.java:6944:42:6944:57 | (...)... : String | Test.java:6944:13:6944:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:4 | -| Test.java:6944:50:6944:57 | source(...) : Object | Test.java:6944:42:6944:57 | (...)... : String | provenance | | -| Test.java:6945:10:6945:44 | unmodifiableSet(...) : Set [] : String | Test.java:6946:20:6946:22 | out : Set [] : String | provenance | | -| Test.java:6945:42:6945:43 | in : ListOrderedSet [] : String | Test.java:6945:10:6945:44 | unmodifiableSet(...) : Set [] : String | provenance | MaD:452 | -| Test.java:6946:20:6946:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | -| Test.java:6946:20:6946:22 | out : Set [] : String | Test.java:6946:9:6946:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6951:19:6951:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6952:54:6952:55 | in : TreeSet [] : String | provenance | | -| Test.java:6951:41:6951:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | -| Test.java:6951:41:6951:56 | (...)... : String | Test.java:6951:19:6951:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | -| Test.java:6951:49:6951:56 | source(...) : Object | Test.java:6951:41:6951:56 | (...)... : String | provenance | | -| Test.java:6952:10:6952:56 | unmodifiableSortedSet(...) : SortedSet [] : String | Test.java:6953:20:6953:22 | out : SortedSet [] : String | provenance | | -| Test.java:6952:54:6952:55 | in : TreeSet [] : String | Test.java:6952:10:6952:56 | unmodifiableSortedSet(...) : SortedSet [] : String | provenance | MaD:453 | -| Test.java:6953:20:6953:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | -| Test.java:6953:20:6953:22 | out : SortedSet [] : String | Test.java:6953:9:6953:23 | getElement(...) | provenance | MaD:3 | -| Test.java:6958:13:6958:42 | of(...) : Map [] : String | Test.java:6959:46:6959:47 | in : Map [] : String | provenance | | -| Test.java:6958:20:6958:35 | (...)... : String | Test.java:6958:13:6958:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6958:28:6958:35 | source(...) : Object | Test.java:6958:20:6958:35 | (...)... : String | provenance | | -| Test.java:6959:10:6959:48 | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | Test.java:6960:26:6960:28 | out : AbstractIterableGetMapDecorator [] : String | provenance | | -| Test.java:6959:46:6959:47 | in : Map [] : String | Test.java:6959:10:6959:48 | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | provenance | MaD:454 | -| Test.java:6960:26:6960:28 | out : AbstractIterableGetMapDecorator [] : String | Test.java:241:25:241:42 | container : AbstractIterableGetMapDecorator [] : String | provenance | | -| Test.java:6960:26:6960:28 | out : AbstractIterableGetMapDecorator [] : String | Test.java:6960:9:6960:29 | getMapKeyFromGet(...) | provenance | MaD:559 | -| Test.java:6965:13:6965:42 | of(...) : Map [] : String | Test.java:6966:46:6966:47 | in : Map [] : String | provenance | | -| Test.java:6965:26:6965:41 | (...)... : String | Test.java:6965:13:6965:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6965:34:6965:41 | source(...) : Object | Test.java:6965:26:6965:41 | (...)... : String | provenance | | -| Test.java:6966:10:6966:48 | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | Test.java:6967:28:6967:30 | out : AbstractIterableGetMapDecorator [] : String | provenance | | -| Test.java:6966:46:6966:47 | in : Map [] : String | Test.java:6966:10:6966:48 | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | provenance | MaD:455 | -| Test.java:6967:28:6967:30 | out : AbstractIterableGetMapDecorator [] : String | Test.java:248:27:248:44 | container : AbstractIterableGetMapDecorator [] : String | provenance | | -| Test.java:6967:28:6967:30 | out : AbstractIterableGetMapDecorator [] : String | Test.java:6967:9:6967:31 | getMapValueFromGet(...) | provenance | MaD:558 | -| Test.java:6972:13:6972:42 | of(...) : Map [] : String | Test.java:6973:46:6973:47 | in : Map [] : String | provenance | | -| Test.java:6972:20:6972:35 | (...)... : String | Test.java:6972:13:6972:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6972:28:6972:35 | source(...) : Object | Test.java:6972:20:6972:35 | (...)... : String | provenance | | -| Test.java:6973:10:6973:60 | transformingMap(...) : TransformedSplitMap [] : String | Test.java:6974:26:6974:28 | out : TransformedSplitMap [] : String | provenance | | -| Test.java:6973:46:6973:47 | in : Map [] : String | Test.java:6973:10:6973:60 | transformingMap(...) : TransformedSplitMap [] : String | provenance | MaD:456 | -| Test.java:6974:26:6974:28 | out : TransformedSplitMap [] : String | Test.java:241:25:241:42 | container : TransformedSplitMap [] : String | provenance | | -| Test.java:6974:26:6974:28 | out : TransformedSplitMap [] : String | Test.java:6974:9:6974:29 | getMapKeyFromGet(...) | provenance | MaD:559 | -| Test.java:6979:13:6979:42 | of(...) : Map [] : String | Test.java:6980:46:6980:47 | in : Map [] : String | provenance | | -| Test.java:6979:26:6979:41 | (...)... : String | Test.java:6979:13:6979:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6979:34:6979:41 | source(...) : Object | Test.java:6979:26:6979:41 | (...)... : String | provenance | | -| Test.java:6980:10:6980:60 | transformingMap(...) : TransformedSplitMap [] : String | Test.java:6981:28:6981:30 | out : TransformedSplitMap [] : String | provenance | | -| Test.java:6980:46:6980:47 | in : Map [] : String | Test.java:6980:10:6980:60 | transformingMap(...) : TransformedSplitMap [] : String | provenance | MaD:457 | -| Test.java:6981:28:6981:30 | out : TransformedSplitMap [] : String | Test.java:248:27:248:44 | container : TransformedSplitMap [] : String | provenance | | -| Test.java:6981:28:6981:30 | out : TransformedSplitMap [] : String | Test.java:6981:9:6981:31 | getMapValueFromGet(...) | provenance | MaD:558 | -| Test.java:6986:13:6986:42 | of(...) : Map [] : String | Test.java:6987:27:6987:28 | in : Map [] : String | provenance | | -| Test.java:6986:20:6986:35 | (...)... : String | Test.java:6986:13:6986:42 | of(...) : Map [] : String | provenance | MaD:13 | -| Test.java:6986:28:6986:35 | source(...) : Object | Test.java:6986:20:6986:35 | (...)... : String | provenance | | -| Test.java:6987:10:6987:29 | new PatriciaTrie<>(...) : PatriciaTrie [] : String | Test.java:6988:19:6988:21 | out : PatriciaTrie [] : String | provenance | | -| Test.java:6987:27:6987:28 | in : Map [] : String | Test.java:6987:10:6987:29 | new PatriciaTrie<>(...) : PatriciaTrie [] : String | provenance | MaD:462 | -| Test.java:6988:19:6988:21 | out : PatriciaTrie [] : String | Test.java:228:18:228:29 | map : PatriciaTrie [] : String | provenance | | -| Test.java:6988:19:6988:21 | out : PatriciaTrie [] : String | Test.java:6988:9:6988:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:6993:13:6993:42 | of(...) : Map [] : String | Test.java:6994:27:6994:28 | in : Map [] : String | provenance | | -| Test.java:6993:26:6993:41 | (...)... : String | Test.java:6993:13:6993:42 | of(...) : Map [] : String | provenance | MaD:14 | -| Test.java:6993:34:6993:41 | source(...) : Object | Test.java:6993:26:6993:41 | (...)... : String | provenance | | -| Test.java:6994:10:6994:29 | new PatriciaTrie<>(...) : PatriciaTrie [] : String | Test.java:6995:21:6995:23 | out : PatriciaTrie [] : String | provenance | | -| Test.java:6994:27:6994:28 | in : Map [] : String | Test.java:6994:10:6994:29 | new PatriciaTrie<>(...) : PatriciaTrie [] : String | provenance | MaD:463 | -| Test.java:6995:21:6995:23 | out : PatriciaTrie [] : String | Test.java:232:20:232:31 | map : PatriciaTrie [] : String | provenance | | -| Test.java:6995:21:6995:23 | out : PatriciaTrie [] : String | Test.java:6995:9:6995:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:6999:30:6999:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | Test.java:7001:10:7001:11 | in : PatriciaTrie [] : String | provenance | | -| Test.java:6999:56:6999:71 | (...)... : String | Test.java:288:49:288:58 | key : String | provenance | | -| Test.java:6999:56:6999:71 | (...)... : String | Test.java:6999:30:6999:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:19 | -| Test.java:6999:56:6999:71 | (...)... : String | Test.java:6999:30:6999:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:779 | -| Test.java:6999:64:6999:71 | source(...) : Object | Test.java:6999:56:6999:71 | (...)... : String | provenance | | -| Test.java:7001:10:7001:11 | in : PatriciaTrie [] : String | Test.java:7001:10:7001:24 | select(...) : Entry [] : String | provenance | MaD:458 | -| Test.java:7001:10:7001:24 | select(...) : Entry [] : String | Test.java:7002:28:7002:30 | out : Entry [] : String | provenance | | -| Test.java:7002:28:7002:30 | out : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | -| Test.java:7002:28:7002:30 | out : Entry [] : String | Test.java:7002:9:7002:31 | getMapKeyFromEntry(...) | provenance | MaD:9 | -| Test.java:7006:30:7006:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:7008:10:7008:11 | in : PatriciaTrie [] : String | provenance | | -| Test.java:7006:58:7006:73 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | -| Test.java:7006:58:7006:73 | (...)... : String | Test.java:7006:30:7006:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:20 | -| Test.java:7006:58:7006:73 | (...)... : String | Test.java:7006:30:7006:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:780 | -| Test.java:7006:66:7006:73 | source(...) : Object | Test.java:7006:58:7006:73 | (...)... : String | provenance | | -| Test.java:7008:10:7008:11 | in : PatriciaTrie [] : String | Test.java:7008:10:7008:24 | select(...) : Entry [] : String | provenance | MaD:459 | -| Test.java:7008:10:7008:24 | select(...) : Entry [] : String | Test.java:7009:30:7009:32 | out : Entry [] : String | provenance | | -| Test.java:7009:30:7009:32 | out : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | -| Test.java:7009:30:7009:32 | out : Entry [] : String | Test.java:7009:9:7009:33 | getMapValueFromEntry(...) | provenance | MaD:10 | -| Test.java:7013:30:7013:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | Test.java:7015:10:7015:11 | in : PatriciaTrie [] : String | provenance | | -| Test.java:7013:56:7013:71 | (...)... : String | Test.java:288:49:288:58 | key : String | provenance | | -| Test.java:7013:56:7013:71 | (...)... : String | Test.java:7013:30:7013:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:19 | -| Test.java:7013:56:7013:71 | (...)... : String | Test.java:7013:30:7013:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:779 | -| Test.java:7013:64:7013:71 | source(...) : Object | Test.java:7013:56:7013:71 | (...)... : String | provenance | | -| Test.java:7015:10:7015:11 | in : PatriciaTrie [] : String | Test.java:7015:10:7015:27 | selectKey(...) : String | provenance | MaD:460 | -| Test.java:7015:10:7015:27 | selectKey(...) : String | Test.java:7016:9:7016:11 | out | provenance | | -| Test.java:7020:30:7020:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:7022:10:7022:11 | in : PatriciaTrie [] : String | provenance | | -| Test.java:7020:58:7020:73 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | -| Test.java:7020:58:7020:73 | (...)... : String | Test.java:7020:30:7020:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:20 | -| Test.java:7020:58:7020:73 | (...)... : String | Test.java:7020:30:7020:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:780 | -| Test.java:7020:66:7020:73 | source(...) : Object | Test.java:7020:58:7020:73 | (...)... : String | provenance | | -| Test.java:7022:10:7022:11 | in : PatriciaTrie [] : String | Test.java:7022:10:7022:29 | selectValue(...) : String | provenance | MaD:461 | -| Test.java:7022:10:7022:29 | selectValue(...) : String | Test.java:7023:9:7023:11 | out | provenance | | -| Test.java:7028:14:7028:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | Test.java:7029:44:7029:45 | in : PatriciaTrie [] : String | provenance | | -| Test.java:7028:40:7028:55 | (...)... : String | Test.java:288:49:288:58 | key : String | provenance | | -| Test.java:7028:40:7028:55 | (...)... : String | Test.java:7028:14:7028:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:19 | -| Test.java:7028:40:7028:55 | (...)... : String | Test.java:7028:14:7028:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:779 | -| Test.java:7028:48:7028:55 | source(...) : Object | Test.java:7028:40:7028:55 | (...)... : String | provenance | | -| Test.java:7029:10:7029:46 | unmodifiableTrie(...) : Trie [] : String | Test.java:7030:19:7030:21 | out : Trie [] : String | provenance | | -| Test.java:7029:44:7029:45 | in : PatriciaTrie [] : String | Test.java:7029:10:7029:46 | unmodifiableTrie(...) : Trie [] : String | provenance | MaD:464 | -| Test.java:7030:19:7030:21 | out : Trie [] : String | Test.java:228:18:228:29 | map : Trie [] : String | provenance | | -| Test.java:7030:19:7030:21 | out : Trie [] : String | Test.java:7030:9:7030:22 | getMapKey(...) | provenance | MaD:18 | -| Test.java:7035:14:7035:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:7036:44:7036:45 | in : PatriciaTrie [] : String | provenance | | -| Test.java:7035:42:7035:57 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | -| Test.java:7035:42:7035:57 | (...)... : String | Test.java:7035:14:7035:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:20 | -| Test.java:7035:42:7035:57 | (...)... : String | Test.java:7035:14:7035:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:780 | -| Test.java:7035:50:7035:57 | source(...) : Object | Test.java:7035:42:7035:57 | (...)... : String | provenance | | -| Test.java:7036:10:7036:46 | unmodifiableTrie(...) : Trie [] : String | Test.java:7037:21:7037:23 | out : Trie [] : String | provenance | | -| Test.java:7036:44:7036:45 | in : PatriciaTrie [] : String | Test.java:7036:10:7036:46 | unmodifiableTrie(...) : Trie [] : String | provenance | MaD:465 | -| Test.java:7037:21:7037:23 | out : Trie [] : String | Test.java:232:20:232:31 | map : Trie [] : String | provenance | | -| Test.java:7037:21:7037:23 | out : Trie [] : String | Test.java:7037:9:7037:24 | getMapValue(...) | provenance | MaD:17 | -| Test.java:7043:22:7043:26 | key : Object | Test.java:7044:10:7044:12 | key : Object | provenance | | -| Test.java:7043:22:7043:26 | key : String | Test.java:7044:10:7044:12 | key : String | provenance | | -| Test.java:7043:29:7043:35 | value : Object | Test.java:7044:15:7044:19 | value : Object | provenance | | -| Test.java:7043:29:7043:35 | value : String | Test.java:7044:15:7044:19 | value : String | provenance | | -| Test.java:7044:4:7044:21 | this [post update] : MyAbstractKeyValue [] : Object | Test.java:7043:3:7043:20 | parameter this [Return] : MyAbstractKeyValue [] : Object | provenance | | -| Test.java:7044:4:7044:21 | this [post update] : MyAbstractKeyValue [] : String | Test.java:7043:3:7043:20 | parameter this [Return] : MyAbstractKeyValue [] : String | provenance | | -| Test.java:7044:4:7044:21 | this [post update] : MyAbstractKeyValue [] : Object | Test.java:7043:3:7043:20 | parameter this [Return] : MyAbstractKeyValue [] : Object | provenance | | -| Test.java:7044:4:7044:21 | this [post update] : MyAbstractKeyValue [] : String | Test.java:7043:3:7043:20 | parameter this [Return] : MyAbstractKeyValue [] : String | provenance | | -| Test.java:7044:10:7044:12 | key : Object | Test.java:7044:4:7044:21 | this [post update] : MyAbstractKeyValue [] : Object | provenance | MaD:191 | -| Test.java:7044:10:7044:12 | key : String | Test.java:7044:4:7044:21 | this [post update] : MyAbstractKeyValue [] : String | provenance | MaD:191 | -| Test.java:7044:15:7044:19 | value : Object | Test.java:7044:4:7044:21 | this [post update] : MyAbstractKeyValue [] : Object | provenance | MaD:192 | -| Test.java:7044:15:7044:19 | value : String | Test.java:7044:4:7044:21 | this [post update] : MyAbstractKeyValue [] : String | provenance | MaD:192 | -| Test.java:7047:5:7047:12 | parameter this : MyAbstractKeyValue [] : String | Test.java:7048:11:7048:15 | super : MyAbstractKeyValue [] : String | provenance | | -| Test.java:7047:14:7047:24 | key : Object | Test.java:7048:24:7048:26 | key : Object | provenance | | -| Test.java:7048:11:7048:15 | super : MyAbstractKeyValue [] : String | Test.java:7048:11:7048:27 | setKey(...) : String | provenance | MaD:194 | -| Test.java:7048:11:7048:15 | super [post update] : MyAbstractKeyValue [] : Object | Test.java:7047:5:7047:12 | parameter this [Return] : MyAbstractKeyValue [] : Object | provenance | | -| Test.java:7048:24:7048:26 | key : Object | Test.java:7048:11:7048:15 | super [post update] : MyAbstractKeyValue [] : Object | provenance | MaD:193 | -| Test.java:7051:5:7051:14 | parameter this : MyAbstractKeyValue [] : String | Test.java:7052:11:7052:15 | super : MyAbstractKeyValue [] : String | provenance | | -| Test.java:7051:16:7051:28 | value : Object | Test.java:7052:26:7052:30 | value : Object | provenance | | -| Test.java:7052:11:7052:15 | super : MyAbstractKeyValue [] : String | Test.java:7052:11:7052:31 | setValue(...) : String | provenance | MaD:196 | -| Test.java:7052:11:7052:15 | super [post update] : MyAbstractKeyValue [] : Object | Test.java:7051:5:7051:14 | parameter this [Return] : MyAbstractKeyValue [] : Object | provenance | | -| Test.java:7052:26:7052:30 | value : Object | Test.java:7052:11:7052:15 | super [post update] : MyAbstractKeyValue [] : Object | provenance | MaD:195 | -| Test.java:7057:22:7057:32 | key : Object | Test.java:7058:10:7058:12 | key : Object | provenance | | -| Test.java:7057:22:7057:32 | key : String | Test.java:7058:10:7058:12 | key : String | provenance | | -| Test.java:7057:35:7057:47 | value : Object | Test.java:7058:15:7058:19 | value : Object | provenance | | -| Test.java:7057:35:7057:47 | value : String | Test.java:7058:15:7058:19 | value : String | provenance | | -| Test.java:7058:4:7058:21 | this [post update] : MyAbstractMapEntry [] : Object | Test.java:7057:3:7057:20 | parameter this [Return] : MyAbstractMapEntry [] : Object | provenance | | -| Test.java:7058:4:7058:21 | this [post update] : MyAbstractMapEntry [] : String | Test.java:7057:3:7057:20 | parameter this [Return] : MyAbstractMapEntry [] : String | provenance | | -| Test.java:7058:4:7058:21 | this [post update] : MyAbstractMapEntry [] : Object | Test.java:7057:3:7057:20 | parameter this [Return] : MyAbstractMapEntry [] : Object | provenance | | -| Test.java:7058:4:7058:21 | this [post update] : MyAbstractMapEntry [] : String | Test.java:7057:3:7057:20 | parameter this [Return] : MyAbstractMapEntry [] : String | provenance | | -| Test.java:7058:10:7058:12 | key : Object | Test.java:7058:4:7058:21 | this [post update] : MyAbstractMapEntry [] : Object | provenance | MaD:197 | -| Test.java:7058:10:7058:12 | key : String | Test.java:7058:4:7058:21 | this [post update] : MyAbstractMapEntry [] : String | provenance | MaD:197 | -| Test.java:7058:15:7058:19 | value : Object | Test.java:7058:4:7058:21 | this [post update] : MyAbstractMapEntry [] : Object | provenance | MaD:198 | -| Test.java:7058:15:7058:19 | value : String | Test.java:7058:4:7058:21 | this [post update] : MyAbstractMapEntry [] : String | provenance | MaD:198 | -| Test.java:7067:31:7067:57 | entry : MyAbstractMapEntry [] : String | Test.java:7068:10:7068:14 | entry : MyAbstractMapEntry [] : String | provenance | | -| Test.java:7067:31:7067:57 | entry : MyAbstractMapEntry [] : String | Test.java:7068:10:7068:14 | entry : MyAbstractMapEntry [] : String | provenance | | -| Test.java:7068:4:7068:16 | this [post update] : MyAbstractMapEntryDecorator [] : String | Test.java:7067:3:7067:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | provenance | | -| Test.java:7068:4:7068:16 | this [post update] : MyAbstractMapEntryDecorator [] : String | Test.java:7067:3:7067:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | provenance | | -| Test.java:7068:10:7068:14 | entry : MyAbstractMapEntry [] : String | Test.java:7068:4:7068:16 | this [post update] : MyAbstractMapEntryDecorator [] : String | provenance | MaD:199 | -| Test.java:7068:10:7068:14 | entry : MyAbstractMapEntry [] : String | Test.java:7068:4:7068:16 | this [post update] : MyAbstractMapEntryDecorator [] : String | provenance | MaD:200 | -| Test.java:7071:19:7071:31 | parameter this : MyAbstractMapEntryDecorator [] : String | Test.java:7072:11:7072:15 | super : MyAbstractMapEntryDecorator [] : String | provenance | | -| Test.java:7071:19:7071:31 | parameter this : MyAbstractMapEntryDecorator [] : String | Test.java:7072:11:7072:15 | super : MyAbstractMapEntryDecorator [] : String | provenance | | -| Test.java:7072:11:7072:15 | super : MyAbstractMapEntryDecorator [] : String | Test.java:7072:11:7072:29 | getMapEntry(...) : Entry [] : String | provenance | MaD:201 | -| Test.java:7072:11:7072:15 | super : MyAbstractMapEntryDecorator [] : String | Test.java:7072:11:7072:29 | getMapEntry(...) : Entry [] : String | provenance | MaD:202 | -| Test.java:7082:15:7082:30 | parameter this : MySetView [] : String | Test.java:7082:43:7082:58 | this <.method> : MySetView [] : String | provenance | | -| Test.java:7082:43:7082:58 | this <.method> : MySetView [] : String | Test.java:7082:43:7082:58 | createIterator(...) : Iterator [] : String | provenance | MaD:789 | -| Test.java:7086:43:7086:71 | map : DualTreeBidiMap [] : String | Test.java:7087:10:7087:12 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:7086:43:7086:71 | map : DualTreeBidiMap [] : String | Test.java:7087:10:7087:12 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:7087:4:7087:14 | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | Test.java:7086:10:7086:41 | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | provenance | | -| Test.java:7087:4:7087:14 | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | Test.java:7086:10:7086:41 | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | provenance | | -| Test.java:7087:10:7087:12 | map : DualTreeBidiMap [] : String | Test.java:7087:4:7087:14 | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | provenance | MaD:54 | -| Test.java:7087:10:7087:12 | map : DualTreeBidiMap [] : String | Test.java:7087:4:7087:14 | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | provenance | MaD:55 | -| Test.java:7092:40:7092:65 | map : ListOrderedMap [] : String | Test.java:7093:10:7093:12 | map : ListOrderedMap [] : String | provenance | | -| Test.java:7092:40:7092:65 | map : ListOrderedMap [] : String | Test.java:7093:10:7093:12 | map : ListOrderedMap [] : String | provenance | | -| Test.java:7093:4:7093:14 | this [post update] : MyAbstractOrderedMapDecorator [] : String | Test.java:7092:10:7092:38 | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | provenance | | -| Test.java:7093:4:7093:14 | this [post update] : MyAbstractOrderedMapDecorator [] : String | Test.java:7092:10:7092:38 | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | provenance | | -| Test.java:7093:10:7093:12 | map : ListOrderedMap [] : String | Test.java:7093:4:7093:14 | this [post update] : MyAbstractOrderedMapDecorator [] : String | provenance | MaD:273 | -| Test.java:7093:10:7093:12 | map : ListOrderedMap [] : String | Test.java:7093:4:7093:14 | this [post update] : MyAbstractOrderedMapDecorator [] : String | provenance | MaD:274 | -| Test.java:7098:39:7098:63 | map : TreeMap [] : String | Test.java:7099:10:7099:12 | map : TreeMap [] : String | provenance | | -| Test.java:7098:39:7098:63 | map : TreeMap [] : String | Test.java:7099:10:7099:12 | map : TreeMap [] : String | provenance | | -| Test.java:7099:4:7099:14 | this [post update] : MyAbstractSortedMapDecorator [] : String | Test.java:7098:10:7098:37 | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | provenance | | -| Test.java:7099:4:7099:14 | this [post update] : MyAbstractSortedMapDecorator [] : String | Test.java:7098:10:7098:37 | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | provenance | | -| Test.java:7099:10:7099:12 | map : TreeMap [] : String | Test.java:7099:4:7099:14 | this [post update] : MyAbstractSortedMapDecorator [] : String | provenance | MaD:275 | -| Test.java:7099:10:7099:12 | map : TreeMap [] : String | Test.java:7099:4:7099:14 | this [post update] : MyAbstractSortedMapDecorator [] : String | provenance | MaD:276 | -| Test.java:7104:33:7104:48 | bag : TreeBag [] : String | Test.java:7105:10:7105:12 | bag : TreeBag [] : String | provenance | | -| Test.java:7105:4:7105:14 | this [post update] : MyAbstractBagDecorator [] : String | Test.java:7104:10:7104:31 | parameter this [Return] : MyAbstractBagDecorator [] : String | provenance | | -| Test.java:7105:10:7105:12 | bag : TreeBag [] : String | Test.java:7105:4:7105:14 | this [post update] : MyAbstractBagDecorator [] : String | provenance | MaD:26 | -| Test.java:7110:27:7110:58 | map : Map [] : String | Test.java:7111:10:7111:12 | map : Map [] : String | provenance | | -| Test.java:7111:4:7111:14 | this [post update] : MyAbstractMapBag [] : String | Test.java:7110:10:7110:25 | parameter this [Return] : MyAbstractMapBag [] : String | provenance | | -| Test.java:7111:10:7111:12 | map : Map [] : String | Test.java:7111:4:7111:14 | this [post update] : MyAbstractMapBag [] : String | provenance | MaD:27 | -| Test.java:7113:33:7113:40 | parameter this : MyAbstractMapBag [] : String | Test.java:7114:11:7114:15 | super : MyAbstractMapBag [] : String | provenance | | -| Test.java:7114:11:7114:15 | super : MyAbstractMapBag [] : String | Test.java:7114:11:7114:24 | getMap(...) : Map [] : String | provenance | MaD:28 | -| Test.java:7119:39:7119:60 | bag : TreeBag [] : String | Test.java:7120:10:7120:12 | bag : TreeBag [] : String | provenance | | -| Test.java:7120:4:7120:14 | this [post update] : MyAbstractSortedBagDecorator [] : String | Test.java:7119:10:7119:37 | parameter this [Return] : MyAbstractSortedBagDecorator [] : String | provenance | | -| Test.java:7120:10:7120:12 | bag : TreeBag [] : String | Test.java:7120:4:7120:14 | this [post update] : MyAbstractSortedBagDecorator [] : String | provenance | MaD:29 | -| Test.java:7125:37:7125:59 | map : DualTreeBidiMap [] : String | Test.java:7126:10:7126:12 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:7125:37:7125:59 | map : DualTreeBidiMap [] : String | Test.java:7126:10:7126:12 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:7126:4:7126:14 | this [post update] : MyAbstractBidiMapDecorator [] : String | Test.java:7125:10:7125:35 | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | provenance | | -| Test.java:7126:4:7126:14 | this [post update] : MyAbstractBidiMapDecorator [] : String | Test.java:7125:10:7125:35 | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | provenance | | -| Test.java:7126:10:7126:12 | map : DualTreeBidiMap [] : String | Test.java:7126:4:7126:14 | this [post update] : MyAbstractBidiMapDecorator [] : String | provenance | MaD:44 | -| Test.java:7126:10:7126:12 | map : DualTreeBidiMap [] : String | Test.java:7126:4:7126:14 | this [post update] : MyAbstractBidiMapDecorator [] : String | provenance | MaD:45 | -| Test.java:7134:32:7134:56 | normalMap : DualTreeBidiMap [] : String | Test.java:7135:10:7135:18 | normalMap : DualTreeBidiMap [] : String | provenance | | -| Test.java:7134:32:7134:56 | normalMap : DualTreeBidiMap [] : String | Test.java:7135:10:7135:18 | normalMap : DualTreeBidiMap [] : String | provenance | | -| Test.java:7134:59:7134:84 | reverseMap : DualTreeBidiMap [] : String | Test.java:7135:21:7135:30 | reverseMap : DualTreeBidiMap [] : String | provenance | | -| Test.java:7134:59:7134:84 | reverseMap : DualTreeBidiMap [] : String | Test.java:7135:21:7135:30 | reverseMap : DualTreeBidiMap [] : String | provenance | | -| Test.java:7134:87:7134:120 | inverseBidiMap : DualTreeBidiMap [] : String | Test.java:7135:33:7135:46 | inverseBidiMap : DualTreeBidiMap [] : String | provenance | | -| Test.java:7134:87:7134:120 | inverseBidiMap : DualTreeBidiMap [] : String | Test.java:7135:33:7135:46 | inverseBidiMap : DualTreeBidiMap [] : String | provenance | | -| Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | provenance | | -| Test.java:7135:10:7135:18 | normalMap : DualTreeBidiMap [] : String | Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | provenance | MaD:46 | -| Test.java:7135:10:7135:18 | normalMap : DualTreeBidiMap [] : String | Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | provenance | MaD:47 | -| Test.java:7135:21:7135:30 | reverseMap : DualTreeBidiMap [] : String | Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | provenance | MaD:48 | -| Test.java:7135:21:7135:30 | reverseMap : DualTreeBidiMap [] : String | Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | provenance | MaD:49 | -| Test.java:7135:33:7135:46 | inverseBidiMap : DualTreeBidiMap [] : String | Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | provenance | MaD:50 | -| Test.java:7135:33:7135:46 | inverseBidiMap : DualTreeBidiMap [] : String | Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | provenance | MaD:51 | -| Test.java:7143:44:7143:73 | map : DualTreeBidiMap [] : String | Test.java:7144:10:7144:12 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:7143:44:7143:73 | map : DualTreeBidiMap [] : String | Test.java:7144:10:7144:12 | map : DualTreeBidiMap [] : String | provenance | | -| Test.java:7144:4:7144:14 | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:7143:10:7143:42 | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | provenance | | -| Test.java:7144:4:7144:14 | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:7143:10:7143:42 | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | provenance | | -| Test.java:7144:10:7144:12 | map : DualTreeBidiMap [] : String | Test.java:7144:4:7144:14 | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | provenance | MaD:52 | -| Test.java:7144:10:7144:12 | map : DualTreeBidiMap [] : String | Test.java:7144:4:7144:14 | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | provenance | MaD:53 | -| Test.java:7149:40:7149:63 | coll : TreeBag [] : String | Test.java:7150:10:7150:13 | coll : TreeBag [] : String | provenance | | -| Test.java:7150:4:7150:15 | this [post update] : MyAbstractCollectionDecorator [] : String | Test.java:7149:10:7149:38 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | provenance | | -| Test.java:7150:10:7150:13 | coll : TreeBag [] : String | Test.java:7150:4:7150:15 | this [post update] : MyAbstractCollectionDecorator [] : String | provenance | MaD:76 | -| Test.java:7152:24:7152:34 | parameter this : MyAbstractCollectionDecorator [] : String | Test.java:7153:11:7153:15 | super : MyAbstractCollectionDecorator [] : String | provenance | | -| Test.java:7153:11:7153:15 | super : MyAbstractCollectionDecorator [] : String | Test.java:7153:11:7153:27 | decorated(...) : Collection [] : String | provenance | MaD:77 | -| Test.java:7155:31:7155:54 | coll : TreeBag [] : String | Test.java:7156:24:7156:27 | coll : TreeBag [] : String | provenance | | -| Test.java:7156:4:7156:8 | super [post update] : MyAbstractCollectionDecorator [] : String | Test.java:7155:15:7155:29 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | provenance | | -| Test.java:7156:24:7156:27 | coll : TreeBag [] : String | Test.java:7156:4:7156:8 | super [post update] : MyAbstractCollectionDecorator [] : String | provenance | MaD:78 | -| Test.java:7161:38:7161:63 | iterator : ListIterator [] : String | Test.java:7162:10:7162:17 | iterator : ListIterator [] : String | provenance | | -| Test.java:7162:4:7162:19 | this [post update] : MyAbstractIteratorDecorator [] : String | Test.java:7161:10:7161:36 | parameter this [Return] : MyAbstractIteratorDecorator [] : String | provenance | | -| Test.java:7162:10:7162:17 | iterator : ListIterator [] : String | Test.java:7162:4:7162:19 | this [post update] : MyAbstractIteratorDecorator [] : String | provenance | MaD:116 | -| Test.java:7167:42:7167:71 | iterator : ListIterator [] : String | Test.java:7168:10:7168:17 | iterator : ListIterator [] : String | provenance | | -| Test.java:7168:4:7168:19 | this [post update] : MyAbstractListIteratorDecorator [] : String | Test.java:7167:10:7167:40 | parameter this [Return] : MyAbstractListIteratorDecorator [] : String | provenance | | -| Test.java:7168:10:7168:17 | iterator : ListIterator [] : String | Test.java:7168:4:7168:19 | this [post update] : MyAbstractListIteratorDecorator [] : String | provenance | MaD:117 | -| Test.java:7170:26:7170:42 | parameter this : MyAbstractListIteratorDecorator [] : String | Test.java:7171:11:7171:15 | super : MyAbstractListIteratorDecorator [] : String | provenance | | -| Test.java:7171:11:7171:15 | super : MyAbstractListIteratorDecorator [] : String | Test.java:7171:11:7171:33 | getListIterator(...) : ListIterator [] : String | provenance | MaD:118 | -| Test.java:7176:41:7176:72 | iterator : OrderedMapIterator [] : String | Test.java:7177:10:7177:17 | iterator : OrderedMapIterator [] : String | provenance | | -| Test.java:7176:41:7176:72 | iterator : OrderedMapIterator [] : String | Test.java:7177:10:7177:17 | iterator : OrderedMapIterator [] : String | provenance | | -| Test.java:7177:4:7177:19 | this [post update] : MyAbstractMapIteratorDecorator [] : String | Test.java:7176:10:7176:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | provenance | | -| Test.java:7177:4:7177:19 | this [post update] : MyAbstractMapIteratorDecorator [] : String | Test.java:7176:10:7176:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | provenance | | -| Test.java:7177:10:7177:17 | iterator : OrderedMapIterator [] : String | Test.java:7177:4:7177:19 | this [post update] : MyAbstractMapIteratorDecorator [] : String | provenance | MaD:119 | -| Test.java:7177:10:7177:17 | iterator : OrderedMapIterator [] : String | Test.java:7177:4:7177:19 | this [post update] : MyAbstractMapIteratorDecorator [] : String | provenance | MaD:120 | -| Test.java:7179:28:7179:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | Test.java:7180:11:7180:15 | super : MyAbstractMapIteratorDecorator [] : String | provenance | | -| Test.java:7179:28:7179:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | Test.java:7180:11:7180:15 | super : MyAbstractMapIteratorDecorator [] : String | provenance | | -| Test.java:7180:11:7180:15 | super : MyAbstractMapIteratorDecorator [] : String | Test.java:7180:11:7180:32 | getMapIterator(...) : MapIterator [] : String | provenance | MaD:121 | -| Test.java:7180:11:7180:15 | super : MyAbstractMapIteratorDecorator [] : String | Test.java:7180:11:7180:32 | getMapIterator(...) : MapIterator [] : String | provenance | MaD:122 | -| Test.java:7185:48:7185:86 | iterator : OrderedMapIterator [] : String | Test.java:7186:10:7186:17 | iterator : OrderedMapIterator [] : String | provenance | | -| Test.java:7185:48:7185:86 | iterator : OrderedMapIterator [] : String | Test.java:7186:10:7186:17 | iterator : OrderedMapIterator [] : String | provenance | | -| Test.java:7186:4:7186:19 | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7185:10:7185:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | -| Test.java:7186:4:7186:19 | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7185:10:7185:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | -| Test.java:7186:10:7186:17 | iterator : OrderedMapIterator [] : String | Test.java:7186:4:7186:19 | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | MaD:123 | -| Test.java:7186:10:7186:17 | iterator : OrderedMapIterator [] : String | Test.java:7186:4:7186:19 | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | MaD:124 | -| Test.java:7188:35:7188:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7189:11:7189:15 | super : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | -| Test.java:7188:35:7188:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7189:11:7189:15 | super : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | -| Test.java:7189:11:7189:15 | super : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7189:11:7189:39 | getOrderedMapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:125 | -| Test.java:7189:11:7189:15 | super : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7189:11:7189:39 | getOrderedMapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:126 | -| Test.java:7194:45:7194:70 | iterator : ListIterator [] : String | Test.java:7195:10:7195:17 | iterator : ListIterator [] : String | provenance | | -| Test.java:7195:4:7195:19 | this [post update] : MyAbstractUntypedIteratorDecorator [] : String | Test.java:7194:10:7194:43 | parameter this [Return] : MyAbstractUntypedIteratorDecorator [] : String | provenance | | -| Test.java:7195:10:7195:17 | iterator : ListIterator [] : String | Test.java:7195:4:7195:19 | this [post update] : MyAbstractUntypedIteratorDecorator [] : String | provenance | MaD:127 | -| Test.java:7197:22:7197:34 | parameter this : MyAbstractUntypedIteratorDecorator [] : String | Test.java:7198:11:7198:15 | super : MyAbstractUntypedIteratorDecorator [] : String | provenance | | -| Test.java:7198:11:7198:15 | super : MyAbstractUntypedIteratorDecorator [] : String | Test.java:7198:11:7198:29 | getIterator(...) : Iterator [] : String | provenance | MaD:128 | -| Test.java:7204:31:7204:64 | coll : TreeBag [] : String | Test.java:7205:10:7205:13 | coll : TreeBag [] : String | provenance | | -| Test.java:7205:4:7205:15 | this [post update] : MyAbstractLinkedList [] : String | Test.java:7204:10:7204:29 | parameter this [Return] : MyAbstractLinkedList [] : String | provenance | | -| Test.java:7205:10:7205:13 | coll : TreeBag [] : String | Test.java:7205:4:7205:15 | this [post update] : MyAbstractLinkedList [] : String | provenance | MaD:243 | -| Test.java:7210:34:7210:51 | list : List [] : String | Test.java:7211:10:7211:13 | list : List [] : String | provenance | | -| Test.java:7211:4:7211:15 | this [post update] : MyAbstractListDecorator [] : String | Test.java:7210:10:7210:32 | parameter this [Return] : MyAbstractListDecorator [] : String | provenance | | -| Test.java:7211:10:7211:13 | list : List [] : String | Test.java:7211:4:7211:15 | this [post update] : MyAbstractListDecorator [] : String | provenance | MaD:250 | -| Test.java:7216:46:7216:63 | list : List [] : String | Test.java:7217:10:7217:13 | list : List [] : String | provenance | | -| Test.java:7217:4:7217:15 | this [post update] : MyAbstractSerializableListDecorator [] : String | Test.java:7216:10:7216:44 | parameter this [Return] : MyAbstractSerializableListDecorator [] : String | provenance | | -| Test.java:7217:10:7217:13 | list : List [] : String | Test.java:7217:4:7217:15 | this [post update] : MyAbstractSerializableListDecorator [] : String | provenance | MaD:251 | +| Test.java:3429:4:3429:6 | out [post update] : MultiMap [, ] : Object | Test.java:3430:47:3430:49 | out : MultiMap [, ] : Object | provenance | | +| Test.java:3429:18:3429:19 | in : Object | Test.java:3429:4:3429:6 | out [post update] : MultiMap [, ] : Object | provenance | MaD:741 | +| Test.java:3430:22:3430:50 | (...)... : Collection [] : Object | Test.java:3431:9:3431:12 | coll : Collection [] : Object | provenance | | +| Test.java:3430:35:3430:50 | getMapValue(...) : Object [] : Object | Test.java:3430:22:3430:50 | (...)... : Collection [] : Object | provenance | | +| Test.java:3430:47:3430:49 | out : MultiMap [, ] : Object | Test.java:232:20:232:31 | map : MultiMap [, ] : Object | provenance | | +| Test.java:3430:47:3430:49 | out : MultiMap [, ] : Object | Test.java:3430:35:3430:50 | getMapValue(...) : Object [] : Object | provenance | MaD:18 | +| Test.java:3431:9:3431:12 | coll : Collection [] : Object | Test.java:3431:9:3431:22 | toArray(...) : Object[] [[]] : Object | provenance | MaD:5 | +| Test.java:3431:9:3431:22 | toArray(...) : Object[] [[]] : Object | Test.java:3431:9:3431:25 | ...[...] | provenance | | +| Test.java:3436:16:3436:23 | source(...) : Object | Test.java:3437:18:3437:19 | in : Object | provenance | | +| Test.java:3437:4:3437:6 | out [post update] : BidiMap [] : Object | Test.java:3438:21:3438:23 | out : BidiMap [] : Object | provenance | | +| Test.java:3437:18:3437:19 | in : Object | Test.java:3437:4:3437:6 | out [post update] : BidiMap [] : Object | provenance | MaD:21 | +| Test.java:3437:18:3437:19 | in : Object | Test.java:3437:4:3437:6 | out [post update] : BidiMap [] : Object | provenance | MaD:784 | +| Test.java:3438:21:3438:23 | out : BidiMap [] : Object | Test.java:232:20:232:31 | map : BidiMap [] : Object | provenance | | +| Test.java:3438:21:3438:23 | out : BidiMap [] : Object | Test.java:3438:9:3438:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3443:16:3443:23 | source(...) : Object | Test.java:3444:18:3444:19 | in : Object | provenance | | +| Test.java:3444:4:3444:6 | out [post update] : AbstractMapDecorator [] : Object | Test.java:3445:21:3445:23 | out : AbstractMapDecorator [] : Object | provenance | | +| Test.java:3444:18:3444:19 | in : Object | Test.java:3444:4:3444:6 | out [post update] : AbstractMapDecorator [] : Object | provenance | MaD:21 | +| Test.java:3444:18:3444:19 | in : Object | Test.java:3444:4:3444:6 | out [post update] : AbstractMapDecorator [] : Object | provenance | MaD:784 | +| Test.java:3445:21:3445:23 | out : AbstractMapDecorator [] : Object | Test.java:232:20:232:31 | map : AbstractMapDecorator [] : Object | provenance | | +| Test.java:3445:21:3445:23 | out : AbstractMapDecorator [] : Object | Test.java:3445:9:3445:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3450:13:3450:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | Test.java:3451:10:3451:11 | in : HashedMap [] : String | provenance | | +| Test.java:3450:38:3450:53 | (...)... : String | Test.java:293:51:293:57 | value : String | provenance | | +| Test.java:3450:38:3450:53 | (...)... : String | Test.java:3450:13:3450:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:21 | +| Test.java:3450:38:3450:53 | (...)... : String | Test.java:3450:13:3450:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:784 | +| Test.java:3450:46:3450:53 | source(...) : Object | Test.java:3450:38:3450:53 | (...)... : String | provenance | | +| Test.java:3451:10:3451:11 | in : HashedMap [] : String | Test.java:3451:10:3451:27 | put(...) : String | provenance | MaD:785 | +| Test.java:3451:10:3451:27 | put(...) : String | Test.java:3452:9:3452:11 | out | provenance | | +| Test.java:3457:23:3457:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:3458:10:3458:11 | in : MultiValueMap [] : String | provenance | | +| Test.java:3457:42:3457:57 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | +| Test.java:3457:42:3457:57 | (...)... : String | Test.java:3457:23:3457:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:3457:42:3457:57 | (...)... : String | Test.java:3457:23:3457:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | +| Test.java:3457:50:3457:57 | source(...) : Object | Test.java:3457:42:3457:57 | (...)... : String | provenance | | +| Test.java:3458:10:3458:11 | in : MultiValueMap [] : String | Test.java:3458:10:3458:27 | put(...) : String | provenance | MaD:22 | +| Test.java:3458:10:3458:11 | in : MultiValueMap [] : String | Test.java:3458:10:3458:27 | put(...) : String | provenance | MaD:785 | +| Test.java:3458:10:3458:27 | put(...) : String | Test.java:3459:9:3459:11 | out | provenance | | +| Test.java:3464:17:3464:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | Test.java:3465:10:3465:11 | in : TreeBidiMap [] : String | provenance | | +| Test.java:3464:44:3464:59 | (...)... : String | Test.java:306:77:306:83 | value : String | provenance | | +| Test.java:3464:44:3464:59 | (...)... : String | Test.java:3464:17:3464:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:21 | +| Test.java:3464:44:3464:59 | (...)... : String | Test.java:3464:17:3464:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | provenance | MaD:784 | +| Test.java:3464:52:3464:59 | source(...) : Object | Test.java:3464:44:3464:59 | (...)... : String | provenance | | +| Test.java:3465:10:3465:11 | in : TreeBidiMap [] : String | Test.java:3465:10:3465:27 | put(...) : String | provenance | MaD:22 | +| Test.java:3465:10:3465:11 | in : TreeBidiMap [] : String | Test.java:3465:10:3465:27 | put(...) : String | provenance | MaD:785 | +| Test.java:3465:10:3465:27 | put(...) : String | Test.java:3466:9:3466:11 | out | provenance | | +| Test.java:3471:30:3471:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:3472:10:3472:11 | in : MultiValueMap [] : String | provenance | | +| Test.java:3471:49:3471:64 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | +| Test.java:3471:49:3471:64 | (...)... : String | Test.java:3471:30:3471:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:3471:49:3471:64 | (...)... : String | Test.java:3471:30:3471:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | +| Test.java:3471:57:3471:64 | source(...) : Object | Test.java:3471:49:3471:64 | (...)... : String | provenance | | +| Test.java:3472:10:3472:11 | in : MultiValueMap [] : String | Test.java:3472:10:3472:27 | put(...) : String | provenance | MaD:22 | +| Test.java:3472:10:3472:11 | in : MultiValueMap [] : String | Test.java:3472:10:3472:27 | put(...) : String | provenance | MaD:785 | +| Test.java:3472:10:3472:27 | put(...) : String | Test.java:3473:9:3473:11 | out | provenance | | +| Test.java:3478:13:3478:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:3479:15:3479:16 | in : TreeMap [] : String | provenance | | +| Test.java:3478:34:3478:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | +| Test.java:3478:34:3478:49 | (...)... : String | Test.java:3478:13:3478:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:3478:42:3478:49 | source(...) : Object | Test.java:3478:34:3478:49 | (...)... : String | provenance | | +| Test.java:3479:4:3479:6 | out [post update] : Put [] : String | Test.java:3480:26:3480:28 | out : Put [] : String | provenance | | +| Test.java:3479:15:3479:16 | in : TreeMap [] : String | Test.java:3479:4:3479:6 | out [post update] : Put [] : String | provenance | MaD:786 | +| Test.java:3480:26:3480:28 | out : Put [] : String | Test.java:242:27:242:44 | container : Put [] : String | provenance | | +| Test.java:3480:26:3480:28 | out : Put [] : String | Test.java:3480:9:3480:29 | getMapKeyFromPut(...) | provenance | MaD:19 | +| Test.java:3485:13:3485:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:3486:15:3486:16 | in : TreeMap [] : String | provenance | | +| Test.java:3485:34:3485:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | +| Test.java:3485:34:3485:49 | (...)... : String | Test.java:3485:13:3485:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:3485:42:3485:49 | source(...) : Object | Test.java:3485:34:3485:49 | (...)... : String | provenance | | +| Test.java:3486:4:3486:6 | out [post update] : MultiValueMap [] : String | Test.java:3487:19:3487:21 | out : MultiValueMap [] : String | provenance | | +| Test.java:3486:15:3486:16 | in : TreeMap [] : String | Test.java:3486:4:3486:6 | out [post update] : MultiValueMap [] : String | provenance | MaD:356 | +| Test.java:3487:19:3487:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | provenance | | +| Test.java:3487:19:3487:21 | out : MultiValueMap [] : String | Test.java:3487:9:3487:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3492:13:3492:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:3493:15:3493:16 | in : TreeMap [] : String | provenance | | +| Test.java:3492:34:3492:49 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | +| Test.java:3492:34:3492:49 | (...)... : String | Test.java:3492:13:3492:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:3492:42:3492:49 | source(...) : Object | Test.java:3492:34:3492:49 | (...)... : String | provenance | | +| Test.java:3493:4:3493:6 | out [post update] : AbstractMapDecorator [] : String | Test.java:3494:19:3494:21 | out : AbstractMapDecorator [] : String | provenance | | +| Test.java:3493:15:3493:16 | in : TreeMap [] : String | Test.java:3493:4:3493:6 | out [post update] : AbstractMapDecorator [] : String | provenance | MaD:23 | +| Test.java:3493:15:3493:16 | in : TreeMap [] : String | Test.java:3493:4:3493:6 | out [post update] : AbstractMapDecorator [] : String | provenance | MaD:786 | +| Test.java:3494:19:3494:21 | out : AbstractMapDecorator [] : String | Test.java:228:18:228:29 | map : AbstractMapDecorator [] : String | provenance | | +| Test.java:3494:19:3494:21 | out : AbstractMapDecorator [] : String | Test.java:3494:9:3494:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3499:13:3499:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:3500:15:3500:16 | in : TreeMap [] : String | provenance | | +| Test.java:3499:36:3499:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | +| Test.java:3499:36:3499:51 | (...)... : String | Test.java:3499:13:3499:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | +| Test.java:3499:44:3499:51 | source(...) : Object | Test.java:3499:36:3499:51 | (...)... : String | provenance | | +| Test.java:3500:4:3500:6 | out [post update] : Put [] : String | Test.java:3501:28:3501:30 | out : Put [] : String | provenance | | +| Test.java:3500:15:3500:16 | in : TreeMap [] : String | Test.java:3500:4:3500:6 | out [post update] : Put [] : String | provenance | MaD:787 | +| Test.java:3501:28:3501:30 | out : Put [] : String | Test.java:249:29:249:46 | container : Put [] : String | provenance | | +| Test.java:3501:28:3501:30 | out : Put [] : String | Test.java:3501:9:3501:31 | getMapValueFromPut(...) | provenance | MaD:18 | +| Test.java:3506:13:3506:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:3507:15:3507:16 | in : TreeMap [] : String | provenance | | +| Test.java:3506:36:3506:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | +| Test.java:3506:36:3506:51 | (...)... : String | Test.java:3506:13:3506:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | +| Test.java:3506:44:3506:51 | source(...) : Object | Test.java:3506:36:3506:51 | (...)... : String | provenance | | +| Test.java:3507:4:3507:6 | out [post update] : MultiValueMap [] : String | Test.java:3508:21:3508:23 | out : MultiValueMap [] : String | provenance | | +| Test.java:3507:15:3507:16 | in : TreeMap [] : String | Test.java:3507:4:3507:6 | out [post update] : MultiValueMap [] : String | provenance | MaD:359 | +| Test.java:3508:21:3508:23 | out : MultiValueMap [] : String | Test.java:232:20:232:31 | map : MultiValueMap [] : String | provenance | | +| Test.java:3508:21:3508:23 | out : MultiValueMap [] : String | Test.java:3508:9:3508:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3513:13:3513:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:3514:15:3514:16 | in : TreeMap [] : String | provenance | | +| Test.java:3513:36:3513:51 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | +| Test.java:3513:36:3513:51 | (...)... : String | Test.java:3513:13:3513:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | +| Test.java:3513:44:3513:51 | source(...) : Object | Test.java:3513:36:3513:51 | (...)... : String | provenance | | +| Test.java:3514:4:3514:6 | out [post update] : AbstractMapDecorator [] : String | Test.java:3515:21:3515:23 | out : AbstractMapDecorator [] : String | provenance | | +| Test.java:3514:15:3514:16 | in : TreeMap [] : String | Test.java:3514:4:3514:6 | out [post update] : AbstractMapDecorator [] : String | provenance | MaD:24 | +| Test.java:3514:15:3514:16 | in : TreeMap [] : String | Test.java:3514:4:3514:6 | out [post update] : AbstractMapDecorator [] : String | provenance | MaD:787 | +| Test.java:3515:21:3515:23 | out : AbstractMapDecorator [] : String | Test.java:232:20:232:31 | map : AbstractMapDecorator [] : String | provenance | | +| Test.java:3515:21:3515:23 | out : AbstractMapDecorator [] : String | Test.java:3515:9:3515:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3520:15:3520:51 | newQueueWithElement(...) : LinkedList [] : String | Test.java:3521:37:3521:38 | in : LinkedList [] : String | provenance | | +| Test.java:3520:35:3520:50 | (...)... : String | Test.java:265:35:265:43 | element : String | provenance | | +| Test.java:3520:35:3520:50 | (...)... : String | Test.java:3520:15:3520:51 | newQueueWithElement(...) : LinkedList [] : String | provenance | MaD:4 | +| Test.java:3520:43:3520:50 | source(...) : Object | Test.java:3520:35:3520:50 | (...)... : String | provenance | | +| Test.java:3521:10:3521:45 | predicatedQueue(...) : Queue [] : String | Test.java:3522:20:3522:22 | out : Queue [] : String | provenance | | +| Test.java:3521:37:3521:38 | in : LinkedList [] : String | Test.java:3521:10:3521:45 | predicatedQueue(...) : Queue [] : String | provenance | MaD:788 | +| Test.java:3522:20:3522:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | +| Test.java:3522:20:3522:22 | out : Queue [] : String | Test.java:3522:9:3522:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3527:15:3527:51 | newQueueWithElement(...) : LinkedList [] : String | Test.java:3528:39:3528:40 | in : LinkedList [] : String | provenance | | +| Test.java:3527:35:3527:50 | (...)... : String | Test.java:265:35:265:43 | element : String | provenance | | +| Test.java:3527:35:3527:50 | (...)... : String | Test.java:3527:15:3527:51 | newQueueWithElement(...) : LinkedList [] : String | provenance | MaD:4 | +| Test.java:3527:43:3527:50 | source(...) : Object | Test.java:3527:35:3527:50 | (...)... : String | provenance | | +| Test.java:3528:10:3528:41 | synchronizedQueue(...) : Queue [] : String | Test.java:3529:20:3529:22 | out : Queue [] : String | provenance | | +| Test.java:3528:39:3528:40 | in : LinkedList [] : String | Test.java:3528:10:3528:41 | synchronizedQueue(...) : Queue [] : String | provenance | MaD:789 | +| Test.java:3529:20:3529:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | +| Test.java:3529:20:3529:22 | out : Queue [] : String | Test.java:3529:9:3529:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3534:15:3534:51 | newQueueWithElement(...) : LinkedList [] : String | Test.java:3535:39:3535:40 | in : LinkedList [] : String | provenance | | +| Test.java:3534:35:3534:50 | (...)... : String | Test.java:265:35:265:43 | element : String | provenance | | +| Test.java:3534:35:3534:50 | (...)... : String | Test.java:3534:15:3534:51 | newQueueWithElement(...) : LinkedList [] : String | provenance | MaD:4 | +| Test.java:3534:43:3534:50 | source(...) : Object | Test.java:3534:35:3534:50 | (...)... : String | provenance | | +| Test.java:3535:10:3535:47 | transformingQueue(...) : Queue [] : String | Test.java:3536:20:3536:22 | out : Queue [] : String | provenance | | +| Test.java:3535:39:3535:40 | in : LinkedList [] : String | Test.java:3535:10:3535:47 | transformingQueue(...) : Queue [] : String | provenance | MaD:790 | +| Test.java:3536:20:3536:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | +| Test.java:3536:20:3536:22 | out : Queue [] : String | Test.java:3536:9:3536:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3541:15:3541:51 | newQueueWithElement(...) : LinkedList [] : String | Test.java:3542:39:3542:40 | in : LinkedList [] : String | provenance | | +| Test.java:3541:35:3541:50 | (...)... : String | Test.java:265:35:265:43 | element : String | provenance | | +| Test.java:3541:35:3541:50 | (...)... : String | Test.java:3541:15:3541:51 | newQueueWithElement(...) : LinkedList [] : String | provenance | MaD:4 | +| Test.java:3541:43:3541:50 | source(...) : Object | Test.java:3541:35:3541:50 | (...)... : String | provenance | | +| Test.java:3542:10:3542:41 | unmodifiableQueue(...) : Queue [] : String | Test.java:3543:20:3543:22 | out : Queue [] : String | provenance | | +| Test.java:3542:39:3542:40 | in : LinkedList [] : String | Test.java:3542:10:3542:41 | unmodifiableQueue(...) : Queue [] : String | provenance | MaD:791 | +| Test.java:3543:20:3543:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | +| Test.java:3543:20:3543:22 | out : Queue [] : String | Test.java:3543:9:3543:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3548:26:3548:64 | newSetViewWithElement(...) : MySetView [] : String | Test.java:3549:4:3549:5 | in : MySetView [] : String | provenance | | +| Test.java:3548:48:3548:63 | (...)... : String | Test.java:266:41:266:49 | element : String | provenance | | +| Test.java:3548:48:3548:63 | (...)... : String | Test.java:3548:26:3548:64 | newSetViewWithElement(...) : MySetView [] : String | provenance | MaD:4 | +| Test.java:3548:56:3548:63 | source(...) : Object | Test.java:3548:48:3548:63 | (...)... : String | provenance | | +| Test.java:3549:4:3549:5 | in : MySetView [] : String | Test.java:3549:16:3549:18 | out [post update] : Set [] : String | provenance | MaD:792 | +| Test.java:3549:16:3549:18 | out [post update] : Set [] : String | Test.java:3550:20:3550:22 | out : Set [] : String | provenance | | +| Test.java:3550:20:3550:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:3550:20:3550:22 | out : Set [] : String | Test.java:3550:9:3550:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3555:19:3555:57 | newSetViewWithElement(...) : MySetView [] : String | Test.java:3556:10:3556:11 | in : MySetView [] : String | provenance | | +| Test.java:3555:41:3555:56 | (...)... : String | Test.java:266:41:266:49 | element : String | provenance | | +| Test.java:3555:41:3555:56 | (...)... : String | Test.java:3555:19:3555:57 | newSetViewWithElement(...) : MySetView [] : String | provenance | MaD:4 | +| Test.java:3555:49:3555:56 | source(...) : Object | Test.java:3555:41:3555:56 | (...)... : String | provenance | | +| Test.java:3556:10:3556:11 | in : MySetView [] : String | Test.java:3556:10:3556:30 | myCreateIterator(...) : Iterator [] : String | provenance | MaD:793 | +| Test.java:3556:10:3556:11 | in : MySetView [] : String | Test.java:7076:15:7076:30 | parameter this : MySetView [] : String | provenance | | +| Test.java:3556:10:3556:30 | myCreateIterator(...) : Iterator [] : String | Test.java:3557:20:3557:22 | out : Iterator [] : String | provenance | | +| Test.java:3557:20:3557:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | +| Test.java:3557:20:3557:22 | out : Iterator [] : String | Test.java:3557:9:3557:23 | getElement(...) | provenance | MaD:7 | +| Test.java:3562:19:3562:57 | newSetViewWithElement(...) : MySetView [] : String | Test.java:3563:10:3563:11 | in : MySetView [] : String | provenance | | +| Test.java:3562:41:3562:56 | (...)... : String | Test.java:266:41:266:49 | element : String | provenance | | +| Test.java:3562:41:3562:56 | (...)... : String | Test.java:3562:19:3562:57 | newSetViewWithElement(...) : MySetView [] : String | provenance | MaD:4 | +| Test.java:3562:49:3562:56 | source(...) : Object | Test.java:3562:41:3562:56 | (...)... : String | provenance | | +| Test.java:3563:10:3563:11 | in : MySetView [] : String | Test.java:3563:10:3563:19 | toSet(...) : Set [] : String | provenance | MaD:794 | +| Test.java:3563:10:3563:19 | toSet(...) : Set [] : String | Test.java:3564:20:3564:22 | out : Set [] : String | provenance | | +| Test.java:3564:20:3564:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:3564:20:3564:22 | out : Set [] : String | Test.java:3564:9:3564:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3569:13:3569:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3570:30:3570:31 | in : TreeSet [] : String | provenance | | +| Test.java:3569:35:3569:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3569:35:3569:50 | (...)... : String | Test.java:3569:13:3569:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3569:43:3569:50 | source(...) : Object | Test.java:3569:35:3569:50 | (...)... : String | provenance | | +| Test.java:3570:10:3570:38 | difference(...) : SetView [] : String | Test.java:3571:20:3571:22 | out : SetView [] : String | provenance | | +| Test.java:3570:30:3570:31 | in : TreeSet [] : String | Test.java:3570:10:3570:38 | difference(...) : SetView [] : String | provenance | MaD:795 | +| Test.java:3571:20:3571:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | +| Test.java:3571:20:3571:22 | out : SetView [] : String | Test.java:3571:9:3571:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3576:13:3576:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3577:31:3577:32 | in : TreeSet [] : String | provenance | | +| Test.java:3576:35:3576:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3576:35:3576:50 | (...)... : String | Test.java:3576:13:3576:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3576:43:3576:50 | source(...) : Object | Test.java:3576:35:3576:50 | (...)... : String | provenance | | +| Test.java:3577:10:3577:39 | disjunction(...) : SetView [] : String | Test.java:3578:20:3578:22 | out : SetView [] : String | provenance | | +| Test.java:3577:31:3577:32 | in : TreeSet [] : String | Test.java:3577:10:3577:39 | disjunction(...) : SetView [] : String | provenance | MaD:796 | +| Test.java:3578:20:3578:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | +| Test.java:3578:20:3578:22 | out : SetView [] : String | Test.java:3578:9:3578:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3583:13:3583:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3584:37:3584:38 | in : TreeSet [] : String | provenance | | +| Test.java:3583:35:3583:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3583:35:3583:50 | (...)... : String | Test.java:3583:13:3583:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3583:43:3583:50 | source(...) : Object | Test.java:3583:35:3583:50 | (...)... : String | provenance | | +| Test.java:3584:10:3584:39 | disjunction(...) : SetView [] : String | Test.java:3585:20:3585:22 | out : SetView [] : String | provenance | | +| Test.java:3584:37:3584:38 | in : TreeSet [] : String | Test.java:3584:10:3584:39 | disjunction(...) : SetView [] : String | provenance | MaD:797 | +| Test.java:3585:20:3585:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | +| Test.java:3585:20:3585:22 | out : SetView [] : String | Test.java:3585:9:3585:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3590:13:3590:25 | (...)... : Set | Test.java:3591:31:3591:32 | in : Set | provenance | | +| Test.java:3590:18:3590:25 | source(...) : Object | Test.java:3590:13:3590:25 | (...)... : Set | provenance | | +| Test.java:3591:10:3591:33 | emptyIfNull(...) : Set | Test.java:3592:9:3592:11 | out | provenance | | +| Test.java:3591:31:3591:32 | in : Set | Test.java:3591:10:3591:33 | emptyIfNull(...) : Set | provenance | MaD:798 | +| Test.java:3597:16:3597:23 | source(...) : Object | Test.java:3598:27:3598:28 | in : Object | provenance | | +| Test.java:3598:10:3598:35 | hashSet(...) : HashSet [] : Object | Test.java:3599:20:3599:22 | out : HashSet [] : Object | provenance | | +| Test.java:3598:10:3598:35 | new ..[] { .. } : Object[] [[]] : Object | Test.java:3598:10:3598:35 | hashSet(...) : HashSet [] : Object | provenance | MaD:799 | +| Test.java:3598:27:3598:28 | in : Object | Test.java:3598:10:3598:35 | new ..[] { .. } : Object[] [[]] : Object | provenance | | +| Test.java:3599:20:3599:22 | out : HashSet [] : Object | Test.java:230:19:230:32 | it : HashSet [] : Object | provenance | | +| Test.java:3599:20:3599:22 | out : HashSet [] : Object | Test.java:3599:9:3599:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3604:13:3604:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3605:32:3605:33 | in : TreeSet [] : String | provenance | | +| Test.java:3604:35:3604:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3604:35:3604:50 | (...)... : String | Test.java:3604:13:3604:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3604:43:3604:50 | source(...) : Object | Test.java:3604:35:3604:50 | (...)... : String | provenance | | +| Test.java:3605:10:3605:40 | intersection(...) : SetView [] : String | Test.java:3606:20:3606:22 | out : SetView [] : String | provenance | | +| Test.java:3605:32:3605:33 | in : TreeSet [] : String | Test.java:3605:10:3605:40 | intersection(...) : SetView [] : String | provenance | MaD:800 | +| Test.java:3606:20:3606:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | +| Test.java:3606:20:3606:22 | out : SetView [] : String | Test.java:3606:9:3606:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3611:13:3611:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3612:38:3612:39 | in : TreeSet [] : String | provenance | | +| Test.java:3611:35:3611:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3611:35:3611:50 | (...)... : String | Test.java:3611:13:3611:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3611:43:3611:50 | source(...) : Object | Test.java:3611:35:3611:50 | (...)... : String | provenance | | +| Test.java:3612:10:3612:40 | intersection(...) : SetView [] : String | Test.java:3613:20:3613:22 | out : SetView [] : String | provenance | | +| Test.java:3612:38:3612:39 | in : TreeSet [] : String | Test.java:3612:10:3612:40 | intersection(...) : SetView [] : String | provenance | MaD:801 | +| Test.java:3613:20:3613:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | +| Test.java:3613:20:3613:22 | out : SetView [] : String | Test.java:3613:9:3613:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3618:13:3618:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3619:30:3619:31 | in : TreeSet [] : String | provenance | | +| Test.java:3618:35:3618:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3618:35:3618:50 | (...)... : String | Test.java:3618:13:3618:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3618:43:3618:50 | source(...) : Object | Test.java:3618:35:3618:50 | (...)... : String | provenance | | +| Test.java:3619:10:3619:32 | orderedSet(...) : Set [] : String | Test.java:3620:20:3620:22 | out : Set [] : String | provenance | | +| Test.java:3619:30:3619:31 | in : TreeSet [] : String | Test.java:3619:10:3619:32 | orderedSet(...) : Set [] : String | provenance | MaD:802 | +| Test.java:3620:20:3620:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:3620:20:3620:22 | out : Set [] : String | Test.java:3620:9:3620:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3625:22:3625:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3626:42:3626:43 | in : TreeSet [] : String | provenance | | +| Test.java:3625:44:3625:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3625:44:3625:59 | (...)... : String | Test.java:3625:22:3625:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3625:52:3625:59 | source(...) : Object | Test.java:3625:44:3625:59 | (...)... : String | provenance | | +| Test.java:3626:10:3626:50 | predicatedNavigableSet(...) : SortedSet [] : String | Test.java:3627:20:3627:22 | out : SortedSet [] : String | provenance | | +| Test.java:3626:42:3626:43 | in : TreeSet [] : String | Test.java:3626:10:3626:50 | predicatedNavigableSet(...) : SortedSet [] : String | provenance | MaD:803 | +| Test.java:3627:20:3627:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | +| Test.java:3627:20:3627:22 | out : SortedSet [] : String | Test.java:3627:9:3627:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3632:13:3632:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3633:33:3633:34 | in : TreeSet [] : String | provenance | | +| Test.java:3632:35:3632:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3632:35:3632:50 | (...)... : String | Test.java:3632:13:3632:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3632:43:3632:50 | source(...) : Object | Test.java:3632:35:3632:50 | (...)... : String | provenance | | +| Test.java:3633:10:3633:41 | predicatedSet(...) : Set [] : String | Test.java:3634:20:3634:22 | out : Set [] : String | provenance | | +| Test.java:3633:33:3633:34 | in : TreeSet [] : String | Test.java:3633:10:3633:41 | predicatedSet(...) : Set [] : String | provenance | MaD:804 | +| Test.java:3634:20:3634:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:3634:20:3634:22 | out : Set [] : String | Test.java:3634:9:3634:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3639:19:3639:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3640:39:3640:40 | in : TreeSet [] : String | provenance | | +| Test.java:3639:41:3639:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3639:41:3639:56 | (...)... : String | Test.java:3639:19:3639:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3639:49:3639:56 | source(...) : Object | Test.java:3639:41:3639:56 | (...)... : String | provenance | | +| Test.java:3640:10:3640:47 | predicatedSortedSet(...) : SortedSet [] : String | Test.java:3641:20:3641:22 | out : SortedSet [] : String | provenance | | +| Test.java:3640:39:3640:40 | in : TreeSet [] : String | Test.java:3640:10:3640:47 | predicatedSortedSet(...) : SortedSet [] : String | provenance | MaD:805 | +| Test.java:3641:20:3641:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | +| Test.java:3641:20:3641:22 | out : SortedSet [] : String | Test.java:3641:9:3641:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3646:13:3646:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3647:35:3647:36 | in : TreeSet [] : String | provenance | | +| Test.java:3646:35:3646:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3646:35:3646:50 | (...)... : String | Test.java:3646:13:3646:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3646:43:3646:50 | source(...) : Object | Test.java:3646:35:3646:50 | (...)... : String | provenance | | +| Test.java:3647:10:3647:37 | synchronizedSet(...) : Set [] : String | Test.java:3648:20:3648:22 | out : Set [] : String | provenance | | +| Test.java:3647:35:3647:36 | in : TreeSet [] : String | Test.java:3647:10:3647:37 | synchronizedSet(...) : Set [] : String | provenance | MaD:806 | +| Test.java:3648:20:3648:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:3648:20:3648:22 | out : Set [] : String | Test.java:3648:9:3648:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3653:19:3653:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3654:41:3654:42 | in : TreeSet [] : String | provenance | | +| Test.java:3653:41:3653:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3653:41:3653:56 | (...)... : String | Test.java:3653:19:3653:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3653:49:3653:56 | source(...) : Object | Test.java:3653:41:3653:56 | (...)... : String | provenance | | +| Test.java:3654:10:3654:43 | synchronizedSortedSet(...) : SortedSet [] : String | Test.java:3655:20:3655:22 | out : SortedSet [] : String | provenance | | +| Test.java:3654:41:3654:42 | in : TreeSet [] : String | Test.java:3654:10:3654:43 | synchronizedSortedSet(...) : SortedSet [] : String | provenance | MaD:807 | +| Test.java:3655:20:3655:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | +| Test.java:3655:20:3655:22 | out : SortedSet [] : String | Test.java:3655:9:3655:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3660:22:3660:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3661:43:3661:44 | in : TreeSet [] : String | provenance | | +| Test.java:3660:44:3660:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3660:44:3660:59 | (...)... : String | Test.java:3660:22:3660:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3660:52:3660:59 | source(...) : Object | Test.java:3660:44:3660:59 | (...)... : String | provenance | | +| Test.java:3661:10:3661:51 | transformedNavigableSet(...) : SortedSet [] : String | Test.java:3662:20:3662:22 | out : SortedSet [] : String | provenance | | +| Test.java:3661:43:3661:44 | in : TreeSet [] : String | Test.java:3661:10:3661:51 | transformedNavigableSet(...) : SortedSet [] : String | provenance | MaD:808 | +| Test.java:3662:20:3662:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | +| Test.java:3662:20:3662:22 | out : SortedSet [] : String | Test.java:3662:9:3662:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3667:13:3667:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3668:34:3668:35 | in : TreeSet [] : String | provenance | | +| Test.java:3667:35:3667:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3667:35:3667:50 | (...)... : String | Test.java:3667:13:3667:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3667:43:3667:50 | source(...) : Object | Test.java:3667:35:3667:50 | (...)... : String | provenance | | +| Test.java:3668:10:3668:42 | transformedSet(...) : Set [] : String | Test.java:3669:20:3669:22 | out : Set [] : String | provenance | | +| Test.java:3668:34:3668:35 | in : TreeSet [] : String | Test.java:3668:10:3668:42 | transformedSet(...) : Set [] : String | provenance | MaD:809 | +| Test.java:3669:20:3669:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:3669:20:3669:22 | out : Set [] : String | Test.java:3669:9:3669:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3674:19:3674:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3675:40:3675:41 | in : TreeSet [] : String | provenance | | +| Test.java:3674:41:3674:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3674:41:3674:56 | (...)... : String | Test.java:3674:19:3674:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3674:49:3674:56 | source(...) : Object | Test.java:3674:41:3674:56 | (...)... : String | provenance | | +| Test.java:3675:10:3675:48 | transformedSortedSet(...) : SortedSet [] : String | Test.java:3676:20:3676:22 | out : SortedSet [] : String | provenance | | +| Test.java:3675:40:3675:41 | in : TreeSet [] : String | Test.java:3675:10:3675:48 | transformedSortedSet(...) : SortedSet [] : String | provenance | MaD:810 | +| Test.java:3676:20:3676:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | +| Test.java:3676:20:3676:22 | out : SortedSet [] : String | Test.java:3676:9:3676:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3681:13:3681:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3682:25:3682:26 | in : TreeSet [] : String | provenance | | +| Test.java:3681:35:3681:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3681:35:3681:50 | (...)... : String | Test.java:3681:13:3681:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3681:43:3681:50 | source(...) : Object | Test.java:3681:35:3681:50 | (...)... : String | provenance | | +| Test.java:3682:10:3682:33 | union(...) : SetView [] : String | Test.java:3683:20:3683:22 | out : SetView [] : String | provenance | | +| Test.java:3682:25:3682:26 | in : TreeSet [] : String | Test.java:3682:10:3682:33 | union(...) : SetView [] : String | provenance | MaD:811 | +| Test.java:3683:20:3683:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | +| Test.java:3683:20:3683:22 | out : SetView [] : String | Test.java:3683:9:3683:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3688:13:3688:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3689:31:3689:32 | in : TreeSet [] : String | provenance | | +| Test.java:3688:35:3688:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3688:35:3688:50 | (...)... : String | Test.java:3688:13:3688:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3688:43:3688:50 | source(...) : Object | Test.java:3688:35:3688:50 | (...)... : String | provenance | | +| Test.java:3689:10:3689:33 | union(...) : SetView [] : String | Test.java:3690:20:3690:22 | out : SetView [] : String | provenance | | +| Test.java:3689:31:3689:32 | in : TreeSet [] : String | Test.java:3689:10:3689:33 | union(...) : SetView [] : String | provenance | MaD:812 | +| Test.java:3690:20:3690:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | provenance | | +| Test.java:3690:20:3690:22 | out : SetView [] : String | Test.java:3690:9:3690:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3695:22:3695:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3696:44:3696:45 | in : TreeSet [] : String | provenance | | +| Test.java:3695:44:3695:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3695:44:3695:59 | (...)... : String | Test.java:3695:22:3695:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3695:52:3695:59 | source(...) : Object | Test.java:3695:44:3695:59 | (...)... : String | provenance | | +| Test.java:3696:10:3696:46 | unmodifiableNavigableSet(...) : SortedSet [] : String | Test.java:3697:20:3697:22 | out : SortedSet [] : String | provenance | | +| Test.java:3696:44:3696:45 | in : TreeSet [] : String | Test.java:3696:10:3696:46 | unmodifiableNavigableSet(...) : SortedSet [] : String | provenance | MaD:813 | +| Test.java:3697:20:3697:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | +| Test.java:3697:20:3697:22 | out : SortedSet [] : String | Test.java:3697:9:3697:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3702:16:3702:23 | source(...) : Object | Test.java:3703:35:3703:36 | in : Object | provenance | | +| Test.java:3703:10:3703:43 | new ..[] { .. } : Object[] [[]] : Object | Test.java:3703:10:3703:43 | unmodifiableSet(...) : Set [] : Object | provenance | MaD:814 | +| Test.java:3703:10:3703:43 | unmodifiableSet(...) : Set [] : Object | Test.java:3704:20:3704:22 | out : Set [] : Object | provenance | | +| Test.java:3703:35:3703:36 | in : Object | Test.java:3703:10:3703:43 | new ..[] { .. } : Object[] [[]] : Object | provenance | | +| Test.java:3704:20:3704:22 | out : Set [] : Object | Test.java:230:19:230:32 | it : Set [] : Object | provenance | | +| Test.java:3704:20:3704:22 | out : Set [] : Object | Test.java:3704:9:3704:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3709:13:3709:51 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3710:35:3710:36 | in : TreeSet [] : String | provenance | | +| Test.java:3709:35:3709:50 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3709:35:3709:50 | (...)... : String | Test.java:3709:13:3709:51 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3709:43:3709:50 | source(...) : Object | Test.java:3709:35:3709:50 | (...)... : String | provenance | | +| Test.java:3710:10:3710:37 | unmodifiableSet(...) : Set [] : String | Test.java:3711:20:3711:22 | out : Set [] : String | provenance | | +| Test.java:3710:35:3710:36 | in : TreeSet [] : String | Test.java:3710:10:3710:37 | unmodifiableSet(...) : Set [] : String | provenance | MaD:815 | +| Test.java:3711:20:3711:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:3711:20:3711:22 | out : Set [] : String | Test.java:3711:9:3711:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3716:19:3716:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:3717:41:3717:42 | in : TreeSet [] : String | provenance | | +| Test.java:3716:41:3716:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:3716:41:3716:56 | (...)... : String | Test.java:3716:19:3716:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:3716:49:3716:56 | source(...) : Object | Test.java:3716:41:3716:56 | (...)... : String | provenance | | +| Test.java:3717:10:3717:43 | unmodifiableSortedSet(...) : SortedSet [] : String | Test.java:3718:20:3718:22 | out : SortedSet [] : String | provenance | | +| Test.java:3717:41:3717:42 | in : TreeSet [] : String | Test.java:3717:10:3717:43 | unmodifiableSortedSet(...) : SortedSet [] : String | provenance | MaD:816 | +| Test.java:3718:20:3718:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | +| Test.java:3718:20:3718:22 | out : SortedSet [] : String | Test.java:3718:9:3718:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3723:19:3723:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3724:10:3724:11 | in : TreeBag [] : String | provenance | | +| Test.java:3723:41:3723:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3723:41:3723:56 | (...)... : String | Test.java:3723:19:3723:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3723:41:3723:56 | (...)... : String | Test.java:3723:19:3723:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3723:49:3723:56 | source(...) : Object | Test.java:3723:41:3723:56 | (...)... : String | provenance | | +| Test.java:3724:10:3724:11 | in : TreeBag [] : String | Test.java:3724:10:3724:19 | first(...) : String | provenance | MaD:817 | +| Test.java:3724:10:3724:19 | first(...) : String | Test.java:3725:9:3725:11 | out | provenance | | +| Test.java:3730:19:3730:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3731:10:3731:11 | in : TreeBag [] : String | provenance | | +| Test.java:3730:41:3730:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3730:41:3730:56 | (...)... : String | Test.java:3730:19:3730:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3730:41:3730:56 | (...)... : String | Test.java:3730:19:3730:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3730:49:3730:56 | source(...) : Object | Test.java:3730:41:3730:56 | (...)... : String | provenance | | +| Test.java:3731:10:3731:11 | in : TreeBag [] : String | Test.java:3731:10:3731:18 | last(...) : String | provenance | MaD:818 | +| Test.java:3731:10:3731:18 | last(...) : String | Test.java:3732:9:3732:11 | out | provenance | | +| Test.java:3737:13:3737:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | Test.java:3738:36:3738:37 | in : HashedMap [] : String | provenance | | +| Test.java:3737:36:3737:51 | (...)... : String | Test.java:275:49:275:53 | key : String | provenance | | +| Test.java:3737:36:3737:51 | (...)... : String | Test.java:3737:13:3737:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | provenance | MaD:20 | +| Test.java:3737:36:3737:51 | (...)... : String | Test.java:3737:13:3737:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | provenance | MaD:783 | +| Test.java:3737:44:3737:51 | source(...) : Object | Test.java:3737:36:3737:51 | (...)... : String | provenance | | +| Test.java:3738:10:3738:38 | readableMap(...) : IterableMap [] : String | Test.java:3739:19:3739:21 | out : IterableMap [] : String | provenance | | +| Test.java:3738:36:3738:37 | in : HashedMap [] : String | Test.java:3738:10:3738:38 | readableMap(...) : IterableMap [] : String | provenance | MaD:819 | +| Test.java:3739:19:3739:21 | out : IterableMap [] : String | Test.java:228:18:228:29 | map : IterableMap [] : String | provenance | | +| Test.java:3739:19:3739:21 | out : IterableMap [] : String | Test.java:3739:9:3739:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3744:13:3744:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | Test.java:3745:36:3745:37 | in : HashedMap [] : String | provenance | | +| Test.java:3744:38:3744:53 | (...)... : String | Test.java:293:51:293:57 | value : String | provenance | | +| Test.java:3744:38:3744:53 | (...)... : String | Test.java:3744:13:3744:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:21 | +| Test.java:3744:38:3744:53 | (...)... : String | Test.java:3744:13:3744:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:784 | +| Test.java:3744:46:3744:53 | source(...) : Object | Test.java:3744:38:3744:53 | (...)... : String | provenance | | +| Test.java:3745:10:3745:38 | readableMap(...) : IterableMap [] : String | Test.java:3746:21:3746:23 | out : IterableMap [] : String | provenance | | +| Test.java:3745:36:3745:37 | in : HashedMap [] : String | Test.java:3745:10:3745:38 | readableMap(...) : IterableMap [] : String | provenance | MaD:820 | +| Test.java:3746:21:3746:23 | out : IterableMap [] : String | Test.java:232:20:232:31 | map : IterableMap [] : String | provenance | | +| Test.java:3746:21:3746:23 | out : IterableMap [] : String | Test.java:3746:9:3746:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3751:13:3751:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | Test.java:3752:36:3752:37 | in : HashedMap [] : String | provenance | | +| Test.java:3751:36:3751:51 | (...)... : String | Test.java:275:49:275:53 | key : String | provenance | | +| Test.java:3751:36:3751:51 | (...)... : String | Test.java:3751:13:3751:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | provenance | MaD:20 | +| Test.java:3751:36:3751:51 | (...)... : String | Test.java:3751:13:3751:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | provenance | MaD:783 | +| Test.java:3751:44:3751:51 | source(...) : Object | Test.java:3751:36:3751:51 | (...)... : String | provenance | | +| Test.java:3752:10:3752:38 | writableMap(...) : Map [] : String | Test.java:3753:19:3753:21 | out : Map [] : String | provenance | | +| Test.java:3752:36:3752:37 | in : HashedMap [] : String | Test.java:3752:10:3752:38 | writableMap(...) : Map [] : String | provenance | MaD:821 | +| Test.java:3753:19:3753:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | +| Test.java:3753:19:3753:21 | out : Map [] : String | Test.java:3753:9:3753:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3758:13:3758:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | Test.java:3759:36:3759:37 | in : HashedMap [] : String | provenance | | +| Test.java:3758:38:3758:53 | (...)... : String | Test.java:293:51:293:57 | value : String | provenance | | +| Test.java:3758:38:3758:53 | (...)... : String | Test.java:3758:13:3758:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:21 | +| Test.java:3758:38:3758:53 | (...)... : String | Test.java:3758:13:3758:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | provenance | MaD:784 | +| Test.java:3758:46:3758:53 | source(...) : Object | Test.java:3758:38:3758:53 | (...)... : String | provenance | | +| Test.java:3759:10:3759:38 | writableMap(...) : Map [] : String | Test.java:3760:21:3760:23 | out : Map [] : String | provenance | | +| Test.java:3759:36:3759:37 | in : HashedMap [] : String | Test.java:3759:10:3759:38 | writableMap(...) : Map [] : String | provenance | MaD:822 | +| Test.java:3760:21:3760:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | +| Test.java:3760:21:3760:23 | out : Map [] : String | Test.java:3760:9:3760:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3765:14:3765:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | Test.java:3766:10:3766:11 | in : PatriciaTrie [] : String | provenance | | +| Test.java:3765:40:3765:55 | (...)... : String | Test.java:288:49:288:58 | key : String | provenance | | +| Test.java:3765:40:3765:55 | (...)... : String | Test.java:3765:14:3765:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:20 | +| Test.java:3765:40:3765:55 | (...)... : String | Test.java:3765:14:3765:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:783 | +| Test.java:3765:48:3765:55 | source(...) : Object | Test.java:3765:40:3765:55 | (...)... : String | provenance | | +| Test.java:3766:10:3766:11 | in : PatriciaTrie [] : String | Test.java:3766:10:3766:27 | prefixMap(...) : SortedMap [] : String | provenance | MaD:823 | +| Test.java:3766:10:3766:27 | prefixMap(...) : SortedMap [] : String | Test.java:3767:19:3767:21 | out : SortedMap [] : String | provenance | | +| Test.java:3767:19:3767:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | provenance | | +| Test.java:3767:19:3767:21 | out : SortedMap [] : String | Test.java:3767:9:3767:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3772:14:3772:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:3773:10:3773:11 | in : PatriciaTrie [] : String | provenance | | +| Test.java:3772:42:3772:57 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | +| Test.java:3772:42:3772:57 | (...)... : String | Test.java:3772:14:3772:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:21 | +| Test.java:3772:42:3772:57 | (...)... : String | Test.java:3772:14:3772:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:784 | +| Test.java:3772:50:3772:57 | source(...) : Object | Test.java:3772:42:3772:57 | (...)... : String | provenance | | +| Test.java:3773:10:3773:11 | in : PatriciaTrie [] : String | Test.java:3773:10:3773:27 | prefixMap(...) : SortedMap [] : String | provenance | MaD:824 | +| Test.java:3773:10:3773:27 | prefixMap(...) : SortedMap [] : String | Test.java:3774:21:3774:23 | out : SortedMap [] : String | provenance | | +| Test.java:3774:21:3774:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | provenance | | +| Test.java:3774:21:3774:23 | out : SortedMap [] : String | Test.java:3774:9:3774:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3779:14:3779:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | Test.java:3780:37:3780:38 | in : PatriciaTrie [] : String | provenance | | +| Test.java:3779:40:3779:55 | (...)... : String | Test.java:288:49:288:58 | key : String | provenance | | +| Test.java:3779:40:3779:55 | (...)... : String | Test.java:3779:14:3779:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:20 | +| Test.java:3779:40:3779:55 | (...)... : String | Test.java:3779:14:3779:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:783 | +| Test.java:3779:48:3779:55 | source(...) : Object | Test.java:3779:40:3779:55 | (...)... : String | provenance | | +| Test.java:3780:10:3780:39 | unmodifiableTrie(...) : Trie [] : String | Test.java:3781:19:3781:21 | out : Trie [] : String | provenance | | +| Test.java:3780:37:3780:38 | in : PatriciaTrie [] : String | Test.java:3780:10:3780:39 | unmodifiableTrie(...) : Trie [] : String | provenance | MaD:825 | +| Test.java:3781:19:3781:21 | out : Trie [] : String | Test.java:228:18:228:29 | map : Trie [] : String | provenance | | +| Test.java:3781:19:3781:21 | out : Trie [] : String | Test.java:3781:9:3781:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3786:14:3786:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:3787:37:3787:38 | in : PatriciaTrie [] : String | provenance | | +| Test.java:3786:42:3786:57 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | +| Test.java:3786:42:3786:57 | (...)... : String | Test.java:3786:14:3786:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:21 | +| Test.java:3786:42:3786:57 | (...)... : String | Test.java:3786:14:3786:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:784 | +| Test.java:3786:50:3786:57 | source(...) : Object | Test.java:3786:42:3786:57 | (...)... : String | provenance | | +| Test.java:3787:10:3787:39 | unmodifiableTrie(...) : Trie [] : String | Test.java:3788:21:3788:23 | out : Trie [] : String | provenance | | +| Test.java:3787:37:3787:38 | in : PatriciaTrie [] : String | Test.java:3787:10:3787:39 | unmodifiableTrie(...) : Trie [] : String | provenance | MaD:826 | +| Test.java:3788:21:3788:23 | out : Trie [] : String | Test.java:232:20:232:31 | map : Trie [] : String | provenance | | +| Test.java:3788:21:3788:23 | out : Trie [] : String | Test.java:3788:9:3788:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3793:13:3793:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3794:37:3794:38 | in : TreeBag [] : String | provenance | | +| Test.java:3793:35:3793:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3793:35:3793:50 | (...)... : String | Test.java:3793:13:3793:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3793:35:3793:50 | (...)... : String | Test.java:3793:13:3793:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3793:43:3793:50 | source(...) : Object | Test.java:3793:35:3793:50 | (...)... : String | provenance | | +| Test.java:3794:10:3794:39 | new MyAbstractBagDecorator<>(...) : MyAbstractBagDecorator [] : String | Test.java:3795:20:3795:22 | out : MyAbstractBagDecorator [] : String | provenance | | +| Test.java:3794:37:3794:38 | in : TreeBag [] : String | Test.java:3794:10:3794:39 | new MyAbstractBagDecorator<>(...) : MyAbstractBagDecorator [] : String | provenance | MaD:27 | +| Test.java:3794:37:3794:38 | in : TreeBag [] : String | Test.java:7098:33:7098:48 | bag : TreeBag [] : String | provenance | | +| Test.java:3795:20:3795:22 | out : MyAbstractBagDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractBagDecorator [] : String | provenance | | +| Test.java:3795:20:3795:22 | out : MyAbstractBagDecorator [] : String | Test.java:3795:9:3795:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3800:13:3800:42 | of(...) : Map [] : String | Test.java:3801:31:3801:32 | in : Map [] : String | provenance | | +| Test.java:3800:20:3800:35 | (...)... : String | Test.java:3800:13:3800:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:3800:28:3800:35 | source(...) : Object | Test.java:3800:20:3800:35 | (...)... : String | provenance | | +| Test.java:3801:10:3801:33 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | Test.java:3802:20:3802:22 | out : MyAbstractMapBag [] : String | provenance | | +| Test.java:3801:31:3801:32 | in : Map [] : String | Test.java:3801:10:3801:33 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | provenance | MaD:28 | +| Test.java:3801:31:3801:32 | in : Map [] : String | Test.java:7104:27:7104:58 | map : Map [] : String | provenance | | +| Test.java:3802:20:3802:22 | out : MyAbstractMapBag [] : String | Test.java:230:19:230:32 | it : MyAbstractMapBag [] : String | provenance | | +| Test.java:3802:20:3802:22 | out : MyAbstractMapBag [] : String | Test.java:3802:9:3802:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3807:26:3807:77 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | Test.java:3808:10:3808:11 | in : MyAbstractMapBag [] : String | provenance | | +| Test.java:3807:47:3807:76 | of(...) : Map [] : String | Test.java:3807:26:3807:77 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | provenance | MaD:28 | +| Test.java:3807:47:3807:76 | of(...) : Map [] : String | Test.java:7104:27:7104:58 | map : Map [] : String | provenance | | +| Test.java:3807:54:3807:69 | (...)... : String | Test.java:3807:47:3807:76 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:3807:62:3807:69 | source(...) : Object | Test.java:3807:54:3807:69 | (...)... : String | provenance | | +| Test.java:3808:10:3808:11 | in : MyAbstractMapBag [] : String | Test.java:3808:10:3808:22 | myGetMap(...) : Map [] : String | provenance | MaD:29 | +| Test.java:3808:10:3808:11 | in : MyAbstractMapBag [] : String | Test.java:7107:33:7107:40 | parameter this : MyAbstractMapBag [] : String | provenance | | +| Test.java:3808:10:3808:22 | myGetMap(...) : Map [] : String | Test.java:3809:19:3809:21 | out : Map [] : String | provenance | | +| Test.java:3809:19:3809:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | +| Test.java:3809:19:3809:21 | out : Map [] : String | Test.java:3809:9:3809:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3814:19:3814:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3815:43:3815:44 | in : TreeBag [] : String | provenance | | +| Test.java:3814:41:3814:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3814:41:3814:56 | (...)... : String | Test.java:3814:19:3814:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3814:41:3814:56 | (...)... : String | Test.java:3814:19:3814:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3814:49:3814:56 | source(...) : Object | Test.java:3814:41:3814:56 | (...)... : String | provenance | | +| Test.java:3815:10:3815:45 | new MyAbstractSortedBagDecorator<>(...) : MyAbstractSortedBagDecorator [] : String | Test.java:3816:20:3816:22 | out : MyAbstractSortedBagDecorator [] : String | provenance | | +| Test.java:3815:43:3815:44 | in : TreeBag [] : String | Test.java:3815:10:3815:45 | new MyAbstractSortedBagDecorator<>(...) : MyAbstractSortedBagDecorator [] : String | provenance | MaD:30 | +| Test.java:3815:43:3815:44 | in : TreeBag [] : String | Test.java:7113:39:7113:60 | bag : TreeBag [] : String | provenance | | +| Test.java:3816:20:3816:22 | out : MyAbstractSortedBagDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSortedBagDecorator [] : String | provenance | | +| Test.java:3816:20:3816:22 | out : MyAbstractSortedBagDecorator [] : String | Test.java:3816:9:3816:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3821:13:3821:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3822:28:3822:29 | in : TreeBag [] : String | provenance | | +| Test.java:3821:35:3821:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3821:35:3821:50 | (...)... : String | Test.java:3821:13:3821:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3821:35:3821:50 | (...)... : String | Test.java:3821:13:3821:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3821:43:3821:50 | source(...) : Object | Test.java:3821:35:3821:50 | (...)... : String | provenance | | +| Test.java:3822:10:3822:30 | new CollectionBag<>(...) : CollectionBag [] : String | Test.java:3823:20:3823:22 | out : CollectionBag [] : String | provenance | | +| Test.java:3822:28:3822:29 | in : TreeBag [] : String | Test.java:3822:10:3822:30 | new CollectionBag<>(...) : CollectionBag [] : String | provenance | MaD:31 | +| Test.java:3823:20:3823:22 | out : CollectionBag [] : String | Test.java:230:19:230:32 | it : CollectionBag [] : String | provenance | | +| Test.java:3823:20:3823:22 | out : CollectionBag [] : String | Test.java:3823:9:3823:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3828:13:3828:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3829:38:3829:39 | in : TreeBag [] : String | provenance | | +| Test.java:3828:35:3828:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3828:35:3828:50 | (...)... : String | Test.java:3828:13:3828:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3828:35:3828:50 | (...)... : String | Test.java:3828:13:3828:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3828:43:3828:50 | source(...) : Object | Test.java:3828:35:3828:50 | (...)... : String | provenance | | +| Test.java:3829:10:3829:40 | collectionBag(...) : Bag [] : String | Test.java:3830:20:3830:22 | out : Bag [] : String | provenance | | +| Test.java:3829:38:3829:39 | in : TreeBag [] : String | Test.java:3829:10:3829:40 | collectionBag(...) : Bag [] : String | provenance | MaD:32 | +| Test.java:3830:20:3830:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | +| Test.java:3830:20:3830:22 | out : Bag [] : String | Test.java:3830:9:3830:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3835:19:3835:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3836:34:3836:35 | in : TreeBag [] : String | provenance | | +| Test.java:3835:41:3835:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3835:41:3835:56 | (...)... : String | Test.java:3835:19:3835:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3835:41:3835:56 | (...)... : String | Test.java:3835:19:3835:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3835:49:3835:56 | source(...) : Object | Test.java:3835:41:3835:56 | (...)... : String | provenance | | +| Test.java:3836:10:3836:36 | new CollectionSortedBag<>(...) : CollectionSortedBag [] : String | Test.java:3837:20:3837:22 | out : CollectionSortedBag [] : String | provenance | | +| Test.java:3836:34:3836:35 | in : TreeBag [] : String | Test.java:3836:10:3836:36 | new CollectionSortedBag<>(...) : CollectionSortedBag [] : String | provenance | MaD:33 | +| Test.java:3837:20:3837:22 | out : CollectionSortedBag [] : String | Test.java:230:19:230:32 | it : CollectionSortedBag [] : String | provenance | | +| Test.java:3837:20:3837:22 | out : CollectionSortedBag [] : String | Test.java:3837:9:3837:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3842:19:3842:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3843:50:3843:51 | in : TreeBag [] : String | provenance | | +| Test.java:3842:41:3842:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3842:41:3842:56 | (...)... : String | Test.java:3842:19:3842:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3842:41:3842:56 | (...)... : String | Test.java:3842:19:3842:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3842:49:3842:56 | source(...) : Object | Test.java:3842:41:3842:56 | (...)... : String | provenance | | +| Test.java:3843:10:3843:52 | collectionSortedBag(...) : SortedBag [] : String | Test.java:3844:20:3844:22 | out : SortedBag [] : String | provenance | | +| Test.java:3843:50:3843:51 | in : TreeBag [] : String | Test.java:3843:10:3843:52 | collectionSortedBag(...) : SortedBag [] : String | provenance | MaD:34 | +| Test.java:3844:20:3844:22 | out : SortedBag [] : String | Test.java:230:19:230:32 | it : SortedBag [] : String | provenance | | +| Test.java:3844:20:3844:22 | out : SortedBag [] : String | Test.java:3844:9:3844:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3849:20:3849:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3850:22:3850:23 | in : TreeBag [] : String | provenance | | +| Test.java:3849:42:3849:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3849:42:3849:57 | (...)... : String | Test.java:3849:20:3849:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3849:42:3849:57 | (...)... : String | Test.java:3849:20:3849:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3849:50:3849:57 | source(...) : Object | Test.java:3849:42:3849:57 | (...)... : String | provenance | | +| Test.java:3850:10:3850:24 | new HashBag<>(...) : HashBag [] : String | Test.java:3851:20:3851:22 | out : HashBag [] : String | provenance | | +| Test.java:3850:22:3850:23 | in : TreeBag [] : String | Test.java:3850:10:3850:24 | new HashBag<>(...) : HashBag [] : String | provenance | MaD:35 | +| Test.java:3851:20:3851:22 | out : HashBag [] : String | Test.java:230:19:230:32 | it : HashBag [] : String | provenance | | +| Test.java:3851:20:3851:22 | out : HashBag [] : String | Test.java:3851:9:3851:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3856:13:3856:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3857:38:3857:39 | in : TreeBag [] : String | provenance | | +| Test.java:3856:35:3856:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3856:35:3856:50 | (...)... : String | Test.java:3856:13:3856:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3856:35:3856:50 | (...)... : String | Test.java:3856:13:3856:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3856:43:3856:50 | source(...) : Object | Test.java:3856:35:3856:50 | (...)... : String | provenance | | +| Test.java:3857:10:3857:46 | predicatedBag(...) : PredicatedBag [] : String | Test.java:3858:20:3858:22 | out : PredicatedBag [] : String | provenance | | +| Test.java:3857:38:3857:39 | in : TreeBag [] : String | Test.java:3857:10:3857:46 | predicatedBag(...) : PredicatedBag [] : String | provenance | MaD:36 | +| Test.java:3858:20:3858:22 | out : PredicatedBag [] : String | Test.java:230:19:230:32 | it : PredicatedBag [] : String | provenance | | +| Test.java:3858:20:3858:22 | out : PredicatedBag [] : String | Test.java:3858:9:3858:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3863:19:3863:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3864:50:3864:51 | in : TreeBag [] : String | provenance | | +| Test.java:3863:41:3863:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3863:41:3863:56 | (...)... : String | Test.java:3863:19:3863:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3863:41:3863:56 | (...)... : String | Test.java:3863:19:3863:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3863:49:3863:56 | source(...) : Object | Test.java:3863:41:3863:56 | (...)... : String | provenance | | +| Test.java:3864:10:3864:58 | predicatedSortedBag(...) : PredicatedSortedBag [] : String | Test.java:3865:20:3865:22 | out : PredicatedSortedBag [] : String | provenance | | +| Test.java:3864:50:3864:51 | in : TreeBag [] : String | Test.java:3864:10:3864:58 | predicatedSortedBag(...) : PredicatedSortedBag [] : String | provenance | MaD:37 | +| Test.java:3865:20:3865:22 | out : PredicatedSortedBag [] : String | Test.java:230:19:230:32 | it : PredicatedSortedBag [] : String | provenance | | +| Test.java:3865:20:3865:22 | out : PredicatedSortedBag [] : String | Test.java:3865:9:3865:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3870:13:3870:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3871:42:3871:43 | in : TreeBag [] : String | provenance | | +| Test.java:3870:35:3870:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3870:35:3870:50 | (...)... : String | Test.java:3870:13:3870:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3870:35:3870:50 | (...)... : String | Test.java:3870:13:3870:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3870:43:3870:50 | source(...) : Object | Test.java:3870:35:3870:50 | (...)... : String | provenance | | +| Test.java:3871:10:3871:44 | synchronizedBag(...) : SynchronizedBag [] : String | Test.java:3872:20:3872:22 | out : SynchronizedBag [] : String | provenance | | +| Test.java:3871:42:3871:43 | in : TreeBag [] : String | Test.java:3871:10:3871:44 | synchronizedBag(...) : SynchronizedBag [] : String | provenance | MaD:38 | +| Test.java:3872:20:3872:22 | out : SynchronizedBag [] : String | Test.java:230:19:230:32 | it : SynchronizedBag [] : String | provenance | | +| Test.java:3872:20:3872:22 | out : SynchronizedBag [] : String | Test.java:3872:9:3872:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3877:19:3877:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3878:54:3878:55 | in : TreeBag [] : String | provenance | | +| Test.java:3877:41:3877:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3877:41:3877:56 | (...)... : String | Test.java:3877:19:3877:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3877:41:3877:56 | (...)... : String | Test.java:3877:19:3877:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3877:49:3877:56 | source(...) : Object | Test.java:3877:41:3877:56 | (...)... : String | provenance | | +| Test.java:3878:10:3878:56 | synchronizedSortedBag(...) : SynchronizedSortedBag [] : String | Test.java:3879:20:3879:22 | out : SynchronizedSortedBag [] : String | provenance | | +| Test.java:3878:54:3878:55 | in : TreeBag [] : String | Test.java:3878:10:3878:56 | synchronizedSortedBag(...) : SynchronizedSortedBag [] : String | provenance | MaD:39 | +| Test.java:3879:20:3879:22 | out : SynchronizedSortedBag [] : String | Test.java:230:19:230:32 | it : SynchronizedSortedBag [] : String | provenance | | +| Test.java:3879:20:3879:22 | out : SynchronizedSortedBag [] : String | Test.java:3879:9:3879:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3884:13:3884:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3885:40:3885:41 | in : TreeBag [] : String | provenance | | +| Test.java:3884:35:3884:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3884:35:3884:50 | (...)... : String | Test.java:3884:13:3884:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3884:35:3884:50 | (...)... : String | Test.java:3884:13:3884:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3884:43:3884:50 | source(...) : Object | Test.java:3884:35:3884:50 | (...)... : String | provenance | | +| Test.java:3885:10:3885:48 | transformedBag(...) : Bag [] : String | Test.java:3886:20:3886:22 | out : Bag [] : String | provenance | | +| Test.java:3885:40:3885:41 | in : TreeBag [] : String | Test.java:3885:10:3885:48 | transformedBag(...) : Bag [] : String | provenance | MaD:40 | +| Test.java:3886:20:3886:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | +| Test.java:3886:20:3886:22 | out : Bag [] : String | Test.java:3886:9:3886:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3891:19:3891:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3892:52:3892:53 | in : TreeBag [] : String | provenance | | +| Test.java:3891:41:3891:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3891:41:3891:56 | (...)... : String | Test.java:3891:19:3891:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3891:41:3891:56 | (...)... : String | Test.java:3891:19:3891:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3891:49:3891:56 | source(...) : Object | Test.java:3891:41:3891:56 | (...)... : String | provenance | | +| Test.java:3892:10:3892:60 | transformedSortedBag(...) : TransformedSortedBag [] : String | Test.java:3893:20:3893:22 | out : TransformedSortedBag [] : String | provenance | | +| Test.java:3892:52:3892:53 | in : TreeBag [] : String | Test.java:3892:10:3892:60 | transformedSortedBag(...) : TransformedSortedBag [] : String | provenance | MaD:41 | +| Test.java:3893:20:3893:22 | out : TransformedSortedBag [] : String | Test.java:230:19:230:32 | it : TransformedSortedBag [] : String | provenance | | +| Test.java:3893:20:3893:22 | out : TransformedSortedBag [] : String | Test.java:3893:9:3893:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3898:20:3898:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3899:22:3899:23 | in : TreeBag [] : String | provenance | | +| Test.java:3898:42:3898:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3898:42:3898:57 | (...)... : String | Test.java:3898:20:3898:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3898:42:3898:57 | (...)... : String | Test.java:3898:20:3898:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3898:50:3898:57 | source(...) : Object | Test.java:3898:42:3898:57 | (...)... : String | provenance | | +| Test.java:3899:10:3899:24 | new TreeBag<>(...) : TreeBag [] : String | Test.java:3900:20:3900:22 | out : TreeBag [] : String | provenance | | +| Test.java:3899:22:3899:23 | in : TreeBag [] : String | Test.java:3899:10:3899:24 | new TreeBag<>(...) : TreeBag [] : String | provenance | MaD:42 | +| Test.java:3900:20:3900:22 | out : TreeBag [] : String | Test.java:230:19:230:32 | it : TreeBag [] : String | provenance | | +| Test.java:3900:20:3900:22 | out : TreeBag [] : String | Test.java:3900:9:3900:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3905:13:3905:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3906:42:3906:43 | in : TreeBag [] : String | provenance | | +| Test.java:3905:35:3905:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3905:35:3905:50 | (...)... : String | Test.java:3905:13:3905:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3905:35:3905:50 | (...)... : String | Test.java:3905:13:3905:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3905:43:3905:50 | source(...) : Object | Test.java:3905:35:3905:50 | (...)... : String | provenance | | +| Test.java:3906:10:3906:44 | unmodifiableBag(...) : Bag [] : String | Test.java:3907:20:3907:22 | out : Bag [] : String | provenance | | +| Test.java:3906:42:3906:43 | in : TreeBag [] : String | Test.java:3906:10:3906:44 | unmodifiableBag(...) : Bag [] : String | provenance | MaD:43 | +| Test.java:3907:20:3907:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | +| Test.java:3907:20:3907:22 | out : Bag [] : String | Test.java:3907:9:3907:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3912:19:3912:57 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:3913:54:3913:55 | in : TreeBag [] : String | provenance | | +| Test.java:3912:41:3912:56 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:3912:41:3912:56 | (...)... : String | Test.java:3912:19:3912:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:3912:41:3912:56 | (...)... : String | Test.java:3912:19:3912:57 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:3912:49:3912:56 | source(...) : Object | Test.java:3912:41:3912:56 | (...)... : String | provenance | | +| Test.java:3913:10:3913:56 | unmodifiableSortedBag(...) : SortedBag [] : String | Test.java:3914:20:3914:22 | out : SortedBag [] : String | provenance | | +| Test.java:3913:54:3913:55 | in : TreeBag [] : String | Test.java:3913:10:3913:56 | unmodifiableSortedBag(...) : SortedBag [] : String | provenance | MaD:44 | +| Test.java:3914:20:3914:22 | out : SortedBag [] : String | Test.java:230:19:230:32 | it : SortedBag [] : String | provenance | | +| Test.java:3914:20:3914:22 | out : SortedBag [] : String | Test.java:3914:9:3914:23 | getElement(...) | provenance | MaD:3 | +| Test.java:3919:17:3919:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:3920:41:3920:42 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:3919:46:3919:61 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | +| Test.java:3919:46:3919:61 | (...)... : String | Test.java:3919:17:3919:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | +| Test.java:3919:54:3919:61 | source(...) : Object | Test.java:3919:46:3919:61 | (...)... : String | provenance | | +| Test.java:3920:10:3920:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | Test.java:3921:19:3921:21 | out : MyAbstractBidiMapDecorator [] : String | provenance | | +| Test.java:3920:41:3920:42 | in : DualTreeBidiMap [] : String | Test.java:3920:10:3920:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | provenance | MaD:45 | +| Test.java:3920:41:3920:42 | in : DualTreeBidiMap [] : String | Test.java:7119:37:7119:59 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:3921:19:3921:21 | out : MyAbstractBidiMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractBidiMapDecorator [] : String | provenance | | +| Test.java:3921:19:3921:21 | out : MyAbstractBidiMapDecorator [] : String | Test.java:3921:9:3921:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3926:17:3926:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:3927:41:3927:42 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:3926:48:3926:63 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | +| Test.java:3926:48:3926:63 | (...)... : String | Test.java:3926:17:3926:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:15 | +| Test.java:3926:56:3926:63 | source(...) : Object | Test.java:3926:48:3926:63 | (...)... : String | provenance | | +| Test.java:3927:10:3927:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | Test.java:3928:21:3928:23 | out : MyAbstractBidiMapDecorator [] : String | provenance | | +| Test.java:3927:41:3927:42 | in : DualTreeBidiMap [] : String | Test.java:3927:10:3927:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | provenance | MaD:46 | +| Test.java:3927:41:3927:42 | in : DualTreeBidiMap [] : String | Test.java:7119:37:7119:59 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:3928:21:3928:23 | out : MyAbstractBidiMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractBidiMapDecorator [] : String | provenance | | +| Test.java:3928:21:3928:23 | out : MyAbstractBidiMapDecorator [] : String | Test.java:3928:9:3928:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3933:17:3933:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:3934:36:3934:37 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:3933:46:3933:61 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | +| Test.java:3933:46:3933:61 | (...)... : String | Test.java:3933:17:3933:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | +| Test.java:3933:54:3933:61 | source(...) : Object | Test.java:3933:46:3933:61 | (...)... : String | provenance | | +| Test.java:3934:10:3934:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | Test.java:3935:19:3935:21 | out : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:3934:36:3934:37 | in : DualTreeBidiMap [] : String | Test.java:3934:10:3934:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | provenance | MaD:47 | +| Test.java:3934:36:3934:37 | in : DualTreeBidiMap [] : String | Test.java:7128:32:7128:56 | normalMap : DualTreeBidiMap [] : String | provenance | | +| Test.java:3935:19:3935:21 | out : MyAbstractDualBidiMap [] : String | Test.java:228:18:228:29 | map : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:3935:19:3935:21 | out : MyAbstractDualBidiMap [] : String | Test.java:3935:9:3935:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3940:17:3940:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:3941:42:3941:43 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:3940:46:3940:61 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | +| Test.java:3940:46:3940:61 | (...)... : String | Test.java:3940:17:3940:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | +| Test.java:3940:54:3940:61 | source(...) : Object | Test.java:3940:46:3940:61 | (...)... : String | provenance | | +| Test.java:3941:10:3941:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | Test.java:3942:21:3942:23 | out : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:3941:42:3941:43 | in : DualTreeBidiMap [] : String | Test.java:3941:10:3941:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | provenance | MaD:49 | +| Test.java:3941:42:3941:43 | in : DualTreeBidiMap [] : String | Test.java:7128:59:7128:84 | reverseMap : DualTreeBidiMap [] : String | provenance | | +| Test.java:3942:21:3942:23 | out : MyAbstractDualBidiMap [] : String | Test.java:232:20:232:31 | map : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:3942:21:3942:23 | out : MyAbstractDualBidiMap [] : String | Test.java:3942:9:3942:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3947:17:3947:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:3948:48:3948:49 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:3947:46:3947:61 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | +| Test.java:3947:46:3947:61 | (...)... : String | Test.java:3947:17:3947:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | +| Test.java:3947:54:3947:61 | source(...) : Object | Test.java:3947:46:3947:61 | (...)... : String | provenance | | +| Test.java:3948:10:3948:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | Test.java:3949:21:3949:23 | out : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:3948:48:3948:49 | in : DualTreeBidiMap [] : String | Test.java:3948:10:3948:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | provenance | MaD:51 | +| Test.java:3948:48:3948:49 | in : DualTreeBidiMap [] : String | Test.java:7128:87:7128:120 | inverseBidiMap : DualTreeBidiMap [] : String | provenance | | +| Test.java:3949:21:3949:23 | out : MyAbstractDualBidiMap [] : String | Test.java:232:20:232:31 | map : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:3949:21:3949:23 | out : MyAbstractDualBidiMap [] : String | Test.java:3949:9:3949:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3954:17:3954:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:3955:36:3955:37 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:3954:48:3954:63 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | +| Test.java:3954:48:3954:63 | (...)... : String | Test.java:3954:17:3954:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:15 | +| Test.java:3954:56:3954:63 | source(...) : Object | Test.java:3954:48:3954:63 | (...)... : String | provenance | | +| Test.java:3955:10:3955:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | Test.java:3956:21:3956:23 | out : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:3955:36:3955:37 | in : DualTreeBidiMap [] : String | Test.java:3955:10:3955:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | provenance | MaD:48 | +| Test.java:3955:36:3955:37 | in : DualTreeBidiMap [] : String | Test.java:7128:32:7128:56 | normalMap : DualTreeBidiMap [] : String | provenance | | +| Test.java:3956:21:3956:23 | out : MyAbstractDualBidiMap [] : String | Test.java:232:20:232:31 | map : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:3956:21:3956:23 | out : MyAbstractDualBidiMap [] : String | Test.java:3956:9:3956:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3961:17:3961:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:3962:42:3962:43 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:3961:48:3961:63 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | +| Test.java:3961:48:3961:63 | (...)... : String | Test.java:3961:17:3961:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:15 | +| Test.java:3961:56:3961:63 | source(...) : Object | Test.java:3961:48:3961:63 | (...)... : String | provenance | | +| Test.java:3962:10:3962:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | Test.java:3963:19:3963:21 | out : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:3962:42:3962:43 | in : DualTreeBidiMap [] : String | Test.java:3962:10:3962:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | provenance | MaD:50 | +| Test.java:3962:42:3962:43 | in : DualTreeBidiMap [] : String | Test.java:7128:59:7128:84 | reverseMap : DualTreeBidiMap [] : String | provenance | | +| Test.java:3963:19:3963:21 | out : MyAbstractDualBidiMap [] : String | Test.java:228:18:228:29 | map : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:3963:19:3963:21 | out : MyAbstractDualBidiMap [] : String | Test.java:3963:9:3963:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3968:17:3968:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:3969:48:3969:49 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:3968:48:3968:63 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | +| Test.java:3968:48:3968:63 | (...)... : String | Test.java:3968:17:3968:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:15 | +| Test.java:3968:56:3968:63 | source(...) : Object | Test.java:3968:48:3968:63 | (...)... : String | provenance | | +| Test.java:3969:10:3969:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | Test.java:3970:19:3970:21 | out : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:3969:48:3969:49 | in : DualTreeBidiMap [] : String | Test.java:3969:10:3969:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | provenance | MaD:52 | +| Test.java:3969:48:3969:49 | in : DualTreeBidiMap [] : String | Test.java:7128:87:7128:120 | inverseBidiMap : DualTreeBidiMap [] : String | provenance | | +| Test.java:3970:19:3970:21 | out : MyAbstractDualBidiMap [] : String | Test.java:228:18:228:29 | map : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:3970:19:3970:21 | out : MyAbstractDualBidiMap [] : String | Test.java:3970:9:3970:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3975:24:3975:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:3976:48:3976:49 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:3975:53:3975:68 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | +| Test.java:3975:53:3975:68 | (...)... : String | Test.java:3975:24:3975:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | +| Test.java:3975:61:3975:68 | source(...) : Object | Test.java:3975:53:3975:68 | (...)... : String | provenance | | +| Test.java:3976:10:3976:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:3977:19:3977:21 | out : MyAbstractOrderedBidiMapDecorator [] : String | provenance | | +| Test.java:3976:48:3976:49 | in : DualTreeBidiMap [] : String | Test.java:3976:10:3976:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | provenance | MaD:53 | +| Test.java:3976:48:3976:49 | in : DualTreeBidiMap [] : String | Test.java:7137:44:7137:73 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:3977:19:3977:21 | out : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractOrderedBidiMapDecorator [] : String | provenance | | +| Test.java:3977:19:3977:21 | out : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:3977:9:3977:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3982:24:3982:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:3983:48:3983:49 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:3982:55:3982:70 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | +| Test.java:3982:55:3982:70 | (...)... : String | Test.java:3982:24:3982:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:15 | +| Test.java:3982:63:3982:70 | source(...) : Object | Test.java:3982:55:3982:70 | (...)... : String | provenance | | +| Test.java:3983:10:3983:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:3984:21:3984:23 | out : MyAbstractOrderedBidiMapDecorator [] : String | provenance | | +| Test.java:3983:48:3983:49 | in : DualTreeBidiMap [] : String | Test.java:3983:10:3983:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | provenance | MaD:54 | +| Test.java:3983:48:3983:49 | in : DualTreeBidiMap [] : String | Test.java:7137:44:7137:73 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:3984:21:3984:23 | out : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractOrderedBidiMapDecorator [] : String | provenance | | +| Test.java:3984:21:3984:23 | out : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:3984:9:3984:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:3989:23:3989:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:3990:47:3990:48 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:3989:52:3989:67 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | +| Test.java:3989:52:3989:67 | (...)... : String | Test.java:3989:23:3989:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | +| Test.java:3989:60:3989:67 | source(...) : Object | Test.java:3989:52:3989:67 | (...)... : String | provenance | | +| Test.java:3990:10:3990:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | Test.java:3991:19:3991:21 | out : MyAbstractSortedBidiMapDecorator [] : String | provenance | | +| Test.java:3990:47:3990:48 | in : DualTreeBidiMap [] : String | Test.java:3990:10:3990:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | provenance | MaD:55 | +| Test.java:3990:47:3990:48 | in : DualTreeBidiMap [] : String | Test.java:7080:43:7080:71 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:3991:19:3991:21 | out : MyAbstractSortedBidiMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractSortedBidiMapDecorator [] : String | provenance | | +| Test.java:3991:19:3991:21 | out : MyAbstractSortedBidiMapDecorator [] : String | Test.java:3991:9:3991:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:3996:23:3996:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:3997:47:3997:48 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:3996:54:3996:69 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | +| Test.java:3996:54:3996:69 | (...)... : String | Test.java:3996:23:3996:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:15 | +| Test.java:3996:62:3996:69 | source(...) : Object | Test.java:3996:54:3996:69 | (...)... : String | provenance | | +| Test.java:3997:10:3997:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | Test.java:3998:21:3998:23 | out : MyAbstractSortedBidiMapDecorator [] : String | provenance | | +| Test.java:3997:47:3997:48 | in : DualTreeBidiMap [] : String | Test.java:3997:10:3997:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | provenance | MaD:56 | +| Test.java:3997:47:3997:48 | in : DualTreeBidiMap [] : String | Test.java:7080:43:7080:71 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:3998:21:3998:23 | out : MyAbstractSortedBidiMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractSortedBidiMapDecorator [] : String | provenance | | +| Test.java:3998:21:3998:23 | out : MyAbstractSortedBidiMapDecorator [] : String | Test.java:3998:9:3998:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:4003:13:4003:42 | of(...) : Map [] : String | Test.java:4004:30:4004:31 | in : Map [] : String | provenance | | +| Test.java:4003:20:4003:35 | (...)... : String | Test.java:4003:13:4003:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:4003:28:4003:35 | source(...) : Object | Test.java:4003:20:4003:35 | (...)... : String | provenance | | +| Test.java:4004:10:4004:32 | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | Test.java:4005:19:4005:21 | out : DualHashBidiMap [] : String | provenance | | +| Test.java:4004:30:4004:31 | in : Map [] : String | Test.java:4004:10:4004:32 | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | provenance | MaD:57 | +| Test.java:4005:19:4005:21 | out : DualHashBidiMap [] : String | Test.java:228:18:228:29 | map : DualHashBidiMap [] : String | provenance | | +| Test.java:4005:19:4005:21 | out : DualHashBidiMap [] : String | Test.java:4005:9:4005:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:4010:13:4010:42 | of(...) : Map [] : String | Test.java:4011:30:4011:31 | in : Map [] : String | provenance | | +| Test.java:4010:26:4010:41 | (...)... : String | Test.java:4010:13:4010:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:4010:34:4010:41 | source(...) : Object | Test.java:4010:26:4010:41 | (...)... : String | provenance | | +| Test.java:4011:10:4011:32 | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | Test.java:4012:21:4012:23 | out : DualHashBidiMap [] : String | provenance | | +| Test.java:4011:30:4011:31 | in : Map [] : String | Test.java:4011:10:4011:32 | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | provenance | MaD:58 | +| Test.java:4012:21:4012:23 | out : DualHashBidiMap [] : String | Test.java:232:20:232:31 | map : DualHashBidiMap [] : String | provenance | | +| Test.java:4012:21:4012:23 | out : DualHashBidiMap [] : String | Test.java:4012:9:4012:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:4017:13:4017:42 | of(...) : Map [] : String | Test.java:4018:36:4018:37 | in : Map [] : String | provenance | | +| Test.java:4017:20:4017:35 | (...)... : String | Test.java:4017:13:4017:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:4017:28:4017:35 | source(...) : Object | Test.java:4017:20:4017:35 | (...)... : String | provenance | | +| Test.java:4018:10:4018:38 | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | Test.java:4019:19:4019:21 | out : DualLinkedHashBidiMap [] : String | provenance | | +| Test.java:4018:36:4018:37 | in : Map [] : String | Test.java:4018:10:4018:38 | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | provenance | MaD:59 | +| Test.java:4019:19:4019:21 | out : DualLinkedHashBidiMap [] : String | Test.java:228:18:228:29 | map : DualLinkedHashBidiMap [] : String | provenance | | +| Test.java:4019:19:4019:21 | out : DualLinkedHashBidiMap [] : String | Test.java:4019:9:4019:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:4024:13:4024:42 | of(...) : Map [] : String | Test.java:4025:36:4025:37 | in : Map [] : String | provenance | | +| Test.java:4024:26:4024:41 | (...)... : String | Test.java:4024:13:4024:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:4024:34:4024:41 | source(...) : Object | Test.java:4024:26:4024:41 | (...)... : String | provenance | | +| Test.java:4025:10:4025:38 | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | Test.java:4026:21:4026:23 | out : DualLinkedHashBidiMap [] : String | provenance | | +| Test.java:4025:36:4025:37 | in : Map [] : String | Test.java:4025:10:4025:38 | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | provenance | MaD:60 | +| Test.java:4026:21:4026:23 | out : DualLinkedHashBidiMap [] : String | Test.java:232:20:232:31 | map : DualLinkedHashBidiMap [] : String | provenance | | +| Test.java:4026:21:4026:23 | out : DualLinkedHashBidiMap [] : String | Test.java:4026:9:4026:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:4031:13:4031:42 | of(...) : Map [] : String | Test.java:4032:30:4032:31 | in : Map [] : String | provenance | | +| Test.java:4031:20:4031:35 | (...)... : String | Test.java:4031:13:4031:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:4031:28:4031:35 | source(...) : Object | Test.java:4031:20:4031:35 | (...)... : String | provenance | | +| Test.java:4032:10:4032:32 | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | Test.java:4033:19:4033:21 | out : DualTreeBidiMap [] : String | provenance | | +| Test.java:4032:30:4032:31 | in : Map [] : String | Test.java:4032:10:4032:32 | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | provenance | MaD:61 | +| Test.java:4033:19:4033:21 | out : DualTreeBidiMap [] : String | Test.java:228:18:228:29 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:4033:19:4033:21 | out : DualTreeBidiMap [] : String | Test.java:4033:9:4033:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:4038:13:4038:42 | of(...) : Map [] : String | Test.java:4039:30:4039:31 | in : Map [] : String | provenance | | +| Test.java:4038:26:4038:41 | (...)... : String | Test.java:4038:13:4038:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:4038:34:4038:41 | source(...) : Object | Test.java:4038:26:4038:41 | (...)... : String | provenance | | +| Test.java:4039:10:4039:32 | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | Test.java:4040:21:4040:23 | out : DualTreeBidiMap [] : String | provenance | | +| Test.java:4039:30:4039:31 | in : Map [] : String | Test.java:4039:10:4039:32 | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | provenance | MaD:62 | +| Test.java:4040:21:4040:23 | out : DualTreeBidiMap [] : String | Test.java:232:20:232:31 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:4040:21:4040:23 | out : DualTreeBidiMap [] : String | Test.java:4040:9:4040:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:4045:25:4045:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:4046:10:4046:11 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:4045:54:4045:69 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | +| Test.java:4045:54:4045:69 | (...)... : String | Test.java:4045:25:4045:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | +| Test.java:4045:62:4045:69 | source(...) : Object | Test.java:4045:54:4045:69 | (...)... : String | provenance | | +| Test.java:4046:10:4046:11 | in : DualTreeBidiMap [] : String | Test.java:4046:10:4046:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:63 | +| Test.java:4046:10:4046:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4047:21:4047:23 | out : OrderedBidiMap [] : String | provenance | | +| Test.java:4047:21:4047:23 | out : OrderedBidiMap [] : String | Test.java:232:20:232:31 | map : OrderedBidiMap [] : String | provenance | | +| Test.java:4047:21:4047:23 | out : OrderedBidiMap [] : String | Test.java:4047:9:4047:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:4052:25:4052:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4053:10:4053:11 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:4052:56:4052:71 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | +| Test.java:4052:56:4052:71 | (...)... : String | Test.java:4052:25:4052:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:15 | +| Test.java:4052:64:4052:71 | source(...) : Object | Test.java:4052:56:4052:71 | (...)... : String | provenance | | +| Test.java:4053:10:4053:11 | in : DualTreeBidiMap [] : String | Test.java:4053:10:4053:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:64 | +| Test.java:4053:10:4053:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4054:19:4054:21 | out : OrderedBidiMap [] : String | provenance | | +| Test.java:4054:19:4054:21 | out : OrderedBidiMap [] : String | Test.java:228:18:228:29 | map : OrderedBidiMap [] : String | provenance | | +| Test.java:4054:19:4054:21 | out : OrderedBidiMap [] : String | Test.java:4054:9:4054:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:4059:25:4059:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:4060:10:4060:11 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:4059:54:4059:69 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | +| Test.java:4059:54:4059:69 | (...)... : String | Test.java:4059:25:4059:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | +| Test.java:4059:62:4059:69 | source(...) : Object | Test.java:4059:54:4059:69 | (...)... : String | provenance | | +| Test.java:4060:10:4060:11 | in : DualTreeBidiMap [] : String | Test.java:4060:10:4060:34 | inverseSortedBidiMap(...) : SortedBidiMap [] : String | provenance | MaD:65 | +| Test.java:4060:10:4060:34 | inverseSortedBidiMap(...) : SortedBidiMap [] : String | Test.java:4061:21:4061:23 | out : SortedBidiMap [] : String | provenance | | +| Test.java:4061:21:4061:23 | out : SortedBidiMap [] : String | Test.java:232:20:232:31 | map : SortedBidiMap [] : String | provenance | | +| Test.java:4061:21:4061:23 | out : SortedBidiMap [] : String | Test.java:4061:9:4061:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:4066:25:4066:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4067:10:4067:11 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:4066:56:4066:71 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | +| Test.java:4066:56:4066:71 | (...)... : String | Test.java:4066:25:4066:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:15 | +| Test.java:4066:64:4066:71 | source(...) : Object | Test.java:4066:56:4066:71 | (...)... : String | provenance | | +| Test.java:4067:10:4067:11 | in : DualTreeBidiMap [] : String | Test.java:4067:10:4067:34 | inverseSortedBidiMap(...) : SortedBidiMap [] : String | provenance | MaD:66 | +| Test.java:4067:10:4067:34 | inverseSortedBidiMap(...) : SortedBidiMap [] : String | Test.java:4068:19:4068:21 | out : SortedBidiMap [] : String | provenance | | +| Test.java:4068:19:4068:21 | out : SortedBidiMap [] : String | Test.java:228:18:228:29 | map : SortedBidiMap [] : String | provenance | | +| Test.java:4068:19:4068:21 | out : SortedBidiMap [] : String | Test.java:4068:9:4068:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:4073:13:4073:42 | of(...) : Map [] : String | Test.java:4074:26:4074:27 | in : Map [] : String | provenance | | +| Test.java:4073:20:4073:35 | (...)... : String | Test.java:4073:13:4073:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:4073:28:4073:35 | source(...) : Object | Test.java:4073:20:4073:35 | (...)... : String | provenance | | +| Test.java:4074:10:4074:28 | new TreeBidiMap<>(...) : TreeBidiMap [] : String | Test.java:4075:19:4075:21 | out : TreeBidiMap [] : String | provenance | | +| Test.java:4074:26:4074:27 | in : Map [] : String | Test.java:4074:10:4074:28 | new TreeBidiMap<>(...) : TreeBidiMap [] : String | provenance | MaD:67 | +| Test.java:4075:19:4075:21 | out : TreeBidiMap [] : String | Test.java:228:18:228:29 | map : TreeBidiMap [] : String | provenance | | +| Test.java:4075:19:4075:21 | out : TreeBidiMap [] : String | Test.java:4075:9:4075:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:4080:13:4080:42 | of(...) : Map [] : String | Test.java:4081:26:4081:27 | in : Map [] : String | provenance | | +| Test.java:4080:26:4080:41 | (...)... : String | Test.java:4080:13:4080:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:4080:34:4080:41 | source(...) : Object | Test.java:4080:26:4080:41 | (...)... : String | provenance | | +| Test.java:4081:10:4081:28 | new TreeBidiMap<>(...) : TreeBidiMap [] : String | Test.java:4082:21:4082:23 | out : TreeBidiMap [] : String | provenance | | +| Test.java:4081:26:4081:27 | in : Map [] : String | Test.java:4081:10:4081:28 | new TreeBidiMap<>(...) : TreeBidiMap [] : String | provenance | MaD:68 | +| Test.java:4082:21:4082:23 | out : TreeBidiMap [] : String | Test.java:232:20:232:31 | map : TreeBidiMap [] : String | provenance | | +| Test.java:4082:21:4082:23 | out : TreeBidiMap [] : String | Test.java:4082:9:4082:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:4087:17:4087:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:4088:50:4088:51 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:4087:46:4087:61 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | +| Test.java:4087:46:4087:61 | (...)... : String | Test.java:4087:17:4087:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | +| Test.java:4087:54:4087:61 | source(...) : Object | Test.java:4087:46:4087:61 | (...)... : String | provenance | | +| Test.java:4088:10:4088:52 | unmodifiableBidiMap(...) : BidiMap [] : String | Test.java:4089:19:4089:21 | out : BidiMap [] : String | provenance | | +| Test.java:4088:50:4088:51 | in : DualTreeBidiMap [] : String | Test.java:4088:10:4088:52 | unmodifiableBidiMap(...) : BidiMap [] : String | provenance | MaD:69 | +| Test.java:4089:19:4089:21 | out : BidiMap [] : String | Test.java:228:18:228:29 | map : BidiMap [] : String | provenance | | +| Test.java:4089:19:4089:21 | out : BidiMap [] : String | Test.java:4089:9:4089:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:4094:17:4094:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4095:50:4095:51 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:4094:48:4094:63 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | +| Test.java:4094:48:4094:63 | (...)... : String | Test.java:4094:17:4094:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:15 | +| Test.java:4094:56:4094:63 | source(...) : Object | Test.java:4094:48:4094:63 | (...)... : String | provenance | | +| Test.java:4095:10:4095:52 | unmodifiableBidiMap(...) : BidiMap [] : String | Test.java:4096:21:4096:23 | out : BidiMap [] : String | provenance | | +| Test.java:4095:50:4095:51 | in : DualTreeBidiMap [] : String | Test.java:4095:10:4095:52 | unmodifiableBidiMap(...) : BidiMap [] : String | provenance | MaD:70 | +| Test.java:4096:21:4096:23 | out : BidiMap [] : String | Test.java:232:20:232:31 | map : BidiMap [] : String | provenance | | +| Test.java:4096:21:4096:23 | out : BidiMap [] : String | Test.java:4096:9:4096:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:4101:36:4101:164 | (...)... : UnmodifiableOrderedBidiMap [] : String | Test.java:4102:10:4102:11 | in : UnmodifiableOrderedBidiMap [] : String | provenance | | +| Test.java:4101:64:4101:164 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4101:36:4101:164 | (...)... : UnmodifiableOrderedBidiMap [] : String | provenance | | +| Test.java:4101:118:4101:163 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:4101:64:4101:164 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:73 | +| Test.java:4101:147:4101:162 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | +| Test.java:4101:147:4101:162 | (...)... : String | Test.java:4101:118:4101:163 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | +| Test.java:4101:155:4101:162 | source(...) : Object | Test.java:4101:147:4101:162 | (...)... : String | provenance | | +| Test.java:4102:10:4102:11 | in : UnmodifiableOrderedBidiMap [] : String | Test.java:4102:10:4102:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:71 | +| Test.java:4102:10:4102:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4103:21:4103:23 | out : OrderedBidiMap [] : String | provenance | | +| Test.java:4103:21:4103:23 | out : OrderedBidiMap [] : String | Test.java:232:20:232:31 | map : OrderedBidiMap [] : String | provenance | | +| Test.java:4103:21:4103:23 | out : OrderedBidiMap [] : String | Test.java:4103:9:4103:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:4108:36:4108:166 | (...)... : UnmodifiableOrderedBidiMap [] : String | Test.java:4109:10:4109:11 | in : UnmodifiableOrderedBidiMap [] : String | provenance | | +| Test.java:4108:64:4108:166 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4108:36:4108:166 | (...)... : UnmodifiableOrderedBidiMap [] : String | provenance | | +| Test.java:4108:118:4108:165 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4108:64:4108:166 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:74 | +| Test.java:4108:149:4108:164 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | +| Test.java:4108:149:4108:164 | (...)... : String | Test.java:4108:118:4108:165 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:15 | +| Test.java:4108:157:4108:164 | source(...) : Object | Test.java:4108:149:4108:164 | (...)... : String | provenance | | +| Test.java:4109:10:4109:11 | in : UnmodifiableOrderedBidiMap [] : String | Test.java:4109:10:4109:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:72 | +| Test.java:4109:10:4109:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4110:19:4110:21 | out : OrderedBidiMap [] : String | provenance | | +| Test.java:4110:19:4110:21 | out : OrderedBidiMap [] : String | Test.java:228:18:228:29 | map : OrderedBidiMap [] : String | provenance | | +| Test.java:4110:19:4110:21 | out : OrderedBidiMap [] : String | Test.java:4110:9:4110:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:4115:24:4115:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:4116:64:4116:65 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:4115:53:4115:68 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | +| Test.java:4115:53:4115:68 | (...)... : String | Test.java:4115:24:4115:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | +| Test.java:4115:61:4115:68 | source(...) : Object | Test.java:4115:53:4115:68 | (...)... : String | provenance | | +| Test.java:4116:10:4116:66 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4117:19:4117:21 | out : OrderedBidiMap [] : String | provenance | | +| Test.java:4116:64:4116:65 | in : DualTreeBidiMap [] : String | Test.java:4116:10:4116:66 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:73 | +| Test.java:4117:19:4117:21 | out : OrderedBidiMap [] : String | Test.java:228:18:228:29 | map : OrderedBidiMap [] : String | provenance | | +| Test.java:4117:19:4117:21 | out : OrderedBidiMap [] : String | Test.java:4117:9:4117:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:4122:24:4122:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4123:64:4123:65 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:4122:55:4122:70 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | +| Test.java:4122:55:4122:70 | (...)... : String | Test.java:4122:24:4122:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:15 | +| Test.java:4122:63:4122:70 | source(...) : Object | Test.java:4122:55:4122:70 | (...)... : String | provenance | | +| Test.java:4123:10:4123:66 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | Test.java:4124:21:4124:23 | out : OrderedBidiMap [] : String | provenance | | +| Test.java:4123:64:4123:65 | in : DualTreeBidiMap [] : String | Test.java:4123:10:4123:66 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | provenance | MaD:74 | +| Test.java:4124:21:4124:23 | out : OrderedBidiMap [] : String | Test.java:232:20:232:31 | map : OrderedBidiMap [] : String | provenance | | +| Test.java:4124:21:4124:23 | out : OrderedBidiMap [] : String | Test.java:4124:9:4124:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:4129:23:4129:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | Test.java:4130:62:4130:63 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:4129:52:4129:67 | (...)... : String | Test.java:274:61:274:65 | key : String | provenance | | +| Test.java:4129:52:4129:67 | (...)... : String | Test.java:4129:23:4129:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | provenance | MaD:14 | +| Test.java:4129:60:4129:67 | source(...) : Object | Test.java:4129:52:4129:67 | (...)... : String | provenance | | +| Test.java:4130:10:4130:64 | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | Test.java:4131:19:4131:21 | out : SortedBidiMap [] : String | provenance | | +| Test.java:4130:62:4130:63 | in : DualTreeBidiMap [] : String | Test.java:4130:10:4130:64 | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | provenance | MaD:75 | +| Test.java:4131:19:4131:21 | out : SortedBidiMap [] : String | Test.java:228:18:228:29 | map : SortedBidiMap [] : String | provenance | | +| Test.java:4131:19:4131:21 | out : SortedBidiMap [] : String | Test.java:4131:9:4131:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:4136:23:4136:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | Test.java:4137:62:4137:63 | in : DualTreeBidiMap [] : String | provenance | | +| Test.java:4136:54:4136:69 | (...)... : String | Test.java:292:63:292:69 | value : String | provenance | | +| Test.java:4136:54:4136:69 | (...)... : String | Test.java:4136:23:4136:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | provenance | MaD:15 | +| Test.java:4136:62:4136:69 | source(...) : Object | Test.java:4136:54:4136:69 | (...)... : String | provenance | | +| Test.java:4137:10:4137:64 | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | Test.java:4138:21:4138:23 | out : SortedBidiMap [] : String | provenance | | +| Test.java:4137:62:4137:63 | in : DualTreeBidiMap [] : String | Test.java:4137:10:4137:64 | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | provenance | MaD:76 | +| Test.java:4138:21:4138:23 | out : SortedBidiMap [] : String | Test.java:232:20:232:31 | map : SortedBidiMap [] : String | provenance | | +| Test.java:4138:21:4138:23 | out : SortedBidiMap [] : String | Test.java:4138:9:4138:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:4143:20:4143:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4144:44:4144:45 | in : TreeBag [] : String | provenance | | +| Test.java:4143:42:4143:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4143:42:4143:57 | (...)... : String | Test.java:4143:20:4143:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4143:42:4143:57 | (...)... : String | Test.java:4143:20:4143:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4143:50:4143:57 | source(...) : Object | Test.java:4143:42:4143:57 | (...)... : String | provenance | | +| Test.java:4144:10:4144:46 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | Test.java:4145:20:4145:22 | out : MyAbstractCollectionDecorator [] : String | provenance | | +| Test.java:4144:44:4144:45 | in : TreeBag [] : String | Test.java:4144:10:4144:46 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | provenance | MaD:77 | +| Test.java:4144:44:4144:45 | in : TreeBag [] : String | Test.java:7143:40:7143:63 | coll : TreeBag [] : String | provenance | | +| Test.java:4145:20:4145:22 | out : MyAbstractCollectionDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractCollectionDecorator [] : String | provenance | | +| Test.java:4145:20:4145:22 | out : MyAbstractCollectionDecorator [] : String | Test.java:4145:9:4145:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4150:39:4150:112 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | Test.java:4151:10:4151:11 | in : MyAbstractCollectionDecorator [] : String | provenance | | +| Test.java:4150:73:4150:111 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4150:39:4150:112 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | provenance | MaD:77 | +| Test.java:4150:73:4150:111 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:7143:40:7143:63 | coll : TreeBag [] : String | provenance | | +| Test.java:4150:95:4150:110 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4150:95:4150:110 | (...)... : String | Test.java:4150:73:4150:111 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4150:95:4150:110 | (...)... : String | Test.java:4150:73:4150:111 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4150:103:4150:110 | source(...) : Object | Test.java:4150:95:4150:110 | (...)... : String | provenance | | +| Test.java:4151:10:4151:11 | in : MyAbstractCollectionDecorator [] : String | Test.java:4151:10:4151:25 | myDecorated(...) : Collection [] : String | provenance | MaD:78 | +| Test.java:4151:10:4151:11 | in : MyAbstractCollectionDecorator [] : String | Test.java:7146:24:7146:34 | parameter this : MyAbstractCollectionDecorator [] : String | provenance | | +| Test.java:4151:10:4151:25 | myDecorated(...) : Collection [] : String | Test.java:4152:20:4152:22 | out : Collection [] : String | provenance | | +| Test.java:4152:20:4152:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:4152:20:4152:22 | out : Collection [] : String | Test.java:4152:9:4152:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4157:20:4157:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4158:24:4158:25 | in : TreeBag [] : String | provenance | | +| Test.java:4157:42:4157:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4157:42:4157:57 | (...)... : String | Test.java:4157:20:4157:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4157:42:4157:57 | (...)... : String | Test.java:4157:20:4157:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4157:50:4157:57 | source(...) : Object | Test.java:4157:42:4157:57 | (...)... : String | provenance | | +| Test.java:4158:4:4158:6 | out [post update] : MyAbstractCollectionDecorator [] : String | Test.java:4159:20:4159:22 | out : MyAbstractCollectionDecorator [] : String | provenance | | +| Test.java:4158:24:4158:25 | in : TreeBag [] : String | Test.java:4158:4:4158:6 | out [post update] : MyAbstractCollectionDecorator [] : String | provenance | MaD:79 | +| Test.java:4158:24:4158:25 | in : TreeBag [] : String | Test.java:7149:31:7149:54 | coll : TreeBag [] : String | provenance | | +| Test.java:4159:20:4159:22 | out : MyAbstractCollectionDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractCollectionDecorator [] : String | provenance | | +| Test.java:4159:20:4159:22 | out : MyAbstractCollectionDecorator [] : String | Test.java:4159:9:4159:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4164:16:4164:23 | source(...) : Object | Test.java:4166:28:4166:29 | in : Object | provenance | | +| Test.java:4166:17:4166:19 | out [post update] : CompositeCollection [] : Object | Test.java:4167:20:4167:22 | out : CompositeCollection [] : Object | provenance | | +| Test.java:4166:28:4166:29 | in : Object | Test.java:4166:17:4166:19 | out [post update] : CompositeCollection [] : Object | provenance | MaD:80 | +| Test.java:4167:20:4167:22 | out : CompositeCollection [] : Object | Test.java:230:19:230:32 | it : CompositeCollection [] : Object | provenance | | +| Test.java:4167:20:4167:22 | out : CompositeCollection [] : Object | Test.java:4167:9:4167:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4172:16:4172:23 | source(...) : Object | Test.java:4174:28:4174:29 | in : Object | provenance | | +| Test.java:4174:23:4174:25 | out [post update] : List [, ] : Object | Test.java:4175:31:4175:33 | out : List [, ] : Object | provenance | | +| Test.java:4174:28:4174:29 | in : Object | Test.java:4174:23:4174:25 | out [post update] : List [, ] : Object | provenance | MaD:81 | +| Test.java:4175:20:4175:34 | getElement(...) : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | +| Test.java:4175:20:4175:34 | getElement(...) : Collection [] : Object | Test.java:4175:9:4175:35 | getElement(...) | provenance | MaD:3 | +| Test.java:4175:31:4175:33 | out : List [, ] : Object | Test.java:230:19:230:32 | it : List [, ] : Object | provenance | | +| Test.java:4175:31:4175:33 | out : List [, ] : Object | Test.java:4175:20:4175:34 | getElement(...) : Collection [] : Object | provenance | MaD:3 | +| Test.java:4180:20:4180:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4182:31:4182:32 | in : TreeBag [] : String | provenance | | +| Test.java:4180:42:4180:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4180:42:4180:57 | (...)... : String | Test.java:4180:20:4180:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4180:42:4180:57 | (...)... : String | Test.java:4180:20:4180:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4180:50:4180:57 | source(...) : Object | Test.java:4180:42:4180:57 | (...)... : String | provenance | | +| Test.java:4182:20:4182:22 | out [post update] : CompositeCollection [] : String | Test.java:4183:20:4183:22 | out : CompositeCollection [] : String | provenance | | +| Test.java:4182:31:4182:32 | in : TreeBag [] : String | Test.java:4182:20:4182:22 | out [post update] : CompositeCollection [] : String | provenance | MaD:82 | +| Test.java:4183:20:4183:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | +| Test.java:4183:20:4183:22 | out : CompositeCollection [] : String | Test.java:4183:9:4183:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4188:20:4188:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4190:31:4190:32 | in : TreeBag [] : String | provenance | | +| Test.java:4188:42:4188:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4188:42:4188:57 | (...)... : String | Test.java:4188:20:4188:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4188:42:4188:57 | (...)... : String | Test.java:4188:20:4188:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4188:50:4188:57 | source(...) : Object | Test.java:4188:42:4188:57 | (...)... : String | provenance | | +| Test.java:4190:26:4190:28 | out [post update] : List [, ] : String | Test.java:4191:31:4191:33 | out : List [, ] : String | provenance | | +| Test.java:4190:31:4190:32 | in : TreeBag [] : String | Test.java:4190:26:4190:28 | out [post update] : List [, ] : String | provenance | MaD:83 | +| Test.java:4191:20:4191:34 | getElement(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:4191:20:4191:34 | getElement(...) : Collection [] : String | Test.java:4191:9:4191:35 | getElement(...) | provenance | MaD:3 | +| Test.java:4191:31:4191:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | provenance | | +| Test.java:4191:31:4191:33 | out : List [, ] : String | Test.java:4191:20:4191:34 | getElement(...) : Collection [] : String | provenance | MaD:3 | +| Test.java:4196:20:4196:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4197:34:4197:35 | in : TreeBag [] : String | provenance | | +| Test.java:4196:42:4196:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4196:42:4196:57 | (...)... : String | Test.java:4196:20:4196:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4196:42:4196:57 | (...)... : String | Test.java:4196:20:4196:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4196:50:4196:57 | source(...) : Object | Test.java:4196:42:4196:57 | (...)... : String | provenance | | +| Test.java:4197:10:4197:36 | new CompositeCollection<>(...) : CompositeCollection [] : String | Test.java:4198:20:4198:22 | out : CompositeCollection [] : String | provenance | | +| Test.java:4197:34:4197:35 | in : TreeBag [] : String | Test.java:4197:10:4197:36 | new CompositeCollection<>(...) : CompositeCollection [] : String | provenance | MaD:84 | +| Test.java:4198:20:4198:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | +| Test.java:4198:20:4198:22 | out : CompositeCollection [] : String | Test.java:4198:9:4198:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4203:20:4203:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4204:34:4204:35 | in : TreeBag [] : String | provenance | | +| Test.java:4203:42:4203:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4203:42:4203:57 | (...)... : String | Test.java:4203:20:4203:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4203:42:4203:57 | (...)... : String | Test.java:4203:20:4203:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4203:50:4203:57 | source(...) : Object | Test.java:4203:42:4203:57 | (...)... : String | provenance | | +| Test.java:4204:10:4204:42 | new CompositeCollection<>(...) : CompositeCollection [] : String | Test.java:4205:20:4205:22 | out : CompositeCollection [] : String | provenance | | +| Test.java:4204:34:4204:35 | in : TreeBag [] : String | Test.java:4204:10:4204:42 | new CompositeCollection<>(...) : CompositeCollection [] : String | provenance | MaD:85 | +| Test.java:4205:20:4205:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | +| Test.java:4205:20:4205:22 | out : CompositeCollection [] : String | Test.java:4205:9:4205:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4210:20:4210:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4211:40:4211:41 | in : TreeBag [] : String | provenance | | +| Test.java:4210:42:4210:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4210:42:4210:57 | (...)... : String | Test.java:4210:20:4210:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4210:42:4210:57 | (...)... : String | Test.java:4210:20:4210:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4210:50:4210:57 | source(...) : Object | Test.java:4210:42:4210:57 | (...)... : String | provenance | | +| Test.java:4211:10:4211:42 | new CompositeCollection<>(...) : CompositeCollection [] : String | Test.java:4212:20:4212:22 | out : CompositeCollection [] : String | provenance | | +| Test.java:4211:40:4211:41 | in : TreeBag [] : String | Test.java:4211:10:4211:42 | new CompositeCollection<>(...) : CompositeCollection [] : String | provenance | MaD:86 | +| Test.java:4212:20:4212:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | +| Test.java:4212:20:4212:22 | out : CompositeCollection [] : String | Test.java:4212:9:4212:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4217:22:4217:78 | {...} : Collection[] [[], ] : String | Test.java:4218:34:4218:35 | in : Collection[] [[], ] : String | provenance | | +| Test.java:4217:39:4217:77 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4217:22:4217:78 | {...} : Collection[] [[], ] : String | provenance | | +| Test.java:4217:61:4217:76 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4217:61:4217:76 | (...)... : String | Test.java:4217:39:4217:77 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4217:61:4217:76 | (...)... : String | Test.java:4217:39:4217:77 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4217:69:4217:76 | source(...) : Object | Test.java:4217:61:4217:76 | (...)... : String | provenance | | +| Test.java:4218:10:4218:36 | new CompositeCollection<>(...) : CompositeCollection [] : String | Test.java:4219:20:4219:22 | out : CompositeCollection [] : String | provenance | | +| Test.java:4218:34:4218:35 | in : Collection[] [[], ] : String | Test.java:4218:10:4218:36 | new CompositeCollection<>(...) : CompositeCollection [] : String | provenance | MaD:87 | +| Test.java:4219:20:4219:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | +| Test.java:4219:20:4219:22 | out : CompositeCollection [] : String | Test.java:4219:9:4219:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4224:20:4224:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4225:22:4225:23 | in : TreeBag [] : String | provenance | | +| Test.java:4224:42:4224:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4224:42:4224:57 | (...)... : String | Test.java:4224:20:4224:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4224:42:4224:57 | (...)... : String | Test.java:4224:20:4224:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4224:50:4224:57 | source(...) : Object | Test.java:4224:42:4224:57 | (...)... : String | provenance | | +| Test.java:4225:4:4225:6 | out [post update] : CompositeCollection [] : String | Test.java:4226:20:4226:22 | out : CompositeCollection [] : String | provenance | | +| Test.java:4225:22:4225:23 | in : TreeBag [] : String | Test.java:4225:4:4225:6 | out [post update] : CompositeCollection [] : String | provenance | MaD:88 | +| Test.java:4226:20:4226:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | +| Test.java:4226:20:4226:22 | out : CompositeCollection [] : String | Test.java:4226:9:4226:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4231:20:4231:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4232:22:4232:23 | in : TreeBag [] : String | provenance | | +| Test.java:4231:42:4231:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4231:42:4231:57 | (...)... : String | Test.java:4231:20:4231:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4231:42:4231:57 | (...)... : String | Test.java:4231:20:4231:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4231:50:4231:57 | source(...) : Object | Test.java:4231:42:4231:57 | (...)... : String | provenance | | +| Test.java:4232:4:4232:6 | out [post update] : CompositeCollection [] : String | Test.java:4233:20:4233:22 | out : CompositeCollection [] : String | provenance | | +| Test.java:4232:22:4232:23 | in : TreeBag [] : String | Test.java:4232:4:4232:6 | out [post update] : CompositeCollection [] : String | provenance | MaD:89 | +| Test.java:4233:20:4233:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | +| Test.java:4233:20:4233:22 | out : CompositeCollection [] : String | Test.java:4233:9:4233:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4238:20:4238:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4239:28:4239:29 | in : TreeBag [] : String | provenance | | +| Test.java:4238:42:4238:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4238:42:4238:57 | (...)... : String | Test.java:4238:20:4238:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4238:42:4238:57 | (...)... : String | Test.java:4238:20:4238:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4238:50:4238:57 | source(...) : Object | Test.java:4238:42:4238:57 | (...)... : String | provenance | | +| Test.java:4239:4:4239:6 | out [post update] : CompositeCollection [] : String | Test.java:4240:20:4240:22 | out : CompositeCollection [] : String | provenance | | +| Test.java:4239:28:4239:29 | in : TreeBag [] : String | Test.java:4239:4:4239:6 | out [post update] : CompositeCollection [] : String | provenance | MaD:90 | +| Test.java:4240:20:4240:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | +| Test.java:4240:20:4240:22 | out : CompositeCollection [] : String | Test.java:4240:9:4240:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4245:22:4245:78 | {...} : Collection[] [[], ] : String | Test.java:4246:22:4246:23 | in : Collection[] [[], ] : String | provenance | | +| Test.java:4245:39:4245:77 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4245:22:4245:78 | {...} : Collection[] [[], ] : String | provenance | | +| Test.java:4245:61:4245:76 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4245:61:4245:76 | (...)... : String | Test.java:4245:39:4245:77 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4245:61:4245:76 | (...)... : String | Test.java:4245:39:4245:77 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4245:69:4245:76 | source(...) : Object | Test.java:4245:61:4245:76 | (...)... : String | provenance | | +| Test.java:4246:4:4246:6 | out [post update] : CompositeCollection [] : String | Test.java:4247:20:4247:22 | out : CompositeCollection [] : String | provenance | | +| Test.java:4246:22:4246:23 | in : Collection[] [[], ] : String | Test.java:4246:4:4246:6 | out [post update] : CompositeCollection [] : String | provenance | MaD:91 | +| Test.java:4247:20:4247:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | provenance | | +| Test.java:4247:20:4247:22 | out : CompositeCollection [] : String | Test.java:4247:9:4247:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4252:29:4252:92 | new CompositeCollection<>(...) : CompositeCollection [] : String | Test.java:4253:10:4253:11 | in : CompositeCollection [] : String | provenance | | +| Test.java:4252:53:4252:91 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4252:29:4252:92 | new CompositeCollection<>(...) : CompositeCollection [] : String | provenance | MaD:84 | +| Test.java:4252:75:4252:90 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4252:75:4252:90 | (...)... : String | Test.java:4252:53:4252:91 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4252:75:4252:90 | (...)... : String | Test.java:4252:53:4252:91 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4252:83:4252:90 | source(...) : Object | Test.java:4252:75:4252:90 | (...)... : String | provenance | | +| Test.java:4253:10:4253:11 | in : CompositeCollection [] : String | Test.java:4253:10:4253:28 | getCollections(...) : List [, ] : String | provenance | MaD:92 | +| Test.java:4253:10:4253:28 | getCollections(...) : List [, ] : String | Test.java:4254:31:4254:33 | out : List [, ] : String | provenance | | +| Test.java:4254:20:4254:34 | getElement(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:4254:20:4254:34 | getElement(...) : Collection [] : String | Test.java:4254:9:4254:35 | getElement(...) | provenance | MaD:3 | +| Test.java:4254:31:4254:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | provenance | | +| Test.java:4254:31:4254:33 | out : List [, ] : String | Test.java:4254:20:4254:34 | getElement(...) : Collection [] : String | provenance | MaD:3 | +| Test.java:4259:29:4259:92 | new CompositeCollection<>(...) : CompositeCollection [] : String | Test.java:4260:10:4260:11 | in : CompositeCollection [] : String | provenance | | +| Test.java:4259:53:4259:91 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4259:29:4259:92 | new CompositeCollection<>(...) : CompositeCollection [] : String | provenance | MaD:84 | +| Test.java:4259:75:4259:90 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4259:75:4259:90 | (...)... : String | Test.java:4259:53:4259:91 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4259:75:4259:90 | (...)... : String | Test.java:4259:53:4259:91 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4259:83:4259:90 | source(...) : Object | Test.java:4259:75:4259:90 | (...)... : String | provenance | | +| Test.java:4260:10:4260:11 | in : CompositeCollection [] : String | Test.java:4260:10:4260:26 | toCollection(...) : Collection [] : String | provenance | MaD:93 | +| Test.java:4260:10:4260:26 | toCollection(...) : Collection [] : String | Test.java:4261:20:4261:22 | out : Collection [] : String | provenance | | +| Test.java:4261:20:4261:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:4261:20:4261:22 | out : Collection [] : String | Test.java:4261:9:4261:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4266:20:4266:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4267:32:4267:33 | in : TreeBag [] : String | provenance | | +| Test.java:4266:42:4266:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4266:42:4266:57 | (...)... : String | Test.java:4266:20:4266:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4266:42:4266:57 | (...)... : String | Test.java:4266:20:4266:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4266:50:4266:57 | source(...) : Object | Test.java:4266:42:4266:57 | (...)... : String | provenance | | +| Test.java:4267:10:4267:53 | new IndexedCollection<>(...) : IndexedCollection [] : String | Test.java:4268:20:4268:22 | out : IndexedCollection [] : String | provenance | | +| Test.java:4267:32:4267:33 | in : TreeBag [] : String | Test.java:4267:10:4267:53 | new IndexedCollection<>(...) : IndexedCollection [] : String | provenance | MaD:94 | +| Test.java:4268:20:4268:22 | out : IndexedCollection [] : String | Test.java:230:19:230:32 | it : IndexedCollection [] : String | provenance | | +| Test.java:4268:20:4268:22 | out : IndexedCollection [] : String | Test.java:4268:9:4268:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4273:27:4273:107 | new IndexedCollection<>(...) : IndexedCollection [] : String | Test.java:4274:10:4274:11 | in : IndexedCollection [] : String | provenance | | +| Test.java:4273:49:4273:87 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4273:27:4273:107 | new IndexedCollection<>(...) : IndexedCollection [] : String | provenance | MaD:94 | +| Test.java:4273:71:4273:86 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4273:71:4273:86 | (...)... : String | Test.java:4273:49:4273:87 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4273:71:4273:86 | (...)... : String | Test.java:4273:49:4273:87 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4273:79:4273:86 | source(...) : Object | Test.java:4273:71:4273:86 | (...)... : String | provenance | | +| Test.java:4274:10:4274:11 | in : IndexedCollection [] : String | Test.java:4274:10:4274:21 | get(...) : String | provenance | MaD:95 | +| Test.java:4274:10:4274:21 | get(...) : String | Test.java:4275:9:4275:11 | out | provenance | | +| Test.java:4280:20:4280:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4281:55:4281:56 | in : TreeBag [] : String | provenance | | +| Test.java:4280:42:4280:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4280:42:4280:57 | (...)... : String | Test.java:4280:20:4280:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4280:42:4280:57 | (...)... : String | Test.java:4280:20:4280:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4280:50:4280:57 | source(...) : Object | Test.java:4280:42:4280:57 | (...)... : String | provenance | | +| Test.java:4281:10:4281:63 | nonUniqueIndexedCollection(...) : IndexedCollection [] : String | Test.java:4282:20:4282:22 | out : IndexedCollection [] : String | provenance | | +| Test.java:4281:55:4281:56 | in : TreeBag [] : String | Test.java:4281:10:4281:63 | nonUniqueIndexedCollection(...) : IndexedCollection [] : String | provenance | MaD:96 | +| Test.java:4282:20:4282:22 | out : IndexedCollection [] : String | Test.java:230:19:230:32 | it : IndexedCollection [] : String | provenance | | +| Test.java:4282:20:4282:22 | out : IndexedCollection [] : String | Test.java:4282:9:4282:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4287:20:4287:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4288:52:4288:53 | in : TreeBag [] : String | provenance | | +| Test.java:4287:42:4287:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4287:42:4287:57 | (...)... : String | Test.java:4287:20:4287:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4287:42:4287:57 | (...)... : String | Test.java:4287:20:4287:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4287:50:4287:57 | source(...) : Object | Test.java:4287:42:4287:57 | (...)... : String | provenance | | +| Test.java:4288:10:4288:60 | uniqueIndexedCollection(...) : IndexedCollection [] : String | Test.java:4289:20:4289:22 | out : IndexedCollection [] : String | provenance | | +| Test.java:4288:52:4288:53 | in : TreeBag [] : String | Test.java:4288:10:4288:60 | uniqueIndexedCollection(...) : IndexedCollection [] : String | provenance | MaD:97 | +| Test.java:4289:20:4289:22 | out : IndexedCollection [] : String | Test.java:230:19:230:32 | it : IndexedCollection [] : String | provenance | | +| Test.java:4289:20:4289:22 | out : IndexedCollection [] : String | Test.java:4289:9:4289:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4294:27:4294:107 | new IndexedCollection<>(...) : IndexedCollection [] : String | Test.java:4295:10:4295:11 | in : IndexedCollection [] : String | provenance | | +| Test.java:4294:49:4294:87 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4294:27:4294:107 | new IndexedCollection<>(...) : IndexedCollection [] : String | provenance | MaD:94 | +| Test.java:4294:71:4294:86 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4294:71:4294:86 | (...)... : String | Test.java:4294:49:4294:87 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4294:71:4294:86 | (...)... : String | Test.java:4294:49:4294:87 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4294:79:4294:86 | source(...) : Object | Test.java:4294:71:4294:86 | (...)... : String | provenance | | +| Test.java:4295:10:4295:11 | in : IndexedCollection [] : String | Test.java:4295:10:4295:24 | values(...) : Collection [] : String | provenance | MaD:98 | +| Test.java:4295:10:4295:24 | values(...) : Collection [] : String | Test.java:4296:20:4296:22 | out : Collection [] : String | provenance | | +| Test.java:4296:20:4296:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:4296:20:4296:22 | out : Collection [] : String | Test.java:4296:9:4296:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4301:16:4301:31 | (...)... : String | Test.java:4302:12:4302:13 | in : String | provenance | | +| Test.java:4301:24:4301:31 | source(...) : Object | Test.java:4301:16:4301:31 | (...)... : String | provenance | | +| Test.java:4302:4:4302:6 | out [post update] : Builder [] : String | Test.java:4303:20:4303:22 | out : Builder [] : String | provenance | | +| Test.java:4302:12:4302:13 | in : String | Test.java:4302:4:4302:6 | out [post update] : Builder [] : String | provenance | MaD:99 | +| Test.java:4303:20:4303:22 | out : Builder [] : String | Test.java:4303:20:4303:45 | createPredicatedList(...) : List [] : String | provenance | MaD:104 | +| Test.java:4303:20:4303:45 | createPredicatedList(...) : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | +| Test.java:4303:20:4303:45 | createPredicatedList(...) : List [] : String | Test.java:4303:9:4303:46 | getElement(...) | provenance | MaD:3 | +| Test.java:4308:20:4308:44 | of(...) : List [] : String | Test.java:4309:15:4309:16 | in : List [] : String | provenance | | +| Test.java:4308:28:4308:43 | (...)... : String | Test.java:4308:20:4308:44 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:4308:36:4308:43 | source(...) : Object | Test.java:4308:28:4308:43 | (...)... : String | provenance | | +| Test.java:4309:4:4309:6 | out [post update] : Builder [] : String | Test.java:4310:20:4310:22 | out : Builder [] : String | provenance | | +| Test.java:4309:15:4309:16 | in : List [] : String | Test.java:4309:4:4309:6 | out [post update] : Builder [] : String | provenance | MaD:100 | +| Test.java:4310:20:4310:22 | out : Builder [] : String | Test.java:4310:20:4310:45 | createPredicatedList(...) : List [] : String | provenance | MaD:104 | +| Test.java:4310:20:4310:45 | createPredicatedList(...) : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | +| Test.java:4310:20:4310:45 | createPredicatedList(...) : List [] : String | Test.java:4310:9:4310:46 | getElement(...) | provenance | MaD:3 | +| Test.java:4315:38:4315:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4316:10:4316:11 | in : Builder [] : String | provenance | | +| Test.java:4315:80:4315:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | +| Test.java:4315:80:4315:95 | (...)... : String | Test.java:4315:38:4315:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:99 | +| Test.java:4315:88:4315:95 | source(...) : Object | Test.java:4315:80:4315:95 | (...)... : String | provenance | | +| Test.java:4316:10:4316:11 | in : Builder [] : String | Test.java:4316:10:4316:37 | createPredicatedBag(...) : Bag [] : String | provenance | MaD:102 | +| Test.java:4316:10:4316:37 | createPredicatedBag(...) : Bag [] : String | Test.java:4317:20:4317:22 | out : Bag [] : String | provenance | | +| Test.java:4317:20:4317:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | +| Test.java:4317:20:4317:22 | out : Bag [] : String | Test.java:4317:9:4317:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4322:38:4322:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4323:10:4323:11 | in : Builder [] : String | provenance | | +| Test.java:4322:80:4322:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | +| Test.java:4322:80:4322:95 | (...)... : String | Test.java:4322:38:4322:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:99 | +| Test.java:4322:88:4322:95 | source(...) : Object | Test.java:4322:80:4322:95 | (...)... : String | provenance | | +| Test.java:4323:10:4323:11 | in : Builder [] : String | Test.java:4323:10:4323:33 | createPredicatedBag(...) : Bag [] : String | provenance | MaD:102 | +| Test.java:4323:10:4323:33 | createPredicatedBag(...) : Bag [] : String | Test.java:4324:20:4324:22 | out : Bag [] : String | provenance | | +| Test.java:4324:20:4324:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | +| Test.java:4324:20:4324:22 | out : Bag [] : String | Test.java:4324:9:4324:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4329:13:4329:51 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4331:39:4331:40 | in : TreeBag [] : String | provenance | | +| Test.java:4329:35:4329:50 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4329:35:4329:50 | (...)... : String | Test.java:4329:13:4329:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4329:35:4329:50 | (...)... : String | Test.java:4329:13:4329:51 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4329:43:4329:50 | source(...) : Object | Test.java:4329:35:4329:50 | (...)... : String | provenance | | +| Test.java:4331:10:4331:41 | createPredicatedBag(...) : Bag [] : String | Test.java:4332:20:4332:22 | out : Bag [] : String | provenance | | +| Test.java:4331:39:4331:40 | in : TreeBag [] : String | Test.java:4331:10:4331:41 | createPredicatedBag(...) : Bag [] : String | provenance | MaD:101 | +| Test.java:4332:20:4332:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | provenance | | +| Test.java:4332:20:4332:22 | out : Bag [] : String | Test.java:4332:9:4332:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4337:38:4337:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4338:10:4338:11 | in : Builder [] : String | provenance | | +| Test.java:4337:80:4337:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | +| Test.java:4337:80:4337:95 | (...)... : String | Test.java:4337:38:4337:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:99 | +| Test.java:4337:88:4337:95 | source(...) : Object | Test.java:4337:80:4337:95 | (...)... : String | provenance | | +| Test.java:4338:10:4338:11 | in : Builder [] : String | Test.java:4338:10:4338:38 | createPredicatedList(...) : List [] : String | provenance | MaD:104 | +| Test.java:4338:10:4338:38 | createPredicatedList(...) : List [] : String | Test.java:4339:20:4339:22 | out : List [] : String | provenance | | +| Test.java:4339:20:4339:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | +| Test.java:4339:20:4339:22 | out : List [] : String | Test.java:4339:9:4339:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4344:38:4344:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4345:10:4345:11 | in : Builder [] : String | provenance | | +| Test.java:4344:80:4344:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | +| Test.java:4344:80:4344:95 | (...)... : String | Test.java:4344:38:4344:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:99 | +| Test.java:4344:88:4344:95 | source(...) : Object | Test.java:4344:80:4344:95 | (...)... : String | provenance | | +| Test.java:4345:10:4345:11 | in : Builder [] : String | Test.java:4345:10:4345:34 | createPredicatedList(...) : List [] : String | provenance | MaD:104 | +| Test.java:4345:10:4345:34 | createPredicatedList(...) : List [] : String | Test.java:4346:20:4346:22 | out : List [] : String | provenance | | +| Test.java:4346:20:4346:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | +| Test.java:4346:20:4346:22 | out : List [] : String | Test.java:4346:9:4346:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4351:14:4351:38 | of(...) : List [] : String | Test.java:4353:40:4353:41 | in : List [] : String | provenance | | +| Test.java:4351:22:4351:37 | (...)... : String | Test.java:4351:14:4351:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:4351:30:4351:37 | source(...) : Object | Test.java:4351:22:4351:37 | (...)... : String | provenance | | +| Test.java:4353:10:4353:42 | createPredicatedList(...) : List [] : String | Test.java:4354:20:4354:22 | out : List [] : String | provenance | | +| Test.java:4353:40:4353:41 | in : List [] : String | Test.java:4353:10:4353:42 | createPredicatedList(...) : List [] : String | provenance | MaD:103 | +| Test.java:4354:20:4354:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | +| Test.java:4354:20:4354:22 | out : List [] : String | Test.java:4354:9:4354:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4359:38:4359:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4360:10:4360:11 | in : Builder [] : String | provenance | | +| Test.java:4359:80:4359:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | +| Test.java:4359:80:4359:95 | (...)... : String | Test.java:4359:38:4359:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:99 | +| Test.java:4359:88:4359:95 | source(...) : Object | Test.java:4359:80:4359:95 | (...)... : String | provenance | | +| Test.java:4360:10:4360:11 | in : Builder [] : String | Test.java:4360:10:4360:42 | createPredicatedMultiSet(...) : MultiSet [] : String | provenance | MaD:106 | +| Test.java:4360:10:4360:42 | createPredicatedMultiSet(...) : MultiSet [] : String | Test.java:4361:20:4361:22 | out : MultiSet [] : String | provenance | | +| Test.java:4361:20:4361:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | provenance | | +| Test.java:4361:20:4361:22 | out : MultiSet [] : String | Test.java:4361:9:4361:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4366:38:4366:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4367:10:4367:11 | in : Builder [] : String | provenance | | +| Test.java:4366:80:4366:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | +| Test.java:4366:80:4366:95 | (...)... : String | Test.java:4366:38:4366:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:99 | +| Test.java:4366:88:4366:95 | source(...) : Object | Test.java:4366:80:4366:95 | (...)... : String | provenance | | +| Test.java:4367:10:4367:11 | in : Builder [] : String | Test.java:4367:10:4367:38 | createPredicatedMultiSet(...) : MultiSet [] : String | provenance | MaD:106 | +| Test.java:4367:10:4367:38 | createPredicatedMultiSet(...) : MultiSet [] : String | Test.java:4368:20:4368:22 | out : MultiSet [] : String | provenance | | +| Test.java:4368:20:4368:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | provenance | | +| Test.java:4368:20:4368:22 | out : MultiSet [] : String | Test.java:4368:9:4368:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4373:18:4373:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:4375:44:4375:45 | in : HashMultiSet [] : String | provenance | | +| Test.java:4373:45:4373:60 | (...)... : String | Test.java:258:49:258:57 | element : String | provenance | | +| Test.java:4373:45:4373:60 | (...)... : String | Test.java:4373:18:4373:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | +| Test.java:4373:45:4373:60 | (...)... : String | Test.java:4373:18:4373:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:753 | +| Test.java:4373:53:4373:60 | source(...) : Object | Test.java:4373:45:4373:60 | (...)... : String | provenance | | +| Test.java:4375:10:4375:46 | createPredicatedMultiSet(...) : MultiSet [] : String | Test.java:4376:20:4376:22 | out : MultiSet [] : String | provenance | | +| Test.java:4375:44:4375:45 | in : HashMultiSet [] : String | Test.java:4375:10:4375:46 | createPredicatedMultiSet(...) : MultiSet [] : String | provenance | MaD:105 | +| Test.java:4376:20:4376:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | provenance | | +| Test.java:4376:20:4376:22 | out : MultiSet [] : String | Test.java:4376:9:4376:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4381:38:4381:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4382:10:4382:11 | in : Builder [] : String | provenance | | +| Test.java:4381:80:4381:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | +| Test.java:4381:80:4381:95 | (...)... : String | Test.java:4381:38:4381:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:99 | +| Test.java:4381:88:4381:95 | source(...) : Object | Test.java:4381:80:4381:95 | (...)... : String | provenance | | +| Test.java:4382:10:4382:11 | in : Builder [] : String | Test.java:4382:10:4382:39 | createPredicatedQueue(...) : Queue [] : String | provenance | MaD:108 | +| Test.java:4382:10:4382:39 | createPredicatedQueue(...) : Queue [] : String | Test.java:4383:20:4383:22 | out : Queue [] : String | provenance | | +| Test.java:4383:20:4383:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | +| Test.java:4383:20:4383:22 | out : Queue [] : String | Test.java:4383:9:4383:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4388:38:4388:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4389:10:4389:11 | in : Builder [] : String | provenance | | +| Test.java:4388:80:4388:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | +| Test.java:4388:80:4388:95 | (...)... : String | Test.java:4388:38:4388:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:99 | +| Test.java:4388:88:4388:95 | source(...) : Object | Test.java:4388:80:4388:95 | (...)... : String | provenance | | +| Test.java:4389:10:4389:11 | in : Builder [] : String | Test.java:4389:10:4389:35 | createPredicatedQueue(...) : Queue [] : String | provenance | MaD:108 | +| Test.java:4389:10:4389:35 | createPredicatedQueue(...) : Queue [] : String | Test.java:4390:20:4390:22 | out : Queue [] : String | provenance | | +| Test.java:4390:20:4390:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | +| Test.java:4390:20:4390:22 | out : Queue [] : String | Test.java:4390:9:4390:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4395:15:4395:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:4397:41:4397:42 | in : CircularFifoQueue [] : String | provenance | | +| Test.java:4395:47:4395:62 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | +| Test.java:4395:47:4395:62 | (...)... : String | Test.java:4395:15:4395:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | +| Test.java:4395:55:4395:62 | source(...) : Object | Test.java:4395:47:4395:62 | (...)... : String | provenance | | +| Test.java:4397:10:4397:43 | createPredicatedQueue(...) : Queue [] : String | Test.java:4398:20:4398:22 | out : Queue [] : String | provenance | | +| Test.java:4397:41:4397:42 | in : CircularFifoQueue [] : String | Test.java:4397:10:4397:43 | createPredicatedQueue(...) : Queue [] : String | provenance | MaD:107 | +| Test.java:4398:20:4398:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | +| Test.java:4398:20:4398:22 | out : Queue [] : String | Test.java:4398:9:4398:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4403:38:4403:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4404:10:4404:11 | in : Builder [] : String | provenance | | +| Test.java:4403:80:4403:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | +| Test.java:4403:80:4403:95 | (...)... : String | Test.java:4403:38:4403:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:99 | +| Test.java:4403:88:4403:95 | source(...) : Object | Test.java:4403:80:4403:95 | (...)... : String | provenance | | +| Test.java:4404:10:4404:11 | in : Builder [] : String | Test.java:4404:10:4404:37 | createPredicatedSet(...) : Set [] : String | provenance | MaD:110 | +| Test.java:4404:10:4404:37 | createPredicatedSet(...) : Set [] : String | Test.java:4405:20:4405:22 | out : Set [] : String | provenance | | +| Test.java:4405:20:4405:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:4405:20:4405:22 | out : Set [] : String | Test.java:4405:9:4405:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4410:38:4410:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4411:10:4411:11 | in : Builder [] : String | provenance | | +| Test.java:4410:80:4410:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | +| Test.java:4410:80:4410:95 | (...)... : String | Test.java:4410:38:4410:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:99 | +| Test.java:4410:88:4410:95 | source(...) : Object | Test.java:4410:80:4410:95 | (...)... : String | provenance | | +| Test.java:4411:10:4411:11 | in : Builder [] : String | Test.java:4411:10:4411:33 | createPredicatedSet(...) : Set [] : String | provenance | MaD:110 | +| Test.java:4411:10:4411:33 | createPredicatedSet(...) : Set [] : String | Test.java:4412:20:4412:22 | out : Set [] : String | provenance | | +| Test.java:4412:20:4412:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:4412:20:4412:22 | out : Set [] : String | Test.java:4412:9:4412:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4417:13:4417:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:4419:39:4419:40 | in : ListOrderedSet [] : String | provenance | | +| Test.java:4417:42:4417:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:4417:42:4417:57 | (...)... : String | Test.java:4417:13:4417:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:4417:50:4417:57 | source(...) : Object | Test.java:4417:42:4417:57 | (...)... : String | provenance | | +| Test.java:4419:10:4419:41 | createPredicatedSet(...) : Set [] : String | Test.java:4420:20:4420:22 | out : Set [] : String | provenance | | +| Test.java:4419:39:4419:40 | in : ListOrderedSet [] : String | Test.java:4419:10:4419:41 | createPredicatedSet(...) : Set [] : String | provenance | MaD:109 | +| Test.java:4420:20:4420:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:4420:20:4420:22 | out : Set [] : String | Test.java:4420:9:4420:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4425:38:4425:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | Test.java:4426:10:4426:11 | in : Builder [] : String | provenance | | +| Test.java:4425:80:4425:95 | (...)... : String | Test.java:264:80:264:88 | element : String | provenance | | +| Test.java:4425:80:4425:95 | (...)... : String | Test.java:4425:38:4425:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | provenance | MaD:99 | +| Test.java:4425:88:4425:95 | source(...) : Object | Test.java:4425:80:4425:95 | (...)... : String | provenance | | +| Test.java:4426:10:4426:11 | in : Builder [] : String | Test.java:4426:10:4426:30 | rejectedElements(...) : Collection [] : String | provenance | MaD:111 | +| Test.java:4426:10:4426:30 | rejectedElements(...) : Collection [] : String | Test.java:4427:20:4427:22 | out : Collection [] : String | provenance | | +| Test.java:4427:20:4427:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:4427:20:4427:22 | out : Collection [] : String | Test.java:4427:9:4427:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4432:20:4432:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4433:52:4433:53 | in : TreeBag [] : String | provenance | | +| Test.java:4432:42:4432:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4432:42:4432:57 | (...)... : String | Test.java:4432:20:4432:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4432:42:4432:57 | (...)... : String | Test.java:4432:20:4432:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4432:50:4432:57 | source(...) : Object | Test.java:4432:42:4432:57 | (...)... : String | provenance | | +| Test.java:4433:10:4433:60 | predicatedCollection(...) : PredicatedCollection [] : String | Test.java:4434:20:4434:22 | out : PredicatedCollection [] : String | provenance | | +| Test.java:4433:52:4433:53 | in : TreeBag [] : String | Test.java:4433:10:4433:60 | predicatedCollection(...) : PredicatedCollection [] : String | provenance | MaD:112 | +| Test.java:4434:20:4434:22 | out : PredicatedCollection [] : String | Test.java:230:19:230:32 | it : PredicatedCollection [] : String | provenance | | +| Test.java:4434:20:4434:22 | out : PredicatedCollection [] : String | Test.java:4434:9:4434:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4439:20:4439:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4440:56:4440:57 | in : TreeBag [] : String | provenance | | +| Test.java:4439:42:4439:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4439:42:4439:57 | (...)... : String | Test.java:4439:20:4439:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4439:42:4439:57 | (...)... : String | Test.java:4439:20:4439:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4439:50:4439:57 | source(...) : Object | Test.java:4439:42:4439:57 | (...)... : String | provenance | | +| Test.java:4440:10:4440:58 | synchronizedCollection(...) : SynchronizedCollection [] : String | Test.java:4441:20:4441:22 | out : SynchronizedCollection [] : String | provenance | | +| Test.java:4440:56:4440:57 | in : TreeBag [] : String | Test.java:4440:10:4440:58 | synchronizedCollection(...) : SynchronizedCollection [] : String | provenance | MaD:113 | +| Test.java:4441:20:4441:22 | out : SynchronizedCollection [] : String | Test.java:230:19:230:32 | it : SynchronizedCollection [] : String | provenance | | +| Test.java:4441:20:4441:22 | out : SynchronizedCollection [] : String | Test.java:4441:9:4441:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4446:20:4446:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4447:55:4447:56 | in : TreeBag [] : String | provenance | | +| Test.java:4446:42:4446:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4446:42:4446:57 | (...)... : String | Test.java:4446:20:4446:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4446:42:4446:57 | (...)... : String | Test.java:4446:20:4446:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4446:50:4446:57 | source(...) : Object | Test.java:4446:42:4446:57 | (...)... : String | provenance | | +| Test.java:4447:10:4447:63 | transformingCollection(...) : TransformedCollection [] : String | Test.java:4448:20:4448:22 | out : TransformedCollection [] : String | provenance | | +| Test.java:4447:55:4447:56 | in : TreeBag [] : String | Test.java:4447:10:4447:63 | transformingCollection(...) : TransformedCollection [] : String | provenance | MaD:114 | +| Test.java:4448:20:4448:22 | out : TransformedCollection [] : String | Test.java:230:19:230:32 | it : TransformedCollection [] : String | provenance | | +| Test.java:4448:20:4448:22 | out : TransformedCollection [] : String | Test.java:4448:9:4448:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4453:20:4453:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4454:70:4454:71 | in : TreeBag [] : String | provenance | | +| Test.java:4453:42:4453:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4453:42:4453:57 | (...)... : String | Test.java:4453:20:4453:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4453:42:4453:57 | (...)... : String | Test.java:4453:20:4453:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4453:50:4453:57 | source(...) : Object | Test.java:4453:42:4453:57 | (...)... : String | provenance | | +| Test.java:4454:10:4454:72 | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | Test.java:4455:20:4455:22 | out : BoundedCollection [] : String | provenance | | +| Test.java:4454:70:4454:71 | in : TreeBag [] : String | Test.java:4454:10:4454:72 | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | provenance | MaD:115 | +| Test.java:4455:20:4455:22 | out : BoundedCollection [] : String | Test.java:230:19:230:32 | it : BoundedCollection [] : String | provenance | | +| Test.java:4455:20:4455:22 | out : BoundedCollection [] : String | Test.java:4455:9:4455:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4460:27:4460:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:4461:70:4461:71 | in : CircularFifoQueue [] : String | provenance | | +| Test.java:4460:59:4460:74 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | +| Test.java:4460:59:4460:74 | (...)... : String | Test.java:4460:27:4460:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | +| Test.java:4460:67:4460:74 | source(...) : Object | Test.java:4460:59:4460:74 | (...)... : String | provenance | | +| Test.java:4461:10:4461:72 | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | Test.java:4462:20:4462:22 | out : BoundedCollection [] : String | provenance | | +| Test.java:4461:70:4461:71 | in : CircularFifoQueue [] : String | Test.java:4461:10:4461:72 | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | provenance | MaD:115 | +| Test.java:4462:20:4462:22 | out : BoundedCollection [] : String | Test.java:230:19:230:32 | it : BoundedCollection [] : String | provenance | | +| Test.java:4462:20:4462:22 | out : BoundedCollection [] : String | Test.java:4462:9:4462:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4467:20:4467:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4468:56:4468:57 | in : TreeBag [] : String | provenance | | +| Test.java:4467:42:4467:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4467:42:4467:57 | (...)... : String | Test.java:4467:20:4467:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4467:42:4467:57 | (...)... : String | Test.java:4467:20:4467:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4467:50:4467:57 | source(...) : Object | Test.java:4467:42:4467:57 | (...)... : String | provenance | | +| Test.java:4468:10:4468:58 | unmodifiableCollection(...) : Collection [] : String | Test.java:4469:20:4469:22 | out : Collection [] : String | provenance | | +| Test.java:4468:56:4468:57 | in : TreeBag [] : String | Test.java:4468:10:4468:58 | unmodifiableCollection(...) : Collection [] : String | provenance | MaD:116 | +| Test.java:4469:20:4469:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:4469:20:4469:22 | out : Collection [] : String | Test.java:4469:9:4469:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4474:18:4474:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4475:42:4475:43 | in : ListIterator [] : String | provenance | | +| Test.java:4474:45:4474:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4474:45:4474:60 | (...)... : String | Test.java:4474:18:4474:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4474:53:4474:60 | source(...) : Object | Test.java:4474:45:4474:60 | (...)... : String | provenance | | +| Test.java:4475:10:4475:44 | new MyAbstractIteratorDecorator<>(...) : MyAbstractIteratorDecorator [] : String | Test.java:4476:20:4476:22 | out : MyAbstractIteratorDecorator [] : String | provenance | | +| Test.java:4475:42:4475:43 | in : ListIterator [] : String | Test.java:4475:10:4475:44 | new MyAbstractIteratorDecorator<>(...) : MyAbstractIteratorDecorator [] : String | provenance | MaD:117 | +| Test.java:4475:42:4475:43 | in : ListIterator [] : String | Test.java:7155:38:7155:63 | iterator : ListIterator [] : String | provenance | | +| Test.java:4476:20:4476:22 | out : MyAbstractIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractIteratorDecorator [] : String | provenance | | +| Test.java:4476:20:4476:22 | out : MyAbstractIteratorDecorator [] : String | Test.java:4476:9:4476:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4481:22:4481:65 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4482:46:4482:47 | in : ListIterator [] : String | provenance | | +| Test.java:4481:49:4481:64 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4481:49:4481:64 | (...)... : String | Test.java:4481:22:4481:65 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4481:57:4481:64 | source(...) : Object | Test.java:4481:49:4481:64 | (...)... : String | provenance | | +| Test.java:4482:10:4482:48 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | Test.java:4483:20:4483:22 | out : MyAbstractListIteratorDecorator [] : String | provenance | | +| Test.java:4482:46:4482:47 | in : ListIterator [] : String | Test.java:4482:10:4482:48 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | provenance | MaD:118 | +| Test.java:4482:46:4482:47 | in : ListIterator [] : String | Test.java:7161:42:7161:71 | iterator : ListIterator [] : String | provenance | | +| Test.java:4483:20:4483:22 | out : MyAbstractListIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractListIteratorDecorator [] : String | provenance | | +| Test.java:4483:20:4483:22 | out : MyAbstractListIteratorDecorator [] : String | Test.java:4483:9:4483:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4488:41:4488:121 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | Test.java:4489:10:4489:11 | in : MyAbstractListIteratorDecorator [] : String | provenance | | +| Test.java:4488:77:4488:120 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4488:41:4488:121 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | provenance | MaD:118 | +| Test.java:4488:77:4488:120 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:7161:42:7161:71 | iterator : ListIterator [] : String | provenance | | +| Test.java:4488:104:4488:119 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4488:104:4488:119 | (...)... : String | Test.java:4488:77:4488:120 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4488:112:4488:119 | source(...) : Object | Test.java:4488:104:4488:119 | (...)... : String | provenance | | +| Test.java:4489:10:4489:11 | in : MyAbstractListIteratorDecorator [] : String | Test.java:4489:10:4489:31 | myGetListIterator(...) : ListIterator [] : String | provenance | MaD:119 | +| Test.java:4489:10:4489:11 | in : MyAbstractListIteratorDecorator [] : String | Test.java:7164:26:7164:42 | parameter this : MyAbstractListIteratorDecorator [] : String | provenance | | +| Test.java:4489:10:4489:31 | myGetListIterator(...) : ListIterator [] : String | Test.java:4490:20:4490:22 | out : ListIterator [] : String | provenance | | +| Test.java:4490:20:4490:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | provenance | | +| Test.java:4490:20:4490:22 | out : ListIterator [] : String | Test.java:4490:9:4490:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4495:21:4495:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | Test.java:4495:21:4495:74 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:566 | +| Test.java:4495:21:4495:74 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4496:45:4496:46 | in : OrderedMapIterator [] : String | provenance | | +| Test.java:4495:44:4495:59 | (...)... : String | Test.java:276:49:276:53 | key : String | provenance | | +| Test.java:4495:44:4495:59 | (...)... : String | Test.java:4495:21:4495:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | provenance | MaD:14 | +| Test.java:4495:52:4495:59 | source(...) : Object | Test.java:4495:44:4495:59 | (...)... : String | provenance | | +| Test.java:4496:10:4496:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | Test.java:4497:20:4497:22 | out : MyAbstractMapIteratorDecorator [] : String | provenance | | +| Test.java:4496:45:4496:46 | in : OrderedMapIterator [] : String | Test.java:4496:10:4496:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | provenance | MaD:120 | +| Test.java:4496:45:4496:46 | in : OrderedMapIterator [] : String | Test.java:7170:41:7170:72 | iterator : OrderedMapIterator [] : String | provenance | | +| Test.java:4497:20:4497:22 | out : MyAbstractMapIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractMapIteratorDecorator [] : String | provenance | | +| Test.java:4497:20:4497:22 | out : MyAbstractMapIteratorDecorator [] : String | Test.java:4497:9:4497:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4502:21:4502:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | Test.java:4502:21:4502:76 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:567 | +| Test.java:4502:21:4502:76 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4503:45:4503:46 | in : OrderedMapIterator [] : String | provenance | | +| Test.java:4502:46:4502:61 | (...)... : String | Test.java:295:51:295:57 | value : String | provenance | | +| Test.java:4502:46:4502:61 | (...)... : String | Test.java:4502:21:4502:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | provenance | MaD:15 | +| Test.java:4502:54:4502:61 | source(...) : Object | Test.java:4502:46:4502:61 | (...)... : String | provenance | | +| Test.java:4503:10:4503:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | Test.java:4504:21:4504:23 | out : MyAbstractMapIteratorDecorator [] : String | provenance | | +| Test.java:4503:45:4503:46 | in : OrderedMapIterator [] : String | Test.java:4503:10:4503:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | provenance | MaD:121 | +| Test.java:4503:45:4503:46 | in : OrderedMapIterator [] : String | Test.java:7170:41:7170:72 | iterator : OrderedMapIterator [] : String | provenance | | +| Test.java:4504:21:4504:23 | out : MyAbstractMapIteratorDecorator [] : String | Test.java:246:20:246:47 | mapIterator : MyAbstractMapIteratorDecorator [] : String | provenance | | +| Test.java:4504:21:4504:23 | out : MyAbstractMapIteratorDecorator [] : String | Test.java:4504:9:4504:24 | getMapValue(...) | provenance | MaD:677 | +| Test.java:4509:40:4509:129 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | Test.java:4510:10:4510:11 | in : MyAbstractMapIteratorDecorator [] : String | provenance | | +| Test.java:4509:75:4509:114 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | Test.java:4509:75:4509:128 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:566 | +| Test.java:4509:75:4509:128 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4509:40:4509:129 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | provenance | MaD:120 | +| Test.java:4509:75:4509:128 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7170:41:7170:72 | iterator : OrderedMapIterator [] : String | provenance | | +| Test.java:4509:98:4509:113 | (...)... : String | Test.java:276:49:276:53 | key : String | provenance | | +| Test.java:4509:98:4509:113 | (...)... : String | Test.java:4509:75:4509:114 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | provenance | MaD:14 | +| Test.java:4509:106:4509:113 | source(...) : Object | Test.java:4509:98:4509:113 | (...)... : String | provenance | | +| Test.java:4510:10:4510:11 | in : MyAbstractMapIteratorDecorator [] : String | Test.java:4510:10:4510:30 | myGetMapIterator(...) : MapIterator [] : String | provenance | MaD:122 | +| Test.java:4510:10:4510:11 | in : MyAbstractMapIteratorDecorator [] : String | Test.java:7173:28:7173:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | provenance | | +| Test.java:4510:10:4510:30 | myGetMapIterator(...) : MapIterator [] : String | Test.java:4511:20:4511:22 | out : MapIterator [] : String | provenance | | +| Test.java:4511:20:4511:22 | out : MapIterator [] : String | Test.java:231:19:231:32 | it : MapIterator [] : String | provenance | | +| Test.java:4511:20:4511:22 | out : MapIterator [] : String | Test.java:4511:9:4511:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4516:40:4516:131 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | Test.java:4517:10:4517:11 | in : MyAbstractMapIteratorDecorator [] : String | provenance | | +| Test.java:4516:75:4516:116 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | Test.java:4516:75:4516:130 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:567 | +| Test.java:4516:75:4516:130 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4516:40:4516:131 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | provenance | MaD:121 | +| Test.java:4516:75:4516:130 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7170:41:7170:72 | iterator : OrderedMapIterator [] : String | provenance | | +| Test.java:4516:100:4516:115 | (...)... : String | Test.java:295:51:295:57 | value : String | provenance | | +| Test.java:4516:100:4516:115 | (...)... : String | Test.java:4516:75:4516:116 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | provenance | MaD:15 | +| Test.java:4516:108:4516:115 | source(...) : Object | Test.java:4516:100:4516:115 | (...)... : String | provenance | | +| Test.java:4517:10:4517:11 | in : MyAbstractMapIteratorDecorator [] : String | Test.java:4517:10:4517:30 | myGetMapIterator(...) : MapIterator [] : String | provenance | MaD:123 | +| Test.java:4517:10:4517:11 | in : MyAbstractMapIteratorDecorator [] : String | Test.java:7173:28:7173:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | provenance | | +| Test.java:4517:10:4517:30 | myGetMapIterator(...) : MapIterator [] : String | Test.java:4518:21:4518:23 | out : MapIterator [] : String | provenance | | +| Test.java:4518:21:4518:23 | out : MapIterator [] : String | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | provenance | | +| Test.java:4518:21:4518:23 | out : MapIterator [] : String | Test.java:4518:9:4518:24 | getMapValue(...) | provenance | MaD:677 | +| Test.java:4523:28:4523:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:4523:28:4523:86 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:566 | +| Test.java:4523:28:4523:86 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4524:52:4524:53 | in : OrderedMapIterator [] : String | provenance | | +| Test.java:4523:56:4523:71 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | +| Test.java:4523:56:4523:71 | (...)... : String | Test.java:4523:28:4523:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:14 | +| Test.java:4523:64:4523:71 | source(...) : Object | Test.java:4523:56:4523:71 | (...)... : String | provenance | | +| Test.java:4524:10:4524:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4525:20:4525:22 | out : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | +| Test.java:4524:52:4524:53 | in : OrderedMapIterator [] : String | Test.java:4524:10:4524:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | MaD:124 | +| Test.java:4524:52:4524:53 | in : OrderedMapIterator [] : String | Test.java:7179:48:7179:86 | iterator : OrderedMapIterator [] : String | provenance | | +| Test.java:4525:20:4525:22 | out : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | +| Test.java:4525:20:4525:22 | out : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4525:9:4525:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4530:28:4530:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:4530:28:4530:88 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:567 | +| Test.java:4530:28:4530:88 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4531:52:4531:53 | in : OrderedMapIterator [] : String | provenance | | +| Test.java:4530:58:4530:73 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | +| Test.java:4530:58:4530:73 | (...)... : String | Test.java:4530:28:4530:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:15 | +| Test.java:4530:66:4530:73 | source(...) : Object | Test.java:4530:58:4530:73 | (...)... : String | provenance | | +| Test.java:4531:10:4531:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4532:21:4532:23 | out : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | +| Test.java:4531:52:4531:53 | in : OrderedMapIterator [] : String | Test.java:4531:10:4531:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | MaD:125 | +| Test.java:4531:52:4531:53 | in : OrderedMapIterator [] : String | Test.java:7179:48:7179:86 | iterator : OrderedMapIterator [] : String | provenance | | +| Test.java:4532:21:4532:23 | out : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:246:20:246:47 | mapIterator : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | +| Test.java:4532:21:4532:23 | out : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4532:9:4532:24 | getMapValue(...) | provenance | MaD:677 | +| Test.java:4537:47:4537:148 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4538:10:4538:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | +| Test.java:4537:89:4537:133 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:4537:89:4537:147 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:566 | +| Test.java:4537:89:4537:147 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4537:47:4537:148 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | MaD:124 | +| Test.java:4537:89:4537:147 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7179:48:7179:86 | iterator : OrderedMapIterator [] : String | provenance | | +| Test.java:4537:117:4537:132 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | +| Test.java:4537:117:4537:132 | (...)... : String | Test.java:4537:89:4537:133 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:14 | +| Test.java:4537:125:4537:132 | source(...) : Object | Test.java:4537:117:4537:132 | (...)... : String | provenance | | +| Test.java:4538:10:4538:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4538:10:4538:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:126 | +| Test.java:4538:10:4538:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7182:35:7182:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | +| Test.java:4538:10:4538:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | Test.java:4539:20:4539:22 | out : OrderedMapIterator [] : String | provenance | | +| Test.java:4539:20:4539:22 | out : OrderedMapIterator [] : String | Test.java:231:19:231:32 | it : OrderedMapIterator [] : String | provenance | | +| Test.java:4539:20:4539:22 | out : OrderedMapIterator [] : String | Test.java:4539:9:4539:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4544:47:4544:150 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4545:10:4545:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | +| Test.java:4544:89:4544:135 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:4544:89:4544:149 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:567 | +| Test.java:4544:89:4544:149 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:4544:47:4544:150 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | MaD:125 | +| Test.java:4544:89:4544:149 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7179:48:7179:86 | iterator : OrderedMapIterator [] : String | provenance | | +| Test.java:4544:119:4544:134 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | +| Test.java:4544:119:4544:134 | (...)... : String | Test.java:4544:89:4544:135 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:15 | +| Test.java:4544:127:4544:134 | source(...) : Object | Test.java:4544:119:4544:134 | (...)... : String | provenance | | +| Test.java:4545:10:4545:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4545:10:4545:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:127 | +| Test.java:4545:10:4545:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7182:35:7182:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | +| Test.java:4545:10:4545:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | Test.java:4546:21:4546:23 | out : OrderedMapIterator [] : String | provenance | | +| Test.java:4546:21:4546:23 | out : OrderedMapIterator [] : String | Test.java:246:20:246:47 | mapIterator : OrderedMapIterator [] : String | provenance | | +| Test.java:4546:21:4546:23 | out : OrderedMapIterator [] : String | Test.java:4546:9:4546:24 | getMapValue(...) | provenance | MaD:677 | +| Test.java:4551:18:4551:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4552:49:4552:50 | in : ListIterator [] : String | provenance | | +| Test.java:4551:45:4551:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4551:45:4551:60 | (...)... : String | Test.java:4551:18:4551:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4551:53:4551:60 | source(...) : Object | Test.java:4551:45:4551:60 | (...)... : String | provenance | | +| Test.java:4552:10:4552:51 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | Test.java:4553:20:4553:22 | out : MyAbstractUntypedIteratorDecorator [] : String | provenance | | +| Test.java:4552:49:4552:50 | in : ListIterator [] : String | Test.java:4552:10:4552:51 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | provenance | MaD:128 | +| Test.java:4552:49:4552:50 | in : ListIterator [] : String | Test.java:7188:45:7188:70 | iterator : ListIterator [] : String | provenance | | +| Test.java:4553:20:4553:22 | out : MyAbstractUntypedIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractUntypedIteratorDecorator [] : String | provenance | | +| Test.java:4553:20:4553:22 | out : MyAbstractUntypedIteratorDecorator [] : String | Test.java:4553:9:4553:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4558:44:4558:127 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | Test.java:4559:10:4559:11 | in : MyAbstractUntypedIteratorDecorator [] : String | provenance | | +| Test.java:4558:83:4558:126 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4558:44:4558:127 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | provenance | MaD:128 | +| Test.java:4558:83:4558:126 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:7188:45:7188:70 | iterator : ListIterator [] : String | provenance | | +| Test.java:4558:110:4558:125 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4558:110:4558:125 | (...)... : String | Test.java:4558:83:4558:126 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4558:118:4558:125 | source(...) : Object | Test.java:4558:110:4558:125 | (...)... : String | provenance | | +| Test.java:4559:10:4559:11 | in : MyAbstractUntypedIteratorDecorator [] : String | Test.java:4559:10:4559:27 | myGetIterator(...) : Iterator [] : String | provenance | MaD:129 | +| Test.java:4559:10:4559:11 | in : MyAbstractUntypedIteratorDecorator [] : String | Test.java:7191:22:7191:34 | parameter this : MyAbstractUntypedIteratorDecorator [] : String | provenance | | +| Test.java:4559:10:4559:27 | myGetIterator(...) : Iterator [] : String | Test.java:4560:20:4560:22 | out : Iterator [] : String | provenance | | +| Test.java:4560:20:4560:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | +| Test.java:4560:20:4560:22 | out : Iterator [] : String | Test.java:4560:9:4560:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4565:16:4565:60 | (...)... : Object[] [[]] : String | Test.java:4566:28:4566:29 | in : Object[] [[]] : String | provenance | | +| Test.java:4565:24:4565:60 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4565:16:4565:60 | (...)... : Object[] [[]] : String | provenance | | +| Test.java:4565:44:4565:59 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | +| Test.java:4565:44:4565:59 | (...)... : String | Test.java:4565:24:4565:60 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | +| Test.java:4565:52:4565:59 | source(...) : Object | Test.java:4565:44:4565:59 | (...)... : String | provenance | | +| Test.java:4566:10:4566:36 | new ArrayIterator<>(...) : ArrayIterator [] : String | Test.java:4567:20:4567:22 | out : ArrayIterator [] : String | provenance | | +| Test.java:4566:28:4566:29 | in : Object[] [[]] : String | Test.java:4566:10:4566:36 | new ArrayIterator<>(...) : ArrayIterator [] : String | provenance | MaD:130 | +| Test.java:4567:20:4567:22 | out : ArrayIterator [] : String | Test.java:231:19:231:32 | it : ArrayIterator [] : String | provenance | | +| Test.java:4567:20:4567:22 | out : ArrayIterator [] : String | Test.java:4567:9:4567:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4572:16:4572:60 | (...)... : Object[] [[]] : String | Test.java:4573:28:4573:29 | in : Object[] [[]] : String | provenance | | +| Test.java:4572:24:4572:60 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4572:16:4572:60 | (...)... : Object[] [[]] : String | provenance | | +| Test.java:4572:44:4572:59 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | +| Test.java:4572:44:4572:59 | (...)... : String | Test.java:4572:24:4572:60 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | +| Test.java:4572:52:4572:59 | source(...) : Object | Test.java:4572:44:4572:59 | (...)... : String | provenance | | +| Test.java:4573:10:4573:33 | new ArrayIterator<>(...) : ArrayIterator [] : String | Test.java:4574:20:4574:22 | out : ArrayIterator [] : String | provenance | | +| Test.java:4573:28:4573:29 | in : Object[] [[]] : String | Test.java:4573:10:4573:33 | new ArrayIterator<>(...) : ArrayIterator [] : String | provenance | MaD:130 | +| Test.java:4574:20:4574:22 | out : ArrayIterator [] : String | Test.java:231:19:231:32 | it : ArrayIterator [] : String | provenance | | +| Test.java:4574:20:4574:22 | out : ArrayIterator [] : String | Test.java:4574:9:4574:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4579:16:4579:60 | (...)... : Object[] [[]] : String | Test.java:4580:28:4580:29 | in : Object[] [[]] : String | provenance | | +| Test.java:4579:24:4579:60 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4579:16:4579:60 | (...)... : Object[] [[]] : String | provenance | | +| Test.java:4579:44:4579:59 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | +| Test.java:4579:44:4579:59 | (...)... : String | Test.java:4579:24:4579:60 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | +| Test.java:4579:52:4579:59 | source(...) : Object | Test.java:4579:44:4579:59 | (...)... : String | provenance | | +| Test.java:4580:10:4580:30 | new ArrayIterator<>(...) : ArrayIterator [] : String | Test.java:4581:20:4581:22 | out : ArrayIterator [] : String | provenance | | +| Test.java:4580:28:4580:29 | in : Object[] [[]] : String | Test.java:4580:10:4580:30 | new ArrayIterator<>(...) : ArrayIterator [] : String | provenance | MaD:130 | +| Test.java:4581:20:4581:22 | out : ArrayIterator [] : String | Test.java:231:19:231:32 | it : ArrayIterator [] : String | provenance | | +| Test.java:4581:20:4581:22 | out : ArrayIterator [] : String | Test.java:4581:9:4581:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4586:23:4586:86 | new ArrayIterator<>(...) : ArrayIterator [] : String | Test.java:4587:20:4587:21 | in : ArrayIterator [] : String | provenance | | +| Test.java:4586:41:4586:85 | (...)... : Object[] [[]] : String | Test.java:4586:23:4586:86 | new ArrayIterator<>(...) : ArrayIterator [] : String | provenance | MaD:130 | +| Test.java:4586:49:4586:85 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4586:41:4586:85 | (...)... : Object[] [[]] : String | provenance | | +| Test.java:4586:69:4586:84 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | +| Test.java:4586:69:4586:84 | (...)... : String | Test.java:4586:49:4586:85 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | +| Test.java:4586:77:4586:84 | source(...) : Object | Test.java:4586:69:4586:84 | (...)... : String | provenance | | +| Test.java:4587:10:4587:32 | (...)... : String[] [[]] : String | Test.java:4588:25:4588:27 | out : String[] [[]] : String | provenance | | +| Test.java:4587:20:4587:21 | in : ArrayIterator [] : String | Test.java:4587:20:4587:32 | getArray(...) : Object [[]] : String | provenance | MaD:131 | +| Test.java:4587:20:4587:32 | getArray(...) : Object [[]] : String | Test.java:4587:10:4587:32 | (...)... : String[] [[]] : String | provenance | | +| Test.java:4588:25:4588:27 | out : String[] [[]] : String | Test.java:229:24:229:32 | array : String[] [[]] : String | provenance | | +| Test.java:4588:25:4588:27 | out : String[] [[]] : String | Test.java:4588:9:4588:28 | getArrayElement(...) | provenance | | +| Test.java:4593:16:4593:60 | (...)... : Object[] [[]] : String | Test.java:4594:32:4594:33 | in : Object[] [[]] : String | provenance | | +| Test.java:4593:24:4593:60 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4593:16:4593:60 | (...)... : Object[] [[]] : String | provenance | | +| Test.java:4593:44:4593:59 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | +| Test.java:4593:44:4593:59 | (...)... : String | Test.java:4593:24:4593:60 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | +| Test.java:4593:52:4593:59 | source(...) : Object | Test.java:4593:44:4593:59 | (...)... : String | provenance | | +| Test.java:4594:10:4594:40 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | Test.java:4595:20:4595:22 | out : ArrayListIterator [] : String | provenance | | +| Test.java:4594:32:4594:33 | in : Object[] [[]] : String | Test.java:4594:10:4594:40 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | provenance | MaD:132 | +| Test.java:4595:20:4595:22 | out : ArrayListIterator [] : String | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | provenance | | +| Test.java:4595:20:4595:22 | out : ArrayListIterator [] : String | Test.java:4595:9:4595:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4600:16:4600:60 | (...)... : Object[] [[]] : String | Test.java:4601:32:4601:33 | in : Object[] [[]] : String | provenance | | +| Test.java:4600:24:4600:60 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4600:16:4600:60 | (...)... : Object[] [[]] : String | provenance | | +| Test.java:4600:44:4600:59 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | +| Test.java:4600:44:4600:59 | (...)... : String | Test.java:4600:24:4600:60 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | +| Test.java:4600:52:4600:59 | source(...) : Object | Test.java:4600:44:4600:59 | (...)... : String | provenance | | +| Test.java:4601:10:4601:37 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | Test.java:4602:20:4602:22 | out : ArrayListIterator [] : String | provenance | | +| Test.java:4601:32:4601:33 | in : Object[] [[]] : String | Test.java:4601:10:4601:37 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | provenance | MaD:132 | +| Test.java:4602:20:4602:22 | out : ArrayListIterator [] : String | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | provenance | | +| Test.java:4602:20:4602:22 | out : ArrayListIterator [] : String | Test.java:4602:9:4602:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4607:16:4607:60 | (...)... : Object[] [[]] : String | Test.java:4608:32:4608:33 | in : Object[] [[]] : String | provenance | | +| Test.java:4607:24:4607:60 | newWithArrayElement(...) : Object[] [[]] : String | Test.java:4607:16:4607:60 | (...)... : Object[] [[]] : String | provenance | | +| Test.java:4607:44:4607:59 | (...)... : String | Test.java:251:31:251:44 | element : String | provenance | | +| Test.java:4607:44:4607:59 | (...)... : String | Test.java:4607:24:4607:60 | newWithArrayElement(...) : Object[] [[]] : String | provenance | | +| Test.java:4607:52:4607:59 | source(...) : Object | Test.java:4607:44:4607:59 | (...)... : String | provenance | | +| Test.java:4608:10:4608:34 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | Test.java:4609:20:4609:22 | out : ArrayListIterator [] : String | provenance | | +| Test.java:4608:32:4608:33 | in : Object[] [[]] : String | Test.java:4608:10:4608:34 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | provenance | MaD:132 | +| Test.java:4609:20:4609:22 | out : ArrayListIterator [] : String | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | provenance | | +| Test.java:4609:20:4609:22 | out : ArrayListIterator [] : String | Test.java:4609:9:4609:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4614:18:4614:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4615:30:4615:31 | in : ListIterator [] : String | provenance | | +| Test.java:4614:45:4614:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4614:45:4614:60 | (...)... : String | Test.java:4614:18:4614:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4614:53:4614:60 | source(...) : Object | Test.java:4614:45:4614:60 | (...)... : String | provenance | | +| Test.java:4615:10:4615:40 | new BoundedIterator<>(...) : BoundedIterator [] : String | Test.java:4616:20:4616:22 | out : BoundedIterator [] : String | provenance | | +| Test.java:4615:30:4615:31 | in : ListIterator [] : String | Test.java:4615:10:4615:40 | new BoundedIterator<>(...) : BoundedIterator [] : String | provenance | MaD:133 | +| Test.java:4616:20:4616:22 | out : BoundedIterator [] : String | Test.java:231:19:231:32 | it : BoundedIterator [] : String | provenance | | +| Test.java:4616:20:4616:22 | out : BoundedIterator [] : String | Test.java:4616:9:4616:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4621:20:4621:72 | of(...) : List [, ] : String | Test.java:4622:50:4622:51 | in : List [, ] : String | provenance | | +| Test.java:4621:28:4621:71 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4621:20:4621:72 | of(...) : List [, ] : String | provenance | MaD:8 | +| Test.java:4621:55:4621:70 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4621:55:4621:70 | (...)... : String | Test.java:4621:28:4621:71 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4621:63:4621:70 | source(...) : Object | Test.java:4621:55:4621:70 | (...)... : String | provenance | | +| Test.java:4622:10:4622:52 | new CollatingIterator<>(...) : CollatingIterator [] : String | Test.java:4623:20:4623:22 | out : CollatingIterator [] : String | provenance | | +| Test.java:4622:50:4622:51 | in : List [, ] : String | Test.java:4622:10:4622:52 | new CollatingIterator<>(...) : CollatingIterator [] : String | provenance | MaD:134 | +| Test.java:4623:20:4623:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | provenance | | +| Test.java:4623:20:4623:22 | out : CollatingIterator [] : String | Test.java:4623:9:4623:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4628:18:4628:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4629:38:4629:39 | in : ListIterator [] : String | provenance | | +| Test.java:4628:45:4628:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4628:45:4628:60 | (...)... : String | Test.java:4628:18:4628:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4628:53:4628:60 | source(...) : Object | Test.java:4628:45:4628:60 | (...)... : String | provenance | | +| Test.java:4629:10:4629:46 | new CollatingIterator<>(...) : CollatingIterator [] : String | Test.java:4630:20:4630:22 | out : CollatingIterator [] : String | provenance | | +| Test.java:4629:38:4629:39 | in : ListIterator [] : String | Test.java:4629:10:4629:46 | new CollatingIterator<>(...) : CollatingIterator [] : String | provenance | MaD:135 | +| Test.java:4630:20:4630:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | provenance | | +| Test.java:4630:20:4630:22 | out : CollatingIterator [] : String | Test.java:4630:9:4630:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4635:18:4635:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4636:44:4636:45 | in : ListIterator [] : String | provenance | | +| Test.java:4635:45:4635:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4635:45:4635:60 | (...)... : String | Test.java:4635:18:4635:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4635:53:4635:60 | source(...) : Object | Test.java:4635:45:4635:60 | (...)... : String | provenance | | +| Test.java:4636:10:4636:46 | new CollatingIterator<>(...) : CollatingIterator [] : String | Test.java:4637:20:4637:22 | out : CollatingIterator [] : String | provenance | | +| Test.java:4636:44:4636:45 | in : ListIterator [] : String | Test.java:4636:10:4636:46 | new CollatingIterator<>(...) : CollatingIterator [] : String | provenance | MaD:136 | +| Test.java:4637:20:4637:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | provenance | | +| Test.java:4637:20:4637:22 | out : CollatingIterator [] : String | Test.java:4637:9:4637:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4642:20:4642:79 | {...} : Iterator[] [[], ] : String | Test.java:4643:50:4643:51 | in : Iterator[] [[], ] : String | provenance | | +| Test.java:4642:35:4642:78 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4642:20:4642:79 | {...} : Iterator[] [[], ] : String | provenance | | +| Test.java:4642:62:4642:77 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4642:62:4642:77 | (...)... : String | Test.java:4642:35:4642:78 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4642:70:4642:77 | source(...) : Object | Test.java:4642:62:4642:77 | (...)... : String | provenance | | +| Test.java:4643:10:4643:52 | new CollatingIterator<>(...) : CollatingIterator [] : String | Test.java:4644:20:4644:22 | out : CollatingIterator [] : String | provenance | | +| Test.java:4643:50:4643:51 | in : Iterator[] [[], ] : String | Test.java:4643:10:4643:52 | new CollatingIterator<>(...) : CollatingIterator [] : String | provenance | MaD:137 | +| Test.java:4644:20:4644:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | provenance | | +| Test.java:4644:20:4644:22 | out : CollatingIterator [] : String | Test.java:4644:9:4644:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4649:18:4649:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4650:20:4650:21 | in : ListIterator [] : String | provenance | | +| Test.java:4649:45:4649:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4649:45:4649:60 | (...)... : String | Test.java:4649:18:4649:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4649:53:4649:60 | source(...) : Object | Test.java:4649:45:4649:60 | (...)... : String | provenance | | +| Test.java:4650:4:4650:6 | out [post update] : CollatingIterator [] : String | Test.java:4651:20:4651:22 | out : CollatingIterator [] : String | provenance | | +| Test.java:4650:20:4650:21 | in : ListIterator [] : String | Test.java:4650:4:4650:6 | out [post update] : CollatingIterator [] : String | provenance | MaD:138 | +| Test.java:4651:20:4651:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | provenance | | +| Test.java:4651:20:4651:22 | out : CollatingIterator [] : String | Test.java:4651:9:4651:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4656:27:4656:120 | new CollatingIterator<>(...) : CollatingIterator [] : String | Test.java:4657:10:4657:11 | in : CollatingIterator [] : String | provenance | | +| Test.java:4656:67:4656:119 | of(...) : List [, ] : String | Test.java:4656:27:4656:120 | new CollatingIterator<>(...) : CollatingIterator [] : String | provenance | MaD:134 | +| Test.java:4656:75:4656:118 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4656:67:4656:119 | of(...) : List [, ] : String | provenance | MaD:8 | +| Test.java:4656:102:4656:117 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4656:102:4656:117 | (...)... : String | Test.java:4656:75:4656:118 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4656:110:4656:117 | source(...) : Object | Test.java:4656:102:4656:117 | (...)... : String | provenance | | +| Test.java:4657:10:4657:11 | in : CollatingIterator [] : String | Test.java:4657:10:4657:26 | getIterators(...) : List [, ] : String | provenance | MaD:139 | +| Test.java:4657:10:4657:26 | getIterators(...) : List [, ] : String | Test.java:4658:31:4658:33 | out : List [, ] : String | provenance | | +| Test.java:4658:20:4658:34 | getElement(...) : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | +| Test.java:4658:20:4658:34 | getElement(...) : Iterator [] : String | Test.java:4658:9:4658:35 | getElement(...) | provenance | MaD:7 | +| Test.java:4658:31:4658:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | provenance | | +| Test.java:4658:31:4658:33 | out : List [, ] : String | Test.java:4658:20:4658:34 | getElement(...) : Iterator [] : String | provenance | MaD:3 | +| Test.java:4663:18:4663:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4664:23:4664:24 | in : ListIterator [] : String | provenance | | +| Test.java:4663:45:4663:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4663:45:4663:60 | (...)... : String | Test.java:4663:18:4663:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4663:53:4663:60 | source(...) : Object | Test.java:4663:45:4663:60 | (...)... : String | provenance | | +| Test.java:4664:4:4664:6 | out [post update] : CollatingIterator [] : String | Test.java:4665:20:4665:22 | out : CollatingIterator [] : String | provenance | | +| Test.java:4664:23:4664:24 | in : ListIterator [] : String | Test.java:4664:4:4664:6 | out [post update] : CollatingIterator [] : String | provenance | MaD:140 | +| Test.java:4665:20:4665:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | provenance | | +| Test.java:4665:20:4665:22 | out : CollatingIterator [] : String | Test.java:4665:9:4665:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4670:21:4670:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:4671:34:4671:35 | in : IteratorEnumeration [] : String | provenance | | +| Test.java:4670:47:4670:62 | (...)... : String | Test.java:256:47:256:55 | element : String | provenance | | +| Test.java:4670:47:4670:62 | (...)... : String | Test.java:4670:21:4670:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | +| Test.java:4670:55:4670:62 | source(...) : Object | Test.java:4670:47:4670:62 | (...)... : String | provenance | | +| Test.java:4671:10:4671:42 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | Test.java:4672:20:4672:22 | out : EnumerationIterator [] : String | provenance | | +| Test.java:4671:34:4671:35 | in : IteratorEnumeration [] : String | Test.java:4671:10:4671:42 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | provenance | MaD:141 | +| Test.java:4672:20:4672:22 | out : EnumerationIterator [] : String | Test.java:231:19:231:32 | it : EnumerationIterator [] : String | provenance | | +| Test.java:4672:20:4672:22 | out : EnumerationIterator [] : String | Test.java:4672:9:4672:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4677:21:4677:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:4678:34:4678:35 | in : IteratorEnumeration [] : String | provenance | | +| Test.java:4677:47:4677:62 | (...)... : String | Test.java:256:47:256:55 | element : String | provenance | | +| Test.java:4677:47:4677:62 | (...)... : String | Test.java:4677:21:4677:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | +| Test.java:4677:55:4677:62 | source(...) : Object | Test.java:4677:47:4677:62 | (...)... : String | provenance | | +| Test.java:4678:10:4678:36 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | Test.java:4679:20:4679:22 | out : EnumerationIterator [] : String | provenance | | +| Test.java:4678:34:4678:35 | in : IteratorEnumeration [] : String | Test.java:4678:10:4678:36 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | provenance | MaD:141 | +| Test.java:4679:20:4679:22 | out : EnumerationIterator [] : String | Test.java:231:19:231:32 | it : EnumerationIterator [] : String | provenance | | +| Test.java:4679:20:4679:22 | out : EnumerationIterator [] : String | Test.java:4679:9:4679:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4684:29:4684:96 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | Test.java:4685:10:4685:11 | in : EnumerationIterator [] : String | provenance | | +| Test.java:4684:53:4684:95 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:4684:29:4684:96 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | provenance | MaD:141 | +| Test.java:4684:79:4684:94 | (...)... : String | Test.java:256:47:256:55 | element : String | provenance | | +| Test.java:4684:79:4684:94 | (...)... : String | Test.java:4684:53:4684:95 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | +| Test.java:4684:87:4684:94 | source(...) : Object | Test.java:4684:79:4684:94 | (...)... : String | provenance | | +| Test.java:4685:10:4685:11 | in : EnumerationIterator [] : String | Test.java:4685:10:4685:28 | getEnumeration(...) : Enumeration [] : String | provenance | MaD:142 | +| Test.java:4685:10:4685:28 | getEnumeration(...) : Enumeration [] : String | Test.java:4686:20:4686:22 | out : Enumeration [] : String | provenance | | +| Test.java:4686:20:4686:22 | out : Enumeration [] : String | Test.java:234:19:234:42 | container : Enumeration [] : String | provenance | | +| Test.java:4686:20:4686:22 | out : Enumeration [] : String | Test.java:4686:9:4686:23 | getElement(...) | provenance | MaD:6 | +| Test.java:4691:21:4691:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | Test.java:4692:23:4692:24 | in : IteratorEnumeration [] : String | provenance | | +| Test.java:4691:47:4691:62 | (...)... : String | Test.java:256:47:256:55 | element : String | provenance | | +| Test.java:4691:47:4691:62 | (...)... : String | Test.java:4691:21:4691:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | provenance | MaD:4 | +| Test.java:4691:55:4691:62 | source(...) : Object | Test.java:4691:47:4691:62 | (...)... : String | provenance | | +| Test.java:4692:4:4692:6 | out [post update] : EnumerationIterator [] : String | Test.java:4693:20:4693:22 | out : EnumerationIterator [] : String | provenance | | +| Test.java:4692:23:4692:24 | in : IteratorEnumeration [] : String | Test.java:4692:4:4692:6 | out [post update] : EnumerationIterator [] : String | provenance | MaD:143 | +| Test.java:4693:20:4693:22 | out : EnumerationIterator [] : String | Test.java:231:19:231:32 | it : EnumerationIterator [] : String | provenance | | +| Test.java:4693:20:4693:22 | out : EnumerationIterator [] : String | Test.java:4693:9:4693:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4698:18:4698:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4699:29:4699:30 | in : ListIterator [] : String | provenance | | +| Test.java:4698:45:4698:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4698:45:4698:60 | (...)... : String | Test.java:4698:18:4698:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4698:53:4698:60 | source(...) : Object | Test.java:4698:45:4698:60 | (...)... : String | provenance | | +| Test.java:4699:10:4699:37 | new FilterIterator<>(...) : FilterIterator [] : String | Test.java:4700:20:4700:22 | out : FilterIterator [] : String | provenance | | +| Test.java:4699:29:4699:30 | in : ListIterator [] : String | Test.java:4699:10:4699:37 | new FilterIterator<>(...) : FilterIterator [] : String | provenance | MaD:144 | +| Test.java:4700:20:4700:22 | out : FilterIterator [] : String | Test.java:231:19:231:32 | it : FilterIterator [] : String | provenance | | +| Test.java:4700:20:4700:22 | out : FilterIterator [] : String | Test.java:4700:9:4700:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4705:18:4705:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4706:29:4706:30 | in : ListIterator [] : String | provenance | | +| Test.java:4705:45:4705:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4705:45:4705:60 | (...)... : String | Test.java:4705:18:4705:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4705:53:4705:60 | source(...) : Object | Test.java:4705:45:4705:60 | (...)... : String | provenance | | +| Test.java:4706:10:4706:31 | new FilterIterator<>(...) : FilterIterator [] : String | Test.java:4707:20:4707:22 | out : FilterIterator [] : String | provenance | | +| Test.java:4706:29:4706:30 | in : ListIterator [] : String | Test.java:4706:10:4706:31 | new FilterIterator<>(...) : FilterIterator [] : String | provenance | MaD:144 | +| Test.java:4707:20:4707:22 | out : FilterIterator [] : String | Test.java:231:19:231:32 | it : FilterIterator [] : String | provenance | | +| Test.java:4707:20:4707:22 | out : FilterIterator [] : String | Test.java:4707:9:4707:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4712:24:4712:87 | new FilterIterator<>(...) : FilterIterator [] : String | Test.java:4713:10:4713:11 | in : FilterIterator [] : String | provenance | | +| Test.java:4712:43:4712:86 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4712:24:4712:87 | new FilterIterator<>(...) : FilterIterator [] : String | provenance | MaD:144 | +| Test.java:4712:70:4712:85 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4712:70:4712:85 | (...)... : String | Test.java:4712:43:4712:86 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4712:78:4712:85 | source(...) : Object | Test.java:4712:70:4712:85 | (...)... : String | provenance | | +| Test.java:4713:10:4713:11 | in : FilterIterator [] : String | Test.java:4713:10:4713:25 | getIterator(...) : Iterator [] : String | provenance | MaD:145 | +| Test.java:4713:10:4713:25 | getIterator(...) : Iterator [] : String | Test.java:4714:20:4714:22 | out : Iterator [] : String | provenance | | +| Test.java:4714:20:4714:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | +| Test.java:4714:20:4714:22 | out : Iterator [] : String | Test.java:4714:9:4714:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4719:18:4719:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4720:20:4720:21 | in : ListIterator [] : String | provenance | | +| Test.java:4719:45:4719:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4719:45:4719:60 | (...)... : String | Test.java:4719:18:4719:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4719:53:4719:60 | source(...) : Object | Test.java:4719:45:4719:60 | (...)... : String | provenance | | +| Test.java:4720:4:4720:6 | out [post update] : FilterIterator [] : String | Test.java:4721:20:4721:22 | out : FilterIterator [] : String | provenance | | +| Test.java:4720:20:4720:21 | in : ListIterator [] : String | Test.java:4720:4:4720:6 | out [post update] : FilterIterator [] : String | provenance | MaD:146 | +| Test.java:4721:20:4721:22 | out : FilterIterator [] : String | Test.java:231:19:231:32 | it : FilterIterator [] : String | provenance | | +| Test.java:4721:20:4721:22 | out : FilterIterator [] : String | Test.java:4721:9:4721:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4726:22:4726:65 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4727:33:4727:34 | in : ListIterator [] : String | provenance | | +| Test.java:4726:49:4726:64 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4726:49:4726:64 | (...)... : String | Test.java:4726:22:4726:65 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4726:57:4726:64 | source(...) : Object | Test.java:4726:49:4726:64 | (...)... : String | provenance | | +| Test.java:4727:10:4727:35 | new FilterListIterator<>(...) : FilterListIterator [] : String | Test.java:4728:20:4728:22 | out : FilterListIterator [] : String | provenance | | +| Test.java:4727:33:4727:34 | in : ListIterator [] : String | Test.java:4727:10:4727:35 | new FilterListIterator<>(...) : FilterListIterator [] : String | provenance | MaD:147 | +| Test.java:4728:20:4728:22 | out : FilterListIterator [] : String | Test.java:231:19:231:32 | it : FilterListIterator [] : String | provenance | | +| Test.java:4728:20:4728:22 | out : FilterListIterator [] : String | Test.java:4728:9:4728:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4733:22:4733:65 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4734:33:4734:34 | in : ListIterator [] : String | provenance | | +| Test.java:4733:49:4733:64 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4733:49:4733:64 | (...)... : String | Test.java:4733:22:4733:65 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4733:57:4733:64 | source(...) : Object | Test.java:4733:49:4733:64 | (...)... : String | provenance | | +| Test.java:4734:10:4734:41 | new FilterListIterator<>(...) : FilterListIterator [] : String | Test.java:4735:20:4735:22 | out : FilterListIterator [] : String | provenance | | +| Test.java:4734:33:4734:34 | in : ListIterator [] : String | Test.java:4734:10:4734:41 | new FilterListIterator<>(...) : FilterListIterator [] : String | provenance | MaD:148 | +| Test.java:4735:20:4735:22 | out : FilterListIterator [] : String | Test.java:231:19:231:32 | it : FilterListIterator [] : String | provenance | | +| Test.java:4735:20:4735:22 | out : FilterListIterator [] : String | Test.java:4735:9:4735:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4740:28:4740:95 | new FilterListIterator<>(...) : FilterListIterator [] : String | Test.java:4741:10:4741:11 | in : FilterListIterator [] : String | provenance | | +| Test.java:4740:51:4740:94 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4740:28:4740:95 | new FilterListIterator<>(...) : FilterListIterator [] : String | provenance | MaD:147 | +| Test.java:4740:78:4740:93 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4740:78:4740:93 | (...)... : String | Test.java:4740:51:4740:94 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4740:86:4740:93 | source(...) : Object | Test.java:4740:78:4740:93 | (...)... : String | provenance | | +| Test.java:4741:10:4741:11 | in : FilterListIterator [] : String | Test.java:4741:10:4741:29 | getListIterator(...) : ListIterator [] : String | provenance | MaD:149 | +| Test.java:4741:10:4741:29 | getListIterator(...) : ListIterator [] : String | Test.java:4742:20:4742:22 | out : ListIterator [] : String | provenance | | +| Test.java:4742:20:4742:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | provenance | | +| Test.java:4742:20:4742:22 | out : ListIterator [] : String | Test.java:4742:9:4742:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4747:22:4747:65 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4748:24:4748:25 | in : ListIterator [] : String | provenance | | +| Test.java:4747:49:4747:64 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4747:49:4747:64 | (...)... : String | Test.java:4747:22:4747:65 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4747:57:4747:64 | source(...) : Object | Test.java:4747:49:4747:64 | (...)... : String | provenance | | +| Test.java:4748:4:4748:6 | out [post update] : FilterListIterator [] : String | Test.java:4749:20:4749:22 | out : FilterListIterator [] : String | provenance | | +| Test.java:4748:24:4748:25 | in : ListIterator [] : String | Test.java:4748:4:4748:6 | out [post update] : FilterListIterator [] : String | provenance | MaD:150 | +| Test.java:4749:20:4749:22 | out : FilterListIterator [] : String | Test.java:231:19:231:32 | it : FilterListIterator [] : String | provenance | | +| Test.java:4749:20:4749:22 | out : FilterListIterator [] : String | Test.java:4749:9:4749:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4754:20:4754:86 | newTreeBagWithElement(...) : TreeBag [, ] : String | Test.java:4755:28:4755:29 | in : TreeBag [, ] : String | provenance | | +| Test.java:4754:42:4754:85 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:267:39:267:47 | element : ListIterator [] : String | provenance | | +| Test.java:4754:42:4754:85 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4754:20:4754:86 | newTreeBagWithElement(...) : TreeBag [, ] : String | provenance | MaD:4 | +| Test.java:4754:42:4754:85 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4754:20:4754:86 | newTreeBagWithElement(...) : TreeBag [, ] : String | provenance | MaD:474 | +| Test.java:4754:69:4754:84 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4754:69:4754:84 | (...)... : String | Test.java:4754:42:4754:85 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4754:77:4754:84 | source(...) : Object | Test.java:4754:69:4754:84 | (...)... : String | provenance | | +| Test.java:4755:10:4755:30 | new IteratorChain<>(...) : IteratorChain [] : String | Test.java:4756:20:4756:22 | out : IteratorChain [] : String | provenance | | +| Test.java:4755:28:4755:29 | in : TreeBag [, ] : String | Test.java:4755:10:4755:30 | new IteratorChain<>(...) : IteratorChain [] : String | provenance | MaD:151 | +| Test.java:4756:20:4756:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | provenance | | +| Test.java:4756:20:4756:22 | out : IteratorChain [] : String | Test.java:4756:9:4756:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4761:18:4761:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4762:28:4762:29 | in : ListIterator [] : String | provenance | | +| Test.java:4761:45:4761:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4761:45:4761:60 | (...)... : String | Test.java:4761:18:4761:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4761:53:4761:60 | source(...) : Object | Test.java:4761:45:4761:60 | (...)... : String | provenance | | +| Test.java:4762:10:4762:30 | new IteratorChain<>(...) : IteratorChain [] : String | Test.java:4763:20:4763:22 | out : IteratorChain [] : String | provenance | | +| Test.java:4762:28:4762:29 | in : ListIterator [] : String | Test.java:4762:10:4762:30 | new IteratorChain<>(...) : IteratorChain [] : String | provenance | MaD:152 | +| Test.java:4763:20:4763:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | provenance | | +| Test.java:4763:20:4763:22 | out : IteratorChain [] : String | Test.java:4763:9:4763:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4768:18:4768:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4769:28:4769:29 | in : ListIterator [] : String | provenance | | +| Test.java:4768:45:4768:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4768:45:4768:60 | (...)... : String | Test.java:4768:18:4768:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4768:53:4768:60 | source(...) : Object | Test.java:4768:45:4768:60 | (...)... : String | provenance | | +| Test.java:4769:10:4769:36 | new IteratorChain<>(...) : IteratorChain [] : String | Test.java:4770:20:4770:22 | out : IteratorChain [] : String | provenance | | +| Test.java:4769:28:4769:29 | in : ListIterator [] : String | Test.java:4769:10:4769:36 | new IteratorChain<>(...) : IteratorChain [] : String | provenance | MaD:153 | +| Test.java:4770:20:4770:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | provenance | | +| Test.java:4770:20:4770:22 | out : IteratorChain [] : String | Test.java:4770:9:4770:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4775:18:4775:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4776:34:4776:35 | in : ListIterator [] : String | provenance | | +| Test.java:4775:45:4775:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4775:45:4775:60 | (...)... : String | Test.java:4775:18:4775:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4775:53:4775:60 | source(...) : Object | Test.java:4775:45:4775:60 | (...)... : String | provenance | | +| Test.java:4776:10:4776:36 | new IteratorChain<>(...) : IteratorChain [] : String | Test.java:4777:20:4777:22 | out : IteratorChain [] : String | provenance | | +| Test.java:4776:34:4776:35 | in : ListIterator [] : String | Test.java:4776:10:4776:36 | new IteratorChain<>(...) : IteratorChain [] : String | provenance | MaD:154 | +| Test.java:4777:20:4777:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | provenance | | +| Test.java:4777:20:4777:22 | out : IteratorChain [] : String | Test.java:4777:9:4777:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4782:20:4782:79 | {...} : Iterator[] [[], ] : String | Test.java:4783:28:4783:29 | in : Iterator[] [[], ] : String | provenance | | +| Test.java:4782:35:4782:78 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4782:20:4782:79 | {...} : Iterator[] [[], ] : String | provenance | | +| Test.java:4782:62:4782:77 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4782:62:4782:77 | (...)... : String | Test.java:4782:35:4782:78 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4782:70:4782:77 | source(...) : Object | Test.java:4782:62:4782:77 | (...)... : String | provenance | | +| Test.java:4783:10:4783:30 | new IteratorChain<>(...) : IteratorChain [] : String | Test.java:4784:20:4784:22 | out : IteratorChain [] : String | provenance | | +| Test.java:4783:28:4783:29 | in : Iterator[] [[], ] : String | Test.java:4783:10:4783:30 | new IteratorChain<>(...) : IteratorChain [] : String | provenance | MaD:155 | +| Test.java:4784:20:4784:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | provenance | | +| Test.java:4784:20:4784:22 | out : IteratorChain [] : String | Test.java:4784:9:4784:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4789:18:4789:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4790:20:4790:21 | in : ListIterator [] : String | provenance | | +| Test.java:4789:45:4789:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4789:45:4789:60 | (...)... : String | Test.java:4789:18:4789:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4789:53:4789:60 | source(...) : Object | Test.java:4789:45:4789:60 | (...)... : String | provenance | | +| Test.java:4790:4:4790:6 | out [post update] : IteratorChain [] : String | Test.java:4791:20:4791:22 | out : IteratorChain [] : String | provenance | | +| Test.java:4790:20:4790:21 | in : ListIterator [] : String | Test.java:4790:4:4790:6 | out [post update] : IteratorChain [] : String | provenance | MaD:156 | +| Test.java:4791:20:4791:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | provenance | | +| Test.java:4791:20:4791:22 | out : IteratorChain [] : String | Test.java:4791:9:4791:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4796:18:4796:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4797:34:4797:35 | in : ListIterator [] : String | provenance | | +| Test.java:4796:45:4796:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4796:45:4796:60 | (...)... : String | Test.java:4796:18:4796:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4796:53:4796:60 | source(...) : Object | Test.java:4796:45:4796:60 | (...)... : String | provenance | | +| Test.java:4797:10:4797:36 | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | Test.java:4798:20:4798:22 | out : IteratorEnumeration [] : String | provenance | | +| Test.java:4797:34:4797:35 | in : ListIterator [] : String | Test.java:4797:10:4797:36 | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | provenance | MaD:157 | +| Test.java:4798:20:4798:22 | out : IteratorEnumeration [] : String | Test.java:234:19:234:42 | container : IteratorEnumeration [] : String | provenance | | +| Test.java:4798:20:4798:22 | out : IteratorEnumeration [] : String | Test.java:4798:9:4798:23 | getElement(...) | provenance | MaD:6 | +| Test.java:4803:29:4803:97 | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | Test.java:4804:10:4804:11 | in : IteratorEnumeration [] : String | provenance | | +| Test.java:4803:53:4803:96 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4803:29:4803:97 | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | provenance | MaD:157 | +| Test.java:4803:80:4803:95 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4803:80:4803:95 | (...)... : String | Test.java:4803:53:4803:96 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4803:88:4803:95 | source(...) : Object | Test.java:4803:80:4803:95 | (...)... : String | provenance | | +| Test.java:4804:10:4804:11 | in : IteratorEnumeration [] : String | Test.java:4804:10:4804:25 | getIterator(...) : Iterator [] : String | provenance | MaD:158 | +| Test.java:4804:10:4804:25 | getIterator(...) : Iterator [] : String | Test.java:4805:20:4805:22 | out : Iterator [] : String | provenance | | +| Test.java:4805:20:4805:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | +| Test.java:4805:20:4805:22 | out : Iterator [] : String | Test.java:4805:9:4805:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4810:18:4810:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4811:20:4811:21 | in : ListIterator [] : String | provenance | | +| Test.java:4810:45:4810:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4810:45:4810:60 | (...)... : String | Test.java:4810:18:4810:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4810:53:4810:60 | source(...) : Object | Test.java:4810:45:4810:60 | (...)... : String | provenance | | +| Test.java:4811:4:4811:6 | out [post update] : IteratorEnumeration [] : String | Test.java:4812:20:4812:22 | out : IteratorEnumeration [] : String | provenance | | +| Test.java:4811:20:4811:21 | in : ListIterator [] : String | Test.java:4811:4:4811:6 | out [post update] : IteratorEnumeration [] : String | provenance | MaD:159 | +| Test.java:4812:20:4812:22 | out : IteratorEnumeration [] : String | Test.java:234:19:234:42 | container : IteratorEnumeration [] : String | provenance | | +| Test.java:4812:20:4812:22 | out : IteratorEnumeration [] : String | Test.java:4812:9:4812:23 | getElement(...) | provenance | MaD:6 | +| Test.java:4817:18:4817:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4818:31:4818:32 | in : ListIterator [] : String | provenance | | +| Test.java:4817:45:4817:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4817:45:4817:60 | (...)... : String | Test.java:4817:18:4817:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4817:53:4817:60 | source(...) : Object | Test.java:4817:45:4817:60 | (...)... : String | provenance | | +| Test.java:4818:10:4818:40 | new IteratorIterable<>(...) : IteratorIterable [] : String | Test.java:4819:20:4819:22 | out : IteratorIterable [] : String | provenance | | +| Test.java:4818:31:4818:32 | in : ListIterator [] : String | Test.java:4818:10:4818:40 | new IteratorIterable<>(...) : IteratorIterable [] : String | provenance | MaD:160 | +| Test.java:4819:20:4819:22 | out : IteratorIterable [] : String | Test.java:230:19:230:32 | it : IteratorIterable [] : String | provenance | | +| Test.java:4819:20:4819:22 | out : IteratorIterable [] : String | Test.java:4819:9:4819:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4824:18:4824:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4825:31:4825:32 | in : ListIterator [] : String | provenance | | +| Test.java:4824:45:4824:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4824:45:4824:60 | (...)... : String | Test.java:4824:18:4824:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4824:53:4824:60 | source(...) : Object | Test.java:4824:45:4824:60 | (...)... : String | provenance | | +| Test.java:4825:10:4825:33 | new IteratorIterable<>(...) : IteratorIterable [] : String | Test.java:4826:20:4826:22 | out : IteratorIterable [] : String | provenance | | +| Test.java:4825:31:4825:32 | in : ListIterator [] : String | Test.java:4825:10:4825:33 | new IteratorIterable<>(...) : IteratorIterable [] : String | provenance | MaD:160 | +| Test.java:4826:20:4826:22 | out : IteratorIterable [] : String | Test.java:230:19:230:32 | it : IteratorIterable [] : String | provenance | | +| Test.java:4826:20:4826:22 | out : IteratorIterable [] : String | Test.java:4826:9:4826:23 | getElement(...) | provenance | MaD:3 | +| Test.java:4831:18:4831:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4832:34:4832:35 | in : ListIterator [] : String | provenance | | +| Test.java:4831:45:4831:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4831:45:4831:60 | (...)... : String | Test.java:4831:18:4831:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4831:53:4831:60 | source(...) : Object | Test.java:4831:45:4831:60 | (...)... : String | provenance | | +| Test.java:4832:10:4832:36 | new ListIteratorWrapper<>(...) : ListIteratorWrapper [] : String | Test.java:4833:20:4833:22 | out : ListIteratorWrapper [] : String | provenance | | +| Test.java:4832:34:4832:35 | in : ListIterator [] : String | Test.java:4832:10:4832:36 | new ListIteratorWrapper<>(...) : ListIteratorWrapper [] : String | provenance | MaD:161 | +| Test.java:4833:20:4833:22 | out : ListIteratorWrapper [] : String | Test.java:231:19:231:32 | it : ListIteratorWrapper [] : String | provenance | | +| Test.java:4833:20:4833:22 | out : ListIteratorWrapper [] : String | Test.java:4833:9:4833:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4838:20:4838:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:4839:30:4839:31 | in : TreeBag [] : String | provenance | | +| Test.java:4838:42:4838:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:4838:42:4838:57 | (...)... : String | Test.java:4838:20:4838:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:4838:42:4838:57 | (...)... : String | Test.java:4838:20:4838:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:4838:50:4838:57 | source(...) : Object | Test.java:4838:42:4838:57 | (...)... : String | provenance | | +| Test.java:4839:10:4839:32 | new LoopingIterator<>(...) : LoopingIterator [] : String | Test.java:4840:20:4840:22 | out : LoopingIterator [] : String | provenance | | +| Test.java:4839:30:4839:31 | in : TreeBag [] : String | Test.java:4839:10:4839:32 | new LoopingIterator<>(...) : LoopingIterator [] : String | provenance | MaD:162 | +| Test.java:4840:20:4840:22 | out : LoopingIterator [] : String | Test.java:231:19:231:32 | it : LoopingIterator [] : String | provenance | | +| Test.java:4840:20:4840:22 | out : LoopingIterator [] : String | Test.java:4840:9:4840:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4845:14:4845:38 | of(...) : List [] : String | Test.java:4846:34:4846:35 | in : List [] : String | provenance | | +| Test.java:4845:22:4845:37 | (...)... : String | Test.java:4845:14:4845:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:4845:30:4845:37 | source(...) : Object | Test.java:4845:22:4845:37 | (...)... : String | provenance | | +| Test.java:4846:10:4846:36 | new LoopingListIterator<>(...) : LoopingListIterator [] : String | Test.java:4847:20:4847:22 | out : LoopingListIterator [] : String | provenance | | +| Test.java:4846:34:4846:35 | in : List [] : String | Test.java:4846:10:4846:36 | new LoopingListIterator<>(...) : LoopingListIterator [] : String | provenance | MaD:163 | +| Test.java:4847:20:4847:22 | out : LoopingListIterator [] : String | Test.java:231:19:231:32 | it : LoopingListIterator [] : String | provenance | | +| Test.java:4847:20:4847:22 | out : LoopingListIterator [] : String | Test.java:4847:9:4847:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4852:18:4852:47 | {...} : Object[] [[]] : String | Test.java:4853:34:4853:35 | in : Object[] [[]] : String | provenance | | +| Test.java:4852:31:4852:46 | (...)... : String | Test.java:4852:18:4852:47 | {...} : Object[] [[]] : String | provenance | | +| Test.java:4852:39:4852:46 | source(...) : Object | Test.java:4852:31:4852:46 | (...)... : String | provenance | | +| Test.java:4853:10:4853:42 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | Test.java:4854:20:4854:22 | out : ObjectArrayIterator [] : String | provenance | | +| Test.java:4853:34:4853:35 | in : Object[] [[]] : String | Test.java:4853:10:4853:42 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | provenance | MaD:164 | +| Test.java:4854:20:4854:22 | out : ObjectArrayIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayIterator [] : String | provenance | | +| Test.java:4854:20:4854:22 | out : ObjectArrayIterator [] : String | Test.java:4854:9:4854:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4859:18:4859:47 | {...} : Object[] [[]] : String | Test.java:4860:34:4860:35 | in : Object[] [[]] : String | provenance | | +| Test.java:4859:31:4859:46 | (...)... : String | Test.java:4859:18:4859:47 | {...} : Object[] [[]] : String | provenance | | +| Test.java:4859:39:4859:46 | source(...) : Object | Test.java:4859:31:4859:46 | (...)... : String | provenance | | +| Test.java:4860:10:4860:39 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | Test.java:4861:20:4861:22 | out : ObjectArrayIterator [] : String | provenance | | +| Test.java:4860:34:4860:35 | in : Object[] [[]] : String | Test.java:4860:10:4860:39 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | provenance | MaD:164 | +| Test.java:4861:20:4861:22 | out : ObjectArrayIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayIterator [] : String | provenance | | +| Test.java:4861:20:4861:22 | out : ObjectArrayIterator [] : String | Test.java:4861:9:4861:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4866:18:4866:47 | {...} : Object[] [[]] : String | Test.java:4867:34:4867:35 | in : Object[] [[]] : String | provenance | | +| Test.java:4866:31:4866:46 | (...)... : String | Test.java:4866:18:4866:47 | {...} : Object[] [[]] : String | provenance | | +| Test.java:4866:39:4866:46 | source(...) : Object | Test.java:4866:31:4866:46 | (...)... : String | provenance | | +| Test.java:4867:10:4867:36 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | Test.java:4868:20:4868:22 | out : ObjectArrayIterator [] : String | provenance | | +| Test.java:4867:34:4867:35 | in : Object[] [[]] : String | Test.java:4867:10:4867:36 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | provenance | MaD:164 | +| Test.java:4868:20:4868:22 | out : ObjectArrayIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayIterator [] : String | provenance | | +| Test.java:4868:20:4868:22 | out : ObjectArrayIterator [] : String | Test.java:4868:9:4868:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4873:29:4873:83 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | Test.java:4874:10:4874:11 | in : ObjectArrayIterator [] : String | provenance | | +| Test.java:4873:53:4873:82 | new Object[] : Object[] [[]] : String | Test.java:4873:29:4873:83 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | provenance | MaD:164 | +| Test.java:4873:53:4873:82 | {...} : Object[] [[]] : String | Test.java:4873:53:4873:82 | new Object[] : Object[] [[]] : String | provenance | | +| Test.java:4873:66:4873:81 | (...)... : String | Test.java:4873:53:4873:82 | {...} : Object[] [[]] : String | provenance | | +| Test.java:4873:74:4873:81 | source(...) : Object | Test.java:4873:66:4873:81 | (...)... : String | provenance | | +| Test.java:4874:10:4874:11 | in : ObjectArrayIterator [] : String | Test.java:4874:10:4874:22 | getArray(...) : Object[] [[]] : String | provenance | MaD:165 | +| Test.java:4874:10:4874:22 | getArray(...) : Object[] [[]] : String | Test.java:4875:25:4875:27 | out : Object[] [[]] : String | provenance | | +| Test.java:4875:25:4875:27 | out : Object[] [[]] : String | Test.java:229:24:229:32 | array : Object[] [[]] : String | provenance | | +| Test.java:4875:25:4875:27 | out : Object[] [[]] : String | Test.java:4875:9:4875:28 | getArrayElement(...) | provenance | | +| Test.java:4880:18:4880:47 | {...} : Object[] [[]] : String | Test.java:4881:38:4881:39 | in : Object[] [[]] : String | provenance | | +| Test.java:4880:31:4880:46 | (...)... : String | Test.java:4880:18:4880:47 | {...} : Object[] [[]] : String | provenance | | +| Test.java:4880:39:4880:46 | source(...) : Object | Test.java:4880:31:4880:46 | (...)... : String | provenance | | +| Test.java:4881:10:4881:46 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | Test.java:4882:20:4882:22 | out : ObjectArrayListIterator [] : String | provenance | | +| Test.java:4881:38:4881:39 | in : Object[] [[]] : String | Test.java:4881:10:4881:46 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | provenance | MaD:166 | +| Test.java:4882:20:4882:22 | out : ObjectArrayListIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayListIterator [] : String | provenance | | +| Test.java:4882:20:4882:22 | out : ObjectArrayListIterator [] : String | Test.java:4882:9:4882:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4887:18:4887:47 | {...} : Object[] [[]] : String | Test.java:4888:38:4888:39 | in : Object[] [[]] : String | provenance | | +| Test.java:4887:31:4887:46 | (...)... : String | Test.java:4887:18:4887:47 | {...} : Object[] [[]] : String | provenance | | +| Test.java:4887:39:4887:46 | source(...) : Object | Test.java:4887:31:4887:46 | (...)... : String | provenance | | +| Test.java:4888:10:4888:43 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | Test.java:4889:20:4889:22 | out : ObjectArrayListIterator [] : String | provenance | | +| Test.java:4888:38:4888:39 | in : Object[] [[]] : String | Test.java:4888:10:4888:43 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | provenance | MaD:166 | +| Test.java:4889:20:4889:22 | out : ObjectArrayListIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayListIterator [] : String | provenance | | +| Test.java:4889:20:4889:22 | out : ObjectArrayListIterator [] : String | Test.java:4889:9:4889:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4894:18:4894:47 | {...} : Object[] [[]] : String | Test.java:4895:38:4895:39 | in : Object[] [[]] : String | provenance | | +| Test.java:4894:31:4894:46 | (...)... : String | Test.java:4894:18:4894:47 | {...} : Object[] [[]] : String | provenance | | +| Test.java:4894:39:4894:46 | source(...) : Object | Test.java:4894:31:4894:46 | (...)... : String | provenance | | +| Test.java:4895:10:4895:40 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | Test.java:4896:20:4896:22 | out : ObjectArrayListIterator [] : String | provenance | | +| Test.java:4895:38:4895:39 | in : Object[] [[]] : String | Test.java:4895:10:4895:40 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | provenance | MaD:166 | +| Test.java:4896:20:4896:22 | out : ObjectArrayListIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayListIterator [] : String | provenance | | +| Test.java:4896:20:4896:22 | out : ObjectArrayListIterator [] : String | Test.java:4896:9:4896:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4901:18:4901:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4902:30:4902:31 | in : ListIterator [] : String | provenance | | +| Test.java:4901:45:4901:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4901:45:4901:60 | (...)... : String | Test.java:4901:18:4901:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4901:53:4901:60 | source(...) : Object | Test.java:4901:45:4901:60 | (...)... : String | provenance | | +| Test.java:4902:10:4902:32 | new PeekingIterator<>(...) : PeekingIterator [] : String | Test.java:4903:20:4903:22 | out : PeekingIterator [] : String | provenance | | +| Test.java:4902:30:4902:31 | in : ListIterator [] : String | Test.java:4902:10:4902:32 | new PeekingIterator<>(...) : PeekingIterator [] : String | provenance | MaD:167 | +| Test.java:4903:20:4903:22 | out : PeekingIterator [] : String | Test.java:231:19:231:32 | it : PeekingIterator [] : String | provenance | | +| Test.java:4903:20:4903:22 | out : PeekingIterator [] : String | Test.java:4903:9:4903:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4908:25:4908:89 | new PeekingIterator<>(...) : PeekingIterator [] : String | Test.java:4909:10:4909:11 | in : PeekingIterator [] : String | provenance | | +| Test.java:4908:45:4908:88 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4908:25:4908:89 | new PeekingIterator<>(...) : PeekingIterator [] : String | provenance | MaD:167 | +| Test.java:4908:72:4908:87 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4908:72:4908:87 | (...)... : String | Test.java:4908:45:4908:88 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4908:80:4908:87 | source(...) : Object | Test.java:4908:72:4908:87 | (...)... : String | provenance | | +| Test.java:4909:10:4909:11 | in : PeekingIterator [] : String | Test.java:4909:10:4909:21 | element(...) : String | provenance | MaD:168 | +| Test.java:4909:10:4909:21 | element(...) : String | Test.java:4910:9:4910:11 | out | provenance | | +| Test.java:4915:25:4915:89 | new PeekingIterator<>(...) : PeekingIterator [] : String | Test.java:4916:10:4916:11 | in : PeekingIterator [] : String | provenance | | +| Test.java:4915:45:4915:88 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4915:25:4915:89 | new PeekingIterator<>(...) : PeekingIterator [] : String | provenance | MaD:167 | +| Test.java:4915:72:4915:87 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4915:72:4915:87 | (...)... : String | Test.java:4915:45:4915:88 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4915:80:4915:87 | source(...) : Object | Test.java:4915:72:4915:87 | (...)... : String | provenance | | +| Test.java:4916:10:4916:11 | in : PeekingIterator [] : String | Test.java:4916:10:4916:18 | peek(...) : String | provenance | MaD:169 | +| Test.java:4916:10:4916:18 | peek(...) : String | Test.java:4917:9:4917:11 | out | provenance | | +| Test.java:4922:18:4922:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4923:42:4923:43 | in : ListIterator [] : String | provenance | | +| Test.java:4922:45:4922:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4922:45:4922:60 | (...)... : String | Test.java:4922:18:4922:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4922:53:4922:60 | source(...) : Object | Test.java:4922:45:4922:60 | (...)... : String | provenance | | +| Test.java:4923:10:4923:44 | peekingIterator(...) : PeekingIterator [] : String | Test.java:4924:20:4924:22 | out : PeekingIterator [] : String | provenance | | +| Test.java:4923:42:4923:43 | in : ListIterator [] : String | Test.java:4923:10:4923:44 | peekingIterator(...) : PeekingIterator [] : String | provenance | MaD:170 | +| Test.java:4924:20:4924:22 | out : PeekingIterator [] : String | Test.java:231:19:231:32 | it : PeekingIterator [] : String | provenance | | +| Test.java:4924:20:4924:22 | out : PeekingIterator [] : String | Test.java:4924:9:4924:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4929:28:4929:60 | of(...) : List [] : String | Test.java:4930:34:4930:35 | in : List [] : String | provenance | | +| Test.java:4929:44:4929:59 | (...)... : String | Test.java:4929:28:4929:60 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:4929:52:4929:59 | source(...) : Object | Test.java:4929:44:4929:59 | (...)... : String | provenance | | +| Test.java:4930:10:4930:36 | new PermutationIterator<>(...) : PermutationIterator [, ] : String | Test.java:4931:31:4931:33 | out : PermutationIterator [, ] : String | provenance | | +| Test.java:4930:34:4930:35 | in : List [] : String | Test.java:4930:10:4930:36 | new PermutationIterator<>(...) : PermutationIterator [, ] : String | provenance | MaD:171 | +| Test.java:4931:20:4931:34 | getElement(...) : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | +| Test.java:4931:20:4931:34 | getElement(...) : List [] : String | Test.java:4931:9:4931:35 | getElement(...) | provenance | MaD:3 | +| Test.java:4931:31:4931:33 | out : PermutationIterator [, ] : String | Test.java:231:19:231:32 | it : PermutationIterator [, ] : String | provenance | | +| Test.java:4931:31:4931:33 | out : PermutationIterator [, ] : String | Test.java:4931:20:4931:34 | getElement(...) : List [] : String | provenance | MaD:7 | +| Test.java:4936:18:4936:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4937:31:4937:32 | in : ListIterator [] : String | provenance | | +| Test.java:4936:45:4936:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4936:45:4936:60 | (...)... : String | Test.java:4936:18:4936:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4936:53:4936:60 | source(...) : Object | Test.java:4936:45:4936:60 | (...)... : String | provenance | | +| Test.java:4937:10:4937:33 | new PushbackIterator<>(...) : PushbackIterator [] : String | Test.java:4938:20:4938:22 | out : PushbackIterator [] : String | provenance | | +| Test.java:4937:31:4937:32 | in : ListIterator [] : String | Test.java:4937:10:4937:33 | new PushbackIterator<>(...) : PushbackIterator [] : String | provenance | MaD:172 | +| Test.java:4938:20:4938:22 | out : PushbackIterator [] : String | Test.java:231:19:231:32 | it : PushbackIterator [] : String | provenance | | +| Test.java:4938:20:4938:22 | out : PushbackIterator [] : String | Test.java:4938:9:4938:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4943:16:4943:23 | source(...) : Object | Test.java:4944:17:4944:18 | in : Object | provenance | | +| Test.java:4944:4:4944:6 | out [post update] : PushbackIterator [] : Object | Test.java:4945:20:4945:22 | out : PushbackIterator [] : Object | provenance | | +| Test.java:4944:17:4944:18 | in : Object | Test.java:4944:4:4944:6 | out [post update] : PushbackIterator [] : Object | provenance | MaD:173 | +| Test.java:4945:20:4945:22 | out : PushbackIterator [] : Object | Test.java:231:19:231:32 | it : PushbackIterator [] : Object | provenance | | +| Test.java:4945:20:4945:22 | out : PushbackIterator [] : Object | Test.java:4945:9:4945:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4950:18:4950:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4951:44:4951:45 | in : ListIterator [] : String | provenance | | +| Test.java:4950:45:4950:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4950:45:4950:60 | (...)... : String | Test.java:4950:18:4950:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4950:53:4950:60 | source(...) : Object | Test.java:4950:45:4950:60 | (...)... : String | provenance | | +| Test.java:4951:10:4951:46 | pushbackIterator(...) : PushbackIterator [] : String | Test.java:4952:20:4952:22 | out : PushbackIterator [] : String | provenance | | +| Test.java:4951:44:4951:45 | in : ListIterator [] : String | Test.java:4951:10:4951:46 | pushbackIterator(...) : PushbackIterator [] : String | provenance | MaD:174 | +| Test.java:4952:20:4952:22 | out : PushbackIterator [] : String | Test.java:231:19:231:32 | it : PushbackIterator [] : String | provenance | | +| Test.java:4952:20:4952:22 | out : PushbackIterator [] : String | Test.java:4952:9:4952:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4957:14:4957:38 | of(...) : List [] : String | Test.java:4958:34:4958:35 | in : List [] : String | provenance | | +| Test.java:4957:22:4957:37 | (...)... : String | Test.java:4957:14:4957:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:4957:30:4957:37 | source(...) : Object | Test.java:4957:22:4957:37 | (...)... : String | provenance | | +| Test.java:4958:10:4958:36 | new ReverseListIterator<>(...) : ReverseListIterator [] : String | Test.java:4959:20:4959:22 | out : ReverseListIterator [] : String | provenance | | +| Test.java:4958:34:4958:35 | in : List [] : String | Test.java:4958:10:4958:36 | new ReverseListIterator<>(...) : ReverseListIterator [] : String | provenance | MaD:175 | +| Test.java:4959:20:4959:22 | out : ReverseListIterator [] : String | Test.java:231:19:231:32 | it : ReverseListIterator [] : String | provenance | | +| Test.java:4959:20:4959:22 | out : ReverseListIterator [] : String | Test.java:4959:9:4959:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4964:16:4964:23 | source(...) : Object | Test.java:4965:32:4965:33 | in : Object | provenance | | +| Test.java:4965:10:4965:41 | new SingletonIterator<>(...) : SingletonIterator [] : Object | Test.java:4966:20:4966:22 | out : SingletonIterator [] : Object | provenance | | +| Test.java:4965:32:4965:33 | in : Object | Test.java:4965:10:4965:41 | new SingletonIterator<>(...) : SingletonIterator [] : Object | provenance | MaD:176 | +| Test.java:4966:20:4966:22 | out : SingletonIterator [] : Object | Test.java:231:19:231:32 | it : SingletonIterator [] : Object | provenance | | +| Test.java:4966:20:4966:22 | out : SingletonIterator [] : Object | Test.java:4966:9:4966:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4971:16:4971:23 | source(...) : Object | Test.java:4972:32:4972:33 | in : Object | provenance | | +| Test.java:4972:10:4972:34 | new SingletonIterator<>(...) : SingletonIterator [] : Object | Test.java:4973:20:4973:22 | out : SingletonIterator [] : Object | provenance | | +| Test.java:4972:32:4972:33 | in : Object | Test.java:4972:10:4972:34 | new SingletonIterator<>(...) : SingletonIterator [] : Object | provenance | MaD:176 | +| Test.java:4973:20:4973:22 | out : SingletonIterator [] : Object | Test.java:231:19:231:32 | it : SingletonIterator [] : Object | provenance | | +| Test.java:4973:20:4973:22 | out : SingletonIterator [] : Object | Test.java:4973:9:4973:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4978:16:4978:23 | source(...) : Object | Test.java:4979:36:4979:37 | in : Object | provenance | | +| Test.java:4979:10:4979:38 | new SingletonListIterator<>(...) : SingletonListIterator [] : Object | Test.java:4980:20:4980:22 | out : SingletonListIterator [] : Object | provenance | | +| Test.java:4979:36:4979:37 | in : Object | Test.java:4979:10:4979:38 | new SingletonListIterator<>(...) : SingletonListIterator [] : Object | provenance | MaD:177 | +| Test.java:4980:20:4980:22 | out : SingletonListIterator [] : Object | Test.java:231:19:231:32 | it : SingletonListIterator [] : Object | provenance | | +| Test.java:4980:20:4980:22 | out : SingletonListIterator [] : Object | Test.java:4980:9:4980:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4985:18:4985:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4986:31:4986:32 | in : ListIterator [] : String | provenance | | +| Test.java:4985:45:4985:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4985:45:4985:60 | (...)... : String | Test.java:4985:18:4985:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4985:53:4985:60 | source(...) : Object | Test.java:4985:45:4985:60 | (...)... : String | provenance | | +| Test.java:4986:10:4986:37 | new SkippingIterator<>(...) : SkippingIterator [] : String | Test.java:4987:20:4987:22 | out : SkippingIterator [] : String | provenance | | +| Test.java:4986:31:4986:32 | in : ListIterator [] : String | Test.java:4986:10:4986:37 | new SkippingIterator<>(...) : SkippingIterator [] : String | provenance | MaD:178 | +| Test.java:4987:20:4987:22 | out : SkippingIterator [] : String | Test.java:231:19:231:32 | it : SkippingIterator [] : String | provenance | | +| Test.java:4987:20:4987:22 | out : SkippingIterator [] : String | Test.java:4987:9:4987:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4992:18:4992:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:4993:35:4993:36 | in : ListIterator [] : String | provenance | | +| Test.java:4992:45:4992:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4992:45:4992:60 | (...)... : String | Test.java:4992:18:4992:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4992:53:4992:60 | source(...) : Object | Test.java:4992:45:4992:60 | (...)... : String | provenance | | +| Test.java:4993:10:4993:37 | new UniqueFilterIterator<>(...) : UniqueFilterIterator [] : String | Test.java:4994:20:4994:22 | out : UniqueFilterIterator [] : String | provenance | | +| Test.java:4993:35:4993:36 | in : ListIterator [] : String | Test.java:4993:10:4993:37 | new UniqueFilterIterator<>(...) : UniqueFilterIterator [] : String | provenance | MaD:179 | +| Test.java:4994:20:4994:22 | out : UniqueFilterIterator [] : String | Test.java:231:19:231:32 | it : UniqueFilterIterator [] : String | provenance | | +| Test.java:4994:20:4994:22 | out : UniqueFilterIterator [] : String | Test.java:4994:9:4994:23 | getElement(...) | provenance | MaD:7 | +| Test.java:4999:18:4999:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5000:52:5000:53 | in : ListIterator [] : String | provenance | | +| Test.java:4999:45:4999:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:4999:45:4999:60 | (...)... : String | Test.java:4999:18:4999:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:4999:53:4999:60 | source(...) : Object | Test.java:4999:45:4999:60 | (...)... : String | provenance | | +| Test.java:5000:10:5000:54 | unmodifiableIterator(...) : Iterator [] : String | Test.java:5001:20:5001:22 | out : Iterator [] : String | provenance | | +| Test.java:5000:52:5000:53 | in : ListIterator [] : String | Test.java:5000:10:5000:54 | unmodifiableIterator(...) : Iterator [] : String | provenance | MaD:180 | +| Test.java:5001:20:5001:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | +| Test.java:5001:20:5001:22 | out : Iterator [] : String | Test.java:5001:9:5001:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5006:22:5006:65 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5007:59:5007:60 | in : ListIterator [] : String | provenance | | +| Test.java:5006:49:5006:64 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:5006:49:5006:64 | (...)... : String | Test.java:5006:22:5006:65 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:5006:57:5006:64 | source(...) : Object | Test.java:5006:49:5006:64 | (...)... : String | provenance | | +| Test.java:5007:10:5007:61 | umodifiableListIterator(...) : ListIterator [] : String | Test.java:5008:20:5008:22 | out : ListIterator [] : String | provenance | | +| Test.java:5007:59:5007:60 | in : ListIterator [] : String | Test.java:5007:10:5007:61 | umodifiableListIterator(...) : ListIterator [] : String | provenance | MaD:181 | +| Test.java:5008:20:5008:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | provenance | | +| Test.java:5008:20:5008:22 | out : ListIterator [] : String | Test.java:5008:9:5008:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5013:21:5013:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | Test.java:5013:21:5013:74 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:566 | +| Test.java:5013:21:5013:74 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:5014:58:5014:59 | in : OrderedMapIterator [] : String | provenance | | +| Test.java:5013:44:5013:59 | (...)... : String | Test.java:276:49:276:53 | key : String | provenance | | +| Test.java:5013:44:5013:59 | (...)... : String | Test.java:5013:21:5013:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | provenance | MaD:14 | +| Test.java:5013:52:5013:59 | source(...) : Object | Test.java:5013:44:5013:59 | (...)... : String | provenance | | +| Test.java:5014:10:5014:60 | unmodifiableMapIterator(...) : MapIterator [] : String | Test.java:5015:20:5015:22 | out : MapIterator [] : String | provenance | | +| Test.java:5014:58:5014:59 | in : OrderedMapIterator [] : String | Test.java:5014:10:5014:60 | unmodifiableMapIterator(...) : MapIterator [] : String | provenance | MaD:182 | +| Test.java:5015:20:5015:22 | out : MapIterator [] : String | Test.java:231:19:231:32 | it : MapIterator [] : String | provenance | | +| Test.java:5015:20:5015:22 | out : MapIterator [] : String | Test.java:5015:9:5015:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5020:21:5020:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | Test.java:5020:21:5020:76 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:567 | +| Test.java:5020:21:5020:76 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:5021:58:5021:59 | in : OrderedMapIterator [] : String | provenance | | +| Test.java:5020:46:5020:61 | (...)... : String | Test.java:295:51:295:57 | value : String | provenance | | +| Test.java:5020:46:5020:61 | (...)... : String | Test.java:5020:21:5020:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | provenance | MaD:15 | +| Test.java:5020:54:5020:61 | source(...) : Object | Test.java:5020:46:5020:61 | (...)... : String | provenance | | +| Test.java:5021:10:5021:60 | unmodifiableMapIterator(...) : MapIterator [] : String | Test.java:5022:21:5022:23 | out : MapIterator [] : String | provenance | | +| Test.java:5021:58:5021:59 | in : OrderedMapIterator [] : String | Test.java:5021:10:5021:60 | unmodifiableMapIterator(...) : MapIterator [] : String | provenance | MaD:183 | +| Test.java:5022:21:5022:23 | out : MapIterator [] : String | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | provenance | | +| Test.java:5022:21:5022:23 | out : MapIterator [] : String | Test.java:5022:9:5022:24 | getMapValue(...) | provenance | MaD:677 | +| Test.java:5027:28:5027:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:5027:28:5027:86 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:566 | +| Test.java:5027:28:5027:86 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:5028:72:5028:73 | in : OrderedMapIterator [] : String | provenance | | +| Test.java:5027:56:5027:71 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | +| Test.java:5027:56:5027:71 | (...)... : String | Test.java:5027:28:5027:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:14 | +| Test.java:5027:64:5027:71 | source(...) : Object | Test.java:5027:56:5027:71 | (...)... : String | provenance | | +| Test.java:5028:10:5028:74 | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | Test.java:5029:20:5029:22 | out : OrderedMapIterator [] : String | provenance | | +| Test.java:5028:72:5028:73 | in : OrderedMapIterator [] : String | Test.java:5028:10:5028:74 | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:184 | +| Test.java:5029:20:5029:22 | out : OrderedMapIterator [] : String | Test.java:231:19:231:32 | it : OrderedMapIterator [] : String | provenance | | +| Test.java:5029:20:5029:22 | out : OrderedMapIterator [] : String | Test.java:5029:9:5029:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5034:28:5034:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:5034:28:5034:88 | mapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:567 | +| Test.java:5034:28:5034:88 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:5035:72:5035:73 | in : OrderedMapIterator [] : String | provenance | | +| Test.java:5034:58:5034:73 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | +| Test.java:5034:58:5034:73 | (...)... : String | Test.java:5034:28:5034:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:15 | +| Test.java:5034:66:5034:73 | source(...) : Object | Test.java:5034:58:5034:73 | (...)... : String | provenance | | +| Test.java:5035:10:5035:74 | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | Test.java:5036:21:5036:23 | out : OrderedMapIterator [] : String | provenance | | +| Test.java:5035:72:5035:73 | in : OrderedMapIterator [] : String | Test.java:5035:10:5035:74 | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:185 | +| Test.java:5036:21:5036:23 | out : OrderedMapIterator [] : String | Test.java:246:20:246:47 | mapIterator : OrderedMapIterator [] : String | provenance | | +| Test.java:5036:21:5036:23 | out : OrderedMapIterator [] : String | Test.java:5036:9:5036:24 | getMapValue(...) | provenance | MaD:677 | +| Test.java:5041:18:5041:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5042:30:5042:31 | in : ListIterator [] : String | provenance | | +| Test.java:5041:45:5041:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:5041:45:5041:60 | (...)... : String | Test.java:5041:18:5041:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:5041:53:5041:60 | source(...) : Object | Test.java:5041:45:5041:60 | (...)... : String | provenance | | +| Test.java:5042:10:5042:38 | new ZippingIterator<>(...) : ZippingIterator [] : String | Test.java:5043:20:5043:22 | out : ZippingIterator [] : String | provenance | | +| Test.java:5042:30:5042:31 | in : ListIterator [] : String | Test.java:5042:10:5042:38 | new ZippingIterator<>(...) : ZippingIterator [] : String | provenance | MaD:186 | +| Test.java:5043:20:5043:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | +| Test.java:5043:20:5043:22 | out : ZippingIterator [] : String | Test.java:5043:9:5043:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5048:18:5048:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5049:36:5049:37 | in : ListIterator [] : String | provenance | | +| Test.java:5048:45:5048:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:5048:45:5048:60 | (...)... : String | Test.java:5048:18:5048:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:5048:53:5048:60 | source(...) : Object | Test.java:5048:45:5048:60 | (...)... : String | provenance | | +| Test.java:5049:10:5049:38 | new ZippingIterator<>(...) : ZippingIterator [] : String | Test.java:5050:20:5050:22 | out : ZippingIterator [] : String | provenance | | +| Test.java:5049:36:5049:37 | in : ListIterator [] : String | Test.java:5049:10:5049:38 | new ZippingIterator<>(...) : ZippingIterator [] : String | provenance | MaD:187 | +| Test.java:5050:20:5050:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | +| Test.java:5050:20:5050:22 | out : ZippingIterator [] : String | Test.java:5050:9:5050:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5055:18:5055:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5056:30:5056:31 | in : ListIterator [] : String | provenance | | +| Test.java:5055:45:5055:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:5055:45:5055:60 | (...)... : String | Test.java:5055:18:5055:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:5055:53:5055:60 | source(...) : Object | Test.java:5055:45:5055:60 | (...)... : String | provenance | | +| Test.java:5056:10:5056:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | Test.java:5057:20:5057:22 | out : ZippingIterator [] : String | provenance | | +| Test.java:5056:30:5056:31 | in : ListIterator [] : String | Test.java:5056:10:5056:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | provenance | MaD:188 | +| Test.java:5057:20:5057:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | +| Test.java:5057:20:5057:22 | out : ZippingIterator [] : String | Test.java:5057:9:5057:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5062:18:5062:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5063:36:5063:37 | in : ListIterator [] : String | provenance | | +| Test.java:5062:45:5062:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:5062:45:5062:60 | (...)... : String | Test.java:5062:18:5062:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:5062:53:5062:60 | source(...) : Object | Test.java:5062:45:5062:60 | (...)... : String | provenance | | +| Test.java:5063:10:5063:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | Test.java:5064:20:5064:22 | out : ZippingIterator [] : String | provenance | | +| Test.java:5063:36:5063:37 | in : ListIterator [] : String | Test.java:5063:10:5063:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | provenance | MaD:189 | +| Test.java:5064:20:5064:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | +| Test.java:5064:20:5064:22 | out : ZippingIterator [] : String | Test.java:5064:9:5064:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5069:18:5069:61 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5070:42:5070:43 | in : ListIterator [] : String | provenance | | +| Test.java:5069:45:5069:60 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:5069:45:5069:60 | (...)... : String | Test.java:5069:18:5069:61 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:5069:53:5069:60 | source(...) : Object | Test.java:5069:45:5069:60 | (...)... : String | provenance | | +| Test.java:5070:10:5070:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | Test.java:5071:20:5071:22 | out : ZippingIterator [] : String | provenance | | +| Test.java:5070:42:5070:43 | in : ListIterator [] : String | Test.java:5070:10:5070:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | provenance | MaD:190 | +| Test.java:5071:20:5071:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | +| Test.java:5071:20:5071:22 | out : ZippingIterator [] : String | Test.java:5071:9:5071:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5076:20:5076:79 | {...} : Iterator[] [[], ] : String | Test.java:5077:30:5077:31 | in : Iterator[] [[], ] : String | provenance | | +| Test.java:5076:35:5076:78 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:5076:20:5076:79 | {...} : Iterator[] [[], ] : String | provenance | | +| Test.java:5076:62:5076:77 | (...)... : String | Test.java:259:49:259:57 | element : String | provenance | | +| Test.java:5076:62:5076:77 | (...)... : String | Test.java:5076:35:5076:78 | newListIteratorWithElement(...) : ListIterator [] : String | provenance | MaD:4 | +| Test.java:5076:70:5076:77 | source(...) : Object | Test.java:5076:62:5076:77 | (...)... : String | provenance | | +| Test.java:5077:10:5077:32 | new ZippingIterator<>(...) : ZippingIterator [] : String | Test.java:5078:20:5078:22 | out : ZippingIterator [] : String | provenance | | +| Test.java:5077:30:5077:31 | in : Iterator[] [[], ] : String | Test.java:5077:10:5077:32 | new ZippingIterator<>(...) : ZippingIterator [] : String | provenance | MaD:191 | +| Test.java:5078:20:5078:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | provenance | | +| Test.java:5078:20:5078:22 | out : ZippingIterator [] : String | Test.java:5078:9:5078:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5083:16:5083:23 | source(...) : Object | Test.java:5084:23:5084:24 | in : Object | provenance | | +| Test.java:5084:10:5084:39 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5085:20:5085:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5084:23:5084:24 | in : Object | Test.java:5084:10:5084:39 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:218 | +| Test.java:5085:20:5085:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5085:20:5085:22 | out : MultiKey [] : Object | Test.java:5085:9:5085:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5090:16:5090:23 | source(...) : Object | Test.java:5091:37:5091:38 | in : Object | provenance | | +| Test.java:5091:10:5091:39 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5092:20:5092:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5091:37:5091:38 | in : Object | Test.java:5091:10:5091:39 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:219 | +| Test.java:5092:20:5092:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5092:20:5092:22 | out : MultiKey [] : Object | Test.java:5092:9:5092:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5097:16:5097:23 | source(...) : Object | Test.java:5098:23:5098:24 | in : Object | provenance | | +| Test.java:5098:10:5098:37 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5099:20:5099:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5098:23:5098:24 | in : Object | Test.java:5098:10:5098:37 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:220 | +| Test.java:5099:20:5099:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5099:20:5099:22 | out : MultiKey [] : Object | Test.java:5099:9:5099:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5104:16:5104:23 | source(...) : Object | Test.java:5105:29:5105:30 | in : Object | provenance | | +| Test.java:5105:10:5105:37 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5106:20:5106:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5105:29:5105:30 | in : Object | Test.java:5105:10:5105:37 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:221 | +| Test.java:5106:20:5106:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5106:20:5106:22 | out : MultiKey [] : Object | Test.java:5106:9:5106:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5111:16:5111:23 | source(...) : Object | Test.java:5112:35:5112:36 | in : Object | provenance | | +| Test.java:5112:10:5112:37 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5113:20:5113:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5112:35:5112:36 | in : Object | Test.java:5112:10:5112:37 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:222 | +| Test.java:5113:20:5113:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5113:20:5113:22 | out : MultiKey [] : Object | Test.java:5113:9:5113:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5118:16:5118:23 | source(...) : Object | Test.java:5119:23:5119:24 | in : Object | provenance | | +| Test.java:5119:10:5119:43 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5120:20:5120:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5119:23:5119:24 | in : Object | Test.java:5119:10:5119:43 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:223 | +| Test.java:5120:20:5120:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5120:20:5120:22 | out : MultiKey [] : Object | Test.java:5120:9:5120:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5125:16:5125:23 | source(...) : Object | Test.java:5126:29:5126:30 | in : Object | provenance | | +| Test.java:5126:10:5126:43 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5127:20:5127:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5126:29:5126:30 | in : Object | Test.java:5126:10:5126:43 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:224 | +| Test.java:5127:20:5127:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5127:20:5127:22 | out : MultiKey [] : Object | Test.java:5127:9:5127:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5132:16:5132:23 | source(...) : Object | Test.java:5133:35:5133:36 | in : Object | provenance | | +| Test.java:5133:10:5133:43 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5134:20:5134:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5133:35:5133:36 | in : Object | Test.java:5133:10:5133:43 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:225 | +| Test.java:5134:20:5134:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5134:20:5134:22 | out : MultiKey [] : Object | Test.java:5134:9:5134:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5139:16:5139:23 | source(...) : Object | Test.java:5140:41:5140:42 | in : Object | provenance | | +| Test.java:5140:10:5140:43 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5141:20:5141:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5140:41:5140:42 | in : Object | Test.java:5140:10:5140:43 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:226 | +| Test.java:5141:20:5141:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5141:20:5141:22 | out : MultiKey [] : Object | Test.java:5141:9:5141:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5146:16:5146:23 | source(...) : Object | Test.java:5147:23:5147:24 | in : Object | provenance | | +| Test.java:5147:10:5147:49 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5148:20:5148:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5147:23:5147:24 | in : Object | Test.java:5147:10:5147:49 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:227 | +| Test.java:5148:20:5148:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5148:20:5148:22 | out : MultiKey [] : Object | Test.java:5148:9:5148:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5153:16:5153:23 | source(...) : Object | Test.java:5154:29:5154:30 | in : Object | provenance | | +| Test.java:5154:10:5154:49 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5155:20:5155:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5154:29:5154:30 | in : Object | Test.java:5154:10:5154:49 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:228 | +| Test.java:5155:20:5155:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5155:20:5155:22 | out : MultiKey [] : Object | Test.java:5155:9:5155:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5160:16:5160:23 | source(...) : Object | Test.java:5161:35:5161:36 | in : Object | provenance | | +| Test.java:5161:10:5161:49 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5162:20:5162:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5161:35:5161:36 | in : Object | Test.java:5161:10:5161:49 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:229 | +| Test.java:5162:20:5162:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5162:20:5162:22 | out : MultiKey [] : Object | Test.java:5162:9:5162:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5167:16:5167:23 | source(...) : Object | Test.java:5168:41:5168:42 | in : Object | provenance | | +| Test.java:5168:10:5168:49 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5169:20:5169:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5168:41:5168:42 | in : Object | Test.java:5168:10:5168:49 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:230 | +| Test.java:5169:20:5169:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5169:20:5169:22 | out : MultiKey [] : Object | Test.java:5169:9:5169:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5174:16:5174:23 | source(...) : Object | Test.java:5175:47:5175:48 | in : Object | provenance | | +| Test.java:5175:10:5175:49 | new MultiKey<>(...) : MultiKey [] : Object | Test.java:5176:20:5176:22 | out : MultiKey [] : Object | provenance | | +| Test.java:5175:47:5175:48 | in : Object | Test.java:5175:10:5175:49 | new MultiKey<>(...) : MultiKey [] : Object | provenance | MaD:231 | +| Test.java:5176:20:5176:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | provenance | | +| Test.java:5176:20:5176:22 | out : MultiKey [] : Object | Test.java:5176:9:5176:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5181:18:5181:47 | {...} : Object[] [[]] : String | Test.java:5182:23:5182:24 | in : Object[] [[]] : String | provenance | | +| Test.java:5181:31:5181:46 | (...)... : String | Test.java:5181:18:5181:47 | {...} : Object[] [[]] : String | provenance | | +| Test.java:5181:39:5181:46 | source(...) : Object | Test.java:5181:31:5181:46 | (...)... : String | provenance | | +| Test.java:5182:10:5182:25 | new MultiKey<>(...) : MultiKey [] : String | Test.java:5183:20:5183:22 | out : MultiKey [] : String | provenance | | +| Test.java:5182:23:5182:24 | in : Object[] [[]] : String | Test.java:5182:10:5182:25 | new MultiKey<>(...) : MultiKey [] : String | provenance | MaD:232 | +| Test.java:5183:20:5183:22 | out : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:5183:20:5183:22 | out : MultiKey [] : String | Test.java:5183:9:5183:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5188:18:5188:47 | {...} : Object[] [[]] : String | Test.java:5189:23:5189:24 | in : Object[] [[]] : String | provenance | | +| Test.java:5188:31:5188:46 | (...)... : String | Test.java:5188:18:5188:47 | {...} : Object[] [[]] : String | provenance | | +| Test.java:5188:39:5188:46 | source(...) : Object | Test.java:5188:31:5188:46 | (...)... : String | provenance | | +| Test.java:5189:10:5189:32 | new MultiKey<>(...) : MultiKey [] : String | Test.java:5190:20:5190:22 | out : MultiKey [] : String | provenance | | +| Test.java:5189:23:5189:24 | in : Object[] [[]] : String | Test.java:5189:10:5189:32 | new MultiKey<>(...) : MultiKey [] : String | provenance | MaD:233 | +| Test.java:5190:20:5190:22 | out : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:5190:20:5190:22 | out : MultiKey [] : String | Test.java:5190:9:5190:23 | getElement(...) | provenance | MaD:234 | +| Test.java:5195:18:5195:57 | newMultiKeyWithElement(...) : MultiKey [] : String | Test.java:5196:10:5196:11 | in : MultiKey [] : String | provenance | | +| Test.java:5195:41:5195:56 | (...)... : String | Test.java:261:41:261:49 | element : String | provenance | | +| Test.java:5195:41:5195:56 | (...)... : String | Test.java:5195:18:5195:57 | newMultiKeyWithElement(...) : MultiKey [] : String | provenance | MaD:218 | +| Test.java:5195:49:5195:56 | source(...) : Object | Test.java:5195:41:5195:56 | (...)... : String | provenance | | +| Test.java:5196:10:5196:11 | in : MultiKey [] : String | Test.java:5196:10:5196:21 | getKey(...) : String | provenance | MaD:234 | +| Test.java:5196:10:5196:21 | getKey(...) : String | Test.java:5197:9:5197:11 | out | provenance | | +| Test.java:5202:18:5202:57 | newMultiKeyWithElement(...) : MultiKey [] : String | Test.java:5203:10:5203:11 | in : MultiKey [] : String | provenance | | +| Test.java:5202:41:5202:56 | (...)... : String | Test.java:261:41:261:49 | element : String | provenance | | +| Test.java:5202:41:5202:56 | (...)... : String | Test.java:5202:18:5202:57 | newMultiKeyWithElement(...) : MultiKey [] : String | provenance | MaD:218 | +| Test.java:5202:49:5202:56 | source(...) : Object | Test.java:5202:41:5202:56 | (...)... : String | provenance | | +| Test.java:5203:10:5203:11 | in : MultiKey [] : String | Test.java:5203:10:5203:21 | getKeys(...) : Object[] [[]] : String | provenance | MaD:235 | +| Test.java:5203:10:5203:21 | getKeys(...) : Object[] [[]] : String | Test.java:5204:25:5204:27 | out : Object[] [[]] : String | provenance | | +| Test.java:5204:25:5204:27 | out : Object[] [[]] : String | Test.java:229:24:229:32 | array : Object[] [[]] : String | provenance | | +| Test.java:5204:25:5204:27 | out : Object[] [[]] : String | Test.java:5204:9:5204:28 | getArrayElement(...) | provenance | | +| Test.java:5209:20:5209:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:5210:35:5210:36 | in : TreeBag [] : String | provenance | | +| Test.java:5209:42:5209:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:5209:42:5209:57 | (...)... : String | Test.java:5209:20:5209:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:5209:42:5209:57 | (...)... : String | Test.java:5209:20:5209:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:5209:50:5209:57 | source(...) : Object | Test.java:5209:42:5209:57 | (...)... : String | provenance | | +| Test.java:5210:10:5210:37 | new MyAbstractLinkedList<>(...) : MyAbstractLinkedList [] : String | Test.java:5211:20:5211:22 | out : MyAbstractLinkedList [] : String | provenance | | +| Test.java:5210:35:5210:36 | in : TreeBag [] : String | Test.java:5210:10:5210:37 | new MyAbstractLinkedList<>(...) : MyAbstractLinkedList [] : String | provenance | MaD:244 | +| Test.java:5210:35:5210:36 | in : TreeBag [] : String | Test.java:7198:31:7198:64 | coll : TreeBag [] : String | provenance | | +| Test.java:5211:20:5211:22 | out : MyAbstractLinkedList [] : String | Test.java:230:19:230:32 | it : MyAbstractLinkedList [] : String | provenance | | +| Test.java:5211:20:5211:22 | out : MyAbstractLinkedList [] : String | Test.java:5211:9:5211:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5216:16:5216:23 | source(...) : Object | Test.java:5217:17:5217:18 | in : Object | provenance | | +| Test.java:5217:4:5217:6 | out [post update] : AbstractLinkedList [] : Object | Test.java:5218:20:5218:22 | out : AbstractLinkedList [] : Object | provenance | | +| Test.java:5217:17:5217:18 | in : Object | Test.java:5217:4:5217:6 | out [post update] : AbstractLinkedList [] : Object | provenance | MaD:245 | +| Test.java:5218:20:5218:22 | out : AbstractLinkedList [] : Object | Test.java:230:19:230:32 | it : AbstractLinkedList [] : Object | provenance | | +| Test.java:5218:20:5218:22 | out : AbstractLinkedList [] : Object | Test.java:5218:9:5218:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5223:16:5223:23 | source(...) : Object | Test.java:5224:16:5224:17 | in : Object | provenance | | +| Test.java:5224:4:5224:6 | out [post update] : AbstractLinkedList [] : Object | Test.java:5225:20:5225:22 | out : AbstractLinkedList [] : Object | provenance | | +| Test.java:5224:16:5224:17 | in : Object | Test.java:5224:4:5224:6 | out [post update] : AbstractLinkedList [] : Object | provenance | MaD:246 | +| Test.java:5225:20:5225:22 | out : AbstractLinkedList [] : Object | Test.java:230:19:230:32 | it : AbstractLinkedList [] : Object | provenance | | +| Test.java:5225:20:5225:22 | out : AbstractLinkedList [] : Object | Test.java:5225:9:5225:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5230:28:5230:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | Test.java:5231:10:5231:11 | in : CursorableLinkedList [] : String | provenance | | +| Test.java:5230:63:5230:78 | (...)... : String | Test.java:255:65:255:73 | element : String | provenance | | +| Test.java:5230:63:5230:78 | (...)... : String | Test.java:5230:28:5230:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | provenance | MaD:4 | +| Test.java:5230:71:5230:78 | source(...) : Object | Test.java:5230:63:5230:78 | (...)... : String | provenance | | +| Test.java:5231:10:5231:11 | in : CursorableLinkedList [] : String | Test.java:5231:10:5231:22 | getFirst(...) : String | provenance | MaD:247 | +| Test.java:5231:10:5231:22 | getFirst(...) : String | Test.java:5232:9:5232:11 | out | provenance | | +| Test.java:5237:28:5237:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | Test.java:5238:10:5238:11 | in : CursorableLinkedList [] : String | provenance | | +| Test.java:5237:63:5237:78 | (...)... : String | Test.java:255:65:255:73 | element : String | provenance | | +| Test.java:5237:63:5237:78 | (...)... : String | Test.java:5237:28:5237:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | provenance | MaD:4 | +| Test.java:5237:71:5237:78 | source(...) : Object | Test.java:5237:63:5237:78 | (...)... : String | provenance | | +| Test.java:5238:10:5238:11 | in : CursorableLinkedList [] : String | Test.java:5238:10:5238:21 | getLast(...) : String | provenance | MaD:248 | +| Test.java:5238:10:5238:21 | getLast(...) : String | Test.java:5239:9:5239:11 | out | provenance | | +| Test.java:5244:28:5244:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | Test.java:5245:10:5245:11 | in : CursorableLinkedList [] : String | provenance | | +| Test.java:5244:63:5244:78 | (...)... : String | Test.java:255:65:255:73 | element : String | provenance | | +| Test.java:5244:63:5244:78 | (...)... : String | Test.java:5244:28:5244:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | provenance | MaD:4 | +| Test.java:5244:71:5244:78 | source(...) : Object | Test.java:5244:63:5244:78 | (...)... : String | provenance | | +| Test.java:5245:10:5245:11 | in : CursorableLinkedList [] : String | Test.java:5245:10:5245:25 | removeFirst(...) : String | provenance | MaD:249 | +| Test.java:5245:10:5245:25 | removeFirst(...) : String | Test.java:5246:9:5246:11 | out | provenance | | +| Test.java:5251:28:5251:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | Test.java:5252:10:5252:11 | in : CursorableLinkedList [] : String | provenance | | +| Test.java:5251:63:5251:78 | (...)... : String | Test.java:255:65:255:73 | element : String | provenance | | +| Test.java:5251:63:5251:78 | (...)... : String | Test.java:5251:28:5251:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | provenance | MaD:4 | +| Test.java:5251:71:5251:78 | source(...) : Object | Test.java:5251:63:5251:78 | (...)... : String | provenance | | +| Test.java:5252:10:5252:11 | in : CursorableLinkedList [] : String | Test.java:5252:10:5252:24 | removeLast(...) : String | provenance | MaD:250 | +| Test.java:5252:10:5252:24 | removeLast(...) : String | Test.java:5253:9:5253:11 | out | provenance | | +| Test.java:5258:14:5258:38 | of(...) : List [] : String | Test.java:5259:38:5259:39 | in : List [] : String | provenance | | +| Test.java:5258:22:5258:37 | (...)... : String | Test.java:5258:14:5258:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5258:30:5258:37 | source(...) : Object | Test.java:5258:22:5258:37 | (...)... : String | provenance | | +| Test.java:5259:10:5259:40 | new MyAbstractListDecorator<>(...) : MyAbstractListDecorator [] : String | Test.java:5260:20:5260:22 | out : MyAbstractListDecorator [] : String | provenance | | +| Test.java:5259:38:5259:39 | in : List [] : String | Test.java:5259:10:5259:40 | new MyAbstractListDecorator<>(...) : MyAbstractListDecorator [] : String | provenance | MaD:251 | +| Test.java:5259:38:5259:39 | in : List [] : String | Test.java:7204:34:7204:51 | list : List [] : String | provenance | | +| Test.java:5260:20:5260:22 | out : MyAbstractListDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractListDecorator [] : String | provenance | | +| Test.java:5260:20:5260:22 | out : MyAbstractListDecorator [] : String | Test.java:5260:9:5260:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5265:14:5265:38 | of(...) : List [] : String | Test.java:5266:50:5266:51 | in : List [] : String | provenance | | +| Test.java:5265:22:5265:37 | (...)... : String | Test.java:5265:14:5265:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5265:30:5265:37 | source(...) : Object | Test.java:5265:22:5265:37 | (...)... : String | provenance | | +| Test.java:5266:10:5266:52 | new MyAbstractSerializableListDecorator<>(...) : MyAbstractSerializableListDecorator [] : String | Test.java:5267:20:5267:22 | out : MyAbstractSerializableListDecorator [] : String | provenance | | +| Test.java:5266:50:5266:51 | in : List [] : String | Test.java:5266:10:5266:52 | new MyAbstractSerializableListDecorator<>(...) : MyAbstractSerializableListDecorator [] : String | provenance | MaD:252 | +| Test.java:5266:50:5266:51 | in : List [] : String | Test.java:7210:46:7210:63 | list : List [] : String | provenance | | +| Test.java:5267:20:5267:22 | out : MyAbstractSerializableListDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSerializableListDecorator [] : String | provenance | | +| Test.java:5267:20:5267:22 | out : MyAbstractSerializableListDecorator [] : String | Test.java:5267:9:5267:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5272:20:5272:44 | of(...) : List [] : String | Test.java:5273:35:5273:36 | in : List [] : String | provenance | | +| Test.java:5272:28:5272:43 | (...)... : String | Test.java:5272:20:5272:44 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5272:36:5272:43 | source(...) : Object | Test.java:5272:28:5272:43 | (...)... : String | provenance | | +| Test.java:5273:10:5273:37 | new CursorableLinkedList<>(...) : CursorableLinkedList [] : String | Test.java:5274:20:5274:22 | out : CursorableLinkedList [] : String | provenance | | +| Test.java:5273:35:5273:36 | in : List [] : String | Test.java:5273:10:5273:37 | new CursorableLinkedList<>(...) : CursorableLinkedList [] : String | provenance | MaD:253 | +| Test.java:5274:20:5274:22 | out : CursorableLinkedList [] : String | Test.java:230:19:230:32 | it : CursorableLinkedList [] : String | provenance | | +| Test.java:5274:20:5274:22 | out : CursorableLinkedList [] : String | Test.java:5274:9:5274:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5279:30:5279:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | Test.java:5280:10:5280:11 | in : CursorableLinkedList [] : String | provenance | | +| Test.java:5279:65:5279:80 | (...)... : String | Test.java:255:65:255:73 | element : String | provenance | | +| Test.java:5279:65:5279:80 | (...)... : String | Test.java:5279:30:5279:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | provenance | MaD:4 | +| Test.java:5279:73:5279:80 | source(...) : Object | Test.java:5279:65:5279:80 | (...)... : String | provenance | | +| Test.java:5280:10:5280:11 | in : CursorableLinkedList [] : String | Test.java:5280:10:5280:21 | cursor(...) : Cursor [] : String | provenance | MaD:254 | +| Test.java:5280:10:5280:21 | cursor(...) : Cursor [] : String | Test.java:5281:20:5281:22 | out : Cursor [] : String | provenance | | +| Test.java:5281:20:5281:22 | out : Cursor [] : String | Test.java:231:19:231:32 | it : Cursor [] : String | provenance | | +| Test.java:5281:20:5281:22 | out : Cursor [] : String | Test.java:5281:9:5281:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5286:30:5286:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | Test.java:5287:10:5287:11 | in : CursorableLinkedList [] : String | provenance | | +| Test.java:5286:65:5286:80 | (...)... : String | Test.java:255:65:255:73 | element : String | provenance | | +| Test.java:5286:65:5286:80 | (...)... : String | Test.java:5286:30:5286:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | provenance | MaD:4 | +| Test.java:5286:73:5286:80 | source(...) : Object | Test.java:5286:65:5286:80 | (...)... : String | provenance | | +| Test.java:5287:10:5287:11 | in : CursorableLinkedList [] : String | Test.java:5287:10:5287:20 | cursor(...) : Cursor [] : String | provenance | MaD:254 | +| Test.java:5287:10:5287:20 | cursor(...) : Cursor [] : String | Test.java:5288:20:5288:22 | out : Cursor [] : String | provenance | | +| Test.java:5288:20:5288:22 | out : Cursor [] : String | Test.java:231:19:231:32 | it : Cursor [] : String | provenance | | +| Test.java:5288:20:5288:22 | out : Cursor [] : String | Test.java:5288:9:5288:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5293:14:5293:38 | of(...) : List [] : String | Test.java:5294:38:5294:39 | in : List [] : String | provenance | | +| Test.java:5293:22:5293:37 | (...)... : String | Test.java:5293:14:5293:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5293:30:5293:37 | source(...) : Object | Test.java:5293:22:5293:37 | (...)... : String | provenance | | +| Test.java:5294:10:5294:40 | fixedSizeList(...) : FixedSizeList [] : String | Test.java:5295:20:5295:22 | out : FixedSizeList [] : String | provenance | | +| Test.java:5294:38:5294:39 | in : List [] : String | Test.java:5294:10:5294:40 | fixedSizeList(...) : FixedSizeList [] : String | provenance | MaD:255 | +| Test.java:5295:20:5295:22 | out : FixedSizeList [] : String | Test.java:230:19:230:32 | it : FixedSizeList [] : String | provenance | | +| Test.java:5295:20:5295:22 | out : FixedSizeList [] : String | Test.java:5295:9:5295:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5300:14:5300:38 | of(...) : List [] : String | Test.java:5301:32:5301:33 | in : List [] : String | provenance | | +| Test.java:5300:22:5300:37 | (...)... : String | Test.java:5300:14:5300:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5300:30:5300:37 | source(...) : Object | Test.java:5300:22:5300:37 | (...)... : String | provenance | | +| Test.java:5301:10:5301:34 | growthList(...) : GrowthList [] : String | Test.java:5302:20:5302:22 | out : GrowthList [] : String | provenance | | +| Test.java:5301:32:5301:33 | in : List [] : String | Test.java:5301:10:5301:34 | growthList(...) : GrowthList [] : String | provenance | MaD:256 | +| Test.java:5302:20:5302:22 | out : GrowthList [] : String | Test.java:230:19:230:32 | it : GrowthList [] : String | provenance | | +| Test.java:5302:20:5302:22 | out : GrowthList [] : String | Test.java:5302:9:5302:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5307:14:5307:38 | of(...) : List [] : String | Test.java:5308:28:5308:29 | in : List [] : String | provenance | | +| Test.java:5307:22:5307:37 | (...)... : String | Test.java:5307:14:5307:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5307:30:5307:37 | source(...) : Object | Test.java:5307:22:5307:37 | (...)... : String | provenance | | +| Test.java:5308:10:5308:49 | lazyList(...) : LazyList [] : String | Test.java:5309:20:5309:22 | out : LazyList [] : String | provenance | | +| Test.java:5308:28:5308:29 | in : List [] : String | Test.java:5308:10:5308:49 | lazyList(...) : LazyList [] : String | provenance | MaD:257 | +| Test.java:5309:20:5309:22 | out : LazyList [] : String | Test.java:230:19:230:32 | it : LazyList [] : String | provenance | | +| Test.java:5309:20:5309:22 | out : LazyList [] : String | Test.java:5309:9:5309:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5314:14:5314:38 | of(...) : List [] : String | Test.java:5315:28:5315:29 | in : List [] : String | provenance | | +| Test.java:5314:22:5314:37 | (...)... : String | Test.java:5314:14:5314:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5314:30:5314:37 | source(...) : Object | Test.java:5314:22:5314:37 | (...)... : String | provenance | | +| Test.java:5315:10:5315:45 | lazyList(...) : LazyList [] : String | Test.java:5316:20:5316:22 | out : LazyList [] : String | provenance | | +| Test.java:5315:28:5315:29 | in : List [] : String | Test.java:5315:10:5315:45 | lazyList(...) : LazyList [] : String | provenance | MaD:257 | +| Test.java:5316:20:5316:22 | out : LazyList [] : String | Test.java:230:19:230:32 | it : LazyList [] : String | provenance | | +| Test.java:5316:20:5316:22 | out : LazyList [] : String | Test.java:5316:9:5316:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5321:20:5321:44 | of(...) : List [] : String | Test.java:5322:36:5322:37 | in : List [] : String | provenance | | +| Test.java:5321:28:5321:43 | (...)... : String | Test.java:5321:20:5321:44 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5321:36:5321:43 | source(...) : Object | Test.java:5321:28:5321:43 | (...)... : String | provenance | | +| Test.java:5322:10:5322:38 | new NodeCachingLinkedList<>(...) : NodeCachingLinkedList [] : String | Test.java:5323:20:5323:22 | out : NodeCachingLinkedList [] : String | provenance | | +| Test.java:5322:36:5322:37 | in : List [] : String | Test.java:5322:10:5322:38 | new NodeCachingLinkedList<>(...) : NodeCachingLinkedList [] : String | provenance | MaD:258 | +| Test.java:5323:20:5323:22 | out : NodeCachingLinkedList [] : String | Test.java:230:19:230:32 | it : NodeCachingLinkedList [] : String | provenance | | +| Test.java:5323:20:5323:22 | out : NodeCachingLinkedList [] : String | Test.java:5323:9:5323:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5328:14:5328:38 | of(...) : List [] : String | Test.java:5329:40:5329:41 | in : List [] : String | provenance | | +| Test.java:5328:22:5328:37 | (...)... : String | Test.java:5328:14:5328:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5328:30:5328:37 | source(...) : Object | Test.java:5328:22:5328:37 | (...)... : String | provenance | | +| Test.java:5329:10:5329:48 | predicatedList(...) : PredicatedList [] : String | Test.java:5330:20:5330:22 | out : PredicatedList [] : String | provenance | | +| Test.java:5329:40:5329:41 | in : List [] : String | Test.java:5329:10:5329:48 | predicatedList(...) : PredicatedList [] : String | provenance | MaD:259 | +| Test.java:5330:20:5330:22 | out : PredicatedList [] : String | Test.java:230:19:230:32 | it : PredicatedList [] : String | provenance | | +| Test.java:5330:20:5330:22 | out : PredicatedList [] : String | Test.java:5330:9:5330:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5335:23:5335:76 | setUniqueList(...) : SetUniqueList [] : String | Test.java:5336:10:5336:11 | in : SetUniqueList [] : String | provenance | | +| Test.java:5335:51:5335:75 | of(...) : List [] : String | Test.java:5335:23:5335:76 | setUniqueList(...) : SetUniqueList [] : String | provenance | MaD:261 | +| Test.java:5335:59:5335:74 | (...)... : String | Test.java:5335:51:5335:75 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5335:67:5335:74 | source(...) : Object | Test.java:5335:59:5335:74 | (...)... : String | provenance | | +| Test.java:5336:10:5336:11 | in : SetUniqueList [] : String | Test.java:5336:10:5336:19 | asSet(...) : Set [] : String | provenance | MaD:260 | +| Test.java:5336:10:5336:19 | asSet(...) : Set [] : String | Test.java:5337:20:5337:22 | out : Set [] : String | provenance | | +| Test.java:5337:20:5337:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:5337:20:5337:22 | out : Set [] : String | Test.java:5337:9:5337:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5342:14:5342:38 | of(...) : List [] : String | Test.java:5343:38:5343:39 | in : List [] : String | provenance | | +| Test.java:5342:22:5342:37 | (...)... : String | Test.java:5342:14:5342:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5342:30:5342:37 | source(...) : Object | Test.java:5342:22:5342:37 | (...)... : String | provenance | | +| Test.java:5343:10:5343:40 | setUniqueList(...) : SetUniqueList [] : String | Test.java:5344:20:5344:22 | out : SetUniqueList [] : String | provenance | | +| Test.java:5343:38:5343:39 | in : List [] : String | Test.java:5343:10:5343:40 | setUniqueList(...) : SetUniqueList [] : String | provenance | MaD:261 | +| Test.java:5344:20:5344:22 | out : SetUniqueList [] : String | Test.java:230:19:230:32 | it : SetUniqueList [] : String | provenance | | +| Test.java:5344:20:5344:22 | out : SetUniqueList [] : String | Test.java:5344:9:5344:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5349:14:5349:38 | of(...) : List [] : String | Test.java:5350:43:5350:44 | in : List [] : String | provenance | | +| Test.java:5349:22:5349:37 | (...)... : String | Test.java:5349:14:5349:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5349:30:5349:37 | source(...) : Object | Test.java:5349:22:5349:37 | (...)... : String | provenance | | +| Test.java:5350:10:5350:51 | transformingList(...) : TransformedList [] : String | Test.java:5351:20:5351:22 | out : TransformedList [] : String | provenance | | +| Test.java:5350:43:5350:44 | in : List [] : String | Test.java:5350:10:5350:51 | transformingList(...) : TransformedList [] : String | provenance | MaD:262 | +| Test.java:5351:20:5351:22 | out : TransformedList [] : String | Test.java:230:19:230:32 | it : TransformedList [] : String | provenance | | +| Test.java:5351:20:5351:22 | out : TransformedList [] : String | Test.java:5351:9:5351:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5356:20:5356:44 | of(...) : List [] : String | Test.java:5357:23:5357:24 | in : List [] : String | provenance | | +| Test.java:5356:28:5356:43 | (...)... : String | Test.java:5356:20:5356:44 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5356:36:5356:43 | source(...) : Object | Test.java:5356:28:5356:43 | (...)... : String | provenance | | +| Test.java:5357:10:5357:25 | new TreeList<>(...) : TreeList [] : String | Test.java:5358:20:5358:22 | out : TreeList [] : String | provenance | | +| Test.java:5357:23:5357:24 | in : List [] : String | Test.java:5357:10:5357:25 | new TreeList<>(...) : TreeList [] : String | provenance | MaD:263 | +| Test.java:5358:20:5358:22 | out : TreeList [] : String | Test.java:230:19:230:32 | it : TreeList [] : String | provenance | | +| Test.java:5358:20:5358:22 | out : TreeList [] : String | Test.java:5358:9:5358:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5363:14:5363:38 | of(...) : List [] : String | Test.java:5364:31:5364:32 | in : List [] : String | provenance | | +| Test.java:5363:22:5363:37 | (...)... : String | Test.java:5363:14:5363:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5363:30:5363:37 | source(...) : Object | Test.java:5363:22:5363:37 | (...)... : String | provenance | | +| Test.java:5364:10:5364:33 | new UnmodifiableList<>(...) : UnmodifiableList [] : String | Test.java:5365:20:5365:22 | out : UnmodifiableList [] : String | provenance | | +| Test.java:5364:31:5364:32 | in : List [] : String | Test.java:5364:10:5364:33 | new UnmodifiableList<>(...) : UnmodifiableList [] : String | provenance | MaD:264 | +| Test.java:5365:20:5365:22 | out : UnmodifiableList [] : String | Test.java:230:19:230:32 | it : UnmodifiableList [] : String | provenance | | +| Test.java:5365:20:5365:22 | out : UnmodifiableList [] : String | Test.java:5365:9:5365:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5370:14:5370:38 | of(...) : List [] : String | Test.java:5371:44:5371:45 | in : List [] : String | provenance | | +| Test.java:5370:22:5370:37 | (...)... : String | Test.java:5370:14:5370:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:5370:30:5370:37 | source(...) : Object | Test.java:5370:22:5370:37 | (...)... : String | provenance | | +| Test.java:5371:10:5371:46 | unmodifiableList(...) : List [] : String | Test.java:5372:20:5372:22 | out : List [] : String | provenance | | +| Test.java:5371:44:5371:45 | in : List [] : String | Test.java:5371:10:5371:46 | unmodifiableList(...) : List [] : String | provenance | MaD:265 | +| Test.java:5372:20:5372:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | +| Test.java:5372:20:5372:22 | out : List [] : String | Test.java:5372:9:5372:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5377:13:5377:42 | of(...) : Map [] : String | Test.java:5378:34:5378:35 | in : Map [] : String | provenance | | +| Test.java:5377:20:5377:35 | (...)... : String | Test.java:5377:13:5377:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5377:28:5377:35 | source(...) : Object | Test.java:5377:20:5377:35 | (...)... : String | provenance | | +| Test.java:5378:10:5378:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | Test.java:5379:19:5379:21 | out : MyAbstractHashedMap [] : String | provenance | | +| Test.java:5378:34:5378:35 | in : Map [] : String | Test.java:5378:10:5378:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | provenance | MaD:266 | +| Test.java:5378:34:5378:35 | in : Map [] : String | Test.java:7216:30:7216:68 | map : Map [] : String | provenance | | +| Test.java:5379:19:5379:21 | out : MyAbstractHashedMap [] : String | Test.java:228:18:228:29 | map : MyAbstractHashedMap [] : String | provenance | | +| Test.java:5379:19:5379:21 | out : MyAbstractHashedMap [] : String | Test.java:5379:9:5379:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5384:13:5384:42 | of(...) : Map [] : String | Test.java:5385:34:5385:35 | in : Map [] : String | provenance | | +| Test.java:5384:26:5384:41 | (...)... : String | Test.java:5384:13:5384:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5384:34:5384:41 | source(...) : Object | Test.java:5384:26:5384:41 | (...)... : String | provenance | | +| Test.java:5385:10:5385:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | Test.java:5386:21:5386:23 | out : MyAbstractHashedMap [] : String | provenance | | +| Test.java:5385:34:5385:35 | in : Map [] : String | Test.java:5385:10:5385:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | provenance | MaD:267 | +| Test.java:5385:34:5385:35 | in : Map [] : String | Test.java:7216:30:7216:68 | map : Map [] : String | provenance | | +| Test.java:5386:21:5386:23 | out : MyAbstractHashedMap [] : String | Test.java:232:20:232:31 | map : MyAbstractHashedMap [] : String | provenance | | +| Test.java:5386:21:5386:23 | out : MyAbstractHashedMap [] : String | Test.java:5386:9:5386:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5391:13:5391:42 | of(...) : Map [] : String | Test.java:5392:34:5392:35 | in : Map [] : String | provenance | | +| Test.java:5391:20:5391:35 | (...)... : String | Test.java:5391:13:5391:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5391:28:5391:35 | source(...) : Object | Test.java:5391:20:5391:35 | (...)... : String | provenance | | +| Test.java:5392:10:5392:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | Test.java:5393:19:5393:21 | out : MyAbstractLinkedMap [] : String | provenance | | +| Test.java:5392:34:5392:35 | in : Map [] : String | Test.java:5392:10:5392:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | provenance | MaD:268 | +| Test.java:5392:34:5392:35 | in : Map [] : String | Test.java:7222:30:7222:68 | map : Map [] : String | provenance | | +| Test.java:5393:19:5393:21 | out : MyAbstractLinkedMap [] : String | Test.java:228:18:228:29 | map : MyAbstractLinkedMap [] : String | provenance | | +| Test.java:5393:19:5393:21 | out : MyAbstractLinkedMap [] : String | Test.java:5393:9:5393:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5398:13:5398:42 | of(...) : Map [] : String | Test.java:5399:34:5399:35 | in : Map [] : String | provenance | | +| Test.java:5398:26:5398:41 | (...)... : String | Test.java:5398:13:5398:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5398:34:5398:41 | source(...) : Object | Test.java:5398:26:5398:41 | (...)... : String | provenance | | +| Test.java:5399:10:5399:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | Test.java:5400:21:5400:23 | out : MyAbstractLinkedMap [] : String | provenance | | +| Test.java:5399:34:5399:35 | in : Map [] : String | Test.java:5399:10:5399:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | provenance | MaD:269 | +| Test.java:5399:34:5399:35 | in : Map [] : String | Test.java:7222:30:7222:68 | map : Map [] : String | provenance | | +| Test.java:5400:21:5400:23 | out : MyAbstractLinkedMap [] : String | Test.java:232:20:232:31 | map : MyAbstractLinkedMap [] : String | provenance | | +| Test.java:5400:21:5400:23 | out : MyAbstractLinkedMap [] : String | Test.java:5400:9:5400:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5405:13:5405:42 | of(...) : Map [] : String | Test.java:5406:37:5406:38 | in : Map [] : String | provenance | | +| Test.java:5405:20:5405:35 | (...)... : String | Test.java:5405:13:5405:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5405:28:5405:35 | source(...) : Object | Test.java:5405:20:5405:35 | (...)... : String | provenance | | +| Test.java:5406:10:5406:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | Test.java:5407:19:5407:21 | out : MyAbstractMapDecorator [] : String | provenance | | +| Test.java:5406:37:5406:38 | in : Map [] : String | Test.java:5406:10:5406:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | provenance | MaD:270 | +| Test.java:5406:37:5406:38 | in : Map [] : String | Test.java:7228:33:7228:51 | map : Map [] : String | provenance | | +| Test.java:5407:19:5407:21 | out : MyAbstractMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractMapDecorator [] : String | provenance | | +| Test.java:5407:19:5407:21 | out : MyAbstractMapDecorator [] : String | Test.java:5407:9:5407:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5412:13:5412:42 | of(...) : Map [] : String | Test.java:5413:37:5413:38 | in : Map [] : String | provenance | | +| Test.java:5412:26:5412:41 | (...)... : String | Test.java:5412:13:5412:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5412:34:5412:41 | source(...) : Object | Test.java:5412:26:5412:41 | (...)... : String | provenance | | +| Test.java:5413:10:5413:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | Test.java:5414:21:5414:23 | out : MyAbstractMapDecorator [] : String | provenance | | +| Test.java:5413:37:5413:38 | in : Map [] : String | Test.java:5413:10:5413:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | provenance | MaD:271 | +| Test.java:5413:37:5413:38 | in : Map [] : String | Test.java:7228:33:7228:51 | map : Map [] : String | provenance | | +| Test.java:5414:21:5414:23 | out : MyAbstractMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractMapDecorator [] : String | provenance | | +| Test.java:5414:21:5414:23 | out : MyAbstractMapDecorator [] : String | Test.java:5414:9:5414:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5419:32:5419:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | Test.java:5420:10:5420:11 | in : MyAbstractMapDecorator [] : String | provenance | | +| Test.java:5419:59:5419:88 | of(...) : Map [] : String | Test.java:5419:32:5419:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | provenance | MaD:270 | +| Test.java:5419:59:5419:88 | of(...) : Map [] : String | Test.java:7228:33:7228:51 | map : Map [] : String | provenance | | +| Test.java:5419:66:5419:81 | (...)... : String | Test.java:5419:59:5419:88 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5419:74:5419:81 | source(...) : Object | Test.java:5419:66:5419:81 | (...)... : String | provenance | | +| Test.java:5420:10:5420:11 | in : MyAbstractMapDecorator [] : String | Test.java:5420:10:5420:25 | myDecorated(...) : Map [] : String | provenance | MaD:272 | +| Test.java:5420:10:5420:11 | in : MyAbstractMapDecorator [] : String | Test.java:7231:20:7231:30 | parameter this : MyAbstractMapDecorator [] : String | provenance | | +| Test.java:5420:10:5420:25 | myDecorated(...) : Map [] : String | Test.java:5421:19:5421:21 | out : Map [] : String | provenance | | +| Test.java:5421:19:5421:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | +| Test.java:5421:19:5421:21 | out : Map [] : String | Test.java:5421:9:5421:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5426:32:5426:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | Test.java:5427:10:5427:11 | in : MyAbstractMapDecorator [] : String | provenance | | +| Test.java:5426:59:5426:88 | of(...) : Map [] : String | Test.java:5426:32:5426:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | provenance | MaD:271 | +| Test.java:5426:59:5426:88 | of(...) : Map [] : String | Test.java:7228:33:7228:51 | map : Map [] : String | provenance | | +| Test.java:5426:72:5426:87 | (...)... : String | Test.java:5426:59:5426:88 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5426:80:5426:87 | source(...) : Object | Test.java:5426:72:5426:87 | (...)... : String | provenance | | +| Test.java:5427:10:5427:11 | in : MyAbstractMapDecorator [] : String | Test.java:5427:10:5427:25 | myDecorated(...) : Map [] : String | provenance | MaD:273 | +| Test.java:5427:10:5427:11 | in : MyAbstractMapDecorator [] : String | Test.java:7231:20:7231:30 | parameter this : MyAbstractMapDecorator [] : String | provenance | | +| Test.java:5427:10:5427:25 | myDecorated(...) : Map [] : String | Test.java:5428:21:5428:23 | out : Map [] : String | provenance | | +| Test.java:5428:21:5428:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | +| Test.java:5428:21:5428:23 | out : Map [] : String | Test.java:5428:9:5428:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5433:20:5433:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:5434:44:5434:45 | in : ListOrderedMap [] : String | provenance | | +| Test.java:5433:48:5433:63 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | +| Test.java:5433:48:5433:63 | (...)... : String | Test.java:5433:20:5433:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:14 | +| Test.java:5433:56:5433:63 | source(...) : Object | Test.java:5433:48:5433:63 | (...)... : String | provenance | | +| Test.java:5434:10:5434:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | Test.java:5435:19:5435:21 | out : MyAbstractOrderedMapDecorator [] : String | provenance | | +| Test.java:5434:44:5434:45 | in : ListOrderedMap [] : String | Test.java:5434:10:5434:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | provenance | MaD:274 | +| Test.java:5434:44:5434:45 | in : ListOrderedMap [] : String | Test.java:7086:40:7086:65 | map : ListOrderedMap [] : String | provenance | | +| Test.java:5435:19:5435:21 | out : MyAbstractOrderedMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractOrderedMapDecorator [] : String | provenance | | +| Test.java:5435:19:5435:21 | out : MyAbstractOrderedMapDecorator [] : String | Test.java:5435:9:5435:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5440:20:5440:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:5441:44:5441:45 | in : ListOrderedMap [] : String | provenance | | +| Test.java:5440:50:5440:65 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | +| Test.java:5440:50:5440:65 | (...)... : String | Test.java:5440:20:5440:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:15 | +| Test.java:5440:58:5440:65 | source(...) : Object | Test.java:5440:50:5440:65 | (...)... : String | provenance | | +| Test.java:5441:10:5441:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | Test.java:5442:21:5442:23 | out : MyAbstractOrderedMapDecorator [] : String | provenance | | +| Test.java:5441:44:5441:45 | in : ListOrderedMap [] : String | Test.java:5441:10:5441:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | provenance | MaD:275 | +| Test.java:5441:44:5441:45 | in : ListOrderedMap [] : String | Test.java:7086:40:7086:65 | map : ListOrderedMap [] : String | provenance | | +| Test.java:5442:21:5442:23 | out : MyAbstractOrderedMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractOrderedMapDecorator [] : String | provenance | | +| Test.java:5442:21:5442:23 | out : MyAbstractOrderedMapDecorator [] : String | Test.java:5442:9:5442:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5447:19:5447:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:5448:43:5448:44 | in : TreeMap [] : String | provenance | | +| Test.java:5447:40:5447:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | +| Test.java:5447:40:5447:55 | (...)... : String | Test.java:5447:19:5447:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:5447:48:5447:55 | source(...) : Object | Test.java:5447:40:5447:55 | (...)... : String | provenance | | +| Test.java:5448:10:5448:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | Test.java:5449:19:5449:21 | out : MyAbstractSortedMapDecorator [] : String | provenance | | +| Test.java:5448:43:5448:44 | in : TreeMap [] : String | Test.java:5448:10:5448:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | provenance | MaD:276 | +| Test.java:5448:43:5448:44 | in : TreeMap [] : String | Test.java:7092:39:7092:63 | map : TreeMap [] : String | provenance | | +| Test.java:5449:19:5449:21 | out : MyAbstractSortedMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractSortedMapDecorator [] : String | provenance | | +| Test.java:5449:19:5449:21 | out : MyAbstractSortedMapDecorator [] : String | Test.java:5449:9:5449:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5454:19:5454:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:5455:43:5455:44 | in : TreeMap [] : String | provenance | | +| Test.java:5454:42:5454:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | +| Test.java:5454:42:5454:57 | (...)... : String | Test.java:5454:19:5454:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | +| Test.java:5454:50:5454:57 | source(...) : Object | Test.java:5454:42:5454:57 | (...)... : String | provenance | | +| Test.java:5455:10:5455:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | Test.java:5456:21:5456:23 | out : MyAbstractSortedMapDecorator [] : String | provenance | | +| Test.java:5455:43:5455:44 | in : TreeMap [] : String | Test.java:5455:10:5455:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | provenance | MaD:277 | +| Test.java:5455:43:5455:44 | in : TreeMap [] : String | Test.java:7092:39:7092:63 | map : TreeMap [] : String | provenance | | +| Test.java:5456:21:5456:23 | out : MyAbstractSortedMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractSortedMapDecorator [] : String | provenance | | +| Test.java:5456:21:5456:23 | out : MyAbstractSortedMapDecorator [] : String | Test.java:5456:9:5456:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5461:13:5461:42 | of(...) : Map [] : String | Test.java:5462:33:5462:34 | in : Map [] : String | provenance | | +| Test.java:5461:20:5461:35 | (...)... : String | Test.java:5461:13:5461:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5461:28:5461:35 | source(...) : Object | Test.java:5461:20:5461:35 | (...)... : String | provenance | | +| Test.java:5462:10:5462:35 | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | Test.java:5463:19:5463:21 | out : CaseInsensitiveMap [] : String | provenance | | +| Test.java:5462:33:5462:34 | in : Map [] : String | Test.java:5462:10:5462:35 | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | provenance | MaD:278 | +| Test.java:5463:19:5463:21 | out : CaseInsensitiveMap [] : String | Test.java:228:18:228:29 | map : CaseInsensitiveMap [] : String | provenance | | +| Test.java:5463:19:5463:21 | out : CaseInsensitiveMap [] : String | Test.java:5463:9:5463:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5468:13:5468:42 | of(...) : Map [] : String | Test.java:5469:33:5469:34 | in : Map [] : String | provenance | | +| Test.java:5468:26:5468:41 | (...)... : String | Test.java:5468:13:5468:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5468:34:5468:41 | source(...) : Object | Test.java:5468:26:5468:41 | (...)... : String | provenance | | +| Test.java:5469:10:5469:35 | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | Test.java:5470:21:5470:23 | out : CaseInsensitiveMap [] : String | provenance | | +| Test.java:5469:33:5469:34 | in : Map [] : String | Test.java:5469:10:5469:35 | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | provenance | MaD:279 | +| Test.java:5470:21:5470:23 | out : CaseInsensitiveMap [] : String | Test.java:232:20:232:31 | map : CaseInsensitiveMap [] : String | provenance | | +| Test.java:5470:21:5470:23 | out : CaseInsensitiveMap [] : String | Test.java:5470:9:5470:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5475:13:5475:42 | of(...) : Map [] : String | Test.java:5476:27:5476:28 | in : Map [] : String | provenance | | +| Test.java:5475:20:5475:35 | (...)... : String | Test.java:5475:13:5475:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5475:28:5475:35 | source(...) : Object | Test.java:5475:20:5475:35 | (...)... : String | provenance | | +| Test.java:5476:10:5476:40 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5477:19:5477:21 | out : CompositeMap [] : String | provenance | | +| Test.java:5476:27:5476:28 | in : Map [] : String | Test.java:5476:10:5476:40 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:280 | +| Test.java:5477:19:5477:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | +| Test.java:5477:19:5477:21 | out : CompositeMap [] : String | Test.java:5477:9:5477:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5482:13:5482:42 | of(...) : Map [] : String | Test.java:5483:38:5483:39 | in : Map [] : String | provenance | | +| Test.java:5482:20:5482:35 | (...)... : String | Test.java:5482:13:5482:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5482:28:5482:35 | source(...) : Object | Test.java:5482:20:5482:35 | (...)... : String | provenance | | +| Test.java:5483:10:5483:40 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5484:19:5484:21 | out : CompositeMap [] : String | provenance | | +| Test.java:5483:38:5483:39 | in : Map [] : String | Test.java:5483:10:5483:40 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:282 | +| Test.java:5484:19:5484:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | +| Test.java:5484:19:5484:21 | out : CompositeMap [] : String | Test.java:5484:9:5484:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5489:13:5489:42 | of(...) : Map [] : String | Test.java:5490:27:5490:28 | in : Map [] : String | provenance | | +| Test.java:5489:26:5489:41 | (...)... : String | Test.java:5489:13:5489:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5489:34:5489:41 | source(...) : Object | Test.java:5489:26:5489:41 | (...)... : String | provenance | | +| Test.java:5490:10:5490:40 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5491:21:5491:23 | out : CompositeMap [] : String | provenance | | +| Test.java:5490:27:5490:28 | in : Map [] : String | Test.java:5490:10:5490:40 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:281 | +| Test.java:5491:21:5491:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | +| Test.java:5491:21:5491:23 | out : CompositeMap [] : String | Test.java:5491:9:5491:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5496:13:5496:42 | of(...) : Map [] : String | Test.java:5497:38:5497:39 | in : Map [] : String | provenance | | +| Test.java:5496:26:5496:41 | (...)... : String | Test.java:5496:13:5496:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5496:34:5496:41 | source(...) : Object | Test.java:5496:26:5496:41 | (...)... : String | provenance | | +| Test.java:5497:10:5497:40 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5498:21:5498:23 | out : CompositeMap [] : String | provenance | | +| Test.java:5497:38:5497:39 | in : Map [] : String | Test.java:5497:10:5497:40 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:283 | +| Test.java:5498:21:5498:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | +| Test.java:5498:21:5498:23 | out : CompositeMap [] : String | Test.java:5498:9:5498:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5503:13:5503:42 | of(...) : Map [] : String | Test.java:5504:27:5504:28 | in : Map [] : String | provenance | | +| Test.java:5503:20:5503:35 | (...)... : String | Test.java:5503:13:5503:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5503:28:5503:35 | source(...) : Object | Test.java:5503:20:5503:35 | (...)... : String | provenance | | +| Test.java:5504:10:5504:41 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5505:19:5505:21 | out : CompositeMap [] : String | provenance | | +| Test.java:5504:27:5504:28 | in : Map [] : String | Test.java:5504:10:5504:41 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:284 | +| Test.java:5505:19:5505:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | +| Test.java:5505:19:5505:21 | out : CompositeMap [] : String | Test.java:5505:9:5505:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5510:13:5510:42 | of(...) : Map [] : String | Test.java:5511:33:5511:34 | in : Map [] : String | provenance | | +| Test.java:5510:20:5510:35 | (...)... : String | Test.java:5510:13:5510:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5510:28:5510:35 | source(...) : Object | Test.java:5510:20:5510:35 | (...)... : String | provenance | | +| Test.java:5511:10:5511:41 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5512:19:5512:21 | out : CompositeMap [] : String | provenance | | +| Test.java:5511:33:5511:34 | in : Map [] : String | Test.java:5511:10:5511:41 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:286 | +| Test.java:5512:19:5512:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | +| Test.java:5512:19:5512:21 | out : CompositeMap [] : String | Test.java:5512:9:5512:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5517:13:5517:42 | of(...) : Map [] : String | Test.java:5518:27:5518:28 | in : Map [] : String | provenance | | +| Test.java:5517:26:5517:41 | (...)... : String | Test.java:5517:13:5517:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5517:34:5517:41 | source(...) : Object | Test.java:5517:26:5517:41 | (...)... : String | provenance | | +| Test.java:5518:10:5518:41 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5519:21:5519:23 | out : CompositeMap [] : String | provenance | | +| Test.java:5518:27:5518:28 | in : Map [] : String | Test.java:5518:10:5518:41 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:285 | +| Test.java:5519:21:5519:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | +| Test.java:5519:21:5519:23 | out : CompositeMap [] : String | Test.java:5519:9:5519:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5524:13:5524:42 | of(...) : Map [] : String | Test.java:5525:33:5525:34 | in : Map [] : String | provenance | | +| Test.java:5524:26:5524:41 | (...)... : String | Test.java:5524:13:5524:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5524:34:5524:41 | source(...) : Object | Test.java:5524:26:5524:41 | (...)... : String | provenance | | +| Test.java:5525:10:5525:41 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5526:21:5526:23 | out : CompositeMap [] : String | provenance | | +| Test.java:5525:33:5525:34 | in : Map [] : String | Test.java:5525:10:5525:41 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:287 | +| Test.java:5526:21:5526:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | +| Test.java:5526:21:5526:23 | out : CompositeMap [] : String | Test.java:5526:9:5526:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5531:15:5531:55 | {...} : Map[] [[], ] : String | Test.java:5532:27:5532:28 | in : Map[] [[], ] : String | provenance | | +| Test.java:5531:25:5531:54 | of(...) : Map [] : String | Test.java:5531:15:5531:55 | {...} : Map[] [[], ] : String | provenance | | +| Test.java:5531:32:5531:47 | (...)... : String | Test.java:5531:25:5531:54 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5531:40:5531:47 | source(...) : Object | Test.java:5531:32:5531:47 | (...)... : String | provenance | | +| Test.java:5532:10:5532:29 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5533:19:5533:21 | out : CompositeMap [] : String | provenance | | +| Test.java:5532:27:5532:28 | in : Map[] [[], ] : String | Test.java:5532:10:5532:29 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:288 | +| Test.java:5533:19:5533:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | +| Test.java:5533:19:5533:21 | out : CompositeMap [] : String | Test.java:5533:9:5533:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5538:15:5538:55 | {...} : Map[] [[], ] : String | Test.java:5539:27:5539:28 | in : Map[] [[], ] : String | provenance | | +| Test.java:5538:25:5538:54 | of(...) : Map [] : String | Test.java:5538:15:5538:55 | {...} : Map[] [[], ] : String | provenance | | +| Test.java:5538:38:5538:53 | (...)... : String | Test.java:5538:25:5538:54 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5538:46:5538:53 | source(...) : Object | Test.java:5538:38:5538:53 | (...)... : String | provenance | | +| Test.java:5539:10:5539:29 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5540:21:5540:23 | out : CompositeMap [] : String | provenance | | +| Test.java:5539:27:5539:28 | in : Map[] [[], ] : String | Test.java:5539:10:5539:29 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:289 | +| Test.java:5540:21:5540:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | +| Test.java:5540:21:5540:23 | out : CompositeMap [] : String | Test.java:5540:9:5540:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5545:15:5545:55 | {...} : Map[] [[], ] : String | Test.java:5546:27:5546:28 | in : Map[] [[], ] : String | provenance | | +| Test.java:5545:25:5545:54 | of(...) : Map [] : String | Test.java:5545:15:5545:55 | {...} : Map[] [[], ] : String | provenance | | +| Test.java:5545:32:5545:47 | (...)... : String | Test.java:5545:25:5545:54 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5545:40:5545:47 | source(...) : Object | Test.java:5545:32:5545:47 | (...)... : String | provenance | | +| Test.java:5546:10:5546:60 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5547:19:5547:21 | out : CompositeMap [] : String | provenance | | +| Test.java:5546:27:5546:28 | in : Map[] [[], ] : String | Test.java:5546:10:5546:60 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:290 | +| Test.java:5547:19:5547:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | +| Test.java:5547:19:5547:21 | out : CompositeMap [] : String | Test.java:5547:9:5547:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5552:15:5552:55 | {...} : Map[] [[], ] : String | Test.java:5553:27:5553:28 | in : Map[] [[], ] : String | provenance | | +| Test.java:5552:25:5552:54 | of(...) : Map [] : String | Test.java:5552:15:5552:55 | {...} : Map[] [[], ] : String | provenance | | +| Test.java:5552:38:5552:53 | (...)... : String | Test.java:5552:25:5552:54 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5552:46:5552:53 | source(...) : Object | Test.java:5552:38:5552:53 | (...)... : String | provenance | | +| Test.java:5553:10:5553:60 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5554:21:5554:23 | out : CompositeMap [] : String | provenance | | +| Test.java:5553:27:5553:28 | in : Map[] [[], ] : String | Test.java:5553:10:5553:60 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:291 | +| Test.java:5554:21:5554:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | +| Test.java:5554:21:5554:23 | out : CompositeMap [] : String | Test.java:5554:9:5554:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5559:13:5559:42 | of(...) : Map [] : String | Test.java:5560:22:5560:23 | in : Map [] : String | provenance | | +| Test.java:5559:20:5559:35 | (...)... : String | Test.java:5559:13:5559:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5559:28:5559:35 | source(...) : Object | Test.java:5559:20:5559:35 | (...)... : String | provenance | | +| Test.java:5560:4:5560:6 | out [post update] : CompositeMap [] : String | Test.java:5561:19:5561:21 | out : CompositeMap [] : String | provenance | | +| Test.java:5560:22:5560:23 | in : Map [] : String | Test.java:5560:4:5560:6 | out [post update] : CompositeMap [] : String | provenance | MaD:292 | +| Test.java:5561:19:5561:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | provenance | | +| Test.java:5561:19:5561:21 | out : CompositeMap [] : String | Test.java:5561:9:5561:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5566:13:5566:42 | of(...) : Map [] : String | Test.java:5567:22:5567:23 | in : Map [] : String | provenance | | +| Test.java:5566:26:5566:41 | (...)... : String | Test.java:5566:13:5566:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5566:34:5566:41 | source(...) : Object | Test.java:5566:26:5566:41 | (...)... : String | provenance | | +| Test.java:5567:4:5567:6 | out [post update] : CompositeMap [] : String | Test.java:5568:21:5568:23 | out : CompositeMap [] : String | provenance | | +| Test.java:5567:22:5567:23 | in : Map [] : String | Test.java:5567:4:5567:6 | out [post update] : CompositeMap [] : String | provenance | MaD:293 | +| Test.java:5568:21:5568:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | provenance | | +| Test.java:5568:21:5568:23 | out : CompositeMap [] : String | Test.java:5568:9:5568:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5573:13:5573:25 | (...)... : Map | Test.java:5575:36:5575:37 | in : Map | provenance | | +| Test.java:5573:18:5573:25 | source(...) : Object | Test.java:5573:13:5573:25 | (...)... : Map | provenance | | +| Test.java:5575:10:5575:38 | removeComposited(...) : Map | Test.java:5576:9:5576:11 | out | provenance | | +| Test.java:5575:36:5575:37 | in : Map | Test.java:5575:10:5575:38 | removeComposited(...) : Map | provenance | MaD:294 | +| Test.java:5581:22:5581:75 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5582:10:5582:11 | in : CompositeMap [] : String | provenance | | +| Test.java:5581:39:5581:68 | of(...) : Map [] : String | Test.java:5581:22:5581:75 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:280 | +| Test.java:5581:46:5581:61 | (...)... : String | Test.java:5581:39:5581:68 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5581:54:5581:61 | source(...) : Object | Test.java:5581:46:5581:61 | (...)... : String | provenance | | +| Test.java:5582:10:5582:11 | in : CompositeMap [] : String | Test.java:5582:10:5582:34 | removeComposited(...) : Map [] : String | provenance | MaD:295 | +| Test.java:5582:10:5582:34 | removeComposited(...) : Map [] : String | Test.java:5583:19:5583:21 | out : Map [] : String | provenance | | +| Test.java:5583:19:5583:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | +| Test.java:5583:19:5583:21 | out : Map [] : String | Test.java:5583:9:5583:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5588:22:5588:75 | new CompositeMap<>(...) : CompositeMap [] : String | Test.java:5589:10:5589:11 | in : CompositeMap [] : String | provenance | | +| Test.java:5588:39:5588:68 | of(...) : Map [] : String | Test.java:5588:22:5588:75 | new CompositeMap<>(...) : CompositeMap [] : String | provenance | MaD:281 | +| Test.java:5588:52:5588:67 | (...)... : String | Test.java:5588:39:5588:68 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5588:60:5588:67 | source(...) : Object | Test.java:5588:52:5588:67 | (...)... : String | provenance | | +| Test.java:5589:10:5589:11 | in : CompositeMap [] : String | Test.java:5589:10:5589:34 | removeComposited(...) : Map [] : String | provenance | MaD:296 | +| Test.java:5589:10:5589:34 | removeComposited(...) : Map [] : String | Test.java:5590:21:5590:23 | out : Map [] : String | provenance | | +| Test.java:5590:21:5590:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | +| Test.java:5590:21:5590:23 | out : Map [] : String | Test.java:5590:9:5590:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5595:16:5595:23 | source(...) : Object | Test.java:5596:27:5596:28 | in : Object | provenance | | +| Test.java:5596:10:5596:29 | new DefaultedMap<>(...) : DefaultedMap [] : Object | Test.java:5597:21:5597:23 | out : DefaultedMap [] : Object | provenance | | +| Test.java:5596:27:5596:28 | in : Object | Test.java:5596:10:5596:29 | new DefaultedMap<>(...) : DefaultedMap [] : Object | provenance | MaD:297 | +| Test.java:5597:21:5597:23 | out : DefaultedMap [] : Object | Test.java:232:20:232:31 | map : DefaultedMap [] : Object | provenance | | +| Test.java:5597:21:5597:23 | out : DefaultedMap [] : Object | Test.java:5597:9:5597:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5602:16:5602:23 | source(...) : Object | Test.java:5603:47:5603:48 | in : Object | provenance | | +| Test.java:5603:10:5603:49 | defaultedMap(...) : DefaultedMap [] : Object | Test.java:5604:21:5604:23 | out : DefaultedMap [] : Object | provenance | | +| Test.java:5603:47:5603:48 | in : Object | Test.java:5603:10:5603:49 | defaultedMap(...) : DefaultedMap [] : Object | provenance | MaD:298 | +| Test.java:5604:21:5604:23 | out : DefaultedMap [] : Object | Test.java:232:20:232:31 | map : DefaultedMap [] : Object | provenance | | +| Test.java:5604:21:5604:23 | out : DefaultedMap [] : Object | Test.java:5604:9:5604:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5609:28:5609:57 | of(...) : Map [] : String | Test.java:5610:36:5610:37 | in : Map [] : String | provenance | | +| Test.java:5609:35:5609:50 | (...)... : String | Test.java:5609:28:5609:57 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5609:43:5609:50 | source(...) : Object | Test.java:5609:35:5609:50 | (...)... : String | provenance | | +| Test.java:5610:10:5610:57 | defaultedMap(...) : Map [] : String | Test.java:5611:19:5611:21 | out : Map [] : String | provenance | | +| Test.java:5610:36:5610:37 | in : Map [] : String | Test.java:5610:10:5610:57 | defaultedMap(...) : Map [] : String | provenance | MaD:299 | +| Test.java:5611:19:5611:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | +| Test.java:5611:19:5611:21 | out : Map [] : String | Test.java:5611:9:5611:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5616:13:5616:42 | of(...) : Map [] : String | Test.java:5617:36:5617:37 | in : Map [] : String | provenance | | +| Test.java:5616:20:5616:35 | (...)... : String | Test.java:5616:13:5616:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5616:28:5616:35 | source(...) : Object | Test.java:5616:20:5616:35 | (...)... : String | provenance | | +| Test.java:5617:10:5617:52 | defaultedMap(...) : DefaultedMap [] : String | Test.java:5618:19:5618:21 | out : DefaultedMap [] : String | provenance | | +| Test.java:5617:36:5617:37 | in : Map [] : String | Test.java:5617:10:5617:52 | defaultedMap(...) : DefaultedMap [] : String | provenance | MaD:299 | +| Test.java:5618:19:5618:21 | out : DefaultedMap [] : String | Test.java:228:18:228:29 | map : DefaultedMap [] : String | provenance | | +| Test.java:5618:19:5618:21 | out : DefaultedMap [] : String | Test.java:5618:9:5618:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5623:28:5623:57 | of(...) : Map [] : String | Test.java:5624:36:5624:37 | in : Map [] : String | provenance | | +| Test.java:5623:35:5623:50 | (...)... : String | Test.java:5623:28:5623:57 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5623:43:5623:50 | source(...) : Object | Test.java:5623:35:5623:50 | (...)... : String | provenance | | +| Test.java:5624:10:5624:53 | defaultedMap(...) : DefaultedMap [] : String | Test.java:5625:19:5625:21 | out : DefaultedMap [] : String | provenance | | +| Test.java:5624:36:5624:37 | in : Map [] : String | Test.java:5624:10:5624:53 | defaultedMap(...) : DefaultedMap [] : String | provenance | MaD:299 | +| Test.java:5625:19:5625:21 | out : DefaultedMap [] : String | Test.java:228:18:228:29 | map : DefaultedMap [] : String | provenance | | +| Test.java:5625:19:5625:21 | out : DefaultedMap [] : String | Test.java:5625:9:5625:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5630:28:5630:57 | of(...) : Map [] : String | Test.java:5631:36:5631:37 | in : Map [] : String | provenance | | +| Test.java:5630:41:5630:56 | (...)... : String | Test.java:5630:28:5630:57 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5630:49:5630:56 | source(...) : Object | Test.java:5630:41:5630:56 | (...)... : String | provenance | | +| Test.java:5631:10:5631:57 | defaultedMap(...) : Map [] : String | Test.java:5632:21:5632:23 | out : Map [] : String | provenance | | +| Test.java:5631:36:5631:37 | in : Map [] : String | Test.java:5631:10:5631:57 | defaultedMap(...) : Map [] : String | provenance | MaD:300 | +| Test.java:5632:21:5632:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | +| Test.java:5632:21:5632:23 | out : Map [] : String | Test.java:5632:9:5632:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5637:13:5637:42 | of(...) : Map [] : String | Test.java:5638:36:5638:37 | in : Map [] : String | provenance | | +| Test.java:5637:26:5637:41 | (...)... : String | Test.java:5637:13:5637:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5637:34:5637:41 | source(...) : Object | Test.java:5637:26:5637:41 | (...)... : String | provenance | | +| Test.java:5638:10:5638:52 | defaultedMap(...) : DefaultedMap [] : String | Test.java:5639:21:5639:23 | out : DefaultedMap [] : String | provenance | | +| Test.java:5638:36:5638:37 | in : Map [] : String | Test.java:5638:10:5638:52 | defaultedMap(...) : DefaultedMap [] : String | provenance | MaD:300 | +| Test.java:5639:21:5639:23 | out : DefaultedMap [] : String | Test.java:232:20:232:31 | map : DefaultedMap [] : String | provenance | | +| Test.java:5639:21:5639:23 | out : DefaultedMap [] : String | Test.java:5639:9:5639:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5644:28:5644:57 | of(...) : Map [] : String | Test.java:5645:36:5645:37 | in : Map [] : String | provenance | | +| Test.java:5644:41:5644:56 | (...)... : String | Test.java:5644:28:5644:57 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5644:49:5644:56 | source(...) : Object | Test.java:5644:41:5644:56 | (...)... : String | provenance | | +| Test.java:5645:10:5645:53 | defaultedMap(...) : DefaultedMap [] : String | Test.java:5646:21:5646:23 | out : DefaultedMap [] : String | provenance | | +| Test.java:5645:36:5645:37 | in : Map [] : String | Test.java:5645:10:5645:53 | defaultedMap(...) : DefaultedMap [] : String | provenance | MaD:300 | +| Test.java:5646:21:5646:23 | out : DefaultedMap [] : String | Test.java:232:20:232:31 | map : DefaultedMap [] : String | provenance | | +| Test.java:5646:21:5646:23 | out : DefaultedMap [] : String | Test.java:5646:9:5646:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5651:13:5651:76 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | Test.java:5652:43:5652:44 | in : ListOrderedSet [, ] : String | provenance | | +| Test.java:5651:42:5651:75 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | provenance | | +| Test.java:5651:42:5651:75 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:5651:13:5651:76 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | provenance | MaD:441 | +| Test.java:5651:59:5651:74 | (...)... : String | Test.java:286:46:286:50 | key : String | provenance | | +| Test.java:5651:59:5651:74 | (...)... : String | Test.java:5651:42:5651:75 | newTMEWithMapKey(...) : TiedMapEntry [] : String | provenance | MaD:237 | +| Test.java:5651:67:5651:74 | source(...) : Object | Test.java:5651:59:5651:74 | (...)... : String | provenance | | +| Test.java:5652:10:5652:45 | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | Test.java:5653:20:5653:22 | out : EntrySetToMapIteratorAdapter [] : String | provenance | | +| Test.java:5652:43:5652:44 | in : ListOrderedSet [, ] : String | Test.java:5652:10:5652:45 | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | provenance | MaD:301 | +| Test.java:5653:20:5653:22 | out : EntrySetToMapIteratorAdapter [] : String | Test.java:231:19:231:32 | it : EntrySetToMapIteratorAdapter [] : String | provenance | | +| Test.java:5653:20:5653:22 | out : EntrySetToMapIteratorAdapter [] : String | Test.java:5653:9:5653:23 | getElement(...) | provenance | MaD:7 | +| Test.java:5658:13:5658:78 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | Test.java:5659:43:5659:44 | in : ListOrderedSet [, ] : String | provenance | | +| Test.java:5658:42:5658:77 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | provenance | | +| Test.java:5658:42:5658:77 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:5658:13:5658:78 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | provenance | MaD:441 | +| Test.java:5658:61:5658:76 | (...)... : String | Test.java:305:48:305:54 | value : String | provenance | | +| Test.java:5658:61:5658:76 | (...)... : String | Test.java:5658:42:5658:77 | newTMEWithMapValue(...) : TiedMapEntry [] : String | provenance | MaD:21 | +| Test.java:5658:69:5658:76 | source(...) : Object | Test.java:5658:61:5658:76 | (...)... : String | provenance | | +| Test.java:5659:10:5659:45 | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | Test.java:5660:21:5660:23 | out : EntrySetToMapIteratorAdapter [] : String | provenance | | +| Test.java:5659:43:5659:44 | in : ListOrderedSet [, ] : String | Test.java:5659:10:5659:45 | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | provenance | MaD:302 | +| Test.java:5660:21:5660:23 | out : EntrySetToMapIteratorAdapter [] : String | Test.java:246:20:246:47 | mapIterator : EntrySetToMapIteratorAdapter [] : String | provenance | | +| Test.java:5660:21:5660:23 | out : EntrySetToMapIteratorAdapter [] : String | Test.java:5660:9:5660:24 | getMapValue(...) | provenance | MaD:677 | +| Test.java:5665:13:5665:42 | of(...) : Map [] : String | Test.java:5666:36:5666:37 | in : Map [] : String | provenance | | +| Test.java:5665:20:5665:35 | (...)... : String | Test.java:5665:13:5665:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5665:28:5665:35 | source(...) : Object | Test.java:5665:20:5665:35 | (...)... : String | provenance | | +| Test.java:5666:10:5666:38 | fixedSizeMap(...) : FixedSizeMap [] : String | Test.java:5667:19:5667:21 | out : FixedSizeMap [] : String | provenance | | +| Test.java:5666:36:5666:37 | in : Map [] : String | Test.java:5666:10:5666:38 | fixedSizeMap(...) : FixedSizeMap [] : String | provenance | MaD:303 | +| Test.java:5667:19:5667:21 | out : FixedSizeMap [] : String | Test.java:228:18:228:29 | map : FixedSizeMap [] : String | provenance | | +| Test.java:5667:19:5667:21 | out : FixedSizeMap [] : String | Test.java:5667:9:5667:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5672:13:5672:42 | of(...) : Map [] : String | Test.java:5673:36:5673:37 | in : Map [] : String | provenance | | +| Test.java:5672:26:5672:41 | (...)... : String | Test.java:5672:13:5672:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5672:34:5672:41 | source(...) : Object | Test.java:5672:26:5672:41 | (...)... : String | provenance | | +| Test.java:5673:10:5673:38 | fixedSizeMap(...) : FixedSizeMap [] : String | Test.java:5674:21:5674:23 | out : FixedSizeMap [] : String | provenance | | +| Test.java:5673:36:5673:37 | in : Map [] : String | Test.java:5673:10:5673:38 | fixedSizeMap(...) : FixedSizeMap [] : String | provenance | MaD:304 | +| Test.java:5674:21:5674:23 | out : FixedSizeMap [] : String | Test.java:232:20:232:31 | map : FixedSizeMap [] : String | provenance | | +| Test.java:5674:21:5674:23 | out : FixedSizeMap [] : String | Test.java:5674:9:5674:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5679:19:5679:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:5680:48:5680:49 | in : TreeMap [] : String | provenance | | +| Test.java:5679:40:5679:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | +| Test.java:5679:40:5679:55 | (...)... : String | Test.java:5679:19:5679:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:5679:48:5679:55 | source(...) : Object | Test.java:5679:40:5679:55 | (...)... : String | provenance | | +| Test.java:5680:10:5680:50 | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | Test.java:5681:19:5681:21 | out : FixedSizeSortedMap [] : String | provenance | | +| Test.java:5680:48:5680:49 | in : TreeMap [] : String | Test.java:5680:10:5680:50 | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | provenance | MaD:305 | +| Test.java:5681:19:5681:21 | out : FixedSizeSortedMap [] : String | Test.java:228:18:228:29 | map : FixedSizeSortedMap [] : String | provenance | | +| Test.java:5681:19:5681:21 | out : FixedSizeSortedMap [] : String | Test.java:5681:9:5681:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5686:19:5686:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:5687:48:5687:49 | in : TreeMap [] : String | provenance | | +| Test.java:5686:42:5686:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | +| Test.java:5686:42:5686:57 | (...)... : String | Test.java:5686:19:5686:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | +| Test.java:5686:50:5686:57 | source(...) : Object | Test.java:5686:42:5686:57 | (...)... : String | provenance | | +| Test.java:5687:10:5687:50 | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | Test.java:5688:21:5688:23 | out : FixedSizeSortedMap [] : String | provenance | | +| Test.java:5687:48:5687:49 | in : TreeMap [] : String | Test.java:5687:10:5687:50 | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | provenance | MaD:306 | +| Test.java:5688:21:5688:23 | out : FixedSizeSortedMap [] : String | Test.java:232:20:232:31 | map : FixedSizeSortedMap [] : String | provenance | | +| Test.java:5688:21:5688:23 | out : FixedSizeSortedMap [] : String | Test.java:5688:9:5688:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5693:13:5693:42 | of(...) : Map [] : String | Test.java:5694:23:5694:24 | in : Map [] : String | provenance | | +| Test.java:5693:20:5693:35 | (...)... : String | Test.java:5693:13:5693:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5693:28:5693:35 | source(...) : Object | Test.java:5693:20:5693:35 | (...)... : String | provenance | | +| Test.java:5694:10:5694:25 | new Flat3Map<>(...) : Flat3Map [] : String | Test.java:5695:19:5695:21 | out : Flat3Map [] : String | provenance | | +| Test.java:5694:23:5694:24 | in : Map [] : String | Test.java:5694:10:5694:25 | new Flat3Map<>(...) : Flat3Map [] : String | provenance | MaD:307 | +| Test.java:5695:19:5695:21 | out : Flat3Map [] : String | Test.java:228:18:228:29 | map : Flat3Map [] : String | provenance | | +| Test.java:5695:19:5695:21 | out : Flat3Map [] : String | Test.java:5695:9:5695:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5700:13:5700:42 | of(...) : Map [] : String | Test.java:5701:23:5701:24 | in : Map [] : String | provenance | | +| Test.java:5700:26:5700:41 | (...)... : String | Test.java:5700:13:5700:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5700:34:5700:41 | source(...) : Object | Test.java:5700:26:5700:41 | (...)... : String | provenance | | +| Test.java:5701:10:5701:25 | new Flat3Map<>(...) : Flat3Map [] : String | Test.java:5702:21:5702:23 | out : Flat3Map [] : String | provenance | | +| Test.java:5701:23:5701:24 | in : Map [] : String | Test.java:5701:10:5701:25 | new Flat3Map<>(...) : Flat3Map [] : String | provenance | MaD:308 | +| Test.java:5702:21:5702:23 | out : Flat3Map [] : String | Test.java:232:20:232:31 | map : Flat3Map [] : String | provenance | | +| Test.java:5702:21:5702:23 | out : Flat3Map [] : String | Test.java:5702:9:5702:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5707:13:5707:42 | of(...) : Map [] : String | Test.java:5708:24:5708:25 | in : Map [] : String | provenance | | +| Test.java:5707:20:5707:35 | (...)... : String | Test.java:5707:13:5707:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5707:28:5707:35 | source(...) : Object | Test.java:5707:20:5707:35 | (...)... : String | provenance | | +| Test.java:5708:10:5708:26 | new HashedMap<>(...) : HashedMap [] : String | Test.java:5709:19:5709:21 | out : HashedMap [] : String | provenance | | +| Test.java:5708:24:5708:25 | in : Map [] : String | Test.java:5708:10:5708:26 | new HashedMap<>(...) : HashedMap [] : String | provenance | MaD:309 | +| Test.java:5709:19:5709:21 | out : HashedMap [] : String | Test.java:228:18:228:29 | map : HashedMap [] : String | provenance | | +| Test.java:5709:19:5709:21 | out : HashedMap [] : String | Test.java:5709:9:5709:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5714:13:5714:42 | of(...) : Map [] : String | Test.java:5715:24:5715:25 | in : Map [] : String | provenance | | +| Test.java:5714:26:5714:41 | (...)... : String | Test.java:5714:13:5714:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5714:34:5714:41 | source(...) : Object | Test.java:5714:26:5714:41 | (...)... : String | provenance | | +| Test.java:5715:10:5715:26 | new HashedMap<>(...) : HashedMap [] : String | Test.java:5716:21:5716:23 | out : HashedMap [] : String | provenance | | +| Test.java:5715:24:5715:25 | in : Map [] : String | Test.java:5715:10:5715:26 | new HashedMap<>(...) : HashedMap [] : String | provenance | MaD:310 | +| Test.java:5716:21:5716:23 | out : HashedMap [] : String | Test.java:232:20:232:31 | map : HashedMap [] : String | provenance | | +| Test.java:5716:21:5716:23 | out : HashedMap [] : String | Test.java:5716:9:5716:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5721:13:5721:42 | of(...) : Map [] : String | Test.java:5722:21:5722:22 | in : Map [] : String | provenance | | +| Test.java:5721:20:5721:35 | (...)... : String | Test.java:5721:13:5721:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5721:28:5721:35 | source(...) : Object | Test.java:5721:20:5721:35 | (...)... : String | provenance | | +| Test.java:5722:10:5722:23 | new LRUMap<>(...) : LRUMap [] : String | Test.java:5723:19:5723:21 | out : LRUMap [] : String | provenance | | +| Test.java:5722:21:5722:22 | in : Map [] : String | Test.java:5722:10:5722:23 | new LRUMap<>(...) : LRUMap [] : String | provenance | MaD:311 | +| Test.java:5723:19:5723:21 | out : LRUMap [] : String | Test.java:228:18:228:29 | map : LRUMap [] : String | provenance | | +| Test.java:5723:19:5723:21 | out : LRUMap [] : String | Test.java:5723:9:5723:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5728:13:5728:42 | of(...) : Map [] : String | Test.java:5729:21:5729:22 | in : Map [] : String | provenance | | +| Test.java:5728:26:5728:41 | (...)... : String | Test.java:5728:13:5728:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5728:34:5728:41 | source(...) : Object | Test.java:5728:26:5728:41 | (...)... : String | provenance | | +| Test.java:5729:10:5729:23 | new LRUMap<>(...) : LRUMap [] : String | Test.java:5730:21:5730:23 | out : LRUMap [] : String | provenance | | +| Test.java:5729:21:5729:22 | in : Map [] : String | Test.java:5729:10:5729:23 | new LRUMap<>(...) : LRUMap [] : String | provenance | MaD:312 | +| Test.java:5730:21:5730:23 | out : LRUMap [] : String | Test.java:232:20:232:31 | map : LRUMap [] : String | provenance | | +| Test.java:5730:21:5730:23 | out : LRUMap [] : String | Test.java:5730:9:5730:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5735:13:5735:42 | of(...) : Map [] : String | Test.java:5736:21:5736:22 | in : Map [] : String | provenance | | +| Test.java:5735:20:5735:35 | (...)... : String | Test.java:5735:13:5735:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5735:28:5735:35 | source(...) : Object | Test.java:5735:20:5735:35 | (...)... : String | provenance | | +| Test.java:5736:10:5736:30 | new LRUMap<>(...) : LRUMap [] : String | Test.java:5737:19:5737:21 | out : LRUMap [] : String | provenance | | +| Test.java:5736:21:5736:22 | in : Map [] : String | Test.java:5736:10:5736:30 | new LRUMap<>(...) : LRUMap [] : String | provenance | MaD:313 | +| Test.java:5737:19:5737:21 | out : LRUMap [] : String | Test.java:228:18:228:29 | map : LRUMap [] : String | provenance | | +| Test.java:5737:19:5737:21 | out : LRUMap [] : String | Test.java:5737:9:5737:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5742:13:5742:42 | of(...) : Map [] : String | Test.java:5743:21:5743:22 | in : Map [] : String | provenance | | +| Test.java:5742:26:5742:41 | (...)... : String | Test.java:5742:13:5742:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5742:34:5742:41 | source(...) : Object | Test.java:5742:26:5742:41 | (...)... : String | provenance | | +| Test.java:5743:10:5743:30 | new LRUMap<>(...) : LRUMap [] : String | Test.java:5744:21:5744:23 | out : LRUMap [] : String | provenance | | +| Test.java:5743:21:5743:22 | in : Map [] : String | Test.java:5743:10:5743:30 | new LRUMap<>(...) : LRUMap [] : String | provenance | MaD:314 | +| Test.java:5744:21:5744:23 | out : LRUMap [] : String | Test.java:232:20:232:31 | map : LRUMap [] : String | provenance | | +| Test.java:5744:21:5744:23 | out : LRUMap [] : String | Test.java:5744:9:5744:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5749:16:5749:53 | (...)... : Map [] : String | Test.java:5751:23:5751:24 | in : Map [] : String | provenance | | +| Test.java:5749:24:5749:53 | of(...) : Map [] : String | Test.java:5749:16:5749:53 | (...)... : Map [] : String | provenance | | +| Test.java:5749:37:5749:52 | (...)... : String | Test.java:5749:24:5749:53 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5749:45:5749:52 | source(...) : Object | Test.java:5749:37:5749:52 | (...)... : String | provenance | | +| Test.java:5751:10:5751:32 | get(...) : String | Test.java:5752:9:5752:11 | out | provenance | | +| Test.java:5751:23:5751:24 | in : Map [] : String | Test.java:5751:10:5751:32 | get(...) : String | provenance | MaD:315 | +| Test.java:5757:13:5757:42 | of(...) : Map [] : String | Test.java:5758:26:5758:27 | in : Map [] : String | provenance | | +| Test.java:5757:20:5757:35 | (...)... : String | Test.java:5757:13:5757:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5757:28:5757:35 | source(...) : Object | Test.java:5757:20:5757:35 | (...)... : String | provenance | | +| Test.java:5758:10:5758:47 | lazyMap(...) : LazyMap [] : String | Test.java:5759:19:5759:21 | out : LazyMap [] : String | provenance | | +| Test.java:5758:26:5758:27 | in : Map [] : String | Test.java:5758:10:5758:47 | lazyMap(...) : LazyMap [] : String | provenance | MaD:316 | +| Test.java:5759:19:5759:21 | out : LazyMap [] : String | Test.java:228:18:228:29 | map : LazyMap [] : String | provenance | | +| Test.java:5759:19:5759:21 | out : LazyMap [] : String | Test.java:5759:9:5759:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5764:13:5764:42 | of(...) : Map [] : String | Test.java:5765:26:5765:27 | in : Map [] : String | provenance | | +| Test.java:5764:20:5764:35 | (...)... : String | Test.java:5764:13:5764:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5764:28:5764:35 | source(...) : Object | Test.java:5764:20:5764:35 | (...)... : String | provenance | | +| Test.java:5765:10:5765:43 | lazyMap(...) : LazyMap [] : String | Test.java:5766:19:5766:21 | out : LazyMap [] : String | provenance | | +| Test.java:5765:26:5765:27 | in : Map [] : String | Test.java:5765:10:5765:43 | lazyMap(...) : LazyMap [] : String | provenance | MaD:316 | +| Test.java:5766:19:5766:21 | out : LazyMap [] : String | Test.java:228:18:228:29 | map : LazyMap [] : String | provenance | | +| Test.java:5766:19:5766:21 | out : LazyMap [] : String | Test.java:5766:9:5766:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5771:13:5771:42 | of(...) : Map [] : String | Test.java:5772:26:5772:27 | in : Map [] : String | provenance | | +| Test.java:5771:26:5771:41 | (...)... : String | Test.java:5771:13:5771:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5771:34:5771:41 | source(...) : Object | Test.java:5771:26:5771:41 | (...)... : String | provenance | | +| Test.java:5772:10:5772:47 | lazyMap(...) : LazyMap [] : String | Test.java:5773:21:5773:23 | out : LazyMap [] : String | provenance | | +| Test.java:5772:26:5772:27 | in : Map [] : String | Test.java:5772:10:5772:47 | lazyMap(...) : LazyMap [] : String | provenance | MaD:317 | +| Test.java:5773:21:5773:23 | out : LazyMap [] : String | Test.java:232:20:232:31 | map : LazyMap [] : String | provenance | | +| Test.java:5773:21:5773:23 | out : LazyMap [] : String | Test.java:5773:9:5773:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5778:13:5778:42 | of(...) : Map [] : String | Test.java:5779:26:5779:27 | in : Map [] : String | provenance | | +| Test.java:5778:26:5778:41 | (...)... : String | Test.java:5778:13:5778:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5778:34:5778:41 | source(...) : Object | Test.java:5778:26:5778:41 | (...)... : String | provenance | | +| Test.java:5779:10:5779:43 | lazyMap(...) : LazyMap [] : String | Test.java:5780:21:5780:23 | out : LazyMap [] : String | provenance | | +| Test.java:5779:26:5779:27 | in : Map [] : String | Test.java:5779:10:5779:43 | lazyMap(...) : LazyMap [] : String | provenance | MaD:317 | +| Test.java:5780:21:5780:23 | out : LazyMap [] : String | Test.java:232:20:232:31 | map : LazyMap [] : String | provenance | | +| Test.java:5780:21:5780:23 | out : LazyMap [] : String | Test.java:5780:9:5780:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5785:19:5785:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:5786:38:5786:39 | in : TreeMap [] : String | provenance | | +| Test.java:5785:40:5785:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | +| Test.java:5785:40:5785:55 | (...)... : String | Test.java:5785:19:5785:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:5785:48:5785:55 | source(...) : Object | Test.java:5785:40:5785:55 | (...)... : String | provenance | | +| Test.java:5786:10:5786:59 | lazySortedMap(...) : LazySortedMap [] : String | Test.java:5787:19:5787:21 | out : LazySortedMap [] : String | provenance | | +| Test.java:5786:38:5786:39 | in : TreeMap [] : String | Test.java:5786:10:5786:59 | lazySortedMap(...) : LazySortedMap [] : String | provenance | MaD:318 | +| Test.java:5787:19:5787:21 | out : LazySortedMap [] : String | Test.java:228:18:228:29 | map : LazySortedMap [] : String | provenance | | +| Test.java:5787:19:5787:21 | out : LazySortedMap [] : String | Test.java:5787:9:5787:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5792:19:5792:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:5793:38:5793:39 | in : TreeMap [] : String | provenance | | +| Test.java:5792:40:5792:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | +| Test.java:5792:40:5792:55 | (...)... : String | Test.java:5792:19:5792:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:5792:48:5792:55 | source(...) : Object | Test.java:5792:40:5792:55 | (...)... : String | provenance | | +| Test.java:5793:10:5793:55 | lazySortedMap(...) : LazySortedMap [] : String | Test.java:5794:19:5794:21 | out : LazySortedMap [] : String | provenance | | +| Test.java:5793:38:5793:39 | in : TreeMap [] : String | Test.java:5793:10:5793:55 | lazySortedMap(...) : LazySortedMap [] : String | provenance | MaD:318 | +| Test.java:5794:19:5794:21 | out : LazySortedMap [] : String | Test.java:228:18:228:29 | map : LazySortedMap [] : String | provenance | | +| Test.java:5794:19:5794:21 | out : LazySortedMap [] : String | Test.java:5794:9:5794:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5799:19:5799:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:5800:38:5800:39 | in : TreeMap [] : String | provenance | | +| Test.java:5799:42:5799:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | +| Test.java:5799:42:5799:57 | (...)... : String | Test.java:5799:19:5799:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | +| Test.java:5799:50:5799:57 | source(...) : Object | Test.java:5799:42:5799:57 | (...)... : String | provenance | | +| Test.java:5800:10:5800:59 | lazySortedMap(...) : LazySortedMap [] : String | Test.java:5801:21:5801:23 | out : LazySortedMap [] : String | provenance | | +| Test.java:5800:38:5800:39 | in : TreeMap [] : String | Test.java:5800:10:5800:59 | lazySortedMap(...) : LazySortedMap [] : String | provenance | MaD:319 | +| Test.java:5801:21:5801:23 | out : LazySortedMap [] : String | Test.java:232:20:232:31 | map : LazySortedMap [] : String | provenance | | +| Test.java:5801:21:5801:23 | out : LazySortedMap [] : String | Test.java:5801:9:5801:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5806:19:5806:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:5807:38:5807:39 | in : TreeMap [] : String | provenance | | +| Test.java:5806:42:5806:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | +| Test.java:5806:42:5806:57 | (...)... : String | Test.java:5806:19:5806:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | +| Test.java:5806:50:5806:57 | source(...) : Object | Test.java:5806:42:5806:57 | (...)... : String | provenance | | +| Test.java:5807:10:5807:55 | lazySortedMap(...) : LazySortedMap [] : String | Test.java:5808:21:5808:23 | out : LazySortedMap [] : String | provenance | | +| Test.java:5807:38:5807:39 | in : TreeMap [] : String | Test.java:5807:10:5807:55 | lazySortedMap(...) : LazySortedMap [] : String | provenance | MaD:319 | +| Test.java:5808:21:5808:23 | out : LazySortedMap [] : String | Test.java:232:20:232:31 | map : LazySortedMap [] : String | provenance | | +| Test.java:5808:21:5808:23 | out : LazySortedMap [] : String | Test.java:5808:9:5808:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5813:13:5813:42 | of(...) : Map [] : String | Test.java:5814:24:5814:25 | in : Map [] : String | provenance | | +| Test.java:5813:20:5813:35 | (...)... : String | Test.java:5813:13:5813:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5813:28:5813:35 | source(...) : Object | Test.java:5813:20:5813:35 | (...)... : String | provenance | | +| Test.java:5814:10:5814:26 | new LinkedMap<>(...) : LinkedMap [] : String | Test.java:5815:19:5815:21 | out : LinkedMap [] : String | provenance | | +| Test.java:5814:24:5814:25 | in : Map [] : String | Test.java:5814:10:5814:26 | new LinkedMap<>(...) : LinkedMap [] : String | provenance | MaD:320 | +| Test.java:5815:19:5815:21 | out : LinkedMap [] : String | Test.java:228:18:228:29 | map : LinkedMap [] : String | provenance | | +| Test.java:5815:19:5815:21 | out : LinkedMap [] : String | Test.java:5815:9:5815:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5820:13:5820:42 | of(...) : Map [] : String | Test.java:5821:24:5821:25 | in : Map [] : String | provenance | | +| Test.java:5820:26:5820:41 | (...)... : String | Test.java:5820:13:5820:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5820:34:5820:41 | source(...) : Object | Test.java:5820:26:5820:41 | (...)... : String | provenance | | +| Test.java:5821:10:5821:26 | new LinkedMap<>(...) : LinkedMap [] : String | Test.java:5822:21:5822:23 | out : LinkedMap [] : String | provenance | | +| Test.java:5821:24:5821:25 | in : Map [] : String | Test.java:5821:10:5821:26 | new LinkedMap<>(...) : LinkedMap [] : String | provenance | MaD:321 | +| Test.java:5822:21:5822:23 | out : LinkedMap [] : String | Test.java:232:20:232:31 | map : LinkedMap [] : String | provenance | | +| Test.java:5822:21:5822:23 | out : LinkedMap [] : String | Test.java:5822:9:5822:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5827:19:5827:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | Test.java:5828:10:5828:11 | in : LinkedMap [] : String | provenance | | +| Test.java:5827:42:5827:57 | (...)... : String | Test.java:276:49:276:53 | key : String | provenance | | +| Test.java:5827:42:5827:57 | (...)... : String | Test.java:5827:19:5827:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | provenance | MaD:14 | +| Test.java:5827:50:5827:57 | source(...) : Object | Test.java:5827:42:5827:57 | (...)... : String | provenance | | +| Test.java:5828:10:5828:11 | in : LinkedMap [] : String | Test.java:5828:10:5828:20 | asList(...) : List [] : String | provenance | MaD:322 | +| Test.java:5828:10:5828:20 | asList(...) : List [] : String | Test.java:5829:20:5829:22 | out : List [] : String | provenance | | +| Test.java:5829:20:5829:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | +| Test.java:5829:20:5829:22 | out : List [] : String | Test.java:5829:9:5829:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5834:19:5834:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | Test.java:5835:10:5835:11 | in : LinkedMap [] : String | provenance | | +| Test.java:5834:42:5834:57 | (...)... : String | Test.java:276:49:276:53 | key : String | provenance | | +| Test.java:5834:42:5834:57 | (...)... : String | Test.java:5834:19:5834:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | provenance | MaD:14 | +| Test.java:5834:50:5834:57 | source(...) : Object | Test.java:5834:42:5834:57 | (...)... : String | provenance | | +| Test.java:5835:10:5835:11 | in : LinkedMap [] : String | Test.java:5835:10:5835:18 | get(...) : String | provenance | MaD:323 | +| Test.java:5835:10:5835:18 | get(...) : String | Test.java:5836:9:5836:11 | out | provenance | | +| Test.java:5841:19:5841:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | Test.java:5842:10:5842:11 | in : LinkedMap [] : String | provenance | | +| Test.java:5841:44:5841:59 | (...)... : String | Test.java:295:51:295:57 | value : String | provenance | | +| Test.java:5841:44:5841:59 | (...)... : String | Test.java:5841:19:5841:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | provenance | MaD:15 | +| Test.java:5841:52:5841:59 | source(...) : Object | Test.java:5841:44:5841:59 | (...)... : String | provenance | | +| Test.java:5842:10:5842:11 | in : LinkedMap [] : String | Test.java:5842:10:5842:23 | getValue(...) : String | provenance | MaD:324 | +| Test.java:5842:10:5842:23 | getValue(...) : String | Test.java:5843:9:5843:11 | out | provenance | | +| Test.java:5848:19:5848:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | Test.java:5849:10:5849:11 | in : LinkedMap [] : String | provenance | | +| Test.java:5848:44:5848:59 | (...)... : String | Test.java:295:51:295:57 | value : String | provenance | | +| Test.java:5848:44:5848:59 | (...)... : String | Test.java:5848:19:5848:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | provenance | MaD:15 | +| Test.java:5848:52:5848:59 | source(...) : Object | Test.java:5848:44:5848:59 | (...)... : String | provenance | | +| Test.java:5849:10:5849:11 | in : LinkedMap [] : String | Test.java:5849:10:5849:21 | remove(...) : String | provenance | MaD:325 | +| Test.java:5849:10:5849:21 | remove(...) : String | Test.java:5850:9:5850:11 | out | provenance | | +| Test.java:5855:24:5855:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:5856:10:5856:11 | in : ListOrderedMap [] : String | provenance | | +| Test.java:5855:52:5855:67 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | +| Test.java:5855:52:5855:67 | (...)... : String | Test.java:5855:24:5855:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:14 | +| Test.java:5855:60:5855:67 | source(...) : Object | Test.java:5855:52:5855:67 | (...)... : String | provenance | | +| Test.java:5856:10:5856:11 | in : ListOrderedMap [] : String | Test.java:5856:10:5856:20 | asList(...) : List [] : String | provenance | MaD:326 | +| Test.java:5856:10:5856:20 | asList(...) : List [] : String | Test.java:5857:20:5857:22 | out : List [] : String | provenance | | +| Test.java:5857:20:5857:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | +| Test.java:5857:20:5857:22 | out : List [] : String | Test.java:5857:9:5857:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5862:24:5862:60 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : Object | Test.java:5863:10:5863:11 | in : ListOrderedMap [] : Object | provenance | | +| Test.java:5862:52:5862:59 | source(...) : Object | Test.java:277:59:277:63 | key : Object | provenance | | +| Test.java:5862:52:5862:59 | source(...) : Object | Test.java:5862:24:5862:60 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : Object | provenance | MaD:14 | +| Test.java:5863:10:5863:11 | in : ListOrderedMap [] : Object | Test.java:5863:10:5863:18 | get(...) : Object | provenance | MaD:327 | +| Test.java:5863:10:5863:18 | get(...) : Object | Test.java:5864:9:5864:11 | out | provenance | | +| Test.java:5869:24:5869:62 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : Object | Test.java:5870:10:5870:11 | in : ListOrderedMap [] : Object | provenance | | +| Test.java:5869:54:5869:61 | source(...) : Object | Test.java:296:61:296:67 | value : Object | provenance | | +| Test.java:5869:54:5869:61 | source(...) : Object | Test.java:5869:24:5869:62 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : Object | provenance | MaD:15 | +| Test.java:5870:10:5870:11 | in : ListOrderedMap [] : Object | Test.java:5870:10:5870:23 | getValue(...) : Object | provenance | MaD:328 | +| Test.java:5870:10:5870:23 | getValue(...) : Object | Test.java:5871:9:5871:11 | out | provenance | | +| Test.java:5876:24:5876:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:5877:10:5877:11 | in : ListOrderedMap [] : String | provenance | | +| Test.java:5876:52:5876:67 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | +| Test.java:5876:52:5876:67 | (...)... : String | Test.java:5876:24:5876:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:14 | +| Test.java:5876:60:5876:67 | source(...) : Object | Test.java:5876:52:5876:67 | (...)... : String | provenance | | +| Test.java:5877:10:5877:11 | in : ListOrderedMap [] : String | Test.java:5877:10:5877:21 | keyList(...) : List [] : String | provenance | MaD:329 | +| Test.java:5877:10:5877:21 | keyList(...) : List [] : String | Test.java:5878:20:5878:22 | out : List [] : String | provenance | | +| Test.java:5878:20:5878:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | +| Test.java:5878:20:5878:22 | out : List [] : String | Test.java:5878:9:5878:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5883:13:5883:42 | of(...) : Map [] : String | Test.java:5884:40:5884:41 | in : Map [] : String | provenance | | +| Test.java:5883:20:5883:35 | (...)... : String | Test.java:5883:13:5883:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5883:28:5883:35 | source(...) : Object | Test.java:5883:20:5883:35 | (...)... : String | provenance | | +| Test.java:5884:10:5884:42 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5885:19:5885:21 | out : ListOrderedMap [] : String | provenance | | +| Test.java:5884:40:5884:41 | in : Map [] : String | Test.java:5884:10:5884:42 | listOrderedMap(...) : ListOrderedMap [] : String | provenance | MaD:330 | +| Test.java:5885:19:5885:21 | out : ListOrderedMap [] : String | Test.java:228:18:228:29 | map : ListOrderedMap [] : String | provenance | | +| Test.java:5885:19:5885:21 | out : ListOrderedMap [] : String | Test.java:5885:9:5885:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5890:13:5890:42 | of(...) : Map [] : String | Test.java:5891:40:5891:41 | in : Map [] : String | provenance | | +| Test.java:5890:26:5890:41 | (...)... : String | Test.java:5890:13:5890:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5890:34:5890:41 | source(...) : Object | Test.java:5890:26:5890:41 | (...)... : String | provenance | | +| Test.java:5891:10:5891:42 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5892:21:5892:23 | out : ListOrderedMap [] : String | provenance | | +| Test.java:5891:40:5891:41 | in : Map [] : String | Test.java:5891:10:5891:42 | listOrderedMap(...) : ListOrderedMap [] : String | provenance | MaD:331 | +| Test.java:5892:21:5892:23 | out : ListOrderedMap [] : String | Test.java:232:20:232:31 | map : ListOrderedMap [] : String | provenance | | +| Test.java:5892:21:5892:23 | out : ListOrderedMap [] : String | Test.java:5892:9:5892:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5897:16:5897:23 | source(...) : Object | Test.java:5898:18:5898:19 | in : Object | provenance | | +| Test.java:5898:4:5898:6 | out [post update] : ListOrderedMap [] : Object | Test.java:5899:21:5899:23 | out : ListOrderedMap [] : Object | provenance | | +| Test.java:5898:18:5898:19 | in : Object | Test.java:5898:4:5898:6 | out [post update] : ListOrderedMap [] : Object | provenance | MaD:21 | +| Test.java:5898:18:5898:19 | in : Object | Test.java:5898:4:5898:6 | out [post update] : ListOrderedMap [] : Object | provenance | MaD:784 | +| Test.java:5899:21:5899:23 | out : ListOrderedMap [] : Object | Test.java:232:20:232:31 | map : ListOrderedMap [] : Object | provenance | | +| Test.java:5899:21:5899:23 | out : ListOrderedMap [] : Object | Test.java:5899:9:5899:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5904:16:5904:23 | source(...) : Object | Test.java:5905:15:5905:16 | in : Object | provenance | | +| Test.java:5905:4:5905:6 | out [post update] : ListOrderedMap [] : Object | Test.java:5906:19:5906:21 | out : ListOrderedMap [] : Object | provenance | | +| Test.java:5905:15:5905:16 | in : Object | Test.java:5905:4:5905:6 | out [post update] : ListOrderedMap [] : Object | provenance | MaD:332 | +| Test.java:5906:19:5906:21 | out : ListOrderedMap [] : Object | Test.java:228:18:228:29 | map : ListOrderedMap [] : Object | provenance | | +| Test.java:5906:19:5906:21 | out : ListOrderedMap [] : Object | Test.java:5906:9:5906:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5911:16:5911:23 | source(...) : Object | Test.java:5912:21:5912:22 | in : Object | provenance | | +| Test.java:5912:4:5912:6 | out [post update] : ListOrderedMap [] : Object | Test.java:5913:21:5913:23 | out : ListOrderedMap [] : Object | provenance | | +| Test.java:5912:21:5912:22 | in : Object | Test.java:5912:4:5912:6 | out [post update] : ListOrderedMap [] : Object | provenance | MaD:333 | +| Test.java:5913:21:5913:23 | out : ListOrderedMap [] : Object | Test.java:232:20:232:31 | map : ListOrderedMap [] : Object | provenance | | +| Test.java:5913:21:5913:23 | out : ListOrderedMap [] : Object | Test.java:5913:9:5913:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5918:13:5918:42 | of(...) : Map [] : String | Test.java:5919:18:5919:19 | in : Map [] : String | provenance | | +| Test.java:5918:20:5918:35 | (...)... : String | Test.java:5918:13:5918:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:5918:28:5918:35 | source(...) : Object | Test.java:5918:20:5918:35 | (...)... : String | provenance | | +| Test.java:5919:4:5919:6 | out [post update] : ListOrderedMap [] : String | Test.java:5920:19:5920:21 | out : ListOrderedMap [] : String | provenance | | +| Test.java:5919:18:5919:19 | in : Map [] : String | Test.java:5919:4:5919:6 | out [post update] : ListOrderedMap [] : String | provenance | MaD:334 | +| Test.java:5920:19:5920:21 | out : ListOrderedMap [] : String | Test.java:228:18:228:29 | map : ListOrderedMap [] : String | provenance | | +| Test.java:5920:19:5920:21 | out : ListOrderedMap [] : String | Test.java:5920:9:5920:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:5925:13:5925:42 | of(...) : Map [] : String | Test.java:5926:18:5926:19 | in : Map [] : String | provenance | | +| Test.java:5925:26:5925:41 | (...)... : String | Test.java:5925:13:5925:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:5925:34:5925:41 | source(...) : Object | Test.java:5925:26:5925:41 | (...)... : String | provenance | | +| Test.java:5926:4:5926:6 | out [post update] : ListOrderedMap [] : String | Test.java:5927:21:5927:23 | out : ListOrderedMap [] : String | provenance | | +| Test.java:5926:18:5926:19 | in : Map [] : String | Test.java:5926:4:5926:6 | out [post update] : ListOrderedMap [] : String | provenance | MaD:335 | +| Test.java:5927:21:5927:23 | out : ListOrderedMap [] : String | Test.java:232:20:232:31 | map : ListOrderedMap [] : String | provenance | | +| Test.java:5927:21:5927:23 | out : ListOrderedMap [] : String | Test.java:5927:9:5927:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5932:24:5932:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:5933:10:5933:11 | in : ListOrderedMap [] : String | provenance | | +| Test.java:5932:54:5932:69 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | +| Test.java:5932:54:5932:69 | (...)... : String | Test.java:5932:24:5932:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:15 | +| Test.java:5932:62:5932:69 | source(...) : Object | Test.java:5932:54:5932:69 | (...)... : String | provenance | | +| Test.java:5933:10:5933:11 | in : ListOrderedMap [] : String | Test.java:5933:10:5933:21 | remove(...) : String | provenance | MaD:336 | +| Test.java:5933:10:5933:21 | remove(...) : String | Test.java:5934:9:5934:11 | out | provenance | | +| Test.java:5939:16:5939:23 | source(...) : Object | Test.java:5940:20:5940:21 | in : Object | provenance | | +| Test.java:5940:4:5940:6 | out [post update] : ListOrderedMap [] : Object | Test.java:5941:21:5941:23 | out : ListOrderedMap [] : Object | provenance | | +| Test.java:5940:20:5940:21 | in : Object | Test.java:5940:4:5940:6 | out [post update] : ListOrderedMap [] : Object | provenance | MaD:337 | +| Test.java:5941:21:5941:23 | out : ListOrderedMap [] : Object | Test.java:232:20:232:31 | map : ListOrderedMap [] : Object | provenance | | +| Test.java:5941:21:5941:23 | out : ListOrderedMap [] : Object | Test.java:5941:9:5941:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:5946:24:5946:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:5947:10:5947:11 | in : ListOrderedMap [] : String | provenance | | +| Test.java:5946:54:5946:69 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | +| Test.java:5946:54:5946:69 | (...)... : String | Test.java:5946:24:5946:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:15 | +| Test.java:5946:62:5946:69 | source(...) : Object | Test.java:5946:54:5946:69 | (...)... : String | provenance | | +| Test.java:5947:10:5947:11 | in : ListOrderedMap [] : String | Test.java:5947:10:5947:23 | valueList(...) : List [] : String | provenance | MaD:338 | +| Test.java:5947:10:5947:23 | valueList(...) : List [] : String | Test.java:5948:20:5948:22 | out : List [] : String | provenance | | +| Test.java:5948:20:5948:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | +| Test.java:5948:20:5948:22 | out : List [] : String | Test.java:5948:9:5948:23 | getElement(...) | provenance | MaD:3 | +| Test.java:5953:21:5953:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:5954:10:5954:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:5953:40:5953:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:5953:40:5953:55 | (...)... : String | Test.java:5953:21:5953:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:5953:48:5953:55 | source(...) : Object | Test.java:5953:40:5953:55 | (...)... : String | provenance | | +| Test.java:5954:10:5954:11 | in : MultiKeyMap [] : String | Test.java:5954:10:5954:45 | get(...) : String | provenance | MaD:339 | +| Test.java:5954:10:5954:45 | get(...) : String | Test.java:5955:9:5955:11 | out | provenance | | +| Test.java:5960:21:5960:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:5961:10:5961:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:5960:40:5960:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:5960:40:5960:55 | (...)... : String | Test.java:5960:21:5960:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:5960:48:5960:55 | source(...) : Object | Test.java:5960:40:5960:55 | (...)... : String | provenance | | +| Test.java:5961:10:5961:11 | in : MultiKeyMap [] : String | Test.java:5961:10:5961:39 | get(...) : String | provenance | MaD:339 | +| Test.java:5961:10:5961:39 | get(...) : String | Test.java:5962:9:5962:11 | out | provenance | | +| Test.java:5967:21:5967:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:5968:10:5968:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:5967:40:5967:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:5967:40:5967:55 | (...)... : String | Test.java:5967:21:5967:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:5967:48:5967:55 | source(...) : Object | Test.java:5967:40:5967:55 | (...)... : String | provenance | | +| Test.java:5968:10:5968:11 | in : MultiKeyMap [] : String | Test.java:5968:10:5968:33 | get(...) : String | provenance | MaD:339 | +| Test.java:5968:10:5968:33 | get(...) : String | Test.java:5969:9:5969:11 | out | provenance | | +| Test.java:5974:21:5974:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:5975:10:5975:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:5974:40:5974:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:5974:40:5974:55 | (...)... : String | Test.java:5974:21:5974:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:5974:48:5974:55 | source(...) : Object | Test.java:5974:40:5974:55 | (...)... : String | provenance | | +| Test.java:5975:10:5975:11 | in : MultiKeyMap [] : String | Test.java:5975:10:5975:27 | get(...) : String | provenance | MaD:339 | +| Test.java:5975:10:5975:27 | get(...) : String | Test.java:5976:9:5976:11 | out | provenance | | +| Test.java:5981:16:5981:31 | (...)... : String | Test.java:5982:18:5982:19 | in : String | provenance | | +| Test.java:5981:24:5981:31 | source(...) : Object | Test.java:5981:16:5981:31 | (...)... : String | provenance | | +| Test.java:5982:4:5982:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:5983:30:5983:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:5982:18:5982:19 | in : String | Test.java:5982:4:5982:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:340 | +| Test.java:5983:20:5983:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:5983:20:5983:33 | getMapKey(...) : MultiKey [] : String | Test.java:5983:9:5983:34 | getElement(...) | provenance | MaD:234 | +| Test.java:5983:30:5983:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:5983:30:5983:32 | out : MultiKeyMap [, ] : String | Test.java:5983:20:5983:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:5988:16:5988:31 | (...)... : String | Test.java:5989:12:5989:13 | in : String | provenance | | +| Test.java:5988:24:5988:31 | source(...) : Object | Test.java:5988:16:5988:31 | (...)... : String | provenance | | +| Test.java:5989:4:5989:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:5990:30:5990:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:5989:12:5989:13 | in : String | Test.java:5989:4:5989:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:340 | +| Test.java:5990:20:5990:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:5990:20:5990:33 | getMapKey(...) : MultiKey [] : String | Test.java:5990:9:5990:34 | getElement(...) | provenance | MaD:234 | +| Test.java:5990:30:5990:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:5990:30:5990:32 | out : MultiKeyMap [, ] : String | Test.java:5990:20:5990:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:5995:16:5995:31 | (...)... : String | Test.java:5996:24:5996:25 | in : String | provenance | | +| Test.java:5995:24:5995:31 | source(...) : Object | Test.java:5995:16:5995:31 | (...)... : String | provenance | | +| Test.java:5996:4:5996:6 | out [post update] : MultiKeyMap [] : String | Test.java:5997:21:5997:23 | out : MultiKeyMap [] : String | provenance | | +| Test.java:5996:24:5996:25 | in : String | Test.java:5996:4:5996:6 | out [post update] : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:5997:21:5997:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | provenance | | +| Test.java:5997:21:5997:23 | out : MultiKeyMap [] : String | Test.java:5997:9:5997:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6002:16:6002:31 | (...)... : String | Test.java:6003:24:6003:25 | in : String | provenance | | +| Test.java:6002:24:6002:31 | source(...) : Object | Test.java:6002:16:6002:31 | (...)... : String | provenance | | +| Test.java:6003:4:6003:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6004:30:6004:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:6003:24:6003:25 | in : String | Test.java:6003:4:6003:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:342 | +| Test.java:6004:20:6004:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:6004:20:6004:33 | getMapKey(...) : MultiKey [] : String | Test.java:6004:9:6004:34 | getElement(...) | provenance | MaD:234 | +| Test.java:6004:30:6004:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:6004:30:6004:32 | out : MultiKeyMap [, ] : String | Test.java:6004:20:6004:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:6009:16:6009:31 | (...)... : String | Test.java:6010:18:6010:19 | in : String | provenance | | +| Test.java:6009:24:6009:31 | source(...) : Object | Test.java:6009:16:6009:31 | (...)... : String | provenance | | +| Test.java:6010:4:6010:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6011:30:6011:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:6010:18:6010:19 | in : String | Test.java:6010:4:6010:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:342 | +| Test.java:6011:20:6011:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:6011:20:6011:33 | getMapKey(...) : MultiKey [] : String | Test.java:6011:9:6011:34 | getElement(...) | provenance | MaD:234 | +| Test.java:6011:30:6011:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:6011:30:6011:32 | out : MultiKeyMap [, ] : String | Test.java:6011:20:6011:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:6016:16:6016:31 | (...)... : String | Test.java:6017:12:6017:13 | in : String | provenance | | +| Test.java:6016:24:6016:31 | source(...) : Object | Test.java:6016:16:6016:31 | (...)... : String | provenance | | +| Test.java:6017:4:6017:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6018:30:6018:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:6017:12:6017:13 | in : String | Test.java:6017:4:6017:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:342 | +| Test.java:6018:20:6018:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:6018:20:6018:33 | getMapKey(...) : MultiKey [] : String | Test.java:6018:9:6018:34 | getElement(...) | provenance | MaD:234 | +| Test.java:6018:30:6018:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:6018:30:6018:32 | out : MultiKeyMap [, ] : String | Test.java:6018:20:6018:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:6023:16:6023:31 | (...)... : String | Test.java:6024:30:6024:31 | in : String | provenance | | +| Test.java:6023:24:6023:31 | source(...) : Object | Test.java:6023:16:6023:31 | (...)... : String | provenance | | +| Test.java:6024:4:6024:6 | out [post update] : MultiKeyMap [] : String | Test.java:6025:21:6025:23 | out : MultiKeyMap [] : String | provenance | | +| Test.java:6024:30:6024:31 | in : String | Test.java:6024:4:6024:6 | out [post update] : MultiKeyMap [] : String | provenance | MaD:343 | +| Test.java:6025:21:6025:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | provenance | | +| Test.java:6025:21:6025:23 | out : MultiKeyMap [] : String | Test.java:6025:9:6025:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6030:16:6030:31 | (...)... : String | Test.java:6031:30:6031:31 | in : String | provenance | | +| Test.java:6030:24:6030:31 | source(...) : Object | Test.java:6030:16:6030:31 | (...)... : String | provenance | | +| Test.java:6031:4:6031:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6032:30:6032:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:6031:30:6031:31 | in : String | Test.java:6031:4:6031:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:344 | +| Test.java:6032:20:6032:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:6032:20:6032:33 | getMapKey(...) : MultiKey [] : String | Test.java:6032:9:6032:34 | getElement(...) | provenance | MaD:234 | +| Test.java:6032:30:6032:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:6032:30:6032:32 | out : MultiKeyMap [, ] : String | Test.java:6032:20:6032:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:6037:16:6037:31 | (...)... : String | Test.java:6038:24:6038:25 | in : String | provenance | | +| Test.java:6037:24:6037:31 | source(...) : Object | Test.java:6037:16:6037:31 | (...)... : String | provenance | | +| Test.java:6038:4:6038:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6039:30:6039:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:6038:24:6038:25 | in : String | Test.java:6038:4:6038:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:344 | +| Test.java:6039:20:6039:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:6039:20:6039:33 | getMapKey(...) : MultiKey [] : String | Test.java:6039:9:6039:34 | getElement(...) | provenance | MaD:234 | +| Test.java:6039:30:6039:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:6039:30:6039:32 | out : MultiKeyMap [, ] : String | Test.java:6039:20:6039:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:6044:16:6044:31 | (...)... : String | Test.java:6045:18:6045:19 | in : String | provenance | | +| Test.java:6044:24:6044:31 | source(...) : Object | Test.java:6044:16:6044:31 | (...)... : String | provenance | | +| Test.java:6045:4:6045:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6046:30:6046:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:6045:18:6045:19 | in : String | Test.java:6045:4:6045:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:344 | +| Test.java:6046:20:6046:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:6046:20:6046:33 | getMapKey(...) : MultiKey [] : String | Test.java:6046:9:6046:34 | getElement(...) | provenance | MaD:234 | +| Test.java:6046:30:6046:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:6046:30:6046:32 | out : MultiKeyMap [, ] : String | Test.java:6046:20:6046:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:6051:16:6051:31 | (...)... : String | Test.java:6052:12:6052:13 | in : String | provenance | | +| Test.java:6051:24:6051:31 | source(...) : Object | Test.java:6051:16:6051:31 | (...)... : String | provenance | | +| Test.java:6052:4:6052:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6053:30:6053:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:6052:12:6052:13 | in : String | Test.java:6052:4:6052:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:344 | +| Test.java:6053:20:6053:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:6053:20:6053:33 | getMapKey(...) : MultiKey [] : String | Test.java:6053:9:6053:34 | getElement(...) | provenance | MaD:234 | +| Test.java:6053:30:6053:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:6053:30:6053:32 | out : MultiKeyMap [, ] : String | Test.java:6053:20:6053:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:6058:16:6058:31 | (...)... : String | Test.java:6059:36:6059:37 | in : String | provenance | | +| Test.java:6058:24:6058:31 | source(...) : Object | Test.java:6058:16:6058:31 | (...)... : String | provenance | | +| Test.java:6059:4:6059:6 | out [post update] : MultiKeyMap [] : String | Test.java:6060:21:6060:23 | out : MultiKeyMap [] : String | provenance | | +| Test.java:6059:36:6059:37 | in : String | Test.java:6059:4:6059:6 | out [post update] : MultiKeyMap [] : String | provenance | MaD:345 | +| Test.java:6060:21:6060:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | provenance | | +| Test.java:6060:21:6060:23 | out : MultiKeyMap [] : String | Test.java:6060:9:6060:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6065:16:6065:31 | (...)... : String | Test.java:6066:36:6066:37 | in : String | provenance | | +| Test.java:6065:24:6065:31 | source(...) : Object | Test.java:6065:16:6065:31 | (...)... : String | provenance | | +| Test.java:6066:4:6066:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6067:30:6067:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:6066:36:6066:37 | in : String | Test.java:6066:4:6066:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:346 | +| Test.java:6067:20:6067:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:6067:20:6067:33 | getMapKey(...) : MultiKey [] : String | Test.java:6067:9:6067:34 | getElement(...) | provenance | MaD:234 | +| Test.java:6067:30:6067:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:6067:30:6067:32 | out : MultiKeyMap [, ] : String | Test.java:6067:20:6067:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:6072:16:6072:31 | (...)... : String | Test.java:6073:30:6073:31 | in : String | provenance | | +| Test.java:6072:24:6072:31 | source(...) : Object | Test.java:6072:16:6072:31 | (...)... : String | provenance | | +| Test.java:6073:4:6073:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6074:30:6074:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:6073:30:6073:31 | in : String | Test.java:6073:4:6073:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:346 | +| Test.java:6074:20:6074:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:6074:20:6074:33 | getMapKey(...) : MultiKey [] : String | Test.java:6074:9:6074:34 | getElement(...) | provenance | MaD:234 | +| Test.java:6074:30:6074:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:6074:30:6074:32 | out : MultiKeyMap [, ] : String | Test.java:6074:20:6074:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:6079:16:6079:31 | (...)... : String | Test.java:6080:24:6080:25 | in : String | provenance | | +| Test.java:6079:24:6079:31 | source(...) : Object | Test.java:6079:16:6079:31 | (...)... : String | provenance | | +| Test.java:6080:4:6080:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6081:30:6081:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:6080:24:6080:25 | in : String | Test.java:6080:4:6080:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:346 | +| Test.java:6081:20:6081:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:6081:20:6081:33 | getMapKey(...) : MultiKey [] : String | Test.java:6081:9:6081:34 | getElement(...) | provenance | MaD:234 | +| Test.java:6081:30:6081:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:6081:30:6081:32 | out : MultiKeyMap [, ] : String | Test.java:6081:20:6081:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:6086:16:6086:31 | (...)... : String | Test.java:6087:18:6087:19 | in : String | provenance | | +| Test.java:6086:24:6086:31 | source(...) : Object | Test.java:6086:16:6086:31 | (...)... : String | provenance | | +| Test.java:6087:4:6087:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6088:30:6088:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:6087:18:6087:19 | in : String | Test.java:6087:4:6087:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:346 | +| Test.java:6088:20:6088:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:6088:20:6088:33 | getMapKey(...) : MultiKey [] : String | Test.java:6088:9:6088:34 | getElement(...) | provenance | MaD:234 | +| Test.java:6088:30:6088:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:6088:30:6088:32 | out : MultiKeyMap [, ] : String | Test.java:6088:20:6088:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:6093:16:6093:31 | (...)... : String | Test.java:6094:12:6094:13 | in : String | provenance | | +| Test.java:6093:24:6093:31 | source(...) : Object | Test.java:6093:16:6093:31 | (...)... : String | provenance | | +| Test.java:6094:4:6094:6 | out [post update] : MultiKeyMap [, ] : String | Test.java:6095:30:6095:32 | out : MultiKeyMap [, ] : String | provenance | | +| Test.java:6094:12:6094:13 | in : String | Test.java:6094:4:6094:6 | out [post update] : MultiKeyMap [, ] : String | provenance | MaD:346 | +| Test.java:6095:20:6095:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | provenance | | +| Test.java:6095:20:6095:33 | getMapKey(...) : MultiKey [] : String | Test.java:6095:9:6095:34 | getElement(...) | provenance | MaD:234 | +| Test.java:6095:30:6095:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | provenance | | +| Test.java:6095:30:6095:32 | out : MultiKeyMap [, ] : String | Test.java:6095:20:6095:33 | getMapKey(...) : MultiKey [] : String | provenance | MaD:19 | +| Test.java:6100:16:6100:31 | (...)... : String | Test.java:6101:42:6101:43 | in : String | provenance | | +| Test.java:6100:24:6100:31 | source(...) : Object | Test.java:6100:16:6100:31 | (...)... : String | provenance | | +| Test.java:6101:4:6101:6 | out [post update] : MultiKeyMap [] : String | Test.java:6102:21:6102:23 | out : MultiKeyMap [] : String | provenance | | +| Test.java:6101:42:6101:43 | in : String | Test.java:6101:4:6101:6 | out [post update] : MultiKeyMap [] : String | provenance | MaD:347 | +| Test.java:6102:21:6102:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | provenance | | +| Test.java:6102:21:6102:23 | out : MultiKeyMap [] : String | Test.java:6102:9:6102:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6107:21:6107:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6108:10:6108:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:6107:40:6107:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:6107:40:6107:55 | (...)... : String | Test.java:6107:21:6107:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:6107:48:6107:55 | source(...) : Object | Test.java:6107:40:6107:55 | (...)... : String | provenance | | +| Test.java:6108:10:6108:11 | in : MultiKeyMap [] : String | Test.java:6108:10:6108:51 | put(...) : String | provenance | MaD:348 | +| Test.java:6108:10:6108:51 | put(...) : String | Test.java:6109:9:6109:11 | out | provenance | | +| Test.java:6114:21:6114:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6115:10:6115:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:6114:40:6114:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:6114:40:6114:55 | (...)... : String | Test.java:6114:21:6114:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:6114:48:6114:55 | source(...) : Object | Test.java:6114:40:6114:55 | (...)... : String | provenance | | +| Test.java:6115:10:6115:11 | in : MultiKeyMap [] : String | Test.java:6115:10:6115:45 | put(...) : String | provenance | MaD:348 | +| Test.java:6115:10:6115:45 | put(...) : String | Test.java:6116:9:6116:11 | out | provenance | | +| Test.java:6121:21:6121:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6122:10:6122:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:6121:40:6121:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:6121:40:6121:55 | (...)... : String | Test.java:6121:21:6121:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:6121:48:6121:55 | source(...) : Object | Test.java:6121:40:6121:55 | (...)... : String | provenance | | +| Test.java:6122:10:6122:11 | in : MultiKeyMap [] : String | Test.java:6122:10:6122:39 | put(...) : String | provenance | MaD:348 | +| Test.java:6122:10:6122:39 | put(...) : String | Test.java:6123:9:6123:11 | out | provenance | | +| Test.java:6128:21:6128:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6129:10:6129:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:6128:40:6128:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:6128:40:6128:55 | (...)... : String | Test.java:6128:21:6128:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:6128:48:6128:55 | source(...) : Object | Test.java:6128:40:6128:55 | (...)... : String | provenance | | +| Test.java:6129:10:6129:11 | in : MultiKeyMap [] : String | Test.java:6129:10:6129:33 | put(...) : String | provenance | MaD:348 | +| Test.java:6129:10:6129:33 | put(...) : String | Test.java:6130:9:6130:11 | out | provenance | | +| Test.java:6135:21:6135:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6136:10:6136:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:6135:40:6135:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:6135:40:6135:55 | (...)... : String | Test.java:6135:21:6135:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:6135:48:6135:55 | source(...) : Object | Test.java:6135:40:6135:55 | (...)... : String | provenance | | +| Test.java:6136:10:6136:11 | in : MultiKeyMap [] : String | Test.java:6136:10:6136:27 | put(...) : String | provenance | MaD:348 | +| Test.java:6136:10:6136:27 | put(...) : String | Test.java:6137:9:6137:11 | out | provenance | | +| Test.java:6142:21:6142:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6143:10:6143:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:6142:40:6142:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:6142:40:6142:55 | (...)... : String | Test.java:6142:21:6142:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:6142:48:6142:55 | source(...) : Object | Test.java:6142:40:6142:55 | (...)... : String | provenance | | +| Test.java:6143:10:6143:11 | in : MultiKeyMap [] : String | Test.java:6143:10:6143:56 | removeMultiKey(...) : String | provenance | MaD:349 | +| Test.java:6143:10:6143:56 | removeMultiKey(...) : String | Test.java:6144:9:6144:11 | out | provenance | | +| Test.java:6149:21:6149:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6150:10:6150:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:6149:40:6149:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:6149:40:6149:55 | (...)... : String | Test.java:6149:21:6149:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:6149:48:6149:55 | source(...) : Object | Test.java:6149:40:6149:55 | (...)... : String | provenance | | +| Test.java:6150:10:6150:11 | in : MultiKeyMap [] : String | Test.java:6150:10:6150:50 | removeMultiKey(...) : String | provenance | MaD:349 | +| Test.java:6150:10:6150:50 | removeMultiKey(...) : String | Test.java:6151:9:6151:11 | out | provenance | | +| Test.java:6156:21:6156:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6157:10:6157:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:6156:40:6156:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:6156:40:6156:55 | (...)... : String | Test.java:6156:21:6156:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:6156:48:6156:55 | source(...) : Object | Test.java:6156:40:6156:55 | (...)... : String | provenance | | +| Test.java:6157:10:6157:11 | in : MultiKeyMap [] : String | Test.java:6157:10:6157:44 | removeMultiKey(...) : String | provenance | MaD:349 | +| Test.java:6157:10:6157:44 | removeMultiKey(...) : String | Test.java:6158:9:6158:11 | out | provenance | | +| Test.java:6163:21:6163:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | Test.java:6164:10:6164:11 | in : MultiKeyMap [] : String | provenance | | +| Test.java:6163:40:6163:55 | (...)... : String | Test.java:297:47:297:53 | value : String | provenance | | +| Test.java:6163:40:6163:55 | (...)... : String | Test.java:6163:21:6163:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | provenance | MaD:341 | +| Test.java:6163:48:6163:55 | source(...) : Object | Test.java:6163:40:6163:55 | (...)... : String | provenance | | +| Test.java:6164:10:6164:11 | in : MultiKeyMap [] : String | Test.java:6164:10:6164:38 | removeMultiKey(...) : String | provenance | MaD:349 | +| Test.java:6164:10:6164:38 | removeMultiKey(...) : String | Test.java:6165:9:6165:11 | out | provenance | | +| Test.java:6170:23:6170:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:6171:10:6171:11 | in : MultiValueMap [, ] : String | provenance | | +| Test.java:6170:23:6170:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:6171:10:6171:11 | in : MultiValueMap [] : String | provenance | | +| Test.java:6170:42:6170:57 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | +| Test.java:6170:42:6170:57 | (...)... : String | Test.java:6170:23:6170:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:741 | +| Test.java:6170:42:6170:57 | (...)... : String | Test.java:6170:23:6170:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:6170:42:6170:57 | (...)... : String | Test.java:6170:23:6170:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | +| Test.java:6170:50:6170:57 | source(...) : Object | Test.java:6170:42:6170:57 | (...)... : String | provenance | | +| Test.java:6171:10:6171:11 | in : MultiValueMap [, ] : String | Test.java:6171:10:6171:31 | getCollection(...) : Collection [] : String | provenance | MaD:350 | +| Test.java:6171:10:6171:11 | in : MultiValueMap [] : String | Test.java:6171:10:6171:31 | getCollection(...) : Collection [] : Object | provenance | MaD:350 | +| Test.java:6171:10:6171:31 | getCollection(...) : Collection [] : Object | Test.java:6172:20:6172:22 | out : Collection [] : Object | provenance | | +| Test.java:6171:10:6171:31 | getCollection(...) : Collection [] : String | Test.java:6172:20:6172:22 | out : Collection [] : String | provenance | | +| Test.java:6172:20:6172:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | +| Test.java:6172:20:6172:22 | out : Collection [] : Object | Test.java:6172:9:6172:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6172:20:6172:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6172:20:6172:22 | out : Collection [] : String | Test.java:6172:9:6172:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6177:38:6177:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:6178:10:6178:11 | in : MultiValueMap [, ] : String | provenance | | +| Test.java:6177:38:6177:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:6178:10:6178:11 | in : MultiValueMap [] : String | provenance | | +| Test.java:6177:57:6177:72 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | +| Test.java:6177:57:6177:72 | (...)... : String | Test.java:6177:38:6177:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:741 | +| Test.java:6177:57:6177:72 | (...)... : String | Test.java:6177:38:6177:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:6177:57:6177:72 | (...)... : String | Test.java:6177:38:6177:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | +| Test.java:6177:65:6177:72 | source(...) : Object | Test.java:6177:57:6177:72 | (...)... : String | provenance | | +| Test.java:6178:10:6178:11 | in : MultiValueMap [, ] : String | Test.java:6178:10:6178:22 | iterator(...) : Iterator [, ] : String | provenance | MaD:352 | +| Test.java:6178:10:6178:11 | in : MultiValueMap [] : String | Test.java:6178:10:6178:22 | iterator(...) : Iterator [, ] : Object | provenance | MaD:352 | +| Test.java:6178:10:6178:22 | iterator(...) : Iterator [, ] : Object | Test.java:6179:41:6179:43 | out : Iterator [, ] : Object | provenance | | +| Test.java:6178:10:6178:22 | iterator(...) : Iterator [, ] : String | Test.java:6179:41:6179:43 | out : Iterator [, ] : String | provenance | | +| Test.java:6179:30:6179:44 | getElement(...) : Entry [] : Object | Test.java:244:29:244:52 | container : Entry [] : Object | provenance | | +| Test.java:6179:30:6179:44 | getElement(...) : Entry [] : Object | Test.java:6179:9:6179:45 | getMapValueFromEntry(...) | provenance | MaD:11 | +| Test.java:6179:30:6179:44 | getElement(...) : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | +| Test.java:6179:30:6179:44 | getElement(...) : Entry [] : String | Test.java:6179:9:6179:45 | getMapValueFromEntry(...) | provenance | MaD:11 | +| Test.java:6179:41:6179:43 | out : Iterator [, ] : Object | Test.java:231:19:231:32 | it : Iterator [, ] : Object | provenance | | +| Test.java:6179:41:6179:43 | out : Iterator [, ] : Object | Test.java:6179:30:6179:44 | getElement(...) : Entry [] : Object | provenance | MaD:7 | +| Test.java:6179:41:6179:43 | out : Iterator [, ] : String | Test.java:231:19:231:32 | it : Iterator [, ] : String | provenance | | +| Test.java:6179:41:6179:43 | out : Iterator [, ] : String | Test.java:6179:30:6179:44 | getElement(...) : Entry [] : String | provenance | MaD:7 | +| Test.java:6184:38:6184:71 | newMVMWithMapKey(...) : MultiValueMap [] : String | Test.java:6185:10:6185:11 | in : MultiValueMap [] : String | provenance | | +| Test.java:6184:55:6184:70 | (...)... : String | Test.java:279:47:279:51 | key : String | provenance | | +| Test.java:6184:55:6184:70 | (...)... : String | Test.java:6184:38:6184:71 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:20 | +| Test.java:6184:55:6184:70 | (...)... : String | Test.java:6184:38:6184:71 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:740 | +| Test.java:6184:55:6184:70 | (...)... : String | Test.java:6184:38:6184:71 | newMVMWithMapKey(...) : MultiValueMap [] : String | provenance | MaD:783 | +| Test.java:6184:63:6184:70 | source(...) : Object | Test.java:6184:55:6184:70 | (...)... : String | provenance | | +| Test.java:6185:10:6185:11 | in : MultiValueMap [] : String | Test.java:6185:10:6185:22 | iterator(...) : Iterator [, ] : String | provenance | MaD:351 | +| Test.java:6185:10:6185:22 | iterator(...) : Iterator [, ] : String | Test.java:6186:39:6186:41 | out : Iterator [, ] : String | provenance | | +| Test.java:6186:28:6186:42 | getElement(...) : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | +| Test.java:6186:28:6186:42 | getElement(...) : Entry [] : String | Test.java:6186:9:6186:43 | getMapKeyFromEntry(...) | provenance | MaD:10 | +| Test.java:6186:39:6186:41 | out : Iterator [, ] : String | Test.java:231:19:231:32 | it : Iterator [, ] : String | provenance | | +| Test.java:6186:39:6186:41 | out : Iterator [, ] : String | Test.java:6186:28:6186:42 | getElement(...) : Entry [] : String | provenance | MaD:7 | +| Test.java:6191:38:6191:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:6192:10:6192:11 | in : MultiValueMap [, ] : String | provenance | | +| Test.java:6191:38:6191:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:6192:10:6192:11 | in : MultiValueMap [] : String | provenance | | +| Test.java:6191:57:6191:72 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | +| Test.java:6191:57:6191:72 | (...)... : String | Test.java:6191:38:6191:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:741 | +| Test.java:6191:57:6191:72 | (...)... : String | Test.java:6191:38:6191:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:6191:57:6191:72 | (...)... : String | Test.java:6191:38:6191:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | +| Test.java:6191:65:6191:72 | source(...) : Object | Test.java:6191:57:6191:72 | (...)... : String | provenance | | +| Test.java:6192:10:6192:11 | in : MultiValueMap [, ] : String | Test.java:6192:10:6192:26 | iterator(...) : Iterator [] : String | provenance | MaD:353 | +| Test.java:6192:10:6192:11 | in : MultiValueMap [] : String | Test.java:6192:10:6192:26 | iterator(...) : Iterator [] : Object | provenance | MaD:353 | +| Test.java:6192:10:6192:26 | iterator(...) : Iterator [] : Object | Test.java:6193:20:6193:22 | out : Iterator [] : Object | provenance | | +| Test.java:6192:10:6192:26 | iterator(...) : Iterator [] : String | Test.java:6193:20:6193:22 | out : Iterator [] : String | provenance | | +| Test.java:6193:20:6193:22 | out : Iterator [] : Object | Test.java:231:19:231:32 | it : Iterator [] : Object | provenance | | +| Test.java:6193:20:6193:22 | out : Iterator [] : Object | Test.java:6193:9:6193:23 | getElement(...) | provenance | MaD:7 | +| Test.java:6193:20:6193:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | provenance | | +| Test.java:6193:20:6193:22 | out : Iterator [] : String | Test.java:6193:9:6193:23 | getElement(...) | provenance | MaD:7 | +| Test.java:6198:13:6198:64 | of(...) : Map [, ] : String | Test.java:6199:38:6199:39 | in : Map [, ] : String | provenance | | +| Test.java:6198:26:6198:63 | newVectorWithElement(...) : Vector [] : String | Test.java:6198:13:6198:64 | of(...) : Map [, ] : String | provenance | MaD:15 | +| Test.java:6198:47:6198:62 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | +| Test.java:6198:47:6198:62 | (...)... : String | Test.java:6198:26:6198:63 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | +| Test.java:6198:55:6198:62 | source(...) : Object | Test.java:6198:47:6198:62 | (...)... : String | provenance | | +| Test.java:6199:10:6199:55 | multiValueMap(...) : MultiValueMap [, ] : String | Test.java:6200:44:6200:46 | out : MultiValueMap [, ] : String | provenance | | +| Test.java:6199:38:6199:39 | in : Map [, ] : String | Test.java:6199:10:6199:55 | multiValueMap(...) : MultiValueMap [, ] : String | provenance | MaD:355 | +| Test.java:6200:20:6200:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6200:20:6200:47 | (...)... : Collection [] : String | Test.java:6200:9:6200:48 | getElement(...) | provenance | MaD:3 | +| Test.java:6200:32:6200:47 | getMapValue(...) : Object [] : String | Test.java:6200:20:6200:47 | (...)... : Collection [] : String | provenance | | +| Test.java:6200:44:6200:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | provenance | | +| Test.java:6200:44:6200:46 | out : MultiValueMap [, ] : String | Test.java:6200:32:6200:47 | getMapValue(...) : Object [] : String | provenance | MaD:18 | +| Test.java:6205:13:6205:64 | of(...) : Map [, ] : String | Test.java:6206:38:6206:39 | in : Map [, ] : String | provenance | | +| Test.java:6205:26:6205:63 | newVectorWithElement(...) : Vector [] : String | Test.java:6205:13:6205:64 | of(...) : Map [, ] : String | provenance | MaD:15 | +| Test.java:6205:47:6205:62 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | +| Test.java:6205:47:6205:62 | (...)... : String | Test.java:6205:26:6205:63 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | +| Test.java:6205:55:6205:62 | source(...) : Object | Test.java:6205:47:6205:62 | (...)... : String | provenance | | +| Test.java:6206:10:6206:53 | multiValueMap(...) : MultiValueMap [, ] : String | Test.java:6207:44:6207:46 | out : MultiValueMap [, ] : String | provenance | | +| Test.java:6206:38:6206:39 | in : Map [, ] : String | Test.java:6206:10:6206:53 | multiValueMap(...) : MultiValueMap [, ] : String | provenance | MaD:355 | +| Test.java:6207:20:6207:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6207:20:6207:47 | (...)... : Collection [] : String | Test.java:6207:9:6207:48 | getElement(...) | provenance | MaD:3 | +| Test.java:6207:32:6207:47 | getMapValue(...) : Object [] : String | Test.java:6207:20:6207:47 | (...)... : Collection [] : String | provenance | | +| Test.java:6207:44:6207:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | provenance | | +| Test.java:6207:44:6207:46 | out : MultiValueMap [, ] : String | Test.java:6207:32:6207:47 | getMapValue(...) : Object [] : String | provenance | MaD:18 | +| Test.java:6212:13:6212:64 | of(...) : Map [, ] : String | Test.java:6213:38:6213:39 | in : Map [, ] : String | provenance | | +| Test.java:6212:26:6212:63 | newVectorWithElement(...) : Vector [] : String | Test.java:6212:13:6212:64 | of(...) : Map [, ] : String | provenance | MaD:15 | +| Test.java:6212:47:6212:62 | (...)... : String | Test.java:269:37:269:45 | element : String | provenance | | +| Test.java:6212:47:6212:62 | (...)... : String | Test.java:6212:26:6212:63 | newVectorWithElement(...) : Vector [] : String | provenance | MaD:4 | +| Test.java:6212:55:6212:62 | source(...) : Object | Test.java:6212:47:6212:62 | (...)... : String | provenance | | +| Test.java:6213:10:6213:40 | multiValueMap(...) : MultiValueMap [, ] : String | Test.java:6214:44:6214:46 | out : MultiValueMap [, ] : String | provenance | | +| Test.java:6213:38:6213:39 | in : Map [, ] : String | Test.java:6213:10:6213:40 | multiValueMap(...) : MultiValueMap [, ] : String | provenance | MaD:355 | +| Test.java:6214:20:6214:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6214:20:6214:47 | (...)... : Collection [] : String | Test.java:6214:9:6214:48 | getElement(...) | provenance | MaD:3 | +| Test.java:6214:32:6214:47 | getMapValue(...) : Object [] : String | Test.java:6214:20:6214:47 | (...)... : Collection [] : String | provenance | | +| Test.java:6214:44:6214:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | provenance | | +| Test.java:6214:44:6214:46 | out : MultiValueMap [, ] : String | Test.java:6214:32:6214:47 | getMapValue(...) : Object [] : String | provenance | MaD:18 | +| Test.java:6219:13:6219:42 | of(...) : Map [] : String | Test.java:6220:38:6220:39 | in : Map [] : String | provenance | | +| Test.java:6219:20:6219:35 | (...)... : String | Test.java:6219:13:6219:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6219:28:6219:35 | source(...) : Object | Test.java:6219:20:6219:35 | (...)... : String | provenance | | +| Test.java:6220:10:6220:55 | multiValueMap(...) : MultiValueMap [] : String | Test.java:6221:19:6221:21 | out : MultiValueMap [] : String | provenance | | +| Test.java:6220:38:6220:39 | in : Map [] : String | Test.java:6220:10:6220:55 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:354 | +| Test.java:6221:19:6221:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | provenance | | +| Test.java:6221:19:6221:21 | out : MultiValueMap [] : String | Test.java:6221:9:6221:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6226:13:6226:42 | of(...) : Map [] : String | Test.java:6227:38:6227:39 | in : Map [] : String | provenance | | +| Test.java:6226:20:6226:35 | (...)... : String | Test.java:6226:13:6226:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6226:28:6226:35 | source(...) : Object | Test.java:6226:20:6226:35 | (...)... : String | provenance | | +| Test.java:6227:10:6227:53 | multiValueMap(...) : MultiValueMap [] : String | Test.java:6228:19:6228:21 | out : MultiValueMap [] : String | provenance | | +| Test.java:6227:38:6227:39 | in : Map [] : String | Test.java:6227:10:6227:53 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:354 | +| Test.java:6228:19:6228:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | provenance | | +| Test.java:6228:19:6228:21 | out : MultiValueMap [] : String | Test.java:6228:9:6228:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6233:13:6233:42 | of(...) : Map [] : String | Test.java:6234:38:6234:39 | in : Map [] : String | provenance | | +| Test.java:6233:20:6233:35 | (...)... : String | Test.java:6233:13:6233:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6233:28:6233:35 | source(...) : Object | Test.java:6233:20:6233:35 | (...)... : String | provenance | | +| Test.java:6234:10:6234:40 | multiValueMap(...) : MultiValueMap [] : String | Test.java:6235:19:6235:21 | out : MultiValueMap [] : String | provenance | | +| Test.java:6234:38:6234:39 | in : Map [] : String | Test.java:6234:10:6234:40 | multiValueMap(...) : MultiValueMap [] : String | provenance | MaD:354 | +| Test.java:6235:19:6235:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | provenance | | +| Test.java:6235:19:6235:21 | out : MultiValueMap [] : String | Test.java:6235:9:6235:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6240:13:6240:48 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:6241:15:6241:16 | in : MultiValueMap [, ] : String | provenance | | +| Test.java:6240:13:6240:48 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:6241:15:6241:16 | in : MultiValueMap [] : String | provenance | | +| Test.java:6240:32:6240:47 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | +| Test.java:6240:32:6240:47 | (...)... : String | Test.java:6240:13:6240:48 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:741 | +| Test.java:6240:32:6240:47 | (...)... : String | Test.java:6240:13:6240:48 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:6240:32:6240:47 | (...)... : String | Test.java:6240:13:6240:48 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | +| Test.java:6240:40:6240:47 | source(...) : Object | Test.java:6240:32:6240:47 | (...)... : String | provenance | | +| Test.java:6241:4:6241:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:6242:44:6242:46 | out : MultiValueMap [, ] : Object | provenance | | +| Test.java:6241:4:6241:6 | out [post update] : MultiValueMap [, ] : String | Test.java:6242:44:6242:46 | out : MultiValueMap [, ] : String | provenance | | +| Test.java:6241:15:6241:16 | in : MultiValueMap [, ] : String | Test.java:6241:4:6241:6 | out [post update] : MultiValueMap [, ] : String | provenance | MaD:357 | +| Test.java:6241:15:6241:16 | in : MultiValueMap [, ] : String | Test.java:6241:4:6241:6 | out [post update] : MultiValueMap [, ] : String | provenance | MaD:359 | +| Test.java:6241:15:6241:16 | in : MultiValueMap [] : String | Test.java:6241:4:6241:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:357 | +| Test.java:6241:15:6241:16 | in : MultiValueMap [] : String | Test.java:6241:4:6241:6 | out [post update] : MultiValueMap [, ] : String | provenance | MaD:358 | +| Test.java:6242:20:6242:47 | (...)... : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | +| Test.java:6242:20:6242:47 | (...)... : Collection [] : Object | Test.java:6242:9:6242:48 | getElement(...) | provenance | MaD:3 | +| Test.java:6242:20:6242:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6242:20:6242:47 | (...)... : Collection [] : String | Test.java:6242:9:6242:48 | getElement(...) | provenance | MaD:3 | +| Test.java:6242:32:6242:47 | getMapValue(...) : Object [] : Object | Test.java:6242:20:6242:47 | (...)... : Collection [] : Object | provenance | | +| Test.java:6242:32:6242:47 | getMapValue(...) : Object [] : String | Test.java:6242:20:6242:47 | (...)... : Collection [] : String | provenance | | +| Test.java:6242:44:6242:46 | out : MultiValueMap [, ] : Object | Test.java:232:20:232:31 | map : MultiValueMap [, ] : Object | provenance | | +| Test.java:6242:44:6242:46 | out : MultiValueMap [, ] : Object | Test.java:6242:32:6242:47 | getMapValue(...) : Object [] : Object | provenance | MaD:18 | +| Test.java:6242:44:6242:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | provenance | | +| Test.java:6242:44:6242:46 | out : MultiValueMap [, ] : String | Test.java:6242:32:6242:47 | getMapValue(...) : Object [] : String | provenance | MaD:18 | +| Test.java:6247:13:6247:34 | of(...) : Map [] : Object | Test.java:6248:15:6248:16 | in : Map [] : Object | provenance | | +| Test.java:6247:26:6247:33 | source(...) : Object | Test.java:6247:13:6247:34 | of(...) : Map [] : Object | provenance | MaD:15 | +| Test.java:6248:4:6248:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:6249:44:6249:46 | out : MultiValueMap [, ] : Object | provenance | | +| Test.java:6248:4:6248:6 | out [post update] : MultiValueMap [] : Object | Test.java:6249:44:6249:46 | out : MultiValueMap [] : Object | provenance | | +| Test.java:6248:15:6248:16 | in : Map [] : Object | Test.java:6248:4:6248:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:357 | +| Test.java:6248:15:6248:16 | in : Map [] : Object | Test.java:6248:4:6248:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:358 | +| Test.java:6248:15:6248:16 | in : Map [] : Object | Test.java:6248:4:6248:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:359 | +| Test.java:6249:20:6249:47 | (...)... : Collection | Test.java:230:19:230:32 | it : Collection | provenance | | +| Test.java:6249:20:6249:47 | (...)... : Collection | Test.java:6249:9:6249:48 | getElement(...) | provenance | MaD:3 | +| Test.java:6249:20:6249:47 | (...)... : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | +| Test.java:6249:20:6249:47 | (...)... : Collection [] : Object | Test.java:6249:9:6249:48 | getElement(...) | provenance | MaD:3 | +| Test.java:6249:32:6249:47 | getMapValue(...) : Object | Test.java:6249:20:6249:47 | (...)... : Collection | provenance | | +| Test.java:6249:32:6249:47 | getMapValue(...) : Object [] : Object | Test.java:6249:20:6249:47 | (...)... : Collection [] : Object | provenance | | +| Test.java:6249:44:6249:46 | out : MultiValueMap [, ] : Object | Test.java:232:20:232:31 | map : MultiValueMap [, ] : Object | provenance | | +| Test.java:6249:44:6249:46 | out : MultiValueMap [, ] : Object | Test.java:6249:32:6249:47 | getMapValue(...) : Object [] : Object | provenance | MaD:18 | +| Test.java:6249:44:6249:46 | out : MultiValueMap [] : Object | Test.java:232:20:232:31 | map : MultiValueMap [] : Object | provenance | | +| Test.java:6249:44:6249:46 | out : MultiValueMap [] : Object | Test.java:6249:32:6249:47 | getMapValue(...) : Object | provenance | MaD:18 | +| Test.java:6254:16:6254:23 | source(...) : Object | Test.java:6255:15:6255:16 | in : Object | provenance | | +| Test.java:6255:4:6255:6 | out [post update] : MultiValueMap [] : Object | Test.java:6256:19:6256:21 | out : MultiValueMap [] : Object | provenance | | +| Test.java:6255:15:6255:16 | in : Object | Test.java:6255:4:6255:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:360 | +| Test.java:6256:19:6256:21 | out : MultiValueMap [] : Object | Test.java:228:18:228:29 | map : MultiValueMap [] : Object | provenance | | +| Test.java:6256:19:6256:21 | out : MultiValueMap [] : Object | Test.java:6256:9:6256:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6261:20:6261:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:6262:21:6262:22 | in : TreeBag [] : String | provenance | | +| Test.java:6261:42:6261:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:6261:42:6261:57 | (...)... : String | Test.java:6261:20:6261:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:6261:42:6261:57 | (...)... : String | Test.java:6261:20:6261:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:6261:50:6261:57 | source(...) : Object | Test.java:6261:42:6261:57 | (...)... : String | provenance | | +| Test.java:6262:4:6262:6 | out [post update] : MultiValueMap [, ] : String | Test.java:6263:44:6263:46 | out : MultiValueMap [, ] : String | provenance | | +| Test.java:6262:21:6262:22 | in : TreeBag [] : String | Test.java:6262:4:6262:6 | out [post update] : MultiValueMap [, ] : String | provenance | MaD:361 | +| Test.java:6263:20:6263:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6263:20:6263:47 | (...)... : Collection [] : String | Test.java:6263:9:6263:48 | getElement(...) | provenance | MaD:3 | +| Test.java:6263:32:6263:47 | getMapValue(...) : Object [] : String | Test.java:6263:20:6263:47 | (...)... : Collection [] : String | provenance | | +| Test.java:6263:44:6263:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | provenance | | +| Test.java:6263:44:6263:46 | out : MultiValueMap [, ] : String | Test.java:6263:32:6263:47 | getMapValue(...) : Object [] : String | provenance | MaD:18 | +| Test.java:6268:23:6268:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | Test.java:6269:10:6269:11 | in : MultiValueMap [, ] : String | provenance | | +| Test.java:6268:23:6268:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | Test.java:6269:10:6269:11 | in : MultiValueMap [] : String | provenance | | +| Test.java:6268:42:6268:57 | (...)... : String | Test.java:298:49:298:55 | value : String | provenance | | +| Test.java:6268:42:6268:57 | (...)... : String | Test.java:6268:23:6268:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | provenance | MaD:741 | +| Test.java:6268:42:6268:57 | (...)... : String | Test.java:6268:23:6268:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:21 | +| Test.java:6268:42:6268:57 | (...)... : String | Test.java:6268:23:6268:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | provenance | MaD:784 | +| Test.java:6268:50:6268:57 | source(...) : Object | Test.java:6268:42:6268:57 | (...)... : String | provenance | | +| Test.java:6269:10:6269:11 | in : MultiValueMap [, ] : String | Test.java:6269:10:6269:20 | values(...) : Collection [] : String | provenance | MaD:362 | +| Test.java:6269:10:6269:11 | in : MultiValueMap [] : String | Test.java:6269:10:6269:20 | values(...) : Collection [] : Object | provenance | MaD:362 | +| Test.java:6269:10:6269:20 | values(...) : Collection [] : Object | Test.java:6270:20:6270:22 | out : Collection [] : Object | provenance | | +| Test.java:6269:10:6269:20 | values(...) : Collection [] : String | Test.java:6270:20:6270:22 | out : Collection [] : String | provenance | | +| Test.java:6270:20:6270:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | provenance | | +| Test.java:6270:20:6270:22 | out : Collection [] : Object | Test.java:6270:9:6270:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6270:20:6270:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6270:20:6270:22 | out : Collection [] : String | Test.java:6270:9:6270:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6275:13:6275:42 | of(...) : Map [] : String | Test.java:6276:76:6276:77 | in : Map [] : String | provenance | | +| Test.java:6275:20:6275:35 | (...)... : String | Test.java:6275:13:6275:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6275:28:6275:35 | source(...) : Object | Test.java:6275:20:6275:35 | (...)... : String | provenance | | +| Test.java:6276:10:6276:78 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6277:19:6277:21 | out : PassiveExpiringMap [] : String | provenance | | +| Test.java:6276:76:6276:77 | in : Map [] : String | Test.java:6276:10:6276:78 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:365 | +| Test.java:6277:19:6277:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | provenance | | +| Test.java:6277:19:6277:21 | out : PassiveExpiringMap [] : String | Test.java:6277:9:6277:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6282:13:6282:42 | of(...) : Map [] : String | Test.java:6283:76:6283:77 | in : Map [] : String | provenance | | +| Test.java:6282:26:6282:41 | (...)... : String | Test.java:6282:13:6282:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6282:34:6282:41 | source(...) : Object | Test.java:6282:26:6282:41 | (...)... : String | provenance | | +| Test.java:6283:10:6283:78 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6284:21:6284:23 | out : PassiveExpiringMap [] : String | provenance | | +| Test.java:6283:76:6283:77 | in : Map [] : String | Test.java:6283:10:6283:78 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:366 | +| Test.java:6284:21:6284:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | provenance | | +| Test.java:6284:21:6284:23 | out : PassiveExpiringMap [] : String | Test.java:6284:9:6284:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6289:13:6289:42 | of(...) : Map [] : String | Test.java:6290:33:6290:34 | in : Map [] : String | provenance | | +| Test.java:6289:20:6289:35 | (...)... : String | Test.java:6289:13:6289:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6289:28:6289:35 | source(...) : Object | Test.java:6289:20:6289:35 | (...)... : String | provenance | | +| Test.java:6290:10:6290:35 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6291:19:6291:21 | out : PassiveExpiringMap [] : String | provenance | | +| Test.java:6290:33:6290:34 | in : Map [] : String | Test.java:6290:10:6290:35 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:363 | +| Test.java:6291:19:6291:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | provenance | | +| Test.java:6291:19:6291:21 | out : PassiveExpiringMap [] : String | Test.java:6291:9:6291:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6296:13:6296:42 | of(...) : Map [] : String | Test.java:6297:33:6297:34 | in : Map [] : String | provenance | | +| Test.java:6296:26:6296:41 | (...)... : String | Test.java:6296:13:6296:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6296:34:6296:41 | source(...) : Object | Test.java:6296:26:6296:41 | (...)... : String | provenance | | +| Test.java:6297:10:6297:35 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6298:21:6298:23 | out : PassiveExpiringMap [] : String | provenance | | +| Test.java:6297:33:6297:34 | in : Map [] : String | Test.java:6297:10:6297:35 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:364 | +| Test.java:6298:21:6298:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | provenance | | +| Test.java:6298:21:6298:23 | out : PassiveExpiringMap [] : String | Test.java:6298:9:6298:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6303:13:6303:42 | of(...) : Map [] : String | Test.java:6304:37:6304:38 | in : Map [] : String | provenance | | +| Test.java:6303:20:6303:35 | (...)... : String | Test.java:6303:13:6303:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6303:28:6303:35 | source(...) : Object | Test.java:6303:20:6303:35 | (...)... : String | provenance | | +| Test.java:6304:10:6304:39 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6305:19:6305:21 | out : PassiveExpiringMap [] : String | provenance | | +| Test.java:6304:37:6304:38 | in : Map [] : String | Test.java:6304:10:6304:39 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:367 | +| Test.java:6305:19:6305:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | provenance | | +| Test.java:6305:19:6305:21 | out : PassiveExpiringMap [] : String | Test.java:6305:9:6305:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6310:13:6310:42 | of(...) : Map [] : String | Test.java:6311:37:6311:38 | in : Map [] : String | provenance | | +| Test.java:6310:26:6310:41 | (...)... : String | Test.java:6310:13:6310:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6310:34:6310:41 | source(...) : Object | Test.java:6310:26:6310:41 | (...)... : String | provenance | | +| Test.java:6311:10:6311:39 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6312:21:6312:23 | out : PassiveExpiringMap [] : String | provenance | | +| Test.java:6311:37:6311:38 | in : Map [] : String | Test.java:6311:10:6311:39 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:368 | +| Test.java:6312:21:6312:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | provenance | | +| Test.java:6312:21:6312:23 | out : PassiveExpiringMap [] : String | Test.java:6312:9:6312:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6317:13:6317:42 | of(...) : Map [] : String | Test.java:6318:43:6318:44 | in : Map [] : String | provenance | | +| Test.java:6317:20:6317:35 | (...)... : String | Test.java:6317:13:6317:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6317:28:6317:35 | source(...) : Object | Test.java:6317:20:6317:35 | (...)... : String | provenance | | +| Test.java:6318:10:6318:45 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6319:19:6319:21 | out : PassiveExpiringMap [] : String | provenance | | +| Test.java:6318:43:6318:44 | in : Map [] : String | Test.java:6318:10:6318:45 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:369 | +| Test.java:6319:19:6319:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | provenance | | +| Test.java:6319:19:6319:21 | out : PassiveExpiringMap [] : String | Test.java:6319:9:6319:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6324:13:6324:42 | of(...) : Map [] : String | Test.java:6325:43:6325:44 | in : Map [] : String | provenance | | +| Test.java:6324:26:6324:41 | (...)... : String | Test.java:6324:13:6324:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6324:34:6324:41 | source(...) : Object | Test.java:6324:26:6324:41 | (...)... : String | provenance | | +| Test.java:6325:10:6325:45 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | Test.java:6326:21:6326:23 | out : PassiveExpiringMap [] : String | provenance | | +| Test.java:6325:43:6325:44 | in : Map [] : String | Test.java:6325:10:6325:45 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | provenance | MaD:370 | +| Test.java:6326:21:6326:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | provenance | | +| Test.java:6326:21:6326:23 | out : PassiveExpiringMap [] : String | Test.java:6326:9:6326:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6331:13:6331:42 | of(...) : Map [] : String | Test.java:6332:38:6332:39 | in : Map [] : String | provenance | | +| Test.java:6331:20:6331:35 | (...)... : String | Test.java:6331:13:6331:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6331:28:6331:35 | source(...) : Object | Test.java:6331:20:6331:35 | (...)... : String | provenance | | +| Test.java:6332:10:6332:52 | predicatedMap(...) : PredicatedMap [] : String | Test.java:6333:19:6333:21 | out : PredicatedMap [] : String | provenance | | +| Test.java:6332:38:6332:39 | in : Map [] : String | Test.java:6332:10:6332:52 | predicatedMap(...) : PredicatedMap [] : String | provenance | MaD:371 | +| Test.java:6333:19:6333:21 | out : PredicatedMap [] : String | Test.java:228:18:228:29 | map : PredicatedMap [] : String | provenance | | +| Test.java:6333:19:6333:21 | out : PredicatedMap [] : String | Test.java:6333:9:6333:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6338:13:6338:42 | of(...) : Map [] : String | Test.java:6339:38:6339:39 | in : Map [] : String | provenance | | +| Test.java:6338:26:6338:41 | (...)... : String | Test.java:6338:13:6338:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6338:34:6338:41 | source(...) : Object | Test.java:6338:26:6338:41 | (...)... : String | provenance | | +| Test.java:6339:10:6339:52 | predicatedMap(...) : PredicatedMap [] : String | Test.java:6340:21:6340:23 | out : PredicatedMap [] : String | provenance | | +| Test.java:6339:38:6339:39 | in : Map [] : String | Test.java:6339:10:6339:52 | predicatedMap(...) : PredicatedMap [] : String | provenance | MaD:372 | +| Test.java:6340:21:6340:23 | out : PredicatedMap [] : String | Test.java:232:20:232:31 | map : PredicatedMap [] : String | provenance | | +| Test.java:6340:21:6340:23 | out : PredicatedMap [] : String | Test.java:6340:9:6340:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6345:19:6345:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:6346:50:6346:51 | in : TreeMap [] : String | provenance | | +| Test.java:6345:40:6345:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | +| Test.java:6345:40:6345:55 | (...)... : String | Test.java:6345:19:6345:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:6345:48:6345:55 | source(...) : Object | Test.java:6345:40:6345:55 | (...)... : String | provenance | | +| Test.java:6346:10:6346:64 | predicatedSortedMap(...) : PredicatedSortedMap [] : String | Test.java:6347:19:6347:21 | out : PredicatedSortedMap [] : String | provenance | | +| Test.java:6346:50:6346:51 | in : TreeMap [] : String | Test.java:6346:10:6346:64 | predicatedSortedMap(...) : PredicatedSortedMap [] : String | provenance | MaD:373 | +| Test.java:6347:19:6347:21 | out : PredicatedSortedMap [] : String | Test.java:228:18:228:29 | map : PredicatedSortedMap [] : String | provenance | | +| Test.java:6347:19:6347:21 | out : PredicatedSortedMap [] : String | Test.java:6347:9:6347:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6352:19:6352:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:6353:50:6353:51 | in : TreeMap [] : String | provenance | | +| Test.java:6352:42:6352:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | +| Test.java:6352:42:6352:57 | (...)... : String | Test.java:6352:19:6352:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | +| Test.java:6352:50:6352:57 | source(...) : Object | Test.java:6352:42:6352:57 | (...)... : String | provenance | | +| Test.java:6353:10:6353:64 | predicatedSortedMap(...) : PredicatedSortedMap [] : String | Test.java:6354:21:6354:23 | out : PredicatedSortedMap [] : String | provenance | | +| Test.java:6353:50:6353:51 | in : TreeMap [] : String | Test.java:6353:10:6353:64 | predicatedSortedMap(...) : PredicatedSortedMap [] : String | provenance | MaD:374 | +| Test.java:6354:21:6354:23 | out : PredicatedSortedMap [] : String | Test.java:232:20:232:31 | map : PredicatedSortedMap [] : String | provenance | | +| Test.java:6354:21:6354:23 | out : PredicatedSortedMap [] : String | Test.java:6354:9:6354:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6359:19:6359:52 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:6360:27:6360:28 | in : TiedMapEntry [] : String | provenance | | +| Test.java:6359:36:6359:51 | (...)... : String | Test.java:286:46:286:50 | key : String | provenance | | +| Test.java:6359:36:6359:51 | (...)... : String | Test.java:6359:19:6359:52 | newTMEWithMapKey(...) : TiedMapEntry [] : String | provenance | MaD:237 | +| Test.java:6359:44:6359:51 | source(...) : Object | Test.java:6359:36:6359:51 | (...)... : String | provenance | | +| Test.java:6360:10:6360:29 | new SingletonMap<>(...) : SingletonMap [] : String | Test.java:6361:19:6361:21 | out : SingletonMap [] : String | provenance | | +| Test.java:6360:27:6360:28 | in : TiedMapEntry [] : String | Test.java:6360:10:6360:29 | new SingletonMap<>(...) : SingletonMap [] : String | provenance | MaD:377 | +| Test.java:6361:19:6361:21 | out : SingletonMap [] : String | Test.java:228:18:228:29 | map : SingletonMap [] : String | provenance | | +| Test.java:6361:19:6361:21 | out : SingletonMap [] : String | Test.java:6361:9:6361:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6366:19:6366:54 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:6367:27:6367:28 | in : TiedMapEntry [] : String | provenance | | +| Test.java:6366:38:6366:53 | (...)... : String | Test.java:305:48:305:54 | value : String | provenance | | +| Test.java:6366:38:6366:53 | (...)... : String | Test.java:6366:19:6366:54 | newTMEWithMapValue(...) : TiedMapEntry [] : String | provenance | MaD:21 | +| Test.java:6366:46:6366:53 | source(...) : Object | Test.java:6366:38:6366:53 | (...)... : String | provenance | | +| Test.java:6367:10:6367:29 | new SingletonMap<>(...) : SingletonMap [] : String | Test.java:6368:21:6368:23 | out : SingletonMap [] : String | provenance | | +| Test.java:6367:27:6367:28 | in : TiedMapEntry [] : String | Test.java:6367:10:6367:29 | new SingletonMap<>(...) : SingletonMap [] : String | provenance | MaD:378 | +| Test.java:6368:21:6368:23 | out : SingletonMap [] : String | Test.java:232:20:232:31 | map : SingletonMap [] : String | provenance | | +| Test.java:6368:21:6368:23 | out : SingletonMap [] : String | Test.java:6368:9:6368:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6373:18:6373:51 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | Test.java:6374:27:6374:28 | in : DefaultKeyValue [] : String | provenance | | +| Test.java:6373:35:6373:50 | (...)... : String | Test.java:273:49:273:53 | key : String | provenance | | +| Test.java:6373:35:6373:50 | (...)... : String | Test.java:6373:18:6373:51 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | provenance | MaD:208 | +| Test.java:6373:43:6373:50 | source(...) : Object | Test.java:6373:35:6373:50 | (...)... : String | provenance | | +| Test.java:6374:10:6374:29 | new SingletonMap<>(...) : SingletonMap [] : String | Test.java:6375:19:6375:21 | out : SingletonMap [] : String | provenance | | +| Test.java:6374:27:6374:28 | in : DefaultKeyValue [] : String | Test.java:6374:10:6374:29 | new SingletonMap<>(...) : SingletonMap [] : String | provenance | MaD:375 | +| Test.java:6375:19:6375:21 | out : SingletonMap [] : String | Test.java:228:18:228:29 | map : SingletonMap [] : String | provenance | | +| Test.java:6375:19:6375:21 | out : SingletonMap [] : String | Test.java:6375:9:6375:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6380:18:6380:53 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | Test.java:6381:27:6381:28 | in : DefaultKeyValue [] : String | provenance | | +| Test.java:6380:37:6380:52 | (...)... : String | Test.java:291:51:291:57 | value : String | provenance | | +| Test.java:6380:37:6380:52 | (...)... : String | Test.java:6380:18:6380:53 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | provenance | MaD:209 | +| Test.java:6380:45:6380:52 | source(...) : Object | Test.java:6380:37:6380:52 | (...)... : String | provenance | | +| Test.java:6381:10:6381:29 | new SingletonMap<>(...) : SingletonMap [] : String | Test.java:6382:21:6382:23 | out : SingletonMap [] : String | provenance | | +| Test.java:6381:27:6381:28 | in : DefaultKeyValue [] : String | Test.java:6381:10:6381:29 | new SingletonMap<>(...) : SingletonMap [] : String | provenance | MaD:376 | +| Test.java:6382:21:6382:23 | out : SingletonMap [] : String | Test.java:232:20:232:31 | map : SingletonMap [] : String | provenance | | +| Test.java:6382:21:6382:23 | out : SingletonMap [] : String | Test.java:6382:9:6382:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6387:13:6387:42 | of(...) : Map [] : String | Test.java:6388:27:6388:28 | in : Map [] : String | provenance | | +| Test.java:6387:20:6387:35 | (...)... : String | Test.java:6387:13:6387:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6387:28:6387:35 | source(...) : Object | Test.java:6387:20:6387:35 | (...)... : String | provenance | | +| Test.java:6388:10:6388:29 | new SingletonMap<>(...) : SingletonMap [] : String | Test.java:6389:19:6389:21 | out : SingletonMap [] : String | provenance | | +| Test.java:6388:27:6388:28 | in : Map [] : String | Test.java:6388:10:6388:29 | new SingletonMap<>(...) : SingletonMap [] : String | provenance | MaD:379 | +| Test.java:6389:19:6389:21 | out : SingletonMap [] : String | Test.java:228:18:228:29 | map : SingletonMap [] : String | provenance | | +| Test.java:6389:19:6389:21 | out : SingletonMap [] : String | Test.java:6389:9:6389:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6394:13:6394:42 | of(...) : Map [] : String | Test.java:6395:27:6395:28 | in : Map [] : String | provenance | | +| Test.java:6394:26:6394:41 | (...)... : String | Test.java:6394:13:6394:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6394:34:6394:41 | source(...) : Object | Test.java:6394:26:6394:41 | (...)... : String | provenance | | +| Test.java:6395:10:6395:29 | new SingletonMap<>(...) : SingletonMap [] : String | Test.java:6396:21:6396:23 | out : SingletonMap [] : String | provenance | | +| Test.java:6395:27:6395:28 | in : Map [] : String | Test.java:6395:10:6395:29 | new SingletonMap<>(...) : SingletonMap [] : String | provenance | MaD:380 | +| Test.java:6396:21:6396:23 | out : SingletonMap [] : String | Test.java:232:20:232:31 | map : SingletonMap [] : String | provenance | | +| Test.java:6396:21:6396:23 | out : SingletonMap [] : String | Test.java:6396:9:6396:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6401:16:6401:23 | source(...) : Object | Test.java:6402:27:6402:28 | in : Object | provenance | | +| Test.java:6402:10:6402:35 | new SingletonMap<>(...) : SingletonMap [] : Object | Test.java:6403:19:6403:21 | out : SingletonMap [] : Object | provenance | | +| Test.java:6402:27:6402:28 | in : Object | Test.java:6402:10:6402:35 | new SingletonMap<>(...) : SingletonMap [] : Object | provenance | MaD:381 | +| Test.java:6403:19:6403:21 | out : SingletonMap [] : Object | Test.java:228:18:228:29 | map : SingletonMap [] : Object | provenance | | +| Test.java:6403:19:6403:21 | out : SingletonMap [] : Object | Test.java:6403:9:6403:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6408:16:6408:23 | source(...) : Object | Test.java:6409:33:6409:34 | in : Object | provenance | | +| Test.java:6409:10:6409:35 | new SingletonMap<>(...) : SingletonMap [] : Object | Test.java:6410:21:6410:23 | out : SingletonMap [] : Object | provenance | | +| Test.java:6409:33:6409:34 | in : Object | Test.java:6409:10:6409:35 | new SingletonMap<>(...) : SingletonMap [] : Object | provenance | MaD:382 | +| Test.java:6410:21:6410:23 | out : SingletonMap [] : Object | Test.java:232:20:232:31 | map : SingletonMap [] : Object | provenance | | +| Test.java:6410:21:6410:23 | out : SingletonMap [] : Object | Test.java:6410:9:6410:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6415:16:6415:23 | source(...) : Object | Test.java:6416:17:6416:18 | in : Object | provenance | | +| Test.java:6416:4:6416:6 | out [post update] : SingletonMap [] : Object | Test.java:6417:21:6417:23 | out : SingletonMap [] : Object | provenance | | +| Test.java:6416:17:6416:18 | in : Object | Test.java:6416:4:6416:6 | out [post update] : SingletonMap [] : Object | provenance | MaD:383 | +| Test.java:6417:21:6417:23 | out : SingletonMap [] : Object | Test.java:232:20:232:31 | map : SingletonMap [] : Object | provenance | | +| Test.java:6417:21:6417:23 | out : SingletonMap [] : Object | Test.java:6417:9:6417:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6422:13:6422:42 | of(...) : Map [] : String | Test.java:6423:41:6423:42 | in : Map [] : String | provenance | | +| Test.java:6422:20:6422:35 | (...)... : String | Test.java:6422:13:6422:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6422:28:6422:35 | source(...) : Object | Test.java:6422:20:6422:35 | (...)... : String | provenance | | +| Test.java:6423:10:6423:55 | transformingMap(...) : TransformedMap [] : String | Test.java:6424:19:6424:21 | out : TransformedMap [] : String | provenance | | +| Test.java:6423:41:6423:42 | in : Map [] : String | Test.java:6423:10:6423:55 | transformingMap(...) : TransformedMap [] : String | provenance | MaD:384 | +| Test.java:6424:19:6424:21 | out : TransformedMap [] : String | Test.java:228:18:228:29 | map : TransformedMap [] : String | provenance | | +| Test.java:6424:19:6424:21 | out : TransformedMap [] : String | Test.java:6424:9:6424:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6429:13:6429:42 | of(...) : Map [] : String | Test.java:6430:41:6430:42 | in : Map [] : String | provenance | | +| Test.java:6429:26:6429:41 | (...)... : String | Test.java:6429:13:6429:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6429:34:6429:41 | source(...) : Object | Test.java:6429:26:6429:41 | (...)... : String | provenance | | +| Test.java:6430:10:6430:55 | transformingMap(...) : TransformedMap [] : String | Test.java:6431:21:6431:23 | out : TransformedMap [] : String | provenance | | +| Test.java:6430:41:6430:42 | in : Map [] : String | Test.java:6430:10:6430:55 | transformingMap(...) : TransformedMap [] : String | provenance | MaD:385 | +| Test.java:6431:21:6431:23 | out : TransformedMap [] : String | Test.java:232:20:232:31 | map : TransformedMap [] : String | provenance | | +| Test.java:6431:21:6431:23 | out : TransformedMap [] : String | Test.java:6431:9:6431:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6436:19:6436:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:6437:53:6437:54 | in : TreeMap [] : String | provenance | | +| Test.java:6436:40:6436:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | +| Test.java:6436:40:6436:55 | (...)... : String | Test.java:6436:19:6436:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:6436:48:6436:55 | source(...) : Object | Test.java:6436:40:6436:55 | (...)... : String | provenance | | +| Test.java:6437:10:6437:67 | transformingSortedMap(...) : TransformedSortedMap [] : String | Test.java:6438:19:6438:21 | out : TransformedSortedMap [] : String | provenance | | +| Test.java:6437:53:6437:54 | in : TreeMap [] : String | Test.java:6437:10:6437:67 | transformingSortedMap(...) : TransformedSortedMap [] : String | provenance | MaD:386 | +| Test.java:6438:19:6438:21 | out : TransformedSortedMap [] : String | Test.java:228:18:228:29 | map : TransformedSortedMap [] : String | provenance | | +| Test.java:6438:19:6438:21 | out : TransformedSortedMap [] : String | Test.java:6438:9:6438:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6443:19:6443:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:6444:53:6444:54 | in : TreeMap [] : String | provenance | | +| Test.java:6443:42:6443:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | +| Test.java:6443:42:6443:57 | (...)... : String | Test.java:6443:19:6443:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | +| Test.java:6443:50:6443:57 | source(...) : Object | Test.java:6443:42:6443:57 | (...)... : String | provenance | | +| Test.java:6444:10:6444:67 | transformingSortedMap(...) : TransformedSortedMap [] : String | Test.java:6445:21:6445:23 | out : TransformedSortedMap [] : String | provenance | | +| Test.java:6444:53:6444:54 | in : TreeMap [] : String | Test.java:6444:10:6444:67 | transformingSortedMap(...) : TransformedSortedMap [] : String | provenance | MaD:387 | +| Test.java:6445:21:6445:23 | out : TransformedSortedMap [] : String | Test.java:232:20:232:31 | map : TransformedSortedMap [] : String | provenance | | +| Test.java:6445:21:6445:23 | out : TransformedSortedMap [] : String | Test.java:6445:9:6445:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6450:39:6450:102 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | Test.java:6451:52:6451:53 | in : ListOrderedSet [, ] : String | provenance | | +| Test.java:6450:68:6450:101 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | provenance | | +| Test.java:6450:68:6450:101 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:6450:39:6450:102 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | provenance | MaD:441 | +| Test.java:6450:85:6450:100 | (...)... : String | Test.java:286:46:286:50 | key : String | provenance | | +| Test.java:6450:85:6450:100 | (...)... : String | Test.java:6450:68:6450:101 | newTMEWithMapKey(...) : TiedMapEntry [] : String | provenance | MaD:237 | +| Test.java:6450:93:6450:100 | source(...) : Object | Test.java:6450:85:6450:100 | (...)... : String | provenance | | +| Test.java:6451:10:6451:54 | unmodifiableEntrySet(...) : Set [, ] : String | Test.java:6452:39:6452:41 | out : Set [, ] : String | provenance | | +| Test.java:6451:52:6451:53 | in : ListOrderedSet [, ] : String | Test.java:6451:10:6451:54 | unmodifiableEntrySet(...) : Set [, ] : String | provenance | MaD:388 | +| Test.java:6452:28:6452:42 | getElement(...) : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | +| Test.java:6452:28:6452:42 | getElement(...) : Entry [] : String | Test.java:6452:9:6452:43 | getMapKeyFromEntry(...) | provenance | MaD:10 | +| Test.java:6452:39:6452:41 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | provenance | | +| Test.java:6452:39:6452:41 | out : Set [, ] : String | Test.java:6452:28:6452:42 | getElement(...) : Entry [] : String | provenance | MaD:3 | +| Test.java:6457:39:6457:104 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | Test.java:6458:52:6458:53 | in : ListOrderedSet [, ] : String | provenance | | +| Test.java:6457:68:6457:103 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | provenance | | +| Test.java:6457:68:6457:103 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:6457:39:6457:104 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | provenance | MaD:441 | +| Test.java:6457:87:6457:102 | (...)... : String | Test.java:305:48:305:54 | value : String | provenance | | +| Test.java:6457:87:6457:102 | (...)... : String | Test.java:6457:68:6457:103 | newTMEWithMapValue(...) : TiedMapEntry [] : String | provenance | MaD:21 | +| Test.java:6457:95:6457:102 | source(...) : Object | Test.java:6457:87:6457:102 | (...)... : String | provenance | | +| Test.java:6458:10:6458:54 | unmodifiableEntrySet(...) : Set [, ] : String | Test.java:6459:41:6459:43 | out : Set [, ] : String | provenance | | +| Test.java:6458:52:6458:53 | in : ListOrderedSet [, ] : String | Test.java:6458:10:6458:54 | unmodifiableEntrySet(...) : Set [, ] : String | provenance | MaD:389 | +| Test.java:6459:30:6459:44 | getElement(...) : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | +| Test.java:6459:30:6459:44 | getElement(...) : Entry [] : String | Test.java:6459:9:6459:45 | getMapValueFromEntry(...) | provenance | MaD:11 | +| Test.java:6459:41:6459:43 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | provenance | | +| Test.java:6459:41:6459:43 | out : Set [, ] : String | Test.java:6459:30:6459:44 | getElement(...) : Entry [] : String | provenance | MaD:3 | +| Test.java:6464:13:6464:42 | of(...) : Map [] : String | Test.java:6465:42:6465:43 | in : Map [] : String | provenance | | +| Test.java:6464:20:6464:35 | (...)... : String | Test.java:6464:13:6464:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6464:28:6464:35 | source(...) : Object | Test.java:6464:20:6464:35 | (...)... : String | provenance | | +| Test.java:6465:10:6465:44 | unmodifiableMap(...) : Map [] : String | Test.java:6466:19:6466:21 | out : Map [] : String | provenance | | +| Test.java:6465:42:6465:43 | in : Map [] : String | Test.java:6465:10:6465:44 | unmodifiableMap(...) : Map [] : String | provenance | MaD:390 | +| Test.java:6466:19:6466:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | provenance | | +| Test.java:6466:19:6466:21 | out : Map [] : String | Test.java:6466:9:6466:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6471:13:6471:42 | of(...) : Map [] : String | Test.java:6472:42:6472:43 | in : Map [] : String | provenance | | +| Test.java:6471:26:6471:41 | (...)... : String | Test.java:6471:13:6471:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6471:34:6471:41 | source(...) : Object | Test.java:6471:26:6471:41 | (...)... : String | provenance | | +| Test.java:6472:10:6472:44 | unmodifiableMap(...) : Map [] : String | Test.java:6473:21:6473:23 | out : Map [] : String | provenance | | +| Test.java:6472:42:6472:43 | in : Map [] : String | Test.java:6472:10:6472:44 | unmodifiableMap(...) : Map [] : String | provenance | MaD:391 | +| Test.java:6473:21:6473:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | provenance | | +| Test.java:6473:21:6473:23 | out : Map [] : String | Test.java:6473:9:6473:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6478:20:6478:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | Test.java:6479:56:6479:57 | in : ListOrderedMap [] : String | provenance | | +| Test.java:6478:48:6478:63 | (...)... : String | Test.java:277:59:277:63 | key : String | provenance | | +| Test.java:6478:48:6478:63 | (...)... : String | Test.java:6478:20:6478:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | provenance | MaD:14 | +| Test.java:6478:56:6478:63 | source(...) : Object | Test.java:6478:48:6478:63 | (...)... : String | provenance | | +| Test.java:6479:10:6479:58 | unmodifiableOrderedMap(...) : OrderedMap [] : String | Test.java:6480:19:6480:21 | out : OrderedMap [] : String | provenance | | +| Test.java:6479:56:6479:57 | in : ListOrderedMap [] : String | Test.java:6479:10:6479:58 | unmodifiableOrderedMap(...) : OrderedMap [] : String | provenance | MaD:392 | +| Test.java:6480:19:6480:21 | out : OrderedMap [] : String | Test.java:228:18:228:29 | map : OrderedMap [] : String | provenance | | +| Test.java:6480:19:6480:21 | out : OrderedMap [] : String | Test.java:6480:9:6480:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6485:20:6485:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | Test.java:6486:56:6486:57 | in : ListOrderedMap [] : String | provenance | | +| Test.java:6485:50:6485:65 | (...)... : String | Test.java:296:61:296:67 | value : String | provenance | | +| Test.java:6485:50:6485:65 | (...)... : String | Test.java:6485:20:6485:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | provenance | MaD:15 | +| Test.java:6485:58:6485:65 | source(...) : Object | Test.java:6485:50:6485:65 | (...)... : String | provenance | | +| Test.java:6486:10:6486:58 | unmodifiableOrderedMap(...) : OrderedMap [] : String | Test.java:6487:21:6487:23 | out : OrderedMap [] : String | provenance | | +| Test.java:6486:56:6486:57 | in : ListOrderedMap [] : String | Test.java:6486:10:6486:58 | unmodifiableOrderedMap(...) : OrderedMap [] : String | provenance | MaD:393 | +| Test.java:6487:21:6487:23 | out : OrderedMap [] : String | Test.java:232:20:232:31 | map : OrderedMap [] : String | provenance | | +| Test.java:6487:21:6487:23 | out : OrderedMap [] : String | Test.java:6487:9:6487:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6492:19:6492:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | Test.java:6493:54:6493:55 | in : TreeMap [] : String | provenance | | +| Test.java:6492:40:6492:55 | (...)... : String | Test.java:285:47:285:51 | key : String | provenance | | +| Test.java:6492:40:6492:55 | (...)... : String | Test.java:6492:19:6492:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | provenance | MaD:20 | +| Test.java:6492:48:6492:55 | source(...) : Object | Test.java:6492:40:6492:55 | (...)... : String | provenance | | +| Test.java:6493:10:6493:56 | unmodifiableSortedMap(...) : SortedMap [] : String | Test.java:6494:19:6494:21 | out : SortedMap [] : String | provenance | | +| Test.java:6493:54:6493:55 | in : TreeMap [] : String | Test.java:6493:10:6493:56 | unmodifiableSortedMap(...) : SortedMap [] : String | provenance | MaD:394 | +| Test.java:6494:19:6494:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | provenance | | +| Test.java:6494:19:6494:21 | out : SortedMap [] : String | Test.java:6494:9:6494:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6499:19:6499:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | Test.java:6500:54:6500:55 | in : TreeMap [] : String | provenance | | +| Test.java:6499:42:6499:57 | (...)... : String | Test.java:304:49:304:55 | value : String | provenance | | +| Test.java:6499:42:6499:57 | (...)... : String | Test.java:6499:19:6499:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | provenance | MaD:21 | +| Test.java:6499:50:6499:57 | source(...) : Object | Test.java:6499:42:6499:57 | (...)... : String | provenance | | +| Test.java:6500:10:6500:56 | unmodifiableSortedMap(...) : SortedMap [] : String | Test.java:6501:21:6501:23 | out : SortedMap [] : String | provenance | | +| Test.java:6500:54:6500:55 | in : TreeMap [] : String | Test.java:6500:10:6500:56 | unmodifiableSortedMap(...) : SortedMap [] : String | provenance | MaD:395 | +| Test.java:6501:21:6501:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | provenance | | +| Test.java:6501:21:6501:23 | out : SortedMap [] : String | Test.java:6501:9:6501:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6506:13:6506:42 | of(...) : Map [] : String | Test.java:6507:37:6507:38 | in : Map [] : String | provenance | | +| Test.java:6506:20:6506:35 | (...)... : String | Test.java:6506:13:6506:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6506:28:6506:35 | source(...) : Object | Test.java:6506:20:6506:35 | (...)... : String | provenance | | +| Test.java:6507:10:6507:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | Test.java:6508:19:6508:21 | out : ArrayListValuedHashMap [] : String | provenance | | +| Test.java:6507:37:6507:38 | in : Map [] : String | Test.java:6507:10:6507:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | provenance | MaD:396 | +| Test.java:6508:19:6508:21 | out : ArrayListValuedHashMap [] : String | Test.java:240:18:240:46 | container : ArrayListValuedHashMap [] : String | provenance | | +| Test.java:6508:19:6508:21 | out : ArrayListValuedHashMap [] : String | Test.java:6508:9:6508:22 | getMapKey(...) | provenance | MaD:764 | +| Test.java:6513:13:6513:42 | of(...) : Map [] : String | Test.java:6514:37:6514:38 | in : Map [] : String | provenance | | +| Test.java:6513:26:6513:41 | (...)... : String | Test.java:6513:13:6513:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6513:34:6513:41 | source(...) : Object | Test.java:6513:26:6513:41 | (...)... : String | provenance | | +| Test.java:6514:10:6514:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | Test.java:6515:32:6515:34 | out : ArrayListValuedHashMap [, ] : String | provenance | | +| Test.java:6514:37:6514:38 | in : Map [] : String | Test.java:6514:10:6514:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:397 | +| Test.java:6515:20:6515:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6515:20:6515:35 | getMapValue(...) : Collection [] : String | Test.java:6515:9:6515:36 | getElement(...) | provenance | MaD:3 | +| Test.java:6515:32:6515:34 | out : ArrayListValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : ArrayListValuedHashMap [, ] : String | provenance | | +| Test.java:6515:32:6515:34 | out : ArrayListValuedHashMap [, ] : String | Test.java:6515:20:6515:35 | getMapValue(...) : Collection [] : String | provenance | MaD:763 | +| Test.java:6520:24:6520:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:6521:37:6521:38 | in : ArrayListValuedHashMap [, ] : String | provenance | | +| Test.java:6520:45:6520:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | +| Test.java:6520:45:6520:60 | (...)... : String | Test.java:6520:24:6520:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | +| Test.java:6520:53:6520:60 | source(...) : Object | Test.java:6520:45:6520:60 | (...)... : String | provenance | | +| Test.java:6521:10:6521:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | Test.java:6522:32:6522:34 | out : ArrayListValuedHashMap [, ] : String | provenance | | +| Test.java:6521:37:6521:38 | in : ArrayListValuedHashMap [, ] : String | Test.java:6521:10:6521:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:399 | +| Test.java:6522:20:6522:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6522:20:6522:35 | getMapValue(...) : Collection [] : String | Test.java:6522:9:6522:36 | getElement(...) | provenance | MaD:3 | +| Test.java:6522:32:6522:34 | out : ArrayListValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : ArrayListValuedHashMap [, ] : String | provenance | | +| Test.java:6522:32:6522:34 | out : ArrayListValuedHashMap [, ] : String | Test.java:6522:20:6522:35 | getMapValue(...) : Collection [] : String | provenance | MaD:763 | +| Test.java:6527:24:6527:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:6528:37:6528:38 | in : ArrayListValuedHashMap [] : String | provenance | | +| Test.java:6527:43:6527:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | +| Test.java:6527:43:6527:58 | (...)... : String | Test.java:6527:24:6527:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:768 | +| Test.java:6527:51:6527:58 | source(...) : Object | Test.java:6527:43:6527:58 | (...)... : String | provenance | | +| Test.java:6528:10:6528:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | Test.java:6529:19:6529:21 | out : ArrayListValuedHashMap [] : String | provenance | | +| Test.java:6528:37:6528:38 | in : ArrayListValuedHashMap [] : String | Test.java:6528:10:6528:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | provenance | MaD:398 | +| Test.java:6529:19:6529:21 | out : ArrayListValuedHashMap [] : String | Test.java:240:18:240:46 | container : ArrayListValuedHashMap [] : String | provenance | | +| Test.java:6529:19:6529:21 | out : ArrayListValuedHashMap [] : String | Test.java:6529:9:6529:22 | getMapKey(...) | provenance | MaD:764 | +| Test.java:6534:13:6534:42 | of(...) : Map [] : String | Test.java:6535:35:6535:36 | in : Map [] : String | provenance | | +| Test.java:6534:20:6534:35 | (...)... : String | Test.java:6534:13:6534:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6534:28:6534:35 | source(...) : Object | Test.java:6534:20:6534:35 | (...)... : String | provenance | | +| Test.java:6535:10:6535:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | Test.java:6536:19:6536:21 | out : HashSetValuedHashMap [] : String | provenance | | +| Test.java:6535:35:6535:36 | in : Map [] : String | Test.java:6535:10:6535:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | provenance | MaD:400 | +| Test.java:6536:19:6536:21 | out : HashSetValuedHashMap [] : String | Test.java:240:18:240:46 | container : HashSetValuedHashMap [] : String | provenance | | +| Test.java:6536:19:6536:21 | out : HashSetValuedHashMap [] : String | Test.java:6536:9:6536:22 | getMapKey(...) | provenance | MaD:764 | +| Test.java:6541:13:6541:42 | of(...) : Map [] : String | Test.java:6542:35:6542:36 | in : Map [] : String | provenance | | +| Test.java:6541:26:6541:41 | (...)... : String | Test.java:6541:13:6541:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6541:34:6541:41 | source(...) : Object | Test.java:6541:26:6541:41 | (...)... : String | provenance | | +| Test.java:6542:10:6542:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | Test.java:6543:32:6543:34 | out : HashSetValuedHashMap [, ] : String | provenance | | +| Test.java:6542:35:6542:36 | in : Map [] : String | Test.java:6542:10:6542:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | provenance | MaD:401 | +| Test.java:6543:20:6543:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6543:20:6543:35 | getMapValue(...) : Collection [] : String | Test.java:6543:9:6543:36 | getElement(...) | provenance | MaD:3 | +| Test.java:6543:32:6543:34 | out : HashSetValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : HashSetValuedHashMap [, ] : String | provenance | | +| Test.java:6543:32:6543:34 | out : HashSetValuedHashMap [, ] : String | Test.java:6543:20:6543:35 | getMapValue(...) : Collection [] : String | provenance | MaD:763 | +| Test.java:6548:24:6548:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:6549:35:6549:36 | in : ArrayListValuedHashMap [, ] : String | provenance | | +| Test.java:6548:45:6548:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | +| Test.java:6548:45:6548:60 | (...)... : String | Test.java:6548:24:6548:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | +| Test.java:6548:53:6548:60 | source(...) : Object | Test.java:6548:45:6548:60 | (...)... : String | provenance | | +| Test.java:6549:10:6549:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | Test.java:6550:32:6550:34 | out : HashSetValuedHashMap [, ] : String | provenance | | +| Test.java:6549:35:6549:36 | in : ArrayListValuedHashMap [, ] : String | Test.java:6549:10:6549:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | provenance | MaD:403 | +| Test.java:6550:20:6550:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6550:20:6550:35 | getMapValue(...) : Collection [] : String | Test.java:6550:9:6550:36 | getElement(...) | provenance | MaD:3 | +| Test.java:6550:32:6550:34 | out : HashSetValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : HashSetValuedHashMap [, ] : String | provenance | | +| Test.java:6550:32:6550:34 | out : HashSetValuedHashMap [, ] : String | Test.java:6550:20:6550:35 | getMapValue(...) : Collection [] : String | provenance | MaD:763 | +| Test.java:6555:24:6555:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:6556:35:6556:36 | in : ArrayListValuedHashMap [] : String | provenance | | +| Test.java:6555:43:6555:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | +| Test.java:6555:43:6555:58 | (...)... : String | Test.java:6555:24:6555:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:768 | +| Test.java:6555:51:6555:58 | source(...) : Object | Test.java:6555:43:6555:58 | (...)... : String | provenance | | +| Test.java:6556:10:6556:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | Test.java:6557:19:6557:21 | out : HashSetValuedHashMap [] : String | provenance | | +| Test.java:6556:35:6556:36 | in : ArrayListValuedHashMap [] : String | Test.java:6556:10:6556:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | provenance | MaD:402 | +| Test.java:6557:19:6557:21 | out : HashSetValuedHashMap [] : String | Test.java:240:18:240:46 | container : HashSetValuedHashMap [] : String | provenance | | +| Test.java:6557:19:6557:21 | out : HashSetValuedHashMap [] : String | Test.java:6557:9:6557:22 | getMapKey(...) | provenance | MaD:764 | +| Test.java:6562:24:6562:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:6563:52:6563:53 | in : ArrayListValuedHashMap [, ] : String | provenance | | +| Test.java:6562:45:6562:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | +| Test.java:6562:45:6562:60 | (...)... : String | Test.java:6562:24:6562:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | +| Test.java:6562:53:6562:60 | source(...) : Object | Test.java:6562:45:6562:60 | (...)... : String | provenance | | +| Test.java:6563:10:6563:66 | transformingMap(...) : TransformedMultiValuedMap [, ] : String | Test.java:6564:32:6564:34 | out : TransformedMultiValuedMap [, ] : String | provenance | | +| Test.java:6563:52:6563:53 | in : ArrayListValuedHashMap [, ] : String | Test.java:6563:10:6563:66 | transformingMap(...) : TransformedMultiValuedMap [, ] : String | provenance | MaD:405 | +| Test.java:6564:20:6564:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6564:20:6564:35 | getMapValue(...) : Collection [] : String | Test.java:6564:9:6564:36 | getElement(...) | provenance | MaD:3 | +| Test.java:6564:32:6564:34 | out : TransformedMultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : TransformedMultiValuedMap [, ] : String | provenance | | +| Test.java:6564:32:6564:34 | out : TransformedMultiValuedMap [, ] : String | Test.java:6564:20:6564:35 | getMapValue(...) : Collection [] : String | provenance | MaD:763 | +| Test.java:6569:24:6569:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:6570:52:6570:53 | in : ArrayListValuedHashMap [] : String | provenance | | +| Test.java:6569:43:6569:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | +| Test.java:6569:43:6569:58 | (...)... : String | Test.java:6569:24:6569:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:768 | +| Test.java:6569:51:6569:58 | source(...) : Object | Test.java:6569:43:6569:58 | (...)... : String | provenance | | +| Test.java:6570:10:6570:66 | transformingMap(...) : TransformedMultiValuedMap [] : String | Test.java:6571:19:6571:21 | out : TransformedMultiValuedMap [] : String | provenance | | +| Test.java:6570:52:6570:53 | in : ArrayListValuedHashMap [] : String | Test.java:6570:10:6570:66 | transformingMap(...) : TransformedMultiValuedMap [] : String | provenance | MaD:404 | +| Test.java:6571:19:6571:21 | out : TransformedMultiValuedMap [] : String | Test.java:240:18:240:46 | container : TransformedMultiValuedMap [] : String | provenance | | +| Test.java:6571:19:6571:21 | out : TransformedMultiValuedMap [] : String | Test.java:6571:9:6571:22 | getMapKey(...) | provenance | MaD:764 | +| Test.java:6576:24:6576:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | Test.java:6577:64:6577:65 | in : ArrayListValuedHashMap [, ] : String | provenance | | +| Test.java:6576:45:6576:60 | (...)... : String | Test.java:290:60:290:66 | value : String | provenance | | +| Test.java:6576:45:6576:60 | (...)... : String | Test.java:6576:24:6576:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | provenance | MaD:769 | +| Test.java:6576:53:6576:60 | source(...) : Object | Test.java:6576:45:6576:60 | (...)... : String | provenance | | +| Test.java:6577:10:6577:66 | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [, ] : String | Test.java:6578:32:6578:34 | out : UnmodifiableMultiValuedMap [, ] : String | provenance | | +| Test.java:6577:64:6577:65 | in : ArrayListValuedHashMap [, ] : String | Test.java:6577:10:6577:66 | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [, ] : String | provenance | MaD:407 | +| Test.java:6578:20:6578:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | provenance | | +| Test.java:6578:20:6578:35 | getMapValue(...) : Collection [] : String | Test.java:6578:9:6578:36 | getElement(...) | provenance | MaD:3 | +| Test.java:6578:32:6578:34 | out : UnmodifiableMultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : UnmodifiableMultiValuedMap [, ] : String | provenance | | +| Test.java:6578:32:6578:34 | out : UnmodifiableMultiValuedMap [, ] : String | Test.java:6578:20:6578:35 | getMapValue(...) : Collection [] : String | provenance | MaD:763 | +| Test.java:6583:24:6583:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | Test.java:6584:64:6584:65 | in : ArrayListValuedHashMap [] : String | provenance | | +| Test.java:6583:43:6583:58 | (...)... : String | Test.java:272:58:272:62 | key : String | provenance | | +| Test.java:6583:43:6583:58 | (...)... : String | Test.java:6583:24:6583:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | provenance | MaD:768 | +| Test.java:6583:51:6583:58 | source(...) : Object | Test.java:6583:43:6583:58 | (...)... : String | provenance | | +| Test.java:6584:10:6584:66 | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [] : String | Test.java:6585:19:6585:21 | out : UnmodifiableMultiValuedMap [] : String | provenance | | +| Test.java:6584:64:6584:65 | in : ArrayListValuedHashMap [] : String | Test.java:6584:10:6584:66 | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [] : String | provenance | MaD:406 | +| Test.java:6585:19:6585:21 | out : UnmodifiableMultiValuedMap [] : String | Test.java:240:18:240:46 | container : UnmodifiableMultiValuedMap [] : String | provenance | | +| Test.java:6585:19:6585:21 | out : UnmodifiableMultiValuedMap [] : String | Test.java:6585:9:6585:22 | getMapKey(...) | provenance | MaD:764 | +| Test.java:6590:20:6590:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:6591:27:6591:28 | in : TreeBag [] : String | provenance | | +| Test.java:6590:42:6590:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:6590:42:6590:57 | (...)... : String | Test.java:6590:20:6590:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:6590:42:6590:57 | (...)... : String | Test.java:6590:20:6590:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:6590:50:6590:57 | source(...) : Object | Test.java:6590:42:6590:57 | (...)... : String | provenance | | +| Test.java:6591:10:6591:29 | new HashMultiSet<>(...) : HashMultiSet [] : String | Test.java:6592:20:6592:22 | out : HashMultiSet [] : String | provenance | | +| Test.java:6591:27:6591:28 | in : TreeBag [] : String | Test.java:6591:10:6591:29 | new HashMultiSet<>(...) : HashMultiSet [] : String | provenance | MaD:408 | +| Test.java:6592:20:6592:22 | out : HashMultiSet [] : String | Test.java:230:19:230:32 | it : HashMultiSet [] : String | provenance | | +| Test.java:6592:20:6592:22 | out : HashMultiSet [] : String | Test.java:6592:9:6592:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6597:18:6597:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:6598:48:6598:49 | in : HashMultiSet [] : String | provenance | | +| Test.java:6597:45:6597:60 | (...)... : String | Test.java:258:49:258:57 | element : String | provenance | | +| Test.java:6597:45:6597:60 | (...)... : String | Test.java:6597:18:6597:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | +| Test.java:6597:45:6597:60 | (...)... : String | Test.java:6597:18:6597:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:753 | +| Test.java:6597:53:6597:60 | source(...) : Object | Test.java:6597:45:6597:60 | (...)... : String | provenance | | +| Test.java:6598:10:6598:56 | predicatedMultiSet(...) : PredicatedMultiSet [] : String | Test.java:6599:20:6599:22 | out : PredicatedMultiSet [] : String | provenance | | +| Test.java:6598:48:6598:49 | in : HashMultiSet [] : String | Test.java:6598:10:6598:56 | predicatedMultiSet(...) : PredicatedMultiSet [] : String | provenance | MaD:409 | +| Test.java:6599:20:6599:22 | out : PredicatedMultiSet [] : String | Test.java:230:19:230:32 | it : PredicatedMultiSet [] : String | provenance | | +| Test.java:6599:20:6599:22 | out : PredicatedMultiSet [] : String | Test.java:6599:9:6599:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6604:18:6604:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:6605:52:6605:53 | in : HashMultiSet [] : String | provenance | | +| Test.java:6604:45:6604:60 | (...)... : String | Test.java:258:49:258:57 | element : String | provenance | | +| Test.java:6604:45:6604:60 | (...)... : String | Test.java:6604:18:6604:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | +| Test.java:6604:45:6604:60 | (...)... : String | Test.java:6604:18:6604:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:753 | +| Test.java:6604:53:6604:60 | source(...) : Object | Test.java:6604:45:6604:60 | (...)... : String | provenance | | +| Test.java:6605:10:6605:54 | synchronizedMultiSet(...) : SynchronizedMultiSet [] : String | Test.java:6606:20:6606:22 | out : SynchronizedMultiSet [] : String | provenance | | +| Test.java:6605:52:6605:53 | in : HashMultiSet [] : String | Test.java:6605:10:6605:54 | synchronizedMultiSet(...) : SynchronizedMultiSet [] : String | provenance | MaD:410 | +| Test.java:6606:20:6606:22 | out : SynchronizedMultiSet [] : String | Test.java:230:19:230:32 | it : SynchronizedMultiSet [] : String | provenance | | +| Test.java:6606:20:6606:22 | out : SynchronizedMultiSet [] : String | Test.java:6606:9:6606:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6611:18:6611:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | Test.java:6612:52:6612:53 | in : HashMultiSet [] : String | provenance | | +| Test.java:6611:45:6611:60 | (...)... : String | Test.java:258:49:258:57 | element : String | provenance | | +| Test.java:6611:45:6611:60 | (...)... : String | Test.java:6611:18:6611:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:4 | +| Test.java:6611:45:6611:60 | (...)... : String | Test.java:6611:18:6611:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | provenance | MaD:753 | +| Test.java:6611:53:6611:60 | source(...) : Object | Test.java:6611:45:6611:60 | (...)... : String | provenance | | +| Test.java:6612:10:6612:54 | unmodifiableMultiSet(...) : MultiSet [] : String | Test.java:6613:20:6613:22 | out : MultiSet [] : String | provenance | | +| Test.java:6612:52:6612:53 | in : HashMultiSet [] : String | Test.java:6612:10:6612:54 | unmodifiableMultiSet(...) : MultiSet [] : String | provenance | MaD:411 | +| Test.java:6613:20:6613:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | provenance | | +| Test.java:6613:20:6613:22 | out : MultiSet [] : String | Test.java:6613:9:6613:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6618:16:6618:31 | (...)... : String | Test.java:6620:30:6620:31 | in : String | provenance | | +| Test.java:6618:24:6618:31 | source(...) : Object | Test.java:6618:16:6618:31 | (...)... : String | provenance | | +| Test.java:6620:10:6620:32 | load(...) : Properties | Test.java:6621:9:6621:11 | out | provenance | | +| Test.java:6620:30:6620:31 | in : String | Test.java:6620:10:6620:32 | load(...) : Properties | provenance | MaD:412 | +| Test.java:6626:14:6626:27 | (...)... : File | Test.java:6628:24:6628:25 | in : File | provenance | | +| Test.java:6626:20:6626:27 | source(...) : Object | Test.java:6626:14:6626:27 | (...)... : File | provenance | | +| Test.java:6628:10:6628:26 | load(...) : Properties | Test.java:6629:9:6629:11 | out | provenance | | +| Test.java:6628:24:6628:25 | in : File | Test.java:6628:10:6628:26 | load(...) : Properties | provenance | MaD:413 | +| Test.java:6634:21:6634:41 | (...)... : InputStream | Test.java:6636:24:6636:25 | in : InputStream | provenance | | +| Test.java:6634:34:6634:41 | source(...) : Object | Test.java:6634:21:6634:41 | (...)... : InputStream | provenance | | +| Test.java:6636:10:6636:26 | load(...) : Properties | Test.java:6637:9:6637:11 | out | provenance | | +| Test.java:6636:24:6636:25 | in : InputStream | Test.java:6636:10:6636:26 | load(...) : Properties | provenance | MaD:414 | +| Test.java:6642:14:6642:27 | (...)... : Path | Test.java:6644:24:6644:25 | in : Path | provenance | | +| Test.java:6642:20:6642:27 | source(...) : Object | Test.java:6642:14:6642:27 | (...)... : Path | provenance | | +| Test.java:6644:10:6644:26 | load(...) : Properties | Test.java:6645:9:6645:11 | out | provenance | | +| Test.java:6644:24:6644:25 | in : Path | Test.java:6644:10:6644:26 | load(...) : Properties | provenance | MaD:415 | +| Test.java:6650:16:6650:31 | (...)... : Reader | Test.java:6652:24:6652:25 | in : Reader | provenance | | +| Test.java:6650:24:6650:31 | source(...) : Object | Test.java:6650:16:6650:31 | (...)... : Reader | provenance | | +| Test.java:6652:10:6652:26 | load(...) : Properties | Test.java:6653:9:6653:11 | out | provenance | | +| Test.java:6652:24:6652:25 | in : Reader | Test.java:6652:10:6652:26 | load(...) : Properties | provenance | MaD:416 | +| Test.java:6658:16:6658:31 | (...)... : String | Test.java:6660:24:6660:25 | in : String | provenance | | +| Test.java:6658:24:6658:31 | source(...) : Object | Test.java:6658:16:6658:31 | (...)... : String | provenance | | +| Test.java:6660:10:6660:26 | load(...) : Properties | Test.java:6661:9:6661:11 | out | provenance | | +| Test.java:6660:24:6660:25 | in : String | Test.java:6660:10:6660:26 | load(...) : Properties | provenance | MaD:417 | +| Test.java:6666:13:6666:25 | (...)... : URI | Test.java:6668:24:6668:25 | in : URI | provenance | | +| Test.java:6666:18:6666:25 | source(...) : Object | Test.java:6666:13:6666:25 | (...)... : URI | provenance | | +| Test.java:6668:10:6668:26 | load(...) : Properties | Test.java:6669:9:6669:11 | out | provenance | | +| Test.java:6668:24:6668:25 | in : URI | Test.java:6668:10:6668:26 | load(...) : Properties | provenance | MaD:418 | +| Test.java:6674:13:6674:25 | (...)... : URL | Test.java:6676:24:6676:25 | in : URL | provenance | | +| Test.java:6674:18:6674:25 | source(...) : Object | Test.java:6674:13:6674:25 | (...)... : URL | provenance | | +| Test.java:6676:10:6676:26 | load(...) : Properties | Test.java:6677:9:6677:11 | out | provenance | | +| Test.java:6676:24:6676:25 | in : URL | Test.java:6676:10:6676:26 | load(...) : Properties | provenance | MaD:419 | +| Test.java:6682:20:6682:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:6683:32:6683:33 | in : TreeBag [] : String | provenance | | +| Test.java:6682:42:6682:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:6682:42:6682:57 | (...)... : String | Test.java:6682:20:6682:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:6682:42:6682:57 | (...)... : String | Test.java:6682:20:6682:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:6682:50:6682:57 | source(...) : Object | Test.java:6682:42:6682:57 | (...)... : String | provenance | | +| Test.java:6683:10:6683:34 | new CircularFifoQueue<>(...) : CircularFifoQueue [] : String | Test.java:6684:20:6684:22 | out : CircularFifoQueue [] : String | provenance | | +| Test.java:6683:32:6683:33 | in : TreeBag [] : String | Test.java:6683:10:6683:34 | new CircularFifoQueue<>(...) : CircularFifoQueue [] : String | provenance | MaD:420 | +| Test.java:6684:20:6684:22 | out : CircularFifoQueue [] : String | Test.java:230:19:230:32 | it : CircularFifoQueue [] : String | provenance | | +| Test.java:6684:20:6684:22 | out : CircularFifoQueue [] : String | Test.java:6684:9:6684:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6689:27:6689:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:6690:10:6690:11 | in : CircularFifoQueue [] : String | provenance | | +| Test.java:6689:59:6689:74 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | +| Test.java:6689:59:6689:74 | (...)... : String | Test.java:6689:27:6689:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | +| Test.java:6689:67:6689:74 | source(...) : Object | Test.java:6689:59:6689:74 | (...)... : String | provenance | | +| Test.java:6690:10:6690:11 | in : CircularFifoQueue [] : String | Test.java:6690:10:6690:18 | get(...) : String | provenance | MaD:421 | +| Test.java:6690:10:6690:18 | get(...) : String | Test.java:6691:9:6691:11 | out | provenance | | +| Test.java:6696:15:6696:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:6697:42:6697:43 | in : CircularFifoQueue [] : String | provenance | | +| Test.java:6696:47:6696:62 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | +| Test.java:6696:47:6696:62 | (...)... : String | Test.java:6696:15:6696:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | +| Test.java:6696:55:6696:62 | source(...) : Object | Test.java:6696:47:6696:62 | (...)... : String | provenance | | +| Test.java:6697:10:6697:50 | predicatedQueue(...) : PredicatedQueue [] : String | Test.java:6698:20:6698:22 | out : PredicatedQueue [] : String | provenance | | +| Test.java:6697:42:6697:43 | in : CircularFifoQueue [] : String | Test.java:6697:10:6697:50 | predicatedQueue(...) : PredicatedQueue [] : String | provenance | MaD:422 | +| Test.java:6698:20:6698:22 | out : PredicatedQueue [] : String | Test.java:230:19:230:32 | it : PredicatedQueue [] : String | provenance | | +| Test.java:6698:20:6698:22 | out : PredicatedQueue [] : String | Test.java:6698:9:6698:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6703:15:6703:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:6704:46:6704:47 | in : CircularFifoQueue [] : String | provenance | | +| Test.java:6703:47:6703:62 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | +| Test.java:6703:47:6703:62 | (...)... : String | Test.java:6703:15:6703:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | +| Test.java:6703:55:6703:62 | source(...) : Object | Test.java:6703:47:6703:62 | (...)... : String | provenance | | +| Test.java:6704:10:6704:48 | synchronizedQueue(...) : SynchronizedQueue [] : String | Test.java:6705:20:6705:22 | out : SynchronizedQueue [] : String | provenance | | +| Test.java:6704:46:6704:47 | in : CircularFifoQueue [] : String | Test.java:6704:10:6704:48 | synchronizedQueue(...) : SynchronizedQueue [] : String | provenance | MaD:423 | +| Test.java:6705:20:6705:22 | out : SynchronizedQueue [] : String | Test.java:230:19:230:32 | it : SynchronizedQueue [] : String | provenance | | +| Test.java:6705:20:6705:22 | out : SynchronizedQueue [] : String | Test.java:6705:9:6705:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6710:15:6710:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:6711:45:6711:46 | in : CircularFifoQueue [] : String | provenance | | +| Test.java:6710:47:6710:62 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | +| Test.java:6710:47:6710:62 | (...)... : String | Test.java:6710:15:6710:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | +| Test.java:6710:55:6710:62 | source(...) : Object | Test.java:6710:47:6710:62 | (...)... : String | provenance | | +| Test.java:6711:10:6711:53 | transformingQueue(...) : TransformedQueue [] : String | Test.java:6712:20:6712:22 | out : TransformedQueue [] : String | provenance | | +| Test.java:6711:45:6711:46 | in : CircularFifoQueue [] : String | Test.java:6711:10:6711:53 | transformingQueue(...) : TransformedQueue [] : String | provenance | MaD:424 | +| Test.java:6712:20:6712:22 | out : TransformedQueue [] : String | Test.java:230:19:230:32 | it : TransformedQueue [] : String | provenance | | +| Test.java:6712:20:6712:22 | out : TransformedQueue [] : String | Test.java:6712:9:6712:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6717:15:6717:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | Test.java:6718:46:6718:47 | in : CircularFifoQueue [] : String | provenance | | +| Test.java:6717:47:6717:62 | (...)... : String | Test.java:253:59:253:67 | element : String | provenance | | +| Test.java:6717:47:6717:62 | (...)... : String | Test.java:6717:15:6717:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | provenance | MaD:4 | +| Test.java:6717:55:6717:62 | source(...) : Object | Test.java:6717:47:6717:62 | (...)... : String | provenance | | +| Test.java:6718:10:6718:48 | unmodifiableQueue(...) : Queue [] : String | Test.java:6719:20:6719:22 | out : Queue [] : String | provenance | | +| Test.java:6718:46:6718:47 | in : CircularFifoQueue [] : String | Test.java:6718:10:6718:48 | unmodifiableQueue(...) : Queue [] : String | provenance | MaD:425 | +| Test.java:6719:20:6719:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | provenance | | +| Test.java:6719:20:6719:22 | out : Queue [] : String | Test.java:6719:9:6719:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6724:22:6724:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6725:46:6725:47 | in : TreeSet [] : String | provenance | | +| Test.java:6724:44:6724:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:6724:44:6724:59 | (...)... : String | Test.java:6724:22:6724:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:6724:52:6724:59 | source(...) : Object | Test.java:6724:44:6724:59 | (...)... : String | provenance | | +| Test.java:6725:10:6725:48 | new MyAbstractNavigableSetDecorator<>(...) : MyAbstractNavigableSetDecorator [] : String | Test.java:6726:20:6726:22 | out : MyAbstractNavigableSetDecorator [] : String | provenance | | +| Test.java:6725:46:6725:47 | in : TreeSet [] : String | Test.java:6725:10:6725:48 | new MyAbstractNavigableSetDecorator<>(...) : MyAbstractNavigableSetDecorator [] : String | provenance | MaD:426 | +| Test.java:6725:46:6725:47 | in : TreeSet [] : String | Test.java:7237:42:7237:66 | set : TreeSet [] : String | provenance | | +| Test.java:6726:20:6726:22 | out : MyAbstractNavigableSetDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractNavigableSetDecorator [] : String | provenance | | +| Test.java:6726:20:6726:22 | out : MyAbstractNavigableSetDecorator [] : String | Test.java:6726:9:6726:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6731:13:6731:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6732:37:6732:38 | in : ListOrderedSet [] : String | provenance | | +| Test.java:6731:42:6731:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6731:42:6731:57 | (...)... : String | Test.java:6731:13:6731:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6731:50:6731:57 | source(...) : Object | Test.java:6731:42:6731:57 | (...)... : String | provenance | | +| Test.java:6732:10:6732:39 | new MyAbstractSetDecorator<>(...) : MyAbstractSetDecorator [] : String | Test.java:6733:20:6733:22 | out : MyAbstractSetDecorator [] : String | provenance | | +| Test.java:6732:37:6732:38 | in : ListOrderedSet [] : String | Test.java:6732:10:6732:39 | new MyAbstractSetDecorator<>(...) : MyAbstractSetDecorator [] : String | provenance | MaD:427 | +| Test.java:6732:37:6732:38 | in : ListOrderedSet [] : String | Test.java:7243:33:7243:48 | set : ListOrderedSet [] : String | provenance | | +| Test.java:6733:20:6733:22 | out : MyAbstractSetDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSetDecorator [] : String | provenance | | +| Test.java:6733:20:6733:22 | out : MyAbstractSetDecorator [] : String | Test.java:6733:9:6733:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6738:13:6738:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6739:43:6739:44 | in : ListOrderedSet [] : String | provenance | | +| Test.java:6738:42:6738:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6738:42:6738:57 | (...)... : String | Test.java:6738:13:6738:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6738:50:6738:57 | source(...) : Object | Test.java:6738:42:6738:57 | (...)... : String | provenance | | +| Test.java:6739:10:6739:45 | new MyAbstractSortedSetDecorator<>(...) : MyAbstractSortedSetDecorator [] : String | Test.java:6740:20:6740:22 | out : MyAbstractSortedSetDecorator [] : String | provenance | | +| Test.java:6739:43:6739:44 | in : ListOrderedSet [] : String | Test.java:6739:10:6739:45 | new MyAbstractSortedSetDecorator<>(...) : MyAbstractSortedSetDecorator [] : String | provenance | MaD:428 | +| Test.java:6739:43:6739:44 | in : ListOrderedSet [] : String | Test.java:7249:39:7249:54 | set : ListOrderedSet [] : String | provenance | | +| Test.java:6740:20:6740:22 | out : MyAbstractSortedSetDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSortedSetDecorator [] : String | provenance | | +| Test.java:6740:20:6740:22 | out : MyAbstractSortedSetDecorator [] : String | Test.java:6740:9:6740:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6745:16:6745:23 | source(...) : Object | Test.java:6747:28:6747:29 | in : Object | provenance | | +| Test.java:6747:17:6747:19 | out [post update] : CompositeSet [] : Object | Test.java:6748:20:6748:22 | out : CompositeSet [] : Object | provenance | | +| Test.java:6747:28:6747:29 | in : Object | Test.java:6747:17:6747:19 | out [post update] : CompositeSet [] : Object | provenance | MaD:429 | +| Test.java:6748:20:6748:22 | out : CompositeSet [] : Object | Test.java:230:19:230:32 | it : CompositeSet [] : Object | provenance | | +| Test.java:6748:20:6748:22 | out : CompositeSet [] : Object | Test.java:6748:9:6748:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6753:16:6753:23 | source(...) : Object | Test.java:6755:28:6755:29 | in : Object | provenance | | +| Test.java:6755:23:6755:25 | out [post update] : List [, ] : Object | Test.java:6756:31:6756:33 | out : List [, ] : Object | provenance | | +| Test.java:6755:28:6755:29 | in : Object | Test.java:6755:23:6755:25 | out [post update] : List [, ] : Object | provenance | MaD:430 | +| Test.java:6756:20:6756:34 | getElement(...) : Set [] : Object | Test.java:230:19:230:32 | it : Set [] : Object | provenance | | +| Test.java:6756:20:6756:34 | getElement(...) : Set [] : Object | Test.java:6756:9:6756:35 | getElement(...) | provenance | MaD:3 | +| Test.java:6756:31:6756:33 | out : List [, ] : Object | Test.java:230:19:230:32 | it : List [, ] : Object | provenance | | +| Test.java:6756:31:6756:33 | out : List [, ] : Object | Test.java:6756:20:6756:34 | getElement(...) : Set [] : Object | provenance | MaD:3 | +| Test.java:6761:20:6761:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:6763:31:6763:32 | in : TreeBag [] : String | provenance | | +| Test.java:6761:42:6761:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:6761:42:6761:57 | (...)... : String | Test.java:6761:20:6761:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:6761:42:6761:57 | (...)... : String | Test.java:6761:20:6761:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:6761:50:6761:57 | source(...) : Object | Test.java:6761:42:6761:57 | (...)... : String | provenance | | +| Test.java:6763:20:6763:22 | out [post update] : CompositeSet [] : String | Test.java:6764:20:6764:22 | out : CompositeSet [] : String | provenance | | +| Test.java:6763:31:6763:32 | in : TreeBag [] : String | Test.java:6763:20:6763:22 | out [post update] : CompositeSet [] : String | provenance | MaD:431 | +| Test.java:6764:20:6764:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | +| Test.java:6764:20:6764:22 | out : CompositeSet [] : String | Test.java:6764:9:6764:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6769:20:6769:58 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:6771:31:6771:32 | in : TreeBag [] : String | provenance | | +| Test.java:6769:42:6769:57 | (...)... : String | Test.java:267:39:267:47 | element : String | provenance | | +| Test.java:6769:42:6769:57 | (...)... : String | Test.java:6769:20:6769:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:4 | +| Test.java:6769:42:6769:57 | (...)... : String | Test.java:6769:20:6769:58 | newTreeBagWithElement(...) : TreeBag [] : String | provenance | MaD:474 | +| Test.java:6769:50:6769:57 | source(...) : Object | Test.java:6769:42:6769:57 | (...)... : String | provenance | | +| Test.java:6771:26:6771:28 | out [post update] : List [, ] : String | Test.java:6772:31:6772:33 | out : List [, ] : String | provenance | | +| Test.java:6771:31:6771:32 | in : TreeBag [] : String | Test.java:6771:26:6771:28 | out [post update] : List [, ] : String | provenance | MaD:432 | +| Test.java:6772:20:6772:34 | getElement(...) : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:6772:20:6772:34 | getElement(...) : Set [] : String | Test.java:6772:9:6772:35 | getElement(...) | provenance | MaD:3 | +| Test.java:6772:31:6772:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | provenance | | +| Test.java:6772:31:6772:33 | out : List [, ] : String | Test.java:6772:20:6772:34 | getElement(...) : Set [] : String | provenance | MaD:3 | +| Test.java:6777:13:6777:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6778:27:6778:28 | in : ListOrderedSet [] : String | provenance | | +| Test.java:6777:42:6777:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6777:42:6777:57 | (...)... : String | Test.java:6777:13:6777:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6777:50:6777:57 | source(...) : Object | Test.java:6777:42:6777:57 | (...)... : String | provenance | | +| Test.java:6778:10:6778:29 | new CompositeSet<>(...) : CompositeSet [] : String | Test.java:6779:20:6779:22 | out : CompositeSet [] : String | provenance | | +| Test.java:6778:27:6778:28 | in : ListOrderedSet [] : String | Test.java:6778:10:6778:29 | new CompositeSet<>(...) : CompositeSet [] : String | provenance | MaD:433 | +| Test.java:6779:20:6779:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | +| Test.java:6779:20:6779:22 | out : CompositeSet [] : String | Test.java:6779:9:6779:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6784:15:6784:71 | {...} : Set[] [[], ] : String | Test.java:6785:27:6785:28 | in : Set[] [[], ] : String | provenance | | +| Test.java:6784:25:6784:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6784:15:6784:71 | {...} : Set[] [[], ] : String | provenance | | +| Test.java:6784:54:6784:69 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6784:54:6784:69 | (...)... : String | Test.java:6784:25:6784:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6784:62:6784:69 | source(...) : Object | Test.java:6784:54:6784:69 | (...)... : String | provenance | | +| Test.java:6785:10:6785:29 | new CompositeSet<>(...) : CompositeSet [] : String | Test.java:6786:20:6786:22 | out : CompositeSet [] : String | provenance | | +| Test.java:6785:27:6785:28 | in : Set[] [[], ] : String | Test.java:6785:10:6785:29 | new CompositeSet<>(...) : CompositeSet [] : String | provenance | MaD:434 | +| Test.java:6786:20:6786:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | +| Test.java:6786:20:6786:22 | out : CompositeSet [] : String | Test.java:6786:9:6786:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6791:13:6791:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6792:22:6792:23 | in : ListOrderedSet [] : String | provenance | | +| Test.java:6791:42:6791:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6791:42:6791:57 | (...)... : String | Test.java:6791:13:6791:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6791:50:6791:57 | source(...) : Object | Test.java:6791:42:6791:57 | (...)... : String | provenance | | +| Test.java:6792:4:6792:6 | out [post update] : CompositeSet [] : String | Test.java:6793:20:6793:22 | out : CompositeSet [] : String | provenance | | +| Test.java:6792:22:6792:23 | in : ListOrderedSet [] : String | Test.java:6792:4:6792:6 | out [post update] : CompositeSet [] : String | provenance | MaD:435 | +| Test.java:6793:20:6793:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | +| Test.java:6793:20:6793:22 | out : CompositeSet [] : String | Test.java:6793:9:6793:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6798:13:6798:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6799:22:6799:23 | in : ListOrderedSet [] : String | provenance | | +| Test.java:6798:42:6798:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6798:42:6798:57 | (...)... : String | Test.java:6798:13:6798:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6798:50:6798:57 | source(...) : Object | Test.java:6798:42:6798:57 | (...)... : String | provenance | | +| Test.java:6799:4:6799:6 | out [post update] : CompositeSet [] : String | Test.java:6800:20:6800:22 | out : CompositeSet [] : String | provenance | | +| Test.java:6799:22:6799:23 | in : ListOrderedSet [] : String | Test.java:6799:4:6799:6 | out [post update] : CompositeSet [] : String | provenance | MaD:436 | +| Test.java:6800:20:6800:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | +| Test.java:6800:20:6800:22 | out : CompositeSet [] : String | Test.java:6800:9:6800:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6805:13:6805:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6806:28:6806:29 | in : ListOrderedSet [] : String | provenance | | +| Test.java:6805:42:6805:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6805:42:6805:57 | (...)... : String | Test.java:6805:13:6805:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6805:50:6805:57 | source(...) : Object | Test.java:6805:42:6805:57 | (...)... : String | provenance | | +| Test.java:6806:4:6806:6 | out [post update] : CompositeSet [] : String | Test.java:6807:20:6807:22 | out : CompositeSet [] : String | provenance | | +| Test.java:6806:28:6806:29 | in : ListOrderedSet [] : String | Test.java:6806:4:6806:6 | out [post update] : CompositeSet [] : String | provenance | MaD:437 | +| Test.java:6807:20:6807:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | +| Test.java:6807:20:6807:22 | out : CompositeSet [] : String | Test.java:6807:9:6807:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6812:15:6812:71 | {...} : Set[] [[], ] : String | Test.java:6813:22:6813:23 | in : Set[] [[], ] : String | provenance | | +| Test.java:6812:25:6812:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6812:15:6812:71 | {...} : Set[] [[], ] : String | provenance | | +| Test.java:6812:54:6812:69 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6812:54:6812:69 | (...)... : String | Test.java:6812:25:6812:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6812:62:6812:69 | source(...) : Object | Test.java:6812:54:6812:69 | (...)... : String | provenance | | +| Test.java:6813:4:6813:6 | out [post update] : CompositeSet [] : String | Test.java:6814:20:6814:22 | out : CompositeSet [] : String | provenance | | +| Test.java:6813:22:6813:23 | in : Set[] [[], ] : String | Test.java:6813:4:6813:6 | out [post update] : CompositeSet [] : String | provenance | MaD:438 | +| Test.java:6814:20:6814:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | provenance | | +| Test.java:6814:20:6814:22 | out : CompositeSet [] : String | Test.java:6814:9:6814:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6819:30:6819:73 | newCompositeSetWithElement(...) : CompositeSet [] : String | Test.java:6820:10:6820:11 | in : CompositeSet [] : String | provenance | | +| Test.java:6819:57:6819:72 | (...)... : String | Test.java:254:49:254:57 | element : String | provenance | | +| Test.java:6819:57:6819:72 | (...)... : String | Test.java:6819:30:6819:73 | newCompositeSetWithElement(...) : CompositeSet [] : String | provenance | MaD:441 | +| Test.java:6819:65:6819:72 | source(...) : Object | Test.java:6819:57:6819:72 | (...)... : String | provenance | | +| Test.java:6820:10:6820:11 | in : CompositeSet [] : String | Test.java:6820:10:6820:21 | getSets(...) : List [, ] : String | provenance | MaD:439 | +| Test.java:6820:10:6820:21 | getSets(...) : List [, ] : String | Test.java:6821:31:6821:33 | out : List [, ] : String | provenance | | +| Test.java:6821:20:6821:34 | getElement(...) : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:6821:20:6821:34 | getElement(...) : Set [] : String | Test.java:6821:9:6821:35 | getElement(...) | provenance | MaD:3 | +| Test.java:6821:31:6821:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | provenance | | +| Test.java:6821:31:6821:33 | out : List [, ] : String | Test.java:6821:20:6821:34 | getElement(...) : Set [] : String | provenance | MaD:3 | +| Test.java:6826:22:6826:65 | newCompositeSetWithElement(...) : CompositeSet [] : String | Test.java:6827:10:6827:11 | in : CompositeSet [] : String | provenance | | +| Test.java:6826:49:6826:64 | (...)... : String | Test.java:254:49:254:57 | element : String | provenance | | +| Test.java:6826:49:6826:64 | (...)... : String | Test.java:6826:22:6826:65 | newCompositeSetWithElement(...) : CompositeSet [] : String | provenance | MaD:441 | +| Test.java:6826:57:6826:64 | source(...) : Object | Test.java:6826:49:6826:64 | (...)... : String | provenance | | +| Test.java:6827:10:6827:11 | in : CompositeSet [] : String | Test.java:6827:10:6827:19 | toSet(...) : Set [] : String | provenance | MaD:440 | +| Test.java:6827:10:6827:19 | toSet(...) : Set [] : String | Test.java:6828:20:6828:22 | out : Set [] : String | provenance | | +| Test.java:6828:20:6828:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:6828:20:6828:22 | out : Set [] : String | Test.java:6828:9:6828:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6833:16:6833:23 | source(...) : Object | Test.java:6834:15:6834:16 | in : Object | provenance | | +| Test.java:6834:4:6834:6 | out [post update] : ListOrderedSet [] : Object | Test.java:6835:20:6835:22 | out : ListOrderedSet [] : Object | provenance | | +| Test.java:6834:15:6834:16 | in : Object | Test.java:6834:4:6834:6 | out [post update] : ListOrderedSet [] : Object | provenance | MaD:442 | +| Test.java:6835:20:6835:22 | out : ListOrderedSet [] : Object | Test.java:230:19:230:32 | it : ListOrderedSet [] : Object | provenance | | +| Test.java:6835:20:6835:22 | out : ListOrderedSet [] : Object | Test.java:6835:9:6835:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6840:20:6840:44 | of(...) : List [] : String | Test.java:6841:18:6841:19 | in : List [] : String | provenance | | +| Test.java:6840:28:6840:43 | (...)... : String | Test.java:6840:20:6840:44 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:6840:36:6840:43 | source(...) : Object | Test.java:6840:28:6840:43 | (...)... : String | provenance | | +| Test.java:6841:4:6841:6 | out [post update] : ListOrderedSet [] : String | Test.java:6842:20:6842:22 | out : ListOrderedSet [] : String | provenance | | +| Test.java:6841:18:6841:19 | in : List [] : String | Test.java:6841:4:6841:6 | out [post update] : ListOrderedSet [] : String | provenance | MaD:443 | +| Test.java:6842:20:6842:22 | out : ListOrderedSet [] : String | Test.java:230:19:230:32 | it : ListOrderedSet [] : String | provenance | | +| Test.java:6842:20:6842:22 | out : ListOrderedSet [] : String | Test.java:6842:9:6842:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6847:24:6847:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6848:10:6848:11 | in : ListOrderedSet [] : String | provenance | | +| Test.java:6847:53:6847:68 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6847:53:6847:68 | (...)... : String | Test.java:6847:24:6847:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6847:61:6847:68 | source(...) : Object | Test.java:6847:53:6847:68 | (...)... : String | provenance | | +| Test.java:6848:10:6848:11 | in : ListOrderedSet [] : String | Test.java:6848:10:6848:20 | asList(...) : List [] : String | provenance | MaD:444 | +| Test.java:6848:10:6848:20 | asList(...) : List [] : String | Test.java:6849:20:6849:22 | out : List [] : String | provenance | | +| Test.java:6849:20:6849:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | provenance | | +| Test.java:6849:20:6849:22 | out : List [] : String | Test.java:6849:9:6849:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6854:24:6854:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6855:10:6855:11 | in : ListOrderedSet [] : String | provenance | | +| Test.java:6854:53:6854:68 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6854:53:6854:68 | (...)... : String | Test.java:6854:24:6854:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6854:61:6854:68 | source(...) : Object | Test.java:6854:53:6854:68 | (...)... : String | provenance | | +| Test.java:6855:10:6855:11 | in : ListOrderedSet [] : String | Test.java:6855:10:6855:18 | get(...) : String | provenance | MaD:445 | +| Test.java:6855:10:6855:18 | get(...) : String | Test.java:6856:9:6856:11 | out | provenance | | +| Test.java:6861:14:6861:38 | of(...) : List [] : String | Test.java:6862:40:6862:41 | in : List [] : String | provenance | | +| Test.java:6861:22:6861:37 | (...)... : String | Test.java:6861:14:6861:38 | of(...) : List [] : String | provenance | MaD:8 | +| Test.java:6861:30:6861:37 | source(...) : Object | Test.java:6861:22:6861:37 | (...)... : String | provenance | | +| Test.java:6862:10:6862:42 | listOrderedSet(...) : ListOrderedSet [] : String | Test.java:6863:20:6863:22 | out : ListOrderedSet [] : String | provenance | | +| Test.java:6862:40:6862:41 | in : List [] : String | Test.java:6862:10:6862:42 | listOrderedSet(...) : ListOrderedSet [] : String | provenance | MaD:446 | +| Test.java:6863:20:6863:22 | out : ListOrderedSet [] : String | Test.java:230:19:230:32 | it : ListOrderedSet [] : String | provenance | | +| Test.java:6863:20:6863:22 | out : ListOrderedSet [] : String | Test.java:6863:9:6863:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6868:13:6868:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6869:40:6869:41 | in : ListOrderedSet [] : String | provenance | | +| Test.java:6868:42:6868:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6868:42:6868:57 | (...)... : String | Test.java:6868:13:6868:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6868:50:6868:57 | source(...) : Object | Test.java:6868:42:6868:57 | (...)... : String | provenance | | +| Test.java:6869:10:6869:42 | listOrderedSet(...) : ListOrderedSet [] : String | Test.java:6870:20:6870:22 | out : ListOrderedSet [] : String | provenance | | +| Test.java:6869:40:6869:41 | in : ListOrderedSet [] : String | Test.java:6869:10:6869:42 | listOrderedSet(...) : ListOrderedSet [] : String | provenance | MaD:447 | +| Test.java:6870:20:6870:22 | out : ListOrderedSet [] : String | Test.java:230:19:230:32 | it : ListOrderedSet [] : String | provenance | | +| Test.java:6870:20:6870:22 | out : ListOrderedSet [] : String | Test.java:6870:9:6870:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6875:13:6875:42 | of(...) : Map [] : String | Test.java:6876:36:6876:37 | in : Map [] : String | provenance | | +| Test.java:6875:20:6875:35 | (...)... : String | Test.java:6875:13:6875:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6875:28:6875:35 | source(...) : Object | Test.java:6875:20:6875:35 | (...)... : String | provenance | | +| Test.java:6876:10:6876:44 | mapBackedSet(...) : MapBackedSet [] : String | Test.java:6877:20:6877:22 | out : MapBackedSet [] : String | provenance | | +| Test.java:6876:36:6876:37 | in : Map [] : String | Test.java:6876:10:6876:44 | mapBackedSet(...) : MapBackedSet [] : String | provenance | MaD:448 | +| Test.java:6877:20:6877:22 | out : MapBackedSet [] : String | Test.java:230:19:230:32 | it : MapBackedSet [] : String | provenance | | +| Test.java:6877:20:6877:22 | out : MapBackedSet [] : String | Test.java:6877:9:6877:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6882:13:6882:42 | of(...) : Map [] : String | Test.java:6883:36:6883:37 | in : Map [] : String | provenance | | +| Test.java:6882:20:6882:35 | (...)... : String | Test.java:6882:13:6882:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6882:28:6882:35 | source(...) : Object | Test.java:6882:20:6882:35 | (...)... : String | provenance | | +| Test.java:6883:10:6883:38 | mapBackedSet(...) : MapBackedSet [] : String | Test.java:6884:20:6884:22 | out : MapBackedSet [] : String | provenance | | +| Test.java:6883:36:6883:37 | in : Map [] : String | Test.java:6883:10:6883:38 | mapBackedSet(...) : MapBackedSet [] : String | provenance | MaD:448 | +| Test.java:6884:20:6884:22 | out : MapBackedSet [] : String | Test.java:230:19:230:32 | it : MapBackedSet [] : String | provenance | | +| Test.java:6884:20:6884:22 | out : MapBackedSet [] : String | Test.java:6884:9:6884:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6889:22:6889:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6890:56:6890:57 | in : TreeSet [] : String | provenance | | +| Test.java:6889:44:6889:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:6889:44:6889:59 | (...)... : String | Test.java:6889:22:6889:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:6889:52:6889:59 | source(...) : Object | Test.java:6889:44:6889:59 | (...)... : String | provenance | | +| Test.java:6890:10:6890:64 | predicatedNavigableSet(...) : PredicatedNavigableSet [] : String | Test.java:6891:20:6891:22 | out : PredicatedNavigableSet [] : String | provenance | | +| Test.java:6890:56:6890:57 | in : TreeSet [] : String | Test.java:6890:10:6890:64 | predicatedNavigableSet(...) : PredicatedNavigableSet [] : String | provenance | MaD:449 | +| Test.java:6891:20:6891:22 | out : PredicatedNavigableSet [] : String | Test.java:230:19:230:32 | it : PredicatedNavigableSet [] : String | provenance | | +| Test.java:6891:20:6891:22 | out : PredicatedNavigableSet [] : String | Test.java:6891:9:6891:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6896:13:6896:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6897:38:6897:39 | in : ListOrderedSet [] : String | provenance | | +| Test.java:6896:42:6896:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6896:42:6896:57 | (...)... : String | Test.java:6896:13:6896:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6896:50:6896:57 | source(...) : Object | Test.java:6896:42:6896:57 | (...)... : String | provenance | | +| Test.java:6897:10:6897:46 | predicatedSet(...) : PredicatedSet [] : String | Test.java:6898:20:6898:22 | out : PredicatedSet [] : String | provenance | | +| Test.java:6897:38:6897:39 | in : ListOrderedSet [] : String | Test.java:6897:10:6897:46 | predicatedSet(...) : PredicatedSet [] : String | provenance | MaD:450 | +| Test.java:6898:20:6898:22 | out : PredicatedSet [] : String | Test.java:230:19:230:32 | it : PredicatedSet [] : String | provenance | | +| Test.java:6898:20:6898:22 | out : PredicatedSet [] : String | Test.java:6898:9:6898:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6903:19:6903:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6904:50:6904:51 | in : TreeSet [] : String | provenance | | +| Test.java:6903:41:6903:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:6903:41:6903:56 | (...)... : String | Test.java:6903:19:6903:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:6903:49:6903:56 | source(...) : Object | Test.java:6903:41:6903:56 | (...)... : String | provenance | | +| Test.java:6904:10:6904:58 | predicatedSortedSet(...) : PredicatedSortedSet [] : String | Test.java:6905:20:6905:22 | out : PredicatedSortedSet [] : String | provenance | | +| Test.java:6904:50:6904:51 | in : TreeSet [] : String | Test.java:6904:10:6904:58 | predicatedSortedSet(...) : PredicatedSortedSet [] : String | provenance | MaD:451 | +| Test.java:6905:20:6905:22 | out : PredicatedSortedSet [] : String | Test.java:230:19:230:32 | it : PredicatedSortedSet [] : String | provenance | | +| Test.java:6905:20:6905:22 | out : PredicatedSortedSet [] : String | Test.java:6905:9:6905:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6910:22:6910:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6911:59:6911:60 | in : TreeSet [] : String | provenance | | +| Test.java:6910:44:6910:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:6910:44:6910:59 | (...)... : String | Test.java:6910:22:6910:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:6910:52:6910:59 | source(...) : Object | Test.java:6910:44:6910:59 | (...)... : String | provenance | | +| Test.java:6911:10:6911:67 | transformingNavigableSet(...) : TransformedNavigableSet [] : String | Test.java:6912:20:6912:22 | out : TransformedNavigableSet [] : String | provenance | | +| Test.java:6911:59:6911:60 | in : TreeSet [] : String | Test.java:6911:10:6911:67 | transformingNavigableSet(...) : TransformedNavigableSet [] : String | provenance | MaD:452 | +| Test.java:6912:20:6912:22 | out : TransformedNavigableSet [] : String | Test.java:230:19:230:32 | it : TransformedNavigableSet [] : String | provenance | | +| Test.java:6912:20:6912:22 | out : TransformedNavigableSet [] : String | Test.java:6912:9:6912:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6917:13:6917:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6918:41:6918:42 | in : ListOrderedSet [] : String | provenance | | +| Test.java:6917:42:6917:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6917:42:6917:57 | (...)... : String | Test.java:6917:13:6917:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6917:50:6917:57 | source(...) : Object | Test.java:6917:42:6917:57 | (...)... : String | provenance | | +| Test.java:6918:10:6918:49 | transformingSet(...) : TransformedSet [] : String | Test.java:6919:20:6919:22 | out : TransformedSet [] : String | provenance | | +| Test.java:6918:41:6918:42 | in : ListOrderedSet [] : String | Test.java:6918:10:6918:49 | transformingSet(...) : TransformedSet [] : String | provenance | MaD:453 | +| Test.java:6919:20:6919:22 | out : TransformedSet [] : String | Test.java:230:19:230:32 | it : TransformedSet [] : String | provenance | | +| Test.java:6919:20:6919:22 | out : TransformedSet [] : String | Test.java:6919:9:6919:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6924:19:6924:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6925:53:6925:54 | in : TreeSet [] : String | provenance | | +| Test.java:6924:41:6924:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:6924:41:6924:56 | (...)... : String | Test.java:6924:19:6924:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:6924:49:6924:56 | source(...) : Object | Test.java:6924:41:6924:56 | (...)... : String | provenance | | +| Test.java:6925:10:6925:61 | transformingSortedSet(...) : TransformedSortedSet [] : String | Test.java:6926:20:6926:22 | out : TransformedSortedSet [] : String | provenance | | +| Test.java:6925:53:6925:54 | in : TreeSet [] : String | Test.java:6925:10:6925:61 | transformingSortedSet(...) : TransformedSortedSet [] : String | provenance | MaD:454 | +| Test.java:6926:20:6926:22 | out : TransformedSortedSet [] : String | Test.java:230:19:230:32 | it : TransformedSortedSet [] : String | provenance | | +| Test.java:6926:20:6926:22 | out : TransformedSortedSet [] : String | Test.java:6926:9:6926:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6931:22:6931:60 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6932:60:6932:61 | in : TreeSet [] : String | provenance | | +| Test.java:6931:44:6931:59 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:6931:44:6931:59 | (...)... : String | Test.java:6931:22:6931:60 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:6931:52:6931:59 | source(...) : Object | Test.java:6931:44:6931:59 | (...)... : String | provenance | | +| Test.java:6932:10:6932:62 | unmodifiableNavigableSet(...) : NavigableSet [] : String | Test.java:6933:20:6933:22 | out : NavigableSet [] : String | provenance | | +| Test.java:6932:60:6932:61 | in : TreeSet [] : String | Test.java:6932:10:6932:62 | unmodifiableNavigableSet(...) : NavigableSet [] : String | provenance | MaD:455 | +| Test.java:6933:20:6933:22 | out : NavigableSet [] : String | Test.java:230:19:230:32 | it : NavigableSet [] : String | provenance | | +| Test.java:6933:20:6933:22 | out : NavigableSet [] : String | Test.java:6933:9:6933:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6938:13:6938:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | Test.java:6939:42:6939:43 | in : ListOrderedSet [] : String | provenance | | +| Test.java:6938:42:6938:57 | (...)... : String | Test.java:260:53:260:61 | element : String | provenance | | +| Test.java:6938:42:6938:57 | (...)... : String | Test.java:6938:13:6938:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | provenance | MaD:441 | +| Test.java:6938:50:6938:57 | source(...) : Object | Test.java:6938:42:6938:57 | (...)... : String | provenance | | +| Test.java:6939:10:6939:44 | unmodifiableSet(...) : Set [] : String | Test.java:6940:20:6940:22 | out : Set [] : String | provenance | | +| Test.java:6939:42:6939:43 | in : ListOrderedSet [] : String | Test.java:6939:10:6939:44 | unmodifiableSet(...) : Set [] : String | provenance | MaD:456 | +| Test.java:6940:20:6940:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | provenance | | +| Test.java:6940:20:6940:22 | out : Set [] : String | Test.java:6940:9:6940:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6945:19:6945:57 | newTreeSetWithElement(...) : TreeSet [] : String | Test.java:6946:54:6946:55 | in : TreeSet [] : String | provenance | | +| Test.java:6945:41:6945:56 | (...)... : String | Test.java:268:39:268:47 | element : String | provenance | | +| Test.java:6945:41:6945:56 | (...)... : String | Test.java:6945:19:6945:57 | newTreeSetWithElement(...) : TreeSet [] : String | provenance | MaD:4 | +| Test.java:6945:49:6945:56 | source(...) : Object | Test.java:6945:41:6945:56 | (...)... : String | provenance | | +| Test.java:6946:10:6946:56 | unmodifiableSortedSet(...) : SortedSet [] : String | Test.java:6947:20:6947:22 | out : SortedSet [] : String | provenance | | +| Test.java:6946:54:6946:55 | in : TreeSet [] : String | Test.java:6946:10:6946:56 | unmodifiableSortedSet(...) : SortedSet [] : String | provenance | MaD:457 | +| Test.java:6947:20:6947:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | provenance | | +| Test.java:6947:20:6947:22 | out : SortedSet [] : String | Test.java:6947:9:6947:23 | getElement(...) | provenance | MaD:3 | +| Test.java:6952:13:6952:42 | of(...) : Map [] : String | Test.java:6953:46:6953:47 | in : Map [] : String | provenance | | +| Test.java:6952:20:6952:35 | (...)... : String | Test.java:6952:13:6952:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6952:28:6952:35 | source(...) : Object | Test.java:6952:20:6952:35 | (...)... : String | provenance | | +| Test.java:6953:10:6953:48 | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | Test.java:6954:26:6954:28 | out : AbstractIterableGetMapDecorator [] : String | provenance | | +| Test.java:6953:46:6953:47 | in : Map [] : String | Test.java:6953:10:6953:48 | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | provenance | MaD:458 | +| Test.java:6954:26:6954:28 | out : AbstractIterableGetMapDecorator [] : String | Test.java:241:25:241:42 | container : AbstractIterableGetMapDecorator [] : String | provenance | | +| Test.java:6954:26:6954:28 | out : AbstractIterableGetMapDecorator [] : String | Test.java:6954:9:6954:29 | getMapKeyFromGet(...) | provenance | MaD:563 | +| Test.java:6959:13:6959:42 | of(...) : Map [] : String | Test.java:6960:46:6960:47 | in : Map [] : String | provenance | | +| Test.java:6959:26:6959:41 | (...)... : String | Test.java:6959:13:6959:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6959:34:6959:41 | source(...) : Object | Test.java:6959:26:6959:41 | (...)... : String | provenance | | +| Test.java:6960:10:6960:48 | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | Test.java:6961:28:6961:30 | out : AbstractIterableGetMapDecorator [] : String | provenance | | +| Test.java:6960:46:6960:47 | in : Map [] : String | Test.java:6960:10:6960:48 | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | provenance | MaD:459 | +| Test.java:6961:28:6961:30 | out : AbstractIterableGetMapDecorator [] : String | Test.java:248:27:248:44 | container : AbstractIterableGetMapDecorator [] : String | provenance | | +| Test.java:6961:28:6961:30 | out : AbstractIterableGetMapDecorator [] : String | Test.java:6961:9:6961:31 | getMapValueFromGet(...) | provenance | MaD:562 | +| Test.java:6966:13:6966:42 | of(...) : Map [] : String | Test.java:6967:46:6967:47 | in : Map [] : String | provenance | | +| Test.java:6966:20:6966:35 | (...)... : String | Test.java:6966:13:6966:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6966:28:6966:35 | source(...) : Object | Test.java:6966:20:6966:35 | (...)... : String | provenance | | +| Test.java:6967:10:6967:60 | transformingMap(...) : TransformedSplitMap [] : String | Test.java:6968:26:6968:28 | out : TransformedSplitMap [] : String | provenance | | +| Test.java:6967:46:6967:47 | in : Map [] : String | Test.java:6967:10:6967:60 | transformingMap(...) : TransformedSplitMap [] : String | provenance | MaD:460 | +| Test.java:6968:26:6968:28 | out : TransformedSplitMap [] : String | Test.java:241:25:241:42 | container : TransformedSplitMap [] : String | provenance | | +| Test.java:6968:26:6968:28 | out : TransformedSplitMap [] : String | Test.java:6968:9:6968:29 | getMapKeyFromGet(...) | provenance | MaD:563 | +| Test.java:6973:13:6973:42 | of(...) : Map [] : String | Test.java:6974:46:6974:47 | in : Map [] : String | provenance | | +| Test.java:6973:26:6973:41 | (...)... : String | Test.java:6973:13:6973:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6973:34:6973:41 | source(...) : Object | Test.java:6973:26:6973:41 | (...)... : String | provenance | | +| Test.java:6974:10:6974:60 | transformingMap(...) : TransformedSplitMap [] : String | Test.java:6975:28:6975:30 | out : TransformedSplitMap [] : String | provenance | | +| Test.java:6974:46:6974:47 | in : Map [] : String | Test.java:6974:10:6974:60 | transformingMap(...) : TransformedSplitMap [] : String | provenance | MaD:461 | +| Test.java:6975:28:6975:30 | out : TransformedSplitMap [] : String | Test.java:248:27:248:44 | container : TransformedSplitMap [] : String | provenance | | +| Test.java:6975:28:6975:30 | out : TransformedSplitMap [] : String | Test.java:6975:9:6975:31 | getMapValueFromGet(...) | provenance | MaD:562 | +| Test.java:6980:13:6980:42 | of(...) : Map [] : String | Test.java:6981:27:6981:28 | in : Map [] : String | provenance | | +| Test.java:6980:20:6980:35 | (...)... : String | Test.java:6980:13:6980:42 | of(...) : Map [] : String | provenance | MaD:14 | +| Test.java:6980:28:6980:35 | source(...) : Object | Test.java:6980:20:6980:35 | (...)... : String | provenance | | +| Test.java:6981:10:6981:29 | new PatriciaTrie<>(...) : PatriciaTrie [] : String | Test.java:6982:19:6982:21 | out : PatriciaTrie [] : String | provenance | | +| Test.java:6981:27:6981:28 | in : Map [] : String | Test.java:6981:10:6981:29 | new PatriciaTrie<>(...) : PatriciaTrie [] : String | provenance | MaD:466 | +| Test.java:6982:19:6982:21 | out : PatriciaTrie [] : String | Test.java:228:18:228:29 | map : PatriciaTrie [] : String | provenance | | +| Test.java:6982:19:6982:21 | out : PatriciaTrie [] : String | Test.java:6982:9:6982:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:6987:13:6987:42 | of(...) : Map [] : String | Test.java:6988:27:6988:28 | in : Map [] : String | provenance | | +| Test.java:6987:26:6987:41 | (...)... : String | Test.java:6987:13:6987:42 | of(...) : Map [] : String | provenance | MaD:15 | +| Test.java:6987:34:6987:41 | source(...) : Object | Test.java:6987:26:6987:41 | (...)... : String | provenance | | +| Test.java:6988:10:6988:29 | new PatriciaTrie<>(...) : PatriciaTrie [] : String | Test.java:6989:21:6989:23 | out : PatriciaTrie [] : String | provenance | | +| Test.java:6988:27:6988:28 | in : Map [] : String | Test.java:6988:10:6988:29 | new PatriciaTrie<>(...) : PatriciaTrie [] : String | provenance | MaD:467 | +| Test.java:6989:21:6989:23 | out : PatriciaTrie [] : String | Test.java:232:20:232:31 | map : PatriciaTrie [] : String | provenance | | +| Test.java:6989:21:6989:23 | out : PatriciaTrie [] : String | Test.java:6989:9:6989:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:6993:30:6993:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | Test.java:6995:10:6995:11 | in : PatriciaTrie [] : String | provenance | | +| Test.java:6993:56:6993:71 | (...)... : String | Test.java:288:49:288:58 | key : String | provenance | | +| Test.java:6993:56:6993:71 | (...)... : String | Test.java:6993:30:6993:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:20 | +| Test.java:6993:56:6993:71 | (...)... : String | Test.java:6993:30:6993:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:783 | +| Test.java:6993:64:6993:71 | source(...) : Object | Test.java:6993:56:6993:71 | (...)... : String | provenance | | +| Test.java:6995:10:6995:11 | in : PatriciaTrie [] : String | Test.java:6995:10:6995:24 | select(...) : Entry [] : String | provenance | MaD:462 | +| Test.java:6995:10:6995:24 | select(...) : Entry [] : String | Test.java:6996:28:6996:30 | out : Entry [] : String | provenance | | +| Test.java:6996:28:6996:30 | out : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | provenance | | +| Test.java:6996:28:6996:30 | out : Entry [] : String | Test.java:6996:9:6996:31 | getMapKeyFromEntry(...) | provenance | MaD:10 | +| Test.java:7000:30:7000:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:7002:10:7002:11 | in : PatriciaTrie [] : String | provenance | | +| Test.java:7000:58:7000:73 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | +| Test.java:7000:58:7000:73 | (...)... : String | Test.java:7000:30:7000:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:21 | +| Test.java:7000:58:7000:73 | (...)... : String | Test.java:7000:30:7000:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:784 | +| Test.java:7000:66:7000:73 | source(...) : Object | Test.java:7000:58:7000:73 | (...)... : String | provenance | | +| Test.java:7002:10:7002:11 | in : PatriciaTrie [] : String | Test.java:7002:10:7002:24 | select(...) : Entry [] : String | provenance | MaD:463 | +| Test.java:7002:10:7002:24 | select(...) : Entry [] : String | Test.java:7003:30:7003:32 | out : Entry [] : String | provenance | | +| Test.java:7003:30:7003:32 | out : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | provenance | | +| Test.java:7003:30:7003:32 | out : Entry [] : String | Test.java:7003:9:7003:33 | getMapValueFromEntry(...) | provenance | MaD:11 | +| Test.java:7007:30:7007:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | Test.java:7009:10:7009:11 | in : PatriciaTrie [] : String | provenance | | +| Test.java:7007:56:7007:71 | (...)... : String | Test.java:288:49:288:58 | key : String | provenance | | +| Test.java:7007:56:7007:71 | (...)... : String | Test.java:7007:30:7007:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:20 | +| Test.java:7007:56:7007:71 | (...)... : String | Test.java:7007:30:7007:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:783 | +| Test.java:7007:64:7007:71 | source(...) : Object | Test.java:7007:56:7007:71 | (...)... : String | provenance | | +| Test.java:7009:10:7009:11 | in : PatriciaTrie [] : String | Test.java:7009:10:7009:27 | selectKey(...) : String | provenance | MaD:464 | +| Test.java:7009:10:7009:27 | selectKey(...) : String | Test.java:7010:9:7010:11 | out | provenance | | +| Test.java:7014:30:7014:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:7016:10:7016:11 | in : PatriciaTrie [] : String | provenance | | +| Test.java:7014:58:7014:73 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | +| Test.java:7014:58:7014:73 | (...)... : String | Test.java:7014:30:7014:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:21 | +| Test.java:7014:58:7014:73 | (...)... : String | Test.java:7014:30:7014:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:784 | +| Test.java:7014:66:7014:73 | source(...) : Object | Test.java:7014:58:7014:73 | (...)... : String | provenance | | +| Test.java:7016:10:7016:11 | in : PatriciaTrie [] : String | Test.java:7016:10:7016:29 | selectValue(...) : String | provenance | MaD:465 | +| Test.java:7016:10:7016:29 | selectValue(...) : String | Test.java:7017:9:7017:11 | out | provenance | | +| Test.java:7022:14:7022:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | Test.java:7023:44:7023:45 | in : PatriciaTrie [] : String | provenance | | +| Test.java:7022:40:7022:55 | (...)... : String | Test.java:288:49:288:58 | key : String | provenance | | +| Test.java:7022:40:7022:55 | (...)... : String | Test.java:7022:14:7022:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:20 | +| Test.java:7022:40:7022:55 | (...)... : String | Test.java:7022:14:7022:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | provenance | MaD:783 | +| Test.java:7022:48:7022:55 | source(...) : Object | Test.java:7022:40:7022:55 | (...)... : String | provenance | | +| Test.java:7023:10:7023:46 | unmodifiableTrie(...) : Trie [] : String | Test.java:7024:19:7024:21 | out : Trie [] : String | provenance | | +| Test.java:7023:44:7023:45 | in : PatriciaTrie [] : String | Test.java:7023:10:7023:46 | unmodifiableTrie(...) : Trie [] : String | provenance | MaD:468 | +| Test.java:7024:19:7024:21 | out : Trie [] : String | Test.java:228:18:228:29 | map : Trie [] : String | provenance | | +| Test.java:7024:19:7024:21 | out : Trie [] : String | Test.java:7024:9:7024:22 | getMapKey(...) | provenance | MaD:19 | +| Test.java:7029:14:7029:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | Test.java:7030:44:7030:45 | in : PatriciaTrie [] : String | provenance | | +| Test.java:7029:42:7029:57 | (...)... : String | Test.java:307:50:307:56 | value : String | provenance | | +| Test.java:7029:42:7029:57 | (...)... : String | Test.java:7029:14:7029:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:21 | +| Test.java:7029:42:7029:57 | (...)... : String | Test.java:7029:14:7029:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | provenance | MaD:784 | +| Test.java:7029:50:7029:57 | source(...) : Object | Test.java:7029:42:7029:57 | (...)... : String | provenance | | +| Test.java:7030:10:7030:46 | unmodifiableTrie(...) : Trie [] : String | Test.java:7031:21:7031:23 | out : Trie [] : String | provenance | | +| Test.java:7030:44:7030:45 | in : PatriciaTrie [] : String | Test.java:7030:10:7030:46 | unmodifiableTrie(...) : Trie [] : String | provenance | MaD:469 | +| Test.java:7031:21:7031:23 | out : Trie [] : String | Test.java:232:20:232:31 | map : Trie [] : String | provenance | | +| Test.java:7031:21:7031:23 | out : Trie [] : String | Test.java:7031:9:7031:24 | getMapValue(...) | provenance | MaD:18 | +| Test.java:7037:22:7037:26 | key : Object | Test.java:7038:10:7038:12 | key : Object | provenance | | +| Test.java:7037:22:7037:26 | key : String | Test.java:7038:10:7038:12 | key : String | provenance | | +| Test.java:7037:29:7037:35 | value : Object | Test.java:7038:15:7038:19 | value : Object | provenance | | +| Test.java:7037:29:7037:35 | value : String | Test.java:7038:15:7038:19 | value : String | provenance | | +| Test.java:7038:4:7038:21 | this [post update] : MyAbstractKeyValue [] : Object | Test.java:7037:3:7037:20 | parameter this [Return] : MyAbstractKeyValue [] : Object | provenance | | +| Test.java:7038:4:7038:21 | this [post update] : MyAbstractKeyValue [] : String | Test.java:7037:3:7037:20 | parameter this [Return] : MyAbstractKeyValue [] : String | provenance | | +| Test.java:7038:4:7038:21 | this [post update] : MyAbstractKeyValue [] : Object | Test.java:7037:3:7037:20 | parameter this [Return] : MyAbstractKeyValue [] : Object | provenance | | +| Test.java:7038:4:7038:21 | this [post update] : MyAbstractKeyValue [] : String | Test.java:7037:3:7037:20 | parameter this [Return] : MyAbstractKeyValue [] : String | provenance | | +| Test.java:7038:10:7038:12 | key : Object | Test.java:7038:4:7038:21 | this [post update] : MyAbstractKeyValue [] : Object | provenance | MaD:192 | +| Test.java:7038:10:7038:12 | key : String | Test.java:7038:4:7038:21 | this [post update] : MyAbstractKeyValue [] : String | provenance | MaD:192 | +| Test.java:7038:15:7038:19 | value : Object | Test.java:7038:4:7038:21 | this [post update] : MyAbstractKeyValue [] : Object | provenance | MaD:193 | +| Test.java:7038:15:7038:19 | value : String | Test.java:7038:4:7038:21 | this [post update] : MyAbstractKeyValue [] : String | provenance | MaD:193 | +| Test.java:7041:5:7041:12 | parameter this : MyAbstractKeyValue [] : String | Test.java:7042:11:7042:15 | super : MyAbstractKeyValue [] : String | provenance | | +| Test.java:7041:14:7041:24 | key : Object | Test.java:7042:24:7042:26 | key : Object | provenance | | +| Test.java:7042:11:7042:15 | super : MyAbstractKeyValue [] : String | Test.java:7042:11:7042:27 | setKey(...) : String | provenance | MaD:195 | +| Test.java:7042:11:7042:15 | super [post update] : MyAbstractKeyValue [] : Object | Test.java:7041:5:7041:12 | parameter this [Return] : MyAbstractKeyValue [] : Object | provenance | | +| Test.java:7042:24:7042:26 | key : Object | Test.java:7042:11:7042:15 | super [post update] : MyAbstractKeyValue [] : Object | provenance | MaD:194 | +| Test.java:7045:5:7045:14 | parameter this : MyAbstractKeyValue [] : String | Test.java:7046:11:7046:15 | super : MyAbstractKeyValue [] : String | provenance | | +| Test.java:7045:16:7045:28 | value : Object | Test.java:7046:26:7046:30 | value : Object | provenance | | +| Test.java:7046:11:7046:15 | super : MyAbstractKeyValue [] : String | Test.java:7046:11:7046:31 | setValue(...) : String | provenance | MaD:197 | +| Test.java:7046:11:7046:15 | super [post update] : MyAbstractKeyValue [] : Object | Test.java:7045:5:7045:14 | parameter this [Return] : MyAbstractKeyValue [] : Object | provenance | | +| Test.java:7046:26:7046:30 | value : Object | Test.java:7046:11:7046:15 | super [post update] : MyAbstractKeyValue [] : Object | provenance | MaD:196 | +| Test.java:7051:22:7051:32 | key : Object | Test.java:7052:10:7052:12 | key : Object | provenance | | +| Test.java:7051:22:7051:32 | key : String | Test.java:7052:10:7052:12 | key : String | provenance | | +| Test.java:7051:35:7051:47 | value : Object | Test.java:7052:15:7052:19 | value : Object | provenance | | +| Test.java:7051:35:7051:47 | value : String | Test.java:7052:15:7052:19 | value : String | provenance | | +| Test.java:7052:4:7052:21 | this [post update] : MyAbstractMapEntry [] : Object | Test.java:7051:3:7051:20 | parameter this [Return] : MyAbstractMapEntry [] : Object | provenance | | +| Test.java:7052:4:7052:21 | this [post update] : MyAbstractMapEntry [] : String | Test.java:7051:3:7051:20 | parameter this [Return] : MyAbstractMapEntry [] : String | provenance | | +| Test.java:7052:4:7052:21 | this [post update] : MyAbstractMapEntry [] : Object | Test.java:7051:3:7051:20 | parameter this [Return] : MyAbstractMapEntry [] : Object | provenance | | +| Test.java:7052:4:7052:21 | this [post update] : MyAbstractMapEntry [] : String | Test.java:7051:3:7051:20 | parameter this [Return] : MyAbstractMapEntry [] : String | provenance | | +| Test.java:7052:10:7052:12 | key : Object | Test.java:7052:4:7052:21 | this [post update] : MyAbstractMapEntry [] : Object | provenance | MaD:198 | +| Test.java:7052:10:7052:12 | key : String | Test.java:7052:4:7052:21 | this [post update] : MyAbstractMapEntry [] : String | provenance | MaD:198 | +| Test.java:7052:15:7052:19 | value : Object | Test.java:7052:4:7052:21 | this [post update] : MyAbstractMapEntry [] : Object | provenance | MaD:199 | +| Test.java:7052:15:7052:19 | value : String | Test.java:7052:4:7052:21 | this [post update] : MyAbstractMapEntry [] : String | provenance | MaD:199 | +| Test.java:7061:31:7061:57 | entry : MyAbstractMapEntry [] : String | Test.java:7062:10:7062:14 | entry : MyAbstractMapEntry [] : String | provenance | | +| Test.java:7061:31:7061:57 | entry : MyAbstractMapEntry [] : String | Test.java:7062:10:7062:14 | entry : MyAbstractMapEntry [] : String | provenance | | +| Test.java:7062:4:7062:16 | this [post update] : MyAbstractMapEntryDecorator [] : String | Test.java:7061:3:7061:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | provenance | | +| Test.java:7062:4:7062:16 | this [post update] : MyAbstractMapEntryDecorator [] : String | Test.java:7061:3:7061:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | provenance | | +| Test.java:7062:10:7062:14 | entry : MyAbstractMapEntry [] : String | Test.java:7062:4:7062:16 | this [post update] : MyAbstractMapEntryDecorator [] : String | provenance | MaD:200 | +| Test.java:7062:10:7062:14 | entry : MyAbstractMapEntry [] : String | Test.java:7062:4:7062:16 | this [post update] : MyAbstractMapEntryDecorator [] : String | provenance | MaD:201 | +| Test.java:7065:19:7065:31 | parameter this : MyAbstractMapEntryDecorator [] : String | Test.java:7066:11:7066:15 | super : MyAbstractMapEntryDecorator [] : String | provenance | | +| Test.java:7065:19:7065:31 | parameter this : MyAbstractMapEntryDecorator [] : String | Test.java:7066:11:7066:15 | super : MyAbstractMapEntryDecorator [] : String | provenance | | +| Test.java:7066:11:7066:15 | super : MyAbstractMapEntryDecorator [] : String | Test.java:7066:11:7066:29 | getMapEntry(...) : Entry [] : String | provenance | MaD:202 | +| Test.java:7066:11:7066:15 | super : MyAbstractMapEntryDecorator [] : String | Test.java:7066:11:7066:29 | getMapEntry(...) : Entry [] : String | provenance | MaD:203 | +| Test.java:7076:15:7076:30 | parameter this : MySetView [] : String | Test.java:7076:43:7076:58 | this <.method> : MySetView [] : String | provenance | | +| Test.java:7076:43:7076:58 | this <.method> : MySetView [] : String | Test.java:7076:43:7076:58 | createIterator(...) : Iterator [] : String | provenance | MaD:793 | +| Test.java:7080:43:7080:71 | map : DualTreeBidiMap [] : String | Test.java:7081:10:7081:12 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:7080:43:7080:71 | map : DualTreeBidiMap [] : String | Test.java:7081:10:7081:12 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:7081:4:7081:14 | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | Test.java:7080:10:7080:41 | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | provenance | | +| Test.java:7081:4:7081:14 | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | Test.java:7080:10:7080:41 | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | provenance | | +| Test.java:7081:10:7081:12 | map : DualTreeBidiMap [] : String | Test.java:7081:4:7081:14 | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | provenance | MaD:55 | +| Test.java:7081:10:7081:12 | map : DualTreeBidiMap [] : String | Test.java:7081:4:7081:14 | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | provenance | MaD:56 | +| Test.java:7086:40:7086:65 | map : ListOrderedMap [] : String | Test.java:7087:10:7087:12 | map : ListOrderedMap [] : String | provenance | | +| Test.java:7086:40:7086:65 | map : ListOrderedMap [] : String | Test.java:7087:10:7087:12 | map : ListOrderedMap [] : String | provenance | | +| Test.java:7087:4:7087:14 | this [post update] : MyAbstractOrderedMapDecorator [] : String | Test.java:7086:10:7086:38 | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | provenance | | +| Test.java:7087:4:7087:14 | this [post update] : MyAbstractOrderedMapDecorator [] : String | Test.java:7086:10:7086:38 | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | provenance | | +| Test.java:7087:10:7087:12 | map : ListOrderedMap [] : String | Test.java:7087:4:7087:14 | this [post update] : MyAbstractOrderedMapDecorator [] : String | provenance | MaD:274 | +| Test.java:7087:10:7087:12 | map : ListOrderedMap [] : String | Test.java:7087:4:7087:14 | this [post update] : MyAbstractOrderedMapDecorator [] : String | provenance | MaD:275 | +| Test.java:7092:39:7092:63 | map : TreeMap [] : String | Test.java:7093:10:7093:12 | map : TreeMap [] : String | provenance | | +| Test.java:7092:39:7092:63 | map : TreeMap [] : String | Test.java:7093:10:7093:12 | map : TreeMap [] : String | provenance | | +| Test.java:7093:4:7093:14 | this [post update] : MyAbstractSortedMapDecorator [] : String | Test.java:7092:10:7092:37 | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | provenance | | +| Test.java:7093:4:7093:14 | this [post update] : MyAbstractSortedMapDecorator [] : String | Test.java:7092:10:7092:37 | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | provenance | | +| Test.java:7093:10:7093:12 | map : TreeMap [] : String | Test.java:7093:4:7093:14 | this [post update] : MyAbstractSortedMapDecorator [] : String | provenance | MaD:276 | +| Test.java:7093:10:7093:12 | map : TreeMap [] : String | Test.java:7093:4:7093:14 | this [post update] : MyAbstractSortedMapDecorator [] : String | provenance | MaD:277 | +| Test.java:7098:33:7098:48 | bag : TreeBag [] : String | Test.java:7099:10:7099:12 | bag : TreeBag [] : String | provenance | | +| Test.java:7099:4:7099:14 | this [post update] : MyAbstractBagDecorator [] : String | Test.java:7098:10:7098:31 | parameter this [Return] : MyAbstractBagDecorator [] : String | provenance | | +| Test.java:7099:10:7099:12 | bag : TreeBag [] : String | Test.java:7099:4:7099:14 | this [post update] : MyAbstractBagDecorator [] : String | provenance | MaD:27 | +| Test.java:7104:27:7104:58 | map : Map [] : String | Test.java:7105:10:7105:12 | map : Map [] : String | provenance | | +| Test.java:7105:4:7105:14 | this [post update] : MyAbstractMapBag [] : String | Test.java:7104:10:7104:25 | parameter this [Return] : MyAbstractMapBag [] : String | provenance | | +| Test.java:7105:10:7105:12 | map : Map [] : String | Test.java:7105:4:7105:14 | this [post update] : MyAbstractMapBag [] : String | provenance | MaD:28 | +| Test.java:7107:33:7107:40 | parameter this : MyAbstractMapBag [] : String | Test.java:7108:11:7108:15 | super : MyAbstractMapBag [] : String | provenance | | +| Test.java:7108:11:7108:15 | super : MyAbstractMapBag [] : String | Test.java:7108:11:7108:24 | getMap(...) : Map [] : String | provenance | MaD:29 | +| Test.java:7113:39:7113:60 | bag : TreeBag [] : String | Test.java:7114:10:7114:12 | bag : TreeBag [] : String | provenance | | +| Test.java:7114:4:7114:14 | this [post update] : MyAbstractSortedBagDecorator [] : String | Test.java:7113:10:7113:37 | parameter this [Return] : MyAbstractSortedBagDecorator [] : String | provenance | | +| Test.java:7114:10:7114:12 | bag : TreeBag [] : String | Test.java:7114:4:7114:14 | this [post update] : MyAbstractSortedBagDecorator [] : String | provenance | MaD:30 | +| Test.java:7119:37:7119:59 | map : DualTreeBidiMap [] : String | Test.java:7120:10:7120:12 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:7119:37:7119:59 | map : DualTreeBidiMap [] : String | Test.java:7120:10:7120:12 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:7120:4:7120:14 | this [post update] : MyAbstractBidiMapDecorator [] : String | Test.java:7119:10:7119:35 | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | provenance | | +| Test.java:7120:4:7120:14 | this [post update] : MyAbstractBidiMapDecorator [] : String | Test.java:7119:10:7119:35 | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | provenance | | +| Test.java:7120:10:7120:12 | map : DualTreeBidiMap [] : String | Test.java:7120:4:7120:14 | this [post update] : MyAbstractBidiMapDecorator [] : String | provenance | MaD:45 | +| Test.java:7120:10:7120:12 | map : DualTreeBidiMap [] : String | Test.java:7120:4:7120:14 | this [post update] : MyAbstractBidiMapDecorator [] : String | provenance | MaD:46 | +| Test.java:7128:32:7128:56 | normalMap : DualTreeBidiMap [] : String | Test.java:7129:10:7129:18 | normalMap : DualTreeBidiMap [] : String | provenance | | +| Test.java:7128:32:7128:56 | normalMap : DualTreeBidiMap [] : String | Test.java:7129:10:7129:18 | normalMap : DualTreeBidiMap [] : String | provenance | | +| Test.java:7128:59:7128:84 | reverseMap : DualTreeBidiMap [] : String | Test.java:7129:21:7129:30 | reverseMap : DualTreeBidiMap [] : String | provenance | | +| Test.java:7128:59:7128:84 | reverseMap : DualTreeBidiMap [] : String | Test.java:7129:21:7129:30 | reverseMap : DualTreeBidiMap [] : String | provenance | | +| Test.java:7128:87:7128:120 | inverseBidiMap : DualTreeBidiMap [] : String | Test.java:7129:33:7129:46 | inverseBidiMap : DualTreeBidiMap [] : String | provenance | | +| Test.java:7128:87:7128:120 | inverseBidiMap : DualTreeBidiMap [] : String | Test.java:7129:33:7129:46 | inverseBidiMap : DualTreeBidiMap [] : String | provenance | | +| Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | provenance | | +| Test.java:7129:10:7129:18 | normalMap : DualTreeBidiMap [] : String | Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | provenance | MaD:47 | +| Test.java:7129:10:7129:18 | normalMap : DualTreeBidiMap [] : String | Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | provenance | MaD:48 | +| Test.java:7129:21:7129:30 | reverseMap : DualTreeBidiMap [] : String | Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | provenance | MaD:49 | +| Test.java:7129:21:7129:30 | reverseMap : DualTreeBidiMap [] : String | Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | provenance | MaD:50 | +| Test.java:7129:33:7129:46 | inverseBidiMap : DualTreeBidiMap [] : String | Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | provenance | MaD:51 | +| Test.java:7129:33:7129:46 | inverseBidiMap : DualTreeBidiMap [] : String | Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | provenance | MaD:52 | +| Test.java:7137:44:7137:73 | map : DualTreeBidiMap [] : String | Test.java:7138:10:7138:12 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:7137:44:7137:73 | map : DualTreeBidiMap [] : String | Test.java:7138:10:7138:12 | map : DualTreeBidiMap [] : String | provenance | | +| Test.java:7138:4:7138:14 | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:7137:10:7137:42 | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | provenance | | +| Test.java:7138:4:7138:14 | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:7137:10:7137:42 | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | provenance | | +| Test.java:7138:10:7138:12 | map : DualTreeBidiMap [] : String | Test.java:7138:4:7138:14 | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | provenance | MaD:53 | +| Test.java:7138:10:7138:12 | map : DualTreeBidiMap [] : String | Test.java:7138:4:7138:14 | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | provenance | MaD:54 | +| Test.java:7143:40:7143:63 | coll : TreeBag [] : String | Test.java:7144:10:7144:13 | coll : TreeBag [] : String | provenance | | +| Test.java:7144:4:7144:15 | this [post update] : MyAbstractCollectionDecorator [] : String | Test.java:7143:10:7143:38 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | provenance | | +| Test.java:7144:10:7144:13 | coll : TreeBag [] : String | Test.java:7144:4:7144:15 | this [post update] : MyAbstractCollectionDecorator [] : String | provenance | MaD:77 | +| Test.java:7146:24:7146:34 | parameter this : MyAbstractCollectionDecorator [] : String | Test.java:7147:11:7147:15 | super : MyAbstractCollectionDecorator [] : String | provenance | | +| Test.java:7147:11:7147:15 | super : MyAbstractCollectionDecorator [] : String | Test.java:7147:11:7147:27 | decorated(...) : Collection [] : String | provenance | MaD:78 | +| Test.java:7149:31:7149:54 | coll : TreeBag [] : String | Test.java:7150:24:7150:27 | coll : TreeBag [] : String | provenance | | +| Test.java:7150:4:7150:8 | super [post update] : MyAbstractCollectionDecorator [] : String | Test.java:7149:15:7149:29 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | provenance | | +| Test.java:7150:24:7150:27 | coll : TreeBag [] : String | Test.java:7150:4:7150:8 | super [post update] : MyAbstractCollectionDecorator [] : String | provenance | MaD:79 | +| Test.java:7155:38:7155:63 | iterator : ListIterator [] : String | Test.java:7156:10:7156:17 | iterator : ListIterator [] : String | provenance | | +| Test.java:7156:4:7156:19 | this [post update] : MyAbstractIteratorDecorator [] : String | Test.java:7155:10:7155:36 | parameter this [Return] : MyAbstractIteratorDecorator [] : String | provenance | | +| Test.java:7156:10:7156:17 | iterator : ListIterator [] : String | Test.java:7156:4:7156:19 | this [post update] : MyAbstractIteratorDecorator [] : String | provenance | MaD:117 | +| Test.java:7161:42:7161:71 | iterator : ListIterator [] : String | Test.java:7162:10:7162:17 | iterator : ListIterator [] : String | provenance | | +| Test.java:7162:4:7162:19 | this [post update] : MyAbstractListIteratorDecorator [] : String | Test.java:7161:10:7161:40 | parameter this [Return] : MyAbstractListIteratorDecorator [] : String | provenance | | +| Test.java:7162:10:7162:17 | iterator : ListIterator [] : String | Test.java:7162:4:7162:19 | this [post update] : MyAbstractListIteratorDecorator [] : String | provenance | MaD:118 | +| Test.java:7164:26:7164:42 | parameter this : MyAbstractListIteratorDecorator [] : String | Test.java:7165:11:7165:15 | super : MyAbstractListIteratorDecorator [] : String | provenance | | +| Test.java:7165:11:7165:15 | super : MyAbstractListIteratorDecorator [] : String | Test.java:7165:11:7165:33 | getListIterator(...) : ListIterator [] : String | provenance | MaD:119 | +| Test.java:7170:41:7170:72 | iterator : OrderedMapIterator [] : String | Test.java:7171:10:7171:17 | iterator : OrderedMapIterator [] : String | provenance | | +| Test.java:7170:41:7170:72 | iterator : OrderedMapIterator [] : String | Test.java:7171:10:7171:17 | iterator : OrderedMapIterator [] : String | provenance | | +| Test.java:7171:4:7171:19 | this [post update] : MyAbstractMapIteratorDecorator [] : String | Test.java:7170:10:7170:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | provenance | | +| Test.java:7171:4:7171:19 | this [post update] : MyAbstractMapIteratorDecorator [] : String | Test.java:7170:10:7170:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | provenance | | +| Test.java:7171:10:7171:17 | iterator : OrderedMapIterator [] : String | Test.java:7171:4:7171:19 | this [post update] : MyAbstractMapIteratorDecorator [] : String | provenance | MaD:120 | +| Test.java:7171:10:7171:17 | iterator : OrderedMapIterator [] : String | Test.java:7171:4:7171:19 | this [post update] : MyAbstractMapIteratorDecorator [] : String | provenance | MaD:121 | +| Test.java:7173:28:7173:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | Test.java:7174:11:7174:15 | super : MyAbstractMapIteratorDecorator [] : String | provenance | | +| Test.java:7173:28:7173:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | Test.java:7174:11:7174:15 | super : MyAbstractMapIteratorDecorator [] : String | provenance | | +| Test.java:7174:11:7174:15 | super : MyAbstractMapIteratorDecorator [] : String | Test.java:7174:11:7174:32 | getMapIterator(...) : MapIterator [] : String | provenance | MaD:122 | +| Test.java:7174:11:7174:15 | super : MyAbstractMapIteratorDecorator [] : String | Test.java:7174:11:7174:32 | getMapIterator(...) : MapIterator [] : String | provenance | MaD:123 | +| Test.java:7179:48:7179:86 | iterator : OrderedMapIterator [] : String | Test.java:7180:10:7180:17 | iterator : OrderedMapIterator [] : String | provenance | | +| Test.java:7179:48:7179:86 | iterator : OrderedMapIterator [] : String | Test.java:7180:10:7180:17 | iterator : OrderedMapIterator [] : String | provenance | | +| Test.java:7180:4:7180:19 | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7179:10:7179:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | +| Test.java:7180:4:7180:19 | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7179:10:7179:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | +| Test.java:7180:10:7180:17 | iterator : OrderedMapIterator [] : String | Test.java:7180:4:7180:19 | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | MaD:124 | +| Test.java:7180:10:7180:17 | iterator : OrderedMapIterator [] : String | Test.java:7180:4:7180:19 | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | MaD:125 | +| Test.java:7182:35:7182:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7183:11:7183:15 | super : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | +| Test.java:7182:35:7182:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7183:11:7183:15 | super : MyAbstractOrderedMapIteratorDecorator [] : String | provenance | | +| Test.java:7183:11:7183:15 | super : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7183:11:7183:39 | getOrderedMapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:126 | +| Test.java:7183:11:7183:15 | super : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7183:11:7183:39 | getOrderedMapIterator(...) : OrderedMapIterator [] : String | provenance | MaD:127 | +| Test.java:7188:45:7188:70 | iterator : ListIterator [] : String | Test.java:7189:10:7189:17 | iterator : ListIterator [] : String | provenance | | +| Test.java:7189:4:7189:19 | this [post update] : MyAbstractUntypedIteratorDecorator [] : String | Test.java:7188:10:7188:43 | parameter this [Return] : MyAbstractUntypedIteratorDecorator [] : String | provenance | | +| Test.java:7189:10:7189:17 | iterator : ListIterator [] : String | Test.java:7189:4:7189:19 | this [post update] : MyAbstractUntypedIteratorDecorator [] : String | provenance | MaD:128 | +| Test.java:7191:22:7191:34 | parameter this : MyAbstractUntypedIteratorDecorator [] : String | Test.java:7192:11:7192:15 | super : MyAbstractUntypedIteratorDecorator [] : String | provenance | | +| Test.java:7192:11:7192:15 | super : MyAbstractUntypedIteratorDecorator [] : String | Test.java:7192:11:7192:29 | getIterator(...) : Iterator [] : String | provenance | MaD:129 | +| Test.java:7198:31:7198:64 | coll : TreeBag [] : String | Test.java:7199:10:7199:13 | coll : TreeBag [] : String | provenance | | +| Test.java:7199:4:7199:15 | this [post update] : MyAbstractLinkedList [] : String | Test.java:7198:10:7198:29 | parameter this [Return] : MyAbstractLinkedList [] : String | provenance | | +| Test.java:7199:10:7199:13 | coll : TreeBag [] : String | Test.java:7199:4:7199:15 | this [post update] : MyAbstractLinkedList [] : String | provenance | MaD:244 | +| Test.java:7204:34:7204:51 | list : List [] : String | Test.java:7205:10:7205:13 | list : List [] : String | provenance | | +| Test.java:7205:4:7205:15 | this [post update] : MyAbstractListDecorator [] : String | Test.java:7204:10:7204:32 | parameter this [Return] : MyAbstractListDecorator [] : String | provenance | | +| Test.java:7205:10:7205:13 | list : List [] : String | Test.java:7205:4:7205:15 | this [post update] : MyAbstractListDecorator [] : String | provenance | MaD:251 | +| Test.java:7210:46:7210:63 | list : List [] : String | Test.java:7211:10:7211:13 | list : List [] : String | provenance | | +| Test.java:7211:4:7211:15 | this [post update] : MyAbstractSerializableListDecorator [] : String | Test.java:7210:10:7210:44 | parameter this [Return] : MyAbstractSerializableListDecorator [] : String | provenance | | +| Test.java:7211:10:7211:13 | list : List [] : String | Test.java:7211:4:7211:15 | this [post update] : MyAbstractSerializableListDecorator [] : String | provenance | MaD:252 | +| Test.java:7216:30:7216:68 | map : Map [] : String | Test.java:7217:10:7217:12 | map : Map [] : String | provenance | | +| Test.java:7216:30:7216:68 | map : Map [] : String | Test.java:7217:10:7217:12 | map : Map [] : String | provenance | | +| Test.java:7217:4:7217:14 | this [post update] : MyAbstractHashedMap [] : String | Test.java:7216:10:7216:28 | parameter this [Return] : MyAbstractHashedMap [] : String | provenance | | +| Test.java:7217:4:7217:14 | this [post update] : MyAbstractHashedMap [] : String | Test.java:7216:10:7216:28 | parameter this [Return] : MyAbstractHashedMap [] : String | provenance | | +| Test.java:7217:10:7217:12 | map : Map [] : String | Test.java:7217:4:7217:14 | this [post update] : MyAbstractHashedMap [] : String | provenance | MaD:266 | +| Test.java:7217:10:7217:12 | map : Map [] : String | Test.java:7217:4:7217:14 | this [post update] : MyAbstractHashedMap [] : String | provenance | MaD:267 | | Test.java:7222:30:7222:68 | map : Map [] : String | Test.java:7223:10:7223:12 | map : Map [] : String | provenance | | | Test.java:7222:30:7222:68 | map : Map [] : String | Test.java:7223:10:7223:12 | map : Map [] : String | provenance | | -| Test.java:7223:4:7223:14 | this [post update] : MyAbstractHashedMap [] : String | Test.java:7222:10:7222:28 | parameter this [Return] : MyAbstractHashedMap [] : String | provenance | | -| Test.java:7223:4:7223:14 | this [post update] : MyAbstractHashedMap [] : String | Test.java:7222:10:7222:28 | parameter this [Return] : MyAbstractHashedMap [] : String | provenance | | -| Test.java:7223:10:7223:12 | map : Map [] : String | Test.java:7223:4:7223:14 | this [post update] : MyAbstractHashedMap [] : String | provenance | MaD:265 | -| Test.java:7223:10:7223:12 | map : Map [] : String | Test.java:7223:4:7223:14 | this [post update] : MyAbstractHashedMap [] : String | provenance | MaD:266 | -| Test.java:7228:30:7228:68 | map : Map [] : String | Test.java:7229:10:7229:12 | map : Map [] : String | provenance | | -| Test.java:7228:30:7228:68 | map : Map [] : String | Test.java:7229:10:7229:12 | map : Map [] : String | provenance | | -| Test.java:7229:4:7229:14 | this [post update] : MyAbstractLinkedMap [] : String | Test.java:7228:10:7228:28 | parameter this [Return] : MyAbstractLinkedMap [] : String | provenance | | -| Test.java:7229:4:7229:14 | this [post update] : MyAbstractLinkedMap [] : String | Test.java:7228:10:7228:28 | parameter this [Return] : MyAbstractLinkedMap [] : String | provenance | | -| Test.java:7229:10:7229:12 | map : Map [] : String | Test.java:7229:4:7229:14 | this [post update] : MyAbstractLinkedMap [] : String | provenance | MaD:267 | -| Test.java:7229:10:7229:12 | map : Map [] : String | Test.java:7229:4:7229:14 | this [post update] : MyAbstractLinkedMap [] : String | provenance | MaD:268 | -| Test.java:7234:33:7234:51 | map : Map [] : String | Test.java:7235:10:7235:12 | map : Map [] : String | provenance | | -| Test.java:7234:33:7234:51 | map : Map [] : String | Test.java:7235:10:7235:12 | map : Map [] : String | provenance | | -| Test.java:7235:4:7235:14 | this [post update] : MyAbstractMapDecorator [] : String | Test.java:7234:10:7234:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | provenance | | -| Test.java:7235:4:7235:14 | this [post update] : MyAbstractMapDecorator [] : String | Test.java:7234:10:7234:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | provenance | | -| Test.java:7235:10:7235:12 | map : Map [] : String | Test.java:7235:4:7235:14 | this [post update] : MyAbstractMapDecorator [] : String | provenance | MaD:269 | -| Test.java:7235:10:7235:12 | map : Map [] : String | Test.java:7235:4:7235:14 | this [post update] : MyAbstractMapDecorator [] : String | provenance | MaD:270 | -| Test.java:7237:20:7237:30 | parameter this : MyAbstractMapDecorator [] : String | Test.java:7238:11:7238:15 | super : MyAbstractMapDecorator [] : String | provenance | | -| Test.java:7237:20:7237:30 | parameter this : MyAbstractMapDecorator [] : String | Test.java:7238:11:7238:15 | super : MyAbstractMapDecorator [] : String | provenance | | -| Test.java:7238:11:7238:15 | super : MyAbstractMapDecorator [] : String | Test.java:7238:11:7238:27 | decorated(...) : Map [] : String | provenance | MaD:271 | -| Test.java:7238:11:7238:15 | super : MyAbstractMapDecorator [] : String | Test.java:7238:11:7238:27 | decorated(...) : Map [] : String | provenance | MaD:272 | -| Test.java:7243:42:7243:66 | set : TreeSet [] : String | Test.java:7244:10:7244:12 | set : TreeSet [] : String | provenance | | -| Test.java:7244:4:7244:14 | this [post update] : MyAbstractNavigableSetDecorator [] : String | Test.java:7243:10:7243:40 | parameter this [Return] : MyAbstractNavigableSetDecorator [] : String | provenance | | -| Test.java:7244:10:7244:12 | set : TreeSet [] : String | Test.java:7244:4:7244:14 | this [post update] : MyAbstractNavigableSetDecorator [] : String | provenance | MaD:423 | -| Test.java:7249:33:7249:48 | set : ListOrderedSet [] : String | Test.java:7250:10:7250:12 | set : ListOrderedSet [] : String | provenance | | -| Test.java:7250:4:7250:14 | this [post update] : MyAbstractSetDecorator [] : String | Test.java:7249:10:7249:31 | parameter this [Return] : MyAbstractSetDecorator [] : String | provenance | | -| Test.java:7250:10:7250:12 | set : ListOrderedSet [] : String | Test.java:7250:4:7250:14 | this [post update] : MyAbstractSetDecorator [] : String | provenance | MaD:424 | -| Test.java:7255:39:7255:54 | set : ListOrderedSet [] : String | Test.java:7256:10:7256:12 | set : ListOrderedSet [] : String | provenance | | -| Test.java:7256:4:7256:14 | this [post update] : MyAbstractSortedSetDecorator [] : String | Test.java:7255:10:7255:37 | parameter this [Return] : MyAbstractSortedSetDecorator [] : String | provenance | | -| Test.java:7256:10:7256:12 | set : ListOrderedSet [] : String | Test.java:7256:4:7256:14 | this [post update] : MyAbstractSortedSetDecorator [] : String | provenance | MaD:425 | +| Test.java:7223:4:7223:14 | this [post update] : MyAbstractLinkedMap [] : String | Test.java:7222:10:7222:28 | parameter this [Return] : MyAbstractLinkedMap [] : String | provenance | | +| Test.java:7223:4:7223:14 | this [post update] : MyAbstractLinkedMap [] : String | Test.java:7222:10:7222:28 | parameter this [Return] : MyAbstractLinkedMap [] : String | provenance | | +| Test.java:7223:10:7223:12 | map : Map [] : String | Test.java:7223:4:7223:14 | this [post update] : MyAbstractLinkedMap [] : String | provenance | MaD:268 | +| Test.java:7223:10:7223:12 | map : Map [] : String | Test.java:7223:4:7223:14 | this [post update] : MyAbstractLinkedMap [] : String | provenance | MaD:269 | +| Test.java:7228:33:7228:51 | map : Map [] : String | Test.java:7229:10:7229:12 | map : Map [] : String | provenance | | +| Test.java:7228:33:7228:51 | map : Map [] : String | Test.java:7229:10:7229:12 | map : Map [] : String | provenance | | +| Test.java:7229:4:7229:14 | this [post update] : MyAbstractMapDecorator [] : String | Test.java:7228:10:7228:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | provenance | | +| Test.java:7229:4:7229:14 | this [post update] : MyAbstractMapDecorator [] : String | Test.java:7228:10:7228:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | provenance | | +| Test.java:7229:10:7229:12 | map : Map [] : String | Test.java:7229:4:7229:14 | this [post update] : MyAbstractMapDecorator [] : String | provenance | MaD:270 | +| Test.java:7229:10:7229:12 | map : Map [] : String | Test.java:7229:4:7229:14 | this [post update] : MyAbstractMapDecorator [] : String | provenance | MaD:271 | +| Test.java:7231:20:7231:30 | parameter this : MyAbstractMapDecorator [] : String | Test.java:7232:11:7232:15 | super : MyAbstractMapDecorator [] : String | provenance | | +| Test.java:7231:20:7231:30 | parameter this : MyAbstractMapDecorator [] : String | Test.java:7232:11:7232:15 | super : MyAbstractMapDecorator [] : String | provenance | | +| Test.java:7232:11:7232:15 | super : MyAbstractMapDecorator [] : String | Test.java:7232:11:7232:27 | decorated(...) : Map [] : String | provenance | MaD:272 | +| Test.java:7232:11:7232:15 | super : MyAbstractMapDecorator [] : String | Test.java:7232:11:7232:27 | decorated(...) : Map [] : String | provenance | MaD:273 | +| Test.java:7237:42:7237:66 | set : TreeSet [] : String | Test.java:7238:10:7238:12 | set : TreeSet [] : String | provenance | | +| Test.java:7238:4:7238:14 | this [post update] : MyAbstractNavigableSetDecorator [] : String | Test.java:7237:10:7237:40 | parameter this [Return] : MyAbstractNavigableSetDecorator [] : String | provenance | | +| Test.java:7238:10:7238:12 | set : TreeSet [] : String | Test.java:7238:4:7238:14 | this [post update] : MyAbstractNavigableSetDecorator [] : String | provenance | MaD:426 | +| Test.java:7243:33:7243:48 | set : ListOrderedSet [] : String | Test.java:7244:10:7244:12 | set : ListOrderedSet [] : String | provenance | | +| Test.java:7244:4:7244:14 | this [post update] : MyAbstractSetDecorator [] : String | Test.java:7243:10:7243:31 | parameter this [Return] : MyAbstractSetDecorator [] : String | provenance | | +| Test.java:7244:10:7244:12 | set : ListOrderedSet [] : String | Test.java:7244:4:7244:14 | this [post update] : MyAbstractSetDecorator [] : String | provenance | MaD:427 | +| Test.java:7249:39:7249:54 | set : ListOrderedSet [] : String | Test.java:7250:10:7250:12 | set : ListOrderedSet [] : String | provenance | | +| Test.java:7250:4:7250:14 | this [post update] : MyAbstractSortedSetDecorator [] : String | Test.java:7249:10:7249:37 | parameter this [Return] : MyAbstractSortedSetDecorator [] : String | provenance | | +| Test.java:7250:10:7250:12 | set : ListOrderedSet [] : String | Test.java:7250:4:7250:14 | this [post update] : MyAbstractSortedSetDecorator [] : String | provenance | MaD:428 | nodes | Test.java:228:18:228:29 | map : AbstractMapDecorator [] : Object | semmle.label | map : AbstractMapDecorator [] : Object | | Test.java:228:18:228:29 | map : AbstractMapDecorator [] : String | semmle.label | map : AbstractMapDecorator [] : String | @@ -10339,7 +10290,6 @@ nodes | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | semmle.label | map : MultiKeyMap [] : String | | Test.java:232:20:232:31 | map : MultiMap [, ] : Object | semmle.label | map : MultiMap [, ] : Object | | Test.java:232:20:232:31 | map : MultiMap [, ] : String | semmle.label | map : MultiMap [, ] : String | -| Test.java:232:20:232:31 | map : MultiMap [] : Object | semmle.label | map : MultiMap [] : Object | | Test.java:232:20:232:31 | map : MultiValueMap [, ] : Object | semmle.label | map : MultiValueMap [, ] : Object | | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | semmle.label | map : MultiValueMap [, ] : String | | Test.java:232:20:232:31 | map : MultiValueMap [] : Object | semmle.label | map : MultiValueMap [] : Object | @@ -10398,7 +10348,6 @@ nodes | Test.java:232:43:232:45 | map : MultiKeyMap [] : String | semmle.label | map : MultiKeyMap [] : String | | Test.java:232:43:232:45 | map : MultiMap [, ] : Object | semmle.label | map : MultiMap [, ] : Object | | Test.java:232:43:232:45 | map : MultiMap [, ] : String | semmle.label | map : MultiMap [, ] : String | -| Test.java:232:43:232:45 | map : MultiMap [] : Object | semmle.label | map : MultiMap [] : Object | | Test.java:232:43:232:45 | map : MultiValueMap [, ] : Object | semmle.label | map : MultiValueMap [, ] : Object | | Test.java:232:43:232:45 | map : MultiValueMap [, ] : String | semmle.label | map : MultiValueMap [, ] : String | | Test.java:232:43:232:45 | map : MultiValueMap [] : Object | semmle.label | map : MultiValueMap [] : Object | @@ -10436,7 +10385,6 @@ nodes | Test.java:232:43:232:55 | get(...) : Object | semmle.label | get(...) : Object | | Test.java:232:43:232:55 | get(...) : Object | semmle.label | get(...) : Object | | Test.java:232:43:232:55 | get(...) : Object | semmle.label | get(...) : Object | -| Test.java:232:43:232:55 | get(...) : Object | semmle.label | get(...) : Object | | Test.java:232:43:232:55 | get(...) : Object [] : Object | semmle.label | get(...) : Object [] : Object | | Test.java:232:43:232:55 | get(...) : Object [] : Object | semmle.label | get(...) : Object [] : Object | | Test.java:232:43:232:55 | get(...) : Object [] : String | semmle.label | get(...) : Object [] : String | @@ -13487,17 +13435,12 @@ nodes | Test.java:3002:10:3002:26 | setValue(...) : String | semmle.label | setValue(...) : String | | Test.java:3003:9:3003:11 | out | semmle.label | out | | Test.java:3008:18:3008:53 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [, ] : String | -| Test.java:3008:18:3008:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | | Test.java:3008:37:3008:52 | (...)... : String | semmle.label | (...)... : String | | Test.java:3008:45:3008:52 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3009:10:3009:33 | (...)... : Collection [] : Object | semmle.label | (...)... : Collection [] : Object | | Test.java:3009:10:3009:33 | (...)... : Collection [] : String | semmle.label | (...)... : Collection [] : String | | Test.java:3009:22:3009:23 | in : MultiValueMap [, ] : String | semmle.label | in : MultiValueMap [, ] : String | -| Test.java:3009:22:3009:23 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | -| Test.java:3009:22:3009:33 | get(...) : Object [] : Object | semmle.label | get(...) : Object [] : Object | | Test.java:3009:22:3009:33 | get(...) : Object [] : String | semmle.label | get(...) : Object [] : String | | Test.java:3010:9:3010:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3010:20:3010:22 | out : Collection [] : Object | semmle.label | out : Collection [] : Object | | Test.java:3010:20:3010:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | | Test.java:3015:16:3015:23 | source(...) : Object | semmle.label | source(...) : Object | | Test.java:3016:4:3016:6 | out [post update] : MultiValueMap [] : Object | semmle.label | out [post update] : MultiValueMap [] : Object | @@ -13522,15 +13465,11 @@ nodes | Test.java:3031:44:3031:46 | out : MultiValueMap [] : Object | semmle.label | out : MultiValueMap [] : Object | | Test.java:3036:16:3036:23 | source(...) : Object | semmle.label | source(...) : Object | | Test.java:3037:4:3037:6 | out [post update] : MultiMap [, ] : Object | semmle.label | out [post update] : MultiMap [, ] : Object | -| Test.java:3037:4:3037:6 | out [post update] : MultiMap [] : Object | semmle.label | out [post update] : MultiMap [] : Object | | Test.java:3037:18:3037:19 | in : Object | semmle.label | in : Object | | Test.java:3038:9:3038:48 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3038:20:3038:47 | (...)... : Collection | semmle.label | (...)... : Collection | | Test.java:3038:20:3038:47 | (...)... : Collection [] : Object | semmle.label | (...)... : Collection [] : Object | -| Test.java:3038:32:3038:47 | getMapValue(...) : Object | semmle.label | getMapValue(...) : Object | | Test.java:3038:32:3038:47 | getMapValue(...) : Object [] : Object | semmle.label | getMapValue(...) : Object [] : Object | | Test.java:3038:44:3038:46 | out : MultiMap [, ] : Object | semmle.label | out : MultiMap [, ] : Object | -| Test.java:3038:44:3038:46 | out : MultiMap [] : Object | semmle.label | out : MultiMap [] : Object | | Test.java:3043:23:3043:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [, ] : String | | Test.java:3043:23:3043:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | | Test.java:3043:42:3043:57 | (...)... : String | semmle.label | (...)... : String | @@ -13903,3836 +13842,3834 @@ nodes | Test.java:3423:9:3423:24 | getMapValue(...) | semmle.label | getMapValue(...) | | Test.java:3423:21:3423:23 | out : MultiValueMap [] : Object | semmle.label | out : MultiValueMap [] : Object | | Test.java:3428:16:3428:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3429:4:3429:6 | out [post update] : MultiMap [] : Object | semmle.label | out [post update] : MultiMap [] : Object | +| Test.java:3429:4:3429:6 | out [post update] : MultiMap [, ] : Object | semmle.label | out [post update] : MultiMap [, ] : Object | | Test.java:3429:18:3429:19 | in : Object | semmle.label | in : Object | -| Test.java:3430:9:3430:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3430:21:3430:23 | out : MultiMap [] : Object | semmle.label | out : MultiMap [] : Object | -| Test.java:3435:16:3435:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3436:4:3436:6 | out [post update] : BidiMap [] : Object | semmle.label | out [post update] : BidiMap [] : Object | -| Test.java:3436:18:3436:19 | in : Object | semmle.label | in : Object | -| Test.java:3437:9:3437:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3437:21:3437:23 | out : BidiMap [] : Object | semmle.label | out : BidiMap [] : Object | -| Test.java:3442:16:3442:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3443:4:3443:6 | out [post update] : AbstractMapDecorator [] : Object | semmle.label | out [post update] : AbstractMapDecorator [] : Object | -| Test.java:3443:18:3443:19 | in : Object | semmle.label | in : Object | -| Test.java:3444:9:3444:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3444:21:3444:23 | out : AbstractMapDecorator [] : Object | semmle.label | out : AbstractMapDecorator [] : Object | -| Test.java:3449:13:3449:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | semmle.label | newHashedMapWithMapValue(...) : HashedMap [] : String | -| Test.java:3449:38:3449:53 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3449:46:3449:53 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3450:10:3450:11 | in : HashedMap [] : String | semmle.label | in : HashedMap [] : String | -| Test.java:3450:10:3450:27 | put(...) : String | semmle.label | put(...) : String | -| Test.java:3451:9:3451:11 | out | semmle.label | out | -| Test.java:3456:23:3456:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:3456:42:3456:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3456:50:3456:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3457:10:3457:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | -| Test.java:3457:10:3457:27 | put(...) : String | semmle.label | put(...) : String | -| Test.java:3458:9:3458:11 | out | semmle.label | out | -| Test.java:3463:18:3463:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:3463:37:3463:52 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3463:45:3463:52 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3464:10:3464:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | -| Test.java:3464:10:3464:27 | put(...) : String | semmle.label | put(...) : String | -| Test.java:3465:9:3465:11 | out | semmle.label | out | -| Test.java:3470:17:3470:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | semmle.label | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | -| Test.java:3470:44:3470:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3470:52:3470:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3471:10:3471:11 | in : TreeBidiMap [] : String | semmle.label | in : TreeBidiMap [] : String | -| Test.java:3471:10:3471:27 | put(...) : String | semmle.label | put(...) : String | -| Test.java:3472:9:3472:11 | out | semmle.label | out | -| Test.java:3477:30:3477:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:3477:49:3477:64 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3477:57:3477:64 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3478:10:3478:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | -| Test.java:3478:10:3478:27 | put(...) : String | semmle.label | put(...) : String | -| Test.java:3479:9:3479:11 | out | semmle.label | out | -| Test.java:3484:13:3484:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:3484:34:3484:49 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3484:42:3484:49 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3485:4:3485:6 | out [post update] : Put [] : String | semmle.label | out [post update] : Put [] : String | -| Test.java:3485:15:3485:16 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:3486:9:3486:29 | getMapKeyFromPut(...) | semmle.label | getMapKeyFromPut(...) | -| Test.java:3486:26:3486:28 | out : Put [] : String | semmle.label | out : Put [] : String | -| Test.java:3491:13:3491:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:3491:34:3491:49 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3491:42:3491:49 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3492:4:3492:6 | out [post update] : MultiValueMap [] : String | semmle.label | out [post update] : MultiValueMap [] : String | -| Test.java:3492:15:3492:16 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:3493:9:3493:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3493:19:3493:21 | out : MultiValueMap [] : String | semmle.label | out : MultiValueMap [] : String | -| Test.java:3498:13:3498:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:3498:34:3498:49 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3498:42:3498:49 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3499:4:3499:6 | out [post update] : AbstractMapDecorator [] : String | semmle.label | out [post update] : AbstractMapDecorator [] : String | -| Test.java:3499:15:3499:16 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:3500:9:3500:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3500:19:3500:21 | out : AbstractMapDecorator [] : String | semmle.label | out : AbstractMapDecorator [] : String | -| Test.java:3505:13:3505:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:3505:36:3505:51 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3505:44:3505:51 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3506:4:3506:6 | out [post update] : Put [] : String | semmle.label | out [post update] : Put [] : String | -| Test.java:3506:15:3506:16 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:3507:9:3507:31 | getMapValueFromPut(...) | semmle.label | getMapValueFromPut(...) | -| Test.java:3507:28:3507:30 | out : Put [] : String | semmle.label | out : Put [] : String | -| Test.java:3512:13:3512:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:3512:36:3512:51 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3512:44:3512:51 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3513:4:3513:6 | out [post update] : MultiValueMap [] : String | semmle.label | out [post update] : MultiValueMap [] : String | -| Test.java:3513:15:3513:16 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:3514:9:3514:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3514:21:3514:23 | out : MultiValueMap [] : String | semmle.label | out : MultiValueMap [] : String | -| Test.java:3519:13:3519:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:3519:36:3519:51 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3519:44:3519:51 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3520:4:3520:6 | out [post update] : AbstractMapDecorator [] : String | semmle.label | out [post update] : AbstractMapDecorator [] : String | -| Test.java:3520:15:3520:16 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:3521:9:3521:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3521:21:3521:23 | out : AbstractMapDecorator [] : String | semmle.label | out : AbstractMapDecorator [] : String | -| Test.java:3526:15:3526:51 | newQueueWithElement(...) : LinkedList [] : String | semmle.label | newQueueWithElement(...) : LinkedList [] : String | -| Test.java:3526:35:3526:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3526:43:3526:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3527:10:3527:45 | predicatedQueue(...) : Queue [] : String | semmle.label | predicatedQueue(...) : Queue [] : String | -| Test.java:3527:37:3527:38 | in : LinkedList [] : String | semmle.label | in : LinkedList [] : String | -| Test.java:3528:9:3528:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3528:20:3528:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | -| Test.java:3533:15:3533:51 | newQueueWithElement(...) : LinkedList [] : String | semmle.label | newQueueWithElement(...) : LinkedList [] : String | -| Test.java:3533:35:3533:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3533:43:3533:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3534:10:3534:41 | synchronizedQueue(...) : Queue [] : String | semmle.label | synchronizedQueue(...) : Queue [] : String | -| Test.java:3534:39:3534:40 | in : LinkedList [] : String | semmle.label | in : LinkedList [] : String | -| Test.java:3535:9:3535:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3535:20:3535:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | -| Test.java:3540:15:3540:51 | newQueueWithElement(...) : LinkedList [] : String | semmle.label | newQueueWithElement(...) : LinkedList [] : String | -| Test.java:3540:35:3540:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3540:43:3540:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3541:10:3541:47 | transformingQueue(...) : Queue [] : String | semmle.label | transformingQueue(...) : Queue [] : String | -| Test.java:3541:39:3541:40 | in : LinkedList [] : String | semmle.label | in : LinkedList [] : String | -| Test.java:3542:9:3542:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3542:20:3542:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | -| Test.java:3547:15:3547:51 | newQueueWithElement(...) : LinkedList [] : String | semmle.label | newQueueWithElement(...) : LinkedList [] : String | -| Test.java:3547:35:3547:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3547:43:3547:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3548:10:3548:41 | unmodifiableQueue(...) : Queue [] : String | semmle.label | unmodifiableQueue(...) : Queue [] : String | -| Test.java:3548:39:3548:40 | in : LinkedList [] : String | semmle.label | in : LinkedList [] : String | -| Test.java:3549:9:3549:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3549:20:3549:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | -| Test.java:3554:26:3554:64 | newSetViewWithElement(...) : MySetView [] : String | semmle.label | newSetViewWithElement(...) : MySetView [] : String | -| Test.java:3554:48:3554:63 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3554:56:3554:63 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3555:4:3555:5 | in : MySetView [] : String | semmle.label | in : MySetView [] : String | -| Test.java:3555:16:3555:18 | out [post update] : Set [] : String | semmle.label | out [post update] : Set [] : String | -| Test.java:3556:9:3556:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3556:20:3556:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:3561:19:3561:57 | newSetViewWithElement(...) : MySetView [] : String | semmle.label | newSetViewWithElement(...) : MySetView [] : String | -| Test.java:3561:41:3561:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3561:49:3561:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3562:10:3562:11 | in : MySetView [] : String | semmle.label | in : MySetView [] : String | -| Test.java:3562:10:3562:30 | myCreateIterator(...) : Iterator [] : String | semmle.label | myCreateIterator(...) : Iterator [] : String | -| Test.java:3563:9:3563:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3563:20:3563:22 | out : Iterator [] : String | semmle.label | out : Iterator [] : String | -| Test.java:3568:19:3568:57 | newSetViewWithElement(...) : MySetView [] : String | semmle.label | newSetViewWithElement(...) : MySetView [] : String | -| Test.java:3568:41:3568:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3568:49:3568:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3569:10:3569:11 | in : MySetView [] : String | semmle.label | in : MySetView [] : String | -| Test.java:3569:10:3569:19 | toSet(...) : Set [] : String | semmle.label | toSet(...) : Set [] : String | -| Test.java:3570:9:3570:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3570:20:3570:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:3575:13:3575:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3575:35:3575:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3575:43:3575:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3576:10:3576:38 | difference(...) : SetView [] : String | semmle.label | difference(...) : SetView [] : String | -| Test.java:3576:30:3576:31 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3577:9:3577:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3577:20:3577:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | -| Test.java:3582:13:3582:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3582:35:3582:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3582:43:3582:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3583:10:3583:39 | disjunction(...) : SetView [] : String | semmle.label | disjunction(...) : SetView [] : String | -| Test.java:3583:31:3583:32 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3584:9:3584:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3584:20:3584:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | -| Test.java:3589:13:3589:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3589:35:3589:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3589:43:3589:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3590:10:3590:39 | disjunction(...) : SetView [] : String | semmle.label | disjunction(...) : SetView [] : String | -| Test.java:3590:37:3590:38 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3591:9:3591:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3591:20:3591:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | -| Test.java:3596:13:3596:25 | (...)... : Set | semmle.label | (...)... : Set | -| Test.java:3596:18:3596:25 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3597:10:3597:33 | emptyIfNull(...) : Set | semmle.label | emptyIfNull(...) : Set | -| Test.java:3597:31:3597:32 | in : Set | semmle.label | in : Set | -| Test.java:3598:9:3598:11 | out | semmle.label | out | -| Test.java:3603:16:3603:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3604:10:3604:35 | hashSet(...) : HashSet [] : Object | semmle.label | hashSet(...) : HashSet [] : Object | -| Test.java:3604:10:3604:35 | new ..[] { .. } : Object[] [[]] : Object | semmle.label | new ..[] { .. } : Object[] [[]] : Object | -| Test.java:3604:27:3604:28 | in : Object | semmle.label | in : Object | -| Test.java:3605:9:3605:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3605:20:3605:22 | out : HashSet [] : Object | semmle.label | out : HashSet [] : Object | -| Test.java:3610:13:3610:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3610:35:3610:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3610:43:3610:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3611:10:3611:40 | intersection(...) : SetView [] : String | semmle.label | intersection(...) : SetView [] : String | -| Test.java:3611:32:3611:33 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3612:9:3612:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3612:20:3612:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | -| Test.java:3617:13:3617:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3617:35:3617:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3617:43:3617:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3618:10:3618:40 | intersection(...) : SetView [] : String | semmle.label | intersection(...) : SetView [] : String | -| Test.java:3618:38:3618:39 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3619:9:3619:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3619:20:3619:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | -| Test.java:3624:13:3624:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3624:35:3624:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3624:43:3624:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3625:10:3625:32 | orderedSet(...) : Set [] : String | semmle.label | orderedSet(...) : Set [] : String | -| Test.java:3625:30:3625:31 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3626:9:3626:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3626:20:3626:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:3631:22:3631:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3631:44:3631:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3631:52:3631:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3632:10:3632:50 | predicatedNavigableSet(...) : SortedSet [] : String | semmle.label | predicatedNavigableSet(...) : SortedSet [] : String | -| Test.java:3632:42:3632:43 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3633:9:3633:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3633:20:3633:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | -| Test.java:3638:13:3638:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3638:35:3638:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3638:43:3638:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3639:10:3639:41 | predicatedSet(...) : Set [] : String | semmle.label | predicatedSet(...) : Set [] : String | -| Test.java:3639:33:3639:34 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3640:9:3640:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3640:20:3640:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:3645:19:3645:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3645:41:3645:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3645:49:3645:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3646:10:3646:47 | predicatedSortedSet(...) : SortedSet [] : String | semmle.label | predicatedSortedSet(...) : SortedSet [] : String | -| Test.java:3646:39:3646:40 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3647:9:3647:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3647:20:3647:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | -| Test.java:3652:13:3652:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3652:35:3652:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3652:43:3652:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3653:10:3653:37 | synchronizedSet(...) : Set [] : String | semmle.label | synchronizedSet(...) : Set [] : String | -| Test.java:3653:35:3653:36 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3654:9:3654:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3654:20:3654:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:3659:19:3659:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3659:41:3659:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3659:49:3659:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3660:10:3660:43 | synchronizedSortedSet(...) : SortedSet [] : String | semmle.label | synchronizedSortedSet(...) : SortedSet [] : String | -| Test.java:3660:41:3660:42 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3661:9:3661:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3661:20:3661:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | -| Test.java:3666:22:3666:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3666:44:3666:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3666:52:3666:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3667:10:3667:51 | transformedNavigableSet(...) : SortedSet [] : String | semmle.label | transformedNavigableSet(...) : SortedSet [] : String | -| Test.java:3667:43:3667:44 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3668:9:3668:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3668:20:3668:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | -| Test.java:3673:13:3673:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3673:35:3673:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3673:43:3673:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3674:10:3674:42 | transformedSet(...) : Set [] : String | semmle.label | transformedSet(...) : Set [] : String | -| Test.java:3674:34:3674:35 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3675:9:3675:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3675:20:3675:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:3680:19:3680:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3680:41:3680:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3680:49:3680:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3681:10:3681:48 | transformedSortedSet(...) : SortedSet [] : String | semmle.label | transformedSortedSet(...) : SortedSet [] : String | -| Test.java:3681:40:3681:41 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3682:9:3682:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3682:20:3682:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | -| Test.java:3687:13:3687:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3687:35:3687:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3687:43:3687:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3688:10:3688:33 | union(...) : SetView [] : String | semmle.label | union(...) : SetView [] : String | -| Test.java:3688:25:3688:26 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3689:9:3689:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3689:20:3689:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | -| Test.java:3694:13:3694:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3694:35:3694:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3694:43:3694:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3695:10:3695:33 | union(...) : SetView [] : String | semmle.label | union(...) : SetView [] : String | -| Test.java:3695:31:3695:32 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3696:9:3696:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3696:20:3696:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | -| Test.java:3701:22:3701:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3701:44:3701:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3701:52:3701:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3702:10:3702:46 | unmodifiableNavigableSet(...) : SortedSet [] : String | semmle.label | unmodifiableNavigableSet(...) : SortedSet [] : String | -| Test.java:3702:44:3702:45 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3703:9:3703:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3703:20:3703:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | -| Test.java:3708:16:3708:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3709:10:3709:43 | new ..[] { .. } : Object[] [[]] : Object | semmle.label | new ..[] { .. } : Object[] [[]] : Object | -| Test.java:3709:10:3709:43 | unmodifiableSet(...) : Set [] : Object | semmle.label | unmodifiableSet(...) : Set [] : Object | -| Test.java:3709:35:3709:36 | in : Object | semmle.label | in : Object | -| Test.java:3710:9:3710:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3710:20:3710:22 | out : Set [] : Object | semmle.label | out : Set [] : Object | -| Test.java:3715:13:3715:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3715:35:3715:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3715:43:3715:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3716:10:3716:37 | unmodifiableSet(...) : Set [] : String | semmle.label | unmodifiableSet(...) : Set [] : String | -| Test.java:3716:35:3716:36 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3717:9:3717:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3717:20:3717:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:3722:19:3722:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3722:41:3722:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3722:49:3722:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3723:10:3723:43 | unmodifiableSortedSet(...) : SortedSet [] : String | semmle.label | unmodifiableSortedSet(...) : SortedSet [] : String | -| Test.java:3723:41:3723:42 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:3724:9:3724:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3724:20:3724:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | -| Test.java:3729:19:3729:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3729:41:3729:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3729:49:3729:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3730:10:3730:11 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3730:10:3730:19 | first(...) : String | semmle.label | first(...) : String | -| Test.java:3731:9:3731:11 | out | semmle.label | out | -| Test.java:3736:19:3736:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3736:41:3736:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3736:49:3736:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3737:10:3737:11 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3737:10:3737:18 | last(...) : String | semmle.label | last(...) : String | -| Test.java:3738:9:3738:11 | out | semmle.label | out | -| Test.java:3743:13:3743:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | semmle.label | newHashedMapWithMapKey(...) : HashedMap [] : String | -| Test.java:3743:36:3743:51 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3743:44:3743:51 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3744:10:3744:38 | readableMap(...) : IterableMap [] : String | semmle.label | readableMap(...) : IterableMap [] : String | -| Test.java:3744:36:3744:37 | in : HashedMap [] : String | semmle.label | in : HashedMap [] : String | -| Test.java:3745:9:3745:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3745:19:3745:21 | out : IterableMap [] : String | semmle.label | out : IterableMap [] : String | -| Test.java:3750:13:3750:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | semmle.label | newHashedMapWithMapValue(...) : HashedMap [] : String | -| Test.java:3750:38:3750:53 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3750:46:3750:53 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3751:10:3751:38 | readableMap(...) : IterableMap [] : String | semmle.label | readableMap(...) : IterableMap [] : String | -| Test.java:3751:36:3751:37 | in : HashedMap [] : String | semmle.label | in : HashedMap [] : String | -| Test.java:3752:9:3752:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3752:21:3752:23 | out : IterableMap [] : String | semmle.label | out : IterableMap [] : String | -| Test.java:3757:13:3757:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | semmle.label | newHashedMapWithMapKey(...) : HashedMap [] : String | -| Test.java:3757:36:3757:51 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3757:44:3757:51 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3758:10:3758:38 | writableMap(...) : Map [] : String | semmle.label | writableMap(...) : Map [] : String | -| Test.java:3758:36:3758:37 | in : HashedMap [] : String | semmle.label | in : HashedMap [] : String | -| Test.java:3759:9:3759:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3759:19:3759:21 | out : Map [] : String | semmle.label | out : Map [] : String | -| Test.java:3764:13:3764:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | semmle.label | newHashedMapWithMapValue(...) : HashedMap [] : String | -| Test.java:3764:38:3764:53 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3764:46:3764:53 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3765:10:3765:38 | writableMap(...) : Map [] : String | semmle.label | writableMap(...) : Map [] : String | -| Test.java:3765:36:3765:37 | in : HashedMap [] : String | semmle.label | in : HashedMap [] : String | -| Test.java:3766:9:3766:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3766:21:3766:23 | out : Map [] : String | semmle.label | out : Map [] : String | -| Test.java:3771:14:3771:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | -| Test.java:3771:40:3771:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3771:48:3771:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3772:10:3772:11 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | -| Test.java:3772:10:3772:27 | prefixMap(...) : SortedMap [] : String | semmle.label | prefixMap(...) : SortedMap [] : String | -| Test.java:3773:9:3773:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3773:19:3773:21 | out : SortedMap [] : String | semmle.label | out : SortedMap [] : String | -| Test.java:3778:14:3778:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | -| Test.java:3778:42:3778:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3778:50:3778:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3779:10:3779:11 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | -| Test.java:3779:10:3779:27 | prefixMap(...) : SortedMap [] : String | semmle.label | prefixMap(...) : SortedMap [] : String | -| Test.java:3780:9:3780:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3780:21:3780:23 | out : SortedMap [] : String | semmle.label | out : SortedMap [] : String | -| Test.java:3785:14:3785:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | -| Test.java:3785:40:3785:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3785:48:3785:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3786:10:3786:39 | unmodifiableTrie(...) : Trie [] : String | semmle.label | unmodifiableTrie(...) : Trie [] : String | -| Test.java:3786:37:3786:38 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | -| Test.java:3787:9:3787:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3787:19:3787:21 | out : Trie [] : String | semmle.label | out : Trie [] : String | -| Test.java:3792:14:3792:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | -| Test.java:3792:42:3792:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3792:50:3792:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3793:10:3793:39 | unmodifiableTrie(...) : Trie [] : String | semmle.label | unmodifiableTrie(...) : Trie [] : String | -| Test.java:3793:37:3793:38 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | -| Test.java:3794:9:3794:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3794:21:3794:23 | out : Trie [] : String | semmle.label | out : Trie [] : String | -| Test.java:3799:13:3799:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3799:35:3799:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3799:43:3799:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3800:10:3800:39 | new MyAbstractBagDecorator<>(...) : MyAbstractBagDecorator [] : String | semmle.label | new MyAbstractBagDecorator<>(...) : MyAbstractBagDecorator [] : String | -| Test.java:3800:37:3800:38 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3801:9:3801:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3801:20:3801:22 | out : MyAbstractBagDecorator [] : String | semmle.label | out : MyAbstractBagDecorator [] : String | -| Test.java:3806:13:3806:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:3806:20:3806:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3806:28:3806:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3807:10:3807:33 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | semmle.label | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | -| Test.java:3807:31:3807:32 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:3808:9:3808:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3808:20:3808:22 | out : MyAbstractMapBag [] : String | semmle.label | out : MyAbstractMapBag [] : String | -| Test.java:3813:26:3813:77 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | semmle.label | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | -| Test.java:3813:47:3813:76 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:3813:54:3813:69 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3813:62:3813:69 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3814:10:3814:11 | in : MyAbstractMapBag [] : String | semmle.label | in : MyAbstractMapBag [] : String | -| Test.java:3814:10:3814:22 | myGetMap(...) : Map [] : String | semmle.label | myGetMap(...) : Map [] : String | -| Test.java:3815:9:3815:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3815:19:3815:21 | out : Map [] : String | semmle.label | out : Map [] : String | -| Test.java:3820:19:3820:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3820:41:3820:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3820:49:3820:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3821:10:3821:45 | new MyAbstractSortedBagDecorator<>(...) : MyAbstractSortedBagDecorator [] : String | semmle.label | new MyAbstractSortedBagDecorator<>(...) : MyAbstractSortedBagDecorator [] : String | -| Test.java:3821:43:3821:44 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3822:9:3822:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3822:20:3822:22 | out : MyAbstractSortedBagDecorator [] : String | semmle.label | out : MyAbstractSortedBagDecorator [] : String | -| Test.java:3827:13:3827:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3827:35:3827:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3827:43:3827:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3828:10:3828:30 | new CollectionBag<>(...) : CollectionBag [] : String | semmle.label | new CollectionBag<>(...) : CollectionBag [] : String | -| Test.java:3828:28:3828:29 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3829:9:3829:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3829:20:3829:22 | out : CollectionBag [] : String | semmle.label | out : CollectionBag [] : String | -| Test.java:3834:13:3834:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3834:35:3834:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3834:43:3834:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3835:10:3835:40 | collectionBag(...) : Bag [] : String | semmle.label | collectionBag(...) : Bag [] : String | -| Test.java:3835:38:3835:39 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3836:9:3836:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3836:20:3836:22 | out : Bag [] : String | semmle.label | out : Bag [] : String | -| Test.java:3841:19:3841:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3841:41:3841:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3841:49:3841:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3842:10:3842:36 | new CollectionSortedBag<>(...) : CollectionSortedBag [] : String | semmle.label | new CollectionSortedBag<>(...) : CollectionSortedBag [] : String | -| Test.java:3842:34:3842:35 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3843:9:3843:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3843:20:3843:22 | out : CollectionSortedBag [] : String | semmle.label | out : CollectionSortedBag [] : String | -| Test.java:3848:19:3848:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3848:41:3848:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3848:49:3848:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3849:10:3849:52 | collectionSortedBag(...) : SortedBag [] : String | semmle.label | collectionSortedBag(...) : SortedBag [] : String | -| Test.java:3849:50:3849:51 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3850:9:3850:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3850:20:3850:22 | out : SortedBag [] : String | semmle.label | out : SortedBag [] : String | -| Test.java:3855:20:3855:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3855:42:3855:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3855:50:3855:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3856:10:3856:24 | new HashBag<>(...) : HashBag [] : String | semmle.label | new HashBag<>(...) : HashBag [] : String | -| Test.java:3856:22:3856:23 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3857:9:3857:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3857:20:3857:22 | out : HashBag [] : String | semmle.label | out : HashBag [] : String | -| Test.java:3862:13:3862:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3862:35:3862:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3862:43:3862:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3863:10:3863:46 | predicatedBag(...) : PredicatedBag [] : String | semmle.label | predicatedBag(...) : PredicatedBag [] : String | -| Test.java:3863:38:3863:39 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3864:9:3864:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3864:20:3864:22 | out : PredicatedBag [] : String | semmle.label | out : PredicatedBag [] : String | -| Test.java:3869:19:3869:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3869:41:3869:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3869:49:3869:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3870:10:3870:58 | predicatedSortedBag(...) : PredicatedSortedBag [] : String | semmle.label | predicatedSortedBag(...) : PredicatedSortedBag [] : String | -| Test.java:3870:50:3870:51 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3871:9:3871:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3871:20:3871:22 | out : PredicatedSortedBag [] : String | semmle.label | out : PredicatedSortedBag [] : String | -| Test.java:3876:13:3876:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3876:35:3876:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3876:43:3876:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3877:10:3877:44 | synchronizedBag(...) : SynchronizedBag [] : String | semmle.label | synchronizedBag(...) : SynchronizedBag [] : String | -| Test.java:3877:42:3877:43 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3878:9:3878:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3878:20:3878:22 | out : SynchronizedBag [] : String | semmle.label | out : SynchronizedBag [] : String | -| Test.java:3883:19:3883:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3883:41:3883:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3883:49:3883:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3884:10:3884:56 | synchronizedSortedBag(...) : SynchronizedSortedBag [] : String | semmle.label | synchronizedSortedBag(...) : SynchronizedSortedBag [] : String | -| Test.java:3884:54:3884:55 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3885:9:3885:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3885:20:3885:22 | out : SynchronizedSortedBag [] : String | semmle.label | out : SynchronizedSortedBag [] : String | -| Test.java:3890:13:3890:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3890:35:3890:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3890:43:3890:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3891:10:3891:48 | transformedBag(...) : Bag [] : String | semmle.label | transformedBag(...) : Bag [] : String | -| Test.java:3891:40:3891:41 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3892:9:3892:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3892:20:3892:22 | out : Bag [] : String | semmle.label | out : Bag [] : String | -| Test.java:3897:19:3897:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3897:41:3897:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3897:49:3897:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3898:10:3898:60 | transformedSortedBag(...) : TransformedSortedBag [] : String | semmle.label | transformedSortedBag(...) : TransformedSortedBag [] : String | -| Test.java:3898:52:3898:53 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3899:9:3899:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3899:20:3899:22 | out : TransformedSortedBag [] : String | semmle.label | out : TransformedSortedBag [] : String | -| Test.java:3904:20:3904:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3904:42:3904:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3904:50:3904:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3905:10:3905:24 | new TreeBag<>(...) : TreeBag [] : String | semmle.label | new TreeBag<>(...) : TreeBag [] : String | -| Test.java:3905:22:3905:23 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3906:9:3906:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3906:20:3906:22 | out : TreeBag [] : String | semmle.label | out : TreeBag [] : String | -| Test.java:3911:13:3911:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3911:35:3911:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3911:43:3911:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3912:10:3912:44 | unmodifiableBag(...) : Bag [] : String | semmle.label | unmodifiableBag(...) : Bag [] : String | -| Test.java:3912:42:3912:43 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3913:9:3913:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3913:20:3913:22 | out : Bag [] : String | semmle.label | out : Bag [] : String | -| Test.java:3918:19:3918:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3918:41:3918:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3918:49:3918:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3919:10:3919:56 | unmodifiableSortedBag(...) : SortedBag [] : String | semmle.label | unmodifiableSortedBag(...) : SortedBag [] : String | -| Test.java:3919:54:3919:55 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:3920:9:3920:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:3920:20:3920:22 | out : SortedBag [] : String | semmle.label | out : SortedBag [] : String | -| Test.java:3925:17:3925:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:3925:46:3925:61 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3925:54:3925:61 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3926:10:3926:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | semmle.label | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | -| Test.java:3926:41:3926:42 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:3927:9:3927:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3927:19:3927:21 | out : MyAbstractBidiMapDecorator [] : String | semmle.label | out : MyAbstractBidiMapDecorator [] : String | -| Test.java:3932:17:3932:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:3932:48:3932:63 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3932:56:3932:63 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3933:10:3933:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | semmle.label | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | -| Test.java:3933:41:3933:42 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:3934:9:3934:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3934:21:3934:23 | out : MyAbstractBidiMapDecorator [] : String | semmle.label | out : MyAbstractBidiMapDecorator [] : String | -| Test.java:3939:17:3939:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:3939:46:3939:61 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3939:54:3939:61 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3940:10:3940:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | semmle.label | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | -| Test.java:3940:36:3940:37 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:3941:9:3941:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3941:19:3941:21 | out : MyAbstractDualBidiMap [] : String | semmle.label | out : MyAbstractDualBidiMap [] : String | -| Test.java:3946:17:3946:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:3946:46:3946:61 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3946:54:3946:61 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3947:10:3947:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | semmle.label | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | -| Test.java:3947:42:3947:43 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:3948:9:3948:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3948:21:3948:23 | out : MyAbstractDualBidiMap [] : String | semmle.label | out : MyAbstractDualBidiMap [] : String | -| Test.java:3953:17:3953:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:3953:46:3953:61 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3953:54:3953:61 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3954:10:3954:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | semmle.label | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | -| Test.java:3954:48:3954:49 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:3955:9:3955:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3955:21:3955:23 | out : MyAbstractDualBidiMap [] : String | semmle.label | out : MyAbstractDualBidiMap [] : String | -| Test.java:3960:17:3960:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:3960:48:3960:63 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3960:56:3960:63 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3961:10:3961:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | semmle.label | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | -| Test.java:3961:36:3961:37 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:3962:9:3962:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3962:21:3962:23 | out : MyAbstractDualBidiMap [] : String | semmle.label | out : MyAbstractDualBidiMap [] : String | -| Test.java:3967:17:3967:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:3967:48:3967:63 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3967:56:3967:63 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3968:10:3968:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | semmle.label | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | -| Test.java:3968:42:3968:43 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:3969:9:3969:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3969:19:3969:21 | out : MyAbstractDualBidiMap [] : String | semmle.label | out : MyAbstractDualBidiMap [] : String | -| Test.java:3974:17:3974:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:3974:48:3974:63 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3974:56:3974:63 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3975:10:3975:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | semmle.label | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | -| Test.java:3975:48:3975:49 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:3976:9:3976:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3976:19:3976:21 | out : MyAbstractDualBidiMap [] : String | semmle.label | out : MyAbstractDualBidiMap [] : String | -| Test.java:3981:24:3981:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:3981:53:3981:68 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3981:61:3981:68 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3982:10:3982:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | -| Test.java:3982:48:3982:49 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:3983:9:3983:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3983:19:3983:21 | out : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | out : MyAbstractOrderedBidiMapDecorator [] : String | -| Test.java:3988:24:3988:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:3988:55:3988:70 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3988:63:3988:70 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3989:10:3989:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | -| Test.java:3989:48:3989:49 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:3990:9:3990:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:3990:21:3990:23 | out : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | out : MyAbstractOrderedBidiMapDecorator [] : String | -| Test.java:3995:23:3995:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:3995:52:3995:67 | (...)... : String | semmle.label | (...)... : String | -| Test.java:3995:60:3995:67 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:3996:10:3996:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | -| Test.java:3996:47:3996:48 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:3997:9:3997:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:3997:19:3997:21 | out : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | out : MyAbstractSortedBidiMapDecorator [] : String | -| Test.java:4002:23:4002:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4002:54:4002:69 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4002:62:4002:69 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4003:10:4003:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | -| Test.java:4003:47:4003:48 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:4004:9:4004:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4004:21:4004:23 | out : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | out : MyAbstractSortedBidiMapDecorator [] : String | -| Test.java:4009:13:4009:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:4009:20:4009:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4009:28:4009:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4010:10:4010:32 | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | semmle.label | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | -| Test.java:4010:30:4010:31 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:4011:9:4011:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:4011:19:4011:21 | out : DualHashBidiMap [] : String | semmle.label | out : DualHashBidiMap [] : String | -| Test.java:4016:13:4016:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:4016:26:4016:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4016:34:4016:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4017:10:4017:32 | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | semmle.label | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | -| Test.java:4017:30:4017:31 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:4018:9:4018:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4018:21:4018:23 | out : DualHashBidiMap [] : String | semmle.label | out : DualHashBidiMap [] : String | -| Test.java:4023:13:4023:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:4023:20:4023:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4023:28:4023:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4024:10:4024:38 | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | semmle.label | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | -| Test.java:4024:36:4024:37 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:4025:9:4025:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:4025:19:4025:21 | out : DualLinkedHashBidiMap [] : String | semmle.label | out : DualLinkedHashBidiMap [] : String | -| Test.java:4030:13:4030:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:4030:26:4030:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4030:34:4030:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4031:10:4031:38 | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | semmle.label | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | -| Test.java:4031:36:4031:37 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:4032:9:4032:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4032:21:4032:23 | out : DualLinkedHashBidiMap [] : String | semmle.label | out : DualLinkedHashBidiMap [] : String | -| Test.java:4037:13:4037:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:4037:20:4037:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4037:28:4037:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4038:10:4038:32 | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | semmle.label | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | -| Test.java:4038:30:4038:31 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:4039:9:4039:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:4039:19:4039:21 | out : DualTreeBidiMap [] : String | semmle.label | out : DualTreeBidiMap [] : String | -| Test.java:4044:13:4044:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:4044:26:4044:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4044:34:4044:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4045:10:4045:32 | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | semmle.label | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | -| Test.java:4045:30:4045:31 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:4046:9:4046:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4046:21:4046:23 | out : DualTreeBidiMap [] : String | semmle.label | out : DualTreeBidiMap [] : String | -| Test.java:4051:25:4051:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:4051:54:4051:69 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4051:62:4051:69 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4052:10:4052:11 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:4052:10:4052:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | -| Test.java:4053:9:4053:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4053:21:4053:23 | out : OrderedBidiMap [] : String | semmle.label | out : OrderedBidiMap [] : String | -| Test.java:4058:25:4058:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4058:56:4058:71 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4058:64:4058:71 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4059:10:4059:11 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:4059:10:4059:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | -| Test.java:4060:9:4060:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:4060:19:4060:21 | out : OrderedBidiMap [] : String | semmle.label | out : OrderedBidiMap [] : String | -| Test.java:4065:25:4065:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:4065:54:4065:69 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4065:62:4065:69 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4066:10:4066:11 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:4066:10:4066:34 | inverseSortedBidiMap(...) : SortedBidiMap [] : String | semmle.label | inverseSortedBidiMap(...) : SortedBidiMap [] : String | -| Test.java:4067:9:4067:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4067:21:4067:23 | out : SortedBidiMap [] : String | semmle.label | out : SortedBidiMap [] : String | -| Test.java:4072:25:4072:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4072:56:4072:71 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4072:64:4072:71 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4073:10:4073:11 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:4073:10:4073:34 | inverseSortedBidiMap(...) : SortedBidiMap [] : String | semmle.label | inverseSortedBidiMap(...) : SortedBidiMap [] : String | -| Test.java:4074:9:4074:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:4074:19:4074:21 | out : SortedBidiMap [] : String | semmle.label | out : SortedBidiMap [] : String | -| Test.java:4079:13:4079:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:4079:20:4079:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4079:28:4079:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4080:10:4080:28 | new TreeBidiMap<>(...) : TreeBidiMap [] : String | semmle.label | new TreeBidiMap<>(...) : TreeBidiMap [] : String | -| Test.java:4080:26:4080:27 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:4081:9:4081:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:4081:19:4081:21 | out : TreeBidiMap [] : String | semmle.label | out : TreeBidiMap [] : String | -| Test.java:4086:13:4086:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:4086:26:4086:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4086:34:4086:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4087:10:4087:28 | new TreeBidiMap<>(...) : TreeBidiMap [] : String | semmle.label | new TreeBidiMap<>(...) : TreeBidiMap [] : String | -| Test.java:4087:26:4087:27 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:4088:9:4088:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4088:21:4088:23 | out : TreeBidiMap [] : String | semmle.label | out : TreeBidiMap [] : String | -| Test.java:4093:17:4093:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:4093:46:4093:61 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4093:54:4093:61 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4094:10:4094:52 | unmodifiableBidiMap(...) : BidiMap [] : String | semmle.label | unmodifiableBidiMap(...) : BidiMap [] : String | -| Test.java:4094:50:4094:51 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:4095:9:4095:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:4095:19:4095:21 | out : BidiMap [] : String | semmle.label | out : BidiMap [] : String | -| Test.java:4100:17:4100:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4100:48:4100:63 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4100:56:4100:63 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4101:10:4101:52 | unmodifiableBidiMap(...) : BidiMap [] : String | semmle.label | unmodifiableBidiMap(...) : BidiMap [] : String | -| Test.java:4101:50:4101:51 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:4102:9:4102:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4102:21:4102:23 | out : BidiMap [] : String | semmle.label | out : BidiMap [] : String | -| Test.java:4107:36:4107:164 | (...)... : UnmodifiableOrderedBidiMap [] : String | semmle.label | (...)... : UnmodifiableOrderedBidiMap [] : String | -| Test.java:4107:64:4107:164 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | -| Test.java:4107:118:4107:163 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:4107:147:4107:162 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4107:155:4107:162 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4108:10:4108:11 | in : UnmodifiableOrderedBidiMap [] : String | semmle.label | in : UnmodifiableOrderedBidiMap [] : String | -| Test.java:4108:10:4108:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | -| Test.java:4109:9:4109:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4109:21:4109:23 | out : OrderedBidiMap [] : String | semmle.label | out : OrderedBidiMap [] : String | -| Test.java:4114:36:4114:166 | (...)... : UnmodifiableOrderedBidiMap [] : String | semmle.label | (...)... : UnmodifiableOrderedBidiMap [] : String | -| Test.java:4114:64:4114:166 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | -| Test.java:4114:118:4114:165 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4114:149:4114:164 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4114:157:4114:164 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4115:10:4115:11 | in : UnmodifiableOrderedBidiMap [] : String | semmle.label | in : UnmodifiableOrderedBidiMap [] : String | -| Test.java:4115:10:4115:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | -| Test.java:4116:9:4116:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:4116:19:4116:21 | out : OrderedBidiMap [] : String | semmle.label | out : OrderedBidiMap [] : String | -| Test.java:4121:24:4121:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:4121:53:4121:68 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4121:61:4121:68 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4122:10:4122:66 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | -| Test.java:4122:64:4122:65 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:4123:9:4123:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:4123:19:4123:21 | out : OrderedBidiMap [] : String | semmle.label | out : OrderedBidiMap [] : String | -| Test.java:4128:24:4128:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4128:55:4128:70 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4128:63:4128:70 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4129:10:4129:66 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | -| Test.java:4129:64:4129:65 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:4130:9:4130:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4130:21:4130:23 | out : OrderedBidiMap [] : String | semmle.label | out : OrderedBidiMap [] : String | -| Test.java:4135:23:4135:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:4135:52:4135:67 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4135:60:4135:67 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4136:10:4136:64 | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | semmle.label | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | -| Test.java:4136:62:4136:63 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:4137:9:4137:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:4137:19:4137:21 | out : SortedBidiMap [] : String | semmle.label | out : SortedBidiMap [] : String | -| Test.java:4142:23:4142:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4142:54:4142:69 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4142:62:4142:69 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4143:10:4143:64 | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | semmle.label | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | -| Test.java:4143:62:4143:63 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | -| Test.java:4144:9:4144:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4144:21:4144:23 | out : SortedBidiMap [] : String | semmle.label | out : SortedBidiMap [] : String | -| Test.java:4149:20:4149:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4149:42:4149:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4149:50:4149:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4150:10:4150:46 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | semmle.label | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | -| Test.java:4150:44:4150:45 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4151:9:4151:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4151:20:4151:22 | out : MyAbstractCollectionDecorator [] : String | semmle.label | out : MyAbstractCollectionDecorator [] : String | -| Test.java:4156:39:4156:112 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | semmle.label | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | -| Test.java:4156:73:4156:111 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4156:95:4156:110 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4156:103:4156:110 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4157:10:4157:11 | in : MyAbstractCollectionDecorator [] : String | semmle.label | in : MyAbstractCollectionDecorator [] : String | -| Test.java:4157:10:4157:25 | myDecorated(...) : Collection [] : String | semmle.label | myDecorated(...) : Collection [] : String | -| Test.java:4158:9:4158:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4158:20:4158:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | -| Test.java:4163:20:4163:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4163:42:4163:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4163:50:4163:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4164:4:4164:6 | out [post update] : MyAbstractCollectionDecorator [] : String | semmle.label | out [post update] : MyAbstractCollectionDecorator [] : String | -| Test.java:4164:24:4164:25 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4165:9:4165:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4165:20:4165:22 | out : MyAbstractCollectionDecorator [] : String | semmle.label | out : MyAbstractCollectionDecorator [] : String | -| Test.java:4170:16:4170:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4172:17:4172:19 | out [post update] : CompositeCollection [] : Object | semmle.label | out [post update] : CompositeCollection [] : Object | -| Test.java:4172:28:4172:29 | in : Object | semmle.label | in : Object | -| Test.java:4173:9:4173:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4173:20:4173:22 | out : CompositeCollection [] : Object | semmle.label | out : CompositeCollection [] : Object | -| Test.java:4178:16:4178:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4180:23:4180:25 | out [post update] : List [, ] : Object | semmle.label | out [post update] : List [, ] : Object | -| Test.java:4180:28:4180:29 | in : Object | semmle.label | in : Object | -| Test.java:4181:9:4181:35 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4181:20:4181:34 | getElement(...) : Collection [] : Object | semmle.label | getElement(...) : Collection [] : Object | -| Test.java:4181:31:4181:33 | out : List [, ] : Object | semmle.label | out : List [, ] : Object | -| Test.java:4186:20:4186:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4186:42:4186:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4186:50:4186:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4188:20:4188:22 | out [post update] : CompositeCollection [] : String | semmle.label | out [post update] : CompositeCollection [] : String | -| Test.java:4188:31:4188:32 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4189:9:4189:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4189:20:4189:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | -| Test.java:4194:20:4194:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4194:42:4194:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4194:50:4194:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4196:26:4196:28 | out [post update] : List [, ] : String | semmle.label | out [post update] : List [, ] : String | -| Test.java:4196:31:4196:32 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4197:9:4197:35 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4197:20:4197:34 | getElement(...) : Collection [] : String | semmle.label | getElement(...) : Collection [] : String | -| Test.java:4197:31:4197:33 | out : List [, ] : String | semmle.label | out : List [, ] : String | -| Test.java:4202:20:4202:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4202:42:4202:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4202:50:4202:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4203:10:4203:36 | new CompositeCollection<>(...) : CompositeCollection [] : String | semmle.label | new CompositeCollection<>(...) : CompositeCollection [] : String | -| Test.java:4203:34:4203:35 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4204:9:4204:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4204:20:4204:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | -| Test.java:4209:20:4209:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4209:42:4209:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4209:50:4209:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4210:10:4210:42 | new CompositeCollection<>(...) : CompositeCollection [] : String | semmle.label | new CompositeCollection<>(...) : CompositeCollection [] : String | -| Test.java:4210:34:4210:35 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4211:9:4211:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4211:20:4211:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | -| Test.java:4216:20:4216:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4216:42:4216:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4216:50:4216:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4217:10:4217:42 | new CompositeCollection<>(...) : CompositeCollection [] : String | semmle.label | new CompositeCollection<>(...) : CompositeCollection [] : String | -| Test.java:4217:40:4217:41 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4218:9:4218:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4218:20:4218:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | -| Test.java:4223:22:4223:78 | {...} : Collection[] [[], ] : String | semmle.label | {...} : Collection[] [[], ] : String | -| Test.java:4223:39:4223:77 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4223:61:4223:76 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4223:69:4223:76 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4224:10:4224:36 | new CompositeCollection<>(...) : CompositeCollection [] : String | semmle.label | new CompositeCollection<>(...) : CompositeCollection [] : String | -| Test.java:4224:34:4224:35 | in : Collection[] [[], ] : String | semmle.label | in : Collection[] [[], ] : String | -| Test.java:4225:9:4225:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4225:20:4225:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | -| Test.java:4230:20:4230:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4230:42:4230:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4230:50:4230:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4231:4:4231:6 | out [post update] : CompositeCollection [] : String | semmle.label | out [post update] : CompositeCollection [] : String | -| Test.java:4231:22:4231:23 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4232:9:4232:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4232:20:4232:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | -| Test.java:4237:20:4237:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4237:42:4237:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4237:50:4237:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4238:4:4238:6 | out [post update] : CompositeCollection [] : String | semmle.label | out [post update] : CompositeCollection [] : String | -| Test.java:4238:22:4238:23 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4239:9:4239:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4239:20:4239:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | -| Test.java:4244:20:4244:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4244:42:4244:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4244:50:4244:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4245:4:4245:6 | out [post update] : CompositeCollection [] : String | semmle.label | out [post update] : CompositeCollection [] : String | -| Test.java:4245:28:4245:29 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4246:9:4246:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4246:20:4246:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | -| Test.java:4251:22:4251:78 | {...} : Collection[] [[], ] : String | semmle.label | {...} : Collection[] [[], ] : String | -| Test.java:4251:39:4251:77 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4251:61:4251:76 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4251:69:4251:76 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4252:4:4252:6 | out [post update] : CompositeCollection [] : String | semmle.label | out [post update] : CompositeCollection [] : String | -| Test.java:4252:22:4252:23 | in : Collection[] [[], ] : String | semmle.label | in : Collection[] [[], ] : String | -| Test.java:4253:9:4253:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4253:20:4253:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | -| Test.java:4258:29:4258:92 | new CompositeCollection<>(...) : CompositeCollection [] : String | semmle.label | new CompositeCollection<>(...) : CompositeCollection [] : String | -| Test.java:4258:53:4258:91 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4258:75:4258:90 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4258:83:4258:90 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4259:10:4259:11 | in : CompositeCollection [] : String | semmle.label | in : CompositeCollection [] : String | -| Test.java:4259:10:4259:28 | getCollections(...) : List [, ] : String | semmle.label | getCollections(...) : List [, ] : String | -| Test.java:4260:9:4260:35 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4260:20:4260:34 | getElement(...) : Collection [] : String | semmle.label | getElement(...) : Collection [] : String | -| Test.java:4260:31:4260:33 | out : List [, ] : String | semmle.label | out : List [, ] : String | -| Test.java:4265:29:4265:92 | new CompositeCollection<>(...) : CompositeCollection [] : String | semmle.label | new CompositeCollection<>(...) : CompositeCollection [] : String | -| Test.java:4265:53:4265:91 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4265:75:4265:90 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4265:83:4265:90 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4266:10:4266:11 | in : CompositeCollection [] : String | semmle.label | in : CompositeCollection [] : String | -| Test.java:4266:10:4266:26 | toCollection(...) : Collection [] : String | semmle.label | toCollection(...) : Collection [] : String | -| Test.java:4267:9:4267:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4267:20:4267:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | -| Test.java:4272:20:4272:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4272:42:4272:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4272:50:4272:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4273:10:4273:53 | new IndexedCollection<>(...) : IndexedCollection [] : String | semmle.label | new IndexedCollection<>(...) : IndexedCollection [] : String | -| Test.java:4273:32:4273:33 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4274:9:4274:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4274:20:4274:22 | out : IndexedCollection [] : String | semmle.label | out : IndexedCollection [] : String | -| Test.java:4279:27:4279:107 | new IndexedCollection<>(...) : IndexedCollection [] : String | semmle.label | new IndexedCollection<>(...) : IndexedCollection [] : String | -| Test.java:4279:49:4279:87 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4279:71:4279:86 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4279:79:4279:86 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4280:10:4280:11 | in : IndexedCollection [] : String | semmle.label | in : IndexedCollection [] : String | -| Test.java:4280:10:4280:21 | get(...) : String | semmle.label | get(...) : String | -| Test.java:4281:9:4281:11 | out | semmle.label | out | -| Test.java:4286:20:4286:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4286:42:4286:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4286:50:4286:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4287:10:4287:63 | nonUniqueIndexedCollection(...) : IndexedCollection [] : String | semmle.label | nonUniqueIndexedCollection(...) : IndexedCollection [] : String | -| Test.java:4287:55:4287:56 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4288:9:4288:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4288:20:4288:22 | out : IndexedCollection [] : String | semmle.label | out : IndexedCollection [] : String | -| Test.java:4293:20:4293:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4293:42:4293:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4293:50:4293:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4294:10:4294:60 | uniqueIndexedCollection(...) : IndexedCollection [] : String | semmle.label | uniqueIndexedCollection(...) : IndexedCollection [] : String | -| Test.java:4294:52:4294:53 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4295:9:4295:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4295:20:4295:22 | out : IndexedCollection [] : String | semmle.label | out : IndexedCollection [] : String | -| Test.java:4300:27:4300:107 | new IndexedCollection<>(...) : IndexedCollection [] : String | semmle.label | new IndexedCollection<>(...) : IndexedCollection [] : String | -| Test.java:4300:49:4300:87 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4300:71:4300:86 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4300:79:4300:86 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4301:10:4301:11 | in : IndexedCollection [] : String | semmle.label | in : IndexedCollection [] : String | -| Test.java:4301:10:4301:24 | values(...) : Collection [] : String | semmle.label | values(...) : Collection [] : String | -| Test.java:4302:9:4302:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4302:20:4302:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | -| Test.java:4307:16:4307:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4307:24:4307:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4308:4:4308:6 | out [post update] : Builder [] : String | semmle.label | out [post update] : Builder [] : String | -| Test.java:4308:12:4308:13 | in : String | semmle.label | in : String | -| Test.java:4309:9:4309:46 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4309:20:4309:22 | out : Builder [] : String | semmle.label | out : Builder [] : String | -| Test.java:4309:20:4309:45 | createPredicatedList(...) : List [] : String | semmle.label | createPredicatedList(...) : List [] : String | -| Test.java:4314:20:4314:44 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:4314:28:4314:43 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4314:36:4314:43 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4315:4:4315:6 | out [post update] : Builder [] : String | semmle.label | out [post update] : Builder [] : String | -| Test.java:4315:15:4315:16 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:4316:9:4316:46 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4316:20:4316:22 | out : Builder [] : String | semmle.label | out : Builder [] : String | -| Test.java:4316:20:4316:45 | createPredicatedList(...) : List [] : String | semmle.label | createPredicatedList(...) : List [] : String | -| Test.java:4321:38:4321:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4321:80:4321:95 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4321:88:4321:95 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4322:10:4322:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | -| Test.java:4322:10:4322:37 | createPredicatedBag(...) : Bag [] : String | semmle.label | createPredicatedBag(...) : Bag [] : String | -| Test.java:4323:9:4323:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4323:20:4323:22 | out : Bag [] : String | semmle.label | out : Bag [] : String | -| Test.java:4328:38:4328:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4328:80:4328:95 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4328:88:4328:95 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4329:10:4329:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | -| Test.java:4329:10:4329:33 | createPredicatedBag(...) : Bag [] : String | semmle.label | createPredicatedBag(...) : Bag [] : String | -| Test.java:4330:9:4330:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4330:20:4330:22 | out : Bag [] : String | semmle.label | out : Bag [] : String | -| Test.java:4335:13:4335:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4335:35:4335:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4335:43:4335:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4337:10:4337:41 | createPredicatedBag(...) : Bag [] : String | semmle.label | createPredicatedBag(...) : Bag [] : String | -| Test.java:4337:39:4337:40 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4338:9:4338:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4338:20:4338:22 | out : Bag [] : String | semmle.label | out : Bag [] : String | -| Test.java:4343:38:4343:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4343:80:4343:95 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4343:88:4343:95 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4344:10:4344:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | -| Test.java:4344:10:4344:38 | createPredicatedList(...) : List [] : String | semmle.label | createPredicatedList(...) : List [] : String | -| Test.java:4345:9:4345:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4345:20:4345:22 | out : List [] : String | semmle.label | out : List [] : String | -| Test.java:4350:38:4350:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4350:80:4350:95 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4350:88:4350:95 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4351:10:4351:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | -| Test.java:4351:10:4351:34 | createPredicatedList(...) : List [] : String | semmle.label | createPredicatedList(...) : List [] : String | -| Test.java:4352:9:4352:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4352:20:4352:22 | out : List [] : String | semmle.label | out : List [] : String | -| Test.java:4357:14:4357:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:4357:22:4357:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4357:30:4357:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4359:10:4359:42 | createPredicatedList(...) : List [] : String | semmle.label | createPredicatedList(...) : List [] : String | -| Test.java:4359:40:4359:41 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:4360:9:4360:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4360:20:4360:22 | out : List [] : String | semmle.label | out : List [] : String | -| Test.java:4365:38:4365:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4365:80:4365:95 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4365:88:4365:95 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4366:10:4366:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | -| Test.java:4366:10:4366:42 | createPredicatedMultiSet(...) : MultiSet [] : String | semmle.label | createPredicatedMultiSet(...) : MultiSet [] : String | -| Test.java:4367:9:4367:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4367:20:4367:22 | out : MultiSet [] : String | semmle.label | out : MultiSet [] : String | -| Test.java:4372:38:4372:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4372:80:4372:95 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4372:88:4372:95 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4373:10:4373:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | -| Test.java:4373:10:4373:38 | createPredicatedMultiSet(...) : MultiSet [] : String | semmle.label | createPredicatedMultiSet(...) : MultiSet [] : String | -| Test.java:4374:9:4374:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4374:20:4374:22 | out : MultiSet [] : String | semmle.label | out : MultiSet [] : String | -| Test.java:4379:18:4379:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | semmle.label | newHashMultiSetWithElement(...) : HashMultiSet [] : String | -| Test.java:4379:45:4379:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4379:53:4379:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4381:10:4381:46 | createPredicatedMultiSet(...) : MultiSet [] : String | semmle.label | createPredicatedMultiSet(...) : MultiSet [] : String | -| Test.java:4381:44:4381:45 | in : HashMultiSet [] : String | semmle.label | in : HashMultiSet [] : String | -| Test.java:4382:9:4382:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4382:20:4382:22 | out : MultiSet [] : String | semmle.label | out : MultiSet [] : String | -| Test.java:4387:38:4387:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4387:80:4387:95 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4387:88:4387:95 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4388:10:4388:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | -| Test.java:4388:10:4388:39 | createPredicatedQueue(...) : Queue [] : String | semmle.label | createPredicatedQueue(...) : Queue [] : String | -| Test.java:4389:9:4389:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4389:20:4389:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | -| Test.java:4394:38:4394:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4394:80:4394:95 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4394:88:4394:95 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4395:10:4395:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | -| Test.java:4395:10:4395:35 | createPredicatedQueue(...) : Queue [] : String | semmle.label | createPredicatedQueue(...) : Queue [] : String | -| Test.java:4396:9:4396:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4396:20:4396:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | -| Test.java:4401:15:4401:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:4401:47:4401:62 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4401:55:4401:62 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4403:10:4403:43 | createPredicatedQueue(...) : Queue [] : String | semmle.label | createPredicatedQueue(...) : Queue [] : String | -| Test.java:4403:41:4403:42 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | -| Test.java:4404:9:4404:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4404:20:4404:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | -| Test.java:4409:38:4409:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4409:80:4409:95 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4409:88:4409:95 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4410:10:4410:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | -| Test.java:4410:10:4410:37 | createPredicatedSet(...) : Set [] : String | semmle.label | createPredicatedSet(...) : Set [] : String | -| Test.java:4411:9:4411:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4411:20:4411:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:4416:38:4416:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4416:80:4416:95 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4416:88:4416:95 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4417:10:4417:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | -| Test.java:4417:10:4417:33 | createPredicatedSet(...) : Set [] : String | semmle.label | createPredicatedSet(...) : Set [] : String | -| Test.java:4418:9:4418:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4418:20:4418:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:4423:13:4423:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:4423:42:4423:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4423:50:4423:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4425:10:4425:41 | createPredicatedSet(...) : Set [] : String | semmle.label | createPredicatedSet(...) : Set [] : String | -| Test.java:4425:39:4425:40 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:4426:9:4426:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4426:20:4426:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:4431:38:4431:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4431:80:4431:95 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4431:88:4431:95 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4432:10:4432:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | -| Test.java:4432:10:4432:30 | rejectedElements(...) : Collection [] : String | semmle.label | rejectedElements(...) : Collection [] : String | -| Test.java:4433:9:4433:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4433:20:4433:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | -| Test.java:4438:20:4438:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4438:42:4438:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4438:50:4438:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4439:10:4439:60 | predicatedCollection(...) : PredicatedCollection [] : String | semmle.label | predicatedCollection(...) : PredicatedCollection [] : String | -| Test.java:4439:52:4439:53 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4440:9:4440:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4440:20:4440:22 | out : PredicatedCollection [] : String | semmle.label | out : PredicatedCollection [] : String | -| Test.java:4445:20:4445:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4445:42:4445:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4445:50:4445:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4446:10:4446:58 | synchronizedCollection(...) : SynchronizedCollection [] : String | semmle.label | synchronizedCollection(...) : SynchronizedCollection [] : String | -| Test.java:4446:56:4446:57 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4447:9:4447:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4447:20:4447:22 | out : SynchronizedCollection [] : String | semmle.label | out : SynchronizedCollection [] : String | -| Test.java:4452:20:4452:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4452:42:4452:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4452:50:4452:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4453:10:4453:63 | transformingCollection(...) : TransformedCollection [] : String | semmle.label | transformingCollection(...) : TransformedCollection [] : String | -| Test.java:4453:55:4453:56 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4454:9:4454:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4454:20:4454:22 | out : TransformedCollection [] : String | semmle.label | out : TransformedCollection [] : String | -| Test.java:4459:20:4459:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4459:42:4459:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4459:50:4459:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4460:10:4460:72 | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | semmle.label | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | -| Test.java:4460:70:4460:71 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4461:9:4461:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4461:20:4461:22 | out : BoundedCollection [] : String | semmle.label | out : BoundedCollection [] : String | -| Test.java:4466:27:4466:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:4466:59:4466:74 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4466:67:4466:74 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4467:10:4467:72 | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | semmle.label | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | -| Test.java:4467:70:4467:71 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | -| Test.java:4468:9:4468:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4468:20:4468:22 | out : BoundedCollection [] : String | semmle.label | out : BoundedCollection [] : String | -| Test.java:4473:20:4473:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4473:42:4473:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4473:50:4473:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4474:10:4474:58 | unmodifiableCollection(...) : Collection [] : String | semmle.label | unmodifiableCollection(...) : Collection [] : String | -| Test.java:4474:56:4474:57 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4475:9:4475:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4475:20:4475:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | -| Test.java:4480:18:4480:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4480:45:4480:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4480:53:4480:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4481:10:4481:44 | new MyAbstractIteratorDecorator<>(...) : MyAbstractIteratorDecorator [] : String | semmle.label | new MyAbstractIteratorDecorator<>(...) : MyAbstractIteratorDecorator [] : String | -| Test.java:4481:42:4481:43 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4482:9:4482:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4482:20:4482:22 | out : MyAbstractIteratorDecorator [] : String | semmle.label | out : MyAbstractIteratorDecorator [] : String | -| Test.java:4487:22:4487:65 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4487:49:4487:64 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4487:57:4487:64 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4488:10:4488:48 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | semmle.label | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | -| Test.java:4488:46:4488:47 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4489:9:4489:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4489:20:4489:22 | out : MyAbstractListIteratorDecorator [] : String | semmle.label | out : MyAbstractListIteratorDecorator [] : String | -| Test.java:4494:41:4494:121 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | semmle.label | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | -| Test.java:4494:77:4494:120 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4494:104:4494:119 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4494:112:4494:119 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4495:10:4495:11 | in : MyAbstractListIteratorDecorator [] : String | semmle.label | in : MyAbstractListIteratorDecorator [] : String | -| Test.java:4495:10:4495:31 | myGetListIterator(...) : ListIterator [] : String | semmle.label | myGetListIterator(...) : ListIterator [] : String | -| Test.java:4496:9:4496:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4496:20:4496:22 | out : ListIterator [] : String | semmle.label | out : ListIterator [] : String | -| Test.java:4501:21:4501:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapKey(...) : LinkedMap [] : String | -| Test.java:4501:21:4501:74 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | -| Test.java:4501:44:4501:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4501:52:4501:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4502:10:4502:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | semmle.label | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | -| Test.java:4502:45:4502:46 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | -| Test.java:4503:9:4503:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4503:20:4503:22 | out : MyAbstractMapIteratorDecorator [] : String | semmle.label | out : MyAbstractMapIteratorDecorator [] : String | -| Test.java:4508:21:4508:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapValue(...) : LinkedMap [] : String | -| Test.java:4508:21:4508:76 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | -| Test.java:4508:46:4508:61 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4508:54:4508:61 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4509:10:4509:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | semmle.label | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | -| Test.java:4509:45:4509:46 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | -| Test.java:4510:9:4510:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4510:21:4510:23 | out : MyAbstractMapIteratorDecorator [] : String | semmle.label | out : MyAbstractMapIteratorDecorator [] : String | -| Test.java:4515:40:4515:129 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | semmle.label | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | -| Test.java:4515:75:4515:114 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapKey(...) : LinkedMap [] : String | -| Test.java:4515:75:4515:128 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | -| Test.java:4515:98:4515:113 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4515:106:4515:113 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4516:10:4516:11 | in : MyAbstractMapIteratorDecorator [] : String | semmle.label | in : MyAbstractMapIteratorDecorator [] : String | -| Test.java:4516:10:4516:30 | myGetMapIterator(...) : MapIterator [] : String | semmle.label | myGetMapIterator(...) : MapIterator [] : String | -| Test.java:4517:9:4517:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4517:20:4517:22 | out : MapIterator [] : String | semmle.label | out : MapIterator [] : String | -| Test.java:4522:40:4522:131 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | semmle.label | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | -| Test.java:4522:75:4522:116 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapValue(...) : LinkedMap [] : String | -| Test.java:4522:75:4522:130 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | -| Test.java:4522:100:4522:115 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4522:108:4522:115 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4523:10:4523:11 | in : MyAbstractMapIteratorDecorator [] : String | semmle.label | in : MyAbstractMapIteratorDecorator [] : String | -| Test.java:4523:10:4523:30 | myGetMapIterator(...) : MapIterator [] : String | semmle.label | myGetMapIterator(...) : MapIterator [] : String | -| Test.java:4524:9:4524:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4524:21:4524:23 | out : MapIterator [] : String | semmle.label | out : MapIterator [] : String | -| Test.java:4529:28:4529:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:4529:28:4529:86 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | -| Test.java:4529:56:4529:71 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4529:64:4529:71 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4530:10:4530:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:4530:52:4530:53 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | -| Test.java:4531:9:4531:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4531:20:4531:22 | out : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | out : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:4536:28:4536:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:4536:28:4536:88 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | -| Test.java:4536:58:4536:73 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4536:66:4536:73 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4537:10:4537:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:4537:52:4537:53 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | -| Test.java:4538:9:4538:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4538:21:4538:23 | out : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | out : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:4543:47:4543:148 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:4543:89:4543:133 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:4543:89:4543:147 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | -| Test.java:4543:117:4543:132 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4543:125:4543:132 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4544:10:4544:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | in : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:4544:10:4544:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | semmle.label | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | -| Test.java:4545:9:4545:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4545:20:4545:22 | out : OrderedMapIterator [] : String | semmle.label | out : OrderedMapIterator [] : String | -| Test.java:4550:47:4550:150 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:4550:89:4550:135 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:4550:89:4550:149 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | -| Test.java:4550:119:4550:134 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4550:127:4550:134 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4551:10:4551:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | in : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:4551:10:4551:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | semmle.label | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | -| Test.java:4552:9:4552:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:4552:21:4552:23 | out : OrderedMapIterator [] : String | semmle.label | out : OrderedMapIterator [] : String | -| Test.java:4557:18:4557:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4557:45:4557:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4557:53:4557:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4558:10:4558:51 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | -| Test.java:4558:49:4558:50 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4559:9:4559:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4559:20:4559:22 | out : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | out : MyAbstractUntypedIteratorDecorator [] : String | -| Test.java:4564:44:4564:127 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | -| Test.java:4564:83:4564:126 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4564:110:4564:125 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4564:118:4564:125 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4565:10:4565:11 | in : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | in : MyAbstractUntypedIteratorDecorator [] : String | -| Test.java:4565:10:4565:27 | myGetIterator(...) : Iterator [] : String | semmle.label | myGetIterator(...) : Iterator [] : String | -| Test.java:4566:9:4566:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4566:20:4566:22 | out : Iterator [] : String | semmle.label | out : Iterator [] : String | -| Test.java:4571:16:4571:60 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | -| Test.java:4571:24:4571:60 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4571:44:4571:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4571:52:4571:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4572:10:4572:36 | new ArrayIterator<>(...) : ArrayIterator [] : String | semmle.label | new ArrayIterator<>(...) : ArrayIterator [] : String | -| Test.java:4572:28:4572:29 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:4573:9:4573:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4573:20:4573:22 | out : ArrayIterator [] : String | semmle.label | out : ArrayIterator [] : String | -| Test.java:4578:16:4578:60 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | -| Test.java:4578:24:4578:60 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4578:44:4578:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4578:52:4578:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4579:10:4579:33 | new ArrayIterator<>(...) : ArrayIterator [] : String | semmle.label | new ArrayIterator<>(...) : ArrayIterator [] : String | -| Test.java:4579:28:4579:29 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:4580:9:4580:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4580:20:4580:22 | out : ArrayIterator [] : String | semmle.label | out : ArrayIterator [] : String | -| Test.java:4585:16:4585:60 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | -| Test.java:4585:24:4585:60 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4585:44:4585:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4585:52:4585:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4586:10:4586:30 | new ArrayIterator<>(...) : ArrayIterator [] : String | semmle.label | new ArrayIterator<>(...) : ArrayIterator [] : String | -| Test.java:4586:28:4586:29 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:4587:9:4587:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4587:20:4587:22 | out : ArrayIterator [] : String | semmle.label | out : ArrayIterator [] : String | -| Test.java:4592:23:4592:86 | new ArrayIterator<>(...) : ArrayIterator [] : String | semmle.label | new ArrayIterator<>(...) : ArrayIterator [] : String | -| Test.java:4592:41:4592:85 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | -| Test.java:4592:49:4592:85 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4592:69:4592:84 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4592:77:4592:84 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4593:10:4593:32 | (...)... : String[] [[]] : String | semmle.label | (...)... : String[] [[]] : String | -| Test.java:4593:20:4593:21 | in : ArrayIterator [] : String | semmle.label | in : ArrayIterator [] : String | -| Test.java:4593:20:4593:32 | getArray(...) : Object [[]] : String | semmle.label | getArray(...) : Object [[]] : String | -| Test.java:4594:9:4594:28 | getArrayElement(...) | semmle.label | getArrayElement(...) | -| Test.java:4594:25:4594:27 | out : String[] [[]] : String | semmle.label | out : String[] [[]] : String | -| Test.java:4599:16:4599:60 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | -| Test.java:4599:24:4599:60 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4599:44:4599:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4599:52:4599:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4600:10:4600:40 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | semmle.label | new ArrayListIterator<>(...) : ArrayListIterator [] : String | -| Test.java:4600:32:4600:33 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:4601:9:4601:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4601:20:4601:22 | out : ArrayListIterator [] : String | semmle.label | out : ArrayListIterator [] : String | -| Test.java:4606:16:4606:60 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | -| Test.java:4606:24:4606:60 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4606:44:4606:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4606:52:4606:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4607:10:4607:37 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | semmle.label | new ArrayListIterator<>(...) : ArrayListIterator [] : String | -| Test.java:4607:32:4607:33 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:4608:9:4608:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4608:20:4608:22 | out : ArrayListIterator [] : String | semmle.label | out : ArrayListIterator [] : String | -| Test.java:4613:16:4613:60 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | -| Test.java:4613:24:4613:60 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4613:44:4613:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4613:52:4613:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4614:10:4614:34 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | semmle.label | new ArrayListIterator<>(...) : ArrayListIterator [] : String | -| Test.java:4614:32:4614:33 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:4615:9:4615:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4615:20:4615:22 | out : ArrayListIterator [] : String | semmle.label | out : ArrayListIterator [] : String | -| Test.java:4620:18:4620:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4620:45:4620:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4620:53:4620:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4621:10:4621:40 | new BoundedIterator<>(...) : BoundedIterator [] : String | semmle.label | new BoundedIterator<>(...) : BoundedIterator [] : String | -| Test.java:4621:30:4621:31 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4622:9:4622:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4622:20:4622:22 | out : BoundedIterator [] : String | semmle.label | out : BoundedIterator [] : String | -| Test.java:4627:20:4627:72 | of(...) : List [, ] : String | semmle.label | of(...) : List [, ] : String | -| Test.java:4627:28:4627:71 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4627:55:4627:70 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4627:63:4627:70 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4628:10:4628:52 | new CollatingIterator<>(...) : CollatingIterator [] : String | semmle.label | new CollatingIterator<>(...) : CollatingIterator [] : String | -| Test.java:4628:50:4628:51 | in : List [, ] : String | semmle.label | in : List [, ] : String | -| Test.java:4629:9:4629:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4629:20:4629:22 | out : CollatingIterator [] : String | semmle.label | out : CollatingIterator [] : String | -| Test.java:4634:18:4634:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4634:45:4634:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4634:53:4634:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4635:10:4635:46 | new CollatingIterator<>(...) : CollatingIterator [] : String | semmle.label | new CollatingIterator<>(...) : CollatingIterator [] : String | -| Test.java:4635:38:4635:39 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4636:9:4636:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4636:20:4636:22 | out : CollatingIterator [] : String | semmle.label | out : CollatingIterator [] : String | -| Test.java:4641:18:4641:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4641:45:4641:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4641:53:4641:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4642:10:4642:46 | new CollatingIterator<>(...) : CollatingIterator [] : String | semmle.label | new CollatingIterator<>(...) : CollatingIterator [] : String | -| Test.java:4642:44:4642:45 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4643:9:4643:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4643:20:4643:22 | out : CollatingIterator [] : String | semmle.label | out : CollatingIterator [] : String | -| Test.java:4648:20:4648:79 | {...} : Iterator[] [[], ] : String | semmle.label | {...} : Iterator[] [[], ] : String | -| Test.java:4648:35:4648:78 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4648:62:4648:77 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4648:70:4648:77 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4649:10:4649:52 | new CollatingIterator<>(...) : CollatingIterator [] : String | semmle.label | new CollatingIterator<>(...) : CollatingIterator [] : String | -| Test.java:4649:50:4649:51 | in : Iterator[] [[], ] : String | semmle.label | in : Iterator[] [[], ] : String | -| Test.java:4650:9:4650:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4650:20:4650:22 | out : CollatingIterator [] : String | semmle.label | out : CollatingIterator [] : String | -| Test.java:4655:18:4655:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4655:45:4655:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4655:53:4655:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4656:4:4656:6 | out [post update] : CollatingIterator [] : String | semmle.label | out [post update] : CollatingIterator [] : String | -| Test.java:4656:20:4656:21 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4657:9:4657:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4657:20:4657:22 | out : CollatingIterator [] : String | semmle.label | out : CollatingIterator [] : String | -| Test.java:4662:27:4662:120 | new CollatingIterator<>(...) : CollatingIterator [] : String | semmle.label | new CollatingIterator<>(...) : CollatingIterator [] : String | -| Test.java:4662:67:4662:119 | of(...) : List [, ] : String | semmle.label | of(...) : List [, ] : String | -| Test.java:4662:75:4662:118 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4662:102:4662:117 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4662:110:4662:117 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4663:10:4663:11 | in : CollatingIterator [] : String | semmle.label | in : CollatingIterator [] : String | -| Test.java:4663:10:4663:26 | getIterators(...) : List [, ] : String | semmle.label | getIterators(...) : List [, ] : String | -| Test.java:4664:9:4664:35 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4664:20:4664:34 | getElement(...) : Iterator [] : String | semmle.label | getElement(...) : Iterator [] : String | -| Test.java:4664:31:4664:33 | out : List [, ] : String | semmle.label | out : List [, ] : String | -| Test.java:4669:18:4669:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4669:45:4669:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4669:53:4669:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4670:4:4670:6 | out [post update] : CollatingIterator [] : String | semmle.label | out [post update] : CollatingIterator [] : String | -| Test.java:4670:23:4670:24 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4671:9:4671:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4671:20:4671:22 | out : CollatingIterator [] : String | semmle.label | out : CollatingIterator [] : String | -| Test.java:4676:21:4676:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | semmle.label | newEnumerationWithElement(...) : IteratorEnumeration [] : String | -| Test.java:4676:47:4676:62 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4676:55:4676:62 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4677:10:4677:42 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | semmle.label | new EnumerationIterator<>(...) : EnumerationIterator [] : String | -| Test.java:4677:34:4677:35 | in : IteratorEnumeration [] : String | semmle.label | in : IteratorEnumeration [] : String | -| Test.java:4678:9:4678:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4678:20:4678:22 | out : EnumerationIterator [] : String | semmle.label | out : EnumerationIterator [] : String | -| Test.java:4683:21:4683:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | semmle.label | newEnumerationWithElement(...) : IteratorEnumeration [] : String | -| Test.java:4683:47:4683:62 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4683:55:4683:62 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4684:10:4684:36 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | semmle.label | new EnumerationIterator<>(...) : EnumerationIterator [] : String | -| Test.java:4684:34:4684:35 | in : IteratorEnumeration [] : String | semmle.label | in : IteratorEnumeration [] : String | -| Test.java:4685:9:4685:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4685:20:4685:22 | out : EnumerationIterator [] : String | semmle.label | out : EnumerationIterator [] : String | -| Test.java:4690:29:4690:96 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | semmle.label | new EnumerationIterator<>(...) : EnumerationIterator [] : String | -| Test.java:4690:53:4690:95 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | semmle.label | newEnumerationWithElement(...) : IteratorEnumeration [] : String | -| Test.java:4690:79:4690:94 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4690:87:4690:94 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4691:10:4691:11 | in : EnumerationIterator [] : String | semmle.label | in : EnumerationIterator [] : String | -| Test.java:4691:10:4691:28 | getEnumeration(...) : Enumeration [] : String | semmle.label | getEnumeration(...) : Enumeration [] : String | -| Test.java:4692:9:4692:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4692:20:4692:22 | out : Enumeration [] : String | semmle.label | out : Enumeration [] : String | -| Test.java:4697:21:4697:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | semmle.label | newEnumerationWithElement(...) : IteratorEnumeration [] : String | -| Test.java:4697:47:4697:62 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4697:55:4697:62 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4698:4:4698:6 | out [post update] : EnumerationIterator [] : String | semmle.label | out [post update] : EnumerationIterator [] : String | -| Test.java:4698:23:4698:24 | in : IteratorEnumeration [] : String | semmle.label | in : IteratorEnumeration [] : String | -| Test.java:4699:9:4699:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4699:20:4699:22 | out : EnumerationIterator [] : String | semmle.label | out : EnumerationIterator [] : String | -| Test.java:4704:18:4704:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4704:45:4704:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4704:53:4704:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4705:10:4705:37 | new FilterIterator<>(...) : FilterIterator [] : String | semmle.label | new FilterIterator<>(...) : FilterIterator [] : String | -| Test.java:4705:29:4705:30 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4706:9:4706:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4706:20:4706:22 | out : FilterIterator [] : String | semmle.label | out : FilterIterator [] : String | -| Test.java:4711:18:4711:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4711:45:4711:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4711:53:4711:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4712:10:4712:31 | new FilterIterator<>(...) : FilterIterator [] : String | semmle.label | new FilterIterator<>(...) : FilterIterator [] : String | -| Test.java:4712:29:4712:30 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4713:9:4713:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4713:20:4713:22 | out : FilterIterator [] : String | semmle.label | out : FilterIterator [] : String | -| Test.java:4718:24:4718:87 | new FilterIterator<>(...) : FilterIterator [] : String | semmle.label | new FilterIterator<>(...) : FilterIterator [] : String | -| Test.java:4718:43:4718:86 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4718:70:4718:85 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4718:78:4718:85 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4719:10:4719:11 | in : FilterIterator [] : String | semmle.label | in : FilterIterator [] : String | -| Test.java:4719:10:4719:25 | getIterator(...) : Iterator [] : String | semmle.label | getIterator(...) : Iterator [] : String | -| Test.java:4720:9:4720:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4720:20:4720:22 | out : Iterator [] : String | semmle.label | out : Iterator [] : String | -| Test.java:4725:18:4725:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4725:45:4725:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4725:53:4725:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4726:4:4726:6 | out [post update] : FilterIterator [] : String | semmle.label | out [post update] : FilterIterator [] : String | -| Test.java:4726:20:4726:21 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4727:9:4727:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4727:20:4727:22 | out : FilterIterator [] : String | semmle.label | out : FilterIterator [] : String | -| Test.java:4732:22:4732:65 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4732:49:4732:64 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4732:57:4732:64 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4733:10:4733:35 | new FilterListIterator<>(...) : FilterListIterator [] : String | semmle.label | new FilterListIterator<>(...) : FilterListIterator [] : String | -| Test.java:4733:33:4733:34 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4734:9:4734:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4734:20:4734:22 | out : FilterListIterator [] : String | semmle.label | out : FilterListIterator [] : String | -| Test.java:4739:22:4739:65 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4739:49:4739:64 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4739:57:4739:64 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4740:10:4740:41 | new FilterListIterator<>(...) : FilterListIterator [] : String | semmle.label | new FilterListIterator<>(...) : FilterListIterator [] : String | -| Test.java:4740:33:4740:34 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4741:9:4741:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4741:20:4741:22 | out : FilterListIterator [] : String | semmle.label | out : FilterListIterator [] : String | -| Test.java:4746:28:4746:95 | new FilterListIterator<>(...) : FilterListIterator [] : String | semmle.label | new FilterListIterator<>(...) : FilterListIterator [] : String | -| Test.java:4746:51:4746:94 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4746:78:4746:93 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4746:86:4746:93 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4747:10:4747:11 | in : FilterListIterator [] : String | semmle.label | in : FilterListIterator [] : String | -| Test.java:4747:10:4747:29 | getListIterator(...) : ListIterator [] : String | semmle.label | getListIterator(...) : ListIterator [] : String | -| Test.java:4748:9:4748:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4748:20:4748:22 | out : ListIterator [] : String | semmle.label | out : ListIterator [] : String | -| Test.java:4753:22:4753:65 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4753:49:4753:64 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4753:57:4753:64 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4754:4:4754:6 | out [post update] : FilterListIterator [] : String | semmle.label | out [post update] : FilterListIterator [] : String | -| Test.java:4754:24:4754:25 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4755:9:4755:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4755:20:4755:22 | out : FilterListIterator [] : String | semmle.label | out : FilterListIterator [] : String | -| Test.java:4760:20:4760:86 | newTreeBagWithElement(...) : TreeBag [, ] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [, ] : String | -| Test.java:4760:42:4760:85 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4760:69:4760:84 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4760:77:4760:84 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4761:10:4761:30 | new IteratorChain<>(...) : IteratorChain [] : String | semmle.label | new IteratorChain<>(...) : IteratorChain [] : String | -| Test.java:4761:28:4761:29 | in : TreeBag [, ] : String | semmle.label | in : TreeBag [, ] : String | -| Test.java:4762:9:4762:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4762:20:4762:22 | out : IteratorChain [] : String | semmle.label | out : IteratorChain [] : String | -| Test.java:4767:18:4767:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4767:45:4767:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4767:53:4767:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4768:10:4768:30 | new IteratorChain<>(...) : IteratorChain [] : String | semmle.label | new IteratorChain<>(...) : IteratorChain [] : String | -| Test.java:4768:28:4768:29 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4769:9:4769:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4769:20:4769:22 | out : IteratorChain [] : String | semmle.label | out : IteratorChain [] : String | -| Test.java:4774:18:4774:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4774:45:4774:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4774:53:4774:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4775:10:4775:36 | new IteratorChain<>(...) : IteratorChain [] : String | semmle.label | new IteratorChain<>(...) : IteratorChain [] : String | -| Test.java:4775:28:4775:29 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4776:9:4776:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4776:20:4776:22 | out : IteratorChain [] : String | semmle.label | out : IteratorChain [] : String | -| Test.java:4781:18:4781:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4781:45:4781:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4781:53:4781:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4782:10:4782:36 | new IteratorChain<>(...) : IteratorChain [] : String | semmle.label | new IteratorChain<>(...) : IteratorChain [] : String | -| Test.java:4782:34:4782:35 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4783:9:4783:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4783:20:4783:22 | out : IteratorChain [] : String | semmle.label | out : IteratorChain [] : String | -| Test.java:4788:20:4788:79 | {...} : Iterator[] [[], ] : String | semmle.label | {...} : Iterator[] [[], ] : String | -| Test.java:4788:35:4788:78 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4788:62:4788:77 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4788:70:4788:77 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4789:10:4789:30 | new IteratorChain<>(...) : IteratorChain [] : String | semmle.label | new IteratorChain<>(...) : IteratorChain [] : String | -| Test.java:4789:28:4789:29 | in : Iterator[] [[], ] : String | semmle.label | in : Iterator[] [[], ] : String | -| Test.java:4790:9:4790:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4790:20:4790:22 | out : IteratorChain [] : String | semmle.label | out : IteratorChain [] : String | -| Test.java:4795:18:4795:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4795:45:4795:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4795:53:4795:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4796:4:4796:6 | out [post update] : IteratorChain [] : String | semmle.label | out [post update] : IteratorChain [] : String | -| Test.java:4796:20:4796:21 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4797:9:4797:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4797:20:4797:22 | out : IteratorChain [] : String | semmle.label | out : IteratorChain [] : String | -| Test.java:4802:18:4802:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4802:45:4802:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4802:53:4802:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4803:10:4803:36 | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | semmle.label | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | -| Test.java:4803:34:4803:35 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4804:9:4804:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4804:20:4804:22 | out : IteratorEnumeration [] : String | semmle.label | out : IteratorEnumeration [] : String | -| Test.java:4809:29:4809:97 | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | semmle.label | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | -| Test.java:4809:53:4809:96 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4809:80:4809:95 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4809:88:4809:95 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4810:10:4810:11 | in : IteratorEnumeration [] : String | semmle.label | in : IteratorEnumeration [] : String | -| Test.java:4810:10:4810:25 | getIterator(...) : Iterator [] : String | semmle.label | getIterator(...) : Iterator [] : String | -| Test.java:4811:9:4811:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4811:20:4811:22 | out : Iterator [] : String | semmle.label | out : Iterator [] : String | -| Test.java:4816:18:4816:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4816:45:4816:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4816:53:4816:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4817:4:4817:6 | out [post update] : IteratorEnumeration [] : String | semmle.label | out [post update] : IteratorEnumeration [] : String | -| Test.java:4817:20:4817:21 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4818:9:4818:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4818:20:4818:22 | out : IteratorEnumeration [] : String | semmle.label | out : IteratorEnumeration [] : String | -| Test.java:4823:18:4823:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4823:45:4823:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4823:53:4823:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4824:10:4824:40 | new IteratorIterable<>(...) : IteratorIterable [] : String | semmle.label | new IteratorIterable<>(...) : IteratorIterable [] : String | -| Test.java:4824:31:4824:32 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4825:9:4825:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4825:20:4825:22 | out : IteratorIterable [] : String | semmle.label | out : IteratorIterable [] : String | -| Test.java:4830:18:4830:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4830:45:4830:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4830:53:4830:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4831:10:4831:33 | new IteratorIterable<>(...) : IteratorIterable [] : String | semmle.label | new IteratorIterable<>(...) : IteratorIterable [] : String | -| Test.java:4831:31:4831:32 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4832:9:4832:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4832:20:4832:22 | out : IteratorIterable [] : String | semmle.label | out : IteratorIterable [] : String | -| Test.java:4837:18:4837:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4837:45:4837:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4837:53:4837:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4838:10:4838:36 | new ListIteratorWrapper<>(...) : ListIteratorWrapper [] : String | semmle.label | new ListIteratorWrapper<>(...) : ListIteratorWrapper [] : String | -| Test.java:4838:34:4838:35 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4839:9:4839:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4839:20:4839:22 | out : ListIteratorWrapper [] : String | semmle.label | out : ListIteratorWrapper [] : String | -| Test.java:4844:20:4844:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4844:42:4844:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4844:50:4844:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4845:10:4845:32 | new LoopingIterator<>(...) : LoopingIterator [] : String | semmle.label | new LoopingIterator<>(...) : LoopingIterator [] : String | -| Test.java:4845:30:4845:31 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:4846:9:4846:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4846:20:4846:22 | out : LoopingIterator [] : String | semmle.label | out : LoopingIterator [] : String | -| Test.java:4851:14:4851:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:4851:22:4851:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4851:30:4851:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4852:10:4852:36 | new LoopingListIterator<>(...) : LoopingListIterator [] : String | semmle.label | new LoopingListIterator<>(...) : LoopingListIterator [] : String | -| Test.java:4852:34:4852:35 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:4853:9:4853:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4853:20:4853:22 | out : LoopingListIterator [] : String | semmle.label | out : LoopingListIterator [] : String | -| Test.java:4858:18:4858:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | -| Test.java:4858:31:4858:46 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4858:39:4858:46 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4859:10:4859:42 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | semmle.label | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | -| Test.java:4859:34:4859:35 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:4860:9:4860:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4860:20:4860:22 | out : ObjectArrayIterator [] : String | semmle.label | out : ObjectArrayIterator [] : String | -| Test.java:4865:18:4865:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | -| Test.java:4865:31:4865:46 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4865:39:4865:46 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4866:10:4866:39 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | semmle.label | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | -| Test.java:4866:34:4866:35 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:4867:9:4867:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4867:20:4867:22 | out : ObjectArrayIterator [] : String | semmle.label | out : ObjectArrayIterator [] : String | -| Test.java:4872:18:4872:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | -| Test.java:4872:31:4872:46 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4872:39:4872:46 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4873:10:4873:36 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | semmle.label | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | -| Test.java:4873:34:4873:35 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:4874:9:4874:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4874:20:4874:22 | out : ObjectArrayIterator [] : String | semmle.label | out : ObjectArrayIterator [] : String | -| Test.java:4879:29:4879:83 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | semmle.label | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | -| Test.java:4879:53:4879:82 | new Object[] : Object[] [[]] : String | semmle.label | new Object[] : Object[] [[]] : String | -| Test.java:4879:53:4879:82 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | -| Test.java:4879:66:4879:81 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4879:74:4879:81 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4880:10:4880:11 | in : ObjectArrayIterator [] : String | semmle.label | in : ObjectArrayIterator [] : String | -| Test.java:4880:10:4880:22 | getArray(...) : Object[] [[]] : String | semmle.label | getArray(...) : Object[] [[]] : String | -| Test.java:4881:9:4881:28 | getArrayElement(...) | semmle.label | getArrayElement(...) | -| Test.java:4881:25:4881:27 | out : Object[] [[]] : String | semmle.label | out : Object[] [[]] : String | -| Test.java:4886:18:4886:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | -| Test.java:4886:31:4886:46 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4886:39:4886:46 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4887:10:4887:46 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | semmle.label | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | -| Test.java:4887:38:4887:39 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:4888:9:4888:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4888:20:4888:22 | out : ObjectArrayListIterator [] : String | semmle.label | out : ObjectArrayListIterator [] : String | -| Test.java:4893:18:4893:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | -| Test.java:4893:31:4893:46 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4893:39:4893:46 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4894:10:4894:43 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | semmle.label | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | -| Test.java:4894:38:4894:39 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:4895:9:4895:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4895:20:4895:22 | out : ObjectArrayListIterator [] : String | semmle.label | out : ObjectArrayListIterator [] : String | -| Test.java:4900:18:4900:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | -| Test.java:4900:31:4900:46 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4900:39:4900:46 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4901:10:4901:40 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | semmle.label | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | -| Test.java:4901:38:4901:39 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:4902:9:4902:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4902:20:4902:22 | out : ObjectArrayListIterator [] : String | semmle.label | out : ObjectArrayListIterator [] : String | -| Test.java:4907:18:4907:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4907:45:4907:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4907:53:4907:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4908:10:4908:32 | new PeekingIterator<>(...) : PeekingIterator [] : String | semmle.label | new PeekingIterator<>(...) : PeekingIterator [] : String | -| Test.java:4908:30:4908:31 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4909:9:4909:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4909:20:4909:22 | out : PeekingIterator [] : String | semmle.label | out : PeekingIterator [] : String | -| Test.java:4914:25:4914:89 | new PeekingIterator<>(...) : PeekingIterator [] : String | semmle.label | new PeekingIterator<>(...) : PeekingIterator [] : String | -| Test.java:4914:45:4914:88 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4914:72:4914:87 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4914:80:4914:87 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4915:10:4915:11 | in : PeekingIterator [] : String | semmle.label | in : PeekingIterator [] : String | -| Test.java:4915:10:4915:21 | element(...) : String | semmle.label | element(...) : String | -| Test.java:4916:9:4916:11 | out | semmle.label | out | -| Test.java:4921:25:4921:89 | new PeekingIterator<>(...) : PeekingIterator [] : String | semmle.label | new PeekingIterator<>(...) : PeekingIterator [] : String | -| Test.java:4921:45:4921:88 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4921:72:4921:87 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4921:80:4921:87 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4922:10:4922:11 | in : PeekingIterator [] : String | semmle.label | in : PeekingIterator [] : String | -| Test.java:4922:10:4922:18 | peek(...) : String | semmle.label | peek(...) : String | -| Test.java:4923:9:4923:11 | out | semmle.label | out | -| Test.java:4928:18:4928:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4928:45:4928:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4928:53:4928:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4929:10:4929:44 | peekingIterator(...) : PeekingIterator [] : String | semmle.label | peekingIterator(...) : PeekingIterator [] : String | -| Test.java:4929:42:4929:43 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4930:9:4930:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4930:20:4930:22 | out : PeekingIterator [] : String | semmle.label | out : PeekingIterator [] : String | -| Test.java:4935:28:4935:60 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:4935:44:4935:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4935:52:4935:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4936:10:4936:36 | new PermutationIterator<>(...) : PermutationIterator [, ] : String | semmle.label | new PermutationIterator<>(...) : PermutationIterator [, ] : String | -| Test.java:4936:34:4936:35 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:4937:9:4937:35 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4937:20:4937:34 | getElement(...) : List [] : String | semmle.label | getElement(...) : List [] : String | -| Test.java:4937:31:4937:33 | out : PermutationIterator [, ] : String | semmle.label | out : PermutationIterator [, ] : String | -| Test.java:4942:18:4942:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4942:45:4942:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4942:53:4942:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4943:10:4943:33 | new PushbackIterator<>(...) : PushbackIterator [] : String | semmle.label | new PushbackIterator<>(...) : PushbackIterator [] : String | -| Test.java:4943:31:4943:32 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4944:9:4944:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4944:20:4944:22 | out : PushbackIterator [] : String | semmle.label | out : PushbackIterator [] : String | -| Test.java:4949:16:4949:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4950:4:4950:6 | out [post update] : PushbackIterator [] : Object | semmle.label | out [post update] : PushbackIterator [] : Object | -| Test.java:4950:17:4950:18 | in : Object | semmle.label | in : Object | -| Test.java:4951:9:4951:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4951:20:4951:22 | out : PushbackIterator [] : Object | semmle.label | out : PushbackIterator [] : Object | -| Test.java:4956:18:4956:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4956:45:4956:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4956:53:4956:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4957:10:4957:46 | pushbackIterator(...) : PushbackIterator [] : String | semmle.label | pushbackIterator(...) : PushbackIterator [] : String | -| Test.java:4957:44:4957:45 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4958:9:4958:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4958:20:4958:22 | out : PushbackIterator [] : String | semmle.label | out : PushbackIterator [] : String | -| Test.java:4963:14:4963:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:4963:22:4963:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4963:30:4963:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4964:10:4964:36 | new ReverseListIterator<>(...) : ReverseListIterator [] : String | semmle.label | new ReverseListIterator<>(...) : ReverseListIterator [] : String | -| Test.java:4964:34:4964:35 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:4965:9:4965:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4965:20:4965:22 | out : ReverseListIterator [] : String | semmle.label | out : ReverseListIterator [] : String | -| Test.java:4970:16:4970:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4971:10:4971:41 | new SingletonIterator<>(...) : SingletonIterator [] : Object | semmle.label | new SingletonIterator<>(...) : SingletonIterator [] : Object | -| Test.java:4971:32:4971:33 | in : Object | semmle.label | in : Object | -| Test.java:4972:9:4972:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4972:20:4972:22 | out : SingletonIterator [] : Object | semmle.label | out : SingletonIterator [] : Object | -| Test.java:4977:16:4977:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4978:10:4978:34 | new SingletonIterator<>(...) : SingletonIterator [] : Object | semmle.label | new SingletonIterator<>(...) : SingletonIterator [] : Object | -| Test.java:4978:32:4978:33 | in : Object | semmle.label | in : Object | -| Test.java:4979:9:4979:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4979:20:4979:22 | out : SingletonIterator [] : Object | semmle.label | out : SingletonIterator [] : Object | -| Test.java:4984:16:4984:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4985:10:4985:38 | new SingletonListIterator<>(...) : SingletonListIterator [] : Object | semmle.label | new SingletonListIterator<>(...) : SingletonListIterator [] : Object | -| Test.java:4985:36:4985:37 | in : Object | semmle.label | in : Object | -| Test.java:4986:9:4986:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4986:20:4986:22 | out : SingletonListIterator [] : Object | semmle.label | out : SingletonListIterator [] : Object | -| Test.java:4991:18:4991:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4991:45:4991:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4991:53:4991:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4992:10:4992:37 | new SkippingIterator<>(...) : SkippingIterator [] : String | semmle.label | new SkippingIterator<>(...) : SkippingIterator [] : String | -| Test.java:4992:31:4992:32 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:4993:9:4993:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:4993:20:4993:22 | out : SkippingIterator [] : String | semmle.label | out : SkippingIterator [] : String | -| Test.java:4998:18:4998:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4998:45:4998:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:4998:53:4998:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:4999:10:4999:37 | new UniqueFilterIterator<>(...) : UniqueFilterIterator [] : String | semmle.label | new UniqueFilterIterator<>(...) : UniqueFilterIterator [] : String | -| Test.java:4999:35:4999:36 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:5000:9:5000:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5000:20:5000:22 | out : UniqueFilterIterator [] : String | semmle.label | out : UniqueFilterIterator [] : String | -| Test.java:5005:18:5005:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5005:45:5005:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5005:53:5005:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5006:10:5006:54 | unmodifiableIterator(...) : Iterator [] : String | semmle.label | unmodifiableIterator(...) : Iterator [] : String | -| Test.java:5006:52:5006:53 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:5007:9:5007:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5007:20:5007:22 | out : Iterator [] : String | semmle.label | out : Iterator [] : String | -| Test.java:5012:22:5012:65 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5012:49:5012:64 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5012:57:5012:64 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5013:10:5013:61 | umodifiableListIterator(...) : ListIterator [] : String | semmle.label | umodifiableListIterator(...) : ListIterator [] : String | -| Test.java:5013:59:5013:60 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:5014:9:5014:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5014:20:5014:22 | out : ListIterator [] : String | semmle.label | out : ListIterator [] : String | -| Test.java:5019:21:5019:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapKey(...) : LinkedMap [] : String | -| Test.java:5019:21:5019:74 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | -| Test.java:5019:44:5019:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5019:52:5019:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5020:10:5020:60 | unmodifiableMapIterator(...) : MapIterator [] : String | semmle.label | unmodifiableMapIterator(...) : MapIterator [] : String | -| Test.java:5020:58:5020:59 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | -| Test.java:5021:9:5021:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5021:20:5021:22 | out : MapIterator [] : String | semmle.label | out : MapIterator [] : String | -| Test.java:5026:21:5026:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapValue(...) : LinkedMap [] : String | -| Test.java:5026:21:5026:76 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | -| Test.java:5026:46:5026:61 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5026:54:5026:61 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5027:10:5027:60 | unmodifiableMapIterator(...) : MapIterator [] : String | semmle.label | unmodifiableMapIterator(...) : MapIterator [] : String | -| Test.java:5027:58:5027:59 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | -| Test.java:5028:9:5028:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5028:21:5028:23 | out : MapIterator [] : String | semmle.label | out : MapIterator [] : String | -| Test.java:5033:28:5033:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:5033:28:5033:86 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | -| Test.java:5033:56:5033:71 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5033:64:5033:71 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5034:10:5034:74 | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | semmle.label | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | -| Test.java:5034:72:5034:73 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | -| Test.java:5035:9:5035:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5035:20:5035:22 | out : OrderedMapIterator [] : String | semmle.label | out : OrderedMapIterator [] : String | -| Test.java:5040:28:5040:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:5040:28:5040:88 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | -| Test.java:5040:58:5040:73 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5040:66:5040:73 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5041:10:5041:74 | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | semmle.label | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | -| Test.java:5041:72:5041:73 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | -| Test.java:5042:9:5042:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5042:21:5042:23 | out : OrderedMapIterator [] : String | semmle.label | out : OrderedMapIterator [] : String | -| Test.java:5047:18:5047:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5047:45:5047:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5047:53:5047:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5048:10:5048:38 | new ZippingIterator<>(...) : ZippingIterator [] : String | semmle.label | new ZippingIterator<>(...) : ZippingIterator [] : String | -| Test.java:5048:30:5048:31 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:5049:9:5049:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5049:20:5049:22 | out : ZippingIterator [] : String | semmle.label | out : ZippingIterator [] : String | -| Test.java:5054:18:5054:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5054:45:5054:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5054:53:5054:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5055:10:5055:38 | new ZippingIterator<>(...) : ZippingIterator [] : String | semmle.label | new ZippingIterator<>(...) : ZippingIterator [] : String | -| Test.java:5055:36:5055:37 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:5056:9:5056:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5056:20:5056:22 | out : ZippingIterator [] : String | semmle.label | out : ZippingIterator [] : String | -| Test.java:5061:18:5061:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5061:45:5061:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5061:53:5061:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5062:10:5062:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | semmle.label | new ZippingIterator<>(...) : ZippingIterator [] : String | -| Test.java:5062:30:5062:31 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:5063:9:5063:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5063:20:5063:22 | out : ZippingIterator [] : String | semmle.label | out : ZippingIterator [] : String | -| Test.java:5068:18:5068:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5068:45:5068:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5068:53:5068:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5069:10:5069:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | semmle.label | new ZippingIterator<>(...) : ZippingIterator [] : String | -| Test.java:5069:36:5069:37 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:5070:9:5070:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5070:20:5070:22 | out : ZippingIterator [] : String | semmle.label | out : ZippingIterator [] : String | -| Test.java:5075:18:5075:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5075:45:5075:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5075:53:5075:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5076:10:5076:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | semmle.label | new ZippingIterator<>(...) : ZippingIterator [] : String | -| Test.java:5076:42:5076:43 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | -| Test.java:5077:9:5077:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5077:20:5077:22 | out : ZippingIterator [] : String | semmle.label | out : ZippingIterator [] : String | -| Test.java:5082:20:5082:79 | {...} : Iterator[] [[], ] : String | semmle.label | {...} : Iterator[] [[], ] : String | -| Test.java:5082:35:5082:78 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5082:62:5082:77 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5082:70:5082:77 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5083:10:5083:32 | new ZippingIterator<>(...) : ZippingIterator [] : String | semmle.label | new ZippingIterator<>(...) : ZippingIterator [] : String | -| Test.java:5083:30:5083:31 | in : Iterator[] [[], ] : String | semmle.label | in : Iterator[] [[], ] : String | -| Test.java:5084:9:5084:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5084:20:5084:22 | out : ZippingIterator [] : String | semmle.label | out : ZippingIterator [] : String | -| Test.java:5089:16:5089:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5090:10:5090:39 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5090:23:5090:24 | in : Object | semmle.label | in : Object | -| Test.java:5091:9:5091:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5091:20:5091:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5096:16:5096:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5097:10:5097:39 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5097:37:5097:38 | in : Object | semmle.label | in : Object | -| Test.java:5098:9:5098:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5098:20:5098:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5103:16:5103:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5104:10:5104:37 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5104:23:5104:24 | in : Object | semmle.label | in : Object | -| Test.java:5105:9:5105:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5105:20:5105:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5110:16:5110:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5111:10:5111:37 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5111:29:5111:30 | in : Object | semmle.label | in : Object | -| Test.java:5112:9:5112:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5112:20:5112:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5117:16:5117:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5118:10:5118:37 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5118:35:5118:36 | in : Object | semmle.label | in : Object | -| Test.java:5119:9:5119:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5119:20:5119:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5124:16:5124:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5125:10:5125:43 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5125:23:5125:24 | in : Object | semmle.label | in : Object | -| Test.java:5126:9:5126:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5126:20:5126:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5131:16:5131:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5132:10:5132:43 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5132:29:5132:30 | in : Object | semmle.label | in : Object | -| Test.java:5133:9:5133:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5133:20:5133:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5138:16:5138:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5139:10:5139:43 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5139:35:5139:36 | in : Object | semmle.label | in : Object | -| Test.java:5140:9:5140:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5140:20:5140:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5145:16:5145:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5146:10:5146:43 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5146:41:5146:42 | in : Object | semmle.label | in : Object | -| Test.java:5147:9:5147:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5147:20:5147:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5152:16:5152:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5153:10:5153:49 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5153:23:5153:24 | in : Object | semmle.label | in : Object | -| Test.java:5154:9:5154:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5154:20:5154:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5159:16:5159:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5160:10:5160:49 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5160:29:5160:30 | in : Object | semmle.label | in : Object | -| Test.java:5161:9:5161:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5161:20:5161:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5166:16:5166:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5167:10:5167:49 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5167:35:5167:36 | in : Object | semmle.label | in : Object | -| Test.java:5168:9:5168:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5168:20:5168:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5173:16:5173:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5174:10:5174:49 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5174:41:5174:42 | in : Object | semmle.label | in : Object | -| Test.java:5175:9:5175:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5175:20:5175:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5180:16:5180:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5181:10:5181:49 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | -| Test.java:5181:47:5181:48 | in : Object | semmle.label | in : Object | -| Test.java:5182:9:5182:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5182:20:5182:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | -| Test.java:5187:18:5187:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | -| Test.java:5187:31:5187:46 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5187:39:5187:46 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5188:10:5188:25 | new MultiKey<>(...) : MultiKey [] : String | semmle.label | new MultiKey<>(...) : MultiKey [] : String | -| Test.java:5188:23:5188:24 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:5189:9:5189:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5189:20:5189:22 | out : MultiKey [] : String | semmle.label | out : MultiKey [] : String | -| Test.java:5194:18:5194:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | -| Test.java:5194:31:5194:46 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5194:39:5194:46 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5195:10:5195:32 | new MultiKey<>(...) : MultiKey [] : String | semmle.label | new MultiKey<>(...) : MultiKey [] : String | -| Test.java:5195:23:5195:24 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | -| Test.java:5196:9:5196:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5196:20:5196:22 | out : MultiKey [] : String | semmle.label | out : MultiKey [] : String | -| Test.java:5201:18:5201:57 | newMultiKeyWithElement(...) : MultiKey [] : String | semmle.label | newMultiKeyWithElement(...) : MultiKey [] : String | -| Test.java:5201:41:5201:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5201:49:5201:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5202:10:5202:11 | in : MultiKey [] : String | semmle.label | in : MultiKey [] : String | -| Test.java:5202:10:5202:21 | getKey(...) : String | semmle.label | getKey(...) : String | -| Test.java:5203:9:5203:11 | out | semmle.label | out | -| Test.java:5208:18:5208:57 | newMultiKeyWithElement(...) : MultiKey [] : String | semmle.label | newMultiKeyWithElement(...) : MultiKey [] : String | -| Test.java:5208:41:5208:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5208:49:5208:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5209:10:5209:11 | in : MultiKey [] : String | semmle.label | in : MultiKey [] : String | -| Test.java:5209:10:5209:21 | getKeys(...) : Object[] [[]] : String | semmle.label | getKeys(...) : Object[] [[]] : String | -| Test.java:5210:9:5210:28 | getArrayElement(...) | semmle.label | getArrayElement(...) | -| Test.java:5210:25:5210:27 | out : Object[] [[]] : String | semmle.label | out : Object[] [[]] : String | -| Test.java:5215:20:5215:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:5215:42:5215:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5215:50:5215:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5216:10:5216:37 | new MyAbstractLinkedList<>(...) : MyAbstractLinkedList [] : String | semmle.label | new MyAbstractLinkedList<>(...) : MyAbstractLinkedList [] : String | -| Test.java:5216:35:5216:36 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:5217:9:5217:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5217:20:5217:22 | out : MyAbstractLinkedList [] : String | semmle.label | out : MyAbstractLinkedList [] : String | -| Test.java:5222:16:5222:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5223:4:5223:6 | out [post update] : AbstractLinkedList [] : Object | semmle.label | out [post update] : AbstractLinkedList [] : Object | -| Test.java:5223:17:5223:18 | in : Object | semmle.label | in : Object | -| Test.java:5224:9:5224:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5224:20:5224:22 | out : AbstractLinkedList [] : Object | semmle.label | out : AbstractLinkedList [] : Object | -| Test.java:5229:16:5229:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5230:4:5230:6 | out [post update] : AbstractLinkedList [] : Object | semmle.label | out [post update] : AbstractLinkedList [] : Object | -| Test.java:5230:16:5230:17 | in : Object | semmle.label | in : Object | -| Test.java:5231:9:5231:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5231:20:5231:22 | out : AbstractLinkedList [] : Object | semmle.label | out : AbstractLinkedList [] : Object | -| Test.java:5236:28:5236:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | semmle.label | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | -| Test.java:5236:63:5236:78 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5236:71:5236:78 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5237:10:5237:11 | in : CursorableLinkedList [] : String | semmle.label | in : CursorableLinkedList [] : String | -| Test.java:5237:10:5237:22 | getFirst(...) : String | semmle.label | getFirst(...) : String | -| Test.java:5238:9:5238:11 | out | semmle.label | out | -| Test.java:5243:28:5243:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | semmle.label | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | -| Test.java:5243:63:5243:78 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5243:71:5243:78 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5244:10:5244:11 | in : CursorableLinkedList [] : String | semmle.label | in : CursorableLinkedList [] : String | -| Test.java:5244:10:5244:21 | getLast(...) : String | semmle.label | getLast(...) : String | -| Test.java:5245:9:5245:11 | out | semmle.label | out | -| Test.java:5250:28:5250:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | semmle.label | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | -| Test.java:5250:63:5250:78 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5250:71:5250:78 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5251:10:5251:11 | in : CursorableLinkedList [] : String | semmle.label | in : CursorableLinkedList [] : String | -| Test.java:5251:10:5251:25 | removeFirst(...) : String | semmle.label | removeFirst(...) : String | -| Test.java:5252:9:5252:11 | out | semmle.label | out | -| Test.java:5257:28:5257:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | semmle.label | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | -| Test.java:5257:63:5257:78 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5257:71:5257:78 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5258:10:5258:11 | in : CursorableLinkedList [] : String | semmle.label | in : CursorableLinkedList [] : String | -| Test.java:5258:10:5258:24 | removeLast(...) : String | semmle.label | removeLast(...) : String | -| Test.java:5259:9:5259:11 | out | semmle.label | out | -| Test.java:5264:14:5264:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5264:22:5264:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5264:30:5264:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5265:10:5265:40 | new MyAbstractListDecorator<>(...) : MyAbstractListDecorator [] : String | semmle.label | new MyAbstractListDecorator<>(...) : MyAbstractListDecorator [] : String | -| Test.java:5265:38:5265:39 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5266:9:5266:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5266:20:5266:22 | out : MyAbstractListDecorator [] : String | semmle.label | out : MyAbstractListDecorator [] : String | -| Test.java:5271:14:5271:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5271:22:5271:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5271:30:5271:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5272:10:5272:52 | new MyAbstractSerializableListDecorator<>(...) : MyAbstractSerializableListDecorator [] : String | semmle.label | new MyAbstractSerializableListDecorator<>(...) : MyAbstractSerializableListDecorator [] : String | -| Test.java:5272:50:5272:51 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5273:9:5273:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5273:20:5273:22 | out : MyAbstractSerializableListDecorator [] : String | semmle.label | out : MyAbstractSerializableListDecorator [] : String | -| Test.java:5278:20:5278:44 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5278:28:5278:43 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5278:36:5278:43 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5279:10:5279:37 | new CursorableLinkedList<>(...) : CursorableLinkedList [] : String | semmle.label | new CursorableLinkedList<>(...) : CursorableLinkedList [] : String | -| Test.java:5279:35:5279:36 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5280:9:5280:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5280:20:5280:22 | out : CursorableLinkedList [] : String | semmle.label | out : CursorableLinkedList [] : String | -| Test.java:5285:30:5285:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | semmle.label | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | -| Test.java:5285:65:5285:80 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5285:73:5285:80 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5286:10:5286:11 | in : CursorableLinkedList [] : String | semmle.label | in : CursorableLinkedList [] : String | -| Test.java:5286:10:5286:21 | cursor(...) : Cursor [] : String | semmle.label | cursor(...) : Cursor [] : String | -| Test.java:5287:9:5287:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5287:20:5287:22 | out : Cursor [] : String | semmle.label | out : Cursor [] : String | -| Test.java:5292:30:5292:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | semmle.label | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | -| Test.java:5292:65:5292:80 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5292:73:5292:80 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5293:10:5293:11 | in : CursorableLinkedList [] : String | semmle.label | in : CursorableLinkedList [] : String | -| Test.java:5293:10:5293:20 | cursor(...) : Cursor [] : String | semmle.label | cursor(...) : Cursor [] : String | -| Test.java:5294:9:5294:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5294:20:5294:22 | out : Cursor [] : String | semmle.label | out : Cursor [] : String | -| Test.java:5299:14:5299:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5299:22:5299:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5299:30:5299:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5300:10:5300:40 | fixedSizeList(...) : FixedSizeList [] : String | semmle.label | fixedSizeList(...) : FixedSizeList [] : String | -| Test.java:5300:38:5300:39 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5301:9:5301:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5301:20:5301:22 | out : FixedSizeList [] : String | semmle.label | out : FixedSizeList [] : String | -| Test.java:5306:14:5306:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5306:22:5306:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5306:30:5306:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5307:10:5307:34 | growthList(...) : GrowthList [] : String | semmle.label | growthList(...) : GrowthList [] : String | -| Test.java:5307:32:5307:33 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5308:9:5308:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5308:20:5308:22 | out : GrowthList [] : String | semmle.label | out : GrowthList [] : String | -| Test.java:5313:14:5313:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5313:22:5313:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5313:30:5313:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5314:10:5314:49 | lazyList(...) : LazyList [] : String | semmle.label | lazyList(...) : LazyList [] : String | -| Test.java:5314:28:5314:29 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5315:9:5315:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5315:20:5315:22 | out : LazyList [] : String | semmle.label | out : LazyList [] : String | -| Test.java:5320:14:5320:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5320:22:5320:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5320:30:5320:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5321:10:5321:45 | lazyList(...) : LazyList [] : String | semmle.label | lazyList(...) : LazyList [] : String | -| Test.java:5321:28:5321:29 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5322:9:5322:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5322:20:5322:22 | out : LazyList [] : String | semmle.label | out : LazyList [] : String | -| Test.java:5327:20:5327:44 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5327:28:5327:43 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5327:36:5327:43 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5328:10:5328:38 | new NodeCachingLinkedList<>(...) : NodeCachingLinkedList [] : String | semmle.label | new NodeCachingLinkedList<>(...) : NodeCachingLinkedList [] : String | -| Test.java:5328:36:5328:37 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5329:9:5329:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5329:20:5329:22 | out : NodeCachingLinkedList [] : String | semmle.label | out : NodeCachingLinkedList [] : String | -| Test.java:5334:14:5334:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5334:22:5334:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5334:30:5334:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5335:10:5335:48 | predicatedList(...) : PredicatedList [] : String | semmle.label | predicatedList(...) : PredicatedList [] : String | -| Test.java:5335:40:5335:41 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5336:9:5336:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5336:20:5336:22 | out : PredicatedList [] : String | semmle.label | out : PredicatedList [] : String | -| Test.java:5341:23:5341:76 | setUniqueList(...) : SetUniqueList [] : String | semmle.label | setUniqueList(...) : SetUniqueList [] : String | -| Test.java:5341:51:5341:75 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5341:59:5341:74 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5341:67:5341:74 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5342:10:5342:11 | in : SetUniqueList [] : String | semmle.label | in : SetUniqueList [] : String | -| Test.java:5342:10:5342:19 | asSet(...) : Set [] : String | semmle.label | asSet(...) : Set [] : String | -| Test.java:5343:9:5343:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5343:20:5343:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:5348:14:5348:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5348:22:5348:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5348:30:5348:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5349:10:5349:40 | setUniqueList(...) : SetUniqueList [] : String | semmle.label | setUniqueList(...) : SetUniqueList [] : String | -| Test.java:5349:38:5349:39 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5350:9:5350:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5350:20:5350:22 | out : SetUniqueList [] : String | semmle.label | out : SetUniqueList [] : String | -| Test.java:5355:14:5355:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5355:22:5355:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5355:30:5355:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5356:10:5356:51 | transformingList(...) : TransformedList [] : String | semmle.label | transformingList(...) : TransformedList [] : String | -| Test.java:5356:43:5356:44 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5357:9:5357:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5357:20:5357:22 | out : TransformedList [] : String | semmle.label | out : TransformedList [] : String | -| Test.java:5362:20:5362:44 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5362:28:5362:43 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5362:36:5362:43 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5363:10:5363:25 | new TreeList<>(...) : TreeList [] : String | semmle.label | new TreeList<>(...) : TreeList [] : String | -| Test.java:5363:23:5363:24 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5364:9:5364:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5364:20:5364:22 | out : TreeList [] : String | semmle.label | out : TreeList [] : String | -| Test.java:5369:14:5369:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5369:22:5369:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5369:30:5369:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5370:10:5370:33 | new UnmodifiableList<>(...) : UnmodifiableList [] : String | semmle.label | new UnmodifiableList<>(...) : UnmodifiableList [] : String | -| Test.java:5370:31:5370:32 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5371:9:5371:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5371:20:5371:22 | out : UnmodifiableList [] : String | semmle.label | out : UnmodifiableList [] : String | -| Test.java:5376:14:5376:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:5376:22:5376:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5376:30:5376:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5377:10:5377:46 | unmodifiableList(...) : List [] : String | semmle.label | unmodifiableList(...) : List [] : String | -| Test.java:5377:44:5377:45 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:5378:9:5378:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5378:20:5378:22 | out : List [] : String | semmle.label | out : List [] : String | -| Test.java:5383:13:5383:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5383:20:5383:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5383:28:5383:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5384:10:5384:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | semmle.label | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | -| Test.java:5384:34:5384:35 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5385:9:5385:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5385:19:5385:21 | out : MyAbstractHashedMap [] : String | semmle.label | out : MyAbstractHashedMap [] : String | -| Test.java:5390:13:5390:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5390:26:5390:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5390:34:5390:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5391:10:5391:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | semmle.label | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | -| Test.java:5391:34:5391:35 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5392:9:5392:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5392:21:5392:23 | out : MyAbstractHashedMap [] : String | semmle.label | out : MyAbstractHashedMap [] : String | -| Test.java:5397:13:5397:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5397:20:5397:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5397:28:5397:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5398:10:5398:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | semmle.label | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | -| Test.java:5398:34:5398:35 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5399:9:5399:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5399:19:5399:21 | out : MyAbstractLinkedMap [] : String | semmle.label | out : MyAbstractLinkedMap [] : String | -| Test.java:5404:13:5404:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5404:26:5404:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5404:34:5404:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5405:10:5405:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | semmle.label | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | -| Test.java:5405:34:5405:35 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5406:9:5406:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5406:21:5406:23 | out : MyAbstractLinkedMap [] : String | semmle.label | out : MyAbstractLinkedMap [] : String | -| Test.java:5411:13:5411:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5411:20:5411:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5411:28:5411:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5412:10:5412:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | semmle.label | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | -| Test.java:5412:37:5412:38 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5413:9:5413:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5413:19:5413:21 | out : MyAbstractMapDecorator [] : String | semmle.label | out : MyAbstractMapDecorator [] : String | -| Test.java:5418:13:5418:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5418:26:5418:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5418:34:5418:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5419:10:5419:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | semmle.label | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | -| Test.java:5419:37:5419:38 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5420:9:5420:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5420:21:5420:23 | out : MyAbstractMapDecorator [] : String | semmle.label | out : MyAbstractMapDecorator [] : String | -| Test.java:5425:32:5425:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | semmle.label | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | -| Test.java:5425:59:5425:88 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5425:66:5425:81 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5425:74:5425:81 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5426:10:5426:11 | in : MyAbstractMapDecorator [] : String | semmle.label | in : MyAbstractMapDecorator [] : String | -| Test.java:5426:10:5426:25 | myDecorated(...) : Map [] : String | semmle.label | myDecorated(...) : Map [] : String | -| Test.java:5427:9:5427:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5427:19:5427:21 | out : Map [] : String | semmle.label | out : Map [] : String | -| Test.java:5432:32:5432:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | semmle.label | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | -| Test.java:5432:59:5432:88 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5432:72:5432:87 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5432:80:5432:87 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5433:10:5433:11 | in : MyAbstractMapDecorator [] : String | semmle.label | in : MyAbstractMapDecorator [] : String | -| Test.java:5433:10:5433:25 | myDecorated(...) : Map [] : String | semmle.label | myDecorated(...) : Map [] : String | -| Test.java:5434:9:5434:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5434:21:5434:23 | out : Map [] : String | semmle.label | out : Map [] : String | -| Test.java:5439:20:5439:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:5439:48:5439:63 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5439:56:5439:63 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5440:10:5440:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | semmle.label | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | -| Test.java:5440:44:5440:45 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | -| Test.java:5441:9:5441:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5441:19:5441:21 | out : MyAbstractOrderedMapDecorator [] : String | semmle.label | out : MyAbstractOrderedMapDecorator [] : String | -| Test.java:5446:20:5446:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:5446:50:5446:65 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5446:58:5446:65 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5447:10:5447:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | semmle.label | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | -| Test.java:5447:44:5447:45 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | -| Test.java:5448:9:5448:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5448:21:5448:23 | out : MyAbstractOrderedMapDecorator [] : String | semmle.label | out : MyAbstractOrderedMapDecorator [] : String | -| Test.java:5453:19:5453:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:5453:40:5453:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5453:48:5453:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5454:10:5454:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | semmle.label | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | -| Test.java:5454:43:5454:44 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:5455:9:5455:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5455:19:5455:21 | out : MyAbstractSortedMapDecorator [] : String | semmle.label | out : MyAbstractSortedMapDecorator [] : String | -| Test.java:5460:19:5460:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:5460:42:5460:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5460:50:5460:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5461:10:5461:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | semmle.label | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | -| Test.java:5461:43:5461:44 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:5462:9:5462:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5462:21:5462:23 | out : MyAbstractSortedMapDecorator [] : String | semmle.label | out : MyAbstractSortedMapDecorator [] : String | -| Test.java:5467:13:5467:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5467:20:5467:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5467:28:5467:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5468:10:5468:35 | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | semmle.label | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | -| Test.java:5468:33:5468:34 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5469:9:5469:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5469:19:5469:21 | out : CaseInsensitiveMap [] : String | semmle.label | out : CaseInsensitiveMap [] : String | -| Test.java:5474:13:5474:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5474:26:5474:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5474:34:5474:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5475:10:5475:35 | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | semmle.label | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | -| Test.java:5475:33:5475:34 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5476:9:5476:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5476:21:5476:23 | out : CaseInsensitiveMap [] : String | semmle.label | out : CaseInsensitiveMap [] : String | -| Test.java:5481:13:5481:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5481:20:5481:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5481:28:5481:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5482:10:5482:40 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5482:27:5482:28 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5483:9:5483:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5483:19:5483:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5488:13:5488:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5488:20:5488:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5488:28:5488:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5489:10:5489:40 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5489:38:5489:39 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5490:9:5490:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5490:19:5490:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5495:13:5495:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5495:26:5495:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5495:34:5495:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5496:10:5496:40 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5496:27:5496:28 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5497:9:5497:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5497:21:5497:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5502:13:5502:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5502:26:5502:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5502:34:5502:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5503:10:5503:40 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5503:38:5503:39 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5504:9:5504:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5504:21:5504:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5509:13:5509:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5509:20:5509:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5509:28:5509:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5510:10:5510:41 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5510:27:5510:28 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5511:9:5511:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5511:19:5511:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5516:13:5516:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5516:20:5516:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5516:28:5516:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5517:10:5517:41 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5517:33:5517:34 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5518:9:5518:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5518:19:5518:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5523:13:5523:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5523:26:5523:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5523:34:5523:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5524:10:5524:41 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5524:27:5524:28 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5525:9:5525:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5525:21:5525:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5530:13:5530:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5530:26:5530:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5530:34:5530:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5531:10:5531:41 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5531:33:5531:34 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5532:9:5532:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5532:21:5532:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5537:15:5537:55 | {...} : Map[] [[], ] : String | semmle.label | {...} : Map[] [[], ] : String | -| Test.java:5537:25:5537:54 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5537:32:5537:47 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5537:40:5537:47 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5538:10:5538:29 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5538:27:5538:28 | in : Map[] [[], ] : String | semmle.label | in : Map[] [[], ] : String | -| Test.java:5539:9:5539:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5539:19:5539:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5544:15:5544:55 | {...} : Map[] [[], ] : String | semmle.label | {...} : Map[] [[], ] : String | -| Test.java:5544:25:5544:54 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5544:38:5544:53 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5544:46:5544:53 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5545:10:5545:29 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5545:27:5545:28 | in : Map[] [[], ] : String | semmle.label | in : Map[] [[], ] : String | -| Test.java:5546:9:5546:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5546:21:5546:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5551:15:5551:55 | {...} : Map[] [[], ] : String | semmle.label | {...} : Map[] [[], ] : String | -| Test.java:5551:25:5551:54 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5551:32:5551:47 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5551:40:5551:47 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5552:10:5552:60 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5552:27:5552:28 | in : Map[] [[], ] : String | semmle.label | in : Map[] [[], ] : String | -| Test.java:5553:9:5553:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5553:19:5553:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5558:15:5558:55 | {...} : Map[] [[], ] : String | semmle.label | {...} : Map[] [[], ] : String | -| Test.java:5558:25:5558:54 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5558:38:5558:53 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5558:46:5558:53 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5559:10:5559:60 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5559:27:5559:28 | in : Map[] [[], ] : String | semmle.label | in : Map[] [[], ] : String | -| Test.java:5560:9:5560:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5560:21:5560:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5565:13:5565:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5565:20:5565:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5565:28:5565:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5566:4:5566:6 | out [post update] : CompositeMap [] : String | semmle.label | out [post update] : CompositeMap [] : String | -| Test.java:5566:22:5566:23 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5567:9:5567:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5567:19:5567:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5572:13:5572:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5572:26:5572:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5572:34:5572:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5573:4:5573:6 | out [post update] : CompositeMap [] : String | semmle.label | out [post update] : CompositeMap [] : String | -| Test.java:5573:22:5573:23 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5574:9:5574:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5574:21:5574:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | -| Test.java:5579:13:5579:25 | (...)... : Map | semmle.label | (...)... : Map | -| Test.java:5579:18:5579:25 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5581:10:5581:38 | removeComposited(...) : Map | semmle.label | removeComposited(...) : Map | -| Test.java:5581:36:5581:37 | in : Map | semmle.label | in : Map | -| Test.java:5582:9:5582:11 | out | semmle.label | out | -| Test.java:5587:22:5587:75 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5587:39:5587:68 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5587:46:5587:61 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5587:54:5587:61 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5588:10:5588:11 | in : CompositeMap [] : String | semmle.label | in : CompositeMap [] : String | -| Test.java:5588:10:5588:34 | removeComposited(...) : Map [] : String | semmle.label | removeComposited(...) : Map [] : String | -| Test.java:5589:9:5589:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5589:19:5589:21 | out : Map [] : String | semmle.label | out : Map [] : String | -| Test.java:5594:22:5594:75 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | -| Test.java:5594:39:5594:68 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5594:52:5594:67 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5594:60:5594:67 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5595:10:5595:11 | in : CompositeMap [] : String | semmle.label | in : CompositeMap [] : String | -| Test.java:5595:10:5595:34 | removeComposited(...) : Map [] : String | semmle.label | removeComposited(...) : Map [] : String | -| Test.java:5596:9:5596:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5596:21:5596:23 | out : Map [] : String | semmle.label | out : Map [] : String | -| Test.java:5601:16:5601:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5602:10:5602:29 | new DefaultedMap<>(...) : DefaultedMap [] : Object | semmle.label | new DefaultedMap<>(...) : DefaultedMap [] : Object | -| Test.java:5602:27:5602:28 | in : Object | semmle.label | in : Object | -| Test.java:5603:9:5603:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5603:21:5603:23 | out : DefaultedMap [] : Object | semmle.label | out : DefaultedMap [] : Object | -| Test.java:5608:16:5608:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5609:10:5609:49 | defaultedMap(...) : DefaultedMap [] : Object | semmle.label | defaultedMap(...) : DefaultedMap [] : Object | -| Test.java:5609:47:5609:48 | in : Object | semmle.label | in : Object | -| Test.java:5610:9:5610:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5610:21:5610:23 | out : DefaultedMap [] : Object | semmle.label | out : DefaultedMap [] : Object | -| Test.java:5615:28:5615:57 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5615:35:5615:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5615:43:5615:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5616:10:5616:57 | defaultedMap(...) : Map [] : String | semmle.label | defaultedMap(...) : Map [] : String | -| Test.java:5616:36:5616:37 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5617:9:5617:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5617:19:5617:21 | out : Map [] : String | semmle.label | out : Map [] : String | -| Test.java:5622:13:5622:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5622:20:5622:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5622:28:5622:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5623:10:5623:52 | defaultedMap(...) : DefaultedMap [] : String | semmle.label | defaultedMap(...) : DefaultedMap [] : String | -| Test.java:5623:36:5623:37 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5624:9:5624:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5624:19:5624:21 | out : DefaultedMap [] : String | semmle.label | out : DefaultedMap [] : String | -| Test.java:5629:28:5629:57 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5629:35:5629:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5629:43:5629:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5630:10:5630:53 | defaultedMap(...) : DefaultedMap [] : String | semmle.label | defaultedMap(...) : DefaultedMap [] : String | -| Test.java:5630:36:5630:37 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5631:9:5631:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5631:19:5631:21 | out : DefaultedMap [] : String | semmle.label | out : DefaultedMap [] : String | -| Test.java:5636:28:5636:57 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5636:41:5636:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5636:49:5636:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5637:10:5637:57 | defaultedMap(...) : Map [] : String | semmle.label | defaultedMap(...) : Map [] : String | -| Test.java:5637:36:5637:37 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5638:9:5638:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5638:21:5638:23 | out : Map [] : String | semmle.label | out : Map [] : String | -| Test.java:5643:13:5643:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5643:26:5643:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5643:34:5643:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5644:10:5644:52 | defaultedMap(...) : DefaultedMap [] : String | semmle.label | defaultedMap(...) : DefaultedMap [] : String | -| Test.java:5644:36:5644:37 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5645:9:5645:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5645:21:5645:23 | out : DefaultedMap [] : String | semmle.label | out : DefaultedMap [] : String | -| Test.java:5650:28:5650:57 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5650:41:5650:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5650:49:5650:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5651:10:5651:53 | defaultedMap(...) : DefaultedMap [] : String | semmle.label | defaultedMap(...) : DefaultedMap [] : String | -| Test.java:5651:36:5651:37 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5652:9:5652:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5652:21:5652:23 | out : DefaultedMap [] : String | semmle.label | out : DefaultedMap [] : String | -| Test.java:5657:13:5657:76 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | -| Test.java:5657:42:5657:75 | newTMEWithMapKey(...) : TiedMapEntry [] : String | semmle.label | newTMEWithMapKey(...) : TiedMapEntry [] : String | -| Test.java:5657:59:5657:74 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5657:67:5657:74 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5658:10:5658:45 | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | semmle.label | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | -| Test.java:5658:43:5658:44 | in : ListOrderedSet [, ] : String | semmle.label | in : ListOrderedSet [, ] : String | -| Test.java:5659:9:5659:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5659:20:5659:22 | out : EntrySetToMapIteratorAdapter [] : String | semmle.label | out : EntrySetToMapIteratorAdapter [] : String | -| Test.java:5664:13:5664:78 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | -| Test.java:5664:42:5664:77 | newTMEWithMapValue(...) : TiedMapEntry [] : String | semmle.label | newTMEWithMapValue(...) : TiedMapEntry [] : String | -| Test.java:5664:61:5664:76 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5664:69:5664:76 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5665:10:5665:45 | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | semmle.label | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | -| Test.java:5665:43:5665:44 | in : ListOrderedSet [, ] : String | semmle.label | in : ListOrderedSet [, ] : String | -| Test.java:5666:9:5666:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5666:21:5666:23 | out : EntrySetToMapIteratorAdapter [] : String | semmle.label | out : EntrySetToMapIteratorAdapter [] : String | -| Test.java:5671:13:5671:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5671:20:5671:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5671:28:5671:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5672:10:5672:38 | fixedSizeMap(...) : FixedSizeMap [] : String | semmle.label | fixedSizeMap(...) : FixedSizeMap [] : String | -| Test.java:5672:36:5672:37 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5673:9:5673:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5673:19:5673:21 | out : FixedSizeMap [] : String | semmle.label | out : FixedSizeMap [] : String | -| Test.java:5678:13:5678:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5678:26:5678:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5678:34:5678:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5679:10:5679:38 | fixedSizeMap(...) : FixedSizeMap [] : String | semmle.label | fixedSizeMap(...) : FixedSizeMap [] : String | -| Test.java:5679:36:5679:37 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5680:9:5680:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5680:21:5680:23 | out : FixedSizeMap [] : String | semmle.label | out : FixedSizeMap [] : String | -| Test.java:5685:19:5685:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:5685:40:5685:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5685:48:5685:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5686:10:5686:50 | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | semmle.label | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | -| Test.java:5686:48:5686:49 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:5687:9:5687:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5687:19:5687:21 | out : FixedSizeSortedMap [] : String | semmle.label | out : FixedSizeSortedMap [] : String | -| Test.java:5692:19:5692:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:5692:42:5692:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5692:50:5692:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5693:10:5693:50 | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | semmle.label | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | -| Test.java:5693:48:5693:49 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:5694:9:5694:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5694:21:5694:23 | out : FixedSizeSortedMap [] : String | semmle.label | out : FixedSizeSortedMap [] : String | -| Test.java:5699:13:5699:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5699:20:5699:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5699:28:5699:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5700:10:5700:25 | new Flat3Map<>(...) : Flat3Map [] : String | semmle.label | new Flat3Map<>(...) : Flat3Map [] : String | -| Test.java:5700:23:5700:24 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5701:9:5701:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5701:19:5701:21 | out : Flat3Map [] : String | semmle.label | out : Flat3Map [] : String | -| Test.java:5706:13:5706:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5706:26:5706:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5706:34:5706:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5707:10:5707:25 | new Flat3Map<>(...) : Flat3Map [] : String | semmle.label | new Flat3Map<>(...) : Flat3Map [] : String | -| Test.java:5707:23:5707:24 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5708:9:5708:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5708:21:5708:23 | out : Flat3Map [] : String | semmle.label | out : Flat3Map [] : String | -| Test.java:5713:13:5713:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5713:20:5713:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5713:28:5713:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5714:10:5714:26 | new HashedMap<>(...) : HashedMap [] : String | semmle.label | new HashedMap<>(...) : HashedMap [] : String | -| Test.java:5714:24:5714:25 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5715:9:5715:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5715:19:5715:21 | out : HashedMap [] : String | semmle.label | out : HashedMap [] : String | -| Test.java:5720:13:5720:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5720:26:5720:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5720:34:5720:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5721:10:5721:26 | new HashedMap<>(...) : HashedMap [] : String | semmle.label | new HashedMap<>(...) : HashedMap [] : String | -| Test.java:5721:24:5721:25 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5722:9:5722:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5722:21:5722:23 | out : HashedMap [] : String | semmle.label | out : HashedMap [] : String | -| Test.java:5727:13:5727:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5727:20:5727:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5727:28:5727:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5728:10:5728:23 | new LRUMap<>(...) : LRUMap [] : String | semmle.label | new LRUMap<>(...) : LRUMap [] : String | -| Test.java:5728:21:5728:22 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5729:9:5729:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5729:19:5729:21 | out : LRUMap [] : String | semmle.label | out : LRUMap [] : String | -| Test.java:5734:13:5734:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5734:26:5734:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5734:34:5734:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5735:10:5735:23 | new LRUMap<>(...) : LRUMap [] : String | semmle.label | new LRUMap<>(...) : LRUMap [] : String | -| Test.java:5735:21:5735:22 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5736:9:5736:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5736:21:5736:23 | out : LRUMap [] : String | semmle.label | out : LRUMap [] : String | -| Test.java:5741:13:5741:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5741:20:5741:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5741:28:5741:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5742:10:5742:30 | new LRUMap<>(...) : LRUMap [] : String | semmle.label | new LRUMap<>(...) : LRUMap [] : String | -| Test.java:5742:21:5742:22 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5743:9:5743:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5743:19:5743:21 | out : LRUMap [] : String | semmle.label | out : LRUMap [] : String | -| Test.java:5748:13:5748:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5748:26:5748:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5748:34:5748:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5749:10:5749:30 | new LRUMap<>(...) : LRUMap [] : String | semmle.label | new LRUMap<>(...) : LRUMap [] : String | -| Test.java:5749:21:5749:22 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5750:9:5750:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5750:21:5750:23 | out : LRUMap [] : String | semmle.label | out : LRUMap [] : String | -| Test.java:5755:16:5755:53 | (...)... : Map [] : String | semmle.label | (...)... : Map [] : String | -| Test.java:5755:24:5755:53 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5755:37:5755:52 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5755:45:5755:52 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5757:10:5757:32 | get(...) : String | semmle.label | get(...) : String | -| Test.java:5757:23:5757:24 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5758:9:5758:11 | out | semmle.label | out | -| Test.java:5763:13:5763:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5763:20:5763:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5763:28:5763:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5764:10:5764:47 | lazyMap(...) : LazyMap [] : String | semmle.label | lazyMap(...) : LazyMap [] : String | -| Test.java:5764:26:5764:27 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5765:9:5765:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5765:19:5765:21 | out : LazyMap [] : String | semmle.label | out : LazyMap [] : String | -| Test.java:5770:13:5770:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5770:20:5770:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5770:28:5770:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5771:10:5771:43 | lazyMap(...) : LazyMap [] : String | semmle.label | lazyMap(...) : LazyMap [] : String | -| Test.java:5771:26:5771:27 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5772:9:5772:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5772:19:5772:21 | out : LazyMap [] : String | semmle.label | out : LazyMap [] : String | -| Test.java:5777:13:5777:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5777:26:5777:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5777:34:5777:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5778:10:5778:47 | lazyMap(...) : LazyMap [] : String | semmle.label | lazyMap(...) : LazyMap [] : String | -| Test.java:5778:26:5778:27 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5779:9:5779:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5779:21:5779:23 | out : LazyMap [] : String | semmle.label | out : LazyMap [] : String | -| Test.java:5784:13:5784:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5784:26:5784:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5784:34:5784:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5785:10:5785:43 | lazyMap(...) : LazyMap [] : String | semmle.label | lazyMap(...) : LazyMap [] : String | -| Test.java:5785:26:5785:27 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5786:9:5786:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5786:21:5786:23 | out : LazyMap [] : String | semmle.label | out : LazyMap [] : String | -| Test.java:5791:19:5791:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:5791:40:5791:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5791:48:5791:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5792:10:5792:59 | lazySortedMap(...) : LazySortedMap [] : String | semmle.label | lazySortedMap(...) : LazySortedMap [] : String | -| Test.java:5792:38:5792:39 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:5793:9:5793:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5793:19:5793:21 | out : LazySortedMap [] : String | semmle.label | out : LazySortedMap [] : String | -| Test.java:5798:19:5798:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:5798:40:5798:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5798:48:5798:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5799:10:5799:55 | lazySortedMap(...) : LazySortedMap [] : String | semmle.label | lazySortedMap(...) : LazySortedMap [] : String | -| Test.java:5799:38:5799:39 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:5800:9:5800:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5800:19:5800:21 | out : LazySortedMap [] : String | semmle.label | out : LazySortedMap [] : String | -| Test.java:5805:19:5805:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:5805:42:5805:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5805:50:5805:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5806:10:5806:59 | lazySortedMap(...) : LazySortedMap [] : String | semmle.label | lazySortedMap(...) : LazySortedMap [] : String | -| Test.java:5806:38:5806:39 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:5807:9:5807:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5807:21:5807:23 | out : LazySortedMap [] : String | semmle.label | out : LazySortedMap [] : String | -| Test.java:5812:19:5812:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:5812:42:5812:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5812:50:5812:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5813:10:5813:55 | lazySortedMap(...) : LazySortedMap [] : String | semmle.label | lazySortedMap(...) : LazySortedMap [] : String | -| Test.java:5813:38:5813:39 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:5814:9:5814:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5814:21:5814:23 | out : LazySortedMap [] : String | semmle.label | out : LazySortedMap [] : String | -| Test.java:5819:13:5819:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5819:20:5819:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5819:28:5819:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5820:10:5820:26 | new LinkedMap<>(...) : LinkedMap [] : String | semmle.label | new LinkedMap<>(...) : LinkedMap [] : String | -| Test.java:5820:24:5820:25 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5821:9:5821:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5821:19:5821:21 | out : LinkedMap [] : String | semmle.label | out : LinkedMap [] : String | -| Test.java:5826:13:5826:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5826:26:5826:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5826:34:5826:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5827:10:5827:26 | new LinkedMap<>(...) : LinkedMap [] : String | semmle.label | new LinkedMap<>(...) : LinkedMap [] : String | -| Test.java:5827:24:5827:25 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5828:9:5828:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5828:21:5828:23 | out : LinkedMap [] : String | semmle.label | out : LinkedMap [] : String | -| Test.java:5833:19:5833:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapKey(...) : LinkedMap [] : String | -| Test.java:5833:42:5833:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5833:50:5833:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5834:10:5834:11 | in : LinkedMap [] : String | semmle.label | in : LinkedMap [] : String | -| Test.java:5834:10:5834:20 | asList(...) : List [] : String | semmle.label | asList(...) : List [] : String | -| Test.java:5835:9:5835:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5835:20:5835:22 | out : List [] : String | semmle.label | out : List [] : String | -| Test.java:5840:19:5840:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapKey(...) : LinkedMap [] : String | -| Test.java:5840:42:5840:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5840:50:5840:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5841:10:5841:11 | in : LinkedMap [] : String | semmle.label | in : LinkedMap [] : String | -| Test.java:5841:10:5841:18 | get(...) : String | semmle.label | get(...) : String | -| Test.java:5842:9:5842:11 | out | semmle.label | out | -| Test.java:5847:19:5847:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapValue(...) : LinkedMap [] : String | -| Test.java:5847:44:5847:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5847:52:5847:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5848:10:5848:11 | in : LinkedMap [] : String | semmle.label | in : LinkedMap [] : String | -| Test.java:5848:10:5848:23 | getValue(...) : String | semmle.label | getValue(...) : String | -| Test.java:5849:9:5849:11 | out | semmle.label | out | -| Test.java:5854:19:5854:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapValue(...) : LinkedMap [] : String | -| Test.java:5854:44:5854:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5854:52:5854:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5855:10:5855:11 | in : LinkedMap [] : String | semmle.label | in : LinkedMap [] : String | -| Test.java:5855:10:5855:21 | remove(...) : String | semmle.label | remove(...) : String | -| Test.java:5856:9:5856:11 | out | semmle.label | out | -| Test.java:5861:24:5861:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:5861:52:5861:67 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5861:60:5861:67 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5862:10:5862:11 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | -| Test.java:5862:10:5862:20 | asList(...) : List [] : String | semmle.label | asList(...) : List [] : String | -| Test.java:5863:9:5863:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5863:20:5863:22 | out : List [] : String | semmle.label | out : List [] : String | -| Test.java:5868:24:5868:60 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : Object | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : Object | -| Test.java:5868:52:5868:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5869:10:5869:11 | in : ListOrderedMap [] : Object | semmle.label | in : ListOrderedMap [] : Object | -| Test.java:5869:10:5869:18 | get(...) : Object | semmle.label | get(...) : Object | -| Test.java:5870:9:5870:11 | out | semmle.label | out | -| Test.java:5875:24:5875:62 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : Object | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : Object | -| Test.java:5875:54:5875:61 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5876:10:5876:11 | in : ListOrderedMap [] : Object | semmle.label | in : ListOrderedMap [] : Object | -| Test.java:5876:10:5876:23 | getValue(...) : Object | semmle.label | getValue(...) : Object | -| Test.java:5877:9:5877:11 | out | semmle.label | out | -| Test.java:5882:24:5882:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:5882:52:5882:67 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5882:60:5882:67 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5883:10:5883:11 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | -| Test.java:5883:10:5883:21 | keyList(...) : List [] : String | semmle.label | keyList(...) : List [] : String | -| Test.java:5884:9:5884:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5884:20:5884:22 | out : List [] : String | semmle.label | out : List [] : String | -| Test.java:5889:13:5889:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5889:20:5889:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5889:28:5889:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5890:10:5890:42 | listOrderedMap(...) : ListOrderedMap [] : String | semmle.label | listOrderedMap(...) : ListOrderedMap [] : String | -| Test.java:5890:40:5890:41 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5891:9:5891:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5891:19:5891:21 | out : ListOrderedMap [] : String | semmle.label | out : ListOrderedMap [] : String | -| Test.java:5896:13:5896:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5896:26:5896:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5896:34:5896:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5897:10:5897:42 | listOrderedMap(...) : ListOrderedMap [] : String | semmle.label | listOrderedMap(...) : ListOrderedMap [] : String | -| Test.java:5897:40:5897:41 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5898:9:5898:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5898:21:5898:23 | out : ListOrderedMap [] : String | semmle.label | out : ListOrderedMap [] : String | -| Test.java:5903:16:5903:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5904:4:5904:6 | out [post update] : ListOrderedMap [] : Object | semmle.label | out [post update] : ListOrderedMap [] : Object | -| Test.java:5904:18:5904:19 | in : Object | semmle.label | in : Object | -| Test.java:5905:9:5905:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5905:19:5905:21 | out : ListOrderedMap [] : Object | semmle.label | out : ListOrderedMap [] : Object | -| Test.java:5910:16:5910:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5911:4:5911:6 | out [post update] : ListOrderedMap [] : Object | semmle.label | out [post update] : ListOrderedMap [] : Object | -| Test.java:5911:15:5911:16 | in : Object | semmle.label | in : Object | -| Test.java:5912:9:5912:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5912:19:5912:21 | out : ListOrderedMap [] : Object | semmle.label | out : ListOrderedMap [] : Object | -| Test.java:5917:16:5917:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5918:4:5918:6 | out [post update] : ListOrderedMap [] : Object | semmle.label | out [post update] : ListOrderedMap [] : Object | -| Test.java:5918:21:5918:22 | in : Object | semmle.label | in : Object | -| Test.java:5919:9:5919:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5919:21:5919:23 | out : ListOrderedMap [] : Object | semmle.label | out : ListOrderedMap [] : Object | -| Test.java:5924:13:5924:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5924:20:5924:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5924:28:5924:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5925:4:5925:6 | out [post update] : ListOrderedMap [] : String | semmle.label | out [post update] : ListOrderedMap [] : String | -| Test.java:5925:18:5925:19 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5926:9:5926:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:5926:19:5926:21 | out : ListOrderedMap [] : String | semmle.label | out : ListOrderedMap [] : String | -| Test.java:5931:13:5931:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:5931:26:5931:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5931:34:5931:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5932:4:5932:6 | out [post update] : ListOrderedMap [] : String | semmle.label | out [post update] : ListOrderedMap [] : String | -| Test.java:5932:18:5932:19 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:5933:9:5933:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5933:21:5933:23 | out : ListOrderedMap [] : String | semmle.label | out : ListOrderedMap [] : String | -| Test.java:5938:24:5938:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:5938:54:5938:69 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5938:62:5938:69 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5939:10:5939:11 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | -| Test.java:5939:10:5939:21 | remove(...) : String | semmle.label | remove(...) : String | -| Test.java:5940:9:5940:11 | out | semmle.label | out | -| Test.java:5945:16:5945:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5946:4:5946:6 | out [post update] : ListOrderedMap [] : Object | semmle.label | out [post update] : ListOrderedMap [] : Object | -| Test.java:5946:20:5946:21 | in : Object | semmle.label | in : Object | -| Test.java:5947:9:5947:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:5947:21:5947:23 | out : ListOrderedMap [] : Object | semmle.label | out : ListOrderedMap [] : Object | -| Test.java:5952:24:5952:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:5952:54:5952:69 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5952:62:5952:69 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5953:10:5953:11 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | -| Test.java:5953:10:5953:23 | valueList(...) : List [] : String | semmle.label | valueList(...) : List [] : String | -| Test.java:5954:9:5954:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5954:20:5954:22 | out : List [] : String | semmle.label | out : List [] : String | -| Test.java:5959:21:5959:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:5959:40:5959:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5959:48:5959:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5960:10:5960:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:5960:10:5960:45 | get(...) : String | semmle.label | get(...) : String | -| Test.java:5961:9:5961:11 | out | semmle.label | out | -| Test.java:5966:21:5966:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:5966:40:5966:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5966:48:5966:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5967:10:5967:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:5967:10:5967:39 | get(...) : String | semmle.label | get(...) : String | -| Test.java:5968:9:5968:11 | out | semmle.label | out | -| Test.java:5973:21:5973:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:5973:40:5973:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5973:48:5973:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5974:10:5974:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:5974:10:5974:33 | get(...) : String | semmle.label | get(...) : String | -| Test.java:5975:9:5975:11 | out | semmle.label | out | -| Test.java:5980:21:5980:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:5980:40:5980:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5980:48:5980:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5981:10:5981:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:5981:10:5981:27 | get(...) : String | semmle.label | get(...) : String | -| Test.java:5982:9:5982:11 | out | semmle.label | out | -| Test.java:5987:16:5987:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5987:24:5987:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5988:4:5988:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:5988:18:5988:19 | in : String | semmle.label | in : String | -| Test.java:5989:9:5989:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5989:20:5989:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:5989:30:5989:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:5994:16:5994:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:5994:24:5994:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:5995:4:5995:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:5995:12:5995:13 | in : String | semmle.label | in : String | -| Test.java:5996:9:5996:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:5996:20:5996:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:5996:30:5996:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6001:16:6001:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6001:24:6001:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6002:4:6002:6 | out [post update] : MultiKeyMap [] : String | semmle.label | out [post update] : MultiKeyMap [] : String | -| Test.java:6002:24:6002:25 | in : String | semmle.label | in : String | -| Test.java:6003:9:6003:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6003:21:6003:23 | out : MultiKeyMap [] : String | semmle.label | out : MultiKeyMap [] : String | -| Test.java:6008:16:6008:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6008:24:6008:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6009:4:6009:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:6009:24:6009:25 | in : String | semmle.label | in : String | -| Test.java:6010:9:6010:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6010:20:6010:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:6010:30:6010:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6015:16:6015:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6015:24:6015:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6016:4:6016:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:6016:18:6016:19 | in : String | semmle.label | in : String | -| Test.java:6017:9:6017:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6017:20:6017:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:6017:30:6017:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6022:16:6022:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6022:24:6022:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6023:4:6023:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:6023:12:6023:13 | in : String | semmle.label | in : String | -| Test.java:6024:9:6024:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6024:20:6024:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:6024:30:6024:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6029:16:6029:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6029:24:6029:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6030:4:6030:6 | out [post update] : MultiKeyMap [] : String | semmle.label | out [post update] : MultiKeyMap [] : String | -| Test.java:6030:30:6030:31 | in : String | semmle.label | in : String | -| Test.java:6031:9:6031:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6031:21:6031:23 | out : MultiKeyMap [] : String | semmle.label | out : MultiKeyMap [] : String | -| Test.java:6036:16:6036:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6036:24:6036:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6037:4:6037:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:6037:30:6037:31 | in : String | semmle.label | in : String | -| Test.java:6038:9:6038:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6038:20:6038:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:6038:30:6038:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6043:16:6043:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6043:24:6043:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6044:4:6044:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:6044:24:6044:25 | in : String | semmle.label | in : String | -| Test.java:6045:9:6045:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6045:20:6045:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:6045:30:6045:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6050:16:6050:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6050:24:6050:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6051:4:6051:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:6051:18:6051:19 | in : String | semmle.label | in : String | -| Test.java:6052:9:6052:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6052:20:6052:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:6052:30:6052:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6057:16:6057:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6057:24:6057:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6058:4:6058:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:6058:12:6058:13 | in : String | semmle.label | in : String | -| Test.java:6059:9:6059:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6059:20:6059:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:6059:30:6059:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6064:16:6064:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6064:24:6064:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6065:4:6065:6 | out [post update] : MultiKeyMap [] : String | semmle.label | out [post update] : MultiKeyMap [] : String | -| Test.java:6065:36:6065:37 | in : String | semmle.label | in : String | -| Test.java:6066:9:6066:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6066:21:6066:23 | out : MultiKeyMap [] : String | semmle.label | out : MultiKeyMap [] : String | -| Test.java:6071:16:6071:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6071:24:6071:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6072:4:6072:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:6072:36:6072:37 | in : String | semmle.label | in : String | -| Test.java:6073:9:6073:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6073:20:6073:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:6073:30:6073:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6078:16:6078:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6078:24:6078:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6079:4:6079:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:6079:30:6079:31 | in : String | semmle.label | in : String | -| Test.java:6080:9:6080:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6080:20:6080:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:6080:30:6080:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6085:16:6085:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6085:24:6085:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6086:4:6086:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:6086:24:6086:25 | in : String | semmle.label | in : String | -| Test.java:6087:9:6087:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6087:20:6087:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:6087:30:6087:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6092:16:6092:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6092:24:6092:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6093:4:6093:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:6093:18:6093:19 | in : String | semmle.label | in : String | -| Test.java:6094:9:6094:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6094:20:6094:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:6094:30:6094:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6099:16:6099:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6099:24:6099:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6100:4:6100:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | -| Test.java:6100:12:6100:13 | in : String | semmle.label | in : String | -| Test.java:6101:9:6101:34 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6101:20:6101:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | -| Test.java:6101:30:6101:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | -| Test.java:6106:16:6106:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6106:24:6106:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6107:4:6107:6 | out [post update] : MultiKeyMap [] : String | semmle.label | out [post update] : MultiKeyMap [] : String | -| Test.java:6107:42:6107:43 | in : String | semmle.label | in : String | -| Test.java:6108:9:6108:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6108:21:6108:23 | out : MultiKeyMap [] : String | semmle.label | out : MultiKeyMap [] : String | -| Test.java:6113:21:6113:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6113:40:6113:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6113:48:6113:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6114:10:6114:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:6114:10:6114:51 | put(...) : String | semmle.label | put(...) : String | -| Test.java:6115:9:6115:11 | out | semmle.label | out | -| Test.java:6120:21:6120:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6120:40:6120:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6120:48:6120:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6121:10:6121:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:6121:10:6121:45 | put(...) : String | semmle.label | put(...) : String | -| Test.java:6122:9:6122:11 | out | semmle.label | out | -| Test.java:6127:21:6127:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6127:40:6127:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6127:48:6127:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6128:10:6128:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:6128:10:6128:39 | put(...) : String | semmle.label | put(...) : String | -| Test.java:6129:9:6129:11 | out | semmle.label | out | -| Test.java:6134:21:6134:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6134:40:6134:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6134:48:6134:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6135:10:6135:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:6135:10:6135:33 | put(...) : String | semmle.label | put(...) : String | -| Test.java:6136:9:6136:11 | out | semmle.label | out | -| Test.java:6141:21:6141:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6141:40:6141:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6141:48:6141:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6142:10:6142:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:6142:10:6142:27 | put(...) : String | semmle.label | put(...) : String | -| Test.java:6143:9:6143:11 | out | semmle.label | out | -| Test.java:6148:21:6148:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6148:40:6148:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6148:48:6148:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6149:10:6149:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:6149:10:6149:56 | removeMultiKey(...) : String | semmle.label | removeMultiKey(...) : String | -| Test.java:6150:9:6150:11 | out | semmle.label | out | -| Test.java:6155:21:6155:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6155:40:6155:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6155:48:6155:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6156:10:6156:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:6156:10:6156:50 | removeMultiKey(...) : String | semmle.label | removeMultiKey(...) : String | -| Test.java:6157:9:6157:11 | out | semmle.label | out | -| Test.java:6162:21:6162:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6162:40:6162:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6162:48:6162:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6163:10:6163:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:6163:10:6163:44 | removeMultiKey(...) : String | semmle.label | removeMultiKey(...) : String | -| Test.java:6164:9:6164:11 | out | semmle.label | out | -| Test.java:6169:21:6169:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6169:40:6169:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6169:48:6169:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6170:10:6170:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | -| Test.java:6170:10:6170:38 | removeMultiKey(...) : String | semmle.label | removeMultiKey(...) : String | -| Test.java:6171:9:6171:11 | out | semmle.label | out | -| Test.java:6176:23:6176:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [, ] : String | -| Test.java:6176:23:6176:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:6176:42:6176:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6176:50:6176:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6177:10:6177:11 | in : MultiValueMap [, ] : String | semmle.label | in : MultiValueMap [, ] : String | -| Test.java:6177:10:6177:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | -| Test.java:6177:10:6177:31 | getCollection(...) : Collection [] : Object | semmle.label | getCollection(...) : Collection [] : Object | -| Test.java:6177:10:6177:31 | getCollection(...) : Collection [] : String | semmle.label | getCollection(...) : Collection [] : String | -| Test.java:6178:9:6178:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6178:20:6178:22 | out : Collection [] : Object | semmle.label | out : Collection [] : Object | -| Test.java:6178:20:6178:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | -| Test.java:6183:38:6183:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [, ] : String | -| Test.java:6183:38:6183:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:6183:57:6183:72 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6183:65:6183:72 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6184:10:6184:11 | in : MultiValueMap [, ] : String | semmle.label | in : MultiValueMap [, ] : String | -| Test.java:6184:10:6184:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | -| Test.java:6184:10:6184:22 | iterator(...) : Iterator [, ] : Object | semmle.label | iterator(...) : Iterator [, ] : Object | -| Test.java:6184:10:6184:22 | iterator(...) : Iterator [, ] : String | semmle.label | iterator(...) : Iterator [, ] : String | -| Test.java:6185:9:6185:45 | getMapValueFromEntry(...) | semmle.label | getMapValueFromEntry(...) | -| Test.java:6185:30:6185:44 | getElement(...) : Entry [] : Object | semmle.label | getElement(...) : Entry [] : Object | -| Test.java:6185:30:6185:44 | getElement(...) : Entry [] : String | semmle.label | getElement(...) : Entry [] : String | -| Test.java:6185:41:6185:43 | out : Iterator [, ] : Object | semmle.label | out : Iterator [, ] : Object | -| Test.java:6185:41:6185:43 | out : Iterator [, ] : String | semmle.label | out : Iterator [, ] : String | -| Test.java:6190:38:6190:71 | newMVMWithMapKey(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapKey(...) : MultiValueMap [] : String | -| Test.java:6190:55:6190:70 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6190:63:6190:70 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6191:10:6191:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | -| Test.java:6191:10:6191:22 | iterator(...) : Iterator [, ] : String | semmle.label | iterator(...) : Iterator [, ] : String | -| Test.java:6192:9:6192:43 | getMapKeyFromEntry(...) | semmle.label | getMapKeyFromEntry(...) | -| Test.java:6192:28:6192:42 | getElement(...) : Entry [] : String | semmle.label | getElement(...) : Entry [] : String | -| Test.java:6192:39:6192:41 | out : Iterator [, ] : String | semmle.label | out : Iterator [, ] : String | -| Test.java:6197:38:6197:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [, ] : String | -| Test.java:6197:38:6197:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:6197:57:6197:72 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6197:65:6197:72 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6198:10:6198:11 | in : MultiValueMap [, ] : String | semmle.label | in : MultiValueMap [, ] : String | -| Test.java:6198:10:6198:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | -| Test.java:6198:10:6198:26 | iterator(...) : Iterator [] : Object | semmle.label | iterator(...) : Iterator [] : Object | -| Test.java:6198:10:6198:26 | iterator(...) : Iterator [] : String | semmle.label | iterator(...) : Iterator [] : String | -| Test.java:6199:9:6199:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6199:20:6199:22 | out : Iterator [] : Object | semmle.label | out : Iterator [] : Object | -| Test.java:6199:20:6199:22 | out : Iterator [] : String | semmle.label | out : Iterator [] : String | -| Test.java:6204:13:6204:64 | of(...) : Map [, ] : String | semmle.label | of(...) : Map [, ] : String | -| Test.java:6204:26:6204:63 | newVectorWithElement(...) : Vector [] : String | semmle.label | newVectorWithElement(...) : Vector [] : String | -| Test.java:6204:47:6204:62 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6204:55:6204:62 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6205:10:6205:55 | multiValueMap(...) : MultiValueMap [, ] : String | semmle.label | multiValueMap(...) : MultiValueMap [, ] : String | -| Test.java:6205:38:6205:39 | in : Map [, ] : String | semmle.label | in : Map [, ] : String | -| Test.java:6206:9:6206:48 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6206:20:6206:47 | (...)... : Collection [] : String | semmle.label | (...)... : Collection [] : String | -| Test.java:6206:32:6206:47 | getMapValue(...) : Object [] : String | semmle.label | getMapValue(...) : Object [] : String | -| Test.java:6206:44:6206:46 | out : MultiValueMap [, ] : String | semmle.label | out : MultiValueMap [, ] : String | -| Test.java:6211:13:6211:64 | of(...) : Map [, ] : String | semmle.label | of(...) : Map [, ] : String | -| Test.java:6211:26:6211:63 | newVectorWithElement(...) : Vector [] : String | semmle.label | newVectorWithElement(...) : Vector [] : String | -| Test.java:6211:47:6211:62 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6211:55:6211:62 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6212:10:6212:53 | multiValueMap(...) : MultiValueMap [, ] : String | semmle.label | multiValueMap(...) : MultiValueMap [, ] : String | -| Test.java:6212:38:6212:39 | in : Map [, ] : String | semmle.label | in : Map [, ] : String | -| Test.java:6213:9:6213:48 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6213:20:6213:47 | (...)... : Collection [] : String | semmle.label | (...)... : Collection [] : String | -| Test.java:6213:32:6213:47 | getMapValue(...) : Object [] : String | semmle.label | getMapValue(...) : Object [] : String | -| Test.java:6213:44:6213:46 | out : MultiValueMap [, ] : String | semmle.label | out : MultiValueMap [, ] : String | -| Test.java:6218:13:6218:64 | of(...) : Map [, ] : String | semmle.label | of(...) : Map [, ] : String | -| Test.java:6218:26:6218:63 | newVectorWithElement(...) : Vector [] : String | semmle.label | newVectorWithElement(...) : Vector [] : String | -| Test.java:6218:47:6218:62 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6218:55:6218:62 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6219:10:6219:40 | multiValueMap(...) : MultiValueMap [, ] : String | semmle.label | multiValueMap(...) : MultiValueMap [, ] : String | -| Test.java:6219:38:6219:39 | in : Map [, ] : String | semmle.label | in : Map [, ] : String | -| Test.java:6220:9:6220:48 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6220:20:6220:47 | (...)... : Collection [] : String | semmle.label | (...)... : Collection [] : String | -| Test.java:6220:32:6220:47 | getMapValue(...) : Object [] : String | semmle.label | getMapValue(...) : Object [] : String | -| Test.java:6220:44:6220:46 | out : MultiValueMap [, ] : String | semmle.label | out : MultiValueMap [, ] : String | -| Test.java:6225:13:6225:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6225:20:6225:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6225:28:6225:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6226:10:6226:55 | multiValueMap(...) : MultiValueMap [] : String | semmle.label | multiValueMap(...) : MultiValueMap [] : String | -| Test.java:6226:38:6226:39 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6227:9:6227:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6227:19:6227:21 | out : MultiValueMap [] : String | semmle.label | out : MultiValueMap [] : String | -| Test.java:6232:13:6232:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6232:20:6232:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6232:28:6232:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6233:10:6233:53 | multiValueMap(...) : MultiValueMap [] : String | semmle.label | multiValueMap(...) : MultiValueMap [] : String | -| Test.java:6233:38:6233:39 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6234:9:6234:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6234:19:6234:21 | out : MultiValueMap [] : String | semmle.label | out : MultiValueMap [] : String | -| Test.java:6239:13:6239:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6239:20:6239:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6239:28:6239:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6240:10:6240:40 | multiValueMap(...) : MultiValueMap [] : String | semmle.label | multiValueMap(...) : MultiValueMap [] : String | -| Test.java:6240:38:6240:39 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6241:9:6241:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6241:19:6241:21 | out : MultiValueMap [] : String | semmle.label | out : MultiValueMap [] : String | -| Test.java:6246:13:6246:48 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [, ] : String | -| Test.java:6246:13:6246:48 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:6246:32:6246:47 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6246:40:6246:47 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6247:4:6247:6 | out [post update] : MultiValueMap [, ] : Object | semmle.label | out [post update] : MultiValueMap [, ] : Object | -| Test.java:6247:4:6247:6 | out [post update] : MultiValueMap [, ] : String | semmle.label | out [post update] : MultiValueMap [, ] : String | -| Test.java:6247:15:6247:16 | in : MultiValueMap [, ] : String | semmle.label | in : MultiValueMap [, ] : String | -| Test.java:6247:15:6247:16 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | -| Test.java:6248:9:6248:48 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6248:20:6248:47 | (...)... : Collection [] : Object | semmle.label | (...)... : Collection [] : Object | -| Test.java:6248:20:6248:47 | (...)... : Collection [] : String | semmle.label | (...)... : Collection [] : String | -| Test.java:6248:32:6248:47 | getMapValue(...) : Object [] : Object | semmle.label | getMapValue(...) : Object [] : Object | -| Test.java:6248:32:6248:47 | getMapValue(...) : Object [] : String | semmle.label | getMapValue(...) : Object [] : String | -| Test.java:6248:44:6248:46 | out : MultiValueMap [, ] : Object | semmle.label | out : MultiValueMap [, ] : Object | -| Test.java:6248:44:6248:46 | out : MultiValueMap [, ] : String | semmle.label | out : MultiValueMap [, ] : String | -| Test.java:6253:13:6253:34 | of(...) : Map [] : Object | semmle.label | of(...) : Map [] : Object | -| Test.java:6253:26:6253:33 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6254:4:6254:6 | out [post update] : MultiValueMap [, ] : Object | semmle.label | out [post update] : MultiValueMap [, ] : Object | -| Test.java:6254:4:6254:6 | out [post update] : MultiValueMap [] : Object | semmle.label | out [post update] : MultiValueMap [] : Object | -| Test.java:6254:15:6254:16 | in : Map [] : Object | semmle.label | in : Map [] : Object | -| Test.java:6255:9:6255:48 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6255:20:6255:47 | (...)... : Collection | semmle.label | (...)... : Collection | -| Test.java:6255:20:6255:47 | (...)... : Collection [] : Object | semmle.label | (...)... : Collection [] : Object | -| Test.java:6255:32:6255:47 | getMapValue(...) : Object | semmle.label | getMapValue(...) : Object | -| Test.java:6255:32:6255:47 | getMapValue(...) : Object [] : Object | semmle.label | getMapValue(...) : Object [] : Object | -| Test.java:6255:44:6255:46 | out : MultiValueMap [, ] : Object | semmle.label | out : MultiValueMap [, ] : Object | -| Test.java:6255:44:6255:46 | out : MultiValueMap [] : Object | semmle.label | out : MultiValueMap [] : Object | -| Test.java:6260:16:6260:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6261:4:6261:6 | out [post update] : MultiValueMap [] : Object | semmle.label | out [post update] : MultiValueMap [] : Object | -| Test.java:6261:15:6261:16 | in : Object | semmle.label | in : Object | -| Test.java:6262:9:6262:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6262:19:6262:21 | out : MultiValueMap [] : Object | semmle.label | out : MultiValueMap [] : Object | -| Test.java:6267:20:6267:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:6267:42:6267:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6267:50:6267:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6268:4:6268:6 | out [post update] : MultiValueMap [, ] : String | semmle.label | out [post update] : MultiValueMap [, ] : String | -| Test.java:6268:21:6268:22 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:6269:9:6269:48 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6269:20:6269:47 | (...)... : Collection [] : String | semmle.label | (...)... : Collection [] : String | -| Test.java:6269:32:6269:47 | getMapValue(...) : Object [] : String | semmle.label | getMapValue(...) : Object [] : String | -| Test.java:6269:44:6269:46 | out : MultiValueMap [, ] : String | semmle.label | out : MultiValueMap [, ] : String | -| Test.java:6274:23:6274:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [, ] : String | -| Test.java:6274:23:6274:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:6274:42:6274:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6274:50:6274:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6275:10:6275:11 | in : MultiValueMap [, ] : String | semmle.label | in : MultiValueMap [, ] : String | -| Test.java:6275:10:6275:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | -| Test.java:6275:10:6275:20 | values(...) : Collection [] : Object | semmle.label | values(...) : Collection [] : Object | -| Test.java:6275:10:6275:20 | values(...) : Collection [] : String | semmle.label | values(...) : Collection [] : String | -| Test.java:6276:9:6276:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6276:20:6276:22 | out : Collection [] : Object | semmle.label | out : Collection [] : Object | -| Test.java:6276:20:6276:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | -| Test.java:6281:13:6281:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6281:20:6281:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6281:28:6281:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6282:10:6282:78 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | -| Test.java:6282:76:6282:77 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6283:9:6283:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6283:19:6283:21 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | -| Test.java:6288:13:6288:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6288:26:6288:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6288:34:6288:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6289:10:6289:78 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | -| Test.java:6289:76:6289:77 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6290:9:6290:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6290:21:6290:23 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | -| Test.java:6295:13:6295:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6295:20:6295:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6295:28:6295:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6296:10:6296:35 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | -| Test.java:6296:33:6296:34 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6297:9:6297:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6297:19:6297:21 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | -| Test.java:6302:13:6302:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6302:26:6302:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6302:34:6302:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6303:10:6303:35 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | -| Test.java:6303:33:6303:34 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6304:9:6304:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6304:21:6304:23 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | -| Test.java:6309:13:6309:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6309:20:6309:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6309:28:6309:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6310:10:6310:39 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | -| Test.java:6310:37:6310:38 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6311:9:6311:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6311:19:6311:21 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | -| Test.java:6316:13:6316:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6316:26:6316:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6316:34:6316:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6317:10:6317:39 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | -| Test.java:6317:37:6317:38 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6318:9:6318:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6318:21:6318:23 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | -| Test.java:6323:13:6323:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6323:20:6323:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6323:28:6323:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6324:10:6324:45 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | -| Test.java:6324:43:6324:44 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6325:9:6325:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6325:19:6325:21 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | -| Test.java:6330:13:6330:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6330:26:6330:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6330:34:6330:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6331:10:6331:45 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | -| Test.java:6331:43:6331:44 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6332:9:6332:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6332:21:6332:23 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | -| Test.java:6337:13:6337:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6337:20:6337:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6337:28:6337:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6338:10:6338:52 | predicatedMap(...) : PredicatedMap [] : String | semmle.label | predicatedMap(...) : PredicatedMap [] : String | -| Test.java:6338:38:6338:39 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6339:9:6339:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6339:19:6339:21 | out : PredicatedMap [] : String | semmle.label | out : PredicatedMap [] : String | -| Test.java:6344:13:6344:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6344:26:6344:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6344:34:6344:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6345:10:6345:52 | predicatedMap(...) : PredicatedMap [] : String | semmle.label | predicatedMap(...) : PredicatedMap [] : String | -| Test.java:6345:38:6345:39 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6346:9:6346:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6346:21:6346:23 | out : PredicatedMap [] : String | semmle.label | out : PredicatedMap [] : String | -| Test.java:6351:19:6351:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:6351:40:6351:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6351:48:6351:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6352:10:6352:64 | predicatedSortedMap(...) : PredicatedSortedMap [] : String | semmle.label | predicatedSortedMap(...) : PredicatedSortedMap [] : String | -| Test.java:6352:50:6352:51 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:6353:9:6353:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6353:19:6353:21 | out : PredicatedSortedMap [] : String | semmle.label | out : PredicatedSortedMap [] : String | -| Test.java:6358:19:6358:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:6358:42:6358:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6358:50:6358:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6359:10:6359:64 | predicatedSortedMap(...) : PredicatedSortedMap [] : String | semmle.label | predicatedSortedMap(...) : PredicatedSortedMap [] : String | -| Test.java:6359:50:6359:51 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:6360:9:6360:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6360:21:6360:23 | out : PredicatedSortedMap [] : String | semmle.label | out : PredicatedSortedMap [] : String | -| Test.java:6365:19:6365:52 | newTMEWithMapKey(...) : TiedMapEntry [] : String | semmle.label | newTMEWithMapKey(...) : TiedMapEntry [] : String | -| Test.java:6365:36:6365:51 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6365:44:6365:51 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6366:10:6366:29 | new SingletonMap<>(...) : SingletonMap [] : String | semmle.label | new SingletonMap<>(...) : SingletonMap [] : String | -| Test.java:6366:27:6366:28 | in : TiedMapEntry [] : String | semmle.label | in : TiedMapEntry [] : String | -| Test.java:6367:9:6367:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6367:19:6367:21 | out : SingletonMap [] : String | semmle.label | out : SingletonMap [] : String | -| Test.java:6372:19:6372:54 | newTMEWithMapValue(...) : TiedMapEntry [] : String | semmle.label | newTMEWithMapValue(...) : TiedMapEntry [] : String | -| Test.java:6372:38:6372:53 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6372:46:6372:53 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6373:10:6373:29 | new SingletonMap<>(...) : SingletonMap [] : String | semmle.label | new SingletonMap<>(...) : SingletonMap [] : String | -| Test.java:6373:27:6373:28 | in : TiedMapEntry [] : String | semmle.label | in : TiedMapEntry [] : String | -| Test.java:6374:9:6374:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6374:21:6374:23 | out : SingletonMap [] : String | semmle.label | out : SingletonMap [] : String | -| Test.java:6379:18:6379:51 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | semmle.label | newDKVWithMapKey(...) : DefaultKeyValue [] : String | -| Test.java:6379:35:6379:50 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6379:43:6379:50 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6380:10:6380:29 | new SingletonMap<>(...) : SingletonMap [] : String | semmle.label | new SingletonMap<>(...) : SingletonMap [] : String | -| Test.java:6380:27:6380:28 | in : DefaultKeyValue [] : String | semmle.label | in : DefaultKeyValue [] : String | -| Test.java:6381:9:6381:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6381:19:6381:21 | out : SingletonMap [] : String | semmle.label | out : SingletonMap [] : String | -| Test.java:6386:18:6386:53 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | semmle.label | newDKVWithMapValue(...) : DefaultKeyValue [] : String | -| Test.java:6386:37:6386:52 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6386:45:6386:52 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6387:10:6387:29 | new SingletonMap<>(...) : SingletonMap [] : String | semmle.label | new SingletonMap<>(...) : SingletonMap [] : String | -| Test.java:6387:27:6387:28 | in : DefaultKeyValue [] : String | semmle.label | in : DefaultKeyValue [] : String | -| Test.java:6388:9:6388:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6388:21:6388:23 | out : SingletonMap [] : String | semmle.label | out : SingletonMap [] : String | -| Test.java:6393:13:6393:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6393:20:6393:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6393:28:6393:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6394:10:6394:29 | new SingletonMap<>(...) : SingletonMap [] : String | semmle.label | new SingletonMap<>(...) : SingletonMap [] : String | -| Test.java:6394:27:6394:28 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6395:9:6395:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6395:19:6395:21 | out : SingletonMap [] : String | semmle.label | out : SingletonMap [] : String | -| Test.java:6400:13:6400:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6400:26:6400:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6400:34:6400:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6401:10:6401:29 | new SingletonMap<>(...) : SingletonMap [] : String | semmle.label | new SingletonMap<>(...) : SingletonMap [] : String | -| Test.java:6401:27:6401:28 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6402:9:6402:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6402:21:6402:23 | out : SingletonMap [] : String | semmle.label | out : SingletonMap [] : String | -| Test.java:6407:16:6407:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6408:10:6408:35 | new SingletonMap<>(...) : SingletonMap [] : Object | semmle.label | new SingletonMap<>(...) : SingletonMap [] : Object | -| Test.java:6408:27:6408:28 | in : Object | semmle.label | in : Object | -| Test.java:6409:9:6409:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6409:19:6409:21 | out : SingletonMap [] : Object | semmle.label | out : SingletonMap [] : Object | -| Test.java:6414:16:6414:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6415:10:6415:35 | new SingletonMap<>(...) : SingletonMap [] : Object | semmle.label | new SingletonMap<>(...) : SingletonMap [] : Object | -| Test.java:6415:33:6415:34 | in : Object | semmle.label | in : Object | -| Test.java:6416:9:6416:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6416:21:6416:23 | out : SingletonMap [] : Object | semmle.label | out : SingletonMap [] : Object | -| Test.java:6421:16:6421:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6422:4:6422:6 | out [post update] : SingletonMap [] : Object | semmle.label | out [post update] : SingletonMap [] : Object | -| Test.java:6422:17:6422:18 | in : Object | semmle.label | in : Object | -| Test.java:6423:9:6423:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6423:21:6423:23 | out : SingletonMap [] : Object | semmle.label | out : SingletonMap [] : Object | -| Test.java:6428:13:6428:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6428:20:6428:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6428:28:6428:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6429:10:6429:55 | transformingMap(...) : TransformedMap [] : String | semmle.label | transformingMap(...) : TransformedMap [] : String | -| Test.java:6429:41:6429:42 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6430:9:6430:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6430:19:6430:21 | out : TransformedMap [] : String | semmle.label | out : TransformedMap [] : String | -| Test.java:6435:13:6435:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6435:26:6435:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6435:34:6435:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6436:10:6436:55 | transformingMap(...) : TransformedMap [] : String | semmle.label | transformingMap(...) : TransformedMap [] : String | -| Test.java:6436:41:6436:42 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6437:9:6437:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6437:21:6437:23 | out : TransformedMap [] : String | semmle.label | out : TransformedMap [] : String | -| Test.java:6442:19:6442:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:6442:40:6442:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6442:48:6442:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6443:10:6443:67 | transformingSortedMap(...) : TransformedSortedMap [] : String | semmle.label | transformingSortedMap(...) : TransformedSortedMap [] : String | -| Test.java:6443:53:6443:54 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:6444:9:6444:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6444:19:6444:21 | out : TransformedSortedMap [] : String | semmle.label | out : TransformedSortedMap [] : String | -| Test.java:6449:19:6449:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:6449:42:6449:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6449:50:6449:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6450:10:6450:67 | transformingSortedMap(...) : TransformedSortedMap [] : String | semmle.label | transformingSortedMap(...) : TransformedSortedMap [] : String | -| Test.java:6450:53:6450:54 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:6451:9:6451:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6451:21:6451:23 | out : TransformedSortedMap [] : String | semmle.label | out : TransformedSortedMap [] : String | -| Test.java:6456:39:6456:102 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | -| Test.java:6456:68:6456:101 | newTMEWithMapKey(...) : TiedMapEntry [] : String | semmle.label | newTMEWithMapKey(...) : TiedMapEntry [] : String | -| Test.java:6456:85:6456:100 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6456:93:6456:100 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6457:10:6457:54 | unmodifiableEntrySet(...) : Set [, ] : String | semmle.label | unmodifiableEntrySet(...) : Set [, ] : String | -| Test.java:6457:52:6457:53 | in : ListOrderedSet [, ] : String | semmle.label | in : ListOrderedSet [, ] : String | -| Test.java:6458:9:6458:43 | getMapKeyFromEntry(...) | semmle.label | getMapKeyFromEntry(...) | -| Test.java:6458:28:6458:42 | getElement(...) : Entry [] : String | semmle.label | getElement(...) : Entry [] : String | -| Test.java:6458:39:6458:41 | out : Set [, ] : String | semmle.label | out : Set [, ] : String | -| Test.java:6463:39:6463:104 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | -| Test.java:6463:68:6463:103 | newTMEWithMapValue(...) : TiedMapEntry [] : String | semmle.label | newTMEWithMapValue(...) : TiedMapEntry [] : String | -| Test.java:6463:87:6463:102 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6463:95:6463:102 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6464:10:6464:54 | unmodifiableEntrySet(...) : Set [, ] : String | semmle.label | unmodifiableEntrySet(...) : Set [, ] : String | -| Test.java:6464:52:6464:53 | in : ListOrderedSet [, ] : String | semmle.label | in : ListOrderedSet [, ] : String | -| Test.java:6465:9:6465:45 | getMapValueFromEntry(...) | semmle.label | getMapValueFromEntry(...) | -| Test.java:6465:30:6465:44 | getElement(...) : Entry [] : String | semmle.label | getElement(...) : Entry [] : String | -| Test.java:6465:41:6465:43 | out : Set [, ] : String | semmle.label | out : Set [, ] : String | -| Test.java:6470:13:6470:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6470:20:6470:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6470:28:6470:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6471:10:6471:44 | unmodifiableMap(...) : Map [] : String | semmle.label | unmodifiableMap(...) : Map [] : String | -| Test.java:6471:42:6471:43 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6472:9:6472:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6472:19:6472:21 | out : Map [] : String | semmle.label | out : Map [] : String | -| Test.java:6477:13:6477:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6477:26:6477:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6477:34:6477:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6478:10:6478:44 | unmodifiableMap(...) : Map [] : String | semmle.label | unmodifiableMap(...) : Map [] : String | -| Test.java:6478:42:6478:43 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6479:9:6479:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6479:21:6479:23 | out : Map [] : String | semmle.label | out : Map [] : String | -| Test.java:6484:20:6484:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:6484:48:6484:63 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6484:56:6484:63 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6485:10:6485:58 | unmodifiableOrderedMap(...) : OrderedMap [] : String | semmle.label | unmodifiableOrderedMap(...) : OrderedMap [] : String | -| Test.java:6485:56:6485:57 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | -| Test.java:6486:9:6486:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6486:19:6486:21 | out : OrderedMap [] : String | semmle.label | out : OrderedMap [] : String | -| Test.java:6491:20:6491:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:6491:50:6491:65 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6491:58:6491:65 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6492:10:6492:58 | unmodifiableOrderedMap(...) : OrderedMap [] : String | semmle.label | unmodifiableOrderedMap(...) : OrderedMap [] : String | -| Test.java:6492:56:6492:57 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | -| Test.java:6493:9:6493:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6493:21:6493:23 | out : OrderedMap [] : String | semmle.label | out : OrderedMap [] : String | -| Test.java:6498:19:6498:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:6498:40:6498:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6498:48:6498:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6499:10:6499:56 | unmodifiableSortedMap(...) : SortedMap [] : String | semmle.label | unmodifiableSortedMap(...) : SortedMap [] : String | -| Test.java:6499:54:6499:55 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:6500:9:6500:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6500:19:6500:21 | out : SortedMap [] : String | semmle.label | out : SortedMap [] : String | -| Test.java:6505:19:6505:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:6505:42:6505:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6505:50:6505:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6506:10:6506:56 | unmodifiableSortedMap(...) : SortedMap [] : String | semmle.label | unmodifiableSortedMap(...) : SortedMap [] : String | -| Test.java:6506:54:6506:55 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | -| Test.java:6507:9:6507:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6507:21:6507:23 | out : SortedMap [] : String | semmle.label | out : SortedMap [] : String | -| Test.java:6512:13:6512:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6512:20:6512:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6512:28:6512:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6513:10:6513:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | semmle.label | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | -| Test.java:6513:37:6513:38 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6514:9:6514:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6514:19:6514:21 | out : ArrayListValuedHashMap [] : String | semmle.label | out : ArrayListValuedHashMap [] : String | -| Test.java:6519:13:6519:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6519:26:6519:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6519:34:6519:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6520:10:6520:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | semmle.label | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | -| Test.java:6520:37:6520:38 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6521:9:6521:36 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6521:20:6521:35 | getMapValue(...) : Collection [] : String | semmle.label | getMapValue(...) : Collection [] : String | -| Test.java:6521:32:6521:34 | out : ArrayListValuedHashMap [, ] : String | semmle.label | out : ArrayListValuedHashMap [, ] : String | -| Test.java:6526:24:6526:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | semmle.label | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | -| Test.java:6526:45:6526:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6526:53:6526:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6527:10:6527:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | semmle.label | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | -| Test.java:6527:37:6527:38 | in : ArrayListValuedHashMap [, ] : String | semmle.label | in : ArrayListValuedHashMap [, ] : String | -| Test.java:6528:9:6528:36 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6528:20:6528:35 | getMapValue(...) : Collection [] : String | semmle.label | getMapValue(...) : Collection [] : String | -| Test.java:6528:32:6528:34 | out : ArrayListValuedHashMap [, ] : String | semmle.label | out : ArrayListValuedHashMap [, ] : String | -| Test.java:6533:24:6533:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | semmle.label | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | -| Test.java:6533:43:6533:58 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6533:51:6533:58 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6534:10:6534:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | semmle.label | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | -| Test.java:6534:37:6534:38 | in : ArrayListValuedHashMap [] : String | semmle.label | in : ArrayListValuedHashMap [] : String | -| Test.java:6535:9:6535:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6535:19:6535:21 | out : ArrayListValuedHashMap [] : String | semmle.label | out : ArrayListValuedHashMap [] : String | -| Test.java:6540:13:6540:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6540:20:6540:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6540:28:6540:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6541:10:6541:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | semmle.label | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | -| Test.java:6541:35:6541:36 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6542:9:6542:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6542:19:6542:21 | out : HashSetValuedHashMap [] : String | semmle.label | out : HashSetValuedHashMap [] : String | -| Test.java:6547:13:6547:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6547:26:6547:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6547:34:6547:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6548:10:6548:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | semmle.label | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | -| Test.java:6548:35:6548:36 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6549:9:6549:36 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6549:20:6549:35 | getMapValue(...) : Collection [] : String | semmle.label | getMapValue(...) : Collection [] : String | -| Test.java:6549:32:6549:34 | out : HashSetValuedHashMap [, ] : String | semmle.label | out : HashSetValuedHashMap [, ] : String | -| Test.java:6554:24:6554:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | semmle.label | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | -| Test.java:6554:45:6554:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6554:53:6554:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6555:10:6555:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | semmle.label | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | -| Test.java:6555:35:6555:36 | in : ArrayListValuedHashMap [, ] : String | semmle.label | in : ArrayListValuedHashMap [, ] : String | -| Test.java:6556:9:6556:36 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6556:20:6556:35 | getMapValue(...) : Collection [] : String | semmle.label | getMapValue(...) : Collection [] : String | -| Test.java:6556:32:6556:34 | out : HashSetValuedHashMap [, ] : String | semmle.label | out : HashSetValuedHashMap [, ] : String | -| Test.java:6561:24:6561:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | semmle.label | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | -| Test.java:6561:43:6561:58 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6561:51:6561:58 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6562:10:6562:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | semmle.label | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | -| Test.java:6562:35:6562:36 | in : ArrayListValuedHashMap [] : String | semmle.label | in : ArrayListValuedHashMap [] : String | -| Test.java:6563:9:6563:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6563:19:6563:21 | out : HashSetValuedHashMap [] : String | semmle.label | out : HashSetValuedHashMap [] : String | -| Test.java:6568:24:6568:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | semmle.label | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | -| Test.java:6568:45:6568:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6568:53:6568:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6569:10:6569:66 | transformingMap(...) : TransformedMultiValuedMap [, ] : String | semmle.label | transformingMap(...) : TransformedMultiValuedMap [, ] : String | -| Test.java:6569:52:6569:53 | in : ArrayListValuedHashMap [, ] : String | semmle.label | in : ArrayListValuedHashMap [, ] : String | -| Test.java:6570:9:6570:36 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6570:20:6570:35 | getMapValue(...) : Collection [] : String | semmle.label | getMapValue(...) : Collection [] : String | -| Test.java:6570:32:6570:34 | out : TransformedMultiValuedMap [, ] : String | semmle.label | out : TransformedMultiValuedMap [, ] : String | -| Test.java:6575:24:6575:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | semmle.label | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | -| Test.java:6575:43:6575:58 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6575:51:6575:58 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6576:10:6576:66 | transformingMap(...) : TransformedMultiValuedMap [] : String | semmle.label | transformingMap(...) : TransformedMultiValuedMap [] : String | -| Test.java:6576:52:6576:53 | in : ArrayListValuedHashMap [] : String | semmle.label | in : ArrayListValuedHashMap [] : String | -| Test.java:6577:9:6577:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6577:19:6577:21 | out : TransformedMultiValuedMap [] : String | semmle.label | out : TransformedMultiValuedMap [] : String | -| Test.java:6582:24:6582:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | semmle.label | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | -| Test.java:6582:45:6582:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6582:53:6582:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6583:10:6583:66 | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [, ] : String | semmle.label | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [, ] : String | -| Test.java:6583:64:6583:65 | in : ArrayListValuedHashMap [, ] : String | semmle.label | in : ArrayListValuedHashMap [, ] : String | -| Test.java:6584:9:6584:36 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6584:20:6584:35 | getMapValue(...) : Collection [] : String | semmle.label | getMapValue(...) : Collection [] : String | -| Test.java:6584:32:6584:34 | out : UnmodifiableMultiValuedMap [, ] : String | semmle.label | out : UnmodifiableMultiValuedMap [, ] : String | -| Test.java:6589:24:6589:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | semmle.label | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | -| Test.java:6589:43:6589:58 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6589:51:6589:58 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6590:10:6590:66 | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [] : String | semmle.label | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [] : String | -| Test.java:6590:64:6590:65 | in : ArrayListValuedHashMap [] : String | semmle.label | in : ArrayListValuedHashMap [] : String | -| Test.java:6591:9:6591:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6591:19:6591:21 | out : UnmodifiableMultiValuedMap [] : String | semmle.label | out : UnmodifiableMultiValuedMap [] : String | -| Test.java:6596:20:6596:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:6596:42:6596:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6596:50:6596:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6597:10:6597:29 | new HashMultiSet<>(...) : HashMultiSet [] : String | semmle.label | new HashMultiSet<>(...) : HashMultiSet [] : String | -| Test.java:6597:27:6597:28 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:6598:9:6598:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6598:20:6598:22 | out : HashMultiSet [] : String | semmle.label | out : HashMultiSet [] : String | -| Test.java:6603:18:6603:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | semmle.label | newHashMultiSetWithElement(...) : HashMultiSet [] : String | -| Test.java:6603:45:6603:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6603:53:6603:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6604:10:6604:56 | predicatedMultiSet(...) : PredicatedMultiSet [] : String | semmle.label | predicatedMultiSet(...) : PredicatedMultiSet [] : String | -| Test.java:6604:48:6604:49 | in : HashMultiSet [] : String | semmle.label | in : HashMultiSet [] : String | -| Test.java:6605:9:6605:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6605:20:6605:22 | out : PredicatedMultiSet [] : String | semmle.label | out : PredicatedMultiSet [] : String | -| Test.java:6610:18:6610:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | semmle.label | newHashMultiSetWithElement(...) : HashMultiSet [] : String | -| Test.java:6610:45:6610:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6610:53:6610:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6611:10:6611:54 | synchronizedMultiSet(...) : SynchronizedMultiSet [] : String | semmle.label | synchronizedMultiSet(...) : SynchronizedMultiSet [] : String | -| Test.java:6611:52:6611:53 | in : HashMultiSet [] : String | semmle.label | in : HashMultiSet [] : String | -| Test.java:6612:9:6612:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6612:20:6612:22 | out : SynchronizedMultiSet [] : String | semmle.label | out : SynchronizedMultiSet [] : String | -| Test.java:6617:18:6617:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | semmle.label | newHashMultiSetWithElement(...) : HashMultiSet [] : String | -| Test.java:6617:45:6617:60 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6617:53:6617:60 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6618:10:6618:54 | unmodifiableMultiSet(...) : MultiSet [] : String | semmle.label | unmodifiableMultiSet(...) : MultiSet [] : String | -| Test.java:6618:52:6618:53 | in : HashMultiSet [] : String | semmle.label | in : HashMultiSet [] : String | -| Test.java:6619:9:6619:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6619:20:6619:22 | out : MultiSet [] : String | semmle.label | out : MultiSet [] : String | -| Test.java:6624:16:6624:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6624:24:6624:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6626:10:6626:32 | load(...) : Properties | semmle.label | load(...) : Properties | -| Test.java:6626:30:6626:31 | in : String | semmle.label | in : String | -| Test.java:6627:9:6627:11 | out | semmle.label | out | -| Test.java:6632:14:6632:27 | (...)... : File | semmle.label | (...)... : File | -| Test.java:6632:20:6632:27 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6634:10:6634:26 | load(...) : Properties | semmle.label | load(...) : Properties | -| Test.java:6634:24:6634:25 | in : File | semmle.label | in : File | -| Test.java:6635:9:6635:11 | out | semmle.label | out | -| Test.java:6640:21:6640:41 | (...)... : InputStream | semmle.label | (...)... : InputStream | -| Test.java:6640:34:6640:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6642:10:6642:26 | load(...) : Properties | semmle.label | load(...) : Properties | -| Test.java:6642:24:6642:25 | in : InputStream | semmle.label | in : InputStream | -| Test.java:6643:9:6643:11 | out | semmle.label | out | -| Test.java:6648:14:6648:27 | (...)... : Path | semmle.label | (...)... : Path | -| Test.java:6648:20:6648:27 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6650:10:6650:26 | load(...) : Properties | semmle.label | load(...) : Properties | -| Test.java:6650:24:6650:25 | in : Path | semmle.label | in : Path | -| Test.java:6651:9:6651:11 | out | semmle.label | out | -| Test.java:6656:16:6656:31 | (...)... : Reader | semmle.label | (...)... : Reader | -| Test.java:6656:24:6656:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6658:10:6658:26 | load(...) : Properties | semmle.label | load(...) : Properties | -| Test.java:6658:24:6658:25 | in : Reader | semmle.label | in : Reader | -| Test.java:6659:9:6659:11 | out | semmle.label | out | -| Test.java:6664:16:6664:31 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6664:24:6664:31 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6666:10:6666:26 | load(...) : Properties | semmle.label | load(...) : Properties | -| Test.java:6666:24:6666:25 | in : String | semmle.label | in : String | -| Test.java:6667:9:6667:11 | out | semmle.label | out | -| Test.java:6672:13:6672:25 | (...)... : URI | semmle.label | (...)... : URI | -| Test.java:6672:18:6672:25 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6674:10:6674:26 | load(...) : Properties | semmle.label | load(...) : Properties | -| Test.java:6674:24:6674:25 | in : URI | semmle.label | in : URI | -| Test.java:6675:9:6675:11 | out | semmle.label | out | -| Test.java:6680:13:6680:25 | (...)... : URL | semmle.label | (...)... : URL | -| Test.java:6680:18:6680:25 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6682:10:6682:26 | load(...) : Properties | semmle.label | load(...) : Properties | -| Test.java:6682:24:6682:25 | in : URL | semmle.label | in : URL | -| Test.java:6683:9:6683:11 | out | semmle.label | out | -| Test.java:6688:20:6688:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:6688:42:6688:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6688:50:6688:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6689:10:6689:34 | new CircularFifoQueue<>(...) : CircularFifoQueue [] : String | semmle.label | new CircularFifoQueue<>(...) : CircularFifoQueue [] : String | -| Test.java:6689:32:6689:33 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:6690:9:6690:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6690:20:6690:22 | out : CircularFifoQueue [] : String | semmle.label | out : CircularFifoQueue [] : String | -| Test.java:6695:27:6695:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:6695:59:6695:74 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6695:67:6695:74 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6696:10:6696:11 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | -| Test.java:6696:10:6696:18 | get(...) : String | semmle.label | get(...) : String | -| Test.java:6697:9:6697:11 | out | semmle.label | out | -| Test.java:6702:15:6702:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:6702:47:6702:62 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6702:55:6702:62 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6703:10:6703:50 | predicatedQueue(...) : PredicatedQueue [] : String | semmle.label | predicatedQueue(...) : PredicatedQueue [] : String | -| Test.java:6703:42:6703:43 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | -| Test.java:6704:9:6704:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6704:20:6704:22 | out : PredicatedQueue [] : String | semmle.label | out : PredicatedQueue [] : String | -| Test.java:6709:15:6709:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:6709:47:6709:62 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6709:55:6709:62 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6710:10:6710:48 | synchronizedQueue(...) : SynchronizedQueue [] : String | semmle.label | synchronizedQueue(...) : SynchronizedQueue [] : String | -| Test.java:6710:46:6710:47 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | -| Test.java:6711:9:6711:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6711:20:6711:22 | out : SynchronizedQueue [] : String | semmle.label | out : SynchronizedQueue [] : String | -| Test.java:6716:15:6716:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:6716:47:6716:62 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6716:55:6716:62 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6717:10:6717:53 | transformingQueue(...) : TransformedQueue [] : String | semmle.label | transformingQueue(...) : TransformedQueue [] : String | -| Test.java:6717:45:6717:46 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | -| Test.java:6718:9:6718:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6718:20:6718:22 | out : TransformedQueue [] : String | semmle.label | out : TransformedQueue [] : String | -| Test.java:6723:15:6723:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:6723:47:6723:62 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6723:55:6723:62 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6724:10:6724:48 | unmodifiableQueue(...) : Queue [] : String | semmle.label | unmodifiableQueue(...) : Queue [] : String | -| Test.java:6724:46:6724:47 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | -| Test.java:6725:9:6725:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6725:20:6725:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | -| Test.java:6730:22:6730:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6730:44:6730:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6730:52:6730:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6731:10:6731:48 | new MyAbstractNavigableSetDecorator<>(...) : MyAbstractNavigableSetDecorator [] : String | semmle.label | new MyAbstractNavigableSetDecorator<>(...) : MyAbstractNavigableSetDecorator [] : String | -| Test.java:6731:46:6731:47 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:6732:9:6732:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6732:20:6732:22 | out : MyAbstractNavigableSetDecorator [] : String | semmle.label | out : MyAbstractNavigableSetDecorator [] : String | -| Test.java:6737:13:6737:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6737:42:6737:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6737:50:6737:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6738:10:6738:39 | new MyAbstractSetDecorator<>(...) : MyAbstractSetDecorator [] : String | semmle.label | new MyAbstractSetDecorator<>(...) : MyAbstractSetDecorator [] : String | -| Test.java:6738:37:6738:38 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:6739:9:6739:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6739:20:6739:22 | out : MyAbstractSetDecorator [] : String | semmle.label | out : MyAbstractSetDecorator [] : String | -| Test.java:6744:13:6744:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6744:42:6744:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6744:50:6744:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6745:10:6745:45 | new MyAbstractSortedSetDecorator<>(...) : MyAbstractSortedSetDecorator [] : String | semmle.label | new MyAbstractSortedSetDecorator<>(...) : MyAbstractSortedSetDecorator [] : String | -| Test.java:6745:43:6745:44 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:6746:9:6746:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6746:20:6746:22 | out : MyAbstractSortedSetDecorator [] : String | semmle.label | out : MyAbstractSortedSetDecorator [] : String | -| Test.java:6751:16:6751:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6753:17:6753:19 | out [post update] : CompositeSet [] : Object | semmle.label | out [post update] : CompositeSet [] : Object | -| Test.java:6753:28:6753:29 | in : Object | semmle.label | in : Object | -| Test.java:6754:9:6754:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6754:20:6754:22 | out : CompositeSet [] : Object | semmle.label | out : CompositeSet [] : Object | -| Test.java:6759:16:6759:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6761:23:6761:25 | out [post update] : List [, ] : Object | semmle.label | out [post update] : List [, ] : Object | -| Test.java:6761:28:6761:29 | in : Object | semmle.label | in : Object | -| Test.java:6762:9:6762:35 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6762:20:6762:34 | getElement(...) : Set [] : Object | semmle.label | getElement(...) : Set [] : Object | -| Test.java:6762:31:6762:33 | out : List [, ] : Object | semmle.label | out : List [, ] : Object | -| Test.java:6767:20:6767:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:6767:42:6767:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6767:50:6767:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6769:20:6769:22 | out [post update] : CompositeSet [] : String | semmle.label | out [post update] : CompositeSet [] : String | -| Test.java:6769:31:6769:32 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:6770:9:6770:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6770:20:6770:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | -| Test.java:6775:20:6775:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:6775:42:6775:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6775:50:6775:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6777:26:6777:28 | out [post update] : List [, ] : String | semmle.label | out [post update] : List [, ] : String | -| Test.java:6777:31:6777:32 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | -| Test.java:6778:9:6778:35 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6778:20:6778:34 | getElement(...) : Set [] : String | semmle.label | getElement(...) : Set [] : String | -| Test.java:6778:31:6778:33 | out : List [, ] : String | semmle.label | out : List [, ] : String | -| Test.java:6783:13:6783:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6783:42:6783:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6783:50:6783:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6784:10:6784:29 | new CompositeSet<>(...) : CompositeSet [] : String | semmle.label | new CompositeSet<>(...) : CompositeSet [] : String | -| Test.java:6784:27:6784:28 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:6785:9:6785:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6785:20:6785:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | -| Test.java:6790:15:6790:71 | {...} : Set[] [[], ] : String | semmle.label | {...} : Set[] [[], ] : String | -| Test.java:6790:25:6790:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6790:54:6790:69 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6790:62:6790:69 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6791:10:6791:29 | new CompositeSet<>(...) : CompositeSet [] : String | semmle.label | new CompositeSet<>(...) : CompositeSet [] : String | -| Test.java:6791:27:6791:28 | in : Set[] [[], ] : String | semmle.label | in : Set[] [[], ] : String | -| Test.java:6792:9:6792:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6792:20:6792:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | -| Test.java:6797:13:6797:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6797:42:6797:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6797:50:6797:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6798:4:6798:6 | out [post update] : CompositeSet [] : String | semmle.label | out [post update] : CompositeSet [] : String | -| Test.java:6798:22:6798:23 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:6799:9:6799:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6799:20:6799:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | -| Test.java:6804:13:6804:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6804:42:6804:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6804:50:6804:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6805:4:6805:6 | out [post update] : CompositeSet [] : String | semmle.label | out [post update] : CompositeSet [] : String | -| Test.java:6805:22:6805:23 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:6806:9:6806:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6806:20:6806:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | -| Test.java:6811:13:6811:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6811:42:6811:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6811:50:6811:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6812:4:6812:6 | out [post update] : CompositeSet [] : String | semmle.label | out [post update] : CompositeSet [] : String | -| Test.java:6812:28:6812:29 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:6813:9:6813:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6813:20:6813:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | -| Test.java:6818:15:6818:71 | {...} : Set[] [[], ] : String | semmle.label | {...} : Set[] [[], ] : String | -| Test.java:6818:25:6818:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6818:54:6818:69 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6818:62:6818:69 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6819:4:6819:6 | out [post update] : CompositeSet [] : String | semmle.label | out [post update] : CompositeSet [] : String | -| Test.java:6819:22:6819:23 | in : Set[] [[], ] : String | semmle.label | in : Set[] [[], ] : String | -| Test.java:6820:9:6820:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6820:20:6820:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | -| Test.java:6825:30:6825:73 | newCompositeSetWithElement(...) : CompositeSet [] : String | semmle.label | newCompositeSetWithElement(...) : CompositeSet [] : String | -| Test.java:6825:57:6825:72 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6825:65:6825:72 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6826:10:6826:11 | in : CompositeSet [] : String | semmle.label | in : CompositeSet [] : String | -| Test.java:6826:10:6826:21 | getSets(...) : List [, ] : String | semmle.label | getSets(...) : List [, ] : String | -| Test.java:6827:9:6827:35 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6827:20:6827:34 | getElement(...) : Set [] : String | semmle.label | getElement(...) : Set [] : String | -| Test.java:6827:31:6827:33 | out : List [, ] : String | semmle.label | out : List [, ] : String | -| Test.java:6832:22:6832:65 | newCompositeSetWithElement(...) : CompositeSet [] : String | semmle.label | newCompositeSetWithElement(...) : CompositeSet [] : String | -| Test.java:6832:49:6832:64 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6832:57:6832:64 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6833:10:6833:11 | in : CompositeSet [] : String | semmle.label | in : CompositeSet [] : String | -| Test.java:6833:10:6833:19 | toSet(...) : Set [] : String | semmle.label | toSet(...) : Set [] : String | -| Test.java:6834:9:6834:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6834:20:6834:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:6839:16:6839:23 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6840:4:6840:6 | out [post update] : ListOrderedSet [] : Object | semmle.label | out [post update] : ListOrderedSet [] : Object | -| Test.java:6840:15:6840:16 | in : Object | semmle.label | in : Object | -| Test.java:6841:9:6841:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6841:20:6841:22 | out : ListOrderedSet [] : Object | semmle.label | out : ListOrderedSet [] : Object | -| Test.java:6846:20:6846:44 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:6846:28:6846:43 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6846:36:6846:43 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6847:4:6847:6 | out [post update] : ListOrderedSet [] : String | semmle.label | out [post update] : ListOrderedSet [] : String | -| Test.java:6847:18:6847:19 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:6848:9:6848:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6848:20:6848:22 | out : ListOrderedSet [] : String | semmle.label | out : ListOrderedSet [] : String | -| Test.java:6853:24:6853:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6853:53:6853:68 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6853:61:6853:68 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6854:10:6854:11 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:6854:10:6854:20 | asList(...) : List [] : String | semmle.label | asList(...) : List [] : String | -| Test.java:6855:9:6855:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6855:20:6855:22 | out : List [] : String | semmle.label | out : List [] : String | -| Test.java:6860:24:6860:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6860:53:6860:68 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6860:61:6860:68 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6861:10:6861:11 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:6861:10:6861:18 | get(...) : String | semmle.label | get(...) : String | -| Test.java:6862:9:6862:11 | out | semmle.label | out | -| Test.java:6867:14:6867:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| Test.java:6867:22:6867:37 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6867:30:6867:37 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6868:10:6868:42 | listOrderedSet(...) : ListOrderedSet [] : String | semmle.label | listOrderedSet(...) : ListOrderedSet [] : String | -| Test.java:6868:40:6868:41 | in : List [] : String | semmle.label | in : List [] : String | -| Test.java:6869:9:6869:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6869:20:6869:22 | out : ListOrderedSet [] : String | semmle.label | out : ListOrderedSet [] : String | -| Test.java:6874:13:6874:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6874:42:6874:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6874:50:6874:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6875:10:6875:42 | listOrderedSet(...) : ListOrderedSet [] : String | semmle.label | listOrderedSet(...) : ListOrderedSet [] : String | -| Test.java:6875:40:6875:41 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:6876:9:6876:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6876:20:6876:22 | out : ListOrderedSet [] : String | semmle.label | out : ListOrderedSet [] : String | -| Test.java:6881:13:6881:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6881:20:6881:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6881:28:6881:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6882:10:6882:44 | mapBackedSet(...) : MapBackedSet [] : String | semmle.label | mapBackedSet(...) : MapBackedSet [] : String | -| Test.java:6882:36:6882:37 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6883:9:6883:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6883:20:6883:22 | out : MapBackedSet [] : String | semmle.label | out : MapBackedSet [] : String | -| Test.java:6888:13:6888:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6888:20:6888:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6888:28:6888:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6889:10:6889:38 | mapBackedSet(...) : MapBackedSet [] : String | semmle.label | mapBackedSet(...) : MapBackedSet [] : String | -| Test.java:6889:36:6889:37 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6890:9:6890:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6890:20:6890:22 | out : MapBackedSet [] : String | semmle.label | out : MapBackedSet [] : String | -| Test.java:6895:22:6895:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6895:44:6895:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6895:52:6895:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6896:10:6896:64 | predicatedNavigableSet(...) : PredicatedNavigableSet [] : String | semmle.label | predicatedNavigableSet(...) : PredicatedNavigableSet [] : String | -| Test.java:6896:56:6896:57 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:6897:9:6897:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6897:20:6897:22 | out : PredicatedNavigableSet [] : String | semmle.label | out : PredicatedNavigableSet [] : String | -| Test.java:6902:13:6902:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6902:42:6902:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6902:50:6902:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6903:10:6903:46 | predicatedSet(...) : PredicatedSet [] : String | semmle.label | predicatedSet(...) : PredicatedSet [] : String | -| Test.java:6903:38:6903:39 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:6904:9:6904:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6904:20:6904:22 | out : PredicatedSet [] : String | semmle.label | out : PredicatedSet [] : String | -| Test.java:6909:19:6909:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6909:41:6909:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6909:49:6909:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6910:10:6910:58 | predicatedSortedSet(...) : PredicatedSortedSet [] : String | semmle.label | predicatedSortedSet(...) : PredicatedSortedSet [] : String | -| Test.java:6910:50:6910:51 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:6911:9:6911:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6911:20:6911:22 | out : PredicatedSortedSet [] : String | semmle.label | out : PredicatedSortedSet [] : String | -| Test.java:6916:22:6916:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6916:44:6916:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6916:52:6916:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6917:10:6917:67 | transformingNavigableSet(...) : TransformedNavigableSet [] : String | semmle.label | transformingNavigableSet(...) : TransformedNavigableSet [] : String | -| Test.java:6917:59:6917:60 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:6918:9:6918:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6918:20:6918:22 | out : TransformedNavigableSet [] : String | semmle.label | out : TransformedNavigableSet [] : String | -| Test.java:6923:13:6923:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6923:42:6923:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6923:50:6923:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6924:10:6924:49 | transformingSet(...) : TransformedSet [] : String | semmle.label | transformingSet(...) : TransformedSet [] : String | -| Test.java:6924:41:6924:42 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:6925:9:6925:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6925:20:6925:22 | out : TransformedSet [] : String | semmle.label | out : TransformedSet [] : String | -| Test.java:6930:19:6930:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6930:41:6930:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6930:49:6930:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6931:10:6931:61 | transformingSortedSet(...) : TransformedSortedSet [] : String | semmle.label | transformingSortedSet(...) : TransformedSortedSet [] : String | -| Test.java:6931:53:6931:54 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:6932:9:6932:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6932:20:6932:22 | out : TransformedSortedSet [] : String | semmle.label | out : TransformedSortedSet [] : String | -| Test.java:6937:22:6937:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6937:44:6937:59 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6937:52:6937:59 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6938:10:6938:62 | unmodifiableNavigableSet(...) : NavigableSet [] : String | semmle.label | unmodifiableNavigableSet(...) : NavigableSet [] : String | -| Test.java:6938:60:6938:61 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:6939:9:6939:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6939:20:6939:22 | out : NavigableSet [] : String | semmle.label | out : NavigableSet [] : String | -| Test.java:6944:13:6944:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6944:42:6944:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6944:50:6944:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6945:10:6945:44 | unmodifiableSet(...) : Set [] : String | semmle.label | unmodifiableSet(...) : Set [] : String | -| Test.java:6945:42:6945:43 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | -| Test.java:6946:9:6946:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6946:20:6946:22 | out : Set [] : String | semmle.label | out : Set [] : String | -| Test.java:6951:19:6951:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6951:41:6951:56 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6951:49:6951:56 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6952:10:6952:56 | unmodifiableSortedSet(...) : SortedSet [] : String | semmle.label | unmodifiableSortedSet(...) : SortedSet [] : String | -| Test.java:6952:54:6952:55 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | -| Test.java:6953:9:6953:23 | getElement(...) | semmle.label | getElement(...) | -| Test.java:6953:20:6953:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | -| Test.java:6958:13:6958:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6958:20:6958:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6958:28:6958:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6959:10:6959:48 | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | semmle.label | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | -| Test.java:6959:46:6959:47 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6960:9:6960:29 | getMapKeyFromGet(...) | semmle.label | getMapKeyFromGet(...) | -| Test.java:6960:26:6960:28 | out : AbstractIterableGetMapDecorator [] : String | semmle.label | out : AbstractIterableGetMapDecorator [] : String | -| Test.java:6965:13:6965:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6965:26:6965:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6965:34:6965:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6966:10:6966:48 | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | semmle.label | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | -| Test.java:6966:46:6966:47 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6967:9:6967:31 | getMapValueFromGet(...) | semmle.label | getMapValueFromGet(...) | -| Test.java:6967:28:6967:30 | out : AbstractIterableGetMapDecorator [] : String | semmle.label | out : AbstractIterableGetMapDecorator [] : String | -| Test.java:6972:13:6972:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6972:20:6972:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6972:28:6972:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6973:10:6973:60 | transformingMap(...) : TransformedSplitMap [] : String | semmle.label | transformingMap(...) : TransformedSplitMap [] : String | -| Test.java:6973:46:6973:47 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6974:9:6974:29 | getMapKeyFromGet(...) | semmle.label | getMapKeyFromGet(...) | -| Test.java:6974:26:6974:28 | out : TransformedSplitMap [] : String | semmle.label | out : TransformedSplitMap [] : String | -| Test.java:6979:13:6979:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6979:26:6979:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6979:34:6979:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6980:10:6980:60 | transformingMap(...) : TransformedSplitMap [] : String | semmle.label | transformingMap(...) : TransformedSplitMap [] : String | -| Test.java:6980:46:6980:47 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6981:9:6981:31 | getMapValueFromGet(...) | semmle.label | getMapValueFromGet(...) | -| Test.java:6981:28:6981:30 | out : TransformedSplitMap [] : String | semmle.label | out : TransformedSplitMap [] : String | -| Test.java:6986:13:6986:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6986:20:6986:35 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6986:28:6986:35 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6987:10:6987:29 | new PatriciaTrie<>(...) : PatriciaTrie [] : String | semmle.label | new PatriciaTrie<>(...) : PatriciaTrie [] : String | -| Test.java:6987:27:6987:28 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6988:9:6988:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:6988:19:6988:21 | out : PatriciaTrie [] : String | semmle.label | out : PatriciaTrie [] : String | -| Test.java:6993:13:6993:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | -| Test.java:6993:26:6993:41 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6993:34:6993:41 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:6994:10:6994:29 | new PatriciaTrie<>(...) : PatriciaTrie [] : String | semmle.label | new PatriciaTrie<>(...) : PatriciaTrie [] : String | -| Test.java:6994:27:6994:28 | in : Map [] : String | semmle.label | in : Map [] : String | -| Test.java:6995:9:6995:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:6995:21:6995:23 | out : PatriciaTrie [] : String | semmle.label | out : PatriciaTrie [] : String | -| Test.java:6999:30:6999:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | -| Test.java:6999:56:6999:71 | (...)... : String | semmle.label | (...)... : String | -| Test.java:6999:64:6999:71 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:7001:10:7001:11 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | -| Test.java:7001:10:7001:24 | select(...) : Entry [] : String | semmle.label | select(...) : Entry [] : String | -| Test.java:7002:9:7002:31 | getMapKeyFromEntry(...) | semmle.label | getMapKeyFromEntry(...) | -| Test.java:7002:28:7002:30 | out : Entry [] : String | semmle.label | out : Entry [] : String | -| Test.java:7006:30:7006:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | -| Test.java:7006:58:7006:73 | (...)... : String | semmle.label | (...)... : String | -| Test.java:7006:66:7006:73 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:7008:10:7008:11 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | -| Test.java:7008:10:7008:24 | select(...) : Entry [] : String | semmle.label | select(...) : Entry [] : String | -| Test.java:7009:9:7009:33 | getMapValueFromEntry(...) | semmle.label | getMapValueFromEntry(...) | -| Test.java:7009:30:7009:32 | out : Entry [] : String | semmle.label | out : Entry [] : String | -| Test.java:7013:30:7013:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | -| Test.java:7013:56:7013:71 | (...)... : String | semmle.label | (...)... : String | -| Test.java:7013:64:7013:71 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:7015:10:7015:11 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | -| Test.java:7015:10:7015:27 | selectKey(...) : String | semmle.label | selectKey(...) : String | -| Test.java:7016:9:7016:11 | out | semmle.label | out | -| Test.java:7020:30:7020:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | -| Test.java:7020:58:7020:73 | (...)... : String | semmle.label | (...)... : String | -| Test.java:7020:66:7020:73 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:7022:10:7022:11 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | -| Test.java:7022:10:7022:29 | selectValue(...) : String | semmle.label | selectValue(...) : String | -| Test.java:7023:9:7023:11 | out | semmle.label | out | -| Test.java:7028:14:7028:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | -| Test.java:7028:40:7028:55 | (...)... : String | semmle.label | (...)... : String | -| Test.java:7028:48:7028:55 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:7029:10:7029:46 | unmodifiableTrie(...) : Trie [] : String | semmle.label | unmodifiableTrie(...) : Trie [] : String | -| Test.java:7029:44:7029:45 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | -| Test.java:7030:9:7030:22 | getMapKey(...) | semmle.label | getMapKey(...) | -| Test.java:7030:19:7030:21 | out : Trie [] : String | semmle.label | out : Trie [] : String | -| Test.java:7035:14:7035:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | -| Test.java:7035:42:7035:57 | (...)... : String | semmle.label | (...)... : String | -| Test.java:7035:50:7035:57 | source(...) : Object | semmle.label | source(...) : Object | -| Test.java:7036:10:7036:46 | unmodifiableTrie(...) : Trie [] : String | semmle.label | unmodifiableTrie(...) : Trie [] : String | -| Test.java:7036:44:7036:45 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | -| Test.java:7037:9:7037:24 | getMapValue(...) | semmle.label | getMapValue(...) | -| Test.java:7037:21:7037:23 | out : Trie [] : String | semmle.label | out : Trie [] : String | -| Test.java:7043:3:7043:20 | parameter this [Return] : MyAbstractKeyValue [] : Object | semmle.label | parameter this [Return] : MyAbstractKeyValue [] : Object | -| Test.java:7043:3:7043:20 | parameter this [Return] : MyAbstractKeyValue [] : String | semmle.label | parameter this [Return] : MyAbstractKeyValue [] : String | -| Test.java:7043:3:7043:20 | parameter this [Return] : MyAbstractKeyValue [] : Object | semmle.label | parameter this [Return] : MyAbstractKeyValue [] : Object | -| Test.java:7043:3:7043:20 | parameter this [Return] : MyAbstractKeyValue [] : String | semmle.label | parameter this [Return] : MyAbstractKeyValue [] : String | -| Test.java:7043:22:7043:26 | key : Object | semmle.label | key : Object | -| Test.java:7043:22:7043:26 | key : String | semmle.label | key : String | -| Test.java:7043:29:7043:35 | value : Object | semmle.label | value : Object | -| Test.java:7043:29:7043:35 | value : String | semmle.label | value : String | -| Test.java:7044:4:7044:21 | this [post update] : MyAbstractKeyValue [] : Object | semmle.label | this [post update] : MyAbstractKeyValue [] : Object | -| Test.java:7044:4:7044:21 | this [post update] : MyAbstractKeyValue [] : String | semmle.label | this [post update] : MyAbstractKeyValue [] : String | -| Test.java:7044:4:7044:21 | this [post update] : MyAbstractKeyValue [] : Object | semmle.label | this [post update] : MyAbstractKeyValue [] : Object | -| Test.java:7044:4:7044:21 | this [post update] : MyAbstractKeyValue [] : String | semmle.label | this [post update] : MyAbstractKeyValue [] : String | -| Test.java:7044:10:7044:12 | key : Object | semmle.label | key : Object | -| Test.java:7044:10:7044:12 | key : String | semmle.label | key : String | -| Test.java:7044:15:7044:19 | value : Object | semmle.label | value : Object | -| Test.java:7044:15:7044:19 | value : String | semmle.label | value : String | -| Test.java:7047:5:7047:12 | parameter this : MyAbstractKeyValue [] : String | semmle.label | parameter this : MyAbstractKeyValue [] : String | -| Test.java:7047:5:7047:12 | parameter this [Return] : MyAbstractKeyValue [] : Object | semmle.label | parameter this [Return] : MyAbstractKeyValue [] : Object | -| Test.java:7047:14:7047:24 | key : Object | semmle.label | key : Object | -| Test.java:7048:11:7048:15 | super : MyAbstractKeyValue [] : String | semmle.label | super : MyAbstractKeyValue [] : String | -| Test.java:7048:11:7048:15 | super [post update] : MyAbstractKeyValue [] : Object | semmle.label | super [post update] : MyAbstractKeyValue [] : Object | -| Test.java:7048:11:7048:27 | setKey(...) : String | semmle.label | setKey(...) : String | -| Test.java:7048:24:7048:26 | key : Object | semmle.label | key : Object | -| Test.java:7051:5:7051:14 | parameter this : MyAbstractKeyValue [] : String | semmle.label | parameter this : MyAbstractKeyValue [] : String | -| Test.java:7051:5:7051:14 | parameter this [Return] : MyAbstractKeyValue [] : Object | semmle.label | parameter this [Return] : MyAbstractKeyValue [] : Object | -| Test.java:7051:16:7051:28 | value : Object | semmle.label | value : Object | -| Test.java:7052:11:7052:15 | super : MyAbstractKeyValue [] : String | semmle.label | super : MyAbstractKeyValue [] : String | -| Test.java:7052:11:7052:15 | super [post update] : MyAbstractKeyValue [] : Object | semmle.label | super [post update] : MyAbstractKeyValue [] : Object | -| Test.java:7052:11:7052:31 | setValue(...) : String | semmle.label | setValue(...) : String | -| Test.java:7052:26:7052:30 | value : Object | semmle.label | value : Object | -| Test.java:7057:3:7057:20 | parameter this [Return] : MyAbstractMapEntry [] : Object | semmle.label | parameter this [Return] : MyAbstractMapEntry [] : Object | -| Test.java:7057:3:7057:20 | parameter this [Return] : MyAbstractMapEntry [] : String | semmle.label | parameter this [Return] : MyAbstractMapEntry [] : String | -| Test.java:7057:3:7057:20 | parameter this [Return] : MyAbstractMapEntry [] : Object | semmle.label | parameter this [Return] : MyAbstractMapEntry [] : Object | -| Test.java:7057:3:7057:20 | parameter this [Return] : MyAbstractMapEntry [] : String | semmle.label | parameter this [Return] : MyAbstractMapEntry [] : String | -| Test.java:7057:22:7057:32 | key : Object | semmle.label | key : Object | -| Test.java:7057:22:7057:32 | key : String | semmle.label | key : String | -| Test.java:7057:35:7057:47 | value : Object | semmle.label | value : Object | -| Test.java:7057:35:7057:47 | value : String | semmle.label | value : String | -| Test.java:7058:4:7058:21 | this [post update] : MyAbstractMapEntry [] : Object | semmle.label | this [post update] : MyAbstractMapEntry [] : Object | -| Test.java:7058:4:7058:21 | this [post update] : MyAbstractMapEntry [] : String | semmle.label | this [post update] : MyAbstractMapEntry [] : String | -| Test.java:7058:4:7058:21 | this [post update] : MyAbstractMapEntry [] : Object | semmle.label | this [post update] : MyAbstractMapEntry [] : Object | -| Test.java:7058:4:7058:21 | this [post update] : MyAbstractMapEntry [] : String | semmle.label | this [post update] : MyAbstractMapEntry [] : String | -| Test.java:7058:10:7058:12 | key : Object | semmle.label | key : Object | -| Test.java:7058:10:7058:12 | key : String | semmle.label | key : String | -| Test.java:7058:15:7058:19 | value : Object | semmle.label | value : Object | -| Test.java:7058:15:7058:19 | value : String | semmle.label | value : String | -| Test.java:7067:3:7067:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | -| Test.java:7067:3:7067:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | -| Test.java:7067:31:7067:57 | entry : MyAbstractMapEntry [] : String | semmle.label | entry : MyAbstractMapEntry [] : String | -| Test.java:7067:31:7067:57 | entry : MyAbstractMapEntry [] : String | semmle.label | entry : MyAbstractMapEntry [] : String | -| Test.java:7068:4:7068:16 | this [post update] : MyAbstractMapEntryDecorator [] : String | semmle.label | this [post update] : MyAbstractMapEntryDecorator [] : String | -| Test.java:7068:4:7068:16 | this [post update] : MyAbstractMapEntryDecorator [] : String | semmle.label | this [post update] : MyAbstractMapEntryDecorator [] : String | -| Test.java:7068:10:7068:14 | entry : MyAbstractMapEntry [] : String | semmle.label | entry : MyAbstractMapEntry [] : String | -| Test.java:7068:10:7068:14 | entry : MyAbstractMapEntry [] : String | semmle.label | entry : MyAbstractMapEntry [] : String | -| Test.java:7071:19:7071:31 | parameter this : MyAbstractMapEntryDecorator [] : String | semmle.label | parameter this : MyAbstractMapEntryDecorator [] : String | -| Test.java:7071:19:7071:31 | parameter this : MyAbstractMapEntryDecorator [] : String | semmle.label | parameter this : MyAbstractMapEntryDecorator [] : String | -| Test.java:7072:11:7072:15 | super : MyAbstractMapEntryDecorator [] : String | semmle.label | super : MyAbstractMapEntryDecorator [] : String | -| Test.java:7072:11:7072:15 | super : MyAbstractMapEntryDecorator [] : String | semmle.label | super : MyAbstractMapEntryDecorator [] : String | -| Test.java:7072:11:7072:29 | getMapEntry(...) : Entry [] : String | semmle.label | getMapEntry(...) : Entry [] : String | -| Test.java:7072:11:7072:29 | getMapEntry(...) : Entry [] : String | semmle.label | getMapEntry(...) : Entry [] : String | -| Test.java:7082:15:7082:30 | parameter this : MySetView [] : String | semmle.label | parameter this : MySetView [] : String | -| Test.java:7082:43:7082:58 | createIterator(...) : Iterator [] : String | semmle.label | createIterator(...) : Iterator [] : String | -| Test.java:7082:43:7082:58 | this <.method> : MySetView [] : String | semmle.label | this <.method> : MySetView [] : String | -| Test.java:7086:10:7086:41 | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | -| Test.java:7086:10:7086:41 | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | -| Test.java:7086:43:7086:71 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | -| Test.java:7086:43:7086:71 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | -| Test.java:7087:4:7087:14 | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | -| Test.java:7087:4:7087:14 | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | -| Test.java:7087:10:7087:12 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | -| Test.java:7087:10:7087:12 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | -| Test.java:7092:10:7092:38 | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | -| Test.java:7092:10:7092:38 | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | -| Test.java:7092:40:7092:65 | map : ListOrderedMap [] : String | semmle.label | map : ListOrderedMap [] : String | -| Test.java:7092:40:7092:65 | map : ListOrderedMap [] : String | semmle.label | map : ListOrderedMap [] : String | -| Test.java:7093:4:7093:14 | this [post update] : MyAbstractOrderedMapDecorator [] : String | semmle.label | this [post update] : MyAbstractOrderedMapDecorator [] : String | -| Test.java:7093:4:7093:14 | this [post update] : MyAbstractOrderedMapDecorator [] : String | semmle.label | this [post update] : MyAbstractOrderedMapDecorator [] : String | -| Test.java:7093:10:7093:12 | map : ListOrderedMap [] : String | semmle.label | map : ListOrderedMap [] : String | -| Test.java:7093:10:7093:12 | map : ListOrderedMap [] : String | semmle.label | map : ListOrderedMap [] : String | -| Test.java:7098:10:7098:37 | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | -| Test.java:7098:10:7098:37 | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | -| Test.java:7098:39:7098:63 | map : TreeMap [] : String | semmle.label | map : TreeMap [] : String | -| Test.java:7098:39:7098:63 | map : TreeMap [] : String | semmle.label | map : TreeMap [] : String | -| Test.java:7099:4:7099:14 | this [post update] : MyAbstractSortedMapDecorator [] : String | semmle.label | this [post update] : MyAbstractSortedMapDecorator [] : String | -| Test.java:7099:4:7099:14 | this [post update] : MyAbstractSortedMapDecorator [] : String | semmle.label | this [post update] : MyAbstractSortedMapDecorator [] : String | -| Test.java:7099:10:7099:12 | map : TreeMap [] : String | semmle.label | map : TreeMap [] : String | -| Test.java:7099:10:7099:12 | map : TreeMap [] : String | semmle.label | map : TreeMap [] : String | -| Test.java:7104:10:7104:31 | parameter this [Return] : MyAbstractBagDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractBagDecorator [] : String | -| Test.java:7104:33:7104:48 | bag : TreeBag [] : String | semmle.label | bag : TreeBag [] : String | -| Test.java:7105:4:7105:14 | this [post update] : MyAbstractBagDecorator [] : String | semmle.label | this [post update] : MyAbstractBagDecorator [] : String | -| Test.java:7105:10:7105:12 | bag : TreeBag [] : String | semmle.label | bag : TreeBag [] : String | -| Test.java:7110:10:7110:25 | parameter this [Return] : MyAbstractMapBag [] : String | semmle.label | parameter this [Return] : MyAbstractMapBag [] : String | -| Test.java:7110:27:7110:58 | map : Map [] : String | semmle.label | map : Map [] : String | -| Test.java:7111:4:7111:14 | this [post update] : MyAbstractMapBag [] : String | semmle.label | this [post update] : MyAbstractMapBag [] : String | -| Test.java:7111:10:7111:12 | map : Map [] : String | semmle.label | map : Map [] : String | -| Test.java:7113:33:7113:40 | parameter this : MyAbstractMapBag [] : String | semmle.label | parameter this : MyAbstractMapBag [] : String | -| Test.java:7114:11:7114:15 | super : MyAbstractMapBag [] : String | semmle.label | super : MyAbstractMapBag [] : String | -| Test.java:7114:11:7114:24 | getMap(...) : Map [] : String | semmle.label | getMap(...) : Map [] : String | -| Test.java:7119:10:7119:37 | parameter this [Return] : MyAbstractSortedBagDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSortedBagDecorator [] : String | -| Test.java:7119:39:7119:60 | bag : TreeBag [] : String | semmle.label | bag : TreeBag [] : String | -| Test.java:7120:4:7120:14 | this [post update] : MyAbstractSortedBagDecorator [] : String | semmle.label | this [post update] : MyAbstractSortedBagDecorator [] : String | -| Test.java:7120:10:7120:12 | bag : TreeBag [] : String | semmle.label | bag : TreeBag [] : String | -| Test.java:7125:10:7125:35 | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | -| Test.java:7125:10:7125:35 | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | -| Test.java:7125:37:7125:59 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | -| Test.java:7125:37:7125:59 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | -| Test.java:7126:4:7126:14 | this [post update] : MyAbstractBidiMapDecorator [] : String | semmle.label | this [post update] : MyAbstractBidiMapDecorator [] : String | -| Test.java:7126:4:7126:14 | this [post update] : MyAbstractBidiMapDecorator [] : String | semmle.label | this [post update] : MyAbstractBidiMapDecorator [] : String | -| Test.java:7126:10:7126:12 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | -| Test.java:7126:10:7126:12 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | -| Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | semmle.label | parameter this [Return] : MyAbstractDualBidiMap [] : String | -| Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | semmle.label | parameter this [Return] : MyAbstractDualBidiMap [] : String | -| Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | semmle.label | parameter this [Return] : MyAbstractDualBidiMap [] : String | -| Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | semmle.label | parameter this [Return] : MyAbstractDualBidiMap [] : String | -| Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | semmle.label | parameter this [Return] : MyAbstractDualBidiMap [] : String | -| Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | semmle.label | parameter this [Return] : MyAbstractDualBidiMap [] : String | -| Test.java:7134:32:7134:56 | normalMap : DualTreeBidiMap [] : String | semmle.label | normalMap : DualTreeBidiMap [] : String | -| Test.java:7134:32:7134:56 | normalMap : DualTreeBidiMap [] : String | semmle.label | normalMap : DualTreeBidiMap [] : String | -| Test.java:7134:59:7134:84 | reverseMap : DualTreeBidiMap [] : String | semmle.label | reverseMap : DualTreeBidiMap [] : String | -| Test.java:7134:59:7134:84 | reverseMap : DualTreeBidiMap [] : String | semmle.label | reverseMap : DualTreeBidiMap [] : String | -| Test.java:7134:87:7134:120 | inverseBidiMap : DualTreeBidiMap [] : String | semmle.label | inverseBidiMap : DualTreeBidiMap [] : String | -| Test.java:7134:87:7134:120 | inverseBidiMap : DualTreeBidiMap [] : String | semmle.label | inverseBidiMap : DualTreeBidiMap [] : String | -| Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | semmle.label | this [post update] : MyAbstractDualBidiMap [] : String | -| Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | semmle.label | this [post update] : MyAbstractDualBidiMap [] : String | -| Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | semmle.label | this [post update] : MyAbstractDualBidiMap [] : String | -| Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | semmle.label | this [post update] : MyAbstractDualBidiMap [] : String | -| Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | semmle.label | this [post update] : MyAbstractDualBidiMap [] : String | -| Test.java:7135:4:7135:48 | this [post update] : MyAbstractDualBidiMap [] : String | semmle.label | this [post update] : MyAbstractDualBidiMap [] : String | -| Test.java:7135:10:7135:18 | normalMap : DualTreeBidiMap [] : String | semmle.label | normalMap : DualTreeBidiMap [] : String | -| Test.java:7135:10:7135:18 | normalMap : DualTreeBidiMap [] : String | semmle.label | normalMap : DualTreeBidiMap [] : String | -| Test.java:7135:21:7135:30 | reverseMap : DualTreeBidiMap [] : String | semmle.label | reverseMap : DualTreeBidiMap [] : String | -| Test.java:7135:21:7135:30 | reverseMap : DualTreeBidiMap [] : String | semmle.label | reverseMap : DualTreeBidiMap [] : String | -| Test.java:7135:33:7135:46 | inverseBidiMap : DualTreeBidiMap [] : String | semmle.label | inverseBidiMap : DualTreeBidiMap [] : String | -| Test.java:7135:33:7135:46 | inverseBidiMap : DualTreeBidiMap [] : String | semmle.label | inverseBidiMap : DualTreeBidiMap [] : String | -| Test.java:7143:10:7143:42 | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | -| Test.java:7143:10:7143:42 | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | -| Test.java:7143:44:7143:73 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | -| Test.java:7143:44:7143:73 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | -| Test.java:7144:4:7144:14 | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | -| Test.java:7144:4:7144:14 | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | -| Test.java:7144:10:7144:12 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | -| Test.java:7144:10:7144:12 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | -| Test.java:7149:10:7149:38 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractCollectionDecorator [] : String | -| Test.java:7149:40:7149:63 | coll : TreeBag [] : String | semmle.label | coll : TreeBag [] : String | -| Test.java:7150:4:7150:15 | this [post update] : MyAbstractCollectionDecorator [] : String | semmle.label | this [post update] : MyAbstractCollectionDecorator [] : String | -| Test.java:7150:10:7150:13 | coll : TreeBag [] : String | semmle.label | coll : TreeBag [] : String | -| Test.java:7152:24:7152:34 | parameter this : MyAbstractCollectionDecorator [] : String | semmle.label | parameter this : MyAbstractCollectionDecorator [] : String | -| Test.java:7153:11:7153:15 | super : MyAbstractCollectionDecorator [] : String | semmle.label | super : MyAbstractCollectionDecorator [] : String | -| Test.java:7153:11:7153:27 | decorated(...) : Collection [] : String | semmle.label | decorated(...) : Collection [] : String | -| Test.java:7155:15:7155:29 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractCollectionDecorator [] : String | -| Test.java:7155:31:7155:54 | coll : TreeBag [] : String | semmle.label | coll : TreeBag [] : String | -| Test.java:7156:4:7156:8 | super [post update] : MyAbstractCollectionDecorator [] : String | semmle.label | super [post update] : MyAbstractCollectionDecorator [] : String | -| Test.java:7156:24:7156:27 | coll : TreeBag [] : String | semmle.label | coll : TreeBag [] : String | -| Test.java:7161:10:7161:36 | parameter this [Return] : MyAbstractIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractIteratorDecorator [] : String | -| Test.java:7161:38:7161:63 | iterator : ListIterator [] : String | semmle.label | iterator : ListIterator [] : String | -| Test.java:7162:4:7162:19 | this [post update] : MyAbstractIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractIteratorDecorator [] : String | +| Test.java:3430:22:3430:50 | (...)... : Collection [] : Object | semmle.label | (...)... : Collection [] : Object | +| Test.java:3430:35:3430:50 | getMapValue(...) : Object [] : Object | semmle.label | getMapValue(...) : Object [] : Object | +| Test.java:3430:47:3430:49 | out : MultiMap [, ] : Object | semmle.label | out : MultiMap [, ] : Object | +| Test.java:3431:9:3431:12 | coll : Collection [] : Object | semmle.label | coll : Collection [] : Object | +| Test.java:3431:9:3431:22 | toArray(...) : Object[] [[]] : Object | semmle.label | toArray(...) : Object[] [[]] : Object | +| Test.java:3431:9:3431:25 | ...[...] | semmle.label | ...[...] | +| Test.java:3436:16:3436:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3437:4:3437:6 | out [post update] : BidiMap [] : Object | semmle.label | out [post update] : BidiMap [] : Object | +| Test.java:3437:18:3437:19 | in : Object | semmle.label | in : Object | +| Test.java:3438:9:3438:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3438:21:3438:23 | out : BidiMap [] : Object | semmle.label | out : BidiMap [] : Object | +| Test.java:3443:16:3443:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3444:4:3444:6 | out [post update] : AbstractMapDecorator [] : Object | semmle.label | out [post update] : AbstractMapDecorator [] : Object | +| Test.java:3444:18:3444:19 | in : Object | semmle.label | in : Object | +| Test.java:3445:9:3445:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3445:21:3445:23 | out : AbstractMapDecorator [] : Object | semmle.label | out : AbstractMapDecorator [] : Object | +| Test.java:3450:13:3450:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | semmle.label | newHashedMapWithMapValue(...) : HashedMap [] : String | +| Test.java:3450:38:3450:53 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3450:46:3450:53 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3451:10:3451:11 | in : HashedMap [] : String | semmle.label | in : HashedMap [] : String | +| Test.java:3451:10:3451:27 | put(...) : String | semmle.label | put(...) : String | +| Test.java:3452:9:3452:11 | out | semmle.label | out | +| Test.java:3457:23:3457:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:3457:42:3457:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3457:50:3457:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3458:10:3458:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | +| Test.java:3458:10:3458:27 | put(...) : String | semmle.label | put(...) : String | +| Test.java:3459:9:3459:11 | out | semmle.label | out | +| Test.java:3464:17:3464:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | semmle.label | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | +| Test.java:3464:44:3464:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3464:52:3464:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3465:10:3465:11 | in : TreeBidiMap [] : String | semmle.label | in : TreeBidiMap [] : String | +| Test.java:3465:10:3465:27 | put(...) : String | semmle.label | put(...) : String | +| Test.java:3466:9:3466:11 | out | semmle.label | out | +| Test.java:3471:30:3471:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:3471:49:3471:64 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3471:57:3471:64 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3472:10:3472:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | +| Test.java:3472:10:3472:27 | put(...) : String | semmle.label | put(...) : String | +| Test.java:3473:9:3473:11 | out | semmle.label | out | +| Test.java:3478:13:3478:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:3478:34:3478:49 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3478:42:3478:49 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3479:4:3479:6 | out [post update] : Put [] : String | semmle.label | out [post update] : Put [] : String | +| Test.java:3479:15:3479:16 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:3480:9:3480:29 | getMapKeyFromPut(...) | semmle.label | getMapKeyFromPut(...) | +| Test.java:3480:26:3480:28 | out : Put [] : String | semmle.label | out : Put [] : String | +| Test.java:3485:13:3485:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:3485:34:3485:49 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3485:42:3485:49 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3486:4:3486:6 | out [post update] : MultiValueMap [] : String | semmle.label | out [post update] : MultiValueMap [] : String | +| Test.java:3486:15:3486:16 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:3487:9:3487:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3487:19:3487:21 | out : MultiValueMap [] : String | semmle.label | out : MultiValueMap [] : String | +| Test.java:3492:13:3492:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:3492:34:3492:49 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3492:42:3492:49 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3493:4:3493:6 | out [post update] : AbstractMapDecorator [] : String | semmle.label | out [post update] : AbstractMapDecorator [] : String | +| Test.java:3493:15:3493:16 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:3494:9:3494:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3494:19:3494:21 | out : AbstractMapDecorator [] : String | semmle.label | out : AbstractMapDecorator [] : String | +| Test.java:3499:13:3499:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:3499:36:3499:51 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3499:44:3499:51 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3500:4:3500:6 | out [post update] : Put [] : String | semmle.label | out [post update] : Put [] : String | +| Test.java:3500:15:3500:16 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:3501:9:3501:31 | getMapValueFromPut(...) | semmle.label | getMapValueFromPut(...) | +| Test.java:3501:28:3501:30 | out : Put [] : String | semmle.label | out : Put [] : String | +| Test.java:3506:13:3506:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:3506:36:3506:51 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3506:44:3506:51 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3507:4:3507:6 | out [post update] : MultiValueMap [] : String | semmle.label | out [post update] : MultiValueMap [] : String | +| Test.java:3507:15:3507:16 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:3508:9:3508:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3508:21:3508:23 | out : MultiValueMap [] : String | semmle.label | out : MultiValueMap [] : String | +| Test.java:3513:13:3513:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:3513:36:3513:51 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3513:44:3513:51 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3514:4:3514:6 | out [post update] : AbstractMapDecorator [] : String | semmle.label | out [post update] : AbstractMapDecorator [] : String | +| Test.java:3514:15:3514:16 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:3515:9:3515:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3515:21:3515:23 | out : AbstractMapDecorator [] : String | semmle.label | out : AbstractMapDecorator [] : String | +| Test.java:3520:15:3520:51 | newQueueWithElement(...) : LinkedList [] : String | semmle.label | newQueueWithElement(...) : LinkedList [] : String | +| Test.java:3520:35:3520:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3520:43:3520:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3521:10:3521:45 | predicatedQueue(...) : Queue [] : String | semmle.label | predicatedQueue(...) : Queue [] : String | +| Test.java:3521:37:3521:38 | in : LinkedList [] : String | semmle.label | in : LinkedList [] : String | +| Test.java:3522:9:3522:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3522:20:3522:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | +| Test.java:3527:15:3527:51 | newQueueWithElement(...) : LinkedList [] : String | semmle.label | newQueueWithElement(...) : LinkedList [] : String | +| Test.java:3527:35:3527:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3527:43:3527:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3528:10:3528:41 | synchronizedQueue(...) : Queue [] : String | semmle.label | synchronizedQueue(...) : Queue [] : String | +| Test.java:3528:39:3528:40 | in : LinkedList [] : String | semmle.label | in : LinkedList [] : String | +| Test.java:3529:9:3529:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3529:20:3529:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | +| Test.java:3534:15:3534:51 | newQueueWithElement(...) : LinkedList [] : String | semmle.label | newQueueWithElement(...) : LinkedList [] : String | +| Test.java:3534:35:3534:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3534:43:3534:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3535:10:3535:47 | transformingQueue(...) : Queue [] : String | semmle.label | transformingQueue(...) : Queue [] : String | +| Test.java:3535:39:3535:40 | in : LinkedList [] : String | semmle.label | in : LinkedList [] : String | +| Test.java:3536:9:3536:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3536:20:3536:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | +| Test.java:3541:15:3541:51 | newQueueWithElement(...) : LinkedList [] : String | semmle.label | newQueueWithElement(...) : LinkedList [] : String | +| Test.java:3541:35:3541:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3541:43:3541:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3542:10:3542:41 | unmodifiableQueue(...) : Queue [] : String | semmle.label | unmodifiableQueue(...) : Queue [] : String | +| Test.java:3542:39:3542:40 | in : LinkedList [] : String | semmle.label | in : LinkedList [] : String | +| Test.java:3543:9:3543:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3543:20:3543:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | +| Test.java:3548:26:3548:64 | newSetViewWithElement(...) : MySetView [] : String | semmle.label | newSetViewWithElement(...) : MySetView [] : String | +| Test.java:3548:48:3548:63 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3548:56:3548:63 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3549:4:3549:5 | in : MySetView [] : String | semmle.label | in : MySetView [] : String | +| Test.java:3549:16:3549:18 | out [post update] : Set [] : String | semmle.label | out [post update] : Set [] : String | +| Test.java:3550:9:3550:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3550:20:3550:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:3555:19:3555:57 | newSetViewWithElement(...) : MySetView [] : String | semmle.label | newSetViewWithElement(...) : MySetView [] : String | +| Test.java:3555:41:3555:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3555:49:3555:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3556:10:3556:11 | in : MySetView [] : String | semmle.label | in : MySetView [] : String | +| Test.java:3556:10:3556:30 | myCreateIterator(...) : Iterator [] : String | semmle.label | myCreateIterator(...) : Iterator [] : String | +| Test.java:3557:9:3557:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3557:20:3557:22 | out : Iterator [] : String | semmle.label | out : Iterator [] : String | +| Test.java:3562:19:3562:57 | newSetViewWithElement(...) : MySetView [] : String | semmle.label | newSetViewWithElement(...) : MySetView [] : String | +| Test.java:3562:41:3562:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3562:49:3562:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3563:10:3563:11 | in : MySetView [] : String | semmle.label | in : MySetView [] : String | +| Test.java:3563:10:3563:19 | toSet(...) : Set [] : String | semmle.label | toSet(...) : Set [] : String | +| Test.java:3564:9:3564:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3564:20:3564:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:3569:13:3569:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3569:35:3569:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3569:43:3569:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3570:10:3570:38 | difference(...) : SetView [] : String | semmle.label | difference(...) : SetView [] : String | +| Test.java:3570:30:3570:31 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3571:9:3571:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3571:20:3571:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | +| Test.java:3576:13:3576:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3576:35:3576:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3576:43:3576:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3577:10:3577:39 | disjunction(...) : SetView [] : String | semmle.label | disjunction(...) : SetView [] : String | +| Test.java:3577:31:3577:32 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3578:9:3578:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3578:20:3578:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | +| Test.java:3583:13:3583:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3583:35:3583:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3583:43:3583:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3584:10:3584:39 | disjunction(...) : SetView [] : String | semmle.label | disjunction(...) : SetView [] : String | +| Test.java:3584:37:3584:38 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3585:9:3585:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3585:20:3585:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | +| Test.java:3590:13:3590:25 | (...)... : Set | semmle.label | (...)... : Set | +| Test.java:3590:18:3590:25 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3591:10:3591:33 | emptyIfNull(...) : Set | semmle.label | emptyIfNull(...) : Set | +| Test.java:3591:31:3591:32 | in : Set | semmle.label | in : Set | +| Test.java:3592:9:3592:11 | out | semmle.label | out | +| Test.java:3597:16:3597:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3598:10:3598:35 | hashSet(...) : HashSet [] : Object | semmle.label | hashSet(...) : HashSet [] : Object | +| Test.java:3598:10:3598:35 | new ..[] { .. } : Object[] [[]] : Object | semmle.label | new ..[] { .. } : Object[] [[]] : Object | +| Test.java:3598:27:3598:28 | in : Object | semmle.label | in : Object | +| Test.java:3599:9:3599:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3599:20:3599:22 | out : HashSet [] : Object | semmle.label | out : HashSet [] : Object | +| Test.java:3604:13:3604:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3604:35:3604:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3604:43:3604:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3605:10:3605:40 | intersection(...) : SetView [] : String | semmle.label | intersection(...) : SetView [] : String | +| Test.java:3605:32:3605:33 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3606:9:3606:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3606:20:3606:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | +| Test.java:3611:13:3611:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3611:35:3611:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3611:43:3611:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3612:10:3612:40 | intersection(...) : SetView [] : String | semmle.label | intersection(...) : SetView [] : String | +| Test.java:3612:38:3612:39 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3613:9:3613:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3613:20:3613:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | +| Test.java:3618:13:3618:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3618:35:3618:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3618:43:3618:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3619:10:3619:32 | orderedSet(...) : Set [] : String | semmle.label | orderedSet(...) : Set [] : String | +| Test.java:3619:30:3619:31 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3620:9:3620:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3620:20:3620:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:3625:22:3625:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3625:44:3625:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3625:52:3625:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3626:10:3626:50 | predicatedNavigableSet(...) : SortedSet [] : String | semmle.label | predicatedNavigableSet(...) : SortedSet [] : String | +| Test.java:3626:42:3626:43 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3627:9:3627:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3627:20:3627:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | +| Test.java:3632:13:3632:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3632:35:3632:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3632:43:3632:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3633:10:3633:41 | predicatedSet(...) : Set [] : String | semmle.label | predicatedSet(...) : Set [] : String | +| Test.java:3633:33:3633:34 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3634:9:3634:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3634:20:3634:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:3639:19:3639:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3639:41:3639:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3639:49:3639:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3640:10:3640:47 | predicatedSortedSet(...) : SortedSet [] : String | semmle.label | predicatedSortedSet(...) : SortedSet [] : String | +| Test.java:3640:39:3640:40 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3641:9:3641:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3641:20:3641:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | +| Test.java:3646:13:3646:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3646:35:3646:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3646:43:3646:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3647:10:3647:37 | synchronizedSet(...) : Set [] : String | semmle.label | synchronizedSet(...) : Set [] : String | +| Test.java:3647:35:3647:36 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3648:9:3648:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3648:20:3648:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:3653:19:3653:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3653:41:3653:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3653:49:3653:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3654:10:3654:43 | synchronizedSortedSet(...) : SortedSet [] : String | semmle.label | synchronizedSortedSet(...) : SortedSet [] : String | +| Test.java:3654:41:3654:42 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3655:9:3655:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3655:20:3655:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | +| Test.java:3660:22:3660:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3660:44:3660:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3660:52:3660:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3661:10:3661:51 | transformedNavigableSet(...) : SortedSet [] : String | semmle.label | transformedNavigableSet(...) : SortedSet [] : String | +| Test.java:3661:43:3661:44 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3662:9:3662:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3662:20:3662:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | +| Test.java:3667:13:3667:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3667:35:3667:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3667:43:3667:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3668:10:3668:42 | transformedSet(...) : Set [] : String | semmle.label | transformedSet(...) : Set [] : String | +| Test.java:3668:34:3668:35 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3669:9:3669:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3669:20:3669:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:3674:19:3674:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3674:41:3674:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3674:49:3674:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3675:10:3675:48 | transformedSortedSet(...) : SortedSet [] : String | semmle.label | transformedSortedSet(...) : SortedSet [] : String | +| Test.java:3675:40:3675:41 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3676:9:3676:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3676:20:3676:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | +| Test.java:3681:13:3681:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3681:35:3681:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3681:43:3681:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3682:10:3682:33 | union(...) : SetView [] : String | semmle.label | union(...) : SetView [] : String | +| Test.java:3682:25:3682:26 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3683:9:3683:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3683:20:3683:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | +| Test.java:3688:13:3688:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3688:35:3688:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3688:43:3688:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3689:10:3689:33 | union(...) : SetView [] : String | semmle.label | union(...) : SetView [] : String | +| Test.java:3689:31:3689:32 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3690:9:3690:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3690:20:3690:22 | out : SetView [] : String | semmle.label | out : SetView [] : String | +| Test.java:3695:22:3695:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3695:44:3695:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3695:52:3695:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3696:10:3696:46 | unmodifiableNavigableSet(...) : SortedSet [] : String | semmle.label | unmodifiableNavigableSet(...) : SortedSet [] : String | +| Test.java:3696:44:3696:45 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3697:9:3697:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3697:20:3697:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | +| Test.java:3702:16:3702:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3703:10:3703:43 | new ..[] { .. } : Object[] [[]] : Object | semmle.label | new ..[] { .. } : Object[] [[]] : Object | +| Test.java:3703:10:3703:43 | unmodifiableSet(...) : Set [] : Object | semmle.label | unmodifiableSet(...) : Set [] : Object | +| Test.java:3703:35:3703:36 | in : Object | semmle.label | in : Object | +| Test.java:3704:9:3704:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3704:20:3704:22 | out : Set [] : Object | semmle.label | out : Set [] : Object | +| Test.java:3709:13:3709:51 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3709:35:3709:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3709:43:3709:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3710:10:3710:37 | unmodifiableSet(...) : Set [] : String | semmle.label | unmodifiableSet(...) : Set [] : String | +| Test.java:3710:35:3710:36 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3711:9:3711:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3711:20:3711:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:3716:19:3716:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3716:41:3716:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3716:49:3716:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3717:10:3717:43 | unmodifiableSortedSet(...) : SortedSet [] : String | semmle.label | unmodifiableSortedSet(...) : SortedSet [] : String | +| Test.java:3717:41:3717:42 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:3718:9:3718:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3718:20:3718:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | +| Test.java:3723:19:3723:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3723:41:3723:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3723:49:3723:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3724:10:3724:11 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3724:10:3724:19 | first(...) : String | semmle.label | first(...) : String | +| Test.java:3725:9:3725:11 | out | semmle.label | out | +| Test.java:3730:19:3730:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3730:41:3730:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3730:49:3730:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3731:10:3731:11 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3731:10:3731:18 | last(...) : String | semmle.label | last(...) : String | +| Test.java:3732:9:3732:11 | out | semmle.label | out | +| Test.java:3737:13:3737:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | semmle.label | newHashedMapWithMapKey(...) : HashedMap [] : String | +| Test.java:3737:36:3737:51 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3737:44:3737:51 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3738:10:3738:38 | readableMap(...) : IterableMap [] : String | semmle.label | readableMap(...) : IterableMap [] : String | +| Test.java:3738:36:3738:37 | in : HashedMap [] : String | semmle.label | in : HashedMap [] : String | +| Test.java:3739:9:3739:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3739:19:3739:21 | out : IterableMap [] : String | semmle.label | out : IterableMap [] : String | +| Test.java:3744:13:3744:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | semmle.label | newHashedMapWithMapValue(...) : HashedMap [] : String | +| Test.java:3744:38:3744:53 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3744:46:3744:53 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3745:10:3745:38 | readableMap(...) : IterableMap [] : String | semmle.label | readableMap(...) : IterableMap [] : String | +| Test.java:3745:36:3745:37 | in : HashedMap [] : String | semmle.label | in : HashedMap [] : String | +| Test.java:3746:9:3746:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3746:21:3746:23 | out : IterableMap [] : String | semmle.label | out : IterableMap [] : String | +| Test.java:3751:13:3751:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | semmle.label | newHashedMapWithMapKey(...) : HashedMap [] : String | +| Test.java:3751:36:3751:51 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3751:44:3751:51 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3752:10:3752:38 | writableMap(...) : Map [] : String | semmle.label | writableMap(...) : Map [] : String | +| Test.java:3752:36:3752:37 | in : HashedMap [] : String | semmle.label | in : HashedMap [] : String | +| Test.java:3753:9:3753:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3753:19:3753:21 | out : Map [] : String | semmle.label | out : Map [] : String | +| Test.java:3758:13:3758:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | semmle.label | newHashedMapWithMapValue(...) : HashedMap [] : String | +| Test.java:3758:38:3758:53 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3758:46:3758:53 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3759:10:3759:38 | writableMap(...) : Map [] : String | semmle.label | writableMap(...) : Map [] : String | +| Test.java:3759:36:3759:37 | in : HashedMap [] : String | semmle.label | in : HashedMap [] : String | +| Test.java:3760:9:3760:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3760:21:3760:23 | out : Map [] : String | semmle.label | out : Map [] : String | +| Test.java:3765:14:3765:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | +| Test.java:3765:40:3765:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3765:48:3765:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3766:10:3766:11 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | +| Test.java:3766:10:3766:27 | prefixMap(...) : SortedMap [] : String | semmle.label | prefixMap(...) : SortedMap [] : String | +| Test.java:3767:9:3767:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3767:19:3767:21 | out : SortedMap [] : String | semmle.label | out : SortedMap [] : String | +| Test.java:3772:14:3772:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | +| Test.java:3772:42:3772:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3772:50:3772:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3773:10:3773:11 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | +| Test.java:3773:10:3773:27 | prefixMap(...) : SortedMap [] : String | semmle.label | prefixMap(...) : SortedMap [] : String | +| Test.java:3774:9:3774:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3774:21:3774:23 | out : SortedMap [] : String | semmle.label | out : SortedMap [] : String | +| Test.java:3779:14:3779:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | +| Test.java:3779:40:3779:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3779:48:3779:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3780:10:3780:39 | unmodifiableTrie(...) : Trie [] : String | semmle.label | unmodifiableTrie(...) : Trie [] : String | +| Test.java:3780:37:3780:38 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | +| Test.java:3781:9:3781:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3781:19:3781:21 | out : Trie [] : String | semmle.label | out : Trie [] : String | +| Test.java:3786:14:3786:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | +| Test.java:3786:42:3786:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3786:50:3786:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3787:10:3787:39 | unmodifiableTrie(...) : Trie [] : String | semmle.label | unmodifiableTrie(...) : Trie [] : String | +| Test.java:3787:37:3787:38 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | +| Test.java:3788:9:3788:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3788:21:3788:23 | out : Trie [] : String | semmle.label | out : Trie [] : String | +| Test.java:3793:13:3793:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3793:35:3793:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3793:43:3793:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3794:10:3794:39 | new MyAbstractBagDecorator<>(...) : MyAbstractBagDecorator [] : String | semmle.label | new MyAbstractBagDecorator<>(...) : MyAbstractBagDecorator [] : String | +| Test.java:3794:37:3794:38 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3795:9:3795:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3795:20:3795:22 | out : MyAbstractBagDecorator [] : String | semmle.label | out : MyAbstractBagDecorator [] : String | +| Test.java:3800:13:3800:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:3800:20:3800:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3800:28:3800:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3801:10:3801:33 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | semmle.label | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | +| Test.java:3801:31:3801:32 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:3802:9:3802:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3802:20:3802:22 | out : MyAbstractMapBag [] : String | semmle.label | out : MyAbstractMapBag [] : String | +| Test.java:3807:26:3807:77 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | semmle.label | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | +| Test.java:3807:47:3807:76 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:3807:54:3807:69 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3807:62:3807:69 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3808:10:3808:11 | in : MyAbstractMapBag [] : String | semmle.label | in : MyAbstractMapBag [] : String | +| Test.java:3808:10:3808:22 | myGetMap(...) : Map [] : String | semmle.label | myGetMap(...) : Map [] : String | +| Test.java:3809:9:3809:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3809:19:3809:21 | out : Map [] : String | semmle.label | out : Map [] : String | +| Test.java:3814:19:3814:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3814:41:3814:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3814:49:3814:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3815:10:3815:45 | new MyAbstractSortedBagDecorator<>(...) : MyAbstractSortedBagDecorator [] : String | semmle.label | new MyAbstractSortedBagDecorator<>(...) : MyAbstractSortedBagDecorator [] : String | +| Test.java:3815:43:3815:44 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3816:9:3816:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3816:20:3816:22 | out : MyAbstractSortedBagDecorator [] : String | semmle.label | out : MyAbstractSortedBagDecorator [] : String | +| Test.java:3821:13:3821:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3821:35:3821:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3821:43:3821:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3822:10:3822:30 | new CollectionBag<>(...) : CollectionBag [] : String | semmle.label | new CollectionBag<>(...) : CollectionBag [] : String | +| Test.java:3822:28:3822:29 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3823:9:3823:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3823:20:3823:22 | out : CollectionBag [] : String | semmle.label | out : CollectionBag [] : String | +| Test.java:3828:13:3828:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3828:35:3828:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3828:43:3828:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3829:10:3829:40 | collectionBag(...) : Bag [] : String | semmle.label | collectionBag(...) : Bag [] : String | +| Test.java:3829:38:3829:39 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3830:9:3830:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3830:20:3830:22 | out : Bag [] : String | semmle.label | out : Bag [] : String | +| Test.java:3835:19:3835:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3835:41:3835:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3835:49:3835:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3836:10:3836:36 | new CollectionSortedBag<>(...) : CollectionSortedBag [] : String | semmle.label | new CollectionSortedBag<>(...) : CollectionSortedBag [] : String | +| Test.java:3836:34:3836:35 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3837:9:3837:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3837:20:3837:22 | out : CollectionSortedBag [] : String | semmle.label | out : CollectionSortedBag [] : String | +| Test.java:3842:19:3842:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3842:41:3842:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3842:49:3842:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3843:10:3843:52 | collectionSortedBag(...) : SortedBag [] : String | semmle.label | collectionSortedBag(...) : SortedBag [] : String | +| Test.java:3843:50:3843:51 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3844:9:3844:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3844:20:3844:22 | out : SortedBag [] : String | semmle.label | out : SortedBag [] : String | +| Test.java:3849:20:3849:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3849:42:3849:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3849:50:3849:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3850:10:3850:24 | new HashBag<>(...) : HashBag [] : String | semmle.label | new HashBag<>(...) : HashBag [] : String | +| Test.java:3850:22:3850:23 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3851:9:3851:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3851:20:3851:22 | out : HashBag [] : String | semmle.label | out : HashBag [] : String | +| Test.java:3856:13:3856:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3856:35:3856:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3856:43:3856:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3857:10:3857:46 | predicatedBag(...) : PredicatedBag [] : String | semmle.label | predicatedBag(...) : PredicatedBag [] : String | +| Test.java:3857:38:3857:39 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3858:9:3858:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3858:20:3858:22 | out : PredicatedBag [] : String | semmle.label | out : PredicatedBag [] : String | +| Test.java:3863:19:3863:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3863:41:3863:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3863:49:3863:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3864:10:3864:58 | predicatedSortedBag(...) : PredicatedSortedBag [] : String | semmle.label | predicatedSortedBag(...) : PredicatedSortedBag [] : String | +| Test.java:3864:50:3864:51 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3865:9:3865:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3865:20:3865:22 | out : PredicatedSortedBag [] : String | semmle.label | out : PredicatedSortedBag [] : String | +| Test.java:3870:13:3870:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3870:35:3870:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3870:43:3870:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3871:10:3871:44 | synchronizedBag(...) : SynchronizedBag [] : String | semmle.label | synchronizedBag(...) : SynchronizedBag [] : String | +| Test.java:3871:42:3871:43 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3872:9:3872:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3872:20:3872:22 | out : SynchronizedBag [] : String | semmle.label | out : SynchronizedBag [] : String | +| Test.java:3877:19:3877:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3877:41:3877:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3877:49:3877:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3878:10:3878:56 | synchronizedSortedBag(...) : SynchronizedSortedBag [] : String | semmle.label | synchronizedSortedBag(...) : SynchronizedSortedBag [] : String | +| Test.java:3878:54:3878:55 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3879:9:3879:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3879:20:3879:22 | out : SynchronizedSortedBag [] : String | semmle.label | out : SynchronizedSortedBag [] : String | +| Test.java:3884:13:3884:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3884:35:3884:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3884:43:3884:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3885:10:3885:48 | transformedBag(...) : Bag [] : String | semmle.label | transformedBag(...) : Bag [] : String | +| Test.java:3885:40:3885:41 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3886:9:3886:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3886:20:3886:22 | out : Bag [] : String | semmle.label | out : Bag [] : String | +| Test.java:3891:19:3891:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3891:41:3891:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3891:49:3891:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3892:10:3892:60 | transformedSortedBag(...) : TransformedSortedBag [] : String | semmle.label | transformedSortedBag(...) : TransformedSortedBag [] : String | +| Test.java:3892:52:3892:53 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3893:9:3893:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3893:20:3893:22 | out : TransformedSortedBag [] : String | semmle.label | out : TransformedSortedBag [] : String | +| Test.java:3898:20:3898:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3898:42:3898:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3898:50:3898:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3899:10:3899:24 | new TreeBag<>(...) : TreeBag [] : String | semmle.label | new TreeBag<>(...) : TreeBag [] : String | +| Test.java:3899:22:3899:23 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3900:9:3900:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3900:20:3900:22 | out : TreeBag [] : String | semmle.label | out : TreeBag [] : String | +| Test.java:3905:13:3905:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3905:35:3905:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3905:43:3905:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3906:10:3906:44 | unmodifiableBag(...) : Bag [] : String | semmle.label | unmodifiableBag(...) : Bag [] : String | +| Test.java:3906:42:3906:43 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3907:9:3907:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3907:20:3907:22 | out : Bag [] : String | semmle.label | out : Bag [] : String | +| Test.java:3912:19:3912:57 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3912:41:3912:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3912:49:3912:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3913:10:3913:56 | unmodifiableSortedBag(...) : SortedBag [] : String | semmle.label | unmodifiableSortedBag(...) : SortedBag [] : String | +| Test.java:3913:54:3913:55 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:3914:9:3914:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:3914:20:3914:22 | out : SortedBag [] : String | semmle.label | out : SortedBag [] : String | +| Test.java:3919:17:3919:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:3919:46:3919:61 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3919:54:3919:61 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3920:10:3920:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | semmle.label | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | +| Test.java:3920:41:3920:42 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:3921:9:3921:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3921:19:3921:21 | out : MyAbstractBidiMapDecorator [] : String | semmle.label | out : MyAbstractBidiMapDecorator [] : String | +| Test.java:3926:17:3926:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:3926:48:3926:63 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3926:56:3926:63 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3927:10:3927:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | semmle.label | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | +| Test.java:3927:41:3927:42 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:3928:9:3928:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3928:21:3928:23 | out : MyAbstractBidiMapDecorator [] : String | semmle.label | out : MyAbstractBidiMapDecorator [] : String | +| Test.java:3933:17:3933:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:3933:46:3933:61 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3933:54:3933:61 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3934:10:3934:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | semmle.label | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | +| Test.java:3934:36:3934:37 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:3935:9:3935:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3935:19:3935:21 | out : MyAbstractDualBidiMap [] : String | semmle.label | out : MyAbstractDualBidiMap [] : String | +| Test.java:3940:17:3940:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:3940:46:3940:61 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3940:54:3940:61 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3941:10:3941:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | semmle.label | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | +| Test.java:3941:42:3941:43 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:3942:9:3942:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3942:21:3942:23 | out : MyAbstractDualBidiMap [] : String | semmle.label | out : MyAbstractDualBidiMap [] : String | +| Test.java:3947:17:3947:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:3947:46:3947:61 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3947:54:3947:61 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3948:10:3948:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | semmle.label | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | +| Test.java:3948:48:3948:49 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:3949:9:3949:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3949:21:3949:23 | out : MyAbstractDualBidiMap [] : String | semmle.label | out : MyAbstractDualBidiMap [] : String | +| Test.java:3954:17:3954:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:3954:48:3954:63 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3954:56:3954:63 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3955:10:3955:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | semmle.label | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | +| Test.java:3955:36:3955:37 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:3956:9:3956:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3956:21:3956:23 | out : MyAbstractDualBidiMap [] : String | semmle.label | out : MyAbstractDualBidiMap [] : String | +| Test.java:3961:17:3961:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:3961:48:3961:63 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3961:56:3961:63 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3962:10:3962:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | semmle.label | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | +| Test.java:3962:42:3962:43 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:3963:9:3963:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3963:19:3963:21 | out : MyAbstractDualBidiMap [] : String | semmle.label | out : MyAbstractDualBidiMap [] : String | +| Test.java:3968:17:3968:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:3968:48:3968:63 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3968:56:3968:63 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3969:10:3969:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | semmle.label | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | +| Test.java:3969:48:3969:49 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:3970:9:3970:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3970:19:3970:21 | out : MyAbstractDualBidiMap [] : String | semmle.label | out : MyAbstractDualBidiMap [] : String | +| Test.java:3975:24:3975:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:3975:53:3975:68 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3975:61:3975:68 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3976:10:3976:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | +| Test.java:3976:48:3976:49 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:3977:9:3977:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3977:19:3977:21 | out : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | out : MyAbstractOrderedBidiMapDecorator [] : String | +| Test.java:3982:24:3982:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:3982:55:3982:70 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3982:63:3982:70 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3983:10:3983:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | +| Test.java:3983:48:3983:49 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:3984:9:3984:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3984:21:3984:23 | out : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | out : MyAbstractOrderedBidiMapDecorator [] : String | +| Test.java:3989:23:3989:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:3989:52:3989:67 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3989:60:3989:67 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3990:10:3990:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | +| Test.java:3990:47:3990:48 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:3991:9:3991:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:3991:19:3991:21 | out : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | out : MyAbstractSortedBidiMapDecorator [] : String | +| Test.java:3996:23:3996:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:3996:54:3996:69 | (...)... : String | semmle.label | (...)... : String | +| Test.java:3996:62:3996:69 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:3997:10:3997:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | +| Test.java:3997:47:3997:48 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:3998:9:3998:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:3998:21:3998:23 | out : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | out : MyAbstractSortedBidiMapDecorator [] : String | +| Test.java:4003:13:4003:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:4003:20:4003:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4003:28:4003:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4004:10:4004:32 | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | semmle.label | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | +| Test.java:4004:30:4004:31 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:4005:9:4005:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:4005:19:4005:21 | out : DualHashBidiMap [] : String | semmle.label | out : DualHashBidiMap [] : String | +| Test.java:4010:13:4010:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:4010:26:4010:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4010:34:4010:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4011:10:4011:32 | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | semmle.label | new DualHashBidiMap<>(...) : DualHashBidiMap [] : String | +| Test.java:4011:30:4011:31 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:4012:9:4012:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4012:21:4012:23 | out : DualHashBidiMap [] : String | semmle.label | out : DualHashBidiMap [] : String | +| Test.java:4017:13:4017:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:4017:20:4017:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4017:28:4017:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4018:10:4018:38 | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | semmle.label | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | +| Test.java:4018:36:4018:37 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:4019:9:4019:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:4019:19:4019:21 | out : DualLinkedHashBidiMap [] : String | semmle.label | out : DualLinkedHashBidiMap [] : String | +| Test.java:4024:13:4024:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:4024:26:4024:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4024:34:4024:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4025:10:4025:38 | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | semmle.label | new DualLinkedHashBidiMap<>(...) : DualLinkedHashBidiMap [] : String | +| Test.java:4025:36:4025:37 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:4026:9:4026:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4026:21:4026:23 | out : DualLinkedHashBidiMap [] : String | semmle.label | out : DualLinkedHashBidiMap [] : String | +| Test.java:4031:13:4031:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:4031:20:4031:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4031:28:4031:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4032:10:4032:32 | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | semmle.label | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | +| Test.java:4032:30:4032:31 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:4033:9:4033:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:4033:19:4033:21 | out : DualTreeBidiMap [] : String | semmle.label | out : DualTreeBidiMap [] : String | +| Test.java:4038:13:4038:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:4038:26:4038:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4038:34:4038:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4039:10:4039:32 | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | semmle.label | new DualTreeBidiMap<>(...) : DualTreeBidiMap [] : String | +| Test.java:4039:30:4039:31 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:4040:9:4040:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4040:21:4040:23 | out : DualTreeBidiMap [] : String | semmle.label | out : DualTreeBidiMap [] : String | +| Test.java:4045:25:4045:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:4045:54:4045:69 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4045:62:4045:69 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4046:10:4046:11 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:4046:10:4046:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | +| Test.java:4047:9:4047:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4047:21:4047:23 | out : OrderedBidiMap [] : String | semmle.label | out : OrderedBidiMap [] : String | +| Test.java:4052:25:4052:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:4052:56:4052:71 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4052:64:4052:71 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4053:10:4053:11 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:4053:10:4053:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | +| Test.java:4054:9:4054:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:4054:19:4054:21 | out : OrderedBidiMap [] : String | semmle.label | out : OrderedBidiMap [] : String | +| Test.java:4059:25:4059:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:4059:54:4059:69 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4059:62:4059:69 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4060:10:4060:11 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:4060:10:4060:34 | inverseSortedBidiMap(...) : SortedBidiMap [] : String | semmle.label | inverseSortedBidiMap(...) : SortedBidiMap [] : String | +| Test.java:4061:9:4061:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4061:21:4061:23 | out : SortedBidiMap [] : String | semmle.label | out : SortedBidiMap [] : String | +| Test.java:4066:25:4066:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:4066:56:4066:71 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4066:64:4066:71 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4067:10:4067:11 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:4067:10:4067:34 | inverseSortedBidiMap(...) : SortedBidiMap [] : String | semmle.label | inverseSortedBidiMap(...) : SortedBidiMap [] : String | +| Test.java:4068:9:4068:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:4068:19:4068:21 | out : SortedBidiMap [] : String | semmle.label | out : SortedBidiMap [] : String | +| Test.java:4073:13:4073:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:4073:20:4073:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4073:28:4073:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4074:10:4074:28 | new TreeBidiMap<>(...) : TreeBidiMap [] : String | semmle.label | new TreeBidiMap<>(...) : TreeBidiMap [] : String | +| Test.java:4074:26:4074:27 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:4075:9:4075:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:4075:19:4075:21 | out : TreeBidiMap [] : String | semmle.label | out : TreeBidiMap [] : String | +| Test.java:4080:13:4080:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:4080:26:4080:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4080:34:4080:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4081:10:4081:28 | new TreeBidiMap<>(...) : TreeBidiMap [] : String | semmle.label | new TreeBidiMap<>(...) : TreeBidiMap [] : String | +| Test.java:4081:26:4081:27 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:4082:9:4082:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4082:21:4082:23 | out : TreeBidiMap [] : String | semmle.label | out : TreeBidiMap [] : String | +| Test.java:4087:17:4087:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:4087:46:4087:61 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4087:54:4087:61 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4088:10:4088:52 | unmodifiableBidiMap(...) : BidiMap [] : String | semmle.label | unmodifiableBidiMap(...) : BidiMap [] : String | +| Test.java:4088:50:4088:51 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:4089:9:4089:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:4089:19:4089:21 | out : BidiMap [] : String | semmle.label | out : BidiMap [] : String | +| Test.java:4094:17:4094:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:4094:48:4094:63 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4094:56:4094:63 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4095:10:4095:52 | unmodifiableBidiMap(...) : BidiMap [] : String | semmle.label | unmodifiableBidiMap(...) : BidiMap [] : String | +| Test.java:4095:50:4095:51 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:4096:9:4096:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4096:21:4096:23 | out : BidiMap [] : String | semmle.label | out : BidiMap [] : String | +| Test.java:4101:36:4101:164 | (...)... : UnmodifiableOrderedBidiMap [] : String | semmle.label | (...)... : UnmodifiableOrderedBidiMap [] : String | +| Test.java:4101:64:4101:164 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | +| Test.java:4101:118:4101:163 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:4101:147:4101:162 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4101:155:4101:162 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4102:10:4102:11 | in : UnmodifiableOrderedBidiMap [] : String | semmle.label | in : UnmodifiableOrderedBidiMap [] : String | +| Test.java:4102:10:4102:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | +| Test.java:4103:9:4103:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4103:21:4103:23 | out : OrderedBidiMap [] : String | semmle.label | out : OrderedBidiMap [] : String | +| Test.java:4108:36:4108:166 | (...)... : UnmodifiableOrderedBidiMap [] : String | semmle.label | (...)... : UnmodifiableOrderedBidiMap [] : String | +| Test.java:4108:64:4108:166 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | +| Test.java:4108:118:4108:165 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:4108:149:4108:164 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4108:157:4108:164 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4109:10:4109:11 | in : UnmodifiableOrderedBidiMap [] : String | semmle.label | in : UnmodifiableOrderedBidiMap [] : String | +| Test.java:4109:10:4109:35 | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | inverseOrderedBidiMap(...) : OrderedBidiMap [] : String | +| Test.java:4110:9:4110:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:4110:19:4110:21 | out : OrderedBidiMap [] : String | semmle.label | out : OrderedBidiMap [] : String | +| Test.java:4115:24:4115:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:4115:53:4115:68 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4115:61:4115:68 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4116:10:4116:66 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | +| Test.java:4116:64:4116:65 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:4117:9:4117:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:4117:19:4117:21 | out : OrderedBidiMap [] : String | semmle.label | out : OrderedBidiMap [] : String | +| Test.java:4122:24:4122:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:4122:55:4122:70 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4122:63:4122:70 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4123:10:4123:66 | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | semmle.label | unmodifiableOrderedBidiMap(...) : OrderedBidiMap [] : String | +| Test.java:4123:64:4123:65 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:4124:9:4124:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4124:21:4124:23 | out : OrderedBidiMap [] : String | semmle.label | out : OrderedBidiMap [] : String | +| Test.java:4129:23:4129:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:4129:52:4129:67 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4129:60:4129:67 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4130:10:4130:64 | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | semmle.label | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | +| Test.java:4130:62:4130:63 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:4131:9:4131:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:4131:19:4131:21 | out : SortedBidiMap [] : String | semmle.label | out : SortedBidiMap [] : String | +| Test.java:4136:23:4136:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | semmle.label | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:4136:54:4136:69 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4136:62:4136:69 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4137:10:4137:64 | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | semmle.label | unmodifiableSortedBidiMap(...) : SortedBidiMap [] : String | +| Test.java:4137:62:4137:63 | in : DualTreeBidiMap [] : String | semmle.label | in : DualTreeBidiMap [] : String | +| Test.java:4138:9:4138:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4138:21:4138:23 | out : SortedBidiMap [] : String | semmle.label | out : SortedBidiMap [] : String | +| Test.java:4143:20:4143:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4143:42:4143:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4143:50:4143:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4144:10:4144:46 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | semmle.label | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | +| Test.java:4144:44:4144:45 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4145:9:4145:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4145:20:4145:22 | out : MyAbstractCollectionDecorator [] : String | semmle.label | out : MyAbstractCollectionDecorator [] : String | +| Test.java:4150:39:4150:112 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | semmle.label | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | +| Test.java:4150:73:4150:111 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4150:95:4150:110 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4150:103:4150:110 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4151:10:4151:11 | in : MyAbstractCollectionDecorator [] : String | semmle.label | in : MyAbstractCollectionDecorator [] : String | +| Test.java:4151:10:4151:25 | myDecorated(...) : Collection [] : String | semmle.label | myDecorated(...) : Collection [] : String | +| Test.java:4152:9:4152:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4152:20:4152:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | +| Test.java:4157:20:4157:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4157:42:4157:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4157:50:4157:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4158:4:4158:6 | out [post update] : MyAbstractCollectionDecorator [] : String | semmle.label | out [post update] : MyAbstractCollectionDecorator [] : String | +| Test.java:4158:24:4158:25 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4159:9:4159:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4159:20:4159:22 | out : MyAbstractCollectionDecorator [] : String | semmle.label | out : MyAbstractCollectionDecorator [] : String | +| Test.java:4164:16:4164:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4166:17:4166:19 | out [post update] : CompositeCollection [] : Object | semmle.label | out [post update] : CompositeCollection [] : Object | +| Test.java:4166:28:4166:29 | in : Object | semmle.label | in : Object | +| Test.java:4167:9:4167:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4167:20:4167:22 | out : CompositeCollection [] : Object | semmle.label | out : CompositeCollection [] : Object | +| Test.java:4172:16:4172:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4174:23:4174:25 | out [post update] : List [, ] : Object | semmle.label | out [post update] : List [, ] : Object | +| Test.java:4174:28:4174:29 | in : Object | semmle.label | in : Object | +| Test.java:4175:9:4175:35 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4175:20:4175:34 | getElement(...) : Collection [] : Object | semmle.label | getElement(...) : Collection [] : Object | +| Test.java:4175:31:4175:33 | out : List [, ] : Object | semmle.label | out : List [, ] : Object | +| Test.java:4180:20:4180:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4180:42:4180:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4180:50:4180:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4182:20:4182:22 | out [post update] : CompositeCollection [] : String | semmle.label | out [post update] : CompositeCollection [] : String | +| Test.java:4182:31:4182:32 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4183:9:4183:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4183:20:4183:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | +| Test.java:4188:20:4188:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4188:42:4188:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4188:50:4188:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4190:26:4190:28 | out [post update] : List [, ] : String | semmle.label | out [post update] : List [, ] : String | +| Test.java:4190:31:4190:32 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4191:9:4191:35 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4191:20:4191:34 | getElement(...) : Collection [] : String | semmle.label | getElement(...) : Collection [] : String | +| Test.java:4191:31:4191:33 | out : List [, ] : String | semmle.label | out : List [, ] : String | +| Test.java:4196:20:4196:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4196:42:4196:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4196:50:4196:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4197:10:4197:36 | new CompositeCollection<>(...) : CompositeCollection [] : String | semmle.label | new CompositeCollection<>(...) : CompositeCollection [] : String | +| Test.java:4197:34:4197:35 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4198:9:4198:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4198:20:4198:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | +| Test.java:4203:20:4203:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4203:42:4203:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4203:50:4203:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4204:10:4204:42 | new CompositeCollection<>(...) : CompositeCollection [] : String | semmle.label | new CompositeCollection<>(...) : CompositeCollection [] : String | +| Test.java:4204:34:4204:35 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4205:9:4205:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4205:20:4205:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | +| Test.java:4210:20:4210:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4210:42:4210:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4210:50:4210:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4211:10:4211:42 | new CompositeCollection<>(...) : CompositeCollection [] : String | semmle.label | new CompositeCollection<>(...) : CompositeCollection [] : String | +| Test.java:4211:40:4211:41 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4212:9:4212:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4212:20:4212:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | +| Test.java:4217:22:4217:78 | {...} : Collection[] [[], ] : String | semmle.label | {...} : Collection[] [[], ] : String | +| Test.java:4217:39:4217:77 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4217:61:4217:76 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4217:69:4217:76 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4218:10:4218:36 | new CompositeCollection<>(...) : CompositeCollection [] : String | semmle.label | new CompositeCollection<>(...) : CompositeCollection [] : String | +| Test.java:4218:34:4218:35 | in : Collection[] [[], ] : String | semmle.label | in : Collection[] [[], ] : String | +| Test.java:4219:9:4219:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4219:20:4219:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | +| Test.java:4224:20:4224:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4224:42:4224:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4224:50:4224:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4225:4:4225:6 | out [post update] : CompositeCollection [] : String | semmle.label | out [post update] : CompositeCollection [] : String | +| Test.java:4225:22:4225:23 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4226:9:4226:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4226:20:4226:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | +| Test.java:4231:20:4231:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4231:42:4231:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4231:50:4231:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4232:4:4232:6 | out [post update] : CompositeCollection [] : String | semmle.label | out [post update] : CompositeCollection [] : String | +| Test.java:4232:22:4232:23 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4233:9:4233:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4233:20:4233:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | +| Test.java:4238:20:4238:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4238:42:4238:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4238:50:4238:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4239:4:4239:6 | out [post update] : CompositeCollection [] : String | semmle.label | out [post update] : CompositeCollection [] : String | +| Test.java:4239:28:4239:29 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4240:9:4240:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4240:20:4240:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | +| Test.java:4245:22:4245:78 | {...} : Collection[] [[], ] : String | semmle.label | {...} : Collection[] [[], ] : String | +| Test.java:4245:39:4245:77 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4245:61:4245:76 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4245:69:4245:76 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4246:4:4246:6 | out [post update] : CompositeCollection [] : String | semmle.label | out [post update] : CompositeCollection [] : String | +| Test.java:4246:22:4246:23 | in : Collection[] [[], ] : String | semmle.label | in : Collection[] [[], ] : String | +| Test.java:4247:9:4247:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4247:20:4247:22 | out : CompositeCollection [] : String | semmle.label | out : CompositeCollection [] : String | +| Test.java:4252:29:4252:92 | new CompositeCollection<>(...) : CompositeCollection [] : String | semmle.label | new CompositeCollection<>(...) : CompositeCollection [] : String | +| Test.java:4252:53:4252:91 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4252:75:4252:90 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4252:83:4252:90 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4253:10:4253:11 | in : CompositeCollection [] : String | semmle.label | in : CompositeCollection [] : String | +| Test.java:4253:10:4253:28 | getCollections(...) : List [, ] : String | semmle.label | getCollections(...) : List [, ] : String | +| Test.java:4254:9:4254:35 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4254:20:4254:34 | getElement(...) : Collection [] : String | semmle.label | getElement(...) : Collection [] : String | +| Test.java:4254:31:4254:33 | out : List [, ] : String | semmle.label | out : List [, ] : String | +| Test.java:4259:29:4259:92 | new CompositeCollection<>(...) : CompositeCollection [] : String | semmle.label | new CompositeCollection<>(...) : CompositeCollection [] : String | +| Test.java:4259:53:4259:91 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4259:75:4259:90 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4259:83:4259:90 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4260:10:4260:11 | in : CompositeCollection [] : String | semmle.label | in : CompositeCollection [] : String | +| Test.java:4260:10:4260:26 | toCollection(...) : Collection [] : String | semmle.label | toCollection(...) : Collection [] : String | +| Test.java:4261:9:4261:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4261:20:4261:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | +| Test.java:4266:20:4266:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4266:42:4266:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4266:50:4266:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4267:10:4267:53 | new IndexedCollection<>(...) : IndexedCollection [] : String | semmle.label | new IndexedCollection<>(...) : IndexedCollection [] : String | +| Test.java:4267:32:4267:33 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4268:9:4268:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4268:20:4268:22 | out : IndexedCollection [] : String | semmle.label | out : IndexedCollection [] : String | +| Test.java:4273:27:4273:107 | new IndexedCollection<>(...) : IndexedCollection [] : String | semmle.label | new IndexedCollection<>(...) : IndexedCollection [] : String | +| Test.java:4273:49:4273:87 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4273:71:4273:86 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4273:79:4273:86 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4274:10:4274:11 | in : IndexedCollection [] : String | semmle.label | in : IndexedCollection [] : String | +| Test.java:4274:10:4274:21 | get(...) : String | semmle.label | get(...) : String | +| Test.java:4275:9:4275:11 | out | semmle.label | out | +| Test.java:4280:20:4280:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4280:42:4280:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4280:50:4280:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4281:10:4281:63 | nonUniqueIndexedCollection(...) : IndexedCollection [] : String | semmle.label | nonUniqueIndexedCollection(...) : IndexedCollection [] : String | +| Test.java:4281:55:4281:56 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4282:9:4282:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4282:20:4282:22 | out : IndexedCollection [] : String | semmle.label | out : IndexedCollection [] : String | +| Test.java:4287:20:4287:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4287:42:4287:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4287:50:4287:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4288:10:4288:60 | uniqueIndexedCollection(...) : IndexedCollection [] : String | semmle.label | uniqueIndexedCollection(...) : IndexedCollection [] : String | +| Test.java:4288:52:4288:53 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4289:9:4289:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4289:20:4289:22 | out : IndexedCollection [] : String | semmle.label | out : IndexedCollection [] : String | +| Test.java:4294:27:4294:107 | new IndexedCollection<>(...) : IndexedCollection [] : String | semmle.label | new IndexedCollection<>(...) : IndexedCollection [] : String | +| Test.java:4294:49:4294:87 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4294:71:4294:86 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4294:79:4294:86 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4295:10:4295:11 | in : IndexedCollection [] : String | semmle.label | in : IndexedCollection [] : String | +| Test.java:4295:10:4295:24 | values(...) : Collection [] : String | semmle.label | values(...) : Collection [] : String | +| Test.java:4296:9:4296:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4296:20:4296:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | +| Test.java:4301:16:4301:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4301:24:4301:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4302:4:4302:6 | out [post update] : Builder [] : String | semmle.label | out [post update] : Builder [] : String | +| Test.java:4302:12:4302:13 | in : String | semmle.label | in : String | +| Test.java:4303:9:4303:46 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4303:20:4303:22 | out : Builder [] : String | semmle.label | out : Builder [] : String | +| Test.java:4303:20:4303:45 | createPredicatedList(...) : List [] : String | semmle.label | createPredicatedList(...) : List [] : String | +| Test.java:4308:20:4308:44 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:4308:28:4308:43 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4308:36:4308:43 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4309:4:4309:6 | out [post update] : Builder [] : String | semmle.label | out [post update] : Builder [] : String | +| Test.java:4309:15:4309:16 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:4310:9:4310:46 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4310:20:4310:22 | out : Builder [] : String | semmle.label | out : Builder [] : String | +| Test.java:4310:20:4310:45 | createPredicatedList(...) : List [] : String | semmle.label | createPredicatedList(...) : List [] : String | +| Test.java:4315:38:4315:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4315:80:4315:95 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4315:88:4315:95 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4316:10:4316:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | +| Test.java:4316:10:4316:37 | createPredicatedBag(...) : Bag [] : String | semmle.label | createPredicatedBag(...) : Bag [] : String | +| Test.java:4317:9:4317:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4317:20:4317:22 | out : Bag [] : String | semmle.label | out : Bag [] : String | +| Test.java:4322:38:4322:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4322:80:4322:95 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4322:88:4322:95 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4323:10:4323:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | +| Test.java:4323:10:4323:33 | createPredicatedBag(...) : Bag [] : String | semmle.label | createPredicatedBag(...) : Bag [] : String | +| Test.java:4324:9:4324:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4324:20:4324:22 | out : Bag [] : String | semmle.label | out : Bag [] : String | +| Test.java:4329:13:4329:51 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4329:35:4329:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4329:43:4329:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4331:10:4331:41 | createPredicatedBag(...) : Bag [] : String | semmle.label | createPredicatedBag(...) : Bag [] : String | +| Test.java:4331:39:4331:40 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4332:9:4332:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4332:20:4332:22 | out : Bag [] : String | semmle.label | out : Bag [] : String | +| Test.java:4337:38:4337:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4337:80:4337:95 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4337:88:4337:95 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4338:10:4338:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | +| Test.java:4338:10:4338:38 | createPredicatedList(...) : List [] : String | semmle.label | createPredicatedList(...) : List [] : String | +| Test.java:4339:9:4339:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4339:20:4339:22 | out : List [] : String | semmle.label | out : List [] : String | +| Test.java:4344:38:4344:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4344:80:4344:95 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4344:88:4344:95 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4345:10:4345:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | +| Test.java:4345:10:4345:34 | createPredicatedList(...) : List [] : String | semmle.label | createPredicatedList(...) : List [] : String | +| Test.java:4346:9:4346:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4346:20:4346:22 | out : List [] : String | semmle.label | out : List [] : String | +| Test.java:4351:14:4351:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:4351:22:4351:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4351:30:4351:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4353:10:4353:42 | createPredicatedList(...) : List [] : String | semmle.label | createPredicatedList(...) : List [] : String | +| Test.java:4353:40:4353:41 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:4354:9:4354:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4354:20:4354:22 | out : List [] : String | semmle.label | out : List [] : String | +| Test.java:4359:38:4359:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4359:80:4359:95 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4359:88:4359:95 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4360:10:4360:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | +| Test.java:4360:10:4360:42 | createPredicatedMultiSet(...) : MultiSet [] : String | semmle.label | createPredicatedMultiSet(...) : MultiSet [] : String | +| Test.java:4361:9:4361:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4361:20:4361:22 | out : MultiSet [] : String | semmle.label | out : MultiSet [] : String | +| Test.java:4366:38:4366:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4366:80:4366:95 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4366:88:4366:95 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4367:10:4367:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | +| Test.java:4367:10:4367:38 | createPredicatedMultiSet(...) : MultiSet [] : String | semmle.label | createPredicatedMultiSet(...) : MultiSet [] : String | +| Test.java:4368:9:4368:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4368:20:4368:22 | out : MultiSet [] : String | semmle.label | out : MultiSet [] : String | +| Test.java:4373:18:4373:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | semmle.label | newHashMultiSetWithElement(...) : HashMultiSet [] : String | +| Test.java:4373:45:4373:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4373:53:4373:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4375:10:4375:46 | createPredicatedMultiSet(...) : MultiSet [] : String | semmle.label | createPredicatedMultiSet(...) : MultiSet [] : String | +| Test.java:4375:44:4375:45 | in : HashMultiSet [] : String | semmle.label | in : HashMultiSet [] : String | +| Test.java:4376:9:4376:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4376:20:4376:22 | out : MultiSet [] : String | semmle.label | out : MultiSet [] : String | +| Test.java:4381:38:4381:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4381:80:4381:95 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4381:88:4381:95 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4382:10:4382:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | +| Test.java:4382:10:4382:39 | createPredicatedQueue(...) : Queue [] : String | semmle.label | createPredicatedQueue(...) : Queue [] : String | +| Test.java:4383:9:4383:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4383:20:4383:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | +| Test.java:4388:38:4388:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4388:80:4388:95 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4388:88:4388:95 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4389:10:4389:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | +| Test.java:4389:10:4389:35 | createPredicatedQueue(...) : Queue [] : String | semmle.label | createPredicatedQueue(...) : Queue [] : String | +| Test.java:4390:9:4390:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4390:20:4390:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | +| Test.java:4395:15:4395:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:4395:47:4395:62 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4395:55:4395:62 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4397:10:4397:43 | createPredicatedQueue(...) : Queue [] : String | semmle.label | createPredicatedQueue(...) : Queue [] : String | +| Test.java:4397:41:4397:42 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | +| Test.java:4398:9:4398:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4398:20:4398:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | +| Test.java:4403:38:4403:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4403:80:4403:95 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4403:88:4403:95 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4404:10:4404:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | +| Test.java:4404:10:4404:37 | createPredicatedSet(...) : Set [] : String | semmle.label | createPredicatedSet(...) : Set [] : String | +| Test.java:4405:9:4405:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4405:20:4405:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:4410:38:4410:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4410:80:4410:95 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4410:88:4410:95 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4411:10:4411:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | +| Test.java:4411:10:4411:33 | createPredicatedSet(...) : Set [] : String | semmle.label | createPredicatedSet(...) : Set [] : String | +| Test.java:4412:9:4412:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4412:20:4412:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:4417:13:4417:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:4417:42:4417:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4417:50:4417:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4419:10:4419:41 | createPredicatedSet(...) : Set [] : String | semmle.label | createPredicatedSet(...) : Set [] : String | +| Test.java:4419:39:4419:40 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:4420:9:4420:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4420:20:4420:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:4425:38:4425:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | semmle.label | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4425:80:4425:95 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4425:88:4425:95 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4426:10:4426:11 | in : Builder [] : String | semmle.label | in : Builder [] : String | +| Test.java:4426:10:4426:30 | rejectedElements(...) : Collection [] : String | semmle.label | rejectedElements(...) : Collection [] : String | +| Test.java:4427:9:4427:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4427:20:4427:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | +| Test.java:4432:20:4432:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4432:42:4432:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4432:50:4432:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4433:10:4433:60 | predicatedCollection(...) : PredicatedCollection [] : String | semmle.label | predicatedCollection(...) : PredicatedCollection [] : String | +| Test.java:4433:52:4433:53 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4434:9:4434:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4434:20:4434:22 | out : PredicatedCollection [] : String | semmle.label | out : PredicatedCollection [] : String | +| Test.java:4439:20:4439:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4439:42:4439:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4439:50:4439:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4440:10:4440:58 | synchronizedCollection(...) : SynchronizedCollection [] : String | semmle.label | synchronizedCollection(...) : SynchronizedCollection [] : String | +| Test.java:4440:56:4440:57 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4441:9:4441:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4441:20:4441:22 | out : SynchronizedCollection [] : String | semmle.label | out : SynchronizedCollection [] : String | +| Test.java:4446:20:4446:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4446:42:4446:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4446:50:4446:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4447:10:4447:63 | transformingCollection(...) : TransformedCollection [] : String | semmle.label | transformingCollection(...) : TransformedCollection [] : String | +| Test.java:4447:55:4447:56 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4448:9:4448:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4448:20:4448:22 | out : TransformedCollection [] : String | semmle.label | out : TransformedCollection [] : String | +| Test.java:4453:20:4453:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4453:42:4453:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4453:50:4453:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4454:10:4454:72 | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | semmle.label | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | +| Test.java:4454:70:4454:71 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4455:9:4455:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4455:20:4455:22 | out : BoundedCollection [] : String | semmle.label | out : BoundedCollection [] : String | +| Test.java:4460:27:4460:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:4460:59:4460:74 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4460:67:4460:74 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4461:10:4461:72 | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | semmle.label | unmodifiableBoundedCollection(...) : BoundedCollection [] : String | +| Test.java:4461:70:4461:71 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | +| Test.java:4462:9:4462:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4462:20:4462:22 | out : BoundedCollection [] : String | semmle.label | out : BoundedCollection [] : String | +| Test.java:4467:20:4467:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4467:42:4467:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4467:50:4467:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4468:10:4468:58 | unmodifiableCollection(...) : Collection [] : String | semmle.label | unmodifiableCollection(...) : Collection [] : String | +| Test.java:4468:56:4468:57 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4469:9:4469:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4469:20:4469:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | +| Test.java:4474:18:4474:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4474:45:4474:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4474:53:4474:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4475:10:4475:44 | new MyAbstractIteratorDecorator<>(...) : MyAbstractIteratorDecorator [] : String | semmle.label | new MyAbstractIteratorDecorator<>(...) : MyAbstractIteratorDecorator [] : String | +| Test.java:4475:42:4475:43 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4476:9:4476:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4476:20:4476:22 | out : MyAbstractIteratorDecorator [] : String | semmle.label | out : MyAbstractIteratorDecorator [] : String | +| Test.java:4481:22:4481:65 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4481:49:4481:64 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4481:57:4481:64 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4482:10:4482:48 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | semmle.label | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | +| Test.java:4482:46:4482:47 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4483:9:4483:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4483:20:4483:22 | out : MyAbstractListIteratorDecorator [] : String | semmle.label | out : MyAbstractListIteratorDecorator [] : String | +| Test.java:4488:41:4488:121 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | semmle.label | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | +| Test.java:4488:77:4488:120 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4488:104:4488:119 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4488:112:4488:119 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4489:10:4489:11 | in : MyAbstractListIteratorDecorator [] : String | semmle.label | in : MyAbstractListIteratorDecorator [] : String | +| Test.java:4489:10:4489:31 | myGetListIterator(...) : ListIterator [] : String | semmle.label | myGetListIterator(...) : ListIterator [] : String | +| Test.java:4490:9:4490:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4490:20:4490:22 | out : ListIterator [] : String | semmle.label | out : ListIterator [] : String | +| Test.java:4495:21:4495:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapKey(...) : LinkedMap [] : String | +| Test.java:4495:21:4495:74 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | +| Test.java:4495:44:4495:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4495:52:4495:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4496:10:4496:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | semmle.label | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | +| Test.java:4496:45:4496:46 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | +| Test.java:4497:9:4497:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4497:20:4497:22 | out : MyAbstractMapIteratorDecorator [] : String | semmle.label | out : MyAbstractMapIteratorDecorator [] : String | +| Test.java:4502:21:4502:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapValue(...) : LinkedMap [] : String | +| Test.java:4502:21:4502:76 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | +| Test.java:4502:46:4502:61 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4502:54:4502:61 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4503:10:4503:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | semmle.label | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | +| Test.java:4503:45:4503:46 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | +| Test.java:4504:9:4504:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4504:21:4504:23 | out : MyAbstractMapIteratorDecorator [] : String | semmle.label | out : MyAbstractMapIteratorDecorator [] : String | +| Test.java:4509:40:4509:129 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | semmle.label | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | +| Test.java:4509:75:4509:114 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapKey(...) : LinkedMap [] : String | +| Test.java:4509:75:4509:128 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | +| Test.java:4509:98:4509:113 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4509:106:4509:113 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4510:10:4510:11 | in : MyAbstractMapIteratorDecorator [] : String | semmle.label | in : MyAbstractMapIteratorDecorator [] : String | +| Test.java:4510:10:4510:30 | myGetMapIterator(...) : MapIterator [] : String | semmle.label | myGetMapIterator(...) : MapIterator [] : String | +| Test.java:4511:9:4511:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4511:20:4511:22 | out : MapIterator [] : String | semmle.label | out : MapIterator [] : String | +| Test.java:4516:40:4516:131 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | semmle.label | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | +| Test.java:4516:75:4516:116 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapValue(...) : LinkedMap [] : String | +| Test.java:4516:75:4516:130 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | +| Test.java:4516:100:4516:115 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4516:108:4516:115 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4517:10:4517:11 | in : MyAbstractMapIteratorDecorator [] : String | semmle.label | in : MyAbstractMapIteratorDecorator [] : String | +| Test.java:4517:10:4517:30 | myGetMapIterator(...) : MapIterator [] : String | semmle.label | myGetMapIterator(...) : MapIterator [] : String | +| Test.java:4518:9:4518:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4518:21:4518:23 | out : MapIterator [] : String | semmle.label | out : MapIterator [] : String | +| Test.java:4523:28:4523:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:4523:28:4523:86 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | +| Test.java:4523:56:4523:71 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4523:64:4523:71 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4524:10:4524:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:4524:52:4524:53 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | +| Test.java:4525:9:4525:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4525:20:4525:22 | out : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | out : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:4530:28:4530:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:4530:28:4530:88 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | +| Test.java:4530:58:4530:73 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4530:66:4530:73 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4531:10:4531:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:4531:52:4531:53 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | +| Test.java:4532:9:4532:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4532:21:4532:23 | out : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | out : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:4537:47:4537:148 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:4537:89:4537:133 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:4537:89:4537:147 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | +| Test.java:4537:117:4537:132 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4537:125:4537:132 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4538:10:4538:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | in : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:4538:10:4538:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | semmle.label | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | +| Test.java:4539:9:4539:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4539:20:4539:22 | out : OrderedMapIterator [] : String | semmle.label | out : OrderedMapIterator [] : String | +| Test.java:4544:47:4544:150 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:4544:89:4544:135 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:4544:89:4544:149 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | +| Test.java:4544:119:4544:134 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4544:127:4544:134 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4545:10:4545:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | in : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:4545:10:4545:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | semmle.label | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | +| Test.java:4546:9:4546:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:4546:21:4546:23 | out : OrderedMapIterator [] : String | semmle.label | out : OrderedMapIterator [] : String | +| Test.java:4551:18:4551:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4551:45:4551:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4551:53:4551:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4552:10:4552:51 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | +| Test.java:4552:49:4552:50 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4553:9:4553:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4553:20:4553:22 | out : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | out : MyAbstractUntypedIteratorDecorator [] : String | +| Test.java:4558:44:4558:127 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | +| Test.java:4558:83:4558:126 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4558:110:4558:125 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4558:118:4558:125 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4559:10:4559:11 | in : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | in : MyAbstractUntypedIteratorDecorator [] : String | +| Test.java:4559:10:4559:27 | myGetIterator(...) : Iterator [] : String | semmle.label | myGetIterator(...) : Iterator [] : String | +| Test.java:4560:9:4560:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4560:20:4560:22 | out : Iterator [] : String | semmle.label | out : Iterator [] : String | +| Test.java:4565:16:4565:60 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | +| Test.java:4565:24:4565:60 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4565:44:4565:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4565:52:4565:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4566:10:4566:36 | new ArrayIterator<>(...) : ArrayIterator [] : String | semmle.label | new ArrayIterator<>(...) : ArrayIterator [] : String | +| Test.java:4566:28:4566:29 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:4567:9:4567:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4567:20:4567:22 | out : ArrayIterator [] : String | semmle.label | out : ArrayIterator [] : String | +| Test.java:4572:16:4572:60 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | +| Test.java:4572:24:4572:60 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4572:44:4572:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4572:52:4572:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4573:10:4573:33 | new ArrayIterator<>(...) : ArrayIterator [] : String | semmle.label | new ArrayIterator<>(...) : ArrayIterator [] : String | +| Test.java:4573:28:4573:29 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:4574:9:4574:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4574:20:4574:22 | out : ArrayIterator [] : String | semmle.label | out : ArrayIterator [] : String | +| Test.java:4579:16:4579:60 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | +| Test.java:4579:24:4579:60 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4579:44:4579:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4579:52:4579:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4580:10:4580:30 | new ArrayIterator<>(...) : ArrayIterator [] : String | semmle.label | new ArrayIterator<>(...) : ArrayIterator [] : String | +| Test.java:4580:28:4580:29 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:4581:9:4581:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4581:20:4581:22 | out : ArrayIterator [] : String | semmle.label | out : ArrayIterator [] : String | +| Test.java:4586:23:4586:86 | new ArrayIterator<>(...) : ArrayIterator [] : String | semmle.label | new ArrayIterator<>(...) : ArrayIterator [] : String | +| Test.java:4586:41:4586:85 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | +| Test.java:4586:49:4586:85 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4586:69:4586:84 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4586:77:4586:84 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4587:10:4587:32 | (...)... : String[] [[]] : String | semmle.label | (...)... : String[] [[]] : String | +| Test.java:4587:20:4587:21 | in : ArrayIterator [] : String | semmle.label | in : ArrayIterator [] : String | +| Test.java:4587:20:4587:32 | getArray(...) : Object [[]] : String | semmle.label | getArray(...) : Object [[]] : String | +| Test.java:4588:9:4588:28 | getArrayElement(...) | semmle.label | getArrayElement(...) | +| Test.java:4588:25:4588:27 | out : String[] [[]] : String | semmle.label | out : String[] [[]] : String | +| Test.java:4593:16:4593:60 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | +| Test.java:4593:24:4593:60 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4593:44:4593:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4593:52:4593:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4594:10:4594:40 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | semmle.label | new ArrayListIterator<>(...) : ArrayListIterator [] : String | +| Test.java:4594:32:4594:33 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:4595:9:4595:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4595:20:4595:22 | out : ArrayListIterator [] : String | semmle.label | out : ArrayListIterator [] : String | +| Test.java:4600:16:4600:60 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | +| Test.java:4600:24:4600:60 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4600:44:4600:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4600:52:4600:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4601:10:4601:37 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | semmle.label | new ArrayListIterator<>(...) : ArrayListIterator [] : String | +| Test.java:4601:32:4601:33 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:4602:9:4602:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4602:20:4602:22 | out : ArrayListIterator [] : String | semmle.label | out : ArrayListIterator [] : String | +| Test.java:4607:16:4607:60 | (...)... : Object[] [[]] : String | semmle.label | (...)... : Object[] [[]] : String | +| Test.java:4607:24:4607:60 | newWithArrayElement(...) : Object[] [[]] : String | semmle.label | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4607:44:4607:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4607:52:4607:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4608:10:4608:34 | new ArrayListIterator<>(...) : ArrayListIterator [] : String | semmle.label | new ArrayListIterator<>(...) : ArrayListIterator [] : String | +| Test.java:4608:32:4608:33 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:4609:9:4609:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4609:20:4609:22 | out : ArrayListIterator [] : String | semmle.label | out : ArrayListIterator [] : String | +| Test.java:4614:18:4614:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4614:45:4614:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4614:53:4614:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4615:10:4615:40 | new BoundedIterator<>(...) : BoundedIterator [] : String | semmle.label | new BoundedIterator<>(...) : BoundedIterator [] : String | +| Test.java:4615:30:4615:31 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4616:9:4616:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4616:20:4616:22 | out : BoundedIterator [] : String | semmle.label | out : BoundedIterator [] : String | +| Test.java:4621:20:4621:72 | of(...) : List [, ] : String | semmle.label | of(...) : List [, ] : String | +| Test.java:4621:28:4621:71 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4621:55:4621:70 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4621:63:4621:70 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4622:10:4622:52 | new CollatingIterator<>(...) : CollatingIterator [] : String | semmle.label | new CollatingIterator<>(...) : CollatingIterator [] : String | +| Test.java:4622:50:4622:51 | in : List [, ] : String | semmle.label | in : List [, ] : String | +| Test.java:4623:9:4623:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4623:20:4623:22 | out : CollatingIterator [] : String | semmle.label | out : CollatingIterator [] : String | +| Test.java:4628:18:4628:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4628:45:4628:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4628:53:4628:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4629:10:4629:46 | new CollatingIterator<>(...) : CollatingIterator [] : String | semmle.label | new CollatingIterator<>(...) : CollatingIterator [] : String | +| Test.java:4629:38:4629:39 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4630:9:4630:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4630:20:4630:22 | out : CollatingIterator [] : String | semmle.label | out : CollatingIterator [] : String | +| Test.java:4635:18:4635:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4635:45:4635:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4635:53:4635:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4636:10:4636:46 | new CollatingIterator<>(...) : CollatingIterator [] : String | semmle.label | new CollatingIterator<>(...) : CollatingIterator [] : String | +| Test.java:4636:44:4636:45 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4637:9:4637:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4637:20:4637:22 | out : CollatingIterator [] : String | semmle.label | out : CollatingIterator [] : String | +| Test.java:4642:20:4642:79 | {...} : Iterator[] [[], ] : String | semmle.label | {...} : Iterator[] [[], ] : String | +| Test.java:4642:35:4642:78 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4642:62:4642:77 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4642:70:4642:77 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4643:10:4643:52 | new CollatingIterator<>(...) : CollatingIterator [] : String | semmle.label | new CollatingIterator<>(...) : CollatingIterator [] : String | +| Test.java:4643:50:4643:51 | in : Iterator[] [[], ] : String | semmle.label | in : Iterator[] [[], ] : String | +| Test.java:4644:9:4644:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4644:20:4644:22 | out : CollatingIterator [] : String | semmle.label | out : CollatingIterator [] : String | +| Test.java:4649:18:4649:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4649:45:4649:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4649:53:4649:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4650:4:4650:6 | out [post update] : CollatingIterator [] : String | semmle.label | out [post update] : CollatingIterator [] : String | +| Test.java:4650:20:4650:21 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4651:9:4651:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4651:20:4651:22 | out : CollatingIterator [] : String | semmle.label | out : CollatingIterator [] : String | +| Test.java:4656:27:4656:120 | new CollatingIterator<>(...) : CollatingIterator [] : String | semmle.label | new CollatingIterator<>(...) : CollatingIterator [] : String | +| Test.java:4656:67:4656:119 | of(...) : List [, ] : String | semmle.label | of(...) : List [, ] : String | +| Test.java:4656:75:4656:118 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4656:102:4656:117 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4656:110:4656:117 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4657:10:4657:11 | in : CollatingIterator [] : String | semmle.label | in : CollatingIterator [] : String | +| Test.java:4657:10:4657:26 | getIterators(...) : List [, ] : String | semmle.label | getIterators(...) : List [, ] : String | +| Test.java:4658:9:4658:35 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4658:20:4658:34 | getElement(...) : Iterator [] : String | semmle.label | getElement(...) : Iterator [] : String | +| Test.java:4658:31:4658:33 | out : List [, ] : String | semmle.label | out : List [, ] : String | +| Test.java:4663:18:4663:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4663:45:4663:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4663:53:4663:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4664:4:4664:6 | out [post update] : CollatingIterator [] : String | semmle.label | out [post update] : CollatingIterator [] : String | +| Test.java:4664:23:4664:24 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4665:9:4665:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4665:20:4665:22 | out : CollatingIterator [] : String | semmle.label | out : CollatingIterator [] : String | +| Test.java:4670:21:4670:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | semmle.label | newEnumerationWithElement(...) : IteratorEnumeration [] : String | +| Test.java:4670:47:4670:62 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4670:55:4670:62 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4671:10:4671:42 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | semmle.label | new EnumerationIterator<>(...) : EnumerationIterator [] : String | +| Test.java:4671:34:4671:35 | in : IteratorEnumeration [] : String | semmle.label | in : IteratorEnumeration [] : String | +| Test.java:4672:9:4672:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4672:20:4672:22 | out : EnumerationIterator [] : String | semmle.label | out : EnumerationIterator [] : String | +| Test.java:4677:21:4677:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | semmle.label | newEnumerationWithElement(...) : IteratorEnumeration [] : String | +| Test.java:4677:47:4677:62 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4677:55:4677:62 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4678:10:4678:36 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | semmle.label | new EnumerationIterator<>(...) : EnumerationIterator [] : String | +| Test.java:4678:34:4678:35 | in : IteratorEnumeration [] : String | semmle.label | in : IteratorEnumeration [] : String | +| Test.java:4679:9:4679:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4679:20:4679:22 | out : EnumerationIterator [] : String | semmle.label | out : EnumerationIterator [] : String | +| Test.java:4684:29:4684:96 | new EnumerationIterator<>(...) : EnumerationIterator [] : String | semmle.label | new EnumerationIterator<>(...) : EnumerationIterator [] : String | +| Test.java:4684:53:4684:95 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | semmle.label | newEnumerationWithElement(...) : IteratorEnumeration [] : String | +| Test.java:4684:79:4684:94 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4684:87:4684:94 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4685:10:4685:11 | in : EnumerationIterator [] : String | semmle.label | in : EnumerationIterator [] : String | +| Test.java:4685:10:4685:28 | getEnumeration(...) : Enumeration [] : String | semmle.label | getEnumeration(...) : Enumeration [] : String | +| Test.java:4686:9:4686:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4686:20:4686:22 | out : Enumeration [] : String | semmle.label | out : Enumeration [] : String | +| Test.java:4691:21:4691:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | semmle.label | newEnumerationWithElement(...) : IteratorEnumeration [] : String | +| Test.java:4691:47:4691:62 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4691:55:4691:62 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4692:4:4692:6 | out [post update] : EnumerationIterator [] : String | semmle.label | out [post update] : EnumerationIterator [] : String | +| Test.java:4692:23:4692:24 | in : IteratorEnumeration [] : String | semmle.label | in : IteratorEnumeration [] : String | +| Test.java:4693:9:4693:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4693:20:4693:22 | out : EnumerationIterator [] : String | semmle.label | out : EnumerationIterator [] : String | +| Test.java:4698:18:4698:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4698:45:4698:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4698:53:4698:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4699:10:4699:37 | new FilterIterator<>(...) : FilterIterator [] : String | semmle.label | new FilterIterator<>(...) : FilterIterator [] : String | +| Test.java:4699:29:4699:30 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4700:9:4700:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4700:20:4700:22 | out : FilterIterator [] : String | semmle.label | out : FilterIterator [] : String | +| Test.java:4705:18:4705:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4705:45:4705:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4705:53:4705:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4706:10:4706:31 | new FilterIterator<>(...) : FilterIterator [] : String | semmle.label | new FilterIterator<>(...) : FilterIterator [] : String | +| Test.java:4706:29:4706:30 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4707:9:4707:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4707:20:4707:22 | out : FilterIterator [] : String | semmle.label | out : FilterIterator [] : String | +| Test.java:4712:24:4712:87 | new FilterIterator<>(...) : FilterIterator [] : String | semmle.label | new FilterIterator<>(...) : FilterIterator [] : String | +| Test.java:4712:43:4712:86 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4712:70:4712:85 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4712:78:4712:85 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4713:10:4713:11 | in : FilterIterator [] : String | semmle.label | in : FilterIterator [] : String | +| Test.java:4713:10:4713:25 | getIterator(...) : Iterator [] : String | semmle.label | getIterator(...) : Iterator [] : String | +| Test.java:4714:9:4714:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4714:20:4714:22 | out : Iterator [] : String | semmle.label | out : Iterator [] : String | +| Test.java:4719:18:4719:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4719:45:4719:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4719:53:4719:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4720:4:4720:6 | out [post update] : FilterIterator [] : String | semmle.label | out [post update] : FilterIterator [] : String | +| Test.java:4720:20:4720:21 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4721:9:4721:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4721:20:4721:22 | out : FilterIterator [] : String | semmle.label | out : FilterIterator [] : String | +| Test.java:4726:22:4726:65 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4726:49:4726:64 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4726:57:4726:64 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4727:10:4727:35 | new FilterListIterator<>(...) : FilterListIterator [] : String | semmle.label | new FilterListIterator<>(...) : FilterListIterator [] : String | +| Test.java:4727:33:4727:34 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4728:9:4728:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4728:20:4728:22 | out : FilterListIterator [] : String | semmle.label | out : FilterListIterator [] : String | +| Test.java:4733:22:4733:65 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4733:49:4733:64 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4733:57:4733:64 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4734:10:4734:41 | new FilterListIterator<>(...) : FilterListIterator [] : String | semmle.label | new FilterListIterator<>(...) : FilterListIterator [] : String | +| Test.java:4734:33:4734:34 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4735:9:4735:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4735:20:4735:22 | out : FilterListIterator [] : String | semmle.label | out : FilterListIterator [] : String | +| Test.java:4740:28:4740:95 | new FilterListIterator<>(...) : FilterListIterator [] : String | semmle.label | new FilterListIterator<>(...) : FilterListIterator [] : String | +| Test.java:4740:51:4740:94 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4740:78:4740:93 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4740:86:4740:93 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4741:10:4741:11 | in : FilterListIterator [] : String | semmle.label | in : FilterListIterator [] : String | +| Test.java:4741:10:4741:29 | getListIterator(...) : ListIterator [] : String | semmle.label | getListIterator(...) : ListIterator [] : String | +| Test.java:4742:9:4742:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4742:20:4742:22 | out : ListIterator [] : String | semmle.label | out : ListIterator [] : String | +| Test.java:4747:22:4747:65 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4747:49:4747:64 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4747:57:4747:64 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4748:4:4748:6 | out [post update] : FilterListIterator [] : String | semmle.label | out [post update] : FilterListIterator [] : String | +| Test.java:4748:24:4748:25 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4749:9:4749:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4749:20:4749:22 | out : FilterListIterator [] : String | semmle.label | out : FilterListIterator [] : String | +| Test.java:4754:20:4754:86 | newTreeBagWithElement(...) : TreeBag [, ] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [, ] : String | +| Test.java:4754:42:4754:85 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4754:69:4754:84 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4754:77:4754:84 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4755:10:4755:30 | new IteratorChain<>(...) : IteratorChain [] : String | semmle.label | new IteratorChain<>(...) : IteratorChain [] : String | +| Test.java:4755:28:4755:29 | in : TreeBag [, ] : String | semmle.label | in : TreeBag [, ] : String | +| Test.java:4756:9:4756:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4756:20:4756:22 | out : IteratorChain [] : String | semmle.label | out : IteratorChain [] : String | +| Test.java:4761:18:4761:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4761:45:4761:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4761:53:4761:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4762:10:4762:30 | new IteratorChain<>(...) : IteratorChain [] : String | semmle.label | new IteratorChain<>(...) : IteratorChain [] : String | +| Test.java:4762:28:4762:29 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4763:9:4763:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4763:20:4763:22 | out : IteratorChain [] : String | semmle.label | out : IteratorChain [] : String | +| Test.java:4768:18:4768:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4768:45:4768:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4768:53:4768:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4769:10:4769:36 | new IteratorChain<>(...) : IteratorChain [] : String | semmle.label | new IteratorChain<>(...) : IteratorChain [] : String | +| Test.java:4769:28:4769:29 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4770:9:4770:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4770:20:4770:22 | out : IteratorChain [] : String | semmle.label | out : IteratorChain [] : String | +| Test.java:4775:18:4775:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4775:45:4775:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4775:53:4775:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4776:10:4776:36 | new IteratorChain<>(...) : IteratorChain [] : String | semmle.label | new IteratorChain<>(...) : IteratorChain [] : String | +| Test.java:4776:34:4776:35 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4777:9:4777:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4777:20:4777:22 | out : IteratorChain [] : String | semmle.label | out : IteratorChain [] : String | +| Test.java:4782:20:4782:79 | {...} : Iterator[] [[], ] : String | semmle.label | {...} : Iterator[] [[], ] : String | +| Test.java:4782:35:4782:78 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4782:62:4782:77 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4782:70:4782:77 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4783:10:4783:30 | new IteratorChain<>(...) : IteratorChain [] : String | semmle.label | new IteratorChain<>(...) : IteratorChain [] : String | +| Test.java:4783:28:4783:29 | in : Iterator[] [[], ] : String | semmle.label | in : Iterator[] [[], ] : String | +| Test.java:4784:9:4784:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4784:20:4784:22 | out : IteratorChain [] : String | semmle.label | out : IteratorChain [] : String | +| Test.java:4789:18:4789:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4789:45:4789:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4789:53:4789:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4790:4:4790:6 | out [post update] : IteratorChain [] : String | semmle.label | out [post update] : IteratorChain [] : String | +| Test.java:4790:20:4790:21 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4791:9:4791:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4791:20:4791:22 | out : IteratorChain [] : String | semmle.label | out : IteratorChain [] : String | +| Test.java:4796:18:4796:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4796:45:4796:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4796:53:4796:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4797:10:4797:36 | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | semmle.label | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | +| Test.java:4797:34:4797:35 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4798:9:4798:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4798:20:4798:22 | out : IteratorEnumeration [] : String | semmle.label | out : IteratorEnumeration [] : String | +| Test.java:4803:29:4803:97 | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | semmle.label | new IteratorEnumeration<>(...) : IteratorEnumeration [] : String | +| Test.java:4803:53:4803:96 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4803:80:4803:95 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4803:88:4803:95 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4804:10:4804:11 | in : IteratorEnumeration [] : String | semmle.label | in : IteratorEnumeration [] : String | +| Test.java:4804:10:4804:25 | getIterator(...) : Iterator [] : String | semmle.label | getIterator(...) : Iterator [] : String | +| Test.java:4805:9:4805:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4805:20:4805:22 | out : Iterator [] : String | semmle.label | out : Iterator [] : String | +| Test.java:4810:18:4810:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4810:45:4810:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4810:53:4810:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4811:4:4811:6 | out [post update] : IteratorEnumeration [] : String | semmle.label | out [post update] : IteratorEnumeration [] : String | +| Test.java:4811:20:4811:21 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4812:9:4812:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4812:20:4812:22 | out : IteratorEnumeration [] : String | semmle.label | out : IteratorEnumeration [] : String | +| Test.java:4817:18:4817:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4817:45:4817:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4817:53:4817:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4818:10:4818:40 | new IteratorIterable<>(...) : IteratorIterable [] : String | semmle.label | new IteratorIterable<>(...) : IteratorIterable [] : String | +| Test.java:4818:31:4818:32 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4819:9:4819:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4819:20:4819:22 | out : IteratorIterable [] : String | semmle.label | out : IteratorIterable [] : String | +| Test.java:4824:18:4824:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4824:45:4824:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4824:53:4824:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4825:10:4825:33 | new IteratorIterable<>(...) : IteratorIterable [] : String | semmle.label | new IteratorIterable<>(...) : IteratorIterable [] : String | +| Test.java:4825:31:4825:32 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4826:9:4826:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4826:20:4826:22 | out : IteratorIterable [] : String | semmle.label | out : IteratorIterable [] : String | +| Test.java:4831:18:4831:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4831:45:4831:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4831:53:4831:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4832:10:4832:36 | new ListIteratorWrapper<>(...) : ListIteratorWrapper [] : String | semmle.label | new ListIteratorWrapper<>(...) : ListIteratorWrapper [] : String | +| Test.java:4832:34:4832:35 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4833:9:4833:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4833:20:4833:22 | out : ListIteratorWrapper [] : String | semmle.label | out : ListIteratorWrapper [] : String | +| Test.java:4838:20:4838:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4838:42:4838:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4838:50:4838:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4839:10:4839:32 | new LoopingIterator<>(...) : LoopingIterator [] : String | semmle.label | new LoopingIterator<>(...) : LoopingIterator [] : String | +| Test.java:4839:30:4839:31 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:4840:9:4840:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4840:20:4840:22 | out : LoopingIterator [] : String | semmle.label | out : LoopingIterator [] : String | +| Test.java:4845:14:4845:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:4845:22:4845:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4845:30:4845:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4846:10:4846:36 | new LoopingListIterator<>(...) : LoopingListIterator [] : String | semmle.label | new LoopingListIterator<>(...) : LoopingListIterator [] : String | +| Test.java:4846:34:4846:35 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:4847:9:4847:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4847:20:4847:22 | out : LoopingListIterator [] : String | semmle.label | out : LoopingListIterator [] : String | +| Test.java:4852:18:4852:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | +| Test.java:4852:31:4852:46 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4852:39:4852:46 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4853:10:4853:42 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | semmle.label | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | +| Test.java:4853:34:4853:35 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:4854:9:4854:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4854:20:4854:22 | out : ObjectArrayIterator [] : String | semmle.label | out : ObjectArrayIterator [] : String | +| Test.java:4859:18:4859:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | +| Test.java:4859:31:4859:46 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4859:39:4859:46 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4860:10:4860:39 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | semmle.label | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | +| Test.java:4860:34:4860:35 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:4861:9:4861:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4861:20:4861:22 | out : ObjectArrayIterator [] : String | semmle.label | out : ObjectArrayIterator [] : String | +| Test.java:4866:18:4866:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | +| Test.java:4866:31:4866:46 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4866:39:4866:46 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4867:10:4867:36 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | semmle.label | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | +| Test.java:4867:34:4867:35 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:4868:9:4868:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4868:20:4868:22 | out : ObjectArrayIterator [] : String | semmle.label | out : ObjectArrayIterator [] : String | +| Test.java:4873:29:4873:83 | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | semmle.label | new ObjectArrayIterator<>(...) : ObjectArrayIterator [] : String | +| Test.java:4873:53:4873:82 | new Object[] : Object[] [[]] : String | semmle.label | new Object[] : Object[] [[]] : String | +| Test.java:4873:53:4873:82 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | +| Test.java:4873:66:4873:81 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4873:74:4873:81 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4874:10:4874:11 | in : ObjectArrayIterator [] : String | semmle.label | in : ObjectArrayIterator [] : String | +| Test.java:4874:10:4874:22 | getArray(...) : Object[] [[]] : String | semmle.label | getArray(...) : Object[] [[]] : String | +| Test.java:4875:9:4875:28 | getArrayElement(...) | semmle.label | getArrayElement(...) | +| Test.java:4875:25:4875:27 | out : Object[] [[]] : String | semmle.label | out : Object[] [[]] : String | +| Test.java:4880:18:4880:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | +| Test.java:4880:31:4880:46 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4880:39:4880:46 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4881:10:4881:46 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | semmle.label | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | +| Test.java:4881:38:4881:39 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:4882:9:4882:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4882:20:4882:22 | out : ObjectArrayListIterator [] : String | semmle.label | out : ObjectArrayListIterator [] : String | +| Test.java:4887:18:4887:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | +| Test.java:4887:31:4887:46 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4887:39:4887:46 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4888:10:4888:43 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | semmle.label | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | +| Test.java:4888:38:4888:39 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:4889:9:4889:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4889:20:4889:22 | out : ObjectArrayListIterator [] : String | semmle.label | out : ObjectArrayListIterator [] : String | +| Test.java:4894:18:4894:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | +| Test.java:4894:31:4894:46 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4894:39:4894:46 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4895:10:4895:40 | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | semmle.label | new ObjectArrayListIterator<>(...) : ObjectArrayListIterator [] : String | +| Test.java:4895:38:4895:39 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:4896:9:4896:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4896:20:4896:22 | out : ObjectArrayListIterator [] : String | semmle.label | out : ObjectArrayListIterator [] : String | +| Test.java:4901:18:4901:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4901:45:4901:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4901:53:4901:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4902:10:4902:32 | new PeekingIterator<>(...) : PeekingIterator [] : String | semmle.label | new PeekingIterator<>(...) : PeekingIterator [] : String | +| Test.java:4902:30:4902:31 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4903:9:4903:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4903:20:4903:22 | out : PeekingIterator [] : String | semmle.label | out : PeekingIterator [] : String | +| Test.java:4908:25:4908:89 | new PeekingIterator<>(...) : PeekingIterator [] : String | semmle.label | new PeekingIterator<>(...) : PeekingIterator [] : String | +| Test.java:4908:45:4908:88 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4908:72:4908:87 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4908:80:4908:87 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4909:10:4909:11 | in : PeekingIterator [] : String | semmle.label | in : PeekingIterator [] : String | +| Test.java:4909:10:4909:21 | element(...) : String | semmle.label | element(...) : String | +| Test.java:4910:9:4910:11 | out | semmle.label | out | +| Test.java:4915:25:4915:89 | new PeekingIterator<>(...) : PeekingIterator [] : String | semmle.label | new PeekingIterator<>(...) : PeekingIterator [] : String | +| Test.java:4915:45:4915:88 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4915:72:4915:87 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4915:80:4915:87 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4916:10:4916:11 | in : PeekingIterator [] : String | semmle.label | in : PeekingIterator [] : String | +| Test.java:4916:10:4916:18 | peek(...) : String | semmle.label | peek(...) : String | +| Test.java:4917:9:4917:11 | out | semmle.label | out | +| Test.java:4922:18:4922:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4922:45:4922:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4922:53:4922:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4923:10:4923:44 | peekingIterator(...) : PeekingIterator [] : String | semmle.label | peekingIterator(...) : PeekingIterator [] : String | +| Test.java:4923:42:4923:43 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4924:9:4924:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4924:20:4924:22 | out : PeekingIterator [] : String | semmle.label | out : PeekingIterator [] : String | +| Test.java:4929:28:4929:60 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:4929:44:4929:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4929:52:4929:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4930:10:4930:36 | new PermutationIterator<>(...) : PermutationIterator [, ] : String | semmle.label | new PermutationIterator<>(...) : PermutationIterator [, ] : String | +| Test.java:4930:34:4930:35 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:4931:9:4931:35 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4931:20:4931:34 | getElement(...) : List [] : String | semmle.label | getElement(...) : List [] : String | +| Test.java:4931:31:4931:33 | out : PermutationIterator [, ] : String | semmle.label | out : PermutationIterator [, ] : String | +| Test.java:4936:18:4936:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4936:45:4936:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4936:53:4936:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4937:10:4937:33 | new PushbackIterator<>(...) : PushbackIterator [] : String | semmle.label | new PushbackIterator<>(...) : PushbackIterator [] : String | +| Test.java:4937:31:4937:32 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4938:9:4938:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4938:20:4938:22 | out : PushbackIterator [] : String | semmle.label | out : PushbackIterator [] : String | +| Test.java:4943:16:4943:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4944:4:4944:6 | out [post update] : PushbackIterator [] : Object | semmle.label | out [post update] : PushbackIterator [] : Object | +| Test.java:4944:17:4944:18 | in : Object | semmle.label | in : Object | +| Test.java:4945:9:4945:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4945:20:4945:22 | out : PushbackIterator [] : Object | semmle.label | out : PushbackIterator [] : Object | +| Test.java:4950:18:4950:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4950:45:4950:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4950:53:4950:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4951:10:4951:46 | pushbackIterator(...) : PushbackIterator [] : String | semmle.label | pushbackIterator(...) : PushbackIterator [] : String | +| Test.java:4951:44:4951:45 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4952:9:4952:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4952:20:4952:22 | out : PushbackIterator [] : String | semmle.label | out : PushbackIterator [] : String | +| Test.java:4957:14:4957:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:4957:22:4957:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4957:30:4957:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4958:10:4958:36 | new ReverseListIterator<>(...) : ReverseListIterator [] : String | semmle.label | new ReverseListIterator<>(...) : ReverseListIterator [] : String | +| Test.java:4958:34:4958:35 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:4959:9:4959:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4959:20:4959:22 | out : ReverseListIterator [] : String | semmle.label | out : ReverseListIterator [] : String | +| Test.java:4964:16:4964:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4965:10:4965:41 | new SingletonIterator<>(...) : SingletonIterator [] : Object | semmle.label | new SingletonIterator<>(...) : SingletonIterator [] : Object | +| Test.java:4965:32:4965:33 | in : Object | semmle.label | in : Object | +| Test.java:4966:9:4966:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4966:20:4966:22 | out : SingletonIterator [] : Object | semmle.label | out : SingletonIterator [] : Object | +| Test.java:4971:16:4971:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4972:10:4972:34 | new SingletonIterator<>(...) : SingletonIterator [] : Object | semmle.label | new SingletonIterator<>(...) : SingletonIterator [] : Object | +| Test.java:4972:32:4972:33 | in : Object | semmle.label | in : Object | +| Test.java:4973:9:4973:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4973:20:4973:22 | out : SingletonIterator [] : Object | semmle.label | out : SingletonIterator [] : Object | +| Test.java:4978:16:4978:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4979:10:4979:38 | new SingletonListIterator<>(...) : SingletonListIterator [] : Object | semmle.label | new SingletonListIterator<>(...) : SingletonListIterator [] : Object | +| Test.java:4979:36:4979:37 | in : Object | semmle.label | in : Object | +| Test.java:4980:9:4980:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4980:20:4980:22 | out : SingletonListIterator [] : Object | semmle.label | out : SingletonListIterator [] : Object | +| Test.java:4985:18:4985:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4985:45:4985:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4985:53:4985:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4986:10:4986:37 | new SkippingIterator<>(...) : SkippingIterator [] : String | semmle.label | new SkippingIterator<>(...) : SkippingIterator [] : String | +| Test.java:4986:31:4986:32 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4987:9:4987:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4987:20:4987:22 | out : SkippingIterator [] : String | semmle.label | out : SkippingIterator [] : String | +| Test.java:4992:18:4992:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4992:45:4992:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4992:53:4992:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:4993:10:4993:37 | new UniqueFilterIterator<>(...) : UniqueFilterIterator [] : String | semmle.label | new UniqueFilterIterator<>(...) : UniqueFilterIterator [] : String | +| Test.java:4993:35:4993:36 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:4994:9:4994:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:4994:20:4994:22 | out : UniqueFilterIterator [] : String | semmle.label | out : UniqueFilterIterator [] : String | +| Test.java:4999:18:4999:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4999:45:4999:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:4999:53:4999:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5000:10:5000:54 | unmodifiableIterator(...) : Iterator [] : String | semmle.label | unmodifiableIterator(...) : Iterator [] : String | +| Test.java:5000:52:5000:53 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:5001:9:5001:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5001:20:5001:22 | out : Iterator [] : String | semmle.label | out : Iterator [] : String | +| Test.java:5006:22:5006:65 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5006:49:5006:64 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5006:57:5006:64 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5007:10:5007:61 | umodifiableListIterator(...) : ListIterator [] : String | semmle.label | umodifiableListIterator(...) : ListIterator [] : String | +| Test.java:5007:59:5007:60 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:5008:9:5008:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5008:20:5008:22 | out : ListIterator [] : String | semmle.label | out : ListIterator [] : String | +| Test.java:5013:21:5013:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapKey(...) : LinkedMap [] : String | +| Test.java:5013:21:5013:74 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | +| Test.java:5013:44:5013:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5013:52:5013:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5014:10:5014:60 | unmodifiableMapIterator(...) : MapIterator [] : String | semmle.label | unmodifiableMapIterator(...) : MapIterator [] : String | +| Test.java:5014:58:5014:59 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | +| Test.java:5015:9:5015:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5015:20:5015:22 | out : MapIterator [] : String | semmle.label | out : MapIterator [] : String | +| Test.java:5020:21:5020:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapValue(...) : LinkedMap [] : String | +| Test.java:5020:21:5020:76 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | +| Test.java:5020:46:5020:61 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5020:54:5020:61 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5021:10:5021:60 | unmodifiableMapIterator(...) : MapIterator [] : String | semmle.label | unmodifiableMapIterator(...) : MapIterator [] : String | +| Test.java:5021:58:5021:59 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | +| Test.java:5022:9:5022:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5022:21:5022:23 | out : MapIterator [] : String | semmle.label | out : MapIterator [] : String | +| Test.java:5027:28:5027:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:5027:28:5027:86 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | +| Test.java:5027:56:5027:71 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5027:64:5027:71 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5028:10:5028:74 | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | semmle.label | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | +| Test.java:5028:72:5028:73 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | +| Test.java:5029:9:5029:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5029:20:5029:22 | out : OrderedMapIterator [] : String | semmle.label | out : OrderedMapIterator [] : String | +| Test.java:5034:28:5034:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:5034:28:5034:88 | mapIterator(...) : OrderedMapIterator [] : String | semmle.label | mapIterator(...) : OrderedMapIterator [] : String | +| Test.java:5034:58:5034:73 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5034:66:5034:73 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5035:10:5035:74 | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | semmle.label | unmodifiableOrderedMapIterator(...) : OrderedMapIterator [] : String | +| Test.java:5035:72:5035:73 | in : OrderedMapIterator [] : String | semmle.label | in : OrderedMapIterator [] : String | +| Test.java:5036:9:5036:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5036:21:5036:23 | out : OrderedMapIterator [] : String | semmle.label | out : OrderedMapIterator [] : String | +| Test.java:5041:18:5041:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5041:45:5041:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5041:53:5041:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5042:10:5042:38 | new ZippingIterator<>(...) : ZippingIterator [] : String | semmle.label | new ZippingIterator<>(...) : ZippingIterator [] : String | +| Test.java:5042:30:5042:31 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:5043:9:5043:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5043:20:5043:22 | out : ZippingIterator [] : String | semmle.label | out : ZippingIterator [] : String | +| Test.java:5048:18:5048:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5048:45:5048:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5048:53:5048:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5049:10:5049:38 | new ZippingIterator<>(...) : ZippingIterator [] : String | semmle.label | new ZippingIterator<>(...) : ZippingIterator [] : String | +| Test.java:5049:36:5049:37 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:5050:9:5050:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5050:20:5050:22 | out : ZippingIterator [] : String | semmle.label | out : ZippingIterator [] : String | +| Test.java:5055:18:5055:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5055:45:5055:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5055:53:5055:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5056:10:5056:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | semmle.label | new ZippingIterator<>(...) : ZippingIterator [] : String | +| Test.java:5056:30:5056:31 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:5057:9:5057:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5057:20:5057:22 | out : ZippingIterator [] : String | semmle.label | out : ZippingIterator [] : String | +| Test.java:5062:18:5062:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5062:45:5062:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5062:53:5062:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5063:10:5063:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | semmle.label | new ZippingIterator<>(...) : ZippingIterator [] : String | +| Test.java:5063:36:5063:37 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:5064:9:5064:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5064:20:5064:22 | out : ZippingIterator [] : String | semmle.label | out : ZippingIterator [] : String | +| Test.java:5069:18:5069:61 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5069:45:5069:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5069:53:5069:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5070:10:5070:44 | new ZippingIterator<>(...) : ZippingIterator [] : String | semmle.label | new ZippingIterator<>(...) : ZippingIterator [] : String | +| Test.java:5070:42:5070:43 | in : ListIterator [] : String | semmle.label | in : ListIterator [] : String | +| Test.java:5071:9:5071:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5071:20:5071:22 | out : ZippingIterator [] : String | semmle.label | out : ZippingIterator [] : String | +| Test.java:5076:20:5076:79 | {...} : Iterator[] [[], ] : String | semmle.label | {...} : Iterator[] [[], ] : String | +| Test.java:5076:35:5076:78 | newListIteratorWithElement(...) : ListIterator [] : String | semmle.label | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5076:62:5076:77 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5076:70:5076:77 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5077:10:5077:32 | new ZippingIterator<>(...) : ZippingIterator [] : String | semmle.label | new ZippingIterator<>(...) : ZippingIterator [] : String | +| Test.java:5077:30:5077:31 | in : Iterator[] [[], ] : String | semmle.label | in : Iterator[] [[], ] : String | +| Test.java:5078:9:5078:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5078:20:5078:22 | out : ZippingIterator [] : String | semmle.label | out : ZippingIterator [] : String | +| Test.java:5083:16:5083:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5084:10:5084:39 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5084:23:5084:24 | in : Object | semmle.label | in : Object | +| Test.java:5085:9:5085:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5085:20:5085:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5090:16:5090:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5091:10:5091:39 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5091:37:5091:38 | in : Object | semmle.label | in : Object | +| Test.java:5092:9:5092:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5092:20:5092:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5097:16:5097:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5098:10:5098:37 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5098:23:5098:24 | in : Object | semmle.label | in : Object | +| Test.java:5099:9:5099:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5099:20:5099:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5104:16:5104:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5105:10:5105:37 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5105:29:5105:30 | in : Object | semmle.label | in : Object | +| Test.java:5106:9:5106:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5106:20:5106:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5111:16:5111:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5112:10:5112:37 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5112:35:5112:36 | in : Object | semmle.label | in : Object | +| Test.java:5113:9:5113:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5113:20:5113:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5118:16:5118:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5119:10:5119:43 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5119:23:5119:24 | in : Object | semmle.label | in : Object | +| Test.java:5120:9:5120:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5120:20:5120:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5125:16:5125:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5126:10:5126:43 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5126:29:5126:30 | in : Object | semmle.label | in : Object | +| Test.java:5127:9:5127:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5127:20:5127:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5132:16:5132:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5133:10:5133:43 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5133:35:5133:36 | in : Object | semmle.label | in : Object | +| Test.java:5134:9:5134:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5134:20:5134:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5139:16:5139:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5140:10:5140:43 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5140:41:5140:42 | in : Object | semmle.label | in : Object | +| Test.java:5141:9:5141:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5141:20:5141:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5146:16:5146:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5147:10:5147:49 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5147:23:5147:24 | in : Object | semmle.label | in : Object | +| Test.java:5148:9:5148:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5148:20:5148:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5153:16:5153:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5154:10:5154:49 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5154:29:5154:30 | in : Object | semmle.label | in : Object | +| Test.java:5155:9:5155:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5155:20:5155:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5160:16:5160:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5161:10:5161:49 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5161:35:5161:36 | in : Object | semmle.label | in : Object | +| Test.java:5162:9:5162:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5162:20:5162:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5167:16:5167:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5168:10:5168:49 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5168:41:5168:42 | in : Object | semmle.label | in : Object | +| Test.java:5169:9:5169:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5169:20:5169:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5174:16:5174:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5175:10:5175:49 | new MultiKey<>(...) : MultiKey [] : Object | semmle.label | new MultiKey<>(...) : MultiKey [] : Object | +| Test.java:5175:47:5175:48 | in : Object | semmle.label | in : Object | +| Test.java:5176:9:5176:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5176:20:5176:22 | out : MultiKey [] : Object | semmle.label | out : MultiKey [] : Object | +| Test.java:5181:18:5181:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | +| Test.java:5181:31:5181:46 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5181:39:5181:46 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5182:10:5182:25 | new MultiKey<>(...) : MultiKey [] : String | semmle.label | new MultiKey<>(...) : MultiKey [] : String | +| Test.java:5182:23:5182:24 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:5183:9:5183:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5183:20:5183:22 | out : MultiKey [] : String | semmle.label | out : MultiKey [] : String | +| Test.java:5188:18:5188:47 | {...} : Object[] [[]] : String | semmle.label | {...} : Object[] [[]] : String | +| Test.java:5188:31:5188:46 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5188:39:5188:46 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5189:10:5189:32 | new MultiKey<>(...) : MultiKey [] : String | semmle.label | new MultiKey<>(...) : MultiKey [] : String | +| Test.java:5189:23:5189:24 | in : Object[] [[]] : String | semmle.label | in : Object[] [[]] : String | +| Test.java:5190:9:5190:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5190:20:5190:22 | out : MultiKey [] : String | semmle.label | out : MultiKey [] : String | +| Test.java:5195:18:5195:57 | newMultiKeyWithElement(...) : MultiKey [] : String | semmle.label | newMultiKeyWithElement(...) : MultiKey [] : String | +| Test.java:5195:41:5195:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5195:49:5195:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5196:10:5196:11 | in : MultiKey [] : String | semmle.label | in : MultiKey [] : String | +| Test.java:5196:10:5196:21 | getKey(...) : String | semmle.label | getKey(...) : String | +| Test.java:5197:9:5197:11 | out | semmle.label | out | +| Test.java:5202:18:5202:57 | newMultiKeyWithElement(...) : MultiKey [] : String | semmle.label | newMultiKeyWithElement(...) : MultiKey [] : String | +| Test.java:5202:41:5202:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5202:49:5202:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5203:10:5203:11 | in : MultiKey [] : String | semmle.label | in : MultiKey [] : String | +| Test.java:5203:10:5203:21 | getKeys(...) : Object[] [[]] : String | semmle.label | getKeys(...) : Object[] [[]] : String | +| Test.java:5204:9:5204:28 | getArrayElement(...) | semmle.label | getArrayElement(...) | +| Test.java:5204:25:5204:27 | out : Object[] [[]] : String | semmle.label | out : Object[] [[]] : String | +| Test.java:5209:20:5209:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:5209:42:5209:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5209:50:5209:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5210:10:5210:37 | new MyAbstractLinkedList<>(...) : MyAbstractLinkedList [] : String | semmle.label | new MyAbstractLinkedList<>(...) : MyAbstractLinkedList [] : String | +| Test.java:5210:35:5210:36 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:5211:9:5211:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5211:20:5211:22 | out : MyAbstractLinkedList [] : String | semmle.label | out : MyAbstractLinkedList [] : String | +| Test.java:5216:16:5216:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5217:4:5217:6 | out [post update] : AbstractLinkedList [] : Object | semmle.label | out [post update] : AbstractLinkedList [] : Object | +| Test.java:5217:17:5217:18 | in : Object | semmle.label | in : Object | +| Test.java:5218:9:5218:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5218:20:5218:22 | out : AbstractLinkedList [] : Object | semmle.label | out : AbstractLinkedList [] : Object | +| Test.java:5223:16:5223:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5224:4:5224:6 | out [post update] : AbstractLinkedList [] : Object | semmle.label | out [post update] : AbstractLinkedList [] : Object | +| Test.java:5224:16:5224:17 | in : Object | semmle.label | in : Object | +| Test.java:5225:9:5225:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5225:20:5225:22 | out : AbstractLinkedList [] : Object | semmle.label | out : AbstractLinkedList [] : Object | +| Test.java:5230:28:5230:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | semmle.label | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | +| Test.java:5230:63:5230:78 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5230:71:5230:78 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5231:10:5231:11 | in : CursorableLinkedList [] : String | semmle.label | in : CursorableLinkedList [] : String | +| Test.java:5231:10:5231:22 | getFirst(...) : String | semmle.label | getFirst(...) : String | +| Test.java:5232:9:5232:11 | out | semmle.label | out | +| Test.java:5237:28:5237:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | semmle.label | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | +| Test.java:5237:63:5237:78 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5237:71:5237:78 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5238:10:5238:11 | in : CursorableLinkedList [] : String | semmle.label | in : CursorableLinkedList [] : String | +| Test.java:5238:10:5238:21 | getLast(...) : String | semmle.label | getLast(...) : String | +| Test.java:5239:9:5239:11 | out | semmle.label | out | +| Test.java:5244:28:5244:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | semmle.label | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | +| Test.java:5244:63:5244:78 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5244:71:5244:78 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5245:10:5245:11 | in : CursorableLinkedList [] : String | semmle.label | in : CursorableLinkedList [] : String | +| Test.java:5245:10:5245:25 | removeFirst(...) : String | semmle.label | removeFirst(...) : String | +| Test.java:5246:9:5246:11 | out | semmle.label | out | +| Test.java:5251:28:5251:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | semmle.label | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | +| Test.java:5251:63:5251:78 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5251:71:5251:78 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5252:10:5252:11 | in : CursorableLinkedList [] : String | semmle.label | in : CursorableLinkedList [] : String | +| Test.java:5252:10:5252:24 | removeLast(...) : String | semmle.label | removeLast(...) : String | +| Test.java:5253:9:5253:11 | out | semmle.label | out | +| Test.java:5258:14:5258:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5258:22:5258:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5258:30:5258:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5259:10:5259:40 | new MyAbstractListDecorator<>(...) : MyAbstractListDecorator [] : String | semmle.label | new MyAbstractListDecorator<>(...) : MyAbstractListDecorator [] : String | +| Test.java:5259:38:5259:39 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5260:9:5260:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5260:20:5260:22 | out : MyAbstractListDecorator [] : String | semmle.label | out : MyAbstractListDecorator [] : String | +| Test.java:5265:14:5265:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5265:22:5265:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5265:30:5265:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5266:10:5266:52 | new MyAbstractSerializableListDecorator<>(...) : MyAbstractSerializableListDecorator [] : String | semmle.label | new MyAbstractSerializableListDecorator<>(...) : MyAbstractSerializableListDecorator [] : String | +| Test.java:5266:50:5266:51 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5267:9:5267:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5267:20:5267:22 | out : MyAbstractSerializableListDecorator [] : String | semmle.label | out : MyAbstractSerializableListDecorator [] : String | +| Test.java:5272:20:5272:44 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5272:28:5272:43 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5272:36:5272:43 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5273:10:5273:37 | new CursorableLinkedList<>(...) : CursorableLinkedList [] : String | semmle.label | new CursorableLinkedList<>(...) : CursorableLinkedList [] : String | +| Test.java:5273:35:5273:36 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5274:9:5274:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5274:20:5274:22 | out : CursorableLinkedList [] : String | semmle.label | out : CursorableLinkedList [] : String | +| Test.java:5279:30:5279:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | semmle.label | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | +| Test.java:5279:65:5279:80 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5279:73:5279:80 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5280:10:5280:11 | in : CursorableLinkedList [] : String | semmle.label | in : CursorableLinkedList [] : String | +| Test.java:5280:10:5280:21 | cursor(...) : Cursor [] : String | semmle.label | cursor(...) : Cursor [] : String | +| Test.java:5281:9:5281:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5281:20:5281:22 | out : Cursor [] : String | semmle.label | out : Cursor [] : String | +| Test.java:5286:30:5286:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | semmle.label | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | +| Test.java:5286:65:5286:80 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5286:73:5286:80 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5287:10:5287:11 | in : CursorableLinkedList [] : String | semmle.label | in : CursorableLinkedList [] : String | +| Test.java:5287:10:5287:20 | cursor(...) : Cursor [] : String | semmle.label | cursor(...) : Cursor [] : String | +| Test.java:5288:9:5288:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5288:20:5288:22 | out : Cursor [] : String | semmle.label | out : Cursor [] : String | +| Test.java:5293:14:5293:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5293:22:5293:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5293:30:5293:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5294:10:5294:40 | fixedSizeList(...) : FixedSizeList [] : String | semmle.label | fixedSizeList(...) : FixedSizeList [] : String | +| Test.java:5294:38:5294:39 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5295:9:5295:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5295:20:5295:22 | out : FixedSizeList [] : String | semmle.label | out : FixedSizeList [] : String | +| Test.java:5300:14:5300:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5300:22:5300:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5300:30:5300:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5301:10:5301:34 | growthList(...) : GrowthList [] : String | semmle.label | growthList(...) : GrowthList [] : String | +| Test.java:5301:32:5301:33 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5302:9:5302:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5302:20:5302:22 | out : GrowthList [] : String | semmle.label | out : GrowthList [] : String | +| Test.java:5307:14:5307:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5307:22:5307:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5307:30:5307:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5308:10:5308:49 | lazyList(...) : LazyList [] : String | semmle.label | lazyList(...) : LazyList [] : String | +| Test.java:5308:28:5308:29 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5309:9:5309:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5309:20:5309:22 | out : LazyList [] : String | semmle.label | out : LazyList [] : String | +| Test.java:5314:14:5314:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5314:22:5314:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5314:30:5314:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5315:10:5315:45 | lazyList(...) : LazyList [] : String | semmle.label | lazyList(...) : LazyList [] : String | +| Test.java:5315:28:5315:29 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5316:9:5316:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5316:20:5316:22 | out : LazyList [] : String | semmle.label | out : LazyList [] : String | +| Test.java:5321:20:5321:44 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5321:28:5321:43 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5321:36:5321:43 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5322:10:5322:38 | new NodeCachingLinkedList<>(...) : NodeCachingLinkedList [] : String | semmle.label | new NodeCachingLinkedList<>(...) : NodeCachingLinkedList [] : String | +| Test.java:5322:36:5322:37 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5323:9:5323:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5323:20:5323:22 | out : NodeCachingLinkedList [] : String | semmle.label | out : NodeCachingLinkedList [] : String | +| Test.java:5328:14:5328:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5328:22:5328:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5328:30:5328:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5329:10:5329:48 | predicatedList(...) : PredicatedList [] : String | semmle.label | predicatedList(...) : PredicatedList [] : String | +| Test.java:5329:40:5329:41 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5330:9:5330:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5330:20:5330:22 | out : PredicatedList [] : String | semmle.label | out : PredicatedList [] : String | +| Test.java:5335:23:5335:76 | setUniqueList(...) : SetUniqueList [] : String | semmle.label | setUniqueList(...) : SetUniqueList [] : String | +| Test.java:5335:51:5335:75 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5335:59:5335:74 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5335:67:5335:74 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5336:10:5336:11 | in : SetUniqueList [] : String | semmle.label | in : SetUniqueList [] : String | +| Test.java:5336:10:5336:19 | asSet(...) : Set [] : String | semmle.label | asSet(...) : Set [] : String | +| Test.java:5337:9:5337:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5337:20:5337:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:5342:14:5342:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5342:22:5342:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5342:30:5342:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5343:10:5343:40 | setUniqueList(...) : SetUniqueList [] : String | semmle.label | setUniqueList(...) : SetUniqueList [] : String | +| Test.java:5343:38:5343:39 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5344:9:5344:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5344:20:5344:22 | out : SetUniqueList [] : String | semmle.label | out : SetUniqueList [] : String | +| Test.java:5349:14:5349:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5349:22:5349:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5349:30:5349:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5350:10:5350:51 | transformingList(...) : TransformedList [] : String | semmle.label | transformingList(...) : TransformedList [] : String | +| Test.java:5350:43:5350:44 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5351:9:5351:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5351:20:5351:22 | out : TransformedList [] : String | semmle.label | out : TransformedList [] : String | +| Test.java:5356:20:5356:44 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5356:28:5356:43 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5356:36:5356:43 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5357:10:5357:25 | new TreeList<>(...) : TreeList [] : String | semmle.label | new TreeList<>(...) : TreeList [] : String | +| Test.java:5357:23:5357:24 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5358:9:5358:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5358:20:5358:22 | out : TreeList [] : String | semmle.label | out : TreeList [] : String | +| Test.java:5363:14:5363:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5363:22:5363:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5363:30:5363:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5364:10:5364:33 | new UnmodifiableList<>(...) : UnmodifiableList [] : String | semmle.label | new UnmodifiableList<>(...) : UnmodifiableList [] : String | +| Test.java:5364:31:5364:32 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5365:9:5365:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5365:20:5365:22 | out : UnmodifiableList [] : String | semmle.label | out : UnmodifiableList [] : String | +| Test.java:5370:14:5370:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:5370:22:5370:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5370:30:5370:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5371:10:5371:46 | unmodifiableList(...) : List [] : String | semmle.label | unmodifiableList(...) : List [] : String | +| Test.java:5371:44:5371:45 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:5372:9:5372:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5372:20:5372:22 | out : List [] : String | semmle.label | out : List [] : String | +| Test.java:5377:13:5377:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5377:20:5377:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5377:28:5377:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5378:10:5378:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | semmle.label | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | +| Test.java:5378:34:5378:35 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5379:9:5379:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5379:19:5379:21 | out : MyAbstractHashedMap [] : String | semmle.label | out : MyAbstractHashedMap [] : String | +| Test.java:5384:13:5384:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5384:26:5384:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5384:34:5384:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5385:10:5385:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | semmle.label | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | +| Test.java:5385:34:5385:35 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5386:9:5386:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5386:21:5386:23 | out : MyAbstractHashedMap [] : String | semmle.label | out : MyAbstractHashedMap [] : String | +| Test.java:5391:13:5391:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5391:20:5391:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5391:28:5391:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5392:10:5392:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | semmle.label | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | +| Test.java:5392:34:5392:35 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5393:9:5393:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5393:19:5393:21 | out : MyAbstractLinkedMap [] : String | semmle.label | out : MyAbstractLinkedMap [] : String | +| Test.java:5398:13:5398:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5398:26:5398:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5398:34:5398:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5399:10:5399:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | semmle.label | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | +| Test.java:5399:34:5399:35 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5400:9:5400:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5400:21:5400:23 | out : MyAbstractLinkedMap [] : String | semmle.label | out : MyAbstractLinkedMap [] : String | +| Test.java:5405:13:5405:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5405:20:5405:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5405:28:5405:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5406:10:5406:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | semmle.label | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | +| Test.java:5406:37:5406:38 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5407:9:5407:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5407:19:5407:21 | out : MyAbstractMapDecorator [] : String | semmle.label | out : MyAbstractMapDecorator [] : String | +| Test.java:5412:13:5412:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5412:26:5412:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5412:34:5412:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5413:10:5413:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | semmle.label | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | +| Test.java:5413:37:5413:38 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5414:9:5414:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5414:21:5414:23 | out : MyAbstractMapDecorator [] : String | semmle.label | out : MyAbstractMapDecorator [] : String | +| Test.java:5419:32:5419:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | semmle.label | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | +| Test.java:5419:59:5419:88 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5419:66:5419:81 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5419:74:5419:81 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5420:10:5420:11 | in : MyAbstractMapDecorator [] : String | semmle.label | in : MyAbstractMapDecorator [] : String | +| Test.java:5420:10:5420:25 | myDecorated(...) : Map [] : String | semmle.label | myDecorated(...) : Map [] : String | +| Test.java:5421:9:5421:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5421:19:5421:21 | out : Map [] : String | semmle.label | out : Map [] : String | +| Test.java:5426:32:5426:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | semmle.label | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | +| Test.java:5426:59:5426:88 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5426:72:5426:87 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5426:80:5426:87 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5427:10:5427:11 | in : MyAbstractMapDecorator [] : String | semmle.label | in : MyAbstractMapDecorator [] : String | +| Test.java:5427:10:5427:25 | myDecorated(...) : Map [] : String | semmle.label | myDecorated(...) : Map [] : String | +| Test.java:5428:9:5428:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5428:21:5428:23 | out : Map [] : String | semmle.label | out : Map [] : String | +| Test.java:5433:20:5433:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:5433:48:5433:63 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5433:56:5433:63 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5434:10:5434:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | semmle.label | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | +| Test.java:5434:44:5434:45 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | +| Test.java:5435:9:5435:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5435:19:5435:21 | out : MyAbstractOrderedMapDecorator [] : String | semmle.label | out : MyAbstractOrderedMapDecorator [] : String | +| Test.java:5440:20:5440:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:5440:50:5440:65 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5440:58:5440:65 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5441:10:5441:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | semmle.label | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | +| Test.java:5441:44:5441:45 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | +| Test.java:5442:9:5442:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5442:21:5442:23 | out : MyAbstractOrderedMapDecorator [] : String | semmle.label | out : MyAbstractOrderedMapDecorator [] : String | +| Test.java:5447:19:5447:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:5447:40:5447:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5447:48:5447:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5448:10:5448:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | semmle.label | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | +| Test.java:5448:43:5448:44 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:5449:9:5449:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5449:19:5449:21 | out : MyAbstractSortedMapDecorator [] : String | semmle.label | out : MyAbstractSortedMapDecorator [] : String | +| Test.java:5454:19:5454:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:5454:42:5454:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5454:50:5454:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5455:10:5455:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | semmle.label | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | +| Test.java:5455:43:5455:44 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:5456:9:5456:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5456:21:5456:23 | out : MyAbstractSortedMapDecorator [] : String | semmle.label | out : MyAbstractSortedMapDecorator [] : String | +| Test.java:5461:13:5461:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5461:20:5461:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5461:28:5461:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5462:10:5462:35 | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | semmle.label | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | +| Test.java:5462:33:5462:34 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5463:9:5463:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5463:19:5463:21 | out : CaseInsensitiveMap [] : String | semmle.label | out : CaseInsensitiveMap [] : String | +| Test.java:5468:13:5468:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5468:26:5468:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5468:34:5468:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5469:10:5469:35 | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | semmle.label | new CaseInsensitiveMap<>(...) : CaseInsensitiveMap [] : String | +| Test.java:5469:33:5469:34 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5470:9:5470:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5470:21:5470:23 | out : CaseInsensitiveMap [] : String | semmle.label | out : CaseInsensitiveMap [] : String | +| Test.java:5475:13:5475:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5475:20:5475:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5475:28:5475:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5476:10:5476:40 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5476:27:5476:28 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5477:9:5477:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5477:19:5477:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5482:13:5482:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5482:20:5482:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5482:28:5482:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5483:10:5483:40 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5483:38:5483:39 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5484:9:5484:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5484:19:5484:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5489:13:5489:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5489:26:5489:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5489:34:5489:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5490:10:5490:40 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5490:27:5490:28 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5491:9:5491:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5491:21:5491:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5496:13:5496:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5496:26:5496:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5496:34:5496:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5497:10:5497:40 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5497:38:5497:39 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5498:9:5498:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5498:21:5498:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5503:13:5503:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5503:20:5503:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5503:28:5503:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5504:10:5504:41 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5504:27:5504:28 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5505:9:5505:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5505:19:5505:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5510:13:5510:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5510:20:5510:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5510:28:5510:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5511:10:5511:41 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5511:33:5511:34 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5512:9:5512:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5512:19:5512:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5517:13:5517:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5517:26:5517:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5517:34:5517:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5518:10:5518:41 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5518:27:5518:28 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5519:9:5519:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5519:21:5519:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5524:13:5524:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5524:26:5524:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5524:34:5524:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5525:10:5525:41 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5525:33:5525:34 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5526:9:5526:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5526:21:5526:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5531:15:5531:55 | {...} : Map[] [[], ] : String | semmle.label | {...} : Map[] [[], ] : String | +| Test.java:5531:25:5531:54 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5531:32:5531:47 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5531:40:5531:47 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5532:10:5532:29 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5532:27:5532:28 | in : Map[] [[], ] : String | semmle.label | in : Map[] [[], ] : String | +| Test.java:5533:9:5533:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5533:19:5533:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5538:15:5538:55 | {...} : Map[] [[], ] : String | semmle.label | {...} : Map[] [[], ] : String | +| Test.java:5538:25:5538:54 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5538:38:5538:53 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5538:46:5538:53 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5539:10:5539:29 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5539:27:5539:28 | in : Map[] [[], ] : String | semmle.label | in : Map[] [[], ] : String | +| Test.java:5540:9:5540:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5540:21:5540:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5545:15:5545:55 | {...} : Map[] [[], ] : String | semmle.label | {...} : Map[] [[], ] : String | +| Test.java:5545:25:5545:54 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5545:32:5545:47 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5545:40:5545:47 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5546:10:5546:60 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5546:27:5546:28 | in : Map[] [[], ] : String | semmle.label | in : Map[] [[], ] : String | +| Test.java:5547:9:5547:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5547:19:5547:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5552:15:5552:55 | {...} : Map[] [[], ] : String | semmle.label | {...} : Map[] [[], ] : String | +| Test.java:5552:25:5552:54 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5552:38:5552:53 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5552:46:5552:53 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5553:10:5553:60 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5553:27:5553:28 | in : Map[] [[], ] : String | semmle.label | in : Map[] [[], ] : String | +| Test.java:5554:9:5554:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5554:21:5554:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5559:13:5559:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5559:20:5559:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5559:28:5559:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5560:4:5560:6 | out [post update] : CompositeMap [] : String | semmle.label | out [post update] : CompositeMap [] : String | +| Test.java:5560:22:5560:23 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5561:9:5561:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5561:19:5561:21 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5566:13:5566:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5566:26:5566:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5566:34:5566:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5567:4:5567:6 | out [post update] : CompositeMap [] : String | semmle.label | out [post update] : CompositeMap [] : String | +| Test.java:5567:22:5567:23 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5568:9:5568:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5568:21:5568:23 | out : CompositeMap [] : String | semmle.label | out : CompositeMap [] : String | +| Test.java:5573:13:5573:25 | (...)... : Map | semmle.label | (...)... : Map | +| Test.java:5573:18:5573:25 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5575:10:5575:38 | removeComposited(...) : Map | semmle.label | removeComposited(...) : Map | +| Test.java:5575:36:5575:37 | in : Map | semmle.label | in : Map | +| Test.java:5576:9:5576:11 | out | semmle.label | out | +| Test.java:5581:22:5581:75 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5581:39:5581:68 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5581:46:5581:61 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5581:54:5581:61 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5582:10:5582:11 | in : CompositeMap [] : String | semmle.label | in : CompositeMap [] : String | +| Test.java:5582:10:5582:34 | removeComposited(...) : Map [] : String | semmle.label | removeComposited(...) : Map [] : String | +| Test.java:5583:9:5583:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5583:19:5583:21 | out : Map [] : String | semmle.label | out : Map [] : String | +| Test.java:5588:22:5588:75 | new CompositeMap<>(...) : CompositeMap [] : String | semmle.label | new CompositeMap<>(...) : CompositeMap [] : String | +| Test.java:5588:39:5588:68 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5588:52:5588:67 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5588:60:5588:67 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5589:10:5589:11 | in : CompositeMap [] : String | semmle.label | in : CompositeMap [] : String | +| Test.java:5589:10:5589:34 | removeComposited(...) : Map [] : String | semmle.label | removeComposited(...) : Map [] : String | +| Test.java:5590:9:5590:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5590:21:5590:23 | out : Map [] : String | semmle.label | out : Map [] : String | +| Test.java:5595:16:5595:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5596:10:5596:29 | new DefaultedMap<>(...) : DefaultedMap [] : Object | semmle.label | new DefaultedMap<>(...) : DefaultedMap [] : Object | +| Test.java:5596:27:5596:28 | in : Object | semmle.label | in : Object | +| Test.java:5597:9:5597:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5597:21:5597:23 | out : DefaultedMap [] : Object | semmle.label | out : DefaultedMap [] : Object | +| Test.java:5602:16:5602:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5603:10:5603:49 | defaultedMap(...) : DefaultedMap [] : Object | semmle.label | defaultedMap(...) : DefaultedMap [] : Object | +| Test.java:5603:47:5603:48 | in : Object | semmle.label | in : Object | +| Test.java:5604:9:5604:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5604:21:5604:23 | out : DefaultedMap [] : Object | semmle.label | out : DefaultedMap [] : Object | +| Test.java:5609:28:5609:57 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5609:35:5609:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5609:43:5609:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5610:10:5610:57 | defaultedMap(...) : Map [] : String | semmle.label | defaultedMap(...) : Map [] : String | +| Test.java:5610:36:5610:37 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5611:9:5611:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5611:19:5611:21 | out : Map [] : String | semmle.label | out : Map [] : String | +| Test.java:5616:13:5616:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5616:20:5616:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5616:28:5616:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5617:10:5617:52 | defaultedMap(...) : DefaultedMap [] : String | semmle.label | defaultedMap(...) : DefaultedMap [] : String | +| Test.java:5617:36:5617:37 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5618:9:5618:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5618:19:5618:21 | out : DefaultedMap [] : String | semmle.label | out : DefaultedMap [] : String | +| Test.java:5623:28:5623:57 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5623:35:5623:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5623:43:5623:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5624:10:5624:53 | defaultedMap(...) : DefaultedMap [] : String | semmle.label | defaultedMap(...) : DefaultedMap [] : String | +| Test.java:5624:36:5624:37 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5625:9:5625:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5625:19:5625:21 | out : DefaultedMap [] : String | semmle.label | out : DefaultedMap [] : String | +| Test.java:5630:28:5630:57 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5630:41:5630:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5630:49:5630:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5631:10:5631:57 | defaultedMap(...) : Map [] : String | semmle.label | defaultedMap(...) : Map [] : String | +| Test.java:5631:36:5631:37 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5632:9:5632:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5632:21:5632:23 | out : Map [] : String | semmle.label | out : Map [] : String | +| Test.java:5637:13:5637:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5637:26:5637:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5637:34:5637:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5638:10:5638:52 | defaultedMap(...) : DefaultedMap [] : String | semmle.label | defaultedMap(...) : DefaultedMap [] : String | +| Test.java:5638:36:5638:37 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5639:9:5639:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5639:21:5639:23 | out : DefaultedMap [] : String | semmle.label | out : DefaultedMap [] : String | +| Test.java:5644:28:5644:57 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5644:41:5644:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5644:49:5644:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5645:10:5645:53 | defaultedMap(...) : DefaultedMap [] : String | semmle.label | defaultedMap(...) : DefaultedMap [] : String | +| Test.java:5645:36:5645:37 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5646:9:5646:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5646:21:5646:23 | out : DefaultedMap [] : String | semmle.label | out : DefaultedMap [] : String | +| Test.java:5651:13:5651:76 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | +| Test.java:5651:42:5651:75 | newTMEWithMapKey(...) : TiedMapEntry [] : String | semmle.label | newTMEWithMapKey(...) : TiedMapEntry [] : String | +| Test.java:5651:59:5651:74 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5651:67:5651:74 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5652:10:5652:45 | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | semmle.label | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | +| Test.java:5652:43:5652:44 | in : ListOrderedSet [, ] : String | semmle.label | in : ListOrderedSet [, ] : String | +| Test.java:5653:9:5653:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5653:20:5653:22 | out : EntrySetToMapIteratorAdapter [] : String | semmle.label | out : EntrySetToMapIteratorAdapter [] : String | +| Test.java:5658:13:5658:78 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | +| Test.java:5658:42:5658:77 | newTMEWithMapValue(...) : TiedMapEntry [] : String | semmle.label | newTMEWithMapValue(...) : TiedMapEntry [] : String | +| Test.java:5658:61:5658:76 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5658:69:5658:76 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5659:10:5659:45 | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | semmle.label | new EntrySetToMapIteratorAdapter<>(...) : EntrySetToMapIteratorAdapter [] : String | +| Test.java:5659:43:5659:44 | in : ListOrderedSet [, ] : String | semmle.label | in : ListOrderedSet [, ] : String | +| Test.java:5660:9:5660:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5660:21:5660:23 | out : EntrySetToMapIteratorAdapter [] : String | semmle.label | out : EntrySetToMapIteratorAdapter [] : String | +| Test.java:5665:13:5665:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5665:20:5665:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5665:28:5665:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5666:10:5666:38 | fixedSizeMap(...) : FixedSizeMap [] : String | semmle.label | fixedSizeMap(...) : FixedSizeMap [] : String | +| Test.java:5666:36:5666:37 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5667:9:5667:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5667:19:5667:21 | out : FixedSizeMap [] : String | semmle.label | out : FixedSizeMap [] : String | +| Test.java:5672:13:5672:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5672:26:5672:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5672:34:5672:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5673:10:5673:38 | fixedSizeMap(...) : FixedSizeMap [] : String | semmle.label | fixedSizeMap(...) : FixedSizeMap [] : String | +| Test.java:5673:36:5673:37 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5674:9:5674:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5674:21:5674:23 | out : FixedSizeMap [] : String | semmle.label | out : FixedSizeMap [] : String | +| Test.java:5679:19:5679:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:5679:40:5679:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5679:48:5679:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5680:10:5680:50 | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | semmle.label | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | +| Test.java:5680:48:5680:49 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:5681:9:5681:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5681:19:5681:21 | out : FixedSizeSortedMap [] : String | semmle.label | out : FixedSizeSortedMap [] : String | +| Test.java:5686:19:5686:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:5686:42:5686:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5686:50:5686:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5687:10:5687:50 | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | semmle.label | fixedSizeSortedMap(...) : FixedSizeSortedMap [] : String | +| Test.java:5687:48:5687:49 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:5688:9:5688:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5688:21:5688:23 | out : FixedSizeSortedMap [] : String | semmle.label | out : FixedSizeSortedMap [] : String | +| Test.java:5693:13:5693:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5693:20:5693:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5693:28:5693:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5694:10:5694:25 | new Flat3Map<>(...) : Flat3Map [] : String | semmle.label | new Flat3Map<>(...) : Flat3Map [] : String | +| Test.java:5694:23:5694:24 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5695:9:5695:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5695:19:5695:21 | out : Flat3Map [] : String | semmle.label | out : Flat3Map [] : String | +| Test.java:5700:13:5700:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5700:26:5700:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5700:34:5700:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5701:10:5701:25 | new Flat3Map<>(...) : Flat3Map [] : String | semmle.label | new Flat3Map<>(...) : Flat3Map [] : String | +| Test.java:5701:23:5701:24 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5702:9:5702:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5702:21:5702:23 | out : Flat3Map [] : String | semmle.label | out : Flat3Map [] : String | +| Test.java:5707:13:5707:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5707:20:5707:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5707:28:5707:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5708:10:5708:26 | new HashedMap<>(...) : HashedMap [] : String | semmle.label | new HashedMap<>(...) : HashedMap [] : String | +| Test.java:5708:24:5708:25 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5709:9:5709:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5709:19:5709:21 | out : HashedMap [] : String | semmle.label | out : HashedMap [] : String | +| Test.java:5714:13:5714:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5714:26:5714:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5714:34:5714:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5715:10:5715:26 | new HashedMap<>(...) : HashedMap [] : String | semmle.label | new HashedMap<>(...) : HashedMap [] : String | +| Test.java:5715:24:5715:25 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5716:9:5716:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5716:21:5716:23 | out : HashedMap [] : String | semmle.label | out : HashedMap [] : String | +| Test.java:5721:13:5721:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5721:20:5721:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5721:28:5721:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5722:10:5722:23 | new LRUMap<>(...) : LRUMap [] : String | semmle.label | new LRUMap<>(...) : LRUMap [] : String | +| Test.java:5722:21:5722:22 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5723:9:5723:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5723:19:5723:21 | out : LRUMap [] : String | semmle.label | out : LRUMap [] : String | +| Test.java:5728:13:5728:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5728:26:5728:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5728:34:5728:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5729:10:5729:23 | new LRUMap<>(...) : LRUMap [] : String | semmle.label | new LRUMap<>(...) : LRUMap [] : String | +| Test.java:5729:21:5729:22 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5730:9:5730:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5730:21:5730:23 | out : LRUMap [] : String | semmle.label | out : LRUMap [] : String | +| Test.java:5735:13:5735:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5735:20:5735:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5735:28:5735:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5736:10:5736:30 | new LRUMap<>(...) : LRUMap [] : String | semmle.label | new LRUMap<>(...) : LRUMap [] : String | +| Test.java:5736:21:5736:22 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5737:9:5737:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5737:19:5737:21 | out : LRUMap [] : String | semmle.label | out : LRUMap [] : String | +| Test.java:5742:13:5742:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5742:26:5742:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5742:34:5742:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5743:10:5743:30 | new LRUMap<>(...) : LRUMap [] : String | semmle.label | new LRUMap<>(...) : LRUMap [] : String | +| Test.java:5743:21:5743:22 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5744:9:5744:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5744:21:5744:23 | out : LRUMap [] : String | semmle.label | out : LRUMap [] : String | +| Test.java:5749:16:5749:53 | (...)... : Map [] : String | semmle.label | (...)... : Map [] : String | +| Test.java:5749:24:5749:53 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5749:37:5749:52 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5749:45:5749:52 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5751:10:5751:32 | get(...) : String | semmle.label | get(...) : String | +| Test.java:5751:23:5751:24 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5752:9:5752:11 | out | semmle.label | out | +| Test.java:5757:13:5757:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5757:20:5757:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5757:28:5757:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5758:10:5758:47 | lazyMap(...) : LazyMap [] : String | semmle.label | lazyMap(...) : LazyMap [] : String | +| Test.java:5758:26:5758:27 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5759:9:5759:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5759:19:5759:21 | out : LazyMap [] : String | semmle.label | out : LazyMap [] : String | +| Test.java:5764:13:5764:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5764:20:5764:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5764:28:5764:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5765:10:5765:43 | lazyMap(...) : LazyMap [] : String | semmle.label | lazyMap(...) : LazyMap [] : String | +| Test.java:5765:26:5765:27 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5766:9:5766:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5766:19:5766:21 | out : LazyMap [] : String | semmle.label | out : LazyMap [] : String | +| Test.java:5771:13:5771:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5771:26:5771:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5771:34:5771:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5772:10:5772:47 | lazyMap(...) : LazyMap [] : String | semmle.label | lazyMap(...) : LazyMap [] : String | +| Test.java:5772:26:5772:27 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5773:9:5773:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5773:21:5773:23 | out : LazyMap [] : String | semmle.label | out : LazyMap [] : String | +| Test.java:5778:13:5778:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5778:26:5778:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5778:34:5778:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5779:10:5779:43 | lazyMap(...) : LazyMap [] : String | semmle.label | lazyMap(...) : LazyMap [] : String | +| Test.java:5779:26:5779:27 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5780:9:5780:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5780:21:5780:23 | out : LazyMap [] : String | semmle.label | out : LazyMap [] : String | +| Test.java:5785:19:5785:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:5785:40:5785:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5785:48:5785:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5786:10:5786:59 | lazySortedMap(...) : LazySortedMap [] : String | semmle.label | lazySortedMap(...) : LazySortedMap [] : String | +| Test.java:5786:38:5786:39 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:5787:9:5787:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5787:19:5787:21 | out : LazySortedMap [] : String | semmle.label | out : LazySortedMap [] : String | +| Test.java:5792:19:5792:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:5792:40:5792:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5792:48:5792:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5793:10:5793:55 | lazySortedMap(...) : LazySortedMap [] : String | semmle.label | lazySortedMap(...) : LazySortedMap [] : String | +| Test.java:5793:38:5793:39 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:5794:9:5794:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5794:19:5794:21 | out : LazySortedMap [] : String | semmle.label | out : LazySortedMap [] : String | +| Test.java:5799:19:5799:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:5799:42:5799:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5799:50:5799:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5800:10:5800:59 | lazySortedMap(...) : LazySortedMap [] : String | semmle.label | lazySortedMap(...) : LazySortedMap [] : String | +| Test.java:5800:38:5800:39 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:5801:9:5801:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5801:21:5801:23 | out : LazySortedMap [] : String | semmle.label | out : LazySortedMap [] : String | +| Test.java:5806:19:5806:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:5806:42:5806:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5806:50:5806:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5807:10:5807:55 | lazySortedMap(...) : LazySortedMap [] : String | semmle.label | lazySortedMap(...) : LazySortedMap [] : String | +| Test.java:5807:38:5807:39 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:5808:9:5808:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5808:21:5808:23 | out : LazySortedMap [] : String | semmle.label | out : LazySortedMap [] : String | +| Test.java:5813:13:5813:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5813:20:5813:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5813:28:5813:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5814:10:5814:26 | new LinkedMap<>(...) : LinkedMap [] : String | semmle.label | new LinkedMap<>(...) : LinkedMap [] : String | +| Test.java:5814:24:5814:25 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5815:9:5815:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5815:19:5815:21 | out : LinkedMap [] : String | semmle.label | out : LinkedMap [] : String | +| Test.java:5820:13:5820:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5820:26:5820:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5820:34:5820:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5821:10:5821:26 | new LinkedMap<>(...) : LinkedMap [] : String | semmle.label | new LinkedMap<>(...) : LinkedMap [] : String | +| Test.java:5821:24:5821:25 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5822:9:5822:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5822:21:5822:23 | out : LinkedMap [] : String | semmle.label | out : LinkedMap [] : String | +| Test.java:5827:19:5827:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapKey(...) : LinkedMap [] : String | +| Test.java:5827:42:5827:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5827:50:5827:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5828:10:5828:11 | in : LinkedMap [] : String | semmle.label | in : LinkedMap [] : String | +| Test.java:5828:10:5828:20 | asList(...) : List [] : String | semmle.label | asList(...) : List [] : String | +| Test.java:5829:9:5829:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5829:20:5829:22 | out : List [] : String | semmle.label | out : List [] : String | +| Test.java:5834:19:5834:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapKey(...) : LinkedMap [] : String | +| Test.java:5834:42:5834:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5834:50:5834:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5835:10:5835:11 | in : LinkedMap [] : String | semmle.label | in : LinkedMap [] : String | +| Test.java:5835:10:5835:18 | get(...) : String | semmle.label | get(...) : String | +| Test.java:5836:9:5836:11 | out | semmle.label | out | +| Test.java:5841:19:5841:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapValue(...) : LinkedMap [] : String | +| Test.java:5841:44:5841:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5841:52:5841:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5842:10:5842:11 | in : LinkedMap [] : String | semmle.label | in : LinkedMap [] : String | +| Test.java:5842:10:5842:23 | getValue(...) : String | semmle.label | getValue(...) : String | +| Test.java:5843:9:5843:11 | out | semmle.label | out | +| Test.java:5848:19:5848:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | semmle.label | newLinkedMapWithMapValue(...) : LinkedMap [] : String | +| Test.java:5848:44:5848:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5848:52:5848:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5849:10:5849:11 | in : LinkedMap [] : String | semmle.label | in : LinkedMap [] : String | +| Test.java:5849:10:5849:21 | remove(...) : String | semmle.label | remove(...) : String | +| Test.java:5850:9:5850:11 | out | semmle.label | out | +| Test.java:5855:24:5855:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:5855:52:5855:67 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5855:60:5855:67 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5856:10:5856:11 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | +| Test.java:5856:10:5856:20 | asList(...) : List [] : String | semmle.label | asList(...) : List [] : String | +| Test.java:5857:9:5857:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5857:20:5857:22 | out : List [] : String | semmle.label | out : List [] : String | +| Test.java:5862:24:5862:60 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : Object | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : Object | +| Test.java:5862:52:5862:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5863:10:5863:11 | in : ListOrderedMap [] : Object | semmle.label | in : ListOrderedMap [] : Object | +| Test.java:5863:10:5863:18 | get(...) : Object | semmle.label | get(...) : Object | +| Test.java:5864:9:5864:11 | out | semmle.label | out | +| Test.java:5869:24:5869:62 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : Object | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : Object | +| Test.java:5869:54:5869:61 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5870:10:5870:11 | in : ListOrderedMap [] : Object | semmle.label | in : ListOrderedMap [] : Object | +| Test.java:5870:10:5870:23 | getValue(...) : Object | semmle.label | getValue(...) : Object | +| Test.java:5871:9:5871:11 | out | semmle.label | out | +| Test.java:5876:24:5876:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:5876:52:5876:67 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5876:60:5876:67 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5877:10:5877:11 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | +| Test.java:5877:10:5877:21 | keyList(...) : List [] : String | semmle.label | keyList(...) : List [] : String | +| Test.java:5878:9:5878:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5878:20:5878:22 | out : List [] : String | semmle.label | out : List [] : String | +| Test.java:5883:13:5883:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5883:20:5883:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5883:28:5883:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5884:10:5884:42 | listOrderedMap(...) : ListOrderedMap [] : String | semmle.label | listOrderedMap(...) : ListOrderedMap [] : String | +| Test.java:5884:40:5884:41 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5885:9:5885:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5885:19:5885:21 | out : ListOrderedMap [] : String | semmle.label | out : ListOrderedMap [] : String | +| Test.java:5890:13:5890:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5890:26:5890:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5890:34:5890:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5891:10:5891:42 | listOrderedMap(...) : ListOrderedMap [] : String | semmle.label | listOrderedMap(...) : ListOrderedMap [] : String | +| Test.java:5891:40:5891:41 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5892:9:5892:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5892:21:5892:23 | out : ListOrderedMap [] : String | semmle.label | out : ListOrderedMap [] : String | +| Test.java:5897:16:5897:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5898:4:5898:6 | out [post update] : ListOrderedMap [] : Object | semmle.label | out [post update] : ListOrderedMap [] : Object | +| Test.java:5898:18:5898:19 | in : Object | semmle.label | in : Object | +| Test.java:5899:9:5899:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5899:21:5899:23 | out : ListOrderedMap [] : Object | semmle.label | out : ListOrderedMap [] : Object | +| Test.java:5904:16:5904:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5905:4:5905:6 | out [post update] : ListOrderedMap [] : Object | semmle.label | out [post update] : ListOrderedMap [] : Object | +| Test.java:5905:15:5905:16 | in : Object | semmle.label | in : Object | +| Test.java:5906:9:5906:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5906:19:5906:21 | out : ListOrderedMap [] : Object | semmle.label | out : ListOrderedMap [] : Object | +| Test.java:5911:16:5911:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5912:4:5912:6 | out [post update] : ListOrderedMap [] : Object | semmle.label | out [post update] : ListOrderedMap [] : Object | +| Test.java:5912:21:5912:22 | in : Object | semmle.label | in : Object | +| Test.java:5913:9:5913:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5913:21:5913:23 | out : ListOrderedMap [] : Object | semmle.label | out : ListOrderedMap [] : Object | +| Test.java:5918:13:5918:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5918:20:5918:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5918:28:5918:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5919:4:5919:6 | out [post update] : ListOrderedMap [] : String | semmle.label | out [post update] : ListOrderedMap [] : String | +| Test.java:5919:18:5919:19 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5920:9:5920:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:5920:19:5920:21 | out : ListOrderedMap [] : String | semmle.label | out : ListOrderedMap [] : String | +| Test.java:5925:13:5925:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:5925:26:5925:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5925:34:5925:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5926:4:5926:6 | out [post update] : ListOrderedMap [] : String | semmle.label | out [post update] : ListOrderedMap [] : String | +| Test.java:5926:18:5926:19 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:5927:9:5927:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5927:21:5927:23 | out : ListOrderedMap [] : String | semmle.label | out : ListOrderedMap [] : String | +| Test.java:5932:24:5932:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:5932:54:5932:69 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5932:62:5932:69 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5933:10:5933:11 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | +| Test.java:5933:10:5933:21 | remove(...) : String | semmle.label | remove(...) : String | +| Test.java:5934:9:5934:11 | out | semmle.label | out | +| Test.java:5939:16:5939:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5940:4:5940:6 | out [post update] : ListOrderedMap [] : Object | semmle.label | out [post update] : ListOrderedMap [] : Object | +| Test.java:5940:20:5940:21 | in : Object | semmle.label | in : Object | +| Test.java:5941:9:5941:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5941:21:5941:23 | out : ListOrderedMap [] : Object | semmle.label | out : ListOrderedMap [] : Object | +| Test.java:5946:24:5946:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:5946:54:5946:69 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5946:62:5946:69 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5947:10:5947:11 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | +| Test.java:5947:10:5947:23 | valueList(...) : List [] : String | semmle.label | valueList(...) : List [] : String | +| Test.java:5948:9:5948:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5948:20:5948:22 | out : List [] : String | semmle.label | out : List [] : String | +| Test.java:5953:21:5953:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:5953:40:5953:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5953:48:5953:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5954:10:5954:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:5954:10:5954:45 | get(...) : String | semmle.label | get(...) : String | +| Test.java:5955:9:5955:11 | out | semmle.label | out | +| Test.java:5960:21:5960:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:5960:40:5960:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5960:48:5960:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5961:10:5961:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:5961:10:5961:39 | get(...) : String | semmle.label | get(...) : String | +| Test.java:5962:9:5962:11 | out | semmle.label | out | +| Test.java:5967:21:5967:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:5967:40:5967:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5967:48:5967:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5968:10:5968:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:5968:10:5968:33 | get(...) : String | semmle.label | get(...) : String | +| Test.java:5969:9:5969:11 | out | semmle.label | out | +| Test.java:5974:21:5974:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:5974:40:5974:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5974:48:5974:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5975:10:5975:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:5975:10:5975:27 | get(...) : String | semmle.label | get(...) : String | +| Test.java:5976:9:5976:11 | out | semmle.label | out | +| Test.java:5981:16:5981:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5981:24:5981:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5982:4:5982:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:5982:18:5982:19 | in : String | semmle.label | in : String | +| Test.java:5983:9:5983:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5983:20:5983:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:5983:30:5983:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:5988:16:5988:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5988:24:5988:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5989:4:5989:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:5989:12:5989:13 | in : String | semmle.label | in : String | +| Test.java:5990:9:5990:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:5990:20:5990:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:5990:30:5990:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:5995:16:5995:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:5995:24:5995:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:5996:4:5996:6 | out [post update] : MultiKeyMap [] : String | semmle.label | out [post update] : MultiKeyMap [] : String | +| Test.java:5996:24:5996:25 | in : String | semmle.label | in : String | +| Test.java:5997:9:5997:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:5997:21:5997:23 | out : MultiKeyMap [] : String | semmle.label | out : MultiKeyMap [] : String | +| Test.java:6002:16:6002:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6002:24:6002:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6003:4:6003:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:6003:24:6003:25 | in : String | semmle.label | in : String | +| Test.java:6004:9:6004:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6004:20:6004:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:6004:30:6004:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:6009:16:6009:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6009:24:6009:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6010:4:6010:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:6010:18:6010:19 | in : String | semmle.label | in : String | +| Test.java:6011:9:6011:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6011:20:6011:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:6011:30:6011:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:6016:16:6016:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6016:24:6016:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6017:4:6017:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:6017:12:6017:13 | in : String | semmle.label | in : String | +| Test.java:6018:9:6018:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6018:20:6018:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:6018:30:6018:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:6023:16:6023:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6023:24:6023:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6024:4:6024:6 | out [post update] : MultiKeyMap [] : String | semmle.label | out [post update] : MultiKeyMap [] : String | +| Test.java:6024:30:6024:31 | in : String | semmle.label | in : String | +| Test.java:6025:9:6025:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6025:21:6025:23 | out : MultiKeyMap [] : String | semmle.label | out : MultiKeyMap [] : String | +| Test.java:6030:16:6030:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6030:24:6030:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6031:4:6031:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:6031:30:6031:31 | in : String | semmle.label | in : String | +| Test.java:6032:9:6032:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6032:20:6032:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:6032:30:6032:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:6037:16:6037:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6037:24:6037:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6038:4:6038:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:6038:24:6038:25 | in : String | semmle.label | in : String | +| Test.java:6039:9:6039:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6039:20:6039:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:6039:30:6039:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:6044:16:6044:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6044:24:6044:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6045:4:6045:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:6045:18:6045:19 | in : String | semmle.label | in : String | +| Test.java:6046:9:6046:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6046:20:6046:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:6046:30:6046:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:6051:16:6051:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6051:24:6051:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6052:4:6052:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:6052:12:6052:13 | in : String | semmle.label | in : String | +| Test.java:6053:9:6053:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6053:20:6053:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:6053:30:6053:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:6058:16:6058:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6058:24:6058:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6059:4:6059:6 | out [post update] : MultiKeyMap [] : String | semmle.label | out [post update] : MultiKeyMap [] : String | +| Test.java:6059:36:6059:37 | in : String | semmle.label | in : String | +| Test.java:6060:9:6060:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6060:21:6060:23 | out : MultiKeyMap [] : String | semmle.label | out : MultiKeyMap [] : String | +| Test.java:6065:16:6065:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6065:24:6065:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6066:4:6066:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:6066:36:6066:37 | in : String | semmle.label | in : String | +| Test.java:6067:9:6067:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6067:20:6067:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:6067:30:6067:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:6072:16:6072:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6072:24:6072:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6073:4:6073:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:6073:30:6073:31 | in : String | semmle.label | in : String | +| Test.java:6074:9:6074:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6074:20:6074:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:6074:30:6074:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:6079:16:6079:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6079:24:6079:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6080:4:6080:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:6080:24:6080:25 | in : String | semmle.label | in : String | +| Test.java:6081:9:6081:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6081:20:6081:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:6081:30:6081:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:6086:16:6086:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6086:24:6086:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6087:4:6087:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:6087:18:6087:19 | in : String | semmle.label | in : String | +| Test.java:6088:9:6088:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6088:20:6088:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:6088:30:6088:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:6093:16:6093:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6093:24:6093:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6094:4:6094:6 | out [post update] : MultiKeyMap [, ] : String | semmle.label | out [post update] : MultiKeyMap [, ] : String | +| Test.java:6094:12:6094:13 | in : String | semmle.label | in : String | +| Test.java:6095:9:6095:34 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6095:20:6095:33 | getMapKey(...) : MultiKey [] : String | semmle.label | getMapKey(...) : MultiKey [] : String | +| Test.java:6095:30:6095:32 | out : MultiKeyMap [, ] : String | semmle.label | out : MultiKeyMap [, ] : String | +| Test.java:6100:16:6100:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6100:24:6100:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6101:4:6101:6 | out [post update] : MultiKeyMap [] : String | semmle.label | out [post update] : MultiKeyMap [] : String | +| Test.java:6101:42:6101:43 | in : String | semmle.label | in : String | +| Test.java:6102:9:6102:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6102:21:6102:23 | out : MultiKeyMap [] : String | semmle.label | out : MultiKeyMap [] : String | +| Test.java:6107:21:6107:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6107:40:6107:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6107:48:6107:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6108:10:6108:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:6108:10:6108:51 | put(...) : String | semmle.label | put(...) : String | +| Test.java:6109:9:6109:11 | out | semmle.label | out | +| Test.java:6114:21:6114:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6114:40:6114:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6114:48:6114:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6115:10:6115:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:6115:10:6115:45 | put(...) : String | semmle.label | put(...) : String | +| Test.java:6116:9:6116:11 | out | semmle.label | out | +| Test.java:6121:21:6121:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6121:40:6121:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6121:48:6121:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6122:10:6122:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:6122:10:6122:39 | put(...) : String | semmle.label | put(...) : String | +| Test.java:6123:9:6123:11 | out | semmle.label | out | +| Test.java:6128:21:6128:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6128:40:6128:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6128:48:6128:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6129:10:6129:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:6129:10:6129:33 | put(...) : String | semmle.label | put(...) : String | +| Test.java:6130:9:6130:11 | out | semmle.label | out | +| Test.java:6135:21:6135:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6135:40:6135:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6135:48:6135:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6136:10:6136:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:6136:10:6136:27 | put(...) : String | semmle.label | put(...) : String | +| Test.java:6137:9:6137:11 | out | semmle.label | out | +| Test.java:6142:21:6142:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6142:40:6142:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6142:48:6142:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6143:10:6143:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:6143:10:6143:56 | removeMultiKey(...) : String | semmle.label | removeMultiKey(...) : String | +| Test.java:6144:9:6144:11 | out | semmle.label | out | +| Test.java:6149:21:6149:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6149:40:6149:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6149:48:6149:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6150:10:6150:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:6150:10:6150:50 | removeMultiKey(...) : String | semmle.label | removeMultiKey(...) : String | +| Test.java:6151:9:6151:11 | out | semmle.label | out | +| Test.java:6156:21:6156:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6156:40:6156:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6156:48:6156:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6157:10:6157:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:6157:10:6157:44 | removeMultiKey(...) : String | semmle.label | removeMultiKey(...) : String | +| Test.java:6158:9:6158:11 | out | semmle.label | out | +| Test.java:6163:21:6163:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | semmle.label | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6163:40:6163:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6163:48:6163:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6164:10:6164:11 | in : MultiKeyMap [] : String | semmle.label | in : MultiKeyMap [] : String | +| Test.java:6164:10:6164:38 | removeMultiKey(...) : String | semmle.label | removeMultiKey(...) : String | +| Test.java:6165:9:6165:11 | out | semmle.label | out | +| Test.java:6170:23:6170:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [, ] : String | +| Test.java:6170:23:6170:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:6170:42:6170:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6170:50:6170:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6171:10:6171:11 | in : MultiValueMap [, ] : String | semmle.label | in : MultiValueMap [, ] : String | +| Test.java:6171:10:6171:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | +| Test.java:6171:10:6171:31 | getCollection(...) : Collection [] : Object | semmle.label | getCollection(...) : Collection [] : Object | +| Test.java:6171:10:6171:31 | getCollection(...) : Collection [] : String | semmle.label | getCollection(...) : Collection [] : String | +| Test.java:6172:9:6172:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6172:20:6172:22 | out : Collection [] : Object | semmle.label | out : Collection [] : Object | +| Test.java:6172:20:6172:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | +| Test.java:6177:38:6177:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [, ] : String | +| Test.java:6177:38:6177:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:6177:57:6177:72 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6177:65:6177:72 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6178:10:6178:11 | in : MultiValueMap [, ] : String | semmle.label | in : MultiValueMap [, ] : String | +| Test.java:6178:10:6178:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | +| Test.java:6178:10:6178:22 | iterator(...) : Iterator [, ] : Object | semmle.label | iterator(...) : Iterator [, ] : Object | +| Test.java:6178:10:6178:22 | iterator(...) : Iterator [, ] : String | semmle.label | iterator(...) : Iterator [, ] : String | +| Test.java:6179:9:6179:45 | getMapValueFromEntry(...) | semmle.label | getMapValueFromEntry(...) | +| Test.java:6179:30:6179:44 | getElement(...) : Entry [] : Object | semmle.label | getElement(...) : Entry [] : Object | +| Test.java:6179:30:6179:44 | getElement(...) : Entry [] : String | semmle.label | getElement(...) : Entry [] : String | +| Test.java:6179:41:6179:43 | out : Iterator [, ] : Object | semmle.label | out : Iterator [, ] : Object | +| Test.java:6179:41:6179:43 | out : Iterator [, ] : String | semmle.label | out : Iterator [, ] : String | +| Test.java:6184:38:6184:71 | newMVMWithMapKey(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapKey(...) : MultiValueMap [] : String | +| Test.java:6184:55:6184:70 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6184:63:6184:70 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6185:10:6185:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | +| Test.java:6185:10:6185:22 | iterator(...) : Iterator [, ] : String | semmle.label | iterator(...) : Iterator [, ] : String | +| Test.java:6186:9:6186:43 | getMapKeyFromEntry(...) | semmle.label | getMapKeyFromEntry(...) | +| Test.java:6186:28:6186:42 | getElement(...) : Entry [] : String | semmle.label | getElement(...) : Entry [] : String | +| Test.java:6186:39:6186:41 | out : Iterator [, ] : String | semmle.label | out : Iterator [, ] : String | +| Test.java:6191:38:6191:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [, ] : String | +| Test.java:6191:38:6191:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:6191:57:6191:72 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6191:65:6191:72 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6192:10:6192:11 | in : MultiValueMap [, ] : String | semmle.label | in : MultiValueMap [, ] : String | +| Test.java:6192:10:6192:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | +| Test.java:6192:10:6192:26 | iterator(...) : Iterator [] : Object | semmle.label | iterator(...) : Iterator [] : Object | +| Test.java:6192:10:6192:26 | iterator(...) : Iterator [] : String | semmle.label | iterator(...) : Iterator [] : String | +| Test.java:6193:9:6193:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6193:20:6193:22 | out : Iterator [] : Object | semmle.label | out : Iterator [] : Object | +| Test.java:6193:20:6193:22 | out : Iterator [] : String | semmle.label | out : Iterator [] : String | +| Test.java:6198:13:6198:64 | of(...) : Map [, ] : String | semmle.label | of(...) : Map [, ] : String | +| Test.java:6198:26:6198:63 | newVectorWithElement(...) : Vector [] : String | semmle.label | newVectorWithElement(...) : Vector [] : String | +| Test.java:6198:47:6198:62 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6198:55:6198:62 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6199:10:6199:55 | multiValueMap(...) : MultiValueMap [, ] : String | semmle.label | multiValueMap(...) : MultiValueMap [, ] : String | +| Test.java:6199:38:6199:39 | in : Map [, ] : String | semmle.label | in : Map [, ] : String | +| Test.java:6200:9:6200:48 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6200:20:6200:47 | (...)... : Collection [] : String | semmle.label | (...)... : Collection [] : String | +| Test.java:6200:32:6200:47 | getMapValue(...) : Object [] : String | semmle.label | getMapValue(...) : Object [] : String | +| Test.java:6200:44:6200:46 | out : MultiValueMap [, ] : String | semmle.label | out : MultiValueMap [, ] : String | +| Test.java:6205:13:6205:64 | of(...) : Map [, ] : String | semmle.label | of(...) : Map [, ] : String | +| Test.java:6205:26:6205:63 | newVectorWithElement(...) : Vector [] : String | semmle.label | newVectorWithElement(...) : Vector [] : String | +| Test.java:6205:47:6205:62 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6205:55:6205:62 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6206:10:6206:53 | multiValueMap(...) : MultiValueMap [, ] : String | semmle.label | multiValueMap(...) : MultiValueMap [, ] : String | +| Test.java:6206:38:6206:39 | in : Map [, ] : String | semmle.label | in : Map [, ] : String | +| Test.java:6207:9:6207:48 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6207:20:6207:47 | (...)... : Collection [] : String | semmle.label | (...)... : Collection [] : String | +| Test.java:6207:32:6207:47 | getMapValue(...) : Object [] : String | semmle.label | getMapValue(...) : Object [] : String | +| Test.java:6207:44:6207:46 | out : MultiValueMap [, ] : String | semmle.label | out : MultiValueMap [, ] : String | +| Test.java:6212:13:6212:64 | of(...) : Map [, ] : String | semmle.label | of(...) : Map [, ] : String | +| Test.java:6212:26:6212:63 | newVectorWithElement(...) : Vector [] : String | semmle.label | newVectorWithElement(...) : Vector [] : String | +| Test.java:6212:47:6212:62 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6212:55:6212:62 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6213:10:6213:40 | multiValueMap(...) : MultiValueMap [, ] : String | semmle.label | multiValueMap(...) : MultiValueMap [, ] : String | +| Test.java:6213:38:6213:39 | in : Map [, ] : String | semmle.label | in : Map [, ] : String | +| Test.java:6214:9:6214:48 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6214:20:6214:47 | (...)... : Collection [] : String | semmle.label | (...)... : Collection [] : String | +| Test.java:6214:32:6214:47 | getMapValue(...) : Object [] : String | semmle.label | getMapValue(...) : Object [] : String | +| Test.java:6214:44:6214:46 | out : MultiValueMap [, ] : String | semmle.label | out : MultiValueMap [, ] : String | +| Test.java:6219:13:6219:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6219:20:6219:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6219:28:6219:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6220:10:6220:55 | multiValueMap(...) : MultiValueMap [] : String | semmle.label | multiValueMap(...) : MultiValueMap [] : String | +| Test.java:6220:38:6220:39 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6221:9:6221:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6221:19:6221:21 | out : MultiValueMap [] : String | semmle.label | out : MultiValueMap [] : String | +| Test.java:6226:13:6226:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6226:20:6226:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6226:28:6226:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6227:10:6227:53 | multiValueMap(...) : MultiValueMap [] : String | semmle.label | multiValueMap(...) : MultiValueMap [] : String | +| Test.java:6227:38:6227:39 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6228:9:6228:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6228:19:6228:21 | out : MultiValueMap [] : String | semmle.label | out : MultiValueMap [] : String | +| Test.java:6233:13:6233:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6233:20:6233:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6233:28:6233:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6234:10:6234:40 | multiValueMap(...) : MultiValueMap [] : String | semmle.label | multiValueMap(...) : MultiValueMap [] : String | +| Test.java:6234:38:6234:39 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6235:9:6235:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6235:19:6235:21 | out : MultiValueMap [] : String | semmle.label | out : MultiValueMap [] : String | +| Test.java:6240:13:6240:48 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [, ] : String | +| Test.java:6240:13:6240:48 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:6240:32:6240:47 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6240:40:6240:47 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6241:4:6241:6 | out [post update] : MultiValueMap [, ] : Object | semmle.label | out [post update] : MultiValueMap [, ] : Object | +| Test.java:6241:4:6241:6 | out [post update] : MultiValueMap [, ] : String | semmle.label | out [post update] : MultiValueMap [, ] : String | +| Test.java:6241:15:6241:16 | in : MultiValueMap [, ] : String | semmle.label | in : MultiValueMap [, ] : String | +| Test.java:6241:15:6241:16 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | +| Test.java:6242:9:6242:48 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6242:20:6242:47 | (...)... : Collection [] : Object | semmle.label | (...)... : Collection [] : Object | +| Test.java:6242:20:6242:47 | (...)... : Collection [] : String | semmle.label | (...)... : Collection [] : String | +| Test.java:6242:32:6242:47 | getMapValue(...) : Object [] : Object | semmle.label | getMapValue(...) : Object [] : Object | +| Test.java:6242:32:6242:47 | getMapValue(...) : Object [] : String | semmle.label | getMapValue(...) : Object [] : String | +| Test.java:6242:44:6242:46 | out : MultiValueMap [, ] : Object | semmle.label | out : MultiValueMap [, ] : Object | +| Test.java:6242:44:6242:46 | out : MultiValueMap [, ] : String | semmle.label | out : MultiValueMap [, ] : String | +| Test.java:6247:13:6247:34 | of(...) : Map [] : Object | semmle.label | of(...) : Map [] : Object | +| Test.java:6247:26:6247:33 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6248:4:6248:6 | out [post update] : MultiValueMap [, ] : Object | semmle.label | out [post update] : MultiValueMap [, ] : Object | +| Test.java:6248:4:6248:6 | out [post update] : MultiValueMap [] : Object | semmle.label | out [post update] : MultiValueMap [] : Object | +| Test.java:6248:15:6248:16 | in : Map [] : Object | semmle.label | in : Map [] : Object | +| Test.java:6249:9:6249:48 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6249:20:6249:47 | (...)... : Collection | semmle.label | (...)... : Collection | +| Test.java:6249:20:6249:47 | (...)... : Collection [] : Object | semmle.label | (...)... : Collection [] : Object | +| Test.java:6249:32:6249:47 | getMapValue(...) : Object | semmle.label | getMapValue(...) : Object | +| Test.java:6249:32:6249:47 | getMapValue(...) : Object [] : Object | semmle.label | getMapValue(...) : Object [] : Object | +| Test.java:6249:44:6249:46 | out : MultiValueMap [, ] : Object | semmle.label | out : MultiValueMap [, ] : Object | +| Test.java:6249:44:6249:46 | out : MultiValueMap [] : Object | semmle.label | out : MultiValueMap [] : Object | +| Test.java:6254:16:6254:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6255:4:6255:6 | out [post update] : MultiValueMap [] : Object | semmle.label | out [post update] : MultiValueMap [] : Object | +| Test.java:6255:15:6255:16 | in : Object | semmle.label | in : Object | +| Test.java:6256:9:6256:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6256:19:6256:21 | out : MultiValueMap [] : Object | semmle.label | out : MultiValueMap [] : Object | +| Test.java:6261:20:6261:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:6261:42:6261:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6261:50:6261:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6262:4:6262:6 | out [post update] : MultiValueMap [, ] : String | semmle.label | out [post update] : MultiValueMap [, ] : String | +| Test.java:6262:21:6262:22 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:6263:9:6263:48 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6263:20:6263:47 | (...)... : Collection [] : String | semmle.label | (...)... : Collection [] : String | +| Test.java:6263:32:6263:47 | getMapValue(...) : Object [] : String | semmle.label | getMapValue(...) : Object [] : String | +| Test.java:6263:44:6263:46 | out : MultiValueMap [, ] : String | semmle.label | out : MultiValueMap [, ] : String | +| Test.java:6268:23:6268:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [, ] : String | +| Test.java:6268:23:6268:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | semmle.label | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:6268:42:6268:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6268:50:6268:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6269:10:6269:11 | in : MultiValueMap [, ] : String | semmle.label | in : MultiValueMap [, ] : String | +| Test.java:6269:10:6269:11 | in : MultiValueMap [] : String | semmle.label | in : MultiValueMap [] : String | +| Test.java:6269:10:6269:20 | values(...) : Collection [] : Object | semmle.label | values(...) : Collection [] : Object | +| Test.java:6269:10:6269:20 | values(...) : Collection [] : String | semmle.label | values(...) : Collection [] : String | +| Test.java:6270:9:6270:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6270:20:6270:22 | out : Collection [] : Object | semmle.label | out : Collection [] : Object | +| Test.java:6270:20:6270:22 | out : Collection [] : String | semmle.label | out : Collection [] : String | +| Test.java:6275:13:6275:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6275:20:6275:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6275:28:6275:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6276:10:6276:78 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | +| Test.java:6276:76:6276:77 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6277:9:6277:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6277:19:6277:21 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | +| Test.java:6282:13:6282:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6282:26:6282:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6282:34:6282:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6283:10:6283:78 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | +| Test.java:6283:76:6283:77 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6284:9:6284:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6284:21:6284:23 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | +| Test.java:6289:13:6289:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6289:20:6289:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6289:28:6289:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6290:10:6290:35 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | +| Test.java:6290:33:6290:34 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6291:9:6291:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6291:19:6291:21 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | +| Test.java:6296:13:6296:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6296:26:6296:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6296:34:6296:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6297:10:6297:35 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | +| Test.java:6297:33:6297:34 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6298:9:6298:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6298:21:6298:23 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | +| Test.java:6303:13:6303:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6303:20:6303:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6303:28:6303:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6304:10:6304:39 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | +| Test.java:6304:37:6304:38 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6305:9:6305:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6305:19:6305:21 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | +| Test.java:6310:13:6310:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6310:26:6310:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6310:34:6310:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6311:10:6311:39 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | +| Test.java:6311:37:6311:38 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6312:9:6312:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6312:21:6312:23 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | +| Test.java:6317:13:6317:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6317:20:6317:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6317:28:6317:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6318:10:6318:45 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | +| Test.java:6318:43:6318:44 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6319:9:6319:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6319:19:6319:21 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | +| Test.java:6324:13:6324:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6324:26:6324:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6324:34:6324:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6325:10:6325:45 | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | semmle.label | new PassiveExpiringMap<>(...) : PassiveExpiringMap [] : String | +| Test.java:6325:43:6325:44 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6326:9:6326:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6326:21:6326:23 | out : PassiveExpiringMap [] : String | semmle.label | out : PassiveExpiringMap [] : String | +| Test.java:6331:13:6331:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6331:20:6331:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6331:28:6331:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6332:10:6332:52 | predicatedMap(...) : PredicatedMap [] : String | semmle.label | predicatedMap(...) : PredicatedMap [] : String | +| Test.java:6332:38:6332:39 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6333:9:6333:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6333:19:6333:21 | out : PredicatedMap [] : String | semmle.label | out : PredicatedMap [] : String | +| Test.java:6338:13:6338:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6338:26:6338:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6338:34:6338:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6339:10:6339:52 | predicatedMap(...) : PredicatedMap [] : String | semmle.label | predicatedMap(...) : PredicatedMap [] : String | +| Test.java:6339:38:6339:39 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6340:9:6340:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6340:21:6340:23 | out : PredicatedMap [] : String | semmle.label | out : PredicatedMap [] : String | +| Test.java:6345:19:6345:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:6345:40:6345:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6345:48:6345:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6346:10:6346:64 | predicatedSortedMap(...) : PredicatedSortedMap [] : String | semmle.label | predicatedSortedMap(...) : PredicatedSortedMap [] : String | +| Test.java:6346:50:6346:51 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:6347:9:6347:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6347:19:6347:21 | out : PredicatedSortedMap [] : String | semmle.label | out : PredicatedSortedMap [] : String | +| Test.java:6352:19:6352:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:6352:42:6352:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6352:50:6352:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6353:10:6353:64 | predicatedSortedMap(...) : PredicatedSortedMap [] : String | semmle.label | predicatedSortedMap(...) : PredicatedSortedMap [] : String | +| Test.java:6353:50:6353:51 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:6354:9:6354:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6354:21:6354:23 | out : PredicatedSortedMap [] : String | semmle.label | out : PredicatedSortedMap [] : String | +| Test.java:6359:19:6359:52 | newTMEWithMapKey(...) : TiedMapEntry [] : String | semmle.label | newTMEWithMapKey(...) : TiedMapEntry [] : String | +| Test.java:6359:36:6359:51 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6359:44:6359:51 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6360:10:6360:29 | new SingletonMap<>(...) : SingletonMap [] : String | semmle.label | new SingletonMap<>(...) : SingletonMap [] : String | +| Test.java:6360:27:6360:28 | in : TiedMapEntry [] : String | semmle.label | in : TiedMapEntry [] : String | +| Test.java:6361:9:6361:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6361:19:6361:21 | out : SingletonMap [] : String | semmle.label | out : SingletonMap [] : String | +| Test.java:6366:19:6366:54 | newTMEWithMapValue(...) : TiedMapEntry [] : String | semmle.label | newTMEWithMapValue(...) : TiedMapEntry [] : String | +| Test.java:6366:38:6366:53 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6366:46:6366:53 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6367:10:6367:29 | new SingletonMap<>(...) : SingletonMap [] : String | semmle.label | new SingletonMap<>(...) : SingletonMap [] : String | +| Test.java:6367:27:6367:28 | in : TiedMapEntry [] : String | semmle.label | in : TiedMapEntry [] : String | +| Test.java:6368:9:6368:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6368:21:6368:23 | out : SingletonMap [] : String | semmle.label | out : SingletonMap [] : String | +| Test.java:6373:18:6373:51 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | semmle.label | newDKVWithMapKey(...) : DefaultKeyValue [] : String | +| Test.java:6373:35:6373:50 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6373:43:6373:50 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6374:10:6374:29 | new SingletonMap<>(...) : SingletonMap [] : String | semmle.label | new SingletonMap<>(...) : SingletonMap [] : String | +| Test.java:6374:27:6374:28 | in : DefaultKeyValue [] : String | semmle.label | in : DefaultKeyValue [] : String | +| Test.java:6375:9:6375:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6375:19:6375:21 | out : SingletonMap [] : String | semmle.label | out : SingletonMap [] : String | +| Test.java:6380:18:6380:53 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | semmle.label | newDKVWithMapValue(...) : DefaultKeyValue [] : String | +| Test.java:6380:37:6380:52 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6380:45:6380:52 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6381:10:6381:29 | new SingletonMap<>(...) : SingletonMap [] : String | semmle.label | new SingletonMap<>(...) : SingletonMap [] : String | +| Test.java:6381:27:6381:28 | in : DefaultKeyValue [] : String | semmle.label | in : DefaultKeyValue [] : String | +| Test.java:6382:9:6382:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6382:21:6382:23 | out : SingletonMap [] : String | semmle.label | out : SingletonMap [] : String | +| Test.java:6387:13:6387:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6387:20:6387:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6387:28:6387:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6388:10:6388:29 | new SingletonMap<>(...) : SingletonMap [] : String | semmle.label | new SingletonMap<>(...) : SingletonMap [] : String | +| Test.java:6388:27:6388:28 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6389:9:6389:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6389:19:6389:21 | out : SingletonMap [] : String | semmle.label | out : SingletonMap [] : String | +| Test.java:6394:13:6394:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6394:26:6394:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6394:34:6394:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6395:10:6395:29 | new SingletonMap<>(...) : SingletonMap [] : String | semmle.label | new SingletonMap<>(...) : SingletonMap [] : String | +| Test.java:6395:27:6395:28 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6396:9:6396:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6396:21:6396:23 | out : SingletonMap [] : String | semmle.label | out : SingletonMap [] : String | +| Test.java:6401:16:6401:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6402:10:6402:35 | new SingletonMap<>(...) : SingletonMap [] : Object | semmle.label | new SingletonMap<>(...) : SingletonMap [] : Object | +| Test.java:6402:27:6402:28 | in : Object | semmle.label | in : Object | +| Test.java:6403:9:6403:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6403:19:6403:21 | out : SingletonMap [] : Object | semmle.label | out : SingletonMap [] : Object | +| Test.java:6408:16:6408:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6409:10:6409:35 | new SingletonMap<>(...) : SingletonMap [] : Object | semmle.label | new SingletonMap<>(...) : SingletonMap [] : Object | +| Test.java:6409:33:6409:34 | in : Object | semmle.label | in : Object | +| Test.java:6410:9:6410:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6410:21:6410:23 | out : SingletonMap [] : Object | semmle.label | out : SingletonMap [] : Object | +| Test.java:6415:16:6415:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6416:4:6416:6 | out [post update] : SingletonMap [] : Object | semmle.label | out [post update] : SingletonMap [] : Object | +| Test.java:6416:17:6416:18 | in : Object | semmle.label | in : Object | +| Test.java:6417:9:6417:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6417:21:6417:23 | out : SingletonMap [] : Object | semmle.label | out : SingletonMap [] : Object | +| Test.java:6422:13:6422:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6422:20:6422:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6422:28:6422:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6423:10:6423:55 | transformingMap(...) : TransformedMap [] : String | semmle.label | transformingMap(...) : TransformedMap [] : String | +| Test.java:6423:41:6423:42 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6424:9:6424:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6424:19:6424:21 | out : TransformedMap [] : String | semmle.label | out : TransformedMap [] : String | +| Test.java:6429:13:6429:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6429:26:6429:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6429:34:6429:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6430:10:6430:55 | transformingMap(...) : TransformedMap [] : String | semmle.label | transformingMap(...) : TransformedMap [] : String | +| Test.java:6430:41:6430:42 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6431:9:6431:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6431:21:6431:23 | out : TransformedMap [] : String | semmle.label | out : TransformedMap [] : String | +| Test.java:6436:19:6436:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:6436:40:6436:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6436:48:6436:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6437:10:6437:67 | transformingSortedMap(...) : TransformedSortedMap [] : String | semmle.label | transformingSortedMap(...) : TransformedSortedMap [] : String | +| Test.java:6437:53:6437:54 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:6438:9:6438:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6438:19:6438:21 | out : TransformedSortedMap [] : String | semmle.label | out : TransformedSortedMap [] : String | +| Test.java:6443:19:6443:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:6443:42:6443:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6443:50:6443:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6444:10:6444:67 | transformingSortedMap(...) : TransformedSortedMap [] : String | semmle.label | transformingSortedMap(...) : TransformedSortedMap [] : String | +| Test.java:6444:53:6444:54 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:6445:9:6445:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6445:21:6445:23 | out : TransformedSortedMap [] : String | semmle.label | out : TransformedSortedMap [] : String | +| Test.java:6450:39:6450:102 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | +| Test.java:6450:68:6450:101 | newTMEWithMapKey(...) : TiedMapEntry [] : String | semmle.label | newTMEWithMapKey(...) : TiedMapEntry [] : String | +| Test.java:6450:85:6450:100 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6450:93:6450:100 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6451:10:6451:54 | unmodifiableEntrySet(...) : Set [, ] : String | semmle.label | unmodifiableEntrySet(...) : Set [, ] : String | +| Test.java:6451:52:6451:53 | in : ListOrderedSet [, ] : String | semmle.label | in : ListOrderedSet [, ] : String | +| Test.java:6452:9:6452:43 | getMapKeyFromEntry(...) | semmle.label | getMapKeyFromEntry(...) | +| Test.java:6452:28:6452:42 | getElement(...) : Entry [] : String | semmle.label | getElement(...) : Entry [] : String | +| Test.java:6452:39:6452:41 | out : Set [, ] : String | semmle.label | out : Set [, ] : String | +| Test.java:6457:39:6457:104 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | +| Test.java:6457:68:6457:103 | newTMEWithMapValue(...) : TiedMapEntry [] : String | semmle.label | newTMEWithMapValue(...) : TiedMapEntry [] : String | +| Test.java:6457:87:6457:102 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6457:95:6457:102 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6458:10:6458:54 | unmodifiableEntrySet(...) : Set [, ] : String | semmle.label | unmodifiableEntrySet(...) : Set [, ] : String | +| Test.java:6458:52:6458:53 | in : ListOrderedSet [, ] : String | semmle.label | in : ListOrderedSet [, ] : String | +| Test.java:6459:9:6459:45 | getMapValueFromEntry(...) | semmle.label | getMapValueFromEntry(...) | +| Test.java:6459:30:6459:44 | getElement(...) : Entry [] : String | semmle.label | getElement(...) : Entry [] : String | +| Test.java:6459:41:6459:43 | out : Set [, ] : String | semmle.label | out : Set [, ] : String | +| Test.java:6464:13:6464:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6464:20:6464:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6464:28:6464:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6465:10:6465:44 | unmodifiableMap(...) : Map [] : String | semmle.label | unmodifiableMap(...) : Map [] : String | +| Test.java:6465:42:6465:43 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6466:9:6466:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6466:19:6466:21 | out : Map [] : String | semmle.label | out : Map [] : String | +| Test.java:6471:13:6471:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6471:26:6471:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6471:34:6471:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6472:10:6472:44 | unmodifiableMap(...) : Map [] : String | semmle.label | unmodifiableMap(...) : Map [] : String | +| Test.java:6472:42:6472:43 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6473:9:6473:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6473:21:6473:23 | out : Map [] : String | semmle.label | out : Map [] : String | +| Test.java:6478:20:6478:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:6478:48:6478:63 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6478:56:6478:63 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6479:10:6479:58 | unmodifiableOrderedMap(...) : OrderedMap [] : String | semmle.label | unmodifiableOrderedMap(...) : OrderedMap [] : String | +| Test.java:6479:56:6479:57 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | +| Test.java:6480:9:6480:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6480:19:6480:21 | out : OrderedMap [] : String | semmle.label | out : OrderedMap [] : String | +| Test.java:6485:20:6485:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | semmle.label | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:6485:50:6485:65 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6485:58:6485:65 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6486:10:6486:58 | unmodifiableOrderedMap(...) : OrderedMap [] : String | semmle.label | unmodifiableOrderedMap(...) : OrderedMap [] : String | +| Test.java:6486:56:6486:57 | in : ListOrderedMap [] : String | semmle.label | in : ListOrderedMap [] : String | +| Test.java:6487:9:6487:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6487:21:6487:23 | out : OrderedMap [] : String | semmle.label | out : OrderedMap [] : String | +| Test.java:6492:19:6492:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:6492:40:6492:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6492:48:6492:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6493:10:6493:56 | unmodifiableSortedMap(...) : SortedMap [] : String | semmle.label | unmodifiableSortedMap(...) : SortedMap [] : String | +| Test.java:6493:54:6493:55 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:6494:9:6494:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6494:19:6494:21 | out : SortedMap [] : String | semmle.label | out : SortedMap [] : String | +| Test.java:6499:19:6499:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | semmle.label | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:6499:42:6499:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6499:50:6499:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6500:10:6500:56 | unmodifiableSortedMap(...) : SortedMap [] : String | semmle.label | unmodifiableSortedMap(...) : SortedMap [] : String | +| Test.java:6500:54:6500:55 | in : TreeMap [] : String | semmle.label | in : TreeMap [] : String | +| Test.java:6501:9:6501:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6501:21:6501:23 | out : SortedMap [] : String | semmle.label | out : SortedMap [] : String | +| Test.java:6506:13:6506:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6506:20:6506:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6506:28:6506:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6507:10:6507:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | semmle.label | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | +| Test.java:6507:37:6507:38 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6508:9:6508:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6508:19:6508:21 | out : ArrayListValuedHashMap [] : String | semmle.label | out : ArrayListValuedHashMap [] : String | +| Test.java:6513:13:6513:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6513:26:6513:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6513:34:6513:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6514:10:6514:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | semmle.label | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | +| Test.java:6514:37:6514:38 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6515:9:6515:36 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6515:20:6515:35 | getMapValue(...) : Collection [] : String | semmle.label | getMapValue(...) : Collection [] : String | +| Test.java:6515:32:6515:34 | out : ArrayListValuedHashMap [, ] : String | semmle.label | out : ArrayListValuedHashMap [, ] : String | +| Test.java:6520:24:6520:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | semmle.label | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | +| Test.java:6520:45:6520:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6520:53:6520:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6521:10:6521:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | semmle.label | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [, ] : String | +| Test.java:6521:37:6521:38 | in : ArrayListValuedHashMap [, ] : String | semmle.label | in : ArrayListValuedHashMap [, ] : String | +| Test.java:6522:9:6522:36 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6522:20:6522:35 | getMapValue(...) : Collection [] : String | semmle.label | getMapValue(...) : Collection [] : String | +| Test.java:6522:32:6522:34 | out : ArrayListValuedHashMap [, ] : String | semmle.label | out : ArrayListValuedHashMap [, ] : String | +| Test.java:6527:24:6527:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | semmle.label | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | +| Test.java:6527:43:6527:58 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6527:51:6527:58 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6528:10:6528:39 | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | semmle.label | new ArrayListValuedHashMap<>(...) : ArrayListValuedHashMap [] : String | +| Test.java:6528:37:6528:38 | in : ArrayListValuedHashMap [] : String | semmle.label | in : ArrayListValuedHashMap [] : String | +| Test.java:6529:9:6529:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6529:19:6529:21 | out : ArrayListValuedHashMap [] : String | semmle.label | out : ArrayListValuedHashMap [] : String | +| Test.java:6534:13:6534:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6534:20:6534:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6534:28:6534:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6535:10:6535:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | semmle.label | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | +| Test.java:6535:35:6535:36 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6536:9:6536:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6536:19:6536:21 | out : HashSetValuedHashMap [] : String | semmle.label | out : HashSetValuedHashMap [] : String | +| Test.java:6541:13:6541:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6541:26:6541:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6541:34:6541:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6542:10:6542:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | semmle.label | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | +| Test.java:6542:35:6542:36 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6543:9:6543:36 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6543:20:6543:35 | getMapValue(...) : Collection [] : String | semmle.label | getMapValue(...) : Collection [] : String | +| Test.java:6543:32:6543:34 | out : HashSetValuedHashMap [, ] : String | semmle.label | out : HashSetValuedHashMap [, ] : String | +| Test.java:6548:24:6548:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | semmle.label | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | +| Test.java:6548:45:6548:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6548:53:6548:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6549:10:6549:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | semmle.label | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [, ] : String | +| Test.java:6549:35:6549:36 | in : ArrayListValuedHashMap [, ] : String | semmle.label | in : ArrayListValuedHashMap [, ] : String | +| Test.java:6550:9:6550:36 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6550:20:6550:35 | getMapValue(...) : Collection [] : String | semmle.label | getMapValue(...) : Collection [] : String | +| Test.java:6550:32:6550:34 | out : HashSetValuedHashMap [, ] : String | semmle.label | out : HashSetValuedHashMap [, ] : String | +| Test.java:6555:24:6555:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | semmle.label | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | +| Test.java:6555:43:6555:58 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6555:51:6555:58 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6556:10:6556:37 | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | semmle.label | new HashSetValuedHashMap<>(...) : HashSetValuedHashMap [] : String | +| Test.java:6556:35:6556:36 | in : ArrayListValuedHashMap [] : String | semmle.label | in : ArrayListValuedHashMap [] : String | +| Test.java:6557:9:6557:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6557:19:6557:21 | out : HashSetValuedHashMap [] : String | semmle.label | out : HashSetValuedHashMap [] : String | +| Test.java:6562:24:6562:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | semmle.label | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | +| Test.java:6562:45:6562:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6562:53:6562:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6563:10:6563:66 | transformingMap(...) : TransformedMultiValuedMap [, ] : String | semmle.label | transformingMap(...) : TransformedMultiValuedMap [, ] : String | +| Test.java:6563:52:6563:53 | in : ArrayListValuedHashMap [, ] : String | semmle.label | in : ArrayListValuedHashMap [, ] : String | +| Test.java:6564:9:6564:36 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6564:20:6564:35 | getMapValue(...) : Collection [] : String | semmle.label | getMapValue(...) : Collection [] : String | +| Test.java:6564:32:6564:34 | out : TransformedMultiValuedMap [, ] : String | semmle.label | out : TransformedMultiValuedMap [, ] : String | +| Test.java:6569:24:6569:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | semmle.label | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | +| Test.java:6569:43:6569:58 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6569:51:6569:58 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6570:10:6570:66 | transformingMap(...) : TransformedMultiValuedMap [] : String | semmle.label | transformingMap(...) : TransformedMultiValuedMap [] : String | +| Test.java:6570:52:6570:53 | in : ArrayListValuedHashMap [] : String | semmle.label | in : ArrayListValuedHashMap [] : String | +| Test.java:6571:9:6571:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6571:19:6571:21 | out : TransformedMultiValuedMap [] : String | semmle.label | out : TransformedMultiValuedMap [] : String | +| Test.java:6576:24:6576:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | semmle.label | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | +| Test.java:6576:45:6576:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6576:53:6576:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6577:10:6577:66 | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [, ] : String | semmle.label | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [, ] : String | +| Test.java:6577:64:6577:65 | in : ArrayListValuedHashMap [, ] : String | semmle.label | in : ArrayListValuedHashMap [, ] : String | +| Test.java:6578:9:6578:36 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6578:20:6578:35 | getMapValue(...) : Collection [] : String | semmle.label | getMapValue(...) : Collection [] : String | +| Test.java:6578:32:6578:34 | out : UnmodifiableMultiValuedMap [, ] : String | semmle.label | out : UnmodifiableMultiValuedMap [, ] : String | +| Test.java:6583:24:6583:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | semmle.label | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | +| Test.java:6583:43:6583:58 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6583:51:6583:58 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6584:10:6584:66 | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [] : String | semmle.label | unmodifiableMultiValuedMap(...) : UnmodifiableMultiValuedMap [] : String | +| Test.java:6584:64:6584:65 | in : ArrayListValuedHashMap [] : String | semmle.label | in : ArrayListValuedHashMap [] : String | +| Test.java:6585:9:6585:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6585:19:6585:21 | out : UnmodifiableMultiValuedMap [] : String | semmle.label | out : UnmodifiableMultiValuedMap [] : String | +| Test.java:6590:20:6590:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:6590:42:6590:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6590:50:6590:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6591:10:6591:29 | new HashMultiSet<>(...) : HashMultiSet [] : String | semmle.label | new HashMultiSet<>(...) : HashMultiSet [] : String | +| Test.java:6591:27:6591:28 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:6592:9:6592:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6592:20:6592:22 | out : HashMultiSet [] : String | semmle.label | out : HashMultiSet [] : String | +| Test.java:6597:18:6597:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | semmle.label | newHashMultiSetWithElement(...) : HashMultiSet [] : String | +| Test.java:6597:45:6597:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6597:53:6597:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6598:10:6598:56 | predicatedMultiSet(...) : PredicatedMultiSet [] : String | semmle.label | predicatedMultiSet(...) : PredicatedMultiSet [] : String | +| Test.java:6598:48:6598:49 | in : HashMultiSet [] : String | semmle.label | in : HashMultiSet [] : String | +| Test.java:6599:9:6599:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6599:20:6599:22 | out : PredicatedMultiSet [] : String | semmle.label | out : PredicatedMultiSet [] : String | +| Test.java:6604:18:6604:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | semmle.label | newHashMultiSetWithElement(...) : HashMultiSet [] : String | +| Test.java:6604:45:6604:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6604:53:6604:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6605:10:6605:54 | synchronizedMultiSet(...) : SynchronizedMultiSet [] : String | semmle.label | synchronizedMultiSet(...) : SynchronizedMultiSet [] : String | +| Test.java:6605:52:6605:53 | in : HashMultiSet [] : String | semmle.label | in : HashMultiSet [] : String | +| Test.java:6606:9:6606:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6606:20:6606:22 | out : SynchronizedMultiSet [] : String | semmle.label | out : SynchronizedMultiSet [] : String | +| Test.java:6611:18:6611:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | semmle.label | newHashMultiSetWithElement(...) : HashMultiSet [] : String | +| Test.java:6611:45:6611:60 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6611:53:6611:60 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6612:10:6612:54 | unmodifiableMultiSet(...) : MultiSet [] : String | semmle.label | unmodifiableMultiSet(...) : MultiSet [] : String | +| Test.java:6612:52:6612:53 | in : HashMultiSet [] : String | semmle.label | in : HashMultiSet [] : String | +| Test.java:6613:9:6613:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6613:20:6613:22 | out : MultiSet [] : String | semmle.label | out : MultiSet [] : String | +| Test.java:6618:16:6618:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6618:24:6618:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6620:10:6620:32 | load(...) : Properties | semmle.label | load(...) : Properties | +| Test.java:6620:30:6620:31 | in : String | semmle.label | in : String | +| Test.java:6621:9:6621:11 | out | semmle.label | out | +| Test.java:6626:14:6626:27 | (...)... : File | semmle.label | (...)... : File | +| Test.java:6626:20:6626:27 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6628:10:6628:26 | load(...) : Properties | semmle.label | load(...) : Properties | +| Test.java:6628:24:6628:25 | in : File | semmle.label | in : File | +| Test.java:6629:9:6629:11 | out | semmle.label | out | +| Test.java:6634:21:6634:41 | (...)... : InputStream | semmle.label | (...)... : InputStream | +| Test.java:6634:34:6634:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6636:10:6636:26 | load(...) : Properties | semmle.label | load(...) : Properties | +| Test.java:6636:24:6636:25 | in : InputStream | semmle.label | in : InputStream | +| Test.java:6637:9:6637:11 | out | semmle.label | out | +| Test.java:6642:14:6642:27 | (...)... : Path | semmle.label | (...)... : Path | +| Test.java:6642:20:6642:27 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6644:10:6644:26 | load(...) : Properties | semmle.label | load(...) : Properties | +| Test.java:6644:24:6644:25 | in : Path | semmle.label | in : Path | +| Test.java:6645:9:6645:11 | out | semmle.label | out | +| Test.java:6650:16:6650:31 | (...)... : Reader | semmle.label | (...)... : Reader | +| Test.java:6650:24:6650:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6652:10:6652:26 | load(...) : Properties | semmle.label | load(...) : Properties | +| Test.java:6652:24:6652:25 | in : Reader | semmle.label | in : Reader | +| Test.java:6653:9:6653:11 | out | semmle.label | out | +| Test.java:6658:16:6658:31 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6658:24:6658:31 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6660:10:6660:26 | load(...) : Properties | semmle.label | load(...) : Properties | +| Test.java:6660:24:6660:25 | in : String | semmle.label | in : String | +| Test.java:6661:9:6661:11 | out | semmle.label | out | +| Test.java:6666:13:6666:25 | (...)... : URI | semmle.label | (...)... : URI | +| Test.java:6666:18:6666:25 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6668:10:6668:26 | load(...) : Properties | semmle.label | load(...) : Properties | +| Test.java:6668:24:6668:25 | in : URI | semmle.label | in : URI | +| Test.java:6669:9:6669:11 | out | semmle.label | out | +| Test.java:6674:13:6674:25 | (...)... : URL | semmle.label | (...)... : URL | +| Test.java:6674:18:6674:25 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6676:10:6676:26 | load(...) : Properties | semmle.label | load(...) : Properties | +| Test.java:6676:24:6676:25 | in : URL | semmle.label | in : URL | +| Test.java:6677:9:6677:11 | out | semmle.label | out | +| Test.java:6682:20:6682:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:6682:42:6682:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6682:50:6682:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6683:10:6683:34 | new CircularFifoQueue<>(...) : CircularFifoQueue [] : String | semmle.label | new CircularFifoQueue<>(...) : CircularFifoQueue [] : String | +| Test.java:6683:32:6683:33 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:6684:9:6684:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6684:20:6684:22 | out : CircularFifoQueue [] : String | semmle.label | out : CircularFifoQueue [] : String | +| Test.java:6689:27:6689:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:6689:59:6689:74 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6689:67:6689:74 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6690:10:6690:11 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | +| Test.java:6690:10:6690:18 | get(...) : String | semmle.label | get(...) : String | +| Test.java:6691:9:6691:11 | out | semmle.label | out | +| Test.java:6696:15:6696:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:6696:47:6696:62 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6696:55:6696:62 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6697:10:6697:50 | predicatedQueue(...) : PredicatedQueue [] : String | semmle.label | predicatedQueue(...) : PredicatedQueue [] : String | +| Test.java:6697:42:6697:43 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | +| Test.java:6698:9:6698:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6698:20:6698:22 | out : PredicatedQueue [] : String | semmle.label | out : PredicatedQueue [] : String | +| Test.java:6703:15:6703:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:6703:47:6703:62 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6703:55:6703:62 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6704:10:6704:48 | synchronizedQueue(...) : SynchronizedQueue [] : String | semmle.label | synchronizedQueue(...) : SynchronizedQueue [] : String | +| Test.java:6704:46:6704:47 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | +| Test.java:6705:9:6705:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6705:20:6705:22 | out : SynchronizedQueue [] : String | semmle.label | out : SynchronizedQueue [] : String | +| Test.java:6710:15:6710:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:6710:47:6710:62 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6710:55:6710:62 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6711:10:6711:53 | transformingQueue(...) : TransformedQueue [] : String | semmle.label | transformingQueue(...) : TransformedQueue [] : String | +| Test.java:6711:45:6711:46 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | +| Test.java:6712:9:6712:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6712:20:6712:22 | out : TransformedQueue [] : String | semmle.label | out : TransformedQueue [] : String | +| Test.java:6717:15:6717:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | semmle.label | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:6717:47:6717:62 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6717:55:6717:62 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6718:10:6718:48 | unmodifiableQueue(...) : Queue [] : String | semmle.label | unmodifiableQueue(...) : Queue [] : String | +| Test.java:6718:46:6718:47 | in : CircularFifoQueue [] : String | semmle.label | in : CircularFifoQueue [] : String | +| Test.java:6719:9:6719:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6719:20:6719:22 | out : Queue [] : String | semmle.label | out : Queue [] : String | +| Test.java:6724:22:6724:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6724:44:6724:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6724:52:6724:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6725:10:6725:48 | new MyAbstractNavigableSetDecorator<>(...) : MyAbstractNavigableSetDecorator [] : String | semmle.label | new MyAbstractNavigableSetDecorator<>(...) : MyAbstractNavigableSetDecorator [] : String | +| Test.java:6725:46:6725:47 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:6726:9:6726:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6726:20:6726:22 | out : MyAbstractNavigableSetDecorator [] : String | semmle.label | out : MyAbstractNavigableSetDecorator [] : String | +| Test.java:6731:13:6731:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6731:42:6731:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6731:50:6731:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6732:10:6732:39 | new MyAbstractSetDecorator<>(...) : MyAbstractSetDecorator [] : String | semmle.label | new MyAbstractSetDecorator<>(...) : MyAbstractSetDecorator [] : String | +| Test.java:6732:37:6732:38 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:6733:9:6733:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6733:20:6733:22 | out : MyAbstractSetDecorator [] : String | semmle.label | out : MyAbstractSetDecorator [] : String | +| Test.java:6738:13:6738:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6738:42:6738:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6738:50:6738:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6739:10:6739:45 | new MyAbstractSortedSetDecorator<>(...) : MyAbstractSortedSetDecorator [] : String | semmle.label | new MyAbstractSortedSetDecorator<>(...) : MyAbstractSortedSetDecorator [] : String | +| Test.java:6739:43:6739:44 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:6740:9:6740:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6740:20:6740:22 | out : MyAbstractSortedSetDecorator [] : String | semmle.label | out : MyAbstractSortedSetDecorator [] : String | +| Test.java:6745:16:6745:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6747:17:6747:19 | out [post update] : CompositeSet [] : Object | semmle.label | out [post update] : CompositeSet [] : Object | +| Test.java:6747:28:6747:29 | in : Object | semmle.label | in : Object | +| Test.java:6748:9:6748:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6748:20:6748:22 | out : CompositeSet [] : Object | semmle.label | out : CompositeSet [] : Object | +| Test.java:6753:16:6753:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6755:23:6755:25 | out [post update] : List [, ] : Object | semmle.label | out [post update] : List [, ] : Object | +| Test.java:6755:28:6755:29 | in : Object | semmle.label | in : Object | +| Test.java:6756:9:6756:35 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6756:20:6756:34 | getElement(...) : Set [] : Object | semmle.label | getElement(...) : Set [] : Object | +| Test.java:6756:31:6756:33 | out : List [, ] : Object | semmle.label | out : List [, ] : Object | +| Test.java:6761:20:6761:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:6761:42:6761:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6761:50:6761:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6763:20:6763:22 | out [post update] : CompositeSet [] : String | semmle.label | out [post update] : CompositeSet [] : String | +| Test.java:6763:31:6763:32 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:6764:9:6764:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6764:20:6764:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | +| Test.java:6769:20:6769:58 | newTreeBagWithElement(...) : TreeBag [] : String | semmle.label | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:6769:42:6769:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6769:50:6769:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6771:26:6771:28 | out [post update] : List [, ] : String | semmle.label | out [post update] : List [, ] : String | +| Test.java:6771:31:6771:32 | in : TreeBag [] : String | semmle.label | in : TreeBag [] : String | +| Test.java:6772:9:6772:35 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6772:20:6772:34 | getElement(...) : Set [] : String | semmle.label | getElement(...) : Set [] : String | +| Test.java:6772:31:6772:33 | out : List [, ] : String | semmle.label | out : List [, ] : String | +| Test.java:6777:13:6777:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6777:42:6777:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6777:50:6777:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6778:10:6778:29 | new CompositeSet<>(...) : CompositeSet [] : String | semmle.label | new CompositeSet<>(...) : CompositeSet [] : String | +| Test.java:6778:27:6778:28 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:6779:9:6779:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6779:20:6779:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | +| Test.java:6784:15:6784:71 | {...} : Set[] [[], ] : String | semmle.label | {...} : Set[] [[], ] : String | +| Test.java:6784:25:6784:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6784:54:6784:69 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6784:62:6784:69 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6785:10:6785:29 | new CompositeSet<>(...) : CompositeSet [] : String | semmle.label | new CompositeSet<>(...) : CompositeSet [] : String | +| Test.java:6785:27:6785:28 | in : Set[] [[], ] : String | semmle.label | in : Set[] [[], ] : String | +| Test.java:6786:9:6786:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6786:20:6786:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | +| Test.java:6791:13:6791:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6791:42:6791:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6791:50:6791:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6792:4:6792:6 | out [post update] : CompositeSet [] : String | semmle.label | out [post update] : CompositeSet [] : String | +| Test.java:6792:22:6792:23 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:6793:9:6793:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6793:20:6793:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | +| Test.java:6798:13:6798:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6798:42:6798:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6798:50:6798:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6799:4:6799:6 | out [post update] : CompositeSet [] : String | semmle.label | out [post update] : CompositeSet [] : String | +| Test.java:6799:22:6799:23 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:6800:9:6800:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6800:20:6800:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | +| Test.java:6805:13:6805:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6805:42:6805:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6805:50:6805:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6806:4:6806:6 | out [post update] : CompositeSet [] : String | semmle.label | out [post update] : CompositeSet [] : String | +| Test.java:6806:28:6806:29 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:6807:9:6807:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6807:20:6807:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | +| Test.java:6812:15:6812:71 | {...} : Set[] [[], ] : String | semmle.label | {...} : Set[] [[], ] : String | +| Test.java:6812:25:6812:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6812:54:6812:69 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6812:62:6812:69 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6813:4:6813:6 | out [post update] : CompositeSet [] : String | semmle.label | out [post update] : CompositeSet [] : String | +| Test.java:6813:22:6813:23 | in : Set[] [[], ] : String | semmle.label | in : Set[] [[], ] : String | +| Test.java:6814:9:6814:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6814:20:6814:22 | out : CompositeSet [] : String | semmle.label | out : CompositeSet [] : String | +| Test.java:6819:30:6819:73 | newCompositeSetWithElement(...) : CompositeSet [] : String | semmle.label | newCompositeSetWithElement(...) : CompositeSet [] : String | +| Test.java:6819:57:6819:72 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6819:65:6819:72 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6820:10:6820:11 | in : CompositeSet [] : String | semmle.label | in : CompositeSet [] : String | +| Test.java:6820:10:6820:21 | getSets(...) : List [, ] : String | semmle.label | getSets(...) : List [, ] : String | +| Test.java:6821:9:6821:35 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6821:20:6821:34 | getElement(...) : Set [] : String | semmle.label | getElement(...) : Set [] : String | +| Test.java:6821:31:6821:33 | out : List [, ] : String | semmle.label | out : List [, ] : String | +| Test.java:6826:22:6826:65 | newCompositeSetWithElement(...) : CompositeSet [] : String | semmle.label | newCompositeSetWithElement(...) : CompositeSet [] : String | +| Test.java:6826:49:6826:64 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6826:57:6826:64 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6827:10:6827:11 | in : CompositeSet [] : String | semmle.label | in : CompositeSet [] : String | +| Test.java:6827:10:6827:19 | toSet(...) : Set [] : String | semmle.label | toSet(...) : Set [] : String | +| Test.java:6828:9:6828:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6828:20:6828:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:6833:16:6833:23 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6834:4:6834:6 | out [post update] : ListOrderedSet [] : Object | semmle.label | out [post update] : ListOrderedSet [] : Object | +| Test.java:6834:15:6834:16 | in : Object | semmle.label | in : Object | +| Test.java:6835:9:6835:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6835:20:6835:22 | out : ListOrderedSet [] : Object | semmle.label | out : ListOrderedSet [] : Object | +| Test.java:6840:20:6840:44 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:6840:28:6840:43 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6840:36:6840:43 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6841:4:6841:6 | out [post update] : ListOrderedSet [] : String | semmle.label | out [post update] : ListOrderedSet [] : String | +| Test.java:6841:18:6841:19 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:6842:9:6842:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6842:20:6842:22 | out : ListOrderedSet [] : String | semmle.label | out : ListOrderedSet [] : String | +| Test.java:6847:24:6847:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6847:53:6847:68 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6847:61:6847:68 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6848:10:6848:11 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:6848:10:6848:20 | asList(...) : List [] : String | semmle.label | asList(...) : List [] : String | +| Test.java:6849:9:6849:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6849:20:6849:22 | out : List [] : String | semmle.label | out : List [] : String | +| Test.java:6854:24:6854:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6854:53:6854:68 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6854:61:6854:68 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6855:10:6855:11 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:6855:10:6855:18 | get(...) : String | semmle.label | get(...) : String | +| Test.java:6856:9:6856:11 | out | semmle.label | out | +| Test.java:6861:14:6861:38 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| Test.java:6861:22:6861:37 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6861:30:6861:37 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6862:10:6862:42 | listOrderedSet(...) : ListOrderedSet [] : String | semmle.label | listOrderedSet(...) : ListOrderedSet [] : String | +| Test.java:6862:40:6862:41 | in : List [] : String | semmle.label | in : List [] : String | +| Test.java:6863:9:6863:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6863:20:6863:22 | out : ListOrderedSet [] : String | semmle.label | out : ListOrderedSet [] : String | +| Test.java:6868:13:6868:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6868:42:6868:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6868:50:6868:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6869:10:6869:42 | listOrderedSet(...) : ListOrderedSet [] : String | semmle.label | listOrderedSet(...) : ListOrderedSet [] : String | +| Test.java:6869:40:6869:41 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:6870:9:6870:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6870:20:6870:22 | out : ListOrderedSet [] : String | semmle.label | out : ListOrderedSet [] : String | +| Test.java:6875:13:6875:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6875:20:6875:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6875:28:6875:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6876:10:6876:44 | mapBackedSet(...) : MapBackedSet [] : String | semmle.label | mapBackedSet(...) : MapBackedSet [] : String | +| Test.java:6876:36:6876:37 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6877:9:6877:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6877:20:6877:22 | out : MapBackedSet [] : String | semmle.label | out : MapBackedSet [] : String | +| Test.java:6882:13:6882:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6882:20:6882:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6882:28:6882:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6883:10:6883:38 | mapBackedSet(...) : MapBackedSet [] : String | semmle.label | mapBackedSet(...) : MapBackedSet [] : String | +| Test.java:6883:36:6883:37 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6884:9:6884:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6884:20:6884:22 | out : MapBackedSet [] : String | semmle.label | out : MapBackedSet [] : String | +| Test.java:6889:22:6889:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6889:44:6889:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6889:52:6889:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6890:10:6890:64 | predicatedNavigableSet(...) : PredicatedNavigableSet [] : String | semmle.label | predicatedNavigableSet(...) : PredicatedNavigableSet [] : String | +| Test.java:6890:56:6890:57 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:6891:9:6891:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6891:20:6891:22 | out : PredicatedNavigableSet [] : String | semmle.label | out : PredicatedNavigableSet [] : String | +| Test.java:6896:13:6896:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6896:42:6896:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6896:50:6896:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6897:10:6897:46 | predicatedSet(...) : PredicatedSet [] : String | semmle.label | predicatedSet(...) : PredicatedSet [] : String | +| Test.java:6897:38:6897:39 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:6898:9:6898:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6898:20:6898:22 | out : PredicatedSet [] : String | semmle.label | out : PredicatedSet [] : String | +| Test.java:6903:19:6903:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6903:41:6903:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6903:49:6903:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6904:10:6904:58 | predicatedSortedSet(...) : PredicatedSortedSet [] : String | semmle.label | predicatedSortedSet(...) : PredicatedSortedSet [] : String | +| Test.java:6904:50:6904:51 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:6905:9:6905:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6905:20:6905:22 | out : PredicatedSortedSet [] : String | semmle.label | out : PredicatedSortedSet [] : String | +| Test.java:6910:22:6910:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6910:44:6910:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6910:52:6910:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6911:10:6911:67 | transformingNavigableSet(...) : TransformedNavigableSet [] : String | semmle.label | transformingNavigableSet(...) : TransformedNavigableSet [] : String | +| Test.java:6911:59:6911:60 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:6912:9:6912:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6912:20:6912:22 | out : TransformedNavigableSet [] : String | semmle.label | out : TransformedNavigableSet [] : String | +| Test.java:6917:13:6917:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6917:42:6917:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6917:50:6917:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6918:10:6918:49 | transformingSet(...) : TransformedSet [] : String | semmle.label | transformingSet(...) : TransformedSet [] : String | +| Test.java:6918:41:6918:42 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:6919:9:6919:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6919:20:6919:22 | out : TransformedSet [] : String | semmle.label | out : TransformedSet [] : String | +| Test.java:6924:19:6924:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6924:41:6924:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6924:49:6924:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6925:10:6925:61 | transformingSortedSet(...) : TransformedSortedSet [] : String | semmle.label | transformingSortedSet(...) : TransformedSortedSet [] : String | +| Test.java:6925:53:6925:54 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:6926:9:6926:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6926:20:6926:22 | out : TransformedSortedSet [] : String | semmle.label | out : TransformedSortedSet [] : String | +| Test.java:6931:22:6931:60 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6931:44:6931:59 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6931:52:6931:59 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6932:10:6932:62 | unmodifiableNavigableSet(...) : NavigableSet [] : String | semmle.label | unmodifiableNavigableSet(...) : NavigableSet [] : String | +| Test.java:6932:60:6932:61 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:6933:9:6933:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6933:20:6933:22 | out : NavigableSet [] : String | semmle.label | out : NavigableSet [] : String | +| Test.java:6938:13:6938:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | semmle.label | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6938:42:6938:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6938:50:6938:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6939:10:6939:44 | unmodifiableSet(...) : Set [] : String | semmle.label | unmodifiableSet(...) : Set [] : String | +| Test.java:6939:42:6939:43 | in : ListOrderedSet [] : String | semmle.label | in : ListOrderedSet [] : String | +| Test.java:6940:9:6940:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6940:20:6940:22 | out : Set [] : String | semmle.label | out : Set [] : String | +| Test.java:6945:19:6945:57 | newTreeSetWithElement(...) : TreeSet [] : String | semmle.label | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6945:41:6945:56 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6945:49:6945:56 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6946:10:6946:56 | unmodifiableSortedSet(...) : SortedSet [] : String | semmle.label | unmodifiableSortedSet(...) : SortedSet [] : String | +| Test.java:6946:54:6946:55 | in : TreeSet [] : String | semmle.label | in : TreeSet [] : String | +| Test.java:6947:9:6947:23 | getElement(...) | semmle.label | getElement(...) | +| Test.java:6947:20:6947:22 | out : SortedSet [] : String | semmle.label | out : SortedSet [] : String | +| Test.java:6952:13:6952:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6952:20:6952:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6952:28:6952:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6953:10:6953:48 | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | semmle.label | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | +| Test.java:6953:46:6953:47 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6954:9:6954:29 | getMapKeyFromGet(...) | semmle.label | getMapKeyFromGet(...) | +| Test.java:6954:26:6954:28 | out : AbstractIterableGetMapDecorator [] : String | semmle.label | out : AbstractIterableGetMapDecorator [] : String | +| Test.java:6959:13:6959:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6959:26:6959:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6959:34:6959:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6960:10:6960:48 | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | semmle.label | new AbstractIterableGetMapDecorator<>(...) : AbstractIterableGetMapDecorator [] : String | +| Test.java:6960:46:6960:47 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6961:9:6961:31 | getMapValueFromGet(...) | semmle.label | getMapValueFromGet(...) | +| Test.java:6961:28:6961:30 | out : AbstractIterableGetMapDecorator [] : String | semmle.label | out : AbstractIterableGetMapDecorator [] : String | +| Test.java:6966:13:6966:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6966:20:6966:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6966:28:6966:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6967:10:6967:60 | transformingMap(...) : TransformedSplitMap [] : String | semmle.label | transformingMap(...) : TransformedSplitMap [] : String | +| Test.java:6967:46:6967:47 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6968:9:6968:29 | getMapKeyFromGet(...) | semmle.label | getMapKeyFromGet(...) | +| Test.java:6968:26:6968:28 | out : TransformedSplitMap [] : String | semmle.label | out : TransformedSplitMap [] : String | +| Test.java:6973:13:6973:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6973:26:6973:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6973:34:6973:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6974:10:6974:60 | transformingMap(...) : TransformedSplitMap [] : String | semmle.label | transformingMap(...) : TransformedSplitMap [] : String | +| Test.java:6974:46:6974:47 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6975:9:6975:31 | getMapValueFromGet(...) | semmle.label | getMapValueFromGet(...) | +| Test.java:6975:28:6975:30 | out : TransformedSplitMap [] : String | semmle.label | out : TransformedSplitMap [] : String | +| Test.java:6980:13:6980:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6980:20:6980:35 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6980:28:6980:35 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6981:10:6981:29 | new PatriciaTrie<>(...) : PatriciaTrie [] : String | semmle.label | new PatriciaTrie<>(...) : PatriciaTrie [] : String | +| Test.java:6981:27:6981:28 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6982:9:6982:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:6982:19:6982:21 | out : PatriciaTrie [] : String | semmle.label | out : PatriciaTrie [] : String | +| Test.java:6987:13:6987:42 | of(...) : Map [] : String | semmle.label | of(...) : Map [] : String | +| Test.java:6987:26:6987:41 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6987:34:6987:41 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6988:10:6988:29 | new PatriciaTrie<>(...) : PatriciaTrie [] : String | semmle.label | new PatriciaTrie<>(...) : PatriciaTrie [] : String | +| Test.java:6988:27:6988:28 | in : Map [] : String | semmle.label | in : Map [] : String | +| Test.java:6989:9:6989:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:6989:21:6989:23 | out : PatriciaTrie [] : String | semmle.label | out : PatriciaTrie [] : String | +| Test.java:6993:30:6993:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | +| Test.java:6993:56:6993:71 | (...)... : String | semmle.label | (...)... : String | +| Test.java:6993:64:6993:71 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:6995:10:6995:11 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | +| Test.java:6995:10:6995:24 | select(...) : Entry [] : String | semmle.label | select(...) : Entry [] : String | +| Test.java:6996:9:6996:31 | getMapKeyFromEntry(...) | semmle.label | getMapKeyFromEntry(...) | +| Test.java:6996:28:6996:30 | out : Entry [] : String | semmle.label | out : Entry [] : String | +| Test.java:7000:30:7000:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | +| Test.java:7000:58:7000:73 | (...)... : String | semmle.label | (...)... : String | +| Test.java:7000:66:7000:73 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:7002:10:7002:11 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | +| Test.java:7002:10:7002:24 | select(...) : Entry [] : String | semmle.label | select(...) : Entry [] : String | +| Test.java:7003:9:7003:33 | getMapValueFromEntry(...) | semmle.label | getMapValueFromEntry(...) | +| Test.java:7003:30:7003:32 | out : Entry [] : String | semmle.label | out : Entry [] : String | +| Test.java:7007:30:7007:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | +| Test.java:7007:56:7007:71 | (...)... : String | semmle.label | (...)... : String | +| Test.java:7007:64:7007:71 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:7009:10:7009:11 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | +| Test.java:7009:10:7009:27 | selectKey(...) : String | semmle.label | selectKey(...) : String | +| Test.java:7010:9:7010:11 | out | semmle.label | out | +| Test.java:7014:30:7014:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | +| Test.java:7014:58:7014:73 | (...)... : String | semmle.label | (...)... : String | +| Test.java:7014:66:7014:73 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:7016:10:7016:11 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | +| Test.java:7016:10:7016:29 | selectValue(...) : String | semmle.label | selectValue(...) : String | +| Test.java:7017:9:7017:11 | out | semmle.label | out | +| Test.java:7022:14:7022:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | +| Test.java:7022:40:7022:55 | (...)... : String | semmle.label | (...)... : String | +| Test.java:7022:48:7022:55 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:7023:10:7023:46 | unmodifiableTrie(...) : Trie [] : String | semmle.label | unmodifiableTrie(...) : Trie [] : String | +| Test.java:7023:44:7023:45 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | +| Test.java:7024:9:7024:22 | getMapKey(...) | semmle.label | getMapKey(...) | +| Test.java:7024:19:7024:21 | out : Trie [] : String | semmle.label | out : Trie [] : String | +| Test.java:7029:14:7029:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | semmle.label | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | +| Test.java:7029:42:7029:57 | (...)... : String | semmle.label | (...)... : String | +| Test.java:7029:50:7029:57 | source(...) : Object | semmle.label | source(...) : Object | +| Test.java:7030:10:7030:46 | unmodifiableTrie(...) : Trie [] : String | semmle.label | unmodifiableTrie(...) : Trie [] : String | +| Test.java:7030:44:7030:45 | in : PatriciaTrie [] : String | semmle.label | in : PatriciaTrie [] : String | +| Test.java:7031:9:7031:24 | getMapValue(...) | semmle.label | getMapValue(...) | +| Test.java:7031:21:7031:23 | out : Trie [] : String | semmle.label | out : Trie [] : String | +| Test.java:7037:3:7037:20 | parameter this [Return] : MyAbstractKeyValue [] : Object | semmle.label | parameter this [Return] : MyAbstractKeyValue [] : Object | +| Test.java:7037:3:7037:20 | parameter this [Return] : MyAbstractKeyValue [] : String | semmle.label | parameter this [Return] : MyAbstractKeyValue [] : String | +| Test.java:7037:3:7037:20 | parameter this [Return] : MyAbstractKeyValue [] : Object | semmle.label | parameter this [Return] : MyAbstractKeyValue [] : Object | +| Test.java:7037:3:7037:20 | parameter this [Return] : MyAbstractKeyValue [] : String | semmle.label | parameter this [Return] : MyAbstractKeyValue [] : String | +| Test.java:7037:22:7037:26 | key : Object | semmle.label | key : Object | +| Test.java:7037:22:7037:26 | key : String | semmle.label | key : String | +| Test.java:7037:29:7037:35 | value : Object | semmle.label | value : Object | +| Test.java:7037:29:7037:35 | value : String | semmle.label | value : String | +| Test.java:7038:4:7038:21 | this [post update] : MyAbstractKeyValue [] : Object | semmle.label | this [post update] : MyAbstractKeyValue [] : Object | +| Test.java:7038:4:7038:21 | this [post update] : MyAbstractKeyValue [] : String | semmle.label | this [post update] : MyAbstractKeyValue [] : String | +| Test.java:7038:4:7038:21 | this [post update] : MyAbstractKeyValue [] : Object | semmle.label | this [post update] : MyAbstractKeyValue [] : Object | +| Test.java:7038:4:7038:21 | this [post update] : MyAbstractKeyValue [] : String | semmle.label | this [post update] : MyAbstractKeyValue [] : String | +| Test.java:7038:10:7038:12 | key : Object | semmle.label | key : Object | +| Test.java:7038:10:7038:12 | key : String | semmle.label | key : String | +| Test.java:7038:15:7038:19 | value : Object | semmle.label | value : Object | +| Test.java:7038:15:7038:19 | value : String | semmle.label | value : String | +| Test.java:7041:5:7041:12 | parameter this : MyAbstractKeyValue [] : String | semmle.label | parameter this : MyAbstractKeyValue [] : String | +| Test.java:7041:5:7041:12 | parameter this [Return] : MyAbstractKeyValue [] : Object | semmle.label | parameter this [Return] : MyAbstractKeyValue [] : Object | +| Test.java:7041:14:7041:24 | key : Object | semmle.label | key : Object | +| Test.java:7042:11:7042:15 | super : MyAbstractKeyValue [] : String | semmle.label | super : MyAbstractKeyValue [] : String | +| Test.java:7042:11:7042:15 | super [post update] : MyAbstractKeyValue [] : Object | semmle.label | super [post update] : MyAbstractKeyValue [] : Object | +| Test.java:7042:11:7042:27 | setKey(...) : String | semmle.label | setKey(...) : String | +| Test.java:7042:24:7042:26 | key : Object | semmle.label | key : Object | +| Test.java:7045:5:7045:14 | parameter this : MyAbstractKeyValue [] : String | semmle.label | parameter this : MyAbstractKeyValue [] : String | +| Test.java:7045:5:7045:14 | parameter this [Return] : MyAbstractKeyValue [] : Object | semmle.label | parameter this [Return] : MyAbstractKeyValue [] : Object | +| Test.java:7045:16:7045:28 | value : Object | semmle.label | value : Object | +| Test.java:7046:11:7046:15 | super : MyAbstractKeyValue [] : String | semmle.label | super : MyAbstractKeyValue [] : String | +| Test.java:7046:11:7046:15 | super [post update] : MyAbstractKeyValue [] : Object | semmle.label | super [post update] : MyAbstractKeyValue [] : Object | +| Test.java:7046:11:7046:31 | setValue(...) : String | semmle.label | setValue(...) : String | +| Test.java:7046:26:7046:30 | value : Object | semmle.label | value : Object | +| Test.java:7051:3:7051:20 | parameter this [Return] : MyAbstractMapEntry [] : Object | semmle.label | parameter this [Return] : MyAbstractMapEntry [] : Object | +| Test.java:7051:3:7051:20 | parameter this [Return] : MyAbstractMapEntry [] : String | semmle.label | parameter this [Return] : MyAbstractMapEntry [] : String | +| Test.java:7051:3:7051:20 | parameter this [Return] : MyAbstractMapEntry [] : Object | semmle.label | parameter this [Return] : MyAbstractMapEntry [] : Object | +| Test.java:7051:3:7051:20 | parameter this [Return] : MyAbstractMapEntry [] : String | semmle.label | parameter this [Return] : MyAbstractMapEntry [] : String | +| Test.java:7051:22:7051:32 | key : Object | semmle.label | key : Object | +| Test.java:7051:22:7051:32 | key : String | semmle.label | key : String | +| Test.java:7051:35:7051:47 | value : Object | semmle.label | value : Object | +| Test.java:7051:35:7051:47 | value : String | semmle.label | value : String | +| Test.java:7052:4:7052:21 | this [post update] : MyAbstractMapEntry [] : Object | semmle.label | this [post update] : MyAbstractMapEntry [] : Object | +| Test.java:7052:4:7052:21 | this [post update] : MyAbstractMapEntry [] : String | semmle.label | this [post update] : MyAbstractMapEntry [] : String | +| Test.java:7052:4:7052:21 | this [post update] : MyAbstractMapEntry [] : Object | semmle.label | this [post update] : MyAbstractMapEntry [] : Object | +| Test.java:7052:4:7052:21 | this [post update] : MyAbstractMapEntry [] : String | semmle.label | this [post update] : MyAbstractMapEntry [] : String | +| Test.java:7052:10:7052:12 | key : Object | semmle.label | key : Object | +| Test.java:7052:10:7052:12 | key : String | semmle.label | key : String | +| Test.java:7052:15:7052:19 | value : Object | semmle.label | value : Object | +| Test.java:7052:15:7052:19 | value : String | semmle.label | value : String | +| Test.java:7061:3:7061:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | +| Test.java:7061:3:7061:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | +| Test.java:7061:31:7061:57 | entry : MyAbstractMapEntry [] : String | semmle.label | entry : MyAbstractMapEntry [] : String | +| Test.java:7061:31:7061:57 | entry : MyAbstractMapEntry [] : String | semmle.label | entry : MyAbstractMapEntry [] : String | +| Test.java:7062:4:7062:16 | this [post update] : MyAbstractMapEntryDecorator [] : String | semmle.label | this [post update] : MyAbstractMapEntryDecorator [] : String | +| Test.java:7062:4:7062:16 | this [post update] : MyAbstractMapEntryDecorator [] : String | semmle.label | this [post update] : MyAbstractMapEntryDecorator [] : String | +| Test.java:7062:10:7062:14 | entry : MyAbstractMapEntry [] : String | semmle.label | entry : MyAbstractMapEntry [] : String | +| Test.java:7062:10:7062:14 | entry : MyAbstractMapEntry [] : String | semmle.label | entry : MyAbstractMapEntry [] : String | +| Test.java:7065:19:7065:31 | parameter this : MyAbstractMapEntryDecorator [] : String | semmle.label | parameter this : MyAbstractMapEntryDecorator [] : String | +| Test.java:7065:19:7065:31 | parameter this : MyAbstractMapEntryDecorator [] : String | semmle.label | parameter this : MyAbstractMapEntryDecorator [] : String | +| Test.java:7066:11:7066:15 | super : MyAbstractMapEntryDecorator [] : String | semmle.label | super : MyAbstractMapEntryDecorator [] : String | +| Test.java:7066:11:7066:15 | super : MyAbstractMapEntryDecorator [] : String | semmle.label | super : MyAbstractMapEntryDecorator [] : String | +| Test.java:7066:11:7066:29 | getMapEntry(...) : Entry [] : String | semmle.label | getMapEntry(...) : Entry [] : String | +| Test.java:7066:11:7066:29 | getMapEntry(...) : Entry [] : String | semmle.label | getMapEntry(...) : Entry [] : String | +| Test.java:7076:15:7076:30 | parameter this : MySetView [] : String | semmle.label | parameter this : MySetView [] : String | +| Test.java:7076:43:7076:58 | createIterator(...) : Iterator [] : String | semmle.label | createIterator(...) : Iterator [] : String | +| Test.java:7076:43:7076:58 | this <.method> : MySetView [] : String | semmle.label | this <.method> : MySetView [] : String | +| Test.java:7080:10:7080:41 | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | +| Test.java:7080:10:7080:41 | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | +| Test.java:7080:43:7080:71 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | +| Test.java:7080:43:7080:71 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | +| Test.java:7081:4:7081:14 | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | +| Test.java:7081:4:7081:14 | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | semmle.label | this [post update] : MyAbstractSortedBidiMapDecorator [] : String | +| Test.java:7081:10:7081:12 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | +| Test.java:7081:10:7081:12 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | +| Test.java:7086:10:7086:38 | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | +| Test.java:7086:10:7086:38 | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | +| Test.java:7086:40:7086:65 | map : ListOrderedMap [] : String | semmle.label | map : ListOrderedMap [] : String | +| Test.java:7086:40:7086:65 | map : ListOrderedMap [] : String | semmle.label | map : ListOrderedMap [] : String | +| Test.java:7087:4:7087:14 | this [post update] : MyAbstractOrderedMapDecorator [] : String | semmle.label | this [post update] : MyAbstractOrderedMapDecorator [] : String | +| Test.java:7087:4:7087:14 | this [post update] : MyAbstractOrderedMapDecorator [] : String | semmle.label | this [post update] : MyAbstractOrderedMapDecorator [] : String | +| Test.java:7087:10:7087:12 | map : ListOrderedMap [] : String | semmle.label | map : ListOrderedMap [] : String | +| Test.java:7087:10:7087:12 | map : ListOrderedMap [] : String | semmle.label | map : ListOrderedMap [] : String | +| Test.java:7092:10:7092:37 | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | +| Test.java:7092:10:7092:37 | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | +| Test.java:7092:39:7092:63 | map : TreeMap [] : String | semmle.label | map : TreeMap [] : String | +| Test.java:7092:39:7092:63 | map : TreeMap [] : String | semmle.label | map : TreeMap [] : String | +| Test.java:7093:4:7093:14 | this [post update] : MyAbstractSortedMapDecorator [] : String | semmle.label | this [post update] : MyAbstractSortedMapDecorator [] : String | +| Test.java:7093:4:7093:14 | this [post update] : MyAbstractSortedMapDecorator [] : String | semmle.label | this [post update] : MyAbstractSortedMapDecorator [] : String | +| Test.java:7093:10:7093:12 | map : TreeMap [] : String | semmle.label | map : TreeMap [] : String | +| Test.java:7093:10:7093:12 | map : TreeMap [] : String | semmle.label | map : TreeMap [] : String | +| Test.java:7098:10:7098:31 | parameter this [Return] : MyAbstractBagDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractBagDecorator [] : String | +| Test.java:7098:33:7098:48 | bag : TreeBag [] : String | semmle.label | bag : TreeBag [] : String | +| Test.java:7099:4:7099:14 | this [post update] : MyAbstractBagDecorator [] : String | semmle.label | this [post update] : MyAbstractBagDecorator [] : String | +| Test.java:7099:10:7099:12 | bag : TreeBag [] : String | semmle.label | bag : TreeBag [] : String | +| Test.java:7104:10:7104:25 | parameter this [Return] : MyAbstractMapBag [] : String | semmle.label | parameter this [Return] : MyAbstractMapBag [] : String | +| Test.java:7104:27:7104:58 | map : Map [] : String | semmle.label | map : Map [] : String | +| Test.java:7105:4:7105:14 | this [post update] : MyAbstractMapBag [] : String | semmle.label | this [post update] : MyAbstractMapBag [] : String | +| Test.java:7105:10:7105:12 | map : Map [] : String | semmle.label | map : Map [] : String | +| Test.java:7107:33:7107:40 | parameter this : MyAbstractMapBag [] : String | semmle.label | parameter this : MyAbstractMapBag [] : String | +| Test.java:7108:11:7108:15 | super : MyAbstractMapBag [] : String | semmle.label | super : MyAbstractMapBag [] : String | +| Test.java:7108:11:7108:24 | getMap(...) : Map [] : String | semmle.label | getMap(...) : Map [] : String | +| Test.java:7113:10:7113:37 | parameter this [Return] : MyAbstractSortedBagDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSortedBagDecorator [] : String | +| Test.java:7113:39:7113:60 | bag : TreeBag [] : String | semmle.label | bag : TreeBag [] : String | +| Test.java:7114:4:7114:14 | this [post update] : MyAbstractSortedBagDecorator [] : String | semmle.label | this [post update] : MyAbstractSortedBagDecorator [] : String | +| Test.java:7114:10:7114:12 | bag : TreeBag [] : String | semmle.label | bag : TreeBag [] : String | +| Test.java:7119:10:7119:35 | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | +| Test.java:7119:10:7119:35 | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | +| Test.java:7119:37:7119:59 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | +| Test.java:7119:37:7119:59 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | +| Test.java:7120:4:7120:14 | this [post update] : MyAbstractBidiMapDecorator [] : String | semmle.label | this [post update] : MyAbstractBidiMapDecorator [] : String | +| Test.java:7120:4:7120:14 | this [post update] : MyAbstractBidiMapDecorator [] : String | semmle.label | this [post update] : MyAbstractBidiMapDecorator [] : String | +| Test.java:7120:10:7120:12 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | +| Test.java:7120:10:7120:12 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | +| Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | semmle.label | parameter this [Return] : MyAbstractDualBidiMap [] : String | +| Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | semmle.label | parameter this [Return] : MyAbstractDualBidiMap [] : String | +| Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | semmle.label | parameter this [Return] : MyAbstractDualBidiMap [] : String | +| Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | semmle.label | parameter this [Return] : MyAbstractDualBidiMap [] : String | +| Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | semmle.label | parameter this [Return] : MyAbstractDualBidiMap [] : String | +| Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | semmle.label | parameter this [Return] : MyAbstractDualBidiMap [] : String | +| Test.java:7128:32:7128:56 | normalMap : DualTreeBidiMap [] : String | semmle.label | normalMap : DualTreeBidiMap [] : String | +| Test.java:7128:32:7128:56 | normalMap : DualTreeBidiMap [] : String | semmle.label | normalMap : DualTreeBidiMap [] : String | +| Test.java:7128:59:7128:84 | reverseMap : DualTreeBidiMap [] : String | semmle.label | reverseMap : DualTreeBidiMap [] : String | +| Test.java:7128:59:7128:84 | reverseMap : DualTreeBidiMap [] : String | semmle.label | reverseMap : DualTreeBidiMap [] : String | +| Test.java:7128:87:7128:120 | inverseBidiMap : DualTreeBidiMap [] : String | semmle.label | inverseBidiMap : DualTreeBidiMap [] : String | +| Test.java:7128:87:7128:120 | inverseBidiMap : DualTreeBidiMap [] : String | semmle.label | inverseBidiMap : DualTreeBidiMap [] : String | +| Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | semmle.label | this [post update] : MyAbstractDualBidiMap [] : String | +| Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | semmle.label | this [post update] : MyAbstractDualBidiMap [] : String | +| Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | semmle.label | this [post update] : MyAbstractDualBidiMap [] : String | +| Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | semmle.label | this [post update] : MyAbstractDualBidiMap [] : String | +| Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | semmle.label | this [post update] : MyAbstractDualBidiMap [] : String | +| Test.java:7129:4:7129:48 | this [post update] : MyAbstractDualBidiMap [] : String | semmle.label | this [post update] : MyAbstractDualBidiMap [] : String | +| Test.java:7129:10:7129:18 | normalMap : DualTreeBidiMap [] : String | semmle.label | normalMap : DualTreeBidiMap [] : String | +| Test.java:7129:10:7129:18 | normalMap : DualTreeBidiMap [] : String | semmle.label | normalMap : DualTreeBidiMap [] : String | +| Test.java:7129:21:7129:30 | reverseMap : DualTreeBidiMap [] : String | semmle.label | reverseMap : DualTreeBidiMap [] : String | +| Test.java:7129:21:7129:30 | reverseMap : DualTreeBidiMap [] : String | semmle.label | reverseMap : DualTreeBidiMap [] : String | +| Test.java:7129:33:7129:46 | inverseBidiMap : DualTreeBidiMap [] : String | semmle.label | inverseBidiMap : DualTreeBidiMap [] : String | +| Test.java:7129:33:7129:46 | inverseBidiMap : DualTreeBidiMap [] : String | semmle.label | inverseBidiMap : DualTreeBidiMap [] : String | +| Test.java:7137:10:7137:42 | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | +| Test.java:7137:10:7137:42 | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | +| Test.java:7137:44:7137:73 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | +| Test.java:7137:44:7137:73 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | +| Test.java:7138:4:7138:14 | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | +| Test.java:7138:4:7138:14 | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | semmle.label | this [post update] : MyAbstractOrderedBidiMapDecorator [] : String | +| Test.java:7138:10:7138:12 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | +| Test.java:7138:10:7138:12 | map : DualTreeBidiMap [] : String | semmle.label | map : DualTreeBidiMap [] : String | +| Test.java:7143:10:7143:38 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractCollectionDecorator [] : String | +| Test.java:7143:40:7143:63 | coll : TreeBag [] : String | semmle.label | coll : TreeBag [] : String | +| Test.java:7144:4:7144:15 | this [post update] : MyAbstractCollectionDecorator [] : String | semmle.label | this [post update] : MyAbstractCollectionDecorator [] : String | +| Test.java:7144:10:7144:13 | coll : TreeBag [] : String | semmle.label | coll : TreeBag [] : String | +| Test.java:7146:24:7146:34 | parameter this : MyAbstractCollectionDecorator [] : String | semmle.label | parameter this : MyAbstractCollectionDecorator [] : String | +| Test.java:7147:11:7147:15 | super : MyAbstractCollectionDecorator [] : String | semmle.label | super : MyAbstractCollectionDecorator [] : String | +| Test.java:7147:11:7147:27 | decorated(...) : Collection [] : String | semmle.label | decorated(...) : Collection [] : String | +| Test.java:7149:15:7149:29 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractCollectionDecorator [] : String | +| Test.java:7149:31:7149:54 | coll : TreeBag [] : String | semmle.label | coll : TreeBag [] : String | +| Test.java:7150:4:7150:8 | super [post update] : MyAbstractCollectionDecorator [] : String | semmle.label | super [post update] : MyAbstractCollectionDecorator [] : String | +| Test.java:7150:24:7150:27 | coll : TreeBag [] : String | semmle.label | coll : TreeBag [] : String | +| Test.java:7155:10:7155:36 | parameter this [Return] : MyAbstractIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractIteratorDecorator [] : String | +| Test.java:7155:38:7155:63 | iterator : ListIterator [] : String | semmle.label | iterator : ListIterator [] : String | +| Test.java:7156:4:7156:19 | this [post update] : MyAbstractIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractIteratorDecorator [] : String | +| Test.java:7156:10:7156:17 | iterator : ListIterator [] : String | semmle.label | iterator : ListIterator [] : String | +| Test.java:7161:10:7161:40 | parameter this [Return] : MyAbstractListIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractListIteratorDecorator [] : String | +| Test.java:7161:42:7161:71 | iterator : ListIterator [] : String | semmle.label | iterator : ListIterator [] : String | +| Test.java:7162:4:7162:19 | this [post update] : MyAbstractListIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractListIteratorDecorator [] : String | | Test.java:7162:10:7162:17 | iterator : ListIterator [] : String | semmle.label | iterator : ListIterator [] : String | -| Test.java:7167:10:7167:40 | parameter this [Return] : MyAbstractListIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractListIteratorDecorator [] : String | -| Test.java:7167:42:7167:71 | iterator : ListIterator [] : String | semmle.label | iterator : ListIterator [] : String | -| Test.java:7168:4:7168:19 | this [post update] : MyAbstractListIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractListIteratorDecorator [] : String | -| Test.java:7168:10:7168:17 | iterator : ListIterator [] : String | semmle.label | iterator : ListIterator [] : String | -| Test.java:7170:26:7170:42 | parameter this : MyAbstractListIteratorDecorator [] : String | semmle.label | parameter this : MyAbstractListIteratorDecorator [] : String | -| Test.java:7171:11:7171:15 | super : MyAbstractListIteratorDecorator [] : String | semmle.label | super : MyAbstractListIteratorDecorator [] : String | -| Test.java:7171:11:7171:33 | getListIterator(...) : ListIterator [] : String | semmle.label | getListIterator(...) : ListIterator [] : String | -| Test.java:7176:10:7176:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | -| Test.java:7176:10:7176:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | -| Test.java:7176:41:7176:72 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | -| Test.java:7176:41:7176:72 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | -| Test.java:7177:4:7177:19 | this [post update] : MyAbstractMapIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractMapIteratorDecorator [] : String | -| Test.java:7177:4:7177:19 | this [post update] : MyAbstractMapIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractMapIteratorDecorator [] : String | -| Test.java:7177:10:7177:17 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | -| Test.java:7177:10:7177:17 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | -| Test.java:7179:28:7179:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | semmle.label | parameter this : MyAbstractMapIteratorDecorator [] : String | -| Test.java:7179:28:7179:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | semmle.label | parameter this : MyAbstractMapIteratorDecorator [] : String | -| Test.java:7180:11:7180:15 | super : MyAbstractMapIteratorDecorator [] : String | semmle.label | super : MyAbstractMapIteratorDecorator [] : String | -| Test.java:7180:11:7180:15 | super : MyAbstractMapIteratorDecorator [] : String | semmle.label | super : MyAbstractMapIteratorDecorator [] : String | -| Test.java:7180:11:7180:32 | getMapIterator(...) : MapIterator [] : String | semmle.label | getMapIterator(...) : MapIterator [] : String | -| Test.java:7180:11:7180:32 | getMapIterator(...) : MapIterator [] : String | semmle.label | getMapIterator(...) : MapIterator [] : String | -| Test.java:7185:10:7185:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:7185:10:7185:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:7185:48:7185:86 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | -| Test.java:7185:48:7185:86 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | -| Test.java:7186:4:7186:19 | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:7186:4:7186:19 | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:7186:10:7186:17 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | -| Test.java:7186:10:7186:17 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | -| Test.java:7188:35:7188:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:7188:35:7188:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:7189:11:7189:15 | super : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | super : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:7189:11:7189:15 | super : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | super : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:7189:11:7189:39 | getOrderedMapIterator(...) : OrderedMapIterator [] : String | semmle.label | getOrderedMapIterator(...) : OrderedMapIterator [] : String | -| Test.java:7189:11:7189:39 | getOrderedMapIterator(...) : OrderedMapIterator [] : String | semmle.label | getOrderedMapIterator(...) : OrderedMapIterator [] : String | -| Test.java:7194:10:7194:43 | parameter this [Return] : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractUntypedIteratorDecorator [] : String | -| Test.java:7194:45:7194:70 | iterator : ListIterator [] : String | semmle.label | iterator : ListIterator [] : String | -| Test.java:7195:4:7195:19 | this [post update] : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractUntypedIteratorDecorator [] : String | -| Test.java:7195:10:7195:17 | iterator : ListIterator [] : String | semmle.label | iterator : ListIterator [] : String | -| Test.java:7197:22:7197:34 | parameter this : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | parameter this : MyAbstractUntypedIteratorDecorator [] : String | -| Test.java:7198:11:7198:15 | super : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | super : MyAbstractUntypedIteratorDecorator [] : String | -| Test.java:7198:11:7198:29 | getIterator(...) : Iterator [] : String | semmle.label | getIterator(...) : Iterator [] : String | -| Test.java:7204:10:7204:29 | parameter this [Return] : MyAbstractLinkedList [] : String | semmle.label | parameter this [Return] : MyAbstractLinkedList [] : String | -| Test.java:7204:31:7204:64 | coll : TreeBag [] : String | semmle.label | coll : TreeBag [] : String | -| Test.java:7205:4:7205:15 | this [post update] : MyAbstractLinkedList [] : String | semmle.label | this [post update] : MyAbstractLinkedList [] : String | -| Test.java:7205:10:7205:13 | coll : TreeBag [] : String | semmle.label | coll : TreeBag [] : String | -| Test.java:7210:10:7210:32 | parameter this [Return] : MyAbstractListDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractListDecorator [] : String | -| Test.java:7210:34:7210:51 | list : List [] : String | semmle.label | list : List [] : String | -| Test.java:7211:4:7211:15 | this [post update] : MyAbstractListDecorator [] : String | semmle.label | this [post update] : MyAbstractListDecorator [] : String | +| Test.java:7164:26:7164:42 | parameter this : MyAbstractListIteratorDecorator [] : String | semmle.label | parameter this : MyAbstractListIteratorDecorator [] : String | +| Test.java:7165:11:7165:15 | super : MyAbstractListIteratorDecorator [] : String | semmle.label | super : MyAbstractListIteratorDecorator [] : String | +| Test.java:7165:11:7165:33 | getListIterator(...) : ListIterator [] : String | semmle.label | getListIterator(...) : ListIterator [] : String | +| Test.java:7170:10:7170:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | +| Test.java:7170:10:7170:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | +| Test.java:7170:41:7170:72 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | +| Test.java:7170:41:7170:72 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | +| Test.java:7171:4:7171:19 | this [post update] : MyAbstractMapIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractMapIteratorDecorator [] : String | +| Test.java:7171:4:7171:19 | this [post update] : MyAbstractMapIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractMapIteratorDecorator [] : String | +| Test.java:7171:10:7171:17 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | +| Test.java:7171:10:7171:17 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | +| Test.java:7173:28:7173:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | semmle.label | parameter this : MyAbstractMapIteratorDecorator [] : String | +| Test.java:7173:28:7173:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | semmle.label | parameter this : MyAbstractMapIteratorDecorator [] : String | +| Test.java:7174:11:7174:15 | super : MyAbstractMapIteratorDecorator [] : String | semmle.label | super : MyAbstractMapIteratorDecorator [] : String | +| Test.java:7174:11:7174:15 | super : MyAbstractMapIteratorDecorator [] : String | semmle.label | super : MyAbstractMapIteratorDecorator [] : String | +| Test.java:7174:11:7174:32 | getMapIterator(...) : MapIterator [] : String | semmle.label | getMapIterator(...) : MapIterator [] : String | +| Test.java:7174:11:7174:32 | getMapIterator(...) : MapIterator [] : String | semmle.label | getMapIterator(...) : MapIterator [] : String | +| Test.java:7179:10:7179:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:7179:10:7179:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:7179:48:7179:86 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | +| Test.java:7179:48:7179:86 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | +| Test.java:7180:4:7180:19 | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:7180:4:7180:19 | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:7180:10:7180:17 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | +| Test.java:7180:10:7180:17 | iterator : OrderedMapIterator [] : String | semmle.label | iterator : OrderedMapIterator [] : String | +| Test.java:7182:35:7182:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:7182:35:7182:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:7183:11:7183:15 | super : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | super : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:7183:11:7183:15 | super : MyAbstractOrderedMapIteratorDecorator [] : String | semmle.label | super : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:7183:11:7183:39 | getOrderedMapIterator(...) : OrderedMapIterator [] : String | semmle.label | getOrderedMapIterator(...) : OrderedMapIterator [] : String | +| Test.java:7183:11:7183:39 | getOrderedMapIterator(...) : OrderedMapIterator [] : String | semmle.label | getOrderedMapIterator(...) : OrderedMapIterator [] : String | +| Test.java:7188:10:7188:43 | parameter this [Return] : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractUntypedIteratorDecorator [] : String | +| Test.java:7188:45:7188:70 | iterator : ListIterator [] : String | semmle.label | iterator : ListIterator [] : String | +| Test.java:7189:4:7189:19 | this [post update] : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | this [post update] : MyAbstractUntypedIteratorDecorator [] : String | +| Test.java:7189:10:7189:17 | iterator : ListIterator [] : String | semmle.label | iterator : ListIterator [] : String | +| Test.java:7191:22:7191:34 | parameter this : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | parameter this : MyAbstractUntypedIteratorDecorator [] : String | +| Test.java:7192:11:7192:15 | super : MyAbstractUntypedIteratorDecorator [] : String | semmle.label | super : MyAbstractUntypedIteratorDecorator [] : String | +| Test.java:7192:11:7192:29 | getIterator(...) : Iterator [] : String | semmle.label | getIterator(...) : Iterator [] : String | +| Test.java:7198:10:7198:29 | parameter this [Return] : MyAbstractLinkedList [] : String | semmle.label | parameter this [Return] : MyAbstractLinkedList [] : String | +| Test.java:7198:31:7198:64 | coll : TreeBag [] : String | semmle.label | coll : TreeBag [] : String | +| Test.java:7199:4:7199:15 | this [post update] : MyAbstractLinkedList [] : String | semmle.label | this [post update] : MyAbstractLinkedList [] : String | +| Test.java:7199:10:7199:13 | coll : TreeBag [] : String | semmle.label | coll : TreeBag [] : String | +| Test.java:7204:10:7204:32 | parameter this [Return] : MyAbstractListDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractListDecorator [] : String | +| Test.java:7204:34:7204:51 | list : List [] : String | semmle.label | list : List [] : String | +| Test.java:7205:4:7205:15 | this [post update] : MyAbstractListDecorator [] : String | semmle.label | this [post update] : MyAbstractListDecorator [] : String | +| Test.java:7205:10:7205:13 | list : List [] : String | semmle.label | list : List [] : String | +| Test.java:7210:10:7210:44 | parameter this [Return] : MyAbstractSerializableListDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSerializableListDecorator [] : String | +| Test.java:7210:46:7210:63 | list : List [] : String | semmle.label | list : List [] : String | +| Test.java:7211:4:7211:15 | this [post update] : MyAbstractSerializableListDecorator [] : String | semmle.label | this [post update] : MyAbstractSerializableListDecorator [] : String | | Test.java:7211:10:7211:13 | list : List [] : String | semmle.label | list : List [] : String | -| Test.java:7216:10:7216:44 | parameter this [Return] : MyAbstractSerializableListDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSerializableListDecorator [] : String | -| Test.java:7216:46:7216:63 | list : List [] : String | semmle.label | list : List [] : String | -| Test.java:7217:4:7217:15 | this [post update] : MyAbstractSerializableListDecorator [] : String | semmle.label | this [post update] : MyAbstractSerializableListDecorator [] : String | -| Test.java:7217:10:7217:13 | list : List [] : String | semmle.label | list : List [] : String | -| Test.java:7222:10:7222:28 | parameter this [Return] : MyAbstractHashedMap [] : String | semmle.label | parameter this [Return] : MyAbstractHashedMap [] : String | -| Test.java:7222:10:7222:28 | parameter this [Return] : MyAbstractHashedMap [] : String | semmle.label | parameter this [Return] : MyAbstractHashedMap [] : String | +| Test.java:7216:10:7216:28 | parameter this [Return] : MyAbstractHashedMap [] : String | semmle.label | parameter this [Return] : MyAbstractHashedMap [] : String | +| Test.java:7216:10:7216:28 | parameter this [Return] : MyAbstractHashedMap [] : String | semmle.label | parameter this [Return] : MyAbstractHashedMap [] : String | +| Test.java:7216:30:7216:68 | map : Map [] : String | semmle.label | map : Map [] : String | +| Test.java:7216:30:7216:68 | map : Map [] : String | semmle.label | map : Map [] : String | +| Test.java:7217:4:7217:14 | this [post update] : MyAbstractHashedMap [] : String | semmle.label | this [post update] : MyAbstractHashedMap [] : String | +| Test.java:7217:4:7217:14 | this [post update] : MyAbstractHashedMap [] : String | semmle.label | this [post update] : MyAbstractHashedMap [] : String | +| Test.java:7217:10:7217:12 | map : Map [] : String | semmle.label | map : Map [] : String | +| Test.java:7217:10:7217:12 | map : Map [] : String | semmle.label | map : Map [] : String | +| Test.java:7222:10:7222:28 | parameter this [Return] : MyAbstractLinkedMap [] : String | semmle.label | parameter this [Return] : MyAbstractLinkedMap [] : String | +| Test.java:7222:10:7222:28 | parameter this [Return] : MyAbstractLinkedMap [] : String | semmle.label | parameter this [Return] : MyAbstractLinkedMap [] : String | | Test.java:7222:30:7222:68 | map : Map [] : String | semmle.label | map : Map [] : String | | Test.java:7222:30:7222:68 | map : Map [] : String | semmle.label | map : Map [] : String | -| Test.java:7223:4:7223:14 | this [post update] : MyAbstractHashedMap [] : String | semmle.label | this [post update] : MyAbstractHashedMap [] : String | -| Test.java:7223:4:7223:14 | this [post update] : MyAbstractHashedMap [] : String | semmle.label | this [post update] : MyAbstractHashedMap [] : String | +| Test.java:7223:4:7223:14 | this [post update] : MyAbstractLinkedMap [] : String | semmle.label | this [post update] : MyAbstractLinkedMap [] : String | +| Test.java:7223:4:7223:14 | this [post update] : MyAbstractLinkedMap [] : String | semmle.label | this [post update] : MyAbstractLinkedMap [] : String | | Test.java:7223:10:7223:12 | map : Map [] : String | semmle.label | map : Map [] : String | | Test.java:7223:10:7223:12 | map : Map [] : String | semmle.label | map : Map [] : String | -| Test.java:7228:10:7228:28 | parameter this [Return] : MyAbstractLinkedMap [] : String | semmle.label | parameter this [Return] : MyAbstractLinkedMap [] : String | -| Test.java:7228:10:7228:28 | parameter this [Return] : MyAbstractLinkedMap [] : String | semmle.label | parameter this [Return] : MyAbstractLinkedMap [] : String | -| Test.java:7228:30:7228:68 | map : Map [] : String | semmle.label | map : Map [] : String | -| Test.java:7228:30:7228:68 | map : Map [] : String | semmle.label | map : Map [] : String | -| Test.java:7229:4:7229:14 | this [post update] : MyAbstractLinkedMap [] : String | semmle.label | this [post update] : MyAbstractLinkedMap [] : String | -| Test.java:7229:4:7229:14 | this [post update] : MyAbstractLinkedMap [] : String | semmle.label | this [post update] : MyAbstractLinkedMap [] : String | +| Test.java:7228:10:7228:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractMapDecorator [] : String | +| Test.java:7228:10:7228:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractMapDecorator [] : String | +| Test.java:7228:33:7228:51 | map : Map [] : String | semmle.label | map : Map [] : String | +| Test.java:7228:33:7228:51 | map : Map [] : String | semmle.label | map : Map [] : String | +| Test.java:7229:4:7229:14 | this [post update] : MyAbstractMapDecorator [] : String | semmle.label | this [post update] : MyAbstractMapDecorator [] : String | +| Test.java:7229:4:7229:14 | this [post update] : MyAbstractMapDecorator [] : String | semmle.label | this [post update] : MyAbstractMapDecorator [] : String | | Test.java:7229:10:7229:12 | map : Map [] : String | semmle.label | map : Map [] : String | | Test.java:7229:10:7229:12 | map : Map [] : String | semmle.label | map : Map [] : String | -| Test.java:7234:10:7234:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractMapDecorator [] : String | -| Test.java:7234:10:7234:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractMapDecorator [] : String | -| Test.java:7234:33:7234:51 | map : Map [] : String | semmle.label | map : Map [] : String | -| Test.java:7234:33:7234:51 | map : Map [] : String | semmle.label | map : Map [] : String | -| Test.java:7235:4:7235:14 | this [post update] : MyAbstractMapDecorator [] : String | semmle.label | this [post update] : MyAbstractMapDecorator [] : String | -| Test.java:7235:4:7235:14 | this [post update] : MyAbstractMapDecorator [] : String | semmle.label | this [post update] : MyAbstractMapDecorator [] : String | -| Test.java:7235:10:7235:12 | map : Map [] : String | semmle.label | map : Map [] : String | -| Test.java:7235:10:7235:12 | map : Map [] : String | semmle.label | map : Map [] : String | -| Test.java:7237:20:7237:30 | parameter this : MyAbstractMapDecorator [] : String | semmle.label | parameter this : MyAbstractMapDecorator [] : String | -| Test.java:7237:20:7237:30 | parameter this : MyAbstractMapDecorator [] : String | semmle.label | parameter this : MyAbstractMapDecorator [] : String | -| Test.java:7238:11:7238:15 | super : MyAbstractMapDecorator [] : String | semmle.label | super : MyAbstractMapDecorator [] : String | -| Test.java:7238:11:7238:15 | super : MyAbstractMapDecorator [] : String | semmle.label | super : MyAbstractMapDecorator [] : String | -| Test.java:7238:11:7238:27 | decorated(...) : Map [] : String | semmle.label | decorated(...) : Map [] : String | -| Test.java:7238:11:7238:27 | decorated(...) : Map [] : String | semmle.label | decorated(...) : Map [] : String | -| Test.java:7243:10:7243:40 | parameter this [Return] : MyAbstractNavigableSetDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractNavigableSetDecorator [] : String | -| Test.java:7243:42:7243:66 | set : TreeSet [] : String | semmle.label | set : TreeSet [] : String | -| Test.java:7244:4:7244:14 | this [post update] : MyAbstractNavigableSetDecorator [] : String | semmle.label | this [post update] : MyAbstractNavigableSetDecorator [] : String | -| Test.java:7244:10:7244:12 | set : TreeSet [] : String | semmle.label | set : TreeSet [] : String | -| Test.java:7249:10:7249:31 | parameter this [Return] : MyAbstractSetDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSetDecorator [] : String | -| Test.java:7249:33:7249:48 | set : ListOrderedSet [] : String | semmle.label | set : ListOrderedSet [] : String | -| Test.java:7250:4:7250:14 | this [post update] : MyAbstractSetDecorator [] : String | semmle.label | this [post update] : MyAbstractSetDecorator [] : String | +| Test.java:7231:20:7231:30 | parameter this : MyAbstractMapDecorator [] : String | semmle.label | parameter this : MyAbstractMapDecorator [] : String | +| Test.java:7231:20:7231:30 | parameter this : MyAbstractMapDecorator [] : String | semmle.label | parameter this : MyAbstractMapDecorator [] : String | +| Test.java:7232:11:7232:15 | super : MyAbstractMapDecorator [] : String | semmle.label | super : MyAbstractMapDecorator [] : String | +| Test.java:7232:11:7232:15 | super : MyAbstractMapDecorator [] : String | semmle.label | super : MyAbstractMapDecorator [] : String | +| Test.java:7232:11:7232:27 | decorated(...) : Map [] : String | semmle.label | decorated(...) : Map [] : String | +| Test.java:7232:11:7232:27 | decorated(...) : Map [] : String | semmle.label | decorated(...) : Map [] : String | +| Test.java:7237:10:7237:40 | parameter this [Return] : MyAbstractNavigableSetDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractNavigableSetDecorator [] : String | +| Test.java:7237:42:7237:66 | set : TreeSet [] : String | semmle.label | set : TreeSet [] : String | +| Test.java:7238:4:7238:14 | this [post update] : MyAbstractNavigableSetDecorator [] : String | semmle.label | this [post update] : MyAbstractNavigableSetDecorator [] : String | +| Test.java:7238:10:7238:12 | set : TreeSet [] : String | semmle.label | set : TreeSet [] : String | +| Test.java:7243:10:7243:31 | parameter this [Return] : MyAbstractSetDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSetDecorator [] : String | +| Test.java:7243:33:7243:48 | set : ListOrderedSet [] : String | semmle.label | set : ListOrderedSet [] : String | +| Test.java:7244:4:7244:14 | this [post update] : MyAbstractSetDecorator [] : String | semmle.label | this [post update] : MyAbstractSetDecorator [] : String | +| Test.java:7244:10:7244:12 | set : ListOrderedSet [] : String | semmle.label | set : ListOrderedSet [] : String | +| Test.java:7249:10:7249:37 | parameter this [Return] : MyAbstractSortedSetDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSortedSetDecorator [] : String | +| Test.java:7249:39:7249:54 | set : ListOrderedSet [] : String | semmle.label | set : ListOrderedSet [] : String | +| Test.java:7250:4:7250:14 | this [post update] : MyAbstractSortedSetDecorator [] : String | semmle.label | this [post update] : MyAbstractSortedSetDecorator [] : String | | Test.java:7250:10:7250:12 | set : ListOrderedSet [] : String | semmle.label | set : ListOrderedSet [] : String | -| Test.java:7255:10:7255:37 | parameter this [Return] : MyAbstractSortedSetDecorator [] : String | semmle.label | parameter this [Return] : MyAbstractSortedSetDecorator [] : String | -| Test.java:7255:39:7255:54 | set : ListOrderedSet [] : String | semmle.label | set : ListOrderedSet [] : String | -| Test.java:7256:4:7256:14 | this [post update] : MyAbstractSortedSetDecorator [] : String | semmle.label | this [post update] : MyAbstractSortedSetDecorator [] : String | -| Test.java:7256:10:7256:12 | set : ListOrderedSet [] : String | semmle.label | set : ListOrderedSet [] : String | subpaths | Test.java:242:66:242:84 | (...)... : Put [] : Object | Test.java:228:18:228:29 | map : Put [] : Object | Test.java:228:41:228:70 | next(...) : Object | Test.java:242:56:242:85 | getMapKey(...) : Object | | Test.java:242:66:242:84 | (...)... : Put [] : String | Test.java:228:18:228:29 | map : Put [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:242:56:242:85 | getMapKey(...) : String | @@ -17743,53 +17680,53 @@ subpaths | Test.java:259:90:259:96 | element : String | Test.java:269:37:269:45 | element : String | Test.java:269:103:269:103 | v : Vector [] : String | Test.java:259:69:259:97 | newVectorWithElement(...) : Vector [] : String | | Test.java:262:83:262:124 | entrySet(...) : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:262:72:262:125 | getElement(...) : Entry [] : String | | Test.java:262:106:262:112 | element : String | Test.java:263:41:263:49 | element : String | Test.java:263:119:263:119 | h : HashMultiSet [] : String | Test.java:262:83:262:113 | newMultiSetWithElement(...) : HashMultiSet [] : String | -| Test.java:280:102:280:104 | key : String | Test.java:7057:22:7057:32 | key : String | Test.java:7057:3:7057:20 | parameter this [Return] : MyAbstractMapEntry [] : String | Test.java:280:69:280:110 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | -| Test.java:281:121:281:142 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | Test.java:7067:31:7067:57 | entry : MyAbstractMapEntry [] : String | Test.java:7067:3:7067:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | Test.java:281:79:281:143 | new MyAbstractMapEntryDecorator(...) : MyAbstractMapEntryDecorator [] : String | +| Test.java:280:102:280:104 | key : String | Test.java:7051:22:7051:32 | key : String | Test.java:7051:3:7051:20 | parameter this [Return] : MyAbstractMapEntry [] : String | Test.java:280:69:280:110 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | +| Test.java:281:121:281:142 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | Test.java:7061:31:7061:57 | entry : MyAbstractMapEntry [] : String | Test.java:7061:3:7061:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | Test.java:281:79:281:143 | new MyAbstractMapEntryDecorator(...) : MyAbstractMapEntryDecorator [] : String | | Test.java:281:139:281:141 | key : String | Test.java:280:53:280:57 | key : String | Test.java:280:69:280:110 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | Test.java:281:121:281:142 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | -| Test.java:282:102:282:104 | key : String | Test.java:7043:22:7043:26 | key : String | Test.java:7043:3:7043:20 | parameter this [Return] : MyAbstractKeyValue [] : String | Test.java:282:69:282:110 | new MyAbstractKeyValue(...) : MyAbstractKeyValue [] : String | -| Test.java:299:111:299:115 | value : String | Test.java:7043:29:7043:35 | value : String | Test.java:7043:3:7043:20 | parameter this [Return] : MyAbstractKeyValue [] : String | Test.java:299:73:299:116 | new MyAbstractKeyValue(...) : MyAbstractKeyValue [] : String | -| Test.java:300:111:300:115 | value : String | Test.java:7057:35:7057:47 | value : String | Test.java:7057:3:7057:20 | parameter this [Return] : MyAbstractMapEntry [] : String | Test.java:300:73:300:116 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | -| Test.java:301:125:301:150 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | Test.java:7067:31:7067:57 | entry : MyAbstractMapEntry [] : String | Test.java:7067:3:7067:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | Test.java:301:83:301:151 | new MyAbstractMapEntryDecorator(...) : MyAbstractMapEntryDecorator [] : String | +| Test.java:282:102:282:104 | key : String | Test.java:7037:22:7037:26 | key : String | Test.java:7037:3:7037:20 | parameter this [Return] : MyAbstractKeyValue [] : String | Test.java:282:69:282:110 | new MyAbstractKeyValue(...) : MyAbstractKeyValue [] : String | +| Test.java:299:111:299:115 | value : String | Test.java:7037:29:7037:35 | value : String | Test.java:7037:3:7037:20 | parameter this [Return] : MyAbstractKeyValue [] : String | Test.java:299:73:299:116 | new MyAbstractKeyValue(...) : MyAbstractKeyValue [] : String | +| Test.java:300:111:300:115 | value : String | Test.java:7051:35:7051:47 | value : String | Test.java:7051:3:7051:20 | parameter this [Return] : MyAbstractMapEntry [] : String | Test.java:300:73:300:116 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | +| Test.java:301:125:301:150 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | Test.java:7061:31:7061:57 | entry : MyAbstractMapEntry [] : String | Test.java:7061:3:7061:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | Test.java:301:83:301:151 | new MyAbstractMapEntryDecorator(...) : MyAbstractMapEntryDecorator [] : String | | Test.java:301:145:301:149 | value : String | Test.java:300:55:300:61 | value : String | Test.java:300:73:300:116 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | Test.java:301:125:301:150 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | | Test.java:305:116:305:120 | value : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:305:93:305:121 | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:319:33:319:34 | in : Object | Test.java:7043:22:7043:26 | key : Object | Test.java:7043:3:7043:20 | parameter this [Return] : MyAbstractKeyValue [] : Object | Test.java:319:10:319:41 | new MyAbstractKeyValue<>(...) : MyAbstractKeyValue [] : Object | +| Test.java:319:33:319:34 | in : Object | Test.java:7037:22:7037:26 | key : Object | Test.java:7037:3:7037:20 | parameter this [Return] : MyAbstractKeyValue [] : Object | Test.java:319:10:319:41 | new MyAbstractKeyValue<>(...) : MyAbstractKeyValue [] : Object | | Test.java:320:19:320:21 | out : MyAbstractKeyValue [] : Object | Test.java:237:18:237:48 | container : MyAbstractKeyValue [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | Test.java:320:9:320:22 | getMapKey(...) | -| Test.java:326:39:326:40 | in : Object | Test.java:7043:29:7043:35 | value : Object | Test.java:7043:3:7043:20 | parameter this [Return] : MyAbstractKeyValue [] : Object | Test.java:326:10:326:41 | new MyAbstractKeyValue<>(...) : MyAbstractKeyValue [] : Object | +| Test.java:326:39:326:40 | in : Object | Test.java:7037:29:7037:35 | value : Object | Test.java:7037:3:7037:20 | parameter this [Return] : MyAbstractKeyValue [] : Object | Test.java:326:10:326:41 | new MyAbstractKeyValue<>(...) : MyAbstractKeyValue [] : Object | | Test.java:327:21:327:23 | out : MyAbstractKeyValue [] : Object | Test.java:243:20:243:50 | container : MyAbstractKeyValue [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | Test.java:327:9:327:24 | getMapValue(...) | | Test.java:334:19:334:21 | out : DefaultKeyValue [] : Object | Test.java:237:18:237:48 | container : DefaultKeyValue [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | Test.java:334:9:334:22 | getMapKey(...) | -| Test.java:340:17:340:18 | in : Object | Test.java:7047:14:7047:24 | key : Object | Test.java:7047:5:7047:12 | parameter this [Return] : MyAbstractKeyValue [] : Object | Test.java:340:4:340:6 | out [post update] : MyAbstractKeyValue [] : Object | +| Test.java:340:17:340:18 | in : Object | Test.java:7041:14:7041:24 | key : Object | Test.java:7041:5:7041:12 | parameter this [Return] : MyAbstractKeyValue [] : Object | Test.java:340:4:340:6 | out [post update] : MyAbstractKeyValue [] : Object | | Test.java:341:19:341:21 | out : MyAbstractKeyValue [] : Object | Test.java:237:18:237:48 | container : MyAbstractKeyValue [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | Test.java:341:9:341:22 | getMapKey(...) | | Test.java:346:42:346:57 | (...)... : String | Test.java:273:49:273:53 | key : String | Test.java:273:65:273:103 | new DefaultKeyValue(...) : DefaultKeyValue [] : String | Test.java:346:25:346:58 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | | Test.java:353:46:353:61 | (...)... : String | Test.java:282:53:282:57 | key : String | Test.java:282:69:282:110 | new MyAbstractKeyValue(...) : MyAbstractKeyValue [] : String | Test.java:353:28:353:62 | newMAKVWithMapKey(...) : MyAbstractKeyValue [] : String | -| Test.java:354:10:354:11 | in : MyAbstractKeyValue [] : String | Test.java:7047:5:7047:12 | parameter this : MyAbstractKeyValue [] : String | Test.java:7048:11:7048:27 | setKey(...) : String | Test.java:354:10:354:26 | mySetKey(...) : String | +| Test.java:354:10:354:11 | in : MyAbstractKeyValue [] : String | Test.java:7041:5:7041:12 | parameter this : MyAbstractKeyValue [] : String | Test.java:7042:11:7042:27 | setKey(...) : String | Test.java:354:10:354:26 | mySetKey(...) : String | | Test.java:362:21:362:23 | out : UnmodifiableMapEntry [] : Object | Test.java:243:20:243:50 | container : UnmodifiableMapEntry [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | Test.java:362:9:362:24 | getMapValue(...) | | Test.java:369:21:369:23 | out : DefaultKeyValue [] : Object | Test.java:243:20:243:50 | container : DefaultKeyValue [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | Test.java:369:9:369:24 | getMapValue(...) | | Test.java:376:21:376:23 | out : AbstractMapEntry [] : Object | Test.java:243:20:243:50 | container : AbstractMapEntry [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | Test.java:376:9:376:24 | getMapValue(...) | -| Test.java:382:19:382:20 | in : Object | Test.java:7051:16:7051:28 | value : Object | Test.java:7051:5:7051:14 | parameter this [Return] : MyAbstractKeyValue [] : Object | Test.java:382:4:382:6 | out [post update] : MyAbstractKeyValue [] : Object | +| Test.java:382:19:382:20 | in : Object | Test.java:7045:16:7045:28 | value : Object | Test.java:7045:5:7045:14 | parameter this [Return] : MyAbstractKeyValue [] : Object | Test.java:382:4:382:6 | out [post update] : MyAbstractKeyValue [] : Object | | Test.java:383:21:383:23 | out : MyAbstractKeyValue [] : Object | Test.java:243:20:243:50 | container : MyAbstractKeyValue [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | Test.java:383:9:383:24 | getMapValue(...) | | Test.java:388:49:388:64 | (...)... : String | Test.java:308:56:308:62 | value : String | Test.java:308:74:308:119 | new UnmodifiableMapEntry(...) : UnmodifiableMapEntry [] : String | Test.java:388:30:388:65 | newUMEWithMapValue(...) : UnmodifiableMapEntry [] : String | | Test.java:395:44:395:59 | (...)... : String | Test.java:291:51:291:57 | value : String | Test.java:291:69:291:109 | new DefaultKeyValue(...) : DefaultKeyValue [] : String | Test.java:395:25:395:60 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | | Test.java:402:46:402:61 | (...)... : String | Test.java:300:55:300:61 | value : String | Test.java:300:73:300:116 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | Test.java:402:26:402:62 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | | Test.java:409:46:409:61 | (...)... : String | Test.java:300:55:300:61 | value : String | Test.java:300:73:300:116 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | Test.java:409:26:409:62 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | | Test.java:416:48:416:63 | (...)... : String | Test.java:299:55:299:61 | value : String | Test.java:299:73:299:116 | new MyAbstractKeyValue(...) : MyAbstractKeyValue [] : String | Test.java:416:28:416:64 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | -| Test.java:417:10:417:11 | in : MyAbstractKeyValue [] : String | Test.java:7051:5:7051:14 | parameter this : MyAbstractKeyValue [] : String | Test.java:7052:11:7052:31 | setValue(...) : String | Test.java:417:10:417:28 | mySetValue(...) : String | +| Test.java:417:10:417:11 | in : MyAbstractKeyValue [] : String | Test.java:7045:5:7045:14 | parameter this : MyAbstractKeyValue [] : String | Test.java:7046:11:7046:31 | setValue(...) : String | Test.java:417:10:417:28 | mySetValue(...) : String | | Test.java:423:48:423:63 | (...)... : String | Test.java:299:55:299:61 | value : String | Test.java:299:73:299:116 | new MyAbstractKeyValue(...) : MyAbstractKeyValue [] : String | Test.java:423:28:423:64 | newMAKVWithMapValue(...) : MyAbstractKeyValue [] : String | -| Test.java:424:10:424:11 | in : MyAbstractKeyValue [] : String | Test.java:7051:5:7051:14 | parameter this : MyAbstractKeyValue [] : String | Test.java:7052:11:7052:31 | setValue(...) : String | Test.java:424:10:424:36 | mySetValue(...) : String | -| Test.java:431:33:431:34 | in : Object | Test.java:7057:22:7057:32 | key : Object | Test.java:7057:3:7057:20 | parameter this [Return] : MyAbstractMapEntry [] : Object | Test.java:431:10:431:41 | new MyAbstractMapEntry<>(...) : MyAbstractMapEntry [] : Object | +| Test.java:424:10:424:11 | in : MyAbstractKeyValue [] : String | Test.java:7045:5:7045:14 | parameter this : MyAbstractKeyValue [] : String | Test.java:7046:11:7046:31 | setValue(...) : String | Test.java:424:10:424:36 | mySetValue(...) : String | +| Test.java:431:33:431:34 | in : Object | Test.java:7051:22:7051:32 | key : Object | Test.java:7051:3:7051:20 | parameter this [Return] : MyAbstractMapEntry [] : Object | Test.java:431:10:431:41 | new MyAbstractMapEntry<>(...) : MyAbstractMapEntry [] : Object | | Test.java:432:19:432:21 | out : MyAbstractMapEntry [] : Object | Test.java:237:18:237:48 | container : MyAbstractMapEntry [] : Object | Test.java:237:60:237:77 | getKey(...) : Object | Test.java:432:9:432:22 | getMapKey(...) | -| Test.java:438:39:438:40 | in : Object | Test.java:7057:35:7057:47 | value : Object | Test.java:7057:3:7057:20 | parameter this [Return] : MyAbstractMapEntry [] : Object | Test.java:438:10:438:41 | new MyAbstractMapEntry<>(...) : MyAbstractMapEntry [] : Object | +| Test.java:438:39:438:40 | in : Object | Test.java:7051:35:7051:47 | value : Object | Test.java:7051:3:7051:20 | parameter this [Return] : MyAbstractMapEntry [] : Object | Test.java:438:10:438:41 | new MyAbstractMapEntry<>(...) : MyAbstractMapEntry [] : Object | | Test.java:439:21:439:23 | out : MyAbstractMapEntry [] : Object | Test.java:243:20:243:50 | container : MyAbstractMapEntry [] : Object | Test.java:243:62:243:81 | getValue(...) : Object | Test.java:439:9:439:24 | getMapValue(...) | | Test.java:444:52:444:67 | (...)... : String | Test.java:280:53:280:57 | key : String | Test.java:280:69:280:110 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | Test.java:444:34:444:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | -| Test.java:445:42:445:43 | in : MyAbstractMapEntry [] : String | Test.java:7067:31:7067:57 | entry : MyAbstractMapEntry [] : String | Test.java:7067:3:7067:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | Test.java:445:10:445:44 | new MyAbstractMapEntryDecorator<>(...) : MyAbstractMapEntryDecorator [] : String | +| Test.java:445:42:445:43 | in : MyAbstractMapEntry [] : String | Test.java:7061:31:7061:57 | entry : MyAbstractMapEntry [] : String | Test.java:7061:3:7061:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | Test.java:445:10:445:44 | new MyAbstractMapEntryDecorator<>(...) : MyAbstractMapEntryDecorator [] : String | | Test.java:446:19:446:21 | out : MyAbstractMapEntryDecorator [] : String | Test.java:239:18:239:57 | container : MyAbstractMapEntryDecorator [] : String | Test.java:239:69:239:86 | getKey(...) : String | Test.java:446:9:446:22 | getMapKey(...) | | Test.java:451:54:451:69 | (...)... : String | Test.java:300:55:300:61 | value : String | Test.java:300:73:300:116 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | Test.java:451:34:451:70 | newMAMEWithMapValue(...) : MyAbstractMapEntry [] : String | -| Test.java:452:42:452:43 | in : MyAbstractMapEntry [] : String | Test.java:7067:31:7067:57 | entry : MyAbstractMapEntry [] : String | Test.java:7067:3:7067:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | Test.java:452:10:452:44 | new MyAbstractMapEntryDecorator<>(...) : MyAbstractMapEntryDecorator [] : String | +| Test.java:452:42:452:43 | in : MyAbstractMapEntry [] : String | Test.java:7061:31:7061:57 | entry : MyAbstractMapEntry [] : String | Test.java:7061:3:7061:29 | parameter this [Return] : MyAbstractMapEntryDecorator [] : String | Test.java:452:10:452:44 | new MyAbstractMapEntryDecorator<>(...) : MyAbstractMapEntryDecorator [] : String | | Test.java:453:21:453:23 | out : MyAbstractMapEntryDecorator [] : String | Test.java:245:20:245:59 | container : MyAbstractMapEntryDecorator [] : String | Test.java:245:71:245:90 | getValue(...) : String | Test.java:453:9:453:24 | getMapValue(...) | | Test.java:458:56:458:71 | (...)... : String | Test.java:281:63:281:67 | key : String | Test.java:281:79:281:143 | new MyAbstractMapEntryDecorator(...) : MyAbstractMapEntryDecorator [] : String | Test.java:458:37:458:72 | newMAMEDWithMapKey(...) : MyAbstractMapEntryDecorator [] : String | -| Test.java:459:10:459:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:7071:19:7071:31 | parameter this : MyAbstractMapEntryDecorator [] : String | Test.java:7072:11:7072:29 | getMapEntry(...) : Entry [] : String | Test.java:459:10:459:27 | myGetMapEntry(...) : Entry [] : String | +| Test.java:459:10:459:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:7065:19:7065:31 | parameter this : MyAbstractMapEntryDecorator [] : String | Test.java:7066:11:7066:29 | getMapEntry(...) : Entry [] : String | Test.java:459:10:459:27 | myGetMapEntry(...) : Entry [] : String | | Test.java:460:28:460:30 | out : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | Test.java:238:62:238:79 | getKey(...) : String | Test.java:460:9:460:31 | getMapKeyFromEntry(...) | | Test.java:465:58:465:73 | (...)... : String | Test.java:301:65:301:71 | value : String | Test.java:301:83:301:151 | new MyAbstractMapEntryDecorator(...) : MyAbstractMapEntryDecorator [] : String | Test.java:465:37:465:74 | newMAMEDWithMapValue(...) : MyAbstractMapEntryDecorator [] : String | -| Test.java:466:10:466:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:7071:19:7071:31 | parameter this : MyAbstractMapEntryDecorator [] : String | Test.java:7072:11:7072:29 | getMapEntry(...) : Entry [] : String | Test.java:466:10:466:27 | myGetMapEntry(...) : Entry [] : String | +| Test.java:466:10:466:11 | in : MyAbstractMapEntryDecorator [] : String | Test.java:7065:19:7065:31 | parameter this : MyAbstractMapEntryDecorator [] : String | Test.java:7066:11:7066:29 | getMapEntry(...) : Entry [] : String | Test.java:466:10:466:27 | myGetMapEntry(...) : Entry [] : String | | Test.java:467:30:467:32 | out : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | Test.java:244:64:244:83 | getValue(...) : String | Test.java:467:9:467:33 | getMapValueFromEntry(...) | | Test.java:472:52:472:67 | (...)... : String | Test.java:280:53:280:57 | key : String | Test.java:280:69:280:110 | new MyAbstractMapEntry(...) : MyAbstractMapEntry [] : String | Test.java:472:34:472:68 | newMAMEWithMapKey(...) : MyAbstractMapEntry [] : String | | Test.java:474:19:474:21 | out : DefaultKeyValue [] : String | Test.java:237:18:237:48 | container : DefaultKeyValue [] : String | Test.java:237:60:237:77 | getKey(...) : String | Test.java:474:9:474:22 | getMapKey(...) | @@ -18434,8 +18371,6 @@ subpaths | Test.java:2996:21:2996:23 | out : MapIterator [] : Object | Test.java:246:20:246:47 | mapIterator : MapIterator [] : Object | Test.java:246:59:246:80 | getValue(...) : Object | Test.java:2996:9:2996:24 | getMapValue(...) | | Test.java:3001:40:3001:55 | (...)... : String | Test.java:302:54:302:60 | value : String | Test.java:302:134:302:148 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:3001:21:3001:56 | newOMIWithMapValue(...) : OrderedMapIterator [] : String | | Test.java:3008:37:3008:52 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | Test.java:3008:18:3008:53 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | -| Test.java:3008:37:3008:52 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:3008:18:3008:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:3010:20:3010:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:3010:9:3010:23 | getElement(...) | | Test.java:3010:20:3010:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3010:9:3010:23 | getElement(...) | | Test.java:3017:19:3017:21 | out : MultiValueMap [] : Object | Test.java:228:18:228:29 | map : MultiValueMap [] : Object | Test.java:228:41:228:70 | next(...) : Object | Test.java:3017:9:3017:22 | getMapKey(...) | | Test.java:3024:19:3024:21 | out : MultiMap [] : Object | Test.java:228:18:228:29 | map : MultiMap [] : Object | Test.java:228:41:228:70 | next(...) : Object | Test.java:3024:9:3024:22 | getMapKey(...) | @@ -18443,10 +18378,8 @@ subpaths | Test.java:3031:20:3031:47 | (...)... : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:3031:9:3031:48 | getElement(...) | | Test.java:3031:44:3031:46 | out : MultiValueMap [, ] : Object | Test.java:232:20:232:31 | map : MultiValueMap [, ] : Object | Test.java:232:43:232:55 | get(...) : Object [] : Object | Test.java:3031:32:3031:47 | getMapValue(...) : Object [] : Object | | Test.java:3031:44:3031:46 | out : MultiValueMap [] : Object | Test.java:232:20:232:31 | map : MultiValueMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:3031:32:3031:47 | getMapValue(...) : Object | -| Test.java:3038:20:3038:47 | (...)... : Collection | Test.java:230:19:230:32 | it : Collection | Test.java:230:44:230:63 | next(...) : Object | Test.java:3038:9:3038:48 | getElement(...) | | Test.java:3038:20:3038:47 | (...)... : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:3038:9:3038:48 | getElement(...) | | Test.java:3038:44:3038:46 | out : MultiMap [, ] : Object | Test.java:232:20:232:31 | map : MultiMap [, ] : Object | Test.java:232:43:232:55 | get(...) : Object [] : Object | Test.java:3038:32:3038:47 | getMapValue(...) : Object [] : Object | -| Test.java:3038:44:3038:46 | out : MultiMap [] : Object | Test.java:232:20:232:31 | map : MultiMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:3038:32:3038:47 | getMapValue(...) : Object | | Test.java:3043:42:3043:57 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | Test.java:3043:23:3043:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | | Test.java:3043:42:3043:57 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:3043:23:3043:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | | Test.java:3045:20:3045:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:3045:9:3045:23 | getElement(...) | @@ -18550,904 +18483,903 @@ subpaths | Test.java:3409:19:3409:21 | out : AbstractMapDecorator [] : Object | Test.java:228:18:228:29 | map : AbstractMapDecorator [] : Object | Test.java:228:41:228:70 | next(...) : Object | Test.java:3409:9:3409:22 | getMapKey(...) | | Test.java:3416:28:3416:30 | out : Put [] : Object | Test.java:249:29:249:46 | container : Put [] : Object | Test.java:249:58:249:89 | getMapValue(...) : Object | Test.java:3416:9:3416:31 | getMapValueFromPut(...) | | Test.java:3423:21:3423:23 | out : MultiValueMap [] : Object | Test.java:232:20:232:31 | map : MultiValueMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:3423:9:3423:24 | getMapValue(...) | -| Test.java:3430:21:3430:23 | out : MultiMap [] : Object | Test.java:232:20:232:31 | map : MultiMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:3430:9:3430:24 | getMapValue(...) | -| Test.java:3437:21:3437:23 | out : BidiMap [] : Object | Test.java:232:20:232:31 | map : BidiMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:3437:9:3437:24 | getMapValue(...) | -| Test.java:3444:21:3444:23 | out : AbstractMapDecorator [] : Object | Test.java:232:20:232:31 | map : AbstractMapDecorator [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:3444:9:3444:24 | getMapValue(...) | -| Test.java:3449:38:3449:53 | (...)... : String | Test.java:293:51:293:57 | value : String | Test.java:293:131:293:131 | m : HashedMap [] : String | Test.java:3449:13:3449:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | -| Test.java:3456:42:3456:57 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:3456:23:3456:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:3463:37:3463:52 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:3463:18:3463:53 | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:3470:44:3470:59 | (...)... : String | Test.java:306:77:306:83 | value : String | Test.java:306:161:306:161 | m : TreeBidiMap [] : String | Test.java:3470:17:3470:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | -| Test.java:3477:49:3477:64 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:3477:30:3477:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:3484:34:3484:49 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:3484:13:3484:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:3486:26:3486:28 | out : Put [] : String | Test.java:242:27:242:44 | container : Put [] : String | Test.java:242:56:242:85 | getMapKey(...) : String | Test.java:3486:9:3486:29 | getMapKeyFromPut(...) | -| Test.java:3491:34:3491:49 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:3491:13:3491:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:3493:19:3493:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3493:9:3493:22 | getMapKey(...) | -| Test.java:3498:34:3498:49 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:3498:13:3498:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:3500:19:3500:21 | out : AbstractMapDecorator [] : String | Test.java:228:18:228:29 | map : AbstractMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3500:9:3500:22 | getMapKey(...) | -| Test.java:3505:36:3505:51 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:3505:13:3505:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:3507:28:3507:30 | out : Put [] : String | Test.java:249:29:249:46 | container : Put [] : String | Test.java:249:58:249:89 | getMapValue(...) : String | Test.java:3507:9:3507:31 | getMapValueFromPut(...) | -| Test.java:3512:36:3512:51 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:3512:13:3512:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:3514:21:3514:23 | out : MultiValueMap [] : String | Test.java:232:20:232:31 | map : MultiValueMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3514:9:3514:24 | getMapValue(...) | -| Test.java:3519:36:3519:51 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:3519:13:3519:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:3521:21:3521:23 | out : AbstractMapDecorator [] : String | Test.java:232:20:232:31 | map : AbstractMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3521:9:3521:24 | getMapValue(...) | -| Test.java:3526:35:3526:50 | (...)... : String | Test.java:265:35:265:43 | element : String | Test.java:265:109:265:109 | q : LinkedList [] : String | Test.java:3526:15:3526:51 | newQueueWithElement(...) : LinkedList [] : String | -| Test.java:3528:20:3528:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3528:9:3528:23 | getElement(...) | -| Test.java:3533:35:3533:50 | (...)... : String | Test.java:265:35:265:43 | element : String | Test.java:265:109:265:109 | q : LinkedList [] : String | Test.java:3533:15:3533:51 | newQueueWithElement(...) : LinkedList [] : String | -| Test.java:3535:20:3535:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3535:9:3535:23 | getElement(...) | -| Test.java:3540:35:3540:50 | (...)... : String | Test.java:265:35:265:43 | element : String | Test.java:265:109:265:109 | q : LinkedList [] : String | Test.java:3540:15:3540:51 | newQueueWithElement(...) : LinkedList [] : String | -| Test.java:3542:20:3542:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3542:9:3542:23 | getElement(...) | -| Test.java:3547:35:3547:50 | (...)... : String | Test.java:265:35:265:43 | element : String | Test.java:265:109:265:109 | q : LinkedList [] : String | Test.java:3547:15:3547:51 | newQueueWithElement(...) : LinkedList [] : String | -| Test.java:3549:20:3549:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3549:9:3549:23 | getElement(...) | -| Test.java:3554:48:3554:63 | (...)... : String | Test.java:266:41:266:49 | element : String | Test.java:266:113:266:113 | s : MySetView [] : String | Test.java:3554:26:3554:64 | newSetViewWithElement(...) : MySetView [] : String | -| Test.java:3556:20:3556:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3556:9:3556:23 | getElement(...) | -| Test.java:3561:41:3561:56 | (...)... : String | Test.java:266:41:266:49 | element : String | Test.java:266:113:266:113 | s : MySetView [] : String | Test.java:3561:19:3561:57 | newSetViewWithElement(...) : MySetView [] : String | -| Test.java:3562:10:3562:11 | in : MySetView [] : String | Test.java:7082:15:7082:30 | parameter this : MySetView [] : String | Test.java:7082:43:7082:58 | createIterator(...) : Iterator [] : String | Test.java:3562:10:3562:30 | myCreateIterator(...) : Iterator [] : String | -| Test.java:3563:20:3563:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:3563:9:3563:23 | getElement(...) | -| Test.java:3568:41:3568:56 | (...)... : String | Test.java:266:41:266:49 | element : String | Test.java:266:113:266:113 | s : MySetView [] : String | Test.java:3568:19:3568:57 | newSetViewWithElement(...) : MySetView [] : String | -| Test.java:3570:20:3570:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3570:9:3570:23 | getElement(...) | -| Test.java:3575:35:3575:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3575:13:3575:51 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3577:20:3577:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3577:9:3577:23 | getElement(...) | -| Test.java:3582:35:3582:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3582:13:3582:51 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3584:20:3584:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3584:9:3584:23 | getElement(...) | -| Test.java:3589:35:3589:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3589:13:3589:51 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3591:20:3591:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3591:9:3591:23 | getElement(...) | -| Test.java:3605:20:3605:22 | out : HashSet [] : Object | Test.java:230:19:230:32 | it : HashSet [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:3605:9:3605:23 | getElement(...) | -| Test.java:3610:35:3610:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3610:13:3610:51 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3612:20:3612:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3612:9:3612:23 | getElement(...) | -| Test.java:3617:35:3617:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3617:13:3617:51 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3619:20:3619:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3619:9:3619:23 | getElement(...) | -| Test.java:3624:35:3624:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3624:13:3624:51 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3626:20:3626:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3626:9:3626:23 | getElement(...) | -| Test.java:3631:44:3631:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3631:22:3631:60 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3633:20:3633:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3633:9:3633:23 | getElement(...) | -| Test.java:3638:35:3638:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3638:13:3638:51 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3640:20:3640:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3640:9:3640:23 | getElement(...) | -| Test.java:3645:41:3645:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3645:19:3645:57 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3647:20:3647:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3647:9:3647:23 | getElement(...) | -| Test.java:3652:35:3652:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3652:13:3652:51 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3654:20:3654:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3654:9:3654:23 | getElement(...) | -| Test.java:3659:41:3659:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3659:19:3659:57 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3661:20:3661:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3661:9:3661:23 | getElement(...) | -| Test.java:3666:44:3666:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3666:22:3666:60 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3668:20:3668:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3668:9:3668:23 | getElement(...) | -| Test.java:3673:35:3673:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3673:13:3673:51 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3675:20:3675:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3675:9:3675:23 | getElement(...) | -| Test.java:3680:41:3680:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3680:19:3680:57 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3682:20:3682:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3682:9:3682:23 | getElement(...) | -| Test.java:3687:35:3687:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3687:13:3687:51 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3689:20:3689:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3689:9:3689:23 | getElement(...) | -| Test.java:3694:35:3694:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3694:13:3694:51 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3696:20:3696:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3696:9:3696:23 | getElement(...) | -| Test.java:3701:44:3701:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3701:22:3701:60 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3703:20:3703:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3703:9:3703:23 | getElement(...) | -| Test.java:3710:20:3710:22 | out : Set [] : Object | Test.java:230:19:230:32 | it : Set [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:3710:9:3710:23 | getElement(...) | -| Test.java:3715:35:3715:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3715:13:3715:51 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3717:20:3717:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3717:9:3717:23 | getElement(...) | -| Test.java:3722:41:3722:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3722:19:3722:57 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:3724:20:3724:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3724:9:3724:23 | getElement(...) | -| Test.java:3729:41:3729:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3729:19:3729:57 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3736:41:3736:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3736:19:3736:57 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3743:36:3743:51 | (...)... : String | Test.java:275:49:275:53 | key : String | Test.java:275:125:275:125 | m : HashedMap [] : String | Test.java:3743:13:3743:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | -| Test.java:3745:19:3745:21 | out : IterableMap [] : String | Test.java:228:18:228:29 | map : IterableMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3745:9:3745:22 | getMapKey(...) | -| Test.java:3750:38:3750:53 | (...)... : String | Test.java:293:51:293:57 | value : String | Test.java:293:131:293:131 | m : HashedMap [] : String | Test.java:3750:13:3750:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | -| Test.java:3752:21:3752:23 | out : IterableMap [] : String | Test.java:232:20:232:31 | map : IterableMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3752:9:3752:24 | getMapValue(...) | -| Test.java:3757:36:3757:51 | (...)... : String | Test.java:275:49:275:53 | key : String | Test.java:275:125:275:125 | m : HashedMap [] : String | Test.java:3757:13:3757:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | -| Test.java:3759:19:3759:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3759:9:3759:22 | getMapKey(...) | -| Test.java:3764:38:3764:53 | (...)... : String | Test.java:293:51:293:57 | value : String | Test.java:293:131:293:131 | m : HashedMap [] : String | Test.java:3764:13:3764:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | -| Test.java:3766:21:3766:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3766:9:3766:24 | getMapValue(...) | -| Test.java:3771:40:3771:55 | (...)... : String | Test.java:288:49:288:58 | key : String | Test.java:288:134:288:134 | m : PatriciaTrie [] : String | Test.java:3771:14:3771:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | -| Test.java:3773:19:3773:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3773:9:3773:22 | getMapKey(...) | -| Test.java:3778:42:3778:57 | (...)... : String | Test.java:307:50:307:56 | value : String | Test.java:307:129:307:129 | m : PatriciaTrie [] : String | Test.java:3778:14:3778:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | -| Test.java:3780:21:3780:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3780:9:3780:24 | getMapValue(...) | -| Test.java:3785:40:3785:55 | (...)... : String | Test.java:288:49:288:58 | key : String | Test.java:288:134:288:134 | m : PatriciaTrie [] : String | Test.java:3785:14:3785:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | -| Test.java:3787:19:3787:21 | out : Trie [] : String | Test.java:228:18:228:29 | map : Trie [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3787:9:3787:22 | getMapKey(...) | -| Test.java:3792:42:3792:57 | (...)... : String | Test.java:307:50:307:56 | value : String | Test.java:307:129:307:129 | m : PatriciaTrie [] : String | Test.java:3792:14:3792:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | -| Test.java:3794:21:3794:23 | out : Trie [] : String | Test.java:232:20:232:31 | map : Trie [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3794:9:3794:24 | getMapValue(...) | -| Test.java:3799:35:3799:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3799:13:3799:51 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3800:37:3800:38 | in : TreeBag [] : String | Test.java:7104:33:7104:48 | bag : TreeBag [] : String | Test.java:7104:10:7104:31 | parameter this [Return] : MyAbstractBagDecorator [] : String | Test.java:3800:10:3800:39 | new MyAbstractBagDecorator<>(...) : MyAbstractBagDecorator [] : String | -| Test.java:3801:20:3801:22 | out : MyAbstractBagDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractBagDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3801:9:3801:23 | getElement(...) | -| Test.java:3807:31:3807:32 | in : Map [] : String | Test.java:7110:27:7110:58 | map : Map [] : String | Test.java:7110:10:7110:25 | parameter this [Return] : MyAbstractMapBag [] : String | Test.java:3807:10:3807:33 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | -| Test.java:3808:20:3808:22 | out : MyAbstractMapBag [] : String | Test.java:230:19:230:32 | it : MyAbstractMapBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3808:9:3808:23 | getElement(...) | -| Test.java:3813:47:3813:76 | of(...) : Map [] : String | Test.java:7110:27:7110:58 | map : Map [] : String | Test.java:7110:10:7110:25 | parameter this [Return] : MyAbstractMapBag [] : String | Test.java:3813:26:3813:77 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | -| Test.java:3814:10:3814:11 | in : MyAbstractMapBag [] : String | Test.java:7113:33:7113:40 | parameter this : MyAbstractMapBag [] : String | Test.java:7114:11:7114:24 | getMap(...) : Map [] : String | Test.java:3814:10:3814:22 | myGetMap(...) : Map [] : String | -| Test.java:3815:19:3815:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3815:9:3815:22 | getMapKey(...) | -| Test.java:3820:41:3820:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3820:19:3820:57 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3821:43:3821:44 | in : TreeBag [] : String | Test.java:7119:39:7119:60 | bag : TreeBag [] : String | Test.java:7119:10:7119:37 | parameter this [Return] : MyAbstractSortedBagDecorator [] : String | Test.java:3821:10:3821:45 | new MyAbstractSortedBagDecorator<>(...) : MyAbstractSortedBagDecorator [] : String | -| Test.java:3822:20:3822:22 | out : MyAbstractSortedBagDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSortedBagDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3822:9:3822:23 | getElement(...) | -| Test.java:3827:35:3827:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3827:13:3827:51 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3829:20:3829:22 | out : CollectionBag [] : String | Test.java:230:19:230:32 | it : CollectionBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3829:9:3829:23 | getElement(...) | -| Test.java:3834:35:3834:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3834:13:3834:51 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3836:20:3836:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3836:9:3836:23 | getElement(...) | -| Test.java:3841:41:3841:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3841:19:3841:57 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3843:20:3843:22 | out : CollectionSortedBag [] : String | Test.java:230:19:230:32 | it : CollectionSortedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3843:9:3843:23 | getElement(...) | -| Test.java:3848:41:3848:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3848:19:3848:57 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3850:20:3850:22 | out : SortedBag [] : String | Test.java:230:19:230:32 | it : SortedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3850:9:3850:23 | getElement(...) | -| Test.java:3855:42:3855:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3855:20:3855:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3857:20:3857:22 | out : HashBag [] : String | Test.java:230:19:230:32 | it : HashBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3857:9:3857:23 | getElement(...) | -| Test.java:3862:35:3862:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3862:13:3862:51 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3864:20:3864:22 | out : PredicatedBag [] : String | Test.java:230:19:230:32 | it : PredicatedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3864:9:3864:23 | getElement(...) | -| Test.java:3869:41:3869:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3869:19:3869:57 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3871:20:3871:22 | out : PredicatedSortedBag [] : String | Test.java:230:19:230:32 | it : PredicatedSortedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3871:9:3871:23 | getElement(...) | -| Test.java:3876:35:3876:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3876:13:3876:51 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3878:20:3878:22 | out : SynchronizedBag [] : String | Test.java:230:19:230:32 | it : SynchronizedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3878:9:3878:23 | getElement(...) | -| Test.java:3883:41:3883:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3883:19:3883:57 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3885:20:3885:22 | out : SynchronizedSortedBag [] : String | Test.java:230:19:230:32 | it : SynchronizedSortedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3885:9:3885:23 | getElement(...) | -| Test.java:3890:35:3890:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3890:13:3890:51 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3892:20:3892:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3892:9:3892:23 | getElement(...) | -| Test.java:3897:41:3897:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3897:19:3897:57 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3899:20:3899:22 | out : TransformedSortedBag [] : String | Test.java:230:19:230:32 | it : TransformedSortedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3899:9:3899:23 | getElement(...) | -| Test.java:3904:42:3904:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3904:20:3904:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3906:20:3906:22 | out : TreeBag [] : String | Test.java:230:19:230:32 | it : TreeBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3906:9:3906:23 | getElement(...) | -| Test.java:3911:35:3911:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3911:13:3911:51 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3913:20:3913:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3913:9:3913:23 | getElement(...) | -| Test.java:3918:41:3918:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3918:19:3918:57 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:3920:20:3920:22 | out : SortedBag [] : String | Test.java:230:19:230:32 | it : SortedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3920:9:3920:23 | getElement(...) | -| Test.java:3925:46:3925:61 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3925:17:3925:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:3926:41:3926:42 | in : DualTreeBidiMap [] : String | Test.java:7125:37:7125:59 | map : DualTreeBidiMap [] : String | Test.java:7125:10:7125:35 | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | Test.java:3926:10:3926:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | -| Test.java:3927:19:3927:21 | out : MyAbstractBidiMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractBidiMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3927:9:3927:22 | getMapKey(...) | -| Test.java:3932:48:3932:63 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3932:17:3932:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:3933:41:3933:42 | in : DualTreeBidiMap [] : String | Test.java:7125:37:7125:59 | map : DualTreeBidiMap [] : String | Test.java:7125:10:7125:35 | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | Test.java:3933:10:3933:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | -| Test.java:3934:21:3934:23 | out : MyAbstractBidiMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractBidiMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3934:9:3934:24 | getMapValue(...) | -| Test.java:3939:46:3939:61 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3939:17:3939:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:3940:36:3940:37 | in : DualTreeBidiMap [] : String | Test.java:7134:32:7134:56 | normalMap : DualTreeBidiMap [] : String | Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | Test.java:3940:10:3940:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | -| Test.java:3941:19:3941:21 | out : MyAbstractDualBidiMap [] : String | Test.java:228:18:228:29 | map : MyAbstractDualBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3941:9:3941:22 | getMapKey(...) | -| Test.java:3946:46:3946:61 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3946:17:3946:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:3947:42:3947:43 | in : DualTreeBidiMap [] : String | Test.java:7134:59:7134:84 | reverseMap : DualTreeBidiMap [] : String | Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | Test.java:3947:10:3947:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | -| Test.java:3948:21:3948:23 | out : MyAbstractDualBidiMap [] : String | Test.java:232:20:232:31 | map : MyAbstractDualBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3948:9:3948:24 | getMapValue(...) | -| Test.java:3953:46:3953:61 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3953:17:3953:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:3954:48:3954:49 | in : DualTreeBidiMap [] : String | Test.java:7134:87:7134:120 | inverseBidiMap : DualTreeBidiMap [] : String | Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | Test.java:3954:10:3954:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | -| Test.java:3955:21:3955:23 | out : MyAbstractDualBidiMap [] : String | Test.java:232:20:232:31 | map : MyAbstractDualBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3955:9:3955:24 | getMapValue(...) | -| Test.java:3960:48:3960:63 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3960:17:3960:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:3961:36:3961:37 | in : DualTreeBidiMap [] : String | Test.java:7134:32:7134:56 | normalMap : DualTreeBidiMap [] : String | Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | Test.java:3961:10:3961:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | -| Test.java:3962:21:3962:23 | out : MyAbstractDualBidiMap [] : String | Test.java:232:20:232:31 | map : MyAbstractDualBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3962:9:3962:24 | getMapValue(...) | -| Test.java:3967:48:3967:63 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3967:17:3967:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:3968:42:3968:43 | in : DualTreeBidiMap [] : String | Test.java:7134:59:7134:84 | reverseMap : DualTreeBidiMap [] : String | Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | Test.java:3968:10:3968:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | -| Test.java:3969:19:3969:21 | out : MyAbstractDualBidiMap [] : String | Test.java:228:18:228:29 | map : MyAbstractDualBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3969:9:3969:22 | getMapKey(...) | -| Test.java:3974:48:3974:63 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3974:17:3974:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:3975:48:3975:49 | in : DualTreeBidiMap [] : String | Test.java:7134:87:7134:120 | inverseBidiMap : DualTreeBidiMap [] : String | Test.java:7134:10:7134:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | Test.java:3975:10:3975:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | -| Test.java:3976:19:3976:21 | out : MyAbstractDualBidiMap [] : String | Test.java:228:18:228:29 | map : MyAbstractDualBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3976:9:3976:22 | getMapKey(...) | -| Test.java:3981:53:3981:68 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3981:24:3981:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:3982:48:3982:49 | in : DualTreeBidiMap [] : String | Test.java:7143:44:7143:73 | map : DualTreeBidiMap [] : String | Test.java:7143:10:7143:42 | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:3982:10:3982:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | -| Test.java:3983:19:3983:21 | out : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3983:9:3983:22 | getMapKey(...) | -| Test.java:3988:55:3988:70 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3988:24:3988:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:3989:48:3989:49 | in : DualTreeBidiMap [] : String | Test.java:7143:44:7143:73 | map : DualTreeBidiMap [] : String | Test.java:7143:10:7143:42 | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:3989:10:3989:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | -| Test.java:3990:21:3990:23 | out : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3990:9:3990:24 | getMapValue(...) | -| Test.java:3995:52:3995:67 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3995:23:3995:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:3996:47:3996:48 | in : DualTreeBidiMap [] : String | Test.java:7086:43:7086:71 | map : DualTreeBidiMap [] : String | Test.java:7086:10:7086:41 | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | Test.java:3996:10:3996:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | -| Test.java:3997:19:3997:21 | out : MyAbstractSortedBidiMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractSortedBidiMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3997:9:3997:22 | getMapKey(...) | -| Test.java:4002:54:4002:69 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4002:23:4002:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4003:47:4003:48 | in : DualTreeBidiMap [] : String | Test.java:7086:43:7086:71 | map : DualTreeBidiMap [] : String | Test.java:7086:10:7086:41 | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | Test.java:4003:10:4003:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | -| Test.java:4004:21:4004:23 | out : MyAbstractSortedBidiMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractSortedBidiMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4004:9:4004:24 | getMapValue(...) | -| Test.java:4011:19:4011:21 | out : DualHashBidiMap [] : String | Test.java:228:18:228:29 | map : DualHashBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4011:9:4011:22 | getMapKey(...) | -| Test.java:4018:21:4018:23 | out : DualHashBidiMap [] : String | Test.java:232:20:232:31 | map : DualHashBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4018:9:4018:24 | getMapValue(...) | -| Test.java:4025:19:4025:21 | out : DualLinkedHashBidiMap [] : String | Test.java:228:18:228:29 | map : DualLinkedHashBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4025:9:4025:22 | getMapKey(...) | -| Test.java:4032:21:4032:23 | out : DualLinkedHashBidiMap [] : String | Test.java:232:20:232:31 | map : DualLinkedHashBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4032:9:4032:24 | getMapValue(...) | -| Test.java:4039:19:4039:21 | out : DualTreeBidiMap [] : String | Test.java:228:18:228:29 | map : DualTreeBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4039:9:4039:22 | getMapKey(...) | -| Test.java:4046:21:4046:23 | out : DualTreeBidiMap [] : String | Test.java:232:20:232:31 | map : DualTreeBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4046:9:4046:24 | getMapValue(...) | -| Test.java:4051:54:4051:69 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4051:25:4051:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:4053:21:4053:23 | out : OrderedBidiMap [] : String | Test.java:232:20:232:31 | map : OrderedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4053:9:4053:24 | getMapValue(...) | -| Test.java:4058:56:4058:71 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4058:25:4058:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4060:19:4060:21 | out : OrderedBidiMap [] : String | Test.java:228:18:228:29 | map : OrderedBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4060:9:4060:22 | getMapKey(...) | -| Test.java:4065:54:4065:69 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4065:25:4065:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:4067:21:4067:23 | out : SortedBidiMap [] : String | Test.java:232:20:232:31 | map : SortedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4067:9:4067:24 | getMapValue(...) | -| Test.java:4072:56:4072:71 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4072:25:4072:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4074:19:4074:21 | out : SortedBidiMap [] : String | Test.java:228:18:228:29 | map : SortedBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4074:9:4074:22 | getMapKey(...) | -| Test.java:4081:19:4081:21 | out : TreeBidiMap [] : String | Test.java:228:18:228:29 | map : TreeBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4081:9:4081:22 | getMapKey(...) | -| Test.java:4088:21:4088:23 | out : TreeBidiMap [] : String | Test.java:232:20:232:31 | map : TreeBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4088:9:4088:24 | getMapValue(...) | -| Test.java:4093:46:4093:61 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4093:17:4093:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:4095:19:4095:21 | out : BidiMap [] : String | Test.java:228:18:228:29 | map : BidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4095:9:4095:22 | getMapKey(...) | -| Test.java:4100:48:4100:63 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4100:17:4100:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4102:21:4102:23 | out : BidiMap [] : String | Test.java:232:20:232:31 | map : BidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4102:9:4102:24 | getMapValue(...) | -| Test.java:4107:147:4107:162 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4107:118:4107:163 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:4109:21:4109:23 | out : OrderedBidiMap [] : String | Test.java:232:20:232:31 | map : OrderedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4109:9:4109:24 | getMapValue(...) | -| Test.java:4114:149:4114:164 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4114:118:4114:165 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4116:19:4116:21 | out : OrderedBidiMap [] : String | Test.java:228:18:228:29 | map : OrderedBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4116:9:4116:22 | getMapKey(...) | -| Test.java:4121:53:4121:68 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4121:24:4121:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:4123:19:4123:21 | out : OrderedBidiMap [] : String | Test.java:228:18:228:29 | map : OrderedBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4123:9:4123:22 | getMapKey(...) | -| Test.java:4128:55:4128:70 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4128:24:4128:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4130:21:4130:23 | out : OrderedBidiMap [] : String | Test.java:232:20:232:31 | map : OrderedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4130:9:4130:24 | getMapValue(...) | -| Test.java:4135:52:4135:67 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4135:23:4135:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | -| Test.java:4137:19:4137:21 | out : SortedBidiMap [] : String | Test.java:228:18:228:29 | map : SortedBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4137:9:4137:22 | getMapKey(...) | -| Test.java:4142:54:4142:69 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4142:23:4142:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | -| Test.java:4144:21:4144:23 | out : SortedBidiMap [] : String | Test.java:232:20:232:31 | map : SortedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4144:9:4144:24 | getMapValue(...) | -| Test.java:4149:42:4149:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4149:20:4149:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4150:44:4150:45 | in : TreeBag [] : String | Test.java:7149:40:7149:63 | coll : TreeBag [] : String | Test.java:7149:10:7149:38 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | Test.java:4150:10:4150:46 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | -| Test.java:4151:20:4151:22 | out : MyAbstractCollectionDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractCollectionDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4151:9:4151:23 | getElement(...) | -| Test.java:4156:73:4156:111 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:7149:40:7149:63 | coll : TreeBag [] : String | Test.java:7149:10:7149:38 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | Test.java:4156:39:4156:112 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | -| Test.java:4156:95:4156:110 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4156:73:4156:111 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4157:10:4157:11 | in : MyAbstractCollectionDecorator [] : String | Test.java:7152:24:7152:34 | parameter this : MyAbstractCollectionDecorator [] : String | Test.java:7153:11:7153:27 | decorated(...) : Collection [] : String | Test.java:4157:10:4157:25 | myDecorated(...) : Collection [] : String | -| Test.java:4158:20:4158:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4158:9:4158:23 | getElement(...) | -| Test.java:4163:42:4163:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4163:20:4163:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4164:24:4164:25 | in : TreeBag [] : String | Test.java:7155:31:7155:54 | coll : TreeBag [] : String | Test.java:7155:15:7155:29 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | Test.java:4164:4:4164:6 | out [post update] : MyAbstractCollectionDecorator [] : String | -| Test.java:4165:20:4165:22 | out : MyAbstractCollectionDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractCollectionDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4165:9:4165:23 | getElement(...) | -| Test.java:4173:20:4173:22 | out : CompositeCollection [] : Object | Test.java:230:19:230:32 | it : CompositeCollection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:4173:9:4173:23 | getElement(...) | -| Test.java:4181:20:4181:34 | getElement(...) : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:4181:9:4181:35 | getElement(...) | -| Test.java:4181:31:4181:33 | out : List [, ] : Object | Test.java:230:19:230:32 | it : List [, ] : Object | Test.java:230:44:230:63 | next(...) : Object [] : Object | Test.java:4181:20:4181:34 | getElement(...) : Collection [] : Object | -| Test.java:4186:42:4186:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4186:20:4186:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4189:20:4189:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4189:9:4189:23 | getElement(...) | -| Test.java:4194:42:4194:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4194:20:4194:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4197:20:4197:34 | getElement(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4197:9:4197:35 | getElement(...) | -| Test.java:4197:31:4197:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:4197:20:4197:34 | getElement(...) : Collection [] : String | -| Test.java:4202:42:4202:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4202:20:4202:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4204:20:4204:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4204:9:4204:23 | getElement(...) | -| Test.java:4209:42:4209:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4209:20:4209:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4211:20:4211:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4211:9:4211:23 | getElement(...) | -| Test.java:4216:42:4216:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4216:20:4216:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4218:20:4218:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4218:9:4218:23 | getElement(...) | -| Test.java:4223:61:4223:76 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4223:39:4223:77 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4225:20:4225:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4225:9:4225:23 | getElement(...) | -| Test.java:4230:42:4230:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4230:20:4230:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4232:20:4232:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4232:9:4232:23 | getElement(...) | -| Test.java:4237:42:4237:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4237:20:4237:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4239:20:4239:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4239:9:4239:23 | getElement(...) | -| Test.java:4244:42:4244:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4244:20:4244:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4246:20:4246:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4246:9:4246:23 | getElement(...) | -| Test.java:4251:61:4251:76 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4251:39:4251:77 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4253:20:4253:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4253:9:4253:23 | getElement(...) | -| Test.java:4258:75:4258:90 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4258:53:4258:91 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4260:20:4260:34 | getElement(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4260:9:4260:35 | getElement(...) | -| Test.java:4260:31:4260:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:4260:20:4260:34 | getElement(...) : Collection [] : String | -| Test.java:4265:75:4265:90 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4265:53:4265:91 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4267:20:4267:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4267:9:4267:23 | getElement(...) | -| Test.java:4272:42:4272:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4272:20:4272:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4274:20:4274:22 | out : IndexedCollection [] : String | Test.java:230:19:230:32 | it : IndexedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4274:9:4274:23 | getElement(...) | -| Test.java:4279:71:4279:86 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4279:49:4279:87 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4286:42:4286:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4286:20:4286:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4288:20:4288:22 | out : IndexedCollection [] : String | Test.java:230:19:230:32 | it : IndexedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4288:9:4288:23 | getElement(...) | -| Test.java:4293:42:4293:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4293:20:4293:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4295:20:4295:22 | out : IndexedCollection [] : String | Test.java:230:19:230:32 | it : IndexedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4295:9:4295:23 | getElement(...) | -| Test.java:4300:71:4300:86 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4300:49:4300:87 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4302:20:4302:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4302:9:4302:23 | getElement(...) | -| Test.java:4309:20:4309:45 | createPredicatedList(...) : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4309:9:4309:46 | getElement(...) | -| Test.java:4316:20:4316:45 | createPredicatedList(...) : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4316:9:4316:46 | getElement(...) | -| Test.java:4321:80:4321:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4321:38:4321:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4323:20:4323:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4323:9:4323:23 | getElement(...) | -| Test.java:4328:80:4328:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4328:38:4328:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4330:20:4330:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4330:9:4330:23 | getElement(...) | -| Test.java:4335:35:4335:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4335:13:4335:51 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4338:20:4338:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4338:9:4338:23 | getElement(...) | -| Test.java:4343:80:4343:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4343:38:4343:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4345:20:4345:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4345:9:4345:23 | getElement(...) | -| Test.java:4350:80:4350:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4350:38:4350:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4352:20:4352:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4352:9:4352:23 | getElement(...) | -| Test.java:4360:20:4360:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4360:9:4360:23 | getElement(...) | -| Test.java:4365:80:4365:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4365:38:4365:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4367:20:4367:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4367:9:4367:23 | getElement(...) | -| Test.java:4372:80:4372:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4372:38:4372:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4374:20:4374:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4374:9:4374:23 | getElement(...) | -| Test.java:4379:45:4379:60 | (...)... : String | Test.java:258:49:258:57 | element : String | Test.java:258:127:258:127 | x : HashMultiSet [] : String | Test.java:4379:18:4379:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | -| Test.java:4382:20:4382:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4382:9:4382:23 | getElement(...) | -| Test.java:4387:80:4387:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4387:38:4387:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4389:20:4389:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4389:9:4389:23 | getElement(...) | -| Test.java:4394:80:4394:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4394:38:4394:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4396:20:4396:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4396:9:4396:23 | getElement(...) | -| Test.java:4401:47:4401:62 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:4401:15:4401:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:4404:20:4404:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4404:9:4404:23 | getElement(...) | -| Test.java:4409:80:4409:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4409:38:4409:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4411:20:4411:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4411:9:4411:23 | getElement(...) | -| Test.java:4416:80:4416:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4416:38:4416:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4418:20:4418:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4418:9:4418:23 | getElement(...) | -| Test.java:4423:42:4423:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:4423:13:4423:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:4426:20:4426:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4426:9:4426:23 | getElement(...) | -| Test.java:4431:80:4431:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4431:38:4431:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | -| Test.java:4433:20:4433:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4433:9:4433:23 | getElement(...) | -| Test.java:4438:42:4438:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4438:20:4438:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4440:20:4440:22 | out : PredicatedCollection [] : String | Test.java:230:19:230:32 | it : PredicatedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4440:9:4440:23 | getElement(...) | -| Test.java:4445:42:4445:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4445:20:4445:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4447:20:4447:22 | out : SynchronizedCollection [] : String | Test.java:230:19:230:32 | it : SynchronizedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4447:9:4447:23 | getElement(...) | -| Test.java:4452:42:4452:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4452:20:4452:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4454:20:4454:22 | out : TransformedCollection [] : String | Test.java:230:19:230:32 | it : TransformedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4454:9:4454:23 | getElement(...) | -| Test.java:4459:42:4459:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4459:20:4459:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4461:20:4461:22 | out : BoundedCollection [] : String | Test.java:230:19:230:32 | it : BoundedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4461:9:4461:23 | getElement(...) | -| Test.java:4466:59:4466:74 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:4466:27:4466:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:4468:20:4468:22 | out : BoundedCollection [] : String | Test.java:230:19:230:32 | it : BoundedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4468:9:4468:23 | getElement(...) | -| Test.java:4473:42:4473:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4473:20:4473:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4475:20:4475:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4475:9:4475:23 | getElement(...) | -| Test.java:4480:45:4480:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4480:18:4480:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4481:42:4481:43 | in : ListIterator [] : String | Test.java:7161:38:7161:63 | iterator : ListIterator [] : String | Test.java:7161:10:7161:36 | parameter this [Return] : MyAbstractIteratorDecorator [] : String | Test.java:4481:10:4481:44 | new MyAbstractIteratorDecorator<>(...) : MyAbstractIteratorDecorator [] : String | -| Test.java:4482:20:4482:22 | out : MyAbstractIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4482:9:4482:23 | getElement(...) | -| Test.java:4487:49:4487:64 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4487:22:4487:65 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4488:46:4488:47 | in : ListIterator [] : String | Test.java:7167:42:7167:71 | iterator : ListIterator [] : String | Test.java:7167:10:7167:40 | parameter this [Return] : MyAbstractListIteratorDecorator [] : String | Test.java:4488:10:4488:48 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | -| Test.java:4489:20:4489:22 | out : MyAbstractListIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractListIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4489:9:4489:23 | getElement(...) | -| Test.java:4494:77:4494:120 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:7167:42:7167:71 | iterator : ListIterator [] : String | Test.java:7167:10:7167:40 | parameter this [Return] : MyAbstractListIteratorDecorator [] : String | Test.java:4494:41:4494:121 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | -| Test.java:4494:104:4494:119 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4494:77:4494:120 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4495:10:4495:11 | in : MyAbstractListIteratorDecorator [] : String | Test.java:7170:26:7170:42 | parameter this : MyAbstractListIteratorDecorator [] : String | Test.java:7171:11:7171:33 | getListIterator(...) : ListIterator [] : String | Test.java:4495:10:4495:31 | myGetListIterator(...) : ListIterator [] : String | -| Test.java:4496:20:4496:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4496:9:4496:23 | getElement(...) | -| Test.java:4501:44:4501:59 | (...)... : String | Test.java:276:49:276:53 | key : String | Test.java:276:65:276:106 | new LinkedMap(...) : LinkedMap [] : String | Test.java:4501:21:4501:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | -| Test.java:4502:45:4502:46 | in : OrderedMapIterator [] : String | Test.java:7176:41:7176:72 | iterator : OrderedMapIterator [] : String | Test.java:7176:10:7176:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | Test.java:4502:10:4502:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | -| Test.java:4503:20:4503:22 | out : MyAbstractMapIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractMapIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4503:9:4503:23 | getElement(...) | -| Test.java:4508:46:4508:61 | (...)... : String | Test.java:295:51:295:57 | value : String | Test.java:295:69:295:112 | new LinkedMap(...) : LinkedMap [] : String | Test.java:4508:21:4508:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | -| Test.java:4509:45:4509:46 | in : OrderedMapIterator [] : String | Test.java:7176:41:7176:72 | iterator : OrderedMapIterator [] : String | Test.java:7176:10:7176:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | Test.java:4509:10:4509:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | -| Test.java:4510:21:4510:23 | out : MyAbstractMapIteratorDecorator [] : String | Test.java:246:20:246:47 | mapIterator : MyAbstractMapIteratorDecorator [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:4510:9:4510:24 | getMapValue(...) | -| Test.java:4515:75:4515:128 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7176:41:7176:72 | iterator : OrderedMapIterator [] : String | Test.java:7176:10:7176:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | Test.java:4515:40:4515:129 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | -| Test.java:4515:98:4515:113 | (...)... : String | Test.java:276:49:276:53 | key : String | Test.java:276:65:276:106 | new LinkedMap(...) : LinkedMap [] : String | Test.java:4515:75:4515:114 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | -| Test.java:4516:10:4516:11 | in : MyAbstractMapIteratorDecorator [] : String | Test.java:7179:28:7179:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | Test.java:7180:11:7180:32 | getMapIterator(...) : MapIterator [] : String | Test.java:4516:10:4516:30 | myGetMapIterator(...) : MapIterator [] : String | -| Test.java:4517:20:4517:22 | out : MapIterator [] : String | Test.java:231:19:231:32 | it : MapIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4517:9:4517:23 | getElement(...) | -| Test.java:4522:75:4522:130 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7176:41:7176:72 | iterator : OrderedMapIterator [] : String | Test.java:7176:10:7176:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | Test.java:4522:40:4522:131 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | -| Test.java:4522:100:4522:115 | (...)... : String | Test.java:295:51:295:57 | value : String | Test.java:295:69:295:112 | new LinkedMap(...) : LinkedMap [] : String | Test.java:4522:75:4522:116 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | -| Test.java:4523:10:4523:11 | in : MyAbstractMapIteratorDecorator [] : String | Test.java:7179:28:7179:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | Test.java:7180:11:7180:32 | getMapIterator(...) : MapIterator [] : String | Test.java:4523:10:4523:30 | myGetMapIterator(...) : MapIterator [] : String | -| Test.java:4524:21:4524:23 | out : MapIterator [] : String | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:4524:9:4524:24 | getMapValue(...) | -| Test.java:4529:56:4529:71 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:4529:28:4529:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:4530:52:4530:53 | in : OrderedMapIterator [] : String | Test.java:7185:48:7185:86 | iterator : OrderedMapIterator [] : String | Test.java:7185:10:7185:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4530:10:4530:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:4531:20:4531:22 | out : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4531:9:4531:23 | getElement(...) | -| Test.java:4536:58:4536:73 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:4536:28:4536:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:4537:52:4537:53 | in : OrderedMapIterator [] : String | Test.java:7185:48:7185:86 | iterator : OrderedMapIterator [] : String | Test.java:7185:10:7185:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4537:10:4537:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:4538:21:4538:23 | out : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:246:20:246:47 | mapIterator : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:4538:9:4538:24 | getMapValue(...) | -| Test.java:4543:89:4543:147 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7185:48:7185:86 | iterator : OrderedMapIterator [] : String | Test.java:7185:10:7185:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4543:47:4543:148 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:4543:117:4543:132 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:4543:89:4543:133 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:4544:10:4544:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7188:35:7188:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7189:11:7189:39 | getOrderedMapIterator(...) : OrderedMapIterator [] : String | Test.java:4544:10:4544:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | -| Test.java:4545:20:4545:22 | out : OrderedMapIterator [] : String | Test.java:231:19:231:32 | it : OrderedMapIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4545:9:4545:23 | getElement(...) | -| Test.java:4550:89:4550:149 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7185:48:7185:86 | iterator : OrderedMapIterator [] : String | Test.java:7185:10:7185:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4550:47:4550:150 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | -| Test.java:4550:119:4550:134 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:4550:89:4550:135 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:4551:10:4551:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7188:35:7188:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7189:11:7189:39 | getOrderedMapIterator(...) : OrderedMapIterator [] : String | Test.java:4551:10:4551:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | -| Test.java:4552:21:4552:23 | out : OrderedMapIterator [] : String | Test.java:246:20:246:47 | mapIterator : OrderedMapIterator [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:4552:9:4552:24 | getMapValue(...) | -| Test.java:4557:45:4557:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4557:18:4557:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4558:49:4558:50 | in : ListIterator [] : String | Test.java:7194:45:7194:70 | iterator : ListIterator [] : String | Test.java:7194:10:7194:43 | parameter this [Return] : MyAbstractUntypedIteratorDecorator [] : String | Test.java:4558:10:4558:51 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | -| Test.java:4559:20:4559:22 | out : MyAbstractUntypedIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractUntypedIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4559:9:4559:23 | getElement(...) | -| Test.java:4564:83:4564:126 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:7194:45:7194:70 | iterator : ListIterator [] : String | Test.java:7194:10:7194:43 | parameter this [Return] : MyAbstractUntypedIteratorDecorator [] : String | Test.java:4564:44:4564:127 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | -| Test.java:4564:110:4564:125 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4564:83:4564:126 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4565:10:4565:11 | in : MyAbstractUntypedIteratorDecorator [] : String | Test.java:7197:22:7197:34 | parameter this : MyAbstractUntypedIteratorDecorator [] : String | Test.java:7198:11:7198:29 | getIterator(...) : Iterator [] : String | Test.java:4565:10:4565:27 | myGetIterator(...) : Iterator [] : String | -| Test.java:4566:20:4566:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4566:9:4566:23 | getElement(...) | -| Test.java:4571:44:4571:59 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4571:24:4571:60 | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4573:20:4573:22 | out : ArrayIterator [] : String | Test.java:231:19:231:32 | it : ArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4573:9:4573:23 | getElement(...) | -| Test.java:4578:44:4578:59 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4578:24:4578:60 | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4580:20:4580:22 | out : ArrayIterator [] : String | Test.java:231:19:231:32 | it : ArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4580:9:4580:23 | getElement(...) | -| Test.java:4585:44:4585:59 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4585:24:4585:60 | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4587:20:4587:22 | out : ArrayIterator [] : String | Test.java:231:19:231:32 | it : ArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4587:9:4587:23 | getElement(...) | -| Test.java:4592:69:4592:84 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4592:49:4592:85 | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4594:25:4594:27 | out : String[] [[]] : String | Test.java:229:24:229:32 | array : String[] [[]] : String | Test.java:229:44:229:51 | ...[...] : String | Test.java:4594:9:4594:28 | getArrayElement(...) | -| Test.java:4599:44:4599:59 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4599:24:4599:60 | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4601:20:4601:22 | out : ArrayListIterator [] : String | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4601:9:4601:23 | getElement(...) | -| Test.java:4606:44:4606:59 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4606:24:4606:60 | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4608:20:4608:22 | out : ArrayListIterator [] : String | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4608:9:4608:23 | getElement(...) | -| Test.java:4613:44:4613:59 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4613:24:4613:60 | newWithArrayElement(...) : Object[] [[]] : String | -| Test.java:4615:20:4615:22 | out : ArrayListIterator [] : String | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4615:9:4615:23 | getElement(...) | -| Test.java:4620:45:4620:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4620:18:4620:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4622:20:4622:22 | out : BoundedIterator [] : String | Test.java:231:19:231:32 | it : BoundedIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4622:9:4622:23 | getElement(...) | -| Test.java:4627:55:4627:70 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4627:28:4627:71 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4629:20:4629:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4629:9:4629:23 | getElement(...) | -| Test.java:4634:45:4634:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4634:18:4634:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4636:20:4636:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4636:9:4636:23 | getElement(...) | -| Test.java:4641:45:4641:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4641:18:4641:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4643:20:4643:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4643:9:4643:23 | getElement(...) | -| Test.java:4648:62:4648:77 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4648:35:4648:78 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4650:20:4650:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4650:9:4650:23 | getElement(...) | -| Test.java:4655:45:4655:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4655:18:4655:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4657:20:4657:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4657:9:4657:23 | getElement(...) | -| Test.java:4662:102:4662:117 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4662:75:4662:118 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4664:20:4664:34 | getElement(...) : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4664:9:4664:35 | getElement(...) | -| Test.java:4664:31:4664:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:4664:20:4664:34 | getElement(...) : Iterator [] : String | -| Test.java:4669:45:4669:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4669:18:4669:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4671:20:4671:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4671:9:4671:23 | getElement(...) | -| Test.java:4676:47:4676:62 | (...)... : String | Test.java:256:47:256:55 | element : String | Test.java:256:67:256:134 | new IteratorEnumeration(...) : IteratorEnumeration [] : String | Test.java:4676:21:4676:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | -| Test.java:4678:20:4678:22 | out : EnumerationIterator [] : String | Test.java:231:19:231:32 | it : EnumerationIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4678:9:4678:23 | getElement(...) | -| Test.java:4683:47:4683:62 | (...)... : String | Test.java:256:47:256:55 | element : String | Test.java:256:67:256:134 | new IteratorEnumeration(...) : IteratorEnumeration [] : String | Test.java:4683:21:4683:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | -| Test.java:4685:20:4685:22 | out : EnumerationIterator [] : String | Test.java:231:19:231:32 | it : EnumerationIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4685:9:4685:23 | getElement(...) | -| Test.java:4690:79:4690:94 | (...)... : String | Test.java:256:47:256:55 | element : String | Test.java:256:67:256:134 | new IteratorEnumeration(...) : IteratorEnumeration [] : String | Test.java:4690:53:4690:95 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | -| Test.java:4692:20:4692:22 | out : Enumeration [] : String | Test.java:234:19:234:42 | container : Enumeration [] : String | Test.java:234:54:234:76 | nextElement(...) : String | Test.java:4692:9:4692:23 | getElement(...) | -| Test.java:4697:47:4697:62 | (...)... : String | Test.java:256:47:256:55 | element : String | Test.java:256:67:256:134 | new IteratorEnumeration(...) : IteratorEnumeration [] : String | Test.java:4697:21:4697:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | -| Test.java:4699:20:4699:22 | out : EnumerationIterator [] : String | Test.java:231:19:231:32 | it : EnumerationIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4699:9:4699:23 | getElement(...) | -| Test.java:4704:45:4704:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4704:18:4704:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4706:20:4706:22 | out : FilterIterator [] : String | Test.java:231:19:231:32 | it : FilterIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4706:9:4706:23 | getElement(...) | -| Test.java:4711:45:4711:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4711:18:4711:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4713:20:4713:22 | out : FilterIterator [] : String | Test.java:231:19:231:32 | it : FilterIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4713:9:4713:23 | getElement(...) | -| Test.java:4718:70:4718:85 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4718:43:4718:86 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4720:20:4720:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4720:9:4720:23 | getElement(...) | -| Test.java:4725:45:4725:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4725:18:4725:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4727:20:4727:22 | out : FilterIterator [] : String | Test.java:231:19:231:32 | it : FilterIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4727:9:4727:23 | getElement(...) | -| Test.java:4732:49:4732:64 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4732:22:4732:65 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4734:20:4734:22 | out : FilterListIterator [] : String | Test.java:231:19:231:32 | it : FilterListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4734:9:4734:23 | getElement(...) | -| Test.java:4739:49:4739:64 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4739:22:4739:65 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4741:20:4741:22 | out : FilterListIterator [] : String | Test.java:231:19:231:32 | it : FilterListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4741:9:4741:23 | getElement(...) | -| Test.java:4746:78:4746:93 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4746:51:4746:94 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4748:20:4748:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4748:9:4748:23 | getElement(...) | -| Test.java:4753:49:4753:64 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4753:22:4753:65 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4755:20:4755:22 | out : FilterListIterator [] : String | Test.java:231:19:231:32 | it : FilterListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4755:9:4755:23 | getElement(...) | -| Test.java:4760:42:4760:85 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:267:39:267:47 | element : ListIterator [] : String | Test.java:267:107:267:107 | b : TreeBag [, ] : String | Test.java:4760:20:4760:86 | newTreeBagWithElement(...) : TreeBag [, ] : String | -| Test.java:4760:69:4760:84 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4760:42:4760:85 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4762:20:4762:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4762:9:4762:23 | getElement(...) | -| Test.java:4767:45:4767:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4767:18:4767:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4769:20:4769:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4769:9:4769:23 | getElement(...) | -| Test.java:4774:45:4774:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4774:18:4774:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4776:20:4776:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4776:9:4776:23 | getElement(...) | -| Test.java:4781:45:4781:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4781:18:4781:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4783:20:4783:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4783:9:4783:23 | getElement(...) | -| Test.java:4788:62:4788:77 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4788:35:4788:78 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4790:20:4790:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4790:9:4790:23 | getElement(...) | -| Test.java:4795:45:4795:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4795:18:4795:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4797:20:4797:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4797:9:4797:23 | getElement(...) | -| Test.java:4802:45:4802:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4802:18:4802:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4804:20:4804:22 | out : IteratorEnumeration [] : String | Test.java:234:19:234:42 | container : IteratorEnumeration [] : String | Test.java:234:54:234:76 | nextElement(...) : String | Test.java:4804:9:4804:23 | getElement(...) | -| Test.java:4809:80:4809:95 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4809:53:4809:96 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4811:20:4811:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4811:9:4811:23 | getElement(...) | -| Test.java:4816:45:4816:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4816:18:4816:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4818:20:4818:22 | out : IteratorEnumeration [] : String | Test.java:234:19:234:42 | container : IteratorEnumeration [] : String | Test.java:234:54:234:76 | nextElement(...) : String | Test.java:4818:9:4818:23 | getElement(...) | -| Test.java:4823:45:4823:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4823:18:4823:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4825:20:4825:22 | out : IteratorIterable [] : String | Test.java:230:19:230:32 | it : IteratorIterable [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4825:9:4825:23 | getElement(...) | -| Test.java:4830:45:4830:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4830:18:4830:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4832:20:4832:22 | out : IteratorIterable [] : String | Test.java:230:19:230:32 | it : IteratorIterable [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4832:9:4832:23 | getElement(...) | -| Test.java:4837:45:4837:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4837:18:4837:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4839:20:4839:22 | out : ListIteratorWrapper [] : String | Test.java:231:19:231:32 | it : ListIteratorWrapper [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4839:9:4839:23 | getElement(...) | -| Test.java:4844:42:4844:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4844:20:4844:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:4846:20:4846:22 | out : LoopingIterator [] : String | Test.java:231:19:231:32 | it : LoopingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4846:9:4846:23 | getElement(...) | -| Test.java:4853:20:4853:22 | out : LoopingListIterator [] : String | Test.java:231:19:231:32 | it : LoopingListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4853:9:4853:23 | getElement(...) | -| Test.java:4860:20:4860:22 | out : ObjectArrayIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4860:9:4860:23 | getElement(...) | -| Test.java:4867:20:4867:22 | out : ObjectArrayIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4867:9:4867:23 | getElement(...) | -| Test.java:4874:20:4874:22 | out : ObjectArrayIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4874:9:4874:23 | getElement(...) | -| Test.java:4881:25:4881:27 | out : Object[] [[]] : String | Test.java:229:24:229:32 | array : Object[] [[]] : String | Test.java:229:44:229:51 | ...[...] : String | Test.java:4881:9:4881:28 | getArrayElement(...) | -| Test.java:4888:20:4888:22 | out : ObjectArrayListIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4888:9:4888:23 | getElement(...) | -| Test.java:4895:20:4895:22 | out : ObjectArrayListIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4895:9:4895:23 | getElement(...) | -| Test.java:4902:20:4902:22 | out : ObjectArrayListIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4902:9:4902:23 | getElement(...) | -| Test.java:4907:45:4907:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4907:18:4907:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4909:20:4909:22 | out : PeekingIterator [] : String | Test.java:231:19:231:32 | it : PeekingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4909:9:4909:23 | getElement(...) | -| Test.java:4914:72:4914:87 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4914:45:4914:88 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4921:72:4921:87 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4921:45:4921:88 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4928:45:4928:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4928:18:4928:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4930:20:4930:22 | out : PeekingIterator [] : String | Test.java:231:19:231:32 | it : PeekingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4930:9:4930:23 | getElement(...) | -| Test.java:4937:20:4937:34 | getElement(...) : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4937:9:4937:35 | getElement(...) | -| Test.java:4937:31:4937:33 | out : PermutationIterator [, ] : String | Test.java:231:19:231:32 | it : PermutationIterator [, ] : String | Test.java:231:44:231:52 | next(...) : Object [] : String | Test.java:4937:20:4937:34 | getElement(...) : List [] : String | -| Test.java:4942:45:4942:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4942:18:4942:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4944:20:4944:22 | out : PushbackIterator [] : String | Test.java:231:19:231:32 | it : PushbackIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4944:9:4944:23 | getElement(...) | -| Test.java:4951:20:4951:22 | out : PushbackIterator [] : Object | Test.java:231:19:231:32 | it : PushbackIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | Test.java:4951:9:4951:23 | getElement(...) | -| Test.java:4956:45:4956:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4956:18:4956:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4958:20:4958:22 | out : PushbackIterator [] : String | Test.java:231:19:231:32 | it : PushbackIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4958:9:4958:23 | getElement(...) | -| Test.java:4965:20:4965:22 | out : ReverseListIterator [] : String | Test.java:231:19:231:32 | it : ReverseListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4965:9:4965:23 | getElement(...) | -| Test.java:4972:20:4972:22 | out : SingletonIterator [] : Object | Test.java:231:19:231:32 | it : SingletonIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | Test.java:4972:9:4972:23 | getElement(...) | -| Test.java:4979:20:4979:22 | out : SingletonIterator [] : Object | Test.java:231:19:231:32 | it : SingletonIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | Test.java:4979:9:4979:23 | getElement(...) | -| Test.java:4986:20:4986:22 | out : SingletonListIterator [] : Object | Test.java:231:19:231:32 | it : SingletonListIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | Test.java:4986:9:4986:23 | getElement(...) | -| Test.java:4991:45:4991:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4991:18:4991:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:4993:20:4993:22 | out : SkippingIterator [] : String | Test.java:231:19:231:32 | it : SkippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4993:9:4993:23 | getElement(...) | -| Test.java:4998:45:4998:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4998:18:4998:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5000:20:5000:22 | out : UniqueFilterIterator [] : String | Test.java:231:19:231:32 | it : UniqueFilterIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5000:9:5000:23 | getElement(...) | -| Test.java:5005:45:5005:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5005:18:5005:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5007:20:5007:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5007:9:5007:23 | getElement(...) | -| Test.java:5012:49:5012:64 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5012:22:5012:65 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5014:20:5014:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5014:9:5014:23 | getElement(...) | -| Test.java:5019:44:5019:59 | (...)... : String | Test.java:276:49:276:53 | key : String | Test.java:276:65:276:106 | new LinkedMap(...) : LinkedMap [] : String | Test.java:5019:21:5019:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | -| Test.java:5021:20:5021:22 | out : MapIterator [] : String | Test.java:231:19:231:32 | it : MapIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5021:9:5021:23 | getElement(...) | -| Test.java:5026:46:5026:61 | (...)... : String | Test.java:295:51:295:57 | value : String | Test.java:295:69:295:112 | new LinkedMap(...) : LinkedMap [] : String | Test.java:5026:21:5026:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | -| Test.java:5028:21:5028:23 | out : MapIterator [] : String | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:5028:9:5028:24 | getMapValue(...) | -| Test.java:5033:56:5033:71 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5033:28:5033:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:5035:20:5035:22 | out : OrderedMapIterator [] : String | Test.java:231:19:231:32 | it : OrderedMapIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5035:9:5035:23 | getElement(...) | -| Test.java:5040:58:5040:73 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5040:28:5040:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:5042:21:5042:23 | out : OrderedMapIterator [] : String | Test.java:246:20:246:47 | mapIterator : OrderedMapIterator [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:5042:9:5042:24 | getMapValue(...) | -| Test.java:5047:45:5047:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5047:18:5047:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5049:20:5049:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5049:9:5049:23 | getElement(...) | -| Test.java:5054:45:5054:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5054:18:5054:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5056:20:5056:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5056:9:5056:23 | getElement(...) | -| Test.java:5061:45:5061:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5061:18:5061:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5063:20:5063:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5063:9:5063:23 | getElement(...) | -| Test.java:5068:45:5068:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5068:18:5068:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5070:20:5070:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5070:9:5070:23 | getElement(...) | -| Test.java:5075:45:5075:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5075:18:5075:61 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5077:20:5077:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5077:9:5077:23 | getElement(...) | -| Test.java:5082:62:5082:77 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5082:35:5082:78 | newListIteratorWithElement(...) : ListIterator [] : String | -| Test.java:5084:20:5084:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5084:9:5084:23 | getElement(...) | -| Test.java:5091:20:5091:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5091:9:5091:23 | getElement(...) | -| Test.java:5098:20:5098:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5098:9:5098:23 | getElement(...) | -| Test.java:5105:20:5105:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5105:9:5105:23 | getElement(...) | -| Test.java:5112:20:5112:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5112:9:5112:23 | getElement(...) | -| Test.java:5119:20:5119:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5119:9:5119:23 | getElement(...) | -| Test.java:5126:20:5126:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5126:9:5126:23 | getElement(...) | -| Test.java:5133:20:5133:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5133:9:5133:23 | getElement(...) | -| Test.java:5140:20:5140:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5140:9:5140:23 | getElement(...) | -| Test.java:5147:20:5147:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5147:9:5147:23 | getElement(...) | -| Test.java:5154:20:5154:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5154:9:5154:23 | getElement(...) | -| Test.java:5161:20:5161:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5161:9:5161:23 | getElement(...) | -| Test.java:5168:20:5168:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5168:9:5168:23 | getElement(...) | -| Test.java:5175:20:5175:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5175:9:5175:23 | getElement(...) | -| Test.java:5182:20:5182:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5182:9:5182:23 | getElement(...) | -| Test.java:5189:20:5189:22 | out : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:5189:9:5189:23 | getElement(...) | -| Test.java:5196:20:5196:22 | out : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:5196:9:5196:23 | getElement(...) | -| Test.java:5201:41:5201:56 | (...)... : String | Test.java:261:41:261:49 | element : String | Test.java:261:61:261:93 | new MultiKey(...) : MultiKey [] : String | Test.java:5201:18:5201:57 | newMultiKeyWithElement(...) : MultiKey [] : String | -| Test.java:5208:41:5208:56 | (...)... : String | Test.java:261:41:261:49 | element : String | Test.java:261:61:261:93 | new MultiKey(...) : MultiKey [] : String | Test.java:5208:18:5208:57 | newMultiKeyWithElement(...) : MultiKey [] : String | -| Test.java:5210:25:5210:27 | out : Object[] [[]] : String | Test.java:229:24:229:32 | array : Object[] [[]] : String | Test.java:229:44:229:51 | ...[...] : String | Test.java:5210:9:5210:28 | getArrayElement(...) | -| Test.java:5215:42:5215:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:5215:20:5215:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:5216:35:5216:36 | in : TreeBag [] : String | Test.java:7204:31:7204:64 | coll : TreeBag [] : String | Test.java:7204:10:7204:29 | parameter this [Return] : MyAbstractLinkedList [] : String | Test.java:5216:10:5216:37 | new MyAbstractLinkedList<>(...) : MyAbstractLinkedList [] : String | -| Test.java:5217:20:5217:22 | out : MyAbstractLinkedList [] : String | Test.java:230:19:230:32 | it : MyAbstractLinkedList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5217:9:5217:23 | getElement(...) | -| Test.java:5224:20:5224:22 | out : AbstractLinkedList [] : Object | Test.java:230:19:230:32 | it : AbstractLinkedList [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:5224:9:5224:23 | getElement(...) | -| Test.java:5231:20:5231:22 | out : AbstractLinkedList [] : Object | Test.java:230:19:230:32 | it : AbstractLinkedList [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:5231:9:5231:23 | getElement(...) | -| Test.java:5236:63:5236:78 | (...)... : String | Test.java:255:65:255:73 | element : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | Test.java:5236:28:5236:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | -| Test.java:5243:63:5243:78 | (...)... : String | Test.java:255:65:255:73 | element : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | Test.java:5243:28:5243:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | -| Test.java:5250:63:5250:78 | (...)... : String | Test.java:255:65:255:73 | element : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | Test.java:5250:28:5250:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | -| Test.java:5257:63:5257:78 | (...)... : String | Test.java:255:65:255:73 | element : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | Test.java:5257:28:5257:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | -| Test.java:5265:38:5265:39 | in : List [] : String | Test.java:7210:34:7210:51 | list : List [] : String | Test.java:7210:10:7210:32 | parameter this [Return] : MyAbstractListDecorator [] : String | Test.java:5265:10:5265:40 | new MyAbstractListDecorator<>(...) : MyAbstractListDecorator [] : String | -| Test.java:5266:20:5266:22 | out : MyAbstractListDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractListDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5266:9:5266:23 | getElement(...) | -| Test.java:5272:50:5272:51 | in : List [] : String | Test.java:7216:46:7216:63 | list : List [] : String | Test.java:7216:10:7216:44 | parameter this [Return] : MyAbstractSerializableListDecorator [] : String | Test.java:5272:10:5272:52 | new MyAbstractSerializableListDecorator<>(...) : MyAbstractSerializableListDecorator [] : String | -| Test.java:5273:20:5273:22 | out : MyAbstractSerializableListDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSerializableListDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5273:9:5273:23 | getElement(...) | -| Test.java:5280:20:5280:22 | out : CursorableLinkedList [] : String | Test.java:230:19:230:32 | it : CursorableLinkedList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5280:9:5280:23 | getElement(...) | -| Test.java:5285:65:5285:80 | (...)... : String | Test.java:255:65:255:73 | element : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | Test.java:5285:30:5285:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | -| Test.java:5287:20:5287:22 | out : Cursor [] : String | Test.java:231:19:231:32 | it : Cursor [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5287:9:5287:23 | getElement(...) | -| Test.java:5292:65:5292:80 | (...)... : String | Test.java:255:65:255:73 | element : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | Test.java:5292:30:5292:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | -| Test.java:5294:20:5294:22 | out : Cursor [] : String | Test.java:231:19:231:32 | it : Cursor [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5294:9:5294:23 | getElement(...) | -| Test.java:5301:20:5301:22 | out : FixedSizeList [] : String | Test.java:230:19:230:32 | it : FixedSizeList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5301:9:5301:23 | getElement(...) | -| Test.java:5308:20:5308:22 | out : GrowthList [] : String | Test.java:230:19:230:32 | it : GrowthList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5308:9:5308:23 | getElement(...) | -| Test.java:5315:20:5315:22 | out : LazyList [] : String | Test.java:230:19:230:32 | it : LazyList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5315:9:5315:23 | getElement(...) | -| Test.java:5322:20:5322:22 | out : LazyList [] : String | Test.java:230:19:230:32 | it : LazyList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5322:9:5322:23 | getElement(...) | -| Test.java:5329:20:5329:22 | out : NodeCachingLinkedList [] : String | Test.java:230:19:230:32 | it : NodeCachingLinkedList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5329:9:5329:23 | getElement(...) | -| Test.java:5336:20:5336:22 | out : PredicatedList [] : String | Test.java:230:19:230:32 | it : PredicatedList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5336:9:5336:23 | getElement(...) | -| Test.java:5343:20:5343:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5343:9:5343:23 | getElement(...) | -| Test.java:5350:20:5350:22 | out : SetUniqueList [] : String | Test.java:230:19:230:32 | it : SetUniqueList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5350:9:5350:23 | getElement(...) | -| Test.java:5357:20:5357:22 | out : TransformedList [] : String | Test.java:230:19:230:32 | it : TransformedList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5357:9:5357:23 | getElement(...) | -| Test.java:5364:20:5364:22 | out : TreeList [] : String | Test.java:230:19:230:32 | it : TreeList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5364:9:5364:23 | getElement(...) | -| Test.java:5371:20:5371:22 | out : UnmodifiableList [] : String | Test.java:230:19:230:32 | it : UnmodifiableList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5371:9:5371:23 | getElement(...) | -| Test.java:5378:20:5378:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5378:9:5378:23 | getElement(...) | -| Test.java:5384:34:5384:35 | in : Map [] : String | Test.java:7222:30:7222:68 | map : Map [] : String | Test.java:7222:10:7222:28 | parameter this [Return] : MyAbstractHashedMap [] : String | Test.java:5384:10:5384:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | -| Test.java:5385:19:5385:21 | out : MyAbstractHashedMap [] : String | Test.java:228:18:228:29 | map : MyAbstractHashedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5385:9:5385:22 | getMapKey(...) | -| Test.java:5391:34:5391:35 | in : Map [] : String | Test.java:7222:30:7222:68 | map : Map [] : String | Test.java:7222:10:7222:28 | parameter this [Return] : MyAbstractHashedMap [] : String | Test.java:5391:10:5391:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | -| Test.java:5392:21:5392:23 | out : MyAbstractHashedMap [] : String | Test.java:232:20:232:31 | map : MyAbstractHashedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5392:9:5392:24 | getMapValue(...) | -| Test.java:5398:34:5398:35 | in : Map [] : String | Test.java:7228:30:7228:68 | map : Map [] : String | Test.java:7228:10:7228:28 | parameter this [Return] : MyAbstractLinkedMap [] : String | Test.java:5398:10:5398:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | -| Test.java:5399:19:5399:21 | out : MyAbstractLinkedMap [] : String | Test.java:228:18:228:29 | map : MyAbstractLinkedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5399:9:5399:22 | getMapKey(...) | -| Test.java:5405:34:5405:35 | in : Map [] : String | Test.java:7228:30:7228:68 | map : Map [] : String | Test.java:7228:10:7228:28 | parameter this [Return] : MyAbstractLinkedMap [] : String | Test.java:5405:10:5405:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | -| Test.java:5406:21:5406:23 | out : MyAbstractLinkedMap [] : String | Test.java:232:20:232:31 | map : MyAbstractLinkedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5406:9:5406:24 | getMapValue(...) | -| Test.java:5412:37:5412:38 | in : Map [] : String | Test.java:7234:33:7234:51 | map : Map [] : String | Test.java:7234:10:7234:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | Test.java:5412:10:5412:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | -| Test.java:5413:19:5413:21 | out : MyAbstractMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5413:9:5413:22 | getMapKey(...) | -| Test.java:5419:37:5419:38 | in : Map [] : String | Test.java:7234:33:7234:51 | map : Map [] : String | Test.java:7234:10:7234:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | Test.java:5419:10:5419:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | -| Test.java:5420:21:5420:23 | out : MyAbstractMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5420:9:5420:24 | getMapValue(...) | -| Test.java:5425:59:5425:88 | of(...) : Map [] : String | Test.java:7234:33:7234:51 | map : Map [] : String | Test.java:7234:10:7234:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | Test.java:5425:32:5425:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | -| Test.java:5426:10:5426:11 | in : MyAbstractMapDecorator [] : String | Test.java:7237:20:7237:30 | parameter this : MyAbstractMapDecorator [] : String | Test.java:7238:11:7238:27 | decorated(...) : Map [] : String | Test.java:5426:10:5426:25 | myDecorated(...) : Map [] : String | -| Test.java:5427:19:5427:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5427:9:5427:22 | getMapKey(...) | -| Test.java:5432:59:5432:88 | of(...) : Map [] : String | Test.java:7234:33:7234:51 | map : Map [] : String | Test.java:7234:10:7234:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | Test.java:5432:32:5432:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | -| Test.java:5433:10:5433:11 | in : MyAbstractMapDecorator [] : String | Test.java:7237:20:7237:30 | parameter this : MyAbstractMapDecorator [] : String | Test.java:7238:11:7238:27 | decorated(...) : Map [] : String | Test.java:5433:10:5433:25 | myDecorated(...) : Map [] : String | -| Test.java:5434:21:5434:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5434:9:5434:24 | getMapValue(...) | -| Test.java:5439:48:5439:63 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5439:20:5439:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:5440:44:5440:45 | in : ListOrderedMap [] : String | Test.java:7092:40:7092:65 | map : ListOrderedMap [] : String | Test.java:7092:10:7092:38 | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | Test.java:5440:10:5440:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | -| Test.java:5441:19:5441:21 | out : MyAbstractOrderedMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractOrderedMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5441:9:5441:22 | getMapKey(...) | -| Test.java:5446:50:5446:65 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5446:20:5446:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:5447:44:5447:45 | in : ListOrderedMap [] : String | Test.java:7092:40:7092:65 | map : ListOrderedMap [] : String | Test.java:7092:10:7092:38 | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | Test.java:5447:10:5447:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | -| Test.java:5448:21:5448:23 | out : MyAbstractOrderedMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractOrderedMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5448:9:5448:24 | getMapValue(...) | -| Test.java:5453:40:5453:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:5453:19:5453:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:5454:43:5454:44 | in : TreeMap [] : String | Test.java:7098:39:7098:63 | map : TreeMap [] : String | Test.java:7098:10:7098:37 | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | Test.java:5454:10:5454:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | -| Test.java:5455:19:5455:21 | out : MyAbstractSortedMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractSortedMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5455:9:5455:22 | getMapKey(...) | -| Test.java:5460:42:5460:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:5460:19:5460:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:5461:43:5461:44 | in : TreeMap [] : String | Test.java:7098:39:7098:63 | map : TreeMap [] : String | Test.java:7098:10:7098:37 | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | Test.java:5461:10:5461:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | -| Test.java:5462:21:5462:23 | out : MyAbstractSortedMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractSortedMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5462:9:5462:24 | getMapValue(...) | -| Test.java:5469:19:5469:21 | out : CaseInsensitiveMap [] : String | Test.java:228:18:228:29 | map : CaseInsensitiveMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5469:9:5469:22 | getMapKey(...) | -| Test.java:5476:21:5476:23 | out : CaseInsensitiveMap [] : String | Test.java:232:20:232:31 | map : CaseInsensitiveMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5476:9:5476:24 | getMapValue(...) | -| Test.java:5483:19:5483:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5483:9:5483:22 | getMapKey(...) | -| Test.java:5490:19:5490:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5490:9:5490:22 | getMapKey(...) | -| Test.java:5497:21:5497:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5497:9:5497:24 | getMapValue(...) | -| Test.java:5504:21:5504:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5504:9:5504:24 | getMapValue(...) | -| Test.java:5511:19:5511:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5511:9:5511:22 | getMapKey(...) | -| Test.java:5518:19:5518:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5518:9:5518:22 | getMapKey(...) | -| Test.java:5525:21:5525:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5525:9:5525:24 | getMapValue(...) | -| Test.java:5532:21:5532:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5532:9:5532:24 | getMapValue(...) | -| Test.java:5539:19:5539:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5539:9:5539:22 | getMapKey(...) | -| Test.java:5546:21:5546:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5546:9:5546:24 | getMapValue(...) | -| Test.java:5553:19:5553:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5553:9:5553:22 | getMapKey(...) | -| Test.java:5560:21:5560:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5560:9:5560:24 | getMapValue(...) | -| Test.java:5567:19:5567:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5567:9:5567:22 | getMapKey(...) | -| Test.java:5574:21:5574:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5574:9:5574:24 | getMapValue(...) | -| Test.java:5589:19:5589:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5589:9:5589:22 | getMapKey(...) | -| Test.java:5596:21:5596:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5596:9:5596:24 | getMapValue(...) | -| Test.java:5603:21:5603:23 | out : DefaultedMap [] : Object | Test.java:232:20:232:31 | map : DefaultedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:5603:9:5603:24 | getMapValue(...) | -| Test.java:5610:21:5610:23 | out : DefaultedMap [] : Object | Test.java:232:20:232:31 | map : DefaultedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:5610:9:5610:24 | getMapValue(...) | -| Test.java:5617:19:5617:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5617:9:5617:22 | getMapKey(...) | -| Test.java:5624:19:5624:21 | out : DefaultedMap [] : String | Test.java:228:18:228:29 | map : DefaultedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5624:9:5624:22 | getMapKey(...) | -| Test.java:5631:19:5631:21 | out : DefaultedMap [] : String | Test.java:228:18:228:29 | map : DefaultedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5631:9:5631:22 | getMapKey(...) | -| Test.java:5638:21:5638:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5638:9:5638:24 | getMapValue(...) | -| Test.java:5645:21:5645:23 | out : DefaultedMap [] : String | Test.java:232:20:232:31 | map : DefaultedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5645:9:5645:24 | getMapValue(...) | -| Test.java:5652:21:5652:23 | out : DefaultedMap [] : String | Test.java:232:20:232:31 | map : DefaultedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5652:9:5652:24 | getMapValue(...) | -| Test.java:5657:42:5657:75 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | Test.java:260:135:260:135 | x : ListOrderedSet [, ] : String | Test.java:5657:13:5657:76 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | -| Test.java:5657:59:5657:74 | (...)... : String | Test.java:286:46:286:50 | key : String | Test.java:286:62:286:116 | new TiedMapEntry(...) : TiedMapEntry [] : String | Test.java:5657:42:5657:75 | newTMEWithMapKey(...) : TiedMapEntry [] : String | -| Test.java:5659:20:5659:22 | out : EntrySetToMapIteratorAdapter [] : String | Test.java:231:19:231:32 | it : EntrySetToMapIteratorAdapter [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5659:9:5659:23 | getElement(...) | -| Test.java:5664:42:5664:77 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | Test.java:260:135:260:135 | x : ListOrderedSet [, ] : String | Test.java:5664:13:5664:78 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | -| Test.java:5664:61:5664:76 | (...)... : String | Test.java:305:48:305:54 | value : String | Test.java:305:66:305:127 | new TiedMapEntry(...) : TiedMapEntry [] : String | Test.java:5664:42:5664:77 | newTMEWithMapValue(...) : TiedMapEntry [] : String | -| Test.java:5666:21:5666:23 | out : EntrySetToMapIteratorAdapter [] : String | Test.java:246:20:246:47 | mapIterator : EntrySetToMapIteratorAdapter [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:5666:9:5666:24 | getMapValue(...) | -| Test.java:5673:19:5673:21 | out : FixedSizeMap [] : String | Test.java:228:18:228:29 | map : FixedSizeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5673:9:5673:22 | getMapKey(...) | -| Test.java:5680:21:5680:23 | out : FixedSizeMap [] : String | Test.java:232:20:232:31 | map : FixedSizeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5680:9:5680:24 | getMapValue(...) | -| Test.java:5685:40:5685:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:5685:19:5685:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:5687:19:5687:21 | out : FixedSizeSortedMap [] : String | Test.java:228:18:228:29 | map : FixedSizeSortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5687:9:5687:22 | getMapKey(...) | -| Test.java:5692:42:5692:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:5692:19:5692:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:5694:21:5694:23 | out : FixedSizeSortedMap [] : String | Test.java:232:20:232:31 | map : FixedSizeSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5694:9:5694:24 | getMapValue(...) | -| Test.java:5701:19:5701:21 | out : Flat3Map [] : String | Test.java:228:18:228:29 | map : Flat3Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5701:9:5701:22 | getMapKey(...) | -| Test.java:5708:21:5708:23 | out : Flat3Map [] : String | Test.java:232:20:232:31 | map : Flat3Map [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5708:9:5708:24 | getMapValue(...) | -| Test.java:5715:19:5715:21 | out : HashedMap [] : String | Test.java:228:18:228:29 | map : HashedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5715:9:5715:22 | getMapKey(...) | -| Test.java:5722:21:5722:23 | out : HashedMap [] : String | Test.java:232:20:232:31 | map : HashedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5722:9:5722:24 | getMapValue(...) | -| Test.java:5729:19:5729:21 | out : LRUMap [] : String | Test.java:228:18:228:29 | map : LRUMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5729:9:5729:22 | getMapKey(...) | -| Test.java:5736:21:5736:23 | out : LRUMap [] : String | Test.java:232:20:232:31 | map : LRUMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5736:9:5736:24 | getMapValue(...) | -| Test.java:5743:19:5743:21 | out : LRUMap [] : String | Test.java:228:18:228:29 | map : LRUMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5743:9:5743:22 | getMapKey(...) | -| Test.java:5750:21:5750:23 | out : LRUMap [] : String | Test.java:232:20:232:31 | map : LRUMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5750:9:5750:24 | getMapValue(...) | -| Test.java:5765:19:5765:21 | out : LazyMap [] : String | Test.java:228:18:228:29 | map : LazyMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5765:9:5765:22 | getMapKey(...) | -| Test.java:5772:19:5772:21 | out : LazyMap [] : String | Test.java:228:18:228:29 | map : LazyMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5772:9:5772:22 | getMapKey(...) | -| Test.java:5779:21:5779:23 | out : LazyMap [] : String | Test.java:232:20:232:31 | map : LazyMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5779:9:5779:24 | getMapValue(...) | -| Test.java:5786:21:5786:23 | out : LazyMap [] : String | Test.java:232:20:232:31 | map : LazyMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5786:9:5786:24 | getMapValue(...) | -| Test.java:5791:40:5791:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:5791:19:5791:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:5793:19:5793:21 | out : LazySortedMap [] : String | Test.java:228:18:228:29 | map : LazySortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5793:9:5793:22 | getMapKey(...) | -| Test.java:5798:40:5798:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:5798:19:5798:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:5800:19:5800:21 | out : LazySortedMap [] : String | Test.java:228:18:228:29 | map : LazySortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5800:9:5800:22 | getMapKey(...) | -| Test.java:5805:42:5805:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:5805:19:5805:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:5807:21:5807:23 | out : LazySortedMap [] : String | Test.java:232:20:232:31 | map : LazySortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5807:9:5807:24 | getMapValue(...) | -| Test.java:5812:42:5812:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:5812:19:5812:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:5814:21:5814:23 | out : LazySortedMap [] : String | Test.java:232:20:232:31 | map : LazySortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5814:9:5814:24 | getMapValue(...) | -| Test.java:5821:19:5821:21 | out : LinkedMap [] : String | Test.java:228:18:228:29 | map : LinkedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5821:9:5821:22 | getMapKey(...) | -| Test.java:5828:21:5828:23 | out : LinkedMap [] : String | Test.java:232:20:232:31 | map : LinkedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5828:9:5828:24 | getMapValue(...) | -| Test.java:5833:42:5833:57 | (...)... : String | Test.java:276:49:276:53 | key : String | Test.java:276:65:276:106 | new LinkedMap(...) : LinkedMap [] : String | Test.java:5833:19:5833:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | -| Test.java:5835:20:5835:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5835:9:5835:23 | getElement(...) | -| Test.java:5840:42:5840:57 | (...)... : String | Test.java:276:49:276:53 | key : String | Test.java:276:65:276:106 | new LinkedMap(...) : LinkedMap [] : String | Test.java:5840:19:5840:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | -| Test.java:5847:44:5847:59 | (...)... : String | Test.java:295:51:295:57 | value : String | Test.java:295:69:295:112 | new LinkedMap(...) : LinkedMap [] : String | Test.java:5847:19:5847:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | -| Test.java:5854:44:5854:59 | (...)... : String | Test.java:295:51:295:57 | value : String | Test.java:295:69:295:112 | new LinkedMap(...) : LinkedMap [] : String | Test.java:5854:19:5854:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | -| Test.java:5861:52:5861:67 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5861:24:5861:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:5863:20:5863:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5863:9:5863:23 | getElement(...) | -| Test.java:5868:52:5868:59 | source(...) : Object | Test.java:277:59:277:63 | key : Object | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : Object | Test.java:5868:24:5868:60 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : Object | -| Test.java:5875:54:5875:61 | source(...) : Object | Test.java:296:61:296:67 | value : Object | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : Object | Test.java:5875:24:5875:62 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : Object | -| Test.java:5882:52:5882:67 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5882:24:5882:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:5884:20:5884:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5884:9:5884:23 | getElement(...) | -| Test.java:5891:19:5891:21 | out : ListOrderedMap [] : String | Test.java:228:18:228:29 | map : ListOrderedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5891:9:5891:22 | getMapKey(...) | -| Test.java:5898:21:5898:23 | out : ListOrderedMap [] : String | Test.java:232:20:232:31 | map : ListOrderedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5898:9:5898:24 | getMapValue(...) | -| Test.java:5905:19:5905:21 | out : ListOrderedMap [] : Object | Test.java:228:18:228:29 | map : ListOrderedMap [] : Object | Test.java:228:41:228:70 | next(...) : Object | Test.java:5905:9:5905:22 | getMapKey(...) | -| Test.java:5912:19:5912:21 | out : ListOrderedMap [] : Object | Test.java:228:18:228:29 | map : ListOrderedMap [] : Object | Test.java:228:41:228:70 | next(...) : Object | Test.java:5912:9:5912:22 | getMapKey(...) | -| Test.java:5919:21:5919:23 | out : ListOrderedMap [] : Object | Test.java:232:20:232:31 | map : ListOrderedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:5919:9:5919:24 | getMapValue(...) | -| Test.java:5926:19:5926:21 | out : ListOrderedMap [] : String | Test.java:228:18:228:29 | map : ListOrderedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5926:9:5926:22 | getMapKey(...) | -| Test.java:5933:21:5933:23 | out : ListOrderedMap [] : String | Test.java:232:20:232:31 | map : ListOrderedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5933:9:5933:24 | getMapValue(...) | -| Test.java:5938:54:5938:69 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5938:24:5938:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:5947:21:5947:23 | out : ListOrderedMap [] : Object | Test.java:232:20:232:31 | map : ListOrderedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:5947:9:5947:24 | getMapValue(...) | -| Test.java:5952:54:5952:69 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5952:24:5952:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:5954:20:5954:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5954:9:5954:23 | getElement(...) | -| Test.java:5959:40:5959:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:5959:21:5959:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:5966:40:5966:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:5966:21:5966:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:5973:40:5973:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:5973:21:5973:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:5980:40:5980:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:5980:21:5980:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:5989:20:5989:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:5989:9:5989:34 | getElement(...) | -| Test.java:5989:30:5989:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:5989:20:5989:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:5996:20:5996:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:5996:9:5996:34 | getElement(...) | -| Test.java:5996:30:5996:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:5996:20:5996:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6003:21:6003:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6003:9:6003:24 | getMapValue(...) | -| Test.java:6010:20:6010:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6010:9:6010:34 | getElement(...) | -| Test.java:6010:30:6010:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6010:20:6010:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6017:20:6017:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6017:9:6017:34 | getElement(...) | -| Test.java:6017:30:6017:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6017:20:6017:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6024:20:6024:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6024:9:6024:34 | getElement(...) | -| Test.java:6024:30:6024:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6024:20:6024:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6031:21:6031:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6031:9:6031:24 | getMapValue(...) | -| Test.java:6038:20:6038:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6038:9:6038:34 | getElement(...) | -| Test.java:6038:30:6038:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6038:20:6038:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6045:20:6045:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6045:9:6045:34 | getElement(...) | -| Test.java:6045:30:6045:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6045:20:6045:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6052:20:6052:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6052:9:6052:34 | getElement(...) | -| Test.java:6052:30:6052:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6052:20:6052:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6059:20:6059:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6059:9:6059:34 | getElement(...) | -| Test.java:6059:30:6059:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6059:20:6059:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6066:21:6066:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6066:9:6066:24 | getMapValue(...) | -| Test.java:6073:20:6073:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6073:9:6073:34 | getElement(...) | -| Test.java:6073:30:6073:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6073:20:6073:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6080:20:6080:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6080:9:6080:34 | getElement(...) | -| Test.java:6080:30:6080:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6080:20:6080:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6087:20:6087:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6087:9:6087:34 | getElement(...) | -| Test.java:6087:30:6087:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6087:20:6087:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6094:20:6094:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6094:9:6094:34 | getElement(...) | -| Test.java:6094:30:6094:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6094:20:6094:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6101:20:6101:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6101:9:6101:34 | getElement(...) | -| Test.java:6101:30:6101:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6101:20:6101:33 | getMapKey(...) : MultiKey [] : String | -| Test.java:6108:21:6108:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6108:9:6108:24 | getMapValue(...) | -| Test.java:6113:40:6113:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6113:21:6113:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6120:40:6120:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6120:21:6120:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6127:40:6127:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6127:21:6127:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6134:40:6134:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6134:21:6134:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6141:40:6141:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6141:21:6141:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6148:40:6148:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6148:21:6148:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6155:40:6155:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6155:21:6155:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6162:40:6162:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6162:21:6162:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6169:40:6169:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6169:21:6169:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | -| Test.java:6176:42:6176:57 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | Test.java:6176:23:6176:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | -| Test.java:6176:42:6176:57 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:6176:23:6176:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:6178:20:6178:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6178:9:6178:23 | getElement(...) | -| Test.java:6178:20:6178:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6178:9:6178:23 | getElement(...) | -| Test.java:6183:57:6183:72 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | Test.java:6183:38:6183:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | -| Test.java:6183:57:6183:72 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:6183:38:6183:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:6185:30:6185:44 | getElement(...) : Entry [] : Object | Test.java:244:29:244:52 | container : Entry [] : Object | Test.java:244:64:244:83 | getValue(...) : Object | Test.java:6185:9:6185:45 | getMapValueFromEntry(...) | -| Test.java:6185:30:6185:44 | getElement(...) : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | Test.java:244:64:244:83 | getValue(...) : String | Test.java:6185:9:6185:45 | getMapValueFromEntry(...) | -| Test.java:6185:41:6185:43 | out : Iterator [, ] : Object | Test.java:231:19:231:32 | it : Iterator [, ] : Object | Test.java:231:44:231:52 | next(...) : Object [] : Object | Test.java:6185:30:6185:44 | getElement(...) : Entry [] : Object | -| Test.java:6185:41:6185:43 | out : Iterator [, ] : String | Test.java:231:19:231:32 | it : Iterator [, ] : String | Test.java:231:44:231:52 | next(...) : Object [] : String | Test.java:6185:30:6185:44 | getElement(...) : Entry [] : String | -| Test.java:6190:55:6190:70 | (...)... : String | Test.java:279:47:279:51 | key : String | Test.java:279:131:279:131 | m : MultiValueMap [] : String | Test.java:6190:38:6190:71 | newMVMWithMapKey(...) : MultiValueMap [] : String | -| Test.java:6192:28:6192:42 | getElement(...) : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | Test.java:238:62:238:79 | getKey(...) : String | Test.java:6192:9:6192:43 | getMapKeyFromEntry(...) | -| Test.java:6192:39:6192:41 | out : Iterator [, ] : String | Test.java:231:19:231:32 | it : Iterator [, ] : String | Test.java:231:44:231:52 | next(...) : Object [] : String | Test.java:6192:28:6192:42 | getElement(...) : Entry [] : String | -| Test.java:6197:57:6197:72 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | Test.java:6197:38:6197:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | -| Test.java:6197:57:6197:72 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:6197:38:6197:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:6199:20:6199:22 | out : Iterator [] : Object | Test.java:231:19:231:32 | it : Iterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | Test.java:6199:9:6199:23 | getElement(...) | -| Test.java:6199:20:6199:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:6199:9:6199:23 | getElement(...) | -| Test.java:6204:47:6204:62 | (...)... : String | Test.java:269:37:269:45 | element : String | Test.java:269:103:269:103 | v : Vector [] : String | Test.java:6204:26:6204:63 | newVectorWithElement(...) : Vector [] : String | -| Test.java:6206:20:6206:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6206:9:6206:48 | getElement(...) | -| Test.java:6206:44:6206:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | Test.java:6206:32:6206:47 | getMapValue(...) : Object [] : String | -| Test.java:6211:47:6211:62 | (...)... : String | Test.java:269:37:269:45 | element : String | Test.java:269:103:269:103 | v : Vector [] : String | Test.java:6211:26:6211:63 | newVectorWithElement(...) : Vector [] : String | -| Test.java:6213:20:6213:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6213:9:6213:48 | getElement(...) | -| Test.java:6213:44:6213:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | Test.java:6213:32:6213:47 | getMapValue(...) : Object [] : String | -| Test.java:6218:47:6218:62 | (...)... : String | Test.java:269:37:269:45 | element : String | Test.java:269:103:269:103 | v : Vector [] : String | Test.java:6218:26:6218:63 | newVectorWithElement(...) : Vector [] : String | -| Test.java:6220:20:6220:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6220:9:6220:48 | getElement(...) | -| Test.java:6220:44:6220:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | Test.java:6220:32:6220:47 | getMapValue(...) : Object [] : String | -| Test.java:6227:19:6227:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6227:9:6227:22 | getMapKey(...) | -| Test.java:6234:19:6234:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6234:9:6234:22 | getMapKey(...) | -| Test.java:6241:19:6241:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6241:9:6241:22 | getMapKey(...) | -| Test.java:6246:32:6246:47 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | Test.java:6246:13:6246:48 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | -| Test.java:6246:32:6246:47 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:6246:13:6246:48 | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:6248:20:6248:47 | (...)... : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6248:9:6248:48 | getElement(...) | -| Test.java:6248:20:6248:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6248:9:6248:48 | getElement(...) | -| Test.java:6248:44:6248:46 | out : MultiValueMap [, ] : Object | Test.java:232:20:232:31 | map : MultiValueMap [, ] : Object | Test.java:232:43:232:55 | get(...) : Object [] : Object | Test.java:6248:32:6248:47 | getMapValue(...) : Object [] : Object | -| Test.java:6248:44:6248:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | Test.java:6248:32:6248:47 | getMapValue(...) : Object [] : String | -| Test.java:6255:20:6255:47 | (...)... : Collection | Test.java:230:19:230:32 | it : Collection | Test.java:230:44:230:63 | next(...) : Object | Test.java:6255:9:6255:48 | getElement(...) | -| Test.java:6255:20:6255:47 | (...)... : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6255:9:6255:48 | getElement(...) | -| Test.java:6255:44:6255:46 | out : MultiValueMap [, ] : Object | Test.java:232:20:232:31 | map : MultiValueMap [, ] : Object | Test.java:232:43:232:55 | get(...) : Object [] : Object | Test.java:6255:32:6255:47 | getMapValue(...) : Object [] : Object | -| Test.java:6255:44:6255:46 | out : MultiValueMap [] : Object | Test.java:232:20:232:31 | map : MultiValueMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:6255:32:6255:47 | getMapValue(...) : Object | -| Test.java:6262:19:6262:21 | out : MultiValueMap [] : Object | Test.java:228:18:228:29 | map : MultiValueMap [] : Object | Test.java:228:41:228:70 | next(...) : Object | Test.java:6262:9:6262:22 | getMapKey(...) | -| Test.java:6267:42:6267:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:6267:20:6267:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:6269:20:6269:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6269:9:6269:48 | getElement(...) | -| Test.java:6269:44:6269:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | Test.java:6269:32:6269:47 | getMapValue(...) : Object [] : String | -| Test.java:6274:42:6274:57 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | Test.java:6274:23:6274:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | -| Test.java:6274:42:6274:57 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:6274:23:6274:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | -| Test.java:6276:20:6276:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6276:9:6276:23 | getElement(...) | -| Test.java:6276:20:6276:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6276:9:6276:23 | getElement(...) | -| Test.java:6283:19:6283:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6283:9:6283:22 | getMapKey(...) | -| Test.java:6290:21:6290:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6290:9:6290:24 | getMapValue(...) | -| Test.java:6297:19:6297:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6297:9:6297:22 | getMapKey(...) | -| Test.java:6304:21:6304:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6304:9:6304:24 | getMapValue(...) | -| Test.java:6311:19:6311:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6311:9:6311:22 | getMapKey(...) | -| Test.java:6318:21:6318:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6318:9:6318:24 | getMapValue(...) | -| Test.java:6325:19:6325:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6325:9:6325:22 | getMapKey(...) | -| Test.java:6332:21:6332:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6332:9:6332:24 | getMapValue(...) | -| Test.java:6339:19:6339:21 | out : PredicatedMap [] : String | Test.java:228:18:228:29 | map : PredicatedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6339:9:6339:22 | getMapKey(...) | -| Test.java:6346:21:6346:23 | out : PredicatedMap [] : String | Test.java:232:20:232:31 | map : PredicatedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6346:9:6346:24 | getMapValue(...) | -| Test.java:6351:40:6351:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:6351:19:6351:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:6353:19:6353:21 | out : PredicatedSortedMap [] : String | Test.java:228:18:228:29 | map : PredicatedSortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6353:9:6353:22 | getMapKey(...) | -| Test.java:6358:42:6358:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:6358:19:6358:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:6360:21:6360:23 | out : PredicatedSortedMap [] : String | Test.java:232:20:232:31 | map : PredicatedSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6360:9:6360:24 | getMapValue(...) | -| Test.java:6365:36:6365:51 | (...)... : String | Test.java:286:46:286:50 | key : String | Test.java:286:62:286:116 | new TiedMapEntry(...) : TiedMapEntry [] : String | Test.java:6365:19:6365:52 | newTMEWithMapKey(...) : TiedMapEntry [] : String | -| Test.java:6367:19:6367:21 | out : SingletonMap [] : String | Test.java:228:18:228:29 | map : SingletonMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6367:9:6367:22 | getMapKey(...) | -| Test.java:6372:38:6372:53 | (...)... : String | Test.java:305:48:305:54 | value : String | Test.java:305:66:305:127 | new TiedMapEntry(...) : TiedMapEntry [] : String | Test.java:6372:19:6372:54 | newTMEWithMapValue(...) : TiedMapEntry [] : String | -| Test.java:6374:21:6374:23 | out : SingletonMap [] : String | Test.java:232:20:232:31 | map : SingletonMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6374:9:6374:24 | getMapValue(...) | -| Test.java:6379:35:6379:50 | (...)... : String | Test.java:273:49:273:53 | key : String | Test.java:273:65:273:103 | new DefaultKeyValue(...) : DefaultKeyValue [] : String | Test.java:6379:18:6379:51 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | -| Test.java:6381:19:6381:21 | out : SingletonMap [] : String | Test.java:228:18:228:29 | map : SingletonMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6381:9:6381:22 | getMapKey(...) | -| Test.java:6386:37:6386:52 | (...)... : String | Test.java:291:51:291:57 | value : String | Test.java:291:69:291:109 | new DefaultKeyValue(...) : DefaultKeyValue [] : String | Test.java:6386:18:6386:53 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | -| Test.java:6388:21:6388:23 | out : SingletonMap [] : String | Test.java:232:20:232:31 | map : SingletonMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6388:9:6388:24 | getMapValue(...) | -| Test.java:6395:19:6395:21 | out : SingletonMap [] : String | Test.java:228:18:228:29 | map : SingletonMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6395:9:6395:22 | getMapKey(...) | -| Test.java:6402:21:6402:23 | out : SingletonMap [] : String | Test.java:232:20:232:31 | map : SingletonMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6402:9:6402:24 | getMapValue(...) | -| Test.java:6409:19:6409:21 | out : SingletonMap [] : Object | Test.java:228:18:228:29 | map : SingletonMap [] : Object | Test.java:228:41:228:70 | next(...) : Object | Test.java:6409:9:6409:22 | getMapKey(...) | -| Test.java:6416:21:6416:23 | out : SingletonMap [] : Object | Test.java:232:20:232:31 | map : SingletonMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:6416:9:6416:24 | getMapValue(...) | -| Test.java:6423:21:6423:23 | out : SingletonMap [] : Object | Test.java:232:20:232:31 | map : SingletonMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:6423:9:6423:24 | getMapValue(...) | -| Test.java:6430:19:6430:21 | out : TransformedMap [] : String | Test.java:228:18:228:29 | map : TransformedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6430:9:6430:22 | getMapKey(...) | -| Test.java:6437:21:6437:23 | out : TransformedMap [] : String | Test.java:232:20:232:31 | map : TransformedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6437:9:6437:24 | getMapValue(...) | -| Test.java:6442:40:6442:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:6442:19:6442:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:6444:19:6444:21 | out : TransformedSortedMap [] : String | Test.java:228:18:228:29 | map : TransformedSortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6444:9:6444:22 | getMapKey(...) | -| Test.java:6449:42:6449:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:6449:19:6449:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:6451:21:6451:23 | out : TransformedSortedMap [] : String | Test.java:232:20:232:31 | map : TransformedSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6451:9:6451:24 | getMapValue(...) | -| Test.java:6456:68:6456:101 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | Test.java:260:135:260:135 | x : ListOrderedSet [, ] : String | Test.java:6456:39:6456:102 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | -| Test.java:6456:85:6456:100 | (...)... : String | Test.java:286:46:286:50 | key : String | Test.java:286:62:286:116 | new TiedMapEntry(...) : TiedMapEntry [] : String | Test.java:6456:68:6456:101 | newTMEWithMapKey(...) : TiedMapEntry [] : String | -| Test.java:6458:28:6458:42 | getElement(...) : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | Test.java:238:62:238:79 | getKey(...) : String | Test.java:6458:9:6458:43 | getMapKeyFromEntry(...) | -| Test.java:6458:39:6458:41 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:6458:28:6458:42 | getElement(...) : Entry [] : String | -| Test.java:6463:68:6463:103 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | Test.java:260:135:260:135 | x : ListOrderedSet [, ] : String | Test.java:6463:39:6463:104 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | -| Test.java:6463:87:6463:102 | (...)... : String | Test.java:305:48:305:54 | value : String | Test.java:305:66:305:127 | new TiedMapEntry(...) : TiedMapEntry [] : String | Test.java:6463:68:6463:103 | newTMEWithMapValue(...) : TiedMapEntry [] : String | -| Test.java:6465:30:6465:44 | getElement(...) : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | Test.java:244:64:244:83 | getValue(...) : String | Test.java:6465:9:6465:45 | getMapValueFromEntry(...) | -| Test.java:6465:41:6465:43 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:6465:30:6465:44 | getElement(...) : Entry [] : String | -| Test.java:6472:19:6472:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6472:9:6472:22 | getMapKey(...) | -| Test.java:6479:21:6479:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6479:9:6479:24 | getMapValue(...) | -| Test.java:6484:48:6484:63 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:6484:20:6484:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | -| Test.java:6486:19:6486:21 | out : OrderedMap [] : String | Test.java:228:18:228:29 | map : OrderedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6486:9:6486:22 | getMapKey(...) | -| Test.java:6491:50:6491:65 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:6491:20:6491:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | -| Test.java:6493:21:6493:23 | out : OrderedMap [] : String | Test.java:232:20:232:31 | map : OrderedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6493:9:6493:24 | getMapValue(...) | -| Test.java:6498:40:6498:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:6498:19:6498:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | -| Test.java:6500:19:6500:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6500:9:6500:22 | getMapKey(...) | -| Test.java:6505:42:6505:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:6505:19:6505:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | -| Test.java:6507:21:6507:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6507:9:6507:24 | getMapValue(...) | -| Test.java:6514:19:6514:21 | out : ArrayListValuedHashMap [] : String | Test.java:240:18:240:46 | container : ArrayListValuedHashMap [] : String | Test.java:240:58:240:93 | next(...) : String | Test.java:6514:9:6514:22 | getMapKey(...) | -| Test.java:6521:20:6521:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6521:9:6521:36 | getElement(...) | -| Test.java:6521:32:6521:34 | out : ArrayListValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : ArrayListValuedHashMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | Test.java:6521:20:6521:35 | getMapValue(...) : Collection [] : String | -| Test.java:6526:45:6526:60 | (...)... : String | Test.java:290:60:290:66 | value : String | Test.java:290:166:290:166 | m : ArrayListValuedHashMap [, ] : String | Test.java:6526:24:6526:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | -| Test.java:6528:20:6528:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6528:9:6528:36 | getElement(...) | -| Test.java:6528:32:6528:34 | out : ArrayListValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : ArrayListValuedHashMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | Test.java:6528:20:6528:35 | getMapValue(...) : Collection [] : String | -| Test.java:6533:43:6533:58 | (...)... : String | Test.java:272:58:272:62 | key : String | Test.java:272:160:272:160 | m : ArrayListValuedHashMap [] : String | Test.java:6533:24:6533:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | -| Test.java:6535:19:6535:21 | out : ArrayListValuedHashMap [] : String | Test.java:240:18:240:46 | container : ArrayListValuedHashMap [] : String | Test.java:240:58:240:93 | next(...) : String | Test.java:6535:9:6535:22 | getMapKey(...) | -| Test.java:6542:19:6542:21 | out : HashSetValuedHashMap [] : String | Test.java:240:18:240:46 | container : HashSetValuedHashMap [] : String | Test.java:240:58:240:93 | next(...) : String | Test.java:6542:9:6542:22 | getMapKey(...) | -| Test.java:6549:20:6549:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6549:9:6549:36 | getElement(...) | -| Test.java:6549:32:6549:34 | out : HashSetValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : HashSetValuedHashMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | Test.java:6549:20:6549:35 | getMapValue(...) : Collection [] : String | -| Test.java:6554:45:6554:60 | (...)... : String | Test.java:290:60:290:66 | value : String | Test.java:290:166:290:166 | m : ArrayListValuedHashMap [, ] : String | Test.java:6554:24:6554:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | -| Test.java:6556:20:6556:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6556:9:6556:36 | getElement(...) | -| Test.java:6556:32:6556:34 | out : HashSetValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : HashSetValuedHashMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | Test.java:6556:20:6556:35 | getMapValue(...) : Collection [] : String | -| Test.java:6561:43:6561:58 | (...)... : String | Test.java:272:58:272:62 | key : String | Test.java:272:160:272:160 | m : ArrayListValuedHashMap [] : String | Test.java:6561:24:6561:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | -| Test.java:6563:19:6563:21 | out : HashSetValuedHashMap [] : String | Test.java:240:18:240:46 | container : HashSetValuedHashMap [] : String | Test.java:240:58:240:93 | next(...) : String | Test.java:6563:9:6563:22 | getMapKey(...) | -| Test.java:6568:45:6568:60 | (...)... : String | Test.java:290:60:290:66 | value : String | Test.java:290:166:290:166 | m : ArrayListValuedHashMap [, ] : String | Test.java:6568:24:6568:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | -| Test.java:6570:20:6570:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6570:9:6570:36 | getElement(...) | -| Test.java:6570:32:6570:34 | out : TransformedMultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : TransformedMultiValuedMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | Test.java:6570:20:6570:35 | getMapValue(...) : Collection [] : String | -| Test.java:6575:43:6575:58 | (...)... : String | Test.java:272:58:272:62 | key : String | Test.java:272:160:272:160 | m : ArrayListValuedHashMap [] : String | Test.java:6575:24:6575:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | -| Test.java:6577:19:6577:21 | out : TransformedMultiValuedMap [] : String | Test.java:240:18:240:46 | container : TransformedMultiValuedMap [] : String | Test.java:240:58:240:93 | next(...) : String | Test.java:6577:9:6577:22 | getMapKey(...) | -| Test.java:6582:45:6582:60 | (...)... : String | Test.java:290:60:290:66 | value : String | Test.java:290:166:290:166 | m : ArrayListValuedHashMap [, ] : String | Test.java:6582:24:6582:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | -| Test.java:6584:20:6584:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6584:9:6584:36 | getElement(...) | -| Test.java:6584:32:6584:34 | out : UnmodifiableMultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : UnmodifiableMultiValuedMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | Test.java:6584:20:6584:35 | getMapValue(...) : Collection [] : String | -| Test.java:6589:43:6589:58 | (...)... : String | Test.java:272:58:272:62 | key : String | Test.java:272:160:272:160 | m : ArrayListValuedHashMap [] : String | Test.java:6589:24:6589:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | -| Test.java:6591:19:6591:21 | out : UnmodifiableMultiValuedMap [] : String | Test.java:240:18:240:46 | container : UnmodifiableMultiValuedMap [] : String | Test.java:240:58:240:93 | next(...) : String | Test.java:6591:9:6591:22 | getMapKey(...) | -| Test.java:6596:42:6596:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:6596:20:6596:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:6598:20:6598:22 | out : HashMultiSet [] : String | Test.java:230:19:230:32 | it : HashMultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6598:9:6598:23 | getElement(...) | -| Test.java:6603:45:6603:60 | (...)... : String | Test.java:258:49:258:57 | element : String | Test.java:258:127:258:127 | x : HashMultiSet [] : String | Test.java:6603:18:6603:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | -| Test.java:6605:20:6605:22 | out : PredicatedMultiSet [] : String | Test.java:230:19:230:32 | it : PredicatedMultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6605:9:6605:23 | getElement(...) | -| Test.java:6610:45:6610:60 | (...)... : String | Test.java:258:49:258:57 | element : String | Test.java:258:127:258:127 | x : HashMultiSet [] : String | Test.java:6610:18:6610:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | -| Test.java:6612:20:6612:22 | out : SynchronizedMultiSet [] : String | Test.java:230:19:230:32 | it : SynchronizedMultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6612:9:6612:23 | getElement(...) | -| Test.java:6617:45:6617:60 | (...)... : String | Test.java:258:49:258:57 | element : String | Test.java:258:127:258:127 | x : HashMultiSet [] : String | Test.java:6617:18:6617:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | -| Test.java:6619:20:6619:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6619:9:6619:23 | getElement(...) | -| Test.java:6688:42:6688:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:6688:20:6688:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:6690:20:6690:22 | out : CircularFifoQueue [] : String | Test.java:230:19:230:32 | it : CircularFifoQueue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6690:9:6690:23 | getElement(...) | -| Test.java:6695:59:6695:74 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:6695:27:6695:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:6702:47:6702:62 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:6702:15:6702:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:6704:20:6704:22 | out : PredicatedQueue [] : String | Test.java:230:19:230:32 | it : PredicatedQueue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6704:9:6704:23 | getElement(...) | -| Test.java:6709:47:6709:62 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:6709:15:6709:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:6711:20:6711:22 | out : SynchronizedQueue [] : String | Test.java:230:19:230:32 | it : SynchronizedQueue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6711:9:6711:23 | getElement(...) | -| Test.java:6716:47:6716:62 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:6716:15:6716:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:6718:20:6718:22 | out : TransformedQueue [] : String | Test.java:230:19:230:32 | it : TransformedQueue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6718:9:6718:23 | getElement(...) | -| Test.java:6723:47:6723:62 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:6723:15:6723:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | -| Test.java:6725:20:6725:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6725:9:6725:23 | getElement(...) | -| Test.java:6730:44:6730:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6730:22:6730:60 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6731:46:6731:47 | in : TreeSet [] : String | Test.java:7243:42:7243:66 | set : TreeSet [] : String | Test.java:7243:10:7243:40 | parameter this [Return] : MyAbstractNavigableSetDecorator [] : String | Test.java:6731:10:6731:48 | new MyAbstractNavigableSetDecorator<>(...) : MyAbstractNavigableSetDecorator [] : String | -| Test.java:6732:20:6732:22 | out : MyAbstractNavigableSetDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractNavigableSetDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6732:9:6732:23 | getElement(...) | -| Test.java:6737:42:6737:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6737:13:6737:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6738:37:6738:38 | in : ListOrderedSet [] : String | Test.java:7249:33:7249:48 | set : ListOrderedSet [] : String | Test.java:7249:10:7249:31 | parameter this [Return] : MyAbstractSetDecorator [] : String | Test.java:6738:10:6738:39 | new MyAbstractSetDecorator<>(...) : MyAbstractSetDecorator [] : String | -| Test.java:6739:20:6739:22 | out : MyAbstractSetDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSetDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6739:9:6739:23 | getElement(...) | -| Test.java:6744:42:6744:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6744:13:6744:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6745:43:6745:44 | in : ListOrderedSet [] : String | Test.java:7255:39:7255:54 | set : ListOrderedSet [] : String | Test.java:7255:10:7255:37 | parameter this [Return] : MyAbstractSortedSetDecorator [] : String | Test.java:6745:10:6745:45 | new MyAbstractSortedSetDecorator<>(...) : MyAbstractSortedSetDecorator [] : String | -| Test.java:6746:20:6746:22 | out : MyAbstractSortedSetDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSortedSetDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6746:9:6746:23 | getElement(...) | -| Test.java:6754:20:6754:22 | out : CompositeSet [] : Object | Test.java:230:19:230:32 | it : CompositeSet [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6754:9:6754:23 | getElement(...) | -| Test.java:6762:20:6762:34 | getElement(...) : Set [] : Object | Test.java:230:19:230:32 | it : Set [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6762:9:6762:35 | getElement(...) | -| Test.java:6762:31:6762:33 | out : List [, ] : Object | Test.java:230:19:230:32 | it : List [, ] : Object | Test.java:230:44:230:63 | next(...) : Object [] : Object | Test.java:6762:20:6762:34 | getElement(...) : Set [] : Object | -| Test.java:6767:42:6767:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:6767:20:6767:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:6770:20:6770:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6770:9:6770:23 | getElement(...) | -| Test.java:6775:42:6775:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:6775:20:6775:58 | newTreeBagWithElement(...) : TreeBag [] : String | -| Test.java:6778:20:6778:34 | getElement(...) : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6778:9:6778:35 | getElement(...) | -| Test.java:6778:31:6778:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:6778:20:6778:34 | getElement(...) : Set [] : String | -| Test.java:6783:42:6783:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6783:13:6783:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6785:20:6785:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6785:9:6785:23 | getElement(...) | -| Test.java:6790:54:6790:69 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6790:25:6790:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6792:20:6792:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6792:9:6792:23 | getElement(...) | -| Test.java:6797:42:6797:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6797:13:6797:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6799:20:6799:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6799:9:6799:23 | getElement(...) | -| Test.java:6804:42:6804:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6804:13:6804:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6806:20:6806:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6806:9:6806:23 | getElement(...) | -| Test.java:6811:42:6811:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6811:13:6811:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6813:20:6813:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6813:9:6813:23 | getElement(...) | -| Test.java:6818:54:6818:69 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6818:25:6818:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6820:20:6820:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6820:9:6820:23 | getElement(...) | -| Test.java:6825:57:6825:72 | (...)... : String | Test.java:254:49:254:57 | element : String | Test.java:254:69:254:126 | new CompositeSet(...) : CompositeSet [] : String | Test.java:6825:30:6825:73 | newCompositeSetWithElement(...) : CompositeSet [] : String | -| Test.java:6827:20:6827:34 | getElement(...) : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6827:9:6827:35 | getElement(...) | -| Test.java:6827:31:6827:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:6827:20:6827:34 | getElement(...) : Set [] : String | -| Test.java:6832:49:6832:64 | (...)... : String | Test.java:254:49:254:57 | element : String | Test.java:254:69:254:126 | new CompositeSet(...) : CompositeSet [] : String | Test.java:6832:22:6832:65 | newCompositeSetWithElement(...) : CompositeSet [] : String | -| Test.java:6834:20:6834:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6834:9:6834:23 | getElement(...) | -| Test.java:6841:20:6841:22 | out : ListOrderedSet [] : Object | Test.java:230:19:230:32 | it : ListOrderedSet [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6841:9:6841:23 | getElement(...) | -| Test.java:6848:20:6848:22 | out : ListOrderedSet [] : String | Test.java:230:19:230:32 | it : ListOrderedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6848:9:6848:23 | getElement(...) | -| Test.java:6853:53:6853:68 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6853:24:6853:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6855:20:6855:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6855:9:6855:23 | getElement(...) | -| Test.java:6860:53:6860:68 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6860:24:6860:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6869:20:6869:22 | out : ListOrderedSet [] : String | Test.java:230:19:230:32 | it : ListOrderedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6869:9:6869:23 | getElement(...) | -| Test.java:6874:42:6874:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6874:13:6874:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6876:20:6876:22 | out : ListOrderedSet [] : String | Test.java:230:19:230:32 | it : ListOrderedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6876:9:6876:23 | getElement(...) | -| Test.java:6883:20:6883:22 | out : MapBackedSet [] : String | Test.java:230:19:230:32 | it : MapBackedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6883:9:6883:23 | getElement(...) | -| Test.java:6890:20:6890:22 | out : MapBackedSet [] : String | Test.java:230:19:230:32 | it : MapBackedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6890:9:6890:23 | getElement(...) | -| Test.java:6895:44:6895:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6895:22:6895:60 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6897:20:6897:22 | out : PredicatedNavigableSet [] : String | Test.java:230:19:230:32 | it : PredicatedNavigableSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6897:9:6897:23 | getElement(...) | -| Test.java:6902:42:6902:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6902:13:6902:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6904:20:6904:22 | out : PredicatedSet [] : String | Test.java:230:19:230:32 | it : PredicatedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6904:9:6904:23 | getElement(...) | -| Test.java:6909:41:6909:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6909:19:6909:57 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6911:20:6911:22 | out : PredicatedSortedSet [] : String | Test.java:230:19:230:32 | it : PredicatedSortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6911:9:6911:23 | getElement(...) | -| Test.java:6916:44:6916:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6916:22:6916:60 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6918:20:6918:22 | out : TransformedNavigableSet [] : String | Test.java:230:19:230:32 | it : TransformedNavigableSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6918:9:6918:23 | getElement(...) | -| Test.java:6923:42:6923:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6923:13:6923:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6925:20:6925:22 | out : TransformedSet [] : String | Test.java:230:19:230:32 | it : TransformedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6925:9:6925:23 | getElement(...) | -| Test.java:6930:41:6930:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6930:19:6930:57 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6932:20:6932:22 | out : TransformedSortedSet [] : String | Test.java:230:19:230:32 | it : TransformedSortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6932:9:6932:23 | getElement(...) | -| Test.java:6937:44:6937:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6937:22:6937:60 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6939:20:6939:22 | out : NavigableSet [] : String | Test.java:230:19:230:32 | it : NavigableSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6939:9:6939:23 | getElement(...) | -| Test.java:6944:42:6944:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6944:13:6944:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | -| Test.java:6946:20:6946:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6946:9:6946:23 | getElement(...) | -| Test.java:6951:41:6951:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6951:19:6951:57 | newTreeSetWithElement(...) : TreeSet [] : String | -| Test.java:6953:20:6953:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6953:9:6953:23 | getElement(...) | -| Test.java:6960:26:6960:28 | out : AbstractIterableGetMapDecorator [] : String | Test.java:241:25:241:42 | container : AbstractIterableGetMapDecorator [] : String | Test.java:241:54:241:89 | next(...) : String | Test.java:6960:9:6960:29 | getMapKeyFromGet(...) | -| Test.java:6967:28:6967:30 | out : AbstractIterableGetMapDecorator [] : String | Test.java:248:27:248:44 | container : AbstractIterableGetMapDecorator [] : String | Test.java:248:56:248:74 | get(...) : String | Test.java:6967:9:6967:31 | getMapValueFromGet(...) | -| Test.java:6974:26:6974:28 | out : TransformedSplitMap [] : String | Test.java:241:25:241:42 | container : TransformedSplitMap [] : String | Test.java:241:54:241:89 | next(...) : String | Test.java:6974:9:6974:29 | getMapKeyFromGet(...) | -| Test.java:6981:28:6981:30 | out : TransformedSplitMap [] : String | Test.java:248:27:248:44 | container : TransformedSplitMap [] : String | Test.java:248:56:248:74 | get(...) : String | Test.java:6981:9:6981:31 | getMapValueFromGet(...) | -| Test.java:6988:19:6988:21 | out : PatriciaTrie [] : String | Test.java:228:18:228:29 | map : PatriciaTrie [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6988:9:6988:22 | getMapKey(...) | -| Test.java:6995:21:6995:23 | out : PatriciaTrie [] : String | Test.java:232:20:232:31 | map : PatriciaTrie [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6995:9:6995:24 | getMapValue(...) | -| Test.java:6999:56:6999:71 | (...)... : String | Test.java:288:49:288:58 | key : String | Test.java:288:134:288:134 | m : PatriciaTrie [] : String | Test.java:6999:30:6999:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | -| Test.java:7002:28:7002:30 | out : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | Test.java:238:62:238:79 | getKey(...) : String | Test.java:7002:9:7002:31 | getMapKeyFromEntry(...) | -| Test.java:7006:58:7006:73 | (...)... : String | Test.java:307:50:307:56 | value : String | Test.java:307:129:307:129 | m : PatriciaTrie [] : String | Test.java:7006:30:7006:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | -| Test.java:7009:30:7009:32 | out : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | Test.java:244:64:244:83 | getValue(...) : String | Test.java:7009:9:7009:33 | getMapValueFromEntry(...) | -| Test.java:7013:56:7013:71 | (...)... : String | Test.java:288:49:288:58 | key : String | Test.java:288:134:288:134 | m : PatriciaTrie [] : String | Test.java:7013:30:7013:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | -| Test.java:7020:58:7020:73 | (...)... : String | Test.java:307:50:307:56 | value : String | Test.java:307:129:307:129 | m : PatriciaTrie [] : String | Test.java:7020:30:7020:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | -| Test.java:7028:40:7028:55 | (...)... : String | Test.java:288:49:288:58 | key : String | Test.java:288:134:288:134 | m : PatriciaTrie [] : String | Test.java:7028:14:7028:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | -| Test.java:7030:19:7030:21 | out : Trie [] : String | Test.java:228:18:228:29 | map : Trie [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:7030:9:7030:22 | getMapKey(...) | -| Test.java:7035:42:7035:57 | (...)... : String | Test.java:307:50:307:56 | value : String | Test.java:307:129:307:129 | m : PatriciaTrie [] : String | Test.java:7035:14:7035:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | -| Test.java:7037:21:7037:23 | out : Trie [] : String | Test.java:232:20:232:31 | map : Trie [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:7037:9:7037:24 | getMapValue(...) | +| Test.java:3430:47:3430:49 | out : MultiMap [, ] : Object | Test.java:232:20:232:31 | map : MultiMap [, ] : Object | Test.java:232:43:232:55 | get(...) : Object [] : Object | Test.java:3430:35:3430:50 | getMapValue(...) : Object [] : Object | +| Test.java:3438:21:3438:23 | out : BidiMap [] : Object | Test.java:232:20:232:31 | map : BidiMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:3438:9:3438:24 | getMapValue(...) | +| Test.java:3445:21:3445:23 | out : AbstractMapDecorator [] : Object | Test.java:232:20:232:31 | map : AbstractMapDecorator [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:3445:9:3445:24 | getMapValue(...) | +| Test.java:3450:38:3450:53 | (...)... : String | Test.java:293:51:293:57 | value : String | Test.java:293:131:293:131 | m : HashedMap [] : String | Test.java:3450:13:3450:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | +| Test.java:3457:42:3457:57 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:3457:23:3457:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:3464:44:3464:59 | (...)... : String | Test.java:306:77:306:83 | value : String | Test.java:306:161:306:161 | m : TreeBidiMap [] : String | Test.java:3464:17:3464:60 | newTreeBidiMapWithMapValue(...) : TreeBidiMap [] : String | +| Test.java:3471:49:3471:64 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:3471:30:3471:65 | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:3478:34:3478:49 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:3478:13:3478:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:3480:26:3480:28 | out : Put [] : String | Test.java:242:27:242:44 | container : Put [] : String | Test.java:242:56:242:85 | getMapKey(...) : String | Test.java:3480:9:3480:29 | getMapKeyFromPut(...) | +| Test.java:3485:34:3485:49 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:3485:13:3485:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:3487:19:3487:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3487:9:3487:22 | getMapKey(...) | +| Test.java:3492:34:3492:49 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:3492:13:3492:50 | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:3494:19:3494:21 | out : AbstractMapDecorator [] : String | Test.java:228:18:228:29 | map : AbstractMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3494:9:3494:22 | getMapKey(...) | +| Test.java:3499:36:3499:51 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:3499:13:3499:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:3501:28:3501:30 | out : Put [] : String | Test.java:249:29:249:46 | container : Put [] : String | Test.java:249:58:249:89 | getMapValue(...) : String | Test.java:3501:9:3501:31 | getMapValueFromPut(...) | +| Test.java:3506:36:3506:51 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:3506:13:3506:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:3508:21:3508:23 | out : MultiValueMap [] : String | Test.java:232:20:232:31 | map : MultiValueMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3508:9:3508:24 | getMapValue(...) | +| Test.java:3513:36:3513:51 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:3513:13:3513:52 | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:3515:21:3515:23 | out : AbstractMapDecorator [] : String | Test.java:232:20:232:31 | map : AbstractMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3515:9:3515:24 | getMapValue(...) | +| Test.java:3520:35:3520:50 | (...)... : String | Test.java:265:35:265:43 | element : String | Test.java:265:109:265:109 | q : LinkedList [] : String | Test.java:3520:15:3520:51 | newQueueWithElement(...) : LinkedList [] : String | +| Test.java:3522:20:3522:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3522:9:3522:23 | getElement(...) | +| Test.java:3527:35:3527:50 | (...)... : String | Test.java:265:35:265:43 | element : String | Test.java:265:109:265:109 | q : LinkedList [] : String | Test.java:3527:15:3527:51 | newQueueWithElement(...) : LinkedList [] : String | +| Test.java:3529:20:3529:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3529:9:3529:23 | getElement(...) | +| Test.java:3534:35:3534:50 | (...)... : String | Test.java:265:35:265:43 | element : String | Test.java:265:109:265:109 | q : LinkedList [] : String | Test.java:3534:15:3534:51 | newQueueWithElement(...) : LinkedList [] : String | +| Test.java:3536:20:3536:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3536:9:3536:23 | getElement(...) | +| Test.java:3541:35:3541:50 | (...)... : String | Test.java:265:35:265:43 | element : String | Test.java:265:109:265:109 | q : LinkedList [] : String | Test.java:3541:15:3541:51 | newQueueWithElement(...) : LinkedList [] : String | +| Test.java:3543:20:3543:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3543:9:3543:23 | getElement(...) | +| Test.java:3548:48:3548:63 | (...)... : String | Test.java:266:41:266:49 | element : String | Test.java:266:113:266:113 | s : MySetView [] : String | Test.java:3548:26:3548:64 | newSetViewWithElement(...) : MySetView [] : String | +| Test.java:3550:20:3550:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3550:9:3550:23 | getElement(...) | +| Test.java:3555:41:3555:56 | (...)... : String | Test.java:266:41:266:49 | element : String | Test.java:266:113:266:113 | s : MySetView [] : String | Test.java:3555:19:3555:57 | newSetViewWithElement(...) : MySetView [] : String | +| Test.java:3556:10:3556:11 | in : MySetView [] : String | Test.java:7076:15:7076:30 | parameter this : MySetView [] : String | Test.java:7076:43:7076:58 | createIterator(...) : Iterator [] : String | Test.java:3556:10:3556:30 | myCreateIterator(...) : Iterator [] : String | +| Test.java:3557:20:3557:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:3557:9:3557:23 | getElement(...) | +| Test.java:3562:41:3562:56 | (...)... : String | Test.java:266:41:266:49 | element : String | Test.java:266:113:266:113 | s : MySetView [] : String | Test.java:3562:19:3562:57 | newSetViewWithElement(...) : MySetView [] : String | +| Test.java:3564:20:3564:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3564:9:3564:23 | getElement(...) | +| Test.java:3569:35:3569:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3569:13:3569:51 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3571:20:3571:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3571:9:3571:23 | getElement(...) | +| Test.java:3576:35:3576:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3576:13:3576:51 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3578:20:3578:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3578:9:3578:23 | getElement(...) | +| Test.java:3583:35:3583:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3583:13:3583:51 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3585:20:3585:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3585:9:3585:23 | getElement(...) | +| Test.java:3599:20:3599:22 | out : HashSet [] : Object | Test.java:230:19:230:32 | it : HashSet [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:3599:9:3599:23 | getElement(...) | +| Test.java:3604:35:3604:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3604:13:3604:51 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3606:20:3606:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3606:9:3606:23 | getElement(...) | +| Test.java:3611:35:3611:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3611:13:3611:51 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3613:20:3613:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3613:9:3613:23 | getElement(...) | +| Test.java:3618:35:3618:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3618:13:3618:51 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3620:20:3620:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3620:9:3620:23 | getElement(...) | +| Test.java:3625:44:3625:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3625:22:3625:60 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3627:20:3627:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3627:9:3627:23 | getElement(...) | +| Test.java:3632:35:3632:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3632:13:3632:51 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3634:20:3634:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3634:9:3634:23 | getElement(...) | +| Test.java:3639:41:3639:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3639:19:3639:57 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3641:20:3641:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3641:9:3641:23 | getElement(...) | +| Test.java:3646:35:3646:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3646:13:3646:51 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3648:20:3648:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3648:9:3648:23 | getElement(...) | +| Test.java:3653:41:3653:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3653:19:3653:57 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3655:20:3655:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3655:9:3655:23 | getElement(...) | +| Test.java:3660:44:3660:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3660:22:3660:60 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3662:20:3662:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3662:9:3662:23 | getElement(...) | +| Test.java:3667:35:3667:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3667:13:3667:51 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3669:20:3669:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3669:9:3669:23 | getElement(...) | +| Test.java:3674:41:3674:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3674:19:3674:57 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3676:20:3676:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3676:9:3676:23 | getElement(...) | +| Test.java:3681:35:3681:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3681:13:3681:51 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3683:20:3683:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3683:9:3683:23 | getElement(...) | +| Test.java:3688:35:3688:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3688:13:3688:51 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3690:20:3690:22 | out : SetView [] : String | Test.java:230:19:230:32 | it : SetView [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3690:9:3690:23 | getElement(...) | +| Test.java:3695:44:3695:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3695:22:3695:60 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3697:20:3697:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3697:9:3697:23 | getElement(...) | +| Test.java:3704:20:3704:22 | out : Set [] : Object | Test.java:230:19:230:32 | it : Set [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:3704:9:3704:23 | getElement(...) | +| Test.java:3709:35:3709:50 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3709:13:3709:51 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3711:20:3711:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3711:9:3711:23 | getElement(...) | +| Test.java:3716:41:3716:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:3716:19:3716:57 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:3718:20:3718:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3718:9:3718:23 | getElement(...) | +| Test.java:3723:41:3723:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3723:19:3723:57 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3730:41:3730:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3730:19:3730:57 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3737:36:3737:51 | (...)... : String | Test.java:275:49:275:53 | key : String | Test.java:275:125:275:125 | m : HashedMap [] : String | Test.java:3737:13:3737:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | +| Test.java:3739:19:3739:21 | out : IterableMap [] : String | Test.java:228:18:228:29 | map : IterableMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3739:9:3739:22 | getMapKey(...) | +| Test.java:3744:38:3744:53 | (...)... : String | Test.java:293:51:293:57 | value : String | Test.java:293:131:293:131 | m : HashedMap [] : String | Test.java:3744:13:3744:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | +| Test.java:3746:21:3746:23 | out : IterableMap [] : String | Test.java:232:20:232:31 | map : IterableMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3746:9:3746:24 | getMapValue(...) | +| Test.java:3751:36:3751:51 | (...)... : String | Test.java:275:49:275:53 | key : String | Test.java:275:125:275:125 | m : HashedMap [] : String | Test.java:3751:13:3751:52 | newHashedMapWithMapKey(...) : HashedMap [] : String | +| Test.java:3753:19:3753:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3753:9:3753:22 | getMapKey(...) | +| Test.java:3758:38:3758:53 | (...)... : String | Test.java:293:51:293:57 | value : String | Test.java:293:131:293:131 | m : HashedMap [] : String | Test.java:3758:13:3758:54 | newHashedMapWithMapValue(...) : HashedMap [] : String | +| Test.java:3760:21:3760:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3760:9:3760:24 | getMapValue(...) | +| Test.java:3765:40:3765:55 | (...)... : String | Test.java:288:49:288:58 | key : String | Test.java:288:134:288:134 | m : PatriciaTrie [] : String | Test.java:3765:14:3765:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | +| Test.java:3767:19:3767:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3767:9:3767:22 | getMapKey(...) | +| Test.java:3772:42:3772:57 | (...)... : String | Test.java:307:50:307:56 | value : String | Test.java:307:129:307:129 | m : PatriciaTrie [] : String | Test.java:3772:14:3772:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | +| Test.java:3774:21:3774:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3774:9:3774:24 | getMapValue(...) | +| Test.java:3779:40:3779:55 | (...)... : String | Test.java:288:49:288:58 | key : String | Test.java:288:134:288:134 | m : PatriciaTrie [] : String | Test.java:3779:14:3779:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | +| Test.java:3781:19:3781:21 | out : Trie [] : String | Test.java:228:18:228:29 | map : Trie [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3781:9:3781:22 | getMapKey(...) | +| Test.java:3786:42:3786:57 | (...)... : String | Test.java:307:50:307:56 | value : String | Test.java:307:129:307:129 | m : PatriciaTrie [] : String | Test.java:3786:14:3786:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | +| Test.java:3788:21:3788:23 | out : Trie [] : String | Test.java:232:20:232:31 | map : Trie [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3788:9:3788:24 | getMapValue(...) | +| Test.java:3793:35:3793:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3793:13:3793:51 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3794:37:3794:38 | in : TreeBag [] : String | Test.java:7098:33:7098:48 | bag : TreeBag [] : String | Test.java:7098:10:7098:31 | parameter this [Return] : MyAbstractBagDecorator [] : String | Test.java:3794:10:3794:39 | new MyAbstractBagDecorator<>(...) : MyAbstractBagDecorator [] : String | +| Test.java:3795:20:3795:22 | out : MyAbstractBagDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractBagDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3795:9:3795:23 | getElement(...) | +| Test.java:3801:31:3801:32 | in : Map [] : String | Test.java:7104:27:7104:58 | map : Map [] : String | Test.java:7104:10:7104:25 | parameter this [Return] : MyAbstractMapBag [] : String | Test.java:3801:10:3801:33 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | +| Test.java:3802:20:3802:22 | out : MyAbstractMapBag [] : String | Test.java:230:19:230:32 | it : MyAbstractMapBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3802:9:3802:23 | getElement(...) | +| Test.java:3807:47:3807:76 | of(...) : Map [] : String | Test.java:7104:27:7104:58 | map : Map [] : String | Test.java:7104:10:7104:25 | parameter this [Return] : MyAbstractMapBag [] : String | Test.java:3807:26:3807:77 | new MyAbstractMapBag<>(...) : MyAbstractMapBag [] : String | +| Test.java:3808:10:3808:11 | in : MyAbstractMapBag [] : String | Test.java:7107:33:7107:40 | parameter this : MyAbstractMapBag [] : String | Test.java:7108:11:7108:24 | getMap(...) : Map [] : String | Test.java:3808:10:3808:22 | myGetMap(...) : Map [] : String | +| Test.java:3809:19:3809:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3809:9:3809:22 | getMapKey(...) | +| Test.java:3814:41:3814:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3814:19:3814:57 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3815:43:3815:44 | in : TreeBag [] : String | Test.java:7113:39:7113:60 | bag : TreeBag [] : String | Test.java:7113:10:7113:37 | parameter this [Return] : MyAbstractSortedBagDecorator [] : String | Test.java:3815:10:3815:45 | new MyAbstractSortedBagDecorator<>(...) : MyAbstractSortedBagDecorator [] : String | +| Test.java:3816:20:3816:22 | out : MyAbstractSortedBagDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSortedBagDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3816:9:3816:23 | getElement(...) | +| Test.java:3821:35:3821:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3821:13:3821:51 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3823:20:3823:22 | out : CollectionBag [] : String | Test.java:230:19:230:32 | it : CollectionBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3823:9:3823:23 | getElement(...) | +| Test.java:3828:35:3828:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3828:13:3828:51 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3830:20:3830:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3830:9:3830:23 | getElement(...) | +| Test.java:3835:41:3835:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3835:19:3835:57 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3837:20:3837:22 | out : CollectionSortedBag [] : String | Test.java:230:19:230:32 | it : CollectionSortedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3837:9:3837:23 | getElement(...) | +| Test.java:3842:41:3842:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3842:19:3842:57 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3844:20:3844:22 | out : SortedBag [] : String | Test.java:230:19:230:32 | it : SortedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3844:9:3844:23 | getElement(...) | +| Test.java:3849:42:3849:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3849:20:3849:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3851:20:3851:22 | out : HashBag [] : String | Test.java:230:19:230:32 | it : HashBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3851:9:3851:23 | getElement(...) | +| Test.java:3856:35:3856:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3856:13:3856:51 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3858:20:3858:22 | out : PredicatedBag [] : String | Test.java:230:19:230:32 | it : PredicatedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3858:9:3858:23 | getElement(...) | +| Test.java:3863:41:3863:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3863:19:3863:57 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3865:20:3865:22 | out : PredicatedSortedBag [] : String | Test.java:230:19:230:32 | it : PredicatedSortedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3865:9:3865:23 | getElement(...) | +| Test.java:3870:35:3870:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3870:13:3870:51 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3872:20:3872:22 | out : SynchronizedBag [] : String | Test.java:230:19:230:32 | it : SynchronizedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3872:9:3872:23 | getElement(...) | +| Test.java:3877:41:3877:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3877:19:3877:57 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3879:20:3879:22 | out : SynchronizedSortedBag [] : String | Test.java:230:19:230:32 | it : SynchronizedSortedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3879:9:3879:23 | getElement(...) | +| Test.java:3884:35:3884:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3884:13:3884:51 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3886:20:3886:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3886:9:3886:23 | getElement(...) | +| Test.java:3891:41:3891:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3891:19:3891:57 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3893:20:3893:22 | out : TransformedSortedBag [] : String | Test.java:230:19:230:32 | it : TransformedSortedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3893:9:3893:23 | getElement(...) | +| Test.java:3898:42:3898:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3898:20:3898:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3900:20:3900:22 | out : TreeBag [] : String | Test.java:230:19:230:32 | it : TreeBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3900:9:3900:23 | getElement(...) | +| Test.java:3905:35:3905:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3905:13:3905:51 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3907:20:3907:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3907:9:3907:23 | getElement(...) | +| Test.java:3912:41:3912:56 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:3912:19:3912:57 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:3914:20:3914:22 | out : SortedBag [] : String | Test.java:230:19:230:32 | it : SortedBag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:3914:9:3914:23 | getElement(...) | +| Test.java:3919:46:3919:61 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3919:17:3919:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:3920:41:3920:42 | in : DualTreeBidiMap [] : String | Test.java:7119:37:7119:59 | map : DualTreeBidiMap [] : String | Test.java:7119:10:7119:35 | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | Test.java:3920:10:3920:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | +| Test.java:3921:19:3921:21 | out : MyAbstractBidiMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractBidiMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3921:9:3921:22 | getMapKey(...) | +| Test.java:3926:48:3926:63 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3926:17:3926:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:3927:41:3927:42 | in : DualTreeBidiMap [] : String | Test.java:7119:37:7119:59 | map : DualTreeBidiMap [] : String | Test.java:7119:10:7119:35 | parameter this [Return] : MyAbstractBidiMapDecorator [] : String | Test.java:3927:10:3927:43 | new MyAbstractBidiMapDecorator<>(...) : MyAbstractBidiMapDecorator [] : String | +| Test.java:3928:21:3928:23 | out : MyAbstractBidiMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractBidiMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3928:9:3928:24 | getMapValue(...) | +| Test.java:3933:46:3933:61 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3933:17:3933:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:3934:36:3934:37 | in : DualTreeBidiMap [] : String | Test.java:7128:32:7128:56 | normalMap : DualTreeBidiMap [] : String | Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | Test.java:3934:10:3934:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | +| Test.java:3935:19:3935:21 | out : MyAbstractDualBidiMap [] : String | Test.java:228:18:228:29 | map : MyAbstractDualBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3935:9:3935:22 | getMapKey(...) | +| Test.java:3940:46:3940:61 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3940:17:3940:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:3941:42:3941:43 | in : DualTreeBidiMap [] : String | Test.java:7128:59:7128:84 | reverseMap : DualTreeBidiMap [] : String | Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | Test.java:3941:10:3941:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | +| Test.java:3942:21:3942:23 | out : MyAbstractDualBidiMap [] : String | Test.java:232:20:232:31 | map : MyAbstractDualBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3942:9:3942:24 | getMapValue(...) | +| Test.java:3947:46:3947:61 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3947:17:3947:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:3948:48:3948:49 | in : DualTreeBidiMap [] : String | Test.java:7128:87:7128:120 | inverseBidiMap : DualTreeBidiMap [] : String | Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | Test.java:3948:10:3948:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | +| Test.java:3949:21:3949:23 | out : MyAbstractDualBidiMap [] : String | Test.java:232:20:232:31 | map : MyAbstractDualBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3949:9:3949:24 | getMapValue(...) | +| Test.java:3954:48:3954:63 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3954:17:3954:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:3955:36:3955:37 | in : DualTreeBidiMap [] : String | Test.java:7128:32:7128:56 | normalMap : DualTreeBidiMap [] : String | Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | Test.java:3955:10:3955:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | +| Test.java:3956:21:3956:23 | out : MyAbstractDualBidiMap [] : String | Test.java:232:20:232:31 | map : MyAbstractDualBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3956:9:3956:24 | getMapValue(...) | +| Test.java:3961:48:3961:63 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3961:17:3961:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:3962:42:3962:43 | in : DualTreeBidiMap [] : String | Test.java:7128:59:7128:84 | reverseMap : DualTreeBidiMap [] : String | Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | Test.java:3962:10:3962:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | +| Test.java:3963:19:3963:21 | out : MyAbstractDualBidiMap [] : String | Test.java:228:18:228:29 | map : MyAbstractDualBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3963:9:3963:22 | getMapKey(...) | +| Test.java:3968:48:3968:63 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3968:17:3968:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:3969:48:3969:49 | in : DualTreeBidiMap [] : String | Test.java:7128:87:7128:120 | inverseBidiMap : DualTreeBidiMap [] : String | Test.java:7128:10:7128:30 | parameter this [Return] : MyAbstractDualBidiMap [] : String | Test.java:3969:10:3969:50 | new MyAbstractDualBidiMap<>(...) : MyAbstractDualBidiMap [] : String | +| Test.java:3970:19:3970:21 | out : MyAbstractDualBidiMap [] : String | Test.java:228:18:228:29 | map : MyAbstractDualBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3970:9:3970:22 | getMapKey(...) | +| Test.java:3975:53:3975:68 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3975:24:3975:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:3976:48:3976:49 | in : DualTreeBidiMap [] : String | Test.java:7137:44:7137:73 | map : DualTreeBidiMap [] : String | Test.java:7137:10:7137:42 | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:3976:10:3976:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | +| Test.java:3977:19:3977:21 | out : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3977:9:3977:22 | getMapKey(...) | +| Test.java:3982:55:3982:70 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3982:24:3982:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:3983:48:3983:49 | in : DualTreeBidiMap [] : String | Test.java:7137:44:7137:73 | map : DualTreeBidiMap [] : String | Test.java:7137:10:7137:42 | parameter this [Return] : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:3983:10:3983:50 | new MyAbstractOrderedBidiMapDecorator<>(...) : MyAbstractOrderedBidiMapDecorator [] : String | +| Test.java:3984:21:3984:23 | out : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractOrderedBidiMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3984:9:3984:24 | getMapValue(...) | +| Test.java:3989:52:3989:67 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3989:23:3989:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:3990:47:3990:48 | in : DualTreeBidiMap [] : String | Test.java:7080:43:7080:71 | map : DualTreeBidiMap [] : String | Test.java:7080:10:7080:41 | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | Test.java:3990:10:3990:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | +| Test.java:3991:19:3991:21 | out : MyAbstractSortedBidiMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractSortedBidiMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:3991:9:3991:22 | getMapKey(...) | +| Test.java:3996:54:3996:69 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:3996:23:3996:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:3997:47:3997:48 | in : DualTreeBidiMap [] : String | Test.java:7080:43:7080:71 | map : DualTreeBidiMap [] : String | Test.java:7080:10:7080:41 | parameter this [Return] : MyAbstractSortedBidiMapDecorator [] : String | Test.java:3997:10:3997:49 | new MyAbstractSortedBidiMapDecorator<>(...) : MyAbstractSortedBidiMapDecorator [] : String | +| Test.java:3998:21:3998:23 | out : MyAbstractSortedBidiMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractSortedBidiMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:3998:9:3998:24 | getMapValue(...) | +| Test.java:4005:19:4005:21 | out : DualHashBidiMap [] : String | Test.java:228:18:228:29 | map : DualHashBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4005:9:4005:22 | getMapKey(...) | +| Test.java:4012:21:4012:23 | out : DualHashBidiMap [] : String | Test.java:232:20:232:31 | map : DualHashBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4012:9:4012:24 | getMapValue(...) | +| Test.java:4019:19:4019:21 | out : DualLinkedHashBidiMap [] : String | Test.java:228:18:228:29 | map : DualLinkedHashBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4019:9:4019:22 | getMapKey(...) | +| Test.java:4026:21:4026:23 | out : DualLinkedHashBidiMap [] : String | Test.java:232:20:232:31 | map : DualLinkedHashBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4026:9:4026:24 | getMapValue(...) | +| Test.java:4033:19:4033:21 | out : DualTreeBidiMap [] : String | Test.java:228:18:228:29 | map : DualTreeBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4033:9:4033:22 | getMapKey(...) | +| Test.java:4040:21:4040:23 | out : DualTreeBidiMap [] : String | Test.java:232:20:232:31 | map : DualTreeBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4040:9:4040:24 | getMapValue(...) | +| Test.java:4045:54:4045:69 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4045:25:4045:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:4047:21:4047:23 | out : OrderedBidiMap [] : String | Test.java:232:20:232:31 | map : OrderedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4047:9:4047:24 | getMapValue(...) | +| Test.java:4052:56:4052:71 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4052:25:4052:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:4054:19:4054:21 | out : OrderedBidiMap [] : String | Test.java:228:18:228:29 | map : OrderedBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4054:9:4054:22 | getMapKey(...) | +| Test.java:4059:54:4059:69 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4059:25:4059:70 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:4061:21:4061:23 | out : SortedBidiMap [] : String | Test.java:232:20:232:31 | map : SortedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4061:9:4061:24 | getMapValue(...) | +| Test.java:4066:56:4066:71 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4066:25:4066:72 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:4068:19:4068:21 | out : SortedBidiMap [] : String | Test.java:228:18:228:29 | map : SortedBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4068:9:4068:22 | getMapKey(...) | +| Test.java:4075:19:4075:21 | out : TreeBidiMap [] : String | Test.java:228:18:228:29 | map : TreeBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4075:9:4075:22 | getMapKey(...) | +| Test.java:4082:21:4082:23 | out : TreeBidiMap [] : String | Test.java:232:20:232:31 | map : TreeBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4082:9:4082:24 | getMapValue(...) | +| Test.java:4087:46:4087:61 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4087:17:4087:62 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:4089:19:4089:21 | out : BidiMap [] : String | Test.java:228:18:228:29 | map : BidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4089:9:4089:22 | getMapKey(...) | +| Test.java:4094:48:4094:63 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4094:17:4094:64 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:4096:21:4096:23 | out : BidiMap [] : String | Test.java:232:20:232:31 | map : BidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4096:9:4096:24 | getMapValue(...) | +| Test.java:4101:147:4101:162 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4101:118:4101:163 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:4103:21:4103:23 | out : OrderedBidiMap [] : String | Test.java:232:20:232:31 | map : OrderedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4103:9:4103:24 | getMapValue(...) | +| Test.java:4108:149:4108:164 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4108:118:4108:165 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:4110:19:4110:21 | out : OrderedBidiMap [] : String | Test.java:228:18:228:29 | map : OrderedBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4110:9:4110:22 | getMapKey(...) | +| Test.java:4115:53:4115:68 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4115:24:4115:69 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:4117:19:4117:21 | out : OrderedBidiMap [] : String | Test.java:228:18:228:29 | map : OrderedBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4117:9:4117:22 | getMapKey(...) | +| Test.java:4122:55:4122:70 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4122:24:4122:71 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:4124:21:4124:23 | out : OrderedBidiMap [] : String | Test.java:232:20:232:31 | map : OrderedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4124:9:4124:24 | getMapValue(...) | +| Test.java:4129:52:4129:67 | (...)... : String | Test.java:274:61:274:65 | key : String | Test.java:274:77:274:124 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4129:23:4129:68 | newDualTreeBidiMapWithMapKey(...) : DualTreeBidiMap [] : String | +| Test.java:4131:19:4131:21 | out : SortedBidiMap [] : String | Test.java:228:18:228:29 | map : SortedBidiMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:4131:9:4131:22 | getMapKey(...) | +| Test.java:4136:54:4136:69 | (...)... : String | Test.java:292:63:292:69 | value : String | Test.java:292:81:292:130 | new DualTreeBidiMap(...) : DualTreeBidiMap [] : String | Test.java:4136:23:4136:70 | newDualTreeBidiMapWithMapValue(...) : DualTreeBidiMap [] : String | +| Test.java:4138:21:4138:23 | out : SortedBidiMap [] : String | Test.java:232:20:232:31 | map : SortedBidiMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:4138:9:4138:24 | getMapValue(...) | +| Test.java:4143:42:4143:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4143:20:4143:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4144:44:4144:45 | in : TreeBag [] : String | Test.java:7143:40:7143:63 | coll : TreeBag [] : String | Test.java:7143:10:7143:38 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | Test.java:4144:10:4144:46 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | +| Test.java:4145:20:4145:22 | out : MyAbstractCollectionDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractCollectionDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4145:9:4145:23 | getElement(...) | +| Test.java:4150:73:4150:111 | newTreeBagWithElement(...) : TreeBag [] : String | Test.java:7143:40:7143:63 | coll : TreeBag [] : String | Test.java:7143:10:7143:38 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | Test.java:4150:39:4150:112 | new MyAbstractCollectionDecorator<>(...) : MyAbstractCollectionDecorator [] : String | +| Test.java:4150:95:4150:110 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4150:73:4150:111 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4151:10:4151:11 | in : MyAbstractCollectionDecorator [] : String | Test.java:7146:24:7146:34 | parameter this : MyAbstractCollectionDecorator [] : String | Test.java:7147:11:7147:27 | decorated(...) : Collection [] : String | Test.java:4151:10:4151:25 | myDecorated(...) : Collection [] : String | +| Test.java:4152:20:4152:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4152:9:4152:23 | getElement(...) | +| Test.java:4157:42:4157:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4157:20:4157:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4158:24:4158:25 | in : TreeBag [] : String | Test.java:7149:31:7149:54 | coll : TreeBag [] : String | Test.java:7149:15:7149:29 | parameter this [Return] : MyAbstractCollectionDecorator [] : String | Test.java:4158:4:4158:6 | out [post update] : MyAbstractCollectionDecorator [] : String | +| Test.java:4159:20:4159:22 | out : MyAbstractCollectionDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractCollectionDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4159:9:4159:23 | getElement(...) | +| Test.java:4167:20:4167:22 | out : CompositeCollection [] : Object | Test.java:230:19:230:32 | it : CompositeCollection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:4167:9:4167:23 | getElement(...) | +| Test.java:4175:20:4175:34 | getElement(...) : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:4175:9:4175:35 | getElement(...) | +| Test.java:4175:31:4175:33 | out : List [, ] : Object | Test.java:230:19:230:32 | it : List [, ] : Object | Test.java:230:44:230:63 | next(...) : Object [] : Object | Test.java:4175:20:4175:34 | getElement(...) : Collection [] : Object | +| Test.java:4180:42:4180:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4180:20:4180:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4183:20:4183:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4183:9:4183:23 | getElement(...) | +| Test.java:4188:42:4188:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4188:20:4188:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4191:20:4191:34 | getElement(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4191:9:4191:35 | getElement(...) | +| Test.java:4191:31:4191:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:4191:20:4191:34 | getElement(...) : Collection [] : String | +| Test.java:4196:42:4196:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4196:20:4196:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4198:20:4198:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4198:9:4198:23 | getElement(...) | +| Test.java:4203:42:4203:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4203:20:4203:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4205:20:4205:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4205:9:4205:23 | getElement(...) | +| Test.java:4210:42:4210:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4210:20:4210:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4212:20:4212:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4212:9:4212:23 | getElement(...) | +| Test.java:4217:61:4217:76 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4217:39:4217:77 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4219:20:4219:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4219:9:4219:23 | getElement(...) | +| Test.java:4224:42:4224:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4224:20:4224:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4226:20:4226:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4226:9:4226:23 | getElement(...) | +| Test.java:4231:42:4231:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4231:20:4231:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4233:20:4233:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4233:9:4233:23 | getElement(...) | +| Test.java:4238:42:4238:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4238:20:4238:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4240:20:4240:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4240:9:4240:23 | getElement(...) | +| Test.java:4245:61:4245:76 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4245:39:4245:77 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4247:20:4247:22 | out : CompositeCollection [] : String | Test.java:230:19:230:32 | it : CompositeCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4247:9:4247:23 | getElement(...) | +| Test.java:4252:75:4252:90 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4252:53:4252:91 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4254:20:4254:34 | getElement(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4254:9:4254:35 | getElement(...) | +| Test.java:4254:31:4254:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:4254:20:4254:34 | getElement(...) : Collection [] : String | +| Test.java:4259:75:4259:90 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4259:53:4259:91 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4261:20:4261:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4261:9:4261:23 | getElement(...) | +| Test.java:4266:42:4266:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4266:20:4266:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4268:20:4268:22 | out : IndexedCollection [] : String | Test.java:230:19:230:32 | it : IndexedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4268:9:4268:23 | getElement(...) | +| Test.java:4273:71:4273:86 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4273:49:4273:87 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4280:42:4280:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4280:20:4280:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4282:20:4282:22 | out : IndexedCollection [] : String | Test.java:230:19:230:32 | it : IndexedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4282:9:4282:23 | getElement(...) | +| Test.java:4287:42:4287:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4287:20:4287:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4289:20:4289:22 | out : IndexedCollection [] : String | Test.java:230:19:230:32 | it : IndexedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4289:9:4289:23 | getElement(...) | +| Test.java:4294:71:4294:86 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4294:49:4294:87 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4296:20:4296:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4296:9:4296:23 | getElement(...) | +| Test.java:4303:20:4303:45 | createPredicatedList(...) : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4303:9:4303:46 | getElement(...) | +| Test.java:4310:20:4310:45 | createPredicatedList(...) : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4310:9:4310:46 | getElement(...) | +| Test.java:4315:80:4315:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4315:38:4315:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4317:20:4317:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4317:9:4317:23 | getElement(...) | +| Test.java:4322:80:4322:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4322:38:4322:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4324:20:4324:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4324:9:4324:23 | getElement(...) | +| Test.java:4329:35:4329:50 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4329:13:4329:51 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4332:20:4332:22 | out : Bag [] : String | Test.java:230:19:230:32 | it : Bag [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4332:9:4332:23 | getElement(...) | +| Test.java:4337:80:4337:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4337:38:4337:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4339:20:4339:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4339:9:4339:23 | getElement(...) | +| Test.java:4344:80:4344:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4344:38:4344:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4346:20:4346:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4346:9:4346:23 | getElement(...) | +| Test.java:4354:20:4354:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4354:9:4354:23 | getElement(...) | +| Test.java:4359:80:4359:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4359:38:4359:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4361:20:4361:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4361:9:4361:23 | getElement(...) | +| Test.java:4366:80:4366:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4366:38:4366:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4368:20:4368:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4368:9:4368:23 | getElement(...) | +| Test.java:4373:45:4373:60 | (...)... : String | Test.java:258:49:258:57 | element : String | Test.java:258:127:258:127 | x : HashMultiSet [] : String | Test.java:4373:18:4373:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | +| Test.java:4376:20:4376:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4376:9:4376:23 | getElement(...) | +| Test.java:4381:80:4381:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4381:38:4381:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4383:20:4383:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4383:9:4383:23 | getElement(...) | +| Test.java:4388:80:4388:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4388:38:4388:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4390:20:4390:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4390:9:4390:23 | getElement(...) | +| Test.java:4395:47:4395:62 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:4395:15:4395:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:4398:20:4398:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4398:9:4398:23 | getElement(...) | +| Test.java:4403:80:4403:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4403:38:4403:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4405:20:4405:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4405:9:4405:23 | getElement(...) | +| Test.java:4410:80:4410:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4410:38:4410:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4412:20:4412:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4412:9:4412:23 | getElement(...) | +| Test.java:4417:42:4417:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:4417:13:4417:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:4420:20:4420:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4420:9:4420:23 | getElement(...) | +| Test.java:4425:80:4425:95 | (...)... : String | Test.java:264:80:264:88 | element : String | Test.java:264:194:264:194 | x : Builder [] : String | Test.java:4425:38:4425:96 | newPredicatedCollectionBuilderWithElement(...) : Builder [] : String | +| Test.java:4427:20:4427:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4427:9:4427:23 | getElement(...) | +| Test.java:4432:42:4432:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4432:20:4432:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4434:20:4434:22 | out : PredicatedCollection [] : String | Test.java:230:19:230:32 | it : PredicatedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4434:9:4434:23 | getElement(...) | +| Test.java:4439:42:4439:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4439:20:4439:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4441:20:4441:22 | out : SynchronizedCollection [] : String | Test.java:230:19:230:32 | it : SynchronizedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4441:9:4441:23 | getElement(...) | +| Test.java:4446:42:4446:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4446:20:4446:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4448:20:4448:22 | out : TransformedCollection [] : String | Test.java:230:19:230:32 | it : TransformedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4448:9:4448:23 | getElement(...) | +| Test.java:4453:42:4453:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4453:20:4453:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4455:20:4455:22 | out : BoundedCollection [] : String | Test.java:230:19:230:32 | it : BoundedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4455:9:4455:23 | getElement(...) | +| Test.java:4460:59:4460:74 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:4460:27:4460:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:4462:20:4462:22 | out : BoundedCollection [] : String | Test.java:230:19:230:32 | it : BoundedCollection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4462:9:4462:23 | getElement(...) | +| Test.java:4467:42:4467:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4467:20:4467:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4469:20:4469:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4469:9:4469:23 | getElement(...) | +| Test.java:4474:45:4474:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4474:18:4474:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4475:42:4475:43 | in : ListIterator [] : String | Test.java:7155:38:7155:63 | iterator : ListIterator [] : String | Test.java:7155:10:7155:36 | parameter this [Return] : MyAbstractIteratorDecorator [] : String | Test.java:4475:10:4475:44 | new MyAbstractIteratorDecorator<>(...) : MyAbstractIteratorDecorator [] : String | +| Test.java:4476:20:4476:22 | out : MyAbstractIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4476:9:4476:23 | getElement(...) | +| Test.java:4481:49:4481:64 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4481:22:4481:65 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4482:46:4482:47 | in : ListIterator [] : String | Test.java:7161:42:7161:71 | iterator : ListIterator [] : String | Test.java:7161:10:7161:40 | parameter this [Return] : MyAbstractListIteratorDecorator [] : String | Test.java:4482:10:4482:48 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | +| Test.java:4483:20:4483:22 | out : MyAbstractListIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractListIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4483:9:4483:23 | getElement(...) | +| Test.java:4488:77:4488:120 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:7161:42:7161:71 | iterator : ListIterator [] : String | Test.java:7161:10:7161:40 | parameter this [Return] : MyAbstractListIteratorDecorator [] : String | Test.java:4488:41:4488:121 | new MyAbstractListIteratorDecorator<>(...) : MyAbstractListIteratorDecorator [] : String | +| Test.java:4488:104:4488:119 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4488:77:4488:120 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4489:10:4489:11 | in : MyAbstractListIteratorDecorator [] : String | Test.java:7164:26:7164:42 | parameter this : MyAbstractListIteratorDecorator [] : String | Test.java:7165:11:7165:33 | getListIterator(...) : ListIterator [] : String | Test.java:4489:10:4489:31 | myGetListIterator(...) : ListIterator [] : String | +| Test.java:4490:20:4490:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4490:9:4490:23 | getElement(...) | +| Test.java:4495:44:4495:59 | (...)... : String | Test.java:276:49:276:53 | key : String | Test.java:276:65:276:106 | new LinkedMap(...) : LinkedMap [] : String | Test.java:4495:21:4495:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | +| Test.java:4496:45:4496:46 | in : OrderedMapIterator [] : String | Test.java:7170:41:7170:72 | iterator : OrderedMapIterator [] : String | Test.java:7170:10:7170:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | Test.java:4496:10:4496:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | +| Test.java:4497:20:4497:22 | out : MyAbstractMapIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractMapIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4497:9:4497:23 | getElement(...) | +| Test.java:4502:46:4502:61 | (...)... : String | Test.java:295:51:295:57 | value : String | Test.java:295:69:295:112 | new LinkedMap(...) : LinkedMap [] : String | Test.java:4502:21:4502:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | +| Test.java:4503:45:4503:46 | in : OrderedMapIterator [] : String | Test.java:7170:41:7170:72 | iterator : OrderedMapIterator [] : String | Test.java:7170:10:7170:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | Test.java:4503:10:4503:47 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | +| Test.java:4504:21:4504:23 | out : MyAbstractMapIteratorDecorator [] : String | Test.java:246:20:246:47 | mapIterator : MyAbstractMapIteratorDecorator [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:4504:9:4504:24 | getMapValue(...) | +| Test.java:4509:75:4509:128 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7170:41:7170:72 | iterator : OrderedMapIterator [] : String | Test.java:7170:10:7170:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | Test.java:4509:40:4509:129 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | +| Test.java:4509:98:4509:113 | (...)... : String | Test.java:276:49:276:53 | key : String | Test.java:276:65:276:106 | new LinkedMap(...) : LinkedMap [] : String | Test.java:4509:75:4509:114 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | +| Test.java:4510:10:4510:11 | in : MyAbstractMapIteratorDecorator [] : String | Test.java:7173:28:7173:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | Test.java:7174:11:7174:32 | getMapIterator(...) : MapIterator [] : String | Test.java:4510:10:4510:30 | myGetMapIterator(...) : MapIterator [] : String | +| Test.java:4511:20:4511:22 | out : MapIterator [] : String | Test.java:231:19:231:32 | it : MapIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4511:9:4511:23 | getElement(...) | +| Test.java:4516:75:4516:130 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7170:41:7170:72 | iterator : OrderedMapIterator [] : String | Test.java:7170:10:7170:39 | parameter this [Return] : MyAbstractMapIteratorDecorator [] : String | Test.java:4516:40:4516:131 | new MyAbstractMapIteratorDecorator<>(...) : MyAbstractMapIteratorDecorator [] : String | +| Test.java:4516:100:4516:115 | (...)... : String | Test.java:295:51:295:57 | value : String | Test.java:295:69:295:112 | new LinkedMap(...) : LinkedMap [] : String | Test.java:4516:75:4516:116 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | +| Test.java:4517:10:4517:11 | in : MyAbstractMapIteratorDecorator [] : String | Test.java:7173:28:7173:43 | parameter this : MyAbstractMapIteratorDecorator [] : String | Test.java:7174:11:7174:32 | getMapIterator(...) : MapIterator [] : String | Test.java:4517:10:4517:30 | myGetMapIterator(...) : MapIterator [] : String | +| Test.java:4518:21:4518:23 | out : MapIterator [] : String | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:4518:9:4518:24 | getMapValue(...) | +| Test.java:4523:56:4523:71 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:4523:28:4523:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:4524:52:4524:53 | in : OrderedMapIterator [] : String | Test.java:7179:48:7179:86 | iterator : OrderedMapIterator [] : String | Test.java:7179:10:7179:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4524:10:4524:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:4525:20:4525:22 | out : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4525:9:4525:23 | getElement(...) | +| Test.java:4530:58:4530:73 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:4530:28:4530:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:4531:52:4531:53 | in : OrderedMapIterator [] : String | Test.java:7179:48:7179:86 | iterator : OrderedMapIterator [] : String | Test.java:7179:10:7179:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4531:10:4531:54 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:4532:21:4532:23 | out : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:246:20:246:47 | mapIterator : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:4532:9:4532:24 | getMapValue(...) | +| Test.java:4537:89:4537:147 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7179:48:7179:86 | iterator : OrderedMapIterator [] : String | Test.java:7179:10:7179:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4537:47:4537:148 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:4537:117:4537:132 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:4537:89:4537:133 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:4538:10:4538:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7182:35:7182:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7183:11:7183:39 | getOrderedMapIterator(...) : OrderedMapIterator [] : String | Test.java:4538:10:4538:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | +| Test.java:4539:20:4539:22 | out : OrderedMapIterator [] : String | Test.java:231:19:231:32 | it : OrderedMapIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4539:9:4539:23 | getElement(...) | +| Test.java:4544:89:4544:149 | mapIterator(...) : OrderedMapIterator [] : String | Test.java:7179:48:7179:86 | iterator : OrderedMapIterator [] : String | Test.java:7179:10:7179:46 | parameter this [Return] : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:4544:47:4544:150 | new MyAbstractOrderedMapIteratorDecorator<>(...) : MyAbstractOrderedMapIteratorDecorator [] : String | +| Test.java:4544:119:4544:134 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:4544:89:4544:135 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:4545:10:4545:11 | in : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7182:35:7182:57 | parameter this : MyAbstractOrderedMapIteratorDecorator [] : String | Test.java:7183:11:7183:39 | getOrderedMapIterator(...) : OrderedMapIterator [] : String | Test.java:4545:10:4545:37 | myGetOrderedMapIterator(...) : OrderedMapIterator [] : String | +| Test.java:4546:21:4546:23 | out : OrderedMapIterator [] : String | Test.java:246:20:246:47 | mapIterator : OrderedMapIterator [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:4546:9:4546:24 | getMapValue(...) | +| Test.java:4551:45:4551:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4551:18:4551:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4552:49:4552:50 | in : ListIterator [] : String | Test.java:7188:45:7188:70 | iterator : ListIterator [] : String | Test.java:7188:10:7188:43 | parameter this [Return] : MyAbstractUntypedIteratorDecorator [] : String | Test.java:4552:10:4552:51 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | +| Test.java:4553:20:4553:22 | out : MyAbstractUntypedIteratorDecorator [] : String | Test.java:231:19:231:32 | it : MyAbstractUntypedIteratorDecorator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4553:9:4553:23 | getElement(...) | +| Test.java:4558:83:4558:126 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:7188:45:7188:70 | iterator : ListIterator [] : String | Test.java:7188:10:7188:43 | parameter this [Return] : MyAbstractUntypedIteratorDecorator [] : String | Test.java:4558:44:4558:127 | new MyAbstractUntypedIteratorDecorator<>(...) : MyAbstractUntypedIteratorDecorator [] : String | +| Test.java:4558:110:4558:125 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4558:83:4558:126 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4559:10:4559:11 | in : MyAbstractUntypedIteratorDecorator [] : String | Test.java:7191:22:7191:34 | parameter this : MyAbstractUntypedIteratorDecorator [] : String | Test.java:7192:11:7192:29 | getIterator(...) : Iterator [] : String | Test.java:4559:10:4559:27 | myGetIterator(...) : Iterator [] : String | +| Test.java:4560:20:4560:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4560:9:4560:23 | getElement(...) | +| Test.java:4565:44:4565:59 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4565:24:4565:60 | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4567:20:4567:22 | out : ArrayIterator [] : String | Test.java:231:19:231:32 | it : ArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4567:9:4567:23 | getElement(...) | +| Test.java:4572:44:4572:59 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4572:24:4572:60 | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4574:20:4574:22 | out : ArrayIterator [] : String | Test.java:231:19:231:32 | it : ArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4574:9:4574:23 | getElement(...) | +| Test.java:4579:44:4579:59 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4579:24:4579:60 | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4581:20:4581:22 | out : ArrayIterator [] : String | Test.java:231:19:231:32 | it : ArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4581:9:4581:23 | getElement(...) | +| Test.java:4586:69:4586:84 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4586:49:4586:85 | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4588:25:4588:27 | out : String[] [[]] : String | Test.java:229:24:229:32 | array : String[] [[]] : String | Test.java:229:44:229:51 | ...[...] : String | Test.java:4588:9:4588:28 | getArrayElement(...) | +| Test.java:4593:44:4593:59 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4593:24:4593:60 | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4595:20:4595:22 | out : ArrayListIterator [] : String | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4595:9:4595:23 | getElement(...) | +| Test.java:4600:44:4600:59 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4600:24:4600:60 | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4602:20:4602:22 | out : ArrayListIterator [] : String | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4602:9:4602:23 | getElement(...) | +| Test.java:4607:44:4607:59 | (...)... : String | Test.java:251:31:251:44 | element : String | Test.java:251:56:251:77 | new Object[] : Object[] [[]] : String | Test.java:4607:24:4607:60 | newWithArrayElement(...) : Object[] [[]] : String | +| Test.java:4609:20:4609:22 | out : ArrayListIterator [] : String | Test.java:231:19:231:32 | it : ArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4609:9:4609:23 | getElement(...) | +| Test.java:4614:45:4614:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4614:18:4614:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4616:20:4616:22 | out : BoundedIterator [] : String | Test.java:231:19:231:32 | it : BoundedIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4616:9:4616:23 | getElement(...) | +| Test.java:4621:55:4621:70 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4621:28:4621:71 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4623:20:4623:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4623:9:4623:23 | getElement(...) | +| Test.java:4628:45:4628:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4628:18:4628:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4630:20:4630:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4630:9:4630:23 | getElement(...) | +| Test.java:4635:45:4635:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4635:18:4635:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4637:20:4637:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4637:9:4637:23 | getElement(...) | +| Test.java:4642:62:4642:77 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4642:35:4642:78 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4644:20:4644:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4644:9:4644:23 | getElement(...) | +| Test.java:4649:45:4649:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4649:18:4649:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4651:20:4651:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4651:9:4651:23 | getElement(...) | +| Test.java:4656:102:4656:117 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4656:75:4656:118 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4658:20:4658:34 | getElement(...) : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4658:9:4658:35 | getElement(...) | +| Test.java:4658:31:4658:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:4658:20:4658:34 | getElement(...) : Iterator [] : String | +| Test.java:4663:45:4663:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4663:18:4663:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4665:20:4665:22 | out : CollatingIterator [] : String | Test.java:231:19:231:32 | it : CollatingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4665:9:4665:23 | getElement(...) | +| Test.java:4670:47:4670:62 | (...)... : String | Test.java:256:47:256:55 | element : String | Test.java:256:67:256:134 | new IteratorEnumeration(...) : IteratorEnumeration [] : String | Test.java:4670:21:4670:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | +| Test.java:4672:20:4672:22 | out : EnumerationIterator [] : String | Test.java:231:19:231:32 | it : EnumerationIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4672:9:4672:23 | getElement(...) | +| Test.java:4677:47:4677:62 | (...)... : String | Test.java:256:47:256:55 | element : String | Test.java:256:67:256:134 | new IteratorEnumeration(...) : IteratorEnumeration [] : String | Test.java:4677:21:4677:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | +| Test.java:4679:20:4679:22 | out : EnumerationIterator [] : String | Test.java:231:19:231:32 | it : EnumerationIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4679:9:4679:23 | getElement(...) | +| Test.java:4684:79:4684:94 | (...)... : String | Test.java:256:47:256:55 | element : String | Test.java:256:67:256:134 | new IteratorEnumeration(...) : IteratorEnumeration [] : String | Test.java:4684:53:4684:95 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | +| Test.java:4686:20:4686:22 | out : Enumeration [] : String | Test.java:234:19:234:42 | container : Enumeration [] : String | Test.java:234:54:234:76 | nextElement(...) : String | Test.java:4686:9:4686:23 | getElement(...) | +| Test.java:4691:47:4691:62 | (...)... : String | Test.java:256:47:256:55 | element : String | Test.java:256:67:256:134 | new IteratorEnumeration(...) : IteratorEnumeration [] : String | Test.java:4691:21:4691:63 | newEnumerationWithElement(...) : IteratorEnumeration [] : String | +| Test.java:4693:20:4693:22 | out : EnumerationIterator [] : String | Test.java:231:19:231:32 | it : EnumerationIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4693:9:4693:23 | getElement(...) | +| Test.java:4698:45:4698:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4698:18:4698:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4700:20:4700:22 | out : FilterIterator [] : String | Test.java:231:19:231:32 | it : FilterIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4700:9:4700:23 | getElement(...) | +| Test.java:4705:45:4705:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4705:18:4705:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4707:20:4707:22 | out : FilterIterator [] : String | Test.java:231:19:231:32 | it : FilterIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4707:9:4707:23 | getElement(...) | +| Test.java:4712:70:4712:85 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4712:43:4712:86 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4714:20:4714:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4714:9:4714:23 | getElement(...) | +| Test.java:4719:45:4719:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4719:18:4719:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4721:20:4721:22 | out : FilterIterator [] : String | Test.java:231:19:231:32 | it : FilterIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4721:9:4721:23 | getElement(...) | +| Test.java:4726:49:4726:64 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4726:22:4726:65 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4728:20:4728:22 | out : FilterListIterator [] : String | Test.java:231:19:231:32 | it : FilterListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4728:9:4728:23 | getElement(...) | +| Test.java:4733:49:4733:64 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4733:22:4733:65 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4735:20:4735:22 | out : FilterListIterator [] : String | Test.java:231:19:231:32 | it : FilterListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4735:9:4735:23 | getElement(...) | +| Test.java:4740:78:4740:93 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4740:51:4740:94 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4742:20:4742:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4742:9:4742:23 | getElement(...) | +| Test.java:4747:49:4747:64 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4747:22:4747:65 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4749:20:4749:22 | out : FilterListIterator [] : String | Test.java:231:19:231:32 | it : FilterListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4749:9:4749:23 | getElement(...) | +| Test.java:4754:42:4754:85 | newListIteratorWithElement(...) : ListIterator [] : String | Test.java:267:39:267:47 | element : ListIterator [] : String | Test.java:267:107:267:107 | b : TreeBag [, ] : String | Test.java:4754:20:4754:86 | newTreeBagWithElement(...) : TreeBag [, ] : String | +| Test.java:4754:69:4754:84 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4754:42:4754:85 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4756:20:4756:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4756:9:4756:23 | getElement(...) | +| Test.java:4761:45:4761:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4761:18:4761:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4763:20:4763:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4763:9:4763:23 | getElement(...) | +| Test.java:4768:45:4768:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4768:18:4768:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4770:20:4770:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4770:9:4770:23 | getElement(...) | +| Test.java:4775:45:4775:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4775:18:4775:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4777:20:4777:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4777:9:4777:23 | getElement(...) | +| Test.java:4782:62:4782:77 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4782:35:4782:78 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4784:20:4784:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4784:9:4784:23 | getElement(...) | +| Test.java:4789:45:4789:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4789:18:4789:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4791:20:4791:22 | out : IteratorChain [] : String | Test.java:231:19:231:32 | it : IteratorChain [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4791:9:4791:23 | getElement(...) | +| Test.java:4796:45:4796:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4796:18:4796:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4798:20:4798:22 | out : IteratorEnumeration [] : String | Test.java:234:19:234:42 | container : IteratorEnumeration [] : String | Test.java:234:54:234:76 | nextElement(...) : String | Test.java:4798:9:4798:23 | getElement(...) | +| Test.java:4803:80:4803:95 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4803:53:4803:96 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4805:20:4805:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4805:9:4805:23 | getElement(...) | +| Test.java:4810:45:4810:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4810:18:4810:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4812:20:4812:22 | out : IteratorEnumeration [] : String | Test.java:234:19:234:42 | container : IteratorEnumeration [] : String | Test.java:234:54:234:76 | nextElement(...) : String | Test.java:4812:9:4812:23 | getElement(...) | +| Test.java:4817:45:4817:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4817:18:4817:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4819:20:4819:22 | out : IteratorIterable [] : String | Test.java:230:19:230:32 | it : IteratorIterable [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4819:9:4819:23 | getElement(...) | +| Test.java:4824:45:4824:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4824:18:4824:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4826:20:4826:22 | out : IteratorIterable [] : String | Test.java:230:19:230:32 | it : IteratorIterable [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4826:9:4826:23 | getElement(...) | +| Test.java:4831:45:4831:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4831:18:4831:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4833:20:4833:22 | out : ListIteratorWrapper [] : String | Test.java:231:19:231:32 | it : ListIteratorWrapper [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4833:9:4833:23 | getElement(...) | +| Test.java:4838:42:4838:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:4838:20:4838:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:4840:20:4840:22 | out : LoopingIterator [] : String | Test.java:231:19:231:32 | it : LoopingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4840:9:4840:23 | getElement(...) | +| Test.java:4847:20:4847:22 | out : LoopingListIterator [] : String | Test.java:231:19:231:32 | it : LoopingListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4847:9:4847:23 | getElement(...) | +| Test.java:4854:20:4854:22 | out : ObjectArrayIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4854:9:4854:23 | getElement(...) | +| Test.java:4861:20:4861:22 | out : ObjectArrayIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4861:9:4861:23 | getElement(...) | +| Test.java:4868:20:4868:22 | out : ObjectArrayIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4868:9:4868:23 | getElement(...) | +| Test.java:4875:25:4875:27 | out : Object[] [[]] : String | Test.java:229:24:229:32 | array : Object[] [[]] : String | Test.java:229:44:229:51 | ...[...] : String | Test.java:4875:9:4875:28 | getArrayElement(...) | +| Test.java:4882:20:4882:22 | out : ObjectArrayListIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4882:9:4882:23 | getElement(...) | +| Test.java:4889:20:4889:22 | out : ObjectArrayListIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4889:9:4889:23 | getElement(...) | +| Test.java:4896:20:4896:22 | out : ObjectArrayListIterator [] : String | Test.java:231:19:231:32 | it : ObjectArrayListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4896:9:4896:23 | getElement(...) | +| Test.java:4901:45:4901:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4901:18:4901:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4903:20:4903:22 | out : PeekingIterator [] : String | Test.java:231:19:231:32 | it : PeekingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4903:9:4903:23 | getElement(...) | +| Test.java:4908:72:4908:87 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4908:45:4908:88 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4915:72:4915:87 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4915:45:4915:88 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4922:45:4922:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4922:18:4922:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4924:20:4924:22 | out : PeekingIterator [] : String | Test.java:231:19:231:32 | it : PeekingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4924:9:4924:23 | getElement(...) | +| Test.java:4931:20:4931:34 | getElement(...) : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:4931:9:4931:35 | getElement(...) | +| Test.java:4931:31:4931:33 | out : PermutationIterator [, ] : String | Test.java:231:19:231:32 | it : PermutationIterator [, ] : String | Test.java:231:44:231:52 | next(...) : Object [] : String | Test.java:4931:20:4931:34 | getElement(...) : List [] : String | +| Test.java:4936:45:4936:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4936:18:4936:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4938:20:4938:22 | out : PushbackIterator [] : String | Test.java:231:19:231:32 | it : PushbackIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4938:9:4938:23 | getElement(...) | +| Test.java:4945:20:4945:22 | out : PushbackIterator [] : Object | Test.java:231:19:231:32 | it : PushbackIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | Test.java:4945:9:4945:23 | getElement(...) | +| Test.java:4950:45:4950:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4950:18:4950:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4952:20:4952:22 | out : PushbackIterator [] : String | Test.java:231:19:231:32 | it : PushbackIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4952:9:4952:23 | getElement(...) | +| Test.java:4959:20:4959:22 | out : ReverseListIterator [] : String | Test.java:231:19:231:32 | it : ReverseListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4959:9:4959:23 | getElement(...) | +| Test.java:4966:20:4966:22 | out : SingletonIterator [] : Object | Test.java:231:19:231:32 | it : SingletonIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | Test.java:4966:9:4966:23 | getElement(...) | +| Test.java:4973:20:4973:22 | out : SingletonIterator [] : Object | Test.java:231:19:231:32 | it : SingletonIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | Test.java:4973:9:4973:23 | getElement(...) | +| Test.java:4980:20:4980:22 | out : SingletonListIterator [] : Object | Test.java:231:19:231:32 | it : SingletonListIterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | Test.java:4980:9:4980:23 | getElement(...) | +| Test.java:4985:45:4985:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4985:18:4985:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4987:20:4987:22 | out : SkippingIterator [] : String | Test.java:231:19:231:32 | it : SkippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4987:9:4987:23 | getElement(...) | +| Test.java:4992:45:4992:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4992:18:4992:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:4994:20:4994:22 | out : UniqueFilterIterator [] : String | Test.java:231:19:231:32 | it : UniqueFilterIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:4994:9:4994:23 | getElement(...) | +| Test.java:4999:45:4999:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:4999:18:4999:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5001:20:5001:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5001:9:5001:23 | getElement(...) | +| Test.java:5006:49:5006:64 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5006:22:5006:65 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5008:20:5008:22 | out : ListIterator [] : String | Test.java:231:19:231:32 | it : ListIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5008:9:5008:23 | getElement(...) | +| Test.java:5013:44:5013:59 | (...)... : String | Test.java:276:49:276:53 | key : String | Test.java:276:65:276:106 | new LinkedMap(...) : LinkedMap [] : String | Test.java:5013:21:5013:60 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | +| Test.java:5015:20:5015:22 | out : MapIterator [] : String | Test.java:231:19:231:32 | it : MapIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5015:9:5015:23 | getElement(...) | +| Test.java:5020:46:5020:61 | (...)... : String | Test.java:295:51:295:57 | value : String | Test.java:295:69:295:112 | new LinkedMap(...) : LinkedMap [] : String | Test.java:5020:21:5020:62 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | +| Test.java:5022:21:5022:23 | out : MapIterator [] : String | Test.java:246:20:246:47 | mapIterator : MapIterator [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:5022:9:5022:24 | getMapValue(...) | +| Test.java:5027:56:5027:71 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5027:28:5027:72 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:5029:20:5029:22 | out : OrderedMapIterator [] : String | Test.java:231:19:231:32 | it : OrderedMapIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5029:9:5029:23 | getElement(...) | +| Test.java:5034:58:5034:73 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5034:28:5034:74 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:5036:21:5036:23 | out : OrderedMapIterator [] : String | Test.java:246:20:246:47 | mapIterator : OrderedMapIterator [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:5036:9:5036:24 | getMapValue(...) | +| Test.java:5041:45:5041:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5041:18:5041:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5043:20:5043:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5043:9:5043:23 | getElement(...) | +| Test.java:5048:45:5048:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5048:18:5048:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5050:20:5050:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5050:9:5050:23 | getElement(...) | +| Test.java:5055:45:5055:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5055:18:5055:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5057:20:5057:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5057:9:5057:23 | getElement(...) | +| Test.java:5062:45:5062:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5062:18:5062:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5064:20:5064:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5064:9:5064:23 | getElement(...) | +| Test.java:5069:45:5069:60 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5069:18:5069:61 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5071:20:5071:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5071:9:5071:23 | getElement(...) | +| Test.java:5076:62:5076:77 | (...)... : String | Test.java:259:49:259:57 | element : String | Test.java:259:69:259:112 | listIterator(...) : ListIterator [] : String | Test.java:5076:35:5076:78 | newListIteratorWithElement(...) : ListIterator [] : String | +| Test.java:5078:20:5078:22 | out : ZippingIterator [] : String | Test.java:231:19:231:32 | it : ZippingIterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5078:9:5078:23 | getElement(...) | +| Test.java:5085:20:5085:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5085:9:5085:23 | getElement(...) | +| Test.java:5092:20:5092:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5092:9:5092:23 | getElement(...) | +| Test.java:5099:20:5099:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5099:9:5099:23 | getElement(...) | +| Test.java:5106:20:5106:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5106:9:5106:23 | getElement(...) | +| Test.java:5113:20:5113:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5113:9:5113:23 | getElement(...) | +| Test.java:5120:20:5120:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5120:9:5120:23 | getElement(...) | +| Test.java:5127:20:5127:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5127:9:5127:23 | getElement(...) | +| Test.java:5134:20:5134:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5134:9:5134:23 | getElement(...) | +| Test.java:5141:20:5141:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5141:9:5141:23 | getElement(...) | +| Test.java:5148:20:5148:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5148:9:5148:23 | getElement(...) | +| Test.java:5155:20:5155:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5155:9:5155:23 | getElement(...) | +| Test.java:5162:20:5162:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5162:9:5162:23 | getElement(...) | +| Test.java:5169:20:5169:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5169:9:5169:23 | getElement(...) | +| Test.java:5176:20:5176:22 | out : MultiKey [] : Object | Test.java:236:19:236:39 | container : MultiKey [] : Object | Test.java:236:51:236:69 | getKey(...) : Object | Test.java:5176:9:5176:23 | getElement(...) | +| Test.java:5183:20:5183:22 | out : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:5183:9:5183:23 | getElement(...) | +| Test.java:5190:20:5190:22 | out : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:5190:9:5190:23 | getElement(...) | +| Test.java:5195:41:5195:56 | (...)... : String | Test.java:261:41:261:49 | element : String | Test.java:261:61:261:93 | new MultiKey(...) : MultiKey [] : String | Test.java:5195:18:5195:57 | newMultiKeyWithElement(...) : MultiKey [] : String | +| Test.java:5202:41:5202:56 | (...)... : String | Test.java:261:41:261:49 | element : String | Test.java:261:61:261:93 | new MultiKey(...) : MultiKey [] : String | Test.java:5202:18:5202:57 | newMultiKeyWithElement(...) : MultiKey [] : String | +| Test.java:5204:25:5204:27 | out : Object[] [[]] : String | Test.java:229:24:229:32 | array : Object[] [[]] : String | Test.java:229:44:229:51 | ...[...] : String | Test.java:5204:9:5204:28 | getArrayElement(...) | +| Test.java:5209:42:5209:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:5209:20:5209:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:5210:35:5210:36 | in : TreeBag [] : String | Test.java:7198:31:7198:64 | coll : TreeBag [] : String | Test.java:7198:10:7198:29 | parameter this [Return] : MyAbstractLinkedList [] : String | Test.java:5210:10:5210:37 | new MyAbstractLinkedList<>(...) : MyAbstractLinkedList [] : String | +| Test.java:5211:20:5211:22 | out : MyAbstractLinkedList [] : String | Test.java:230:19:230:32 | it : MyAbstractLinkedList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5211:9:5211:23 | getElement(...) | +| Test.java:5218:20:5218:22 | out : AbstractLinkedList [] : Object | Test.java:230:19:230:32 | it : AbstractLinkedList [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:5218:9:5218:23 | getElement(...) | +| Test.java:5225:20:5225:22 | out : AbstractLinkedList [] : Object | Test.java:230:19:230:32 | it : AbstractLinkedList [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:5225:9:5225:23 | getElement(...) | +| Test.java:5230:63:5230:78 | (...)... : String | Test.java:255:65:255:73 | element : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | Test.java:5230:28:5230:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | +| Test.java:5237:63:5237:78 | (...)... : String | Test.java:255:65:255:73 | element : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | Test.java:5237:28:5237:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | +| Test.java:5244:63:5244:78 | (...)... : String | Test.java:255:65:255:73 | element : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | Test.java:5244:28:5244:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | +| Test.java:5251:63:5251:78 | (...)... : String | Test.java:255:65:255:73 | element : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | Test.java:5251:28:5251:79 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | +| Test.java:5259:38:5259:39 | in : List [] : String | Test.java:7204:34:7204:51 | list : List [] : String | Test.java:7204:10:7204:32 | parameter this [Return] : MyAbstractListDecorator [] : String | Test.java:5259:10:5259:40 | new MyAbstractListDecorator<>(...) : MyAbstractListDecorator [] : String | +| Test.java:5260:20:5260:22 | out : MyAbstractListDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractListDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5260:9:5260:23 | getElement(...) | +| Test.java:5266:50:5266:51 | in : List [] : String | Test.java:7210:46:7210:63 | list : List [] : String | Test.java:7210:10:7210:44 | parameter this [Return] : MyAbstractSerializableListDecorator [] : String | Test.java:5266:10:5266:52 | new MyAbstractSerializableListDecorator<>(...) : MyAbstractSerializableListDecorator [] : String | +| Test.java:5267:20:5267:22 | out : MyAbstractSerializableListDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSerializableListDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5267:9:5267:23 | getElement(...) | +| Test.java:5274:20:5274:22 | out : CursorableLinkedList [] : String | Test.java:230:19:230:32 | it : CursorableLinkedList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5274:9:5274:23 | getElement(...) | +| Test.java:5279:65:5279:80 | (...)... : String | Test.java:255:65:255:73 | element : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | Test.java:5279:30:5279:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | +| Test.java:5281:20:5281:22 | out : Cursor [] : String | Test.java:231:19:231:32 | it : Cursor [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5281:9:5281:23 | getElement(...) | +| Test.java:5286:65:5286:80 | (...)... : String | Test.java:255:65:255:73 | element : String | Test.java:255:159:255:159 | x : CursorableLinkedList [] : String | Test.java:5286:30:5286:81 | newCursorableLinkedListWithElement(...) : CursorableLinkedList [] : String | +| Test.java:5288:20:5288:22 | out : Cursor [] : String | Test.java:231:19:231:32 | it : Cursor [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5288:9:5288:23 | getElement(...) | +| Test.java:5295:20:5295:22 | out : FixedSizeList [] : String | Test.java:230:19:230:32 | it : FixedSizeList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5295:9:5295:23 | getElement(...) | +| Test.java:5302:20:5302:22 | out : GrowthList [] : String | Test.java:230:19:230:32 | it : GrowthList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5302:9:5302:23 | getElement(...) | +| Test.java:5309:20:5309:22 | out : LazyList [] : String | Test.java:230:19:230:32 | it : LazyList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5309:9:5309:23 | getElement(...) | +| Test.java:5316:20:5316:22 | out : LazyList [] : String | Test.java:230:19:230:32 | it : LazyList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5316:9:5316:23 | getElement(...) | +| Test.java:5323:20:5323:22 | out : NodeCachingLinkedList [] : String | Test.java:230:19:230:32 | it : NodeCachingLinkedList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5323:9:5323:23 | getElement(...) | +| Test.java:5330:20:5330:22 | out : PredicatedList [] : String | Test.java:230:19:230:32 | it : PredicatedList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5330:9:5330:23 | getElement(...) | +| Test.java:5337:20:5337:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5337:9:5337:23 | getElement(...) | +| Test.java:5344:20:5344:22 | out : SetUniqueList [] : String | Test.java:230:19:230:32 | it : SetUniqueList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5344:9:5344:23 | getElement(...) | +| Test.java:5351:20:5351:22 | out : TransformedList [] : String | Test.java:230:19:230:32 | it : TransformedList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5351:9:5351:23 | getElement(...) | +| Test.java:5358:20:5358:22 | out : TreeList [] : String | Test.java:230:19:230:32 | it : TreeList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5358:9:5358:23 | getElement(...) | +| Test.java:5365:20:5365:22 | out : UnmodifiableList [] : String | Test.java:230:19:230:32 | it : UnmodifiableList [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5365:9:5365:23 | getElement(...) | +| Test.java:5372:20:5372:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5372:9:5372:23 | getElement(...) | +| Test.java:5378:34:5378:35 | in : Map [] : String | Test.java:7216:30:7216:68 | map : Map [] : String | Test.java:7216:10:7216:28 | parameter this [Return] : MyAbstractHashedMap [] : String | Test.java:5378:10:5378:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | +| Test.java:5379:19:5379:21 | out : MyAbstractHashedMap [] : String | Test.java:228:18:228:29 | map : MyAbstractHashedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5379:9:5379:22 | getMapKey(...) | +| Test.java:5385:34:5385:35 | in : Map [] : String | Test.java:7216:30:7216:68 | map : Map [] : String | Test.java:7216:10:7216:28 | parameter this [Return] : MyAbstractHashedMap [] : String | Test.java:5385:10:5385:36 | new MyAbstractHashedMap<>(...) : MyAbstractHashedMap [] : String | +| Test.java:5386:21:5386:23 | out : MyAbstractHashedMap [] : String | Test.java:232:20:232:31 | map : MyAbstractHashedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5386:9:5386:24 | getMapValue(...) | +| Test.java:5392:34:5392:35 | in : Map [] : String | Test.java:7222:30:7222:68 | map : Map [] : String | Test.java:7222:10:7222:28 | parameter this [Return] : MyAbstractLinkedMap [] : String | Test.java:5392:10:5392:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | +| Test.java:5393:19:5393:21 | out : MyAbstractLinkedMap [] : String | Test.java:228:18:228:29 | map : MyAbstractLinkedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5393:9:5393:22 | getMapKey(...) | +| Test.java:5399:34:5399:35 | in : Map [] : String | Test.java:7222:30:7222:68 | map : Map [] : String | Test.java:7222:10:7222:28 | parameter this [Return] : MyAbstractLinkedMap [] : String | Test.java:5399:10:5399:36 | new MyAbstractLinkedMap<>(...) : MyAbstractLinkedMap [] : String | +| Test.java:5400:21:5400:23 | out : MyAbstractLinkedMap [] : String | Test.java:232:20:232:31 | map : MyAbstractLinkedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5400:9:5400:24 | getMapValue(...) | +| Test.java:5406:37:5406:38 | in : Map [] : String | Test.java:7228:33:7228:51 | map : Map [] : String | Test.java:7228:10:7228:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | Test.java:5406:10:5406:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | +| Test.java:5407:19:5407:21 | out : MyAbstractMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5407:9:5407:22 | getMapKey(...) | +| Test.java:5413:37:5413:38 | in : Map [] : String | Test.java:7228:33:7228:51 | map : Map [] : String | Test.java:7228:10:7228:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | Test.java:5413:10:5413:39 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | +| Test.java:5414:21:5414:23 | out : MyAbstractMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5414:9:5414:24 | getMapValue(...) | +| Test.java:5419:59:5419:88 | of(...) : Map [] : String | Test.java:7228:33:7228:51 | map : Map [] : String | Test.java:7228:10:7228:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | Test.java:5419:32:5419:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | +| Test.java:5420:10:5420:11 | in : MyAbstractMapDecorator [] : String | Test.java:7231:20:7231:30 | parameter this : MyAbstractMapDecorator [] : String | Test.java:7232:11:7232:27 | decorated(...) : Map [] : String | Test.java:5420:10:5420:25 | myDecorated(...) : Map [] : String | +| Test.java:5421:19:5421:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5421:9:5421:22 | getMapKey(...) | +| Test.java:5426:59:5426:88 | of(...) : Map [] : String | Test.java:7228:33:7228:51 | map : Map [] : String | Test.java:7228:10:7228:31 | parameter this [Return] : MyAbstractMapDecorator [] : String | Test.java:5426:32:5426:89 | new MyAbstractMapDecorator<>(...) : MyAbstractMapDecorator [] : String | +| Test.java:5427:10:5427:11 | in : MyAbstractMapDecorator [] : String | Test.java:7231:20:7231:30 | parameter this : MyAbstractMapDecorator [] : String | Test.java:7232:11:7232:27 | decorated(...) : Map [] : String | Test.java:5427:10:5427:25 | myDecorated(...) : Map [] : String | +| Test.java:5428:21:5428:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5428:9:5428:24 | getMapValue(...) | +| Test.java:5433:48:5433:63 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5433:20:5433:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:5434:44:5434:45 | in : ListOrderedMap [] : String | Test.java:7086:40:7086:65 | map : ListOrderedMap [] : String | Test.java:7086:10:7086:38 | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | Test.java:5434:10:5434:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | +| Test.java:5435:19:5435:21 | out : MyAbstractOrderedMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractOrderedMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5435:9:5435:22 | getMapKey(...) | +| Test.java:5440:50:5440:65 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5440:20:5440:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:5441:44:5441:45 | in : ListOrderedMap [] : String | Test.java:7086:40:7086:65 | map : ListOrderedMap [] : String | Test.java:7086:10:7086:38 | parameter this [Return] : MyAbstractOrderedMapDecorator [] : String | Test.java:5441:10:5441:46 | new MyAbstractOrderedMapDecorator<>(...) : MyAbstractOrderedMapDecorator [] : String | +| Test.java:5442:21:5442:23 | out : MyAbstractOrderedMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractOrderedMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5442:9:5442:24 | getMapValue(...) | +| Test.java:5447:40:5447:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:5447:19:5447:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:5448:43:5448:44 | in : TreeMap [] : String | Test.java:7092:39:7092:63 | map : TreeMap [] : String | Test.java:7092:10:7092:37 | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | Test.java:5448:10:5448:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | +| Test.java:5449:19:5449:21 | out : MyAbstractSortedMapDecorator [] : String | Test.java:228:18:228:29 | map : MyAbstractSortedMapDecorator [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5449:9:5449:22 | getMapKey(...) | +| Test.java:5454:42:5454:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:5454:19:5454:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:5455:43:5455:44 | in : TreeMap [] : String | Test.java:7092:39:7092:63 | map : TreeMap [] : String | Test.java:7092:10:7092:37 | parameter this [Return] : MyAbstractSortedMapDecorator [] : String | Test.java:5455:10:5455:45 | new MyAbstractSortedMapDecorator<>(...) : MyAbstractSortedMapDecorator [] : String | +| Test.java:5456:21:5456:23 | out : MyAbstractSortedMapDecorator [] : String | Test.java:232:20:232:31 | map : MyAbstractSortedMapDecorator [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5456:9:5456:24 | getMapValue(...) | +| Test.java:5463:19:5463:21 | out : CaseInsensitiveMap [] : String | Test.java:228:18:228:29 | map : CaseInsensitiveMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5463:9:5463:22 | getMapKey(...) | +| Test.java:5470:21:5470:23 | out : CaseInsensitiveMap [] : String | Test.java:232:20:232:31 | map : CaseInsensitiveMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5470:9:5470:24 | getMapValue(...) | +| Test.java:5477:19:5477:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5477:9:5477:22 | getMapKey(...) | +| Test.java:5484:19:5484:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5484:9:5484:22 | getMapKey(...) | +| Test.java:5491:21:5491:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5491:9:5491:24 | getMapValue(...) | +| Test.java:5498:21:5498:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5498:9:5498:24 | getMapValue(...) | +| Test.java:5505:19:5505:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5505:9:5505:22 | getMapKey(...) | +| Test.java:5512:19:5512:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5512:9:5512:22 | getMapKey(...) | +| Test.java:5519:21:5519:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5519:9:5519:24 | getMapValue(...) | +| Test.java:5526:21:5526:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5526:9:5526:24 | getMapValue(...) | +| Test.java:5533:19:5533:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5533:9:5533:22 | getMapKey(...) | +| Test.java:5540:21:5540:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5540:9:5540:24 | getMapValue(...) | +| Test.java:5547:19:5547:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5547:9:5547:22 | getMapKey(...) | +| Test.java:5554:21:5554:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5554:9:5554:24 | getMapValue(...) | +| Test.java:5561:19:5561:21 | out : CompositeMap [] : String | Test.java:228:18:228:29 | map : CompositeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5561:9:5561:22 | getMapKey(...) | +| Test.java:5568:21:5568:23 | out : CompositeMap [] : String | Test.java:232:20:232:31 | map : CompositeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5568:9:5568:24 | getMapValue(...) | +| Test.java:5583:19:5583:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5583:9:5583:22 | getMapKey(...) | +| Test.java:5590:21:5590:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5590:9:5590:24 | getMapValue(...) | +| Test.java:5597:21:5597:23 | out : DefaultedMap [] : Object | Test.java:232:20:232:31 | map : DefaultedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:5597:9:5597:24 | getMapValue(...) | +| Test.java:5604:21:5604:23 | out : DefaultedMap [] : Object | Test.java:232:20:232:31 | map : DefaultedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:5604:9:5604:24 | getMapValue(...) | +| Test.java:5611:19:5611:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5611:9:5611:22 | getMapKey(...) | +| Test.java:5618:19:5618:21 | out : DefaultedMap [] : String | Test.java:228:18:228:29 | map : DefaultedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5618:9:5618:22 | getMapKey(...) | +| Test.java:5625:19:5625:21 | out : DefaultedMap [] : String | Test.java:228:18:228:29 | map : DefaultedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5625:9:5625:22 | getMapKey(...) | +| Test.java:5632:21:5632:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5632:9:5632:24 | getMapValue(...) | +| Test.java:5639:21:5639:23 | out : DefaultedMap [] : String | Test.java:232:20:232:31 | map : DefaultedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5639:9:5639:24 | getMapValue(...) | +| Test.java:5646:21:5646:23 | out : DefaultedMap [] : String | Test.java:232:20:232:31 | map : DefaultedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5646:9:5646:24 | getMapValue(...) | +| Test.java:5651:42:5651:75 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | Test.java:260:135:260:135 | x : ListOrderedSet [, ] : String | Test.java:5651:13:5651:76 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | +| Test.java:5651:59:5651:74 | (...)... : String | Test.java:286:46:286:50 | key : String | Test.java:286:62:286:116 | new TiedMapEntry(...) : TiedMapEntry [] : String | Test.java:5651:42:5651:75 | newTMEWithMapKey(...) : TiedMapEntry [] : String | +| Test.java:5653:20:5653:22 | out : EntrySetToMapIteratorAdapter [] : String | Test.java:231:19:231:32 | it : EntrySetToMapIteratorAdapter [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:5653:9:5653:23 | getElement(...) | +| Test.java:5658:42:5658:77 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | Test.java:260:135:260:135 | x : ListOrderedSet [, ] : String | Test.java:5658:13:5658:78 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | +| Test.java:5658:61:5658:76 | (...)... : String | Test.java:305:48:305:54 | value : String | Test.java:305:66:305:127 | new TiedMapEntry(...) : TiedMapEntry [] : String | Test.java:5658:42:5658:77 | newTMEWithMapValue(...) : TiedMapEntry [] : String | +| Test.java:5660:21:5660:23 | out : EntrySetToMapIteratorAdapter [] : String | Test.java:246:20:246:47 | mapIterator : EntrySetToMapIteratorAdapter [] : String | Test.java:246:59:246:80 | getValue(...) : String | Test.java:5660:9:5660:24 | getMapValue(...) | +| Test.java:5667:19:5667:21 | out : FixedSizeMap [] : String | Test.java:228:18:228:29 | map : FixedSizeMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5667:9:5667:22 | getMapKey(...) | +| Test.java:5674:21:5674:23 | out : FixedSizeMap [] : String | Test.java:232:20:232:31 | map : FixedSizeMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5674:9:5674:24 | getMapValue(...) | +| Test.java:5679:40:5679:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:5679:19:5679:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:5681:19:5681:21 | out : FixedSizeSortedMap [] : String | Test.java:228:18:228:29 | map : FixedSizeSortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5681:9:5681:22 | getMapKey(...) | +| Test.java:5686:42:5686:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:5686:19:5686:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:5688:21:5688:23 | out : FixedSizeSortedMap [] : String | Test.java:232:20:232:31 | map : FixedSizeSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5688:9:5688:24 | getMapValue(...) | +| Test.java:5695:19:5695:21 | out : Flat3Map [] : String | Test.java:228:18:228:29 | map : Flat3Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5695:9:5695:22 | getMapKey(...) | +| Test.java:5702:21:5702:23 | out : Flat3Map [] : String | Test.java:232:20:232:31 | map : Flat3Map [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5702:9:5702:24 | getMapValue(...) | +| Test.java:5709:19:5709:21 | out : HashedMap [] : String | Test.java:228:18:228:29 | map : HashedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5709:9:5709:22 | getMapKey(...) | +| Test.java:5716:21:5716:23 | out : HashedMap [] : String | Test.java:232:20:232:31 | map : HashedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5716:9:5716:24 | getMapValue(...) | +| Test.java:5723:19:5723:21 | out : LRUMap [] : String | Test.java:228:18:228:29 | map : LRUMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5723:9:5723:22 | getMapKey(...) | +| Test.java:5730:21:5730:23 | out : LRUMap [] : String | Test.java:232:20:232:31 | map : LRUMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5730:9:5730:24 | getMapValue(...) | +| Test.java:5737:19:5737:21 | out : LRUMap [] : String | Test.java:228:18:228:29 | map : LRUMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5737:9:5737:22 | getMapKey(...) | +| Test.java:5744:21:5744:23 | out : LRUMap [] : String | Test.java:232:20:232:31 | map : LRUMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5744:9:5744:24 | getMapValue(...) | +| Test.java:5759:19:5759:21 | out : LazyMap [] : String | Test.java:228:18:228:29 | map : LazyMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5759:9:5759:22 | getMapKey(...) | +| Test.java:5766:19:5766:21 | out : LazyMap [] : String | Test.java:228:18:228:29 | map : LazyMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5766:9:5766:22 | getMapKey(...) | +| Test.java:5773:21:5773:23 | out : LazyMap [] : String | Test.java:232:20:232:31 | map : LazyMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5773:9:5773:24 | getMapValue(...) | +| Test.java:5780:21:5780:23 | out : LazyMap [] : String | Test.java:232:20:232:31 | map : LazyMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5780:9:5780:24 | getMapValue(...) | +| Test.java:5785:40:5785:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:5785:19:5785:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:5787:19:5787:21 | out : LazySortedMap [] : String | Test.java:228:18:228:29 | map : LazySortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5787:9:5787:22 | getMapKey(...) | +| Test.java:5792:40:5792:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:5792:19:5792:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:5794:19:5794:21 | out : LazySortedMap [] : String | Test.java:228:18:228:29 | map : LazySortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5794:9:5794:22 | getMapKey(...) | +| Test.java:5799:42:5799:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:5799:19:5799:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:5801:21:5801:23 | out : LazySortedMap [] : String | Test.java:232:20:232:31 | map : LazySortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5801:9:5801:24 | getMapValue(...) | +| Test.java:5806:42:5806:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:5806:19:5806:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:5808:21:5808:23 | out : LazySortedMap [] : String | Test.java:232:20:232:31 | map : LazySortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5808:9:5808:24 | getMapValue(...) | +| Test.java:5815:19:5815:21 | out : LinkedMap [] : String | Test.java:228:18:228:29 | map : LinkedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5815:9:5815:22 | getMapKey(...) | +| Test.java:5822:21:5822:23 | out : LinkedMap [] : String | Test.java:232:20:232:31 | map : LinkedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5822:9:5822:24 | getMapValue(...) | +| Test.java:5827:42:5827:57 | (...)... : String | Test.java:276:49:276:53 | key : String | Test.java:276:65:276:106 | new LinkedMap(...) : LinkedMap [] : String | Test.java:5827:19:5827:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | +| Test.java:5829:20:5829:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5829:9:5829:23 | getElement(...) | +| Test.java:5834:42:5834:57 | (...)... : String | Test.java:276:49:276:53 | key : String | Test.java:276:65:276:106 | new LinkedMap(...) : LinkedMap [] : String | Test.java:5834:19:5834:58 | newLinkedMapWithMapKey(...) : LinkedMap [] : String | +| Test.java:5841:44:5841:59 | (...)... : String | Test.java:295:51:295:57 | value : String | Test.java:295:69:295:112 | new LinkedMap(...) : LinkedMap [] : String | Test.java:5841:19:5841:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | +| Test.java:5848:44:5848:59 | (...)... : String | Test.java:295:51:295:57 | value : String | Test.java:295:69:295:112 | new LinkedMap(...) : LinkedMap [] : String | Test.java:5848:19:5848:60 | newLinkedMapWithMapValue(...) : LinkedMap [] : String | +| Test.java:5855:52:5855:67 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5855:24:5855:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:5857:20:5857:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5857:9:5857:23 | getElement(...) | +| Test.java:5862:52:5862:59 | source(...) : Object | Test.java:277:59:277:63 | key : Object | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : Object | Test.java:5862:24:5862:60 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : Object | +| Test.java:5869:54:5869:61 | source(...) : Object | Test.java:296:61:296:67 | value : Object | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : Object | Test.java:5869:24:5869:62 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : Object | +| Test.java:5876:52:5876:67 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5876:24:5876:68 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:5878:20:5878:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5878:9:5878:23 | getElement(...) | +| Test.java:5885:19:5885:21 | out : ListOrderedMap [] : String | Test.java:228:18:228:29 | map : ListOrderedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5885:9:5885:22 | getMapKey(...) | +| Test.java:5892:21:5892:23 | out : ListOrderedMap [] : String | Test.java:232:20:232:31 | map : ListOrderedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5892:9:5892:24 | getMapValue(...) | +| Test.java:5899:21:5899:23 | out : ListOrderedMap [] : Object | Test.java:232:20:232:31 | map : ListOrderedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:5899:9:5899:24 | getMapValue(...) | +| Test.java:5906:19:5906:21 | out : ListOrderedMap [] : Object | Test.java:228:18:228:29 | map : ListOrderedMap [] : Object | Test.java:228:41:228:70 | next(...) : Object | Test.java:5906:9:5906:22 | getMapKey(...) | +| Test.java:5913:21:5913:23 | out : ListOrderedMap [] : Object | Test.java:232:20:232:31 | map : ListOrderedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:5913:9:5913:24 | getMapValue(...) | +| Test.java:5920:19:5920:21 | out : ListOrderedMap [] : String | Test.java:228:18:228:29 | map : ListOrderedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:5920:9:5920:22 | getMapKey(...) | +| Test.java:5927:21:5927:23 | out : ListOrderedMap [] : String | Test.java:232:20:232:31 | map : ListOrderedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5927:9:5927:24 | getMapValue(...) | +| Test.java:5932:54:5932:69 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5932:24:5932:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:5941:21:5941:23 | out : ListOrderedMap [] : Object | Test.java:232:20:232:31 | map : ListOrderedMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:5941:9:5941:24 | getMapValue(...) | +| Test.java:5946:54:5946:69 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:5946:24:5946:70 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:5948:20:5948:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:5948:9:5948:23 | getElement(...) | +| Test.java:5953:40:5953:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:5953:21:5953:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:5960:40:5960:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:5960:21:5960:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:5967:40:5967:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:5967:21:5967:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:5974:40:5974:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:5974:21:5974:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:5983:20:5983:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:5983:9:5983:34 | getElement(...) | +| Test.java:5983:30:5983:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:5983:20:5983:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:5990:20:5990:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:5990:9:5990:34 | getElement(...) | +| Test.java:5990:30:5990:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:5990:20:5990:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:5997:21:5997:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:5997:9:5997:24 | getMapValue(...) | +| Test.java:6004:20:6004:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6004:9:6004:34 | getElement(...) | +| Test.java:6004:30:6004:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6004:20:6004:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:6011:20:6011:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6011:9:6011:34 | getElement(...) | +| Test.java:6011:30:6011:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6011:20:6011:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:6018:20:6018:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6018:9:6018:34 | getElement(...) | +| Test.java:6018:30:6018:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6018:20:6018:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:6025:21:6025:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6025:9:6025:24 | getMapValue(...) | +| Test.java:6032:20:6032:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6032:9:6032:34 | getElement(...) | +| Test.java:6032:30:6032:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6032:20:6032:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:6039:20:6039:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6039:9:6039:34 | getElement(...) | +| Test.java:6039:30:6039:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6039:20:6039:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:6046:20:6046:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6046:9:6046:34 | getElement(...) | +| Test.java:6046:30:6046:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6046:20:6046:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:6053:20:6053:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6053:9:6053:34 | getElement(...) | +| Test.java:6053:30:6053:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6053:20:6053:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:6060:21:6060:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6060:9:6060:24 | getMapValue(...) | +| Test.java:6067:20:6067:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6067:9:6067:34 | getElement(...) | +| Test.java:6067:30:6067:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6067:20:6067:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:6074:20:6074:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6074:9:6074:34 | getElement(...) | +| Test.java:6074:30:6074:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6074:20:6074:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:6081:20:6081:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6081:9:6081:34 | getElement(...) | +| Test.java:6081:30:6081:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6081:20:6081:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:6088:20:6088:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6088:9:6088:34 | getElement(...) | +| Test.java:6088:30:6088:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6088:20:6088:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:6095:20:6095:33 | getMapKey(...) : MultiKey [] : String | Test.java:236:19:236:39 | container : MultiKey [] : String | Test.java:236:51:236:69 | getKey(...) : String | Test.java:6095:9:6095:34 | getElement(...) | +| Test.java:6095:30:6095:32 | out : MultiKeyMap [, ] : String | Test.java:228:18:228:29 | map : MultiKeyMap [, ] : String | Test.java:228:41:228:70 | next(...) : Object [] : String | Test.java:6095:20:6095:33 | getMapKey(...) : MultiKey [] : String | +| Test.java:6102:21:6102:23 | out : MultiKeyMap [] : String | Test.java:232:20:232:31 | map : MultiKeyMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6102:9:6102:24 | getMapValue(...) | +| Test.java:6107:40:6107:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6107:21:6107:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6114:40:6114:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6114:21:6114:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6121:40:6121:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6121:21:6121:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6128:40:6128:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6128:21:6128:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6135:40:6135:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6135:21:6135:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6142:40:6142:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6142:21:6142:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6149:40:6149:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6149:21:6149:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6156:40:6156:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6156:21:6156:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6163:40:6163:55 | (...)... : String | Test.java:297:47:297:53 | value : String | Test.java:297:136:297:136 | m : MultiKeyMap [] : String | Test.java:6163:21:6163:56 | newMKMWithMapValue(...) : MultiKeyMap [] : String | +| Test.java:6170:42:6170:57 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | Test.java:6170:23:6170:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | +| Test.java:6170:42:6170:57 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:6170:23:6170:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:6172:20:6172:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6172:9:6172:23 | getElement(...) | +| Test.java:6172:20:6172:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6172:9:6172:23 | getElement(...) | +| Test.java:6177:57:6177:72 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | Test.java:6177:38:6177:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | +| Test.java:6177:57:6177:72 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:6177:38:6177:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:6179:30:6179:44 | getElement(...) : Entry [] : Object | Test.java:244:29:244:52 | container : Entry [] : Object | Test.java:244:64:244:83 | getValue(...) : Object | Test.java:6179:9:6179:45 | getMapValueFromEntry(...) | +| Test.java:6179:30:6179:44 | getElement(...) : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | Test.java:244:64:244:83 | getValue(...) : String | Test.java:6179:9:6179:45 | getMapValueFromEntry(...) | +| Test.java:6179:41:6179:43 | out : Iterator [, ] : Object | Test.java:231:19:231:32 | it : Iterator [, ] : Object | Test.java:231:44:231:52 | next(...) : Object [] : Object | Test.java:6179:30:6179:44 | getElement(...) : Entry [] : Object | +| Test.java:6179:41:6179:43 | out : Iterator [, ] : String | Test.java:231:19:231:32 | it : Iterator [, ] : String | Test.java:231:44:231:52 | next(...) : Object [] : String | Test.java:6179:30:6179:44 | getElement(...) : Entry [] : String | +| Test.java:6184:55:6184:70 | (...)... : String | Test.java:279:47:279:51 | key : String | Test.java:279:131:279:131 | m : MultiValueMap [] : String | Test.java:6184:38:6184:71 | newMVMWithMapKey(...) : MultiValueMap [] : String | +| Test.java:6186:28:6186:42 | getElement(...) : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | Test.java:238:62:238:79 | getKey(...) : String | Test.java:6186:9:6186:43 | getMapKeyFromEntry(...) | +| Test.java:6186:39:6186:41 | out : Iterator [, ] : String | Test.java:231:19:231:32 | it : Iterator [, ] : String | Test.java:231:44:231:52 | next(...) : Object [] : String | Test.java:6186:28:6186:42 | getElement(...) : Entry [] : String | +| Test.java:6191:57:6191:72 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | Test.java:6191:38:6191:73 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | +| Test.java:6191:57:6191:72 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:6191:38:6191:73 | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:6193:20:6193:22 | out : Iterator [] : Object | Test.java:231:19:231:32 | it : Iterator [] : Object | Test.java:231:44:231:52 | next(...) : Object | Test.java:6193:9:6193:23 | getElement(...) | +| Test.java:6193:20:6193:22 | out : Iterator [] : String | Test.java:231:19:231:32 | it : Iterator [] : String | Test.java:231:44:231:52 | next(...) : String | Test.java:6193:9:6193:23 | getElement(...) | +| Test.java:6198:47:6198:62 | (...)... : String | Test.java:269:37:269:45 | element : String | Test.java:269:103:269:103 | v : Vector [] : String | Test.java:6198:26:6198:63 | newVectorWithElement(...) : Vector [] : String | +| Test.java:6200:20:6200:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6200:9:6200:48 | getElement(...) | +| Test.java:6200:44:6200:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | Test.java:6200:32:6200:47 | getMapValue(...) : Object [] : String | +| Test.java:6205:47:6205:62 | (...)... : String | Test.java:269:37:269:45 | element : String | Test.java:269:103:269:103 | v : Vector [] : String | Test.java:6205:26:6205:63 | newVectorWithElement(...) : Vector [] : String | +| Test.java:6207:20:6207:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6207:9:6207:48 | getElement(...) | +| Test.java:6207:44:6207:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | Test.java:6207:32:6207:47 | getMapValue(...) : Object [] : String | +| Test.java:6212:47:6212:62 | (...)... : String | Test.java:269:37:269:45 | element : String | Test.java:269:103:269:103 | v : Vector [] : String | Test.java:6212:26:6212:63 | newVectorWithElement(...) : Vector [] : String | +| Test.java:6214:20:6214:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6214:9:6214:48 | getElement(...) | +| Test.java:6214:44:6214:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | Test.java:6214:32:6214:47 | getMapValue(...) : Object [] : String | +| Test.java:6221:19:6221:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6221:9:6221:22 | getMapKey(...) | +| Test.java:6228:19:6228:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6228:9:6228:22 | getMapKey(...) | +| Test.java:6235:19:6235:21 | out : MultiValueMap [] : String | Test.java:228:18:228:29 | map : MultiValueMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6235:9:6235:22 | getMapKey(...) | +| Test.java:6240:32:6240:47 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | Test.java:6240:13:6240:48 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | +| Test.java:6240:32:6240:47 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:6240:13:6240:48 | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:6242:20:6242:47 | (...)... : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6242:9:6242:48 | getElement(...) | +| Test.java:6242:20:6242:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6242:9:6242:48 | getElement(...) | +| Test.java:6242:44:6242:46 | out : MultiValueMap [, ] : Object | Test.java:232:20:232:31 | map : MultiValueMap [, ] : Object | Test.java:232:43:232:55 | get(...) : Object [] : Object | Test.java:6242:32:6242:47 | getMapValue(...) : Object [] : Object | +| Test.java:6242:44:6242:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | Test.java:6242:32:6242:47 | getMapValue(...) : Object [] : String | +| Test.java:6249:20:6249:47 | (...)... : Collection | Test.java:230:19:230:32 | it : Collection | Test.java:230:44:230:63 | next(...) : Object | Test.java:6249:9:6249:48 | getElement(...) | +| Test.java:6249:20:6249:47 | (...)... : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6249:9:6249:48 | getElement(...) | +| Test.java:6249:44:6249:46 | out : MultiValueMap [, ] : Object | Test.java:232:20:232:31 | map : MultiValueMap [, ] : Object | Test.java:232:43:232:55 | get(...) : Object [] : Object | Test.java:6249:32:6249:47 | getMapValue(...) : Object [] : Object | +| Test.java:6249:44:6249:46 | out : MultiValueMap [] : Object | Test.java:232:20:232:31 | map : MultiValueMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:6249:32:6249:47 | getMapValue(...) : Object | +| Test.java:6256:19:6256:21 | out : MultiValueMap [] : Object | Test.java:228:18:228:29 | map : MultiValueMap [] : Object | Test.java:228:41:228:70 | next(...) : Object | Test.java:6256:9:6256:22 | getMapKey(...) | +| Test.java:6261:42:6261:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:6261:20:6261:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:6263:20:6263:47 | (...)... : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6263:9:6263:48 | getElement(...) | +| Test.java:6263:44:6263:46 | out : MultiValueMap [, ] : String | Test.java:232:20:232:31 | map : MultiValueMap [, ] : String | Test.java:232:43:232:55 | get(...) : Object [] : String | Test.java:6263:32:6263:47 | getMapValue(...) : Object [] : String | +| Test.java:6268:42:6268:57 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [, ] : String | Test.java:6268:23:6268:58 | newMVMWithMapValue(...) : MultiValueMap [, ] : String | +| Test.java:6268:42:6268:57 | (...)... : String | Test.java:298:49:298:55 | value : String | Test.java:298:137:298:137 | m : MultiValueMap [] : String | Test.java:6268:23:6268:58 | newMVMWithMapValue(...) : MultiValueMap [] : String | +| Test.java:6270:20:6270:22 | out : Collection [] : Object | Test.java:230:19:230:32 | it : Collection [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6270:9:6270:23 | getElement(...) | +| Test.java:6270:20:6270:22 | out : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6270:9:6270:23 | getElement(...) | +| Test.java:6277:19:6277:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6277:9:6277:22 | getMapKey(...) | +| Test.java:6284:21:6284:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6284:9:6284:24 | getMapValue(...) | +| Test.java:6291:19:6291:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6291:9:6291:22 | getMapKey(...) | +| Test.java:6298:21:6298:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6298:9:6298:24 | getMapValue(...) | +| Test.java:6305:19:6305:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6305:9:6305:22 | getMapKey(...) | +| Test.java:6312:21:6312:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6312:9:6312:24 | getMapValue(...) | +| Test.java:6319:19:6319:21 | out : PassiveExpiringMap [] : String | Test.java:228:18:228:29 | map : PassiveExpiringMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6319:9:6319:22 | getMapKey(...) | +| Test.java:6326:21:6326:23 | out : PassiveExpiringMap [] : String | Test.java:232:20:232:31 | map : PassiveExpiringMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6326:9:6326:24 | getMapValue(...) | +| Test.java:6333:19:6333:21 | out : PredicatedMap [] : String | Test.java:228:18:228:29 | map : PredicatedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6333:9:6333:22 | getMapKey(...) | +| Test.java:6340:21:6340:23 | out : PredicatedMap [] : String | Test.java:232:20:232:31 | map : PredicatedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6340:9:6340:24 | getMapValue(...) | +| Test.java:6345:40:6345:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:6345:19:6345:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:6347:19:6347:21 | out : PredicatedSortedMap [] : String | Test.java:228:18:228:29 | map : PredicatedSortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6347:9:6347:22 | getMapKey(...) | +| Test.java:6352:42:6352:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:6352:19:6352:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:6354:21:6354:23 | out : PredicatedSortedMap [] : String | Test.java:232:20:232:31 | map : PredicatedSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6354:9:6354:24 | getMapValue(...) | +| Test.java:6359:36:6359:51 | (...)... : String | Test.java:286:46:286:50 | key : String | Test.java:286:62:286:116 | new TiedMapEntry(...) : TiedMapEntry [] : String | Test.java:6359:19:6359:52 | newTMEWithMapKey(...) : TiedMapEntry [] : String | +| Test.java:6361:19:6361:21 | out : SingletonMap [] : String | Test.java:228:18:228:29 | map : SingletonMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6361:9:6361:22 | getMapKey(...) | +| Test.java:6366:38:6366:53 | (...)... : String | Test.java:305:48:305:54 | value : String | Test.java:305:66:305:127 | new TiedMapEntry(...) : TiedMapEntry [] : String | Test.java:6366:19:6366:54 | newTMEWithMapValue(...) : TiedMapEntry [] : String | +| Test.java:6368:21:6368:23 | out : SingletonMap [] : String | Test.java:232:20:232:31 | map : SingletonMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6368:9:6368:24 | getMapValue(...) | +| Test.java:6373:35:6373:50 | (...)... : String | Test.java:273:49:273:53 | key : String | Test.java:273:65:273:103 | new DefaultKeyValue(...) : DefaultKeyValue [] : String | Test.java:6373:18:6373:51 | newDKVWithMapKey(...) : DefaultKeyValue [] : String | +| Test.java:6375:19:6375:21 | out : SingletonMap [] : String | Test.java:228:18:228:29 | map : SingletonMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6375:9:6375:22 | getMapKey(...) | +| Test.java:6380:37:6380:52 | (...)... : String | Test.java:291:51:291:57 | value : String | Test.java:291:69:291:109 | new DefaultKeyValue(...) : DefaultKeyValue [] : String | Test.java:6380:18:6380:53 | newDKVWithMapValue(...) : DefaultKeyValue [] : String | +| Test.java:6382:21:6382:23 | out : SingletonMap [] : String | Test.java:232:20:232:31 | map : SingletonMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6382:9:6382:24 | getMapValue(...) | +| Test.java:6389:19:6389:21 | out : SingletonMap [] : String | Test.java:228:18:228:29 | map : SingletonMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6389:9:6389:22 | getMapKey(...) | +| Test.java:6396:21:6396:23 | out : SingletonMap [] : String | Test.java:232:20:232:31 | map : SingletonMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6396:9:6396:24 | getMapValue(...) | +| Test.java:6403:19:6403:21 | out : SingletonMap [] : Object | Test.java:228:18:228:29 | map : SingletonMap [] : Object | Test.java:228:41:228:70 | next(...) : Object | Test.java:6403:9:6403:22 | getMapKey(...) | +| Test.java:6410:21:6410:23 | out : SingletonMap [] : Object | Test.java:232:20:232:31 | map : SingletonMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:6410:9:6410:24 | getMapValue(...) | +| Test.java:6417:21:6417:23 | out : SingletonMap [] : Object | Test.java:232:20:232:31 | map : SingletonMap [] : Object | Test.java:232:43:232:55 | get(...) : Object | Test.java:6417:9:6417:24 | getMapValue(...) | +| Test.java:6424:19:6424:21 | out : TransformedMap [] : String | Test.java:228:18:228:29 | map : TransformedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6424:9:6424:22 | getMapKey(...) | +| Test.java:6431:21:6431:23 | out : TransformedMap [] : String | Test.java:232:20:232:31 | map : TransformedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6431:9:6431:24 | getMapValue(...) | +| Test.java:6436:40:6436:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:6436:19:6436:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:6438:19:6438:21 | out : TransformedSortedMap [] : String | Test.java:228:18:228:29 | map : TransformedSortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6438:9:6438:22 | getMapKey(...) | +| Test.java:6443:42:6443:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:6443:19:6443:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:6445:21:6445:23 | out : TransformedSortedMap [] : String | Test.java:232:20:232:31 | map : TransformedSortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6445:9:6445:24 | getMapValue(...) | +| Test.java:6450:68:6450:101 | newTMEWithMapKey(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | Test.java:260:135:260:135 | x : ListOrderedSet [, ] : String | Test.java:6450:39:6450:102 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | +| Test.java:6450:85:6450:100 | (...)... : String | Test.java:286:46:286:50 | key : String | Test.java:286:62:286:116 | new TiedMapEntry(...) : TiedMapEntry [] : String | Test.java:6450:68:6450:101 | newTMEWithMapKey(...) : TiedMapEntry [] : String | +| Test.java:6452:28:6452:42 | getElement(...) : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | Test.java:238:62:238:79 | getKey(...) : String | Test.java:6452:9:6452:43 | getMapKeyFromEntry(...) | +| Test.java:6452:39:6452:41 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:6452:28:6452:42 | getElement(...) : Entry [] : String | +| Test.java:6457:68:6457:103 | newTMEWithMapValue(...) : TiedMapEntry [] : String | Test.java:260:53:260:61 | element : TiedMapEntry [] : String | Test.java:260:135:260:135 | x : ListOrderedSet [, ] : String | Test.java:6457:39:6457:104 | newListOrderedSetWithElement(...) : ListOrderedSet [, ] : String | +| Test.java:6457:87:6457:102 | (...)... : String | Test.java:305:48:305:54 | value : String | Test.java:305:66:305:127 | new TiedMapEntry(...) : TiedMapEntry [] : String | Test.java:6457:68:6457:103 | newTMEWithMapValue(...) : TiedMapEntry [] : String | +| Test.java:6459:30:6459:44 | getElement(...) : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | Test.java:244:64:244:83 | getValue(...) : String | Test.java:6459:9:6459:45 | getMapValueFromEntry(...) | +| Test.java:6459:41:6459:43 | out : Set [, ] : String | Test.java:230:19:230:32 | it : Set [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:6459:30:6459:44 | getElement(...) : Entry [] : String | +| Test.java:6466:19:6466:21 | out : Map [] : String | Test.java:228:18:228:29 | map : Map [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6466:9:6466:22 | getMapKey(...) | +| Test.java:6473:21:6473:23 | out : Map [] : String | Test.java:232:20:232:31 | map : Map [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6473:9:6473:24 | getMapValue(...) | +| Test.java:6478:48:6478:63 | (...)... : String | Test.java:277:59:277:63 | key : String | Test.java:277:75:277:132 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:6478:20:6478:64 | newListOrderedMapWithMapKey(...) : ListOrderedMap [] : String | +| Test.java:6480:19:6480:21 | out : OrderedMap [] : String | Test.java:228:18:228:29 | map : OrderedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6480:9:6480:22 | getMapKey(...) | +| Test.java:6485:50:6485:65 | (...)... : String | Test.java:296:61:296:67 | value : String | Test.java:296:79:296:138 | listOrderedMap(...) : ListOrderedMap [] : String | Test.java:6485:20:6485:66 | newListOrderedMapWithMapValue(...) : ListOrderedMap [] : String | +| Test.java:6487:21:6487:23 | out : OrderedMap [] : String | Test.java:232:20:232:31 | map : OrderedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6487:9:6487:24 | getMapValue(...) | +| Test.java:6492:40:6492:55 | (...)... : String | Test.java:285:47:285:51 | key : String | Test.java:285:121:285:121 | m : TreeMap [] : String | Test.java:6492:19:6492:56 | newTreeMapWithMapKey(...) : TreeMap [] : String | +| Test.java:6494:19:6494:21 | out : SortedMap [] : String | Test.java:228:18:228:29 | map : SortedMap [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6494:9:6494:22 | getMapKey(...) | +| Test.java:6499:42:6499:57 | (...)... : String | Test.java:304:49:304:55 | value : String | Test.java:304:127:304:127 | m : TreeMap [] : String | Test.java:6499:19:6499:58 | newTreeMapWithMapValue(...) : TreeMap [] : String | +| Test.java:6501:21:6501:23 | out : SortedMap [] : String | Test.java:232:20:232:31 | map : SortedMap [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6501:9:6501:24 | getMapValue(...) | +| Test.java:6508:19:6508:21 | out : ArrayListValuedHashMap [] : String | Test.java:240:18:240:46 | container : ArrayListValuedHashMap [] : String | Test.java:240:58:240:93 | next(...) : String | Test.java:6508:9:6508:22 | getMapKey(...) | +| Test.java:6515:20:6515:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6515:9:6515:36 | getElement(...) | +| Test.java:6515:32:6515:34 | out : ArrayListValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : ArrayListValuedHashMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | Test.java:6515:20:6515:35 | getMapValue(...) : Collection [] : String | +| Test.java:6520:45:6520:60 | (...)... : String | Test.java:290:60:290:66 | value : String | Test.java:290:166:290:166 | m : ArrayListValuedHashMap [, ] : String | Test.java:6520:24:6520:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | +| Test.java:6522:20:6522:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6522:9:6522:36 | getElement(...) | +| Test.java:6522:32:6522:34 | out : ArrayListValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : ArrayListValuedHashMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | Test.java:6522:20:6522:35 | getMapValue(...) : Collection [] : String | +| Test.java:6527:43:6527:58 | (...)... : String | Test.java:272:58:272:62 | key : String | Test.java:272:160:272:160 | m : ArrayListValuedHashMap [] : String | Test.java:6527:24:6527:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | +| Test.java:6529:19:6529:21 | out : ArrayListValuedHashMap [] : String | Test.java:240:18:240:46 | container : ArrayListValuedHashMap [] : String | Test.java:240:58:240:93 | next(...) : String | Test.java:6529:9:6529:22 | getMapKey(...) | +| Test.java:6536:19:6536:21 | out : HashSetValuedHashMap [] : String | Test.java:240:18:240:46 | container : HashSetValuedHashMap [] : String | Test.java:240:58:240:93 | next(...) : String | Test.java:6536:9:6536:22 | getMapKey(...) | +| Test.java:6543:20:6543:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6543:9:6543:36 | getElement(...) | +| Test.java:6543:32:6543:34 | out : HashSetValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : HashSetValuedHashMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | Test.java:6543:20:6543:35 | getMapValue(...) : Collection [] : String | +| Test.java:6548:45:6548:60 | (...)... : String | Test.java:290:60:290:66 | value : String | Test.java:290:166:290:166 | m : ArrayListValuedHashMap [, ] : String | Test.java:6548:24:6548:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | +| Test.java:6550:20:6550:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6550:9:6550:36 | getElement(...) | +| Test.java:6550:32:6550:34 | out : HashSetValuedHashMap [, ] : String | Test.java:247:32:247:60 | container : HashSetValuedHashMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | Test.java:6550:20:6550:35 | getMapValue(...) : Collection [] : String | +| Test.java:6555:43:6555:58 | (...)... : String | Test.java:272:58:272:62 | key : String | Test.java:272:160:272:160 | m : ArrayListValuedHashMap [] : String | Test.java:6555:24:6555:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | +| Test.java:6557:19:6557:21 | out : HashSetValuedHashMap [] : String | Test.java:240:18:240:46 | container : HashSetValuedHashMap [] : String | Test.java:240:58:240:93 | next(...) : String | Test.java:6557:9:6557:22 | getMapKey(...) | +| Test.java:6562:45:6562:60 | (...)... : String | Test.java:290:60:290:66 | value : String | Test.java:290:166:290:166 | m : ArrayListValuedHashMap [, ] : String | Test.java:6562:24:6562:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | +| Test.java:6564:20:6564:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6564:9:6564:36 | getElement(...) | +| Test.java:6564:32:6564:34 | out : TransformedMultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : TransformedMultiValuedMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | Test.java:6564:20:6564:35 | getMapValue(...) : Collection [] : String | +| Test.java:6569:43:6569:58 | (...)... : String | Test.java:272:58:272:62 | key : String | Test.java:272:160:272:160 | m : ArrayListValuedHashMap [] : String | Test.java:6569:24:6569:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | +| Test.java:6571:19:6571:21 | out : TransformedMultiValuedMap [] : String | Test.java:240:18:240:46 | container : TransformedMultiValuedMap [] : String | Test.java:240:58:240:93 | next(...) : String | Test.java:6571:9:6571:22 | getMapKey(...) | +| Test.java:6576:45:6576:60 | (...)... : String | Test.java:290:60:290:66 | value : String | Test.java:290:166:290:166 | m : ArrayListValuedHashMap [, ] : String | Test.java:6576:24:6576:61 | newALVHMWithMapValue(...) : ArrayListValuedHashMap [, ] : String | +| Test.java:6578:20:6578:35 | getMapValue(...) : Collection [] : String | Test.java:230:19:230:32 | it : Collection [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6578:9:6578:36 | getElement(...) | +| Test.java:6578:32:6578:34 | out : UnmodifiableMultiValuedMap [, ] : String | Test.java:247:32:247:60 | container : UnmodifiableMultiValuedMap [, ] : String | Test.java:247:72:247:90 | get(...) : Collection [] : String | Test.java:6578:20:6578:35 | getMapValue(...) : Collection [] : String | +| Test.java:6583:43:6583:58 | (...)... : String | Test.java:272:58:272:62 | key : String | Test.java:272:160:272:160 | m : ArrayListValuedHashMap [] : String | Test.java:6583:24:6583:59 | newALVHMWithMapKey(...) : ArrayListValuedHashMap [] : String | +| Test.java:6585:19:6585:21 | out : UnmodifiableMultiValuedMap [] : String | Test.java:240:18:240:46 | container : UnmodifiableMultiValuedMap [] : String | Test.java:240:58:240:93 | next(...) : String | Test.java:6585:9:6585:22 | getMapKey(...) | +| Test.java:6590:42:6590:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:6590:20:6590:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:6592:20:6592:22 | out : HashMultiSet [] : String | Test.java:230:19:230:32 | it : HashMultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6592:9:6592:23 | getElement(...) | +| Test.java:6597:45:6597:60 | (...)... : String | Test.java:258:49:258:57 | element : String | Test.java:258:127:258:127 | x : HashMultiSet [] : String | Test.java:6597:18:6597:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | +| Test.java:6599:20:6599:22 | out : PredicatedMultiSet [] : String | Test.java:230:19:230:32 | it : PredicatedMultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6599:9:6599:23 | getElement(...) | +| Test.java:6604:45:6604:60 | (...)... : String | Test.java:258:49:258:57 | element : String | Test.java:258:127:258:127 | x : HashMultiSet [] : String | Test.java:6604:18:6604:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | +| Test.java:6606:20:6606:22 | out : SynchronizedMultiSet [] : String | Test.java:230:19:230:32 | it : SynchronizedMultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6606:9:6606:23 | getElement(...) | +| Test.java:6611:45:6611:60 | (...)... : String | Test.java:258:49:258:57 | element : String | Test.java:258:127:258:127 | x : HashMultiSet [] : String | Test.java:6611:18:6611:61 | newHashMultiSetWithElement(...) : HashMultiSet [] : String | +| Test.java:6613:20:6613:22 | out : MultiSet [] : String | Test.java:230:19:230:32 | it : MultiSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6613:9:6613:23 | getElement(...) | +| Test.java:6682:42:6682:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:6682:20:6682:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:6684:20:6684:22 | out : CircularFifoQueue [] : String | Test.java:230:19:230:32 | it : CircularFifoQueue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6684:9:6684:23 | getElement(...) | +| Test.java:6689:59:6689:74 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:6689:27:6689:75 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:6696:47:6696:62 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:6696:15:6696:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:6698:20:6698:22 | out : PredicatedQueue [] : String | Test.java:230:19:230:32 | it : PredicatedQueue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6698:9:6698:23 | getElement(...) | +| Test.java:6703:47:6703:62 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:6703:15:6703:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:6705:20:6705:22 | out : SynchronizedQueue [] : String | Test.java:230:19:230:32 | it : SynchronizedQueue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6705:9:6705:23 | getElement(...) | +| Test.java:6710:47:6710:62 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:6710:15:6710:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:6712:20:6712:22 | out : TransformedQueue [] : String | Test.java:230:19:230:32 | it : TransformedQueue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6712:9:6712:23 | getElement(...) | +| Test.java:6717:47:6717:62 | (...)... : String | Test.java:253:59:253:67 | element : String | Test.java:253:147:253:147 | x : CircularFifoQueue [] : String | Test.java:6717:15:6717:63 | newCircularFifoQueueWithElement(...) : CircularFifoQueue [] : String | +| Test.java:6719:20:6719:22 | out : Queue [] : String | Test.java:230:19:230:32 | it : Queue [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6719:9:6719:23 | getElement(...) | +| Test.java:6724:44:6724:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6724:22:6724:60 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6725:46:6725:47 | in : TreeSet [] : String | Test.java:7237:42:7237:66 | set : TreeSet [] : String | Test.java:7237:10:7237:40 | parameter this [Return] : MyAbstractNavigableSetDecorator [] : String | Test.java:6725:10:6725:48 | new MyAbstractNavigableSetDecorator<>(...) : MyAbstractNavigableSetDecorator [] : String | +| Test.java:6726:20:6726:22 | out : MyAbstractNavigableSetDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractNavigableSetDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6726:9:6726:23 | getElement(...) | +| Test.java:6731:42:6731:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6731:13:6731:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6732:37:6732:38 | in : ListOrderedSet [] : String | Test.java:7243:33:7243:48 | set : ListOrderedSet [] : String | Test.java:7243:10:7243:31 | parameter this [Return] : MyAbstractSetDecorator [] : String | Test.java:6732:10:6732:39 | new MyAbstractSetDecorator<>(...) : MyAbstractSetDecorator [] : String | +| Test.java:6733:20:6733:22 | out : MyAbstractSetDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSetDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6733:9:6733:23 | getElement(...) | +| Test.java:6738:42:6738:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6738:13:6738:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6739:43:6739:44 | in : ListOrderedSet [] : String | Test.java:7249:39:7249:54 | set : ListOrderedSet [] : String | Test.java:7249:10:7249:37 | parameter this [Return] : MyAbstractSortedSetDecorator [] : String | Test.java:6739:10:6739:45 | new MyAbstractSortedSetDecorator<>(...) : MyAbstractSortedSetDecorator [] : String | +| Test.java:6740:20:6740:22 | out : MyAbstractSortedSetDecorator [] : String | Test.java:230:19:230:32 | it : MyAbstractSortedSetDecorator [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6740:9:6740:23 | getElement(...) | +| Test.java:6748:20:6748:22 | out : CompositeSet [] : Object | Test.java:230:19:230:32 | it : CompositeSet [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6748:9:6748:23 | getElement(...) | +| Test.java:6756:20:6756:34 | getElement(...) : Set [] : Object | Test.java:230:19:230:32 | it : Set [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6756:9:6756:35 | getElement(...) | +| Test.java:6756:31:6756:33 | out : List [, ] : Object | Test.java:230:19:230:32 | it : List [, ] : Object | Test.java:230:44:230:63 | next(...) : Object [] : Object | Test.java:6756:20:6756:34 | getElement(...) : Set [] : Object | +| Test.java:6761:42:6761:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:6761:20:6761:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:6764:20:6764:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6764:9:6764:23 | getElement(...) | +| Test.java:6769:42:6769:57 | (...)... : String | Test.java:267:39:267:47 | element : String | Test.java:267:107:267:107 | b : TreeBag [] : String | Test.java:6769:20:6769:58 | newTreeBagWithElement(...) : TreeBag [] : String | +| Test.java:6772:20:6772:34 | getElement(...) : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6772:9:6772:35 | getElement(...) | +| Test.java:6772:31:6772:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:6772:20:6772:34 | getElement(...) : Set [] : String | +| Test.java:6777:42:6777:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6777:13:6777:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6779:20:6779:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6779:9:6779:23 | getElement(...) | +| Test.java:6784:54:6784:69 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6784:25:6784:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6786:20:6786:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6786:9:6786:23 | getElement(...) | +| Test.java:6791:42:6791:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6791:13:6791:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6793:20:6793:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6793:9:6793:23 | getElement(...) | +| Test.java:6798:42:6798:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6798:13:6798:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6800:20:6800:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6800:9:6800:23 | getElement(...) | +| Test.java:6805:42:6805:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6805:13:6805:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6807:20:6807:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6807:9:6807:23 | getElement(...) | +| Test.java:6812:54:6812:69 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6812:25:6812:70 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6814:20:6814:22 | out : CompositeSet [] : String | Test.java:230:19:230:32 | it : CompositeSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6814:9:6814:23 | getElement(...) | +| Test.java:6819:57:6819:72 | (...)... : String | Test.java:254:49:254:57 | element : String | Test.java:254:69:254:126 | new CompositeSet(...) : CompositeSet [] : String | Test.java:6819:30:6819:73 | newCompositeSetWithElement(...) : CompositeSet [] : String | +| Test.java:6821:20:6821:34 | getElement(...) : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6821:9:6821:35 | getElement(...) | +| Test.java:6821:31:6821:33 | out : List [, ] : String | Test.java:230:19:230:32 | it : List [, ] : String | Test.java:230:44:230:63 | next(...) : Object [] : String | Test.java:6821:20:6821:34 | getElement(...) : Set [] : String | +| Test.java:6826:49:6826:64 | (...)... : String | Test.java:254:49:254:57 | element : String | Test.java:254:69:254:126 | new CompositeSet(...) : CompositeSet [] : String | Test.java:6826:22:6826:65 | newCompositeSetWithElement(...) : CompositeSet [] : String | +| Test.java:6828:20:6828:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6828:9:6828:23 | getElement(...) | +| Test.java:6835:20:6835:22 | out : ListOrderedSet [] : Object | Test.java:230:19:230:32 | it : ListOrderedSet [] : Object | Test.java:230:44:230:63 | next(...) : Object | Test.java:6835:9:6835:23 | getElement(...) | +| Test.java:6842:20:6842:22 | out : ListOrderedSet [] : String | Test.java:230:19:230:32 | it : ListOrderedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6842:9:6842:23 | getElement(...) | +| Test.java:6847:53:6847:68 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6847:24:6847:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6849:20:6849:22 | out : List [] : String | Test.java:230:19:230:32 | it : List [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6849:9:6849:23 | getElement(...) | +| Test.java:6854:53:6854:68 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6854:24:6854:69 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6863:20:6863:22 | out : ListOrderedSet [] : String | Test.java:230:19:230:32 | it : ListOrderedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6863:9:6863:23 | getElement(...) | +| Test.java:6868:42:6868:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6868:13:6868:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6870:20:6870:22 | out : ListOrderedSet [] : String | Test.java:230:19:230:32 | it : ListOrderedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6870:9:6870:23 | getElement(...) | +| Test.java:6877:20:6877:22 | out : MapBackedSet [] : String | Test.java:230:19:230:32 | it : MapBackedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6877:9:6877:23 | getElement(...) | +| Test.java:6884:20:6884:22 | out : MapBackedSet [] : String | Test.java:230:19:230:32 | it : MapBackedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6884:9:6884:23 | getElement(...) | +| Test.java:6889:44:6889:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6889:22:6889:60 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6891:20:6891:22 | out : PredicatedNavigableSet [] : String | Test.java:230:19:230:32 | it : PredicatedNavigableSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6891:9:6891:23 | getElement(...) | +| Test.java:6896:42:6896:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6896:13:6896:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6898:20:6898:22 | out : PredicatedSet [] : String | Test.java:230:19:230:32 | it : PredicatedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6898:9:6898:23 | getElement(...) | +| Test.java:6903:41:6903:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6903:19:6903:57 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6905:20:6905:22 | out : PredicatedSortedSet [] : String | Test.java:230:19:230:32 | it : PredicatedSortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6905:9:6905:23 | getElement(...) | +| Test.java:6910:44:6910:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6910:22:6910:60 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6912:20:6912:22 | out : TransformedNavigableSet [] : String | Test.java:230:19:230:32 | it : TransformedNavigableSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6912:9:6912:23 | getElement(...) | +| Test.java:6917:42:6917:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6917:13:6917:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6919:20:6919:22 | out : TransformedSet [] : String | Test.java:230:19:230:32 | it : TransformedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6919:9:6919:23 | getElement(...) | +| Test.java:6924:41:6924:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6924:19:6924:57 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6926:20:6926:22 | out : TransformedSortedSet [] : String | Test.java:230:19:230:32 | it : TransformedSortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6926:9:6926:23 | getElement(...) | +| Test.java:6931:44:6931:59 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6931:22:6931:60 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6933:20:6933:22 | out : NavigableSet [] : String | Test.java:230:19:230:32 | it : NavigableSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6933:9:6933:23 | getElement(...) | +| Test.java:6938:42:6938:57 | (...)... : String | Test.java:260:53:260:61 | element : String | Test.java:260:135:260:135 | x : ListOrderedSet [] : String | Test.java:6938:13:6938:58 | newListOrderedSetWithElement(...) : ListOrderedSet [] : String | +| Test.java:6940:20:6940:22 | out : Set [] : String | Test.java:230:19:230:32 | it : Set [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6940:9:6940:23 | getElement(...) | +| Test.java:6945:41:6945:56 | (...)... : String | Test.java:268:39:268:47 | element : String | Test.java:268:107:268:107 | h : TreeSet [] : String | Test.java:6945:19:6945:57 | newTreeSetWithElement(...) : TreeSet [] : String | +| Test.java:6947:20:6947:22 | out : SortedSet [] : String | Test.java:230:19:230:32 | it : SortedSet [] : String | Test.java:230:44:230:63 | next(...) : String | Test.java:6947:9:6947:23 | getElement(...) | +| Test.java:6954:26:6954:28 | out : AbstractIterableGetMapDecorator [] : String | Test.java:241:25:241:42 | container : AbstractIterableGetMapDecorator [] : String | Test.java:241:54:241:89 | next(...) : String | Test.java:6954:9:6954:29 | getMapKeyFromGet(...) | +| Test.java:6961:28:6961:30 | out : AbstractIterableGetMapDecorator [] : String | Test.java:248:27:248:44 | container : AbstractIterableGetMapDecorator [] : String | Test.java:248:56:248:74 | get(...) : String | Test.java:6961:9:6961:31 | getMapValueFromGet(...) | +| Test.java:6968:26:6968:28 | out : TransformedSplitMap [] : String | Test.java:241:25:241:42 | container : TransformedSplitMap [] : String | Test.java:241:54:241:89 | next(...) : String | Test.java:6968:9:6968:29 | getMapKeyFromGet(...) | +| Test.java:6975:28:6975:30 | out : TransformedSplitMap [] : String | Test.java:248:27:248:44 | container : TransformedSplitMap [] : String | Test.java:248:56:248:74 | get(...) : String | Test.java:6975:9:6975:31 | getMapValueFromGet(...) | +| Test.java:6982:19:6982:21 | out : PatriciaTrie [] : String | Test.java:228:18:228:29 | map : PatriciaTrie [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:6982:9:6982:22 | getMapKey(...) | +| Test.java:6989:21:6989:23 | out : PatriciaTrie [] : String | Test.java:232:20:232:31 | map : PatriciaTrie [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:6989:9:6989:24 | getMapValue(...) | +| Test.java:6993:56:6993:71 | (...)... : String | Test.java:288:49:288:58 | key : String | Test.java:288:134:288:134 | m : PatriciaTrie [] : String | Test.java:6993:30:6993:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | +| Test.java:6996:28:6996:30 | out : Entry [] : String | Test.java:238:27:238:50 | container : Entry [] : String | Test.java:238:62:238:79 | getKey(...) : String | Test.java:6996:9:6996:31 | getMapKeyFromEntry(...) | +| Test.java:7000:58:7000:73 | (...)... : String | Test.java:307:50:307:56 | value : String | Test.java:307:129:307:129 | m : PatriciaTrie [] : String | Test.java:7000:30:7000:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | +| Test.java:7003:30:7003:32 | out : Entry [] : String | Test.java:244:29:244:52 | container : Entry [] : String | Test.java:244:64:244:83 | getValue(...) : String | Test.java:7003:9:7003:33 | getMapValueFromEntry(...) | +| Test.java:7007:56:7007:71 | (...)... : String | Test.java:288:49:288:58 | key : String | Test.java:288:134:288:134 | m : PatriciaTrie [] : String | Test.java:7007:30:7007:72 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | +| Test.java:7014:58:7014:73 | (...)... : String | Test.java:307:50:307:56 | value : String | Test.java:307:129:307:129 | m : PatriciaTrie [] : String | Test.java:7014:30:7014:74 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | +| Test.java:7022:40:7022:55 | (...)... : String | Test.java:288:49:288:58 | key : String | Test.java:288:134:288:134 | m : PatriciaTrie [] : String | Test.java:7022:14:7022:56 | newPatriciaTrieWithMapKey(...) : PatriciaTrie [] : String | +| Test.java:7024:19:7024:21 | out : Trie [] : String | Test.java:228:18:228:29 | map : Trie [] : String | Test.java:228:41:228:70 | next(...) : String | Test.java:7024:9:7024:22 | getMapKey(...) | +| Test.java:7029:42:7029:57 | (...)... : String | Test.java:307:50:307:56 | value : String | Test.java:307:129:307:129 | m : PatriciaTrie [] : String | Test.java:7029:14:7029:58 | newPatriciaTrieWithMapValue(...) : PatriciaTrie [] : String | +| Test.java:7031:21:7031:23 | out : Trie [] : String | Test.java:232:20:232:31 | map : Trie [] : String | Test.java:232:43:232:55 | get(...) : String | Test.java:7031:9:7031:24 | getMapValue(...) | testFailures diff --git a/java/ql/test/library-tests/frameworks/apache-commons-lang3/flow.expected b/java/ql/test/library-tests/frameworks/apache-commons-lang3/flow.expected index 4ecf1896c571..0613586b4db6 100644 --- a/java/ql/test/library-tests/frameworks/apache-commons-lang3/flow.expected +++ b/java/ql/test/library-tests/frameworks/apache-commons-lang3/flow.expected @@ -1,667 +1,661 @@ models | 1 | Summary: java.io; Reader; true; read; ; ; Argument[this]; Argument[0]; taint; manual | | 2 | Summary: java.io; StringReader; false; StringReader; ; ; Argument[0]; Argument[this]; taint; manual | -| 3 | Summary: java.lang; Appendable; true; append; ; ; Argument[0]; Argument[this]; taint; manual | -| 4 | Summary: java.lang; CharSequence; true; subSequence; ; ; Argument[this]; ReturnValue; taint; manual | -| 5 | Summary: java.lang; CharSequence; true; toString; ; ; Argument[this]; ReturnValue; taint; manual | -| 6 | Summary: java.lang; Iterable; true; iterator; (); ; Argument[this].Element; ReturnValue.Element; value; manual | -| 7 | Summary: java.lang; String; false; toCharArray; ; ; Argument[this]; ReturnValue; taint; manual | -| 8 | Summary: java.lang; StringBuffer; true; StringBuffer; (String); ; Argument[0]; Argument[this]; taint; manual | -| 9 | Summary: java.lang; StringBuilder; true; StringBuilder; ; ; Argument[0]; Argument[this]; taint; manual | -| 10 | Summary: java.nio; CharBuffer; true; wrap; (char[]); ; Argument[0]; ReturnValue; taint; manual | -| 11 | Summary: java.util; Collection; true; add; ; ; Argument[0]; Argument[this].Element; value; manual | -| 12 | Summary: java.util; Dictionary; true; put; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | -| 13 | Summary: java.util; Iterator; true; next; ; ; Argument[this].Element; ReturnValue; value; manual | -| 14 | Summary: java.util; ListIterator; true; previous; ; ; Argument[this].Element; ReturnValue; value; manual | -| 15 | Summary: java.util; Map$Entry; true; getValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 16 | Summary: java.util; Map$Entry; true; setValue; ; ; Argument[0]; Argument[this].MapValue; value; manual | -| 17 | Summary: java.util; Map; true; get; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 18 | Summary: java.util; Map; true; put; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | -| 19 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | -| 20 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; (java.lang.Object[]); ; Argument[0].ArrayElement; Argument[this]; taint; manual | -| 21 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; (java.lang.String,boolean); ; Argument[0]; Argument[this]; taint; manual | -| 22 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; (java.lang.String,java.lang.Object); ; Argument[0..1]; Argument[this]; taint; manual | -| 23 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | -| 24 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; (java.lang.String,java.lang.Object[],boolean); ; Argument[1].ArrayElement; Argument[this]; taint; manual | -| 25 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; ; ; Argument[this]; ReturnValue; value; manual | -| 26 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; appendSuper; ; ; Argument[0]; Argument[this]; taint; manual | -| 27 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; appendToString; ; ; Argument[0]; Argument[this]; taint; manual | -| 28 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; build; ; ; Argument[this]; ReturnValue; taint; manual | -| 29 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; getStringBuffer; ; ; Argument[this]; ReturnValue; taint; manual | -| 30 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | -| 31 | Summary: org.apache.commons.lang3.mutable; Mutable; true; getValue; ; ; Argument[this].SyntheticField[org.apache.commons.lang3.mutable.MutableObject.value]; ReturnValue; value; manual | -| 32 | Summary: org.apache.commons.lang3.mutable; Mutable; true; setValue; ; ; Argument[0]; Argument[this].SyntheticField[org.apache.commons.lang3.mutable.MutableObject.value]; value; manual | -| 33 | Summary: org.apache.commons.lang3.mutable; MutableObject; false; MutableObject; ; ; Argument[0]; Argument[this].SyntheticField[org.apache.commons.lang3.mutable.MutableObject.value]; value; manual | -| 34 | Summary: org.apache.commons.lang3.text; StrBuilder; false; StrBuilder; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 35 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (char[]); ; Argument[0]; Argument[this]; taint; manual | -| 36 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (char[],int,int); ; Argument[0]; Argument[this]; taint; manual | -| 37 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.CharSequence); ; Argument[0]; Argument[this]; taint; manual | -| 38 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.CharSequence,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 39 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | -| 40 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 41 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.String,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 42 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[0]; Argument[this]; taint; manual | -| 43 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | -| 44 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.StringBuffer); ; Argument[0]; Argument[this]; taint; manual | -| 45 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.StringBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 46 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.StringBuilder); ; Argument[0]; Argument[this]; taint; manual | -| 47 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.StringBuilder,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 48 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.nio.CharBuffer); ; Argument[0]; Argument[this]; taint; manual | -| 49 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.nio.CharBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 50 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (org.apache.commons.lang3.text.StrBuilder); ; Argument[0]; Argument[this]; taint; manual | -| 51 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; ; ; Argument[this]; ReturnValue; value; manual | -| 52 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendAll; (Iterable); ; Argument[0].Element; Argument[this]; taint; manual | -| 53 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendAll; (Iterator); ; Argument[0].Element; Argument[this]; taint; manual | -| 54 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendAll; (Object[]); ; Argument[0].ArrayElement; Argument[this]; taint; manual | -| 55 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendAll; ; ; Argument[this]; ReturnValue; value; manual | -| 56 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendFixedWidthPadLeft; ; ; Argument[0]; Argument[this]; taint; manual | -| 57 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendFixedWidthPadLeft; ; ; Argument[this]; ReturnValue; value; manual | -| 58 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendFixedWidthPadRight; ; ; Argument[0]; Argument[this]; taint; manual | -| 59 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendFixedWidthPadRight; ; ; Argument[this]; ReturnValue; value; manual | -| 60 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendNewLine; ; ; Argument[this]; ReturnValue; value; manual | -| 61 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendNull; ; ; Argument[this]; ReturnValue; value; manual | -| 62 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendPadding; ; ; Argument[this]; ReturnValue; value; manual | -| 63 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendSeparator; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 64 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendSeparator; (java.lang.String,int); ; Argument[0]; Argument[this]; taint; manual | -| 65 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendSeparator; (java.lang.String,java.lang.String); ; Argument[0..1]; Argument[this]; taint; manual | -| 66 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendSeparator; ; ; Argument[this]; ReturnValue; value; manual | -| 67 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendTo; ; ; Argument[this]; Argument[0]; taint; manual | -| 68 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendWithSeparators; (Iterable,String); ; Argument[0].Element; Argument[this]; taint; manual | -| 69 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendWithSeparators; (Iterator,String); ; Argument[0].Element; Argument[this]; taint; manual | -| 70 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendWithSeparators; (Object[],String); ; Argument[0].ArrayElement; Argument[this]; taint; manual | -| 71 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendWithSeparators; ; ; Argument[1]; Argument[this]; taint; manual | -| 72 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendWithSeparators; ; ; Argument[this]; ReturnValue; value; manual | -| 73 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (char[]); ; Argument[0]; Argument[this]; taint; manual | -| 74 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (char[],int,int); ; Argument[0]; Argument[this]; taint; manual | -| 75 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | -| 76 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 77 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.String,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 78 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.String,java.lang.Object[]); ; Argument[0]; Argument[this]; taint; manual | -| 79 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | -| 80 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.StringBuffer); ; Argument[0]; Argument[this]; taint; manual | -| 81 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.StringBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 82 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.StringBuilder); ; Argument[0]; Argument[this]; taint; manual | -| 83 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.StringBuilder,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 84 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (org.apache.commons.lang3.text.StrBuilder); ; Argument[0]; Argument[this]; taint; manual | -| 85 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; ; ; Argument[this]; ReturnValue; value; manual | -| 86 | Summary: org.apache.commons.lang3.text; StrBuilder; false; asReader; ; ; Argument[this]; ReturnValue; taint; manual | -| 87 | Summary: org.apache.commons.lang3.text; StrBuilder; false; asTokenizer; ; ; Argument[this]; ReturnValue; taint; manual | -| 88 | Summary: org.apache.commons.lang3.text; StrBuilder; false; build; ; ; Argument[this]; ReturnValue; taint; manual | -| 89 | Summary: org.apache.commons.lang3.text; StrBuilder; false; delete; ; ; Argument[this]; ReturnValue; value; manual | -| 90 | Summary: org.apache.commons.lang3.text; StrBuilder; false; deleteAll; ; ; Argument[this]; ReturnValue; value; manual | -| 91 | Summary: org.apache.commons.lang3.text; StrBuilder; false; deleteCharAt; ; ; Argument[this]; ReturnValue; value; manual | -| 92 | Summary: org.apache.commons.lang3.text; StrBuilder; false; deleteFirst; ; ; Argument[this]; ReturnValue; value; manual | -| 93 | Summary: org.apache.commons.lang3.text; StrBuilder; false; ensureCapacity; ; ; Argument[this]; ReturnValue; value; manual | -| 94 | Summary: org.apache.commons.lang3.text; StrBuilder; false; getChars; (char[]); ; Argument[this]; Argument[0]; taint; manual | -| 95 | Summary: org.apache.commons.lang3.text; StrBuilder; false; getChars; (char[]); ; Argument[this]; ReturnValue; taint; manual | -| 96 | Summary: org.apache.commons.lang3.text; StrBuilder; false; getChars; (int,int,char[],int); ; Argument[this]; Argument[2]; taint; manual | -| 97 | Summary: org.apache.commons.lang3.text; StrBuilder; false; insert; ; ; Argument[1]; Argument[this]; taint; manual | -| 98 | Summary: org.apache.commons.lang3.text; StrBuilder; false; insert; ; ; Argument[this]; ReturnValue; value; manual | -| 99 | Summary: org.apache.commons.lang3.text; StrBuilder; false; leftString; ; ; Argument[this]; ReturnValue; taint; manual | -| 100 | Summary: org.apache.commons.lang3.text; StrBuilder; false; midString; ; ; Argument[this]; ReturnValue; taint; manual | -| 101 | Summary: org.apache.commons.lang3.text; StrBuilder; false; minimizeCapacity; ; ; Argument[this]; ReturnValue; value; manual | -| 102 | Summary: org.apache.commons.lang3.text; StrBuilder; false; readFrom; ; ; Argument[0]; Argument[this]; taint; manual | -| 103 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replace; (int,int,java.lang.String); ; Argument[2]; Argument[this]; taint; manual | -| 104 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replace; (org.apache.commons.lang3.text.StrMatcher,java.lang.String,int,int,int); ; Argument[1]; Argument[this]; taint; manual | -| 105 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replace; ; ; Argument[this]; ReturnValue; value; manual | -| 106 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replaceAll; ; ; Argument[1]; Argument[this]; taint; manual | -| 107 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replaceAll; ; ; Argument[this]; ReturnValue; value; manual | -| 108 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replaceFirst; ; ; Argument[1]; Argument[this]; taint; manual | -| 109 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replaceFirst; ; ; Argument[this]; ReturnValue; value; manual | -| 110 | Summary: org.apache.commons.lang3.text; StrBuilder; false; reverse; ; ; Argument[this]; ReturnValue; value; manual | -| 111 | Summary: org.apache.commons.lang3.text; StrBuilder; false; rightString; ; ; Argument[this]; ReturnValue; taint; manual | -| 112 | Summary: org.apache.commons.lang3.text; StrBuilder; false; setCharAt; ; ; Argument[this]; ReturnValue; value; manual | -| 113 | Summary: org.apache.commons.lang3.text; StrBuilder; false; setLength; ; ; Argument[this]; ReturnValue; value; manual | -| 114 | Summary: org.apache.commons.lang3.text; StrBuilder; false; setNewLineText; ; ; Argument[this]; ReturnValue; value; manual | -| 115 | Summary: org.apache.commons.lang3.text; StrBuilder; false; setNullText; ; ; Argument[this]; ReturnValue; value; manual | -| 116 | Summary: org.apache.commons.lang3.text; StrBuilder; false; subSequence; ; ; Argument[this]; ReturnValue; taint; manual | -| 117 | Summary: org.apache.commons.lang3.text; StrBuilder; false; substring; ; ; Argument[this]; ReturnValue; taint; manual | -| 118 | Summary: org.apache.commons.lang3.text; StrBuilder; false; toCharArray; ; ; Argument[this]; ReturnValue; taint; manual | -| 119 | Summary: org.apache.commons.lang3.text; StrBuilder; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | -| 120 | Summary: org.apache.commons.lang3.text; StrBuilder; false; toStringBuffer; ; ; Argument[this]; ReturnValue; taint; manual | -| 121 | Summary: org.apache.commons.lang3.text; StrBuilder; false; toStringBuilder; ; ; Argument[this]; ReturnValue; taint; manual | -| 122 | Summary: org.apache.commons.lang3.text; StrBuilder; false; trim; ; ; Argument[this]; ReturnValue; value; manual | -| 123 | Summary: org.apache.commons.lang3.text; StrLookup; false; lookup; ; ; Argument[this]; ReturnValue; taint; manual | -| 124 | Summary: org.apache.commons.lang3.text; StrLookup; false; mapLookup; ; ; Argument[0].MapValue; ReturnValue; taint; manual | -| 125 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; StrSubstitutor; ; ; Argument[0].MapValue; Argument[this]; taint; manual | -| 126 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; StrSubstitutor; ; ; Argument[0]; Argument[this]; taint; manual | -| 127 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (char[]); ; Argument[0]; ReturnValue; taint; manual | -| 128 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (char[],int,int); ; Argument[0]; ReturnValue; taint; manual | -| 129 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.CharSequence); ; Argument[0]; ReturnValue; taint; manual | -| 130 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.CharSequence,int,int); ; Argument[0]; ReturnValue; taint; manual | -| 131 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object); ; Argument[0]; ReturnValue; taint; manual | -| 132 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object,java.util.Map); ; Argument[0]; ReturnValue; taint; manual | -| 133 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object,java.util.Map); ; Argument[1].MapValue; ReturnValue; taint; manual | -| 134 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object,java.util.Map,java.lang.String,java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 135 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object,java.util.Map,java.lang.String,java.lang.String); ; Argument[1].MapValue; ReturnValue; taint; manual | -| 136 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object,java.util.Properties); ; Argument[0]; ReturnValue; taint; manual | -| 137 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object,java.util.Properties); ; Argument[1].MapValue; ReturnValue; taint; manual | -| 138 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 139 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.String,int,int); ; Argument[0]; ReturnValue; taint; manual | -| 140 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.StringBuffer); ; Argument[0]; ReturnValue; taint; manual | -| 141 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.StringBuffer,int,int); ; Argument[0]; ReturnValue; taint; manual | -| 142 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (org.apache.commons.lang3.text.StrBuilder); ; Argument[0]; ReturnValue; taint; manual | -| 143 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (org.apache.commons.lang3.text.StrBuilder,int,int); ; Argument[0]; ReturnValue; taint; manual | -| 144 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; ; ; Argument[this]; ReturnValue; taint; manual | -| 145 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replaceIn; (java.lang.StringBuffer); ; Argument[this]; Argument[0]; taint; manual | -| 146 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replaceIn; (java.lang.StringBuffer,int,int); ; Argument[this]; Argument[0]; taint; manual | -| 147 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replaceIn; (java.lang.StringBuilder); ; Argument[this]; Argument[0]; taint; manual | -| 148 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replaceIn; (java.lang.StringBuilder,int,int); ; Argument[this]; Argument[0]; taint; manual | -| 149 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replaceIn; (org.apache.commons.lang3.text.StrBuilder); ; Argument[this]; Argument[0]; taint; manual | -| 150 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replaceIn; (org.apache.commons.lang3.text.StrBuilder,int,int); ; Argument[this]; Argument[0]; taint; manual | -| 151 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; setVariableResolver; ; ; Argument[0]; Argument[this]; taint; manual | -| 152 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; StrTokenizer; ; ; Argument[0]; Argument[this]; taint; manual | -| 153 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; clone; ; ; Argument[this]; ReturnValue; taint; manual | -| 154 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; getCSVInstance; ; ; Argument[0]; ReturnValue; taint; manual | -| 155 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; getContent; ; ; Argument[this]; ReturnValue; taint; manual | -| 156 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; getTSVInstance; ; ; Argument[0]; ReturnValue; taint; manual | -| 157 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; getTokenArray; ; ; Argument[this]; ReturnValue; taint; manual | -| 158 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; getTokenList; ; ; Argument[this]; ReturnValue; taint; manual | -| 159 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; next; ; ; Argument[this]; ReturnValue; taint; manual | -| 160 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; nextToken; ; ; Argument[this]; ReturnValue; taint; manual | -| 161 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; previous; ; ; Argument[this]; ReturnValue; taint; manual | -| 162 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; previousToken; ; ; Argument[this]; ReturnValue; taint; manual | -| 163 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; reset; ; ; Argument[0]; ReturnValue; taint; manual | -| 164 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | -| 165 | Summary: org.apache.commons.lang3.text; WordUtils; false; capitalize; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 166 | Summary: org.apache.commons.lang3.text; WordUtils; false; capitalize; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | -| 167 | Summary: org.apache.commons.lang3.text; WordUtils; false; capitalizeFully; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 168 | Summary: org.apache.commons.lang3.text; WordUtils; false; capitalizeFully; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | -| 169 | Summary: org.apache.commons.lang3.text; WordUtils; false; initials; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 170 | Summary: org.apache.commons.lang3.text; WordUtils; false; initials; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | -| 171 | Summary: org.apache.commons.lang3.text; WordUtils; false; swapCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 172 | Summary: org.apache.commons.lang3.text; WordUtils; false; uncapitalize; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 173 | Summary: org.apache.commons.lang3.text; WordUtils; false; uncapitalize; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | -| 174 | Summary: org.apache.commons.lang3.text; WordUtils; false; wrap; (java.lang.String,int,java.lang.String,boolean); ; Argument[2]; ReturnValue; taint; manual | -| 175 | Summary: org.apache.commons.lang3.text; WordUtils; false; wrap; (java.lang.String,int,java.lang.String,boolean,java.lang.String); ; Argument[2]; ReturnValue; taint; manual | -| 176 | Summary: org.apache.commons.lang3.text; WordUtils; false; wrap; ; ; Argument[0]; ReturnValue; taint; manual | -| 177 | Summary: org.apache.commons.lang3.tuple; ImmutablePair; false; ImmutablePair; (java.lang.Object,java.lang.Object); ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutablePair.left]; value; manual | -| 178 | Summary: org.apache.commons.lang3.tuple; ImmutablePair; false; ImmutablePair; (java.lang.Object,java.lang.Object); ; Argument[1]; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutablePair.right]; value; manual | -| 179 | Summary: org.apache.commons.lang3.tuple; ImmutablePair; false; left; ; ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutablePair.left]; value; manual | -| 180 | Summary: org.apache.commons.lang3.tuple; ImmutablePair; false; of; (java.lang.Object,java.lang.Object); ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutablePair.left]; value; manual | -| 181 | Summary: org.apache.commons.lang3.tuple; ImmutablePair; false; of; (java.lang.Object,java.lang.Object); ; Argument[1]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutablePair.right]; value; manual | -| 182 | Summary: org.apache.commons.lang3.tuple; ImmutablePair; false; right; ; ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutablePair.right]; value; manual | -| 183 | Summary: org.apache.commons.lang3.tuple; ImmutableTriple; false; ImmutableTriple; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutableTriple.left]; value; manual | -| 184 | Summary: org.apache.commons.lang3.tuple; ImmutableTriple; false; ImmutableTriple; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[1]; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutableTriple.middle]; value; manual | -| 185 | Summary: org.apache.commons.lang3.tuple; ImmutableTriple; false; ImmutableTriple; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[2]; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutableTriple.right]; value; manual | -| 186 | Summary: org.apache.commons.lang3.tuple; ImmutableTriple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutableTriple.left]; value; manual | -| 187 | Summary: org.apache.commons.lang3.tuple; ImmutableTriple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[1]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutableTriple.middle]; value; manual | -| 188 | Summary: org.apache.commons.lang3.tuple; ImmutableTriple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[2]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutableTriple.right]; value; manual | -| 189 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; MutablePair; (java.lang.Object,java.lang.Object); ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.left]; value; manual | -| 190 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; MutablePair; (java.lang.Object,java.lang.Object); ; Argument[1]; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.right]; value; manual | -| 191 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; of; (java.lang.Object,java.lang.Object); ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.MutablePair.left]; value; manual | -| 192 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; of; (java.lang.Object,java.lang.Object); ; Argument[1]; ReturnValue.Field[org.apache.commons.lang3.tuple.MutablePair.right]; value; manual | -| 193 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; setLeft; ; ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.left]; value; manual | -| 194 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; setRight; ; ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.right]; value; manual | -| 195 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; setValue; ; ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.right]; value; manual | -| 196 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; MutableTriple; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.left]; value; manual | -| 197 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; MutableTriple; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[1]; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.middle]; value; manual | -| 198 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; MutableTriple; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[2]; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.right]; value; manual | -| 199 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.MutableTriple.left]; value; manual | -| 200 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[1]; ReturnValue.Field[org.apache.commons.lang3.tuple.MutableTriple.middle]; value; manual | -| 201 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[2]; ReturnValue.Field[org.apache.commons.lang3.tuple.MutableTriple.right]; value; manual | -| 202 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; setLeft; ; ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.left]; value; manual | -| 203 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; setMiddle; ; ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.middle]; value; manual | -| 204 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; setRight; ; ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.right]; value; manual | -| 205 | Summary: org.apache.commons.lang3.tuple; Pair; false; of; (java.lang.Object,java.lang.Object); ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutablePair.left]; value; manual | -| 206 | Summary: org.apache.commons.lang3.tuple; Pair; false; of; (java.lang.Object,java.lang.Object); ; Argument[1]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutablePair.right]; value; manual | -| 207 | Summary: org.apache.commons.lang3.tuple; Pair; true; getKey; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutablePair.left]; ReturnValue; value; manual | -| 208 | Summary: org.apache.commons.lang3.tuple; Pair; true; getKey; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.left]; ReturnValue; value; manual | -| 209 | Summary: org.apache.commons.lang3.tuple; Pair; true; getLeft; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutablePair.left]; ReturnValue; value; manual | -| 210 | Summary: org.apache.commons.lang3.tuple; Pair; true; getLeft; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.left]; ReturnValue; value; manual | -| 211 | Summary: org.apache.commons.lang3.tuple; Pair; true; getRight; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutablePair.right]; ReturnValue; value; manual | -| 212 | Summary: org.apache.commons.lang3.tuple; Pair; true; getRight; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.right]; ReturnValue; value; manual | -| 213 | Summary: org.apache.commons.lang3.tuple; Pair; true; getValue; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutablePair.right]; ReturnValue; value; manual | -| 214 | Summary: org.apache.commons.lang3.tuple; Pair; true; getValue; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.right]; ReturnValue; value; manual | -| 215 | Summary: org.apache.commons.lang3.tuple; Triple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutableTriple.left]; value; manual | -| 216 | Summary: org.apache.commons.lang3.tuple; Triple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[1]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutableTriple.middle]; value; manual | -| 217 | Summary: org.apache.commons.lang3.tuple; Triple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[2]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutableTriple.right]; value; manual | -| 218 | Summary: org.apache.commons.lang3.tuple; Triple; true; getLeft; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutableTriple.left]; ReturnValue; value; manual | -| 219 | Summary: org.apache.commons.lang3.tuple; Triple; true; getLeft; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.left]; ReturnValue; value; manual | -| 220 | Summary: org.apache.commons.lang3.tuple; Triple; true; getMiddle; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutableTriple.middle]; ReturnValue; value; manual | -| 221 | Summary: org.apache.commons.lang3.tuple; Triple; true; getMiddle; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.middle]; ReturnValue; value; manual | -| 222 | Summary: org.apache.commons.lang3.tuple; Triple; true; getRight; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutableTriple.right]; ReturnValue; value; manual | -| 223 | Summary: org.apache.commons.lang3.tuple; Triple; true; getRight; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.right]; ReturnValue; value; manual | -| 224 | Summary: org.apache.commons.lang3; ArrayUtils; false; add; (java.lang.Object[],java.lang.Object); ; Argument[1]; ReturnValue.ArrayElement; value; manual | -| 225 | Summary: org.apache.commons.lang3; ArrayUtils; false; add; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 226 | Summary: org.apache.commons.lang3; ArrayUtils; false; add; ; ; Argument[2]; ReturnValue.ArrayElement; value; manual | -| 227 | Summary: org.apache.commons.lang3; ArrayUtils; false; addAll; ; ; Argument[0..1].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 228 | Summary: org.apache.commons.lang3; ArrayUtils; false; addFirst; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 229 | Summary: org.apache.commons.lang3; ArrayUtils; false; addFirst; ; ; Argument[1]; ReturnValue.ArrayElement; value; manual | -| 230 | Summary: org.apache.commons.lang3; ArrayUtils; false; clone; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 231 | Summary: org.apache.commons.lang3; ArrayUtils; false; get; (java.lang.Object[],int,java.lang.Object); ; Argument[2]; ReturnValue; value; manual | -| 232 | Summary: org.apache.commons.lang3; ArrayUtils; false; get; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | -| 233 | Summary: org.apache.commons.lang3; ArrayUtils; false; insert; ; ; Argument[1..2].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 234 | Summary: org.apache.commons.lang3; ArrayUtils; false; nullToEmpty; (java.lang.Object[],java.lang.Class); ; Argument[0]; ReturnValue; value; manual | -| 235 | Summary: org.apache.commons.lang3; ArrayUtils; false; nullToEmpty; (java.lang.String[]); ; Argument[0]; ReturnValue; value; manual | -| 236 | Summary: org.apache.commons.lang3; ArrayUtils; false; remove; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 237 | Summary: org.apache.commons.lang3; ArrayUtils; false; removeAll; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 238 | Summary: org.apache.commons.lang3; ArrayUtils; false; removeAllOccurences; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 239 | Summary: org.apache.commons.lang3; ArrayUtils; false; removeAllOccurrences; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 240 | Summary: org.apache.commons.lang3; ArrayUtils; false; removeElement; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 241 | Summary: org.apache.commons.lang3; ArrayUtils; false; removeElements; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 242 | Summary: org.apache.commons.lang3; ArrayUtils; false; subarray; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 243 | Summary: org.apache.commons.lang3; ArrayUtils; false; toArray; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 244 | Summary: org.apache.commons.lang3; ArrayUtils; false; toMap; ; ; Argument[0].ArrayElement.ArrayElement; ReturnValue.MapValue; value; manual | -| 245 | Summary: org.apache.commons.lang3; ArrayUtils; false; toMap; ; ; Argument[0].ArrayElement.MapValue; ReturnValue.MapValue; value; manual | -| 246 | Summary: org.apache.commons.lang3; ArrayUtils; false; toObject; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 247 | Summary: org.apache.commons.lang3; ArrayUtils; false; toPrimitive; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 248 | Summary: org.apache.commons.lang3; ArrayUtils; false; toPrimitive; ; ; Argument[1]; ReturnValue.ArrayElement; value; manual | -| 249 | Summary: org.apache.commons.lang3; ObjectUtils; false; CONST; ; ; Argument[0]; ReturnValue; value; manual | -| 250 | Summary: org.apache.commons.lang3; ObjectUtils; false; CONST_BYTE; ; ; Argument[0]; ReturnValue; value; manual | -| 251 | Summary: org.apache.commons.lang3; ObjectUtils; false; CONST_SHORT; ; ; Argument[0]; ReturnValue; value; manual | -| 252 | Summary: org.apache.commons.lang3; ObjectUtils; false; clone; ; ; Argument[0]; ReturnValue; value; manual | -| 253 | Summary: org.apache.commons.lang3; ObjectUtils; false; cloneIfPossible; ; ; Argument[0]; ReturnValue; value; manual | -| 254 | Summary: org.apache.commons.lang3; ObjectUtils; false; defaultIfNull; ; ; Argument[0..1]; ReturnValue; value; manual | -| 255 | Summary: org.apache.commons.lang3; ObjectUtils; false; firstNonNull; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | -| 256 | Summary: org.apache.commons.lang3; ObjectUtils; false; getIfNull; ; ; Argument[0]; ReturnValue; value; manual | -| 257 | Summary: org.apache.commons.lang3; ObjectUtils; false; max; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | -| 258 | Summary: org.apache.commons.lang3; ObjectUtils; false; median; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | -| 259 | Summary: org.apache.commons.lang3; ObjectUtils; false; min; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | -| 260 | Summary: org.apache.commons.lang3; ObjectUtils; false; mode; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | -| 261 | Summary: org.apache.commons.lang3; ObjectUtils; false; requireNonEmpty; ; ; Argument[0]; ReturnValue; value; manual | -| 262 | Summary: org.apache.commons.lang3; ObjectUtils; false; toString; (Object,String); ; Argument[1]; ReturnValue; value; manual | -| 263 | Summary: org.apache.commons.lang3; RegExUtils; false; removeAll; ; ; Argument[0]; ReturnValue; taint; manual | -| 264 | Summary: org.apache.commons.lang3; RegExUtils; false; removeFirst; ; ; Argument[0]; ReturnValue; taint; manual | -| 265 | Summary: org.apache.commons.lang3; RegExUtils; false; removePattern; ; ; Argument[0]; ReturnValue; taint; manual | -| 266 | Summary: org.apache.commons.lang3; RegExUtils; false; replaceAll; ; ; Argument[0]; ReturnValue; taint; manual | -| 267 | Summary: org.apache.commons.lang3; RegExUtils; false; replaceAll; ; ; Argument[2]; ReturnValue; taint; manual | -| 268 | Summary: org.apache.commons.lang3; RegExUtils; false; replaceFirst; ; ; Argument[0]; ReturnValue; taint; manual | -| 269 | Summary: org.apache.commons.lang3; RegExUtils; false; replaceFirst; ; ; Argument[2]; ReturnValue; taint; manual | -| 270 | Summary: org.apache.commons.lang3; RegExUtils; false; replacePattern; ; ; Argument[0]; ReturnValue; taint; manual | -| 271 | Summary: org.apache.commons.lang3; RegExUtils; false; replacePattern; ; ; Argument[2]; ReturnValue; taint; manual | -| 272 | Summary: org.apache.commons.lang3; StringEscapeUtils; false; escapeJson; ; ; Argument[0]; ReturnValue; taint; manual | -| 273 | Summary: org.apache.commons.lang3; StringUtils; false; abbreviate; (java.lang.String,java.lang.String,int); ; Argument[1]; ReturnValue; taint; manual | -| 274 | Summary: org.apache.commons.lang3; StringUtils; false; abbreviate; (java.lang.String,java.lang.String,int,int); ; Argument[1]; ReturnValue; taint; manual | -| 275 | Summary: org.apache.commons.lang3; StringUtils; false; abbreviate; ; ; Argument[0]; ReturnValue; taint; manual | -| 276 | Summary: org.apache.commons.lang3; StringUtils; false; abbreviateMiddle; ; ; Argument[0]; ReturnValue; taint; manual | -| 277 | Summary: org.apache.commons.lang3; StringUtils; false; abbreviateMiddle; ; ; Argument[1]; ReturnValue; taint; manual | -| 278 | Summary: org.apache.commons.lang3; StringUtils; false; appendIfMissing; ; ; Argument[0]; ReturnValue; taint; manual | -| 279 | Summary: org.apache.commons.lang3; StringUtils; false; appendIfMissing; ; ; Argument[1]; ReturnValue; taint; manual | -| 280 | Summary: org.apache.commons.lang3; StringUtils; false; appendIfMissingIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 281 | Summary: org.apache.commons.lang3; StringUtils; false; appendIfMissingIgnoreCase; ; ; Argument[1]; ReturnValue; taint; manual | -| 282 | Summary: org.apache.commons.lang3; StringUtils; false; capitalize; ; ; Argument[0]; ReturnValue; taint; manual | -| 283 | Summary: org.apache.commons.lang3; StringUtils; false; center; (java.lang.String,int,java.lang.String); ; Argument[2]; ReturnValue; taint; manual | -| 284 | Summary: org.apache.commons.lang3; StringUtils; false; center; ; ; Argument[0]; ReturnValue; taint; manual | -| 285 | Summary: org.apache.commons.lang3; StringUtils; false; chomp; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 286 | Summary: org.apache.commons.lang3; StringUtils; false; chomp; (java.lang.String,java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 287 | Summary: org.apache.commons.lang3; StringUtils; false; chop; ; ; Argument[0]; ReturnValue; taint; manual | -| 288 | Summary: org.apache.commons.lang3; StringUtils; false; defaultIfBlank; ; ; Argument[0..1]; ReturnValue; taint; manual | -| 289 | Summary: org.apache.commons.lang3; StringUtils; false; defaultIfEmpty; ; ; Argument[0..1]; ReturnValue; taint; manual | -| 290 | Summary: org.apache.commons.lang3; StringUtils; false; defaultString; ; ; Argument[0..1]; ReturnValue; taint; manual | -| 291 | Summary: org.apache.commons.lang3; StringUtils; false; deleteWhitespace; ; ; Argument[0]; ReturnValue; taint; manual | -| 292 | Summary: org.apache.commons.lang3; StringUtils; false; difference; ; ; Argument[0..1]; ReturnValue; taint; manual | -| 293 | Summary: org.apache.commons.lang3; StringUtils; false; firstNonBlank; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | -| 294 | Summary: org.apache.commons.lang3; StringUtils; false; firstNonEmpty; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | -| 295 | Summary: org.apache.commons.lang3; StringUtils; false; getBytes; ; ; Argument[0]; ReturnValue; taint; manual | -| 296 | Summary: org.apache.commons.lang3; StringUtils; false; getCommonPrefix; ; ; Argument[0].ArrayElement; ReturnValue; taint; manual | -| 297 | Summary: org.apache.commons.lang3; StringUtils; false; getDigits; ; ; Argument[0]; ReturnValue; taint; manual | -| 298 | Summary: org.apache.commons.lang3; StringUtils; false; getIfBlank; ; ; Argument[0..1]; ReturnValue; taint; manual | -| 299 | Summary: org.apache.commons.lang3; StringUtils; false; getIfEmpty; ; ; Argument[0..1]; ReturnValue; taint; manual | -| 300 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[]); ; Argument[0].ArrayElement; ReturnValue; taint; manual | -| 301 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[],String); ; Argument[0].ArrayElement; ReturnValue; taint; manual | -| 302 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[],String); ; Argument[1]; ReturnValue; taint; manual | -| 303 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[],String,int,int); ; Argument[0].ArrayElement; ReturnValue; taint; manual | -| 304 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[],String,int,int); ; Argument[1]; ReturnValue; taint; manual | -| 305 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[],char); ; Argument[0].ArrayElement; ReturnValue; taint; manual | -| 306 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[],char,int,int); ; Argument[0].ArrayElement; ReturnValue; taint; manual | -| 307 | Summary: org.apache.commons.lang3; StringUtils; false; join; (char[],char); ; Argument[0]; ReturnValue; taint; manual | -| 308 | Summary: org.apache.commons.lang3; StringUtils; false; join; (char[],char,int,int); ; Argument[0]; ReturnValue; taint; manual | -| 309 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.lang.Iterable,char); ; Argument[0].Element; ReturnValue; taint; manual | -| 310 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.lang.Iterable,java.lang.String); ; Argument[0].Element; ReturnValue; taint; manual | -| 311 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.lang.Iterable,java.lang.String); ; Argument[1]; ReturnValue; taint; manual | -| 312 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.util.Iterator,char); ; Argument[0].Element; ReturnValue; taint; manual | -| 313 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.util.Iterator,java.lang.String); ; Argument[0].Element; ReturnValue; taint; manual | -| 314 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.util.Iterator,java.lang.String); ; Argument[1]; ReturnValue; taint; manual | -| 315 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.util.List,char,int,int); ; Argument[0].Element; ReturnValue; taint; manual | -| 316 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.util.List,java.lang.String,int,int); ; Argument[0].Element; ReturnValue; taint; manual | -| 317 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.util.List,java.lang.String,int,int); ; Argument[1]; ReturnValue; taint; manual | -| 318 | Summary: org.apache.commons.lang3; StringUtils; false; joinWith; ; ; Argument[0]; ReturnValue; taint; manual | -| 319 | Summary: org.apache.commons.lang3; StringUtils; false; joinWith; ; ; Argument[1].ArrayElement; ReturnValue; taint; manual | -| 320 | Summary: org.apache.commons.lang3; StringUtils; false; left; ; ; Argument[0]; ReturnValue; taint; manual | -| 321 | Summary: org.apache.commons.lang3; StringUtils; false; leftPad; (java.lang.String,int,java.lang.String); ; Argument[2]; ReturnValue; taint; manual | -| 322 | Summary: org.apache.commons.lang3; StringUtils; false; leftPad; ; ; Argument[0]; ReturnValue; taint; manual | -| 323 | Summary: org.apache.commons.lang3; StringUtils; false; lowerCase; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 324 | Summary: org.apache.commons.lang3; StringUtils; false; lowerCase; (java.lang.String,java.util.Locale); ; Argument[0]; ReturnValue; taint; manual | -| 325 | Summary: org.apache.commons.lang3; StringUtils; false; mid; ; ; Argument[0]; ReturnValue; taint; manual | -| 326 | Summary: org.apache.commons.lang3; StringUtils; false; normalizeSpace; ; ; Argument[0]; ReturnValue; taint; manual | -| 327 | Summary: org.apache.commons.lang3; StringUtils; false; overlay; ; ; Argument[0]; ReturnValue; taint; manual | -| 328 | Summary: org.apache.commons.lang3; StringUtils; false; overlay; ; ; Argument[1]; ReturnValue; taint; manual | -| 329 | Summary: org.apache.commons.lang3; StringUtils; false; prependIfMissing; ; ; Argument[0]; ReturnValue; taint; manual | -| 330 | Summary: org.apache.commons.lang3; StringUtils; false; prependIfMissing; ; ; Argument[1]; ReturnValue; taint; manual | -| 331 | Summary: org.apache.commons.lang3; StringUtils; false; prependIfMissingIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 332 | Summary: org.apache.commons.lang3; StringUtils; false; prependIfMissingIgnoreCase; ; ; Argument[1]; ReturnValue; taint; manual | -| 333 | Summary: org.apache.commons.lang3; StringUtils; false; remove; ; ; Argument[0]; ReturnValue; taint; manual | -| 334 | Summary: org.apache.commons.lang3; StringUtils; false; removeAll; ; ; Argument[0]; ReturnValue; taint; manual | -| 335 | Summary: org.apache.commons.lang3; StringUtils; false; removeEnd; ; ; Argument[0]; ReturnValue; taint; manual | -| 336 | Summary: org.apache.commons.lang3; StringUtils; false; removeEndIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 337 | Summary: org.apache.commons.lang3; StringUtils; false; removeFirst; ; ; Argument[0]; ReturnValue; taint; manual | -| 338 | Summary: org.apache.commons.lang3; StringUtils; false; removeIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 339 | Summary: org.apache.commons.lang3; StringUtils; false; removePattern; ; ; Argument[0]; ReturnValue; taint; manual | -| 340 | Summary: org.apache.commons.lang3; StringUtils; false; removeStart; ; ; Argument[0]; ReturnValue; taint; manual | -| 341 | Summary: org.apache.commons.lang3; StringUtils; false; removeStartIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 342 | Summary: org.apache.commons.lang3; StringUtils; false; repeat; (java.lang.String,java.lang.String,int); ; Argument[1]; ReturnValue; taint; manual | -| 343 | Summary: org.apache.commons.lang3; StringUtils; false; repeat; ; ; Argument[0]; ReturnValue; taint; manual | -| 344 | Summary: org.apache.commons.lang3; StringUtils; false; replace; ; ; Argument[0]; ReturnValue; taint; manual | -| 345 | Summary: org.apache.commons.lang3; StringUtils; false; replace; ; ; Argument[2]; ReturnValue; taint; manual | -| 346 | Summary: org.apache.commons.lang3; StringUtils; false; replaceAll; ; ; Argument[0]; ReturnValue; taint; manual | -| 347 | Summary: org.apache.commons.lang3; StringUtils; false; replaceAll; ; ; Argument[2]; ReturnValue; taint; manual | -| 348 | Summary: org.apache.commons.lang3; StringUtils; false; replaceChars; (java.lang.String,java.lang.String,java.lang.String); ; Argument[2]; ReturnValue; taint; manual | -| 349 | Summary: org.apache.commons.lang3; StringUtils; false; replaceChars; ; ; Argument[0]; ReturnValue; taint; manual | -| 350 | Summary: org.apache.commons.lang3; StringUtils; false; replaceEach; ; ; Argument[0]; ReturnValue; taint; manual | -| 351 | Summary: org.apache.commons.lang3; StringUtils; false; replaceEach; ; ; Argument[2].ArrayElement; ReturnValue; taint; manual | -| 352 | Summary: org.apache.commons.lang3; StringUtils; false; replaceEachRepeatedly; ; ; Argument[0]; ReturnValue; taint; manual | -| 353 | Summary: org.apache.commons.lang3; StringUtils; false; replaceEachRepeatedly; ; ; Argument[2].ArrayElement; ReturnValue; taint; manual | -| 354 | Summary: org.apache.commons.lang3; StringUtils; false; replaceFirst; ; ; Argument[0]; ReturnValue; taint; manual | -| 355 | Summary: org.apache.commons.lang3; StringUtils; false; replaceFirst; ; ; Argument[2]; ReturnValue; taint; manual | -| 356 | Summary: org.apache.commons.lang3; StringUtils; false; replaceIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 357 | Summary: org.apache.commons.lang3; StringUtils; false; replaceIgnoreCase; ; ; Argument[2]; ReturnValue; taint; manual | -| 358 | Summary: org.apache.commons.lang3; StringUtils; false; replaceOnce; ; ; Argument[0]; ReturnValue; taint; manual | -| 359 | Summary: org.apache.commons.lang3; StringUtils; false; replaceOnce; ; ; Argument[2]; ReturnValue; taint; manual | -| 360 | Summary: org.apache.commons.lang3; StringUtils; false; replaceOnceIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 361 | Summary: org.apache.commons.lang3; StringUtils; false; replaceOnceIgnoreCase; ; ; Argument[2]; ReturnValue; taint; manual | -| 362 | Summary: org.apache.commons.lang3; StringUtils; false; replacePattern; ; ; Argument[0]; ReturnValue; taint; manual | -| 363 | Summary: org.apache.commons.lang3; StringUtils; false; replacePattern; ; ; Argument[2]; ReturnValue; taint; manual | -| 364 | Summary: org.apache.commons.lang3; StringUtils; false; reverse; ; ; Argument[0]; ReturnValue; taint; manual | -| 365 | Summary: org.apache.commons.lang3; StringUtils; false; reverseDelimited; ; ; Argument[0]; ReturnValue; taint; manual | -| 366 | Summary: org.apache.commons.lang3; StringUtils; false; right; ; ; Argument[0]; ReturnValue; taint; manual | -| 367 | Summary: org.apache.commons.lang3; StringUtils; false; rightPad; (java.lang.String,int,java.lang.String); ; Argument[2]; ReturnValue; taint; manual | -| 368 | Summary: org.apache.commons.lang3; StringUtils; false; rightPad; ; ; Argument[0]; ReturnValue; taint; manual | -| 369 | Summary: org.apache.commons.lang3; StringUtils; false; rotate; ; ; Argument[0]; ReturnValue; taint; manual | -| 370 | Summary: org.apache.commons.lang3; StringUtils; false; split; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 371 | Summary: org.apache.commons.lang3; StringUtils; false; split; (java.lang.String,char); ; Argument[0]; ReturnValue; taint; manual | -| 372 | Summary: org.apache.commons.lang3; StringUtils; false; split; (java.lang.String,java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 373 | Summary: org.apache.commons.lang3; StringUtils; false; split; (java.lang.String,java.lang.String,int); ; Argument[0]; ReturnValue; taint; manual | -| 374 | Summary: org.apache.commons.lang3; StringUtils; false; splitByCharacterType; ; ; Argument[0]; ReturnValue; taint; manual | -| 375 | Summary: org.apache.commons.lang3; StringUtils; false; splitByCharacterTypeCamelCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 376 | Summary: org.apache.commons.lang3; StringUtils; false; splitByWholeSeparator; ; ; Argument[0]; ReturnValue; taint; manual | -| 377 | Summary: org.apache.commons.lang3; StringUtils; false; splitByWholeSeparatorPreserveAllTokens; ; ; Argument[0]; ReturnValue; taint; manual | -| 378 | Summary: org.apache.commons.lang3; StringUtils; false; splitPreserveAllTokens; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 379 | Summary: org.apache.commons.lang3; StringUtils; false; splitPreserveAllTokens; (java.lang.String,char); ; Argument[0]; ReturnValue; taint; manual | -| 380 | Summary: org.apache.commons.lang3; StringUtils; false; splitPreserveAllTokens; (java.lang.String,java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 381 | Summary: org.apache.commons.lang3; StringUtils; false; splitPreserveAllTokens; (java.lang.String,java.lang.String,int); ; Argument[0]; ReturnValue; taint; manual | -| 382 | Summary: org.apache.commons.lang3; StringUtils; false; strip; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 383 | Summary: org.apache.commons.lang3; StringUtils; false; strip; (java.lang.String,java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 384 | Summary: org.apache.commons.lang3; StringUtils; false; stripAccents; ; ; Argument[0]; ReturnValue; taint; manual | -| 385 | Summary: org.apache.commons.lang3; StringUtils; false; stripAll; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; taint; manual | -| 386 | Summary: org.apache.commons.lang3; StringUtils; false; stripEnd; ; ; Argument[0]; ReturnValue; taint; manual | -| 387 | Summary: org.apache.commons.lang3; StringUtils; false; stripStart; ; ; Argument[0]; ReturnValue; taint; manual | -| 388 | Summary: org.apache.commons.lang3; StringUtils; false; stripToEmpty; ; ; Argument[0]; ReturnValue; taint; manual | -| 389 | Summary: org.apache.commons.lang3; StringUtils; false; stripToNull; ; ; Argument[0]; ReturnValue; taint; manual | -| 390 | Summary: org.apache.commons.lang3; StringUtils; false; substring; ; ; Argument[0]; ReturnValue; taint; manual | -| 391 | Summary: org.apache.commons.lang3; StringUtils; false; substringAfter; ; ; Argument[0]; ReturnValue; taint; manual | -| 392 | Summary: org.apache.commons.lang3; StringUtils; false; substringAfterLast; ; ; Argument[0]; ReturnValue; taint; manual | -| 393 | Summary: org.apache.commons.lang3; StringUtils; false; substringBefore; ; ; Argument[0]; ReturnValue; taint; manual | -| 394 | Summary: org.apache.commons.lang3; StringUtils; false; substringBeforeLast; ; ; Argument[0]; ReturnValue; taint; manual | -| 395 | Summary: org.apache.commons.lang3; StringUtils; false; substringBetween; ; ; Argument[0]; ReturnValue; taint; manual | -| 396 | Summary: org.apache.commons.lang3; StringUtils; false; substringsBetween; ; ; Argument[0]; ReturnValue; taint; manual | -| 397 | Summary: org.apache.commons.lang3; StringUtils; false; swapCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 398 | Summary: org.apache.commons.lang3; StringUtils; false; toCodePoints; ; ; Argument[0]; ReturnValue; taint; manual | -| 399 | Summary: org.apache.commons.lang3; StringUtils; false; toEncodedString; ; ; Argument[0]; ReturnValue; taint; manual | -| 400 | Summary: org.apache.commons.lang3; StringUtils; false; toRootLowerCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 401 | Summary: org.apache.commons.lang3; StringUtils; false; toRootUpperCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 402 | Summary: org.apache.commons.lang3; StringUtils; false; toString; ; ; Argument[0]; ReturnValue; taint; manual | -| 403 | Summary: org.apache.commons.lang3; StringUtils; false; trim; ; ; Argument[0]; ReturnValue; taint; manual | -| 404 | Summary: org.apache.commons.lang3; StringUtils; false; trimToEmpty; ; ; Argument[0]; ReturnValue; taint; manual | -| 405 | Summary: org.apache.commons.lang3; StringUtils; false; trimToNull; ; ; Argument[0]; ReturnValue; taint; manual | -| 406 | Summary: org.apache.commons.lang3; StringUtils; false; truncate; ; ; Argument[0]; ReturnValue; taint; manual | -| 407 | Summary: org.apache.commons.lang3; StringUtils; false; uncapitalize; ; ; Argument[0]; ReturnValue; taint; manual | -| 408 | Summary: org.apache.commons.lang3; StringUtils; false; unwrap; ; ; Argument[0]; ReturnValue; taint; manual | -| 409 | Summary: org.apache.commons.lang3; StringUtils; false; upperCase; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 410 | Summary: org.apache.commons.lang3; StringUtils; false; upperCase; (java.lang.String,java.util.Locale); ; Argument[0]; ReturnValue; taint; manual | -| 411 | Summary: org.apache.commons.lang3; StringUtils; false; valueOf; ; ; Argument[0]; ReturnValue; taint; manual | -| 412 | Summary: org.apache.commons.lang3; StringUtils; false; wrap; (java.lang.String,char); ; Argument[0]; ReturnValue; taint; manual | -| 413 | Summary: org.apache.commons.lang3; StringUtils; false; wrap; (java.lang.String,java.lang.String); ; Argument[0..1]; ReturnValue; taint; manual | -| 414 | Summary: org.apache.commons.lang3; StringUtils; false; wrapIfMissing; (java.lang.String,char); ; Argument[0]; ReturnValue; taint; manual | -| 415 | Summary: org.apache.commons.lang3; StringUtils; false; wrapIfMissing; (java.lang.String,java.lang.String); ; Argument[0..1]; ReturnValue; taint; manual | -| 416 | Summary: org.apache.commons.text.lookup; StringLookup; true; lookup; ; ; Argument[this]; ReturnValue; taint; manual | -| 417 | Summary: org.apache.commons.text.lookup; StringLookupFactory; false; mapStringLookup; ; ; Argument[0].MapValue; ReturnValue; taint; manual | -| 418 | Summary: org.apache.commons.text; StrBuilder; false; StrBuilder; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 419 | Summary: org.apache.commons.text; StrBuilder; false; append; (char[]); ; Argument[0]; Argument[this]; taint; manual | -| 420 | Summary: org.apache.commons.text; StrBuilder; false; append; (char[],int,int); ; Argument[0]; Argument[this]; taint; manual | -| 421 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.CharSequence); ; Argument[0]; Argument[this]; taint; manual | -| 422 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.CharSequence,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 423 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | -| 424 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 425 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.String,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 426 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[0]; Argument[this]; taint; manual | -| 427 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | -| 428 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.StringBuffer); ; Argument[0]; Argument[this]; taint; manual | -| 429 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.StringBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 430 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.StringBuilder); ; Argument[0]; Argument[this]; taint; manual | -| 431 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.StringBuilder,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 432 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.nio.CharBuffer); ; Argument[0]; Argument[this]; taint; manual | -| 433 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.nio.CharBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 434 | Summary: org.apache.commons.text; StrBuilder; false; append; (org.apache.commons.text.StrBuilder); ; Argument[0]; Argument[this]; taint; manual | -| 435 | Summary: org.apache.commons.text; StrBuilder; false; append; ; ; Argument[this]; ReturnValue; value; manual | -| 436 | Summary: org.apache.commons.text; StrBuilder; false; appendAll; (Iterable); ; Argument[0].Element; Argument[this]; taint; manual | -| 437 | Summary: org.apache.commons.text; StrBuilder; false; appendAll; (Iterator); ; Argument[0].Element; Argument[this]; taint; manual | -| 438 | Summary: org.apache.commons.text; StrBuilder; false; appendAll; (Object[]); ; Argument[0].ArrayElement; Argument[this]; taint; manual | -| 439 | Summary: org.apache.commons.text; StrBuilder; false; appendAll; ; ; Argument[this]; ReturnValue; value; manual | -| 440 | Summary: org.apache.commons.text; StrBuilder; false; appendFixedWidthPadLeft; ; ; Argument[0]; Argument[this]; taint; manual | -| 441 | Summary: org.apache.commons.text; StrBuilder; false; appendFixedWidthPadLeft; ; ; Argument[this]; ReturnValue; value; manual | -| 442 | Summary: org.apache.commons.text; StrBuilder; false; appendFixedWidthPadRight; ; ; Argument[0]; Argument[this]; taint; manual | -| 443 | Summary: org.apache.commons.text; StrBuilder; false; appendFixedWidthPadRight; ; ; Argument[this]; ReturnValue; value; manual | -| 444 | Summary: org.apache.commons.text; StrBuilder; false; appendNewLine; ; ; Argument[this]; ReturnValue; value; manual | -| 445 | Summary: org.apache.commons.text; StrBuilder; false; appendNull; ; ; Argument[this]; ReturnValue; value; manual | -| 446 | Summary: org.apache.commons.text; StrBuilder; false; appendPadding; ; ; Argument[this]; ReturnValue; value; manual | -| 447 | Summary: org.apache.commons.text; StrBuilder; false; appendSeparator; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 448 | Summary: org.apache.commons.text; StrBuilder; false; appendSeparator; (java.lang.String,int); ; Argument[0]; Argument[this]; taint; manual | -| 449 | Summary: org.apache.commons.text; StrBuilder; false; appendSeparator; (java.lang.String,java.lang.String); ; Argument[0..1]; Argument[this]; taint; manual | -| 450 | Summary: org.apache.commons.text; StrBuilder; false; appendSeparator; ; ; Argument[this]; ReturnValue; value; manual | -| 451 | Summary: org.apache.commons.text; StrBuilder; false; appendTo; ; ; Argument[this]; Argument[0]; taint; manual | -| 452 | Summary: org.apache.commons.text; StrBuilder; false; appendWithSeparators; (Iterable,String); ; Argument[0].Element; Argument[this]; taint; manual | -| 453 | Summary: org.apache.commons.text; StrBuilder; false; appendWithSeparators; (Iterator,String); ; Argument[0].Element; Argument[this]; taint; manual | -| 454 | Summary: org.apache.commons.text; StrBuilder; false; appendWithSeparators; (Object[],String); ; Argument[0].ArrayElement; Argument[this]; taint; manual | -| 455 | Summary: org.apache.commons.text; StrBuilder; false; appendWithSeparators; ; ; Argument[1]; Argument[this]; taint; manual | -| 456 | Summary: org.apache.commons.text; StrBuilder; false; appendWithSeparators; ; ; Argument[this]; ReturnValue; value; manual | -| 457 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (char[]); ; Argument[0]; Argument[this]; taint; manual | -| 458 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (char[],int,int); ; Argument[0]; Argument[this]; taint; manual | -| 459 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | -| 460 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 461 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.String,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 462 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.String,java.lang.Object[]); ; Argument[0]; Argument[this]; taint; manual | -| 463 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | -| 464 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.StringBuffer); ; Argument[0]; Argument[this]; taint; manual | -| 465 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.StringBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 466 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.StringBuilder); ; Argument[0]; Argument[this]; taint; manual | -| 467 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.StringBuilder,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 468 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (org.apache.commons.text.StrBuilder); ; Argument[0]; Argument[this]; taint; manual | -| 469 | Summary: org.apache.commons.text; StrBuilder; false; appendln; ; ; Argument[this]; ReturnValue; value; manual | -| 470 | Summary: org.apache.commons.text; StrBuilder; false; asReader; ; ; Argument[this]; ReturnValue; taint; manual | -| 471 | Summary: org.apache.commons.text; StrBuilder; false; asTokenizer; ; ; Argument[this]; ReturnValue; taint; manual | -| 472 | Summary: org.apache.commons.text; StrBuilder; false; build; ; ; Argument[this]; ReturnValue; taint; manual | -| 473 | Summary: org.apache.commons.text; StrBuilder; false; delete; ; ; Argument[this]; ReturnValue; value; manual | -| 474 | Summary: org.apache.commons.text; StrBuilder; false; deleteAll; ; ; Argument[this]; ReturnValue; value; manual | -| 475 | Summary: org.apache.commons.text; StrBuilder; false; deleteCharAt; ; ; Argument[this]; ReturnValue; value; manual | -| 476 | Summary: org.apache.commons.text; StrBuilder; false; deleteFirst; ; ; Argument[this]; ReturnValue; value; manual | -| 477 | Summary: org.apache.commons.text; StrBuilder; false; ensureCapacity; ; ; Argument[this]; ReturnValue; value; manual | -| 478 | Summary: org.apache.commons.text; StrBuilder; false; getChars; (char[]); ; Argument[this]; Argument[0]; taint; manual | -| 479 | Summary: org.apache.commons.text; StrBuilder; false; getChars; (char[]); ; Argument[this]; ReturnValue; taint; manual | -| 480 | Summary: org.apache.commons.text; StrBuilder; false; getChars; (int,int,char[],int); ; Argument[this]; Argument[2]; taint; manual | -| 481 | Summary: org.apache.commons.text; StrBuilder; false; insert; ; ; Argument[1]; Argument[this]; taint; manual | -| 482 | Summary: org.apache.commons.text; StrBuilder; false; insert; ; ; Argument[this]; ReturnValue; value; manual | -| 483 | Summary: org.apache.commons.text; StrBuilder; false; leftString; ; ; Argument[this]; ReturnValue; taint; manual | -| 484 | Summary: org.apache.commons.text; StrBuilder; false; midString; ; ; Argument[this]; ReturnValue; taint; manual | -| 485 | Summary: org.apache.commons.text; StrBuilder; false; minimizeCapacity; ; ; Argument[this]; ReturnValue; value; manual | -| 486 | Summary: org.apache.commons.text; StrBuilder; false; readFrom; ; ; Argument[0]; Argument[this]; taint; manual | -| 487 | Summary: org.apache.commons.text; StrBuilder; false; replace; (int,int,java.lang.String); ; Argument[2]; Argument[this]; taint; manual | -| 488 | Summary: org.apache.commons.text; StrBuilder; false; replace; (org.apache.commons.text.StrMatcher,java.lang.String,int,int,int); ; Argument[1]; Argument[this]; taint; manual | -| 489 | Summary: org.apache.commons.text; StrBuilder; false; replace; ; ; Argument[this]; ReturnValue; value; manual | -| 490 | Summary: org.apache.commons.text; StrBuilder; false; replaceAll; ; ; Argument[1]; Argument[this]; taint; manual | -| 491 | Summary: org.apache.commons.text; StrBuilder; false; replaceAll; ; ; Argument[this]; ReturnValue; value; manual | -| 492 | Summary: org.apache.commons.text; StrBuilder; false; replaceFirst; ; ; Argument[1]; Argument[this]; taint; manual | -| 493 | Summary: org.apache.commons.text; StrBuilder; false; replaceFirst; ; ; Argument[this]; ReturnValue; value; manual | -| 494 | Summary: org.apache.commons.text; StrBuilder; false; reverse; ; ; Argument[this]; ReturnValue; value; manual | -| 495 | Summary: org.apache.commons.text; StrBuilder; false; rightString; ; ; Argument[this]; ReturnValue; taint; manual | -| 496 | Summary: org.apache.commons.text; StrBuilder; false; setCharAt; ; ; Argument[this]; ReturnValue; value; manual | -| 497 | Summary: org.apache.commons.text; StrBuilder; false; setLength; ; ; Argument[this]; ReturnValue; value; manual | -| 498 | Summary: org.apache.commons.text; StrBuilder; false; setNewLineText; ; ; Argument[this]; ReturnValue; value; manual | -| 499 | Summary: org.apache.commons.text; StrBuilder; false; setNullText; ; ; Argument[this]; ReturnValue; value; manual | -| 500 | Summary: org.apache.commons.text; StrBuilder; false; subSequence; ; ; Argument[this]; ReturnValue; taint; manual | -| 501 | Summary: org.apache.commons.text; StrBuilder; false; substring; ; ; Argument[this]; ReturnValue; taint; manual | -| 502 | Summary: org.apache.commons.text; StrBuilder; false; toCharArray; ; ; Argument[this]; ReturnValue; taint; manual | -| 503 | Summary: org.apache.commons.text; StrBuilder; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | -| 504 | Summary: org.apache.commons.text; StrBuilder; false; toStringBuffer; ; ; Argument[this]; ReturnValue; taint; manual | -| 505 | Summary: org.apache.commons.text; StrBuilder; false; toStringBuilder; ; ; Argument[this]; ReturnValue; taint; manual | -| 506 | Summary: org.apache.commons.text; StrBuilder; false; trim; ; ; Argument[this]; ReturnValue; value; manual | -| 507 | Summary: org.apache.commons.text; StrTokenizer; false; StrTokenizer; ; ; Argument[0]; Argument[this]; taint; manual | -| 508 | Summary: org.apache.commons.text; StrTokenizer; false; clone; ; ; Argument[this]; ReturnValue; taint; manual | -| 509 | Summary: org.apache.commons.text; StrTokenizer; false; getCSVInstance; ; ; Argument[0]; ReturnValue; taint; manual | -| 510 | Summary: org.apache.commons.text; StrTokenizer; false; getContent; ; ; Argument[this]; ReturnValue; taint; manual | -| 511 | Summary: org.apache.commons.text; StrTokenizer; false; getTSVInstance; ; ; Argument[0]; ReturnValue; taint; manual | -| 512 | Summary: org.apache.commons.text; StrTokenizer; false; getTokenArray; ; ; Argument[this]; ReturnValue; taint; manual | -| 513 | Summary: org.apache.commons.text; StrTokenizer; false; getTokenList; ; ; Argument[this]; ReturnValue; taint; manual | -| 514 | Summary: org.apache.commons.text; StrTokenizer; false; next; ; ; Argument[this]; ReturnValue; taint; manual | -| 515 | Summary: org.apache.commons.text; StrTokenizer; false; nextToken; ; ; Argument[this]; ReturnValue; taint; manual | -| 516 | Summary: org.apache.commons.text; StrTokenizer; false; previous; ; ; Argument[this]; ReturnValue; taint; manual | -| 517 | Summary: org.apache.commons.text; StrTokenizer; false; previousToken; ; ; Argument[this]; ReturnValue; taint; manual | -| 518 | Summary: org.apache.commons.text; StrTokenizer; false; reset; ; ; Argument[0]; ReturnValue; taint; manual | -| 519 | Summary: org.apache.commons.text; StrTokenizer; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | -| 520 | Summary: org.apache.commons.text; StringSubstitutor; false; StringSubstitutor; ; ; Argument[0].MapValue; Argument[this]; taint; manual | -| 521 | Summary: org.apache.commons.text; StringSubstitutor; false; StringSubstitutor; ; ; Argument[0]; Argument[this]; taint; manual | -| 522 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (char[]); ; Argument[0]; ReturnValue; taint; manual | -| 523 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (char[],int,int); ; Argument[0]; ReturnValue; taint; manual | -| 524 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.CharSequence); ; Argument[0]; ReturnValue; taint; manual | -| 525 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.CharSequence,int,int); ; Argument[0]; ReturnValue; taint; manual | -| 526 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object); ; Argument[0]; ReturnValue; taint; manual | -| 527 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object,java.util.Map); ; Argument[0]; ReturnValue; taint; manual | -| 528 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object,java.util.Map); ; Argument[1].MapValue; ReturnValue; taint; manual | -| 529 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object,java.util.Map,java.lang.String,java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 530 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object,java.util.Map,java.lang.String,java.lang.String); ; Argument[1].MapValue; ReturnValue; taint; manual | -| 531 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object,java.util.Properties); ; Argument[0]; ReturnValue; taint; manual | -| 532 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object,java.util.Properties); ; Argument[1].MapValue; ReturnValue; taint; manual | -| 533 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 534 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.String,int,int); ; Argument[0]; ReturnValue; taint; manual | -| 535 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.StringBuffer); ; Argument[0]; ReturnValue; taint; manual | -| 536 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.StringBuffer,int,int); ; Argument[0]; ReturnValue; taint; manual | -| 537 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (org.apache.commons.text.TextStringBuilder); ; Argument[0]; ReturnValue; taint; manual | -| 538 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (org.apache.commons.text.TextStringBuilder,int,int); ; Argument[0]; ReturnValue; taint; manual | -| 539 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; ; ; Argument[this]; ReturnValue; taint; manual | -| 540 | Summary: org.apache.commons.text; StringSubstitutor; false; replaceIn; (java.lang.StringBuffer); ; Argument[this]; Argument[0]; taint; manual | -| 541 | Summary: org.apache.commons.text; StringSubstitutor; false; replaceIn; (java.lang.StringBuffer,int,int); ; Argument[this]; Argument[0]; taint; manual | -| 542 | Summary: org.apache.commons.text; StringSubstitutor; false; replaceIn; (java.lang.StringBuilder); ; Argument[this]; Argument[0]; taint; manual | -| 543 | Summary: org.apache.commons.text; StringSubstitutor; false; replaceIn; (java.lang.StringBuilder,int,int); ; Argument[this]; Argument[0]; taint; manual | -| 544 | Summary: org.apache.commons.text; StringSubstitutor; false; replaceIn; (org.apache.commons.text.TextStringBuilder); ; Argument[this]; Argument[0]; taint; manual | -| 545 | Summary: org.apache.commons.text; StringSubstitutor; false; replaceIn; (org.apache.commons.text.TextStringBuilder,int,int); ; Argument[this]; Argument[0]; taint; manual | -| 546 | Summary: org.apache.commons.text; StringSubstitutor; false; setVariableResolver; ; ; Argument[0]; Argument[this]; taint; manual | -| 547 | Summary: org.apache.commons.text; StringTokenizer; false; StringTokenizer; ; ; Argument[0]; Argument[this]; taint; manual | -| 548 | Summary: org.apache.commons.text; StringTokenizer; false; clone; ; ; Argument[this]; ReturnValue; taint; manual | -| 549 | Summary: org.apache.commons.text; StringTokenizer; false; getCSVInstance; ; ; Argument[0]; ReturnValue; taint; manual | -| 550 | Summary: org.apache.commons.text; StringTokenizer; false; getContent; ; ; Argument[this]; ReturnValue; taint; manual | -| 551 | Summary: org.apache.commons.text; StringTokenizer; false; getTSVInstance; ; ; Argument[0]; ReturnValue; taint; manual | -| 552 | Summary: org.apache.commons.text; StringTokenizer; false; getTokenArray; ; ; Argument[this]; ReturnValue; taint; manual | -| 553 | Summary: org.apache.commons.text; StringTokenizer; false; getTokenList; ; ; Argument[this]; ReturnValue; taint; manual | -| 554 | Summary: org.apache.commons.text; StringTokenizer; false; next; ; ; Argument[this]; ReturnValue; taint; manual | -| 555 | Summary: org.apache.commons.text; StringTokenizer; false; nextToken; ; ; Argument[this]; ReturnValue; taint; manual | -| 556 | Summary: org.apache.commons.text; StringTokenizer; false; previous; ; ; Argument[this]; ReturnValue; taint; manual | -| 557 | Summary: org.apache.commons.text; StringTokenizer; false; previousToken; ; ; Argument[this]; ReturnValue; taint; manual | -| 558 | Summary: org.apache.commons.text; StringTokenizer; false; reset; ; ; Argument[0]; ReturnValue; taint; manual | -| 559 | Summary: org.apache.commons.text; StringTokenizer; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | -| 560 | Summary: org.apache.commons.text; TextStringBuilder; false; TextStringBuilder; (java.lang.CharSequence); ; Argument[0]; Argument[this]; taint; manual | -| 561 | Summary: org.apache.commons.text; TextStringBuilder; false; TextStringBuilder; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 562 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (char[]); ; Argument[0]; Argument[this]; taint; manual | -| 563 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (char[],int,int); ; Argument[0]; Argument[this]; taint; manual | -| 564 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.CharSequence); ; Argument[0]; Argument[this]; taint; manual | -| 565 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.CharSequence,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 566 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | -| 567 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 568 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.String,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 569 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[0]; Argument[this]; taint; manual | -| 570 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | -| 571 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.StringBuffer); ; Argument[0]; Argument[this]; taint; manual | -| 572 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.StringBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 573 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.StringBuilder); ; Argument[0]; Argument[this]; taint; manual | -| 574 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.StringBuilder,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 575 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.nio.CharBuffer); ; Argument[0]; Argument[this]; taint; manual | -| 576 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.nio.CharBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 577 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (org.apache.commons.text.TextStringBuilder); ; Argument[0]; Argument[this]; taint; manual | -| 578 | Summary: org.apache.commons.text; TextStringBuilder; false; append; ; ; Argument[this]; ReturnValue; value; manual | -| 579 | Summary: org.apache.commons.text; TextStringBuilder; false; appendAll; (Iterable); ; Argument[0].Element; Argument[this]; taint; manual | -| 580 | Summary: org.apache.commons.text; TextStringBuilder; false; appendAll; (Iterator); ; Argument[0].Element; Argument[this]; taint; manual | -| 581 | Summary: org.apache.commons.text; TextStringBuilder; false; appendAll; (Object[]); ; Argument[0].ArrayElement; Argument[this]; taint; manual | -| 582 | Summary: org.apache.commons.text; TextStringBuilder; false; appendAll; ; ; Argument[this]; ReturnValue; value; manual | -| 583 | Summary: org.apache.commons.text; TextStringBuilder; false; appendFixedWidthPadLeft; ; ; Argument[0]; Argument[this]; taint; manual | -| 584 | Summary: org.apache.commons.text; TextStringBuilder; false; appendFixedWidthPadLeft; ; ; Argument[this]; ReturnValue; value; manual | -| 585 | Summary: org.apache.commons.text; TextStringBuilder; false; appendFixedWidthPadRight; ; ; Argument[0]; Argument[this]; taint; manual | -| 586 | Summary: org.apache.commons.text; TextStringBuilder; false; appendFixedWidthPadRight; ; ; Argument[this]; ReturnValue; value; manual | -| 587 | Summary: org.apache.commons.text; TextStringBuilder; false; appendNewLine; ; ; Argument[this]; ReturnValue; value; manual | -| 588 | Summary: org.apache.commons.text; TextStringBuilder; false; appendNull; ; ; Argument[this]; ReturnValue; value; manual | -| 589 | Summary: org.apache.commons.text; TextStringBuilder; false; appendPadding; ; ; Argument[this]; ReturnValue; value; manual | -| 590 | Summary: org.apache.commons.text; TextStringBuilder; false; appendSeparator; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 591 | Summary: org.apache.commons.text; TextStringBuilder; false; appendSeparator; (java.lang.String,int); ; Argument[0]; Argument[this]; taint; manual | -| 592 | Summary: org.apache.commons.text; TextStringBuilder; false; appendSeparator; (java.lang.String,java.lang.String); ; Argument[0..1]; Argument[this]; taint; manual | -| 593 | Summary: org.apache.commons.text; TextStringBuilder; false; appendSeparator; ; ; Argument[this]; ReturnValue; value; manual | -| 594 | Summary: org.apache.commons.text; TextStringBuilder; false; appendTo; ; ; Argument[this]; Argument[0]; taint; manual | -| 595 | Summary: org.apache.commons.text; TextStringBuilder; false; appendWithSeparators; (Iterable,String); ; Argument[0].Element; Argument[this]; taint; manual | -| 596 | Summary: org.apache.commons.text; TextStringBuilder; false; appendWithSeparators; (Iterator,String); ; Argument[0].Element; Argument[this]; taint; manual | -| 597 | Summary: org.apache.commons.text; TextStringBuilder; false; appendWithSeparators; (Object[],String); ; Argument[0].ArrayElement; Argument[this]; taint; manual | -| 598 | Summary: org.apache.commons.text; TextStringBuilder; false; appendWithSeparators; ; ; Argument[1]; Argument[this]; taint; manual | -| 599 | Summary: org.apache.commons.text; TextStringBuilder; false; appendWithSeparators; ; ; Argument[this]; ReturnValue; value; manual | -| 600 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (char[]); ; Argument[0]; Argument[this]; taint; manual | -| 601 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (char[],int,int); ; Argument[0]; Argument[this]; taint; manual | -| 602 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | -| 603 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 604 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.String,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 605 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.String,java.lang.Object[]); ; Argument[0]; Argument[this]; taint; manual | -| 606 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | -| 607 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.StringBuffer); ; Argument[0]; Argument[this]; taint; manual | -| 608 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.StringBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 609 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.StringBuilder); ; Argument[0]; Argument[this]; taint; manual | -| 610 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.StringBuilder,int,int); ; Argument[0]; Argument[this]; taint; manual | -| 611 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (org.apache.commons.text.TextStringBuilder); ; Argument[0]; Argument[this]; taint; manual | -| 612 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; ; ; Argument[this]; ReturnValue; value; manual | -| 613 | Summary: org.apache.commons.text; TextStringBuilder; false; asReader; ; ; Argument[this]; ReturnValue; taint; manual | -| 614 | Summary: org.apache.commons.text; TextStringBuilder; false; asTokenizer; ; ; Argument[this]; ReturnValue; taint; manual | -| 615 | Summary: org.apache.commons.text; TextStringBuilder; false; build; ; ; Argument[this]; ReturnValue; taint; manual | -| 616 | Summary: org.apache.commons.text; TextStringBuilder; false; delete; ; ; Argument[this]; ReturnValue; value; manual | -| 617 | Summary: org.apache.commons.text; TextStringBuilder; false; deleteAll; ; ; Argument[this]; ReturnValue; value; manual | -| 618 | Summary: org.apache.commons.text; TextStringBuilder; false; deleteCharAt; ; ; Argument[this]; ReturnValue; value; manual | -| 619 | Summary: org.apache.commons.text; TextStringBuilder; false; deleteFirst; ; ; Argument[this]; ReturnValue; value; manual | -| 620 | Summary: org.apache.commons.text; TextStringBuilder; false; ensureCapacity; ; ; Argument[this]; ReturnValue; value; manual | -| 621 | Summary: org.apache.commons.text; TextStringBuilder; false; getChars; (char[]); ; Argument[this]; Argument[0]; taint; manual | -| 622 | Summary: org.apache.commons.text; TextStringBuilder; false; getChars; (char[]); ; Argument[this]; ReturnValue; taint; manual | -| 623 | Summary: org.apache.commons.text; TextStringBuilder; false; getChars; (int,int,char[],int); ; Argument[this]; Argument[2]; taint; manual | -| 624 | Summary: org.apache.commons.text; TextStringBuilder; false; insert; ; ; Argument[1]; Argument[this]; taint; manual | -| 625 | Summary: org.apache.commons.text; TextStringBuilder; false; insert; ; ; Argument[this]; ReturnValue; value; manual | -| 626 | Summary: org.apache.commons.text; TextStringBuilder; false; leftString; ; ; Argument[this]; ReturnValue; taint; manual | -| 627 | Summary: org.apache.commons.text; TextStringBuilder; false; midString; ; ; Argument[this]; ReturnValue; taint; manual | -| 628 | Summary: org.apache.commons.text; TextStringBuilder; false; minimizeCapacity; ; ; Argument[this]; ReturnValue; value; manual | -| 629 | Summary: org.apache.commons.text; TextStringBuilder; false; readFrom; ; ; Argument[0]; Argument[this]; taint; manual | -| 630 | Summary: org.apache.commons.text; TextStringBuilder; false; replace; (int,int,java.lang.String); ; Argument[2]; Argument[this]; taint; manual | -| 631 | Summary: org.apache.commons.text; TextStringBuilder; false; replace; (org.apache.commons.text.matcher.StringMatcher,java.lang.String,int,int,int); ; Argument[1]; Argument[this]; taint; manual | -| 632 | Summary: org.apache.commons.text; TextStringBuilder; false; replace; ; ; Argument[this]; ReturnValue; value; manual | -| 633 | Summary: org.apache.commons.text; TextStringBuilder; false; replaceAll; ; ; Argument[1]; Argument[this]; taint; manual | -| 634 | Summary: org.apache.commons.text; TextStringBuilder; false; replaceAll; ; ; Argument[this]; ReturnValue; value; manual | -| 635 | Summary: org.apache.commons.text; TextStringBuilder; false; replaceFirst; ; ; Argument[1]; Argument[this]; taint; manual | -| 636 | Summary: org.apache.commons.text; TextStringBuilder; false; replaceFirst; ; ; Argument[this]; ReturnValue; value; manual | -| 637 | Summary: org.apache.commons.text; TextStringBuilder; false; reverse; ; ; Argument[this]; ReturnValue; value; manual | -| 638 | Summary: org.apache.commons.text; TextStringBuilder; false; rightString; ; ; Argument[this]; ReturnValue; taint; manual | -| 639 | Summary: org.apache.commons.text; TextStringBuilder; false; setCharAt; ; ; Argument[this]; ReturnValue; value; manual | -| 640 | Summary: org.apache.commons.text; TextStringBuilder; false; setLength; ; ; Argument[this]; ReturnValue; value; manual | -| 641 | Summary: org.apache.commons.text; TextStringBuilder; false; setNewLineText; ; ; Argument[this]; ReturnValue; value; manual | -| 642 | Summary: org.apache.commons.text; TextStringBuilder; false; setNullText; ; ; Argument[this]; ReturnValue; value; manual | -| 643 | Summary: org.apache.commons.text; TextStringBuilder; false; subSequence; ; ; Argument[this]; ReturnValue; taint; manual | -| 644 | Summary: org.apache.commons.text; TextStringBuilder; false; substring; ; ; Argument[this]; ReturnValue; taint; manual | -| 645 | Summary: org.apache.commons.text; TextStringBuilder; false; toCharArray; ; ; Argument[this]; ReturnValue; taint; manual | -| 646 | Summary: org.apache.commons.text; TextStringBuilder; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | -| 647 | Summary: org.apache.commons.text; TextStringBuilder; false; toStringBuffer; ; ; Argument[this]; ReturnValue; taint; manual | -| 648 | Summary: org.apache.commons.text; TextStringBuilder; false; toStringBuilder; ; ; Argument[this]; ReturnValue; taint; manual | -| 649 | Summary: org.apache.commons.text; TextStringBuilder; false; trim; ; ; Argument[this]; ReturnValue; value; manual | -| 650 | Summary: org.apache.commons.text; WordUtils; false; abbreviate; ; ; Argument[0]; ReturnValue; taint; manual | -| 651 | Summary: org.apache.commons.text; WordUtils; false; abbreviate; ; ; Argument[3]; ReturnValue; taint; manual | -| 652 | Summary: org.apache.commons.text; WordUtils; false; capitalize; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 653 | Summary: org.apache.commons.text; WordUtils; false; capitalize; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | -| 654 | Summary: org.apache.commons.text; WordUtils; false; capitalizeFully; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 655 | Summary: org.apache.commons.text; WordUtils; false; capitalizeFully; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | -| 656 | Summary: org.apache.commons.text; WordUtils; false; initials; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 657 | Summary: org.apache.commons.text; WordUtils; false; initials; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | -| 658 | Summary: org.apache.commons.text; WordUtils; false; swapCase; ; ; Argument[0]; ReturnValue; taint; manual | -| 659 | Summary: org.apache.commons.text; WordUtils; false; uncapitalize; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | -| 660 | Summary: org.apache.commons.text; WordUtils; false; uncapitalize; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | -| 661 | Summary: org.apache.commons.text; WordUtils; false; wrap; (java.lang.String,int,java.lang.String,boolean); ; Argument[2]; ReturnValue; taint; manual | -| 662 | Summary: org.apache.commons.text; WordUtils; false; wrap; (java.lang.String,int,java.lang.String,boolean,java.lang.String); ; Argument[2]; ReturnValue; taint; manual | -| 663 | Summary: org.apache.commons.text; WordUtils; false; wrap; ; ; Argument[0]; ReturnValue; taint; manual | +| 3 | Summary: java.lang; CharSequence; true; toString; ; ; Argument[this]; ReturnValue; taint; manual | +| 4 | Summary: java.lang; Iterable; true; iterator; (); ; Argument[this].Element; ReturnValue.Element; value; manual | +| 5 | Summary: java.lang; String; false; toCharArray; ; ; Argument[this]; ReturnValue; taint; manual | +| 6 | Summary: java.lang; StringBuffer; true; StringBuffer; (String); ; Argument[0]; Argument[this]; taint; manual | +| 7 | Summary: java.lang; StringBuilder; true; StringBuilder; ; ; Argument[0]; Argument[this]; taint; manual | +| 8 | Summary: java.nio; CharBuffer; true; wrap; (char[]); ; Argument[0]; ReturnValue; taint; manual | +| 9 | Summary: java.util; Collection; true; add; ; ; Argument[0]; Argument[this].Element; value; manual | +| 10 | Summary: java.util; Dictionary; true; put; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | +| 11 | Summary: java.util; Map; true; get; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 12 | Summary: java.util; Map; true; put; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | +| 13 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | +| 14 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; (java.lang.Object[]); ; Argument[0].ArrayElement; Argument[this]; taint; manual | +| 15 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; (java.lang.String,boolean); ; Argument[0]; Argument[this]; taint; manual | +| 16 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; (java.lang.String,java.lang.Object); ; Argument[0..1]; Argument[this]; taint; manual | +| 17 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | +| 18 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; (java.lang.String,java.lang.Object[],boolean); ; Argument[1].ArrayElement; Argument[this]; taint; manual | +| 19 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; append; ; ; Argument[this]; ReturnValue; value; manual | +| 20 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; appendSuper; ; ; Argument[0]; Argument[this]; taint; manual | +| 21 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; appendToString; ; ; Argument[0]; Argument[this]; taint; manual | +| 22 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; build; ; ; Argument[this]; ReturnValue; taint; manual | +| 23 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; getStringBuffer; ; ; Argument[this]; ReturnValue; taint; manual | +| 24 | Summary: org.apache.commons.lang3.builder; ToStringBuilder; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | +| 25 | Summary: org.apache.commons.lang3.mutable; Mutable; true; getValue; ; ; Argument[this].SyntheticField[org.apache.commons.lang3.mutable.MutableObject.value]; ReturnValue; value; manual | +| 26 | Summary: org.apache.commons.lang3.mutable; Mutable; true; setValue; ; ; Argument[0]; Argument[this].SyntheticField[org.apache.commons.lang3.mutable.MutableObject.value]; value; manual | +| 27 | Summary: org.apache.commons.lang3.mutable; MutableObject; false; MutableObject; ; ; Argument[0]; Argument[this].SyntheticField[org.apache.commons.lang3.mutable.MutableObject.value]; value; manual | +| 28 | Summary: org.apache.commons.lang3.text; StrBuilder; false; StrBuilder; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 29 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (char[]); ; Argument[0]; Argument[this]; taint; manual | +| 30 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (char[],int,int); ; Argument[0]; Argument[this]; taint; manual | +| 31 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.CharSequence); ; Argument[0]; Argument[this]; taint; manual | +| 32 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.CharSequence,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 33 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | +| 34 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 35 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.String,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 36 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[0]; Argument[this]; taint; manual | +| 37 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | +| 38 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.StringBuffer); ; Argument[0]; Argument[this]; taint; manual | +| 39 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.StringBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 40 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.StringBuilder); ; Argument[0]; Argument[this]; taint; manual | +| 41 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.lang.StringBuilder,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 42 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.nio.CharBuffer); ; Argument[0]; Argument[this]; taint; manual | +| 43 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (java.nio.CharBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 44 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; (org.apache.commons.lang3.text.StrBuilder); ; Argument[0]; Argument[this]; taint; manual | +| 45 | Summary: org.apache.commons.lang3.text; StrBuilder; false; append; ; ; Argument[this]; ReturnValue; value; manual | +| 46 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendAll; (Iterable); ; Argument[0].Element; Argument[this]; taint; manual | +| 47 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendAll; (Iterator); ; Argument[0].Element; Argument[this]; taint; manual | +| 48 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendAll; (Object[]); ; Argument[0].ArrayElement; Argument[this]; taint; manual | +| 49 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendAll; ; ; Argument[this]; ReturnValue; value; manual | +| 50 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendFixedWidthPadLeft; ; ; Argument[0]; Argument[this]; taint; manual | +| 51 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendFixedWidthPadLeft; ; ; Argument[this]; ReturnValue; value; manual | +| 52 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendFixedWidthPadRight; ; ; Argument[0]; Argument[this]; taint; manual | +| 53 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendFixedWidthPadRight; ; ; Argument[this]; ReturnValue; value; manual | +| 54 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendNewLine; ; ; Argument[this]; ReturnValue; value; manual | +| 55 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendNull; ; ; Argument[this]; ReturnValue; value; manual | +| 56 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendPadding; ; ; Argument[this]; ReturnValue; value; manual | +| 57 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendSeparator; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 58 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendSeparator; (java.lang.String,int); ; Argument[0]; Argument[this]; taint; manual | +| 59 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendSeparator; (java.lang.String,java.lang.String); ; Argument[0..1]; Argument[this]; taint; manual | +| 60 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendSeparator; ; ; Argument[this]; ReturnValue; value; manual | +| 61 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendTo; ; ; Argument[this]; Argument[0]; taint; manual | +| 62 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendWithSeparators; (Iterable,String); ; Argument[0].Element; Argument[this]; taint; manual | +| 63 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendWithSeparators; (Iterator,String); ; Argument[0].Element; Argument[this]; taint; manual | +| 64 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendWithSeparators; (Object[],String); ; Argument[0].ArrayElement; Argument[this]; taint; manual | +| 65 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendWithSeparators; ; ; Argument[1]; Argument[this]; taint; manual | +| 66 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendWithSeparators; ; ; Argument[this]; ReturnValue; value; manual | +| 67 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (char[]); ; Argument[0]; Argument[this]; taint; manual | +| 68 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (char[],int,int); ; Argument[0]; Argument[this]; taint; manual | +| 69 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | +| 70 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 71 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.String,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 72 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.String,java.lang.Object[]); ; Argument[0]; Argument[this]; taint; manual | +| 73 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | +| 74 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.StringBuffer); ; Argument[0]; Argument[this]; taint; manual | +| 75 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.StringBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 76 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.StringBuilder); ; Argument[0]; Argument[this]; taint; manual | +| 77 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (java.lang.StringBuilder,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 78 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; (org.apache.commons.lang3.text.StrBuilder); ; Argument[0]; Argument[this]; taint; manual | +| 79 | Summary: org.apache.commons.lang3.text; StrBuilder; false; appendln; ; ; Argument[this]; ReturnValue; value; manual | +| 80 | Summary: org.apache.commons.lang3.text; StrBuilder; false; asReader; ; ; Argument[this]; ReturnValue; taint; manual | +| 81 | Summary: org.apache.commons.lang3.text; StrBuilder; false; asTokenizer; ; ; Argument[this]; ReturnValue; taint; manual | +| 82 | Summary: org.apache.commons.lang3.text; StrBuilder; false; build; ; ; Argument[this]; ReturnValue; taint; manual | +| 83 | Summary: org.apache.commons.lang3.text; StrBuilder; false; delete; ; ; Argument[this]; ReturnValue; value; manual | +| 84 | Summary: org.apache.commons.lang3.text; StrBuilder; false; deleteAll; ; ; Argument[this]; ReturnValue; value; manual | +| 85 | Summary: org.apache.commons.lang3.text; StrBuilder; false; deleteCharAt; ; ; Argument[this]; ReturnValue; value; manual | +| 86 | Summary: org.apache.commons.lang3.text; StrBuilder; false; deleteFirst; ; ; Argument[this]; ReturnValue; value; manual | +| 87 | Summary: org.apache.commons.lang3.text; StrBuilder; false; ensureCapacity; ; ; Argument[this]; ReturnValue; value; manual | +| 88 | Summary: org.apache.commons.lang3.text; StrBuilder; false; getChars; (char[]); ; Argument[this]; Argument[0]; taint; manual | +| 89 | Summary: org.apache.commons.lang3.text; StrBuilder; false; getChars; (char[]); ; Argument[this]; ReturnValue; taint; manual | +| 90 | Summary: org.apache.commons.lang3.text; StrBuilder; false; getChars; (int,int,char[],int); ; Argument[this]; Argument[2]; taint; manual | +| 91 | Summary: org.apache.commons.lang3.text; StrBuilder; false; insert; ; ; Argument[1]; Argument[this]; taint; manual | +| 92 | Summary: org.apache.commons.lang3.text; StrBuilder; false; insert; ; ; Argument[this]; ReturnValue; value; manual | +| 93 | Summary: org.apache.commons.lang3.text; StrBuilder; false; leftString; ; ; Argument[this]; ReturnValue; taint; manual | +| 94 | Summary: org.apache.commons.lang3.text; StrBuilder; false; midString; ; ; Argument[this]; ReturnValue; taint; manual | +| 95 | Summary: org.apache.commons.lang3.text; StrBuilder; false; minimizeCapacity; ; ; Argument[this]; ReturnValue; value; manual | +| 96 | Summary: org.apache.commons.lang3.text; StrBuilder; false; readFrom; ; ; Argument[0]; Argument[this]; taint; manual | +| 97 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replace; (int,int,java.lang.String); ; Argument[2]; Argument[this]; taint; manual | +| 98 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replace; (org.apache.commons.lang3.text.StrMatcher,java.lang.String,int,int,int); ; Argument[1]; Argument[this]; taint; manual | +| 99 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replace; ; ; Argument[this]; ReturnValue; value; manual | +| 100 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replaceAll; ; ; Argument[1]; Argument[this]; taint; manual | +| 101 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replaceAll; ; ; Argument[this]; ReturnValue; value; manual | +| 102 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replaceFirst; ; ; Argument[1]; Argument[this]; taint; manual | +| 103 | Summary: org.apache.commons.lang3.text; StrBuilder; false; replaceFirst; ; ; Argument[this]; ReturnValue; value; manual | +| 104 | Summary: org.apache.commons.lang3.text; StrBuilder; false; reverse; ; ; Argument[this]; ReturnValue; value; manual | +| 105 | Summary: org.apache.commons.lang3.text; StrBuilder; false; rightString; ; ; Argument[this]; ReturnValue; taint; manual | +| 106 | Summary: org.apache.commons.lang3.text; StrBuilder; false; setCharAt; ; ; Argument[this]; ReturnValue; value; manual | +| 107 | Summary: org.apache.commons.lang3.text; StrBuilder; false; setLength; ; ; Argument[this]; ReturnValue; value; manual | +| 108 | Summary: org.apache.commons.lang3.text; StrBuilder; false; setNewLineText; ; ; Argument[this]; ReturnValue; value; manual | +| 109 | Summary: org.apache.commons.lang3.text; StrBuilder; false; setNullText; ; ; Argument[this]; ReturnValue; value; manual | +| 110 | Summary: org.apache.commons.lang3.text; StrBuilder; false; subSequence; ; ; Argument[this]; ReturnValue; taint; manual | +| 111 | Summary: org.apache.commons.lang3.text; StrBuilder; false; substring; ; ; Argument[this]; ReturnValue; taint; manual | +| 112 | Summary: org.apache.commons.lang3.text; StrBuilder; false; toCharArray; ; ; Argument[this]; ReturnValue; taint; manual | +| 113 | Summary: org.apache.commons.lang3.text; StrBuilder; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | +| 114 | Summary: org.apache.commons.lang3.text; StrBuilder; false; toStringBuffer; ; ; Argument[this]; ReturnValue; taint; manual | +| 115 | Summary: org.apache.commons.lang3.text; StrBuilder; false; toStringBuilder; ; ; Argument[this]; ReturnValue; taint; manual | +| 116 | Summary: org.apache.commons.lang3.text; StrBuilder; false; trim; ; ; Argument[this]; ReturnValue; value; manual | +| 117 | Summary: org.apache.commons.lang3.text; StrLookup; false; lookup; ; ; Argument[this]; ReturnValue; taint; manual | +| 118 | Summary: org.apache.commons.lang3.text; StrLookup; false; mapLookup; ; ; Argument[0].MapValue; ReturnValue; taint; manual | +| 119 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; StrSubstitutor; ; ; Argument[0].MapValue; Argument[this]; taint; manual | +| 120 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; StrSubstitutor; ; ; Argument[0]; Argument[this]; taint; manual | +| 121 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (char[]); ; Argument[0]; ReturnValue; taint; manual | +| 122 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (char[],int,int); ; Argument[0]; ReturnValue; taint; manual | +| 123 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.CharSequence); ; Argument[0]; ReturnValue; taint; manual | +| 124 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.CharSequence,int,int); ; Argument[0]; ReturnValue; taint; manual | +| 125 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object); ; Argument[0]; ReturnValue; taint; manual | +| 126 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object,java.util.Map); ; Argument[0]; ReturnValue; taint; manual | +| 127 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object,java.util.Map); ; Argument[1].MapValue; ReturnValue; taint; manual | +| 128 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object,java.util.Map,java.lang.String,java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 129 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object,java.util.Map,java.lang.String,java.lang.String); ; Argument[1].MapValue; ReturnValue; taint; manual | +| 130 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object,java.util.Properties); ; Argument[0]; ReturnValue; taint; manual | +| 131 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.Object,java.util.Properties); ; Argument[1].MapValue; ReturnValue; taint; manual | +| 132 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 133 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.String,int,int); ; Argument[0]; ReturnValue; taint; manual | +| 134 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.StringBuffer); ; Argument[0]; ReturnValue; taint; manual | +| 135 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (java.lang.StringBuffer,int,int); ; Argument[0]; ReturnValue; taint; manual | +| 136 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (org.apache.commons.lang3.text.StrBuilder); ; Argument[0]; ReturnValue; taint; manual | +| 137 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; (org.apache.commons.lang3.text.StrBuilder,int,int); ; Argument[0]; ReturnValue; taint; manual | +| 138 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replace; ; ; Argument[this]; ReturnValue; taint; manual | +| 139 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replaceIn; (java.lang.StringBuffer); ; Argument[this]; Argument[0]; taint; manual | +| 140 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replaceIn; (java.lang.StringBuffer,int,int); ; Argument[this]; Argument[0]; taint; manual | +| 141 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replaceIn; (java.lang.StringBuilder); ; Argument[this]; Argument[0]; taint; manual | +| 142 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replaceIn; (java.lang.StringBuilder,int,int); ; Argument[this]; Argument[0]; taint; manual | +| 143 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replaceIn; (org.apache.commons.lang3.text.StrBuilder); ; Argument[this]; Argument[0]; taint; manual | +| 144 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; replaceIn; (org.apache.commons.lang3.text.StrBuilder,int,int); ; Argument[this]; Argument[0]; taint; manual | +| 145 | Summary: org.apache.commons.lang3.text; StrSubstitutor; false; setVariableResolver; ; ; Argument[0]; Argument[this]; taint; manual | +| 146 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; StrTokenizer; ; ; Argument[0]; Argument[this]; taint; manual | +| 147 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; clone; ; ; Argument[this]; ReturnValue; taint; manual | +| 148 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; getCSVInstance; ; ; Argument[0]; ReturnValue; taint; manual | +| 149 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; getContent; ; ; Argument[this]; ReturnValue; taint; manual | +| 150 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; getTSVInstance; ; ; Argument[0]; ReturnValue; taint; manual | +| 151 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; getTokenArray; ; ; Argument[this]; ReturnValue; taint; manual | +| 152 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; getTokenList; ; ; Argument[this]; ReturnValue; taint; manual | +| 153 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; next; ; ; Argument[this]; ReturnValue; taint; manual | +| 154 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; nextToken; ; ; Argument[this]; ReturnValue; taint; manual | +| 155 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; previous; ; ; Argument[this]; ReturnValue; taint; manual | +| 156 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; previousToken; ; ; Argument[this]; ReturnValue; taint; manual | +| 157 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; reset; ; ; Argument[0]; ReturnValue; taint; manual | +| 158 | Summary: org.apache.commons.lang3.text; StrTokenizer; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | +| 159 | Summary: org.apache.commons.lang3.text; WordUtils; false; capitalize; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 160 | Summary: org.apache.commons.lang3.text; WordUtils; false; capitalize; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | +| 161 | Summary: org.apache.commons.lang3.text; WordUtils; false; capitalizeFully; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 162 | Summary: org.apache.commons.lang3.text; WordUtils; false; capitalizeFully; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | +| 163 | Summary: org.apache.commons.lang3.text; WordUtils; false; initials; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 164 | Summary: org.apache.commons.lang3.text; WordUtils; false; initials; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | +| 165 | Summary: org.apache.commons.lang3.text; WordUtils; false; swapCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 166 | Summary: org.apache.commons.lang3.text; WordUtils; false; uncapitalize; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 167 | Summary: org.apache.commons.lang3.text; WordUtils; false; uncapitalize; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | +| 168 | Summary: org.apache.commons.lang3.text; WordUtils; false; wrap; (java.lang.String,int,java.lang.String,boolean); ; Argument[2]; ReturnValue; taint; manual | +| 169 | Summary: org.apache.commons.lang3.text; WordUtils; false; wrap; (java.lang.String,int,java.lang.String,boolean,java.lang.String); ; Argument[2]; ReturnValue; taint; manual | +| 170 | Summary: org.apache.commons.lang3.text; WordUtils; false; wrap; ; ; Argument[0]; ReturnValue; taint; manual | +| 171 | Summary: org.apache.commons.lang3.tuple; ImmutablePair; false; ImmutablePair; (java.lang.Object,java.lang.Object); ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutablePair.left]; value; manual | +| 172 | Summary: org.apache.commons.lang3.tuple; ImmutablePair; false; ImmutablePair; (java.lang.Object,java.lang.Object); ; Argument[1]; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutablePair.right]; value; manual | +| 173 | Summary: org.apache.commons.lang3.tuple; ImmutablePair; false; left; ; ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutablePair.left]; value; manual | +| 174 | Summary: org.apache.commons.lang3.tuple; ImmutablePair; false; of; (java.lang.Object,java.lang.Object); ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutablePair.left]; value; manual | +| 175 | Summary: org.apache.commons.lang3.tuple; ImmutablePair; false; of; (java.lang.Object,java.lang.Object); ; Argument[1]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutablePair.right]; value; manual | +| 176 | Summary: org.apache.commons.lang3.tuple; ImmutablePair; false; right; ; ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutablePair.right]; value; manual | +| 177 | Summary: org.apache.commons.lang3.tuple; ImmutableTriple; false; ImmutableTriple; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutableTriple.left]; value; manual | +| 178 | Summary: org.apache.commons.lang3.tuple; ImmutableTriple; false; ImmutableTriple; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[1]; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutableTriple.middle]; value; manual | +| 179 | Summary: org.apache.commons.lang3.tuple; ImmutableTriple; false; ImmutableTriple; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[2]; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutableTriple.right]; value; manual | +| 180 | Summary: org.apache.commons.lang3.tuple; ImmutableTriple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutableTriple.left]; value; manual | +| 181 | Summary: org.apache.commons.lang3.tuple; ImmutableTriple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[1]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutableTriple.middle]; value; manual | +| 182 | Summary: org.apache.commons.lang3.tuple; ImmutableTriple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[2]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutableTriple.right]; value; manual | +| 183 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; MutablePair; (java.lang.Object,java.lang.Object); ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.left]; value; manual | +| 184 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; MutablePair; (java.lang.Object,java.lang.Object); ; Argument[1]; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.right]; value; manual | +| 185 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; of; (java.lang.Object,java.lang.Object); ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.MutablePair.left]; value; manual | +| 186 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; of; (java.lang.Object,java.lang.Object); ; Argument[1]; ReturnValue.Field[org.apache.commons.lang3.tuple.MutablePair.right]; value; manual | +| 187 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; setLeft; ; ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.left]; value; manual | +| 188 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; setRight; ; ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.right]; value; manual | +| 189 | Summary: org.apache.commons.lang3.tuple; MutablePair; false; setValue; ; ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.right]; value; manual | +| 190 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; MutableTriple; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.left]; value; manual | +| 191 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; MutableTriple; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[1]; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.middle]; value; manual | +| 192 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; MutableTriple; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[2]; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.right]; value; manual | +| 193 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.MutableTriple.left]; value; manual | +| 194 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[1]; ReturnValue.Field[org.apache.commons.lang3.tuple.MutableTriple.middle]; value; manual | +| 195 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[2]; ReturnValue.Field[org.apache.commons.lang3.tuple.MutableTriple.right]; value; manual | +| 196 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; setLeft; ; ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.left]; value; manual | +| 197 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; setMiddle; ; ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.middle]; value; manual | +| 198 | Summary: org.apache.commons.lang3.tuple; MutableTriple; false; setRight; ; ; Argument[0]; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.right]; value; manual | +| 199 | Summary: org.apache.commons.lang3.tuple; Pair; false; of; (java.lang.Object,java.lang.Object); ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutablePair.left]; value; manual | +| 200 | Summary: org.apache.commons.lang3.tuple; Pair; false; of; (java.lang.Object,java.lang.Object); ; Argument[1]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutablePair.right]; value; manual | +| 201 | Summary: org.apache.commons.lang3.tuple; Pair; true; getKey; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutablePair.left]; ReturnValue; value; manual | +| 202 | Summary: org.apache.commons.lang3.tuple; Pair; true; getKey; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.left]; ReturnValue; value; manual | +| 203 | Summary: org.apache.commons.lang3.tuple; Pair; true; getLeft; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutablePair.left]; ReturnValue; value; manual | +| 204 | Summary: org.apache.commons.lang3.tuple; Pair; true; getLeft; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.left]; ReturnValue; value; manual | +| 205 | Summary: org.apache.commons.lang3.tuple; Pair; true; getRight; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutablePair.right]; ReturnValue; value; manual | +| 206 | Summary: org.apache.commons.lang3.tuple; Pair; true; getRight; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.right]; ReturnValue; value; manual | +| 207 | Summary: org.apache.commons.lang3.tuple; Pair; true; getValue; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutablePair.right]; ReturnValue; value; manual | +| 208 | Summary: org.apache.commons.lang3.tuple; Pair; true; getValue; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutablePair.right]; ReturnValue; value; manual | +| 209 | Summary: org.apache.commons.lang3.tuple; Triple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[0]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutableTriple.left]; value; manual | +| 210 | Summary: org.apache.commons.lang3.tuple; Triple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[1]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutableTriple.middle]; value; manual | +| 211 | Summary: org.apache.commons.lang3.tuple; Triple; false; of; (java.lang.Object,java.lang.Object,java.lang.Object); ; Argument[2]; ReturnValue.Field[org.apache.commons.lang3.tuple.ImmutableTriple.right]; value; manual | +| 212 | Summary: org.apache.commons.lang3.tuple; Triple; true; getLeft; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutableTriple.left]; ReturnValue; value; manual | +| 213 | Summary: org.apache.commons.lang3.tuple; Triple; true; getLeft; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.left]; ReturnValue; value; manual | +| 214 | Summary: org.apache.commons.lang3.tuple; Triple; true; getMiddle; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutableTriple.middle]; ReturnValue; value; manual | +| 215 | Summary: org.apache.commons.lang3.tuple; Triple; true; getMiddle; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.middle]; ReturnValue; value; manual | +| 216 | Summary: org.apache.commons.lang3.tuple; Triple; true; getRight; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.ImmutableTriple.right]; ReturnValue; value; manual | +| 217 | Summary: org.apache.commons.lang3.tuple; Triple; true; getRight; ; ; Argument[this].Field[org.apache.commons.lang3.tuple.MutableTriple.right]; ReturnValue; value; manual | +| 218 | Summary: org.apache.commons.lang3; ArrayUtils; false; add; (java.lang.Object[],java.lang.Object); ; Argument[1]; ReturnValue.ArrayElement; value; manual | +| 219 | Summary: org.apache.commons.lang3; ArrayUtils; false; add; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 220 | Summary: org.apache.commons.lang3; ArrayUtils; false; add; ; ; Argument[2]; ReturnValue.ArrayElement; value; manual | +| 221 | Summary: org.apache.commons.lang3; ArrayUtils; false; addAll; ; ; Argument[0..1].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 222 | Summary: org.apache.commons.lang3; ArrayUtils; false; addFirst; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 223 | Summary: org.apache.commons.lang3; ArrayUtils; false; addFirst; ; ; Argument[1]; ReturnValue.ArrayElement; value; manual | +| 224 | Summary: org.apache.commons.lang3; ArrayUtils; false; clone; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 225 | Summary: org.apache.commons.lang3; ArrayUtils; false; get; (java.lang.Object[],int,java.lang.Object); ; Argument[2]; ReturnValue; value; manual | +| 226 | Summary: org.apache.commons.lang3; ArrayUtils; false; get; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | +| 227 | Summary: org.apache.commons.lang3; ArrayUtils; false; insert; ; ; Argument[1..2].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 228 | Summary: org.apache.commons.lang3; ArrayUtils; false; nullToEmpty; (java.lang.Object[],java.lang.Class); ; Argument[0]; ReturnValue; value; manual | +| 229 | Summary: org.apache.commons.lang3; ArrayUtils; false; nullToEmpty; (java.lang.String[]); ; Argument[0]; ReturnValue; value; manual | +| 230 | Summary: org.apache.commons.lang3; ArrayUtils; false; remove; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 231 | Summary: org.apache.commons.lang3; ArrayUtils; false; removeAll; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 232 | Summary: org.apache.commons.lang3; ArrayUtils; false; removeAllOccurences; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 233 | Summary: org.apache.commons.lang3; ArrayUtils; false; removeAllOccurrences; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 234 | Summary: org.apache.commons.lang3; ArrayUtils; false; removeElement; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 235 | Summary: org.apache.commons.lang3; ArrayUtils; false; removeElements; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 236 | Summary: org.apache.commons.lang3; ArrayUtils; false; subarray; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 237 | Summary: org.apache.commons.lang3; ArrayUtils; false; toArray; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 238 | Summary: org.apache.commons.lang3; ArrayUtils; false; toMap; ; ; Argument[0].ArrayElement.ArrayElement; ReturnValue.MapValue; value; manual | +| 239 | Summary: org.apache.commons.lang3; ArrayUtils; false; toMap; ; ; Argument[0].ArrayElement.MapValue; ReturnValue.MapValue; value; manual | +| 240 | Summary: org.apache.commons.lang3; ArrayUtils; false; toObject; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 241 | Summary: org.apache.commons.lang3; ArrayUtils; false; toPrimitive; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 242 | Summary: org.apache.commons.lang3; ArrayUtils; false; toPrimitive; ; ; Argument[1]; ReturnValue.ArrayElement; value; manual | +| 243 | Summary: org.apache.commons.lang3; ObjectUtils; false; CONST; ; ; Argument[0]; ReturnValue; value; manual | +| 244 | Summary: org.apache.commons.lang3; ObjectUtils; false; CONST_BYTE; ; ; Argument[0]; ReturnValue; value; manual | +| 245 | Summary: org.apache.commons.lang3; ObjectUtils; false; CONST_SHORT; ; ; Argument[0]; ReturnValue; value; manual | +| 246 | Summary: org.apache.commons.lang3; ObjectUtils; false; clone; ; ; Argument[0]; ReturnValue; value; manual | +| 247 | Summary: org.apache.commons.lang3; ObjectUtils; false; cloneIfPossible; ; ; Argument[0]; ReturnValue; value; manual | +| 248 | Summary: org.apache.commons.lang3; ObjectUtils; false; defaultIfNull; ; ; Argument[0..1]; ReturnValue; value; manual | +| 249 | Summary: org.apache.commons.lang3; ObjectUtils; false; firstNonNull; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | +| 250 | Summary: org.apache.commons.lang3; ObjectUtils; false; getIfNull; ; ; Argument[0]; ReturnValue; value; manual | +| 251 | Summary: org.apache.commons.lang3; ObjectUtils; false; max; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | +| 252 | Summary: org.apache.commons.lang3; ObjectUtils; false; median; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | +| 253 | Summary: org.apache.commons.lang3; ObjectUtils; false; min; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | +| 254 | Summary: org.apache.commons.lang3; ObjectUtils; false; mode; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | +| 255 | Summary: org.apache.commons.lang3; ObjectUtils; false; requireNonEmpty; ; ; Argument[0]; ReturnValue; value; manual | +| 256 | Summary: org.apache.commons.lang3; ObjectUtils; false; toString; (Object,String); ; Argument[1]; ReturnValue; value; manual | +| 257 | Summary: org.apache.commons.lang3; RegExUtils; false; removeAll; ; ; Argument[0]; ReturnValue; taint; manual | +| 258 | Summary: org.apache.commons.lang3; RegExUtils; false; removeFirst; ; ; Argument[0]; ReturnValue; taint; manual | +| 259 | Summary: org.apache.commons.lang3; RegExUtils; false; removePattern; ; ; Argument[0]; ReturnValue; taint; manual | +| 260 | Summary: org.apache.commons.lang3; RegExUtils; false; replaceAll; ; ; Argument[0]; ReturnValue; taint; manual | +| 261 | Summary: org.apache.commons.lang3; RegExUtils; false; replaceAll; ; ; Argument[2]; ReturnValue; taint; manual | +| 262 | Summary: org.apache.commons.lang3; RegExUtils; false; replaceFirst; ; ; Argument[0]; ReturnValue; taint; manual | +| 263 | Summary: org.apache.commons.lang3; RegExUtils; false; replaceFirst; ; ; Argument[2]; ReturnValue; taint; manual | +| 264 | Summary: org.apache.commons.lang3; RegExUtils; false; replacePattern; ; ; Argument[0]; ReturnValue; taint; manual | +| 265 | Summary: org.apache.commons.lang3; RegExUtils; false; replacePattern; ; ; Argument[2]; ReturnValue; taint; manual | +| 266 | Summary: org.apache.commons.lang3; StringEscapeUtils; false; escapeJson; ; ; Argument[0]; ReturnValue; taint; manual | +| 267 | Summary: org.apache.commons.lang3; StringUtils; false; abbreviate; (java.lang.String,java.lang.String,int); ; Argument[1]; ReturnValue; taint; manual | +| 268 | Summary: org.apache.commons.lang3; StringUtils; false; abbreviate; (java.lang.String,java.lang.String,int,int); ; Argument[1]; ReturnValue; taint; manual | +| 269 | Summary: org.apache.commons.lang3; StringUtils; false; abbreviate; ; ; Argument[0]; ReturnValue; taint; manual | +| 270 | Summary: org.apache.commons.lang3; StringUtils; false; abbreviateMiddle; ; ; Argument[0]; ReturnValue; taint; manual | +| 271 | Summary: org.apache.commons.lang3; StringUtils; false; abbreviateMiddle; ; ; Argument[1]; ReturnValue; taint; manual | +| 272 | Summary: org.apache.commons.lang3; StringUtils; false; appendIfMissing; ; ; Argument[0]; ReturnValue; taint; manual | +| 273 | Summary: org.apache.commons.lang3; StringUtils; false; appendIfMissing; ; ; Argument[1]; ReturnValue; taint; manual | +| 274 | Summary: org.apache.commons.lang3; StringUtils; false; appendIfMissingIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 275 | Summary: org.apache.commons.lang3; StringUtils; false; appendIfMissingIgnoreCase; ; ; Argument[1]; ReturnValue; taint; manual | +| 276 | Summary: org.apache.commons.lang3; StringUtils; false; capitalize; ; ; Argument[0]; ReturnValue; taint; manual | +| 277 | Summary: org.apache.commons.lang3; StringUtils; false; center; (java.lang.String,int,java.lang.String); ; Argument[2]; ReturnValue; taint; manual | +| 278 | Summary: org.apache.commons.lang3; StringUtils; false; center; ; ; Argument[0]; ReturnValue; taint; manual | +| 279 | Summary: org.apache.commons.lang3; StringUtils; false; chomp; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 280 | Summary: org.apache.commons.lang3; StringUtils; false; chomp; (java.lang.String,java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 281 | Summary: org.apache.commons.lang3; StringUtils; false; chop; ; ; Argument[0]; ReturnValue; taint; manual | +| 282 | Summary: org.apache.commons.lang3; StringUtils; false; defaultIfBlank; ; ; Argument[0..1]; ReturnValue; taint; manual | +| 283 | Summary: org.apache.commons.lang3; StringUtils; false; defaultIfEmpty; ; ; Argument[0..1]; ReturnValue; taint; manual | +| 284 | Summary: org.apache.commons.lang3; StringUtils; false; defaultString; ; ; Argument[0..1]; ReturnValue; taint; manual | +| 285 | Summary: org.apache.commons.lang3; StringUtils; false; deleteWhitespace; ; ; Argument[0]; ReturnValue; taint; manual | +| 286 | Summary: org.apache.commons.lang3; StringUtils; false; difference; ; ; Argument[0..1]; ReturnValue; taint; manual | +| 287 | Summary: org.apache.commons.lang3; StringUtils; false; firstNonBlank; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | +| 288 | Summary: org.apache.commons.lang3; StringUtils; false; firstNonEmpty; ; ; Argument[0].ArrayElement; ReturnValue; value; manual | +| 289 | Summary: org.apache.commons.lang3; StringUtils; false; getBytes; ; ; Argument[0]; ReturnValue; taint; manual | +| 290 | Summary: org.apache.commons.lang3; StringUtils; false; getCommonPrefix; ; ; Argument[0].ArrayElement; ReturnValue; taint; manual | +| 291 | Summary: org.apache.commons.lang3; StringUtils; false; getDigits; ; ; Argument[0]; ReturnValue; taint; manual | +| 292 | Summary: org.apache.commons.lang3; StringUtils; false; getIfBlank; ; ; Argument[0..1]; ReturnValue; taint; manual | +| 293 | Summary: org.apache.commons.lang3; StringUtils; false; getIfEmpty; ; ; Argument[0..1]; ReturnValue; taint; manual | +| 294 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[]); ; Argument[0].ArrayElement; ReturnValue; taint; manual | +| 295 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[],String); ; Argument[0].ArrayElement; ReturnValue; taint; manual | +| 296 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[],String); ; Argument[1]; ReturnValue; taint; manual | +| 297 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[],String,int,int); ; Argument[0].ArrayElement; ReturnValue; taint; manual | +| 298 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[],String,int,int); ; Argument[1]; ReturnValue; taint; manual | +| 299 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[],char); ; Argument[0].ArrayElement; ReturnValue; taint; manual | +| 300 | Summary: org.apache.commons.lang3; StringUtils; false; join; (Object[],char,int,int); ; Argument[0].ArrayElement; ReturnValue; taint; manual | +| 301 | Summary: org.apache.commons.lang3; StringUtils; false; join; (char[],char); ; Argument[0]; ReturnValue; taint; manual | +| 302 | Summary: org.apache.commons.lang3; StringUtils; false; join; (char[],char,int,int); ; Argument[0]; ReturnValue; taint; manual | +| 303 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.lang.Iterable,char); ; Argument[0].Element; ReturnValue; taint; manual | +| 304 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.lang.Iterable,java.lang.String); ; Argument[0].Element; ReturnValue; taint; manual | +| 305 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.lang.Iterable,java.lang.String); ; Argument[1]; ReturnValue; taint; manual | +| 306 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.util.Iterator,char); ; Argument[0].Element; ReturnValue; taint; manual | +| 307 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.util.Iterator,java.lang.String); ; Argument[0].Element; ReturnValue; taint; manual | +| 308 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.util.Iterator,java.lang.String); ; Argument[1]; ReturnValue; taint; manual | +| 309 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.util.List,char,int,int); ; Argument[0].Element; ReturnValue; taint; manual | +| 310 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.util.List,java.lang.String,int,int); ; Argument[0].Element; ReturnValue; taint; manual | +| 311 | Summary: org.apache.commons.lang3; StringUtils; false; join; (java.util.List,java.lang.String,int,int); ; Argument[1]; ReturnValue; taint; manual | +| 312 | Summary: org.apache.commons.lang3; StringUtils; false; joinWith; ; ; Argument[0]; ReturnValue; taint; manual | +| 313 | Summary: org.apache.commons.lang3; StringUtils; false; joinWith; ; ; Argument[1].ArrayElement; ReturnValue; taint; manual | +| 314 | Summary: org.apache.commons.lang3; StringUtils; false; left; ; ; Argument[0]; ReturnValue; taint; manual | +| 315 | Summary: org.apache.commons.lang3; StringUtils; false; leftPad; (java.lang.String,int,java.lang.String); ; Argument[2]; ReturnValue; taint; manual | +| 316 | Summary: org.apache.commons.lang3; StringUtils; false; leftPad; ; ; Argument[0]; ReturnValue; taint; manual | +| 317 | Summary: org.apache.commons.lang3; StringUtils; false; lowerCase; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 318 | Summary: org.apache.commons.lang3; StringUtils; false; lowerCase; (java.lang.String,java.util.Locale); ; Argument[0]; ReturnValue; taint; manual | +| 319 | Summary: org.apache.commons.lang3; StringUtils; false; mid; ; ; Argument[0]; ReturnValue; taint; manual | +| 320 | Summary: org.apache.commons.lang3; StringUtils; false; normalizeSpace; ; ; Argument[0]; ReturnValue; taint; manual | +| 321 | Summary: org.apache.commons.lang3; StringUtils; false; overlay; ; ; Argument[0]; ReturnValue; taint; manual | +| 322 | Summary: org.apache.commons.lang3; StringUtils; false; overlay; ; ; Argument[1]; ReturnValue; taint; manual | +| 323 | Summary: org.apache.commons.lang3; StringUtils; false; prependIfMissing; ; ; Argument[0]; ReturnValue; taint; manual | +| 324 | Summary: org.apache.commons.lang3; StringUtils; false; prependIfMissing; ; ; Argument[1]; ReturnValue; taint; manual | +| 325 | Summary: org.apache.commons.lang3; StringUtils; false; prependIfMissingIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 326 | Summary: org.apache.commons.lang3; StringUtils; false; prependIfMissingIgnoreCase; ; ; Argument[1]; ReturnValue; taint; manual | +| 327 | Summary: org.apache.commons.lang3; StringUtils; false; remove; ; ; Argument[0]; ReturnValue; taint; manual | +| 328 | Summary: org.apache.commons.lang3; StringUtils; false; removeAll; ; ; Argument[0]; ReturnValue; taint; manual | +| 329 | Summary: org.apache.commons.lang3; StringUtils; false; removeEnd; ; ; Argument[0]; ReturnValue; taint; manual | +| 330 | Summary: org.apache.commons.lang3; StringUtils; false; removeEndIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 331 | Summary: org.apache.commons.lang3; StringUtils; false; removeFirst; ; ; Argument[0]; ReturnValue; taint; manual | +| 332 | Summary: org.apache.commons.lang3; StringUtils; false; removeIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 333 | Summary: org.apache.commons.lang3; StringUtils; false; removePattern; ; ; Argument[0]; ReturnValue; taint; manual | +| 334 | Summary: org.apache.commons.lang3; StringUtils; false; removeStart; ; ; Argument[0]; ReturnValue; taint; manual | +| 335 | Summary: org.apache.commons.lang3; StringUtils; false; removeStartIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 336 | Summary: org.apache.commons.lang3; StringUtils; false; repeat; (java.lang.String,java.lang.String,int); ; Argument[1]; ReturnValue; taint; manual | +| 337 | Summary: org.apache.commons.lang3; StringUtils; false; repeat; ; ; Argument[0]; ReturnValue; taint; manual | +| 338 | Summary: org.apache.commons.lang3; StringUtils; false; replace; ; ; Argument[0]; ReturnValue; taint; manual | +| 339 | Summary: org.apache.commons.lang3; StringUtils; false; replace; ; ; Argument[2]; ReturnValue; taint; manual | +| 340 | Summary: org.apache.commons.lang3; StringUtils; false; replaceAll; ; ; Argument[0]; ReturnValue; taint; manual | +| 341 | Summary: org.apache.commons.lang3; StringUtils; false; replaceAll; ; ; Argument[2]; ReturnValue; taint; manual | +| 342 | Summary: org.apache.commons.lang3; StringUtils; false; replaceChars; (java.lang.String,java.lang.String,java.lang.String); ; Argument[2]; ReturnValue; taint; manual | +| 343 | Summary: org.apache.commons.lang3; StringUtils; false; replaceChars; ; ; Argument[0]; ReturnValue; taint; manual | +| 344 | Summary: org.apache.commons.lang3; StringUtils; false; replaceEach; ; ; Argument[0]; ReturnValue; taint; manual | +| 345 | Summary: org.apache.commons.lang3; StringUtils; false; replaceEach; ; ; Argument[2].ArrayElement; ReturnValue; taint; manual | +| 346 | Summary: org.apache.commons.lang3; StringUtils; false; replaceEachRepeatedly; ; ; Argument[0]; ReturnValue; taint; manual | +| 347 | Summary: org.apache.commons.lang3; StringUtils; false; replaceEachRepeatedly; ; ; Argument[2].ArrayElement; ReturnValue; taint; manual | +| 348 | Summary: org.apache.commons.lang3; StringUtils; false; replaceFirst; ; ; Argument[0]; ReturnValue; taint; manual | +| 349 | Summary: org.apache.commons.lang3; StringUtils; false; replaceFirst; ; ; Argument[2]; ReturnValue; taint; manual | +| 350 | Summary: org.apache.commons.lang3; StringUtils; false; replaceIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 351 | Summary: org.apache.commons.lang3; StringUtils; false; replaceIgnoreCase; ; ; Argument[2]; ReturnValue; taint; manual | +| 352 | Summary: org.apache.commons.lang3; StringUtils; false; replaceOnce; ; ; Argument[0]; ReturnValue; taint; manual | +| 353 | Summary: org.apache.commons.lang3; StringUtils; false; replaceOnce; ; ; Argument[2]; ReturnValue; taint; manual | +| 354 | Summary: org.apache.commons.lang3; StringUtils; false; replaceOnceIgnoreCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 355 | Summary: org.apache.commons.lang3; StringUtils; false; replaceOnceIgnoreCase; ; ; Argument[2]; ReturnValue; taint; manual | +| 356 | Summary: org.apache.commons.lang3; StringUtils; false; replacePattern; ; ; Argument[0]; ReturnValue; taint; manual | +| 357 | Summary: org.apache.commons.lang3; StringUtils; false; replacePattern; ; ; Argument[2]; ReturnValue; taint; manual | +| 358 | Summary: org.apache.commons.lang3; StringUtils; false; reverse; ; ; Argument[0]; ReturnValue; taint; manual | +| 359 | Summary: org.apache.commons.lang3; StringUtils; false; reverseDelimited; ; ; Argument[0]; ReturnValue; taint; manual | +| 360 | Summary: org.apache.commons.lang3; StringUtils; false; right; ; ; Argument[0]; ReturnValue; taint; manual | +| 361 | Summary: org.apache.commons.lang3; StringUtils; false; rightPad; (java.lang.String,int,java.lang.String); ; Argument[2]; ReturnValue; taint; manual | +| 362 | Summary: org.apache.commons.lang3; StringUtils; false; rightPad; ; ; Argument[0]; ReturnValue; taint; manual | +| 363 | Summary: org.apache.commons.lang3; StringUtils; false; rotate; ; ; Argument[0]; ReturnValue; taint; manual | +| 364 | Summary: org.apache.commons.lang3; StringUtils; false; split; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 365 | Summary: org.apache.commons.lang3; StringUtils; false; split; (java.lang.String,char); ; Argument[0]; ReturnValue; taint; manual | +| 366 | Summary: org.apache.commons.lang3; StringUtils; false; split; (java.lang.String,java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 367 | Summary: org.apache.commons.lang3; StringUtils; false; split; (java.lang.String,java.lang.String,int); ; Argument[0]; ReturnValue; taint; manual | +| 368 | Summary: org.apache.commons.lang3; StringUtils; false; splitByCharacterType; ; ; Argument[0]; ReturnValue; taint; manual | +| 369 | Summary: org.apache.commons.lang3; StringUtils; false; splitByCharacterTypeCamelCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 370 | Summary: org.apache.commons.lang3; StringUtils; false; splitByWholeSeparator; ; ; Argument[0]; ReturnValue; taint; manual | +| 371 | Summary: org.apache.commons.lang3; StringUtils; false; splitByWholeSeparatorPreserveAllTokens; ; ; Argument[0]; ReturnValue; taint; manual | +| 372 | Summary: org.apache.commons.lang3; StringUtils; false; splitPreserveAllTokens; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 373 | Summary: org.apache.commons.lang3; StringUtils; false; splitPreserveAllTokens; (java.lang.String,char); ; Argument[0]; ReturnValue; taint; manual | +| 374 | Summary: org.apache.commons.lang3; StringUtils; false; splitPreserveAllTokens; (java.lang.String,java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 375 | Summary: org.apache.commons.lang3; StringUtils; false; splitPreserveAllTokens; (java.lang.String,java.lang.String,int); ; Argument[0]; ReturnValue; taint; manual | +| 376 | Summary: org.apache.commons.lang3; StringUtils; false; strip; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 377 | Summary: org.apache.commons.lang3; StringUtils; false; strip; (java.lang.String,java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 378 | Summary: org.apache.commons.lang3; StringUtils; false; stripAccents; ; ; Argument[0]; ReturnValue; taint; manual | +| 379 | Summary: org.apache.commons.lang3; StringUtils; false; stripAll; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; taint; manual | +| 380 | Summary: org.apache.commons.lang3; StringUtils; false; stripEnd; ; ; Argument[0]; ReturnValue; taint; manual | +| 381 | Summary: org.apache.commons.lang3; StringUtils; false; stripStart; ; ; Argument[0]; ReturnValue; taint; manual | +| 382 | Summary: org.apache.commons.lang3; StringUtils; false; stripToEmpty; ; ; Argument[0]; ReturnValue; taint; manual | +| 383 | Summary: org.apache.commons.lang3; StringUtils; false; stripToNull; ; ; Argument[0]; ReturnValue; taint; manual | +| 384 | Summary: org.apache.commons.lang3; StringUtils; false; substring; ; ; Argument[0]; ReturnValue; taint; manual | +| 385 | Summary: org.apache.commons.lang3; StringUtils; false; substringAfter; ; ; Argument[0]; ReturnValue; taint; manual | +| 386 | Summary: org.apache.commons.lang3; StringUtils; false; substringAfterLast; ; ; Argument[0]; ReturnValue; taint; manual | +| 387 | Summary: org.apache.commons.lang3; StringUtils; false; substringBefore; ; ; Argument[0]; ReturnValue; taint; manual | +| 388 | Summary: org.apache.commons.lang3; StringUtils; false; substringBeforeLast; ; ; Argument[0]; ReturnValue; taint; manual | +| 389 | Summary: org.apache.commons.lang3; StringUtils; false; substringBetween; ; ; Argument[0]; ReturnValue; taint; manual | +| 390 | Summary: org.apache.commons.lang3; StringUtils; false; substringsBetween; ; ; Argument[0]; ReturnValue; taint; manual | +| 391 | Summary: org.apache.commons.lang3; StringUtils; false; swapCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 392 | Summary: org.apache.commons.lang3; StringUtils; false; toCodePoints; ; ; Argument[0]; ReturnValue; taint; manual | +| 393 | Summary: org.apache.commons.lang3; StringUtils; false; toEncodedString; ; ; Argument[0]; ReturnValue; taint; manual | +| 394 | Summary: org.apache.commons.lang3; StringUtils; false; toRootLowerCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 395 | Summary: org.apache.commons.lang3; StringUtils; false; toRootUpperCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 396 | Summary: org.apache.commons.lang3; StringUtils; false; toString; ; ; Argument[0]; ReturnValue; taint; manual | +| 397 | Summary: org.apache.commons.lang3; StringUtils; false; trim; ; ; Argument[0]; ReturnValue; taint; manual | +| 398 | Summary: org.apache.commons.lang3; StringUtils; false; trimToEmpty; ; ; Argument[0]; ReturnValue; taint; manual | +| 399 | Summary: org.apache.commons.lang3; StringUtils; false; trimToNull; ; ; Argument[0]; ReturnValue; taint; manual | +| 400 | Summary: org.apache.commons.lang3; StringUtils; false; truncate; ; ; Argument[0]; ReturnValue; taint; manual | +| 401 | Summary: org.apache.commons.lang3; StringUtils; false; uncapitalize; ; ; Argument[0]; ReturnValue; taint; manual | +| 402 | Summary: org.apache.commons.lang3; StringUtils; false; unwrap; ; ; Argument[0]; ReturnValue; taint; manual | +| 403 | Summary: org.apache.commons.lang3; StringUtils; false; upperCase; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 404 | Summary: org.apache.commons.lang3; StringUtils; false; upperCase; (java.lang.String,java.util.Locale); ; Argument[0]; ReturnValue; taint; manual | +| 405 | Summary: org.apache.commons.lang3; StringUtils; false; valueOf; ; ; Argument[0]; ReturnValue; taint; manual | +| 406 | Summary: org.apache.commons.lang3; StringUtils; false; wrap; (java.lang.String,char); ; Argument[0]; ReturnValue; taint; manual | +| 407 | Summary: org.apache.commons.lang3; StringUtils; false; wrap; (java.lang.String,java.lang.String); ; Argument[0..1]; ReturnValue; taint; manual | +| 408 | Summary: org.apache.commons.lang3; StringUtils; false; wrapIfMissing; (java.lang.String,char); ; Argument[0]; ReturnValue; taint; manual | +| 409 | Summary: org.apache.commons.lang3; StringUtils; false; wrapIfMissing; (java.lang.String,java.lang.String); ; Argument[0..1]; ReturnValue; taint; manual | +| 410 | Summary: org.apache.commons.text.lookup; StringLookup; true; lookup; ; ; Argument[this]; ReturnValue; taint; manual | +| 411 | Summary: org.apache.commons.text.lookup; StringLookupFactory; false; mapStringLookup; ; ; Argument[0].MapValue; ReturnValue; taint; manual | +| 412 | Summary: org.apache.commons.text; StrBuilder; false; StrBuilder; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 413 | Summary: org.apache.commons.text; StrBuilder; false; append; (char[]); ; Argument[0]; Argument[this]; taint; manual | +| 414 | Summary: org.apache.commons.text; StrBuilder; false; append; (char[],int,int); ; Argument[0]; Argument[this]; taint; manual | +| 415 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.CharSequence); ; Argument[0]; Argument[this]; taint; manual | +| 416 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.CharSequence,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 417 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | +| 418 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 419 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.String,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 420 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[0]; Argument[this]; taint; manual | +| 421 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | +| 422 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.StringBuffer); ; Argument[0]; Argument[this]; taint; manual | +| 423 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.StringBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 424 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.StringBuilder); ; Argument[0]; Argument[this]; taint; manual | +| 425 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.lang.StringBuilder,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 426 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.nio.CharBuffer); ; Argument[0]; Argument[this]; taint; manual | +| 427 | Summary: org.apache.commons.text; StrBuilder; false; append; (java.nio.CharBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 428 | Summary: org.apache.commons.text; StrBuilder; false; append; (org.apache.commons.text.StrBuilder); ; Argument[0]; Argument[this]; taint; manual | +| 429 | Summary: org.apache.commons.text; StrBuilder; false; append; ; ; Argument[this]; ReturnValue; value; manual | +| 430 | Summary: org.apache.commons.text; StrBuilder; false; appendAll; (Iterable); ; Argument[0].Element; Argument[this]; taint; manual | +| 431 | Summary: org.apache.commons.text; StrBuilder; false; appendAll; (Iterator); ; Argument[0].Element; Argument[this]; taint; manual | +| 432 | Summary: org.apache.commons.text; StrBuilder; false; appendAll; (Object[]); ; Argument[0].ArrayElement; Argument[this]; taint; manual | +| 433 | Summary: org.apache.commons.text; StrBuilder; false; appendAll; ; ; Argument[this]; ReturnValue; value; manual | +| 434 | Summary: org.apache.commons.text; StrBuilder; false; appendFixedWidthPadLeft; ; ; Argument[0]; Argument[this]; taint; manual | +| 435 | Summary: org.apache.commons.text; StrBuilder; false; appendFixedWidthPadLeft; ; ; Argument[this]; ReturnValue; value; manual | +| 436 | Summary: org.apache.commons.text; StrBuilder; false; appendFixedWidthPadRight; ; ; Argument[0]; Argument[this]; taint; manual | +| 437 | Summary: org.apache.commons.text; StrBuilder; false; appendFixedWidthPadRight; ; ; Argument[this]; ReturnValue; value; manual | +| 438 | Summary: org.apache.commons.text; StrBuilder; false; appendNewLine; ; ; Argument[this]; ReturnValue; value; manual | +| 439 | Summary: org.apache.commons.text; StrBuilder; false; appendNull; ; ; Argument[this]; ReturnValue; value; manual | +| 440 | Summary: org.apache.commons.text; StrBuilder; false; appendPadding; ; ; Argument[this]; ReturnValue; value; manual | +| 441 | Summary: org.apache.commons.text; StrBuilder; false; appendSeparator; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 442 | Summary: org.apache.commons.text; StrBuilder; false; appendSeparator; (java.lang.String,int); ; Argument[0]; Argument[this]; taint; manual | +| 443 | Summary: org.apache.commons.text; StrBuilder; false; appendSeparator; (java.lang.String,java.lang.String); ; Argument[0..1]; Argument[this]; taint; manual | +| 444 | Summary: org.apache.commons.text; StrBuilder; false; appendSeparator; ; ; Argument[this]; ReturnValue; value; manual | +| 445 | Summary: org.apache.commons.text; StrBuilder; false; appendTo; ; ; Argument[this]; Argument[0]; taint; manual | +| 446 | Summary: org.apache.commons.text; StrBuilder; false; appendWithSeparators; (Iterable,String); ; Argument[0].Element; Argument[this]; taint; manual | +| 447 | Summary: org.apache.commons.text; StrBuilder; false; appendWithSeparators; (Iterator,String); ; Argument[0].Element; Argument[this]; taint; manual | +| 448 | Summary: org.apache.commons.text; StrBuilder; false; appendWithSeparators; (Object[],String); ; Argument[0].ArrayElement; Argument[this]; taint; manual | +| 449 | Summary: org.apache.commons.text; StrBuilder; false; appendWithSeparators; ; ; Argument[1]; Argument[this]; taint; manual | +| 450 | Summary: org.apache.commons.text; StrBuilder; false; appendWithSeparators; ; ; Argument[this]; ReturnValue; value; manual | +| 451 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (char[]); ; Argument[0]; Argument[this]; taint; manual | +| 452 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (char[],int,int); ; Argument[0]; Argument[this]; taint; manual | +| 453 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | +| 454 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 455 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.String,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 456 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.String,java.lang.Object[]); ; Argument[0]; Argument[this]; taint; manual | +| 457 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | +| 458 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.StringBuffer); ; Argument[0]; Argument[this]; taint; manual | +| 459 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.StringBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 460 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.StringBuilder); ; Argument[0]; Argument[this]; taint; manual | +| 461 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (java.lang.StringBuilder,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 462 | Summary: org.apache.commons.text; StrBuilder; false; appendln; (org.apache.commons.text.StrBuilder); ; Argument[0]; Argument[this]; taint; manual | +| 463 | Summary: org.apache.commons.text; StrBuilder; false; appendln; ; ; Argument[this]; ReturnValue; value; manual | +| 464 | Summary: org.apache.commons.text; StrBuilder; false; asReader; ; ; Argument[this]; ReturnValue; taint; manual | +| 465 | Summary: org.apache.commons.text; StrBuilder; false; asTokenizer; ; ; Argument[this]; ReturnValue; taint; manual | +| 466 | Summary: org.apache.commons.text; StrBuilder; false; build; ; ; Argument[this]; ReturnValue; taint; manual | +| 467 | Summary: org.apache.commons.text; StrBuilder; false; delete; ; ; Argument[this]; ReturnValue; value; manual | +| 468 | Summary: org.apache.commons.text; StrBuilder; false; deleteAll; ; ; Argument[this]; ReturnValue; value; manual | +| 469 | Summary: org.apache.commons.text; StrBuilder; false; deleteCharAt; ; ; Argument[this]; ReturnValue; value; manual | +| 470 | Summary: org.apache.commons.text; StrBuilder; false; deleteFirst; ; ; Argument[this]; ReturnValue; value; manual | +| 471 | Summary: org.apache.commons.text; StrBuilder; false; ensureCapacity; ; ; Argument[this]; ReturnValue; value; manual | +| 472 | Summary: org.apache.commons.text; StrBuilder; false; getChars; (char[]); ; Argument[this]; Argument[0]; taint; manual | +| 473 | Summary: org.apache.commons.text; StrBuilder; false; getChars; (char[]); ; Argument[this]; ReturnValue; taint; manual | +| 474 | Summary: org.apache.commons.text; StrBuilder; false; getChars; (int,int,char[],int); ; Argument[this]; Argument[2]; taint; manual | +| 475 | Summary: org.apache.commons.text; StrBuilder; false; insert; ; ; Argument[1]; Argument[this]; taint; manual | +| 476 | Summary: org.apache.commons.text; StrBuilder; false; insert; ; ; Argument[this]; ReturnValue; value; manual | +| 477 | Summary: org.apache.commons.text; StrBuilder; false; leftString; ; ; Argument[this]; ReturnValue; taint; manual | +| 478 | Summary: org.apache.commons.text; StrBuilder; false; midString; ; ; Argument[this]; ReturnValue; taint; manual | +| 479 | Summary: org.apache.commons.text; StrBuilder; false; minimizeCapacity; ; ; Argument[this]; ReturnValue; value; manual | +| 480 | Summary: org.apache.commons.text; StrBuilder; false; readFrom; ; ; Argument[0]; Argument[this]; taint; manual | +| 481 | Summary: org.apache.commons.text; StrBuilder; false; replace; (int,int,java.lang.String); ; Argument[2]; Argument[this]; taint; manual | +| 482 | Summary: org.apache.commons.text; StrBuilder; false; replace; (org.apache.commons.text.StrMatcher,java.lang.String,int,int,int); ; Argument[1]; Argument[this]; taint; manual | +| 483 | Summary: org.apache.commons.text; StrBuilder; false; replace; ; ; Argument[this]; ReturnValue; value; manual | +| 484 | Summary: org.apache.commons.text; StrBuilder; false; replaceAll; ; ; Argument[1]; Argument[this]; taint; manual | +| 485 | Summary: org.apache.commons.text; StrBuilder; false; replaceAll; ; ; Argument[this]; ReturnValue; value; manual | +| 486 | Summary: org.apache.commons.text; StrBuilder; false; replaceFirst; ; ; Argument[1]; Argument[this]; taint; manual | +| 487 | Summary: org.apache.commons.text; StrBuilder; false; replaceFirst; ; ; Argument[this]; ReturnValue; value; manual | +| 488 | Summary: org.apache.commons.text; StrBuilder; false; reverse; ; ; Argument[this]; ReturnValue; value; manual | +| 489 | Summary: org.apache.commons.text; StrBuilder; false; rightString; ; ; Argument[this]; ReturnValue; taint; manual | +| 490 | Summary: org.apache.commons.text; StrBuilder; false; setCharAt; ; ; Argument[this]; ReturnValue; value; manual | +| 491 | Summary: org.apache.commons.text; StrBuilder; false; setLength; ; ; Argument[this]; ReturnValue; value; manual | +| 492 | Summary: org.apache.commons.text; StrBuilder; false; setNewLineText; ; ; Argument[this]; ReturnValue; value; manual | +| 493 | Summary: org.apache.commons.text; StrBuilder; false; setNullText; ; ; Argument[this]; ReturnValue; value; manual | +| 494 | Summary: org.apache.commons.text; StrBuilder; false; subSequence; ; ; Argument[this]; ReturnValue; taint; manual | +| 495 | Summary: org.apache.commons.text; StrBuilder; false; substring; ; ; Argument[this]; ReturnValue; taint; manual | +| 496 | Summary: org.apache.commons.text; StrBuilder; false; toCharArray; ; ; Argument[this]; ReturnValue; taint; manual | +| 497 | Summary: org.apache.commons.text; StrBuilder; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | +| 498 | Summary: org.apache.commons.text; StrBuilder; false; toStringBuffer; ; ; Argument[this]; ReturnValue; taint; manual | +| 499 | Summary: org.apache.commons.text; StrBuilder; false; toStringBuilder; ; ; Argument[this]; ReturnValue; taint; manual | +| 500 | Summary: org.apache.commons.text; StrBuilder; false; trim; ; ; Argument[this]; ReturnValue; value; manual | +| 501 | Summary: org.apache.commons.text; StrTokenizer; false; StrTokenizer; ; ; Argument[0]; Argument[this]; taint; manual | +| 502 | Summary: org.apache.commons.text; StrTokenizer; false; clone; ; ; Argument[this]; ReturnValue; taint; manual | +| 503 | Summary: org.apache.commons.text; StrTokenizer; false; getCSVInstance; ; ; Argument[0]; ReturnValue; taint; manual | +| 504 | Summary: org.apache.commons.text; StrTokenizer; false; getContent; ; ; Argument[this]; ReturnValue; taint; manual | +| 505 | Summary: org.apache.commons.text; StrTokenizer; false; getTSVInstance; ; ; Argument[0]; ReturnValue; taint; manual | +| 506 | Summary: org.apache.commons.text; StrTokenizer; false; getTokenArray; ; ; Argument[this]; ReturnValue; taint; manual | +| 507 | Summary: org.apache.commons.text; StrTokenizer; false; getTokenList; ; ; Argument[this]; ReturnValue; taint; manual | +| 508 | Summary: org.apache.commons.text; StrTokenizer; false; next; ; ; Argument[this]; ReturnValue; taint; manual | +| 509 | Summary: org.apache.commons.text; StrTokenizer; false; nextToken; ; ; Argument[this]; ReturnValue; taint; manual | +| 510 | Summary: org.apache.commons.text; StrTokenizer; false; previous; ; ; Argument[this]; ReturnValue; taint; manual | +| 511 | Summary: org.apache.commons.text; StrTokenizer; false; previousToken; ; ; Argument[this]; ReturnValue; taint; manual | +| 512 | Summary: org.apache.commons.text; StrTokenizer; false; reset; ; ; Argument[0]; ReturnValue; taint; manual | +| 513 | Summary: org.apache.commons.text; StrTokenizer; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | +| 514 | Summary: org.apache.commons.text; StringSubstitutor; false; StringSubstitutor; ; ; Argument[0].MapValue; Argument[this]; taint; manual | +| 515 | Summary: org.apache.commons.text; StringSubstitutor; false; StringSubstitutor; ; ; Argument[0]; Argument[this]; taint; manual | +| 516 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (char[]); ; Argument[0]; ReturnValue; taint; manual | +| 517 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (char[],int,int); ; Argument[0]; ReturnValue; taint; manual | +| 518 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.CharSequence); ; Argument[0]; ReturnValue; taint; manual | +| 519 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.CharSequence,int,int); ; Argument[0]; ReturnValue; taint; manual | +| 520 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object); ; Argument[0]; ReturnValue; taint; manual | +| 521 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object,java.util.Map); ; Argument[0]; ReturnValue; taint; manual | +| 522 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object,java.util.Map); ; Argument[1].MapValue; ReturnValue; taint; manual | +| 523 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object,java.util.Map,java.lang.String,java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 524 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object,java.util.Map,java.lang.String,java.lang.String); ; Argument[1].MapValue; ReturnValue; taint; manual | +| 525 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object,java.util.Properties); ; Argument[0]; ReturnValue; taint; manual | +| 526 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.Object,java.util.Properties); ; Argument[1].MapValue; ReturnValue; taint; manual | +| 527 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 528 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.String,int,int); ; Argument[0]; ReturnValue; taint; manual | +| 529 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.StringBuffer); ; Argument[0]; ReturnValue; taint; manual | +| 530 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (java.lang.StringBuffer,int,int); ; Argument[0]; ReturnValue; taint; manual | +| 531 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (org.apache.commons.text.TextStringBuilder); ; Argument[0]; ReturnValue; taint; manual | +| 532 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; (org.apache.commons.text.TextStringBuilder,int,int); ; Argument[0]; ReturnValue; taint; manual | +| 533 | Summary: org.apache.commons.text; StringSubstitutor; false; replace; ; ; Argument[this]; ReturnValue; taint; manual | +| 534 | Summary: org.apache.commons.text; StringSubstitutor; false; replaceIn; (java.lang.StringBuffer); ; Argument[this]; Argument[0]; taint; manual | +| 535 | Summary: org.apache.commons.text; StringSubstitutor; false; replaceIn; (java.lang.StringBuffer,int,int); ; Argument[this]; Argument[0]; taint; manual | +| 536 | Summary: org.apache.commons.text; StringSubstitutor; false; replaceIn; (java.lang.StringBuilder); ; Argument[this]; Argument[0]; taint; manual | +| 537 | Summary: org.apache.commons.text; StringSubstitutor; false; replaceIn; (java.lang.StringBuilder,int,int); ; Argument[this]; Argument[0]; taint; manual | +| 538 | Summary: org.apache.commons.text; StringSubstitutor; false; replaceIn; (org.apache.commons.text.TextStringBuilder); ; Argument[this]; Argument[0]; taint; manual | +| 539 | Summary: org.apache.commons.text; StringSubstitutor; false; replaceIn; (org.apache.commons.text.TextStringBuilder,int,int); ; Argument[this]; Argument[0]; taint; manual | +| 540 | Summary: org.apache.commons.text; StringSubstitutor; false; setVariableResolver; ; ; Argument[0]; Argument[this]; taint; manual | +| 541 | Summary: org.apache.commons.text; StringTokenizer; false; StringTokenizer; ; ; Argument[0]; Argument[this]; taint; manual | +| 542 | Summary: org.apache.commons.text; StringTokenizer; false; clone; ; ; Argument[this]; ReturnValue; taint; manual | +| 543 | Summary: org.apache.commons.text; StringTokenizer; false; getCSVInstance; ; ; Argument[0]; ReturnValue; taint; manual | +| 544 | Summary: org.apache.commons.text; StringTokenizer; false; getContent; ; ; Argument[this]; ReturnValue; taint; manual | +| 545 | Summary: org.apache.commons.text; StringTokenizer; false; getTSVInstance; ; ; Argument[0]; ReturnValue; taint; manual | +| 546 | Summary: org.apache.commons.text; StringTokenizer; false; getTokenArray; ; ; Argument[this]; ReturnValue; taint; manual | +| 547 | Summary: org.apache.commons.text; StringTokenizer; false; getTokenList; ; ; Argument[this]; ReturnValue; taint; manual | +| 548 | Summary: org.apache.commons.text; StringTokenizer; false; next; ; ; Argument[this]; ReturnValue; taint; manual | +| 549 | Summary: org.apache.commons.text; StringTokenizer; false; nextToken; ; ; Argument[this]; ReturnValue; taint; manual | +| 550 | Summary: org.apache.commons.text; StringTokenizer; false; previous; ; ; Argument[this]; ReturnValue; taint; manual | +| 551 | Summary: org.apache.commons.text; StringTokenizer; false; previousToken; ; ; Argument[this]; ReturnValue; taint; manual | +| 552 | Summary: org.apache.commons.text; StringTokenizer; false; reset; ; ; Argument[0]; ReturnValue; taint; manual | +| 553 | Summary: org.apache.commons.text; StringTokenizer; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | +| 554 | Summary: org.apache.commons.text; TextStringBuilder; false; TextStringBuilder; (java.lang.CharSequence); ; Argument[0]; Argument[this]; taint; manual | +| 555 | Summary: org.apache.commons.text; TextStringBuilder; false; TextStringBuilder; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 556 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (char[]); ; Argument[0]; Argument[this]; taint; manual | +| 557 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (char[],int,int); ; Argument[0]; Argument[this]; taint; manual | +| 558 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.CharSequence); ; Argument[0]; Argument[this]; taint; manual | +| 559 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.CharSequence,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 560 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | +| 561 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 562 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.String,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 563 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[0]; Argument[this]; taint; manual | +| 564 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | +| 565 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.StringBuffer); ; Argument[0]; Argument[this]; taint; manual | +| 566 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.StringBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 567 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.StringBuilder); ; Argument[0]; Argument[this]; taint; manual | +| 568 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.lang.StringBuilder,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 569 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.nio.CharBuffer); ; Argument[0]; Argument[this]; taint; manual | +| 570 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (java.nio.CharBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 571 | Summary: org.apache.commons.text; TextStringBuilder; false; append; (org.apache.commons.text.TextStringBuilder); ; Argument[0]; Argument[this]; taint; manual | +| 572 | Summary: org.apache.commons.text; TextStringBuilder; false; append; ; ; Argument[this]; ReturnValue; value; manual | +| 573 | Summary: org.apache.commons.text; TextStringBuilder; false; appendAll; (Iterable); ; Argument[0].Element; Argument[this]; taint; manual | +| 574 | Summary: org.apache.commons.text; TextStringBuilder; false; appendAll; (Iterator); ; Argument[0].Element; Argument[this]; taint; manual | +| 575 | Summary: org.apache.commons.text; TextStringBuilder; false; appendAll; (Object[]); ; Argument[0].ArrayElement; Argument[this]; taint; manual | +| 576 | Summary: org.apache.commons.text; TextStringBuilder; false; appendAll; ; ; Argument[this]; ReturnValue; value; manual | +| 577 | Summary: org.apache.commons.text; TextStringBuilder; false; appendFixedWidthPadLeft; ; ; Argument[0]; Argument[this]; taint; manual | +| 578 | Summary: org.apache.commons.text; TextStringBuilder; false; appendFixedWidthPadLeft; ; ; Argument[this]; ReturnValue; value; manual | +| 579 | Summary: org.apache.commons.text; TextStringBuilder; false; appendFixedWidthPadRight; ; ; Argument[0]; Argument[this]; taint; manual | +| 580 | Summary: org.apache.commons.text; TextStringBuilder; false; appendFixedWidthPadRight; ; ; Argument[this]; ReturnValue; value; manual | +| 581 | Summary: org.apache.commons.text; TextStringBuilder; false; appendNewLine; ; ; Argument[this]; ReturnValue; value; manual | +| 582 | Summary: org.apache.commons.text; TextStringBuilder; false; appendNull; ; ; Argument[this]; ReturnValue; value; manual | +| 583 | Summary: org.apache.commons.text; TextStringBuilder; false; appendPadding; ; ; Argument[this]; ReturnValue; value; manual | +| 584 | Summary: org.apache.commons.text; TextStringBuilder; false; appendSeparator; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 585 | Summary: org.apache.commons.text; TextStringBuilder; false; appendSeparator; (java.lang.String,int); ; Argument[0]; Argument[this]; taint; manual | +| 586 | Summary: org.apache.commons.text; TextStringBuilder; false; appendSeparator; (java.lang.String,java.lang.String); ; Argument[0..1]; Argument[this]; taint; manual | +| 587 | Summary: org.apache.commons.text; TextStringBuilder; false; appendSeparator; ; ; Argument[this]; ReturnValue; value; manual | +| 588 | Summary: org.apache.commons.text; TextStringBuilder; false; appendTo; ; ; Argument[this]; Argument[0]; taint; manual | +| 589 | Summary: org.apache.commons.text; TextStringBuilder; false; appendWithSeparators; (Iterable,String); ; Argument[0].Element; Argument[this]; taint; manual | +| 590 | Summary: org.apache.commons.text; TextStringBuilder; false; appendWithSeparators; (Iterator,String); ; Argument[0].Element; Argument[this]; taint; manual | +| 591 | Summary: org.apache.commons.text; TextStringBuilder; false; appendWithSeparators; (Object[],String); ; Argument[0].ArrayElement; Argument[this]; taint; manual | +| 592 | Summary: org.apache.commons.text; TextStringBuilder; false; appendWithSeparators; ; ; Argument[1]; Argument[this]; taint; manual | +| 593 | Summary: org.apache.commons.text; TextStringBuilder; false; appendWithSeparators; ; ; Argument[this]; ReturnValue; value; manual | +| 594 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (char[]); ; Argument[0]; Argument[this]; taint; manual | +| 595 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (char[],int,int); ; Argument[0]; Argument[this]; taint; manual | +| 596 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.Object); ; Argument[0]; Argument[this]; taint; manual | +| 597 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 598 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.String,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 599 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.String,java.lang.Object[]); ; Argument[0]; Argument[this]; taint; manual | +| 600 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.String,java.lang.Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | +| 601 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.StringBuffer); ; Argument[0]; Argument[this]; taint; manual | +| 602 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.StringBuffer,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 603 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.StringBuilder); ; Argument[0]; Argument[this]; taint; manual | +| 604 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (java.lang.StringBuilder,int,int); ; Argument[0]; Argument[this]; taint; manual | +| 605 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; (org.apache.commons.text.TextStringBuilder); ; Argument[0]; Argument[this]; taint; manual | +| 606 | Summary: org.apache.commons.text; TextStringBuilder; false; appendln; ; ; Argument[this]; ReturnValue; value; manual | +| 607 | Summary: org.apache.commons.text; TextStringBuilder; false; asReader; ; ; Argument[this]; ReturnValue; taint; manual | +| 608 | Summary: org.apache.commons.text; TextStringBuilder; false; asTokenizer; ; ; Argument[this]; ReturnValue; taint; manual | +| 609 | Summary: org.apache.commons.text; TextStringBuilder; false; build; ; ; Argument[this]; ReturnValue; taint; manual | +| 610 | Summary: org.apache.commons.text; TextStringBuilder; false; delete; ; ; Argument[this]; ReturnValue; value; manual | +| 611 | Summary: org.apache.commons.text; TextStringBuilder; false; deleteAll; ; ; Argument[this]; ReturnValue; value; manual | +| 612 | Summary: org.apache.commons.text; TextStringBuilder; false; deleteCharAt; ; ; Argument[this]; ReturnValue; value; manual | +| 613 | Summary: org.apache.commons.text; TextStringBuilder; false; deleteFirst; ; ; Argument[this]; ReturnValue; value; manual | +| 614 | Summary: org.apache.commons.text; TextStringBuilder; false; ensureCapacity; ; ; Argument[this]; ReturnValue; value; manual | +| 615 | Summary: org.apache.commons.text; TextStringBuilder; false; getChars; (char[]); ; Argument[this]; Argument[0]; taint; manual | +| 616 | Summary: org.apache.commons.text; TextStringBuilder; false; getChars; (char[]); ; Argument[this]; ReturnValue; taint; manual | +| 617 | Summary: org.apache.commons.text; TextStringBuilder; false; getChars; (int,int,char[],int); ; Argument[this]; Argument[2]; taint; manual | +| 618 | Summary: org.apache.commons.text; TextStringBuilder; false; insert; ; ; Argument[1]; Argument[this]; taint; manual | +| 619 | Summary: org.apache.commons.text; TextStringBuilder; false; insert; ; ; Argument[this]; ReturnValue; value; manual | +| 620 | Summary: org.apache.commons.text; TextStringBuilder; false; leftString; ; ; Argument[this]; ReturnValue; taint; manual | +| 621 | Summary: org.apache.commons.text; TextStringBuilder; false; midString; ; ; Argument[this]; ReturnValue; taint; manual | +| 622 | Summary: org.apache.commons.text; TextStringBuilder; false; minimizeCapacity; ; ; Argument[this]; ReturnValue; value; manual | +| 623 | Summary: org.apache.commons.text; TextStringBuilder; false; readFrom; ; ; Argument[0]; Argument[this]; taint; manual | +| 624 | Summary: org.apache.commons.text; TextStringBuilder; false; replace; (int,int,java.lang.String); ; Argument[2]; Argument[this]; taint; manual | +| 625 | Summary: org.apache.commons.text; TextStringBuilder; false; replace; (org.apache.commons.text.matcher.StringMatcher,java.lang.String,int,int,int); ; Argument[1]; Argument[this]; taint; manual | +| 626 | Summary: org.apache.commons.text; TextStringBuilder; false; replace; ; ; Argument[this]; ReturnValue; value; manual | +| 627 | Summary: org.apache.commons.text; TextStringBuilder; false; replaceAll; ; ; Argument[1]; Argument[this]; taint; manual | +| 628 | Summary: org.apache.commons.text; TextStringBuilder; false; replaceAll; ; ; Argument[this]; ReturnValue; value; manual | +| 629 | Summary: org.apache.commons.text; TextStringBuilder; false; replaceFirst; ; ; Argument[1]; Argument[this]; taint; manual | +| 630 | Summary: org.apache.commons.text; TextStringBuilder; false; replaceFirst; ; ; Argument[this]; ReturnValue; value; manual | +| 631 | Summary: org.apache.commons.text; TextStringBuilder; false; reverse; ; ; Argument[this]; ReturnValue; value; manual | +| 632 | Summary: org.apache.commons.text; TextStringBuilder; false; rightString; ; ; Argument[this]; ReturnValue; taint; manual | +| 633 | Summary: org.apache.commons.text; TextStringBuilder; false; setCharAt; ; ; Argument[this]; ReturnValue; value; manual | +| 634 | Summary: org.apache.commons.text; TextStringBuilder; false; setLength; ; ; Argument[this]; ReturnValue; value; manual | +| 635 | Summary: org.apache.commons.text; TextStringBuilder; false; setNewLineText; ; ; Argument[this]; ReturnValue; value; manual | +| 636 | Summary: org.apache.commons.text; TextStringBuilder; false; setNullText; ; ; Argument[this]; ReturnValue; value; manual | +| 637 | Summary: org.apache.commons.text; TextStringBuilder; false; subSequence; ; ; Argument[this]; ReturnValue; taint; manual | +| 638 | Summary: org.apache.commons.text; TextStringBuilder; false; substring; ; ; Argument[this]; ReturnValue; taint; manual | +| 639 | Summary: org.apache.commons.text; TextStringBuilder; false; toCharArray; ; ; Argument[this]; ReturnValue; taint; manual | +| 640 | Summary: org.apache.commons.text; TextStringBuilder; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | +| 641 | Summary: org.apache.commons.text; TextStringBuilder; false; toStringBuffer; ; ; Argument[this]; ReturnValue; taint; manual | +| 642 | Summary: org.apache.commons.text; TextStringBuilder; false; toStringBuilder; ; ; Argument[this]; ReturnValue; taint; manual | +| 643 | Summary: org.apache.commons.text; TextStringBuilder; false; trim; ; ; Argument[this]; ReturnValue; value; manual | +| 644 | Summary: org.apache.commons.text; WordUtils; false; abbreviate; ; ; Argument[0]; ReturnValue; taint; manual | +| 645 | Summary: org.apache.commons.text; WordUtils; false; abbreviate; ; ; Argument[3]; ReturnValue; taint; manual | +| 646 | Summary: org.apache.commons.text; WordUtils; false; capitalize; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 647 | Summary: org.apache.commons.text; WordUtils; false; capitalize; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | +| 648 | Summary: org.apache.commons.text; WordUtils; false; capitalizeFully; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 649 | Summary: org.apache.commons.text; WordUtils; false; capitalizeFully; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | +| 650 | Summary: org.apache.commons.text; WordUtils; false; initials; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 651 | Summary: org.apache.commons.text; WordUtils; false; initials; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | +| 652 | Summary: org.apache.commons.text; WordUtils; false; swapCase; ; ; Argument[0]; ReturnValue; taint; manual | +| 653 | Summary: org.apache.commons.text; WordUtils; false; uncapitalize; (java.lang.String); ; Argument[0]; ReturnValue; taint; manual | +| 654 | Summary: org.apache.commons.text; WordUtils; false; uncapitalize; (java.lang.String,char[]); ; Argument[0]; ReturnValue; taint; manual | +| 655 | Summary: org.apache.commons.text; WordUtils; false; wrap; (java.lang.String,int,java.lang.String,boolean); ; Argument[2]; ReturnValue; taint; manual | +| 656 | Summary: org.apache.commons.text; WordUtils; false; wrap; (java.lang.String,int,java.lang.String,boolean,java.lang.String); ; Argument[2]; ReturnValue; taint; manual | +| 657 | Summary: org.apache.commons.text; WordUtils; false; wrap; ; ; Argument[0]; ReturnValue; taint; manual | edges | ArrayUtilsTest.java:20:33:20:56 | {...} : String[] [[]] : String | ArrayUtilsTest.java:24:27:24:40 | alreadyTainted : String[] [[]] : String | provenance | | | ArrayUtilsTest.java:20:33:20:56 | {...} : String[] [[]] : String | ArrayUtilsTest.java:27:27:27:40 | alreadyTainted : String[] [[]] : String | provenance | | @@ -682,586 +676,519 @@ edges | ArrayUtilsTest.java:20:33:20:56 | {...} : String[] [[]] : String | ArrayUtilsTest.java:59:32:59:45 | alreadyTainted : String[] [[]] : String | provenance | | | ArrayUtilsTest.java:20:33:20:56 | {...} : String[] [[]] : String | ArrayUtilsTest.java:63:29:63:42 | alreadyTainted : String[] [[]] : String | provenance | | | ArrayUtilsTest.java:20:48:20:54 | taint(...) : String | ArrayUtilsTest.java:20:33:20:56 | {...} : String[] [[]] : String | provenance | | -| ArrayUtilsTest.java:23:37:23:43 | taint(...) : String | ArrayUtilsTest.java:23:12:23:44 | add(...) | provenance | MaD:226 | -| ArrayUtilsTest.java:24:27:24:40 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:24:12:24:53 | add(...) | provenance | MaD:225 | -| ArrayUtilsTest.java:26:34:26:40 | taint(...) : String | ArrayUtilsTest.java:26:12:26:41 | add(...) | provenance | MaD:224 | -| ArrayUtilsTest.java:27:27:27:40 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:27:12:27:50 | add(...) | provenance | MaD:225 | -| ArrayUtilsTest.java:28:12:28:53 | new ..[] { .. } : Object[] [[]] : String | ArrayUtilsTest.java:28:12:28:53 | addAll(...) | provenance | MaD:227 | +| ArrayUtilsTest.java:23:37:23:43 | taint(...) : String | ArrayUtilsTest.java:23:12:23:44 | add(...) | provenance | MaD:220 | +| ArrayUtilsTest.java:24:27:24:40 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:24:12:24:53 | add(...) | provenance | MaD:219 | +| ArrayUtilsTest.java:26:34:26:40 | taint(...) : String | ArrayUtilsTest.java:26:12:26:41 | add(...) | provenance | MaD:218 | +| ArrayUtilsTest.java:27:27:27:40 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:27:12:27:50 | add(...) | provenance | MaD:219 | +| ArrayUtilsTest.java:28:12:28:53 | new ..[] { .. } : Object[] [[]] : String | ArrayUtilsTest.java:28:12:28:53 | addAll(...) | provenance | MaD:221 | | ArrayUtilsTest.java:28:46:28:52 | taint(...) : String | ArrayUtilsTest.java:28:12:28:53 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| ArrayUtilsTest.java:29:12:29:53 | new ..[] { .. } : Object[] [[]] : String | ArrayUtilsTest.java:29:12:29:53 | addAll(...) | provenance | MaD:227 | +| ArrayUtilsTest.java:29:12:29:53 | new ..[] { .. } : Object[] [[]] : String | ArrayUtilsTest.java:29:12:29:53 | addAll(...) | provenance | MaD:221 | | ArrayUtilsTest.java:29:37:29:43 | taint(...) : String | ArrayUtilsTest.java:29:12:29:53 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| ArrayUtilsTest.java:30:30:30:43 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:30:12:30:67 | addAll(...) | provenance | MaD:227 | -| ArrayUtilsTest.java:31:39:31:45 | taint(...) : String | ArrayUtilsTest.java:31:12:31:46 | addFirst(...) | provenance | MaD:229 | -| ArrayUtilsTest.java:32:32:32:45 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:32:12:32:55 | addFirst(...) | provenance | MaD:228 | -| ArrayUtilsTest.java:33:29:33:42 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:33:12:33:43 | clone(...) | provenance | MaD:230 | -| ArrayUtilsTest.java:34:27:34:40 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:34:12:34:44 | get(...) | provenance | MaD:232 | -| ArrayUtilsTest.java:36:27:36:40 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:36:12:36:61 | get(...) | provenance | MaD:232 | -| ArrayUtilsTest.java:38:37:38:43 | taint(...) : String | ArrayUtilsTest.java:38:12:38:44 | get(...) | provenance | MaD:231 | -| ArrayUtilsTest.java:40:33:40:46 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:40:12:40:67 | insert(...) | provenance | MaD:233 | -| ArrayUtilsTest.java:41:12:41:57 | new ..[] { .. } : Object[] [[]] : String | ArrayUtilsTest.java:41:12:41:57 | insert(...) | provenance | MaD:233 | +| ArrayUtilsTest.java:30:30:30:43 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:30:12:30:67 | addAll(...) | provenance | MaD:221 | +| ArrayUtilsTest.java:31:39:31:45 | taint(...) : String | ArrayUtilsTest.java:31:12:31:46 | addFirst(...) | provenance | MaD:223 | +| ArrayUtilsTest.java:32:32:32:45 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:32:12:32:55 | addFirst(...) | provenance | MaD:222 | +| ArrayUtilsTest.java:33:29:33:42 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:33:12:33:43 | clone(...) | provenance | MaD:224 | +| ArrayUtilsTest.java:34:27:34:40 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:34:12:34:44 | get(...) | provenance | MaD:226 | +| ArrayUtilsTest.java:36:27:36:40 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:36:12:36:61 | get(...) | provenance | MaD:226 | +| ArrayUtilsTest.java:38:37:38:43 | taint(...) : String | ArrayUtilsTest.java:38:12:38:44 | get(...) | provenance | MaD:225 | +| ArrayUtilsTest.java:40:33:40:46 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:40:12:40:67 | insert(...) | provenance | MaD:227 | +| ArrayUtilsTest.java:41:12:41:57 | new ..[] { .. } : Object[] [[]] : String | ArrayUtilsTest.java:41:12:41:57 | insert(...) | provenance | MaD:227 | | ArrayUtilsTest.java:41:40:41:46 | taint(...) : String | ArrayUtilsTest.java:41:12:41:57 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| ArrayUtilsTest.java:42:12:42:57 | new ..[] { .. } : Object[] [[]] : String | ArrayUtilsTest.java:42:12:42:57 | insert(...) | provenance | MaD:233 | +| ArrayUtilsTest.java:42:12:42:57 | new ..[] { .. } : Object[] [[]] : String | ArrayUtilsTest.java:42:12:42:57 | insert(...) | provenance | MaD:227 | | ArrayUtilsTest.java:42:50:42:56 | taint(...) : String | ArrayUtilsTest.java:42:12:42:57 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| ArrayUtilsTest.java:43:35:43:48 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:43:12:43:49 | nullToEmpty(...) | provenance | MaD:235 | -| ArrayUtilsTest.java:44:35:44:48 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:44:12:44:65 | nullToEmpty(...) | provenance | MaD:234 | -| ArrayUtilsTest.java:45:30:45:43 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:45:12:45:47 | remove(...) | provenance | MaD:236 | -| ArrayUtilsTest.java:47:33:47:46 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:47:12:47:53 | removeAll(...) | provenance | MaD:237 | -| ArrayUtilsTest.java:51:43:51:56 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:51:12:51:76 | removeAllOccurences(...) | provenance | MaD:238 | -| ArrayUtilsTest.java:53:44:53:57 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:53:12:53:77 | removeAllOccurrences(...) | provenance | MaD:239 | -| ArrayUtilsTest.java:55:37:55:50 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:55:12:55:70 | removeElement(...) | provenance | MaD:240 | -| ArrayUtilsTest.java:56:38:56:51 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:56:12:56:58 | removeElements(...) | provenance | MaD:241 | -| ArrayUtilsTest.java:59:32:59:45 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:59:12:59:52 | subarray(...) | provenance | MaD:242 | -| ArrayUtilsTest.java:61:12:61:47 | new ..[] { .. } : Object[] [[]] : String | ArrayUtilsTest.java:61:12:61:47 | toArray(...) | provenance | MaD:243 | +| ArrayUtilsTest.java:43:35:43:48 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:43:12:43:49 | nullToEmpty(...) | provenance | MaD:229 | +| ArrayUtilsTest.java:44:35:44:48 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:44:12:44:65 | nullToEmpty(...) | provenance | MaD:228 | +| ArrayUtilsTest.java:45:30:45:43 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:45:12:45:47 | remove(...) | provenance | MaD:230 | +| ArrayUtilsTest.java:47:33:47:46 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:47:12:47:53 | removeAll(...) | provenance | MaD:231 | +| ArrayUtilsTest.java:51:43:51:56 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:51:12:51:76 | removeAllOccurences(...) | provenance | MaD:232 | +| ArrayUtilsTest.java:53:44:53:57 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:53:12:53:77 | removeAllOccurrences(...) | provenance | MaD:233 | +| ArrayUtilsTest.java:55:37:55:50 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:55:12:55:70 | removeElement(...) | provenance | MaD:234 | +| ArrayUtilsTest.java:56:38:56:51 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:56:12:56:58 | removeElements(...) | provenance | MaD:235 | +| ArrayUtilsTest.java:59:32:59:45 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:59:12:59:52 | subarray(...) | provenance | MaD:236 | +| ArrayUtilsTest.java:61:12:61:47 | new ..[] { .. } : Object[] [[]] : String | ArrayUtilsTest.java:61:12:61:47 | toArray(...) | provenance | MaD:237 | | ArrayUtilsTest.java:61:40:61:46 | taint(...) : String | ArrayUtilsTest.java:61:12:61:47 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| ArrayUtilsTest.java:62:12:62:47 | new ..[] { .. } : Object[] [[]] : String | ArrayUtilsTest.java:62:12:62:47 | toArray(...) | provenance | MaD:243 | +| ArrayUtilsTest.java:62:12:62:47 | new ..[] { .. } : Object[] [[]] : String | ArrayUtilsTest.java:62:12:62:47 | toArray(...) | provenance | MaD:237 | | ArrayUtilsTest.java:62:31:62:37 | taint(...) : String | ArrayUtilsTest.java:62:12:62:47 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| ArrayUtilsTest.java:63:12:63:43 | toMap(...) : Map [] : Object | ArrayUtilsTest.java:63:12:63:54 | get(...) | provenance | MaD:17 | -| ArrayUtilsTest.java:63:29:63:42 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:63:12:63:43 | toMap(...) : Map [] : Object | provenance | MaD:244 | -| ArrayUtilsTest.java:63:29:63:42 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:63:12:63:43 | toMap(...) : Map [] : Object | provenance | MaD:245 | +| ArrayUtilsTest.java:63:12:63:43 | toMap(...) : Map [] : Object | ArrayUtilsTest.java:63:12:63:54 | get(...) | provenance | MaD:11 | +| ArrayUtilsTest.java:63:29:63:42 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:63:12:63:43 | toMap(...) : Map [] : Object | provenance | MaD:238 | +| ArrayUtilsTest.java:63:29:63:42 | alreadyTainted : String[] [[]] : String | ArrayUtilsTest.java:63:12:63:43 | toMap(...) : Map [] : Object | provenance | MaD:239 | | ArrayUtilsTest.java:68:27:68:57 | {...} : int[] [[]] : Number | ArrayUtilsTest.java:69:56:69:66 | taintedInts : int[] [[]] : Number | provenance | | | ArrayUtilsTest.java:68:39:68:55 | taint(...) : Number | ArrayUtilsTest.java:68:27:68:57 | {...} : int[] [[]] : Number | provenance | | | ArrayUtilsTest.java:69:36:69:67 | toObject(...) : Integer[] [[]] : Number | ArrayUtilsTest.java:70:12:70:27 | taintedBoxedInts | provenance | | | ArrayUtilsTest.java:69:36:69:67 | toObject(...) : Integer[] [[]] : Number | ArrayUtilsTest.java:71:35:71:50 | taintedBoxedInts : Integer[] [[]] : Number | provenance | | -| ArrayUtilsTest.java:69:56:69:66 | taintedInts : int[] [[]] : Number | ArrayUtilsTest.java:69:36:69:67 | toObject(...) : Integer[] [[]] : Number | provenance | MaD:246 | -| ArrayUtilsTest.java:71:35:71:50 | taintedBoxedInts : Integer[] [[]] : Number | ArrayUtilsTest.java:71:12:71:51 | toPrimitive(...) | provenance | MaD:247 | -| ArrayUtilsTest.java:72:53:72:69 | taint(...) : Number | ArrayUtilsTest.java:72:12:72:70 | toPrimitive(...) | provenance | MaD:248 | +| ArrayUtilsTest.java:69:56:69:66 | taintedInts : int[] [[]] : Number | ArrayUtilsTest.java:69:36:69:67 | toObject(...) : Integer[] [[]] : Number | provenance | MaD:240 | +| ArrayUtilsTest.java:71:35:71:50 | taintedBoxedInts : Integer[] [[]] : Number | ArrayUtilsTest.java:71:12:71:51 | toPrimitive(...) | provenance | MaD:241 | +| ArrayUtilsTest.java:72:53:72:69 | taint(...) : Number | ArrayUtilsTest.java:72:12:72:70 | toPrimitive(...) | provenance | MaD:242 | | MutableTest.java:11:39:11:66 | new MutableObject(...) : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:20:12:20:18 | tainted : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | provenance | | | MutableTest.java:11:39:11:66 | new MutableObject(...) : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:21:12:21:23 | taintedAlias : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | provenance | | -| MutableTest.java:11:59:11:65 | taint(...) : String | MutableTest.java:11:39:11:66 | new MutableObject(...) : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | provenance | MaD:33 | +| MutableTest.java:11:59:11:65 | taint(...) : String | MutableTest.java:11:39:11:66 | new MutableObject(...) : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | provenance | MaD:27 | | MutableTest.java:13:44:13:71 | new MutableObject(...) : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:26:12:26:23 | taintCleared : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | provenance | | | MutableTest.java:13:44:13:71 | new MutableObject(...) : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:27:12:27:28 | taintClearedAlias : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | provenance | | -| MutableTest.java:13:64:13:70 | taint(...) : String | MutableTest.java:13:44:13:71 | new MutableObject(...) : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | provenance | MaD:33 | +| MutableTest.java:13:64:13:70 | taint(...) : String | MutableTest.java:13:44:13:71 | new MutableObject(...) : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | provenance | MaD:27 | | MutableTest.java:14:7:14:14 | taintSet [post update] : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:22:12:22:19 | taintSet : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | provenance | | | MutableTest.java:14:7:14:14 | taintSet [post update] : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:23:12:23:24 | taintSetAlias : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | provenance | | -| MutableTest.java:14:25:14:31 | taint(...) : String | MutableTest.java:14:7:14:14 | taintSet [post update] : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | provenance | MaD:32 | -| MutableTest.java:20:12:20:18 | tainted : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:20:12:20:29 | getValue(...) | provenance | MaD:31 | -| MutableTest.java:21:12:21:23 | taintedAlias : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:21:12:21:34 | getValue(...) | provenance | MaD:31 | -| MutableTest.java:22:12:22:19 | taintSet : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:22:12:22:30 | getValue(...) | provenance | MaD:31 | -| MutableTest.java:23:12:23:24 | taintSetAlias : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:23:12:23:35 | getValue(...) | provenance | MaD:31 | -| MutableTest.java:26:12:26:23 | taintCleared : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:26:12:26:34 | getValue(...) | provenance | MaD:31 | -| MutableTest.java:27:12:27:28 | taintClearedAlias : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:27:12:27:39 | getValue(...) | provenance | MaD:31 | -| ObjectUtilsTest.java:13:28:13:34 | taint(...) : String | ObjectUtilsTest.java:13:10:13:35 | clone(...) | provenance | MaD:252 | -| ObjectUtilsTest.java:14:38:14:44 | taint(...) : String | ObjectUtilsTest.java:14:10:14:45 | cloneIfPossible(...) | provenance | MaD:253 | -| ObjectUtilsTest.java:15:28:15:34 | taint(...) : String | ObjectUtilsTest.java:15:10:15:35 | CONST(...) | provenance | MaD:249 | -| ObjectUtilsTest.java:16:34:16:50 | taint(...) : Number | ObjectUtilsTest.java:16:10:16:51 | CONST_SHORT(...) | provenance | MaD:251 | -| ObjectUtilsTest.java:17:33:17:49 | taint(...) : Number | ObjectUtilsTest.java:17:10:17:50 | CONST_BYTE(...) | provenance | MaD:250 | -| ObjectUtilsTest.java:18:36:18:42 | taint(...) : String | ObjectUtilsTest.java:18:10:18:49 | defaultIfNull(...) | provenance | MaD:254 | -| ObjectUtilsTest.java:19:42:19:48 | taint(...) : String | ObjectUtilsTest.java:19:10:19:49 | defaultIfNull(...) | provenance | MaD:254 | -| ObjectUtilsTest.java:20:10:20:54 | new ..[] { .. } : Object[] [[]] : String | ObjectUtilsTest.java:20:10:20:54 | firstNonNull(...) | provenance | MaD:255 | +| MutableTest.java:14:25:14:31 | taint(...) : String | MutableTest.java:14:7:14:14 | taintSet [post update] : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | provenance | MaD:26 | +| MutableTest.java:20:12:20:18 | tainted : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:20:12:20:29 | getValue(...) | provenance | MaD:25 | +| MutableTest.java:21:12:21:23 | taintedAlias : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:21:12:21:34 | getValue(...) | provenance | MaD:25 | +| MutableTest.java:22:12:22:19 | taintSet : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:22:12:22:30 | getValue(...) | provenance | MaD:25 | +| MutableTest.java:23:12:23:24 | taintSetAlias : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:23:12:23:35 | getValue(...) | provenance | MaD:25 | +| MutableTest.java:26:12:26:23 | taintCleared : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:26:12:26:34 | getValue(...) | provenance | MaD:25 | +| MutableTest.java:27:12:27:28 | taintClearedAlias : MutableObject [org.apache.commons.lang3.mutable.MutableObject.value] : String | MutableTest.java:27:12:27:39 | getValue(...) | provenance | MaD:25 | +| ObjectUtilsTest.java:13:28:13:34 | taint(...) : String | ObjectUtilsTest.java:13:10:13:35 | clone(...) | provenance | MaD:246 | +| ObjectUtilsTest.java:14:38:14:44 | taint(...) : String | ObjectUtilsTest.java:14:10:14:45 | cloneIfPossible(...) | provenance | MaD:247 | +| ObjectUtilsTest.java:15:28:15:34 | taint(...) : String | ObjectUtilsTest.java:15:10:15:35 | CONST(...) | provenance | MaD:243 | +| ObjectUtilsTest.java:16:34:16:50 | taint(...) : Number | ObjectUtilsTest.java:16:10:16:51 | CONST_SHORT(...) | provenance | MaD:245 | +| ObjectUtilsTest.java:17:33:17:49 | taint(...) : Number | ObjectUtilsTest.java:17:10:17:50 | CONST_BYTE(...) | provenance | MaD:244 | +| ObjectUtilsTest.java:18:36:18:42 | taint(...) : String | ObjectUtilsTest.java:18:10:18:49 | defaultIfNull(...) | provenance | MaD:248 | +| ObjectUtilsTest.java:19:42:19:48 | taint(...) : String | ObjectUtilsTest.java:19:10:19:49 | defaultIfNull(...) | provenance | MaD:248 | +| ObjectUtilsTest.java:20:10:20:54 | new ..[] { .. } : Object[] [[]] : String | ObjectUtilsTest.java:20:10:20:54 | firstNonNull(...) | provenance | MaD:249 | | ObjectUtilsTest.java:20:35:20:41 | taint(...) : String | ObjectUtilsTest.java:20:10:20:54 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| ObjectUtilsTest.java:21:10:21:54 | new ..[] { .. } : Object[] [[]] : String | ObjectUtilsTest.java:21:10:21:54 | firstNonNull(...) | provenance | MaD:255 | +| ObjectUtilsTest.java:21:10:21:54 | new ..[] { .. } : Object[] [[]] : String | ObjectUtilsTest.java:21:10:21:54 | firstNonNull(...) | provenance | MaD:249 | | ObjectUtilsTest.java:21:41:21:47 | taint(...) : String | ObjectUtilsTest.java:21:10:21:54 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| ObjectUtilsTest.java:22:10:22:54 | new ..[] { .. } : Object[] [[]] : String | ObjectUtilsTest.java:22:10:22:54 | firstNonNull(...) | provenance | MaD:255 | +| ObjectUtilsTest.java:22:10:22:54 | new ..[] { .. } : Object[] [[]] : String | ObjectUtilsTest.java:22:10:22:54 | firstNonNull(...) | provenance | MaD:249 | | ObjectUtilsTest.java:22:47:22:53 | taint(...) : String | ObjectUtilsTest.java:22:10:22:54 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| ObjectUtilsTest.java:23:32:23:38 | taint(...) : String | ObjectUtilsTest.java:23:10:23:45 | getIfNull(...) | provenance | MaD:256 | -| ObjectUtilsTest.java:24:10:24:45 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:24:10:24:45 | max(...) | provenance | MaD:257 | +| ObjectUtilsTest.java:23:32:23:38 | taint(...) : String | ObjectUtilsTest.java:23:10:23:45 | getIfNull(...) | provenance | MaD:250 | +| ObjectUtilsTest.java:24:10:24:45 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:24:10:24:45 | max(...) | provenance | MaD:251 | | ObjectUtilsTest.java:24:26:24:32 | taint(...) : String | ObjectUtilsTest.java:24:10:24:45 | new ..[] { .. } : Comparable[] [[]] : String | provenance | | -| ObjectUtilsTest.java:25:10:25:45 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:25:10:25:45 | max(...) | provenance | MaD:257 | +| ObjectUtilsTest.java:25:10:25:45 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:25:10:25:45 | max(...) | provenance | MaD:251 | | ObjectUtilsTest.java:25:32:25:38 | taint(...) : String | ObjectUtilsTest.java:25:10:25:45 | new ..[] { .. } : Comparable[] [[]] : String | provenance | | -| ObjectUtilsTest.java:26:10:26:45 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:26:10:26:45 | max(...) | provenance | MaD:257 | +| ObjectUtilsTest.java:26:10:26:45 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:26:10:26:45 | max(...) | provenance | MaD:251 | | ObjectUtilsTest.java:26:38:26:44 | taint(...) : String | ObjectUtilsTest.java:26:10:26:45 | new ..[] { .. } : Comparable[] [[]] : String | provenance | | -| ObjectUtilsTest.java:27:10:27:48 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:27:10:27:48 | median(...) | provenance | MaD:258 | +| ObjectUtilsTest.java:27:10:27:48 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:27:10:27:48 | median(...) | provenance | MaD:252 | | ObjectUtilsTest.java:27:29:27:35 | taint(...) : String | ObjectUtilsTest.java:27:10:27:48 | new ..[] { .. } : Comparable[] [[]] : String | provenance | | -| ObjectUtilsTest.java:28:10:28:56 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:28:10:28:56 | median(...) | provenance | MaD:258 | +| ObjectUtilsTest.java:28:10:28:56 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:28:10:28:56 | median(...) | provenance | MaD:252 | | ObjectUtilsTest.java:28:43:28:49 | taint(...) : String | ObjectUtilsTest.java:28:10:28:56 | new ..[] { .. } : Comparable[] [[]] : String | provenance | | -| ObjectUtilsTest.java:29:10:29:56 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:29:10:29:56 | median(...) | provenance | MaD:258 | +| ObjectUtilsTest.java:29:10:29:56 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:29:10:29:56 | median(...) | provenance | MaD:252 | | ObjectUtilsTest.java:29:49:29:55 | taint(...) : String | ObjectUtilsTest.java:29:10:29:56 | new ..[] { .. } : Comparable[] [[]] : String | provenance | | -| ObjectUtilsTest.java:30:10:30:45 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:30:10:30:45 | min(...) | provenance | MaD:259 | +| ObjectUtilsTest.java:30:10:30:45 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:30:10:30:45 | min(...) | provenance | MaD:253 | | ObjectUtilsTest.java:30:26:30:32 | taint(...) : String | ObjectUtilsTest.java:30:10:30:45 | new ..[] { .. } : Comparable[] [[]] : String | provenance | | -| ObjectUtilsTest.java:31:10:31:45 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:31:10:31:45 | min(...) | provenance | MaD:259 | +| ObjectUtilsTest.java:31:10:31:45 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:31:10:31:45 | min(...) | provenance | MaD:253 | | ObjectUtilsTest.java:31:32:31:38 | taint(...) : String | ObjectUtilsTest.java:31:10:31:45 | new ..[] { .. } : Comparable[] [[]] : String | provenance | | -| ObjectUtilsTest.java:32:10:32:45 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:32:10:32:45 | min(...) | provenance | MaD:259 | +| ObjectUtilsTest.java:32:10:32:45 | new ..[] { .. } : Comparable[] [[]] : String | ObjectUtilsTest.java:32:10:32:45 | min(...) | provenance | MaD:253 | | ObjectUtilsTest.java:32:38:32:44 | taint(...) : String | ObjectUtilsTest.java:32:10:32:45 | new ..[] { .. } : Comparable[] [[]] : String | provenance | | -| ObjectUtilsTest.java:33:10:33:46 | new ..[] { .. } : Object[] [[]] : String | ObjectUtilsTest.java:33:10:33:46 | mode(...) | provenance | MaD:260 | +| ObjectUtilsTest.java:33:10:33:46 | new ..[] { .. } : Object[] [[]] : String | ObjectUtilsTest.java:33:10:33:46 | mode(...) | provenance | MaD:254 | | ObjectUtilsTest.java:33:27:33:33 | taint(...) : String | ObjectUtilsTest.java:33:10:33:46 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| ObjectUtilsTest.java:34:10:34:46 | new ..[] { .. } : Object[] [[]] : String | ObjectUtilsTest.java:34:10:34:46 | mode(...) | provenance | MaD:260 | +| ObjectUtilsTest.java:34:10:34:46 | new ..[] { .. } : Object[] [[]] : String | ObjectUtilsTest.java:34:10:34:46 | mode(...) | provenance | MaD:254 | | ObjectUtilsTest.java:34:33:34:39 | taint(...) : String | ObjectUtilsTest.java:34:10:34:46 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| ObjectUtilsTest.java:35:10:35:46 | new ..[] { .. } : Object[] [[]] : String | ObjectUtilsTest.java:35:10:35:46 | mode(...) | provenance | MaD:260 | +| ObjectUtilsTest.java:35:10:35:46 | new ..[] { .. } : Object[] [[]] : String | ObjectUtilsTest.java:35:10:35:46 | mode(...) | provenance | MaD:254 | | ObjectUtilsTest.java:35:39:35:45 | taint(...) : String | ObjectUtilsTest.java:35:10:35:46 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| ObjectUtilsTest.java:36:38:36:44 | taint(...) : String | ObjectUtilsTest.java:36:10:36:56 | requireNonEmpty(...) | provenance | MaD:261 | -| ObjectUtilsTest.java:39:37:39:43 | taint(...) : String | ObjectUtilsTest.java:39:10:39:44 | toString(...) | provenance | MaD:262 | +| ObjectUtilsTest.java:36:38:36:44 | taint(...) : String | ObjectUtilsTest.java:36:10:36:56 | requireNonEmpty(...) | provenance | MaD:255 | +| ObjectUtilsTest.java:39:37:39:43 | taint(...) : String | ObjectUtilsTest.java:39:10:39:44 | toString(...) | provenance | MaD:256 | | PairTest.java:16:51:16:90 | of(...) : ImmutablePair [left] : String | PairTest.java:28:12:28:22 | taintedLeft : ImmutablePair [left] : String | provenance | | | PairTest.java:16:51:16:90 | of(...) : ImmutablePair [left] : String | PairTest.java:30:12:30:22 | taintedLeft : ImmutablePair [left] : String | provenance | | | PairTest.java:16:51:16:90 | of(...) : ImmutablePair [left] : String | PairTest.java:32:12:32:22 | taintedLeft : ImmutablePair [left] : String | provenance | | -| PairTest.java:16:68:16:74 | taint(...) : String | PairTest.java:16:51:16:90 | of(...) : ImmutablePair [left] : String | provenance | MaD:180 | +| PairTest.java:16:68:16:74 | taint(...) : String | PairTest.java:16:51:16:90 | of(...) : ImmutablePair [left] : String | provenance | MaD:174 | | PairTest.java:17:52:17:90 | of(...) : ImmutablePair [right] : String | PairTest.java:35:12:35:23 | taintedRight : ImmutablePair [right] : String | provenance | | | PairTest.java:17:52:17:90 | of(...) : ImmutablePair [right] : String | PairTest.java:37:12:37:23 | taintedRight : ImmutablePair [right] : String | provenance | | | PairTest.java:17:52:17:90 | of(...) : ImmutablePair [right] : String | PairTest.java:39:12:39:23 | taintedRight : ImmutablePair [right] : String | provenance | | -| PairTest.java:17:83:17:89 | taint(...) : String | PairTest.java:17:52:17:90 | of(...) : ImmutablePair [right] : String | provenance | MaD:181 | +| PairTest.java:17:83:17:89 | taint(...) : String | PairTest.java:17:52:17:90 | of(...) : ImmutablePair [right] : String | provenance | MaD:175 | | PairTest.java:18:44:18:70 | left(...) : Pair [left] : String | PairTest.java:19:52:19:79 | (...)... : ImmutablePair [left] : String | provenance | | | PairTest.java:18:44:18:70 | left(...) : Pair [left] : String | PairTest.java:74:12:74:24 | taintedLeft2_ : Pair [left] : String | provenance | | | PairTest.java:18:44:18:70 | left(...) : Pair [left] : String | PairTest.java:76:12:76:24 | taintedLeft2_ : Pair [left] : String | provenance | | -| PairTest.java:18:63:18:69 | taint(...) : String | PairTest.java:18:44:18:70 | left(...) : Pair [left] : String | provenance | MaD:179 | +| PairTest.java:18:63:18:69 | taint(...) : String | PairTest.java:18:44:18:70 | left(...) : Pair [left] : String | provenance | MaD:173 | | PairTest.java:19:52:19:79 | (...)... : ImmutablePair [left] : String | PairTest.java:40:12:40:23 | taintedLeft2 : ImmutablePair [left] : String | provenance | | | PairTest.java:19:52:19:79 | (...)... : ImmutablePair [left] : String | PairTest.java:42:12:42:23 | taintedLeft2 : ImmutablePair [left] : String | provenance | | | PairTest.java:19:52:19:79 | (...)... : ImmutablePair [left] : String | PairTest.java:44:12:44:23 | taintedLeft2 : ImmutablePair [left] : String | provenance | | | PairTest.java:20:45:20:72 | right(...) : Pair [right] : String | PairTest.java:21:53:21:81 | (...)... : ImmutablePair [right] : String | provenance | | | PairTest.java:20:45:20:72 | right(...) : Pair [right] : String | PairTest.java:79:12:79:25 | taintedRight2_ : Pair [right] : String | provenance | | | PairTest.java:20:45:20:72 | right(...) : Pair [right] : String | PairTest.java:81:12:81:25 | taintedRight2_ : Pair [right] : String | provenance | | -| PairTest.java:20:65:20:71 | taint(...) : String | PairTest.java:20:45:20:72 | right(...) : Pair [right] : String | provenance | MaD:182 | +| PairTest.java:20:65:20:71 | taint(...) : String | PairTest.java:20:45:20:72 | right(...) : Pair [right] : String | provenance | MaD:176 | | PairTest.java:21:53:21:81 | (...)... : ImmutablePair [right] : String | PairTest.java:47:12:47:24 | taintedRight2 : ImmutablePair [right] : String | provenance | | | PairTest.java:21:53:21:81 | (...)... : ImmutablePair [right] : String | PairTest.java:49:12:49:24 | taintedRight2 : ImmutablePair [right] : String | provenance | | | PairTest.java:21:53:21:81 | (...)... : ImmutablePair [right] : String | PairTest.java:51:12:51:24 | taintedRight2 : ImmutablePair [right] : String | provenance | | | PairTest.java:22:43:22:73 | of(...) : Pair [left] : String | PairTest.java:52:12:52:23 | taintedLeft3 : Pair [left] : String | provenance | | | PairTest.java:22:43:22:73 | of(...) : Pair [left] : String | PairTest.java:54:12:54:23 | taintedLeft3 : Pair [left] : String | provenance | | -| PairTest.java:22:51:22:57 | taint(...) : String | PairTest.java:22:43:22:73 | of(...) : Pair [left] : String | provenance | MaD:205 | +| PairTest.java:22:51:22:57 | taint(...) : String | PairTest.java:22:43:22:73 | of(...) : Pair [left] : String | provenance | MaD:199 | | PairTest.java:23:44:23:73 | of(...) : Pair [right] : String | PairTest.java:57:12:57:24 | taintedRight3 : Pair [right] : String | provenance | | | PairTest.java:23:44:23:73 | of(...) : Pair [right] : String | PairTest.java:59:12:59:24 | taintedRight3 : Pair [right] : String | provenance | | -| PairTest.java:23:66:23:72 | taint(...) : String | PairTest.java:23:44:23:73 | of(...) : Pair [right] : String | provenance | MaD:206 | +| PairTest.java:23:66:23:72 | taint(...) : String | PairTest.java:23:44:23:73 | of(...) : Pair [right] : String | provenance | MaD:200 | | PairTest.java:24:52:24:92 | new ImmutablePair<>(...) : ImmutablePair [left] : String | PairTest.java:60:12:60:23 | taintedLeft4 : ImmutablePair [left] : String | provenance | | | PairTest.java:24:52:24:92 | new ImmutablePair<>(...) : ImmutablePair [left] : String | PairTest.java:62:12:62:23 | taintedLeft4 : ImmutablePair [left] : String | provenance | | | PairTest.java:24:52:24:92 | new ImmutablePair<>(...) : ImmutablePair [left] : String | PairTest.java:64:12:64:23 | taintedLeft4 : ImmutablePair [left] : String | provenance | | -| PairTest.java:24:70:24:76 | taint(...) : String | PairTest.java:24:52:24:92 | new ImmutablePair<>(...) : ImmutablePair [left] : String | provenance | MaD:177 | +| PairTest.java:24:70:24:76 | taint(...) : String | PairTest.java:24:52:24:92 | new ImmutablePair<>(...) : ImmutablePair [left] : String | provenance | MaD:171 | | PairTest.java:25:53:25:92 | new ImmutablePair<>(...) : ImmutablePair [right] : String | PairTest.java:67:12:67:24 | taintedRight4 : ImmutablePair [right] : String | provenance | | | PairTest.java:25:53:25:92 | new ImmutablePair<>(...) : ImmutablePair [right] : String | PairTest.java:69:12:69:24 | taintedRight4 : ImmutablePair [right] : String | provenance | | | PairTest.java:25:53:25:92 | new ImmutablePair<>(...) : ImmutablePair [right] : String | PairTest.java:71:12:71:24 | taintedRight4 : ImmutablePair [right] : String | provenance | | -| PairTest.java:25:85:25:91 | taint(...) : String | PairTest.java:25:53:25:92 | new ImmutablePair<>(...) : ImmutablePair [right] : String | provenance | MaD:178 | -| PairTest.java:28:12:28:22 | taintedLeft : ImmutablePair [left] : String | PairTest.java:28:12:28:32 | getLeft(...) | provenance | MaD:209 | -| PairTest.java:30:12:30:22 | taintedLeft : ImmutablePair [left] : String | PairTest.java:30:12:30:31 | getKey(...) | provenance | MaD:207 | +| PairTest.java:25:85:25:91 | taint(...) : String | PairTest.java:25:53:25:92 | new ImmutablePair<>(...) : ImmutablePair [right] : String | provenance | MaD:172 | +| PairTest.java:28:12:28:22 | taintedLeft : ImmutablePair [left] : String | PairTest.java:28:12:28:32 | getLeft(...) | provenance | MaD:203 | +| PairTest.java:30:12:30:22 | taintedLeft : ImmutablePair [left] : String | PairTest.java:30:12:30:31 | getKey(...) | provenance | MaD:201 | | PairTest.java:32:12:32:22 | taintedLeft : ImmutablePair [left] : String | PairTest.java:32:12:32:27 | taintedLeft.left | provenance | | -| PairTest.java:35:12:35:23 | taintedRight : ImmutablePair [right] : String | PairTest.java:35:12:35:34 | getRight(...) | provenance | MaD:211 | -| PairTest.java:37:12:37:23 | taintedRight : ImmutablePair [right] : String | PairTest.java:37:12:37:34 | getValue(...) | provenance | MaD:213 | +| PairTest.java:35:12:35:23 | taintedRight : ImmutablePair [right] : String | PairTest.java:35:12:35:34 | getRight(...) | provenance | MaD:205 | +| PairTest.java:37:12:37:23 | taintedRight : ImmutablePair [right] : String | PairTest.java:37:12:37:34 | getValue(...) | provenance | MaD:207 | | PairTest.java:39:12:39:23 | taintedRight : ImmutablePair [right] : String | PairTest.java:39:12:39:29 | taintedRight.right | provenance | | -| PairTest.java:40:12:40:23 | taintedLeft2 : ImmutablePair [left] : String | PairTest.java:40:12:40:33 | getLeft(...) | provenance | MaD:209 | -| PairTest.java:42:12:42:23 | taintedLeft2 : ImmutablePair [left] : String | PairTest.java:42:12:42:32 | getKey(...) | provenance | MaD:207 | +| PairTest.java:40:12:40:23 | taintedLeft2 : ImmutablePair [left] : String | PairTest.java:40:12:40:33 | getLeft(...) | provenance | MaD:203 | +| PairTest.java:42:12:42:23 | taintedLeft2 : ImmutablePair [left] : String | PairTest.java:42:12:42:32 | getKey(...) | provenance | MaD:201 | | PairTest.java:44:12:44:23 | taintedLeft2 : ImmutablePair [left] : String | PairTest.java:44:12:44:28 | taintedLeft2.left | provenance | | -| PairTest.java:47:12:47:24 | taintedRight2 : ImmutablePair [right] : String | PairTest.java:47:12:47:35 | getRight(...) | provenance | MaD:211 | -| PairTest.java:49:12:49:24 | taintedRight2 : ImmutablePair [right] : String | PairTest.java:49:12:49:35 | getValue(...) | provenance | MaD:213 | +| PairTest.java:47:12:47:24 | taintedRight2 : ImmutablePair [right] : String | PairTest.java:47:12:47:35 | getRight(...) | provenance | MaD:205 | +| PairTest.java:49:12:49:24 | taintedRight2 : ImmutablePair [right] : String | PairTest.java:49:12:49:35 | getValue(...) | provenance | MaD:207 | | PairTest.java:51:12:51:24 | taintedRight2 : ImmutablePair [right] : String | PairTest.java:51:12:51:30 | taintedRight2.right | provenance | | -| PairTest.java:52:12:52:23 | taintedLeft3 : Pair [left] : String | PairTest.java:52:12:52:33 | getLeft(...) | provenance | MaD:209 | -| PairTest.java:54:12:54:23 | taintedLeft3 : Pair [left] : String | PairTest.java:54:12:54:32 | getKey(...) | provenance | MaD:207 | -| PairTest.java:57:12:57:24 | taintedRight3 : Pair [right] : String | PairTest.java:57:12:57:35 | getRight(...) | provenance | MaD:211 | -| PairTest.java:59:12:59:24 | taintedRight3 : Pair [right] : String | PairTest.java:59:12:59:35 | getValue(...) | provenance | MaD:213 | -| PairTest.java:60:12:60:23 | taintedLeft4 : ImmutablePair [left] : String | PairTest.java:60:12:60:33 | getLeft(...) | provenance | MaD:209 | -| PairTest.java:62:12:62:23 | taintedLeft4 : ImmutablePair [left] : String | PairTest.java:62:12:62:32 | getKey(...) | provenance | MaD:207 | +| PairTest.java:52:12:52:23 | taintedLeft3 : Pair [left] : String | PairTest.java:52:12:52:33 | getLeft(...) | provenance | MaD:203 | +| PairTest.java:54:12:54:23 | taintedLeft3 : Pair [left] : String | PairTest.java:54:12:54:32 | getKey(...) | provenance | MaD:201 | +| PairTest.java:57:12:57:24 | taintedRight3 : Pair [right] : String | PairTest.java:57:12:57:35 | getRight(...) | provenance | MaD:205 | +| PairTest.java:59:12:59:24 | taintedRight3 : Pair [right] : String | PairTest.java:59:12:59:35 | getValue(...) | provenance | MaD:207 | +| PairTest.java:60:12:60:23 | taintedLeft4 : ImmutablePair [left] : String | PairTest.java:60:12:60:33 | getLeft(...) | provenance | MaD:203 | +| PairTest.java:62:12:62:23 | taintedLeft4 : ImmutablePair [left] : String | PairTest.java:62:12:62:32 | getKey(...) | provenance | MaD:201 | | PairTest.java:64:12:64:23 | taintedLeft4 : ImmutablePair [left] : String | PairTest.java:64:12:64:28 | taintedLeft4.left | provenance | | -| PairTest.java:67:12:67:24 | taintedRight4 : ImmutablePair [right] : String | PairTest.java:67:12:67:35 | getRight(...) | provenance | MaD:211 | -| PairTest.java:69:12:69:24 | taintedRight4 : ImmutablePair [right] : String | PairTest.java:69:12:69:35 | getValue(...) | provenance | MaD:213 | +| PairTest.java:67:12:67:24 | taintedRight4 : ImmutablePair [right] : String | PairTest.java:67:12:67:35 | getRight(...) | provenance | MaD:205 | +| PairTest.java:69:12:69:24 | taintedRight4 : ImmutablePair [right] : String | PairTest.java:69:12:69:35 | getValue(...) | provenance | MaD:207 | | PairTest.java:71:12:71:24 | taintedRight4 : ImmutablePair [right] : String | PairTest.java:71:12:71:30 | taintedRight4.right | provenance | | -| PairTest.java:74:12:74:24 | taintedLeft2_ : Pair [left] : String | PairTest.java:74:12:74:34 | getLeft(...) | provenance | MaD:209 | -| PairTest.java:76:12:76:24 | taintedLeft2_ : Pair [left] : String | PairTest.java:76:12:76:33 | getKey(...) | provenance | MaD:207 | -| PairTest.java:79:12:79:25 | taintedRight2_ : Pair [right] : String | PairTest.java:79:12:79:36 | getRight(...) | provenance | MaD:211 | -| PairTest.java:81:12:81:25 | taintedRight2_ : Pair [right] : String | PairTest.java:81:12:81:36 | getValue(...) | provenance | MaD:213 | +| PairTest.java:74:12:74:24 | taintedLeft2_ : Pair [left] : String | PairTest.java:74:12:74:34 | getLeft(...) | provenance | MaD:203 | +| PairTest.java:76:12:76:24 | taintedLeft2_ : Pair [left] : String | PairTest.java:76:12:76:33 | getKey(...) | provenance | MaD:201 | +| PairTest.java:79:12:79:25 | taintedRight2_ : Pair [right] : String | PairTest.java:79:12:79:36 | getRight(...) | provenance | MaD:205 | +| PairTest.java:81:12:81:25 | taintedRight2_ : Pair [right] : String | PairTest.java:81:12:81:36 | getValue(...) | provenance | MaD:207 | | PairTest.java:84:56:84:93 | of(...) : MutablePair [left] : String | PairTest.java:95:12:95:29 | taintedLeftMutable : MutablePair [left] : String | provenance | | | PairTest.java:84:56:84:93 | of(...) : MutablePair [left] : String | PairTest.java:97:12:97:29 | taintedLeftMutable : MutablePair [left] : String | provenance | | | PairTest.java:84:56:84:93 | of(...) : MutablePair [left] : String | PairTest.java:99:12:99:29 | taintedLeftMutable : MutablePair [left] : String | provenance | | | PairTest.java:84:56:84:93 | of(...) : MutablePair [left] : String | PairTest.java:141:12:141:34 | taintedLeftMutableAlias : MutablePair [left] : String | provenance | | | PairTest.java:84:56:84:93 | of(...) : MutablePair [left] : String | PairTest.java:143:12:143:34 | taintedLeftMutableAlias : MutablePair [left] : String | provenance | | -| PairTest.java:84:71:84:77 | taint(...) : String | PairTest.java:84:56:84:93 | of(...) : MutablePair [left] : String | provenance | MaD:191 | +| PairTest.java:84:71:84:77 | taint(...) : String | PairTest.java:84:56:84:93 | of(...) : MutablePair [left] : String | provenance | MaD:185 | | PairTest.java:85:57:85:93 | of(...) : MutablePair [right] : String | PairTest.java:102:12:102:30 | taintedRightMutable : MutablePair [right] : String | provenance | | | PairTest.java:85:57:85:93 | of(...) : MutablePair [right] : String | PairTest.java:104:12:104:30 | taintedRightMutable : MutablePair [right] : String | provenance | | | PairTest.java:85:57:85:93 | of(...) : MutablePair [right] : String | PairTest.java:106:12:106:30 | taintedRightMutable : MutablePair [right] : String | provenance | | | PairTest.java:85:57:85:93 | of(...) : MutablePair [right] : String | PairTest.java:146:12:146:35 | taintedRightMutableAlias : MutablePair [right] : String | provenance | | | PairTest.java:85:57:85:93 | of(...) : MutablePair [right] : String | PairTest.java:148:12:148:35 | taintedRightMutableAlias : MutablePair [right] : String | provenance | | -| PairTest.java:85:86:85:92 | taint(...) : String | PairTest.java:85:57:85:93 | of(...) : MutablePair [right] : String | provenance | MaD:192 | +| PairTest.java:85:86:85:92 | taint(...) : String | PairTest.java:85:57:85:93 | of(...) : MutablePair [right] : String | provenance | MaD:186 | | PairTest.java:87:7:87:18 | setTaintLeft [post update] : MutablePair [left] : String | PairTest.java:107:12:107:23 | setTaintLeft : MutablePair [left] : String | provenance | | | PairTest.java:87:7:87:18 | setTaintLeft [post update] : MutablePair [left] : String | PairTest.java:109:12:109:23 | setTaintLeft : MutablePair [left] : String | provenance | | | PairTest.java:87:7:87:18 | setTaintLeft [post update] : MutablePair [left] : String | PairTest.java:111:12:111:23 | setTaintLeft : MutablePair [left] : String | provenance | | -| PairTest.java:87:28:87:34 | taint(...) : String | PairTest.java:87:7:87:18 | setTaintLeft [post update] : MutablePair [left] : String | provenance | MaD:193 | +| PairTest.java:87:28:87:34 | taint(...) : String | PairTest.java:87:7:87:18 | setTaintLeft [post update] : MutablePair [left] : String | provenance | MaD:187 | | PairTest.java:89:7:89:19 | setTaintRight [post update] : MutablePair [right] : String | PairTest.java:114:12:114:24 | setTaintRight : MutablePair [right] : String | provenance | | | PairTest.java:89:7:89:19 | setTaintRight [post update] : MutablePair [right] : String | PairTest.java:116:12:116:24 | setTaintRight : MutablePair [right] : String | provenance | | | PairTest.java:89:7:89:19 | setTaintRight [post update] : MutablePair [right] : String | PairTest.java:118:12:118:24 | setTaintRight : MutablePair [right] : String | provenance | | -| PairTest.java:89:30:89:36 | taint(...) : String | PairTest.java:89:7:89:19 | setTaintRight [post update] : MutablePair [right] : String | provenance | MaD:194 | -| PairTest.java:91:7:91:19 | setTaintValue [post update] : MutablePair [] : String | PairTest.java:122:12:122:24 | setTaintValue : MutablePair [] : String | provenance | | +| PairTest.java:89:30:89:36 | taint(...) : String | PairTest.java:89:7:89:19 | setTaintRight [post update] : MutablePair [right] : String | provenance | MaD:188 | | PairTest.java:91:7:91:19 | setTaintValue [post update] : MutablePair [right] : String | PairTest.java:120:12:120:24 | setTaintValue : MutablePair [right] : String | provenance | | | PairTest.java:91:7:91:19 | setTaintValue [post update] : MutablePair [right] : String | PairTest.java:122:12:122:24 | setTaintValue : MutablePair [right] : String | provenance | | | PairTest.java:91:7:91:19 | setTaintValue [post update] : MutablePair [right] : String | PairTest.java:124:12:124:24 | setTaintValue : MutablePair [right] : String | provenance | | -| PairTest.java:91:30:91:36 | taint(...) : String | PairTest.java:91:7:91:19 | setTaintValue [post update] : MutablePair [] : String | provenance | MaD:16 | -| PairTest.java:91:30:91:36 | taint(...) : String | PairTest.java:91:7:91:19 | setTaintValue [post update] : MutablePair [right] : String | provenance | MaD:195 | +| PairTest.java:91:30:91:36 | taint(...) : String | PairTest.java:91:7:91:19 | setTaintValue [post update] : MutablePair [right] : String | provenance | MaD:189 | | PairTest.java:92:67:92:105 | new MutablePair<>(...) : MutablePair [left] : String | PairTest.java:125:12:125:40 | taintedLeftMutableConstructed : MutablePair [left] : String | provenance | | | PairTest.java:92:67:92:105 | new MutablePair<>(...) : MutablePair [left] : String | PairTest.java:127:12:127:40 | taintedLeftMutableConstructed : MutablePair [left] : String | provenance | | | PairTest.java:92:67:92:105 | new MutablePair<>(...) : MutablePair [left] : String | PairTest.java:129:12:129:40 | taintedLeftMutableConstructed : MutablePair [left] : String | provenance | | -| PairTest.java:92:83:92:89 | taint(...) : String | PairTest.java:92:67:92:105 | new MutablePair<>(...) : MutablePair [left] : String | provenance | MaD:189 | +| PairTest.java:92:83:92:89 | taint(...) : String | PairTest.java:92:67:92:105 | new MutablePair<>(...) : MutablePair [left] : String | provenance | MaD:183 | | PairTest.java:93:68:93:105 | new MutablePair<>(...) : MutablePair [right] : String | PairTest.java:132:12:132:41 | taintedRightMutableConstructed : MutablePair [right] : String | provenance | | | PairTest.java:93:68:93:105 | new MutablePair<>(...) : MutablePair [right] : String | PairTest.java:134:12:134:41 | taintedRightMutableConstructed : MutablePair [right] : String | provenance | | | PairTest.java:93:68:93:105 | new MutablePair<>(...) : MutablePair [right] : String | PairTest.java:136:12:136:41 | taintedRightMutableConstructed : MutablePair [right] : String | provenance | | -| PairTest.java:93:98:93:104 | taint(...) : String | PairTest.java:93:68:93:105 | new MutablePair<>(...) : MutablePair [right] : String | provenance | MaD:190 | -| PairTest.java:95:12:95:29 | taintedLeftMutable : MutablePair [left] : String | PairTest.java:95:12:95:39 | getLeft(...) | provenance | MaD:210 | -| PairTest.java:97:12:97:29 | taintedLeftMutable : MutablePair [left] : String | PairTest.java:97:12:97:38 | getKey(...) | provenance | MaD:208 | +| PairTest.java:93:98:93:104 | taint(...) : String | PairTest.java:93:68:93:105 | new MutablePair<>(...) : MutablePair [right] : String | provenance | MaD:184 | +| PairTest.java:95:12:95:29 | taintedLeftMutable : MutablePair [left] : String | PairTest.java:95:12:95:39 | getLeft(...) | provenance | MaD:204 | +| PairTest.java:97:12:97:29 | taintedLeftMutable : MutablePair [left] : String | PairTest.java:97:12:97:38 | getKey(...) | provenance | MaD:202 | | PairTest.java:99:12:99:29 | taintedLeftMutable : MutablePair [left] : String | PairTest.java:99:12:99:34 | taintedLeftMutable.left | provenance | | -| PairTest.java:102:12:102:30 | taintedRightMutable : MutablePair [right] : String | PairTest.java:102:12:102:41 | getRight(...) | provenance | MaD:212 | -| PairTest.java:104:12:104:30 | taintedRightMutable : MutablePair [right] : String | PairTest.java:104:12:104:41 | getValue(...) | provenance | MaD:214 | +| PairTest.java:102:12:102:30 | taintedRightMutable : MutablePair [right] : String | PairTest.java:102:12:102:41 | getRight(...) | provenance | MaD:206 | +| PairTest.java:104:12:104:30 | taintedRightMutable : MutablePair [right] : String | PairTest.java:104:12:104:41 | getValue(...) | provenance | MaD:208 | | PairTest.java:106:12:106:30 | taintedRightMutable : MutablePair [right] : String | PairTest.java:106:12:106:36 | taintedRightMutable.right | provenance | | -| PairTest.java:107:12:107:23 | setTaintLeft : MutablePair [left] : String | PairTest.java:107:12:107:33 | getLeft(...) | provenance | MaD:210 | -| PairTest.java:109:12:109:23 | setTaintLeft : MutablePair [left] : String | PairTest.java:109:12:109:32 | getKey(...) | provenance | MaD:208 | +| PairTest.java:107:12:107:23 | setTaintLeft : MutablePair [left] : String | PairTest.java:107:12:107:33 | getLeft(...) | provenance | MaD:204 | +| PairTest.java:109:12:109:23 | setTaintLeft : MutablePair [left] : String | PairTest.java:109:12:109:32 | getKey(...) | provenance | MaD:202 | | PairTest.java:111:12:111:23 | setTaintLeft : MutablePair [left] : String | PairTest.java:111:12:111:28 | setTaintLeft.left | provenance | | -| PairTest.java:114:12:114:24 | setTaintRight : MutablePair [right] : String | PairTest.java:114:12:114:35 | getRight(...) | provenance | MaD:212 | -| PairTest.java:116:12:116:24 | setTaintRight : MutablePair [right] : String | PairTest.java:116:12:116:35 | getValue(...) | provenance | MaD:214 | +| PairTest.java:114:12:114:24 | setTaintRight : MutablePair [right] : String | PairTest.java:114:12:114:35 | getRight(...) | provenance | MaD:206 | +| PairTest.java:116:12:116:24 | setTaintRight : MutablePair [right] : String | PairTest.java:116:12:116:35 | getValue(...) | provenance | MaD:208 | | PairTest.java:118:12:118:24 | setTaintRight : MutablePair [right] : String | PairTest.java:118:12:118:30 | setTaintRight.right | provenance | | -| PairTest.java:120:12:120:24 | setTaintValue : MutablePair [right] : String | PairTest.java:120:12:120:35 | getRight(...) | provenance | MaD:212 | -| PairTest.java:122:12:122:24 | setTaintValue : MutablePair [] : String | PairTest.java:122:12:122:35 | getValue(...) | provenance | MaD:15 | -| PairTest.java:122:12:122:24 | setTaintValue : MutablePair [right] : String | PairTest.java:122:12:122:35 | getValue(...) | provenance | MaD:214 | +| PairTest.java:120:12:120:24 | setTaintValue : MutablePair [right] : String | PairTest.java:120:12:120:35 | getRight(...) | provenance | MaD:206 | +| PairTest.java:122:12:122:24 | setTaintValue : MutablePair [right] : String | PairTest.java:122:12:122:35 | getValue(...) | provenance | MaD:208 | | PairTest.java:124:12:124:24 | setTaintValue : MutablePair [right] : String | PairTest.java:124:12:124:30 | setTaintValue.right | provenance | | -| PairTest.java:125:12:125:40 | taintedLeftMutableConstructed : MutablePair [left] : String | PairTest.java:125:12:125:50 | getLeft(...) | provenance | MaD:210 | -| PairTest.java:127:12:127:40 | taintedLeftMutableConstructed : MutablePair [left] : String | PairTest.java:127:12:127:49 | getKey(...) | provenance | MaD:208 | +| PairTest.java:125:12:125:40 | taintedLeftMutableConstructed : MutablePair [left] : String | PairTest.java:125:12:125:50 | getLeft(...) | provenance | MaD:204 | +| PairTest.java:127:12:127:40 | taintedLeftMutableConstructed : MutablePair [left] : String | PairTest.java:127:12:127:49 | getKey(...) | provenance | MaD:202 | | PairTest.java:129:12:129:40 | taintedLeftMutableConstructed : MutablePair [left] : String | PairTest.java:129:12:129:45 | taintedLeftMutableConstructed.left | provenance | | -| PairTest.java:132:12:132:41 | taintedRightMutableConstructed : MutablePair [right] : String | PairTest.java:132:12:132:52 | getRight(...) | provenance | MaD:212 | -| PairTest.java:134:12:134:41 | taintedRightMutableConstructed : MutablePair [right] : String | PairTest.java:134:12:134:52 | getValue(...) | provenance | MaD:214 | +| PairTest.java:132:12:132:41 | taintedRightMutableConstructed : MutablePair [right] : String | PairTest.java:132:12:132:52 | getRight(...) | provenance | MaD:206 | +| PairTest.java:134:12:134:41 | taintedRightMutableConstructed : MutablePair [right] : String | PairTest.java:134:12:134:52 | getValue(...) | provenance | MaD:208 | | PairTest.java:136:12:136:41 | taintedRightMutableConstructed : MutablePair [right] : String | PairTest.java:136:12:136:47 | taintedRightMutableConstructed.right | provenance | | -| PairTest.java:141:12:141:34 | taintedLeftMutableAlias : MutablePair [left] : String | PairTest.java:141:12:141:44 | getLeft(...) | provenance | MaD:210 | -| PairTest.java:143:12:143:34 | taintedLeftMutableAlias : MutablePair [left] : String | PairTest.java:143:12:143:43 | getKey(...) | provenance | MaD:208 | -| PairTest.java:146:12:146:35 | taintedRightMutableAlias : MutablePair [right] : String | PairTest.java:146:12:146:46 | getRight(...) | provenance | MaD:212 | -| PairTest.java:148:12:148:35 | taintedRightMutableAlias : MutablePair [right] : String | PairTest.java:148:12:148:46 | getValue(...) | provenance | MaD:214 | -| RegExUtilsTest.java:13:31:13:37 | taint(...) : String | RegExUtilsTest.java:13:10:13:52 | removeAll(...) | provenance | MaD:263 | -| RegExUtilsTest.java:14:31:14:37 | taint(...) : String | RegExUtilsTest.java:14:10:14:47 | removeAll(...) | provenance | MaD:263 | -| RegExUtilsTest.java:15:33:15:39 | taint(...) : String | RegExUtilsTest.java:15:10:15:54 | removeFirst(...) | provenance | MaD:264 | -| RegExUtilsTest.java:16:33:16:39 | taint(...) : String | RegExUtilsTest.java:16:10:16:49 | removeFirst(...) | provenance | MaD:264 | -| RegExUtilsTest.java:17:35:17:41 | taint(...) : String | RegExUtilsTest.java:17:10:17:51 | removePattern(...) | provenance | MaD:265 | -| RegExUtilsTest.java:18:32:18:38 | taint(...) : String | RegExUtilsTest.java:18:10:18:68 | replaceAll(...) | provenance | MaD:266 | -| RegExUtilsTest.java:19:32:19:38 | taint(...) : String | RegExUtilsTest.java:19:10:19:63 | replaceAll(...) | provenance | MaD:266 | -| RegExUtilsTest.java:20:34:20:40 | taint(...) : String | RegExUtilsTest.java:20:10:20:70 | replaceFirst(...) | provenance | MaD:268 | -| RegExUtilsTest.java:21:34:21:40 | taint(...) : String | RegExUtilsTest.java:21:10:21:65 | replaceFirst(...) | provenance | MaD:268 | -| RegExUtilsTest.java:22:36:22:42 | taint(...) : String | RegExUtilsTest.java:22:10:22:67 | replacePattern(...) | provenance | MaD:270 | -| RegExUtilsTest.java:23:58:23:64 | taint(...) : String | RegExUtilsTest.java:23:10:23:65 | replaceAll(...) | provenance | MaD:267 | -| RegExUtilsTest.java:24:53:24:59 | taint(...) : String | RegExUtilsTest.java:24:10:24:60 | replaceAll(...) | provenance | MaD:267 | -| RegExUtilsTest.java:25:60:25:66 | taint(...) : String | RegExUtilsTest.java:25:10:25:67 | replaceFirst(...) | provenance | MaD:269 | -| RegExUtilsTest.java:26:55:26:61 | taint(...) : String | RegExUtilsTest.java:26:10:26:62 | replaceFirst(...) | provenance | MaD:269 | -| RegExUtilsTest.java:27:57:27:63 | taint(...) : String | RegExUtilsTest.java:27:10:27:64 | replacePattern(...) | provenance | MaD:271 | +| PairTest.java:141:12:141:34 | taintedLeftMutableAlias : MutablePair [left] : String | PairTest.java:141:12:141:44 | getLeft(...) | provenance | MaD:204 | +| PairTest.java:143:12:143:34 | taintedLeftMutableAlias : MutablePair [left] : String | PairTest.java:143:12:143:43 | getKey(...) | provenance | MaD:202 | +| PairTest.java:146:12:146:35 | taintedRightMutableAlias : MutablePair [right] : String | PairTest.java:146:12:146:46 | getRight(...) | provenance | MaD:206 | +| PairTest.java:148:12:148:35 | taintedRightMutableAlias : MutablePair [right] : String | PairTest.java:148:12:148:46 | getValue(...) | provenance | MaD:208 | +| RegExUtilsTest.java:13:31:13:37 | taint(...) : String | RegExUtilsTest.java:13:10:13:52 | removeAll(...) | provenance | MaD:257 | +| RegExUtilsTest.java:14:31:14:37 | taint(...) : String | RegExUtilsTest.java:14:10:14:47 | removeAll(...) | provenance | MaD:257 | +| RegExUtilsTest.java:15:33:15:39 | taint(...) : String | RegExUtilsTest.java:15:10:15:54 | removeFirst(...) | provenance | MaD:258 | +| RegExUtilsTest.java:16:33:16:39 | taint(...) : String | RegExUtilsTest.java:16:10:16:49 | removeFirst(...) | provenance | MaD:258 | +| RegExUtilsTest.java:17:35:17:41 | taint(...) : String | RegExUtilsTest.java:17:10:17:51 | removePattern(...) | provenance | MaD:259 | +| RegExUtilsTest.java:18:32:18:38 | taint(...) : String | RegExUtilsTest.java:18:10:18:68 | replaceAll(...) | provenance | MaD:260 | +| RegExUtilsTest.java:19:32:19:38 | taint(...) : String | RegExUtilsTest.java:19:10:19:63 | replaceAll(...) | provenance | MaD:260 | +| RegExUtilsTest.java:20:34:20:40 | taint(...) : String | RegExUtilsTest.java:20:10:20:70 | replaceFirst(...) | provenance | MaD:262 | +| RegExUtilsTest.java:21:34:21:40 | taint(...) : String | RegExUtilsTest.java:21:10:21:65 | replaceFirst(...) | provenance | MaD:262 | +| RegExUtilsTest.java:22:36:22:42 | taint(...) : String | RegExUtilsTest.java:22:10:22:67 | replacePattern(...) | provenance | MaD:264 | +| RegExUtilsTest.java:23:58:23:64 | taint(...) : String | RegExUtilsTest.java:23:10:23:65 | replaceAll(...) | provenance | MaD:261 | +| RegExUtilsTest.java:24:53:24:59 | taint(...) : String | RegExUtilsTest.java:24:10:24:60 | replaceAll(...) | provenance | MaD:261 | +| RegExUtilsTest.java:25:60:25:66 | taint(...) : String | RegExUtilsTest.java:25:10:25:67 | replaceFirst(...) | provenance | MaD:263 | +| RegExUtilsTest.java:26:55:26:61 | taint(...) : String | RegExUtilsTest.java:26:10:26:62 | replaceFirst(...) | provenance | MaD:263 | +| RegExUtilsTest.java:27:57:27:63 | taint(...) : String | RegExUtilsTest.java:27:10:27:64 | replacePattern(...) | provenance | MaD:265 | | StrBuilderTest.java:17:28:17:50 | new StrBuilder(...) : StrBuilder | StrBuilderTest.java:17:58:17:62 | cons1 : StrBuilder | provenance | | -| StrBuilderTest.java:17:43:17:49 | taint(...) : String | StrBuilderTest.java:17:28:17:50 | new StrBuilder(...) : StrBuilder | provenance | MaD:34 | -| StrBuilderTest.java:17:58:17:62 | cons1 : StrBuilder | StrBuilderTest.java:17:58:17:73 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:17:58:17:62 | cons1 : StrBuilder | StrBuilderTest.java:17:58:17:73 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:17:43:17:49 | taint(...) : String | StrBuilderTest.java:17:28:17:50 | new StrBuilder(...) : StrBuilder | provenance | MaD:28 | +| StrBuilderTest.java:17:58:17:62 | cons1 : StrBuilder | StrBuilderTest.java:17:58:17:73 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:19:44:19:46 | sb1 [post update] : StrBuilder | StrBuilderTest.java:19:84:19:86 | sb1 : StrBuilder | provenance | | -| StrBuilderTest.java:19:55:19:61 | taint(...) : String | StrBuilderTest.java:19:55:19:75 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTest.java:19:55:19:75 | toCharArray(...) : char[] | StrBuilderTest.java:19:44:19:46 | sb1 [post update] : StrBuilder | provenance | MaD:35 | -| StrBuilderTest.java:19:84:19:86 | sb1 : StrBuilder | StrBuilderTest.java:19:84:19:97 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:19:84:19:86 | sb1 : StrBuilder | StrBuilderTest.java:19:84:19:97 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:19:55:19:61 | taint(...) : String | StrBuilderTest.java:19:55:19:75 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTest.java:19:55:19:75 | toCharArray(...) : char[] | StrBuilderTest.java:19:44:19:46 | sb1 [post update] : StrBuilder | provenance | MaD:29 | +| StrBuilderTest.java:19:84:19:86 | sb1 : StrBuilder | StrBuilderTest.java:19:84:19:97 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:20:44:20:46 | sb2 [post update] : StrBuilder | StrBuilderTest.java:20:90:20:92 | sb2 : StrBuilder | provenance | | -| StrBuilderTest.java:20:55:20:61 | taint(...) : String | StrBuilderTest.java:20:55:20:75 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTest.java:20:55:20:75 | toCharArray(...) : char[] | StrBuilderTest.java:20:44:20:46 | sb2 [post update] : StrBuilder | provenance | MaD:36 | -| StrBuilderTest.java:20:90:20:92 | sb2 : StrBuilder | StrBuilderTest.java:20:90:20:103 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:20:90:20:92 | sb2 : StrBuilder | StrBuilderTest.java:20:90:20:103 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:20:55:20:61 | taint(...) : String | StrBuilderTest.java:20:55:20:75 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTest.java:20:55:20:75 | toCharArray(...) : char[] | StrBuilderTest.java:20:44:20:46 | sb2 [post update] : StrBuilder | provenance | MaD:30 | +| StrBuilderTest.java:20:90:20:92 | sb2 : StrBuilder | StrBuilderTest.java:20:90:20:103 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:21:44:21:46 | sb3 [post update] : StrBuilder | StrBuilderTest.java:21:101:21:103 | sb3 : StrBuilder | provenance | | -| StrBuilderTest.java:21:55:21:92 | wrap(...) : CharBuffer | StrBuilderTest.java:21:44:21:46 | sb3 [post update] : StrBuilder | provenance | MaD:48 | -| StrBuilderTest.java:21:71:21:77 | taint(...) : String | StrBuilderTest.java:21:71:21:91 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTest.java:21:71:21:91 | toCharArray(...) : char[] | StrBuilderTest.java:21:55:21:92 | wrap(...) : CharBuffer | provenance | MaD:10 | -| StrBuilderTest.java:21:101:21:103 | sb3 : StrBuilder | StrBuilderTest.java:21:101:21:114 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:21:101:21:103 | sb3 : StrBuilder | StrBuilderTest.java:21:101:21:114 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:21:55:21:92 | wrap(...) : CharBuffer | StrBuilderTest.java:21:44:21:46 | sb3 [post update] : StrBuilder | provenance | MaD:42 | +| StrBuilderTest.java:21:71:21:77 | taint(...) : String | StrBuilderTest.java:21:71:21:91 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTest.java:21:71:21:91 | toCharArray(...) : char[] | StrBuilderTest.java:21:55:21:92 | wrap(...) : CharBuffer | provenance | MaD:8 | +| StrBuilderTest.java:21:101:21:103 | sb3 : StrBuilder | StrBuilderTest.java:21:101:21:114 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:22:44:22:46 | sb4 [post update] : StrBuilder | StrBuilderTest.java:22:107:22:109 | sb4 : StrBuilder | provenance | | -| StrBuilderTest.java:22:55:22:92 | wrap(...) : CharBuffer | StrBuilderTest.java:22:44:22:46 | sb4 [post update] : StrBuilder | provenance | MaD:49 | -| StrBuilderTest.java:22:71:22:77 | taint(...) : String | StrBuilderTest.java:22:71:22:91 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTest.java:22:71:22:91 | toCharArray(...) : char[] | StrBuilderTest.java:22:55:22:92 | wrap(...) : CharBuffer | provenance | MaD:10 | -| StrBuilderTest.java:22:107:22:109 | sb4 : StrBuilder | StrBuilderTest.java:22:107:22:120 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:22:107:22:109 | sb4 : StrBuilder | StrBuilderTest.java:22:107:22:120 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:22:55:22:92 | wrap(...) : CharBuffer | StrBuilderTest.java:22:44:22:46 | sb4 [post update] : StrBuilder | provenance | MaD:43 | +| StrBuilderTest.java:22:71:22:77 | taint(...) : String | StrBuilderTest.java:22:71:22:91 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTest.java:22:71:22:91 | toCharArray(...) : char[] | StrBuilderTest.java:22:55:22:92 | wrap(...) : CharBuffer | provenance | MaD:8 | +| StrBuilderTest.java:22:107:22:109 | sb4 : StrBuilder | StrBuilderTest.java:22:107:22:120 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:23:44:23:46 | sb5 [post update] : StrBuilder | StrBuilderTest.java:23:84:23:86 | sb5 : StrBuilder | provenance | | -| StrBuilderTest.java:23:55:23:75 | (...)... : String | StrBuilderTest.java:23:44:23:46 | sb5 [post update] : StrBuilder | provenance | MaD:3 | -| StrBuilderTest.java:23:55:23:75 | (...)... : String | StrBuilderTest.java:23:44:23:46 | sb5 [post update] : StrBuilder | provenance | MaD:37 | +| StrBuilderTest.java:23:55:23:75 | (...)... : String | StrBuilderTest.java:23:44:23:46 | sb5 [post update] : StrBuilder | provenance | MaD:31 | | StrBuilderTest.java:23:69:23:75 | taint(...) : String | StrBuilderTest.java:23:55:23:75 | (...)... : String | provenance | | -| StrBuilderTest.java:23:84:23:86 | sb5 : StrBuilder | StrBuilderTest.java:23:84:23:97 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:23:84:23:86 | sb5 : StrBuilder | StrBuilderTest.java:23:84:23:97 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:23:84:23:86 | sb5 : StrBuilder | StrBuilderTest.java:23:84:23:97 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:24:44:24:46 | sb6 [post update] : StrBuilder | StrBuilderTest.java:24:90:24:92 | sb6 : StrBuilder | provenance | | -| StrBuilderTest.java:24:55:24:75 | (...)... : String | StrBuilderTest.java:24:44:24:46 | sb6 [post update] : StrBuilder | provenance | MaD:3 | -| StrBuilderTest.java:24:55:24:75 | (...)... : String | StrBuilderTest.java:24:44:24:46 | sb6 [post update] : StrBuilder | provenance | MaD:38 | +| StrBuilderTest.java:24:55:24:75 | (...)... : String | StrBuilderTest.java:24:44:24:46 | sb6 [post update] : StrBuilder | provenance | MaD:32 | | StrBuilderTest.java:24:69:24:75 | taint(...) : String | StrBuilderTest.java:24:55:24:75 | (...)... : String | provenance | | -| StrBuilderTest.java:24:90:24:92 | sb6 : StrBuilder | StrBuilderTest.java:24:90:24:103 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:24:90:24:92 | sb6 : StrBuilder | StrBuilderTest.java:24:90:24:103 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:24:90:24:92 | sb6 : StrBuilder | StrBuilderTest.java:24:90:24:103 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:25:44:25:46 | sb7 [post update] : StrBuilder | StrBuilderTest.java:25:78:25:80 | sb7 : StrBuilder | provenance | | -| StrBuilderTest.java:25:55:25:69 | (...)... : String | StrBuilderTest.java:25:44:25:46 | sb7 [post update] : StrBuilder | provenance | MaD:39 | +| StrBuilderTest.java:25:55:25:69 | (...)... : String | StrBuilderTest.java:25:44:25:46 | sb7 [post update] : StrBuilder | provenance | MaD:33 | | StrBuilderTest.java:25:63:25:69 | taint(...) : String | StrBuilderTest.java:25:55:25:69 | (...)... : String | provenance | | -| StrBuilderTest.java:25:78:25:80 | sb7 : StrBuilder | StrBuilderTest.java:25:78:25:91 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:25:78:25:80 | sb7 : StrBuilder | StrBuilderTest.java:25:78:25:91 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:25:78:25:80 | sb7 : StrBuilder | StrBuilderTest.java:25:78:25:91 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:27:50:27:54 | auxsb [post update] : StrBuilder | StrBuilderTest.java:28:59:28:63 | auxsb : StrBuilder | provenance | | -| StrBuilderTest.java:27:63:27:69 | taint(...) : String | StrBuilderTest.java:27:50:27:54 | auxsb [post update] : StrBuilder | provenance | MaD:40 | +| StrBuilderTest.java:27:63:27:69 | taint(...) : String | StrBuilderTest.java:27:50:27:54 | auxsb [post update] : StrBuilder | provenance | MaD:34 | | StrBuilderTest.java:28:48:28:50 | sb8 [post update] : StrBuilder | StrBuilderTest.java:28:72:28:74 | sb8 : StrBuilder | provenance | | -| StrBuilderTest.java:28:59:28:63 | auxsb : StrBuilder | StrBuilderTest.java:28:48:28:50 | sb8 [post update] : StrBuilder | provenance | MaD:50 | -| StrBuilderTest.java:28:72:28:74 | sb8 : StrBuilder | StrBuilderTest.java:28:72:28:85 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:28:72:28:74 | sb8 : StrBuilder | StrBuilderTest.java:28:72:28:85 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:28:59:28:63 | auxsb : StrBuilder | StrBuilderTest.java:28:48:28:50 | sb8 [post update] : StrBuilder | provenance | MaD:44 | +| StrBuilderTest.java:28:72:28:74 | sb8 : StrBuilder | StrBuilderTest.java:28:72:28:85 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:30:44:30:46 | sb9 [post update] : StrBuilder | StrBuilderTest.java:30:88:30:90 | sb9 : StrBuilder | provenance | | -| StrBuilderTest.java:30:55:30:79 | new StringBuffer(...) : StringBuffer | StrBuilderTest.java:30:44:30:46 | sb9 [post update] : StrBuilder | provenance | MaD:44 | -| StrBuilderTest.java:30:72:30:78 | taint(...) : String | StrBuilderTest.java:30:55:30:79 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| StrBuilderTest.java:30:88:30:90 | sb9 : StrBuilder | StrBuilderTest.java:30:88:30:101 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:30:88:30:90 | sb9 : StrBuilder | StrBuilderTest.java:30:88:30:101 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:30:55:30:79 | new StringBuffer(...) : StringBuffer | StrBuilderTest.java:30:44:30:46 | sb9 [post update] : StrBuilder | provenance | MaD:38 | +| StrBuilderTest.java:30:72:30:78 | taint(...) : String | StrBuilderTest.java:30:55:30:79 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| StrBuilderTest.java:30:88:30:90 | sb9 : StrBuilder | StrBuilderTest.java:30:88:30:101 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:31:45:31:48 | sb10 [post update] : StrBuilder | StrBuilderTest.java:31:96:31:99 | sb10 : StrBuilder | provenance | | -| StrBuilderTest.java:31:57:31:81 | new StringBuffer(...) : StringBuffer | StrBuilderTest.java:31:45:31:48 | sb10 [post update] : StrBuilder | provenance | MaD:45 | -| StrBuilderTest.java:31:74:31:80 | taint(...) : String | StrBuilderTest.java:31:57:31:81 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| StrBuilderTest.java:31:96:31:99 | sb10 : StrBuilder | StrBuilderTest.java:31:96:31:110 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:31:96:31:99 | sb10 : StrBuilder | StrBuilderTest.java:31:96:31:110 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:31:57:31:81 | new StringBuffer(...) : StringBuffer | StrBuilderTest.java:31:45:31:48 | sb10 [post update] : StrBuilder | provenance | MaD:39 | +| StrBuilderTest.java:31:74:31:80 | taint(...) : String | StrBuilderTest.java:31:57:31:81 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| StrBuilderTest.java:31:96:31:99 | sb10 : StrBuilder | StrBuilderTest.java:31:96:31:110 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:32:45:32:48 | sb11 [post update] : StrBuilder | StrBuilderTest.java:32:91:32:94 | sb11 : StrBuilder | provenance | | -| StrBuilderTest.java:32:57:32:82 | new StringBuilder(...) : StringBuilder | StrBuilderTest.java:32:45:32:48 | sb11 [post update] : StrBuilder | provenance | MaD:46 | -| StrBuilderTest.java:32:75:32:81 | taint(...) : String | StrBuilderTest.java:32:57:32:82 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| StrBuilderTest.java:32:91:32:94 | sb11 : StrBuilder | StrBuilderTest.java:32:91:32:105 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:32:91:32:94 | sb11 : StrBuilder | StrBuilderTest.java:32:91:32:105 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:32:57:32:82 | new StringBuilder(...) : StringBuilder | StrBuilderTest.java:32:45:32:48 | sb11 [post update] : StrBuilder | provenance | MaD:40 | +| StrBuilderTest.java:32:75:32:81 | taint(...) : String | StrBuilderTest.java:32:57:32:82 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| StrBuilderTest.java:32:91:32:94 | sb11 : StrBuilder | StrBuilderTest.java:32:91:32:105 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:33:45:33:48 | sb12 [post update] : StrBuilder | StrBuilderTest.java:33:97:33:100 | sb12 : StrBuilder | provenance | | -| StrBuilderTest.java:33:57:33:82 | new StringBuilder(...) : StringBuilder | StrBuilderTest.java:33:45:33:48 | sb12 [post update] : StrBuilder | provenance | MaD:47 | -| StrBuilderTest.java:33:75:33:81 | taint(...) : String | StrBuilderTest.java:33:57:33:82 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| StrBuilderTest.java:33:97:33:100 | sb12 : StrBuilder | StrBuilderTest.java:33:97:33:111 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:33:97:33:100 | sb12 : StrBuilder | StrBuilderTest.java:33:97:33:111 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:33:57:33:82 | new StringBuilder(...) : StringBuilder | StrBuilderTest.java:33:45:33:48 | sb12 [post update] : StrBuilder | provenance | MaD:41 | +| StrBuilderTest.java:33:75:33:81 | taint(...) : String | StrBuilderTest.java:33:57:33:82 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| StrBuilderTest.java:33:97:33:100 | sb12 : StrBuilder | StrBuilderTest.java:33:97:33:111 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:34:45:34:48 | sb13 [post update] : StrBuilder | StrBuilderTest.java:34:72:34:75 | sb13 : StrBuilder | provenance | | -| StrBuilderTest.java:34:57:34:63 | taint(...) : String | StrBuilderTest.java:34:45:34:48 | sb13 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:34:72:34:75 | sb13 : StrBuilder | StrBuilderTest.java:34:72:34:86 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:34:72:34:75 | sb13 : StrBuilder | StrBuilderTest.java:34:72:34:86 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:34:57:34:63 | taint(...) : String | StrBuilderTest.java:34:45:34:48 | sb13 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:34:72:34:75 | sb13 : StrBuilder | StrBuilderTest.java:34:72:34:86 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:35:45:35:48 | sb14 [post update] : StrBuilder | StrBuilderTest.java:35:78:35:81 | sb14 : StrBuilder | provenance | | -| StrBuilderTest.java:35:57:35:63 | taint(...) : String | StrBuilderTest.java:35:45:35:48 | sb14 [post update] : StrBuilder | provenance | MaD:41 | -| StrBuilderTest.java:35:78:35:81 | sb14 : StrBuilder | StrBuilderTest.java:35:78:35:92 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:35:78:35:81 | sb14 : StrBuilder | StrBuilderTest.java:35:78:35:92 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:35:57:35:63 | taint(...) : String | StrBuilderTest.java:35:45:35:48 | sb14 [post update] : StrBuilder | provenance | MaD:35 | +| StrBuilderTest.java:35:78:35:81 | sb14 : StrBuilder | StrBuilderTest.java:35:78:35:92 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:36:45:36:48 | sb15 [post update] : StrBuilder | StrBuilderTest.java:36:90:36:93 | sb15 : StrBuilder | provenance | | -| StrBuilderTest.java:36:57:36:63 | taint(...) : String | StrBuilderTest.java:36:45:36:48 | sb15 [post update] : StrBuilder | provenance | MaD:42 | -| StrBuilderTest.java:36:90:36:93 | sb15 : StrBuilder | StrBuilderTest.java:36:90:36:104 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:36:90:36:93 | sb15 : StrBuilder | StrBuilderTest.java:36:90:36:104 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:36:57:36:63 | taint(...) : String | StrBuilderTest.java:36:45:36:48 | sb15 [post update] : StrBuilder | provenance | MaD:36 | +| StrBuilderTest.java:36:90:36:93 | sb15 : StrBuilder | StrBuilderTest.java:36:90:36:104 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:37:45:37:48 | sb16 [post update] : StrBuilder | StrBuilderTest.java:37:97:37:100 | sb16 : StrBuilder | provenance | | -| StrBuilderTest.java:37:45:37:89 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTest.java:37:45:37:48 | sb16 [post update] : StrBuilder | provenance | MaD:43 | +| StrBuilderTest.java:37:45:37:89 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTest.java:37:45:37:48 | sb16 [post update] : StrBuilder | provenance | MaD:37 | | StrBuilderTest.java:37:74:37:80 | taint(...) : String | StrBuilderTest.java:37:45:37:89 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| StrBuilderTest.java:37:97:37:100 | sb16 : StrBuilder | StrBuilderTest.java:37:97:37:111 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:37:97:37:100 | sb16 : StrBuilder | StrBuilderTest.java:37:97:37:111 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:37:97:37:100 | sb16 : StrBuilder | StrBuilderTest.java:37:97:37:111 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:40:13:40:23 | taintedList [post update] : ArrayList [] : String | StrBuilderTest.java:41:64:41:74 | taintedList : ArrayList [] : String | provenance | | | StrBuilderTest.java:40:13:40:23 | taintedList [post update] : ArrayList [] : String | StrBuilderTest.java:42:64:42:74 | taintedList : ArrayList [] : String | provenance | | -| StrBuilderTest.java:40:29:40:35 | taint(...) : String | StrBuilderTest.java:40:13:40:23 | taintedList [post update] : ArrayList [] : String | provenance | MaD:11 | +| StrBuilderTest.java:40:29:40:35 | taint(...) : String | StrBuilderTest.java:40:13:40:23 | taintedList [post update] : ArrayList [] : String | provenance | MaD:9 | | StrBuilderTest.java:41:49:41:52 | sb17 [post update] : StrBuilder | StrBuilderTest.java:41:83:41:86 | sb17 : StrBuilder | provenance | | -| StrBuilderTest.java:41:64:41:74 | taintedList : ArrayList [] : String | StrBuilderTest.java:41:49:41:52 | sb17 [post update] : StrBuilder | provenance | MaD:52 | -| StrBuilderTest.java:41:83:41:86 | sb17 : StrBuilder | StrBuilderTest.java:41:83:41:97 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:41:83:41:86 | sb17 : StrBuilder | StrBuilderTest.java:41:83:41:97 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:41:64:41:74 | taintedList : ArrayList [] : String | StrBuilderTest.java:41:49:41:52 | sb17 [post update] : StrBuilder | provenance | MaD:46 | +| StrBuilderTest.java:41:83:41:86 | sb17 : StrBuilder | StrBuilderTest.java:41:83:41:97 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:42:49:42:52 | sb18 [post update] : StrBuilder | StrBuilderTest.java:42:94:42:97 | sb18 : StrBuilder | provenance | | -| StrBuilderTest.java:42:64:42:74 | taintedList : ArrayList [] : String | StrBuilderTest.java:42:64:42:85 | iterator(...) : Iterator [] : String | provenance | MaD:6 | -| StrBuilderTest.java:42:64:42:85 | iterator(...) : Iterator [] : String | StrBuilderTest.java:42:49:42:52 | sb18 [post update] : StrBuilder | provenance | MaD:53 | -| StrBuilderTest.java:42:94:42:97 | sb18 : StrBuilder | StrBuilderTest.java:42:94:42:108 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:42:94:42:97 | sb18 : StrBuilder | StrBuilderTest.java:42:94:42:108 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:42:64:42:74 | taintedList : ArrayList [] : String | StrBuilderTest.java:42:64:42:85 | iterator(...) : Iterator [] : String | provenance | MaD:4 | +| StrBuilderTest.java:42:64:42:85 | iterator(...) : Iterator [] : String | StrBuilderTest.java:42:49:42:52 | sb18 [post update] : StrBuilder | provenance | MaD:47 | +| StrBuilderTest.java:42:94:42:97 | sb18 : StrBuilder | StrBuilderTest.java:42:94:42:108 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:44:45:44:48 | sb19 [post update] : StrBuilder | StrBuilderTest.java:44:84:44:87 | sb19 : StrBuilder | provenance | | -| StrBuilderTest.java:44:45:44:76 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTest.java:44:45:44:48 | sb19 [post update] : StrBuilder | provenance | MaD:54 | +| StrBuilderTest.java:44:45:44:76 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTest.java:44:45:44:48 | sb19 [post update] : StrBuilder | provenance | MaD:48 | | StrBuilderTest.java:44:69:44:75 | taint(...) : String | StrBuilderTest.java:44:45:44:76 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| StrBuilderTest.java:44:84:44:87 | sb19 : StrBuilder | StrBuilderTest.java:44:84:44:98 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:44:84:44:87 | sb19 : StrBuilder | StrBuilderTest.java:44:84:44:98 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:44:84:44:87 | sb19 : StrBuilder | StrBuilderTest.java:44:84:44:98 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:45:45:45:48 | sb20 [post update] : StrBuilder | StrBuilderTest.java:45:84:45:87 | sb20 : StrBuilder | provenance | | -| StrBuilderTest.java:45:45:45:76 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTest.java:45:45:45:48 | sb20 [post update] : StrBuilder | provenance | MaD:54 | +| StrBuilderTest.java:45:45:45:76 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTest.java:45:45:45:48 | sb20 [post update] : StrBuilder | provenance | MaD:48 | | StrBuilderTest.java:45:60:45:66 | taint(...) : String | StrBuilderTest.java:45:45:45:76 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| StrBuilderTest.java:45:84:45:87 | sb20 : StrBuilder | StrBuilderTest.java:45:84:45:98 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:45:84:45:87 | sb20 : StrBuilder | StrBuilderTest.java:45:84:45:98 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:45:84:45:87 | sb20 : StrBuilder | StrBuilderTest.java:45:84:45:98 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:46:45:46:48 | sb21 [post update] : StrBuilder | StrBuilderTest.java:46:97:46:100 | sb21 : StrBuilder | provenance | | -| StrBuilderTest.java:46:74:46:80 | taint(...) : String | StrBuilderTest.java:46:45:46:48 | sb21 [post update] : StrBuilder | provenance | MaD:56 | -| StrBuilderTest.java:46:97:46:100 | sb21 : StrBuilder | StrBuilderTest.java:46:97:46:111 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:46:97:46:100 | sb21 : StrBuilder | StrBuilderTest.java:46:97:46:111 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:46:74:46:80 | taint(...) : String | StrBuilderTest.java:46:45:46:48 | sb21 [post update] : StrBuilder | provenance | MaD:50 | +| StrBuilderTest.java:46:97:46:100 | sb21 : StrBuilder | StrBuilderTest.java:46:97:46:111 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:47:45:47:48 | sb22 [post update] : StrBuilder | StrBuilderTest.java:47:98:47:101 | sb22 : StrBuilder | provenance | | -| StrBuilderTest.java:47:75:47:81 | taint(...) : String | StrBuilderTest.java:47:45:47:48 | sb22 [post update] : StrBuilder | provenance | MaD:58 | -| StrBuilderTest.java:47:98:47:101 | sb22 : StrBuilder | StrBuilderTest.java:47:98:47:112 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:47:98:47:101 | sb22 : StrBuilder | StrBuilderTest.java:47:98:47:112 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:47:75:47:81 | taint(...) : String | StrBuilderTest.java:47:45:47:48 | sb22 [post update] : StrBuilder | provenance | MaD:52 | +| StrBuilderTest.java:47:98:47:101 | sb22 : StrBuilder | StrBuilderTest.java:47:98:47:112 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:48:45:48:48 | sb23 [post update] : StrBuilder | StrBuilderTest.java:48:88:48:91 | sb23 : StrBuilder | provenance | | -| StrBuilderTest.java:48:59:48:65 | taint(...) : String | StrBuilderTest.java:48:59:48:79 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTest.java:48:59:48:79 | toCharArray(...) : char[] | StrBuilderTest.java:48:45:48:48 | sb23 [post update] : StrBuilder | provenance | MaD:73 | -| StrBuilderTest.java:48:88:48:91 | sb23 : StrBuilder | StrBuilderTest.java:48:88:48:102 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:48:88:48:91 | sb23 : StrBuilder | StrBuilderTest.java:48:88:48:102 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:48:59:48:65 | taint(...) : String | StrBuilderTest.java:48:59:48:79 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTest.java:48:59:48:79 | toCharArray(...) : char[] | StrBuilderTest.java:48:45:48:48 | sb23 [post update] : StrBuilder | provenance | MaD:67 | +| StrBuilderTest.java:48:88:48:91 | sb23 : StrBuilder | StrBuilderTest.java:48:88:48:102 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:49:45:49:48 | sb24 [post update] : StrBuilder | StrBuilderTest.java:49:94:49:97 | sb24 : StrBuilder | provenance | | -| StrBuilderTest.java:49:59:49:65 | taint(...) : String | StrBuilderTest.java:49:59:49:79 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTest.java:49:59:49:79 | toCharArray(...) : char[] | StrBuilderTest.java:49:45:49:48 | sb24 [post update] : StrBuilder | provenance | MaD:74 | -| StrBuilderTest.java:49:94:49:97 | sb24 : StrBuilder | StrBuilderTest.java:49:94:49:108 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:49:94:49:97 | sb24 : StrBuilder | StrBuilderTest.java:49:94:49:108 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:49:59:49:65 | taint(...) : String | StrBuilderTest.java:49:59:49:79 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTest.java:49:59:49:79 | toCharArray(...) : char[] | StrBuilderTest.java:49:45:49:48 | sb24 [post update] : StrBuilder | provenance | MaD:68 | +| StrBuilderTest.java:49:94:49:97 | sb24 : StrBuilder | StrBuilderTest.java:49:94:49:108 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:50:45:50:48 | sb25 [post update] : StrBuilder | StrBuilderTest.java:50:82:50:85 | sb25 : StrBuilder | provenance | | -| StrBuilderTest.java:50:59:50:73 | (...)... : String | StrBuilderTest.java:50:45:50:48 | sb25 [post update] : StrBuilder | provenance | MaD:75 | +| StrBuilderTest.java:50:59:50:73 | (...)... : String | StrBuilderTest.java:50:45:50:48 | sb25 [post update] : StrBuilder | provenance | MaD:69 | | StrBuilderTest.java:50:67:50:73 | taint(...) : String | StrBuilderTest.java:50:59:50:73 | (...)... : String | provenance | | -| StrBuilderTest.java:50:82:50:85 | sb25 : StrBuilder | StrBuilderTest.java:50:82:50:96 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:50:82:50:85 | sb25 : StrBuilder | StrBuilderTest.java:50:82:50:96 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:50:82:50:85 | sb25 : StrBuilder | StrBuilderTest.java:50:82:50:96 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:52:50:52:54 | auxsb [post update] : StrBuilder | StrBuilderTest.java:53:63:53:67 | auxsb : StrBuilder | provenance | | -| StrBuilderTest.java:52:65:52:71 | taint(...) : String | StrBuilderTest.java:52:50:52:54 | auxsb [post update] : StrBuilder | provenance | MaD:76 | +| StrBuilderTest.java:52:65:52:71 | taint(...) : String | StrBuilderTest.java:52:50:52:54 | auxsb [post update] : StrBuilder | provenance | MaD:70 | | StrBuilderTest.java:53:49:53:52 | sb26 [post update] : StrBuilder | StrBuilderTest.java:53:76:53:79 | sb26 : StrBuilder | provenance | | -| StrBuilderTest.java:53:63:53:67 | auxsb : StrBuilder | StrBuilderTest.java:53:49:53:52 | sb26 [post update] : StrBuilder | provenance | MaD:84 | -| StrBuilderTest.java:53:76:53:79 | sb26 : StrBuilder | StrBuilderTest.java:53:76:53:90 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:53:76:53:79 | sb26 : StrBuilder | StrBuilderTest.java:53:76:53:90 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:53:63:53:67 | auxsb : StrBuilder | StrBuilderTest.java:53:49:53:52 | sb26 [post update] : StrBuilder | provenance | MaD:78 | +| StrBuilderTest.java:53:76:53:79 | sb26 : StrBuilder | StrBuilderTest.java:53:76:53:90 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:55:45:55:48 | sb27 [post update] : StrBuilder | StrBuilderTest.java:55:92:55:95 | sb27 : StrBuilder | provenance | | -| StrBuilderTest.java:55:59:55:83 | new StringBuffer(...) : StringBuffer | StrBuilderTest.java:55:45:55:48 | sb27 [post update] : StrBuilder | provenance | MaD:80 | -| StrBuilderTest.java:55:76:55:82 | taint(...) : String | StrBuilderTest.java:55:59:55:83 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| StrBuilderTest.java:55:92:55:95 | sb27 : StrBuilder | StrBuilderTest.java:55:92:55:106 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:55:92:55:95 | sb27 : StrBuilder | StrBuilderTest.java:55:92:55:106 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:55:59:55:83 | new StringBuffer(...) : StringBuffer | StrBuilderTest.java:55:45:55:48 | sb27 [post update] : StrBuilder | provenance | MaD:74 | +| StrBuilderTest.java:55:76:55:82 | taint(...) : String | StrBuilderTest.java:55:59:55:83 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| StrBuilderTest.java:55:92:55:95 | sb27 : StrBuilder | StrBuilderTest.java:55:92:55:106 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:56:45:56:48 | sb28 [post update] : StrBuilder | StrBuilderTest.java:56:98:56:101 | sb28 : StrBuilder | provenance | | -| StrBuilderTest.java:56:59:56:83 | new StringBuffer(...) : StringBuffer | StrBuilderTest.java:56:45:56:48 | sb28 [post update] : StrBuilder | provenance | MaD:81 | -| StrBuilderTest.java:56:76:56:82 | taint(...) : String | StrBuilderTest.java:56:59:56:83 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| StrBuilderTest.java:56:98:56:101 | sb28 : StrBuilder | StrBuilderTest.java:56:98:56:112 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:56:98:56:101 | sb28 : StrBuilder | StrBuilderTest.java:56:98:56:112 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:56:59:56:83 | new StringBuffer(...) : StringBuffer | StrBuilderTest.java:56:45:56:48 | sb28 [post update] : StrBuilder | provenance | MaD:75 | +| StrBuilderTest.java:56:76:56:82 | taint(...) : String | StrBuilderTest.java:56:59:56:83 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| StrBuilderTest.java:56:98:56:101 | sb28 : StrBuilder | StrBuilderTest.java:56:98:56:112 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:57:45:57:48 | sb29 [post update] : StrBuilder | StrBuilderTest.java:57:93:57:96 | sb29 : StrBuilder | provenance | | -| StrBuilderTest.java:57:59:57:84 | new StringBuilder(...) : StringBuilder | StrBuilderTest.java:57:45:57:48 | sb29 [post update] : StrBuilder | provenance | MaD:82 | -| StrBuilderTest.java:57:77:57:83 | taint(...) : String | StrBuilderTest.java:57:59:57:84 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| StrBuilderTest.java:57:93:57:96 | sb29 : StrBuilder | StrBuilderTest.java:57:93:57:107 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:57:93:57:96 | sb29 : StrBuilder | StrBuilderTest.java:57:93:57:107 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:57:59:57:84 | new StringBuilder(...) : StringBuilder | StrBuilderTest.java:57:45:57:48 | sb29 [post update] : StrBuilder | provenance | MaD:76 | +| StrBuilderTest.java:57:77:57:83 | taint(...) : String | StrBuilderTest.java:57:59:57:84 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| StrBuilderTest.java:57:93:57:96 | sb29 : StrBuilder | StrBuilderTest.java:57:93:57:107 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:58:45:58:48 | sb30 [post update] : StrBuilder | StrBuilderTest.java:58:99:58:102 | sb30 : StrBuilder | provenance | | -| StrBuilderTest.java:58:59:58:84 | new StringBuilder(...) : StringBuilder | StrBuilderTest.java:58:45:58:48 | sb30 [post update] : StrBuilder | provenance | MaD:83 | -| StrBuilderTest.java:58:77:58:83 | taint(...) : String | StrBuilderTest.java:58:59:58:84 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| StrBuilderTest.java:58:99:58:102 | sb30 : StrBuilder | StrBuilderTest.java:58:99:58:113 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:58:99:58:102 | sb30 : StrBuilder | StrBuilderTest.java:58:99:58:113 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:58:59:58:84 | new StringBuilder(...) : StringBuilder | StrBuilderTest.java:58:45:58:48 | sb30 [post update] : StrBuilder | provenance | MaD:77 | +| StrBuilderTest.java:58:77:58:83 | taint(...) : String | StrBuilderTest.java:58:59:58:84 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| StrBuilderTest.java:58:99:58:102 | sb30 : StrBuilder | StrBuilderTest.java:58:99:58:113 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:59:45:59:48 | sb31 [post update] : StrBuilder | StrBuilderTest.java:59:74:59:77 | sb31 : StrBuilder | provenance | | -| StrBuilderTest.java:59:59:59:65 | taint(...) : String | StrBuilderTest.java:59:45:59:48 | sb31 [post update] : StrBuilder | provenance | MaD:76 | -| StrBuilderTest.java:59:74:59:77 | sb31 : StrBuilder | StrBuilderTest.java:59:74:59:88 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:59:74:59:77 | sb31 : StrBuilder | StrBuilderTest.java:59:74:59:88 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:59:59:59:65 | taint(...) : String | StrBuilderTest.java:59:45:59:48 | sb31 [post update] : StrBuilder | provenance | MaD:70 | +| StrBuilderTest.java:59:74:59:77 | sb31 : StrBuilder | StrBuilderTest.java:59:74:59:88 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:60:45:60:48 | sb32 [post update] : StrBuilder | StrBuilderTest.java:60:80:60:83 | sb32 : StrBuilder | provenance | | -| StrBuilderTest.java:60:59:60:65 | taint(...) : String | StrBuilderTest.java:60:45:60:48 | sb32 [post update] : StrBuilder | provenance | MaD:77 | -| StrBuilderTest.java:60:80:60:83 | sb32 : StrBuilder | StrBuilderTest.java:60:80:60:94 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:60:80:60:83 | sb32 : StrBuilder | StrBuilderTest.java:60:80:60:94 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:60:59:60:65 | taint(...) : String | StrBuilderTest.java:60:45:60:48 | sb32 [post update] : StrBuilder | provenance | MaD:71 | +| StrBuilderTest.java:60:80:60:83 | sb32 : StrBuilder | StrBuilderTest.java:60:80:60:94 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:61:45:61:48 | sb33 [post update] : StrBuilder | StrBuilderTest.java:61:92:61:95 | sb33 : StrBuilder | provenance | | -| StrBuilderTest.java:61:59:61:65 | taint(...) : String | StrBuilderTest.java:61:45:61:48 | sb33 [post update] : StrBuilder | provenance | MaD:78 | -| StrBuilderTest.java:61:92:61:95 | sb33 : StrBuilder | StrBuilderTest.java:61:92:61:106 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:61:92:61:95 | sb33 : StrBuilder | StrBuilderTest.java:61:92:61:106 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:61:59:61:65 | taint(...) : String | StrBuilderTest.java:61:45:61:48 | sb33 [post update] : StrBuilder | provenance | MaD:72 | +| StrBuilderTest.java:61:92:61:95 | sb33 : StrBuilder | StrBuilderTest.java:61:92:61:106 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:62:45:62:48 | sb34 [post update] : StrBuilder | StrBuilderTest.java:62:99:62:102 | sb34 : StrBuilder | provenance | | -| StrBuilderTest.java:62:45:62:91 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTest.java:62:45:62:48 | sb34 [post update] : StrBuilder | provenance | MaD:79 | +| StrBuilderTest.java:62:45:62:91 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTest.java:62:45:62:48 | sb34 [post update] : StrBuilder | provenance | MaD:73 | | StrBuilderTest.java:62:76:62:82 | taint(...) : String | StrBuilderTest.java:62:45:62:91 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| StrBuilderTest.java:62:99:62:102 | sb34 : StrBuilder | StrBuilderTest.java:62:99:62:113 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:62:99:62:102 | sb34 : StrBuilder | StrBuilderTest.java:62:99:62:113 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:62:99:62:102 | sb34 : StrBuilder | StrBuilderTest.java:62:99:62:113 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:63:45:63:48 | sb35 [post update] : StrBuilder | StrBuilderTest.java:63:81:63:84 | sb35 : StrBuilder | provenance | | -| StrBuilderTest.java:63:66:63:72 | taint(...) : String | StrBuilderTest.java:63:45:63:48 | sb35 [post update] : StrBuilder | provenance | MaD:63 | -| StrBuilderTest.java:63:81:63:84 | sb35 : StrBuilder | StrBuilderTest.java:63:81:63:95 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:63:81:63:84 | sb35 : StrBuilder | StrBuilderTest.java:63:81:63:95 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:63:66:63:72 | taint(...) : String | StrBuilderTest.java:63:45:63:48 | sb35 [post update] : StrBuilder | provenance | MaD:57 | +| StrBuilderTest.java:63:81:63:84 | sb35 : StrBuilder | StrBuilderTest.java:63:81:63:95 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:64:45:64:48 | sb36 [post update] : StrBuilder | StrBuilderTest.java:64:84:64:87 | sb36 : StrBuilder | provenance | | -| StrBuilderTest.java:64:66:64:72 | taint(...) : String | StrBuilderTest.java:64:45:64:48 | sb36 [post update] : StrBuilder | provenance | MaD:64 | -| StrBuilderTest.java:64:84:64:87 | sb36 : StrBuilder | StrBuilderTest.java:64:84:64:98 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:64:84:64:87 | sb36 : StrBuilder | StrBuilderTest.java:64:84:64:98 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:64:66:64:72 | taint(...) : String | StrBuilderTest.java:64:45:64:48 | sb36 [post update] : StrBuilder | provenance | MaD:58 | +| StrBuilderTest.java:64:84:64:87 | sb36 : StrBuilder | StrBuilderTest.java:64:84:64:98 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:65:45:65:48 | sb37 [post update] : StrBuilder | StrBuilderTest.java:65:92:65:95 | sb37 : StrBuilder | provenance | | -| StrBuilderTest.java:65:66:65:72 | taint(...) : String | StrBuilderTest.java:65:45:65:48 | sb37 [post update] : StrBuilder | provenance | MaD:65 | -| StrBuilderTest.java:65:92:65:95 | sb37 : StrBuilder | StrBuilderTest.java:65:92:65:106 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:65:92:65:95 | sb37 : StrBuilder | StrBuilderTest.java:65:92:65:106 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:65:66:65:72 | taint(...) : String | StrBuilderTest.java:65:45:65:48 | sb37 [post update] : StrBuilder | provenance | MaD:59 | +| StrBuilderTest.java:65:92:65:95 | sb37 : StrBuilder | StrBuilderTest.java:65:92:65:106 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:66:45:66:48 | sb38 [post update] : StrBuilder | StrBuilderTest.java:66:85:66:88 | sb38 : StrBuilder | provenance | | -| StrBuilderTest.java:66:70:66:76 | taint(...) : String | StrBuilderTest.java:66:45:66:48 | sb38 [post update] : StrBuilder | provenance | MaD:65 | -| StrBuilderTest.java:66:85:66:88 | sb38 : StrBuilder | StrBuilderTest.java:66:85:66:99 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:66:85:66:88 | sb38 : StrBuilder | StrBuilderTest.java:66:85:66:99 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:66:70:66:76 | taint(...) : String | StrBuilderTest.java:66:45:66:48 | sb38 [post update] : StrBuilder | provenance | MaD:59 | +| StrBuilderTest.java:66:85:66:88 | sb38 : StrBuilder | StrBuilderTest.java:66:85:66:99 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:68:50:68:54 | auxsb [post update] : StrBuilder | StrBuilderTest.java:69:49:69:53 | auxsb : StrBuilder | provenance | | -| StrBuilderTest.java:68:65:68:71 | taint(...) : String | StrBuilderTest.java:68:50:68:54 | auxsb [post update] : StrBuilder | provenance | MaD:76 | -| StrBuilderTest.java:69:49:69:53 | auxsb : StrBuilder | StrBuilderTest.java:69:64:69:67 | sb39 [post update] : StrBuilder | provenance | MaD:67 | +| StrBuilderTest.java:68:65:68:71 | taint(...) : String | StrBuilderTest.java:68:50:68:54 | auxsb [post update] : StrBuilder | provenance | MaD:70 | +| StrBuilderTest.java:69:49:69:53 | auxsb : StrBuilder | StrBuilderTest.java:69:64:69:67 | sb39 [post update] : StrBuilder | provenance | MaD:61 | | StrBuilderTest.java:69:64:69:67 | sb39 [post update] : StrBuilder | StrBuilderTest.java:69:76:69:79 | sb39 : StrBuilder | provenance | | -| StrBuilderTest.java:69:76:69:79 | sb39 : StrBuilder | StrBuilderTest.java:69:76:69:90 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:69:76:69:79 | sb39 : StrBuilder | StrBuilderTest.java:69:76:69:90 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:69:76:69:79 | sb39 : StrBuilder | StrBuilderTest.java:69:76:69:90 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:73:13:73:23 | taintedList [post update] : ArrayList [] : String | StrBuilderTest.java:74:75:74:85 | taintedList : ArrayList [] : String | provenance | | | StrBuilderTest.java:73:13:73:23 | taintedList [post update] : ArrayList [] : String | StrBuilderTest.java:75:75:75:85 | taintedList : ArrayList [] : String | provenance | | -| StrBuilderTest.java:73:29:73:35 | taint(...) : String | StrBuilderTest.java:73:13:73:23 | taintedList [post update] : ArrayList [] : String | provenance | MaD:11 | +| StrBuilderTest.java:73:29:73:35 | taint(...) : String | StrBuilderTest.java:73:13:73:23 | taintedList [post update] : ArrayList [] : String | provenance | MaD:9 | | StrBuilderTest.java:74:49:74:52 | sb40 [post update] : StrBuilder | StrBuilderTest.java:74:100:74:103 | sb40 : StrBuilder | provenance | | -| StrBuilderTest.java:74:75:74:85 | taintedList : ArrayList [] : String | StrBuilderTest.java:74:49:74:52 | sb40 [post update] : StrBuilder | provenance | MaD:68 | -| StrBuilderTest.java:74:100:74:103 | sb40 : StrBuilder | StrBuilderTest.java:74:100:74:114 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:74:100:74:103 | sb40 : StrBuilder | StrBuilderTest.java:74:100:74:114 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:74:75:74:85 | taintedList : ArrayList [] : String | StrBuilderTest.java:74:49:74:52 | sb40 [post update] : StrBuilder | provenance | MaD:62 | +| StrBuilderTest.java:74:100:74:103 | sb40 : StrBuilder | StrBuilderTest.java:74:100:74:114 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:75:49:75:52 | sb41 [post update] : StrBuilder | StrBuilderTest.java:75:111:75:114 | sb41 : StrBuilder | provenance | | -| StrBuilderTest.java:75:75:75:85 | taintedList : ArrayList [] : String | StrBuilderTest.java:75:75:75:96 | iterator(...) : Iterator [] : String | provenance | MaD:6 | -| StrBuilderTest.java:75:75:75:96 | iterator(...) : Iterator [] : String | StrBuilderTest.java:75:49:75:52 | sb41 [post update] : StrBuilder | provenance | MaD:69 | -| StrBuilderTest.java:75:111:75:114 | sb41 : StrBuilder | StrBuilderTest.java:75:111:75:125 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:75:111:75:114 | sb41 : StrBuilder | StrBuilderTest.java:75:111:75:125 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:75:75:75:85 | taintedList : ArrayList [] : String | StrBuilderTest.java:75:75:75:96 | iterator(...) : Iterator [] : String | provenance | MaD:4 | +| StrBuilderTest.java:75:75:75:96 | iterator(...) : Iterator [] : String | StrBuilderTest.java:75:49:75:52 | sb41 [post update] : StrBuilder | provenance | MaD:63 | +| StrBuilderTest.java:75:111:75:114 | sb41 : StrBuilder | StrBuilderTest.java:75:111:75:125 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:77:49:77:52 | sb42 [post update] : StrBuilder | StrBuilderTest.java:77:105:77:108 | sb42 : StrBuilder | provenance | | -| StrBuilderTest.java:77:90:77:96 | taint(...) : String | StrBuilderTest.java:77:49:77:52 | sb42 [post update] : StrBuilder | provenance | MaD:71 | -| StrBuilderTest.java:77:105:77:108 | sb42 : StrBuilder | StrBuilderTest.java:77:105:77:119 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:77:105:77:108 | sb42 : StrBuilder | StrBuilderTest.java:77:105:77:119 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:77:90:77:96 | taint(...) : String | StrBuilderTest.java:77:49:77:52 | sb42 [post update] : StrBuilder | provenance | MaD:65 | +| StrBuilderTest.java:77:105:77:108 | sb42 : StrBuilder | StrBuilderTest.java:77:105:77:119 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:78:49:78:52 | sb43 [post update] : StrBuilder | StrBuilderTest.java:78:116:78:119 | sb43 : StrBuilder | provenance | | -| StrBuilderTest.java:78:101:78:107 | taint(...) : String | StrBuilderTest.java:78:49:78:52 | sb43 [post update] : StrBuilder | provenance | MaD:71 | -| StrBuilderTest.java:78:116:78:119 | sb43 : StrBuilder | StrBuilderTest.java:78:116:78:130 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:78:116:78:119 | sb43 : StrBuilder | StrBuilderTest.java:78:116:78:130 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:78:101:78:107 | taint(...) : String | StrBuilderTest.java:78:49:78:52 | sb43 [post update] : StrBuilder | provenance | MaD:65 | +| StrBuilderTest.java:78:116:78:119 | sb43 : StrBuilder | StrBuilderTest.java:78:116:78:130 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:79:37:79:60 | {...} : String[] [[]] : String | StrBuilderTest.java:81:75:81:86 | taintedArray : String[] [[]] : String | provenance | | | StrBuilderTest.java:79:52:79:58 | taint(...) : String | StrBuilderTest.java:79:37:79:60 | {...} : String[] [[]] : String | provenance | | | StrBuilderTest.java:81:49:81:52 | sb44 [post update] : StrBuilder | StrBuilderTest.java:81:101:81:104 | sb44 : StrBuilder | provenance | | -| StrBuilderTest.java:81:75:81:86 | taintedArray : String[] [[]] : String | StrBuilderTest.java:81:49:81:52 | sb44 [post update] : StrBuilder | provenance | MaD:70 | -| StrBuilderTest.java:81:101:81:104 | sb44 : StrBuilder | StrBuilderTest.java:81:101:81:115 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:81:101:81:104 | sb44 : StrBuilder | StrBuilderTest.java:81:101:81:115 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:81:75:81:86 | taintedArray : String[] [[]] : String | StrBuilderTest.java:81:49:81:52 | sb44 [post update] : StrBuilder | provenance | MaD:64 | +| StrBuilderTest.java:81:101:81:104 | sb44 : StrBuilder | StrBuilderTest.java:81:101:81:115 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:82:49:82:52 | sb45 [post update] : StrBuilder | StrBuilderTest.java:82:106:82:109 | sb45 : StrBuilder | provenance | | -| StrBuilderTest.java:82:91:82:97 | taint(...) : String | StrBuilderTest.java:82:49:82:52 | sb45 [post update] : StrBuilder | provenance | MaD:71 | -| StrBuilderTest.java:82:106:82:109 | sb45 : StrBuilder | StrBuilderTest.java:82:106:82:120 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:82:106:82:109 | sb45 : StrBuilder | StrBuilderTest.java:82:106:82:120 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:82:91:82:97 | taint(...) : String | StrBuilderTest.java:82:49:82:52 | sb45 [post update] : StrBuilder | provenance | MaD:65 | +| StrBuilderTest.java:82:106:82:109 | sb45 : StrBuilder | StrBuilderTest.java:82:106:82:120 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:85:49:85:52 | sb46 [post update] : StrBuilder | StrBuilderTest.java:87:13:87:16 | sb46 : StrBuilder | provenance | | -| StrBuilderTest.java:85:61:85:67 | taint(...) : String | StrBuilderTest.java:85:49:85:52 | sb46 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:87:13:87:16 | sb46 : StrBuilder | StrBuilderTest.java:87:13:87:27 | asReader(...) : Reader | provenance | MaD:86 | +| StrBuilderTest.java:85:61:85:67 | taint(...) : String | StrBuilderTest.java:85:49:85:52 | sb46 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:87:13:87:16 | sb46 : StrBuilder | StrBuilderTest.java:87:13:87:27 | asReader(...) : Reader | provenance | MaD:80 | | StrBuilderTest.java:87:13:87:27 | asReader(...) : Reader | StrBuilderTest.java:87:34:87:39 | target [post update] : char[] | provenance | MaD:1 | | StrBuilderTest.java:87:34:87:39 | target [post update] : char[] | StrBuilderTest.java:88:18:88:23 | target | provenance | | | StrBuilderTest.java:90:45:90:48 | sb47 [post update] : StrBuilder | StrBuilderTest.java:90:72:90:75 | sb47 : StrBuilder | provenance | | -| StrBuilderTest.java:90:57:90:63 | taint(...) : String | StrBuilderTest.java:90:45:90:48 | sb47 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:90:72:90:75 | sb47 : StrBuilder | StrBuilderTest.java:90:72:90:89 | asTokenizer(...) : StrTokenizer | provenance | MaD:87 | -| StrBuilderTest.java:90:72:90:89 | asTokenizer(...) : StrTokenizer | StrBuilderTest.java:90:72:90:96 | next(...) | provenance | MaD:13 | -| StrBuilderTest.java:90:72:90:89 | asTokenizer(...) : StrTokenizer | StrBuilderTest.java:90:72:90:96 | next(...) | provenance | MaD:159 | +| StrBuilderTest.java:90:57:90:63 | taint(...) : String | StrBuilderTest.java:90:45:90:48 | sb47 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:90:72:90:75 | sb47 : StrBuilder | StrBuilderTest.java:90:72:90:89 | asTokenizer(...) : StrTokenizer | provenance | MaD:81 | +| StrBuilderTest.java:90:72:90:89 | asTokenizer(...) : StrTokenizer | StrBuilderTest.java:90:72:90:96 | next(...) | provenance | MaD:153 | | StrBuilderTest.java:91:45:91:48 | sb48 [post update] : StrBuilder | StrBuilderTest.java:91:72:91:75 | sb48 : StrBuilder | provenance | | -| StrBuilderTest.java:91:57:91:63 | taint(...) : String | StrBuilderTest.java:91:45:91:48 | sb48 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:91:72:91:75 | sb48 : StrBuilder | StrBuilderTest.java:91:72:91:83 | build(...) | provenance | MaD:88 | +| StrBuilderTest.java:91:57:91:63 | taint(...) : String | StrBuilderTest.java:91:45:91:48 | sb48 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:91:72:91:75 | sb48 : StrBuilder | StrBuilderTest.java:91:72:91:83 | build(...) | provenance | MaD:82 | | StrBuilderTest.java:92:45:92:48 | sb49 [post update] : StrBuilder | StrBuilderTest.java:92:72:92:75 | sb49 : StrBuilder | provenance | | -| StrBuilderTest.java:92:57:92:63 | taint(...) : String | StrBuilderTest.java:92:45:92:48 | sb49 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:92:72:92:75 | sb49 : StrBuilder | StrBuilderTest.java:92:72:92:90 | getChars(...) | provenance | MaD:95 | +| StrBuilderTest.java:92:57:92:63 | taint(...) : String | StrBuilderTest.java:92:45:92:48 | sb49 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:92:72:92:75 | sb49 : StrBuilder | StrBuilderTest.java:92:72:92:90 | getChars(...) | provenance | MaD:89 | | StrBuilderTest.java:94:49:94:52 | sb50 [post update] : StrBuilder | StrBuilderTest.java:96:13:96:16 | sb50 : StrBuilder | provenance | | -| StrBuilderTest.java:94:61:94:67 | taint(...) : String | StrBuilderTest.java:94:49:94:52 | sb50 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:96:13:96:16 | sb50 : StrBuilder | StrBuilderTest.java:96:27:96:32 | target [post update] : char[] | provenance | MaD:94 | +| StrBuilderTest.java:94:61:94:67 | taint(...) : String | StrBuilderTest.java:94:49:94:52 | sb50 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:96:13:96:16 | sb50 : StrBuilder | StrBuilderTest.java:96:27:96:32 | target [post update] : char[] | provenance | MaD:88 | | StrBuilderTest.java:96:27:96:32 | target [post update] : char[] | StrBuilderTest.java:97:18:97:23 | target | provenance | | | StrBuilderTest.java:100:49:100:52 | sb51 [post update] : StrBuilder | StrBuilderTest.java:102:13:102:16 | sb51 : StrBuilder | provenance | | -| StrBuilderTest.java:100:61:100:67 | taint(...) : String | StrBuilderTest.java:100:49:100:52 | sb51 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:102:13:102:16 | sb51 : StrBuilder | StrBuilderTest.java:102:33:102:38 | target [post update] : char[] | provenance | MaD:96 | +| StrBuilderTest.java:100:61:100:67 | taint(...) : String | StrBuilderTest.java:100:49:100:52 | sb51 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:102:13:102:16 | sb51 : StrBuilder | StrBuilderTest.java:102:33:102:38 | target [post update] : char[] | provenance | MaD:90 | | StrBuilderTest.java:102:33:102:38 | target [post update] : char[] | StrBuilderTest.java:103:18:103:23 | target | provenance | | | StrBuilderTest.java:105:45:105:48 | sb52 [post update] : StrBuilder | StrBuilderTest.java:105:89:105:92 | sb52 : StrBuilder | provenance | | -| StrBuilderTest.java:105:60:105:66 | taint(...) : String | StrBuilderTest.java:105:60:105:80 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTest.java:105:60:105:80 | toCharArray(...) : char[] | StrBuilderTest.java:105:45:105:48 | sb52 [post update] : StrBuilder | provenance | MaD:97 | -| StrBuilderTest.java:105:89:105:92 | sb52 : StrBuilder | StrBuilderTest.java:105:89:105:103 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:105:89:105:92 | sb52 : StrBuilder | StrBuilderTest.java:105:89:105:103 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:105:60:105:66 | taint(...) : String | StrBuilderTest.java:105:60:105:80 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTest.java:105:60:105:80 | toCharArray(...) : char[] | StrBuilderTest.java:105:45:105:48 | sb52 [post update] : StrBuilder | provenance | MaD:91 | +| StrBuilderTest.java:105:89:105:92 | sb52 : StrBuilder | StrBuilderTest.java:105:89:105:103 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:106:45:106:48 | sb53 [post update] : StrBuilder | StrBuilderTest.java:106:95:106:98 | sb53 : StrBuilder | provenance | | -| StrBuilderTest.java:106:60:106:66 | taint(...) : String | StrBuilderTest.java:106:60:106:80 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTest.java:106:60:106:80 | toCharArray(...) : char[] | StrBuilderTest.java:106:45:106:48 | sb53 [post update] : StrBuilder | provenance | MaD:97 | -| StrBuilderTest.java:106:95:106:98 | sb53 : StrBuilder | StrBuilderTest.java:106:95:106:109 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:106:95:106:98 | sb53 : StrBuilder | StrBuilderTest.java:106:95:106:109 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:106:60:106:66 | taint(...) : String | StrBuilderTest.java:106:60:106:80 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTest.java:106:60:106:80 | toCharArray(...) : char[] | StrBuilderTest.java:106:45:106:48 | sb53 [post update] : StrBuilder | provenance | MaD:91 | +| StrBuilderTest.java:106:95:106:98 | sb53 : StrBuilder | StrBuilderTest.java:106:95:106:109 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:107:45:107:48 | sb54 [post update] : StrBuilder | StrBuilderTest.java:107:75:107:78 | sb54 : StrBuilder | provenance | | -| StrBuilderTest.java:107:60:107:66 | taint(...) : String | StrBuilderTest.java:107:45:107:48 | sb54 [post update] : StrBuilder | provenance | MaD:97 | -| StrBuilderTest.java:107:75:107:78 | sb54 : StrBuilder | StrBuilderTest.java:107:75:107:89 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:107:75:107:78 | sb54 : StrBuilder | StrBuilderTest.java:107:75:107:89 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:107:60:107:66 | taint(...) : String | StrBuilderTest.java:107:45:107:48 | sb54 [post update] : StrBuilder | provenance | MaD:91 | +| StrBuilderTest.java:107:75:107:78 | sb54 : StrBuilder | StrBuilderTest.java:107:75:107:89 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:108:45:108:48 | sb55 [post update] : StrBuilder | StrBuilderTest.java:108:83:108:86 | sb55 : StrBuilder | provenance | | -| StrBuilderTest.java:108:60:108:74 | (...)... : String | StrBuilderTest.java:108:45:108:48 | sb55 [post update] : StrBuilder | provenance | MaD:97 | +| StrBuilderTest.java:108:60:108:74 | (...)... : String | StrBuilderTest.java:108:45:108:48 | sb55 [post update] : StrBuilder | provenance | MaD:91 | | StrBuilderTest.java:108:68:108:74 | taint(...) : String | StrBuilderTest.java:108:60:108:74 | (...)... : String | provenance | | -| StrBuilderTest.java:108:83:108:86 | sb55 : StrBuilder | StrBuilderTest.java:108:83:108:97 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:108:83:108:86 | sb55 : StrBuilder | StrBuilderTest.java:108:83:108:97 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:108:83:108:86 | sb55 : StrBuilder | StrBuilderTest.java:108:83:108:97 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:109:45:109:48 | sb56 [post update] : StrBuilder | StrBuilderTest.java:109:72:109:75 | sb56 : StrBuilder | provenance | | -| StrBuilderTest.java:109:57:109:63 | taint(...) : String | StrBuilderTest.java:109:45:109:48 | sb56 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:109:72:109:75 | sb56 : StrBuilder | StrBuilderTest.java:109:72:109:89 | leftString(...) | provenance | MaD:99 | +| StrBuilderTest.java:109:57:109:63 | taint(...) : String | StrBuilderTest.java:109:45:109:48 | sb56 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:109:72:109:75 | sb56 : StrBuilder | StrBuilderTest.java:109:72:109:89 | leftString(...) | provenance | MaD:93 | | StrBuilderTest.java:110:45:110:48 | sb57 [post update] : StrBuilder | StrBuilderTest.java:110:72:110:75 | sb57 : StrBuilder | provenance | | -| StrBuilderTest.java:110:57:110:63 | taint(...) : String | StrBuilderTest.java:110:45:110:48 | sb57 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:110:72:110:75 | sb57 : StrBuilder | StrBuilderTest.java:110:72:110:91 | midString(...) | provenance | MaD:100 | +| StrBuilderTest.java:110:57:110:63 | taint(...) : String | StrBuilderTest.java:110:45:110:48 | sb57 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:110:72:110:75 | sb57 : StrBuilder | StrBuilderTest.java:110:72:110:91 | midString(...) | provenance | MaD:94 | | StrBuilderTest.java:112:35:112:59 | new StringReader(...) : StringReader | StrBuilderTest.java:113:63:113:68 | reader : StringReader | provenance | | | StrBuilderTest.java:112:52:112:58 | taint(...) : String | StrBuilderTest.java:112:35:112:59 | new StringReader(...) : StringReader | provenance | MaD:2 | | StrBuilderTest.java:113:49:113:52 | sb58 [post update] : StrBuilder | StrBuilderTest.java:113:77:113:80 | sb58 : StrBuilder | provenance | | -| StrBuilderTest.java:113:63:113:68 | reader : StringReader | StrBuilderTest.java:113:49:113:52 | sb58 [post update] : StrBuilder | provenance | MaD:102 | -| StrBuilderTest.java:113:77:113:80 | sb58 : StrBuilder | StrBuilderTest.java:113:77:113:91 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:113:77:113:80 | sb58 : StrBuilder | StrBuilderTest.java:113:77:113:91 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:113:63:113:68 | reader : StringReader | StrBuilderTest.java:113:49:113:52 | sb58 [post update] : StrBuilder | provenance | MaD:96 | +| StrBuilderTest.java:113:77:113:80 | sb58 : StrBuilder | StrBuilderTest.java:113:77:113:91 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:115:45:115:48 | sb59 [post update] : StrBuilder | StrBuilderTest.java:115:79:115:82 | sb59 : StrBuilder | provenance | | -| StrBuilderTest.java:115:64:115:70 | taint(...) : String | StrBuilderTest.java:115:45:115:48 | sb59 [post update] : StrBuilder | provenance | MaD:103 | -| StrBuilderTest.java:115:79:115:82 | sb59 : StrBuilder | StrBuilderTest.java:115:79:115:93 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:115:79:115:82 | sb59 : StrBuilder | StrBuilderTest.java:115:79:115:93 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:115:64:115:70 | taint(...) : String | StrBuilderTest.java:115:45:115:48 | sb59 [post update] : StrBuilder | provenance | MaD:97 | +| StrBuilderTest.java:115:79:115:82 | sb59 : StrBuilder | StrBuilderTest.java:115:79:115:93 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:116:45:116:48 | sb60 [post update] : StrBuilder | StrBuilderTest.java:116:88:116:91 | sb60 : StrBuilder | provenance | | -| StrBuilderTest.java:116:64:116:70 | taint(...) : String | StrBuilderTest.java:116:45:116:48 | sb60 [post update] : StrBuilder | provenance | MaD:104 | -| StrBuilderTest.java:116:88:116:91 | sb60 : StrBuilder | StrBuilderTest.java:116:88:116:102 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:116:88:116:91 | sb60 : StrBuilder | StrBuilderTest.java:116:88:116:102 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:116:64:116:70 | taint(...) : String | StrBuilderTest.java:116:45:116:48 | sb60 [post update] : StrBuilder | provenance | MaD:98 | +| StrBuilderTest.java:116:88:116:91 | sb60 : StrBuilder | StrBuilderTest.java:116:88:116:102 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:117:45:117:48 | sb61 [post update] : StrBuilder | StrBuilderTest.java:117:94:117:97 | sb61 : StrBuilder | provenance | | -| StrBuilderTest.java:117:79:117:85 | taint(...) : String | StrBuilderTest.java:117:45:117:48 | sb61 [post update] : StrBuilder | provenance | MaD:106 | -| StrBuilderTest.java:117:94:117:97 | sb61 : StrBuilder | StrBuilderTest.java:117:94:117:108 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:117:94:117:97 | sb61 : StrBuilder | StrBuilderTest.java:117:94:117:108 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:117:79:117:85 | taint(...) : String | StrBuilderTest.java:117:45:117:48 | sb61 [post update] : StrBuilder | provenance | MaD:100 | +| StrBuilderTest.java:117:94:117:97 | sb61 : StrBuilder | StrBuilderTest.java:117:94:117:108 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:118:45:118:48 | sb62 [post update] : StrBuilder | StrBuilderTest.java:118:86:118:89 | sb62 : StrBuilder | provenance | | -| StrBuilderTest.java:118:71:118:77 | taint(...) : String | StrBuilderTest.java:118:45:118:48 | sb62 [post update] : StrBuilder | provenance | MaD:106 | -| StrBuilderTest.java:118:86:118:89 | sb62 : StrBuilder | StrBuilderTest.java:118:86:118:100 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:118:86:118:89 | sb62 : StrBuilder | StrBuilderTest.java:118:86:118:100 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:118:71:118:77 | taint(...) : String | StrBuilderTest.java:118:45:118:48 | sb62 [post update] : StrBuilder | provenance | MaD:100 | +| StrBuilderTest.java:118:86:118:89 | sb62 : StrBuilder | StrBuilderTest.java:118:86:118:100 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:120:45:120:48 | sb64 [post update] : StrBuilder | StrBuilderTest.java:120:96:120:99 | sb64 : StrBuilder | provenance | | -| StrBuilderTest.java:120:81:120:87 | taint(...) : String | StrBuilderTest.java:120:45:120:48 | sb64 [post update] : StrBuilder | provenance | MaD:108 | -| StrBuilderTest.java:120:96:120:99 | sb64 : StrBuilder | StrBuilderTest.java:120:96:120:110 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:120:96:120:99 | sb64 : StrBuilder | StrBuilderTest.java:120:96:120:110 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:120:81:120:87 | taint(...) : String | StrBuilderTest.java:120:45:120:48 | sb64 [post update] : StrBuilder | provenance | MaD:102 | +| StrBuilderTest.java:120:96:120:99 | sb64 : StrBuilder | StrBuilderTest.java:120:96:120:110 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:121:45:121:48 | sb65 [post update] : StrBuilder | StrBuilderTest.java:121:88:121:91 | sb65 : StrBuilder | provenance | | -| StrBuilderTest.java:121:73:121:79 | taint(...) : String | StrBuilderTest.java:121:45:121:48 | sb65 [post update] : StrBuilder | provenance | MaD:108 | -| StrBuilderTest.java:121:88:121:91 | sb65 : StrBuilder | StrBuilderTest.java:121:88:121:102 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:121:88:121:91 | sb65 : StrBuilder | StrBuilderTest.java:121:88:121:102 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:121:73:121:79 | taint(...) : String | StrBuilderTest.java:121:45:121:48 | sb65 [post update] : StrBuilder | provenance | MaD:102 | +| StrBuilderTest.java:121:88:121:91 | sb65 : StrBuilder | StrBuilderTest.java:121:88:121:102 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:123:45:123:48 | sb67 [post update] : StrBuilder | StrBuilderTest.java:123:72:123:75 | sb67 : StrBuilder | provenance | | -| StrBuilderTest.java:123:57:123:63 | taint(...) : String | StrBuilderTest.java:123:45:123:48 | sb67 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:123:72:123:75 | sb67 : StrBuilder | StrBuilderTest.java:123:72:123:90 | rightString(...) | provenance | MaD:111 | +| StrBuilderTest.java:123:57:123:63 | taint(...) : String | StrBuilderTest.java:123:45:123:48 | sb67 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:123:72:123:75 | sb67 : StrBuilder | StrBuilderTest.java:123:72:123:90 | rightString(...) | provenance | MaD:105 | | StrBuilderTest.java:124:45:124:48 | sb68 [post update] : StrBuilder | StrBuilderTest.java:124:72:124:75 | sb68 : StrBuilder | provenance | | -| StrBuilderTest.java:124:57:124:63 | taint(...) : String | StrBuilderTest.java:124:45:124:48 | sb68 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:124:72:124:75 | sb68 : StrBuilder | StrBuilderTest.java:124:72:124:93 | subSequence(...) | provenance | MaD:4 | -| StrBuilderTest.java:124:72:124:75 | sb68 : StrBuilder | StrBuilderTest.java:124:72:124:93 | subSequence(...) | provenance | MaD:116 | +| StrBuilderTest.java:124:57:124:63 | taint(...) : String | StrBuilderTest.java:124:45:124:48 | sb68 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:124:72:124:75 | sb68 : StrBuilder | StrBuilderTest.java:124:72:124:93 | subSequence(...) | provenance | MaD:110 | | StrBuilderTest.java:125:45:125:48 | sb69 [post update] : StrBuilder | StrBuilderTest.java:125:72:125:75 | sb69 : StrBuilder | provenance | | -| StrBuilderTest.java:125:57:125:63 | taint(...) : String | StrBuilderTest.java:125:45:125:48 | sb69 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:125:72:125:75 | sb69 : StrBuilder | StrBuilderTest.java:125:72:125:88 | substring(...) | provenance | MaD:117 | +| StrBuilderTest.java:125:57:125:63 | taint(...) : String | StrBuilderTest.java:125:45:125:48 | sb69 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:125:72:125:75 | sb69 : StrBuilder | StrBuilderTest.java:125:72:125:88 | substring(...) | provenance | MaD:111 | | StrBuilderTest.java:126:45:126:48 | sb70 [post update] : StrBuilder | StrBuilderTest.java:126:72:126:75 | sb70 : StrBuilder | provenance | | -| StrBuilderTest.java:126:57:126:63 | taint(...) : String | StrBuilderTest.java:126:45:126:48 | sb70 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:126:72:126:75 | sb70 : StrBuilder | StrBuilderTest.java:126:72:126:91 | substring(...) | provenance | MaD:117 | +| StrBuilderTest.java:126:57:126:63 | taint(...) : String | StrBuilderTest.java:126:45:126:48 | sb70 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:126:72:126:75 | sb70 : StrBuilder | StrBuilderTest.java:126:72:126:91 | substring(...) | provenance | MaD:111 | | StrBuilderTest.java:127:45:127:48 | sb71 [post update] : StrBuilder | StrBuilderTest.java:127:72:127:75 | sb71 : StrBuilder | provenance | | -| StrBuilderTest.java:127:57:127:63 | taint(...) : String | StrBuilderTest.java:127:45:127:48 | sb71 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:127:72:127:75 | sb71 : StrBuilder | StrBuilderTest.java:127:72:127:89 | toCharArray(...) | provenance | MaD:118 | +| StrBuilderTest.java:127:57:127:63 | taint(...) : String | StrBuilderTest.java:127:45:127:48 | sb71 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:127:72:127:75 | sb71 : StrBuilder | StrBuilderTest.java:127:72:127:89 | toCharArray(...) | provenance | MaD:112 | | StrBuilderTest.java:128:45:128:48 | sb72 [post update] : StrBuilder | StrBuilderTest.java:128:72:128:75 | sb72 : StrBuilder | provenance | | -| StrBuilderTest.java:128:57:128:63 | taint(...) : String | StrBuilderTest.java:128:45:128:48 | sb72 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:128:72:128:75 | sb72 : StrBuilder | StrBuilderTest.java:128:72:128:93 | toCharArray(...) | provenance | MaD:118 | +| StrBuilderTest.java:128:57:128:63 | taint(...) : String | StrBuilderTest.java:128:45:128:48 | sb72 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:128:72:128:75 | sb72 : StrBuilder | StrBuilderTest.java:128:72:128:93 | toCharArray(...) | provenance | MaD:112 | | StrBuilderTest.java:129:45:129:48 | sb73 [post update] : StrBuilder | StrBuilderTest.java:129:72:129:75 | sb73 : StrBuilder | provenance | | -| StrBuilderTest.java:129:57:129:63 | taint(...) : String | StrBuilderTest.java:129:45:129:48 | sb73 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:129:72:129:75 | sb73 : StrBuilder | StrBuilderTest.java:129:72:129:92 | toStringBuffer(...) | provenance | MaD:120 | +| StrBuilderTest.java:129:57:129:63 | taint(...) : String | StrBuilderTest.java:129:45:129:48 | sb73 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:129:72:129:75 | sb73 : StrBuilder | StrBuilderTest.java:129:72:129:92 | toStringBuffer(...) | provenance | MaD:114 | | StrBuilderTest.java:130:45:130:48 | sb74 [post update] : StrBuilder | StrBuilderTest.java:130:72:130:75 | sb74 : StrBuilder | provenance | | -| StrBuilderTest.java:130:57:130:63 | taint(...) : String | StrBuilderTest.java:130:45:130:48 | sb74 [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:130:72:130:75 | sb74 : StrBuilder | StrBuilderTest.java:130:72:130:93 | toStringBuilder(...) | provenance | MaD:121 | -| StrBuilderTest.java:135:14:135:58 | append(...) : StrBuilder | StrBuilderTest.java:135:14:135:82 | append(...) : StrBuilder | provenance | MaD:51 | +| StrBuilderTest.java:130:57:130:63 | taint(...) : String | StrBuilderTest.java:130:45:130:48 | sb74 [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:130:72:130:75 | sb74 : StrBuilder | StrBuilderTest.java:130:72:130:93 | toStringBuilder(...) | provenance | MaD:115 | +| StrBuilderTest.java:135:14:135:58 | append(...) : StrBuilder | StrBuilderTest.java:135:14:135:82 | append(...) : StrBuilder | provenance | MaD:45 | | StrBuilderTest.java:135:14:135:58 | append(...) : StrBuilder | StrBuilderTest.java:135:14:135:82 | append(...) : StrBuilder | provenance | ValuePreservingMethod | -| StrBuilderTest.java:135:14:135:82 | append(...) : StrBuilder | StrBuilderTest.java:135:14:135:93 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:135:14:135:82 | append(...) : StrBuilder | StrBuilderTest.java:135:14:135:93 | toString(...) | provenance | MaD:119 | -| StrBuilderTest.java:135:51:135:57 | taint(...) : String | StrBuilderTest.java:135:14:135:58 | append(...) : StrBuilder | provenance | MaD:40+MaD:51 | -| StrBuilderTest.java:138:9:138:45 | append(...) [post update] : StrBuilder | StrBuilderTest.java:139:14:139:31 | fluentBackflowTest : StrBuilder | provenance | MaD:51 | +| StrBuilderTest.java:135:14:135:82 | append(...) : StrBuilder | StrBuilderTest.java:135:14:135:93 | toString(...) | provenance | MaD:113 | +| StrBuilderTest.java:135:51:135:57 | taint(...) : String | StrBuilderTest.java:135:14:135:58 | append(...) : StrBuilder | provenance | MaD:34+MaD:45 | +| StrBuilderTest.java:138:9:138:45 | append(...) [post update] : StrBuilder | StrBuilderTest.java:139:14:139:31 | fluentBackflowTest : StrBuilder | provenance | MaD:45 | | StrBuilderTest.java:138:9:138:45 | append(...) [post update] : StrBuilder | StrBuilderTest.java:139:14:139:31 | fluentBackflowTest : StrBuilder | provenance | ValuePreservingMethod | -| StrBuilderTest.java:138:54:138:60 | taint(...) : String | StrBuilderTest.java:138:9:138:45 | append(...) [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:139:14:139:31 | fluentBackflowTest : StrBuilder | StrBuilderTest.java:139:14:139:42 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:139:14:139:31 | fluentBackflowTest : StrBuilder | StrBuilderTest.java:139:14:139:42 | toString(...) | provenance | MaD:119 | -| StrBuilderTest.java:143:9:143:46 | append(...) [post update] : StrBuilder | StrBuilderTest.java:144:14:144:32 | fluentBackflowTest2 : StrBuilder | provenance | MaD:51 | +| StrBuilderTest.java:138:54:138:60 | taint(...) : String | StrBuilderTest.java:138:9:138:45 | append(...) [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:139:14:139:31 | fluentBackflowTest : StrBuilder | StrBuilderTest.java:139:14:139:42 | toString(...) | provenance | MaD:113 | +| StrBuilderTest.java:143:9:143:46 | append(...) [post update] : StrBuilder | StrBuilderTest.java:144:14:144:32 | fluentBackflowTest2 : StrBuilder | provenance | MaD:45 | | StrBuilderTest.java:143:9:143:46 | append(...) [post update] : StrBuilder | StrBuilderTest.java:144:14:144:32 | fluentBackflowTest2 : StrBuilder | provenance | ValuePreservingMethod | -| StrBuilderTest.java:143:55:143:61 | taint(...) : String | StrBuilderTest.java:143:9:143:46 | append(...) [post update] : StrBuilder | provenance | MaD:40 | -| StrBuilderTest.java:144:14:144:32 | fluentBackflowTest2 : StrBuilder | StrBuilderTest.java:144:14:144:43 | toString(...) | provenance | MaD:5 | -| StrBuilderTest.java:144:14:144:32 | fluentBackflowTest2 : StrBuilder | StrBuilderTest.java:144:14:144:43 | toString(...) | provenance | MaD:119 | +| StrBuilderTest.java:143:55:143:61 | taint(...) : String | StrBuilderTest.java:143:9:143:46 | append(...) [post update] : StrBuilder | provenance | MaD:34 | +| StrBuilderTest.java:144:14:144:32 | fluentBackflowTest2 : StrBuilder | StrBuilderTest.java:144:14:144:43 | toString(...) | provenance | MaD:113 | | StrBuilderTest.java:147:43:147:65 | new StrBuilder(...) : StrBuilder | StrBuilderTest.java:148:14:148:33 | fluentAllMethodsTest : StrBuilder | provenance | | | StrBuilderTest.java:147:43:147:65 | new StrBuilder(...) : StrBuilder | StrBuilderTest.java:148:14:149:23 | append(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:147:43:147:65 | new StrBuilder(...) : StrBuilder | StrBuilderTest.java:148:14:150:26 | appendAll(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1289,9 +1216,9 @@ edges | StrBuilderTest.java:147:43:147:65 | new StrBuilder(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:147:43:147:65 | new StrBuilder(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:147:43:147:65 | new StrBuilder(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:147:58:147:64 | taint(...) : String | StrBuilderTest.java:147:43:147:65 | new StrBuilder(...) : StrBuilder | provenance | MaD:34 | -| StrBuilderTest.java:148:14:148:33 | fluentAllMethodsTest : StrBuilder | StrBuilderTest.java:148:14:149:23 | append(...) : StrBuilder | provenance | MaD:51 | -| StrBuilderTest.java:148:14:149:23 | append(...) : StrBuilder | StrBuilderTest.java:148:14:150:26 | appendAll(...) : StrBuilder | provenance | MaD:55 | +| StrBuilderTest.java:147:58:147:64 | taint(...) : String | StrBuilderTest.java:147:43:147:65 | new StrBuilder(...) : StrBuilder | provenance | MaD:28 | +| StrBuilderTest.java:148:14:148:33 | fluentAllMethodsTest : StrBuilder | StrBuilderTest.java:148:14:149:23 | append(...) : StrBuilder | provenance | MaD:45 | +| StrBuilderTest.java:148:14:149:23 | append(...) : StrBuilder | StrBuilderTest.java:148:14:150:26 | appendAll(...) : StrBuilder | provenance | MaD:49 | | StrBuilderTest.java:148:14:149:23 | append(...) : StrBuilder | StrBuilderTest.java:148:14:150:26 | appendAll(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:149:23 | append(...) : StrBuilder | StrBuilderTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:149:23 | append(...) : StrBuilder | StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1317,7 +1244,7 @@ edges | StrBuilderTest.java:148:14:149:23 | append(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:149:23 | append(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:149:23 | append(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:150:26 | appendAll(...) : StrBuilder | StrBuilderTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | provenance | MaD:57 | +| StrBuilderTest.java:148:14:150:26 | appendAll(...) : StrBuilder | StrBuilderTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | provenance | MaD:51 | | StrBuilderTest.java:148:14:150:26 | appendAll(...) : StrBuilder | StrBuilderTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:150:26 | appendAll(...) : StrBuilder | StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:150:26 | appendAll(...) : StrBuilder | StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1342,7 +1269,7 @@ edges | StrBuilderTest.java:148:14:150:26 | appendAll(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:150:26 | appendAll(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:150:26 | appendAll(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | provenance | MaD:59 | +| StrBuilderTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | provenance | MaD:53 | | StrBuilderTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1366,7 +1293,7 @@ edges | StrBuilderTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | provenance | MaD:85 | +| StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | provenance | MaD:79 | | StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1389,7 +1316,7 @@ edges | StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | provenance | MaD:60 | +| StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | provenance | MaD:54 | | StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1411,7 +1338,7 @@ edges | StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:153:25 | appendln(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | provenance | MaD:61 | +| StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | provenance | MaD:55 | | StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1432,7 +1359,7 @@ edges | StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | provenance | MaD:62 | +| StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | provenance | MaD:56 | | StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1452,7 +1379,7 @@ edges | StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:155:21 | appendNull(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | provenance | MaD:66 | +| StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | provenance | MaD:60 | | StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1471,7 +1398,7 @@ edges | StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | provenance | MaD:72 | +| StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | provenance | MaD:66 | | StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1489,7 +1416,7 @@ edges | StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | provenance | MaD:89 | +| StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | provenance | MaD:83 | | StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1506,7 +1433,7 @@ edges | StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | provenance | MaD:90 | +| StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | provenance | MaD:84 | | StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1522,7 +1449,7 @@ edges | StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:159:21 | delete(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | provenance | MaD:91 | +| StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | provenance | MaD:85 | | StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1537,7 +1464,7 @@ edges | StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | provenance | MaD:92 | +| StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | provenance | MaD:86 | | StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1551,7 +1478,7 @@ edges | StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | provenance | MaD:93 | +| StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | provenance | MaD:87 | | StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1564,7 +1491,7 @@ edges | StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | provenance | MaD:98 | +| StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | provenance | MaD:92 | | StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1576,7 +1503,7 @@ edges | StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | provenance | MaD:101 | +| StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | provenance | MaD:95 | | StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1587,7 +1514,7 @@ edges | StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:164:30 | insert(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | provenance | MaD:105 | +| StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | provenance | MaD:99 | | StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1597,7 +1524,7 @@ edges | StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | provenance | MaD:107 | +| StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | provenance | MaD:101 | | StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | StrBuilderTest.java:148:14:169:18 | reverse(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1606,7 +1533,7 @@ edges | StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:166:37 | replace(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | provenance | MaD:109 | +| StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | provenance | MaD:103 | | StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | StrBuilderTest.java:148:14:169:18 | reverse(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | StrBuilderTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | provenance | ValuePreservingMethod | @@ -1614,413 +1541,349 @@ edges | StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | StrBuilderTest.java:148:14:169:18 | reverse(...) : StrBuilder | provenance | MaD:110 | +| StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | StrBuilderTest.java:148:14:169:18 | reverse(...) : StrBuilder | provenance | MaD:104 | | StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | StrBuilderTest.java:148:14:169:18 | reverse(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | StrBuilderTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | StrBuilderTest.java:148:14:171:23 | setLength(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:169:18 | reverse(...) : StrBuilder | StrBuilderTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | provenance | MaD:112 | +| StrBuilderTest.java:148:14:169:18 | reverse(...) : StrBuilder | StrBuilderTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | provenance | MaD:106 | | StrBuilderTest.java:148:14:169:18 | reverse(...) : StrBuilder | StrBuilderTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:169:18 | reverse(...) : StrBuilder | StrBuilderTest.java:148:14:171:23 | setLength(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:169:18 | reverse(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:169:18 | reverse(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:169:18 | reverse(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:171:23 | setLength(...) : StrBuilder | provenance | MaD:113 | +| StrBuilderTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:171:23 | setLength(...) : StrBuilder | provenance | MaD:107 | | StrBuilderTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:171:23 | setLength(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:171:23 | setLength(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | MaD:114 | +| StrBuilderTest.java:148:14:171:23 | setLength(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | MaD:108 | | StrBuilderTest.java:148:14:171:23 | setLength(...) : StrBuilder | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:171:23 | setLength(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:171:23 | setLength(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | MaD:115 | +| StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | MaD:109 | | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | ValuePreservingMethod | | StrBuilderTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | MaD:122 | +| StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | MaD:116 | | StrBuilderTest.java:148:14:173:28 | setNullText(...) : StrBuilder | StrBuilderTest.java:148:14:174:15 | trim(...) | provenance | ValuePreservingMethod | -| StrBuilderTest.java:178:9:204:15 | trim(...) [post update] : StrBuilder | StrBuilderTest.java:206:14:206:34 | fluentAllMethodsTest2 | provenance | MaD:122 | +| StrBuilderTest.java:178:9:204:15 | trim(...) [post update] : StrBuilder | StrBuilderTest.java:206:14:206:34 | fluentAllMethodsTest2 | provenance | MaD:116 | | StrBuilderTest.java:178:9:204:15 | trim(...) [post update] : StrBuilder | StrBuilderTest.java:206:14:206:34 | fluentAllMethodsTest2 | provenance | ValuePreservingMethod | -| StrBuilderTest.java:205:17:205:23 | taint(...) : String | StrBuilderTest.java:178:9:204:15 | trim(...) [post update] : StrBuilder | provenance | MaD:40 | +| StrBuilderTest.java:205:17:205:23 | taint(...) : String | StrBuilderTest.java:178:9:204:15 | trim(...) [post update] : StrBuilder | provenance | MaD:34 | | StrBuilderTextTest.java:17:28:17:50 | new StrBuilder(...) : StrBuilder | StrBuilderTextTest.java:17:58:17:62 | cons1 : StrBuilder | provenance | | -| StrBuilderTextTest.java:17:43:17:49 | taint(...) : String | StrBuilderTextTest.java:17:28:17:50 | new StrBuilder(...) : StrBuilder | provenance | MaD:418 | -| StrBuilderTextTest.java:17:58:17:62 | cons1 : StrBuilder | StrBuilderTextTest.java:17:58:17:73 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:17:58:17:62 | cons1 : StrBuilder | StrBuilderTextTest.java:17:58:17:73 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:17:43:17:49 | taint(...) : String | StrBuilderTextTest.java:17:28:17:50 | new StrBuilder(...) : StrBuilder | provenance | MaD:412 | +| StrBuilderTextTest.java:17:58:17:62 | cons1 : StrBuilder | StrBuilderTextTest.java:17:58:17:73 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:19:44:19:46 | sb1 [post update] : StrBuilder | StrBuilderTextTest.java:19:84:19:86 | sb1 : StrBuilder | provenance | | -| StrBuilderTextTest.java:19:55:19:61 | taint(...) : String | StrBuilderTextTest.java:19:55:19:75 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTextTest.java:19:55:19:75 | toCharArray(...) : char[] | StrBuilderTextTest.java:19:44:19:46 | sb1 [post update] : StrBuilder | provenance | MaD:419 | -| StrBuilderTextTest.java:19:84:19:86 | sb1 : StrBuilder | StrBuilderTextTest.java:19:84:19:97 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:19:84:19:86 | sb1 : StrBuilder | StrBuilderTextTest.java:19:84:19:97 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:19:55:19:61 | taint(...) : String | StrBuilderTextTest.java:19:55:19:75 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTextTest.java:19:55:19:75 | toCharArray(...) : char[] | StrBuilderTextTest.java:19:44:19:46 | sb1 [post update] : StrBuilder | provenance | MaD:413 | +| StrBuilderTextTest.java:19:84:19:86 | sb1 : StrBuilder | StrBuilderTextTest.java:19:84:19:97 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:20:44:20:46 | sb2 [post update] : StrBuilder | StrBuilderTextTest.java:20:90:20:92 | sb2 : StrBuilder | provenance | | -| StrBuilderTextTest.java:20:55:20:61 | taint(...) : String | StrBuilderTextTest.java:20:55:20:75 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTextTest.java:20:55:20:75 | toCharArray(...) : char[] | StrBuilderTextTest.java:20:44:20:46 | sb2 [post update] : StrBuilder | provenance | MaD:420 | -| StrBuilderTextTest.java:20:90:20:92 | sb2 : StrBuilder | StrBuilderTextTest.java:20:90:20:103 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:20:90:20:92 | sb2 : StrBuilder | StrBuilderTextTest.java:20:90:20:103 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:20:55:20:61 | taint(...) : String | StrBuilderTextTest.java:20:55:20:75 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTextTest.java:20:55:20:75 | toCharArray(...) : char[] | StrBuilderTextTest.java:20:44:20:46 | sb2 [post update] : StrBuilder | provenance | MaD:414 | +| StrBuilderTextTest.java:20:90:20:92 | sb2 : StrBuilder | StrBuilderTextTest.java:20:90:20:103 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:21:44:21:46 | sb3 [post update] : StrBuilder | StrBuilderTextTest.java:21:101:21:103 | sb3 : StrBuilder | provenance | | -| StrBuilderTextTest.java:21:55:21:92 | wrap(...) : CharBuffer | StrBuilderTextTest.java:21:44:21:46 | sb3 [post update] : StrBuilder | provenance | MaD:432 | -| StrBuilderTextTest.java:21:71:21:77 | taint(...) : String | StrBuilderTextTest.java:21:71:21:91 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTextTest.java:21:71:21:91 | toCharArray(...) : char[] | StrBuilderTextTest.java:21:55:21:92 | wrap(...) : CharBuffer | provenance | MaD:10 | -| StrBuilderTextTest.java:21:101:21:103 | sb3 : StrBuilder | StrBuilderTextTest.java:21:101:21:114 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:21:101:21:103 | sb3 : StrBuilder | StrBuilderTextTest.java:21:101:21:114 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:21:55:21:92 | wrap(...) : CharBuffer | StrBuilderTextTest.java:21:44:21:46 | sb3 [post update] : StrBuilder | provenance | MaD:426 | +| StrBuilderTextTest.java:21:71:21:77 | taint(...) : String | StrBuilderTextTest.java:21:71:21:91 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTextTest.java:21:71:21:91 | toCharArray(...) : char[] | StrBuilderTextTest.java:21:55:21:92 | wrap(...) : CharBuffer | provenance | MaD:8 | +| StrBuilderTextTest.java:21:101:21:103 | sb3 : StrBuilder | StrBuilderTextTest.java:21:101:21:114 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:22:44:22:46 | sb4 [post update] : StrBuilder | StrBuilderTextTest.java:22:107:22:109 | sb4 : StrBuilder | provenance | | -| StrBuilderTextTest.java:22:55:22:92 | wrap(...) : CharBuffer | StrBuilderTextTest.java:22:44:22:46 | sb4 [post update] : StrBuilder | provenance | MaD:433 | -| StrBuilderTextTest.java:22:71:22:77 | taint(...) : String | StrBuilderTextTest.java:22:71:22:91 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTextTest.java:22:71:22:91 | toCharArray(...) : char[] | StrBuilderTextTest.java:22:55:22:92 | wrap(...) : CharBuffer | provenance | MaD:10 | -| StrBuilderTextTest.java:22:107:22:109 | sb4 : StrBuilder | StrBuilderTextTest.java:22:107:22:120 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:22:107:22:109 | sb4 : StrBuilder | StrBuilderTextTest.java:22:107:22:120 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:22:55:22:92 | wrap(...) : CharBuffer | StrBuilderTextTest.java:22:44:22:46 | sb4 [post update] : StrBuilder | provenance | MaD:427 | +| StrBuilderTextTest.java:22:71:22:77 | taint(...) : String | StrBuilderTextTest.java:22:71:22:91 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTextTest.java:22:71:22:91 | toCharArray(...) : char[] | StrBuilderTextTest.java:22:55:22:92 | wrap(...) : CharBuffer | provenance | MaD:8 | +| StrBuilderTextTest.java:22:107:22:109 | sb4 : StrBuilder | StrBuilderTextTest.java:22:107:22:120 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:23:44:23:46 | sb5 [post update] : StrBuilder | StrBuilderTextTest.java:23:84:23:86 | sb5 : StrBuilder | provenance | | -| StrBuilderTextTest.java:23:55:23:75 | (...)... : String | StrBuilderTextTest.java:23:44:23:46 | sb5 [post update] : StrBuilder | provenance | MaD:3 | -| StrBuilderTextTest.java:23:55:23:75 | (...)... : String | StrBuilderTextTest.java:23:44:23:46 | sb5 [post update] : StrBuilder | provenance | MaD:421 | +| StrBuilderTextTest.java:23:55:23:75 | (...)... : String | StrBuilderTextTest.java:23:44:23:46 | sb5 [post update] : StrBuilder | provenance | MaD:415 | | StrBuilderTextTest.java:23:69:23:75 | taint(...) : String | StrBuilderTextTest.java:23:55:23:75 | (...)... : String | provenance | | -| StrBuilderTextTest.java:23:84:23:86 | sb5 : StrBuilder | StrBuilderTextTest.java:23:84:23:97 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:23:84:23:86 | sb5 : StrBuilder | StrBuilderTextTest.java:23:84:23:97 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:23:84:23:86 | sb5 : StrBuilder | StrBuilderTextTest.java:23:84:23:97 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:24:44:24:46 | sb6 [post update] : StrBuilder | StrBuilderTextTest.java:24:90:24:92 | sb6 : StrBuilder | provenance | | -| StrBuilderTextTest.java:24:55:24:75 | (...)... : String | StrBuilderTextTest.java:24:44:24:46 | sb6 [post update] : StrBuilder | provenance | MaD:3 | -| StrBuilderTextTest.java:24:55:24:75 | (...)... : String | StrBuilderTextTest.java:24:44:24:46 | sb6 [post update] : StrBuilder | provenance | MaD:422 | +| StrBuilderTextTest.java:24:55:24:75 | (...)... : String | StrBuilderTextTest.java:24:44:24:46 | sb6 [post update] : StrBuilder | provenance | MaD:416 | | StrBuilderTextTest.java:24:69:24:75 | taint(...) : String | StrBuilderTextTest.java:24:55:24:75 | (...)... : String | provenance | | -| StrBuilderTextTest.java:24:90:24:92 | sb6 : StrBuilder | StrBuilderTextTest.java:24:90:24:103 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:24:90:24:92 | sb6 : StrBuilder | StrBuilderTextTest.java:24:90:24:103 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:24:90:24:92 | sb6 : StrBuilder | StrBuilderTextTest.java:24:90:24:103 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:25:44:25:46 | sb7 [post update] : StrBuilder | StrBuilderTextTest.java:25:78:25:80 | sb7 : StrBuilder | provenance | | -| StrBuilderTextTest.java:25:55:25:69 | (...)... : String | StrBuilderTextTest.java:25:44:25:46 | sb7 [post update] : StrBuilder | provenance | MaD:423 | +| StrBuilderTextTest.java:25:55:25:69 | (...)... : String | StrBuilderTextTest.java:25:44:25:46 | sb7 [post update] : StrBuilder | provenance | MaD:417 | | StrBuilderTextTest.java:25:63:25:69 | taint(...) : String | StrBuilderTextTest.java:25:55:25:69 | (...)... : String | provenance | | -| StrBuilderTextTest.java:25:78:25:80 | sb7 : StrBuilder | StrBuilderTextTest.java:25:78:25:91 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:25:78:25:80 | sb7 : StrBuilder | StrBuilderTextTest.java:25:78:25:91 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:25:78:25:80 | sb7 : StrBuilder | StrBuilderTextTest.java:25:78:25:91 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:27:50:27:54 | auxsb [post update] : StrBuilder | StrBuilderTextTest.java:28:59:28:63 | auxsb : StrBuilder | provenance | | -| StrBuilderTextTest.java:27:63:27:69 | taint(...) : String | StrBuilderTextTest.java:27:50:27:54 | auxsb [post update] : StrBuilder | provenance | MaD:424 | +| StrBuilderTextTest.java:27:63:27:69 | taint(...) : String | StrBuilderTextTest.java:27:50:27:54 | auxsb [post update] : StrBuilder | provenance | MaD:418 | | StrBuilderTextTest.java:28:48:28:50 | sb8 [post update] : StrBuilder | StrBuilderTextTest.java:28:72:28:74 | sb8 : StrBuilder | provenance | | -| StrBuilderTextTest.java:28:59:28:63 | auxsb : StrBuilder | StrBuilderTextTest.java:28:48:28:50 | sb8 [post update] : StrBuilder | provenance | MaD:434 | -| StrBuilderTextTest.java:28:72:28:74 | sb8 : StrBuilder | StrBuilderTextTest.java:28:72:28:85 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:28:72:28:74 | sb8 : StrBuilder | StrBuilderTextTest.java:28:72:28:85 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:28:59:28:63 | auxsb : StrBuilder | StrBuilderTextTest.java:28:48:28:50 | sb8 [post update] : StrBuilder | provenance | MaD:428 | +| StrBuilderTextTest.java:28:72:28:74 | sb8 : StrBuilder | StrBuilderTextTest.java:28:72:28:85 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:30:44:30:46 | sb9 [post update] : StrBuilder | StrBuilderTextTest.java:30:88:30:90 | sb9 : StrBuilder | provenance | | -| StrBuilderTextTest.java:30:55:30:79 | new StringBuffer(...) : StringBuffer | StrBuilderTextTest.java:30:44:30:46 | sb9 [post update] : StrBuilder | provenance | MaD:428 | -| StrBuilderTextTest.java:30:72:30:78 | taint(...) : String | StrBuilderTextTest.java:30:55:30:79 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| StrBuilderTextTest.java:30:88:30:90 | sb9 : StrBuilder | StrBuilderTextTest.java:30:88:30:101 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:30:88:30:90 | sb9 : StrBuilder | StrBuilderTextTest.java:30:88:30:101 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:30:55:30:79 | new StringBuffer(...) : StringBuffer | StrBuilderTextTest.java:30:44:30:46 | sb9 [post update] : StrBuilder | provenance | MaD:422 | +| StrBuilderTextTest.java:30:72:30:78 | taint(...) : String | StrBuilderTextTest.java:30:55:30:79 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| StrBuilderTextTest.java:30:88:30:90 | sb9 : StrBuilder | StrBuilderTextTest.java:30:88:30:101 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:31:45:31:48 | sb10 [post update] : StrBuilder | StrBuilderTextTest.java:31:96:31:99 | sb10 : StrBuilder | provenance | | -| StrBuilderTextTest.java:31:57:31:81 | new StringBuffer(...) : StringBuffer | StrBuilderTextTest.java:31:45:31:48 | sb10 [post update] : StrBuilder | provenance | MaD:429 | -| StrBuilderTextTest.java:31:74:31:80 | taint(...) : String | StrBuilderTextTest.java:31:57:31:81 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| StrBuilderTextTest.java:31:96:31:99 | sb10 : StrBuilder | StrBuilderTextTest.java:31:96:31:110 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:31:96:31:99 | sb10 : StrBuilder | StrBuilderTextTest.java:31:96:31:110 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:31:57:31:81 | new StringBuffer(...) : StringBuffer | StrBuilderTextTest.java:31:45:31:48 | sb10 [post update] : StrBuilder | provenance | MaD:423 | +| StrBuilderTextTest.java:31:74:31:80 | taint(...) : String | StrBuilderTextTest.java:31:57:31:81 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| StrBuilderTextTest.java:31:96:31:99 | sb10 : StrBuilder | StrBuilderTextTest.java:31:96:31:110 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:32:45:32:48 | sb11 [post update] : StrBuilder | StrBuilderTextTest.java:32:91:32:94 | sb11 : StrBuilder | provenance | | -| StrBuilderTextTest.java:32:57:32:82 | new StringBuilder(...) : StringBuilder | StrBuilderTextTest.java:32:45:32:48 | sb11 [post update] : StrBuilder | provenance | MaD:430 | -| StrBuilderTextTest.java:32:75:32:81 | taint(...) : String | StrBuilderTextTest.java:32:57:32:82 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| StrBuilderTextTest.java:32:91:32:94 | sb11 : StrBuilder | StrBuilderTextTest.java:32:91:32:105 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:32:91:32:94 | sb11 : StrBuilder | StrBuilderTextTest.java:32:91:32:105 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:32:57:32:82 | new StringBuilder(...) : StringBuilder | StrBuilderTextTest.java:32:45:32:48 | sb11 [post update] : StrBuilder | provenance | MaD:424 | +| StrBuilderTextTest.java:32:75:32:81 | taint(...) : String | StrBuilderTextTest.java:32:57:32:82 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| StrBuilderTextTest.java:32:91:32:94 | sb11 : StrBuilder | StrBuilderTextTest.java:32:91:32:105 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:33:45:33:48 | sb12 [post update] : StrBuilder | StrBuilderTextTest.java:33:97:33:100 | sb12 : StrBuilder | provenance | | -| StrBuilderTextTest.java:33:57:33:82 | new StringBuilder(...) : StringBuilder | StrBuilderTextTest.java:33:45:33:48 | sb12 [post update] : StrBuilder | provenance | MaD:431 | -| StrBuilderTextTest.java:33:75:33:81 | taint(...) : String | StrBuilderTextTest.java:33:57:33:82 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| StrBuilderTextTest.java:33:97:33:100 | sb12 : StrBuilder | StrBuilderTextTest.java:33:97:33:111 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:33:97:33:100 | sb12 : StrBuilder | StrBuilderTextTest.java:33:97:33:111 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:33:57:33:82 | new StringBuilder(...) : StringBuilder | StrBuilderTextTest.java:33:45:33:48 | sb12 [post update] : StrBuilder | provenance | MaD:425 | +| StrBuilderTextTest.java:33:75:33:81 | taint(...) : String | StrBuilderTextTest.java:33:57:33:82 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| StrBuilderTextTest.java:33:97:33:100 | sb12 : StrBuilder | StrBuilderTextTest.java:33:97:33:111 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:34:45:34:48 | sb13 [post update] : StrBuilder | StrBuilderTextTest.java:34:72:34:75 | sb13 : StrBuilder | provenance | | -| StrBuilderTextTest.java:34:57:34:63 | taint(...) : String | StrBuilderTextTest.java:34:45:34:48 | sb13 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:34:72:34:75 | sb13 : StrBuilder | StrBuilderTextTest.java:34:72:34:86 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:34:72:34:75 | sb13 : StrBuilder | StrBuilderTextTest.java:34:72:34:86 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:34:57:34:63 | taint(...) : String | StrBuilderTextTest.java:34:45:34:48 | sb13 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:34:72:34:75 | sb13 : StrBuilder | StrBuilderTextTest.java:34:72:34:86 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:35:45:35:48 | sb14 [post update] : StrBuilder | StrBuilderTextTest.java:35:78:35:81 | sb14 : StrBuilder | provenance | | -| StrBuilderTextTest.java:35:57:35:63 | taint(...) : String | StrBuilderTextTest.java:35:45:35:48 | sb14 [post update] : StrBuilder | provenance | MaD:425 | -| StrBuilderTextTest.java:35:78:35:81 | sb14 : StrBuilder | StrBuilderTextTest.java:35:78:35:92 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:35:78:35:81 | sb14 : StrBuilder | StrBuilderTextTest.java:35:78:35:92 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:35:57:35:63 | taint(...) : String | StrBuilderTextTest.java:35:45:35:48 | sb14 [post update] : StrBuilder | provenance | MaD:419 | +| StrBuilderTextTest.java:35:78:35:81 | sb14 : StrBuilder | StrBuilderTextTest.java:35:78:35:92 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:36:45:36:48 | sb15 [post update] : StrBuilder | StrBuilderTextTest.java:36:90:36:93 | sb15 : StrBuilder | provenance | | -| StrBuilderTextTest.java:36:57:36:63 | taint(...) : String | StrBuilderTextTest.java:36:45:36:48 | sb15 [post update] : StrBuilder | provenance | MaD:426 | -| StrBuilderTextTest.java:36:90:36:93 | sb15 : StrBuilder | StrBuilderTextTest.java:36:90:36:104 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:36:90:36:93 | sb15 : StrBuilder | StrBuilderTextTest.java:36:90:36:104 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:36:57:36:63 | taint(...) : String | StrBuilderTextTest.java:36:45:36:48 | sb15 [post update] : StrBuilder | provenance | MaD:420 | +| StrBuilderTextTest.java:36:90:36:93 | sb15 : StrBuilder | StrBuilderTextTest.java:36:90:36:104 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:37:45:37:48 | sb16 [post update] : StrBuilder | StrBuilderTextTest.java:37:97:37:100 | sb16 : StrBuilder | provenance | | -| StrBuilderTextTest.java:37:45:37:89 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTextTest.java:37:45:37:48 | sb16 [post update] : StrBuilder | provenance | MaD:427 | +| StrBuilderTextTest.java:37:45:37:89 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTextTest.java:37:45:37:48 | sb16 [post update] : StrBuilder | provenance | MaD:421 | | StrBuilderTextTest.java:37:74:37:80 | taint(...) : String | StrBuilderTextTest.java:37:45:37:89 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| StrBuilderTextTest.java:37:97:37:100 | sb16 : StrBuilder | StrBuilderTextTest.java:37:97:37:111 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:37:97:37:100 | sb16 : StrBuilder | StrBuilderTextTest.java:37:97:37:111 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:37:97:37:100 | sb16 : StrBuilder | StrBuilderTextTest.java:37:97:37:111 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:40:13:40:23 | taintedList [post update] : ArrayList [] : String | StrBuilderTextTest.java:41:64:41:74 | taintedList : ArrayList [] : String | provenance | | | StrBuilderTextTest.java:40:13:40:23 | taintedList [post update] : ArrayList [] : String | StrBuilderTextTest.java:42:64:42:74 | taintedList : ArrayList [] : String | provenance | | -| StrBuilderTextTest.java:40:29:40:35 | taint(...) : String | StrBuilderTextTest.java:40:13:40:23 | taintedList [post update] : ArrayList [] : String | provenance | MaD:11 | +| StrBuilderTextTest.java:40:29:40:35 | taint(...) : String | StrBuilderTextTest.java:40:13:40:23 | taintedList [post update] : ArrayList [] : String | provenance | MaD:9 | | StrBuilderTextTest.java:41:49:41:52 | sb17 [post update] : StrBuilder | StrBuilderTextTest.java:41:83:41:86 | sb17 : StrBuilder | provenance | | -| StrBuilderTextTest.java:41:64:41:74 | taintedList : ArrayList [] : String | StrBuilderTextTest.java:41:49:41:52 | sb17 [post update] : StrBuilder | provenance | MaD:436 | -| StrBuilderTextTest.java:41:83:41:86 | sb17 : StrBuilder | StrBuilderTextTest.java:41:83:41:97 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:41:83:41:86 | sb17 : StrBuilder | StrBuilderTextTest.java:41:83:41:97 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:41:64:41:74 | taintedList : ArrayList [] : String | StrBuilderTextTest.java:41:49:41:52 | sb17 [post update] : StrBuilder | provenance | MaD:430 | +| StrBuilderTextTest.java:41:83:41:86 | sb17 : StrBuilder | StrBuilderTextTest.java:41:83:41:97 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:42:49:42:52 | sb18 [post update] : StrBuilder | StrBuilderTextTest.java:42:94:42:97 | sb18 : StrBuilder | provenance | | -| StrBuilderTextTest.java:42:64:42:74 | taintedList : ArrayList [] : String | StrBuilderTextTest.java:42:64:42:85 | iterator(...) : Iterator [] : String | provenance | MaD:6 | -| StrBuilderTextTest.java:42:64:42:85 | iterator(...) : Iterator [] : String | StrBuilderTextTest.java:42:49:42:52 | sb18 [post update] : StrBuilder | provenance | MaD:437 | -| StrBuilderTextTest.java:42:94:42:97 | sb18 : StrBuilder | StrBuilderTextTest.java:42:94:42:108 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:42:94:42:97 | sb18 : StrBuilder | StrBuilderTextTest.java:42:94:42:108 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:42:64:42:74 | taintedList : ArrayList [] : String | StrBuilderTextTest.java:42:64:42:85 | iterator(...) : Iterator [] : String | provenance | MaD:4 | +| StrBuilderTextTest.java:42:64:42:85 | iterator(...) : Iterator [] : String | StrBuilderTextTest.java:42:49:42:52 | sb18 [post update] : StrBuilder | provenance | MaD:431 | +| StrBuilderTextTest.java:42:94:42:97 | sb18 : StrBuilder | StrBuilderTextTest.java:42:94:42:108 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:44:45:44:48 | sb19 [post update] : StrBuilder | StrBuilderTextTest.java:44:84:44:87 | sb19 : StrBuilder | provenance | | -| StrBuilderTextTest.java:44:45:44:76 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTextTest.java:44:45:44:48 | sb19 [post update] : StrBuilder | provenance | MaD:438 | +| StrBuilderTextTest.java:44:45:44:76 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTextTest.java:44:45:44:48 | sb19 [post update] : StrBuilder | provenance | MaD:432 | | StrBuilderTextTest.java:44:69:44:75 | taint(...) : String | StrBuilderTextTest.java:44:45:44:76 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| StrBuilderTextTest.java:44:84:44:87 | sb19 : StrBuilder | StrBuilderTextTest.java:44:84:44:98 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:44:84:44:87 | sb19 : StrBuilder | StrBuilderTextTest.java:44:84:44:98 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:44:84:44:87 | sb19 : StrBuilder | StrBuilderTextTest.java:44:84:44:98 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:45:45:45:48 | sb20 [post update] : StrBuilder | StrBuilderTextTest.java:45:84:45:87 | sb20 : StrBuilder | provenance | | -| StrBuilderTextTest.java:45:45:45:76 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTextTest.java:45:45:45:48 | sb20 [post update] : StrBuilder | provenance | MaD:438 | +| StrBuilderTextTest.java:45:45:45:76 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTextTest.java:45:45:45:48 | sb20 [post update] : StrBuilder | provenance | MaD:432 | | StrBuilderTextTest.java:45:60:45:66 | taint(...) : String | StrBuilderTextTest.java:45:45:45:76 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| StrBuilderTextTest.java:45:84:45:87 | sb20 : StrBuilder | StrBuilderTextTest.java:45:84:45:98 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:45:84:45:87 | sb20 : StrBuilder | StrBuilderTextTest.java:45:84:45:98 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:45:84:45:87 | sb20 : StrBuilder | StrBuilderTextTest.java:45:84:45:98 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:46:45:46:48 | sb21 [post update] : StrBuilder | StrBuilderTextTest.java:46:97:46:100 | sb21 : StrBuilder | provenance | | -| StrBuilderTextTest.java:46:74:46:80 | taint(...) : String | StrBuilderTextTest.java:46:45:46:48 | sb21 [post update] : StrBuilder | provenance | MaD:440 | -| StrBuilderTextTest.java:46:97:46:100 | sb21 : StrBuilder | StrBuilderTextTest.java:46:97:46:111 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:46:97:46:100 | sb21 : StrBuilder | StrBuilderTextTest.java:46:97:46:111 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:46:74:46:80 | taint(...) : String | StrBuilderTextTest.java:46:45:46:48 | sb21 [post update] : StrBuilder | provenance | MaD:434 | +| StrBuilderTextTest.java:46:97:46:100 | sb21 : StrBuilder | StrBuilderTextTest.java:46:97:46:111 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:47:45:47:48 | sb22 [post update] : StrBuilder | StrBuilderTextTest.java:47:98:47:101 | sb22 : StrBuilder | provenance | | -| StrBuilderTextTest.java:47:75:47:81 | taint(...) : String | StrBuilderTextTest.java:47:45:47:48 | sb22 [post update] : StrBuilder | provenance | MaD:442 | -| StrBuilderTextTest.java:47:98:47:101 | sb22 : StrBuilder | StrBuilderTextTest.java:47:98:47:112 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:47:98:47:101 | sb22 : StrBuilder | StrBuilderTextTest.java:47:98:47:112 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:47:75:47:81 | taint(...) : String | StrBuilderTextTest.java:47:45:47:48 | sb22 [post update] : StrBuilder | provenance | MaD:436 | +| StrBuilderTextTest.java:47:98:47:101 | sb22 : StrBuilder | StrBuilderTextTest.java:47:98:47:112 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:48:45:48:48 | sb23 [post update] : StrBuilder | StrBuilderTextTest.java:48:88:48:91 | sb23 : StrBuilder | provenance | | -| StrBuilderTextTest.java:48:59:48:65 | taint(...) : String | StrBuilderTextTest.java:48:59:48:79 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTextTest.java:48:59:48:79 | toCharArray(...) : char[] | StrBuilderTextTest.java:48:45:48:48 | sb23 [post update] : StrBuilder | provenance | MaD:457 | -| StrBuilderTextTest.java:48:88:48:91 | sb23 : StrBuilder | StrBuilderTextTest.java:48:88:48:102 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:48:88:48:91 | sb23 : StrBuilder | StrBuilderTextTest.java:48:88:48:102 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:48:59:48:65 | taint(...) : String | StrBuilderTextTest.java:48:59:48:79 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTextTest.java:48:59:48:79 | toCharArray(...) : char[] | StrBuilderTextTest.java:48:45:48:48 | sb23 [post update] : StrBuilder | provenance | MaD:451 | +| StrBuilderTextTest.java:48:88:48:91 | sb23 : StrBuilder | StrBuilderTextTest.java:48:88:48:102 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:49:45:49:48 | sb24 [post update] : StrBuilder | StrBuilderTextTest.java:49:94:49:97 | sb24 : StrBuilder | provenance | | -| StrBuilderTextTest.java:49:59:49:65 | taint(...) : String | StrBuilderTextTest.java:49:59:49:79 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTextTest.java:49:59:49:79 | toCharArray(...) : char[] | StrBuilderTextTest.java:49:45:49:48 | sb24 [post update] : StrBuilder | provenance | MaD:458 | -| StrBuilderTextTest.java:49:94:49:97 | sb24 : StrBuilder | StrBuilderTextTest.java:49:94:49:108 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:49:94:49:97 | sb24 : StrBuilder | StrBuilderTextTest.java:49:94:49:108 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:49:59:49:65 | taint(...) : String | StrBuilderTextTest.java:49:59:49:79 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTextTest.java:49:59:49:79 | toCharArray(...) : char[] | StrBuilderTextTest.java:49:45:49:48 | sb24 [post update] : StrBuilder | provenance | MaD:452 | +| StrBuilderTextTest.java:49:94:49:97 | sb24 : StrBuilder | StrBuilderTextTest.java:49:94:49:108 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:50:45:50:48 | sb25 [post update] : StrBuilder | StrBuilderTextTest.java:50:82:50:85 | sb25 : StrBuilder | provenance | | -| StrBuilderTextTest.java:50:59:50:73 | (...)... : String | StrBuilderTextTest.java:50:45:50:48 | sb25 [post update] : StrBuilder | provenance | MaD:459 | +| StrBuilderTextTest.java:50:59:50:73 | (...)... : String | StrBuilderTextTest.java:50:45:50:48 | sb25 [post update] : StrBuilder | provenance | MaD:453 | | StrBuilderTextTest.java:50:67:50:73 | taint(...) : String | StrBuilderTextTest.java:50:59:50:73 | (...)... : String | provenance | | -| StrBuilderTextTest.java:50:82:50:85 | sb25 : StrBuilder | StrBuilderTextTest.java:50:82:50:96 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:50:82:50:85 | sb25 : StrBuilder | StrBuilderTextTest.java:50:82:50:96 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:50:82:50:85 | sb25 : StrBuilder | StrBuilderTextTest.java:50:82:50:96 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:52:50:52:54 | auxsb [post update] : StrBuilder | StrBuilderTextTest.java:53:63:53:67 | auxsb : StrBuilder | provenance | | -| StrBuilderTextTest.java:52:65:52:71 | taint(...) : String | StrBuilderTextTest.java:52:50:52:54 | auxsb [post update] : StrBuilder | provenance | MaD:460 | +| StrBuilderTextTest.java:52:65:52:71 | taint(...) : String | StrBuilderTextTest.java:52:50:52:54 | auxsb [post update] : StrBuilder | provenance | MaD:454 | | StrBuilderTextTest.java:53:49:53:52 | sb26 [post update] : StrBuilder | StrBuilderTextTest.java:53:76:53:79 | sb26 : StrBuilder | provenance | | -| StrBuilderTextTest.java:53:63:53:67 | auxsb : StrBuilder | StrBuilderTextTest.java:53:49:53:52 | sb26 [post update] : StrBuilder | provenance | MaD:468 | -| StrBuilderTextTest.java:53:76:53:79 | sb26 : StrBuilder | StrBuilderTextTest.java:53:76:53:90 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:53:76:53:79 | sb26 : StrBuilder | StrBuilderTextTest.java:53:76:53:90 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:53:63:53:67 | auxsb : StrBuilder | StrBuilderTextTest.java:53:49:53:52 | sb26 [post update] : StrBuilder | provenance | MaD:462 | +| StrBuilderTextTest.java:53:76:53:79 | sb26 : StrBuilder | StrBuilderTextTest.java:53:76:53:90 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:55:45:55:48 | sb27 [post update] : StrBuilder | StrBuilderTextTest.java:55:92:55:95 | sb27 : StrBuilder | provenance | | -| StrBuilderTextTest.java:55:59:55:83 | new StringBuffer(...) : StringBuffer | StrBuilderTextTest.java:55:45:55:48 | sb27 [post update] : StrBuilder | provenance | MaD:464 | -| StrBuilderTextTest.java:55:76:55:82 | taint(...) : String | StrBuilderTextTest.java:55:59:55:83 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| StrBuilderTextTest.java:55:92:55:95 | sb27 : StrBuilder | StrBuilderTextTest.java:55:92:55:106 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:55:92:55:95 | sb27 : StrBuilder | StrBuilderTextTest.java:55:92:55:106 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:55:59:55:83 | new StringBuffer(...) : StringBuffer | StrBuilderTextTest.java:55:45:55:48 | sb27 [post update] : StrBuilder | provenance | MaD:458 | +| StrBuilderTextTest.java:55:76:55:82 | taint(...) : String | StrBuilderTextTest.java:55:59:55:83 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| StrBuilderTextTest.java:55:92:55:95 | sb27 : StrBuilder | StrBuilderTextTest.java:55:92:55:106 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:56:45:56:48 | sb28 [post update] : StrBuilder | StrBuilderTextTest.java:56:98:56:101 | sb28 : StrBuilder | provenance | | -| StrBuilderTextTest.java:56:59:56:83 | new StringBuffer(...) : StringBuffer | StrBuilderTextTest.java:56:45:56:48 | sb28 [post update] : StrBuilder | provenance | MaD:465 | -| StrBuilderTextTest.java:56:76:56:82 | taint(...) : String | StrBuilderTextTest.java:56:59:56:83 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| StrBuilderTextTest.java:56:98:56:101 | sb28 : StrBuilder | StrBuilderTextTest.java:56:98:56:112 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:56:98:56:101 | sb28 : StrBuilder | StrBuilderTextTest.java:56:98:56:112 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:56:59:56:83 | new StringBuffer(...) : StringBuffer | StrBuilderTextTest.java:56:45:56:48 | sb28 [post update] : StrBuilder | provenance | MaD:459 | +| StrBuilderTextTest.java:56:76:56:82 | taint(...) : String | StrBuilderTextTest.java:56:59:56:83 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| StrBuilderTextTest.java:56:98:56:101 | sb28 : StrBuilder | StrBuilderTextTest.java:56:98:56:112 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:57:45:57:48 | sb29 [post update] : StrBuilder | StrBuilderTextTest.java:57:93:57:96 | sb29 : StrBuilder | provenance | | -| StrBuilderTextTest.java:57:59:57:84 | new StringBuilder(...) : StringBuilder | StrBuilderTextTest.java:57:45:57:48 | sb29 [post update] : StrBuilder | provenance | MaD:466 | -| StrBuilderTextTest.java:57:77:57:83 | taint(...) : String | StrBuilderTextTest.java:57:59:57:84 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| StrBuilderTextTest.java:57:93:57:96 | sb29 : StrBuilder | StrBuilderTextTest.java:57:93:57:107 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:57:93:57:96 | sb29 : StrBuilder | StrBuilderTextTest.java:57:93:57:107 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:57:59:57:84 | new StringBuilder(...) : StringBuilder | StrBuilderTextTest.java:57:45:57:48 | sb29 [post update] : StrBuilder | provenance | MaD:460 | +| StrBuilderTextTest.java:57:77:57:83 | taint(...) : String | StrBuilderTextTest.java:57:59:57:84 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| StrBuilderTextTest.java:57:93:57:96 | sb29 : StrBuilder | StrBuilderTextTest.java:57:93:57:107 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:58:45:58:48 | sb30 [post update] : StrBuilder | StrBuilderTextTest.java:58:99:58:102 | sb30 : StrBuilder | provenance | | -| StrBuilderTextTest.java:58:59:58:84 | new StringBuilder(...) : StringBuilder | StrBuilderTextTest.java:58:45:58:48 | sb30 [post update] : StrBuilder | provenance | MaD:467 | -| StrBuilderTextTest.java:58:77:58:83 | taint(...) : String | StrBuilderTextTest.java:58:59:58:84 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| StrBuilderTextTest.java:58:99:58:102 | sb30 : StrBuilder | StrBuilderTextTest.java:58:99:58:113 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:58:99:58:102 | sb30 : StrBuilder | StrBuilderTextTest.java:58:99:58:113 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:58:59:58:84 | new StringBuilder(...) : StringBuilder | StrBuilderTextTest.java:58:45:58:48 | sb30 [post update] : StrBuilder | provenance | MaD:461 | +| StrBuilderTextTest.java:58:77:58:83 | taint(...) : String | StrBuilderTextTest.java:58:59:58:84 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| StrBuilderTextTest.java:58:99:58:102 | sb30 : StrBuilder | StrBuilderTextTest.java:58:99:58:113 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:59:45:59:48 | sb31 [post update] : StrBuilder | StrBuilderTextTest.java:59:74:59:77 | sb31 : StrBuilder | provenance | | -| StrBuilderTextTest.java:59:59:59:65 | taint(...) : String | StrBuilderTextTest.java:59:45:59:48 | sb31 [post update] : StrBuilder | provenance | MaD:460 | -| StrBuilderTextTest.java:59:74:59:77 | sb31 : StrBuilder | StrBuilderTextTest.java:59:74:59:88 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:59:74:59:77 | sb31 : StrBuilder | StrBuilderTextTest.java:59:74:59:88 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:59:59:59:65 | taint(...) : String | StrBuilderTextTest.java:59:45:59:48 | sb31 [post update] : StrBuilder | provenance | MaD:454 | +| StrBuilderTextTest.java:59:74:59:77 | sb31 : StrBuilder | StrBuilderTextTest.java:59:74:59:88 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:60:45:60:48 | sb32 [post update] : StrBuilder | StrBuilderTextTest.java:60:80:60:83 | sb32 : StrBuilder | provenance | | -| StrBuilderTextTest.java:60:59:60:65 | taint(...) : String | StrBuilderTextTest.java:60:45:60:48 | sb32 [post update] : StrBuilder | provenance | MaD:461 | -| StrBuilderTextTest.java:60:80:60:83 | sb32 : StrBuilder | StrBuilderTextTest.java:60:80:60:94 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:60:80:60:83 | sb32 : StrBuilder | StrBuilderTextTest.java:60:80:60:94 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:60:59:60:65 | taint(...) : String | StrBuilderTextTest.java:60:45:60:48 | sb32 [post update] : StrBuilder | provenance | MaD:455 | +| StrBuilderTextTest.java:60:80:60:83 | sb32 : StrBuilder | StrBuilderTextTest.java:60:80:60:94 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:61:45:61:48 | sb33 [post update] : StrBuilder | StrBuilderTextTest.java:61:92:61:95 | sb33 : StrBuilder | provenance | | -| StrBuilderTextTest.java:61:59:61:65 | taint(...) : String | StrBuilderTextTest.java:61:45:61:48 | sb33 [post update] : StrBuilder | provenance | MaD:462 | -| StrBuilderTextTest.java:61:92:61:95 | sb33 : StrBuilder | StrBuilderTextTest.java:61:92:61:106 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:61:92:61:95 | sb33 : StrBuilder | StrBuilderTextTest.java:61:92:61:106 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:61:59:61:65 | taint(...) : String | StrBuilderTextTest.java:61:45:61:48 | sb33 [post update] : StrBuilder | provenance | MaD:456 | +| StrBuilderTextTest.java:61:92:61:95 | sb33 : StrBuilder | StrBuilderTextTest.java:61:92:61:106 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:62:45:62:48 | sb34 [post update] : StrBuilder | StrBuilderTextTest.java:62:99:62:102 | sb34 : StrBuilder | provenance | | -| StrBuilderTextTest.java:62:45:62:91 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTextTest.java:62:45:62:48 | sb34 [post update] : StrBuilder | provenance | MaD:463 | +| StrBuilderTextTest.java:62:45:62:91 | new ..[] { .. } : Object[] [[]] : String | StrBuilderTextTest.java:62:45:62:48 | sb34 [post update] : StrBuilder | provenance | MaD:457 | | StrBuilderTextTest.java:62:76:62:82 | taint(...) : String | StrBuilderTextTest.java:62:45:62:91 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| StrBuilderTextTest.java:62:99:62:102 | sb34 : StrBuilder | StrBuilderTextTest.java:62:99:62:113 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:62:99:62:102 | sb34 : StrBuilder | StrBuilderTextTest.java:62:99:62:113 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:62:99:62:102 | sb34 : StrBuilder | StrBuilderTextTest.java:62:99:62:113 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:63:45:63:48 | sb35 [post update] : StrBuilder | StrBuilderTextTest.java:63:81:63:84 | sb35 : StrBuilder | provenance | | -| StrBuilderTextTest.java:63:66:63:72 | taint(...) : String | StrBuilderTextTest.java:63:45:63:48 | sb35 [post update] : StrBuilder | provenance | MaD:447 | -| StrBuilderTextTest.java:63:81:63:84 | sb35 : StrBuilder | StrBuilderTextTest.java:63:81:63:95 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:63:81:63:84 | sb35 : StrBuilder | StrBuilderTextTest.java:63:81:63:95 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:63:66:63:72 | taint(...) : String | StrBuilderTextTest.java:63:45:63:48 | sb35 [post update] : StrBuilder | provenance | MaD:441 | +| StrBuilderTextTest.java:63:81:63:84 | sb35 : StrBuilder | StrBuilderTextTest.java:63:81:63:95 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:64:45:64:48 | sb36 [post update] : StrBuilder | StrBuilderTextTest.java:64:84:64:87 | sb36 : StrBuilder | provenance | | -| StrBuilderTextTest.java:64:66:64:72 | taint(...) : String | StrBuilderTextTest.java:64:45:64:48 | sb36 [post update] : StrBuilder | provenance | MaD:448 | -| StrBuilderTextTest.java:64:84:64:87 | sb36 : StrBuilder | StrBuilderTextTest.java:64:84:64:98 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:64:84:64:87 | sb36 : StrBuilder | StrBuilderTextTest.java:64:84:64:98 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:64:66:64:72 | taint(...) : String | StrBuilderTextTest.java:64:45:64:48 | sb36 [post update] : StrBuilder | provenance | MaD:442 | +| StrBuilderTextTest.java:64:84:64:87 | sb36 : StrBuilder | StrBuilderTextTest.java:64:84:64:98 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:65:45:65:48 | sb37 [post update] : StrBuilder | StrBuilderTextTest.java:65:92:65:95 | sb37 : StrBuilder | provenance | | -| StrBuilderTextTest.java:65:66:65:72 | taint(...) : String | StrBuilderTextTest.java:65:45:65:48 | sb37 [post update] : StrBuilder | provenance | MaD:449 | -| StrBuilderTextTest.java:65:92:65:95 | sb37 : StrBuilder | StrBuilderTextTest.java:65:92:65:106 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:65:92:65:95 | sb37 : StrBuilder | StrBuilderTextTest.java:65:92:65:106 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:65:66:65:72 | taint(...) : String | StrBuilderTextTest.java:65:45:65:48 | sb37 [post update] : StrBuilder | provenance | MaD:443 | +| StrBuilderTextTest.java:65:92:65:95 | sb37 : StrBuilder | StrBuilderTextTest.java:65:92:65:106 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:66:45:66:48 | sb38 [post update] : StrBuilder | StrBuilderTextTest.java:66:85:66:88 | sb38 : StrBuilder | provenance | | -| StrBuilderTextTest.java:66:70:66:76 | taint(...) : String | StrBuilderTextTest.java:66:45:66:48 | sb38 [post update] : StrBuilder | provenance | MaD:449 | -| StrBuilderTextTest.java:66:85:66:88 | sb38 : StrBuilder | StrBuilderTextTest.java:66:85:66:99 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:66:85:66:88 | sb38 : StrBuilder | StrBuilderTextTest.java:66:85:66:99 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:66:70:66:76 | taint(...) : String | StrBuilderTextTest.java:66:45:66:48 | sb38 [post update] : StrBuilder | provenance | MaD:443 | +| StrBuilderTextTest.java:66:85:66:88 | sb38 : StrBuilder | StrBuilderTextTest.java:66:85:66:99 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:68:50:68:54 | auxsb [post update] : StrBuilder | StrBuilderTextTest.java:69:49:69:53 | auxsb : StrBuilder | provenance | | -| StrBuilderTextTest.java:68:65:68:71 | taint(...) : String | StrBuilderTextTest.java:68:50:68:54 | auxsb [post update] : StrBuilder | provenance | MaD:460 | -| StrBuilderTextTest.java:69:49:69:53 | auxsb : StrBuilder | StrBuilderTextTest.java:69:64:69:67 | sb39 [post update] : StrBuilder | provenance | MaD:451 | +| StrBuilderTextTest.java:68:65:68:71 | taint(...) : String | StrBuilderTextTest.java:68:50:68:54 | auxsb [post update] : StrBuilder | provenance | MaD:454 | +| StrBuilderTextTest.java:69:49:69:53 | auxsb : StrBuilder | StrBuilderTextTest.java:69:64:69:67 | sb39 [post update] : StrBuilder | provenance | MaD:445 | | StrBuilderTextTest.java:69:64:69:67 | sb39 [post update] : StrBuilder | StrBuilderTextTest.java:69:76:69:79 | sb39 : StrBuilder | provenance | | -| StrBuilderTextTest.java:69:76:69:79 | sb39 : StrBuilder | StrBuilderTextTest.java:69:76:69:90 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:69:76:69:79 | sb39 : StrBuilder | StrBuilderTextTest.java:69:76:69:90 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:69:76:69:79 | sb39 : StrBuilder | StrBuilderTextTest.java:69:76:69:90 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:73:13:73:23 | taintedList [post update] : ArrayList [] : String | StrBuilderTextTest.java:74:75:74:85 | taintedList : ArrayList [] : String | provenance | | | StrBuilderTextTest.java:73:13:73:23 | taintedList [post update] : ArrayList [] : String | StrBuilderTextTest.java:75:75:75:85 | taintedList : ArrayList [] : String | provenance | | -| StrBuilderTextTest.java:73:29:73:35 | taint(...) : String | StrBuilderTextTest.java:73:13:73:23 | taintedList [post update] : ArrayList [] : String | provenance | MaD:11 | +| StrBuilderTextTest.java:73:29:73:35 | taint(...) : String | StrBuilderTextTest.java:73:13:73:23 | taintedList [post update] : ArrayList [] : String | provenance | MaD:9 | | StrBuilderTextTest.java:74:49:74:52 | sb40 [post update] : StrBuilder | StrBuilderTextTest.java:74:100:74:103 | sb40 : StrBuilder | provenance | | -| StrBuilderTextTest.java:74:75:74:85 | taintedList : ArrayList [] : String | StrBuilderTextTest.java:74:49:74:52 | sb40 [post update] : StrBuilder | provenance | MaD:452 | -| StrBuilderTextTest.java:74:100:74:103 | sb40 : StrBuilder | StrBuilderTextTest.java:74:100:74:114 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:74:100:74:103 | sb40 : StrBuilder | StrBuilderTextTest.java:74:100:74:114 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:74:75:74:85 | taintedList : ArrayList [] : String | StrBuilderTextTest.java:74:49:74:52 | sb40 [post update] : StrBuilder | provenance | MaD:446 | +| StrBuilderTextTest.java:74:100:74:103 | sb40 : StrBuilder | StrBuilderTextTest.java:74:100:74:114 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:75:49:75:52 | sb41 [post update] : StrBuilder | StrBuilderTextTest.java:75:111:75:114 | sb41 : StrBuilder | provenance | | -| StrBuilderTextTest.java:75:75:75:85 | taintedList : ArrayList [] : String | StrBuilderTextTest.java:75:75:75:96 | iterator(...) : Iterator [] : String | provenance | MaD:6 | -| StrBuilderTextTest.java:75:75:75:96 | iterator(...) : Iterator [] : String | StrBuilderTextTest.java:75:49:75:52 | sb41 [post update] : StrBuilder | provenance | MaD:453 | -| StrBuilderTextTest.java:75:111:75:114 | sb41 : StrBuilder | StrBuilderTextTest.java:75:111:75:125 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:75:111:75:114 | sb41 : StrBuilder | StrBuilderTextTest.java:75:111:75:125 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:75:75:75:85 | taintedList : ArrayList [] : String | StrBuilderTextTest.java:75:75:75:96 | iterator(...) : Iterator [] : String | provenance | MaD:4 | +| StrBuilderTextTest.java:75:75:75:96 | iterator(...) : Iterator [] : String | StrBuilderTextTest.java:75:49:75:52 | sb41 [post update] : StrBuilder | provenance | MaD:447 | +| StrBuilderTextTest.java:75:111:75:114 | sb41 : StrBuilder | StrBuilderTextTest.java:75:111:75:125 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:77:49:77:52 | sb42 [post update] : StrBuilder | StrBuilderTextTest.java:77:105:77:108 | sb42 : StrBuilder | provenance | | -| StrBuilderTextTest.java:77:90:77:96 | taint(...) : String | StrBuilderTextTest.java:77:49:77:52 | sb42 [post update] : StrBuilder | provenance | MaD:455 | -| StrBuilderTextTest.java:77:105:77:108 | sb42 : StrBuilder | StrBuilderTextTest.java:77:105:77:119 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:77:105:77:108 | sb42 : StrBuilder | StrBuilderTextTest.java:77:105:77:119 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:77:90:77:96 | taint(...) : String | StrBuilderTextTest.java:77:49:77:52 | sb42 [post update] : StrBuilder | provenance | MaD:449 | +| StrBuilderTextTest.java:77:105:77:108 | sb42 : StrBuilder | StrBuilderTextTest.java:77:105:77:119 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:78:49:78:52 | sb43 [post update] : StrBuilder | StrBuilderTextTest.java:78:116:78:119 | sb43 : StrBuilder | provenance | | -| StrBuilderTextTest.java:78:101:78:107 | taint(...) : String | StrBuilderTextTest.java:78:49:78:52 | sb43 [post update] : StrBuilder | provenance | MaD:455 | -| StrBuilderTextTest.java:78:116:78:119 | sb43 : StrBuilder | StrBuilderTextTest.java:78:116:78:130 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:78:116:78:119 | sb43 : StrBuilder | StrBuilderTextTest.java:78:116:78:130 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:78:101:78:107 | taint(...) : String | StrBuilderTextTest.java:78:49:78:52 | sb43 [post update] : StrBuilder | provenance | MaD:449 | +| StrBuilderTextTest.java:78:116:78:119 | sb43 : StrBuilder | StrBuilderTextTest.java:78:116:78:130 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:79:37:79:60 | {...} : String[] [[]] : String | StrBuilderTextTest.java:81:75:81:86 | taintedArray : String[] [[]] : String | provenance | | | StrBuilderTextTest.java:79:52:79:58 | taint(...) : String | StrBuilderTextTest.java:79:37:79:60 | {...} : String[] [[]] : String | provenance | | | StrBuilderTextTest.java:81:49:81:52 | sb44 [post update] : StrBuilder | StrBuilderTextTest.java:81:101:81:104 | sb44 : StrBuilder | provenance | | -| StrBuilderTextTest.java:81:75:81:86 | taintedArray : String[] [[]] : String | StrBuilderTextTest.java:81:49:81:52 | sb44 [post update] : StrBuilder | provenance | MaD:454 | -| StrBuilderTextTest.java:81:101:81:104 | sb44 : StrBuilder | StrBuilderTextTest.java:81:101:81:115 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:81:101:81:104 | sb44 : StrBuilder | StrBuilderTextTest.java:81:101:81:115 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:81:75:81:86 | taintedArray : String[] [[]] : String | StrBuilderTextTest.java:81:49:81:52 | sb44 [post update] : StrBuilder | provenance | MaD:448 | +| StrBuilderTextTest.java:81:101:81:104 | sb44 : StrBuilder | StrBuilderTextTest.java:81:101:81:115 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:82:49:82:52 | sb45 [post update] : StrBuilder | StrBuilderTextTest.java:82:106:82:109 | sb45 : StrBuilder | provenance | | -| StrBuilderTextTest.java:82:91:82:97 | taint(...) : String | StrBuilderTextTest.java:82:49:82:52 | sb45 [post update] : StrBuilder | provenance | MaD:455 | -| StrBuilderTextTest.java:82:106:82:109 | sb45 : StrBuilder | StrBuilderTextTest.java:82:106:82:120 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:82:106:82:109 | sb45 : StrBuilder | StrBuilderTextTest.java:82:106:82:120 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:82:91:82:97 | taint(...) : String | StrBuilderTextTest.java:82:49:82:52 | sb45 [post update] : StrBuilder | provenance | MaD:449 | +| StrBuilderTextTest.java:82:106:82:109 | sb45 : StrBuilder | StrBuilderTextTest.java:82:106:82:120 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:85:49:85:52 | sb46 [post update] : StrBuilder | StrBuilderTextTest.java:87:13:87:16 | sb46 : StrBuilder | provenance | | -| StrBuilderTextTest.java:85:61:85:67 | taint(...) : String | StrBuilderTextTest.java:85:49:85:52 | sb46 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:87:13:87:16 | sb46 : StrBuilder | StrBuilderTextTest.java:87:13:87:27 | asReader(...) : Reader | provenance | MaD:470 | +| StrBuilderTextTest.java:85:61:85:67 | taint(...) : String | StrBuilderTextTest.java:85:49:85:52 | sb46 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:87:13:87:16 | sb46 : StrBuilder | StrBuilderTextTest.java:87:13:87:27 | asReader(...) : Reader | provenance | MaD:464 | | StrBuilderTextTest.java:87:13:87:27 | asReader(...) : Reader | StrBuilderTextTest.java:87:34:87:39 | target [post update] : char[] | provenance | MaD:1 | | StrBuilderTextTest.java:87:34:87:39 | target [post update] : char[] | StrBuilderTextTest.java:88:18:88:23 | target | provenance | | | StrBuilderTextTest.java:90:45:90:48 | sb47 [post update] : StrBuilder | StrBuilderTextTest.java:90:72:90:75 | sb47 : StrBuilder | provenance | | -| StrBuilderTextTest.java:90:57:90:63 | taint(...) : String | StrBuilderTextTest.java:90:45:90:48 | sb47 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:90:72:90:75 | sb47 : StrBuilder | StrBuilderTextTest.java:90:72:90:89 | asTokenizer(...) : StrTokenizer | provenance | MaD:471 | -| StrBuilderTextTest.java:90:72:90:89 | asTokenizer(...) : StrTokenizer | StrBuilderTextTest.java:90:72:90:96 | next(...) | provenance | MaD:13 | -| StrBuilderTextTest.java:90:72:90:89 | asTokenizer(...) : StrTokenizer | StrBuilderTextTest.java:90:72:90:96 | next(...) | provenance | MaD:514 | +| StrBuilderTextTest.java:90:57:90:63 | taint(...) : String | StrBuilderTextTest.java:90:45:90:48 | sb47 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:90:72:90:75 | sb47 : StrBuilder | StrBuilderTextTest.java:90:72:90:89 | asTokenizer(...) : StrTokenizer | provenance | MaD:465 | +| StrBuilderTextTest.java:90:72:90:89 | asTokenizer(...) : StrTokenizer | StrBuilderTextTest.java:90:72:90:96 | next(...) | provenance | MaD:508 | | StrBuilderTextTest.java:91:45:91:48 | sb48 [post update] : StrBuilder | StrBuilderTextTest.java:91:72:91:75 | sb48 : StrBuilder | provenance | | -| StrBuilderTextTest.java:91:57:91:63 | taint(...) : String | StrBuilderTextTest.java:91:45:91:48 | sb48 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:91:72:91:75 | sb48 : StrBuilder | StrBuilderTextTest.java:91:72:91:83 | build(...) | provenance | MaD:472 | +| StrBuilderTextTest.java:91:57:91:63 | taint(...) : String | StrBuilderTextTest.java:91:45:91:48 | sb48 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:91:72:91:75 | sb48 : StrBuilder | StrBuilderTextTest.java:91:72:91:83 | build(...) | provenance | MaD:466 | | StrBuilderTextTest.java:92:45:92:48 | sb49 [post update] : StrBuilder | StrBuilderTextTest.java:92:72:92:75 | sb49 : StrBuilder | provenance | | -| StrBuilderTextTest.java:92:57:92:63 | taint(...) : String | StrBuilderTextTest.java:92:45:92:48 | sb49 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:92:72:92:75 | sb49 : StrBuilder | StrBuilderTextTest.java:92:72:92:90 | getChars(...) | provenance | MaD:479 | +| StrBuilderTextTest.java:92:57:92:63 | taint(...) : String | StrBuilderTextTest.java:92:45:92:48 | sb49 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:92:72:92:75 | sb49 : StrBuilder | StrBuilderTextTest.java:92:72:92:90 | getChars(...) | provenance | MaD:473 | | StrBuilderTextTest.java:94:49:94:52 | sb50 [post update] : StrBuilder | StrBuilderTextTest.java:96:13:96:16 | sb50 : StrBuilder | provenance | | -| StrBuilderTextTest.java:94:61:94:67 | taint(...) : String | StrBuilderTextTest.java:94:49:94:52 | sb50 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:96:13:96:16 | sb50 : StrBuilder | StrBuilderTextTest.java:96:27:96:32 | target [post update] : char[] | provenance | MaD:478 | +| StrBuilderTextTest.java:94:61:94:67 | taint(...) : String | StrBuilderTextTest.java:94:49:94:52 | sb50 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:96:13:96:16 | sb50 : StrBuilder | StrBuilderTextTest.java:96:27:96:32 | target [post update] : char[] | provenance | MaD:472 | | StrBuilderTextTest.java:96:27:96:32 | target [post update] : char[] | StrBuilderTextTest.java:97:18:97:23 | target | provenance | | | StrBuilderTextTest.java:100:49:100:52 | sb51 [post update] : StrBuilder | StrBuilderTextTest.java:102:13:102:16 | sb51 : StrBuilder | provenance | | -| StrBuilderTextTest.java:100:61:100:67 | taint(...) : String | StrBuilderTextTest.java:100:49:100:52 | sb51 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:102:13:102:16 | sb51 : StrBuilder | StrBuilderTextTest.java:102:33:102:38 | target [post update] : char[] | provenance | MaD:480 | +| StrBuilderTextTest.java:100:61:100:67 | taint(...) : String | StrBuilderTextTest.java:100:49:100:52 | sb51 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:102:13:102:16 | sb51 : StrBuilder | StrBuilderTextTest.java:102:33:102:38 | target [post update] : char[] | provenance | MaD:474 | | StrBuilderTextTest.java:102:33:102:38 | target [post update] : char[] | StrBuilderTextTest.java:103:18:103:23 | target | provenance | | | StrBuilderTextTest.java:105:45:105:48 | sb52 [post update] : StrBuilder | StrBuilderTextTest.java:105:89:105:92 | sb52 : StrBuilder | provenance | | -| StrBuilderTextTest.java:105:60:105:66 | taint(...) : String | StrBuilderTextTest.java:105:60:105:80 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTextTest.java:105:60:105:80 | toCharArray(...) : char[] | StrBuilderTextTest.java:105:45:105:48 | sb52 [post update] : StrBuilder | provenance | MaD:481 | -| StrBuilderTextTest.java:105:89:105:92 | sb52 : StrBuilder | StrBuilderTextTest.java:105:89:105:103 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:105:89:105:92 | sb52 : StrBuilder | StrBuilderTextTest.java:105:89:105:103 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:105:60:105:66 | taint(...) : String | StrBuilderTextTest.java:105:60:105:80 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTextTest.java:105:60:105:80 | toCharArray(...) : char[] | StrBuilderTextTest.java:105:45:105:48 | sb52 [post update] : StrBuilder | provenance | MaD:475 | +| StrBuilderTextTest.java:105:89:105:92 | sb52 : StrBuilder | StrBuilderTextTest.java:105:89:105:103 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:106:45:106:48 | sb53 [post update] : StrBuilder | StrBuilderTextTest.java:106:95:106:98 | sb53 : StrBuilder | provenance | | -| StrBuilderTextTest.java:106:60:106:66 | taint(...) : String | StrBuilderTextTest.java:106:60:106:80 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrBuilderTextTest.java:106:60:106:80 | toCharArray(...) : char[] | StrBuilderTextTest.java:106:45:106:48 | sb53 [post update] : StrBuilder | provenance | MaD:481 | -| StrBuilderTextTest.java:106:95:106:98 | sb53 : StrBuilder | StrBuilderTextTest.java:106:95:106:109 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:106:95:106:98 | sb53 : StrBuilder | StrBuilderTextTest.java:106:95:106:109 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:106:60:106:66 | taint(...) : String | StrBuilderTextTest.java:106:60:106:80 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrBuilderTextTest.java:106:60:106:80 | toCharArray(...) : char[] | StrBuilderTextTest.java:106:45:106:48 | sb53 [post update] : StrBuilder | provenance | MaD:475 | +| StrBuilderTextTest.java:106:95:106:98 | sb53 : StrBuilder | StrBuilderTextTest.java:106:95:106:109 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:107:45:107:48 | sb54 [post update] : StrBuilder | StrBuilderTextTest.java:107:75:107:78 | sb54 : StrBuilder | provenance | | -| StrBuilderTextTest.java:107:60:107:66 | taint(...) : String | StrBuilderTextTest.java:107:45:107:48 | sb54 [post update] : StrBuilder | provenance | MaD:481 | -| StrBuilderTextTest.java:107:75:107:78 | sb54 : StrBuilder | StrBuilderTextTest.java:107:75:107:89 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:107:75:107:78 | sb54 : StrBuilder | StrBuilderTextTest.java:107:75:107:89 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:107:60:107:66 | taint(...) : String | StrBuilderTextTest.java:107:45:107:48 | sb54 [post update] : StrBuilder | provenance | MaD:475 | +| StrBuilderTextTest.java:107:75:107:78 | sb54 : StrBuilder | StrBuilderTextTest.java:107:75:107:89 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:108:45:108:48 | sb55 [post update] : StrBuilder | StrBuilderTextTest.java:108:83:108:86 | sb55 : StrBuilder | provenance | | -| StrBuilderTextTest.java:108:60:108:74 | (...)... : String | StrBuilderTextTest.java:108:45:108:48 | sb55 [post update] : StrBuilder | provenance | MaD:481 | +| StrBuilderTextTest.java:108:60:108:74 | (...)... : String | StrBuilderTextTest.java:108:45:108:48 | sb55 [post update] : StrBuilder | provenance | MaD:475 | | StrBuilderTextTest.java:108:68:108:74 | taint(...) : String | StrBuilderTextTest.java:108:60:108:74 | (...)... : String | provenance | | -| StrBuilderTextTest.java:108:83:108:86 | sb55 : StrBuilder | StrBuilderTextTest.java:108:83:108:97 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:108:83:108:86 | sb55 : StrBuilder | StrBuilderTextTest.java:108:83:108:97 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:108:83:108:86 | sb55 : StrBuilder | StrBuilderTextTest.java:108:83:108:97 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:109:45:109:48 | sb56 [post update] : StrBuilder | StrBuilderTextTest.java:109:72:109:75 | sb56 : StrBuilder | provenance | | -| StrBuilderTextTest.java:109:57:109:63 | taint(...) : String | StrBuilderTextTest.java:109:45:109:48 | sb56 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:109:72:109:75 | sb56 : StrBuilder | StrBuilderTextTest.java:109:72:109:89 | leftString(...) | provenance | MaD:483 | +| StrBuilderTextTest.java:109:57:109:63 | taint(...) : String | StrBuilderTextTest.java:109:45:109:48 | sb56 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:109:72:109:75 | sb56 : StrBuilder | StrBuilderTextTest.java:109:72:109:89 | leftString(...) | provenance | MaD:477 | | StrBuilderTextTest.java:110:45:110:48 | sb57 [post update] : StrBuilder | StrBuilderTextTest.java:110:72:110:75 | sb57 : StrBuilder | provenance | | -| StrBuilderTextTest.java:110:57:110:63 | taint(...) : String | StrBuilderTextTest.java:110:45:110:48 | sb57 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:110:72:110:75 | sb57 : StrBuilder | StrBuilderTextTest.java:110:72:110:91 | midString(...) | provenance | MaD:484 | +| StrBuilderTextTest.java:110:57:110:63 | taint(...) : String | StrBuilderTextTest.java:110:45:110:48 | sb57 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:110:72:110:75 | sb57 : StrBuilder | StrBuilderTextTest.java:110:72:110:91 | midString(...) | provenance | MaD:478 | | StrBuilderTextTest.java:112:35:112:59 | new StringReader(...) : StringReader | StrBuilderTextTest.java:113:63:113:68 | reader : StringReader | provenance | | | StrBuilderTextTest.java:112:52:112:58 | taint(...) : String | StrBuilderTextTest.java:112:35:112:59 | new StringReader(...) : StringReader | provenance | MaD:2 | | StrBuilderTextTest.java:113:49:113:52 | sb58 [post update] : StrBuilder | StrBuilderTextTest.java:113:77:113:80 | sb58 : StrBuilder | provenance | | -| StrBuilderTextTest.java:113:63:113:68 | reader : StringReader | StrBuilderTextTest.java:113:49:113:52 | sb58 [post update] : StrBuilder | provenance | MaD:486 | -| StrBuilderTextTest.java:113:77:113:80 | sb58 : StrBuilder | StrBuilderTextTest.java:113:77:113:91 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:113:77:113:80 | sb58 : StrBuilder | StrBuilderTextTest.java:113:77:113:91 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:113:63:113:68 | reader : StringReader | StrBuilderTextTest.java:113:49:113:52 | sb58 [post update] : StrBuilder | provenance | MaD:480 | +| StrBuilderTextTest.java:113:77:113:80 | sb58 : StrBuilder | StrBuilderTextTest.java:113:77:113:91 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:115:45:115:48 | sb59 [post update] : StrBuilder | StrBuilderTextTest.java:115:79:115:82 | sb59 : StrBuilder | provenance | | -| StrBuilderTextTest.java:115:64:115:70 | taint(...) : String | StrBuilderTextTest.java:115:45:115:48 | sb59 [post update] : StrBuilder | provenance | MaD:487 | -| StrBuilderTextTest.java:115:79:115:82 | sb59 : StrBuilder | StrBuilderTextTest.java:115:79:115:93 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:115:79:115:82 | sb59 : StrBuilder | StrBuilderTextTest.java:115:79:115:93 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:115:64:115:70 | taint(...) : String | StrBuilderTextTest.java:115:45:115:48 | sb59 [post update] : StrBuilder | provenance | MaD:481 | +| StrBuilderTextTest.java:115:79:115:82 | sb59 : StrBuilder | StrBuilderTextTest.java:115:79:115:93 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:116:45:116:48 | sb60 [post update] : StrBuilder | StrBuilderTextTest.java:116:88:116:91 | sb60 : StrBuilder | provenance | | -| StrBuilderTextTest.java:116:64:116:70 | taint(...) : String | StrBuilderTextTest.java:116:45:116:48 | sb60 [post update] : StrBuilder | provenance | MaD:488 | -| StrBuilderTextTest.java:116:88:116:91 | sb60 : StrBuilder | StrBuilderTextTest.java:116:88:116:102 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:116:88:116:91 | sb60 : StrBuilder | StrBuilderTextTest.java:116:88:116:102 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:116:64:116:70 | taint(...) : String | StrBuilderTextTest.java:116:45:116:48 | sb60 [post update] : StrBuilder | provenance | MaD:482 | +| StrBuilderTextTest.java:116:88:116:91 | sb60 : StrBuilder | StrBuilderTextTest.java:116:88:116:102 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:117:45:117:48 | sb61 [post update] : StrBuilder | StrBuilderTextTest.java:117:94:117:97 | sb61 : StrBuilder | provenance | | -| StrBuilderTextTest.java:117:79:117:85 | taint(...) : String | StrBuilderTextTest.java:117:45:117:48 | sb61 [post update] : StrBuilder | provenance | MaD:490 | -| StrBuilderTextTest.java:117:94:117:97 | sb61 : StrBuilder | StrBuilderTextTest.java:117:94:117:108 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:117:94:117:97 | sb61 : StrBuilder | StrBuilderTextTest.java:117:94:117:108 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:117:79:117:85 | taint(...) : String | StrBuilderTextTest.java:117:45:117:48 | sb61 [post update] : StrBuilder | provenance | MaD:484 | +| StrBuilderTextTest.java:117:94:117:97 | sb61 : StrBuilder | StrBuilderTextTest.java:117:94:117:108 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:118:45:118:48 | sb62 [post update] : StrBuilder | StrBuilderTextTest.java:118:86:118:89 | sb62 : StrBuilder | provenance | | -| StrBuilderTextTest.java:118:71:118:77 | taint(...) : String | StrBuilderTextTest.java:118:45:118:48 | sb62 [post update] : StrBuilder | provenance | MaD:490 | -| StrBuilderTextTest.java:118:86:118:89 | sb62 : StrBuilder | StrBuilderTextTest.java:118:86:118:100 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:118:86:118:89 | sb62 : StrBuilder | StrBuilderTextTest.java:118:86:118:100 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:118:71:118:77 | taint(...) : String | StrBuilderTextTest.java:118:45:118:48 | sb62 [post update] : StrBuilder | provenance | MaD:484 | +| StrBuilderTextTest.java:118:86:118:89 | sb62 : StrBuilder | StrBuilderTextTest.java:118:86:118:100 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:120:45:120:48 | sb64 [post update] : StrBuilder | StrBuilderTextTest.java:120:96:120:99 | sb64 : StrBuilder | provenance | | -| StrBuilderTextTest.java:120:81:120:87 | taint(...) : String | StrBuilderTextTest.java:120:45:120:48 | sb64 [post update] : StrBuilder | provenance | MaD:492 | -| StrBuilderTextTest.java:120:96:120:99 | sb64 : StrBuilder | StrBuilderTextTest.java:120:96:120:110 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:120:96:120:99 | sb64 : StrBuilder | StrBuilderTextTest.java:120:96:120:110 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:120:81:120:87 | taint(...) : String | StrBuilderTextTest.java:120:45:120:48 | sb64 [post update] : StrBuilder | provenance | MaD:486 | +| StrBuilderTextTest.java:120:96:120:99 | sb64 : StrBuilder | StrBuilderTextTest.java:120:96:120:110 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:121:45:121:48 | sb65 [post update] : StrBuilder | StrBuilderTextTest.java:121:88:121:91 | sb65 : StrBuilder | provenance | | -| StrBuilderTextTest.java:121:73:121:79 | taint(...) : String | StrBuilderTextTest.java:121:45:121:48 | sb65 [post update] : StrBuilder | provenance | MaD:492 | -| StrBuilderTextTest.java:121:88:121:91 | sb65 : StrBuilder | StrBuilderTextTest.java:121:88:121:102 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:121:88:121:91 | sb65 : StrBuilder | StrBuilderTextTest.java:121:88:121:102 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:121:73:121:79 | taint(...) : String | StrBuilderTextTest.java:121:45:121:48 | sb65 [post update] : StrBuilder | provenance | MaD:486 | +| StrBuilderTextTest.java:121:88:121:91 | sb65 : StrBuilder | StrBuilderTextTest.java:121:88:121:102 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:123:45:123:48 | sb67 [post update] : StrBuilder | StrBuilderTextTest.java:123:72:123:75 | sb67 : StrBuilder | provenance | | -| StrBuilderTextTest.java:123:57:123:63 | taint(...) : String | StrBuilderTextTest.java:123:45:123:48 | sb67 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:123:72:123:75 | sb67 : StrBuilder | StrBuilderTextTest.java:123:72:123:90 | rightString(...) | provenance | MaD:495 | +| StrBuilderTextTest.java:123:57:123:63 | taint(...) : String | StrBuilderTextTest.java:123:45:123:48 | sb67 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:123:72:123:75 | sb67 : StrBuilder | StrBuilderTextTest.java:123:72:123:90 | rightString(...) | provenance | MaD:489 | | StrBuilderTextTest.java:124:45:124:48 | sb68 [post update] : StrBuilder | StrBuilderTextTest.java:124:72:124:75 | sb68 : StrBuilder | provenance | | -| StrBuilderTextTest.java:124:57:124:63 | taint(...) : String | StrBuilderTextTest.java:124:45:124:48 | sb68 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:124:72:124:75 | sb68 : StrBuilder | StrBuilderTextTest.java:124:72:124:93 | subSequence(...) | provenance | MaD:4 | -| StrBuilderTextTest.java:124:72:124:75 | sb68 : StrBuilder | StrBuilderTextTest.java:124:72:124:93 | subSequence(...) | provenance | MaD:500 | +| StrBuilderTextTest.java:124:57:124:63 | taint(...) : String | StrBuilderTextTest.java:124:45:124:48 | sb68 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:124:72:124:75 | sb68 : StrBuilder | StrBuilderTextTest.java:124:72:124:93 | subSequence(...) | provenance | MaD:494 | | StrBuilderTextTest.java:125:45:125:48 | sb69 [post update] : StrBuilder | StrBuilderTextTest.java:125:72:125:75 | sb69 : StrBuilder | provenance | | -| StrBuilderTextTest.java:125:57:125:63 | taint(...) : String | StrBuilderTextTest.java:125:45:125:48 | sb69 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:125:72:125:75 | sb69 : StrBuilder | StrBuilderTextTest.java:125:72:125:88 | substring(...) | provenance | MaD:501 | +| StrBuilderTextTest.java:125:57:125:63 | taint(...) : String | StrBuilderTextTest.java:125:45:125:48 | sb69 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:125:72:125:75 | sb69 : StrBuilder | StrBuilderTextTest.java:125:72:125:88 | substring(...) | provenance | MaD:495 | | StrBuilderTextTest.java:126:45:126:48 | sb70 [post update] : StrBuilder | StrBuilderTextTest.java:126:72:126:75 | sb70 : StrBuilder | provenance | | -| StrBuilderTextTest.java:126:57:126:63 | taint(...) : String | StrBuilderTextTest.java:126:45:126:48 | sb70 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:126:72:126:75 | sb70 : StrBuilder | StrBuilderTextTest.java:126:72:126:91 | substring(...) | provenance | MaD:501 | +| StrBuilderTextTest.java:126:57:126:63 | taint(...) : String | StrBuilderTextTest.java:126:45:126:48 | sb70 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:126:72:126:75 | sb70 : StrBuilder | StrBuilderTextTest.java:126:72:126:91 | substring(...) | provenance | MaD:495 | | StrBuilderTextTest.java:127:45:127:48 | sb71 [post update] : StrBuilder | StrBuilderTextTest.java:127:72:127:75 | sb71 : StrBuilder | provenance | | -| StrBuilderTextTest.java:127:57:127:63 | taint(...) : String | StrBuilderTextTest.java:127:45:127:48 | sb71 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:127:72:127:75 | sb71 : StrBuilder | StrBuilderTextTest.java:127:72:127:89 | toCharArray(...) | provenance | MaD:502 | +| StrBuilderTextTest.java:127:57:127:63 | taint(...) : String | StrBuilderTextTest.java:127:45:127:48 | sb71 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:127:72:127:75 | sb71 : StrBuilder | StrBuilderTextTest.java:127:72:127:89 | toCharArray(...) | provenance | MaD:496 | | StrBuilderTextTest.java:128:45:128:48 | sb72 [post update] : StrBuilder | StrBuilderTextTest.java:128:72:128:75 | sb72 : StrBuilder | provenance | | -| StrBuilderTextTest.java:128:57:128:63 | taint(...) : String | StrBuilderTextTest.java:128:45:128:48 | sb72 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:128:72:128:75 | sb72 : StrBuilder | StrBuilderTextTest.java:128:72:128:93 | toCharArray(...) | provenance | MaD:502 | +| StrBuilderTextTest.java:128:57:128:63 | taint(...) : String | StrBuilderTextTest.java:128:45:128:48 | sb72 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:128:72:128:75 | sb72 : StrBuilder | StrBuilderTextTest.java:128:72:128:93 | toCharArray(...) | provenance | MaD:496 | | StrBuilderTextTest.java:129:45:129:48 | sb73 [post update] : StrBuilder | StrBuilderTextTest.java:129:72:129:75 | sb73 : StrBuilder | provenance | | -| StrBuilderTextTest.java:129:57:129:63 | taint(...) : String | StrBuilderTextTest.java:129:45:129:48 | sb73 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:129:72:129:75 | sb73 : StrBuilder | StrBuilderTextTest.java:129:72:129:92 | toStringBuffer(...) | provenance | MaD:504 | +| StrBuilderTextTest.java:129:57:129:63 | taint(...) : String | StrBuilderTextTest.java:129:45:129:48 | sb73 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:129:72:129:75 | sb73 : StrBuilder | StrBuilderTextTest.java:129:72:129:92 | toStringBuffer(...) | provenance | MaD:498 | | StrBuilderTextTest.java:130:45:130:48 | sb74 [post update] : StrBuilder | StrBuilderTextTest.java:130:72:130:75 | sb74 : StrBuilder | provenance | | -| StrBuilderTextTest.java:130:57:130:63 | taint(...) : String | StrBuilderTextTest.java:130:45:130:48 | sb74 [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:130:72:130:75 | sb74 : StrBuilder | StrBuilderTextTest.java:130:72:130:93 | toStringBuilder(...) | provenance | MaD:505 | -| StrBuilderTextTest.java:135:14:135:58 | append(...) : StrBuilder | StrBuilderTextTest.java:135:14:135:82 | append(...) : StrBuilder | provenance | MaD:435 | -| StrBuilderTextTest.java:135:14:135:82 | append(...) : StrBuilder | StrBuilderTextTest.java:135:14:135:93 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:135:14:135:82 | append(...) : StrBuilder | StrBuilderTextTest.java:135:14:135:93 | toString(...) | provenance | MaD:503 | -| StrBuilderTextTest.java:135:51:135:57 | taint(...) : String | StrBuilderTextTest.java:135:14:135:58 | append(...) : StrBuilder | provenance | MaD:424+MaD:435 | -| StrBuilderTextTest.java:138:9:138:45 | append(...) [post update] : StrBuilder | StrBuilderTextTest.java:139:14:139:31 | fluentBackflowTest : StrBuilder | provenance | MaD:435 | -| StrBuilderTextTest.java:138:54:138:60 | taint(...) : String | StrBuilderTextTest.java:138:9:138:45 | append(...) [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:139:14:139:31 | fluentBackflowTest : StrBuilder | StrBuilderTextTest.java:139:14:139:42 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:139:14:139:31 | fluentBackflowTest : StrBuilder | StrBuilderTextTest.java:139:14:139:42 | toString(...) | provenance | MaD:503 | -| StrBuilderTextTest.java:143:9:143:46 | append(...) [post update] : StrBuilder | StrBuilderTextTest.java:144:14:144:32 | fluentBackflowTest2 : StrBuilder | provenance | MaD:435 | -| StrBuilderTextTest.java:143:55:143:61 | taint(...) : String | StrBuilderTextTest.java:143:9:143:46 | append(...) [post update] : StrBuilder | provenance | MaD:424 | -| StrBuilderTextTest.java:144:14:144:32 | fluentBackflowTest2 : StrBuilder | StrBuilderTextTest.java:144:14:144:43 | toString(...) | provenance | MaD:5 | -| StrBuilderTextTest.java:144:14:144:32 | fluentBackflowTest2 : StrBuilder | StrBuilderTextTest.java:144:14:144:43 | toString(...) | provenance | MaD:503 | +| StrBuilderTextTest.java:130:57:130:63 | taint(...) : String | StrBuilderTextTest.java:130:45:130:48 | sb74 [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:130:72:130:75 | sb74 : StrBuilder | StrBuilderTextTest.java:130:72:130:93 | toStringBuilder(...) | provenance | MaD:499 | +| StrBuilderTextTest.java:135:14:135:58 | append(...) : StrBuilder | StrBuilderTextTest.java:135:14:135:82 | append(...) : StrBuilder | provenance | MaD:429 | +| StrBuilderTextTest.java:135:14:135:82 | append(...) : StrBuilder | StrBuilderTextTest.java:135:14:135:93 | toString(...) | provenance | MaD:497 | +| StrBuilderTextTest.java:135:51:135:57 | taint(...) : String | StrBuilderTextTest.java:135:14:135:58 | append(...) : StrBuilder | provenance | MaD:418+MaD:429 | +| StrBuilderTextTest.java:138:9:138:45 | append(...) [post update] : StrBuilder | StrBuilderTextTest.java:139:14:139:31 | fluentBackflowTest : StrBuilder | provenance | MaD:429 | +| StrBuilderTextTest.java:138:54:138:60 | taint(...) : String | StrBuilderTextTest.java:138:9:138:45 | append(...) [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:139:14:139:31 | fluentBackflowTest : StrBuilder | StrBuilderTextTest.java:139:14:139:42 | toString(...) | provenance | MaD:497 | +| StrBuilderTextTest.java:143:9:143:46 | append(...) [post update] : StrBuilder | StrBuilderTextTest.java:144:14:144:32 | fluentBackflowTest2 : StrBuilder | provenance | MaD:429 | +| StrBuilderTextTest.java:143:55:143:61 | taint(...) : String | StrBuilderTextTest.java:143:9:143:46 | append(...) [post update] : StrBuilder | provenance | MaD:418 | +| StrBuilderTextTest.java:144:14:144:32 | fluentBackflowTest2 : StrBuilder | StrBuilderTextTest.java:144:14:144:43 | toString(...) | provenance | MaD:497 | | StrBuilderTextTest.java:147:43:147:65 | new StrBuilder(...) : StrBuilder | StrBuilderTextTest.java:148:14:148:33 | fluentAllMethodsTest : StrBuilder | provenance | | -| StrBuilderTextTest.java:147:58:147:64 | taint(...) : String | StrBuilderTextTest.java:147:43:147:65 | new StrBuilder(...) : StrBuilder | provenance | MaD:418 | -| StrBuilderTextTest.java:148:14:148:33 | fluentAllMethodsTest : StrBuilder | StrBuilderTextTest.java:148:14:149:23 | append(...) : StrBuilder | provenance | MaD:435 | -| StrBuilderTextTest.java:148:14:149:23 | append(...) : StrBuilder | StrBuilderTextTest.java:148:14:150:26 | appendAll(...) : StrBuilder | provenance | MaD:439 | -| StrBuilderTextTest.java:148:14:150:26 | appendAll(...) : StrBuilder | StrBuilderTextTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | provenance | MaD:441 | -| StrBuilderTextTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | StrBuilderTextTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | provenance | MaD:443 | -| StrBuilderTextTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | StrBuilderTextTest.java:148:14:153:25 | appendln(...) : StrBuilder | provenance | MaD:469 | -| StrBuilderTextTest.java:148:14:153:25 | appendln(...) : StrBuilder | StrBuilderTextTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | provenance | MaD:444 | -| StrBuilderTextTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | StrBuilderTextTest.java:148:14:155:21 | appendNull(...) : StrBuilder | provenance | MaD:445 | -| StrBuilderTextTest.java:148:14:155:21 | appendNull(...) : StrBuilder | StrBuilderTextTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | provenance | MaD:446 | -| StrBuilderTextTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | StrBuilderTextTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | provenance | MaD:450 | -| StrBuilderTextTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | StrBuilderTextTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | provenance | MaD:456 | -| StrBuilderTextTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | StrBuilderTextTest.java:148:14:159:21 | delete(...) : StrBuilder | provenance | MaD:473 | -| StrBuilderTextTest.java:148:14:159:21 | delete(...) : StrBuilder | StrBuilderTextTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | provenance | MaD:474 | -| StrBuilderTextTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | StrBuilderTextTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | provenance | MaD:475 | -| StrBuilderTextTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | StrBuilderTextTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | provenance | MaD:476 | -| StrBuilderTextTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | StrBuilderTextTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | provenance | MaD:477 | -| StrBuilderTextTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | StrBuilderTextTest.java:148:14:164:30 | insert(...) : StrBuilder | provenance | MaD:482 | -| StrBuilderTextTest.java:148:14:164:30 | insert(...) : StrBuilder | StrBuilderTextTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | provenance | MaD:485 | -| StrBuilderTextTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | StrBuilderTextTest.java:148:14:166:37 | replace(...) : StrBuilder | provenance | MaD:489 | -| StrBuilderTextTest.java:148:14:166:37 | replace(...) : StrBuilder | StrBuilderTextTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | provenance | MaD:491 | -| StrBuilderTextTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | StrBuilderTextTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | provenance | MaD:493 | -| StrBuilderTextTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | StrBuilderTextTest.java:148:14:169:18 | reverse(...) : StrBuilder | provenance | MaD:494 | -| StrBuilderTextTest.java:148:14:169:18 | reverse(...) : StrBuilder | StrBuilderTextTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | provenance | MaD:496 | -| StrBuilderTextTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | StrBuilderTextTest.java:148:14:171:23 | setLength(...) : StrBuilder | provenance | MaD:497 | -| StrBuilderTextTest.java:148:14:171:23 | setLength(...) : StrBuilder | StrBuilderTextTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | MaD:498 | -| StrBuilderTextTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | StrBuilderTextTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | MaD:499 | -| StrBuilderTextTest.java:148:14:173:28 | setNullText(...) : StrBuilder | StrBuilderTextTest.java:148:14:174:15 | trim(...) | provenance | MaD:506 | -| StrBuilderTextTest.java:178:9:204:15 | trim(...) [post update] : StrBuilder | StrBuilderTextTest.java:206:14:206:34 | fluentAllMethodsTest2 | provenance | MaD:506 | -| StrBuilderTextTest.java:205:17:205:23 | taint(...) : String | StrBuilderTextTest.java:178:9:204:15 | trim(...) [post update] : StrBuilder | provenance | MaD:424 | +| StrBuilderTextTest.java:147:58:147:64 | taint(...) : String | StrBuilderTextTest.java:147:43:147:65 | new StrBuilder(...) : StrBuilder | provenance | MaD:412 | +| StrBuilderTextTest.java:148:14:148:33 | fluentAllMethodsTest : StrBuilder | StrBuilderTextTest.java:148:14:149:23 | append(...) : StrBuilder | provenance | MaD:429 | +| StrBuilderTextTest.java:148:14:149:23 | append(...) : StrBuilder | StrBuilderTextTest.java:148:14:150:26 | appendAll(...) : StrBuilder | provenance | MaD:433 | +| StrBuilderTextTest.java:148:14:150:26 | appendAll(...) : StrBuilder | StrBuilderTextTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | provenance | MaD:435 | +| StrBuilderTextTest.java:148:14:151:48 | appendFixedWidthPadLeft(...) : StrBuilder | StrBuilderTextTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | provenance | MaD:437 | +| StrBuilderTextTest.java:148:14:152:49 | appendFixedWidthPadRight(...) : StrBuilder | StrBuilderTextTest.java:148:14:153:25 | appendln(...) : StrBuilder | provenance | MaD:463 | +| StrBuilderTextTest.java:148:14:153:25 | appendln(...) : StrBuilder | StrBuilderTextTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | provenance | MaD:438 | +| StrBuilderTextTest.java:148:14:154:24 | appendNewLine(...) : StrBuilder | StrBuilderTextTest.java:148:14:155:21 | appendNull(...) : StrBuilder | provenance | MaD:439 | +| StrBuilderTextTest.java:148:14:155:21 | appendNull(...) : StrBuilder | StrBuilderTextTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | provenance | MaD:440 | +| StrBuilderTextTest.java:148:14:156:30 | appendPadding(...) : StrBuilder | StrBuilderTextTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | provenance | MaD:444 | +| StrBuilderTextTest.java:148:14:157:29 | appendSeparator(...) : StrBuilder | StrBuilderTextTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | provenance | MaD:450 | +| StrBuilderTextTest.java:148:14:158:52 | appendWithSeparators(...) : StrBuilder | StrBuilderTextTest.java:148:14:159:21 | delete(...) : StrBuilder | provenance | MaD:467 | +| StrBuilderTextTest.java:148:14:159:21 | delete(...) : StrBuilder | StrBuilderTextTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | provenance | MaD:468 | +| StrBuilderTextTest.java:148:14:160:23 | deleteAll(...) : StrBuilder | StrBuilderTextTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | provenance | MaD:469 | +| StrBuilderTextTest.java:148:14:161:24 | deleteCharAt(...) : StrBuilder | StrBuilderTextTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | provenance | MaD:470 | +| StrBuilderTextTest.java:148:14:162:29 | deleteFirst(...) : StrBuilder | StrBuilderTextTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | provenance | MaD:471 | +| StrBuilderTextTest.java:148:14:163:28 | ensureCapacity(...) : StrBuilder | StrBuilderTextTest.java:148:14:164:30 | insert(...) : StrBuilder | provenance | MaD:476 | +| StrBuilderTextTest.java:148:14:164:30 | insert(...) : StrBuilder | StrBuilderTextTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | provenance | MaD:479 | +| StrBuilderTextTest.java:148:14:165:27 | minimizeCapacity(...) : StrBuilder | StrBuilderTextTest.java:148:14:166:37 | replace(...) : StrBuilder | provenance | MaD:483 | +| StrBuilderTextTest.java:148:14:166:37 | replace(...) : StrBuilder | StrBuilderTextTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | provenance | MaD:485 | +| StrBuilderTextTest.java:148:14:167:38 | replaceAll(...) : StrBuilder | StrBuilderTextTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | provenance | MaD:487 | +| StrBuilderTextTest.java:148:14:168:40 | replaceFirst(...) : StrBuilder | StrBuilderTextTest.java:148:14:169:18 | reverse(...) : StrBuilder | provenance | MaD:488 | +| StrBuilderTextTest.java:148:14:169:18 | reverse(...) : StrBuilder | StrBuilderTextTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | provenance | MaD:490 | +| StrBuilderTextTest.java:148:14:170:26 | setCharAt(...) : StrBuilder | StrBuilderTextTest.java:148:14:171:23 | setLength(...) : StrBuilder | provenance | MaD:491 | +| StrBuilderTextTest.java:148:14:171:23 | setLength(...) : StrBuilder | StrBuilderTextTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | provenance | MaD:492 | +| StrBuilderTextTest.java:148:14:172:34 | setNewLineText(...) : StrBuilder | StrBuilderTextTest.java:148:14:173:28 | setNullText(...) : StrBuilder | provenance | MaD:493 | +| StrBuilderTextTest.java:148:14:173:28 | setNullText(...) : StrBuilder | StrBuilderTextTest.java:148:14:174:15 | trim(...) | provenance | MaD:500 | +| StrBuilderTextTest.java:178:9:204:15 | trim(...) [post update] : StrBuilder | StrBuilderTextTest.java:206:14:206:34 | fluentAllMethodsTest2 | provenance | MaD:500 | +| StrBuilderTextTest.java:205:17:205:23 | taint(...) : String | StrBuilderTextTest.java:178:9:204:15 | trim(...) [post update] : StrBuilder | provenance | MaD:418 | | StrLookupTest.java:12:7:12:9 | map [post update] : HashMap [] : String | StrLookupTest.java:13:54:13:56 | map : HashMap [] : String | provenance | | -| StrLookupTest.java:12:22:12:28 | taint(...) : String | StrLookupTest.java:12:7:12:9 | map [post update] : HashMap [] : String | provenance | MaD:18 | +| StrLookupTest.java:12:22:12:28 | taint(...) : String | StrLookupTest.java:12:7:12:9 | map [post update] : HashMap [] : String | provenance | MaD:12 | | StrLookupTest.java:13:34:13:57 | mapLookup(...) : StrLookup | StrLookupTest.java:14:12:14:17 | lookup : StrLookup | provenance | | -| StrLookupTest.java:13:54:13:56 | map : HashMap [] : String | StrLookupTest.java:13:34:13:57 | mapLookup(...) : StrLookup | provenance | MaD:124 | -| StrLookupTest.java:14:12:14:17 | lookup : StrLookup | StrLookupTest.java:14:12:14:31 | lookup(...) | provenance | MaD:123 | +| StrLookupTest.java:13:54:13:56 | map : HashMap [] : String | StrLookupTest.java:13:34:13:57 | mapLookup(...) : StrLookup | provenance | MaD:118 | +| StrLookupTest.java:14:12:14:17 | lookup : StrLookup | StrLookupTest.java:14:12:14:31 | lookup(...) | provenance | MaD:117 | | StrSubstitutorTest.java:16:7:16:16 | taintedMap [post update] : HashMap [] : String | StrSubstitutorTest.java:17:61:17:70 | taintedMap : HashMap [] : String | provenance | | | StrSubstitutorTest.java:16:7:16:16 | taintedMap [post update] : HashMap [] : String | StrSubstitutorTest.java:21:47:21:56 | taintedMap : HashMap [] : String | provenance | | | StrSubstitutorTest.java:16:7:16:16 | taintedMap [post update] : HashMap [] : String | StrSubstitutorTest.java:22:47:22:56 | taintedMap : HashMap [] : String | provenance | | @@ -2028,14 +1891,14 @@ edges | StrSubstitutorTest.java:16:7:16:16 | taintedMap [post update] : HashMap [] : String | StrSubstitutorTest.java:24:47:24:56 | taintedMap : HashMap [] : String | provenance | | | StrSubstitutorTest.java:16:7:16:16 | taintedMap [post update] : HashMap [] : String | StrSubstitutorTest.java:66:44:66:53 | taintedMap : HashMap [] : String | provenance | | | StrSubstitutorTest.java:16:7:16:16 | taintedMap [post update] : HashMap [] : String | StrSubstitutorTest.java:67:44:67:53 | taintedMap : HashMap [] : String | provenance | | -| StrSubstitutorTest.java:16:29:16:35 | taint(...) : String | StrSubstitutorTest.java:16:7:16:16 | taintedMap [post update] : HashMap [] : String | provenance | MaD:18 | +| StrSubstitutorTest.java:16:29:16:35 | taint(...) : String | StrSubstitutorTest.java:16:7:16:16 | taintedMap [post update] : HashMap [] : String | provenance | MaD:12 | | StrSubstitutorTest.java:17:41:17:71 | mapLookup(...) : StrLookup | StrSubstitutorTest.java:20:74:20:86 | taintedLookup : StrLookup | provenance | | | StrSubstitutorTest.java:17:41:17:71 | mapLookup(...) : StrLookup | StrSubstitutorTest.java:25:47:25:59 | taintedLookup : StrLookup | provenance | | | StrSubstitutorTest.java:17:41:17:71 | mapLookup(...) : StrLookup | StrSubstitutorTest.java:26:47:26:59 | taintedLookup : StrLookup | provenance | | | StrSubstitutorTest.java:17:41:17:71 | mapLookup(...) : StrLookup | StrSubstitutorTest.java:27:47:27:59 | taintedLookup : StrLookup | provenance | | | StrSubstitutorTest.java:17:41:17:71 | mapLookup(...) : StrLookup | StrSubstitutorTest.java:28:47:28:59 | taintedLookup : StrLookup | provenance | | | StrSubstitutorTest.java:17:41:17:71 | mapLookup(...) : StrLookup | StrSubstitutorTest.java:29:48:29:60 | taintedLookup : StrLookup | provenance | | -| StrSubstitutorTest.java:17:61:17:70 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:17:41:17:71 | mapLookup(...) : StrLookup | provenance | MaD:124 | +| StrSubstitutorTest.java:17:61:17:70 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:17:41:17:71 | mapLookup(...) : StrLookup | provenance | MaD:118 | | StrSubstitutorTest.java:20:50:20:52 | ss1 [post update] : StrSubstitutor | StrSubstitutorTest.java:20:95:20:97 | ss1 : StrSubstitutor | provenance | | | StrSubstitutorTest.java:20:50:20:52 | ss1 [post update] : StrSubstitutor | StrSubstitutorTest.java:49:12:49:25 | untaintedSubst : StrSubstitutor | provenance | | | StrSubstitutorTest.java:20:50:20:52 | ss1 [post update] : StrSubstitutor | StrSubstitutorTest.java:50:12:50:25 | untaintedSubst : StrSubstitutor | provenance | | @@ -2050,8 +1913,8 @@ edges | StrSubstitutorTest.java:20:50:20:52 | ss1 [post update] : StrSubstitutor | StrSubstitutorTest.java:59:12:59:25 | untaintedSubst : StrSubstitutor | provenance | | | StrSubstitutorTest.java:20:50:20:52 | ss1 [post update] : StrSubstitutor | StrSubstitutorTest.java:60:12:60:25 | untaintedSubst : StrSubstitutor | provenance | | | StrSubstitutorTest.java:20:50:20:52 | ss1 [post update] : StrSubstitutor | StrSubstitutorTest.java:61:12:61:25 | untaintedSubst : StrSubstitutor | provenance | | -| StrSubstitutorTest.java:20:74:20:86 | taintedLookup : StrLookup | StrSubstitutorTest.java:20:50:20:52 | ss1 [post update] : StrSubstitutor | provenance | MaD:151 | -| StrSubstitutorTest.java:20:95:20:97 | ss1 : StrSubstitutor | StrSubstitutorTest.java:20:95:20:114 | replace(...) | provenance | MaD:144 | +| StrSubstitutorTest.java:20:74:20:86 | taintedLookup : StrLookup | StrSubstitutorTest.java:20:50:20:52 | ss1 [post update] : StrSubstitutor | provenance | MaD:145 | +| StrSubstitutorTest.java:20:95:20:97 | ss1 : StrSubstitutor | StrSubstitutorTest.java:20:95:20:114 | replace(...) | provenance | MaD:138 | | StrSubstitutorTest.java:21:28:21:57 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:21:65:21:67 | ss2 : StrSubstitutor | provenance | | | StrSubstitutorTest.java:21:28:21:57 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:33:12:33:23 | taintedSubst : StrSubstitutor | provenance | | | StrSubstitutorTest.java:21:28:21:57 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:34:12:34:23 | taintedSubst : StrSubstitutor | provenance | | @@ -2072,250 +1935,244 @@ edges | StrSubstitutorTest.java:21:28:21:57 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:77:59:77:70 | taintedSubst : StrSubstitutor | provenance | | | StrSubstitutorTest.java:21:28:21:57 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:78:56:78:67 | taintedSubst : StrSubstitutor | provenance | | | StrSubstitutorTest.java:21:28:21:57 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:79:56:79:67 | taintedSubst : StrSubstitutor | provenance | | -| StrSubstitutorTest.java:21:47:21:56 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:21:28:21:57 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:125 | -| StrSubstitutorTest.java:21:65:21:67 | ss2 : StrSubstitutor | StrSubstitutorTest.java:21:65:21:84 | replace(...) | provenance | MaD:144 | +| StrSubstitutorTest.java:21:47:21:56 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:21:28:21:57 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:119 | +| StrSubstitutorTest.java:21:65:21:67 | ss2 : StrSubstitutor | StrSubstitutorTest.java:21:65:21:84 | replace(...) | provenance | MaD:138 | | StrSubstitutorTest.java:22:28:22:67 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:22:75:22:77 | ss3 : StrSubstitutor | provenance | | -| StrSubstitutorTest.java:22:47:22:56 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:22:28:22:67 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:125 | -| StrSubstitutorTest.java:22:75:22:77 | ss3 : StrSubstitutor | StrSubstitutorTest.java:22:75:22:94 | replace(...) | provenance | MaD:144 | +| StrSubstitutorTest.java:22:47:22:56 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:22:28:22:67 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:119 | +| StrSubstitutorTest.java:22:75:22:77 | ss3 : StrSubstitutor | StrSubstitutorTest.java:22:75:22:94 | replace(...) | provenance | MaD:138 | | StrSubstitutorTest.java:23:28:23:72 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:23:80:23:82 | ss4 : StrSubstitutor | provenance | | -| StrSubstitutorTest.java:23:47:23:56 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:23:28:23:72 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:125 | -| StrSubstitutorTest.java:23:80:23:82 | ss4 : StrSubstitutor | StrSubstitutorTest.java:23:80:23:99 | replace(...) | provenance | MaD:144 | +| StrSubstitutorTest.java:23:47:23:56 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:23:28:23:72 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:119 | +| StrSubstitutorTest.java:23:80:23:82 | ss4 : StrSubstitutor | StrSubstitutorTest.java:23:80:23:99 | replace(...) | provenance | MaD:138 | | StrSubstitutorTest.java:24:28:24:77 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:24:85:24:87 | ss5 : StrSubstitutor | provenance | | -| StrSubstitutorTest.java:24:47:24:56 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:24:28:24:77 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:125 | -| StrSubstitutorTest.java:24:85:24:87 | ss5 : StrSubstitutor | StrSubstitutorTest.java:24:85:24:104 | replace(...) | provenance | MaD:144 | +| StrSubstitutorTest.java:24:47:24:56 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:24:28:24:77 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:119 | +| StrSubstitutorTest.java:24:85:24:87 | ss5 : StrSubstitutor | StrSubstitutorTest.java:24:85:24:104 | replace(...) | provenance | MaD:138 | | StrSubstitutorTest.java:25:28:25:60 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:25:68:25:70 | ss6 : StrSubstitutor | provenance | | -| StrSubstitutorTest.java:25:47:25:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:25:28:25:60 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:125 | -| StrSubstitutorTest.java:25:47:25:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:25:28:25:60 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:126 | -| StrSubstitutorTest.java:25:68:25:70 | ss6 : StrSubstitutor | StrSubstitutorTest.java:25:68:25:87 | replace(...) | provenance | MaD:144 | +| StrSubstitutorTest.java:25:47:25:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:25:28:25:60 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:119 | +| StrSubstitutorTest.java:25:47:25:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:25:28:25:60 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:120 | +| StrSubstitutorTest.java:25:68:25:70 | ss6 : StrSubstitutor | StrSubstitutorTest.java:25:68:25:87 | replace(...) | provenance | MaD:138 | | StrSubstitutorTest.java:26:28:26:75 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:26:83:26:85 | ss7 : StrSubstitutor | provenance | | -| StrSubstitutorTest.java:26:47:26:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:26:28:26:75 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:125 | -| StrSubstitutorTest.java:26:47:26:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:26:28:26:75 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:126 | -| StrSubstitutorTest.java:26:83:26:85 | ss7 : StrSubstitutor | StrSubstitutorTest.java:26:83:26:102 | replace(...) | provenance | MaD:144 | +| StrSubstitutorTest.java:26:47:26:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:26:28:26:75 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:119 | +| StrSubstitutorTest.java:26:47:26:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:26:28:26:75 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:120 | +| StrSubstitutorTest.java:26:83:26:85 | ss7 : StrSubstitutor | StrSubstitutorTest.java:26:83:26:102 | replace(...) | provenance | MaD:138 | | StrSubstitutorTest.java:27:28:27:80 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:27:88:27:90 | ss8 : StrSubstitutor | provenance | | -| StrSubstitutorTest.java:27:47:27:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:27:28:27:80 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:125 | -| StrSubstitutorTest.java:27:47:27:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:27:28:27:80 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:126 | -| StrSubstitutorTest.java:27:88:27:90 | ss8 : StrSubstitutor | StrSubstitutorTest.java:27:88:27:107 | replace(...) | provenance | MaD:144 | +| StrSubstitutorTest.java:27:47:27:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:27:28:27:80 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:119 | +| StrSubstitutorTest.java:27:47:27:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:27:28:27:80 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:120 | +| StrSubstitutorTest.java:27:88:27:90 | ss8 : StrSubstitutor | StrSubstitutorTest.java:27:88:27:107 | replace(...) | provenance | MaD:138 | | StrSubstitutorTest.java:28:28:28:89 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:28:97:28:99 | ss9 : StrSubstitutor | provenance | | -| StrSubstitutorTest.java:28:47:28:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:28:28:28:89 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:125 | -| StrSubstitutorTest.java:28:47:28:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:28:28:28:89 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:126 | -| StrSubstitutorTest.java:28:97:28:99 | ss9 : StrSubstitutor | StrSubstitutorTest.java:28:97:28:116 | replace(...) | provenance | MaD:144 | +| StrSubstitutorTest.java:28:47:28:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:28:28:28:89 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:119 | +| StrSubstitutorTest.java:28:47:28:59 | taintedLookup : StrLookup | StrSubstitutorTest.java:28:28:28:89 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:120 | +| StrSubstitutorTest.java:28:97:28:99 | ss9 : StrSubstitutor | StrSubstitutorTest.java:28:97:28:116 | replace(...) | provenance | MaD:138 | | StrSubstitutorTest.java:29:29:29:96 | new StrSubstitutor(...) : StrSubstitutor | StrSubstitutorTest.java:29:104:29:107 | ss10 : StrSubstitutor | provenance | | -| StrSubstitutorTest.java:29:48:29:60 | taintedLookup : StrLookup | StrSubstitutorTest.java:29:29:29:96 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:125 | -| StrSubstitutorTest.java:29:48:29:60 | taintedLookup : StrLookup | StrSubstitutorTest.java:29:29:29:96 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:126 | -| StrSubstitutorTest.java:29:104:29:107 | ss10 : StrSubstitutor | StrSubstitutorTest.java:29:104:29:124 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:33:12:33:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:33:12:33:48 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:34:12:34:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:34:12:34:40 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:35:12:35:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:35:12:35:46 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:36:12:36:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:36:12:36:54 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:37:12:37:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:37:12:37:60 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:38:12:38:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:38:12:38:54 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:39:12:39:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:39:12:39:60 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:40:12:40:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:40:12:40:56 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:41:12:41:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:41:12:41:62 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:42:12:42:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:42:12:42:59 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:43:12:43:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:43:12:43:65 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:44:12:44:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:44:12:44:58 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:45:12:45:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:45:12:45:64 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:49:12:49:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:49:12:49:50 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:49:35:49:49 | (...)... : String | StrSubstitutorTest.java:49:12:49:50 | replace(...) | provenance | MaD:131 | +| StrSubstitutorTest.java:29:48:29:60 | taintedLookup : StrLookup | StrSubstitutorTest.java:29:29:29:96 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:119 | +| StrSubstitutorTest.java:29:48:29:60 | taintedLookup : StrLookup | StrSubstitutorTest.java:29:29:29:96 | new StrSubstitutor(...) : StrSubstitutor | provenance | MaD:120 | +| StrSubstitutorTest.java:29:104:29:107 | ss10 : StrSubstitutor | StrSubstitutorTest.java:29:104:29:124 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:33:12:33:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:33:12:33:48 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:34:12:34:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:34:12:34:40 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:35:12:35:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:35:12:35:46 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:36:12:36:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:36:12:36:54 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:37:12:37:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:37:12:37:60 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:38:12:38:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:38:12:38:54 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:39:12:39:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:39:12:39:60 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:40:12:40:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:40:12:40:56 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:41:12:41:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:41:12:41:62 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:42:12:42:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:42:12:42:59 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:43:12:43:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:43:12:43:65 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:44:12:44:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:44:12:44:58 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:45:12:45:23 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:45:12:45:64 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:49:12:49:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:49:12:49:50 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:49:35:49:49 | (...)... : String | StrSubstitutorTest.java:49:12:49:50 | replace(...) | provenance | MaD:125 | | StrSubstitutorTest.java:49:43:49:49 | taint(...) : String | StrSubstitutorTest.java:49:35:49:49 | (...)... : String | provenance | | -| StrSubstitutorTest.java:50:12:50:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:50:12:50:42 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:50:35:50:41 | taint(...) : String | StrSubstitutorTest.java:50:12:50:42 | replace(...) | provenance | MaD:138 | -| StrSubstitutorTest.java:51:12:51:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:51:12:51:48 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:51:35:51:41 | taint(...) : String | StrSubstitutorTest.java:51:12:51:48 | replace(...) | provenance | MaD:139 | -| StrSubstitutorTest.java:52:12:52:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:52:12:52:56 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:52:35:52:41 | taint(...) : String | StrSubstitutorTest.java:52:35:52:55 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrSubstitutorTest.java:52:35:52:55 | toCharArray(...) : char[] | StrSubstitutorTest.java:52:12:52:56 | replace(...) | provenance | MaD:127 | -| StrSubstitutorTest.java:53:12:53:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:53:12:53:62 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:53:35:53:41 | taint(...) : String | StrSubstitutorTest.java:53:35:53:55 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrSubstitutorTest.java:53:35:53:55 | toCharArray(...) : char[] | StrSubstitutorTest.java:53:12:53:62 | replace(...) | provenance | MaD:128 | -| StrSubstitutorTest.java:54:12:54:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:54:12:54:56 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:54:35:54:55 | (...)... : String | StrSubstitutorTest.java:54:12:54:56 | replace(...) | provenance | MaD:129 | +| StrSubstitutorTest.java:50:12:50:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:50:12:50:42 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:50:35:50:41 | taint(...) : String | StrSubstitutorTest.java:50:12:50:42 | replace(...) | provenance | MaD:132 | +| StrSubstitutorTest.java:51:12:51:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:51:12:51:48 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:51:35:51:41 | taint(...) : String | StrSubstitutorTest.java:51:12:51:48 | replace(...) | provenance | MaD:133 | +| StrSubstitutorTest.java:52:12:52:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:52:12:52:56 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:52:35:52:41 | taint(...) : String | StrSubstitutorTest.java:52:35:52:55 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrSubstitutorTest.java:52:35:52:55 | toCharArray(...) : char[] | StrSubstitutorTest.java:52:12:52:56 | replace(...) | provenance | MaD:121 | +| StrSubstitutorTest.java:53:12:53:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:53:12:53:62 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:53:35:53:41 | taint(...) : String | StrSubstitutorTest.java:53:35:53:55 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrSubstitutorTest.java:53:35:53:55 | toCharArray(...) : char[] | StrSubstitutorTest.java:53:12:53:62 | replace(...) | provenance | MaD:122 | +| StrSubstitutorTest.java:54:12:54:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:54:12:54:56 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:54:35:54:55 | (...)... : String | StrSubstitutorTest.java:54:12:54:56 | replace(...) | provenance | MaD:123 | | StrSubstitutorTest.java:54:49:54:55 | taint(...) : String | StrSubstitutorTest.java:54:35:54:55 | (...)... : String | provenance | | -| StrSubstitutorTest.java:55:12:55:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:55:12:55:62 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:55:35:55:55 | (...)... : String | StrSubstitutorTest.java:55:12:55:62 | replace(...) | provenance | MaD:130 | +| StrSubstitutorTest.java:55:12:55:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:55:12:55:62 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:55:35:55:55 | (...)... : String | StrSubstitutorTest.java:55:12:55:62 | replace(...) | provenance | MaD:124 | | StrSubstitutorTest.java:55:49:55:55 | taint(...) : String | StrSubstitutorTest.java:55:35:55:55 | (...)... : String | provenance | | -| StrSubstitutorTest.java:56:12:56:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:56:12:56:58 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:56:35:56:57 | new StrBuilder(...) : StrBuilder | StrSubstitutorTest.java:56:12:56:58 | replace(...) | provenance | MaD:142 | -| StrSubstitutorTest.java:56:50:56:56 | taint(...) : String | StrSubstitutorTest.java:56:35:56:57 | new StrBuilder(...) : StrBuilder | provenance | MaD:34 | -| StrSubstitutorTest.java:57:12:57:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:57:12:57:64 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:57:35:57:57 | new StrBuilder(...) : StrBuilder | StrSubstitutorTest.java:57:12:57:64 | replace(...) | provenance | MaD:143 | -| StrSubstitutorTest.java:57:50:57:56 | taint(...) : String | StrSubstitutorTest.java:57:35:57:57 | new StrBuilder(...) : StrBuilder | provenance | MaD:34 | -| StrSubstitutorTest.java:58:12:58:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:58:12:58:61 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:58:35:58:60 | new StringBuilder(...) : StringBuilder | StrSubstitutorTest.java:58:12:58:61 | replace(...) | provenance | MaD:129 | -| StrSubstitutorTest.java:58:53:58:59 | taint(...) : String | StrSubstitutorTest.java:58:35:58:60 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| StrSubstitutorTest.java:59:12:59:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:59:12:59:67 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:59:35:59:60 | new StringBuilder(...) : StringBuilder | StrSubstitutorTest.java:59:12:59:67 | replace(...) | provenance | MaD:130 | -| StrSubstitutorTest.java:59:53:59:59 | taint(...) : String | StrSubstitutorTest.java:59:35:59:60 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| StrSubstitutorTest.java:60:12:60:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:60:12:60:60 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:60:35:60:59 | new StringBuffer(...) : StringBuffer | StrSubstitutorTest.java:60:12:60:60 | replace(...) | provenance | MaD:140 | -| StrSubstitutorTest.java:60:52:60:58 | taint(...) : String | StrSubstitutorTest.java:60:35:60:59 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| StrSubstitutorTest.java:61:12:61:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:61:12:61:66 | replace(...) | provenance | MaD:144 | -| StrSubstitutorTest.java:61:35:61:59 | new StringBuffer(...) : StringBuffer | StrSubstitutorTest.java:61:12:61:66 | replace(...) | provenance | MaD:141 | -| StrSubstitutorTest.java:61:52:61:58 | taint(...) : String | StrSubstitutorTest.java:61:35:61:59 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| StrSubstitutorTest.java:64:35:64:41 | taint(...) : String | StrSubstitutorTest.java:64:12:64:73 | replace(...) | provenance | MaD:132 | -| StrSubstitutorTest.java:65:35:65:41 | taint(...) : String | StrSubstitutorTest.java:65:12:65:83 | replace(...) | provenance | MaD:134 | -| StrSubstitutorTest.java:66:44:66:53 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:66:12:66:54 | replace(...) | provenance | MaD:133 | -| StrSubstitutorTest.java:67:44:67:53 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:67:12:67:64 | replace(...) | provenance | MaD:135 | +| StrSubstitutorTest.java:56:12:56:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:56:12:56:58 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:56:35:56:57 | new StrBuilder(...) : StrBuilder | StrSubstitutorTest.java:56:12:56:58 | replace(...) | provenance | MaD:136 | +| StrSubstitutorTest.java:56:50:56:56 | taint(...) : String | StrSubstitutorTest.java:56:35:56:57 | new StrBuilder(...) : StrBuilder | provenance | MaD:28 | +| StrSubstitutorTest.java:57:12:57:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:57:12:57:64 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:57:35:57:57 | new StrBuilder(...) : StrBuilder | StrSubstitutorTest.java:57:12:57:64 | replace(...) | provenance | MaD:137 | +| StrSubstitutorTest.java:57:50:57:56 | taint(...) : String | StrSubstitutorTest.java:57:35:57:57 | new StrBuilder(...) : StrBuilder | provenance | MaD:28 | +| StrSubstitutorTest.java:58:12:58:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:58:12:58:61 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:58:35:58:60 | new StringBuilder(...) : StringBuilder | StrSubstitutorTest.java:58:12:58:61 | replace(...) | provenance | MaD:123 | +| StrSubstitutorTest.java:58:53:58:59 | taint(...) : String | StrSubstitutorTest.java:58:35:58:60 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| StrSubstitutorTest.java:59:12:59:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:59:12:59:67 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:59:35:59:60 | new StringBuilder(...) : StringBuilder | StrSubstitutorTest.java:59:12:59:67 | replace(...) | provenance | MaD:124 | +| StrSubstitutorTest.java:59:53:59:59 | taint(...) : String | StrSubstitutorTest.java:59:35:59:60 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| StrSubstitutorTest.java:60:12:60:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:60:12:60:60 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:60:35:60:59 | new StringBuffer(...) : StringBuffer | StrSubstitutorTest.java:60:12:60:60 | replace(...) | provenance | MaD:134 | +| StrSubstitutorTest.java:60:52:60:58 | taint(...) : String | StrSubstitutorTest.java:60:35:60:59 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| StrSubstitutorTest.java:61:12:61:25 | untaintedSubst : StrSubstitutor | StrSubstitutorTest.java:61:12:61:66 | replace(...) | provenance | MaD:138 | +| StrSubstitutorTest.java:61:35:61:59 | new StringBuffer(...) : StringBuffer | StrSubstitutorTest.java:61:12:61:66 | replace(...) | provenance | MaD:135 | +| StrSubstitutorTest.java:61:52:61:58 | taint(...) : String | StrSubstitutorTest.java:61:35:61:59 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| StrSubstitutorTest.java:64:35:64:41 | taint(...) : String | StrSubstitutorTest.java:64:12:64:73 | replace(...) | provenance | MaD:126 | +| StrSubstitutorTest.java:65:35:65:41 | taint(...) : String | StrSubstitutorTest.java:65:12:65:83 | replace(...) | provenance | MaD:128 | +| StrSubstitutorTest.java:66:44:66:53 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:66:12:66:54 | replace(...) | provenance | MaD:127 | +| StrSubstitutorTest.java:67:44:67:53 | taintedMap : HashMap [] : String | StrSubstitutorTest.java:67:12:67:64 | replace(...) | provenance | MaD:129 | | StrSubstitutorTest.java:69:7:69:18 | taintedProps [post update] : Properties [] : String | StrSubstitutorTest.java:71:44:71:55 | taintedProps : Properties [] : String | provenance | | +| StrSubstitutorTest.java:69:31:69:37 | taint(...) : String | StrSubstitutorTest.java:69:7:69:18 | taintedProps [post update] : Properties [] : String | provenance | MaD:10 | | StrSubstitutorTest.java:69:31:69:37 | taint(...) : String | StrSubstitutorTest.java:69:7:69:18 | taintedProps [post update] : Properties [] : String | provenance | MaD:12 | -| StrSubstitutorTest.java:69:31:69:37 | taint(...) : String | StrSubstitutorTest.java:69:7:69:18 | taintedProps [post update] : Properties [] : String | provenance | MaD:18 | -| StrSubstitutorTest.java:70:35:70:41 | taint(...) : String | StrSubstitutorTest.java:70:12:70:60 | replace(...) | provenance | MaD:136 | -| StrSubstitutorTest.java:71:44:71:55 | taintedProps : Properties [] : String | StrSubstitutorTest.java:71:12:71:56 | replace(...) | provenance | MaD:137 | -| StrSubstitutorTest.java:74:50:74:61 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:74:73:74:83 | strBuilder1 [post update] : StrBuilder | provenance | MaD:149 | +| StrSubstitutorTest.java:70:35:70:41 | taint(...) : String | StrSubstitutorTest.java:70:12:70:60 | replace(...) | provenance | MaD:130 | +| StrSubstitutorTest.java:71:44:71:55 | taintedProps : Properties [] : String | StrSubstitutorTest.java:71:12:71:56 | replace(...) | provenance | MaD:131 | +| StrSubstitutorTest.java:74:50:74:61 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:74:73:74:83 | strBuilder1 [post update] : StrBuilder | provenance | MaD:143 | | StrSubstitutorTest.java:74:73:74:83 | strBuilder1 [post update] : StrBuilder | StrSubstitutorTest.java:74:92:74:102 | strBuilder1 : StrBuilder | provenance | | -| StrSubstitutorTest.java:74:92:74:102 | strBuilder1 : StrBuilder | StrSubstitutorTest.java:74:92:74:113 | toString(...) | provenance | MaD:5 | -| StrSubstitutorTest.java:74:92:74:102 | strBuilder1 : StrBuilder | StrSubstitutorTest.java:74:92:74:113 | toString(...) | provenance | MaD:119 | -| StrSubstitutorTest.java:75:50:75:61 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:75:73:75:83 | strBuilder2 [post update] : StrBuilder | provenance | MaD:150 | +| StrSubstitutorTest.java:74:92:74:102 | strBuilder1 : StrBuilder | StrSubstitutorTest.java:74:92:74:113 | toString(...) | provenance | MaD:113 | +| StrSubstitutorTest.java:75:50:75:61 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:75:73:75:83 | strBuilder2 [post update] : StrBuilder | provenance | MaD:144 | | StrSubstitutorTest.java:75:73:75:83 | strBuilder2 [post update] : StrBuilder | StrSubstitutorTest.java:75:98:75:108 | strBuilder2 : StrBuilder | provenance | | -| StrSubstitutorTest.java:75:98:75:108 | strBuilder2 : StrBuilder | StrSubstitutorTest.java:75:98:75:119 | toString(...) | provenance | MaD:5 | -| StrSubstitutorTest.java:75:98:75:108 | strBuilder2 : StrBuilder | StrSubstitutorTest.java:75:98:75:119 | toString(...) | provenance | MaD:119 | -| StrSubstitutorTest.java:76:59:76:70 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:76:82:76:95 | stringBuilder1 [post update] : StringBuilder | provenance | MaD:147 | +| StrSubstitutorTest.java:75:98:75:108 | strBuilder2 : StrBuilder | StrSubstitutorTest.java:75:98:75:119 | toString(...) | provenance | MaD:113 | +| StrSubstitutorTest.java:76:59:76:70 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:76:82:76:95 | stringBuilder1 [post update] : StringBuilder | provenance | MaD:141 | | StrSubstitutorTest.java:76:82:76:95 | stringBuilder1 [post update] : StringBuilder | StrSubstitutorTest.java:76:104:76:117 | stringBuilder1 : StringBuilder | provenance | | -| StrSubstitutorTest.java:76:104:76:117 | stringBuilder1 : StringBuilder | StrSubstitutorTest.java:76:104:76:128 | toString(...) | provenance | MaD:5 | -| StrSubstitutorTest.java:77:59:77:70 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:77:82:77:95 | stringBuilder2 [post update] : StringBuilder | provenance | MaD:148 | +| StrSubstitutorTest.java:76:104:76:117 | stringBuilder1 : StringBuilder | StrSubstitutorTest.java:76:104:76:128 | toString(...) | provenance | MaD:3 | +| StrSubstitutorTest.java:77:59:77:70 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:77:82:77:95 | stringBuilder2 [post update] : StringBuilder | provenance | MaD:142 | | StrSubstitutorTest.java:77:82:77:95 | stringBuilder2 [post update] : StringBuilder | StrSubstitutorTest.java:77:110:77:123 | stringBuilder2 : StringBuilder | provenance | | -| StrSubstitutorTest.java:77:110:77:123 | stringBuilder2 : StringBuilder | StrSubstitutorTest.java:77:110:77:134 | toString(...) | provenance | MaD:5 | -| StrSubstitutorTest.java:78:56:78:67 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:78:79:78:91 | stringBuffer1 [post update] : StringBuffer | provenance | MaD:145 | +| StrSubstitutorTest.java:77:110:77:123 | stringBuilder2 : StringBuilder | StrSubstitutorTest.java:77:110:77:134 | toString(...) | provenance | MaD:3 | +| StrSubstitutorTest.java:78:56:78:67 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:78:79:78:91 | stringBuffer1 [post update] : StringBuffer | provenance | MaD:139 | | StrSubstitutorTest.java:78:79:78:91 | stringBuffer1 [post update] : StringBuffer | StrSubstitutorTest.java:78:100:78:112 | stringBuffer1 : StringBuffer | provenance | | -| StrSubstitutorTest.java:78:100:78:112 | stringBuffer1 : StringBuffer | StrSubstitutorTest.java:78:100:78:123 | toString(...) | provenance | MaD:5 | -| StrSubstitutorTest.java:79:56:79:67 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:79:79:79:91 | stringBuffer2 [post update] : StringBuffer | provenance | MaD:146 | +| StrSubstitutorTest.java:78:100:78:112 | stringBuffer1 : StringBuffer | StrSubstitutorTest.java:78:100:78:123 | toString(...) | provenance | MaD:3 | +| StrSubstitutorTest.java:79:56:79:67 | taintedSubst : StrSubstitutor | StrSubstitutorTest.java:79:79:79:91 | stringBuffer2 [post update] : StringBuffer | provenance | MaD:140 | | StrSubstitutorTest.java:79:79:79:91 | stringBuffer2 [post update] : StringBuffer | StrSubstitutorTest.java:79:106:79:118 | stringBuffer2 : StringBuffer | provenance | | -| StrSubstitutorTest.java:79:106:79:118 | stringBuffer2 : StringBuffer | StrSubstitutorTest.java:79:106:79:129 | toString(...) | provenance | MaD:5 | -| StrTokenizerTest.java:12:11:12:49 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:12:10:12:61 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:12:28:12:34 | taint(...) : String | StrTokenizerTest.java:12:28:12:48 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTest.java:12:28:12:48 | toCharArray(...) : char[] | StrTokenizerTest.java:12:11:12:49 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:13:11:13:54 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:13:10:13:66 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:13:28:13:34 | taint(...) : String | StrTokenizerTest.java:13:28:13:48 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTest.java:13:28:13:48 | toCharArray(...) : char[] | StrTokenizerTest.java:13:11:13:54 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:14:11:14:59 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:14:10:14:71 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:14:28:14:34 | taint(...) : String | StrTokenizerTest.java:14:28:14:48 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTest.java:14:28:14:48 | toCharArray(...) : char[] | StrTokenizerTest.java:14:11:14:59 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:15:11:15:54 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:15:10:15:66 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:15:28:15:34 | taint(...) : String | StrTokenizerTest.java:15:28:15:48 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTest.java:15:28:15:48 | toCharArray(...) : char[] | StrTokenizerTest.java:15:11:15:54 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:16:11:16:67 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:16:10:16:79 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:16:28:16:34 | taint(...) : String | StrTokenizerTest.java:16:28:16:48 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTest.java:16:28:16:48 | toCharArray(...) : char[] | StrTokenizerTest.java:16:11:16:67 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:17:11:17:85 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:17:10:17:97 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:17:28:17:34 | taint(...) : String | StrTokenizerTest.java:17:28:17:48 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTest.java:17:28:17:48 | toCharArray(...) : char[] | StrTokenizerTest.java:17:11:17:85 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:18:11:18:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:18:10:18:47 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:18:28:18:34 | taint(...) : String | StrTokenizerTest.java:18:11:18:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:19:11:19:40 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:19:10:19:52 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:19:28:19:34 | taint(...) : String | StrTokenizerTest.java:19:11:19:40 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:20:11:20:45 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:20:10:20:57 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:20:28:20:34 | taint(...) : String | StrTokenizerTest.java:20:11:20:45 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:21:11:21:40 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:21:10:21:52 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:21:28:21:34 | taint(...) : String | StrTokenizerTest.java:21:11:21:40 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:22:11:22:53 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:22:10:22:65 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:22:28:22:34 | taint(...) : String | StrTokenizerTest.java:22:11:22:53 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:23:11:23:71 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:23:10:23:83 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:23:28:23:34 | taint(...) : String | StrTokenizerTest.java:23:11:23:71 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:26:10:26:59 | getCSVInstance(...) : StrTokenizer | StrTokenizerTest.java:26:10:26:70 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:26:38:26:44 | taint(...) : String | StrTokenizerTest.java:26:38:26:58 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTest.java:26:38:26:58 | toCharArray(...) : char[] | StrTokenizerTest.java:26:10:26:59 | getCSVInstance(...) : StrTokenizer | provenance | MaD:154 | -| StrTokenizerTest.java:27:10:27:45 | getCSVInstance(...) : StrTokenizer | StrTokenizerTest.java:27:10:27:56 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:27:38:27:44 | taint(...) : String | StrTokenizerTest.java:27:10:27:45 | getCSVInstance(...) : StrTokenizer | provenance | MaD:154 | -| StrTokenizerTest.java:28:10:28:59 | getTSVInstance(...) : StrTokenizer | StrTokenizerTest.java:28:10:28:70 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:28:38:28:44 | taint(...) : String | StrTokenizerTest.java:28:38:28:58 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTest.java:28:38:28:58 | toCharArray(...) : char[] | StrTokenizerTest.java:28:10:28:59 | getTSVInstance(...) : StrTokenizer | provenance | MaD:156 | -| StrTokenizerTest.java:29:10:29:45 | getTSVInstance(...) : StrTokenizer | StrTokenizerTest.java:29:10:29:56 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:29:38:29:44 | taint(...) : String | StrTokenizerTest.java:29:10:29:45 | getTSVInstance(...) : StrTokenizer | provenance | MaD:156 | +| StrSubstitutorTest.java:79:106:79:118 | stringBuffer2 : StringBuffer | StrSubstitutorTest.java:79:106:79:129 | toString(...) | provenance | MaD:3 | +| StrTokenizerTest.java:12:11:12:49 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:12:10:12:61 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:12:28:12:34 | taint(...) : String | StrTokenizerTest.java:12:28:12:48 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTest.java:12:28:12:48 | toCharArray(...) : char[] | StrTokenizerTest.java:12:11:12:49 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:13:11:13:54 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:13:10:13:66 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:13:28:13:34 | taint(...) : String | StrTokenizerTest.java:13:28:13:48 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTest.java:13:28:13:48 | toCharArray(...) : char[] | StrTokenizerTest.java:13:11:13:54 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:14:11:14:59 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:14:10:14:71 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:14:28:14:34 | taint(...) : String | StrTokenizerTest.java:14:28:14:48 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTest.java:14:28:14:48 | toCharArray(...) : char[] | StrTokenizerTest.java:14:11:14:59 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:15:11:15:54 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:15:10:15:66 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:15:28:15:34 | taint(...) : String | StrTokenizerTest.java:15:28:15:48 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTest.java:15:28:15:48 | toCharArray(...) : char[] | StrTokenizerTest.java:15:11:15:54 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:16:11:16:67 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:16:10:16:79 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:16:28:16:34 | taint(...) : String | StrTokenizerTest.java:16:28:16:48 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTest.java:16:28:16:48 | toCharArray(...) : char[] | StrTokenizerTest.java:16:11:16:67 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:17:11:17:85 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:17:10:17:97 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:17:28:17:34 | taint(...) : String | StrTokenizerTest.java:17:28:17:48 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTest.java:17:28:17:48 | toCharArray(...) : char[] | StrTokenizerTest.java:17:11:17:85 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:18:11:18:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:18:10:18:47 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:18:28:18:34 | taint(...) : String | StrTokenizerTest.java:18:11:18:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:19:11:19:40 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:19:10:19:52 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:19:28:19:34 | taint(...) : String | StrTokenizerTest.java:19:11:19:40 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:20:11:20:45 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:20:10:20:57 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:20:28:20:34 | taint(...) : String | StrTokenizerTest.java:20:11:20:45 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:21:11:21:40 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:21:10:21:52 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:21:28:21:34 | taint(...) : String | StrTokenizerTest.java:21:11:21:40 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:22:11:22:53 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:22:10:22:65 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:22:28:22:34 | taint(...) : String | StrTokenizerTest.java:22:11:22:53 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:23:11:23:71 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:23:10:23:83 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:23:28:23:34 | taint(...) : String | StrTokenizerTest.java:23:11:23:71 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:26:10:26:59 | getCSVInstance(...) : StrTokenizer | StrTokenizerTest.java:26:10:26:70 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:26:38:26:44 | taint(...) : String | StrTokenizerTest.java:26:38:26:58 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTest.java:26:38:26:58 | toCharArray(...) : char[] | StrTokenizerTest.java:26:10:26:59 | getCSVInstance(...) : StrTokenizer | provenance | MaD:148 | +| StrTokenizerTest.java:27:10:27:45 | getCSVInstance(...) : StrTokenizer | StrTokenizerTest.java:27:10:27:56 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:27:38:27:44 | taint(...) : String | StrTokenizerTest.java:27:10:27:45 | getCSVInstance(...) : StrTokenizer | provenance | MaD:148 | +| StrTokenizerTest.java:28:10:28:59 | getTSVInstance(...) : StrTokenizer | StrTokenizerTest.java:28:10:28:70 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:28:38:28:44 | taint(...) : String | StrTokenizerTest.java:28:38:28:58 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTest.java:28:38:28:58 | toCharArray(...) : char[] | StrTokenizerTest.java:28:10:28:59 | getTSVInstance(...) : StrTokenizer | provenance | MaD:150 | +| StrTokenizerTest.java:29:10:29:45 | getTSVInstance(...) : StrTokenizer | StrTokenizerTest.java:29:10:29:56 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:29:38:29:44 | taint(...) : String | StrTokenizerTest.java:29:10:29:45 | getTSVInstance(...) : StrTokenizer | provenance | MaD:150 | | StrTokenizerTest.java:32:11:32:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:32:10:32:44 | clone(...) | provenance | CloneStep | -| StrTokenizerTest.java:32:11:32:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:32:10:32:44 | clone(...) | provenance | MaD:153 | -| StrTokenizerTest.java:32:28:32:34 | taint(...) : String | StrTokenizerTest.java:32:11:32:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:33:11:33:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:33:10:33:49 | getContent(...) | provenance | MaD:155 | -| StrTokenizerTest.java:33:28:33:34 | taint(...) : String | StrTokenizerTest.java:33:11:33:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:34:11:34:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:34:10:34:52 | getTokenArray(...) | provenance | MaD:157 | -| StrTokenizerTest.java:34:28:34:34 | taint(...) : String | StrTokenizerTest.java:34:11:34:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:35:11:35:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:35:10:35:51 | getTokenList(...) | provenance | MaD:158 | -| StrTokenizerTest.java:35:28:35:34 | taint(...) : String | StrTokenizerTest.java:35:11:35:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:36:11:36:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:36:10:36:43 | next(...) | provenance | MaD:13 | -| StrTokenizerTest.java:36:11:36:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:36:10:36:43 | next(...) | provenance | MaD:159 | -| StrTokenizerTest.java:36:28:36:34 | taint(...) : String | StrTokenizerTest.java:36:11:36:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:37:11:37:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:37:10:37:48 | nextToken(...) | provenance | MaD:160 | -| StrTokenizerTest.java:37:28:37:34 | taint(...) : String | StrTokenizerTest.java:37:11:37:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:38:11:38:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:38:10:38:47 | previous(...) | provenance | MaD:14 | -| StrTokenizerTest.java:38:11:38:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:38:10:38:47 | previous(...) | provenance | MaD:161 | -| StrTokenizerTest.java:38:28:38:34 | taint(...) : String | StrTokenizerTest.java:38:11:38:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:39:11:39:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:39:10:39:52 | previousToken(...) | provenance | MaD:162 | -| StrTokenizerTest.java:39:28:39:34 | taint(...) : String | StrTokenizerTest.java:39:11:39:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:152 | -| StrTokenizerTest.java:42:10:42:58 | reset(...) : StrTokenizer | StrTokenizerTest.java:42:10:42:69 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:42:37:42:43 | taint(...) : String | StrTokenizerTest.java:42:37:42:57 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTest.java:42:37:42:57 | toCharArray(...) : char[] | StrTokenizerTest.java:42:10:42:58 | reset(...) : StrTokenizer | provenance | MaD:163 | -| StrTokenizerTest.java:43:10:43:44 | reset(...) : StrTokenizer | StrTokenizerTest.java:43:10:43:55 | toString(...) | provenance | MaD:164 | -| StrTokenizerTest.java:43:37:43:43 | taint(...) : String | StrTokenizerTest.java:43:10:43:44 | reset(...) : StrTokenizer | provenance | MaD:163 | -| StrTokenizerTextTest.java:12:11:12:49 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:12:10:12:61 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:12:28:12:34 | taint(...) : String | StrTokenizerTextTest.java:12:28:12:48 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTextTest.java:12:28:12:48 | toCharArray(...) : char[] | StrTokenizerTextTest.java:12:11:12:49 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:13:11:13:54 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:13:10:13:66 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:13:28:13:34 | taint(...) : String | StrTokenizerTextTest.java:13:28:13:48 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTextTest.java:13:28:13:48 | toCharArray(...) : char[] | StrTokenizerTextTest.java:13:11:13:54 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:14:11:14:59 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:14:10:14:71 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:14:28:14:34 | taint(...) : String | StrTokenizerTextTest.java:14:28:14:48 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTextTest.java:14:28:14:48 | toCharArray(...) : char[] | StrTokenizerTextTest.java:14:11:14:59 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:15:11:15:54 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:15:10:15:66 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:15:28:15:34 | taint(...) : String | StrTokenizerTextTest.java:15:28:15:48 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTextTest.java:15:28:15:48 | toCharArray(...) : char[] | StrTokenizerTextTest.java:15:11:15:54 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:16:11:16:67 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:16:10:16:79 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:16:28:16:34 | taint(...) : String | StrTokenizerTextTest.java:16:28:16:48 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTextTest.java:16:28:16:48 | toCharArray(...) : char[] | StrTokenizerTextTest.java:16:11:16:67 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:17:11:17:85 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:17:10:17:97 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:17:28:17:34 | taint(...) : String | StrTokenizerTextTest.java:17:28:17:48 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTextTest.java:17:28:17:48 | toCharArray(...) : char[] | StrTokenizerTextTest.java:17:11:17:85 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:18:11:18:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:18:10:18:47 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:18:28:18:34 | taint(...) : String | StrTokenizerTextTest.java:18:11:18:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:19:11:19:40 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:19:10:19:52 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:19:28:19:34 | taint(...) : String | StrTokenizerTextTest.java:19:11:19:40 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:20:11:20:45 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:20:10:20:57 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:20:28:20:34 | taint(...) : String | StrTokenizerTextTest.java:20:11:20:45 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:21:11:21:40 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:21:10:21:52 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:21:28:21:34 | taint(...) : String | StrTokenizerTextTest.java:21:11:21:40 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:22:11:22:53 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:22:10:22:65 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:22:28:22:34 | taint(...) : String | StrTokenizerTextTest.java:22:11:22:53 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:23:11:23:71 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:23:10:23:83 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:23:28:23:34 | taint(...) : String | StrTokenizerTextTest.java:23:11:23:71 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:26:10:26:59 | getCSVInstance(...) : StrTokenizer | StrTokenizerTextTest.java:26:10:26:70 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:26:38:26:44 | taint(...) : String | StrTokenizerTextTest.java:26:38:26:58 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTextTest.java:26:38:26:58 | toCharArray(...) : char[] | StrTokenizerTextTest.java:26:10:26:59 | getCSVInstance(...) : StrTokenizer | provenance | MaD:509 | -| StrTokenizerTextTest.java:27:10:27:45 | getCSVInstance(...) : StrTokenizer | StrTokenizerTextTest.java:27:10:27:56 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:27:38:27:44 | taint(...) : String | StrTokenizerTextTest.java:27:10:27:45 | getCSVInstance(...) : StrTokenizer | provenance | MaD:509 | -| StrTokenizerTextTest.java:28:10:28:59 | getTSVInstance(...) : StrTokenizer | StrTokenizerTextTest.java:28:10:28:70 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:28:38:28:44 | taint(...) : String | StrTokenizerTextTest.java:28:38:28:58 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTextTest.java:28:38:28:58 | toCharArray(...) : char[] | StrTokenizerTextTest.java:28:10:28:59 | getTSVInstance(...) : StrTokenizer | provenance | MaD:511 | -| StrTokenizerTextTest.java:29:10:29:45 | getTSVInstance(...) : StrTokenizer | StrTokenizerTextTest.java:29:10:29:56 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:29:38:29:44 | taint(...) : String | StrTokenizerTextTest.java:29:10:29:45 | getTSVInstance(...) : StrTokenizer | provenance | MaD:511 | +| StrTokenizerTest.java:32:11:32:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:32:10:32:44 | clone(...) | provenance | MaD:147 | +| StrTokenizerTest.java:32:28:32:34 | taint(...) : String | StrTokenizerTest.java:32:11:32:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:33:11:33:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:33:10:33:49 | getContent(...) | provenance | MaD:149 | +| StrTokenizerTest.java:33:28:33:34 | taint(...) : String | StrTokenizerTest.java:33:11:33:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:34:11:34:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:34:10:34:52 | getTokenArray(...) | provenance | MaD:151 | +| StrTokenizerTest.java:34:28:34:34 | taint(...) : String | StrTokenizerTest.java:34:11:34:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:35:11:35:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:35:10:35:51 | getTokenList(...) | provenance | MaD:152 | +| StrTokenizerTest.java:35:28:35:34 | taint(...) : String | StrTokenizerTest.java:35:11:35:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:36:11:36:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:36:10:36:43 | next(...) | provenance | MaD:153 | +| StrTokenizerTest.java:36:28:36:34 | taint(...) : String | StrTokenizerTest.java:36:11:36:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:37:11:37:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:37:10:37:48 | nextToken(...) | provenance | MaD:154 | +| StrTokenizerTest.java:37:28:37:34 | taint(...) : String | StrTokenizerTest.java:37:11:37:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:38:11:38:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:38:10:38:47 | previous(...) | provenance | MaD:155 | +| StrTokenizerTest.java:38:28:38:34 | taint(...) : String | StrTokenizerTest.java:38:11:38:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:39:11:39:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTest.java:39:10:39:52 | previousToken(...) | provenance | MaD:156 | +| StrTokenizerTest.java:39:28:39:34 | taint(...) : String | StrTokenizerTest.java:39:11:39:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:146 | +| StrTokenizerTest.java:42:10:42:58 | reset(...) : StrTokenizer | StrTokenizerTest.java:42:10:42:69 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:42:37:42:43 | taint(...) : String | StrTokenizerTest.java:42:37:42:57 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTest.java:42:37:42:57 | toCharArray(...) : char[] | StrTokenizerTest.java:42:10:42:58 | reset(...) : StrTokenizer | provenance | MaD:157 | +| StrTokenizerTest.java:43:10:43:44 | reset(...) : StrTokenizer | StrTokenizerTest.java:43:10:43:55 | toString(...) | provenance | MaD:158 | +| StrTokenizerTest.java:43:37:43:43 | taint(...) : String | StrTokenizerTest.java:43:10:43:44 | reset(...) : StrTokenizer | provenance | MaD:157 | +| StrTokenizerTextTest.java:12:11:12:49 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:12:10:12:61 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:12:28:12:34 | taint(...) : String | StrTokenizerTextTest.java:12:28:12:48 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTextTest.java:12:28:12:48 | toCharArray(...) : char[] | StrTokenizerTextTest.java:12:11:12:49 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:13:11:13:54 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:13:10:13:66 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:13:28:13:34 | taint(...) : String | StrTokenizerTextTest.java:13:28:13:48 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTextTest.java:13:28:13:48 | toCharArray(...) : char[] | StrTokenizerTextTest.java:13:11:13:54 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:14:11:14:59 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:14:10:14:71 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:14:28:14:34 | taint(...) : String | StrTokenizerTextTest.java:14:28:14:48 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTextTest.java:14:28:14:48 | toCharArray(...) : char[] | StrTokenizerTextTest.java:14:11:14:59 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:15:11:15:54 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:15:10:15:66 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:15:28:15:34 | taint(...) : String | StrTokenizerTextTest.java:15:28:15:48 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTextTest.java:15:28:15:48 | toCharArray(...) : char[] | StrTokenizerTextTest.java:15:11:15:54 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:16:11:16:67 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:16:10:16:79 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:16:28:16:34 | taint(...) : String | StrTokenizerTextTest.java:16:28:16:48 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTextTest.java:16:28:16:48 | toCharArray(...) : char[] | StrTokenizerTextTest.java:16:11:16:67 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:17:11:17:85 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:17:10:17:97 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:17:28:17:34 | taint(...) : String | StrTokenizerTextTest.java:17:28:17:48 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTextTest.java:17:28:17:48 | toCharArray(...) : char[] | StrTokenizerTextTest.java:17:11:17:85 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:18:11:18:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:18:10:18:47 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:18:28:18:34 | taint(...) : String | StrTokenizerTextTest.java:18:11:18:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:19:11:19:40 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:19:10:19:52 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:19:28:19:34 | taint(...) : String | StrTokenizerTextTest.java:19:11:19:40 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:20:11:20:45 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:20:10:20:57 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:20:28:20:34 | taint(...) : String | StrTokenizerTextTest.java:20:11:20:45 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:21:11:21:40 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:21:10:21:52 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:21:28:21:34 | taint(...) : String | StrTokenizerTextTest.java:21:11:21:40 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:22:11:22:53 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:22:10:22:65 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:22:28:22:34 | taint(...) : String | StrTokenizerTextTest.java:22:11:22:53 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:23:11:23:71 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:23:10:23:83 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:23:28:23:34 | taint(...) : String | StrTokenizerTextTest.java:23:11:23:71 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:26:10:26:59 | getCSVInstance(...) : StrTokenizer | StrTokenizerTextTest.java:26:10:26:70 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:26:38:26:44 | taint(...) : String | StrTokenizerTextTest.java:26:38:26:58 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTextTest.java:26:38:26:58 | toCharArray(...) : char[] | StrTokenizerTextTest.java:26:10:26:59 | getCSVInstance(...) : StrTokenizer | provenance | MaD:503 | +| StrTokenizerTextTest.java:27:10:27:45 | getCSVInstance(...) : StrTokenizer | StrTokenizerTextTest.java:27:10:27:56 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:27:38:27:44 | taint(...) : String | StrTokenizerTextTest.java:27:10:27:45 | getCSVInstance(...) : StrTokenizer | provenance | MaD:503 | +| StrTokenizerTextTest.java:28:10:28:59 | getTSVInstance(...) : StrTokenizer | StrTokenizerTextTest.java:28:10:28:70 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:28:38:28:44 | taint(...) : String | StrTokenizerTextTest.java:28:38:28:58 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTextTest.java:28:38:28:58 | toCharArray(...) : char[] | StrTokenizerTextTest.java:28:10:28:59 | getTSVInstance(...) : StrTokenizer | provenance | MaD:505 | +| StrTokenizerTextTest.java:29:10:29:45 | getTSVInstance(...) : StrTokenizer | StrTokenizerTextTest.java:29:10:29:56 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:29:38:29:44 | taint(...) : String | StrTokenizerTextTest.java:29:10:29:45 | getTSVInstance(...) : StrTokenizer | provenance | MaD:505 | | StrTokenizerTextTest.java:32:11:32:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:32:10:32:44 | clone(...) | provenance | CloneStep | -| StrTokenizerTextTest.java:32:11:32:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:32:10:32:44 | clone(...) | provenance | MaD:508 | -| StrTokenizerTextTest.java:32:28:32:34 | taint(...) : String | StrTokenizerTextTest.java:32:11:32:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:33:11:33:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:33:10:33:49 | getContent(...) | provenance | MaD:510 | -| StrTokenizerTextTest.java:33:28:33:34 | taint(...) : String | StrTokenizerTextTest.java:33:11:33:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:34:11:34:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:34:10:34:52 | getTokenArray(...) | provenance | MaD:512 | -| StrTokenizerTextTest.java:34:28:34:34 | taint(...) : String | StrTokenizerTextTest.java:34:11:34:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:35:11:35:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:35:10:35:51 | getTokenList(...) | provenance | MaD:513 | -| StrTokenizerTextTest.java:35:28:35:34 | taint(...) : String | StrTokenizerTextTest.java:35:11:35:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:36:11:36:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:36:10:36:43 | next(...) | provenance | MaD:13 | -| StrTokenizerTextTest.java:36:11:36:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:36:10:36:43 | next(...) | provenance | MaD:514 | -| StrTokenizerTextTest.java:36:28:36:34 | taint(...) : String | StrTokenizerTextTest.java:36:11:36:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:37:11:37:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:37:10:37:48 | nextToken(...) | provenance | MaD:515 | -| StrTokenizerTextTest.java:37:28:37:34 | taint(...) : String | StrTokenizerTextTest.java:37:11:37:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:38:11:38:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:38:10:38:47 | previous(...) | provenance | MaD:14 | -| StrTokenizerTextTest.java:38:11:38:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:38:10:38:47 | previous(...) | provenance | MaD:516 | -| StrTokenizerTextTest.java:38:28:38:34 | taint(...) : String | StrTokenizerTextTest.java:38:11:38:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:39:11:39:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:39:10:39:52 | previousToken(...) | provenance | MaD:517 | -| StrTokenizerTextTest.java:39:28:39:34 | taint(...) : String | StrTokenizerTextTest.java:39:11:39:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:507 | -| StrTokenizerTextTest.java:42:10:42:58 | reset(...) : StrTokenizer | StrTokenizerTextTest.java:42:10:42:69 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:42:37:42:43 | taint(...) : String | StrTokenizerTextTest.java:42:37:42:57 | toCharArray(...) : char[] | provenance | MaD:7 | -| StrTokenizerTextTest.java:42:37:42:57 | toCharArray(...) : char[] | StrTokenizerTextTest.java:42:10:42:58 | reset(...) : StrTokenizer | provenance | MaD:518 | -| StrTokenizerTextTest.java:43:10:43:44 | reset(...) : StrTokenizer | StrTokenizerTextTest.java:43:10:43:55 | toString(...) | provenance | MaD:519 | -| StrTokenizerTextTest.java:43:37:43:43 | taint(...) : String | StrTokenizerTextTest.java:43:10:43:44 | reset(...) : StrTokenizer | provenance | MaD:518 | -| StringEscapeUtilsTest.java:9:39:9:45 | taint(...) : String | StringEscapeUtilsTest.java:9:10:9:46 | escapeJson(...) | provenance | MaD:272 | +| StrTokenizerTextTest.java:32:11:32:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:32:10:32:44 | clone(...) | provenance | MaD:502 | +| StrTokenizerTextTest.java:32:28:32:34 | taint(...) : String | StrTokenizerTextTest.java:32:11:32:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:33:11:33:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:33:10:33:49 | getContent(...) | provenance | MaD:504 | +| StrTokenizerTextTest.java:33:28:33:34 | taint(...) : String | StrTokenizerTextTest.java:33:11:33:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:34:11:34:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:34:10:34:52 | getTokenArray(...) | provenance | MaD:506 | +| StrTokenizerTextTest.java:34:28:34:34 | taint(...) : String | StrTokenizerTextTest.java:34:11:34:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:35:11:35:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:35:10:35:51 | getTokenList(...) | provenance | MaD:507 | +| StrTokenizerTextTest.java:35:28:35:34 | taint(...) : String | StrTokenizerTextTest.java:35:11:35:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:36:11:36:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:36:10:36:43 | next(...) | provenance | MaD:508 | +| StrTokenizerTextTest.java:36:28:36:34 | taint(...) : String | StrTokenizerTextTest.java:36:11:36:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:37:11:37:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:37:10:37:48 | nextToken(...) | provenance | MaD:509 | +| StrTokenizerTextTest.java:37:28:37:34 | taint(...) : String | StrTokenizerTextTest.java:37:11:37:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:38:11:38:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:38:10:38:47 | previous(...) | provenance | MaD:510 | +| StrTokenizerTextTest.java:38:28:38:34 | taint(...) : String | StrTokenizerTextTest.java:38:11:38:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:39:11:39:35 | new StrTokenizer(...) : StrTokenizer | StrTokenizerTextTest.java:39:10:39:52 | previousToken(...) | provenance | MaD:511 | +| StrTokenizerTextTest.java:39:28:39:34 | taint(...) : String | StrTokenizerTextTest.java:39:11:39:35 | new StrTokenizer(...) : StrTokenizer | provenance | MaD:501 | +| StrTokenizerTextTest.java:42:10:42:58 | reset(...) : StrTokenizer | StrTokenizerTextTest.java:42:10:42:69 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:42:37:42:43 | taint(...) : String | StrTokenizerTextTest.java:42:37:42:57 | toCharArray(...) : char[] | provenance | MaD:5 | +| StrTokenizerTextTest.java:42:37:42:57 | toCharArray(...) : char[] | StrTokenizerTextTest.java:42:10:42:58 | reset(...) : StrTokenizer | provenance | MaD:512 | +| StrTokenizerTextTest.java:43:10:43:44 | reset(...) : StrTokenizer | StrTokenizerTextTest.java:43:10:43:55 | toString(...) | provenance | MaD:513 | +| StrTokenizerTextTest.java:43:37:43:43 | taint(...) : String | StrTokenizerTextTest.java:43:10:43:44 | reset(...) : StrTokenizer | provenance | MaD:512 | +| StringEscapeUtilsTest.java:9:39:9:45 | taint(...) : String | StringEscapeUtilsTest.java:9:10:9:46 | escapeJson(...) | provenance | MaD:266 | | StringLookupTextTest.java:13:7:13:9 | map [post update] : HashMap [] : String | StringLookupTextTest.java:14:74:14:76 | map : HashMap [] : String | provenance | | -| StringLookupTextTest.java:13:22:13:28 | taint(...) : String | StringLookupTextTest.java:13:7:13:9 | map [post update] : HashMap [] : String | provenance | MaD:18 | +| StringLookupTextTest.java:13:22:13:28 | taint(...) : String | StringLookupTextTest.java:13:7:13:9 | map [post update] : HashMap [] : String | provenance | MaD:12 | | StringLookupTextTest.java:14:29:14:77 | mapStringLookup(...) : StringLookup | StringLookupTextTest.java:15:12:15:17 | lookup : StringLookup | provenance | | -| StringLookupTextTest.java:14:74:14:76 | map : HashMap [] : String | StringLookupTextTest.java:14:29:14:77 | mapStringLookup(...) : StringLookup | provenance | MaD:417 | -| StringLookupTextTest.java:15:12:15:17 | lookup : StringLookup | StringLookupTextTest.java:15:12:15:31 | lookup(...) | provenance | MaD:416 | +| StringLookupTextTest.java:14:74:14:76 | map : HashMap [] : String | StringLookupTextTest.java:14:29:14:77 | mapStringLookup(...) : StringLookup | provenance | MaD:411 | +| StringLookupTextTest.java:15:12:15:17 | lookup : StringLookup | StringLookupTextTest.java:15:12:15:31 | lookup(...) | provenance | MaD:410 | | StringSubstitutorTextTest.java:17:7:17:16 | taintedMap [post update] : HashMap [] : String | StringSubstitutorTextTest.java:18:81:18:90 | taintedMap : HashMap [] : String | provenance | | | StringSubstitutorTextTest.java:17:7:17:16 | taintedMap [post update] : HashMap [] : String | StringSubstitutorTextTest.java:22:53:22:62 | taintedMap : HashMap [] : String | provenance | | | StringSubstitutorTextTest.java:17:7:17:16 | taintedMap [post update] : HashMap [] : String | StringSubstitutorTextTest.java:23:53:23:62 | taintedMap : HashMap [] : String | provenance | | @@ -2323,14 +2180,14 @@ edges | StringSubstitutorTextTest.java:17:7:17:16 | taintedMap [post update] : HashMap [] : String | StringSubstitutorTextTest.java:25:53:25:62 | taintedMap : HashMap [] : String | provenance | | | StringSubstitutorTextTest.java:17:7:17:16 | taintedMap [post update] : HashMap [] : String | StringSubstitutorTextTest.java:67:47:67:56 | taintedMap : HashMap [] : String | provenance | | | StringSubstitutorTextTest.java:17:7:17:16 | taintedMap [post update] : HashMap [] : String | StringSubstitutorTextTest.java:68:47:68:56 | taintedMap : HashMap [] : String | provenance | | -| StringSubstitutorTextTest.java:17:29:17:35 | taint(...) : String | StringSubstitutorTextTest.java:17:7:17:16 | taintedMap [post update] : HashMap [] : String | provenance | MaD:18 | +| StringSubstitutorTextTest.java:17:29:17:35 | taint(...) : String | StringSubstitutorTextTest.java:17:7:17:16 | taintedMap [post update] : HashMap [] : String | provenance | MaD:12 | | StringSubstitutorTextTest.java:18:36:18:91 | mapStringLookup(...) : StringLookup | StringSubstitutorTextTest.java:21:80:21:92 | taintedLookup : StringLookup | provenance | | | StringSubstitutorTextTest.java:18:36:18:91 | mapStringLookup(...) : StringLookup | StringSubstitutorTextTest.java:26:53:26:65 | taintedLookup : StringLookup | provenance | | | StringSubstitutorTextTest.java:18:36:18:91 | mapStringLookup(...) : StringLookup | StringSubstitutorTextTest.java:27:53:27:65 | taintedLookup : StringLookup | provenance | | | StringSubstitutorTextTest.java:18:36:18:91 | mapStringLookup(...) : StringLookup | StringSubstitutorTextTest.java:28:53:28:65 | taintedLookup : StringLookup | provenance | | | StringSubstitutorTextTest.java:18:36:18:91 | mapStringLookup(...) : StringLookup | StringSubstitutorTextTest.java:29:53:29:65 | taintedLookup : StringLookup | provenance | | | StringSubstitutorTextTest.java:18:36:18:91 | mapStringLookup(...) : StringLookup | StringSubstitutorTextTest.java:30:54:30:66 | taintedLookup : StringLookup | provenance | | -| StringSubstitutorTextTest.java:18:81:18:90 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:18:36:18:91 | mapStringLookup(...) : StringLookup | provenance | MaD:417 | +| StringSubstitutorTextTest.java:18:81:18:90 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:18:36:18:91 | mapStringLookup(...) : StringLookup | provenance | MaD:411 | | StringSubstitutorTextTest.java:21:56:21:58 | ss1 [post update] : StringSubstitutor | StringSubstitutorTextTest.java:21:101:21:103 | ss1 : StringSubstitutor | provenance | | | StringSubstitutorTextTest.java:21:56:21:58 | ss1 [post update] : StringSubstitutor | StringSubstitutorTextTest.java:50:12:50:25 | untaintedSubst : StringSubstitutor | provenance | | | StringSubstitutorTextTest.java:21:56:21:58 | ss1 [post update] : StringSubstitutor | StringSubstitutorTextTest.java:51:12:51:25 | untaintedSubst : StringSubstitutor | provenance | | @@ -2345,8 +2202,8 @@ edges | StringSubstitutorTextTest.java:21:56:21:58 | ss1 [post update] : StringSubstitutor | StringSubstitutorTextTest.java:60:12:60:25 | untaintedSubst : StringSubstitutor | provenance | | | StringSubstitutorTextTest.java:21:56:21:58 | ss1 [post update] : StringSubstitutor | StringSubstitutorTextTest.java:61:12:61:25 | untaintedSubst : StringSubstitutor | provenance | | | StringSubstitutorTextTest.java:21:56:21:58 | ss1 [post update] : StringSubstitutor | StringSubstitutorTextTest.java:62:12:62:25 | untaintedSubst : StringSubstitutor | provenance | | -| StringSubstitutorTextTest.java:21:80:21:92 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:21:56:21:58 | ss1 [post update] : StringSubstitutor | provenance | MaD:546 | -| StringSubstitutorTextTest.java:21:101:21:103 | ss1 : StringSubstitutor | StringSubstitutorTextTest.java:21:101:21:120 | replace(...) | provenance | MaD:539 | +| StringSubstitutorTextTest.java:21:80:21:92 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:21:56:21:58 | ss1 [post update] : StringSubstitutor | provenance | MaD:540 | +| StringSubstitutorTextTest.java:21:101:21:103 | ss1 : StringSubstitutor | StringSubstitutorTextTest.java:21:101:21:120 | replace(...) | provenance | MaD:533 | | StringSubstitutorTextTest.java:22:31:22:63 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:22:71:22:73 | ss2 : StringSubstitutor | provenance | | | StringSubstitutorTextTest.java:22:31:22:63 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:34:12:34:23 | taintedSubst : StringSubstitutor | provenance | | | StringSubstitutorTextTest.java:22:31:22:63 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:35:12:35:23 | taintedSubst : StringSubstitutor | provenance | | @@ -2367,947 +2224,878 @@ edges | StringSubstitutorTextTest.java:22:31:22:63 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:78:59:78:70 | taintedSubst : StringSubstitutor | provenance | | | StringSubstitutorTextTest.java:22:31:22:63 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:79:56:79:67 | taintedSubst : StringSubstitutor | provenance | | | StringSubstitutorTextTest.java:22:31:22:63 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:80:56:80:67 | taintedSubst : StringSubstitutor | provenance | | -| StringSubstitutorTextTest.java:22:53:22:62 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:22:31:22:63 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:520 | -| StringSubstitutorTextTest.java:22:71:22:73 | ss2 : StringSubstitutor | StringSubstitutorTextTest.java:22:71:22:90 | replace(...) | provenance | MaD:539 | +| StringSubstitutorTextTest.java:22:53:22:62 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:22:31:22:63 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:514 | +| StringSubstitutorTextTest.java:22:71:22:73 | ss2 : StringSubstitutor | StringSubstitutorTextTest.java:22:71:22:90 | replace(...) | provenance | MaD:533 | | StringSubstitutorTextTest.java:23:31:23:73 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:23:81:23:83 | ss3 : StringSubstitutor | provenance | | -| StringSubstitutorTextTest.java:23:53:23:62 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:23:31:23:73 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:520 | -| StringSubstitutorTextTest.java:23:81:23:83 | ss3 : StringSubstitutor | StringSubstitutorTextTest.java:23:81:23:100 | replace(...) | provenance | MaD:539 | +| StringSubstitutorTextTest.java:23:53:23:62 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:23:31:23:73 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:514 | +| StringSubstitutorTextTest.java:23:81:23:83 | ss3 : StringSubstitutor | StringSubstitutorTextTest.java:23:81:23:100 | replace(...) | provenance | MaD:533 | | StringSubstitutorTextTest.java:24:31:24:78 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:24:86:24:88 | ss4 : StringSubstitutor | provenance | | -| StringSubstitutorTextTest.java:24:53:24:62 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:24:31:24:78 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:520 | -| StringSubstitutorTextTest.java:24:86:24:88 | ss4 : StringSubstitutor | StringSubstitutorTextTest.java:24:86:24:105 | replace(...) | provenance | MaD:539 | +| StringSubstitutorTextTest.java:24:53:24:62 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:24:31:24:78 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:514 | +| StringSubstitutorTextTest.java:24:86:24:88 | ss4 : StringSubstitutor | StringSubstitutorTextTest.java:24:86:24:105 | replace(...) | provenance | MaD:533 | | StringSubstitutorTextTest.java:25:31:25:83 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:25:91:25:93 | ss5 : StringSubstitutor | provenance | | -| StringSubstitutorTextTest.java:25:53:25:62 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:25:31:25:83 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:520 | -| StringSubstitutorTextTest.java:25:91:25:93 | ss5 : StringSubstitutor | StringSubstitutorTextTest.java:25:91:25:110 | replace(...) | provenance | MaD:539 | +| StringSubstitutorTextTest.java:25:53:25:62 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:25:31:25:83 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:514 | +| StringSubstitutorTextTest.java:25:91:25:93 | ss5 : StringSubstitutor | StringSubstitutorTextTest.java:25:91:25:110 | replace(...) | provenance | MaD:533 | | StringSubstitutorTextTest.java:26:31:26:66 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:26:74:26:76 | ss6 : StringSubstitutor | provenance | | -| StringSubstitutorTextTest.java:26:53:26:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:26:31:26:66 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:520 | -| StringSubstitutorTextTest.java:26:53:26:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:26:31:26:66 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:521 | -| StringSubstitutorTextTest.java:26:74:26:76 | ss6 : StringSubstitutor | StringSubstitutorTextTest.java:26:74:26:93 | replace(...) | provenance | MaD:539 | +| StringSubstitutorTextTest.java:26:53:26:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:26:31:26:66 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:514 | +| StringSubstitutorTextTest.java:26:53:26:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:26:31:26:66 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:515 | +| StringSubstitutorTextTest.java:26:74:26:76 | ss6 : StringSubstitutor | StringSubstitutorTextTest.java:26:74:26:93 | replace(...) | provenance | MaD:533 | | StringSubstitutorTextTest.java:27:31:27:81 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:27:89:27:91 | ss7 : StringSubstitutor | provenance | | -| StringSubstitutorTextTest.java:27:53:27:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:27:31:27:81 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:520 | -| StringSubstitutorTextTest.java:27:53:27:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:27:31:27:81 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:521 | -| StringSubstitutorTextTest.java:27:89:27:91 | ss7 : StringSubstitutor | StringSubstitutorTextTest.java:27:89:27:108 | replace(...) | provenance | MaD:539 | +| StringSubstitutorTextTest.java:27:53:27:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:27:31:27:81 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:514 | +| StringSubstitutorTextTest.java:27:53:27:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:27:31:27:81 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:515 | +| StringSubstitutorTextTest.java:27:89:27:91 | ss7 : StringSubstitutor | StringSubstitutorTextTest.java:27:89:27:108 | replace(...) | provenance | MaD:533 | | StringSubstitutorTextTest.java:28:31:28:86 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:28:94:28:96 | ss8 : StringSubstitutor | provenance | | -| StringSubstitutorTextTest.java:28:53:28:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:28:31:28:86 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:520 | -| StringSubstitutorTextTest.java:28:53:28:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:28:31:28:86 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:521 | -| StringSubstitutorTextTest.java:28:94:28:96 | ss8 : StringSubstitutor | StringSubstitutorTextTest.java:28:94:28:113 | replace(...) | provenance | MaD:539 | +| StringSubstitutorTextTest.java:28:53:28:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:28:31:28:86 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:514 | +| StringSubstitutorTextTest.java:28:53:28:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:28:31:28:86 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:515 | +| StringSubstitutorTextTest.java:28:94:28:96 | ss8 : StringSubstitutor | StringSubstitutorTextTest.java:28:94:28:113 | replace(...) | provenance | MaD:533 | | StringSubstitutorTextTest.java:29:31:29:98 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:29:106:29:108 | ss9 : StringSubstitutor | provenance | | -| StringSubstitutorTextTest.java:29:53:29:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:29:31:29:98 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:520 | -| StringSubstitutorTextTest.java:29:53:29:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:29:31:29:98 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:521 | -| StringSubstitutorTextTest.java:29:106:29:108 | ss9 : StringSubstitutor | StringSubstitutorTextTest.java:29:106:29:125 | replace(...) | provenance | MaD:539 | +| StringSubstitutorTextTest.java:29:53:29:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:29:31:29:98 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:514 | +| StringSubstitutorTextTest.java:29:53:29:65 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:29:31:29:98 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:515 | +| StringSubstitutorTextTest.java:29:106:29:108 | ss9 : StringSubstitutor | StringSubstitutorTextTest.java:29:106:29:125 | replace(...) | provenance | MaD:533 | | StringSubstitutorTextTest.java:30:32:30:105 | new StringSubstitutor(...) : StringSubstitutor | StringSubstitutorTextTest.java:30:113:30:116 | ss10 : StringSubstitutor | provenance | | -| StringSubstitutorTextTest.java:30:54:30:66 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:30:32:30:105 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:520 | -| StringSubstitutorTextTest.java:30:54:30:66 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:30:32:30:105 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:521 | -| StringSubstitutorTextTest.java:30:113:30:116 | ss10 : StringSubstitutor | StringSubstitutorTextTest.java:30:113:30:133 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:34:12:34:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:34:12:34:48 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:35:12:35:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:35:12:35:40 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:36:12:36:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:36:12:36:46 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:37:12:37:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:37:12:37:54 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:38:12:38:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:38:12:38:60 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:39:12:39:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:39:12:39:54 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:40:12:40:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:40:12:40:60 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:41:12:41:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:41:12:41:63 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:42:12:42:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:42:12:42:69 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:43:12:43:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:43:12:43:59 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:44:12:44:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:44:12:44:65 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:45:12:45:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:45:12:45:58 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:46:12:46:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:46:12:46:64 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:50:12:50:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:50:12:50:50 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:50:35:50:49 | (...)... : String | StringSubstitutorTextTest.java:50:12:50:50 | replace(...) | provenance | MaD:526 | +| StringSubstitutorTextTest.java:30:54:30:66 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:30:32:30:105 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:514 | +| StringSubstitutorTextTest.java:30:54:30:66 | taintedLookup : StringLookup | StringSubstitutorTextTest.java:30:32:30:105 | new StringSubstitutor(...) : StringSubstitutor | provenance | MaD:515 | +| StringSubstitutorTextTest.java:30:113:30:116 | ss10 : StringSubstitutor | StringSubstitutorTextTest.java:30:113:30:133 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:34:12:34:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:34:12:34:48 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:35:12:35:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:35:12:35:40 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:36:12:36:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:36:12:36:46 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:37:12:37:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:37:12:37:54 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:38:12:38:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:38:12:38:60 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:39:12:39:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:39:12:39:54 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:40:12:40:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:40:12:40:60 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:41:12:41:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:41:12:41:63 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:42:12:42:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:42:12:42:69 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:43:12:43:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:43:12:43:59 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:44:12:44:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:44:12:44:65 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:45:12:45:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:45:12:45:58 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:46:12:46:23 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:46:12:46:64 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:50:12:50:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:50:12:50:50 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:50:35:50:49 | (...)... : String | StringSubstitutorTextTest.java:50:12:50:50 | replace(...) | provenance | MaD:520 | | StringSubstitutorTextTest.java:50:43:50:49 | taint(...) : String | StringSubstitutorTextTest.java:50:35:50:49 | (...)... : String | provenance | | -| StringSubstitutorTextTest.java:51:12:51:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:51:12:51:42 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:51:35:51:41 | taint(...) : String | StringSubstitutorTextTest.java:51:12:51:42 | replace(...) | provenance | MaD:533 | -| StringSubstitutorTextTest.java:52:12:52:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:52:12:52:48 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:52:35:52:41 | taint(...) : String | StringSubstitutorTextTest.java:52:12:52:48 | replace(...) | provenance | MaD:534 | -| StringSubstitutorTextTest.java:53:12:53:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:53:12:53:56 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:53:35:53:41 | taint(...) : String | StringSubstitutorTextTest.java:53:35:53:55 | toCharArray(...) : char[] | provenance | MaD:7 | -| StringSubstitutorTextTest.java:53:35:53:55 | toCharArray(...) : char[] | StringSubstitutorTextTest.java:53:12:53:56 | replace(...) | provenance | MaD:522 | -| StringSubstitutorTextTest.java:54:12:54:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:54:12:54:62 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:54:35:54:41 | taint(...) : String | StringSubstitutorTextTest.java:54:35:54:55 | toCharArray(...) : char[] | provenance | MaD:7 | -| StringSubstitutorTextTest.java:54:35:54:55 | toCharArray(...) : char[] | StringSubstitutorTextTest.java:54:12:54:62 | replace(...) | provenance | MaD:523 | -| StringSubstitutorTextTest.java:55:12:55:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:55:12:55:56 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:55:35:55:55 | (...)... : String | StringSubstitutorTextTest.java:55:12:55:56 | replace(...) | provenance | MaD:524 | +| StringSubstitutorTextTest.java:51:12:51:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:51:12:51:42 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:51:35:51:41 | taint(...) : String | StringSubstitutorTextTest.java:51:12:51:42 | replace(...) | provenance | MaD:527 | +| StringSubstitutorTextTest.java:52:12:52:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:52:12:52:48 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:52:35:52:41 | taint(...) : String | StringSubstitutorTextTest.java:52:12:52:48 | replace(...) | provenance | MaD:528 | +| StringSubstitutorTextTest.java:53:12:53:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:53:12:53:56 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:53:35:53:41 | taint(...) : String | StringSubstitutorTextTest.java:53:35:53:55 | toCharArray(...) : char[] | provenance | MaD:5 | +| StringSubstitutorTextTest.java:53:35:53:55 | toCharArray(...) : char[] | StringSubstitutorTextTest.java:53:12:53:56 | replace(...) | provenance | MaD:516 | +| StringSubstitutorTextTest.java:54:12:54:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:54:12:54:62 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:54:35:54:41 | taint(...) : String | StringSubstitutorTextTest.java:54:35:54:55 | toCharArray(...) : char[] | provenance | MaD:5 | +| StringSubstitutorTextTest.java:54:35:54:55 | toCharArray(...) : char[] | StringSubstitutorTextTest.java:54:12:54:62 | replace(...) | provenance | MaD:517 | +| StringSubstitutorTextTest.java:55:12:55:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:55:12:55:56 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:55:35:55:55 | (...)... : String | StringSubstitutorTextTest.java:55:12:55:56 | replace(...) | provenance | MaD:518 | | StringSubstitutorTextTest.java:55:49:55:55 | taint(...) : String | StringSubstitutorTextTest.java:55:35:55:55 | (...)... : String | provenance | | -| StringSubstitutorTextTest.java:56:12:56:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:56:12:56:62 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:56:35:56:55 | (...)... : String | StringSubstitutorTextTest.java:56:12:56:62 | replace(...) | provenance | MaD:525 | +| StringSubstitutorTextTest.java:56:12:56:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:56:12:56:62 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:56:35:56:55 | (...)... : String | StringSubstitutorTextTest.java:56:12:56:62 | replace(...) | provenance | MaD:519 | | StringSubstitutorTextTest.java:56:49:56:55 | taint(...) : String | StringSubstitutorTextTest.java:56:35:56:55 | (...)... : String | provenance | | -| StringSubstitutorTextTest.java:57:12:57:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:57:12:57:65 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:57:35:57:64 | new TextStringBuilder(...) : TextStringBuilder | StringSubstitutorTextTest.java:57:12:57:65 | replace(...) | provenance | MaD:537 | -| StringSubstitutorTextTest.java:57:57:57:63 | taint(...) : String | StringSubstitutorTextTest.java:57:35:57:64 | new TextStringBuilder(...) : TextStringBuilder | provenance | MaD:561 | -| StringSubstitutorTextTest.java:58:12:58:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:58:12:58:71 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:58:35:58:64 | new TextStringBuilder(...) : TextStringBuilder | StringSubstitutorTextTest.java:58:12:58:71 | replace(...) | provenance | MaD:538 | -| StringSubstitutorTextTest.java:58:57:58:63 | taint(...) : String | StringSubstitutorTextTest.java:58:35:58:64 | new TextStringBuilder(...) : TextStringBuilder | provenance | MaD:561 | -| StringSubstitutorTextTest.java:59:12:59:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:59:12:59:61 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:59:35:59:60 | new StringBuilder(...) : StringBuilder | StringSubstitutorTextTest.java:59:12:59:61 | replace(...) | provenance | MaD:524 | -| StringSubstitutorTextTest.java:59:53:59:59 | taint(...) : String | StringSubstitutorTextTest.java:59:35:59:60 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| StringSubstitutorTextTest.java:60:12:60:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:60:12:60:67 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:60:35:60:60 | new StringBuilder(...) : StringBuilder | StringSubstitutorTextTest.java:60:12:60:67 | replace(...) | provenance | MaD:525 | -| StringSubstitutorTextTest.java:60:53:60:59 | taint(...) : String | StringSubstitutorTextTest.java:60:35:60:60 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| StringSubstitutorTextTest.java:61:12:61:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:61:12:61:60 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:61:35:61:59 | new StringBuffer(...) : StringBuffer | StringSubstitutorTextTest.java:61:12:61:60 | replace(...) | provenance | MaD:535 | -| StringSubstitutorTextTest.java:61:52:61:58 | taint(...) : String | StringSubstitutorTextTest.java:61:35:61:59 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| StringSubstitutorTextTest.java:62:12:62:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:62:12:62:66 | replace(...) | provenance | MaD:539 | -| StringSubstitutorTextTest.java:62:35:62:59 | new StringBuffer(...) : StringBuffer | StringSubstitutorTextTest.java:62:12:62:66 | replace(...) | provenance | MaD:536 | -| StringSubstitutorTextTest.java:62:52:62:58 | taint(...) : String | StringSubstitutorTextTest.java:62:35:62:59 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| StringSubstitutorTextTest.java:65:38:65:44 | taint(...) : String | StringSubstitutorTextTest.java:65:12:65:76 | replace(...) | provenance | MaD:527 | -| StringSubstitutorTextTest.java:66:38:66:44 | taint(...) : String | StringSubstitutorTextTest.java:66:12:66:86 | replace(...) | provenance | MaD:529 | -| StringSubstitutorTextTest.java:67:47:67:56 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:67:12:67:57 | replace(...) | provenance | MaD:528 | -| StringSubstitutorTextTest.java:68:47:68:56 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:68:12:68:67 | replace(...) | provenance | MaD:530 | +| StringSubstitutorTextTest.java:57:12:57:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:57:12:57:65 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:57:35:57:64 | new TextStringBuilder(...) : TextStringBuilder | StringSubstitutorTextTest.java:57:12:57:65 | replace(...) | provenance | MaD:531 | +| StringSubstitutorTextTest.java:57:57:57:63 | taint(...) : String | StringSubstitutorTextTest.java:57:35:57:64 | new TextStringBuilder(...) : TextStringBuilder | provenance | MaD:555 | +| StringSubstitutorTextTest.java:58:12:58:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:58:12:58:71 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:58:35:58:64 | new TextStringBuilder(...) : TextStringBuilder | StringSubstitutorTextTest.java:58:12:58:71 | replace(...) | provenance | MaD:532 | +| StringSubstitutorTextTest.java:58:57:58:63 | taint(...) : String | StringSubstitutorTextTest.java:58:35:58:64 | new TextStringBuilder(...) : TextStringBuilder | provenance | MaD:555 | +| StringSubstitutorTextTest.java:59:12:59:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:59:12:59:61 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:59:35:59:60 | new StringBuilder(...) : StringBuilder | StringSubstitutorTextTest.java:59:12:59:61 | replace(...) | provenance | MaD:518 | +| StringSubstitutorTextTest.java:59:53:59:59 | taint(...) : String | StringSubstitutorTextTest.java:59:35:59:60 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| StringSubstitutorTextTest.java:60:12:60:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:60:12:60:67 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:60:35:60:60 | new StringBuilder(...) : StringBuilder | StringSubstitutorTextTest.java:60:12:60:67 | replace(...) | provenance | MaD:519 | +| StringSubstitutorTextTest.java:60:53:60:59 | taint(...) : String | StringSubstitutorTextTest.java:60:35:60:60 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| StringSubstitutorTextTest.java:61:12:61:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:61:12:61:60 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:61:35:61:59 | new StringBuffer(...) : StringBuffer | StringSubstitutorTextTest.java:61:12:61:60 | replace(...) | provenance | MaD:529 | +| StringSubstitutorTextTest.java:61:52:61:58 | taint(...) : String | StringSubstitutorTextTest.java:61:35:61:59 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| StringSubstitutorTextTest.java:62:12:62:25 | untaintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:62:12:62:66 | replace(...) | provenance | MaD:533 | +| StringSubstitutorTextTest.java:62:35:62:59 | new StringBuffer(...) : StringBuffer | StringSubstitutorTextTest.java:62:12:62:66 | replace(...) | provenance | MaD:530 | +| StringSubstitutorTextTest.java:62:52:62:58 | taint(...) : String | StringSubstitutorTextTest.java:62:35:62:59 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| StringSubstitutorTextTest.java:65:38:65:44 | taint(...) : String | StringSubstitutorTextTest.java:65:12:65:76 | replace(...) | provenance | MaD:521 | +| StringSubstitutorTextTest.java:66:38:66:44 | taint(...) : String | StringSubstitutorTextTest.java:66:12:66:86 | replace(...) | provenance | MaD:523 | +| StringSubstitutorTextTest.java:67:47:67:56 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:67:12:67:57 | replace(...) | provenance | MaD:522 | +| StringSubstitutorTextTest.java:68:47:68:56 | taintedMap : HashMap [] : String | StringSubstitutorTextTest.java:68:12:68:67 | replace(...) | provenance | MaD:524 | | StringSubstitutorTextTest.java:70:7:70:18 | taintedProps [post update] : Properties [] : String | StringSubstitutorTextTest.java:72:47:72:58 | taintedProps : Properties [] : String | provenance | | +| StringSubstitutorTextTest.java:70:31:70:37 | taint(...) : String | StringSubstitutorTextTest.java:70:7:70:18 | taintedProps [post update] : Properties [] : String | provenance | MaD:10 | | StringSubstitutorTextTest.java:70:31:70:37 | taint(...) : String | StringSubstitutorTextTest.java:70:7:70:18 | taintedProps [post update] : Properties [] : String | provenance | MaD:12 | -| StringSubstitutorTextTest.java:70:31:70:37 | taint(...) : String | StringSubstitutorTextTest.java:70:7:70:18 | taintedProps [post update] : Properties [] : String | provenance | MaD:18 | -| StringSubstitutorTextTest.java:71:38:71:44 | taint(...) : String | StringSubstitutorTextTest.java:71:12:71:63 | replace(...) | provenance | MaD:531 | -| StringSubstitutorTextTest.java:72:47:72:58 | taintedProps : Properties [] : String | StringSubstitutorTextTest.java:72:12:72:59 | replace(...) | provenance | MaD:532 | -| StringSubstitutorTextTest.java:75:64:75:75 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:75:87:75:97 | strBuilder1 [post update] : TextStringBuilder | provenance | MaD:544 | +| StringSubstitutorTextTest.java:71:38:71:44 | taint(...) : String | StringSubstitutorTextTest.java:71:12:71:63 | replace(...) | provenance | MaD:525 | +| StringSubstitutorTextTest.java:72:47:72:58 | taintedProps : Properties [] : String | StringSubstitutorTextTest.java:72:12:72:59 | replace(...) | provenance | MaD:526 | +| StringSubstitutorTextTest.java:75:64:75:75 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:75:87:75:97 | strBuilder1 [post update] : TextStringBuilder | provenance | MaD:538 | | StringSubstitutorTextTest.java:75:87:75:97 | strBuilder1 [post update] : TextStringBuilder | StringSubstitutorTextTest.java:75:106:75:116 | strBuilder1 : TextStringBuilder | provenance | | -| StringSubstitutorTextTest.java:75:106:75:116 | strBuilder1 : TextStringBuilder | StringSubstitutorTextTest.java:75:106:75:127 | toString(...) | provenance | MaD:5 | -| StringSubstitutorTextTest.java:75:106:75:116 | strBuilder1 : TextStringBuilder | StringSubstitutorTextTest.java:75:106:75:127 | toString(...) | provenance | MaD:646 | -| StringSubstitutorTextTest.java:76:64:76:75 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:76:87:76:97 | strBuilder2 [post update] : TextStringBuilder | provenance | MaD:545 | +| StringSubstitutorTextTest.java:75:106:75:116 | strBuilder1 : TextStringBuilder | StringSubstitutorTextTest.java:75:106:75:127 | toString(...) | provenance | MaD:640 | +| StringSubstitutorTextTest.java:76:64:76:75 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:76:87:76:97 | strBuilder2 [post update] : TextStringBuilder | provenance | MaD:539 | | StringSubstitutorTextTest.java:76:87:76:97 | strBuilder2 [post update] : TextStringBuilder | StringSubstitutorTextTest.java:76:112:76:122 | strBuilder2 : TextStringBuilder | provenance | | -| StringSubstitutorTextTest.java:76:112:76:122 | strBuilder2 : TextStringBuilder | StringSubstitutorTextTest.java:76:112:76:133 | toString(...) | provenance | MaD:5 | -| StringSubstitutorTextTest.java:76:112:76:122 | strBuilder2 : TextStringBuilder | StringSubstitutorTextTest.java:76:112:76:133 | toString(...) | provenance | MaD:646 | -| StringSubstitutorTextTest.java:77:59:77:70 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:77:82:77:95 | stringBuilder1 [post update] : StringBuilder | provenance | MaD:542 | +| StringSubstitutorTextTest.java:76:112:76:122 | strBuilder2 : TextStringBuilder | StringSubstitutorTextTest.java:76:112:76:133 | toString(...) | provenance | MaD:640 | +| StringSubstitutorTextTest.java:77:59:77:70 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:77:82:77:95 | stringBuilder1 [post update] : StringBuilder | provenance | MaD:536 | | StringSubstitutorTextTest.java:77:82:77:95 | stringBuilder1 [post update] : StringBuilder | StringSubstitutorTextTest.java:77:104:77:117 | stringBuilder1 : StringBuilder | provenance | | -| StringSubstitutorTextTest.java:77:104:77:117 | stringBuilder1 : StringBuilder | StringSubstitutorTextTest.java:77:104:77:128 | toString(...) | provenance | MaD:5 | -| StringSubstitutorTextTest.java:78:59:78:70 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:78:82:78:95 | stringBuilder2 [post update] : StringBuilder | provenance | MaD:543 | +| StringSubstitutorTextTest.java:77:104:77:117 | stringBuilder1 : StringBuilder | StringSubstitutorTextTest.java:77:104:77:128 | toString(...) | provenance | MaD:3 | +| StringSubstitutorTextTest.java:78:59:78:70 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:78:82:78:95 | stringBuilder2 [post update] : StringBuilder | provenance | MaD:537 | | StringSubstitutorTextTest.java:78:82:78:95 | stringBuilder2 [post update] : StringBuilder | StringSubstitutorTextTest.java:78:110:78:123 | stringBuilder2 : StringBuilder | provenance | | -| StringSubstitutorTextTest.java:78:110:78:123 | stringBuilder2 : StringBuilder | StringSubstitutorTextTest.java:78:110:78:134 | toString(...) | provenance | MaD:5 | -| StringSubstitutorTextTest.java:79:56:79:67 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:79:79:79:91 | stringBuffer1 [post update] : StringBuffer | provenance | MaD:540 | +| StringSubstitutorTextTest.java:78:110:78:123 | stringBuilder2 : StringBuilder | StringSubstitutorTextTest.java:78:110:78:134 | toString(...) | provenance | MaD:3 | +| StringSubstitutorTextTest.java:79:56:79:67 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:79:79:79:91 | stringBuffer1 [post update] : StringBuffer | provenance | MaD:534 | | StringSubstitutorTextTest.java:79:79:79:91 | stringBuffer1 [post update] : StringBuffer | StringSubstitutorTextTest.java:79:100:79:112 | stringBuffer1 : StringBuffer | provenance | | -| StringSubstitutorTextTest.java:79:100:79:112 | stringBuffer1 : StringBuffer | StringSubstitutorTextTest.java:79:100:79:123 | toString(...) | provenance | MaD:5 | -| StringSubstitutorTextTest.java:80:56:80:67 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:80:79:80:91 | stringBuffer2 [post update] : StringBuffer | provenance | MaD:541 | +| StringSubstitutorTextTest.java:79:100:79:112 | stringBuffer1 : StringBuffer | StringSubstitutorTextTest.java:79:100:79:123 | toString(...) | provenance | MaD:3 | +| StringSubstitutorTextTest.java:80:56:80:67 | taintedSubst : StringSubstitutor | StringSubstitutorTextTest.java:80:79:80:91 | stringBuffer2 [post update] : StringBuffer | provenance | MaD:535 | | StringSubstitutorTextTest.java:80:79:80:91 | stringBuffer2 [post update] : StringBuffer | StringSubstitutorTextTest.java:80:106:80:118 | stringBuffer2 : StringBuffer | provenance | | -| StringSubstitutorTextTest.java:80:106:80:118 | stringBuffer2 : StringBuffer | StringSubstitutorTextTest.java:80:106:80:129 | toString(...) | provenance | MaD:5 | -| StringTokenizerTest.java:12:11:12:52 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:12:10:12:64 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:12:31:12:37 | taint(...) : String | StringTokenizerTest.java:12:31:12:51 | toCharArray(...) : char[] | provenance | MaD:7 | -| StringTokenizerTest.java:12:31:12:51 | toCharArray(...) : char[] | StringTokenizerTest.java:12:11:12:52 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:13:11:13:57 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:13:10:13:69 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:13:31:13:37 | taint(...) : String | StringTokenizerTest.java:13:31:13:51 | toCharArray(...) : char[] | provenance | MaD:7 | -| StringTokenizerTest.java:13:31:13:51 | toCharArray(...) : char[] | StringTokenizerTest.java:13:11:13:57 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:14:11:14:62 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:14:10:14:74 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:14:31:14:37 | taint(...) : String | StringTokenizerTest.java:14:31:14:51 | toCharArray(...) : char[] | provenance | MaD:7 | -| StringTokenizerTest.java:14:31:14:51 | toCharArray(...) : char[] | StringTokenizerTest.java:14:11:14:62 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:15:11:15:57 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:15:10:15:69 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:15:31:15:37 | taint(...) : String | StringTokenizerTest.java:15:31:15:51 | toCharArray(...) : char[] | provenance | MaD:7 | -| StringTokenizerTest.java:15:31:15:51 | toCharArray(...) : char[] | StringTokenizerTest.java:15:11:15:57 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:16:11:16:73 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:16:10:16:85 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:16:31:16:37 | taint(...) : String | StringTokenizerTest.java:16:31:16:51 | toCharArray(...) : char[] | provenance | MaD:7 | -| StringTokenizerTest.java:16:31:16:51 | toCharArray(...) : char[] | StringTokenizerTest.java:16:11:16:73 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:17:11:17:94 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:17:10:17:106 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:17:31:17:37 | taint(...) : String | StringTokenizerTest.java:17:31:17:51 | toCharArray(...) : char[] | provenance | MaD:7 | -| StringTokenizerTest.java:17:31:17:51 | toCharArray(...) : char[] | StringTokenizerTest.java:17:11:17:94 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:18:11:18:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:18:10:18:50 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:18:31:18:37 | taint(...) : String | StringTokenizerTest.java:18:11:18:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:19:11:19:43 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:19:10:19:55 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:19:31:19:37 | taint(...) : String | StringTokenizerTest.java:19:11:19:43 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:20:11:20:48 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:20:10:20:60 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:20:31:20:37 | taint(...) : String | StringTokenizerTest.java:20:11:20:48 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:21:11:21:43 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:21:10:21:55 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:21:31:21:37 | taint(...) : String | StringTokenizerTest.java:21:11:21:43 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:22:11:22:59 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:22:10:22:71 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:22:31:22:37 | taint(...) : String | StringTokenizerTest.java:22:11:22:59 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:23:11:23:80 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:23:10:23:92 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:23:31:23:37 | taint(...) : String | StringTokenizerTest.java:23:11:23:80 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:26:10:26:62 | getCSVInstance(...) : StringTokenizer | StringTokenizerTest.java:26:10:26:73 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:26:41:26:47 | taint(...) : String | StringTokenizerTest.java:26:41:26:61 | toCharArray(...) : char[] | provenance | MaD:7 | -| StringTokenizerTest.java:26:41:26:61 | toCharArray(...) : char[] | StringTokenizerTest.java:26:10:26:62 | getCSVInstance(...) : StringTokenizer | provenance | MaD:549 | -| StringTokenizerTest.java:27:10:27:48 | getCSVInstance(...) : StringTokenizer | StringTokenizerTest.java:27:10:27:59 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:27:41:27:47 | taint(...) : String | StringTokenizerTest.java:27:10:27:48 | getCSVInstance(...) : StringTokenizer | provenance | MaD:549 | -| StringTokenizerTest.java:28:10:28:62 | getTSVInstance(...) : StringTokenizer | StringTokenizerTest.java:28:10:28:73 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:28:41:28:47 | taint(...) : String | StringTokenizerTest.java:28:41:28:61 | toCharArray(...) : char[] | provenance | MaD:7 | -| StringTokenizerTest.java:28:41:28:61 | toCharArray(...) : char[] | StringTokenizerTest.java:28:10:28:62 | getTSVInstance(...) : StringTokenizer | provenance | MaD:551 | -| StringTokenizerTest.java:29:10:29:48 | getTSVInstance(...) : StringTokenizer | StringTokenizerTest.java:29:10:29:59 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:29:41:29:47 | taint(...) : String | StringTokenizerTest.java:29:10:29:48 | getTSVInstance(...) : StringTokenizer | provenance | MaD:551 | +| StringSubstitutorTextTest.java:80:106:80:118 | stringBuffer2 : StringBuffer | StringSubstitutorTextTest.java:80:106:80:129 | toString(...) | provenance | MaD:3 | +| StringTokenizerTest.java:12:11:12:52 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:12:10:12:64 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:12:31:12:37 | taint(...) : String | StringTokenizerTest.java:12:31:12:51 | toCharArray(...) : char[] | provenance | MaD:5 | +| StringTokenizerTest.java:12:31:12:51 | toCharArray(...) : char[] | StringTokenizerTest.java:12:11:12:52 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:13:11:13:57 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:13:10:13:69 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:13:31:13:37 | taint(...) : String | StringTokenizerTest.java:13:31:13:51 | toCharArray(...) : char[] | provenance | MaD:5 | +| StringTokenizerTest.java:13:31:13:51 | toCharArray(...) : char[] | StringTokenizerTest.java:13:11:13:57 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:14:11:14:62 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:14:10:14:74 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:14:31:14:37 | taint(...) : String | StringTokenizerTest.java:14:31:14:51 | toCharArray(...) : char[] | provenance | MaD:5 | +| StringTokenizerTest.java:14:31:14:51 | toCharArray(...) : char[] | StringTokenizerTest.java:14:11:14:62 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:15:11:15:57 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:15:10:15:69 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:15:31:15:37 | taint(...) : String | StringTokenizerTest.java:15:31:15:51 | toCharArray(...) : char[] | provenance | MaD:5 | +| StringTokenizerTest.java:15:31:15:51 | toCharArray(...) : char[] | StringTokenizerTest.java:15:11:15:57 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:16:11:16:73 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:16:10:16:85 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:16:31:16:37 | taint(...) : String | StringTokenizerTest.java:16:31:16:51 | toCharArray(...) : char[] | provenance | MaD:5 | +| StringTokenizerTest.java:16:31:16:51 | toCharArray(...) : char[] | StringTokenizerTest.java:16:11:16:73 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:17:11:17:94 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:17:10:17:106 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:17:31:17:37 | taint(...) : String | StringTokenizerTest.java:17:31:17:51 | toCharArray(...) : char[] | provenance | MaD:5 | +| StringTokenizerTest.java:17:31:17:51 | toCharArray(...) : char[] | StringTokenizerTest.java:17:11:17:94 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:18:11:18:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:18:10:18:50 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:18:31:18:37 | taint(...) : String | StringTokenizerTest.java:18:11:18:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:19:11:19:43 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:19:10:19:55 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:19:31:19:37 | taint(...) : String | StringTokenizerTest.java:19:11:19:43 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:20:11:20:48 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:20:10:20:60 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:20:31:20:37 | taint(...) : String | StringTokenizerTest.java:20:11:20:48 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:21:11:21:43 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:21:10:21:55 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:21:31:21:37 | taint(...) : String | StringTokenizerTest.java:21:11:21:43 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:22:11:22:59 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:22:10:22:71 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:22:31:22:37 | taint(...) : String | StringTokenizerTest.java:22:11:22:59 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:23:11:23:80 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:23:10:23:92 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:23:31:23:37 | taint(...) : String | StringTokenizerTest.java:23:11:23:80 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:26:10:26:62 | getCSVInstance(...) : StringTokenizer | StringTokenizerTest.java:26:10:26:73 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:26:41:26:47 | taint(...) : String | StringTokenizerTest.java:26:41:26:61 | toCharArray(...) : char[] | provenance | MaD:5 | +| StringTokenizerTest.java:26:41:26:61 | toCharArray(...) : char[] | StringTokenizerTest.java:26:10:26:62 | getCSVInstance(...) : StringTokenizer | provenance | MaD:543 | +| StringTokenizerTest.java:27:10:27:48 | getCSVInstance(...) : StringTokenizer | StringTokenizerTest.java:27:10:27:59 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:27:41:27:47 | taint(...) : String | StringTokenizerTest.java:27:10:27:48 | getCSVInstance(...) : StringTokenizer | provenance | MaD:543 | +| StringTokenizerTest.java:28:10:28:62 | getTSVInstance(...) : StringTokenizer | StringTokenizerTest.java:28:10:28:73 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:28:41:28:47 | taint(...) : String | StringTokenizerTest.java:28:41:28:61 | toCharArray(...) : char[] | provenance | MaD:5 | +| StringTokenizerTest.java:28:41:28:61 | toCharArray(...) : char[] | StringTokenizerTest.java:28:10:28:62 | getTSVInstance(...) : StringTokenizer | provenance | MaD:545 | +| StringTokenizerTest.java:29:10:29:48 | getTSVInstance(...) : StringTokenizer | StringTokenizerTest.java:29:10:29:59 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:29:41:29:47 | taint(...) : String | StringTokenizerTest.java:29:10:29:48 | getTSVInstance(...) : StringTokenizer | provenance | MaD:545 | | StringTokenizerTest.java:32:11:32:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:32:10:32:47 | clone(...) | provenance | CloneStep | -| StringTokenizerTest.java:32:11:32:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:32:10:32:47 | clone(...) | provenance | MaD:548 | -| StringTokenizerTest.java:32:31:32:37 | taint(...) : String | StringTokenizerTest.java:32:11:32:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:33:11:33:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:33:10:33:52 | getContent(...) | provenance | MaD:550 | -| StringTokenizerTest.java:33:31:33:37 | taint(...) : String | StringTokenizerTest.java:33:11:33:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:34:11:34:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:34:10:34:55 | getTokenArray(...) | provenance | MaD:552 | -| StringTokenizerTest.java:34:31:34:37 | taint(...) : String | StringTokenizerTest.java:34:11:34:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:35:11:35:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:35:10:35:54 | getTokenList(...) | provenance | MaD:553 | -| StringTokenizerTest.java:35:31:35:37 | taint(...) : String | StringTokenizerTest.java:35:11:35:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:36:11:36:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:36:10:36:46 | next(...) | provenance | MaD:13 | -| StringTokenizerTest.java:36:11:36:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:36:10:36:46 | next(...) | provenance | MaD:554 | -| StringTokenizerTest.java:36:31:36:37 | taint(...) : String | StringTokenizerTest.java:36:11:36:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:37:11:37:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:37:10:37:51 | nextToken(...) | provenance | MaD:555 | -| StringTokenizerTest.java:37:31:37:37 | taint(...) : String | StringTokenizerTest.java:37:11:37:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:38:11:38:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:38:10:38:50 | previous(...) | provenance | MaD:14 | -| StringTokenizerTest.java:38:11:38:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:38:10:38:50 | previous(...) | provenance | MaD:556 | -| StringTokenizerTest.java:38:31:38:37 | taint(...) : String | StringTokenizerTest.java:38:11:38:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:39:11:39:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:39:10:39:55 | previousToken(...) | provenance | MaD:557 | -| StringTokenizerTest.java:39:31:39:37 | taint(...) : String | StringTokenizerTest.java:39:11:39:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:547 | -| StringTokenizerTest.java:42:10:42:61 | reset(...) : StringTokenizer | StringTokenizerTest.java:42:10:42:72 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:42:40:42:46 | taint(...) : String | StringTokenizerTest.java:42:40:42:60 | toCharArray(...) : char[] | provenance | MaD:7 | -| StringTokenizerTest.java:42:40:42:60 | toCharArray(...) : char[] | StringTokenizerTest.java:42:10:42:61 | reset(...) : StringTokenizer | provenance | MaD:558 | -| StringTokenizerTest.java:43:10:43:47 | reset(...) : StringTokenizer | StringTokenizerTest.java:43:10:43:58 | toString(...) | provenance | MaD:559 | -| StringTokenizerTest.java:43:40:43:46 | taint(...) : String | StringTokenizerTest.java:43:10:43:47 | reset(...) : StringTokenizer | provenance | MaD:558 | -| Test.java:15:37:15:43 | taint(...) : String | Test.java:15:14:15:47 | abbreviate(...) | provenance | MaD:275 | -| Test.java:16:37:16:43 | taint(...) : String | Test.java:16:14:16:50 | abbreviate(...) | provenance | MaD:275 | -| Test.java:17:37:17:43 | taint(...) : String | Test.java:17:14:17:54 | abbreviate(...) | provenance | MaD:275 | -| Test.java:18:50:18:56 | taint(...) : String | Test.java:18:14:18:60 | abbreviate(...) | provenance | MaD:273 | -| Test.java:19:37:19:43 | taint(...) : String | Test.java:19:14:19:57 | abbreviate(...) | provenance | MaD:275 | -| Test.java:20:50:20:56 | taint(...) : String | Test.java:20:14:20:63 | abbreviate(...) | provenance | MaD:274 | -| Test.java:21:43:21:49 | taint(...) : String | Test.java:21:14:21:60 | abbreviateMiddle(...) | provenance | MaD:276 | -| Test.java:22:56:22:62 | taint(...) : String | Test.java:22:14:22:66 | abbreviateMiddle(...) | provenance | MaD:277 | -| Test.java:23:42:23:48 | taint(...) : String | Test.java:23:14:23:89 | appendIfMissing(...) | provenance | MaD:278 | -| Test.java:24:52:24:58 | taint(...) : String | Test.java:24:14:24:89 | appendIfMissing(...) | provenance | MaD:279 | -| Test.java:28:52:28:58 | taint(...) : String | Test.java:28:14:28:99 | appendIfMissingIgnoreCase(...) | provenance | MaD:280 | -| Test.java:29:62:29:68 | taint(...) : String | Test.java:29:14:29:99 | appendIfMissingIgnoreCase(...) | provenance | MaD:281 | -| Test.java:33:37:33:43 | taint(...) : String | Test.java:33:14:33:44 | capitalize(...) | provenance | MaD:282 | -| Test.java:34:33:34:39 | taint(...) : String | Test.java:34:14:34:43 | center(...) | provenance | MaD:284 | -| Test.java:35:33:35:39 | taint(...) : String | Test.java:35:14:35:48 | center(...) | provenance | MaD:284 | -| Test.java:36:33:36:39 | taint(...) : String | Test.java:36:14:36:61 | center(...) | provenance | MaD:284 | -| Test.java:37:49:37:55 | taint(...) : String | Test.java:37:14:37:56 | center(...) | provenance | MaD:283 | -| Test.java:38:32:38:38 | taint(...) : String | Test.java:38:14:38:39 | chomp(...) | provenance | MaD:285 | -| Test.java:39:32:39:38 | taint(...) : String | Test.java:39:14:39:52 | chomp(...) | provenance | MaD:286 | -| Test.java:42:31:42:37 | taint(...) : String | Test.java:42:14:42:38 | chop(...) | provenance | MaD:287 | -| Test.java:43:41:43:47 | taint(...) : String | Test.java:43:14:43:59 | defaultIfBlank(...) | provenance | MaD:288 | -| Test.java:44:58:44:64 | taint(...) : String | Test.java:44:14:44:65 | defaultIfBlank(...) | provenance | MaD:288 | -| Test.java:45:41:45:47 | taint(...) : String | Test.java:45:14:45:59 | defaultIfEmpty(...) | provenance | MaD:289 | -| Test.java:46:58:46:64 | taint(...) : String | Test.java:46:14:46:65 | defaultIfEmpty(...) | provenance | MaD:289 | -| Test.java:47:40:47:46 | taint(...) : String | Test.java:47:14:47:47 | defaultString(...) | provenance | MaD:290 | -| Test.java:48:40:48:46 | taint(...) : String | Test.java:48:14:48:65 | defaultString(...) | provenance | MaD:290 | -| Test.java:49:56:49:62 | taint(...) : String | Test.java:49:14:49:63 | defaultString(...) | provenance | MaD:290 | -| Test.java:50:43:50:49 | taint(...) : String | Test.java:50:14:50:50 | deleteWhitespace(...) | provenance | MaD:291 | -| Test.java:51:37:51:43 | taint(...) : String | Test.java:51:14:51:51 | difference(...) | provenance | MaD:292 | -| Test.java:52:44:52:50 | taint(...) : String | Test.java:52:14:52:51 | difference(...) | provenance | MaD:292 | -| Test.java:53:14:53:64 | new ..[] { .. } : CharSequence[] [[]] : String | Test.java:53:14:53:64 | firstNonBlank(...) | provenance | MaD:293 | +| StringTokenizerTest.java:32:11:32:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:32:10:32:47 | clone(...) | provenance | MaD:542 | +| StringTokenizerTest.java:32:31:32:37 | taint(...) : String | StringTokenizerTest.java:32:11:32:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:33:11:33:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:33:10:33:52 | getContent(...) | provenance | MaD:544 | +| StringTokenizerTest.java:33:31:33:37 | taint(...) : String | StringTokenizerTest.java:33:11:33:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:34:11:34:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:34:10:34:55 | getTokenArray(...) | provenance | MaD:546 | +| StringTokenizerTest.java:34:31:34:37 | taint(...) : String | StringTokenizerTest.java:34:11:34:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:35:11:35:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:35:10:35:54 | getTokenList(...) | provenance | MaD:547 | +| StringTokenizerTest.java:35:31:35:37 | taint(...) : String | StringTokenizerTest.java:35:11:35:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:36:11:36:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:36:10:36:46 | next(...) | provenance | MaD:548 | +| StringTokenizerTest.java:36:31:36:37 | taint(...) : String | StringTokenizerTest.java:36:11:36:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:37:11:37:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:37:10:37:51 | nextToken(...) | provenance | MaD:549 | +| StringTokenizerTest.java:37:31:37:37 | taint(...) : String | StringTokenizerTest.java:37:11:37:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:38:11:38:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:38:10:38:50 | previous(...) | provenance | MaD:550 | +| StringTokenizerTest.java:38:31:38:37 | taint(...) : String | StringTokenizerTest.java:38:11:38:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:39:11:39:38 | new StringTokenizer(...) : StringTokenizer | StringTokenizerTest.java:39:10:39:55 | previousToken(...) | provenance | MaD:551 | +| StringTokenizerTest.java:39:31:39:37 | taint(...) : String | StringTokenizerTest.java:39:11:39:38 | new StringTokenizer(...) : StringTokenizer | provenance | MaD:541 | +| StringTokenizerTest.java:42:10:42:61 | reset(...) : StringTokenizer | StringTokenizerTest.java:42:10:42:72 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:42:40:42:46 | taint(...) : String | StringTokenizerTest.java:42:40:42:60 | toCharArray(...) : char[] | provenance | MaD:5 | +| StringTokenizerTest.java:42:40:42:60 | toCharArray(...) : char[] | StringTokenizerTest.java:42:10:42:61 | reset(...) : StringTokenizer | provenance | MaD:552 | +| StringTokenizerTest.java:43:10:43:47 | reset(...) : StringTokenizer | StringTokenizerTest.java:43:10:43:58 | toString(...) | provenance | MaD:553 | +| StringTokenizerTest.java:43:40:43:46 | taint(...) : String | StringTokenizerTest.java:43:10:43:47 | reset(...) : StringTokenizer | provenance | MaD:552 | +| Test.java:15:37:15:43 | taint(...) : String | Test.java:15:14:15:47 | abbreviate(...) | provenance | MaD:269 | +| Test.java:16:37:16:43 | taint(...) : String | Test.java:16:14:16:50 | abbreviate(...) | provenance | MaD:269 | +| Test.java:17:37:17:43 | taint(...) : String | Test.java:17:14:17:54 | abbreviate(...) | provenance | MaD:269 | +| Test.java:18:50:18:56 | taint(...) : String | Test.java:18:14:18:60 | abbreviate(...) | provenance | MaD:267 | +| Test.java:19:37:19:43 | taint(...) : String | Test.java:19:14:19:57 | abbreviate(...) | provenance | MaD:269 | +| Test.java:20:50:20:56 | taint(...) : String | Test.java:20:14:20:63 | abbreviate(...) | provenance | MaD:268 | +| Test.java:21:43:21:49 | taint(...) : String | Test.java:21:14:21:60 | abbreviateMiddle(...) | provenance | MaD:270 | +| Test.java:22:56:22:62 | taint(...) : String | Test.java:22:14:22:66 | abbreviateMiddle(...) | provenance | MaD:271 | +| Test.java:23:42:23:48 | taint(...) : String | Test.java:23:14:23:89 | appendIfMissing(...) | provenance | MaD:272 | +| Test.java:24:52:24:58 | taint(...) : String | Test.java:24:14:24:89 | appendIfMissing(...) | provenance | MaD:273 | +| Test.java:28:52:28:58 | taint(...) : String | Test.java:28:14:28:99 | appendIfMissingIgnoreCase(...) | provenance | MaD:274 | +| Test.java:29:62:29:68 | taint(...) : String | Test.java:29:14:29:99 | appendIfMissingIgnoreCase(...) | provenance | MaD:275 | +| Test.java:33:37:33:43 | taint(...) : String | Test.java:33:14:33:44 | capitalize(...) | provenance | MaD:276 | +| Test.java:34:33:34:39 | taint(...) : String | Test.java:34:14:34:43 | center(...) | provenance | MaD:278 | +| Test.java:35:33:35:39 | taint(...) : String | Test.java:35:14:35:48 | center(...) | provenance | MaD:278 | +| Test.java:36:33:36:39 | taint(...) : String | Test.java:36:14:36:61 | center(...) | provenance | MaD:278 | +| Test.java:37:49:37:55 | taint(...) : String | Test.java:37:14:37:56 | center(...) | provenance | MaD:277 | +| Test.java:38:32:38:38 | taint(...) : String | Test.java:38:14:38:39 | chomp(...) | provenance | MaD:279 | +| Test.java:39:32:39:38 | taint(...) : String | Test.java:39:14:39:52 | chomp(...) | provenance | MaD:280 | +| Test.java:42:31:42:37 | taint(...) : String | Test.java:42:14:42:38 | chop(...) | provenance | MaD:281 | +| Test.java:43:41:43:47 | taint(...) : String | Test.java:43:14:43:59 | defaultIfBlank(...) | provenance | MaD:282 | +| Test.java:44:58:44:64 | taint(...) : String | Test.java:44:14:44:65 | defaultIfBlank(...) | provenance | MaD:282 | +| Test.java:45:41:45:47 | taint(...) : String | Test.java:45:14:45:59 | defaultIfEmpty(...) | provenance | MaD:283 | +| Test.java:46:58:46:64 | taint(...) : String | Test.java:46:14:46:65 | defaultIfEmpty(...) | provenance | MaD:283 | +| Test.java:47:40:47:46 | taint(...) : String | Test.java:47:14:47:47 | defaultString(...) | provenance | MaD:284 | +| Test.java:48:40:48:46 | taint(...) : String | Test.java:48:14:48:65 | defaultString(...) | provenance | MaD:284 | +| Test.java:49:56:49:62 | taint(...) : String | Test.java:49:14:49:63 | defaultString(...) | provenance | MaD:284 | +| Test.java:50:43:50:49 | taint(...) : String | Test.java:50:14:50:50 | deleteWhitespace(...) | provenance | MaD:285 | +| Test.java:51:37:51:43 | taint(...) : String | Test.java:51:14:51:51 | difference(...) | provenance | MaD:286 | +| Test.java:52:44:52:50 | taint(...) : String | Test.java:52:14:52:51 | difference(...) | provenance | MaD:286 | +| Test.java:53:14:53:64 | new ..[] { .. } : CharSequence[] [[]] : String | Test.java:53:14:53:64 | firstNonBlank(...) | provenance | MaD:287 | | Test.java:53:40:53:46 | taint(...) : String | Test.java:53:14:53:64 | new ..[] { .. } : CharSequence[] [[]] : String | provenance | | -| Test.java:54:14:54:63 | new ..[] { .. } : CharSequence[] [[]] : String | Test.java:54:14:54:63 | firstNonBlank(...) | provenance | MaD:293 | +| Test.java:54:14:54:63 | new ..[] { .. } : CharSequence[] [[]] : String | Test.java:54:14:54:63 | firstNonBlank(...) | provenance | MaD:287 | | Test.java:54:56:54:62 | taint(...) : String | Test.java:54:14:54:63 | new ..[] { .. } : CharSequence[] [[]] : String | provenance | | -| Test.java:55:14:55:64 | new ..[] { .. } : CharSequence[] [[]] : String | Test.java:55:14:55:64 | firstNonEmpty(...) | provenance | MaD:294 | +| Test.java:55:14:55:64 | new ..[] { .. } : CharSequence[] [[]] : String | Test.java:55:14:55:64 | firstNonEmpty(...) | provenance | MaD:288 | | Test.java:55:40:55:46 | taint(...) : String | Test.java:55:14:55:64 | new ..[] { .. } : CharSequence[] [[]] : String | provenance | | -| Test.java:56:14:56:63 | new ..[] { .. } : CharSequence[] [[]] : String | Test.java:56:14:56:63 | firstNonEmpty(...) | provenance | MaD:294 | +| Test.java:56:14:56:63 | new ..[] { .. } : CharSequence[] [[]] : String | Test.java:56:14:56:63 | firstNonEmpty(...) | provenance | MaD:288 | | Test.java:56:56:56:62 | taint(...) : String | Test.java:56:14:56:63 | new ..[] { .. } : CharSequence[] [[]] : String | provenance | | -| Test.java:57:35:57:41 | taint(...) : String | Test.java:57:14:57:57 | getBytes(...) | provenance | MaD:295 | -| Test.java:58:35:58:41 | taint(...) : String | Test.java:58:14:58:58 | getBytes(...) | provenance | MaD:295 | -| Test.java:61:14:61:66 | new ..[] { .. } : String[] [[]] : String | Test.java:61:14:61:66 | getCommonPrefix(...) | provenance | MaD:296 | +| Test.java:57:35:57:41 | taint(...) : String | Test.java:57:14:57:57 | getBytes(...) | provenance | MaD:289 | +| Test.java:58:35:58:41 | taint(...) : String | Test.java:58:14:58:58 | getBytes(...) | provenance | MaD:289 | +| Test.java:61:14:61:66 | new ..[] { .. } : String[] [[]] : String | Test.java:61:14:61:66 | getCommonPrefix(...) | provenance | MaD:290 | | Test.java:61:42:61:48 | taint(...) : String | Test.java:61:14:61:66 | new ..[] { .. } : String[] [[]] : String | provenance | | -| Test.java:62:14:62:65 | new ..[] { .. } : String[] [[]] : String | Test.java:62:14:62:65 | getCommonPrefix(...) | provenance | MaD:296 | +| Test.java:62:14:62:65 | new ..[] { .. } : String[] [[]] : String | Test.java:62:14:62:65 | getCommonPrefix(...) | provenance | MaD:290 | | Test.java:62:58:62:64 | taint(...) : String | Test.java:62:14:62:65 | new ..[] { .. } : String[] [[]] : String | provenance | | -| Test.java:63:36:63:42 | taint(...) : String | Test.java:63:14:63:43 | getDigits(...) | provenance | MaD:297 | -| Test.java:64:37:64:43 | taint(...) : String | Test.java:64:14:64:61 | getIfBlank(...) | provenance | MaD:298 | -| Test.java:65:37:65:43 | taint(...) : String | Test.java:65:14:65:61 | getIfEmpty(...) | provenance | MaD:299 | -| Test.java:73:31:73:37 | taint(...) : String | Test.java:73:31:73:51 | toCharArray(...) : char[] | provenance | MaD:7 | -| Test.java:73:31:73:51 | toCharArray(...) : char[] | Test.java:73:14:73:57 | join(...) | provenance | MaD:307 | -| Test.java:74:31:74:37 | taint(...) : String | Test.java:74:31:74:51 | toCharArray(...) : char[] | provenance | MaD:7 | -| Test.java:74:31:74:51 | toCharArray(...) : char[] | Test.java:74:14:74:63 | join(...) | provenance | MaD:308 | +| Test.java:63:36:63:42 | taint(...) : String | Test.java:63:14:63:43 | getDigits(...) | provenance | MaD:291 | +| Test.java:64:37:64:43 | taint(...) : String | Test.java:64:14:64:61 | getIfBlank(...) | provenance | MaD:292 | +| Test.java:65:37:65:43 | taint(...) : String | Test.java:65:14:65:61 | getIfEmpty(...) | provenance | MaD:293 | +| Test.java:73:31:73:37 | taint(...) : String | Test.java:73:31:73:51 | toCharArray(...) : char[] | provenance | MaD:5 | +| Test.java:73:31:73:51 | toCharArray(...) : char[] | Test.java:73:14:73:57 | join(...) | provenance | MaD:301 | +| Test.java:74:31:74:37 | taint(...) : String | Test.java:74:31:74:51 | toCharArray(...) : char[] | provenance | MaD:5 | +| Test.java:74:31:74:51 | toCharArray(...) : char[] | Test.java:74:14:74:63 | join(...) | provenance | MaD:302 | | Test.java:77:9:77:19 | taintedList [post update] : ArrayList [] : String | Test.java:78:31:78:41 | taintedList : ArrayList [] : String | provenance | | | Test.java:77:9:77:19 | taintedList [post update] : ArrayList [] : String | Test.java:79:31:79:41 | taintedList : ArrayList [] : String | provenance | | | Test.java:77:9:77:19 | taintedList [post update] : ArrayList [] : String | Test.java:83:31:83:41 | taintedList : ArrayList [] : String | provenance | | | Test.java:77:9:77:19 | taintedList [post update] : ArrayList [] : String | Test.java:84:31:84:41 | taintedList : ArrayList [] : String | provenance | | | Test.java:77:9:77:19 | taintedList [post update] : ArrayList [] : String | Test.java:87:31:87:41 | taintedList : ArrayList [] : String | provenance | | | Test.java:77:9:77:19 | taintedList [post update] : ArrayList [] : String | Test.java:88:31:88:41 | taintedList : ArrayList [] : String | provenance | | -| Test.java:77:25:77:31 | taint(...) : String | Test.java:77:9:77:19 | taintedList [post update] : ArrayList [] : String | provenance | MaD:11 | -| Test.java:78:31:78:41 | taintedList : ArrayList [] : String | Test.java:78:14:78:47 | join(...) | provenance | MaD:309 | -| Test.java:79:31:79:41 | taintedList : ArrayList [] : String | Test.java:79:14:79:49 | join(...) | provenance | MaD:310 | -| Test.java:81:46:81:52 | taint(...) : String | Test.java:81:14:81:53 | join(...) | provenance | MaD:311 | -| Test.java:83:31:83:41 | taintedList : ArrayList [] : String | Test.java:83:31:83:52 | iterator(...) : Iterator [] : String | provenance | MaD:6 | -| Test.java:83:31:83:52 | iterator(...) : Iterator [] : String | Test.java:83:14:83:58 | join(...) | provenance | MaD:312 | -| Test.java:84:31:84:41 | taintedList : ArrayList [] : String | Test.java:84:31:84:52 | iterator(...) : Iterator [] : String | provenance | MaD:6 | -| Test.java:84:31:84:52 | iterator(...) : Iterator [] : String | Test.java:84:14:84:60 | join(...) | provenance | MaD:313 | -| Test.java:85:57:85:63 | taint(...) : String | Test.java:85:14:85:64 | join(...) | provenance | MaD:314 | -| Test.java:87:31:87:41 | taintedList : ArrayList [] : String | Test.java:87:14:87:53 | join(...) | provenance | MaD:315 | -| Test.java:88:31:88:41 | taintedList : ArrayList [] : String | Test.java:88:14:88:55 | join(...) | provenance | MaD:316 | -| Test.java:89:46:89:52 | taint(...) : String | Test.java:89:14:89:59 | join(...) | provenance | MaD:317 | +| Test.java:77:25:77:31 | taint(...) : String | Test.java:77:9:77:19 | taintedList [post update] : ArrayList [] : String | provenance | MaD:9 | +| Test.java:78:31:78:41 | taintedList : ArrayList [] : String | Test.java:78:14:78:47 | join(...) | provenance | MaD:303 | +| Test.java:79:31:79:41 | taintedList : ArrayList [] : String | Test.java:79:14:79:49 | join(...) | provenance | MaD:304 | +| Test.java:81:46:81:52 | taint(...) : String | Test.java:81:14:81:53 | join(...) | provenance | MaD:305 | +| Test.java:83:31:83:41 | taintedList : ArrayList [] : String | Test.java:83:31:83:52 | iterator(...) : Iterator [] : String | provenance | MaD:4 | +| Test.java:83:31:83:52 | iterator(...) : Iterator [] : String | Test.java:83:14:83:58 | join(...) | provenance | MaD:306 | +| Test.java:84:31:84:41 | taintedList : ArrayList [] : String | Test.java:84:31:84:52 | iterator(...) : Iterator [] : String | provenance | MaD:4 | +| Test.java:84:31:84:52 | iterator(...) : Iterator [] : String | Test.java:84:14:84:60 | join(...) | provenance | MaD:307 | +| Test.java:85:57:85:63 | taint(...) : String | Test.java:85:14:85:64 | join(...) | provenance | MaD:308 | +| Test.java:87:31:87:41 | taintedList : ArrayList [] : String | Test.java:87:14:87:53 | join(...) | provenance | MaD:309 | +| Test.java:88:31:88:41 | taintedList : ArrayList [] : String | Test.java:88:14:88:55 | join(...) | provenance | MaD:310 | +| Test.java:89:46:89:52 | taint(...) : String | Test.java:89:14:89:59 | join(...) | provenance | MaD:311 | | Test.java:91:33:91:56 | {...} : Object[] [[]] : String | Test.java:92:31:92:42 | taintedArray : Object[] [[]] : String | provenance | | | Test.java:91:33:91:56 | {...} : Object[] [[]] : String | Test.java:93:31:93:42 | taintedArray : Object[] [[]] : String | provenance | | | Test.java:91:33:91:56 | {...} : Object[] [[]] : String | Test.java:94:31:94:42 | taintedArray : Object[] [[]] : String | provenance | | | Test.java:91:33:91:56 | {...} : Object[] [[]] : String | Test.java:95:31:95:42 | taintedArray : Object[] [[]] : String | provenance | | | Test.java:91:48:91:54 | taint(...) : String | Test.java:91:33:91:56 | {...} : Object[] [[]] : String | provenance | | -| Test.java:92:31:92:42 | taintedArray : Object[] [[]] : String | Test.java:92:14:92:48 | join(...) | provenance | MaD:305 | -| Test.java:93:31:93:42 | taintedArray : Object[] [[]] : String | Test.java:93:14:93:50 | join(...) | provenance | MaD:301 | -| Test.java:94:31:94:42 | taintedArray : Object[] [[]] : String | Test.java:94:14:94:54 | join(...) | provenance | MaD:306 | -| Test.java:95:31:95:42 | taintedArray : Object[] [[]] : String | Test.java:95:14:95:56 | join(...) | provenance | MaD:303 | -| Test.java:97:47:97:53 | taint(...) : String | Test.java:97:14:97:54 | join(...) | provenance | MaD:302 | -| Test.java:98:47:98:53 | taint(...) : String | Test.java:98:14:98:60 | join(...) | provenance | MaD:304 | -| Test.java:100:14:100:54 | new ..[] { .. } : Object[] [[]] : String | Test.java:100:14:100:54 | join(...) | provenance | MaD:300 | +| Test.java:92:31:92:42 | taintedArray : Object[] [[]] : String | Test.java:92:14:92:48 | join(...) | provenance | MaD:299 | +| Test.java:93:31:93:42 | taintedArray : Object[] [[]] : String | Test.java:93:14:93:50 | join(...) | provenance | MaD:295 | +| Test.java:94:31:94:42 | taintedArray : Object[] [[]] : String | Test.java:94:14:94:54 | join(...) | provenance | MaD:300 | +| Test.java:95:31:95:42 | taintedArray : Object[] [[]] : String | Test.java:95:14:95:56 | join(...) | provenance | MaD:297 | +| Test.java:97:47:97:53 | taint(...) : String | Test.java:97:14:97:54 | join(...) | provenance | MaD:296 | +| Test.java:98:47:98:53 | taint(...) : String | Test.java:98:14:98:60 | join(...) | provenance | MaD:298 | +| Test.java:100:14:100:54 | new ..[] { .. } : Object[] [[]] : String | Test.java:100:14:100:54 | join(...) | provenance | MaD:294 | | Test.java:100:31:100:37 | taint(...) : String | Test.java:100:14:100:54 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| Test.java:101:14:101:61 | new ..[] { .. } : Object[] [[]] : String | Test.java:101:14:101:61 | join(...) | provenance | MaD:300 | +| Test.java:101:14:101:61 | new ..[] { .. } : Object[] [[]] : String | Test.java:101:14:101:61 | join(...) | provenance | MaD:294 | | Test.java:101:54:101:60 | taint(...) : String | Test.java:101:14:101:61 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| Test.java:102:14:102:71 | new ..[] { .. } : Object[] [[]] : String | Test.java:102:14:102:71 | joinWith(...) | provenance | MaD:319 | +| Test.java:102:14:102:71 | new ..[] { .. } : Object[] [[]] : String | Test.java:102:14:102:71 | joinWith(...) | provenance | MaD:313 | | Test.java:102:48:102:54 | taint(...) : String | Test.java:102:14:102:71 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| Test.java:103:14:103:78 | new ..[] { .. } : Object[] [[]] : String | Test.java:103:14:103:78 | joinWith(...) | provenance | MaD:319 | +| Test.java:103:14:103:78 | new ..[] { .. } : Object[] [[]] : String | Test.java:103:14:103:78 | joinWith(...) | provenance | MaD:313 | | Test.java:103:71:103:77 | taint(...) : String | Test.java:103:14:103:78 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| Test.java:104:35:104:41 | taint(...) : String | Test.java:104:14:104:87 | joinWith(...) | provenance | MaD:318 | -| Test.java:106:31:106:37 | taint(...) : String | Test.java:106:14:106:41 | left(...) | provenance | MaD:320 | -| Test.java:107:34:107:40 | taint(...) : String | Test.java:107:14:107:44 | leftPad(...) | provenance | MaD:322 | -| Test.java:108:34:108:40 | taint(...) : String | Test.java:108:14:108:49 | leftPad(...) | provenance | MaD:322 | -| Test.java:109:34:109:40 | taint(...) : String | Test.java:109:14:109:55 | leftPad(...) | provenance | MaD:322 | -| Test.java:110:47:110:53 | taint(...) : String | Test.java:110:14:110:54 | leftPad(...) | provenance | MaD:321 | -| Test.java:111:36:111:42 | taint(...) : String | Test.java:111:14:111:43 | lowerCase(...) | provenance | MaD:323 | -| Test.java:112:36:112:42 | taint(...) : String | Test.java:112:14:112:54 | lowerCase(...) | provenance | MaD:324 | -| Test.java:113:30:113:36 | taint(...) : String | Test.java:113:14:113:43 | mid(...) | provenance | MaD:325 | -| Test.java:114:41:114:47 | taint(...) : String | Test.java:114:14:114:48 | normalizeSpace(...) | provenance | MaD:326 | -| Test.java:115:34:115:40 | taint(...) : String | Test.java:115:14:115:58 | overlay(...) | provenance | MaD:327 | -| Test.java:116:46:116:52 | taint(...) : String | Test.java:116:14:116:59 | overlay(...) | provenance | MaD:328 | -| Test.java:117:43:117:49 | taint(...) : String | Test.java:117:14:117:103 | prependIfMissing(...) | provenance | MaD:329 | -| Test.java:118:62:118:68 | taint(...) : String | Test.java:118:14:118:105 | prependIfMissing(...) | provenance | MaD:330 | -| Test.java:122:53:122:59 | taint(...) : String | Test.java:122:14:122:113 | prependIfMissingIgnoreCase(...) | provenance | MaD:331 | -| Test.java:123:72:123:78 | taint(...) : String | Test.java:123:14:123:115 | prependIfMissingIgnoreCase(...) | provenance | MaD:332 | -| Test.java:127:33:127:39 | taint(...) : String | Test.java:127:14:127:45 | remove(...) | provenance | MaD:333 | -| Test.java:128:33:128:39 | taint(...) : String | Test.java:128:14:128:53 | remove(...) | provenance | MaD:333 | -| Test.java:129:36:129:42 | taint(...) : String | Test.java:129:14:129:56 | removeAll(...) | provenance | MaD:334 | -| Test.java:130:36:130:42 | taint(...) : String | Test.java:130:14:130:56 | removeEnd(...) | provenance | MaD:335 | -| Test.java:131:46:131:52 | taint(...) : String | Test.java:131:14:131:66 | removeEndIgnoreCase(...) | provenance | MaD:336 | -| Test.java:132:38:132:44 | taint(...) : String | Test.java:132:14:132:58 | removeFirst(...) | provenance | MaD:337 | -| Test.java:133:43:133:49 | taint(...) : String | Test.java:133:14:133:63 | removeIgnoreCase(...) | provenance | MaD:338 | -| Test.java:134:40:134:46 | taint(...) : String | Test.java:134:14:134:60 | removePattern(...) | provenance | MaD:339 | -| Test.java:135:38:135:44 | taint(...) : String | Test.java:135:14:135:58 | removeStart(...) | provenance | MaD:340 | -| Test.java:136:48:136:54 | taint(...) : String | Test.java:136:14:136:68 | removeStartIgnoreCase(...) | provenance | MaD:341 | -| Test.java:147:33:147:39 | taint(...) : String | Test.java:147:14:147:43 | repeat(...) | provenance | MaD:343 | -| Test.java:148:33:148:39 | taint(...) : String | Test.java:148:14:148:56 | repeat(...) | provenance | MaD:343 | -| Test.java:149:46:149:52 | taint(...) : String | Test.java:149:14:149:56 | repeat(...) | provenance | MaD:342 | -| Test.java:150:34:150:40 | taint(...) : String | Test.java:150:14:150:66 | replace(...) | provenance | MaD:344 | -| Test.java:151:56:151:62 | taint(...) : String | Test.java:151:14:151:63 | replace(...) | provenance | MaD:345 | -| Test.java:152:34:152:40 | taint(...) : String | Test.java:152:14:152:69 | replace(...) | provenance | MaD:344 | -| Test.java:153:56:153:62 | taint(...) : String | Test.java:153:14:153:66 | replace(...) | provenance | MaD:345 | -| Test.java:154:37:154:43 | taint(...) : String | Test.java:154:14:154:69 | replaceAll(...) | provenance | MaD:346 | -| Test.java:155:59:155:65 | taint(...) : String | Test.java:155:14:155:66 | replaceAll(...) | provenance | MaD:347 | -| Test.java:156:39:156:45 | taint(...) : String | Test.java:156:14:156:56 | replaceChars(...) | provenance | MaD:349 | -| Test.java:157:39:157:45 | taint(...) : String | Test.java:157:14:157:60 | replaceChars(...) | provenance | MaD:349 | -| Test.java:158:58:158:64 | taint(...) : String | Test.java:158:14:158:65 | replaceChars(...) | provenance | MaD:348 | -| Test.java:159:38:159:44 | taint(...) : String | Test.java:159:14:159:104 | replaceEach(...) | provenance | MaD:350 | -| Test.java:160:77:160:100 | new String[] : String[] [[]] : String | Test.java:160:14:160:101 | replaceEach(...) | provenance | MaD:351 | +| Test.java:104:35:104:41 | taint(...) : String | Test.java:104:14:104:87 | joinWith(...) | provenance | MaD:312 | +| Test.java:106:31:106:37 | taint(...) : String | Test.java:106:14:106:41 | left(...) | provenance | MaD:314 | +| Test.java:107:34:107:40 | taint(...) : String | Test.java:107:14:107:44 | leftPad(...) | provenance | MaD:316 | +| Test.java:108:34:108:40 | taint(...) : String | Test.java:108:14:108:49 | leftPad(...) | provenance | MaD:316 | +| Test.java:109:34:109:40 | taint(...) : String | Test.java:109:14:109:55 | leftPad(...) | provenance | MaD:316 | +| Test.java:110:47:110:53 | taint(...) : String | Test.java:110:14:110:54 | leftPad(...) | provenance | MaD:315 | +| Test.java:111:36:111:42 | taint(...) : String | Test.java:111:14:111:43 | lowerCase(...) | provenance | MaD:317 | +| Test.java:112:36:112:42 | taint(...) : String | Test.java:112:14:112:54 | lowerCase(...) | provenance | MaD:318 | +| Test.java:113:30:113:36 | taint(...) : String | Test.java:113:14:113:43 | mid(...) | provenance | MaD:319 | +| Test.java:114:41:114:47 | taint(...) : String | Test.java:114:14:114:48 | normalizeSpace(...) | provenance | MaD:320 | +| Test.java:115:34:115:40 | taint(...) : String | Test.java:115:14:115:58 | overlay(...) | provenance | MaD:321 | +| Test.java:116:46:116:52 | taint(...) : String | Test.java:116:14:116:59 | overlay(...) | provenance | MaD:322 | +| Test.java:117:43:117:49 | taint(...) : String | Test.java:117:14:117:103 | prependIfMissing(...) | provenance | MaD:323 | +| Test.java:118:62:118:68 | taint(...) : String | Test.java:118:14:118:105 | prependIfMissing(...) | provenance | MaD:324 | +| Test.java:122:53:122:59 | taint(...) : String | Test.java:122:14:122:113 | prependIfMissingIgnoreCase(...) | provenance | MaD:325 | +| Test.java:123:72:123:78 | taint(...) : String | Test.java:123:14:123:115 | prependIfMissingIgnoreCase(...) | provenance | MaD:326 | +| Test.java:127:33:127:39 | taint(...) : String | Test.java:127:14:127:45 | remove(...) | provenance | MaD:327 | +| Test.java:128:33:128:39 | taint(...) : String | Test.java:128:14:128:53 | remove(...) | provenance | MaD:327 | +| Test.java:129:36:129:42 | taint(...) : String | Test.java:129:14:129:56 | removeAll(...) | provenance | MaD:328 | +| Test.java:130:36:130:42 | taint(...) : String | Test.java:130:14:130:56 | removeEnd(...) | provenance | MaD:329 | +| Test.java:131:46:131:52 | taint(...) : String | Test.java:131:14:131:66 | removeEndIgnoreCase(...) | provenance | MaD:330 | +| Test.java:132:38:132:44 | taint(...) : String | Test.java:132:14:132:58 | removeFirst(...) | provenance | MaD:331 | +| Test.java:133:43:133:49 | taint(...) : String | Test.java:133:14:133:63 | removeIgnoreCase(...) | provenance | MaD:332 | +| Test.java:134:40:134:46 | taint(...) : String | Test.java:134:14:134:60 | removePattern(...) | provenance | MaD:333 | +| Test.java:135:38:135:44 | taint(...) : String | Test.java:135:14:135:58 | removeStart(...) | provenance | MaD:334 | +| Test.java:136:48:136:54 | taint(...) : String | Test.java:136:14:136:68 | removeStartIgnoreCase(...) | provenance | MaD:335 | +| Test.java:147:33:147:39 | taint(...) : String | Test.java:147:14:147:43 | repeat(...) | provenance | MaD:337 | +| Test.java:148:33:148:39 | taint(...) : String | Test.java:148:14:148:56 | repeat(...) | provenance | MaD:337 | +| Test.java:149:46:149:52 | taint(...) : String | Test.java:149:14:149:56 | repeat(...) | provenance | MaD:336 | +| Test.java:150:34:150:40 | taint(...) : String | Test.java:150:14:150:66 | replace(...) | provenance | MaD:338 | +| Test.java:151:56:151:62 | taint(...) : String | Test.java:151:14:151:63 | replace(...) | provenance | MaD:339 | +| Test.java:152:34:152:40 | taint(...) : String | Test.java:152:14:152:69 | replace(...) | provenance | MaD:338 | +| Test.java:153:56:153:62 | taint(...) : String | Test.java:153:14:153:66 | replace(...) | provenance | MaD:339 | +| Test.java:154:37:154:43 | taint(...) : String | Test.java:154:14:154:69 | replaceAll(...) | provenance | MaD:340 | +| Test.java:155:59:155:65 | taint(...) : String | Test.java:155:14:155:66 | replaceAll(...) | provenance | MaD:341 | +| Test.java:156:39:156:45 | taint(...) : String | Test.java:156:14:156:56 | replaceChars(...) | provenance | MaD:343 | +| Test.java:157:39:157:45 | taint(...) : String | Test.java:157:14:157:60 | replaceChars(...) | provenance | MaD:343 | +| Test.java:158:58:158:64 | taint(...) : String | Test.java:158:14:158:65 | replaceChars(...) | provenance | MaD:342 | +| Test.java:159:38:159:44 | taint(...) : String | Test.java:159:14:159:104 | replaceEach(...) | provenance | MaD:344 | +| Test.java:160:77:160:100 | new String[] : String[] [[]] : String | Test.java:160:14:160:101 | replaceEach(...) | provenance | MaD:345 | | Test.java:160:77:160:100 | {...} : String[] [[]] : String | Test.java:160:77:160:100 | new String[] : String[] [[]] : String | provenance | | | Test.java:160:92:160:98 | taint(...) : String | Test.java:160:77:160:100 | {...} : String[] [[]] : String | provenance | | -| Test.java:161:48:161:54 | taint(...) : String | Test.java:161:14:161:114 | replaceEachRepeatedly(...) | provenance | MaD:352 | -| Test.java:162:87:162:110 | new String[] : String[] [[]] : String | Test.java:162:14:162:111 | replaceEachRepeatedly(...) | provenance | MaD:353 | +| Test.java:161:48:161:54 | taint(...) : String | Test.java:161:14:161:114 | replaceEachRepeatedly(...) | provenance | MaD:346 | +| Test.java:162:87:162:110 | new String[] : String[] [[]] : String | Test.java:162:14:162:111 | replaceEachRepeatedly(...) | provenance | MaD:347 | | Test.java:162:87:162:110 | {...} : String[] [[]] : String | Test.java:162:87:162:110 | new String[] : String[] [[]] : String | provenance | | | Test.java:162:102:162:108 | taint(...) : String | Test.java:162:87:162:110 | {...} : String[] [[]] : String | provenance | | -| Test.java:163:39:163:45 | taint(...) : String | Test.java:163:14:163:71 | replaceFirst(...) | provenance | MaD:354 | -| Test.java:164:61:164:67 | taint(...) : String | Test.java:164:14:164:68 | replaceFirst(...) | provenance | MaD:355 | -| Test.java:165:44:165:50 | taint(...) : String | Test.java:165:14:165:76 | replaceIgnoreCase(...) | provenance | MaD:356 | -| Test.java:166:66:166:72 | taint(...) : String | Test.java:166:14:166:73 | replaceIgnoreCase(...) | provenance | MaD:357 | -| Test.java:167:38:167:44 | taint(...) : String | Test.java:167:14:167:70 | replaceOnce(...) | provenance | MaD:358 | -| Test.java:168:60:168:66 | taint(...) : String | Test.java:168:14:168:67 | replaceOnce(...) | provenance | MaD:359 | -| Test.java:169:48:169:54 | taint(...) : String | Test.java:169:14:169:80 | replaceOnceIgnoreCase(...) | provenance | MaD:360 | -| Test.java:170:70:170:76 | taint(...) : String | Test.java:170:14:170:77 | replaceOnceIgnoreCase(...) | provenance | MaD:361 | -| Test.java:171:41:171:47 | taint(...) : String | Test.java:171:14:171:73 | replacePattern(...) | provenance | MaD:362 | -| Test.java:172:63:172:69 | taint(...) : String | Test.java:172:14:172:70 | replacePattern(...) | provenance | MaD:363 | -| Test.java:185:34:185:40 | taint(...) : String | Test.java:185:14:185:41 | reverse(...) | provenance | MaD:364 | -| Test.java:186:43:186:49 | taint(...) : String | Test.java:186:14:186:55 | reverseDelimited(...) | provenance | MaD:365 | -| Test.java:187:32:187:38 | taint(...) : String | Test.java:187:14:187:42 | right(...) | provenance | MaD:366 | -| Test.java:188:35:188:41 | taint(...) : String | Test.java:188:14:188:45 | rightPad(...) | provenance | MaD:368 | -| Test.java:189:35:189:41 | taint(...) : String | Test.java:189:14:189:50 | rightPad(...) | provenance | MaD:368 | -| Test.java:190:35:190:41 | taint(...) : String | Test.java:190:14:190:56 | rightPad(...) | provenance | MaD:368 | -| Test.java:191:48:191:54 | taint(...) : String | Test.java:191:14:191:55 | rightPad(...) | provenance | MaD:367 | -| Test.java:192:33:192:39 | taint(...) : String | Test.java:192:14:192:43 | rotate(...) | provenance | MaD:369 | -| Test.java:193:32:193:38 | taint(...) : String | Test.java:193:14:193:39 | split(...) | provenance | MaD:370 | -| Test.java:194:32:194:38 | taint(...) : String | Test.java:194:14:194:44 | split(...) | provenance | MaD:371 | -| Test.java:195:32:195:38 | taint(...) : String | Test.java:195:14:195:46 | split(...) | provenance | MaD:372 | -| Test.java:196:32:196:38 | taint(...) : String | Test.java:196:14:196:49 | split(...) | provenance | MaD:373 | -| Test.java:197:47:197:53 | taint(...) : String | Test.java:197:14:197:54 | splitByCharacterType(...) | provenance | MaD:374 | -| Test.java:198:56:198:62 | taint(...) : String | Test.java:198:14:198:63 | splitByCharacterTypeCamelCase(...) | provenance | MaD:375 | -| Test.java:199:48:199:54 | taint(...) : String | Test.java:199:14:199:68 | splitByWholeSeparator(...) | provenance | MaD:376 | -| Test.java:200:48:200:54 | taint(...) : String | Test.java:200:14:200:71 | splitByWholeSeparator(...) | provenance | MaD:376 | -| Test.java:201:65:201:71 | taint(...) : String | Test.java:201:14:201:85 | splitByWholeSeparatorPreserveAllTokens(...) | provenance | MaD:377 | -| Test.java:202:65:202:71 | taint(...) : String | Test.java:202:14:202:88 | splitByWholeSeparatorPreserveAllTokens(...) | provenance | MaD:377 | -| Test.java:203:49:203:55 | taint(...) : String | Test.java:203:14:203:56 | splitPreserveAllTokens(...) | provenance | MaD:378 | -| Test.java:204:49:204:55 | taint(...) : String | Test.java:204:14:204:61 | splitPreserveAllTokens(...) | provenance | MaD:379 | -| Test.java:205:49:205:55 | taint(...) : String | Test.java:205:14:205:63 | splitPreserveAllTokens(...) | provenance | MaD:380 | -| Test.java:206:49:206:55 | taint(...) : String | Test.java:206:14:206:66 | splitPreserveAllTokens(...) | provenance | MaD:381 | -| Test.java:216:32:216:38 | taint(...) : String | Test.java:216:14:216:39 | strip(...) | provenance | MaD:382 | -| Test.java:217:32:217:38 | taint(...) : String | Test.java:217:14:217:56 | strip(...) | provenance | MaD:383 | -| Test.java:218:39:218:45 | taint(...) : String | Test.java:218:14:218:46 | stripAccents(...) | provenance | MaD:384 | +| Test.java:163:39:163:45 | taint(...) : String | Test.java:163:14:163:71 | replaceFirst(...) | provenance | MaD:348 | +| Test.java:164:61:164:67 | taint(...) : String | Test.java:164:14:164:68 | replaceFirst(...) | provenance | MaD:349 | +| Test.java:165:44:165:50 | taint(...) : String | Test.java:165:14:165:76 | replaceIgnoreCase(...) | provenance | MaD:350 | +| Test.java:166:66:166:72 | taint(...) : String | Test.java:166:14:166:73 | replaceIgnoreCase(...) | provenance | MaD:351 | +| Test.java:167:38:167:44 | taint(...) : String | Test.java:167:14:167:70 | replaceOnce(...) | provenance | MaD:352 | +| Test.java:168:60:168:66 | taint(...) : String | Test.java:168:14:168:67 | replaceOnce(...) | provenance | MaD:353 | +| Test.java:169:48:169:54 | taint(...) : String | Test.java:169:14:169:80 | replaceOnceIgnoreCase(...) | provenance | MaD:354 | +| Test.java:170:70:170:76 | taint(...) : String | Test.java:170:14:170:77 | replaceOnceIgnoreCase(...) | provenance | MaD:355 | +| Test.java:171:41:171:47 | taint(...) : String | Test.java:171:14:171:73 | replacePattern(...) | provenance | MaD:356 | +| Test.java:172:63:172:69 | taint(...) : String | Test.java:172:14:172:70 | replacePattern(...) | provenance | MaD:357 | +| Test.java:185:34:185:40 | taint(...) : String | Test.java:185:14:185:41 | reverse(...) | provenance | MaD:358 | +| Test.java:186:43:186:49 | taint(...) : String | Test.java:186:14:186:55 | reverseDelimited(...) | provenance | MaD:359 | +| Test.java:187:32:187:38 | taint(...) : String | Test.java:187:14:187:42 | right(...) | provenance | MaD:360 | +| Test.java:188:35:188:41 | taint(...) : String | Test.java:188:14:188:45 | rightPad(...) | provenance | MaD:362 | +| Test.java:189:35:189:41 | taint(...) : String | Test.java:189:14:189:50 | rightPad(...) | provenance | MaD:362 | +| Test.java:190:35:190:41 | taint(...) : String | Test.java:190:14:190:56 | rightPad(...) | provenance | MaD:362 | +| Test.java:191:48:191:54 | taint(...) : String | Test.java:191:14:191:55 | rightPad(...) | provenance | MaD:361 | +| Test.java:192:33:192:39 | taint(...) : String | Test.java:192:14:192:43 | rotate(...) | provenance | MaD:363 | +| Test.java:193:32:193:38 | taint(...) : String | Test.java:193:14:193:39 | split(...) | provenance | MaD:364 | +| Test.java:194:32:194:38 | taint(...) : String | Test.java:194:14:194:44 | split(...) | provenance | MaD:365 | +| Test.java:195:32:195:38 | taint(...) : String | Test.java:195:14:195:46 | split(...) | provenance | MaD:366 | +| Test.java:196:32:196:38 | taint(...) : String | Test.java:196:14:196:49 | split(...) | provenance | MaD:367 | +| Test.java:197:47:197:53 | taint(...) : String | Test.java:197:14:197:54 | splitByCharacterType(...) | provenance | MaD:368 | +| Test.java:198:56:198:62 | taint(...) : String | Test.java:198:14:198:63 | splitByCharacterTypeCamelCase(...) | provenance | MaD:369 | +| Test.java:199:48:199:54 | taint(...) : String | Test.java:199:14:199:68 | splitByWholeSeparator(...) | provenance | MaD:370 | +| Test.java:200:48:200:54 | taint(...) : String | Test.java:200:14:200:71 | splitByWholeSeparator(...) | provenance | MaD:370 | +| Test.java:201:65:201:71 | taint(...) : String | Test.java:201:14:201:85 | splitByWholeSeparatorPreserveAllTokens(...) | provenance | MaD:371 | +| Test.java:202:65:202:71 | taint(...) : String | Test.java:202:14:202:88 | splitByWholeSeparatorPreserveAllTokens(...) | provenance | MaD:371 | +| Test.java:203:49:203:55 | taint(...) : String | Test.java:203:14:203:56 | splitPreserveAllTokens(...) | provenance | MaD:372 | +| Test.java:204:49:204:55 | taint(...) : String | Test.java:204:14:204:61 | splitPreserveAllTokens(...) | provenance | MaD:373 | +| Test.java:205:49:205:55 | taint(...) : String | Test.java:205:14:205:63 | splitPreserveAllTokens(...) | provenance | MaD:374 | +| Test.java:206:49:206:55 | taint(...) : String | Test.java:206:14:206:66 | splitPreserveAllTokens(...) | provenance | MaD:375 | +| Test.java:216:32:216:38 | taint(...) : String | Test.java:216:14:216:39 | strip(...) | provenance | MaD:376 | +| Test.java:217:32:217:38 | taint(...) : String | Test.java:217:14:217:56 | strip(...) | provenance | MaD:377 | +| Test.java:218:39:218:45 | taint(...) : String | Test.java:218:14:218:46 | stripAccents(...) | provenance | MaD:378 | | Test.java:219:14:219:76 | stripAll(...) : String[] [[]] : Object | Test.java:219:14:219:79 | ...[...] | provenance | | -| Test.java:219:35:219:58 | new String[] : String[] [[]] : String | Test.java:219:14:219:76 | stripAll(...) : String[] [[]] : Object | provenance | MaD:385 | +| Test.java:219:35:219:58 | new String[] : String[] [[]] : String | Test.java:219:14:219:76 | stripAll(...) : String[] [[]] : Object | provenance | MaD:379 | | Test.java:219:35:219:58 | {...} : String[] [[]] : String | Test.java:219:35:219:58 | new String[] : String[] [[]] : String | provenance | | | Test.java:219:50:219:56 | taint(...) : String | Test.java:219:35:219:58 | {...} : String[] [[]] : String | provenance | | -| Test.java:220:35:220:41 | taint(...) : String | Test.java:220:14:220:59 | stripEnd(...) | provenance | MaD:386 | -| Test.java:221:37:221:43 | taint(...) : String | Test.java:221:14:221:61 | stripStart(...) | provenance | MaD:387 | -| Test.java:227:39:227:45 | taint(...) : String | Test.java:227:14:227:46 | stripToEmpty(...) | provenance | MaD:388 | -| Test.java:228:38:228:44 | taint(...) : String | Test.java:228:14:228:45 | stripToNull(...) | provenance | MaD:389 | -| Test.java:229:36:229:42 | taint(...) : String | Test.java:229:14:229:46 | substring(...) | provenance | MaD:390 | -| Test.java:230:36:230:42 | taint(...) : String | Test.java:230:14:230:49 | substring(...) | provenance | MaD:390 | -| Test.java:231:41:231:47 | taint(...) : String | Test.java:231:14:231:51 | substringAfter(...) | provenance | MaD:391 | -| Test.java:232:41:232:47 | taint(...) : String | Test.java:232:14:232:61 | substringAfter(...) | provenance | MaD:391 | -| Test.java:233:45:233:51 | taint(...) : String | Test.java:233:14:233:55 | substringAfterLast(...) | provenance | MaD:392 | -| Test.java:234:45:234:51 | taint(...) : String | Test.java:234:14:234:65 | substringAfterLast(...) | provenance | MaD:392 | -| Test.java:235:42:235:48 | taint(...) : String | Test.java:235:14:235:62 | substringBefore(...) | provenance | MaD:393 | -| Test.java:236:46:236:52 | taint(...) : String | Test.java:236:14:236:66 | substringBeforeLast(...) | provenance | MaD:394 | -| Test.java:237:43:237:49 | taint(...) : String | Test.java:237:14:237:63 | substringBetween(...) | provenance | MaD:395 | -| Test.java:238:43:238:49 | taint(...) : String | Test.java:238:14:238:74 | substringBetween(...) | provenance | MaD:395 | +| Test.java:220:35:220:41 | taint(...) : String | Test.java:220:14:220:59 | stripEnd(...) | provenance | MaD:380 | +| Test.java:221:37:221:43 | taint(...) : String | Test.java:221:14:221:61 | stripStart(...) | provenance | MaD:381 | +| Test.java:227:39:227:45 | taint(...) : String | Test.java:227:14:227:46 | stripToEmpty(...) | provenance | MaD:382 | +| Test.java:228:38:228:44 | taint(...) : String | Test.java:228:14:228:45 | stripToNull(...) | provenance | MaD:383 | +| Test.java:229:36:229:42 | taint(...) : String | Test.java:229:14:229:46 | substring(...) | provenance | MaD:384 | +| Test.java:230:36:230:42 | taint(...) : String | Test.java:230:14:230:49 | substring(...) | provenance | MaD:384 | +| Test.java:231:41:231:47 | taint(...) : String | Test.java:231:14:231:51 | substringAfter(...) | provenance | MaD:385 | +| Test.java:232:41:232:47 | taint(...) : String | Test.java:232:14:232:61 | substringAfter(...) | provenance | MaD:385 | +| Test.java:233:45:233:51 | taint(...) : String | Test.java:233:14:233:55 | substringAfterLast(...) | provenance | MaD:386 | +| Test.java:234:45:234:51 | taint(...) : String | Test.java:234:14:234:65 | substringAfterLast(...) | provenance | MaD:386 | +| Test.java:235:42:235:48 | taint(...) : String | Test.java:235:14:235:62 | substringBefore(...) | provenance | MaD:387 | +| Test.java:236:46:236:52 | taint(...) : String | Test.java:236:14:236:66 | substringBeforeLast(...) | provenance | MaD:388 | +| Test.java:237:43:237:49 | taint(...) : String | Test.java:237:14:237:63 | substringBetween(...) | provenance | MaD:389 | +| Test.java:238:43:238:49 | taint(...) : String | Test.java:238:14:238:74 | substringBetween(...) | provenance | MaD:389 | | Test.java:239:14:239:75 | substringsBetween(...) : String[] | Test.java:239:14:239:78 | ...[...] | provenance | | -| Test.java:239:44:239:50 | taint(...) : String | Test.java:239:14:239:75 | substringsBetween(...) : String[] | provenance | MaD:396 | -| Test.java:250:35:250:41 | taint(...) : String | Test.java:250:14:250:42 | swapCase(...) | provenance | MaD:397 | -| Test.java:251:39:251:45 | taint(...) : String | Test.java:251:14:251:46 | toCodePoints(...) | provenance | MaD:398 | -| Test.java:252:42:252:81 | getBytes(...) : byte[] | Test.java:252:14:252:88 | toEncodedString(...) | provenance | MaD:399 | -| Test.java:252:63:252:69 | taint(...) : String | Test.java:252:42:252:81 | getBytes(...) : byte[] | provenance | MaD:295 | -| Test.java:253:42:253:48 | taint(...) : String | Test.java:253:14:253:49 | toRootLowerCase(...) | provenance | MaD:400 | -| Test.java:254:42:254:48 | taint(...) : String | Test.java:254:14:254:49 | toRootUpperCase(...) | provenance | MaD:401 | -| Test.java:255:35:255:74 | getBytes(...) : byte[] | Test.java:255:14:255:86 | toString(...) | provenance | MaD:402 | -| Test.java:255:56:255:62 | taint(...) : String | Test.java:255:35:255:74 | getBytes(...) : byte[] | provenance | MaD:295 | -| Test.java:256:31:256:37 | taint(...) : String | Test.java:256:14:256:38 | trim(...) | provenance | MaD:403 | -| Test.java:257:38:257:44 | taint(...) : String | Test.java:257:14:257:45 | trimToEmpty(...) | provenance | MaD:404 | -| Test.java:258:37:258:43 | taint(...) : String | Test.java:258:14:258:44 | trimToNull(...) | provenance | MaD:405 | -| Test.java:259:35:259:41 | taint(...) : String | Test.java:259:14:259:45 | truncate(...) | provenance | MaD:406 | -| Test.java:260:35:260:41 | taint(...) : String | Test.java:260:14:260:48 | truncate(...) | provenance | MaD:406 | -| Test.java:261:39:261:45 | taint(...) : String | Test.java:261:14:261:46 | uncapitalize(...) | provenance | MaD:407 | -| Test.java:262:33:262:39 | taint(...) : String | Test.java:262:14:262:45 | unwrap(...) | provenance | MaD:408 | -| Test.java:263:33:263:39 | taint(...) : String | Test.java:263:14:263:53 | unwrap(...) | provenance | MaD:408 | -| Test.java:266:36:266:42 | taint(...) : String | Test.java:266:14:266:43 | upperCase(...) | provenance | MaD:409 | -| Test.java:267:36:267:42 | taint(...) : String | Test.java:267:14:267:49 | upperCase(...) | provenance | MaD:410 | -| Test.java:268:34:268:40 | taint(...) : String | Test.java:268:34:268:54 | toCharArray(...) : char[] | provenance | MaD:7 | -| Test.java:268:34:268:54 | toCharArray(...) : char[] | Test.java:268:14:268:55 | valueOf(...) | provenance | MaD:411 | -| Test.java:269:31:269:37 | taint(...) : String | Test.java:269:14:269:43 | wrap(...) | provenance | MaD:412 | -| Test.java:270:31:270:37 | taint(...) : String | Test.java:270:14:270:55 | wrap(...) | provenance | MaD:413 | -| Test.java:271:42:271:48 | taint(...) : String | Test.java:271:14:271:49 | wrap(...) | provenance | MaD:413 | -| Test.java:272:40:272:46 | taint(...) : String | Test.java:272:14:272:52 | wrapIfMissing(...) | provenance | MaD:414 | -| Test.java:273:40:273:46 | taint(...) : String | Test.java:273:14:273:64 | wrapIfMissing(...) | provenance | MaD:415 | -| Test.java:274:51:274:57 | taint(...) : String | Test.java:274:14:274:58 | wrapIfMissing(...) | provenance | MaD:415 | +| Test.java:239:44:239:50 | taint(...) : String | Test.java:239:14:239:75 | substringsBetween(...) : String[] | provenance | MaD:390 | +| Test.java:250:35:250:41 | taint(...) : String | Test.java:250:14:250:42 | swapCase(...) | provenance | MaD:391 | +| Test.java:251:39:251:45 | taint(...) : String | Test.java:251:14:251:46 | toCodePoints(...) | provenance | MaD:392 | +| Test.java:252:42:252:81 | getBytes(...) : byte[] | Test.java:252:14:252:88 | toEncodedString(...) | provenance | MaD:393 | +| Test.java:252:63:252:69 | taint(...) : String | Test.java:252:42:252:81 | getBytes(...) : byte[] | provenance | MaD:289 | +| Test.java:253:42:253:48 | taint(...) : String | Test.java:253:14:253:49 | toRootLowerCase(...) | provenance | MaD:394 | +| Test.java:254:42:254:48 | taint(...) : String | Test.java:254:14:254:49 | toRootUpperCase(...) | provenance | MaD:395 | +| Test.java:255:35:255:74 | getBytes(...) : byte[] | Test.java:255:14:255:86 | toString(...) | provenance | MaD:396 | +| Test.java:255:56:255:62 | taint(...) : String | Test.java:255:35:255:74 | getBytes(...) : byte[] | provenance | MaD:289 | +| Test.java:256:31:256:37 | taint(...) : String | Test.java:256:14:256:38 | trim(...) | provenance | MaD:397 | +| Test.java:257:38:257:44 | taint(...) : String | Test.java:257:14:257:45 | trimToEmpty(...) | provenance | MaD:398 | +| Test.java:258:37:258:43 | taint(...) : String | Test.java:258:14:258:44 | trimToNull(...) | provenance | MaD:399 | +| Test.java:259:35:259:41 | taint(...) : String | Test.java:259:14:259:45 | truncate(...) | provenance | MaD:400 | +| Test.java:260:35:260:41 | taint(...) : String | Test.java:260:14:260:48 | truncate(...) | provenance | MaD:400 | +| Test.java:261:39:261:45 | taint(...) : String | Test.java:261:14:261:46 | uncapitalize(...) | provenance | MaD:401 | +| Test.java:262:33:262:39 | taint(...) : String | Test.java:262:14:262:45 | unwrap(...) | provenance | MaD:402 | +| Test.java:263:33:263:39 | taint(...) : String | Test.java:263:14:263:53 | unwrap(...) | provenance | MaD:402 | +| Test.java:266:36:266:42 | taint(...) : String | Test.java:266:14:266:43 | upperCase(...) | provenance | MaD:403 | +| Test.java:267:36:267:42 | taint(...) : String | Test.java:267:14:267:49 | upperCase(...) | provenance | MaD:404 | +| Test.java:268:34:268:40 | taint(...) : String | Test.java:268:34:268:54 | toCharArray(...) : char[] | provenance | MaD:5 | +| Test.java:268:34:268:54 | toCharArray(...) : char[] | Test.java:268:14:268:55 | valueOf(...) | provenance | MaD:405 | +| Test.java:269:31:269:37 | taint(...) : String | Test.java:269:14:269:43 | wrap(...) | provenance | MaD:406 | +| Test.java:270:31:270:37 | taint(...) : String | Test.java:270:14:270:55 | wrap(...) | provenance | MaD:407 | +| Test.java:271:42:271:48 | taint(...) : String | Test.java:271:14:271:49 | wrap(...) | provenance | MaD:407 | +| Test.java:272:40:272:46 | taint(...) : String | Test.java:272:14:272:52 | wrapIfMissing(...) | provenance | MaD:408 | +| Test.java:273:40:273:46 | taint(...) : String | Test.java:273:14:273:64 | wrapIfMissing(...) | provenance | MaD:409 | +| Test.java:274:51:274:57 | taint(...) : String | Test.java:274:14:274:58 | wrapIfMissing(...) | provenance | MaD:409 | | TextStringBuilderTest.java:17:35:17:64 | new TextStringBuilder(...) : TextStringBuilder | TextStringBuilderTest.java:17:72:17:76 | cons1 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:17:57:17:63 | taint(...) : String | TextStringBuilderTest.java:17:35:17:64 | new TextStringBuilder(...) : TextStringBuilder | provenance | MaD:561 | -| TextStringBuilderTest.java:17:72:17:76 | cons1 : TextStringBuilder | TextStringBuilderTest.java:17:72:17:87 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:17:72:17:76 | cons1 : TextStringBuilder | TextStringBuilderTest.java:17:72:17:87 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:17:57:17:63 | taint(...) : String | TextStringBuilderTest.java:17:35:17:64 | new TextStringBuilder(...) : TextStringBuilder | provenance | MaD:555 | +| TextStringBuilderTest.java:17:72:17:76 | cons1 : TextStringBuilder | TextStringBuilderTest.java:17:72:17:87 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:18:35:18:78 | new TextStringBuilder(...) : TextStringBuilder | TextStringBuilderTest.java:18:86:18:90 | cons2 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:18:57:18:77 | (...)... : String | TextStringBuilderTest.java:18:35:18:78 | new TextStringBuilder(...) : TextStringBuilder | provenance | MaD:560 | +| TextStringBuilderTest.java:18:57:18:77 | (...)... : String | TextStringBuilderTest.java:18:35:18:78 | new TextStringBuilder(...) : TextStringBuilder | provenance | MaD:554 | | TextStringBuilderTest.java:18:71:18:77 | taint(...) : String | TextStringBuilderTest.java:18:57:18:77 | (...)... : String | provenance | | -| TextStringBuilderTest.java:18:86:18:90 | cons2 : TextStringBuilder | TextStringBuilderTest.java:18:86:18:101 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:18:86:18:90 | cons2 : TextStringBuilder | TextStringBuilderTest.java:18:86:18:101 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:18:86:18:90 | cons2 : TextStringBuilder | TextStringBuilderTest.java:18:86:18:101 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:20:58:20:60 | sb1 [post update] : TextStringBuilder | TextStringBuilderTest.java:20:98:20:100 | sb1 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:20:69:20:75 | taint(...) : String | TextStringBuilderTest.java:20:69:20:89 | toCharArray(...) : char[] | provenance | MaD:7 | -| TextStringBuilderTest.java:20:69:20:89 | toCharArray(...) : char[] | TextStringBuilderTest.java:20:58:20:60 | sb1 [post update] : TextStringBuilder | provenance | MaD:562 | -| TextStringBuilderTest.java:20:98:20:100 | sb1 : TextStringBuilder | TextStringBuilderTest.java:20:98:20:111 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:20:98:20:100 | sb1 : TextStringBuilder | TextStringBuilderTest.java:20:98:20:111 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:20:69:20:75 | taint(...) : String | TextStringBuilderTest.java:20:69:20:89 | toCharArray(...) : char[] | provenance | MaD:5 | +| TextStringBuilderTest.java:20:69:20:89 | toCharArray(...) : char[] | TextStringBuilderTest.java:20:58:20:60 | sb1 [post update] : TextStringBuilder | provenance | MaD:556 | +| TextStringBuilderTest.java:20:98:20:100 | sb1 : TextStringBuilder | TextStringBuilderTest.java:20:98:20:111 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:21:58:21:60 | sb2 [post update] : TextStringBuilder | TextStringBuilderTest.java:21:104:21:106 | sb2 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:21:69:21:75 | taint(...) : String | TextStringBuilderTest.java:21:69:21:89 | toCharArray(...) : char[] | provenance | MaD:7 | -| TextStringBuilderTest.java:21:69:21:89 | toCharArray(...) : char[] | TextStringBuilderTest.java:21:58:21:60 | sb2 [post update] : TextStringBuilder | provenance | MaD:563 | -| TextStringBuilderTest.java:21:104:21:106 | sb2 : TextStringBuilder | TextStringBuilderTest.java:21:104:21:117 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:21:104:21:106 | sb2 : TextStringBuilder | TextStringBuilderTest.java:21:104:21:117 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:21:69:21:75 | taint(...) : String | TextStringBuilderTest.java:21:69:21:89 | toCharArray(...) : char[] | provenance | MaD:5 | +| TextStringBuilderTest.java:21:69:21:89 | toCharArray(...) : char[] | TextStringBuilderTest.java:21:58:21:60 | sb2 [post update] : TextStringBuilder | provenance | MaD:557 | +| TextStringBuilderTest.java:21:104:21:106 | sb2 : TextStringBuilder | TextStringBuilderTest.java:21:104:21:117 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:22:58:22:60 | sb3 [post update] : TextStringBuilder | TextStringBuilderTest.java:22:115:22:117 | sb3 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:22:69:22:106 | wrap(...) : CharBuffer | TextStringBuilderTest.java:22:58:22:60 | sb3 [post update] : TextStringBuilder | provenance | MaD:575 | -| TextStringBuilderTest.java:22:85:22:91 | taint(...) : String | TextStringBuilderTest.java:22:85:22:105 | toCharArray(...) : char[] | provenance | MaD:7 | -| TextStringBuilderTest.java:22:85:22:105 | toCharArray(...) : char[] | TextStringBuilderTest.java:22:69:22:106 | wrap(...) : CharBuffer | provenance | MaD:10 | -| TextStringBuilderTest.java:22:115:22:117 | sb3 : TextStringBuilder | TextStringBuilderTest.java:22:115:22:128 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:22:115:22:117 | sb3 : TextStringBuilder | TextStringBuilderTest.java:22:115:22:128 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:22:69:22:106 | wrap(...) : CharBuffer | TextStringBuilderTest.java:22:58:22:60 | sb3 [post update] : TextStringBuilder | provenance | MaD:569 | +| TextStringBuilderTest.java:22:85:22:91 | taint(...) : String | TextStringBuilderTest.java:22:85:22:105 | toCharArray(...) : char[] | provenance | MaD:5 | +| TextStringBuilderTest.java:22:85:22:105 | toCharArray(...) : char[] | TextStringBuilderTest.java:22:69:22:106 | wrap(...) : CharBuffer | provenance | MaD:8 | +| TextStringBuilderTest.java:22:115:22:117 | sb3 : TextStringBuilder | TextStringBuilderTest.java:22:115:22:128 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:23:58:23:60 | sb4 [post update] : TextStringBuilder | TextStringBuilderTest.java:23:121:23:123 | sb4 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:23:69:23:106 | wrap(...) : CharBuffer | TextStringBuilderTest.java:23:58:23:60 | sb4 [post update] : TextStringBuilder | provenance | MaD:576 | -| TextStringBuilderTest.java:23:85:23:91 | taint(...) : String | TextStringBuilderTest.java:23:85:23:105 | toCharArray(...) : char[] | provenance | MaD:7 | -| TextStringBuilderTest.java:23:85:23:105 | toCharArray(...) : char[] | TextStringBuilderTest.java:23:69:23:106 | wrap(...) : CharBuffer | provenance | MaD:10 | -| TextStringBuilderTest.java:23:121:23:123 | sb4 : TextStringBuilder | TextStringBuilderTest.java:23:121:23:134 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:23:121:23:123 | sb4 : TextStringBuilder | TextStringBuilderTest.java:23:121:23:134 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:23:69:23:106 | wrap(...) : CharBuffer | TextStringBuilderTest.java:23:58:23:60 | sb4 [post update] : TextStringBuilder | provenance | MaD:570 | +| TextStringBuilderTest.java:23:85:23:91 | taint(...) : String | TextStringBuilderTest.java:23:85:23:105 | toCharArray(...) : char[] | provenance | MaD:5 | +| TextStringBuilderTest.java:23:85:23:105 | toCharArray(...) : char[] | TextStringBuilderTest.java:23:69:23:106 | wrap(...) : CharBuffer | provenance | MaD:8 | +| TextStringBuilderTest.java:23:121:23:123 | sb4 : TextStringBuilder | TextStringBuilderTest.java:23:121:23:134 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:24:58:24:60 | sb5 [post update] : TextStringBuilder | TextStringBuilderTest.java:24:98:24:100 | sb5 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:24:69:24:89 | (...)... : String | TextStringBuilderTest.java:24:58:24:60 | sb5 [post update] : TextStringBuilder | provenance | MaD:3 | -| TextStringBuilderTest.java:24:69:24:89 | (...)... : String | TextStringBuilderTest.java:24:58:24:60 | sb5 [post update] : TextStringBuilder | provenance | MaD:564 | +| TextStringBuilderTest.java:24:69:24:89 | (...)... : String | TextStringBuilderTest.java:24:58:24:60 | sb5 [post update] : TextStringBuilder | provenance | MaD:558 | | TextStringBuilderTest.java:24:83:24:89 | taint(...) : String | TextStringBuilderTest.java:24:69:24:89 | (...)... : String | provenance | | -| TextStringBuilderTest.java:24:98:24:100 | sb5 : TextStringBuilder | TextStringBuilderTest.java:24:98:24:111 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:24:98:24:100 | sb5 : TextStringBuilder | TextStringBuilderTest.java:24:98:24:111 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:24:98:24:100 | sb5 : TextStringBuilder | TextStringBuilderTest.java:24:98:24:111 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:25:58:25:60 | sb6 [post update] : TextStringBuilder | TextStringBuilderTest.java:25:104:25:106 | sb6 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:25:69:25:89 | (...)... : String | TextStringBuilderTest.java:25:58:25:60 | sb6 [post update] : TextStringBuilder | provenance | MaD:3 | -| TextStringBuilderTest.java:25:69:25:89 | (...)... : String | TextStringBuilderTest.java:25:58:25:60 | sb6 [post update] : TextStringBuilder | provenance | MaD:565 | +| TextStringBuilderTest.java:25:69:25:89 | (...)... : String | TextStringBuilderTest.java:25:58:25:60 | sb6 [post update] : TextStringBuilder | provenance | MaD:559 | | TextStringBuilderTest.java:25:83:25:89 | taint(...) : String | TextStringBuilderTest.java:25:69:25:89 | (...)... : String | provenance | | -| TextStringBuilderTest.java:25:104:25:106 | sb6 : TextStringBuilder | TextStringBuilderTest.java:25:104:25:117 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:25:104:25:106 | sb6 : TextStringBuilder | TextStringBuilderTest.java:25:104:25:117 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:25:104:25:106 | sb6 : TextStringBuilder | TextStringBuilderTest.java:25:104:25:117 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:26:58:26:60 | sb7 [post update] : TextStringBuilder | TextStringBuilderTest.java:26:92:26:94 | sb7 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:26:69:26:83 | (...)... : String | TextStringBuilderTest.java:26:58:26:60 | sb7 [post update] : TextStringBuilder | provenance | MaD:566 | +| TextStringBuilderTest.java:26:69:26:83 | (...)... : String | TextStringBuilderTest.java:26:58:26:60 | sb7 [post update] : TextStringBuilder | provenance | MaD:560 | | TextStringBuilderTest.java:26:77:26:83 | taint(...) : String | TextStringBuilderTest.java:26:69:26:83 | (...)... : String | provenance | | -| TextStringBuilderTest.java:26:92:26:94 | sb7 : TextStringBuilder | TextStringBuilderTest.java:26:92:26:105 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:26:92:26:94 | sb7 : TextStringBuilder | TextStringBuilderTest.java:26:92:26:105 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:26:92:26:94 | sb7 : TextStringBuilder | TextStringBuilderTest.java:26:92:26:105 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:28:64:28:68 | auxsb [post update] : TextStringBuilder | TextStringBuilderTest.java:29:73:29:77 | auxsb : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:28:77:28:83 | taint(...) : String | TextStringBuilderTest.java:28:64:28:68 | auxsb [post update] : TextStringBuilder | provenance | MaD:567 | +| TextStringBuilderTest.java:28:77:28:83 | taint(...) : String | TextStringBuilderTest.java:28:64:28:68 | auxsb [post update] : TextStringBuilder | provenance | MaD:561 | | TextStringBuilderTest.java:29:62:29:64 | sb8 [post update] : TextStringBuilder | TextStringBuilderTest.java:29:86:29:88 | sb8 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:29:73:29:77 | auxsb : TextStringBuilder | TextStringBuilderTest.java:29:62:29:64 | sb8 [post update] : TextStringBuilder | provenance | MaD:577 | -| TextStringBuilderTest.java:29:86:29:88 | sb8 : TextStringBuilder | TextStringBuilderTest.java:29:86:29:99 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:29:86:29:88 | sb8 : TextStringBuilder | TextStringBuilderTest.java:29:86:29:99 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:29:73:29:77 | auxsb : TextStringBuilder | TextStringBuilderTest.java:29:62:29:64 | sb8 [post update] : TextStringBuilder | provenance | MaD:571 | +| TextStringBuilderTest.java:29:86:29:88 | sb8 : TextStringBuilder | TextStringBuilderTest.java:29:86:29:99 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:31:58:31:60 | sb9 [post update] : TextStringBuilder | TextStringBuilderTest.java:31:102:31:104 | sb9 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:31:69:31:93 | new StringBuffer(...) : StringBuffer | TextStringBuilderTest.java:31:58:31:60 | sb9 [post update] : TextStringBuilder | provenance | MaD:571 | -| TextStringBuilderTest.java:31:86:31:92 | taint(...) : String | TextStringBuilderTest.java:31:69:31:93 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| TextStringBuilderTest.java:31:102:31:104 | sb9 : TextStringBuilder | TextStringBuilderTest.java:31:102:31:115 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:31:102:31:104 | sb9 : TextStringBuilder | TextStringBuilderTest.java:31:102:31:115 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:31:69:31:93 | new StringBuffer(...) : StringBuffer | TextStringBuilderTest.java:31:58:31:60 | sb9 [post update] : TextStringBuilder | provenance | MaD:565 | +| TextStringBuilderTest.java:31:86:31:92 | taint(...) : String | TextStringBuilderTest.java:31:69:31:93 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| TextStringBuilderTest.java:31:102:31:104 | sb9 : TextStringBuilder | TextStringBuilderTest.java:31:102:31:115 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:32:59:32:62 | sb10 [post update] : TextStringBuilder | TextStringBuilderTest.java:32:110:32:113 | sb10 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:32:71:32:95 | new StringBuffer(...) : StringBuffer | TextStringBuilderTest.java:32:59:32:62 | sb10 [post update] : TextStringBuilder | provenance | MaD:572 | -| TextStringBuilderTest.java:32:88:32:94 | taint(...) : String | TextStringBuilderTest.java:32:71:32:95 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| TextStringBuilderTest.java:32:110:32:113 | sb10 : TextStringBuilder | TextStringBuilderTest.java:32:110:32:124 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:32:110:32:113 | sb10 : TextStringBuilder | TextStringBuilderTest.java:32:110:32:124 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:32:71:32:95 | new StringBuffer(...) : StringBuffer | TextStringBuilderTest.java:32:59:32:62 | sb10 [post update] : TextStringBuilder | provenance | MaD:566 | +| TextStringBuilderTest.java:32:88:32:94 | taint(...) : String | TextStringBuilderTest.java:32:71:32:95 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| TextStringBuilderTest.java:32:110:32:113 | sb10 : TextStringBuilder | TextStringBuilderTest.java:32:110:32:124 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:33:59:33:62 | sb11 [post update] : TextStringBuilder | TextStringBuilderTest.java:33:105:33:108 | sb11 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:33:71:33:96 | new StringBuilder(...) : StringBuilder | TextStringBuilderTest.java:33:59:33:62 | sb11 [post update] : TextStringBuilder | provenance | MaD:573 | -| TextStringBuilderTest.java:33:89:33:95 | taint(...) : String | TextStringBuilderTest.java:33:71:33:96 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| TextStringBuilderTest.java:33:105:33:108 | sb11 : TextStringBuilder | TextStringBuilderTest.java:33:105:33:119 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:33:105:33:108 | sb11 : TextStringBuilder | TextStringBuilderTest.java:33:105:33:119 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:33:71:33:96 | new StringBuilder(...) : StringBuilder | TextStringBuilderTest.java:33:59:33:62 | sb11 [post update] : TextStringBuilder | provenance | MaD:567 | +| TextStringBuilderTest.java:33:89:33:95 | taint(...) : String | TextStringBuilderTest.java:33:71:33:96 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| TextStringBuilderTest.java:33:105:33:108 | sb11 : TextStringBuilder | TextStringBuilderTest.java:33:105:33:119 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:34:59:34:62 | sb12 [post update] : TextStringBuilder | TextStringBuilderTest.java:34:111:34:114 | sb12 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:34:71:34:96 | new StringBuilder(...) : StringBuilder | TextStringBuilderTest.java:34:59:34:62 | sb12 [post update] : TextStringBuilder | provenance | MaD:574 | -| TextStringBuilderTest.java:34:89:34:95 | taint(...) : String | TextStringBuilderTest.java:34:71:34:96 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| TextStringBuilderTest.java:34:111:34:114 | sb12 : TextStringBuilder | TextStringBuilderTest.java:34:111:34:125 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:34:111:34:114 | sb12 : TextStringBuilder | TextStringBuilderTest.java:34:111:34:125 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:34:71:34:96 | new StringBuilder(...) : StringBuilder | TextStringBuilderTest.java:34:59:34:62 | sb12 [post update] : TextStringBuilder | provenance | MaD:568 | +| TextStringBuilderTest.java:34:89:34:95 | taint(...) : String | TextStringBuilderTest.java:34:71:34:96 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| TextStringBuilderTest.java:34:111:34:114 | sb12 : TextStringBuilder | TextStringBuilderTest.java:34:111:34:125 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:35:59:35:62 | sb13 [post update] : TextStringBuilder | TextStringBuilderTest.java:35:86:35:89 | sb13 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:35:71:35:77 | taint(...) : String | TextStringBuilderTest.java:35:59:35:62 | sb13 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:35:86:35:89 | sb13 : TextStringBuilder | TextStringBuilderTest.java:35:86:35:100 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:35:86:35:89 | sb13 : TextStringBuilder | TextStringBuilderTest.java:35:86:35:100 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:35:71:35:77 | taint(...) : String | TextStringBuilderTest.java:35:59:35:62 | sb13 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:35:86:35:89 | sb13 : TextStringBuilder | TextStringBuilderTest.java:35:86:35:100 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:36:59:36:62 | sb14 [post update] : TextStringBuilder | TextStringBuilderTest.java:36:92:36:95 | sb14 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:36:71:36:77 | taint(...) : String | TextStringBuilderTest.java:36:59:36:62 | sb14 [post update] : TextStringBuilder | provenance | MaD:568 | -| TextStringBuilderTest.java:36:92:36:95 | sb14 : TextStringBuilder | TextStringBuilderTest.java:36:92:36:106 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:36:92:36:95 | sb14 : TextStringBuilder | TextStringBuilderTest.java:36:92:36:106 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:36:71:36:77 | taint(...) : String | TextStringBuilderTest.java:36:59:36:62 | sb14 [post update] : TextStringBuilder | provenance | MaD:562 | +| TextStringBuilderTest.java:36:92:36:95 | sb14 : TextStringBuilder | TextStringBuilderTest.java:36:92:36:106 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:37:59:37:62 | sb15 [post update] : TextStringBuilder | TextStringBuilderTest.java:37:104:37:107 | sb15 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:37:71:37:77 | taint(...) : String | TextStringBuilderTest.java:37:59:37:62 | sb15 [post update] : TextStringBuilder | provenance | MaD:569 | -| TextStringBuilderTest.java:37:104:37:107 | sb15 : TextStringBuilder | TextStringBuilderTest.java:37:104:37:118 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:37:104:37:107 | sb15 : TextStringBuilder | TextStringBuilderTest.java:37:104:37:118 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:37:71:37:77 | taint(...) : String | TextStringBuilderTest.java:37:59:37:62 | sb15 [post update] : TextStringBuilder | provenance | MaD:563 | +| TextStringBuilderTest.java:37:104:37:107 | sb15 : TextStringBuilder | TextStringBuilderTest.java:37:104:37:118 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:38:59:38:62 | sb16 [post update] : TextStringBuilder | TextStringBuilderTest.java:38:111:38:114 | sb16 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:38:59:38:103 | new ..[] { .. } : Object[] [[]] : String | TextStringBuilderTest.java:38:59:38:62 | sb16 [post update] : TextStringBuilder | provenance | MaD:570 | +| TextStringBuilderTest.java:38:59:38:103 | new ..[] { .. } : Object[] [[]] : String | TextStringBuilderTest.java:38:59:38:62 | sb16 [post update] : TextStringBuilder | provenance | MaD:564 | | TextStringBuilderTest.java:38:88:38:94 | taint(...) : String | TextStringBuilderTest.java:38:59:38:103 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| TextStringBuilderTest.java:38:111:38:114 | sb16 : TextStringBuilder | TextStringBuilderTest.java:38:111:38:125 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:38:111:38:114 | sb16 : TextStringBuilder | TextStringBuilderTest.java:38:111:38:125 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:38:111:38:114 | sb16 : TextStringBuilder | TextStringBuilderTest.java:38:111:38:125 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:41:13:41:23 | taintedList [post update] : ArrayList [] : String | TextStringBuilderTest.java:42:78:42:88 | taintedList : ArrayList [] : String | provenance | | | TextStringBuilderTest.java:41:13:41:23 | taintedList [post update] : ArrayList [] : String | TextStringBuilderTest.java:43:78:43:88 | taintedList : ArrayList [] : String | provenance | | -| TextStringBuilderTest.java:41:29:41:35 | taint(...) : String | TextStringBuilderTest.java:41:13:41:23 | taintedList [post update] : ArrayList [] : String | provenance | MaD:11 | +| TextStringBuilderTest.java:41:29:41:35 | taint(...) : String | TextStringBuilderTest.java:41:13:41:23 | taintedList [post update] : ArrayList [] : String | provenance | MaD:9 | | TextStringBuilderTest.java:42:63:42:66 | sb17 [post update] : TextStringBuilder | TextStringBuilderTest.java:42:97:42:100 | sb17 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:42:78:42:88 | taintedList : ArrayList [] : String | TextStringBuilderTest.java:42:63:42:66 | sb17 [post update] : TextStringBuilder | provenance | MaD:579 | -| TextStringBuilderTest.java:42:97:42:100 | sb17 : TextStringBuilder | TextStringBuilderTest.java:42:97:42:111 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:42:97:42:100 | sb17 : TextStringBuilder | TextStringBuilderTest.java:42:97:42:111 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:42:78:42:88 | taintedList : ArrayList [] : String | TextStringBuilderTest.java:42:63:42:66 | sb17 [post update] : TextStringBuilder | provenance | MaD:573 | +| TextStringBuilderTest.java:42:97:42:100 | sb17 : TextStringBuilder | TextStringBuilderTest.java:42:97:42:111 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:43:63:43:66 | sb18 [post update] : TextStringBuilder | TextStringBuilderTest.java:43:108:43:111 | sb18 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:43:78:43:88 | taintedList : ArrayList [] : String | TextStringBuilderTest.java:43:78:43:99 | iterator(...) : Iterator [] : String | provenance | MaD:6 | -| TextStringBuilderTest.java:43:78:43:99 | iterator(...) : Iterator [] : String | TextStringBuilderTest.java:43:63:43:66 | sb18 [post update] : TextStringBuilder | provenance | MaD:580 | -| TextStringBuilderTest.java:43:108:43:111 | sb18 : TextStringBuilder | TextStringBuilderTest.java:43:108:43:122 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:43:108:43:111 | sb18 : TextStringBuilder | TextStringBuilderTest.java:43:108:43:122 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:43:78:43:88 | taintedList : ArrayList [] : String | TextStringBuilderTest.java:43:78:43:99 | iterator(...) : Iterator [] : String | provenance | MaD:4 | +| TextStringBuilderTest.java:43:78:43:99 | iterator(...) : Iterator [] : String | TextStringBuilderTest.java:43:63:43:66 | sb18 [post update] : TextStringBuilder | provenance | MaD:574 | +| TextStringBuilderTest.java:43:108:43:111 | sb18 : TextStringBuilder | TextStringBuilderTest.java:43:108:43:122 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:45:59:45:62 | sb19 [post update] : TextStringBuilder | TextStringBuilderTest.java:45:98:45:101 | sb19 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:45:59:45:90 | new ..[] { .. } : Object[] [[]] : String | TextStringBuilderTest.java:45:59:45:62 | sb19 [post update] : TextStringBuilder | provenance | MaD:581 | +| TextStringBuilderTest.java:45:59:45:90 | new ..[] { .. } : Object[] [[]] : String | TextStringBuilderTest.java:45:59:45:62 | sb19 [post update] : TextStringBuilder | provenance | MaD:575 | | TextStringBuilderTest.java:45:83:45:89 | taint(...) : String | TextStringBuilderTest.java:45:59:45:90 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| TextStringBuilderTest.java:45:98:45:101 | sb19 : TextStringBuilder | TextStringBuilderTest.java:45:98:45:112 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:45:98:45:101 | sb19 : TextStringBuilder | TextStringBuilderTest.java:45:98:45:112 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:45:98:45:101 | sb19 : TextStringBuilder | TextStringBuilderTest.java:45:98:45:112 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:46:59:46:62 | sb20 [post update] : TextStringBuilder | TextStringBuilderTest.java:46:98:46:101 | sb20 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:46:59:46:90 | new ..[] { .. } : Object[] [[]] : String | TextStringBuilderTest.java:46:59:46:62 | sb20 [post update] : TextStringBuilder | provenance | MaD:581 | +| TextStringBuilderTest.java:46:59:46:90 | new ..[] { .. } : Object[] [[]] : String | TextStringBuilderTest.java:46:59:46:62 | sb20 [post update] : TextStringBuilder | provenance | MaD:575 | | TextStringBuilderTest.java:46:74:46:80 | taint(...) : String | TextStringBuilderTest.java:46:59:46:90 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| TextStringBuilderTest.java:46:98:46:101 | sb20 : TextStringBuilder | TextStringBuilderTest.java:46:98:46:112 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:46:98:46:101 | sb20 : TextStringBuilder | TextStringBuilderTest.java:46:98:46:112 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:46:98:46:101 | sb20 : TextStringBuilder | TextStringBuilderTest.java:46:98:46:112 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:47:59:47:62 | sb21 [post update] : TextStringBuilder | TextStringBuilderTest.java:47:111:47:114 | sb21 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:47:88:47:94 | taint(...) : String | TextStringBuilderTest.java:47:59:47:62 | sb21 [post update] : TextStringBuilder | provenance | MaD:583 | -| TextStringBuilderTest.java:47:111:47:114 | sb21 : TextStringBuilder | TextStringBuilderTest.java:47:111:47:125 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:47:111:47:114 | sb21 : TextStringBuilder | TextStringBuilderTest.java:47:111:47:125 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:47:88:47:94 | taint(...) : String | TextStringBuilderTest.java:47:59:47:62 | sb21 [post update] : TextStringBuilder | provenance | MaD:577 | +| TextStringBuilderTest.java:47:111:47:114 | sb21 : TextStringBuilder | TextStringBuilderTest.java:47:111:47:125 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:48:59:48:62 | sb22 [post update] : TextStringBuilder | TextStringBuilderTest.java:48:112:48:115 | sb22 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:48:89:48:95 | taint(...) : String | TextStringBuilderTest.java:48:59:48:62 | sb22 [post update] : TextStringBuilder | provenance | MaD:585 | -| TextStringBuilderTest.java:48:112:48:115 | sb22 : TextStringBuilder | TextStringBuilderTest.java:48:112:48:126 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:48:112:48:115 | sb22 : TextStringBuilder | TextStringBuilderTest.java:48:112:48:126 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:48:89:48:95 | taint(...) : String | TextStringBuilderTest.java:48:59:48:62 | sb22 [post update] : TextStringBuilder | provenance | MaD:579 | +| TextStringBuilderTest.java:48:112:48:115 | sb22 : TextStringBuilder | TextStringBuilderTest.java:48:112:48:126 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:49:59:49:62 | sb23 [post update] : TextStringBuilder | TextStringBuilderTest.java:49:102:49:105 | sb23 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:49:73:49:79 | taint(...) : String | TextStringBuilderTest.java:49:73:49:93 | toCharArray(...) : char[] | provenance | MaD:7 | -| TextStringBuilderTest.java:49:73:49:93 | toCharArray(...) : char[] | TextStringBuilderTest.java:49:59:49:62 | sb23 [post update] : TextStringBuilder | provenance | MaD:600 | -| TextStringBuilderTest.java:49:102:49:105 | sb23 : TextStringBuilder | TextStringBuilderTest.java:49:102:49:116 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:49:102:49:105 | sb23 : TextStringBuilder | TextStringBuilderTest.java:49:102:49:116 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:49:73:49:79 | taint(...) : String | TextStringBuilderTest.java:49:73:49:93 | toCharArray(...) : char[] | provenance | MaD:5 | +| TextStringBuilderTest.java:49:73:49:93 | toCharArray(...) : char[] | TextStringBuilderTest.java:49:59:49:62 | sb23 [post update] : TextStringBuilder | provenance | MaD:594 | +| TextStringBuilderTest.java:49:102:49:105 | sb23 : TextStringBuilder | TextStringBuilderTest.java:49:102:49:116 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:50:59:50:62 | sb24 [post update] : TextStringBuilder | TextStringBuilderTest.java:50:108:50:111 | sb24 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:50:73:50:79 | taint(...) : String | TextStringBuilderTest.java:50:73:50:93 | toCharArray(...) : char[] | provenance | MaD:7 | -| TextStringBuilderTest.java:50:73:50:93 | toCharArray(...) : char[] | TextStringBuilderTest.java:50:59:50:62 | sb24 [post update] : TextStringBuilder | provenance | MaD:601 | -| TextStringBuilderTest.java:50:108:50:111 | sb24 : TextStringBuilder | TextStringBuilderTest.java:50:108:50:122 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:50:108:50:111 | sb24 : TextStringBuilder | TextStringBuilderTest.java:50:108:50:122 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:50:73:50:79 | taint(...) : String | TextStringBuilderTest.java:50:73:50:93 | toCharArray(...) : char[] | provenance | MaD:5 | +| TextStringBuilderTest.java:50:73:50:93 | toCharArray(...) : char[] | TextStringBuilderTest.java:50:59:50:62 | sb24 [post update] : TextStringBuilder | provenance | MaD:595 | +| TextStringBuilderTest.java:50:108:50:111 | sb24 : TextStringBuilder | TextStringBuilderTest.java:50:108:50:122 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:51:59:51:62 | sb25 [post update] : TextStringBuilder | TextStringBuilderTest.java:51:96:51:99 | sb25 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:51:73:51:87 | (...)... : String | TextStringBuilderTest.java:51:59:51:62 | sb25 [post update] : TextStringBuilder | provenance | MaD:602 | +| TextStringBuilderTest.java:51:73:51:87 | (...)... : String | TextStringBuilderTest.java:51:59:51:62 | sb25 [post update] : TextStringBuilder | provenance | MaD:596 | | TextStringBuilderTest.java:51:81:51:87 | taint(...) : String | TextStringBuilderTest.java:51:73:51:87 | (...)... : String | provenance | | -| TextStringBuilderTest.java:51:96:51:99 | sb25 : TextStringBuilder | TextStringBuilderTest.java:51:96:51:110 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:51:96:51:99 | sb25 : TextStringBuilder | TextStringBuilderTest.java:51:96:51:110 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:51:96:51:99 | sb25 : TextStringBuilder | TextStringBuilderTest.java:51:96:51:110 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:53:64:53:68 | auxsb [post update] : TextStringBuilder | TextStringBuilderTest.java:54:77:54:81 | auxsb : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:53:79:53:85 | taint(...) : String | TextStringBuilderTest.java:53:64:53:68 | auxsb [post update] : TextStringBuilder | provenance | MaD:603 | +| TextStringBuilderTest.java:53:79:53:85 | taint(...) : String | TextStringBuilderTest.java:53:64:53:68 | auxsb [post update] : TextStringBuilder | provenance | MaD:597 | | TextStringBuilderTest.java:54:63:54:66 | sb26 [post update] : TextStringBuilder | TextStringBuilderTest.java:54:90:54:93 | sb26 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:54:77:54:81 | auxsb : TextStringBuilder | TextStringBuilderTest.java:54:63:54:66 | sb26 [post update] : TextStringBuilder | provenance | MaD:611 | -| TextStringBuilderTest.java:54:90:54:93 | sb26 : TextStringBuilder | TextStringBuilderTest.java:54:90:54:104 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:54:90:54:93 | sb26 : TextStringBuilder | TextStringBuilderTest.java:54:90:54:104 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:54:77:54:81 | auxsb : TextStringBuilder | TextStringBuilderTest.java:54:63:54:66 | sb26 [post update] : TextStringBuilder | provenance | MaD:605 | +| TextStringBuilderTest.java:54:90:54:93 | sb26 : TextStringBuilder | TextStringBuilderTest.java:54:90:54:104 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:56:59:56:62 | sb27 [post update] : TextStringBuilder | TextStringBuilderTest.java:56:106:56:109 | sb27 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:56:73:56:97 | new StringBuffer(...) : StringBuffer | TextStringBuilderTest.java:56:59:56:62 | sb27 [post update] : TextStringBuilder | provenance | MaD:607 | -| TextStringBuilderTest.java:56:90:56:96 | taint(...) : String | TextStringBuilderTest.java:56:73:56:97 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| TextStringBuilderTest.java:56:106:56:109 | sb27 : TextStringBuilder | TextStringBuilderTest.java:56:106:56:120 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:56:106:56:109 | sb27 : TextStringBuilder | TextStringBuilderTest.java:56:106:56:120 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:56:73:56:97 | new StringBuffer(...) : StringBuffer | TextStringBuilderTest.java:56:59:56:62 | sb27 [post update] : TextStringBuilder | provenance | MaD:601 | +| TextStringBuilderTest.java:56:90:56:96 | taint(...) : String | TextStringBuilderTest.java:56:73:56:97 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| TextStringBuilderTest.java:56:106:56:109 | sb27 : TextStringBuilder | TextStringBuilderTest.java:56:106:56:120 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:57:59:57:62 | sb28 [post update] : TextStringBuilder | TextStringBuilderTest.java:57:112:57:115 | sb28 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:57:73:57:97 | new StringBuffer(...) : StringBuffer | TextStringBuilderTest.java:57:59:57:62 | sb28 [post update] : TextStringBuilder | provenance | MaD:608 | -| TextStringBuilderTest.java:57:90:57:96 | taint(...) : String | TextStringBuilderTest.java:57:73:57:97 | new StringBuffer(...) : StringBuffer | provenance | MaD:8 | -| TextStringBuilderTest.java:57:112:57:115 | sb28 : TextStringBuilder | TextStringBuilderTest.java:57:112:57:126 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:57:112:57:115 | sb28 : TextStringBuilder | TextStringBuilderTest.java:57:112:57:126 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:57:73:57:97 | new StringBuffer(...) : StringBuffer | TextStringBuilderTest.java:57:59:57:62 | sb28 [post update] : TextStringBuilder | provenance | MaD:602 | +| TextStringBuilderTest.java:57:90:57:96 | taint(...) : String | TextStringBuilderTest.java:57:73:57:97 | new StringBuffer(...) : StringBuffer | provenance | MaD:6 | +| TextStringBuilderTest.java:57:112:57:115 | sb28 : TextStringBuilder | TextStringBuilderTest.java:57:112:57:126 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:58:59:58:62 | sb29 [post update] : TextStringBuilder | TextStringBuilderTest.java:58:107:58:110 | sb29 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:58:73:58:98 | new StringBuilder(...) : StringBuilder | TextStringBuilderTest.java:58:59:58:62 | sb29 [post update] : TextStringBuilder | provenance | MaD:609 | -| TextStringBuilderTest.java:58:91:58:97 | taint(...) : String | TextStringBuilderTest.java:58:73:58:98 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| TextStringBuilderTest.java:58:107:58:110 | sb29 : TextStringBuilder | TextStringBuilderTest.java:58:107:58:121 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:58:107:58:110 | sb29 : TextStringBuilder | TextStringBuilderTest.java:58:107:58:121 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:58:73:58:98 | new StringBuilder(...) : StringBuilder | TextStringBuilderTest.java:58:59:58:62 | sb29 [post update] : TextStringBuilder | provenance | MaD:603 | +| TextStringBuilderTest.java:58:91:58:97 | taint(...) : String | TextStringBuilderTest.java:58:73:58:98 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| TextStringBuilderTest.java:58:107:58:110 | sb29 : TextStringBuilder | TextStringBuilderTest.java:58:107:58:121 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:59:59:59:62 | sb30 [post update] : TextStringBuilder | TextStringBuilderTest.java:59:113:59:116 | sb30 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:59:73:59:98 | new StringBuilder(...) : StringBuilder | TextStringBuilderTest.java:59:59:59:62 | sb30 [post update] : TextStringBuilder | provenance | MaD:610 | -| TextStringBuilderTest.java:59:91:59:97 | taint(...) : String | TextStringBuilderTest.java:59:73:59:98 | new StringBuilder(...) : StringBuilder | provenance | MaD:9 | -| TextStringBuilderTest.java:59:113:59:116 | sb30 : TextStringBuilder | TextStringBuilderTest.java:59:113:59:127 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:59:113:59:116 | sb30 : TextStringBuilder | TextStringBuilderTest.java:59:113:59:127 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:59:73:59:98 | new StringBuilder(...) : StringBuilder | TextStringBuilderTest.java:59:59:59:62 | sb30 [post update] : TextStringBuilder | provenance | MaD:604 | +| TextStringBuilderTest.java:59:91:59:97 | taint(...) : String | TextStringBuilderTest.java:59:73:59:98 | new StringBuilder(...) : StringBuilder | provenance | MaD:7 | +| TextStringBuilderTest.java:59:113:59:116 | sb30 : TextStringBuilder | TextStringBuilderTest.java:59:113:59:127 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:60:59:60:62 | sb31 [post update] : TextStringBuilder | TextStringBuilderTest.java:60:88:60:91 | sb31 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:60:73:60:79 | taint(...) : String | TextStringBuilderTest.java:60:59:60:62 | sb31 [post update] : TextStringBuilder | provenance | MaD:603 | -| TextStringBuilderTest.java:60:88:60:91 | sb31 : TextStringBuilder | TextStringBuilderTest.java:60:88:60:102 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:60:88:60:91 | sb31 : TextStringBuilder | TextStringBuilderTest.java:60:88:60:102 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:60:73:60:79 | taint(...) : String | TextStringBuilderTest.java:60:59:60:62 | sb31 [post update] : TextStringBuilder | provenance | MaD:597 | +| TextStringBuilderTest.java:60:88:60:91 | sb31 : TextStringBuilder | TextStringBuilderTest.java:60:88:60:102 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:61:59:61:62 | sb32 [post update] : TextStringBuilder | TextStringBuilderTest.java:61:94:61:97 | sb32 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:61:73:61:79 | taint(...) : String | TextStringBuilderTest.java:61:59:61:62 | sb32 [post update] : TextStringBuilder | provenance | MaD:604 | -| TextStringBuilderTest.java:61:94:61:97 | sb32 : TextStringBuilder | TextStringBuilderTest.java:61:94:61:108 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:61:94:61:97 | sb32 : TextStringBuilder | TextStringBuilderTest.java:61:94:61:108 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:61:73:61:79 | taint(...) : String | TextStringBuilderTest.java:61:59:61:62 | sb32 [post update] : TextStringBuilder | provenance | MaD:598 | +| TextStringBuilderTest.java:61:94:61:97 | sb32 : TextStringBuilder | TextStringBuilderTest.java:61:94:61:108 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:62:59:62:62 | sb33 [post update] : TextStringBuilder | TextStringBuilderTest.java:62:106:62:109 | sb33 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:62:73:62:79 | taint(...) : String | TextStringBuilderTest.java:62:59:62:62 | sb33 [post update] : TextStringBuilder | provenance | MaD:605 | -| TextStringBuilderTest.java:62:106:62:109 | sb33 : TextStringBuilder | TextStringBuilderTest.java:62:106:62:120 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:62:106:62:109 | sb33 : TextStringBuilder | TextStringBuilderTest.java:62:106:62:120 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:62:73:62:79 | taint(...) : String | TextStringBuilderTest.java:62:59:62:62 | sb33 [post update] : TextStringBuilder | provenance | MaD:599 | +| TextStringBuilderTest.java:62:106:62:109 | sb33 : TextStringBuilder | TextStringBuilderTest.java:62:106:62:120 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:63:59:63:62 | sb34 [post update] : TextStringBuilder | TextStringBuilderTest.java:63:113:63:116 | sb34 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:63:59:63:105 | new ..[] { .. } : Object[] [[]] : String | TextStringBuilderTest.java:63:59:63:62 | sb34 [post update] : TextStringBuilder | provenance | MaD:606 | +| TextStringBuilderTest.java:63:59:63:105 | new ..[] { .. } : Object[] [[]] : String | TextStringBuilderTest.java:63:59:63:62 | sb34 [post update] : TextStringBuilder | provenance | MaD:600 | | TextStringBuilderTest.java:63:90:63:96 | taint(...) : String | TextStringBuilderTest.java:63:59:63:105 | new ..[] { .. } : Object[] [[]] : String | provenance | | -| TextStringBuilderTest.java:63:113:63:116 | sb34 : TextStringBuilder | TextStringBuilderTest.java:63:113:63:127 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:63:113:63:116 | sb34 : TextStringBuilder | TextStringBuilderTest.java:63:113:63:127 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:63:113:63:116 | sb34 : TextStringBuilder | TextStringBuilderTest.java:63:113:63:127 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:64:59:64:62 | sb35 [post update] : TextStringBuilder | TextStringBuilderTest.java:64:95:64:98 | sb35 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:64:80:64:86 | taint(...) : String | TextStringBuilderTest.java:64:59:64:62 | sb35 [post update] : TextStringBuilder | provenance | MaD:590 | -| TextStringBuilderTest.java:64:95:64:98 | sb35 : TextStringBuilder | TextStringBuilderTest.java:64:95:64:109 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:64:95:64:98 | sb35 : TextStringBuilder | TextStringBuilderTest.java:64:95:64:109 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:64:80:64:86 | taint(...) : String | TextStringBuilderTest.java:64:59:64:62 | sb35 [post update] : TextStringBuilder | provenance | MaD:584 | +| TextStringBuilderTest.java:64:95:64:98 | sb35 : TextStringBuilder | TextStringBuilderTest.java:64:95:64:109 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:65:59:65:62 | sb36 [post update] : TextStringBuilder | TextStringBuilderTest.java:65:98:65:101 | sb36 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:65:80:65:86 | taint(...) : String | TextStringBuilderTest.java:65:59:65:62 | sb36 [post update] : TextStringBuilder | provenance | MaD:591 | -| TextStringBuilderTest.java:65:98:65:101 | sb36 : TextStringBuilder | TextStringBuilderTest.java:65:98:65:112 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:65:98:65:101 | sb36 : TextStringBuilder | TextStringBuilderTest.java:65:98:65:112 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:65:80:65:86 | taint(...) : String | TextStringBuilderTest.java:65:59:65:62 | sb36 [post update] : TextStringBuilder | provenance | MaD:585 | +| TextStringBuilderTest.java:65:98:65:101 | sb36 : TextStringBuilder | TextStringBuilderTest.java:65:98:65:112 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:66:59:66:62 | sb37 [post update] : TextStringBuilder | TextStringBuilderTest.java:66:106:66:109 | sb37 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:66:80:66:86 | taint(...) : String | TextStringBuilderTest.java:66:59:66:62 | sb37 [post update] : TextStringBuilder | provenance | MaD:592 | -| TextStringBuilderTest.java:66:106:66:109 | sb37 : TextStringBuilder | TextStringBuilderTest.java:66:106:66:120 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:66:106:66:109 | sb37 : TextStringBuilder | TextStringBuilderTest.java:66:106:66:120 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:66:80:66:86 | taint(...) : String | TextStringBuilderTest.java:66:59:66:62 | sb37 [post update] : TextStringBuilder | provenance | MaD:586 | +| TextStringBuilderTest.java:66:106:66:109 | sb37 : TextStringBuilder | TextStringBuilderTest.java:66:106:66:120 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:67:59:67:62 | sb38 [post update] : TextStringBuilder | TextStringBuilderTest.java:67:99:67:102 | sb38 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:67:84:67:90 | taint(...) : String | TextStringBuilderTest.java:67:59:67:62 | sb38 [post update] : TextStringBuilder | provenance | MaD:592 | -| TextStringBuilderTest.java:67:99:67:102 | sb38 : TextStringBuilder | TextStringBuilderTest.java:67:99:67:113 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:67:99:67:102 | sb38 : TextStringBuilder | TextStringBuilderTest.java:67:99:67:113 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:67:84:67:90 | taint(...) : String | TextStringBuilderTest.java:67:59:67:62 | sb38 [post update] : TextStringBuilder | provenance | MaD:586 | +| TextStringBuilderTest.java:67:99:67:102 | sb38 : TextStringBuilder | TextStringBuilderTest.java:67:99:67:113 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:69:64:69:68 | auxsb [post update] : TextStringBuilder | TextStringBuilderTest.java:70:63:70:67 | auxsb : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:69:79:69:85 | taint(...) : String | TextStringBuilderTest.java:69:64:69:68 | auxsb [post update] : TextStringBuilder | provenance | MaD:603 | -| TextStringBuilderTest.java:70:63:70:67 | auxsb : TextStringBuilder | TextStringBuilderTest.java:70:78:70:81 | sb39 [post update] : TextStringBuilder | provenance | MaD:594 | +| TextStringBuilderTest.java:69:79:69:85 | taint(...) : String | TextStringBuilderTest.java:69:64:69:68 | auxsb [post update] : TextStringBuilder | provenance | MaD:597 | +| TextStringBuilderTest.java:70:63:70:67 | auxsb : TextStringBuilder | TextStringBuilderTest.java:70:78:70:81 | sb39 [post update] : TextStringBuilder | provenance | MaD:588 | | TextStringBuilderTest.java:70:78:70:81 | sb39 [post update] : TextStringBuilder | TextStringBuilderTest.java:70:90:70:93 | sb39 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:70:90:70:93 | sb39 : TextStringBuilder | TextStringBuilderTest.java:70:90:70:104 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:70:90:70:93 | sb39 : TextStringBuilder | TextStringBuilderTest.java:70:90:70:104 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:70:90:70:93 | sb39 : TextStringBuilder | TextStringBuilderTest.java:70:90:70:104 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:74:13:74:23 | taintedList [post update] : ArrayList [] : String | TextStringBuilderTest.java:75:89:75:99 | taintedList : ArrayList [] : String | provenance | | | TextStringBuilderTest.java:74:13:74:23 | taintedList [post update] : ArrayList [] : String | TextStringBuilderTest.java:76:89:76:99 | taintedList : ArrayList [] : String | provenance | | -| TextStringBuilderTest.java:74:29:74:35 | taint(...) : String | TextStringBuilderTest.java:74:13:74:23 | taintedList [post update] : ArrayList [] : String | provenance | MaD:11 | +| TextStringBuilderTest.java:74:29:74:35 | taint(...) : String | TextStringBuilderTest.java:74:13:74:23 | taintedList [post update] : ArrayList [] : String | provenance | MaD:9 | | TextStringBuilderTest.java:75:63:75:66 | sb40 [post update] : TextStringBuilder | TextStringBuilderTest.java:75:114:75:117 | sb40 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:75:89:75:99 | taintedList : ArrayList [] : String | TextStringBuilderTest.java:75:63:75:66 | sb40 [post update] : TextStringBuilder | provenance | MaD:595 | -| TextStringBuilderTest.java:75:114:75:117 | sb40 : TextStringBuilder | TextStringBuilderTest.java:75:114:75:128 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:75:114:75:117 | sb40 : TextStringBuilder | TextStringBuilderTest.java:75:114:75:128 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:75:89:75:99 | taintedList : ArrayList [] : String | TextStringBuilderTest.java:75:63:75:66 | sb40 [post update] : TextStringBuilder | provenance | MaD:589 | +| TextStringBuilderTest.java:75:114:75:117 | sb40 : TextStringBuilder | TextStringBuilderTest.java:75:114:75:128 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:76:63:76:66 | sb41 [post update] : TextStringBuilder | TextStringBuilderTest.java:76:125:76:128 | sb41 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:76:89:76:99 | taintedList : ArrayList [] : String | TextStringBuilderTest.java:76:89:76:110 | iterator(...) : Iterator [] : String | provenance | MaD:6 | -| TextStringBuilderTest.java:76:89:76:110 | iterator(...) : Iterator [] : String | TextStringBuilderTest.java:76:63:76:66 | sb41 [post update] : TextStringBuilder | provenance | MaD:596 | -| TextStringBuilderTest.java:76:125:76:128 | sb41 : TextStringBuilder | TextStringBuilderTest.java:76:125:76:139 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:76:125:76:128 | sb41 : TextStringBuilder | TextStringBuilderTest.java:76:125:76:139 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:76:89:76:99 | taintedList : ArrayList [] : String | TextStringBuilderTest.java:76:89:76:110 | iterator(...) : Iterator [] : String | provenance | MaD:4 | +| TextStringBuilderTest.java:76:89:76:110 | iterator(...) : Iterator [] : String | TextStringBuilderTest.java:76:63:76:66 | sb41 [post update] : TextStringBuilder | provenance | MaD:590 | +| TextStringBuilderTest.java:76:125:76:128 | sb41 : TextStringBuilder | TextStringBuilderTest.java:76:125:76:139 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:78:63:78:66 | sb42 [post update] : TextStringBuilder | TextStringBuilderTest.java:78:119:78:122 | sb42 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:78:104:78:110 | taint(...) : String | TextStringBuilderTest.java:78:63:78:66 | sb42 [post update] : TextStringBuilder | provenance | MaD:598 | -| TextStringBuilderTest.java:78:119:78:122 | sb42 : TextStringBuilder | TextStringBuilderTest.java:78:119:78:133 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:78:119:78:122 | sb42 : TextStringBuilder | TextStringBuilderTest.java:78:119:78:133 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:78:104:78:110 | taint(...) : String | TextStringBuilderTest.java:78:63:78:66 | sb42 [post update] : TextStringBuilder | provenance | MaD:592 | +| TextStringBuilderTest.java:78:119:78:122 | sb42 : TextStringBuilder | TextStringBuilderTest.java:78:119:78:133 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:79:63:79:66 | sb43 [post update] : TextStringBuilder | TextStringBuilderTest.java:79:130:79:133 | sb43 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:79:115:79:121 | taint(...) : String | TextStringBuilderTest.java:79:63:79:66 | sb43 [post update] : TextStringBuilder | provenance | MaD:598 | -| TextStringBuilderTest.java:79:130:79:133 | sb43 : TextStringBuilder | TextStringBuilderTest.java:79:130:79:144 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:79:130:79:133 | sb43 : TextStringBuilder | TextStringBuilderTest.java:79:130:79:144 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:79:115:79:121 | taint(...) : String | TextStringBuilderTest.java:79:63:79:66 | sb43 [post update] : TextStringBuilder | provenance | MaD:592 | +| TextStringBuilderTest.java:79:130:79:133 | sb43 : TextStringBuilder | TextStringBuilderTest.java:79:130:79:144 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:80:37:80:60 | {...} : String[] [[]] : String | TextStringBuilderTest.java:82:89:82:100 | taintedArray : String[] [[]] : String | provenance | | | TextStringBuilderTest.java:80:52:80:58 | taint(...) : String | TextStringBuilderTest.java:80:37:80:60 | {...} : String[] [[]] : String | provenance | | | TextStringBuilderTest.java:82:63:82:66 | sb44 [post update] : TextStringBuilder | TextStringBuilderTest.java:82:115:82:118 | sb44 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:82:89:82:100 | taintedArray : String[] [[]] : String | TextStringBuilderTest.java:82:63:82:66 | sb44 [post update] : TextStringBuilder | provenance | MaD:597 | -| TextStringBuilderTest.java:82:115:82:118 | sb44 : TextStringBuilder | TextStringBuilderTest.java:82:115:82:129 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:82:115:82:118 | sb44 : TextStringBuilder | TextStringBuilderTest.java:82:115:82:129 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:82:89:82:100 | taintedArray : String[] [[]] : String | TextStringBuilderTest.java:82:63:82:66 | sb44 [post update] : TextStringBuilder | provenance | MaD:591 | +| TextStringBuilderTest.java:82:115:82:118 | sb44 : TextStringBuilder | TextStringBuilderTest.java:82:115:82:129 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:83:63:83:66 | sb45 [post update] : TextStringBuilder | TextStringBuilderTest.java:83:120:83:123 | sb45 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:83:105:83:111 | taint(...) : String | TextStringBuilderTest.java:83:63:83:66 | sb45 [post update] : TextStringBuilder | provenance | MaD:598 | -| TextStringBuilderTest.java:83:120:83:123 | sb45 : TextStringBuilder | TextStringBuilderTest.java:83:120:83:134 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:83:120:83:123 | sb45 : TextStringBuilder | TextStringBuilderTest.java:83:120:83:134 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:83:105:83:111 | taint(...) : String | TextStringBuilderTest.java:83:63:83:66 | sb45 [post update] : TextStringBuilder | provenance | MaD:592 | +| TextStringBuilderTest.java:83:120:83:123 | sb45 : TextStringBuilder | TextStringBuilderTest.java:83:120:83:134 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:86:63:86:66 | sb46 [post update] : TextStringBuilder | TextStringBuilderTest.java:88:13:88:16 | sb46 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:86:75:86:81 | taint(...) : String | TextStringBuilderTest.java:86:63:86:66 | sb46 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:88:13:88:16 | sb46 : TextStringBuilder | TextStringBuilderTest.java:88:13:88:27 | asReader(...) : Reader | provenance | MaD:613 | +| TextStringBuilderTest.java:86:75:86:81 | taint(...) : String | TextStringBuilderTest.java:86:63:86:66 | sb46 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:88:13:88:16 | sb46 : TextStringBuilder | TextStringBuilderTest.java:88:13:88:27 | asReader(...) : Reader | provenance | MaD:607 | | TextStringBuilderTest.java:88:13:88:27 | asReader(...) : Reader | TextStringBuilderTest.java:88:34:88:39 | target [post update] : char[] | provenance | MaD:1 | | TextStringBuilderTest.java:88:34:88:39 | target [post update] : char[] | TextStringBuilderTest.java:89:18:89:23 | target | provenance | | | TextStringBuilderTest.java:91:59:91:62 | sb47 [post update] : TextStringBuilder | TextStringBuilderTest.java:91:86:91:89 | sb47 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:91:71:91:77 | taint(...) : String | TextStringBuilderTest.java:91:59:91:62 | sb47 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:91:86:91:89 | sb47 : TextStringBuilder | TextStringBuilderTest.java:91:86:91:103 | asTokenizer(...) : StringTokenizer | provenance | MaD:614 | -| TextStringBuilderTest.java:91:86:91:103 | asTokenizer(...) : StringTokenizer | TextStringBuilderTest.java:91:86:91:110 | next(...) | provenance | MaD:13 | -| TextStringBuilderTest.java:91:86:91:103 | asTokenizer(...) : StringTokenizer | TextStringBuilderTest.java:91:86:91:110 | next(...) | provenance | MaD:554 | +| TextStringBuilderTest.java:91:71:91:77 | taint(...) : String | TextStringBuilderTest.java:91:59:91:62 | sb47 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:91:86:91:89 | sb47 : TextStringBuilder | TextStringBuilderTest.java:91:86:91:103 | asTokenizer(...) : StringTokenizer | provenance | MaD:608 | +| TextStringBuilderTest.java:91:86:91:103 | asTokenizer(...) : StringTokenizer | TextStringBuilderTest.java:91:86:91:110 | next(...) | provenance | MaD:548 | | TextStringBuilderTest.java:92:59:92:62 | sb48 [post update] : TextStringBuilder | TextStringBuilderTest.java:92:86:92:89 | sb48 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:92:71:92:77 | taint(...) : String | TextStringBuilderTest.java:92:59:92:62 | sb48 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:92:86:92:89 | sb48 : TextStringBuilder | TextStringBuilderTest.java:92:86:92:97 | build(...) | provenance | MaD:615 | +| TextStringBuilderTest.java:92:71:92:77 | taint(...) : String | TextStringBuilderTest.java:92:59:92:62 | sb48 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:92:86:92:89 | sb48 : TextStringBuilder | TextStringBuilderTest.java:92:86:92:97 | build(...) | provenance | MaD:609 | | TextStringBuilderTest.java:93:59:93:62 | sb49 [post update] : TextStringBuilder | TextStringBuilderTest.java:93:86:93:89 | sb49 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:93:71:93:77 | taint(...) : String | TextStringBuilderTest.java:93:59:93:62 | sb49 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:93:86:93:89 | sb49 : TextStringBuilder | TextStringBuilderTest.java:93:86:93:104 | getChars(...) | provenance | MaD:622 | +| TextStringBuilderTest.java:93:71:93:77 | taint(...) : String | TextStringBuilderTest.java:93:59:93:62 | sb49 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:93:86:93:89 | sb49 : TextStringBuilder | TextStringBuilderTest.java:93:86:93:104 | getChars(...) | provenance | MaD:616 | | TextStringBuilderTest.java:95:63:95:66 | sb50 [post update] : TextStringBuilder | TextStringBuilderTest.java:97:13:97:16 | sb50 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:95:75:95:81 | taint(...) : String | TextStringBuilderTest.java:95:63:95:66 | sb50 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:97:13:97:16 | sb50 : TextStringBuilder | TextStringBuilderTest.java:97:27:97:32 | target [post update] : char[] | provenance | MaD:621 | +| TextStringBuilderTest.java:95:75:95:81 | taint(...) : String | TextStringBuilderTest.java:95:63:95:66 | sb50 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:97:13:97:16 | sb50 : TextStringBuilder | TextStringBuilderTest.java:97:27:97:32 | target [post update] : char[] | provenance | MaD:615 | | TextStringBuilderTest.java:97:27:97:32 | target [post update] : char[] | TextStringBuilderTest.java:98:18:98:23 | target | provenance | | | TextStringBuilderTest.java:101:63:101:66 | sb51 [post update] : TextStringBuilder | TextStringBuilderTest.java:103:13:103:16 | sb51 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:101:75:101:81 | taint(...) : String | TextStringBuilderTest.java:101:63:101:66 | sb51 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:103:13:103:16 | sb51 : TextStringBuilder | TextStringBuilderTest.java:103:33:103:38 | target [post update] : char[] | provenance | MaD:623 | +| TextStringBuilderTest.java:101:75:101:81 | taint(...) : String | TextStringBuilderTest.java:101:63:101:66 | sb51 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:103:13:103:16 | sb51 : TextStringBuilder | TextStringBuilderTest.java:103:33:103:38 | target [post update] : char[] | provenance | MaD:617 | | TextStringBuilderTest.java:103:33:103:38 | target [post update] : char[] | TextStringBuilderTest.java:104:18:104:23 | target | provenance | | | TextStringBuilderTest.java:106:59:106:62 | sb52 [post update] : TextStringBuilder | TextStringBuilderTest.java:106:103:106:106 | sb52 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:106:74:106:80 | taint(...) : String | TextStringBuilderTest.java:106:74:106:94 | toCharArray(...) : char[] | provenance | MaD:7 | -| TextStringBuilderTest.java:106:74:106:94 | toCharArray(...) : char[] | TextStringBuilderTest.java:106:59:106:62 | sb52 [post update] : TextStringBuilder | provenance | MaD:624 | -| TextStringBuilderTest.java:106:103:106:106 | sb52 : TextStringBuilder | TextStringBuilderTest.java:106:103:106:117 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:106:103:106:106 | sb52 : TextStringBuilder | TextStringBuilderTest.java:106:103:106:117 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:106:74:106:80 | taint(...) : String | TextStringBuilderTest.java:106:74:106:94 | toCharArray(...) : char[] | provenance | MaD:5 | +| TextStringBuilderTest.java:106:74:106:94 | toCharArray(...) : char[] | TextStringBuilderTest.java:106:59:106:62 | sb52 [post update] : TextStringBuilder | provenance | MaD:618 | +| TextStringBuilderTest.java:106:103:106:106 | sb52 : TextStringBuilder | TextStringBuilderTest.java:106:103:106:117 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:107:59:107:62 | sb53 [post update] : TextStringBuilder | TextStringBuilderTest.java:107:109:107:112 | sb53 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:107:74:107:80 | taint(...) : String | TextStringBuilderTest.java:107:74:107:94 | toCharArray(...) : char[] | provenance | MaD:7 | -| TextStringBuilderTest.java:107:74:107:94 | toCharArray(...) : char[] | TextStringBuilderTest.java:107:59:107:62 | sb53 [post update] : TextStringBuilder | provenance | MaD:624 | -| TextStringBuilderTest.java:107:109:107:112 | sb53 : TextStringBuilder | TextStringBuilderTest.java:107:109:107:123 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:107:109:107:112 | sb53 : TextStringBuilder | TextStringBuilderTest.java:107:109:107:123 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:107:74:107:80 | taint(...) : String | TextStringBuilderTest.java:107:74:107:94 | toCharArray(...) : char[] | provenance | MaD:5 | +| TextStringBuilderTest.java:107:74:107:94 | toCharArray(...) : char[] | TextStringBuilderTest.java:107:59:107:62 | sb53 [post update] : TextStringBuilder | provenance | MaD:618 | +| TextStringBuilderTest.java:107:109:107:112 | sb53 : TextStringBuilder | TextStringBuilderTest.java:107:109:107:123 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:108:59:108:62 | sb54 [post update] : TextStringBuilder | TextStringBuilderTest.java:108:89:108:92 | sb54 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:108:74:108:80 | taint(...) : String | TextStringBuilderTest.java:108:59:108:62 | sb54 [post update] : TextStringBuilder | provenance | MaD:624 | -| TextStringBuilderTest.java:108:89:108:92 | sb54 : TextStringBuilder | TextStringBuilderTest.java:108:89:108:103 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:108:89:108:92 | sb54 : TextStringBuilder | TextStringBuilderTest.java:108:89:108:103 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:108:74:108:80 | taint(...) : String | TextStringBuilderTest.java:108:59:108:62 | sb54 [post update] : TextStringBuilder | provenance | MaD:618 | +| TextStringBuilderTest.java:108:89:108:92 | sb54 : TextStringBuilder | TextStringBuilderTest.java:108:89:108:103 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:109:59:109:62 | sb55 [post update] : TextStringBuilder | TextStringBuilderTest.java:109:97:109:100 | sb55 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:109:74:109:88 | (...)... : String | TextStringBuilderTest.java:109:59:109:62 | sb55 [post update] : TextStringBuilder | provenance | MaD:624 | +| TextStringBuilderTest.java:109:74:109:88 | (...)... : String | TextStringBuilderTest.java:109:59:109:62 | sb55 [post update] : TextStringBuilder | provenance | MaD:618 | | TextStringBuilderTest.java:109:82:109:88 | taint(...) : String | TextStringBuilderTest.java:109:74:109:88 | (...)... : String | provenance | | -| TextStringBuilderTest.java:109:97:109:100 | sb55 : TextStringBuilder | TextStringBuilderTest.java:109:97:109:111 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:109:97:109:100 | sb55 : TextStringBuilder | TextStringBuilderTest.java:109:97:109:111 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:109:97:109:100 | sb55 : TextStringBuilder | TextStringBuilderTest.java:109:97:109:111 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:110:59:110:62 | sb56 [post update] : TextStringBuilder | TextStringBuilderTest.java:110:86:110:89 | sb56 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:110:71:110:77 | taint(...) : String | TextStringBuilderTest.java:110:59:110:62 | sb56 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:110:86:110:89 | sb56 : TextStringBuilder | TextStringBuilderTest.java:110:86:110:103 | leftString(...) | provenance | MaD:626 | +| TextStringBuilderTest.java:110:71:110:77 | taint(...) : String | TextStringBuilderTest.java:110:59:110:62 | sb56 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:110:86:110:89 | sb56 : TextStringBuilder | TextStringBuilderTest.java:110:86:110:103 | leftString(...) | provenance | MaD:620 | | TextStringBuilderTest.java:111:59:111:62 | sb57 [post update] : TextStringBuilder | TextStringBuilderTest.java:111:86:111:89 | sb57 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:111:71:111:77 | taint(...) : String | TextStringBuilderTest.java:111:59:111:62 | sb57 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:111:86:111:89 | sb57 : TextStringBuilder | TextStringBuilderTest.java:111:86:111:105 | midString(...) | provenance | MaD:627 | +| TextStringBuilderTest.java:111:71:111:77 | taint(...) : String | TextStringBuilderTest.java:111:59:111:62 | sb57 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:111:86:111:89 | sb57 : TextStringBuilder | TextStringBuilderTest.java:111:86:111:105 | midString(...) | provenance | MaD:621 | | TextStringBuilderTest.java:113:35:113:59 | new StringReader(...) : StringReader | TextStringBuilderTest.java:114:77:114:82 | reader : StringReader | provenance | | | TextStringBuilderTest.java:113:52:113:58 | taint(...) : String | TextStringBuilderTest.java:113:35:113:59 | new StringReader(...) : StringReader | provenance | MaD:2 | | TextStringBuilderTest.java:114:63:114:66 | sb58 [post update] : TextStringBuilder | TextStringBuilderTest.java:114:91:114:94 | sb58 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:114:77:114:82 | reader : StringReader | TextStringBuilderTest.java:114:63:114:66 | sb58 [post update] : TextStringBuilder | provenance | MaD:629 | -| TextStringBuilderTest.java:114:91:114:94 | sb58 : TextStringBuilder | TextStringBuilderTest.java:114:91:114:105 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:114:91:114:94 | sb58 : TextStringBuilder | TextStringBuilderTest.java:114:91:114:105 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:114:77:114:82 | reader : StringReader | TextStringBuilderTest.java:114:63:114:66 | sb58 [post update] : TextStringBuilder | provenance | MaD:623 | +| TextStringBuilderTest.java:114:91:114:94 | sb58 : TextStringBuilder | TextStringBuilderTest.java:114:91:114:105 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:116:59:116:62 | sb59 [post update] : TextStringBuilder | TextStringBuilderTest.java:116:93:116:96 | sb59 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:116:78:116:84 | taint(...) : String | TextStringBuilderTest.java:116:59:116:62 | sb59 [post update] : TextStringBuilder | provenance | MaD:630 | -| TextStringBuilderTest.java:116:93:116:96 | sb59 : TextStringBuilder | TextStringBuilderTest.java:116:93:116:107 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:116:93:116:96 | sb59 : TextStringBuilder | TextStringBuilderTest.java:116:93:116:107 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:116:78:116:84 | taint(...) : String | TextStringBuilderTest.java:116:59:116:62 | sb59 [post update] : TextStringBuilder | provenance | MaD:624 | +| TextStringBuilderTest.java:116:93:116:96 | sb59 : TextStringBuilder | TextStringBuilderTest.java:116:93:116:107 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:117:59:117:62 | sb60 [post update] : TextStringBuilder | TextStringBuilderTest.java:117:102:117:105 | sb60 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:117:78:117:84 | taint(...) : String | TextStringBuilderTest.java:117:59:117:62 | sb60 [post update] : TextStringBuilder | provenance | MaD:631 | -| TextStringBuilderTest.java:117:102:117:105 | sb60 : TextStringBuilder | TextStringBuilderTest.java:117:102:117:116 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:117:102:117:105 | sb60 : TextStringBuilder | TextStringBuilderTest.java:117:102:117:116 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:117:78:117:84 | taint(...) : String | TextStringBuilderTest.java:117:59:117:62 | sb60 [post update] : TextStringBuilder | provenance | MaD:625 | +| TextStringBuilderTest.java:117:102:117:105 | sb60 : TextStringBuilder | TextStringBuilderTest.java:117:102:117:116 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:118:59:118:62 | sb61 [post update] : TextStringBuilder | TextStringBuilderTest.java:118:111:118:114 | sb61 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:118:96:118:102 | taint(...) : String | TextStringBuilderTest.java:118:59:118:62 | sb61 [post update] : TextStringBuilder | provenance | MaD:633 | -| TextStringBuilderTest.java:118:111:118:114 | sb61 : TextStringBuilder | TextStringBuilderTest.java:118:111:118:125 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:118:111:118:114 | sb61 : TextStringBuilder | TextStringBuilderTest.java:118:111:118:125 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:118:96:118:102 | taint(...) : String | TextStringBuilderTest.java:118:59:118:62 | sb61 [post update] : TextStringBuilder | provenance | MaD:627 | +| TextStringBuilderTest.java:118:111:118:114 | sb61 : TextStringBuilder | TextStringBuilderTest.java:118:111:118:125 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:119:59:119:62 | sb62 [post update] : TextStringBuilder | TextStringBuilderTest.java:119:100:119:103 | sb62 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:119:85:119:91 | taint(...) : String | TextStringBuilderTest.java:119:59:119:62 | sb62 [post update] : TextStringBuilder | provenance | MaD:633 | -| TextStringBuilderTest.java:119:100:119:103 | sb62 : TextStringBuilder | TextStringBuilderTest.java:119:100:119:114 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:119:100:119:103 | sb62 : TextStringBuilder | TextStringBuilderTest.java:119:100:119:114 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:119:85:119:91 | taint(...) : String | TextStringBuilderTest.java:119:59:119:62 | sb62 [post update] : TextStringBuilder | provenance | MaD:627 | +| TextStringBuilderTest.java:119:100:119:103 | sb62 : TextStringBuilder | TextStringBuilderTest.java:119:100:119:114 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:121:59:121:62 | sb64 [post update] : TextStringBuilder | TextStringBuilderTest.java:121:113:121:116 | sb64 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:121:98:121:104 | taint(...) : String | TextStringBuilderTest.java:121:59:121:62 | sb64 [post update] : TextStringBuilder | provenance | MaD:635 | -| TextStringBuilderTest.java:121:113:121:116 | sb64 : TextStringBuilder | TextStringBuilderTest.java:121:113:121:127 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:121:113:121:116 | sb64 : TextStringBuilder | TextStringBuilderTest.java:121:113:121:127 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:121:98:121:104 | taint(...) : String | TextStringBuilderTest.java:121:59:121:62 | sb64 [post update] : TextStringBuilder | provenance | MaD:629 | +| TextStringBuilderTest.java:121:113:121:116 | sb64 : TextStringBuilder | TextStringBuilderTest.java:121:113:121:127 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:122:59:122:62 | sb65 [post update] : TextStringBuilder | TextStringBuilderTest.java:122:102:122:105 | sb65 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:122:87:122:93 | taint(...) : String | TextStringBuilderTest.java:122:59:122:62 | sb65 [post update] : TextStringBuilder | provenance | MaD:635 | -| TextStringBuilderTest.java:122:102:122:105 | sb65 : TextStringBuilder | TextStringBuilderTest.java:122:102:122:116 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:122:102:122:105 | sb65 : TextStringBuilder | TextStringBuilderTest.java:122:102:122:116 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:122:87:122:93 | taint(...) : String | TextStringBuilderTest.java:122:59:122:62 | sb65 [post update] : TextStringBuilder | provenance | MaD:629 | +| TextStringBuilderTest.java:122:102:122:105 | sb65 : TextStringBuilder | TextStringBuilderTest.java:122:102:122:116 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:124:59:124:62 | sb67 [post update] : TextStringBuilder | TextStringBuilderTest.java:124:86:124:89 | sb67 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:124:71:124:77 | taint(...) : String | TextStringBuilderTest.java:124:59:124:62 | sb67 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:124:86:124:89 | sb67 : TextStringBuilder | TextStringBuilderTest.java:124:86:124:104 | rightString(...) | provenance | MaD:638 | +| TextStringBuilderTest.java:124:71:124:77 | taint(...) : String | TextStringBuilderTest.java:124:59:124:62 | sb67 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:124:86:124:89 | sb67 : TextStringBuilder | TextStringBuilderTest.java:124:86:124:104 | rightString(...) | provenance | MaD:632 | | TextStringBuilderTest.java:125:59:125:62 | sb68 [post update] : TextStringBuilder | TextStringBuilderTest.java:125:86:125:89 | sb68 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:125:71:125:77 | taint(...) : String | TextStringBuilderTest.java:125:59:125:62 | sb68 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:125:86:125:89 | sb68 : TextStringBuilder | TextStringBuilderTest.java:125:86:125:107 | subSequence(...) | provenance | MaD:4 | -| TextStringBuilderTest.java:125:86:125:89 | sb68 : TextStringBuilder | TextStringBuilderTest.java:125:86:125:107 | subSequence(...) | provenance | MaD:643 | +| TextStringBuilderTest.java:125:71:125:77 | taint(...) : String | TextStringBuilderTest.java:125:59:125:62 | sb68 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:125:86:125:89 | sb68 : TextStringBuilder | TextStringBuilderTest.java:125:86:125:107 | subSequence(...) | provenance | MaD:637 | | TextStringBuilderTest.java:126:59:126:62 | sb69 [post update] : TextStringBuilder | TextStringBuilderTest.java:126:86:126:89 | sb69 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:126:71:126:77 | taint(...) : String | TextStringBuilderTest.java:126:59:126:62 | sb69 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:126:86:126:89 | sb69 : TextStringBuilder | TextStringBuilderTest.java:126:86:126:102 | substring(...) | provenance | MaD:644 | +| TextStringBuilderTest.java:126:71:126:77 | taint(...) : String | TextStringBuilderTest.java:126:59:126:62 | sb69 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:126:86:126:89 | sb69 : TextStringBuilder | TextStringBuilderTest.java:126:86:126:102 | substring(...) | provenance | MaD:638 | | TextStringBuilderTest.java:127:59:127:62 | sb70 [post update] : TextStringBuilder | TextStringBuilderTest.java:127:86:127:89 | sb70 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:127:71:127:77 | taint(...) : String | TextStringBuilderTest.java:127:59:127:62 | sb70 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:127:86:127:89 | sb70 : TextStringBuilder | TextStringBuilderTest.java:127:86:127:105 | substring(...) | provenance | MaD:644 | +| TextStringBuilderTest.java:127:71:127:77 | taint(...) : String | TextStringBuilderTest.java:127:59:127:62 | sb70 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:127:86:127:89 | sb70 : TextStringBuilder | TextStringBuilderTest.java:127:86:127:105 | substring(...) | provenance | MaD:638 | | TextStringBuilderTest.java:128:59:128:62 | sb71 [post update] : TextStringBuilder | TextStringBuilderTest.java:128:86:128:89 | sb71 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:128:71:128:77 | taint(...) : String | TextStringBuilderTest.java:128:59:128:62 | sb71 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:128:86:128:89 | sb71 : TextStringBuilder | TextStringBuilderTest.java:128:86:128:103 | toCharArray(...) | provenance | MaD:645 | +| TextStringBuilderTest.java:128:71:128:77 | taint(...) : String | TextStringBuilderTest.java:128:59:128:62 | sb71 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:128:86:128:89 | sb71 : TextStringBuilder | TextStringBuilderTest.java:128:86:128:103 | toCharArray(...) | provenance | MaD:639 | | TextStringBuilderTest.java:129:59:129:62 | sb72 [post update] : TextStringBuilder | TextStringBuilderTest.java:129:86:129:89 | sb72 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:129:71:129:77 | taint(...) : String | TextStringBuilderTest.java:129:59:129:62 | sb72 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:129:86:129:89 | sb72 : TextStringBuilder | TextStringBuilderTest.java:129:86:129:107 | toCharArray(...) | provenance | MaD:645 | +| TextStringBuilderTest.java:129:71:129:77 | taint(...) : String | TextStringBuilderTest.java:129:59:129:62 | sb72 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:129:86:129:89 | sb72 : TextStringBuilder | TextStringBuilderTest.java:129:86:129:107 | toCharArray(...) | provenance | MaD:639 | | TextStringBuilderTest.java:130:59:130:62 | sb73 [post update] : TextStringBuilder | TextStringBuilderTest.java:130:86:130:89 | sb73 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:130:71:130:77 | taint(...) : String | TextStringBuilderTest.java:130:59:130:62 | sb73 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:130:86:130:89 | sb73 : TextStringBuilder | TextStringBuilderTest.java:130:86:130:106 | toStringBuffer(...) | provenance | MaD:647 | +| TextStringBuilderTest.java:130:71:130:77 | taint(...) : String | TextStringBuilderTest.java:130:59:130:62 | sb73 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:130:86:130:89 | sb73 : TextStringBuilder | TextStringBuilderTest.java:130:86:130:106 | toStringBuffer(...) | provenance | MaD:641 | | TextStringBuilderTest.java:131:59:131:62 | sb74 [post update] : TextStringBuilder | TextStringBuilderTest.java:131:86:131:89 | sb74 : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:131:71:131:77 | taint(...) : String | TextStringBuilderTest.java:131:59:131:62 | sb74 [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:131:86:131:89 | sb74 : TextStringBuilder | TextStringBuilderTest.java:131:86:131:107 | toStringBuilder(...) | provenance | MaD:648 | -| TextStringBuilderTest.java:136:14:136:58 | append(...) : TextStringBuilder | TextStringBuilderTest.java:136:14:136:82 | append(...) : TextStringBuilder | provenance | MaD:578 | -| TextStringBuilderTest.java:136:14:136:82 | append(...) : TextStringBuilder | TextStringBuilderTest.java:136:14:136:93 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:136:14:136:82 | append(...) : TextStringBuilder | TextStringBuilderTest.java:136:14:136:93 | toString(...) | provenance | MaD:646 | -| TextStringBuilderTest.java:136:51:136:57 | taint(...) : String | TextStringBuilderTest.java:136:14:136:58 | append(...) : TextStringBuilder | provenance | MaD:567+MaD:578 | -| TextStringBuilderTest.java:139:9:139:45 | append(...) [post update] : TextStringBuilder | TextStringBuilderTest.java:140:14:140:31 | fluentBackflowTest : TextStringBuilder | provenance | MaD:578 | -| TextStringBuilderTest.java:139:54:139:60 | taint(...) : String | TextStringBuilderTest.java:139:9:139:45 | append(...) [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:140:14:140:31 | fluentBackflowTest : TextStringBuilder | TextStringBuilderTest.java:140:14:140:42 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:140:14:140:31 | fluentBackflowTest : TextStringBuilder | TextStringBuilderTest.java:140:14:140:42 | toString(...) | provenance | MaD:646 | -| TextStringBuilderTest.java:144:9:144:46 | append(...) [post update] : TextStringBuilder | TextStringBuilderTest.java:145:14:145:32 | fluentBackflowTest2 : TextStringBuilder | provenance | MaD:578 | -| TextStringBuilderTest.java:144:55:144:61 | taint(...) : String | TextStringBuilderTest.java:144:9:144:46 | append(...) [post update] : TextStringBuilder | provenance | MaD:567 | -| TextStringBuilderTest.java:145:14:145:32 | fluentBackflowTest2 : TextStringBuilder | TextStringBuilderTest.java:145:14:145:43 | toString(...) | provenance | MaD:5 | -| TextStringBuilderTest.java:145:14:145:32 | fluentBackflowTest2 : TextStringBuilder | TextStringBuilderTest.java:145:14:145:43 | toString(...) | provenance | MaD:646 | +| TextStringBuilderTest.java:131:71:131:77 | taint(...) : String | TextStringBuilderTest.java:131:59:131:62 | sb74 [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:131:86:131:89 | sb74 : TextStringBuilder | TextStringBuilderTest.java:131:86:131:107 | toStringBuilder(...) | provenance | MaD:642 | +| TextStringBuilderTest.java:136:14:136:58 | append(...) : TextStringBuilder | TextStringBuilderTest.java:136:14:136:82 | append(...) : TextStringBuilder | provenance | MaD:572 | +| TextStringBuilderTest.java:136:14:136:82 | append(...) : TextStringBuilder | TextStringBuilderTest.java:136:14:136:93 | toString(...) | provenance | MaD:640 | +| TextStringBuilderTest.java:136:51:136:57 | taint(...) : String | TextStringBuilderTest.java:136:14:136:58 | append(...) : TextStringBuilder | provenance | MaD:561+MaD:572 | +| TextStringBuilderTest.java:139:9:139:45 | append(...) [post update] : TextStringBuilder | TextStringBuilderTest.java:140:14:140:31 | fluentBackflowTest : TextStringBuilder | provenance | MaD:572 | +| TextStringBuilderTest.java:139:54:139:60 | taint(...) : String | TextStringBuilderTest.java:139:9:139:45 | append(...) [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:140:14:140:31 | fluentBackflowTest : TextStringBuilder | TextStringBuilderTest.java:140:14:140:42 | toString(...) | provenance | MaD:640 | +| TextStringBuilderTest.java:144:9:144:46 | append(...) [post update] : TextStringBuilder | TextStringBuilderTest.java:145:14:145:32 | fluentBackflowTest2 : TextStringBuilder | provenance | MaD:572 | +| TextStringBuilderTest.java:144:55:144:61 | taint(...) : String | TextStringBuilderTest.java:144:9:144:46 | append(...) [post update] : TextStringBuilder | provenance | MaD:561 | +| TextStringBuilderTest.java:145:14:145:32 | fluentBackflowTest2 : TextStringBuilder | TextStringBuilderTest.java:145:14:145:43 | toString(...) | provenance | MaD:640 | | TextStringBuilderTest.java:148:50:148:79 | new TextStringBuilder(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:149:33 | fluentAllMethodsTest : TextStringBuilder | provenance | | -| TextStringBuilderTest.java:148:72:148:78 | taint(...) : String | TextStringBuilderTest.java:148:50:148:79 | new TextStringBuilder(...) : TextStringBuilder | provenance | MaD:561 | -| TextStringBuilderTest.java:149:14:149:33 | fluentAllMethodsTest : TextStringBuilder | TextStringBuilderTest.java:149:14:150:23 | append(...) : TextStringBuilder | provenance | MaD:578 | -| TextStringBuilderTest.java:149:14:150:23 | append(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:151:26 | appendAll(...) : TextStringBuilder | provenance | MaD:582 | -| TextStringBuilderTest.java:149:14:151:26 | appendAll(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:152:48 | appendFixedWidthPadLeft(...) : TextStringBuilder | provenance | MaD:584 | -| TextStringBuilderTest.java:149:14:152:48 | appendFixedWidthPadLeft(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:153:49 | appendFixedWidthPadRight(...) : TextStringBuilder | provenance | MaD:586 | -| TextStringBuilderTest.java:149:14:153:49 | appendFixedWidthPadRight(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:154:25 | appendln(...) : TextStringBuilder | provenance | MaD:612 | -| TextStringBuilderTest.java:149:14:154:25 | appendln(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:155:24 | appendNewLine(...) : TextStringBuilder | provenance | MaD:587 | -| TextStringBuilderTest.java:149:14:155:24 | appendNewLine(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:156:21 | appendNull(...) : TextStringBuilder | provenance | MaD:588 | -| TextStringBuilderTest.java:149:14:156:21 | appendNull(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:157:30 | appendPadding(...) : TextStringBuilder | provenance | MaD:589 | -| TextStringBuilderTest.java:149:14:157:30 | appendPadding(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:158:29 | appendSeparator(...) : TextStringBuilder | provenance | MaD:593 | -| TextStringBuilderTest.java:149:14:158:29 | appendSeparator(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:159:52 | appendWithSeparators(...) : TextStringBuilder | provenance | MaD:599 | -| TextStringBuilderTest.java:149:14:159:52 | appendWithSeparators(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:160:21 | delete(...) : TextStringBuilder | provenance | MaD:616 | -| TextStringBuilderTest.java:149:14:160:21 | delete(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:161:23 | deleteAll(...) : TextStringBuilder | provenance | MaD:617 | -| TextStringBuilderTest.java:149:14:161:23 | deleteAll(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:162:24 | deleteCharAt(...) : TextStringBuilder | provenance | MaD:618 | -| TextStringBuilderTest.java:149:14:162:24 | deleteCharAt(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:163:29 | deleteFirst(...) : TextStringBuilder | provenance | MaD:619 | -| TextStringBuilderTest.java:149:14:163:29 | deleteFirst(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:164:28 | ensureCapacity(...) : TextStringBuilder | provenance | MaD:620 | -| TextStringBuilderTest.java:149:14:164:28 | ensureCapacity(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:165:30 | insert(...) : TextStringBuilder | provenance | MaD:625 | -| TextStringBuilderTest.java:149:14:165:30 | insert(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:166:27 | minimizeCapacity(...) : TextStringBuilder | provenance | MaD:628 | -| TextStringBuilderTest.java:149:14:166:27 | minimizeCapacity(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:167:37 | replace(...) : TextStringBuilder | provenance | MaD:632 | -| TextStringBuilderTest.java:149:14:167:37 | replace(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:168:38 | replaceAll(...) : TextStringBuilder | provenance | MaD:634 | -| TextStringBuilderTest.java:149:14:168:38 | replaceAll(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:169:40 | replaceFirst(...) : TextStringBuilder | provenance | MaD:636 | -| TextStringBuilderTest.java:149:14:169:40 | replaceFirst(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:170:18 | reverse(...) : TextStringBuilder | provenance | MaD:637 | -| TextStringBuilderTest.java:149:14:170:18 | reverse(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:171:26 | setCharAt(...) : TextStringBuilder | provenance | MaD:639 | -| TextStringBuilderTest.java:149:14:171:26 | setCharAt(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:172:23 | setLength(...) : TextStringBuilder | provenance | MaD:640 | -| TextStringBuilderTest.java:149:14:172:23 | setLength(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:173:34 | setNewLineText(...) : TextStringBuilder | provenance | MaD:641 | -| TextStringBuilderTest.java:149:14:173:34 | setNewLineText(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:174:28 | setNullText(...) : TextStringBuilder | provenance | MaD:642 | -| TextStringBuilderTest.java:149:14:174:28 | setNullText(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:175:15 | trim(...) | provenance | MaD:649 | -| TextStringBuilderTest.java:179:9:205:15 | trim(...) [post update] : TextStringBuilder | TextStringBuilderTest.java:207:14:207:34 | fluentAllMethodsTest2 | provenance | MaD:649 | -| TextStringBuilderTest.java:206:17:206:23 | taint(...) : String | TextStringBuilderTest.java:179:9:205:15 | trim(...) [post update] : TextStringBuilder | provenance | MaD:567 | +| TextStringBuilderTest.java:148:72:148:78 | taint(...) : String | TextStringBuilderTest.java:148:50:148:79 | new TextStringBuilder(...) : TextStringBuilder | provenance | MaD:555 | +| TextStringBuilderTest.java:149:14:149:33 | fluentAllMethodsTest : TextStringBuilder | TextStringBuilderTest.java:149:14:150:23 | append(...) : TextStringBuilder | provenance | MaD:572 | +| TextStringBuilderTest.java:149:14:150:23 | append(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:151:26 | appendAll(...) : TextStringBuilder | provenance | MaD:576 | +| TextStringBuilderTest.java:149:14:151:26 | appendAll(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:152:48 | appendFixedWidthPadLeft(...) : TextStringBuilder | provenance | MaD:578 | +| TextStringBuilderTest.java:149:14:152:48 | appendFixedWidthPadLeft(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:153:49 | appendFixedWidthPadRight(...) : TextStringBuilder | provenance | MaD:580 | +| TextStringBuilderTest.java:149:14:153:49 | appendFixedWidthPadRight(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:154:25 | appendln(...) : TextStringBuilder | provenance | MaD:606 | +| TextStringBuilderTest.java:149:14:154:25 | appendln(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:155:24 | appendNewLine(...) : TextStringBuilder | provenance | MaD:581 | +| TextStringBuilderTest.java:149:14:155:24 | appendNewLine(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:156:21 | appendNull(...) : TextStringBuilder | provenance | MaD:582 | +| TextStringBuilderTest.java:149:14:156:21 | appendNull(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:157:30 | appendPadding(...) : TextStringBuilder | provenance | MaD:583 | +| TextStringBuilderTest.java:149:14:157:30 | appendPadding(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:158:29 | appendSeparator(...) : TextStringBuilder | provenance | MaD:587 | +| TextStringBuilderTest.java:149:14:158:29 | appendSeparator(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:159:52 | appendWithSeparators(...) : TextStringBuilder | provenance | MaD:593 | +| TextStringBuilderTest.java:149:14:159:52 | appendWithSeparators(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:160:21 | delete(...) : TextStringBuilder | provenance | MaD:610 | +| TextStringBuilderTest.java:149:14:160:21 | delete(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:161:23 | deleteAll(...) : TextStringBuilder | provenance | MaD:611 | +| TextStringBuilderTest.java:149:14:161:23 | deleteAll(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:162:24 | deleteCharAt(...) : TextStringBuilder | provenance | MaD:612 | +| TextStringBuilderTest.java:149:14:162:24 | deleteCharAt(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:163:29 | deleteFirst(...) : TextStringBuilder | provenance | MaD:613 | +| TextStringBuilderTest.java:149:14:163:29 | deleteFirst(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:164:28 | ensureCapacity(...) : TextStringBuilder | provenance | MaD:614 | +| TextStringBuilderTest.java:149:14:164:28 | ensureCapacity(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:165:30 | insert(...) : TextStringBuilder | provenance | MaD:619 | +| TextStringBuilderTest.java:149:14:165:30 | insert(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:166:27 | minimizeCapacity(...) : TextStringBuilder | provenance | MaD:622 | +| TextStringBuilderTest.java:149:14:166:27 | minimizeCapacity(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:167:37 | replace(...) : TextStringBuilder | provenance | MaD:626 | +| TextStringBuilderTest.java:149:14:167:37 | replace(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:168:38 | replaceAll(...) : TextStringBuilder | provenance | MaD:628 | +| TextStringBuilderTest.java:149:14:168:38 | replaceAll(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:169:40 | replaceFirst(...) : TextStringBuilder | provenance | MaD:630 | +| TextStringBuilderTest.java:149:14:169:40 | replaceFirst(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:170:18 | reverse(...) : TextStringBuilder | provenance | MaD:631 | +| TextStringBuilderTest.java:149:14:170:18 | reverse(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:171:26 | setCharAt(...) : TextStringBuilder | provenance | MaD:633 | +| TextStringBuilderTest.java:149:14:171:26 | setCharAt(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:172:23 | setLength(...) : TextStringBuilder | provenance | MaD:634 | +| TextStringBuilderTest.java:149:14:172:23 | setLength(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:173:34 | setNewLineText(...) : TextStringBuilder | provenance | MaD:635 | +| TextStringBuilderTest.java:149:14:173:34 | setNewLineText(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:174:28 | setNullText(...) : TextStringBuilder | provenance | MaD:636 | +| TextStringBuilderTest.java:149:14:174:28 | setNullText(...) : TextStringBuilder | TextStringBuilderTest.java:149:14:175:15 | trim(...) | provenance | MaD:643 | +| TextStringBuilderTest.java:179:9:205:15 | trim(...) [post update] : TextStringBuilder | TextStringBuilderTest.java:207:14:207:34 | fluentAllMethodsTest2 | provenance | MaD:643 | +| TextStringBuilderTest.java:206:17:206:23 | taint(...) : String | TextStringBuilderTest.java:179:9:205:15 | trim(...) [post update] : TextStringBuilder | provenance | MaD:561 | | ToStringBuilderTest.java:10:58:10:60 | sb1 [post update] : ToStringBuilder | ToStringBuilderTest.java:10:92:10:94 | sb1 : ToStringBuilder | provenance | | -| ToStringBuilderTest.java:10:69:10:83 | (...)... : String | ToStringBuilderTest.java:10:58:10:60 | sb1 [post update] : ToStringBuilder | provenance | MaD:19 | +| ToStringBuilderTest.java:10:69:10:83 | (...)... : String | ToStringBuilderTest.java:10:58:10:60 | sb1 [post update] : ToStringBuilder | provenance | MaD:13 | | ToStringBuilderTest.java:10:77:10:83 | taint(...) : String | ToStringBuilderTest.java:10:69:10:83 | (...)... : String | provenance | | -| ToStringBuilderTest.java:10:92:10:94 | sb1 : ToStringBuilder | ToStringBuilderTest.java:10:92:10:105 | toString(...) | provenance | MaD:30 | +| ToStringBuilderTest.java:10:92:10:94 | sb1 : ToStringBuilder | ToStringBuilderTest.java:10:92:10:105 | toString(...) | provenance | MaD:24 | | ToStringBuilderTest.java:11:58:11:60 | sb2 [post update] : ToStringBuilder | ToStringBuilderTest.java:11:101:11:103 | sb2 : ToStringBuilder | provenance | | -| ToStringBuilderTest.java:11:69:11:92 | new Object[] : Object[] [[]] : String | ToStringBuilderTest.java:11:58:11:60 | sb2 [post update] : ToStringBuilder | provenance | MaD:20 | +| ToStringBuilderTest.java:11:69:11:92 | new Object[] : Object[] [[]] : String | ToStringBuilderTest.java:11:58:11:60 | sb2 [post update] : ToStringBuilder | provenance | MaD:14 | | ToStringBuilderTest.java:11:69:11:92 | {...} : Object[] [[]] : String | ToStringBuilderTest.java:11:69:11:92 | new Object[] : Object[] [[]] : String | provenance | | | ToStringBuilderTest.java:11:84:11:90 | taint(...) : String | ToStringBuilderTest.java:11:69:11:92 | {...} : Object[] [[]] : String | provenance | | -| ToStringBuilderTest.java:11:101:11:103 | sb2 : ToStringBuilder | ToStringBuilderTest.java:11:101:11:114 | toString(...) | provenance | MaD:30 | +| ToStringBuilderTest.java:11:101:11:103 | sb2 : ToStringBuilder | ToStringBuilderTest.java:11:101:11:114 | toString(...) | provenance | MaD:24 | | ToStringBuilderTest.java:12:58:12:60 | sb3 [post update] : ToStringBuilder | ToStringBuilderTest.java:12:90:12:92 | sb3 : ToStringBuilder | provenance | | -| ToStringBuilderTest.java:12:69:12:75 | taint(...) : String | ToStringBuilderTest.java:12:58:12:60 | sb3 [post update] : ToStringBuilder | provenance | MaD:21 | -| ToStringBuilderTest.java:12:90:12:92 | sb3 : ToStringBuilder | ToStringBuilderTest.java:12:90:12:103 | toString(...) | provenance | MaD:30 | +| ToStringBuilderTest.java:12:69:12:75 | taint(...) : String | ToStringBuilderTest.java:12:58:12:60 | sb3 [post update] : ToStringBuilder | provenance | MaD:15 | +| ToStringBuilderTest.java:12:90:12:92 | sb3 : ToStringBuilder | ToStringBuilderTest.java:12:90:12:103 | toString(...) | provenance | MaD:24 | | ToStringBuilderTest.java:13:58:13:60 | sb4 [post update] : ToStringBuilder | ToStringBuilderTest.java:13:97:13:99 | sb4 : ToStringBuilder | provenance | | -| ToStringBuilderTest.java:13:82:13:88 | taint(...) : String | ToStringBuilderTest.java:13:58:13:60 | sb4 [post update] : ToStringBuilder | provenance | MaD:22 | -| ToStringBuilderTest.java:13:97:13:99 | sb4 : ToStringBuilder | ToStringBuilderTest.java:13:97:13:110 | toString(...) | provenance | MaD:30 | +| ToStringBuilderTest.java:13:82:13:88 | taint(...) : String | ToStringBuilderTest.java:13:58:13:60 | sb4 [post update] : ToStringBuilder | provenance | MaD:16 | +| ToStringBuilderTest.java:13:97:13:99 | sb4 : ToStringBuilder | ToStringBuilderTest.java:13:97:13:110 | toString(...) | provenance | MaD:24 | | ToStringBuilderTest.java:14:58:14:60 | sb5 [post update] : ToStringBuilder | ToStringBuilderTest.java:14:114:14:116 | sb5 : ToStringBuilder | provenance | | -| ToStringBuilderTest.java:14:82:14:105 | new Object[] : Object[] [[]] : String | ToStringBuilderTest.java:14:58:14:60 | sb5 [post update] : ToStringBuilder | provenance | MaD:23 | +| ToStringBuilderTest.java:14:82:14:105 | new Object[] : Object[] [[]] : String | ToStringBuilderTest.java:14:58:14:60 | sb5 [post update] : ToStringBuilder | provenance | MaD:17 | | ToStringBuilderTest.java:14:82:14:105 | {...} : Object[] [[]] : String | ToStringBuilderTest.java:14:82:14:105 | new Object[] : Object[] [[]] : String | provenance | | | ToStringBuilderTest.java:14:97:14:103 | taint(...) : String | ToStringBuilderTest.java:14:82:14:105 | {...} : Object[] [[]] : String | provenance | | -| ToStringBuilderTest.java:14:114:14:116 | sb5 : ToStringBuilder | ToStringBuilderTest.java:14:114:14:127 | toString(...) | provenance | MaD:30 | +| ToStringBuilderTest.java:14:114:14:116 | sb5 : ToStringBuilder | ToStringBuilderTest.java:14:114:14:127 | toString(...) | provenance | MaD:24 | | ToStringBuilderTest.java:15:58:15:60 | sb6 [post update] : ToStringBuilder | ToStringBuilderTest.java:15:120:15:122 | sb6 : ToStringBuilder | provenance | | -| ToStringBuilderTest.java:15:82:15:105 | new Object[] : Object[] [[]] : String | ToStringBuilderTest.java:15:58:15:60 | sb6 [post update] : ToStringBuilder | provenance | MaD:24 | +| ToStringBuilderTest.java:15:82:15:105 | new Object[] : Object[] [[]] : String | ToStringBuilderTest.java:15:58:15:60 | sb6 [post update] : ToStringBuilder | provenance | MaD:18 | | ToStringBuilderTest.java:15:82:15:105 | {...} : Object[] [[]] : String | ToStringBuilderTest.java:15:82:15:105 | new Object[] : Object[] [[]] : String | provenance | | | ToStringBuilderTest.java:15:97:15:103 | taint(...) : String | ToStringBuilderTest.java:15:82:15:105 | {...} : Object[] [[]] : String | provenance | | -| ToStringBuilderTest.java:15:120:15:122 | sb6 : ToStringBuilder | ToStringBuilderTest.java:15:120:15:133 | toString(...) | provenance | MaD:30 | +| ToStringBuilderTest.java:15:120:15:122 | sb6 : ToStringBuilder | ToStringBuilderTest.java:15:120:15:133 | toString(...) | provenance | MaD:24 | | ToStringBuilderTest.java:18:58:18:60 | sb8 [post update] : ToStringBuilder | ToStringBuilderTest.java:18:89:18:91 | sb8 : ToStringBuilder | provenance | | -| ToStringBuilderTest.java:18:74:18:80 | taint(...) : String | ToStringBuilderTest.java:18:58:18:60 | sb8 [post update] : ToStringBuilder | provenance | MaD:26 | -| ToStringBuilderTest.java:18:89:18:91 | sb8 : ToStringBuilder | ToStringBuilderTest.java:18:89:18:102 | toString(...) | provenance | MaD:30 | +| ToStringBuilderTest.java:18:74:18:80 | taint(...) : String | ToStringBuilderTest.java:18:58:18:60 | sb8 [post update] : ToStringBuilder | provenance | MaD:20 | +| ToStringBuilderTest.java:18:89:18:91 | sb8 : ToStringBuilder | ToStringBuilderTest.java:18:89:18:102 | toString(...) | provenance | MaD:24 | | ToStringBuilderTest.java:19:58:19:60 | sb9 [post update] : ToStringBuilder | ToStringBuilderTest.java:19:92:19:94 | sb9 : ToStringBuilder | provenance | | -| ToStringBuilderTest.java:19:77:19:83 | taint(...) : String | ToStringBuilderTest.java:19:58:19:60 | sb9 [post update] : ToStringBuilder | provenance | MaD:27 | -| ToStringBuilderTest.java:19:92:19:94 | sb9 : ToStringBuilder | ToStringBuilderTest.java:19:92:19:105 | toString(...) | provenance | MaD:30 | +| ToStringBuilderTest.java:19:77:19:83 | taint(...) : String | ToStringBuilderTest.java:19:58:19:60 | sb9 [post update] : ToStringBuilder | provenance | MaD:21 | +| ToStringBuilderTest.java:19:92:19:94 | sb9 : ToStringBuilder | ToStringBuilderTest.java:19:92:19:105 | toString(...) | provenance | MaD:24 | | ToStringBuilderTest.java:20:59:20:62 | sb10 [post update] : ToStringBuilder | ToStringBuilderTest.java:20:94:20:97 | sb10 : ToStringBuilder | provenance | | -| ToStringBuilderTest.java:20:71:20:85 | (...)... : String | ToStringBuilderTest.java:20:59:20:62 | sb10 [post update] : ToStringBuilder | provenance | MaD:19 | +| ToStringBuilderTest.java:20:71:20:85 | (...)... : String | ToStringBuilderTest.java:20:59:20:62 | sb10 [post update] : ToStringBuilder | provenance | MaD:13 | | ToStringBuilderTest.java:20:79:20:85 | taint(...) : String | ToStringBuilderTest.java:20:71:20:85 | (...)... : String | provenance | | -| ToStringBuilderTest.java:20:94:20:97 | sb10 : ToStringBuilder | ToStringBuilderTest.java:20:94:20:105 | build(...) | provenance | MaD:28 | +| ToStringBuilderTest.java:20:94:20:97 | sb10 : ToStringBuilder | ToStringBuilderTest.java:20:94:20:105 | build(...) | provenance | MaD:22 | | ToStringBuilderTest.java:21:59:21:62 | sb11 [post update] : ToStringBuilder | ToStringBuilderTest.java:21:94:21:97 | sb11 : ToStringBuilder | provenance | | -| ToStringBuilderTest.java:21:71:21:85 | (...)... : String | ToStringBuilderTest.java:21:59:21:62 | sb11 [post update] : ToStringBuilder | provenance | MaD:19 | +| ToStringBuilderTest.java:21:71:21:85 | (...)... : String | ToStringBuilderTest.java:21:59:21:62 | sb11 [post update] : ToStringBuilder | provenance | MaD:13 | | ToStringBuilderTest.java:21:79:21:85 | taint(...) : String | ToStringBuilderTest.java:21:71:21:85 | (...)... : String | provenance | | -| ToStringBuilderTest.java:21:94:21:97 | sb11 : ToStringBuilder | ToStringBuilderTest.java:21:94:21:115 | getStringBuffer(...) : StringBuffer | provenance | MaD:29 | -| ToStringBuilderTest.java:21:94:21:115 | getStringBuffer(...) : StringBuffer | ToStringBuilderTest.java:21:94:21:126 | toString(...) | provenance | MaD:5 | -| ToStringBuilderTest.java:25:14:25:58 | append(...) : ToStringBuilder | ToStringBuilderTest.java:25:14:25:82 | append(...) : ToStringBuilder | provenance | MaD:25 | -| ToStringBuilderTest.java:25:14:25:82 | append(...) : ToStringBuilder | ToStringBuilderTest.java:25:14:25:93 | toString(...) | provenance | MaD:30 | -| ToStringBuilderTest.java:25:51:25:57 | taint(...) : String | ToStringBuilderTest.java:25:14:25:58 | append(...) : ToStringBuilder | provenance | MaD:19+MaD:25 | -| ToStringBuilderTest.java:28:9:28:45 | append(...) [post update] : ToStringBuilder | ToStringBuilderTest.java:29:14:29:31 | fluentBackflowTest : ToStringBuilder | provenance | MaD:25 | -| ToStringBuilderTest.java:28:54:28:60 | taint(...) : String | ToStringBuilderTest.java:28:9:28:45 | append(...) [post update] : ToStringBuilder | provenance | MaD:19 | -| ToStringBuilderTest.java:29:14:29:31 | fluentBackflowTest : ToStringBuilder | ToStringBuilderTest.java:29:14:29:42 | toString(...) | provenance | MaD:30 | -| ToStringBuilderTest.java:33:9:33:46 | append(...) [post update] : ToStringBuilder | ToStringBuilderTest.java:34:14:34:32 | fluentBackflowTest2 : ToStringBuilder | provenance | MaD:25 | -| ToStringBuilderTest.java:33:55:33:61 | taint(...) : String | ToStringBuilderTest.java:33:9:33:46 | append(...) [post update] : ToStringBuilder | provenance | MaD:19 | -| ToStringBuilderTest.java:34:14:34:32 | fluentBackflowTest2 : ToStringBuilder | ToStringBuilderTest.java:34:14:34:43 | toString(...) | provenance | MaD:30 | +| ToStringBuilderTest.java:21:94:21:97 | sb11 : ToStringBuilder | ToStringBuilderTest.java:21:94:21:115 | getStringBuffer(...) : StringBuffer | provenance | MaD:23 | +| ToStringBuilderTest.java:21:94:21:115 | getStringBuffer(...) : StringBuffer | ToStringBuilderTest.java:21:94:21:126 | toString(...) | provenance | MaD:3 | +| ToStringBuilderTest.java:25:14:25:58 | append(...) : ToStringBuilder | ToStringBuilderTest.java:25:14:25:82 | append(...) : ToStringBuilder | provenance | MaD:19 | +| ToStringBuilderTest.java:25:14:25:82 | append(...) : ToStringBuilder | ToStringBuilderTest.java:25:14:25:93 | toString(...) | provenance | MaD:24 | +| ToStringBuilderTest.java:25:51:25:57 | taint(...) : String | ToStringBuilderTest.java:25:14:25:58 | append(...) : ToStringBuilder | provenance | MaD:13+MaD:19 | +| ToStringBuilderTest.java:28:9:28:45 | append(...) [post update] : ToStringBuilder | ToStringBuilderTest.java:29:14:29:31 | fluentBackflowTest : ToStringBuilder | provenance | MaD:19 | +| ToStringBuilderTest.java:28:54:28:60 | taint(...) : String | ToStringBuilderTest.java:28:9:28:45 | append(...) [post update] : ToStringBuilder | provenance | MaD:13 | +| ToStringBuilderTest.java:29:14:29:31 | fluentBackflowTest : ToStringBuilder | ToStringBuilderTest.java:29:14:29:42 | toString(...) | provenance | MaD:24 | +| ToStringBuilderTest.java:33:9:33:46 | append(...) [post update] : ToStringBuilder | ToStringBuilderTest.java:34:14:34:32 | fluentBackflowTest2 : ToStringBuilder | provenance | MaD:19 | +| ToStringBuilderTest.java:33:55:33:61 | taint(...) : String | ToStringBuilderTest.java:33:9:33:46 | append(...) [post update] : ToStringBuilder | provenance | MaD:13 | +| ToStringBuilderTest.java:34:14:34:32 | fluentBackflowTest2 : ToStringBuilder | ToStringBuilderTest.java:34:14:34:43 | toString(...) | provenance | MaD:24 | | TripleTest.java:16:61:16:118 | of(...) : ImmutableTriple [left] : String | TripleTest.java:21:12:21:22 | taintedLeft : ImmutableTriple [left] : String | provenance | | | TripleTest.java:16:61:16:118 | of(...) : ImmutableTriple [left] : String | TripleTest.java:24:12:24:22 | taintedLeft : ImmutableTriple [left] : String | provenance | | | TripleTest.java:16:61:16:118 | of(...) : ImmutableTriple [left] : String | TripleTest.java:45:12:45:23 | taintedLeft2 : ImmutableTriple [left] : String | provenance | | -| TripleTest.java:16:80:16:86 | taint(...) : String | TripleTest.java:16:61:16:118 | of(...) : ImmutableTriple [left] : String | provenance | MaD:186 | +| TripleTest.java:16:80:16:86 | taint(...) : String | TripleTest.java:16:61:16:118 | of(...) : ImmutableTriple [left] : String | provenance | MaD:180 | | TripleTest.java:17:63:17:118 | of(...) : ImmutableTriple [middle] : String | TripleTest.java:28:12:28:24 | taintedMiddle : ImmutableTriple [middle] : String | provenance | | | TripleTest.java:17:63:17:118 | of(...) : ImmutableTriple [middle] : String | TripleTest.java:31:12:31:24 | taintedMiddle : ImmutableTriple [middle] : String | provenance | | | TripleTest.java:17:63:17:118 | of(...) : ImmutableTriple [middle] : String | TripleTest.java:49:12:49:25 | taintedMiddle2 : ImmutableTriple [middle] : String | provenance | | -| TripleTest.java:17:96:17:102 | taint(...) : String | TripleTest.java:17:63:17:118 | of(...) : ImmutableTriple [middle] : String | provenance | MaD:187 | +| TripleTest.java:17:96:17:102 | taint(...) : String | TripleTest.java:17:63:17:118 | of(...) : ImmutableTriple [middle] : String | provenance | MaD:181 | | TripleTest.java:18:62:18:118 | of(...) : ImmutableTriple [right] : String | TripleTest.java:35:12:35:23 | taintedRight : ImmutableTriple [right] : String | provenance | | | TripleTest.java:18:62:18:118 | of(...) : ImmutableTriple [right] : String | TripleTest.java:38:12:38:23 | taintedRight : ImmutableTriple [right] : String | provenance | | | TripleTest.java:18:62:18:118 | of(...) : ImmutableTriple [right] : String | TripleTest.java:53:12:53:24 | taintedRight2 : ImmutableTriple [right] : String | provenance | | -| TripleTest.java:18:111:18:117 | taint(...) : String | TripleTest.java:18:62:18:118 | of(...) : ImmutableTriple [right] : String | provenance | MaD:188 | -| TripleTest.java:21:12:21:22 | taintedLeft : ImmutableTriple [left] : String | TripleTest.java:21:12:21:32 | getLeft(...) | provenance | MaD:218 | +| TripleTest.java:18:111:18:117 | taint(...) : String | TripleTest.java:18:62:18:118 | of(...) : ImmutableTriple [right] : String | provenance | MaD:182 | +| TripleTest.java:21:12:21:22 | taintedLeft : ImmutableTriple [left] : String | TripleTest.java:21:12:21:32 | getLeft(...) | provenance | MaD:212 | | TripleTest.java:24:12:24:22 | taintedLeft : ImmutableTriple [left] : String | TripleTest.java:24:12:24:27 | taintedLeft.left | provenance | | -| TripleTest.java:28:12:28:24 | taintedMiddle : ImmutableTriple [middle] : String | TripleTest.java:28:12:28:36 | getMiddle(...) | provenance | MaD:220 | +| TripleTest.java:28:12:28:24 | taintedMiddle : ImmutableTriple [middle] : String | TripleTest.java:28:12:28:36 | getMiddle(...) | provenance | MaD:214 | | TripleTest.java:31:12:31:24 | taintedMiddle : ImmutableTriple [middle] : String | TripleTest.java:31:12:31:31 | taintedMiddle.middle | provenance | | -| TripleTest.java:35:12:35:23 | taintedRight : ImmutableTriple [right] : String | TripleTest.java:35:12:35:34 | getRight(...) | provenance | MaD:222 | +| TripleTest.java:35:12:35:23 | taintedRight : ImmutableTriple [right] : String | TripleTest.java:35:12:35:34 | getRight(...) | provenance | MaD:216 | | TripleTest.java:38:12:38:23 | taintedRight : ImmutableTriple [right] : String | TripleTest.java:38:12:38:29 | taintedRight.right | provenance | | -| TripleTest.java:45:12:45:23 | taintedLeft2 : ImmutableTriple [left] : String | TripleTest.java:45:12:45:33 | getLeft(...) | provenance | MaD:218 | -| TripleTest.java:49:12:49:25 | taintedMiddle2 : ImmutableTriple [middle] : String | TripleTest.java:49:12:49:37 | getMiddle(...) | provenance | MaD:220 | -| TripleTest.java:53:12:53:24 | taintedRight2 : ImmutableTriple [right] : String | TripleTest.java:53:12:53:35 | getRight(...) | provenance | MaD:222 | +| TripleTest.java:45:12:45:23 | taintedLeft2 : ImmutableTriple [left] : String | TripleTest.java:45:12:45:33 | getLeft(...) | provenance | MaD:212 | +| TripleTest.java:49:12:49:25 | taintedMiddle2 : ImmutableTriple [middle] : String | TripleTest.java:49:12:49:37 | getMiddle(...) | provenance | MaD:214 | +| TripleTest.java:53:12:53:24 | taintedRight2 : ImmutableTriple [right] : String | TripleTest.java:53:12:53:35 | getRight(...) | provenance | MaD:216 | | TripleTest.java:56:53:56:101 | of(...) : Triple [left] : String | TripleTest.java:60:12:60:23 | taintedLeft3 : Triple [left] : String | provenance | | -| TripleTest.java:56:63:56:69 | taint(...) : String | TripleTest.java:56:53:56:101 | of(...) : Triple [left] : String | provenance | MaD:215 | +| TripleTest.java:56:63:56:69 | taint(...) : String | TripleTest.java:56:53:56:101 | of(...) : Triple [left] : String | provenance | MaD:209 | | TripleTest.java:57:55:57:101 | of(...) : Triple [middle] : String | TripleTest.java:64:12:64:25 | taintedMiddle3 : Triple [middle] : String | provenance | | -| TripleTest.java:57:79:57:85 | taint(...) : String | TripleTest.java:57:55:57:101 | of(...) : Triple [middle] : String | provenance | MaD:216 | +| TripleTest.java:57:79:57:85 | taint(...) : String | TripleTest.java:57:55:57:101 | of(...) : Triple [middle] : String | provenance | MaD:210 | | TripleTest.java:58:54:58:101 | of(...) : Triple [right] : String | TripleTest.java:68:12:68:24 | taintedRight3 : Triple [right] : String | provenance | | -| TripleTest.java:58:94:58:100 | taint(...) : String | TripleTest.java:58:54:58:101 | of(...) : Triple [right] : String | provenance | MaD:217 | -| TripleTest.java:60:12:60:23 | taintedLeft3 : Triple [left] : String | TripleTest.java:60:12:60:33 | getLeft(...) | provenance | MaD:218 | -| TripleTest.java:64:12:64:25 | taintedMiddle3 : Triple [middle] : String | TripleTest.java:64:12:64:37 | getMiddle(...) | provenance | MaD:220 | -| TripleTest.java:68:12:68:24 | taintedRight3 : Triple [right] : String | TripleTest.java:68:12:68:35 | getRight(...) | provenance | MaD:222 | +| TripleTest.java:58:94:58:100 | taint(...) : String | TripleTest.java:58:54:58:101 | of(...) : Triple [right] : String | provenance | MaD:211 | +| TripleTest.java:60:12:60:23 | taintedLeft3 : Triple [left] : String | TripleTest.java:60:12:60:33 | getLeft(...) | provenance | MaD:212 | +| TripleTest.java:64:12:64:25 | taintedMiddle3 : Triple [middle] : String | TripleTest.java:64:12:64:37 | getMiddle(...) | provenance | MaD:214 | +| TripleTest.java:68:12:68:24 | taintedRight3 : Triple [right] : String | TripleTest.java:68:12:68:35 | getRight(...) | provenance | MaD:216 | | TripleTest.java:71:62:71:120 | new ImmutableTriple<>(...) : ImmutableTriple [left] : String | TripleTest.java:75:12:75:23 | taintedLeft4 : ImmutableTriple [left] : String | provenance | | -| TripleTest.java:71:82:71:88 | taint(...) : String | TripleTest.java:71:62:71:120 | new ImmutableTriple<>(...) : ImmutableTriple [left] : String | provenance | MaD:183 | +| TripleTest.java:71:82:71:88 | taint(...) : String | TripleTest.java:71:62:71:120 | new ImmutableTriple<>(...) : ImmutableTriple [left] : String | provenance | MaD:177 | | TripleTest.java:72:64:72:120 | new ImmutableTriple<>(...) : ImmutableTriple [middle] : String | TripleTest.java:79:12:79:25 | taintedMiddle4 : ImmutableTriple [middle] : String | provenance | | -| TripleTest.java:72:98:72:104 | taint(...) : String | TripleTest.java:72:64:72:120 | new ImmutableTriple<>(...) : ImmutableTriple [middle] : String | provenance | MaD:184 | +| TripleTest.java:72:98:72:104 | taint(...) : String | TripleTest.java:72:64:72:120 | new ImmutableTriple<>(...) : ImmutableTriple [middle] : String | provenance | MaD:178 | | TripleTest.java:73:63:73:120 | new ImmutableTriple<>(...) : ImmutableTriple [right] : String | TripleTest.java:83:12:83:24 | taintedRight4 : ImmutableTriple [right] : String | provenance | | -| TripleTest.java:73:113:73:119 | taint(...) : String | TripleTest.java:73:63:73:120 | new ImmutableTriple<>(...) : ImmutableTriple [right] : String | provenance | MaD:185 | -| TripleTest.java:75:12:75:23 | taintedLeft4 : ImmutableTriple [left] : String | TripleTest.java:75:12:75:33 | getLeft(...) | provenance | MaD:218 | -| TripleTest.java:79:12:79:25 | taintedMiddle4 : ImmutableTriple [middle] : String | TripleTest.java:79:12:79:37 | getMiddle(...) | provenance | MaD:220 | -| TripleTest.java:83:12:83:24 | taintedRight4 : ImmutableTriple [right] : String | TripleTest.java:83:12:83:35 | getRight(...) | provenance | MaD:222 | +| TripleTest.java:73:113:73:119 | taint(...) : String | TripleTest.java:73:63:73:120 | new ImmutableTriple<>(...) : ImmutableTriple [right] : String | provenance | MaD:179 | +| TripleTest.java:75:12:75:23 | taintedLeft4 : ImmutableTriple [left] : String | TripleTest.java:75:12:75:33 | getLeft(...) | provenance | MaD:212 | +| TripleTest.java:79:12:79:25 | taintedMiddle4 : ImmutableTriple [middle] : String | TripleTest.java:79:12:79:37 | getMiddle(...) | provenance | MaD:214 | +| TripleTest.java:83:12:83:24 | taintedRight4 : ImmutableTriple [right] : String | TripleTest.java:83:12:83:35 | getRight(...) | provenance | MaD:216 | | TripleTest.java:85:66:85:121 | of(...) : MutableTriple [left] : String | TripleTest.java:99:12:99:29 | mutableTaintedLeft : MutableTriple [left] : String | provenance | | | TripleTest.java:85:66:85:121 | of(...) : MutableTriple [left] : String | TripleTest.java:102:12:102:29 | mutableTaintedLeft : MutableTriple [left] : String | provenance | | | TripleTest.java:85:66:85:121 | of(...) : MutableTriple [left] : String | TripleTest.java:162:12:162:30 | mutableTaintedLeft2 : MutableTriple [left] : String | provenance | | -| TripleTest.java:85:83:85:89 | taint(...) : String | TripleTest.java:85:66:85:121 | of(...) : MutableTriple [left] : String | provenance | MaD:199 | +| TripleTest.java:85:83:85:89 | taint(...) : String | TripleTest.java:85:66:85:121 | of(...) : MutableTriple [left] : String | provenance | MaD:193 | | TripleTest.java:86:68:86:121 | of(...) : MutableTriple [middle] : String | TripleTest.java:106:12:106:31 | mutableTaintedMiddle : MutableTriple [middle] : String | provenance | | | TripleTest.java:86:68:86:121 | of(...) : MutableTriple [middle] : String | TripleTest.java:109:12:109:31 | mutableTaintedMiddle : MutableTriple [middle] : String | provenance | | | TripleTest.java:86:68:86:121 | of(...) : MutableTriple [middle] : String | TripleTest.java:166:12:166:32 | mutableTaintedMiddle2 : MutableTriple [middle] : String | provenance | | -| TripleTest.java:86:99:86:105 | taint(...) : String | TripleTest.java:86:68:86:121 | of(...) : MutableTriple [middle] : String | provenance | MaD:200 | +| TripleTest.java:86:99:86:105 | taint(...) : String | TripleTest.java:86:68:86:121 | of(...) : MutableTriple [middle] : String | provenance | MaD:194 | | TripleTest.java:87:67:87:121 | of(...) : MutableTriple [right] : String | TripleTest.java:113:12:113:30 | mutableTaintedRight : MutableTriple [right] : String | provenance | | | TripleTest.java:87:67:87:121 | of(...) : MutableTriple [right] : String | TripleTest.java:116:12:116:30 | mutableTaintedRight : MutableTriple [right] : String | provenance | | | TripleTest.java:87:67:87:121 | of(...) : MutableTriple [right] : String | TripleTest.java:170:12:170:31 | mutableTaintedRight2 : MutableTriple [right] : String | provenance | | -| TripleTest.java:87:114:87:120 | taint(...) : String | TripleTest.java:87:67:87:121 | of(...) : MutableTriple [right] : String | provenance | MaD:201 | +| TripleTest.java:87:114:87:120 | taint(...) : String | TripleTest.java:87:67:87:121 | of(...) : MutableTriple [right] : String | provenance | MaD:195 | | TripleTest.java:89:7:89:20 | setTaintedLeft [post update] : MutableTriple [left] : String | TripleTest.java:117:12:117:25 | setTaintedLeft : MutableTriple [left] : String | provenance | | | TripleTest.java:89:7:89:20 | setTaintedLeft [post update] : MutableTriple [left] : String | TripleTest.java:120:12:120:25 | setTaintedLeft : MutableTriple [left] : String | provenance | | | TripleTest.java:89:7:89:20 | setTaintedLeft [post update] : MutableTriple [left] : String | TripleTest.java:171:12:171:26 | setTaintedLeft2 : MutableTriple [left] : String | provenance | | -| TripleTest.java:89:30:89:36 | taint(...) : String | TripleTest.java:89:7:89:20 | setTaintedLeft [post update] : MutableTriple [left] : String | provenance | MaD:202 | +| TripleTest.java:89:30:89:36 | taint(...) : String | TripleTest.java:89:7:89:20 | setTaintedLeft [post update] : MutableTriple [left] : String | provenance | MaD:196 | | TripleTest.java:91:7:91:22 | setTaintedMiddle [post update] : MutableTriple [middle] : String | TripleTest.java:124:12:124:27 | setTaintedMiddle : MutableTriple [middle] : String | provenance | | | TripleTest.java:91:7:91:22 | setTaintedMiddle [post update] : MutableTriple [middle] : String | TripleTest.java:127:12:127:27 | setTaintedMiddle : MutableTriple [middle] : String | provenance | | | TripleTest.java:91:7:91:22 | setTaintedMiddle [post update] : MutableTriple [middle] : String | TripleTest.java:175:12:175:28 | setTaintedMiddle2 : MutableTriple [middle] : String | provenance | | -| TripleTest.java:91:34:91:40 | taint(...) : String | TripleTest.java:91:7:91:22 | setTaintedMiddle [post update] : MutableTriple [middle] : String | provenance | MaD:203 | +| TripleTest.java:91:34:91:40 | taint(...) : String | TripleTest.java:91:7:91:22 | setTaintedMiddle [post update] : MutableTriple [middle] : String | provenance | MaD:197 | | TripleTest.java:93:7:93:21 | setTaintedRight [post update] : MutableTriple [right] : String | TripleTest.java:131:12:131:26 | setTaintedRight : MutableTriple [right] : String | provenance | | | TripleTest.java:93:7:93:21 | setTaintedRight [post update] : MutableTriple [right] : String | TripleTest.java:134:12:134:26 | setTaintedRight : MutableTriple [right] : String | provenance | | | TripleTest.java:93:7:93:21 | setTaintedRight [post update] : MutableTriple [right] : String | TripleTest.java:179:12:179:27 | setTaintedRight2 : MutableTriple [right] : String | provenance | | -| TripleTest.java:93:32:93:38 | taint(...) : String | TripleTest.java:93:7:93:21 | setTaintedRight [post update] : MutableTriple [right] : String | provenance | MaD:204 | +| TripleTest.java:93:32:93:38 | taint(...) : String | TripleTest.java:93:7:93:21 | setTaintedRight [post update] : MutableTriple [right] : String | provenance | MaD:198 | | TripleTest.java:94:77:94:133 | new MutableTriple<>(...) : MutableTriple [left] : String | TripleTest.java:135:12:135:40 | mutableTaintedLeftConstructed : MutableTriple [left] : String | provenance | | | TripleTest.java:94:77:94:133 | new MutableTriple<>(...) : MutableTriple [left] : String | TripleTest.java:138:12:138:40 | mutableTaintedLeftConstructed : MutableTriple [left] : String | provenance | | -| TripleTest.java:94:95:94:101 | taint(...) : String | TripleTest.java:94:77:94:133 | new MutableTriple<>(...) : MutableTriple [left] : String | provenance | MaD:196 | +| TripleTest.java:94:95:94:101 | taint(...) : String | TripleTest.java:94:77:94:133 | new MutableTriple<>(...) : MutableTriple [left] : String | provenance | MaD:190 | | TripleTest.java:95:79:95:133 | new MutableTriple<>(...) : MutableTriple [middle] : String | TripleTest.java:142:12:142:42 | mutableTaintedMiddleConstructed : MutableTriple [middle] : String | provenance | | | TripleTest.java:95:79:95:133 | new MutableTriple<>(...) : MutableTriple [middle] : String | TripleTest.java:145:12:145:42 | mutableTaintedMiddleConstructed : MutableTriple [middle] : String | provenance | | -| TripleTest.java:95:111:95:117 | taint(...) : String | TripleTest.java:95:79:95:133 | new MutableTriple<>(...) : MutableTriple [middle] : String | provenance | MaD:197 | +| TripleTest.java:95:111:95:117 | taint(...) : String | TripleTest.java:95:79:95:133 | new MutableTriple<>(...) : MutableTriple [middle] : String | provenance | MaD:191 | | TripleTest.java:96:78:96:133 | new MutableTriple<>(...) : MutableTriple [right] : String | TripleTest.java:149:12:149:41 | mutableTaintedRightConstructed : MutableTriple [right] : String | provenance | | | TripleTest.java:96:78:96:133 | new MutableTriple<>(...) : MutableTriple [right] : String | TripleTest.java:152:12:152:41 | mutableTaintedRightConstructed : MutableTriple [right] : String | provenance | | -| TripleTest.java:96:126:96:132 | taint(...) : String | TripleTest.java:96:78:96:133 | new MutableTriple<>(...) : MutableTriple [right] : String | provenance | MaD:198 | -| TripleTest.java:99:12:99:29 | mutableTaintedLeft : MutableTriple [left] : String | TripleTest.java:99:12:99:39 | getLeft(...) | provenance | MaD:219 | +| TripleTest.java:96:126:96:132 | taint(...) : String | TripleTest.java:96:78:96:133 | new MutableTriple<>(...) : MutableTriple [right] : String | provenance | MaD:192 | +| TripleTest.java:99:12:99:29 | mutableTaintedLeft : MutableTriple [left] : String | TripleTest.java:99:12:99:39 | getLeft(...) | provenance | MaD:213 | | TripleTest.java:102:12:102:29 | mutableTaintedLeft : MutableTriple [left] : String | TripleTest.java:102:12:102:34 | mutableTaintedLeft.left | provenance | | -| TripleTest.java:106:12:106:31 | mutableTaintedMiddle : MutableTriple [middle] : String | TripleTest.java:106:12:106:43 | getMiddle(...) | provenance | MaD:221 | +| TripleTest.java:106:12:106:31 | mutableTaintedMiddle : MutableTriple [middle] : String | TripleTest.java:106:12:106:43 | getMiddle(...) | provenance | MaD:215 | | TripleTest.java:109:12:109:31 | mutableTaintedMiddle : MutableTriple [middle] : String | TripleTest.java:109:12:109:38 | mutableTaintedMiddle.middle | provenance | | -| TripleTest.java:113:12:113:30 | mutableTaintedRight : MutableTriple [right] : String | TripleTest.java:113:12:113:41 | getRight(...) | provenance | MaD:223 | +| TripleTest.java:113:12:113:30 | mutableTaintedRight : MutableTriple [right] : String | TripleTest.java:113:12:113:41 | getRight(...) | provenance | MaD:217 | | TripleTest.java:116:12:116:30 | mutableTaintedRight : MutableTriple [right] : String | TripleTest.java:116:12:116:36 | mutableTaintedRight.right | provenance | | -| TripleTest.java:117:12:117:25 | setTaintedLeft : MutableTriple [left] : String | TripleTest.java:117:12:117:35 | getLeft(...) | provenance | MaD:219 | +| TripleTest.java:117:12:117:25 | setTaintedLeft : MutableTriple [left] : String | TripleTest.java:117:12:117:35 | getLeft(...) | provenance | MaD:213 | | TripleTest.java:120:12:120:25 | setTaintedLeft : MutableTriple [left] : String | TripleTest.java:120:12:120:30 | setTaintedLeft.left | provenance | | -| TripleTest.java:124:12:124:27 | setTaintedMiddle : MutableTriple [middle] : String | TripleTest.java:124:12:124:39 | getMiddle(...) | provenance | MaD:221 | +| TripleTest.java:124:12:124:27 | setTaintedMiddle : MutableTriple [middle] : String | TripleTest.java:124:12:124:39 | getMiddle(...) | provenance | MaD:215 | | TripleTest.java:127:12:127:27 | setTaintedMiddle : MutableTriple [middle] : String | TripleTest.java:127:12:127:34 | setTaintedMiddle.middle | provenance | | -| TripleTest.java:131:12:131:26 | setTaintedRight : MutableTriple [right] : String | TripleTest.java:131:12:131:37 | getRight(...) | provenance | MaD:223 | +| TripleTest.java:131:12:131:26 | setTaintedRight : MutableTriple [right] : String | TripleTest.java:131:12:131:37 | getRight(...) | provenance | MaD:217 | | TripleTest.java:134:12:134:26 | setTaintedRight : MutableTriple [right] : String | TripleTest.java:134:12:134:32 | setTaintedRight.right | provenance | | -| TripleTest.java:135:12:135:40 | mutableTaintedLeftConstructed : MutableTriple [left] : String | TripleTest.java:135:12:135:50 | getLeft(...) | provenance | MaD:219 | +| TripleTest.java:135:12:135:40 | mutableTaintedLeftConstructed : MutableTriple [left] : String | TripleTest.java:135:12:135:50 | getLeft(...) | provenance | MaD:213 | | TripleTest.java:138:12:138:40 | mutableTaintedLeftConstructed : MutableTriple [left] : String | TripleTest.java:138:12:138:45 | mutableTaintedLeftConstructed.left | provenance | | -| TripleTest.java:142:12:142:42 | mutableTaintedMiddleConstructed : MutableTriple [middle] : String | TripleTest.java:142:12:142:54 | getMiddle(...) | provenance | MaD:221 | +| TripleTest.java:142:12:142:42 | mutableTaintedMiddleConstructed : MutableTriple [middle] : String | TripleTest.java:142:12:142:54 | getMiddle(...) | provenance | MaD:215 | | TripleTest.java:145:12:145:42 | mutableTaintedMiddleConstructed : MutableTriple [middle] : String | TripleTest.java:145:12:145:49 | mutableTaintedMiddleConstructed.middle | provenance | | -| TripleTest.java:149:12:149:41 | mutableTaintedRightConstructed : MutableTriple [right] : String | TripleTest.java:149:12:149:52 | getRight(...) | provenance | MaD:223 | +| TripleTest.java:149:12:149:41 | mutableTaintedRightConstructed : MutableTriple [right] : String | TripleTest.java:149:12:149:52 | getRight(...) | provenance | MaD:217 | | TripleTest.java:152:12:152:41 | mutableTaintedRightConstructed : MutableTriple [right] : String | TripleTest.java:152:12:152:47 | mutableTaintedRightConstructed.right | provenance | | -| TripleTest.java:162:12:162:30 | mutableTaintedLeft2 : MutableTriple [left] : String | TripleTest.java:162:12:162:40 | getLeft(...) | provenance | MaD:219 | -| TripleTest.java:166:12:166:32 | mutableTaintedMiddle2 : MutableTriple [middle] : String | TripleTest.java:166:12:166:44 | getMiddle(...) | provenance | MaD:221 | -| TripleTest.java:170:12:170:31 | mutableTaintedRight2 : MutableTriple [right] : String | TripleTest.java:170:12:170:42 | getRight(...) | provenance | MaD:223 | -| TripleTest.java:171:12:171:26 | setTaintedLeft2 : MutableTriple [left] : String | TripleTest.java:171:12:171:36 | getLeft(...) | provenance | MaD:219 | -| TripleTest.java:175:12:175:28 | setTaintedMiddle2 : MutableTriple [middle] : String | TripleTest.java:175:12:175:40 | getMiddle(...) | provenance | MaD:221 | -| TripleTest.java:179:12:179:27 | setTaintedRight2 : MutableTriple [right] : String | TripleTest.java:179:12:179:38 | getRight(...) | provenance | MaD:223 | -| WordUtilsTest.java:9:31:9:37 | taint(...) : String | WordUtilsTest.java:9:10:9:38 | capitalize(...) | provenance | MaD:165 | -| WordUtilsTest.java:10:31:10:37 | taint(...) : String | WordUtilsTest.java:10:10:10:48 | capitalize(...) | provenance | MaD:166 | -| WordUtilsTest.java:11:36:11:42 | taint(...) : String | WordUtilsTest.java:11:10:11:43 | capitalizeFully(...) | provenance | MaD:167 | -| WordUtilsTest.java:12:36:12:42 | taint(...) : String | WordUtilsTest.java:12:10:12:53 | capitalizeFully(...) | provenance | MaD:168 | -| WordUtilsTest.java:13:29:13:35 | taint(...) : String | WordUtilsTest.java:13:10:13:36 | initials(...) | provenance | MaD:169 | -| WordUtilsTest.java:14:29:14:35 | taint(...) : String | WordUtilsTest.java:14:10:14:46 | initials(...) | provenance | MaD:170 | -| WordUtilsTest.java:15:29:15:35 | taint(...) : String | WordUtilsTest.java:15:10:15:36 | swapCase(...) | provenance | MaD:171 | -| WordUtilsTest.java:16:33:16:39 | taint(...) : String | WordUtilsTest.java:16:10:16:40 | uncapitalize(...) | provenance | MaD:172 | -| WordUtilsTest.java:17:33:17:39 | taint(...) : String | WordUtilsTest.java:17:10:17:50 | uncapitalize(...) | provenance | MaD:173 | -| WordUtilsTest.java:18:25:18:31 | taint(...) : String | WordUtilsTest.java:18:10:18:35 | wrap(...) | provenance | MaD:176 | -| WordUtilsTest.java:19:25:19:31 | taint(...) : String | WordUtilsTest.java:19:10:19:48 | wrap(...) | provenance | MaD:176 | -| WordUtilsTest.java:20:39:20:45 | taint(...) : String | WordUtilsTest.java:20:10:20:53 | wrap(...) | provenance | MaD:174 | -| WordUtilsTest.java:21:25:21:31 | taint(...) : String | WordUtilsTest.java:21:10:21:54 | wrap(...) | provenance | MaD:176 | -| WordUtilsTest.java:22:39:22:45 | taint(...) : String | WordUtilsTest.java:22:10:22:59 | wrap(...) | provenance | MaD:175 | -| WordUtilsTextTest.java:9:31:9:37 | taint(...) : String | WordUtilsTextTest.java:9:10:9:57 | abbreviate(...) | provenance | MaD:650 | -| WordUtilsTextTest.java:10:54:10:60 | taint(...) : String | WordUtilsTextTest.java:10:10:10:61 | abbreviate(...) | provenance | MaD:651 | -| WordUtilsTextTest.java:11:31:11:37 | taint(...) : String | WordUtilsTextTest.java:11:10:11:38 | capitalize(...) | provenance | MaD:652 | -| WordUtilsTextTest.java:12:31:12:37 | taint(...) : String | WordUtilsTextTest.java:12:10:12:48 | capitalize(...) | provenance | MaD:653 | -| WordUtilsTextTest.java:13:36:13:42 | taint(...) : String | WordUtilsTextTest.java:13:10:13:43 | capitalizeFully(...) | provenance | MaD:654 | -| WordUtilsTextTest.java:14:36:14:42 | taint(...) : String | WordUtilsTextTest.java:14:10:14:53 | capitalizeFully(...) | provenance | MaD:655 | -| WordUtilsTextTest.java:15:29:15:35 | taint(...) : String | WordUtilsTextTest.java:15:10:15:36 | initials(...) | provenance | MaD:656 | -| WordUtilsTextTest.java:16:29:16:35 | taint(...) : String | WordUtilsTextTest.java:16:10:16:46 | initials(...) | provenance | MaD:657 | -| WordUtilsTextTest.java:17:29:17:35 | taint(...) : String | WordUtilsTextTest.java:17:10:17:36 | swapCase(...) | provenance | MaD:658 | -| WordUtilsTextTest.java:18:33:18:39 | taint(...) : String | WordUtilsTextTest.java:18:10:18:40 | uncapitalize(...) | provenance | MaD:659 | -| WordUtilsTextTest.java:19:33:19:39 | taint(...) : String | WordUtilsTextTest.java:19:10:19:50 | uncapitalize(...) | provenance | MaD:660 | -| WordUtilsTextTest.java:20:25:20:31 | taint(...) : String | WordUtilsTextTest.java:20:10:20:35 | wrap(...) | provenance | MaD:663 | -| WordUtilsTextTest.java:21:25:21:31 | taint(...) : String | WordUtilsTextTest.java:21:10:21:48 | wrap(...) | provenance | MaD:663 | -| WordUtilsTextTest.java:22:39:22:45 | taint(...) : String | WordUtilsTextTest.java:22:10:22:53 | wrap(...) | provenance | MaD:661 | -| WordUtilsTextTest.java:23:25:23:31 | taint(...) : String | WordUtilsTextTest.java:23:10:23:54 | wrap(...) | provenance | MaD:663 | -| WordUtilsTextTest.java:24:39:24:45 | taint(...) : String | WordUtilsTextTest.java:24:10:24:59 | wrap(...) | provenance | MaD:662 | +| TripleTest.java:162:12:162:30 | mutableTaintedLeft2 : MutableTriple [left] : String | TripleTest.java:162:12:162:40 | getLeft(...) | provenance | MaD:213 | +| TripleTest.java:166:12:166:32 | mutableTaintedMiddle2 : MutableTriple [middle] : String | TripleTest.java:166:12:166:44 | getMiddle(...) | provenance | MaD:215 | +| TripleTest.java:170:12:170:31 | mutableTaintedRight2 : MutableTriple [right] : String | TripleTest.java:170:12:170:42 | getRight(...) | provenance | MaD:217 | +| TripleTest.java:171:12:171:26 | setTaintedLeft2 : MutableTriple [left] : String | TripleTest.java:171:12:171:36 | getLeft(...) | provenance | MaD:213 | +| TripleTest.java:175:12:175:28 | setTaintedMiddle2 : MutableTriple [middle] : String | TripleTest.java:175:12:175:40 | getMiddle(...) | provenance | MaD:215 | +| TripleTest.java:179:12:179:27 | setTaintedRight2 : MutableTriple [right] : String | TripleTest.java:179:12:179:38 | getRight(...) | provenance | MaD:217 | +| WordUtilsTest.java:9:31:9:37 | taint(...) : String | WordUtilsTest.java:9:10:9:38 | capitalize(...) | provenance | MaD:159 | +| WordUtilsTest.java:10:31:10:37 | taint(...) : String | WordUtilsTest.java:10:10:10:48 | capitalize(...) | provenance | MaD:160 | +| WordUtilsTest.java:11:36:11:42 | taint(...) : String | WordUtilsTest.java:11:10:11:43 | capitalizeFully(...) | provenance | MaD:161 | +| WordUtilsTest.java:12:36:12:42 | taint(...) : String | WordUtilsTest.java:12:10:12:53 | capitalizeFully(...) | provenance | MaD:162 | +| WordUtilsTest.java:13:29:13:35 | taint(...) : String | WordUtilsTest.java:13:10:13:36 | initials(...) | provenance | MaD:163 | +| WordUtilsTest.java:14:29:14:35 | taint(...) : String | WordUtilsTest.java:14:10:14:46 | initials(...) | provenance | MaD:164 | +| WordUtilsTest.java:15:29:15:35 | taint(...) : String | WordUtilsTest.java:15:10:15:36 | swapCase(...) | provenance | MaD:165 | +| WordUtilsTest.java:16:33:16:39 | taint(...) : String | WordUtilsTest.java:16:10:16:40 | uncapitalize(...) | provenance | MaD:166 | +| WordUtilsTest.java:17:33:17:39 | taint(...) : String | WordUtilsTest.java:17:10:17:50 | uncapitalize(...) | provenance | MaD:167 | +| WordUtilsTest.java:18:25:18:31 | taint(...) : String | WordUtilsTest.java:18:10:18:35 | wrap(...) | provenance | MaD:170 | +| WordUtilsTest.java:19:25:19:31 | taint(...) : String | WordUtilsTest.java:19:10:19:48 | wrap(...) | provenance | MaD:170 | +| WordUtilsTest.java:20:39:20:45 | taint(...) : String | WordUtilsTest.java:20:10:20:53 | wrap(...) | provenance | MaD:168 | +| WordUtilsTest.java:21:25:21:31 | taint(...) : String | WordUtilsTest.java:21:10:21:54 | wrap(...) | provenance | MaD:170 | +| WordUtilsTest.java:22:39:22:45 | taint(...) : String | WordUtilsTest.java:22:10:22:59 | wrap(...) | provenance | MaD:169 | +| WordUtilsTextTest.java:9:31:9:37 | taint(...) : String | WordUtilsTextTest.java:9:10:9:57 | abbreviate(...) | provenance | MaD:644 | +| WordUtilsTextTest.java:10:54:10:60 | taint(...) : String | WordUtilsTextTest.java:10:10:10:61 | abbreviate(...) | provenance | MaD:645 | +| WordUtilsTextTest.java:11:31:11:37 | taint(...) : String | WordUtilsTextTest.java:11:10:11:38 | capitalize(...) | provenance | MaD:646 | +| WordUtilsTextTest.java:12:31:12:37 | taint(...) : String | WordUtilsTextTest.java:12:10:12:48 | capitalize(...) | provenance | MaD:647 | +| WordUtilsTextTest.java:13:36:13:42 | taint(...) : String | WordUtilsTextTest.java:13:10:13:43 | capitalizeFully(...) | provenance | MaD:648 | +| WordUtilsTextTest.java:14:36:14:42 | taint(...) : String | WordUtilsTextTest.java:14:10:14:53 | capitalizeFully(...) | provenance | MaD:649 | +| WordUtilsTextTest.java:15:29:15:35 | taint(...) : String | WordUtilsTextTest.java:15:10:15:36 | initials(...) | provenance | MaD:650 | +| WordUtilsTextTest.java:16:29:16:35 | taint(...) : String | WordUtilsTextTest.java:16:10:16:46 | initials(...) | provenance | MaD:651 | +| WordUtilsTextTest.java:17:29:17:35 | taint(...) : String | WordUtilsTextTest.java:17:10:17:36 | swapCase(...) | provenance | MaD:652 | +| WordUtilsTextTest.java:18:33:18:39 | taint(...) : String | WordUtilsTextTest.java:18:10:18:40 | uncapitalize(...) | provenance | MaD:653 | +| WordUtilsTextTest.java:19:33:19:39 | taint(...) : String | WordUtilsTextTest.java:19:10:19:50 | uncapitalize(...) | provenance | MaD:654 | +| WordUtilsTextTest.java:20:25:20:31 | taint(...) : String | WordUtilsTextTest.java:20:10:20:35 | wrap(...) | provenance | MaD:657 | +| WordUtilsTextTest.java:21:25:21:31 | taint(...) : String | WordUtilsTextTest.java:21:10:21:48 | wrap(...) | provenance | MaD:657 | +| WordUtilsTextTest.java:22:39:22:45 | taint(...) : String | WordUtilsTextTest.java:22:10:22:53 | wrap(...) | provenance | MaD:655 | +| WordUtilsTextTest.java:23:25:23:31 | taint(...) : String | WordUtilsTextTest.java:23:10:23:54 | wrap(...) | provenance | MaD:657 | +| WordUtilsTextTest.java:24:39:24:45 | taint(...) : String | WordUtilsTextTest.java:24:10:24:59 | wrap(...) | provenance | MaD:656 | nodes | ArrayUtilsTest.java:20:33:20:56 | {...} : String[] [[]] : String | semmle.label | {...} : String[] [[]] : String | | ArrayUtilsTest.java:20:48:20:54 | taint(...) : String | semmle.label | taint(...) : String | @@ -3544,7 +3332,6 @@ nodes | PairTest.java:87:28:87:34 | taint(...) : String | semmle.label | taint(...) : String | | PairTest.java:89:7:89:19 | setTaintRight [post update] : MutablePair [right] : String | semmle.label | setTaintRight [post update] : MutablePair [right] : String | | PairTest.java:89:30:89:36 | taint(...) : String | semmle.label | taint(...) : String | -| PairTest.java:91:7:91:19 | setTaintValue [post update] : MutablePair [] : String | semmle.label | setTaintValue [post update] : MutablePair [] : String | | PairTest.java:91:7:91:19 | setTaintValue [post update] : MutablePair [right] : String | semmle.label | setTaintValue [post update] : MutablePair [right] : String | | PairTest.java:91:30:91:36 | taint(...) : String | semmle.label | taint(...) : String | | PairTest.java:92:67:92:105 | new MutablePair<>(...) : MutablePair [left] : String | semmle.label | new MutablePair<>(...) : MutablePair [left] : String | @@ -3577,7 +3364,6 @@ nodes | PairTest.java:118:12:118:30 | setTaintRight.right | semmle.label | setTaintRight.right | | PairTest.java:120:12:120:24 | setTaintValue : MutablePair [right] : String | semmle.label | setTaintValue : MutablePair [right] : String | | PairTest.java:120:12:120:35 | getRight(...) | semmle.label | getRight(...) | -| PairTest.java:122:12:122:24 | setTaintValue : MutablePair [] : String | semmle.label | setTaintValue : MutablePair [] : String | | PairTest.java:122:12:122:24 | setTaintValue : MutablePair [right] : String | semmle.label | setTaintValue : MutablePair [right] : String | | PairTest.java:122:12:122:35 | getValue(...) | semmle.label | getValue(...) | | PairTest.java:124:12:124:24 | setTaintValue : MutablePair [right] : String | semmle.label | setTaintValue : MutablePair [right] : String | diff --git a/java/ql/test/library-tests/frameworks/json-java/test.expected b/java/ql/test/library-tests/frameworks/json-java/test.expected index 7aa0dc431065..c7bd2b349d03 100644 --- a/java/ql/test/library-tests/frameworks/json-java/test.expected +++ b/java/ql/test/library-tests/frameworks/json-java/test.expected @@ -444,7 +444,6 @@ edges | Test.java:343:10:343:24 | getString(...) : String | Test.java:344:9:344:11 | out | provenance | | | Test.java:349:19:349:37 | (...)... : JSONArray | Test.java:350:10:350:11 | in : JSONArray | provenance | | | Test.java:349:30:349:37 | source(...) : Object | Test.java:349:19:349:37 | (...)... : JSONArray | provenance | | -| Test.java:350:10:350:11 | in : JSONArray | Test.java:350:10:350:22 | iterator(...) : Iterator [] : Object | provenance | MaD:1 | | Test.java:350:10:350:11 | in : JSONArray | Test.java:350:10:350:22 | iterator(...) : Iterator [] : Object | provenance | MaD:42 | | Test.java:350:10:350:22 | iterator(...) : Iterator [] : Object | Test.java:351:20:351:22 | out : Iterator [] : Object | provenance | | | Test.java:351:20:351:22 | out : Iterator [] : Object | Test.java:40:20:40:30 | it : Iterator [] : Object | provenance | | diff --git a/java/ql/test/library-tests/frameworks/netty/generated/test.expected b/java/ql/test/library-tests/frameworks/netty/generated/test.expected index 4b719c8fd34d..56b146551f80 100644 --- a/java/ql/test/library-tests/frameworks/netty/generated/test.expected +++ b/java/ql/test/library-tests/frameworks/netty/generated/test.expected @@ -491,11 +491,9 @@ models | 490 | Summary: io.netty.util; AsciiString; false; trim; (CharSequence); ; Argument[0]; ReturnValue; taint; manual | | 491 | Summary: io.netty.util; ReferenceCounted; true; retain; ; ; Argument[this]; ReturnValue; value; manual | | 492 | Summary: io.netty.util; ReferenceCounted; true; touch; ; ; Argument[this]; ReturnValue; value; manual | -| 493 | Summary: java.lang; CharSequence; true; subSequence; ; ; Argument[this]; ReturnValue; taint; manual | -| 494 | Summary: java.lang; CharSequence; true; toString; ; ; Argument[this]; ReturnValue; taint; manual | -| 495 | Summary: java.lang; Iterable; true; iterator; (); ; Argument[this].Element; ReturnValue.Element; value; manual | -| 496 | Summary: java.util; Iterator; true; next; ; ; Argument[this].Element; ReturnValue; value; manual | -| 497 | Summary: java.util; List; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | +| 493 | Summary: java.lang; Iterable; true; iterator; (); ; Argument[this].Element; ReturnValue.Element; value; manual | +| 494 | Summary: java.util; Iterator; true; next; ; ; Argument[this].Element; ReturnValue; value; manual | +| 495 | Summary: java.util; List; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | edges | Test.java:79:19:79:32 | it : Headers [, ] : Object | Test.java:79:44:79:45 | it : Headers [, ] : Object | provenance | | | Test.java:79:19:79:32 | it : Headers [, ] : Object | Test.java:79:44:79:45 | it : Headers [, ] : Object | provenance | | @@ -510,38 +508,38 @@ edges | Test.java:79:19:79:32 | it : List [, ] : Object | Test.java:79:44:79:45 | it : List [, ] : Object | provenance | | | Test.java:79:19:79:32 | it : List [] : Object | Test.java:79:44:79:45 | it : List [] : Object | provenance | | | Test.java:79:19:79:32 | it : Set [] : Object | Test.java:79:44:79:45 | it : Set [] : Object | provenance | | -| Test.java:79:44:79:45 | it : Headers [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:495 | -| Test.java:79:44:79:45 | it : Headers [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:495 | -| Test.java:79:44:79:45 | it : Http2Headers [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:495 | -| Test.java:79:44:79:45 | it : Http2Headers [, ] : CharSequence | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : CharSequence | provenance | MaD:495 | -| Test.java:79:44:79:45 | it : Http2Headers [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:495 | -| Test.java:79:44:79:45 | it : HttpHeaders [, ] : CharSequence | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : CharSequence | provenance | MaD:495 | -| Test.java:79:44:79:45 | it : HttpHeaders [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:495 | -| Test.java:79:44:79:45 | it : HttpHeaders [, ] : String | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : String | provenance | MaD:495 | -| Test.java:79:44:79:45 | it : HttpHeaders [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:495 | -| Test.java:79:44:79:45 | it : List [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:495 | -| Test.java:79:44:79:45 | it : List [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:495 | -| Test.java:79:44:79:45 | it : List [] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [] : Object | provenance | MaD:495 | -| Test.java:79:44:79:45 | it : Set [] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [] : Object | provenance | MaD:495 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : CharSequence | Test.java:79:44:79:63 | next(...) : Object [] : CharSequence | provenance | MaD:496 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:496 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:496 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:496 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:496 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : String | Test.java:79:44:79:63 | next(...) : Object [] : String | provenance | MaD:496 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : CharSequence | Test.java:79:44:79:63 | next(...) : Object [] : CharSequence | provenance | MaD:496 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:496 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:496 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:496 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:496 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [] : Object | Test.java:79:44:79:63 | next(...) : Object | provenance | MaD:496 | -| Test.java:79:44:79:56 | iterator(...) : Iterator [] : Object | Test.java:79:44:79:63 | next(...) : Object | provenance | MaD:496 | +| Test.java:79:44:79:45 | it : Headers [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:493 | +| Test.java:79:44:79:45 | it : Headers [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:493 | +| Test.java:79:44:79:45 | it : Http2Headers [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:493 | +| Test.java:79:44:79:45 | it : Http2Headers [, ] : CharSequence | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : CharSequence | provenance | MaD:493 | +| Test.java:79:44:79:45 | it : Http2Headers [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:493 | +| Test.java:79:44:79:45 | it : HttpHeaders [, ] : CharSequence | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : CharSequence | provenance | MaD:493 | +| Test.java:79:44:79:45 | it : HttpHeaders [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:493 | +| Test.java:79:44:79:45 | it : HttpHeaders [, ] : String | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : String | provenance | MaD:493 | +| Test.java:79:44:79:45 | it : HttpHeaders [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:493 | +| Test.java:79:44:79:45 | it : List [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:493 | +| Test.java:79:44:79:45 | it : List [, ] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | provenance | MaD:493 | +| Test.java:79:44:79:45 | it : List [] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [] : Object | provenance | MaD:493 | +| Test.java:79:44:79:45 | it : Set [] : Object | Test.java:79:44:79:56 | iterator(...) : Iterator [] : Object | provenance | MaD:493 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : CharSequence | Test.java:79:44:79:63 | next(...) : Object [] : CharSequence | provenance | MaD:494 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:494 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:494 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:494 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:494 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : String | Test.java:79:44:79:63 | next(...) : Object [] : String | provenance | MaD:494 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : CharSequence | Test.java:79:44:79:63 | next(...) : Object [] : CharSequence | provenance | MaD:494 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:494 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:494 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:494 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [, ] : Object | Test.java:79:44:79:63 | next(...) : Object [] : Object | provenance | MaD:494 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [] : Object | Test.java:79:44:79:63 | next(...) : Object | provenance | MaD:494 | +| Test.java:79:44:79:56 | iterator(...) : Iterator [] : Object | Test.java:79:44:79:63 | next(...) : Object | provenance | MaD:494 | | Test.java:80:19:80:32 | it : Iterator [, ] : Object | Test.java:80:44:80:45 | it : Iterator [, ] : Object | provenance | | | Test.java:80:19:80:32 | it : Iterator [, ] : Object | Test.java:80:44:80:45 | it : Iterator [, ] : Object | provenance | | | Test.java:80:19:80:32 | it : Iterator [] : Object | Test.java:80:44:80:45 | it : Iterator [] : Object | provenance | | -| Test.java:80:44:80:45 | it : Iterator [, ] : Object | Test.java:80:44:80:52 | next(...) : Object [] : Object | provenance | MaD:496 | -| Test.java:80:44:80:45 | it : Iterator [, ] : Object | Test.java:80:44:80:52 | next(...) : Object [] : Object | provenance | MaD:496 | -| Test.java:80:44:80:45 | it : Iterator [] : Object | Test.java:80:44:80:52 | next(...) : Object | provenance | MaD:496 | +| Test.java:80:44:80:45 | it : Iterator [, ] : Object | Test.java:80:44:80:52 | next(...) : Object [] : Object | provenance | MaD:494 | +| Test.java:80:44:80:45 | it : Iterator [, ] : Object | Test.java:80:44:80:52 | next(...) : Object [] : Object | provenance | MaD:494 | +| Test.java:80:44:80:45 | it : Iterator [] : Object | Test.java:80:44:80:52 | next(...) : Object | provenance | MaD:494 | | Test.java:95:17:95:33 | (...)... : ByteBuf | Test.java:96:10:96:11 | in : ByteBuf | provenance | | | Test.java:95:26:95:33 | source(...) : Object | Test.java:95:17:95:33 | (...)... : ByteBuf | provenance | | | Test.java:96:10:96:11 | in : ByteBuf | Test.java:96:10:96:19 | array(...) : byte[] | provenance | MaD:6 | @@ -2858,7 +2856,7 @@ edges | Test.java:4152:65:4152:66 | in : ByteBuf[] [[]] : ByteBuf | Test.java:4152:10:4152:67 | new CompositeByteBuf(...) : CompositeByteBuf | provenance | MaD:167 | | Test.java:4158:18:4158:44 | (...)... : List [] : Object | Test.java:4159:65:4159:66 | in : List [] : Object | provenance | | | Test.java:4158:28:4158:44 | of(...) : List [] : Object | Test.java:4158:18:4158:44 | (...)... : List [] : Object | provenance | | -| Test.java:4158:36:4158:43 | source(...) : Object | Test.java:4158:28:4158:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:4158:36:4158:43 | source(...) : Object | Test.java:4158:28:4158:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:4159:10:4159:67 | new CompositeByteBuf(...) : CompositeByteBuf | Test.java:4160:9:4160:11 | out | provenance | | | Test.java:4159:65:4159:66 | in : List [] : Object | Test.java:4159:10:4159:67 | new CompositeByteBuf(...) : CompositeByteBuf | provenance | MaD:168 | | Test.java:4165:17:4165:33 | (...)... : ByteBuf | Test.java:4166:21:4166:22 | in : ByteBuf | provenance | | @@ -2901,7 +2899,7 @@ edges | Test.java:4222:22:4222:23 | in : ByteBuf[] [[]] : ByteBuf | Test.java:4222:4:4222:6 | out [post update] : CompositeByteBuf | provenance | MaD:174 | | Test.java:4228:18:4228:44 | (...)... : List [] : Object | Test.java:4229:22:4229:23 | in : List [] : Object | provenance | | | Test.java:4228:28:4228:44 | of(...) : List [] : Object | Test.java:4228:18:4228:44 | (...)... : List [] : Object | provenance | | -| Test.java:4228:36:4228:43 | source(...) : Object | Test.java:4228:28:4228:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:4228:36:4228:43 | source(...) : Object | Test.java:4228:28:4228:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:4229:4:4229:6 | out [post update] : CompositeByteBuf | Test.java:4230:9:4230:11 | out | provenance | | | Test.java:4229:22:4229:23 | in : List [] : Object | Test.java:4229:4:4229:6 | out [post update] : CompositeByteBuf | provenance | MaD:175 | | Test.java:4235:19:4235:61 | (...)... : ByteBuf[] [[]] : ByteBuf | Test.java:4236:29:4236:30 | in : ByteBuf[] [[]] : ByteBuf | provenance | | @@ -2912,7 +2910,7 @@ edges | Test.java:4236:29:4236:30 | in : ByteBuf[] [[]] : ByteBuf | Test.java:4236:4:4236:6 | out [post update] : CompositeByteBuf | provenance | MaD:176 | | Test.java:4242:18:4242:44 | (...)... : List [] : Object | Test.java:4243:29:4243:30 | in : List [] : Object | provenance | | | Test.java:4242:28:4242:44 | of(...) : List [] : Object | Test.java:4242:18:4242:44 | (...)... : List [] : Object | provenance | | -| Test.java:4242:36:4242:43 | source(...) : Object | Test.java:4242:28:4242:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:4242:36:4242:43 | source(...) : Object | Test.java:4242:28:4242:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:4243:4:4243:6 | out [post update] : CompositeByteBuf | Test.java:4244:9:4244:11 | out | provenance | | | Test.java:4243:29:4243:30 | in : List [] : Object | Test.java:4243:4:4243:6 | out [post update] : CompositeByteBuf | provenance | MaD:177 | | Test.java:4249:19:4249:61 | (...)... : ByteBuf[] [[]] : ByteBuf | Test.java:4250:25:4250:26 | in : ByteBuf[] [[]] : ByteBuf | provenance | | @@ -2923,7 +2921,7 @@ edges | Test.java:4250:25:4250:26 | in : ByteBuf[] [[]] : ByteBuf | Test.java:4250:4:4250:6 | out [post update] : CompositeByteBuf | provenance | MaD:178 | | Test.java:4256:18:4256:44 | (...)... : List [] : Object | Test.java:4257:25:4257:26 | in : List [] : Object | provenance | | | Test.java:4256:28:4256:44 | of(...) : List [] : Object | Test.java:4256:18:4256:44 | (...)... : List [] : Object | provenance | | -| Test.java:4256:36:4256:43 | source(...) : Object | Test.java:4256:28:4256:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:4256:36:4256:43 | source(...) : Object | Test.java:4256:28:4256:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:4257:4:4257:6 | out [post update] : CompositeByteBuf | Test.java:4258:9:4258:11 | out | provenance | | | Test.java:4257:25:4257:26 | in : List [] : Object | Test.java:4257:4:4257:6 | out [post update] : CompositeByteBuf | provenance | MaD:179 | | Test.java:4263:26:4263:51 | (...)... : CompositeByteBuf | Test.java:4264:10:4264:11 | in : CompositeByteBuf | provenance | | @@ -2979,7 +2977,7 @@ edges | Test.java:4348:10:4348:11 | in : CompositeByteBuf | Test.java:4348:10:4348:27 | decompose(...) : List [] : Object | provenance | MaD:187 | | Test.java:4348:10:4348:27 | decompose(...) : List [] : Object | Test.java:4349:20:4349:22 | out : List [] : Object | provenance | | | Test.java:4349:20:4349:22 | out : List [] : Object | Test.java:79:19:79:32 | it : List [] : Object | provenance | | -| Test.java:4349:20:4349:22 | out : List [] : Object | Test.java:4349:9:4349:23 | getElement(...) | provenance | MaD:495 | +| Test.java:4349:20:4349:22 | out : List [] : Object | Test.java:4349:9:4349:23 | getElement(...) | provenance | MaD:493 | | Test.java:4354:17:4354:33 | (...)... : ByteBuf | Test.java:4355:32:4355:33 | in : ByteBuf | provenance | | | Test.java:4354:26:4354:33 | source(...) : Object | Test.java:4354:17:4354:33 | (...)... : ByteBuf | provenance | | | Test.java:4355:10:4355:34 | copiedBuffer(...) : ByteBuf | Test.java:4356:9:4356:11 | out | provenance | | @@ -3219,20 +3217,20 @@ edges | Test.java:4727:10:4727:28 | decode(...) : Set [] : Object | Test.java:4728:20:4728:22 | out : Set [] : Object | provenance | | | Test.java:4727:26:4727:27 | in : String | Test.java:4727:10:4727:28 | decode(...) : Set [] : Object | provenance | MaD:222 | | Test.java:4728:20:4728:22 | out : Set [] : Object | Test.java:79:19:79:32 | it : Set [] : Object | provenance | | -| Test.java:4728:20:4728:22 | out : Set [] : Object | Test.java:4728:9:4728:23 | getElement(...) | provenance | MaD:495 | +| Test.java:4728:20:4728:22 | out : Set [] : Object | Test.java:4728:9:4728:23 | getElement(...) | provenance | MaD:493 | | Test.java:4733:16:4733:31 | (...)... : String | Test.java:4735:29:4735:30 | in : String | provenance | | | Test.java:4733:24:4733:31 | source(...) : Object | Test.java:4733:16:4733:31 | (...)... : String | provenance | | | Test.java:4735:10:4735:31 | decodeAll(...) : List [] : Object | Test.java:4736:20:4736:22 | out : List [] : Object | provenance | | | Test.java:4735:29:4735:30 | in : String | Test.java:4735:10:4735:31 | decodeAll(...) : List [] : Object | provenance | MaD:223 | | Test.java:4736:20:4736:22 | out : List [] : Object | Test.java:79:19:79:32 | it : List [] : Object | provenance | | -| Test.java:4736:20:4736:22 | out : List [] : Object | Test.java:4736:9:4736:23 | getElement(...) | provenance | MaD:495 | +| Test.java:4736:20:4736:22 | out : List [] : Object | Test.java:4736:9:4736:23 | getElement(...) | provenance | MaD:493 | | Test.java:4741:20:4741:48 | (...)... : List [] : Object | Test.java:4743:26:4743:27 | in : List [] : Object | provenance | | | Test.java:4741:32:4741:48 | of(...) : List [] : Object | Test.java:4741:20:4741:48 | (...)... : List [] : Object | provenance | | -| Test.java:4741:40:4741:47 | source(...) : Object | Test.java:4741:32:4741:48 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:4741:40:4741:47 | source(...) : Object | Test.java:4741:32:4741:48 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:4743:10:4743:28 | encode(...) : List [] : Object | Test.java:4744:20:4744:22 | out : List [] : Object | provenance | | | Test.java:4743:26:4743:27 | in : List [] : Object | Test.java:4743:10:4743:28 | encode(...) : List [] : Object | provenance | MaD:224 | | Test.java:4744:20:4744:22 | out : List [] : Object | Test.java:79:19:79:32 | it : List [] : Object | provenance | | -| Test.java:4744:20:4744:22 | out : List [] : Object | Test.java:4744:9:4744:23 | getElement(...) | provenance | MaD:495 | +| Test.java:4744:20:4744:22 | out : List [] : Object | Test.java:4744:9:4744:23 | getElement(...) | provenance | MaD:493 | | Test.java:4749:16:4749:31 | (...)... : Cookie | Test.java:4751:26:4751:27 | in : Cookie | provenance | | | Test.java:4749:24:4749:31 | source(...) : Object | Test.java:4749:16:4749:31 | (...)... : Cookie | provenance | | | Test.java:4751:10:4751:28 | encode(...) : String | Test.java:4752:9:4752:11 | out | provenance | | @@ -3244,14 +3242,14 @@ edges | Test.java:4759:10:4759:28 | encode(...) : List [] : Object | Test.java:4760:20:4760:22 | out : List [] : Object | provenance | | | Test.java:4759:26:4759:27 | in : Cookie[] [[]] : Cookie | Test.java:4759:10:4759:28 | encode(...) : List [] : Object | provenance | MaD:226 | | Test.java:4760:20:4760:22 | out : List [] : Object | Test.java:79:19:79:32 | it : List [] : Object | provenance | | -| Test.java:4760:20:4760:22 | out : List [] : Object | Test.java:4760:9:4760:23 | getElement(...) | provenance | MaD:495 | +| Test.java:4760:20:4760:22 | out : List [] : Object | Test.java:4760:9:4760:23 | getElement(...) | provenance | MaD:493 | | Test.java:4765:18:4765:44 | (...)... : List [] : Object | Test.java:4767:26:4767:27 | in : List [] : Object | provenance | | | Test.java:4765:28:4765:44 | of(...) : List [] : Object | Test.java:4765:18:4765:44 | (...)... : List [] : Object | provenance | | -| Test.java:4765:36:4765:43 | source(...) : Object | Test.java:4765:28:4765:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:4765:36:4765:43 | source(...) : Object | Test.java:4765:28:4765:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:4767:10:4767:28 | encode(...) : List [] : Object | Test.java:4768:20:4768:22 | out : List [] : Object | provenance | | | Test.java:4767:26:4767:27 | in : List [] : Object | Test.java:4767:10:4767:28 | encode(...) : List [] : Object | provenance | MaD:227 | | Test.java:4768:20:4768:22 | out : List [] : Object | Test.java:79:19:79:32 | it : List [] : Object | provenance | | -| Test.java:4768:20:4768:22 | out : List [] : Object | Test.java:4768:9:4768:23 | getElement(...) | provenance | MaD:495 | +| Test.java:4768:20:4768:22 | out : List [] : Object | Test.java:4768:9:4768:23 | getElement(...) | provenance | MaD:493 | | Test.java:4773:16:4773:31 | (...)... : String | Test.java:4775:32:4775:33 | in : String | provenance | | | Test.java:4773:24:4773:31 | source(...) : Object | Test.java:4773:16:4773:31 | (...)... : String | provenance | | | Test.java:4775:10:4775:34 | encode(...) : String | Test.java:4776:9:4776:11 | out | provenance | | @@ -3568,7 +3566,7 @@ edges | Test.java:5314:18:5314:19 | in : CharSequence | Test.java:5314:4:5314:6 | out [post update] : Http2Headers [, ] : CharSequence | provenance | MaD:283 | | Test.java:5315:28:5315:42 | getElement(...) : Entry [] : CharSequence | Test.java:5315:9:5315:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5315:39:5315:41 | out : Http2Headers [, ] : CharSequence | Test.java:79:19:79:32 | it : Http2Headers [, ] : CharSequence | provenance | | -| Test.java:5315:39:5315:41 | out : Http2Headers [, ] : CharSequence | Test.java:5315:28:5315:42 | getElement(...) : Entry [] : CharSequence | provenance | MaD:495 | +| Test.java:5315:39:5315:41 | out : Http2Headers [, ] : CharSequence | Test.java:5315:28:5315:42 | getElement(...) : Entry [] : CharSequence | provenance | MaD:493 | | Test.java:5320:22:5320:90 | (...)... : Http2Headers [, ] : Object | Test.java:5321:10:5321:11 | in : Http2Headers [, ] : Object | provenance | | | Test.java:5320:36:5320:90 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5320:22:5320:90 | (...)... : Http2Headers [, ] : Object | provenance | | | Test.java:5320:58:5320:89 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5320:36:5320:90 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3585,7 +3583,7 @@ edges | Test.java:5335:15:5335:16 | in : CharSequence | Test.java:5335:4:5335:6 | out [post update] : Http2Headers [, ] : CharSequence | provenance | MaD:286 | | Test.java:5336:28:5336:42 | getElement(...) : Entry [] : CharSequence | Test.java:5336:9:5336:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5336:39:5336:41 | out : Http2Headers [, ] : CharSequence | Test.java:79:19:79:32 | it : Http2Headers [, ] : CharSequence | provenance | | -| Test.java:5336:39:5336:41 | out : Http2Headers [, ] : CharSequence | Test.java:5336:28:5336:42 | getElement(...) : Entry [] : CharSequence | provenance | MaD:495 | +| Test.java:5336:39:5336:41 | out : Http2Headers [, ] : CharSequence | Test.java:5336:28:5336:42 | getElement(...) : Entry [] : CharSequence | provenance | MaD:493 | | Test.java:5341:22:5341:90 | (...)... : Http2Headers [, ] : Object | Test.java:5342:10:5342:11 | in : Http2Headers [, ] : Object | provenance | | | Test.java:5341:36:5341:90 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5341:22:5341:90 | (...)... : Http2Headers [, ] : Object | provenance | | | Test.java:5341:58:5341:89 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5341:36:5341:90 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3602,7 +3600,7 @@ edges | Test.java:5356:13:5356:14 | in : CharSequence | Test.java:5356:4:5356:6 | out [post update] : Http2Headers [, ] : CharSequence | provenance | MaD:289 | | Test.java:5357:28:5357:42 | getElement(...) : Entry [] : CharSequence | Test.java:5357:9:5357:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5357:39:5357:41 | out : Http2Headers [, ] : CharSequence | Test.java:79:19:79:32 | it : Http2Headers [, ] : CharSequence | provenance | | -| Test.java:5357:39:5357:41 | out : Http2Headers [, ] : CharSequence | Test.java:5357:28:5357:42 | getElement(...) : Entry [] : CharSequence | provenance | MaD:495 | +| Test.java:5357:39:5357:41 | out : Http2Headers [, ] : CharSequence | Test.java:5357:28:5357:42 | getElement(...) : Entry [] : CharSequence | provenance | MaD:493 | | Test.java:5362:22:5362:90 | (...)... : Http2Headers [, ] : Object | Test.java:5363:10:5363:11 | in : Http2Headers [, ] : Object | provenance | | | Test.java:5362:36:5362:90 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5362:22:5362:90 | (...)... : Http2Headers [, ] : Object | provenance | | | Test.java:5362:58:5362:89 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5362:36:5362:90 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3619,7 +3617,7 @@ edges | Test.java:5377:15:5377:16 | in : CharSequence | Test.java:5377:4:5377:6 | out [post update] : Http2Headers [, ] : CharSequence | provenance | MaD:292 | | Test.java:5378:28:5378:42 | getElement(...) : Entry [] : CharSequence | Test.java:5378:9:5378:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5378:39:5378:41 | out : Http2Headers [, ] : CharSequence | Test.java:79:19:79:32 | it : Http2Headers [, ] : CharSequence | provenance | | -| Test.java:5378:39:5378:41 | out : Http2Headers [, ] : CharSequence | Test.java:5378:28:5378:42 | getElement(...) : Entry [] : CharSequence | provenance | MaD:495 | +| Test.java:5378:39:5378:41 | out : Http2Headers [, ] : CharSequence | Test.java:5378:28:5378:42 | getElement(...) : Entry [] : CharSequence | provenance | MaD:493 | | Test.java:5383:22:5383:90 | (...)... : Http2Headers [, ] : Object | Test.java:5384:10:5384:11 | in : Http2Headers [, ] : Object | provenance | | | Test.java:5383:36:5383:90 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5383:22:5383:90 | (...)... : Http2Headers [, ] : Object | provenance | | | Test.java:5383:58:5383:89 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5383:36:5383:90 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3636,7 +3634,7 @@ edges | Test.java:5398:15:5398:16 | in : CharSequence | Test.java:5398:4:5398:6 | out [post update] : Http2Headers [, ] : CharSequence | provenance | MaD:295 | | Test.java:5399:28:5399:42 | getElement(...) : Entry [] : CharSequence | Test.java:5399:9:5399:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5399:39:5399:41 | out : Http2Headers [, ] : CharSequence | Test.java:79:19:79:32 | it : Http2Headers [, ] : CharSequence | provenance | | -| Test.java:5399:39:5399:41 | out : Http2Headers [, ] : CharSequence | Test.java:5399:28:5399:42 | getElement(...) : Entry [] : CharSequence | provenance | MaD:495 | +| Test.java:5399:39:5399:41 | out : Http2Headers [, ] : CharSequence | Test.java:5399:28:5399:42 | getElement(...) : Entry [] : CharSequence | provenance | MaD:493 | | Test.java:5404:22:5404:90 | (...)... : Http2Headers [, ] : Object | Test.java:5405:10:5405:11 | in : Http2Headers [, ] : Object | provenance | | | Test.java:5404:36:5404:90 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5404:22:5404:90 | (...)... : Http2Headers [, ] : Object | provenance | | | Test.java:5404:58:5404:89 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5404:36:5404:90 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3644,7 +3642,7 @@ edges | Test.java:5405:10:5405:11 | in : Http2Headers [, ] : Object | Test.java:5405:10:5405:31 | valueIterator(...) : Iterator [] : Object | provenance | MaD:297 | | Test.java:5405:10:5405:31 | valueIterator(...) : Iterator [] : Object | Test.java:5406:20:5406:22 | out : Iterator [] : Object | provenance | | | Test.java:5406:20:5406:22 | out : Iterator [] : Object | Test.java:80:19:80:32 | it : Iterator [] : Object | provenance | | -| Test.java:5406:20:5406:22 | out : Iterator [] : Object | Test.java:5406:9:5406:23 | getElement(...) | provenance | MaD:496 | +| Test.java:5406:20:5406:22 | out : Iterator [] : Object | Test.java:5406:9:5406:23 | getElement(...) | provenance | MaD:494 | | Test.java:5411:27:5411:53 | (...)... : Http2HeadersFrame | Test.java:5412:10:5412:11 | in : Http2HeadersFrame | provenance | | | Test.java:5411:46:5411:53 | source(...) : Object | Test.java:5411:27:5411:53 | (...)... : Http2HeadersFrame | provenance | | | Test.java:5412:10:5412:11 | in : Http2HeadersFrame | Test.java:5412:10:5412:21 | headers(...) : Http2Headers | provenance | MaD:298 | @@ -3673,7 +3671,7 @@ edges | Test.java:5440:52:5440:54 | out [post update] : HttpHeaders [, ] : Object | Test.java:5441:37:5441:39 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5441:26:5441:40 | getElement(...) : Entry [] : Object | Test.java:5441:9:5441:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5441:37:5441:39 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5441:37:5441:39 | out : HttpHeaders [, ] : Object | Test.java:5441:26:5441:40 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5441:37:5441:39 | out : HttpHeaders [, ] : Object | Test.java:5441:26:5441:40 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5446:22:5446:90 | (...)... : Http2Headers [, ] : Object | Test.java:5447:48:5447:49 | in : Http2Headers [, ] : Object | provenance | | | Test.java:5446:36:5446:90 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5446:22:5446:90 | (...)... : Http2Headers [, ] : Object | provenance | | | Test.java:5446:58:5446:89 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5446:36:5446:90 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3682,7 +3680,7 @@ edges | Test.java:5447:52:5447:54 | out [post update] : HttpHeaders [, ] : Object | Test.java:5448:39:5448:41 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5448:28:5448:42 | getElement(...) : Entry [] : Object | Test.java:5448:9:5448:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5448:39:5448:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5448:39:5448:41 | out : HttpHeaders [, ] : Object | Test.java:5448:28:5448:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5448:39:5448:41 | out : HttpHeaders [, ] : Object | Test.java:5448:28:5448:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5453:17:5453:33 | (...)... : ByteBuf | Test.java:5454:70:5454:71 | in : ByteBuf | provenance | | | Test.java:5453:26:5453:33 | source(...) : Object | Test.java:5453:17:5453:33 | (...)... : ByteBuf | provenance | | | Test.java:5454:10:5454:79 | toFullHttpRequest(...) : FullHttpRequest | Test.java:5455:9:5455:11 | out | provenance | | @@ -3747,7 +3745,7 @@ edges | Test.java:5524:42:5524:44 | out [post update] : Http2Headers [, ] : Object | Test.java:5525:37:5525:39 | out : Http2Headers [, ] : Object | provenance | | | Test.java:5525:26:5525:40 | getElement(...) : Entry [] : Object | Test.java:5525:9:5525:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5525:37:5525:39 | out : Http2Headers [, ] : Object | Test.java:79:19:79:32 | it : Http2Headers [, ] : Object | provenance | | -| Test.java:5525:37:5525:39 | out : Http2Headers [, ] : Object | Test.java:5525:26:5525:40 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5525:37:5525:39 | out : Http2Headers [, ] : Object | Test.java:5525:26:5525:40 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5530:21:5530:88 | (...)... : HttpHeaders [, ] : Object | Test.java:5531:38:5531:39 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5530:34:5530:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5530:21:5530:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5530:56:5530:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5530:34:5530:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3756,7 +3754,7 @@ edges | Test.java:5531:42:5531:44 | out [post update] : Http2Headers [, ] : Object | Test.java:5532:39:5532:41 | out : Http2Headers [, ] : Object | provenance | | | Test.java:5532:28:5532:42 | getElement(...) : Entry [] : Object | Test.java:5532:9:5532:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5532:39:5532:41 | out : Http2Headers [, ] : Object | Test.java:79:19:79:32 | it : Http2Headers [, ] : Object | provenance | | -| Test.java:5532:39:5532:41 | out : Http2Headers [, ] : Object | Test.java:5532:28:5532:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5532:39:5532:41 | out : Http2Headers [, ] : Object | Test.java:5532:28:5532:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5537:21:5537:86 | (...)... : HttpHeaders [, ] : Object | Test.java:5538:44:5538:45 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5537:34:5537:86 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5537:21:5537:86 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5537:56:5537:85 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:5537:34:5537:86 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3765,7 +3763,7 @@ edges | Test.java:5538:44:5538:45 | in : HttpHeaders [, ] : Object | Test.java:5538:10:5538:53 | toHttp2Headers(...) : Http2Headers [, ] : Object | provenance | MaD:312 | | Test.java:5539:26:5539:40 | getElement(...) : Entry [] : Object | Test.java:5539:9:5539:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5539:37:5539:39 | out : Http2Headers [, ] : Object | Test.java:79:19:79:32 | it : Http2Headers [, ] : Object | provenance | | -| Test.java:5539:37:5539:39 | out : Http2Headers [, ] : Object | Test.java:5539:26:5539:40 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5539:37:5539:39 | out : Http2Headers [, ] : Object | Test.java:5539:26:5539:40 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5544:21:5544:88 | (...)... : HttpHeaders [, ] : Object | Test.java:5545:44:5545:45 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5544:34:5544:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5544:21:5544:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5544:56:5544:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5544:34:5544:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3774,7 +3772,7 @@ edges | Test.java:5545:44:5545:45 | in : HttpHeaders [, ] : Object | Test.java:5545:10:5545:53 | toHttp2Headers(...) : Http2Headers [, ] : Object | provenance | MaD:313 | | Test.java:5546:28:5546:42 | getElement(...) : Entry [] : Object | Test.java:5546:9:5546:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5546:39:5546:41 | out : Http2Headers [, ] : Object | Test.java:79:19:79:32 | it : Http2Headers [, ] : Object | provenance | | -| Test.java:5546:39:5546:41 | out : Http2Headers [, ] : Object | Test.java:5546:28:5546:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5546:39:5546:41 | out : Http2Headers [, ] : Object | Test.java:5546:28:5546:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5551:22:5551:88 | (...)... : Http2Headers [, ] : Object | Test.java:5552:46:5552:47 | in : Http2Headers [, ] : Object | provenance | | | Test.java:5551:36:5551:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5551:22:5551:88 | (...)... : Http2Headers [, ] : Object | provenance | | | Test.java:5551:58:5551:87 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:5551:36:5551:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3805,29 +3803,29 @@ edges | Test.java:5580:12:5580:13 | in : CharSequence | Test.java:5580:4:5580:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:318 | | Test.java:5581:26:5581:40 | getElement(...) : Entry [] : Object | Test.java:5581:9:5581:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5581:37:5581:39 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5581:37:5581:39 | out : HttpHeaders [, ] : Object | Test.java:5581:26:5581:40 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5581:37:5581:39 | out : HttpHeaders [, ] : Object | Test.java:5581:26:5581:40 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5586:18:5586:44 | (...)... : List [] : Object | Test.java:5587:32:5587:33 | in : List [] : Object | provenance | | | Test.java:5586:28:5586:44 | of(...) : List [] : Object | Test.java:5586:18:5586:44 | (...)... : List [] : Object | provenance | | -| Test.java:5586:36:5586:43 | source(...) : Object | Test.java:5586:28:5586:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:5586:36:5586:43 | source(...) : Object | Test.java:5586:28:5586:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:5587:4:5587:6 | out [post update] : HttpHeaders [, ] : Object | Test.java:5588:39:5588:41 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5587:32:5587:33 | in : List [] : Object | Test.java:5587:4:5587:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:319 | | Test.java:5588:28:5588:42 | getElement(...) : Entry [] : Object | Test.java:5588:9:5588:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5588:39:5588:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5588:39:5588:41 | out : HttpHeaders [, ] : Object | Test.java:5588:28:5588:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5588:39:5588:41 | out : HttpHeaders [, ] : Object | Test.java:5588:28:5588:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5593:22:5593:43 | (...)... : CharSequence | Test.java:5594:12:5594:13 | in : CharSequence | provenance | | | Test.java:5593:36:5593:43 | source(...) : Object | Test.java:5593:22:5593:43 | (...)... : CharSequence | provenance | | | Test.java:5594:4:5594:6 | out [post update] : HttpHeaders [, ] : Object | Test.java:5595:37:5595:39 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5594:12:5594:13 | in : CharSequence | Test.java:5594:4:5594:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:320 | | Test.java:5595:26:5595:40 | getElement(...) : Entry [] : Object | Test.java:5595:9:5595:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5595:37:5595:39 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5595:37:5595:39 | out : HttpHeaders [, ] : Object | Test.java:5595:26:5595:40 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5595:37:5595:39 | out : HttpHeaders [, ] : Object | Test.java:5595:26:5595:40 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5600:16:5600:31 | (...)... : Object | Test.java:5601:32:5601:33 | in : Object | provenance | | | Test.java:5600:24:5600:31 | source(...) : Object | Test.java:5600:16:5600:31 | (...)... : Object | provenance | | | Test.java:5601:4:5601:6 | out [post update] : HttpHeaders [, ] : Object | Test.java:5602:39:5602:41 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5601:32:5601:33 | in : Object | Test.java:5601:4:5601:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:321 | | Test.java:5602:28:5602:42 | getElement(...) : Entry [] : Object | Test.java:5602:9:5602:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5602:39:5602:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5602:39:5602:41 | out : HttpHeaders [, ] : Object | Test.java:5602:28:5602:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5602:39:5602:41 | out : HttpHeaders [, ] : Object | Test.java:5602:28:5602:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5607:21:5607:86 | (...)... : HttpHeaders [, ] : Object | Test.java:5608:12:5608:13 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5607:34:5607:86 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5607:21:5607:86 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5607:56:5607:85 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:5607:34:5607:86 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3836,7 +3834,7 @@ edges | Test.java:5608:12:5608:13 | in : HttpHeaders [, ] : Object | Test.java:5608:4:5608:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:322 | | Test.java:5609:26:5609:40 | getElement(...) : Entry [] : Object | Test.java:5609:9:5609:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5609:37:5609:39 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5609:37:5609:39 | out : HttpHeaders [, ] : Object | Test.java:5609:26:5609:40 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5609:37:5609:39 | out : HttpHeaders [, ] : Object | Test.java:5609:26:5609:40 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5614:21:5614:88 | (...)... : HttpHeaders [, ] : Object | Test.java:5615:12:5615:13 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5614:34:5614:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5614:21:5614:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5614:56:5614:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5614:34:5614:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3845,36 +3843,36 @@ edges | Test.java:5615:12:5615:13 | in : HttpHeaders [, ] : Object | Test.java:5615:4:5615:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:323 | | Test.java:5616:28:5616:42 | getElement(...) : Entry [] : Object | Test.java:5616:9:5616:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5616:39:5616:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5616:39:5616:41 | out : HttpHeaders [, ] : Object | Test.java:5616:28:5616:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5616:39:5616:41 | out : HttpHeaders [, ] : Object | Test.java:5616:28:5616:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5621:16:5621:31 | (...)... : String | Test.java:5622:12:5622:13 | in : String | provenance | | | Test.java:5621:24:5621:31 | source(...) : Object | Test.java:5621:16:5621:31 | (...)... : String | provenance | | | Test.java:5622:4:5622:6 | out [post update] : HttpHeaders [, ] : String | Test.java:5623:37:5623:39 | out : HttpHeaders [, ] : String | provenance | | | Test.java:5622:12:5622:13 | in : String | Test.java:5622:4:5622:6 | out [post update] : HttpHeaders [, ] : String | provenance | MaD:324 | | Test.java:5623:26:5623:40 | getElement(...) : Entry [] : String | Test.java:5623:9:5623:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5623:37:5623:39 | out : HttpHeaders [, ] : String | Test.java:79:19:79:32 | it : HttpHeaders [, ] : String | provenance | | -| Test.java:5623:37:5623:39 | out : HttpHeaders [, ] : String | Test.java:5623:26:5623:40 | getElement(...) : Entry [] : String | provenance | MaD:495 | +| Test.java:5623:37:5623:39 | out : HttpHeaders [, ] : String | Test.java:5623:26:5623:40 | getElement(...) : Entry [] : String | provenance | MaD:493 | | Test.java:5628:18:5628:44 | (...)... : List [] : Object | Test.java:5629:26:5629:27 | in : List [] : Object | provenance | | | Test.java:5628:28:5628:44 | of(...) : List [] : Object | Test.java:5628:18:5628:44 | (...)... : List [] : Object | provenance | | -| Test.java:5628:36:5628:43 | source(...) : Object | Test.java:5628:28:5628:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:5628:36:5628:43 | source(...) : Object | Test.java:5628:28:5628:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:5629:4:5629:6 | out [post update] : HttpHeaders [, ] : Object | Test.java:5630:39:5630:41 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5629:26:5629:27 | in : List [] : Object | Test.java:5629:4:5629:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:325 | | Test.java:5630:28:5630:42 | getElement(...) : Entry [] : Object | Test.java:5630:9:5630:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5630:39:5630:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5630:39:5630:41 | out : HttpHeaders [, ] : Object | Test.java:5630:28:5630:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5630:39:5630:41 | out : HttpHeaders [, ] : Object | Test.java:5630:28:5630:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5635:16:5635:31 | (...)... : String | Test.java:5636:12:5636:13 | in : String | provenance | | | Test.java:5635:24:5635:31 | source(...) : Object | Test.java:5635:16:5635:31 | (...)... : String | provenance | | | Test.java:5636:4:5636:6 | out [post update] : HttpHeaders [, ] : String | Test.java:5637:37:5637:39 | out : HttpHeaders [, ] : String | provenance | | | Test.java:5636:12:5636:13 | in : String | Test.java:5636:4:5636:6 | out [post update] : HttpHeaders [, ] : String | provenance | MaD:326 | | Test.java:5637:26:5637:40 | getElement(...) : Entry [] : String | Test.java:5637:9:5637:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5637:37:5637:39 | out : HttpHeaders [, ] : String | Test.java:79:19:79:32 | it : HttpHeaders [, ] : String | provenance | | -| Test.java:5637:37:5637:39 | out : HttpHeaders [, ] : String | Test.java:5637:26:5637:40 | getElement(...) : Entry [] : String | provenance | MaD:495 | +| Test.java:5637:37:5637:39 | out : HttpHeaders [, ] : String | Test.java:5637:26:5637:40 | getElement(...) : Entry [] : String | provenance | MaD:493 | | Test.java:5642:16:5642:31 | (...)... : Object | Test.java:5643:26:5643:27 | in : Object | provenance | | | Test.java:5642:24:5642:31 | source(...) : Object | Test.java:5642:16:5642:31 | (...)... : Object | provenance | | | Test.java:5643:4:5643:6 | out [post update] : HttpHeaders [, ] : Object | Test.java:5644:39:5644:41 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5643:26:5643:27 | in : Object | Test.java:5643:4:5643:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:327 | | Test.java:5644:28:5644:42 | getElement(...) : Entry [] : Object | Test.java:5644:9:5644:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5644:39:5644:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5644:39:5644:41 | out : HttpHeaders [, ] : Object | Test.java:5644:28:5644:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5644:39:5644:41 | out : HttpHeaders [, ] : Object | Test.java:5644:28:5644:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5649:21:5649:41 | (...)... : HttpHeaders | Test.java:5650:10:5650:11 | in : HttpHeaders | provenance | | | Test.java:5649:34:5649:41 | source(...) : Object | Test.java:5649:21:5649:41 | (...)... : HttpHeaders | provenance | | | Test.java:5650:10:5650:11 | in : HttpHeaders | Test.java:5650:10:5650:51 | add(...) : HttpHeaders | provenance | MaD:328 | @@ -3905,7 +3903,7 @@ edges | Test.java:5692:15:5692:16 | in : CharSequence | Test.java:5692:4:5692:6 | out [post update] : HttpHeaders [, ] : CharSequence | provenance | MaD:329 | | Test.java:5693:26:5693:40 | getElement(...) : Entry [] : CharSequence | Test.java:5693:9:5693:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5693:37:5693:39 | out : HttpHeaders [, ] : CharSequence | Test.java:79:19:79:32 | it : HttpHeaders [, ] : CharSequence | provenance | | -| Test.java:5693:37:5693:39 | out : HttpHeaders [, ] : CharSequence | Test.java:5693:26:5693:40 | getElement(...) : Entry [] : CharSequence | provenance | MaD:495 | +| Test.java:5693:37:5693:39 | out : HttpHeaders [, ] : CharSequence | Test.java:5693:26:5693:40 | getElement(...) : Entry [] : CharSequence | provenance | MaD:493 | | Test.java:5698:21:5698:41 | (...)... : HttpHeaders | Test.java:5699:10:5699:11 | in : HttpHeaders | provenance | | | Test.java:5698:34:5698:41 | source(...) : Object | Test.java:5698:21:5698:41 | (...)... : HttpHeaders | provenance | | | Test.java:5699:10:5699:11 | in : HttpHeaders | Test.java:5699:10:5699:36 | addShort(...) : HttpHeaders | provenance | MaD:332 | @@ -3916,7 +3914,7 @@ edges | Test.java:5706:17:5706:18 | in : CharSequence | Test.java:5706:4:5706:6 | out [post update] : HttpHeaders [, ] : CharSequence | provenance | MaD:331 | | Test.java:5707:26:5707:40 | getElement(...) : Entry [] : CharSequence | Test.java:5707:9:5707:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5707:37:5707:39 | out : HttpHeaders [, ] : CharSequence | Test.java:79:19:79:32 | it : HttpHeaders [, ] : CharSequence | provenance | | -| Test.java:5707:37:5707:39 | out : HttpHeaders [, ] : CharSequence | Test.java:5707:26:5707:40 | getElement(...) : Entry [] : CharSequence | provenance | MaD:495 | +| Test.java:5707:37:5707:39 | out : HttpHeaders [, ] : CharSequence | Test.java:5707:26:5707:40 | getElement(...) : Entry [] : CharSequence | provenance | MaD:493 | | Test.java:5712:21:5712:86 | (...)... : HttpHeaders [, ] : Object | Test.java:5713:10:5713:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5712:34:5712:86 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5712:21:5712:86 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5712:56:5712:85 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:5712:34:5712:86 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3925,7 +3923,7 @@ edges | Test.java:5713:10:5713:18 | copy(...) : HttpHeaders [, ] : Object | Test.java:5714:37:5714:39 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5714:26:5714:40 | getElement(...) : Entry [] : Object | Test.java:5714:9:5714:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5714:37:5714:39 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5714:37:5714:39 | out : HttpHeaders [, ] : Object | Test.java:5714:26:5714:40 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5714:37:5714:39 | out : HttpHeaders [, ] : Object | Test.java:5714:26:5714:40 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5719:21:5719:88 | (...)... : HttpHeaders [, ] : Object | Test.java:5720:10:5720:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5719:34:5719:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5719:21:5719:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5719:56:5719:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5719:34:5719:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3934,7 +3932,7 @@ edges | Test.java:5720:10:5720:18 | copy(...) : HttpHeaders [, ] : Object | Test.java:5721:39:5721:41 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5721:28:5721:42 | getElement(...) : Entry [] : Object | Test.java:5721:9:5721:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5721:39:5721:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5721:39:5721:41 | out : HttpHeaders [, ] : Object | Test.java:5721:28:5721:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5721:39:5721:41 | out : HttpHeaders [, ] : Object | Test.java:5721:28:5721:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5726:21:5726:86 | (...)... : HttpHeaders [, ] : Object | Test.java:5727:10:5727:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5726:34:5726:86 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5726:21:5726:86 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5726:56:5726:85 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:5726:34:5726:86 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3943,7 +3941,7 @@ edges | Test.java:5727:10:5727:21 | entries(...) : List [, ] : Object | Test.java:5728:37:5728:39 | out : List [, ] : Object | provenance | | | Test.java:5728:26:5728:40 | getElement(...) : Object [] : Object | Test.java:5728:9:5728:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5728:37:5728:39 | out : List [, ] : Object | Test.java:79:19:79:32 | it : List [, ] : Object | provenance | | -| Test.java:5728:37:5728:39 | out : List [, ] : Object | Test.java:5728:26:5728:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:5728:37:5728:39 | out : List [, ] : Object | Test.java:5728:26:5728:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:5733:21:5733:88 | (...)... : HttpHeaders [, ] : Object | Test.java:5734:10:5734:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5733:34:5733:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5733:21:5733:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5733:56:5733:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5733:34:5733:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3952,7 +3950,7 @@ edges | Test.java:5734:10:5734:21 | entries(...) : List [, ] : Object | Test.java:5735:39:5735:41 | out : List [, ] : Object | provenance | | | Test.java:5735:28:5735:42 | getElement(...) : Object [] : Object | Test.java:5735:9:5735:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5735:39:5735:41 | out : List [, ] : Object | Test.java:79:19:79:32 | it : List [, ] : Object | provenance | | -| Test.java:5735:39:5735:41 | out : List [, ] : Object | Test.java:5735:28:5735:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:5735:39:5735:41 | out : List [, ] : Object | Test.java:5735:28:5735:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:5740:21:5740:88 | (...)... : HttpHeaders [, ] : Object | Test.java:5741:10:5741:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5740:34:5740:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5740:21:5740:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5740:56:5740:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5740:34:5740:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3982,7 +3980,7 @@ edges | Test.java:5770:10:5770:11 | in : HttpHeaders [, ] : Object | Test.java:5770:10:5770:38 | getAll(...) : List [] : Object | provenance | MaD:339 | | Test.java:5770:10:5770:38 | getAll(...) : List [] : Object | Test.java:5771:20:5771:22 | out : List [] : Object | provenance | | | Test.java:5771:20:5771:22 | out : List [] : Object | Test.java:79:19:79:32 | it : List [] : Object | provenance | | -| Test.java:5771:20:5771:22 | out : List [] : Object | Test.java:5771:9:5771:23 | getElement(...) | provenance | MaD:495 | +| Test.java:5771:20:5771:22 | out : List [] : Object | Test.java:5771:9:5771:23 | getElement(...) | provenance | MaD:493 | | Test.java:5776:21:5776:88 | (...)... : HttpHeaders [, ] : Object | Test.java:5777:10:5777:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5776:34:5776:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5776:21:5776:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5776:56:5776:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5776:34:5776:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3990,7 +3988,7 @@ edges | Test.java:5777:10:5777:11 | in : HttpHeaders [, ] : Object | Test.java:5777:10:5777:32 | getAll(...) : List [] : Object | provenance | MaD:339 | | Test.java:5777:10:5777:32 | getAll(...) : List [] : Object | Test.java:5778:20:5778:22 | out : List [] : Object | provenance | | | Test.java:5778:20:5778:22 | out : List [] : Object | Test.java:79:19:79:32 | it : List [] : Object | provenance | | -| Test.java:5778:20:5778:22 | out : List [] : Object | Test.java:5778:9:5778:23 | getElement(...) | provenance | MaD:495 | +| Test.java:5778:20:5778:22 | out : List [] : Object | Test.java:5778:9:5778:23 | getElement(...) | provenance | MaD:493 | | Test.java:5783:21:5783:88 | (...)... : HttpHeaders [, ] : Object | Test.java:5784:10:5784:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5783:34:5783:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5783:21:5783:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5783:56:5783:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5783:34:5783:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -3998,7 +3996,7 @@ edges | Test.java:5784:10:5784:11 | in : HttpHeaders [, ] : Object | Test.java:5784:10:5784:32 | getAllAsString(...) : List [] : Object | provenance | MaD:340 | | Test.java:5784:10:5784:32 | getAllAsString(...) : List [] : Object | Test.java:5785:20:5785:22 | out : List [] : Object | provenance | | | Test.java:5785:20:5785:22 | out : List [] : Object | Test.java:79:19:79:32 | it : List [] : Object | provenance | | -| Test.java:5785:20:5785:22 | out : List [] : Object | Test.java:5785:9:5785:23 | getElement(...) | provenance | MaD:495 | +| Test.java:5785:20:5785:22 | out : List [] : Object | Test.java:5785:9:5785:23 | getElement(...) | provenance | MaD:493 | | Test.java:5790:21:5790:88 | (...)... : HttpHeaders [, ] : Object | Test.java:5791:10:5791:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5790:34:5790:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5790:21:5790:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5790:56:5790:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5790:34:5790:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4049,7 +4047,7 @@ edges | Test.java:5861:10:5861:30 | iteratorAsString(...) : Iterator [, ] : Object | Test.java:5862:37:5862:39 | out : Iterator [, ] : Object | provenance | | | Test.java:5862:26:5862:40 | getElement(...) : Object [] : Object | Test.java:5862:9:5862:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5862:37:5862:39 | out : Iterator [, ] : Object | Test.java:80:19:80:32 | it : Iterator [, ] : Object | provenance | | -| Test.java:5862:37:5862:39 | out : Iterator [, ] : Object | Test.java:5862:26:5862:40 | getElement(...) : Object [] : Object | provenance | MaD:496 | +| Test.java:5862:37:5862:39 | out : Iterator [, ] : Object | Test.java:5862:26:5862:40 | getElement(...) : Object [] : Object | provenance | MaD:494 | | Test.java:5867:21:5867:88 | (...)... : HttpHeaders [, ] : Object | Test.java:5868:10:5868:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5867:34:5867:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5867:21:5867:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5867:56:5867:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5867:34:5867:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4058,7 +4056,7 @@ edges | Test.java:5868:10:5868:30 | iteratorAsString(...) : Iterator [, ] : Object | Test.java:5869:39:5869:41 | out : Iterator [, ] : Object | provenance | | | Test.java:5869:28:5869:42 | getElement(...) : Object [] : Object | Test.java:5869:9:5869:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5869:39:5869:41 | out : Iterator [, ] : Object | Test.java:80:19:80:32 | it : Iterator [, ] : Object | provenance | | -| Test.java:5869:39:5869:41 | out : Iterator [, ] : Object | Test.java:5869:28:5869:42 | getElement(...) : Object [] : Object | provenance | MaD:496 | +| Test.java:5869:39:5869:41 | out : Iterator [, ] : Object | Test.java:5869:28:5869:42 | getElement(...) : Object [] : Object | provenance | MaD:494 | | Test.java:5874:21:5874:86 | (...)... : HttpHeaders [, ] : Object | Test.java:5875:10:5875:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5874:34:5874:86 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5874:21:5874:86 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5874:56:5874:85 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:5874:34:5874:86 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4067,7 +4065,7 @@ edges | Test.java:5875:10:5875:34 | iteratorCharSequence(...) : Iterator [, ] : Object | Test.java:5876:37:5876:39 | out : Iterator [, ] : Object | provenance | | | Test.java:5876:26:5876:40 | getElement(...) : Object [] : Object | Test.java:5876:9:5876:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5876:37:5876:39 | out : Iterator [, ] : Object | Test.java:80:19:80:32 | it : Iterator [, ] : Object | provenance | | -| Test.java:5876:37:5876:39 | out : Iterator [, ] : Object | Test.java:5876:26:5876:40 | getElement(...) : Object [] : Object | provenance | MaD:496 | +| Test.java:5876:37:5876:39 | out : Iterator [, ] : Object | Test.java:5876:26:5876:40 | getElement(...) : Object [] : Object | provenance | MaD:494 | | Test.java:5881:21:5881:88 | (...)... : HttpHeaders [, ] : Object | Test.java:5882:10:5882:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5881:34:5881:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5881:21:5881:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5881:56:5881:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5881:34:5881:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4076,7 +4074,7 @@ edges | Test.java:5882:10:5882:34 | iteratorCharSequence(...) : Iterator [, ] : Object | Test.java:5883:39:5883:41 | out : Iterator [, ] : Object | provenance | | | Test.java:5883:28:5883:42 | getElement(...) : Object [] : Object | Test.java:5883:9:5883:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5883:39:5883:41 | out : Iterator [, ] : Object | Test.java:80:19:80:32 | it : Iterator [, ] : Object | provenance | | -| Test.java:5883:39:5883:41 | out : Iterator [, ] : Object | Test.java:5883:28:5883:42 | getElement(...) : Object [] : Object | provenance | MaD:496 | +| Test.java:5883:39:5883:41 | out : Iterator [, ] : Object | Test.java:5883:28:5883:42 | getElement(...) : Object [] : Object | provenance | MaD:494 | | Test.java:5888:21:5888:86 | (...)... : HttpHeaders [, ] : Object | Test.java:5889:10:5889:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5888:34:5888:86 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5888:21:5888:86 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5888:56:5888:85 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:5888:34:5888:86 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4084,7 +4082,7 @@ edges | Test.java:5889:10:5889:11 | in : HttpHeaders [, ] : Object | Test.java:5889:10:5889:19 | names(...) : Set [] : Object | provenance | MaD:350 | | Test.java:5889:10:5889:19 | names(...) : Set [] : Object | Test.java:5890:20:5890:22 | out : Set [] : Object | provenance | | | Test.java:5890:20:5890:22 | out : Set [] : Object | Test.java:79:19:79:32 | it : Set [] : Object | provenance | | -| Test.java:5890:20:5890:22 | out : Set [] : Object | Test.java:5890:9:5890:23 | getElement(...) | provenance | MaD:495 | +| Test.java:5890:20:5890:22 | out : Set [] : Object | Test.java:5890:9:5890:23 | getElement(...) | provenance | MaD:493 | | Test.java:5895:16:5895:31 | (...)... : String | Test.java:5896:32:5896:33 | in : String | provenance | | | Test.java:5895:24:5895:31 | source(...) : Object | Test.java:5895:16:5895:31 | (...)... : String | provenance | | | Test.java:5896:10:5896:34 | newEntity(...) : CharSequence | Test.java:5897:9:5897:11 | out | provenance | | @@ -4103,29 +4101,29 @@ edges | Test.java:5917:12:5917:13 | in : CharSequence | Test.java:5917:4:5917:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:353 | | Test.java:5918:26:5918:40 | getElement(...) : Entry [] : Object | Test.java:5918:9:5918:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5918:37:5918:39 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5918:37:5918:39 | out : HttpHeaders [, ] : Object | Test.java:5918:26:5918:40 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5918:37:5918:39 | out : HttpHeaders [, ] : Object | Test.java:5918:26:5918:40 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5923:18:5923:44 | (...)... : List [] : Object | Test.java:5924:32:5924:33 | in : List [] : Object | provenance | | | Test.java:5923:28:5923:44 | of(...) : List [] : Object | Test.java:5923:18:5923:44 | (...)... : List [] : Object | provenance | | -| Test.java:5923:36:5923:43 | source(...) : Object | Test.java:5923:28:5923:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:5923:36:5923:43 | source(...) : Object | Test.java:5923:28:5923:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:5924:4:5924:6 | out [post update] : HttpHeaders [, ] : Object | Test.java:5925:39:5925:41 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5924:32:5924:33 | in : List [] : Object | Test.java:5924:4:5924:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:354 | | Test.java:5925:28:5925:42 | getElement(...) : Entry [] : Object | Test.java:5925:9:5925:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5925:39:5925:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5925:39:5925:41 | out : HttpHeaders [, ] : Object | Test.java:5925:28:5925:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5925:39:5925:41 | out : HttpHeaders [, ] : Object | Test.java:5925:28:5925:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5930:22:5930:43 | (...)... : CharSequence | Test.java:5931:12:5931:13 | in : CharSequence | provenance | | | Test.java:5930:36:5930:43 | source(...) : Object | Test.java:5930:22:5930:43 | (...)... : CharSequence | provenance | | | Test.java:5931:4:5931:6 | out [post update] : HttpHeaders [, ] : Object | Test.java:5932:37:5932:39 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5931:12:5931:13 | in : CharSequence | Test.java:5931:4:5931:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:355 | | Test.java:5932:26:5932:40 | getElement(...) : Entry [] : Object | Test.java:5932:9:5932:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5932:37:5932:39 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5932:37:5932:39 | out : HttpHeaders [, ] : Object | Test.java:5932:26:5932:40 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5932:37:5932:39 | out : HttpHeaders [, ] : Object | Test.java:5932:26:5932:40 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5937:16:5937:31 | (...)... : Object | Test.java:5938:32:5938:33 | in : Object | provenance | | | Test.java:5937:24:5937:31 | source(...) : Object | Test.java:5937:16:5937:31 | (...)... : Object | provenance | | | Test.java:5938:4:5938:6 | out [post update] : HttpHeaders [, ] : Object | Test.java:5939:39:5939:41 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5938:32:5938:33 | in : Object | Test.java:5938:4:5938:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:356 | | Test.java:5939:28:5939:42 | getElement(...) : Entry [] : Object | Test.java:5939:9:5939:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5939:39:5939:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5939:39:5939:41 | out : HttpHeaders [, ] : Object | Test.java:5939:28:5939:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5939:39:5939:41 | out : HttpHeaders [, ] : Object | Test.java:5939:28:5939:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5944:21:5944:86 | (...)... : HttpHeaders [, ] : Object | Test.java:5945:12:5945:13 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5944:34:5944:86 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5944:21:5944:86 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5944:56:5944:85 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:5944:34:5944:86 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4134,7 +4132,7 @@ edges | Test.java:5945:12:5945:13 | in : HttpHeaders [, ] : Object | Test.java:5945:4:5945:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:357 | | Test.java:5946:26:5946:40 | getElement(...) : Entry [] : Object | Test.java:5946:9:5946:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5946:37:5946:39 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5946:37:5946:39 | out : HttpHeaders [, ] : Object | Test.java:5946:26:5946:40 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5946:37:5946:39 | out : HttpHeaders [, ] : Object | Test.java:5946:26:5946:40 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5951:21:5951:88 | (...)... : HttpHeaders [, ] : Object | Test.java:5952:12:5952:13 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:5951:34:5951:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:5951:21:5951:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:5951:56:5951:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:5951:34:5951:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4143,36 +4141,36 @@ edges | Test.java:5952:12:5952:13 | in : HttpHeaders [, ] : Object | Test.java:5952:4:5952:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:358 | | Test.java:5953:28:5953:42 | getElement(...) : Entry [] : Object | Test.java:5953:9:5953:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5953:39:5953:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5953:39:5953:41 | out : HttpHeaders [, ] : Object | Test.java:5953:28:5953:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5953:39:5953:41 | out : HttpHeaders [, ] : Object | Test.java:5953:28:5953:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5958:16:5958:31 | (...)... : String | Test.java:5959:12:5959:13 | in : String | provenance | | | Test.java:5958:24:5958:31 | source(...) : Object | Test.java:5958:16:5958:31 | (...)... : String | provenance | | | Test.java:5959:4:5959:6 | out [post update] : HttpHeaders [, ] : String | Test.java:5960:37:5960:39 | out : HttpHeaders [, ] : String | provenance | | | Test.java:5959:12:5959:13 | in : String | Test.java:5959:4:5959:6 | out [post update] : HttpHeaders [, ] : String | provenance | MaD:359 | | Test.java:5960:26:5960:40 | getElement(...) : Entry [] : String | Test.java:5960:9:5960:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5960:37:5960:39 | out : HttpHeaders [, ] : String | Test.java:79:19:79:32 | it : HttpHeaders [, ] : String | provenance | | -| Test.java:5960:37:5960:39 | out : HttpHeaders [, ] : String | Test.java:5960:26:5960:40 | getElement(...) : Entry [] : String | provenance | MaD:495 | +| Test.java:5960:37:5960:39 | out : HttpHeaders [, ] : String | Test.java:5960:26:5960:40 | getElement(...) : Entry [] : String | provenance | MaD:493 | | Test.java:5965:18:5965:44 | (...)... : List [] : Object | Test.java:5966:26:5966:27 | in : List [] : Object | provenance | | | Test.java:5965:28:5965:44 | of(...) : List [] : Object | Test.java:5965:18:5965:44 | (...)... : List [] : Object | provenance | | -| Test.java:5965:36:5965:43 | source(...) : Object | Test.java:5965:28:5965:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:5965:36:5965:43 | source(...) : Object | Test.java:5965:28:5965:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:5966:4:5966:6 | out [post update] : HttpHeaders [, ] : Object | Test.java:5967:39:5967:41 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5966:26:5966:27 | in : List [] : Object | Test.java:5966:4:5966:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:360 | | Test.java:5967:28:5967:42 | getElement(...) : Entry [] : Object | Test.java:5967:9:5967:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5967:39:5967:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5967:39:5967:41 | out : HttpHeaders [, ] : Object | Test.java:5967:28:5967:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5967:39:5967:41 | out : HttpHeaders [, ] : Object | Test.java:5967:28:5967:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5972:16:5972:31 | (...)... : String | Test.java:5973:12:5973:13 | in : String | provenance | | | Test.java:5972:24:5972:31 | source(...) : Object | Test.java:5972:16:5972:31 | (...)... : String | provenance | | | Test.java:5973:4:5973:6 | out [post update] : HttpHeaders [, ] : String | Test.java:5974:37:5974:39 | out : HttpHeaders [, ] : String | provenance | | | Test.java:5973:12:5973:13 | in : String | Test.java:5973:4:5973:6 | out [post update] : HttpHeaders [, ] : String | provenance | MaD:361 | | Test.java:5974:26:5974:40 | getElement(...) : Entry [] : String | Test.java:5974:9:5974:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:5974:37:5974:39 | out : HttpHeaders [, ] : String | Test.java:79:19:79:32 | it : HttpHeaders [, ] : String | provenance | | -| Test.java:5974:37:5974:39 | out : HttpHeaders [, ] : String | Test.java:5974:26:5974:40 | getElement(...) : Entry [] : String | provenance | MaD:495 | +| Test.java:5974:37:5974:39 | out : HttpHeaders [, ] : String | Test.java:5974:26:5974:40 | getElement(...) : Entry [] : String | provenance | MaD:493 | | Test.java:5979:16:5979:31 | (...)... : Object | Test.java:5980:26:5980:27 | in : Object | provenance | | | Test.java:5979:24:5979:31 | source(...) : Object | Test.java:5979:16:5979:31 | (...)... : Object | provenance | | | Test.java:5980:4:5980:6 | out [post update] : HttpHeaders [, ] : Object | Test.java:5981:39:5981:41 | out : HttpHeaders [, ] : Object | provenance | | | Test.java:5980:26:5980:27 | in : Object | Test.java:5980:4:5980:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:362 | | Test.java:5981:28:5981:42 | getElement(...) : Entry [] : Object | Test.java:5981:9:5981:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:5981:39:5981:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:5981:39:5981:41 | out : HttpHeaders [, ] : Object | Test.java:5981:28:5981:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:5981:39:5981:41 | out : HttpHeaders [, ] : Object | Test.java:5981:28:5981:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:5986:21:5986:41 | (...)... : HttpHeaders | Test.java:5987:10:5987:11 | in : HttpHeaders | provenance | | | Test.java:5986:34:5986:41 | source(...) : Object | Test.java:5986:21:5986:41 | (...)... : HttpHeaders | provenance | | | Test.java:5987:10:5987:11 | in : HttpHeaders | Test.java:5987:10:5987:51 | set(...) : HttpHeaders | provenance | MaD:363 | @@ -4205,7 +4203,7 @@ edges | Test.java:6029:15:6029:16 | in : HttpHeaders [, ] : Object | Test.java:6029:4:6029:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:364 | | Test.java:6030:26:6030:40 | getElement(...) : Entry [] : Object | Test.java:6030:9:6030:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6030:37:6030:39 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:6030:37:6030:39 | out : HttpHeaders [, ] : Object | Test.java:6030:26:6030:40 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:6030:37:6030:39 | out : HttpHeaders [, ] : Object | Test.java:6030:26:6030:40 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:6035:21:6035:88 | (...)... : HttpHeaders [, ] : Object | Test.java:6036:15:6036:16 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:6035:34:6035:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:6035:21:6035:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:6035:56:6035:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6035:34:6035:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4214,7 +4212,7 @@ edges | Test.java:6036:15:6036:16 | in : HttpHeaders [, ] : Object | Test.java:6036:4:6036:6 | out [post update] : HttpHeaders [, ] : Object | provenance | MaD:365 | | Test.java:6037:28:6037:42 | getElement(...) : Entry [] : Object | Test.java:6037:9:6037:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6037:39:6037:41 | out : HttpHeaders [, ] : Object | Test.java:79:19:79:32 | it : HttpHeaders [, ] : Object | provenance | | -| Test.java:6037:39:6037:41 | out : HttpHeaders [, ] : Object | Test.java:6037:28:6037:42 | getElement(...) : Entry [] : Object | provenance | MaD:495 | +| Test.java:6037:39:6037:41 | out : HttpHeaders [, ] : Object | Test.java:6037:28:6037:42 | getElement(...) : Entry [] : Object | provenance | MaD:493 | | Test.java:6042:21:6042:41 | (...)... : HttpHeaders | Test.java:6043:10:6043:11 | in : HttpHeaders | provenance | | | Test.java:6042:34:6042:41 | source(...) : Object | Test.java:6042:21:6042:41 | (...)... : HttpHeaders | provenance | | | Test.java:6043:10:6043:11 | in : HttpHeaders | Test.java:6043:10:6043:27 | setInt(...) : HttpHeaders | provenance | MaD:368 | @@ -4225,7 +4223,7 @@ edges | Test.java:6050:15:6050:16 | in : CharSequence | Test.java:6050:4:6050:6 | out [post update] : HttpHeaders [, ] : CharSequence | provenance | MaD:367 | | Test.java:6051:26:6051:40 | getElement(...) : Entry [] : CharSequence | Test.java:6051:9:6051:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6051:37:6051:39 | out : HttpHeaders [, ] : CharSequence | Test.java:79:19:79:32 | it : HttpHeaders [, ] : CharSequence | provenance | | -| Test.java:6051:37:6051:39 | out : HttpHeaders [, ] : CharSequence | Test.java:6051:26:6051:40 | getElement(...) : Entry [] : CharSequence | provenance | MaD:495 | +| Test.java:6051:37:6051:39 | out : HttpHeaders [, ] : CharSequence | Test.java:6051:26:6051:40 | getElement(...) : Entry [] : CharSequence | provenance | MaD:493 | | Test.java:6056:21:6056:41 | (...)... : HttpHeaders | Test.java:6057:10:6057:11 | in : HttpHeaders | provenance | | | Test.java:6056:34:6056:41 | source(...) : Object | Test.java:6056:21:6056:41 | (...)... : HttpHeaders | provenance | | | Test.java:6057:10:6057:11 | in : HttpHeaders | Test.java:6057:10:6057:36 | setShort(...) : HttpHeaders | provenance | MaD:370 | @@ -4236,7 +4234,7 @@ edges | Test.java:6064:17:6064:18 | in : CharSequence | Test.java:6064:4:6064:6 | out [post update] : HttpHeaders [, ] : CharSequence | provenance | MaD:369 | | Test.java:6065:26:6065:40 | getElement(...) : Entry [] : CharSequence | Test.java:6065:9:6065:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6065:37:6065:39 | out : HttpHeaders [, ] : CharSequence | Test.java:79:19:79:32 | it : HttpHeaders [, ] : CharSequence | provenance | | -| Test.java:6065:37:6065:39 | out : HttpHeaders [, ] : CharSequence | Test.java:6065:26:6065:40 | getElement(...) : Entry [] : CharSequence | provenance | MaD:495 | +| Test.java:6065:37:6065:39 | out : HttpHeaders [, ] : CharSequence | Test.java:6065:26:6065:40 | getElement(...) : Entry [] : CharSequence | provenance | MaD:493 | | Test.java:6070:21:6070:86 | (...)... : HttpHeaders [, ] : Object | Test.java:6071:10:6071:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:6070:34:6070:86 | newWithElementDefault(...) : Object [, ] : Object | Test.java:6070:21:6070:86 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:6070:56:6070:85 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:6070:34:6070:86 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4256,7 +4254,7 @@ edges | Test.java:6085:10:6085:11 | in : HttpHeaders [, ] : Object | Test.java:6085:10:6085:43 | valueCharSequenceIterator(...) : Iterator [] : Object | provenance | MaD:373 | | Test.java:6085:10:6085:43 | valueCharSequenceIterator(...) : Iterator [] : Object | Test.java:6086:20:6086:22 | out : Iterator [] : Object | provenance | | | Test.java:6086:20:6086:22 | out : Iterator [] : Object | Test.java:80:19:80:32 | it : Iterator [] : Object | provenance | | -| Test.java:6086:20:6086:22 | out : Iterator [] : Object | Test.java:6086:9:6086:23 | getElement(...) | provenance | MaD:496 | +| Test.java:6086:20:6086:22 | out : Iterator [] : Object | Test.java:6086:9:6086:23 | getElement(...) | provenance | MaD:494 | | Test.java:6091:21:6091:88 | (...)... : HttpHeaders [, ] : Object | Test.java:6092:10:6092:11 | in : HttpHeaders [, ] : Object | provenance | | | Test.java:6091:34:6091:88 | newWithElementDefault(...) : Object [, ] : Object | Test.java:6091:21:6091:88 | (...)... : HttpHeaders [, ] : Object | provenance | | | Test.java:6091:56:6091:87 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6091:34:6091:88 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4264,7 +4262,7 @@ edges | Test.java:6092:10:6092:11 | in : HttpHeaders [, ] : Object | Test.java:6092:10:6092:37 | valueStringIterator(...) : Iterator [] : Object | provenance | MaD:374 | | Test.java:6092:10:6092:37 | valueStringIterator(...) : Iterator [] : Object | Test.java:6093:20:6093:22 | out : Iterator [] : Object | provenance | | | Test.java:6093:20:6093:22 | out : Iterator [] : Object | Test.java:80:19:80:32 | it : Iterator [] : Object | provenance | | -| Test.java:6093:20:6093:22 | out : Iterator [] : Object | Test.java:6093:9:6093:23 | getElement(...) | provenance | MaD:496 | +| Test.java:6093:20:6093:22 | out : Iterator [] : Object | Test.java:6093:9:6093:23 | getElement(...) | provenance | MaD:494 | | Test.java:6098:21:6098:41 | (...)... : HttpMessage | Test.java:6099:10:6099:11 | in : HttpMessage | provenance | | | Test.java:6098:34:6098:41 | source(...) : Object | Test.java:6098:21:6098:41 | (...)... : HttpMessage | provenance | | | Test.java:6099:10:6099:11 | in : HttpMessage | Test.java:6099:10:6099:21 | headers(...) : HttpHeaders | provenance | MaD:375 | @@ -4369,7 +4367,7 @@ edges | Test.java:6269:12:6269:13 | in : Headers [, ] : Object | Test.java:6269:4:6269:6 | out [post update] : Headers [, ] : Object | provenance | MaD:388 | | Test.java:6270:26:6270:40 | getElement(...) : Object [] : Object | Test.java:6270:9:6270:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6270:37:6270:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6270:37:6270:39 | out : Headers [, ] : Object | Test.java:6270:26:6270:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6270:37:6270:39 | out : Headers [, ] : Object | Test.java:6270:26:6270:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6275:17:6275:80 | (...)... : Headers [, ] : Object | Test.java:6276:12:6276:13 | in : Headers [, ] : Object | provenance | | | Test.java:6275:26:6275:80 | newWithElementDefault(...) : Object [, ] : Object | Test.java:6275:17:6275:80 | (...)... : Headers [, ] : Object | provenance | | | Test.java:6275:48:6275:79 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6275:26:6275:80 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4378,43 +4376,43 @@ edges | Test.java:6276:12:6276:13 | in : Headers [, ] : Object | Test.java:6276:4:6276:6 | out [post update] : Headers [, ] : Object | provenance | MaD:389 | | Test.java:6277:28:6277:42 | getElement(...) : Object [] : Object | Test.java:6277:9:6277:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6277:39:6277:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6277:39:6277:41 | out : Headers [, ] : Object | Test.java:6277:28:6277:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6277:39:6277:41 | out : Headers [, ] : Object | Test.java:6277:28:6277:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6282:16:6282:31 | (...)... : Object | Test.java:6283:12:6283:13 | in : Object | provenance | | | Test.java:6282:24:6282:31 | source(...) : Object | Test.java:6282:16:6282:31 | (...)... : Object | provenance | | | Test.java:6283:4:6283:6 | out [post update] : Headers [, ] : Object | Test.java:6284:37:6284:39 | out : Headers [, ] : Object | provenance | | | Test.java:6283:12:6283:13 | in : Object | Test.java:6283:4:6283:6 | out [post update] : Headers [, ] : Object | provenance | MaD:390 | | Test.java:6284:26:6284:40 | getElement(...) : Object [] : Object | Test.java:6284:9:6284:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6284:37:6284:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6284:37:6284:39 | out : Headers [, ] : Object | Test.java:6284:26:6284:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6284:37:6284:39 | out : Headers [, ] : Object | Test.java:6284:26:6284:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6289:18:6289:44 | (...)... : List [] : Object | Test.java:6290:26:6290:27 | in : List [] : Object | provenance | | | Test.java:6289:28:6289:44 | of(...) : List [] : Object | Test.java:6289:18:6289:44 | (...)... : List [] : Object | provenance | | -| Test.java:6289:36:6289:43 | source(...) : Object | Test.java:6289:28:6289:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:6289:36:6289:43 | source(...) : Object | Test.java:6289:28:6289:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:6290:4:6290:6 | out [post update] : Headers [, ] : Object | Test.java:6291:39:6291:41 | out : Headers [, ] : Object | provenance | | | Test.java:6290:26:6290:27 | in : List [] : Object | Test.java:6290:4:6290:6 | out [post update] : Headers [, ] : Object | provenance | MaD:391 | | Test.java:6291:28:6291:42 | getElement(...) : Object [] : Object | Test.java:6291:9:6291:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6291:39:6291:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6291:39:6291:41 | out : Headers [, ] : Object | Test.java:6291:28:6291:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6291:39:6291:41 | out : Headers [, ] : Object | Test.java:6291:28:6291:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6296:16:6296:31 | (...)... : Object | Test.java:6297:12:6297:13 | in : Object | provenance | | | Test.java:6296:24:6296:31 | source(...) : Object | Test.java:6296:16:6296:31 | (...)... : Object | provenance | | | Test.java:6297:4:6297:6 | out [post update] : Headers [, ] : Object | Test.java:6298:37:6298:39 | out : Headers [, ] : Object | provenance | | | Test.java:6297:12:6297:13 | in : Object | Test.java:6297:4:6297:6 | out [post update] : Headers [, ] : Object | provenance | MaD:392 | | Test.java:6298:26:6298:40 | getElement(...) : Object [] : Object | Test.java:6298:9:6298:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6298:37:6298:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6298:37:6298:39 | out : Headers [, ] : Object | Test.java:6298:26:6298:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6298:37:6298:39 | out : Headers [, ] : Object | Test.java:6298:26:6298:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6303:16:6303:31 | (...)... : Object | Test.java:6304:26:6304:27 | in : Object | provenance | | | Test.java:6303:24:6303:31 | source(...) : Object | Test.java:6303:16:6303:31 | (...)... : Object | provenance | | | Test.java:6304:4:6304:6 | out [post update] : Headers [, ] : Object | Test.java:6305:39:6305:41 | out : Headers [, ] : Object | provenance | | | Test.java:6304:26:6304:27 | in : Object | Test.java:6304:4:6304:6 | out [post update] : Headers [, ] : Object | provenance | MaD:393 | | Test.java:6305:28:6305:42 | getElement(...) : Object [] : Object | Test.java:6305:9:6305:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6305:39:6305:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6305:39:6305:41 | out : Headers [, ] : Object | Test.java:6305:28:6305:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6305:39:6305:41 | out : Headers [, ] : Object | Test.java:6305:28:6305:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6310:16:6310:31 | (...)... : Object | Test.java:6311:12:6311:13 | in : Object | provenance | | | Test.java:6310:24:6310:31 | source(...) : Object | Test.java:6310:16:6310:31 | (...)... : Object | provenance | | | Test.java:6311:4:6311:6 | out [post update] : Headers [, ] : Object | Test.java:6312:37:6312:39 | out : Headers [, ] : Object | provenance | | | Test.java:6311:12:6311:13 | in : Object | Test.java:6311:4:6311:6 | out [post update] : Headers [, ] : Object | provenance | MaD:394 | | Test.java:6312:26:6312:40 | getElement(...) : Object [] : Object | Test.java:6312:9:6312:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6312:37:6312:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6312:37:6312:39 | out : Headers [, ] : Object | Test.java:6312:26:6312:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6312:37:6312:39 | out : Headers [, ] : Object | Test.java:6312:26:6312:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6317:18:6317:49 | (...)... : Object[] [[]] : Object | Test.java:6318:26:6318:27 | in : Object[] [[]] : Object | provenance | | | Test.java:6317:28:6317:49 | {...} : Object[] [[]] : Object | Test.java:6317:18:6317:49 | (...)... : Object[] [[]] : Object | provenance | | | Test.java:6317:41:6317:48 | source(...) : Object | Test.java:6317:28:6317:49 | {...} : Object[] [[]] : Object | provenance | | @@ -4422,7 +4420,7 @@ edges | Test.java:6318:26:6318:27 | in : Object[] [[]] : Object | Test.java:6318:4:6318:6 | out [post update] : Headers [, ] : Object | provenance | MaD:395 | | Test.java:6319:28:6319:42 | getElement(...) : Object [] : Object | Test.java:6319:9:6319:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6319:39:6319:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6319:39:6319:41 | out : Headers [, ] : Object | Test.java:6319:28:6319:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6319:39:6319:41 | out : Headers [, ] : Object | Test.java:6319:28:6319:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6324:17:6324:33 | (...)... : Headers | Test.java:6325:10:6325:11 | in : Headers | provenance | | | Test.java:6324:26:6324:33 | source(...) : Object | Test.java:6324:17:6324:33 | (...)... : Headers | provenance | | | Test.java:6325:10:6325:11 | in : Headers | Test.java:6325:10:6325:45 | add(...) : Headers | provenance | MaD:396 | @@ -4449,7 +4447,7 @@ edges | Test.java:6360:19:6360:20 | in : Object | Test.java:6360:4:6360:6 | out [post update] : Headers [, ] : Object | provenance | MaD:397 | | Test.java:6361:26:6361:40 | getElement(...) : Object [] : Object | Test.java:6361:9:6361:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6361:37:6361:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6361:37:6361:39 | out : Headers [, ] : Object | Test.java:6361:26:6361:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6361:37:6361:39 | out : Headers [, ] : Object | Test.java:6361:26:6361:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6366:17:6366:33 | (...)... : Headers | Test.java:6367:10:6367:11 | in : Headers | provenance | | | Test.java:6366:26:6366:33 | source(...) : Object | Test.java:6366:17:6366:33 | (...)... : Headers | provenance | | | Test.java:6367:10:6367:11 | in : Headers | Test.java:6367:10:6367:34 | addByte(...) : Headers | provenance | MaD:400 | @@ -4460,7 +4458,7 @@ edges | Test.java:6374:16:6374:17 | in : Object | Test.java:6374:4:6374:6 | out [post update] : Headers [, ] : Object | provenance | MaD:399 | | Test.java:6375:26:6375:40 | getElement(...) : Object [] : Object | Test.java:6375:9:6375:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6375:37:6375:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6375:37:6375:39 | out : Headers [, ] : Object | Test.java:6375:26:6375:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6375:37:6375:39 | out : Headers [, ] : Object | Test.java:6375:26:6375:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6380:17:6380:33 | (...)... : Headers | Test.java:6381:10:6381:11 | in : Headers | provenance | | | Test.java:6380:26:6380:33 | source(...) : Object | Test.java:6380:17:6380:33 | (...)... : Headers | provenance | | | Test.java:6381:10:6381:11 | in : Headers | Test.java:6381:10:6381:31 | addChar(...) : Headers | provenance | MaD:402 | @@ -4471,7 +4469,7 @@ edges | Test.java:6388:16:6388:17 | in : Object | Test.java:6388:4:6388:6 | out [post update] : Headers [, ] : Object | provenance | MaD:401 | | Test.java:6389:26:6389:40 | getElement(...) : Object [] : Object | Test.java:6389:9:6389:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6389:37:6389:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6389:37:6389:39 | out : Headers [, ] : Object | Test.java:6389:26:6389:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6389:37:6389:39 | out : Headers [, ] : Object | Test.java:6389:26:6389:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6394:17:6394:33 | (...)... : Headers | Test.java:6395:10:6395:11 | in : Headers | provenance | | | Test.java:6394:26:6394:33 | source(...) : Object | Test.java:6394:17:6394:33 | (...)... : Headers | provenance | | | Test.java:6395:10:6395:11 | in : Headers | Test.java:6395:10:6395:32 | addDouble(...) : Headers | provenance | MaD:404 | @@ -4482,7 +4480,7 @@ edges | Test.java:6402:18:6402:19 | in : Object | Test.java:6402:4:6402:6 | out [post update] : Headers [, ] : Object | provenance | MaD:403 | | Test.java:6403:26:6403:40 | getElement(...) : Object [] : Object | Test.java:6403:9:6403:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6403:37:6403:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6403:37:6403:39 | out : Headers [, ] : Object | Test.java:6403:26:6403:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6403:37:6403:39 | out : Headers [, ] : Object | Test.java:6403:26:6403:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6408:17:6408:33 | (...)... : Headers | Test.java:6409:10:6409:11 | in : Headers | provenance | | | Test.java:6408:26:6408:33 | source(...) : Object | Test.java:6408:17:6408:33 | (...)... : Headers | provenance | | | Test.java:6409:10:6409:11 | in : Headers | Test.java:6409:10:6409:32 | addFloat(...) : Headers | provenance | MaD:406 | @@ -4493,7 +4491,7 @@ edges | Test.java:6416:17:6416:18 | in : Object | Test.java:6416:4:6416:6 | out [post update] : Headers [, ] : Object | provenance | MaD:405 | | Test.java:6417:26:6417:40 | getElement(...) : Object [] : Object | Test.java:6417:9:6417:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6417:37:6417:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6417:37:6417:39 | out : Headers [, ] : Object | Test.java:6417:26:6417:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6417:37:6417:39 | out : Headers [, ] : Object | Test.java:6417:26:6417:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6422:17:6422:33 | (...)... : Headers | Test.java:6423:10:6423:11 | in : Headers | provenance | | | Test.java:6422:26:6422:33 | source(...) : Object | Test.java:6422:17:6422:33 | (...)... : Headers | provenance | | | Test.java:6423:10:6423:11 | in : Headers | Test.java:6423:10:6423:27 | addInt(...) : Headers | provenance | MaD:408 | @@ -4504,7 +4502,7 @@ edges | Test.java:6430:15:6430:16 | in : Object | Test.java:6430:4:6430:6 | out [post update] : Headers [, ] : Object | provenance | MaD:407 | | Test.java:6431:26:6431:40 | getElement(...) : Object [] : Object | Test.java:6431:9:6431:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6431:37:6431:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6431:37:6431:39 | out : Headers [, ] : Object | Test.java:6431:26:6431:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6431:37:6431:39 | out : Headers [, ] : Object | Test.java:6431:26:6431:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6436:17:6436:33 | (...)... : Headers | Test.java:6437:10:6437:11 | in : Headers | provenance | | | Test.java:6436:26:6436:33 | source(...) : Object | Test.java:6436:17:6436:33 | (...)... : Headers | provenance | | | Test.java:6437:10:6437:11 | in : Headers | Test.java:6437:10:6437:29 | addLong(...) : Headers | provenance | MaD:410 | @@ -4515,43 +4513,43 @@ edges | Test.java:6444:16:6444:17 | in : Object | Test.java:6444:4:6444:6 | out [post update] : Headers [, ] : Object | provenance | MaD:409 | | Test.java:6445:26:6445:40 | getElement(...) : Object [] : Object | Test.java:6445:9:6445:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6445:37:6445:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6445:37:6445:39 | out : Headers [, ] : Object | Test.java:6445:26:6445:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6445:37:6445:39 | out : Headers [, ] : Object | Test.java:6445:26:6445:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6450:16:6450:31 | (...)... : Object | Test.java:6451:18:6451:19 | in : Object | provenance | | | Test.java:6450:24:6450:31 | source(...) : Object | Test.java:6450:16:6450:31 | (...)... : Object | provenance | | | Test.java:6451:4:6451:6 | out [post update] : Headers [, ] : Object | Test.java:6452:37:6452:39 | out : Headers [, ] : Object | provenance | | | Test.java:6451:18:6451:19 | in : Object | Test.java:6451:4:6451:6 | out [post update] : Headers [, ] : Object | provenance | MaD:411 | | Test.java:6452:26:6452:40 | getElement(...) : Object [] : Object | Test.java:6452:9:6452:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6452:37:6452:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6452:37:6452:39 | out : Headers [, ] : Object | Test.java:6452:26:6452:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6452:37:6452:39 | out : Headers [, ] : Object | Test.java:6452:26:6452:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6457:18:6457:44 | (...)... : List [] : Object | Test.java:6458:32:6458:33 | in : List [] : Object | provenance | | | Test.java:6457:28:6457:44 | of(...) : List [] : Object | Test.java:6457:18:6457:44 | (...)... : List [] : Object | provenance | | -| Test.java:6457:36:6457:43 | source(...) : Object | Test.java:6457:28:6457:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:6457:36:6457:43 | source(...) : Object | Test.java:6457:28:6457:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:6458:4:6458:6 | out [post update] : Headers [, ] : Object | Test.java:6459:39:6459:41 | out : Headers [, ] : Object | provenance | | | Test.java:6458:32:6458:33 | in : List [] : Object | Test.java:6458:4:6458:6 | out [post update] : Headers [, ] : Object | provenance | MaD:412 | | Test.java:6459:28:6459:42 | getElement(...) : Object [] : Object | Test.java:6459:9:6459:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6459:39:6459:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6459:39:6459:41 | out : Headers [, ] : Object | Test.java:6459:28:6459:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6459:39:6459:41 | out : Headers [, ] : Object | Test.java:6459:28:6459:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6464:16:6464:31 | (...)... : Object | Test.java:6465:18:6465:19 | in : Object | provenance | | | Test.java:6464:24:6464:31 | source(...) : Object | Test.java:6464:16:6464:31 | (...)... : Object | provenance | | | Test.java:6465:4:6465:6 | out [post update] : Headers [, ] : Object | Test.java:6466:37:6466:39 | out : Headers [, ] : Object | provenance | | | Test.java:6465:18:6465:19 | in : Object | Test.java:6465:4:6465:6 | out [post update] : Headers [, ] : Object | provenance | MaD:413 | | Test.java:6466:26:6466:40 | getElement(...) : Object [] : Object | Test.java:6466:9:6466:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6466:37:6466:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6466:37:6466:39 | out : Headers [, ] : Object | Test.java:6466:26:6466:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6466:37:6466:39 | out : Headers [, ] : Object | Test.java:6466:26:6466:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6471:16:6471:31 | (...)... : Object | Test.java:6472:32:6472:33 | in : Object | provenance | | | Test.java:6471:24:6471:31 | source(...) : Object | Test.java:6471:16:6471:31 | (...)... : Object | provenance | | | Test.java:6472:4:6472:6 | out [post update] : Headers [, ] : Object | Test.java:6473:39:6473:41 | out : Headers [, ] : Object | provenance | | | Test.java:6472:32:6472:33 | in : Object | Test.java:6472:4:6472:6 | out [post update] : Headers [, ] : Object | provenance | MaD:414 | | Test.java:6473:28:6473:42 | getElement(...) : Object [] : Object | Test.java:6473:9:6473:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6473:39:6473:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6473:39:6473:41 | out : Headers [, ] : Object | Test.java:6473:28:6473:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6473:39:6473:41 | out : Headers [, ] : Object | Test.java:6473:28:6473:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6478:16:6478:31 | (...)... : Object | Test.java:6479:18:6479:19 | in : Object | provenance | | | Test.java:6478:24:6478:31 | source(...) : Object | Test.java:6478:16:6478:31 | (...)... : Object | provenance | | | Test.java:6479:4:6479:6 | out [post update] : Headers [, ] : Object | Test.java:6480:37:6480:39 | out : Headers [, ] : Object | provenance | | | Test.java:6479:18:6479:19 | in : Object | Test.java:6479:4:6479:6 | out [post update] : Headers [, ] : Object | provenance | MaD:415 | | Test.java:6480:26:6480:40 | getElement(...) : Object [] : Object | Test.java:6480:9:6480:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6480:37:6480:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6480:37:6480:39 | out : Headers [, ] : Object | Test.java:6480:26:6480:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6480:37:6480:39 | out : Headers [, ] : Object | Test.java:6480:26:6480:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6485:18:6485:49 | (...)... : Object[] [[]] : Object | Test.java:6486:32:6486:33 | in : Object[] [[]] : Object | provenance | | | Test.java:6485:28:6485:49 | {...} : Object[] [[]] : Object | Test.java:6485:18:6485:49 | (...)... : Object[] [[]] : Object | provenance | | | Test.java:6485:41:6485:48 | source(...) : Object | Test.java:6485:28:6485:49 | {...} : Object[] [[]] : Object | provenance | | @@ -4559,7 +4557,7 @@ edges | Test.java:6486:32:6486:33 | in : Object[] [[]] : Object | Test.java:6486:4:6486:6 | out [post update] : Headers [, ] : Object | provenance | MaD:416 | | Test.java:6487:28:6487:42 | getElement(...) : Object [] : Object | Test.java:6487:9:6487:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6487:39:6487:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6487:39:6487:41 | out : Headers [, ] : Object | Test.java:6487:28:6487:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6487:39:6487:41 | out : Headers [, ] : Object | Test.java:6487:28:6487:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6492:17:6492:33 | (...)... : Headers | Test.java:6493:10:6493:11 | in : Headers | provenance | | | Test.java:6492:26:6492:33 | source(...) : Object | Test.java:6492:17:6492:33 | (...)... : Headers | provenance | | | Test.java:6493:10:6493:11 | in : Headers | Test.java:6493:10:6493:36 | addShort(...) : Headers | provenance | MaD:418 | @@ -4570,7 +4568,7 @@ edges | Test.java:6500:17:6500:18 | in : Object | Test.java:6500:4:6500:6 | out [post update] : Headers [, ] : Object | provenance | MaD:417 | | Test.java:6501:26:6501:40 | getElement(...) : Object [] : Object | Test.java:6501:9:6501:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6501:37:6501:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6501:37:6501:39 | out : Headers [, ] : Object | Test.java:6501:26:6501:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6501:37:6501:39 | out : Headers [, ] : Object | Test.java:6501:26:6501:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6506:17:6506:33 | (...)... : Headers | Test.java:6507:10:6507:11 | in : Headers | provenance | | | Test.java:6506:26:6506:33 | source(...) : Object | Test.java:6506:17:6506:33 | (...)... : Headers | provenance | | | Test.java:6507:10:6507:11 | in : Headers | Test.java:6507:10:6507:35 | addTimeMillis(...) : Headers | provenance | MaD:420 | @@ -4581,7 +4579,7 @@ edges | Test.java:6514:22:6514:23 | in : Object | Test.java:6514:4:6514:6 | out [post update] : Headers [, ] : Object | provenance | MaD:419 | | Test.java:6515:26:6515:40 | getElement(...) : Object [] : Object | Test.java:6515:9:6515:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6515:37:6515:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6515:37:6515:39 | out : Headers [, ] : Object | Test.java:6515:26:6515:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6515:37:6515:39 | out : Headers [, ] : Object | Test.java:6515:26:6515:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6520:17:6520:80 | (...)... : Headers [, ] : Object | Test.java:6521:10:6521:11 | in : Headers [, ] : Object | provenance | | | Test.java:6520:26:6520:80 | newWithElementDefault(...) : Object [, ] : Object | Test.java:6520:17:6520:80 | (...)... : Headers [, ] : Object | provenance | | | Test.java:6520:48:6520:79 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6520:26:6520:80 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4605,7 +4603,7 @@ edges | Test.java:6543:10:6543:11 | in : Headers [, ] : Object | Test.java:6543:10:6543:24 | getAll(...) : List [] : Object | provenance | MaD:424 | | Test.java:6543:10:6543:24 | getAll(...) : List [] : Object | Test.java:6544:20:6544:22 | out : List [] : Object | provenance | | | Test.java:6544:20:6544:22 | out : List [] : Object | Test.java:79:19:79:32 | it : List [] : Object | provenance | | -| Test.java:6544:20:6544:22 | out : List [] : Object | Test.java:6544:9:6544:23 | getElement(...) | provenance | MaD:495 | +| Test.java:6544:20:6544:22 | out : List [] : Object | Test.java:6544:9:6544:23 | getElement(...) | provenance | MaD:493 | | Test.java:6549:17:6549:80 | (...)... : Headers [, ] : Object | Test.java:6550:10:6550:11 | in : Headers [, ] : Object | provenance | | | Test.java:6549:26:6549:80 | newWithElementDefault(...) : Object [, ] : Object | Test.java:6549:17:6549:80 | (...)... : Headers [, ] : Object | provenance | | | Test.java:6549:48:6549:79 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6549:26:6549:80 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4613,7 +4611,7 @@ edges | Test.java:6550:10:6550:11 | in : Headers [, ] : Object | Test.java:6550:10:6550:33 | getAllAndRemove(...) : List [] : Object | provenance | MaD:425 | | Test.java:6550:10:6550:33 | getAllAndRemove(...) : List [] : Object | Test.java:6551:20:6551:22 | out : List [] : Object | provenance | | | Test.java:6551:20:6551:22 | out : List [] : Object | Test.java:79:19:79:32 | it : List [] : Object | provenance | | -| Test.java:6551:20:6551:22 | out : List [] : Object | Test.java:6551:9:6551:23 | getElement(...) | provenance | MaD:495 | +| Test.java:6551:20:6551:22 | out : List [] : Object | Test.java:6551:9:6551:23 | getElement(...) | provenance | MaD:493 | | Test.java:6556:17:6556:80 | (...)... : Headers [, ] : Object | Test.java:6557:10:6557:11 | in : Headers [, ] : Object | provenance | | | Test.java:6556:26:6556:80 | newWithElementDefault(...) : Object [, ] : Object | Test.java:6556:17:6556:80 | (...)... : Headers [, ] : Object | provenance | | | Test.java:6556:48:6556:79 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6556:26:6556:80 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4631,7 +4629,7 @@ edges | Test.java:6572:10:6572:11 | in : Headers [, ] : Object | Test.java:6572:10:6572:19 | names(...) : Set [] : Object | provenance | MaD:428 | | Test.java:6572:10:6572:19 | names(...) : Set [] : Object | Test.java:6573:20:6573:22 | out : Set [] : Object | provenance | | | Test.java:6573:20:6573:22 | out : Set [] : Object | Test.java:79:19:79:32 | it : Set [] : Object | provenance | | -| Test.java:6573:20:6573:22 | out : Set [] : Object | Test.java:6573:9:6573:23 | getElement(...) | provenance | MaD:495 | +| Test.java:6573:20:6573:22 | out : Set [] : Object | Test.java:6573:9:6573:23 | getElement(...) | provenance | MaD:493 | | Test.java:6578:17:6578:78 | (...)... : Headers [, ] : Object | Test.java:6579:12:6579:13 | in : Headers [, ] : Object | provenance | | | Test.java:6578:26:6578:78 | newWithElementDefault(...) : Object [, ] : Object | Test.java:6578:17:6578:78 | (...)... : Headers [, ] : Object | provenance | | | Test.java:6578:48:6578:77 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:6578:26:6578:78 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4640,7 +4638,7 @@ edges | Test.java:6579:12:6579:13 | in : Headers [, ] : Object | Test.java:6579:4:6579:6 | out [post update] : Headers [, ] : Object | provenance | MaD:429 | | Test.java:6580:26:6580:40 | getElement(...) : Object [] : Object | Test.java:6580:9:6580:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6580:37:6580:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6580:37:6580:39 | out : Headers [, ] : Object | Test.java:6580:26:6580:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6580:37:6580:39 | out : Headers [, ] : Object | Test.java:6580:26:6580:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6585:17:6585:80 | (...)... : Headers [, ] : Object | Test.java:6586:12:6586:13 | in : Headers [, ] : Object | provenance | | | Test.java:6585:26:6585:80 | newWithElementDefault(...) : Object [, ] : Object | Test.java:6585:17:6585:80 | (...)... : Headers [, ] : Object | provenance | | | Test.java:6585:48:6585:79 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6585:26:6585:80 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4649,43 +4647,43 @@ edges | Test.java:6586:12:6586:13 | in : Headers [, ] : Object | Test.java:6586:4:6586:6 | out [post update] : Headers [, ] : Object | provenance | MaD:430 | | Test.java:6587:28:6587:42 | getElement(...) : Object [] : Object | Test.java:6587:9:6587:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6587:39:6587:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6587:39:6587:41 | out : Headers [, ] : Object | Test.java:6587:28:6587:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6587:39:6587:41 | out : Headers [, ] : Object | Test.java:6587:28:6587:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6592:16:6592:31 | (...)... : Object | Test.java:6593:12:6593:13 | in : Object | provenance | | | Test.java:6592:24:6592:31 | source(...) : Object | Test.java:6592:16:6592:31 | (...)... : Object | provenance | | | Test.java:6593:4:6593:6 | out [post update] : Headers [, ] : Object | Test.java:6594:37:6594:39 | out : Headers [, ] : Object | provenance | | | Test.java:6593:12:6593:13 | in : Object | Test.java:6593:4:6593:6 | out [post update] : Headers [, ] : Object | provenance | MaD:431 | | Test.java:6594:26:6594:40 | getElement(...) : Object [] : Object | Test.java:6594:9:6594:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6594:37:6594:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6594:37:6594:39 | out : Headers [, ] : Object | Test.java:6594:26:6594:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6594:37:6594:39 | out : Headers [, ] : Object | Test.java:6594:26:6594:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6599:18:6599:44 | (...)... : List [] : Object | Test.java:6600:26:6600:27 | in : List [] : Object | provenance | | | Test.java:6599:28:6599:44 | of(...) : List [] : Object | Test.java:6599:18:6599:44 | (...)... : List [] : Object | provenance | | -| Test.java:6599:36:6599:43 | source(...) : Object | Test.java:6599:28:6599:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:6599:36:6599:43 | source(...) : Object | Test.java:6599:28:6599:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:6600:4:6600:6 | out [post update] : Headers [, ] : Object | Test.java:6601:39:6601:41 | out : Headers [, ] : Object | provenance | | | Test.java:6600:26:6600:27 | in : List [] : Object | Test.java:6600:4:6600:6 | out [post update] : Headers [, ] : Object | provenance | MaD:432 | | Test.java:6601:28:6601:42 | getElement(...) : Object [] : Object | Test.java:6601:9:6601:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6601:39:6601:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6601:39:6601:41 | out : Headers [, ] : Object | Test.java:6601:28:6601:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6601:39:6601:41 | out : Headers [, ] : Object | Test.java:6601:28:6601:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6606:16:6606:31 | (...)... : Object | Test.java:6607:12:6607:13 | in : Object | provenance | | | Test.java:6606:24:6606:31 | source(...) : Object | Test.java:6606:16:6606:31 | (...)... : Object | provenance | | | Test.java:6607:4:6607:6 | out [post update] : Headers [, ] : Object | Test.java:6608:37:6608:39 | out : Headers [, ] : Object | provenance | | | Test.java:6607:12:6607:13 | in : Object | Test.java:6607:4:6607:6 | out [post update] : Headers [, ] : Object | provenance | MaD:433 | | Test.java:6608:26:6608:40 | getElement(...) : Object [] : Object | Test.java:6608:9:6608:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6608:37:6608:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6608:37:6608:39 | out : Headers [, ] : Object | Test.java:6608:26:6608:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6608:37:6608:39 | out : Headers [, ] : Object | Test.java:6608:26:6608:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6613:16:6613:31 | (...)... : Object | Test.java:6614:26:6614:27 | in : Object | provenance | | | Test.java:6613:24:6613:31 | source(...) : Object | Test.java:6613:16:6613:31 | (...)... : Object | provenance | | | Test.java:6614:4:6614:6 | out [post update] : Headers [, ] : Object | Test.java:6615:39:6615:41 | out : Headers [, ] : Object | provenance | | | Test.java:6614:26:6614:27 | in : Object | Test.java:6614:4:6614:6 | out [post update] : Headers [, ] : Object | provenance | MaD:434 | | Test.java:6615:28:6615:42 | getElement(...) : Object [] : Object | Test.java:6615:9:6615:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6615:39:6615:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6615:39:6615:41 | out : Headers [, ] : Object | Test.java:6615:28:6615:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6615:39:6615:41 | out : Headers [, ] : Object | Test.java:6615:28:6615:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6620:16:6620:31 | (...)... : Object | Test.java:6621:12:6621:13 | in : Object | provenance | | | Test.java:6620:24:6620:31 | source(...) : Object | Test.java:6620:16:6620:31 | (...)... : Object | provenance | | | Test.java:6621:4:6621:6 | out [post update] : Headers [, ] : Object | Test.java:6622:37:6622:39 | out : Headers [, ] : Object | provenance | | | Test.java:6621:12:6621:13 | in : Object | Test.java:6621:4:6621:6 | out [post update] : Headers [, ] : Object | provenance | MaD:435 | | Test.java:6622:26:6622:40 | getElement(...) : Object [] : Object | Test.java:6622:9:6622:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6622:37:6622:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6622:37:6622:39 | out : Headers [, ] : Object | Test.java:6622:26:6622:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6622:37:6622:39 | out : Headers [, ] : Object | Test.java:6622:26:6622:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6627:18:6627:49 | (...)... : Object[] [[]] : Object | Test.java:6628:26:6628:27 | in : Object[] [[]] : Object | provenance | | | Test.java:6627:28:6627:49 | {...} : Object[] [[]] : Object | Test.java:6627:18:6627:49 | (...)... : Object[] [[]] : Object | provenance | | | Test.java:6627:41:6627:48 | source(...) : Object | Test.java:6627:28:6627:49 | {...} : Object[] [[]] : Object | provenance | | @@ -4693,7 +4691,7 @@ edges | Test.java:6628:26:6628:27 | in : Object[] [[]] : Object | Test.java:6628:4:6628:6 | out [post update] : Headers [, ] : Object | provenance | MaD:436 | | Test.java:6629:28:6629:42 | getElement(...) : Object [] : Object | Test.java:6629:9:6629:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6629:39:6629:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6629:39:6629:41 | out : Headers [, ] : Object | Test.java:6629:28:6629:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6629:39:6629:41 | out : Headers [, ] : Object | Test.java:6629:28:6629:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6634:17:6634:33 | (...)... : Headers | Test.java:6635:10:6635:11 | in : Headers | provenance | | | Test.java:6634:26:6634:33 | source(...) : Object | Test.java:6634:17:6634:33 | (...)... : Headers | provenance | | | Test.java:6635:10:6635:11 | in : Headers | Test.java:6635:10:6635:45 | set(...) : Headers | provenance | MaD:437 | @@ -4718,7 +4716,7 @@ edges | Test.java:6663:15:6663:16 | in : Headers [, ] : Object | Test.java:6663:4:6663:6 | out [post update] : Headers [, ] : Object | provenance | MaD:438 | | Test.java:6664:26:6664:40 | getElement(...) : Object [] : Object | Test.java:6664:9:6664:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6664:37:6664:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6664:37:6664:39 | out : Headers [, ] : Object | Test.java:6664:26:6664:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6664:37:6664:39 | out : Headers [, ] : Object | Test.java:6664:26:6664:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6669:17:6669:80 | (...)... : Headers [, ] : Object | Test.java:6670:15:6670:16 | in : Headers [, ] : Object | provenance | | | Test.java:6669:26:6669:80 | newWithElementDefault(...) : Object [, ] : Object | Test.java:6669:17:6669:80 | (...)... : Headers [, ] : Object | provenance | | | Test.java:6669:48:6669:79 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6669:26:6669:80 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4727,7 +4725,7 @@ edges | Test.java:6670:15:6670:16 | in : Headers [, ] : Object | Test.java:6670:4:6670:6 | out [post update] : Headers [, ] : Object | provenance | MaD:439 | | Test.java:6671:28:6671:42 | getElement(...) : Object [] : Object | Test.java:6671:9:6671:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6671:39:6671:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6671:39:6671:41 | out : Headers [, ] : Object | Test.java:6671:28:6671:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6671:39:6671:41 | out : Headers [, ] : Object | Test.java:6671:28:6671:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6676:17:6676:33 | (...)... : Headers | Test.java:6677:10:6677:11 | in : Headers | provenance | | | Test.java:6676:26:6676:33 | source(...) : Object | Test.java:6676:17:6676:33 | (...)... : Headers | provenance | | | Test.java:6677:10:6677:11 | in : Headers | Test.java:6677:10:6677:35 | setBoolean(...) : Headers | provenance | MaD:441 | @@ -4738,7 +4736,7 @@ edges | Test.java:6684:19:6684:20 | in : Object | Test.java:6684:4:6684:6 | out [post update] : Headers [, ] : Object | provenance | MaD:440 | | Test.java:6685:26:6685:40 | getElement(...) : Object [] : Object | Test.java:6685:9:6685:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6685:37:6685:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6685:37:6685:39 | out : Headers [, ] : Object | Test.java:6685:26:6685:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6685:37:6685:39 | out : Headers [, ] : Object | Test.java:6685:26:6685:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6690:17:6690:33 | (...)... : Headers | Test.java:6691:10:6691:11 | in : Headers | provenance | | | Test.java:6690:26:6690:33 | source(...) : Object | Test.java:6690:17:6690:33 | (...)... : Headers | provenance | | | Test.java:6691:10:6691:11 | in : Headers | Test.java:6691:10:6691:34 | setByte(...) : Headers | provenance | MaD:443 | @@ -4749,7 +4747,7 @@ edges | Test.java:6698:16:6698:17 | in : Object | Test.java:6698:4:6698:6 | out [post update] : Headers [, ] : Object | provenance | MaD:442 | | Test.java:6699:26:6699:40 | getElement(...) : Object [] : Object | Test.java:6699:9:6699:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6699:37:6699:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6699:37:6699:39 | out : Headers [, ] : Object | Test.java:6699:26:6699:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6699:37:6699:39 | out : Headers [, ] : Object | Test.java:6699:26:6699:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6704:17:6704:33 | (...)... : Headers | Test.java:6705:10:6705:11 | in : Headers | provenance | | | Test.java:6704:26:6704:33 | source(...) : Object | Test.java:6704:17:6704:33 | (...)... : Headers | provenance | | | Test.java:6705:10:6705:11 | in : Headers | Test.java:6705:10:6705:31 | setChar(...) : Headers | provenance | MaD:445 | @@ -4760,7 +4758,7 @@ edges | Test.java:6712:16:6712:17 | in : Object | Test.java:6712:4:6712:6 | out [post update] : Headers [, ] : Object | provenance | MaD:444 | | Test.java:6713:26:6713:40 | getElement(...) : Object [] : Object | Test.java:6713:9:6713:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6713:37:6713:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6713:37:6713:39 | out : Headers [, ] : Object | Test.java:6713:26:6713:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6713:37:6713:39 | out : Headers [, ] : Object | Test.java:6713:26:6713:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6718:17:6718:33 | (...)... : Headers | Test.java:6719:10:6719:11 | in : Headers | provenance | | | Test.java:6718:26:6718:33 | source(...) : Object | Test.java:6718:17:6718:33 | (...)... : Headers | provenance | | | Test.java:6719:10:6719:11 | in : Headers | Test.java:6719:10:6719:32 | setDouble(...) : Headers | provenance | MaD:447 | @@ -4771,7 +4769,7 @@ edges | Test.java:6726:18:6726:19 | in : Object | Test.java:6726:4:6726:6 | out [post update] : Headers [, ] : Object | provenance | MaD:446 | | Test.java:6727:26:6727:40 | getElement(...) : Object [] : Object | Test.java:6727:9:6727:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6727:37:6727:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6727:37:6727:39 | out : Headers [, ] : Object | Test.java:6727:26:6727:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6727:37:6727:39 | out : Headers [, ] : Object | Test.java:6727:26:6727:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6732:17:6732:33 | (...)... : Headers | Test.java:6733:10:6733:11 | in : Headers | provenance | | | Test.java:6732:26:6732:33 | source(...) : Object | Test.java:6732:17:6732:33 | (...)... : Headers | provenance | | | Test.java:6733:10:6733:11 | in : Headers | Test.java:6733:10:6733:32 | setFloat(...) : Headers | provenance | MaD:449 | @@ -4782,7 +4780,7 @@ edges | Test.java:6740:17:6740:18 | in : Object | Test.java:6740:4:6740:6 | out [post update] : Headers [, ] : Object | provenance | MaD:448 | | Test.java:6741:26:6741:40 | getElement(...) : Object [] : Object | Test.java:6741:9:6741:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6741:37:6741:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6741:37:6741:39 | out : Headers [, ] : Object | Test.java:6741:26:6741:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6741:37:6741:39 | out : Headers [, ] : Object | Test.java:6741:26:6741:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6746:17:6746:33 | (...)... : Headers | Test.java:6747:10:6747:11 | in : Headers | provenance | | | Test.java:6746:26:6746:33 | source(...) : Object | Test.java:6746:17:6746:33 | (...)... : Headers | provenance | | | Test.java:6747:10:6747:11 | in : Headers | Test.java:6747:10:6747:27 | setInt(...) : Headers | provenance | MaD:451 | @@ -4793,7 +4791,7 @@ edges | Test.java:6754:15:6754:16 | in : Object | Test.java:6754:4:6754:6 | out [post update] : Headers [, ] : Object | provenance | MaD:450 | | Test.java:6755:26:6755:40 | getElement(...) : Object [] : Object | Test.java:6755:9:6755:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6755:37:6755:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6755:37:6755:39 | out : Headers [, ] : Object | Test.java:6755:26:6755:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6755:37:6755:39 | out : Headers [, ] : Object | Test.java:6755:26:6755:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6760:17:6760:33 | (...)... : Headers | Test.java:6761:10:6761:11 | in : Headers | provenance | | | Test.java:6760:26:6760:33 | source(...) : Object | Test.java:6760:17:6760:33 | (...)... : Headers | provenance | | | Test.java:6761:10:6761:11 | in : Headers | Test.java:6761:10:6761:29 | setLong(...) : Headers | provenance | MaD:453 | @@ -4804,43 +4802,43 @@ edges | Test.java:6768:16:6768:17 | in : Object | Test.java:6768:4:6768:6 | out [post update] : Headers [, ] : Object | provenance | MaD:452 | | Test.java:6769:26:6769:40 | getElement(...) : Object [] : Object | Test.java:6769:9:6769:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6769:37:6769:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6769:37:6769:39 | out : Headers [, ] : Object | Test.java:6769:26:6769:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6769:37:6769:39 | out : Headers [, ] : Object | Test.java:6769:26:6769:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6774:16:6774:31 | (...)... : Object | Test.java:6775:18:6775:19 | in : Object | provenance | | | Test.java:6774:24:6774:31 | source(...) : Object | Test.java:6774:16:6774:31 | (...)... : Object | provenance | | | Test.java:6775:4:6775:6 | out [post update] : Headers [, ] : Object | Test.java:6776:37:6776:39 | out : Headers [, ] : Object | provenance | | | Test.java:6775:18:6775:19 | in : Object | Test.java:6775:4:6775:6 | out [post update] : Headers [, ] : Object | provenance | MaD:454 | | Test.java:6776:26:6776:40 | getElement(...) : Object [] : Object | Test.java:6776:9:6776:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6776:37:6776:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6776:37:6776:39 | out : Headers [, ] : Object | Test.java:6776:26:6776:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6776:37:6776:39 | out : Headers [, ] : Object | Test.java:6776:26:6776:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6781:18:6781:44 | (...)... : List [] : Object | Test.java:6782:32:6782:33 | in : List [] : Object | provenance | | | Test.java:6781:28:6781:44 | of(...) : List [] : Object | Test.java:6781:18:6781:44 | (...)... : List [] : Object | provenance | | -| Test.java:6781:36:6781:43 | source(...) : Object | Test.java:6781:28:6781:44 | of(...) : List [] : Object | provenance | MaD:497 | +| Test.java:6781:36:6781:43 | source(...) : Object | Test.java:6781:28:6781:44 | of(...) : List [] : Object | provenance | MaD:495 | | Test.java:6782:4:6782:6 | out [post update] : Headers [, ] : Object | Test.java:6783:39:6783:41 | out : Headers [, ] : Object | provenance | | | Test.java:6782:32:6782:33 | in : List [] : Object | Test.java:6782:4:6782:6 | out [post update] : Headers [, ] : Object | provenance | MaD:455 | | Test.java:6783:28:6783:42 | getElement(...) : Object [] : Object | Test.java:6783:9:6783:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6783:39:6783:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6783:39:6783:41 | out : Headers [, ] : Object | Test.java:6783:28:6783:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6783:39:6783:41 | out : Headers [, ] : Object | Test.java:6783:28:6783:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6788:16:6788:31 | (...)... : Object | Test.java:6789:18:6789:19 | in : Object | provenance | | | Test.java:6788:24:6788:31 | source(...) : Object | Test.java:6788:16:6788:31 | (...)... : Object | provenance | | | Test.java:6789:4:6789:6 | out [post update] : Headers [, ] : Object | Test.java:6790:37:6790:39 | out : Headers [, ] : Object | provenance | | | Test.java:6789:18:6789:19 | in : Object | Test.java:6789:4:6789:6 | out [post update] : Headers [, ] : Object | provenance | MaD:456 | | Test.java:6790:26:6790:40 | getElement(...) : Object [] : Object | Test.java:6790:9:6790:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6790:37:6790:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6790:37:6790:39 | out : Headers [, ] : Object | Test.java:6790:26:6790:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6790:37:6790:39 | out : Headers [, ] : Object | Test.java:6790:26:6790:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6795:16:6795:31 | (...)... : Object | Test.java:6796:32:6796:33 | in : Object | provenance | | | Test.java:6795:24:6795:31 | source(...) : Object | Test.java:6795:16:6795:31 | (...)... : Object | provenance | | | Test.java:6796:4:6796:6 | out [post update] : Headers [, ] : Object | Test.java:6797:39:6797:41 | out : Headers [, ] : Object | provenance | | | Test.java:6796:32:6796:33 | in : Object | Test.java:6796:4:6796:6 | out [post update] : Headers [, ] : Object | provenance | MaD:457 | | Test.java:6797:28:6797:42 | getElement(...) : Object [] : Object | Test.java:6797:9:6797:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6797:39:6797:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6797:39:6797:41 | out : Headers [, ] : Object | Test.java:6797:28:6797:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6797:39:6797:41 | out : Headers [, ] : Object | Test.java:6797:28:6797:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6802:16:6802:31 | (...)... : Object | Test.java:6803:18:6803:19 | in : Object | provenance | | | Test.java:6802:24:6802:31 | source(...) : Object | Test.java:6802:16:6802:31 | (...)... : Object | provenance | | | Test.java:6803:4:6803:6 | out [post update] : Headers [, ] : Object | Test.java:6804:37:6804:39 | out : Headers [, ] : Object | provenance | | | Test.java:6803:18:6803:19 | in : Object | Test.java:6803:4:6803:6 | out [post update] : Headers [, ] : Object | provenance | MaD:458 | | Test.java:6804:26:6804:40 | getElement(...) : Object [] : Object | Test.java:6804:9:6804:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6804:37:6804:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6804:37:6804:39 | out : Headers [, ] : Object | Test.java:6804:26:6804:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6804:37:6804:39 | out : Headers [, ] : Object | Test.java:6804:26:6804:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6809:18:6809:49 | (...)... : Object[] [[]] : Object | Test.java:6810:32:6810:33 | in : Object[] [[]] : Object | provenance | | | Test.java:6809:28:6809:49 | {...} : Object[] [[]] : Object | Test.java:6809:18:6809:49 | (...)... : Object[] [[]] : Object | provenance | | | Test.java:6809:41:6809:48 | source(...) : Object | Test.java:6809:28:6809:49 | {...} : Object[] [[]] : Object | provenance | | @@ -4848,7 +4846,7 @@ edges | Test.java:6810:32:6810:33 | in : Object[] [[]] : Object | Test.java:6810:4:6810:6 | out [post update] : Headers [, ] : Object | provenance | MaD:459 | | Test.java:6811:28:6811:42 | getElement(...) : Object [] : Object | Test.java:6811:9:6811:43 | getMapValueDefault(...) | provenance | MaD:2 | | Test.java:6811:39:6811:41 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6811:39:6811:41 | out : Headers [, ] : Object | Test.java:6811:28:6811:42 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6811:39:6811:41 | out : Headers [, ] : Object | Test.java:6811:28:6811:42 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6816:17:6816:33 | (...)... : Headers | Test.java:6817:10:6817:11 | in : Headers | provenance | | | Test.java:6816:26:6816:33 | source(...) : Object | Test.java:6816:17:6816:33 | (...)... : Headers | provenance | | | Test.java:6817:10:6817:11 | in : Headers | Test.java:6817:10:6817:36 | setShort(...) : Headers | provenance | MaD:461 | @@ -4859,7 +4857,7 @@ edges | Test.java:6824:17:6824:18 | in : Object | Test.java:6824:4:6824:6 | out [post update] : Headers [, ] : Object | provenance | MaD:460 | | Test.java:6825:26:6825:40 | getElement(...) : Object [] : Object | Test.java:6825:9:6825:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6825:37:6825:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6825:37:6825:39 | out : Headers [, ] : Object | Test.java:6825:26:6825:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6825:37:6825:39 | out : Headers [, ] : Object | Test.java:6825:26:6825:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6830:17:6830:33 | (...)... : Headers | Test.java:6831:10:6831:11 | in : Headers | provenance | | | Test.java:6830:26:6830:33 | source(...) : Object | Test.java:6830:17:6830:33 | (...)... : Headers | provenance | | | Test.java:6831:10:6831:11 | in : Headers | Test.java:6831:10:6831:35 | setTimeMillis(...) : Headers | provenance | MaD:463 | @@ -4870,7 +4868,7 @@ edges | Test.java:6838:22:6838:23 | in : Object | Test.java:6838:4:6838:6 | out [post update] : Headers [, ] : Object | provenance | MaD:462 | | Test.java:6839:26:6839:40 | getElement(...) : Object [] : Object | Test.java:6839:9:6839:41 | getMapKeyDefault(...) | provenance | MaD:1 | | Test.java:6839:37:6839:39 | out : Headers [, ] : Object | Test.java:79:19:79:32 | it : Headers [, ] : Object | provenance | | -| Test.java:6839:37:6839:39 | out : Headers [, ] : Object | Test.java:6839:26:6839:40 | getElement(...) : Object [] : Object | provenance | MaD:495 | +| Test.java:6839:37:6839:39 | out : Headers [, ] : Object | Test.java:6839:26:6839:40 | getElement(...) : Object [] : Object | provenance | MaD:493 | | Test.java:6844:17:6844:80 | (...)... : Headers [, ] : Object | Test.java:6845:38:6845:39 | in : Headers [, ] : Object | provenance | | | Test.java:6844:26:6844:80 | newWithElementDefault(...) : Object [, ] : Object | Test.java:6844:17:6844:80 | (...)... : Headers [, ] : Object | provenance | | | Test.java:6844:48:6844:79 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6844:26:6844:80 | newWithElementDefault(...) : Object [, ] : Object | provenance | MaD:3 | @@ -4885,13 +4883,13 @@ edges | Test.java:6852:35:6852:36 | in : Headers [, ] : Object | Test.java:6852:10:6852:43 | getAsString(...) : String | provenance | MaD:465 | | Test.java:6858:18:6858:66 | (...)... : List [, ] : Object | Test.java:6859:40:6859:41 | in : List [, ] : Object | provenance | | | Test.java:6858:28:6858:66 | of(...) : List [, ] : Object | Test.java:6858:18:6858:66 | (...)... : List [, ] : Object | provenance | | -| Test.java:6858:36:6858:65 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:6858:28:6858:66 | of(...) : List [, ] : Object | provenance | MaD:497 | +| Test.java:6858:36:6858:65 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:6858:28:6858:66 | of(...) : List [, ] : Object | provenance | MaD:495 | | Test.java:6858:57:6858:64 | source(...) : Object | Test.java:6858:36:6858:65 | newWithMapKeyDefault(...) : Object [] : Object | provenance | MaD:4 | | Test.java:6859:10:6859:42 | iteratorAsString(...) : Iterator | Test.java:6860:9:6860:11 | out | provenance | | | Test.java:6859:40:6859:41 | in : List [, ] : Object | Test.java:6859:10:6859:42 | iteratorAsString(...) : Iterator | provenance | MaD:466 | | Test.java:6865:18:6865:68 | (...)... : List [, ] : Object | Test.java:6866:40:6866:41 | in : List [, ] : Object | provenance | | | Test.java:6865:28:6865:68 | of(...) : List [, ] : Object | Test.java:6865:18:6865:68 | (...)... : List [, ] : Object | provenance | | -| Test.java:6865:36:6865:67 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6865:28:6865:68 | of(...) : List [, ] : Object | provenance | MaD:497 | +| Test.java:6865:36:6865:67 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6865:28:6865:68 | of(...) : List [, ] : Object | provenance | MaD:495 | | Test.java:6865:59:6865:66 | source(...) : Object | Test.java:6865:36:6865:67 | newWithMapValueDefault(...) : Object [] : Object | provenance | MaD:5 | | Test.java:6866:10:6866:42 | iteratorAsString(...) : Iterator | Test.java:6867:9:6867:11 | out | provenance | | | Test.java:6866:40:6866:41 | in : List [, ] : Object | Test.java:6866:10:6866:42 | iteratorAsString(...) : Iterator | provenance | MaD:467 | @@ -4902,18 +4900,18 @@ edges | Test.java:6873:10:6873:39 | namesAsString(...) : Set [] : Object | Test.java:6874:20:6874:22 | out : Set [] : Object | provenance | | | Test.java:6873:37:6873:38 | in : Headers [, ] : Object | Test.java:6873:10:6873:39 | namesAsString(...) : Set [] : Object | provenance | MaD:468 | | Test.java:6874:20:6874:22 | out : Set [] : Object | Test.java:79:19:79:32 | it : Set [] : Object | provenance | | -| Test.java:6874:20:6874:22 | out : Set [] : Object | Test.java:6874:9:6874:23 | getElement(...) | provenance | MaD:495 | +| Test.java:6874:20:6874:22 | out : Set [] : Object | Test.java:6874:9:6874:23 | getElement(...) | provenance | MaD:493 | | Test.java:6879:18:6879:77 | (...)... : Iterator [, ] : Object | Test.java:6880:38:6880:39 | in : Iterator [, ] : Object | provenance | | -| Test.java:6879:28:6879:66 | of(...) : List [, ] : Object | Test.java:6879:28:6879:77 | iterator(...) : Iterator [, ] : Object | provenance | MaD:495 | +| Test.java:6879:28:6879:66 | of(...) : List [, ] : Object | Test.java:6879:28:6879:77 | iterator(...) : Iterator [, ] : Object | provenance | MaD:493 | | Test.java:6879:28:6879:77 | iterator(...) : Iterator [, ] : Object | Test.java:6879:18:6879:77 | (...)... : Iterator [, ] : Object | provenance | | -| Test.java:6879:36:6879:65 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:6879:28:6879:66 | of(...) : List [, ] : Object | provenance | MaD:497 | +| Test.java:6879:36:6879:65 | newWithMapKeyDefault(...) : Object [] : Object | Test.java:6879:28:6879:66 | of(...) : List [, ] : Object | provenance | MaD:495 | | Test.java:6879:57:6879:64 | source(...) : Object | Test.java:6879:36:6879:65 | newWithMapKeyDefault(...) : Object [] : Object | provenance | MaD:4 | | Test.java:6880:10:6880:43 | toString(...) : String | Test.java:6881:9:6881:11 | out | provenance | | | Test.java:6880:38:6880:39 | in : Iterator [, ] : Object | Test.java:6880:10:6880:43 | toString(...) : String | provenance | MaD:469 | | Test.java:6886:18:6886:79 | (...)... : Iterator [, ] : Object | Test.java:6887:38:6887:39 | in : Iterator [, ] : Object | provenance | | -| Test.java:6886:28:6886:68 | of(...) : List [, ] : Object | Test.java:6886:28:6886:79 | iterator(...) : Iterator [, ] : Object | provenance | MaD:495 | +| Test.java:6886:28:6886:68 | of(...) : List [, ] : Object | Test.java:6886:28:6886:79 | iterator(...) : Iterator [, ] : Object | provenance | MaD:493 | | Test.java:6886:28:6886:79 | iterator(...) : Iterator [, ] : Object | Test.java:6886:18:6886:79 | (...)... : Iterator [, ] : Object | provenance | | -| Test.java:6886:36:6886:67 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6886:28:6886:68 | of(...) : List [, ] : Object | provenance | MaD:497 | +| Test.java:6886:36:6886:67 | newWithMapValueDefault(...) : Object [] : Object | Test.java:6886:28:6886:68 | of(...) : List [, ] : Object | provenance | MaD:495 | | Test.java:6886:59:6886:66 | source(...) : Object | Test.java:6886:36:6886:67 | newWithMapValueDefault(...) : Object [] : Object | provenance | MaD:5 | | Test.java:6887:10:6887:43 | toString(...) : String | Test.java:6888:9:6888:11 | out | provenance | | | Test.java:6887:38:6887:39 | in : Iterator [, ] : Object | Test.java:6887:10:6887:43 | toString(...) : String | provenance | MaD:470 | @@ -5020,7 +5018,6 @@ edges | Test.java:7069:21:7069:41 | (...)... : AsciiString | Test.java:7070:10:7070:11 | in : AsciiString | provenance | | | Test.java:7069:34:7069:41 | source(...) : Object | Test.java:7069:21:7069:41 | (...)... : AsciiString | provenance | | | Test.java:7070:10:7070:11 | in : AsciiString | Test.java:7070:10:7070:29 | subSequence(...) : AsciiString | provenance | MaD:483 | -| Test.java:7070:10:7070:11 | in : AsciiString | Test.java:7070:10:7070:29 | subSequence(...) : AsciiString | provenance | MaD:493 | | Test.java:7070:10:7070:29 | subSequence(...) : AsciiString | Test.java:7071:9:7071:11 | out | provenance | | | Test.java:7076:21:7076:41 | (...)... : AsciiString | Test.java:7077:10:7077:11 | in : AsciiString | provenance | | | Test.java:7076:34:7076:41 | source(...) : Object | Test.java:7076:21:7076:41 | (...)... : AsciiString | provenance | | @@ -5049,7 +5046,6 @@ edges | Test.java:7118:21:7118:41 | (...)... : AsciiString | Test.java:7119:10:7119:11 | in : AsciiString | provenance | | | Test.java:7118:34:7118:41 | source(...) : Object | Test.java:7118:21:7118:41 | (...)... : AsciiString | provenance | | | Test.java:7119:10:7119:11 | in : AsciiString | Test.java:7119:10:7119:22 | toString(...) : String | provenance | MaD:487 | -| Test.java:7119:10:7119:11 | in : AsciiString | Test.java:7119:10:7119:22 | toString(...) : String | provenance | MaD:494 | | Test.java:7119:10:7119:22 | toString(...) : String | Test.java:7120:9:7120:11 | out | provenance | | | Test.java:7125:21:7125:41 | (...)... : AsciiString | Test.java:7126:10:7126:11 | in : AsciiString | provenance | | | Test.java:7125:34:7125:41 | source(...) : Object | Test.java:7125:21:7125:41 | (...)... : AsciiString | provenance | | diff --git a/java/ql/test/library-tests/frameworks/spring/beans/test.expected b/java/ql/test/library-tests/frameworks/spring/beans/test.expected index 649557b44c8c..53fc288c87ab 100644 --- a/java/ql/test/library-tests/frameworks/spring/beans/test.expected +++ b/java/ql/test/library-tests/frameworks/spring/beans/test.expected @@ -46,15 +46,10 @@ edges | Test.java:20:34:20:64 | container : MutablePropertyValues [] : Object | Test.java:21:10:21:18 | container : MutablePropertyValues [] : Object | provenance | | | Test.java:20:34:20:64 | container : MutablePropertyValues [] : PropertyValue | Test.java:21:10:21:18 | container : MutablePropertyValues [] : PropertyValue | provenance | | | Test.java:21:10:21:18 | container : MutablePropertyValues [, ] : Object | Test.java:21:10:21:39 | getPropertyValue(...) : PropertyValue [] : Object | provenance | MaD:23 | -| Test.java:21:10:21:18 | container : MutablePropertyValues [, ] : Object | Test.java:21:10:21:39 | getPropertyValue(...) : PropertyValue [] : Object | provenance | MaD:34 | | Test.java:21:10:21:18 | container : MutablePropertyValues [, ] : String | Test.java:21:10:21:39 | getPropertyValue(...) : PropertyValue [] : String | provenance | MaD:23 | -| Test.java:21:10:21:18 | container : MutablePropertyValues [, ] : String | Test.java:21:10:21:39 | getPropertyValue(...) : PropertyValue [] : String | provenance | MaD:34 | | Test.java:21:10:21:18 | container : MutablePropertyValues [, ] : Object | Test.java:21:10:21:39 | getPropertyValue(...) : PropertyValue [] : Object | provenance | MaD:23 | -| Test.java:21:10:21:18 | container : MutablePropertyValues [, ] : Object | Test.java:21:10:21:39 | getPropertyValue(...) : PropertyValue [] : Object | provenance | MaD:34 | | Test.java:21:10:21:18 | container : MutablePropertyValues [] : Object | Test.java:21:10:21:39 | getPropertyValue(...) : PropertyValue | provenance | MaD:23 | -| Test.java:21:10:21:18 | container : MutablePropertyValues [] : Object | Test.java:21:10:21:39 | getPropertyValue(...) : PropertyValue | provenance | MaD:34 | | Test.java:21:10:21:18 | container : MutablePropertyValues [] : PropertyValue | Test.java:21:10:21:39 | getPropertyValue(...) : PropertyValue | provenance | MaD:23 | -| Test.java:21:10:21:18 | container : MutablePropertyValues [] : PropertyValue | Test.java:21:10:21:39 | getPropertyValue(...) : PropertyValue | provenance | MaD:34 | | Test.java:24:26:24:48 | container : PropertyValue [] : Object | Test.java:25:10:25:18 | container : PropertyValue [] : Object | provenance | | | Test.java:24:26:24:48 | container : PropertyValue [] : String | Test.java:25:10:25:18 | container : PropertyValue [] : String | provenance | | | Test.java:25:10:25:18 | container : PropertyValue [] : Object | Test.java:25:10:25:28 | getName(...) : String | provenance | MaD:32 | @@ -73,7 +68,6 @@ edges | Test.java:56:36:56:37 | in : List [] : Object | Test.java:56:10:56:38 | new MutablePropertyValues(...) : MutablePropertyValues [] : Object | provenance | MaD:6 | | Test.java:57:27:57:29 | out : MutablePropertyValues [] : Object | Test.java:20:34:20:64 | container : MutablePropertyValues [] : Object | provenance | | | Test.java:57:27:57:29 | out : MutablePropertyValues [] : Object | Test.java:57:9:57:30 | getElementDefault(...) | provenance | MaD:23 | -| Test.java:57:27:57:29 | out : MutablePropertyValues [] : Object | Test.java:57:9:57:30 | getElementDefault(...) | provenance | MaD:34 | | Test.java:62:13:62:34 | of(...) : Map [] : Object | Test.java:63:36:63:37 | in : Map [] : Object | provenance | | | Test.java:62:20:62:27 | source(...) : Object | Test.java:62:13:62:34 | of(...) : Map [] : Object | provenance | MaD:4 | | Test.java:63:10:63:38 | new MutablePropertyValues(...) : MutablePropertyValues [, ] : Object | Test.java:64:44:64:46 | out : MutablePropertyValues [, ] : Object | provenance | | @@ -82,7 +76,6 @@ edges | Test.java:64:26:64:47 | getElementDefault(...) : PropertyValue [] : Object | Test.java:64:9:64:48 | getMapKeyDefault(...) | provenance | MaD:32 | | Test.java:64:44:64:46 | out : MutablePropertyValues [, ] : Object | Test.java:20:34:20:64 | container : MutablePropertyValues [, ] : Object | provenance | | | Test.java:64:44:64:46 | out : MutablePropertyValues [, ] : Object | Test.java:64:26:64:47 | getElementDefault(...) : PropertyValue [] : Object | provenance | MaD:23 | -| Test.java:64:44:64:46 | out : MutablePropertyValues [, ] : Object | Test.java:64:26:64:47 | getElementDefault(...) : PropertyValue [] : Object | provenance | MaD:34 | | Test.java:69:13:69:34 | of(...) : Map [] : Object | Test.java:70:36:70:37 | in : Map [] : Object | provenance | | | Test.java:69:26:69:33 | source(...) : Object | Test.java:69:13:69:34 | of(...) : Map [] : Object | provenance | MaD:5 | | Test.java:70:10:70:38 | new MutablePropertyValues(...) : MutablePropertyValues [, ] : Object | Test.java:71:46:71:48 | out : MutablePropertyValues [, ] : Object | provenance | | @@ -91,7 +84,6 @@ edges | Test.java:71:28:71:49 | getElementDefault(...) : PropertyValue [] : Object | Test.java:71:9:71:50 | getMapValueDefault(...) | provenance | MaD:33 | | Test.java:71:46:71:48 | out : MutablePropertyValues [, ] : Object | Test.java:20:34:20:64 | container : MutablePropertyValues [, ] : Object | provenance | | | Test.java:71:46:71:48 | out : MutablePropertyValues [, ] : Object | Test.java:71:28:71:49 | getElementDefault(...) : PropertyValue [] : Object | provenance | MaD:23 | -| Test.java:71:46:71:48 | out : MutablePropertyValues [, ] : Object | Test.java:71:28:71:49 | getElementDefault(...) : PropertyValue [] : Object | provenance | MaD:34 | | Test.java:76:24:76:84 | newMutablePropertyValuesWithElement(...) : MutablePropertyValues [] : PropertyValue | Test.java:77:36:77:37 | in : MutablePropertyValues [] : PropertyValue | provenance | | | Test.java:76:60:76:83 | (...)... : PropertyValue | Test.java:32:60:32:80 | element : PropertyValue | provenance | | | Test.java:76:60:76:83 | (...)... : PropertyValue | Test.java:76:24:76:84 | newMutablePropertyValuesWithElement(...) : MutablePropertyValues [] : PropertyValue | provenance | MaD:3 | @@ -100,7 +92,6 @@ edges | Test.java:77:36:77:37 | in : MutablePropertyValues [] : PropertyValue | Test.java:77:10:77:38 | new MutablePropertyValues(...) : MutablePropertyValues [] : PropertyValue | provenance | MaD:9 | | Test.java:78:27:78:29 | out : MutablePropertyValues [] : PropertyValue | Test.java:20:34:20:64 | container : MutablePropertyValues [] : PropertyValue | provenance | | | Test.java:78:27:78:29 | out : MutablePropertyValues [] : PropertyValue | Test.java:78:9:78:30 | getElementDefault(...) | provenance | MaD:23 | -| Test.java:78:27:78:29 | out : MutablePropertyValues [] : PropertyValue | Test.java:78:9:78:30 | getElementDefault(...) | provenance | MaD:34 | | Test.java:83:31:83:62 | (...)... : MutablePropertyValues | Test.java:84:10:84:11 | in : MutablePropertyValues | provenance | | | Test.java:83:55:83:62 | source(...) : Object | Test.java:83:31:83:62 | (...)... : MutablePropertyValues | provenance | | | Test.java:84:10:84:11 | in : MutablePropertyValues | Test.java:84:10:84:27 | add(...) : MutablePropertyValues | provenance | MaD:12 | @@ -113,7 +104,6 @@ edges | Test.java:92:26:92:47 | getElementDefault(...) : PropertyValue [] : String | Test.java:92:9:92:48 | getMapKeyDefault(...) | provenance | MaD:32 | | Test.java:92:44:92:46 | out : MutablePropertyValues [, ] : String | Test.java:20:34:20:64 | container : MutablePropertyValues [, ] : String | provenance | | | Test.java:92:44:92:46 | out : MutablePropertyValues [, ] : String | Test.java:92:26:92:47 | getElementDefault(...) : PropertyValue [] : String | provenance | MaD:23 | -| Test.java:92:44:92:46 | out : MutablePropertyValues [, ] : String | Test.java:92:26:92:47 | getElementDefault(...) : PropertyValue [] : String | provenance | MaD:34 | | Test.java:97:16:97:32 | (...)... : Object | Test.java:98:18:98:19 | in : Object | provenance | | | Test.java:97:25:97:32 | source(...) : Object | Test.java:97:16:97:32 | (...)... : Object | provenance | | | Test.java:98:4:98:6 | out [post update] : MutablePropertyValues [, ] : Object | Test.java:99:46:99:48 | out : MutablePropertyValues [, ] : Object | provenance | | @@ -122,7 +112,6 @@ edges | Test.java:99:28:99:49 | getElementDefault(...) : PropertyValue [] : Object | Test.java:99:9:99:50 | getMapValueDefault(...) | provenance | MaD:33 | | Test.java:99:46:99:48 | out : MutablePropertyValues [, ] : Object | Test.java:20:34:20:64 | container : MutablePropertyValues [, ] : Object | provenance | | | Test.java:99:46:99:48 | out : MutablePropertyValues [, ] : Object | Test.java:99:28:99:49 | getElementDefault(...) : PropertyValue [] : Object | provenance | MaD:23 | -| Test.java:99:46:99:48 | out : MutablePropertyValues [, ] : Object | Test.java:99:28:99:49 | getElementDefault(...) : PropertyValue [] : Object | provenance | MaD:34 | | Test.java:104:31:104:62 | (...)... : MutablePropertyValues | Test.java:105:10:105:11 | in : MutablePropertyValues | provenance | | | Test.java:104:55:104:62 | source(...) : Object | Test.java:104:31:104:62 | (...)... : MutablePropertyValues | provenance | | | Test.java:105:10:105:11 | in : MutablePropertyValues | Test.java:105:10:105:34 | addPropertyValue(...) : MutablePropertyValues | provenance | MaD:14 | @@ -133,7 +122,6 @@ edges | Test.java:112:25:112:26 | in : PropertyValue | Test.java:112:4:112:6 | out [post update] : MutablePropertyValues [] : PropertyValue | provenance | MaD:13 | | Test.java:113:27:113:29 | out : MutablePropertyValues [] : PropertyValue | Test.java:20:34:20:64 | container : MutablePropertyValues [] : PropertyValue | provenance | | | Test.java:113:27:113:29 | out : MutablePropertyValues [] : PropertyValue | Test.java:113:9:113:30 | getElementDefault(...) | provenance | MaD:23 | -| Test.java:113:27:113:29 | out : MutablePropertyValues [] : PropertyValue | Test.java:113:9:113:30 | getElementDefault(...) | provenance | MaD:34 | | Test.java:118:16:118:32 | (...)... : String | Test.java:119:25:119:26 | in : String | provenance | | | Test.java:118:25:118:32 | source(...) : Object | Test.java:118:16:118:32 | (...)... : String | provenance | | | Test.java:119:4:119:6 | out [post update] : MutablePropertyValues [, ] : String | Test.java:120:44:120:46 | out : MutablePropertyValues [, ] : String | provenance | | @@ -142,7 +130,6 @@ edges | Test.java:120:26:120:47 | getElementDefault(...) : PropertyValue [] : String | Test.java:120:9:120:48 | getMapKeyDefault(...) | provenance | MaD:32 | | Test.java:120:44:120:46 | out : MutablePropertyValues [, ] : String | Test.java:20:34:20:64 | container : MutablePropertyValues [, ] : String | provenance | | | Test.java:120:44:120:46 | out : MutablePropertyValues [, ] : String | Test.java:120:26:120:47 | getElementDefault(...) : PropertyValue [] : String | provenance | MaD:23 | -| Test.java:120:44:120:46 | out : MutablePropertyValues [, ] : String | Test.java:120:26:120:47 | getElementDefault(...) : PropertyValue [] : String | provenance | MaD:34 | | Test.java:125:16:125:32 | (...)... : Object | Test.java:126:31:126:32 | in : Object | provenance | | | Test.java:125:25:125:32 | source(...) : Object | Test.java:125:16:125:32 | (...)... : Object | provenance | | | Test.java:126:4:126:6 | out [post update] : MutablePropertyValues [, ] : Object | Test.java:127:46:127:48 | out : MutablePropertyValues [, ] : Object | provenance | | @@ -151,7 +138,6 @@ edges | Test.java:127:28:127:49 | getElementDefault(...) : PropertyValue [] : Object | Test.java:127:9:127:50 | getMapValueDefault(...) | provenance | MaD:33 | | Test.java:127:46:127:48 | out : MutablePropertyValues [, ] : Object | Test.java:20:34:20:64 | container : MutablePropertyValues [, ] : Object | provenance | | | Test.java:127:46:127:48 | out : MutablePropertyValues [, ] : Object | Test.java:127:28:127:49 | getElementDefault(...) : PropertyValue [] : Object | provenance | MaD:23 | -| Test.java:127:46:127:48 | out : MutablePropertyValues [, ] : Object | Test.java:127:28:127:49 | getElementDefault(...) : PropertyValue [] : Object | provenance | MaD:34 | | Test.java:132:31:132:62 | (...)... : MutablePropertyValues | Test.java:133:10:133:11 | in : MutablePropertyValues | provenance | | | Test.java:132:55:132:62 | source(...) : Object | Test.java:132:31:132:62 | (...)... : MutablePropertyValues | provenance | | | Test.java:133:10:133:11 | in : MutablePropertyValues | Test.java:133:10:133:41 | addPropertyValues(...) : MutablePropertyValues | provenance | MaD:19 | @@ -164,7 +150,6 @@ edges | Test.java:141:26:141:47 | getElementDefault(...) : PropertyValue [] : Object | Test.java:141:9:141:48 | getMapKeyDefault(...) | provenance | MaD:32 | | Test.java:141:44:141:46 | out : MutablePropertyValues [, ] : Object | Test.java:20:34:20:64 | container : MutablePropertyValues [, ] : Object | provenance | | | Test.java:141:44:141:46 | out : MutablePropertyValues [, ] : Object | Test.java:141:26:141:47 | getElementDefault(...) : PropertyValue [] : Object | provenance | MaD:23 | -| Test.java:141:44:141:46 | out : MutablePropertyValues [, ] : Object | Test.java:141:26:141:47 | getElementDefault(...) : PropertyValue [] : Object | provenance | MaD:34 | | Test.java:146:13:146:34 | of(...) : Map [] : Object | Test.java:147:26:147:27 | in : Map [] : Object | provenance | | | Test.java:146:26:146:33 | source(...) : Object | Test.java:146:13:146:34 | of(...) : Map [] : Object | provenance | MaD:5 | | Test.java:147:4:147:6 | out [post update] : MutablePropertyValues [, ] : Object | Test.java:148:46:148:48 | out : MutablePropertyValues [, ] : Object | provenance | | @@ -173,7 +158,6 @@ edges | Test.java:148:28:148:49 | getElementDefault(...) : PropertyValue [] : Object | Test.java:148:9:148:50 | getMapValueDefault(...) | provenance | MaD:33 | | Test.java:148:46:148:48 | out : MutablePropertyValues [, ] : Object | Test.java:20:34:20:64 | container : MutablePropertyValues [, ] : Object | provenance | | | Test.java:148:46:148:48 | out : MutablePropertyValues [, ] : Object | Test.java:148:28:148:49 | getElementDefault(...) : PropertyValue [] : Object | provenance | MaD:23 | -| Test.java:148:46:148:48 | out : MutablePropertyValues [, ] : Object | Test.java:148:28:148:49 | getElementDefault(...) : PropertyValue [] : Object | provenance | MaD:34 | | Test.java:153:31:153:62 | (...)... : MutablePropertyValues | Test.java:154:10:154:11 | in : MutablePropertyValues | provenance | | | Test.java:153:55:153:62 | source(...) : Object | Test.java:153:31:153:62 | (...)... : MutablePropertyValues | provenance | | | Test.java:154:10:154:11 | in : MutablePropertyValues | Test.java:154:10:154:52 | addPropertyValues(...) : MutablePropertyValues | provenance | MaD:21 | @@ -186,7 +170,6 @@ edges | Test.java:161:26:161:27 | in : MutablePropertyValues [] : PropertyValue | Test.java:161:4:161:6 | out [post update] : MutablePropertyValues [] : PropertyValue | provenance | MaD:20 | | Test.java:162:27:162:29 | out : MutablePropertyValues [] : PropertyValue | Test.java:20:34:20:64 | container : MutablePropertyValues [] : PropertyValue | provenance | | | Test.java:162:27:162:29 | out : MutablePropertyValues [] : PropertyValue | Test.java:162:9:162:30 | getElementDefault(...) | provenance | MaD:23 | -| Test.java:162:27:162:29 | out : MutablePropertyValues [] : PropertyValue | Test.java:162:9:162:30 | getElementDefault(...) | provenance | MaD:34 | | Test.java:167:31:167:76 | newMutablePropertyValuesWithMapValue(...) : MutablePropertyValues [, ] : Object | Test.java:168:10:168:11 | in : MutablePropertyValues [, ] : Object | provenance | | | Test.java:167:68:167:75 | source(...) : Object | Test.java:40:61:40:74 | element : Object | provenance | | | Test.java:167:68:167:75 | source(...) : Object | Test.java:167:31:167:76 | newMutablePropertyValuesWithMapValue(...) : MutablePropertyValues [, ] : Object | provenance | MaD:5 | @@ -197,7 +180,6 @@ edges | Test.java:175:42:175:65 | (...)... : PropertyValue | Test.java:175:6:175:66 | newMutablePropertyValuesWithElement(...) : MutablePropertyValues [] : PropertyValue | provenance | MaD:3 | | Test.java:175:58:175:65 | source(...) : Object | Test.java:175:42:175:65 | (...)... : PropertyValue | provenance | | | Test.java:176:10:176:11 | in : MutablePropertyValues [] : PropertyValue | Test.java:176:10:176:34 | getPropertyValue(...) : PropertyValue | provenance | MaD:23 | -| Test.java:176:10:176:11 | in : MutablePropertyValues [] : PropertyValue | Test.java:176:10:176:34 | getPropertyValue(...) : PropertyValue | provenance | MaD:34 | | Test.java:176:10:176:34 | getPropertyValue(...) : PropertyValue | Test.java:177:9:177:11 | out | provenance | | | Test.java:183:6:183:66 | newMutablePropertyValuesWithElement(...) : MutablePropertyValues [] : PropertyValue | Test.java:184:10:184:11 | in : MutablePropertyValues [] : PropertyValue | provenance | | | Test.java:183:42:183:65 | (...)... : PropertyValue | Test.java:32:60:32:80 | element : PropertyValue | provenance | | @@ -212,7 +194,6 @@ edges | Test.java:191:42:191:65 | (...)... : PropertyValue | Test.java:191:6:191:66 | newMutablePropertyValuesWithElement(...) : MutablePropertyValues [] : PropertyValue | provenance | MaD:3 | | Test.java:191:58:191:65 | source(...) : Object | Test.java:191:42:191:65 | (...)... : PropertyValue | provenance | | | Test.java:192:10:192:11 | in : MutablePropertyValues [] : PropertyValue | Test.java:192:10:192:31 | getPropertyValues(...) : PropertyValue[] [[]] : PropertyValue | provenance | MaD:25 | -| Test.java:192:10:192:11 | in : MutablePropertyValues [] : PropertyValue | Test.java:192:10:192:31 | getPropertyValues(...) : PropertyValue[] [[]] : PropertyValue | provenance | MaD:35 | | Test.java:192:10:192:31 | getPropertyValues(...) : PropertyValue[] [[]] : PropertyValue | Test.java:193:25:193:27 | out : PropertyValue[] [[]] : PropertyValue | provenance | | | Test.java:193:25:193:27 | out : PropertyValue[] [[]] : PropertyValue | Test.java:12:24:12:32 | array : PropertyValue[] [[]] : PropertyValue | provenance | | | Test.java:193:25:193:27 | out : PropertyValue[] [[]] : PropertyValue | Test.java:193:9:193:28 | getArrayElement(...) | provenance | | @@ -222,7 +203,6 @@ edges | Test.java:199:27:199:28 | in : PropertyValue | Test.java:199:4:199:6 | out [post update] : MutablePropertyValues [] : PropertyValue | provenance | MaD:26 | | Test.java:200:27:200:29 | out : MutablePropertyValues [] : PropertyValue | Test.java:20:34:20:64 | container : MutablePropertyValues [] : PropertyValue | provenance | | | Test.java:200:27:200:29 | out : MutablePropertyValues [] : PropertyValue | Test.java:200:9:200:30 | getElementDefault(...) | provenance | MaD:23 | -| Test.java:200:27:200:29 | out : MutablePropertyValues [] : PropertyValue | Test.java:200:9:200:30 | getElementDefault(...) | provenance | MaD:34 | | Test.java:205:23:205:46 | (...)... : PropertyValue | Test.java:206:28:206:29 | in : PropertyValue | provenance | | | Test.java:205:39:205:46 | source(...) : Object | Test.java:205:23:205:46 | (...)... : PropertyValue | provenance | | | Test.java:206:10:206:30 | new PropertyValue(...) : PropertyValue | Test.java:207:9:207:11 | out | provenance | | @@ -267,7 +247,6 @@ edges | Test.java:255:42:255:65 | (...)... : PropertyValue | Test.java:255:6:255:66 | newMutablePropertyValuesWithElement(...) : MutablePropertyValues [] : PropertyValue | provenance | MaD:3 | | Test.java:255:58:255:65 | source(...) : Object | Test.java:255:42:255:65 | (...)... : PropertyValue | provenance | | | Test.java:256:10:256:11 | in : MutablePropertyValues [] : PropertyValue | Test.java:256:10:256:34 | getPropertyValue(...) : PropertyValue | provenance | MaD:23 | -| Test.java:256:10:256:11 | in : MutablePropertyValues [] : PropertyValue | Test.java:256:10:256:34 | getPropertyValue(...) : PropertyValue | provenance | MaD:34 | | Test.java:256:10:256:34 | getPropertyValue(...) : PropertyValue | Test.java:257:9:257:11 | out | provenance | | | Test.java:262:24:262:84 | newMutablePropertyValuesWithElement(...) : MutablePropertyValues [] : PropertyValue | Test.java:263:10:263:11 | in : MutablePropertyValues [] : PropertyValue | provenance | | | Test.java:262:60:262:83 | (...)... : PropertyValue | Test.java:32:60:32:80 | element : PropertyValue | provenance | | @@ -280,7 +259,6 @@ edges | Test.java:270:42:270:65 | (...)... : PropertyValue | Test.java:270:6:270:66 | newMutablePropertyValuesWithElement(...) : MutablePropertyValues [] : PropertyValue | provenance | MaD:3 | | Test.java:270:58:270:65 | source(...) : Object | Test.java:270:42:270:65 | (...)... : PropertyValue | provenance | | | Test.java:271:10:271:11 | in : MutablePropertyValues [] : PropertyValue | Test.java:271:10:271:31 | getPropertyValues(...) : PropertyValue[] [[]] : PropertyValue | provenance | MaD:25 | -| Test.java:271:10:271:11 | in : MutablePropertyValues [] : PropertyValue | Test.java:271:10:271:31 | getPropertyValues(...) : PropertyValue[] [[]] : PropertyValue | provenance | MaD:35 | | Test.java:271:10:271:31 | getPropertyValues(...) : PropertyValue[] [[]] : PropertyValue | Test.java:272:25:272:27 | out : PropertyValue[] [[]] : PropertyValue | provenance | | | Test.java:272:25:272:27 | out : PropertyValue[] [[]] : PropertyValue | Test.java:12:24:12:32 | array : PropertyValue[] [[]] : PropertyValue | provenance | | | Test.java:272:25:272:27 | out : PropertyValue[] [[]] : PropertyValue | Test.java:272:9:272:28 | getArrayElement(...) | provenance | | diff --git a/java/ql/test/library-tests/frameworks/spring/http/flow.expected b/java/ql/test/library-tests/frameworks/spring/http/flow.expected index a9fe6c39bb42..ce9671c3adc0 100644 --- a/java/ql/test/library-tests/frameworks/spring/http/flow.expected +++ b/java/ql/test/library-tests/frameworks/spring/http/flow.expected @@ -1,96 +1,92 @@ models | 1 | Summary: java.util; List; false; of; (Object[]); ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | | 2 | Summary: java.util; List; true; get; (int); ; Argument[this].Element; ReturnValue; value; manual | -| 3 | Summary: java.util; Map; true; get; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 4 | Summary: java.util; Optional; false; of; ; ; Argument[0]; ReturnValue.Element; value; manual | -| 5 | Summary: org.springframework.http; HttpEntity; true; HttpEntity; (MultiValueMap); ; Argument[0].MapKey; Argument[this]; taint; manual | -| 6 | Summary: org.springframework.http; HttpEntity; true; HttpEntity; (MultiValueMap); ; Argument[0].MapValue.Element; Argument[this]; taint; manual | -| 7 | Summary: org.springframework.http; HttpEntity; true; HttpEntity; (Object); ; Argument[0]; Argument[this]; taint; manual | -| 8 | Summary: org.springframework.http; HttpEntity; true; HttpEntity; (Object,MultiValueMap); ; Argument[0]; Argument[this]; taint; manual | -| 9 | Summary: org.springframework.http; HttpEntity; true; HttpEntity; (Object,MultiValueMap); ; Argument[1].MapValue.Element; Argument[this]; taint; manual | -| 10 | Summary: org.springframework.http; HttpEntity; true; getBody; ; ; Argument[this]; ReturnValue; taint; manual | -| 11 | Summary: org.springframework.http; HttpEntity; true; getHeaders; ; ; Argument[this]; ReturnValue; taint; manual | -| 12 | Summary: org.springframework.http; HttpHeaders; true; HttpHeaders; (MultiValueMap); ; Argument[0].MapKey; Argument[this]; taint; manual | -| 13 | Summary: org.springframework.http; HttpHeaders; true; HttpHeaders; (MultiValueMap); ; Argument[0].MapValue.Element; Argument[this]; taint; manual | -| 14 | Summary: org.springframework.http; HttpHeaders; true; add; (String,String); ; Argument[0..1]; Argument[this]; taint; manual | -| 15 | Summary: org.springframework.http; HttpHeaders; true; addAll; (MultiValueMap); ; Argument[0].MapKey; Argument[this]; taint; manual | -| 16 | Summary: org.springframework.http; HttpHeaders; true; addAll; (MultiValueMap); ; Argument[0].MapValue.Element; Argument[this]; taint; manual | -| 17 | Summary: org.springframework.http; HttpHeaders; true; addAll; (String,List); ; Argument[0]; Argument[this]; taint; manual | -| 18 | Summary: org.springframework.http; HttpHeaders; true; addAll; (String,List); ; Argument[1].Element; Argument[this]; taint; manual | -| 19 | Summary: org.springframework.http; HttpHeaders; true; encodeBasicAuth; (String,String,Charset); ; Argument[0..1]; ReturnValue; taint; manual | -| 20 | Summary: org.springframework.http; HttpHeaders; true; formatHeaders; (MultiValueMap); ; Argument[0].MapKey; ReturnValue; taint; manual | -| 21 | Summary: org.springframework.http; HttpHeaders; true; formatHeaders; (MultiValueMap); ; Argument[0].MapValue.Element; ReturnValue; taint; manual | -| 22 | Summary: org.springframework.http; HttpHeaders; true; get; (Object); ; Argument[this]; ReturnValue.Element; taint; manual | -| 23 | Summary: org.springframework.http; HttpHeaders; true; getAccessControlAllowHeaders; (); ; Argument[this]; ReturnValue.Element; taint; manual | -| 24 | Summary: org.springframework.http; HttpHeaders; true; getAccessControlAllowOrigin; (); ; Argument[this]; ReturnValue; taint; manual | -| 25 | Summary: org.springframework.http; HttpHeaders; true; getAccessControlExposeHeaders; (); ; Argument[this]; ReturnValue.Element; taint; manual | -| 26 | Summary: org.springframework.http; HttpHeaders; true; getAccessControlRequestHeaders; (); ; Argument[this]; ReturnValue.Element; taint; manual | -| 27 | Summary: org.springframework.http; HttpHeaders; true; getCacheControl; (); ; Argument[this]; ReturnValue; taint; manual | -| 28 | Summary: org.springframework.http; HttpHeaders; true; getConnection; (); ; Argument[this]; ReturnValue.Element; taint; manual | -| 29 | Summary: org.springframework.http; HttpHeaders; true; getETag; (); ; Argument[this]; ReturnValue; taint; manual | -| 30 | Summary: org.springframework.http; HttpHeaders; true; getFirst; (String); ; Argument[this]; ReturnValue; taint; manual | -| 31 | Summary: org.springframework.http; HttpHeaders; true; getHost; (); ; Argument[this]; ReturnValue; taint; manual | -| 32 | Summary: org.springframework.http; HttpHeaders; true; getIfMatch; (); ; Argument[this]; ReturnValue.Element; taint; manual | -| 33 | Summary: org.springframework.http; HttpHeaders; true; getIfNoneMatch; (); ; Argument[this]; ReturnValue.Element; taint; manual | -| 34 | Summary: org.springframework.http; HttpHeaders; true; getLocation; (); ; Argument[this]; ReturnValue; taint; manual | -| 35 | Summary: org.springframework.http; HttpHeaders; true; getOrEmpty; (Object); ; Argument[this]; ReturnValue.Element; taint; manual | -| 36 | Summary: org.springframework.http; HttpHeaders; true; getOrigin; (); ; Argument[this]; ReturnValue; taint; manual | -| 37 | Summary: org.springframework.http; HttpHeaders; true; getPragma; (); ; Argument[this]; ReturnValue; taint; manual | -| 38 | Summary: org.springframework.http; HttpHeaders; true; getUpgrade; (); ; Argument[this]; ReturnValue; taint; manual | -| 39 | Summary: org.springframework.http; HttpHeaders; true; getValuesAsList; (String); ; Argument[this]; ReturnValue.Element; taint; manual | -| 40 | Summary: org.springframework.http; HttpHeaders; true; getVary; (); ; Argument[this]; ReturnValue.Element; taint; manual | -| 41 | Summary: org.springframework.http; RequestEntity; true; getUrl; (); ; Argument[this]; ReturnValue; taint; manual | -| 42 | Summary: org.springframework.http; ResponseEntity$BodyBuilder; true; body; (Object); ; Argument[0]; ReturnValue; taint; manual | -| 43 | Summary: org.springframework.http; ResponseEntity$BodyBuilder; true; body; (Object); ; Argument[this]; ReturnValue; taint; manual | -| 44 | Summary: org.springframework.http; ResponseEntity$BodyBuilder; true; contentType; (MediaType); ; Argument[this]; ReturnValue; value; manual | -| 45 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; allow; (HttpMethod[]); ; Argument[this]; ReturnValue; value; manual | -| 46 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; build; (); ; Argument[this]; ReturnValue; taint; manual | -| 47 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; eTag; (String); ; Argument[0]; Argument[this]; taint; manual | -| 48 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; eTag; (String); ; Argument[this]; ReturnValue; value; manual | -| 49 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; header; (String,String[]); ; Argument[0]; Argument[this]; taint; manual | -| 50 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; header; (String,String[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | -| 51 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; header; (String,String[]); ; Argument[this]; ReturnValue; value; manual | -| 52 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; headers; (HttpHeaders); ; Argument[0]; Argument[this]; taint; manual | -| 53 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; headers; (HttpHeaders); ; Argument[this]; ReturnValue; value; manual | -| 54 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; lastModified; ; ; Argument[this]; ReturnValue; value; manual | -| 55 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; location; (URI); ; Argument[0]; Argument[this]; taint; manual | -| 56 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; location; (URI); ; Argument[this]; ReturnValue; value; manual | -| 57 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (MultiValueMap,HttpStatus); ; Argument[0].MapKey; Argument[this]; taint; manual | -| 58 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (MultiValueMap,HttpStatus); ; Argument[0].MapValue.Element; Argument[this]; taint; manual | -| 59 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,HttpStatus); ; Argument[0]; Argument[this]; taint; manual | -| 60 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,MultiValueMap,HttpStatus); ; Argument[0]; Argument[this]; taint; manual | -| 61 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,MultiValueMap,HttpStatus); ; Argument[1].MapKey; Argument[this]; taint; manual | -| 62 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,MultiValueMap,HttpStatus); ; Argument[1].MapValue.Element; Argument[this]; taint; manual | -| 63 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,MultiValueMap,int); ; Argument[0]; Argument[this]; taint; manual | -| 64 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,MultiValueMap,int); ; Argument[1].MapKey; Argument[this]; taint; manual | -| 65 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,MultiValueMap,int); ; Argument[1].MapValue.Element; Argument[this]; taint; manual | -| 66 | Summary: org.springframework.http; ResponseEntity; true; created; (URI); ; Argument[0]; ReturnValue; taint; manual | -| 67 | Summary: org.springframework.http; ResponseEntity; true; of; (Optional); ; Argument[0].Element; ReturnValue; taint; manual | -| 68 | Summary: org.springframework.http; ResponseEntity; true; ok; (Object); ; Argument[0]; ReturnValue; taint; manual | -| 69 | Summary: org.springframework.util; MultiValueMap; true; add; ; ; Argument[0]; Argument[this].MapKey; value; manual | -| 70 | Summary: org.springframework.util; MultiValueMap; true; add; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | -| 71 | Summary: org.springframework.util; MultiValueMap; true; addAll; (java.lang.Object,java.util.List); ; Argument[1].Element; Argument[this].MapValue.Element; value; manual | -| 72 | Summary: org.springframework.util; MultiValueMap; true; addAll; (org.springframework.util.MultiValueMap); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | -| 73 | Summary: org.springframework.util; MultiValueMap; true; getFirst; ; ; Argument[this].MapValue.Element; ReturnValue; value; manual | +| 3 | Summary: java.util; Optional; false; of; ; ; Argument[0]; ReturnValue.Element; value; manual | +| 4 | Summary: org.springframework.http; HttpEntity; true; HttpEntity; (MultiValueMap); ; Argument[0].MapKey; Argument[this]; taint; manual | +| 5 | Summary: org.springframework.http; HttpEntity; true; HttpEntity; (MultiValueMap); ; Argument[0].MapValue.Element; Argument[this]; taint; manual | +| 6 | Summary: org.springframework.http; HttpEntity; true; HttpEntity; (Object); ; Argument[0]; Argument[this]; taint; manual | +| 7 | Summary: org.springframework.http; HttpEntity; true; HttpEntity; (Object,MultiValueMap); ; Argument[0]; Argument[this]; taint; manual | +| 8 | Summary: org.springframework.http; HttpEntity; true; HttpEntity; (Object,MultiValueMap); ; Argument[1].MapValue.Element; Argument[this]; taint; manual | +| 9 | Summary: org.springframework.http; HttpEntity; true; getBody; ; ; Argument[this]; ReturnValue; taint; manual | +| 10 | Summary: org.springframework.http; HttpEntity; true; getHeaders; ; ; Argument[this]; ReturnValue; taint; manual | +| 11 | Summary: org.springframework.http; HttpHeaders; true; HttpHeaders; (MultiValueMap); ; Argument[0].MapKey; Argument[this]; taint; manual | +| 12 | Summary: org.springframework.http; HttpHeaders; true; HttpHeaders; (MultiValueMap); ; Argument[0].MapValue.Element; Argument[this]; taint; manual | +| 13 | Summary: org.springframework.http; HttpHeaders; true; add; (String,String); ; Argument[0..1]; Argument[this]; taint; manual | +| 14 | Summary: org.springframework.http; HttpHeaders; true; addAll; (MultiValueMap); ; Argument[0].MapKey; Argument[this]; taint; manual | +| 15 | Summary: org.springframework.http; HttpHeaders; true; addAll; (MultiValueMap); ; Argument[0].MapValue.Element; Argument[this]; taint; manual | +| 16 | Summary: org.springframework.http; HttpHeaders; true; addAll; (String,List); ; Argument[0]; Argument[this]; taint; manual | +| 17 | Summary: org.springframework.http; HttpHeaders; true; addAll; (String,List); ; Argument[1].Element; Argument[this]; taint; manual | +| 18 | Summary: org.springframework.http; HttpHeaders; true; encodeBasicAuth; (String,String,Charset); ; Argument[0..1]; ReturnValue; taint; manual | +| 19 | Summary: org.springframework.http; HttpHeaders; true; formatHeaders; (MultiValueMap); ; Argument[0].MapKey; ReturnValue; taint; manual | +| 20 | Summary: org.springframework.http; HttpHeaders; true; formatHeaders; (MultiValueMap); ; Argument[0].MapValue.Element; ReturnValue; taint; manual | +| 21 | Summary: org.springframework.http; HttpHeaders; true; get; (Object); ; Argument[this]; ReturnValue.Element; taint; manual | +| 22 | Summary: org.springframework.http; HttpHeaders; true; getAccessControlAllowHeaders; (); ; Argument[this]; ReturnValue.Element; taint; manual | +| 23 | Summary: org.springframework.http; HttpHeaders; true; getAccessControlAllowOrigin; (); ; Argument[this]; ReturnValue; taint; manual | +| 24 | Summary: org.springframework.http; HttpHeaders; true; getAccessControlExposeHeaders; (); ; Argument[this]; ReturnValue.Element; taint; manual | +| 25 | Summary: org.springframework.http; HttpHeaders; true; getAccessControlRequestHeaders; (); ; Argument[this]; ReturnValue.Element; taint; manual | +| 26 | Summary: org.springframework.http; HttpHeaders; true; getCacheControl; (); ; Argument[this]; ReturnValue; taint; manual | +| 27 | Summary: org.springframework.http; HttpHeaders; true; getConnection; (); ; Argument[this]; ReturnValue.Element; taint; manual | +| 28 | Summary: org.springframework.http; HttpHeaders; true; getETag; (); ; Argument[this]; ReturnValue; taint; manual | +| 29 | Summary: org.springframework.http; HttpHeaders; true; getFirst; (String); ; Argument[this]; ReturnValue; taint; manual | +| 30 | Summary: org.springframework.http; HttpHeaders; true; getHost; (); ; Argument[this]; ReturnValue; taint; manual | +| 31 | Summary: org.springframework.http; HttpHeaders; true; getIfMatch; (); ; Argument[this]; ReturnValue.Element; taint; manual | +| 32 | Summary: org.springframework.http; HttpHeaders; true; getIfNoneMatch; (); ; Argument[this]; ReturnValue.Element; taint; manual | +| 33 | Summary: org.springframework.http; HttpHeaders; true; getLocation; (); ; Argument[this]; ReturnValue; taint; manual | +| 34 | Summary: org.springframework.http; HttpHeaders; true; getOrEmpty; (Object); ; Argument[this]; ReturnValue.Element; taint; manual | +| 35 | Summary: org.springframework.http; HttpHeaders; true; getOrigin; (); ; Argument[this]; ReturnValue; taint; manual | +| 36 | Summary: org.springframework.http; HttpHeaders; true; getPragma; (); ; Argument[this]; ReturnValue; taint; manual | +| 37 | Summary: org.springframework.http; HttpHeaders; true; getUpgrade; (); ; Argument[this]; ReturnValue; taint; manual | +| 38 | Summary: org.springframework.http; HttpHeaders; true; getValuesAsList; (String); ; Argument[this]; ReturnValue.Element; taint; manual | +| 39 | Summary: org.springframework.http; HttpHeaders; true; getVary; (); ; Argument[this]; ReturnValue.Element; taint; manual | +| 40 | Summary: org.springframework.http; RequestEntity; true; getUrl; (); ; Argument[this]; ReturnValue; taint; manual | +| 41 | Summary: org.springframework.http; ResponseEntity$BodyBuilder; true; body; (Object); ; Argument[0]; ReturnValue; taint; manual | +| 42 | Summary: org.springframework.http; ResponseEntity$BodyBuilder; true; body; (Object); ; Argument[this]; ReturnValue; taint; manual | +| 43 | Summary: org.springframework.http; ResponseEntity$BodyBuilder; true; contentType; (MediaType); ; Argument[this]; ReturnValue; value; manual | +| 44 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; allow; (HttpMethod[]); ; Argument[this]; ReturnValue; value; manual | +| 45 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; build; (); ; Argument[this]; ReturnValue; taint; manual | +| 46 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; eTag; (String); ; Argument[0]; Argument[this]; taint; manual | +| 47 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; eTag; (String); ; Argument[this]; ReturnValue; value; manual | +| 48 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; header; (String,String[]); ; Argument[0]; Argument[this]; taint; manual | +| 49 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; header; (String,String[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | +| 50 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; header; (String,String[]); ; Argument[this]; ReturnValue; value; manual | +| 51 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; headers; (HttpHeaders); ; Argument[0]; Argument[this]; taint; manual | +| 52 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; headers; (HttpHeaders); ; Argument[this]; ReturnValue; value; manual | +| 53 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; lastModified; ; ; Argument[this]; ReturnValue; value; manual | +| 54 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; location; (URI); ; Argument[0]; Argument[this]; taint; manual | +| 55 | Summary: org.springframework.http; ResponseEntity$HeadersBuilder; true; location; (URI); ; Argument[this]; ReturnValue; value; manual | +| 56 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (MultiValueMap,HttpStatus); ; Argument[0].MapKey; Argument[this]; taint; manual | +| 57 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (MultiValueMap,HttpStatus); ; Argument[0].MapValue.Element; Argument[this]; taint; manual | +| 58 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,HttpStatus); ; Argument[0]; Argument[this]; taint; manual | +| 59 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,MultiValueMap,HttpStatus); ; Argument[0]; Argument[this]; taint; manual | +| 60 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,MultiValueMap,HttpStatus); ; Argument[1].MapKey; Argument[this]; taint; manual | +| 61 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,MultiValueMap,HttpStatus); ; Argument[1].MapValue.Element; Argument[this]; taint; manual | +| 62 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,MultiValueMap,int); ; Argument[0]; Argument[this]; taint; manual | +| 63 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,MultiValueMap,int); ; Argument[1].MapKey; Argument[this]; taint; manual | +| 64 | Summary: org.springframework.http; ResponseEntity; true; ResponseEntity; (Object,MultiValueMap,int); ; Argument[1].MapValue.Element; Argument[this]; taint; manual | +| 65 | Summary: org.springframework.http; ResponseEntity; true; created; (URI); ; Argument[0]; ReturnValue; taint; manual | +| 66 | Summary: org.springframework.http; ResponseEntity; true; of; (Optional); ; Argument[0].Element; ReturnValue; taint; manual | +| 67 | Summary: org.springframework.http; ResponseEntity; true; ok; (Object); ; Argument[0]; ReturnValue; taint; manual | +| 68 | Summary: org.springframework.util; MultiValueMap; true; add; ; ; Argument[0]; Argument[this].MapKey; value; manual | +| 69 | Summary: org.springframework.util; MultiValueMap; true; add; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | edges | TestHttp.java:16:20:16:26 | taint(...) : String | TestHttp.java:17:29:17:29 | x : String | provenance | | | TestHttp.java:16:20:16:26 | taint(...) : String | TestHttp.java:20:29:20:29 | x : String | provenance | | -| TestHttp.java:17:29:17:29 | x : String | TestHttp.java:17:14:17:30 | new HttpEntity<>(...) | provenance | MaD:7 | -| TestHttp.java:20:29:20:29 | x : String | TestHttp.java:20:14:20:34 | new HttpEntity<>(...) | provenance | MaD:8 | +| TestHttp.java:17:29:17:29 | x : String | TestHttp.java:17:14:17:30 | new HttpEntity<>(...) | provenance | MaD:6 | +| TestHttp.java:20:29:20:29 | x : String | TestHttp.java:20:14:20:34 | new HttpEntity<>(...) | provenance | MaD:7 | | TestHttp.java:22:9:22:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | TestHttp.java:23:34:23:35 | m1 : LinkedMultiValueMap [, ] : String | provenance | | | TestHttp.java:22:9:22:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | TestHttp.java:24:37:24:38 | m1 : LinkedMultiValueMap [, ] : String | provenance | | -| TestHttp.java:22:21:22:27 | taint(...) : String | TestHttp.java:22:9:22:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | provenance | MaD:70 | -| TestHttp.java:23:34:23:35 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:23:14:23:36 | new HttpEntity<>(...) | provenance | MaD:9 | -| TestHttp.java:24:37:24:38 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:24:14:24:39 | new HttpEntity(...) | provenance | MaD:6 | +| TestHttp.java:22:21:22:27 | taint(...) : String | TestHttp.java:22:9:22:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | provenance | MaD:69 | +| TestHttp.java:23:34:23:35 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:23:14:23:36 | new HttpEntity<>(...) | provenance | MaD:8 | +| TestHttp.java:24:37:24:38 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:24:14:24:39 | new HttpEntity(...) | provenance | MaD:5 | | TestHttp.java:27:9:27:10 | m2 [post update] : LinkedMultiValueMap [] : String | TestHttp.java:28:37:28:38 | m2 : LinkedMultiValueMap [] : String | provenance | | -| TestHttp.java:27:16:27:22 | taint(...) : String | TestHttp.java:27:9:27:10 | m2 [post update] : LinkedMultiValueMap [] : String | provenance | MaD:69 | -| TestHttp.java:28:37:28:38 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:28:14:28:39 | new HttpEntity(...) | provenance | MaD:5 | +| TestHttp.java:27:16:27:22 | taint(...) : String | TestHttp.java:27:9:27:10 | m2 [post update] : LinkedMultiValueMap [] : String | provenance | MaD:68 | +| TestHttp.java:28:37:28:38 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:28:14:28:39 | new HttpEntity(...) | provenance | MaD:4 | | TestHttp.java:30:34:30:40 | taint(...) : HttpEntity | TestHttp.java:31:14:31:16 | ent : HttpEntity | provenance | | | TestHttp.java:30:34:30:40 | taint(...) : HttpEntity | TestHttp.java:32:14:32:16 | ent : HttpEntity | provenance | | -| TestHttp.java:31:14:31:16 | ent : HttpEntity | TestHttp.java:31:14:31:26 | getBody(...) | provenance | MaD:10 | -| TestHttp.java:32:14:32:16 | ent : HttpEntity | TestHttp.java:32:14:32:29 | getHeaders(...) | provenance | MaD:11 | +| TestHttp.java:31:14:31:16 | ent : HttpEntity | TestHttp.java:31:14:31:26 | getBody(...) | provenance | MaD:9 | +| TestHttp.java:32:14:32:16 | ent : HttpEntity | TestHttp.java:32:14:32:29 | getHeaders(...) | provenance | MaD:10 | | TestHttp.java:34:37:34:43 | taint(...) : RequestEntity | TestHttp.java:35:14:35:16 | req : RequestEntity | provenance | | -| TestHttp.java:35:14:35:16 | req : RequestEntity | TestHttp.java:35:14:35:25 | getUrl(...) | provenance | MaD:41 | +| TestHttp.java:35:14:35:16 | req : RequestEntity | TestHttp.java:35:14:35:25 | getUrl(...) | provenance | MaD:40 | | TestHttp.java:39:20:39:26 | taint(...) : String | TestHttp.java:40:14:40:33 | ok(...) | provenance | SpringResponseEntity | | TestHttp.java:39:20:39:26 | taint(...) : String | TestHttp.java:40:32:40:32 | x : String | provenance | | | TestHttp.java:39:20:39:26 | taint(...) : String | TestHttp.java:41:44:41:44 | x : String | provenance | | @@ -99,86 +95,80 @@ edges | TestHttp.java:39:20:39:26 | taint(...) : String | TestHttp.java:45:48:45:48 | x : String | provenance | | | TestHttp.java:39:20:39:26 | taint(...) : String | TestHttp.java:46:63:46:63 | x : String | provenance | | | TestHttp.java:39:20:39:26 | taint(...) : String | TestHttp.java:50:46:50:46 | x : String | provenance | | -| TestHttp.java:40:32:40:32 | x : String | TestHttp.java:40:14:40:33 | ok(...) | provenance | MaD:68 | -| TestHttp.java:41:32:41:45 | of(...) : Optional [] : String | TestHttp.java:41:14:41:46 | of(...) | provenance | MaD:67 | -| TestHttp.java:41:44:41:44 | x : String | TestHttp.java:41:32:41:45 | of(...) : Optional [] : String | provenance | MaD:4 | -| TestHttp.java:43:66:43:66 | x : String | TestHttp.java:43:14:43:67 | body(...) | provenance | MaD:42 | -| TestHttp.java:44:14:44:44 | created(...) : BodyBuilder | TestHttp.java:44:14:44:62 | contentType(...) : BodyBuilder | provenance | MaD:44 | -| TestHttp.java:44:14:44:62 | contentType(...) : BodyBuilder | TestHttp.java:44:14:44:72 | body(...) | provenance | MaD:43 | -| TestHttp.java:44:37:44:43 | taint(...) : URI | TestHttp.java:44:14:44:44 | created(...) : BodyBuilder | provenance | MaD:66 | -| TestHttp.java:45:14:45:64 | header(...) : BodyBuilder | TestHttp.java:45:14:45:72 | build(...) | provenance | MaD:46 | -| TestHttp.java:45:48:45:48 | x : String | TestHttp.java:45:14:45:64 | header(...) : BodyBuilder | provenance | MaD:49+MaD:51 | -| TestHttp.java:46:14:46:64 | header(...) : BodyBuilder | TestHttp.java:46:14:46:72 | build(...) | provenance | MaD:46 | -| TestHttp.java:46:14:46:64 | new ..[] { .. } : String[] [[]] : String | TestHttp.java:46:14:46:64 | header(...) : BodyBuilder | provenance | MaD:50+MaD:51 | +| TestHttp.java:40:32:40:32 | x : String | TestHttp.java:40:14:40:33 | ok(...) | provenance | MaD:67 | +| TestHttp.java:41:32:41:45 | of(...) : Optional [] : String | TestHttp.java:41:14:41:46 | of(...) | provenance | MaD:66 | +| TestHttp.java:41:44:41:44 | x : String | TestHttp.java:41:32:41:45 | of(...) : Optional [] : String | provenance | MaD:3 | +| TestHttp.java:43:66:43:66 | x : String | TestHttp.java:43:14:43:67 | body(...) | provenance | MaD:41 | +| TestHttp.java:44:14:44:44 | created(...) : BodyBuilder | TestHttp.java:44:14:44:62 | contentType(...) : BodyBuilder | provenance | MaD:43 | +| TestHttp.java:44:14:44:62 | contentType(...) : BodyBuilder | TestHttp.java:44:14:44:72 | body(...) | provenance | MaD:42 | +| TestHttp.java:44:37:44:43 | taint(...) : URI | TestHttp.java:44:14:44:44 | created(...) : BodyBuilder | provenance | MaD:65 | +| TestHttp.java:45:14:45:64 | header(...) : BodyBuilder | TestHttp.java:45:14:45:72 | build(...) | provenance | MaD:45 | +| TestHttp.java:45:48:45:48 | x : String | TestHttp.java:45:14:45:64 | header(...) : BodyBuilder | provenance | MaD:48+MaD:50 | +| TestHttp.java:46:14:46:64 | header(...) : BodyBuilder | TestHttp.java:46:14:46:72 | build(...) | provenance | MaD:45 | +| TestHttp.java:46:14:46:64 | new ..[] { .. } : String[] [[]] : String | TestHttp.java:46:14:46:64 | header(...) : BodyBuilder | provenance | MaD:49+MaD:50 | | TestHttp.java:46:63:46:63 | x : String | TestHttp.java:46:14:46:64 | new ..[] { .. } : String[] [[]] : String | provenance | | | TestHttp.java:48:9:48:9 | h [post update] : HttpHeaders | TestHttp.java:49:49:49:49 | h : HttpHeaders | provenance | | -| TestHttp.java:48:20:48:26 | taint(...) : String | TestHttp.java:48:9:48:9 | h [post update] : HttpHeaders | provenance | MaD:14 | -| TestHttp.java:49:14:49:50 | headers(...) : BodyBuilder | TestHttp.java:49:14:49:58 | allow(...) : BodyBuilder | provenance | MaD:45 | -| TestHttp.java:49:14:49:58 | allow(...) : BodyBuilder | TestHttp.java:49:14:49:66 | build(...) | provenance | MaD:46 | -| TestHttp.java:49:49:49:49 | h : HttpHeaders | TestHttp.java:49:14:49:50 | headers(...) : BodyBuilder | provenance | MaD:52+MaD:53 | -| TestHttp.java:50:14:50:47 | eTag(...) : BodyBuilder | TestHttp.java:50:14:50:55 | allow(...) : BodyBuilder | provenance | MaD:45 | -| TestHttp.java:50:14:50:55 | allow(...) : BodyBuilder | TestHttp.java:50:14:50:63 | build(...) | provenance | MaD:46 | -| TestHttp.java:50:46:50:46 | x : String | TestHttp.java:50:14:50:47 | eTag(...) : BodyBuilder | provenance | MaD:47+MaD:48 | -| TestHttp.java:51:14:51:57 | location(...) : BodyBuilder | TestHttp.java:51:14:51:80 | lastModified(...) : BodyBuilder | provenance | MaD:54 | -| TestHttp.java:51:14:51:80 | lastModified(...) : BodyBuilder | TestHttp.java:51:14:51:88 | build(...) | provenance | MaD:46 | -| TestHttp.java:51:50:51:56 | taint(...) : URI | TestHttp.java:51:14:51:57 | location(...) : BodyBuilder | provenance | MaD:55+MaD:56 | +| TestHttp.java:48:20:48:26 | taint(...) : String | TestHttp.java:48:9:48:9 | h [post update] : HttpHeaders | provenance | MaD:13 | +| TestHttp.java:49:14:49:50 | headers(...) : BodyBuilder | TestHttp.java:49:14:49:58 | allow(...) : BodyBuilder | provenance | MaD:44 | +| TestHttp.java:49:14:49:58 | allow(...) : BodyBuilder | TestHttp.java:49:14:49:66 | build(...) | provenance | MaD:45 | +| TestHttp.java:49:49:49:49 | h : HttpHeaders | TestHttp.java:49:14:49:50 | headers(...) : BodyBuilder | provenance | MaD:51+MaD:52 | +| TestHttp.java:50:14:50:47 | eTag(...) : BodyBuilder | TestHttp.java:50:14:50:55 | allow(...) : BodyBuilder | provenance | MaD:44 | +| TestHttp.java:50:14:50:55 | allow(...) : BodyBuilder | TestHttp.java:50:14:50:63 | build(...) | provenance | MaD:45 | +| TestHttp.java:50:46:50:46 | x : String | TestHttp.java:50:14:50:47 | eTag(...) : BodyBuilder | provenance | MaD:46+MaD:47 | +| TestHttp.java:51:14:51:57 | location(...) : BodyBuilder | TestHttp.java:51:14:51:80 | lastModified(...) : BodyBuilder | provenance | MaD:53 | +| TestHttp.java:51:14:51:80 | lastModified(...) : BodyBuilder | TestHttp.java:51:14:51:88 | build(...) | provenance | MaD:45 | +| TestHttp.java:51:50:51:56 | taint(...) : URI | TestHttp.java:51:14:51:57 | location(...) : BodyBuilder | provenance | MaD:54+MaD:55 | | TestHttp.java:56:20:56:26 | taint(...) : String | TestHttp.java:59:33:59:33 | x : String | provenance | | | TestHttp.java:56:20:56:26 | taint(...) : String | TestHttp.java:60:33:60:33 | x : String | provenance | | | TestHttp.java:56:20:56:26 | taint(...) : String | TestHttp.java:61:33:61:33 | x : String | provenance | | -| TestHttp.java:59:33:59:33 | x : String | TestHttp.java:59:14:59:55 | new ResponseEntity<>(...) | provenance | MaD:59 | -| TestHttp.java:60:33:60:33 | x : String | TestHttp.java:60:14:60:59 | new ResponseEntity<>(...) | provenance | MaD:60 | -| TestHttp.java:61:33:61:33 | x : String | TestHttp.java:61:14:61:43 | new ResponseEntity<>(...) | provenance | MaD:63 | +| TestHttp.java:59:33:59:33 | x : String | TestHttp.java:59:14:59:55 | new ResponseEntity<>(...) | provenance | MaD:58 | +| TestHttp.java:60:33:60:33 | x : String | TestHttp.java:60:14:60:59 | new ResponseEntity<>(...) | provenance | MaD:59 | +| TestHttp.java:61:33:61:33 | x : String | TestHttp.java:61:14:61:43 | new ResponseEntity<>(...) | provenance | MaD:62 | | TestHttp.java:63:9:63:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | TestHttp.java:64:38:64:39 | m1 : LinkedMultiValueMap [, ] : String | provenance | | | TestHttp.java:63:9:63:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | TestHttp.java:65:41:65:42 | m1 : LinkedMultiValueMap [, ] : String | provenance | | | TestHttp.java:63:9:63:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | TestHttp.java:66:38:66:39 | m1 : LinkedMultiValueMap [, ] : String | provenance | | -| TestHttp.java:63:21:63:27 | taint(...) : String | TestHttp.java:63:9:63:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | provenance | MaD:70 | -| TestHttp.java:64:38:64:39 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:64:14:64:61 | new ResponseEntity<>(...) | provenance | MaD:62 | -| TestHttp.java:65:41:65:42 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:65:14:65:64 | new ResponseEntity(...) | provenance | MaD:58 | -| TestHttp.java:66:38:66:39 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:66:14:66:45 | new ResponseEntity<>(...) | provenance | MaD:65 | +| TestHttp.java:63:21:63:27 | taint(...) : String | TestHttp.java:63:9:63:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | provenance | MaD:69 | +| TestHttp.java:64:38:64:39 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:64:14:64:61 | new ResponseEntity<>(...) | provenance | MaD:61 | +| TestHttp.java:65:41:65:42 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:65:14:65:64 | new ResponseEntity(...) | provenance | MaD:57 | +| TestHttp.java:66:38:66:39 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:66:14:66:45 | new ResponseEntity<>(...) | provenance | MaD:64 | | TestHttp.java:69:9:69:10 | m2 [post update] : LinkedMultiValueMap [] : String | TestHttp.java:70:38:70:39 | m2 : LinkedMultiValueMap [] : String | provenance | | | TestHttp.java:69:9:69:10 | m2 [post update] : LinkedMultiValueMap [] : String | TestHttp.java:71:41:71:42 | m2 : LinkedMultiValueMap [] : String | provenance | | | TestHttp.java:69:9:69:10 | m2 [post update] : LinkedMultiValueMap [] : String | TestHttp.java:72:38:72:39 | m2 : LinkedMultiValueMap [] : String | provenance | | -| TestHttp.java:69:16:69:22 | taint(...) : String | TestHttp.java:69:9:69:10 | m2 [post update] : LinkedMultiValueMap [] : String | provenance | MaD:69 | -| TestHttp.java:70:38:70:39 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:70:14:70:61 | new ResponseEntity<>(...) | provenance | MaD:61 | -| TestHttp.java:71:41:71:42 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:71:14:71:64 | new ResponseEntity(...) | provenance | MaD:57 | -| TestHttp.java:72:38:72:39 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:72:14:72:45 | new ResponseEntity<>(...) | provenance | MaD:64 | +| TestHttp.java:69:16:69:22 | taint(...) : String | TestHttp.java:69:9:69:10 | m2 [post update] : LinkedMultiValueMap [] : String | provenance | MaD:68 | +| TestHttp.java:70:38:70:39 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:70:14:70:61 | new ResponseEntity<>(...) | provenance | MaD:60 | +| TestHttp.java:71:41:71:42 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:71:14:71:64 | new ResponseEntity(...) | provenance | MaD:56 | +| TestHttp.java:72:38:72:39 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:72:14:72:45 | new ResponseEntity<>(...) | provenance | MaD:63 | | TestHttp.java:74:38:74:44 | taint(...) : ResponseEntity | TestHttp.java:75:14:75:16 | ent : ResponseEntity | provenance | | | TestHttp.java:74:38:74:44 | taint(...) : ResponseEntity | TestHttp.java:76:14:76:16 | ent : ResponseEntity | provenance | | -| TestHttp.java:75:14:75:16 | ent : ResponseEntity | TestHttp.java:75:14:75:26 | getBody(...) | provenance | MaD:10 | -| TestHttp.java:76:14:76:16 | ent : ResponseEntity | TestHttp.java:76:14:76:29 | getHeaders(...) | provenance | MaD:11 | +| TestHttp.java:75:14:75:16 | ent : ResponseEntity | TestHttp.java:75:14:75:26 | getBody(...) | provenance | MaD:9 | +| TestHttp.java:76:14:76:16 | ent : ResponseEntity | TestHttp.java:76:14:76:29 | getHeaders(...) | provenance | MaD:10 | | TestHttp.java:81:9:81:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | TestHttp.java:82:30:82:31 | m1 : LinkedMultiValueMap [, ] : String | provenance | | | TestHttp.java:81:9:81:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | TestHttp.java:97:19:97:20 | m1 : LinkedMultiValueMap [, ] : String | provenance | | | TestHttp.java:81:9:81:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | TestHttp.java:112:40:112:41 | m1 : LinkedMultiValueMap [, ] : String | provenance | | -| TestHttp.java:81:21:81:27 | taint(...) : String | TestHttp.java:81:9:81:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | provenance | MaD:70 | -| TestHttp.java:82:30:82:31 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:82:14:82:32 | new HttpHeaders(...) | provenance | MaD:13 | +| TestHttp.java:81:21:81:27 | taint(...) : String | TestHttp.java:81:9:81:10 | m1 [post update] : LinkedMultiValueMap [, ] : String | provenance | MaD:69 | +| TestHttp.java:82:30:82:31 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:82:14:82:32 | new HttpHeaders(...) | provenance | MaD:12 | | TestHttp.java:85:9:85:10 | m2 [post update] : LinkedMultiValueMap [] : String | TestHttp.java:86:30:86:31 | m2 : LinkedMultiValueMap [] : String | provenance | | | TestHttp.java:85:9:85:10 | m2 [post update] : LinkedMultiValueMap [] : String | TestHttp.java:101:19:101:20 | m2 : LinkedMultiValueMap [] : String | provenance | | | TestHttp.java:85:9:85:10 | m2 [post update] : LinkedMultiValueMap [] : String | TestHttp.java:113:40:113:41 | m2 : LinkedMultiValueMap [] : String | provenance | | -| TestHttp.java:85:16:85:22 | taint(...) : String | TestHttp.java:85:9:85:10 | m2 [post update] : LinkedMultiValueMap [] : String | provenance | MaD:69 | -| TestHttp.java:86:30:86:31 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:86:14:86:32 | new HttpHeaders(...) | provenance | MaD:12 | +| TestHttp.java:85:16:85:22 | taint(...) : String | TestHttp.java:85:9:85:10 | m2 [post update] : LinkedMultiValueMap [] : String | provenance | MaD:68 | +| TestHttp.java:86:30:86:31 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:86:14:86:32 | new HttpHeaders(...) | provenance | MaD:11 | | TestHttp.java:89:9:89:10 | h1 [post update] : HttpHeaders | TestHttp.java:90:14:90:15 | h1 | provenance | | -| TestHttp.java:89:16:89:22 | taint(...) : String | TestHttp.java:89:9:89:10 | h1 [post update] : HttpHeaders | provenance | MaD:14 | +| TestHttp.java:89:16:89:22 | taint(...) : String | TestHttp.java:89:9:89:10 | h1 [post update] : HttpHeaders | provenance | MaD:13 | | TestHttp.java:93:9:93:10 | h2 [post update] : HttpHeaders | TestHttp.java:94:14:94:15 | h2 | provenance | | -| TestHttp.java:93:9:93:10 | h2 [post update] : HttpHeaders [, ] : String | TestHttp.java:94:14:94:15 | h2 | provenance | | -| TestHttp.java:93:21:93:27 | taint(...) : String | TestHttp.java:93:9:93:10 | h2 [post update] : HttpHeaders | provenance | MaD:14 | -| TestHttp.java:93:21:93:27 | taint(...) : String | TestHttp.java:93:9:93:10 | h2 [post update] : HttpHeaders [, ] : String | provenance | MaD:70 | +| TestHttp.java:93:21:93:27 | taint(...) : String | TestHttp.java:93:9:93:10 | h2 [post update] : HttpHeaders | provenance | MaD:13 | | TestHttp.java:97:9:97:10 | h3 [post update] : HttpHeaders | TestHttp.java:98:14:98:15 | h3 | provenance | | -| TestHttp.java:97:9:97:10 | h3 [post update] : HttpHeaders [, ] : String | TestHttp.java:98:14:98:15 | h3 | provenance | | -| TestHttp.java:97:19:97:20 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:97:9:97:10 | h3 [post update] : HttpHeaders | provenance | MaD:16 | -| TestHttp.java:97:19:97:20 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:97:9:97:10 | h3 [post update] : HttpHeaders [, ] : String | provenance | MaD:72 | +| TestHttp.java:97:19:97:20 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:97:9:97:10 | h3 [post update] : HttpHeaders | provenance | MaD:15 | | TestHttp.java:101:9:101:10 | h4 [post update] : HttpHeaders | TestHttp.java:102:14:102:15 | h4 | provenance | | -| TestHttp.java:101:19:101:20 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:101:9:101:10 | h4 [post update] : HttpHeaders | provenance | MaD:15 | +| TestHttp.java:101:19:101:20 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:101:9:101:10 | h4 [post update] : HttpHeaders | provenance | MaD:14 | | TestHttp.java:105:9:105:10 | h5 [post update] : HttpHeaders | TestHttp.java:106:14:106:15 | h5 | provenance | | -| TestHttp.java:105:19:105:25 | taint(...) : String | TestHttp.java:105:9:105:10 | h5 [post update] : HttpHeaders | provenance | MaD:17 | +| TestHttp.java:105:19:105:25 | taint(...) : String | TestHttp.java:105:9:105:10 | h5 [post update] : HttpHeaders | provenance | MaD:16 | | TestHttp.java:109:9:109:10 | h6 [post update] : HttpHeaders | TestHttp.java:110:14:110:15 | h6 | provenance | | -| TestHttp.java:109:9:109:10 | h6 [post update] : HttpHeaders [, ] : Object | TestHttp.java:110:14:110:15 | h6 | provenance | | -| TestHttp.java:109:24:109:39 | of(...) : List [] : Object | TestHttp.java:109:9:109:10 | h6 [post update] : HttpHeaders | provenance | MaD:18 | -| TestHttp.java:109:24:109:39 | of(...) : List [] : Object | TestHttp.java:109:9:109:10 | h6 [post update] : HttpHeaders [, ] : Object | provenance | MaD:71 | +| TestHttp.java:109:24:109:39 | of(...) : List [] : Object | TestHttp.java:109:9:109:10 | h6 [post update] : HttpHeaders | provenance | MaD:17 | | TestHttp.java:109:32:109:38 | taint(...) : String[] | TestHttp.java:109:24:109:39 | of(...) : List [] : Object | provenance | MaD:1 | -| TestHttp.java:112:40:112:41 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:112:14:112:42 | formatHeaders(...) | provenance | MaD:21 | -| TestHttp.java:113:40:113:41 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:113:14:113:42 | formatHeaders(...) | provenance | MaD:20 | -| TestHttp.java:115:42:115:48 | taint(...) : String | TestHttp.java:115:14:115:60 | encodeBasicAuth(...) | provenance | MaD:19 | -| TestHttp.java:116:47:116:53 | taint(...) : String | TestHttp.java:116:14:116:60 | encodeBasicAuth(...) | provenance | MaD:19 | +| TestHttp.java:112:40:112:41 | m1 : LinkedMultiValueMap [, ] : String | TestHttp.java:112:14:112:42 | formatHeaders(...) | provenance | MaD:20 | +| TestHttp.java:113:40:113:41 | m2 : LinkedMultiValueMap [] : String | TestHttp.java:113:14:113:42 | formatHeaders(...) | provenance | MaD:19 | +| TestHttp.java:115:42:115:48 | taint(...) : String | TestHttp.java:115:14:115:60 | encodeBasicAuth(...) | provenance | MaD:18 | +| TestHttp.java:116:47:116:53 | taint(...) : String | TestHttp.java:116:14:116:60 | encodeBasicAuth(...) | provenance | MaD:18 | | TestHttp.java:120:25:120:31 | taint(...) : HttpHeaders | TestHttp.java:122:14:122:14 | h : HttpHeaders | provenance | | | TestHttp.java:120:25:120:31 | taint(...) : HttpHeaders | TestHttp.java:128:14:128:14 | h : HttpHeaders | provenance | | | TestHttp.java:120:25:120:31 | taint(...) : HttpHeaders | TestHttp.java:130:14:130:14 | h : HttpHeaders | provenance | | @@ -198,37 +188,34 @@ edges | TestHttp.java:120:25:120:31 | taint(...) : HttpHeaders | TestHttp.java:158:14:158:14 | h : HttpHeaders | provenance | | | TestHttp.java:120:25:120:31 | taint(...) : HttpHeaders | TestHttp.java:159:14:159:14 | h : HttpHeaders | provenance | | | TestHttp.java:120:25:120:31 | taint(...) : HttpHeaders | TestHttp.java:160:14:160:14 | h : HttpHeaders | provenance | | -| TestHttp.java:122:14:122:14 | h : HttpHeaders | TestHttp.java:122:14:122:24 | get(...) : List | provenance | MaD:3 | -| TestHttp.java:122:14:122:14 | h : HttpHeaders | TestHttp.java:122:14:122:24 | get(...) : List [] : Object | provenance | MaD:22 | -| TestHttp.java:122:14:122:24 | get(...) : List | TestHttp.java:122:14:122:31 | get(...) | provenance | MaD:2 | +| TestHttp.java:122:14:122:14 | h : HttpHeaders | TestHttp.java:122:14:122:24 | get(...) : List [] : Object | provenance | MaD:21 | | TestHttp.java:122:14:122:24 | get(...) : List [] : Object | TestHttp.java:122:14:122:31 | get(...) | provenance | MaD:2 | -| TestHttp.java:128:14:128:14 | h : HttpHeaders | TestHttp.java:128:14:128:45 | getAccessControlAllowHeaders(...) : List [] : Object | provenance | MaD:23 | +| TestHttp.java:128:14:128:14 | h : HttpHeaders | TestHttp.java:128:14:128:45 | getAccessControlAllowHeaders(...) : List [] : Object | provenance | MaD:22 | | TestHttp.java:128:14:128:45 | getAccessControlAllowHeaders(...) : List [] : Object | TestHttp.java:128:14:128:52 | get(...) | provenance | MaD:2 | -| TestHttp.java:130:14:130:14 | h : HttpHeaders | TestHttp.java:130:14:130:44 | getAccessControlAllowOrigin(...) | provenance | MaD:24 | -| TestHttp.java:131:14:131:14 | h : HttpHeaders | TestHttp.java:131:14:131:46 | getAccessControlExposeHeaders(...) : List [] : Object | provenance | MaD:25 | +| TestHttp.java:130:14:130:14 | h : HttpHeaders | TestHttp.java:130:14:130:44 | getAccessControlAllowOrigin(...) | provenance | MaD:23 | +| TestHttp.java:131:14:131:14 | h : HttpHeaders | TestHttp.java:131:14:131:46 | getAccessControlExposeHeaders(...) : List [] : Object | provenance | MaD:24 | | TestHttp.java:131:14:131:46 | getAccessControlExposeHeaders(...) : List [] : Object | TestHttp.java:131:14:131:53 | get(...) | provenance | MaD:2 | -| TestHttp.java:133:14:133:14 | h : HttpHeaders | TestHttp.java:133:14:133:47 | getAccessControlRequestHeaders(...) : List [] : Object | provenance | MaD:26 | +| TestHttp.java:133:14:133:14 | h : HttpHeaders | TestHttp.java:133:14:133:47 | getAccessControlRequestHeaders(...) : List [] : Object | provenance | MaD:25 | | TestHttp.java:133:14:133:47 | getAccessControlRequestHeaders(...) : List [] : Object | TestHttp.java:133:14:133:54 | get(...) | provenance | MaD:2 | -| TestHttp.java:136:14:136:14 | h : HttpHeaders | TestHttp.java:136:14:136:32 | getCacheControl(...) | provenance | MaD:27 | -| TestHttp.java:137:14:137:14 | h : HttpHeaders | TestHttp.java:137:14:137:30 | getConnection(...) : List [] : Object | provenance | MaD:28 | +| TestHttp.java:136:14:136:14 | h : HttpHeaders | TestHttp.java:136:14:136:32 | getCacheControl(...) | provenance | MaD:26 | +| TestHttp.java:137:14:137:14 | h : HttpHeaders | TestHttp.java:137:14:137:30 | getConnection(...) : List [] : Object | provenance | MaD:27 | | TestHttp.java:137:14:137:30 | getConnection(...) : List [] : Object | TestHttp.java:137:14:137:37 | get(...) | provenance | MaD:2 | -| TestHttp.java:143:14:143:14 | h : HttpHeaders | TestHttp.java:143:14:143:24 | getETag(...) | provenance | MaD:29 | -| TestHttp.java:145:14:145:14 | h : HttpHeaders | TestHttp.java:145:14:145:28 | getFirst(...) | provenance | MaD:30 | -| TestHttp.java:145:14:145:14 | h : HttpHeaders | TestHttp.java:145:14:145:28 | getFirst(...) | provenance | MaD:73 | -| TestHttp.java:148:14:148:14 | h : HttpHeaders | TestHttp.java:148:14:148:24 | getHost(...) | provenance | MaD:31 | -| TestHttp.java:149:14:149:14 | h : HttpHeaders | TestHttp.java:149:14:149:27 | getIfMatch(...) : List [] : Object | provenance | MaD:32 | +| TestHttp.java:143:14:143:14 | h : HttpHeaders | TestHttp.java:143:14:143:24 | getETag(...) | provenance | MaD:28 | +| TestHttp.java:145:14:145:14 | h : HttpHeaders | TestHttp.java:145:14:145:28 | getFirst(...) | provenance | MaD:29 | +| TestHttp.java:148:14:148:14 | h : HttpHeaders | TestHttp.java:148:14:148:24 | getHost(...) | provenance | MaD:30 | +| TestHttp.java:149:14:149:14 | h : HttpHeaders | TestHttp.java:149:14:149:27 | getIfMatch(...) : List [] : Object | provenance | MaD:31 | | TestHttp.java:149:14:149:27 | getIfMatch(...) : List [] : Object | TestHttp.java:149:14:149:34 | get(...) | provenance | MaD:2 | -| TestHttp.java:151:14:151:14 | h : HttpHeaders | TestHttp.java:151:14:151:31 | getIfNoneMatch(...) : List [] : Object | provenance | MaD:33 | +| TestHttp.java:151:14:151:14 | h : HttpHeaders | TestHttp.java:151:14:151:31 | getIfNoneMatch(...) : List [] : Object | provenance | MaD:32 | | TestHttp.java:151:14:151:31 | getIfNoneMatch(...) : List [] : Object | TestHttp.java:151:14:151:38 | get(...) | provenance | MaD:2 | -| TestHttp.java:154:14:154:14 | h : HttpHeaders | TestHttp.java:154:14:154:28 | getLocation(...) | provenance | MaD:34 | -| TestHttp.java:155:14:155:14 | h : HttpHeaders | TestHttp.java:155:14:155:30 | getOrEmpty(...) : List [] : Object | provenance | MaD:35 | +| TestHttp.java:154:14:154:14 | h : HttpHeaders | TestHttp.java:154:14:154:28 | getLocation(...) | provenance | MaD:33 | +| TestHttp.java:155:14:155:14 | h : HttpHeaders | TestHttp.java:155:14:155:30 | getOrEmpty(...) : List [] : Object | provenance | MaD:34 | | TestHttp.java:155:14:155:30 | getOrEmpty(...) : List [] : Object | TestHttp.java:155:14:155:37 | get(...) | provenance | MaD:2 | -| TestHttp.java:156:14:156:14 | h : HttpHeaders | TestHttp.java:156:14:156:26 | getOrigin(...) | provenance | MaD:36 | -| TestHttp.java:157:14:157:14 | h : HttpHeaders | TestHttp.java:157:14:157:26 | getPragma(...) | provenance | MaD:37 | -| TestHttp.java:158:14:158:14 | h : HttpHeaders | TestHttp.java:158:14:158:27 | getUpgrade(...) | provenance | MaD:38 | -| TestHttp.java:159:14:159:14 | h : HttpHeaders | TestHttp.java:159:14:159:35 | getValuesAsList(...) : List [] : Object | provenance | MaD:39 | +| TestHttp.java:156:14:156:14 | h : HttpHeaders | TestHttp.java:156:14:156:26 | getOrigin(...) | provenance | MaD:35 | +| TestHttp.java:157:14:157:14 | h : HttpHeaders | TestHttp.java:157:14:157:26 | getPragma(...) | provenance | MaD:36 | +| TestHttp.java:158:14:158:14 | h : HttpHeaders | TestHttp.java:158:14:158:27 | getUpgrade(...) | provenance | MaD:37 | +| TestHttp.java:159:14:159:14 | h : HttpHeaders | TestHttp.java:159:14:159:35 | getValuesAsList(...) : List [] : Object | provenance | MaD:38 | | TestHttp.java:159:14:159:35 | getValuesAsList(...) : List [] : Object | TestHttp.java:159:14:159:42 | get(...) | provenance | MaD:2 | -| TestHttp.java:160:14:160:14 | h : HttpHeaders | TestHttp.java:160:14:160:24 | getVary(...) : List [] : Object | provenance | MaD:40 | +| TestHttp.java:160:14:160:14 | h : HttpHeaders | TestHttp.java:160:14:160:24 | getVary(...) : List [] : Object | provenance | MaD:39 | | TestHttp.java:160:14:160:24 | getVary(...) : List [] : Object | TestHttp.java:160:14:160:31 | get(...) | provenance | MaD:2 | nodes | TestHttp.java:16:20:16:26 | taint(...) : String | semmle.label | taint(...) : String | @@ -327,11 +314,9 @@ nodes | TestHttp.java:89:16:89:22 | taint(...) : String | semmle.label | taint(...) : String | | TestHttp.java:90:14:90:15 | h1 | semmle.label | h1 | | TestHttp.java:93:9:93:10 | h2 [post update] : HttpHeaders | semmle.label | h2 [post update] : HttpHeaders | -| TestHttp.java:93:9:93:10 | h2 [post update] : HttpHeaders [, ] : String | semmle.label | h2 [post update] : HttpHeaders [, ] : String | | TestHttp.java:93:21:93:27 | taint(...) : String | semmle.label | taint(...) : String | | TestHttp.java:94:14:94:15 | h2 | semmle.label | h2 | | TestHttp.java:97:9:97:10 | h3 [post update] : HttpHeaders | semmle.label | h3 [post update] : HttpHeaders | -| TestHttp.java:97:9:97:10 | h3 [post update] : HttpHeaders [, ] : String | semmle.label | h3 [post update] : HttpHeaders [, ] : String | | TestHttp.java:97:19:97:20 | m1 : LinkedMultiValueMap [, ] : String | semmle.label | m1 : LinkedMultiValueMap [, ] : String | | TestHttp.java:98:14:98:15 | h3 | semmle.label | h3 | | TestHttp.java:101:9:101:10 | h4 [post update] : HttpHeaders | semmle.label | h4 [post update] : HttpHeaders | @@ -341,7 +326,6 @@ nodes | TestHttp.java:105:19:105:25 | taint(...) : String | semmle.label | taint(...) : String | | TestHttp.java:106:14:106:15 | h5 | semmle.label | h5 | | TestHttp.java:109:9:109:10 | h6 [post update] : HttpHeaders | semmle.label | h6 [post update] : HttpHeaders | -| TestHttp.java:109:9:109:10 | h6 [post update] : HttpHeaders [, ] : Object | semmle.label | h6 [post update] : HttpHeaders [, ] : Object | | TestHttp.java:109:24:109:39 | of(...) : List [] : Object | semmle.label | of(...) : List [] : Object | | TestHttp.java:109:32:109:38 | taint(...) : String[] | semmle.label | taint(...) : String[] | | TestHttp.java:110:14:110:15 | h6 | semmle.label | h6 | @@ -355,7 +339,6 @@ nodes | TestHttp.java:116:47:116:53 | taint(...) : String | semmle.label | taint(...) : String | | TestHttp.java:120:25:120:31 | taint(...) : HttpHeaders | semmle.label | taint(...) : HttpHeaders | | TestHttp.java:122:14:122:14 | h : HttpHeaders | semmle.label | h : HttpHeaders | -| TestHttp.java:122:14:122:24 | get(...) : List | semmle.label | get(...) : List | | TestHttp.java:122:14:122:24 | get(...) : List [] : Object | semmle.label | get(...) : List [] : Object | | TestHttp.java:122:14:122:31 | get(...) | semmle.label | get(...) | | TestHttp.java:128:14:128:14 | h : HttpHeaders | semmle.label | h : HttpHeaders | diff --git a/java/ql/test/library-tests/frameworks/spring/util/test.expected b/java/ql/test/library-tests/frameworks/spring/util/test.expected index 4e5c0634adce..f96e6b8eeae7 100644 --- a/java/ql/test/library-tests/frameworks/spring/util/test.expected +++ b/java/ql/test/library-tests/frameworks/spring/util/test.expected @@ -1,153 +1,151 @@ models -| 1 | Summary: java.io; OutputStream; true; write; (byte[],int,int); ; Argument[0]; Argument[this]; taint; manual | -| 2 | Summary: java.io; OutputStream; true; write; (int); ; Argument[0]; Argument[this]; taint; manual | -| 3 | Summary: java.lang; Iterable; true; iterator; (); ; Argument[this].Element; ReturnValue.Element; value; manual | -| 4 | Summary: java.util; Collections; false; enumeration; (Collection); ; Argument[0].Element; ReturnValue.Element; value; manual | -| 5 | Summary: java.util; Dictionary; true; put; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | -| 6 | Summary: java.util; Dictionary; true; put; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | -| 7 | Summary: java.util; Iterator; true; next; ; ; Argument[this].Element; ReturnValue; value; manual | -| 8 | Summary: java.util; List; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | -| 9 | Summary: java.util; Map; false; of; ; ; Argument[0]; ReturnValue.MapKey; value; manual | -| 10 | Summary: java.util; Map; false; of; ; ; Argument[1]; ReturnValue.MapValue; value; manual | -| 11 | Summary: java.util; Map; true; get; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 12 | Summary: java.util; Map; true; keySet; (); ; Argument[this].MapKey; ReturnValue.Element; value; manual | -| 13 | Summary: java.util; Map; true; put; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | -| 14 | Summary: java.util; Map; true; put; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | -| 15 | Summary: java.util; Optional; false; of; ; ; Argument[0]; ReturnValue.Element; value; manual | -| 16 | Summary: java.util; Set; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | -| 17 | Summary: org.springframework.util; AntPathMatcher; false; combine; ; ; Argument[0..1]; ReturnValue; taint; manual | -| 18 | Summary: org.springframework.util; AntPathMatcher; false; doMatch; ; ; Argument[1]; Argument[3].MapValue; taint; manual | -| 19 | Summary: org.springframework.util; AntPathMatcher; false; extractPathWithinPattern; ; ; Argument[1]; ReturnValue; taint; manual | -| 20 | Summary: org.springframework.util; AntPathMatcher; false; extractUriTemplateVariables; ; ; Argument[1]; ReturnValue.MapValue; taint; manual | -| 21 | Summary: org.springframework.util; AntPathMatcher; false; tokenizePath; ; ; Argument[0]; ReturnValue.ArrayElement; taint; manual | -| 22 | Summary: org.springframework.util; AntPathMatcher; false; tokenizePattern; ; ; Argument[0]; ReturnValue.ArrayElement; taint; manual | -| 23 | Summary: org.springframework.util; AutoPopulatingList; false; AutoPopulatingList; (java.util.List,java.lang.Class); ; Argument[0].Element; Argument[this].Element; value; manual | -| 24 | Summary: org.springframework.util; AutoPopulatingList; false; AutoPopulatingList; (java.util.List,org.springframework.util.AutoPopulatingList$ElementFactory); ; Argument[0].Element; Argument[this].Element; value; manual | -| 25 | Summary: org.springframework.util; Base64Utils; false; decode; ; ; Argument[0]; ReturnValue; taint; manual | -| 26 | Summary: org.springframework.util; Base64Utils; false; decodeFromString; ; ; Argument[0]; ReturnValue; taint; manual | -| 27 | Summary: org.springframework.util; Base64Utils; false; decodeFromUrlSafeString; ; ; Argument[0]; ReturnValue; taint; manual | -| 28 | Summary: org.springframework.util; Base64Utils; false; decodeUrlSafe; ; ; Argument[0]; ReturnValue; taint; manual | -| 29 | Summary: org.springframework.util; Base64Utils; false; encode; ; ; Argument[0]; ReturnValue; taint; manual | -| 30 | Summary: org.springframework.util; Base64Utils; false; encodeToString; ; ; Argument[0]; ReturnValue; taint; manual | -| 31 | Summary: org.springframework.util; Base64Utils; false; encodeToUrlSafeString; ; ; Argument[0]; ReturnValue; taint; manual | -| 32 | Summary: org.springframework.util; Base64Utils; false; encodeUrlSafe; ; ; Argument[0]; ReturnValue; taint; manual | -| 33 | Summary: org.springframework.util; CollectionUtils; false; arrayToList; ; ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | -| 34 | Summary: org.springframework.util; CollectionUtils; false; findFirstMatch; ; ; Argument[0].Element; ReturnValue; value; manual | -| 35 | Summary: org.springframework.util; CollectionUtils; false; findValueOfType; ; ; Argument[0].Element; ReturnValue; value; manual | -| 36 | Summary: org.springframework.util; CollectionUtils; false; firstElement; ; ; Argument[0].Element; ReturnValue; value; manual | -| 37 | Summary: org.springframework.util; CollectionUtils; false; lastElement; ; ; Argument[0].Element; ReturnValue; value; manual | -| 38 | Summary: org.springframework.util; CollectionUtils; false; mergeArrayIntoCollection; ; ; Argument[0].ArrayElement; Argument[1].Element; value; manual | -| 39 | Summary: org.springframework.util; CollectionUtils; false; mergePropertiesIntoMap; ; ; Argument[0].MapKey; Argument[1].MapKey; value; manual | -| 40 | Summary: org.springframework.util; CollectionUtils; false; mergePropertiesIntoMap; ; ; Argument[0].MapValue; Argument[1].MapValue; value; manual | -| 41 | Summary: org.springframework.util; CollectionUtils; false; toIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | -| 42 | Summary: org.springframework.util; CollectionUtils; false; toMultiValueMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 43 | Summary: org.springframework.util; CollectionUtils; false; toMultiValueMap; ; ; Argument[0].MapValue.Element; ReturnValue.MapValue.Element; value; manual | -| 44 | Summary: org.springframework.util; CollectionUtils; false; unmodifiableMultiValueMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | -| 45 | Summary: org.springframework.util; CollectionUtils; false; unmodifiableMultiValueMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | -| 46 | Summary: org.springframework.util; CompositeIterator; false; add; ; ; Argument[0].Element; Argument[this].Element; value; manual | -| 47 | Summary: org.springframework.util; FastByteArrayOutputStream; false; getInputStream; ; ; Argument[this]; ReturnValue; taint; manual | -| 48 | Summary: org.springframework.util; FastByteArrayOutputStream; false; toByteArray; ; ; Argument[this]; ReturnValue; taint; manual | -| 49 | Summary: org.springframework.util; FastByteArrayOutputStream; false; write; ; ; Argument[0]; Argument[this]; taint; manual | -| 50 | Summary: org.springframework.util; FastByteArrayOutputStream; false; writeTo; ; ; Argument[this]; Argument[0]; taint; manual | -| 51 | Summary: org.springframework.util; FileCopyUtils; false; copy; (InputStream,OutputStream); ; Argument[0]; Argument[1]; taint; manual | -| 52 | Summary: org.springframework.util; FileCopyUtils; false; copy; (Reader,Writer); ; Argument[0]; Argument[1]; taint; manual | -| 53 | Summary: org.springframework.util; FileCopyUtils; false; copy; (String,Writer); ; Argument[0]; Argument[1]; taint; manual | -| 54 | Summary: org.springframework.util; FileCopyUtils; false; copy; (byte[],OutputStream); ; Argument[0]; Argument[1]; taint; manual | -| 55 | Summary: org.springframework.util; FileCopyUtils; false; copyToByteArray; ; ; Argument[0]; ReturnValue; taint; manual | -| 56 | Summary: org.springframework.util; FileCopyUtils; false; copyToString; ; ; Argument[0]; ReturnValue; taint; manual | -| 57 | Summary: org.springframework.util; FileSystemUtils; false; copyRecursively; (java.io.File,java.io.File); ; Argument[0]; Argument[1]; taint; manual | -| 58 | Summary: org.springframework.util; LinkedMultiValueMap; false; LinkedMultiValueMap; (java.util.Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 59 | Summary: org.springframework.util; LinkedMultiValueMap; false; LinkedMultiValueMap; (java.util.Map); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | -| 60 | Summary: org.springframework.util; LinkedMultiValueMap; false; deepCopy; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | -| 61 | Summary: org.springframework.util; LinkedMultiValueMap; false; deepCopy; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | -| 62 | Summary: org.springframework.util; MultiValueMap; true; add; ; ; Argument[0]; Argument[this].MapKey; value; manual | -| 63 | Summary: org.springframework.util; MultiValueMap; true; add; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | -| 64 | Summary: org.springframework.util; MultiValueMap; true; addAll; (java.lang.Object,java.util.List); ; Argument[0]; Argument[this].MapKey; value; manual | -| 65 | Summary: org.springframework.util; MultiValueMap; true; addAll; (java.lang.Object,java.util.List); ; Argument[1].Element; Argument[this].MapValue.Element; value; manual | -| 66 | Summary: org.springframework.util; MultiValueMap; true; addAll; (org.springframework.util.MultiValueMap); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 67 | Summary: org.springframework.util; MultiValueMap; true; addAll; (org.springframework.util.MultiValueMap); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | -| 68 | Summary: org.springframework.util; MultiValueMap; true; addIfAbsent; ; ; Argument[0]; Argument[this].MapKey; value; manual | -| 69 | Summary: org.springframework.util; MultiValueMap; true; addIfAbsent; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | -| 70 | Summary: org.springframework.util; MultiValueMap; true; getFirst; ; ; Argument[this].MapValue.Element; ReturnValue; value; manual | -| 71 | Summary: org.springframework.util; MultiValueMap; true; set; ; ; Argument[0]; Argument[this].MapKey; value; manual | -| 72 | Summary: org.springframework.util; MultiValueMap; true; set; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | -| 73 | Summary: org.springframework.util; MultiValueMap; true; setAll; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 74 | Summary: org.springframework.util; MultiValueMap; true; setAll; ; ; Argument[0].MapValue; Argument[this].MapValue.Element; value; manual | -| 75 | Summary: org.springframework.util; MultiValueMap; true; toSingleValueMap; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | -| 76 | Summary: org.springframework.util; MultiValueMap; true; toSingleValueMap; ; ; Argument[this].MapValue.Element; ReturnValue.MapValue; value; manual | -| 77 | Summary: org.springframework.util; MultiValueMapAdapter; false; MultiValueMapAdapter; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | -| 78 | Summary: org.springframework.util; MultiValueMapAdapter; false; MultiValueMapAdapter; ; ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | -| 79 | Summary: org.springframework.util; ObjectUtils; false; toObjectArray; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 80 | Summary: org.springframework.util; ObjectUtils; false; unwrapOptional; ; ; Argument[0].Element; ReturnValue; value; manual | -| 81 | Summary: org.springframework.util; PropertiesPersister; true; load; ; ; Argument[1]; Argument[0]; taint; manual | -| 82 | Summary: org.springframework.util; PropertiesPersister; true; loadFromXml; ; ; Argument[1]; Argument[0]; taint; manual | -| 83 | Summary: org.springframework.util; PropertiesPersister; true; store; ; ; Argument[0]; Argument[1]; taint; manual | -| 84 | Summary: org.springframework.util; PropertiesPersister; true; store; ; ; Argument[2]; Argument[1]; taint; manual | -| 85 | Summary: org.springframework.util; PropertiesPersister; true; storeToXml; ; ; Argument[0]; Argument[1]; taint; manual | -| 86 | Summary: org.springframework.util; PropertiesPersister; true; storeToXml; ; ; Argument[2]; Argument[1]; taint; manual | -| 87 | Summary: org.springframework.util; PropertyPlaceholderHelper; false; PropertyPlaceholderHelper; ; ; Argument[0..1]; Argument[this]; taint; manual | -| 88 | Summary: org.springframework.util; PropertyPlaceholderHelper; false; replacePlaceholders; ; ; Argument[0]; ReturnValue; taint; manual | -| 89 | Summary: org.springframework.util; ResourceUtils; false; extractArchiveURL; ; ; Argument[0]; ReturnValue; taint; manual | -| 90 | Summary: org.springframework.util; ResourceUtils; false; extractJarFileURL; ; ; Argument[0]; ReturnValue; taint; manual | -| 91 | Summary: org.springframework.util; ResourceUtils; false; getFile; ; ; Argument[0]; ReturnValue; taint; manual | -| 92 | Summary: org.springframework.util; ResourceUtils; false; getURL; ; ; Argument[0]; ReturnValue; taint; manual | -| 93 | Summary: org.springframework.util; ResourceUtils; false; toURI; ; ; Argument[0]; ReturnValue; taint; manual | -| 94 | Summary: org.springframework.util; RouteMatcher; true; combine; ; ; Argument[0..1]; ReturnValue; taint; manual | -| 95 | Summary: org.springframework.util; RouteMatcher; true; matchAndExtract; ; ; Argument[0]; ReturnValue.MapKey; taint; manual | -| 96 | Summary: org.springframework.util; RouteMatcher; true; matchAndExtract; ; ; Argument[1]; ReturnValue.MapValue; taint; manual | -| 97 | Summary: org.springframework.util; RouteMatcher; true; parseRoute; ; ; Argument[0]; ReturnValue; taint; manual | -| 98 | Summary: org.springframework.util; SerializationUtils; false; deserialize; ; ; Argument[0]; ReturnValue; taint; manual | -| 99 | Summary: org.springframework.util; SerializationUtils; false; serialize; ; ; Argument[0]; ReturnValue; taint; manual | -| 100 | Summary: org.springframework.util; StreamUtils; false; copy; (byte[],java.io.OutputStream); ; Argument[0]; Argument[1]; taint; manual | -| 101 | Summary: org.springframework.util; StreamUtils; false; copy; (java.io.InputStream,java.io.OutputStream); ; Argument[0]; Argument[1]; taint; manual | -| 102 | Summary: org.springframework.util; StreamUtils; false; copy; (java.lang.String,java.nio.charset.Charset,java.io.OutputStream); ; Argument[0]; Argument[2]; taint; manual | -| 103 | Summary: org.springframework.util; StreamUtils; false; copyRange; ; ; Argument[0]; Argument[1]; taint; manual | -| 104 | Summary: org.springframework.util; StreamUtils; false; copyToByteArray; ; ; Argument[0]; ReturnValue; taint; manual | -| 105 | Summary: org.springframework.util; StreamUtils; false; copyToString; ; ; Argument[0]; ReturnValue; taint; manual | -| 106 | Summary: org.springframework.util; StringUtils; false; addStringToArray; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 107 | Summary: org.springframework.util; StringUtils; false; addStringToArray; ; ; Argument[1]; ReturnValue.ArrayElement; value; manual | -| 108 | Summary: org.springframework.util; StringUtils; false; applyRelativePath; ; ; Argument[0..1]; ReturnValue; taint; manual | -| 109 | Summary: org.springframework.util; StringUtils; false; arrayToCommaDelimitedString; ; ; Argument[0].ArrayElement; ReturnValue; taint; manual | -| 110 | Summary: org.springframework.util; StringUtils; false; arrayToDelimitedString; ; ; Argument[0].ArrayElement; ReturnValue; taint; manual | -| 111 | Summary: org.springframework.util; StringUtils; false; arrayToDelimitedString; ; ; Argument[1]; ReturnValue; taint; manual | -| 112 | Summary: org.springframework.util; StringUtils; false; capitalize; ; ; Argument[0]; ReturnValue; taint; manual | -| 113 | Summary: org.springframework.util; StringUtils; false; cleanPath; ; ; Argument[0]; ReturnValue; taint; manual | -| 114 | Summary: org.springframework.util; StringUtils; false; collectionToCommaDelimitedString; ; ; Argument[0].Element; ReturnValue; taint; manual | -| 115 | Summary: org.springframework.util; StringUtils; false; collectionToDelimitedString; ; ; Argument[0].Element; ReturnValue; taint; manual | -| 116 | Summary: org.springframework.util; StringUtils; false; collectionToDelimitedString; ; ; Argument[1..3]; ReturnValue; taint; manual | -| 117 | Summary: org.springframework.util; StringUtils; false; commaDelimitedListToSet; ; ; Argument[0]; ReturnValue.Element; taint; manual | -| 118 | Summary: org.springframework.util; StringUtils; false; commaDelimitedListToStringArray; ; ; Argument[0]; ReturnValue.ArrayElement; taint; manual | -| 119 | Summary: org.springframework.util; StringUtils; false; concatenateStringArrays; ; ; Argument[0..1].ArrayElement; ReturnValue.ArrayElement; taint; manual | -| 120 | Summary: org.springframework.util; StringUtils; false; delete; ; ; Argument[0]; ReturnValue; taint; manual | -| 121 | Summary: org.springframework.util; StringUtils; false; deleteAny; ; ; Argument[0]; ReturnValue; taint; manual | -| 122 | Summary: org.springframework.util; StringUtils; false; delimitedListToStringArray; ; ; Argument[0]; ReturnValue.ArrayElement; taint; manual | -| 123 | Summary: org.springframework.util; StringUtils; false; getFilename; ; ; Argument[0]; ReturnValue; taint; manual | -| 124 | Summary: org.springframework.util; StringUtils; false; getFilenameExtension; ; ; Argument[0]; ReturnValue; taint; manual | -| 125 | Summary: org.springframework.util; StringUtils; false; mergeStringArrays; ; ; Argument[0..1].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 126 | Summary: org.springframework.util; StringUtils; false; quote; ; ; Argument[0]; ReturnValue; taint; manual | -| 127 | Summary: org.springframework.util; StringUtils; false; quoteIfString; ; ; Argument[0]; ReturnValue; taint; manual | -| 128 | Summary: org.springframework.util; StringUtils; false; removeDuplicateStrings; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 129 | Summary: org.springframework.util; StringUtils; false; replace; ; ; Argument[0]; ReturnValue; taint; manual | -| 130 | Summary: org.springframework.util; StringUtils; false; replace; ; ; Argument[2]; ReturnValue; taint; manual | -| 131 | Summary: org.springframework.util; StringUtils; false; sortStringArray; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | -| 132 | Summary: org.springframework.util; StringUtils; false; split; ; ; Argument[0]; ReturnValue.ArrayElement; taint; manual | -| 133 | Summary: org.springframework.util; StringUtils; false; splitArrayElementsIntoProperties; ; ; Argument[0].ArrayElement; ReturnValue.MapKey; taint; manual | -| 134 | Summary: org.springframework.util; StringUtils; false; splitArrayElementsIntoProperties; ; ; Argument[0].ArrayElement; ReturnValue.MapValue; taint; manual | -| 135 | Summary: org.springframework.util; StringUtils; false; stripFilenameExtension; ; ; Argument[0]; ReturnValue; taint; manual | -| 136 | Summary: org.springframework.util; StringUtils; false; toStringArray; ; ; Argument[0].Element; ReturnValue.ArrayElement; value; manual | -| 137 | Summary: org.springframework.util; StringUtils; false; tokenizeToStringArray; ; ; Argument[0]; ReturnValue.ArrayElement; taint; manual | -| 138 | Summary: org.springframework.util; StringUtils; false; trimAllWhitespace; ; ; Argument[0]; ReturnValue; taint; manual | -| 139 | Summary: org.springframework.util; StringUtils; false; trimArrayElements; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; taint; manual | -| 140 | Summary: org.springframework.util; StringUtils; false; trimLeadingCharacter; ; ; Argument[0]; ReturnValue; taint; manual | -| 141 | Summary: org.springframework.util; StringUtils; false; trimLeadingWhitespace; ; ; Argument[0]; ReturnValue; taint; manual | -| 142 | Summary: org.springframework.util; StringUtils; false; trimTrailingCharacter; ; ; Argument[0]; ReturnValue; taint; manual | -| 143 | Summary: org.springframework.util; StringUtils; false; trimTrailingWhitespace; ; ; Argument[0]; ReturnValue; taint; manual | -| 144 | Summary: org.springframework.util; StringUtils; false; trimWhitespace; ; ; Argument[0]; ReturnValue; taint; manual | -| 145 | Summary: org.springframework.util; StringUtils; false; uncapitalize; ; ; Argument[0]; ReturnValue; taint; manual | -| 146 | Summary: org.springframework.util; StringUtils; false; unqualify; ; ; Argument[0]; ReturnValue; taint; manual | -| 147 | Summary: org.springframework.util; StringUtils; false; uriDecode; ; ; Argument[0]; ReturnValue; taint; manual | -| 148 | Summary: org.springframework.util; StringValueResolver; false; resolveStringValue; ; ; Argument[0]; ReturnValue; taint; manual | -| 149 | Summary: org.springframework.util; SystemPropertyUtils; false; resolvePlaceholders; ; ; Argument[0]; ReturnValue; taint; manual | +| 1 | Summary: java.lang; Iterable; true; iterator; (); ; Argument[this].Element; ReturnValue.Element; value; manual | +| 2 | Summary: java.util; Collections; false; enumeration; (Collection); ; Argument[0].Element; ReturnValue.Element; value; manual | +| 3 | Summary: java.util; Dictionary; true; put; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | +| 4 | Summary: java.util; Dictionary; true; put; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | +| 5 | Summary: java.util; Iterator; true; next; ; ; Argument[this].Element; ReturnValue; value; manual | +| 6 | Summary: java.util; List; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | +| 7 | Summary: java.util; Map; false; of; ; ; Argument[0]; ReturnValue.MapKey; value; manual | +| 8 | Summary: java.util; Map; false; of; ; ; Argument[1]; ReturnValue.MapValue; value; manual | +| 9 | Summary: java.util; Map; true; get; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 10 | Summary: java.util; Map; true; keySet; (); ; Argument[this].MapKey; ReturnValue.Element; value; manual | +| 11 | Summary: java.util; Map; true; put; (Object,Object); ; Argument[0]; Argument[this].MapKey; value; manual | +| 12 | Summary: java.util; Map; true; put; (Object,Object); ; Argument[1]; Argument[this].MapValue; value; manual | +| 13 | Summary: java.util; Optional; false; of; ; ; Argument[0]; ReturnValue.Element; value; manual | +| 14 | Summary: java.util; Set; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | +| 15 | Summary: org.springframework.util; AntPathMatcher; false; combine; ; ; Argument[0..1]; ReturnValue; taint; manual | +| 16 | Summary: org.springframework.util; AntPathMatcher; false; doMatch; ; ; Argument[1]; Argument[3].MapValue; taint; manual | +| 17 | Summary: org.springframework.util; AntPathMatcher; false; extractPathWithinPattern; ; ; Argument[1]; ReturnValue; taint; manual | +| 18 | Summary: org.springframework.util; AntPathMatcher; false; extractUriTemplateVariables; ; ; Argument[1]; ReturnValue.MapValue; taint; manual | +| 19 | Summary: org.springframework.util; AntPathMatcher; false; tokenizePath; ; ; Argument[0]; ReturnValue.ArrayElement; taint; manual | +| 20 | Summary: org.springframework.util; AntPathMatcher; false; tokenizePattern; ; ; Argument[0]; ReturnValue.ArrayElement; taint; manual | +| 21 | Summary: org.springframework.util; AutoPopulatingList; false; AutoPopulatingList; (java.util.List,java.lang.Class); ; Argument[0].Element; Argument[this].Element; value; manual | +| 22 | Summary: org.springframework.util; AutoPopulatingList; false; AutoPopulatingList; (java.util.List,org.springframework.util.AutoPopulatingList$ElementFactory); ; Argument[0].Element; Argument[this].Element; value; manual | +| 23 | Summary: org.springframework.util; Base64Utils; false; decode; ; ; Argument[0]; ReturnValue; taint; manual | +| 24 | Summary: org.springframework.util; Base64Utils; false; decodeFromString; ; ; Argument[0]; ReturnValue; taint; manual | +| 25 | Summary: org.springframework.util; Base64Utils; false; decodeFromUrlSafeString; ; ; Argument[0]; ReturnValue; taint; manual | +| 26 | Summary: org.springframework.util; Base64Utils; false; decodeUrlSafe; ; ; Argument[0]; ReturnValue; taint; manual | +| 27 | Summary: org.springframework.util; Base64Utils; false; encode; ; ; Argument[0]; ReturnValue; taint; manual | +| 28 | Summary: org.springframework.util; Base64Utils; false; encodeToString; ; ; Argument[0]; ReturnValue; taint; manual | +| 29 | Summary: org.springframework.util; Base64Utils; false; encodeToUrlSafeString; ; ; Argument[0]; ReturnValue; taint; manual | +| 30 | Summary: org.springframework.util; Base64Utils; false; encodeUrlSafe; ; ; Argument[0]; ReturnValue; taint; manual | +| 31 | Summary: org.springframework.util; CollectionUtils; false; arrayToList; ; ; Argument[0].ArrayElement; ReturnValue.Element; value; manual | +| 32 | Summary: org.springframework.util; CollectionUtils; false; findFirstMatch; ; ; Argument[0].Element; ReturnValue; value; manual | +| 33 | Summary: org.springframework.util; CollectionUtils; false; findValueOfType; ; ; Argument[0].Element; ReturnValue; value; manual | +| 34 | Summary: org.springframework.util; CollectionUtils; false; firstElement; ; ; Argument[0].Element; ReturnValue; value; manual | +| 35 | Summary: org.springframework.util; CollectionUtils; false; lastElement; ; ; Argument[0].Element; ReturnValue; value; manual | +| 36 | Summary: org.springframework.util; CollectionUtils; false; mergeArrayIntoCollection; ; ; Argument[0].ArrayElement; Argument[1].Element; value; manual | +| 37 | Summary: org.springframework.util; CollectionUtils; false; mergePropertiesIntoMap; ; ; Argument[0].MapKey; Argument[1].MapKey; value; manual | +| 38 | Summary: org.springframework.util; CollectionUtils; false; mergePropertiesIntoMap; ; ; Argument[0].MapValue; Argument[1].MapValue; value; manual | +| 39 | Summary: org.springframework.util; CollectionUtils; false; toIterator; ; ; Argument[0].Element; ReturnValue.Element; value; manual | +| 40 | Summary: org.springframework.util; CollectionUtils; false; toMultiValueMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 41 | Summary: org.springframework.util; CollectionUtils; false; toMultiValueMap; ; ; Argument[0].MapValue.Element; ReturnValue.MapValue.Element; value; manual | +| 42 | Summary: org.springframework.util; CollectionUtils; false; unmodifiableMultiValueMap; ; ; Argument[0].MapKey; ReturnValue.MapKey; value; manual | +| 43 | Summary: org.springframework.util; CollectionUtils; false; unmodifiableMultiValueMap; ; ; Argument[0].MapValue; ReturnValue.MapValue; value; manual | +| 44 | Summary: org.springframework.util; CompositeIterator; false; add; ; ; Argument[0].Element; Argument[this].Element; value; manual | +| 45 | Summary: org.springframework.util; FastByteArrayOutputStream; false; getInputStream; ; ; Argument[this]; ReturnValue; taint; manual | +| 46 | Summary: org.springframework.util; FastByteArrayOutputStream; false; toByteArray; ; ; Argument[this]; ReturnValue; taint; manual | +| 47 | Summary: org.springframework.util; FastByteArrayOutputStream; false; write; ; ; Argument[0]; Argument[this]; taint; manual | +| 48 | Summary: org.springframework.util; FastByteArrayOutputStream; false; writeTo; ; ; Argument[this]; Argument[0]; taint; manual | +| 49 | Summary: org.springframework.util; FileCopyUtils; false; copy; (InputStream,OutputStream); ; Argument[0]; Argument[1]; taint; manual | +| 50 | Summary: org.springframework.util; FileCopyUtils; false; copy; (Reader,Writer); ; Argument[0]; Argument[1]; taint; manual | +| 51 | Summary: org.springframework.util; FileCopyUtils; false; copy; (String,Writer); ; Argument[0]; Argument[1]; taint; manual | +| 52 | Summary: org.springframework.util; FileCopyUtils; false; copy; (byte[],OutputStream); ; Argument[0]; Argument[1]; taint; manual | +| 53 | Summary: org.springframework.util; FileCopyUtils; false; copyToByteArray; ; ; Argument[0]; ReturnValue; taint; manual | +| 54 | Summary: org.springframework.util; FileCopyUtils; false; copyToString; ; ; Argument[0]; ReturnValue; taint; manual | +| 55 | Summary: org.springframework.util; FileSystemUtils; false; copyRecursively; (java.io.File,java.io.File); ; Argument[0]; Argument[1]; taint; manual | +| 56 | Summary: org.springframework.util; LinkedMultiValueMap; false; LinkedMultiValueMap; (java.util.Map); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 57 | Summary: org.springframework.util; LinkedMultiValueMap; false; LinkedMultiValueMap; (java.util.Map); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | +| 58 | Summary: org.springframework.util; LinkedMultiValueMap; false; deepCopy; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | +| 59 | Summary: org.springframework.util; LinkedMultiValueMap; false; deepCopy; ; ; Argument[this].MapValue; ReturnValue.MapValue; value; manual | +| 60 | Summary: org.springframework.util; MultiValueMap; true; add; ; ; Argument[0]; Argument[this].MapKey; value; manual | +| 61 | Summary: org.springframework.util; MultiValueMap; true; add; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | +| 62 | Summary: org.springframework.util; MultiValueMap; true; addAll; (java.lang.Object,java.util.List); ; Argument[0]; Argument[this].MapKey; value; manual | +| 63 | Summary: org.springframework.util; MultiValueMap; true; addAll; (java.lang.Object,java.util.List); ; Argument[1].Element; Argument[this].MapValue.Element; value; manual | +| 64 | Summary: org.springframework.util; MultiValueMap; true; addAll; (org.springframework.util.MultiValueMap); ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 65 | Summary: org.springframework.util; MultiValueMap; true; addAll; (org.springframework.util.MultiValueMap); ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | +| 66 | Summary: org.springframework.util; MultiValueMap; true; addIfAbsent; ; ; Argument[0]; Argument[this].MapKey; value; manual | +| 67 | Summary: org.springframework.util; MultiValueMap; true; addIfAbsent; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | +| 68 | Summary: org.springframework.util; MultiValueMap; true; getFirst; ; ; Argument[this].MapValue.Element; ReturnValue; value; manual | +| 69 | Summary: org.springframework.util; MultiValueMap; true; set; ; ; Argument[0]; Argument[this].MapKey; value; manual | +| 70 | Summary: org.springframework.util; MultiValueMap; true; set; ; ; Argument[1]; Argument[this].MapValue.Element; value; manual | +| 71 | Summary: org.springframework.util; MultiValueMap; true; setAll; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 72 | Summary: org.springframework.util; MultiValueMap; true; setAll; ; ; Argument[0].MapValue; Argument[this].MapValue.Element; value; manual | +| 73 | Summary: org.springframework.util; MultiValueMap; true; toSingleValueMap; ; ; Argument[this].MapKey; ReturnValue.MapKey; value; manual | +| 74 | Summary: org.springframework.util; MultiValueMap; true; toSingleValueMap; ; ; Argument[this].MapValue.Element; ReturnValue.MapValue; value; manual | +| 75 | Summary: org.springframework.util; MultiValueMapAdapter; false; MultiValueMapAdapter; ; ; Argument[0].MapKey; Argument[this].MapKey; value; manual | +| 76 | Summary: org.springframework.util; MultiValueMapAdapter; false; MultiValueMapAdapter; ; ; Argument[0].MapValue.Element; Argument[this].MapValue.Element; value; manual | +| 77 | Summary: org.springframework.util; ObjectUtils; false; toObjectArray; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 78 | Summary: org.springframework.util; ObjectUtils; false; unwrapOptional; ; ; Argument[0].Element; ReturnValue; value; manual | +| 79 | Summary: org.springframework.util; PropertiesPersister; true; load; ; ; Argument[1]; Argument[0]; taint; manual | +| 80 | Summary: org.springframework.util; PropertiesPersister; true; loadFromXml; ; ; Argument[1]; Argument[0]; taint; manual | +| 81 | Summary: org.springframework.util; PropertiesPersister; true; store; ; ; Argument[0]; Argument[1]; taint; manual | +| 82 | Summary: org.springframework.util; PropertiesPersister; true; store; ; ; Argument[2]; Argument[1]; taint; manual | +| 83 | Summary: org.springframework.util; PropertiesPersister; true; storeToXml; ; ; Argument[0]; Argument[1]; taint; manual | +| 84 | Summary: org.springframework.util; PropertiesPersister; true; storeToXml; ; ; Argument[2]; Argument[1]; taint; manual | +| 85 | Summary: org.springframework.util; PropertyPlaceholderHelper; false; PropertyPlaceholderHelper; ; ; Argument[0..1]; Argument[this]; taint; manual | +| 86 | Summary: org.springframework.util; PropertyPlaceholderHelper; false; replacePlaceholders; ; ; Argument[0]; ReturnValue; taint; manual | +| 87 | Summary: org.springframework.util; ResourceUtils; false; extractArchiveURL; ; ; Argument[0]; ReturnValue; taint; manual | +| 88 | Summary: org.springframework.util; ResourceUtils; false; extractJarFileURL; ; ; Argument[0]; ReturnValue; taint; manual | +| 89 | Summary: org.springframework.util; ResourceUtils; false; getFile; ; ; Argument[0]; ReturnValue; taint; manual | +| 90 | Summary: org.springframework.util; ResourceUtils; false; getURL; ; ; Argument[0]; ReturnValue; taint; manual | +| 91 | Summary: org.springframework.util; ResourceUtils; false; toURI; ; ; Argument[0]; ReturnValue; taint; manual | +| 92 | Summary: org.springframework.util; RouteMatcher; true; combine; ; ; Argument[0..1]; ReturnValue; taint; manual | +| 93 | Summary: org.springframework.util; RouteMatcher; true; matchAndExtract; ; ; Argument[0]; ReturnValue.MapKey; taint; manual | +| 94 | Summary: org.springframework.util; RouteMatcher; true; matchAndExtract; ; ; Argument[1]; ReturnValue.MapValue; taint; manual | +| 95 | Summary: org.springframework.util; RouteMatcher; true; parseRoute; ; ; Argument[0]; ReturnValue; taint; manual | +| 96 | Summary: org.springframework.util; SerializationUtils; false; deserialize; ; ; Argument[0]; ReturnValue; taint; manual | +| 97 | Summary: org.springframework.util; SerializationUtils; false; serialize; ; ; Argument[0]; ReturnValue; taint; manual | +| 98 | Summary: org.springframework.util; StreamUtils; false; copy; (byte[],java.io.OutputStream); ; Argument[0]; Argument[1]; taint; manual | +| 99 | Summary: org.springframework.util; StreamUtils; false; copy; (java.io.InputStream,java.io.OutputStream); ; Argument[0]; Argument[1]; taint; manual | +| 100 | Summary: org.springframework.util; StreamUtils; false; copy; (java.lang.String,java.nio.charset.Charset,java.io.OutputStream); ; Argument[0]; Argument[2]; taint; manual | +| 101 | Summary: org.springframework.util; StreamUtils; false; copyRange; ; ; Argument[0]; Argument[1]; taint; manual | +| 102 | Summary: org.springframework.util; StreamUtils; false; copyToByteArray; ; ; Argument[0]; ReturnValue; taint; manual | +| 103 | Summary: org.springframework.util; StreamUtils; false; copyToString; ; ; Argument[0]; ReturnValue; taint; manual | +| 104 | Summary: org.springframework.util; StringUtils; false; addStringToArray; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 105 | Summary: org.springframework.util; StringUtils; false; addStringToArray; ; ; Argument[1]; ReturnValue.ArrayElement; value; manual | +| 106 | Summary: org.springframework.util; StringUtils; false; applyRelativePath; ; ; Argument[0..1]; ReturnValue; taint; manual | +| 107 | Summary: org.springframework.util; StringUtils; false; arrayToCommaDelimitedString; ; ; Argument[0].ArrayElement; ReturnValue; taint; manual | +| 108 | Summary: org.springframework.util; StringUtils; false; arrayToDelimitedString; ; ; Argument[0].ArrayElement; ReturnValue; taint; manual | +| 109 | Summary: org.springframework.util; StringUtils; false; arrayToDelimitedString; ; ; Argument[1]; ReturnValue; taint; manual | +| 110 | Summary: org.springframework.util; StringUtils; false; capitalize; ; ; Argument[0]; ReturnValue; taint; manual | +| 111 | Summary: org.springframework.util; StringUtils; false; cleanPath; ; ; Argument[0]; ReturnValue; taint; manual | +| 112 | Summary: org.springframework.util; StringUtils; false; collectionToCommaDelimitedString; ; ; Argument[0].Element; ReturnValue; taint; manual | +| 113 | Summary: org.springframework.util; StringUtils; false; collectionToDelimitedString; ; ; Argument[0].Element; ReturnValue; taint; manual | +| 114 | Summary: org.springframework.util; StringUtils; false; collectionToDelimitedString; ; ; Argument[1..3]; ReturnValue; taint; manual | +| 115 | Summary: org.springframework.util; StringUtils; false; commaDelimitedListToSet; ; ; Argument[0]; ReturnValue.Element; taint; manual | +| 116 | Summary: org.springframework.util; StringUtils; false; commaDelimitedListToStringArray; ; ; Argument[0]; ReturnValue.ArrayElement; taint; manual | +| 117 | Summary: org.springframework.util; StringUtils; false; concatenateStringArrays; ; ; Argument[0..1].ArrayElement; ReturnValue.ArrayElement; taint; manual | +| 118 | Summary: org.springframework.util; StringUtils; false; delete; ; ; Argument[0]; ReturnValue; taint; manual | +| 119 | Summary: org.springframework.util; StringUtils; false; deleteAny; ; ; Argument[0]; ReturnValue; taint; manual | +| 120 | Summary: org.springframework.util; StringUtils; false; delimitedListToStringArray; ; ; Argument[0]; ReturnValue.ArrayElement; taint; manual | +| 121 | Summary: org.springframework.util; StringUtils; false; getFilename; ; ; Argument[0]; ReturnValue; taint; manual | +| 122 | Summary: org.springframework.util; StringUtils; false; getFilenameExtension; ; ; Argument[0]; ReturnValue; taint; manual | +| 123 | Summary: org.springframework.util; StringUtils; false; mergeStringArrays; ; ; Argument[0..1].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 124 | Summary: org.springframework.util; StringUtils; false; quote; ; ; Argument[0]; ReturnValue; taint; manual | +| 125 | Summary: org.springframework.util; StringUtils; false; quoteIfString; ; ; Argument[0]; ReturnValue; taint; manual | +| 126 | Summary: org.springframework.util; StringUtils; false; removeDuplicateStrings; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 127 | Summary: org.springframework.util; StringUtils; false; replace; ; ; Argument[0]; ReturnValue; taint; manual | +| 128 | Summary: org.springframework.util; StringUtils; false; replace; ; ; Argument[2]; ReturnValue; taint; manual | +| 129 | Summary: org.springframework.util; StringUtils; false; sortStringArray; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; value; manual | +| 130 | Summary: org.springframework.util; StringUtils; false; split; ; ; Argument[0]; ReturnValue.ArrayElement; taint; manual | +| 131 | Summary: org.springframework.util; StringUtils; false; splitArrayElementsIntoProperties; ; ; Argument[0].ArrayElement; ReturnValue.MapKey; taint; manual | +| 132 | Summary: org.springframework.util; StringUtils; false; splitArrayElementsIntoProperties; ; ; Argument[0].ArrayElement; ReturnValue.MapValue; taint; manual | +| 133 | Summary: org.springframework.util; StringUtils; false; stripFilenameExtension; ; ; Argument[0]; ReturnValue; taint; manual | +| 134 | Summary: org.springframework.util; StringUtils; false; toStringArray; ; ; Argument[0].Element; ReturnValue.ArrayElement; value; manual | +| 135 | Summary: org.springframework.util; StringUtils; false; tokenizeToStringArray; ; ; Argument[0]; ReturnValue.ArrayElement; taint; manual | +| 136 | Summary: org.springframework.util; StringUtils; false; trimAllWhitespace; ; ; Argument[0]; ReturnValue; taint; manual | +| 137 | Summary: org.springframework.util; StringUtils; false; trimArrayElements; ; ; Argument[0].ArrayElement; ReturnValue.ArrayElement; taint; manual | +| 138 | Summary: org.springframework.util; StringUtils; false; trimLeadingCharacter; ; ; Argument[0]; ReturnValue; taint; manual | +| 139 | Summary: org.springframework.util; StringUtils; false; trimLeadingWhitespace; ; ; Argument[0]; ReturnValue; taint; manual | +| 140 | Summary: org.springframework.util; StringUtils; false; trimTrailingCharacter; ; ; Argument[0]; ReturnValue; taint; manual | +| 141 | Summary: org.springframework.util; StringUtils; false; trimTrailingWhitespace; ; ; Argument[0]; ReturnValue; taint; manual | +| 142 | Summary: org.springframework.util; StringUtils; false; trimWhitespace; ; ; Argument[0]; ReturnValue; taint; manual | +| 143 | Summary: org.springframework.util; StringUtils; false; uncapitalize; ; ; Argument[0]; ReturnValue; taint; manual | +| 144 | Summary: org.springframework.util; StringUtils; false; unqualify; ; ; Argument[0]; ReturnValue; taint; manual | +| 145 | Summary: org.springframework.util; StringUtils; false; uriDecode; ; ; Argument[0]; ReturnValue; taint; manual | +| 146 | Summary: org.springframework.util; StringValueResolver; false; resolveStringValue; ; ; Argument[0]; ReturnValue; taint; manual | +| 147 | Summary: org.springframework.util; SystemPropertyUtils; false; resolvePlaceholders; ; ; Argument[0]; ReturnValue; taint; manual | edges | Test.java:48:24:48:36 | container : Object[] [[]] : Object | Test.java:48:48:48:56 | container : Object[] [[]] : Object | provenance | | | Test.java:48:24:48:36 | container : String[] [[]] : Object | Test.java:48:48:48:56 | container : String[] [[]] : Object | provenance | | @@ -159,757 +157,755 @@ edges | Test.java:49:19:49:41 | container : Collection [] : Object | Test.java:49:53:49:61 | container : Collection [] : Object | provenance | | | Test.java:49:19:49:41 | container : List [] : Object | Test.java:49:53:49:61 | container : List [] : Object | provenance | | | Test.java:49:19:49:41 | container : Set [] : Object | Test.java:49:53:49:61 | container : Set [] : Object | provenance | | -| Test.java:49:53:49:61 | container : AutoPopulatingList [] : Object | Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | -| Test.java:49:53:49:61 | container : Collection [] : Object | Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | -| Test.java:49:53:49:61 | container : List [] : Object | Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | -| Test.java:49:53:49:61 | container : Set [] : Object | Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | -| Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | Test.java:49:53:49:79 | next(...) : Object | provenance | MaD:7 | -| Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | Test.java:49:53:49:79 | next(...) : Object | provenance | MaD:7 | -| Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | Test.java:49:53:49:79 | next(...) : Object | provenance | MaD:7 | -| Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | Test.java:49:53:49:79 | next(...) : Object | provenance | MaD:7 | +| Test.java:49:53:49:61 | container : AutoPopulatingList [] : Object | Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | provenance | MaD:1 | +| Test.java:49:53:49:61 | container : Collection [] : Object | Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | provenance | MaD:1 | +| Test.java:49:53:49:61 | container : List [] : Object | Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | provenance | MaD:1 | +| Test.java:49:53:49:61 | container : Set [] : Object | Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | provenance | MaD:1 | +| Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | Test.java:49:53:49:79 | next(...) : Object | provenance | MaD:5 | +| Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | Test.java:49:53:49:79 | next(...) : Object | provenance | MaD:5 | +| Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | Test.java:49:53:49:79 | next(...) : Object | provenance | MaD:5 | +| Test.java:49:53:49:72 | iterator(...) : Iterator [] : Object | Test.java:49:53:49:79 | next(...) : Object | provenance | MaD:5 | | Test.java:50:19:50:39 | container : CompositeIterator [] : Object | Test.java:50:51:50:59 | container : CompositeIterator [] : Object | provenance | | | Test.java:50:19:50:39 | container : Iterator [] : Object | Test.java:50:51:50:59 | container : Iterator [] : Object | provenance | | -| Test.java:50:51:50:59 | container : CompositeIterator [] : Object | Test.java:50:51:50:66 | next(...) : Object | provenance | MaD:7 | -| Test.java:50:51:50:59 | container : Iterator [] : Object | Test.java:50:51:50:66 | next(...) : Object | provenance | MaD:7 | +| Test.java:50:51:50:59 | container : CompositeIterator [] : Object | Test.java:50:51:50:66 | next(...) : Object | provenance | MaD:5 | +| Test.java:50:51:50:59 | container : Iterator [] : Object | Test.java:50:51:50:66 | next(...) : Object | provenance | MaD:5 | | Test.java:51:21:51:39 | container : LinkedMultiValueMap [] : Object | Test.java:51:51:51:59 | container : LinkedMultiValueMap [] : Object | provenance | | | Test.java:51:21:51:39 | container : Map [] : Object | Test.java:51:51:51:59 | container : Map [] : Object | provenance | | | Test.java:51:21:51:39 | container : MultiValueMap [] : Object | Test.java:51:51:51:59 | container : MultiValueMap [] : Object | provenance | | | Test.java:51:21:51:39 | container : MultiValueMapAdapter [] : Object | Test.java:51:51:51:59 | container : MultiValueMapAdapter [] : Object | provenance | | | Test.java:51:21:51:39 | container : Properties [] : Object | Test.java:51:51:51:59 | container : Properties [] : Object | provenance | | -| Test.java:51:51:51:59 | container : LinkedMultiValueMap [] : Object | Test.java:51:51:51:68 | keySet(...) : Set [] : Object | provenance | MaD:12 | -| Test.java:51:51:51:59 | container : Map [] : Object | Test.java:51:51:51:68 | keySet(...) : Set [] : Object | provenance | MaD:12 | -| Test.java:51:51:51:59 | container : MultiValueMap [] : Object | Test.java:51:51:51:68 | keySet(...) : Set [] : Object | provenance | MaD:12 | -| Test.java:51:51:51:59 | container : MultiValueMapAdapter [] : Object | Test.java:51:51:51:68 | keySet(...) : Set [] : Object | provenance | MaD:12 | -| Test.java:51:51:51:59 | container : Properties [] : Object | Test.java:51:51:51:68 | keySet(...) : Set [] : Object | provenance | MaD:12 | -| Test.java:51:51:51:68 | keySet(...) : Set [] : Object | Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | -| Test.java:51:51:51:68 | keySet(...) : Set [] : Object | Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | -| Test.java:51:51:51:68 | keySet(...) : Set [] : Object | Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | -| Test.java:51:51:51:68 | keySet(...) : Set [] : Object | Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | -| Test.java:51:51:51:68 | keySet(...) : Set [] : Object | Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | -| Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | Test.java:51:51:51:86 | next(...) : Object | provenance | MaD:7 | -| Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | Test.java:51:51:51:86 | next(...) : Object | provenance | MaD:7 | -| Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | Test.java:51:51:51:86 | next(...) : Object | provenance | MaD:7 | -| Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | Test.java:51:51:51:86 | next(...) : Object | provenance | MaD:7 | -| Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | Test.java:51:51:51:86 | next(...) : Object | provenance | MaD:7 | +| Test.java:51:51:51:59 | container : LinkedMultiValueMap [] : Object | Test.java:51:51:51:68 | keySet(...) : Set [] : Object | provenance | MaD:10 | +| Test.java:51:51:51:59 | container : Map [] : Object | Test.java:51:51:51:68 | keySet(...) : Set [] : Object | provenance | MaD:10 | +| Test.java:51:51:51:59 | container : MultiValueMap [] : Object | Test.java:51:51:51:68 | keySet(...) : Set [] : Object | provenance | MaD:10 | +| Test.java:51:51:51:59 | container : MultiValueMapAdapter [] : Object | Test.java:51:51:51:68 | keySet(...) : Set [] : Object | provenance | MaD:10 | +| Test.java:51:51:51:59 | container : Properties [] : Object | Test.java:51:51:51:68 | keySet(...) : Set [] : Object | provenance | MaD:10 | +| Test.java:51:51:51:68 | keySet(...) : Set [] : Object | Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | provenance | MaD:1 | +| Test.java:51:51:51:68 | keySet(...) : Set [] : Object | Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | provenance | MaD:1 | +| Test.java:51:51:51:68 | keySet(...) : Set [] : Object | Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | provenance | MaD:1 | +| Test.java:51:51:51:68 | keySet(...) : Set [] : Object | Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | provenance | MaD:1 | +| Test.java:51:51:51:68 | keySet(...) : Set [] : Object | Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | provenance | MaD:1 | +| Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | Test.java:51:51:51:86 | next(...) : Object | provenance | MaD:5 | +| Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | Test.java:51:51:51:86 | next(...) : Object | provenance | MaD:5 | +| Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | Test.java:51:51:51:86 | next(...) : Object | provenance | MaD:5 | +| Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | Test.java:51:51:51:86 | next(...) : Object | provenance | MaD:5 | +| Test.java:51:51:51:79 | iterator(...) : Iterator [] : Object | Test.java:51:51:51:86 | next(...) : Object | provenance | MaD:5 | | Test.java:52:23:52:41 | container : LinkedMultiValueMap [, ] : Object | Test.java:52:53:52:61 | container : LinkedMultiValueMap [, ] : Object | provenance | | | Test.java:52:23:52:41 | container : Map [] : Object | Test.java:52:53:52:61 | container : Map [] : Object | provenance | | | Test.java:52:23:52:41 | container : MultiValueMap [, ] : Object | Test.java:52:53:52:61 | container : MultiValueMap [, ] : Object | provenance | | | Test.java:52:23:52:41 | container : MultiValueMap [] : Object | Test.java:52:53:52:61 | container : MultiValueMap [] : Object | provenance | | | Test.java:52:23:52:41 | container : MultiValueMapAdapter [, ] : Object | Test.java:52:53:52:61 | container : MultiValueMapAdapter [, ] : Object | provenance | | | Test.java:52:23:52:41 | container : Properties [] : Object | Test.java:52:53:52:61 | container : Properties [] : Object | provenance | | -| Test.java:52:53:52:61 | container : LinkedMultiValueMap [, ] : Object | Test.java:52:53:52:71 | get(...) : Object [] : Object | provenance | MaD:11 | -| Test.java:52:53:52:61 | container : Map [] : Object | Test.java:52:53:52:71 | get(...) : Object | provenance | MaD:11 | -| Test.java:52:53:52:61 | container : MultiValueMap [, ] : Object | Test.java:52:53:52:71 | get(...) : Object [] : Object | provenance | MaD:11 | -| Test.java:52:53:52:61 | container : MultiValueMap [] : Object | Test.java:52:53:52:71 | get(...) : Object | provenance | MaD:11 | -| Test.java:52:53:52:61 | container : MultiValueMapAdapter [, ] : Object | Test.java:52:53:52:71 | get(...) : Object [] : Object | provenance | MaD:11 | -| Test.java:52:53:52:61 | container : Properties [] : Object | Test.java:52:53:52:71 | get(...) : Object | provenance | MaD:11 | +| Test.java:52:53:52:61 | container : LinkedMultiValueMap [, ] : Object | Test.java:52:53:52:71 | get(...) : Object [] : Object | provenance | MaD:9 | +| Test.java:52:53:52:61 | container : Map [] : Object | Test.java:52:53:52:71 | get(...) : Object | provenance | MaD:9 | +| Test.java:52:53:52:61 | container : MultiValueMap [, ] : Object | Test.java:52:53:52:71 | get(...) : Object [] : Object | provenance | MaD:9 | +| Test.java:52:53:52:61 | container : MultiValueMap [] : Object | Test.java:52:53:52:71 | get(...) : Object | provenance | MaD:9 | +| Test.java:52:53:52:61 | container : MultiValueMapAdapter [, ] : Object | Test.java:52:53:52:71 | get(...) : Object [] : Object | provenance | MaD:9 | +| Test.java:52:53:52:61 | container : Properties [] : Object | Test.java:52:53:52:71 | get(...) : Object | provenance | MaD:9 | | Test.java:53:31:53:44 | element : Object | Test.java:53:70:53:76 | element : Object | provenance | | | Test.java:53:56:53:77 | {...} : Object[] [[]] : Object | Test.java:53:56:53:77 | new Object[] : Object[] [[]] : Object | provenance | | | Test.java:53:70:53:76 | element : Object | Test.java:53:56:53:77 | {...} : Object[] [[]] : Object | provenance | | | Test.java:54:37:54:50 | element : Object | Test.java:54:94:54:100 | element : Object | provenance | | | Test.java:54:88:54:88 | p [post update] : Properties [] : Object | Test.java:54:117:54:117 | p : Properties [] : Object | provenance | | -| Test.java:54:94:54:100 | element : Object | Test.java:54:88:54:88 | p [post update] : Properties [] : Object | provenance | MaD:5 | -| Test.java:54:94:54:100 | element : Object | Test.java:54:88:54:88 | p [post update] : Properties [] : Object | provenance | MaD:13 | +| Test.java:54:94:54:100 | element : Object | Test.java:54:88:54:88 | p [post update] : Properties [] : Object | provenance | MaD:3 | +| Test.java:54:94:54:100 | element : Object | Test.java:54:88:54:88 | p [post update] : Properties [] : Object | provenance | MaD:11 | | Test.java:55:39:55:52 | element : Object | Test.java:55:102:55:108 | element : Object | provenance | | | Test.java:55:90:55:90 | p [post update] : Properties [] : Object | Test.java:55:119:55:119 | p : Properties [] : Object | provenance | | -| Test.java:55:102:55:108 | element : Object | Test.java:55:90:55:90 | p [post update] : Properties [] : Object | provenance | MaD:6 | -| Test.java:55:102:55:108 | element : Object | Test.java:55:90:55:90 | p [post update] : Properties [] : Object | provenance | MaD:14 | +| Test.java:55:102:55:108 | element : Object | Test.java:55:90:55:90 | p [post update] : Properties [] : Object | provenance | MaD:4 | +| Test.java:55:102:55:108 | element : Object | Test.java:55:90:55:90 | p [post update] : Properties [] : Object | provenance | MaD:12 | | Test.java:66:17:66:32 | (...)... : String | Test.java:67:33:67:34 | in : String | provenance | | | Test.java:66:25:66:32 | source(...) : Object | Test.java:66:17:66:32 | (...)... : String | provenance | | -| Test.java:67:33:67:34 | in : String | Test.java:67:43:67:45 | out [post update] : HashMap [] : Object | provenance | MaD:18 | +| Test.java:67:33:67:34 | in : String | Test.java:67:43:67:45 | out [post update] : HashMap [] : Object | provenance | MaD:16 | | Test.java:67:43:67:45 | out [post update] : HashMap [] : Object | Test.java:68:10:68:12 | out : HashMap [] : Object | provenance | | -| Test.java:68:10:68:12 | out : HashMap [] : Object | Test.java:68:10:68:27 | get(...) | provenance | MaD:11 | +| Test.java:68:10:68:12 | out : HashMap [] : Object | Test.java:68:10:68:27 | get(...) | provenance | MaD:9 | | Test.java:73:17:73:32 | (...)... : String | Test.java:74:29:74:30 | in : String | provenance | | | Test.java:73:25:73:32 | source(...) : Object | Test.java:73:17:73:32 | (...)... : String | provenance | | | Test.java:74:11:74:31 | tokenizePath(...) : String[] [[]] : Object | Test.java:75:10:75:12 | out : String[] [[]] : Object | provenance | | -| Test.java:74:29:74:30 | in : String | Test.java:74:11:74:31 | tokenizePath(...) : String[] [[]] : Object | provenance | MaD:21 | +| Test.java:74:29:74:30 | in : String | Test.java:74:11:74:31 | tokenizePath(...) : String[] [[]] : Object | provenance | MaD:19 | | Test.java:75:10:75:12 | out : String[] [[]] : Object | Test.java:75:10:75:15 | ...[...] | provenance | | | Test.java:80:17:80:32 | (...)... : String | Test.java:81:32:81:33 | in : String | provenance | | | Test.java:80:25:80:32 | source(...) : Object | Test.java:80:17:80:32 | (...)... : String | provenance | | | Test.java:81:11:81:34 | tokenizePattern(...) : String[] [[]] : Object | Test.java:82:10:82:12 | out : String[] [[]] : Object | provenance | | -| Test.java:81:32:81:33 | in : String | Test.java:81:11:81:34 | tokenizePattern(...) : String[] [[]] : Object | provenance | MaD:22 | +| Test.java:81:32:81:33 | in : String | Test.java:81:11:81:34 | tokenizePattern(...) : String[] [[]] : Object | provenance | MaD:20 | | Test.java:82:10:82:12 | out : String[] [[]] : Object | Test.java:82:10:82:15 | ...[...] | provenance | | | Test.java:93:16:93:31 | (...)... : String | Test.java:95:33:95:34 | in : String | provenance | | | Test.java:93:24:93:31 | source(...) : Object | Test.java:93:16:93:31 | (...)... : String | provenance | | | Test.java:95:10:95:35 | combine(...) : String | Test.java:96:9:96:11 | out | provenance | | -| Test.java:95:33:95:34 | in : String | Test.java:95:10:95:35 | combine(...) : String | provenance | MaD:17 | +| Test.java:95:33:95:34 | in : String | Test.java:95:10:95:35 | combine(...) : String | provenance | MaD:15 | | Test.java:101:16:101:31 | (...)... : String | Test.java:103:27:103:28 | in : String | provenance | | | Test.java:101:24:101:31 | source(...) : Object | Test.java:101:16:101:31 | (...)... : String | provenance | | | Test.java:103:10:103:35 | combine(...) : String | Test.java:104:9:104:11 | out | provenance | | -| Test.java:103:27:103:28 | in : String | Test.java:103:10:103:35 | combine(...) : String | provenance | MaD:17 | +| Test.java:103:27:103:28 | in : String | Test.java:103:10:103:35 | combine(...) : String | provenance | MaD:15 | | Test.java:109:16:109:31 | (...)... : String | Test.java:111:50:111:51 | in : String | provenance | | | Test.java:109:24:109:31 | source(...) : Object | Test.java:109:16:109:31 | (...)... : String | provenance | | | Test.java:111:10:111:52 | extractPathWithinPattern(...) : String | Test.java:112:9:112:11 | out | provenance | | -| Test.java:111:50:111:51 | in : String | Test.java:111:10:111:52 | extractPathWithinPattern(...) : String | provenance | MaD:19 | +| Test.java:111:50:111:51 | in : String | Test.java:111:10:111:52 | extractPathWithinPattern(...) : String | provenance | MaD:17 | | Test.java:117:16:117:31 | (...)... : String | Test.java:119:53:119:54 | in : String | provenance | | | Test.java:117:24:117:31 | source(...) : Object | Test.java:117:16:117:31 | (...)... : String | provenance | | | Test.java:119:10:119:55 | extractUriTemplateVariables(...) : Map [] : Object | Test.java:120:21:120:23 | out : Map [] : Object | provenance | | -| Test.java:119:53:119:54 | in : String | Test.java:119:10:119:55 | extractUriTemplateVariables(...) : Map [] : Object | provenance | MaD:20 | +| Test.java:119:53:119:54 | in : String | Test.java:119:10:119:55 | extractUriTemplateVariables(...) : Map [] : Object | provenance | MaD:18 | | Test.java:120:21:120:23 | out : Map [] : Object | Test.java:52:23:52:41 | container : Map [] : Object | provenance | | -| Test.java:120:21:120:23 | out : Map [] : Object | Test.java:120:9:120:24 | getMapValue(...) | provenance | MaD:11 | +| Test.java:120:21:120:23 | out : Map [] : Object | Test.java:120:9:120:24 | getMapValue(...) | provenance | MaD:9 | | Test.java:125:14:125:30 | of(...) : List [] : Object | Test.java:126:33:126:34 | in : List [] : Object | provenance | | -| Test.java:125:22:125:29 | source(...) : Object | Test.java:125:14:125:30 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:125:22:125:29 | source(...) : Object | Test.java:125:14:125:30 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:126:10:126:48 | new AutoPopulatingList<>(...) : AutoPopulatingList [] : Object | Test.java:127:20:127:22 | out : AutoPopulatingList [] : Object | provenance | | -| Test.java:126:33:126:34 | in : List [] : Object | Test.java:126:10:126:48 | new AutoPopulatingList<>(...) : AutoPopulatingList [] : Object | provenance | MaD:23 | +| Test.java:126:33:126:34 | in : List [] : Object | Test.java:126:10:126:48 | new AutoPopulatingList<>(...) : AutoPopulatingList [] : Object | provenance | MaD:21 | | Test.java:127:20:127:22 | out : AutoPopulatingList [] : Object | Test.java:49:19:49:41 | container : AutoPopulatingList [] : Object | provenance | | -| Test.java:127:20:127:22 | out : AutoPopulatingList [] : Object | Test.java:127:9:127:23 | getElement(...) | provenance | MaD:3 | +| Test.java:127:20:127:22 | out : AutoPopulatingList [] : Object | Test.java:127:9:127:23 | getElement(...) | provenance | MaD:1 | | Test.java:132:14:132:30 | of(...) : List [] : Object | Test.java:133:33:133:34 | in : List [] : Object | provenance | | -| Test.java:132:22:132:29 | source(...) : Object | Test.java:132:14:132:30 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:132:22:132:29 | source(...) : Object | Test.java:132:14:132:30 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:133:10:133:76 | new AutoPopulatingList<>(...) : AutoPopulatingList [] : Object | Test.java:134:20:134:22 | out : AutoPopulatingList [] : Object | provenance | | -| Test.java:133:33:133:34 | in : List [] : Object | Test.java:133:10:133:76 | new AutoPopulatingList<>(...) : AutoPopulatingList [] : Object | provenance | MaD:24 | +| Test.java:133:33:133:34 | in : List [] : Object | Test.java:133:10:133:76 | new AutoPopulatingList<>(...) : AutoPopulatingList [] : Object | provenance | MaD:22 | | Test.java:134:20:134:22 | out : AutoPopulatingList [] : Object | Test.java:49:19:49:41 | container : AutoPopulatingList [] : Object | provenance | | -| Test.java:134:20:134:22 | out : AutoPopulatingList [] : Object | Test.java:134:9:134:23 | getElement(...) | provenance | MaD:3 | +| Test.java:134:20:134:22 | out : AutoPopulatingList [] : Object | Test.java:134:9:134:23 | getElement(...) | provenance | MaD:1 | | Test.java:139:16:139:31 | (...)... : byte[] | Test.java:140:29:140:30 | in : byte[] | provenance | | | Test.java:139:24:139:31 | source(...) : Object | Test.java:139:16:139:31 | (...)... : byte[] | provenance | | | Test.java:140:10:140:31 | decode(...) : byte[] | Test.java:141:9:141:11 | out | provenance | | -| Test.java:140:29:140:30 | in : byte[] | Test.java:140:10:140:31 | decode(...) : byte[] | provenance | MaD:25 | +| Test.java:140:29:140:30 | in : byte[] | Test.java:140:10:140:31 | decode(...) : byte[] | provenance | MaD:23 | | Test.java:146:16:146:31 | (...)... : String | Test.java:147:39:147:40 | in : String | provenance | | | Test.java:146:24:146:31 | source(...) : Object | Test.java:146:16:146:31 | (...)... : String | provenance | | | Test.java:147:10:147:41 | decodeFromString(...) : byte[] | Test.java:148:9:148:11 | out | provenance | | -| Test.java:147:39:147:40 | in : String | Test.java:147:10:147:41 | decodeFromString(...) : byte[] | provenance | MaD:26 | +| Test.java:147:39:147:40 | in : String | Test.java:147:10:147:41 | decodeFromString(...) : byte[] | provenance | MaD:24 | | Test.java:153:16:153:31 | (...)... : String | Test.java:154:46:154:47 | in : String | provenance | | | Test.java:153:24:153:31 | source(...) : Object | Test.java:153:16:153:31 | (...)... : String | provenance | | | Test.java:154:10:154:48 | decodeFromUrlSafeString(...) : byte[] | Test.java:155:9:155:11 | out | provenance | | -| Test.java:154:46:154:47 | in : String | Test.java:154:10:154:48 | decodeFromUrlSafeString(...) : byte[] | provenance | MaD:27 | +| Test.java:154:46:154:47 | in : String | Test.java:154:10:154:48 | decodeFromUrlSafeString(...) : byte[] | provenance | MaD:25 | | Test.java:160:16:160:31 | (...)... : byte[] | Test.java:161:36:161:37 | in : byte[] | provenance | | | Test.java:160:24:160:31 | source(...) : Object | Test.java:160:16:160:31 | (...)... : byte[] | provenance | | | Test.java:161:10:161:38 | decodeUrlSafe(...) : byte[] | Test.java:162:9:162:11 | out | provenance | | -| Test.java:161:36:161:37 | in : byte[] | Test.java:161:10:161:38 | decodeUrlSafe(...) : byte[] | provenance | MaD:28 | +| Test.java:161:36:161:37 | in : byte[] | Test.java:161:10:161:38 | decodeUrlSafe(...) : byte[] | provenance | MaD:26 | | Test.java:167:16:167:31 | (...)... : byte[] | Test.java:168:29:168:30 | in : byte[] | provenance | | | Test.java:167:24:167:31 | source(...) : Object | Test.java:167:16:167:31 | (...)... : byte[] | provenance | | | Test.java:168:10:168:31 | encode(...) : byte[] | Test.java:169:9:169:11 | out | provenance | | -| Test.java:168:29:168:30 | in : byte[] | Test.java:168:10:168:31 | encode(...) : byte[] | provenance | MaD:29 | +| Test.java:168:29:168:30 | in : byte[] | Test.java:168:10:168:31 | encode(...) : byte[] | provenance | MaD:27 | | Test.java:174:16:174:31 | (...)... : byte[] | Test.java:175:37:175:38 | in : byte[] | provenance | | | Test.java:174:24:174:31 | source(...) : Object | Test.java:174:16:174:31 | (...)... : byte[] | provenance | | | Test.java:175:10:175:39 | encodeToString(...) : String | Test.java:176:9:176:11 | out | provenance | | -| Test.java:175:37:175:38 | in : byte[] | Test.java:175:10:175:39 | encodeToString(...) : String | provenance | MaD:30 | +| Test.java:175:37:175:38 | in : byte[] | Test.java:175:10:175:39 | encodeToString(...) : String | provenance | MaD:28 | | Test.java:181:16:181:31 | (...)... : byte[] | Test.java:182:44:182:45 | in : byte[] | provenance | | | Test.java:181:24:181:31 | source(...) : Object | Test.java:181:16:181:31 | (...)... : byte[] | provenance | | | Test.java:182:10:182:46 | encodeToUrlSafeString(...) : String | Test.java:183:9:183:11 | out | provenance | | -| Test.java:182:44:182:45 | in : byte[] | Test.java:182:10:182:46 | encodeToUrlSafeString(...) : String | provenance | MaD:31 | +| Test.java:182:44:182:45 | in : byte[] | Test.java:182:10:182:46 | encodeToUrlSafeString(...) : String | provenance | MaD:29 | | Test.java:188:16:188:31 | (...)... : byte[] | Test.java:189:36:189:37 | in : byte[] | provenance | | | Test.java:188:24:188:31 | source(...) : Object | Test.java:188:16:188:31 | (...)... : byte[] | provenance | | | Test.java:189:10:189:38 | encodeUrlSafe(...) : byte[] | Test.java:190:9:190:11 | out | provenance | | -| Test.java:189:36:189:37 | in : byte[] | Test.java:189:10:189:38 | encodeUrlSafe(...) : byte[] | provenance | MaD:32 | +| Test.java:189:36:189:37 | in : byte[] | Test.java:189:10:189:38 | encodeUrlSafe(...) : byte[] | provenance | MaD:30 | | Test.java:195:18:195:46 | newWithArrayElement(...) : Object[] [[]] : Object | Test.java:196:38:196:39 | in : Object[] [[]] : Object | provenance | | | Test.java:195:38:195:45 | source(...) : Object | Test.java:53:31:53:44 | element : Object | provenance | | | Test.java:195:38:195:45 | source(...) : Object | Test.java:195:18:195:46 | newWithArrayElement(...) : Object[] [[]] : Object | provenance | | | Test.java:196:10:196:40 | arrayToList(...) : List [] : Object | Test.java:197:20:197:22 | out : List [] : Object | provenance | | -| Test.java:196:38:196:39 | in : Object[] [[]] : Object | Test.java:196:10:196:40 | arrayToList(...) : List [] : Object | provenance | MaD:33 | +| Test.java:196:38:196:39 | in : Object[] [[]] : Object | Test.java:196:10:196:40 | arrayToList(...) : List [] : Object | provenance | MaD:31 | | Test.java:197:20:197:22 | out : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:197:20:197:22 | out : List [] : Object | Test.java:197:9:197:23 | getElement(...) | provenance | MaD:3 | +| Test.java:197:20:197:22 | out : List [] : Object | Test.java:197:9:197:23 | getElement(...) | provenance | MaD:1 | | Test.java:202:20:202:36 | of(...) : List [] : Object | Test.java:203:41:203:42 | in : List [] : Object | provenance | | -| Test.java:202:28:202:35 | source(...) : Object | Test.java:202:20:202:36 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:202:28:202:35 | source(...) : Object | Test.java:202:20:202:36 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:203:10:203:49 | findFirstMatch(...) : Object | Test.java:204:9:204:11 | out | provenance | | -| Test.java:203:41:203:42 | in : List [] : Object | Test.java:203:10:203:49 | findFirstMatch(...) : Object | provenance | MaD:34 | +| Test.java:203:41:203:42 | in : List [] : Object | Test.java:203:10:203:49 | findFirstMatch(...) : Object | provenance | MaD:32 | | Test.java:209:20:209:36 | of(...) : List [] : Object | Test.java:210:42:210:43 | in : List [] : Object | provenance | | -| Test.java:209:28:209:35 | source(...) : Object | Test.java:209:20:209:36 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:209:28:209:35 | source(...) : Object | Test.java:209:20:209:36 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:210:10:210:62 | findValueOfType(...) : Object | Test.java:211:9:211:11 | out | provenance | | -| Test.java:210:42:210:43 | in : List [] : Object | Test.java:210:10:210:62 | findValueOfType(...) : Object | provenance | MaD:35 | +| Test.java:210:42:210:43 | in : List [] : Object | Test.java:210:10:210:62 | findValueOfType(...) : Object | provenance | MaD:33 | | Test.java:216:20:216:36 | of(...) : List [] : Object | Test.java:217:42:217:43 | in : List [] : Object | provenance | | -| Test.java:216:28:216:35 | source(...) : Object | Test.java:216:20:216:36 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:216:28:216:35 | source(...) : Object | Test.java:216:20:216:36 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:217:10:217:57 | findValueOfType(...) : Object | Test.java:218:9:218:11 | out | provenance | | -| Test.java:217:42:217:43 | in : List [] : Object | Test.java:217:10:217:57 | findValueOfType(...) : Object | provenance | MaD:35 | +| Test.java:217:42:217:43 | in : List [] : Object | Test.java:217:10:217:57 | findValueOfType(...) : Object | provenance | MaD:33 | | Test.java:223:13:223:28 | of(...) : Set [] : Object | Test.java:224:39:224:40 | in : Set [] : Object | provenance | | -| Test.java:223:20:223:27 | source(...) : Object | Test.java:223:13:223:28 | of(...) : Set [] : Object | provenance | MaD:16 | +| Test.java:223:20:223:27 | source(...) : Object | Test.java:223:13:223:28 | of(...) : Set [] : Object | provenance | MaD:14 | | Test.java:224:10:224:41 | firstElement(...) : Object | Test.java:225:9:225:11 | out | provenance | | -| Test.java:224:39:224:40 | in : Set [] : Object | Test.java:224:10:224:41 | firstElement(...) : Object | provenance | MaD:36 | +| Test.java:224:39:224:40 | in : Set [] : Object | Test.java:224:10:224:41 | firstElement(...) : Object | provenance | MaD:34 | | Test.java:230:14:230:30 | of(...) : List [] : Object | Test.java:231:39:231:40 | in : List [] : Object | provenance | | -| Test.java:230:22:230:29 | source(...) : Object | Test.java:230:14:230:30 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:230:22:230:29 | source(...) : Object | Test.java:230:14:230:30 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:231:10:231:41 | firstElement(...) : Object | Test.java:232:9:232:11 | out | provenance | | -| Test.java:231:39:231:40 | in : List [] : Object | Test.java:231:10:231:41 | firstElement(...) : Object | provenance | MaD:36 | +| Test.java:231:39:231:40 | in : List [] : Object | Test.java:231:10:231:41 | firstElement(...) : Object | provenance | MaD:34 | | Test.java:237:13:237:28 | of(...) : Set [] : Object | Test.java:238:38:238:39 | in : Set [] : Object | provenance | | -| Test.java:237:20:237:27 | source(...) : Object | Test.java:237:13:237:28 | of(...) : Set [] : Object | provenance | MaD:16 | +| Test.java:237:20:237:27 | source(...) : Object | Test.java:237:13:237:28 | of(...) : Set [] : Object | provenance | MaD:14 | | Test.java:238:10:238:40 | lastElement(...) : Object | Test.java:239:9:239:11 | out | provenance | | -| Test.java:238:38:238:39 | in : Set [] : Object | Test.java:238:10:238:40 | lastElement(...) : Object | provenance | MaD:37 | +| Test.java:238:38:238:39 | in : Set [] : Object | Test.java:238:10:238:40 | lastElement(...) : Object | provenance | MaD:35 | | Test.java:244:14:244:30 | of(...) : List [] : Object | Test.java:245:38:245:39 | in : List [] : Object | provenance | | -| Test.java:244:22:244:29 | source(...) : Object | Test.java:244:14:244:30 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:244:22:244:29 | source(...) : Object | Test.java:244:14:244:30 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:245:10:245:40 | lastElement(...) : Object | Test.java:246:9:246:11 | out | provenance | | -| Test.java:245:38:245:39 | in : List [] : Object | Test.java:245:10:245:40 | lastElement(...) : Object | provenance | MaD:37 | +| Test.java:245:38:245:39 | in : List [] : Object | Test.java:245:10:245:40 | lastElement(...) : Object | provenance | MaD:35 | | Test.java:251:18:251:46 | newWithArrayElement(...) : Object[] [[]] : Object | Test.java:252:45:252:46 | in : Object[] [[]] : Object | provenance | | | Test.java:251:38:251:45 | source(...) : Object | Test.java:53:31:53:44 | element : Object | provenance | | | Test.java:251:38:251:45 | source(...) : Object | Test.java:251:18:251:46 | newWithArrayElement(...) : Object[] [[]] : Object | provenance | | -| Test.java:252:45:252:46 | in : Object[] [[]] : Object | Test.java:252:49:252:51 | out [post update] : Collection [] : Object | provenance | MaD:38 | +| Test.java:252:45:252:46 | in : Object[] [[]] : Object | Test.java:252:49:252:51 | out [post update] : Collection [] : Object | provenance | MaD:36 | | Test.java:252:49:252:51 | out [post update] : Collection [] : Object | Test.java:253:20:253:22 | out : Collection [] : Object | provenance | | | Test.java:253:20:253:22 | out : Collection [] : Object | Test.java:49:19:49:41 | container : Collection [] : Object | provenance | | -| Test.java:253:20:253:22 | out : Collection [] : Object | Test.java:253:9:253:23 | getElement(...) | provenance | MaD:3 | +| Test.java:253:20:253:22 | out : Collection [] : Object | Test.java:253:9:253:23 | getElement(...) | provenance | MaD:1 | | Test.java:258:20:258:52 | newPropertiesWithMapKey(...) : Properties [] : Object | Test.java:259:43:259:44 | in : Properties [] : Object | provenance | | | Test.java:258:44:258:51 | source(...) : Object | Test.java:54:37:54:50 | element : Object | provenance | | -| Test.java:258:44:258:51 | source(...) : Object | Test.java:258:20:258:52 | newPropertiesWithMapKey(...) : Properties [] : Object | provenance | MaD:5 | -| Test.java:258:44:258:51 | source(...) : Object | Test.java:258:20:258:52 | newPropertiesWithMapKey(...) : Properties [] : Object | provenance | MaD:13 | -| Test.java:259:43:259:44 | in : Properties [] : Object | Test.java:259:47:259:49 | out [post update] : Map [] : Object | provenance | MaD:39 | +| Test.java:258:44:258:51 | source(...) : Object | Test.java:258:20:258:52 | newPropertiesWithMapKey(...) : Properties [] : Object | provenance | MaD:3 | +| Test.java:258:44:258:51 | source(...) : Object | Test.java:258:20:258:52 | newPropertiesWithMapKey(...) : Properties [] : Object | provenance | MaD:11 | +| Test.java:259:43:259:44 | in : Properties [] : Object | Test.java:259:47:259:49 | out [post update] : Map [] : Object | provenance | MaD:37 | | Test.java:259:47:259:49 | out [post update] : Map [] : Object | Test.java:260:19:260:21 | out : Map [] : Object | provenance | | | Test.java:260:19:260:21 | out : Map [] : Object | Test.java:51:21:51:39 | container : Map [] : Object | provenance | | -| Test.java:260:19:260:21 | out : Map [] : Object | Test.java:260:9:260:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:260:19:260:21 | out : Map [] : Object | Test.java:260:9:260:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:265:20:265:54 | newPropertiesWithMapValue(...) : Properties [] : Object | Test.java:266:43:266:44 | in : Properties [] : Object | provenance | | | Test.java:265:46:265:53 | source(...) : Object | Test.java:55:39:55:52 | element : Object | provenance | | -| Test.java:265:46:265:53 | source(...) : Object | Test.java:265:20:265:54 | newPropertiesWithMapValue(...) : Properties [] : Object | provenance | MaD:6 | -| Test.java:265:46:265:53 | source(...) : Object | Test.java:265:20:265:54 | newPropertiesWithMapValue(...) : Properties [] : Object | provenance | MaD:14 | -| Test.java:266:43:266:44 | in : Properties [] : Object | Test.java:266:47:266:49 | out [post update] : Map [] : Object | provenance | MaD:40 | +| Test.java:265:46:265:53 | source(...) : Object | Test.java:265:20:265:54 | newPropertiesWithMapValue(...) : Properties [] : Object | provenance | MaD:4 | +| Test.java:265:46:265:53 | source(...) : Object | Test.java:265:20:265:54 | newPropertiesWithMapValue(...) : Properties [] : Object | provenance | MaD:12 | +| Test.java:266:43:266:44 | in : Properties [] : Object | Test.java:266:47:266:49 | out [post update] : Map [] : Object | provenance | MaD:38 | | Test.java:266:47:266:49 | out [post update] : Map [] : Object | Test.java:267:21:267:23 | out : Map [] : Object | provenance | | | Test.java:267:21:267:23 | out : Map [] : Object | Test.java:52:23:52:41 | container : Map [] : Object | provenance | | -| Test.java:267:21:267:23 | out : Map [] : Object | Test.java:267:9:267:24 | getMapValue(...) | provenance | MaD:11 | +| Test.java:267:21:267:23 | out : Map [] : Object | Test.java:267:9:267:24 | getMapValue(...) | provenance | MaD:9 | | Test.java:272:21:272:62 | enumeration(...) : Enumeration [] : Object | Test.java:273:37:273:38 | in : Enumeration [] : Object | provenance | | -| Test.java:272:45:272:61 | of(...) : List [] : Object | Test.java:272:21:272:62 | enumeration(...) : Enumeration [] : Object | provenance | MaD:4 | -| Test.java:272:53:272:60 | source(...) : Object | Test.java:272:45:272:61 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:272:45:272:61 | of(...) : List [] : Object | Test.java:272:21:272:62 | enumeration(...) : Enumeration [] : Object | provenance | MaD:2 | +| Test.java:272:53:272:60 | source(...) : Object | Test.java:272:45:272:61 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:273:10:273:39 | toIterator(...) : Iterator [] : Object | Test.java:274:20:274:22 | out : Iterator [] : Object | provenance | | -| Test.java:273:37:273:38 | in : Enumeration [] : Object | Test.java:273:10:273:39 | toIterator(...) : Iterator [] : Object | provenance | MaD:41 | +| Test.java:273:37:273:38 | in : Enumeration [] : Object | Test.java:273:10:273:39 | toIterator(...) : Iterator [] : Object | provenance | MaD:39 | | Test.java:274:20:274:22 | out : Iterator [] : Object | Test.java:50:19:50:39 | container : Iterator [] : Object | provenance | | -| Test.java:274:20:274:22 | out : Iterator [] : Object | Test.java:274:9:274:23 | getElement(...) | provenance | MaD:7 | +| Test.java:274:20:274:22 | out : Iterator [] : Object | Test.java:274:9:274:23 | getElement(...) | provenance | MaD:5 | | Test.java:279:13:279:43 | of(...) : Map [, ] : Object | Test.java:280:42:280:43 | in : Map [, ] : Object | provenance | | -| Test.java:279:26:279:42 | of(...) : List [] : Object | Test.java:279:13:279:43 | of(...) : Map [, ] : Object | provenance | MaD:10 | -| Test.java:279:34:279:41 | source(...) : Object | Test.java:279:26:279:42 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:279:26:279:42 | of(...) : List [] : Object | Test.java:279:13:279:43 | of(...) : Map [, ] : Object | provenance | MaD:8 | +| Test.java:279:34:279:41 | source(...) : Object | Test.java:279:26:279:42 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:280:10:280:44 | toMultiValueMap(...) : MultiValueMap [, ] : Object | Test.java:281:32:281:34 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:280:42:280:43 | in : Map [, ] : Object | Test.java:280:10:280:44 | toMultiValueMap(...) : MultiValueMap [, ] : Object | provenance | MaD:43 | +| Test.java:280:42:280:43 | in : Map [, ] : Object | Test.java:280:10:280:44 | toMultiValueMap(...) : MultiValueMap [, ] : Object | provenance | MaD:41 | | Test.java:281:20:281:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:281:20:281:35 | getMapValue(...) : List [] : Object | Test.java:281:9:281:36 | getElement(...) | provenance | MaD:3 | +| Test.java:281:20:281:35 | getMapValue(...) : List [] : Object | Test.java:281:9:281:36 | getElement(...) | provenance | MaD:1 | | Test.java:281:32:281:34 | out : MultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMap [, ] : Object | provenance | | -| Test.java:281:32:281:34 | out : MultiValueMap [, ] : Object | Test.java:281:20:281:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:281:32:281:34 | out : MultiValueMap [, ] : Object | Test.java:281:20:281:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:286:13:286:34 | of(...) : Map [] : Object | Test.java:287:42:287:43 | in : Map [] : Object | provenance | | -| Test.java:286:20:286:27 | source(...) : Object | Test.java:286:13:286:34 | of(...) : Map [] : Object | provenance | MaD:9 | +| Test.java:286:20:286:27 | source(...) : Object | Test.java:286:13:286:34 | of(...) : Map [] : Object | provenance | MaD:7 | | Test.java:287:10:287:44 | toMultiValueMap(...) : MultiValueMap [] : Object | Test.java:288:19:288:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:287:42:287:43 | in : Map [] : Object | Test.java:287:10:287:44 | toMultiValueMap(...) : MultiValueMap [] : Object | provenance | MaD:42 | +| Test.java:287:42:287:43 | in : Map [] : Object | Test.java:287:10:287:44 | toMultiValueMap(...) : MultiValueMap [] : Object | provenance | MaD:40 | | Test.java:288:19:288:21 | out : MultiValueMap [] : Object | Test.java:51:21:51:39 | container : MultiValueMap [] : Object | provenance | | -| Test.java:288:19:288:21 | out : MultiValueMap [] : Object | Test.java:288:9:288:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:288:19:288:21 | out : MultiValueMap [] : Object | Test.java:288:9:288:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:293:23:293:69 | new LinkedMultiValueMap<>(...) : LinkedMultiValueMap [] : Object | Test.java:294:52:294:53 | in : LinkedMultiValueMap [] : Object | provenance | | -| Test.java:293:47:293:68 | of(...) : Map [] : Object | Test.java:293:23:293:69 | new LinkedMultiValueMap<>(...) : LinkedMultiValueMap [] : Object | provenance | MaD:58 | -| Test.java:293:54:293:61 | source(...) : Object | Test.java:293:47:293:68 | of(...) : Map [] : Object | provenance | MaD:9 | +| Test.java:293:47:293:68 | of(...) : Map [] : Object | Test.java:293:23:293:69 | new LinkedMultiValueMap<>(...) : LinkedMultiValueMap [] : Object | provenance | MaD:56 | +| Test.java:293:54:293:61 | source(...) : Object | Test.java:293:47:293:68 | of(...) : Map [] : Object | provenance | MaD:7 | | Test.java:294:10:294:54 | unmodifiableMultiValueMap(...) : MultiValueMap [] : Object | Test.java:295:19:295:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:294:52:294:53 | in : LinkedMultiValueMap [] : Object | Test.java:294:10:294:54 | unmodifiableMultiValueMap(...) : MultiValueMap [] : Object | provenance | MaD:44 | +| Test.java:294:52:294:53 | in : LinkedMultiValueMap [] : Object | Test.java:294:10:294:54 | unmodifiableMultiValueMap(...) : MultiValueMap [] : Object | provenance | MaD:42 | | Test.java:295:19:295:21 | out : MultiValueMap [] : Object | Test.java:51:21:51:39 | container : MultiValueMap [] : Object | provenance | | -| Test.java:295:19:295:21 | out : MultiValueMap [] : Object | Test.java:295:9:295:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:295:19:295:21 | out : MultiValueMap [] : Object | Test.java:295:9:295:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:301:4:301:5 | in [post update] : LinkedMultiValueMap [] : Object | Test.java:302:52:302:53 | in : LinkedMultiValueMap [] : Object | provenance | | -| Test.java:301:17:301:24 | source(...) : Object | Test.java:301:4:301:5 | in [post update] : LinkedMultiValueMap [] : Object | provenance | MaD:14 | +| Test.java:301:17:301:24 | source(...) : Object | Test.java:301:4:301:5 | in [post update] : LinkedMultiValueMap [] : Object | provenance | MaD:12 | | Test.java:302:10:302:54 | unmodifiableMultiValueMap(...) : MultiValueMap [] : Object | Test.java:303:21:303:23 | out : MultiValueMap [] : Object | provenance | | -| Test.java:302:52:302:53 | in : LinkedMultiValueMap [] : Object | Test.java:302:10:302:54 | unmodifiableMultiValueMap(...) : MultiValueMap [] : Object | provenance | MaD:45 | +| Test.java:302:52:302:53 | in : LinkedMultiValueMap [] : Object | Test.java:302:10:302:54 | unmodifiableMultiValueMap(...) : MultiValueMap [] : Object | provenance | MaD:43 | | Test.java:303:21:303:23 | out : MultiValueMap [] : Object | Test.java:52:23:52:41 | container : MultiValueMap [] : Object | provenance | | -| Test.java:303:21:303:23 | out : MultiValueMap [] : Object | Test.java:303:9:303:24 | getMapValue(...) | provenance | MaD:11 | -| Test.java:308:18:308:34 | of(...) : List [] : Object | Test.java:308:18:308:45 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | +| Test.java:303:21:303:23 | out : MultiValueMap [] : Object | Test.java:303:9:303:24 | getMapValue(...) | provenance | MaD:9 | +| Test.java:308:18:308:34 | of(...) : List [] : Object | Test.java:308:18:308:45 | iterator(...) : Iterator [] : Object | provenance | MaD:1 | | Test.java:308:18:308:45 | iterator(...) : Iterator [] : Object | Test.java:309:12:309:13 | in : Iterator [] : Object | provenance | | -| Test.java:308:26:308:33 | source(...) : Object | Test.java:308:18:308:34 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:308:26:308:33 | source(...) : Object | Test.java:308:18:308:34 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:309:4:309:6 | out [post update] : CompositeIterator [] : Object | Test.java:310:20:310:22 | out : CompositeIterator [] : Object | provenance | | -| Test.java:309:12:309:13 | in : Iterator [] : Object | Test.java:309:4:309:6 | out [post update] : CompositeIterator [] : Object | provenance | MaD:46 | +| Test.java:309:12:309:13 | in : Iterator [] : Object | Test.java:309:4:309:6 | out [post update] : CompositeIterator [] : Object | provenance | MaD:44 | | Test.java:310:20:310:22 | out : CompositeIterator [] : Object | Test.java:50:19:50:39 | container : CompositeIterator [] : Object | provenance | | -| Test.java:310:20:310:22 | out : CompositeIterator [] : Object | Test.java:310:9:310:23 | getElement(...) | provenance | MaD:7 | +| Test.java:310:20:310:22 | out : CompositeIterator [] : Object | Test.java:310:9:310:23 | getElement(...) | provenance | MaD:5 | | Test.java:316:4:316:5 | in [post update] : CompositeIterator [] : Object | Test.java:317:10:317:11 | in : CompositeIterator [] : Object | provenance | | -| Test.java:316:11:316:27 | of(...) : List [] : Object | Test.java:316:11:316:38 | iterator(...) : Iterator [] : Object | provenance | MaD:3 | -| Test.java:316:11:316:38 | iterator(...) : Iterator [] : Object | Test.java:316:4:316:5 | in [post update] : CompositeIterator [] : Object | provenance | MaD:46 | -| Test.java:316:19:316:26 | source(...) : Object | Test.java:316:11:316:27 | of(...) : List [] : Object | provenance | MaD:8 | -| Test.java:317:10:317:11 | in : CompositeIterator [] : Object | Test.java:317:10:317:18 | next(...) : Object | provenance | MaD:7 | +| Test.java:316:11:316:27 | of(...) : List [] : Object | Test.java:316:11:316:38 | iterator(...) : Iterator [] : Object | provenance | MaD:1 | +| Test.java:316:11:316:38 | iterator(...) : Iterator [] : Object | Test.java:316:4:316:5 | in [post update] : CompositeIterator [] : Object | provenance | MaD:44 | +| Test.java:316:19:316:26 | source(...) : Object | Test.java:316:11:316:27 | of(...) : List [] : Object | provenance | MaD:6 | +| Test.java:317:10:317:11 | in : CompositeIterator [] : Object | Test.java:317:10:317:18 | next(...) : Object | provenance | MaD:5 | | Test.java:317:10:317:18 | next(...) : Object | Test.java:318:9:318:11 | out | provenance | | | Test.java:323:35:323:69 | (...)... : FastByteArrayOutputStream | Test.java:324:10:324:11 | in : FastByteArrayOutputStream | provenance | | | Test.java:323:62:323:69 | source(...) : Object | Test.java:323:35:323:69 | (...)... : FastByteArrayOutputStream | provenance | | -| Test.java:324:10:324:11 | in : FastByteArrayOutputStream | Test.java:324:10:324:28 | getInputStream(...) : InputStream | provenance | MaD:47 | +| Test.java:324:10:324:11 | in : FastByteArrayOutputStream | Test.java:324:10:324:28 | getInputStream(...) : InputStream | provenance | MaD:45 | | Test.java:324:10:324:28 | getInputStream(...) : InputStream | Test.java:325:9:325:11 | out | provenance | | | Test.java:330:35:330:69 | (...)... : FastByteArrayOutputStream | Test.java:331:10:331:11 | in : FastByteArrayOutputStream | provenance | | | Test.java:330:62:330:69 | source(...) : Object | Test.java:330:35:330:69 | (...)... : FastByteArrayOutputStream | provenance | | -| Test.java:331:10:331:11 | in : FastByteArrayOutputStream | Test.java:331:10:331:25 | toByteArray(...) : byte[] | provenance | MaD:48 | +| Test.java:331:10:331:11 | in : FastByteArrayOutputStream | Test.java:331:10:331:25 | toByteArray(...) : byte[] | provenance | MaD:46 | | Test.java:331:10:331:25 | toByteArray(...) : byte[] | Test.java:332:9:332:11 | out | provenance | | | Test.java:337:13:337:25 | (...)... : Number | Test.java:338:14:338:15 | in : Number | provenance | | | Test.java:337:18:337:25 | source(...) : Object | Test.java:337:13:337:25 | (...)... : Number | provenance | | | Test.java:338:4:338:6 | out [post update] : FastByteArrayOutputStream | Test.java:339:9:339:11 | out | provenance | | -| Test.java:338:14:338:15 | in : Number | Test.java:338:4:338:6 | out [post update] : FastByteArrayOutputStream | provenance | MaD:2 | -| Test.java:338:14:338:15 | in : Number | Test.java:338:4:338:6 | out [post update] : FastByteArrayOutputStream | provenance | MaD:49 | +| Test.java:338:14:338:15 | in : Number | Test.java:338:4:338:6 | out [post update] : FastByteArrayOutputStream | provenance | MaD:47 | | Test.java:344:16:344:31 | (...)... : byte[] | Test.java:345:14:345:15 | in : byte[] | provenance | | | Test.java:344:24:344:31 | source(...) : Object | Test.java:344:16:344:31 | (...)... : byte[] | provenance | | | Test.java:345:4:345:6 | out [post update] : FastByteArrayOutputStream | Test.java:346:9:346:11 | out | provenance | | -| Test.java:345:14:345:15 | in : byte[] | Test.java:345:4:345:6 | out [post update] : FastByteArrayOutputStream | provenance | MaD:1 | -| Test.java:345:14:345:15 | in : byte[] | Test.java:345:4:345:6 | out [post update] : FastByteArrayOutputStream | provenance | MaD:49 | +| Test.java:345:14:345:15 | in : byte[] | Test.java:345:4:345:6 | out [post update] : FastByteArrayOutputStream | provenance | MaD:47 | | Test.java:351:35:351:69 | (...)... : FastByteArrayOutputStream | Test.java:352:4:352:5 | in : FastByteArrayOutputStream | provenance | | | Test.java:351:62:351:69 | source(...) : Object | Test.java:351:35:351:69 | (...)... : FastByteArrayOutputStream | provenance | | -| Test.java:352:4:352:5 | in : FastByteArrayOutputStream | Test.java:352:15:352:17 | out [post update] : OutputStream | provenance | MaD:50 | +| Test.java:352:4:352:5 | in : FastByteArrayOutputStream | Test.java:352:15:352:17 | out [post update] : OutputStream | provenance | MaD:48 | | Test.java:352:15:352:17 | out [post update] : OutputStream | Test.java:353:9:353:11 | out | provenance | | | Test.java:358:16:358:31 | (...)... : String | Test.java:359:23:359:24 | in : String | provenance | | | Test.java:358:24:358:31 | source(...) : Object | Test.java:358:16:358:31 | (...)... : String | provenance | | -| Test.java:359:23:359:24 | in : String | Test.java:359:27:359:29 | out [post update] : Writer | provenance | MaD:53 | +| Test.java:359:23:359:24 | in : String | Test.java:359:27:359:29 | out [post update] : Writer | provenance | MaD:51 | | Test.java:359:27:359:29 | out [post update] : Writer | Test.java:360:9:360:11 | out | provenance | | | Test.java:365:16:365:31 | (...)... : Reader | Test.java:366:23:366:24 | in : Reader | provenance | | | Test.java:365:24:365:31 | source(...) : Object | Test.java:365:16:365:31 | (...)... : Reader | provenance | | -| Test.java:366:23:366:24 | in : Reader | Test.java:366:27:366:29 | out [post update] : Writer | provenance | MaD:52 | +| Test.java:366:23:366:24 | in : Reader | Test.java:366:27:366:29 | out [post update] : Writer | provenance | MaD:50 | | Test.java:366:27:366:29 | out [post update] : Writer | Test.java:367:9:367:11 | out | provenance | | | Test.java:372:16:372:31 | (...)... : byte[] | Test.java:373:23:373:24 | in : byte[] | provenance | | | Test.java:372:24:372:31 | source(...) : Object | Test.java:372:16:372:31 | (...)... : byte[] | provenance | | -| Test.java:373:23:373:24 | in : byte[] | Test.java:373:27:373:29 | out [post update] : OutputStream | provenance | MaD:54 | +| Test.java:373:23:373:24 | in : byte[] | Test.java:373:27:373:29 | out [post update] : OutputStream | provenance | MaD:52 | | Test.java:373:27:373:29 | out [post update] : OutputStream | Test.java:374:9:374:11 | out | provenance | | | Test.java:379:21:379:41 | (...)... : InputStream | Test.java:380:23:380:24 | in : InputStream | provenance | | | Test.java:379:34:379:41 | source(...) : Object | Test.java:379:21:379:41 | (...)... : InputStream | provenance | | -| Test.java:380:23:380:24 | in : InputStream | Test.java:380:27:380:29 | out [post update] : OutputStream | provenance | MaD:51 | +| Test.java:380:23:380:24 | in : InputStream | Test.java:380:27:380:29 | out [post update] : OutputStream | provenance | MaD:49 | | Test.java:380:27:380:29 | out [post update] : OutputStream | Test.java:381:9:381:11 | out | provenance | | | Test.java:386:21:386:41 | (...)... : InputStream | Test.java:387:40:387:41 | in : InputStream | provenance | | | Test.java:386:34:386:41 | source(...) : Object | Test.java:386:21:386:41 | (...)... : InputStream | provenance | | | Test.java:387:10:387:42 | copyToByteArray(...) : byte[] | Test.java:388:9:388:11 | out | provenance | | -| Test.java:387:40:387:41 | in : InputStream | Test.java:387:10:387:42 | copyToByteArray(...) : byte[] | provenance | MaD:55 | +| Test.java:387:40:387:41 | in : InputStream | Test.java:387:10:387:42 | copyToByteArray(...) : byte[] | provenance | MaD:53 | | Test.java:393:14:393:27 | (...)... : File | Test.java:394:40:394:41 | in : File | provenance | | | Test.java:393:20:393:27 | source(...) : Object | Test.java:393:14:393:27 | (...)... : File | provenance | | | Test.java:394:10:394:42 | copyToByteArray(...) : byte[] | Test.java:395:9:395:11 | out | provenance | | -| Test.java:394:40:394:41 | in : File | Test.java:394:10:394:42 | copyToByteArray(...) : byte[] | provenance | MaD:55 | +| Test.java:394:40:394:41 | in : File | Test.java:394:10:394:42 | copyToByteArray(...) : byte[] | provenance | MaD:53 | | Test.java:400:16:400:31 | (...)... : Reader | Test.java:401:37:401:38 | in : Reader | provenance | | | Test.java:400:24:400:31 | source(...) : Object | Test.java:400:16:400:31 | (...)... : Reader | provenance | | | Test.java:401:10:401:39 | copyToString(...) : String | Test.java:402:9:402:11 | out | provenance | | -| Test.java:401:37:401:38 | in : Reader | Test.java:401:10:401:39 | copyToString(...) : String | provenance | MaD:56 | +| Test.java:401:37:401:38 | in : Reader | Test.java:401:10:401:39 | copyToString(...) : String | provenance | MaD:54 | | Test.java:407:14:407:27 | (...)... : File | Test.java:408:36:408:37 | in : File | provenance | | | Test.java:407:20:407:27 | source(...) : Object | Test.java:407:14:407:27 | (...)... : File | provenance | | -| Test.java:408:36:408:37 | in : File | Test.java:408:40:408:42 | out [post update] : File | provenance | MaD:57 | +| Test.java:408:36:408:37 | in : File | Test.java:408:40:408:42 | out [post update] : File | provenance | MaD:55 | | Test.java:408:40:408:42 | out [post update] : File | Test.java:409:9:409:11 | out | provenance | | | Test.java:414:13:414:43 | of(...) : Map [, ] : Object | Test.java:415:34:415:35 | in : Map [, ] : Object | provenance | | -| Test.java:414:26:414:42 | of(...) : List [] : Object | Test.java:414:13:414:43 | of(...) : Map [, ] : Object | provenance | MaD:10 | -| Test.java:414:34:414:41 | source(...) : Object | Test.java:414:26:414:42 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:414:26:414:42 | of(...) : List [] : Object | Test.java:414:13:414:43 | of(...) : Map [, ] : Object | provenance | MaD:8 | +| Test.java:414:34:414:41 | source(...) : Object | Test.java:414:26:414:42 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:415:10:415:36 | new LinkedMultiValueMap<>(...) : LinkedMultiValueMap [, ] : Object | Test.java:416:32:416:34 | out : LinkedMultiValueMap [, ] : Object | provenance | | -| Test.java:415:34:415:35 | in : Map [, ] : Object | Test.java:415:10:415:36 | new LinkedMultiValueMap<>(...) : LinkedMultiValueMap [, ] : Object | provenance | MaD:59 | +| Test.java:415:34:415:35 | in : Map [, ] : Object | Test.java:415:10:415:36 | new LinkedMultiValueMap<>(...) : LinkedMultiValueMap [, ] : Object | provenance | MaD:57 | | Test.java:416:20:416:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:416:20:416:35 | getMapValue(...) : List [] : Object | Test.java:416:9:416:36 | getElement(...) | provenance | MaD:3 | +| Test.java:416:20:416:35 | getMapValue(...) : List [] : Object | Test.java:416:9:416:36 | getElement(...) | provenance | MaD:1 | | Test.java:416:32:416:34 | out : LinkedMultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : LinkedMultiValueMap [, ] : Object | provenance | | -| Test.java:416:32:416:34 | out : LinkedMultiValueMap [, ] : Object | Test.java:416:20:416:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:416:32:416:34 | out : LinkedMultiValueMap [, ] : Object | Test.java:416:20:416:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:421:13:421:34 | of(...) : Map [] : Object | Test.java:422:34:422:35 | in : Map [] : Object | provenance | | -| Test.java:421:20:421:27 | source(...) : Object | Test.java:421:13:421:34 | of(...) : Map [] : Object | provenance | MaD:9 | +| Test.java:421:20:421:27 | source(...) : Object | Test.java:421:13:421:34 | of(...) : Map [] : Object | provenance | MaD:7 | | Test.java:422:10:422:36 | new LinkedMultiValueMap<>(...) : LinkedMultiValueMap [] : Object | Test.java:423:19:423:21 | out : LinkedMultiValueMap [] : Object | provenance | | -| Test.java:422:34:422:35 | in : Map [] : Object | Test.java:422:10:422:36 | new LinkedMultiValueMap<>(...) : LinkedMultiValueMap [] : Object | provenance | MaD:58 | +| Test.java:422:34:422:35 | in : Map [] : Object | Test.java:422:10:422:36 | new LinkedMultiValueMap<>(...) : LinkedMultiValueMap [] : Object | provenance | MaD:56 | | Test.java:423:19:423:21 | out : LinkedMultiValueMap [] : Object | Test.java:51:21:51:39 | container : LinkedMultiValueMap [] : Object | provenance | | -| Test.java:423:19:423:21 | out : LinkedMultiValueMap [] : Object | Test.java:423:9:423:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:423:19:423:21 | out : LinkedMultiValueMap [] : Object | Test.java:423:9:423:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:429:4:429:5 | in [post update] : LinkedMultiValueMap [] : Object | Test.java:430:10:430:11 | in : LinkedMultiValueMap [] : Object | provenance | | -| Test.java:429:11:429:18 | source(...) : Object | Test.java:429:4:429:5 | in [post update] : LinkedMultiValueMap [] : Object | provenance | MaD:71 | -| Test.java:430:10:430:11 | in : LinkedMultiValueMap [] : Object | Test.java:430:10:430:22 | deepCopy(...) : LinkedMultiValueMap [] : Object | provenance | MaD:60 | +| Test.java:429:11:429:18 | source(...) : Object | Test.java:429:4:429:5 | in [post update] : LinkedMultiValueMap [] : Object | provenance | MaD:69 | +| Test.java:430:10:430:11 | in : LinkedMultiValueMap [] : Object | Test.java:430:10:430:22 | deepCopy(...) : LinkedMultiValueMap [] : Object | provenance | MaD:58 | | Test.java:430:10:430:22 | deepCopy(...) : LinkedMultiValueMap [] : Object | Test.java:431:19:431:21 | out : LinkedMultiValueMap [] : Object | provenance | | | Test.java:431:19:431:21 | out : LinkedMultiValueMap [] : Object | Test.java:51:21:51:39 | container : LinkedMultiValueMap [] : Object | provenance | | -| Test.java:431:19:431:21 | out : LinkedMultiValueMap [] : Object | Test.java:431:9:431:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:431:19:431:21 | out : LinkedMultiValueMap [] : Object | Test.java:431:9:431:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:437:4:437:5 | in [post update] : LinkedMultiValueMap [, ] : Object | Test.java:438:10:438:11 | in : LinkedMultiValueMap [, ] : Object | provenance | | -| Test.java:437:17:437:24 | source(...) : Object | Test.java:437:4:437:5 | in [post update] : LinkedMultiValueMap [, ] : Object | provenance | MaD:72 | -| Test.java:438:10:438:11 | in : LinkedMultiValueMap [, ] : Object | Test.java:438:10:438:22 | deepCopy(...) : LinkedMultiValueMap [, ] : Object | provenance | MaD:61 | +| Test.java:437:17:437:24 | source(...) : Object | Test.java:437:4:437:5 | in [post update] : LinkedMultiValueMap [, ] : Object | provenance | MaD:70 | +| Test.java:438:10:438:11 | in : LinkedMultiValueMap [, ] : Object | Test.java:438:10:438:22 | deepCopy(...) : LinkedMultiValueMap [, ] : Object | provenance | MaD:59 | | Test.java:438:10:438:22 | deepCopy(...) : LinkedMultiValueMap [, ] : Object | Test.java:439:32:439:34 | out : LinkedMultiValueMap [, ] : Object | provenance | | | Test.java:439:20:439:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:439:20:439:35 | getMapValue(...) : List [] : Object | Test.java:439:9:439:36 | getElement(...) | provenance | MaD:3 | +| Test.java:439:20:439:35 | getMapValue(...) : List [] : Object | Test.java:439:9:439:36 | getElement(...) | provenance | MaD:1 | | Test.java:439:32:439:34 | out : LinkedMultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : LinkedMultiValueMap [, ] : Object | provenance | | -| Test.java:439:32:439:34 | out : LinkedMultiValueMap [, ] : Object | Test.java:439:20:439:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:439:32:439:34 | out : LinkedMultiValueMap [, ] : Object | Test.java:439:20:439:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:444:16:444:23 | source(...) : Object | Test.java:445:12:445:13 | in : Object | provenance | | | Test.java:445:4:445:6 | out [post update] : MultiValueMapAdapter [] : Object | Test.java:446:19:446:21 | out : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:445:12:445:13 | in : Object | Test.java:445:4:445:6 | out [post update] : MultiValueMapAdapter [] : Object | provenance | MaD:62 | +| Test.java:445:12:445:13 | in : Object | Test.java:445:4:445:6 | out [post update] : MultiValueMapAdapter [] : Object | provenance | MaD:60 | | Test.java:446:19:446:21 | out : MultiValueMapAdapter [] : Object | Test.java:51:21:51:39 | container : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:446:19:446:21 | out : MultiValueMapAdapter [] : Object | Test.java:446:9:446:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:446:19:446:21 | out : MultiValueMapAdapter [] : Object | Test.java:446:9:446:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:451:16:451:23 | source(...) : Object | Test.java:452:12:452:13 | in : Object | provenance | | | Test.java:452:4:452:6 | out [post update] : MultiValueMap [] : Object | Test.java:453:19:453:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:452:12:452:13 | in : Object | Test.java:452:4:452:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:62 | +| Test.java:452:12:452:13 | in : Object | Test.java:452:4:452:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:60 | | Test.java:453:19:453:21 | out : MultiValueMap [] : Object | Test.java:51:21:51:39 | container : MultiValueMap [] : Object | provenance | | -| Test.java:453:19:453:21 | out : MultiValueMap [] : Object | Test.java:453:9:453:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:453:19:453:21 | out : MultiValueMap [] : Object | Test.java:453:9:453:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:458:16:458:23 | source(...) : Object | Test.java:459:12:459:13 | in : Object | provenance | | | Test.java:459:4:459:6 | out [post update] : MultiValueMap [] : Object | Test.java:460:19:460:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:459:12:459:13 | in : Object | Test.java:459:4:459:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:62 | +| Test.java:459:12:459:13 | in : Object | Test.java:459:4:459:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:60 | | Test.java:460:19:460:21 | out : MultiValueMap [] : Object | Test.java:51:21:51:39 | container : MultiValueMap [] : Object | provenance | | -| Test.java:460:19:460:21 | out : MultiValueMap [] : Object | Test.java:460:9:460:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:460:19:460:21 | out : MultiValueMap [] : Object | Test.java:460:9:460:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:465:16:465:23 | source(...) : Object | Test.java:466:18:466:19 | in : Object | provenance | | | Test.java:466:4:466:6 | out [post update] : MultiValueMapAdapter [, ] : Object | Test.java:467:32:467:34 | out : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:466:18:466:19 | in : Object | Test.java:466:4:466:6 | out [post update] : MultiValueMapAdapter [, ] : Object | provenance | MaD:63 | +| Test.java:466:18:466:19 | in : Object | Test.java:466:4:466:6 | out [post update] : MultiValueMapAdapter [, ] : Object | provenance | MaD:61 | | Test.java:467:20:467:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:467:20:467:35 | getMapValue(...) : List [] : Object | Test.java:467:9:467:36 | getElement(...) | provenance | MaD:3 | +| Test.java:467:20:467:35 | getMapValue(...) : List [] : Object | Test.java:467:9:467:36 | getElement(...) | provenance | MaD:1 | | Test.java:467:32:467:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:467:32:467:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:467:20:467:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:467:32:467:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:467:20:467:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:472:16:472:23 | source(...) : Object | Test.java:473:18:473:19 | in : Object | provenance | | | Test.java:473:4:473:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:474:32:474:34 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:473:18:473:19 | in : Object | Test.java:473:4:473:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:63 | +| Test.java:473:18:473:19 | in : Object | Test.java:473:4:473:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:61 | | Test.java:474:20:474:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:474:20:474:35 | getMapValue(...) : List [] : Object | Test.java:474:9:474:36 | getElement(...) | provenance | MaD:3 | +| Test.java:474:20:474:35 | getMapValue(...) : List [] : Object | Test.java:474:9:474:36 | getElement(...) | provenance | MaD:1 | | Test.java:474:32:474:34 | out : MultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMap [, ] : Object | provenance | | -| Test.java:474:32:474:34 | out : MultiValueMap [, ] : Object | Test.java:474:20:474:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:474:32:474:34 | out : MultiValueMap [, ] : Object | Test.java:474:20:474:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:479:16:479:23 | source(...) : Object | Test.java:480:26:480:27 | in : Object | provenance | | | Test.java:480:4:480:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:481:32:481:34 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:480:26:480:27 | in : Object | Test.java:480:4:480:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:63 | +| Test.java:480:26:480:27 | in : Object | Test.java:480:4:480:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:61 | | Test.java:481:20:481:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:481:20:481:35 | getMapValue(...) : List [] : Object | Test.java:481:9:481:36 | getElement(...) | provenance | MaD:3 | +| Test.java:481:20:481:35 | getMapValue(...) : List [] : Object | Test.java:481:9:481:36 | getElement(...) | provenance | MaD:1 | | Test.java:481:32:481:34 | out : MultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMap [, ] : Object | provenance | | -| Test.java:481:32:481:34 | out : MultiValueMap [, ] : Object | Test.java:481:20:481:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:481:32:481:34 | out : MultiValueMap [, ] : Object | Test.java:481:20:481:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:486:14:486:30 | of(...) : List [] : Object | Test.java:487:21:487:22 | in : List [] : Object | provenance | | -| Test.java:486:22:486:29 | source(...) : Object | Test.java:486:14:486:30 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:486:22:486:29 | source(...) : Object | Test.java:486:14:486:30 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:487:4:487:6 | out [post update] : MultiValueMapAdapter [, ] : Object | Test.java:488:32:488:34 | out : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:487:21:487:22 | in : List [] : Object | Test.java:487:4:487:6 | out [post update] : MultiValueMapAdapter [, ] : Object | provenance | MaD:65 | +| Test.java:487:21:487:22 | in : List [] : Object | Test.java:487:4:487:6 | out [post update] : MultiValueMapAdapter [, ] : Object | provenance | MaD:63 | | Test.java:488:20:488:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:488:20:488:35 | getMapValue(...) : List [] : Object | Test.java:488:9:488:36 | getElement(...) | provenance | MaD:3 | +| Test.java:488:20:488:35 | getMapValue(...) : List [] : Object | Test.java:488:9:488:36 | getElement(...) | provenance | MaD:1 | | Test.java:488:32:488:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:488:32:488:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:488:20:488:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:488:32:488:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:488:20:488:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:493:14:493:30 | of(...) : List [] : Object | Test.java:494:21:494:22 | in : List [] : Object | provenance | | -| Test.java:493:22:493:29 | source(...) : Object | Test.java:493:14:493:30 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:493:22:493:29 | source(...) : Object | Test.java:493:14:493:30 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:494:4:494:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:495:32:495:34 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:494:21:494:22 | in : List [] : Object | Test.java:494:4:494:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:65 | +| Test.java:494:21:494:22 | in : List [] : Object | Test.java:494:4:494:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:63 | | Test.java:495:20:495:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:495:20:495:35 | getMapValue(...) : List [] : Object | Test.java:495:9:495:36 | getElement(...) | provenance | MaD:3 | +| Test.java:495:20:495:35 | getMapValue(...) : List [] : Object | Test.java:495:9:495:36 | getElement(...) | provenance | MaD:1 | | Test.java:495:32:495:34 | out : MultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMap [, ] : Object | provenance | | -| Test.java:495:32:495:34 | out : MultiValueMap [, ] : Object | Test.java:495:20:495:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:495:32:495:34 | out : MultiValueMap [, ] : Object | Test.java:495:20:495:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:500:14:500:30 | of(...) : List [] : Object | Test.java:501:29:501:30 | in : List [] : Object | provenance | | -| Test.java:500:22:500:29 | source(...) : Object | Test.java:500:14:500:30 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:500:22:500:29 | source(...) : Object | Test.java:500:14:500:30 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:501:4:501:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:502:32:502:34 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:501:29:501:30 | in : List [] : Object | Test.java:501:4:501:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:65 | +| Test.java:501:29:501:30 | in : List [] : Object | Test.java:501:4:501:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:63 | | Test.java:502:20:502:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:502:20:502:35 | getMapValue(...) : List [] : Object | Test.java:502:9:502:36 | getElement(...) | provenance | MaD:3 | +| Test.java:502:20:502:35 | getMapValue(...) : List [] : Object | Test.java:502:9:502:36 | getElement(...) | provenance | MaD:1 | | Test.java:502:32:502:34 | out : MultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMap [, ] : Object | provenance | | -| Test.java:502:32:502:34 | out : MultiValueMap [, ] : Object | Test.java:502:20:502:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:502:32:502:34 | out : MultiValueMap [, ] : Object | Test.java:502:20:502:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:507:23:507:68 | (...)... : MultiValueMap [, ] : Object | Test.java:508:15:508:16 | in : MultiValueMap [, ] : Object | provenance | | | Test.java:507:38:507:68 | of(...) : Map [, ] : Object | Test.java:507:23:507:68 | (...)... : MultiValueMap [, ] : Object | provenance | | -| Test.java:507:51:507:67 | of(...) : List [] : Object | Test.java:507:38:507:68 | of(...) : Map [, ] : Object | provenance | MaD:10 | -| Test.java:507:59:507:66 | source(...) : Object | Test.java:507:51:507:67 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:507:51:507:67 | of(...) : List [] : Object | Test.java:507:38:507:68 | of(...) : Map [, ] : Object | provenance | MaD:8 | +| Test.java:507:59:507:66 | source(...) : Object | Test.java:507:51:507:67 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:508:4:508:6 | out [post update] : MultiValueMapAdapter [, ] : Object | Test.java:509:32:509:34 | out : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:508:15:508:16 | in : MultiValueMap [, ] : Object | Test.java:508:4:508:6 | out [post update] : MultiValueMapAdapter [, ] : Object | provenance | MaD:67 | +| Test.java:508:15:508:16 | in : MultiValueMap [, ] : Object | Test.java:508:4:508:6 | out [post update] : MultiValueMapAdapter [, ] : Object | provenance | MaD:65 | | Test.java:509:20:509:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:509:20:509:35 | getMapValue(...) : List [] : Object | Test.java:509:9:509:36 | getElement(...) | provenance | MaD:3 | +| Test.java:509:20:509:35 | getMapValue(...) : List [] : Object | Test.java:509:9:509:36 | getElement(...) | provenance | MaD:1 | | Test.java:509:32:509:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:509:32:509:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:509:20:509:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:509:32:509:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:509:20:509:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:514:23:514:68 | (...)... : MultiValueMap [, ] : Object | Test.java:515:15:515:16 | in : MultiValueMap [, ] : Object | provenance | | | Test.java:514:38:514:68 | of(...) : Map [, ] : Object | Test.java:514:23:514:68 | (...)... : MultiValueMap [, ] : Object | provenance | | -| Test.java:514:51:514:67 | of(...) : List [] : Object | Test.java:514:38:514:68 | of(...) : Map [, ] : Object | provenance | MaD:10 | -| Test.java:514:59:514:66 | source(...) : Object | Test.java:514:51:514:67 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:514:51:514:67 | of(...) : List [] : Object | Test.java:514:38:514:68 | of(...) : Map [, ] : Object | provenance | MaD:8 | +| Test.java:514:59:514:66 | source(...) : Object | Test.java:514:51:514:67 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:515:4:515:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:516:32:516:34 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:515:15:515:16 | in : MultiValueMap [, ] : Object | Test.java:515:4:515:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:67 | +| Test.java:515:15:515:16 | in : MultiValueMap [, ] : Object | Test.java:515:4:515:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:65 | | Test.java:516:20:516:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:516:20:516:35 | getMapValue(...) : List [] : Object | Test.java:516:9:516:36 | getElement(...) | provenance | MaD:3 | +| Test.java:516:20:516:35 | getMapValue(...) : List [] : Object | Test.java:516:9:516:36 | getElement(...) | provenance | MaD:1 | | Test.java:516:32:516:34 | out : MultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMap [, ] : Object | provenance | | -| Test.java:516:32:516:34 | out : MultiValueMap [, ] : Object | Test.java:516:20:516:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:516:32:516:34 | out : MultiValueMap [, ] : Object | Test.java:516:20:516:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:521:16:521:23 | source(...) : Object | Test.java:522:15:522:16 | in : Object | provenance | | | Test.java:522:4:522:6 | out [post update] : MultiValueMapAdapter [] : Object | Test.java:523:19:523:21 | out : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:522:15:522:16 | in : Object | Test.java:522:4:522:6 | out [post update] : MultiValueMapAdapter [] : Object | provenance | MaD:64 | +| Test.java:522:15:522:16 | in : Object | Test.java:522:4:522:6 | out [post update] : MultiValueMapAdapter [] : Object | provenance | MaD:62 | | Test.java:523:19:523:21 | out : MultiValueMapAdapter [] : Object | Test.java:51:21:51:39 | container : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:523:19:523:21 | out : MultiValueMapAdapter [] : Object | Test.java:523:9:523:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:523:19:523:21 | out : MultiValueMapAdapter [] : Object | Test.java:523:9:523:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:528:16:528:23 | source(...) : Object | Test.java:529:15:529:16 | in : Object | provenance | | | Test.java:529:4:529:6 | out [post update] : MultiValueMap [] : Object | Test.java:530:19:530:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:529:15:529:16 | in : Object | Test.java:529:4:529:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:64 | +| Test.java:529:15:529:16 | in : Object | Test.java:529:4:529:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:62 | | Test.java:530:19:530:21 | out : MultiValueMap [] : Object | Test.java:51:21:51:39 | container : MultiValueMap [] : Object | provenance | | -| Test.java:530:19:530:21 | out : MultiValueMap [] : Object | Test.java:530:9:530:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:530:19:530:21 | out : MultiValueMap [] : Object | Test.java:530:9:530:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:536:4:536:6 | mvm [post update] : MultiValueMap [] : Object | Test.java:537:15:537:17 | mvm : MultiValueMap [] : Object | provenance | | -| Test.java:536:12:536:19 | source(...) : Object | Test.java:536:4:536:6 | mvm [post update] : MultiValueMap [] : Object | provenance | MaD:71 | +| Test.java:536:12:536:19 | source(...) : Object | Test.java:536:4:536:6 | mvm [post update] : MultiValueMap [] : Object | provenance | MaD:69 | | Test.java:537:4:537:6 | out [post update] : MultiValueMapAdapter [] : Object | Test.java:538:19:538:21 | out : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:537:15:537:17 | mvm : MultiValueMap [] : Object | Test.java:537:4:537:6 | out [post update] : MultiValueMapAdapter [] : Object | provenance | MaD:66 | +| Test.java:537:15:537:17 | mvm : MultiValueMap [] : Object | Test.java:537:4:537:6 | out [post update] : MultiValueMapAdapter [] : Object | provenance | MaD:64 | | Test.java:538:19:538:21 | out : MultiValueMapAdapter [] : Object | Test.java:51:21:51:39 | container : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:538:19:538:21 | out : MultiValueMapAdapter [] : Object | Test.java:538:9:538:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:538:19:538:21 | out : MultiValueMapAdapter [] : Object | Test.java:538:9:538:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:544:4:544:6 | mvm [post update] : MultiValueMap [] : Object | Test.java:545:15:545:17 | mvm : MultiValueMap [] : Object | provenance | | -| Test.java:544:12:544:19 | source(...) : Object | Test.java:544:4:544:6 | mvm [post update] : MultiValueMap [] : Object | provenance | MaD:71 | +| Test.java:544:12:544:19 | source(...) : Object | Test.java:544:4:544:6 | mvm [post update] : MultiValueMap [] : Object | provenance | MaD:69 | | Test.java:545:4:545:6 | out [post update] : MultiValueMap [] : Object | Test.java:546:19:546:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:545:15:545:17 | mvm : MultiValueMap [] : Object | Test.java:545:4:545:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:66 | +| Test.java:545:15:545:17 | mvm : MultiValueMap [] : Object | Test.java:545:4:545:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:64 | | Test.java:546:19:546:21 | out : MultiValueMap [] : Object | Test.java:51:21:51:39 | container : MultiValueMap [] : Object | provenance | | -| Test.java:546:19:546:21 | out : MultiValueMap [] : Object | Test.java:546:9:546:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:546:19:546:21 | out : MultiValueMap [] : Object | Test.java:546:9:546:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:551:16:551:23 | source(...) : Object | Test.java:552:20:552:21 | in : Object | provenance | | | Test.java:552:4:552:6 | out [post update] : MultiValueMap [] : Object | Test.java:553:19:553:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:552:20:552:21 | in : Object | Test.java:552:4:552:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:68 | +| Test.java:552:20:552:21 | in : Object | Test.java:552:4:552:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:66 | | Test.java:553:19:553:21 | out : MultiValueMap [] : Object | Test.java:51:21:51:39 | container : MultiValueMap [] : Object | provenance | | -| Test.java:553:19:553:21 | out : MultiValueMap [] : Object | Test.java:553:9:553:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:553:19:553:21 | out : MultiValueMap [] : Object | Test.java:553:9:553:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:558:16:558:23 | source(...) : Object | Test.java:559:20:559:21 | in : Object | provenance | | | Test.java:559:4:559:6 | out [post update] : MultiValueMap [] : Object | Test.java:560:19:560:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:559:20:559:21 | in : Object | Test.java:559:4:559:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:68 | +| Test.java:559:20:559:21 | in : Object | Test.java:559:4:559:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:66 | | Test.java:560:19:560:21 | out : MultiValueMap [] : Object | Test.java:51:21:51:39 | container : MultiValueMap [] : Object | provenance | | -| Test.java:560:19:560:21 | out : MultiValueMap [] : Object | Test.java:560:9:560:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:560:19:560:21 | out : MultiValueMap [] : Object | Test.java:560:9:560:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:565:16:565:23 | source(...) : Object | Test.java:566:26:566:27 | in : Object | provenance | | | Test.java:566:4:566:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:567:32:567:34 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:566:26:566:27 | in : Object | Test.java:566:4:566:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:69 | +| Test.java:566:26:566:27 | in : Object | Test.java:566:4:566:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:67 | | Test.java:567:20:567:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:567:20:567:35 | getMapValue(...) : List [] : Object | Test.java:567:9:567:36 | getElement(...) | provenance | MaD:3 | +| Test.java:567:20:567:35 | getMapValue(...) : List [] : Object | Test.java:567:9:567:36 | getElement(...) | provenance | MaD:1 | | Test.java:567:32:567:34 | out : MultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMap [, ] : Object | provenance | | -| Test.java:567:32:567:34 | out : MultiValueMap [, ] : Object | Test.java:567:20:567:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:567:32:567:34 | out : MultiValueMap [, ] : Object | Test.java:567:20:567:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:572:16:572:23 | source(...) : Object | Test.java:573:34:573:35 | in : Object | provenance | | | Test.java:573:4:573:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:574:32:574:34 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:573:34:573:35 | in : Object | Test.java:573:4:573:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:69 | +| Test.java:573:34:573:35 | in : Object | Test.java:573:4:573:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:67 | | Test.java:574:20:574:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:574:20:574:35 | getMapValue(...) : List [] : Object | Test.java:574:9:574:36 | getElement(...) | provenance | MaD:3 | +| Test.java:574:20:574:35 | getMapValue(...) : List [] : Object | Test.java:574:9:574:36 | getElement(...) | provenance | MaD:1 | | Test.java:574:32:574:34 | out : MultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMap [, ] : Object | provenance | | -| Test.java:574:32:574:34 | out : MultiValueMap [, ] : Object | Test.java:574:20:574:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:574:32:574:34 | out : MultiValueMap [, ] : Object | Test.java:574:20:574:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:579:30:579:86 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [, ] : Object | Test.java:580:10:580:11 | in : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:579:55:579:85 | of(...) : Map [, ] : Object | Test.java:579:30:579:86 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [, ] : Object | provenance | MaD:78 | -| Test.java:579:68:579:84 | of(...) : List [] : Object | Test.java:579:55:579:85 | of(...) : Map [, ] : Object | provenance | MaD:10 | -| Test.java:579:76:579:83 | source(...) : Object | Test.java:579:68:579:84 | of(...) : List [] : Object | provenance | MaD:8 | -| Test.java:580:10:580:11 | in : MultiValueMapAdapter [, ] : Object | Test.java:580:10:580:26 | getFirst(...) : Object | provenance | MaD:70 | +| Test.java:579:55:579:85 | of(...) : Map [, ] : Object | Test.java:579:30:579:86 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [, ] : Object | provenance | MaD:76 | +| Test.java:579:68:579:84 | of(...) : List [] : Object | Test.java:579:55:579:85 | of(...) : Map [, ] : Object | provenance | MaD:8 | +| Test.java:579:76:579:83 | source(...) : Object | Test.java:579:68:579:84 | of(...) : List [] : Object | provenance | MaD:6 | +| Test.java:580:10:580:11 | in : MultiValueMapAdapter [, ] : Object | Test.java:580:10:580:26 | getFirst(...) : Object | provenance | MaD:68 | | Test.java:580:10:580:26 | getFirst(...) : Object | Test.java:581:9:581:11 | out | provenance | | | Test.java:586:23:586:68 | (...)... : MultiValueMap [, ] : Object | Test.java:587:10:587:11 | in : MultiValueMap [, ] : Object | provenance | | | Test.java:586:38:586:68 | of(...) : Map [, ] : Object | Test.java:586:23:586:68 | (...)... : MultiValueMap [, ] : Object | provenance | | -| Test.java:586:51:586:67 | of(...) : List [] : Object | Test.java:586:38:586:68 | of(...) : Map [, ] : Object | provenance | MaD:10 | -| Test.java:586:59:586:66 | source(...) : Object | Test.java:586:51:586:67 | of(...) : List [] : Object | provenance | MaD:8 | -| Test.java:587:10:587:11 | in : MultiValueMap [, ] : Object | Test.java:587:10:587:26 | getFirst(...) : Object | provenance | MaD:70 | +| Test.java:586:51:586:67 | of(...) : List [] : Object | Test.java:586:38:586:68 | of(...) : Map [, ] : Object | provenance | MaD:8 | +| Test.java:586:59:586:66 | source(...) : Object | Test.java:586:51:586:67 | of(...) : List [] : Object | provenance | MaD:6 | +| Test.java:587:10:587:11 | in : MultiValueMap [, ] : Object | Test.java:587:10:587:26 | getFirst(...) : Object | provenance | MaD:68 | | Test.java:587:10:587:26 | getFirst(...) : Object | Test.java:588:9:588:11 | out | provenance | | | Test.java:593:23:593:68 | (...)... : MultiValueMap [, ] : Object | Test.java:594:10:594:11 | in : MultiValueMap [, ] : Object | provenance | | | Test.java:593:38:593:68 | of(...) : Map [, ] : Object | Test.java:593:23:593:68 | (...)... : MultiValueMap [, ] : Object | provenance | | -| Test.java:593:51:593:67 | of(...) : List [] : Object | Test.java:593:38:593:68 | of(...) : Map [, ] : Object | provenance | MaD:10 | -| Test.java:593:59:593:66 | source(...) : Object | Test.java:593:51:593:67 | of(...) : List [] : Object | provenance | MaD:8 | -| Test.java:594:10:594:11 | in : MultiValueMap [, ] : Object | Test.java:594:10:594:34 | getFirst(...) : Object | provenance | MaD:70 | +| Test.java:593:51:593:67 | of(...) : List [] : Object | Test.java:593:38:593:68 | of(...) : Map [, ] : Object | provenance | MaD:8 | +| Test.java:593:59:593:66 | source(...) : Object | Test.java:593:51:593:67 | of(...) : List [] : Object | provenance | MaD:6 | +| Test.java:594:10:594:11 | in : MultiValueMap [, ] : Object | Test.java:594:10:594:34 | getFirst(...) : Object | provenance | MaD:68 | | Test.java:594:10:594:34 | getFirst(...) : Object | Test.java:595:9:595:11 | out | provenance | | | Test.java:600:16:600:23 | source(...) : Object | Test.java:601:12:601:13 | in : Object | provenance | | | Test.java:601:4:601:6 | out [post update] : MultiValueMapAdapter [] : Object | Test.java:602:19:602:21 | out : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:601:12:601:13 | in : Object | Test.java:601:4:601:6 | out [post update] : MultiValueMapAdapter [] : Object | provenance | MaD:71 | +| Test.java:601:12:601:13 | in : Object | Test.java:601:4:601:6 | out [post update] : MultiValueMapAdapter [] : Object | provenance | MaD:69 | | Test.java:602:19:602:21 | out : MultiValueMapAdapter [] : Object | Test.java:51:21:51:39 | container : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:602:19:602:21 | out : MultiValueMapAdapter [] : Object | Test.java:602:9:602:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:602:19:602:21 | out : MultiValueMapAdapter [] : Object | Test.java:602:9:602:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:607:16:607:23 | source(...) : Object | Test.java:608:12:608:13 | in : Object | provenance | | | Test.java:608:4:608:6 | out [post update] : MultiValueMap [] : Object | Test.java:609:19:609:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:608:12:608:13 | in : Object | Test.java:608:4:608:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:71 | +| Test.java:608:12:608:13 | in : Object | Test.java:608:4:608:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:69 | | Test.java:609:19:609:21 | out : MultiValueMap [] : Object | Test.java:51:21:51:39 | container : MultiValueMap [] : Object | provenance | | -| Test.java:609:19:609:21 | out : MultiValueMap [] : Object | Test.java:609:9:609:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:609:19:609:21 | out : MultiValueMap [] : Object | Test.java:609:9:609:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:614:16:614:23 | source(...) : Object | Test.java:615:18:615:19 | in : Object | provenance | | | Test.java:615:4:615:6 | out [post update] : MultiValueMapAdapter [, ] : Object | Test.java:616:32:616:34 | out : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:615:18:615:19 | in : Object | Test.java:615:4:615:6 | out [post update] : MultiValueMapAdapter [, ] : Object | provenance | MaD:72 | +| Test.java:615:18:615:19 | in : Object | Test.java:615:4:615:6 | out [post update] : MultiValueMapAdapter [, ] : Object | provenance | MaD:70 | | Test.java:616:20:616:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:616:20:616:35 | getMapValue(...) : List [] : Object | Test.java:616:9:616:36 | getElement(...) | provenance | MaD:3 | +| Test.java:616:20:616:35 | getMapValue(...) : List [] : Object | Test.java:616:9:616:36 | getElement(...) | provenance | MaD:1 | | Test.java:616:32:616:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:616:32:616:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:616:20:616:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:616:32:616:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:616:20:616:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:621:16:621:23 | source(...) : Object | Test.java:622:18:622:19 | in : Object | provenance | | | Test.java:622:4:622:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:623:32:623:34 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:622:18:622:19 | in : Object | Test.java:622:4:622:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:72 | +| Test.java:622:18:622:19 | in : Object | Test.java:622:4:622:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:70 | | Test.java:623:20:623:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:623:20:623:35 | getMapValue(...) : List [] : Object | Test.java:623:9:623:36 | getElement(...) | provenance | MaD:3 | +| Test.java:623:20:623:35 | getMapValue(...) : List [] : Object | Test.java:623:9:623:36 | getElement(...) | provenance | MaD:1 | | Test.java:623:32:623:34 | out : MultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMap [, ] : Object | provenance | | -| Test.java:623:32:623:34 | out : MultiValueMap [, ] : Object | Test.java:623:20:623:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:623:32:623:34 | out : MultiValueMap [, ] : Object | Test.java:623:20:623:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:628:16:628:23 | source(...) : Object | Test.java:629:26:629:27 | in : Object | provenance | | | Test.java:629:4:629:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:630:32:630:34 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:629:26:629:27 | in : Object | Test.java:629:4:629:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:72 | +| Test.java:629:26:629:27 | in : Object | Test.java:629:4:629:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:70 | | Test.java:630:20:630:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:630:20:630:35 | getMapValue(...) : List [] : Object | Test.java:630:9:630:36 | getElement(...) | provenance | MaD:3 | +| Test.java:630:20:630:35 | getMapValue(...) : List [] : Object | Test.java:630:9:630:36 | getElement(...) | provenance | MaD:1 | | Test.java:630:32:630:34 | out : MultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMap [, ] : Object | provenance | | -| Test.java:630:32:630:34 | out : MultiValueMap [, ] : Object | Test.java:630:20:630:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:630:32:630:34 | out : MultiValueMap [, ] : Object | Test.java:630:20:630:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:635:13:635:34 | of(...) : Map [] : Object | Test.java:636:15:636:16 | in : Map [] : Object | provenance | | -| Test.java:635:20:635:27 | source(...) : Object | Test.java:635:13:635:34 | of(...) : Map [] : Object | provenance | MaD:9 | +| Test.java:635:20:635:27 | source(...) : Object | Test.java:635:13:635:34 | of(...) : Map [] : Object | provenance | MaD:7 | | Test.java:636:4:636:6 | out [post update] : MultiValueMapAdapter [] : Object | Test.java:637:19:637:21 | out : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:636:15:636:16 | in : Map [] : Object | Test.java:636:4:636:6 | out [post update] : MultiValueMapAdapter [] : Object | provenance | MaD:73 | +| Test.java:636:15:636:16 | in : Map [] : Object | Test.java:636:4:636:6 | out [post update] : MultiValueMapAdapter [] : Object | provenance | MaD:71 | | Test.java:637:19:637:21 | out : MultiValueMapAdapter [] : Object | Test.java:51:21:51:39 | container : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:637:19:637:21 | out : MultiValueMapAdapter [] : Object | Test.java:637:9:637:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:637:19:637:21 | out : MultiValueMapAdapter [] : Object | Test.java:637:9:637:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:642:13:642:34 | of(...) : Map [] : Object | Test.java:643:15:643:16 | in : Map [] : Object | provenance | | -| Test.java:642:20:642:27 | source(...) : Object | Test.java:642:13:642:34 | of(...) : Map [] : Object | provenance | MaD:9 | +| Test.java:642:20:642:27 | source(...) : Object | Test.java:642:13:642:34 | of(...) : Map [] : Object | provenance | MaD:7 | | Test.java:643:4:643:6 | out [post update] : MultiValueMap [] : Object | Test.java:644:19:644:21 | out : MultiValueMap [] : Object | provenance | | -| Test.java:643:15:643:16 | in : Map [] : Object | Test.java:643:4:643:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:73 | +| Test.java:643:15:643:16 | in : Map [] : Object | Test.java:643:4:643:6 | out [post update] : MultiValueMap [] : Object | provenance | MaD:71 | | Test.java:644:19:644:21 | out : MultiValueMap [] : Object | Test.java:51:21:51:39 | container : MultiValueMap [] : Object | provenance | | -| Test.java:644:19:644:21 | out : MultiValueMap [] : Object | Test.java:644:9:644:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:644:19:644:21 | out : MultiValueMap [] : Object | Test.java:644:9:644:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:649:13:649:34 | of(...) : Map [] : Object | Test.java:650:15:650:16 | in : Map [] : Object | provenance | | -| Test.java:649:26:649:33 | source(...) : Object | Test.java:649:13:649:34 | of(...) : Map [] : Object | provenance | MaD:10 | +| Test.java:649:26:649:33 | source(...) : Object | Test.java:649:13:649:34 | of(...) : Map [] : Object | provenance | MaD:8 | | Test.java:650:4:650:6 | out [post update] : MultiValueMapAdapter [, ] : Object | Test.java:651:32:651:34 | out : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:650:15:650:16 | in : Map [] : Object | Test.java:650:4:650:6 | out [post update] : MultiValueMapAdapter [, ] : Object | provenance | MaD:74 | +| Test.java:650:15:650:16 | in : Map [] : Object | Test.java:650:4:650:6 | out [post update] : MultiValueMapAdapter [, ] : Object | provenance | MaD:72 | | Test.java:651:20:651:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:651:20:651:35 | getMapValue(...) : List [] : Object | Test.java:651:9:651:36 | getElement(...) | provenance | MaD:3 | +| Test.java:651:20:651:35 | getMapValue(...) : List [] : Object | Test.java:651:9:651:36 | getElement(...) | provenance | MaD:1 | | Test.java:651:32:651:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:651:32:651:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:651:20:651:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:651:32:651:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:651:20:651:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:656:13:656:34 | of(...) : Map [] : Object | Test.java:657:15:657:16 | in : Map [] : Object | provenance | | -| Test.java:656:26:656:33 | source(...) : Object | Test.java:656:13:656:34 | of(...) : Map [] : Object | provenance | MaD:10 | +| Test.java:656:26:656:33 | source(...) : Object | Test.java:656:13:656:34 | of(...) : Map [] : Object | provenance | MaD:8 | | Test.java:657:4:657:6 | out [post update] : MultiValueMap [, ] : Object | Test.java:658:32:658:34 | out : MultiValueMap [, ] : Object | provenance | | -| Test.java:657:15:657:16 | in : Map [] : Object | Test.java:657:4:657:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:74 | +| Test.java:657:15:657:16 | in : Map [] : Object | Test.java:657:4:657:6 | out [post update] : MultiValueMap [, ] : Object | provenance | MaD:72 | | Test.java:658:20:658:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:658:20:658:35 | getMapValue(...) : List [] : Object | Test.java:658:9:658:36 | getElement(...) | provenance | MaD:3 | +| Test.java:658:20:658:35 | getMapValue(...) : List [] : Object | Test.java:658:9:658:36 | getElement(...) | provenance | MaD:1 | | Test.java:658:32:658:34 | out : MultiValueMap [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMap [, ] : Object | provenance | | -| Test.java:658:32:658:34 | out : MultiValueMap [, ] : Object | Test.java:658:20:658:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:658:32:658:34 | out : MultiValueMap [, ] : Object | Test.java:658:20:658:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:663:30:663:86 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [, ] : Object | Test.java:664:10:664:11 | in : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:663:55:663:85 | of(...) : Map [, ] : Object | Test.java:663:30:663:86 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [, ] : Object | provenance | MaD:78 | -| Test.java:663:68:663:84 | of(...) : List [] : Object | Test.java:663:55:663:85 | of(...) : Map [, ] : Object | provenance | MaD:10 | -| Test.java:663:76:663:83 | source(...) : Object | Test.java:663:68:663:84 | of(...) : List [] : Object | provenance | MaD:8 | -| Test.java:664:10:664:11 | in : MultiValueMapAdapter [, ] : Object | Test.java:664:10:664:30 | toSingleValueMap(...) : Map [] : Object | provenance | MaD:76 | +| Test.java:663:55:663:85 | of(...) : Map [, ] : Object | Test.java:663:30:663:86 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [, ] : Object | provenance | MaD:76 | +| Test.java:663:68:663:84 | of(...) : List [] : Object | Test.java:663:55:663:85 | of(...) : Map [, ] : Object | provenance | MaD:8 | +| Test.java:663:76:663:83 | source(...) : Object | Test.java:663:68:663:84 | of(...) : List [] : Object | provenance | MaD:6 | +| Test.java:664:10:664:11 | in : MultiValueMapAdapter [, ] : Object | Test.java:664:10:664:30 | toSingleValueMap(...) : Map [] : Object | provenance | MaD:74 | | Test.java:664:10:664:30 | toSingleValueMap(...) : Map [] : Object | Test.java:665:21:665:23 | out : Map [] : Object | provenance | | | Test.java:665:21:665:23 | out : Map [] : Object | Test.java:52:23:52:41 | container : Map [] : Object | provenance | | -| Test.java:665:21:665:23 | out : Map [] : Object | Test.java:665:9:665:24 | getMapValue(...) | provenance | MaD:11 | +| Test.java:665:21:665:23 | out : Map [] : Object | Test.java:665:9:665:24 | getMapValue(...) | provenance | MaD:9 | | Test.java:670:23:670:68 | (...)... : MultiValueMap [, ] : Object | Test.java:671:10:671:11 | in : MultiValueMap [, ] : Object | provenance | | | Test.java:670:38:670:68 | of(...) : Map [, ] : Object | Test.java:670:23:670:68 | (...)... : MultiValueMap [, ] : Object | provenance | | -| Test.java:670:51:670:67 | of(...) : List [] : Object | Test.java:670:38:670:68 | of(...) : Map [, ] : Object | provenance | MaD:10 | -| Test.java:670:59:670:66 | source(...) : Object | Test.java:670:51:670:67 | of(...) : List [] : Object | provenance | MaD:8 | -| Test.java:671:10:671:11 | in : MultiValueMap [, ] : Object | Test.java:671:10:671:30 | toSingleValueMap(...) : Map [] : Object | provenance | MaD:76 | +| Test.java:670:51:670:67 | of(...) : List [] : Object | Test.java:670:38:670:68 | of(...) : Map [, ] : Object | provenance | MaD:8 | +| Test.java:670:59:670:66 | source(...) : Object | Test.java:670:51:670:67 | of(...) : List [] : Object | provenance | MaD:6 | +| Test.java:671:10:671:11 | in : MultiValueMap [, ] : Object | Test.java:671:10:671:30 | toSingleValueMap(...) : Map [] : Object | provenance | MaD:74 | | Test.java:671:10:671:30 | toSingleValueMap(...) : Map [] : Object | Test.java:672:21:672:23 | out : Map [] : Object | provenance | | | Test.java:672:21:672:23 | out : Map [] : Object | Test.java:52:23:52:41 | container : Map [] : Object | provenance | | -| Test.java:672:21:672:23 | out : Map [] : Object | Test.java:672:9:672:24 | getMapValue(...) | provenance | MaD:11 | +| Test.java:672:21:672:23 | out : Map [] : Object | Test.java:672:9:672:24 | getMapValue(...) | provenance | MaD:9 | | Test.java:677:30:677:77 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [] : Object | Test.java:678:10:678:11 | in : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:677:55:677:76 | of(...) : Map [] : Object | Test.java:677:30:677:77 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [] : Object | provenance | MaD:77 | -| Test.java:677:62:677:69 | source(...) : Object | Test.java:677:55:677:76 | of(...) : Map [] : Object | provenance | MaD:9 | -| Test.java:678:10:678:11 | in : MultiValueMapAdapter [] : Object | Test.java:678:10:678:30 | toSingleValueMap(...) : Map [] : Object | provenance | MaD:75 | +| Test.java:677:55:677:76 | of(...) : Map [] : Object | Test.java:677:30:677:77 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [] : Object | provenance | MaD:75 | +| Test.java:677:62:677:69 | source(...) : Object | Test.java:677:55:677:76 | of(...) : Map [] : Object | provenance | MaD:7 | +| Test.java:678:10:678:11 | in : MultiValueMapAdapter [] : Object | Test.java:678:10:678:30 | toSingleValueMap(...) : Map [] : Object | provenance | MaD:73 | | Test.java:678:10:678:30 | toSingleValueMap(...) : Map [] : Object | Test.java:679:19:679:21 | out : Map [] : Object | provenance | | | Test.java:679:19:679:21 | out : Map [] : Object | Test.java:51:21:51:39 | container : Map [] : Object | provenance | | -| Test.java:679:19:679:21 | out : Map [] : Object | Test.java:679:9:679:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:679:19:679:21 | out : Map [] : Object | Test.java:679:9:679:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:684:23:684:70 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [] : Object | Test.java:685:10:685:11 | in : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:684:48:684:69 | of(...) : Map [] : Object | Test.java:684:23:684:70 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [] : Object | provenance | MaD:77 | -| Test.java:684:55:684:62 | source(...) : Object | Test.java:684:48:684:69 | of(...) : Map [] : Object | provenance | MaD:9 | -| Test.java:685:10:685:11 | in : MultiValueMapAdapter [] : Object | Test.java:685:10:685:30 | toSingleValueMap(...) : Map [] : Object | provenance | MaD:75 | +| Test.java:684:48:684:69 | of(...) : Map [] : Object | Test.java:684:23:684:70 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [] : Object | provenance | MaD:75 | +| Test.java:684:55:684:62 | source(...) : Object | Test.java:684:48:684:69 | of(...) : Map [] : Object | provenance | MaD:7 | +| Test.java:685:10:685:11 | in : MultiValueMapAdapter [] : Object | Test.java:685:10:685:30 | toSingleValueMap(...) : Map [] : Object | provenance | MaD:73 | | Test.java:685:10:685:30 | toSingleValueMap(...) : Map [] : Object | Test.java:686:19:686:21 | out : Map [] : Object | provenance | | | Test.java:686:19:686:21 | out : Map [] : Object | Test.java:51:21:51:39 | container : Map [] : Object | provenance | | -| Test.java:686:19:686:21 | out : Map [] : Object | Test.java:686:9:686:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:686:19:686:21 | out : Map [] : Object | Test.java:686:9:686:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:691:13:691:43 | of(...) : Map [, ] : Object | Test.java:692:35:692:36 | in : Map [, ] : Object | provenance | | -| Test.java:691:26:691:42 | of(...) : List [] : Object | Test.java:691:13:691:43 | of(...) : Map [, ] : Object | provenance | MaD:10 | -| Test.java:691:34:691:41 | source(...) : Object | Test.java:691:26:691:42 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:691:26:691:42 | of(...) : List [] : Object | Test.java:691:13:691:43 | of(...) : Map [, ] : Object | provenance | MaD:8 | +| Test.java:691:34:691:41 | source(...) : Object | Test.java:691:26:691:42 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:692:10:692:37 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [, ] : Object | Test.java:693:32:693:34 | out : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:692:35:692:36 | in : Map [, ] : Object | Test.java:692:10:692:37 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [, ] : Object | provenance | MaD:78 | +| Test.java:692:35:692:36 | in : Map [, ] : Object | Test.java:692:10:692:37 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [, ] : Object | provenance | MaD:76 | | Test.java:693:20:693:35 | getMapValue(...) : List [] : Object | Test.java:49:19:49:41 | container : List [] : Object | provenance | | -| Test.java:693:20:693:35 | getMapValue(...) : List [] : Object | Test.java:693:9:693:36 | getElement(...) | provenance | MaD:3 | +| Test.java:693:20:693:35 | getMapValue(...) : List [] : Object | Test.java:693:9:693:36 | getElement(...) | provenance | MaD:1 | | Test.java:693:32:693:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:52:23:52:41 | container : MultiValueMapAdapter [, ] : Object | provenance | | -| Test.java:693:32:693:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:693:20:693:35 | getMapValue(...) : List [] : Object | provenance | MaD:11 | +| Test.java:693:32:693:34 | out : MultiValueMapAdapter [, ] : Object | Test.java:693:20:693:35 | getMapValue(...) : List [] : Object | provenance | MaD:9 | | Test.java:698:13:698:34 | of(...) : Map [] : Object | Test.java:699:35:699:36 | in : Map [] : Object | provenance | | -| Test.java:698:20:698:27 | source(...) : Object | Test.java:698:13:698:34 | of(...) : Map [] : Object | provenance | MaD:9 | +| Test.java:698:20:698:27 | source(...) : Object | Test.java:698:13:698:34 | of(...) : Map [] : Object | provenance | MaD:7 | | Test.java:699:10:699:37 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [] : Object | Test.java:700:19:700:21 | out : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:699:35:699:36 | in : Map [] : Object | Test.java:699:10:699:37 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [] : Object | provenance | MaD:77 | +| Test.java:699:35:699:36 | in : Map [] : Object | Test.java:699:10:699:37 | new MultiValueMapAdapter<>(...) : MultiValueMapAdapter [] : Object | provenance | MaD:75 | | Test.java:700:19:700:21 | out : MultiValueMapAdapter [] : Object | Test.java:51:21:51:39 | container : MultiValueMapAdapter [] : Object | provenance | | -| Test.java:700:19:700:21 | out : MultiValueMapAdapter [] : Object | Test.java:700:9:700:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:700:19:700:21 | out : MultiValueMapAdapter [] : Object | Test.java:700:9:700:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:705:18:705:46 | newWithArrayElement(...) : Object[] [[]] : Object | Test.java:706:36:706:37 | in : Object[] [[]] : Object | provenance | | | Test.java:705:38:705:45 | source(...) : Object | Test.java:53:31:53:44 | element : Object | provenance | | | Test.java:705:38:705:45 | source(...) : Object | Test.java:705:18:705:46 | newWithArrayElement(...) : Object[] [[]] : Object | provenance | | | Test.java:706:10:706:38 | toObjectArray(...) : Object[] [[]] : Object | Test.java:707:25:707:27 | out : Object[] [[]] : Object | provenance | | -| Test.java:706:36:706:37 | in : Object[] [[]] : Object | Test.java:706:10:706:38 | toObjectArray(...) : Object[] [[]] : Object | provenance | MaD:79 | +| Test.java:706:36:706:37 | in : Object[] [[]] : Object | Test.java:706:10:706:38 | toObjectArray(...) : Object[] [[]] : Object | provenance | MaD:77 | | Test.java:707:25:707:27 | out : Object[] [[]] : Object | Test.java:48:24:48:36 | container : Object[] [[]] : Object | provenance | | | Test.java:707:25:707:27 | out : Object[] [[]] : Object | Test.java:707:9:707:28 | getArrayElement(...) | provenance | | | Test.java:712:16:712:36 | of(...) : Optional [] : Object | Test.java:713:37:713:38 | in : Optional [] : Object | provenance | | -| Test.java:712:28:712:35 | source(...) : Object | Test.java:712:16:712:36 | of(...) : Optional [] : Object | provenance | MaD:15 | +| Test.java:712:28:712:35 | source(...) : Object | Test.java:712:16:712:36 | of(...) : Optional [] : Object | provenance | MaD:13 | | Test.java:713:10:713:39 | unwrapOptional(...) : Object | Test.java:714:9:714:11 | out | provenance | | -| Test.java:713:37:713:38 | in : Optional [] : Object | Test.java:713:10:713:39 | unwrapOptional(...) : Object | provenance | MaD:80 | +| Test.java:713:37:713:38 | in : Optional [] : Object | Test.java:713:10:713:39 | unwrapOptional(...) : Object | provenance | MaD:78 | | Test.java:719:16:719:31 | (...)... : Reader | Test.java:721:23:721:24 | in : Reader | provenance | | | Test.java:719:24:719:31 | source(...) : Object | Test.java:719:16:719:31 | (...)... : Reader | provenance | | | Test.java:721:18:721:20 | out [post update] : Properties | Test.java:722:9:722:11 | out | provenance | | -| Test.java:721:23:721:24 | in : Reader | Test.java:721:18:721:20 | out [post update] : Properties | provenance | MaD:81 | +| Test.java:721:23:721:24 | in : Reader | Test.java:721:18:721:20 | out [post update] : Properties | provenance | MaD:79 | | Test.java:727:21:727:41 | (...)... : InputStream | Test.java:729:23:729:24 | in : InputStream | provenance | | | Test.java:727:34:727:41 | source(...) : Object | Test.java:727:21:727:41 | (...)... : InputStream | provenance | | | Test.java:729:18:729:20 | out [post update] : Properties | Test.java:730:9:730:11 | out | provenance | | -| Test.java:729:23:729:24 | in : InputStream | Test.java:729:18:729:20 | out [post update] : Properties | provenance | MaD:81 | +| Test.java:729:23:729:24 | in : InputStream | Test.java:729:18:729:20 | out [post update] : Properties | provenance | MaD:79 | | Test.java:735:21:735:41 | (...)... : InputStream | Test.java:737:30:737:31 | in : InputStream | provenance | | | Test.java:735:34:735:41 | source(...) : Object | Test.java:735:21:735:41 | (...)... : InputStream | provenance | | | Test.java:737:25:737:27 | out [post update] : Properties | Test.java:738:9:738:11 | out | provenance | | -| Test.java:737:30:737:31 | in : InputStream | Test.java:737:25:737:27 | out [post update] : Properties | provenance | MaD:82 | +| Test.java:737:30:737:31 | in : InputStream | Test.java:737:25:737:27 | out [post update] : Properties | provenance | MaD:80 | | Test.java:743:20:743:39 | (...)... : Properties | Test.java:745:19:745:20 | in : Properties | provenance | | | Test.java:743:32:743:39 | source(...) : Object | Test.java:743:20:743:39 | (...)... : Properties | provenance | | -| Test.java:745:19:745:20 | in : Properties | Test.java:745:23:745:25 | out [post update] : Writer | provenance | MaD:83 | +| Test.java:745:19:745:20 | in : Properties | Test.java:745:23:745:25 | out [post update] : Writer | provenance | MaD:81 | | Test.java:745:23:745:25 | out [post update] : Writer | Test.java:746:9:746:11 | out | provenance | | | Test.java:751:20:751:39 | (...)... : Properties | Test.java:753:19:753:20 | in : Properties | provenance | | | Test.java:751:32:751:39 | source(...) : Object | Test.java:751:20:751:39 | (...)... : Properties | provenance | | -| Test.java:753:19:753:20 | in : Properties | Test.java:753:23:753:25 | out [post update] : OutputStream | provenance | MaD:83 | +| Test.java:753:19:753:20 | in : Properties | Test.java:753:23:753:25 | out [post update] : OutputStream | provenance | MaD:81 | | Test.java:753:23:753:25 | out [post update] : OutputStream | Test.java:754:9:754:11 | out | provenance | | | Test.java:759:16:759:31 | (...)... : String | Test.java:761:42:761:43 | in : String | provenance | | | Test.java:759:24:759:31 | source(...) : Object | Test.java:759:16:759:31 | (...)... : String | provenance | | | Test.java:761:37:761:39 | out [post update] : Writer | Test.java:762:9:762:11 | out | provenance | | -| Test.java:761:42:761:43 | in : String | Test.java:761:37:761:39 | out [post update] : Writer | provenance | MaD:84 | +| Test.java:761:42:761:43 | in : String | Test.java:761:37:761:39 | out [post update] : Writer | provenance | MaD:82 | | Test.java:767:16:767:31 | (...)... : String | Test.java:769:42:769:43 | in : String | provenance | | | Test.java:767:24:767:31 | source(...) : Object | Test.java:767:16:767:31 | (...)... : String | provenance | | | Test.java:769:37:769:39 | out [post update] : OutputStream | Test.java:770:9:770:11 | out | provenance | | -| Test.java:769:42:769:43 | in : String | Test.java:769:37:769:39 | out [post update] : OutputStream | provenance | MaD:84 | +| Test.java:769:42:769:43 | in : String | Test.java:769:37:769:39 | out [post update] : OutputStream | provenance | MaD:82 | | Test.java:775:20:775:39 | (...)... : Properties | Test.java:777:24:777:25 | in : Properties | provenance | | | Test.java:775:32:775:39 | source(...) : Object | Test.java:775:20:775:39 | (...)... : Properties | provenance | | -| Test.java:777:24:777:25 | in : Properties | Test.java:777:28:777:30 | out [post update] : OutputStream | provenance | MaD:85 | +| Test.java:777:24:777:25 | in : Properties | Test.java:777:28:777:30 | out [post update] : OutputStream | provenance | MaD:83 | | Test.java:777:28:777:30 | out [post update] : OutputStream | Test.java:778:9:778:11 | out | provenance | | | Test.java:783:20:783:39 | (...)... : Properties | Test.java:785:24:785:25 | in : Properties | provenance | | | Test.java:783:32:783:39 | source(...) : Object | Test.java:783:20:783:39 | (...)... : Properties | provenance | | -| Test.java:785:24:785:25 | in : Properties | Test.java:785:28:785:30 | out [post update] : OutputStream | provenance | MaD:85 | +| Test.java:785:24:785:25 | in : Properties | Test.java:785:28:785:30 | out [post update] : OutputStream | provenance | MaD:83 | | Test.java:785:28:785:30 | out [post update] : OutputStream | Test.java:786:9:786:11 | out | provenance | | | Test.java:791:16:791:31 | (...)... : String | Test.java:793:35:793:36 | in : String | provenance | | | Test.java:791:24:791:31 | source(...) : Object | Test.java:791:16:791:31 | (...)... : String | provenance | | | Test.java:793:30:793:32 | out [post update] : OutputStream | Test.java:794:9:794:11 | out | provenance | | -| Test.java:793:35:793:36 | in : String | Test.java:793:30:793:32 | out [post update] : OutputStream | provenance | MaD:86 | +| Test.java:793:35:793:36 | in : String | Test.java:793:30:793:32 | out [post update] : OutputStream | provenance | MaD:84 | | Test.java:799:16:799:31 | (...)... : String | Test.java:801:35:801:36 | in : String | provenance | | | Test.java:799:24:799:31 | source(...) : Object | Test.java:799:16:799:31 | (...)... : String | provenance | | | Test.java:801:30:801:32 | out [post update] : OutputStream | Test.java:802:9:802:11 | out | provenance | | -| Test.java:801:35:801:36 | in : String | Test.java:801:30:801:32 | out [post update] : OutputStream | provenance | MaD:86 | +| Test.java:801:35:801:36 | in : String | Test.java:801:30:801:32 | out [post update] : OutputStream | provenance | MaD:84 | | Test.java:807:16:807:31 | (...)... : String | Test.java:808:46:808:47 | in : String | provenance | | | Test.java:807:24:807:31 | source(...) : Object | Test.java:807:16:807:31 | (...)... : String | provenance | | | Test.java:808:10:808:61 | new PropertyPlaceholderHelper(...) : PropertyPlaceholderHelper | Test.java:809:9:809:11 | out | provenance | | -| Test.java:808:46:808:47 | in : String | Test.java:808:10:808:61 | new PropertyPlaceholderHelper(...) : PropertyPlaceholderHelper | provenance | MaD:87 | +| Test.java:808:46:808:47 | in : String | Test.java:808:10:808:61 | new PropertyPlaceholderHelper(...) : PropertyPlaceholderHelper | provenance | MaD:85 | | Test.java:814:16:814:31 | (...)... : String | Test.java:815:46:815:47 | in : String | provenance | | | Test.java:814:24:814:31 | source(...) : Object | Test.java:814:16:814:31 | (...)... : String | provenance | | | Test.java:815:10:815:48 | new PropertyPlaceholderHelper(...) : PropertyPlaceholderHelper | Test.java:816:9:816:11 | out | provenance | | -| Test.java:815:46:815:47 | in : String | Test.java:815:10:815:48 | new PropertyPlaceholderHelper(...) : PropertyPlaceholderHelper | provenance | MaD:87 | +| Test.java:815:46:815:47 | in : String | Test.java:815:10:815:48 | new PropertyPlaceholderHelper(...) : PropertyPlaceholderHelper | provenance | MaD:85 | | Test.java:821:16:821:31 | (...)... : String | Test.java:822:40:822:41 | in : String | provenance | | | Test.java:821:24:821:31 | source(...) : Object | Test.java:821:16:821:31 | (...)... : String | provenance | | | Test.java:822:10:822:61 | new PropertyPlaceholderHelper(...) : PropertyPlaceholderHelper | Test.java:823:9:823:11 | out | provenance | | -| Test.java:822:40:822:41 | in : String | Test.java:822:10:822:61 | new PropertyPlaceholderHelper(...) : PropertyPlaceholderHelper | provenance | MaD:87 | +| Test.java:822:40:822:41 | in : String | Test.java:822:10:822:61 | new PropertyPlaceholderHelper(...) : PropertyPlaceholderHelper | provenance | MaD:85 | | Test.java:828:16:828:31 | (...)... : String | Test.java:829:40:829:41 | in : String | provenance | | | Test.java:828:24:828:31 | source(...) : Object | Test.java:828:16:828:31 | (...)... : String | provenance | | | Test.java:829:10:829:48 | new PropertyPlaceholderHelper(...) : PropertyPlaceholderHelper | Test.java:830:9:830:11 | out | provenance | | -| Test.java:829:40:829:41 | in : String | Test.java:829:10:829:48 | new PropertyPlaceholderHelper(...) : PropertyPlaceholderHelper | provenance | MaD:87 | +| Test.java:829:40:829:41 | in : String | Test.java:829:10:829:48 | new PropertyPlaceholderHelper(...) : PropertyPlaceholderHelper | provenance | MaD:85 | | Test.java:835:16:835:31 | (...)... : String | Test.java:837:39:837:40 | in : String | provenance | | | Test.java:835:24:835:31 | source(...) : Object | Test.java:835:16:835:31 | (...)... : String | provenance | | | Test.java:837:10:837:94 | replacePlaceholders(...) : String | Test.java:838:9:838:11 | out | provenance | | -| Test.java:837:39:837:40 | in : String | Test.java:837:10:837:94 | replacePlaceholders(...) : String | provenance | MaD:88 | +| Test.java:837:39:837:40 | in : String | Test.java:837:10:837:94 | replacePlaceholders(...) : String | provenance | MaD:86 | | Test.java:843:16:843:31 | (...)... : String | Test.java:845:39:845:40 | in : String | provenance | | | Test.java:843:24:843:31 | source(...) : Object | Test.java:843:16:843:31 | (...)... : String | provenance | | | Test.java:845:10:845:59 | replacePlaceholders(...) : String | Test.java:846:9:846:11 | out | provenance | | -| Test.java:845:39:845:40 | in : String | Test.java:845:10:845:59 | replacePlaceholders(...) : String | provenance | MaD:88 | +| Test.java:845:39:845:40 | in : String | Test.java:845:10:845:59 | replacePlaceholders(...) : String | provenance | MaD:86 | | Test.java:851:13:851:25 | (...)... : URL | Test.java:852:42:852:43 | in : URL | provenance | | | Test.java:851:18:851:25 | source(...) : Object | Test.java:851:13:851:25 | (...)... : URL | provenance | | | Test.java:852:10:852:44 | extractArchiveURL(...) : URL | Test.java:853:9:853:11 | out | provenance | | -| Test.java:852:42:852:43 | in : URL | Test.java:852:10:852:44 | extractArchiveURL(...) : URL | provenance | MaD:89 | +| Test.java:852:42:852:43 | in : URL | Test.java:852:10:852:44 | extractArchiveURL(...) : URL | provenance | MaD:87 | | Test.java:858:13:858:25 | (...)... : URL | Test.java:859:42:859:43 | in : URL | provenance | | | Test.java:858:18:858:25 | source(...) : Object | Test.java:858:13:858:25 | (...)... : URL | provenance | | | Test.java:859:10:859:44 | extractJarFileURL(...) : URL | Test.java:860:9:860:11 | out | provenance | | -| Test.java:859:42:859:43 | in : URL | Test.java:859:10:859:44 | extractJarFileURL(...) : URL | provenance | MaD:90 | +| Test.java:859:42:859:43 | in : URL | Test.java:859:10:859:44 | extractJarFileURL(...) : URL | provenance | MaD:88 | | Test.java:865:13:865:25 | (...)... : URL | Test.java:866:32:866:33 | in : URL | provenance | | | Test.java:865:18:865:25 | source(...) : Object | Test.java:865:13:865:25 | (...)... : URL | provenance | | | Test.java:866:10:866:48 | getFile(...) : File | Test.java:867:9:867:11 | out | provenance | | -| Test.java:866:32:866:33 | in : URL | Test.java:866:10:866:48 | getFile(...) : File | provenance | MaD:91 | +| Test.java:866:32:866:33 | in : URL | Test.java:866:10:866:48 | getFile(...) : File | provenance | MaD:89 | | Test.java:872:13:872:25 | (...)... : URL | Test.java:873:32:873:33 | in : URL | provenance | | | Test.java:872:18:872:25 | source(...) : Object | Test.java:872:13:872:25 | (...)... : URL | provenance | | | Test.java:873:10:873:34 | getFile(...) : File | Test.java:874:9:874:11 | out | provenance | | -| Test.java:873:32:873:33 | in : URL | Test.java:873:10:873:34 | getFile(...) : File | provenance | MaD:91 | +| Test.java:873:32:873:33 | in : URL | Test.java:873:10:873:34 | getFile(...) : File | provenance | MaD:89 | | Test.java:879:13:879:25 | (...)... : URI | Test.java:880:32:880:33 | in : URI | provenance | | | Test.java:879:18:879:25 | source(...) : Object | Test.java:879:13:879:25 | (...)... : URI | provenance | | | Test.java:880:10:880:48 | getFile(...) : File | Test.java:881:9:881:11 | out | provenance | | -| Test.java:880:32:880:33 | in : URI | Test.java:880:10:880:48 | getFile(...) : File | provenance | MaD:91 | +| Test.java:880:32:880:33 | in : URI | Test.java:880:10:880:48 | getFile(...) : File | provenance | MaD:89 | | Test.java:886:13:886:25 | (...)... : URI | Test.java:887:32:887:33 | in : URI | provenance | | | Test.java:886:18:886:25 | source(...) : Object | Test.java:886:13:886:25 | (...)... : URI | provenance | | | Test.java:887:10:887:34 | getFile(...) : File | Test.java:888:9:888:11 | out | provenance | | -| Test.java:887:32:887:33 | in : URI | Test.java:887:10:887:34 | getFile(...) : File | provenance | MaD:91 | +| Test.java:887:32:887:33 | in : URI | Test.java:887:10:887:34 | getFile(...) : File | provenance | MaD:89 | | Test.java:893:16:893:31 | (...)... : String | Test.java:894:32:894:33 | in : String | provenance | | | Test.java:893:24:893:31 | source(...) : Object | Test.java:893:16:893:31 | (...)... : String | provenance | | | Test.java:894:10:894:34 | getFile(...) : File | Test.java:895:9:895:11 | out | provenance | | -| Test.java:894:32:894:33 | in : String | Test.java:894:10:894:34 | getFile(...) : File | provenance | MaD:91 | +| Test.java:894:32:894:33 | in : String | Test.java:894:10:894:34 | getFile(...) : File | provenance | MaD:89 | | Test.java:900:16:900:31 | (...)... : String | Test.java:901:31:901:32 | in : String | provenance | | | Test.java:900:24:900:31 | source(...) : Object | Test.java:900:16:900:31 | (...)... : String | provenance | | | Test.java:901:10:901:33 | getURL(...) : URL | Test.java:902:9:902:11 | out | provenance | | -| Test.java:901:31:901:32 | in : String | Test.java:901:10:901:33 | getURL(...) : URL | provenance | MaD:92 | +| Test.java:901:31:901:32 | in : String | Test.java:901:10:901:33 | getURL(...) : URL | provenance | MaD:90 | | Test.java:907:13:907:25 | (...)... : URL | Test.java:908:30:908:31 | in : URL | provenance | | | Test.java:907:18:907:25 | source(...) : Object | Test.java:907:13:907:25 | (...)... : URL | provenance | | | Test.java:908:10:908:32 | toURI(...) : URI | Test.java:909:9:909:11 | out | provenance | | -| Test.java:908:30:908:31 | in : URL | Test.java:908:10:908:32 | toURI(...) : URI | provenance | MaD:93 | +| Test.java:908:30:908:31 | in : URL | Test.java:908:10:908:32 | toURI(...) : URI | provenance | MaD:91 | | Test.java:914:16:914:31 | (...)... : String | Test.java:915:30:915:31 | in : String | provenance | | | Test.java:914:24:914:31 | source(...) : Object | Test.java:914:16:914:31 | (...)... : String | provenance | | | Test.java:915:10:915:32 | toURI(...) : URI | Test.java:916:9:916:11 | out | provenance | | -| Test.java:915:30:915:31 | in : String | Test.java:915:10:915:32 | toURI(...) : URI | provenance | MaD:93 | +| Test.java:915:30:915:31 | in : String | Test.java:915:10:915:32 | toURI(...) : URI | provenance | MaD:91 | | Test.java:921:16:921:31 | (...)... : String | Test.java:923:33:923:34 | in : String | provenance | | | Test.java:921:24:921:31 | source(...) : Object | Test.java:921:16:921:31 | (...)... : String | provenance | | | Test.java:923:10:923:35 | combine(...) : String | Test.java:924:9:924:11 | out | provenance | | -| Test.java:923:33:923:34 | in : String | Test.java:923:10:923:35 | combine(...) : String | provenance | MaD:94 | +| Test.java:923:33:923:34 | in : String | Test.java:923:10:923:35 | combine(...) : String | provenance | MaD:92 | | Test.java:929:16:929:31 | (...)... : String | Test.java:931:27:931:28 | in : String | provenance | | | Test.java:929:24:929:31 | source(...) : Object | Test.java:929:16:929:31 | (...)... : String | provenance | | | Test.java:931:10:931:35 | combine(...) : String | Test.java:932:9:932:11 | out | provenance | | -| Test.java:931:27:931:28 | in : String | Test.java:931:10:931:35 | combine(...) : String | provenance | MaD:94 | +| Test.java:931:27:931:28 | in : String | Test.java:931:10:931:35 | combine(...) : String | provenance | MaD:92 | | Test.java:937:16:937:31 | (...)... : String | Test.java:939:35:939:36 | in : String | provenance | | | Test.java:937:24:937:31 | source(...) : Object | Test.java:937:16:937:31 | (...)... : String | provenance | | | Test.java:939:10:939:43 | matchAndExtract(...) : Map [] : Object | Test.java:940:19:940:21 | out : Map [] : Object | provenance | | -| Test.java:939:35:939:36 | in : String | Test.java:939:10:939:43 | matchAndExtract(...) : Map [] : Object | provenance | MaD:95 | +| Test.java:939:35:939:36 | in : String | Test.java:939:10:939:43 | matchAndExtract(...) : Map [] : Object | provenance | MaD:93 | | Test.java:940:19:940:21 | out : Map [] : Object | Test.java:51:21:51:39 | container : Map [] : Object | provenance | | -| Test.java:940:19:940:21 | out : Map [] : Object | Test.java:940:9:940:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:940:19:940:21 | out : Map [] : Object | Test.java:940:9:940:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:945:28:945:55 | (...)... : Route | Test.java:947:41:947:42 | in : Route | provenance | | | Test.java:945:48:945:55 | source(...) : Object | Test.java:945:28:945:55 | (...)... : Route | provenance | | | Test.java:947:10:947:43 | matchAndExtract(...) : Map [] : Object | Test.java:948:21:948:23 | out : Map [] : Object | provenance | | -| Test.java:947:41:947:42 | in : Route | Test.java:947:10:947:43 | matchAndExtract(...) : Map [] : Object | provenance | MaD:96 | +| Test.java:947:41:947:42 | in : Route | Test.java:947:10:947:43 | matchAndExtract(...) : Map [] : Object | provenance | MaD:94 | | Test.java:948:21:948:23 | out : Map [] : Object | Test.java:52:23:52:41 | container : Map [] : Object | provenance | | -| Test.java:948:21:948:23 | out : Map [] : Object | Test.java:948:9:948:24 | getMapValue(...) | provenance | MaD:11 | +| Test.java:948:21:948:23 | out : Map [] : Object | Test.java:948:9:948:24 | getMapValue(...) | provenance | MaD:9 | | Test.java:953:16:953:31 | (...)... : String | Test.java:955:30:955:31 | in : String | provenance | | | Test.java:953:24:953:31 | source(...) : Object | Test.java:953:16:953:31 | (...)... : String | provenance | | | Test.java:955:10:955:32 | parseRoute(...) : Route | Test.java:956:9:956:11 | out | provenance | | -| Test.java:955:30:955:31 | in : String | Test.java:955:10:955:32 | parseRoute(...) : Route | provenance | MaD:97 | +| Test.java:955:30:955:31 | in : String | Test.java:955:10:955:32 | parseRoute(...) : Route | provenance | MaD:95 | | Test.java:961:16:961:31 | (...)... : byte[] | Test.java:962:41:962:42 | in : byte[] | provenance | | | Test.java:961:24:961:31 | source(...) : Object | Test.java:961:16:961:31 | (...)... : byte[] | provenance | | | Test.java:962:10:962:43 | deserialize(...) : Object | Test.java:963:9:963:11 | out | provenance | | -| Test.java:962:41:962:42 | in : byte[] | Test.java:962:10:962:43 | deserialize(...) : Object | provenance | MaD:98 | +| Test.java:962:41:962:42 | in : byte[] | Test.java:962:10:962:43 | deserialize(...) : Object | provenance | MaD:96 | | Test.java:968:16:968:23 | source(...) : Object | Test.java:969:39:969:40 | in : Object | provenance | | | Test.java:969:10:969:41 | serialize(...) : byte[] | Test.java:970:9:970:11 | out | provenance | | -| Test.java:969:39:969:40 | in : Object | Test.java:969:10:969:41 | serialize(...) : byte[] | provenance | MaD:99 | +| Test.java:969:39:969:40 | in : Object | Test.java:969:10:969:41 | serialize(...) : byte[] | provenance | MaD:97 | | Test.java:975:16:975:31 | (...)... : byte[] | Test.java:976:21:976:22 | in : byte[] | provenance | | | Test.java:975:24:975:31 | source(...) : Object | Test.java:975:16:975:31 | (...)... : byte[] | provenance | | -| Test.java:976:21:976:22 | in : byte[] | Test.java:976:25:976:27 | out [post update] : OutputStream | provenance | MaD:100 | +| Test.java:976:21:976:22 | in : byte[] | Test.java:976:25:976:27 | out [post update] : OutputStream | provenance | MaD:98 | | Test.java:976:25:976:27 | out [post update] : OutputStream | Test.java:977:9:977:11 | out | provenance | | | Test.java:982:21:982:41 | (...)... : InputStream | Test.java:983:21:983:22 | in : InputStream | provenance | | | Test.java:982:34:982:41 | source(...) : Object | Test.java:982:21:982:41 | (...)... : InputStream | provenance | | -| Test.java:983:21:983:22 | in : InputStream | Test.java:983:25:983:27 | out [post update] : OutputStream | provenance | MaD:101 | +| Test.java:983:21:983:22 | in : InputStream | Test.java:983:25:983:27 | out [post update] : OutputStream | provenance | MaD:99 | | Test.java:983:25:983:27 | out [post update] : OutputStream | Test.java:984:9:984:11 | out | provenance | | | Test.java:989:16:989:31 | (...)... : String | Test.java:990:21:990:22 | in : String | provenance | | | Test.java:989:24:989:31 | source(...) : Object | Test.java:989:16:989:31 | (...)... : String | provenance | | -| Test.java:990:21:990:22 | in : String | Test.java:990:31:990:33 | out [post update] : OutputStream | provenance | MaD:102 | +| Test.java:990:21:990:22 | in : String | Test.java:990:31:990:33 | out [post update] : OutputStream | provenance | MaD:100 | | Test.java:990:31:990:33 | out [post update] : OutputStream | Test.java:991:9:991:11 | out | provenance | | | Test.java:996:21:996:41 | (...)... : InputStream | Test.java:997:26:997:27 | in : InputStream | provenance | | | Test.java:996:34:996:41 | source(...) : Object | Test.java:996:21:996:41 | (...)... : InputStream | provenance | | -| Test.java:997:26:997:27 | in : InputStream | Test.java:997:30:997:32 | out [post update] : OutputStream | provenance | MaD:103 | +| Test.java:997:26:997:27 | in : InputStream | Test.java:997:30:997:32 | out [post update] : OutputStream | provenance | MaD:101 | | Test.java:997:30:997:32 | out [post update] : OutputStream | Test.java:998:9:998:11 | out | provenance | | | Test.java:1003:21:1003:41 | (...)... : InputStream | Test.java:1004:38:1004:39 | in : InputStream | provenance | | | Test.java:1003:34:1003:41 | source(...) : Object | Test.java:1003:21:1003:41 | (...)... : InputStream | provenance | | | Test.java:1004:10:1004:40 | copyToByteArray(...) : byte[] | Test.java:1005:9:1005:11 | out | provenance | | -| Test.java:1004:38:1004:39 | in : InputStream | Test.java:1004:10:1004:40 | copyToByteArray(...) : byte[] | provenance | MaD:104 | +| Test.java:1004:38:1004:39 | in : InputStream | Test.java:1004:10:1004:40 | copyToByteArray(...) : byte[] | provenance | MaD:102 | | Test.java:1010:21:1010:41 | (...)... : InputStream | Test.java:1011:35:1011:36 | in : InputStream | provenance | | | Test.java:1010:34:1010:41 | source(...) : Object | Test.java:1010:21:1010:41 | (...)... : InputStream | provenance | | | Test.java:1011:10:1011:52 | copyToString(...) : String | Test.java:1012:9:1012:11 | out | provenance | | -| Test.java:1011:35:1011:36 | in : InputStream | Test.java:1011:10:1011:52 | copyToString(...) : String | provenance | MaD:105 | +| Test.java:1011:35:1011:36 | in : InputStream | Test.java:1011:10:1011:52 | copyToString(...) : String | provenance | MaD:103 | | Test.java:1017:31:1017:61 | (...)... : ByteArrayOutputStream | Test.java:1018:35:1018:36 | in : ByteArrayOutputStream | provenance | | | Test.java:1017:54:1017:61 | source(...) : Object | Test.java:1017:31:1017:61 | (...)... : ByteArrayOutputStream | provenance | | | Test.java:1018:10:1018:52 | copyToString(...) : String | Test.java:1019:9:1019:11 | out | provenance | | -| Test.java:1018:35:1018:36 | in : ByteArrayOutputStream | Test.java:1018:10:1018:52 | copyToString(...) : String | provenance | MaD:105 | +| Test.java:1018:35:1018:36 | in : ByteArrayOutputStream | Test.java:1018:10:1018:52 | copyToString(...) : String | provenance | MaD:103 | | Test.java:1024:16:1024:31 | (...)... : String | Test.java:1025:45:1025:46 | in : String | provenance | | | Test.java:1024:24:1024:31 | source(...) : Object | Test.java:1024:16:1024:31 | (...)... : String | provenance | | | Test.java:1025:10:1025:47 | addStringToArray(...) : String[] [[]] : String | Test.java:1026:25:1026:27 | out : String[] [[]] : String | provenance | | -| Test.java:1025:45:1025:46 | in : String | Test.java:1025:10:1025:47 | addStringToArray(...) : String[] [[]] : String | provenance | MaD:107 | +| Test.java:1025:45:1025:46 | in : String | Test.java:1025:10:1025:47 | addStringToArray(...) : String[] [[]] : String | provenance | MaD:105 | | Test.java:1026:25:1026:27 | out : String[] [[]] : String | Test.java:48:24:48:36 | container : String[] [[]] : String | provenance | | | Test.java:1026:25:1026:27 | out : String[] [[]] : String | Test.java:1026:9:1026:28 | getArrayElement(...) | provenance | | | Test.java:1031:18:1031:56 | (...)... : String[] [[]] : Object | Test.java:1032:39:1032:40 | in : String[] [[]] : Object | provenance | | @@ -917,270 +913,270 @@ edges | Test.java:1031:48:1031:55 | source(...) : Object | Test.java:53:31:53:44 | element : Object | provenance | | | Test.java:1031:48:1031:55 | source(...) : Object | Test.java:1031:28:1031:56 | newWithArrayElement(...) : Object[] [[]] : Object | provenance | | | Test.java:1032:10:1032:47 | addStringToArray(...) : String[] [[]] : Object | Test.java:1033:25:1033:27 | out : String[] [[]] : Object | provenance | | -| Test.java:1032:39:1032:40 | in : String[] [[]] : Object | Test.java:1032:10:1032:47 | addStringToArray(...) : String[] [[]] : Object | provenance | MaD:106 | +| Test.java:1032:39:1032:40 | in : String[] [[]] : Object | Test.java:1032:10:1032:47 | addStringToArray(...) : String[] [[]] : Object | provenance | MaD:104 | | Test.java:1033:25:1033:27 | out : String[] [[]] : Object | Test.java:48:24:48:36 | container : String[] [[]] : Object | provenance | | | Test.java:1033:25:1033:27 | out : String[] [[]] : Object | Test.java:1033:9:1033:28 | getArrayElement(...) | provenance | | | Test.java:1038:16:1038:31 | (...)... : String | Test.java:1039:46:1039:47 | in : String | provenance | | | Test.java:1038:24:1038:31 | source(...) : Object | Test.java:1038:16:1038:31 | (...)... : String | provenance | | | Test.java:1039:10:1039:48 | applyRelativePath(...) : String | Test.java:1040:9:1040:11 | out | provenance | | -| Test.java:1039:46:1039:47 | in : String | Test.java:1039:10:1039:48 | applyRelativePath(...) : String | provenance | MaD:108 | +| Test.java:1039:46:1039:47 | in : String | Test.java:1039:10:1039:48 | applyRelativePath(...) : String | provenance | MaD:106 | | Test.java:1045:16:1045:31 | (...)... : String | Test.java:1046:40:1046:41 | in : String | provenance | | | Test.java:1045:24:1045:31 | source(...) : Object | Test.java:1045:16:1045:31 | (...)... : String | provenance | | | Test.java:1046:10:1046:48 | applyRelativePath(...) : String | Test.java:1047:9:1047:11 | out | provenance | | -| Test.java:1046:40:1046:41 | in : String | Test.java:1046:10:1046:48 | applyRelativePath(...) : String | provenance | MaD:108 | +| Test.java:1046:40:1046:41 | in : String | Test.java:1046:10:1046:48 | applyRelativePath(...) : String | provenance | MaD:106 | | Test.java:1052:18:1052:29 | {...} : Object[] [[]] : Object | Test.java:1053:50:1053:51 | in : Object[] [[]] : Object | provenance | | | Test.java:1052:20:1052:27 | source(...) : Object | Test.java:1052:18:1052:29 | {...} : Object[] [[]] : Object | provenance | | | Test.java:1053:10:1053:52 | arrayToCommaDelimitedString(...) : String | Test.java:1054:9:1054:11 | out | provenance | | -| Test.java:1053:50:1053:51 | in : Object[] [[]] : Object | Test.java:1053:10:1053:52 | arrayToCommaDelimitedString(...) : String | provenance | MaD:109 | +| Test.java:1053:50:1053:51 | in : Object[] [[]] : Object | Test.java:1053:10:1053:52 | arrayToCommaDelimitedString(...) : String | provenance | MaD:107 | | Test.java:1059:16:1059:31 | (...)... : String | Test.java:1060:51:1060:52 | in : String | provenance | | | Test.java:1059:24:1059:31 | source(...) : Object | Test.java:1059:16:1059:31 | (...)... : String | provenance | | | Test.java:1060:10:1060:53 | arrayToDelimitedString(...) : String | Test.java:1061:9:1061:11 | out | provenance | | -| Test.java:1060:51:1060:52 | in : String | Test.java:1060:10:1060:53 | arrayToDelimitedString(...) : String | provenance | MaD:111 | +| Test.java:1060:51:1060:52 | in : String | Test.java:1060:10:1060:53 | arrayToDelimitedString(...) : String | provenance | MaD:109 | | Test.java:1066:18:1066:29 | {...} : Object[] [[]] : Object | Test.java:1067:45:1067:46 | in : Object[] [[]] : Object | provenance | | | Test.java:1066:20:1066:27 | source(...) : Object | Test.java:1066:18:1066:29 | {...} : Object[] [[]] : Object | provenance | | | Test.java:1067:10:1067:53 | arrayToDelimitedString(...) : String | Test.java:1068:9:1068:11 | out | provenance | | -| Test.java:1067:45:1067:46 | in : Object[] [[]] : Object | Test.java:1067:10:1067:53 | arrayToDelimitedString(...) : String | provenance | MaD:110 | +| Test.java:1067:45:1067:46 | in : Object[] [[]] : Object | Test.java:1067:10:1067:53 | arrayToDelimitedString(...) : String | provenance | MaD:108 | | Test.java:1073:16:1073:31 | (...)... : String | Test.java:1074:33:1074:34 | in : String | provenance | | | Test.java:1073:24:1073:31 | source(...) : Object | Test.java:1073:16:1073:31 | (...)... : String | provenance | | | Test.java:1074:10:1074:35 | capitalize(...) : String | Test.java:1075:9:1075:11 | out | provenance | | -| Test.java:1074:33:1074:34 | in : String | Test.java:1074:10:1074:35 | capitalize(...) : String | provenance | MaD:112 | +| Test.java:1074:33:1074:34 | in : String | Test.java:1074:10:1074:35 | capitalize(...) : String | provenance | MaD:110 | | Test.java:1080:16:1080:31 | (...)... : String | Test.java:1081:32:1081:33 | in : String | provenance | | | Test.java:1080:24:1080:31 | source(...) : Object | Test.java:1080:16:1080:31 | (...)... : String | provenance | | | Test.java:1081:10:1081:34 | cleanPath(...) : String | Test.java:1082:9:1082:11 | out | provenance | | -| Test.java:1081:32:1081:33 | in : String | Test.java:1081:10:1081:34 | cleanPath(...) : String | provenance | MaD:113 | +| Test.java:1081:32:1081:33 | in : String | Test.java:1081:10:1081:34 | cleanPath(...) : String | provenance | MaD:111 | | Test.java:1087:20:1087:36 | of(...) : List [] : Object | Test.java:1088:55:1088:56 | in : List [] : Object | provenance | | -| Test.java:1087:28:1087:35 | source(...) : Object | Test.java:1087:20:1087:36 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:1087:28:1087:35 | source(...) : Object | Test.java:1087:20:1087:36 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:1088:10:1088:57 | collectionToCommaDelimitedString(...) : String | Test.java:1089:9:1089:11 | out | provenance | | -| Test.java:1088:55:1088:56 | in : List [] : Object | Test.java:1088:10:1088:57 | collectionToCommaDelimitedString(...) : String | provenance | MaD:114 | +| Test.java:1088:55:1088:56 | in : List [] : Object | Test.java:1088:10:1088:57 | collectionToCommaDelimitedString(...) : String | provenance | MaD:112 | | Test.java:1094:16:1094:31 | (...)... : String | Test.java:1095:68:1095:69 | in : String | provenance | | | Test.java:1094:24:1094:31 | source(...) : Object | Test.java:1094:16:1094:31 | (...)... : String | provenance | | | Test.java:1095:10:1095:70 | collectionToDelimitedString(...) : String | Test.java:1096:9:1096:11 | out | provenance | | -| Test.java:1095:68:1095:69 | in : String | Test.java:1095:10:1095:70 | collectionToDelimitedString(...) : String | provenance | MaD:116 | +| Test.java:1095:68:1095:69 | in : String | Test.java:1095:10:1095:70 | collectionToDelimitedString(...) : String | provenance | MaD:114 | | Test.java:1101:16:1101:31 | (...)... : String | Test.java:1102:62:1102:63 | in : String | provenance | | | Test.java:1101:24:1101:31 | source(...) : Object | Test.java:1101:16:1101:31 | (...)... : String | provenance | | | Test.java:1102:10:1102:70 | collectionToDelimitedString(...) : String | Test.java:1103:9:1103:11 | out | provenance | | -| Test.java:1102:62:1102:63 | in : String | Test.java:1102:10:1102:70 | collectionToDelimitedString(...) : String | provenance | MaD:116 | +| Test.java:1102:62:1102:63 | in : String | Test.java:1102:10:1102:70 | collectionToDelimitedString(...) : String | provenance | MaD:114 | | Test.java:1108:16:1108:31 | (...)... : String | Test.java:1109:56:1109:57 | in : String | provenance | | | Test.java:1108:24:1108:31 | source(...) : Object | Test.java:1108:16:1108:31 | (...)... : String | provenance | | | Test.java:1109:10:1109:70 | collectionToDelimitedString(...) : String | Test.java:1110:9:1110:11 | out | provenance | | -| Test.java:1109:56:1109:57 | in : String | Test.java:1109:10:1109:70 | collectionToDelimitedString(...) : String | provenance | MaD:116 | +| Test.java:1109:56:1109:57 | in : String | Test.java:1109:10:1109:70 | collectionToDelimitedString(...) : String | provenance | MaD:114 | | Test.java:1115:16:1115:31 | (...)... : String | Test.java:1116:56:1116:57 | in : String | provenance | | | Test.java:1115:24:1115:31 | source(...) : Object | Test.java:1115:16:1115:31 | (...)... : String | provenance | | | Test.java:1116:10:1116:58 | collectionToDelimitedString(...) : String | Test.java:1117:9:1117:11 | out | provenance | | -| Test.java:1116:56:1116:57 | in : String | Test.java:1116:10:1116:58 | collectionToDelimitedString(...) : String | provenance | MaD:116 | +| Test.java:1116:56:1116:57 | in : String | Test.java:1116:10:1116:58 | collectionToDelimitedString(...) : String | provenance | MaD:114 | | Test.java:1122:20:1122:36 | of(...) : List [] : Object | Test.java:1123:50:1123:51 | in : List [] : Object | provenance | | -| Test.java:1122:28:1122:35 | source(...) : Object | Test.java:1122:20:1122:36 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:1122:28:1122:35 | source(...) : Object | Test.java:1122:20:1122:36 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:1123:10:1123:70 | collectionToDelimitedString(...) : String | Test.java:1124:9:1124:11 | out | provenance | | -| Test.java:1123:50:1123:51 | in : List [] : Object | Test.java:1123:10:1123:70 | collectionToDelimitedString(...) : String | provenance | MaD:115 | +| Test.java:1123:50:1123:51 | in : List [] : Object | Test.java:1123:10:1123:70 | collectionToDelimitedString(...) : String | provenance | MaD:113 | | Test.java:1129:20:1129:36 | of(...) : List [] : Object | Test.java:1130:50:1130:51 | in : List [] : Object | provenance | | -| Test.java:1129:28:1129:35 | source(...) : Object | Test.java:1129:20:1129:36 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:1129:28:1129:35 | source(...) : Object | Test.java:1129:20:1129:36 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:1130:10:1130:58 | collectionToDelimitedString(...) : String | Test.java:1131:9:1131:11 | out | provenance | | -| Test.java:1130:50:1130:51 | in : List [] : Object | Test.java:1130:10:1130:58 | collectionToDelimitedString(...) : String | provenance | MaD:115 | +| Test.java:1130:50:1130:51 | in : List [] : Object | Test.java:1130:10:1130:58 | collectionToDelimitedString(...) : String | provenance | MaD:113 | | Test.java:1136:16:1136:31 | (...)... : String | Test.java:1137:46:1137:47 | in : String | provenance | | | Test.java:1136:24:1136:31 | source(...) : Object | Test.java:1136:16:1136:31 | (...)... : String | provenance | | | Test.java:1137:10:1137:48 | commaDelimitedListToSet(...) : Set [] : Object | Test.java:1138:20:1138:22 | out : Set [] : Object | provenance | | -| Test.java:1137:46:1137:47 | in : String | Test.java:1137:10:1137:48 | commaDelimitedListToSet(...) : Set [] : Object | provenance | MaD:117 | +| Test.java:1137:46:1137:47 | in : String | Test.java:1137:10:1137:48 | commaDelimitedListToSet(...) : Set [] : Object | provenance | MaD:115 | | Test.java:1138:20:1138:22 | out : Set [] : Object | Test.java:49:19:49:41 | container : Set [] : Object | provenance | | -| Test.java:1138:20:1138:22 | out : Set [] : Object | Test.java:1138:9:1138:23 | getElement(...) | provenance | MaD:3 | +| Test.java:1138:20:1138:22 | out : Set [] : Object | Test.java:1138:9:1138:23 | getElement(...) | provenance | MaD:1 | | Test.java:1143:16:1143:31 | (...)... : String | Test.java:1144:54:1144:55 | in : String | provenance | | | Test.java:1143:24:1143:31 | source(...) : Object | Test.java:1143:16:1143:31 | (...)... : String | provenance | | | Test.java:1144:10:1144:56 | commaDelimitedListToStringArray(...) : String[] [[]] : Object | Test.java:1145:25:1145:27 | out : String[] [[]] : Object | provenance | | -| Test.java:1144:54:1144:55 | in : String | Test.java:1144:10:1144:56 | commaDelimitedListToStringArray(...) : String[] [[]] : Object | provenance | MaD:118 | +| Test.java:1144:54:1144:55 | in : String | Test.java:1144:10:1144:56 | commaDelimitedListToStringArray(...) : String[] [[]] : Object | provenance | MaD:116 | | Test.java:1145:25:1145:27 | out : String[] [[]] : Object | Test.java:48:24:48:36 | container : String[] [[]] : Object | provenance | | | Test.java:1145:25:1145:27 | out : String[] [[]] : Object | Test.java:1145:9:1145:28 | getArrayElement(...) | provenance | | | Test.java:1150:18:1150:37 | {...} : String[] [[]] : String | Test.java:1151:52:1151:53 | in : String[] [[]] : String | provenance | | | Test.java:1150:20:1150:35 | (...)... : String | Test.java:1150:18:1150:37 | {...} : String[] [[]] : String | provenance | | | Test.java:1150:28:1150:35 | source(...) : Object | Test.java:1150:20:1150:35 | (...)... : String | provenance | | | Test.java:1151:10:1151:54 | concatenateStringArrays(...) : String[] [[]] : Object | Test.java:1152:25:1152:27 | out : String[] [[]] : Object | provenance | | -| Test.java:1151:52:1151:53 | in : String[] [[]] : String | Test.java:1151:10:1151:54 | concatenateStringArrays(...) : String[] [[]] : Object | provenance | MaD:119 | +| Test.java:1151:52:1151:53 | in : String[] [[]] : String | Test.java:1151:10:1151:54 | concatenateStringArrays(...) : String[] [[]] : Object | provenance | MaD:117 | | Test.java:1152:25:1152:27 | out : String[] [[]] : Object | Test.java:48:24:48:36 | container : String[] [[]] : Object | provenance | | | Test.java:1152:25:1152:27 | out : String[] [[]] : Object | Test.java:1152:9:1152:28 | getArrayElement(...) | provenance | | | Test.java:1157:18:1157:37 | {...} : String[] [[]] : String | Test.java:1158:46:1158:47 | in : String[] [[]] : String | provenance | | | Test.java:1157:20:1157:35 | (...)... : String | Test.java:1157:18:1157:37 | {...} : String[] [[]] : String | provenance | | | Test.java:1157:28:1157:35 | source(...) : Object | Test.java:1157:20:1157:35 | (...)... : String | provenance | | | Test.java:1158:10:1158:54 | concatenateStringArrays(...) : String[] [[]] : Object | Test.java:1159:25:1159:27 | out : String[] [[]] : Object | provenance | | -| Test.java:1158:46:1158:47 | in : String[] [[]] : String | Test.java:1158:10:1158:54 | concatenateStringArrays(...) : String[] [[]] : Object | provenance | MaD:119 | +| Test.java:1158:46:1158:47 | in : String[] [[]] : String | Test.java:1158:10:1158:54 | concatenateStringArrays(...) : String[] [[]] : Object | provenance | MaD:117 | | Test.java:1159:25:1159:27 | out : String[] [[]] : Object | Test.java:48:24:48:36 | container : String[] [[]] : Object | provenance | | | Test.java:1159:25:1159:27 | out : String[] [[]] : Object | Test.java:1159:9:1159:28 | getArrayElement(...) | provenance | | | Test.java:1164:16:1164:31 | (...)... : String | Test.java:1165:29:1165:30 | in : String | provenance | | | Test.java:1164:24:1164:31 | source(...) : Object | Test.java:1164:16:1164:31 | (...)... : String | provenance | | | Test.java:1165:10:1165:37 | delete(...) : String | Test.java:1166:9:1166:11 | out | provenance | | -| Test.java:1165:29:1165:30 | in : String | Test.java:1165:10:1165:37 | delete(...) : String | provenance | MaD:120 | +| Test.java:1165:29:1165:30 | in : String | Test.java:1165:10:1165:37 | delete(...) : String | provenance | MaD:118 | | Test.java:1171:16:1171:31 | (...)... : String | Test.java:1172:32:1172:33 | in : String | provenance | | | Test.java:1171:24:1171:31 | source(...) : Object | Test.java:1171:16:1171:31 | (...)... : String | provenance | | | Test.java:1172:10:1172:40 | deleteAny(...) : String | Test.java:1173:9:1173:11 | out | provenance | | -| Test.java:1172:32:1172:33 | in : String | Test.java:1172:10:1172:40 | deleteAny(...) : String | provenance | MaD:121 | +| Test.java:1172:32:1172:33 | in : String | Test.java:1172:10:1172:40 | deleteAny(...) : String | provenance | MaD:119 | | Test.java:1178:16:1178:31 | (...)... : String | Test.java:1179:49:1179:50 | in : String | provenance | | | Test.java:1178:24:1178:31 | source(...) : Object | Test.java:1178:16:1178:31 | (...)... : String | provenance | | | Test.java:1179:10:1179:63 | delimitedListToStringArray(...) : String[] [[]] : Object | Test.java:1180:9:1180:11 | out | provenance | | -| Test.java:1179:49:1179:50 | in : String | Test.java:1179:10:1179:63 | delimitedListToStringArray(...) : String[] [[]] : Object | provenance | MaD:122 | +| Test.java:1179:49:1179:50 | in : String | Test.java:1179:10:1179:63 | delimitedListToStringArray(...) : String[] [[]] : Object | provenance | MaD:120 | | Test.java:1185:16:1185:31 | (...)... : String | Test.java:1186:49:1186:50 | in : String | provenance | | | Test.java:1185:24:1185:31 | source(...) : Object | Test.java:1185:16:1185:31 | (...)... : String | provenance | | | Test.java:1186:10:1186:57 | delimitedListToStringArray(...) : String[] [[]] : Object | Test.java:1187:9:1187:11 | out | provenance | | -| Test.java:1186:49:1186:50 | in : String | Test.java:1186:10:1186:57 | delimitedListToStringArray(...) : String[] [[]] : Object | provenance | MaD:122 | +| Test.java:1186:49:1186:50 | in : String | Test.java:1186:10:1186:57 | delimitedListToStringArray(...) : String[] [[]] : Object | provenance | MaD:120 | | Test.java:1192:16:1192:31 | (...)... : String | Test.java:1193:34:1193:35 | in : String | provenance | | | Test.java:1192:24:1192:31 | source(...) : Object | Test.java:1192:16:1192:31 | (...)... : String | provenance | | | Test.java:1193:10:1193:36 | getFilename(...) : String | Test.java:1194:9:1194:11 | out | provenance | | -| Test.java:1193:34:1193:35 | in : String | Test.java:1193:10:1193:36 | getFilename(...) : String | provenance | MaD:123 | +| Test.java:1193:34:1193:35 | in : String | Test.java:1193:10:1193:36 | getFilename(...) : String | provenance | MaD:121 | | Test.java:1199:16:1199:31 | (...)... : String | Test.java:1200:43:1200:44 | in : String | provenance | | | Test.java:1199:24:1199:31 | source(...) : Object | Test.java:1199:16:1199:31 | (...)... : String | provenance | | | Test.java:1200:10:1200:45 | getFilenameExtension(...) : String | Test.java:1201:9:1201:11 | out | provenance | | -| Test.java:1200:43:1200:44 | in : String | Test.java:1200:10:1200:45 | getFilenameExtension(...) : String | provenance | MaD:124 | +| Test.java:1200:43:1200:44 | in : String | Test.java:1200:10:1200:45 | getFilenameExtension(...) : String | provenance | MaD:122 | | Test.java:1206:18:1206:37 | {...} : String[] [[]] : String | Test.java:1207:46:1207:47 | in : String[] [[]] : String | provenance | | | Test.java:1206:20:1206:35 | (...)... : String | Test.java:1206:18:1206:37 | {...} : String[] [[]] : String | provenance | | | Test.java:1206:28:1206:35 | source(...) : Object | Test.java:1206:20:1206:35 | (...)... : String | provenance | | | Test.java:1207:10:1207:48 | mergeStringArrays(...) : String[] [[]] : String | Test.java:1208:25:1208:27 | out : String[] [[]] : String | provenance | | -| Test.java:1207:46:1207:47 | in : String[] [[]] : String | Test.java:1207:10:1207:48 | mergeStringArrays(...) : String[] [[]] : String | provenance | MaD:125 | +| Test.java:1207:46:1207:47 | in : String[] [[]] : String | Test.java:1207:10:1207:48 | mergeStringArrays(...) : String[] [[]] : String | provenance | MaD:123 | | Test.java:1208:25:1208:27 | out : String[] [[]] : String | Test.java:48:24:48:36 | container : String[] [[]] : String | provenance | | | Test.java:1208:25:1208:27 | out : String[] [[]] : String | Test.java:1208:9:1208:28 | getArrayElement(...) | provenance | | | Test.java:1213:18:1213:37 | {...} : String[] [[]] : String | Test.java:1214:40:1214:41 | in : String[] [[]] : String | provenance | | | Test.java:1213:20:1213:35 | (...)... : String | Test.java:1213:18:1213:37 | {...} : String[] [[]] : String | provenance | | | Test.java:1213:28:1213:35 | source(...) : Object | Test.java:1213:20:1213:35 | (...)... : String | provenance | | | Test.java:1214:10:1214:48 | mergeStringArrays(...) : String[] [[]] : String | Test.java:1215:25:1215:27 | out : String[] [[]] : String | provenance | | -| Test.java:1214:40:1214:41 | in : String[] [[]] : String | Test.java:1214:10:1214:48 | mergeStringArrays(...) : String[] [[]] : String | provenance | MaD:125 | +| Test.java:1214:40:1214:41 | in : String[] [[]] : String | Test.java:1214:10:1214:48 | mergeStringArrays(...) : String[] [[]] : String | provenance | MaD:123 | | Test.java:1215:25:1215:27 | out : String[] [[]] : String | Test.java:48:24:48:36 | container : String[] [[]] : String | provenance | | | Test.java:1215:25:1215:27 | out : String[] [[]] : String | Test.java:1215:9:1215:28 | getArrayElement(...) | provenance | | | Test.java:1220:16:1220:31 | (...)... : String | Test.java:1221:28:1221:29 | in : String | provenance | | | Test.java:1220:24:1220:31 | source(...) : Object | Test.java:1220:16:1220:31 | (...)... : String | provenance | | | Test.java:1221:10:1221:30 | quote(...) : String | Test.java:1222:9:1222:11 | out | provenance | | -| Test.java:1221:28:1221:29 | in : String | Test.java:1221:10:1221:30 | quote(...) : String | provenance | MaD:126 | +| Test.java:1221:28:1221:29 | in : String | Test.java:1221:10:1221:30 | quote(...) : String | provenance | MaD:124 | | Test.java:1227:16:1227:23 | source(...) : Object | Test.java:1228:36:1228:37 | in : Object | provenance | | | Test.java:1228:10:1228:38 | quoteIfString(...) : Object | Test.java:1229:9:1229:11 | out | provenance | | -| Test.java:1228:36:1228:37 | in : Object | Test.java:1228:10:1228:38 | quoteIfString(...) : Object | provenance | MaD:127 | +| Test.java:1228:36:1228:37 | in : Object | Test.java:1228:10:1228:38 | quoteIfString(...) : Object | provenance | MaD:125 | | Test.java:1234:18:1234:37 | {...} : String[] [[]] : String | Test.java:1235:45:1235:46 | in : String[] [[]] : String | provenance | | | Test.java:1234:20:1234:35 | (...)... : String | Test.java:1234:18:1234:37 | {...} : String[] [[]] : String | provenance | | | Test.java:1234:28:1234:35 | source(...) : Object | Test.java:1234:20:1234:35 | (...)... : String | provenance | | | Test.java:1235:10:1235:47 | removeDuplicateStrings(...) : String[] [[]] : String | Test.java:1236:25:1236:27 | out : String[] [[]] : String | provenance | | -| Test.java:1235:45:1235:46 | in : String[] [[]] : String | Test.java:1235:10:1235:47 | removeDuplicateStrings(...) : String[] [[]] : String | provenance | MaD:128 | +| Test.java:1235:45:1235:46 | in : String[] [[]] : String | Test.java:1235:10:1235:47 | removeDuplicateStrings(...) : String[] [[]] : String | provenance | MaD:126 | | Test.java:1236:25:1236:27 | out : String[] [[]] : String | Test.java:48:24:48:36 | container : String[] [[]] : String | provenance | | | Test.java:1236:25:1236:27 | out : String[] [[]] : String | Test.java:1236:9:1236:28 | getArrayElement(...) | provenance | | | Test.java:1241:16:1241:31 | (...)... : String | Test.java:1242:30:1242:31 | in : String | provenance | | | Test.java:1241:24:1241:31 | source(...) : Object | Test.java:1241:16:1241:31 | (...)... : String | provenance | | | Test.java:1242:10:1242:44 | replace(...) : String | Test.java:1243:9:1243:11 | out | provenance | | -| Test.java:1242:30:1242:31 | in : String | Test.java:1242:10:1242:44 | replace(...) : String | provenance | MaD:129 | +| Test.java:1242:30:1242:31 | in : String | Test.java:1242:10:1242:44 | replace(...) : String | provenance | MaD:127 | | Test.java:1248:16:1248:31 | (...)... : String | Test.java:1249:42:1249:43 | in : String | provenance | | | Test.java:1248:24:1248:31 | source(...) : Object | Test.java:1248:16:1248:31 | (...)... : String | provenance | | | Test.java:1249:10:1249:44 | replace(...) : String | Test.java:1250:9:1250:11 | out | provenance | | -| Test.java:1249:42:1249:43 | in : String | Test.java:1249:10:1249:44 | replace(...) : String | provenance | MaD:130 | +| Test.java:1249:42:1249:43 | in : String | Test.java:1249:10:1249:44 | replace(...) : String | provenance | MaD:128 | | Test.java:1255:18:1255:37 | {...} : String[] [[]] : String | Test.java:1256:38:1256:39 | in : String[] [[]] : String | provenance | | | Test.java:1255:20:1255:35 | (...)... : String | Test.java:1255:18:1255:37 | {...} : String[] [[]] : String | provenance | | | Test.java:1255:28:1255:35 | source(...) : Object | Test.java:1255:20:1255:35 | (...)... : String | provenance | | | Test.java:1256:10:1256:40 | sortStringArray(...) : String[] [[]] : String | Test.java:1257:25:1257:27 | out : String[] [[]] : String | provenance | | -| Test.java:1256:38:1256:39 | in : String[] [[]] : String | Test.java:1256:10:1256:40 | sortStringArray(...) : String[] [[]] : String | provenance | MaD:131 | +| Test.java:1256:38:1256:39 | in : String[] [[]] : String | Test.java:1256:10:1256:40 | sortStringArray(...) : String[] [[]] : String | provenance | MaD:129 | | Test.java:1257:25:1257:27 | out : String[] [[]] : String | Test.java:48:24:48:36 | container : String[] [[]] : String | provenance | | | Test.java:1257:25:1257:27 | out : String[] [[]] : String | Test.java:1257:9:1257:28 | getArrayElement(...) | provenance | | | Test.java:1262:16:1262:31 | (...)... : String | Test.java:1263:28:1263:29 | in : String | provenance | | | Test.java:1262:24:1262:31 | source(...) : Object | Test.java:1262:16:1262:31 | (...)... : String | provenance | | | Test.java:1263:10:1263:36 | split(...) : String[] [[]] : Object | Test.java:1264:25:1264:27 | out : String[] [[]] : Object | provenance | | -| Test.java:1263:28:1263:29 | in : String | Test.java:1263:10:1263:36 | split(...) : String[] [[]] : Object | provenance | MaD:132 | +| Test.java:1263:28:1263:29 | in : String | Test.java:1263:10:1263:36 | split(...) : String[] [[]] : Object | provenance | MaD:130 | | Test.java:1264:25:1264:27 | out : String[] [[]] : Object | Test.java:48:24:48:36 | container : String[] [[]] : Object | provenance | | | Test.java:1264:25:1264:27 | out : String[] [[]] : Object | Test.java:1264:9:1264:28 | getArrayElement(...) | provenance | | | Test.java:1269:18:1269:37 | {...} : String[] [[]] : String | Test.java:1270:55:1270:56 | in : String[] [[]] : String | provenance | | | Test.java:1269:20:1269:35 | (...)... : String | Test.java:1269:18:1269:37 | {...} : String[] [[]] : String | provenance | | | Test.java:1269:28:1269:35 | source(...) : Object | Test.java:1269:20:1269:35 | (...)... : String | provenance | | | Test.java:1270:10:1270:69 | splitArrayElementsIntoProperties(...) : Properties [] : Object | Test.java:1271:19:1271:21 | out : Properties [] : Object | provenance | | -| Test.java:1270:55:1270:56 | in : String[] [[]] : String | Test.java:1270:10:1270:69 | splitArrayElementsIntoProperties(...) : Properties [] : Object | provenance | MaD:133 | +| Test.java:1270:55:1270:56 | in : String[] [[]] : String | Test.java:1270:10:1270:69 | splitArrayElementsIntoProperties(...) : Properties [] : Object | provenance | MaD:131 | | Test.java:1271:19:1271:21 | out : Properties [] : Object | Test.java:51:21:51:39 | container : Properties [] : Object | provenance | | -| Test.java:1271:19:1271:21 | out : Properties [] : Object | Test.java:1271:9:1271:22 | getMapKey(...) | provenance | MaD:12 | +| Test.java:1271:19:1271:21 | out : Properties [] : Object | Test.java:1271:9:1271:22 | getMapKey(...) | provenance | MaD:10 | | Test.java:1276:18:1276:37 | {...} : String[] [[]] : String | Test.java:1277:55:1277:56 | in : String[] [[]] : String | provenance | | | Test.java:1276:20:1276:35 | (...)... : String | Test.java:1276:18:1276:37 | {...} : String[] [[]] : String | provenance | | | Test.java:1276:28:1276:35 | source(...) : Object | Test.java:1276:20:1276:35 | (...)... : String | provenance | | | Test.java:1277:10:1277:69 | splitArrayElementsIntoProperties(...) : Properties [] : Object | Test.java:1278:21:1278:23 | out : Properties [] : Object | provenance | | -| Test.java:1277:55:1277:56 | in : String[] [[]] : String | Test.java:1277:10:1277:69 | splitArrayElementsIntoProperties(...) : Properties [] : Object | provenance | MaD:134 | +| Test.java:1277:55:1277:56 | in : String[] [[]] : String | Test.java:1277:10:1277:69 | splitArrayElementsIntoProperties(...) : Properties [] : Object | provenance | MaD:132 | | Test.java:1278:21:1278:23 | out : Properties [] : Object | Test.java:52:23:52:41 | container : Properties [] : Object | provenance | | -| Test.java:1278:21:1278:23 | out : Properties [] : Object | Test.java:1278:9:1278:24 | getMapValue(...) | provenance | MaD:11 | +| Test.java:1278:21:1278:23 | out : Properties [] : Object | Test.java:1278:9:1278:24 | getMapValue(...) | provenance | MaD:9 | | Test.java:1283:18:1283:35 | (...)... : String[] | Test.java:1284:55:1284:56 | in : String[] | provenance | | | Test.java:1283:28:1283:35 | source(...) : Object | Test.java:1283:18:1283:35 | (...)... : String[] | provenance | | | Test.java:1284:10:1284:63 | splitArrayElementsIntoProperties(...) : Properties [] : Object | Test.java:1285:9:1285:11 | out | provenance | | -| Test.java:1284:55:1284:56 | in : String[] | Test.java:1284:10:1284:63 | splitArrayElementsIntoProperties(...) : Properties [] : Object | provenance | MaD:134 | +| Test.java:1284:55:1284:56 | in : String[] | Test.java:1284:10:1284:63 | splitArrayElementsIntoProperties(...) : Properties [] : Object | provenance | MaD:132 | | Test.java:1290:16:1290:31 | (...)... : String | Test.java:1291:45:1291:46 | in : String | provenance | | | Test.java:1290:24:1290:31 | source(...) : Object | Test.java:1290:16:1290:31 | (...)... : String | provenance | | | Test.java:1291:10:1291:47 | stripFilenameExtension(...) : String | Test.java:1292:9:1292:11 | out | provenance | | -| Test.java:1291:45:1291:46 | in : String | Test.java:1291:10:1291:47 | stripFilenameExtension(...) : String | provenance | MaD:135 | +| Test.java:1291:45:1291:46 | in : String | Test.java:1291:10:1291:47 | stripFilenameExtension(...) : String | provenance | MaD:133 | | Test.java:1297:21:1297:62 | enumeration(...) : Enumeration [] : Object | Test.java:1298:36:1298:37 | in : Enumeration [] : Object | provenance | | -| Test.java:1297:45:1297:61 | of(...) : List [] : Object | Test.java:1297:21:1297:62 | enumeration(...) : Enumeration [] : Object | provenance | MaD:4 | -| Test.java:1297:53:1297:60 | source(...) : Object | Test.java:1297:45:1297:61 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:1297:45:1297:61 | of(...) : List [] : Object | Test.java:1297:21:1297:62 | enumeration(...) : Enumeration [] : Object | provenance | MaD:2 | +| Test.java:1297:53:1297:60 | source(...) : Object | Test.java:1297:45:1297:61 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:1298:10:1298:38 | toStringArray(...) : String[] [[]] : Object | Test.java:1299:25:1299:27 | out : String[] [[]] : Object | provenance | | -| Test.java:1298:36:1298:37 | in : Enumeration [] : Object | Test.java:1298:10:1298:38 | toStringArray(...) : String[] [[]] : Object | provenance | MaD:136 | +| Test.java:1298:36:1298:37 | in : Enumeration [] : Object | Test.java:1298:10:1298:38 | toStringArray(...) : String[] [[]] : Object | provenance | MaD:134 | | Test.java:1299:25:1299:27 | out : String[] [[]] : Object | Test.java:48:24:48:36 | container : String[] [[]] : Object | provenance | | | Test.java:1299:25:1299:27 | out : String[] [[]] : Object | Test.java:1299:9:1299:28 | getArrayElement(...) | provenance | | | Test.java:1304:20:1304:36 | of(...) : List [] : Object | Test.java:1305:36:1305:37 | in : List [] : Object | provenance | | -| Test.java:1304:28:1304:35 | source(...) : Object | Test.java:1304:20:1304:36 | of(...) : List [] : Object | provenance | MaD:8 | +| Test.java:1304:28:1304:35 | source(...) : Object | Test.java:1304:20:1304:36 | of(...) : List [] : Object | provenance | MaD:6 | | Test.java:1305:10:1305:38 | toStringArray(...) : String[] [[]] : Object | Test.java:1306:25:1306:27 | out : String[] [[]] : Object | provenance | | -| Test.java:1305:36:1305:37 | in : List [] : Object | Test.java:1305:10:1305:38 | toStringArray(...) : String[] [[]] : Object | provenance | MaD:136 | +| Test.java:1305:36:1305:37 | in : List [] : Object | Test.java:1305:10:1305:38 | toStringArray(...) : String[] [[]] : Object | provenance | MaD:134 | | Test.java:1306:25:1306:27 | out : String[] [[]] : Object | Test.java:48:24:48:36 | container : String[] [[]] : Object | provenance | | | Test.java:1306:25:1306:27 | out : String[] [[]] : Object | Test.java:1306:9:1306:28 | getArrayElement(...) | provenance | | | Test.java:1311:16:1311:31 | (...)... : String | Test.java:1312:44:1312:45 | in : String | provenance | | | Test.java:1311:24:1311:31 | source(...) : Object | Test.java:1311:16:1311:31 | (...)... : String | provenance | | | Test.java:1312:10:1312:66 | tokenizeToStringArray(...) : String[] [[]] : Object | Test.java:1313:25:1313:27 | out : String[] [[]] : Object | provenance | | -| Test.java:1312:44:1312:45 | in : String | Test.java:1312:10:1312:66 | tokenizeToStringArray(...) : String[] [[]] : Object | provenance | MaD:137 | +| Test.java:1312:44:1312:45 | in : String | Test.java:1312:10:1312:66 | tokenizeToStringArray(...) : String[] [[]] : Object | provenance | MaD:135 | | Test.java:1313:25:1313:27 | out : String[] [[]] : Object | Test.java:48:24:48:36 | container : String[] [[]] : Object | provenance | | | Test.java:1313:25:1313:27 | out : String[] [[]] : Object | Test.java:1313:9:1313:28 | getArrayElement(...) | provenance | | | Test.java:1318:16:1318:31 | (...)... : String | Test.java:1319:44:1319:45 | in : String | provenance | | | Test.java:1318:24:1318:31 | source(...) : Object | Test.java:1318:16:1318:31 | (...)... : String | provenance | | | Test.java:1319:10:1319:52 | tokenizeToStringArray(...) : String[] [[]] : Object | Test.java:1320:25:1320:27 | out : String[] [[]] : Object | provenance | | -| Test.java:1319:44:1319:45 | in : String | Test.java:1319:10:1319:52 | tokenizeToStringArray(...) : String[] [[]] : Object | provenance | MaD:137 | +| Test.java:1319:44:1319:45 | in : String | Test.java:1319:10:1319:52 | tokenizeToStringArray(...) : String[] [[]] : Object | provenance | MaD:135 | | Test.java:1320:25:1320:27 | out : String[] [[]] : Object | Test.java:48:24:48:36 | container : String[] [[]] : Object | provenance | | | Test.java:1320:25:1320:27 | out : String[] [[]] : Object | Test.java:1320:9:1320:28 | getArrayElement(...) | provenance | | | Test.java:1325:16:1325:31 | (...)... : String | Test.java:1326:40:1326:41 | in : String | provenance | | | Test.java:1325:24:1325:31 | source(...) : Object | Test.java:1325:16:1325:31 | (...)... : String | provenance | | | Test.java:1326:10:1326:42 | trimAllWhitespace(...) : String | Test.java:1327:9:1327:11 | out | provenance | | -| Test.java:1326:40:1326:41 | in : String | Test.java:1326:10:1326:42 | trimAllWhitespace(...) : String | provenance | MaD:138 | +| Test.java:1326:40:1326:41 | in : String | Test.java:1326:10:1326:42 | trimAllWhitespace(...) : String | provenance | MaD:136 | | Test.java:1332:18:1332:37 | {...} : String[] [[]] : String | Test.java:1333:40:1333:41 | in : String[] [[]] : String | provenance | | | Test.java:1332:20:1332:35 | (...)... : String | Test.java:1332:18:1332:37 | {...} : String[] [[]] : String | provenance | | | Test.java:1332:28:1332:35 | source(...) : Object | Test.java:1332:20:1332:35 | (...)... : String | provenance | | | Test.java:1333:10:1333:42 | trimArrayElements(...) : String[] [[]] : Object | Test.java:1334:25:1334:27 | out : String[] [[]] : Object | provenance | | -| Test.java:1333:40:1333:41 | in : String[] [[]] : String | Test.java:1333:10:1333:42 | trimArrayElements(...) : String[] [[]] : Object | provenance | MaD:139 | +| Test.java:1333:40:1333:41 | in : String[] [[]] : String | Test.java:1333:10:1333:42 | trimArrayElements(...) : String[] [[]] : Object | provenance | MaD:137 | | Test.java:1334:25:1334:27 | out : String[] [[]] : Object | Test.java:48:24:48:36 | container : String[] [[]] : Object | provenance | | | Test.java:1334:25:1334:27 | out : String[] [[]] : Object | Test.java:1334:9:1334:28 | getArrayElement(...) | provenance | | | Test.java:1339:16:1339:31 | (...)... : String | Test.java:1340:43:1340:44 | in : String | provenance | | | Test.java:1339:24:1339:31 | source(...) : Object | Test.java:1339:16:1339:31 | (...)... : String | provenance | | | Test.java:1340:10:1340:50 | trimLeadingCharacter(...) : String | Test.java:1341:9:1341:11 | out | provenance | | -| Test.java:1340:43:1340:44 | in : String | Test.java:1340:10:1340:50 | trimLeadingCharacter(...) : String | provenance | MaD:140 | +| Test.java:1340:43:1340:44 | in : String | Test.java:1340:10:1340:50 | trimLeadingCharacter(...) : String | provenance | MaD:138 | | Test.java:1346:16:1346:31 | (...)... : String | Test.java:1347:44:1347:45 | in : String | provenance | | | Test.java:1346:24:1346:31 | source(...) : Object | Test.java:1346:16:1346:31 | (...)... : String | provenance | | | Test.java:1347:10:1347:46 | trimLeadingWhitespace(...) : String | Test.java:1348:9:1348:11 | out | provenance | | -| Test.java:1347:44:1347:45 | in : String | Test.java:1347:10:1347:46 | trimLeadingWhitespace(...) : String | provenance | MaD:141 | +| Test.java:1347:44:1347:45 | in : String | Test.java:1347:10:1347:46 | trimLeadingWhitespace(...) : String | provenance | MaD:139 | | Test.java:1353:16:1353:31 | (...)... : String | Test.java:1354:44:1354:45 | in : String | provenance | | | Test.java:1353:24:1353:31 | source(...) : Object | Test.java:1353:16:1353:31 | (...)... : String | provenance | | | Test.java:1354:10:1354:51 | trimTrailingCharacter(...) : String | Test.java:1355:9:1355:11 | out | provenance | | -| Test.java:1354:44:1354:45 | in : String | Test.java:1354:10:1354:51 | trimTrailingCharacter(...) : String | provenance | MaD:142 | +| Test.java:1354:44:1354:45 | in : String | Test.java:1354:10:1354:51 | trimTrailingCharacter(...) : String | provenance | MaD:140 | | Test.java:1360:16:1360:31 | (...)... : String | Test.java:1361:45:1361:46 | in : String | provenance | | | Test.java:1360:24:1360:31 | source(...) : Object | Test.java:1360:16:1360:31 | (...)... : String | provenance | | | Test.java:1361:10:1361:47 | trimTrailingWhitespace(...) : String | Test.java:1362:9:1362:11 | out | provenance | | -| Test.java:1361:45:1361:46 | in : String | Test.java:1361:10:1361:47 | trimTrailingWhitespace(...) : String | provenance | MaD:143 | +| Test.java:1361:45:1361:46 | in : String | Test.java:1361:10:1361:47 | trimTrailingWhitespace(...) : String | provenance | MaD:141 | | Test.java:1367:16:1367:31 | (...)... : String | Test.java:1368:37:1368:38 | in : String | provenance | | | Test.java:1367:24:1367:31 | source(...) : Object | Test.java:1367:16:1367:31 | (...)... : String | provenance | | | Test.java:1368:10:1368:39 | trimWhitespace(...) : String | Test.java:1369:9:1369:11 | out | provenance | | -| Test.java:1368:37:1368:38 | in : String | Test.java:1368:10:1368:39 | trimWhitespace(...) : String | provenance | MaD:144 | +| Test.java:1368:37:1368:38 | in : String | Test.java:1368:10:1368:39 | trimWhitespace(...) : String | provenance | MaD:142 | | Test.java:1374:16:1374:31 | (...)... : String | Test.java:1375:35:1375:36 | in : String | provenance | | | Test.java:1374:24:1374:31 | source(...) : Object | Test.java:1374:16:1374:31 | (...)... : String | provenance | | | Test.java:1375:10:1375:37 | uncapitalize(...) : String | Test.java:1376:9:1376:11 | out | provenance | | -| Test.java:1375:35:1375:36 | in : String | Test.java:1375:10:1375:37 | uncapitalize(...) : String | provenance | MaD:145 | +| Test.java:1375:35:1375:36 | in : String | Test.java:1375:10:1375:37 | uncapitalize(...) : String | provenance | MaD:143 | | Test.java:1381:16:1381:31 | (...)... : String | Test.java:1382:32:1382:33 | in : String | provenance | | | Test.java:1381:24:1381:31 | source(...) : Object | Test.java:1381:16:1381:31 | (...)... : String | provenance | | | Test.java:1382:10:1382:39 | unqualify(...) : String | Test.java:1383:9:1383:11 | out | provenance | | -| Test.java:1382:32:1382:33 | in : String | Test.java:1382:10:1382:39 | unqualify(...) : String | provenance | MaD:146 | +| Test.java:1382:32:1382:33 | in : String | Test.java:1382:10:1382:39 | unqualify(...) : String | provenance | MaD:144 | | Test.java:1388:16:1388:31 | (...)... : String | Test.java:1389:32:1389:33 | in : String | provenance | | | Test.java:1388:24:1388:31 | source(...) : Object | Test.java:1388:16:1388:31 | (...)... : String | provenance | | | Test.java:1389:10:1389:34 | unqualify(...) : String | Test.java:1390:9:1390:11 | out | provenance | | -| Test.java:1389:32:1389:33 | in : String | Test.java:1389:10:1389:34 | unqualify(...) : String | provenance | MaD:146 | +| Test.java:1389:32:1389:33 | in : String | Test.java:1389:10:1389:34 | unqualify(...) : String | provenance | MaD:144 | | Test.java:1395:16:1395:31 | (...)... : String | Test.java:1396:32:1396:33 | in : String | provenance | | | Test.java:1395:24:1395:31 | source(...) : Object | Test.java:1395:16:1395:31 | (...)... : String | provenance | | | Test.java:1396:10:1396:40 | uriDecode(...) : String | Test.java:1397:9:1397:11 | out | provenance | | -| Test.java:1396:32:1396:33 | in : String | Test.java:1396:10:1396:40 | uriDecode(...) : String | provenance | MaD:147 | +| Test.java:1396:32:1396:33 | in : String | Test.java:1396:10:1396:40 | uriDecode(...) : String | provenance | MaD:145 | | Test.java:1402:16:1402:31 | (...)... : String | Test.java:1404:38:1404:39 | in : String | provenance | | | Test.java:1402:24:1402:31 | source(...) : Object | Test.java:1402:16:1402:31 | (...)... : String | provenance | | | Test.java:1404:10:1404:40 | resolveStringValue(...) : String | Test.java:1405:9:1405:11 | out | provenance | | -| Test.java:1404:38:1404:39 | in : String | Test.java:1404:10:1404:40 | resolveStringValue(...) : String | provenance | MaD:148 | +| Test.java:1404:38:1404:39 | in : String | Test.java:1404:10:1404:40 | resolveStringValue(...) : String | provenance | MaD:146 | | Test.java:1410:16:1410:31 | (...)... : String | Test.java:1411:50:1411:51 | in : String | provenance | | | Test.java:1410:24:1410:31 | source(...) : Object | Test.java:1410:16:1410:31 | (...)... : String | provenance | | | Test.java:1411:10:1411:59 | resolvePlaceholders(...) : String | Test.java:1412:9:1412:11 | out | provenance | | -| Test.java:1411:50:1411:51 | in : String | Test.java:1411:10:1411:59 | resolvePlaceholders(...) : String | provenance | MaD:149 | +| Test.java:1411:50:1411:51 | in : String | Test.java:1411:10:1411:59 | resolvePlaceholders(...) : String | provenance | MaD:147 | | Test.java:1417:16:1417:31 | (...)... : String | Test.java:1418:50:1418:51 | in : String | provenance | | | Test.java:1417:24:1417:31 | source(...) : Object | Test.java:1417:16:1417:31 | (...)... : String | provenance | | | Test.java:1418:10:1418:52 | resolvePlaceholders(...) : String | Test.java:1419:9:1419:11 | out | provenance | | -| Test.java:1418:50:1418:51 | in : String | Test.java:1418:10:1418:52 | resolvePlaceholders(...) : String | provenance | MaD:149 | +| Test.java:1418:50:1418:51 | in : String | Test.java:1418:10:1418:52 | resolvePlaceholders(...) : String | provenance | MaD:147 | nodes | Test.java:48:24:48:36 | container : Object[] [[]] : Object | semmle.label | container : Object[] [[]] : Object | | Test.java:48:24:48:36 | container : String[] [[]] : Object | semmle.label | container : String[] [[]] : Object | diff --git a/java/ql/test/library-tests/frameworks/spring/webutil/test.expected b/java/ql/test/library-tests/frameworks/spring/webutil/test.expected index dd5e222d69c4..e6360e3aebac 100644 --- a/java/ql/test/library-tests/frameworks/spring/webutil/test.expected +++ b/java/ql/test/library-tests/frameworks/spring/webutil/test.expected @@ -22,7 +22,7 @@ models | 21 | Summary: org.springframework.web.util; DefaultUriBuilderFactory; false; builder; ; ; Argument[this]; ReturnValue; taint; manual | | 22 | Summary: org.springframework.web.util; DefaultUriBuilderFactory; false; getDefaultUriVariables; ; ; Argument[this]; ReturnValue.MapValue; taint; manual | | 23 | Summary: org.springframework.web.util; DefaultUriBuilderFactory; false; setDefaultUriVariables; ; ; Argument[0].MapValue; Argument[this]; taint; manual | -| 24 | Summary: org.springframework.web.util; DefaultUriBuilderFactory; false; uriString; ; ; Argument[this]; ReturnValue; taint; manual | +| 24 | Summary: org.springframework.web.util; DefaultUriBuilderFactory; false; uriString; ; ; Argument[this,0]; ReturnValue; taint; manual | | 25 | Summary: org.springframework.web.util; HtmlUtils; false; htmlEscape; ; ; Argument[0]; ReturnValue; taint; manual | | 26 | Summary: org.springframework.web.util; HtmlUtils; false; htmlEscapeDecimal; ; ; Argument[0]; ReturnValue; taint; manual | | 27 | Summary: org.springframework.web.util; HtmlUtils; false; htmlEscapeHex; ; ; Argument[0]; ReturnValue; taint; manual | @@ -35,67 +35,67 @@ models | 34 | Summary: org.springframework.web.util; ServletRequestPathUtils; false; setParsedRequestPath; ; ; Argument[0]; Argument[1]; taint; manual | | 35 | Summary: org.springframework.web.util; UriBuilder; true; build; (Map); ; Argument[0].MapValue; Argument[this]; taint; manual | | 36 | Summary: org.springframework.web.util; UriBuilder; true; build; (Map); ; Argument[0].MapValue; ReturnValue; taint; manual | -| 37 | Summary: org.springframework.web.util; UriBuilder; true; build; (Object[]); ; Argument[0].ArrayElement; ReturnValue; taint; manual | -| 38 | Summary: org.springframework.web.util; UriBuilder; true; build; ; ; Argument[this]; ReturnValue; taint; manual | -| 39 | Summary: org.springframework.web.util; UriBuilder; true; fragment; ; ; Argument[0]; Argument[this]; taint; manual | -| 40 | Summary: org.springframework.web.util; UriBuilder; true; fragment; ; ; Argument[this]; ReturnValue; value; manual | -| 41 | Summary: org.springframework.web.util; UriBuilder; true; host; ; ; Argument[0]; Argument[this]; taint; manual | -| 42 | Summary: org.springframework.web.util; UriBuilder; true; host; ; ; Argument[this]; ReturnValue; value; manual | -| 43 | Summary: org.springframework.web.util; UriBuilder; true; path; ; ; Argument[0]; Argument[this]; taint; manual | -| 44 | Summary: org.springframework.web.util; UriBuilder; true; path; ; ; Argument[this]; ReturnValue; value; manual | -| 45 | Summary: org.springframework.web.util; UriBuilder; true; pathSegment; ; ; Argument[0].ArrayElement; Argument[this]; taint; manual | -| 46 | Summary: org.springframework.web.util; UriBuilder; true; pathSegment; ; ; Argument[this]; ReturnValue; value; manual | -| 47 | Summary: org.springframework.web.util; UriBuilder; true; port; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | -| 48 | Summary: org.springframework.web.util; UriBuilder; true; port; ; ; Argument[this]; ReturnValue; value; manual | -| 49 | Summary: org.springframework.web.util; UriBuilder; true; query; ; ; Argument[0]; Argument[this]; taint; manual | -| 50 | Summary: org.springframework.web.util; UriBuilder; true; query; ; ; Argument[this]; ReturnValue; value; manual | -| 51 | Summary: org.springframework.web.util; UriBuilder; true; queryParam; (String,Collection); ; Argument[1].Element; Argument[this]; taint; manual | -| 52 | Summary: org.springframework.web.util; UriBuilder; true; queryParam; (String,Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | -| 53 | Summary: org.springframework.web.util; UriBuilder; true; queryParam; ; ; Argument[0]; Argument[this]; taint; manual | -| 54 | Summary: org.springframework.web.util; UriBuilder; true; queryParam; ; ; Argument[this]; ReturnValue; value; manual | -| 55 | Summary: org.springframework.web.util; UriBuilder; true; queryParamIfPresent; ; ; Argument[0]; Argument[this]; taint; manual | -| 56 | Summary: org.springframework.web.util; UriBuilder; true; queryParamIfPresent; ; ; Argument[1].Element; Argument[this]; taint; manual | -| 57 | Summary: org.springframework.web.util; UriBuilder; true; queryParamIfPresent; ; ; Argument[this]; ReturnValue; value; manual | -| 58 | Summary: org.springframework.web.util; UriBuilder; true; queryParams; ; ; Argument[0].MapKey; Argument[this]; taint; manual | -| 59 | Summary: org.springframework.web.util; UriBuilder; true; queryParams; ; ; Argument[0].MapValue.Element; Argument[this]; taint; manual | -| 60 | Summary: org.springframework.web.util; UriBuilder; true; queryParams; ; ; Argument[this]; ReturnValue; value; manual | -| 61 | Summary: org.springframework.web.util; UriBuilder; true; replacePath; ; ; Argument[0]; Argument[this]; taint; manual | -| 62 | Summary: org.springframework.web.util; UriBuilder; true; replacePath; ; ; Argument[this]; ReturnValue; value; manual | -| 63 | Summary: org.springframework.web.util; UriBuilder; true; replaceQuery; ; ; Argument[0]; Argument[this]; taint; manual | -| 64 | Summary: org.springframework.web.util; UriBuilder; true; replaceQuery; ; ; Argument[this]; ReturnValue; value; manual | -| 65 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParam; (String,Collection); ; Argument[1].Element; Argument[this]; taint; manual | -| 66 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParam; (String,Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | -| 67 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParam; ; ; Argument[0]; Argument[this]; taint; manual | -| 68 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParam; ; ; Argument[this]; ReturnValue; value; manual | -| 69 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParams; ; ; Argument[0].MapKey; Argument[this]; taint; manual | -| 70 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParams; ; ; Argument[0].MapValue.Element; Argument[this]; taint; manual | -| 71 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParams; ; ; Argument[this]; ReturnValue; value; manual | -| 72 | Summary: org.springframework.web.util; UriBuilder; true; scheme; ; ; Argument[0]; Argument[this]; taint; manual | -| 73 | Summary: org.springframework.web.util; UriBuilder; true; scheme; ; ; Argument[this]; ReturnValue; value; manual | -| 74 | Summary: org.springframework.web.util; UriBuilder; true; userInfo; ; ; Argument[0]; Argument[this]; taint; manual | -| 75 | Summary: org.springframework.web.util; UriBuilder; true; userInfo; ; ; Argument[this]; ReturnValue; value; manual | -| 76 | Summary: org.springframework.web.util; UriBuilderFactory; true; builder; ; ; Argument[this]; ReturnValue; taint; manual | -| 77 | Summary: org.springframework.web.util; UriBuilderFactory; true; uriString; ; ; Argument[0]; ReturnValue; taint; manual | -| 78 | Summary: org.springframework.web.util; UriBuilderFactory; true; uriString; ; ; Argument[this]; ReturnValue; taint; manual | -| 79 | Summary: org.springframework.web.util; UriComponents$UriTemplateVariables; true; getValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | -| 80 | Summary: org.springframework.web.util; UriComponents; false; encode; ; ; Argument[this]; ReturnValue; taint; manual | -| 81 | Summary: org.springframework.web.util; UriComponents; false; expand; (Map); ; Argument[0].MapValue; ReturnValue; taint; manual | -| 82 | Summary: org.springframework.web.util; UriComponents; false; expand; (Object[]); ; Argument[0].ArrayElement; ReturnValue; taint; manual | -| 83 | Summary: org.springframework.web.util; UriComponents; false; expand; (UriComponents$UriTemplateVariables); ; Argument[0].MapValue; ReturnValue; taint; manual | -| 84 | Summary: org.springframework.web.util; UriComponents; false; getFragment; ; ; Argument[this]; ReturnValue; taint; manual | -| 85 | Summary: org.springframework.web.util; UriComponents; false; getHost; ; ; Argument[this]; ReturnValue; taint; manual | -| 86 | Summary: org.springframework.web.util; UriComponents; false; getPath; ; ; Argument[this]; ReturnValue; taint; manual | -| 87 | Summary: org.springframework.web.util; UriComponents; false; getPathSegments; ; ; Argument[this]; ReturnValue; taint; manual | -| 88 | Summary: org.springframework.web.util; UriComponents; false; getQuery; ; ; Argument[this]; ReturnValue; taint; manual | -| 89 | Summary: org.springframework.web.util; UriComponents; false; getQueryParams; ; ; Argument[this]; ReturnValue.MapKey; taint; manual | -| 90 | Summary: org.springframework.web.util; UriComponents; false; getQueryParams; ; ; Argument[this]; ReturnValue.MapValue.Element; taint; manual | -| 91 | Summary: org.springframework.web.util; UriComponents; false; getScheme; ; ; Argument[this]; ReturnValue; taint; manual | -| 92 | Summary: org.springframework.web.util; UriComponents; false; getSchemeSpecificPart; ; ; Argument[this]; ReturnValue; taint; manual | -| 93 | Summary: org.springframework.web.util; UriComponents; false; getUserInfo; ; ; Argument[this]; ReturnValue; taint; manual | -| 94 | Summary: org.springframework.web.util; UriComponents; false; normalize; ; ; Argument[this]; ReturnValue; taint; manual | -| 95 | Summary: org.springframework.web.util; UriComponents; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | -| 96 | Summary: org.springframework.web.util; UriComponents; false; toUri; ; ; Argument[this]; ReturnValue; taint; manual | -| 97 | Summary: org.springframework.web.util; UriComponents; false; toUriString; ; ; Argument[this]; ReturnValue; taint; manual | +| 37 | Summary: org.springframework.web.util; UriBuilder; true; build; ; ; Argument[this]; ReturnValue; taint; manual | +| 38 | Summary: org.springframework.web.util; UriBuilder; true; fragment; ; ; Argument[0]; Argument[this]; taint; manual | +| 39 | Summary: org.springframework.web.util; UriBuilder; true; fragment; ; ; Argument[this]; ReturnValue; value; manual | +| 40 | Summary: org.springframework.web.util; UriBuilder; true; host; ; ; Argument[0]; Argument[this]; taint; manual | +| 41 | Summary: org.springframework.web.util; UriBuilder; true; host; ; ; Argument[this]; ReturnValue; value; manual | +| 42 | Summary: org.springframework.web.util; UriBuilder; true; path; ; ; Argument[0]; Argument[this]; taint; manual | +| 43 | Summary: org.springframework.web.util; UriBuilder; true; path; ; ; Argument[this]; ReturnValue; value; manual | +| 44 | Summary: org.springframework.web.util; UriBuilder; true; pathSegment; ; ; Argument[0].ArrayElement; Argument[this]; taint; manual | +| 45 | Summary: org.springframework.web.util; UriBuilder; true; pathSegment; ; ; Argument[this]; ReturnValue; value; manual | +| 46 | Summary: org.springframework.web.util; UriBuilder; true; port; (java.lang.String); ; Argument[0]; Argument[this]; taint; manual | +| 47 | Summary: org.springframework.web.util; UriBuilder; true; port; ; ; Argument[this]; ReturnValue; value; manual | +| 48 | Summary: org.springframework.web.util; UriBuilder; true; query; ; ; Argument[0]; Argument[this]; taint; manual | +| 49 | Summary: org.springframework.web.util; UriBuilder; true; query; ; ; Argument[this]; ReturnValue; value; manual | +| 50 | Summary: org.springframework.web.util; UriBuilder; true; queryParam; (String,Collection); ; Argument[1].Element; Argument[this]; taint; manual | +| 51 | Summary: org.springframework.web.util; UriBuilder; true; queryParam; (String,Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | +| 52 | Summary: org.springframework.web.util; UriBuilder; true; queryParam; ; ; Argument[0]; Argument[this]; taint; manual | +| 53 | Summary: org.springframework.web.util; UriBuilder; true; queryParam; ; ; Argument[this]; ReturnValue; value; manual | +| 54 | Summary: org.springframework.web.util; UriBuilder; true; queryParamIfPresent; ; ; Argument[0]; Argument[this]; taint; manual | +| 55 | Summary: org.springframework.web.util; UriBuilder; true; queryParamIfPresent; ; ; Argument[1].Element; Argument[this]; taint; manual | +| 56 | Summary: org.springframework.web.util; UriBuilder; true; queryParamIfPresent; ; ; Argument[this]; ReturnValue; value; manual | +| 57 | Summary: org.springframework.web.util; UriBuilder; true; queryParams; ; ; Argument[0].MapKey; Argument[this]; taint; manual | +| 58 | Summary: org.springframework.web.util; UriBuilder; true; queryParams; ; ; Argument[0].MapValue.Element; Argument[this]; taint; manual | +| 59 | Summary: org.springframework.web.util; UriBuilder; true; queryParams; ; ; Argument[this]; ReturnValue; value; manual | +| 60 | Summary: org.springframework.web.util; UriBuilder; true; replacePath; ; ; Argument[0]; Argument[this]; taint; manual | +| 61 | Summary: org.springframework.web.util; UriBuilder; true; replacePath; ; ; Argument[this]; ReturnValue; value; manual | +| 62 | Summary: org.springframework.web.util; UriBuilder; true; replaceQuery; ; ; Argument[0]; Argument[this]; taint; manual | +| 63 | Summary: org.springframework.web.util; UriBuilder; true; replaceQuery; ; ; Argument[this]; ReturnValue; value; manual | +| 64 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParam; (String,Collection); ; Argument[1].Element; Argument[this]; taint; manual | +| 65 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParam; (String,Object[]); ; Argument[1].ArrayElement; Argument[this]; taint; manual | +| 66 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParam; ; ; Argument[0]; Argument[this]; taint; manual | +| 67 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParam; ; ; Argument[this]; ReturnValue; value; manual | +| 68 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParams; ; ; Argument[0].MapKey; Argument[this]; taint; manual | +| 69 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParams; ; ; Argument[0].MapValue.Element; Argument[this]; taint; manual | +| 70 | Summary: org.springframework.web.util; UriBuilder; true; replaceQueryParams; ; ; Argument[this]; ReturnValue; value; manual | +| 71 | Summary: org.springframework.web.util; UriBuilder; true; scheme; ; ; Argument[0]; Argument[this]; taint; manual | +| 72 | Summary: org.springframework.web.util; UriBuilder; true; scheme; ; ; Argument[this]; ReturnValue; value; manual | +| 73 | Summary: org.springframework.web.util; UriBuilder; true; userInfo; ; ; Argument[0]; Argument[this]; taint; manual | +| 74 | Summary: org.springframework.web.util; UriBuilder; true; userInfo; ; ; Argument[this]; ReturnValue; value; manual | +| 75 | Summary: org.springframework.web.util; UriBuilderFactory; true; builder; ; ; Argument[this]; ReturnValue; taint; manual | +| 76 | Summary: org.springframework.web.util; UriBuilderFactory; true; uriString; ; ; Argument[this,0]; ReturnValue; taint; manual | +| 77 | Summary: org.springframework.web.util; UriComponents$UriTemplateVariables; true; getValue; ; ; Argument[this].MapValue; ReturnValue; value; manual | +| 78 | Summary: org.springframework.web.util; UriComponents; false; encode; ; ; Argument[this]; ReturnValue; taint; manual | +| 79 | Summary: org.springframework.web.util; UriComponents; false; expand; (Map); ; Argument[0].MapValue; ReturnValue; taint; manual | +| 80 | Summary: org.springframework.web.util; UriComponents; false; expand; (Object[]); ; Argument[0].ArrayElement; ReturnValue; taint; manual | +| 81 | Summary: org.springframework.web.util; UriComponents; false; expand; (UriComponents$UriTemplateVariables); ; Argument[0].MapValue; ReturnValue; taint; manual | +| 82 | Summary: org.springframework.web.util; UriComponents; false; getFragment; ; ; Argument[this]; ReturnValue; taint; manual | +| 83 | Summary: org.springframework.web.util; UriComponents; false; getHost; ; ; Argument[this]; ReturnValue; taint; manual | +| 84 | Summary: org.springframework.web.util; UriComponents; false; getPath; ; ; Argument[this]; ReturnValue; taint; manual | +| 85 | Summary: org.springframework.web.util; UriComponents; false; getPathSegments; ; ; Argument[this]; ReturnValue; taint; manual | +| 86 | Summary: org.springframework.web.util; UriComponents; false; getQuery; ; ; Argument[this]; ReturnValue; taint; manual | +| 87 | Summary: org.springframework.web.util; UriComponents; false; getQueryParams; ; ; Argument[this]; ReturnValue.MapKey; taint; manual | +| 88 | Summary: org.springframework.web.util; UriComponents; false; getQueryParams; ; ; Argument[this]; ReturnValue.MapValue.Element; taint; manual | +| 89 | Summary: org.springframework.web.util; UriComponents; false; getScheme; ; ; Argument[this]; ReturnValue; taint; manual | +| 90 | Summary: org.springframework.web.util; UriComponents; false; getSchemeSpecificPart; ; ; Argument[this]; ReturnValue; taint; manual | +| 91 | Summary: org.springframework.web.util; UriComponents; false; getUserInfo; ; ; Argument[this]; ReturnValue; taint; manual | +| 92 | Summary: org.springframework.web.util; UriComponents; false; normalize; ; ; Argument[this]; ReturnValue; taint; manual | +| 93 | Summary: org.springframework.web.util; UriComponents; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | +| 94 | Summary: org.springframework.web.util; UriComponents; false; toUri; ; ; Argument[this]; ReturnValue; taint; manual | +| 95 | Summary: org.springframework.web.util; UriComponents; false; toUriString; ; ; Argument[this]; ReturnValue; taint; manual | +| 96 | Summary: org.springframework.web.util; UriComponentsBuilder; false; build; (Map); ; Argument[0].MapValue; ReturnValue; taint; manual | +| 97 | Summary: org.springframework.web.util; UriComponentsBuilder; false; build; (Object[]); ; Argument[0].ArrayElement; ReturnValue; taint; manual | | 98 | Summary: org.springframework.web.util; UriComponentsBuilder; false; build; ; ; Argument[this]; ReturnValue; taint; manual | | 99 | Summary: org.springframework.web.util; UriComponentsBuilder; false; buildAndExpand; (Map); ; Argument[0].MapValue; ReturnValue; taint; manual | | 100 | Summary: org.springframework.web.util; UriComponentsBuilder; false; buildAndExpand; (Object[]); ; Argument[0].ArrayElement; ReturnValue; taint; manual | @@ -245,7 +245,6 @@ edges | Test.java:141:34:141:67 | (...)... : DefaultUriBuilderFactory | Test.java:142:10:142:11 | in : DefaultUriBuilderFactory | provenance | | | Test.java:141:60:141:67 | source(...) : Object | Test.java:141:34:141:67 | (...)... : DefaultUriBuilderFactory | provenance | | | Test.java:142:10:142:11 | in : DefaultUriBuilderFactory | Test.java:142:10:142:21 | builder(...) : UriBuilder | provenance | MaD:21 | -| Test.java:142:10:142:11 | in : DefaultUriBuilderFactory | Test.java:142:10:142:21 | builder(...) : UriBuilder | provenance | MaD:76 | | Test.java:142:10:142:21 | builder(...) : UriBuilder | Test.java:143:9:143:11 | out | provenance | | | Test.java:148:13:148:37 | newMapWithValue(...) : Map [] : Object | Test.java:150:40:150:41 | in : Map [] : Object | provenance | | | Test.java:148:29:148:36 | source(...) : Object | Test.java:53:22:53:35 | element : Object | provenance | | @@ -285,7 +284,6 @@ edges | Test.java:208:34:208:67 | (...)... : DefaultUriBuilderFactory | Test.java:209:10:209:11 | in : DefaultUriBuilderFactory | provenance | | | Test.java:208:60:208:67 | source(...) : Object | Test.java:208:34:208:67 | (...)... : DefaultUriBuilderFactory | provenance | | | Test.java:209:10:209:11 | in : DefaultUriBuilderFactory | Test.java:209:10:209:27 | uriString(...) : UriBuilder | provenance | MaD:24 | -| Test.java:209:10:209:11 | in : DefaultUriBuilderFactory | Test.java:209:10:209:27 | uriString(...) : UriBuilder | provenance | MaD:78 | | Test.java:209:10:209:27 | uriString(...) : UriBuilder | Test.java:210:9:210:11 | out | provenance | | | Test.java:215:16:215:31 | (...)... : String | Test.java:216:33:216:34 | in : String | provenance | | | Test.java:215:24:215:31 | source(...) : Object | Test.java:215:16:215:31 | (...)... : String | provenance | | @@ -339,565 +337,563 @@ edges | Test.java:294:25:294:26 | in : Map [] : Object | Test.java:294:10:294:27 | build(...) : URI | provenance | MaD:36 | | Test.java:300:20:300:39 | (...)... : UriBuilder | Test.java:301:10:301:11 | in : UriBuilder | provenance | | | Test.java:300:32:300:39 | source(...) : Object | Test.java:300:20:300:39 | (...)... : UriBuilder | provenance | | -| Test.java:301:10:301:11 | in : UriBuilder | Test.java:301:10:301:24 | build(...) : URI | provenance | MaD:38 | +| Test.java:301:10:301:11 | in : UriBuilder | Test.java:301:10:301:24 | build(...) : URI | provenance | MaD:37 | | Test.java:301:10:301:24 | build(...) : URI | Test.java:302:9:302:11 | out | provenance | | | Test.java:307:20:307:39 | (...)... : UriBuilder | Test.java:308:10:308:11 | in : UriBuilder | provenance | | | Test.java:307:32:307:39 | source(...) : Object | Test.java:307:20:307:39 | (...)... : UriBuilder | provenance | | -| Test.java:308:10:308:11 | in : UriBuilder | Test.java:308:10:308:19 | build(...) : URI | provenance | MaD:38 | +| Test.java:308:10:308:11 | in : UriBuilder | Test.java:308:10:308:19 | build(...) : URI | provenance | MaD:37 | | Test.java:308:10:308:19 | build(...) : URI | Test.java:309:9:309:11 | out | provenance | | | Test.java:314:20:314:39 | (...)... : UriBuilder | Test.java:315:10:315:11 | in : UriBuilder | provenance | | | Test.java:314:32:314:39 | source(...) : Object | Test.java:314:20:314:39 | (...)... : UriBuilder | provenance | | -| Test.java:315:10:315:11 | in : UriBuilder | Test.java:315:10:315:33 | build(...) : URI | provenance | MaD:38 | +| Test.java:315:10:315:11 | in : UriBuilder | Test.java:315:10:315:33 | build(...) : URI | provenance | MaD:37 | | Test.java:315:10:315:33 | build(...) : URI | Test.java:316:9:316:11 | out | provenance | | | Test.java:321:20:321:39 | (...)... : UriBuilder | Test.java:322:10:322:11 | in : UriBuilder | provenance | | | Test.java:321:32:321:39 | source(...) : Object | Test.java:321:20:321:39 | (...)... : UriBuilder | provenance | | -| Test.java:322:10:322:11 | in : UriBuilder | Test.java:322:10:322:28 | build(...) : URI | provenance | MaD:38 | +| Test.java:322:10:322:11 | in : UriBuilder | Test.java:322:10:322:28 | build(...) : URI | provenance | MaD:37 | | Test.java:322:10:322:28 | build(...) : URI | Test.java:323:9:323:11 | out | provenance | | | Test.java:328:20:328:39 | (...)... : UriBuilder | Test.java:329:10:329:11 | in : UriBuilder | provenance | | | Test.java:328:32:328:39 | source(...) : Object | Test.java:328:20:328:39 | (...)... : UriBuilder | provenance | | -| Test.java:329:10:329:11 | in : UriBuilder | Test.java:329:10:329:26 | fragment(...) : UriBuilder | provenance | MaD:40 | +| Test.java:329:10:329:11 | in : UriBuilder | Test.java:329:10:329:26 | fragment(...) : UriBuilder | provenance | MaD:39 | | Test.java:329:10:329:26 | fragment(...) : UriBuilder | Test.java:330:9:330:11 | out | provenance | | | Test.java:335:20:335:39 | (...)... : UriBuilder | Test.java:336:10:336:11 | in : UriBuilder | provenance | | | Test.java:335:32:335:39 | source(...) : Object | Test.java:335:20:335:39 | (...)... : UriBuilder | provenance | | -| Test.java:336:10:336:11 | in : UriBuilder | Test.java:336:10:336:26 | fragment(...) : UriBuilder | provenance | MaD:40 | +| Test.java:336:10:336:11 | in : UriBuilder | Test.java:336:10:336:26 | fragment(...) : UriBuilder | provenance | MaD:39 | | Test.java:336:10:336:26 | fragment(...) : UriBuilder | Test.java:337:9:337:11 | out | provenance | | | Test.java:342:16:342:31 | (...)... : String | Test.java:343:17:343:18 | in : String | provenance | | | Test.java:342:24:342:31 | source(...) : Object | Test.java:342:16:342:31 | (...)... : String | provenance | | | Test.java:343:4:343:6 | out [post update] : UriBuilder | Test.java:344:9:344:11 | out | provenance | | -| Test.java:343:17:343:18 | in : String | Test.java:343:4:343:6 | out [post update] : UriBuilder | provenance | MaD:39 | +| Test.java:343:17:343:18 | in : String | Test.java:343:4:343:6 | out [post update] : UriBuilder | provenance | MaD:38 | | Test.java:349:16:349:31 | (...)... : String | Test.java:350:17:350:18 | in : String | provenance | | | Test.java:349:24:349:31 | source(...) : Object | Test.java:349:16:349:31 | (...)... : String | provenance | | | Test.java:350:4:350:6 | out [post update] : UriBuilder | Test.java:351:9:351:11 | out | provenance | | -| Test.java:350:17:350:18 | in : String | Test.java:350:4:350:6 | out [post update] : UriBuilder | provenance | MaD:39 | +| Test.java:350:17:350:18 | in : String | Test.java:350:4:350:6 | out [post update] : UriBuilder | provenance | MaD:38 | | Test.java:356:16:356:31 | (...)... : String | Test.java:358:28:358:29 | in : String | provenance | | | Test.java:356:24:356:31 | source(...) : Object | Test.java:356:16:356:31 | (...)... : String | provenance | | | Test.java:358:10:358:30 | fragment(...) : UriBuilder | Test.java:359:9:359:11 | out | provenance | | -| Test.java:358:28:358:29 | in : String | Test.java:358:10:358:30 | fragment(...) : UriBuilder | provenance | MaD:39+MaD:40 | +| Test.java:358:28:358:29 | in : String | Test.java:358:10:358:30 | fragment(...) : UriBuilder | provenance | MaD:38+MaD:39 | | Test.java:364:16:364:31 | (...)... : String | Test.java:366:28:366:29 | in : String | provenance | | | Test.java:364:24:364:31 | source(...) : Object | Test.java:364:16:364:31 | (...)... : String | provenance | | | Test.java:366:10:366:30 | fragment(...) : UriBuilder | Test.java:367:9:367:11 | out | provenance | | -| Test.java:366:28:366:29 | in : String | Test.java:366:10:366:30 | fragment(...) : UriBuilder | provenance | MaD:39+MaD:40 | +| Test.java:366:28:366:29 | in : String | Test.java:366:10:366:30 | fragment(...) : UriBuilder | provenance | MaD:38+MaD:39 | | Test.java:372:20:372:39 | (...)... : UriBuilder | Test.java:373:10:373:11 | in : UriBuilder | provenance | | | Test.java:372:32:372:39 | source(...) : Object | Test.java:372:20:372:39 | (...)... : UriBuilder | provenance | | -| Test.java:373:10:373:11 | in : UriBuilder | Test.java:373:10:373:22 | host(...) : UriBuilder | provenance | MaD:42 | +| Test.java:373:10:373:11 | in : UriBuilder | Test.java:373:10:373:22 | host(...) : UriBuilder | provenance | MaD:41 | | Test.java:373:10:373:22 | host(...) : UriBuilder | Test.java:374:9:374:11 | out | provenance | | | Test.java:379:20:379:39 | (...)... : UriBuilder | Test.java:380:10:380:11 | in : UriBuilder | provenance | | | Test.java:379:32:379:39 | source(...) : Object | Test.java:379:20:379:39 | (...)... : UriBuilder | provenance | | -| Test.java:380:10:380:11 | in : UriBuilder | Test.java:380:10:380:22 | host(...) : UriBuilder | provenance | MaD:42 | +| Test.java:380:10:380:11 | in : UriBuilder | Test.java:380:10:380:22 | host(...) : UriBuilder | provenance | MaD:41 | | Test.java:380:10:380:22 | host(...) : UriBuilder | Test.java:381:9:381:11 | out | provenance | | | Test.java:386:16:386:31 | (...)... : String | Test.java:388:24:388:25 | in : String | provenance | | | Test.java:386:24:386:31 | source(...) : Object | Test.java:386:16:386:31 | (...)... : String | provenance | | | Test.java:388:10:388:26 | host(...) : UriBuilder | Test.java:389:9:389:11 | out | provenance | | -| Test.java:388:24:388:25 | in : String | Test.java:388:10:388:26 | host(...) : UriBuilder | provenance | MaD:41+MaD:42 | +| Test.java:388:24:388:25 | in : String | Test.java:388:10:388:26 | host(...) : UriBuilder | provenance | MaD:40+MaD:41 | | Test.java:394:16:394:31 | (...)... : String | Test.java:396:24:396:25 | in : String | provenance | | | Test.java:394:24:394:31 | source(...) : Object | Test.java:394:16:394:31 | (...)... : String | provenance | | | Test.java:396:10:396:26 | host(...) : UriBuilder | Test.java:397:9:397:11 | out | provenance | | -| Test.java:396:24:396:25 | in : String | Test.java:396:10:396:26 | host(...) : UriBuilder | provenance | MaD:41+MaD:42 | +| Test.java:396:24:396:25 | in : String | Test.java:396:10:396:26 | host(...) : UriBuilder | provenance | MaD:40+MaD:41 | | Test.java:402:20:402:39 | (...)... : UriBuilder | Test.java:403:10:403:11 | in : UriBuilder | provenance | | | Test.java:402:32:402:39 | source(...) : Object | Test.java:402:20:402:39 | (...)... : UriBuilder | provenance | | -| Test.java:403:10:403:11 | in : UriBuilder | Test.java:403:10:403:22 | path(...) : UriBuilder | provenance | MaD:44 | +| Test.java:403:10:403:11 | in : UriBuilder | Test.java:403:10:403:22 | path(...) : UriBuilder | provenance | MaD:43 | | Test.java:403:10:403:22 | path(...) : UriBuilder | Test.java:404:9:404:11 | out | provenance | | | Test.java:409:20:409:39 | (...)... : UriBuilder | Test.java:410:10:410:11 | in : UriBuilder | provenance | | | Test.java:409:32:409:39 | source(...) : Object | Test.java:409:20:409:39 | (...)... : UriBuilder | provenance | | -| Test.java:410:10:410:11 | in : UriBuilder | Test.java:410:10:410:22 | path(...) : UriBuilder | provenance | MaD:44 | +| Test.java:410:10:410:11 | in : UriBuilder | Test.java:410:10:410:22 | path(...) : UriBuilder | provenance | MaD:43 | | Test.java:410:10:410:22 | path(...) : UriBuilder | Test.java:411:9:411:11 | out | provenance | | | Test.java:416:16:416:31 | (...)... : String | Test.java:417:13:417:14 | in : String | provenance | | | Test.java:416:24:416:31 | source(...) : Object | Test.java:416:16:416:31 | (...)... : String | provenance | | | Test.java:417:4:417:6 | out [post update] : UriBuilder | Test.java:418:9:418:11 | out | provenance | | -| Test.java:417:13:417:14 | in : String | Test.java:417:4:417:6 | out [post update] : UriBuilder | provenance | MaD:43 | +| Test.java:417:13:417:14 | in : String | Test.java:417:4:417:6 | out [post update] : UriBuilder | provenance | MaD:42 | | Test.java:423:16:423:31 | (...)... : String | Test.java:424:13:424:14 | in : String | provenance | | | Test.java:423:24:423:31 | source(...) : Object | Test.java:423:16:423:31 | (...)... : String | provenance | | | Test.java:424:4:424:6 | out [post update] : UriBuilder | Test.java:425:9:425:11 | out | provenance | | -| Test.java:424:13:424:14 | in : String | Test.java:424:4:424:6 | out [post update] : UriBuilder | provenance | MaD:43 | +| Test.java:424:13:424:14 | in : String | Test.java:424:4:424:6 | out [post update] : UriBuilder | provenance | MaD:42 | | Test.java:430:16:430:31 | (...)... : String | Test.java:432:24:432:25 | in : String | provenance | | | Test.java:430:24:430:31 | source(...) : Object | Test.java:430:16:430:31 | (...)... : String | provenance | | | Test.java:432:10:432:26 | path(...) : UriBuilder | Test.java:433:9:433:11 | out | provenance | | -| Test.java:432:24:432:25 | in : String | Test.java:432:10:432:26 | path(...) : UriBuilder | provenance | MaD:43+MaD:44 | +| Test.java:432:24:432:25 | in : String | Test.java:432:10:432:26 | path(...) : UriBuilder | provenance | MaD:42+MaD:43 | | Test.java:438:16:438:31 | (...)... : String | Test.java:440:24:440:25 | in : String | provenance | | | Test.java:438:24:438:31 | source(...) : Object | Test.java:438:16:438:31 | (...)... : String | provenance | | | Test.java:440:10:440:26 | path(...) : UriBuilder | Test.java:441:9:441:11 | out | provenance | | -| Test.java:440:24:440:25 | in : String | Test.java:440:10:440:26 | path(...) : UriBuilder | provenance | MaD:43+MaD:44 | +| Test.java:440:24:440:25 | in : String | Test.java:440:10:440:26 | path(...) : UriBuilder | provenance | MaD:42+MaD:43 | | Test.java:446:20:446:39 | (...)... : UriBuilder | Test.java:447:10:447:11 | in : UriBuilder | provenance | | | Test.java:446:32:446:39 | source(...) : Object | Test.java:446:20:446:39 | (...)... : UriBuilder | provenance | | -| Test.java:447:10:447:11 | in : UriBuilder | Test.java:447:10:447:39 | pathSegment(...) : UriBuilder | provenance | MaD:46 | +| Test.java:447:10:447:11 | in : UriBuilder | Test.java:447:10:447:39 | pathSegment(...) : UriBuilder | provenance | MaD:45 | | Test.java:447:10:447:39 | pathSegment(...) : UriBuilder | Test.java:448:9:448:11 | out | provenance | | | Test.java:453:20:453:39 | (...)... : UriBuilder | Test.java:454:10:454:11 | in : UriBuilder | provenance | | | Test.java:453:32:453:39 | source(...) : Object | Test.java:453:20:453:39 | (...)... : UriBuilder | provenance | | -| Test.java:454:10:454:11 | in : UriBuilder | Test.java:454:10:454:39 | pathSegment(...) : UriBuilder | provenance | MaD:46 | +| Test.java:454:10:454:11 | in : UriBuilder | Test.java:454:10:454:39 | pathSegment(...) : UriBuilder | provenance | MaD:45 | | Test.java:454:10:454:39 | pathSegment(...) : UriBuilder | Test.java:455:9:455:11 | out | provenance | | | Test.java:460:18:460:47 | {...} : String[] [[]] : String | Test.java:461:20:461:31 | (...)... : String[] [[]] : String | provenance | | | Test.java:460:31:460:46 | (...)... : String | Test.java:460:18:460:47 | {...} : String[] [[]] : String | provenance | | | Test.java:460:39:460:46 | source(...) : Object | Test.java:460:31:460:46 | (...)... : String | provenance | | | Test.java:461:4:461:6 | out [post update] : UriBuilder | Test.java:462:9:462:11 | out | provenance | | -| Test.java:461:20:461:31 | (...)... : String[] [[]] : String | Test.java:461:4:461:6 | out [post update] : UriBuilder | provenance | MaD:45 | +| Test.java:461:20:461:31 | (...)... : String[] [[]] : String | Test.java:461:4:461:6 | out [post update] : UriBuilder | provenance | MaD:44 | | Test.java:467:18:467:47 | {...} : String[] [[]] : String | Test.java:468:20:468:31 | (...)... : String[] [[]] : String | provenance | | | Test.java:467:31:467:46 | (...)... : String | Test.java:467:18:467:47 | {...} : String[] [[]] : String | provenance | | | Test.java:467:39:467:46 | source(...) : Object | Test.java:467:31:467:46 | (...)... : String | provenance | | | Test.java:468:4:468:6 | out [post update] : UriBuilder | Test.java:469:9:469:11 | out | provenance | | -| Test.java:468:20:468:31 | (...)... : String[] [[]] : String | Test.java:468:4:468:6 | out [post update] : UriBuilder | provenance | MaD:45 | +| Test.java:468:20:468:31 | (...)... : String[] [[]] : String | Test.java:468:4:468:6 | out [post update] : UriBuilder | provenance | MaD:44 | | Test.java:474:18:474:47 | {...} : String[] [[]] : String | Test.java:476:31:476:42 | (...)... : String[] [[]] : String | provenance | | | Test.java:474:31:474:46 | (...)... : String | Test.java:474:18:474:47 | {...} : String[] [[]] : String | provenance | | | Test.java:474:39:474:46 | source(...) : Object | Test.java:474:31:474:46 | (...)... : String | provenance | | | Test.java:476:10:476:43 | pathSegment(...) : UriBuilder | Test.java:477:9:477:11 | out | provenance | | -| Test.java:476:31:476:42 | (...)... : String[] [[]] : String | Test.java:476:10:476:43 | pathSegment(...) : UriBuilder | provenance | MaD:45+MaD:46 | +| Test.java:476:31:476:42 | (...)... : String[] [[]] : String | Test.java:476:10:476:43 | pathSegment(...) : UriBuilder | provenance | MaD:44+MaD:45 | | Test.java:482:18:482:47 | {...} : String[] [[]] : String | Test.java:484:31:484:42 | (...)... : String[] [[]] : String | provenance | | | Test.java:482:31:482:46 | (...)... : String | Test.java:482:18:482:47 | {...} : String[] [[]] : String | provenance | | | Test.java:482:39:482:46 | source(...) : Object | Test.java:482:31:482:46 | (...)... : String | provenance | | | Test.java:484:10:484:43 | pathSegment(...) : UriBuilder | Test.java:485:9:485:11 | out | provenance | | -| Test.java:484:31:484:42 | (...)... : String[] [[]] : String | Test.java:484:10:484:43 | pathSegment(...) : UriBuilder | provenance | MaD:45+MaD:46 | +| Test.java:484:31:484:42 | (...)... : String[] [[]] : String | Test.java:484:10:484:43 | pathSegment(...) : UriBuilder | provenance | MaD:44+MaD:45 | | Test.java:490:16:490:31 | (...)... : String | Test.java:491:13:491:14 | in : String | provenance | | | Test.java:490:24:490:31 | source(...) : Object | Test.java:490:16:490:31 | (...)... : String | provenance | | | Test.java:491:4:491:6 | out [post update] : UriBuilder | Test.java:492:9:492:11 | out | provenance | | -| Test.java:491:13:491:14 | in : String | Test.java:491:4:491:6 | out [post update] : UriBuilder | provenance | MaD:47 | +| Test.java:491:13:491:14 | in : String | Test.java:491:4:491:6 | out [post update] : UriBuilder | provenance | MaD:46 | | Test.java:497:16:497:31 | (...)... : String | Test.java:498:13:498:14 | in : String | provenance | | | Test.java:497:24:497:31 | source(...) : Object | Test.java:497:16:497:31 | (...)... : String | provenance | | | Test.java:498:4:498:6 | out [post update] : UriBuilder | Test.java:499:9:499:11 | out | provenance | | -| Test.java:498:13:498:14 | in : String | Test.java:498:4:498:6 | out [post update] : UriBuilder | provenance | MaD:47 | +| Test.java:498:13:498:14 | in : String | Test.java:498:4:498:6 | out [post update] : UriBuilder | provenance | MaD:46 | | Test.java:504:16:504:31 | (...)... : String | Test.java:506:24:506:25 | in : String | provenance | | | Test.java:504:24:504:31 | source(...) : Object | Test.java:504:16:504:31 | (...)... : String | provenance | | | Test.java:506:10:506:26 | port(...) : UriBuilder | Test.java:507:9:507:11 | out | provenance | | -| Test.java:506:24:506:25 | in : String | Test.java:506:10:506:26 | port(...) : UriBuilder | provenance | MaD:47+MaD:48 | +| Test.java:506:24:506:25 | in : String | Test.java:506:10:506:26 | port(...) : UriBuilder | provenance | MaD:46+MaD:47 | | Test.java:512:16:512:31 | (...)... : String | Test.java:514:24:514:25 | in : String | provenance | | | Test.java:512:24:512:31 | source(...) : Object | Test.java:512:16:512:31 | (...)... : String | provenance | | | Test.java:514:10:514:26 | port(...) : UriBuilder | Test.java:515:9:515:11 | out | provenance | | -| Test.java:514:24:514:25 | in : String | Test.java:514:10:514:26 | port(...) : UriBuilder | provenance | MaD:47+MaD:48 | +| Test.java:514:24:514:25 | in : String | Test.java:514:10:514:26 | port(...) : UriBuilder | provenance | MaD:46+MaD:47 | | Test.java:520:20:520:39 | (...)... : UriBuilder | Test.java:521:10:521:11 | in : UriBuilder | provenance | | | Test.java:520:32:520:39 | source(...) : Object | Test.java:520:20:520:39 | (...)... : UriBuilder | provenance | | -| Test.java:521:10:521:11 | in : UriBuilder | Test.java:521:10:521:19 | port(...) : UriBuilder | provenance | MaD:48 | +| Test.java:521:10:521:11 | in : UriBuilder | Test.java:521:10:521:19 | port(...) : UriBuilder | provenance | MaD:47 | | Test.java:521:10:521:19 | port(...) : UriBuilder | Test.java:522:9:522:11 | out | provenance | | | Test.java:527:20:527:39 | (...)... : UriBuilder | Test.java:528:10:528:11 | in : UriBuilder | provenance | | | Test.java:527:32:527:39 | source(...) : Object | Test.java:527:20:527:39 | (...)... : UriBuilder | provenance | | -| Test.java:528:10:528:11 | in : UriBuilder | Test.java:528:10:528:30 | port(...) : UriBuilder | provenance | MaD:48 | +| Test.java:528:10:528:11 | in : UriBuilder | Test.java:528:10:528:30 | port(...) : UriBuilder | provenance | MaD:47 | | Test.java:528:10:528:30 | port(...) : UriBuilder | Test.java:529:9:529:11 | out | provenance | | | Test.java:534:20:534:39 | (...)... : UriBuilder | Test.java:535:10:535:11 | in : UriBuilder | provenance | | | Test.java:534:32:534:39 | source(...) : Object | Test.java:534:20:534:39 | (...)... : UriBuilder | provenance | | -| Test.java:535:10:535:11 | in : UriBuilder | Test.java:535:10:535:19 | port(...) : UriBuilder | provenance | MaD:48 | +| Test.java:535:10:535:11 | in : UriBuilder | Test.java:535:10:535:19 | port(...) : UriBuilder | provenance | MaD:47 | | Test.java:535:10:535:19 | port(...) : UriBuilder | Test.java:536:9:536:11 | out | provenance | | | Test.java:541:20:541:39 | (...)... : UriBuilder | Test.java:542:10:542:11 | in : UriBuilder | provenance | | | Test.java:541:32:541:39 | source(...) : Object | Test.java:541:20:541:39 | (...)... : UriBuilder | provenance | | -| Test.java:542:10:542:11 | in : UriBuilder | Test.java:542:10:542:30 | port(...) : UriBuilder | provenance | MaD:48 | +| Test.java:542:10:542:11 | in : UriBuilder | Test.java:542:10:542:30 | port(...) : UriBuilder | provenance | MaD:47 | | Test.java:542:10:542:30 | port(...) : UriBuilder | Test.java:543:9:543:11 | out | provenance | | | Test.java:548:20:548:39 | (...)... : UriBuilder | Test.java:549:10:549:11 | in : UriBuilder | provenance | | | Test.java:548:32:548:39 | source(...) : Object | Test.java:548:20:548:39 | (...)... : UriBuilder | provenance | | -| Test.java:549:10:549:11 | in : UriBuilder | Test.java:549:10:549:23 | query(...) : UriBuilder | provenance | MaD:50 | +| Test.java:549:10:549:11 | in : UriBuilder | Test.java:549:10:549:23 | query(...) : UriBuilder | provenance | MaD:49 | | Test.java:549:10:549:23 | query(...) : UriBuilder | Test.java:550:9:550:11 | out | provenance | | | Test.java:555:20:555:39 | (...)... : UriBuilder | Test.java:556:10:556:11 | in : UriBuilder | provenance | | | Test.java:555:32:555:39 | source(...) : Object | Test.java:555:20:555:39 | (...)... : UriBuilder | provenance | | -| Test.java:556:10:556:11 | in : UriBuilder | Test.java:556:10:556:23 | query(...) : UriBuilder | provenance | MaD:50 | +| Test.java:556:10:556:11 | in : UriBuilder | Test.java:556:10:556:23 | query(...) : UriBuilder | provenance | MaD:49 | | Test.java:556:10:556:23 | query(...) : UriBuilder | Test.java:557:9:557:11 | out | provenance | | | Test.java:562:16:562:31 | (...)... : String | Test.java:563:14:563:15 | in : String | provenance | | | Test.java:562:24:562:31 | source(...) : Object | Test.java:562:16:562:31 | (...)... : String | provenance | | | Test.java:563:4:563:6 | out [post update] : UriBuilder | Test.java:564:9:564:11 | out | provenance | | -| Test.java:563:14:563:15 | in : String | Test.java:563:4:563:6 | out [post update] : UriBuilder | provenance | MaD:49 | +| Test.java:563:14:563:15 | in : String | Test.java:563:4:563:6 | out [post update] : UriBuilder | provenance | MaD:48 | | Test.java:569:16:569:31 | (...)... : String | Test.java:570:14:570:15 | in : String | provenance | | | Test.java:569:24:569:31 | source(...) : Object | Test.java:569:16:569:31 | (...)... : String | provenance | | | Test.java:570:4:570:6 | out [post update] : UriBuilder | Test.java:571:9:571:11 | out | provenance | | -| Test.java:570:14:570:15 | in : String | Test.java:570:4:570:6 | out [post update] : UriBuilder | provenance | MaD:49 | +| Test.java:570:14:570:15 | in : String | Test.java:570:4:570:6 | out [post update] : UriBuilder | provenance | MaD:48 | | Test.java:576:16:576:31 | (...)... : String | Test.java:578:25:578:26 | in : String | provenance | | | Test.java:576:24:576:31 | source(...) : Object | Test.java:576:16:576:31 | (...)... : String | provenance | | | Test.java:578:10:578:27 | query(...) : UriBuilder | Test.java:579:9:579:11 | out | provenance | | -| Test.java:578:25:578:26 | in : String | Test.java:578:10:578:27 | query(...) : UriBuilder | provenance | MaD:49+MaD:50 | +| Test.java:578:25:578:26 | in : String | Test.java:578:10:578:27 | query(...) : UriBuilder | provenance | MaD:48+MaD:49 | | Test.java:584:16:584:31 | (...)... : String | Test.java:586:25:586:26 | in : String | provenance | | | Test.java:584:24:584:31 | source(...) : Object | Test.java:584:16:584:31 | (...)... : String | provenance | | | Test.java:586:10:586:27 | query(...) : UriBuilder | Test.java:587:9:587:11 | out | provenance | | -| Test.java:586:25:586:26 | in : String | Test.java:586:10:586:27 | query(...) : UriBuilder | provenance | MaD:49+MaD:50 | +| Test.java:586:25:586:26 | in : String | Test.java:586:10:586:27 | query(...) : UriBuilder | provenance | MaD:48+MaD:49 | | Test.java:592:20:592:36 | of(...) : List [] : Object | Test.java:593:33:593:34 | in : List [] : Object | provenance | | | Test.java:592:28:592:35 | source(...) : Object | Test.java:592:20:592:36 | of(...) : List [] : Object | provenance | MaD:4 | | Test.java:593:4:593:6 | out [post update] : UriBuilder | Test.java:594:9:594:11 | out | provenance | | -| Test.java:593:33:593:34 | in : List [] : Object | Test.java:593:4:593:6 | out [post update] : UriBuilder | provenance | MaD:51 | +| Test.java:593:33:593:34 | in : List [] : Object | Test.java:593:4:593:6 | out [post update] : UriBuilder | provenance | MaD:50 | | Test.java:599:20:599:36 | of(...) : List [] : Object | Test.java:600:33:600:34 | in : List [] : Object | provenance | | | Test.java:599:28:599:35 | source(...) : Object | Test.java:599:20:599:36 | of(...) : List [] : Object | provenance | MaD:4 | | Test.java:600:4:600:6 | out [post update] : UriBuilder | Test.java:601:9:601:11 | out | provenance | | -| Test.java:600:33:600:34 | in : List [] : Object | Test.java:600:4:600:6 | out [post update] : UriBuilder | provenance | MaD:51 | +| Test.java:600:33:600:34 | in : List [] : Object | Test.java:600:4:600:6 | out [post update] : UriBuilder | provenance | MaD:50 | | Test.java:606:20:606:36 | of(...) : List [] : Object | Test.java:608:44:608:45 | in : List [] : Object | provenance | | | Test.java:606:28:606:35 | source(...) : Object | Test.java:606:20:606:36 | of(...) : List [] : Object | provenance | MaD:4 | | Test.java:608:10:608:46 | queryParam(...) : UriBuilder | Test.java:609:9:609:11 | out | provenance | | -| Test.java:608:44:608:45 | in : List [] : Object | Test.java:608:10:608:46 | queryParam(...) : UriBuilder | provenance | MaD:51+MaD:54 | +| Test.java:608:44:608:45 | in : List [] : Object | Test.java:608:10:608:46 | queryParam(...) : UriBuilder | provenance | MaD:50+MaD:53 | | Test.java:614:20:614:36 | of(...) : List [] : Object | Test.java:616:44:616:45 | in : List [] : Object | provenance | | | Test.java:614:28:614:35 | source(...) : Object | Test.java:614:20:614:36 | of(...) : List [] : Object | provenance | MaD:4 | | Test.java:616:10:616:46 | queryParam(...) : UriBuilder | Test.java:617:9:617:11 | out | provenance | | -| Test.java:616:44:616:45 | in : List [] : Object | Test.java:616:10:616:46 | queryParam(...) : UriBuilder | provenance | MaD:51+MaD:54 | +| Test.java:616:44:616:45 | in : List [] : Object | Test.java:616:10:616:46 | queryParam(...) : UriBuilder | provenance | MaD:50+MaD:53 | | Test.java:622:18:622:39 | {...} : Object[] [[]] : Object | Test.java:623:33:623:34 | in : Object[] [[]] : Object | provenance | | | Test.java:622:31:622:38 | source(...) : Object | Test.java:622:18:622:39 | {...} : Object[] [[]] : Object | provenance | | | Test.java:623:4:623:6 | out [post update] : UriBuilder | Test.java:624:9:624:11 | out | provenance | | -| Test.java:623:33:623:34 | in : Object[] [[]] : Object | Test.java:623:4:623:6 | out [post update] : UriBuilder | provenance | MaD:52 | +| Test.java:623:33:623:34 | in : Object[] [[]] : Object | Test.java:623:4:623:6 | out [post update] : UriBuilder | provenance | MaD:51 | | Test.java:629:18:629:39 | {...} : Object[] [[]] : Object | Test.java:630:33:630:34 | in : Object[] [[]] : Object | provenance | | | Test.java:629:31:629:38 | source(...) : Object | Test.java:629:18:629:39 | {...} : Object[] [[]] : Object | provenance | | | Test.java:630:4:630:6 | out [post update] : UriBuilder | Test.java:631:9:631:11 | out | provenance | | -| Test.java:630:33:630:34 | in : Object[] [[]] : Object | Test.java:630:4:630:6 | out [post update] : UriBuilder | provenance | MaD:52 | +| Test.java:630:33:630:34 | in : Object[] [[]] : Object | Test.java:630:4:630:6 | out [post update] : UriBuilder | provenance | MaD:51 | | Test.java:636:18:636:39 | {...} : Object[] [[]] : Object | Test.java:638:44:638:45 | in : Object[] [[]] : Object | provenance | | | Test.java:636:31:636:38 | source(...) : Object | Test.java:636:18:636:39 | {...} : Object[] [[]] : Object | provenance | | | Test.java:638:10:638:46 | queryParam(...) : UriBuilder | Test.java:639:9:639:11 | out | provenance | | -| Test.java:638:44:638:45 | in : Object[] [[]] : Object | Test.java:638:10:638:46 | queryParam(...) : UriBuilder | provenance | MaD:52+MaD:54 | +| Test.java:638:44:638:45 | in : Object[] [[]] : Object | Test.java:638:10:638:46 | queryParam(...) : UriBuilder | provenance | MaD:51+MaD:53 | | Test.java:644:18:644:39 | {...} : Object[] [[]] : Object | Test.java:646:44:646:45 | in : Object[] [[]] : Object | provenance | | | Test.java:644:31:644:38 | source(...) : Object | Test.java:644:18:644:39 | {...} : Object[] [[]] : Object | provenance | | | Test.java:646:10:646:46 | queryParam(...) : UriBuilder | Test.java:647:9:647:11 | out | provenance | | -| Test.java:646:44:646:45 | in : Object[] [[]] : Object | Test.java:646:10:646:46 | queryParam(...) : UriBuilder | provenance | MaD:52+MaD:54 | +| Test.java:646:44:646:45 | in : Object[] [[]] : Object | Test.java:646:10:646:46 | queryParam(...) : UriBuilder | provenance | MaD:51+MaD:53 | | Test.java:652:20:652:39 | (...)... : UriBuilder | Test.java:653:10:653:11 | in : UriBuilder | provenance | | | Test.java:652:32:652:39 | source(...) : Object | Test.java:652:20:652:39 | (...)... : UriBuilder | provenance | | -| Test.java:653:10:653:11 | in : UriBuilder | Test.java:653:10:653:52 | queryParam(...) : UriBuilder | provenance | MaD:54 | +| Test.java:653:10:653:11 | in : UriBuilder | Test.java:653:10:653:52 | queryParam(...) : UriBuilder | provenance | MaD:53 | | Test.java:653:10:653:52 | queryParam(...) : UriBuilder | Test.java:654:9:654:11 | out | provenance | | | Test.java:659:20:659:39 | (...)... : UriBuilder | Test.java:660:10:660:11 | in : UriBuilder | provenance | | | Test.java:659:32:659:39 | source(...) : Object | Test.java:659:20:659:39 | (...)... : UriBuilder | provenance | | -| Test.java:660:10:660:11 | in : UriBuilder | Test.java:660:10:660:54 | queryParam(...) : UriBuilder | provenance | MaD:54 | +| Test.java:660:10:660:11 | in : UriBuilder | Test.java:660:10:660:54 | queryParam(...) : UriBuilder | provenance | MaD:53 | | Test.java:660:10:660:54 | queryParam(...) : UriBuilder | Test.java:661:9:661:11 | out | provenance | | | Test.java:666:20:666:39 | (...)... : UriBuilder | Test.java:667:10:667:11 | in : UriBuilder | provenance | | | Test.java:666:32:666:39 | source(...) : Object | Test.java:666:20:666:39 | (...)... : UriBuilder | provenance | | -| Test.java:667:10:667:11 | in : UriBuilder | Test.java:667:10:667:52 | queryParam(...) : UriBuilder | provenance | MaD:54 | +| Test.java:667:10:667:11 | in : UriBuilder | Test.java:667:10:667:52 | queryParam(...) : UriBuilder | provenance | MaD:53 | | Test.java:667:10:667:52 | queryParam(...) : UriBuilder | Test.java:668:9:668:11 | out | provenance | | | Test.java:673:20:673:39 | (...)... : UriBuilder | Test.java:674:10:674:11 | in : UriBuilder | provenance | | | Test.java:673:32:673:39 | source(...) : Object | Test.java:673:20:673:39 | (...)... : UriBuilder | provenance | | -| Test.java:674:10:674:11 | in : UriBuilder | Test.java:674:10:674:54 | queryParam(...) : UriBuilder | provenance | MaD:54 | +| Test.java:674:10:674:11 | in : UriBuilder | Test.java:674:10:674:54 | queryParam(...) : UriBuilder | provenance | MaD:53 | | Test.java:674:10:674:54 | queryParam(...) : UriBuilder | Test.java:675:9:675:11 | out | provenance | | | Test.java:680:16:680:31 | (...)... : String | Test.java:681:19:681:20 | in : String | provenance | | | Test.java:680:24:680:31 | source(...) : Object | Test.java:680:16:680:31 | (...)... : String | provenance | | | Test.java:681:4:681:6 | out [post update] : UriBuilder | Test.java:682:9:682:11 | out | provenance | | -| Test.java:681:19:681:20 | in : String | Test.java:681:4:681:6 | out [post update] : UriBuilder | provenance | MaD:53 | +| Test.java:681:19:681:20 | in : String | Test.java:681:4:681:6 | out [post update] : UriBuilder | provenance | MaD:52 | | Test.java:687:16:687:31 | (...)... : String | Test.java:688:19:688:20 | in : String | provenance | | | Test.java:687:24:687:31 | source(...) : Object | Test.java:687:16:687:31 | (...)... : String | provenance | | | Test.java:688:4:688:6 | out [post update] : UriBuilder | Test.java:689:9:689:11 | out | provenance | | -| Test.java:688:19:688:20 | in : String | Test.java:688:4:688:6 | out [post update] : UriBuilder | provenance | MaD:53 | +| Test.java:688:19:688:20 | in : String | Test.java:688:4:688:6 | out [post update] : UriBuilder | provenance | MaD:52 | | Test.java:694:16:694:31 | (...)... : String | Test.java:695:19:695:20 | in : String | provenance | | | Test.java:694:24:694:31 | source(...) : Object | Test.java:694:16:694:31 | (...)... : String | provenance | | | Test.java:695:4:695:6 | out [post update] : UriBuilder | Test.java:696:9:696:11 | out | provenance | | -| Test.java:695:19:695:20 | in : String | Test.java:695:4:695:6 | out [post update] : UriBuilder | provenance | MaD:53 | +| Test.java:695:19:695:20 | in : String | Test.java:695:4:695:6 | out [post update] : UriBuilder | provenance | MaD:52 | | Test.java:701:16:701:31 | (...)... : String | Test.java:702:19:702:20 | in : String | provenance | | | Test.java:701:24:701:31 | source(...) : Object | Test.java:701:16:701:31 | (...)... : String | provenance | | | Test.java:702:4:702:6 | out [post update] : UriBuilder | Test.java:703:9:703:11 | out | provenance | | -| Test.java:702:19:702:20 | in : String | Test.java:702:4:702:6 | out [post update] : UriBuilder | provenance | MaD:53 | +| Test.java:702:19:702:20 | in : String | Test.java:702:4:702:6 | out [post update] : UriBuilder | provenance | MaD:52 | | Test.java:708:16:708:31 | (...)... : String | Test.java:710:30:710:31 | in : String | provenance | | | Test.java:708:24:708:31 | source(...) : Object | Test.java:708:16:708:31 | (...)... : String | provenance | | | Test.java:710:10:710:48 | queryParam(...) : UriBuilder | Test.java:711:9:711:11 | out | provenance | | -| Test.java:710:30:710:31 | in : String | Test.java:710:10:710:48 | queryParam(...) : UriBuilder | provenance | MaD:53+MaD:54 | +| Test.java:710:30:710:31 | in : String | Test.java:710:10:710:48 | queryParam(...) : UriBuilder | provenance | MaD:52+MaD:53 | | Test.java:716:16:716:31 | (...)... : String | Test.java:718:30:718:31 | in : String | provenance | | | Test.java:716:24:716:31 | source(...) : Object | Test.java:716:16:716:31 | (...)... : String | provenance | | | Test.java:718:10:718:50 | queryParam(...) : UriBuilder | Test.java:719:9:719:11 | out | provenance | | -| Test.java:718:30:718:31 | in : String | Test.java:718:10:718:50 | queryParam(...) : UriBuilder | provenance | MaD:53+MaD:54 | +| Test.java:718:30:718:31 | in : String | Test.java:718:10:718:50 | queryParam(...) : UriBuilder | provenance | MaD:52+MaD:53 | | Test.java:724:16:724:31 | (...)... : String | Test.java:726:30:726:31 | in : String | provenance | | | Test.java:724:24:724:31 | source(...) : Object | Test.java:724:16:724:31 | (...)... : String | provenance | | | Test.java:726:10:726:48 | queryParam(...) : UriBuilder | Test.java:727:9:727:11 | out | provenance | | -| Test.java:726:30:726:31 | in : String | Test.java:726:10:726:48 | queryParam(...) : UriBuilder | provenance | MaD:53+MaD:54 | +| Test.java:726:30:726:31 | in : String | Test.java:726:10:726:48 | queryParam(...) : UriBuilder | provenance | MaD:52+MaD:53 | | Test.java:732:16:732:31 | (...)... : String | Test.java:734:30:734:31 | in : String | provenance | | | Test.java:732:24:732:31 | source(...) : Object | Test.java:732:16:732:31 | (...)... : String | provenance | | | Test.java:734:10:734:50 | queryParam(...) : UriBuilder | Test.java:735:9:735:11 | out | provenance | | -| Test.java:734:30:734:31 | in : String | Test.java:734:10:734:50 | queryParam(...) : UriBuilder | provenance | MaD:53+MaD:54 | +| Test.java:734:30:734:31 | in : String | Test.java:734:10:734:50 | queryParam(...) : UriBuilder | provenance | MaD:52+MaD:53 | | Test.java:740:20:740:39 | (...)... : UriBuilder | Test.java:741:10:741:11 | in : UriBuilder | provenance | | | Test.java:740:32:740:39 | source(...) : Object | Test.java:740:20:740:39 | (...)... : UriBuilder | provenance | | -| Test.java:741:10:741:11 | in : UriBuilder | Test.java:741:10:741:43 | queryParamIfPresent(...) : UriBuilder | provenance | MaD:57 | +| Test.java:741:10:741:11 | in : UriBuilder | Test.java:741:10:741:43 | queryParamIfPresent(...) : UriBuilder | provenance | MaD:56 | | Test.java:741:10:741:43 | queryParamIfPresent(...) : UriBuilder | Test.java:742:9:742:11 | out | provenance | | | Test.java:747:20:747:39 | (...)... : UriBuilder | Test.java:748:10:748:11 | in : UriBuilder | provenance | | | Test.java:747:32:747:39 | source(...) : Object | Test.java:747:20:747:39 | (...)... : UriBuilder | provenance | | -| Test.java:748:10:748:11 | in : UriBuilder | Test.java:748:10:748:43 | queryParamIfPresent(...) : UriBuilder | provenance | MaD:57 | +| Test.java:748:10:748:11 | in : UriBuilder | Test.java:748:10:748:43 | queryParamIfPresent(...) : UriBuilder | provenance | MaD:56 | | Test.java:748:10:748:43 | queryParamIfPresent(...) : UriBuilder | Test.java:749:9:749:11 | out | provenance | | | Test.java:754:16:754:31 | (...)... : String | Test.java:755:28:755:29 | in : String | provenance | | | Test.java:754:24:754:31 | source(...) : Object | Test.java:754:16:754:31 | (...)... : String | provenance | | | Test.java:755:4:755:6 | out [post update] : UriBuilder | Test.java:756:9:756:11 | out | provenance | | -| Test.java:755:28:755:29 | in : String | Test.java:755:4:755:6 | out [post update] : UriBuilder | provenance | MaD:55 | +| Test.java:755:28:755:29 | in : String | Test.java:755:4:755:6 | out [post update] : UriBuilder | provenance | MaD:54 | | Test.java:761:16:761:31 | (...)... : String | Test.java:762:28:762:29 | in : String | provenance | | | Test.java:761:24:761:31 | source(...) : Object | Test.java:761:16:761:31 | (...)... : String | provenance | | | Test.java:762:4:762:6 | out [post update] : UriBuilder | Test.java:763:9:763:11 | out | provenance | | -| Test.java:762:28:762:29 | in : String | Test.java:762:4:762:6 | out [post update] : UriBuilder | provenance | MaD:55 | +| Test.java:762:28:762:29 | in : String | Test.java:762:4:762:6 | out [post update] : UriBuilder | provenance | MaD:54 | | Test.java:768:16:768:31 | (...)... : String | Test.java:770:39:770:40 | in : String | provenance | | | Test.java:768:24:768:31 | source(...) : Object | Test.java:768:16:768:31 | (...)... : String | provenance | | | Test.java:770:10:770:47 | queryParamIfPresent(...) : UriBuilder | Test.java:771:9:771:11 | out | provenance | | -| Test.java:770:39:770:40 | in : String | Test.java:770:10:770:47 | queryParamIfPresent(...) : UriBuilder | provenance | MaD:55+MaD:57 | +| Test.java:770:39:770:40 | in : String | Test.java:770:10:770:47 | queryParamIfPresent(...) : UriBuilder | provenance | MaD:54+MaD:56 | | Test.java:776:16:776:31 | (...)... : String | Test.java:778:39:778:40 | in : String | provenance | | | Test.java:776:24:776:31 | source(...) : Object | Test.java:776:16:776:31 | (...)... : String | provenance | | | Test.java:778:10:778:47 | queryParamIfPresent(...) : UriBuilder | Test.java:779:9:779:11 | out | provenance | | -| Test.java:778:39:778:40 | in : String | Test.java:778:10:778:47 | queryParamIfPresent(...) : UriBuilder | provenance | MaD:55+MaD:57 | +| Test.java:778:39:778:40 | in : String | Test.java:778:10:778:47 | queryParamIfPresent(...) : UriBuilder | provenance | MaD:54+MaD:56 | | Test.java:784:18:784:38 | of(...) : Optional [] : Object | Test.java:785:34:785:35 | in : Optional [] : Object | provenance | | | Test.java:784:30:784:37 | source(...) : Object | Test.java:784:18:784:38 | of(...) : Optional [] : Object | provenance | MaD:10 | | Test.java:785:4:785:6 | out [post update] : UriBuilder | Test.java:786:9:786:11 | out | provenance | | -| Test.java:785:34:785:35 | in : Optional [] : Object | Test.java:785:4:785:6 | out [post update] : UriBuilder | provenance | MaD:56 | +| Test.java:785:34:785:35 | in : Optional [] : Object | Test.java:785:4:785:6 | out [post update] : UriBuilder | provenance | MaD:55 | | Test.java:791:18:791:38 | of(...) : Optional [] : Object | Test.java:792:34:792:35 | in : Optional [] : Object | provenance | | | Test.java:791:30:791:37 | source(...) : Object | Test.java:791:18:791:38 | of(...) : Optional [] : Object | provenance | MaD:10 | | Test.java:792:4:792:6 | out [post update] : UriBuilder | Test.java:793:9:793:11 | out | provenance | | -| Test.java:792:34:792:35 | in : Optional [] : Object | Test.java:792:4:792:6 | out [post update] : UriBuilder | provenance | MaD:56 | +| Test.java:792:34:792:35 | in : Optional [] : Object | Test.java:792:4:792:6 | out [post update] : UriBuilder | provenance | MaD:55 | | Test.java:798:18:798:38 | of(...) : Optional [] : Object | Test.java:800:45:800:46 | in : Optional [] : Object | provenance | | | Test.java:798:30:798:37 | source(...) : Object | Test.java:798:18:798:38 | of(...) : Optional [] : Object | provenance | MaD:10 | | Test.java:800:10:800:47 | queryParamIfPresent(...) : UriBuilder | Test.java:801:9:801:11 | out | provenance | | -| Test.java:800:45:800:46 | in : Optional [] : Object | Test.java:800:10:800:47 | queryParamIfPresent(...) : UriBuilder | provenance | MaD:56+MaD:57 | +| Test.java:800:45:800:46 | in : Optional [] : Object | Test.java:800:10:800:47 | queryParamIfPresent(...) : UriBuilder | provenance | MaD:55+MaD:56 | | Test.java:806:18:806:38 | of(...) : Optional [] : Object | Test.java:808:45:808:46 | in : Optional [] : Object | provenance | | | Test.java:806:30:806:37 | source(...) : Object | Test.java:806:18:806:38 | of(...) : Optional [] : Object | provenance | MaD:10 | | Test.java:808:10:808:47 | queryParamIfPresent(...) : UriBuilder | Test.java:809:9:809:11 | out | provenance | | -| Test.java:808:45:808:46 | in : Optional [] : Object | Test.java:808:10:808:47 | queryParamIfPresent(...) : UriBuilder | provenance | MaD:56+MaD:57 | +| Test.java:808:45:808:46 | in : Optional [] : Object | Test.java:808:10:808:47 | queryParamIfPresent(...) : UriBuilder | provenance | MaD:55+MaD:56 | | Test.java:814:20:814:39 | (...)... : UriBuilder | Test.java:815:10:815:11 | in : UriBuilder | provenance | | | Test.java:814:32:814:39 | source(...) : Object | Test.java:814:20:814:39 | (...)... : UriBuilder | provenance | | -| Test.java:815:10:815:11 | in : UriBuilder | Test.java:815:10:815:29 | queryParams(...) : UriBuilder | provenance | MaD:60 | +| Test.java:815:10:815:11 | in : UriBuilder | Test.java:815:10:815:29 | queryParams(...) : UriBuilder | provenance | MaD:59 | | Test.java:815:10:815:29 | queryParams(...) : UriBuilder | Test.java:816:9:816:11 | out | provenance | | | Test.java:821:20:821:39 | (...)... : UriBuilder | Test.java:822:10:822:11 | in : UriBuilder | provenance | | | Test.java:821:32:821:39 | source(...) : Object | Test.java:821:20:821:39 | (...)... : UriBuilder | provenance | | -| Test.java:822:10:822:11 | in : UriBuilder | Test.java:822:10:822:29 | queryParams(...) : UriBuilder | provenance | MaD:60 | +| Test.java:822:10:822:11 | in : UriBuilder | Test.java:822:10:822:29 | queryParams(...) : UriBuilder | provenance | MaD:59 | | Test.java:822:10:822:29 | queryParams(...) : UriBuilder | Test.java:823:9:823:11 | out | provenance | | | Test.java:828:23:828:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | Test.java:829:20:829:21 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:828:47:828:54 | source(...) : Object | Test.java:54:40:54:53 | element : Object | provenance | | | Test.java:828:47:828:54 | source(...) : Object | Test.java:828:23:828:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | provenance | MaD:5 | | Test.java:829:4:829:6 | out [post update] : UriBuilder | Test.java:830:9:830:11 | out | provenance | | -| Test.java:829:20:829:21 | in : LinkedMultiValueMap [] : Object | Test.java:829:4:829:6 | out [post update] : UriBuilder | provenance | MaD:58 | +| Test.java:829:20:829:21 | in : LinkedMultiValueMap [] : Object | Test.java:829:4:829:6 | out [post update] : UriBuilder | provenance | MaD:57 | | Test.java:835:23:835:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | Test.java:836:20:836:21 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:835:47:835:54 | source(...) : Object | Test.java:54:40:54:53 | element : Object | provenance | | | Test.java:835:47:835:54 | source(...) : Object | Test.java:835:23:835:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | provenance | MaD:5 | | Test.java:836:4:836:6 | out [post update] : UriBuilder | Test.java:837:9:837:11 | out | provenance | | -| Test.java:836:20:836:21 | in : LinkedMultiValueMap [] : Object | Test.java:836:4:836:6 | out [post update] : UriBuilder | provenance | MaD:58 | +| Test.java:836:20:836:21 | in : LinkedMultiValueMap [] : Object | Test.java:836:4:836:6 | out [post update] : UriBuilder | provenance | MaD:57 | | Test.java:842:23:842:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | Test.java:844:31:844:32 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:842:47:842:54 | source(...) : Object | Test.java:54:40:54:53 | element : Object | provenance | | | Test.java:842:47:842:54 | source(...) : Object | Test.java:842:23:842:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | provenance | MaD:5 | | Test.java:844:10:844:33 | queryParams(...) : UriBuilder | Test.java:845:9:845:11 | out | provenance | | -| Test.java:844:31:844:32 | in : LinkedMultiValueMap [] : Object | Test.java:844:10:844:33 | queryParams(...) : UriBuilder | provenance | MaD:58+MaD:60 | +| Test.java:844:31:844:32 | in : LinkedMultiValueMap [] : Object | Test.java:844:10:844:33 | queryParams(...) : UriBuilder | provenance | MaD:57+MaD:59 | | Test.java:850:23:850:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | Test.java:852:31:852:32 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:850:47:850:54 | source(...) : Object | Test.java:54:40:54:53 | element : Object | provenance | | | Test.java:850:47:850:54 | source(...) : Object | Test.java:850:23:850:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | provenance | MaD:5 | | Test.java:852:10:852:33 | queryParams(...) : UriBuilder | Test.java:853:9:853:11 | out | provenance | | -| Test.java:852:31:852:32 | in : LinkedMultiValueMap [] : Object | Test.java:852:10:852:33 | queryParams(...) : UriBuilder | provenance | MaD:58+MaD:60 | +| Test.java:852:31:852:32 | in : LinkedMultiValueMap [] : Object | Test.java:852:10:852:33 | queryParams(...) : UriBuilder | provenance | MaD:57+MaD:59 | | Test.java:858:23:858:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | Test.java:859:20:859:21 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:858:49:858:56 | source(...) : Object | Test.java:55:42:55:55 | element : Object | provenance | | | Test.java:858:49:858:56 | source(...) : Object | Test.java:858:23:858:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | provenance | MaD:9 | | Test.java:859:4:859:6 | out [post update] : UriBuilder | Test.java:860:9:860:11 | out | provenance | | -| Test.java:859:20:859:21 | in : LinkedMultiValueMap [] : Object | Test.java:859:4:859:6 | out [post update] : UriBuilder | provenance | MaD:59 | +| Test.java:859:20:859:21 | in : LinkedMultiValueMap [] : Object | Test.java:859:4:859:6 | out [post update] : UriBuilder | provenance | MaD:58 | | Test.java:865:23:865:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | Test.java:866:20:866:21 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:865:49:865:56 | source(...) : Object | Test.java:55:42:55:55 | element : Object | provenance | | | Test.java:865:49:865:56 | source(...) : Object | Test.java:865:23:865:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | provenance | MaD:9 | | Test.java:866:4:866:6 | out [post update] : UriBuilder | Test.java:867:9:867:11 | out | provenance | | -| Test.java:866:20:866:21 | in : LinkedMultiValueMap [] : Object | Test.java:866:4:866:6 | out [post update] : UriBuilder | provenance | MaD:59 | +| Test.java:866:20:866:21 | in : LinkedMultiValueMap [] : Object | Test.java:866:4:866:6 | out [post update] : UriBuilder | provenance | MaD:58 | | Test.java:872:23:872:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | Test.java:874:31:874:32 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:872:49:872:56 | source(...) : Object | Test.java:55:42:55:55 | element : Object | provenance | | | Test.java:872:49:872:56 | source(...) : Object | Test.java:872:23:872:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | provenance | MaD:9 | | Test.java:874:10:874:33 | queryParams(...) : UriBuilder | Test.java:875:9:875:11 | out | provenance | | -| Test.java:874:31:874:32 | in : LinkedMultiValueMap [] : Object | Test.java:874:10:874:33 | queryParams(...) : UriBuilder | provenance | MaD:59+MaD:60 | +| Test.java:874:31:874:32 | in : LinkedMultiValueMap [] : Object | Test.java:874:10:874:33 | queryParams(...) : UriBuilder | provenance | MaD:58+MaD:59 | | Test.java:880:23:880:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | Test.java:882:31:882:32 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:880:49:880:56 | source(...) : Object | Test.java:55:42:55:55 | element : Object | provenance | | | Test.java:880:49:880:56 | source(...) : Object | Test.java:880:23:880:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | provenance | MaD:9 | | Test.java:882:10:882:33 | queryParams(...) : UriBuilder | Test.java:883:9:883:11 | out | provenance | | -| Test.java:882:31:882:32 | in : LinkedMultiValueMap [] : Object | Test.java:882:10:882:33 | queryParams(...) : UriBuilder | provenance | MaD:59+MaD:60 | +| Test.java:882:31:882:32 | in : LinkedMultiValueMap [] : Object | Test.java:882:10:882:33 | queryParams(...) : UriBuilder | provenance | MaD:58+MaD:59 | | Test.java:888:20:888:39 | (...)... : UriBuilder | Test.java:889:10:889:11 | in : UriBuilder | provenance | | | Test.java:888:32:888:39 | source(...) : Object | Test.java:888:20:888:39 | (...)... : UriBuilder | provenance | | -| Test.java:889:10:889:11 | in : UriBuilder | Test.java:889:10:889:29 | replacePath(...) : UriBuilder | provenance | MaD:62 | +| Test.java:889:10:889:11 | in : UriBuilder | Test.java:889:10:889:29 | replacePath(...) : UriBuilder | provenance | MaD:61 | | Test.java:889:10:889:29 | replacePath(...) : UriBuilder | Test.java:890:9:890:11 | out | provenance | | | Test.java:895:20:895:39 | (...)... : UriBuilder | Test.java:896:10:896:11 | in : UriBuilder | provenance | | | Test.java:895:32:895:39 | source(...) : Object | Test.java:895:20:895:39 | (...)... : UriBuilder | provenance | | -| Test.java:896:10:896:11 | in : UriBuilder | Test.java:896:10:896:29 | replacePath(...) : UriBuilder | provenance | MaD:62 | +| Test.java:896:10:896:11 | in : UriBuilder | Test.java:896:10:896:29 | replacePath(...) : UriBuilder | provenance | MaD:61 | | Test.java:896:10:896:29 | replacePath(...) : UriBuilder | Test.java:897:9:897:11 | out | provenance | | | Test.java:902:16:902:31 | (...)... : String | Test.java:903:20:903:21 | in : String | provenance | | | Test.java:902:24:902:31 | source(...) : Object | Test.java:902:16:902:31 | (...)... : String | provenance | | | Test.java:903:4:903:6 | out [post update] : UriBuilder | Test.java:904:9:904:11 | out | provenance | | -| Test.java:903:20:903:21 | in : String | Test.java:903:4:903:6 | out [post update] : UriBuilder | provenance | MaD:61 | +| Test.java:903:20:903:21 | in : String | Test.java:903:4:903:6 | out [post update] : UriBuilder | provenance | MaD:60 | | Test.java:909:16:909:31 | (...)... : String | Test.java:910:20:910:21 | in : String | provenance | | | Test.java:909:24:909:31 | source(...) : Object | Test.java:909:16:909:31 | (...)... : String | provenance | | | Test.java:910:4:910:6 | out [post update] : UriBuilder | Test.java:911:9:911:11 | out | provenance | | -| Test.java:910:20:910:21 | in : String | Test.java:910:4:910:6 | out [post update] : UriBuilder | provenance | MaD:61 | +| Test.java:910:20:910:21 | in : String | Test.java:910:4:910:6 | out [post update] : UriBuilder | provenance | MaD:60 | | Test.java:916:16:916:31 | (...)... : String | Test.java:918:31:918:32 | in : String | provenance | | | Test.java:916:24:916:31 | source(...) : Object | Test.java:916:16:916:31 | (...)... : String | provenance | | | Test.java:918:10:918:33 | replacePath(...) : UriBuilder | Test.java:919:9:919:11 | out | provenance | | -| Test.java:918:31:918:32 | in : String | Test.java:918:10:918:33 | replacePath(...) : UriBuilder | provenance | MaD:61+MaD:62 | +| Test.java:918:31:918:32 | in : String | Test.java:918:10:918:33 | replacePath(...) : UriBuilder | provenance | MaD:60+MaD:61 | | Test.java:924:16:924:31 | (...)... : String | Test.java:926:31:926:32 | in : String | provenance | | | Test.java:924:24:924:31 | source(...) : Object | Test.java:924:16:924:31 | (...)... : String | provenance | | | Test.java:926:10:926:33 | replacePath(...) : UriBuilder | Test.java:927:9:927:11 | out | provenance | | -| Test.java:926:31:926:32 | in : String | Test.java:926:10:926:33 | replacePath(...) : UriBuilder | provenance | MaD:61+MaD:62 | +| Test.java:926:31:926:32 | in : String | Test.java:926:10:926:33 | replacePath(...) : UriBuilder | provenance | MaD:60+MaD:61 | | Test.java:932:20:932:39 | (...)... : UriBuilder | Test.java:933:10:933:11 | in : UriBuilder | provenance | | | Test.java:932:32:932:39 | source(...) : Object | Test.java:932:20:932:39 | (...)... : UriBuilder | provenance | | -| Test.java:933:10:933:11 | in : UriBuilder | Test.java:933:10:933:30 | replaceQuery(...) : UriBuilder | provenance | MaD:64 | +| Test.java:933:10:933:11 | in : UriBuilder | Test.java:933:10:933:30 | replaceQuery(...) : UriBuilder | provenance | MaD:63 | | Test.java:933:10:933:30 | replaceQuery(...) : UriBuilder | Test.java:934:9:934:11 | out | provenance | | | Test.java:939:20:939:39 | (...)... : UriBuilder | Test.java:940:10:940:11 | in : UriBuilder | provenance | | | Test.java:939:32:939:39 | source(...) : Object | Test.java:939:20:939:39 | (...)... : UriBuilder | provenance | | -| Test.java:940:10:940:11 | in : UriBuilder | Test.java:940:10:940:30 | replaceQuery(...) : UriBuilder | provenance | MaD:64 | +| Test.java:940:10:940:11 | in : UriBuilder | Test.java:940:10:940:30 | replaceQuery(...) : UriBuilder | provenance | MaD:63 | | Test.java:940:10:940:30 | replaceQuery(...) : UriBuilder | Test.java:941:9:941:11 | out | provenance | | | Test.java:946:16:946:31 | (...)... : String | Test.java:947:21:947:22 | in : String | provenance | | | Test.java:946:24:946:31 | source(...) : Object | Test.java:946:16:946:31 | (...)... : String | provenance | | | Test.java:947:4:947:6 | out [post update] : UriBuilder | Test.java:948:9:948:11 | out | provenance | | -| Test.java:947:21:947:22 | in : String | Test.java:947:4:947:6 | out [post update] : UriBuilder | provenance | MaD:63 | +| Test.java:947:21:947:22 | in : String | Test.java:947:4:947:6 | out [post update] : UriBuilder | provenance | MaD:62 | | Test.java:953:16:953:31 | (...)... : String | Test.java:954:21:954:22 | in : String | provenance | | | Test.java:953:24:953:31 | source(...) : Object | Test.java:953:16:953:31 | (...)... : String | provenance | | | Test.java:954:4:954:6 | out [post update] : UriBuilder | Test.java:955:9:955:11 | out | provenance | | -| Test.java:954:21:954:22 | in : String | Test.java:954:4:954:6 | out [post update] : UriBuilder | provenance | MaD:63 | +| Test.java:954:21:954:22 | in : String | Test.java:954:4:954:6 | out [post update] : UriBuilder | provenance | MaD:62 | | Test.java:960:16:960:31 | (...)... : String | Test.java:962:32:962:33 | in : String | provenance | | | Test.java:960:24:960:31 | source(...) : Object | Test.java:960:16:960:31 | (...)... : String | provenance | | | Test.java:962:10:962:34 | replaceQuery(...) : UriBuilder | Test.java:963:9:963:11 | out | provenance | | -| Test.java:962:32:962:33 | in : String | Test.java:962:10:962:34 | replaceQuery(...) : UriBuilder | provenance | MaD:63+MaD:64 | +| Test.java:962:32:962:33 | in : String | Test.java:962:10:962:34 | replaceQuery(...) : UriBuilder | provenance | MaD:62+MaD:63 | | Test.java:968:16:968:31 | (...)... : String | Test.java:970:32:970:33 | in : String | provenance | | | Test.java:968:24:968:31 | source(...) : Object | Test.java:968:16:968:31 | (...)... : String | provenance | | | Test.java:970:10:970:34 | replaceQuery(...) : UriBuilder | Test.java:971:9:971:11 | out | provenance | | -| Test.java:970:32:970:33 | in : String | Test.java:970:10:970:34 | replaceQuery(...) : UriBuilder | provenance | MaD:63+MaD:64 | +| Test.java:970:32:970:33 | in : String | Test.java:970:10:970:34 | replaceQuery(...) : UriBuilder | provenance | MaD:62+MaD:63 | | Test.java:976:20:976:36 | of(...) : List [] : Object | Test.java:977:40:977:41 | in : List [] : Object | provenance | | | Test.java:976:28:976:35 | source(...) : Object | Test.java:976:20:976:36 | of(...) : List [] : Object | provenance | MaD:4 | | Test.java:977:4:977:6 | out [post update] : UriBuilder | Test.java:978:9:978:11 | out | provenance | | -| Test.java:977:40:977:41 | in : List [] : Object | Test.java:977:4:977:6 | out [post update] : UriBuilder | provenance | MaD:65 | +| Test.java:977:40:977:41 | in : List [] : Object | Test.java:977:4:977:6 | out [post update] : UriBuilder | provenance | MaD:64 | | Test.java:983:20:983:36 | of(...) : List [] : Object | Test.java:984:40:984:41 | in : List [] : Object | provenance | | | Test.java:983:28:983:35 | source(...) : Object | Test.java:983:20:983:36 | of(...) : List [] : Object | provenance | MaD:4 | | Test.java:984:4:984:6 | out [post update] : UriBuilder | Test.java:985:9:985:11 | out | provenance | | -| Test.java:984:40:984:41 | in : List [] : Object | Test.java:984:4:984:6 | out [post update] : UriBuilder | provenance | MaD:65 | +| Test.java:984:40:984:41 | in : List [] : Object | Test.java:984:4:984:6 | out [post update] : UriBuilder | provenance | MaD:64 | | Test.java:990:20:990:36 | of(...) : List [] : Object | Test.java:992:51:992:52 | in : List [] : Object | provenance | | | Test.java:990:28:990:35 | source(...) : Object | Test.java:990:20:990:36 | of(...) : List [] : Object | provenance | MaD:4 | | Test.java:992:10:992:53 | replaceQueryParam(...) : UriBuilder | Test.java:993:9:993:11 | out | provenance | | -| Test.java:992:51:992:52 | in : List [] : Object | Test.java:992:10:992:53 | replaceQueryParam(...) : UriBuilder | provenance | MaD:65+MaD:68 | +| Test.java:992:51:992:52 | in : List [] : Object | Test.java:992:10:992:53 | replaceQueryParam(...) : UriBuilder | provenance | MaD:64+MaD:67 | | Test.java:998:20:998:36 | of(...) : List [] : Object | Test.java:1000:51:1000:52 | in : List [] : Object | provenance | | | Test.java:998:28:998:35 | source(...) : Object | Test.java:998:20:998:36 | of(...) : List [] : Object | provenance | MaD:4 | | Test.java:1000:10:1000:53 | replaceQueryParam(...) : UriBuilder | Test.java:1001:9:1001:11 | out | provenance | | -| Test.java:1000:51:1000:52 | in : List [] : Object | Test.java:1000:10:1000:53 | replaceQueryParam(...) : UriBuilder | provenance | MaD:65+MaD:68 | +| Test.java:1000:51:1000:52 | in : List [] : Object | Test.java:1000:10:1000:53 | replaceQueryParam(...) : UriBuilder | provenance | MaD:64+MaD:67 | | Test.java:1006:18:1006:39 | {...} : Object[] [[]] : Object | Test.java:1007:40:1007:41 | in : Object[] [[]] : Object | provenance | | | Test.java:1006:31:1006:38 | source(...) : Object | Test.java:1006:18:1006:39 | {...} : Object[] [[]] : Object | provenance | | | Test.java:1007:4:1007:6 | out [post update] : UriBuilder | Test.java:1008:9:1008:11 | out | provenance | | -| Test.java:1007:40:1007:41 | in : Object[] [[]] : Object | Test.java:1007:4:1007:6 | out [post update] : UriBuilder | provenance | MaD:66 | +| Test.java:1007:40:1007:41 | in : Object[] [[]] : Object | Test.java:1007:4:1007:6 | out [post update] : UriBuilder | provenance | MaD:65 | | Test.java:1013:18:1013:39 | {...} : Object[] [[]] : Object | Test.java:1014:40:1014:41 | in : Object[] [[]] : Object | provenance | | | Test.java:1013:31:1013:38 | source(...) : Object | Test.java:1013:18:1013:39 | {...} : Object[] [[]] : Object | provenance | | | Test.java:1014:4:1014:6 | out [post update] : UriBuilder | Test.java:1015:9:1015:11 | out | provenance | | -| Test.java:1014:40:1014:41 | in : Object[] [[]] : Object | Test.java:1014:4:1014:6 | out [post update] : UriBuilder | provenance | MaD:66 | +| Test.java:1014:40:1014:41 | in : Object[] [[]] : Object | Test.java:1014:4:1014:6 | out [post update] : UriBuilder | provenance | MaD:65 | | Test.java:1020:18:1020:39 | {...} : Object[] [[]] : Object | Test.java:1022:51:1022:52 | in : Object[] [[]] : Object | provenance | | | Test.java:1020:31:1020:38 | source(...) : Object | Test.java:1020:18:1020:39 | {...} : Object[] [[]] : Object | provenance | | | Test.java:1022:10:1022:53 | replaceQueryParam(...) : UriBuilder | Test.java:1023:9:1023:11 | out | provenance | | -| Test.java:1022:51:1022:52 | in : Object[] [[]] : Object | Test.java:1022:10:1022:53 | replaceQueryParam(...) : UriBuilder | provenance | MaD:66+MaD:68 | +| Test.java:1022:51:1022:52 | in : Object[] [[]] : Object | Test.java:1022:10:1022:53 | replaceQueryParam(...) : UriBuilder | provenance | MaD:65+MaD:67 | | Test.java:1028:18:1028:39 | {...} : Object[] [[]] : Object | Test.java:1030:51:1030:52 | in : Object[] [[]] : Object | provenance | | | Test.java:1028:31:1028:38 | source(...) : Object | Test.java:1028:18:1028:39 | {...} : Object[] [[]] : Object | provenance | | | Test.java:1030:10:1030:53 | replaceQueryParam(...) : UriBuilder | Test.java:1031:9:1031:11 | out | provenance | | -| Test.java:1030:51:1030:52 | in : Object[] [[]] : Object | Test.java:1030:10:1030:53 | replaceQueryParam(...) : UriBuilder | provenance | MaD:66+MaD:68 | +| Test.java:1030:51:1030:52 | in : Object[] [[]] : Object | Test.java:1030:10:1030:53 | replaceQueryParam(...) : UriBuilder | provenance | MaD:65+MaD:67 | | Test.java:1036:20:1036:39 | (...)... : UriBuilder | Test.java:1037:10:1037:11 | in : UriBuilder | provenance | | | Test.java:1036:32:1036:39 | source(...) : Object | Test.java:1036:20:1036:39 | (...)... : UriBuilder | provenance | | -| Test.java:1037:10:1037:11 | in : UriBuilder | Test.java:1037:10:1037:59 | replaceQueryParam(...) : UriBuilder | provenance | MaD:68 | +| Test.java:1037:10:1037:11 | in : UriBuilder | Test.java:1037:10:1037:59 | replaceQueryParam(...) : UriBuilder | provenance | MaD:67 | | Test.java:1037:10:1037:59 | replaceQueryParam(...) : UriBuilder | Test.java:1038:9:1038:11 | out | provenance | | | Test.java:1043:20:1043:39 | (...)... : UriBuilder | Test.java:1044:10:1044:11 | in : UriBuilder | provenance | | | Test.java:1043:32:1043:39 | source(...) : Object | Test.java:1043:20:1043:39 | (...)... : UriBuilder | provenance | | -| Test.java:1044:10:1044:11 | in : UriBuilder | Test.java:1044:10:1044:61 | replaceQueryParam(...) : UriBuilder | provenance | MaD:68 | +| Test.java:1044:10:1044:11 | in : UriBuilder | Test.java:1044:10:1044:61 | replaceQueryParam(...) : UriBuilder | provenance | MaD:67 | | Test.java:1044:10:1044:61 | replaceQueryParam(...) : UriBuilder | Test.java:1045:9:1045:11 | out | provenance | | | Test.java:1050:20:1050:39 | (...)... : UriBuilder | Test.java:1051:10:1051:11 | in : UriBuilder | provenance | | | Test.java:1050:32:1050:39 | source(...) : Object | Test.java:1050:20:1050:39 | (...)... : UriBuilder | provenance | | -| Test.java:1051:10:1051:11 | in : UriBuilder | Test.java:1051:10:1051:59 | replaceQueryParam(...) : UriBuilder | provenance | MaD:68 | +| Test.java:1051:10:1051:11 | in : UriBuilder | Test.java:1051:10:1051:59 | replaceQueryParam(...) : UriBuilder | provenance | MaD:67 | | Test.java:1051:10:1051:59 | replaceQueryParam(...) : UriBuilder | Test.java:1052:9:1052:11 | out | provenance | | | Test.java:1057:20:1057:39 | (...)... : UriBuilder | Test.java:1058:10:1058:11 | in : UriBuilder | provenance | | | Test.java:1057:32:1057:39 | source(...) : Object | Test.java:1057:20:1057:39 | (...)... : UriBuilder | provenance | | -| Test.java:1058:10:1058:11 | in : UriBuilder | Test.java:1058:10:1058:61 | replaceQueryParam(...) : UriBuilder | provenance | MaD:68 | +| Test.java:1058:10:1058:11 | in : UriBuilder | Test.java:1058:10:1058:61 | replaceQueryParam(...) : UriBuilder | provenance | MaD:67 | | Test.java:1058:10:1058:61 | replaceQueryParam(...) : UriBuilder | Test.java:1059:9:1059:11 | out | provenance | | | Test.java:1064:16:1064:31 | (...)... : String | Test.java:1065:26:1065:27 | in : String | provenance | | | Test.java:1064:24:1064:31 | source(...) : Object | Test.java:1064:16:1064:31 | (...)... : String | provenance | | | Test.java:1065:4:1065:6 | out [post update] : UriBuilder | Test.java:1066:9:1066:11 | out | provenance | | -| Test.java:1065:26:1065:27 | in : String | Test.java:1065:4:1065:6 | out [post update] : UriBuilder | provenance | MaD:67 | +| Test.java:1065:26:1065:27 | in : String | Test.java:1065:4:1065:6 | out [post update] : UriBuilder | provenance | MaD:66 | | Test.java:1071:16:1071:31 | (...)... : String | Test.java:1072:26:1072:27 | in : String | provenance | | | Test.java:1071:24:1071:31 | source(...) : Object | Test.java:1071:16:1071:31 | (...)... : String | provenance | | | Test.java:1072:4:1072:6 | out [post update] : UriBuilder | Test.java:1073:9:1073:11 | out | provenance | | -| Test.java:1072:26:1072:27 | in : String | Test.java:1072:4:1072:6 | out [post update] : UriBuilder | provenance | MaD:67 | +| Test.java:1072:26:1072:27 | in : String | Test.java:1072:4:1072:6 | out [post update] : UriBuilder | provenance | MaD:66 | | Test.java:1078:16:1078:31 | (...)... : String | Test.java:1079:26:1079:27 | in : String | provenance | | | Test.java:1078:24:1078:31 | source(...) : Object | Test.java:1078:16:1078:31 | (...)... : String | provenance | | | Test.java:1079:4:1079:6 | out [post update] : UriBuilder | Test.java:1080:9:1080:11 | out | provenance | | -| Test.java:1079:26:1079:27 | in : String | Test.java:1079:4:1079:6 | out [post update] : UriBuilder | provenance | MaD:67 | +| Test.java:1079:26:1079:27 | in : String | Test.java:1079:4:1079:6 | out [post update] : UriBuilder | provenance | MaD:66 | | Test.java:1085:16:1085:31 | (...)... : String | Test.java:1086:26:1086:27 | in : String | provenance | | | Test.java:1085:24:1085:31 | source(...) : Object | Test.java:1085:16:1085:31 | (...)... : String | provenance | | | Test.java:1086:4:1086:6 | out [post update] : UriBuilder | Test.java:1087:9:1087:11 | out | provenance | | -| Test.java:1086:26:1086:27 | in : String | Test.java:1086:4:1086:6 | out [post update] : UriBuilder | provenance | MaD:67 | +| Test.java:1086:26:1086:27 | in : String | Test.java:1086:4:1086:6 | out [post update] : UriBuilder | provenance | MaD:66 | | Test.java:1092:16:1092:31 | (...)... : String | Test.java:1094:37:1094:38 | in : String | provenance | | | Test.java:1092:24:1092:31 | source(...) : Object | Test.java:1092:16:1092:31 | (...)... : String | provenance | | | Test.java:1094:10:1094:55 | replaceQueryParam(...) : UriBuilder | Test.java:1095:9:1095:11 | out | provenance | | -| Test.java:1094:37:1094:38 | in : String | Test.java:1094:10:1094:55 | replaceQueryParam(...) : UriBuilder | provenance | MaD:67+MaD:68 | +| Test.java:1094:37:1094:38 | in : String | Test.java:1094:10:1094:55 | replaceQueryParam(...) : UriBuilder | provenance | MaD:66+MaD:67 | | Test.java:1100:16:1100:31 | (...)... : String | Test.java:1102:37:1102:38 | in : String | provenance | | | Test.java:1100:24:1100:31 | source(...) : Object | Test.java:1100:16:1100:31 | (...)... : String | provenance | | | Test.java:1102:10:1102:57 | replaceQueryParam(...) : UriBuilder | Test.java:1103:9:1103:11 | out | provenance | | -| Test.java:1102:37:1102:38 | in : String | Test.java:1102:10:1102:57 | replaceQueryParam(...) : UriBuilder | provenance | MaD:67+MaD:68 | +| Test.java:1102:37:1102:38 | in : String | Test.java:1102:10:1102:57 | replaceQueryParam(...) : UriBuilder | provenance | MaD:66+MaD:67 | | Test.java:1108:16:1108:31 | (...)... : String | Test.java:1110:37:1110:38 | in : String | provenance | | | Test.java:1108:24:1108:31 | source(...) : Object | Test.java:1108:16:1108:31 | (...)... : String | provenance | | | Test.java:1110:10:1110:55 | replaceQueryParam(...) : UriBuilder | Test.java:1111:9:1111:11 | out | provenance | | -| Test.java:1110:37:1110:38 | in : String | Test.java:1110:10:1110:55 | replaceQueryParam(...) : UriBuilder | provenance | MaD:67+MaD:68 | +| Test.java:1110:37:1110:38 | in : String | Test.java:1110:10:1110:55 | replaceQueryParam(...) : UriBuilder | provenance | MaD:66+MaD:67 | | Test.java:1116:16:1116:31 | (...)... : String | Test.java:1118:37:1118:38 | in : String | provenance | | | Test.java:1116:24:1116:31 | source(...) : Object | Test.java:1116:16:1116:31 | (...)... : String | provenance | | | Test.java:1118:10:1118:57 | replaceQueryParam(...) : UriBuilder | Test.java:1119:9:1119:11 | out | provenance | | -| Test.java:1118:37:1118:38 | in : String | Test.java:1118:10:1118:57 | replaceQueryParam(...) : UriBuilder | provenance | MaD:67+MaD:68 | +| Test.java:1118:37:1118:38 | in : String | Test.java:1118:10:1118:57 | replaceQueryParam(...) : UriBuilder | provenance | MaD:66+MaD:67 | | Test.java:1124:20:1124:39 | (...)... : UriBuilder | Test.java:1125:10:1125:11 | in : UriBuilder | provenance | | | Test.java:1124:32:1124:39 | source(...) : Object | Test.java:1124:20:1124:39 | (...)... : UriBuilder | provenance | | -| Test.java:1125:10:1125:11 | in : UriBuilder | Test.java:1125:10:1125:36 | replaceQueryParams(...) : UriBuilder | provenance | MaD:71 | +| Test.java:1125:10:1125:11 | in : UriBuilder | Test.java:1125:10:1125:36 | replaceQueryParams(...) : UriBuilder | provenance | MaD:70 | | Test.java:1125:10:1125:36 | replaceQueryParams(...) : UriBuilder | Test.java:1126:9:1126:11 | out | provenance | | | Test.java:1131:20:1131:39 | (...)... : UriBuilder | Test.java:1132:10:1132:11 | in : UriBuilder | provenance | | | Test.java:1131:32:1131:39 | source(...) : Object | Test.java:1131:20:1131:39 | (...)... : UriBuilder | provenance | | -| Test.java:1132:10:1132:11 | in : UriBuilder | Test.java:1132:10:1132:36 | replaceQueryParams(...) : UriBuilder | provenance | MaD:71 | +| Test.java:1132:10:1132:11 | in : UriBuilder | Test.java:1132:10:1132:36 | replaceQueryParams(...) : UriBuilder | provenance | MaD:70 | | Test.java:1132:10:1132:36 | replaceQueryParams(...) : UriBuilder | Test.java:1133:9:1133:11 | out | provenance | | | Test.java:1138:23:1138:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | Test.java:1140:38:1140:39 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:1138:47:1138:54 | source(...) : Object | Test.java:54:40:54:53 | element : Object | provenance | | | Test.java:1138:47:1138:54 | source(...) : Object | Test.java:1138:23:1138:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | provenance | MaD:5 | | Test.java:1140:10:1140:40 | replaceQueryParams(...) : UriBuilder | Test.java:1141:9:1141:11 | out | provenance | | -| Test.java:1140:38:1140:39 | in : LinkedMultiValueMap [] : Object | Test.java:1140:10:1140:40 | replaceQueryParams(...) : UriBuilder | provenance | MaD:69+MaD:71 | +| Test.java:1140:38:1140:39 | in : LinkedMultiValueMap [] : Object | Test.java:1140:10:1140:40 | replaceQueryParams(...) : UriBuilder | provenance | MaD:68+MaD:70 | | Test.java:1146:23:1146:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | Test.java:1148:38:1148:39 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:1146:47:1146:54 | source(...) : Object | Test.java:54:40:54:53 | element : Object | provenance | | | Test.java:1146:47:1146:54 | source(...) : Object | Test.java:1146:23:1146:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | provenance | MaD:5 | | Test.java:1148:10:1148:40 | replaceQueryParams(...) : UriBuilder | Test.java:1149:9:1149:11 | out | provenance | | -| Test.java:1148:38:1148:39 | in : LinkedMultiValueMap [] : Object | Test.java:1148:10:1148:40 | replaceQueryParams(...) : UriBuilder | provenance | MaD:69+MaD:71 | +| Test.java:1148:38:1148:39 | in : LinkedMultiValueMap [] : Object | Test.java:1148:10:1148:40 | replaceQueryParams(...) : UriBuilder | provenance | MaD:68+MaD:70 | | Test.java:1154:23:1154:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | Test.java:1156:38:1156:39 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:1154:49:1154:56 | source(...) : Object | Test.java:55:42:55:55 | element : Object | provenance | | | Test.java:1154:49:1154:56 | source(...) : Object | Test.java:1154:23:1154:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | provenance | MaD:9 | | Test.java:1156:10:1156:40 | replaceQueryParams(...) : UriBuilder | Test.java:1157:9:1157:11 | out | provenance | | -| Test.java:1156:38:1156:39 | in : LinkedMultiValueMap [] : Object | Test.java:1156:10:1156:40 | replaceQueryParams(...) : UriBuilder | provenance | MaD:70+MaD:71 | +| Test.java:1156:38:1156:39 | in : LinkedMultiValueMap [] : Object | Test.java:1156:10:1156:40 | replaceQueryParams(...) : UriBuilder | provenance | MaD:69+MaD:70 | | Test.java:1162:23:1162:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | Test.java:1164:38:1164:39 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:1162:49:1162:56 | source(...) : Object | Test.java:55:42:55:55 | element : Object | provenance | | | Test.java:1162:49:1162:56 | source(...) : Object | Test.java:1162:23:1162:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | provenance | MaD:9 | | Test.java:1164:10:1164:40 | replaceQueryParams(...) : UriBuilder | Test.java:1165:9:1165:11 | out | provenance | | -| Test.java:1164:38:1164:39 | in : LinkedMultiValueMap [] : Object | Test.java:1164:10:1164:40 | replaceQueryParams(...) : UriBuilder | provenance | MaD:70+MaD:71 | +| Test.java:1164:38:1164:39 | in : LinkedMultiValueMap [] : Object | Test.java:1164:10:1164:40 | replaceQueryParams(...) : UriBuilder | provenance | MaD:69+MaD:70 | | Test.java:1170:20:1170:39 | (...)... : UriBuilder | Test.java:1171:10:1171:11 | in : UriBuilder | provenance | | | Test.java:1170:32:1170:39 | source(...) : Object | Test.java:1170:20:1170:39 | (...)... : UriBuilder | provenance | | -| Test.java:1171:10:1171:11 | in : UriBuilder | Test.java:1171:10:1171:24 | scheme(...) : UriBuilder | provenance | MaD:73 | +| Test.java:1171:10:1171:11 | in : UriBuilder | Test.java:1171:10:1171:24 | scheme(...) : UriBuilder | provenance | MaD:72 | | Test.java:1171:10:1171:24 | scheme(...) : UriBuilder | Test.java:1172:9:1172:11 | out | provenance | | | Test.java:1177:20:1177:39 | (...)... : UriBuilder | Test.java:1178:10:1178:11 | in : UriBuilder | provenance | | | Test.java:1177:32:1177:39 | source(...) : Object | Test.java:1177:20:1177:39 | (...)... : UriBuilder | provenance | | -| Test.java:1178:10:1178:11 | in : UriBuilder | Test.java:1178:10:1178:24 | scheme(...) : UriBuilder | provenance | MaD:73 | +| Test.java:1178:10:1178:11 | in : UriBuilder | Test.java:1178:10:1178:24 | scheme(...) : UriBuilder | provenance | MaD:72 | | Test.java:1178:10:1178:24 | scheme(...) : UriBuilder | Test.java:1179:9:1179:11 | out | provenance | | | Test.java:1184:16:1184:31 | (...)... : String | Test.java:1185:15:1185:16 | in : String | provenance | | | Test.java:1184:24:1184:31 | source(...) : Object | Test.java:1184:16:1184:31 | (...)... : String | provenance | | | Test.java:1185:4:1185:6 | out [post update] : UriBuilder | Test.java:1186:9:1186:11 | out | provenance | | -| Test.java:1185:15:1185:16 | in : String | Test.java:1185:4:1185:6 | out [post update] : UriBuilder | provenance | MaD:72 | +| Test.java:1185:15:1185:16 | in : String | Test.java:1185:4:1185:6 | out [post update] : UriBuilder | provenance | MaD:71 | | Test.java:1191:16:1191:31 | (...)... : String | Test.java:1192:15:1192:16 | in : String | provenance | | | Test.java:1191:24:1191:31 | source(...) : Object | Test.java:1191:16:1191:31 | (...)... : String | provenance | | | Test.java:1192:4:1192:6 | out [post update] : UriBuilder | Test.java:1193:9:1193:11 | out | provenance | | -| Test.java:1192:15:1192:16 | in : String | Test.java:1192:4:1192:6 | out [post update] : UriBuilder | provenance | MaD:72 | +| Test.java:1192:15:1192:16 | in : String | Test.java:1192:4:1192:6 | out [post update] : UriBuilder | provenance | MaD:71 | | Test.java:1198:16:1198:31 | (...)... : String | Test.java:1200:26:1200:27 | in : String | provenance | | | Test.java:1198:24:1198:31 | source(...) : Object | Test.java:1198:16:1198:31 | (...)... : String | provenance | | | Test.java:1200:10:1200:28 | scheme(...) : UriBuilder | Test.java:1201:9:1201:11 | out | provenance | | -| Test.java:1200:26:1200:27 | in : String | Test.java:1200:10:1200:28 | scheme(...) : UriBuilder | provenance | MaD:72+MaD:73 | +| Test.java:1200:26:1200:27 | in : String | Test.java:1200:10:1200:28 | scheme(...) : UriBuilder | provenance | MaD:71+MaD:72 | | Test.java:1206:16:1206:31 | (...)... : String | Test.java:1208:26:1208:27 | in : String | provenance | | | Test.java:1206:24:1206:31 | source(...) : Object | Test.java:1206:16:1206:31 | (...)... : String | provenance | | | Test.java:1208:10:1208:28 | scheme(...) : UriBuilder | Test.java:1209:9:1209:11 | out | provenance | | -| Test.java:1208:26:1208:27 | in : String | Test.java:1208:10:1208:28 | scheme(...) : UriBuilder | provenance | MaD:72+MaD:73 | +| Test.java:1208:26:1208:27 | in : String | Test.java:1208:10:1208:28 | scheme(...) : UriBuilder | provenance | MaD:71+MaD:72 | | Test.java:1214:20:1214:39 | (...)... : UriBuilder | Test.java:1215:10:1215:11 | in : UriBuilder | provenance | | | Test.java:1214:32:1214:39 | source(...) : Object | Test.java:1214:20:1214:39 | (...)... : UriBuilder | provenance | | -| Test.java:1215:10:1215:11 | in : UriBuilder | Test.java:1215:10:1215:26 | userInfo(...) : UriBuilder | provenance | MaD:75 | +| Test.java:1215:10:1215:11 | in : UriBuilder | Test.java:1215:10:1215:26 | userInfo(...) : UriBuilder | provenance | MaD:74 | | Test.java:1215:10:1215:26 | userInfo(...) : UriBuilder | Test.java:1216:9:1216:11 | out | provenance | | | Test.java:1221:20:1221:39 | (...)... : UriBuilder | Test.java:1222:10:1222:11 | in : UriBuilder | provenance | | | Test.java:1221:32:1221:39 | source(...) : Object | Test.java:1221:20:1221:39 | (...)... : UriBuilder | provenance | | -| Test.java:1222:10:1222:11 | in : UriBuilder | Test.java:1222:10:1222:26 | userInfo(...) : UriBuilder | provenance | MaD:75 | +| Test.java:1222:10:1222:11 | in : UriBuilder | Test.java:1222:10:1222:26 | userInfo(...) : UriBuilder | provenance | MaD:74 | | Test.java:1222:10:1222:26 | userInfo(...) : UriBuilder | Test.java:1223:9:1223:11 | out | provenance | | | Test.java:1228:16:1228:31 | (...)... : String | Test.java:1229:17:1229:18 | in : String | provenance | | | Test.java:1228:24:1228:31 | source(...) : Object | Test.java:1228:16:1228:31 | (...)... : String | provenance | | | Test.java:1229:4:1229:6 | out [post update] : UriBuilder | Test.java:1230:9:1230:11 | out | provenance | | -| Test.java:1229:17:1229:18 | in : String | Test.java:1229:4:1229:6 | out [post update] : UriBuilder | provenance | MaD:74 | +| Test.java:1229:17:1229:18 | in : String | Test.java:1229:4:1229:6 | out [post update] : UriBuilder | provenance | MaD:73 | | Test.java:1235:16:1235:31 | (...)... : String | Test.java:1236:17:1236:18 | in : String | provenance | | | Test.java:1235:24:1235:31 | source(...) : Object | Test.java:1235:16:1235:31 | (...)... : String | provenance | | | Test.java:1236:4:1236:6 | out [post update] : UriBuilder | Test.java:1237:9:1237:11 | out | provenance | | -| Test.java:1236:17:1236:18 | in : String | Test.java:1236:4:1236:6 | out [post update] : UriBuilder | provenance | MaD:74 | +| Test.java:1236:17:1236:18 | in : String | Test.java:1236:4:1236:6 | out [post update] : UriBuilder | provenance | MaD:73 | | Test.java:1242:16:1242:31 | (...)... : String | Test.java:1244:28:1244:29 | in : String | provenance | | | Test.java:1242:24:1242:31 | source(...) : Object | Test.java:1242:16:1242:31 | (...)... : String | provenance | | | Test.java:1244:10:1244:30 | userInfo(...) : UriBuilder | Test.java:1245:9:1245:11 | out | provenance | | -| Test.java:1244:28:1244:29 | in : String | Test.java:1244:10:1244:30 | userInfo(...) : UriBuilder | provenance | MaD:74+MaD:75 | +| Test.java:1244:28:1244:29 | in : String | Test.java:1244:10:1244:30 | userInfo(...) : UriBuilder | provenance | MaD:73+MaD:74 | | Test.java:1250:16:1250:31 | (...)... : String | Test.java:1252:28:1252:29 | in : String | provenance | | | Test.java:1250:24:1250:31 | source(...) : Object | Test.java:1250:16:1250:31 | (...)... : String | provenance | | | Test.java:1252:10:1252:30 | userInfo(...) : UriBuilder | Test.java:1253:9:1253:11 | out | provenance | | -| Test.java:1252:28:1252:29 | in : String | Test.java:1252:10:1252:30 | userInfo(...) : UriBuilder | provenance | MaD:74+MaD:75 | +| Test.java:1252:28:1252:29 | in : String | Test.java:1252:10:1252:30 | userInfo(...) : UriBuilder | provenance | MaD:73+MaD:74 | | Test.java:1258:27:1258:53 | (...)... : UriBuilderFactory | Test.java:1259:10:1259:11 | in : UriBuilderFactory | provenance | | | Test.java:1258:46:1258:53 | source(...) : Object | Test.java:1258:27:1258:53 | (...)... : UriBuilderFactory | provenance | | -| Test.java:1259:10:1259:11 | in : UriBuilderFactory | Test.java:1259:10:1259:21 | builder(...) : UriBuilder | provenance | MaD:76 | +| Test.java:1259:10:1259:11 | in : UriBuilderFactory | Test.java:1259:10:1259:21 | builder(...) : UriBuilder | provenance | MaD:75 | | Test.java:1259:10:1259:21 | builder(...) : UriBuilder | Test.java:1260:9:1260:11 | out | provenance | | | Test.java:1265:34:1265:67 | (...)... : DefaultUriBuilderFactory | Test.java:1266:10:1266:11 | in : DefaultUriBuilderFactory | provenance | | | Test.java:1265:60:1265:67 | source(...) : Object | Test.java:1265:34:1265:67 | (...)... : DefaultUriBuilderFactory | provenance | | | Test.java:1266:10:1266:11 | in : DefaultUriBuilderFactory | Test.java:1266:10:1266:21 | builder(...) : UriBuilder | provenance | MaD:21 | -| Test.java:1266:10:1266:11 | in : DefaultUriBuilderFactory | Test.java:1266:10:1266:21 | builder(...) : UriBuilder | provenance | MaD:76 | | Test.java:1266:10:1266:21 | builder(...) : UriBuilder | Test.java:1267:9:1267:11 | out | provenance | | | Test.java:1272:27:1272:53 | (...)... : UriBuilderFactory | Test.java:1273:10:1273:11 | in : UriBuilderFactory | provenance | | | Test.java:1272:46:1272:53 | source(...) : Object | Test.java:1272:27:1272:53 | (...)... : UriBuilderFactory | provenance | | -| Test.java:1273:10:1273:11 | in : UriBuilderFactory | Test.java:1273:10:1273:27 | uriString(...) : UriBuilder | provenance | MaD:78 | +| Test.java:1273:10:1273:11 | in : UriBuilderFactory | Test.java:1273:10:1273:27 | uriString(...) : UriBuilder | provenance | MaD:76 | | Test.java:1273:10:1273:27 | uriString(...) : UriBuilder | Test.java:1274:9:1274:11 | out | provenance | | | Test.java:1279:16:1279:31 | (...)... : String | Test.java:1281:29:1281:30 | in : String | provenance | | | Test.java:1279:24:1279:31 | source(...) : Object | Test.java:1279:16:1279:31 | (...)... : String | provenance | | | Test.java:1281:10:1281:31 | uriString(...) : UriBuilder | Test.java:1282:9:1282:11 | out | provenance | | -| Test.java:1281:29:1281:30 | in : String | Test.java:1281:10:1281:31 | uriString(...) : UriBuilder | provenance | MaD:77 | +| Test.java:1281:29:1281:30 | in : String | Test.java:1281:10:1281:31 | uriString(...) : UriBuilder | provenance | MaD:76 | | Test.java:1287:16:1287:31 | (...)... : String | Test.java:1289:29:1289:30 | in : String | provenance | | | Test.java:1287:24:1287:31 | source(...) : Object | Test.java:1287:16:1287:31 | (...)... : String | provenance | | | Test.java:1289:10:1289:31 | uriString(...) : UriBuilder | Test.java:1290:9:1290:11 | out | provenance | | -| Test.java:1289:29:1289:30 | in : String | Test.java:1289:10:1289:31 | uriString(...) : UriBuilder | provenance | MaD:77 | +| Test.java:1289:29:1289:30 | in : String | Test.java:1289:10:1289:31 | uriString(...) : UriBuilder | provenance | MaD:24 | | Test.java:1295:34:1295:67 | (...)... : DefaultUriBuilderFactory | Test.java:1296:10:1296:11 | in : DefaultUriBuilderFactory | provenance | | | Test.java:1295:60:1295:67 | source(...) : Object | Test.java:1295:34:1295:67 | (...)... : DefaultUriBuilderFactory | provenance | | | Test.java:1296:10:1296:11 | in : DefaultUriBuilderFactory | Test.java:1296:10:1296:27 | uriString(...) : UriBuilder | provenance | MaD:24 | -| Test.java:1296:10:1296:11 | in : DefaultUriBuilderFactory | Test.java:1296:10:1296:27 | uriString(...) : UriBuilder | provenance | MaD:78 | | Test.java:1296:10:1296:27 | uriString(...) : UriBuilder | Test.java:1297:9:1297:11 | out | provenance | | | Test.java:1302:44:1302:95 | new StubUriTemplateVariables(...) : StubUriTemplateVariables [] : Object | Test.java:1303:10:1303:11 | in : StubUriTemplateVariables [] : Object | provenance | | | Test.java:1302:73:1302:94 | of(...) : Map [] : Object | Test.java:44:30:44:34 | m : Map [] : Object | provenance | | @@ -905,54 +901,54 @@ edges | Test.java:1302:86:1302:93 | source(...) : Object | Test.java:1302:73:1302:94 | of(...) : Map [] : Object | provenance | MaD:6 | | Test.java:1303:10:1303:11 | in : StubUriTemplateVariables [] : Object | Test.java:46:19:46:26 | parameter this : StubUriTemplateVariables [] : Object | provenance | | | Test.java:1303:10:1303:11 | in : StubUriTemplateVariables [] : Object | Test.java:1303:10:1303:26 | getValue(...) : Object | provenance | MaD:7 | -| Test.java:1303:10:1303:11 | in : StubUriTemplateVariables [] : Object | Test.java:1303:10:1303:26 | getValue(...) : Object | provenance | MaD:79 | +| Test.java:1303:10:1303:11 | in : StubUriTemplateVariables [] : Object | Test.java:1303:10:1303:26 | getValue(...) : Object | provenance | MaD:77 | | Test.java:1303:10:1303:26 | getValue(...) : Object | Test.java:1304:9:1304:11 | out | provenance | | | Test.java:1323:23:1323:45 | (...)... : UriComponents | Test.java:1324:10:1324:11 | in : UriComponents | provenance | | | Test.java:1323:38:1323:45 | source(...) : Object | Test.java:1323:23:1323:45 | (...)... : UriComponents | provenance | | -| Test.java:1324:10:1324:11 | in : UriComponents | Test.java:1324:10:1324:24 | encode(...) : UriComponents | provenance | MaD:80 | +| Test.java:1324:10:1324:11 | in : UriComponents | Test.java:1324:10:1324:24 | encode(...) : UriComponents | provenance | MaD:78 | | Test.java:1324:10:1324:24 | encode(...) : UriComponents | Test.java:1325:9:1325:11 | out | provenance | | | Test.java:1330:23:1330:45 | (...)... : UriComponents | Test.java:1331:10:1331:11 | in : UriComponents | provenance | | | Test.java:1330:38:1330:45 | source(...) : Object | Test.java:1330:23:1330:45 | (...)... : UriComponents | provenance | | -| Test.java:1331:10:1331:11 | in : UriComponents | Test.java:1331:10:1331:20 | encode(...) : UriComponents | provenance | MaD:80 | +| Test.java:1331:10:1331:11 | in : UriComponents | Test.java:1331:10:1331:20 | encode(...) : UriComponents | provenance | MaD:78 | | Test.java:1331:10:1331:20 | encode(...) : UriComponents | Test.java:1332:9:1332:11 | out | provenance | | | Test.java:1337:13:1337:37 | newMapWithValue(...) : Map [] : Object | Test.java:1339:26:1339:27 | in : Map [] : Object | provenance | | | Test.java:1337:29:1337:36 | source(...) : Object | Test.java:53:22:53:35 | element : Object | provenance | | | Test.java:1337:29:1337:36 | source(...) : Object | Test.java:1337:13:1337:37 | newMapWithValue(...) : Map [] : Object | provenance | MaD:6 | | Test.java:1339:10:1339:28 | expand(...) : UriComponents | Test.java:1340:9:1340:11 | out | provenance | | -| Test.java:1339:26:1339:27 | in : Map [] : Object | Test.java:1339:10:1339:28 | expand(...) : UriComponents | provenance | MaD:81 | +| Test.java:1339:26:1339:27 | in : Map [] : Object | Test.java:1339:10:1339:28 | expand(...) : UriComponents | provenance | MaD:79 | | Test.java:1345:18:1345:39 | {...} : Object[] [[]] : Object | Test.java:1347:26:1347:27 | in : Object[] [[]] : Object | provenance | | | Test.java:1345:31:1345:38 | source(...) : Object | Test.java:1345:18:1345:39 | {...} : Object[] [[]] : Object | provenance | | | Test.java:1347:10:1347:28 | expand(...) : UriComponents | Test.java:1348:9:1348:11 | out | provenance | | -| Test.java:1347:26:1347:27 | in : Object[] [[]] : Object | Test.java:1347:10:1347:28 | expand(...) : UriComponents | provenance | MaD:82 | +| Test.java:1347:26:1347:27 | in : Object[] [[]] : Object | Test.java:1347:10:1347:28 | expand(...) : UriComponents | provenance | MaD:80 | | Test.java:1353:44:1353:95 | new StubUriTemplateVariables(...) : StubUriTemplateVariables [] : Object | Test.java:1355:26:1355:27 | in : StubUriTemplateVariables [] : Object | provenance | | | Test.java:1353:73:1353:94 | of(...) : Map [] : Object | Test.java:44:30:44:34 | m : Map [] : Object | provenance | | | Test.java:1353:73:1353:94 | of(...) : Map [] : Object | Test.java:1353:44:1353:95 | new StubUriTemplateVariables(...) : StubUriTemplateVariables [] : Object | provenance | MaD:2 | | Test.java:1353:86:1353:93 | source(...) : Object | Test.java:1353:73:1353:94 | of(...) : Map [] : Object | provenance | MaD:6 | | Test.java:1355:10:1355:28 | expand(...) : UriComponents | Test.java:1356:9:1356:11 | out | provenance | | -| Test.java:1355:26:1355:27 | in : StubUriTemplateVariables [] : Object | Test.java:1355:10:1355:28 | expand(...) : UriComponents | provenance | MaD:83 | +| Test.java:1355:26:1355:27 | in : StubUriTemplateVariables [] : Object | Test.java:1355:10:1355:28 | expand(...) : UriComponents | provenance | MaD:81 | | Test.java:1361:23:1361:45 | (...)... : UriComponents | Test.java:1362:10:1362:11 | in : UriComponents | provenance | | | Test.java:1361:38:1361:45 | source(...) : Object | Test.java:1361:23:1361:45 | (...)... : UriComponents | provenance | | -| Test.java:1362:10:1362:11 | in : UriComponents | Test.java:1362:10:1362:25 | getFragment(...) : String | provenance | MaD:84 | +| Test.java:1362:10:1362:11 | in : UriComponents | Test.java:1362:10:1362:25 | getFragment(...) : String | provenance | MaD:82 | | Test.java:1362:10:1362:25 | getFragment(...) : String | Test.java:1363:9:1363:11 | out | provenance | | | Test.java:1368:23:1368:45 | (...)... : UriComponents | Test.java:1369:10:1369:11 | in : UriComponents | provenance | | | Test.java:1368:38:1368:45 | source(...) : Object | Test.java:1368:23:1368:45 | (...)... : UriComponents | provenance | | -| Test.java:1369:10:1369:11 | in : UriComponents | Test.java:1369:10:1369:21 | getHost(...) : String | provenance | MaD:85 | +| Test.java:1369:10:1369:11 | in : UriComponents | Test.java:1369:10:1369:21 | getHost(...) : String | provenance | MaD:83 | | Test.java:1369:10:1369:21 | getHost(...) : String | Test.java:1370:9:1370:11 | out | provenance | | | Test.java:1375:23:1375:45 | (...)... : UriComponents | Test.java:1376:10:1376:11 | in : UriComponents | provenance | | | Test.java:1375:38:1375:45 | source(...) : Object | Test.java:1375:23:1375:45 | (...)... : UriComponents | provenance | | -| Test.java:1376:10:1376:11 | in : UriComponents | Test.java:1376:10:1376:21 | getPath(...) : String | provenance | MaD:86 | +| Test.java:1376:10:1376:11 | in : UriComponents | Test.java:1376:10:1376:21 | getPath(...) : String | provenance | MaD:84 | | Test.java:1376:10:1376:21 | getPath(...) : String | Test.java:1377:9:1377:11 | out | provenance | | | Test.java:1382:23:1382:45 | (...)... : UriComponents | Test.java:1383:10:1383:11 | in : UriComponents | provenance | | | Test.java:1382:38:1382:45 | source(...) : Object | Test.java:1382:23:1382:45 | (...)... : UriComponents | provenance | | -| Test.java:1383:10:1383:11 | in : UriComponents | Test.java:1383:10:1383:29 | getPathSegments(...) : List | provenance | MaD:87 | +| Test.java:1383:10:1383:11 | in : UriComponents | Test.java:1383:10:1383:29 | getPathSegments(...) : List | provenance | MaD:85 | | Test.java:1383:10:1383:29 | getPathSegments(...) : List | Test.java:1384:9:1384:11 | out | provenance | | | Test.java:1389:23:1389:45 | (...)... : UriComponents | Test.java:1390:10:1390:11 | in : UriComponents | provenance | | | Test.java:1389:38:1389:45 | source(...) : Object | Test.java:1389:23:1389:45 | (...)... : UriComponents | provenance | | -| Test.java:1390:10:1390:11 | in : UriComponents | Test.java:1390:10:1390:22 | getQuery(...) : String | provenance | MaD:88 | +| Test.java:1390:10:1390:11 | in : UriComponents | Test.java:1390:10:1390:22 | getQuery(...) : String | provenance | MaD:86 | | Test.java:1390:10:1390:22 | getQuery(...) : String | Test.java:1391:9:1391:11 | out | provenance | | | Test.java:1396:23:1396:45 | (...)... : UriComponents | Test.java:1397:10:1397:11 | in : UriComponents | provenance | | | Test.java:1396:38:1396:45 | source(...) : Object | Test.java:1396:23:1396:45 | (...)... : UriComponents | provenance | | -| Test.java:1397:10:1397:11 | in : UriComponents | Test.java:1397:10:1397:28 | getQueryParams(...) : MultiValueMap [, ] : Object | provenance | MaD:90 | +| Test.java:1397:10:1397:11 | in : UriComponents | Test.java:1397:10:1397:28 | getQueryParams(...) : MultiValueMap [, ] : Object | provenance | MaD:88 | | Test.java:1397:10:1397:28 | getQueryParams(...) : MultiValueMap [, ] : Object | Test.java:1398:38:1398:40 | out : MultiValueMap [, ] : Object | provenance | | | Test.java:1398:20:1398:41 | (...)... : List [] : Object | Test.java:49:20:49:39 | container : List [] : Object | provenance | | | Test.java:1398:20:1398:41 | (...)... : List [] : Object | Test.java:1398:9:1398:42 | getElement(...) | provenance | MaD:1 | @@ -961,39 +957,39 @@ edges | Test.java:1398:38:1398:40 | out : MultiValueMap [, ] : Object | Test.java:1398:26:1398:41 | getMapValue(...) : Object [] : Object | provenance | MaD:7 | | Test.java:1403:23:1403:45 | (...)... : UriComponents | Test.java:1404:10:1404:11 | in : UriComponents | provenance | | | Test.java:1403:38:1403:45 | source(...) : Object | Test.java:1403:23:1403:45 | (...)... : UriComponents | provenance | | -| Test.java:1404:10:1404:11 | in : UriComponents | Test.java:1404:10:1404:28 | getQueryParams(...) : MultiValueMap [] : Object | provenance | MaD:89 | +| Test.java:1404:10:1404:11 | in : UriComponents | Test.java:1404:10:1404:28 | getQueryParams(...) : MultiValueMap [] : Object | provenance | MaD:87 | | Test.java:1404:10:1404:28 | getQueryParams(...) : MultiValueMap [] : Object | Test.java:1405:19:1405:21 | out : MultiValueMap [] : Object | provenance | | | Test.java:1405:19:1405:21 | out : MultiValueMap [] : Object | Test.java:50:18:50:27 | m : MultiValueMap [] : Object | provenance | | | Test.java:1405:19:1405:21 | out : MultiValueMap [] : Object | Test.java:1405:9:1405:22 | getMapKey(...) | provenance | MaD:8 | | Test.java:1410:23:1410:45 | (...)... : UriComponents | Test.java:1411:10:1411:11 | in : UriComponents | provenance | | | Test.java:1410:38:1410:45 | source(...) : Object | Test.java:1410:23:1410:45 | (...)... : UriComponents | provenance | | -| Test.java:1411:10:1411:11 | in : UriComponents | Test.java:1411:10:1411:23 | getScheme(...) : String | provenance | MaD:91 | +| Test.java:1411:10:1411:11 | in : UriComponents | Test.java:1411:10:1411:23 | getScheme(...) : String | provenance | MaD:89 | | Test.java:1411:10:1411:23 | getScheme(...) : String | Test.java:1412:9:1412:11 | out | provenance | | | Test.java:1417:23:1417:45 | (...)... : UriComponents | Test.java:1418:10:1418:11 | in : UriComponents | provenance | | | Test.java:1417:38:1417:45 | source(...) : Object | Test.java:1417:23:1417:45 | (...)... : UriComponents | provenance | | -| Test.java:1418:10:1418:11 | in : UriComponents | Test.java:1418:10:1418:35 | getSchemeSpecificPart(...) : String | provenance | MaD:92 | +| Test.java:1418:10:1418:11 | in : UriComponents | Test.java:1418:10:1418:35 | getSchemeSpecificPart(...) : String | provenance | MaD:90 | | Test.java:1418:10:1418:35 | getSchemeSpecificPart(...) : String | Test.java:1419:9:1419:11 | out | provenance | | | Test.java:1424:23:1424:45 | (...)... : UriComponents | Test.java:1425:10:1425:11 | in : UriComponents | provenance | | | Test.java:1424:38:1424:45 | source(...) : Object | Test.java:1424:23:1424:45 | (...)... : UriComponents | provenance | | -| Test.java:1425:10:1425:11 | in : UriComponents | Test.java:1425:10:1425:25 | getUserInfo(...) : String | provenance | MaD:93 | +| Test.java:1425:10:1425:11 | in : UriComponents | Test.java:1425:10:1425:25 | getUserInfo(...) : String | provenance | MaD:91 | | Test.java:1425:10:1425:25 | getUserInfo(...) : String | Test.java:1426:9:1426:11 | out | provenance | | | Test.java:1431:23:1431:45 | (...)... : UriComponents | Test.java:1432:10:1432:11 | in : UriComponents | provenance | | | Test.java:1431:38:1431:45 | source(...) : Object | Test.java:1431:23:1431:45 | (...)... : UriComponents | provenance | | -| Test.java:1432:10:1432:11 | in : UriComponents | Test.java:1432:10:1432:19 | toUri(...) : URI | provenance | MaD:96 | +| Test.java:1432:10:1432:11 | in : UriComponents | Test.java:1432:10:1432:19 | toUri(...) : URI | provenance | MaD:94 | | Test.java:1432:10:1432:19 | toUri(...) : URI | Test.java:1433:9:1433:11 | out | provenance | | | Test.java:1438:23:1438:45 | (...)... : UriComponents | Test.java:1439:10:1439:11 | in : UriComponents | provenance | | | Test.java:1438:38:1438:45 | source(...) : Object | Test.java:1438:23:1438:45 | (...)... : UriComponents | provenance | | -| Test.java:1439:10:1439:11 | in : UriComponents | Test.java:1439:10:1439:25 | toUriString(...) : String | provenance | MaD:97 | +| Test.java:1439:10:1439:11 | in : UriComponents | Test.java:1439:10:1439:25 | toUriString(...) : String | provenance | MaD:95 | | Test.java:1439:10:1439:25 | toUriString(...) : String | Test.java:1440:9:1440:11 | out | provenance | | | Test.java:1445:13:1445:37 | newMapWithValue(...) : Map [] : Object | Test.java:1447:25:1447:26 | in : Map [] : Object | provenance | | | Test.java:1445:29:1445:36 | source(...) : Object | Test.java:53:22:53:35 | element : Object | provenance | | | Test.java:1445:29:1445:36 | source(...) : Object | Test.java:1445:13:1445:37 | newMapWithValue(...) : Map [] : Object | provenance | MaD:6 | | Test.java:1447:10:1447:27 | build(...) : URI | Test.java:1448:9:1448:11 | out | provenance | | -| Test.java:1447:25:1447:26 | in : Map [] : Object | Test.java:1447:10:1447:27 | build(...) : URI | provenance | MaD:36 | +| Test.java:1447:25:1447:26 | in : Map [] : Object | Test.java:1447:10:1447:27 | build(...) : URI | provenance | MaD:96 | | Test.java:1453:18:1453:39 | {...} : Object[] [[]] : Object | Test.java:1455:25:1455:26 | in : Object[] [[]] : Object | provenance | | | Test.java:1453:31:1453:38 | source(...) : Object | Test.java:1453:18:1453:39 | {...} : Object[] [[]] : Object | provenance | | | Test.java:1455:10:1455:27 | build(...) : URI | Test.java:1456:9:1456:11 | out | provenance | | -| Test.java:1455:25:1455:26 | in : Object[] [[]] : Object | Test.java:1455:10:1455:27 | build(...) : URI | provenance | MaD:37 | +| Test.java:1455:25:1455:26 | in : Object[] [[]] : Object | Test.java:1455:10:1455:27 | build(...) : URI | provenance | MaD:97 | | Test.java:1461:30:1461:59 | (...)... : UriComponentsBuilder | Test.java:1462:10:1462:11 | in : UriComponentsBuilder | provenance | | | Test.java:1461:52:1461:59 | source(...) : Object | Test.java:1461:30:1461:59 | (...)... : UriComponentsBuilder | provenance | | | Test.java:1462:10:1462:11 | in : UriComponentsBuilder | Test.java:1462:10:1462:24 | build(...) : UriComponents | provenance | MaD:98 | @@ -1004,12 +1000,10 @@ edges | Test.java:1469:10:1469:19 | build(...) : UriComponents | Test.java:1470:9:1470:11 | out | provenance | | | Test.java:1475:30:1475:59 | (...)... : UriComponentsBuilder | Test.java:1476:10:1476:11 | in : UriComponentsBuilder | provenance | | | Test.java:1475:52:1475:59 | source(...) : Object | Test.java:1475:30:1475:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1476:10:1476:11 | in : UriComponentsBuilder | Test.java:1476:10:1476:33 | build(...) : URI | provenance | MaD:38 | | Test.java:1476:10:1476:11 | in : UriComponentsBuilder | Test.java:1476:10:1476:33 | build(...) : URI | provenance | MaD:98 | | Test.java:1476:10:1476:33 | build(...) : URI | Test.java:1477:9:1477:11 | out | provenance | | | Test.java:1482:30:1482:59 | (...)... : UriComponentsBuilder | Test.java:1483:10:1483:11 | in : UriComponentsBuilder | provenance | | | Test.java:1482:52:1482:59 | source(...) : Object | Test.java:1482:30:1482:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1483:10:1483:11 | in : UriComponentsBuilder | Test.java:1483:10:1483:28 | build(...) : URI | provenance | MaD:38 | | Test.java:1483:10:1483:11 | in : UriComponentsBuilder | Test.java:1483:10:1483:28 | build(...) : URI | provenance | MaD:98 | | Test.java:1483:10:1483:28 | build(...) : URI | Test.java:1484:9:1484:11 | out | provenance | | | Test.java:1489:13:1489:37 | newMapWithValue(...) : Map [] : Object | Test.java:1491:34:1491:35 | in : Map [] : Object | provenance | | @@ -1035,12 +1029,12 @@ edges | Test.java:1520:10:1520:20 | encode(...) : UriComponentsBuilder | Test.java:1521:9:1521:11 | out | provenance | | | Test.java:1526:30:1526:59 | (...)... : UriComponentsBuilder | Test.java:1527:10:1527:11 | in : UriComponentsBuilder | provenance | | | Test.java:1526:52:1526:59 | source(...) : Object | Test.java:1526:30:1526:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1527:10:1527:11 | in : UriComponentsBuilder | Test.java:1527:10:1527:26 | fragment(...) : UriComponentsBuilder | provenance | MaD:40 | +| Test.java:1527:10:1527:11 | in : UriComponentsBuilder | Test.java:1527:10:1527:26 | fragment(...) : UriComponentsBuilder | provenance | MaD:39 | | Test.java:1527:10:1527:26 | fragment(...) : UriComponentsBuilder | Test.java:1528:9:1528:11 | out | provenance | | | Test.java:1533:16:1533:31 | (...)... : String | Test.java:1535:28:1535:29 | in : String | provenance | | | Test.java:1533:24:1533:31 | source(...) : Object | Test.java:1533:16:1533:31 | (...)... : String | provenance | | | Test.java:1535:10:1535:30 | fragment(...) : UriComponentsBuilder | Test.java:1536:9:1536:11 | out | provenance | | -| Test.java:1535:28:1535:29 | in : String | Test.java:1535:10:1535:30 | fragment(...) : UriComponentsBuilder | provenance | MaD:39+MaD:40 | +| Test.java:1535:28:1535:29 | in : String | Test.java:1535:10:1535:30 | fragment(...) : UriComponentsBuilder | provenance | MaD:38+MaD:39 | | Test.java:1541:21:1541:41 | (...)... : HttpRequest | Test.java:1542:47:1542:48 | in : HttpRequest | provenance | | | Test.java:1541:34:1541:41 | source(...) : Object | Test.java:1541:21:1541:41 | (...)... : HttpRequest | provenance | | | Test.java:1542:10:1542:49 | fromHttpRequest(...) : UriComponentsBuilder | Test.java:1543:9:1543:11 | out | provenance | | @@ -1067,12 +1061,12 @@ edges | Test.java:1577:45:1577:46 | in : String | Test.java:1577:10:1577:47 | fromUriString(...) : UriComponentsBuilder | provenance | MaD:108 | | Test.java:1583:30:1583:59 | (...)... : UriComponentsBuilder | Test.java:1584:10:1584:11 | in : UriComponentsBuilder | provenance | | | Test.java:1583:52:1583:59 | source(...) : Object | Test.java:1583:30:1583:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1584:10:1584:11 | in : UriComponentsBuilder | Test.java:1584:10:1584:22 | host(...) : UriComponentsBuilder | provenance | MaD:42 | +| Test.java:1584:10:1584:11 | in : UriComponentsBuilder | Test.java:1584:10:1584:22 | host(...) : UriComponentsBuilder | provenance | MaD:41 | | Test.java:1584:10:1584:22 | host(...) : UriComponentsBuilder | Test.java:1585:9:1585:11 | out | provenance | | | Test.java:1590:16:1590:31 | (...)... : String | Test.java:1592:24:1592:25 | in : String | provenance | | | Test.java:1590:24:1590:31 | source(...) : Object | Test.java:1590:16:1590:31 | (...)... : String | provenance | | | Test.java:1592:10:1592:26 | host(...) : UriComponentsBuilder | Test.java:1593:9:1593:11 | out | provenance | | -| Test.java:1592:24:1592:25 | in : String | Test.java:1592:10:1592:26 | host(...) : UriComponentsBuilder | provenance | MaD:41+MaD:42 | +| Test.java:1592:24:1592:25 | in : String | Test.java:1592:10:1592:26 | host(...) : UriComponentsBuilder | provenance | MaD:40+MaD:41 | | Test.java:1598:27:1598:53 | (...)... : InetSocketAddress | Test.java:1599:55:1599:56 | in : InetSocketAddress | provenance | | | Test.java:1598:46:1598:53 | source(...) : Object | Test.java:1598:27:1598:53 | (...)... : InetSocketAddress | provenance | | | Test.java:1599:10:1599:57 | parseForwardedFor(...) : InetSocketAddress | Test.java:1600:9:1600:11 | out | provenance | | @@ -1083,153 +1077,153 @@ edges | Test.java:1606:49:1606:50 | in : HttpRequest | Test.java:1606:10:1606:57 | parseForwardedFor(...) : InetSocketAddress | provenance | MaD:109 | | Test.java:1612:30:1612:59 | (...)... : UriComponentsBuilder | Test.java:1613:10:1613:11 | in : UriComponentsBuilder | provenance | | | Test.java:1612:52:1612:59 | source(...) : Object | Test.java:1612:30:1612:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1613:10:1613:11 | in : UriComponentsBuilder | Test.java:1613:10:1613:22 | path(...) : UriComponentsBuilder | provenance | MaD:44 | +| Test.java:1613:10:1613:11 | in : UriComponentsBuilder | Test.java:1613:10:1613:22 | path(...) : UriComponentsBuilder | provenance | MaD:43 | | Test.java:1613:10:1613:22 | path(...) : UriComponentsBuilder | Test.java:1614:9:1614:11 | out | provenance | | | Test.java:1619:16:1619:31 | (...)... : String | Test.java:1621:24:1621:25 | in : String | provenance | | | Test.java:1619:24:1619:31 | source(...) : Object | Test.java:1619:16:1619:31 | (...)... : String | provenance | | | Test.java:1621:10:1621:26 | path(...) : UriComponentsBuilder | Test.java:1622:9:1622:11 | out | provenance | | -| Test.java:1621:24:1621:25 | in : String | Test.java:1621:10:1621:26 | path(...) : UriComponentsBuilder | provenance | MaD:43+MaD:44 | +| Test.java:1621:24:1621:25 | in : String | Test.java:1621:10:1621:26 | path(...) : UriComponentsBuilder | provenance | MaD:42+MaD:43 | | Test.java:1627:30:1627:59 | (...)... : UriComponentsBuilder | Test.java:1628:10:1628:11 | in : UriComponentsBuilder | provenance | | | Test.java:1627:52:1627:59 | source(...) : Object | Test.java:1627:30:1627:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1628:10:1628:11 | in : UriComponentsBuilder | Test.java:1628:10:1628:39 | pathSegment(...) : UriComponentsBuilder | provenance | MaD:46 | +| Test.java:1628:10:1628:11 | in : UriComponentsBuilder | Test.java:1628:10:1628:39 | pathSegment(...) : UriComponentsBuilder | provenance | MaD:45 | | Test.java:1628:10:1628:39 | pathSegment(...) : UriComponentsBuilder | Test.java:1629:9:1629:11 | out | provenance | | | Test.java:1634:18:1634:47 | {...} : String[] [[]] : String | Test.java:1636:31:1636:32 | in : String[] [[]] : String | provenance | | | Test.java:1634:31:1634:46 | (...)... : String | Test.java:1634:18:1634:47 | {...} : String[] [[]] : String | provenance | | | Test.java:1634:39:1634:46 | source(...) : Object | Test.java:1634:31:1634:46 | (...)... : String | provenance | | | Test.java:1636:10:1636:33 | pathSegment(...) : UriComponentsBuilder | Test.java:1637:9:1637:11 | out | provenance | | -| Test.java:1636:31:1636:32 | in : String[] [[]] : String | Test.java:1636:10:1636:33 | pathSegment(...) : UriComponentsBuilder | provenance | MaD:45+MaD:46 | +| Test.java:1636:31:1636:32 | in : String[] [[]] : String | Test.java:1636:10:1636:33 | pathSegment(...) : UriComponentsBuilder | provenance | MaD:44+MaD:45 | | Test.java:1642:16:1642:31 | (...)... : String | Test.java:1644:24:1644:25 | in : String | provenance | | | Test.java:1642:24:1642:31 | source(...) : Object | Test.java:1642:16:1642:31 | (...)... : String | provenance | | | Test.java:1644:10:1644:26 | port(...) : UriComponentsBuilder | Test.java:1645:9:1645:11 | out | provenance | | -| Test.java:1644:24:1644:25 | in : String | Test.java:1644:10:1644:26 | port(...) : UriComponentsBuilder | provenance | MaD:47+MaD:48 | +| Test.java:1644:24:1644:25 | in : String | Test.java:1644:10:1644:26 | port(...) : UriComponentsBuilder | provenance | MaD:46+MaD:47 | | Test.java:1650:30:1650:59 | (...)... : UriComponentsBuilder | Test.java:1651:10:1651:11 | in : UriComponentsBuilder | provenance | | | Test.java:1650:52:1650:59 | source(...) : Object | Test.java:1650:30:1650:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1651:10:1651:11 | in : UriComponentsBuilder | Test.java:1651:10:1651:19 | port(...) : UriComponentsBuilder | provenance | MaD:48 | +| Test.java:1651:10:1651:11 | in : UriComponentsBuilder | Test.java:1651:10:1651:19 | port(...) : UriComponentsBuilder | provenance | MaD:47 | | Test.java:1651:10:1651:19 | port(...) : UriComponentsBuilder | Test.java:1652:9:1652:11 | out | provenance | | | Test.java:1657:30:1657:59 | (...)... : UriComponentsBuilder | Test.java:1658:10:1658:11 | in : UriComponentsBuilder | provenance | | | Test.java:1657:52:1657:59 | source(...) : Object | Test.java:1657:30:1657:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1658:10:1658:11 | in : UriComponentsBuilder | Test.java:1658:10:1658:30 | port(...) : UriComponentsBuilder | provenance | MaD:48 | +| Test.java:1658:10:1658:11 | in : UriComponentsBuilder | Test.java:1658:10:1658:30 | port(...) : UriComponentsBuilder | provenance | MaD:47 | | Test.java:1658:10:1658:30 | port(...) : UriComponentsBuilder | Test.java:1659:9:1659:11 | out | provenance | | | Test.java:1664:30:1664:59 | (...)... : UriComponentsBuilder | Test.java:1665:10:1665:11 | in : UriComponentsBuilder | provenance | | | Test.java:1664:52:1664:59 | source(...) : Object | Test.java:1664:30:1664:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1665:10:1665:11 | in : UriComponentsBuilder | Test.java:1665:10:1665:23 | query(...) : UriComponentsBuilder | provenance | MaD:50 | +| Test.java:1665:10:1665:11 | in : UriComponentsBuilder | Test.java:1665:10:1665:23 | query(...) : UriComponentsBuilder | provenance | MaD:49 | | Test.java:1665:10:1665:23 | query(...) : UriComponentsBuilder | Test.java:1666:9:1666:11 | out | provenance | | | Test.java:1671:16:1671:31 | (...)... : String | Test.java:1673:25:1673:26 | in : String | provenance | | | Test.java:1671:24:1671:31 | source(...) : Object | Test.java:1671:16:1671:31 | (...)... : String | provenance | | | Test.java:1673:10:1673:27 | query(...) : UriComponentsBuilder | Test.java:1674:9:1674:11 | out | provenance | | -| Test.java:1673:25:1673:26 | in : String | Test.java:1673:10:1673:27 | query(...) : UriComponentsBuilder | provenance | MaD:49+MaD:50 | +| Test.java:1673:25:1673:26 | in : String | Test.java:1673:10:1673:27 | query(...) : UriComponentsBuilder | provenance | MaD:48+MaD:49 | | Test.java:1679:20:1679:36 | of(...) : List [] : Object | Test.java:1681:44:1681:45 | in : List [] : Object | provenance | | | Test.java:1679:28:1679:35 | source(...) : Object | Test.java:1679:20:1679:36 | of(...) : List [] : Object | provenance | MaD:4 | | Test.java:1681:10:1681:46 | queryParam(...) : UriComponentsBuilder | Test.java:1682:9:1682:11 | out | provenance | | -| Test.java:1681:44:1681:45 | in : List [] : Object | Test.java:1681:10:1681:46 | queryParam(...) : UriComponentsBuilder | provenance | MaD:51+MaD:54 | +| Test.java:1681:44:1681:45 | in : List [] : Object | Test.java:1681:10:1681:46 | queryParam(...) : UriComponentsBuilder | provenance | MaD:50+MaD:53 | | Test.java:1687:18:1687:39 | {...} : Object[] [[]] : Object | Test.java:1689:44:1689:45 | in : Object[] [[]] : Object | provenance | | | Test.java:1687:31:1687:38 | source(...) : Object | Test.java:1687:18:1687:39 | {...} : Object[] [[]] : Object | provenance | | | Test.java:1689:10:1689:46 | queryParam(...) : UriComponentsBuilder | Test.java:1690:9:1690:11 | out | provenance | | -| Test.java:1689:44:1689:45 | in : Object[] [[]] : Object | Test.java:1689:10:1689:46 | queryParam(...) : UriComponentsBuilder | provenance | MaD:52+MaD:54 | +| Test.java:1689:44:1689:45 | in : Object[] [[]] : Object | Test.java:1689:10:1689:46 | queryParam(...) : UriComponentsBuilder | provenance | MaD:51+MaD:53 | | Test.java:1695:30:1695:59 | (...)... : UriComponentsBuilder | Test.java:1696:10:1696:11 | in : UriComponentsBuilder | provenance | | | Test.java:1695:52:1695:59 | source(...) : Object | Test.java:1695:30:1695:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1696:10:1696:11 | in : UriComponentsBuilder | Test.java:1696:10:1696:52 | queryParam(...) : UriComponentsBuilder | provenance | MaD:54 | +| Test.java:1696:10:1696:11 | in : UriComponentsBuilder | Test.java:1696:10:1696:52 | queryParam(...) : UriComponentsBuilder | provenance | MaD:53 | | Test.java:1696:10:1696:52 | queryParam(...) : UriComponentsBuilder | Test.java:1697:9:1697:11 | out | provenance | | | Test.java:1702:30:1702:59 | (...)... : UriComponentsBuilder | Test.java:1703:10:1703:11 | in : UriComponentsBuilder | provenance | | | Test.java:1702:52:1702:59 | source(...) : Object | Test.java:1702:30:1702:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1703:10:1703:11 | in : UriComponentsBuilder | Test.java:1703:10:1703:54 | queryParam(...) : UriComponentsBuilder | provenance | MaD:54 | +| Test.java:1703:10:1703:11 | in : UriComponentsBuilder | Test.java:1703:10:1703:54 | queryParam(...) : UriComponentsBuilder | provenance | MaD:53 | | Test.java:1703:10:1703:54 | queryParam(...) : UriComponentsBuilder | Test.java:1704:9:1704:11 | out | provenance | | | Test.java:1709:16:1709:31 | (...)... : String | Test.java:1711:30:1711:31 | in : String | provenance | | | Test.java:1709:24:1709:31 | source(...) : Object | Test.java:1709:16:1709:31 | (...)... : String | provenance | | | Test.java:1711:10:1711:48 | queryParam(...) : UriComponentsBuilder | Test.java:1712:9:1712:11 | out | provenance | | -| Test.java:1711:30:1711:31 | in : String | Test.java:1711:10:1711:48 | queryParam(...) : UriComponentsBuilder | provenance | MaD:53+MaD:54 | +| Test.java:1711:30:1711:31 | in : String | Test.java:1711:10:1711:48 | queryParam(...) : UriComponentsBuilder | provenance | MaD:52+MaD:53 | | Test.java:1717:16:1717:31 | (...)... : String | Test.java:1719:30:1719:31 | in : String | provenance | | | Test.java:1717:24:1717:31 | source(...) : Object | Test.java:1717:16:1717:31 | (...)... : String | provenance | | | Test.java:1719:10:1719:50 | queryParam(...) : UriComponentsBuilder | Test.java:1720:9:1720:11 | out | provenance | | -| Test.java:1719:30:1719:31 | in : String | Test.java:1719:10:1719:50 | queryParam(...) : UriComponentsBuilder | provenance | MaD:53+MaD:54 | +| Test.java:1719:30:1719:31 | in : String | Test.java:1719:10:1719:50 | queryParam(...) : UriComponentsBuilder | provenance | MaD:52+MaD:53 | | Test.java:1725:30:1725:59 | (...)... : UriComponentsBuilder | Test.java:1726:10:1726:11 | in : UriComponentsBuilder | provenance | | | Test.java:1725:52:1725:59 | source(...) : Object | Test.java:1725:30:1725:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1726:10:1726:11 | in : UriComponentsBuilder | Test.java:1726:10:1726:43 | queryParamIfPresent(...) : UriComponentsBuilder | provenance | MaD:57 | +| Test.java:1726:10:1726:11 | in : UriComponentsBuilder | Test.java:1726:10:1726:43 | queryParamIfPresent(...) : UriComponentsBuilder | provenance | MaD:56 | | Test.java:1726:10:1726:43 | queryParamIfPresent(...) : UriComponentsBuilder | Test.java:1727:9:1727:11 | out | provenance | | | Test.java:1732:16:1732:31 | (...)... : String | Test.java:1734:39:1734:40 | in : String | provenance | | | Test.java:1732:24:1732:31 | source(...) : Object | Test.java:1732:16:1732:31 | (...)... : String | provenance | | | Test.java:1734:10:1734:47 | queryParamIfPresent(...) : UriComponentsBuilder | Test.java:1735:9:1735:11 | out | provenance | | -| Test.java:1734:39:1734:40 | in : String | Test.java:1734:10:1734:47 | queryParamIfPresent(...) : UriComponentsBuilder | provenance | MaD:55+MaD:57 | +| Test.java:1734:39:1734:40 | in : String | Test.java:1734:10:1734:47 | queryParamIfPresent(...) : UriComponentsBuilder | provenance | MaD:54+MaD:56 | | Test.java:1740:18:1740:38 | of(...) : Optional [] : Object | Test.java:1742:45:1742:46 | in : Optional [] : Object | provenance | | | Test.java:1740:30:1740:37 | source(...) : Object | Test.java:1740:18:1740:38 | of(...) : Optional [] : Object | provenance | MaD:10 | | Test.java:1742:10:1742:47 | queryParamIfPresent(...) : UriComponentsBuilder | Test.java:1743:9:1743:11 | out | provenance | | -| Test.java:1742:45:1742:46 | in : Optional [] : Object | Test.java:1742:10:1742:47 | queryParamIfPresent(...) : UriComponentsBuilder | provenance | MaD:56+MaD:57 | +| Test.java:1742:45:1742:46 | in : Optional [] : Object | Test.java:1742:10:1742:47 | queryParamIfPresent(...) : UriComponentsBuilder | provenance | MaD:55+MaD:56 | | Test.java:1748:30:1748:59 | (...)... : UriComponentsBuilder | Test.java:1749:10:1749:11 | in : UriComponentsBuilder | provenance | | | Test.java:1748:52:1748:59 | source(...) : Object | Test.java:1748:30:1748:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1749:10:1749:11 | in : UriComponentsBuilder | Test.java:1749:10:1749:29 | queryParams(...) : UriComponentsBuilder | provenance | MaD:60 | +| Test.java:1749:10:1749:11 | in : UriComponentsBuilder | Test.java:1749:10:1749:29 | queryParams(...) : UriComponentsBuilder | provenance | MaD:59 | | Test.java:1749:10:1749:29 | queryParams(...) : UriComponentsBuilder | Test.java:1750:9:1750:11 | out | provenance | | | Test.java:1755:23:1755:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | Test.java:1757:31:1757:32 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:1755:47:1755:54 | source(...) : Object | Test.java:54:40:54:53 | element : Object | provenance | | | Test.java:1755:47:1755:54 | source(...) : Object | Test.java:1755:23:1755:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | provenance | MaD:5 | | Test.java:1757:10:1757:33 | queryParams(...) : UriComponentsBuilder | Test.java:1758:9:1758:11 | out | provenance | | -| Test.java:1757:31:1757:32 | in : LinkedMultiValueMap [] : Object | Test.java:1757:10:1757:33 | queryParams(...) : UriComponentsBuilder | provenance | MaD:58+MaD:60 | +| Test.java:1757:31:1757:32 | in : LinkedMultiValueMap [] : Object | Test.java:1757:10:1757:33 | queryParams(...) : UriComponentsBuilder | provenance | MaD:57+MaD:59 | | Test.java:1763:23:1763:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | Test.java:1765:31:1765:32 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:1763:49:1763:56 | source(...) : Object | Test.java:55:42:55:55 | element : Object | provenance | | | Test.java:1763:49:1763:56 | source(...) : Object | Test.java:1763:23:1763:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | provenance | MaD:9 | | Test.java:1765:10:1765:33 | queryParams(...) : UriComponentsBuilder | Test.java:1766:9:1766:11 | out | provenance | | -| Test.java:1765:31:1765:32 | in : LinkedMultiValueMap [] : Object | Test.java:1765:10:1765:33 | queryParams(...) : UriComponentsBuilder | provenance | MaD:59+MaD:60 | +| Test.java:1765:31:1765:32 | in : LinkedMultiValueMap [] : Object | Test.java:1765:10:1765:33 | queryParams(...) : UriComponentsBuilder | provenance | MaD:58+MaD:59 | | Test.java:1771:30:1771:59 | (...)... : UriComponentsBuilder | Test.java:1772:10:1772:11 | in : UriComponentsBuilder | provenance | | | Test.java:1771:52:1771:59 | source(...) : Object | Test.java:1771:30:1771:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1772:10:1772:11 | in : UriComponentsBuilder | Test.java:1772:10:1772:29 | replacePath(...) : UriComponentsBuilder | provenance | MaD:62 | +| Test.java:1772:10:1772:11 | in : UriComponentsBuilder | Test.java:1772:10:1772:29 | replacePath(...) : UriComponentsBuilder | provenance | MaD:61 | | Test.java:1772:10:1772:29 | replacePath(...) : UriComponentsBuilder | Test.java:1773:9:1773:11 | out | provenance | | | Test.java:1778:16:1778:31 | (...)... : String | Test.java:1780:31:1780:32 | in : String | provenance | | | Test.java:1778:24:1778:31 | source(...) : Object | Test.java:1778:16:1778:31 | (...)... : String | provenance | | | Test.java:1780:10:1780:33 | replacePath(...) : UriComponentsBuilder | Test.java:1781:9:1781:11 | out | provenance | | -| Test.java:1780:31:1780:32 | in : String | Test.java:1780:10:1780:33 | replacePath(...) : UriComponentsBuilder | provenance | MaD:61+MaD:62 | +| Test.java:1780:31:1780:32 | in : String | Test.java:1780:10:1780:33 | replacePath(...) : UriComponentsBuilder | provenance | MaD:60+MaD:61 | | Test.java:1786:30:1786:59 | (...)... : UriComponentsBuilder | Test.java:1787:10:1787:11 | in : UriComponentsBuilder | provenance | | | Test.java:1786:52:1786:59 | source(...) : Object | Test.java:1786:30:1786:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1787:10:1787:11 | in : UriComponentsBuilder | Test.java:1787:10:1787:30 | replaceQuery(...) : UriComponentsBuilder | provenance | MaD:64 | +| Test.java:1787:10:1787:11 | in : UriComponentsBuilder | Test.java:1787:10:1787:30 | replaceQuery(...) : UriComponentsBuilder | provenance | MaD:63 | | Test.java:1787:10:1787:30 | replaceQuery(...) : UriComponentsBuilder | Test.java:1788:9:1788:11 | out | provenance | | | Test.java:1793:16:1793:31 | (...)... : String | Test.java:1795:32:1795:33 | in : String | provenance | | | Test.java:1793:24:1793:31 | source(...) : Object | Test.java:1793:16:1793:31 | (...)... : String | provenance | | | Test.java:1795:10:1795:34 | replaceQuery(...) : UriComponentsBuilder | Test.java:1796:9:1796:11 | out | provenance | | -| Test.java:1795:32:1795:33 | in : String | Test.java:1795:10:1795:34 | replaceQuery(...) : UriComponentsBuilder | provenance | MaD:63+MaD:64 | +| Test.java:1795:32:1795:33 | in : String | Test.java:1795:10:1795:34 | replaceQuery(...) : UriComponentsBuilder | provenance | MaD:62+MaD:63 | | Test.java:1801:20:1801:36 | of(...) : List [] : Object | Test.java:1803:51:1803:52 | in : List [] : Object | provenance | | | Test.java:1801:28:1801:35 | source(...) : Object | Test.java:1801:20:1801:36 | of(...) : List [] : Object | provenance | MaD:4 | | Test.java:1803:10:1803:53 | replaceQueryParam(...) : UriComponentsBuilder | Test.java:1804:9:1804:11 | out | provenance | | -| Test.java:1803:51:1803:52 | in : List [] : Object | Test.java:1803:10:1803:53 | replaceQueryParam(...) : UriComponentsBuilder | provenance | MaD:65+MaD:68 | +| Test.java:1803:51:1803:52 | in : List [] : Object | Test.java:1803:10:1803:53 | replaceQueryParam(...) : UriComponentsBuilder | provenance | MaD:64+MaD:67 | | Test.java:1809:18:1809:39 | {...} : Object[] [[]] : Object | Test.java:1811:51:1811:52 | in : Object[] [[]] : Object | provenance | | | Test.java:1809:31:1809:38 | source(...) : Object | Test.java:1809:18:1809:39 | {...} : Object[] [[]] : Object | provenance | | | Test.java:1811:10:1811:53 | replaceQueryParam(...) : UriComponentsBuilder | Test.java:1812:9:1812:11 | out | provenance | | -| Test.java:1811:51:1811:52 | in : Object[] [[]] : Object | Test.java:1811:10:1811:53 | replaceQueryParam(...) : UriComponentsBuilder | provenance | MaD:66+MaD:68 | +| Test.java:1811:51:1811:52 | in : Object[] [[]] : Object | Test.java:1811:10:1811:53 | replaceQueryParam(...) : UriComponentsBuilder | provenance | MaD:65+MaD:67 | | Test.java:1817:30:1817:59 | (...)... : UriComponentsBuilder | Test.java:1818:10:1818:11 | in : UriComponentsBuilder | provenance | | | Test.java:1817:52:1817:59 | source(...) : Object | Test.java:1817:30:1817:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1818:10:1818:11 | in : UriComponentsBuilder | Test.java:1818:10:1818:59 | replaceQueryParam(...) : UriComponentsBuilder | provenance | MaD:68 | +| Test.java:1818:10:1818:11 | in : UriComponentsBuilder | Test.java:1818:10:1818:59 | replaceQueryParam(...) : UriComponentsBuilder | provenance | MaD:67 | | Test.java:1818:10:1818:59 | replaceQueryParam(...) : UriComponentsBuilder | Test.java:1819:9:1819:11 | out | provenance | | | Test.java:1824:30:1824:59 | (...)... : UriComponentsBuilder | Test.java:1825:10:1825:11 | in : UriComponentsBuilder | provenance | | | Test.java:1824:52:1824:59 | source(...) : Object | Test.java:1824:30:1824:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1825:10:1825:11 | in : UriComponentsBuilder | Test.java:1825:10:1825:61 | replaceQueryParam(...) : UriComponentsBuilder | provenance | MaD:68 | +| Test.java:1825:10:1825:11 | in : UriComponentsBuilder | Test.java:1825:10:1825:61 | replaceQueryParam(...) : UriComponentsBuilder | provenance | MaD:67 | | Test.java:1825:10:1825:61 | replaceQueryParam(...) : UriComponentsBuilder | Test.java:1826:9:1826:11 | out | provenance | | | Test.java:1831:16:1831:31 | (...)... : String | Test.java:1833:37:1833:38 | in : String | provenance | | | Test.java:1831:24:1831:31 | source(...) : Object | Test.java:1831:16:1831:31 | (...)... : String | provenance | | | Test.java:1833:10:1833:55 | replaceQueryParam(...) : UriComponentsBuilder | Test.java:1834:9:1834:11 | out | provenance | | -| Test.java:1833:37:1833:38 | in : String | Test.java:1833:10:1833:55 | replaceQueryParam(...) : UriComponentsBuilder | provenance | MaD:67+MaD:68 | +| Test.java:1833:37:1833:38 | in : String | Test.java:1833:10:1833:55 | replaceQueryParam(...) : UriComponentsBuilder | provenance | MaD:66+MaD:67 | | Test.java:1839:16:1839:31 | (...)... : String | Test.java:1841:37:1841:38 | in : String | provenance | | | Test.java:1839:24:1839:31 | source(...) : Object | Test.java:1839:16:1839:31 | (...)... : String | provenance | | | Test.java:1841:10:1841:57 | replaceQueryParam(...) : UriComponentsBuilder | Test.java:1842:9:1842:11 | out | provenance | | -| Test.java:1841:37:1841:38 | in : String | Test.java:1841:10:1841:57 | replaceQueryParam(...) : UriComponentsBuilder | provenance | MaD:67+MaD:68 | +| Test.java:1841:37:1841:38 | in : String | Test.java:1841:10:1841:57 | replaceQueryParam(...) : UriComponentsBuilder | provenance | MaD:66+MaD:67 | | Test.java:1847:30:1847:59 | (...)... : UriComponentsBuilder | Test.java:1848:10:1848:11 | in : UriComponentsBuilder | provenance | | | Test.java:1847:52:1847:59 | source(...) : Object | Test.java:1847:30:1847:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1848:10:1848:11 | in : UriComponentsBuilder | Test.java:1848:10:1848:36 | replaceQueryParams(...) : UriComponentsBuilder | provenance | MaD:71 | +| Test.java:1848:10:1848:11 | in : UriComponentsBuilder | Test.java:1848:10:1848:36 | replaceQueryParams(...) : UriComponentsBuilder | provenance | MaD:70 | | Test.java:1848:10:1848:36 | replaceQueryParams(...) : UriComponentsBuilder | Test.java:1849:9:1849:11 | out | provenance | | | Test.java:1854:23:1854:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | Test.java:1856:38:1856:39 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:1854:47:1854:54 | source(...) : Object | Test.java:54:40:54:53 | element : Object | provenance | | | Test.java:1854:47:1854:54 | source(...) : Object | Test.java:1854:23:1854:55 | newMultiValueMapWithKey(...) : LinkedMultiValueMap [] : Object | provenance | MaD:5 | | Test.java:1856:10:1856:40 | replaceQueryParams(...) : UriComponentsBuilder | Test.java:1857:9:1857:11 | out | provenance | | -| Test.java:1856:38:1856:39 | in : LinkedMultiValueMap [] : Object | Test.java:1856:10:1856:40 | replaceQueryParams(...) : UriComponentsBuilder | provenance | MaD:69+MaD:71 | +| Test.java:1856:38:1856:39 | in : LinkedMultiValueMap [] : Object | Test.java:1856:10:1856:40 | replaceQueryParams(...) : UriComponentsBuilder | provenance | MaD:68+MaD:70 | | Test.java:1862:23:1862:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | Test.java:1864:38:1864:39 | in : LinkedMultiValueMap [] : Object | provenance | | | Test.java:1862:49:1862:56 | source(...) : Object | Test.java:55:42:55:55 | element : Object | provenance | | | Test.java:1862:49:1862:56 | source(...) : Object | Test.java:1862:23:1862:57 | newMultiValueMapWithValue(...) : LinkedMultiValueMap [] : Object | provenance | MaD:9 | | Test.java:1864:10:1864:40 | replaceQueryParams(...) : UriComponentsBuilder | Test.java:1865:9:1865:11 | out | provenance | | -| Test.java:1864:38:1864:39 | in : LinkedMultiValueMap [] : Object | Test.java:1864:10:1864:40 | replaceQueryParams(...) : UriComponentsBuilder | provenance | MaD:70+MaD:71 | +| Test.java:1864:38:1864:39 | in : LinkedMultiValueMap [] : Object | Test.java:1864:10:1864:40 | replaceQueryParams(...) : UriComponentsBuilder | provenance | MaD:69+MaD:70 | | Test.java:1870:30:1870:59 | (...)... : UriComponentsBuilder | Test.java:1871:10:1871:11 | in : UriComponentsBuilder | provenance | | | Test.java:1870:52:1870:59 | source(...) : Object | Test.java:1870:30:1870:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1871:10:1871:11 | in : UriComponentsBuilder | Test.java:1871:10:1871:24 | scheme(...) : UriComponentsBuilder | provenance | MaD:73 | +| Test.java:1871:10:1871:11 | in : UriComponentsBuilder | Test.java:1871:10:1871:24 | scheme(...) : UriComponentsBuilder | provenance | MaD:72 | | Test.java:1871:10:1871:24 | scheme(...) : UriComponentsBuilder | Test.java:1872:9:1872:11 | out | provenance | | | Test.java:1877:16:1877:31 | (...)... : String | Test.java:1879:26:1879:27 | in : String | provenance | | | Test.java:1877:24:1877:31 | source(...) : Object | Test.java:1877:16:1877:31 | (...)... : String | provenance | | | Test.java:1879:10:1879:28 | scheme(...) : UriComponentsBuilder | Test.java:1880:9:1880:11 | out | provenance | | -| Test.java:1879:26:1879:27 | in : String | Test.java:1879:10:1879:28 | scheme(...) : UriComponentsBuilder | provenance | MaD:72+MaD:73 | +| Test.java:1879:26:1879:27 | in : String | Test.java:1879:10:1879:28 | scheme(...) : UriComponentsBuilder | provenance | MaD:71+MaD:72 | | Test.java:1885:30:1885:59 | (...)... : UriComponentsBuilder | Test.java:1886:10:1886:11 | in : UriComponentsBuilder | provenance | | | Test.java:1885:52:1885:59 | source(...) : Object | Test.java:1885:30:1885:59 | (...)... : UriComponentsBuilder | provenance | | | Test.java:1886:10:1886:11 | in : UriComponentsBuilder | Test.java:1886:10:1886:36 | schemeSpecificPart(...) : UriComponentsBuilder | provenance | MaD:111 | @@ -1269,12 +1263,12 @@ edges | Test.java:1946:32:1946:33 | in : Map [] : Object | Test.java:1946:10:1946:34 | uriVariables(...) : UriComponentsBuilder | provenance | MaD:117+MaD:118 | | Test.java:1952:30:1952:59 | (...)... : UriComponentsBuilder | Test.java:1953:10:1953:11 | in : UriComponentsBuilder | provenance | | | Test.java:1952:52:1952:59 | source(...) : Object | Test.java:1952:30:1952:59 | (...)... : UriComponentsBuilder | provenance | | -| Test.java:1953:10:1953:11 | in : UriComponentsBuilder | Test.java:1953:10:1953:26 | userInfo(...) : UriComponentsBuilder | provenance | MaD:75 | +| Test.java:1953:10:1953:11 | in : UriComponentsBuilder | Test.java:1953:10:1953:26 | userInfo(...) : UriComponentsBuilder | provenance | MaD:74 | | Test.java:1953:10:1953:26 | userInfo(...) : UriComponentsBuilder | Test.java:1954:9:1954:11 | out | provenance | | | Test.java:1959:16:1959:31 | (...)... : String | Test.java:1961:28:1961:29 | in : String | provenance | | | Test.java:1959:24:1959:31 | source(...) : Object | Test.java:1959:16:1959:31 | (...)... : String | provenance | | | Test.java:1961:10:1961:30 | userInfo(...) : UriComponentsBuilder | Test.java:1962:9:1962:11 | out | provenance | | -| Test.java:1961:28:1961:29 | in : String | Test.java:1961:10:1961:30 | userInfo(...) : UriComponentsBuilder | provenance | MaD:74+MaD:75 | +| Test.java:1961:28:1961:29 | in : String | Test.java:1961:10:1961:30 | userInfo(...) : UriComponentsBuilder | provenance | MaD:73+MaD:74 | | Test.java:1967:13:1967:37 | newMapWithValue(...) : Map [] : Object | Test.java:1969:26:1969:27 | in : Map [] : Object | provenance | | | Test.java:1967:29:1967:36 | source(...) : Object | Test.java:53:22:53:35 | element : Object | provenance | | | Test.java:1967:29:1967:36 | source(...) : Object | Test.java:1967:13:1967:37 | newMapWithValue(...) : Map [] : Object | provenance | MaD:6 | @@ -1635,11 +1629,11 @@ edges | Test.java:2537:37:2537:38 | in : String | Test.java:2537:13:2537:39 | htmlEscapeHex(...) : String | provenance | MaD:27 | | Test.java:2543:23:2543:45 | (...)... : UriComponents | Test.java:2544:10:2544:11 | in : UriComponents | provenance | | | Test.java:2543:38:2543:45 | source(...) : Object | Test.java:2543:23:2543:45 | (...)... : UriComponents | provenance | | -| Test.java:2544:10:2544:11 | in : UriComponents | Test.java:2544:10:2544:23 | normalize(...) : UriComponents | provenance | MaD:94 | +| Test.java:2544:10:2544:11 | in : UriComponents | Test.java:2544:10:2544:23 | normalize(...) : UriComponents | provenance | MaD:92 | | Test.java:2544:10:2544:23 | normalize(...) : UriComponents | Test.java:2545:9:2545:11 | out | provenance | | | Test.java:2550:23:2550:45 | (...)... : UriComponents | Test.java:2551:10:2551:11 | in : UriComponents | provenance | | | Test.java:2550:38:2550:45 | source(...) : Object | Test.java:2550:23:2550:45 | (...)... : UriComponents | provenance | | -| Test.java:2551:10:2551:11 | in : UriComponents | Test.java:2551:10:2551:22 | toString(...) : String | provenance | MaD:95 | +| Test.java:2551:10:2551:11 | in : UriComponents | Test.java:2551:10:2551:22 | toString(...) : String | provenance | MaD:93 | | Test.java:2551:10:2551:22 | toString(...) : String | Test.java:2552:9:2552:11 | out | provenance | | | Test.java:2557:21:2557:41 | (...)... : UriTemplate | Test.java:2558:10:2558:11 | in : UriTemplate | provenance | | | Test.java:2557:34:2557:41 | source(...) : Object | Test.java:2557:21:2557:41 | (...)... : UriTemplate | provenance | | diff --git a/java/ql/test/library-tests/optional/test.expected b/java/ql/test/library-tests/optional/test.expected index 8a3a44f7d265..c9d21f0dccde 100644 --- a/java/ql/test/library-tests/optional/test.expected +++ b/java/ql/test/library-tests/optional/test.expected @@ -53,9 +53,7 @@ edges | FunctionalTest.java:42:22:42:22 | v : String | FunctionalTest.java:43:18:43:18 | v | provenance | | | FunctionalTest.java:45:9:48:22 | or(...) : Optional [] : String | FunctionalTest.java:48:34:48:34 | v : String | provenance | MaD:6 | | FunctionalTest.java:48:15:48:21 | ...->... : new Supplier>(...) { ... } [Optional o, ] : String | FunctionalTest.java:45:9:48:22 | or(...) : Optional [] : String | provenance | MaD:11 | -| FunctionalTest.java:48:15:48:21 | ...->... : new Supplier>(...) { ... } [Optional o, ] : String | FunctionalTest.java:45:9:48:22 | or(...) : Optional [] : String | provenance | heuristic-callback | | FunctionalTest.java:48:15:48:21 | ...->... : new Supplier>(...) { ... } [Optional o, ] : String | FunctionalTest.java:48:15:48:21 | parameter this : new Supplier>(...) { ... } [Optional o, ] : String | provenance | MaD:11 | -| FunctionalTest.java:48:15:48:21 | ...->... : new Supplier>(...) { ... } [Optional o, ] : String | FunctionalTest.java:48:15:48:21 | parameter this : new Supplier>(...) { ... } [Optional o, ] : String | provenance | heuristic-callback | | FunctionalTest.java:48:15:48:21 | Optional o : Optional [] : String | FunctionalTest.java:48:15:48:21 | ...->... : new Supplier>(...) { ... } [Optional o, ] : String | provenance | | | FunctionalTest.java:48:15:48:21 | parameter this : new Supplier>(...) { ... } [Optional o, ] : String | FunctionalTest.java:48:21:48:21 | this : new Supplier>(...) { ... } [Optional o, ] : String | provenance | | | FunctionalTest.java:48:21:48:21 | this : new Supplier>(...) { ... } [Optional o, ] : String | FunctionalTest.java:48:21:48:21 | o : Optional [] : String | provenance | | diff --git a/java/ql/test/library-tests/scanner/test.expected b/java/ql/test/library-tests/scanner/test.expected index 1504f8cf352b..f960bd84062f 100644 --- a/java/ql/test/library-tests/scanner/test.expected +++ b/java/ql/test/library-tests/scanner/test.expected @@ -1,197 +1,195 @@ models -| 1 | Summary: java.util; Iterator; true; next; ; ; Argument[this].Element; ReturnValue; value; manual | -| 2 | Summary: java.util; Scanner; true; Scanner; ; ; Argument[0]; Argument[this]; taint; manual | -| 3 | Summary: java.util; Scanner; true; findInLine; ; ; Argument[this]; ReturnValue; taint; manual | -| 4 | Summary: java.util; Scanner; true; findWithinHorizon; ; ; Argument[this]; ReturnValue; taint; manual | -| 5 | Summary: java.util; Scanner; true; next; ; ; Argument[this]; ReturnValue; taint; manual | -| 6 | Summary: java.util; Scanner; true; nextBigDecimal; ; ; Argument[this]; ReturnValue; taint; manual | -| 7 | Summary: java.util; Scanner; true; nextBigInteger; ; ; Argument[this]; ReturnValue; taint; manual | -| 8 | Summary: java.util; Scanner; true; nextBoolean; ; ; Argument[this]; ReturnValue; taint; manual | -| 9 | Summary: java.util; Scanner; true; nextByte; ; ; Argument[this]; ReturnValue; taint; manual | -| 10 | Summary: java.util; Scanner; true; nextDouble; ; ; Argument[this]; ReturnValue; taint; manual | -| 11 | Summary: java.util; Scanner; true; nextFloat; ; ; Argument[this]; ReturnValue; taint; manual | -| 12 | Summary: java.util; Scanner; true; nextInt; ; ; Argument[this]; ReturnValue; taint; manual | -| 13 | Summary: java.util; Scanner; true; nextLine; ; ; Argument[this]; ReturnValue; taint; manual | -| 14 | Summary: java.util; Scanner; true; nextLong; ; ; Argument[this]; ReturnValue; taint; manual | -| 15 | Summary: java.util; Scanner; true; nextShort; ; ; Argument[this]; ReturnValue; taint; manual | -| 16 | Summary: java.util; Scanner; true; reset; ; ; Argument[this]; ReturnValue; value; manual | -| 17 | Summary: java.util; Scanner; true; skip; ; ; Argument[this]; ReturnValue; value; manual | -| 18 | Summary: java.util; Scanner; true; useDelimiter; ; ; Argument[this]; ReturnValue; value; manual | -| 19 | Summary: java.util; Scanner; true; useLocale; ; ; Argument[this]; ReturnValue; value; manual | -| 20 | Summary: java.util; Scanner; true; useRadix; ; ; Argument[this]; ReturnValue; value; manual | +| 1 | Summary: java.util; Scanner; true; Scanner; ; ; Argument[0]; Argument[this]; taint; manual | +| 2 | Summary: java.util; Scanner; true; findInLine; ; ; Argument[this]; ReturnValue; taint; manual | +| 3 | Summary: java.util; Scanner; true; findWithinHorizon; ; ; Argument[this]; ReturnValue; taint; manual | +| 4 | Summary: java.util; Scanner; true; next; ; ; Argument[this]; ReturnValue; taint; manual | +| 5 | Summary: java.util; Scanner; true; nextBigDecimal; ; ; Argument[this]; ReturnValue; taint; manual | +| 6 | Summary: java.util; Scanner; true; nextBigInteger; ; ; Argument[this]; ReturnValue; taint; manual | +| 7 | Summary: java.util; Scanner; true; nextBoolean; ; ; Argument[this]; ReturnValue; taint; manual | +| 8 | Summary: java.util; Scanner; true; nextByte; ; ; Argument[this]; ReturnValue; taint; manual | +| 9 | Summary: java.util; Scanner; true; nextDouble; ; ; Argument[this]; ReturnValue; taint; manual | +| 10 | Summary: java.util; Scanner; true; nextFloat; ; ; Argument[this]; ReturnValue; taint; manual | +| 11 | Summary: java.util; Scanner; true; nextInt; ; ; Argument[this]; ReturnValue; taint; manual | +| 12 | Summary: java.util; Scanner; true; nextLine; ; ; Argument[this]; ReturnValue; taint; manual | +| 13 | Summary: java.util; Scanner; true; nextLong; ; ; Argument[this]; ReturnValue; taint; manual | +| 14 | Summary: java.util; Scanner; true; nextShort; ; ; Argument[this]; ReturnValue; taint; manual | +| 15 | Summary: java.util; Scanner; true; reset; ; ; Argument[this]; ReturnValue; value; manual | +| 16 | Summary: java.util; Scanner; true; skip; ; ; Argument[this]; ReturnValue; value; manual | +| 17 | Summary: java.util; Scanner; true; useDelimiter; ; ; Argument[this]; ReturnValue; value; manual | +| 18 | Summary: java.util; Scanner; true; useLocale; ; ; Argument[this]; ReturnValue; value; manual | +| 19 | Summary: java.util; Scanner; true; useRadix; ; ; Argument[this]; ReturnValue; value; manual | edges | Test.java:27:14:27:28 | (...)... : File | Test.java:28:22:28:23 | in : File | provenance | | | Test.java:27:21:27:28 | source(...) : Object | Test.java:27:14:27:28 | (...)... : File | provenance | | | Test.java:28:10:28:24 | new Scanner(...) : Scanner | Test.java:29:9:29:11 | out | provenance | | -| Test.java:28:22:28:23 | in : File | Test.java:28:10:28:24 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:28:22:28:23 | in : File | Test.java:28:10:28:24 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:34:14:34:28 | (...)... : File | Test.java:35:22:35:23 | in : File | provenance | | | Test.java:34:21:34:28 | source(...) : Object | Test.java:34:14:34:28 | (...)... : File | provenance | | | Test.java:35:10:35:40 | new Scanner(...) : Scanner | Test.java:36:9:36:11 | out | provenance | | -| Test.java:35:22:35:23 | in : File | Test.java:35:10:35:40 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:35:22:35:23 | in : File | Test.java:35:10:35:40 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:41:14:41:28 | (...)... : File | Test.java:42:22:42:23 | in : File | provenance | | | Test.java:41:21:41:28 | source(...) : Object | Test.java:41:14:41:28 | (...)... : File | provenance | | | Test.java:42:10:42:39 | new Scanner(...) : Scanner | Test.java:43:9:43:11 | out | provenance | | -| Test.java:42:22:42:23 | in : File | Test.java:42:10:42:39 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:42:22:42:23 | in : File | Test.java:42:10:42:39 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:48:21:48:42 | (...)... : InputStream | Test.java:49:22:49:23 | in : InputStream | provenance | | | Test.java:48:35:48:42 | source(...) : Object | Test.java:48:21:48:42 | (...)... : InputStream | provenance | | | Test.java:49:10:49:24 | new Scanner(...) : Scanner | Test.java:50:9:50:11 | out | provenance | | -| Test.java:49:22:49:23 | in : InputStream | Test.java:49:10:49:24 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:49:22:49:23 | in : InputStream | Test.java:49:10:49:24 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:55:21:55:42 | (...)... : InputStream | Test.java:56:22:56:23 | in : InputStream | provenance | | | Test.java:55:35:55:42 | source(...) : Object | Test.java:55:21:55:42 | (...)... : InputStream | provenance | | | Test.java:56:10:56:40 | new Scanner(...) : Scanner | Test.java:57:9:57:11 | out | provenance | | -| Test.java:56:22:56:23 | in : InputStream | Test.java:56:10:56:40 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:56:22:56:23 | in : InputStream | Test.java:56:10:56:40 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:62:21:62:42 | (...)... : InputStream | Test.java:63:22:63:23 | in : InputStream | provenance | | | Test.java:62:35:62:42 | source(...) : Object | Test.java:62:21:62:42 | (...)... : InputStream | provenance | | | Test.java:63:10:63:39 | new Scanner(...) : Scanner | Test.java:64:9:64:11 | out | provenance | | -| Test.java:63:22:63:23 | in : InputStream | Test.java:63:10:63:39 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:63:22:63:23 | in : InputStream | Test.java:63:10:63:39 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:69:14:69:28 | (...)... : Path | Test.java:70:22:70:23 | in : Path | provenance | | | Test.java:69:21:69:28 | source(...) : Object | Test.java:69:14:69:28 | (...)... : Path | provenance | | | Test.java:70:10:70:24 | new Scanner(...) : Scanner | Test.java:71:9:71:11 | out | provenance | | -| Test.java:70:22:70:23 | in : Path | Test.java:70:10:70:24 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:70:22:70:23 | in : Path | Test.java:70:10:70:24 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:76:14:76:28 | (...)... : Path | Test.java:77:22:77:23 | in : Path | provenance | | | Test.java:76:21:76:28 | source(...) : Object | Test.java:76:14:76:28 | (...)... : Path | provenance | | | Test.java:77:10:77:40 | new Scanner(...) : Scanner | Test.java:78:9:78:11 | out | provenance | | -| Test.java:77:22:77:23 | in : Path | Test.java:77:10:77:40 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:77:22:77:23 | in : Path | Test.java:77:10:77:40 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:83:14:83:28 | (...)... : Path | Test.java:84:22:84:23 | in : Path | provenance | | | Test.java:83:21:83:28 | source(...) : Object | Test.java:83:14:83:28 | (...)... : Path | provenance | | | Test.java:84:10:84:39 | new Scanner(...) : Scanner | Test.java:85:9:85:11 | out | provenance | | -| Test.java:84:22:84:23 | in : Path | Test.java:84:10:84:39 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:84:22:84:23 | in : Path | Test.java:84:10:84:39 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:90:18:90:36 | (...)... : Readable | Test.java:91:22:91:23 | in : Readable | provenance | | | Test.java:90:29:90:36 | source(...) : Object | Test.java:90:18:90:36 | (...)... : Readable | provenance | | | Test.java:91:10:91:24 | new Scanner(...) : Scanner | Test.java:92:9:92:11 | out | provenance | | -| Test.java:91:22:91:23 | in : Readable | Test.java:91:10:91:24 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:91:22:91:23 | in : Readable | Test.java:91:10:91:24 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:97:29:97:58 | (...)... : ReadableByteChannel | Test.java:98:22:98:23 | in : ReadableByteChannel | provenance | | | Test.java:97:51:97:58 | source(...) : Object | Test.java:97:29:97:58 | (...)... : ReadableByteChannel | provenance | | | Test.java:98:10:98:24 | new Scanner(...) : Scanner | Test.java:99:9:99:11 | out | provenance | | -| Test.java:98:22:98:23 | in : ReadableByteChannel | Test.java:98:10:98:24 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:98:22:98:23 | in : ReadableByteChannel | Test.java:98:10:98:24 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:104:29:104:58 | (...)... : ReadableByteChannel | Test.java:105:22:105:23 | in : ReadableByteChannel | provenance | | | Test.java:104:51:104:58 | source(...) : Object | Test.java:104:29:104:58 | (...)... : ReadableByteChannel | provenance | | | Test.java:105:10:105:40 | new Scanner(...) : Scanner | Test.java:106:9:106:11 | out | provenance | | -| Test.java:105:22:105:23 | in : ReadableByteChannel | Test.java:105:10:105:40 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:105:22:105:23 | in : ReadableByteChannel | Test.java:105:10:105:40 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:111:29:111:58 | (...)... : ReadableByteChannel | Test.java:112:22:112:23 | in : ReadableByteChannel | provenance | | | Test.java:111:51:111:58 | source(...) : Object | Test.java:111:29:111:58 | (...)... : ReadableByteChannel | provenance | | | Test.java:112:10:112:39 | new Scanner(...) : Scanner | Test.java:113:9:113:11 | out | provenance | | -| Test.java:112:22:112:23 | in : ReadableByteChannel | Test.java:112:10:112:39 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:112:22:112:23 | in : ReadableByteChannel | Test.java:112:10:112:39 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:118:16:118:32 | (...)... : String | Test.java:119:22:119:23 | in : String | provenance | | | Test.java:118:25:118:32 | source(...) : Object | Test.java:118:16:118:32 | (...)... : String | provenance | | | Test.java:119:10:119:24 | new Scanner(...) : Scanner | Test.java:120:9:120:11 | out | provenance | | -| Test.java:119:22:119:23 | in : String | Test.java:119:10:119:24 | new Scanner(...) : Scanner | provenance | MaD:2 | +| Test.java:119:22:119:23 | in : String | Test.java:119:10:119:24 | new Scanner(...) : Scanner | provenance | MaD:1 | | Test.java:125:17:125:34 | (...)... : Scanner | Test.java:126:10:126:11 | in : Scanner | provenance | | | Test.java:125:27:125:34 | source(...) : Object | Test.java:125:17:125:34 | (...)... : Scanner | provenance | | -| Test.java:126:10:126:11 | in : Scanner | Test.java:126:10:126:38 | findInLine(...) : String | provenance | MaD:3 | +| Test.java:126:10:126:11 | in : Scanner | Test.java:126:10:126:38 | findInLine(...) : String | provenance | MaD:2 | | Test.java:126:10:126:38 | findInLine(...) : String | Test.java:127:9:127:11 | out | provenance | | | Test.java:132:17:132:34 | (...)... : Scanner | Test.java:133:10:133:11 | in : Scanner | provenance | | | Test.java:132:27:132:34 | source(...) : Object | Test.java:132:17:132:34 | (...)... : Scanner | provenance | | -| Test.java:133:10:133:11 | in : Scanner | Test.java:133:10:133:37 | findInLine(...) : String | provenance | MaD:3 | +| Test.java:133:10:133:11 | in : Scanner | Test.java:133:10:133:37 | findInLine(...) : String | provenance | MaD:2 | | Test.java:133:10:133:37 | findInLine(...) : String | Test.java:134:9:134:11 | out | provenance | | | Test.java:139:17:139:34 | (...)... : Scanner | Test.java:140:10:140:11 | in : Scanner | provenance | | | Test.java:139:27:139:34 | source(...) : Object | Test.java:139:17:139:34 | (...)... : Scanner | provenance | | -| Test.java:140:10:140:11 | in : Scanner | Test.java:140:10:140:48 | findWithinHorizon(...) : String | provenance | MaD:4 | +| Test.java:140:10:140:11 | in : Scanner | Test.java:140:10:140:48 | findWithinHorizon(...) : String | provenance | MaD:3 | | Test.java:140:10:140:48 | findWithinHorizon(...) : String | Test.java:141:9:141:11 | out | provenance | | | Test.java:146:17:146:34 | (...)... : Scanner | Test.java:147:10:147:11 | in : Scanner | provenance | | | Test.java:146:27:146:34 | source(...) : Object | Test.java:146:17:146:34 | (...)... : Scanner | provenance | | -| Test.java:147:10:147:11 | in : Scanner | Test.java:147:10:147:47 | findWithinHorizon(...) : String | provenance | MaD:4 | +| Test.java:147:10:147:11 | in : Scanner | Test.java:147:10:147:47 | findWithinHorizon(...) : String | provenance | MaD:3 | | Test.java:147:10:147:47 | findWithinHorizon(...) : String | Test.java:148:9:148:11 | out | provenance | | | Test.java:153:17:153:34 | (...)... : Scanner | Test.java:154:10:154:11 | in : Scanner | provenance | | | Test.java:153:27:153:34 | source(...) : Object | Test.java:153:17:153:34 | (...)... : Scanner | provenance | | -| Test.java:154:10:154:11 | in : Scanner | Test.java:154:10:154:32 | next(...) : String | provenance | MaD:5 | +| Test.java:154:10:154:11 | in : Scanner | Test.java:154:10:154:32 | next(...) : String | provenance | MaD:4 | | Test.java:154:10:154:32 | next(...) : String | Test.java:155:9:155:11 | out | provenance | | | Test.java:160:17:160:34 | (...)... : Scanner | Test.java:161:10:161:11 | in : Scanner | provenance | | | Test.java:160:27:160:34 | source(...) : Object | Test.java:160:17:160:34 | (...)... : Scanner | provenance | | -| Test.java:161:10:161:11 | in : Scanner | Test.java:161:10:161:31 | next(...) : String | provenance | MaD:5 | +| Test.java:161:10:161:11 | in : Scanner | Test.java:161:10:161:31 | next(...) : String | provenance | MaD:4 | | Test.java:161:10:161:31 | next(...) : String | Test.java:162:9:162:11 | out | provenance | | | Test.java:167:17:167:34 | (...)... : Scanner | Test.java:168:10:168:11 | in : Scanner | provenance | | | Test.java:167:27:167:34 | source(...) : Object | Test.java:167:17:167:34 | (...)... : Scanner | provenance | | -| Test.java:168:10:168:11 | in : Scanner | Test.java:168:10:168:18 | next(...) : String | provenance | MaD:1 | -| Test.java:168:10:168:11 | in : Scanner | Test.java:168:10:168:18 | next(...) : String | provenance | MaD:5 | +| Test.java:168:10:168:11 | in : Scanner | Test.java:168:10:168:18 | next(...) : String | provenance | MaD:4 | | Test.java:168:10:168:18 | next(...) : String | Test.java:169:9:169:11 | out | provenance | | | Test.java:174:17:174:34 | (...)... : Scanner | Test.java:175:10:175:11 | in : Scanner | provenance | | | Test.java:174:27:174:34 | source(...) : Object | Test.java:174:17:174:34 | (...)... : Scanner | provenance | | -| Test.java:175:10:175:11 | in : Scanner | Test.java:175:10:175:28 | nextBigDecimal(...) : BigDecimal | provenance | MaD:6 | +| Test.java:175:10:175:11 | in : Scanner | Test.java:175:10:175:28 | nextBigDecimal(...) : BigDecimal | provenance | MaD:5 | | Test.java:175:10:175:28 | nextBigDecimal(...) : BigDecimal | Test.java:176:9:176:11 | out | provenance | | | Test.java:181:17:181:34 | (...)... : Scanner | Test.java:182:10:182:11 | in : Scanner | provenance | | | Test.java:181:27:181:34 | source(...) : Object | Test.java:181:17:181:34 | (...)... : Scanner | provenance | | -| Test.java:182:10:182:11 | in : Scanner | Test.java:182:10:182:28 | nextBigInteger(...) : BigInteger | provenance | MaD:7 | +| Test.java:182:10:182:11 | in : Scanner | Test.java:182:10:182:28 | nextBigInteger(...) : BigInteger | provenance | MaD:6 | | Test.java:182:10:182:28 | nextBigInteger(...) : BigInteger | Test.java:183:9:183:11 | out | provenance | | | Test.java:188:17:188:34 | (...)... : Scanner | Test.java:189:10:189:11 | in : Scanner | provenance | | | Test.java:188:27:188:34 | source(...) : Object | Test.java:188:17:188:34 | (...)... : Scanner | provenance | | -| Test.java:189:10:189:11 | in : Scanner | Test.java:189:10:189:29 | nextBigInteger(...) : BigInteger | provenance | MaD:7 | +| Test.java:189:10:189:11 | in : Scanner | Test.java:189:10:189:29 | nextBigInteger(...) : BigInteger | provenance | MaD:6 | | Test.java:189:10:189:29 | nextBigInteger(...) : BigInteger | Test.java:190:9:190:11 | out | provenance | | | Test.java:195:17:195:34 | (...)... : Scanner | Test.java:196:10:196:11 | in : Scanner | provenance | | | Test.java:195:27:195:34 | source(...) : Object | Test.java:195:17:195:34 | (...)... : Scanner | provenance | | -| Test.java:196:10:196:11 | in : Scanner | Test.java:196:10:196:25 | nextBoolean(...) : Boolean | provenance | MaD:8 | +| Test.java:196:10:196:11 | in : Scanner | Test.java:196:10:196:25 | nextBoolean(...) : Boolean | provenance | MaD:7 | | Test.java:196:10:196:25 | nextBoolean(...) : Boolean | Test.java:197:9:197:11 | out | provenance | | | Test.java:202:17:202:34 | (...)... : Scanner | Test.java:203:10:203:11 | in : Scanner | provenance | | | Test.java:202:27:202:34 | source(...) : Object | Test.java:202:17:202:34 | (...)... : Scanner | provenance | | -| Test.java:203:10:203:11 | in : Scanner | Test.java:203:10:203:22 | nextByte(...) : Number | provenance | MaD:9 | +| Test.java:203:10:203:11 | in : Scanner | Test.java:203:10:203:22 | nextByte(...) : Number | provenance | MaD:8 | | Test.java:203:10:203:22 | nextByte(...) : Number | Test.java:204:9:204:11 | out | provenance | | | Test.java:209:17:209:34 | (...)... : Scanner | Test.java:210:10:210:11 | in : Scanner | provenance | | | Test.java:209:27:209:34 | source(...) : Object | Test.java:209:17:209:34 | (...)... : Scanner | provenance | | -| Test.java:210:10:210:11 | in : Scanner | Test.java:210:10:210:23 | nextByte(...) : Number | provenance | MaD:9 | +| Test.java:210:10:210:11 | in : Scanner | Test.java:210:10:210:23 | nextByte(...) : Number | provenance | MaD:8 | | Test.java:210:10:210:23 | nextByte(...) : Number | Test.java:211:9:211:11 | out | provenance | | | Test.java:216:17:216:34 | (...)... : Scanner | Test.java:217:10:217:11 | in : Scanner | provenance | | | Test.java:216:27:216:34 | source(...) : Object | Test.java:216:17:216:34 | (...)... : Scanner | provenance | | -| Test.java:217:10:217:11 | in : Scanner | Test.java:217:10:217:24 | nextDouble(...) : Number | provenance | MaD:10 | +| Test.java:217:10:217:11 | in : Scanner | Test.java:217:10:217:24 | nextDouble(...) : Number | provenance | MaD:9 | | Test.java:217:10:217:24 | nextDouble(...) : Number | Test.java:218:9:218:11 | out | provenance | | | Test.java:223:17:223:34 | (...)... : Scanner | Test.java:224:10:224:11 | in : Scanner | provenance | | | Test.java:223:27:223:34 | source(...) : Object | Test.java:223:17:223:34 | (...)... : Scanner | provenance | | -| Test.java:224:10:224:11 | in : Scanner | Test.java:224:10:224:23 | nextFloat(...) : Number | provenance | MaD:11 | +| Test.java:224:10:224:11 | in : Scanner | Test.java:224:10:224:23 | nextFloat(...) : Number | provenance | MaD:10 | | Test.java:224:10:224:23 | nextFloat(...) : Number | Test.java:225:9:225:11 | out | provenance | | | Test.java:230:17:230:34 | (...)... : Scanner | Test.java:231:10:231:11 | in : Scanner | provenance | | | Test.java:230:27:230:34 | source(...) : Object | Test.java:230:17:230:34 | (...)... : Scanner | provenance | | -| Test.java:231:10:231:11 | in : Scanner | Test.java:231:10:231:21 | nextInt(...) : Number | provenance | MaD:12 | +| Test.java:231:10:231:11 | in : Scanner | Test.java:231:10:231:21 | nextInt(...) : Number | provenance | MaD:11 | | Test.java:231:10:231:21 | nextInt(...) : Number | Test.java:232:9:232:11 | out | provenance | | | Test.java:237:17:237:34 | (...)... : Scanner | Test.java:238:10:238:11 | in : Scanner | provenance | | | Test.java:237:27:237:34 | source(...) : Object | Test.java:237:17:237:34 | (...)... : Scanner | provenance | | -| Test.java:238:10:238:11 | in : Scanner | Test.java:238:10:238:22 | nextInt(...) : Number | provenance | MaD:12 | +| Test.java:238:10:238:11 | in : Scanner | Test.java:238:10:238:22 | nextInt(...) : Number | provenance | MaD:11 | | Test.java:238:10:238:22 | nextInt(...) : Number | Test.java:239:9:239:11 | out | provenance | | | Test.java:244:17:244:34 | (...)... : Scanner | Test.java:245:10:245:11 | in : Scanner | provenance | | | Test.java:244:27:244:34 | source(...) : Object | Test.java:244:17:244:34 | (...)... : Scanner | provenance | | -| Test.java:245:10:245:11 | in : Scanner | Test.java:245:10:245:22 | nextLine(...) : String | provenance | MaD:13 | +| Test.java:245:10:245:11 | in : Scanner | Test.java:245:10:245:22 | nextLine(...) : String | provenance | MaD:12 | | Test.java:245:10:245:22 | nextLine(...) : String | Test.java:246:9:246:11 | out | provenance | | | Test.java:251:17:251:34 | (...)... : Scanner | Test.java:252:10:252:11 | in : Scanner | provenance | | | Test.java:251:27:251:34 | source(...) : Object | Test.java:251:17:251:34 | (...)... : Scanner | provenance | | -| Test.java:252:10:252:11 | in : Scanner | Test.java:252:10:252:22 | nextLong(...) : Number | provenance | MaD:14 | +| Test.java:252:10:252:11 | in : Scanner | Test.java:252:10:252:22 | nextLong(...) : Number | provenance | MaD:13 | | Test.java:252:10:252:22 | nextLong(...) : Number | Test.java:253:9:253:11 | out | provenance | | | Test.java:258:17:258:34 | (...)... : Scanner | Test.java:259:10:259:11 | in : Scanner | provenance | | | Test.java:258:27:258:34 | source(...) : Object | Test.java:258:17:258:34 | (...)... : Scanner | provenance | | -| Test.java:259:10:259:11 | in : Scanner | Test.java:259:10:259:23 | nextLong(...) : Number | provenance | MaD:14 | +| Test.java:259:10:259:11 | in : Scanner | Test.java:259:10:259:23 | nextLong(...) : Number | provenance | MaD:13 | | Test.java:259:10:259:23 | nextLong(...) : Number | Test.java:260:9:260:11 | out | provenance | | | Test.java:265:17:265:34 | (...)... : Scanner | Test.java:266:10:266:11 | in : Scanner | provenance | | | Test.java:265:27:265:34 | source(...) : Object | Test.java:265:17:265:34 | (...)... : Scanner | provenance | | -| Test.java:266:10:266:11 | in : Scanner | Test.java:266:10:266:23 | nextShort(...) : Number | provenance | MaD:15 | +| Test.java:266:10:266:11 | in : Scanner | Test.java:266:10:266:23 | nextShort(...) : Number | provenance | MaD:14 | | Test.java:266:10:266:23 | nextShort(...) : Number | Test.java:267:9:267:11 | out | provenance | | | Test.java:272:17:272:34 | (...)... : Scanner | Test.java:273:10:273:11 | in : Scanner | provenance | | | Test.java:272:27:272:34 | source(...) : Object | Test.java:272:17:272:34 | (...)... : Scanner | provenance | | -| Test.java:273:10:273:11 | in : Scanner | Test.java:273:10:273:24 | nextShort(...) : Number | provenance | MaD:15 | +| Test.java:273:10:273:11 | in : Scanner | Test.java:273:10:273:24 | nextShort(...) : Number | provenance | MaD:14 | | Test.java:273:10:273:24 | nextShort(...) : Number | Test.java:274:9:274:11 | out | provenance | | | Test.java:279:17:279:34 | (...)... : Scanner | Test.java:280:10:280:11 | in : Scanner | provenance | | | Test.java:279:27:279:34 | source(...) : Object | Test.java:279:17:279:34 | (...)... : Scanner | provenance | | -| Test.java:280:10:280:11 | in : Scanner | Test.java:280:10:280:19 | reset(...) : Scanner | provenance | MaD:16 | +| Test.java:280:10:280:11 | in : Scanner | Test.java:280:10:280:19 | reset(...) : Scanner | provenance | MaD:15 | | Test.java:280:10:280:19 | reset(...) : Scanner | Test.java:281:9:281:11 | out | provenance | | | Test.java:286:17:286:34 | (...)... : Scanner | Test.java:287:10:287:11 | in : Scanner | provenance | | | Test.java:286:27:286:34 | source(...) : Object | Test.java:286:17:286:34 | (...)... : Scanner | provenance | | -| Test.java:287:10:287:11 | in : Scanner | Test.java:287:10:287:32 | skip(...) : Scanner | provenance | MaD:17 | +| Test.java:287:10:287:11 | in : Scanner | Test.java:287:10:287:32 | skip(...) : Scanner | provenance | MaD:16 | | Test.java:287:10:287:32 | skip(...) : Scanner | Test.java:288:9:288:11 | out | provenance | | | Test.java:293:17:293:34 | (...)... : Scanner | Test.java:294:10:294:11 | in : Scanner | provenance | | | Test.java:293:27:293:34 | source(...) : Object | Test.java:293:17:293:34 | (...)... : Scanner | provenance | | -| Test.java:294:10:294:11 | in : Scanner | Test.java:294:10:294:31 | skip(...) : Scanner | provenance | MaD:17 | +| Test.java:294:10:294:11 | in : Scanner | Test.java:294:10:294:31 | skip(...) : Scanner | provenance | MaD:16 | | Test.java:294:10:294:31 | skip(...) : Scanner | Test.java:295:9:295:11 | out | provenance | | | Test.java:300:17:300:34 | (...)... : Scanner | Test.java:301:10:301:11 | in : Scanner | provenance | | | Test.java:300:27:300:34 | source(...) : Object | Test.java:300:17:300:34 | (...)... : Scanner | provenance | | -| Test.java:301:10:301:11 | in : Scanner | Test.java:301:10:301:40 | useDelimiter(...) : Scanner | provenance | MaD:18 | +| Test.java:301:10:301:11 | in : Scanner | Test.java:301:10:301:40 | useDelimiter(...) : Scanner | provenance | MaD:17 | | Test.java:301:10:301:40 | useDelimiter(...) : Scanner | Test.java:302:9:302:11 | out | provenance | | | Test.java:307:17:307:34 | (...)... : Scanner | Test.java:308:10:308:11 | in : Scanner | provenance | | | Test.java:307:27:307:34 | source(...) : Object | Test.java:307:17:307:34 | (...)... : Scanner | provenance | | -| Test.java:308:10:308:11 | in : Scanner | Test.java:308:10:308:39 | useDelimiter(...) : Scanner | provenance | MaD:18 | +| Test.java:308:10:308:11 | in : Scanner | Test.java:308:10:308:39 | useDelimiter(...) : Scanner | provenance | MaD:17 | | Test.java:308:10:308:39 | useDelimiter(...) : Scanner | Test.java:309:9:309:11 | out | provenance | | | Test.java:314:17:314:34 | (...)... : Scanner | Test.java:315:10:315:11 | in : Scanner | provenance | | | Test.java:314:27:314:34 | source(...) : Object | Test.java:314:17:314:34 | (...)... : Scanner | provenance | | -| Test.java:315:10:315:11 | in : Scanner | Test.java:315:10:315:27 | useLocale(...) : Scanner | provenance | MaD:19 | +| Test.java:315:10:315:11 | in : Scanner | Test.java:315:10:315:27 | useLocale(...) : Scanner | provenance | MaD:18 | | Test.java:315:10:315:27 | useLocale(...) : Scanner | Test.java:316:9:316:11 | out | provenance | | | Test.java:321:17:321:34 | (...)... : Scanner | Test.java:322:10:322:11 | in : Scanner | provenance | | | Test.java:321:27:321:34 | source(...) : Object | Test.java:321:17:321:34 | (...)... : Scanner | provenance | | -| Test.java:322:10:322:11 | in : Scanner | Test.java:322:10:322:23 | useRadix(...) : Scanner | provenance | MaD:20 | +| Test.java:322:10:322:11 | in : Scanner | Test.java:322:10:322:23 | useRadix(...) : Scanner | provenance | MaD:19 | | Test.java:322:10:322:23 | useRadix(...) : Scanner | Test.java:323:9:323:11 | out | provenance | | nodes | Test.java:27:14:27:28 | (...)... : File | semmle.label | (...)... : File | From 47d9e8a3577c044bce0dac720f6a0e26e95136d6 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 16 Dec 2025 14:29:39 +0100 Subject: [PATCH 156/433] Swift: Adapt to changes in `FlowSummaryImpl` --- .../codeql/swift/dataflow/ExternalFlow.qll | 44 ++++++------------- .../lib/codeql/swift/dataflow/FlowSummary.qll | 7 ++- .../dataflow/internal/FlowSummaryImpl.qll | 2 + 3 files changed, 21 insertions(+), 32 deletions(-) diff --git a/swift/ql/lib/codeql/swift/dataflow/ExternalFlow.qll b/swift/ql/lib/codeql/swift/dataflow/ExternalFlow.qll index 7fac65ecde5d..6c5f580f876c 100644 --- a/swift/ql/lib/codeql/swift/dataflow/ExternalFlow.qll +++ b/swift/ql/lib/codeql/swift/dataflow/ExternalFlow.qll @@ -499,40 +499,22 @@ private predicate interpretSummary( // adapter class for converting Mad summaries to `SummarizedCallable`s private class SummarizedCallableAdapter extends SummarizedCallable { - SummarizedCallableAdapter() { interpretSummary(this, _, _, _, _, _) } + string input_; + string output_; + string kind; + Provenance p_; + string model_; - private predicate relevantSummaryElementManual( - string input, string output, string kind, string model - ) { - exists(Provenance provenance | - interpretSummary(this, input, output, kind, provenance, model) and - provenance.isManual() - ) - } - - private predicate relevantSummaryElementGenerated( - string input, string output, string kind, string model - ) { - exists(Provenance provenance | - interpretSummary(this, input, output, kind, provenance, model) and - provenance.isGenerated() - ) - } + SummarizedCallableAdapter() { interpretSummary(this, input_, output_, kind, p_, model_) } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, string model ) { - exists(string kind | - this.relevantSummaryElementManual(input, output, kind, model) - or - not this.relevantSummaryElementManual(_, _, _, _) and - this.relevantSummaryElementGenerated(input, output, kind, model) - | - if kind = "value" then preservesValue = true else preservesValue = false - ) - } - - override predicate hasProvenance(Provenance provenance) { - interpretSummary(this, _, _, _, provenance, _) + input = input_ and + output = output_ and + (if kind = "value" then preservesValue = true else preservesValue = false) and + p = p_ and + isExact = true and + model = model_ } } diff --git a/swift/ql/lib/codeql/swift/dataflow/FlowSummary.qll b/swift/ql/lib/codeql/swift/dataflow/FlowSummary.qll index 0cec06a7c9cc..83b99bd842af 100644 --- a/swift/ql/lib/codeql/swift/dataflow/FlowSummary.qll +++ b/swift/ql/lib/codeql/swift/dataflow/FlowSummary.qll @@ -13,4 +13,9 @@ private module Summaries { private import codeql.swift.frameworks.Frameworks } -class SummarizedCallable = Impl::Public::SummarizedCallable; +/** Provides the `Range` class used to define the extent of `SummarizedCallable`. */ +module SummarizedCallable { + class Range = Impl::Public::SummarizedCallable; +} + +class SummarizedCallable = Impl::Public::RelevantSummarizedCallable; diff --git a/swift/ql/lib/codeql/swift/dataflow/internal/FlowSummaryImpl.qll b/swift/ql/lib/codeql/swift/dataflow/internal/FlowSummaryImpl.qll index 692e3626080d..c1ddb7f781f5 100644 --- a/swift/ql/lib/codeql/swift/dataflow/internal/FlowSummaryImpl.qll +++ b/swift/ql/lib/codeql/swift/dataflow/internal/FlowSummaryImpl.qll @@ -20,6 +20,8 @@ module Input implements InputSig class SinkBase = Void; + predicate callableFromSource(SummarizedCallableBase c) { c.hasBody() } + ArgumentPosition callbackSelfParameterPosition() { result instanceof ThisArgumentPosition } ReturnKind getStandardReturnValueKind() { result instanceof NormalReturnKind } From 739748c29b2def21099c50dba658d787bc0b92b1 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 16 Dec 2025 14:31:29 +0100 Subject: [PATCH 157/433] Go: Adapt to changes in `FlowSummaryImpl` --- go/ql/lib/semmle/go/dataflow/ExternalFlow.qll | 49 ++++++------------- go/ql/lib/semmle/go/dataflow/FlowSummary.qll | 7 ++- .../go/dataflow/internal/FlowSummaryImpl.qll | 5 +- .../semmle/go/frameworks/stdlib/NetHttp.qll | 2 +- 4 files changed, 24 insertions(+), 39 deletions(-) diff --git a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll index 8ce765267282..7467d6c1d6c0 100644 --- a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll +++ b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll @@ -503,44 +503,23 @@ predicate barrierNode(DataFlow::Node node, string kind) { barrierNode(node, kind // adapter class for converting Mad summaries to `SummarizedCallable`s private class SummarizedCallableAdapter extends Public::SummarizedCallable { - SummarizedCallableAdapter() { summaryElement(this, _, _, _, _, _) } + string input_; + string output_; + string kind; + Public::Provenance p_; + string model_; - private predicate relevantSummaryElementManual( - string input, string output, string kind, string model - ) { - exists(Public::Provenance provenance | - summaryElement(this, input, output, kind, provenance, model) and - provenance.isManual() - ) - } - - private predicate relevantSummaryElementGenerated( - string input, string output, string kind, string model - ) { - exists(Public::Provenance provenance | - summaryElement(this, input, output, kind, provenance, model) and - provenance.isGenerated() - ) and - not exists(Public::Provenance provenance | - neutralElement(this, "summary", provenance) and - provenance.isManual() - ) - } + SummarizedCallableAdapter() { summaryElement(this, input_, output_, kind, p_, model_) } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Public::Provenance p, boolean isExact, + string model ) { - exists(string kind | - this.relevantSummaryElementManual(input, output, kind, model) - or - not this.relevantSummaryElementManual(_, _, _, _) and - this.relevantSummaryElementGenerated(input, output, kind, model) - | - if kind = "value" then preservesValue = true else preservesValue = false - ) - } - - override predicate hasProvenance(Public::Provenance provenance) { - summaryElement(this, _, _, _, provenance, _) + input = input_ and + output = output_ and + (if kind = "value" then preservesValue = true else preservesValue = false) and + p = p_ and + isExact = true and + model = model_ } } diff --git a/go/ql/lib/semmle/go/dataflow/FlowSummary.qll b/go/ql/lib/semmle/go/dataflow/FlowSummary.qll index f38cfafc056e..749e1c92e06d 100644 --- a/go/ql/lib/semmle/go/dataflow/FlowSummary.qll +++ b/go/ql/lib/semmle/go/dataflow/FlowSummary.qll @@ -18,6 +18,11 @@ deprecated class SummaryComponentStack = Impl::Private::SummaryComponentStack; deprecated module SummaryComponentStack = Impl::Private::SummaryComponentStack; -class SummarizedCallable = Impl::Public::SummarizedCallable; +/** Provides the `Range` class used to define the extent of `SummarizedCallable`. */ +module SummarizedCallable { + class Range = Impl::Public::SummarizedCallable; +} + +class SummarizedCallable = Impl::Public::RelevantSummarizedCallable; deprecated class RequiredSummaryComponentStack = Impl::Private::RequiredSummaryComponentStack; diff --git a/go/ql/lib/semmle/go/dataflow/internal/FlowSummaryImpl.qll b/go/ql/lib/semmle/go/dataflow/internal/FlowSummaryImpl.qll index 633864fbf8c6..f09f42872ea2 100644 --- a/go/ql/lib/semmle/go/dataflow/internal/FlowSummaryImpl.qll +++ b/go/ql/lib/semmle/go/dataflow/internal/FlowSummaryImpl.qll @@ -29,6 +29,8 @@ module Input implements InputSig { class SinkBase = Void; + predicate callableFromSource(SummarizedCallableBase c) { exists(c.getFuncDef()) } + predicate neutralElement( Input::SummarizedCallableBase c, string kind, string provenance, boolean isExact ) { @@ -36,8 +38,7 @@ module Input implements InputSig { neutralModel(namespace, type, name, signature, kind, provenance) and c.asFunction() = interpretElement(namespace, type, false, name, signature, "").asEntity() ) and - // isExact is not needed for Go. - isExact = false + isExact = true } ArgumentPosition callbackSelfParameterPosition() { result = -1 } diff --git a/go/ql/lib/semmle/go/frameworks/stdlib/NetHttp.qll b/go/ql/lib/semmle/go/frameworks/stdlib/NetHttp.qll index c6adc5c57406..a2aab2517d7a 100644 --- a/go/ql/lib/semmle/go/frameworks/stdlib/NetHttp.qll +++ b/go/ql/lib/semmle/go/frameworks/stdlib/NetHttp.qll @@ -157,7 +157,7 @@ module NetHttp { | this = call.getASyntacticArgument() and callable = call.getACalleeIncludingExternals() and - callable.propagatesFlow(input, output, _, _) + callable.propagatesFlow(input, output, _, _, _, _) | // A modeled function conveying taint from some input to the response writer, // e.g. `io.Copy(responseWriter, someTaintedReader)` From 0adece7cdef7d054623746a7ff9364c0467c4135 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 16 Dec 2025 14:34:32 +0100 Subject: [PATCH 158/433] Python: Adapt to changes in `FlowSummaryImpl` --- .../python/dataflow/new/FlowSummary.qll | 53 ++++++++------- .../dataflow/new/internal/FlowSummaryImpl.qll | 2 + .../new/internal/TypeTrackingImpl.qll | 2 +- .../ql/lib/semmle/python/frameworks/Flask.qll | 4 +- .../lib/semmle/python/frameworks/Stdlib.qll | 64 +++++++++---------- .../python/frameworks/data/ModelsAsData.qll | 23 ++++--- .../dataflow/summaries/TestSummaries.qll | 22 +++---- .../typetracking-summaries/TestSummaries.qll | 18 +++--- 8 files changed, 101 insertions(+), 87 deletions(-) diff --git a/python/ql/lib/semmle/python/dataflow/new/FlowSummary.qll b/python/ql/lib/semmle/python/dataflow/new/FlowSummary.qll index 7a54ace60ed8..f83870ab050d 100644 --- a/python/ql/lib/semmle/python/dataflow/new/FlowSummary.qll +++ b/python/ql/lib/semmle/python/dataflow/new/FlowSummary.qll @@ -22,30 +22,39 @@ deprecated class SummaryComponentStack = Impl::Private::SummaryComponentStack; deprecated module SummaryComponentStack = Impl::Private::SummaryComponentStack; -/** A callable with a flow summary, identified by a unique string. */ -abstract class SummarizedCallable extends LibraryCallable, Impl::Public::SummarizedCallable { - bindingset[this] - SummarizedCallable() { any() } - - /** - * DEPRECATED: Use `propagatesFlow` instead. - */ - deprecated predicate propagatesFlowExt(string input, string output, boolean preservesValue) { - this.propagatesFlow(input, output, preservesValue, _) +class Provenance = Impl::Public::Provenance; + +/** Provides the `Range` class used to define the extent of `SummarizedCallable`. */ +module SummarizedCallable { + /** A callable with a flow summary, identified by a unique string. */ + abstract class Range extends LibraryCallable, Impl::Public::SummarizedCallable { + bindingset[this] + Range() { any() } + + override predicate propagatesFlow( + string input, string output, boolean preservesValue, Provenance p, boolean isExact, + string model + ) { + this.propagatesFlow(input, output, preservesValue) and + p = "manual" and + isExact = true and + model = this + } + + /** + * Holds if data may flow from `input` to `output` through this callable. + * + * `preservesValue` indicates whether this is a value-preserving step or a taint-step. + */ + predicate propagatesFlow(string input, string output, boolean preservesValue) { none() } } +} - override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model - ) { - this.propagatesFlow(input, output, preservesValue) and model = this - } +final private class SummarizedCallableFinal = SummarizedCallable::Range; - /** - * Holds if data may flow from `input` to `output` through this callable. - * - * `preservesValue` indicates whether this is a value-preserving step or a taint-step. - */ - predicate propagatesFlow(string input, string output, boolean preservesValue) { none() } -} +/** A callable with a flow summary, identified by a unique string. */ +final class SummarizedCallable extends SummarizedCallableFinal, + Impl::Public::RelevantSummarizedCallable +{ } deprecated class RequiredSummaryComponentStack = Impl::Private::RequiredSummaryComponentStack; diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/FlowSummaryImpl.qll b/python/ql/lib/semmle/python/dataflow/new/internal/FlowSummaryImpl.qll index 396154c06ee8..449b51565a85 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/FlowSummaryImpl.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/FlowSummaryImpl.qll @@ -18,6 +18,8 @@ module Input implements InputSig class SinkBase = Void; + predicate callableFromSource(SummarizedCallableBase c) { none() } + ArgumentPosition callbackSelfParameterPosition() { result.isLambdaSelf() } ReturnKind getStandardReturnValueKind() { any() } diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/TypeTrackingImpl.qll b/python/ql/lib/semmle/python/dataflow/new/internal/TypeTrackingImpl.qll index 09d50253e05a..2f98ab70719b 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/TypeTrackingImpl.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/TypeTrackingImpl.qll @@ -30,7 +30,7 @@ private module SummaryTypeTrackerInput implements SummaryTypeTracker::Input { predicate propagatesFlow( SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue ) { - super.propagatesFlow(input, output, preservesValue, _) + super.propagatesFlow(input, output, preservesValue, _, _, _) } } diff --git a/python/ql/lib/semmle/python/frameworks/Flask.qll b/python/ql/lib/semmle/python/frameworks/Flask.qll index 0e5d6065c474..8ac9f3deab31 100644 --- a/python/ql/lib/semmle/python/frameworks/Flask.qll +++ b/python/ql/lib/semmle/python/frameworks/Flask.qll @@ -674,7 +674,7 @@ module Flask { * * see https://flask.palletsprojects.com/en/2.3.x/api/#flask.render_template_string */ - private class RenderTemplateStringSummary extends SummarizedCallable { + private class RenderTemplateStringSummary extends SummarizedCallable::Range { RenderTemplateStringSummary() { this = "flask.render_template_string" } override DataFlow::CallCfgNode getACall() { @@ -700,7 +700,7 @@ module Flask { * * see https://flask.palletsprojects.com/en/2.3.x/api/#flask.stream_template_string */ - private class StreamTemplateStringSummary extends SummarizedCallable { + private class StreamTemplateStringSummary extends SummarizedCallable::Range { StreamTemplateStringSummary() { this = "flask.stream_template_string" } override DataFlow::CallCfgNode getACall() { diff --git a/python/ql/lib/semmle/python/frameworks/Stdlib.qll b/python/ql/lib/semmle/python/frameworks/Stdlib.qll index 143a575c6e9c..e749ab66f8b2 100644 --- a/python/ql/lib/semmle/python/frameworks/Stdlib.qll +++ b/python/ql/lib/semmle/python/frameworks/Stdlib.qll @@ -3187,7 +3187,7 @@ module StdlibPrivate { * * See https://docs.python.org/3.11/library/re.html#re-objects */ - class RePatternSummary extends SummarizedCallable { + class RePatternSummary extends SummarizedCallable::Range { RePatternSummary() { this = "re.Pattern" } override DataFlow::CallCfgNode getACall() { @@ -3227,7 +3227,7 @@ module StdlibPrivate { * * See https://docs.python.org/3/library/re.html#re.Match */ - class ReMatchSummary extends SummarizedCallable { + class ReMatchSummary extends SummarizedCallable::Range { ReMatchSummary() { this = ["re.Match", "compiled re.Match"] } override DataFlow::CallCfgNode getACall() { @@ -3291,7 +3291,7 @@ module StdlibPrivate { * * See https://docs.python.org/3/library/re.html#re.Match */ - class ReMatchMethodsSummary extends SummarizedCallable { + class ReMatchMethodsSummary extends SummarizedCallable::Range { string methodName; ReMatchMethodsSummary() { @@ -3335,7 +3335,7 @@ module StdlibPrivate { * * See https://docs.python.org/3/library/re.html#functions */ - class ReFunctionsSummary extends SummarizedCallable { + class ReFunctionsSummary extends SummarizedCallable::Range { string methodName; ReFunctionsSummary() { @@ -4183,7 +4183,7 @@ module StdlibPrivate { * * see https://docs.python.org/3/library/stdtypes.html#dict */ - class DictSummary extends SummarizedCallable { + class DictSummary extends SummarizedCallable::Range { DictSummary() { this = "builtins.dict" } override DataFlow::CallCfgNode getACall() { result = API::builtin("dict").getACall() } @@ -4222,7 +4222,7 @@ module StdlibPrivate { } /** A flow summary for `list`. */ - class ListSummary extends SummarizedCallable { + class ListSummary extends SummarizedCallable::Range { ListSummary() { this = "builtins.list" } override DataFlow::CallCfgNode getACall() { result = API::builtin("list").getACall() } @@ -4252,7 +4252,7 @@ module StdlibPrivate { } /** A flow summary for tuple */ - class TupleSummary extends SummarizedCallable { + class TupleSummary extends SummarizedCallable::Range { TupleSummary() { this = "builtins.tuple" } override DataFlow::CallCfgNode getACall() { result = API::builtin("tuple").getACall() } @@ -4277,7 +4277,7 @@ module StdlibPrivate { } /** A flow summary for set */ - class SetSummary extends SummarizedCallable { + class SetSummary extends SummarizedCallable::Range { SetSummary() { this = "builtins.set" } override DataFlow::CallCfgNode getACall() { result = API::builtin("set").getACall() } @@ -4307,7 +4307,7 @@ module StdlibPrivate { } /** A flow summary for frozenset */ - class FrozensetSummary extends SummarizedCallable { + class FrozensetSummary extends SummarizedCallable::Range { FrozensetSummary() { this = "builtins.frozenset" } override DataFlow::CallCfgNode getACall() { result = API::builtin("frozenset").getACall() } @@ -4325,7 +4325,7 @@ module StdlibPrivate { // Flow summaries for functions operating on containers // --------------------------------------------------------------------------- /** A flow summary for `reversed`. */ - class ReversedSummary extends SummarizedCallable { + class ReversedSummary extends SummarizedCallable::Range { ReversedSummary() { this = "builtins.reversed" } override DataFlow::CallCfgNode getACall() { result = API::builtin("reversed").getACall() } @@ -4355,7 +4355,7 @@ module StdlibPrivate { } /** A flow summary for `sorted`. */ - class SortedSummary extends SummarizedCallable { + class SortedSummary extends SummarizedCallable::Range { SortedSummary() { this = "builtins.sorted" } override DataFlow::CallCfgNode getACall() { result = API::builtin("sorted").getACall() } @@ -4387,7 +4387,7 @@ module StdlibPrivate { } /** A flow summary for `iter`. */ - class IterSummary extends SummarizedCallable { + class IterSummary extends SummarizedCallable::Range { IterSummary() { this = "builtins.iter" } override DataFlow::CallCfgNode getACall() { result = API::builtin("iter").getACall() } @@ -4417,7 +4417,7 @@ module StdlibPrivate { } /** A flow summary for `next`. */ - class NextSummary extends SummarizedCallable { + class NextSummary extends SummarizedCallable::Range { NextSummary() { this = "builtins.next" } override DataFlow::CallCfgNode getACall() { result = API::builtin("next").getACall() } @@ -4447,7 +4447,7 @@ module StdlibPrivate { } /** A flow summary for `map`. */ - class MapSummary extends SummarizedCallable { + class MapSummary extends SummarizedCallable::Range { MapSummary() { this = "builtins.map" } override DataFlow::CallCfgNode getACall() { result = API::builtin("map").getACall() } @@ -4482,7 +4482,7 @@ module StdlibPrivate { } /** A flow summary for `filter`. */ - class FilterSummary extends SummarizedCallable { + class FilterSummary extends SummarizedCallable::Range { FilterSummary() { this = "builtins.filter" } override DataFlow::CallCfgNode getACall() { result = API::builtin("filter").getACall() } @@ -4508,7 +4508,7 @@ module StdlibPrivate { } /**A summary for `enumerate`. */ - class EnumerateSummary extends SummarizedCallable { + class EnumerateSummary extends SummarizedCallable::Range { EnumerateSummary() { this = "builtins.enumerate" } override DataFlow::CallCfgNode getACall() { result = API::builtin("enumerate").getACall() } @@ -4534,7 +4534,7 @@ module StdlibPrivate { } /** A flow summary for `zip`. */ - class ZipSummary extends SummarizedCallable { + class ZipSummary extends SummarizedCallable::Range { ZipSummary() { this = "builtins.zip" } override DataFlow::CallCfgNode getACall() { result = API::builtin("zip").getACall() } @@ -4568,7 +4568,7 @@ module StdlibPrivate { // Flow summaries for container methods // --------------------------------------------------------------------------- /** A flow summary for `copy`. */ - class CopySummary extends SummarizedCallable { + class CopySummary extends SummarizedCallable::Range { CopySummary() { this = "collection.copy" } override DataFlow::CallCfgNode getACall() { @@ -4591,7 +4591,7 @@ module StdlibPrivate { } /** A flow summary for `copy.replace`. */ - class ReplaceSummary extends SummarizedCallable { + class ReplaceSummary extends SummarizedCallable::Range { ReplaceSummary() { this = "copy.replace" } override DataFlow::CallCfgNode getACall() { @@ -4624,7 +4624,7 @@ module StdlibPrivate { * I also handles the default value when `pop` is called * on a dictionary, since that also does not depend on the key. */ - class PopSummary extends SummarizedCallable { + class PopSummary extends SummarizedCallable::Range { PopSummary() { this = "collection.pop" } override DataFlow::CallCfgNode getACall() { @@ -4655,7 +4655,7 @@ module StdlibPrivate { } /** A flow summary for `dict.pop` */ - class DictPopSummary extends SummarizedCallable { + class DictPopSummary extends SummarizedCallable::Range { string key; DictPopSummary() { @@ -4678,7 +4678,7 @@ module StdlibPrivate { } /** A flow summary for `dict.get` at specific content. */ - class DictGetSummary extends SummarizedCallable { + class DictGetSummary extends SummarizedCallable::Range { string key; DictGetSummary() { @@ -4706,7 +4706,7 @@ module StdlibPrivate { } /** A flow summary for `dict.get` disregarding content. */ - class DictGetAnySummary extends SummarizedCallable { + class DictGetAnySummary extends SummarizedCallable::Range { DictGetAnySummary() { this = "dict.get" } override DataFlow::CallCfgNode getACall() { @@ -4729,7 +4729,7 @@ module StdlibPrivate { } /** A flow summary for `dict.popitem` */ - class DictPopitemSummary extends SummarizedCallable { + class DictPopitemSummary extends SummarizedCallable::Range { DictPopitemSummary() { this = "dict.popitem" } override DataFlow::CallCfgNode getACall() { @@ -4753,7 +4753,7 @@ module StdlibPrivate { * * See https://docs.python.org/3.10/library/stdtypes.html#dict.setdefault */ - class DictSetdefaultSummary extends SummarizedCallable { + class DictSetdefaultSummary extends SummarizedCallable::Range { DictSetdefaultSummary() { this = "dict.setdefault" } override DataFlow::CallCfgNode getACall() { @@ -4778,7 +4778,7 @@ module StdlibPrivate { * This summary handles read and store steps. See `DictSetdefaultSummary` * for the dataflow steps. */ - class DictSetdefaultKeySummary extends SummarizedCallable { + class DictSetdefaultKeySummary extends SummarizedCallable::Range { string key; DictSetdefaultKeySummary() { @@ -4811,7 +4811,7 @@ module StdlibPrivate { * * See https://docs.python.org/3.10/library/stdtypes.html#dict.values */ - class DictValues extends SummarizedCallable { + class DictValues extends SummarizedCallable::Range { DictValues() { this = "dict.values" } override DataFlow::CallCfgNode getACall() { @@ -4840,7 +4840,7 @@ module StdlibPrivate { * * See https://docs.python.org/3.10/library/stdtypes.html#dict.keys */ - class DictKeys extends SummarizedCallable { + class DictKeys extends SummarizedCallable::Range { DictKeys() { this = "dict.keys" } override DataFlow::CallCfgNode getACall() { result.(DataFlow::MethodCallNode).calls(_, "keys") } @@ -4862,7 +4862,7 @@ module StdlibPrivate { * * See https://docs.python.org/3.10/library/stdtypes.html#dict.items */ - class DictItems extends SummarizedCallable { + class DictItems extends SummarizedCallable::Range { DictItems() { this = "dict.items" } override DataFlow::CallCfgNode getACall() { @@ -4892,7 +4892,7 @@ module StdlibPrivate { * * See https://docs.python.org/3.10/library/stdtypes.html#typesseq-mutable */ - class ListAppend extends SummarizedCallable { + class ListAppend extends SummarizedCallable::Range { ListAppend() { this = "list.append" } override DataFlow::CallCfgNode getACall() { @@ -4921,7 +4921,7 @@ module StdlibPrivate { * * See https://docs.python.org/3.10/library/stdtypes.html#frozenset.add */ - class SetAdd extends SummarizedCallable { + class SetAdd extends SummarizedCallable::Range { SetAdd() { this = "set.add" } override DataFlow::CallCfgNode getACall() { result.(DataFlow::MethodCallNode).calls(_, "add") } @@ -4948,7 +4948,7 @@ module StdlibPrivate { * * See https://devdocs.io/python~3.11/library/os#os.getenv */ - class OsGetEnv extends SummarizedCallable { + class OsGetEnv extends SummarizedCallable::Range { OsGetEnv() { this = "os.getenv" } override DataFlow::CallCfgNode getACall() { diff --git a/python/ql/lib/semmle/python/frameworks/data/ModelsAsData.qll b/python/ql/lib/semmle/python/frameworks/data/ModelsAsData.qll index 11c6b285f2aa..9d04cdab4e41 100644 --- a/python/ql/lib/semmle/python/frameworks/data/ModelsAsData.qll +++ b/python/ql/lib/semmle/python/frameworks/data/ModelsAsData.qll @@ -33,12 +33,16 @@ private class ThreatModelSourceFromDataExtension extends ThreatModelSource::Rang } } -private class SummarizedCallableFromModel extends SummarizedCallable { +private class SummarizedCallableFromModel extends SummarizedCallable::Range { string type; string path; + string input_; + string output_; + string kind; + string model_; SummarizedCallableFromModel() { - ModelOutput::relevantSummaryModel(type, path, _, _, _, _) and + ModelOutput::relevantSummaryModel(type, path, input_, output_, kind, model_) and this = type + ";" + path } @@ -52,14 +56,13 @@ private class SummarizedCallableFromModel extends SummarizedCallable { } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, string model ) { - exists(string kind | ModelOutput::relevantSummaryModel(type, path, input, output, kind, model) | - kind = "value" and - preservesValue = true - or - kind = "taint" and - preservesValue = false - ) + input = input_ and + output = output_ and + (if kind = "value" then preservesValue = true else preservesValue = false) and + p = "manual" and + isExact = true and + model = model_ } } diff --git a/python/ql/test/library-tests/dataflow/summaries/TestSummaries.qll b/python/ql/test/library-tests/dataflow/summaries/TestSummaries.qll index 534fac624914..11b9c0ef09e6 100644 --- a/python/ql/test/library-tests/dataflow/summaries/TestSummaries.qll +++ b/python/ql/test/library-tests/dataflow/summaries/TestSummaries.qll @@ -10,7 +10,7 @@ private import semmle.python.ApiGraphs module RecursionGuard { private import semmle.python.dataflow.new.internal.TypeTrackingImpl::TypeTrackingInput as TT - private class RecursionGuard extends SummarizedCallable { + private class RecursionGuard extends SummarizedCallable::Range { RecursionGuard() { this = "RecursionGuard" } override DataFlow::CallCfgNode getACall() { @@ -26,7 +26,7 @@ module RecursionGuard { } } -private class SummarizedCallableIdentity extends SummarizedCallable { +private class SummarizedCallableIdentity extends SummarizedCallable::Range { SummarizedCallableIdentity() { this = "identity" } override DataFlow::CallCfgNode getACall() { @@ -43,7 +43,7 @@ private class SummarizedCallableIdentity extends SummarizedCallable { } // For lambda flow to work, implement lambdaCall and lambdaCreation -private class SummarizedCallableApplyLambda extends SummarizedCallable { +private class SummarizedCallableApplyLambda extends SummarizedCallable::Range { SummarizedCallableApplyLambda() { this = "apply_lambda" } override DataFlow::CallCfgNode getACall() { @@ -63,7 +63,7 @@ private class SummarizedCallableApplyLambda extends SummarizedCallable { } } -private class SummarizedCallableReversed extends SummarizedCallable { +private class SummarizedCallableReversed extends SummarizedCallable::Range { SummarizedCallableReversed() { this = "list_reversed" } override DataFlow::CallCfgNode getACall() { @@ -79,7 +79,7 @@ private class SummarizedCallableReversed extends SummarizedCallable { } } -private class SummarizedCallableMap extends SummarizedCallable { +private class SummarizedCallableMap extends SummarizedCallable::Range { SummarizedCallableMap() { this = "list_map" } override DataFlow::CallCfgNode getACall() { @@ -99,7 +99,7 @@ private class SummarizedCallableMap extends SummarizedCallable { } } -private class SummarizedCallableAppend extends SummarizedCallable { +private class SummarizedCallableAppend extends SummarizedCallable::Range { SummarizedCallableAppend() { this = "append_to_list" } override DataFlow::CallCfgNode getACall() { @@ -119,7 +119,7 @@ private class SummarizedCallableAppend extends SummarizedCallable { } } -private class SummarizedCallableJsonLoads extends SummarizedCallable { +private class SummarizedCallableJsonLoads extends SummarizedCallable::Range { SummarizedCallableJsonLoads() { this = "json.loads" } override DataFlow::CallCfgNode getACall() { @@ -138,7 +138,7 @@ private class SummarizedCallableJsonLoads extends SummarizedCallable { } // Repeated summaries -private class SummarizedCallableWithSubpath extends SummarizedCallable { +private class SummarizedCallableWithSubpath extends SummarizedCallable::Range { SummarizedCallableWithSubpath() { this = "extracted_package.functions.with_subpath" } override DataFlow::CallCfgNode getACall() { @@ -164,7 +164,7 @@ private class SummarizedCallableWithSubpath extends SummarizedCallable { } } -private class SummarizedCallableWithSubpathAgain extends SummarizedCallable { +private class SummarizedCallableWithSubpathAgain extends SummarizedCallable::Range { SummarizedCallableWithSubpathAgain() { this = "extracted_package.functions.with_subpathII" } override DataFlow::CallCfgNode getACall() { @@ -190,7 +190,7 @@ private class SummarizedCallableWithSubpathAgain extends SummarizedCallable { } } -private class SummarizedCallableWithoutSubpath extends SummarizedCallable { +private class SummarizedCallableWithoutSubpath extends SummarizedCallable::Range { SummarizedCallableWithoutSubpath() { this = "extracted_package.functions.without_subpath" } override DataFlow::CallCfgNode getACall() { @@ -216,7 +216,7 @@ private class SummarizedCallableWithoutSubpath extends SummarizedCallable { } } -private class SummarizedCallableWithoutSubpathAgain extends SummarizedCallable { +private class SummarizedCallableWithoutSubpathAgain extends SummarizedCallable::Range { SummarizedCallableWithoutSubpathAgain() { this = "extracted_package.functions.without_subpathII" } override DataFlow::CallCfgNode getACall() { diff --git a/python/ql/test/library-tests/dataflow/typetracking-summaries/TestSummaries.qll b/python/ql/test/library-tests/dataflow/typetracking-summaries/TestSummaries.qll index 47e0fda7c0bb..c4c4096c686a 100644 --- a/python/ql/test/library-tests/dataflow/typetracking-summaries/TestSummaries.qll +++ b/python/ql/test/library-tests/dataflow/typetracking-summaries/TestSummaries.qll @@ -10,7 +10,7 @@ private import semmle.python.ApiGraphs module RecursionGuard { private import semmle.python.dataflow.new.internal.TypeTrackingImpl::TypeTrackingInput as TT - private class RecursionGuard extends SummarizedCallable { + private class RecursionGuard extends SummarizedCallable::Range { RecursionGuard() { this = "TypeTrackingSummariesRecursionGuard" } override DataFlow::CallCfgNode getACall() { @@ -32,7 +32,7 @@ module RecursionGuard { } } -private class SummarizedCallableIdentity extends SummarizedCallable { +private class SummarizedCallableIdentity extends SummarizedCallable::Range { SummarizedCallableIdentity() { this = "TTS_identity" } override DataFlow::CallCfgNode getACall() { none() } @@ -51,7 +51,7 @@ private class SummarizedCallableIdentity extends SummarizedCallable { } // For lambda flow to work, implement lambdaCall and lambdaCreation -private class SummarizedCallableApplyLambda extends SummarizedCallable { +private class SummarizedCallableApplyLambda extends SummarizedCallable::Range { SummarizedCallableApplyLambda() { this = "TTS_apply_lambda" } override DataFlow::CallCfgNode getACall() { none() } @@ -73,7 +73,7 @@ private class SummarizedCallableApplyLambda extends SummarizedCallable { } } -private class SummarizedCallableReversed extends SummarizedCallable { +private class SummarizedCallableReversed extends SummarizedCallable::Range { SummarizedCallableReversed() { this = "TTS_reversed" } override DataFlow::CallCfgNode getACall() { none() } @@ -91,7 +91,7 @@ private class SummarizedCallableReversed extends SummarizedCallable { } } -private class SummarizedCallableMap extends SummarizedCallable { +private class SummarizedCallableMap extends SummarizedCallable::Range { SummarizedCallableMap() { this = "TTS_list_map" } override DataFlow::CallCfgNode getACall() { none() } @@ -113,7 +113,7 @@ private class SummarizedCallableMap extends SummarizedCallable { } } -private class SummarizedCallableAppend extends SummarizedCallable { +private class SummarizedCallableAppend extends SummarizedCallable::Range { SummarizedCallableAppend() { this = "TTS_append_to_list" } override DataFlow::CallCfgNode getACall() { none() } @@ -135,7 +135,7 @@ private class SummarizedCallableAppend extends SummarizedCallable { } } -private class SummarizedCallableJsonLoads extends SummarizedCallable { +private class SummarizedCallableJsonLoads extends SummarizedCallable::Range { SummarizedCallableJsonLoads() { this = "TTS_json.loads" } override DataFlow::CallCfgNode getACall() { @@ -156,7 +156,7 @@ private class SummarizedCallableJsonLoads extends SummarizedCallable { } // read and store -private class SummarizedCallableReadSecret extends SummarizedCallable { +private class SummarizedCallableReadSecret extends SummarizedCallable::Range { SummarizedCallableReadSecret() { this = "TTS_read_secret" } override DataFlow::CallCfgNode getACall() { none() } @@ -174,7 +174,7 @@ private class SummarizedCallableReadSecret extends SummarizedCallable { } } -private class SummarizedCallableSetSecret extends SummarizedCallable { +private class SummarizedCallableSetSecret extends SummarizedCallable::Range { SummarizedCallableSetSecret() { this = "TTS_set_secret" } override DataFlow::CallCfgNode getACall() { none() } From 3b1e0629850c4678ed2ba1c5a41d7fc4f7177cd5 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 16 Dec 2025 14:39:11 +0100 Subject: [PATCH 159/433] C++: Adapt to changes in `FlowSummaryImpl` --- .../semmle/code/cpp/dataflow/ExternalFlow.qll | 44 ++++++------------- .../cpp/dataflow/internal/FlowSummaryImpl.qll | 2 + .../ir/dataflow/internal/DataFlowPrivate.qll | 2 +- .../modelgenerator/internal/CaptureModels.qll | 2 +- .../dataflow/external-models/steps.expected | 2 - 5 files changed, 17 insertions(+), 35 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll index eecacb148340..cf8f01e69442 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll @@ -1145,40 +1145,22 @@ private predicate interpretSummary( // adapter class for converting Mad summaries to `SummarizedCallable`s private class SummarizedCallableAdapter extends SummarizedCallable { - SummarizedCallableAdapter() { interpretSummary(this, _, _, _, _, _) } + string input_; + string output_; + string kind; + Provenance p_; + string model_; - private predicate relevantSummaryElementManual( - string input, string output, string kind, string model - ) { - exists(Provenance provenance | - interpretSummary(this, input, output, kind, provenance, model) and - provenance.isManual() - ) - } - - private predicate relevantSummaryElementGenerated( - string input, string output, string kind, string model - ) { - exists(Provenance provenance | - interpretSummary(this, input, output, kind, provenance, model) and - provenance.isGenerated() - ) - } + SummarizedCallableAdapter() { interpretSummary(this, input_, output_, kind, p_, model_) } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, Provenance p, boolean isExact, string model ) { - exists(string kind | - this.relevantSummaryElementManual(input, output, kind, model) - or - not this.relevantSummaryElementManual(_, _, _, _) and - this.relevantSummaryElementGenerated(input, output, kind, model) - | - if kind = "value" then preservesValue = true else preservesValue = false - ) - } - - override predicate hasProvenance(Provenance provenance) { - interpretSummary(this, _, _, _, provenance, _) + input = input_ and + output = output_ and + (if kind = "value" then preservesValue = true else preservesValue = false) and + p = p_ and + isExact = true and + model = model_ } } diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll index 3c4177dc8569..af3e25ba7344 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll @@ -20,6 +20,8 @@ module Input implements InputSig { class SinkBase = Void; + predicate callableFromSource(SummarizedCallableBase c) { exists(c.getBlock()) } + ArgumentPosition callbackSelfParameterPosition() { result = TDirectPosition(-1) } ReturnKind getStandardReturnValueKind() { result = getReturnValueKind("") } diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowPrivate.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowPrivate.qll index b5f4f88f4bd5..88d7dd9faf19 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowPrivate.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowPrivate.qll @@ -1144,7 +1144,7 @@ private newtype TDataFlowCall = } private predicate summarizedCallableIsManual(SummarizedCallable sc) { - sc.asSummarizedCallable().applyManualModel() + sc.asSummarizedCallable().hasManualModel() } /** diff --git a/cpp/ql/src/utils/modelgenerator/internal/CaptureModels.qll b/cpp/ql/src/utils/modelgenerator/internal/CaptureModels.qll index ba1221d112b7..f2c621d04cb6 100644 --- a/cpp/ql/src/utils/modelgenerator/internal/CaptureModels.qll +++ b/cpp/ql/src/utils/modelgenerator/internal/CaptureModels.qll @@ -310,7 +310,7 @@ private module SummaryModelGeneratorInput implements SummaryModelGeneratorInputS } private predicate hasManualSummaryModel(Callable api) { - api = any(FlowSummaryImpl::Public::SummarizedCallable sc | sc.applyManualModel()) or + api = any(FlowSummaryImpl::Public::SummarizedCallable sc | sc.hasManualModel()) or api = any(FlowSummaryImpl::Public::NeutralSummaryCallable sc | sc.hasManualModel()) } diff --git a/cpp/ql/test/library-tests/dataflow/external-models/steps.expected b/cpp/ql/test/library-tests/dataflow/external-models/steps.expected index ce5dd687caf9..9f4a5f55fef1 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/steps.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/steps.expected @@ -3,6 +3,4 @@ | test.cpp:21:27:21:27 | x | test.cpp:21:10:21:25 | call to ymlStepGenerated | | test.cpp:25:35:25:35 | x | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | | test.cpp:28:35:28:35 | 0 | test.cpp:28:11:28:33 | call to ymlStepManual_with_body | -| test.cpp:32:38:32:38 | 0 | test.cpp:32:11:32:36 | call to ymlStepGenerated_with_body | -| test.cpp:35:38:35:38 | x | test.cpp:35:11:35:36 | call to ymlStepGenerated_with_body | | windows.cpp:27:36:27:38 | *cmd | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | From 93dad867cd8c0804fdc4ea9133008527cfd45f09 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Thu, 18 Dec 2025 11:03:37 +0100 Subject: [PATCH 160/433] JS: Adapt to changes in `FlowSummaryImpl` --- .../javascript/dataflow/FlowSummary.qll | 148 ++++++++++-------- .../internal/sharedlib/DataFlowArg.qll | 3 + .../internal/sharedlib/SummaryTypeTracker.qll | 2 +- .../javascript/frameworks/AsyncPackage.qll | 4 +- .../frameworks/LodashUnderscore.qll | 22 +-- .../javascript/frameworks/UriLibraries.qll | 2 +- .../frameworks/data/ModelsAsData.qll | 11 +- .../flow_summaries/AmbiguousCoreMethods.qll | 16 +- .../internal/flow_summaries/Arrays.qll | 46 +++--- .../internal/flow_summaries/Decoders.qll | 2 +- .../internal/flow_summaries/ExceptionFlow.qll | 2 +- .../flow_summaries/FlowSummaryUtil.qll | 2 +- .../internal/flow_summaries/Iterators.qll | 2 +- .../internal/flow_summaries/JsonStringify.qll | 2 +- .../internal/flow_summaries/Maps.qll | 8 +- .../internal/flow_summaries/Promises.qll | 32 ++-- .../internal/flow_summaries/Sets.qll | 4 +- .../internal/flow_summaries/Strings.qll | 10 +- .../internal/flow_summaries/TypedArrays.qll | 8 +- .../flow_summaries/UrlSearchParams.qll | 6 +- .../ql/lib/utils/test/InlineSummaries.qll | 2 +- 21 files changed, 179 insertions(+), 155 deletions(-) diff --git a/javascript/ql/lib/semmle/javascript/dataflow/FlowSummary.qll b/javascript/ql/lib/semmle/javascript/dataflow/FlowSummary.qll index c4661b321ea6..3f809a967233 100644 --- a/javascript/ql/lib/semmle/javascript/dataflow/FlowSummary.qll +++ b/javascript/ql/lib/semmle/javascript/dataflow/FlowSummary.qll @@ -8,78 +8,94 @@ private import semmle.javascript.dataflow.internal.FlowSummaryPrivate private import semmle.javascript.dataflow.internal.sharedlib.DataFlowImplCommon as DataFlowImplCommon private import semmle.javascript.dataflow.internal.DataFlowPrivate -/** - * A model for a function that can propagate data flow. - * - * This class makes it possible to model flow through functions, using the same mechanism as - * `summaryModel` as described in the [library customization docs](https://codeql.github.com/docs/codeql-language-guides/customizing-library-models-for-javascript). - * - * Extend this class to define summary models directly in CodeQL. - * Data extensions and `summaryModel` are usually preferred; but there are a few cases where direct use of this class may be needed: - * - * - The relevant call sites cannot be matched by the access path syntax, and require the full power of CodeQL. - * For example, complex overloading patterns might require more local reasoning at the call site. - * - The input/output behavior cannot be described statically in the access path syntax, but the relevant access paths - * can be generated dynamically in CodeQL, based on the usages found in the codebase. - * - * Subclasses should bind `this` to a unique identifier for the function being modeled. There is no special - * interpreation of the `this` value, it should just not clash with the `this`-value used by other classes. - * - * For example, this models flow through calls such as `require("my-library").myFunction()`: - * ```codeql - * class MyFunction extends SummarizedCallable { - * MyFunction() { this = "MyFunction" } - * - * override predicate propagatesFlow(string input, string output, boolean preservesValues) { - * input = "Argument[0]" and - * output = "ReturnValue" and - * preservesValue = false - * } - * - * override DataFlow::InvokeNode getACall() { - * result = API::moduleImport("my-library").getMember("myFunction").getACall() - * } - * } - * ``` - * This would be equivalent to the following model written as a data extension: - * ```yaml - * extensions: - * - addsTo: - * pack: codeql/javascript-all - * extensible: summaryModel - * data: - * - ["my-library", "Member[myFunction]", "Argument[0]", "ReturnValue", "taint"] - * ``` - */ -abstract class SummarizedCallable extends LibraryCallable, Impl::Public::SummarizedCallable { - bindingset[this] - SummarizedCallable() { any() } +class Provenance = Impl::Public::Provenance; +/** Provides the `Range` class used to define the extent of `SummarizedCallable`. */ +module SummarizedCallable { /** - * Holds if data may flow from `input` to `output` through this callable. + * A model for a function that can propagate data flow. * - * `preservesValue` indicates whether this is a value-preserving step or a taint-step. + * This class makes it possible to model flow through functions, using the same mechanism as + * `summaryModel` as described in the [library customization docs](https://codeql.github.com/docs/codeql-language-guides/customizing-library-models-for-javascript). * - * See the [library customization docs](https://codeql.github.com/docs/codeql-language-guides/customizing-library-models-for-javascript) for - * the syntax of the `input` and `output` parameters. + * Extend this class to define summary models directly in CodeQL. + * Data extensions and `summaryModel` are usually preferred; but there are a few cases where direct use of this class may be needed: + * + * - The relevant call sites cannot be matched by the access path syntax, and require the full power of CodeQL. + * For example, complex overloading patterns might require more local reasoning at the call site. + * - The input/output behavior cannot be described statically in the access path syntax, but the relevant access paths + * can be generated dynamically in CodeQL, based on the usages found in the codebase. + * + * Subclasses should bind `this` to a unique identifier for the function being modeled. There is no special + * interpreation of the `this` value, it should just not clash with the `this`-value used by other classes. + * + * For example, this models flow through calls such as `require("my-library").myFunction()`: + * ```codeql + * class MyFunction extends SummarizedCallable::Range { + * MyFunction() { this = "MyFunction" } + * + * override predicate propagatesFlow(string input, string output, boolean preservesValues) { + * input = "Argument[0]" and + * output = "ReturnValue" and + * preservesValue = false + * } + * + * override DataFlow::InvokeNode getACall() { + * result = API::moduleImport("my-library").getMember("myFunction").getACall() + * } + * } + * ``` + * This would be equivalent to the following model written as a data extension: + * ```yaml + * extensions: + * - addsTo: + * pack: codeql/javascript-all + * extensible: summaryModel + * data: + * - ["my-library", "Member[myFunction]", "Argument[0]", "ReturnValue", "taint"] + * ``` */ - pragma[nomagic] - predicate propagatesFlow(string input, string output, boolean preservesValue) { none() } + abstract class Range extends LibraryCallable, Impl::Public::SummarizedCallable { + bindingset[this] + Range() { any() } - override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model - ) { - this.propagatesFlow(input, output, preservesValue) and model = this - } + /** + * Holds if data may flow from `input` to `output` through this callable. + * + * `preservesValue` indicates whether this is a value-preserving step or a taint-step. + * + * See the [library customization docs](https://codeql.github.com/docs/codeql-language-guides/customizing-library-models-for-javascript) for + * the syntax of the `input` and `output` parameters. + */ + pragma[nomagic] + predicate propagatesFlow(string input, string output, boolean preservesValue) { none() } - /** - * Gets the synthesized parameter that results from an input specification - * that starts with `Argument[s]` for this library callable. - */ - DataFlow::ParameterNode getParameter(string s) { - exists(ParameterPosition pos | - DataFlowImplCommon::parameterNode(result, MkLibraryCallable(this), pos) and - s = encodeParameterPosition(pos) - ) + override predicate propagatesFlow( + string input, string output, boolean preservesValue, Provenance provenance, boolean isExact, + string model + ) { + this.propagatesFlow(input, output, preservesValue) and + provenance = "manual" and + model = this and + isExact = true + } + + /** + * Gets the synthesized parameter that results from an input specification + * that starts with `Argument[s]` for this library callable. + */ + DataFlow::ParameterNode getParameter(string s) { + exists(ParameterPosition pos | + DataFlowImplCommon::parameterNode(result, MkLibraryCallable(this), pos) and + s = encodeParameterPosition(pos) + ) + } } } + +final private class SummarizedCallableFinal = SummarizedCallable::Range; + +/** A model for a function that can propagate data flow. */ +final class SummarizedCallable extends SummarizedCallableFinal, + Impl::Public::RelevantSummarizedCallable +{ } diff --git a/javascript/ql/lib/semmle/javascript/dataflow/internal/sharedlib/DataFlowArg.qll b/javascript/ql/lib/semmle/javascript/dataflow/internal/sharedlib/DataFlowArg.qll index c911461788dc..76992ed02cf8 100644 --- a/javascript/ql/lib/semmle/javascript/dataflow/internal/sharedlib/DataFlowArg.qll +++ b/javascript/ql/lib/semmle/javascript/dataflow/internal/sharedlib/DataFlowArg.qll @@ -28,6 +28,9 @@ module JSFlowSummary implements FlowSummaryImpl::InputSig private import semmle.javascript.dataflow.internal.FlowSummaryPrivate as FlowSummaryPrivate import FlowSummaryPrivate + overlay[local] + predicate callableFromSource(SummarizedCallableBase c) { none() } + // Explicitly implement signature members that have a default predicate callbackSelfParameterPosition = FlowSummaryPrivate::callbackSelfParameterPosition/0; diff --git a/javascript/ql/lib/semmle/javascript/dataflow/internal/sharedlib/SummaryTypeTracker.qll b/javascript/ql/lib/semmle/javascript/dataflow/internal/sharedlib/SummaryTypeTracker.qll index c9acd77db1a4..23c897827e20 100644 --- a/javascript/ql/lib/semmle/javascript/dataflow/internal/sharedlib/SummaryTypeTracker.qll +++ b/javascript/ql/lib/semmle/javascript/dataflow/internal/sharedlib/SummaryTypeTracker.qll @@ -69,7 +69,7 @@ private module SummaryFlowConfig implements Input { predicate propagatesFlow( SummaryComponentStack input, SummaryComponentStack output, boolean preservesValue ) { - super.propagatesFlow(input, output, preservesValue, _) + super.propagatesFlow(input, output, preservesValue, _, _, _) } string toString() { result = super.toString() } diff --git a/javascript/ql/lib/semmle/javascript/frameworks/AsyncPackage.qll b/javascript/ql/lib/semmle/javascript/frameworks/AsyncPackage.qll index c95b7a8dc6a1..0545f25a1848 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/AsyncPackage.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/AsyncPackage.qll @@ -173,7 +173,7 @@ module AsyncPackage { } overlay[local?] - private class IterationCallFlowSummary extends DataFlow::SummarizedCallable { + private class IterationCallFlowSummary extends DataFlow::SummarizedCallable::Range { private int callbackArgIndex; IterationCallFlowSummary() { @@ -221,7 +221,7 @@ module AsyncPackage { * For example: `data -> result` in `async.sortBy(data, orderingFn, (err, result) => {})`. */ overlay[local?] - private class IterationPreserveTaintStepFlowSummary extends DataFlow::SummarizedCallable { + private class IterationPreserveTaintStepFlowSummary extends DataFlow::SummarizedCallable::Range { IterationPreserveTaintStepFlowSummary() { this = "async.sortBy" } override DataFlow::InvokeNode getACallSimple() { diff --git a/javascript/ql/lib/semmle/javascript/frameworks/LodashUnderscore.qll b/javascript/ql/lib/semmle/javascript/frameworks/LodashUnderscore.qll index 74808368c718..4d0d3d771e14 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/LodashUnderscore.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/LodashUnderscore.qll @@ -186,7 +186,7 @@ module LodashUnderscore { } overlay[local?] - private class LodashEach extends DataFlow::SummarizedCallable { + private class LodashEach extends DataFlow::SummarizedCallable::Range { LodashEach() { this = "_.each-like" } overlay[global] @@ -202,7 +202,7 @@ module LodashUnderscore { } overlay[local?] - private class LodashMap extends DataFlow::SummarizedCallable { + private class LodashMap extends DataFlow::SummarizedCallable::Range { LodashMap() { this = "_.map" } overlay[global] @@ -221,7 +221,7 @@ module LodashUnderscore { } overlay[local?] - private class LodashFlatMap extends DataFlow::SummarizedCallable { + private class LodashFlatMap extends DataFlow::SummarizedCallable::Range { LodashFlatMap() { this = "_.flatMap" } overlay[global] @@ -243,7 +243,7 @@ module LodashUnderscore { } overlay[local?] - private class LodashFlatMapDeep extends DataFlow::SummarizedCallable { + private class LodashFlatMapDeep extends DataFlow::SummarizedCallable::Range { LodashFlatMapDeep() { this = "_.flatMapDeep" } overlay[global] @@ -267,7 +267,7 @@ module LodashUnderscore { } overlay[local?] - private class LodashReduce extends DataFlow::SummarizedCallable { + private class LodashReduce extends DataFlow::SummarizedCallable::Range { LodashReduce() { this = "_.reduce-like" } overlay[global] @@ -286,7 +286,7 @@ module LodashUnderscore { } overlay[local?] - private class LoashSortBy extends DataFlow::SummarizedCallable { + private class LoashSortBy extends DataFlow::SummarizedCallable::Range { LoashSortBy() { this = "_.sortBy-like" } overlay[global] @@ -304,7 +304,7 @@ module LodashUnderscore { } overlay[local?] - private class LodashMinMaxBy extends DataFlow::SummarizedCallable { + private class LodashMinMaxBy extends DataFlow::SummarizedCallable::Range { LodashMinMaxBy() { this = "_.minBy / _.maxBy" } overlay[global] @@ -318,7 +318,7 @@ module LodashUnderscore { } overlay[local?] - private class LodashPartition extends DataFlow::SummarizedCallable { + private class LodashPartition extends DataFlow::SummarizedCallable::Range { LodashPartition() { this = "_.partition" } overlay[global] @@ -332,7 +332,7 @@ module LodashUnderscore { } overlay[local?] - private class UnderscoreMapObject extends DataFlow::SummarizedCallable { + private class UnderscoreMapObject extends DataFlow::SummarizedCallable::Range { UnderscoreMapObject() { this = "_.mapObject" } overlay[global] @@ -353,7 +353,7 @@ module LodashUnderscore { } overlay[local?] - private class LodashTap extends DataFlow::SummarizedCallable { + private class LodashTap extends DataFlow::SummarizedCallable::Range { LodashTap() { this = "_.tap" } overlay[global] @@ -367,7 +367,7 @@ module LodashUnderscore { } overlay[local?] - private class LodashGroupBy extends DataFlow::SummarizedCallable { + private class LodashGroupBy extends DataFlow::SummarizedCallable::Range { LodashGroupBy() { this = "_.groupBy" } override DataFlow::CallNode getACall() { result = member("groupBy").getACall() } diff --git a/javascript/ql/lib/semmle/javascript/frameworks/UriLibraries.qll b/javascript/ql/lib/semmle/javascript/frameworks/UriLibraries.qll index 03887819b252..ec85c376b67c 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/UriLibraries.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/UriLibraries.qll @@ -423,7 +423,7 @@ private module ClosureLibraryUri { } overlay[local?] -private class QueryStringStringification extends DataFlow::SummarizedCallable { +private class QueryStringStringification extends DataFlow::SummarizedCallable::Range { QueryStringStringification() { this = "query-string stringification" } overlay[global] diff --git a/javascript/ql/lib/semmle/javascript/frameworks/data/ModelsAsData.qll b/javascript/ql/lib/semmle/javascript/frameworks/data/ModelsAsData.qll index 5d65f901d22d..df48a1840898 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/data/ModelsAsData.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/data/ModelsAsData.qll @@ -49,7 +49,7 @@ private class ThreatModelSourceFromDataExtension extends ThreatModelSource::Rang } overlay[local?] -private class SummarizedCallableFromModel extends DataFlow::SummarizedCallable { +private class SummarizedCallableFromModel extends DataFlow::SummarizedCallable::Range { string type; string path; @@ -62,9 +62,14 @@ private class SummarizedCallableFromModel extends DataFlow::SummarizedCallable { override DataFlow::InvokeNode getACall() { ModelOutput::resolvedSummaryBase(type, path, result) } override predicate propagatesFlow( - string input, string output, boolean preservesValue, string model + string input, string output, boolean preservesValue, DataFlow::Provenance provenance, + boolean isExact, string model ) { - exists(string kind | ModelOutput::relevantSummaryModel(type, path, input, output, kind, model) | + exists(string kind | + ModelOutput::relevantSummaryModel(type, path, input, output, kind, model) and + provenance = "manual" and + isExact = true + | kind = "value" and preservesValue = true or diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/AmbiguousCoreMethods.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/AmbiguousCoreMethods.qll index 4e1c9ee6884e..f4783b2131b4 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/AmbiguousCoreMethods.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/AmbiguousCoreMethods.qll @@ -29,7 +29,7 @@ private import semmle.javascript.dataflow.FlowSummary private import Arrays private import FlowSummaryUtil -class At extends SummarizedCallable { +class At extends SummarizedCallable::Range { At() { this = "Array#at / String#at" } override InstanceCall getACallSimple() { result.getMethodName() = "at" } @@ -43,7 +43,7 @@ class At extends SummarizedCallable { } } -class Concat extends SummarizedCallable { +class Concat extends SummarizedCallable::Range { Concat() { this = "Array#concat / String#concat / Buffer.concat" } override InstanceCall getACallSimple() { result.getMethodName() = "concat" } @@ -62,7 +62,7 @@ class Concat extends SummarizedCallable { } } -class Slice extends SummarizedCallable { +class Slice extends SummarizedCallable::Range { Slice() { this = "Array#slice / String#slice" } override InstanceCall getACallSimple() { result.getMethodName() = "slice" } @@ -78,7 +78,7 @@ class Slice extends SummarizedCallable { } } -class Entries extends SummarizedCallable { +class Entries extends SummarizedCallable::Range { Entries() { this = "Array#entries / Map#entries / Set#entries" } override InstanceCall getACall() { @@ -98,7 +98,7 @@ class Entries extends SummarizedCallable { } } -class ForEach extends SummarizedCallable { +class ForEach extends SummarizedCallable::Range { ForEach() { this = "Array#forEach / Map#forEach / Set#forEach" } override InstanceCall getACallSimple() { result.getMethodName() = "forEach" } @@ -126,7 +126,7 @@ class ForEach extends SummarizedCallable { } } -class Keys extends SummarizedCallable { +class Keys extends SummarizedCallable::Range { Keys() { this = "Array#keys / Map#keys / Set#keys" } override InstanceCall getACallSimple() { @@ -141,7 +141,7 @@ class Keys extends SummarizedCallable { } } -class Values extends SummarizedCallable { +class Values extends SummarizedCallable::Range { Values() { this = "Array#values / Map#values / Set#values" } override InstanceCall getACallSimple() { @@ -156,7 +156,7 @@ class Values extends SummarizedCallable { } } -class ToString extends SummarizedCallable { +class ToString extends SummarizedCallable::Range { ToString() { this = "Object#toString / Array#toString" } override InstanceCall getACallSimple() { diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Arrays.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Arrays.qll index 1196ffdbac9c..984a9537003e 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Arrays.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Arrays.qll @@ -94,7 +94,7 @@ class DynamicArrayStoreStep extends DataFlow::AdditionalFlowStep { } } -class ArrayConstructorSummary extends SummarizedCallable { +class ArrayConstructorSummary extends SummarizedCallable::Range { ArrayConstructorSummary() { this = "Array constructor" } override DataFlow::InvokeNode getACallSimple() { @@ -118,7 +118,7 @@ class ArrayConstructorSummary extends SummarizedCallable { * * Calls without separators are modeled in `StringConcatenation.qll`. */ -class Join extends SummarizedCallable { +class Join extends SummarizedCallable::Range { Join() { this = "Array#join" } override InstanceCall getACallSimple() { @@ -133,7 +133,7 @@ class Join extends SummarizedCallable { } } -class CopyWithin extends SummarizedCallable { +class CopyWithin extends SummarizedCallable::Range { CopyWithin() { this = "Array#copyWithin" } override InstanceCall getACallSimple() { result.getMethodName() = "copyWithin" } @@ -150,7 +150,7 @@ class CopyWithin extends SummarizedCallable { } } -class FlowIntoCallback extends SummarizedCallable { +class FlowIntoCallback extends SummarizedCallable::Range { FlowIntoCallback() { this = "Array method with flow into callback" } override InstanceCall getACallSimple() { @@ -169,7 +169,7 @@ class FlowIntoCallback extends SummarizedCallable { } } -class Filter extends SummarizedCallable { +class Filter extends SummarizedCallable::Range { Filter() { this = "Array#filter" } override InstanceCall getACallSimple() { result.getMethodName() = "filter" } @@ -196,7 +196,7 @@ class Filter extends SummarizedCallable { } } -class Fill extends SummarizedCallable { +class Fill extends SummarizedCallable::Range { Fill() { this = "Array#fill" } // TODO: clear contents if no interval is given override InstanceCall getACallSimple() { result.getMethodName() = "fill" } @@ -208,7 +208,7 @@ class Fill extends SummarizedCallable { } } -class FindLike extends SummarizedCallable { +class FindLike extends SummarizedCallable::Range { FindLike() { this = "Array#find / Array#findLast" } override InstanceCall getACallSimple() { result.getMethodName() = ["find", "findLast"] } @@ -225,7 +225,7 @@ class FindLike extends SummarizedCallable { } } -class FindLibrary extends SummarizedCallable { +class FindLibrary extends SummarizedCallable::Range { FindLibrary() { this = "'array.prototype.find' / 'array-find'" } override DataFlow::CallNode getACallSimple() { @@ -244,7 +244,7 @@ class FindLibrary extends SummarizedCallable { } } -class Flat extends SummarizedCallable { +class Flat extends SummarizedCallable::Range { private int depth; Flat() { this = "Array#flat(" + depth + ")" and depth in [1 .. 3] } @@ -275,7 +275,7 @@ class Flat extends SummarizedCallable { } } -class FlatMap extends SummarizedCallable { +class FlatMap extends SummarizedCallable::Range { FlatMap() { this = "Array#flatMap" } override InstanceCall getACallSimple() { result.getMethodName() = "flatMap" } @@ -305,7 +305,7 @@ private DataFlow::CallNode arrayFromCall() { result = DataFlow::moduleImport("array-from").getACall() } -class From1Arg extends SummarizedCallable { +class From1Arg extends SummarizedCallable::Range { From1Arg() { this = "Array.from(arg)" } override DataFlow::CallNode getACallSimple() { @@ -338,7 +338,7 @@ class From1Arg extends SummarizedCallable { } } -class FromManyArg extends SummarizedCallable { +class FromManyArg extends SummarizedCallable::Range { FromManyArg() { this = "Array.from(arg, callback, [thisArg])" } override DataFlow::CallNode getACallSimple() { @@ -370,7 +370,7 @@ class FromManyArg extends SummarizedCallable { } } -class Map extends SummarizedCallable { +class Map extends SummarizedCallable::Range { Map() { this = "Array#map" } override InstanceCall getACallSimple() { @@ -398,7 +398,7 @@ class Map extends SummarizedCallable { } } -class Of extends SummarizedCallable { +class Of extends SummarizedCallable::Range { Of() { this = "Array.of" } override DataFlow::CallNode getACallSimple() { @@ -412,7 +412,7 @@ class Of extends SummarizedCallable { } } -class Pop extends SummarizedCallable { +class Pop extends SummarizedCallable::Range { Pop() { this = "Array#pop" } override InstanceCall getACallSimple() { result.getMethodName() = "pop" } @@ -424,7 +424,7 @@ class Pop extends SummarizedCallable { } } -class PushLike extends SummarizedCallable { +class PushLike extends SummarizedCallable::Range { PushLike() { this = "Array#push / Array#unshift" } override InstanceCall getACallSimple() { result.getMethodName() = ["push", "unshift"] } @@ -436,7 +436,7 @@ class PushLike extends SummarizedCallable { } } -class ReduceLike extends SummarizedCallable { +class ReduceLike extends SummarizedCallable::Range { ReduceLike() { this = "Array#reduce / Array#reduceRight" } override InstanceCall getACallSimple() { result.getMethodName() = ["reduce", "reduceRight"] } @@ -465,7 +465,7 @@ class ReduceLike extends SummarizedCallable { } } -class Reverse extends SummarizedCallable { +class Reverse extends SummarizedCallable::Range { Reverse() { this = "Array#reverse / Array#toReversed" } override InstanceCall getACallSimple() { result.getMethodName() = ["reverse", "toReversed"] } @@ -477,7 +477,7 @@ class Reverse extends SummarizedCallable { } } -class Shift extends SummarizedCallable { +class Shift extends SummarizedCallable::Range { Shift() { this = "Array#shift" } override InstanceCall getACallSimple() { result.getMethodName() = "shift" } @@ -495,7 +495,7 @@ class Shift extends SummarizedCallable { } } -class Sort extends SummarizedCallable { +class Sort extends SummarizedCallable::Range { Sort() { this = "Array#sort / Array#toSorted" } override InstanceCall getACallSimple() { result.getMethodName() = ["sort", "toSorted"] } @@ -512,7 +512,7 @@ class Sort extends SummarizedCallable { } } -class Splice extends SummarizedCallable { +class Splice extends SummarizedCallable::Range { Splice() { this = "Array#splice" } override InstanceCall getACallSimple() { result.getMethodName() = "splice" } @@ -529,7 +529,7 @@ class Splice extends SummarizedCallable { } } -class ToSpliced extends SummarizedCallable { +class ToSpliced extends SummarizedCallable::Range { ToSpliced() { this = "Array#toSpliced" } override InstanceCall getACallSimple() { result.getMethodName() = "toSpliced" } @@ -546,7 +546,7 @@ class ToSpliced extends SummarizedCallable { } } -class With extends SummarizedCallable { +class With extends SummarizedCallable::Range { With() { this = "Array#with" } override InstanceCall getACallSimple() { result.getMethodName() = "with" } diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Decoders.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Decoders.qll index 80e43fdfcd8c..6fc26be9a04f 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Decoders.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Decoders.qll @@ -16,7 +16,7 @@ private class TextDecoderEntryPoint extends API::EntryPoint { pragma[nomagic] API::Node textDecoderConstructorRef() { result = any(TextDecoderEntryPoint e).getANode() } -class Decode extends SummarizedCallable { +class Decode extends SummarizedCallable::Range { Decode() { this = "TextDecoder#decode" } override InstanceCall getACall() { diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/ExceptionFlow.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/ExceptionFlow.qll index 3dff015d9f37..7dff4e718052 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/ExceptionFlow.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/ExceptionFlow.qll @@ -29,7 +29,7 @@ private predicate isCallback(DataFlow::SourceNode node) { * See also `FlowSummaryDefaultExceptionalReturn`, which handles calls that have a summary target, * but where the summary does not mention `ReturnValue[exception]`. */ -private class ExceptionFlowSummary extends SummarizedCallable, LibraryCallableInternal { +private class ExceptionFlowSummary extends SummarizedCallable::Range, LibraryCallableInternal { ExceptionFlowSummary() { this = "Exception propagator" } override DataFlow::CallNode getACallStage2() { diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/FlowSummaryUtil.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/FlowSummaryUtil.qll index 290567efbd9d..5d96c57dd1d6 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/FlowSummaryUtil.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/FlowSummaryUtil.qll @@ -20,7 +20,7 @@ class InstanceCall extends DataFlow::CallNode { /** * A summary a function that is the default export from an NPM package. */ -abstract class FunctionalPackageSummary extends SummarizedCallable { +abstract class FunctionalPackageSummary extends SummarizedCallable::Range { bindingset[this] FunctionalPackageSummary() { any() } diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Iterators.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Iterators.qll index 7f9c13c63dfd..22529cdde536 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Iterators.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Iterators.qll @@ -10,7 +10,7 @@ private import semmle.javascript.dataflow.FlowSummary private import semmle.javascript.dataflow.internal.AdditionalFlowInternal private import FlowSummaryUtil -class IteratorNext extends SummarizedCallable { +class IteratorNext extends SummarizedCallable::Range { IteratorNext() { this = "Iterator#next" } override DataFlow::MethodCallNode getACallSimple() { diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/JsonStringify.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/JsonStringify.qll index 4b8ecdeb4f28..4662aecd7350 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/JsonStringify.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/JsonStringify.qll @@ -9,7 +9,7 @@ private import FlowSummaryUtil private import semmle.javascript.dataflow.internal.AdditionalFlowInternal private import semmle.javascript.dataflow.FlowSummary -private class JsonStringifySummary extends SummarizedCallable { +private class JsonStringifySummary extends SummarizedCallable::Range { JsonStringifySummary() { this = "JSON.stringify" } override DataFlow::InvokeNode getACall() { result instanceof JsonStringifyCall } diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Maps.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Maps.qll index 645e36941dc3..decc462cb742 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Maps.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Maps.qll @@ -10,7 +10,7 @@ private import FlowSummaryUtil private DataFlow::SourceNode mapConstructorRef() { result = DataFlow::globalVarRef("Map") } -class MapConstructor extends SummarizedCallable { +class MapConstructor extends SummarizedCallable::Range { MapConstructor() { this = "Map constructor" } override DataFlow::InvokeNode getACallSimple() { @@ -80,7 +80,7 @@ class MapSetStep extends DataFlow::AdditionalFlowStep { } } -class MapGet extends SummarizedCallable { +class MapGet extends SummarizedCallable::Range { MapGet() { this = "Map#get" } override DataFlow::MethodCallNode getACallSimple() { @@ -96,7 +96,7 @@ class MapGet extends SummarizedCallable { } } -class MapSet extends SummarizedCallable { +class MapSet extends SummarizedCallable::Range { MapSet() { this = "Map#set" } override DataFlow::MethodCallNode getACallSimple() { @@ -121,7 +121,7 @@ class MapSet extends SummarizedCallable { } } -class MapGroupBy extends SummarizedCallable { +class MapGroupBy extends SummarizedCallable::Range { MapGroupBy() { this = "Map#groupBy" } override DataFlow::CallNode getACallSimple() { diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Promises.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Promises.qll index 10292958df2f..d9421c9d562c 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Promises.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Promises.qll @@ -23,7 +23,7 @@ DataFlow::SourceNode promiseConstructorRef() { // Note that the 'Awaited' token has a special interpretation. // See a write-up here: https://github.com/github/codeql-javascript-team/issues/423 // -private class PromiseConstructor extends SummarizedCallable { +private class PromiseConstructor extends SummarizedCallable::Range { PromiseConstructor() { this = "new Promise()" } override DataFlow::InvokeNode getACallSimple() { @@ -53,7 +53,7 @@ private class PromiseConstructor extends SummarizedCallable { * for callbacks. */ module PromiseConstructorWorkaround { - class ResolveSummary extends SummarizedCallable { + class ResolveSummary extends SummarizedCallable::Range { ResolveSummary() { this = "new Promise() resolve callback" } override DataFlow::InvokeNode getACallSimple() { @@ -68,7 +68,7 @@ module PromiseConstructorWorkaround { } } - class RejectCallback extends SummarizedCallable { + class RejectCallback extends SummarizedCallable::Range { RejectCallback() { this = "new Promise() reject callback" } override DataFlow::InvokeNode getACallSimple() { @@ -83,7 +83,7 @@ module PromiseConstructorWorkaround { } } - class ConstructorSummary extends SummarizedCallable { + class ConstructorSummary extends SummarizedCallable::Range { ConstructorSummary() { this = "new Promise() workaround" } override DataFlow::InvokeNode getACallSimple() { @@ -106,7 +106,7 @@ module PromiseConstructorWorkaround { } } -private class PromiseThen2Arguments extends SummarizedCallable { +private class PromiseThen2Arguments extends SummarizedCallable::Range { PromiseThen2Arguments() { this = "Promise#then() with 2 arguments" } override InstanceCall getACallSimple() { @@ -128,7 +128,7 @@ private class PromiseThen2Arguments extends SummarizedCallable { } } -private class PromiseThen1Argument extends SummarizedCallable { +private class PromiseThen1Argument extends SummarizedCallable::Range { PromiseThen1Argument() { this = "Promise#then() with 1 argument" } override InstanceCall getACallSimple() { @@ -150,7 +150,7 @@ private class PromiseThen1Argument extends SummarizedCallable { } } -private class PromiseCatch extends SummarizedCallable { +private class PromiseCatch extends SummarizedCallable::Range { PromiseCatch() { this = "Promise#catch()" } override InstanceCall getACallSimple() { result.getMethodName() = "catch" } @@ -169,7 +169,7 @@ private class PromiseCatch extends SummarizedCallable { } } -private class PromiseFinally extends SummarizedCallable { +private class PromiseFinally extends SummarizedCallable::Range { PromiseFinally() { this = "Promise#finally()" } override InstanceCall getACallSimple() { result.getMethodName() = "finally" } @@ -186,7 +186,7 @@ private class PromiseFinally extends SummarizedCallable { } } -private class PromiseResolve extends SummarizedCallable { +private class PromiseResolve extends SummarizedCallable::Range { PromiseResolve() { this = "Promise.resolve()" } override InstanceCall getACallSimple() { @@ -200,7 +200,7 @@ private class PromiseResolve extends SummarizedCallable { } } -private class PromiseReject extends SummarizedCallable { +private class PromiseReject extends SummarizedCallable::Range { PromiseReject() { this = "Promise.reject()" } override InstanceCall getACallSimple() { @@ -261,7 +261,7 @@ private class PromiseAllStep extends SharedTypeTrackingStep { } } -private class PromiseAll extends SummarizedCallable { +private class PromiseAll extends SummarizedCallable::Range { PromiseAll() { this = "Promise.all()" } override DataFlow::InvokeNode getACallSimple() { result instanceof PromiseAllCall } @@ -283,7 +283,7 @@ private class PromiseAll extends SummarizedCallable { } } -private class PromiseAnyLike extends SummarizedCallable { +private class PromiseAnyLike extends SummarizedCallable::Range { PromiseAnyLike() { this = "Promise.any() or Promise.race()" } override DataFlow::InvokeNode getACallSimple() { @@ -297,7 +297,7 @@ private class PromiseAnyLike extends SummarizedCallable { } } -private class PromiseAllSettled extends SummarizedCallable { +private class PromiseAllSettled extends SummarizedCallable::Range { PromiseAllSettled() { this = "Promise.allSettled()" } override DataFlow::InvokeNode getACallSimple() { @@ -318,7 +318,7 @@ private class PromiseAllSettled extends SummarizedCallable { } } -private class BluebirdMapSeries extends SummarizedCallable { +private class BluebirdMapSeries extends SummarizedCallable::Range { BluebirdMapSeries() { this = "bluebird.mapSeries" } override DataFlow::InvokeNode getACallSimple() { @@ -351,7 +351,7 @@ private class BluebirdMapSeries extends SummarizedCallable { * - `goog.Closure.withResolver()` (non-plural spelling) * - `bluebird.Promise.defer()` */ -private class PromiseWithResolversLike extends SummarizedCallable { +private class PromiseWithResolversLike extends SummarizedCallable::Range { PromiseWithResolversLike() { this = "Promise.withResolvers()" } override DataFlow::InvokeNode getACallSimple() { @@ -371,7 +371,7 @@ private class PromiseWithResolversLike extends SummarizedCallable { } } -class PromiseTry extends DataFlow::SummarizedCallable { +class PromiseTry extends DataFlow::SummarizedCallable::Range { PromiseTry() { this = "Promise.try()" } override DataFlow::CallNode getACallSimple() { diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Sets.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Sets.qll index e4d0951764f1..765ad8815599 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Sets.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Sets.qll @@ -10,7 +10,7 @@ private import FlowSummaryUtil private DataFlow::SourceNode setConstructorRef() { result = DataFlow::globalVarRef("Set") } -class SetConstructor extends SummarizedCallable { +class SetConstructor extends SummarizedCallable::Range { SetConstructor() { this = "Set constructor" } override DataFlow::InvokeNode getACallSimple() { @@ -32,7 +32,7 @@ class SetConstructor extends SummarizedCallable { } } -class SetAdd extends SummarizedCallable { +class SetAdd extends SummarizedCallable::Range { SetAdd() { this = "Set#add" } override DataFlow::MethodCallNode getACallSimple() { diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Strings.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Strings.qll index b5ecc8ef603c..4714cb236ecc 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Strings.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/Strings.qll @@ -10,7 +10,7 @@ private import semmle.javascript.dataflow.FlowSummary /** * Summary for calls to `.replace` or `.replaceAll` (without a regexp pattern containing a wildcard). */ -private class StringReplaceNoWildcard extends SummarizedCallable { +private class StringReplaceNoWildcard extends SummarizedCallable::Range { StringReplaceNoWildcard() { this = "String#replace / String#replaceAll (without wildcard pattern)" } @@ -34,7 +34,7 @@ private class StringReplaceNoWildcard extends SummarizedCallable { * * In this case, the receiver is considered to flow into the callback. */ -private class StringReplaceWithWildcard extends SummarizedCallable { +private class StringReplaceWithWildcard extends SummarizedCallable::Range { StringReplaceWithWildcard() { this = "String#replace / String#replaceAll (with wildcard pattern)" } @@ -53,7 +53,7 @@ private class StringReplaceWithWildcard extends SummarizedCallable { } } -class StringSplit extends SummarizedCallable { +class StringSplit extends SummarizedCallable::Range { StringSplit() { this = "String#split" } override DataFlow::MethodCallNode getACallSimple() { @@ -78,7 +78,7 @@ class StringSplit extends SummarizedCallable { * This summary defaults to the same behavior as the general `.split()` case, but it contains optional steps * and barriers named `tainted-url-suffix` that should be activated when tracking a tainted URL suffix. */ -class StringSplitHashOrQuestionMark extends SummarizedCallable { +class StringSplitHashOrQuestionMark extends SummarizedCallable::Range { StringSplitHashOrQuestionMark() { this = "String#split with '#' or '?'" } override DataFlow::MethodCallNode getACallSimple() { @@ -102,7 +102,7 @@ class StringSplitHashOrQuestionMark extends SummarizedCallable { } } -class StringFromCharCode extends SummarizedCallable { +class StringFromCharCode extends SummarizedCallable::Range { StringFromCharCode() { this = "String#fromCharCode" } override DataFlow::CallNode getACall() { diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/TypedArrays.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/TypedArrays.qll index 0ac2307c81a5..71290dfa2841 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/TypedArrays.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/TypedArrays.qll @@ -16,7 +16,7 @@ private class TypedArrayEntryPoint extends API::EntryPoint { pragma[nomagic] API::Node typedArrayConstructorRef() { result = any(TypedArrayEntryPoint e).getANode() } -class TypedArrayConstructorSummary extends SummarizedCallable { +class TypedArrayConstructorSummary extends SummarizedCallable::Range { TypedArrayConstructorSummary() { this = "TypedArray constructor" } override DataFlow::InvokeNode getACall() { @@ -40,7 +40,7 @@ class BufferTypedArray extends DataFlow::AdditionalFlowStep { } } -class TypedArraySet extends SummarizedCallable { +class TypedArraySet extends SummarizedCallable::Range { TypedArraySet() { this = "TypedArray#set" } override InstanceCall getACall() { @@ -54,7 +54,7 @@ class TypedArraySet extends SummarizedCallable { } } -class TypedArraySubarray extends SummarizedCallable { +class TypedArraySubarray extends SummarizedCallable::Range { TypedArraySubarray() { this = "TypedArray#subarray" } override InstanceCall getACall() { result.getMethodName() = "subarray" } @@ -77,7 +77,7 @@ private class ArrayBufferEntryPoint extends API::EntryPoint { pragma[nomagic] API::Node arrayBufferConstructorRef() { result = any(ArrayBufferEntryPoint a).getANode() } -class TransferLike extends SummarizedCallable { +class TransferLike extends SummarizedCallable::Range { TransferLike() { this = "ArrayBuffer#transfer" } override InstanceCall getACall() { diff --git a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/UrlSearchParams.qll b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/UrlSearchParams.qll index 3d8d88d8ae47..3386d86bc83e 100644 --- a/javascript/ql/lib/semmle/javascript/internal/flow_summaries/UrlSearchParams.qll +++ b/javascript/ql/lib/semmle/javascript/internal/flow_summaries/UrlSearchParams.qll @@ -14,7 +14,7 @@ DataFlow::SourceNode urlSearchParamsConstructorRef() { result = DataFlow::globalVarRef("URLSearchParams") } -class URLSearchParams extends DataFlow::SummarizedCallable { +class URLSearchParams extends DataFlow::SummarizedCallable::Range { URLSearchParams() { this = "URLSearchParams" } override DataFlow::InvokeNode getACallSimple() { @@ -30,7 +30,7 @@ class URLSearchParams extends DataFlow::SummarizedCallable { } } -class GetAll extends DataFlow::SummarizedCallable { +class GetAll extends DataFlow::SummarizedCallable::Range { GetAll() { this = "getAll" } override DataFlow::MethodCallNode getACallSimple() { @@ -44,7 +44,7 @@ class GetAll extends DataFlow::SummarizedCallable { } } -class URLConstructor extends DataFlow::SummarizedCallable { +class URLConstructor extends DataFlow::SummarizedCallable::Range { URLConstructor() { this = "URL" } override DataFlow::InvokeNode getACallSimple() { diff --git a/javascript/ql/lib/utils/test/InlineSummaries.qll b/javascript/ql/lib/utils/test/InlineSummaries.qll index 1633e056b7f1..5d1130496730 100644 --- a/javascript/ql/lib/utils/test/InlineSummaries.qll +++ b/javascript/ql/lib/utils/test/InlineSummaries.qll @@ -2,7 +2,7 @@ import javascript import semmle.javascript.dataflow.FlowSummary overlay[local?] -class MkSummary extends SummarizedCallable { +class MkSummary extends SummarizedCallable::Range { private CallExpr mkSummary; MkSummary() { From 0f6bae0ae15cc53b56d3eb5221330eb418f819e8 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Fri, 16 Jan 2026 09:46:47 +0100 Subject: [PATCH 161/433] Add change notes --- cpp/ql/lib/change-notes/2026-01-16-summarized-callable.md | 4 ++++ csharp/ql/lib/change-notes/2026-01-16-summarized-callable.md | 4 ++++ go/ql/lib/change-notes/2026-01-16-summarized-callable.md | 4 ++++ java/ql/lib/change-notes/2026-01-16-summarized-callable.md | 4 ++++ .../ql/lib/change-notes/2026-01-16-summarized-callable.md | 4 ++++ python/ql/lib/change-notes/2026-01-16-summarized-callable.md | 4 ++++ ruby/ql/lib/change-notes/2026-01-16-summarized-callable.md | 4 ++++ rust/ql/lib/change-notes/2026-01-16-summarized-callable.md | 4 ++++ swift/ql/lib/change-notes/2026-01-16-summarized-callable.md | 4 ++++ 9 files changed, 36 insertions(+) create mode 100644 cpp/ql/lib/change-notes/2026-01-16-summarized-callable.md create mode 100644 csharp/ql/lib/change-notes/2026-01-16-summarized-callable.md create mode 100644 go/ql/lib/change-notes/2026-01-16-summarized-callable.md create mode 100644 java/ql/lib/change-notes/2026-01-16-summarized-callable.md create mode 100644 javascript/ql/lib/change-notes/2026-01-16-summarized-callable.md create mode 100644 python/ql/lib/change-notes/2026-01-16-summarized-callable.md create mode 100644 ruby/ql/lib/change-notes/2026-01-16-summarized-callable.md create mode 100644 rust/ql/lib/change-notes/2026-01-16-summarized-callable.md create mode 100644 swift/ql/lib/change-notes/2026-01-16-summarized-callable.md diff --git a/cpp/ql/lib/change-notes/2026-01-16-summarized-callable.md b/cpp/ql/lib/change-notes/2026-01-16-summarized-callable.md new file mode 100644 index 000000000000..b6e5101617ed --- /dev/null +++ b/cpp/ql/lib/change-notes/2026-01-16-summarized-callable.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/csharp/ql/lib/change-notes/2026-01-16-summarized-callable.md b/csharp/ql/lib/change-notes/2026-01-16-summarized-callable.md new file mode 100644 index 000000000000..02c453207d4d --- /dev/null +++ b/csharp/ql/lib/change-notes/2026-01-16-summarized-callable.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. \ No newline at end of file diff --git a/go/ql/lib/change-notes/2026-01-16-summarized-callable.md b/go/ql/lib/change-notes/2026-01-16-summarized-callable.md new file mode 100644 index 000000000000..b6e5101617ed --- /dev/null +++ b/go/ql/lib/change-notes/2026-01-16-summarized-callable.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/java/ql/lib/change-notes/2026-01-16-summarized-callable.md b/java/ql/lib/change-notes/2026-01-16-summarized-callable.md new file mode 100644 index 000000000000..b6e5101617ed --- /dev/null +++ b/java/ql/lib/change-notes/2026-01-16-summarized-callable.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/javascript/ql/lib/change-notes/2026-01-16-summarized-callable.md b/javascript/ql/lib/change-notes/2026-01-16-summarized-callable.md new file mode 100644 index 000000000000..b6e5101617ed --- /dev/null +++ b/javascript/ql/lib/change-notes/2026-01-16-summarized-callable.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/python/ql/lib/change-notes/2026-01-16-summarized-callable.md b/python/ql/lib/change-notes/2026-01-16-summarized-callable.md new file mode 100644 index 000000000000..b6e5101617ed --- /dev/null +++ b/python/ql/lib/change-notes/2026-01-16-summarized-callable.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/ruby/ql/lib/change-notes/2026-01-16-summarized-callable.md b/ruby/ql/lib/change-notes/2026-01-16-summarized-callable.md new file mode 100644 index 000000000000..b6e5101617ed --- /dev/null +++ b/ruby/ql/lib/change-notes/2026-01-16-summarized-callable.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/rust/ql/lib/change-notes/2026-01-16-summarized-callable.md b/rust/ql/lib/change-notes/2026-01-16-summarized-callable.md new file mode 100644 index 000000000000..b6e5101617ed --- /dev/null +++ b/rust/ql/lib/change-notes/2026-01-16-summarized-callable.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/swift/ql/lib/change-notes/2026-01-16-summarized-callable.md b/swift/ql/lib/change-notes/2026-01-16-summarized-callable.md new file mode 100644 index 000000000000..b6e5101617ed --- /dev/null +++ b/swift/ql/lib/change-notes/2026-01-16-summarized-callable.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. From 732c60c07c7192b2ec95d9589986a4831ed1bccf Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Wed, 21 Jan 2026 12:32:48 +0100 Subject: [PATCH 162/433] C#: Revert change to `getASummarizedCallableTarget` --- .../csharp/dataflow/internal/DataFlowDispatch.qll | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowDispatch.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowDispatch.qll index c2c432fb68e5..be183815c715 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowDispatch.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowDispatch.qll @@ -371,9 +371,21 @@ class NonDelegateDataFlowCall extends DataFlowCall, TNonDelegateCall { /** Gets the underlying call. */ DispatchCall getDispatchCall() { result = dc } + pragma[nomagic] + private predicate hasSourceTarget() { dc.getAStaticTarget().fromSource() } + pragma[nomagic] private FlowSummary::SummarizedCallable getASummarizedCallableTarget() { - result = this.getATarget(_) + // Only use summarized callables with generated summaries in case + // we are not able to dispatch to a source declaration. + exists(boolean static | + result = this.getATarget(static) and + if this.hasSourceTarget() then result.hasManualModel() else any() + | + static = false + or + static = true and not result instanceof RuntimeCallable + ) } pragma[nomagic] From df09f02981c10a4e61518099b11b77eaada21996 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Wed, 21 Jan 2026 13:30:32 +0100 Subject: [PATCH 163/433] Shared: Shadow `hasManualModel` in `RelevantSummarizedCallable` --- .../dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll b/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll index f7a47bdc74b7..d76672571921 100644 --- a/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll +++ b/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll @@ -332,6 +332,14 @@ module Make< */ final class RelevantSummarizedCallable extends SummarizedCallableFinal { RelevantSummarizedCallable() { this instanceof SummarizedCallableImpl } + + /** + * Holds if there exists a manual summary that applies to this callable. + */ + final predicate hasManualModel() { + any(Provenance p | this.(SummarizedCallableImpl).propagatesFlow(_, _, _, p, _, _)) + .isManual() + } } /** A source element. */ From 73850f1b56f122fd894647360a04a91398187d7a Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Mon, 26 Jan 2026 13:27:34 +0100 Subject: [PATCH 164/433] Kotlin: Add changenote --- .../lib/change-notes/2026-01-26-kotlin-extractor-load-last.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 java/ql/lib/change-notes/2026-01-26-kotlin-extractor-load-last.md diff --git a/java/ql/lib/change-notes/2026-01-26-kotlin-extractor-load-last.md b/java/ql/lib/change-notes/2026-01-26-kotlin-extractor-load-last.md new file mode 100644 index 000000000000..e6b496073b9c --- /dev/null +++ b/java/ql/lib/change-notes/2026-01-26-kotlin-extractor-load-last.md @@ -0,0 +1,4 @@ +--- +category: fix +--- +* Kotlin: The Kotlin extractor now registers as the last IR generation extension, ensuring that code generated by other compiler plugins (such as kotlinx.serialization) is correctly captured. From 330505c524997ada28e49459c37eeec9dd8f9ee2 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 19 Jan 2026 14:35:50 +0100 Subject: [PATCH 165/433] Rust: Add tests for associated types --- .../library-tests/path-resolution/main.rs | 65 + .../path-resolution/path-resolution.expected | 291 ++-- .../PathResolutionConsistency.expected | 5 + .../TypeInferenceConsistency.expected | 3 + .../type-inference/associated_types.rs | 114 +- .../type-inference/type-inference.expected | 1243 +++++++++-------- 6 files changed, 1032 insertions(+), 689 deletions(-) create mode 100644 rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected diff --git a/rust/ql/test/library-tests/path-resolution/main.rs b/rust/ql/test/library-tests/path-resolution/main.rs index f428f851c31d..3397d3a7000d 100644 --- a/rust/ql/test/library-tests/path-resolution/main.rs +++ b/rust/ql/test/library-tests/path-resolution/main.rs @@ -877,6 +877,71 @@ mod associated_types { } } +mod associated_types_subtrait { + trait Super { + type Out; // SuperAssoc + } // Super + + trait Sub: Super // $ item=Super + { + fn f() -> Self::Out // $ item=SuperAssoc + ; // Sub_f + } // Sub + + struct S( + ST, // $ item=ST + ); + + #[rustfmt::skip] + impl Super for S { // $ item=Super item=S item=i32 + type Out = char // $ item=char + ; // S::Out + } + + #[rustfmt::skip] + impl Super for S { // $ item=Super item=S item=bool + type Out = i64 // $ item=i64 + ; // S::Out + } + + #[rustfmt::skip] + impl Sub for S { // $ item=Sub item=S item=i32 + fn f() -> Self::Out { // $ MISSING: item=SuperAssoc SPURIOUS: item=S::Out item=S::Out item=S::Out + 'a' + } + } + + #[rustfmt::skip] + impl Sub for S { // $ item=Sub item=S item=bool + fn f() -> Self::Out { // $ MISSING: item=SuperAssoc SPURIOUS: item=S::Out item=S::Out item=S::Out + 1 + } + } + + trait SuperAlt { + type Out; // SuperAltAssoc + } // SuperAlt + + trait SubAlt: SuperAlt // $ item=SuperAlt + { + fn f(self) -> Self::Out // $ item=SuperAltAssoc + ; // SubAlt_f + } // SubAlt + + #[rustfmt::skip] + impl SuperAlt for S { // $ item=SuperAlt item=S item=A + type Out = A // $ item=A + ; // S::Out + } + + #[rustfmt::skip] + impl SubAlt for S { // $ item=SubAlt item=S item=A + fn f(self) -> Self::Out { // $ MISSING: item=SuperAltAssoc SPURIOUS: item=S::Out item=S::Out item=S::Out + self.0 + } + } +} + use std::{self as ztd}; // $ item=std fn use_ztd(x: ztd::string::String) {} // $ item=String diff --git a/rust/ql/test/library-tests/path-resolution/path-resolution.expected b/rust/ql/test/library-tests/path-resolution/path-resolution.expected index ad581e8bf93e..00d38d6e70d5 100644 --- a/rust/ql/test/library-tests/path-resolution/path-resolution.expected +++ b/rust/ql/test/library-tests/path-resolution/path-resolution.expected @@ -31,9 +31,10 @@ mod | main.rs:714:1:739:1 | mod m23 | | main.rs:741:1:809:1 | mod m24 | | main.rs:826:1:878:1 | mod associated_types | -| main.rs:884:1:903:1 | mod impl_with_attribute_macro | -| main.rs:905:1:946:1 | mod patterns | -| main.rs:948:1:992:1 | mod self_constructors | +| main.rs:880:1:943:1 | mod associated_types_subtrait | +| main.rs:949:1:968:1 | mod impl_with_attribute_macro | +| main.rs:970:1:1011:1 | mod patterns | +| main.rs:1013:1:1057:1 | mod self_constructors | | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:20:1:20:12 | mod my3 | | my2/mod.rs:22:1:23:10 | mod mymod | @@ -74,7 +75,7 @@ resolvePath | main.rs:37:17:37:24 | ...::f | main.rs:26:9:28:9 | fn f | | main.rs:39:17:39:23 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:40:17:40:17 | f | main.rs:26:9:28:9 | fn f | -| main.rs:47:9:47:13 | super | main.rs:1:1:1031:2 | SourceFile | +| main.rs:47:9:47:13 | super | main.rs:1:1:1096:2 | SourceFile | | main.rs:47:9:47:17 | ...::m1 | main.rs:20:1:44:1 | mod m1 | | main.rs:47:9:47:21 | ...::m2 | main.rs:25:5:43:5 | mod m2 | | main.rs:47:9:47:24 | ...::g | main.rs:30:9:34:9 | fn g | @@ -89,7 +90,7 @@ resolvePath | main.rs:68:17:68:19 | Foo | main.rs:66:9:66:21 | struct Foo | | main.rs:71:13:71:15 | Foo | main.rs:60:5:60:17 | struct Foo | | main.rs:73:5:73:5 | f | main.rs:62:5:69:5 | fn f | -| main.rs:75:5:75:8 | self | main.rs:1:1:1031:2 | SourceFile | +| main.rs:75:5:75:8 | self | main.rs:1:1:1096:2 | SourceFile | | main.rs:75:5:75:11 | ...::i | main.rs:78:1:90:1 | fn i | | main.rs:79:5:79:11 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:81:13:81:15 | Foo | main.rs:55:1:55:13 | struct Foo | @@ -111,7 +112,7 @@ resolvePath | main.rs:112:9:112:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:118:9:118:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:122:9:122:15 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:125:13:125:17 | super | main.rs:1:1:1031:2 | SourceFile | +| main.rs:125:13:125:17 | super | main.rs:1:1:1096:2 | SourceFile | | main.rs:125:13:125:21 | ...::m5 | main.rs:110:1:114:1 | mod m5 | | main.rs:126:9:126:9 | f | main.rs:111:5:113:5 | fn f | | main.rs:126:9:126:9 | f | main.rs:117:5:119:5 | fn f | @@ -452,124 +453,164 @@ resolvePath | main.rs:872:13:872:24 | ...::Output | main.rs:863:11:866:9 | type Output | | main.rs:873:13:873:16 | Self | main.rs:840:5:843:5 | struct MyImpl | | main.rs:873:13:873:23 | ...::Error | main.rs:859:11:863:9 | type Error | -| main.rs:880:5:880:7 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:880:11:880:14 | self | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:882:15:882:17 | ztd | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:882:15:882:25 | ...::string | {EXTERNAL LOCATION} | mod string | -| main.rs:882:15:882:33 | ...::String | {EXTERNAL LOCATION} | struct String | -| main.rs:892:7:892:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:892:7:892:26 | ...::identity | proc_macro.rs:15:1:18:1 | fn identity | -| main.rs:893:10:893:15 | ATrait | main.rs:888:5:890:5 | trait ATrait | -| main.rs:893:21:893:23 | i64 | {EXTERNAL LOCATION} | struct i64 | -| main.rs:895:11:895:13 | i64 | {EXTERNAL LOCATION} | struct i64 | -| main.rs:901:17:901:19 | Foo | main.rs:886:5:886:15 | struct Foo | -| main.rs:907:22:907:32 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:907:29:907:31 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:908:17:908:20 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:909:17:909:27 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:909:24:909:26 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:910:13:910:16 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:911:17:911:20 | None | {EXTERNAL LOCATION} | None | -| main.rs:913:13:913:16 | None | {EXTERNAL LOCATION} | None | -| main.rs:914:17:914:20 | None | {EXTERNAL LOCATION} | None | -| main.rs:923:19:923:29 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:923:26:923:28 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:924:26:924:29 | test | main.rs:906:5:920:5 | fn test | -| main.rs:930:14:930:16 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:935:17:935:20 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:937:13:937:16 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:942:13:942:16 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:942:18:942:18 | z | main.rs:929:5:931:12 | Const | -| main.rs:942:24:942:24 | z | main.rs:929:5:931:12 | Const | -| main.rs:950:24:950:26 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:953:10:953:20 | TupleStruct | main.rs:950:5:950:28 | struct TupleStruct | -| main.rs:955:19:955:21 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:955:27:955:30 | Self | main.rs:950:5:950:28 | struct TupleStruct | -| main.rs:956:21:956:24 | Self | main.rs:950:5:950:28 | struct TupleStruct | -| main.rs:957:31:957:34 | Self | main.rs:950:5:950:28 | struct TupleStruct | -| main.rs:963:12:963:14 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:967:10:967:21 | StructStruct | main.rs:962:5:964:5 | struct StructStruct | -| main.rs:969:19:969:21 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:969:27:969:30 | Self | main.rs:962:5:964:5 | struct StructStruct | -| main.rs:970:13:970:16 | Self | main.rs:962:5:964:5 | struct StructStruct | -| main.rs:976:13:976:15 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:981:10:981:15 | MyEnum | main.rs:974:5:978:5 | enum MyEnum | -| main.rs:982:25:982:27 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:984:17:984:20 | Self | main.rs:974:5:978:5 | enum MyEnum | -| main.rs:984:17:984:23 | ...::A | main.rs:975:9:977:9 | A | -| main.rs:995:5:995:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:995:5:995:14 | ...::nested | my.rs:1:1:1:15 | mod nested | -| main.rs:995:5:995:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | -| main.rs:995:5:995:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | -| main.rs:995:5:995:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | -| main.rs:996:5:996:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:996:5:996:9 | ...::f | my.rs:5:1:7:1 | fn f | -| main.rs:997:5:997:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | -| main.rs:997:5:997:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | -| main.rs:997:5:997:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | -| main.rs:997:5:997:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:998:5:998:5 | f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:999:5:999:5 | g | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:1000:5:1000:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:1000:5:1000:12 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:1001:5:1001:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:1001:5:1001:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:1001:5:1001:13 | ...::g | main.rs:30:9:34:9 | fn g | -| main.rs:1002:5:1002:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:1002:5:1002:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:1002:5:1002:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | -| main.rs:1002:5:1002:17 | ...::h | main.rs:37:27:41:13 | fn h | -| main.rs:1003:5:1003:6 | m4 | main.rs:46:1:53:1 | mod m4 | -| main.rs:1003:5:1003:9 | ...::i | main.rs:49:5:52:5 | fn i | -| main.rs:1004:5:1004:5 | h | main.rs:57:1:76:1 | fn h | -| main.rs:1005:5:1005:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:1006:5:1006:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:1007:5:1007:5 | j | main.rs:104:1:108:1 | fn j | -| main.rs:1008:5:1008:6 | m6 | main.rs:116:1:128:1 | mod m6 | -| main.rs:1008:5:1008:9 | ...::g | main.rs:121:5:127:5 | fn g | -| main.rs:1009:5:1009:6 | m7 | main.rs:130:1:149:1 | mod m7 | -| main.rs:1009:5:1009:9 | ...::f | main.rs:141:5:148:5 | fn f | -| main.rs:1010:5:1010:6 | m8 | main.rs:151:1:205:1 | mod m8 | -| main.rs:1010:5:1010:9 | ...::g | main.rs:189:5:204:5 | fn g | -| main.rs:1011:5:1011:6 | m9 | main.rs:207:1:215:1 | mod m9 | -| main.rs:1011:5:1011:9 | ...::f | main.rs:210:5:214:5 | fn f | -| main.rs:1012:5:1012:7 | m11 | main.rs:238:1:275:1 | mod m11 | -| main.rs:1012:5:1012:10 | ...::f | main.rs:243:5:246:5 | fn f | -| main.rs:1013:5:1013:7 | m15 | main.rs:306:1:375:1 | mod m15 | -| main.rs:1013:5:1013:10 | ...::f | main.rs:362:5:374:5 | fn f | -| main.rs:1014:5:1014:7 | m16 | main.rs:377:1:574:1 | mod m16 | -| main.rs:1014:5:1014:10 | ...::f | main.rs:446:5:470:5 | fn f | -| main.rs:1015:5:1015:20 | trait_visibility | main.rs:576:1:633:1 | mod trait_visibility | -| main.rs:1015:5:1015:23 | ...::f | main.rs:603:5:632:5 | fn f | -| main.rs:1016:5:1016:7 | m17 | main.rs:635:1:665:1 | mod m17 | -| main.rs:1016:5:1016:10 | ...::f | main.rs:659:5:664:5 | fn f | -| main.rs:1017:5:1017:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | -| main.rs:1017:5:1017:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | -| main.rs:1018:5:1018:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | -| main.rs:1018:5:1018:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | -| main.rs:1019:5:1019:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | -| main.rs:1019:5:1019:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | -| main.rs:1020:5:1020:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:1021:5:1021:12 | my_alias | main.rs:1:1:1:7 | mod my | -| main.rs:1021:5:1021:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:1022:5:1022:7 | m18 | main.rs:667:1:685:1 | mod m18 | -| main.rs:1022:5:1022:12 | ...::m19 | main.rs:672:5:684:5 | mod m19 | -| main.rs:1022:5:1022:17 | ...::m20 | main.rs:677:9:683:9 | mod m20 | -| main.rs:1022:5:1022:20 | ...::g | main.rs:678:13:682:13 | fn g | -| main.rs:1023:5:1023:7 | m23 | main.rs:714:1:739:1 | mod m23 | -| main.rs:1023:5:1023:10 | ...::f | main.rs:734:5:738:5 | fn f | -| main.rs:1024:5:1024:7 | m24 | main.rs:741:1:809:1 | mod m24 | -| main.rs:1024:5:1024:10 | ...::f | main.rs:795:5:808:5 | fn f | -| main.rs:1025:5:1025:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:1025:5:1025:11 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:1026:5:1026:13 | z_changed | main.rs:814:1:814:9 | fn z_changed | -| main.rs:1027:5:1027:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | -| main.rs:1027:5:1027:22 | ...::z_on_type | main.rs:820:5:820:17 | fn z_on_type | -| main.rs:1028:5:1028:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | -| main.rs:1029:5:1029:29 | impl_with_attribute_macro | main.rs:884:1:903:1 | mod impl_with_attribute_macro | -| main.rs:1029:5:1029:35 | ...::test | main.rs:899:5:902:5 | fn test | -| main.rs:1030:5:1030:12 | patterns | main.rs:905:1:946:1 | mod patterns | -| main.rs:1030:5:1030:18 | ...::test | main.rs:906:5:920:5 | fn test | +| main.rs:885:16:885:20 | Super | main.rs:881:5:883:5 | trait Super | +| main.rs:887:19:887:22 | Self | main.rs:885:5:889:5 | trait Sub | +| main.rs:887:19:887:27 | ...::Out | main.rs:882:9:882:17 | type Out | +| main.rs:892:9:892:10 | ST | main.rs:891:14:891:15 | ST | +| main.rs:896:10:896:14 | Super | main.rs:881:5:883:5 | trait Super | +| main.rs:896:20:896:25 | S::<...> | main.rs:891:5:893:6 | struct S | +| main.rs:896:22:896:24 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:897:20:897:23 | char | {EXTERNAL LOCATION} | struct char | +| main.rs:902:10:902:14 | Super | main.rs:881:5:883:5 | trait Super | +| main.rs:902:20:902:26 | S::<...> | main.rs:891:5:893:6 | struct S | +| main.rs:902:22:902:25 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:903:20:903:22 | i64 | {EXTERNAL LOCATION} | struct i64 | +| main.rs:908:10:908:12 | Sub | main.rs:885:5:889:5 | trait Sub | +| main.rs:908:18:908:23 | S::<...> | main.rs:891:5:893:6 | struct S | +| main.rs:908:20:908:22 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:909:19:909:22 | Self | main.rs:891:5:893:6 | struct S | +| main.rs:909:19:909:27 | ...::Out | main.rs:896:29:898:9 | type Out | +| main.rs:909:19:909:27 | ...::Out | main.rs:902:30:904:9 | type Out | +| main.rs:909:19:909:27 | ...::Out | main.rs:932:33:934:9 | type Out | +| main.rs:915:10:915:12 | Sub | main.rs:885:5:889:5 | trait Sub | +| main.rs:915:18:915:24 | S::<...> | main.rs:891:5:893:6 | struct S | +| main.rs:915:20:915:23 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:916:19:916:22 | Self | main.rs:891:5:893:6 | struct S | +| main.rs:916:19:916:27 | ...::Out | main.rs:896:29:898:9 | type Out | +| main.rs:916:19:916:27 | ...::Out | main.rs:902:30:904:9 | type Out | +| main.rs:916:19:916:27 | ...::Out | main.rs:932:33:934:9 | type Out | +| main.rs:925:19:925:26 | SuperAlt | main.rs:921:5:923:5 | trait SuperAlt | +| main.rs:927:23:927:26 | Self | main.rs:925:5:929:5 | trait SubAlt | +| main.rs:927:23:927:31 | ...::Out | main.rs:922:9:922:17 | type Out | +| main.rs:932:13:932:20 | SuperAlt | main.rs:921:5:923:5 | trait SuperAlt | +| main.rs:932:26:932:29 | S::<...> | main.rs:891:5:893:6 | struct S | +| main.rs:932:28:932:28 | A | main.rs:932:10:932:10 | A | +| main.rs:933:20:933:20 | A | main.rs:932:10:932:10 | A | +| main.rs:938:13:938:18 | SubAlt | main.rs:925:5:929:5 | trait SubAlt | +| main.rs:938:24:938:27 | S::<...> | main.rs:891:5:893:6 | struct S | +| main.rs:938:26:938:26 | A | main.rs:938:10:938:10 | A | +| main.rs:939:23:939:26 | Self | main.rs:891:5:893:6 | struct S | +| main.rs:939:23:939:31 | ...::Out | main.rs:896:29:898:9 | type Out | +| main.rs:939:23:939:31 | ...::Out | main.rs:902:30:904:9 | type Out | +| main.rs:939:23:939:31 | ...::Out | main.rs:932:33:934:9 | type Out | +| main.rs:945:5:945:7 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:945:11:945:14 | self | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:947:15:947:17 | ztd | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:947:15:947:25 | ...::string | {EXTERNAL LOCATION} | mod string | +| main.rs:947:15:947:33 | ...::String | {EXTERNAL LOCATION} | struct String | +| main.rs:957:7:957:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:957:7:957:26 | ...::identity | proc_macro.rs:15:1:18:1 | fn identity | +| main.rs:958:10:958:15 | ATrait | main.rs:953:5:955:5 | trait ATrait | +| main.rs:958:21:958:23 | i64 | {EXTERNAL LOCATION} | struct i64 | +| main.rs:960:11:960:13 | i64 | {EXTERNAL LOCATION} | struct i64 | +| main.rs:966:17:966:19 | Foo | main.rs:951:5:951:15 | struct Foo | +| main.rs:972:22:972:32 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:972:29:972:31 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:973:17:973:20 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:974:17:974:27 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:974:24:974:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:975:13:975:16 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:976:17:976:20 | None | {EXTERNAL LOCATION} | None | +| main.rs:978:13:978:16 | None | {EXTERNAL LOCATION} | None | +| main.rs:979:17:979:20 | None | {EXTERNAL LOCATION} | None | +| main.rs:988:19:988:29 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:988:26:988:28 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:989:26:989:29 | test | main.rs:971:5:985:5 | fn test | +| main.rs:995:14:995:16 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1000:17:1000:20 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:1002:13:1002:16 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:1007:13:1007:16 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:1007:18:1007:18 | z | main.rs:994:5:996:12 | Const | +| main.rs:1007:24:1007:24 | z | main.rs:994:5:996:12 | Const | +| main.rs:1015:24:1015:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1018:10:1018:20 | TupleStruct | main.rs:1015:5:1015:28 | struct TupleStruct | +| main.rs:1020:19:1020:21 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1020:27:1020:30 | Self | main.rs:1015:5:1015:28 | struct TupleStruct | +| main.rs:1021:21:1021:24 | Self | main.rs:1015:5:1015:28 | struct TupleStruct | +| main.rs:1022:31:1022:34 | Self | main.rs:1015:5:1015:28 | struct TupleStruct | +| main.rs:1028:12:1028:14 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1032:10:1032:21 | StructStruct | main.rs:1027:5:1029:5 | struct StructStruct | +| main.rs:1034:19:1034:21 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1034:27:1034:30 | Self | main.rs:1027:5:1029:5 | struct StructStruct | +| main.rs:1035:13:1035:16 | Self | main.rs:1027:5:1029:5 | struct StructStruct | +| main.rs:1041:13:1041:15 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1046:10:1046:15 | MyEnum | main.rs:1039:5:1043:5 | enum MyEnum | +| main.rs:1047:25:1047:27 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1049:17:1049:20 | Self | main.rs:1039:5:1043:5 | enum MyEnum | +| main.rs:1049:17:1049:23 | ...::A | main.rs:1040:9:1042:9 | A | +| main.rs:1060:5:1060:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:1060:5:1060:14 | ...::nested | my.rs:1:1:1:15 | mod nested | +| main.rs:1060:5:1060:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | +| main.rs:1060:5:1060:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | +| main.rs:1060:5:1060:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | +| main.rs:1061:5:1061:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:1061:5:1061:9 | ...::f | my.rs:5:1:7:1 | fn f | +| main.rs:1062:5:1062:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | +| main.rs:1062:5:1062:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | +| main.rs:1062:5:1062:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | +| main.rs:1062:5:1062:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1063:5:1063:5 | f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1064:5:1064:5 | g | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1065:5:1065:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1065:5:1065:12 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1066:5:1066:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:1066:5:1066:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:1066:5:1066:13 | ...::g | main.rs:30:9:34:9 | fn g | +| main.rs:1067:5:1067:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:1067:5:1067:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:1067:5:1067:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | +| main.rs:1067:5:1067:17 | ...::h | main.rs:37:27:41:13 | fn h | +| main.rs:1068:5:1068:6 | m4 | main.rs:46:1:53:1 | mod m4 | +| main.rs:1068:5:1068:9 | ...::i | main.rs:49:5:52:5 | fn i | +| main.rs:1069:5:1069:5 | h | main.rs:57:1:76:1 | fn h | +| main.rs:1070:5:1070:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1071:5:1071:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1072:5:1072:5 | j | main.rs:104:1:108:1 | fn j | +| main.rs:1073:5:1073:6 | m6 | main.rs:116:1:128:1 | mod m6 | +| main.rs:1073:5:1073:9 | ...::g | main.rs:121:5:127:5 | fn g | +| main.rs:1074:5:1074:6 | m7 | main.rs:130:1:149:1 | mod m7 | +| main.rs:1074:5:1074:9 | ...::f | main.rs:141:5:148:5 | fn f | +| main.rs:1075:5:1075:6 | m8 | main.rs:151:1:205:1 | mod m8 | +| main.rs:1075:5:1075:9 | ...::g | main.rs:189:5:204:5 | fn g | +| main.rs:1076:5:1076:6 | m9 | main.rs:207:1:215:1 | mod m9 | +| main.rs:1076:5:1076:9 | ...::f | main.rs:210:5:214:5 | fn f | +| main.rs:1077:5:1077:7 | m11 | main.rs:238:1:275:1 | mod m11 | +| main.rs:1077:5:1077:10 | ...::f | main.rs:243:5:246:5 | fn f | +| main.rs:1078:5:1078:7 | m15 | main.rs:306:1:375:1 | mod m15 | +| main.rs:1078:5:1078:10 | ...::f | main.rs:362:5:374:5 | fn f | +| main.rs:1079:5:1079:7 | m16 | main.rs:377:1:574:1 | mod m16 | +| main.rs:1079:5:1079:10 | ...::f | main.rs:446:5:470:5 | fn f | +| main.rs:1080:5:1080:20 | trait_visibility | main.rs:576:1:633:1 | mod trait_visibility | +| main.rs:1080:5:1080:23 | ...::f | main.rs:603:5:632:5 | fn f | +| main.rs:1081:5:1081:7 | m17 | main.rs:635:1:665:1 | mod m17 | +| main.rs:1081:5:1081:10 | ...::f | main.rs:659:5:664:5 | fn f | +| main.rs:1082:5:1082:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | +| main.rs:1082:5:1082:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | +| main.rs:1083:5:1083:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | +| main.rs:1083:5:1083:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | +| main.rs:1084:5:1084:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | +| main.rs:1084:5:1084:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | +| main.rs:1085:5:1085:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1086:5:1086:12 | my_alias | main.rs:1:1:1:7 | mod my | +| main.rs:1086:5:1086:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1087:5:1087:7 | m18 | main.rs:667:1:685:1 | mod m18 | +| main.rs:1087:5:1087:12 | ...::m19 | main.rs:672:5:684:5 | mod m19 | +| main.rs:1087:5:1087:17 | ...::m20 | main.rs:677:9:683:9 | mod m20 | +| main.rs:1087:5:1087:20 | ...::g | main.rs:678:13:682:13 | fn g | +| main.rs:1088:5:1088:7 | m23 | main.rs:714:1:739:1 | mod m23 | +| main.rs:1088:5:1088:10 | ...::f | main.rs:734:5:738:5 | fn f | +| main.rs:1089:5:1089:7 | m24 | main.rs:741:1:809:1 | mod m24 | +| main.rs:1089:5:1089:10 | ...::f | main.rs:795:5:808:5 | fn f | +| main.rs:1090:5:1090:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1090:5:1090:11 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1091:5:1091:13 | z_changed | main.rs:814:1:814:9 | fn z_changed | +| main.rs:1092:5:1092:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | +| main.rs:1092:5:1092:22 | ...::z_on_type | main.rs:820:5:820:17 | fn z_on_type | +| main.rs:1093:5:1093:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | +| main.rs:1094:5:1094:29 | impl_with_attribute_macro | main.rs:949:1:968:1 | mod impl_with_attribute_macro | +| main.rs:1094:5:1094:35 | ...::test | main.rs:964:5:967:5 | fn test | +| main.rs:1095:5:1095:12 | patterns | main.rs:970:1:1011:1 | mod patterns | +| main.rs:1095:5:1095:18 | ...::test | main.rs:971:5:985:5 | fn test | | my2/mod.rs:4:5:4:11 | println | {EXTERNAL LOCATION} | MacroRules | | my2/mod.rs:5:5:5:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:5:5:5:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | @@ -595,7 +636,7 @@ resolvePath | my2/my3/mod.rs:3:5:3:5 | g | my2/mod.rs:3:1:6:1 | fn g | | my2/my3/mod.rs:4:5:4:5 | h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:7:5:7:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | -| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1031:2 | SourceFile | +| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1096:2 | SourceFile | | my2/my3/mod.rs:7:5:7:19 | ...::h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:8:5:8:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | | my2/my3/mod.rs:8:5:8:12 | ...::g | my2/mod.rs:3:1:6:1 | fn g | diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected index 97dfe4bc278c..7b751c9ea8be 100644 --- a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected @@ -1,2 +1,7 @@ multipleResolvedTargets +| associated_types.rs:393:13:393:30 | ...::default(...) | +| associated_types.rs:400:13:400:30 | ...::default(...) | | main.rs:2871:13:2871:17 | x.f() | +multiplePathResolutions +| associated_types.rs:391:34:391:45 | ...::Output | +| associated_types.rs:399:34:399:45 | ...::Output | diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected new file mode 100644 index 000000000000..f2551bcad6ca --- /dev/null +++ b/rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected @@ -0,0 +1,3 @@ +nonUniqueCertainType +| associated_types.rs:391:47:394:9 | { ... } | | +| associated_types.rs:399:47:401:9 | { ... } | | diff --git a/rust/ql/test/library-tests/type-inference/associated_types.rs b/rust/ql/test/library-tests/type-inference/associated_types.rs index b08be0264a04..b517b63403f8 100644 --- a/rust/ql/test/library-tests/type-inference/associated_types.rs +++ b/rust/ql/test/library-tests/type-inference/associated_types.rs @@ -46,6 +46,15 @@ impl GetSet for S { } } +impl AnotherGet for S { + type AnotherOutput = bool; + + // S::get_another + fn get_another(&self) -> Self::AnotherOutput { + true + } +} + impl GetSet for Wrapper { type Output = T; @@ -55,6 +64,24 @@ impl GetSet for Wrapper { } } +struct Odd(OddT); + +impl GetSet for Odd { + type Output = bool; + + fn get(&self) -> Self::Output { + true + } +} + +impl GetSet for Odd { + type Output = char; + + fn get(&self) -> Self::Output { + 'a' + } +} + mod default_method_using_associated_type { use super::*; @@ -110,7 +137,62 @@ mod default_method_using_associated_type { } } -// Tests for signatures that access associated types from type parameters +mod concrete_type_access_associated_type { + use super::*; + + fn using_as( + a: ::Output, + b: as GetSet>::Output, + c: as GetSet>::Output, + d: as GetSet>::Output, + ) { + let _a = a; // $ MISSING: type=_a:S3 + let _b = b; // $ MISSING: type=_b:i32 + let _c = c; // $ MISSING: type=_c:bool + let _d = d; // $ MISSING: type=_d:char + } + + // NOTE: The below seems like it should work, but is currently rejected by + // the Rust compiler. This behavior does not seem to be documented and + // there's an open issue about it: + // https://github.com/rust-lang/rust/issues/104119 + // fn without_as( + // a: S::Output, + // b: Wrapper::Output, + // c: Odd::Output, + // d: Odd::Output, + // ) { + // let _a = a; // $ type=_a:S3 + // let _b = b; // $ type=_b:i32 + // let _c = c; // $ type=_c:bool + // let _d = d; // $ type=_d:char + // } + + impl Odd { + // Odd::proj + fn proj(&self) -> ::Output { + let x = Default::default(); // $ MISSING: target=default + x // $ MISSING: type=x:bool + } + } + + impl Odd { + // Odd::proj + fn proj(&self) -> ::Output { + let x = Default::default(); // $ MISSING: target=default + x // $ MISSING: type=x:char + } + } + + pub fn test() { + using_as(S3, 1, true, 'a'); // $ target=using_as + + let _a = Odd(42i32).proj(); // $ target=Odd::proj MISSING: type=_a:bool + let _b = Odd(true).proj(); // $ target=Odd::proj MISSING: type=_b:char + } +} + +// Tests for signatures that access associated types on type parameters mod type_param_access_associated_type { use super::*; @@ -122,9 +204,20 @@ mod type_param_access_associated_type { thing.get() // $ target=GetSet::get } + fn tp_assoc_from_supertrait(thing: T) -> (T::Output, T::AnotherOutput) { + ( + thing.get(), // $ target=GetSet::get + thing.get_another(), // $ target=AnotherGet::get_another + ) + } + pub fn test() { let _o1 = tp_with_as(S); // $ target=tp_with_as MISSING: type=_o1:S3 let _o2 = tp_without_as(S); // $ target=tp_without_as MISSING: type=_o2:S3 + let ( + _o3, // $ MISSING: type=_o3:S3 + _o4, // $ MISSING: type=_o4:bool + ) = tp_assoc_from_supertrait(S); // $ target=tp_assoc_from_supertrait } } @@ -293,6 +386,21 @@ mod associated_type_in_supertrait { } } + impl Subtrait for Odd { + // Odd::get_content + fn get_content(&self) -> Self::Output { + // let _x = Self::get(self); + Default::default() // $ target=default + } + } + + impl Subtrait for Odd { + // Odd::get_content + fn get_content(&self) -> Self::Output { + Default::default() // $ target=default + } + } + fn get_content(item: &T) -> T::Output { item.get_content() // $ target=Subtrait::get_content } @@ -308,6 +416,9 @@ mod associated_type_in_supertrait { let item2 = MyType(true); let _content2 = get_content(&item2); // $ target=get_content MISSING: type=_content2:bool + + let _content3 = Odd(42i32).get_content(); // $ target=Odd::get_content type=_content3:bool SPURIOUS: type=_content3:char + let _content4 = Odd(true).get_content(); // $ target=Odd::get_content type=_content4:char SPURIOUS: type=_content4:bool } } @@ -356,6 +467,7 @@ mod dyn_trait { pub fn test() { default_method_using_associated_type::test(); // $ target=test + concrete_type_access_associated_type::test(); // $ target=test type_param_access_associated_type::test(); // $ target=test generic_associated_type::test(); // $ target=test multiple_associated_types::test(); // $ target=test diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 36663b1dc4bf..14d6ae3115e3 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -20,212 +20,259 @@ inferCertainType | associated_types.rs:44:12:44:16 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:44:12:44:16 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | | associated_types.rs:44:35:46:5 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:53:12:53:16 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:53:12:53:16 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:53:12:53:16 | SelfParam | TRef.A | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:53:35:55:5 | { ... } | | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:54:9:54:12 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:54:9:54:12 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:54:9:54:12 | self | TRef.A | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:65:15:65:18 | SelfParam | | associated_types.rs:61:5:76:5 | Self [trait MyTrait] | -| associated_types.rs:67:15:67:18 | SelfParam | | associated_types.rs:61:5:76:5 | Self [trait MyTrait] | -| associated_types.rs:71:9:75:9 | { ... } | | associated_types.rs:62:9:62:28 | AssociatedType[MyTrait] | -| associated_types.rs:72:13:72:16 | self | | associated_types.rs:61:5:76:5 | Self [trait MyTrait] | -| associated_types.rs:82:15:82:18 | SelfParam | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:82:45:84:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:91:15:91:18 | SelfParam | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:91:45:93:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:91:45:93:9 | { ... } | A | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:92:21:92:24 | self | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:96:19:110:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:99:18:99:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:99:18:99:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:99:18:99:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:99:18:99:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:104:18:104:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:104:18:104:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:104:18:104:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:104:18:104:26 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:107:18:107:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:107:18:107:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:107:18:107:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:107:18:107:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:109:18:109:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:109:18:109:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:109:18:109:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:109:18:109:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:117:30:117:34 | thing | | associated_types.rs:117:19:117:27 | T | -| associated_types.rs:118:9:118:13 | thing | | associated_types.rs:117:19:117:27 | T | -| associated_types.rs:121:33:121:37 | thing | | associated_types.rs:121:22:121:30 | T | -| associated_types.rs:122:9:122:13 | thing | | associated_types.rs:121:22:121:30 | T | -| associated_types.rs:125:19:128:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:135:26:135:26 | x | | associated_types.rs:135:23:135:23 | T | -| associated_types.rs:138:5:140:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:139:18:139:18 | x | | associated_types.rs:135:23:135:23 | T | -| associated_types.rs:143:24:143:24 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:146:5:150:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:147:19:147:19 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:148:23:148:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:148:24:148:24 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:149:18:149:18 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:153:23:153:23 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:157:5:161:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:158:19:158:19 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:159:23:159:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:159:24:159:24 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:160:18:160:18 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:167:17:167:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:167:17:167:21 | SelfParam | TRef | associated_types.rs:163:5:168:5 | Self [trait AssocNameClash] | -| associated_types.rs:170:34:170:34 | x | | associated_types.rs:170:31:170:31 | T | -| associated_types.rs:174:5:177:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:175:18:175:18 | x | | associated_types.rs:170:31:170:31 | T | -| associated_types.rs:176:18:176:18 | x | | associated_types.rs:170:31:170:31 | T | -| associated_types.rs:187:19:187:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:187:19:187:23 | SelfParam | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:187:26:187:26 | a | | associated_types.rs:187:16:187:16 | A | -| associated_types.rs:190:23:190:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:190:23:190:27 | SelfParam | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:190:30:190:30 | a | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:190:36:190:36 | b | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:190:76:193:9 | { ... } | | associated_types.rs:184:9:184:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:191:13:191:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:191:13:191:16 | self | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:191:22:191:22 | a | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:192:13:192:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:192:13:192:16 | self | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:192:22:192:22 | b | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:201:19:201:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:201:19:201:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:201:26:201:26 | a | | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:201:46:203:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:201:46:203:9 | { ... } | A | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:202:21:202:21 | a | | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:206:19:213:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:209:25:209:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:212:29:212:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:212:35:212:39 | false | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:224:21:224:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:224:21:224:25 | SelfParam | TRef | associated_types.rs:219:5:229:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:226:20:226:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:226:20:226:24 | SelfParam | TRef | associated_types.rs:219:5:229:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:228:20:228:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:228:20:228:24 | SelfParam | TRef | associated_types.rs:219:5:229:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:235:21:235:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:235:21:235:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:235:34:237:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:239:20:239:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:239:20:239:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:239:43:241:9 | { ... } | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:243:20:243:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:243:20:243:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:243:43:245:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:248:19:252:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:260:24:260:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:260:24:260:28 | SelfParam | TRef | associated_types.rs:258:5:261:5 | Self [trait Subtrait] | -| associated_types.rs:269:23:269:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:269:23:269:27 | SelfParam | TRef | associated_types.rs:263:5:273:5 | Self [trait Subtrait2] | -| associated_types.rs:269:30:269:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:269:48:269:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:269:66:272:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:270:13:270:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:270:13:270:16 | self | TRef | associated_types.rs:263:5:273:5 | Self [trait Subtrait2] | -| associated_types.rs:270:22:270:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:271:13:271:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:271:13:271:16 | self | TRef | associated_types.rs:263:5:273:5 | Self [trait Subtrait2] | -| associated_types.rs:271:22:271:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:280:16:280:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:280:16:280:20 | SelfParam | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:280:16:280:20 | SelfParam | TRef.T | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:280:39:282:9 | { ... } | | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:281:13:281:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:281:13:281:16 | self | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:281:13:281:16 | self | TRef.T | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:284:16:284:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:284:16:284:20 | SelfParam | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:284:16:284:20 | SelfParam | TRef.T | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:284:23:284:30 | _content | | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:284:47:286:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:285:22:285:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:285:22:285:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:285:22:285:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:285:22:285:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:291:24:291:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:291:24:291:28 | SelfParam | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:291:24:291:28 | SelfParam | TRef.T | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:292:15:292:18 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:292:15:292:18 | self | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:292:15:292:18 | self | TRef.T | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:296:33:296:36 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:296:33:296:36 | item | TRef | associated_types.rs:296:20:296:30 | T | -| associated_types.rs:297:9:297:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:297:9:297:12 | item | TRef | associated_types.rs:296:20:296:30 | T | -| associated_types.rs:300:35:300:38 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:300:35:300:38 | item | TRef | associated_types.rs:300:21:300:32 | T | -| associated_types.rs:300:90:303:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:301:9:301:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:301:9:301:12 | item | TRef | associated_types.rs:300:21:300:32 | T | -| associated_types.rs:302:9:302:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:302:9:302:12 | item | TRef | associated_types.rs:300:21:300:32 | T | -| associated_types.rs:305:19:311:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:306:28:306:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:309:28:309:31 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:310:37:310:42 | &item2 | | {EXTERNAL LOCATION} | & | -| associated_types.rs:324:16:324:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:324:16:324:20 | SelfParam | TRef | associated_types.rs:317:5:317:20 | ST | -| associated_types.rs:324:16:324:20 | SelfParam | TRef.T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:324:39:326:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:324:39:326:9 | { ... } | E | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:324:39:326:9 | { ... } | T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:325:16:325:19 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:325:16:325:19 | self | TRef | associated_types.rs:317:5:317:20 | ST | -| associated_types.rs:325:16:325:19 | self | TRef.T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:329:19:331:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:330:21:330:24 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:338:31:338:31 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:338:31:338:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:338:31:338:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:338:61:346:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:340:21:340:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:340:21:340:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:340:21:340:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:343:19:343:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:343:19:343:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:343:19:343:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:345:23:345:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:345:23:345:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:345:23:345:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:348:36:348:36 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:348:36:348:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:348:36:348:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:348:36:348:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:348:92:354:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:349:21:349:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:349:21:349:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:349:21:349:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:349:21:349:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:350:19:350:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:350:19:350:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:350:19:350:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:350:19:350:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:351:23:351:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:351:23:351:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:351:23:351:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:351:23:351:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:352:21:352:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:352:21:352:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:352:21:352:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:352:21:352:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:353:19:353:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:353:19:353:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:353:19:353:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:353:19:353:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:357:15:364:1 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:358:5:358:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:359:5:359:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:360:5:360:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:361:5:361:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:362:5:362:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:363:5:363:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:53:20:53:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:53:20:53:24 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:53:50:55:5 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:54:9:54:12 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:62:12:62:16 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:62:12:62:16 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:62:12:62:16 | SelfParam | TRef.A | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:62:35:64:5 | { ... } | | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:63:9:63:12 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:63:9:63:12 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:63:9:63:12 | self | TRef.A | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:72:12:72:16 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:72:12:72:16 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:72:12:72:16 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:72:35:74:5 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:73:9:73:12 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:80:12:80:16 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:80:12:80:16 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:80:12:80:16 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:80:35:82:5 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:81:9:81:11 | 'a' | | {EXTERNAL LOCATION} | char | +| associated_types.rs:92:15:92:18 | SelfParam | | associated_types.rs:88:5:103:5 | Self [trait MyTrait] | +| associated_types.rs:94:15:94:18 | SelfParam | | associated_types.rs:88:5:103:5 | Self [trait MyTrait] | +| associated_types.rs:98:9:102:9 | { ... } | | associated_types.rs:89:9:89:28 | AssociatedType[MyTrait] | +| associated_types.rs:99:13:99:16 | self | | associated_types.rs:88:5:103:5 | Self [trait MyTrait] | +| associated_types.rs:109:15:109:18 | SelfParam | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:109:45:111:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:118:15:118:18 | SelfParam | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:118:45:120:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:118:45:120:9 | { ... } | A | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:119:21:119:24 | self | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:123:19:137:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:126:18:126:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:126:18:126:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:126:18:126:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:126:18:126:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:131:18:131:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:131:18:131:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:131:18:131:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:131:18:131:26 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:134:18:134:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:134:18:134:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:134:18:134:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:134:18:134:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:136:18:136:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:136:18:136:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:136:18:136:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:136:18:136:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:148:7:153:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:173:17:173:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:173:17:173:21 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:173:17:173:21 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:181:17:181:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:181:17:181:21 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:181:17:181:21 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:187:19:192:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:188:9:188:34 | using_as(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:188:25:188:28 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:188:31:188:33 | 'a' | | {EXTERNAL LOCATION} | char | +| associated_types.rs:190:22:190:26 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:191:22:191:25 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:199:30:199:34 | thing | | associated_types.rs:199:19:199:27 | T | +| associated_types.rs:200:9:200:13 | thing | | associated_types.rs:199:19:199:27 | T | +| associated_types.rs:203:33:203:37 | thing | | associated_types.rs:203:22:203:30 | T | +| associated_types.rs:204:9:204:13 | thing | | associated_types.rs:203:22:203:30 | T | +| associated_types.rs:207:48:207:52 | thing | | associated_types.rs:207:33:207:45 | T | +| associated_types.rs:207:91:212:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:208:9:211:9 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:209:13:209:17 | thing | | associated_types.rs:207:33:207:45 | T | +| associated_types.rs:210:13:210:17 | thing | | associated_types.rs:207:33:207:45 | T | +| associated_types.rs:214:19:221:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:217:13:220:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:220:13:220:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:228:26:228:26 | x | | associated_types.rs:228:23:228:23 | T | +| associated_types.rs:231:5:233:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:232:18:232:18 | x | | associated_types.rs:228:23:228:23 | T | +| associated_types.rs:236:24:236:24 | x | | associated_types.rs:236:21:236:21 | T | +| associated_types.rs:239:5:243:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:240:19:240:19 | x | | associated_types.rs:236:21:236:21 | T | +| associated_types.rs:241:23:241:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:241:24:241:24 | x | | associated_types.rs:236:21:236:21 | T | +| associated_types.rs:242:18:242:18 | x | | associated_types.rs:236:21:236:21 | T | +| associated_types.rs:246:23:246:23 | x | | associated_types.rs:246:20:246:20 | T | +| associated_types.rs:250:5:254:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:251:19:251:19 | x | | associated_types.rs:246:20:246:20 | T | +| associated_types.rs:252:23:252:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:252:24:252:24 | x | | associated_types.rs:246:20:246:20 | T | +| associated_types.rs:253:18:253:18 | x | | associated_types.rs:246:20:246:20 | T | +| associated_types.rs:260:17:260:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:260:17:260:21 | SelfParam | TRef | associated_types.rs:256:5:261:5 | Self [trait AssocNameClash] | +| associated_types.rs:263:34:263:34 | x | | associated_types.rs:263:31:263:31 | T | +| associated_types.rs:267:5:270:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:268:18:268:18 | x | | associated_types.rs:263:31:263:31 | T | +| associated_types.rs:269:18:269:18 | x | | associated_types.rs:263:31:263:31 | T | +| associated_types.rs:280:19:280:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:280:19:280:23 | SelfParam | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:280:26:280:26 | a | | associated_types.rs:280:16:280:16 | A | +| associated_types.rs:283:23:283:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:283:23:283:27 | SelfParam | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:283:30:283:30 | a | | associated_types.rs:283:20:283:20 | A | +| associated_types.rs:283:36:283:36 | b | | associated_types.rs:283:20:283:20 | A | +| associated_types.rs:283:76:286:9 | { ... } | | associated_types.rs:277:9:277:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:284:13:284:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:284:13:284:16 | self | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:284:22:284:22 | a | | associated_types.rs:283:20:283:20 | A | +| associated_types.rs:285:13:285:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:285:13:285:16 | self | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:285:22:285:22 | b | | associated_types.rs:283:20:283:20 | A | +| associated_types.rs:294:19:294:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:294:19:294:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:294:26:294:26 | a | | associated_types.rs:294:16:294:16 | A | +| associated_types.rs:294:46:296:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:294:46:296:9 | { ... } | A | associated_types.rs:294:16:294:16 | A | +| associated_types.rs:295:21:295:21 | a | | associated_types.rs:294:16:294:16 | A | +| associated_types.rs:299:19:306:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:302:25:302:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:305:29:305:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:305:35:305:39 | false | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:317:21:317:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:317:21:317:25 | SelfParam | TRef | associated_types.rs:312:5:322:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:319:20:319:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:319:20:319:24 | SelfParam | TRef | associated_types.rs:312:5:322:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:321:20:321:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:321:20:321:24 | SelfParam | TRef | associated_types.rs:312:5:322:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:328:21:328:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:328:21:328:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:328:34:330:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:332:20:332:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:332:20:332:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:332:43:334:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:336:20:336:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:336:20:336:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:336:43:338:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:341:19:345:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:353:24:353:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:353:24:353:28 | SelfParam | TRef | associated_types.rs:351:5:354:5 | Self [trait Subtrait] | +| associated_types.rs:362:23:362:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:362:23:362:27 | SelfParam | TRef | associated_types.rs:356:5:366:5 | Self [trait Subtrait2] | +| associated_types.rs:362:30:362:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:362:48:362:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:362:66:365:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:363:13:363:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:363:13:363:16 | self | TRef | associated_types.rs:356:5:366:5 | Self [trait Subtrait2] | +| associated_types.rs:363:22:363:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:364:13:364:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:364:13:364:16 | self | TRef | associated_types.rs:356:5:366:5 | Self [trait Subtrait2] | +| associated_types.rs:364:22:364:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:373:16:373:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:373:16:373:20 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:373:16:373:20 | SelfParam | TRef.T | associated_types.rs:370:10:370:16 | T | +| associated_types.rs:373:39:375:9 | { ... } | | associated_types.rs:370:10:370:16 | T | +| associated_types.rs:374:13:374:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:374:13:374:16 | self | TRef | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:374:13:374:16 | self | TRef.T | associated_types.rs:370:10:370:16 | T | +| associated_types.rs:377:16:377:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:377:16:377:20 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:377:16:377:20 | SelfParam | TRef.T | associated_types.rs:370:10:370:16 | T | +| associated_types.rs:377:23:377:30 | _content | | associated_types.rs:370:10:370:16 | T | +| associated_types.rs:377:47:379:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:378:22:378:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:378:22:378:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:378:22:378:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:378:22:378:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:384:24:384:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:384:24:384:28 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:384:24:384:28 | SelfParam | TRef.T | associated_types.rs:382:10:382:16 | T | +| associated_types.rs:385:15:385:18 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:385:15:385:18 | self | TRef | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:385:15:385:18 | self | TRef.T | associated_types.rs:382:10:382:16 | T | +| associated_types.rs:391:24:391:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:391:24:391:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:391:24:391:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:391:47:394:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:391:47:394:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:399:24:399:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:399:24:399:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:399:24:399:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:399:47:401:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:399:47:401:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:404:33:404:36 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:404:33:404:36 | item | TRef | associated_types.rs:404:20:404:30 | T | +| associated_types.rs:405:9:405:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:405:9:405:12 | item | TRef | associated_types.rs:404:20:404:30 | T | +| associated_types.rs:408:35:408:38 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:408:35:408:38 | item | TRef | associated_types.rs:408:21:408:32 | T | +| associated_types.rs:408:90:411:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:409:9:409:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:409:9:409:12 | item | TRef | associated_types.rs:408:21:408:32 | T | +| associated_types.rs:410:9:410:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:410:9:410:12 | item | TRef | associated_types.rs:408:21:408:32 | T | +| associated_types.rs:413:19:422:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:414:28:414:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:417:28:417:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:418:37:418:42 | &item2 | | {EXTERNAL LOCATION} | & | +| associated_types.rs:420:29:420:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:421:29:421:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:435:16:435:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:435:16:435:20 | SelfParam | TRef | associated_types.rs:428:5:428:20 | ST | +| associated_types.rs:435:16:435:20 | SelfParam | TRef.T | associated_types.rs:430:10:430:21 | Output | +| associated_types.rs:435:39:437:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:435:39:437:9 | { ... } | E | associated_types.rs:430:10:430:21 | Output | +| associated_types.rs:435:39:437:9 | { ... } | T | associated_types.rs:430:10:430:21 | Output | +| associated_types.rs:436:16:436:19 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:436:16:436:19 | self | TRef | associated_types.rs:428:5:428:20 | ST | +| associated_types.rs:436:16:436:19 | self | TRef.T | associated_types.rs:430:10:430:21 | Output | +| associated_types.rs:440:19:442:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:441:21:441:24 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:449:31:449:31 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:449:31:449:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:449:31:449:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:449:61:457:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:451:21:451:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:451:21:451:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:451:21:451:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:454:19:454:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:454:19:454:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:454:19:454:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:456:23:456:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:456:23:456:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:456:23:456:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:459:36:459:36 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:459:36:459:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:459:36:459:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:459:36:459:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:459:92:465:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:460:21:460:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:460:21:460:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:460:21:460:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:460:21:460:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:461:19:461:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:461:19:461:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:461:19:461:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:461:19:461:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:462:23:462:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:462:23:462:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:462:23:462:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:462:23:462:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:463:21:463:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:463:21:463:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:463:21:463:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:463:21:463:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:464:19:464:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:464:19:464:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:464:19:464:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:464:19:464:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:468:15:476:1 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:469:5:469:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:470:5:470:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:471:5:471:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:472:5:472:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:473:5:473:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:474:5:474:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:475:5:475:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:15:18:15:22 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:15:18:15:22 | SelfParam | TRef | blanket_impl.rs:9:5:10:14 | S2 | | blanket_impl.rs:15:42:17:9 | { ... } | | {EXTERNAL LOCATION} | & | @@ -4703,363 +4750,433 @@ inferType | associated_types.rs:44:12:44:16 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | | associated_types.rs:44:35:46:5 | { ... } | | associated_types.rs:16:1:17:10 | S3 | | associated_types.rs:45:9:45:10 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:53:12:53:16 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:53:12:53:16 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:53:12:53:16 | SelfParam | TRef.A | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:53:35:55:5 | { ... } | | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:54:9:54:12 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:54:9:54:12 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:54:9:54:12 | self | TRef.A | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:54:9:54:14 | self.0 | | associated_types.rs:49:6:49:12 | T | -| associated_types.rs:65:15:65:18 | SelfParam | | associated_types.rs:61:5:76:5 | Self [trait MyTrait] | -| associated_types.rs:67:15:67:18 | SelfParam | | associated_types.rs:61:5:76:5 | Self [trait MyTrait] | -| associated_types.rs:71:9:75:9 | { ... } | | associated_types.rs:62:9:62:28 | AssociatedType[MyTrait] | -| associated_types.rs:72:13:72:16 | self | | associated_types.rs:61:5:76:5 | Self [trait MyTrait] | -| associated_types.rs:72:13:72:21 | self.m1() | | associated_types.rs:62:9:62:28 | AssociatedType[MyTrait] | -| associated_types.rs:74:13:74:43 | ...::default(...) | | associated_types.rs:62:9:62:28 | AssociatedType[MyTrait] | -| associated_types.rs:82:15:82:18 | SelfParam | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:82:45:84:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:83:13:83:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:91:15:91:18 | SelfParam | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:91:45:93:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:91:45:93:9 | { ... } | A | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:92:13:92:25 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:92:13:92:25 | Wrapper(...) | A | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:92:21:92:24 | self | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:96:19:110:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:97:13:97:14 | x1 | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:97:18:97:18 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:99:9:99:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:99:18:99:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:99:18:99:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:99:18:99:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:99:18:99:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:99:18:99:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:99:26:99:27 | x1 | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:99:26:99:32 | x1.m1() | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:101:13:101:14 | x2 | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:101:18:101:18 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:103:13:103:13 | y | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:103:17:103:18 | x2 | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:103:17:103:23 | x2.m2() | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:104:9:104:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:104:18:104:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:104:18:104:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:104:18:104:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:104:18:104:26 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:104:18:104:26 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:104:26:104:26 | y | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:106:13:106:14 | x5 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:106:18:106:19 | S2 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:107:9:107:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:107:18:107:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:107:18:107:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:107:18:107:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:107:18:107:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:107:18:107:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:107:26:107:27 | x5 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:107:26:107:32 | x5.m1() | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:107:26:107:32 | x5.m1() | A | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:108:13:108:14 | x6 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:108:18:108:19 | S2 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:109:9:109:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:109:18:109:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:109:18:109:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:109:18:109:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:109:18:109:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:109:18:109:32 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:109:26:109:27 | x6 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:109:26:109:32 | x6.m2() | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:109:26:109:32 | x6.m2() | A | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:117:30:117:34 | thing | | associated_types.rs:117:19:117:27 | T | -| associated_types.rs:118:9:118:13 | thing | | associated_types.rs:117:19:117:27 | T | -| associated_types.rs:121:33:121:37 | thing | | associated_types.rs:121:22:121:30 | T | -| associated_types.rs:122:9:122:13 | thing | | associated_types.rs:121:22:121:30 | T | -| associated_types.rs:125:19:128:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:126:30:126:30 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:127:33:127:33 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:135:26:135:26 | x | | associated_types.rs:135:23:135:23 | T | -| associated_types.rs:138:5:140:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:139:13:139:14 | _a | | {EXTERNAL LOCATION} | char | -| associated_types.rs:139:18:139:18 | x | | associated_types.rs:135:23:135:23 | T | -| associated_types.rs:139:18:139:24 | x.get() | | {EXTERNAL LOCATION} | char | -| associated_types.rs:143:24:143:24 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:146:5:150:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:147:13:147:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:147:19:147:19 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:147:19:147:25 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:148:13:148:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:148:19:148:25 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:148:23:148:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:148:23:148:24 | &x | TRef | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:148:24:148:24 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:149:13:149:14 | _b | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:149:18:149:18 | x | | associated_types.rs:143:21:143:21 | T | -| associated_types.rs:149:18:149:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:153:23:153:23 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:157:5:161:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:158:13:158:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:158:19:158:19 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:158:19:158:25 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:159:13:159:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:159:19:159:25 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:159:23:159:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:159:23:159:24 | &x | TRef | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:159:24:159:24 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:160:13:160:14 | _b | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:160:18:160:18 | x | | associated_types.rs:153:20:153:20 | T | -| associated_types.rs:160:18:160:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:167:17:167:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:167:17:167:21 | SelfParam | TRef | associated_types.rs:163:5:168:5 | Self [trait AssocNameClash] | -| associated_types.rs:170:34:170:34 | x | | associated_types.rs:170:31:170:31 | T | -| associated_types.rs:174:5:177:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:175:13:175:14 | _a | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:175:18:175:18 | x | | associated_types.rs:170:31:170:31 | T | -| associated_types.rs:175:18:175:24 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:176:18:176:18 | x | | associated_types.rs:170:31:170:31 | T | -| associated_types.rs:187:19:187:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:187:19:187:23 | SelfParam | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:187:26:187:26 | a | | associated_types.rs:187:16:187:16 | A | -| associated_types.rs:190:23:190:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:190:23:190:27 | SelfParam | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:190:30:190:30 | a | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:190:36:190:36 | b | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:190:76:193:9 | { ... } | | associated_types.rs:184:9:184:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:191:13:191:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:191:13:191:16 | self | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:191:13:191:23 | self.put(...) | | associated_types.rs:184:9:184:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:191:22:191:22 | a | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:192:13:192:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:192:13:192:16 | self | TRef | associated_types.rs:183:5:194:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:192:13:192:23 | self.put(...) | | associated_types.rs:184:9:184:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:192:22:192:22 | b | | associated_types.rs:190:20:190:20 | A | -| associated_types.rs:201:19:201:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:201:19:201:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:201:26:201:26 | a | | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:201:46:203:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:201:46:203:9 | { ... } | A | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:202:13:202:22 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:202:13:202:22 | Wrapper(...) | A | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:202:21:202:21 | a | | associated_types.rs:201:16:201:16 | A | -| associated_types.rs:206:19:213:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:207:13:207:13 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:207:17:207:17 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:209:13:209:15 | _g1 | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:209:13:209:15 | _g1 | A | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:209:19:209:19 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:209:19:209:29 | s.put(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:209:19:209:29 | s.put(...) | A | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:209:25:209:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:212:13:212:15 | _g2 | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:212:19:212:19 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:212:19:212:40 | s.put_two(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:212:29:212:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:212:35:212:39 | false | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:224:21:224:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:224:21:224:25 | SelfParam | TRef | associated_types.rs:219:5:229:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:226:20:226:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:226:20:226:24 | SelfParam | TRef | associated_types.rs:219:5:229:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:228:20:228:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:228:20:228:24 | SelfParam | TRef | associated_types.rs:219:5:229:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:235:21:235:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:235:21:235:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:235:34:237:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:236:13:236:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:239:20:239:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:239:20:239:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:239:43:241:9 | { ... } | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:240:13:240:13 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:243:20:243:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:243:20:243:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:243:43:245:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:244:13:244:14 | S2 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:248:19:252:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:249:13:249:23 | _assoc_zero | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:249:27:249:28 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:249:27:249:39 | S3.get_zero() | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:250:13:250:22 | _assoc_one | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:250:26:250:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:250:26:250:37 | S3.get_one() | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:251:13:251:22 | _assoc_two | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:251:26:251:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:251:26:251:37 | S3.get_two() | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:260:24:260:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:260:24:260:28 | SelfParam | TRef | associated_types.rs:258:5:261:5 | Self [trait Subtrait] | -| associated_types.rs:269:23:269:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:269:23:269:27 | SelfParam | TRef | associated_types.rs:263:5:273:5 | Self [trait Subtrait2] | -| associated_types.rs:269:30:269:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:269:48:269:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:269:66:272:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:270:13:270:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:270:13:270:16 | self | TRef | associated_types.rs:263:5:273:5 | Self [trait Subtrait2] | -| associated_types.rs:270:13:270:24 | self.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:270:22:270:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:271:13:271:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:271:13:271:16 | self | TRef | associated_types.rs:263:5:273:5 | Self [trait Subtrait2] | -| associated_types.rs:271:13:271:24 | self.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:271:22:271:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:280:16:280:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:280:16:280:20 | SelfParam | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:280:16:280:20 | SelfParam | TRef.T | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:280:39:282:9 | { ... } | | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:281:13:281:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:281:13:281:16 | self | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:281:13:281:16 | self | TRef.T | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:281:13:281:18 | self.0 | | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:284:16:284:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:284:16:284:20 | SelfParam | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:284:16:284:20 | SelfParam | TRef.T | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:284:23:284:30 | _content | | associated_types.rs:277:10:277:16 | T | -| associated_types.rs:284:47:286:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:285:13:285:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:285:22:285:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:285:22:285:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:285:22:285:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:285:22:285:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:285:22:285:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:291:24:291:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:291:24:291:28 | SelfParam | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:291:24:291:28 | SelfParam | TRef.T | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:291:47:293:9 | { ... } | | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:292:13:292:19 | (...) | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:292:13:292:19 | (...) | T | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:292:13:292:21 | ... .0 | | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:292:14:292:18 | * ... | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:292:14:292:18 | * ... | T | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:292:15:292:18 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:292:15:292:18 | self | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:292:15:292:18 | self | TRef.T | associated_types.rs:289:10:289:16 | T | -| associated_types.rs:296:33:296:36 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:296:33:296:36 | item | TRef | associated_types.rs:296:20:296:30 | T | -| associated_types.rs:297:9:297:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:297:9:297:12 | item | TRef | associated_types.rs:296:20:296:30 | T | -| associated_types.rs:300:35:300:38 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:300:35:300:38 | item | TRef | associated_types.rs:300:21:300:32 | T | -| associated_types.rs:300:90:303:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:301:9:301:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:301:9:301:12 | item | TRef | associated_types.rs:300:21:300:32 | T | -| associated_types.rs:301:9:301:20 | item.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:302:9:302:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:302:9:302:12 | item | TRef | associated_types.rs:300:21:300:32 | T | -| associated_types.rs:302:9:302:31 | item.insert_two(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:305:19:311:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:306:13:306:17 | item1 | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:306:13:306:17 | item1 | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:306:21:306:33 | MyType(...) | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:306:21:306:33 | MyType(...) | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:306:28:306:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:307:25:307:29 | item1 | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:307:25:307:29 | item1 | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:309:13:309:17 | item2 | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:309:13:309:17 | item2 | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:309:21:309:32 | MyType(...) | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:309:21:309:32 | MyType(...) | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:309:28:309:31 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:310:37:310:42 | &item2 | | {EXTERNAL LOCATION} | & | -| associated_types.rs:310:37:310:42 | &item2 | TRef | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:310:37:310:42 | &item2 | TRef.T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:310:38:310:42 | item2 | | associated_types.rs:275:5:275:24 | MyType | -| associated_types.rs:310:38:310:42 | item2 | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:324:16:324:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:324:16:324:20 | SelfParam | TRef | associated_types.rs:317:5:317:20 | ST | -| associated_types.rs:324:16:324:20 | SelfParam | TRef.T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:324:39:326:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:324:39:326:9 | { ... } | E | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:324:39:326:9 | { ... } | T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:325:13:325:22 | Ok(...) | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:325:13:325:22 | Ok(...) | E | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:325:13:325:22 | Ok(...) | T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:325:16:325:19 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:325:16:325:19 | self | TRef | associated_types.rs:317:5:317:20 | ST | -| associated_types.rs:325:16:325:19 | self | TRef.T | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:325:16:325:21 | self.0 | | associated_types.rs:319:10:319:21 | Output | -| associated_types.rs:329:19:331:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:330:13:330:14 | _y | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:330:13:330:14 | _y | E | {EXTERNAL LOCATION} | bool | -| associated_types.rs:330:13:330:14 | _y | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:330:18:330:25 | ST(...) | | associated_types.rs:317:5:317:20 | ST | -| associated_types.rs:330:18:330:25 | ST(...) | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:330:18:330:31 | ... .get() | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:330:18:330:31 | ... .get() | E | {EXTERNAL LOCATION} | bool | -| associated_types.rs:330:18:330:31 | ... .get() | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:330:21:330:24 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:338:31:338:31 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:338:31:338:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:338:31:338:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:338:61:346:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:340:13:340:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:340:19:340:22 | (...) | | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:340:19:340:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:340:19:340:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:340:20:340:21 | * ... | | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:340:20:340:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:340:21:340:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:340:21:340:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:340:21:340:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:343:13:343:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:343:19:343:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:343:19:343:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:343:19:343:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:343:19:343:25 | t.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:345:13:345:15 | _a3 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:345:19:345:24 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:345:23:345:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:345:23:345:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:345:23:345:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:348:36:348:36 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:348:36:348:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:348:36:348:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:348:36:348:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:348:92:354:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:349:13:349:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:349:19:349:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:349:19:349:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:349:19:349:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:349:19:349:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:349:20:349:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:349:20:349:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:349:20:349:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:349:21:349:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:349:21:349:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:349:21:349:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:349:21:349:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:350:13:350:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:350:19:350:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:350:19:350:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:350:19:350:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:350:19:350:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:350:19:350:25 | t.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:351:13:351:15 | _a3 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:351:19:351:24 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:351:23:351:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:351:23:351:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:351:23:351:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:351:23:351:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:352:13:352:15 | _b1 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:352:19:352:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:352:19:352:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:352:19:352:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:352:19:352:36 | ... .get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:352:20:352:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:352:20:352:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:352:20:352:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:352:21:352:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:352:21:352:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:352:21:352:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:352:21:352:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:353:13:353:15 | _b2 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:353:19:353:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:353:19:353:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:353:19:353:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:353:19:353:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:353:19:353:33 | t.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:357:15:364:1 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:358:5:358:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:359:5:359:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:360:5:360:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:361:5:361:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:362:5:362:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:363:5:363:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:53:20:53:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:53:20:53:24 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:53:50:55:5 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:54:9:54:12 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:62:12:62:16 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:62:12:62:16 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:62:12:62:16 | SelfParam | TRef.A | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:62:35:64:5 | { ... } | | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:63:9:63:12 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:63:9:63:12 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:63:9:63:12 | self | TRef.A | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:63:9:63:14 | self.0 | | associated_types.rs:58:6:58:12 | T | +| associated_types.rs:72:12:72:16 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:72:12:72:16 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:72:12:72:16 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:72:35:74:5 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:73:9:73:12 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:80:12:80:16 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:80:12:80:16 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:80:12:80:16 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:80:35:82:5 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:81:9:81:11 | 'a' | | {EXTERNAL LOCATION} | char | +| associated_types.rs:92:15:92:18 | SelfParam | | associated_types.rs:88:5:103:5 | Self [trait MyTrait] | +| associated_types.rs:94:15:94:18 | SelfParam | | associated_types.rs:88:5:103:5 | Self [trait MyTrait] | +| associated_types.rs:98:9:102:9 | { ... } | | associated_types.rs:89:9:89:28 | AssociatedType[MyTrait] | +| associated_types.rs:99:13:99:16 | self | | associated_types.rs:88:5:103:5 | Self [trait MyTrait] | +| associated_types.rs:99:13:99:21 | self.m1() | | associated_types.rs:89:9:89:28 | AssociatedType[MyTrait] | +| associated_types.rs:101:13:101:43 | ...::default(...) | | associated_types.rs:89:9:89:28 | AssociatedType[MyTrait] | +| associated_types.rs:109:15:109:18 | SelfParam | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:109:45:111:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:110:13:110:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:118:15:118:18 | SelfParam | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:118:45:120:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:118:45:120:9 | { ... } | A | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:119:13:119:25 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:119:13:119:25 | Wrapper(...) | A | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:119:21:119:24 | self | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:123:19:137:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:124:13:124:14 | x1 | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:124:18:124:18 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:126:9:126:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:126:18:126:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:126:18:126:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:126:18:126:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:126:18:126:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:126:18:126:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:126:26:126:27 | x1 | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:126:26:126:32 | x1.m1() | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:128:13:128:14 | x2 | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:128:18:128:18 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:130:13:130:13 | y | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:130:17:130:18 | x2 | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:130:17:130:23 | x2.m2() | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:131:9:131:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:131:18:131:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:131:18:131:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:131:18:131:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:131:18:131:26 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:131:18:131:26 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:131:26:131:26 | y | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:133:13:133:14 | x5 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:133:18:133:19 | S2 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:134:9:134:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:134:18:134:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:134:18:134:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:134:18:134:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:134:18:134:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:134:18:134:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:134:26:134:27 | x5 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:134:26:134:32 | x5.m1() | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:134:26:134:32 | x5.m1() | A | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:135:13:135:14 | x6 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:135:18:135:19 | S2 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:136:9:136:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:136:18:136:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:136:18:136:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:136:18:136:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:136:18:136:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:136:18:136:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:136:26:136:27 | x6 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:136:26:136:32 | x6.m2() | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:136:26:136:32 | x6.m2() | A | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:148:7:153:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:173:17:173:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:173:17:173:21 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:173:17:173:21 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:181:17:181:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:181:17:181:21 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:181:17:181:21 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:187:19:192:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:188:9:188:34 | using_as(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:188:18:188:19 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:188:22:188:22 | 1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:188:25:188:28 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:188:31:188:33 | 'a' | | {EXTERNAL LOCATION} | char | +| associated_types.rs:190:18:190:27 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:190:18:190:27 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:190:22:190:26 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:191:18:191:26 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:191:18:191:26 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:191:22:191:25 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:199:30:199:34 | thing | | associated_types.rs:199:19:199:27 | T | +| associated_types.rs:200:9:200:13 | thing | | associated_types.rs:199:19:199:27 | T | +| associated_types.rs:203:33:203:37 | thing | | associated_types.rs:203:22:203:30 | T | +| associated_types.rs:204:9:204:13 | thing | | associated_types.rs:203:22:203:30 | T | +| associated_types.rs:207:48:207:52 | thing | | associated_types.rs:207:33:207:45 | T | +| associated_types.rs:207:91:212:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:208:9:211:9 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:209:13:209:17 | thing | | associated_types.rs:207:33:207:45 | T | +| associated_types.rs:210:13:210:17 | thing | | associated_types.rs:207:33:207:45 | T | +| associated_types.rs:214:19:221:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:215:30:215:30 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:216:33:216:33 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:217:13:220:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:220:13:220:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:220:38:220:38 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:228:26:228:26 | x | | associated_types.rs:228:23:228:23 | T | +| associated_types.rs:231:5:233:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:232:13:232:14 | _a | | {EXTERNAL LOCATION} | char | +| associated_types.rs:232:18:232:18 | x | | associated_types.rs:228:23:228:23 | T | +| associated_types.rs:232:18:232:24 | x.get() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:236:24:236:24 | x | | associated_types.rs:236:21:236:21 | T | +| associated_types.rs:239:5:243:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:240:13:240:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:240:19:240:19 | x | | associated_types.rs:236:21:236:21 | T | +| associated_types.rs:240:19:240:25 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:241:13:241:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:241:19:241:25 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:241:23:241:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:241:23:241:24 | &x | TRef | associated_types.rs:236:21:236:21 | T | +| associated_types.rs:241:24:241:24 | x | | associated_types.rs:236:21:236:21 | T | +| associated_types.rs:242:13:242:14 | _b | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:242:18:242:18 | x | | associated_types.rs:236:21:236:21 | T | +| associated_types.rs:242:18:242:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:246:23:246:23 | x | | associated_types.rs:246:20:246:20 | T | +| associated_types.rs:250:5:254:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:251:13:251:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:251:19:251:19 | x | | associated_types.rs:246:20:246:20 | T | +| associated_types.rs:251:19:251:25 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:252:13:252:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:252:19:252:25 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:252:23:252:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:252:23:252:24 | &x | TRef | associated_types.rs:246:20:246:20 | T | +| associated_types.rs:252:24:252:24 | x | | associated_types.rs:246:20:246:20 | T | +| associated_types.rs:253:13:253:14 | _b | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:253:18:253:18 | x | | associated_types.rs:246:20:246:20 | T | +| associated_types.rs:253:18:253:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:260:17:260:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:260:17:260:21 | SelfParam | TRef | associated_types.rs:256:5:261:5 | Self [trait AssocNameClash] | +| associated_types.rs:263:34:263:34 | x | | associated_types.rs:263:31:263:31 | T | +| associated_types.rs:267:5:270:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:268:13:268:14 | _a | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:268:18:268:18 | x | | associated_types.rs:263:31:263:31 | T | +| associated_types.rs:268:18:268:24 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:269:18:269:18 | x | | associated_types.rs:263:31:263:31 | T | +| associated_types.rs:280:19:280:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:280:19:280:23 | SelfParam | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:280:26:280:26 | a | | associated_types.rs:280:16:280:16 | A | +| associated_types.rs:283:23:283:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:283:23:283:27 | SelfParam | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:283:30:283:30 | a | | associated_types.rs:283:20:283:20 | A | +| associated_types.rs:283:36:283:36 | b | | associated_types.rs:283:20:283:20 | A | +| associated_types.rs:283:76:286:9 | { ... } | | associated_types.rs:277:9:277:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:284:13:284:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:284:13:284:16 | self | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:284:13:284:23 | self.put(...) | | associated_types.rs:277:9:277:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:284:22:284:22 | a | | associated_types.rs:283:20:283:20 | A | +| associated_types.rs:285:13:285:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:285:13:285:16 | self | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:285:13:285:23 | self.put(...) | | associated_types.rs:277:9:277:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:285:22:285:22 | b | | associated_types.rs:283:20:283:20 | A | +| associated_types.rs:294:19:294:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:294:19:294:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:294:26:294:26 | a | | associated_types.rs:294:16:294:16 | A | +| associated_types.rs:294:46:296:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:294:46:296:9 | { ... } | A | associated_types.rs:294:16:294:16 | A | +| associated_types.rs:295:13:295:22 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:295:13:295:22 | Wrapper(...) | A | associated_types.rs:294:16:294:16 | A | +| associated_types.rs:295:21:295:21 | a | | associated_types.rs:294:16:294:16 | A | +| associated_types.rs:299:19:306:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:300:13:300:13 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:300:17:300:17 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:302:13:302:15 | _g1 | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:302:13:302:15 | _g1 | A | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:302:19:302:19 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:302:19:302:29 | s.put(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:302:19:302:29 | s.put(...) | A | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:302:25:302:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:305:13:305:15 | _g2 | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:305:19:305:19 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:305:19:305:40 | s.put_two(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:305:29:305:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:305:35:305:39 | false | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:317:21:317:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:317:21:317:25 | SelfParam | TRef | associated_types.rs:312:5:322:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:319:20:319:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:319:20:319:24 | SelfParam | TRef | associated_types.rs:312:5:322:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:321:20:321:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:321:20:321:24 | SelfParam | TRef | associated_types.rs:312:5:322:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:328:21:328:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:328:21:328:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:328:34:330:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:329:13:329:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:332:20:332:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:332:20:332:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:332:43:334:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:333:13:333:13 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:336:20:336:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:336:20:336:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:336:43:338:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:337:13:337:14 | S2 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:341:19:345:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:342:13:342:23 | _assoc_zero | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:342:27:342:28 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:342:27:342:39 | S3.get_zero() | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:343:13:343:22 | _assoc_one | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:343:26:343:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:343:26:343:37 | S3.get_one() | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:344:13:344:22 | _assoc_two | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:344:26:344:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:344:26:344:37 | S3.get_two() | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:353:24:353:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:353:24:353:28 | SelfParam | TRef | associated_types.rs:351:5:354:5 | Self [trait Subtrait] | +| associated_types.rs:362:23:362:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:362:23:362:27 | SelfParam | TRef | associated_types.rs:356:5:366:5 | Self [trait Subtrait2] | +| associated_types.rs:362:30:362:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:362:48:362:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:362:66:365:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:363:13:363:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:363:13:363:16 | self | TRef | associated_types.rs:356:5:366:5 | Self [trait Subtrait2] | +| associated_types.rs:363:13:363:24 | self.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:363:22:363:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:364:13:364:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:364:13:364:16 | self | TRef | associated_types.rs:356:5:366:5 | Self [trait Subtrait2] | +| associated_types.rs:364:13:364:24 | self.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:364:22:364:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:373:16:373:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:373:16:373:20 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:373:16:373:20 | SelfParam | TRef.T | associated_types.rs:370:10:370:16 | T | +| associated_types.rs:373:39:375:9 | { ... } | | associated_types.rs:370:10:370:16 | T | +| associated_types.rs:374:13:374:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:374:13:374:16 | self | TRef | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:374:13:374:16 | self | TRef.T | associated_types.rs:370:10:370:16 | T | +| associated_types.rs:374:13:374:18 | self.0 | | associated_types.rs:370:10:370:16 | T | +| associated_types.rs:377:16:377:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:377:16:377:20 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:377:16:377:20 | SelfParam | TRef.T | associated_types.rs:370:10:370:16 | T | +| associated_types.rs:377:23:377:30 | _content | | associated_types.rs:370:10:370:16 | T | +| associated_types.rs:377:47:379:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:378:13:378:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:378:22:378:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:378:22:378:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:378:22:378:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:378:22:378:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:378:22:378:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:384:24:384:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:384:24:384:28 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:384:24:384:28 | SelfParam | TRef.T | associated_types.rs:382:10:382:16 | T | +| associated_types.rs:384:47:386:9 | { ... } | | associated_types.rs:382:10:382:16 | T | +| associated_types.rs:385:13:385:19 | (...) | | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:385:13:385:19 | (...) | T | associated_types.rs:382:10:382:16 | T | +| associated_types.rs:385:13:385:21 | ... .0 | | associated_types.rs:382:10:382:16 | T | +| associated_types.rs:385:14:385:18 | * ... | | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:385:14:385:18 | * ... | T | associated_types.rs:382:10:382:16 | T | +| associated_types.rs:385:15:385:18 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:385:15:385:18 | self | TRef | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:385:15:385:18 | self | TRef.T | associated_types.rs:382:10:382:16 | T | +| associated_types.rs:391:24:391:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:391:24:391:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:391:24:391:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:391:47:394:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:391:47:394:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:393:13:393:30 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:393:13:393:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | +| associated_types.rs:399:24:399:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:399:24:399:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:399:24:399:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:399:47:401:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:399:47:401:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:400:13:400:30 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:400:13:400:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | +| associated_types.rs:404:33:404:36 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:404:33:404:36 | item | TRef | associated_types.rs:404:20:404:30 | T | +| associated_types.rs:405:9:405:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:405:9:405:12 | item | TRef | associated_types.rs:404:20:404:30 | T | +| associated_types.rs:408:35:408:38 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:408:35:408:38 | item | TRef | associated_types.rs:408:21:408:32 | T | +| associated_types.rs:408:90:411:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:409:9:409:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:409:9:409:12 | item | TRef | associated_types.rs:408:21:408:32 | T | +| associated_types.rs:409:9:409:20 | item.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:410:9:410:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:410:9:410:12 | item | TRef | associated_types.rs:408:21:408:32 | T | +| associated_types.rs:410:9:410:31 | item.insert_two(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:413:19:422:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:414:13:414:17 | item1 | | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:414:13:414:17 | item1 | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:414:21:414:33 | MyType(...) | | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:414:21:414:33 | MyType(...) | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:414:28:414:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:415:25:415:29 | item1 | | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:415:25:415:29 | item1 | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:417:13:417:17 | item2 | | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:417:13:417:17 | item2 | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:417:21:417:32 | MyType(...) | | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:417:21:417:32 | MyType(...) | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:417:28:417:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:418:37:418:42 | &item2 | | {EXTERNAL LOCATION} | & | +| associated_types.rs:418:37:418:42 | &item2 | TRef | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:418:37:418:42 | &item2 | TRef.T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:418:38:418:42 | item2 | | associated_types.rs:368:5:368:24 | MyType | +| associated_types.rs:418:38:418:42 | item2 | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:420:13:420:21 | _content3 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:420:13:420:21 | _content3 | | {EXTERNAL LOCATION} | char | +| associated_types.rs:420:25:420:34 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:420:25:420:34 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:420:25:420:48 | ... .get_content() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:420:25:420:48 | ... .get_content() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:420:29:420:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:421:13:421:21 | _content4 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:421:13:421:21 | _content4 | | {EXTERNAL LOCATION} | char | +| associated_types.rs:421:25:421:33 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:421:25:421:33 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:421:25:421:47 | ... .get_content() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:421:25:421:47 | ... .get_content() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:421:29:421:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:435:16:435:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:435:16:435:20 | SelfParam | TRef | associated_types.rs:428:5:428:20 | ST | +| associated_types.rs:435:16:435:20 | SelfParam | TRef.T | associated_types.rs:430:10:430:21 | Output | +| associated_types.rs:435:39:437:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:435:39:437:9 | { ... } | E | associated_types.rs:430:10:430:21 | Output | +| associated_types.rs:435:39:437:9 | { ... } | T | associated_types.rs:430:10:430:21 | Output | +| associated_types.rs:436:13:436:22 | Ok(...) | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:436:13:436:22 | Ok(...) | E | associated_types.rs:430:10:430:21 | Output | +| associated_types.rs:436:13:436:22 | Ok(...) | T | associated_types.rs:430:10:430:21 | Output | +| associated_types.rs:436:16:436:19 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:436:16:436:19 | self | TRef | associated_types.rs:428:5:428:20 | ST | +| associated_types.rs:436:16:436:19 | self | TRef.T | associated_types.rs:430:10:430:21 | Output | +| associated_types.rs:436:16:436:21 | self.0 | | associated_types.rs:430:10:430:21 | Output | +| associated_types.rs:440:19:442:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:441:13:441:14 | _y | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:441:13:441:14 | _y | E | {EXTERNAL LOCATION} | bool | +| associated_types.rs:441:13:441:14 | _y | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:441:18:441:25 | ST(...) | | associated_types.rs:428:5:428:20 | ST | +| associated_types.rs:441:18:441:25 | ST(...) | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:441:18:441:31 | ... .get() | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:441:18:441:31 | ... .get() | E | {EXTERNAL LOCATION} | bool | +| associated_types.rs:441:18:441:31 | ... .get() | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:441:21:441:24 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:449:31:449:31 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:449:31:449:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:449:31:449:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:449:61:457:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:451:13:451:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:451:19:451:22 | (...) | | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:451:19:451:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:451:19:451:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:451:20:451:21 | * ... | | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:451:20:451:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:451:21:451:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:451:21:451:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:451:21:451:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:454:13:454:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:454:19:454:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:454:19:454:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:454:19:454:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:454:19:454:25 | t.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:456:13:456:15 | _a3 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:456:19:456:24 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:456:23:456:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:456:23:456:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:456:23:456:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:459:36:459:36 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:459:36:459:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:459:36:459:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:459:36:459:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:459:92:465:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:460:13:460:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:460:19:460:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:460:19:460:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:460:19:460:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:460:19:460:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:460:20:460:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:460:20:460:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:460:20:460:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:460:21:460:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:460:21:460:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:460:21:460:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:460:21:460:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:461:13:461:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:461:19:461:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:461:19:461:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:461:19:461:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:461:19:461:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:461:19:461:25 | t.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:462:13:462:15 | _a3 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:462:19:462:24 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:462:23:462:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:462:23:462:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:462:23:462:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:462:23:462:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:463:13:463:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:463:19:463:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:463:19:463:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:463:19:463:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:463:19:463:36 | ... .get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:463:20:463:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:463:20:463:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:463:20:463:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:463:21:463:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:463:21:463:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:463:21:463:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:463:21:463:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:464:13:464:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:464:19:464:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:464:19:464:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:464:19:464:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:464:19:464:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:464:19:464:33 | t.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:468:15:476:1 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:469:5:469:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:470:5:470:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:471:5:471:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:472:5:472:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:473:5:473:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:474:5:474:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:475:5:475:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:15:18:15:22 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:15:18:15:22 | SelfParam | TRef | blanket_impl.rs:9:5:10:14 | S2 | | blanket_impl.rs:15:42:17:9 | { ... } | | {EXTERNAL LOCATION} | & | From 91752e5307c03248c4eec1e712b1526c2305f5d4 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 26 Jan 2026 15:00:00 +0000 Subject: [PATCH 166/433] C++: Enforce uniqueness in 'getVariableSize'. --- cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll b/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll index 675090ad9584..5dfeb8f3137c 100644 --- a/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll +++ b/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll @@ -62,11 +62,13 @@ private Class getRootType(FieldAccess fa) { * unspecified type of `v` is a `ReferenceType`. */ private int getVariableSize(Variable v) { - exists(Type t | - t = v.getUnspecifiedType() and - not t instanceof ReferenceType and - result = t.getSize() - ) + result = + unique(Type t | + t = v.getUnspecifiedType() and + not t instanceof ReferenceType + | + t.getSize() + ) } /** From 13a5249a9de2f02d6f779a1018763e2c3037f4e5 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 26 Jan 2026 15:00:58 +0000 Subject: [PATCH 167/433] C++: Enforce uniqueness in the other branch of 'getSize'. --- cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll | 50 ++++++++++--------- 1 file changed, 26 insertions(+), 24 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll b/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll index 5dfeb8f3137c..e641e50532f2 100644 --- a/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll +++ b/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll @@ -81,30 +81,32 @@ private int getSize(VariableAccess va) { not v instanceof Field and result = getVariableSize(v) or - exists(Class c, int trueSize | - // Otherwise, we find the "outermost" object and compute the size - // as the difference between the size of the type of the "outermost - // object" and the offset of the field relative to that type. - // For example, consider the following structs: - // ``` - // struct S { - // uint32_t x; - // uint32_t y; - // }; - // struct S2 { - // S s; - // uint32_t z; - // }; - // ``` - // Given an object `S2 s2` the size of the buffer `&s2.s.y` - // is the size of the base object type (i.e., `S2`) minutes the offset - // of `y` relative to the type `S2` (i.e., `4`). So the size of the - // buffer is `12 - 4 = 8`. - c = getRootType(va) and - // we calculate the size based on the last field, to avoid including any padding after it - trueSize = max(Field f | | f.getOffsetInClass(c) + getVariableSize(f)) and - result = trueSize - v.(Field).getOffsetInClass(c) - ) + result = + unique(Class c, int trueSize | + // Otherwise, we find the "outermost" object and compute the size + // as the difference between the size of the type of the "outermost + // object" and the offset of the field relative to that type. + // For example, consider the following structs: + // ``` + // struct S { + // uint32_t x; + // uint32_t y; + // }; + // struct S2 { + // S s; + // uint32_t z; + // }; + // ``` + // Given an object `S2 s2` the size of the buffer `&s2.s.y` + // is the size of the base object type (i.e., `S2`) minutes the offset + // of `y` relative to the type `S2` (i.e., `4`). So the size of the + // buffer is `12 - 4 = 8`. + c = getRootType(va) and + // we calculate the size based on the last field, to avoid including any padding after it + trueSize = max(Field f | | f.getOffsetInClass(c) + getVariableSize(f)) + | + trueSize - v.(Field).getOffsetInClass(c) + ) ) } From aed0e688f538340684f2953b1e5ce9ec6a61419d Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 26 Jan 2026 15:01:40 +0000 Subject: [PATCH 168/433] C++: Remove uniqueness since it is enforced earlier now. --- cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll b/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll index e641e50532f2..405eb44c7a95 100644 --- a/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll +++ b/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll @@ -120,12 +120,8 @@ private int isSource(Expr bufferExpr, Element why) { exists(Variable bufferVar | bufferVar = bufferExpr.(VariableAccess).getTarget() | // buffer is a fixed size array exists(bufferVar.getUnspecifiedType().(ArrayType).getSize()) and - result = - unique(int size | // more generous than .getSize() itself, when the array is a class field or similar. - size = getSize(bufferExpr) - | - size - ) and + // more generous than .getSize() itself, when the array is a class field or similar. + result = getSize(bufferExpr) and why = bufferVar and not memberMayBeVarSize(_, bufferVar) and not exists(BuiltInOperationBuiltInOffsetOf offsetof | offsetof.getAChild*() = bufferExpr) and From 544015d0a64bacda4001fdd2ef12ef715cd612b8 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 26 Jan 2026 19:12:14 +0000 Subject: [PATCH 169/433] C++: Add change note. --- cpp/ql/lib/change-notes/2026-01-26-buffer-overflow-fps.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/lib/change-notes/2026-01-26-buffer-overflow-fps.md diff --git a/cpp/ql/lib/change-notes/2026-01-26-buffer-overflow-fps.md b/cpp/ql/lib/change-notes/2026-01-26-buffer-overflow-fps.md new file mode 100644 index 000000000000..ea9a5ccf7988 --- /dev/null +++ b/cpp/ql/lib/change-notes/2026-01-26-buffer-overflow-fps.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The `Buffer.qll` library will no longer report incorrect buffer sizes on certain malformed databases. As a result, the queries `cpp/static-buffer-overflow`, `cpp/overflow-buffer`, `cpp/badly-bounded-write`, `cpp/overrunning-write`, `cpp/overrunning-write-with-float`, and `cpp/very-likely-overrunning-write` will report fewer false positives on such databases. \ No newline at end of file From 980c4cf5f4ce55bd7063a750c0655e509dfb9ba5 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 26 Jan 2026 19:12:38 +0000 Subject: [PATCH 170/433] Update cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll b/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll index 405eb44c7a95..0ea41672b5f1 100644 --- a/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll +++ b/cpp/ql/lib/semmle/code/cpp/commons/Buffer.qll @@ -98,7 +98,7 @@ private int getSize(VariableAccess va) { // }; // ``` // Given an object `S2 s2` the size of the buffer `&s2.s.y` - // is the size of the base object type (i.e., `S2`) minutes the offset + // is the size of the base object type (i.e., `S2`) minus the offset // of `y` relative to the type `S2` (i.e., `4`). So the size of the // buffer is `12 - 4 = 8`. c = getRootType(va) and From bd09aad7d54e195db134b53f087ff648c36c470c Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 26 Jan 2026 21:18:57 +0000 Subject: [PATCH 171/433] C++: Add tests. --- .../dataflow-tests/test-source-sink.expected | 36 +++++++++++ .../dataflow/dataflow-tests/test.cpp | 60 +++++++++++++++++++ 2 files changed, 96 insertions(+) diff --git a/cpp/ql/test/library-tests/dataflow/dataflow-tests/test-source-sink.expected b/cpp/ql/test/library-tests/dataflow/dataflow-tests/test-source-sink.expected index d9ac3c3dee56..03a106208a5b 100644 --- a/cpp/ql/test/library-tests/dataflow/dataflow-tests/test-source-sink.expected +++ b/cpp/ql/test/library-tests/dataflow/dataflow-tests/test-source-sink.expected @@ -147,6 +147,29 @@ astFlow | test.cpp:1165:10:1165:15 | call to source | test.cpp:1239:10:1239:26 | * ... | | test.cpp:1195:10:1195:24 | call to indirect_source | test.cpp:1200:19:1200:36 | global_int_ptr_ptr | | test.cpp:1195:10:1195:24 | call to indirect_source | test.cpp:1201:10:1201:27 | global_int_ptr_ptr | +| test.cpp:1258:11:1258:16 | call to source | test.cpp:1259:8:1259:10 | ... ++ | +| test.cpp:1262:7:1262:12 | call to source | test.cpp:1263:8:1263:10 | ... -- | +| test.cpp:1266:7:1266:12 | call to source | test.cpp:1267:8:1267:10 | ++ ... | +| test.cpp:1266:7:1266:12 | call to source | test.cpp:1268:8:1268:8 | x | +| test.cpp:1270:7:1270:12 | call to source | test.cpp:1271:8:1271:10 | -- ... | +| test.cpp:1270:7:1270:12 | call to source | test.cpp:1272:8:1272:8 | x | +| test.cpp:1274:7:1274:12 | call to source | test.cpp:1275:8:1275:14 | ... += ... | +| test.cpp:1274:7:1274:12 | call to source | test.cpp:1276:8:1276:8 | x | +| test.cpp:1278:7:1278:12 | call to source | test.cpp:1279:8:1279:14 | ... -= ... | +| test.cpp:1278:7:1278:12 | call to source | test.cpp:1280:8:1280:8 | x | +| test.cpp:1284:11:1284:16 | call to source | test.cpp:1285:8:1285:20 | ... ? ... : ... | +| test.cpp:1288:7:1288:12 | call to source | test.cpp:1289:8:1289:20 | ... ++ | +| test.cpp:1288:7:1288:12 | call to source | test.cpp:1290:8:1290:8 | x | +| test.cpp:1292:7:1292:12 | call to source | test.cpp:1294:8:1294:8 | x | +| test.cpp:1296:7:1296:12 | call to source | test.cpp:1297:8:1297:18 | ... ? ... : ... | +| test.cpp:1296:7:1296:12 | call to source | test.cpp:1298:8:1298:8 | x | +| test.cpp:1300:7:1300:12 | call to source | test.cpp:1301:8:1301:18 | ... ? ... : ... | +| test.cpp:1300:7:1300:12 | call to source | test.cpp:1302:8:1302:8 | x | +| test.cpp:1304:7:1304:12 | call to source | test.cpp:1305:8:1305:18 | ... ? ... : ... | +| test.cpp:1304:7:1304:12 | call to source | test.cpp:1306:8:1306:8 | x | +| test.cpp:1308:7:1308:12 | call to source | test.cpp:1309:14:1309:16 | ... ++ | +| test.cpp:1312:7:1312:12 | call to source | test.cpp:1313:8:1313:24 | ... ? ... : ... | +| test.cpp:1312:7:1312:12 | call to source | test.cpp:1314:8:1314:8 | x | | true_upon_entry.cpp:17:11:17:16 | call to source | true_upon_entry.cpp:21:8:21:8 | x | | true_upon_entry.cpp:27:9:27:14 | call to source | true_upon_entry.cpp:29:8:29:8 | x | | true_upon_entry.cpp:33:11:33:16 | call to source | true_upon_entry.cpp:39:8:39:8 | x | @@ -354,6 +377,19 @@ irFlow | test.cpp:1195:10:1195:24 | *call to indirect_source | test.cpp:1218:19:1218:36 | **global_int_ptr_ptr | | test.cpp:1195:10:1195:24 | *call to indirect_source | test.cpp:1224:19:1224:37 | ** ... | | test.cpp:1195:10:1195:24 | *call to indirect_source | test.cpp:1227:10:1227:29 | * ... | +| test.cpp:1258:11:1258:16 | call to source | test.cpp:1259:8:1259:10 | ... ++ | +| test.cpp:1262:7:1262:12 | call to source | test.cpp:1263:8:1263:10 | ... -- | +| test.cpp:1284:11:1284:16 | call to source | test.cpp:1285:8:1285:20 | ... ? ... : ... | +| test.cpp:1288:7:1288:12 | call to source | test.cpp:1290:8:1290:8 | x | +| test.cpp:1292:7:1292:12 | call to source | test.cpp:1294:8:1294:8 | x | +| test.cpp:1296:7:1296:12 | call to source | test.cpp:1297:8:1297:18 | ... ? ... : ... | +| test.cpp:1296:7:1296:12 | call to source | test.cpp:1298:8:1298:8 | x | +| test.cpp:1300:7:1300:12 | call to source | test.cpp:1301:8:1301:18 | ... ? ... : ... | +| test.cpp:1300:7:1300:12 | call to source | test.cpp:1302:8:1302:8 | x | +| test.cpp:1304:7:1304:12 | call to source | test.cpp:1306:8:1306:8 | x | +| test.cpp:1308:7:1308:12 | call to source | test.cpp:1309:8:1309:16 | ... ++ | +| test.cpp:1312:7:1312:12 | call to source | test.cpp:1313:8:1313:24 | ... ? ... : ... | +| test.cpp:1312:7:1312:12 | call to source | test.cpp:1314:8:1314:8 | x | | true_upon_entry.cpp:9:11:9:16 | call to source | true_upon_entry.cpp:13:8:13:8 | x | | true_upon_entry.cpp:17:11:17:16 | call to source | true_upon_entry.cpp:21:8:21:8 | x | | true_upon_entry.cpp:27:9:27:14 | call to source | true_upon_entry.cpp:29:8:29:8 | x | diff --git a/cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp b/cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp index 35e6a074cfd0..e1c3ef98fb74 100644 --- a/cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp +++ b/cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp @@ -1252,4 +1252,64 @@ namespace globals_without_explicit_def { calls_set_array(); sink(*global_int_array); // $ ir MISSING: ast } +} + +void crement_test1() { + int x = source(); + sink(x++); // $ ir ast + sink(x); + + x = source(); + sink(x--); // $ ir ast + sink(x); + + x = source(); + sink(++x); // $ SPURIOUS: ast + sink(x); // $ SPURIOUS: ast + + x = source(); + sink(--x); // $ SPURIOUS: ast + sink(x); // $ SPURIOUS: ast + + x = source(); + sink(x += 10); // $ SPURIOUS: ast + sink(x); // $ SPURIOUS: ast + + x = source(); + sink(x -= 10); // $ SPURIOUS: ast + sink(x); // $ SPURIOUS: ast +} + +void crement_test2(bool b, int y) { + int x = source(); + sink(b ? x++ : x--); // $ ir ast + sink(x); + + x = source(); + sink((b ? x : y)++); // $ ast MISSING: ir + sink(x); // $ ir ast + + x = source(); + sink(++(b ? x : y)); + sink(x); // $ ir ast + + x = source(); + sink(b ? x++ : y); // $ ir ast + sink(x); // $ ir ast + + x = source(); + sink(b ? x : y++); // $ ir ast + sink(x); // $ ir ast + + x = source(); + sink(b ? ++x : y); // $ SPURIOUS: ast + sink(x); // $ ir ast + + x = source(); + sink((long)x++); // $ ir ast + sink(x); + + x = source(); + sink(b ? (long)x++ : 0); // $ ir ast + sink(x); // $ ir ast } \ No newline at end of file From e0a7889b71775b0fea11baf90e928170301b738f Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 26 Jan 2026 19:19:13 +0000 Subject: [PATCH 172/433] C++: Undo the hack. --- .../code/cpp/ir/dataflow/internal/SsaImpl.qll | 18 +----------------- .../dataflow-tests/test-source-sink.expected | 4 ++++ .../dataflow/dataflow-tests/test.cpp | 8 ++++---- 3 files changed, 9 insertions(+), 21 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll index fb24a1db69fd..28c756576093 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll @@ -432,23 +432,7 @@ private class DirectUseImpl extends UseImpl, TDirectUseImpl { override string toString() { result = "Use of " + this.getSourceVariable() } final override predicate hasIndexInBlock(IRBlock block, int index) { - // See the comment in `ssa0`'s `OperandBasedUse` for an explanation of this - // predicate's implementation. - if this.getBase().getAst() = any(Cpp::PostfixCrementOperation c).getOperand() - then - exists(Operand op, int indirection, Instruction base | - indirection = this.getIndirection() and - base = this.getBase() and - op = - min(Operand cand, int i | - isUse(_, cand, base, indirection, indirectionIndex) and - block.getInstruction(i) = cand.getUse() - | - cand order by i - ) and - block.getInstruction(index) = op.getUse() - ) - else operand.getUse() = block.getInstruction(index) + operand.getUse() = block.getInstruction(index) } private BaseSourceVariableInstruction getBase() { isUse(_, operand, result, _, indirectionIndex) } diff --git a/cpp/ql/test/library-tests/dataflow/dataflow-tests/test-source-sink.expected b/cpp/ql/test/library-tests/dataflow/dataflow-tests/test-source-sink.expected index 03a106208a5b..7b5c1cd0cf09 100644 --- a/cpp/ql/test/library-tests/dataflow/dataflow-tests/test-source-sink.expected +++ b/cpp/ql/test/library-tests/dataflow/dataflow-tests/test-source-sink.expected @@ -378,8 +378,11 @@ irFlow | test.cpp:1195:10:1195:24 | *call to indirect_source | test.cpp:1224:19:1224:37 | ** ... | | test.cpp:1195:10:1195:24 | *call to indirect_source | test.cpp:1227:10:1227:29 | * ... | | test.cpp:1258:11:1258:16 | call to source | test.cpp:1259:8:1259:10 | ... ++ | +| test.cpp:1258:11:1258:16 | call to source | test.cpp:1260:8:1260:8 | x | | test.cpp:1262:7:1262:12 | call to source | test.cpp:1263:8:1263:10 | ... -- | +| test.cpp:1262:7:1262:12 | call to source | test.cpp:1264:8:1264:8 | x | | test.cpp:1284:11:1284:16 | call to source | test.cpp:1285:8:1285:20 | ... ? ... : ... | +| test.cpp:1284:11:1284:16 | call to source | test.cpp:1286:8:1286:8 | x | | test.cpp:1288:7:1288:12 | call to source | test.cpp:1290:8:1290:8 | x | | test.cpp:1292:7:1292:12 | call to source | test.cpp:1294:8:1294:8 | x | | test.cpp:1296:7:1296:12 | call to source | test.cpp:1297:8:1297:18 | ... ? ... : ... | @@ -388,6 +391,7 @@ irFlow | test.cpp:1300:7:1300:12 | call to source | test.cpp:1302:8:1302:8 | x | | test.cpp:1304:7:1304:12 | call to source | test.cpp:1306:8:1306:8 | x | | test.cpp:1308:7:1308:12 | call to source | test.cpp:1309:8:1309:16 | ... ++ | +| test.cpp:1308:7:1308:12 | call to source | test.cpp:1310:8:1310:8 | x | | test.cpp:1312:7:1312:12 | call to source | test.cpp:1313:8:1313:24 | ... ? ... : ... | | test.cpp:1312:7:1312:12 | call to source | test.cpp:1314:8:1314:8 | x | | true_upon_entry.cpp:9:11:9:16 | call to source | true_upon_entry.cpp:13:8:13:8 | x | diff --git a/cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp b/cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp index e1c3ef98fb74..e42a5652729d 100644 --- a/cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp +++ b/cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp @@ -1257,11 +1257,11 @@ namespace globals_without_explicit_def { void crement_test1() { int x = source(); sink(x++); // $ ir ast - sink(x); + sink(x); // $ SPURIOUS: ir x = source(); sink(x--); // $ ir ast - sink(x); + sink(x); // $ SPURIOUS: ir x = source(); sink(++x); // $ SPURIOUS: ast @@ -1283,7 +1283,7 @@ void crement_test1() { void crement_test2(bool b, int y) { int x = source(); sink(b ? x++ : x--); // $ ir ast - sink(x); + sink(x); // $ SPURIOUS: ir x = source(); sink((b ? x : y)++); // $ ast MISSING: ir @@ -1307,7 +1307,7 @@ void crement_test2(bool b, int y) { x = source(); sink((long)x++); // $ ir ast - sink(x); + sink(x); // $ SPURIOUS: ir x = source(); sink(b ? (long)x++ : 0); // $ ir ast From 0f4f0b880a781323ab9d62c353b14d4e2ed5f218 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 26 Jan 2026 22:32:02 +0000 Subject: [PATCH 173/433] update codeql documentation --- .../codeql-changelog/codeql-cli-2.23.1.rst | 4 +- .../codeql-changelog/codeql-cli-2.23.9.rst | 25 ++ .../codeql-changelog/codeql-cli-2.24.0.rst | 222 ++++++++++++++++++ .../codeql-changelog/index.rst | 2 + 4 files changed, 251 insertions(+), 2 deletions(-) create mode 100644 docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.9.rst create mode 100644 docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.0.rst diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst index ff22a3f647cf..27f1eee84edc 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst @@ -88,7 +88,7 @@ JavaScript/TypeScript * Data flow is now tracked through the :code:`Promise.try` and :code:`Array.prototype.with` functions. * Query :code:`js/index-out-of-bounds` no longer produces a false-positive when a strictly-less-than check overrides a previous less-than-or-equal test. * The query :code:`js/remote-property-injection` now detects property injection vulnerabilities through object enumeration patterns such as :code:`Object.keys()`. -* The query "Permissive CORS configuration" (:code:`js/cors-permissive-configuration`) has been promoted from experimental and is now part of the default security suite. Thank you to @maikypedia who `submitted the original experimental query `__! +* The query "Permissive CORS configuration" (:code:`js/cors-permissive-configuration`) has been promoted from experimental and is now part of the default security suite. Thank you to @maikypedia who `submitted the original experimental query `__\ ! Python """""" @@ -126,7 +126,7 @@ Golang """""" * The second argument of the :code:`CreateTemp` function, from the :code:`os` package, is no longer a path-injection sink due to proper sanitization by Go. -* The query "Uncontrolled data used in path expression" (:code:`go/path-injection`) now detects sanitizing a path by adding :code:`os.PathSeparator` or ``\`` to the beginning. +* The query "Uncontrolled data used in path expression" (:code:`go/path-injection`) now detects sanitizing a path by adding :code:`os.PathSeparator` or :code:`\` to the beginning. Java/Kotlin """"""""""" diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.9.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.9.rst new file mode 100644 index 000000000000..08013149a979 --- /dev/null +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.9.rst @@ -0,0 +1,25 @@ +.. _codeql-cli-2.23.9: + +========================== +CodeQL 2.23.9 (2026-01-09) +========================== + +.. contents:: Contents + :depth: 2 + :local: + :backlinks: none + +This is an overview of changes in the CodeQL CLI and relevant CodeQL query and library packs. For additional updates on changes to the CodeQL code scanning experience, check out the `code scanning section on the GitHub blog `__, `relevant GitHub Changelog updates `__, `changes in the CodeQL extension for Visual Studio Code `__, and the `CodeQL Action changelog `__. + +Security Coverage +----------------- + +CodeQL 2.23.9 runs a total of 491 security queries when configured with the Default suite (covering 166 CWE). The Extended suite enables an additional 135 queries (covering 35 more CWE). + +CodeQL CLI +---------- + +Deprecations +~~~~~~~~~~~~ + +* Support for Kotlin version 1.6 and 1.7 has been deprecated and will be removed from CodeQL version 2.24.1. Starting with version 2.24.1, users will need to use Kotlin version >= 1.8 to extract Kotlin databases. diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.0.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.0.rst new file mode 100644 index 000000000000..5182787caba4 --- /dev/null +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.0.rst @@ -0,0 +1,222 @@ +.. _codeql-cli-2.24.0: + +========================== +CodeQL 2.24.0 (2026-01-26) +========================== + +.. contents:: Contents + :depth: 2 + :local: + :backlinks: none + +This is an overview of changes in the CodeQL CLI and relevant CodeQL query and library packs. For additional updates on changes to the CodeQL code scanning experience, check out the `code scanning section on the GitHub blog `__, `relevant GitHub Changelog updates `__, `changes in the CodeQL extension for Visual Studio Code `__, and the `CodeQL Action changelog `__. + +Security Coverage +----------------- + +CodeQL 2.24.0 runs a total of 491 security queries when configured with the Default suite (covering 166 CWE). The Extended suite enables an additional 135 queries (covering 35 more CWE). + +CodeQL CLI +---------- + +Miscellaneous +~~~~~~~~~~~~~ + +* The OWASP Java HTML Sanitizer library used by the CodeQL CLI for internal documentation generation commands has been updated to version + \ `20260102.1 `__. +* The build of Eclipse Temurin OpenJDK that is used to run the CodeQL CLI has been updated to version 21.0.9. + +Query Packs +----------- + +Major Analysis Improvements +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +JavaScript/TypeScript +""""""""""""""""""""" + +* JavaScript files with an average line length greater than 200 are now considered minified and will no longer be analyzed. + For use-cases where minified files should be analyzed, the original behavior can be restored by setting the environment variable + :code:`CODEQL_EXTRACTOR_JAVASCRIPT_ALLOW_MINIFIED_FILES=true`. + +Minor Analysis Improvements +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +C/C++ +""""" + +* The :code:`cpp/constant-comparison` query has been updated to not produce false positives for constants that are now represented by their unfolded expression trees. + +C# +"" + +* Added :code:`NHibernate.ISession.CreateSQLQuery`, :code:`NHibernate.IStatelessSession.CreateSQLQuery` and :code:`NHibernate.Impl.AbstractSessionImpl.CreateSQLQuery` as SQL injection sinks. +* The :code:`Missing cross-site request forgery token validation` query was extended to support ASP.NET Core. + +Java/Kotlin +""""""""""" + +* Added sink models for :code:`com.couchbase` supporting SQL Injection and Hardcoded Credentials queries. +* Java thread safety analysis now understands initialization to thread safe classes inside constructors. + +JavaScript/TypeScript +""""""""""""""""""""" + +* The model of :code:`vue-router` now properly detects taint sources in cases where the :code:`props` property is a callback. +* Fixed a bug in the Next.js model that would cause the analysis to miss server-side taint sources in files named :code:`route` or :code:`page` appearing outside :code:`api` and :code:`pages` folders. +* :code:`new Response(x)` is no longer seen as a reflected XSS sink when no :code:`content-type` header is set, since the content type defaults to :code:`text/plain`. + +Rust +"""" + +* Fixed common false positives for the :code:`rust/unused-variable` and :code:`rust/unused-value` queries. +* Fixed false positives from the :code:`rust/access-invalid-pointer` query, by only considering dereferences of raw pointers as sinks. +* Fixed false positives from the :code:`rust/access-after-lifetime-ended` query, involving calls to trait methods. +* The :code:`rust/hard-coded-cryptographic-value` query has been extended with new heuristic sinks identifying passwords, initialization vectors, nonces and salts. + +Query Metadata Changes +~~~~~~~~~~~~~~~~~~~~~~ + +C# +"" + +* Updated the :code:`name`, :code:`description`, and alert message of :code:`cs/path-combine` to have more details about why it's a problem. + +Language Libraries +------------------ + +Bug Fixes +~~~~~~~~~ + +C/C++ +""""" + +* Fixed a bug in the :code:`DataFlow::BarrierGuard<...>::getABarrierNode` predicate which caused the predicate to return :code:`DataFlow::Node`\ s with incorrect indirections. If you use :code:`getABarrierNode` to implement barriers in a dataflow/taint-tracking query it may result in more query results. You can use :code:`DataFlow::BarrierGuard<...>::getAnIndirectBarrierNode` to remove those query results. + +C# +"" + +* Fixed two issues affecting build mode :code:`none`\ : + + * Corrected version sorting logic when detecting the newest .NET framework to use. + * Improved stability for .NET 10 compatibility. + +* Fixed an issue where compiler-generated files were not being extracted. The extractor now runs after compilation completes to ensure all generated files are properly analyzed. + +Breaking Changes +~~~~~~~~~~~~~~~~ + +C/C++ +""""" + +* The :code:`_Decimal32`, :code:`_Decimal64`, and :code:`_Decimal128` types are no longer exposed as builtin types. Support for these gcc-specific types was incomplete, and are generally not used in C/C++ codebases. + +Golang +"""""" + +* The query :code:`go/unexpected-frontend-error` has been moved from the :code:`codeql/go-queries` query to the :code:`codeql-go-consistency-queries` query pack. + +Python +"""""" + +* All modules that depend on the points-to analysis have now been removed from the top level :code:`python.qll` module. To access the points-to functionality, import the new :code:`LegacyPointsTo` module. This also means that some predicates have been removed from various classes, for instance :code:`Function.getFunctionObject()`. To access these predicates, import the :code:`LegacyPointsTo` module and use the :code:`FunctionWithPointsTo` class instead. Most cases follow this pattern, but there are a few exceptions: + + * The :code:`getLiteralObject` method on :code:`ImmutableLiteral` subclasses has been replaced with a predicate :code:`getLiteralObject(ImmutableLiteral l)` in the :code:`LegacyPointsTo` module. + * The :code:`getMetrics` method on :code:`Function`, :code:`Class`, and :code:`Module` has been removed. To access metrics, import :code:`LegacyPointsTo` and use the classes :code:`FunctionMetrics`, etc. instead. + +Major Analysis Improvements +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Swift +""""" + +* Upgraded to allow analysis of Swift 6.2.3. +* Upgraded to allow analysis of Swift 6.2.2. + +GitHub Actions +"""""""""""""" + +* The query :code:`actions/code-injection/medium` has been updated to include results which were incorrectly excluded while filtering out results that are reported by :code:`actions/code-injection/critical`. + +Minor Analysis Improvements +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +C/C++ +""""" + +* Some constants will now be represented by their unfolded expression trees. The :code:`isConstant` predicate of :code:`Expr` will no longer yield a result for those constants. + +C# +"" + +* When a code-scanning configuration specifies the :code:`paths:` and/or :code:`paths-ignore:` settings, these are now taken into account by the C# extractor's search for :code:`.config`, :code:`.props`, XML and project files. +* Updated the generated .NET “models as data” runtime models to cover .NET 10. +* C# 14: Support for *implicit* span conversions in the QL library. +* Basic extractor support for .NET 10 is now available. Extraction is supported for .NET 10 projects in both traced mode and :code:`build mode: none`. However, code that uses language features new to C# 14 is not yet fully supported for extraction and analysis. +* Added autobuilder and :code:`build-mode: none` support for :code:`.slnx` solution files. +* In :code:`build mode: none`, .NET 10 is now used by default unless a specific .NET version is specified elsewhere. +* Added implicit reads of :code:`System.Collections.Generic.KeyValuePair.Value` at taint-tracking sinks and at inputs to additional taint steps. As a result, taint-tracking queries will now produce more results when a container is tainted. + +Golang +"""""" + +* When a code-scanning configuration specifies the :code:`paths:` and/or :code:`paths-ignore:` settings, these are now taken into account by the Go extractor's search for :code:`.vue` and HTML files. + +Java/Kotlin +""""""""""" + +* When a code-scanning configuration specifies the :code:`paths:` and/or :code:`paths-ignore:` settings, these are now taken into account by the Java extractor's search for XML and properties files. +* Additional remote flow sources from the :code:`org.springframework.web.socket` package have been modeled. +* A sanitizer has been added to :code:`java/ssrf` to remove alerts when a regular expression check is used to verify that the value is safe. +* URI template variables of all Spring :code:`RestTemplate` methods are now considered as request forgery sinks. Previously only the :code:`getForObject` method was considered. This may lead to more alerts for the query :code:`java/ssrf`. +* Added more dataflow models of :code:`org.apache.commons.fileupload.FileItem`, :code:`javax/jakarta.servlet.http.Part` and :code:`org.apache.commons.fileupload.util.Streams`. + +JavaScript/TypeScript +""""""""""""""""""""" + +* Support :code:`use cache` directives for Next.js 16. +* Added :code:`PreCallGraphStep` flow model for React's :code:`useRef` hook. +* Added a :code:`DomValueSource` that uses the :code:`current` property off the object returned by React's :code:`useRef` hook. + +Python +"""""" + +* When a code-scanning configuration specifies the :code:`paths:` and/or :code:`paths-ignore:` settings, these are now taken into account by the Python extractor's search for YAML files. +* The :code:`compression.zstd` library (added in Python 3.14) is now supported by the :code:`py/decompression-bomb` query. +* Added taint flow model and type model for :code:`urllib.parseurl`. +* Remote flow sources for the :code:`python-socketio` package have been modeled. +* Additional models for remote flow sources for :code:`tornado.websocket.WebSocketHandler` have been added. + +Rust +"""" + +* The :code:`Deref` trait is now considered during method resolution. This means that method calls on receivers implementing the :code:`Deref` trait will correctly resolve to methods defined on the target type. This may result in additional query results, especially for data flow queries. +* Renamed the :code:`Adt` class to :code:`TypeItem` and moved common predicates from :code:`Struct`, :code:`Enum`, and :code:`Union` to :code:`TypeItem`. +* Added models for the Axum web application framework. +* Reading content of a value now carries taint if the value itself is tainted. For instance, if :code:`s` is tainted then :code:`s.field` is also tainted. This generally improves taint flow. +* The call graph is now more precise for calls that target a trait function with a default implemention. This reduces the number of false positives for data flow queries. +* Improved type inference for raw pointers (:code:`*const` and :code:`*mut`). This includes type inference for the raw borrow operators (:code:`&raw const` and :code:`&raw mut`) and dereferencing of raw pointers. + +Deprecated APIs +~~~~~~~~~~~~~~~ + +C/C++ +""""" + +* The :code:`OverloadedArrayExpr::getArrayOffset/0` predicate has been deprecated. Use :code:`OverloadedArrayExpr::getArrayOffset/1` and :code:`OverloadedArrayExpr::getAnArrayOffset` instead. + +New Features +~~~~~~~~~~~~ + +C/C++ +""""" + +* Added subclasses of :code:`BuiltInOperations` for the :code:`__is_bitwise_cloneable`, :code:`__is_invocable`, and :code:`__is_nothrow_invocable` builtin operations. +* Added a :code:`isThisAccess` predicate to :code:`ParamAccessForType` that holds when the access is to the implicit object parameter. +* Predicates :code:`getArrayOffset/1` and :code:`getAnArrayOffset` have been added to the :code:`OverloadedArrayExpr` class to support C++23 multidimensional subscript operators. + +Python +"""""" + +* The extractor now supports the new, relaxed syntax :code:`except A, B, C: ...` (which would previously have to be written as :code:`except (A, B, C): ...`) as defined in `PEP-758 `__. This may cause changes in results for code that uses Python 2-style exception binding (:code:`except Foo, e: ...`). The more modern format, :code:`except Foo as e: ...` (available since Python 2.6) is unaffected. +* The Python extractor now supports template strings as defined in `PEP-750 `__, through the classes :code:`TemplateString` and :code:`JoinedTemplateString`. diff --git a/docs/codeql/codeql-overview/codeql-changelog/index.rst b/docs/codeql/codeql-overview/codeql-changelog/index.rst index 8eb59792af4f..fbdaac4a7d8f 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/index.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/index.rst @@ -11,6 +11,8 @@ A list of queries for each suite and language `is available here Date: Tue, 27 Jan 2026 00:28:39 +0000 Subject: [PATCH 174/433] Add changed framework coverage reports --- java/documentation/library-coverage/coverage.csv | 6 +++--- java/documentation/library-coverage/coverage.rst | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/java/documentation/library-coverage/coverage.csv b/java/documentation/library-coverage/coverage.csv index c0cac724f934..60a20a483f15 100644 --- a/java/documentation/library-coverage/coverage.csv +++ b/java/documentation/library-coverage/coverage.csv @@ -96,7 +96,7 @@ java.security,21,,583,,,11,10,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,285,29 java.sql,15,1,292,,,,1,1,,,,,,,,,,,,,,,,,,,,,,,,,,,,4,,9,,,,,,,,,,1,,,,274,18 java.text,,,154,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,72,82 java.time,,,131,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,27,104 -java.util,48,2,1339,,,,,,,,,1,,,,,,,,,,,34,,,,3,,,,5,2,,1,2,,,,,,,,,,,,,,2,,,558,781 +java.util,48,2,1340,,,,,,,,,1,,,,,,,,,,,34,,,,3,,,,5,2,,1,2,,,,,,,,,,,,,,2,,,558,782 javafx.scene.web,1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,1,,,,,,,,,,,,,,,,, javax.accessibility,,,63,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,28,35 javax.activation,2,,7,,,,,,,,,,,,,,,,,,,,,,,,1,,,,,,,,,1,,,,,,,,,,,,,,,,7, @@ -153,7 +153,7 @@ org.acegisecurity,,,49,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,49, org.antlr.runtime,1,,,,,,,,,,,,,,,,,,,,,,,,,,1,,,,,,,,,,,,,,,,,,,,,,,,,, org.apache.commons.codec,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,6, org.apache.commons.collections,,,800,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,783 -org.apache.commons.collections4,,,800,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,783 +org.apache.commons.collections4,,,806,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,789 org.apache.commons.compress.archivers.tar,,,4,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,4, org.apache.commons.exec,10,,,,6,,,,,,4,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, org.apache.commons.fileupload,,11,4,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,11,4, @@ -262,7 +262,7 @@ org.springframework.web.portlet,2,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,,,, org.springframework.web.reactive.function.client,2,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,,,,,,,,,,,,,,,, org.springframework.web.servlet,2,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,,,,,,,,,, org.springframework.web.socket,,8,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,8,6, -org.springframework.web.util,,9,157,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,9,132,25 +org.springframework.web.util,,9,159,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,9,134,25 org.thymeleaf,2,,2,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,,,,,,,,,,,,2, org.xml.sax,,,1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,1, org.xmlpull.v1,,3,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,3,, diff --git a/java/documentation/library-coverage/coverage.rst b/java/documentation/library-coverage/coverage.rst index fc3b041d08e0..a7f940ad5717 100644 --- a/java/documentation/library-coverage/coverage.rst +++ b/java/documentation/library-coverage/coverage.rst @@ -9,7 +9,7 @@ Java framework & library support Framework / library,Package,Flow sources,Taint & value steps,Sinks (total),`CWE‑022` :sub:`Path injection`,`CWE‑079` :sub:`Cross-site scripting`,`CWE‑089` :sub:`SQL injection`,`CWE‑090` :sub:`LDAP injection`,`CWE‑094` :sub:`Code injection`,`CWE‑918` :sub:`Request Forgery` Android,``android.*``,52,481,181,1,3,67,,, Android extensions,``androidx.*``,5,183,60,,,,,, - `Apache Commons Collections `_,"``org.apache.commons.collections``, ``org.apache.commons.collections4``",,1600,,,,,,, + `Apache Commons Collections `_,"``org.apache.commons.collections``, ``org.apache.commons.collections4``",,1606,,,,,,, `Apache Commons IO `_,``org.apache.commons.io``,,570,124,105,,,,,15 `Apache Commons Lang `_,``org.apache.commons.lang3``,,425,7,,,,,, `Apache Commons Text `_,``org.apache.commons.text``,,272,,,,,,, @@ -26,7 +26,7 @@ Java framework & library support `JBoss Logging `_,``org.jboss.logging``,,,324,,,,,, `JSON-java `_,``org.json``,,236,,,,,,, `Jackson `_,``com.fasterxml.jackson.*``,,9,2,2,,,,, - Java Standard Library,``java.*``,10,4628,260,99,,9,,,26 + Java Standard Library,``java.*``,10,4629,260,99,,9,,,26 Java extensions,"``javax.*``, ``jakarta.*``",101,4185,90,10,4,2,1,1,4 `Jetty `_,``org.eclipse.jetty.client``,,,2,,,,,,2 Kotlin Standard Library,``kotlin*``,,1849,16,14,,,,,2 @@ -37,9 +37,9 @@ Java framework & library support `Retrofit `_,``retrofit2``,,1,1,,,,,,1 `SLF4J `_,``org.slf4j``,,6,55,,,,,, `SnakeYAML `_,``org.yaml.snakeyaml``,,1,,,,,,, - `Spring `_,``org.springframework.*``,46,492,143,26,,28,14,,35 + `Spring `_,``org.springframework.*``,46,494,143,26,,28,14,,35 `Thymeleaf `_,``org.thymeleaf``,,2,2,,,,,, `jOOQ `_,``org.jooq``,,,1,,,1,,, Others,"``actions.osgi``, ``antlr``, ``ch.ethz.ssh2``, ``cn.hutool.core.codec``, ``com.alibaba.com.caucho.hessian.io``, ``com.alibaba.druid.sql``, ``com.alibaba.fastjson2``, ``com.amazonaws.auth``, ``com.auth0.jwt.algorithms``, ``com.azure.identity``, ``com.caucho.burlap.io``, ``com.caucho.hessian.io``, ``com.cedarsoftware.util.io``, ``com.esotericsoftware.kryo.io``, ``com.esotericsoftware.kryo5.io``, ``com.esotericsoftware.yamlbeans``, ``com.hubspot.jinjava``, ``com.jcraft.jsch``, ``com.microsoft.sqlserver.jdbc``, ``com.mitchellbosecke.pebble``, ``com.opensymphony.xwork2``, ``com.sshtools.j2ssh.authentication``, ``com.sun.crypto.provider``, ``com.sun.jndi.ldap``, ``com.sun.net.httpserver``, ``com.sun.net.ssl``, ``com.sun.rowset``, ``com.sun.security.auth.module``, ``com.sun.security.ntlm``, ``com.sun.security.sasl.digest``, ``com.thoughtworks.xstream``, ``com.trilead.ssh2``, ``com.unboundid.ldap.sdk``, ``com.zaxxer.hikari``, ``flexjson``, ``hudson``, ``io.jsonwebtoken``, ``io.undertow.server.handlers.resource``, ``javafx.scene.web``, ``jenkins``, ``jodd.json``, ``liquibase.database.jvm``, ``liquibase.statement.core``, ``net.lingala.zip4j``, ``net.schmizz.sshj``, ``net.sf.json``, ``net.sf.saxon.s9api``, ``ognl``, ``org.acegisecurity``, ``org.antlr.runtime``, ``org.apache.commons.codec``, ``org.apache.commons.compress.archivers.tar``, ``org.apache.commons.exec``, ``org.apache.commons.fileupload``, ``org.apache.commons.httpclient.util``, ``org.apache.commons.jelly``, ``org.apache.commons.jexl2``, ``org.apache.commons.jexl3``, ``org.apache.commons.lang``, ``org.apache.commons.logging``, ``org.apache.commons.net``, ``org.apache.commons.ognl``, ``org.apache.cxf.catalog``, ``org.apache.cxf.common.classloader``, ``org.apache.cxf.common.jaxb``, ``org.apache.cxf.common.logging``, ``org.apache.cxf.configuration.jsse``, ``org.apache.cxf.helpers``, ``org.apache.cxf.resource``, ``org.apache.cxf.staxutils``, ``org.apache.cxf.tools.corba.utils``, ``org.apache.cxf.tools.util``, ``org.apache.cxf.transform``, ``org.apache.directory.ldap.client.api``, ``org.apache.hadoop.fs``, ``org.apache.hadoop.hive.metastore``, ``org.apache.hadoop.hive.ql.exec``, ``org.apache.hadoop.hive.ql.metadata``, ``org.apache.hc.client5.http.async.methods``, ``org.apache.hc.client5.http.classic.methods``, ``org.apache.hc.client5.http.fluent``, ``org.apache.hive.hcatalog.templeton``, ``org.apache.ibatis.jdbc``, ``org.apache.ibatis.mapping``, ``org.apache.log4j``, ``org.apache.shiro.authc``, ``org.apache.shiro.codec``, ``org.apache.shiro.jndi``, ``org.apache.shiro.mgt``, ``org.apache.sshd.client.session``, ``org.apache.tools.ant``, ``org.apache.tools.zip``, ``org.codehaus.cargo.container.installer``, ``org.dom4j``, ``org.exolab.castor.xml``, ``org.fusesource.leveldbjni``, ``org.geogebra.web.full.main``, ``org.gradle.api.file``, ``org.ho.yaml``, ``org.influxdb``, ``org.jabsorb``, ``org.jboss.vfs``, ``org.jdbi.v3.core``, ``org.jenkins.ui.icon``, ``org.jenkins.ui.symbol``, ``org.keycloak.models.map.storage``, ``org.kohsuke.stapler``, ``org.lastaflute.web``, ``org.mvel2``, ``org.openjdk.jmh.runner.options``, ``org.owasp.esapi``, ``org.pac4j.jwt.config.encryption``, ``org.pac4j.jwt.config.signature``, ``org.scijava.log``, ``org.xml.sax``, ``org.xmlpull.v1``, ``play.libs.ws``, ``play.mvc``, ``ratpack.core.form``, ``ratpack.core.handling``, ``ratpack.core.http``, ``ratpack.exec``, ``ratpack.form``, ``ratpack.func``, ``ratpack.handling``, ``ratpack.http``, ``ratpack.util``, ``software.amazon.awssdk.transfer.s3.model``, ``sun.jvmstat.perfdata.monitor.protocol.local``, ``sun.jvmstat.perfdata.monitor.protocol.rmi``, ``sun.misc``, ``sun.net.ftp``, ``sun.net.www.protocol.http``, ``sun.security.acl``, ``sun.security.jgss.krb5``, ``sun.security.krb5``, ``sun.security.pkcs``, ``sun.security.pkcs11``, ``sun.security.provider``, ``sun.security.ssl``, ``sun.security.x509``, ``sun.tools.jconsole``",108,6034,757,131,6,14,18,,185 - Totals,,363,26372,2681,404,16,134,33,1,409 + Totals,,363,26381,2681,404,16,134,33,1,409 From 5bfeede364cc1570f0f19e16e8a1d972a01992ea Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Tue, 20 Jan 2026 15:30:38 +0000 Subject: [PATCH 175/433] Add dependency on shared controlflow library --- go/ql/lib/qlpack.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/go/ql/lib/qlpack.yml b/go/ql/lib/qlpack.yml index 669112f115df..32769f6bd297 100644 --- a/go/ql/lib/qlpack.yml +++ b/go/ql/lib/qlpack.yml @@ -7,6 +7,7 @@ library: true upgrades: upgrades dependencies: codeql/concepts: ${workspace} + codeql/controlflow: ${workspace} codeql/dataflow: ${workspace} codeql/mad: ${workspace} codeql/threat-models: ${workspace} From 9a94d0474c3fe178747c07f0b97bd74e5a768427 Mon Sep 17 00:00:00 2001 From: Mads Navntoft Date: Mon, 26 Jan 2026 16:09:16 +0100 Subject: [PATCH 176/433] Java: Add support for Struts 7.x package names Updates Struts library to recognize both legacy xwork2 and new struts2 packages: - StrutsActions.qll: Add org.apache.struts2 alternatives for Action, Preparable, ActionSupport - StrutsConventions.qll: Add org.apache.struts2.action.Action alternative This maintains backward compatibility for analyzing Struts 2.x-6.x apps while supporting Struts 7.x which renamed packages from com.opensymphony.xwork2 to org.apache.struts2. --- .../code/java/frameworks/struts/StrutsActions.qll | 11 ++++++++--- .../code/java/frameworks/struts/StrutsConventions.qll | 5 +++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/java/ql/lib/semmle/code/java/frameworks/struts/StrutsActions.qll b/java/ql/lib/semmle/code/java/frameworks/struts/StrutsActions.qll index 729268d4008a..f5b5e345802a 100644 --- a/java/ql/lib/semmle/code/java/frameworks/struts/StrutsActions.qll +++ b/java/ql/lib/semmle/code/java/frameworks/struts/StrutsActions.qll @@ -20,7 +20,10 @@ class Struts2ActionClass extends Class { // If there are no XML files present, then we assume we any class that extends a struts 2 // action must be reflectively constructed, as we have no better indication. not exists(XmlFile xmlFile) and - this.getAnAncestor().hasQualifiedName("com.opensymphony.xwork2", "Action") + ( + this.getAnAncestor().hasQualifiedName("com.opensymphony.xwork2", "Action") or + this.getAnAncestor().hasQualifiedName("org.apache.struts2.action", "Action") + ) or // If there is a struts.xml file, then any class that is specified as an action is considered // to be reflectively constructed. @@ -78,7 +81,8 @@ class Struts2ActionClass extends Class { * Holds if this action class extends the preparable interface. */ predicate isPreparable() { - this.getAnAncestor().hasQualifiedName("com.opensymphony.xwork2", "Preparable") + this.getAnAncestor().hasQualifiedName("com.opensymphony.xwork2", "Preparable") or + this.getAnAncestor().hasQualifiedName("org.apache.struts2", "Preparable") } /** @@ -122,7 +126,8 @@ class Struts2PrepareMethod extends Method { */ class Struts2ActionSupportClass extends Class { Struts2ActionSupportClass() { - this.getASourceSupertype+().hasQualifiedName("com.opensymphony.xwork2", "ActionSupport") + this.getASourceSupertype+().hasQualifiedName("com.opensymphony.xwork2", "ActionSupport") or + this.getASourceSupertype+().hasQualifiedName("org.apache.struts2", "ActionSupport") } /** diff --git a/java/ql/lib/semmle/code/java/frameworks/struts/StrutsConventions.qll b/java/ql/lib/semmle/code/java/frameworks/struts/StrutsConventions.qll index 3e2fd5c0b974..ba70a59df59c 100644 --- a/java/ql/lib/semmle/code/java/frameworks/struts/StrutsConventions.qll +++ b/java/ql/lib/semmle/code/java/frameworks/struts/StrutsConventions.qll @@ -96,7 +96,7 @@ private string getConventionSuffix(RefType refType) { * * The convention plugin identifies as an action class any class that has an ancestor package with * the name "struts", "struts2", "action" or "actions", and either has an indicative suffix on the - * name, or extends com.opensymphony.xwork2.Action. + * name, or extends com.opensymphony.xwork2.Action (Struts 2.x-6.x) or org.apache.struts2.action.Action (Struts 7.x+). */ class Struts2ConventionActionClass extends Class { Struts2ConventionActionClass() { @@ -108,7 +108,8 @@ class Struts2ConventionActionClass extends Class { ) and ( this.getName().matches("%" + getConventionSuffix(this)) or - this.getAnAncestor().hasQualifiedName("com.opensymphony.xwork2", "Action") + this.getAnAncestor().hasQualifiedName("com.opensymphony.xwork2", "Action") or + this.getAnAncestor().hasQualifiedName("org.apache.struts2.action", "Action") ) } From ede05b54ea95f73a0336fb59a69a4f949a4e0996 Mon Sep 17 00:00:00 2001 From: Mads Navntoft Date: Tue, 27 Jan 2026 13:00:16 +0100 Subject: [PATCH 177/433] Java: Add change note for Struts 7.x package name support --- java/ql/lib/change-notes/2026-01-27-struts-7-support.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 java/ql/lib/change-notes/2026-01-27-struts-7-support.md diff --git a/java/ql/lib/change-notes/2026-01-27-struts-7-support.md b/java/ql/lib/change-notes/2026-01-27-struts-7-support.md new file mode 100644 index 000000000000..a94a03567ee2 --- /dev/null +++ b/java/ql/lib/change-notes/2026-01-27-struts-7-support.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* Added support for Struts 7.x package names in the Struts framework library. The library now recognizes both the legacy `com.opensymphony.xwork2` package names (Struts 2.x-6.x) and the new `org.apache.struts2` package names (Struts 7.x+), maintaining backward compatibility while enabling analysis of code using the latest Struts versions. From 3d445be926d574710c8f784f808ef68102debfac Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 26 Jan 2026 16:30:38 +0000 Subject: [PATCH 178/433] C++: Small refactor. --- .../code/cpp/ir/dataflow/internal/SsaImpl.qll | 100 +++++++++--------- 1 file changed, 52 insertions(+), 48 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll index 28c756576093..81f91a0814c3 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll @@ -223,19 +223,8 @@ abstract class DefImpl extends TDefImpl { */ abstract int getIndirection(); - /** - * Gets the base source variable (i.e., the variable without - * any indirection) of this definition or use. - */ - abstract BaseSourceVariable getBaseSourceVariable(); - /** Gets the variable that is defined or used. */ - SourceVariable getSourceVariable() { - exists(BaseSourceVariable v, int indirection | - sourceVariableHasBaseAndIndex(result, v, indirection) and - defHasSourceVariable(this, v, indirection) - ) - } + abstract SourceVariable getSourceVariable(); /** * Holds if this definition is guaranteed to totally overwrite the @@ -293,19 +282,8 @@ abstract class UseImpl extends TUseImpl { /** Gets the indirection index of this use. */ final int getIndirectionIndex() { result = indirectionIndex } - /** - * Gets the base source variable (i.e., the variable without - * any indirection) of this definition or use. - */ - abstract BaseSourceVariable getBaseSourceVariable(); - /** Gets the variable that is defined or used. */ - SourceVariable getSourceVariable() { - exists(BaseSourceVariable v, int indirection | - sourceVariableHasBaseAndIndex(result, v, indirection) and - useHasSourceVariable(this, v, indirection) - ) - } + abstract SourceVariable getSourceVariable(); /** * Holds if this use is guaranteed to read the @@ -314,18 +292,6 @@ abstract class UseImpl extends TUseImpl { abstract predicate isCertain(); } -pragma[noinline] -private predicate defHasSourceVariable(DefImpl def, BaseSourceVariable bv, int ind) { - bv = def.getBaseSourceVariable() and - ind = def.getIndirection() -} - -pragma[noinline] -private predicate useHasSourceVariable(UseImpl use, BaseSourceVariable bv, int ind) { - bv = use.getBaseSourceVariable() and - ind = use.getIndirection() -} - pragma[noinline] private predicate sourceVariableHasBaseAndIndex(SourceVariable v, BaseSourceVariable bv, int ind) { v.getBaseVariable() = bv and @@ -366,8 +332,6 @@ abstract private class DefAddressImpl extends DefImpl, TDefAddressImpl { result.getBaseVariable() = v and result.getIndirection() = 0 } - - final override BaseSourceVariable getBaseSourceVariable() { result = v } } private class DefVariableAddressImpl extends DefAddressImpl { @@ -413,8 +377,17 @@ private class DirectDef extends DefImpl, TDirectDefImpl { isDef(_, _, address, result, _, indirectionIndex) } - override BaseSourceVariable getBaseSourceVariable() { - result = this.getBase().getBaseSourceVariable() + pragma[nomagic] + private predicate hasBaseSourceVariableAndIndirection(BaseSourceVariable v, int indirection) { + v = this.getBase().getBaseSourceVariable() and + indirection = this.getIndirection() + } + + final override SourceVariable getSourceVariable() { + exists(BaseSourceVariable v, int indirection | + sourceVariableHasBaseAndIndex(result, v, indirection) and + this.hasBaseSourceVariableAndIndirection(v, indirection) + ) } override int getIndirection() { isDef(_, _, address, _, result, indirectionIndex) } @@ -437,8 +410,17 @@ private class DirectUseImpl extends UseImpl, TDirectUseImpl { private BaseSourceVariableInstruction getBase() { isUse(_, operand, result, _, indirectionIndex) } - override BaseSourceVariable getBaseSourceVariable() { - result = this.getBase().getBaseSourceVariable() + pragma[nomagic] + private predicate hasBaseSourceVariableAndIndirection(BaseSourceVariable bv, int indirection) { + this.getBase().getBaseSourceVariable() = bv and + this.getIndirection() = indirection + } + + override SourceVariable getSourceVariable() { + exists(BaseSourceVariable v, int indirection | + sourceVariableHasBaseAndIndex(result, v, indirection) and + this.hasBaseSourceVariableAndIndirection(v, indirection) + ) } final Operand getOperand() { result = operand } @@ -516,7 +498,18 @@ class FinalParameterUse extends UseImpl, TFinalParameterUse { result instanceof UnknownLocation } - override BaseIRVariable getBaseSourceVariable() { result.getIRVariable().getAst() = p } + pragma[nomagic] + private predicate hasBaseSourceVariableAndIndirectrion(BaseIRVariable v, int indirection) { + v.getIRVariable().getAst() = p and + indirection = this.getIndirection() + } + + override SourceVariable getSourceVariable() { + exists(BaseIRVariable v, int indirection | + sourceVariableHasBaseAndIndex(result, v, indirection) and + this.hasBaseSourceVariableAndIndirectrion(v, indirection) + ) + } } /** @@ -596,8 +589,17 @@ class GlobalUse extends UseImpl, TGlobalUse { hasReturnPosition(f, block, index) } - override BaseSourceVariable getBaseSourceVariable() { - baseSourceVariableIsGlobal(result, global, f) + pragma[nomagic] + private predicate hasBaseSourceVariableAndIndirection(BaseIRVariable v, int indirection) { + baseSourceVariableIsGlobal(v, global, f) and + indirection = this.getIndirection() + } + + override SourceVariable getSourceVariable() { + exists(BaseIRVariable v, int indirection | + sourceVariableHasBaseAndIndex(result, v, indirection) and + this.hasBaseSourceVariableAndIndirection(v, indirection) + ) } final override Cpp::Location getLocation() { result = f.getLocation() } @@ -642,9 +644,11 @@ class GlobalDefImpl extends DefImpl, TGlobalDefImpl { ) } - /** Gets the global variable associated with this definition. */ - override BaseSourceVariable getBaseSourceVariable() { - baseSourceVariableIsGlobal(result, global, f) + final override SourceVariable getSourceVariable() { + exists(BaseSourceVariable v | + sourceVariableHasBaseAndIndex(result, v, indirectionIndex) and + baseSourceVariableIsGlobal(v, global, f) + ) } override int getIndirection() { result = indirectionIndex } From db3f22a2e873523a4018708838c90f7c64c3547e Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 26 Jan 2026 20:43:45 +0000 Subject: [PATCH 179/433] C++: Another small refactor. --- .../lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll index 81f91a0814c3..c7f622f81d39 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll @@ -232,8 +232,8 @@ abstract class DefImpl extends TDefImpl { */ abstract predicate isCertain(); - /** Gets the value written to the destination variable by this definition. */ - abstract Node0Impl getValue(); + /** Gets the value written to the destination variable by this definition, if any. */ + Node0Impl getValue() { none() } /** Gets the operand that represents the address of this definition, if any. */ Operand getAddressOperand() { none() } @@ -324,8 +324,6 @@ abstract private class DefAddressImpl extends DefImpl, TDefAddressImpl { final override predicate isCertain() { any() } - final override Node0Impl getValue() { none() } - override Cpp::Location getLocation() { result = v.getLocation() } final override SourceVariable getSourceVariable() { @@ -653,8 +651,6 @@ class GlobalDefImpl extends DefImpl, TGlobalDefImpl { override int getIndirection() { result = indirectionIndex } - override Node0Impl getValue() { none() } - override predicate isCertain() { any() } /** From 97a0b9f0ca4df6bf3253ba6deb1ab95fb73e1e68 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Tue, 27 Jan 2026 14:40:23 +0000 Subject: [PATCH 180/433] (trivial) Remove double spaces in qhelp --- java/ql/src/Likely Bugs/Concurrency/UnreleasedLock.qhelp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/java/ql/src/Likely Bugs/Concurrency/UnreleasedLock.qhelp b/java/ql/src/Likely Bugs/Concurrency/UnreleasedLock.qhelp index eb8dd211083c..e3029c6249d2 100644 --- a/java/ql/src/Likely Bugs/Concurrency/UnreleasedLock.qhelp +++ b/java/ql/src/Likely Bugs/Concurrency/UnreleasedLock.qhelp @@ -6,7 +6,7 @@

When a thread acquires a lock it must make sure to unlock it again; -failing to do so can lead to deadlocks. If a lock allows a thread to acquire +failing to do so can lead to deadlocks. If a lock allows a thread to acquire it multiple times, for example java.util.concurrent.locks.ReentrantLock, then the number of locks must match the number of unlocks in order to fully release the lock. @@ -17,7 +17,7 @@ release the lock.

It is recommended practice always to immediately follow a call to lock with a try block and place the call to unlock inside the -finally block. Beware of calls inside the finally block +finally block. Beware of calls inside the finally block that could cause exceptions, as this may result in skipping the call to unlock.

From 0b8b75ac2557152a0c306ab145faf039212ffc66 Mon Sep 17 00:00:00 2001 From: Jon Janego Date: Tue, 27 Jan 2026 09:10:37 -0600 Subject: [PATCH 181/433] Update codeql-cli-2.23.1.rst --- .../codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst index 27f1eee84edc..298e45f18fd8 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst @@ -126,7 +126,7 @@ Golang """""" * The second argument of the :code:`CreateTemp` function, from the :code:`os` package, is no longer a path-injection sink due to proper sanitization by Go. -* The query "Uncontrolled data used in path expression" (:code:`go/path-injection`) now detects sanitizing a path by adding :code:`os.PathSeparator` or :code:`\` to the beginning. +* The query "Uncontrolled data used in path expression" (:code:`go/path-injection`) now detects sanitizing a path by adding :code:`os.PathSeparator` or ``\`` to the beginning. Java/Kotlin """"""""""" From 5a08adc06cb9f0bf2adb702dfeeb235492bd3efc Mon Sep 17 00:00:00 2001 From: Jon Janego Date: Tue, 27 Jan 2026 09:11:01 -0600 Subject: [PATCH 182/433] Update docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst index 298e45f18fd8..ff22a3f647cf 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst @@ -88,7 +88,7 @@ JavaScript/TypeScript * Data flow is now tracked through the :code:`Promise.try` and :code:`Array.prototype.with` functions. * Query :code:`js/index-out-of-bounds` no longer produces a false-positive when a strictly-less-than check overrides a previous less-than-or-equal test. * The query :code:`js/remote-property-injection` now detects property injection vulnerabilities through object enumeration patterns such as :code:`Object.keys()`. -* The query "Permissive CORS configuration" (:code:`js/cors-permissive-configuration`) has been promoted from experimental and is now part of the default security suite. Thank you to @maikypedia who `submitted the original experimental query `__\ ! +* The query "Permissive CORS configuration" (:code:`js/cors-permissive-configuration`) has been promoted from experimental and is now part of the default security suite. Thank you to @maikypedia who `submitted the original experimental query `__! Python """""" From 1c5a9053f992e75abab6f8d039f6ddf8c0c2e8b0 Mon Sep 17 00:00:00 2001 From: Jon Janego Date: Tue, 27 Jan 2026 09:17:40 -0600 Subject: [PATCH 183/433] Fix typo in call graph description in change notes --- rust/ql/lib/change-notes/released/0.2.4.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/ql/lib/change-notes/released/0.2.4.md b/rust/ql/lib/change-notes/released/0.2.4.md index 3920a3080444..30584dc17ec2 100644 --- a/rust/ql/lib/change-notes/released/0.2.4.md +++ b/rust/ql/lib/change-notes/released/0.2.4.md @@ -6,5 +6,5 @@ * Renamed the `Adt` class to `TypeItem` and moved common predicates from `Struct`, `Enum`, and `Union` to `TypeItem`. * Added models for the Axum web application framework. * Reading content of a value now carries taint if the value itself is tainted. For instance, if `s` is tainted then `s.field` is also tainted. This generally improves taint flow. -* The call graph is now more precise for calls that target a trait function with a default implemention. This reduces the number of false positives for data flow queries. +* The call graph is now more precise for calls that target a trait function with a default implementation. This reduces the number of false positives for data flow queries. * Improved type inference for raw pointers (`*const` and `*mut`). This includes type inference for the raw borrow operators (`&raw const` and `&raw mut`) and dereferencing of raw pointers. From 4526afc29fe7cc04779909dcb804227824a753fa Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 19 Jan 2026 15:25:25 +0100 Subject: [PATCH 184/433] Rust: Paths to associated types resolve to the associated type if implementation is unclear --- .../codeql/rust/internal/PathResolution.qll | 164 ++++++++++-------- .../library-tests/path-resolution/main.rs | 8 +- .../path-resolution/path-resolution.expected | 60 +++---- .../PathResolutionConsistency.expected | 5 - .../TypeInferenceConsistency.expected | 3 - .../type-inference/associated_types.rs | 8 +- .../type-inference/type-inference.expected | 20 --- 7 files changed, 124 insertions(+), 144 deletions(-) delete mode 100644 rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected diff --git a/rust/ql/lib/codeql/rust/internal/PathResolution.qll b/rust/ql/lib/codeql/rust/internal/PathResolution.qll index f30625807b43..00582e584f80 100644 --- a/rust/ql/lib/codeql/rust/internal/PathResolution.qll +++ b/rust/ql/lib/codeql/rust/internal/PathResolution.qll @@ -110,18 +110,15 @@ pragma[nomagic] private ItemNode getAChildSuccessor(ItemNode item, string name, SuccessorKind kind) { item = result.getImmediateParent() and name = result.getName() and + // Associated types in `impl` and `trait` blocks are handled elsewhere + not (item instanceof ImplOrTraitItemNode and result instanceof AssocItem) and // type parameters are only available inside the declaring item if result instanceof TypeParam then kind.isInternal() else - // associated items must always be qualified, also within the declaring - // item (using `Self`) - if item instanceof ImplOrTraitItemNode and result instanceof AssocItem - then kind.isExternal() - else - if result.isPublic() - then kind.isBoth() - else kind.isInternal() + if result.isPublic() + then kind.isBoth() + else kind.isInternal() } private module UseOption = Option; @@ -327,30 +324,24 @@ abstract class ItemNode extends Locatable { ) ) or - // a trait has access to the associated items of its supertraits - this = - any(TraitItemNodeImpl trait | - result = trait.resolveABoundCand().getASuccessor(name, kind, useOpt) and - kind.isExternalOrBoth() and - result instanceof AssocItemNode and - not trait.hasAssocItem(name) - ) + exists(TraitItemNodeImpl trait | this = trait | + result = trait.getAssocItem(name) + or + // a trait has access to the associated items of its supertraits + not trait.hasAssocItem(name) and + result = trait.resolveABoundCand().getASuccessor(name).(AssocItemNode) + ) and + kind.isExternal() and + useOpt.isNone() or // items made available by an implementation where `this` is the implementing type - typeImplEdge(this, _, name, kind, result, useOpt) - or - // trait items with default implementations made available in an implementation - exists(ImplItemNodeImpl impl, TraitItemNode trait | - this = impl and - trait = impl.resolveTraitTyCand() and - result = trait.getASuccessor(name, kind, useOpt) and - // do not inherit default implementations from super traits; those are inherited by - // their `impl` blocks - result = trait.getAssocItem(name) and - result.(AssocItemNode).hasImplementation() and - kind.isExternalOrBoth() and - not impl.hasAssocItem(name) - ) + typeImplEdge(this, _, name, result) and + kind.isExternal() and + useOpt.isNone() + or + implEdge(this, name, result) and + kind.isExternal() and + useOpt.isNone() or // type parameters have access to the associated items of its bounds result = @@ -413,14 +404,8 @@ abstract class ItemNode extends Locatable { this instanceof SourceFile and builtin(name, result) or - exists(ImplOrTraitItemNode i | - name = "Self" and - this = i.getAnItemInSelfScope() - | - result = i.(Trait) - or - result = i.(ImplItemNodeImpl).resolveSelfTyCand() - ) + name = "Self" and + this = result.(ImplOrTraitItemNode).getAnItemInSelfScope() or name = "crate" and this = result.(CrateItemNode).getASourceFile() @@ -755,7 +740,7 @@ abstract class ImplOrTraitItemNode extends ItemNode { } /** Gets an associated item belonging to this trait or `impl` block. */ - abstract AssocItemNode getAnAssocItem(); + AssocItemNode getAnAssocItem() { result = this.getADescendant() } /** Gets the associated item named `name` belonging to this trait or `impl` block. */ pragma[nomagic] @@ -807,12 +792,12 @@ final class ImplItemNode extends ImplOrTraitItemNode instanceof Impl { TraitItemNode resolveTraitTy() { result = resolvePath(this.getTraitPath()) } - override AssocItemNode getAnAssocItem() { result = this.getADescendant() } - override string getName() { result = "(impl)" } override Namespace getNamespace() { - result.isType() // can be referenced with `Self` + // `impl` blocks are referred to using `Self` paths which can appear both as + // types and as values (when the implementing type is a tuple-like struct). + result.isType() or result.isValue() } override TypeParam getTypeParam(int i) { result = super.getGenericParamList().getTypeParam(i) } @@ -985,6 +970,18 @@ private class ImplItemNodeImpl extends ImplItemNode { } TraitItemNodeImpl resolveTraitTyCand() { result = resolvePathCand(this.getTraitPath()) } + + /** + * Gets the associated item named `name` in this impl block or the default + * inherited from the trait being implemented. + */ + AssocItemNode getAssocItemOrDefault(string name) { + result = this.getAssocItem(name) + or + not this.hasAssocItem(name) and + result = this.resolveTraitTyCand().getAssocItem(name) and + result.hasImplementation() + } } private class StructItemNode extends TypeItemTypeItemNode, ParameterizableItemNode instanceof Struct @@ -1020,8 +1017,6 @@ final class TraitItemNode extends ImplOrTraitItemNode, TypeItemNode instanceof T ItemNode resolveABound() { result = this.resolveBound(_) } - override AssocItemNode getAnAssocItem() { result = this.getADescendant() } - override string getName() { result = Trait.super.getName().getText() } override Namespace getNamespace() { result.isType() } @@ -1790,7 +1785,15 @@ private module DollarCrateResolution { pragma[nomagic] private ItemNode resolvePathCand0(PathExt path, Namespace ns) { - result = unqualifiedPathLookup(path, ns, _) + exists(ItemNode res | + res = unqualifiedPathLookup(path, ns, _) and + if + not any(PathExt parent).getQualifier() = path and + isUnqualifiedSelfPath(path) and + res instanceof ImplItemNode + then result = res.(ImplItemNodeImpl).resolveSelfTyCand() + else result = res + ) or DollarCrateResolution::resolveDollarCrate(path, result) and ns = result.getNamespace() @@ -1852,35 +1855,12 @@ private predicate checkQualifiedVisibility( not i instanceof TypeParam } -pragma[nomagic] -private predicate isImplSelfQualifiedPath( - ImplItemNode impl, PathExt qualifier, PathExt path, string name -) { - qualifier = impl.getASelfPath() and - qualifier = path.getQualifier() and - name = path.getText() -} - -private ItemNode resolveImplSelfQualified(PathExt qualifier, PathExt path, Namespace ns) { - exists(ImplItemNode impl, string name | - isImplSelfQualifiedPath(impl, qualifier, path, name) and - result = impl.getAssocItem(name) and - ns = result.getNamespace() - ) -} - /** * Gets the item that `path` resolves to in `ns` when `qualifier` is the * qualifier of `path` and `qualifier` resolves to `q`, if any. */ pragma[nomagic] private ItemNode resolvePathCandQualified(PathExt qualifier, ItemNode q, PathExt path, Namespace ns) { - // Special case for `Self::Assoc`; this always refers to the associated - // item in the enclosing `impl` block, if available. - q = resolvePathCandQualifier(qualifier, path, _) and - result = resolveImplSelfQualified(qualifier, path, ns) - or - not exists(resolveImplSelfQualified(qualifier, path, ns)) and exists(string name, SuccessorKind kind, UseOption useOpt | q = resolvePathCandQualifier(qualifier, path, name) and result = getASuccessor(q, name, ns, kind, useOpt) and @@ -1940,6 +1920,37 @@ private predicate macroExportEdge(CrateItemNode crate, string name, MacroItemNod name = macro.getName() } +/** + * Holds if a `Self` path inside `impl` might refer to a function named `name` + * from another impl block. + */ +pragma[nomagic] +private predicate relevantSelfFunctionName(ImplItemNodeImpl impl, string name) { + any(Path path | path.getQualifier() = impl.getASelfPath()).getText() = name and + not impl.hasAssocItem(name) +} + +/** + * Holds if `impl` has a `node` available externally at `name`. + * + * Since `Self` in an impl block resolves to the impl block, this corresponds to + * the items that should be available on `Self` within the `impl` block. + */ +private predicate implEdge(ImplItemNodeImpl impl, string name, ItemNode node) { + node = impl.getAssocItemOrDefault(name) + or + // Associated types from the implemented trait are available on `Self`. + not impl.hasAssocItem(name) and + node = impl.resolveTraitTyCand().getASuccessor(name).(TypeAliasItemNode) + or + // Items available on the implementing type are available on `Self`. We only + // add these edges when they are relevant. If a type has `n` impl blocks with + // `m` functions each, we would otherwise end up always constructing something + // proportional to `O(n * m)`. + relevantSelfFunctionName(impl, name) and + node = impl.resolveSelfTyCand().getASuccessor(name) +} + /** * Holds if item `i` contains a `mod` or `extern crate` definition that * makes the macro `macro` named `name` available using a `#[macro_use]` @@ -2009,9 +2020,10 @@ private ItemNode resolvePathCand(PathExt path) { /** Get a trait that should be visible when `path` resolves to `node`, if any. */ private Trait getResolvePathTraitUsed(PathExt path, AssocItemNode node) { - exists(TypeItemNode type, ImplItemNodeImpl impl | - node = resolvePathCandQualified(_, type, path, _) and - typeImplEdge(type, impl, _, _, node, _) and + exists(TypeItemNode type, ItemNode qual, ImplItemNodeImpl impl | + node = resolvePathCandQualified(_, qual, path, _) and + type = [qual, qual.(ImplItemNodeImpl).resolveSelfTyCand()] and + typeImplEdge(type, impl, _, node) and result = impl.resolveTraitTyCand() ) } @@ -2182,12 +2194,14 @@ private predicate externCrateEdge( * makes `assoc` available as `name` at `kind`. */ private predicate typeImplEdge( - TypeItemNode typeItem, ImplItemNodeImpl impl, string name, SuccessorKind kind, - AssocItemNode assoc, UseOption useOpt + TypeItemNode typeItem, ImplItemNodeImpl impl, string name, AssocItemNode assoc ) { + assoc = impl.getAssocItemOrDefault(name) and typeItem = impl.resolveSelfTyCand() and - assoc = impl.getASuccessor(name, kind, useOpt) and - kind.isExternalOrBoth() + // Functions in `impl` blocks are made available on the implementing type + // (e.g., `S::fun` is valid) but associated types are not (e.g., `S::Output` + // is invalid). + (assoc instanceof FunctionItemNode or assoc instanceof ConstItemNode) } pragma[nomagic] diff --git a/rust/ql/test/library-tests/path-resolution/main.rs b/rust/ql/test/library-tests/path-resolution/main.rs index 3397d3a7000d..9336666b477d 100644 --- a/rust/ql/test/library-tests/path-resolution/main.rs +++ b/rust/ql/test/library-tests/path-resolution/main.rs @@ -729,7 +729,7 @@ mod m23 { fn f(&self) { println!("m23::>::f"); // $ item=println } // I5 - } + } // implTrait1forS #[rustfmt::skip] pub fn f() { @@ -906,14 +906,14 @@ mod associated_types_subtrait { #[rustfmt::skip] impl Sub for S { // $ item=Sub item=S item=i32 - fn f() -> Self::Out { // $ MISSING: item=SuperAssoc SPURIOUS: item=S::Out item=S::Out item=S::Out + fn f() -> Self::Out { // $ item=SuperAssoc 'a' } } #[rustfmt::skip] impl Sub for S { // $ item=Sub item=S item=bool - fn f() -> Self::Out { // $ MISSING: item=SuperAssoc SPURIOUS: item=S::Out item=S::Out item=S::Out + fn f() -> Self::Out { // $ item=SuperAssoc 1 } } @@ -936,7 +936,7 @@ mod associated_types_subtrait { #[rustfmt::skip] impl SubAlt for S { // $ item=SubAlt item=S item=A - fn f(self) -> Self::Out { // $ MISSING: item=SuperAltAssoc SPURIOUS: item=S::Out item=S::Out item=S::Out + fn f(self) -> Self::Out { // $ item=SuperAltAssoc self.0 } } diff --git a/rust/ql/test/library-tests/path-resolution/path-resolution.expected b/rust/ql/test/library-tests/path-resolution/path-resolution.expected index 00d38d6e70d5..fd1e5fd8503e 100644 --- a/rust/ql/test/library-tests/path-resolution/path-resolution.expected +++ b/rust/ql/test/library-tests/path-resolution/path-resolution.expected @@ -135,7 +135,7 @@ resolvePath | main.rs:169:22:169:29 | MyStruct | main.rs:162:5:162:22 | struct MyStruct | | main.rs:171:13:171:19 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:172:13:172:13 | f | main.rs:164:5:166:5 | fn f | -| main.rs:173:13:173:16 | Self | main.rs:162:5:162:22 | struct MyStruct | +| main.rs:173:13:173:16 | Self | main.rs:168:5:179:5 | impl MyTrait for MyStruct { ... } | | main.rs:173:13:173:19 | ...::g | main.rs:176:9:178:9 | fn g | | main.rs:177:13:177:19 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:182:10:182:17 | MyStruct | main.rs:162:5:162:22 | struct MyStruct | @@ -199,7 +199,7 @@ resolvePath | main.rs:341:10:341:15 | Trait1 | main.rs:307:5:311:5 | trait Trait1 | | main.rs:342:11:342:11 | S | main.rs:338:5:338:13 | struct S | | main.rs:344:13:344:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:345:13:345:16 | Self | main.rs:338:5:338:13 | struct S | +| main.rs:345:13:345:16 | Self | main.rs:340:5:352:5 | impl Trait1 for S { ... } | | main.rs:345:13:345:19 | ...::g | main.rs:349:9:351:9 | fn g | | main.rs:350:13:350:19 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:355:10:355:15 | Trait2 | main.rs:313:5:321:5 | trait Trait2 | @@ -232,11 +232,11 @@ resolvePath | main.rs:418:11:418:11 | S | main.rs:412:5:412:13 | struct S | | main.rs:419:24:419:24 | S | main.rs:412:5:412:13 | struct S | | main.rs:420:13:420:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:421:13:421:16 | Self | main.rs:412:5:412:13 | struct S | +| main.rs:421:13:421:16 | Self | main.rs:414:5:432:5 | impl Trait1::<...> for S { ... } | | main.rs:421:13:421:19 | ...::g | main.rs:425:9:428:9 | fn g | | main.rs:425:24:425:24 | S | main.rs:412:5:412:13 | struct S | | main.rs:426:13:426:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:427:13:427:16 | Self | main.rs:412:5:412:13 | struct S | +| main.rs:427:13:427:16 | Self | main.rs:414:5:432:5 | impl Trait1::<...> for S { ... } | | main.rs:427:13:427:19 | ...::c | main.rs:430:9:431:9 | Const | | main.rs:430:18:430:18 | S | main.rs:412:5:412:13 | struct S | | main.rs:430:22:430:22 | S | main.rs:412:5:412:13 | struct S | @@ -244,10 +244,10 @@ resolvePath | main.rs:436:7:436:7 | S | main.rs:412:5:412:13 | struct S | | main.rs:438:11:438:11 | S | main.rs:412:5:412:13 | struct S | | main.rs:439:24:439:24 | S | main.rs:412:5:412:13 | struct S | -| main.rs:440:13:440:16 | Self | main.rs:412:5:412:13 | struct S | +| main.rs:440:13:440:16 | Self | main.rs:434:5:444:5 | impl Trait2::<...> for S { ... } | | main.rs:440:13:440:19 | ...::g | main.rs:425:9:428:9 | fn g | | main.rs:441:13:441:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:442:13:442:16 | Self | main.rs:412:5:412:13 | struct S | +| main.rs:442:13:442:16 | Self | main.rs:434:5:444:5 | impl Trait2::<...> for S { ... } | | main.rs:442:13:442:19 | ...::c | main.rs:430:9:431:9 | Const | | main.rs:448:9:448:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:449:17:449:17 | S | main.rs:412:5:412:13 | struct S | @@ -269,42 +269,42 @@ resolvePath | main.rs:487:10:487:15 | Trait3 | main.rs:472:5:476:5 | trait Trait3 | | main.rs:487:21:487:22 | S2 | main.rs:484:5:484:14 | struct S2 | | main.rs:488:26:488:28 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:492:20:492:23 | Self | main.rs:484:5:484:14 | struct S2 | +| main.rs:492:20:492:23 | Self | main.rs:486:5:494:5 | impl Trait3 for S2 { ... } | | main.rs:492:20:492:34 | ...::AssocType | main.rs:487:26:489:9 | type AssocType | | main.rs:497:10:497:15 | Trait4 | main.rs:478:5:482:5 | trait Trait4 | | main.rs:497:21:497:22 | S2 | main.rs:484:5:484:14 | struct S2 | | main.rs:498:26:498:29 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:502:13:502:16 | Self | main.rs:484:5:484:14 | struct S2 | +| main.rs:502:13:502:16 | Self | main.rs:496:5:506:5 | impl Trait4 for S2 { ... } | | main.rs:502:13:502:19 | ...::f | main.rs:489:11:493:9 | fn f | | main.rs:503:13:503:14 | S2 | main.rs:484:5:484:14 | struct S2 | | main.rs:503:13:503:17 | ...::f | main.rs:489:11:493:9 | fn f | -| main.rs:504:20:504:23 | Self | main.rs:484:5:484:14 | struct S2 | +| main.rs:504:20:504:23 | Self | main.rs:496:5:506:5 | impl Trait4 for S2 { ... } | | main.rs:504:20:504:34 | ...::AssocType | main.rs:497:26:499:9 | type AssocType | | main.rs:511:23:511:26 | Self | main.rs:508:5:512:5 | trait Trait5 | | main.rs:511:23:511:33 | ...::Assoc | main.rs:509:9:509:19 | type Assoc | | main.rs:515:10:515:15 | Trait5 | main.rs:508:5:512:5 | trait Trait5 | | main.rs:515:21:515:21 | S | main.rs:412:5:412:13 | struct S | | main.rs:516:22:516:24 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:520:16:520:19 | Self | main.rs:412:5:412:13 | struct S | +| main.rs:520:16:520:19 | Self | main.rs:514:5:523:5 | impl Trait5 for S { ... } | | main.rs:520:16:520:26 | ...::Assoc | main.rs:515:25:517:9 | type Assoc | -| main.rs:521:13:521:16 | Self | main.rs:412:5:412:13 | struct S | +| main.rs:521:13:521:16 | Self | main.rs:514:5:523:5 | impl Trait5 for S { ... } | | main.rs:521:13:521:23 | ...::Assoc | main.rs:519:9:522:9 | fn Assoc | | main.rs:525:19:525:20 | T3 | main.rs:525:15:525:16 | T3 | | main.rs:528:10:528:15 | Trait5 | main.rs:508:5:512:5 | trait Trait5 | | main.rs:528:21:528:27 | S3::<...> | main.rs:525:5:525:22 | struct S3 | | main.rs:528:24:528:26 | i32 | {EXTERNAL LOCATION} | struct i32 | | main.rs:529:22:529:24 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:533:16:533:19 | Self | main.rs:525:5:525:22 | struct S3 | +| main.rs:533:16:533:19 | Self | main.rs:527:5:536:5 | impl Trait5 for S3::<...> { ... } | | main.rs:533:16:533:26 | ...::Assoc | main.rs:528:31:530:9 | type Assoc | -| main.rs:534:13:534:16 | Self | main.rs:525:5:525:22 | struct S3 | +| main.rs:534:13:534:16 | Self | main.rs:527:5:536:5 | impl Trait5 for S3::<...> { ... } | | main.rs:534:13:534:23 | ...::Assoc | main.rs:532:9:535:9 | fn Assoc | | main.rs:539:10:539:15 | Trait5 | main.rs:508:5:512:5 | trait Trait5 | | main.rs:539:21:539:28 | S3::<...> | main.rs:525:5:525:22 | struct S3 | | main.rs:539:24:539:27 | bool | {EXTERNAL LOCATION} | struct bool | | main.rs:540:22:540:25 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:544:16:544:19 | Self | main.rs:525:5:525:22 | struct S3 | +| main.rs:544:16:544:19 | Self | main.rs:538:5:547:5 | impl Trait5 for S3::<...> { ... } | | main.rs:544:16:544:26 | ...::Assoc | main.rs:539:32:541:9 | type Assoc | -| main.rs:545:14:545:17 | Self | main.rs:525:5:525:22 | struct S3 | +| main.rs:545:14:545:17 | Self | main.rs:538:5:547:5 | impl Trait5 for S3::<...> { ... } | | main.rs:545:14:545:24 | ...::Assoc | main.rs:543:9:546:9 | fn Assoc | | main.rs:550:10:550:16 | S3::<...> | main.rs:525:5:525:22 | struct S3 | | main.rs:550:13:550:15 | i32 | {EXTERNAL LOCATION} | struct i32 | @@ -338,7 +338,7 @@ resolvePath | main.rs:608:13:608:13 | X | main.rs:586:9:586:21 | struct X | | main.rs:608:13:608:23 | ...::a_method | main.rs:588:26:591:13 | fn a_method | | main.rs:611:18:611:18 | X | main.rs:586:9:586:21 | struct X | -| main.rs:613:21:613:24 | Self | main.rs:586:9:586:21 | struct X | +| main.rs:613:21:613:24 | Self | main.rs:610:13:615:13 | impl X { ... } | | main.rs:613:21:613:34 | ...::a_method | main.rs:588:26:591:13 | fn a_method | | main.rs:619:17:619:17 | m | main.rs:577:5:599:5 | mod m | | main.rs:619:17:619:22 | ...::Bar | main.rs:582:9:584:9 | trait Bar | @@ -441,17 +441,17 @@ resolvePath | main.rs:852:13:852:17 | Error | main.rs:848:13:848:17 | Error | | main.rs:855:22:858:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | | main.rs:856:13:856:17 | Input | main.rs:847:13:847:17 | Input | -| main.rs:857:13:857:16 | Self | main.rs:840:5:843:5 | struct MyImpl | +| main.rs:857:13:857:16 | Self | main.rs:845:5:877:5 | impl Reduce for MyImpl::<...> { ... } | | main.rs:857:13:857:23 | ...::Error | main.rs:859:11:863:9 | type Error | | main.rs:860:22:862:9 | Option::<...> | {EXTERNAL LOCATION} | enum Option | | main.rs:861:11:861:15 | Error | main.rs:848:13:848:17 | Error | | main.rs:865:13:865:17 | Input | main.rs:847:13:847:17 | Input | -| main.rs:870:19:870:22 | Self | main.rs:840:5:843:5 | struct MyImpl | +| main.rs:870:19:870:22 | Self | main.rs:845:5:877:5 | impl Reduce for MyImpl::<...> { ... } | | main.rs:870:19:870:29 | ...::Input | main.rs:855:9:859:9 | type Input | | main.rs:871:14:874:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | -| main.rs:872:13:872:16 | Self | main.rs:840:5:843:5 | struct MyImpl | +| main.rs:872:13:872:16 | Self | main.rs:845:5:877:5 | impl Reduce for MyImpl::<...> { ... } | | main.rs:872:13:872:24 | ...::Output | main.rs:863:11:866:9 | type Output | -| main.rs:873:13:873:16 | Self | main.rs:840:5:843:5 | struct MyImpl | +| main.rs:873:13:873:16 | Self | main.rs:845:5:877:5 | impl Reduce for MyImpl::<...> { ... } | | main.rs:873:13:873:23 | ...::Error | main.rs:859:11:863:9 | type Error | | main.rs:885:16:885:20 | Super | main.rs:881:5:883:5 | trait Super | | main.rs:887:19:887:22 | Self | main.rs:885:5:889:5 | trait Sub | @@ -468,17 +468,13 @@ resolvePath | main.rs:908:10:908:12 | Sub | main.rs:885:5:889:5 | trait Sub | | main.rs:908:18:908:23 | S::<...> | main.rs:891:5:893:6 | struct S | | main.rs:908:20:908:22 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:909:19:909:22 | Self | main.rs:891:5:893:6 | struct S | -| main.rs:909:19:909:27 | ...::Out | main.rs:896:29:898:9 | type Out | -| main.rs:909:19:909:27 | ...::Out | main.rs:902:30:904:9 | type Out | -| main.rs:909:19:909:27 | ...::Out | main.rs:932:33:934:9 | type Out | +| main.rs:909:19:909:22 | Self | main.rs:907:5:912:5 | impl Sub for S::<...> { ... } | +| main.rs:909:19:909:27 | ...::Out | main.rs:882:9:882:17 | type Out | | main.rs:915:10:915:12 | Sub | main.rs:885:5:889:5 | trait Sub | | main.rs:915:18:915:24 | S::<...> | main.rs:891:5:893:6 | struct S | | main.rs:915:20:915:23 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:916:19:916:22 | Self | main.rs:891:5:893:6 | struct S | -| main.rs:916:19:916:27 | ...::Out | main.rs:896:29:898:9 | type Out | -| main.rs:916:19:916:27 | ...::Out | main.rs:902:30:904:9 | type Out | -| main.rs:916:19:916:27 | ...::Out | main.rs:932:33:934:9 | type Out | +| main.rs:916:19:916:22 | Self | main.rs:914:5:919:5 | impl Sub for S::<...> { ... } | +| main.rs:916:19:916:27 | ...::Out | main.rs:882:9:882:17 | type Out | | main.rs:925:19:925:26 | SuperAlt | main.rs:921:5:923:5 | trait SuperAlt | | main.rs:927:23:927:26 | Self | main.rs:925:5:929:5 | trait SubAlt | | main.rs:927:23:927:31 | ...::Out | main.rs:922:9:922:17 | type Out | @@ -489,10 +485,8 @@ resolvePath | main.rs:938:13:938:18 | SubAlt | main.rs:925:5:929:5 | trait SubAlt | | main.rs:938:24:938:27 | S::<...> | main.rs:891:5:893:6 | struct S | | main.rs:938:26:938:26 | A | main.rs:938:10:938:10 | A | -| main.rs:939:23:939:26 | Self | main.rs:891:5:893:6 | struct S | -| main.rs:939:23:939:31 | ...::Out | main.rs:896:29:898:9 | type Out | -| main.rs:939:23:939:31 | ...::Out | main.rs:902:30:904:9 | type Out | -| main.rs:939:23:939:31 | ...::Out | main.rs:932:33:934:9 | type Out | +| main.rs:939:23:939:26 | Self | main.rs:937:5:942:5 | impl SubAlt for S::<...> { ... } | +| main.rs:939:23:939:31 | ...::Out | main.rs:922:9:922:17 | type Out | | main.rs:945:5:945:7 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | | main.rs:945:11:945:14 | self | {EXTERNAL LOCATION} | Crate(std@0.0.0) | | main.rs:947:15:947:17 | ztd | {EXTERNAL LOCATION} | Crate(std@0.0.0) | @@ -536,7 +530,7 @@ resolvePath | main.rs:1041:13:1041:15 | i32 | {EXTERNAL LOCATION} | struct i32 | | main.rs:1046:10:1046:15 | MyEnum | main.rs:1039:5:1043:5 | enum MyEnum | | main.rs:1047:25:1047:27 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:1049:17:1049:20 | Self | main.rs:1039:5:1043:5 | enum MyEnum | +| main.rs:1049:17:1049:20 | Self | main.rs:1045:5:1056:5 | impl MyEnum { ... } | | main.rs:1049:17:1049:23 | ...::A | main.rs:1040:9:1042:9 | A | | main.rs:1060:5:1060:6 | my | main.rs:1:1:1:7 | mod my | | main.rs:1060:5:1060:14 | ...::nested | my.rs:1:1:1:15 | mod nested | diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected index 7b751c9ea8be..97dfe4bc278c 100644 --- a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected @@ -1,7 +1,2 @@ multipleResolvedTargets -| associated_types.rs:393:13:393:30 | ...::default(...) | -| associated_types.rs:400:13:400:30 | ...::default(...) | | main.rs:2871:13:2871:17 | x.f() | -multiplePathResolutions -| associated_types.rs:391:34:391:45 | ...::Output | -| associated_types.rs:399:34:399:45 | ...::Output | diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected deleted file mode 100644 index f2551bcad6ca..000000000000 --- a/rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected +++ /dev/null @@ -1,3 +0,0 @@ -nonUniqueCertainType -| associated_types.rs:391:47:394:9 | { ... } | | -| associated_types.rs:399:47:401:9 | { ... } | | diff --git a/rust/ql/test/library-tests/type-inference/associated_types.rs b/rust/ql/test/library-tests/type-inference/associated_types.rs index b517b63403f8..332b1d554171 100644 --- a/rust/ql/test/library-tests/type-inference/associated_types.rs +++ b/rust/ql/test/library-tests/type-inference/associated_types.rs @@ -390,14 +390,14 @@ mod associated_type_in_supertrait { // Odd::get_content fn get_content(&self) -> Self::Output { // let _x = Self::get(self); - Default::default() // $ target=default + Default::default() // $ MISSING: target=default } } impl Subtrait for Odd { // Odd::get_content fn get_content(&self) -> Self::Output { - Default::default() // $ target=default + Default::default() // $ MISSING: target=default } } @@ -417,8 +417,8 @@ mod associated_type_in_supertrait { let item2 = MyType(true); let _content2 = get_content(&item2); // $ target=get_content MISSING: type=_content2:bool - let _content3 = Odd(42i32).get_content(); // $ target=Odd::get_content type=_content3:bool SPURIOUS: type=_content3:char - let _content4 = Odd(true).get_content(); // $ target=Odd::get_content type=_content4:char SPURIOUS: type=_content4:bool + let _content3 = Odd(42i32).get_content(); // $ target=Odd::get_content MISSING: type=_content3:bool + let _content4 = Odd(true).get_content(); // $ target=Odd::get_content MISSING: type=_content4:char } } diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 14d6ae3115e3..80ee3a2b1d54 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -192,13 +192,9 @@ inferCertainType | associated_types.rs:391:24:391:28 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:391:24:391:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:391:24:391:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:391:47:394:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:391:47:394:9 | { ... } | | {EXTERNAL LOCATION} | char | | associated_types.rs:399:24:399:28 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:399:24:399:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:399:24:399:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | -| associated_types.rs:399:47:401:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:399:47:401:9 | { ... } | | {EXTERNAL LOCATION} | char | | associated_types.rs:404:33:404:36 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:404:33:404:36 | item | TRef | associated_types.rs:404:20:404:30 | T | | associated_types.rs:405:9:405:12 | item | | {EXTERNAL LOCATION} | & | @@ -5020,17 +5016,9 @@ inferType | associated_types.rs:391:24:391:28 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:391:24:391:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:391:24:391:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:391:47:394:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:391:47:394:9 | { ... } | | {EXTERNAL LOCATION} | char | -| associated_types.rs:393:13:393:30 | ...::default(...) | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:393:13:393:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | | associated_types.rs:399:24:399:28 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:399:24:399:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:399:24:399:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | -| associated_types.rs:399:47:401:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:399:47:401:9 | { ... } | | {EXTERNAL LOCATION} | char | -| associated_types.rs:400:13:400:30 | ...::default(...) | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:400:13:400:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | | associated_types.rs:404:33:404:36 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:404:33:404:36 | item | TRef | associated_types.rs:404:20:404:30 | T | | associated_types.rs:405:9:405:12 | item | | {EXTERNAL LOCATION} | & | @@ -5062,19 +5050,11 @@ inferType | associated_types.rs:418:37:418:42 | &item2 | TRef.T | {EXTERNAL LOCATION} | bool | | associated_types.rs:418:38:418:42 | item2 | | associated_types.rs:368:5:368:24 | MyType | | associated_types.rs:418:38:418:42 | item2 | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:420:13:420:21 | _content3 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:420:13:420:21 | _content3 | | {EXTERNAL LOCATION} | char | | associated_types.rs:420:25:420:34 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:420:25:420:34 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:420:25:420:48 | ... .get_content() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:420:25:420:48 | ... .get_content() | | {EXTERNAL LOCATION} | char | | associated_types.rs:420:29:420:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:421:13:421:21 | _content4 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:421:13:421:21 | _content4 | | {EXTERNAL LOCATION} | char | | associated_types.rs:421:25:421:33 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:421:25:421:33 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | -| associated_types.rs:421:25:421:47 | ... .get_content() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:421:25:421:47 | ... .get_content() | | {EXTERNAL LOCATION} | char | | associated_types.rs:421:29:421:32 | true | | {EXTERNAL LOCATION} | bool | | associated_types.rs:435:16:435:20 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:435:16:435:20 | SelfParam | TRef | associated_types.rs:428:5:428:20 | ST | From fa59a8ae240fc5d2ce25a6a063067e3e0fd9ff6e Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 26 Jan 2026 14:55:59 +0100 Subject: [PATCH 185/433] Rust: Implement `TypeMention` for paths that access associated types on concrete types --- .../rust/internal/typeinference/Type.qll | 6 +- .../internal/typeinference/TypeInference.qll | 10 +- .../TypeInferenceConsistency.qll | 6 +- .../internal/typeinference/TypeMention.qll | 1098 +++++++++-------- .../type-inference/associated_types.rs | 32 +- .../type-inference/type-inference.expected | 53 + 6 files changed, 677 insertions(+), 528 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll b/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll index bf25d96cfa4c..983e9a75ee5a 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll @@ -75,7 +75,7 @@ abstract class Type extends TType { abstract TypeParameter getPositionalTypeParameter(int i); /** Gets the default type for the `i`th type parameter, if any. */ - TypeMention getTypeParameterDefault(int i) { none() } + TypeRepr getTypeParameterDefault(int i) { none() } /** * Gets a type parameter of this type. @@ -129,7 +129,7 @@ class DataType extends Type, TDataType { result = TTypeParamTypeParameter(typeItem.getGenericParamList().getTypeParam(i)) } - override TypeMention getTypeParameterDefault(int i) { + override TypeRepr getTypeParameterDefault(int i) { result = typeItem.getGenericParamList().getTypeParam(i).getDefaultType() } @@ -189,7 +189,7 @@ class TraitType extends Type, TTrait { result.(SelfTypeParameter).getTrait() = trait } - override TypeMention getTypeParameterDefault(int i) { + override TypeRepr getTypeParameterDefault(int i) { result = trait.getGenericParamList().getTypeParam(i).getDefaultType() } diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index b051d60d8b4d..e8b5c9c7a19a 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -134,8 +134,8 @@ class TypePath = M1::TypePath; module TypePath = M1::TypePath; -private module Input2 implements InputSig2 { - TypeMention getABaseTypeMention(Type t) { none() } +private module Input2 implements InputSig2 { + PreTypeMention getABaseTypeMention(Type t) { none() } Type getATypeParameterConstraint(TypeParameter tp, TypePath path) { exists(TypeMention tm | result = tm.getTypeAt(path) | @@ -158,7 +158,7 @@ private module Input2 implements InputSig2 { * inference module for more information. */ predicate conditionSatisfiesConstraint( - TypeAbstraction abs, TypeMention condition, TypeMention constraint, boolean transitive + TypeAbstraction abs, PreTypeMention condition, PreTypeMention constraint, boolean transitive ) { // `impl` blocks implementing traits transitive = false and @@ -208,7 +208,7 @@ private module Input2 implements InputSig2 { } } -private module M2 = Make2; +private module M2 = Make2; import M2 @@ -1960,7 +1960,7 @@ private module MethodResolution { pragma[nomagic] predicate hasTypeQualifiedCandidate(ImplItemNode impl) { exists(getCallExprTypeQualifier(this, _)) and - CallExprImpl::getResolvedFunction(this) = impl.getASuccessor(_) + CallExprImpl::getResolvedFunction(this) = impl.getADescendant() } pragma[nomagic] diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll index e50c7393f727..8877962ec2d2 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll @@ -10,7 +10,11 @@ private import TypeInference::Consistency as Consistency import TypeInference::Consistency query predicate illFormedTypeMention(TypeMention tm) { - Consistency::illFormedTypeMention(tm) and + // NOTE: We do not use `illFormedTypeMention` from the shared library as it is + // instantiated with `PreTypeMention` and we are interested in inconsistencies + // for `TypeMention`. + not exists(tm.getTypeAt(TypePath::nil())) and + exists(tm.getLocation()) and // avoid overlap with `PathTypeMention` not tm instanceof PathTypeReprMention and // known limitation for type mentions that would mention an escaping type parameter diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index a5a9eae37156..738b823ca100 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -7,602 +7,694 @@ private import Type private import TypeAbstraction private import TypeInference -/** An AST node that may mention a type. */ -abstract class TypeMention extends AstNode { - /** Gets the type at `path` that this mention resolves to, if any. */ - pragma[nomagic] - abstract Type getTypeAt(TypePath path); +private signature Type getAdditionalPathTypeAtSig(Path p, TypePath typePath); - /** Gets the type that this node resolves to, if any. */ - pragma[nomagic] - final Type getType() { result = this.getTypeAt(TypePath::nil()) } -} +/** + * Constructing the "type hierarchy" (that is, the trait hierarchy and how types + * implement traits) in the shared type inference library relies on type + * mentions. + * + * Furthermore, resolving type mentions such as `::AssocType` + * relies on knowing how `Type` implements `Trait`. This makes type mentions and + * the type hierarchy recursively dependent, which causes non-monotonic + * recursion. + * + * To avoid the recursion, we parameterize the `TypeMention` by a predicate for + * resolving "additional" types for paths. A first instantiation uses the empty + * predicate to create `PreTypeMention` which is used to construct the type + * hierarchy. Afterwards, a second instantiation uses a predicate that can + * resolve paths that rely on the type hierarchy to create the actual + * `TypeMention`. + */ +private module MkTypeMention { + /** An AST node that may mention a type. */ + abstract private class TypeMentionImpl extends AstNode { + /** Gets the type at `path` that this type mention resolves to, if any. */ + pragma[nomagic] + abstract Type getTypeAt(TypePath path); -class TupleTypeReprMention extends TypeMention instanceof TupleTypeRepr { - override Type getTypeAt(TypePath path) { - path.isEmpty() and - result.(TupleType).getArity() = super.getNumberOfFields() - or - exists(TypePath suffix, int i | - result = super.getField(i).(TypeMention).getTypeAt(suffix) and - path = TypePath::cons(getTupleTypeParameter(super.getNumberOfFields(), i), suffix) - ) + /** Gets the root type that this type mention resolves to, if any. */ + pragma[nomagic] + final Type getType() { result = this.getTypeAt(TypePath::nil()) } } -} -class ParenthesizedArgListMention extends TypeMention instanceof ParenthesizedArgList { - override Type getTypeAt(TypePath path) { - path.isEmpty() and - result.(TupleType).getArity() = super.getNumberOfTypeArgs() - or - exists(TypePath suffix, int index | - result = super.getTypeArg(index).getTypeRepr().(TypeMention).getTypeAt(suffix) and - path = TypePath::cons(getTupleTypeParameter(super.getNumberOfTypeArgs(), index), suffix) - ) - } -} + final class TypeMention = TypeMentionImpl; -class ArrayTypeReprMention extends TypeMention instanceof ArrayTypeRepr { - override Type getTypeAt(TypePath path) { - path.isEmpty() and - result instanceof ArrayType - or - exists(TypePath suffix | - result = super.getElementTypeRepr().(TypeMention).getTypeAt(suffix) and - path = TypePath::cons(getArrayTypeParameter(), suffix) - ) + class TupleTypeReprMention extends TypeMentionImpl instanceof TupleTypeRepr { + override Type getTypeAt(TypePath path) { + path.isEmpty() and + result.(TupleType).getArity() = super.getNumberOfFields() + or + exists(TypePath suffix, int i | + result = super.getField(i).(TypeMention).getTypeAt(suffix) and + path = TypePath::cons(getTupleTypeParameter(super.getNumberOfFields(), i), suffix) + ) + } } -} -class RefTypeReprMention extends TypeMention instanceof RefTypeRepr { - private RefType resolveRootType() { - if super.isMut() then result instanceof RefMutType else result instanceof RefSharedType + class ParenthesizedArgListMention extends TypeMentionImpl instanceof ParenthesizedArgList { + override Type getTypeAt(TypePath path) { + path.isEmpty() and + result.(TupleType).getArity() = super.getNumberOfTypeArgs() + or + exists(TypePath suffix, int index | + result = super.getTypeArg(index).getTypeRepr().(TypeMention).getTypeAt(suffix) and + path = TypePath::cons(getTupleTypeParameter(super.getNumberOfTypeArgs(), index), suffix) + ) + } } - override Type getTypeAt(TypePath path) { - path.isEmpty() and result = this.resolveRootType() - or - exists(TypePath suffix | - result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and - path = TypePath::cons(this.resolveRootType().getPositionalTypeParameter(0), suffix) - ) + class ArrayTypeReprMention extends TypeMentionImpl instanceof ArrayTypeRepr { + override Type getTypeAt(TypePath path) { + path.isEmpty() and + result instanceof ArrayType + or + exists(TypePath suffix | + result = super.getElementTypeRepr().(TypeMention).getTypeAt(suffix) and + path = TypePath::cons(getArrayTypeParameter(), suffix) + ) + } } -} -class SliceTypeReprMention extends TypeMention instanceof SliceTypeRepr { - override Type getTypeAt(TypePath path) { - path.isEmpty() and - result instanceof SliceType - or - exists(TypePath suffix | - result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and - path = TypePath::cons(getSliceTypeParameter(), suffix) - ) - } -} + class RefTypeReprMention extends TypeMentionImpl instanceof RefTypeRepr { + private RefType resolveRootType() { + if super.isMut() then result instanceof RefMutType else result instanceof RefSharedType + } -abstract class PathTypeMention extends TypeMention, Path { - abstract Type resolvePathTypeAt(TypePath typePath); + override Type getTypeAt(TypePath path) { + path.isEmpty() and result = this.resolveRootType() + or + exists(TypePath suffix | + result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and + path = TypePath::cons(this.resolveRootType().getPositionalTypeParameter(0), suffix) + ) + } + } - final override Type getTypeAt(TypePath typePath) { - result = this.resolvePathTypeAt(typePath) and - ( - not result instanceof TypeParameter + class SliceTypeReprMention extends TypeMentionImpl instanceof SliceTypeRepr { + override Type getTypeAt(TypePath path) { + path.isEmpty() and + result instanceof SliceType or - // Prevent type parameters from escaping their scope - this = result.(TypeParameter).getDeclaringItem().getAChild*().getADescendant() - ) + exists(TypePath suffix | + result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and + path = TypePath::cons(getSliceTypeParameter(), suffix) + ) + } } -} -class AliasPathTypeMention extends PathTypeMention { - TypeAlias resolved; - TypeMention rhs; + abstract class PathTypeMention extends TypeMentionImpl, Path { + abstract Type resolvePathTypeAt(TypePath typePath); - AliasPathTypeMention() { - resolved = resolvePath(this) and - rhs = resolved.getTypeRepr() + final override Type getTypeAt(TypePath typePath) { + result = getAdditionalPathTypeAt(this, typePath) + or + result = this.resolvePathTypeAt(typePath) and + ( + not result instanceof TypeParameter + or + // Prevent type parameters from escaping their scope + this = result.(TypeParameter).getDeclaringItem().getAChild*().getADescendant() + ) + } } - TypeItemNode getResolved() { result = resolved } + class AdditionalPathTypeMention extends PathTypeMention { + AdditionalPathTypeMention() { exists(getAdditionalPathTypeAt(this, _)) } - /** - * Holds if this path resolved to a type alias with a rhs. that has the - * resulting type at `typePath`. - */ - override Type resolvePathTypeAt(TypePath typePath) { - result = rhs.getTypeAt(typePath) and - not result = pathGetTypeParameter(resolved, _) - or - exists(TypeParameter tp, TypeMention arg, TypePath prefix, TypePath suffix, int i | - tp = rhs.getTypeAt(prefix) and - tp = pathGetTypeParameter(resolved, pragma[only_bind_into](i)) and - arg = this.getSegment().getGenericArgList().getTypeArg(pragma[only_bind_into](i)) and - result = arg.getTypeAt(suffix) and - typePath = prefix.append(suffix) - ) + override Type resolvePathTypeAt(TypePath typePath) { + result = getAdditionalPathTypeAt(this, typePath) + } } -} -/** - * Gets the `i`th type argument of `p`. - * - * Takes into account that variants can have type arguments applied to both the - * enum and the variant itself, e.g. `Option::::Some` is valid in addition - * to `Option::Some::`. - */ -TypeMention getPathTypeArgument(Path p, int i) { - result = p.getSegment().getGenericArgList().getTypeArg(i) - or - resolvePath(p) instanceof Variant and - result = p.getQualifier().getSegment().getGenericArgList().getTypeArg(i) -} - -class NonAliasPathTypeMention extends PathTypeMention { - TypeItemNode resolved; + class AliasPathTypeMention extends PathTypeMention { + TypeAlias resolved; + TypeMention rhs; - NonAliasPathTypeMention() { - resolved = [resolvePath(this), resolvePath(this).(Variant).getEnum().(TypeItemNode)] and - not exists(resolved.(TypeAlias).getTypeRepr()) and - not this = any(ImplItemNode i).getASelfPath() // handled by `ImplSelfMention` - } + AliasPathTypeMention() { + resolved = resolvePath(this) and + rhs = resolved.getTypeRepr() + } - TypeItemNode getResolved() { result = resolved } + TypeItemNode getResolved() { result = resolved } - pragma[nomagic] - private TypeMention getAssocTypeArg(string name) { - result = this.getSegment().getGenericArgList().getAssocTypeArg(name) + /** + * Holds if this path resolved to a type alias with a rhs. that has the + * resulting type at `typePath`. + */ + override Type resolvePathTypeAt(TypePath typePath) { + result = rhs.getTypeAt(typePath) and + not result = pathGetTypeParameter(resolved, _) + or + exists(TypeParameter tp, TypeMention arg, TypePath prefix, TypePath suffix, int i | + tp = rhs.getTypeAt(prefix) and + tp = pathGetTypeParameter(resolved, pragma[only_bind_into](i)) and + arg = this.getSegment().getGenericArgList().getTypeArg(pragma[only_bind_into](i)) and + result = arg.getTypeAt(suffix) and + typePath = prefix.append(suffix) + ) + } } /** - * Gets the type mention that instantiates the implicit `Self` type parameter - * for this path, if it occurs in the position of a trait bound. + * Gets the `i`th type argument of `p`. + * + * Takes into account that variants can have type arguments applied to both the + * enum and the variant itself, e.g. `Option::::Some` is valid in addition + * to `Option::Some::`. */ - private TypeMention getSelfTraitBoundArg() { - exists(ImplItemNode impl | this = impl.getTraitPath() and result = impl.(Impl).getSelfTy()) - or - exists(Trait subTrait | - this = subTrait.getATypeBound().getTypeRepr().(PathTypeRepr).getPath() and - result.(SelfTypeParameterMention).getTrait() = subTrait - ) + TypeMention getPathTypeArgument(Path p, int i) { + result = p.getSegment().getGenericArgList().getTypeArg(i) or - exists(TypeParamItemNode tp | this = tp.getABoundPath() and result = tp) + resolvePath(p) instanceof Variant and + result = p.getQualifier().getSegment().getGenericArgList().getTypeArg(i) } - private Type getDefaultPositionalTypeArgument(int i, TypePath path) { - // If a type argument is not given in the path, then we use the default for - // the type parameter if one exists for the type. - not exists(getPathTypeArgument(this, i)) and - // Defaults only apply to type mentions in type annotations - this = any(PathTypeRepr ptp).getPath().getQualifier*() and - exists(Type ty, TypePath prefix | - ty = this.resolveRootType().getTypeParameterDefault(i).getTypeAt(prefix) and - if not ty = TSelfTypeParameter(resolved) - then result = ty and path = prefix - else - // When a default contains an implicit `Self` type parameter, it should - // be substituted for the type that implements the trait. - exists(TypePath suffix | - path = prefix.append(suffix) and - result = this.getSelfTraitBoundArg().getTypeAt(suffix) - ) - ) - } + class NonAliasPathTypeMention extends PathTypeMention { + TypeItemNode resolved; - private Type getPositionalTypeArgument(int i, TypePath path) { - result = getPathTypeArgument(this, i).getTypeAt(path) - or - result = this.getDefaultPositionalTypeArgument(i, path) - } + NonAliasPathTypeMention() { + resolved = [resolvePath(this), resolvePath(this).(Variant).getEnum().(TypeItemNode)] and + not exists(resolved.(TypeAlias).getTypeRepr()) and + not exists(getAdditionalPathTypeAt(this, _)) and // handled by `AdditionalPathTypeMention` + not this = any(ImplItemNode i).getASelfPath() // handled by `ImplSelfMention` + } - /** - * Gets the type for this path for the type parameter `tp` at `path`, when the - * type parameter does not correspond directly to a type mention. - */ - private Type getTypeForTypeParameterAt(TypeParameter tp, TypePath path) { - exists(int i | - result = this.getPositionalTypeArgument(pragma[only_bind_into](i), path) and - tp = this.resolveRootType().getPositionalTypeParameter(pragma[only_bind_into](i)) - ) - or - // Handle the special syntactic sugar for function traits. The syntactic - // form is detected by the presence of a parenthesized argument list which - // is a mandatory part of the syntax [1]. - // - // For now we only support `FnOnce` as we can't support the "inherited" - // associated types of `Fn` and `FnMut` yet. - // - // [1]: https://doc.rust-lang.org/reference/paths.html#grammar-TypePathFn - exists(AnyFnTrait t, PathSegment s | - t = resolved and - s = this.getSegment() and - s.hasParenthesizedArgList() - | - tp = TTypeParamTypeParameter(t.getTypeParam()) and - result = s.getParenthesizedArgList().(TypeMention).getTypeAt(path) + TypeItemNode getResolved() { result = resolved } + + pragma[nomagic] + private TypeMention getAssocTypeArg(string name) { + result = this.getSegment().getGenericArgList().getAssocTypeArg(name) + } + + /** + * Gets the type mention that instantiates the implicit `Self` type parameter + * for this path, if it occurs in the position of a trait bound. + */ + private TypeMention getSelfTraitBoundArg() { + exists(ImplItemNode impl | this = impl.getTraitPath() and result = impl.(Impl).getSelfTy()) or - tp = TAssociatedTypeTypeParameter(t, any(FnOnceTrait tr).getOutputType()) and - ( - result = s.getRetType().getTypeRepr().(TypeMention).getTypeAt(path) + exists(Trait subTrait | + this = subTrait.getATypeBound().getTypeRepr().(PathTypeRepr).getPath() and + result.(SelfTypeParameterMention).getTrait() = subTrait + ) + or + exists(TypeParamItemNode tp | this = tp.getABoundPath() and result = tp) + } + + private Type getDefaultPositionalTypeArgument(int i, TypePath path) { + // If a type argument is not given in the path, then we use the default for + // the type parameter if one exists for the type. + not exists(getPathTypeArgument(this, i)) and + // Defaults only apply to type mentions in type annotations + this = any(PathTypeRepr ptp).getPath().getQualifier*() and + exists(Type ty, TypePath prefix | + ty = this.resolveRootType().getTypeParameterDefault(i).(TypeMention).getTypeAt(prefix) and + if not ty = TSelfTypeParameter(resolved) + then result = ty and path = prefix + else + // When a default contains an implicit `Self` type parameter, it should + // be substituted for the type that implements the trait. + exists(TypePath suffix | + path = prefix.append(suffix) and + result = this.getSelfTraitBoundArg().getTypeAt(suffix) + ) + ) + } + + private Type getPositionalTypeArgument(int i, TypePath path) { + result = getPathTypeArgument(this, i).getTypeAt(path) + or + result = this.getDefaultPositionalTypeArgument(i, path) + } + + /** + * Gets the type for this path for the type parameter `tp` at `path`, when the + * type parameter does not correspond directly to a type mention. + */ + private Type getTypeForTypeParameterAt(TypeParameter tp, TypePath path) { + exists(int i | + result = this.getPositionalTypeArgument(pragma[only_bind_into](i), path) and + tp = this.resolveRootType().getPositionalTypeParameter(pragma[only_bind_into](i)) + ) + or + // Handle the special syntactic sugar for function traits. The syntactic + // form is detected by the presence of a parenthesized argument list which + // is a mandatory part of the syntax [1]. + // + // For now we only support `FnOnce` as we can't support the "inherited" + // associated types of `Fn` and `FnMut` yet. + // + // [1]: https://doc.rust-lang.org/reference/paths.html#grammar-TypePathFn + exists(AnyFnTrait t, PathSegment s | + t = resolved and + s = this.getSegment() and + s.hasParenthesizedArgList() + | + tp = TTypeParamTypeParameter(t.getTypeParam()) and + result = s.getParenthesizedArgList().(TypeMention).getTypeAt(path) or - // When the `-> ...` return type is omitted, it defaults to `()`. - not s.hasRetType() and - result instanceof UnitType and + tp = TAssociatedTypeTypeParameter(t, any(FnOnceTrait tr).getOutputType()) and + ( + result = s.getRetType().getTypeRepr().(TypeMention).getTypeAt(path) + or + // When the `-> ...` return type is omitted, it defaults to `()`. + not s.hasRetType() and + result instanceof UnitType and + path.isEmpty() + ) + ) + or + // If `path` is the supertrait of a trait block then any associated types + // of the supertrait should be instantiated with the subtrait's + // corresponding copies. + // + // As an example, for + // ```rust + // trait Sub: Super { + // // ^^^^^ this + // ``` + // we do something to the effect of: + // ```rust + // trait Sub: Super + // ``` + // Where `Assoc` is an associated type of `Super` and `Assoc[Sub]` denotes + // the copy of the type parameter inherited by `Sub`. + exists(Trait subtrait, TypeAlias alias | + subtrait.getATypeBound().getTypeRepr().(PathTypeRepr).getPath() = this and + result = TAssociatedTypeTypeParameter(subtrait, alias) and + tp = TAssociatedTypeTypeParameter(resolved, alias) and path.isEmpty() ) - ) - or - // If `path` is the supertrait of a trait block then any associated types - // of the supertrait should be instantiated with the subtrait's - // corresponding copies. - // - // As an example, for - // ```rust - // trait Sub: Super { - // // ^^^^^ this - // ``` - // we do something to the effect of: - // ```rust - // trait Sub: Super - // ``` - // Where `Assoc` is an associated type of `Super` and `Assoc[Sub]` denotes - // the copy of the type parameter inherited by `Sub`. - exists(Trait subtrait, TypeAlias alias | - subtrait.getATypeBound().getTypeRepr().(PathTypeRepr).getPath() = this and - result = TAssociatedTypeTypeParameter(subtrait, alias) and - tp = TAssociatedTypeTypeParameter(resolved, alias) and - path.isEmpty() - ) - } + } + + bindingset[name] + private TypeAlias getResolvedAlias(string name) { + result = resolved.(TraitItemNode).getAssocItem(name) + } + + bindingset[name] + private TypeAlias getResolvedTraitAssocType(string name) { + result = resolved.(TraitItemNode).getASuccessor(name) + } + + /** Gets the type mention in this path for the type parameter `tp`, if any. */ + pragma[nomagic] + private TypeMention getTypeMentionImplForTypeParameter(TypeParameter tp) { + exists(TypeAlias alias, string name | + result = this.getAssocTypeArg(name) and + tp = TAssociatedTypeTypeParameter(resolved, alias) and + alias = this.getResolvedTraitAssocType(name) + ) + or + // If `path` is the trait of an `impl` block then any associated types + // defined in the `impl` block are type arguments to the trait. + // + // For instance, for a trait implementation like this + // ```rust + // impl MyTrait for MyType { + // ^^^^^^^ path + // type AssociatedType = i64 + // ^^^ result + // // ... + // } + // ``` + // the rhs. of the type alias is a type argument to the trait. + exists(ImplItemNode impl, TypeAlias alias, string name | + this = impl.getTraitPath() and + alias = impl.getASuccessor(name) and + result = alias.getTypeRepr() and + tp = TAssociatedTypeTypeParameter(resolved, this.getResolvedAlias(name)) + ) + } - bindingset[name] - private TypeAlias getResolvedAlias(string name) { - result = resolved.(TraitItemNode).getAssocItem(name) - } + pragma[nomagic] + private Type resolveRootType() { + result = TDataType(resolved) + or + exists(TraitItemNode trait | trait = resolved | + // If this is a `Self` path, then it resolves to the implicit `Self` + // type parameter, otherwise it is a trait bound. + if this = trait.getASelfPath() + then result = TSelfTypeParameter(trait) + else result = TTrait(trait) + ) + or + result = TTypeParamTypeParameter(resolved) + or + // Handles paths of the form `Self::AssocType` within a trait block + result = TAssociatedTypeTypeParameter(resolvePath(this.getQualifier()), resolved) + } - bindingset[name] - private TypeAlias getResolvedTraitAssocType(string name) { - result = resolved.(TraitItemNode).getASuccessor(name) + override Type resolvePathTypeAt(TypePath typePath) { + typePath.isEmpty() and + result = this.resolveRootType() + or + exists(TypeParameter tp, TypePath suffix | typePath = TypePath::cons(tp, suffix) | + result = this.getTypeForTypeParameterAt(tp, suffix) + or + result = this.getTypeMentionImplForTypeParameter(tp).getTypeAt(suffix) + ) + or + // When the path refers to a trait, then the implicit `Self` type parameter + // should be instantiated from the context. + exists(TypePath suffix | + result = this.getSelfTraitBoundArg().getTypeAt(suffix) and + typePath = TypePath::cons(TSelfTypeParameter(resolved), suffix) + ) + or + not this.getSegment().hasTraitTypeRepr() and + result = this.getSegment().getTypeRepr().(TypeMention).getTypeAt(typePath) + } } - /** Gets the type mention in this path for the type parameter `tp`, if any. */ pragma[nomagic] - private TypeMention getTypeMentionForTypeParameter(TypeParameter tp) { - exists(TypeAlias alias, string name | - result = this.getAssocTypeArg(name) and - tp = TAssociatedTypeTypeParameter(resolved, alias) and - alias = this.getResolvedTraitAssocType(name) - ) - or - // If `path` is the trait of an `impl` block then any associated types - // defined in the `impl` block are type arguments to the trait. - // - // For instance, for a trait implementation like this - // ```rust - // impl MyTrait for MyType { - // ^^^^^^^ path - // type AssociatedType = i64 - // ^^^ result - // // ... - // } - // ``` - // the rhs. of the type alias is a type argument to the trait. - exists(ImplItemNode impl, TypeAlias alias, string name | - this = impl.getTraitPath() and - alias = impl.getASuccessor(name) and - result = alias.getTypeRepr() and - tp = TAssociatedTypeTypeParameter(resolved, this.getResolvedAlias(name)) - ) + Type resolveImplSelfTypeAt(Impl i, TypePath path) { + result = i.getSelfTy().(TypeMention).getTypeAt(path) } - pragma[nomagic] - private Type resolveRootType() { - result = TDataType(resolved) - or - exists(TraitItemNode trait | trait = resolved | - // If this is a `Self` path, then it resolves to the implicit `Self` - // type parameter, otherwise it is a trait bound. - if this = trait.getASelfPath() - then result = TSelfTypeParameter(trait) - else result = TTrait(trait) - ) - or - result = TTypeParamTypeParameter(resolved) - or - result = TAssociatedTypeTypeParameter(resolvePath(this.getQualifier()), resolved) - } + class ImplSelfMention extends PathTypeMention { + private ImplItemNode impl; - override Type resolvePathTypeAt(TypePath typePath) { - typePath.isEmpty() and - result = this.resolveRootType() - or - exists(TypeParameter tp, TypePath suffix | typePath = TypePath::cons(tp, suffix) | - result = this.getTypeForTypeParameterAt(tp, suffix) - or - result = this.getTypeMentionForTypeParameter(tp).getTypeAt(suffix) - ) - or - // When the path refers to a trait, then the implicit `Self` type parameter - // should be instantiated from the context. - exists(TypePath suffix | - result = this.getSelfTraitBoundArg().getTypeAt(suffix) and - typePath = TypePath::cons(TSelfTypeParameter(resolved), suffix) - ) - or - not this.getSegment().hasTraitTypeRepr() and - result = this.getSegment().getTypeRepr().(TypeMention).getTypeAt(typePath) - } -} + ImplSelfMention() { this = impl.getASelfPath() } -pragma[nomagic] -Type resolveImplSelfTypeAt(Impl i, TypePath path) { - result = i.getSelfTy().(TypeMention).getTypeAt(path) -} + override Type resolvePathTypeAt(TypePath typePath) { + result = resolveImplSelfTypeAt(impl, typePath) + } + } -class ImplSelfMention extends PathTypeMention { - private ImplItemNode impl; + class PathTypeReprMention extends TypeMentionImpl, PathTypeRepr { + private PathTypeMention path; - ImplSelfMention() { this = impl.getASelfPath() } + PathTypeReprMention() { path = this.getPath() } - override Type resolvePathTypeAt(TypePath typePath) { - result = resolveImplSelfTypeAt(impl, typePath) + override Type getTypeAt(TypePath typePath) { result = path.getTypeAt(typePath) } } -} -class PathTypeReprMention extends TypeMention, PathTypeRepr { - private PathTypeMention path; + class ImplTraitTypeReprMention extends TypeMentionImpl instanceof ImplTraitTypeRepr { + override Type getTypeAt(TypePath typePath) { + typePath.isEmpty() and + result.(ImplTraitType).getImplTraitTypeRepr() = this + or + exists(ImplTraitTypeParameter tp | + this = tp.getImplTraitTypeRepr() and + typePath = TypePath::singleton(tp) and + result = TTypeParamTypeParameter(tp.getTypeParam()) + ) + } + } - PathTypeReprMention() { path = this.getPath() } + private TypeParameter pathGetTypeParameter(TypeAlias alias, int i) { + result = TTypeParamTypeParameter(alias.getGenericParamList().getTypeParam(i)) + } - override Type getTypeAt(TypePath typePath) { result = path.getTypeAt(typePath) } -} + // Used to represent implicit `Self` type arguments in traits and `impl` blocks, + // see `PathMention` for details. + class TypeParamMention extends TypeMentionImpl instanceof TypeParam { + override Type getTypeAt(TypePath typePath) { + typePath.isEmpty() and + result = TTypeParamTypeParameter(this) + } + } -class ImplTraitTypeReprMention extends TypeMention instanceof ImplTraitTypeRepr { - override Type getTypeAt(TypePath typePath) { - typePath.isEmpty() and - result.(ImplTraitType).getImplTraitTypeRepr() = this - or - exists(ImplTraitTypeParameter tp | - this = tp.getImplTraitTypeRepr() and - typePath = TypePath::singleton(tp) and - result = TTypeParamTypeParameter(tp.getTypeParam()) - ) + class TraitMention extends TypeMentionImpl instanceof TraitItemNode { + override Type getTypeAt(TypePath typePath) { + typePath.isEmpty() and + result = TTrait(this) + or + // The implicit `Self` type parameter occurs at the `Self` type parameter + // position. + typePath = TypePath::singleton(TSelfTypeParameter(this)) and + result = TSelfTypeParameter(this) + or + exists(TypeAlias alias | + typePath = TypePath::singleton(result) and + result = TAssociatedTypeTypeParameter(this, alias) + ) + or + exists(TypeParam tp | + tp = super.getTypeParam(_) and + typePath = TypePath::singleton(result) and + result = TTypeParamTypeParameter(tp) + ) + } } -} -private TypeParameter pathGetTypeParameter(TypeAlias alias, int i) { - result = TTypeParamTypeParameter(alias.getGenericParamList().getTypeParam(i)) -} + // NOTE: Since the implicit type parameter for the self type parameter never + // appears in the AST, we (somewhat arbitrarily) choose the name of a trait as a + // type mention. This works because there is a one-to-one correspondence between + // a trait and its name. + class SelfTypeParameterMention extends TypeMentionImpl instanceof Name { + Trait trait; -// Used to represent implicit `Self` type arguments in traits and `impl` blocks, -// see `PathMention` for details. -class TypeParamMention extends TypeMention instanceof TypeParam { - override Type getTypeAt(TypePath typePath) { - typePath.isEmpty() and - result = TTypeParamTypeParameter(this) + SelfTypeParameterMention() { trait.getName() = this } + + Trait getTrait() { result = trait } + + override Type getTypeAt(TypePath typePath) { + typePath.isEmpty() and + result = TSelfTypeParameter(trait) + } } -} -class TraitMention extends TypeMention instanceof TraitItemNode { - override Type getTypeAt(TypePath typePath) { - typePath.isEmpty() and - result = TTrait(this) - or - // The implicit `Self` type parameter occurs at the `Self` type parameter - // position. - typePath = TypePath::singleton(TSelfTypeParameter(this)) and - result = TSelfTypeParameter(this) - or - exists(TypeAlias alias | - typePath = TypePath::singleton(result) and - result = TAssociatedTypeTypeParameter(this, alias) - ) + /** + * Gets the type at `path` of the type being implemented in `i`, when + * `i` is an `impl` block, or the synthetic `Self` type parameter when + * `i` is a trait. + */ + pragma[nomagic] + Type resolveImplOrTraitType(ImplOrTraitItemNode i, TypePath path) { + result = resolveImplSelfTypeAt(i, path) or - exists(TypeParam tp | - tp = super.getTypeParam(_) and - typePath = TypePath::singleton(result) and - result = TTypeParamTypeParameter(tp) - ) + result = TSelfTypeParameter(i) and path.isEmpty() } -} - -// NOTE: Since the implicit type parameter for the self type parameter never -// appears in the AST, we (somewhat arbitrarily) choose the name of a trait as a -// type mention. This works because there is a one-to-one correspondence between -// a trait and its name. -class SelfTypeParameterMention extends TypeMention instanceof Name { - Trait trait; - - SelfTypeParameterMention() { trait.getName() = this } - Trait getTrait() { result = trait } - - override Type getTypeAt(TypePath typePath) { - typePath.isEmpty() and - result = TSelfTypeParameter(trait) + pragma[nomagic] + private ImplOrTraitItemNode getSelfParamEnclosingImplOrTrait(SelfParam self) { + self = result.getAnAssocItem().(Function).getSelfParam() } -} -/** - * Gets the type at `path` of the type being implemented in `i`, when - * `i` is an `impl` block, or the synthetic `Self` type parameter when - * `i` is a trait. - */ -pragma[nomagic] -Type resolveImplOrTraitType(ImplOrTraitItemNode i, TypePath path) { - result = resolveImplSelfTypeAt(i, path) - or - result = TSelfTypeParameter(i) and path.isEmpty() -} + /** + * An element used to represent the type of a `self` parameter that uses [shorthand + * syntax][1], which is sugar for an explicit annotation. + * + * [1]: https://doc.rust-lang.org/stable/reference/items/associated-items.html#r-associated.fn.method.self-pat-shorthands + */ + class ShorthandSelfParameterMention extends TypeMentionImpl instanceof SelfParam { + private ImplOrTraitItemNode encl; -pragma[nomagic] -private ImplOrTraitItemNode getSelfParamEnclosingImplOrTrait(SelfParam self) { - self = result.getAnAssocItem().(Function).getSelfParam() -} + ShorthandSelfParameterMention() { + not super.hasTypeRepr() and + encl = getSelfParamEnclosingImplOrTrait(this) and + ( + not encl instanceof Impl + or + // avoid generating a type mention if the type being implemented does not have a type mention + encl.(Impl).getSelfTy() instanceof TypeMentionImpl + ) + } -/** - * An element used to represent the type of a `self` parameter that uses [shorthand - * syntax][1], which is sugar for an explicit annotation. - * - * [1]: https://doc.rust-lang.org/stable/reference/items/associated-items.html#r-associated.fn.method.self-pat-shorthands - */ -class ShorthandSelfParameterMention extends TypeMention instanceof SelfParam { - private ImplOrTraitItemNode encl; - - ShorthandSelfParameterMention() { - not super.hasTypeRepr() and - encl = getSelfParamEnclosingImplOrTrait(this) and - ( - not encl instanceof Impl - or - // avoid generating a type mention if the type being implemented does not have a type mention - encl.(Impl).getSelfTy() instanceof TypeMention - ) - } + private Type resolveSelfType(TypePath path) { result = resolveImplOrTraitType(encl, path) } - private Type resolveSelfType(TypePath path) { result = resolveImplOrTraitType(encl, path) } + private RefType resolveSelfRefRootType() { + super.isRef() and + if super.isMut() then result instanceof RefMutType else result instanceof RefSharedType + } - private RefType resolveSelfRefRootType() { - super.isRef() and - if super.isMut() then result instanceof RefMutType else result instanceof RefSharedType + override Type getTypeAt(TypePath typePath) { + // `fn f(&self, ...)` + typePath.isEmpty() and + result = this.resolveSelfRefRootType() + or + exists(TypePath suffix | + result = this.resolveSelfType(suffix) and + typePath = + TypePath::cons(this.resolveSelfRefRootType().getPositionalTypeParameter(0), suffix) + ) + or + // `fn f(self, ...)` + not super.isRef() and + result = this.resolveSelfType(typePath) + } } - override Type getTypeAt(TypePath typePath) { - // `fn f(&self, ...)` - typePath.isEmpty() and - result = this.resolveSelfRefRootType() - or - exists(TypePath suffix | - result = this.resolveSelfType(suffix) and - typePath = TypePath::cons(this.resolveSelfRefRootType().getPositionalTypeParameter(0), suffix) - ) + pragma[nomagic] + TypeMention getSelfParamTypeMention(SelfParam self) { + result = self.(ShorthandSelfParameterMention) or - // `fn f(self, ...)` - not super.isRef() and - result = this.resolveSelfType(typePath) + result = self.getTypeRepr() } -} -pragma[nomagic] -TypeMention getSelfParamTypeMention(SelfParam self) { - result = self.(ShorthandSelfParameterMention) - or - result = self.getTypeRepr() -} + /** + * An element used to represent the implicit `()` return type of a function. + * + * Since the implicit type does not appear in the AST, we (somewhat arbitrarily) + * choose the name of the function as a type mention. This works because there + * is a one-to-one correspondence between a function and its name. + */ + class ShorthandReturnTypeMention extends TypeMentionImpl instanceof Name { + private Function f; -/** - * An element used to represent the implicit `()` return type of a function. - * - * Since the implicit type does not appear in the AST, we (somewhat arbitrarily) - * choose the name of the function as a type mention. This works because there - * is a one-to-one correspondence between a function and its name. - */ -class ShorthandReturnTypeMention extends TypeMention instanceof Name { - private Function f; + ShorthandReturnTypeMention() { + this = f.getName() and + not f.getRetType().hasTypeRepr() + } - ShorthandReturnTypeMention() { - this = f.getName() and - not f.getRetType().hasTypeRepr() + override Type getTypeAt(TypePath typePath) { + typePath.isEmpty() and + result instanceof UnitType + } } - override Type getTypeAt(TypePath typePath) { - typePath.isEmpty() and - result instanceof UnitType + pragma[nomagic] + TypeMention getReturnTypeMention(Function f) { + result.(ShorthandReturnTypeMention) = f.getName() + or + result = f.getRetType().getTypeRepr() } -} -pragma[nomagic] -TypeMention getReturnTypeMention(Function f) { - result.(ShorthandReturnTypeMention) = f.getName() - or - result = f.getRetType().getTypeRepr() -} + class DynTraitTypeReprMention extends TypeMentionImpl instanceof DynTraitTypeRepr { + private DynTraitType dynType; -class DynTraitTypeReprMention extends TypeMention instanceof DynTraitTypeRepr { - private DynTraitType dynType; + DynTraitTypeReprMention() { + // This excludes `DynTraitTypeRepr` elements where `getTrait` is not + // defined, i.e., where path resolution can't find a trait. + dynType.getTrait() = super.getTrait() + } - DynTraitTypeReprMention() { - // This excludes `DynTraitTypeRepr` elements where `getTrait` is not - // defined, i.e., where path resolution can't find a trait. - dynType.getTrait() = super.getTrait() - } + override Type getTypeAt(TypePath path) { + path.isEmpty() and + result = dynType + or + exists(DynTraitTypeParameter tp, TypePath path0, TypePath suffix | + dynType = tp.getDynTraitType() and + path = TypePath::cons(tp, suffix) and + result = super.getTypeBoundList().getBound(0).getTypeRepr().(TypeMention).getTypeAt(path0) and + path0.isCons(tp.getTraitTypeParameter(), suffix) + ) + } + } + + // We want a type of the form `dyn Trait` to implement `Trait`. If `Trait` has + // type parameters then `dyn Trait` has equivalent type parameters and the + // implementation should be abstracted over them. + // + // Intuitively we want something to the effect of: + // ``` + // impl Trait for (dyn Trait) + // ``` + // To achieve this: + // - `DynTypeAbstraction` is an abstraction over the type parameters of the trait. + // - `DynTypeBoundListMention` (this class) is a type mention which has `dyn + // Trait` at the root and which for every type parameter of `dyn Trait` has the + // corresponding type parameter of the trait. + // - `TraitMention` (which is used for other things as well) is a type mention + // for the trait applied to its own type parameters. + // + // We arbitrarily use the `TypeBoundList` inside `DynTraitTypeRepr` to encode + // this type mention, since it doesn't syntactically appear in the AST. This + // works because there is a one-to-one correspondence between a trait object and + // its list of type bounds. + class DynTypeBoundListMention extends TypeMentionImpl instanceof TypeBoundList { + private Trait trait; + + DynTypeBoundListMention() { + exists(DynTraitTypeRepr dyn | + // We only need this type mention when the `dyn Trait` is a type + // abstraction, that is, when it's "canonical" and used in + // `conditionSatisfiesConstraint`. + dyn instanceof DynTypeAbstraction and + this = dyn.getTypeBoundList() and + trait = dyn.getTrait() + ) + } - override Type getTypeAt(TypePath path) { - path.isEmpty() and - result = dynType - or - exists(DynTraitTypeParameter tp, TypePath path0, TypePath suffix | - dynType = tp.getDynTraitType() and - path = TypePath::cons(tp, suffix) and - result = super.getTypeBoundList().getBound(0).getTypeRepr().(TypeMention).getTypeAt(path0) and - path0.isCons(tp.getTraitTypeParameter(), suffix) - ) + override Type getTypeAt(TypePath path) { + path.isEmpty() and + result.(DynTraitType).getTrait() = trait + or + exists(DynTraitTypeParameter tp | + trait = tp.getTrait() and + path = TypePath::singleton(tp) and + result = tp.getTraitTypeParameter() + ) + } } -} -// We want a type of the form `dyn Trait` to implement `Trait`. If `Trait` has -// type parameters then `dyn Trait` has equivalent type parameters and the -// implementation should be abstracted over them. -// -// Intuitively we want something to the effect of: -// ``` -// impl Trait for (dyn Trait) -// ``` -// To achieve this: -// - `DynTypeAbstraction` is an abstraction over the type parameters of the trait. -// - `DynTypeBoundListMention` (this class) is a type mention which has `dyn -// Trait` at the root and which for every type parameter of `dyn Trait` has the -// corresponding type parameter of the trait. -// - `TraitMention` (which is used for other things as well) is a type mention -// for the trait applied to its own type parameters. -// -// We arbitrarily use the `TypeBoundList` inside `DynTraitTypeRepr` to encode -// this type mention, since it doesn't syntactically appear in the AST. This -// works because there is a one-to-one correspondence between a trait object and -// its list of type bounds. -class DynTypeBoundListMention extends TypeMention instanceof TypeBoundList { - private Trait trait; - - DynTypeBoundListMention() { - exists(DynTraitTypeRepr dyn | - // We only need this type mention when the `dyn Trait` is a type - // abstraction, that is, when it's "canonical" and used in - // `conditionSatisfiesConstraint`. - dyn instanceof DynTypeAbstraction and - this = dyn.getTypeBoundList() and - trait = dyn.getTrait() - ) + class NeverTypeReprMention extends TypeMentionImpl, NeverTypeRepr { + override Type getTypeAt(TypePath path) { result = TNeverType() and path.isEmpty() } } - override Type getTypeAt(TypePath path) { - path.isEmpty() and - result.(DynTraitType).getTrait() = trait - or - exists(DynTraitTypeParameter tp | - trait = tp.getTrait() and - path = TypePath::singleton(tp) and - result = tp.getTraitTypeParameter() - ) + class PtrTypeReprMention extends TypeMentionImpl instanceof PtrTypeRepr { + private PtrType resolveRootType() { + super.isConst() and result instanceof PtrConstType + or + super.isMut() and result instanceof PtrMutType + } + + override Type getTypeAt(TypePath path) { + path.isEmpty() and result = this.resolveRootType() + or + exists(TypePath suffix | + result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and + path = TypePath::cons(this.resolveRootType().getPositionalTypeParameter(0), suffix) + ) + } } } -class NeverTypeReprMention extends TypeMention, NeverTypeRepr { - override Type getTypeAt(TypePath path) { result = TNeverType() and path.isEmpty() } -} +private Type preGetAdditionalPathTypeAt(Path p, TypePath typePath) { none() } -class PtrTypeReprMention extends TypeMention instanceof PtrTypeRepr { - private PtrType resolveRootType() { - super.isConst() and result instanceof PtrConstType - or - super.isMut() and result instanceof PtrMutType - } +private module PreTypeMention = MkTypeMention; - override Type getTypeAt(TypePath path) { - path.isEmpty() and result = this.resolveRootType() +class PreTypeMention = PreTypeMention::TypeMention; + +/** + * Holds if `path` accesses an associated type `alias` from `trait` on a + * concrete type given by `tm`. + */ +predicate pathConcreteTypeAssocType(Path path, PreTypeMention tm, Trait trait, TypeAlias alias) { + exists(Path qualifier | + qualifier = path.getQualifier() and + not resolvePath(tm.(PathTypeRepr).getPath()) instanceof TypeParam + | + // path of the form `::AssocType` + // ^^^ tm ^^^^^^^^^ name + exists(string name | + name = path.getSegment().getIdentifier().getText() and + tm = qualifier.getSegment().getTypeRepr() and + trait = resolvePath(qualifier.getSegment().getTraitTypeRepr().getPath()) and + trait.(TraitItemNode).getAssocItem(name) = alias + ) or - exists(TypePath suffix | - result = super.getTypeRepr().(TypeMention).getTypeAt(suffix) and - path = TypePath::cons(this.resolveRootType().getPositionalTypeParameter(0), suffix) + // path of the form `Self::AssocType` within an `impl` block + // tm ^^^^ ^^^^^^^^^ name + exists(ImplItemNode impl | + alias = resolvePath(path) and + qualifier = impl.getASelfPath() and + tm = impl.(Impl).getSelfTy() and + trait.(TraitItemNode).getAnAssocItem() = alias ) + ) +} + +private module PathSatisfiesConstraint implements SatisfiesConstraintInputSig { + predicate relevantConstraint(PreTypeMention tm, Type constraint) { + pathConcreteTypeAssocType(_, tm, constraint.(TraitType).getTrait(), _) } } + +/** + * Gets the type of `path` at `typePath` when `path` accesses an associated type + * on a concrete type. + */ +private Type getPathConcreteAssocTypeAt(Path path, TypePath typePath) { + exists(PreTypeMention tm, TraitItemNode t, TypeAlias alias, TypePath path0 | + pathConcreteTypeAssocType(path, tm, t, alias) and + SatisfiesConstraint::satisfiesConstraintType(tm, + TTrait(t), path0, result) and + path0.isCons(TAssociatedTypeTypeParameter(t, alias), typePath) + ) +} + +import MkTypeMention diff --git a/rust/ql/test/library-tests/type-inference/associated_types.rs b/rust/ql/test/library-tests/type-inference/associated_types.rs index 332b1d554171..54006d0b3b5c 100644 --- a/rust/ql/test/library-tests/type-inference/associated_types.rs +++ b/rust/ql/test/library-tests/type-inference/associated_types.rs @@ -146,10 +146,10 @@ mod concrete_type_access_associated_type { c: as GetSet>::Output, d: as GetSet>::Output, ) { - let _a = a; // $ MISSING: type=_a:S3 - let _b = b; // $ MISSING: type=_b:i32 - let _c = c; // $ MISSING: type=_c:bool - let _d = d; // $ MISSING: type=_d:char + let _a = a; // $ type=_a:S3 + let _b = b; // $ type=_b:i32 + let _c = c; // $ type=_c:bool + let _d = d; // $ type=_d:char } // NOTE: The below seems like it should work, but is currently rejected by @@ -171,24 +171,24 @@ mod concrete_type_access_associated_type { impl Odd { // Odd::proj fn proj(&self) -> ::Output { - let x = Default::default(); // $ MISSING: target=default - x // $ MISSING: type=x:bool + let x = Default::default(); // $ target=default + x // $ type=x:bool } } impl Odd { // Odd::proj fn proj(&self) -> ::Output { - let x = Default::default(); // $ MISSING: target=default - x // $ MISSING: type=x:char + let x = Default::default(); // $ target=default + x // $ type=x:char } } pub fn test() { using_as(S3, 1, true, 'a'); // $ target=using_as - let _a = Odd(42i32).proj(); // $ target=Odd::proj MISSING: type=_a:bool - let _b = Odd(true).proj(); // $ target=Odd::proj MISSING: type=_b:char + let _a = Odd(42i32).proj(); // $ target=Odd::proj type=_a:bool + let _b = Odd(true).proj(); // $ target=Odd::proj type=_b:char } } @@ -266,7 +266,7 @@ mod equality_on_associated_type { T: GetSet, { let _a = x.get(); // $ type=_a:i32 target=GetSet::get - let _b = x.get2(); // $ target=AssocNameClash::get2 MISSING: type=_b:char + let _b = x.get2(); // $ target=AssocNameClash::get2 type=_b:char } } @@ -390,14 +390,14 @@ mod associated_type_in_supertrait { // Odd::get_content fn get_content(&self) -> Self::Output { // let _x = Self::get(self); - Default::default() // $ MISSING: target=default + Default::default() // $ target=default } } impl Subtrait for Odd { // Odd::get_content fn get_content(&self) -> Self::Output { - Default::default() // $ MISSING: target=default + Default::default() // $ target=default } } @@ -412,13 +412,13 @@ mod associated_type_in_supertrait { pub fn test() { let item1 = MyType(42i64); - let _content1 = item1.get_content(); // $ target=MyType::get_content MISSING: type=_content1:i64 + let _content1 = item1.get_content(); // $ target=MyType::get_content type=_content1:i64 let item2 = MyType(true); let _content2 = get_content(&item2); // $ target=get_content MISSING: type=_content2:bool - let _content3 = Odd(42i32).get_content(); // $ target=Odd::get_content MISSING: type=_content3:bool - let _content4 = Odd(true).get_content(); // $ target=Odd::get_content MISSING: type=_content4:char + let _content3 = Odd(42i32).get_content(); // $ target=Odd::get_content type=_content3:bool + let _content4 = Odd(true).get_content(); // $ target=Odd::get_content type=_content4:char } } diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 80ee3a2b1d54..bf56e3770214 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -68,13 +68,27 @@ inferCertainType | associated_types.rs:136:18:136:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | associated_types.rs:136:18:136:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | associated_types.rs:136:18:136:32 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:144:9:144:9 | a | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:145:9:145:9 | b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:146:9:146:9 | c | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:147:9:147:9 | d | | {EXTERNAL LOCATION} | char | | associated_types.rs:148:7:153:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:149:13:149:14 | _a | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:149:18:149:18 | a | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:150:13:150:14 | _b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:150:18:150:18 | b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:151:13:151:14 | _c | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:151:18:151:18 | c | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:152:13:152:14 | _d | | {EXTERNAL LOCATION} | char | +| associated_types.rs:152:18:152:18 | d | | {EXTERNAL LOCATION} | char | | associated_types.rs:173:17:173:21 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:173:17:173:21 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:173:17:173:21 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:173:52:176:9 | { ... } | | {EXTERNAL LOCATION} | bool | | associated_types.rs:181:17:181:21 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:181:17:181:21 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:181:17:181:21 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:181:52:184:9 | { ... } | | {EXTERNAL LOCATION} | char | | associated_types.rs:187:19:192:5 | { ... } | | {EXTERNAL LOCATION} | () | | associated_types.rs:188:9:188:34 | using_as(...) | | {EXTERNAL LOCATION} | () | | associated_types.rs:188:25:188:28 | true | | {EXTERNAL LOCATION} | bool | @@ -186,15 +200,18 @@ inferCertainType | associated_types.rs:384:24:384:28 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:384:24:384:28 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | | associated_types.rs:384:24:384:28 | SelfParam | TRef.T | associated_types.rs:382:10:382:16 | T | +| associated_types.rs:384:47:386:9 | { ... } | | associated_types.rs:382:10:382:16 | T | | associated_types.rs:385:15:385:18 | self | | {EXTERNAL LOCATION} | & | | associated_types.rs:385:15:385:18 | self | TRef | associated_types.rs:368:5:368:24 | MyType | | associated_types.rs:385:15:385:18 | self | TRef.T | associated_types.rs:382:10:382:16 | T | | associated_types.rs:391:24:391:28 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:391:24:391:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:391:24:391:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:391:47:394:9 | { ... } | | {EXTERNAL LOCATION} | bool | | associated_types.rs:399:24:399:28 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:399:24:399:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:399:24:399:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:399:47:401:9 | { ... } | | {EXTERNAL LOCATION} | char | | associated_types.rs:404:33:404:36 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:404:33:404:36 | item | TRef | associated_types.rs:404:20:404:30 | T | | associated_types.rs:405:9:405:12 | item | | {EXTERNAL LOCATION} | & | @@ -4828,24 +4845,48 @@ inferType | associated_types.rs:136:26:136:27 | x6 | | associated_types.rs:13:1:14:10 | S2 | | associated_types.rs:136:26:136:32 | x6.m2() | | associated_types.rs:1:1:2:21 | Wrapper | | associated_types.rs:136:26:136:32 | x6.m2() | A | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:144:9:144:9 | a | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:145:9:145:9 | b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:146:9:146:9 | c | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:147:9:147:9 | d | | {EXTERNAL LOCATION} | char | | associated_types.rs:148:7:153:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:149:13:149:14 | _a | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:149:18:149:18 | a | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:150:13:150:14 | _b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:150:18:150:18 | b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:151:13:151:14 | _c | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:151:18:151:18 | c | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:152:13:152:14 | _d | | {EXTERNAL LOCATION} | char | +| associated_types.rs:152:18:152:18 | d | | {EXTERNAL LOCATION} | char | | associated_types.rs:173:17:173:21 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:173:17:173:21 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:173:17:173:21 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:173:52:176:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:174:17:174:17 | x | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:174:21:174:38 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:175:13:175:13 | x | | {EXTERNAL LOCATION} | bool | | associated_types.rs:181:17:181:21 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:181:17:181:21 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:181:17:181:21 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:181:52:184:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:182:17:182:17 | x | | {EXTERNAL LOCATION} | char | +| associated_types.rs:182:21:182:38 | ...::default(...) | | {EXTERNAL LOCATION} | char | +| associated_types.rs:183:13:183:13 | x | | {EXTERNAL LOCATION} | char | | associated_types.rs:187:19:192:5 | { ... } | | {EXTERNAL LOCATION} | () | | associated_types.rs:188:9:188:34 | using_as(...) | | {EXTERNAL LOCATION} | () | | associated_types.rs:188:18:188:19 | S3 | | associated_types.rs:16:1:17:10 | S3 | | associated_types.rs:188:22:188:22 | 1 | | {EXTERNAL LOCATION} | i32 | | associated_types.rs:188:25:188:28 | true | | {EXTERNAL LOCATION} | bool | | associated_types.rs:188:31:188:33 | 'a' | | {EXTERNAL LOCATION} | char | +| associated_types.rs:190:13:190:14 | _a | | {EXTERNAL LOCATION} | bool | | associated_types.rs:190:18:190:27 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:190:18:190:27 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:190:18:190:34 | ... .proj() | | {EXTERNAL LOCATION} | bool | | associated_types.rs:190:22:190:26 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:191:13:191:14 | _b | | {EXTERNAL LOCATION} | char | | associated_types.rs:191:18:191:26 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:191:18:191:26 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:191:18:191:33 | ... .proj() | | {EXTERNAL LOCATION} | char | | associated_types.rs:191:22:191:25 | true | | {EXTERNAL LOCATION} | bool | | associated_types.rs:199:30:199:34 | thing | | associated_types.rs:199:19:199:27 | T | | associated_types.rs:200:9:200:13 | thing | | associated_types.rs:199:19:199:27 | T | @@ -4900,7 +4941,9 @@ inferType | associated_types.rs:268:13:268:14 | _a | | {EXTERNAL LOCATION} | i32 | | associated_types.rs:268:18:268:18 | x | | associated_types.rs:263:31:263:31 | T | | associated_types.rs:268:18:268:24 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:269:13:269:14 | _b | | {EXTERNAL LOCATION} | char | | associated_types.rs:269:18:269:18 | x | | associated_types.rs:263:31:263:31 | T | +| associated_types.rs:269:18:269:25 | x.get2() | | {EXTERNAL LOCATION} | char | | associated_types.rs:280:19:280:23 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:280:19:280:23 | SelfParam | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | | associated_types.rs:280:26:280:26 | a | | associated_types.rs:280:16:280:16 | A | @@ -5016,9 +5059,13 @@ inferType | associated_types.rs:391:24:391:28 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:391:24:391:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:391:24:391:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:391:47:394:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:393:13:393:30 | ...::default(...) | | {EXTERNAL LOCATION} | bool | | associated_types.rs:399:24:399:28 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:399:24:399:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:399:24:399:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:399:47:401:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:400:13:400:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | | associated_types.rs:404:33:404:36 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:404:33:404:36 | item | TRef | associated_types.rs:404:20:404:30 | T | | associated_types.rs:405:9:405:12 | item | | {EXTERNAL LOCATION} | & | @@ -5038,8 +5085,10 @@ inferType | associated_types.rs:414:21:414:33 | MyType(...) | | associated_types.rs:368:5:368:24 | MyType | | associated_types.rs:414:21:414:33 | MyType(...) | T | {EXTERNAL LOCATION} | i64 | | associated_types.rs:414:28:414:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:415:13:415:21 | _content1 | | {EXTERNAL LOCATION} | i64 | | associated_types.rs:415:25:415:29 | item1 | | associated_types.rs:368:5:368:24 | MyType | | associated_types.rs:415:25:415:29 | item1 | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:415:25:415:43 | item1.get_content() | | {EXTERNAL LOCATION} | i64 | | associated_types.rs:417:13:417:17 | item2 | | associated_types.rs:368:5:368:24 | MyType | | associated_types.rs:417:13:417:17 | item2 | T | {EXTERNAL LOCATION} | bool | | associated_types.rs:417:21:417:32 | MyType(...) | | associated_types.rs:368:5:368:24 | MyType | @@ -5050,11 +5099,15 @@ inferType | associated_types.rs:418:37:418:42 | &item2 | TRef.T | {EXTERNAL LOCATION} | bool | | associated_types.rs:418:38:418:42 | item2 | | associated_types.rs:368:5:368:24 | MyType | | associated_types.rs:418:38:418:42 | item2 | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:420:13:420:21 | _content3 | | {EXTERNAL LOCATION} | bool | | associated_types.rs:420:25:420:34 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:420:25:420:34 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:420:25:420:48 | ... .get_content() | | {EXTERNAL LOCATION} | bool | | associated_types.rs:420:29:420:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:421:13:421:21 | _content4 | | {EXTERNAL LOCATION} | char | | associated_types.rs:421:25:421:33 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | | associated_types.rs:421:25:421:33 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:421:25:421:47 | ... .get_content() | | {EXTERNAL LOCATION} | char | | associated_types.rs:421:29:421:32 | true | | {EXTERNAL LOCATION} | bool | | associated_types.rs:435:16:435:20 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:435:16:435:20 | SelfParam | TRef | associated_types.rs:428:5:428:20 | ST | From aae53333251f4c19b1eae0ead5d5958591535afb Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Tue, 27 Jan 2026 13:11:04 +0100 Subject: [PATCH 186/433] Rust: Add test with type inference inconsistency --- .../TypeInferenceConsistency.qll | 3 +- .../TypeInferenceConsistency.expected | 2 + .../type-inference/associated_types.rs | 50 + .../type-inference/type-inference.expected | 1080 +++++++++-------- 4 files changed, 621 insertions(+), 514 deletions(-) create mode 100644 rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll index 8877962ec2d2..96e0bea2f189 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInferenceConsistency.qll @@ -31,7 +31,8 @@ query predicate illFormedTypeMention(TypeMention tm) { } query predicate nonUniqueCertainType(AstNode n, TypePath path) { - Consistency::nonUniqueCertainType(n, path, _) + Consistency::nonUniqueCertainType(n, path, _) and + n.fromSource() // Only include inconsistencies in the source. } int getTypeInferenceInconsistencyCounts(string type) { diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected new file mode 100644 index 000000000000..2dc4ca7791aa --- /dev/null +++ b/rust/ql/test/library-tests/type-inference/CONSISTENCY/TypeInferenceConsistency.expected @@ -0,0 +1,2 @@ +nonUniqueCertainType +| associated_types.rs:232:9:234:9 | { ... } | | diff --git a/rust/ql/test/library-tests/type-inference/associated_types.rs b/rust/ql/test/library-tests/type-inference/associated_types.rs index 54006d0b3b5c..1d8657b29a0e 100644 --- a/rust/ql/test/library-tests/type-inference/associated_types.rs +++ b/rust/ql/test/library-tests/type-inference/associated_types.rs @@ -192,6 +192,55 @@ mod concrete_type_access_associated_type { } } +// Tests a `::Assoc` type mention where the `Trait` type mention +// contains a generic. +// +// In `convert` below the type of `>::Output` depends on how +// `convert` is called and thus the correct type cannot be determined when the +// `TypeMention` is constructed. +mod concrete_type_as_generic_access_associated_type { + use super::*; + + trait Trans { + type Output; + fn through(t: T) -> Self::Output; + } + + impl Trans for S { + type Output = i32; + fn through(t: bool) -> Self::Output { + if t { + 1 + } else { + 0 + } + } + } + + impl Trans for S { + type Output = bool; + fn through(t: i32) -> Self::Output { + t != 0 // $ target=ne + } + } + + impl S { + // S::convert + fn convert(&self, t: T) -> >::Output + where + Self: Trans, + { + S::through(t) + } + } + + pub fn test() { + let s = S; + let _a = s.convert(true); // $ target=S::convert type=_a:i32 SPURIOUS: bool + let _b = s.convert(42); // $ target=S::convert type=_b:bool SPURIOUS: i32 + } +} + // Tests for signatures that access associated types on type parameters mod type_param_access_associated_type { use super::*; @@ -468,6 +517,7 @@ mod dyn_trait { pub fn test() { default_method_using_associated_type::test(); // $ target=test concrete_type_access_associated_type::test(); // $ target=test + concrete_type_as_generic_access_associated_type::test(); // $ target=test type_param_access_associated_type::test(); // $ target=test generic_associated_type::test(); // $ target=test multiple_associated_types::test(); // $ target=test diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index bf56e3770214..753dad0079b8 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -95,197 +95,213 @@ inferCertainType | associated_types.rs:188:31:188:33 | 'a' | | {EXTERNAL LOCATION} | char | | associated_types.rs:190:22:190:26 | 42i32 | | {EXTERNAL LOCATION} | i32 | | associated_types.rs:191:22:191:25 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:199:30:199:34 | thing | | associated_types.rs:199:19:199:27 | T | -| associated_types.rs:200:9:200:13 | thing | | associated_types.rs:199:19:199:27 | T | -| associated_types.rs:203:33:203:37 | thing | | associated_types.rs:203:22:203:30 | T | -| associated_types.rs:204:9:204:13 | thing | | associated_types.rs:203:22:203:30 | T | -| associated_types.rs:207:48:207:52 | thing | | associated_types.rs:207:33:207:45 | T | -| associated_types.rs:207:91:212:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:208:9:211:9 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:209:13:209:17 | thing | | associated_types.rs:207:33:207:45 | T | -| associated_types.rs:210:13:210:17 | thing | | associated_types.rs:207:33:207:45 | T | -| associated_types.rs:214:19:221:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:217:13:220:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:220:13:220:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:228:26:228:26 | x | | associated_types.rs:228:23:228:23 | T | -| associated_types.rs:231:5:233:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:232:18:232:18 | x | | associated_types.rs:228:23:228:23 | T | -| associated_types.rs:236:24:236:24 | x | | associated_types.rs:236:21:236:21 | T | -| associated_types.rs:239:5:243:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:240:19:240:19 | x | | associated_types.rs:236:21:236:21 | T | -| associated_types.rs:241:23:241:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:241:24:241:24 | x | | associated_types.rs:236:21:236:21 | T | -| associated_types.rs:242:18:242:18 | x | | associated_types.rs:236:21:236:21 | T | -| associated_types.rs:246:23:246:23 | x | | associated_types.rs:246:20:246:20 | T | -| associated_types.rs:250:5:254:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:251:19:251:19 | x | | associated_types.rs:246:20:246:20 | T | -| associated_types.rs:252:23:252:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:252:24:252:24 | x | | associated_types.rs:246:20:246:20 | T | -| associated_types.rs:253:18:253:18 | x | | associated_types.rs:246:20:246:20 | T | -| associated_types.rs:260:17:260:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:260:17:260:21 | SelfParam | TRef | associated_types.rs:256:5:261:5 | Self [trait AssocNameClash] | -| associated_types.rs:263:34:263:34 | x | | associated_types.rs:263:31:263:31 | T | -| associated_types.rs:267:5:270:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:268:18:268:18 | x | | associated_types.rs:263:31:263:31 | T | -| associated_types.rs:269:18:269:18 | x | | associated_types.rs:263:31:263:31 | T | -| associated_types.rs:280:19:280:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:280:19:280:23 | SelfParam | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:280:26:280:26 | a | | associated_types.rs:280:16:280:16 | A | -| associated_types.rs:283:23:283:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:283:23:283:27 | SelfParam | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:283:30:283:30 | a | | associated_types.rs:283:20:283:20 | A | -| associated_types.rs:283:36:283:36 | b | | associated_types.rs:283:20:283:20 | A | -| associated_types.rs:283:76:286:9 | { ... } | | associated_types.rs:277:9:277:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:284:13:284:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:284:13:284:16 | self | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:284:22:284:22 | a | | associated_types.rs:283:20:283:20 | A | -| associated_types.rs:285:13:285:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:285:13:285:16 | self | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:285:22:285:22 | b | | associated_types.rs:283:20:283:20 | A | -| associated_types.rs:294:19:294:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:294:19:294:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:294:26:294:26 | a | | associated_types.rs:294:16:294:16 | A | -| associated_types.rs:294:46:296:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:294:46:296:9 | { ... } | A | associated_types.rs:294:16:294:16 | A | -| associated_types.rs:295:21:295:21 | a | | associated_types.rs:294:16:294:16 | A | -| associated_types.rs:299:19:306:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:302:25:302:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:305:29:305:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:305:35:305:39 | false | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:317:21:317:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:317:21:317:25 | SelfParam | TRef | associated_types.rs:312:5:322:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:319:20:319:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:319:20:319:24 | SelfParam | TRef | associated_types.rs:312:5:322:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:321:20:321:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:321:20:321:24 | SelfParam | TRef | associated_types.rs:312:5:322:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:328:21:328:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:328:21:328:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:328:34:330:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:332:20:332:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:332:20:332:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:332:43:334:9 | { ... } | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:336:20:336:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:336:20:336:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:336:43:338:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:341:19:345:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:353:24:353:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:353:24:353:28 | SelfParam | TRef | associated_types.rs:351:5:354:5 | Self [trait Subtrait] | -| associated_types.rs:362:23:362:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:362:23:362:27 | SelfParam | TRef | associated_types.rs:356:5:366:5 | Self [trait Subtrait2] | -| associated_types.rs:362:30:362:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:362:48:362:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:362:66:365:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:363:13:363:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:363:13:363:16 | self | TRef | associated_types.rs:356:5:366:5 | Self [trait Subtrait2] | -| associated_types.rs:363:22:363:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:364:13:364:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:364:13:364:16 | self | TRef | associated_types.rs:356:5:366:5 | Self [trait Subtrait2] | -| associated_types.rs:364:22:364:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:373:16:373:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:373:16:373:20 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:373:16:373:20 | SelfParam | TRef.T | associated_types.rs:370:10:370:16 | T | -| associated_types.rs:373:39:375:9 | { ... } | | associated_types.rs:370:10:370:16 | T | -| associated_types.rs:374:13:374:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:374:13:374:16 | self | TRef | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:374:13:374:16 | self | TRef.T | associated_types.rs:370:10:370:16 | T | -| associated_types.rs:377:16:377:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:377:16:377:20 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:377:16:377:20 | SelfParam | TRef.T | associated_types.rs:370:10:370:16 | T | -| associated_types.rs:377:23:377:30 | _content | | associated_types.rs:370:10:370:16 | T | -| associated_types.rs:377:47:379:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:378:22:378:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:378:22:378:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:378:22:378:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:378:22:378:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:384:24:384:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:384:24:384:28 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:384:24:384:28 | SelfParam | TRef.T | associated_types.rs:382:10:382:16 | T | -| associated_types.rs:384:47:386:9 | { ... } | | associated_types.rs:382:10:382:16 | T | -| associated_types.rs:385:15:385:18 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:385:15:385:18 | self | TRef | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:385:15:385:18 | self | TRef.T | associated_types.rs:382:10:382:16 | T | -| associated_types.rs:391:24:391:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:391:24:391:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:391:24:391:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:391:47:394:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:399:24:399:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:399:24:399:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:399:24:399:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | -| associated_types.rs:399:47:401:9 | { ... } | | {EXTERNAL LOCATION} | char | -| associated_types.rs:404:33:404:36 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:404:33:404:36 | item | TRef | associated_types.rs:404:20:404:30 | T | -| associated_types.rs:405:9:405:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:405:9:405:12 | item | TRef | associated_types.rs:404:20:404:30 | T | -| associated_types.rs:408:35:408:38 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:408:35:408:38 | item | TRef | associated_types.rs:408:21:408:32 | T | -| associated_types.rs:408:90:411:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:409:9:409:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:409:9:409:12 | item | TRef | associated_types.rs:408:21:408:32 | T | -| associated_types.rs:410:9:410:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:410:9:410:12 | item | TRef | associated_types.rs:408:21:408:32 | T | -| associated_types.rs:413:19:422:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:414:28:414:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:417:28:417:31 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:418:37:418:42 | &item2 | | {EXTERNAL LOCATION} | & | -| associated_types.rs:420:29:420:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:421:29:421:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:435:16:435:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:435:16:435:20 | SelfParam | TRef | associated_types.rs:428:5:428:20 | ST | -| associated_types.rs:435:16:435:20 | SelfParam | TRef.T | associated_types.rs:430:10:430:21 | Output | -| associated_types.rs:435:39:437:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:435:39:437:9 | { ... } | E | associated_types.rs:430:10:430:21 | Output | -| associated_types.rs:435:39:437:9 | { ... } | T | associated_types.rs:430:10:430:21 | Output | -| associated_types.rs:436:16:436:19 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:436:16:436:19 | self | TRef | associated_types.rs:428:5:428:20 | ST | -| associated_types.rs:436:16:436:19 | self | TRef.T | associated_types.rs:430:10:430:21 | Output | -| associated_types.rs:440:19:442:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:441:21:441:24 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:449:31:449:31 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:449:31:449:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:449:31:449:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:449:61:457:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:451:21:451:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:451:21:451:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:451:21:451:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:454:19:454:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:454:19:454:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:454:19:454:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:456:23:456:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:456:23:456:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:456:23:456:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:459:36:459:36 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:459:36:459:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:459:36:459:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:459:36:459:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:459:92:465:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:460:21:460:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:460:21:460:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:460:21:460:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:460:21:460:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:461:19:461:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:461:19:461:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:461:19:461:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:461:19:461:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:462:23:462:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:462:23:462:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:462:23:462:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:462:23:462:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:463:21:463:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:463:21:463:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:463:21:463:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:463:21:463:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:464:19:464:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:464:19:464:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:464:19:464:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:464:19:464:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:468:15:476:1 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:469:5:469:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:470:5:470:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:471:5:471:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:472:5:472:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:473:5:473:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:474:5:474:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:475:5:475:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:206:20:206:20 | t | | associated_types.rs:204:17:204:17 | T | +| associated_types.rs:211:20:211:20 | t | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:211:45:217:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:212:16:212:16 | t | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:222:20:222:20 | t | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:222:44:224:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:223:13:223:13 | t | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:229:23:229:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:229:23:229:27 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:229:30:229:30 | t | | associated_types.rs:229:20:229:20 | T | +| associated_types.rs:232:9:234:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:232:9:234:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:233:24:233:24 | t | | associated_types.rs:229:20:229:20 | T | +| associated_types.rs:237:19:241:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:239:28:239:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:248:30:248:34 | thing | | associated_types.rs:248:19:248:27 | T | +| associated_types.rs:249:9:249:13 | thing | | associated_types.rs:248:19:248:27 | T | +| associated_types.rs:252:33:252:37 | thing | | associated_types.rs:252:22:252:30 | T | +| associated_types.rs:253:9:253:13 | thing | | associated_types.rs:252:22:252:30 | T | +| associated_types.rs:256:48:256:52 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:256:91:261:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:257:9:260:9 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:258:13:258:17 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:259:13:259:17 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:263:19:270:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:266:13:269:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:269:13:269:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:277:26:277:26 | x | | associated_types.rs:277:23:277:23 | T | +| associated_types.rs:280:5:282:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:281:18:281:18 | x | | associated_types.rs:277:23:277:23 | T | +| associated_types.rs:285:24:285:24 | x | | associated_types.rs:285:21:285:21 | T | +| associated_types.rs:288:5:292:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:289:19:289:19 | x | | associated_types.rs:285:21:285:21 | T | +| associated_types.rs:290:23:290:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:290:24:290:24 | x | | associated_types.rs:285:21:285:21 | T | +| associated_types.rs:291:18:291:18 | x | | associated_types.rs:285:21:285:21 | T | +| associated_types.rs:295:23:295:23 | x | | associated_types.rs:295:20:295:20 | T | +| associated_types.rs:299:5:303:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:300:19:300:19 | x | | associated_types.rs:295:20:295:20 | T | +| associated_types.rs:301:23:301:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:301:24:301:24 | x | | associated_types.rs:295:20:295:20 | T | +| associated_types.rs:302:18:302:18 | x | | associated_types.rs:295:20:295:20 | T | +| associated_types.rs:309:17:309:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:309:17:309:21 | SelfParam | TRef | associated_types.rs:305:5:310:5 | Self [trait AssocNameClash] | +| associated_types.rs:312:34:312:34 | x | | associated_types.rs:312:31:312:31 | T | +| associated_types.rs:316:5:319:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:317:18:317:18 | x | | associated_types.rs:312:31:312:31 | T | +| associated_types.rs:318:18:318:18 | x | | associated_types.rs:312:31:312:31 | T | +| associated_types.rs:329:19:329:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:329:19:329:23 | SelfParam | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:329:26:329:26 | a | | associated_types.rs:329:16:329:16 | A | +| associated_types.rs:332:23:332:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:332:23:332:27 | SelfParam | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:332:30:332:30 | a | | associated_types.rs:332:20:332:20 | A | +| associated_types.rs:332:36:332:36 | b | | associated_types.rs:332:20:332:20 | A | +| associated_types.rs:332:76:335:9 | { ... } | | associated_types.rs:326:9:326:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:333:13:333:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:333:13:333:16 | self | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:333:22:333:22 | a | | associated_types.rs:332:20:332:20 | A | +| associated_types.rs:334:13:334:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:334:13:334:16 | self | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:334:22:334:22 | b | | associated_types.rs:332:20:332:20 | A | +| associated_types.rs:343:19:343:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:343:19:343:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:343:26:343:26 | a | | associated_types.rs:343:16:343:16 | A | +| associated_types.rs:343:46:345:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:343:46:345:9 | { ... } | A | associated_types.rs:343:16:343:16 | A | +| associated_types.rs:344:21:344:21 | a | | associated_types.rs:343:16:343:16 | A | +| associated_types.rs:348:19:355:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:351:25:351:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:354:29:354:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:354:35:354:39 | false | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:366:21:366:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:366:21:366:25 | SelfParam | TRef | associated_types.rs:361:5:371:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:368:20:368:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:368:20:368:24 | SelfParam | TRef | associated_types.rs:361:5:371:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:370:20:370:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:370:20:370:24 | SelfParam | TRef | associated_types.rs:361:5:371:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:377:21:377:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:377:21:377:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:377:34:379:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:381:20:381:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:381:20:381:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:381:43:383:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:385:20:385:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:385:20:385:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:385:43:387:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:390:19:394:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:402:24:402:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:402:24:402:28 | SelfParam | TRef | associated_types.rs:400:5:403:5 | Self [trait Subtrait] | +| associated_types.rs:411:23:411:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:411:23:411:27 | SelfParam | TRef | associated_types.rs:405:5:415:5 | Self [trait Subtrait2] | +| associated_types.rs:411:30:411:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:411:48:411:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:411:66:414:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:412:13:412:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:412:13:412:16 | self | TRef | associated_types.rs:405:5:415:5 | Self [trait Subtrait2] | +| associated_types.rs:412:22:412:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:413:13:413:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:413:13:413:16 | self | TRef | associated_types.rs:405:5:415:5 | Self [trait Subtrait2] | +| associated_types.rs:413:22:413:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:422:16:422:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:422:16:422:20 | SelfParam | TRef | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:422:16:422:20 | SelfParam | TRef.T | associated_types.rs:419:10:419:16 | T | +| associated_types.rs:422:39:424:9 | { ... } | | associated_types.rs:419:10:419:16 | T | +| associated_types.rs:423:13:423:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:423:13:423:16 | self | TRef | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:423:13:423:16 | self | TRef.T | associated_types.rs:419:10:419:16 | T | +| associated_types.rs:426:16:426:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:426:16:426:20 | SelfParam | TRef | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:426:16:426:20 | SelfParam | TRef.T | associated_types.rs:419:10:419:16 | T | +| associated_types.rs:426:23:426:30 | _content | | associated_types.rs:419:10:419:16 | T | +| associated_types.rs:426:47:428:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:427:22:427:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:427:22:427:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:427:22:427:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:427:22:427:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:433:24:433:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:433:24:433:28 | SelfParam | TRef | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:433:24:433:28 | SelfParam | TRef.T | associated_types.rs:431:10:431:16 | T | +| associated_types.rs:433:47:435:9 | { ... } | | associated_types.rs:431:10:431:16 | T | +| associated_types.rs:434:15:434:18 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:434:15:434:18 | self | TRef | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:434:15:434:18 | self | TRef.T | associated_types.rs:431:10:431:16 | T | +| associated_types.rs:440:24:440:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:440:24:440:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:440:24:440:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:440:47:443:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:448:24:448:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:448:24:448:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:448:24:448:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:448:47:450:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:453:33:453:36 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:453:33:453:36 | item | TRef | associated_types.rs:453:20:453:30 | T | +| associated_types.rs:454:9:454:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:454:9:454:12 | item | TRef | associated_types.rs:453:20:453:30 | T | +| associated_types.rs:457:35:457:38 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:457:35:457:38 | item | TRef | associated_types.rs:457:21:457:32 | T | +| associated_types.rs:457:90:460:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:458:9:458:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:458:9:458:12 | item | TRef | associated_types.rs:457:21:457:32 | T | +| associated_types.rs:459:9:459:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:459:9:459:12 | item | TRef | associated_types.rs:457:21:457:32 | T | +| associated_types.rs:462:19:471:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:463:28:463:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:466:28:466:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:467:37:467:42 | &item2 | | {EXTERNAL LOCATION} | & | +| associated_types.rs:469:29:469:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:470:29:470:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:484:16:484:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:484:16:484:20 | SelfParam | TRef | associated_types.rs:477:5:477:20 | ST | +| associated_types.rs:484:16:484:20 | SelfParam | TRef.T | associated_types.rs:479:10:479:21 | Output | +| associated_types.rs:484:39:486:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:484:39:486:9 | { ... } | E | associated_types.rs:479:10:479:21 | Output | +| associated_types.rs:484:39:486:9 | { ... } | T | associated_types.rs:479:10:479:21 | Output | +| associated_types.rs:485:16:485:19 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:485:16:485:19 | self | TRef | associated_types.rs:477:5:477:20 | ST | +| associated_types.rs:485:16:485:19 | self | TRef.T | associated_types.rs:479:10:479:21 | Output | +| associated_types.rs:489:19:491:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:490:21:490:24 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:498:31:498:31 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:498:31:498:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:498:31:498:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:498:61:506:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:500:21:500:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:500:21:500:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:500:21:500:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:503:19:503:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:503:19:503:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:503:19:503:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:505:23:505:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:505:23:505:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:505:23:505:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:508:36:508:36 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:508:36:508:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:508:36:508:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:508:36:508:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:508:92:514:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:509:21:509:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:509:21:509:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:509:21:509:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:509:21:509:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:510:19:510:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:510:19:510:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:510:19:510:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:510:19:510:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:511:23:511:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:511:23:511:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:511:23:511:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:511:23:511:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:512:21:512:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:512:21:512:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:512:21:512:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:512:21:512:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:513:19:513:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:513:19:513:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:513:19:513:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:513:19:513:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:517:15:526:1 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:518:5:518:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:519:5:519:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:520:5:520:59 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:521:5:521:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:522:5:522:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:523:5:523:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:524:5:524:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:525:5:525:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:15:18:15:22 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:15:18:15:22 | SelfParam | TRef | blanket_impl.rs:9:5:10:14 | S2 | | blanket_impl.rs:15:42:17:9 | { ... } | | {EXTERNAL LOCATION} | & | @@ -4888,328 +4904,366 @@ inferType | associated_types.rs:191:18:191:26 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | | associated_types.rs:191:18:191:33 | ... .proj() | | {EXTERNAL LOCATION} | char | | associated_types.rs:191:22:191:25 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:199:30:199:34 | thing | | associated_types.rs:199:19:199:27 | T | -| associated_types.rs:200:9:200:13 | thing | | associated_types.rs:199:19:199:27 | T | -| associated_types.rs:203:33:203:37 | thing | | associated_types.rs:203:22:203:30 | T | -| associated_types.rs:204:9:204:13 | thing | | associated_types.rs:203:22:203:30 | T | -| associated_types.rs:207:48:207:52 | thing | | associated_types.rs:207:33:207:45 | T | -| associated_types.rs:207:91:212:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:208:9:211:9 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:209:13:209:17 | thing | | associated_types.rs:207:33:207:45 | T | -| associated_types.rs:210:13:210:17 | thing | | associated_types.rs:207:33:207:45 | T | -| associated_types.rs:214:19:221:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:215:30:215:30 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:216:33:216:33 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:217:13:220:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:220:13:220:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:220:38:220:38 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:228:26:228:26 | x | | associated_types.rs:228:23:228:23 | T | -| associated_types.rs:231:5:233:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:232:13:232:14 | _a | | {EXTERNAL LOCATION} | char | -| associated_types.rs:232:18:232:18 | x | | associated_types.rs:228:23:228:23 | T | -| associated_types.rs:232:18:232:24 | x.get() | | {EXTERNAL LOCATION} | char | -| associated_types.rs:236:24:236:24 | x | | associated_types.rs:236:21:236:21 | T | -| associated_types.rs:239:5:243:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:240:13:240:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:240:19:240:19 | x | | associated_types.rs:236:21:236:21 | T | -| associated_types.rs:240:19:240:25 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:241:13:241:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:241:19:241:25 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:241:23:241:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:241:23:241:24 | &x | TRef | associated_types.rs:236:21:236:21 | T | -| associated_types.rs:241:24:241:24 | x | | associated_types.rs:236:21:236:21 | T | -| associated_types.rs:242:13:242:14 | _b | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:242:18:242:18 | x | | associated_types.rs:236:21:236:21 | T | -| associated_types.rs:242:18:242:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:246:23:246:23 | x | | associated_types.rs:246:20:246:20 | T | -| associated_types.rs:250:5:254:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:251:13:251:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:251:19:251:19 | x | | associated_types.rs:246:20:246:20 | T | -| associated_types.rs:251:19:251:25 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:252:13:252:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:252:19:252:25 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:252:23:252:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:252:23:252:24 | &x | TRef | associated_types.rs:246:20:246:20 | T | -| associated_types.rs:252:24:252:24 | x | | associated_types.rs:246:20:246:20 | T | -| associated_types.rs:253:13:253:14 | _b | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:253:18:253:18 | x | | associated_types.rs:246:20:246:20 | T | -| associated_types.rs:253:18:253:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:260:17:260:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:260:17:260:21 | SelfParam | TRef | associated_types.rs:256:5:261:5 | Self [trait AssocNameClash] | -| associated_types.rs:263:34:263:34 | x | | associated_types.rs:263:31:263:31 | T | -| associated_types.rs:267:5:270:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:268:13:268:14 | _a | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:268:18:268:18 | x | | associated_types.rs:263:31:263:31 | T | -| associated_types.rs:268:18:268:24 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:269:13:269:14 | _b | | {EXTERNAL LOCATION} | char | -| associated_types.rs:269:18:269:18 | x | | associated_types.rs:263:31:263:31 | T | -| associated_types.rs:269:18:269:25 | x.get2() | | {EXTERNAL LOCATION} | char | -| associated_types.rs:280:19:280:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:280:19:280:23 | SelfParam | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:280:26:280:26 | a | | associated_types.rs:280:16:280:16 | A | -| associated_types.rs:283:23:283:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:283:23:283:27 | SelfParam | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:283:30:283:30 | a | | associated_types.rs:283:20:283:20 | A | -| associated_types.rs:283:36:283:36 | b | | associated_types.rs:283:20:283:20 | A | -| associated_types.rs:283:76:286:9 | { ... } | | associated_types.rs:277:9:277:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:284:13:284:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:284:13:284:16 | self | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:284:13:284:23 | self.put(...) | | associated_types.rs:277:9:277:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:284:22:284:22 | a | | associated_types.rs:283:20:283:20 | A | -| associated_types.rs:285:13:285:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:285:13:285:16 | self | TRef | associated_types.rs:276:5:287:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:285:13:285:23 | self.put(...) | | associated_types.rs:277:9:277:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:285:22:285:22 | b | | associated_types.rs:283:20:283:20 | A | -| associated_types.rs:294:19:294:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:294:19:294:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:294:26:294:26 | a | | associated_types.rs:294:16:294:16 | A | -| associated_types.rs:294:46:296:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:294:46:296:9 | { ... } | A | associated_types.rs:294:16:294:16 | A | -| associated_types.rs:295:13:295:22 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:295:13:295:22 | Wrapper(...) | A | associated_types.rs:294:16:294:16 | A | -| associated_types.rs:295:21:295:21 | a | | associated_types.rs:294:16:294:16 | A | -| associated_types.rs:299:19:306:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:300:13:300:13 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:300:17:300:17 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:302:13:302:15 | _g1 | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:302:13:302:15 | _g1 | A | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:302:19:302:19 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:302:19:302:29 | s.put(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:302:19:302:29 | s.put(...) | A | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:302:25:302:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:305:13:305:15 | _g2 | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:305:19:305:19 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:305:19:305:40 | s.put_two(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:305:29:305:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:305:35:305:39 | false | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:317:21:317:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:317:21:317:25 | SelfParam | TRef | associated_types.rs:312:5:322:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:319:20:319:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:319:20:319:24 | SelfParam | TRef | associated_types.rs:312:5:322:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:321:20:321:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:321:20:321:24 | SelfParam | TRef | associated_types.rs:312:5:322:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:328:21:328:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:328:21:328:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:328:34:330:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:329:13:329:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:332:20:332:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:332:20:332:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:332:43:334:9 | { ... } | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:333:13:333:13 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:336:20:336:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:336:20:336:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:336:43:338:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:337:13:337:14 | S2 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:341:19:345:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:342:13:342:23 | _assoc_zero | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:342:27:342:28 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:342:27:342:39 | S3.get_zero() | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:343:13:343:22 | _assoc_one | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:343:26:343:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:343:26:343:37 | S3.get_one() | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:344:13:344:22 | _assoc_two | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:344:26:344:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:344:26:344:37 | S3.get_two() | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:353:24:353:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:353:24:353:28 | SelfParam | TRef | associated_types.rs:351:5:354:5 | Self [trait Subtrait] | -| associated_types.rs:362:23:362:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:362:23:362:27 | SelfParam | TRef | associated_types.rs:356:5:366:5 | Self [trait Subtrait2] | -| associated_types.rs:362:30:362:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:362:48:362:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:362:66:365:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:363:13:363:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:363:13:363:16 | self | TRef | associated_types.rs:356:5:366:5 | Self [trait Subtrait2] | -| associated_types.rs:363:13:363:24 | self.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:363:22:363:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:364:13:364:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:364:13:364:16 | self | TRef | associated_types.rs:356:5:366:5 | Self [trait Subtrait2] | -| associated_types.rs:364:13:364:24 | self.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:364:22:364:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:373:16:373:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:373:16:373:20 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:373:16:373:20 | SelfParam | TRef.T | associated_types.rs:370:10:370:16 | T | -| associated_types.rs:373:39:375:9 | { ... } | | associated_types.rs:370:10:370:16 | T | -| associated_types.rs:374:13:374:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:374:13:374:16 | self | TRef | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:374:13:374:16 | self | TRef.T | associated_types.rs:370:10:370:16 | T | -| associated_types.rs:374:13:374:18 | self.0 | | associated_types.rs:370:10:370:16 | T | -| associated_types.rs:377:16:377:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:377:16:377:20 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:377:16:377:20 | SelfParam | TRef.T | associated_types.rs:370:10:370:16 | T | -| associated_types.rs:377:23:377:30 | _content | | associated_types.rs:370:10:370:16 | T | -| associated_types.rs:377:47:379:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:378:13:378:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:378:22:378:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:378:22:378:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:378:22:378:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:378:22:378:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:378:22:378:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:384:24:384:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:384:24:384:28 | SelfParam | TRef | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:384:24:384:28 | SelfParam | TRef.T | associated_types.rs:382:10:382:16 | T | -| associated_types.rs:384:47:386:9 | { ... } | | associated_types.rs:382:10:382:16 | T | -| associated_types.rs:385:13:385:19 | (...) | | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:385:13:385:19 | (...) | T | associated_types.rs:382:10:382:16 | T | -| associated_types.rs:385:13:385:21 | ... .0 | | associated_types.rs:382:10:382:16 | T | -| associated_types.rs:385:14:385:18 | * ... | | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:385:14:385:18 | * ... | T | associated_types.rs:382:10:382:16 | T | -| associated_types.rs:385:15:385:18 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:385:15:385:18 | self | TRef | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:385:15:385:18 | self | TRef.T | associated_types.rs:382:10:382:16 | T | -| associated_types.rs:391:24:391:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:391:24:391:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:391:24:391:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:391:47:394:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:393:13:393:30 | ...::default(...) | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:399:24:399:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:399:24:399:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:399:24:399:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | -| associated_types.rs:399:47:401:9 | { ... } | | {EXTERNAL LOCATION} | char | -| associated_types.rs:400:13:400:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | -| associated_types.rs:404:33:404:36 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:404:33:404:36 | item | TRef | associated_types.rs:404:20:404:30 | T | -| associated_types.rs:405:9:405:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:405:9:405:12 | item | TRef | associated_types.rs:404:20:404:30 | T | -| associated_types.rs:408:35:408:38 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:408:35:408:38 | item | TRef | associated_types.rs:408:21:408:32 | T | -| associated_types.rs:408:90:411:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:409:9:409:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:409:9:409:12 | item | TRef | associated_types.rs:408:21:408:32 | T | -| associated_types.rs:409:9:409:20 | item.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:410:9:410:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:410:9:410:12 | item | TRef | associated_types.rs:408:21:408:32 | T | -| associated_types.rs:410:9:410:31 | item.insert_two(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:413:19:422:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:414:13:414:17 | item1 | | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:414:13:414:17 | item1 | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:414:21:414:33 | MyType(...) | | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:414:21:414:33 | MyType(...) | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:414:28:414:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:415:13:415:21 | _content1 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:415:25:415:29 | item1 | | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:415:25:415:29 | item1 | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:415:25:415:43 | item1.get_content() | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:417:13:417:17 | item2 | | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:417:13:417:17 | item2 | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:417:21:417:32 | MyType(...) | | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:417:21:417:32 | MyType(...) | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:417:28:417:31 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:418:37:418:42 | &item2 | | {EXTERNAL LOCATION} | & | -| associated_types.rs:418:37:418:42 | &item2 | TRef | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:418:37:418:42 | &item2 | TRef.T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:418:38:418:42 | item2 | | associated_types.rs:368:5:368:24 | MyType | -| associated_types.rs:418:38:418:42 | item2 | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:420:13:420:21 | _content3 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:420:25:420:34 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:420:25:420:34 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:420:25:420:48 | ... .get_content() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:420:29:420:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:421:13:421:21 | _content4 | | {EXTERNAL LOCATION} | char | -| associated_types.rs:421:25:421:33 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:421:25:421:33 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | -| associated_types.rs:421:25:421:47 | ... .get_content() | | {EXTERNAL LOCATION} | char | -| associated_types.rs:421:29:421:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:435:16:435:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:435:16:435:20 | SelfParam | TRef | associated_types.rs:428:5:428:20 | ST | -| associated_types.rs:435:16:435:20 | SelfParam | TRef.T | associated_types.rs:430:10:430:21 | Output | -| associated_types.rs:435:39:437:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:435:39:437:9 | { ... } | E | associated_types.rs:430:10:430:21 | Output | -| associated_types.rs:435:39:437:9 | { ... } | T | associated_types.rs:430:10:430:21 | Output | -| associated_types.rs:436:13:436:22 | Ok(...) | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:436:13:436:22 | Ok(...) | E | associated_types.rs:430:10:430:21 | Output | -| associated_types.rs:436:13:436:22 | Ok(...) | T | associated_types.rs:430:10:430:21 | Output | -| associated_types.rs:436:16:436:19 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:436:16:436:19 | self | TRef | associated_types.rs:428:5:428:20 | ST | -| associated_types.rs:436:16:436:19 | self | TRef.T | associated_types.rs:430:10:430:21 | Output | -| associated_types.rs:436:16:436:21 | self.0 | | associated_types.rs:430:10:430:21 | Output | -| associated_types.rs:440:19:442:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:441:13:441:14 | _y | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:441:13:441:14 | _y | E | {EXTERNAL LOCATION} | bool | -| associated_types.rs:441:13:441:14 | _y | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:441:18:441:25 | ST(...) | | associated_types.rs:428:5:428:20 | ST | -| associated_types.rs:441:18:441:25 | ST(...) | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:441:18:441:31 | ... .get() | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:441:18:441:31 | ... .get() | E | {EXTERNAL LOCATION} | bool | -| associated_types.rs:441:18:441:31 | ... .get() | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:441:21:441:24 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:449:31:449:31 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:449:31:449:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:449:31:449:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:449:61:457:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:451:13:451:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:451:19:451:22 | (...) | | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:451:19:451:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:451:19:451:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:451:20:451:21 | * ... | | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:451:20:451:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:451:21:451:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:451:21:451:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:451:21:451:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:454:13:454:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:454:19:454:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:454:19:454:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:454:19:454:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:454:19:454:25 | t.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:456:13:456:15 | _a3 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:456:19:456:24 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:456:23:456:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:456:23:456:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:456:23:456:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:459:36:459:36 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:459:36:459:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:459:36:459:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:459:36:459:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:459:92:465:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:460:13:460:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:460:19:460:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:460:19:460:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:460:19:460:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:460:19:460:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:460:20:460:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:460:20:460:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:460:20:460:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:460:21:460:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:460:21:460:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:460:21:460:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:460:21:460:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:461:13:461:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:461:19:461:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:461:19:461:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:461:19:461:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:461:19:461:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:461:19:461:25 | t.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:462:13:462:15 | _a3 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:462:19:462:24 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:462:23:462:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:462:23:462:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:462:23:462:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:462:23:462:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:463:13:463:15 | _b1 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:463:19:463:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:463:19:463:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:463:19:463:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:463:19:463:36 | ... .get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:463:20:463:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:463:20:463:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:463:20:463:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:463:21:463:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:463:21:463:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:463:21:463:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:463:21:463:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:464:13:464:15 | _b2 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:464:19:464:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:464:19:464:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:464:19:464:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:464:19:464:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:464:19:464:33 | t.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:468:15:476:1 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:469:5:469:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:470:5:470:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:471:5:471:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:472:5:472:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:473:5:473:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:474:5:474:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:475:5:475:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:206:20:206:20 | t | | associated_types.rs:204:17:204:17 | T | +| associated_types.rs:211:20:211:20 | t | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:211:45:217:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:212:13:216:13 | if t {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:212:16:212:16 | t | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:212:18:214:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:213:17:213:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:214:20:216:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:215:17:215:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:222:20:222:20 | t | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:222:44:224:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:223:13:223:13 | t | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:223:13:223:18 | ... != ... | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:223:18:223:18 | 0 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:229:23:229:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:229:23:229:27 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:229:30:229:30 | t | | associated_types.rs:229:20:229:20 | T | +| associated_types.rs:232:9:234:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:232:9:234:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:233:13:233:25 | ...::through(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:233:13:233:25 | ...::through(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:233:24:233:24 | t | | associated_types.rs:229:20:229:20 | T | +| associated_types.rs:237:19:241:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:238:13:238:13 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:238:17:238:17 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:239:13:239:14 | _a | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:239:13:239:14 | _a | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:239:18:239:18 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:239:18:239:32 | s.convert(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:239:18:239:32 | s.convert(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:239:28:239:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:240:13:240:14 | _b | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:240:13:240:14 | _b | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:240:18:240:18 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:240:18:240:30 | s.convert(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:240:18:240:30 | s.convert(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:240:28:240:29 | 42 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:248:30:248:34 | thing | | associated_types.rs:248:19:248:27 | T | +| associated_types.rs:249:9:249:13 | thing | | associated_types.rs:248:19:248:27 | T | +| associated_types.rs:252:33:252:37 | thing | | associated_types.rs:252:22:252:30 | T | +| associated_types.rs:253:9:253:13 | thing | | associated_types.rs:252:22:252:30 | T | +| associated_types.rs:256:48:256:52 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:256:91:261:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:257:9:260:9 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:258:13:258:17 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:259:13:259:17 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:263:19:270:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:264:30:264:30 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:265:33:265:33 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:266:13:269:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:269:13:269:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:269:38:269:38 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:277:26:277:26 | x | | associated_types.rs:277:23:277:23 | T | +| associated_types.rs:280:5:282:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:281:13:281:14 | _a | | {EXTERNAL LOCATION} | char | +| associated_types.rs:281:18:281:18 | x | | associated_types.rs:277:23:277:23 | T | +| associated_types.rs:281:18:281:24 | x.get() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:285:24:285:24 | x | | associated_types.rs:285:21:285:21 | T | +| associated_types.rs:288:5:292:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:289:13:289:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:289:19:289:19 | x | | associated_types.rs:285:21:285:21 | T | +| associated_types.rs:289:19:289:25 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:290:13:290:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:290:19:290:25 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:290:23:290:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:290:23:290:24 | &x | TRef | associated_types.rs:285:21:285:21 | T | +| associated_types.rs:290:24:290:24 | x | | associated_types.rs:285:21:285:21 | T | +| associated_types.rs:291:13:291:14 | _b | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:291:18:291:18 | x | | associated_types.rs:285:21:285:21 | T | +| associated_types.rs:291:18:291:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:295:23:295:23 | x | | associated_types.rs:295:20:295:20 | T | +| associated_types.rs:299:5:303:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:300:13:300:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:300:19:300:19 | x | | associated_types.rs:295:20:295:20 | T | +| associated_types.rs:300:19:300:25 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:301:13:301:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:301:19:301:25 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:301:23:301:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:301:23:301:24 | &x | TRef | associated_types.rs:295:20:295:20 | T | +| associated_types.rs:301:24:301:24 | x | | associated_types.rs:295:20:295:20 | T | +| associated_types.rs:302:13:302:14 | _b | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:302:18:302:18 | x | | associated_types.rs:295:20:295:20 | T | +| associated_types.rs:302:18:302:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:309:17:309:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:309:17:309:21 | SelfParam | TRef | associated_types.rs:305:5:310:5 | Self [trait AssocNameClash] | +| associated_types.rs:312:34:312:34 | x | | associated_types.rs:312:31:312:31 | T | +| associated_types.rs:316:5:319:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:317:13:317:14 | _a | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:317:18:317:18 | x | | associated_types.rs:312:31:312:31 | T | +| associated_types.rs:317:18:317:24 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:318:13:318:14 | _b | | {EXTERNAL LOCATION} | char | +| associated_types.rs:318:18:318:18 | x | | associated_types.rs:312:31:312:31 | T | +| associated_types.rs:318:18:318:25 | x.get2() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:329:19:329:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:329:19:329:23 | SelfParam | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:329:26:329:26 | a | | associated_types.rs:329:16:329:16 | A | +| associated_types.rs:332:23:332:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:332:23:332:27 | SelfParam | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:332:30:332:30 | a | | associated_types.rs:332:20:332:20 | A | +| associated_types.rs:332:36:332:36 | b | | associated_types.rs:332:20:332:20 | A | +| associated_types.rs:332:76:335:9 | { ... } | | associated_types.rs:326:9:326:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:333:13:333:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:333:13:333:16 | self | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:333:13:333:23 | self.put(...) | | associated_types.rs:326:9:326:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:333:22:333:22 | a | | associated_types.rs:332:20:332:20 | A | +| associated_types.rs:334:13:334:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:334:13:334:16 | self | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:334:13:334:23 | self.put(...) | | associated_types.rs:326:9:326:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:334:22:334:22 | b | | associated_types.rs:332:20:332:20 | A | +| associated_types.rs:343:19:343:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:343:19:343:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:343:26:343:26 | a | | associated_types.rs:343:16:343:16 | A | +| associated_types.rs:343:46:345:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:343:46:345:9 | { ... } | A | associated_types.rs:343:16:343:16 | A | +| associated_types.rs:344:13:344:22 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:344:13:344:22 | Wrapper(...) | A | associated_types.rs:343:16:343:16 | A | +| associated_types.rs:344:21:344:21 | a | | associated_types.rs:343:16:343:16 | A | +| associated_types.rs:348:19:355:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:349:13:349:13 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:349:17:349:17 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:351:13:351:15 | _g1 | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:351:13:351:15 | _g1 | A | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:351:19:351:19 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:351:19:351:29 | s.put(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:351:19:351:29 | s.put(...) | A | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:351:25:351:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:354:13:354:15 | _g2 | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:354:19:354:19 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:354:19:354:40 | s.put_two(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:354:29:354:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:354:35:354:39 | false | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:366:21:366:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:366:21:366:25 | SelfParam | TRef | associated_types.rs:361:5:371:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:368:20:368:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:368:20:368:24 | SelfParam | TRef | associated_types.rs:361:5:371:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:370:20:370:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:370:20:370:24 | SelfParam | TRef | associated_types.rs:361:5:371:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:377:21:377:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:377:21:377:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:377:34:379:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:378:13:378:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:381:20:381:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:381:20:381:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:381:43:383:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:382:13:382:13 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:385:20:385:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:385:20:385:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:385:43:387:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:386:13:386:14 | S2 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:390:19:394:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:391:13:391:23 | _assoc_zero | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:391:27:391:28 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:391:27:391:39 | S3.get_zero() | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:392:13:392:22 | _assoc_one | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:392:26:392:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:392:26:392:37 | S3.get_one() | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:393:13:393:22 | _assoc_two | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:393:26:393:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:393:26:393:37 | S3.get_two() | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:402:24:402:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:402:24:402:28 | SelfParam | TRef | associated_types.rs:400:5:403:5 | Self [trait Subtrait] | +| associated_types.rs:411:23:411:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:411:23:411:27 | SelfParam | TRef | associated_types.rs:405:5:415:5 | Self [trait Subtrait2] | +| associated_types.rs:411:30:411:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:411:48:411:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:411:66:414:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:412:13:412:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:412:13:412:16 | self | TRef | associated_types.rs:405:5:415:5 | Self [trait Subtrait2] | +| associated_types.rs:412:13:412:24 | self.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:412:22:412:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:413:13:413:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:413:13:413:16 | self | TRef | associated_types.rs:405:5:415:5 | Self [trait Subtrait2] | +| associated_types.rs:413:13:413:24 | self.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:413:22:413:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:422:16:422:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:422:16:422:20 | SelfParam | TRef | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:422:16:422:20 | SelfParam | TRef.T | associated_types.rs:419:10:419:16 | T | +| associated_types.rs:422:39:424:9 | { ... } | | associated_types.rs:419:10:419:16 | T | +| associated_types.rs:423:13:423:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:423:13:423:16 | self | TRef | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:423:13:423:16 | self | TRef.T | associated_types.rs:419:10:419:16 | T | +| associated_types.rs:423:13:423:18 | self.0 | | associated_types.rs:419:10:419:16 | T | +| associated_types.rs:426:16:426:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:426:16:426:20 | SelfParam | TRef | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:426:16:426:20 | SelfParam | TRef.T | associated_types.rs:419:10:419:16 | T | +| associated_types.rs:426:23:426:30 | _content | | associated_types.rs:419:10:419:16 | T | +| associated_types.rs:426:47:428:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:427:13:427:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:427:22:427:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:427:22:427:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:427:22:427:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:427:22:427:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:427:22:427:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:433:24:433:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:433:24:433:28 | SelfParam | TRef | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:433:24:433:28 | SelfParam | TRef.T | associated_types.rs:431:10:431:16 | T | +| associated_types.rs:433:47:435:9 | { ... } | | associated_types.rs:431:10:431:16 | T | +| associated_types.rs:434:13:434:19 | (...) | | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:434:13:434:19 | (...) | T | associated_types.rs:431:10:431:16 | T | +| associated_types.rs:434:13:434:21 | ... .0 | | associated_types.rs:431:10:431:16 | T | +| associated_types.rs:434:14:434:18 | * ... | | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:434:14:434:18 | * ... | T | associated_types.rs:431:10:431:16 | T | +| associated_types.rs:434:15:434:18 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:434:15:434:18 | self | TRef | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:434:15:434:18 | self | TRef.T | associated_types.rs:431:10:431:16 | T | +| associated_types.rs:440:24:440:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:440:24:440:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:440:24:440:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:440:47:443:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:442:13:442:30 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:448:24:448:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:448:24:448:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:448:24:448:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:448:47:450:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:449:13:449:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | +| associated_types.rs:453:33:453:36 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:453:33:453:36 | item | TRef | associated_types.rs:453:20:453:30 | T | +| associated_types.rs:454:9:454:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:454:9:454:12 | item | TRef | associated_types.rs:453:20:453:30 | T | +| associated_types.rs:457:35:457:38 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:457:35:457:38 | item | TRef | associated_types.rs:457:21:457:32 | T | +| associated_types.rs:457:90:460:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:458:9:458:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:458:9:458:12 | item | TRef | associated_types.rs:457:21:457:32 | T | +| associated_types.rs:458:9:458:20 | item.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:459:9:459:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:459:9:459:12 | item | TRef | associated_types.rs:457:21:457:32 | T | +| associated_types.rs:459:9:459:31 | item.insert_two(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:462:19:471:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:463:13:463:17 | item1 | | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:463:13:463:17 | item1 | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:463:21:463:33 | MyType(...) | | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:463:21:463:33 | MyType(...) | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:463:28:463:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:464:13:464:21 | _content1 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:464:25:464:29 | item1 | | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:464:25:464:29 | item1 | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:464:25:464:43 | item1.get_content() | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:466:13:466:17 | item2 | | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:466:13:466:17 | item2 | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:466:21:466:32 | MyType(...) | | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:466:21:466:32 | MyType(...) | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:466:28:466:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:467:37:467:42 | &item2 | | {EXTERNAL LOCATION} | & | +| associated_types.rs:467:37:467:42 | &item2 | TRef | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:467:37:467:42 | &item2 | TRef.T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:467:38:467:42 | item2 | | associated_types.rs:417:5:417:24 | MyType | +| associated_types.rs:467:38:467:42 | item2 | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:469:13:469:21 | _content3 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:469:25:469:34 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:469:25:469:34 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:469:25:469:48 | ... .get_content() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:469:29:469:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:470:13:470:21 | _content4 | | {EXTERNAL LOCATION} | char | +| associated_types.rs:470:25:470:33 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:470:25:470:33 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:470:25:470:47 | ... .get_content() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:470:29:470:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:484:16:484:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:484:16:484:20 | SelfParam | TRef | associated_types.rs:477:5:477:20 | ST | +| associated_types.rs:484:16:484:20 | SelfParam | TRef.T | associated_types.rs:479:10:479:21 | Output | +| associated_types.rs:484:39:486:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:484:39:486:9 | { ... } | E | associated_types.rs:479:10:479:21 | Output | +| associated_types.rs:484:39:486:9 | { ... } | T | associated_types.rs:479:10:479:21 | Output | +| associated_types.rs:485:13:485:22 | Ok(...) | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:485:13:485:22 | Ok(...) | E | associated_types.rs:479:10:479:21 | Output | +| associated_types.rs:485:13:485:22 | Ok(...) | T | associated_types.rs:479:10:479:21 | Output | +| associated_types.rs:485:16:485:19 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:485:16:485:19 | self | TRef | associated_types.rs:477:5:477:20 | ST | +| associated_types.rs:485:16:485:19 | self | TRef.T | associated_types.rs:479:10:479:21 | Output | +| associated_types.rs:485:16:485:21 | self.0 | | associated_types.rs:479:10:479:21 | Output | +| associated_types.rs:489:19:491:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:490:13:490:14 | _y | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:490:13:490:14 | _y | E | {EXTERNAL LOCATION} | bool | +| associated_types.rs:490:13:490:14 | _y | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:490:18:490:25 | ST(...) | | associated_types.rs:477:5:477:20 | ST | +| associated_types.rs:490:18:490:25 | ST(...) | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:490:18:490:31 | ... .get() | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:490:18:490:31 | ... .get() | E | {EXTERNAL LOCATION} | bool | +| associated_types.rs:490:18:490:31 | ... .get() | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:490:21:490:24 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:498:31:498:31 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:498:31:498:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:498:31:498:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:498:61:506:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:500:13:500:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:500:19:500:22 | (...) | | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:500:19:500:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:500:19:500:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:500:20:500:21 | * ... | | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:500:20:500:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:500:21:500:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:500:21:500:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:500:21:500:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:503:13:503:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:503:19:503:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:503:19:503:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:503:19:503:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:503:19:503:25 | t.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:505:13:505:15 | _a3 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:505:19:505:24 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:505:23:505:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:505:23:505:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:505:23:505:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:508:36:508:36 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:508:36:508:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:508:36:508:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:508:36:508:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:508:92:514:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:509:13:509:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:509:19:509:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:509:19:509:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:509:19:509:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:509:19:509:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:509:20:509:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:509:20:509:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:509:20:509:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:509:21:509:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:509:21:509:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:509:21:509:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:509:21:509:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:510:13:510:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:510:19:510:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:510:19:510:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:510:19:510:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:510:19:510:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:510:19:510:25 | t.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:511:13:511:15 | _a3 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:511:19:511:24 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:511:23:511:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:511:23:511:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:511:23:511:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:511:23:511:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:512:13:512:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:512:19:512:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:512:19:512:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:512:19:512:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:512:19:512:36 | ... .get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:512:20:512:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:512:20:512:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:512:20:512:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:512:21:512:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:512:21:512:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:512:21:512:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:512:21:512:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:513:13:513:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:513:19:513:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:513:19:513:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:513:19:513:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:513:19:513:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:513:19:513:33 | t.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:517:15:526:1 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:518:5:518:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:519:5:519:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:520:5:520:59 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:521:5:521:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:522:5:522:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:523:5:523:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:524:5:524:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:525:5:525:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:15:18:15:22 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:15:18:15:22 | SelfParam | TRef | blanket_impl.rs:9:5:10:14 | S2 | | blanket_impl.rs:15:42:17:9 | { ... } | | {EXTERNAL LOCATION} | & | From 2cb0e81da0b4e1dc1e0473096e9fab0e8e70ad86 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Tue, 27 Jan 2026 16:10:03 +0100 Subject: [PATCH 187/433] Rust: Remove duplicated inclusion of `getAdditionalPathTypeAt` --- rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll | 2 -- 1 file changed, 2 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index 738b823ca100..f7dc0420f6a3 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -107,8 +107,6 @@ private module MkTypeMention Date: Tue, 27 Jan 2026 09:18:25 -0600 Subject: [PATCH 188/433] Update docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.0.rst Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../codeql-overview/codeql-changelog/codeql-cli-2.24.0.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.0.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.0.rst index 5182787caba4..7a11a32f3eac 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.0.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.0.rst @@ -194,7 +194,7 @@ Rust * Renamed the :code:`Adt` class to :code:`TypeItem` and moved common predicates from :code:`Struct`, :code:`Enum`, and :code:`Union` to :code:`TypeItem`. * Added models for the Axum web application framework. * Reading content of a value now carries taint if the value itself is tainted. For instance, if :code:`s` is tainted then :code:`s.field` is also tainted. This generally improves taint flow. -* The call graph is now more precise for calls that target a trait function with a default implemention. This reduces the number of false positives for data flow queries. +* The call graph is now more precise for calls that target a trait function with a default implementation. This reduces the number of false positives for data flow queries. * Improved type inference for raw pointers (:code:`*const` and :code:`*mut`). This includes type inference for the raw borrow operators (:code:`&raw const` and :code:`&raw mut`) and dereferencing of raw pointers. Deprecated APIs From 4f1ad0ff5dba26241e2860dbe0fe59a2e818fcc1 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Tue, 27 Jan 2026 15:38:06 +0000 Subject: [PATCH 189/433] Exclude *Pool classes from LockType --- java/ql/lib/semmle/code/java/Concurrency.qll | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/java/ql/lib/semmle/code/java/Concurrency.qll b/java/ql/lib/semmle/code/java/Concurrency.qll index da2783bc3080..b9dd7bfd99b0 100644 --- a/java/ql/lib/semmle/code/java/Concurrency.qll +++ b/java/ql/lib/semmle/code/java/Concurrency.qll @@ -6,12 +6,16 @@ import semmle.code.java.frameworks.Mockito /** * A Java type representing a lock. - * We identify a lock type as one that has both `lock` and `unlock` methods. + * + * We exclude types with a name ending in "Pool" as they typically manage a + * collection of resources and the `lock` and `unlock` methods typically only + * lock one resource at a time. */ class LockType extends RefType { LockType() { this.getAMethod().hasName("lock") and - this.getAMethod().hasName("unlock") + this.getAMethod().hasName("unlock") and + not this.getName().matches("%Pool") } /** Gets a method that is locking this lock type. */ From 516b84b59a194b6c798c6708868f2c16ff9ed386 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Tue, 27 Jan 2026 15:38:29 +0000 Subject: [PATCH 190/433] Add test for *Pool exclusion --- .../query-tests/UnreleasedLock/UnreleasedLock.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/java/ql/test/query-tests/UnreleasedLock/UnreleasedLock.java b/java/ql/test/query-tests/UnreleasedLock/UnreleasedLock.java index eb8de3c496d6..2aadb5044be6 100644 --- a/java/ql/test/query-tests/UnreleasedLock/UnreleasedLock.java +++ b/java/ql/test/query-tests/UnreleasedLock/UnreleasedLock.java @@ -120,4 +120,16 @@ void bad10() { } } } + + static class TestPool { + void lock() {} + void unlock() {} + } + + void good11() { + TestPool pool = new TestPool(); + pool.lock(); // Should be excluded because of "Pool" suffix + f(); + pool.unlock(); + } } From 42cbe0734ecb522d61a2fe2ac2f63ef76064a8ea Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Tue, 27 Jan 2026 15:39:03 +0000 Subject: [PATCH 191/433] Specify what lock types are considered in qhelp --- java/ql/src/Likely Bugs/Concurrency/UnreleasedLock.qhelp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/java/ql/src/Likely Bugs/Concurrency/UnreleasedLock.qhelp b/java/ql/src/Likely Bugs/Concurrency/UnreleasedLock.qhelp index e3029c6249d2..faf03c338bdb 100644 --- a/java/ql/src/Likely Bugs/Concurrency/UnreleasedLock.qhelp +++ b/java/ql/src/Likely Bugs/Concurrency/UnreleasedLock.qhelp @@ -11,6 +11,11 @@ it multiple times, for example java.util.concurrent.locks.ReentrantLock +

+Any class that has both lock and unlock methods is +considered a lock type. However, classes with names ending in "Pool" are excluded, +as they typically manage a collection of resources. +

From a0c35516bd91771059c35eacb7d95fe02708ab55 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Tue, 27 Jan 2026 15:48:04 +0000 Subject: [PATCH 192/433] Add change note --- java/ql/lib/change-notes/2026-01-27-unreleased-lock-pools.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 java/ql/lib/change-notes/2026-01-27-unreleased-lock-pools.md diff --git a/java/ql/lib/change-notes/2026-01-27-unreleased-lock-pools.md b/java/ql/lib/change-notes/2026-01-27-unreleased-lock-pools.md new file mode 100644 index 000000000000..6ac8a19a7622 --- /dev/null +++ b/java/ql/lib/change-notes/2026-01-27-unreleased-lock-pools.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The query `java/unreleased-lock` no longer applies to lock types with names ending in "Pool", as these typically manage a collection of resources and the `lock` and `unlock` methods typically only lock one resource at a time. This may lead to a reduction in false positives. From 445cca1432747f7803beb8636bd4dada8dc33366 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Tue, 27 Jan 2026 18:29:12 +0000 Subject: [PATCH 193/433] C++: Proper SSA support for post-crement reads. --- .../code/cpp/ir/dataflow/internal/SsaImpl.qll | 223 ++++++++++++++++-- 1 file changed, 209 insertions(+), 14 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll index c7f622f81d39..7877c55d2000 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll @@ -15,17 +15,79 @@ private import DataFlowPrivate import SsaImplCommon private module SourceVariables { + /** + * Holds if `store` is the `StoreInstruction` generated by an postfix + * increment or decrement operation `e`, and `postCrement` is the operand + * that represents the use of the evaluated value of `e`. + */ + private predicate isUseAfterPostfixCrement0(StoreInstruction store, Operand postCrement) { + exists( + BinaryInstruction binary, IRBlock b, int iPre, int iPost, int iStore, Operand preCrement, + Instruction left + | + binary instanceof AddInstruction + or + binary instanceof PointerAddInstruction + or + binary instanceof SubInstruction + or + binary instanceof PointerSubInstruction + | + store.getSourceValue() = binary and + left = binary.getLeft() and + strictcount(left.getAUse()) = 2 and + left.getAUse() = preCrement and + left.getAUse() = postCrement and + b.getInstruction(iPre) = preCrement.getUse() and + b.getInstruction(iPost) = postCrement.getUse() and + b.getInstruction(iStore) = store and + iPre < iStore and + iStore < iPost + ) + } + + /** + * Holds if `store` is the `StoreInstruction` generated by an postfix + * increment or decrement operation `e`, and `postCrement` is the fully + * converted operand that represents the use of the evaluated value of `e`. + */ + private predicate isUseAfterPostfixCrement(StoreInstruction store, Operand postCrement) { + isUseAfterPostfixCrement0(store, postCrement) and + conversionFlow(postCrement, _, false, _) + or + exists(Instruction instr, Operand postCrement0 | + isUseAfterPostfixCrement(store, postCrement0) and + conversionFlow(postCrement0, instr, false, _) and + instr = postCrement.getDef() + ) + } + + private predicate hasSavedPostfixCrementSourceVariable( + BaseSourceVariable base, StoreInstruction store, int ind + ) { + exists(BaseSourceVariableInstruction inst, int ind0 | + isUseAfterPostfixCrement(store, _) and + inst.getBaseSourceVariable() = base and + isDef(_, _, store.getDestinationAddressOperand(), inst, ind0, 0) and + ind = [ind0 .. countIndirectionsForCppType(base.getLanguageType()) + 1] + ) + } + cached private newtype TSourceVariable = - TMkSourceVariable(BaseSourceVariable base, int ind) { + TNormalSourceVariable(BaseSourceVariable base, int ind) { ind = [0 .. countIndirectionsForCppType(base.getLanguageType()) + 1] + } or + TSavedPostfixCrementSourceVariable(StoreInstruction store, int ind) { + hasSavedPostfixCrementSourceVariable(_, store, ind) } - class SourceVariable extends TSourceVariable { + abstract private class AbstractSourceVariable extends TSourceVariable { BaseSourceVariable base; int ind; - SourceVariable() { this = TMkSourceVariable(base, ind) } + bindingset[ind] + AbstractSourceVariable() { any() } /** Gets the IR variable associated with this `SourceVariable`, if any. */ IRVariable getIRVariable() { result = base.(BaseIRVariable).getIRVariable() } @@ -37,7 +99,7 @@ private module SourceVariables { BaseSourceVariable getBaseVariable() { result = base } /** Gets a textual representation of this element. */ - string toString() { result = repeatStars(this.getIndirection()) + base.toString() } + abstract string toString(); /** * Gets the number of loads performed on the base source variable @@ -62,6 +124,53 @@ private module SourceVariables { /** Gets the location of this variable. */ Location getLocation() { result = this.getBaseVariable().getLocation() } } + + final class SourceVariable = AbstractSourceVariable; + + /** + * A regular source variable. Most source variables are instances of this + * class. + */ + class NormalSourceVariable extends AbstractSourceVariable, TNormalSourceVariable { + NormalSourceVariable() { this = TNormalSourceVariable(base, ind) } + + final override string toString() { + result = repeatStars(this.getIndirection()) + base.toString() + } + } + + /** + * Before a value is postfix incremented (or decremented) we "save" its + * current value so that the pre-incremented value can be returned to the + * enclosing expression. We use the source variables represented by this + * class to represent the "saved value". + */ + class SavedPostfixCrementSourceVariable extends AbstractSourceVariable, + TSavedPostfixCrementSourceVariable + { + StoreInstruction store; + + SavedPostfixCrementSourceVariable() { + this = TSavedPostfixCrementSourceVariable(store, ind) and + hasSavedPostfixCrementSourceVariable(base, store, ind) + } + + final override string toString() { + result = repeatStars(this.getIndirection()) + base.toString() + " [before crement]" + } + + /** + * Gets the `StoreInstruction` that writes the incremented (or decremented) + * value. + */ + StoreInstruction getStoreInstruction() { result = store } + + /** + * Gets the fully converted `Operand` that represents the use of the + * value before the increment. + */ + Operand getOperand() { isUseAfterPostfixCrement(store, result) } + } } import SourceVariables @@ -109,17 +218,43 @@ private newtype TDefImpl = TDirectDefImpl(Operand address, int indirectionIndex) { isDef(_, _, address, _, _, indirectionIndex) } or + TSavedPostfixCrementDefImpl(SavedPostfixCrementSourceVariable sv, int indirectionIndex) { + isDef(_, _, sv.getStoreInstruction().getDestinationAddressOperand(), _, sv.getIndirection(), + indirectionIndex) + } or TGlobalDefImpl(GlobalLikeVariable v, IRFunction f, int indirectionIndex) { // Represents the initial "definition" of a global variable when entering // a function body. isGlobalDefImpl(v, f, _, indirectionIndex) } +pragma[nomagic] +private predicate hasOperandAndIndirection( + SavedPostfixCrementSourceVariable sv, Operand operand, int indirection +) { + sv.getOperand() = operand and + sv.getIndirection() = indirection +} + +private predicate hasBeforePostCrementUseImpl( + SavedPostfixCrementSourceVariable sv, Operand operand, int indirectionIndex +) { + not isDef(true, _, operand, _, _, _) and + exists(int indirection | + hasOperandAndIndirection(sv, operand, indirection) and + isUse(_, operand, _, indirection, indirectionIndex) + ) +} + cached private newtype TUseImpl = TDirectUseImpl(Operand operand, int indirectionIndex) { isUse(_, operand, _, _, indirectionIndex) and - not isDef(true, _, operand, _, _, _) + not isDef(true, _, operand, _, _, _) and + not hasBeforePostCrementUseImpl(_, operand, indirectionIndex) + } or + TSavedPostfixCrementUseImpl(SavedPostfixCrementSourceVariable sv, int indirectionIndex) { + hasBeforePostCrementUseImpl(sv, _, indirectionIndex) } or TGlobalUse(GlobalLikeVariable v, IRFunction f, int indirectionIndex) { // Represents a final "use" of a global variable to ensure that @@ -326,7 +461,7 @@ abstract private class DefAddressImpl extends DefImpl, TDefAddressImpl { override Cpp::Location getLocation() { result = v.getLocation() } - final override SourceVariable getSourceVariable() { + final override NormalSourceVariable getSourceVariable() { result.getBaseVariable() = v and result.getIndirection() = 0 } @@ -381,7 +516,7 @@ private class DirectDef extends DefImpl, TDirectDefImpl { indirection = this.getIndirection() } - final override SourceVariable getSourceVariable() { + final override NormalSourceVariable getSourceVariable() { exists(BaseSourceVariable v, int indirection | sourceVariableHasBaseAndIndex(result, v, indirection) and this.hasBaseSourceVariableAndIndirection(v, indirection) @@ -395,6 +530,32 @@ private class DirectDef extends DefImpl, TDirectDefImpl { override predicate isCertain() { isDef(true, _, address, _, _, indirectionIndex) } } +/** + * A definition that "saves" the value of a variable before it is incremented + * or decremented. + */ +private class SavedPostfixCrementDefImpl extends DefImpl, TSavedPostfixCrementDefImpl { + SavedPostfixCrementSourceVariable sv; + + SavedPostfixCrementDefImpl() { this = TSavedPostfixCrementDefImpl(sv, indirectionIndex) } + + override Cpp::Location getLocation() { result = sv.getStoreInstruction().getLocation() } + + final override predicate hasIndexInBlock(IRBlock block, int index) { + sv.getStoreInstruction() = block.getInstruction(index) + } + + override string toString() { result = "Def of " + this.getSourceVariable() } + + override SourceVariable getSourceVariable() { result = sv } + + override int getIndirection() { result = sv.getIndirection() } + + override predicate isCertain() { + isDef(true, _, sv.getStoreInstruction().getDestinationAddressOperand(), _, _, indirectionIndex) + } +} + private class DirectUseImpl extends UseImpl, TDirectUseImpl { Operand operand; @@ -414,7 +575,7 @@ private class DirectUseImpl extends UseImpl, TDirectUseImpl { this.getIndirection() = indirection } - override SourceVariable getSourceVariable() { + override NormalSourceVariable getSourceVariable() { exists(BaseSourceVariable v, int indirection | sourceVariableHasBaseAndIndex(result, v, indirection) and this.hasBaseSourceVariableAndIndirection(v, indirection) @@ -432,6 +593,34 @@ private class DirectUseImpl extends UseImpl, TDirectUseImpl { override Node getNode() { nodeHasOperand(result, operand, indirectionIndex) } } +/** + * The use of the original "saved" variable after the variable has been incremented + * or decremented. + */ +private class SavedPostfixCrementUseImpl extends UseImpl, TSavedPostfixCrementUseImpl { + SavedPostfixCrementSourceVariable sv; + + SavedPostfixCrementUseImpl() { this = TSavedPostfixCrementUseImpl(sv, indirectionIndex) } + + override string toString() { result = "Use of " + this.getSourceVariable() } + + final override predicate hasIndexInBlock(IRBlock block, int index) { + this.getOperand().getUse() = block.getInstruction(index) + } + + override SourceVariable getSourceVariable() { result = sv } + + final Operand getOperand() { result = sv.getOperand() } + + final override Cpp::Location getLocation() { result = this.getOperand().getLocation() } + + override int getIndirection() { result = sv.getIndirection() } + + override predicate isCertain() { isUse(true, this.getOperand(), _, _, indirectionIndex) } + + override Node getNode() { nodeHasOperand(result, this.getOperand(), indirectionIndex) } +} + pragma[nomagic] private predicate finalParameterNodeHasParameterAndIndex( FinalParameterNode n, Parameter p, int indirectionIndex @@ -502,7 +691,7 @@ class FinalParameterUse extends UseImpl, TFinalParameterUse { indirection = this.getIndirection() } - override SourceVariable getSourceVariable() { + override NormalSourceVariable getSourceVariable() { exists(BaseIRVariable v, int indirection | sourceVariableHasBaseAndIndex(result, v, indirection) and this.hasBaseSourceVariableAndIndirectrion(v, indirection) @@ -593,7 +782,7 @@ class GlobalUse extends UseImpl, TGlobalUse { indirection = this.getIndirection() } - override SourceVariable getSourceVariable() { + override NormalSourceVariable getSourceVariable() { exists(BaseIRVariable v, int indirection | sourceVariableHasBaseAndIndex(result, v, indirection) and this.hasBaseSourceVariableAndIndirection(v, indirection) @@ -642,7 +831,7 @@ class GlobalDefImpl extends DefImpl, TGlobalDefImpl { ) } - final override SourceVariable getSourceVariable() { + final override NormalSourceVariable getSourceVariable() { exists(BaseSourceVariable v | sourceVariableHasBaseAndIndex(result, v, indirectionIndex) and baseSourceVariableIsGlobal(v, global, f) @@ -688,9 +877,15 @@ predicate defToNode(Node node, Definition def, SourceVariable sv) { } private predicate defToNode(Node node, Definition def) { - nodeHasOperand(node, def.getValue().asOperand(), def.getIndirectionIndex()) - or - nodeHasInstruction(node, def.getValue().asInstruction(), def.getIndirectionIndex()) + // Only definitions of `NormalSourceVariable` need to be converted into + // dataflow nodes. The other case, `SavedPostfixCrementSourceVariable`, + // are internal definitions that don't have a dataflow node representation. + def.getSourceVariable() instanceof NormalSourceVariable and + ( + nodeHasOperand(node, def.getValue().asOperand(), def.getIndirectionIndex()) + or + nodeHasInstruction(node, def.getValue().asInstruction(), def.getIndirectionIndex()) + ) or node.(InitialGlobalValue).getGlobalDef() = def } From 28fec0c12951dc8a69acfb8c51c02341f33769a3 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Tue, 27 Jan 2026 18:29:21 +0000 Subject: [PATCH 194/433] C++: Accept test changes. --- .../dataflow/dataflow-tests/test-source-sink.expected | 4 ---- .../test/library-tests/dataflow/dataflow-tests/test.cpp | 8 ++++---- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/cpp/ql/test/library-tests/dataflow/dataflow-tests/test-source-sink.expected b/cpp/ql/test/library-tests/dataflow/dataflow-tests/test-source-sink.expected index 7b5c1cd0cf09..03a106208a5b 100644 --- a/cpp/ql/test/library-tests/dataflow/dataflow-tests/test-source-sink.expected +++ b/cpp/ql/test/library-tests/dataflow/dataflow-tests/test-source-sink.expected @@ -378,11 +378,8 @@ irFlow | test.cpp:1195:10:1195:24 | *call to indirect_source | test.cpp:1224:19:1224:37 | ** ... | | test.cpp:1195:10:1195:24 | *call to indirect_source | test.cpp:1227:10:1227:29 | * ... | | test.cpp:1258:11:1258:16 | call to source | test.cpp:1259:8:1259:10 | ... ++ | -| test.cpp:1258:11:1258:16 | call to source | test.cpp:1260:8:1260:8 | x | | test.cpp:1262:7:1262:12 | call to source | test.cpp:1263:8:1263:10 | ... -- | -| test.cpp:1262:7:1262:12 | call to source | test.cpp:1264:8:1264:8 | x | | test.cpp:1284:11:1284:16 | call to source | test.cpp:1285:8:1285:20 | ... ? ... : ... | -| test.cpp:1284:11:1284:16 | call to source | test.cpp:1286:8:1286:8 | x | | test.cpp:1288:7:1288:12 | call to source | test.cpp:1290:8:1290:8 | x | | test.cpp:1292:7:1292:12 | call to source | test.cpp:1294:8:1294:8 | x | | test.cpp:1296:7:1296:12 | call to source | test.cpp:1297:8:1297:18 | ... ? ... : ... | @@ -391,7 +388,6 @@ irFlow | test.cpp:1300:7:1300:12 | call to source | test.cpp:1302:8:1302:8 | x | | test.cpp:1304:7:1304:12 | call to source | test.cpp:1306:8:1306:8 | x | | test.cpp:1308:7:1308:12 | call to source | test.cpp:1309:8:1309:16 | ... ++ | -| test.cpp:1308:7:1308:12 | call to source | test.cpp:1310:8:1310:8 | x | | test.cpp:1312:7:1312:12 | call to source | test.cpp:1313:8:1313:24 | ... ? ... : ... | | test.cpp:1312:7:1312:12 | call to source | test.cpp:1314:8:1314:8 | x | | true_upon_entry.cpp:9:11:9:16 | call to source | true_upon_entry.cpp:13:8:13:8 | x | diff --git a/cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp b/cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp index e42a5652729d..e1c3ef98fb74 100644 --- a/cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp +++ b/cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp @@ -1257,11 +1257,11 @@ namespace globals_without_explicit_def { void crement_test1() { int x = source(); sink(x++); // $ ir ast - sink(x); // $ SPURIOUS: ir + sink(x); x = source(); sink(x--); // $ ir ast - sink(x); // $ SPURIOUS: ir + sink(x); x = source(); sink(++x); // $ SPURIOUS: ast @@ -1283,7 +1283,7 @@ void crement_test1() { void crement_test2(bool b, int y) { int x = source(); sink(b ? x++ : x--); // $ ir ast - sink(x); // $ SPURIOUS: ir + sink(x); x = source(); sink((b ? x : y)++); // $ ast MISSING: ir @@ -1307,7 +1307,7 @@ void crement_test2(bool b, int y) { x = source(); sink((long)x++); // $ ir ast - sink(x); // $ SPURIOUS: ir + sink(x); x = source(); sink(b ? (long)x++ : 0); // $ ir ast From 4503c625b4c1682eae76948b71bf15d5bad689ff Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Tue, 27 Jan 2026 19:02:28 +0000 Subject: [PATCH 195/433] C++: Implement copilot suggestions. --- cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll index 7877c55d2000..64840c84c780 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/SsaImpl.qll @@ -16,7 +16,7 @@ import SsaImplCommon private module SourceVariables { /** - * Holds if `store` is the `StoreInstruction` generated by an postfix + * Holds if `store` is the `StoreInstruction` generated by n postfix * increment or decrement operation `e`, and `postCrement` is the operand * that represents the use of the evaluated value of `e`. */ @@ -686,7 +686,7 @@ class FinalParameterUse extends UseImpl, TFinalParameterUse { } pragma[nomagic] - private predicate hasBaseSourceVariableAndIndirectrion(BaseIRVariable v, int indirection) { + private predicate hasBaseSourceVariableAndIndirection(BaseIRVariable v, int indirection) { v.getIRVariable().getAst() = p and indirection = this.getIndirection() } @@ -694,7 +694,7 @@ class FinalParameterUse extends UseImpl, TFinalParameterUse { override NormalSourceVariable getSourceVariable() { exists(BaseIRVariable v, int indirection | sourceVariableHasBaseAndIndex(result, v, indirection) and - this.hasBaseSourceVariableAndIndirectrion(v, indirection) + this.hasBaseSourceVariableAndIndirection(v, indirection) ) } } From beff080ee745e3105084c9e11b751ea022a8783b Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Thu, 4 Dec 2025 15:56:48 +0100 Subject: [PATCH 196/433] Kotlin: Update kotlin_rules to 2.2.0 and remove support for Kotlin 1.6 and 1.7 --- MODULE.bazel | 14 +----------- .../deps/kotlin-compiler-1.6.0.jar | 3 --- .../deps/kotlin-compiler-1.6.20.jar | 3 --- .../deps/kotlin-compiler-1.7.0.jar | 3 --- .../deps/kotlin-compiler-1.7.20.jar | 3 --- .../deps/kotlin-compiler-embeddable-1.6.0.jar | 3 --- .../kotlin-compiler-embeddable-1.6.20.jar | 3 --- .../deps/kotlin-compiler-embeddable-1.7.0.jar | 3 --- .../kotlin-compiler-embeddable-1.7.20.jar | 3 --- .../deps/kotlin-stdlib-1.6.0.jar | 3 --- .../deps/kotlin-stdlib-1.6.20.jar | 3 --- .../deps/kotlin-stdlib-1.7.0.jar | 3 --- .../deps/kotlin-stdlib-1.7.20.jar | 3 --- java/kotlin-extractor/versions.bzl | 4 ---- .../rules_kotlin/2.1.3-codeql.1/source.json | 9 -------- .../MODULE.bazel | 22 ++++++++++--------- .../codeql_add_language_version_option.patch | 18 +++++++-------- .../patches/codeql_do_not_emit_jdeps.patch | 6 ++--- .../rules_kotlin/2.2.0-codeql.1/source.json | 9 ++++++++ .../modules/rules_kotlin/metadata.json | 2 +- 20 files changed, 33 insertions(+), 87 deletions(-) delete mode 100644 java/kotlin-extractor/deps/kotlin-compiler-1.6.0.jar delete mode 100644 java/kotlin-extractor/deps/kotlin-compiler-1.6.20.jar delete mode 100644 java/kotlin-extractor/deps/kotlin-compiler-1.7.0.jar delete mode 100644 java/kotlin-extractor/deps/kotlin-compiler-1.7.20.jar delete mode 100644 java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.6.0.jar delete mode 100644 java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.6.20.jar delete mode 100644 java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.7.0.jar delete mode 100644 java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.7.20.jar delete mode 100644 java/kotlin-extractor/deps/kotlin-stdlib-1.6.0.jar delete mode 100644 java/kotlin-extractor/deps/kotlin-stdlib-1.6.20.jar delete mode 100644 java/kotlin-extractor/deps/kotlin-stdlib-1.7.0.jar delete mode 100644 java/kotlin-extractor/deps/kotlin-stdlib-1.7.20.jar delete mode 100644 misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/source.json rename misc/bazel/registry/modules/rules_kotlin/{2.1.3-codeql.1 => 2.2.0-codeql.1}/MODULE.bazel (52%) rename misc/bazel/registry/modules/rules_kotlin/{2.1.3-codeql.1 => 2.2.0-codeql.1}/patches/codeql_add_language_version_option.patch (58%) rename misc/bazel/registry/modules/rules_kotlin/{2.1.3-codeql.1 => 2.2.0-codeql.1}/patches/codeql_do_not_emit_jdeps.patch (81%) create mode 100644 misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/source.json diff --git a/MODULE.bazel b/MODULE.bazel index 8ba6c2fcd8c8..3e261fac8f66 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -24,7 +24,7 @@ bazel_dep(name = "bazel_skylib", version = "1.8.1") bazel_dep(name = "abseil-cpp", version = "20240116.1", repo_name = "absl") bazel_dep(name = "nlohmann_json", version = "3.11.3", repo_name = "json") bazel_dep(name = "fmt", version = "12.1.0-codeql.1") -bazel_dep(name = "rules_kotlin", version = "2.1.3-codeql.1") +bazel_dep(name = "rules_kotlin", version = "2.2.0-codeql.1") bazel_dep(name = "gazelle", version = "0.40.0") bazel_dep(name = "rules_dotnet", version = "0.21.5-codeql.1") bazel_dep(name = "googletest", version = "1.14.0.bcr.1") @@ -221,10 +221,6 @@ use_repo( kotlin_extractor_deps, "codeql_kotlin_defaults", "codeql_kotlin_embeddable", - "kotlin-compiler-1.6.0", - "kotlin-compiler-1.6.20", - "kotlin-compiler-1.7.0", - "kotlin-compiler-1.7.20", "kotlin-compiler-1.8.0", "kotlin-compiler-1.9.0-Beta", "kotlin-compiler-1.9.20-Beta", @@ -234,10 +230,6 @@ use_repo( "kotlin-compiler-2.1.20-Beta1", "kotlin-compiler-2.2.0-Beta1", "kotlin-compiler-2.2.20-Beta2", - "kotlin-compiler-embeddable-1.6.0", - "kotlin-compiler-embeddable-1.6.20", - "kotlin-compiler-embeddable-1.7.0", - "kotlin-compiler-embeddable-1.7.20", "kotlin-compiler-embeddable-1.8.0", "kotlin-compiler-embeddable-1.9.0-Beta", "kotlin-compiler-embeddable-1.9.20-Beta", @@ -247,10 +239,6 @@ use_repo( "kotlin-compiler-embeddable-2.1.20-Beta1", "kotlin-compiler-embeddable-2.2.0-Beta1", "kotlin-compiler-embeddable-2.2.20-Beta2", - "kotlin-stdlib-1.6.0", - "kotlin-stdlib-1.6.20", - "kotlin-stdlib-1.7.0", - "kotlin-stdlib-1.7.20", "kotlin-stdlib-1.8.0", "kotlin-stdlib-1.9.0-Beta", "kotlin-stdlib-1.9.20-Beta", diff --git a/java/kotlin-extractor/deps/kotlin-compiler-1.6.0.jar b/java/kotlin-extractor/deps/kotlin-compiler-1.6.0.jar deleted file mode 100644 index 4a98879e43e6..000000000000 --- a/java/kotlin-extractor/deps/kotlin-compiler-1.6.0.jar +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4bd7a92568fd89c23b7f9f36d4380886beed18d3d54ea6adf49bebae627db805 -size 51408858 diff --git a/java/kotlin-extractor/deps/kotlin-compiler-1.6.20.jar b/java/kotlin-extractor/deps/kotlin-compiler-1.6.20.jar deleted file mode 100644 index 5a467a5af518..000000000000 --- a/java/kotlin-extractor/deps/kotlin-compiler-1.6.20.jar +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:90567c5cf297985d028fa39aa3a7904dc8096173e1c7f3d3f35fe7074581098e -size 53370229 diff --git a/java/kotlin-extractor/deps/kotlin-compiler-1.7.0.jar b/java/kotlin-extractor/deps/kotlin-compiler-1.7.0.jar deleted file mode 100644 index ef54ce1e6532..000000000000 --- a/java/kotlin-extractor/deps/kotlin-compiler-1.7.0.jar +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ce85fafb3e24712d62a0d02d277c2d56197d74afdd4f5ca995eaf33d2c504663 -size 53906809 diff --git a/java/kotlin-extractor/deps/kotlin-compiler-1.7.20.jar b/java/kotlin-extractor/deps/kotlin-compiler-1.7.20.jar deleted file mode 100644 index 442aea3e3425..000000000000 --- a/java/kotlin-extractor/deps/kotlin-compiler-1.7.20.jar +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0e36d98c56f7c9685ab9d9e1fac9be36a5214939adb3f905b93c62de76023618 -size 54773087 diff --git a/java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.6.0.jar b/java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.6.0.jar deleted file mode 100644 index eafb6508d449..000000000000 --- a/java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.6.0.jar +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0366843cd2defdd583c6b16b10bc32b85f28c5bf9510f10e44c886f5bd24c388 -size 49978431 diff --git a/java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.6.20.jar b/java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.6.20.jar deleted file mode 100644 index f426dae65b1e..000000000000 --- a/java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.6.20.jar +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:be634faaafb56816b6ef6d583e57ab33e4d6e5180cde2f505ccf7d45dc738ef8 -size 51976423 diff --git a/java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.7.0.jar b/java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.7.0.jar deleted file mode 100644 index 0857bed8c9e1..000000000000 --- a/java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.7.0.jar +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:573935b492e65b93a792eaa6270295532f580cd4f26f9f6eb105ecbafcd182d4 -size 52514265 diff --git a/java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.7.20.jar b/java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.7.20.jar deleted file mode 100644 index b95097b6935e..000000000000 --- a/java/kotlin-extractor/deps/kotlin-compiler-embeddable-1.7.20.jar +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5ec2be1872dc47b9dcb466f1781eded6c59d9eee18657d4b0f1148e619caea36 -size 53395419 diff --git a/java/kotlin-extractor/deps/kotlin-stdlib-1.6.0.jar b/java/kotlin-extractor/deps/kotlin-stdlib-1.6.0.jar deleted file mode 100644 index 3ad56eecdc2d..000000000000 --- a/java/kotlin-extractor/deps/kotlin-stdlib-1.6.0.jar +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:115daea30b0d484afcf2360237b9d9537f48a4a2f03f3cc2a16577dfc6e90342 -size 1508076 diff --git a/java/kotlin-extractor/deps/kotlin-stdlib-1.6.20.jar b/java/kotlin-extractor/deps/kotlin-stdlib-1.6.20.jar deleted file mode 100644 index b170c1da738b..000000000000 --- a/java/kotlin-extractor/deps/kotlin-stdlib-1.6.20.jar +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:eeb51c2b67b26233fd81d0bc4f8044ec849718890905763ceffd84a31e2cb799 -size 1509405 diff --git a/java/kotlin-extractor/deps/kotlin-stdlib-1.7.0.jar b/java/kotlin-extractor/deps/kotlin-stdlib-1.7.0.jar deleted file mode 100644 index bed18f8429b7..000000000000 --- a/java/kotlin-extractor/deps/kotlin-stdlib-1.7.0.jar +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:aa88e9625577957f3249a46cb6e166ee09b369e600f7a11d148d16b0a6d87f05 -size 1524619 diff --git a/java/kotlin-extractor/deps/kotlin-stdlib-1.7.20.jar b/java/kotlin-extractor/deps/kotlin-stdlib-1.7.20.jar deleted file mode 100644 index 9998f1e65920..000000000000 --- a/java/kotlin-extractor/deps/kotlin-stdlib-1.7.20.jar +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7779ec96b9acbf92ca023858ac04543f9d2c3bdf1722425fff42f25ff3acfc9b -size 1537347 diff --git a/java/kotlin-extractor/versions.bzl b/java/kotlin-extractor/versions.bzl index 95897f49cc81..f540e99db90a 100644 --- a/java/kotlin-extractor/versions.bzl +++ b/java/kotlin-extractor/versions.bzl @@ -1,9 +1,5 @@ # when updating this list, `bazel mod tidy` should be run from `codeql` to update `MODULE.bazel` VERSIONS = [ - "1.6.0", - "1.6.20", - "1.7.0", - "1.7.20", "1.8.0", "1.9.0-Beta", "1.9.20-Beta", diff --git a/misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/source.json b/misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/source.json deleted file mode 100644 index 8abac8eb4bd1..000000000000 --- a/misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/source.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "integrity": "sha256-4USKVrJGJAeyaI3qht9cN1s2oJkb1HjC3dlMlxaBJeI=", - "url": "https://github.com/bazelbuild/rules_kotlin/releases/download/v2.1.3/rules_kotlin-v2.1.3.tar.gz", - "patches": { - "codeql_do_not_emit_jdeps.patch": "sha256-1ir4Aio1SICxnj1wafQ0GefT/m7bwn2n+SQwq19V3A8=", - "codeql_add_language_version_option.patch": "sha256-F7RthnrO6kJlCNcQ76L1Utqll2OwyeFZ/HmT82NwgB4=" - }, - "patch_strip": 1 -} diff --git a/misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/MODULE.bazel b/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/MODULE.bazel similarity index 52% rename from misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/MODULE.bazel rename to misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/MODULE.bazel index 41bef52cf9f6..f0876478fe97 100644 --- a/misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/MODULE.bazel +++ b/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/MODULE.bazel @@ -1,16 +1,23 @@ module( name = "rules_kotlin", - version = "2.1.3-codeql.1", + version = "2.2.0-codeql.1", compatibility_level = 1, repo_name = "rules_kotlin", ) bazel_dep(name = "platforms", version = "0.0.11") bazel_dep(name = "bazel_skylib", version = "1.7.1") +# bazel_dep(name = "rules_java", version = "7.2.0") bazel_dep(name = "rules_java", version = "7.2.0") -bazel_dep(name = "rules_python", version = "0.23.1") -bazel_dep(name = "rules_cc", version = "0.0.8") -bazel_dep(name = "rules_android", version = "0.1.1") +bazel_dep(name = "rules_android", version = "0.6.4") +bazel_dep(name = "bazel_features", version = "1.25.0") +bazel_dep(name = "protobuf", version = "29.0", repo_name = "com_google_protobuf") +bazel_dep(name = "rules_proto", version = "6.0.2", repo_name = "rules_proto") +bazel_dep(name = "abseil-py", version = "2.1.0", repo_name = "py_absl") +bazel_dep(name = "rules_cc", version = "0.0.16") + +rules_java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains") +use_repo(rules_java_toolchains, "remote_java_tools") rules_kotlin_extensions = use_extension( "//src/main/starlark/core/repositories:bzlmod_setup.bzl", @@ -24,12 +31,7 @@ use_repo( "kotlinx_serialization_core_jvm", "kotlinx_serialization_json", "kotlinx_serialization_json_jvm", + "kotlin_build_tools_impl", ) register_toolchains("//kotlin/internal:default_toolchain") - -# TODO(bencodes) We should be able to remove this once rules_android has rolled out official Bzlmod support -remote_android_extensions = use_extension("@bazel_tools//tools/android:android_extensions.bzl", "remote_android_tools_extensions") -use_repo(remote_android_extensions, "android_gmaven_r8", "android_tools") - -bazel_dep(name = "rules_proto", version = "5.3.0-21.7") diff --git a/misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/patches/codeql_add_language_version_option.patch b/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/patches/codeql_add_language_version_option.patch similarity index 58% rename from misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/patches/codeql_add_language_version_option.patch rename to misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/patches/codeql_add_language_version_option.patch index b0bf85d4faef..795d1f88f387 100644 --- a/misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/patches/codeql_add_language_version_option.patch +++ b/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/patches/codeql_add_language_version_option.patch @@ -1,22 +1,20 @@ -diff --git a/src/main/starlark/core/options/opts.kotlinc.bzl b/src/main/starlark/core/options/opts.kotlinc.bzl -index 76df826..ef2d6ca 100644 ---- a/src/main/starlark/core/options/opts.kotlinc.bzl -+++ b/src/main/starlark/core/options/opts.kotlinc.bzl -@@ -33,6 +33,11 @@ def _map_jdk_release_to_flag(version): +--- a/src/main/starlark/core/options/opts.kotlinc.bzl 2000-01-01 01:00:00.000000000 +0100 ++++ b/src/main/starlark/core/options/opts.kotlinc.bzl 2025-11-17 16:51:01.012063056 +0100 +@@ -51,6 +51,11 @@ return None return ["-Xjdk-release=%s" % version] - + +def _map_language_version_to_flag(version): + if not version: + return None + return ["-language-version=%s" % version, "-api-version=%s" % version] + _KOPTS_ALL = { - "warn": struct( + "include_stdlibs": struct( args = dict( -@@ -429,6 +434,15 @@ _KOPTS_ALL = { +@@ -495,6 +500,15 @@ value_to_flag = None, - map_value_to_flag = _map_jdk_release_to_flag, + map_value_to_flag = _map_warning_level, ), + "language_version": struct( + args = dict( @@ -28,5 +26,5 @@ index 76df826..ef2d6ca 100644 + map_value_to_flag = _map_language_version_to_flag, + ), } - + def _merge(key, rule_defined): diff --git a/misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/patches/codeql_do_not_emit_jdeps.patch b/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/patches/codeql_do_not_emit_jdeps.patch similarity index 81% rename from misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/patches/codeql_do_not_emit_jdeps.patch rename to misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/patches/codeql_do_not_emit_jdeps.patch index 380c837d06a4..e6b71ab0c4f5 100644 --- a/misc/bazel/registry/modules/rules_kotlin/2.1.3-codeql.1/patches/codeql_do_not_emit_jdeps.patch +++ b/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/patches/codeql_do_not_emit_jdeps.patch @@ -1,11 +1,9 @@ Emitting jdeps is broken for the 2.0.0 kotlin extractor, and we don't need those files. Patching it here rather than passing `--@rules_kotlin//kotlin/settings:jvm_emit_jdeps=false` allows us to not have to specify that option (and therefore pull in `rules_kotlin`) in `semmle-code`. -diff --git a/kotlin/settings/BUILD.bazel b/kotlin/settings/BUILD.bazel -index 2c93c11..f352b80 100644 --- a/kotlin/settings/BUILD.bazel +++ b/kotlin/settings/BUILD.bazel -@@ -25,7 +25,7 @@ release_archive( +@@ -16,6 +16,6 @@ release_archive( # Flag that controls the emission of jdeps files during kotlin jvm compilation. bool_flag( name = "jvm_emit_jdeps", @@ -13,4 +11,4 @@ index 2c93c11..f352b80 100644 + build_setting_default = False, visibility = ["//visibility:public"], ) - + diff --git a/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/source.json b/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/source.json new file mode 100644 index 000000000000..bfa243b5a22e --- /dev/null +++ b/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-4STROYYIW8ChW+LIXBQVurVwhEK3jSSf4iv430OlNA0=", + "url": "https://github.com/bazelbuild/rules_kotlin/releases/download/v2.2.0/rules_kotlin-v2.2.0.tar.gz", + "patches": { + "codeql_do_not_emit_jdeps.patch": "sha256-gIlhXEY71vlCkpr5wj2vm3yv6RwcuKLhgbTGqdVvQfU=", + "codeql_add_language_version_option.patch": "sha256-HoH8NWXxmYHmm/SxaugRdXgMntvcQx5gRLW2yQIvWhM=" + }, + "patch_strip": 1 +} diff --git a/misc/bazel/registry/modules/rules_kotlin/metadata.json b/misc/bazel/registry/modules/rules_kotlin/metadata.json index dace87c72d1c..3609865f4d5b 100644 --- a/misc/bazel/registry/modules/rules_kotlin/metadata.json +++ b/misc/bazel/registry/modules/rules_kotlin/metadata.json @@ -21,7 +21,7 @@ "github:bazelbuild/rules_kotlin" ], "versions": [ - "2.1.3-codeql.1" + "2.2.0-codeql.1", ], "yanked_versions": {} } From 772503bad86330669d53bc3e02531917de9a3ab9 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Thu, 4 Dec 2025 16:01:50 +0100 Subject: [PATCH 197/433] Kotlin: Remove resource_strip_prefix for kotlin extraction --- java/kotlin-extractor/BUILD.bazel | 5 ----- 1 file changed, 5 deletions(-) diff --git a/java/kotlin-extractor/BUILD.bazel b/java/kotlin-extractor/BUILD.bazel index a714e06d4111..ab265dd946e2 100644 --- a/java/kotlin-extractor/BUILD.bazel +++ b/java/kotlin-extractor/BUILD.bazel @@ -126,11 +126,6 @@ kt_javac_options( module_name = "codeql-kotlin-extractor", # resource_strip_prefix is very nit-picky: the following makes it work from # `codeql`, `@codeql_kotlin_embeddable` and `semmle-code` - resource_strip_prefix = ( - ("../%s/" % repo_name() if repo_name() else "") + - ("%s/" % package_name() if package_name() else "") + - v - ), resources = [ ":resources-%s" % v, ], From bc419fd35c1860d6764e6ba98a40a3ff72486374 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Thu, 4 Dec 2025 16:12:24 +0100 Subject: [PATCH 198/433] Kotlin: Silence compilation warnings --- java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt | 2 ++ java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt | 1 + .../kotlin-extractor/src/main/kotlin/utils/TypeSubstitution.kt | 3 +++ 3 files changed, 6 insertions(+) diff --git a/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt b/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt index 72c766bb0828..cb1ce8ed253e 100644 --- a/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt +++ b/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt @@ -415,6 +415,7 @@ open class KotlinFileExtractor( private fun extractClassModifiers(c: IrClass, id: Label) { with("class modifiers", c) { + @Suppress("REDUNDANT_ELSE_IN_WHEN") when (c.modality) { Modality.FINAL -> addModifiers(id, "final") Modality.SEALED -> addModifiers(id, "sealed") @@ -2801,6 +2802,7 @@ open class KotlinFileExtractor( private fun extractBody(b: IrBody, callable: Label) { with("body", b) { + @Suppress("REDUNDANT_ELSE_IN_WHEN") when (b) { is IrBlockBody -> extractBlockBody(b, callable) is IrSyntheticBody -> extractSyntheticBody(b, callable) diff --git a/java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt b/java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt index 83cbec771fc5..bb664e711a3e 100644 --- a/java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt +++ b/java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt @@ -1836,6 +1836,7 @@ open class KotlinUsesExtractor( // Note this function doesn't return a signature because type arguments are never // incorporated into function signatures. + @Suppress("REDUNDANT_ELSE_IN_WHEN") return when (arg) { is IrStarProjection -> { val anyTypeLabel = diff --git a/java/kotlin-extractor/src/main/kotlin/utils/TypeSubstitution.kt b/java/kotlin-extractor/src/main/kotlin/utils/TypeSubstitution.kt index fb39b6675759..f4eac03df9d0 100644 --- a/java/kotlin-extractor/src/main/kotlin/utils/TypeSubstitution.kt +++ b/java/kotlin-extractor/src/main/kotlin/utils/TypeSubstitution.kt @@ -111,6 +111,7 @@ private fun subProjectedType( } ?: makeTypeProjection(t.substituteTypeArguments(substitutionMap), outerVariance) private fun IrTypeArgument.upperBound(context: IrPluginContext) = + @Suppress("REDUNDANT_ELSE_IN_WHEN") when (this) { is IrStarProjection -> context.irBuiltIns.anyNType is IrTypeProjection -> @@ -125,6 +126,7 @@ private fun IrTypeArgument.upperBound(context: IrPluginContext) = } private fun IrTypeArgument.lowerBound(context: IrPluginContext) = + @Suppress("REDUNDANT_ELSE_IN_WHEN") when (this) { is IrStarProjection -> context.irBuiltIns.nothingType is IrTypeProjection -> @@ -209,6 +211,7 @@ fun IrClass.toRawType(): IrType { } fun IrTypeArgument.withQuestionMark(b: Boolean): IrTypeArgument = + @Suppress("REDUNDANT_ELSE_IN_WHEN") when (this) { is IrStarProjection -> this is IrTypeProjection -> From 07e5479aff0fb0721454066a773291469fba72ec Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Thu, 4 Dec 2025 16:14:13 +0100 Subject: [PATCH 199/433] Kotlin: Add support for Kotlin 2.3.0 --- MODULE.bazel | 3 +++ .../deps/kotlin-compiler-2.3.0.jar | 3 +++ .../deps/kotlin-compiler-embeddable-2.3.0.jar | 3 +++ .../deps/kotlin-stdlib-2.3.0.jar | 3 +++ java/kotlin-extractor/dev/wrapper.py | 2 +- .../src/main/kotlin/KotlinFileExtractor.kt | 16 +++++++++++++--- .../src/main/kotlin/KotlinUsesExtractor.kt | 3 --- java/kotlin-extractor/versions.bzl | 1 + 8 files changed, 27 insertions(+), 7 deletions(-) create mode 100644 java/kotlin-extractor/deps/kotlin-compiler-2.3.0.jar create mode 100644 java/kotlin-extractor/deps/kotlin-compiler-embeddable-2.3.0.jar create mode 100644 java/kotlin-extractor/deps/kotlin-stdlib-2.3.0.jar diff --git a/MODULE.bazel b/MODULE.bazel index 3e261fac8f66..b24546d4a3c1 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -230,6 +230,7 @@ use_repo( "kotlin-compiler-2.1.20-Beta1", "kotlin-compiler-2.2.0-Beta1", "kotlin-compiler-2.2.20-Beta2", + "kotlin-compiler-2.3.0", "kotlin-compiler-embeddable-1.8.0", "kotlin-compiler-embeddable-1.9.0-Beta", "kotlin-compiler-embeddable-1.9.20-Beta", @@ -239,6 +240,7 @@ use_repo( "kotlin-compiler-embeddable-2.1.20-Beta1", "kotlin-compiler-embeddable-2.2.0-Beta1", "kotlin-compiler-embeddable-2.2.20-Beta2", + "kotlin-compiler-embeddable-2.3.0", "kotlin-stdlib-1.8.0", "kotlin-stdlib-1.9.0-Beta", "kotlin-stdlib-1.9.20-Beta", @@ -248,6 +250,7 @@ use_repo( "kotlin-stdlib-2.1.20-Beta1", "kotlin-stdlib-2.2.0-Beta1", "kotlin-stdlib-2.2.20-Beta2", + "kotlin-stdlib-2.3.0", ) go_sdk = use_extension("@rules_go//go:extensions.bzl", "go_sdk") diff --git a/java/kotlin-extractor/deps/kotlin-compiler-2.3.0.jar b/java/kotlin-extractor/deps/kotlin-compiler-2.3.0.jar new file mode 100644 index 000000000000..58a4dfadbe9d --- /dev/null +++ b/java/kotlin-extractor/deps/kotlin-compiler-2.3.0.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03e377b3beffa83e26674d0663f746bfb969b197fd8aed9432cfd8abd60db0c5 +size 59091069 diff --git a/java/kotlin-extractor/deps/kotlin-compiler-embeddable-2.3.0.jar b/java/kotlin-extractor/deps/kotlin-compiler-embeddable-2.3.0.jar new file mode 100644 index 000000000000..00ec4cb68016 --- /dev/null +++ b/java/kotlin-extractor/deps/kotlin-compiler-embeddable-2.3.0.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dbd882fa58c3d17e683a27390288315f8b490f8e3e3b1be4dc3e280d37e285a +size 57669576 diff --git a/java/kotlin-extractor/deps/kotlin-stdlib-2.3.0.jar b/java/kotlin-extractor/deps/kotlin-stdlib-2.3.0.jar new file mode 100644 index 000000000000..5a668eba5f1d --- /dev/null +++ b/java/kotlin-extractor/deps/kotlin-stdlib-2.3.0.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:887587c91713250ad52fe14ad9166d042c33835049890e9437f355ffc5a195b1 +size 1796996 diff --git a/java/kotlin-extractor/dev/wrapper.py b/java/kotlin-extractor/dev/wrapper.py index aeef81e5c1d2..7785c623f4fb 100755 --- a/java/kotlin-extractor/dev/wrapper.py +++ b/java/kotlin-extractor/dev/wrapper.py @@ -27,7 +27,7 @@ import io import os -DEFAULT_VERSION = "2.2.0" +DEFAULT_VERSION = "2.3.0" def options(): diff --git a/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt b/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt index cb1ce8ed253e..fc22eda04d47 100644 --- a/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt +++ b/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt @@ -1645,7 +1645,7 @@ open class KotlinFileExtractor( extractMethodAndParameterTypeAccesses: Boolean, typeSubstitution: TypeSubstitution?, classTypeArgsIncludingOuterClasses: List? - ) = + ) : Label = forceExtractFunction( f, parentId, @@ -2975,12 +2975,22 @@ open class KotlinFileExtractor( val locId = tw.getLocation(s) tw.writeStmts_block(blockId, parent, idx, callable) tw.writeHasLocation(blockId, locId) - extractVariable(s.delegate, callable, blockId, 0) + // For Kotlin < 2.3, s.deligate is not-nullable. Cast to a be nullable, + // as a workaround to silence warnings for kotlin < 2.3 about the elvis + // operator being redundant. + // For Kotlin >= 2.3, the cast is redundant, so we need to silence that warning + + @Suppress("USELESS_CAST") + val delegate = (s.delegate as IrVariable?) ?: run { + logger.errorElement("Local delegated property is missing delegate", s) + return + } + extractVariable(delegate, callable, blockId, 0) val propId = tw.getFreshIdLabel() tw.writeKtProperties(propId, s.name.asString()) tw.writeHasLocation(propId, locId) - tw.writeKtPropertyDelegates(propId, useVariable(s.delegate)) + tw.writeKtPropertyDelegates(propId, useVariable(delegate)) // Getter: extractStatement(s.getter, callable, blockId, 1) diff --git a/java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt b/java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt index bb664e711a3e..ba38ac1da373 100644 --- a/java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt +++ b/java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt @@ -849,9 +849,6 @@ open class KotlinUsesExtractor( } private fun useSimpleType(s: IrSimpleType, context: TypeContext): TypeResults { - if (s.abbreviation != null) { - // TODO: Extract this information - } // We use this when we don't actually have an IrClass for a class // we want to refer to // TODO: Eliminate the need for this if possible diff --git a/java/kotlin-extractor/versions.bzl b/java/kotlin-extractor/versions.bzl index f540e99db90a..33fca7a37f86 100644 --- a/java/kotlin-extractor/versions.bzl +++ b/java/kotlin-extractor/versions.bzl @@ -9,6 +9,7 @@ VERSIONS = [ "2.1.20-Beta1", "2.2.0-Beta1", "2.2.20-Beta2", + "2.3.0", ] def _version_to_tuple(v): From cc25d30fed4bf996c197df398678cb55bd6feb29 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Thu, 4 Dec 2025 17:05:58 +0100 Subject: [PATCH 200/433] Kotlin: Update compiler plugin for Kotlin 2.3.0 --- .../Kotlin2ComponentRegistrar.kt | 13 ++++++++ ...tJvmModuleNameForDeserializedDescriptor.kt | 31 +++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/Kotlin2ComponentRegistrar.kt create mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/getJvmModuleNameForDeserializedDescriptor.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/Kotlin2ComponentRegistrar.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/Kotlin2ComponentRegistrar.kt new file mode 100644 index 000000000000..e20c45ddc4d4 --- /dev/null +++ b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/Kotlin2ComponentRegistrar.kt @@ -0,0 +1,13 @@ +// For ComponentRegistrar +@file:Suppress("DEPRECATION", "DEPRECATION_ERROR") + +package com.github.codeql + +import org.jetbrains.kotlin.compiler.plugin.ComponentRegistrar +import org.jetbrains.kotlin.compiler.plugin.ExperimentalCompilerApi + +@OptIn(ExperimentalCompilerApi::class) +abstract class Kotlin2ComponentRegistrar : ComponentRegistrar { + override val supportsK2: Boolean + get() = true +} diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/getJvmModuleNameForDeserializedDescriptor.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/getJvmModuleNameForDeserializedDescriptor.kt new file mode 100644 index 000000000000..21da983e40ed --- /dev/null +++ b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/getJvmModuleNameForDeserializedDescriptor.kt @@ -0,0 +1,31 @@ +package com.github.codeql.utils.versions + +import org.jetbrains.kotlin.descriptors.* +import org.jetbrains.kotlin.load.kotlin.JvmPackagePartSource +import org.jetbrains.kotlin.metadata.deserialization.* +import org.jetbrains.kotlin.metadata.jvm.deserialization.* +import org.jetbrains.kotlin.metadata.jvm.JvmProtoBuf +import org.jetbrains.kotlin.resolve.DescriptorUtils.* +import org.jetbrains.kotlin.serialization.deserialization.descriptors.* + +fun getJvmModuleNameForDeserializedDescriptor(descriptor: CallableMemberDescriptor): String? { + val parent = getParentOfType(descriptor, ClassOrPackageFragmentDescriptor::class.java, false) + + when { + parent is DeserializedClassDescriptor -> { + val classProto = parent.classProto + val nameResolver = parent.c.nameResolver + return classProto.getExtensionOrNull(JvmProtoBuf.classModuleName) + ?.let(nameResolver::getString) + ?: JvmProtoBufUtil.DEFAULT_MODULE_NAME + } + descriptor is DeserializedMemberDescriptor -> { + val source = descriptor.containerSource + if (source is JvmPackagePartSource) { + return source.moduleName + } + } + } + + return null +} From b8d01ed21b0e2b1d6971014763f15634f708d7b3 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Fri, 5 Dec 2025 09:21:39 +0100 Subject: [PATCH 201/433] Kotlin: Fix bazel format and address copilot review comments --- java/kotlin-extractor/BUILD.bazel | 2 -- java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt | 2 +- .../registry/modules/rules_kotlin/2.2.0-codeql.1/MODULE.bazel | 3 +-- 3 files changed, 2 insertions(+), 5 deletions(-) diff --git a/java/kotlin-extractor/BUILD.bazel b/java/kotlin-extractor/BUILD.bazel index ab265dd946e2..665155d49f2e 100644 --- a/java/kotlin-extractor/BUILD.bazel +++ b/java/kotlin-extractor/BUILD.bazel @@ -124,8 +124,6 @@ kt_javac_options( javac_opts = ":javac-options", kotlinc_opts = ":kotlinc-options-%s" % v, module_name = "codeql-kotlin-extractor", - # resource_strip_prefix is very nit-picky: the following makes it work from - # `codeql`, `@codeql_kotlin_embeddable` and `semmle-code` resources = [ ":resources-%s" % v, ], diff --git a/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt b/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt index fc22eda04d47..af8015fa4573 100644 --- a/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt +++ b/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt @@ -2975,7 +2975,7 @@ open class KotlinFileExtractor( val locId = tw.getLocation(s) tw.writeStmts_block(blockId, parent, idx, callable) tw.writeHasLocation(blockId, locId) - // For Kotlin < 2.3, s.deligate is not-nullable. Cast to a be nullable, + // For Kotlin < 2.3, s.delegate is not-nullable. Cast to a be nullable, // as a workaround to silence warnings for kotlin < 2.3 about the elvis // operator being redundant. // For Kotlin >= 2.3, the cast is redundant, so we need to silence that warning diff --git a/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/MODULE.bazel b/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/MODULE.bazel index f0876478fe97..df66ce2051ab 100644 --- a/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/MODULE.bazel +++ b/misc/bazel/registry/modules/rules_kotlin/2.2.0-codeql.1/MODULE.bazel @@ -7,7 +7,6 @@ module( bazel_dep(name = "platforms", version = "0.0.11") bazel_dep(name = "bazel_skylib", version = "1.7.1") -# bazel_dep(name = "rules_java", version = "7.2.0") bazel_dep(name = "rules_java", version = "7.2.0") bazel_dep(name = "rules_android", version = "0.6.4") bazel_dep(name = "bazel_features", version = "1.25.0") @@ -28,10 +27,10 @@ use_repo( "com_github_google_ksp", "com_github_jetbrains_kotlin", "com_github_pinterest_ktlint", + "kotlin_build_tools_impl", "kotlinx_serialization_core_jvm", "kotlinx_serialization_json", "kotlinx_serialization_json_jvm", - "kotlin_build_tools_impl", ) register_toolchains("//kotlin/internal:default_toolchain") From 164cae845d3b5de12682e5b0f2e462c7aa5412f1 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Sat, 20 Dec 2025 11:18:11 +0100 Subject: [PATCH 202/433] Kotlin: Strip prefix when building plugin --- java/kotlin-extractor/BUILD.bazel | 1 + 1 file changed, 1 insertion(+) diff --git a/java/kotlin-extractor/BUILD.bazel b/java/kotlin-extractor/BUILD.bazel index 665155d49f2e..a4356af1835b 100644 --- a/java/kotlin-extractor/BUILD.bazel +++ b/java/kotlin-extractor/BUILD.bazel @@ -124,6 +124,7 @@ kt_javac_options( javac_opts = ":javac-options", kotlinc_opts = ":kotlinc-options-%s" % v, module_name = "codeql-kotlin-extractor", + resource_strip_prefix = v, resources = [ ":resources-%s" % v, ], From eb37255c4b9ce8935e12fd930efab482a86f5502 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Mon, 5 Jan 2026 08:50:38 +0100 Subject: [PATCH 203/433] Kotlin: Create IrSimpleType factory function to support constructor changes introduced in Kotlin 2.3 --- .../v_1_6_0/IrSimpleTypeImplCompat.kt | 19 +++++++++++++++++ .../v_2_3_0-Beta2/IrSimpleTypeImplCompat.kt | 21 +++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IrSimpleTypeImplCompat.kt create mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/IrSimpleTypeImplCompat.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IrSimpleTypeImplCompat.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IrSimpleTypeImplCompat.kt new file mode 100644 index 000000000000..ed0ad405e294 --- /dev/null +++ b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IrSimpleTypeImplCompat.kt @@ -0,0 +1,19 @@ +package com.github.codeql.utils.versions + +import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrClassifierSymbol +import org.jetbrains.kotlin.ir.types.IrSimpleType +import org.jetbrains.kotlin.ir.types.IrTypeArgument +import org.jetbrains.kotlin.ir.types.impl.IrSimpleTypeImpl + +fun codeqlIrSimpleTypeImpl( + classifier: IrClassifierSymbol, + isNullable: Boolean, + arguments: List, + annotations: List +): IrSimpleType = IrSimpleTypeImpl( + classifier, + isNullable, + arguments, + annotations +) diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/IrSimpleTypeImplCompat.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/IrSimpleTypeImplCompat.kt new file mode 100644 index 000000000000..b2b4e14731c9 --- /dev/null +++ b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/IrSimpleTypeImplCompat.kt @@ -0,0 +1,21 @@ +package com.github.codeql.utils.versions + +import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrClassifierSymbol +import org.jetbrains.kotlin.ir.types.IrSimpleType +import org.jetbrains.kotlin.ir.types.IrTypeArgument +import org.jetbrains.kotlin.ir.types.SimpleTypeNullability +import org.jetbrains.kotlin.ir.types.impl.IrSimpleTypeImpl + +fun codeqlIrSimpleTypeImpl( + classifier: IrClassifierSymbol, + isNullable: Boolean, + arguments: List, + annotations: List +): IrSimpleType = IrSimpleTypeImpl( + classifier, + SimpleTypeNullability.fromHasQuestionMark(isNullable), + arguments, + annotations, + null // originalKotlinType - explicitly pass null to avoid default parameter issues +) From 4d7c84178a5a46ecf06b973bf3aab7d3c50d6bba Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Mon, 5 Jan 2026 14:20:27 +0100 Subject: [PATCH 204/433] Kotlin: Fix spelling --- java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt b/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt index af8015fa4573..185749759479 100644 --- a/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt +++ b/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt @@ -2975,7 +2975,7 @@ open class KotlinFileExtractor( val locId = tw.getLocation(s) tw.writeStmts_block(blockId, parent, idx, callable) tw.writeHasLocation(blockId, locId) - // For Kotlin < 2.3, s.delegate is not-nullable. Cast to a be nullable, + // For Kotlin < 2.3, s.delegate is not-nullable. Cast to be nullable, // as a workaround to silence warnings for kotlin < 2.3 about the elvis // operator being redundant. // For Kotlin >= 2.3, the cast is redundant, so we need to silence that warning From 55525279cada365f1e38e81e6fc48c0e904cf7f3 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Mon, 5 Jan 2026 14:20:49 +0100 Subject: [PATCH 205/433] Kotlin: Remove obsolete file --- ...tJvmModuleNameForDeserializedDescriptor.kt | 31 ------------------- 1 file changed, 31 deletions(-) delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/getJvmModuleNameForDeserializedDescriptor.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/getJvmModuleNameForDeserializedDescriptor.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/getJvmModuleNameForDeserializedDescriptor.kt deleted file mode 100644 index 21da983e40ed..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/getJvmModuleNameForDeserializedDescriptor.kt +++ /dev/null @@ -1,31 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.descriptors.* -import org.jetbrains.kotlin.load.kotlin.JvmPackagePartSource -import org.jetbrains.kotlin.metadata.deserialization.* -import org.jetbrains.kotlin.metadata.jvm.deserialization.* -import org.jetbrains.kotlin.metadata.jvm.JvmProtoBuf -import org.jetbrains.kotlin.resolve.DescriptorUtils.* -import org.jetbrains.kotlin.serialization.deserialization.descriptors.* - -fun getJvmModuleNameForDeserializedDescriptor(descriptor: CallableMemberDescriptor): String? { - val parent = getParentOfType(descriptor, ClassOrPackageFragmentDescriptor::class.java, false) - - when { - parent is DeserializedClassDescriptor -> { - val classProto = parent.classProto - val nameResolver = parent.c.nameResolver - return classProto.getExtensionOrNull(JvmProtoBuf.classModuleName) - ?.let(nameResolver::getString) - ?: JvmProtoBufUtil.DEFAULT_MODULE_NAME - } - descriptor is DeserializedMemberDescriptor -> { - val source = descriptor.containerSource - if (source is JvmPackagePartSource) { - return source.moduleName - } - } - } - - return null -} From 8ee35231c29543cde817aaf52593d01f3e392255 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Mon, 5 Jan 2026 17:00:42 +0100 Subject: [PATCH 206/433] Kotlin: Remove support for Kotlin versions 1.6 and 1.7 This change rolls up all files from v1_6_0, v1_6_20, v1_7_0 and v_1_7_20. In addition, versioned files that are not overridden by any later Kotlin versions (i.e. files that only have one copy under utils/versions) are inlined and removed to simplify list of changes. List of removed/inlined files: allOverriddenIncludingSelf.kt copyTo.kt ExperimentalCompilerApi.kt getFileClassFqName.kt IsUnderscoreParameter.kt ReferenceEntity.kt SyntheticBodyKind.kt Types.kt withHasQuestionMark.kt --- .../src/main/kotlin/KotlinFileExtractor.kt | 6 +-- .../src/main/kotlin/KotlinUsesExtractor.kt | 2 +- .../src/main/kotlin/MetaAnnotationSupport.kt | 6 ++- .../src/main/kotlin/utils/ClassNames.kt | 36 ++++++++++++++++ .../src/main/kotlin/utils/GetByFqName.kt | 29 +++++++++++++ .../src/main/kotlin/utils/JvmNames.kt | 4 +- .../src/main/kotlin/utils/TypeSubstitution.kt | 11 ++++- .../v_1_6_0/ExperimentalCompilerApi.kt | 4 -- .../versions/v_1_6_0/IsUnderscoreParameter.kt | 21 ---------- .../utils/versions/v_1_6_0/ReferenceEntity.kt | 33 --------------- .../versions/v_1_6_0/SyntheticBodyKind.kt | 5 --- .../kotlin/utils/versions/v_1_6_0/Types.kt | 6 --- .../v_1_6_0/allOverriddenIncludingSelf.kt | 6 --- .../kotlin/utils/versions/v_1_6_0/copyTo.kt | 7 ---- ...rameterDeclarationWithWrappedDescriptor.kt | 7 ---- .../versions/v_1_6_0/getFileClassFqName.kt | 8 ---- .../utils/versions/v_1_6_0/getKotlinType.kt | 6 --- .../versions/v_1_6_0/withHasQuestionMark.kt | 8 ---- .../v_1_6_20/IsUnderscoreParameter.kt | 7 ---- .../kotlin/utils/versions/v_1_6_20/Types.kt | 6 --- .../versions/v_1_7_0/getFileClassFqName.kt | 41 ------------------- .../versions/v_1_7_0/withHasQuestionMark.kt | 13 ------ .../v_1_7_20/allOverriddenIncludingSelf.kt | 6 --- .../kotlin/utils/versions/v_1_7_20/copyTo.kt | 7 ---- .../{v_1_6_0 => v_1_8_0}/CodeQLIrConst.kt | 0 .../{v_1_6_0 => v_1_8_0}/CodeQLIsRoot.kt | 0 .../CommentExtractorLighterAST.kt | 0 .../v_1_8_0/ExperimentalCompilerApi.kt | 4 -- .../FirMetadataSourceFirFile.kt | 0 .../{v_1_6_0 => v_1_8_0}/IrLazyFunction.kt | 0 .../IrSimpleTypeImplCompat.kt | 0 .../{v_1_6_0 => v_1_8_0}/IrSymbolInternals.kt | 0 .../{v_1_6_0 => v_1_8_0}/IrVisitor.kt | 0 .../JvmDefaultModeIsNoCompatibility.kt | 0 .../Kotlin2ComponentRegistrar.kt | 0 .../LinesOfCodeLighterAST.kt | 0 .../versions/{v_1_6_0 => v_1_8_0}/Psi2Ir.kt | 0 .../utils/versions/v_1_8_0/ReferenceEntity.kt | 35 ---------------- .../versions/v_1_8_0/SyntheticBodyKind.kt | 5 --- .../versions/{v_1_6_0 => v_1_8_0}/UsesK2.kt | 0 .../VirtualFileBasedSourceElement.kt | 0 ...rameterDeclarationWithWrappedDescriptor.kt | 0 .../{v_1_6_0 => v_1_8_0}/getJvmDefaultMode.kt | 0 ...tJvmModuleNameForDeserializedDescriptor.kt | 0 .../{v_1_7_0 => v_1_8_0}/getKotlinType.kt | 0 .../isDispatchReceiver.kt | 0 .../{v_1_6_0 => v_1_8_0}/packageFqName.kt | 0 .../parameterIndexExcludingReceivers.kt | 0 .../versions/{v_1_6_0 => v_1_8_0}/parents.kt | 0 .../{v_1_6_0 => v_1_8_0}/typeUtils.kt | 0 50 files changed, 85 insertions(+), 244 deletions(-) delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/ExperimentalCompilerApi.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IsUnderscoreParameter.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/ReferenceEntity.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/SyntheticBodyKind.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/Types.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/allOverriddenIncludingSelf.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/copyTo.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/createImplicitParameterDeclarationWithWrappedDescriptor.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/getFileClassFqName.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/getKotlinType.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/withHasQuestionMark.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_20/IsUnderscoreParameter.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_20/Types.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_0/getFileClassFqName.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_0/withHasQuestionMark.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_20/allOverriddenIncludingSelf.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_20/copyTo.kt rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/CodeQLIrConst.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/CodeQLIsRoot.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/CommentExtractorLighterAST.kt (100%) delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/ExperimentalCompilerApi.kt rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/FirMetadataSourceFirFile.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/IrLazyFunction.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/IrSimpleTypeImplCompat.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/IrSymbolInternals.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/IrVisitor.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/JvmDefaultModeIsNoCompatibility.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/Kotlin2ComponentRegistrar.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/LinesOfCodeLighterAST.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/Psi2Ir.kt (100%) delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/ReferenceEntity.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/SyntheticBodyKind.kt rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/UsesK2.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/VirtualFileBasedSourceElement.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_7_20 => v_1_8_0}/createImplicitParameterDeclarationWithWrappedDescriptor.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/getJvmDefaultMode.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/getJvmModuleNameForDeserializedDescriptor.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_7_0 => v_1_8_0}/getKotlinType.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/isDispatchReceiver.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/packageFqName.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/parameterIndexExcludingReceivers.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/parents.kt (100%) rename java/kotlin-extractor/src/main/kotlin/utils/versions/{v_1_6_0 => v_1_8_0}/typeUtils.kt (100%) diff --git a/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt b/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt index 185749759479..baf0a8382161 100644 --- a/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt +++ b/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt @@ -1343,7 +1343,7 @@ open class KotlinFileExtractor( extractTypeAccessRecursive(substitutedType, location, id, -1) } val syntheticParameterNames = - isUnderscoreParameter(vp) || + vp.origin == IrDeclarationOrigin.UNDERSCORE_PARAMETER || ((vp.parent as? IrFunction)?.let { hasSynthesizedParameterNames(it) } ?: true) val javaParameter = when (val callable = (vp.parent as? IrFunction)?.let { getJavaCallable(it) }) { @@ -2836,7 +2836,7 @@ open class KotlinFileExtractor( when { kind == IrSyntheticBodyKind.ENUM_VALUES -> tw.writeKtSyntheticBody(callable, 1) kind == IrSyntheticBodyKind.ENUM_VALUEOF -> tw.writeKtSyntheticBody(callable, 2) - kind == kind_ENUM_ENTRIES -> tw.writeKtSyntheticBody(callable, 3) + kind == IrSyntheticBodyKind.ENUM_ENTRIES -> tw.writeKtSyntheticBody(callable, 3) else -> { logger.errorElement("Unhandled synthetic body kind " + kind, b) } @@ -3344,7 +3344,7 @@ open class KotlinFileExtractor( // that specified the default values, which will in turn dynamically dispatch back to the // relevant override. val overriddenCallTarget = - (callTarget as? IrSimpleFunction)?.allOverriddenIncludingSelf()?.firstOrNull { + (callTarget as? IrSimpleFunction)?.allOverridden(includeSelf = true)?.firstOrNull { it.overriddenSymbols.isEmpty() && it.valueParameters.any { p -> p.defaultValue != null } } ?: callTarget diff --git a/java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt b/java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt index ba38ac1da373..93e032a05413 100644 --- a/java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt +++ b/java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt @@ -936,7 +936,7 @@ open class KotlinUsesExtractor( return arrayInfo.componentTypeResults } owner is IrClass -> { - val args = if (s.codeQlIsRawType()) null else s.arguments + val args = if (s.isRawType()) null else s.arguments return useSimpleTypeClass(owner, args, s.isNullableCodeQL()) } diff --git a/java/kotlin-extractor/src/main/kotlin/MetaAnnotationSupport.kt b/java/kotlin-extractor/src/main/kotlin/MetaAnnotationSupport.kt index 368600267c11..96d5dd8bbbdd 100644 --- a/java/kotlin-extractor/src/main/kotlin/MetaAnnotationSupport.kt +++ b/java/kotlin-extractor/src/main/kotlin/MetaAnnotationSupport.kt @@ -1,6 +1,5 @@ package com.github.codeql -import com.github.codeql.utils.versions.copyParameterToFunction import com.github.codeql.utils.versions.createImplicitParameterDeclarationWithWrappedDescriptor import java.lang.annotation.ElementType import java.util.HashSet @@ -21,7 +20,9 @@ import org.jetbrains.kotlin.ir.declarations.IrClass import org.jetbrains.kotlin.ir.declarations.IrConstructor import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin import org.jetbrains.kotlin.ir.declarations.IrEnumEntry +import org.jetbrains.kotlin.ir.declarations.IrFunction import org.jetbrains.kotlin.ir.declarations.IrProperty +import org.jetbrains.kotlin.ir.declarations.IrValueParameter import org.jetbrains.kotlin.ir.expressions.IrClassReference import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.expressions.IrGetEnumValue @@ -31,6 +32,7 @@ import org.jetbrains.kotlin.ir.symbols.IrClassSymbol import org.jetbrains.kotlin.ir.types.typeWith import org.jetbrains.kotlin.ir.util.constructedClass import org.jetbrains.kotlin.ir.util.constructors +import org.jetbrains.kotlin.ir.util.copyTo import org.jetbrains.kotlin.ir.util.deepCopyWithSymbols import org.jetbrains.kotlin.ir.util.defaultType import org.jetbrains.kotlin.ir.util.fqNameWhenAvailable @@ -330,7 +332,7 @@ class MetaAnnotationSupport( ) return } - val newParam = copyParameterToFunction(thisReceiever, this) + val newParam = thisReceiever.copyTo(this) dispatchReceiverParameter = newParam body = factory diff --git a/java/kotlin-extractor/src/main/kotlin/utils/ClassNames.kt b/java/kotlin-extractor/src/main/kotlin/utils/ClassNames.kt index a18dd06247f7..97eb6d0bca46 100644 --- a/java/kotlin-extractor/src/main/kotlin/utils/ClassNames.kt +++ b/java/kotlin-extractor/src/main/kotlin/utils/ClassNames.kt @@ -12,9 +12,11 @@ import org.jetbrains.kotlin.ir.util.fqNameWhenAvailable import org.jetbrains.kotlin.ir.util.parentClassOrNull import org.jetbrains.kotlin.load.java.sources.JavaSourceElement import org.jetbrains.kotlin.load.java.structure.impl.classFiles.BinaryJavaClass +import org.jetbrains.kotlin.load.kotlin.FacadeClassSource import org.jetbrains.kotlin.load.kotlin.JvmPackagePartSource import org.jetbrains.kotlin.load.kotlin.KotlinJvmBinarySourceElement import org.jetbrains.kotlin.load.kotlin.VirtualFileKotlinClass +import org.jetbrains.kotlin.name.FqName // Adapted from Kotlin's interpreter/Utils.kt function 'internalName' // Translates class names into their JLS section 13.1 binary name, @@ -31,6 +33,40 @@ fun getFileClassName(f: IrFile) = .replaceFirst(Regex("""\.kt$"""), "") .replaceFirstChar { it.uppercase() }) + "Kt") +fun getFileClassFqName(d: IrDeclaration): FqName? { + // d is in a file class. + // Get the name in a similar way to the compiler's ExternalPackageParentPatcherLowering + // visitMemberAccess/generateOrGetFacadeClass. + + // But first, fields aren't IrMemberWithContainerSource, so we need + // to get back to the property (if there is one) + if (d is IrField) { + val propSym = d.correspondingPropertySymbol + if (propSym != null) { + return getFileClassFqName(propSym.owner) + } + } + + // Now the main code + if (d is IrMemberWithContainerSource) { + val containerSource = d.containerSource + if (containerSource is FacadeClassSource) { + val facadeClassName = containerSource.facadeClassName + if (facadeClassName != null) { + // TODO: This is really a multifile-class rather than a file-class, + // but for now we treat them the same. + return facadeClassName.fqNameForTopLevelClassMaybeWithDollars + } else { + return containerSource.className.fqNameForTopLevelClassMaybeWithDollars + } + } else { + return null + } + } else { + return null + } +} + fun getIrElementBinaryName(that: IrElement): String { if (that is IrFile) { val shortName = getFileClassName(that) diff --git a/java/kotlin-extractor/src/main/kotlin/utils/GetByFqName.kt b/java/kotlin-extractor/src/main/kotlin/utils/GetByFqName.kt index a3f5bb80a48e..8fff87475948 100644 --- a/java/kotlin-extractor/src/main/kotlin/utils/GetByFqName.kt +++ b/java/kotlin-extractor/src/main/kotlin/utils/GetByFqName.kt @@ -2,9 +2,38 @@ package com.github.codeql.utils import org.jetbrains.kotlin.backend.common.extensions.IrPluginContext import org.jetbrains.kotlin.ir.symbols.* +import org.jetbrains.kotlin.name.CallableId +import org.jetbrains.kotlin.name.ClassId import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.name.Name +fun getClassByFqName(pluginContext: IrPluginContext, fqName: FqName): IrClassSymbol? { + val id = ClassId.topLevel(fqName) + return getClassByClassId(pluginContext, id) +} + +fun getClassByClassId(pluginContext: IrPluginContext, id: ClassId): IrClassSymbol? { + return pluginContext.referenceClass(id) +} + +fun getFunctionsByFqName( + pluginContext: IrPluginContext, + pkgName: FqName, + name: Name +): Collection { + val id = CallableId(pkgName, name) + return pluginContext.referenceFunctions(id) +} + +fun getPropertiesByFqName( + pluginContext: IrPluginContext, + pkgName: FqName, + name: Name +): Collection { + val id = CallableId(pkgName, name) + return pluginContext.referenceProperties(id) +} + fun getClassByFqName(pluginContext: IrPluginContext, fqName: String): IrClassSymbol? { return getClassByFqName(pluginContext, FqName(fqName)) } diff --git a/java/kotlin-extractor/src/main/kotlin/utils/JvmNames.kt b/java/kotlin-extractor/src/main/kotlin/utils/JvmNames.kt index ec7c17b39fc6..02059b3db649 100644 --- a/java/kotlin-extractor/src/main/kotlin/utils/JvmNames.kt +++ b/java/kotlin-extractor/src/main/kotlin/utils/JvmNames.kt @@ -1,6 +1,5 @@ package com.github.codeql.utils -import com.github.codeql.utils.versions.allOverriddenIncludingSelf import com.github.codeql.utils.versions.CodeQLIrConst import org.jetbrains.kotlin.builtins.StandardNames import org.jetbrains.kotlin.ir.declarations.IrAnnotationContainer @@ -9,6 +8,7 @@ import org.jetbrains.kotlin.ir.declarations.IrFunction import org.jetbrains.kotlin.ir.declarations.IrSimpleFunction import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.types.IrSimpleType +import org.jetbrains.kotlin.ir.util.allOverridden import org.jetbrains.kotlin.ir.util.fqNameWhenAvailable import org.jetbrains.kotlin.ir.util.packageFqName import org.jetbrains.kotlin.ir.util.parentClassOrNull @@ -62,7 +62,7 @@ private val specialFunctionShortNames = specialFunctions.keys.map { it.functionN private fun getSpecialJvmName(f: IrFunction): String? { if (specialFunctionShortNames.contains(f.name) && f is IrSimpleFunction) { - f.allOverriddenIncludingSelf().forEach { overriddenFunc -> + f.allOverridden(includeSelf = true).forEach { overriddenFunc -> overriddenFunc.parentClassOrNull?.fqNameWhenAvailable?.let { parentFqName -> specialFunctions[MethodKey(parentFqName, f.name)]?.let { return it diff --git a/java/kotlin-extractor/src/main/kotlin/utils/TypeSubstitution.kt b/java/kotlin-extractor/src/main/kotlin/utils/TypeSubstitution.kt index f4eac03df9d0..10f0dbde887a 100644 --- a/java/kotlin-extractor/src/main/kotlin/utils/TypeSubstitution.kt +++ b/java/kotlin-extractor/src/main/kotlin/utils/TypeSubstitution.kt @@ -3,7 +3,6 @@ package com.github.codeql.utils import com.github.codeql.KotlinUsesExtractor import com.github.codeql.Logger import com.github.codeql.getJavaEquivalentClassId -import com.github.codeql.utils.versions.codeQlWithHasQuestionMark import com.github.codeql.utils.versions.createImplicitParameterDeclarationWithWrappedDescriptor import com.github.codeql.utils.versions.* import org.jetbrains.kotlin.backend.common.extensions.IrPluginContext @@ -21,6 +20,8 @@ import org.jetbrains.kotlin.ir.symbols.IrTypeParameterSymbol import org.jetbrains.kotlin.ir.symbols.impl.DescriptorlessExternalPackageFragmentSymbol import org.jetbrains.kotlin.ir.types.addAnnotations import org.jetbrains.kotlin.ir.types.classifierOrNull +import org.jetbrains.kotlin.ir.types.makeNotNull +import org.jetbrains.kotlin.ir.types.makeNullable import org.jetbrains.kotlin.ir.types.typeWith import org.jetbrains.kotlin.ir.types.IrSimpleType import org.jetbrains.kotlin.ir.types.IrStarProjection @@ -36,6 +37,14 @@ import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.types.Variance import org.jetbrains.kotlin.utils.addToStdlib.firstIsInstanceOrNull +fun IrType.codeQlWithHasQuestionMark(b: Boolean): IrType { + if (b) { + return this.makeNullable() + } else { + return this.makeNotNull() + } +} + fun IrType.substituteTypeArguments(params: List, arguments: List) = when (this) { is IrSimpleType -> substituteTypeArguments(params.map { it.symbol }.zip(arguments).toMap()) diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/ExperimentalCompilerApi.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/ExperimentalCompilerApi.kt deleted file mode 100644 index 9b40a26bc511..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/ExperimentalCompilerApi.kt +++ /dev/null @@ -1,4 +0,0 @@ -package org.jetbrains.kotlin.compiler.plugin - -@RequiresOptIn("This API is experimental. There are no stability guarantees for it") -annotation class ExperimentalCompilerApi diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IsUnderscoreParameter.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IsUnderscoreParameter.kt deleted file mode 100644 index cb0fae2555b6..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IsUnderscoreParameter.kt +++ /dev/null @@ -1,21 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI -import org.jetbrains.kotlin.ir.declarations.IrValueParameter -import org.jetbrains.kotlin.psi.KtParameter -import org.jetbrains.kotlin.resolve.DescriptorToSourceUtils -import org.jetbrains.kotlin.resolve.calls.util.isSingleUnderscore -import org.jetbrains.kotlin.utils.addToStdlib.safeAs - -@OptIn(ObsoleteDescriptorBasedAPI::class) -fun isUnderscoreParameter(vp: IrValueParameter) = - try { - DescriptorToSourceUtils.getSourceFromDescriptor(vp.descriptor) - ?.safeAs() - ?.isSingleUnderscore == true - } catch (e: NotImplementedError) { - // Some kinds of descriptor throw in `getSourceFromDescriptor` as that method is not - // normally expected to - // be applied to synthetic functions. - false - } diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/ReferenceEntity.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/ReferenceEntity.kt deleted file mode 100644 index 22e49c974443..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/ReferenceEntity.kt +++ /dev/null @@ -1,33 +0,0 @@ -package com.github.codeql.utils - -import org.jetbrains.kotlin.backend.common.extensions.IrPluginContext -import org.jetbrains.kotlin.ir.symbols.* -import org.jetbrains.kotlin.name.ClassId -import org.jetbrains.kotlin.name.FqName -import org.jetbrains.kotlin.name.Name - -fun getClassByFqName(pluginContext: IrPluginContext, fqName: FqName): IrClassSymbol? { - return pluginContext.referenceClass(fqName) -} - -fun getClassByClassId(pluginContext: IrPluginContext, id: ClassId): IrClassSymbol? { - return getClassByFqName(pluginContext, id.asSingleFqName()) -} - -fun getFunctionsByFqName( - pluginContext: IrPluginContext, - pkgName: FqName, - name: Name -): Collection { - val fqName = pkgName.child(name) - return pluginContext.referenceFunctions(fqName) -} - -fun getPropertiesByFqName( - pluginContext: IrPluginContext, - pkgName: FqName, - name: Name -): Collection { - val fqName = pkgName.child(name) - return pluginContext.referenceProperties(fqName) -} diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/SyntheticBodyKind.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/SyntheticBodyKind.kt deleted file mode 100644 index 2d71b430c9f3..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/SyntheticBodyKind.kt +++ /dev/null @@ -1,5 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.expressions.IrSyntheticBodyKind - -val kind_ENUM_ENTRIES: IrSyntheticBodyKind? = null diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/Types.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/Types.kt deleted file mode 100644 index 61a580e2a279..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/Types.kt +++ /dev/null @@ -1,6 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.backend.jvm.codegen.isRawType -import org.jetbrains.kotlin.ir.types.IrSimpleType - -fun IrSimpleType.codeQlIsRawType() = this.isRawType() diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/allOverriddenIncludingSelf.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/allOverriddenIncludingSelf.kt deleted file mode 100644 index 24ac7e40f481..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/allOverriddenIncludingSelf.kt +++ /dev/null @@ -1,6 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.backend.common.ir.allOverridden -import org.jetbrains.kotlin.ir.declarations.IrSimpleFunction - -fun IrSimpleFunction.allOverriddenIncludingSelf() = this.allOverridden(includeSelf = true) diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/copyTo.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/copyTo.kt deleted file mode 100644 index a0d46acc56e8..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/copyTo.kt +++ /dev/null @@ -1,7 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.backend.common.ir.copyTo -import org.jetbrains.kotlin.ir.declarations.IrFunction -import org.jetbrains.kotlin.ir.declarations.IrValueParameter - -fun copyParameterToFunction(p: IrValueParameter, f: IrFunction) = p.copyTo(f) diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/createImplicitParameterDeclarationWithWrappedDescriptor.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/createImplicitParameterDeclarationWithWrappedDescriptor.kt deleted file mode 100644 index 36016980af19..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/createImplicitParameterDeclarationWithWrappedDescriptor.kt +++ /dev/null @@ -1,7 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.backend.common.ir.createImplicitParameterDeclarationWithWrappedDescriptor -import org.jetbrains.kotlin.ir.declarations.IrClass - -fun IrClass.createImplicitParameterDeclarationWithWrappedDescriptor() = - this.createImplicitParameterDeclarationWithWrappedDescriptor() diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/getFileClassFqName.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/getFileClassFqName.kt deleted file mode 100644 index 4400589ae343..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/getFileClassFqName.kt +++ /dev/null @@ -1,8 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.declarations.IrDeclaration -import org.jetbrains.kotlin.name.FqName - -fun getFileClassFqName(@Suppress("UNUSED_PARAMETER") d: IrDeclaration): FqName? { - return null -} diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/getKotlinType.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/getKotlinType.kt deleted file mode 100644 index 3f21550f13f6..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/getKotlinType.kt +++ /dev/null @@ -1,6 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.types.IrSimpleType -import org.jetbrains.kotlin.ir.types.impl.IrTypeBase - -fun getKotlinType(s: IrSimpleType) = (s as? IrTypeBase)?.kotlinType diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/withHasQuestionMark.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/withHasQuestionMark.kt deleted file mode 100644 index 114391ae6bfe..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/withHasQuestionMark.kt +++ /dev/null @@ -1,8 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.types.IrType -import org.jetbrains.kotlin.ir.types.withHasQuestionMark - -fun IrType.codeQlWithHasQuestionMark(b: Boolean): IrType { - return this.withHasQuestionMark(b) -} diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_20/IsUnderscoreParameter.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_20/IsUnderscoreParameter.kt deleted file mode 100644 index d727126ffc4a..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_20/IsUnderscoreParameter.kt +++ /dev/null @@ -1,7 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrValueParameter - -fun isUnderscoreParameter(vp: IrValueParameter) = - vp.origin == IrDeclarationOrigin.UNDERSCORE_PARAMETER diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_20/Types.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_20/Types.kt deleted file mode 100644 index 7db5d520b29f..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_20/Types.kt +++ /dev/null @@ -1,6 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.backend.jvm.ir.isRawType -import org.jetbrains.kotlin.ir.types.IrSimpleType - -fun IrSimpleType.codeQlIsRawType() = this.isRawType() diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_0/getFileClassFqName.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_0/getFileClassFqName.kt deleted file mode 100644 index 82275ba0342d..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_0/getFileClassFqName.kt +++ /dev/null @@ -1,41 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.declarations.IrDeclaration -import org.jetbrains.kotlin.ir.declarations.IrField -import org.jetbrains.kotlin.ir.declarations.IrMemberWithContainerSource -import org.jetbrains.kotlin.load.kotlin.FacadeClassSource -import org.jetbrains.kotlin.name.FqName - -fun getFileClassFqName(d: IrDeclaration): FqName? { - // d is in a file class. - // Get the name in a similar way to the compiler's ExternalPackageParentPatcherLowering - // visitMemberAccess/generateOrGetFacadeClass. - - // But first, fields aren't IrMemberWithContainerSource, so we need - // to get back to the property (if there is one) - if (d is IrField) { - val propSym = d.correspondingPropertySymbol - if (propSym != null) { - return getFileClassFqName(propSym.owner) - } - } - - // Now the main code - if (d is IrMemberWithContainerSource) { - val containerSource = d.containerSource - if (containerSource is FacadeClassSource) { - val facadeClassName = containerSource.facadeClassName - if (facadeClassName != null) { - // TODO: This is really a multifile-class rather than a file-class, - // but for now we treat them the same. - return facadeClassName.fqNameForTopLevelClassMaybeWithDollars - } else { - return containerSource.className.fqNameForTopLevelClassMaybeWithDollars - } - } else { - return null - } - } else { - return null - } -} diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_0/withHasQuestionMark.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_0/withHasQuestionMark.kt deleted file mode 100644 index f4e171f8fb2a..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_0/withHasQuestionMark.kt +++ /dev/null @@ -1,13 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.types.IrType -import org.jetbrains.kotlin.ir.types.makeNotNull -import org.jetbrains.kotlin.ir.types.makeNullable - -fun IrType.codeQlWithHasQuestionMark(b: Boolean): IrType { - if (b) { - return this.makeNullable() - } else { - return this.makeNotNull() - } -} diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_20/allOverriddenIncludingSelf.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_20/allOverriddenIncludingSelf.kt deleted file mode 100644 index 2d33930ecbcf..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_20/allOverriddenIncludingSelf.kt +++ /dev/null @@ -1,6 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.declarations.IrSimpleFunction -import org.jetbrains.kotlin.ir.util.allOverridden - -fun IrSimpleFunction.allOverriddenIncludingSelf() = this.allOverridden(includeSelf = true) diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_20/copyTo.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_20/copyTo.kt deleted file mode 100644 index a68e93432470..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_20/copyTo.kt +++ /dev/null @@ -1,7 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.declarations.IrFunction -import org.jetbrains.kotlin.ir.declarations.IrValueParameter -import org.jetbrains.kotlin.ir.util.copyTo - -fun copyParameterToFunction(p: IrValueParameter, f: IrFunction) = p.copyTo(f) diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/CodeQLIrConst.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/CodeQLIrConst.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/CodeQLIrConst.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/CodeQLIrConst.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/CodeQLIsRoot.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/CodeQLIsRoot.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/CodeQLIsRoot.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/CodeQLIsRoot.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/CommentExtractorLighterAST.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/CommentExtractorLighterAST.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/CommentExtractorLighterAST.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/CommentExtractorLighterAST.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/ExperimentalCompilerApi.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/ExperimentalCompilerApi.kt deleted file mode 100644 index 48829cc30c5f..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/ExperimentalCompilerApi.kt +++ /dev/null @@ -1,4 +0,0 @@ -package com.github.codeql - -// The compiler provides the annotation class, so we don't need to do -// anything diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/FirMetadataSourceFirFile.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/FirMetadataSourceFirFile.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/FirMetadataSourceFirFile.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/FirMetadataSourceFirFile.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IrLazyFunction.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/IrLazyFunction.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IrLazyFunction.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/IrLazyFunction.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IrSimpleTypeImplCompat.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/IrSimpleTypeImplCompat.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IrSimpleTypeImplCompat.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/IrSimpleTypeImplCompat.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IrSymbolInternals.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/IrSymbolInternals.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IrSymbolInternals.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/IrSymbolInternals.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IrVisitor.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/IrVisitor.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/IrVisitor.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/IrVisitor.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/JvmDefaultModeIsNoCompatibility.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/JvmDefaultModeIsNoCompatibility.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/JvmDefaultModeIsNoCompatibility.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/JvmDefaultModeIsNoCompatibility.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/Kotlin2ComponentRegistrar.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/Kotlin2ComponentRegistrar.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/Kotlin2ComponentRegistrar.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/Kotlin2ComponentRegistrar.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/LinesOfCodeLighterAST.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/LinesOfCodeLighterAST.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/LinesOfCodeLighterAST.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/LinesOfCodeLighterAST.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/Psi2Ir.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/Psi2Ir.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/Psi2Ir.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/Psi2Ir.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/ReferenceEntity.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/ReferenceEntity.kt deleted file mode 100644 index 666e4e38386a..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/ReferenceEntity.kt +++ /dev/null @@ -1,35 +0,0 @@ -package com.github.codeql.utils - -import org.jetbrains.kotlin.backend.common.extensions.IrPluginContext -import org.jetbrains.kotlin.ir.symbols.* -import org.jetbrains.kotlin.name.CallableId -import org.jetbrains.kotlin.name.ClassId -import org.jetbrains.kotlin.name.FqName -import org.jetbrains.kotlin.name.Name - -fun getClassByFqName(pluginContext: IrPluginContext, fqName: FqName): IrClassSymbol? { - val id = ClassId.topLevel(fqName) - return getClassByClassId(pluginContext, id) -} - -fun getClassByClassId(pluginContext: IrPluginContext, id: ClassId): IrClassSymbol? { - return pluginContext.referenceClass(id) -} - -fun getFunctionsByFqName( - pluginContext: IrPluginContext, - pkgName: FqName, - name: Name -): Collection { - val id = CallableId(pkgName, name) - return pluginContext.referenceFunctions(id) -} - -fun getPropertiesByFqName( - pluginContext: IrPluginContext, - pkgName: FqName, - name: Name -): Collection { - val id = CallableId(pkgName, name) - return pluginContext.referenceProperties(id) -} diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/SyntheticBodyKind.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/SyntheticBodyKind.kt deleted file mode 100644 index 4c654282ca78..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/SyntheticBodyKind.kt +++ /dev/null @@ -1,5 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.expressions.IrSyntheticBodyKind - -val kind_ENUM_ENTRIES: IrSyntheticBodyKind? = IrSyntheticBodyKind.ENUM_ENTRIES diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/UsesK2.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/UsesK2.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/UsesK2.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/UsesK2.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/VirtualFileBasedSourceElement.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/VirtualFileBasedSourceElement.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/VirtualFileBasedSourceElement.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/VirtualFileBasedSourceElement.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_20/createImplicitParameterDeclarationWithWrappedDescriptor.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/createImplicitParameterDeclarationWithWrappedDescriptor.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_20/createImplicitParameterDeclarationWithWrappedDescriptor.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/createImplicitParameterDeclarationWithWrappedDescriptor.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/getJvmDefaultMode.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/getJvmDefaultMode.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/getJvmDefaultMode.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/getJvmDefaultMode.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/getJvmModuleNameForDeserializedDescriptor.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/getJvmModuleNameForDeserializedDescriptor.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/getJvmModuleNameForDeserializedDescriptor.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/getJvmModuleNameForDeserializedDescriptor.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_0/getKotlinType.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/getKotlinType.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_7_0/getKotlinType.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/getKotlinType.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/isDispatchReceiver.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/isDispatchReceiver.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/isDispatchReceiver.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/isDispatchReceiver.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/packageFqName.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/packageFqName.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/packageFqName.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/packageFqName.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/parameterIndexExcludingReceivers.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/parameterIndexExcludingReceivers.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/parameterIndexExcludingReceivers.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/parameterIndexExcludingReceivers.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/parents.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/parents.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/parents.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/parents.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/typeUtils.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/typeUtils.kt similarity index 100% rename from java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_6_0/typeUtils.kt rename to java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/typeUtils.kt From 5cdfb77504212bbe92da803afb768e6233415372 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Mon, 5 Jan 2026 17:15:16 +0100 Subject: [PATCH 207/433] Kotlin: Add additional warning suppresion to v1_9_0 and remove copy in v2_3_0 --- .../v_1_9_0-Beta/Kotlin2ComponentRegistrar.kt | 2 +- .../v_2_3_0-Beta2/Kotlin2ComponentRegistrar.kt | 13 ------------- 2 files changed, 1 insertion(+), 14 deletions(-) delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/Kotlin2ComponentRegistrar.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_9_0-Beta/Kotlin2ComponentRegistrar.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_9_0-Beta/Kotlin2ComponentRegistrar.kt index 323d8e2c2836..e20c45ddc4d4 100644 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_9_0-Beta/Kotlin2ComponentRegistrar.kt +++ b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_9_0-Beta/Kotlin2ComponentRegistrar.kt @@ -1,5 +1,5 @@ // For ComponentRegistrar -@file:Suppress("DEPRECATION") +@file:Suppress("DEPRECATION", "DEPRECATION_ERROR") package com.github.codeql diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/Kotlin2ComponentRegistrar.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/Kotlin2ComponentRegistrar.kt deleted file mode 100644 index e20c45ddc4d4..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/Kotlin2ComponentRegistrar.kt +++ /dev/null @@ -1,13 +0,0 @@ -// For ComponentRegistrar -@file:Suppress("DEPRECATION", "DEPRECATION_ERROR") - -package com.github.codeql - -import org.jetbrains.kotlin.compiler.plugin.ComponentRegistrar -import org.jetbrains.kotlin.compiler.plugin.ExperimentalCompilerApi - -@OptIn(ExperimentalCompilerApi::class) -abstract class Kotlin2ComponentRegistrar : ComponentRegistrar { - override val supportsK2: Boolean - get() = true -} From e1f3d5b37440bb852b5446fc2248eaffe93684bd Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Tue, 6 Jan 2026 13:55:48 +0100 Subject: [PATCH 208/433] Kotlin: Do not skip writing of getter and setters if the local deligate is null --- .../src/main/kotlin/KotlinFileExtractor.kt | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt b/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt index baf0a8382161..f83d887eb56f 100644 --- a/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt +++ b/java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt @@ -2979,19 +2979,19 @@ open class KotlinFileExtractor( // as a workaround to silence warnings for kotlin < 2.3 about the elvis // operator being redundant. // For Kotlin >= 2.3, the cast is redundant, so we need to silence that warning - @Suppress("USELESS_CAST") - val delegate = (s.delegate as IrVariable?) ?: run { - logger.errorElement("Local delegated property is missing delegate", s) - return - } - extractVariable(delegate, callable, blockId, 0) - + val delegate = s.delegate as IrVariable? val propId = tw.getFreshIdLabel() - tw.writeKtProperties(propId, s.name.asString()) - tw.writeHasLocation(propId, locId) - tw.writeKtPropertyDelegates(propId, useVariable(delegate)) + if (delegate == null) { + // This is not expected to happen, as the plugin hooks into the pipeline before IR lowering. + logger.errorElement("Local delegated property is missing delegate", s) + } else { + extractVariable(delegate, callable, blockId, 0) + tw.writeKtProperties(propId, s.name.asString()) + tw.writeHasLocation(propId, locId) + tw.writeKtPropertyDelegates(propId, useVariable(delegate)) + } // Getter: extractStatement(s.getter, callable, blockId, 1) val getterLabel = getLocallyVisibleFunctionLabels(s.getter).function From 6d60595d73a3200cb110cd92b5d18f3868e7563d Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Thu, 8 Jan 2026 10:04:37 +0100 Subject: [PATCH 209/433] Kotlin: Add changenotes for Kotlin 2.3 support and removal of support for Kotlin 1.6 and 1.7 --- java/ql/lib/change-notes/2026-01-07-kotlin-2_3.md | 4 ++++ .../2026-01-07-kotlin-mimimum_suppoted_version.md | 4 ++++ 2 files changed, 8 insertions(+) create mode 100644 java/ql/lib/change-notes/2026-01-07-kotlin-2_3.md create mode 100644 java/ql/lib/change-notes/2026-01-07-kotlin-mimimum_suppoted_version.md diff --git a/java/ql/lib/change-notes/2026-01-07-kotlin-2_3.md b/java/ql/lib/change-notes/2026-01-07-kotlin-2_3.md new file mode 100644 index 000000000000..82253f0e5e8c --- /dev/null +++ b/java/ql/lib/change-notes/2026-01-07-kotlin-2_3.md @@ -0,0 +1,4 @@ +--- +category: feature +--- +* Kotlin versions up to 2.3.0\ *x* are now supported. diff --git a/java/ql/lib/change-notes/2026-01-07-kotlin-mimimum_suppoted_version.md b/java/ql/lib/change-notes/2026-01-07-kotlin-mimimum_suppoted_version.md new file mode 100644 index 000000000000..6877579f6c67 --- /dev/null +++ b/java/ql/lib/change-notes/2026-01-07-kotlin-mimimum_suppoted_version.md @@ -0,0 +1,4 @@ +--- +category: breaking +--- +* Support for Kotlin 1.6.x and 1.7.x series has been dropped From 9f5de6b4f265dc2efdfe7e6940e44ac20df8f796 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Wed, 7 Jan 2026 10:16:31 +0100 Subject: [PATCH 210/433] Kotlin: Bump versions in documentation --- docs/codeql/reusables/supported-versions-compilers.rst | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/codeql/reusables/supported-versions-compilers.rst b/docs/codeql/reusables/supported-versions-compilers.rst index c03713bdce25..fd937fe4ac02 100644 --- a/docs/codeql/reusables/supported-versions-compilers.rst +++ b/docs/codeql/reusables/supported-versions-compilers.rst @@ -21,7 +21,7 @@ Java,"Java 7 to 25 [6]_","javac (OpenJDK and Oracle JDK), Eclipse compiler for Java (ECJ) [7]_",``.java`` - Kotlin,"Kotlin 1.6.0 [15]_ to 2.2.2\ *x*","kotlinc",``.kt`` + Kotlin,"Kotlin 1.8.0 to 2.3.0\ *x*","kotlinc",``.kt`` JavaScript,ECMAScript 2022 or lower,Not applicable,"``.js``, ``.jsx``, ``.mjs``, ``.es``, ``.es6``, ``.htm``, ``.html``, ``.xhtm``, ``.xhtml``, ``.vue``, ``.hbs``, ``.ejs``, ``.njk``, ``.json``, ``.yaml``, ``.yml``, ``.raml``, ``.xml`` [8]_" Python [9]_,"2.7, 3.5, 3.6, 3.7, 3.8, 3.9, 3.10, 3.11, 3.12, 3.13",Not applicable,``.py`` Ruby [10]_,"up to 3.3",Not applicable,"``.rb``, ``.erb``, ``.gemspec``, ``Gemfile``" @@ -45,4 +45,3 @@ .. [12] Support for the analysis of Swift requires macOS. .. [13] Embedded Swift is not supported. .. [14] TypeScript analysis is performed by running the JavaScript extractor with TypeScript enabled. This is the default. - .. [15] Support for Kotlin versions 1.6 and 1.7 is deprecated and will be removed in release 2.24.1. From d69fe20d7d839284c220d3c13933d62cbfd3af75 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Wed, 7 Jan 2026 11:23:10 +0100 Subject: [PATCH 211/433] Kotlin: Bump upper bound for supported kotlin version in integration test --- .../diagnostics/kotlin-version-too-new/diagnostics.expected | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/ql/integration-tests/kotlin/all-platforms/diagnostics/kotlin-version-too-new/diagnostics.expected b/java/ql/integration-tests/kotlin/all-platforms/diagnostics/kotlin-version-too-new/diagnostics.expected index 50cbd2609f26..5ef0ef541962 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/diagnostics/kotlin-version-too-new/diagnostics.expected +++ b/java/ql/integration-tests/kotlin/all-platforms/diagnostics/kotlin-version-too-new/diagnostics.expected @@ -1,5 +1,5 @@ { - "markdownMessage": "The Kotlin version installed (`999.999.999`) is too recent for this version of CodeQL. Install a version lower than 2.2.30.", + "markdownMessage": "The Kotlin version installed (`999.999.999`) is too recent for this version of CodeQL. Install a version lower than 2.3.10.", "severity": "error", "source": { "extractorName": "java", From 939f3e83aa16d348acbe417aa05d023b8c83a912 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Thu, 8 Jan 2026 09:59:31 +0100 Subject: [PATCH 212/433] Kotlin: Update kotlin compiler version in integration tests --- .../kotlin/all-platforms/compiler_arguments/app/build.gradle | 2 +- .../kotlin/all-platforms/gradle_groovy_app/app/build.gradle | 2 +- .../kotlin/all-platforms/kotlin_kfunction/app/build.gradle | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/java/ql/integration-tests/kotlin/all-platforms/compiler_arguments/app/build.gradle b/java/ql/integration-tests/kotlin/all-platforms/compiler_arguments/app/build.gradle index c0bc33405247..8b91012467ec 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/compiler_arguments/app/build.gradle +++ b/java/ql/integration-tests/kotlin/all-platforms/compiler_arguments/app/build.gradle @@ -8,7 +8,7 @@ plugins { // Apply the org.jetbrains.kotlin.jvm Plugin to add support for Kotlin. - id 'org.jetbrains.kotlin.jvm' version '1.7.0' + id 'org.jetbrains.kotlin.jvm' version '1.8.0' // Apply the application plugin to add support for building a CLI application in Java. id 'application' diff --git a/java/ql/integration-tests/kotlin/all-platforms/gradle_groovy_app/app/build.gradle b/java/ql/integration-tests/kotlin/all-platforms/gradle_groovy_app/app/build.gradle index 8ef1009376c9..8b91012467ec 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/gradle_groovy_app/app/build.gradle +++ b/java/ql/integration-tests/kotlin/all-platforms/gradle_groovy_app/app/build.gradle @@ -8,7 +8,7 @@ plugins { // Apply the org.jetbrains.kotlin.jvm Plugin to add support for Kotlin. - id 'org.jetbrains.kotlin.jvm' version '1.6.0' + id 'org.jetbrains.kotlin.jvm' version '1.8.0' // Apply the application plugin to add support for building a CLI application in Java. id 'application' diff --git a/java/ql/integration-tests/kotlin/all-platforms/kotlin_kfunction/app/build.gradle b/java/ql/integration-tests/kotlin/all-platforms/kotlin_kfunction/app/build.gradle index 924524190cff..8b91012467ec 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/kotlin_kfunction/app/build.gradle +++ b/java/ql/integration-tests/kotlin/all-platforms/kotlin_kfunction/app/build.gradle @@ -8,7 +8,7 @@ plugins { // Apply the org.jetbrains.kotlin.jvm Plugin to add support for Kotlin. - id 'org.jetbrains.kotlin.jvm' version '1.6.20' + id 'org.jetbrains.kotlin.jvm' version '1.8.0' // Apply the application plugin to add support for building a CLI application in Java. id 'application' From 275724000b8357ff2de625df3104c565df99cb45 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Thu, 8 Jan 2026 10:02:45 +0100 Subject: [PATCH 213/433] Kotlin: Update kotlin serialization integration test to use Kotlin compiler 1.8.10 and accept test changes --- .../PrintAst.expected | 476 +----------------- .../app/build.gradle | 7 +- .../diag.expected | 2 - 3 files changed, 15 insertions(+), 470 deletions(-) diff --git a/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/PrintAst.expected b/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/PrintAst.expected index 752db3cd6471..3fe2e593cef8 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/PrintAst.expected +++ b/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/PrintAst.expected @@ -21,35 +21,6 @@ app/src/main/kotlin/testProject/App.kt: # 0| 0: [TypeAccess] int # 0| 3: [Parameter] serializationConstructorMarker # 0| 0: [TypeAccess] SerializationConstructorMarker -# 7| 5: [BlockStmt] { ... } -# 7| 0: [ExprStmt] ; -# 7| 0: [WhenExpr] when ... -# 7| 0: [WhenBranch] ... -> ... -# 7| 0: [ValueNEExpr] ... (value not-equals) ... -# 7| 0: [IntegerLiteral] 3 -# 7| 1: [AndBitwiseExpr] ... & ... -# 7| 0: [IntegerLiteral] 3 -# 7| 1: [VarAccess] seen1 -# 7| 1: [ExprStmt] ; -# 7| 0: [MethodCall] throwMissingFieldException(...) -# 7| -1: [TypeAccess] PluginExceptionsKt -# 7| 0: [VarAccess] seen1 -# 7| 1: [IntegerLiteral] 3 -# 7| 2: [MethodCall] getDescriptor(...) -# 7| -1: [VarAccess] INSTANCE -# 7| 1: [SuperConstructorInvocationStmt] super(...) -# 7| 2: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] Project.this.name -# 7| -1: [ThisAccess] Project.this -# 7| 0: [TypeAccess] Project -# 7| 1: [VarAccess] name -# 7| 3: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] Project.this.language -# 7| -1: [ThisAccess] Project.this -# 7| 0: [TypeAccess] Project -# 7| 1: [VarAccess] language # 0| 2: [Method] component1 #-----| 1: (Annotations) # 0| 1: [Annotation] NotNull @@ -224,21 +195,6 @@ app/src/main/kotlin/testProject/App.kt: #-----| -1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 0: [TypeAccess] SerialDescriptor -# 7| 5: [BlockStmt] { ... } -# 7| 0: [ExprStmt] ; -# 7| 0: [MethodCall] encodeStringElement(...) -# 7| -1: [VarAccess] output -# 7| 0: [VarAccess] serialDesc -# 7| 1: [IntegerLiteral] 0 -# 7| 2: [MethodCall] getName(...) -# 7| -1: [VarAccess] self -# 7| 1: [ExprStmt] ; -# 7| 0: [MethodCall] encodeIntElement(...) -# 7| -1: [VarAccess] output -# 7| 0: [VarAccess] serialDesc -# 7| 1: [IntegerLiteral] 1 -# 7| 2: [MethodCall] getLanguage(...) -# 7| -1: [VarAccess] self # 7| 10: [Class] $serializer #-----| -3: (Annotations) # 0| 1: [Annotation] Deprecated @@ -248,21 +204,13 @@ app/src/main/kotlin/testProject/App.kt: # 0| 2: [ArrayInit] {...} # 0| 3: [VarAccess] DeprecationLevel.HIDDEN # 0| -1: [TypeAccess] DeprecationLevel -# 0| 1: [FieldDeclaration] SerialDescriptor descriptor; -# 0| -1: [TypeAccess] SerialDescriptor -# 0| 2: [Method] childSerializers +# 0| 1: [Method] childSerializers #-----| 1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 3: [TypeAccess] KSerializer[] # 0| 0: [TypeAccess] KSerializer # 0| 0: [WildcardTypeAccess] ? ... -# 7| 5: [BlockStmt] { ... } -# 7| 0: [ReturnStmt] return ... -# 7| 0: [ArrayCreationExpr] new KSerializer[] -# 7| -2: [ArrayInit] {...} -# 7| -1: [TypeAccess] KSerializer -# 7| 0: [IntegerLiteral] 2 -# 0| 3: [Method] deserialize +# 0| 2: [Method] deserialize #-----| 1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 3: [TypeAccess] Project @@ -271,148 +219,11 @@ app/src/main/kotlin/testProject/App.kt: #-----| -1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 0: [TypeAccess] Decoder -# 7| 5: [BlockStmt] { ... } -# 7| 0: [LocalVariableDeclStmt] var ...; -# 7| 1: [LocalVariableDeclExpr] tmp0_desc -# 7| 0: [MethodCall] getDescriptor(...) -# 7| -1: [ThisAccess] this -# 7| 1: [LocalVariableDeclStmt] var ...; -# 7| 1: [LocalVariableDeclExpr] tmp1_flag -# 7| 0: [BooleanLiteral] true -# 7| 2: [LocalVariableDeclStmt] var ...; -# 7| 1: [LocalVariableDeclExpr] tmp2_index -# 7| 0: [IntegerLiteral] 0 -# 7| 3: [LocalVariableDeclStmt] var ...; -# 7| 1: [LocalVariableDeclExpr] tmp3_bitMask0 -# 7| 0: [IntegerLiteral] 0 -# 7| 4: [LocalVariableDeclStmt] var ...; -# 7| 1: [LocalVariableDeclExpr] tmp4_local0 -# 7| 0: [NullLiteral] null -# 7| 5: [LocalVariableDeclStmt] var ...; -# 7| 1: [LocalVariableDeclExpr] tmp5_local1 -# 7| 0: [IntegerLiteral] 0 -# 7| 6: [LocalVariableDeclStmt] var ...; -# 7| 1: [LocalVariableDeclExpr] tmp6_input -# 7| 0: [MethodCall] beginStructure(...) -# 7| -1: [VarAccess] decoder -# 7| 0: [VarAccess] tmp0_desc -# 7| 7: [ExprStmt] ; -# 7| 0: [WhenExpr] when ... -# 7| 0: [WhenBranch] ... -> ... -# 7| 0: [MethodCall] decodeSequentially(...) -# 7| -1: [VarAccess] tmp6_input -# 7| 1: [BlockStmt] { ... } -# 7| 0: [BlockStmt] { ... } -# 7| 0: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] tmp4_local0 -# 7| 1: [MethodCall] decodeStringElement(...) -# 7| -1: [VarAccess] tmp6_input -# 7| 0: [VarAccess] tmp0_desc -# 7| 1: [IntegerLiteral] 0 -# 7| 1: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] tmp3_bitMask0 -# 7| 1: [OrBitwiseExpr] ... | ... -# 7| 0: [VarAccess] tmp3_bitMask0 -# 7| 1: [IntegerLiteral] 1 -# 7| 1: [BlockStmt] { ... } -# 7| 0: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] tmp5_local1 -# 7| 1: [MethodCall] decodeIntElement(...) -# 7| -1: [VarAccess] tmp6_input -# 7| 0: [VarAccess] tmp0_desc -# 7| 1: [IntegerLiteral] 1 -# 7| 1: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] tmp3_bitMask0 -# 7| 1: [OrBitwiseExpr] ... | ... -# 7| 0: [VarAccess] tmp3_bitMask0 -# 7| 1: [IntegerLiteral] 2 -# 7| 1: [WhenBranch] ... -> ... -# 7| 0: [BooleanLiteral] true -# 7| 1: [WhileStmt] while (...) -# 7| 0: [VarAccess] tmp1_flag -# 7| 1: [BlockStmt] { ... } -# 7| 0: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] tmp2_index -# 7| 1: [MethodCall] decodeElementIndex(...) -# 7| -1: [VarAccess] tmp6_input -# 7| 0: [VarAccess] tmp0_desc -# 7| 1: [ExprStmt] ; -# 7| 0: [WhenExpr] when ... -# 7| 0: [WhenBranch] ... -> ... -# 7| 0: [ValueEQExpr] ... (value equals) ... -# 7| 0: [VarAccess] tmp2_index -# 7| 1: [IntegerLiteral] -1 -# 7| 1: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] tmp1_flag -# 7| 1: [BooleanLiteral] false -# 7| 1: [WhenBranch] ... -> ... -# 7| 0: [ValueEQExpr] ... (value equals) ... -# 7| 0: [VarAccess] tmp2_index -# 7| 1: [IntegerLiteral] 0 -# 7| 1: [BlockStmt] { ... } -# 7| 0: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] tmp4_local0 -# 7| 1: [MethodCall] decodeStringElement(...) -# 7| -1: [VarAccess] tmp6_input -# 7| 0: [VarAccess] tmp0_desc -# 7| 1: [IntegerLiteral] 0 -# 7| 1: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] tmp3_bitMask0 -# 7| 1: [OrBitwiseExpr] ... | ... -# 7| 0: [VarAccess] tmp3_bitMask0 -# 7| 1: [IntegerLiteral] 1 -# 7| 2: [WhenBranch] ... -> ... -# 7| 0: [ValueEQExpr] ... (value equals) ... -# 7| 0: [VarAccess] tmp2_index -# 7| 1: [IntegerLiteral] 1 -# 7| 1: [BlockStmt] { ... } -# 7| 0: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] tmp5_local1 -# 7| 1: [MethodCall] decodeIntElement(...) -# 7| -1: [VarAccess] tmp6_input -# 7| 0: [VarAccess] tmp0_desc -# 7| 1: [IntegerLiteral] 1 -# 7| 1: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] tmp3_bitMask0 -# 7| 1: [OrBitwiseExpr] ... | ... -# 7| 0: [VarAccess] tmp3_bitMask0 -# 7| 1: [IntegerLiteral] 2 -# 7| 3: [WhenBranch] ... -> ... -# 7| 0: [BooleanLiteral] true -# 7| 1: [ThrowStmt] throw ... -# 7| 0: [ClassInstanceExpr] new UnknownFieldException(...) -# 7| -3: [TypeAccess] UnknownFieldException -# 7| 0: [VarAccess] tmp2_index -# 7| 8: [ExprStmt] ; -# 7| 0: [MethodCall] endStructure(...) -# 7| -1: [VarAccess] tmp6_input -# 7| 0: [VarAccess] tmp0_desc -# 7| 9: [ReturnStmt] return ... -# 7| 0: [ClassInstanceExpr] new Project(...) -# 7| -3: [TypeAccess] Project -# 7| 0: [VarAccess] tmp3_bitMask0 -# 7| 1: [VarAccess] tmp4_local0 -# 7| 2: [VarAccess] tmp5_local1 -# 7| 3: [NullLiteral] null -# 0| 4: [Method] getDescriptor +# 0| 3: [Method] getDescriptor #-----| 1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 3: [TypeAccess] SerialDescriptor -# 0| 5: [BlockStmt] { ... } -# 0| 0: [ReturnStmt] return ... -# 0| 0: [VarAccess] this.descriptor -# 0| -1: [ThisAccess] this -# 0| 5: [Method] serialize +# 0| 4: [Method] serialize # 0| 3: [TypeAccess] Unit #-----| 4: (Parameters) # 0| 0: [Parameter] encoder @@ -423,55 +234,11 @@ app/src/main/kotlin/testProject/App.kt: #-----| -1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 0: [TypeAccess] Project -# 7| 5: [BlockStmt] { ... } -# 7| 0: [LocalVariableDeclStmt] var ...; -# 7| 1: [LocalVariableDeclExpr] tmp0_desc -# 7| 0: [MethodCall] getDescriptor(...) -# 7| -1: [ThisAccess] this -# 7| 1: [LocalVariableDeclStmt] var ...; -# 7| 1: [LocalVariableDeclExpr] tmp1_output -# 7| 0: [MethodCall] beginStructure(...) -# 7| -1: [VarAccess] encoder -# 7| 0: [VarAccess] tmp0_desc -# 7| 2: [ExprStmt] ; -# 7| 0: [MethodCall] write$Self(...) -# 7| -1: [TypeAccess] Project -# 7| 0: [VarAccess] value -# 7| 1: [VarAccess] tmp1_output -# 7| 2: [VarAccess] tmp0_desc -# 7| 3: [ExprStmt] ; -# 7| 0: [MethodCall] endStructure(...) -# 7| -1: [VarAccess] tmp1_output -# 7| 0: [VarAccess] tmp0_desc -# 7| 6: [Constructor] $serializer +# 7| 5: [Constructor] $serializer # 7| 5: [BlockStmt] { ... } # 7| 0: [SuperConstructorInvocationStmt] super(...) # 7| 1: [BlockStmt] { ... } -# 7| 0: [LocalVariableDeclStmt] var ...; -# 7| 1: [LocalVariableDeclExpr] tmp0_serialDesc -# 7| 0: [ClassInstanceExpr] new PluginGeneratedSerialDescriptor(...) -# 7| -3: [TypeAccess] PluginGeneratedSerialDescriptor -# 7| 0: [StringLiteral] "testProject.Project" -# 7| 1: [ThisAccess] $serializer.this -# 7| 0: [TypeAccess] $serializer -# 7| 2: [IntegerLiteral] 2 -# 7| 1: [ExprStmt] ; -# 7| 0: [MethodCall] addElement(...) -# 7| -1: [VarAccess] tmp0_serialDesc -# 7| 0: [StringLiteral] "name" -# 7| 1: [BooleanLiteral] false -# 7| 2: [ExprStmt] ; -# 7| 0: [MethodCall] addElement(...) -# 7| -1: [VarAccess] tmp0_serialDesc -# 7| 0: [StringLiteral] "language" -# 7| 1: [BooleanLiteral] false -# 7| 3: [ExprStmt] ; -# 7| 0: [AssignExpr] ...=... -# 7| 0: [VarAccess] $serializer.this.descriptor -# 7| -1: [ThisAccess] $serializer.this -# 7| 0: [TypeAccess] $serializer -# 7| 1: [VarAccess] tmp0_serialDesc -# 7| 7: [Method] typeParametersSerializers +# 7| 6: [Method] typeParametersSerializers # 7| 3: [TypeAccess] KSerializer[] # 7| 0: [TypeAccess] KSerializer # 7| 0: [WildcardTypeAccess] ? ... @@ -486,9 +253,6 @@ app/src/main/kotlin/testProject/App.kt: # 0| 1: [Annotation] NotNull # 0| 3: [TypeAccess] KSerializer # 0| 0: [TypeAccess] Project -# 7| 5: [BlockStmt] { ... } -# 7| 0: [ReturnStmt] return ... -# 7| 0: [VarAccess] INSTANCE # 7| 2: [Constructor] Companion # 7| 5: [BlockStmt] { ... } # 7| 0: [SuperConstructorInvocationStmt] super(...) @@ -554,45 +318,6 @@ app/src/main/kotlin/testProject/App.kt: # 0| 0: [TypeAccess] String # 0| 2: [Parameter] serializationConstructorMarker # 0| 0: [TypeAccess] SerializationConstructorMarker -# 14| 5: [BlockStmt] { ... } -# 14| 0: [ExprStmt] ; -# 14| 0: [WhenExpr] when ... -# 14| 0: [WhenBranch] ... -> ... -# 14| 0: [ValueNEExpr] ... (value not-equals) ... -# 14| 0: [IntegerLiteral] 0 -# 14| 1: [AndBitwiseExpr] ... & ... -# 14| 0: [IntegerLiteral] 0 -# 14| 1: [VarAccess] seen1 -# 14| 1: [ExprStmt] ; -# 14| 0: [MethodCall] throwMissingFieldException(...) -# 14| -1: [TypeAccess] PluginExceptionsKt -# 14| 0: [VarAccess] seen1 -# 14| 1: [IntegerLiteral] 0 -# 14| 2: [MethodCall] getDescriptor(...) -# 14| -1: [VarAccess] INSTANCE -# 14| 1: [SuperConstructorInvocationStmt] super(...) -# 14| 2: [ExprStmt] ; -# 14| 0: [WhenExpr] when ... -# 14| 0: [WhenBranch] ... -> ... -# 14| 0: [ValueEQExpr] ... (value equals) ... -# 14| 0: [IntegerLiteral] 0 -# 14| 1: [AndBitwiseExpr] ... & ... -# 14| 0: [VarAccess] seen1 -# 14| 1: [IntegerLiteral] 1 -# 14| 1: [ExprStmt] ; -# 14| 0: [AssignExpr] ...=... -# 14| 0: [VarAccess] X.this.id -# 14| -1: [ThisAccess] X.this -# 14| 0: [TypeAccess] X -# 16| 1: [StringLiteral] "X" -# 14| 1: [WhenBranch] ... -> ... -# 14| 0: [BooleanLiteral] true -# 14| 1: [ExprStmt] ; -# 14| 0: [AssignExpr] ...=... -# 14| 0: [VarAccess] X.this.id -# 14| -1: [ThisAccess] X.this -# 14| 0: [TypeAccess] X -# 14| 1: [VarAccess] id # 0| 2: [Method] write$Self #-----| 1: (Annotations) # 0| 1: [Annotation] JvmStatic @@ -610,32 +335,6 @@ app/src/main/kotlin/testProject/App.kt: #-----| -1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 0: [TypeAccess] SerialDescriptor -# 14| 5: [BlockStmt] { ... } -# 14| 0: [ExprStmt] ; -# 14| 0: [WhenExpr] when ... -# 14| 0: [WhenBranch] ... -> ... -# 14| 0: [WhenExpr] when ... -# 14| 0: [WhenBranch] ... -> ... -# 14| 0: [MethodCall] shouldEncodeElementDefault(...) -# 14| -1: [VarAccess] output -# 14| 0: [VarAccess] serialDesc -# 14| 1: [IntegerLiteral] 0 -# 14| 1: [ExprStmt] ; -# 14| 0: [BooleanLiteral] true -# 14| 1: [WhenBranch] ... -> ... -# 14| 0: [BooleanLiteral] true -# 14| 1: [ExprStmt] ; -# 14| 0: [ValueNEExpr] ... (value not-equals) ... -# 14| 0: [MethodCall] getId(...) -# 14| -1: [VarAccess] self -# 16| 1: [StringLiteral] "X" -# 14| 1: [ExprStmt] ; -# 14| 0: [MethodCall] encodeStringElement(...) -# 14| -1: [VarAccess] output -# 14| 0: [VarAccess] serialDesc -# 14| 1: [IntegerLiteral] 0 -# 14| 2: [MethodCall] getId(...) -# 14| -1: [VarAccess] self # 14| 3: [Class] $serializer #-----| -3: (Annotations) # 0| 1: [Annotation] Deprecated @@ -645,21 +344,13 @@ app/src/main/kotlin/testProject/App.kt: # 0| 2: [ArrayInit] {...} # 0| 3: [VarAccess] DeprecationLevel.HIDDEN # 0| -1: [TypeAccess] DeprecationLevel -# 0| 1: [FieldDeclaration] SerialDescriptor descriptor; -# 0| -1: [TypeAccess] SerialDescriptor -# 0| 2: [Method] childSerializers +# 0| 1: [Method] childSerializers #-----| 1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 3: [TypeAccess] KSerializer[] # 0| 0: [TypeAccess] KSerializer # 0| 0: [WildcardTypeAccess] ? ... -# 14| 5: [BlockStmt] { ... } -# 14| 0: [ReturnStmt] return ... -# 14| 0: [ArrayCreationExpr] new KSerializer[] -# 14| -2: [ArrayInit] {...} -# 14| -1: [TypeAccess] KSerializer -# 14| 0: [IntegerLiteral] 1 -# 0| 3: [Method] deserialize +# 0| 2: [Method] deserialize #-----| 1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 3: [TypeAccess] X @@ -668,112 +359,11 @@ app/src/main/kotlin/testProject/App.kt: #-----| -1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 0: [TypeAccess] Decoder -# 14| 5: [BlockStmt] { ... } -# 14| 0: [LocalVariableDeclStmt] var ...; -# 14| 1: [LocalVariableDeclExpr] tmp0_desc -# 14| 0: [MethodCall] getDescriptor(...) -# 14| -1: [ThisAccess] this -# 14| 1: [LocalVariableDeclStmt] var ...; -# 14| 1: [LocalVariableDeclExpr] tmp1_flag -# 14| 0: [BooleanLiteral] true -# 14| 2: [LocalVariableDeclStmt] var ...; -# 14| 1: [LocalVariableDeclExpr] tmp2_index -# 14| 0: [IntegerLiteral] 0 -# 14| 3: [LocalVariableDeclStmt] var ...; -# 14| 1: [LocalVariableDeclExpr] tmp3_bitMask0 -# 14| 0: [IntegerLiteral] 0 -# 14| 4: [LocalVariableDeclStmt] var ...; -# 14| 1: [LocalVariableDeclExpr] tmp4_local0 -# 14| 0: [NullLiteral] null -# 14| 5: [LocalVariableDeclStmt] var ...; -# 14| 1: [LocalVariableDeclExpr] tmp5_input -# 14| 0: [MethodCall] beginStructure(...) -# 14| -1: [VarAccess] decoder -# 14| 0: [VarAccess] tmp0_desc -# 14| 6: [ExprStmt] ; -# 14| 0: [WhenExpr] when ... -# 14| 0: [WhenBranch] ... -> ... -# 14| 0: [MethodCall] decodeSequentially(...) -# 14| -1: [VarAccess] tmp5_input -# 14| 1: [BlockStmt] { ... } -# 14| 0: [BlockStmt] { ... } -# 14| 0: [ExprStmt] ; -# 14| 0: [AssignExpr] ...=... -# 14| 0: [VarAccess] tmp4_local0 -# 14| 1: [MethodCall] decodeStringElement(...) -# 14| -1: [VarAccess] tmp5_input -# 14| 0: [VarAccess] tmp0_desc -# 14| 1: [IntegerLiteral] 0 -# 14| 1: [ExprStmt] ; -# 14| 0: [AssignExpr] ...=... -# 14| 0: [VarAccess] tmp3_bitMask0 -# 14| 1: [OrBitwiseExpr] ... | ... -# 14| 0: [VarAccess] tmp3_bitMask0 -# 14| 1: [IntegerLiteral] 1 -# 14| 1: [WhenBranch] ... -> ... -# 14| 0: [BooleanLiteral] true -# 14| 1: [WhileStmt] while (...) -# 14| 0: [VarAccess] tmp1_flag -# 14| 1: [BlockStmt] { ... } -# 14| 0: [ExprStmt] ; -# 14| 0: [AssignExpr] ...=... -# 14| 0: [VarAccess] tmp2_index -# 14| 1: [MethodCall] decodeElementIndex(...) -# 14| -1: [VarAccess] tmp5_input -# 14| 0: [VarAccess] tmp0_desc -# 14| 1: [ExprStmt] ; -# 14| 0: [WhenExpr] when ... -# 14| 0: [WhenBranch] ... -> ... -# 14| 0: [ValueEQExpr] ... (value equals) ... -# 14| 0: [VarAccess] tmp2_index -# 14| 1: [IntegerLiteral] -1 -# 14| 1: [ExprStmt] ; -# 14| 0: [AssignExpr] ...=... -# 14| 0: [VarAccess] tmp1_flag -# 14| 1: [BooleanLiteral] false -# 14| 1: [WhenBranch] ... -> ... -# 14| 0: [ValueEQExpr] ... (value equals) ... -# 14| 0: [VarAccess] tmp2_index -# 14| 1: [IntegerLiteral] 0 -# 14| 1: [BlockStmt] { ... } -# 14| 0: [ExprStmt] ; -# 14| 0: [AssignExpr] ...=... -# 14| 0: [VarAccess] tmp4_local0 -# 14| 1: [MethodCall] decodeStringElement(...) -# 14| -1: [VarAccess] tmp5_input -# 14| 0: [VarAccess] tmp0_desc -# 14| 1: [IntegerLiteral] 0 -# 14| 1: [ExprStmt] ; -# 14| 0: [AssignExpr] ...=... -# 14| 0: [VarAccess] tmp3_bitMask0 -# 14| 1: [OrBitwiseExpr] ... | ... -# 14| 0: [VarAccess] tmp3_bitMask0 -# 14| 1: [IntegerLiteral] 1 -# 14| 2: [WhenBranch] ... -> ... -# 14| 0: [BooleanLiteral] true -# 14| 1: [ThrowStmt] throw ... -# 14| 0: [ClassInstanceExpr] new UnknownFieldException(...) -# 14| -3: [TypeAccess] UnknownFieldException -# 14| 0: [VarAccess] tmp2_index -# 14| 7: [ExprStmt] ; -# 14| 0: [MethodCall] endStructure(...) -# 14| -1: [VarAccess] tmp5_input -# 14| 0: [VarAccess] tmp0_desc -# 14| 8: [ReturnStmt] return ... -# 14| 0: [ClassInstanceExpr] new X(...) -# 14| -3: [TypeAccess] X -# 14| 0: [VarAccess] tmp3_bitMask0 -# 14| 1: [VarAccess] tmp4_local0 -# 14| 2: [NullLiteral] null -# 0| 4: [Method] getDescriptor +# 0| 3: [Method] getDescriptor #-----| 1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 3: [TypeAccess] SerialDescriptor -# 0| 5: [BlockStmt] { ... } -# 0| 0: [ReturnStmt] return ... -# 0| 0: [VarAccess] this.descriptor -# 0| -1: [ThisAccess] this -# 0| 5: [Method] serialize +# 0| 4: [Method] serialize # 0| 3: [TypeAccess] Unit #-----| 4: (Parameters) # 0| 0: [Parameter] encoder @@ -784,50 +374,11 @@ app/src/main/kotlin/testProject/App.kt: #-----| -1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 0: [TypeAccess] X -# 14| 5: [BlockStmt] { ... } -# 14| 0: [LocalVariableDeclStmt] var ...; -# 14| 1: [LocalVariableDeclExpr] tmp0_desc -# 14| 0: [MethodCall] getDescriptor(...) -# 14| -1: [ThisAccess] this -# 14| 1: [LocalVariableDeclStmt] var ...; -# 14| 1: [LocalVariableDeclExpr] tmp1_output -# 14| 0: [MethodCall] beginStructure(...) -# 14| -1: [VarAccess] encoder -# 14| 0: [VarAccess] tmp0_desc -# 14| 2: [ExprStmt] ; -# 14| 0: [MethodCall] write$Self(...) -# 14| -1: [TypeAccess] X -# 14| 0: [VarAccess] value -# 14| 1: [VarAccess] tmp1_output -# 14| 2: [VarAccess] tmp0_desc -# 14| 3: [ExprStmt] ; -# 14| 0: [MethodCall] endStructure(...) -# 14| -1: [VarAccess] tmp1_output -# 14| 0: [VarAccess] tmp0_desc -# 14| 6: [Constructor] $serializer +# 14| 5: [Constructor] $serializer # 14| 5: [BlockStmt] { ... } # 14| 0: [SuperConstructorInvocationStmt] super(...) # 14| 1: [BlockStmt] { ... } -# 14| 0: [LocalVariableDeclStmt] var ...; -# 14| 1: [LocalVariableDeclExpr] tmp0_serialDesc -# 14| 0: [ClassInstanceExpr] new PluginGeneratedSerialDescriptor(...) -# 14| -3: [TypeAccess] PluginGeneratedSerialDescriptor -# 14| 0: [StringLiteral] "testProject.X" -# 14| 1: [ThisAccess] $serializer.this -# 14| 0: [TypeAccess] $serializer -# 14| 2: [IntegerLiteral] 1 -# 14| 1: [ExprStmt] ; -# 14| 0: [MethodCall] addElement(...) -# 14| -1: [VarAccess] tmp0_serialDesc -# 14| 0: [StringLiteral] "id" -# 14| 1: [BooleanLiteral] true -# 14| 2: [ExprStmt] ; -# 14| 0: [AssignExpr] ...=... -# 14| 0: [VarAccess] $serializer.this.descriptor -# 14| -1: [ThisAccess] $serializer.this -# 14| 0: [TypeAccess] $serializer -# 14| 1: [VarAccess] tmp0_serialDesc -# 14| 7: [Method] typeParametersSerializers +# 14| 6: [Method] typeParametersSerializers # 14| 3: [TypeAccess] KSerializer[] # 14| 0: [TypeAccess] KSerializer # 14| 0: [WildcardTypeAccess] ? ... @@ -842,9 +393,6 @@ app/src/main/kotlin/testProject/App.kt: # 0| 1: [Annotation] NotNull # 0| 3: [TypeAccess] KSerializer # 0| 0: [TypeAccess] X -# 14| 5: [BlockStmt] { ... } -# 14| 0: [ReturnStmt] return ... -# 14| 0: [VarAccess] INSTANCE # 14| 2: [Constructor] Companion # 14| 5: [BlockStmt] { ... } # 14| 0: [SuperConstructorInvocationStmt] super(...) diff --git a/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/app/build.gradle b/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/app/build.gradle index 528b73cabc5a..2b13663941d1 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/app/build.gradle +++ b/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/app/build.gradle @@ -1,6 +1,6 @@ plugins { - id 'org.jetbrains.kotlin.jvm' version '1.6.10' - id 'org.jetbrains.kotlin.plugin.serialization' version '1.6.10' + id 'org.jetbrains.kotlin.jvm' version '1.8.10' + id 'org.jetbrains.kotlin.plugin.serialization' version '1.8.10' } repositories { @@ -8,6 +8,5 @@ repositories { } dependencies { - implementation "org.jetbrains.kotlin:kotlin-serialization:1.6.10" - implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.3.2" + implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.0" } diff --git a/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/diag.expected b/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/diag.expected index 96a297f9cb28..e69de29bb2d1 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/diag.expected +++ b/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/diag.expected @@ -1,2 +0,0 @@ -| CodeQL Kotlin extractor | 5 | | Unbound symbol found, skipping extraction of expression | app/src/main/kotlin/testProject/App.kt:7:1:8:55 | app/src/main/kotlin/testProject/App.kt:7:1:8:55 | -| CodeQL Kotlin extractor | 5 | | Unbound symbol found, skipping extraction of expression | app/src/main/kotlin/testProject/App.kt:14:1:17:1 | app/src/main/kotlin/testProject/App.kt:14:1:17:1 | From f6f5b7e1e9608d4c74241099fdd18f1b17f04b2c Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Wed, 28 Jan 2026 10:01:57 +0100 Subject: [PATCH 214/433] Kotlin: Accept test changes after rebasing to include changes from https://github.com/github/codeql/pull/21216 --- .../PrintAst.expected | 459 +++++++++++++++++- 1 file changed, 457 insertions(+), 2 deletions(-) diff --git a/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/PrintAst.expected b/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/PrintAst.expected index 3fe2e593cef8..f76dc45cf3b1 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/PrintAst.expected +++ b/java/ql/integration-tests/kotlin/all-platforms/gradle_kotlinx_serialization/PrintAst.expected @@ -21,6 +21,35 @@ app/src/main/kotlin/testProject/App.kt: # 0| 0: [TypeAccess] int # 0| 3: [Parameter] serializationConstructorMarker # 0| 0: [TypeAccess] SerializationConstructorMarker +# 7| 5: [BlockStmt] { ... } +# 7| 0: [ExprStmt] ; +# 7| 0: [WhenExpr] when ... +# 7| 0: [WhenBranch] ... -> ... +# 7| 0: [ValueNEExpr] ... (value not-equals) ... +# 7| 0: [IntegerLiteral] 3 +# 7| 1: [AndBitwiseExpr] ... & ... +# 7| 0: [IntegerLiteral] 3 +# 7| 1: [VarAccess] seen1 +# 7| 1: [ExprStmt] ; +# 7| 0: [MethodCall] throwMissingFieldException(...) +# 7| -1: [TypeAccess] PluginExceptionsKt +# 7| 0: [VarAccess] seen1 +# 7| 1: [IntegerLiteral] 3 +# 7| 2: [MethodCall] getDescriptor(...) +# 7| -1: [VarAccess] INSTANCE +# 7| 1: [SuperConstructorInvocationStmt] super(...) +# 7| 2: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] Project.this.name +# 7| -1: [ThisAccess] Project.this +# 7| 0: [TypeAccess] Project +# 7| 1: [VarAccess] name +# 7| 3: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] Project.this.language +# 7| -1: [ThisAccess] Project.this +# 7| 0: [TypeAccess] Project +# 7| 1: [VarAccess] language # 0| 2: [Method] component1 #-----| 1: (Annotations) # 0| 1: [Annotation] NotNull @@ -195,6 +224,21 @@ app/src/main/kotlin/testProject/App.kt: #-----| -1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 0: [TypeAccess] SerialDescriptor +# 7| 5: [BlockStmt] { ... } +# 7| 0: [ExprStmt] ; +# 7| 0: [MethodCall] encodeStringElement(...) +# 7| -1: [VarAccess] output +# 7| 0: [VarAccess] serialDesc +# 7| 1: [IntegerLiteral] 0 +# 7| 2: [MethodCall] getName(...) +# 7| -1: [VarAccess] self +# 7| 1: [ExprStmt] ; +# 7| 0: [MethodCall] encodeIntElement(...) +# 7| -1: [VarAccess] output +# 7| 0: [VarAccess] serialDesc +# 7| 1: [IntegerLiteral] 1 +# 7| 2: [MethodCall] getLanguage(...) +# 7| -1: [VarAccess] self # 7| 10: [Class] $serializer #-----| -3: (Annotations) # 0| 1: [Annotation] Deprecated @@ -210,6 +254,14 @@ app/src/main/kotlin/testProject/App.kt: # 0| 3: [TypeAccess] KSerializer[] # 0| 0: [TypeAccess] KSerializer # 0| 0: [WildcardTypeAccess] ? ... +# 7| 5: [BlockStmt] { ... } +# 7| 0: [ReturnStmt] return ... +# 7| 0: [ArrayCreationExpr] new KSerializer[] +# 7| -2: [ArrayInit] {...} +# 7| 0: [VarAccess] INSTANCE +# 7| 1: [VarAccess] INSTANCE +# 7| -1: [TypeAccess] KSerializer +# 7| 0: [IntegerLiteral] 2 # 0| 2: [Method] deserialize #-----| 1: (Annotations) # 0| 1: [Annotation] NotNull @@ -219,10 +271,147 @@ app/src/main/kotlin/testProject/App.kt: #-----| -1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 0: [TypeAccess] Decoder +# 7| 5: [BlockStmt] { ... } +# 7| 0: [LocalVariableDeclStmt] var ...; +# 7| 1: [LocalVariableDeclExpr] tmp0_desc +# 7| 0: [MethodCall] getDescriptor(...) +# 7| -1: [ThisAccess] this +# 7| 1: [LocalVariableDeclStmt] var ...; +# 7| 1: [LocalVariableDeclExpr] tmp1_flag +# 7| 0: [BooleanLiteral] true +# 7| 2: [LocalVariableDeclStmt] var ...; +# 7| 1: [LocalVariableDeclExpr] tmp2_index +# 7| 0: [IntegerLiteral] 0 +# 7| 3: [LocalVariableDeclStmt] var ...; +# 7| 1: [LocalVariableDeclExpr] tmp3_bitMask0 +# 7| 0: [IntegerLiteral] 0 +# 7| 4: [LocalVariableDeclStmt] var ...; +# 7| 1: [LocalVariableDeclExpr] tmp4_local0 +# 7| 0: [NullLiteral] null +# 7| 5: [LocalVariableDeclStmt] var ...; +# 7| 1: [LocalVariableDeclExpr] tmp5_local1 +# 7| 0: [IntegerLiteral] 0 +# 7| 6: [LocalVariableDeclStmt] var ...; +# 7| 1: [LocalVariableDeclExpr] tmp6_input +# 7| 0: [MethodCall] beginStructure(...) +# 7| -1: [VarAccess] decoder +# 7| 0: [VarAccess] tmp0_desc +# 7| 7: [ExprStmt] ; +# 7| 0: [WhenExpr] when ... +# 7| 0: [WhenBranch] ... -> ... +# 7| 0: [MethodCall] decodeSequentially(...) +# 7| -1: [VarAccess] tmp6_input +# 7| 1: [BlockStmt] { ... } +# 7| 0: [BlockStmt] { ... } +# 7| 0: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] tmp4_local0 +# 7| 1: [MethodCall] decodeStringElement(...) +# 7| -1: [VarAccess] tmp6_input +# 7| 0: [VarAccess] tmp0_desc +# 7| 1: [IntegerLiteral] 0 +# 7| 1: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] tmp3_bitMask0 +# 7| 1: [OrBitwiseExpr] ... | ... +# 7| 0: [VarAccess] tmp3_bitMask0 +# 7| 1: [IntegerLiteral] 1 +# 7| 1: [BlockStmt] { ... } +# 7| 0: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] tmp5_local1 +# 7| 1: [MethodCall] decodeIntElement(...) +# 7| -1: [VarAccess] tmp6_input +# 7| 0: [VarAccess] tmp0_desc +# 7| 1: [IntegerLiteral] 1 +# 7| 1: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] tmp3_bitMask0 +# 7| 1: [OrBitwiseExpr] ... | ... +# 7| 0: [VarAccess] tmp3_bitMask0 +# 7| 1: [IntegerLiteral] 2 +# 7| 1: [WhenBranch] ... -> ... +# 7| 0: [BooleanLiteral] true +# 7| 1: [WhileStmt] while (...) +# 7| 0: [VarAccess] tmp1_flag +# 7| 1: [BlockStmt] { ... } +# 7| 0: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] tmp2_index +# 7| 1: [MethodCall] decodeElementIndex(...) +# 7| -1: [VarAccess] tmp6_input +# 7| 0: [VarAccess] tmp0_desc +# 7| 1: [ExprStmt] ; +# 7| 0: [WhenExpr] when ... +# 7| 0: [WhenBranch] ... -> ... +# 7| 0: [ValueEQExpr] ... (value equals) ... +# 7| 0: [VarAccess] tmp2_index +# 7| 1: [IntegerLiteral] -1 +# 7| 1: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] tmp1_flag +# 7| 1: [BooleanLiteral] false +# 7| 1: [WhenBranch] ... -> ... +# 7| 0: [ValueEQExpr] ... (value equals) ... +# 7| 0: [VarAccess] tmp2_index +# 7| 1: [IntegerLiteral] 0 +# 7| 1: [BlockStmt] { ... } +# 7| 0: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] tmp4_local0 +# 7| 1: [MethodCall] decodeStringElement(...) +# 7| -1: [VarAccess] tmp6_input +# 7| 0: [VarAccess] tmp0_desc +# 7| 1: [IntegerLiteral] 0 +# 7| 1: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] tmp3_bitMask0 +# 7| 1: [OrBitwiseExpr] ... | ... +# 7| 0: [VarAccess] tmp3_bitMask0 +# 7| 1: [IntegerLiteral] 1 +# 7| 2: [WhenBranch] ... -> ... +# 7| 0: [ValueEQExpr] ... (value equals) ... +# 7| 0: [VarAccess] tmp2_index +# 7| 1: [IntegerLiteral] 1 +# 7| 1: [BlockStmt] { ... } +# 7| 0: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] tmp5_local1 +# 7| 1: [MethodCall] decodeIntElement(...) +# 7| -1: [VarAccess] tmp6_input +# 7| 0: [VarAccess] tmp0_desc +# 7| 1: [IntegerLiteral] 1 +# 7| 1: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] tmp3_bitMask0 +# 7| 1: [OrBitwiseExpr] ... | ... +# 7| 0: [VarAccess] tmp3_bitMask0 +# 7| 1: [IntegerLiteral] 2 +# 7| 3: [WhenBranch] ... -> ... +# 7| 0: [BooleanLiteral] true +# 7| 1: [ThrowStmt] throw ... +# 7| 0: [ClassInstanceExpr] new UnknownFieldException(...) +# 7| -3: [TypeAccess] UnknownFieldException +# 7| 0: [VarAccess] tmp2_index +# 7| 8: [ExprStmt] ; +# 7| 0: [MethodCall] endStructure(...) +# 7| -1: [VarAccess] tmp6_input +# 7| 0: [VarAccess] tmp0_desc +# 7| 9: [ReturnStmt] return ... +# 7| 0: [ClassInstanceExpr] new Project(...) +# 7| -3: [TypeAccess] Project +# 7| 0: [VarAccess] tmp3_bitMask0 +# 7| 1: [VarAccess] tmp4_local0 +# 7| 2: [VarAccess] tmp5_local1 +# 7| 3: [NullLiteral] null # 0| 3: [Method] getDescriptor #-----| 1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 3: [TypeAccess] SerialDescriptor +# 7| 5: [BlockStmt] { ... } +# 7| 0: [ReturnStmt] return ... +# 7| 0: [VarAccess] this.descriptor +# 7| -1: [ThisAccess] this # 0| 4: [Method] serialize # 0| 3: [TypeAccess] Unit #-----| 4: (Parameters) @@ -234,11 +423,57 @@ app/src/main/kotlin/testProject/App.kt: #-----| -1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 0: [TypeAccess] Project +# 7| 5: [BlockStmt] { ... } +# 7| 0: [LocalVariableDeclStmt] var ...; +# 7| 1: [LocalVariableDeclExpr] tmp0_desc +# 7| 0: [MethodCall] getDescriptor(...) +# 7| -1: [ThisAccess] this +# 7| 1: [LocalVariableDeclStmt] var ...; +# 7| 1: [LocalVariableDeclExpr] tmp1_output +# 7| 0: [MethodCall] beginStructure(...) +# 7| -1: [VarAccess] encoder +# 7| 0: [VarAccess] tmp0_desc +# 7| 2: [ExprStmt] ; +# 7| 0: [MethodCall] write$Self(...) +# 7| -1: [TypeAccess] Project +# 7| 0: [VarAccess] value +# 7| 1: [VarAccess] tmp1_output +# 7| 2: [VarAccess] tmp0_desc +# 7| 3: [ExprStmt] ; +# 7| 0: [MethodCall] endStructure(...) +# 7| -1: [VarAccess] tmp1_output +# 7| 0: [VarAccess] tmp0_desc # 7| 5: [Constructor] $serializer # 7| 5: [BlockStmt] { ... } # 7| 0: [SuperConstructorInvocationStmt] super(...) # 7| 1: [BlockStmt] { ... } -# 7| 6: [Method] typeParametersSerializers +# 7| 0: [LocalVariableDeclStmt] var ...; +# 7| 1: [LocalVariableDeclExpr] tmp0_serialDesc +# 7| 0: [ClassInstanceExpr] new PluginGeneratedSerialDescriptor(...) +# 7| -3: [TypeAccess] PluginGeneratedSerialDescriptor +# 7| 0: [StringLiteral] "testProject.Project" +# 7| 1: [ThisAccess] $serializer.this +# 7| 0: [TypeAccess] $serializer +# 7| 2: [IntegerLiteral] 2 +# 7| 1: [ExprStmt] ; +# 7| 0: [MethodCall] addElement(...) +# 7| -1: [VarAccess] tmp0_serialDesc +# 7| 0: [StringLiteral] "name" +# 7| 1: [BooleanLiteral] false +# 7| 2: [ExprStmt] ; +# 7| 0: [MethodCall] addElement(...) +# 7| -1: [VarAccess] tmp0_serialDesc +# 7| 0: [StringLiteral] "language" +# 7| 1: [BooleanLiteral] false +# 7| 3: [ExprStmt] ; +# 7| 0: [AssignExpr] ...=... +# 7| 0: [VarAccess] $serializer.this.descriptor +# 7| -1: [ThisAccess] $serializer.this +# 7| 0: [TypeAccess] $serializer +# 7| 1: [VarAccess] tmp0_serialDesc +# 7| 6: [FieldDeclaration] PluginGeneratedSerialDescriptor descriptor; +# 7| -1: [TypeAccess] PluginGeneratedSerialDescriptor +# 7| 7: [Method] typeParametersSerializers # 7| 3: [TypeAccess] KSerializer[] # 7| 0: [TypeAccess] KSerializer # 7| 0: [WildcardTypeAccess] ? ... @@ -253,6 +488,9 @@ app/src/main/kotlin/testProject/App.kt: # 0| 1: [Annotation] NotNull # 0| 3: [TypeAccess] KSerializer # 0| 0: [TypeAccess] Project +# 7| 5: [BlockStmt] { ... } +# 7| 0: [ReturnStmt] return ... +# 7| 0: [VarAccess] INSTANCE # 7| 2: [Constructor] Companion # 7| 5: [BlockStmt] { ... } # 7| 0: [SuperConstructorInvocationStmt] super(...) @@ -318,6 +556,45 @@ app/src/main/kotlin/testProject/App.kt: # 0| 0: [TypeAccess] String # 0| 2: [Parameter] serializationConstructorMarker # 0| 0: [TypeAccess] SerializationConstructorMarker +# 14| 5: [BlockStmt] { ... } +# 14| 0: [ExprStmt] ; +# 14| 0: [WhenExpr] when ... +# 14| 0: [WhenBranch] ... -> ... +# 14| 0: [ValueNEExpr] ... (value not-equals) ... +# 14| 0: [IntegerLiteral] 0 +# 14| 1: [AndBitwiseExpr] ... & ... +# 14| 0: [IntegerLiteral] 0 +# 14| 1: [VarAccess] seen1 +# 14| 1: [ExprStmt] ; +# 14| 0: [MethodCall] throwMissingFieldException(...) +# 14| -1: [TypeAccess] PluginExceptionsKt +# 14| 0: [VarAccess] seen1 +# 14| 1: [IntegerLiteral] 0 +# 14| 2: [MethodCall] getDescriptor(...) +# 14| -1: [VarAccess] INSTANCE +# 14| 1: [SuperConstructorInvocationStmt] super(...) +# 14| 2: [ExprStmt] ; +# 14| 0: [WhenExpr] when ... +# 14| 0: [WhenBranch] ... -> ... +# 14| 0: [ValueEQExpr] ... (value equals) ... +# 14| 0: [IntegerLiteral] 0 +# 14| 1: [AndBitwiseExpr] ... & ... +# 14| 0: [VarAccess] seen1 +# 14| 1: [IntegerLiteral] 1 +# 14| 1: [ExprStmt] ; +# 14| 0: [AssignExpr] ...=... +# 14| 0: [VarAccess] X.this.id +# 14| -1: [ThisAccess] X.this +# 14| 0: [TypeAccess] X +# 16| 1: [StringLiteral] "X" +# 14| 1: [WhenBranch] ... -> ... +# 14| 0: [BooleanLiteral] true +# 14| 1: [ExprStmt] ; +# 14| 0: [AssignExpr] ...=... +# 14| 0: [VarAccess] X.this.id +# 14| -1: [ThisAccess] X.this +# 14| 0: [TypeAccess] X +# 14| 1: [VarAccess] id # 0| 2: [Method] write$Self #-----| 1: (Annotations) # 0| 1: [Annotation] JvmStatic @@ -335,6 +612,32 @@ app/src/main/kotlin/testProject/App.kt: #-----| -1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 0: [TypeAccess] SerialDescriptor +# 14| 5: [BlockStmt] { ... } +# 14| 0: [ExprStmt] ; +# 14| 0: [WhenExpr] when ... +# 14| 0: [WhenBranch] ... -> ... +# 14| 0: [WhenExpr] when ... +# 14| 0: [WhenBranch] ... -> ... +# 14| 0: [MethodCall] shouldEncodeElementDefault(...) +# 14| -1: [VarAccess] output +# 14| 0: [VarAccess] serialDesc +# 14| 1: [IntegerLiteral] 0 +# 14| 1: [ExprStmt] ; +# 14| 0: [BooleanLiteral] true +# 14| 1: [WhenBranch] ... -> ... +# 14| 0: [BooleanLiteral] true +# 14| 1: [ExprStmt] ; +# 14| 0: [ValueNEExpr] ... (value not-equals) ... +# 14| 0: [MethodCall] getId(...) +# 14| -1: [VarAccess] self +# 16| 1: [StringLiteral] "X" +# 14| 1: [ExprStmt] ; +# 14| 0: [MethodCall] encodeStringElement(...) +# 14| -1: [VarAccess] output +# 14| 0: [VarAccess] serialDesc +# 14| 1: [IntegerLiteral] 0 +# 14| 2: [MethodCall] getId(...) +# 14| -1: [VarAccess] self # 14| 3: [Class] $serializer #-----| -3: (Annotations) # 0| 1: [Annotation] Deprecated @@ -350,6 +653,13 @@ app/src/main/kotlin/testProject/App.kt: # 0| 3: [TypeAccess] KSerializer[] # 0| 0: [TypeAccess] KSerializer # 0| 0: [WildcardTypeAccess] ? ... +# 14| 5: [BlockStmt] { ... } +# 14| 0: [ReturnStmt] return ... +# 14| 0: [ArrayCreationExpr] new KSerializer[] +# 14| -2: [ArrayInit] {...} +# 14| 0: [VarAccess] INSTANCE +# 14| -1: [TypeAccess] KSerializer +# 14| 0: [IntegerLiteral] 1 # 0| 2: [Method] deserialize #-----| 1: (Annotations) # 0| 1: [Annotation] NotNull @@ -359,10 +669,111 @@ app/src/main/kotlin/testProject/App.kt: #-----| -1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 0: [TypeAccess] Decoder +# 14| 5: [BlockStmt] { ... } +# 14| 0: [LocalVariableDeclStmt] var ...; +# 14| 1: [LocalVariableDeclExpr] tmp0_desc +# 14| 0: [MethodCall] getDescriptor(...) +# 14| -1: [ThisAccess] this +# 14| 1: [LocalVariableDeclStmt] var ...; +# 14| 1: [LocalVariableDeclExpr] tmp1_flag +# 14| 0: [BooleanLiteral] true +# 14| 2: [LocalVariableDeclStmt] var ...; +# 14| 1: [LocalVariableDeclExpr] tmp2_index +# 14| 0: [IntegerLiteral] 0 +# 14| 3: [LocalVariableDeclStmt] var ...; +# 14| 1: [LocalVariableDeclExpr] tmp3_bitMask0 +# 14| 0: [IntegerLiteral] 0 +# 14| 4: [LocalVariableDeclStmt] var ...; +# 14| 1: [LocalVariableDeclExpr] tmp4_local0 +# 14| 0: [NullLiteral] null +# 14| 5: [LocalVariableDeclStmt] var ...; +# 14| 1: [LocalVariableDeclExpr] tmp5_input +# 14| 0: [MethodCall] beginStructure(...) +# 14| -1: [VarAccess] decoder +# 14| 0: [VarAccess] tmp0_desc +# 14| 6: [ExprStmt] ; +# 14| 0: [WhenExpr] when ... +# 14| 0: [WhenBranch] ... -> ... +# 14| 0: [MethodCall] decodeSequentially(...) +# 14| -1: [VarAccess] tmp5_input +# 14| 1: [BlockStmt] { ... } +# 14| 0: [BlockStmt] { ... } +# 14| 0: [ExprStmt] ; +# 14| 0: [AssignExpr] ...=... +# 14| 0: [VarAccess] tmp4_local0 +# 14| 1: [MethodCall] decodeStringElement(...) +# 14| -1: [VarAccess] tmp5_input +# 14| 0: [VarAccess] tmp0_desc +# 14| 1: [IntegerLiteral] 0 +# 14| 1: [ExprStmt] ; +# 14| 0: [AssignExpr] ...=... +# 14| 0: [VarAccess] tmp3_bitMask0 +# 14| 1: [OrBitwiseExpr] ... | ... +# 14| 0: [VarAccess] tmp3_bitMask0 +# 14| 1: [IntegerLiteral] 1 +# 14| 1: [WhenBranch] ... -> ... +# 14| 0: [BooleanLiteral] true +# 14| 1: [WhileStmt] while (...) +# 14| 0: [VarAccess] tmp1_flag +# 14| 1: [BlockStmt] { ... } +# 14| 0: [ExprStmt] ; +# 14| 0: [AssignExpr] ...=... +# 14| 0: [VarAccess] tmp2_index +# 14| 1: [MethodCall] decodeElementIndex(...) +# 14| -1: [VarAccess] tmp5_input +# 14| 0: [VarAccess] tmp0_desc +# 14| 1: [ExprStmt] ; +# 14| 0: [WhenExpr] when ... +# 14| 0: [WhenBranch] ... -> ... +# 14| 0: [ValueEQExpr] ... (value equals) ... +# 14| 0: [VarAccess] tmp2_index +# 14| 1: [IntegerLiteral] -1 +# 14| 1: [ExprStmt] ; +# 14| 0: [AssignExpr] ...=... +# 14| 0: [VarAccess] tmp1_flag +# 14| 1: [BooleanLiteral] false +# 14| 1: [WhenBranch] ... -> ... +# 14| 0: [ValueEQExpr] ... (value equals) ... +# 14| 0: [VarAccess] tmp2_index +# 14| 1: [IntegerLiteral] 0 +# 14| 1: [BlockStmt] { ... } +# 14| 0: [ExprStmt] ; +# 14| 0: [AssignExpr] ...=... +# 14| 0: [VarAccess] tmp4_local0 +# 14| 1: [MethodCall] decodeStringElement(...) +# 14| -1: [VarAccess] tmp5_input +# 14| 0: [VarAccess] tmp0_desc +# 14| 1: [IntegerLiteral] 0 +# 14| 1: [ExprStmt] ; +# 14| 0: [AssignExpr] ...=... +# 14| 0: [VarAccess] tmp3_bitMask0 +# 14| 1: [OrBitwiseExpr] ... | ... +# 14| 0: [VarAccess] tmp3_bitMask0 +# 14| 1: [IntegerLiteral] 1 +# 14| 2: [WhenBranch] ... -> ... +# 14| 0: [BooleanLiteral] true +# 14| 1: [ThrowStmt] throw ... +# 14| 0: [ClassInstanceExpr] new UnknownFieldException(...) +# 14| -3: [TypeAccess] UnknownFieldException +# 14| 0: [VarAccess] tmp2_index +# 14| 7: [ExprStmt] ; +# 14| 0: [MethodCall] endStructure(...) +# 14| -1: [VarAccess] tmp5_input +# 14| 0: [VarAccess] tmp0_desc +# 14| 8: [ReturnStmt] return ... +# 14| 0: [ClassInstanceExpr] new X(...) +# 14| -3: [TypeAccess] X +# 14| 0: [VarAccess] tmp3_bitMask0 +# 14| 1: [VarAccess] tmp4_local0 +# 14| 2: [NullLiteral] null # 0| 3: [Method] getDescriptor #-----| 1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 3: [TypeAccess] SerialDescriptor +# 14| 5: [BlockStmt] { ... } +# 14| 0: [ReturnStmt] return ... +# 14| 0: [VarAccess] this.descriptor +# 14| -1: [ThisAccess] this # 0| 4: [Method] serialize # 0| 3: [TypeAccess] Unit #-----| 4: (Parameters) @@ -374,11 +785,52 @@ app/src/main/kotlin/testProject/App.kt: #-----| -1: (Annotations) # 0| 1: [Annotation] NotNull # 0| 0: [TypeAccess] X +# 14| 5: [BlockStmt] { ... } +# 14| 0: [LocalVariableDeclStmt] var ...; +# 14| 1: [LocalVariableDeclExpr] tmp0_desc +# 14| 0: [MethodCall] getDescriptor(...) +# 14| -1: [ThisAccess] this +# 14| 1: [LocalVariableDeclStmt] var ...; +# 14| 1: [LocalVariableDeclExpr] tmp1_output +# 14| 0: [MethodCall] beginStructure(...) +# 14| -1: [VarAccess] encoder +# 14| 0: [VarAccess] tmp0_desc +# 14| 2: [ExprStmt] ; +# 14| 0: [MethodCall] write$Self(...) +# 14| -1: [TypeAccess] X +# 14| 0: [VarAccess] value +# 14| 1: [VarAccess] tmp1_output +# 14| 2: [VarAccess] tmp0_desc +# 14| 3: [ExprStmt] ; +# 14| 0: [MethodCall] endStructure(...) +# 14| -1: [VarAccess] tmp1_output +# 14| 0: [VarAccess] tmp0_desc # 14| 5: [Constructor] $serializer # 14| 5: [BlockStmt] { ... } # 14| 0: [SuperConstructorInvocationStmt] super(...) # 14| 1: [BlockStmt] { ... } -# 14| 6: [Method] typeParametersSerializers +# 14| 0: [LocalVariableDeclStmt] var ...; +# 14| 1: [LocalVariableDeclExpr] tmp0_serialDesc +# 14| 0: [ClassInstanceExpr] new PluginGeneratedSerialDescriptor(...) +# 14| -3: [TypeAccess] PluginGeneratedSerialDescriptor +# 14| 0: [StringLiteral] "testProject.X" +# 14| 1: [ThisAccess] $serializer.this +# 14| 0: [TypeAccess] $serializer +# 14| 2: [IntegerLiteral] 1 +# 14| 1: [ExprStmt] ; +# 14| 0: [MethodCall] addElement(...) +# 14| -1: [VarAccess] tmp0_serialDesc +# 14| 0: [StringLiteral] "id" +# 14| 1: [BooleanLiteral] true +# 14| 2: [ExprStmt] ; +# 14| 0: [AssignExpr] ...=... +# 14| 0: [VarAccess] $serializer.this.descriptor +# 14| -1: [ThisAccess] $serializer.this +# 14| 0: [TypeAccess] $serializer +# 14| 1: [VarAccess] tmp0_serialDesc +# 14| 6: [FieldDeclaration] PluginGeneratedSerialDescriptor descriptor; +# 14| -1: [TypeAccess] PluginGeneratedSerialDescriptor +# 14| 7: [Method] typeParametersSerializers # 14| 3: [TypeAccess] KSerializer[] # 14| 0: [TypeAccess] KSerializer # 14| 0: [WildcardTypeAccess] ? ... @@ -393,6 +845,9 @@ app/src/main/kotlin/testProject/App.kt: # 0| 1: [Annotation] NotNull # 0| 3: [TypeAccess] KSerializer # 0| 0: [TypeAccess] X +# 14| 5: [BlockStmt] { ... } +# 14| 0: [ReturnStmt] return ... +# 14| 0: [VarAccess] INSTANCE # 14| 2: [Constructor] Companion # 14| 5: [BlockStmt] { ... } # 14| 0: [SuperConstructorInvocationStmt] super(...) From a6f8af0de59b57eb83ab7d4a2d0a80bc8269aff5 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Wed, 14 Jan 2026 07:20:37 -0800 Subject: [PATCH 215/433] Kotlin: Accept column location changes in tests --- .../java_modifiers/test.expected | 2 +- .../jvmoverloads-external-class/test.expected | 16 ++++++------ .../kotlin_java_static_fields/test.expected | 26 +++++++++---------- .../nullability-annotations/test.expected | 8 +++--- .../posix/module_mangled_names/test.expected | 6 ++--- 5 files changed, 29 insertions(+), 29 deletions(-) diff --git a/java/ql/integration-tests/kotlin/all-platforms/java_modifiers/test.expected b/java/ql/integration-tests/kotlin/all-platforms/java_modifiers/test.expected index a8040f7d82bb..459a8d9209de 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/java_modifiers/test.expected +++ b/java/ql/integration-tests/kotlin/all-platforms/java_modifiers/test.expected @@ -1,2 +1,2 @@ | extlib.jar/extlib/A.class:0:0:0:0 | m | protected | -| test.kt:4:3:4:22 | m | override, protected | +| test.kt:4:12:4:22 | m | override, protected | diff --git a/java/ql/integration-tests/kotlin/all-platforms/jvmoverloads-external-class/test.expected b/java/ql/integration-tests/kotlin/all-platforms/jvmoverloads-external-class/test.expected index db5d2c766806..26a090843edf 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/jvmoverloads-external-class/test.expected +++ b/java/ql/integration-tests/kotlin/all-platforms/jvmoverloads-external-class/test.expected @@ -1,8 +1,8 @@ -| test.kt:3:3:3:45 | f | test.kt:3:23:3:32 | x | -| test.kt:3:3:3:45 | f | test.kt:3:35:3:40 | y | -| test.kt:3:3:3:45 | f | test.kt:3:35:3:40 | y | -| test.kt:3:3:3:45 | f$default | test.kt:3:3:3:45 | p0 | -| test.kt:3:3:3:45 | f$default | test.kt:3:3:3:45 | p1 | -| test.kt:3:3:3:45 | f$default | test.kt:3:3:3:45 | p2 | -| test.kt:3:3:3:45 | f$default | test.kt:3:3:3:45 | p3 | -| test.kt:3:3:3:45 | f$default | test.kt:3:3:3:45 | p4 | +| test.kt:3:17:3:45 | f | test.kt:3:23:3:32 | x | +| test.kt:3:17:3:45 | f | test.kt:3:35:3:40 | y | +| test.kt:3:17:3:45 | f | test.kt:3:35:3:40 | y | +| test.kt:3:17:3:45 | f$default | test.kt:3:17:3:45 | p0 | +| test.kt:3:17:3:45 | f$default | test.kt:3:17:3:45 | p1 | +| test.kt:3:17:3:45 | f$default | test.kt:3:17:3:45 | p2 | +| test.kt:3:17:3:45 | f$default | test.kt:3:17:3:45 | p3 | +| test.kt:3:17:3:45 | f$default | test.kt:3:17:3:45 | p4 | diff --git a/java/ql/integration-tests/kotlin/all-platforms/kotlin_java_static_fields/test.expected b/java/ql/integration-tests/kotlin/all-platforms/kotlin_java_static_fields/test.expected index 9470b5e1e263..5839116cf34a 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/kotlin_java_static_fields/test.expected +++ b/java/ql/integration-tests/kotlin/all-platforms/kotlin_java_static_fields/test.expected @@ -1,22 +1,22 @@ edges -| hasFields.kt:5:5:5:34 | constField : String | ReadsFields.java:5:10:5:29 | HasFields.constField | provenance | | -| hasFields.kt:5:28:5:34 | "taint" : String | hasFields.kt:5:5:5:34 | constField : String | provenance | | -| hasFields.kt:7:5:7:38 | : String | hasFields.kt:7:5:7:38 | : String | provenance | | -| hasFields.kt:7:5:7:38 | : String | hasFields.kt:7:5:7:38 | lateinitField : String | provenance | | -| hasFields.kt:7:5:7:38 | lateinitField : String | ReadsFields.java:6:10:6:32 | HasFields.lateinitField | provenance | | -| hasFields.kt:9:5:9:50 | jvmFieldAnnotatedField : String | ReadsFields.java:7:10:7:41 | HasFields.jvmFieldAnnotatedField | provenance | | -| hasFields.kt:9:44:9:50 | "taint" : String | hasFields.kt:9:5:9:50 | jvmFieldAnnotatedField : String | provenance | | -| hasFields.kt:14:21:14:27 | "taint" : String | hasFields.kt:7:5:7:38 | : String | provenance | | +| hasFields.kt:5:11:5:34 | constField : String | ReadsFields.java:5:10:5:29 | HasFields.constField | provenance | | +| hasFields.kt:5:28:5:34 | "taint" : String | hasFields.kt:5:11:5:34 | constField : String | provenance | | +| hasFields.kt:7:14:7:38 | : String | hasFields.kt:7:14:7:38 | : String | provenance | | +| hasFields.kt:7:14:7:38 | : String | hasFields.kt:7:14:7:38 | lateinitField : String | provenance | | +| hasFields.kt:7:14:7:38 | lateinitField : String | ReadsFields.java:6:10:6:32 | HasFields.lateinitField | provenance | | +| hasFields.kt:9:15:9:50 | jvmFieldAnnotatedField : String | ReadsFields.java:7:10:7:41 | HasFields.jvmFieldAnnotatedField | provenance | | +| hasFields.kt:9:44:9:50 | "taint" : String | hasFields.kt:9:15:9:50 | jvmFieldAnnotatedField : String | provenance | | +| hasFields.kt:14:21:14:27 | "taint" : String | hasFields.kt:7:14:7:38 | : String | provenance | | nodes | ReadsFields.java:5:10:5:29 | HasFields.constField | semmle.label | HasFields.constField | | ReadsFields.java:6:10:6:32 | HasFields.lateinitField | semmle.label | HasFields.lateinitField | | ReadsFields.java:7:10:7:41 | HasFields.jvmFieldAnnotatedField | semmle.label | HasFields.jvmFieldAnnotatedField | -| hasFields.kt:5:5:5:34 | constField : String | semmle.label | constField : String | +| hasFields.kt:5:11:5:34 | constField : String | semmle.label | constField : String | | hasFields.kt:5:28:5:34 | "taint" : String | semmle.label | "taint" : String | -| hasFields.kt:7:5:7:38 | : String | semmle.label | : String | -| hasFields.kt:7:5:7:38 | : String | semmle.label | : String | -| hasFields.kt:7:5:7:38 | lateinitField : String | semmle.label | lateinitField : String | -| hasFields.kt:9:5:9:50 | jvmFieldAnnotatedField : String | semmle.label | jvmFieldAnnotatedField : String | +| hasFields.kt:7:14:7:38 | : String | semmle.label | : String | +| hasFields.kt:7:14:7:38 | : String | semmle.label | : String | +| hasFields.kt:7:14:7:38 | lateinitField : String | semmle.label | lateinitField : String | +| hasFields.kt:9:15:9:50 | jvmFieldAnnotatedField : String | semmle.label | jvmFieldAnnotatedField : String | | hasFields.kt:9:44:9:50 | "taint" : String | semmle.label | "taint" : String | | hasFields.kt:14:21:14:27 | "taint" : String | semmle.label | "taint" : String | subpaths diff --git a/java/ql/integration-tests/kotlin/all-platforms/nullability-annotations/test.expected b/java/ql/integration-tests/kotlin/all-platforms/nullability-annotations/test.expected index 8dd20ad64a46..89eb06d26c34 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/nullability-annotations/test.expected +++ b/java/ql/integration-tests/kotlin/all-platforms/nullability-annotations/test.expected @@ -22,7 +22,7 @@ | ktUser.kt:0:0:0:0 | nullableAnnotated | parameter | ktUser.kt:0:0:0:0 | Nullable | | ktUser.kt:0:0:0:0 | nullableAnnotated | return value | ktUser.kt:0:0:0:0 | A | | ktUser.kt:0:0:0:0 | nullableAnnotated | return value | ktUser.kt:0:0:0:0 | Nullable | -| ktUser.kt:5:3:5:105 | f | parameter | ktUser.kt:0:0:0:0 | NotNull | -| ktUser.kt:5:3:5:105 | f | parameter | ktUser.kt:5:12:5:13 | A | -| ktUser.kt:5:3:5:105 | f | return value | ktUser.kt:0:0:0:0 | NotNull | -| ktUser.kt:5:3:5:105 | f | return value | ktUser.kt:5:3:5:4 | A | +| ktUser.kt:5:6:5:105 | f | parameter | ktUser.kt:0:0:0:0 | NotNull | +| ktUser.kt:5:6:5:105 | f | parameter | ktUser.kt:5:12:5:13 | A | +| ktUser.kt:5:6:5:105 | f | return value | ktUser.kt:0:0:0:0 | NotNull | +| ktUser.kt:5:6:5:105 | f | return value | ktUser.kt:5:3:5:4 | A | diff --git a/java/ql/integration-tests/kotlin/posix/module_mangled_names/test.expected b/java/ql/integration-tests/kotlin/posix/module_mangled_names/test.expected index 51b4fd853fff..a1fc953a2546 100644 --- a/java/ql/integration-tests/kotlin/posix/module_mangled_names/test.expected +++ b/java/ql/integration-tests/kotlin/posix/module_mangled_names/test.expected @@ -1,4 +1,4 @@ | User.java:3:21:3:24 | test | -| test1.kt:3:3:3:22 | f$main | -| test2.kt:3:3:3:22 | f$mymodule | -| test3.kt:3:3:3:22 | f$reservedchars___ | +| test1.kt:3:12:3:22 | f$main | +| test2.kt:3:12:3:22 | f$mymodule | +| test3.kt:3:12:3:22 | f$reservedchars___ | From 59fa01e3861e7f0fc51dfce6dc627e80e748565f Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Thu, 15 Jan 2026 09:20:41 -0800 Subject: [PATCH 216/433] Kotlin: Add bitwise 'and' operation expected by Kotlin 2.3 compiler to exist in the stdlib --- java/ql/test-kotlin1/library-tests/ministdlib/MiniStdLib.kt | 1 + 1 file changed, 1 insertion(+) diff --git a/java/ql/test-kotlin1/library-tests/ministdlib/MiniStdLib.kt b/java/ql/test-kotlin1/library-tests/ministdlib/MiniStdLib.kt index ba48bc632345..1aaba910fa2b 100644 --- a/java/ql/test-kotlin1/library-tests/ministdlib/MiniStdLib.kt +++ b/java/ql/test-kotlin1/library-tests/ministdlib/MiniStdLib.kt @@ -26,6 +26,7 @@ public class Int { operator fun plus(other: Int): Int { return this.plus(other) } operator fun times(other: Int): Int { return this.times(other) } infix fun xor(other: Int): Int { return this.xor(other) } + infix fun and(other: Int): Int { return this.and(other) } } public object Unit { From 86d9c349ec98566f1f3da63770f908466cee5a7e Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Thu, 15 Jan 2026 10:51:03 -0800 Subject: [PATCH 217/433] Kotlin: Accept test changes --- .../test-kotlin1/library-tests/data-classes/PrintAst.expected | 2 +- java/ql/test-kotlin1/library-tests/methods/exprs.expected | 2 +- .../ql/test-kotlin1/library-tests/ministdlib/classes.expected | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/java/ql/test-kotlin1/library-tests/data-classes/PrintAst.expected b/java/ql/test-kotlin1/library-tests/data-classes/PrintAst.expected index f884671c0949..98999cf18696 100644 --- a/java/ql/test-kotlin1/library-tests/data-classes/PrintAst.expected +++ b/java/ql/test-kotlin1/library-tests/data-classes/PrintAst.expected @@ -93,7 +93,7 @@ dc.kt: # 0| 0: [BooleanLiteral] false # 0| 2: [LocalVariableDeclStmt] var ...; # 0| 1: [LocalVariableDeclExpr] tmp0_other_with_cast -# 0| 0: [CastExpr] (...)... +# 0| 0: [ImplicitCastExpr] # 0| 0: [TypeAccess] ProtoMapValue # 0| 1: [VarAccess] other # 0| 3: [ExprStmt] ; diff --git a/java/ql/test-kotlin1/library-tests/methods/exprs.expected b/java/ql/test-kotlin1/library-tests/methods/exprs.expected index 5e916c6ddbc6..ae7381efc737 100644 --- a/java/ql/test-kotlin1/library-tests/methods/exprs.expected +++ b/java/ql/test-kotlin1/library-tests/methods/exprs.expected @@ -23,7 +23,6 @@ | dataClass.kt:0:0:0:0 | "DataClass(" | StringLiteral | | dataClass.kt:0:0:0:0 | "x=" | StringLiteral | | dataClass.kt:0:0:0:0 | "y=" | StringLiteral | -| dataClass.kt:0:0:0:0 | (...)... | CastExpr | | dataClass.kt:0:0:0:0 | ... !is ... | NotInstanceOfExpr | | dataClass.kt:0:0:0:0 | ... & ... | AndBitwiseExpr | | dataClass.kt:0:0:0:0 | ... & ... | AndBitwiseExpr | @@ -37,6 +36,7 @@ | dataClass.kt:0:0:0:0 | ...=... | AssignExpr | | dataClass.kt:0:0:0:0 | ...=... | AssignExpr | | dataClass.kt:0:0:0:0 | ...=... | AssignExpr | +| dataClass.kt:0:0:0:0 | | ImplicitCastExpr | | dataClass.kt:0:0:0:0 | DataClass | TypeAccess | | dataClass.kt:0:0:0:0 | DataClass | TypeAccess | | dataClass.kt:0:0:0:0 | DataClass | TypeAccess | diff --git a/java/ql/test-kotlin1/library-tests/ministdlib/classes.expected b/java/ql/test-kotlin1/library-tests/ministdlib/classes.expected index 8d1bc5381290..36aaa6b629c4 100644 --- a/java/ql/test-kotlin1/library-tests/ministdlib/classes.expected +++ b/java/ql/test-kotlin1/library-tests/ministdlib/classes.expected @@ -1,7 +1,7 @@ | MiniStdLib.kt:12:1:15:1 | Any | | MiniStdLib.kt:17:1:19:1 | String | | MiniStdLib.kt:21:1:23:1 | Boolean | -| MiniStdLib.kt:25:1:29:1 | Int | -| MiniStdLib.kt:31:1:32:1 | Unit | +| MiniStdLib.kt:25:1:30:1 | Int | +| MiniStdLib.kt:32:1:33:1 | Unit | | MyClass.kt:1:1:1:16 | MyClass | | file://:0:0:0:0 | FakeKotlinClass | From 31867a56fb2d662b60ed4de16427fb05d2d5689d Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Thu, 15 Jan 2026 11:37:35 -0800 Subject: [PATCH 218/433] Kotlin: Accept test changes Accept test changes from Kotlin 2.3.0 update Updates expected test outputs for kotlin2 library tests to match actual compiler output. Changes include: - Location adjustments for properties/methods (now point to identifiers) - CastExpr -> ImplicitCastExpr for implicit type casts - Removed duplicate BlockStmt entries in loop ASTs - Super constructor call location changes Note that in Kotlin 2.3.0 super constructor calls now have locations spanning entire class declarations instead of the actual super call site. --- .../v_1_8_0/IrSimpleTypeImplCompat.kt | 19 - .../v_2_3_0-Beta2/IrSimpleTypeImplCompat.kt | 21 - .../annotation_classes/PrintAst.expected | 50 +- .../annotation_classes/classes.expected | 12 +- .../annotations/jvmName/test.expected | 8 +- .../library-tests/classes/ctorCalls.expected | 14 +- .../classes/genericExprTypes.expected | 16 +- .../library-tests/comments/comments.expected | 6 +- .../method_accesses.expected | 2 +- .../data-classes/PrintAst.expected | 2 +- .../data-classes/callees.expected | 2 +- .../library-tests/exprs/PrintAst.expected | 39 +- .../library-tests/exprs/exprs.expected | 312 +++---- .../library-tests/exprs/funcExprs.expected | 4 +- .../library-tests/exprs/unaryOp.expected | 2 +- .../generic-instance-methods/test.expected | 4 +- .../test.expected | 6 +- .../inherited-default-value/test.expected | 4 +- .../interface-delegate/test.expected | 2 +- .../test.expected | 2 +- .../internal-public-alias/test.expected | 8 +- .../java_and_kotlin/test.expected | 22 +- .../visibility.expected | 24 +- .../jvmoverloads-annotation/PrintAst.expected | 872 +++++++++--------- .../jvmoverloads-annotation/test.expected | 78 +- .../jvmoverloads_flow/test.expected | 12 +- .../jvmoverloads_generics/test.expected | 18 +- .../jvmstatic-annotation/test.expected | 18 +- .../library-tests/lateinit/test.expected | 6 +- .../test.expected | 2 +- .../library-tests/methods/exprs.expected | 32 +- .../library-tests/methods/methods.expected | 20 +- .../library-tests/methods/parameters.expected | 8 +- .../modifiers/modifiers.expected | 74 +- .../parameter-defaults/defaults.expected | 8 +- .../private-anonymous-types/test.expected | 12 +- .../properties/properties.expected | 34 +- .../library-tests/stmts/PrintAst.expected | 54 +- .../library-tests/stmts/stmts.expected | 8 +- .../library-tests/vararg/args.expected | 6 +- 40 files changed, 902 insertions(+), 941 deletions(-) delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/IrSimpleTypeImplCompat.kt delete mode 100644 java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/IrSimpleTypeImplCompat.kt diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/IrSimpleTypeImplCompat.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/IrSimpleTypeImplCompat.kt deleted file mode 100644 index ed0ad405e294..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_1_8_0/IrSimpleTypeImplCompat.kt +++ /dev/null @@ -1,19 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.expressions.IrConstructorCall -import org.jetbrains.kotlin.ir.symbols.IrClassifierSymbol -import org.jetbrains.kotlin.ir.types.IrSimpleType -import org.jetbrains.kotlin.ir.types.IrTypeArgument -import org.jetbrains.kotlin.ir.types.impl.IrSimpleTypeImpl - -fun codeqlIrSimpleTypeImpl( - classifier: IrClassifierSymbol, - isNullable: Boolean, - arguments: List, - annotations: List -): IrSimpleType = IrSimpleTypeImpl( - classifier, - isNullable, - arguments, - annotations -) diff --git a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/IrSimpleTypeImplCompat.kt b/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/IrSimpleTypeImplCompat.kt deleted file mode 100644 index b2b4e14731c9..000000000000 --- a/java/kotlin-extractor/src/main/kotlin/utils/versions/v_2_3_0-Beta2/IrSimpleTypeImplCompat.kt +++ /dev/null @@ -1,21 +0,0 @@ -package com.github.codeql.utils.versions - -import org.jetbrains.kotlin.ir.expressions.IrConstructorCall -import org.jetbrains.kotlin.ir.symbols.IrClassifierSymbol -import org.jetbrains.kotlin.ir.types.IrSimpleType -import org.jetbrains.kotlin.ir.types.IrTypeArgument -import org.jetbrains.kotlin.ir.types.SimpleTypeNullability -import org.jetbrains.kotlin.ir.types.impl.IrSimpleTypeImpl - -fun codeqlIrSimpleTypeImpl( - classifier: IrClassifierSymbol, - isNullable: Boolean, - arguments: List, - annotations: List -): IrSimpleType = IrSimpleTypeImpl( - classifier, - SimpleTypeNullability.fromHasQuestionMark(isNullable), - arguments, - annotations, - null // originalKotlinType - explicitly pass null to avoid default parameter issues -) diff --git a/java/ql/test-kotlin2/library-tests/annotation_classes/PrintAst.expected b/java/ql/test-kotlin2/library-tests/annotation_classes/PrintAst.expected index 1153b13c3bf9..a45b3b52351e 100644 --- a/java/ql/test-kotlin2/library-tests/annotation_classes/PrintAst.expected +++ b/java/ql/test-kotlin2/library-tests/annotation_classes/PrintAst.expected @@ -22,13 +22,13 @@ Annot1j.java: def.kt: # 0| [CompilationUnit] def # 0| 1: [Class] DefKt -# 45| 2: [Method] fn +# 46| 2: [Method] fn #-----| 1: (Annotations) # 45| 1: [Annotation] Annot0k # 21| 1: [IntegerLiteral] 0 #-----| 2: (Generic Parameters) # 46| 0: [TypeVariable] T -# 45| 3: [TypeAccess] Unit +# 46| 3: [TypeAccess] Unit #-----| 4: (Parameters) # 46| 0: [Parameter] a #-----| -1: (Annotations) @@ -41,38 +41,38 @@ def.kt: # 47| -1: [TypeAccess] ConsoleKt # 47| 0: [MethodCall] a(...) # 47| -1: [VarAccess] a -# 49| 1: [LocalVariableDeclStmt] var ...; -# 49| 1: [LocalVariableDeclExpr] x +# 50| 1: [LocalVariableDeclStmt] var ...; +# 50| 1: [LocalVariableDeclExpr] x # 50| 0: [IntegerLiteral] 10 -# 53| 3: [Method] getP +# 57| 3: [Method] getP #-----| 1: (Annotations) # 54| 1: [Annotation] Annot0k # 21| 1: [IntegerLiteral] 0 -# 53| 3: [TypeAccess] int -# 53| 5: [BlockStmt] { ... } -# 53| 0: [ReturnStmt] return ... -# 53| 0: [VarAccess] DefKt.p -# 53| -1: [TypeAccess] DefKt -# 53| 4: [FieldDeclaration] int p; +# 57| 3: [TypeAccess] int +# 57| 5: [BlockStmt] { ... } +# 57| 0: [ReturnStmt] return ... +# 57| 0: [VarAccess] DefKt.p +# 57| -1: [TypeAccess] DefKt +# 57| 4: [FieldDeclaration] int p; #-----| -2: (Annotations) # 56| 1: [Annotation] Annot0k # 21| 1: [IntegerLiteral] 0 -# 53| -1: [TypeAccess] int +# 57| -1: [TypeAccess] int # 57| 0: [IntegerLiteral] 5 -# 53| 5: [Method] setP +# 57| 5: [Method] setP #-----| 1: (Annotations) # 55| 1: [Annotation] Annot0k # 21| 1: [IntegerLiteral] 0 -# 53| 3: [TypeAccess] Unit +# 57| 3: [TypeAccess] Unit #-----| 4: (Parameters) -# 53| 0: [Parameter] -# 53| 0: [TypeAccess] int -# 53| 5: [BlockStmt] { ... } -# 53| 0: [ExprStmt] ; -# 53| 0: [AssignExpr] ...=... -# 53| 0: [VarAccess] DefKt.p -# 53| -1: [TypeAccess] DefKt -# 53| 1: [VarAccess] +# 57| 0: [Parameter] +# 57| 0: [TypeAccess] int +# 57| 5: [BlockStmt] { ... } +# 57| 0: [ExprStmt] ; +# 57| 0: [AssignExpr] ...=... +# 57| 0: [VarAccess] DefKt.p +# 57| -1: [TypeAccess] DefKt +# 57| 1: [VarAccess] # 59| 6: [ExtensionMethod] myExtension # 59| 3: [TypeAccess] Unit #-----| 4: (Parameters) @@ -219,13 +219,13 @@ def.kt: # 39| -1: [TypeAccess] Y # 39| 2: [VarAccess] Y.A # 39| -1: [TypeAccess] Y -# 41| 1: [Constructor] Z +# 42| 1: [Constructor] Z #-----| 1: (Annotations) # 41| 1: [Annotation] Annot0k # 21| 1: [IntegerLiteral] 0 -# 41| 5: [BlockStmt] { ... } +# 42| 5: [BlockStmt] { ... } # 42| 0: [SuperConstructorInvocationStmt] super(...) -# 41| 1: [BlockStmt] { ... } +# 42| 1: [BlockStmt] { ... } use.java: # 0| [CompilationUnit] use # 1| 1: [Class] use diff --git a/java/ql/test-kotlin2/library-tests/annotation_classes/classes.expected b/java/ql/test-kotlin2/library-tests/annotation_classes/classes.expected index d42e6cf854c2..db4ef27b32b6 100644 --- a/java/ql/test-kotlin2/library-tests/annotation_classes/classes.expected +++ b/java/ql/test-kotlin2/library-tests/annotation_classes/classes.expected @@ -17,7 +17,7 @@ annotationDeclarations | Annot1j.java:1:19:1:25 | Annot1j | Annot1j.java:8:7:8:7 | d | | Annot1j.java:1:19:1:25 | Annot1j | Annot1j.java:10:9:10:9 | e | | Annot1j.java:1:19:1:25 | Annot1j | Annot1j.java:12:13:12:13 | f | -| def.kt:5:1:21:60 | Annot0k | def.kt:21:26:21:59 | a | +| def.kt:5:1:21:60 | Annot0k | def.kt:21:44:21:59 | a | | def.kt:23:1:31:1 | Annot1k | def.kt:25:5:25:18 | a | | def.kt:23:1:31:1 | Annot1k | def.kt:26:5:26:24 | b | | def.kt:23:1:31:1 | Annot1k | def.kt:27:5:27:31 | c | @@ -29,12 +29,12 @@ annotations | def.kt:30:22:30:31 | Annot0k | def.kt:39:1:39:40 | Annot1k | def.kt:5:1:21:60 | Annot0k | | def.kt:38:1:38:17 | Annot0k | def.kt:38:1:43:1 | Z | def.kt:5:1:21:60 | Annot0k | | def.kt:39:1:39:40 | Annot1k | def.kt:38:1:43:1 | Z | def.kt:23:1:31:1 | Annot1k | -| def.kt:41:5:41:12 | Annot0k | def.kt:41:5:42:19 | Z | def.kt:5:1:21:60 | Annot0k | -| def.kt:45:1:45:8 | Annot0k | def.kt:45:1:51:1 | fn | def.kt:5:1:21:60 | Annot0k | +| def.kt:41:5:41:12 | Annot0k | def.kt:42:5:42:19 | Z | def.kt:5:1:21:60 | Annot0k | +| def.kt:45:1:45:8 | Annot0k | def.kt:46:1:51:1 | fn | def.kt:5:1:21:60 | Annot0k | | def.kt:46:21:46:28 | Annot0k | def.kt:46:21:46:39 | a | def.kt:5:1:21:60 | Annot0k | -| def.kt:54:1:54:12 | Annot0k | def.kt:53:1:57:19 | getP | def.kt:5:1:21:60 | Annot0k | -| def.kt:55:1:55:12 | Annot0k | def.kt:53:1:57:19 | setP | def.kt:5:1:21:60 | Annot0k | -| def.kt:56:1:56:14 | Annot0k | def.kt:53:1:57:23 | p | def.kt:5:1:21:60 | Annot0k | +| def.kt:54:1:54:12 | Annot0k | def.kt:57:1:57:19 | getP | def.kt:5:1:21:60 | Annot0k | +| def.kt:55:1:55:12 | Annot0k | def.kt:57:1:57:19 | setP | def.kt:5:1:21:60 | Annot0k | +| def.kt:56:1:56:14 | Annot0k | def.kt:57:1:57:23 | p | def.kt:5:1:21:60 | Annot0k | | def.kt:59:5:59:21 | Annot0k | def.kt:59:5:59:28 | | def.kt:5:1:21:60 | Annot0k | | use.java:10:5:10:21 | Annot0j | use.java:14:18:14:18 | Z | Annot0j.java:1:19:1:25 | Annot0j | | use.java:11:5:11:90 | Annot1j | use.java:14:18:14:18 | Z | Annot1j.java:1:19:1:25 | Annot1j | diff --git a/java/ql/test-kotlin2/library-tests/annotations/jvmName/test.expected b/java/ql/test-kotlin2/library-tests/annotations/jvmName/test.expected index c56618efda8b..ba6887606f25 100644 --- a/java/ql/test-kotlin2/library-tests/annotations/jvmName/test.expected +++ b/java/ql/test-kotlin2/library-tests/annotations/jvmName/test.expected @@ -1,8 +1,8 @@ | Test.java:2:17:2:17 | m | m | m | | test.kt:3:9:4:18 | getX_prop | getX_prop | getX | | test.kt:6:5:6:19 | getX | getX | getX | -| test.kt:8:5:10:14 | changeY | changeY | setY | -| test.kt:8:5:10:14 | y | y | getY | -| test.kt:12:5:13:15 | method | method | fn | +| test.kt:10:5:10:14 | changeY | changeY | setY | +| test.kt:10:5:10:14 | y | y | getY | +| test.kt:13:5:13:15 | method | method | fn | | test.kt:17:5:17:14 | p | p | p | -| test.kt:18:5:18:32 | w | w | q | +| test.kt:18:23:18:32 | w | w | q | diff --git a/java/ql/test-kotlin2/library-tests/classes/ctorCalls.expected b/java/ql/test-kotlin2/library-tests/classes/ctorCalls.expected index 0bfec48f3f24..e5fe3bf89244 100644 --- a/java/ql/test-kotlin2/library-tests/classes/ctorCalls.expected +++ b/java/ql/test-kotlin2/library-tests/classes/ctorCalls.expected @@ -2,11 +2,11 @@ thisCall | classes.kt:29:26:29:31 | this(...) | superCall | classes.kt:2:1:2:18 | super(...) | -| classes.kt:4:16:4:29 | super(...) | +| classes.kt:4:1:6:1 | super(...) | | classes.kt:8:1:10:1 | super(...) | -| classes.kt:12:23:12:34 | super(...) | -| classes.kt:17:18:17:28 | super(...) | -| classes.kt:28:19:28:29 | super(...) | +| classes.kt:12:1:15:1 | super(...) | +| classes.kt:17:1:18:1 | super(...) | +| classes.kt:28:1:30:1 | super(...) | | classes.kt:35:27:35:27 | super(...) | | classes.kt:63:1:91:1 | super(...) | | classes.kt:66:20:66:54 | super(...) | @@ -41,7 +41,7 @@ superCall | classes.kt:151:5:155:5 | super(...) | | classes.kt:159:5:159:14 | super(...) | | classes.kt:162:13:162:22 | super(...) | -| generic_anonymous.kt:1:25:1:34 | super(...) | +| generic_anonymous.kt:1:1:9:1 | super(...) | | generic_anonymous.kt:3:19:5:3 | super(...) | | generic_anonymous.kt:15:1:33:1 | super(...) | | generic_anonymous.kt:25:9:31:9 | super(...) | @@ -64,5 +64,5 @@ superCall | local_anonymous.kt:39:1:45:1 | super(...) | | local_anonymous.kt:40:14:44:5 | super(...) | | superChain.kt:1:1:1:33 | super(...) | -| superChain.kt:2:33:2:57 | super(...) | -| superChain.kt:3:33:3:57 | super(...) | +| superChain.kt:2:1:2:60 | super(...) | +| superChain.kt:3:1:3:60 | super(...) | diff --git a/java/ql/test-kotlin2/library-tests/classes/genericExprTypes.expected b/java/ql/test-kotlin2/library-tests/classes/genericExprTypes.expected index 2f7075c7e8e1..46522bd2145a 100644 --- a/java/ql/test-kotlin2/library-tests/classes/genericExprTypes.expected +++ b/java/ql/test-kotlin2/library-tests/classes/genericExprTypes.expected @@ -6,14 +6,14 @@ | generic_anonymous.kt:1:26:1:33 | t | T | | generic_anonymous.kt:1:26:1:33 | this | Generic | | generic_anonymous.kt:1:26:1:33 | this.t | T | -| generic_anonymous.kt:3:3:3:15 | T | T | -| generic_anonymous.kt:3:3:3:15 | new Object(...) { ... } | new Object(...) { ... } | -| generic_anonymous.kt:3:3:3:15 | this | Generic | -| generic_anonymous.kt:3:3:3:15 | this.x | new Object(...) { ... } | -| generic_anonymous.kt:3:3:5:3 | ...=... | new Object(...) { ... } | -| generic_anonymous.kt:3:3:5:3 | T | T | -| generic_anonymous.kt:3:3:5:3 | new Object(...) { ... } | new Object(...) { ... } | -| generic_anonymous.kt:3:3:5:3 | x | new Object(...) { ... } | +| generic_anonymous.kt:3:11:3:15 | T | T | +| generic_anonymous.kt:3:11:3:15 | new Object(...) { ... } | new Object(...) { ... } | +| generic_anonymous.kt:3:11:3:15 | this | Generic | +| generic_anonymous.kt:3:11:3:15 | this.x | new Object(...) { ... } | +| generic_anonymous.kt:3:11:5:3 | ...=... | new Object(...) { ... } | +| generic_anonymous.kt:3:11:5:3 | T | T | +| generic_anonymous.kt:3:11:5:3 | new Object(...) { ... } | new Object(...) { ... } | +| generic_anonymous.kt:3:11:5:3 | x | new Object(...) { ... } | | generic_anonymous.kt:3:19:5:3 | | new Object(...) { ... } | | generic_anonymous.kt:3:19:5:3 | Object | Object | | generic_anonymous.kt:3:19:5:3 | new (...) | new Object(...) { ... } | diff --git a/java/ql/test-kotlin2/library-tests/comments/comments.expected b/java/ql/test-kotlin2/library-tests/comments/comments.expected index 77a5ce164707..8c163a2a523d 100644 --- a/java/ql/test-kotlin2/library-tests/comments/comments.expected +++ b/java/ql/test-kotlin2/library-tests/comments/comments.expected @@ -18,9 +18,9 @@ comments commentOwners | comments.kt:1:1:1:36 | /** Kdoc owned by CompilationUnit */ | comments.kt:0:0:0:0 | comments | | comments.kt:4:1:11:3 | /**\n * A group of *members*.\n *\n * This class has no useful logic; it's just a documentation example.\n *\n * @property name the name of this group.\n * @constructor Creates an empty group.\n */ | comments.kt:12:1:31:1 | Group | -| comments.kt:14:5:16:7 | /**\n * Members of this group.\n */ | comments.kt:17:5:17:23 | getMembers$private | -| comments.kt:14:5:16:7 | /**\n * Members of this group.\n */ | comments.kt:17:5:17:46 | members | -| comments.kt:14:5:16:7 | /**\n * Members of this group.\n */ | comments.kt:17:5:17:46 | members | +| comments.kt:14:5:16:7 | /**\n * Members of this group.\n */ | comments.kt:17:13:17:23 | getMembers$private | +| comments.kt:14:5:16:7 | /**\n * Members of this group.\n */ | comments.kt:17:13:17:46 | members | +| comments.kt:14:5:16:7 | /**\n * Members of this group.\n */ | comments.kt:17:13:17:46 | members | | comments.kt:19:5:22:7 | /**\n * Adds a [member] to this group.\n * @return the new size of the group.\n */ | comments.kt:23:5:26:5 | add | | comments.kt:48:1:50:3 | /**\n * A type alias comment\n */ | comments.kt:51:1:51:24 | MyType | | comments.kt:61:5:63:7 | /**\n * A prop comment\n */ | comments.kt:64:5:68:17 | prop | diff --git a/java/ql/test-kotlin2/library-tests/companion_objects/method_accesses.expected b/java/ql/test-kotlin2/library-tests/companion_objects/method_accesses.expected index e414c95fd543..b02c862d300b 100644 --- a/java/ql/test-kotlin2/library-tests/companion_objects/method_accesses.expected +++ b/java/ql/test-kotlin2/library-tests/companion_objects/method_accesses.expected @@ -2,4 +2,4 @@ | companion_objects.kt:23:5:23:11 | MyClassCompanion | VarAccess | companion_objects.kt:4:9:4:31 | funInCompanion | | companion_objects.kt:24:5:24:13 | new MyClass(...) | ClassInstanceExpr | companion_objects.kt:2:5:2:23 | funInClass | | companion_objects.kt:25:5:25:15 | MyInterfaceCompanion | VarAccess | companion_objects.kt:11:9:11:31 | funInCompanion | -| companion_objects.kt:26:5:26:9 | new Imp(...) | ClassInstanceExpr | companion_objects.kt:16:5:18:5 | funInInterface | +| companion_objects.kt:26:5:26:9 | new Imp(...) | ClassInstanceExpr | companion_objects.kt:16:14:18:5 | funInInterface | diff --git a/java/ql/test-kotlin2/library-tests/data-classes/PrintAst.expected b/java/ql/test-kotlin2/library-tests/data-classes/PrintAst.expected index e601e1378a69..cce5f37dab9a 100644 --- a/java/ql/test-kotlin2/library-tests/data-classes/PrintAst.expected +++ b/java/ql/test-kotlin2/library-tests/data-classes/PrintAst.expected @@ -93,7 +93,7 @@ dc.kt: # 0| 0: [BooleanLiteral] false # 0| 2: [LocalVariableDeclStmt] var ...; # 0| 1: [LocalVariableDeclExpr] tmp0_other_with_cast -# 0| 0: [CastExpr] (...)... +# 0| 0: [ImplicitCastExpr] # 0| 0: [TypeAccess] ProtoMapValue # 0| 1: [VarAccess] other # 0| 3: [ExprStmt] ; diff --git a/java/ql/test-kotlin2/library-tests/data-classes/callees.expected b/java/ql/test-kotlin2/library-tests/data-classes/callees.expected index a0352c3ac723..f16c4ffb4352 100644 --- a/java/ql/test-kotlin2/library-tests/data-classes/callees.expected +++ b/java/ql/test-kotlin2/library-tests/data-classes/callees.expected @@ -4,4 +4,4 @@ | dc.kt:0:0:0:0 | new ProtoMapValue(...) | ProtoMapValue.ProtoMapValue | | dc.kt:0:0:0:0 | toString(...) | java.util.Arrays.toString | | dc.kt:0:0:0:0 | toString(...) | java.util.Arrays.toString | -| dc.kt:1:25:1:71 | super(...) | java.lang.Object.Object | +| dc.kt:1:1:1:71 | super(...) | java.lang.Object.Object | diff --git a/java/ql/test-kotlin2/library-tests/exprs/PrintAst.expected b/java/ql/test-kotlin2/library-tests/exprs/PrintAst.expected index 78fc858d028e..ce315c35ca63 100644 --- a/java/ql/test-kotlin2/library-tests/exprs/PrintAst.expected +++ b/java/ql/test-kotlin2/library-tests/exprs/PrintAst.expected @@ -2520,22 +2520,21 @@ exprs.kt: # 137| 0: [GTExpr] ... > ... # 137| 0: [VarAccess] variable # 137| 1: [IntegerLiteral] 0 -# 137| 1: [BlockStmt] { ... } -# 138| 0: [ExprStmt] ; -# 138| 0: [ImplicitCoercionToUnitExpr] -# 138| 0: [TypeAccess] Unit -# 138| 1: [StmtExpr] -# 138| 0: [BlockStmt] { ... } -# 138| 0: [LocalVariableDeclStmt] var ...; -# 138| 1: [LocalVariableDeclExpr] -# 138| 0: [VarAccess] variable -# 138| 1: [ExprStmt] ; -# 138| 0: [AssignExpr] ...=... -# 138| 0: [VarAccess] variable -# 138| 1: [MethodCall] dec(...) -# 138| -1: [VarAccess] -# 138| 2: [ExprStmt] ; -# 138| 0: [VarAccess] +# 138| 1: [ExprStmt] ; +# 138| 0: [ImplicitCoercionToUnitExpr] +# 138| 0: [TypeAccess] Unit +# 138| 1: [StmtExpr] +# 138| 0: [BlockStmt] { ... } +# 138| 0: [LocalVariableDeclStmt] var ...; +# 138| 1: [LocalVariableDeclExpr] +# 138| 0: [VarAccess] variable +# 138| 1: [ExprStmt] ; +# 138| 0: [AssignExpr] ...=... +# 138| 0: [VarAccess] variable +# 138| 1: [MethodCall] dec(...) +# 138| -1: [VarAccess] +# 138| 2: [ExprStmt] ; +# 138| 0: [VarAccess] # 141| 119: [ReturnStmt] return ... # 141| 0: [AddExpr] ... + ... # 141| 0: [IntegerLiteral] 123 @@ -2624,7 +2623,9 @@ exprs.kt: # 167| 1: [BlockStmt] { ... } # 168| 0: [LocalVariableDeclStmt] var ...; # 168| 1: [LocalVariableDeclExpr] r2 -# 168| 0: [VarAccess] r +# 168| 0: [ImplicitCastExpr] +# 168| 0: [TypeAccess] Rectangle +# 168| 1: [VarAccess] r # 169| 1: [LocalVariableDeclStmt] var ...; # 169| 1: [LocalVariableDeclExpr] height # 169| 0: [VarAccess] r2.height @@ -3519,7 +3520,9 @@ exprs.kt: # 212| 1: [LocalVariableDeclExpr] b3 # 212| 0: [AddExpr] ... + ... # 212| 0: [NotNullExpr] ...!! -# 212| 0: [VarAccess] s +# 212| 0: [ImplicitCastExpr] +# 212| 0: [TypeAccess] String +# 212| 1: [VarAccess] s # 212| 1: [IntegerLiteral] 5 # 213| 5: [LocalVariableDeclStmt] var ...; # 213| 1: [LocalVariableDeclExpr] c0 diff --git a/java/ql/test-kotlin2/library-tests/exprs/exprs.expected b/java/ql/test-kotlin2/library-tests/exprs/exprs.expected index 001794509ffb..8c86fe5a1b27 100644 --- a/java/ql/test-kotlin2/library-tests/exprs/exprs.expected +++ b/java/ql/test-kotlin2/library-tests/exprs/exprs.expected @@ -129,20 +129,20 @@ | delegatedProperties.kt:26:13:26:28 | curValue | delegatedProperties.kt:25:64:31:9 | | VarAccess | | delegatedProperties.kt:26:13:26:28 | int | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:26:28:26:28 | 0 | delegatedProperties.kt:25:64:31:9 | | IntegerLiteral | -| delegatedProperties.kt:27:13:27:88 | int | file://:0:0:0:0 | | TypeAccess | +| delegatedProperties.kt:27:22:27:88 | int | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:27:35:27:47 | Object | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:27:50:27:71 | ? ... | file://:0:0:0:0 | | WildcardTypeAccess | | delegatedProperties.kt:27:50:27:71 | KProperty | file://:0:0:0:0 | | TypeAccess | -| delegatedProperties.kt:27:81:27:88 | getCurValue(...) | delegatedProperties.kt:27:13:27:88 | getValue | MethodCall | -| delegatedProperties.kt:27:81:27:88 | this | delegatedProperties.kt:27:13:27:88 | getValue | ThisAccess | -| delegatedProperties.kt:28:13:30:13 | Unit | file://:0:0:0:0 | | TypeAccess | +| delegatedProperties.kt:27:81:27:88 | getCurValue(...) | delegatedProperties.kt:27:22:27:88 | getValue | MethodCall | +| delegatedProperties.kt:27:81:27:88 | this | delegatedProperties.kt:27:22:27:88 | getValue | ThisAccess | +| delegatedProperties.kt:28:22:30:13 | Unit | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:28:35:28:47 | Object | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:28:50:28:71 | ? ... | file://:0:0:0:0 | | WildcardTypeAccess | | delegatedProperties.kt:28:50:28:71 | KProperty | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:28:74:28:83 | int | file://:0:0:0:0 | | TypeAccess | -| delegatedProperties.kt:29:17:29:32 | setCurValue(...) | delegatedProperties.kt:28:13:30:13 | setValue | MethodCall | -| delegatedProperties.kt:29:17:29:32 | this | delegatedProperties.kt:28:13:30:13 | setValue | ThisAccess | -| delegatedProperties.kt:29:28:29:32 | value | delegatedProperties.kt:28:13:30:13 | setValue | VarAccess | +| delegatedProperties.kt:29:17:29:32 | setCurValue(...) | delegatedProperties.kt:28:22:30:13 | setValue | MethodCall | +| delegatedProperties.kt:29:17:29:32 | this | delegatedProperties.kt:28:22:30:13 | setValue | ThisAccess | +| delegatedProperties.kt:29:28:29:32 | value | delegatedProperties.kt:28:22:30:13 | setValue | VarAccess | | delegatedProperties.kt:33:9:33:76 | int | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:33:9:33:76 | readOnly$delegate | delegatedProperties.kt:18:5:40:5 | fn | LocalVariableDeclExpr | | delegatedProperties.kt:33:30:33:47 | ...::... | delegatedProperties.kt:33:9:33:76 | | PropertyRefExpr | @@ -265,22 +265,22 @@ | delegatedProperties.kt:42:30:42:47 | this.varResource0$delegate | delegatedProperties.kt:42:5:42:47 | getVarResource0 | VarAccess | | delegatedProperties.kt:42:30:42:47 | this.varResource0$delegate | delegatedProperties.kt:42:5:42:47 | setVarResource0 | VarAccess | | delegatedProperties.kt:42:30:42:47 | varResource0$delegate | delegatedProperties.kt:17:1:43:1 | Owner | VarAccess | -| delegatedProperties.kt:46:5:48:5 | int | file://:0:0:0:0 | | TypeAccess | +| delegatedProperties.kt:46:14:48:5 | int | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:46:27:46:41 | Owner | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:46:44:46:65 | ? ... | file://:0:0:0:0 | | WildcardTypeAccess | | delegatedProperties.kt:46:44:46:65 | KProperty | file://:0:0:0:0 | | TypeAccess | -| delegatedProperties.kt:47:16:47:16 | 1 | delegatedProperties.kt:46:5:48:5 | getValue | IntegerLiteral | -| delegatedProperties.kt:49:5:50:5 | Unit | file://:0:0:0:0 | | TypeAccess | +| delegatedProperties.kt:47:16:47:16 | 1 | delegatedProperties.kt:46:14:48:5 | getValue | IntegerLiteral | +| delegatedProperties.kt:49:14:50:5 | Unit | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:49:27:49:41 | Owner | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:49:44:49:65 | ? ... | file://:0:0:0:0 | | WildcardTypeAccess | | delegatedProperties.kt:49:44:49:65 | KProperty | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:49:68:49:78 | Integer | file://:0:0:0:0 | | TypeAccess | -| delegatedProperties.kt:54:5:57:5 | ResourceDelegate | file://:0:0:0:0 | | TypeAccess | +| delegatedProperties.kt:54:14:57:5 | ResourceDelegate | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:54:34:54:48 | Owner | file://:0:0:0:0 | | TypeAccess | | delegatedProperties.kt:54:51:54:68 | ? ... | file://:0:0:0:0 | | WildcardTypeAccess | | delegatedProperties.kt:54:51:54:68 | KProperty | file://:0:0:0:0 | | TypeAccess | -| delegatedProperties.kt:56:16:56:33 | ResourceDelegate | delegatedProperties.kt:54:5:57:5 | provideDelegate | TypeAccess | -| delegatedProperties.kt:56:16:56:33 | new ResourceDelegate(...) | delegatedProperties.kt:54:5:57:5 | provideDelegate | ClassInstanceExpr | +| delegatedProperties.kt:56:16:56:33 | ResourceDelegate | delegatedProperties.kt:54:14:57:5 | provideDelegate | TypeAccess | +| delegatedProperties.kt:56:16:56:33 | new ResourceDelegate(...) | delegatedProperties.kt:54:14:57:5 | provideDelegate | ClassInstanceExpr | | delegatedProperties.kt:60:1:60:20 | ...=... | delegatedProperties.kt:60:1:60:20 | setTopLevelInt | AssignExpr | | delegatedProperties.kt:60:1:60:20 | | delegatedProperties.kt:60:1:60:20 | setTopLevelInt | VarAccess | | delegatedProperties.kt:60:1:60:20 | DelegatedPropertiesKt | delegatedProperties.kt:60:1:60:20 | getTopLevelInt | TypeAccess | @@ -1461,6 +1461,8 @@ | exprs.kt:167:8:167:16 | ... (value not-equals) ... | exprs.kt:165:1:172:1 | foo | ValueNEExpr | | exprs.kt:167:13:167:16 | null | exprs.kt:165:1:172:1 | foo | NullLiteral | | exprs.kt:168:9:168:29 | r2 | exprs.kt:165:1:172:1 | foo | LocalVariableDeclExpr | +| exprs.kt:168:29:168:29 | | exprs.kt:165:1:172:1 | foo | ImplicitCastExpr | +| exprs.kt:168:29:168:29 | Rectangle | exprs.kt:165:1:172:1 | foo | TypeAccess | | exprs.kt:168:29:168:29 | r | exprs.kt:165:1:172:1 | foo | VarAccess | | exprs.kt:169:9:169:30 | height | exprs.kt:165:1:172:1 | foo | LocalVariableDeclExpr | | exprs.kt:169:22:169:23 | r2 | exprs.kt:165:1:172:1 | foo | VarAccess | @@ -1499,12 +1501,12 @@ | exprs.kt:175:25:175:28 | Direction | file://:0:0:0:0 | | TypeAccess | | exprs.kt:175:25:175:28 | Direction.EAST | exprs.kt:0:0:0:0 | | VarAccess | | exprs.kt:175:25:175:28 | new Direction(...) | exprs.kt:0:0:0:0 | | ClassInstanceExpr | +| exprs.kt:178:1:182:1 | 0 | exprs.kt:178:17:178:30 | Color | IntegerLiteral | +| exprs.kt:178:1:182:1 | Color | exprs.kt:178:17:178:30 | Color | TypeAccess | +| exprs.kt:178:1:182:1 | Enum | exprs.kt:178:17:178:30 | Color | TypeAccess | | exprs.kt:178:1:182:1 | String | file://:0:0:0:0 | | TypeAccess | -| exprs.kt:178:17:178:30 | 0 | exprs.kt:178:17:178:30 | Color | IntegerLiteral | -| exprs.kt:178:17:178:30 | Color | exprs.kt:178:17:178:30 | Color | TypeAccess | -| exprs.kt:178:17:178:30 | Enum | exprs.kt:178:17:178:30 | Color | TypeAccess | -| exprs.kt:178:17:178:30 | new Enum(...) | exprs.kt:178:17:178:30 | Color | ClassInstanceExpr | -| exprs.kt:178:17:178:30 | null | exprs.kt:178:17:178:30 | Color | NullLiteral | +| exprs.kt:178:1:182:1 | new Enum(...) | exprs.kt:178:17:178:30 | Color | ClassInstanceExpr | +| exprs.kt:178:1:182:1 | null | exprs.kt:178:17:178:30 | Color | NullLiteral | | exprs.kt:178:18:178:29 | ...=... | exprs.kt:178:17:178:30 | Color | KtInitializerAssignExpr | | exprs.kt:178:18:178:29 | int | file://:0:0:0:0 | | TypeAccess | | exprs.kt:178:18:178:29 | int | file://:0:0:0:0 | | TypeAccess | @@ -1548,12 +1550,12 @@ | exprs.kt:192:5:192:14 | a1 | exprs.kt:191:1:199:1 | Class1 | VarAccess | | exprs.kt:192:5:192:14 | int | file://:0:0:0:0 | | TypeAccess | | exprs.kt:192:14:192:14 | 1 | exprs.kt:191:1:199:1 | Class1 | IntegerLiteral | -| exprs.kt:193:5:198:5 | Object | file://:0:0:0:0 | | TypeAccess | -| exprs.kt:194:9:194:18 | a2 | exprs.kt:193:5:198:5 | getObject | LocalVariableDeclExpr | -| exprs.kt:194:18:194:18 | 2 | exprs.kt:193:5:198:5 | getObject | IntegerLiteral | -| exprs.kt:195:16:197:9 | | exprs.kt:193:5:198:5 | getObject | StmtExpr | -| exprs.kt:195:16:197:9 | Interface1 | exprs.kt:193:5:198:5 | getObject | TypeAccess | -| exprs.kt:195:16:197:9 | new (...) | exprs.kt:193:5:198:5 | getObject | ClassInstanceExpr | +| exprs.kt:193:13:198:5 | Object | file://:0:0:0:0 | | TypeAccess | +| exprs.kt:194:9:194:18 | a2 | exprs.kt:193:13:198:5 | getObject | LocalVariableDeclExpr | +| exprs.kt:194:18:194:18 | 2 | exprs.kt:193:13:198:5 | getObject | IntegerLiteral | +| exprs.kt:195:16:197:9 | | exprs.kt:193:13:198:5 | getObject | StmtExpr | +| exprs.kt:195:16:197:9 | Interface1 | exprs.kt:193:13:198:5 | getObject | TypeAccess | +| exprs.kt:195:16:197:9 | new (...) | exprs.kt:193:13:198:5 | getObject | ClassInstanceExpr | | exprs.kt:196:13:196:26 | String | file://:0:0:0:0 | | TypeAccess | | exprs.kt:196:13:196:26 | this | exprs.kt:196:13:196:26 | getA3 | ThisAccess | | exprs.kt:196:13:196:26 | this.a3 | exprs.kt:196:13:196:26 | getA3 | VarAccess | @@ -1593,6 +1595,8 @@ | exprs.kt:211:19:211:29 | ... + ... | exprs.kt:206:5:217:5 | x | AddExpr | | exprs.kt:211:28:211:28 | 5 | exprs.kt:206:5:217:5 | x | IntegerLiteral | | exprs.kt:212:9:212:25 | b3 | exprs.kt:206:5:217:5 | x | LocalVariableDeclExpr | +| exprs.kt:212:19:212:19 | | exprs.kt:206:5:217:5 | x | ImplicitCastExpr | +| exprs.kt:212:19:212:19 | String | exprs.kt:206:5:217:5 | x | TypeAccess | | exprs.kt:212:19:212:19 | s | exprs.kt:206:5:217:5 | x | VarAccess | | exprs.kt:212:19:212:21 | ...!! | exprs.kt:206:5:217:5 | x | NotNullExpr | | exprs.kt:212:19:212:25 | ... + ... | exprs.kt:206:5:217:5 | x | AddExpr | @@ -1754,9 +1758,9 @@ | exprs.kt:274:3:274:14 | ...%=... | exprs.kt:267:1:276:1 | inPlaceOperators | AssignRemExpr | | exprs.kt:274:3:274:14 | updated | exprs.kt:267:1:276:1 | inPlaceOperators | VarAccess | | exprs.kt:274:14:274:14 | 1 | exprs.kt:267:1:276:1 | inPlaceOperators | IntegerLiteral | -| exprs.kt:278:1:278:66 | T | file://:0:0:0:0 | | TypeAccess | -| exprs.kt:278:1:278:66 | T[] | file://:0:0:0:0 | | TypeAccess | -| exprs.kt:278:52:278:66 | | exprs.kt:278:1:278:66 | getEnumValues | ErrorExpr | +| exprs.kt:278:8:278:66 | T | file://:0:0:0:0 | | TypeAccess | +| exprs.kt:278:8:278:66 | T[] | file://:0:0:0:0 | | TypeAccess | +| exprs.kt:278:52:278:66 | | exprs.kt:278:8:278:66 | getEnumValues | ErrorExpr | | exprs.kt:280:1:283:1 | Unit | file://:0:0:0:0 | | TypeAccess | | exprs.kt:281:5:281:23 | | exprs.kt:280:1:283:1 | callToEnumValues | ImplicitCoercionToUnitExpr | | exprs.kt:281:5:281:23 | Color | exprs.kt:280:1:283:1 | callToEnumValues | TypeAccess | @@ -3167,9 +3171,9 @@ | funcExprs.kt:51:8:51:16 | FuncRef | funcExprs.kt:51:8:51:16 | invoke | TypeAccess | | funcExprs.kt:51:8:51:16 | Function0 | funcExprs.kt:21:1:52:1 | call | TypeAccess | | funcExprs.kt:51:8:51:16 | new FuncRef(...) | funcExprs.kt:51:8:51:16 | invoke | ClassInstanceExpr | -| funcExprs.kt:55:5:55:49 | int | file://:0:0:0:0 | | TypeAccess | +| funcExprs.kt:55:23:55:49 | int | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:55:34:55:39 | int | file://:0:0:0:0 | | TypeAccess | -| funcExprs.kt:55:49:55:49 | 5 | funcExprs.kt:55:5:55:49 | invoke | IntegerLiteral | +| funcExprs.kt:55:49:55:49 | 5 | funcExprs.kt:55:23:55:49 | invoke | IntegerLiteral | | funcExprs.kt:58:1:58:25 | Unit | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:58:12:58:21 | ? ... | file://:0:0:0:0 | | WildcardTypeAccess | | funcExprs.kt:58:12:58:21 | Function0 | file://:0:0:0:0 | | TypeAccess | @@ -3247,43 +3251,43 @@ | funcExprs.kt:75:14:75:14 | Generic | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:75:14:75:14 | Integer | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:75:19:75:21 | "a" | funcExprs.kt:75:12:75:22 | invoke | StringLiteral | -| funcExprs.kt:77:5:77:60 | Unit | file://:0:0:0:0 | | TypeAccess | +| funcExprs.kt:77:13:77:60 | Unit | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:77:20:77:55 | ? ... | file://:0:0:0:0 | | WildcardTypeAccess | | funcExprs.kt:77:20:77:55 | Function1>,String> | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:77:20:77:55 | Generic> | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:77:20:77:55 | Generic | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:77:20:77:55 | Integer | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:77:20:77:55 | String | file://:0:0:0:0 | | TypeAccess | -| funcExprs.kt:82:1:96:1 | Unit | file://:0:0:0:0 | | TypeAccess | -| funcExprs.kt:83:5:83:51 | l1 | funcExprs.kt:82:1:96:1 | fn | LocalVariableDeclExpr | -| funcExprs.kt:83:31:83:51 | ...->... | funcExprs.kt:82:1:96:1 | fn | LambdaExpr | -| funcExprs.kt:83:31:83:51 | Function1 | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:83:31:83:51 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | +| funcExprs.kt:82:9:96:1 | Unit | file://:0:0:0:0 | | TypeAccess | +| funcExprs.kt:83:5:83:51 | l1 | funcExprs.kt:82:9:96:1 | fn | LocalVariableDeclExpr | +| funcExprs.kt:83:31:83:51 | ...->... | funcExprs.kt:82:9:96:1 | fn | LambdaExpr | +| funcExprs.kt:83:31:83:51 | Function1 | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:83:31:83:51 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | | funcExprs.kt:83:31:83:51 | String | file://:0:0:0:0 | | TypeAccess | -| funcExprs.kt:83:31:83:51 | String | funcExprs.kt:82:1:96:1 | fn | TypeAccess | +| funcExprs.kt:83:31:83:51 | String | funcExprs.kt:82:9:96:1 | fn | TypeAccess | | funcExprs.kt:83:33:83:33 | int | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:83:38:83:38 | i | funcExprs.kt:83:31:83:51 | invoke | VarAccess | | funcExprs.kt:83:38:83:49 | toString(...) | funcExprs.kt:83:31:83:51 | invoke | MethodCall | -| funcExprs.kt:84:5:84:6 | l1 | funcExprs.kt:82:1:96:1 | fn | VarAccess | -| funcExprs.kt:84:5:84:16 | invoke(...) | funcExprs.kt:82:1:96:1 | fn | MethodCall | -| funcExprs.kt:84:8:84:16 | | funcExprs.kt:82:1:96:1 | fn | ImplicitCoercionToUnitExpr | -| funcExprs.kt:84:8:84:16 | Unit | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:84:15:84:15 | 5 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:86:5:86:59 | l2 | funcExprs.kt:82:1:96:1 | fn | LocalVariableDeclExpr | -| funcExprs.kt:86:39:86:59 | ...->... | funcExprs.kt:82:1:96:1 | fn | LambdaExpr | -| funcExprs.kt:86:39:86:59 | Function1 | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:86:39:86:59 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | +| funcExprs.kt:84:5:84:6 | l1 | funcExprs.kt:82:9:96:1 | fn | VarAccess | +| funcExprs.kt:84:5:84:16 | invoke(...) | funcExprs.kt:82:9:96:1 | fn | MethodCall | +| funcExprs.kt:84:8:84:16 | | funcExprs.kt:82:9:96:1 | fn | ImplicitCoercionToUnitExpr | +| funcExprs.kt:84:8:84:16 | Unit | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:84:15:84:15 | 5 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:86:5:86:59 | l2 | funcExprs.kt:82:9:96:1 | fn | LocalVariableDeclExpr | +| funcExprs.kt:86:39:86:59 | ...->... | funcExprs.kt:82:9:96:1 | fn | LambdaExpr | +| funcExprs.kt:86:39:86:59 | Function1 | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:86:39:86:59 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | | funcExprs.kt:86:39:86:59 | String | file://:0:0:0:0 | | TypeAccess | -| funcExprs.kt:86:39:86:59 | String | funcExprs.kt:82:1:96:1 | fn | TypeAccess | +| funcExprs.kt:86:39:86:59 | String | funcExprs.kt:82:9:96:1 | fn | TypeAccess | | funcExprs.kt:86:41:86:41 | int | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:86:46:86:46 | i | funcExprs.kt:86:39:86:59 | invoke | VarAccess | | funcExprs.kt:86:46:86:57 | toString(...) | funcExprs.kt:86:39:86:59 | invoke | MethodCall | -| funcExprs.kt:87:5:87:6 | l2 | funcExprs.kt:82:1:96:1 | fn | VarAccess | -| funcExprs.kt:87:5:87:16 | invoke(...) | funcExprs.kt:82:1:96:1 | fn | MethodCall | -| funcExprs.kt:87:8:87:16 | | funcExprs.kt:82:1:96:1 | fn | ImplicitCoercionToUnitExpr | -| funcExprs.kt:87:8:87:16 | Unit | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:87:15:87:15 | 5 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:89:5:90:69 | l3 | funcExprs.kt:82:1:96:1 | fn | LocalVariableDeclExpr | +| funcExprs.kt:87:5:87:6 | l2 | funcExprs.kt:82:9:96:1 | fn | VarAccess | +| funcExprs.kt:87:5:87:16 | invoke(...) | funcExprs.kt:82:9:96:1 | fn | MethodCall | +| funcExprs.kt:87:8:87:16 | | funcExprs.kt:82:9:96:1 | fn | ImplicitCoercionToUnitExpr | +| funcExprs.kt:87:8:87:16 | Unit | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:87:15:87:15 | 5 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:89:5:90:69 | l3 | funcExprs.kt:82:9:96:1 | fn | LocalVariableDeclExpr | | funcExprs.kt:90:15:90:69 | 0 | funcExprs.kt:90:15:90:69 | invoke | IntegerLiteral | | funcExprs.kt:90:15:90:69 | 1 | funcExprs.kt:90:15:90:69 | invoke | IntegerLiteral | | funcExprs.kt:90:15:90:69 | 2 | funcExprs.kt:90:15:90:69 | invoke | IntegerLiteral | @@ -3330,7 +3334,7 @@ | funcExprs.kt:90:15:90:69 | (...)... | funcExprs.kt:90:15:90:69 | invoke | CastExpr | | funcExprs.kt:90:15:90:69 | (...)... | funcExprs.kt:90:15:90:69 | invoke | CastExpr | | funcExprs.kt:90:15:90:69 | (...)... | funcExprs.kt:90:15:90:69 | invoke | CastExpr | -| funcExprs.kt:90:15:90:69 | ...->... | funcExprs.kt:82:1:96:1 | fn | LambdaExpr | +| funcExprs.kt:90:15:90:69 | ...->... | funcExprs.kt:82:9:96:1 | fn | LambdaExpr | | funcExprs.kt:90:15:90:69 | ...[...] | funcExprs.kt:90:15:90:69 | invoke | ArrayAccess | | funcExprs.kt:90:15:90:69 | ...[...] | funcExprs.kt:90:15:90:69 | invoke | ArrayAccess | | funcExprs.kt:90:15:90:69 | ...[...] | funcExprs.kt:90:15:90:69 | invoke | ArrayAccess | @@ -3354,9 +3358,9 @@ | funcExprs.kt:90:15:90:69 | ...[...] | funcExprs.kt:90:15:90:69 | invoke | ArrayAccess | | funcExprs.kt:90:15:90:69 | ...[...] | funcExprs.kt:90:15:90:69 | invoke | ArrayAccess | | funcExprs.kt:90:15:90:69 | ...[...] | funcExprs.kt:90:15:90:69 | invoke | ArrayAccess | -| funcExprs.kt:90:15:90:69 | FunctionN | funcExprs.kt:82:1:96:1 | fn | TypeAccess | +| funcExprs.kt:90:15:90:69 | FunctionN | funcExprs.kt:82:9:96:1 | fn | TypeAccess | | funcExprs.kt:90:15:90:69 | String | file://:0:0:0:0 | | TypeAccess | -| funcExprs.kt:90:15:90:69 | String | funcExprs.kt:82:1:96:1 | fn | TypeAccess | +| funcExprs.kt:90:15:90:69 | String | funcExprs.kt:82:9:96:1 | fn | TypeAccess | | funcExprs.kt:90:15:90:69 | a0 | funcExprs.kt:90:15:90:69 | invoke | VarAccess | | funcExprs.kt:90:15:90:69 | a0 | funcExprs.kt:90:15:90:69 | invoke | VarAccess | | funcExprs.kt:90:15:90:69 | a0 | funcExprs.kt:90:15:90:69 | invoke | VarAccess | @@ -3429,64 +3433,64 @@ | funcExprs.kt:90:59:90:59 | int | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:90:61:90:61 | int | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:90:67:90:68 | "" | funcExprs.kt:90:15:90:69 | invoke | StringLiteral | -| funcExprs.kt:91:5:91:6 | l3 | funcExprs.kt:82:1:96:1 | fn | VarAccess | -| funcExprs.kt:91:5:91:60 | 23 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:5:91:60 | Object | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:91:5:91:60 | invoke(...) | funcExprs.kt:82:1:96:1 | fn | MethodCall | -| funcExprs.kt:91:5:91:60 | new Object[] | funcExprs.kt:82:1:96:1 | fn | ArrayCreationExpr | -| funcExprs.kt:91:5:91:60 | {...} | funcExprs.kt:82:1:96:1 | fn | ArrayInit | -| funcExprs.kt:91:8:91:60 | | funcExprs.kt:82:1:96:1 | fn | ImplicitCoercionToUnitExpr | -| funcExprs.kt:91:8:91:60 | Unit | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:91:15:91:15 | 1 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:17:91:17 | 2 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:19:91:19 | 3 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:21:91:21 | 4 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:23:91:23 | 5 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:25:91:25 | 6 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:27:91:27 | 7 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:29:91:29 | 8 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:31:91:31 | 9 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:33:91:33 | 0 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:35:91:35 | 1 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:37:91:37 | 2 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:39:91:39 | 3 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:41:91:41 | 4 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:43:91:43 | 5 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:45:91:45 | 6 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:47:91:47 | 7 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:49:91:49 | 8 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:51:91:51 | 9 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:53:91:53 | 0 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:55:91:55 | 1 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:57:91:57 | 2 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:91:59:91:59 | 3 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:93:5:94:67 | l4 | funcExprs.kt:82:1:96:1 | fn | LocalVariableDeclExpr | -| funcExprs.kt:94:15:94:67 | ...->... | funcExprs.kt:82:1:96:1 | fn | LambdaExpr | -| funcExprs.kt:94:15:94:67 | Function22 | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:1:96:1 | fn | TypeAccess | +| funcExprs.kt:91:5:91:6 | l3 | funcExprs.kt:82:9:96:1 | fn | VarAccess | +| funcExprs.kt:91:5:91:60 | 23 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:5:91:60 | Object | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:91:5:91:60 | invoke(...) | funcExprs.kt:82:9:96:1 | fn | MethodCall | +| funcExprs.kt:91:5:91:60 | new Object[] | funcExprs.kt:82:9:96:1 | fn | ArrayCreationExpr | +| funcExprs.kt:91:5:91:60 | {...} | funcExprs.kt:82:9:96:1 | fn | ArrayInit | +| funcExprs.kt:91:8:91:60 | | funcExprs.kt:82:9:96:1 | fn | ImplicitCoercionToUnitExpr | +| funcExprs.kt:91:8:91:60 | Unit | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:91:15:91:15 | 1 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:17:91:17 | 2 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:19:91:19 | 3 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:21:91:21 | 4 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:23:91:23 | 5 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:25:91:25 | 6 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:27:91:27 | 7 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:29:91:29 | 8 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:31:91:31 | 9 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:33:91:33 | 0 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:35:91:35 | 1 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:37:91:37 | 2 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:39:91:39 | 3 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:41:91:41 | 4 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:43:91:43 | 5 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:45:91:45 | 6 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:47:91:47 | 7 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:49:91:49 | 8 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:51:91:51 | 9 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:53:91:53 | 0 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:55:91:55 | 1 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:57:91:57 | 2 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:91:59:91:59 | 3 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:93:5:94:67 | l4 | funcExprs.kt:82:9:96:1 | fn | LocalVariableDeclExpr | +| funcExprs.kt:94:15:94:67 | ...->... | funcExprs.kt:82:9:96:1 | fn | LambdaExpr | +| funcExprs.kt:94:15:94:67 | Function22 | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | Integer | funcExprs.kt:82:9:96:1 | fn | TypeAccess | | funcExprs.kt:94:15:94:67 | String | file://:0:0:0:0 | | TypeAccess | -| funcExprs.kt:94:15:94:67 | String | funcExprs.kt:82:1:96:1 | fn | TypeAccess | +| funcExprs.kt:94:15:94:67 | String | funcExprs.kt:82:9:96:1 | fn | TypeAccess | | funcExprs.kt:94:17:94:17 | int | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:94:19:94:19 | int | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:94:21:94:21 | int | file://:0:0:0:0 | | TypeAccess | @@ -3510,32 +3514,32 @@ | funcExprs.kt:94:57:94:57 | int | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:94:59:94:59 | int | file://:0:0:0:0 | | TypeAccess | | funcExprs.kt:94:65:94:66 | "" | funcExprs.kt:94:15:94:67 | invoke | StringLiteral | -| funcExprs.kt:95:5:95:6 | l4 | funcExprs.kt:82:1:96:1 | fn | VarAccess | -| funcExprs.kt:95:5:95:58 | invoke(...) | funcExprs.kt:82:1:96:1 | fn | MethodCall | -| funcExprs.kt:95:8:95:58 | | funcExprs.kt:82:1:96:1 | fn | ImplicitCoercionToUnitExpr | -| funcExprs.kt:95:8:95:58 | Unit | funcExprs.kt:82:1:96:1 | fn | TypeAccess | -| funcExprs.kt:95:15:95:15 | 1 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:17:95:17 | 2 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:19:95:19 | 3 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:21:95:21 | 4 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:23:95:23 | 5 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:25:95:25 | 6 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:27:95:27 | 7 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:29:95:29 | 8 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:31:95:31 | 9 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:33:95:33 | 0 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:35:95:35 | 1 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:37:95:37 | 2 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:39:95:39 | 3 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:41:95:41 | 4 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:43:95:43 | 5 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:45:95:45 | 6 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:47:95:47 | 7 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:49:95:49 | 8 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:51:95:51 | 9 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:53:95:53 | 0 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:55:95:55 | 1 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | -| funcExprs.kt:95:57:95:57 | 2 | funcExprs.kt:82:1:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:5:95:6 | l4 | funcExprs.kt:82:9:96:1 | fn | VarAccess | +| funcExprs.kt:95:5:95:58 | invoke(...) | funcExprs.kt:82:9:96:1 | fn | MethodCall | +| funcExprs.kt:95:8:95:58 | | funcExprs.kt:82:9:96:1 | fn | ImplicitCoercionToUnitExpr | +| funcExprs.kt:95:8:95:58 | Unit | funcExprs.kt:82:9:96:1 | fn | TypeAccess | +| funcExprs.kt:95:15:95:15 | 1 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:17:95:17 | 2 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:19:95:19 | 3 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:21:95:21 | 4 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:23:95:23 | 5 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:25:95:25 | 6 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:27:95:27 | 7 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:29:95:29 | 8 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:31:95:31 | 9 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:33:95:33 | 0 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:35:95:35 | 1 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:37:95:37 | 2 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:39:95:39 | 3 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:41:95:41 | 4 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:43:95:43 | 5 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:45:95:45 | 6 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:47:95:47 | 7 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:49:95:49 | 8 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:51:95:51 | 9 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:53:95:53 | 0 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:55:95:55 | 1 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | +| funcExprs.kt:95:57:95:57 | 2 | funcExprs.kt:82:9:96:1 | fn | IntegerLiteral | | kFunctionInvoke.kt:4:5:4:24 | Unit | file://:0:0:0:0 | | TypeAccess | | kFunctionInvoke.kt:4:11:4:19 | String | file://:0:0:0:0 | | TypeAccess | | kFunctionInvoke.kt:7:1:10:1 | Unit | file://:0:0:0:0 | | TypeAccess | @@ -4254,20 +4258,20 @@ | samConversion.kt:46:39:46:42 | true | samConversion.kt:46:32:46:44 | invoke | BooleanLiteral | | samConversion.kt:50:5:50:25 | boolean | file://:0:0:0:0 | | TypeAccess | | samConversion.kt:50:12:50:15 | T | file://:0:0:0:0 | | TypeAccess | -| samConversion.kt:54:5:54:35 | Unit | file://:0:0:0:0 | | TypeAccess | +| samConversion.kt:54:13:54:35 | Unit | file://:0:0:0:0 | | TypeAccess | | samConversion.kt:54:21:54:26 | int | file://:0:0:0:0 | | TypeAccess | | samConversion.kt:54:29:54:34 | int | file://:0:0:0:0 | | TypeAccess | -| samConversion.kt:57:1:60:1 | Unit | file://:0:0:0:0 | | TypeAccess | -| samConversion.kt:58:5:58:45 | i0 | samConversion.kt:57:1:60:1 | test | LocalVariableDeclExpr | -| samConversion.kt:58:14:58:45 | (...)... | samConversion.kt:57:1:60:1 | test | CastExpr | +| samConversion.kt:57:9:60:1 | Unit | file://:0:0:0:0 | | TypeAccess | +| samConversion.kt:58:5:58:45 | i0 | samConversion.kt:57:9:60:1 | test | LocalVariableDeclExpr | +| samConversion.kt:58:14:58:45 | (...)... | samConversion.kt:57:9:60:1 | test | CastExpr | | samConversion.kt:58:14:58:45 | ...=... | samConversion.kt:58:14:58:45 | | AssignExpr | | samConversion.kt:58:14:58:45 | | samConversion.kt:58:14:58:45 | | VarAccess | | samConversion.kt:58:14:58:45 | | samConversion.kt:58:14:58:45 | fn1 | VarAccess | | samConversion.kt:58:14:58:45 | Function2 | file://:0:0:0:0 | | TypeAccess | | samConversion.kt:58:14:58:45 | Integer | file://:0:0:0:0 | | TypeAccess | | samConversion.kt:58:14:58:45 | Integer | file://:0:0:0:0 | | TypeAccess | -| samConversion.kt:58:14:58:45 | InterfaceFn1Sus | samConversion.kt:57:1:60:1 | test | TypeAccess | -| samConversion.kt:58:14:58:45 | InterfaceFn1Sus | samConversion.kt:57:1:60:1 | test | TypeAccess | +| samConversion.kt:58:14:58:45 | InterfaceFn1Sus | samConversion.kt:57:9:60:1 | test | TypeAccess | +| samConversion.kt:58:14:58:45 | InterfaceFn1Sus | samConversion.kt:57:9:60:1 | test | TypeAccess | | samConversion.kt:58:14:58:45 | Unit | file://:0:0:0:0 | | TypeAccess | | samConversion.kt:58:14:58:45 | Unit | file://:0:0:0:0 | | TypeAccess | | samConversion.kt:58:14:58:45 | i | samConversion.kt:58:14:58:45 | fn1 | VarAccess | @@ -4275,22 +4279,22 @@ | samConversion.kt:58:14:58:45 | int | file://:0:0:0:0 | | TypeAccess | | samConversion.kt:58:14:58:45 | invoke(...) | samConversion.kt:58:14:58:45 | fn1 | MethodCall | | samConversion.kt:58:14:58:45 | j | samConversion.kt:58:14:58:45 | fn1 | VarAccess | -| samConversion.kt:58:14:58:45 | new (...) | samConversion.kt:57:1:60:1 | test | ClassInstanceExpr | +| samConversion.kt:58:14:58:45 | new (...) | samConversion.kt:57:9:60:1 | test | ClassInstanceExpr | | samConversion.kt:58:14:58:45 | this | samConversion.kt:58:14:58:45 | | ThisAccess | | samConversion.kt:58:14:58:45 | this. | samConversion.kt:58:14:58:45 | | VarAccess | -| samConversion.kt:58:30:58:45 | ...->... | samConversion.kt:57:1:60:1 | test | LambdaExpr | -| samConversion.kt:58:30:58:45 | Function2 | samConversion.kt:57:1:60:1 | test | TypeAccess | -| samConversion.kt:58:30:58:45 | Integer | samConversion.kt:57:1:60:1 | test | TypeAccess | -| samConversion.kt:58:30:58:45 | Integer | samConversion.kt:57:1:60:1 | test | TypeAccess | +| samConversion.kt:58:30:58:45 | ...->... | samConversion.kt:57:9:60:1 | test | LambdaExpr | +| samConversion.kt:58:30:58:45 | Function2 | samConversion.kt:57:9:60:1 | test | TypeAccess | +| samConversion.kt:58:30:58:45 | Integer | samConversion.kt:57:9:60:1 | test | TypeAccess | +| samConversion.kt:58:30:58:45 | Integer | samConversion.kt:57:9:60:1 | test | TypeAccess | | samConversion.kt:58:30:58:45 | Unit | file://:0:0:0:0 | | TypeAccess | -| samConversion.kt:58:30:58:45 | Unit | samConversion.kt:57:1:60:1 | test | TypeAccess | +| samConversion.kt:58:30:58:45 | Unit | samConversion.kt:57:9:60:1 | test | TypeAccess | | samConversion.kt:58:32:58:32 | int | file://:0:0:0:0 | | TypeAccess | | samConversion.kt:58:35:58:35 | int | file://:0:0:0:0 | | TypeAccess | | samConversion.kt:58:40:58:43 | INSTANCE | samConversion.kt:58:30:58:45 | invoke | VarAccess | -| samConversion.kt:59:5:59:6 | i0 | samConversion.kt:57:1:60:1 | test | VarAccess | -| samConversion.kt:59:5:59:15 | fn1(...) | samConversion.kt:57:1:60:1 | test | MethodCall | -| samConversion.kt:59:12:59:12 | 1 | samConversion.kt:57:1:60:1 | test | IntegerLiteral | -| samConversion.kt:59:14:59:14 | 2 | samConversion.kt:57:1:60:1 | test | IntegerLiteral | +| samConversion.kt:59:5:59:6 | i0 | samConversion.kt:57:9:60:1 | test | VarAccess | +| samConversion.kt:59:5:59:15 | fn1(...) | samConversion.kt:57:9:60:1 | test | MethodCall | +| samConversion.kt:59:12:59:12 | 1 | samConversion.kt:57:9:60:1 | test | IntegerLiteral | +| samConversion.kt:59:14:59:14 | 2 | samConversion.kt:57:9:60:1 | test | IntegerLiteral | | samConversion.kt:63:5:63:9 | int | file://:0:0:0:0 | | TypeAccess | | samConversion.kt:63:5:63:9 | this | samConversion.kt:63:5:63:9 | getX | ThisAccess | | samConversion.kt:63:5:63:9 | this.x | samConversion.kt:63:5:63:9 | getX | VarAccess | diff --git a/java/ql/test-kotlin2/library-tests/exprs/funcExprs.expected b/java/ql/test-kotlin2/library-tests/exprs/funcExprs.expected index 94ef616bff83..d4da8d6e0be5 100644 --- a/java/ql/test-kotlin2/library-tests/exprs/funcExprs.expected +++ b/java/ql/test-kotlin2/library-tests/exprs/funcExprs.expected @@ -88,8 +88,8 @@ anon_class_member_modifiers | delegatedProperties.kt:23:29:23:31 | new KProperty0(...) { ... } | delegatedProperties.kt:23:29:23:31 | invoke | override, public | | delegatedProperties.kt:25:64:31:9 | new ReadWriteProperty(...) { ... } | delegatedProperties.kt:26:13:26:24 | getCurValue | final, public | | delegatedProperties.kt:25:64:31:9 | new ReadWriteProperty(...) { ... } | delegatedProperties.kt:26:13:26:24 | setCurValue | final, public | -| delegatedProperties.kt:25:64:31:9 | new ReadWriteProperty(...) { ... } | delegatedProperties.kt:27:13:27:88 | getValue | override, public | -| delegatedProperties.kt:25:64:31:9 | new ReadWriteProperty(...) { ... } | delegatedProperties.kt:28:13:30:13 | setValue | override, public | +| delegatedProperties.kt:25:64:31:9 | new ReadWriteProperty(...) { ... } | delegatedProperties.kt:27:22:27:88 | getValue | override, public | +| delegatedProperties.kt:25:64:31:9 | new ReadWriteProperty(...) { ... } | delegatedProperties.kt:28:22:30:13 | setValue | override, public | | delegatedProperties.kt:33:30:33:47 | new KProperty0(...) { ... } | delegatedProperties.kt:33:30:33:47 | get | override, public | | delegatedProperties.kt:33:30:33:47 | new KProperty0(...) { ... } | delegatedProperties.kt:33:30:33:47 | invoke | override, public | | delegatedProperties.kt:34:31:34:48 | new KMutableProperty0(...) { ... } | delegatedProperties.kt:34:31:34:48 | get | override, public | diff --git a/java/ql/test-kotlin2/library-tests/exprs/unaryOp.expected b/java/ql/test-kotlin2/library-tests/exprs/unaryOp.expected index 487226320cc2..98fd8f545a69 100644 --- a/java/ql/test-kotlin2/library-tests/exprs/unaryOp.expected +++ b/java/ql/test-kotlin2/library-tests/exprs/unaryOp.expected @@ -4,7 +4,7 @@ | exprs.kt:121:14:121:16 | !... | exprs.kt:121:15:121:16 | b1 | | exprs.kt:202:18:202:20 | ...!! | exprs.kt:202:18:202:18 | x | | exprs.kt:211:19:211:21 | ...!! | exprs.kt:211:19:211:19 | s | -| exprs.kt:212:19:212:21 | ...!! | exprs.kt:212:19:212:19 | s | +| exprs.kt:212:19:212:21 | ...!! | exprs.kt:212:19:212:19 | | | exprs.kt:286:5:286:6 | -... | exprs.kt:286:6:286:6 | i | | exprs.kt:287:5:287:6 | +... | exprs.kt:287:6:287:6 | i | | exprs.kt:288:5:288:6 | -... | exprs.kt:288:6:288:6 | d | diff --git a/java/ql/test-kotlin2/library-tests/generic-instance-methods/test.expected b/java/ql/test-kotlin2/library-tests/generic-instance-methods/test.expected index 2a6682ec3d85..d44d1d94c097 100644 --- a/java/ql/test-kotlin2/library-tests/generic-instance-methods/test.expected +++ b/java/ql/test-kotlin2/library-tests/generic-instance-methods/test.expected @@ -71,7 +71,7 @@ refTypes | file:///!unknown-binary-location/Generic.class:0:0:0:0 | Generic | file:///!unknown-binary-location/Generic.class:0:0:0:0 | getter | getter() | No parameters | String | test.kt:1:1:13:1 | Generic | test.kt:7:3:7:26 | getter | | file:///!unknown-binary-location/Generic.class:0:0:0:0 | Generic | file:///!unknown-binary-location/Generic.class:0:0:0:0 | identity | identity(java.lang.String) | String | String | test.kt:1:1:13:1 | Generic | test.kt:6:3:6:35 | identity | | file:///!unknown-binary-location/Generic.class:0:0:0:0 | Generic | file:///!unknown-binary-location/Generic.class:0:0:0:0 | identity2 | identity2(java.lang.String) | String | String | test.kt:1:1:13:1 | Generic | test.kt:5:3:5:46 | identity2 | -| file:///!unknown-binary-location/Generic.class:0:0:0:0 | Generic | file:///!unknown-binary-location/Generic.class:0:0:0:0 | privateid | privateid(java.lang.String) | String | String | test.kt:1:1:13:1 | Generic | test.kt:10:3:10:41 | privateid | +| file:///!unknown-binary-location/Generic.class:0:0:0:0 | Generic | file:///!unknown-binary-location/Generic.class:0:0:0:0 | privateid | privateid(java.lang.String) | String | String | test.kt:1:1:13:1 | Generic | test.kt:10:11:10:41 | privateid | | file:///!unknown-binary-location/Generic.class:0:0:0:0 | Generic | file:///!unknown-binary-location/Generic.class:0:0:0:0 | setStored | setStored(java.lang.String) | String | void | test.kt:1:1:13:1 | Generic | test.kt:3:3:3:12 | setStored | | file:///!unknown-binary-location/Generic.class:0:0:0:0 | Generic | file:///!unknown-binary-location/Generic.class:0:0:0:0 | setter | setter(java.lang.String) | String | void | test.kt:1:1:13:1 | Generic | test.kt:8:3:8:41 | setter | | test.kt:0:0:0:0 | TestKt | test.kt:15:1:28:1 | user | user() | No parameters | void | test.kt:0:0:0:0 | TestKt | test.kt:15:1:28:1 | user | @@ -81,5 +81,5 @@ refTypes | test.kt:1:1:13:1 | Generic | test.kt:6:3:6:35 | identity | identity(java.lang.Object) | T | T | test.kt:1:1:13:1 | Generic | test.kt:6:3:6:35 | identity | | test.kt:1:1:13:1 | Generic | test.kt:7:3:7:26 | getter | getter() | No parameters | T | test.kt:1:1:13:1 | Generic | test.kt:7:3:7:26 | getter | | test.kt:1:1:13:1 | Generic | test.kt:8:3:8:41 | setter | setter(java.lang.Object) | T | void | test.kt:1:1:13:1 | Generic | test.kt:8:3:8:41 | setter | -| test.kt:1:1:13:1 | Generic | test.kt:10:3:10:41 | privateid | privateid(java.lang.Object) | T | T | test.kt:1:1:13:1 | Generic | test.kt:10:3:10:41 | privateid | +| test.kt:1:1:13:1 | Generic | test.kt:10:11:10:41 | privateid | privateid(java.lang.Object) | T | T | test.kt:1:1:13:1 | Generic | test.kt:10:11:10:41 | privateid | | test.kt:1:1:13:1 | Generic | test.kt:11:3:11:70 | callPrivateId | callPrivateId(Generic) | Generic | String | test.kt:1:1:13:1 | Generic | test.kt:11:3:11:70 | callPrivateId | diff --git a/java/ql/test-kotlin2/library-tests/generic-selective-extraction/test.expected b/java/ql/test-kotlin2/library-tests/generic-selective-extraction/test.expected index fbc7f2519f65..7132c6915e91 100644 --- a/java/ql/test-kotlin2/library-tests/generic-selective-extraction/test.expected +++ b/java/ql/test-kotlin2/library-tests/generic-selective-extraction/test.expected @@ -15,9 +15,9 @@ | Test.kt:1:1:8:1 | TestKt | Test.kt:3:3:3:15 | getField | | Test.kt:1:1:8:1 | TestKt | Test.kt:3:3:3:15 | setField | | Test.kt:1:1:8:1 | TestKt | Test.kt:3:3:3:22 | field | -| Test.kt:1:1:8:1 | TestKt | Test.kt:4:3:5:18 | getRawField | -| Test.kt:1:1:8:1 | TestKt | Test.kt:4:3:5:18 | setRawField | -| Test.kt:1:1:8:1 | TestKt | Test.kt:4:3:5:25 | rawField | +| Test.kt:1:1:8:1 | TestKt | Test.kt:5:3:5:18 | getRawField | +| Test.kt:1:1:8:1 | TestKt | Test.kt:5:3:5:18 | setRawField | +| Test.kt:1:1:8:1 | TestKt | Test.kt:5:3:5:25 | rawField | | Test.kt:1:1:8:1 | TestKt | Test.kt:6:3:6:22 | method | | Test.kt:10:1:10:20 | FieldUsedKt | Test.kt:10:1:10:20 | FieldUsedKt | | Test.kt:11:1:11:23 | RawFieldUsedKt | Test.kt:11:1:11:23 | RawFieldUsedKt | diff --git a/java/ql/test-kotlin2/library-tests/inherited-default-value/test.expected b/java/ql/test-kotlin2/library-tests/inherited-default-value/test.expected index 08da126b9b25..27b9d5d23b7c 100644 --- a/java/ql/test-kotlin2/library-tests/inherited-default-value/test.expected +++ b/java/ql/test-kotlin2/library-tests/inherited-default-value/test.expected @@ -1,2 +1,2 @@ -| test.kt:3:3:3:28 | f(...) | test.kt:3:3:3:28 | f | test.kt:1:1:5:1 | A | -| test.kt:11:16:11:23 | f$default(...) | test.kt:3:3:3:28 | f$default | test.kt:1:1:5:1 | A | +| test.kt:3:8:3:28 | f(...) | test.kt:3:8:3:28 | f | test.kt:1:1:5:1 | A | +| test.kt:11:16:11:23 | f$default(...) | test.kt:3:8:3:28 | f$default | test.kt:1:1:5:1 | A | diff --git a/java/ql/test-kotlin2/library-tests/interface-delegate/test.expected b/java/ql/test-kotlin2/library-tests/interface-delegate/test.expected index a5576a6c0837..f04dc01ae8bb 100644 --- a/java/ql/test-kotlin2/library-tests/interface-delegate/test.expected +++ b/java/ql/test-kotlin2/library-tests/interface-delegate/test.expected @@ -5,4 +5,4 @@ fields | intfDelegate.kt:3:3:3:15 | f | intfDelegate.kt:1:1:5:1 | Intf | | intfDelegate.kt:7:1:10:1 | Concrete | intfDelegate.kt:7:1:10:1 | Concrete | | intfDelegate.kt:7:26:9:1 | | intfDelegate.kt:7:26:9:1 | new Intf(...) { ... } | -| intfDelegate.kt:8:3:8:28 | f | intfDelegate.kt:7:26:9:1 | new Intf(...) { ... } | +| intfDelegate.kt:8:12:8:28 | f | intfDelegate.kt:7:26:9:1 | new Intf(...) { ... } | diff --git a/java/ql/test-kotlin2/library-tests/internal-constructor-called-from-java/test.expected b/java/ql/test-kotlin2/library-tests/internal-constructor-called-from-java/test.expected index 44dbca7993e7..c3eb1d9284f8 100644 --- a/java/ql/test-kotlin2/library-tests/internal-constructor-called-from-java/test.expected +++ b/java/ql/test-kotlin2/library-tests/internal-constructor-called-from-java/test.expected @@ -1 +1 @@ -| User.java:3:31:3:44 | new Test(...) | test.kt:3:3:3:51 | { ... } | +| User.java:3:31:3:44 | new Test(...) | test.kt:3:12:3:51 | { ... } | diff --git a/java/ql/test-kotlin2/library-tests/internal-public-alias/test.expected b/java/ql/test-kotlin2/library-tests/internal-public-alias/test.expected index 09dae53df720..db1728f23352 100644 --- a/java/ql/test-kotlin2/library-tests/internal-public-alias/test.expected +++ b/java/ql/test-kotlin2/library-tests/internal-public-alias/test.expected @@ -1,6 +1,6 @@ | User.java:3:21:3:24 | test | -| test.kt:3:3:3:26 | getInternalVal$main | +| test.kt:3:12:3:26 | getInternalVal$main | | test.kt:6:3:6:36 | getInternalVal | -| test.kt:8:3:8:26 | getInternalVar$main | -| test.kt:8:3:8:26 | setInternalVar$main | -| test.kt:10:3:10:32 | internalFun$main | +| test.kt:8:12:8:26 | getInternalVar$main | +| test.kt:8:12:8:26 | setInternalVar$main | +| test.kt:10:12:10:32 | internalFun$main | diff --git a/java/ql/test-kotlin2/library-tests/java_and_kotlin/test.expected b/java/ql/test-kotlin2/library-tests/java_and_kotlin/test.expected index 845ee4ab7884..3ae886713c31 100644 --- a/java/ql/test-kotlin2/library-tests/java_and_kotlin/test.expected +++ b/java/ql/test-kotlin2/library-tests/java_and_kotlin/test.expected @@ -1,19 +1,19 @@ #select | Java.java:5:3:5:26 | kotlinFun(...) | Kotlin.kt:2:2:4:2 | kotlinFun | -| Java.java:11:11:11:22 | fn0(...) | Kotlin.kt:8:5:8:38 | fn0 | -| Kotlin.kt:13:46:13:51 | fn0(...) | Kotlin.kt:8:5:8:38 | fn0 | -| Kotlin.kt:14:54:14:59 | fn1(...) | Kotlin.kt:9:5:9:46 | fn1 | +| Java.java:11:11:11:22 | fn0(...) | Kotlin.kt:8:10:8:38 | fn0 | +| Kotlin.kt:13:40:13:51 | fn0(...) | Kotlin.kt:8:10:8:38 | fn0 | +| Kotlin.kt:14:48:14:59 | fn1(...) | Kotlin.kt:9:18:9:46 | fn1 | methods | Java.java:4:7:4:13 | javaFun | javaFun() | | Java.java:10:17:10:19 | fn0 | fn0(int) | | Kotlin.kt:2:2:4:2 | kotlinFun | kotlinFun() | -| Kotlin.kt:8:5:8:38 | fn0 | fn0(int) | -| Kotlin.kt:9:5:9:46 | fn1 | fn1(int) | -| Kotlin.kt:13:5:13:51 | fn0 | fn0(int) | -| Kotlin.kt:14:5:14:59 | fn1 | fn1(int) | +| Kotlin.kt:8:10:8:38 | fn0 | fn0(int) | +| Kotlin.kt:9:18:9:46 | fn1 | fn1(int) | +| Kotlin.kt:13:14:13:51 | fn0 | fn0(int) | +| Kotlin.kt:14:22:14:59 | fn1 | fn1(int) | overrides -| Java.java:10:17:10:19 | fn0 | Kotlin.kt:8:5:8:38 | fn0 | -| Kotlin.kt:13:5:13:51 | fn0 | Kotlin.kt:8:5:8:38 | fn0 | -| Kotlin.kt:14:5:14:59 | fn1 | Kotlin.kt:9:5:9:46 | fn1 | +| Java.java:10:17:10:19 | fn0 | Kotlin.kt:8:10:8:38 | fn0 | +| Kotlin.kt:13:14:13:51 | fn0 | Kotlin.kt:8:10:8:38 | fn0 | +| Kotlin.kt:14:22:14:59 | fn1 | Kotlin.kt:9:18:9:46 | fn1 | signature_mismatch -| Kotlin.kt:9:5:9:46 | fn1 | fn1(int) | +| Kotlin.kt:9:18:9:46 | fn1 | fn1(int) | diff --git a/java/ql/test-kotlin2/library-tests/java_and_kotlin_internal/visibility.expected b/java/ql/test-kotlin2/library-tests/java_and_kotlin_internal/visibility.expected index 222e90470fe2..43e5e8eefbe3 100644 --- a/java/ql/test-kotlin2/library-tests/java_and_kotlin_internal/visibility.expected +++ b/java/ql/test-kotlin2/library-tests/java_and_kotlin_internal/visibility.expected @@ -1,16 +1,16 @@ #select -| Kotlin.kt:2:2:3:2 | kotlinFun$main | final | -| Kotlin.kt:2:2:3:2 | kotlinFun$main | internal | -| Kotlin.kt:6:1:6:36 | topLevelKotlinFun | final | -| Kotlin.kt:6:1:6:36 | topLevelKotlinFun | internal | -| Kotlin.kt:6:1:6:36 | topLevelKotlinFun | static | +| Kotlin.kt:2:11:3:2 | kotlinFun$main | final | +| Kotlin.kt:2:11:3:2 | kotlinFun$main | internal | +| Kotlin.kt:6:10:6:36 | topLevelKotlinFun | final | +| Kotlin.kt:6:10:6:36 | topLevelKotlinFun | internal | +| Kotlin.kt:6:10:6:36 | topLevelKotlinFun | static | isPublic isInternal -| Kotlin.kt:2:2:3:2 | kotlinFun$main | -| Kotlin.kt:6:1:6:36 | topLevelKotlinFun | +| Kotlin.kt:2:11:3:2 | kotlinFun$main | +| Kotlin.kt:6:10:6:36 | topLevelKotlinFun | modifiers_methods -| file://:0:0:0:0 | final | Kotlin.kt:2:2:3:2 | kotlinFun$main | -| file://:0:0:0:0 | final | Kotlin.kt:6:1:6:36 | topLevelKotlinFun | -| file://:0:0:0:0 | internal | Kotlin.kt:2:2:3:2 | kotlinFun$main | -| file://:0:0:0:0 | internal | Kotlin.kt:6:1:6:36 | topLevelKotlinFun | -| file://:0:0:0:0 | static | Kotlin.kt:6:1:6:36 | topLevelKotlinFun | +| file://:0:0:0:0 | final | Kotlin.kt:2:11:3:2 | kotlinFun$main | +| file://:0:0:0:0 | final | Kotlin.kt:6:10:6:36 | topLevelKotlinFun | +| file://:0:0:0:0 | internal | Kotlin.kt:2:11:3:2 | kotlinFun$main | +| file://:0:0:0:0 | internal | Kotlin.kt:6:10:6:36 | topLevelKotlinFun | +| file://:0:0:0:0 | static | Kotlin.kt:6:10:6:36 | topLevelKotlinFun | diff --git a/java/ql/test-kotlin2/library-tests/jvmoverloads-annotation/PrintAst.expected b/java/ql/test-kotlin2/library-tests/jvmoverloads-annotation/PrintAst.expected index 6355cc86a7a0..aed31ecc1f84 100644 --- a/java/ql/test-kotlin2/library-tests/jvmoverloads-annotation/PrintAst.expected +++ b/java/ql/test-kotlin2/library-tests/jvmoverloads-annotation/PrintAst.expected @@ -6,8 +6,8 @@ test.kt: # 1| 5: [BlockStmt] { ... } # 1| 0: [ReturnStmt] return ... # 1| 0: [StringLiteral] "Hello world" -# 44| 2: [ExtensionMethod] testExtensionFunction -# 44| 3: [TypeAccess] int +# 45| 2: [ExtensionMethod] testExtensionFunction +# 45| 3: [TypeAccess] int #-----| 4: (Parameters) # 45| 0: [Parameter] # 45| 0: [TypeAccess] Test @@ -19,10 +19,10 @@ test.kt: # 45| 0: [TypeAccess] double # 45| 4: [Parameter] e # 45| 0: [TypeAccess] boolean -# 44| 5: [BlockStmt] { ... } -# 44| 0: [ReturnStmt] return ... -# 44| 0: [MethodCall] testExtensionFunction$default(...) -# 44| -1: [TypeAccess] TestKt +# 45| 5: [BlockStmt] { ... } +# 45| 0: [ReturnStmt] return ... +# 45| 0: [MethodCall] testExtensionFunction$default(...) +# 45| -1: [TypeAccess] TestKt # 0| 0: [ExtensionReceiverAccess] this # 0| 1: [VarAccess] a # 0| 2: [VarAccess] b @@ -31,10 +31,10 @@ test.kt: # 0| 5: [VarAccess] e # 1| 6: [IntegerLiteral] 23 # 1| 7: [NullLiteral] null -# 44| 3: [ExtensionMethod] testExtensionFunction +# 45| 3: [ExtensionMethod] testExtensionFunction #-----| 1: (Annotations) # 44| 1: [Annotation] JvmOverloads -# 44| 3: [TypeAccess] int +# 45| 3: [TypeAccess] int #-----| 4: (Parameters) # 45| 0: [Parameter] # 45| 0: [TypeAccess] Test @@ -51,8 +51,8 @@ test.kt: # 45| 5: [BlockStmt] { ... } # 45| 0: [ReturnStmt] return ... # 45| 0: [VarAccess] a -# 44| 4: [ExtensionMethod] testExtensionFunction -# 44| 3: [TypeAccess] int +# 45| 4: [ExtensionMethod] testExtensionFunction +# 45| 3: [TypeAccess] int #-----| 4: (Parameters) # 45| 0: [Parameter] # 45| 0: [TypeAccess] Test @@ -62,10 +62,10 @@ test.kt: # 45| 0: [TypeAccess] double # 45| 3: [Parameter] e # 45| 0: [TypeAccess] boolean -# 44| 5: [BlockStmt] { ... } -# 44| 0: [ReturnStmt] return ... -# 44| 0: [MethodCall] testExtensionFunction$default(...) -# 44| -1: [TypeAccess] TestKt +# 45| 5: [BlockStmt] { ... } +# 45| 0: [ReturnStmt] return ... +# 45| 0: [MethodCall] testExtensionFunction$default(...) +# 45| -1: [TypeAccess] TestKt # 0| 0: [ExtensionReceiverAccess] this # 0| 1: [VarAccess] a # 1| 2: [NullLiteral] null @@ -74,63 +74,63 @@ test.kt: # 0| 5: [VarAccess] e # 1| 6: [IntegerLiteral] 21 # 1| 7: [NullLiteral] null -# 44| 5: [ExtensionMethod] testExtensionFunction$default -# 44| 3: [TypeAccess] int +# 45| 5: [ExtensionMethod] testExtensionFunction$default +# 45| 3: [TypeAccess] int #-----| 4: (Parameters) -# 44| 0: [Parameter] p0 -# 44| 0: [TypeAccess] Test -# 44| 1: [Parameter] p1 -# 44| 0: [TypeAccess] int -# 44| 2: [Parameter] p2 -# 44| 0: [TypeAccess] String -# 44| 3: [Parameter] p3 -# 44| 0: [TypeAccess] double -# 44| 4: [Parameter] p4 -# 44| 0: [TypeAccess] float -# 44| 5: [Parameter] p5 -# 44| 0: [TypeAccess] boolean -# 44| 6: [Parameter] p6 -# 44| 0: [TypeAccess] int -# 44| 7: [Parameter] p7 -# 44| 0: [TypeAccess] Object -# 44| 5: [BlockStmt] { ... } -# 44| 0: [IfStmt] if (...) -# 44| 0: [EQExpr] ... == ... -# 44| 0: [AndBitwiseExpr] ... & ... -# 44| 0: [IntegerLiteral] 2 -# 44| 1: [VarAccess] p6 -# 44| 1: [IntegerLiteral] 0 -# 44| 1: [ExprStmt] ; -# 44| 0: [AssignExpr] ...=... -# 44| 0: [VarAccess] p2 +# 45| 0: [Parameter] p0 +# 45| 0: [TypeAccess] Test +# 45| 1: [Parameter] p1 +# 45| 0: [TypeAccess] int +# 45| 2: [Parameter] p2 +# 45| 0: [TypeAccess] String +# 45| 3: [Parameter] p3 +# 45| 0: [TypeAccess] double +# 45| 4: [Parameter] p4 +# 45| 0: [TypeAccess] float +# 45| 5: [Parameter] p5 +# 45| 0: [TypeAccess] boolean +# 45| 6: [Parameter] p6 +# 45| 0: [TypeAccess] int +# 45| 7: [Parameter] p7 +# 45| 0: [TypeAccess] Object +# 45| 5: [BlockStmt] { ... } +# 45| 0: [IfStmt] if (...) +# 45| 0: [EQExpr] ... == ... +# 45| 0: [AndBitwiseExpr] ... & ... +# 45| 0: [IntegerLiteral] 2 +# 45| 1: [VarAccess] p6 +# 45| 1: [IntegerLiteral] 0 +# 45| 1: [ExprStmt] ; +# 45| 0: [AssignExpr] ...=... +# 45| 0: [VarAccess] p2 # 45| 1: [MethodCall] getString(...) # 45| -1: [TypeAccess] TestKt -# 44| 1: [IfStmt] if (...) -# 44| 0: [EQExpr] ... == ... -# 44| 0: [AndBitwiseExpr] ... & ... -# 44| 0: [IntegerLiteral] 8 -# 44| 1: [VarAccess] p6 -# 44| 1: [IntegerLiteral] 0 -# 44| 1: [ExprStmt] ; -# 44| 0: [AssignExpr] ...=... -# 44| 0: [VarAccess] p4 +# 45| 1: [IfStmt] if (...) +# 45| 0: [EQExpr] ... == ... +# 45| 0: [AndBitwiseExpr] ... & ... +# 45| 0: [IntegerLiteral] 8 +# 45| 1: [VarAccess] p6 +# 45| 1: [IntegerLiteral] 0 +# 45| 1: [ExprStmt] ; +# 45| 0: [AssignExpr] ...=... +# 45| 0: [VarAccess] p4 # 45| 1: [FloatLiteral] 1.0 -# 44| 2: [ReturnStmt] return ... -# 44| 0: [MethodCall] testExtensionFunction(...) -# 44| -1: [TypeAccess] TestKt -# 44| 0: [ExtensionReceiverAccess] this -# 44| 1: [VarAccess] p1 -# 44| 2: [VarAccess] p2 -# 44| 3: [VarAccess] p3 -# 44| 4: [VarAccess] p4 -# 44| 5: [VarAccess] p5 +# 45| 2: [ReturnStmt] return ... +# 45| 0: [MethodCall] testExtensionFunction(...) +# 45| -1: [TypeAccess] TestKt +# 45| 0: [ExtensionReceiverAccess] this +# 45| 1: [VarAccess] p1 +# 45| 2: [VarAccess] p2 +# 45| 3: [VarAccess] p3 +# 45| 4: [VarAccess] p4 +# 45| 5: [VarAccess] p5 # 3| 2: [Class] Test # 3| 1: [Constructor] Test # 3| 5: [BlockStmt] { ... } # 3| 0: [SuperConstructorInvocationStmt] super(...) # 3| 1: [BlockStmt] { ... } -# 5| 2: [Method] testStaticFunction -# 5| 3: [TypeAccess] int +# 6| 2: [Method] testStaticFunction +# 6| 3: [TypeAccess] int #-----| 4: (Parameters) # 6| 0: [Parameter] a # 6| 0: [TypeAccess] int @@ -140,10 +140,10 @@ test.kt: # 6| 0: [TypeAccess] double # 6| 3: [Parameter] e # 6| 0: [TypeAccess] boolean -# 5| 5: [BlockStmt] { ... } -# 5| 0: [ReturnStmt] return ... -# 5| 0: [MethodCall] testStaticFunction$default(...) -# 5| -1: [TypeAccess] Test +# 6| 5: [BlockStmt] { ... } +# 6| 0: [ReturnStmt] return ... +# 6| 0: [MethodCall] testStaticFunction$default(...) +# 6| -1: [TypeAccess] Test # 0| 0: [VarAccess] a # 0| 1: [VarAccess] b # 0| 2: [VarAccess] c @@ -151,11 +151,11 @@ test.kt: # 0| 4: [VarAccess] e # 1| 5: [IntegerLiteral] 23 # 1| 6: [NullLiteral] null -# 5| 3: [Method] testStaticFunction +# 6| 3: [Method] testStaticFunction #-----| 1: (Annotations) # 5| 1: [Annotation] JvmOverloads # 5| 2: [Annotation] JvmStatic -# 5| 3: [TypeAccess] int +# 6| 3: [TypeAccess] int #-----| 4: (Parameters) # 6| 0: [Parameter] a # 6| 0: [TypeAccess] int @@ -170,8 +170,8 @@ test.kt: # 6| 5: [BlockStmt] { ... } # 6| 0: [ReturnStmt] return ... # 6| 0: [VarAccess] a -# 5| 4: [Method] testStaticFunction -# 5| 3: [TypeAccess] int +# 6| 4: [Method] testStaticFunction +# 6| 3: [TypeAccess] int #-----| 4: (Parameters) # 6| 0: [Parameter] a # 6| 0: [TypeAccess] int @@ -179,10 +179,10 @@ test.kt: # 6| 0: [TypeAccess] double # 6| 2: [Parameter] e # 6| 0: [TypeAccess] boolean -# 5| 5: [BlockStmt] { ... } -# 5| 0: [ReturnStmt] return ... -# 5| 0: [MethodCall] testStaticFunction$default(...) -# 5| -1: [TypeAccess] Test +# 6| 5: [BlockStmt] { ... } +# 6| 0: [ReturnStmt] return ... +# 6| 0: [MethodCall] testStaticFunction$default(...) +# 6| -1: [TypeAccess] Test # 0| 0: [VarAccess] a # 1| 1: [NullLiteral] null # 0| 2: [VarAccess] c @@ -190,55 +190,55 @@ test.kt: # 0| 4: [VarAccess] e # 1| 5: [IntegerLiteral] 21 # 1| 6: [NullLiteral] null -# 5| 5: [Method] testStaticFunction$default -# 5| 3: [TypeAccess] int +# 6| 5: [Method] testStaticFunction$default +# 6| 3: [TypeAccess] int #-----| 4: (Parameters) -# 5| 0: [Parameter] p0 -# 5| 0: [TypeAccess] int -# 5| 1: [Parameter] p1 -# 5| 0: [TypeAccess] String -# 5| 2: [Parameter] p2 -# 5| 0: [TypeAccess] double -# 5| 3: [Parameter] p3 -# 5| 0: [TypeAccess] float -# 5| 4: [Parameter] p4 -# 5| 0: [TypeAccess] boolean -# 5| 5: [Parameter] p5 -# 5| 0: [TypeAccess] int -# 5| 6: [Parameter] p6 -# 5| 0: [TypeAccess] Object -# 5| 5: [BlockStmt] { ... } -# 5| 0: [IfStmt] if (...) -# 5| 0: [EQExpr] ... == ... -# 5| 0: [AndBitwiseExpr] ... & ... -# 5| 0: [IntegerLiteral] 2 -# 5| 1: [VarAccess] p5 -# 5| 1: [IntegerLiteral] 0 -# 5| 1: [ExprStmt] ; -# 5| 0: [AssignExpr] ...=... -# 5| 0: [VarAccess] p1 +# 6| 0: [Parameter] p0 +# 6| 0: [TypeAccess] int +# 6| 1: [Parameter] p1 +# 6| 0: [TypeAccess] String +# 6| 2: [Parameter] p2 +# 6| 0: [TypeAccess] double +# 6| 3: [Parameter] p3 +# 6| 0: [TypeAccess] float +# 6| 4: [Parameter] p4 +# 6| 0: [TypeAccess] boolean +# 6| 5: [Parameter] p5 +# 6| 0: [TypeAccess] int +# 6| 6: [Parameter] p6 +# 6| 0: [TypeAccess] Object +# 6| 5: [BlockStmt] { ... } +# 6| 0: [IfStmt] if (...) +# 6| 0: [EQExpr] ... == ... +# 6| 0: [AndBitwiseExpr] ... & ... +# 6| 0: [IntegerLiteral] 2 +# 6| 1: [VarAccess] p5 +# 6| 1: [IntegerLiteral] 0 +# 6| 1: [ExprStmt] ; +# 6| 0: [AssignExpr] ...=... +# 6| 0: [VarAccess] p1 # 6| 1: [MethodCall] getString(...) # 6| -1: [TypeAccess] TestKt -# 5| 1: [IfStmt] if (...) -# 5| 0: [EQExpr] ... == ... -# 5| 0: [AndBitwiseExpr] ... & ... -# 5| 0: [IntegerLiteral] 8 -# 5| 1: [VarAccess] p5 -# 5| 1: [IntegerLiteral] 0 -# 5| 1: [ExprStmt] ; -# 5| 0: [AssignExpr] ...=... -# 5| 0: [VarAccess] p3 +# 6| 1: [IfStmt] if (...) +# 6| 0: [EQExpr] ... == ... +# 6| 0: [AndBitwiseExpr] ... & ... +# 6| 0: [IntegerLiteral] 8 +# 6| 1: [VarAccess] p5 +# 6| 1: [IntegerLiteral] 0 +# 6| 1: [ExprStmt] ; +# 6| 0: [AssignExpr] ...=... +# 6| 0: [VarAccess] p3 # 6| 1: [FloatLiteral] 1.0 -# 5| 2: [ReturnStmt] return ... -# 5| 0: [MethodCall] testStaticFunction(...) -# 5| -1: [TypeAccess] Test -# 5| 0: [VarAccess] p0 -# 5| 1: [VarAccess] p1 -# 5| 2: [VarAccess] p2 -# 5| 3: [VarAccess] p3 -# 5| 4: [VarAccess] p4 -# 8| 6: [Method] testMemberFunction -# 8| 3: [TypeAccess] int +# 6| 2: [ReturnStmt] return ... +# 6| 0: [MethodCall] testStaticFunction(...) +# 6| -1: [TypeAccess] Test +# 6| 0: [VarAccess] p0 +# 6| 1: [VarAccess] p1 +# 6| 2: [VarAccess] p2 +# 6| 3: [VarAccess] p3 +# 6| 4: [VarAccess] p4 +# 9| 6: [Method] testMemberFunction +# 9| 3: [TypeAccess] int #-----| 4: (Parameters) # 9| 0: [Parameter] a # 9| 0: [TypeAccess] int @@ -248,10 +248,10 @@ test.kt: # 9| 0: [TypeAccess] double # 9| 3: [Parameter] e # 9| 0: [TypeAccess] boolean -# 8| 5: [BlockStmt] { ... } -# 8| 0: [ReturnStmt] return ... -# 8| 0: [MethodCall] testMemberFunction$default(...) -# 8| -1: [TypeAccess] Test +# 9| 5: [BlockStmt] { ... } +# 9| 0: [ReturnStmt] return ... +# 9| 0: [MethodCall] testMemberFunction$default(...) +# 9| -1: [TypeAccess] Test # 0| 0: [ThisAccess] this # 0| 1: [VarAccess] a # 0| 2: [VarAccess] b @@ -260,10 +260,10 @@ test.kt: # 0| 5: [VarAccess] e # 1| 6: [IntegerLiteral] 23 # 1| 7: [NullLiteral] null -# 8| 7: [Method] testMemberFunction +# 9| 7: [Method] testMemberFunction #-----| 1: (Annotations) # 8| 1: [Annotation] JvmOverloads -# 8| 3: [TypeAccess] int +# 9| 3: [TypeAccess] int #-----| 4: (Parameters) # 9| 0: [Parameter] a # 9| 0: [TypeAccess] int @@ -278,8 +278,8 @@ test.kt: # 9| 5: [BlockStmt] { ... } # 9| 0: [ReturnStmt] return ... # 9| 0: [VarAccess] a -# 8| 8: [Method] testMemberFunction -# 8| 3: [TypeAccess] int +# 9| 8: [Method] testMemberFunction +# 9| 3: [TypeAccess] int #-----| 4: (Parameters) # 9| 0: [Parameter] a # 9| 0: [TypeAccess] int @@ -287,10 +287,10 @@ test.kt: # 9| 0: [TypeAccess] double # 9| 2: [Parameter] e # 9| 0: [TypeAccess] boolean -# 8| 5: [BlockStmt] { ... } -# 8| 0: [ReturnStmt] return ... -# 8| 0: [MethodCall] testMemberFunction$default(...) -# 8| -1: [TypeAccess] Test +# 9| 5: [BlockStmt] { ... } +# 9| 0: [ReturnStmt] return ... +# 9| 0: [MethodCall] testMemberFunction$default(...) +# 9| -1: [TypeAccess] Test # 0| 0: [ThisAccess] this # 0| 1: [VarAccess] a # 1| 2: [NullLiteral] null @@ -299,57 +299,57 @@ test.kt: # 0| 5: [VarAccess] e # 1| 6: [IntegerLiteral] 21 # 1| 7: [NullLiteral] null -# 8| 9: [Method] testMemberFunction$default -# 8| 3: [TypeAccess] int +# 9| 9: [Method] testMemberFunction$default +# 9| 3: [TypeAccess] int #-----| 4: (Parameters) -# 8| 0: [Parameter] p0 -# 8| 0: [TypeAccess] Test -# 8| 1: [Parameter] p1 -# 8| 0: [TypeAccess] int -# 8| 2: [Parameter] p2 -# 8| 0: [TypeAccess] String -# 8| 3: [Parameter] p3 -# 8| 0: [TypeAccess] double -# 8| 4: [Parameter] p4 -# 8| 0: [TypeAccess] float -# 8| 5: [Parameter] p5 -# 8| 0: [TypeAccess] boolean -# 8| 6: [Parameter] p6 -# 8| 0: [TypeAccess] int -# 8| 7: [Parameter] p7 -# 8| 0: [TypeAccess] Object -# 8| 5: [BlockStmt] { ... } -# 8| 0: [IfStmt] if (...) -# 8| 0: [EQExpr] ... == ... -# 8| 0: [AndBitwiseExpr] ... & ... -# 8| 0: [IntegerLiteral] 2 -# 8| 1: [VarAccess] p6 -# 8| 1: [IntegerLiteral] 0 -# 8| 1: [ExprStmt] ; -# 8| 0: [AssignExpr] ...=... -# 8| 0: [VarAccess] p2 +# 9| 0: [Parameter] p0 +# 9| 0: [TypeAccess] Test +# 9| 1: [Parameter] p1 +# 9| 0: [TypeAccess] int +# 9| 2: [Parameter] p2 +# 9| 0: [TypeAccess] String +# 9| 3: [Parameter] p3 +# 9| 0: [TypeAccess] double +# 9| 4: [Parameter] p4 +# 9| 0: [TypeAccess] float +# 9| 5: [Parameter] p5 +# 9| 0: [TypeAccess] boolean +# 9| 6: [Parameter] p6 +# 9| 0: [TypeAccess] int +# 9| 7: [Parameter] p7 +# 9| 0: [TypeAccess] Object +# 9| 5: [BlockStmt] { ... } +# 9| 0: [IfStmt] if (...) +# 9| 0: [EQExpr] ... == ... +# 9| 0: [AndBitwiseExpr] ... & ... +# 9| 0: [IntegerLiteral] 2 +# 9| 1: [VarAccess] p6 +# 9| 1: [IntegerLiteral] 0 +# 9| 1: [ExprStmt] ; +# 9| 0: [AssignExpr] ...=... +# 9| 0: [VarAccess] p2 # 9| 1: [MethodCall] getString(...) # 9| -1: [TypeAccess] TestKt -# 8| 1: [IfStmt] if (...) -# 8| 0: [EQExpr] ... == ... -# 8| 0: [AndBitwiseExpr] ... & ... -# 8| 0: [IntegerLiteral] 8 -# 8| 1: [VarAccess] p6 -# 8| 1: [IntegerLiteral] 0 -# 8| 1: [ExprStmt] ; -# 8| 0: [AssignExpr] ...=... -# 8| 0: [VarAccess] p4 +# 9| 1: [IfStmt] if (...) +# 9| 0: [EQExpr] ... == ... +# 9| 0: [AndBitwiseExpr] ... & ... +# 9| 0: [IntegerLiteral] 8 +# 9| 1: [VarAccess] p6 +# 9| 1: [IntegerLiteral] 0 +# 9| 1: [ExprStmt] ; +# 9| 0: [AssignExpr] ...=... +# 9| 0: [VarAccess] p4 # 9| 1: [FloatLiteral] 1.0 -# 8| 2: [ReturnStmt] return ... -# 8| 0: [MethodCall] testMemberFunction(...) -# 8| -1: [VarAccess] p0 -# 8| 0: [VarAccess] p1 -# 8| 1: [VarAccess] p2 -# 8| 2: [VarAccess] p3 -# 8| 3: [VarAccess] p4 -# 8| 4: [VarAccess] p5 -# 11| 10: [ExtensionMethod] testMemberExtensionFunction -# 11| 3: [TypeAccess] int +# 9| 2: [ReturnStmt] return ... +# 9| 0: [MethodCall] testMemberFunction(...) +# 9| -1: [VarAccess] p0 +# 9| 0: [VarAccess] p1 +# 9| 1: [VarAccess] p2 +# 9| 2: [VarAccess] p3 +# 9| 3: [VarAccess] p4 +# 9| 4: [VarAccess] p5 +# 12| 10: [ExtensionMethod] testMemberExtensionFunction +# 12| 3: [TypeAccess] int #-----| 4: (Parameters) # 12| 0: [Parameter] # 12| 0: [TypeAccess] Test2 @@ -361,10 +361,10 @@ test.kt: # 12| 0: [TypeAccess] double # 12| 4: [Parameter] e # 12| 0: [TypeAccess] boolean -# 11| 5: [BlockStmt] { ... } -# 11| 0: [ReturnStmt] return ... -# 11| 0: [MethodCall] testMemberExtensionFunction$default(...) -# 11| -1: [TypeAccess] Test +# 12| 5: [BlockStmt] { ... } +# 12| 0: [ReturnStmt] return ... +# 12| 0: [MethodCall] testMemberExtensionFunction$default(...) +# 12| -1: [TypeAccess] Test # 0| 0: [ThisAccess] Test.this # 0| 0: [TypeAccess] Test # 0| 1: [ExtensionReceiverAccess] this @@ -375,10 +375,10 @@ test.kt: # 0| 6: [VarAccess] e # 1| 7: [IntegerLiteral] 23 # 1| 8: [NullLiteral] null -# 11| 11: [ExtensionMethod] testMemberExtensionFunction +# 12| 11: [ExtensionMethod] testMemberExtensionFunction #-----| 1: (Annotations) # 11| 1: [Annotation] JvmOverloads -# 11| 3: [TypeAccess] int +# 12| 3: [TypeAccess] int #-----| 4: (Parameters) # 12| 0: [Parameter] # 12| 0: [TypeAccess] Test2 @@ -395,8 +395,8 @@ test.kt: # 12| 5: [BlockStmt] { ... } # 12| 0: [ReturnStmt] return ... # 12| 0: [VarAccess] a -# 11| 12: [ExtensionMethod] testMemberExtensionFunction -# 11| 3: [TypeAccess] int +# 12| 12: [ExtensionMethod] testMemberExtensionFunction +# 12| 3: [TypeAccess] int #-----| 4: (Parameters) # 12| 0: [Parameter] # 12| 0: [TypeAccess] Test2 @@ -406,10 +406,10 @@ test.kt: # 12| 0: [TypeAccess] double # 12| 3: [Parameter] e # 12| 0: [TypeAccess] boolean -# 11| 5: [BlockStmt] { ... } -# 11| 0: [ReturnStmt] return ... -# 11| 0: [MethodCall] testMemberExtensionFunction$default(...) -# 11| -1: [TypeAccess] Test +# 12| 5: [BlockStmt] { ... } +# 12| 0: [ReturnStmt] return ... +# 12| 0: [MethodCall] testMemberExtensionFunction$default(...) +# 12| -1: [TypeAccess] Test # 0| 0: [ThisAccess] Test.this # 0| 0: [TypeAccess] Test # 0| 1: [ExtensionReceiverAccess] this @@ -420,58 +420,58 @@ test.kt: # 0| 6: [VarAccess] e # 1| 7: [IntegerLiteral] 21 # 1| 8: [NullLiteral] null -# 11| 13: [ExtensionMethod] testMemberExtensionFunction$default -# 11| 3: [TypeAccess] int +# 12| 13: [ExtensionMethod] testMemberExtensionFunction$default +# 12| 3: [TypeAccess] int #-----| 4: (Parameters) -# 11| 0: [Parameter] p0 -# 11| 0: [TypeAccess] Test -# 11| 1: [Parameter] p1 -# 11| 0: [TypeAccess] Test2 -# 11| 2: [Parameter] p2 -# 11| 0: [TypeAccess] int -# 11| 3: [Parameter] p3 -# 11| 0: [TypeAccess] String -# 11| 4: [Parameter] p4 -# 11| 0: [TypeAccess] double -# 11| 5: [Parameter] p5 -# 11| 0: [TypeAccess] float -# 11| 6: [Parameter] p6 -# 11| 0: [TypeAccess] boolean -# 11| 7: [Parameter] p7 -# 11| 0: [TypeAccess] int -# 11| 8: [Parameter] p8 -# 11| 0: [TypeAccess] Object -# 11| 5: [BlockStmt] { ... } -# 11| 0: [IfStmt] if (...) -# 11| 0: [EQExpr] ... == ... -# 11| 0: [AndBitwiseExpr] ... & ... -# 11| 0: [IntegerLiteral] 2 -# 11| 1: [VarAccess] p7 -# 11| 1: [IntegerLiteral] 0 -# 11| 1: [ExprStmt] ; -# 11| 0: [AssignExpr] ...=... -# 11| 0: [VarAccess] p3 +# 12| 0: [Parameter] p0 +# 12| 0: [TypeAccess] Test +# 12| 1: [Parameter] p1 +# 12| 0: [TypeAccess] Test2 +# 12| 2: [Parameter] p2 +# 12| 0: [TypeAccess] int +# 12| 3: [Parameter] p3 +# 12| 0: [TypeAccess] String +# 12| 4: [Parameter] p4 +# 12| 0: [TypeAccess] double +# 12| 5: [Parameter] p5 +# 12| 0: [TypeAccess] float +# 12| 6: [Parameter] p6 +# 12| 0: [TypeAccess] boolean +# 12| 7: [Parameter] p7 +# 12| 0: [TypeAccess] int +# 12| 8: [Parameter] p8 +# 12| 0: [TypeAccess] Object +# 12| 5: [BlockStmt] { ... } +# 12| 0: [IfStmt] if (...) +# 12| 0: [EQExpr] ... == ... +# 12| 0: [AndBitwiseExpr] ... & ... +# 12| 0: [IntegerLiteral] 2 +# 12| 1: [VarAccess] p7 +# 12| 1: [IntegerLiteral] 0 +# 12| 1: [ExprStmt] ; +# 12| 0: [AssignExpr] ...=... +# 12| 0: [VarAccess] p3 # 12| 1: [MethodCall] getString(...) # 12| -1: [TypeAccess] TestKt -# 11| 1: [IfStmt] if (...) -# 11| 0: [EQExpr] ... == ... -# 11| 0: [AndBitwiseExpr] ... & ... -# 11| 0: [IntegerLiteral] 8 -# 11| 1: [VarAccess] p7 -# 11| 1: [IntegerLiteral] 0 -# 11| 1: [ExprStmt] ; -# 11| 0: [AssignExpr] ...=... -# 11| 0: [VarAccess] p5 +# 12| 1: [IfStmt] if (...) +# 12| 0: [EQExpr] ... == ... +# 12| 0: [AndBitwiseExpr] ... & ... +# 12| 0: [IntegerLiteral] 8 +# 12| 1: [VarAccess] p7 +# 12| 1: [IntegerLiteral] 0 +# 12| 1: [ExprStmt] ; +# 12| 0: [AssignExpr] ...=... +# 12| 0: [VarAccess] p5 # 12| 1: [FloatLiteral] 1.0 -# 11| 2: [ReturnStmt] return ... -# 11| 0: [MethodCall] testMemberExtensionFunction(...) -# 11| -1: [VarAccess] p0 -# 11| 0: [ExtensionReceiverAccess] this -# 11| 1: [VarAccess] p2 -# 11| 2: [VarAccess] p3 -# 11| 3: [VarAccess] p4 -# 11| 4: [VarAccess] p5 -# 11| 5: [VarAccess] p6 +# 12| 2: [ReturnStmt] return ... +# 12| 0: [MethodCall] testMemberExtensionFunction(...) +# 12| -1: [VarAccess] p0 +# 12| 0: [ExtensionReceiverAccess] this +# 12| 1: [VarAccess] p2 +# 12| 2: [VarAccess] p3 +# 12| 3: [VarAccess] p4 +# 12| 4: [VarAccess] p5 +# 12| 5: [VarAccess] p6 # 16| 3: [Class] Test2 # 16| 1: [Constructor] Test2 #-----| 4: (Parameters) @@ -575,8 +575,8 @@ test.kt: # 18| 5: [BlockStmt] { ... } # 18| 0: [SuperConstructorInvocationStmt] super(...) # 18| 1: [BlockStmt] { ... } -# 20| 2: [Method] testCompanionFunction -# 20| 3: [TypeAccess] int +# 21| 2: [Method] testCompanionFunction +# 21| 3: [TypeAccess] int #-----| 4: (Parameters) # 21| 0: [Parameter] a # 21| 0: [TypeAccess] int @@ -586,10 +586,10 @@ test.kt: # 21| 0: [TypeAccess] double # 21| 3: [Parameter] e # 21| 0: [TypeAccess] boolean -# 20| 5: [BlockStmt] { ... } -# 20| 0: [ReturnStmt] return ... -# 20| 0: [MethodCall] testCompanionFunction$default(...) -# 20| -1: [TypeAccess] Companion +# 21| 5: [BlockStmt] { ... } +# 21| 0: [ReturnStmt] return ... +# 21| 0: [MethodCall] testCompanionFunction$default(...) +# 21| -1: [TypeAccess] Companion # 0| 0: [ThisAccess] this # 0| 1: [VarAccess] a # 0| 2: [VarAccess] b @@ -598,10 +598,10 @@ test.kt: # 0| 5: [VarAccess] e # 1| 6: [IntegerLiteral] 23 # 1| 7: [NullLiteral] null -# 20| 3: [Method] testCompanionFunction +# 21| 3: [Method] testCompanionFunction #-----| 1: (Annotations) # 20| 1: [Annotation] JvmOverloads -# 20| 3: [TypeAccess] int +# 21| 3: [TypeAccess] int #-----| 4: (Parameters) # 21| 0: [Parameter] a # 21| 0: [TypeAccess] int @@ -616,8 +616,8 @@ test.kt: # 21| 5: [BlockStmt] { ... } # 21| 0: [ReturnStmt] return ... # 21| 0: [VarAccess] a -# 20| 4: [Method] testCompanionFunction -# 20| 3: [TypeAccess] int +# 21| 4: [Method] testCompanionFunction +# 21| 3: [TypeAccess] int #-----| 4: (Parameters) # 21| 0: [Parameter] a # 21| 0: [TypeAccess] int @@ -625,10 +625,10 @@ test.kt: # 21| 0: [TypeAccess] double # 21| 2: [Parameter] e # 21| 0: [TypeAccess] boolean -# 20| 5: [BlockStmt] { ... } -# 20| 0: [ReturnStmt] return ... -# 20| 0: [MethodCall] testCompanionFunction$default(...) -# 20| -1: [TypeAccess] Companion +# 21| 5: [BlockStmt] { ... } +# 21| 0: [ReturnStmt] return ... +# 21| 0: [MethodCall] testCompanionFunction$default(...) +# 21| -1: [TypeAccess] Companion # 0| 0: [ThisAccess] this # 0| 1: [VarAccess] a # 1| 2: [NullLiteral] null @@ -637,57 +637,57 @@ test.kt: # 0| 5: [VarAccess] e # 1| 6: [IntegerLiteral] 21 # 1| 7: [NullLiteral] null -# 20| 5: [Method] testCompanionFunction$default -# 20| 3: [TypeAccess] int +# 21| 5: [Method] testCompanionFunction$default +# 21| 3: [TypeAccess] int #-----| 4: (Parameters) -# 20| 0: [Parameter] p0 -# 20| 0: [TypeAccess] Companion -# 20| 1: [Parameter] p1 -# 20| 0: [TypeAccess] int -# 20| 2: [Parameter] p2 -# 20| 0: [TypeAccess] String -# 20| 3: [Parameter] p3 -# 20| 0: [TypeAccess] double -# 20| 4: [Parameter] p4 -# 20| 0: [TypeAccess] float -# 20| 5: [Parameter] p5 -# 20| 0: [TypeAccess] boolean -# 20| 6: [Parameter] p6 -# 20| 0: [TypeAccess] int -# 20| 7: [Parameter] p7 -# 20| 0: [TypeAccess] Object -# 20| 5: [BlockStmt] { ... } -# 20| 0: [IfStmt] if (...) -# 20| 0: [EQExpr] ... == ... -# 20| 0: [AndBitwiseExpr] ... & ... -# 20| 0: [IntegerLiteral] 2 -# 20| 1: [VarAccess] p6 -# 20| 1: [IntegerLiteral] 0 -# 20| 1: [ExprStmt] ; -# 20| 0: [AssignExpr] ...=... -# 20| 0: [VarAccess] p2 +# 21| 0: [Parameter] p0 +# 21| 0: [TypeAccess] Companion +# 21| 1: [Parameter] p1 +# 21| 0: [TypeAccess] int +# 21| 2: [Parameter] p2 +# 21| 0: [TypeAccess] String +# 21| 3: [Parameter] p3 +# 21| 0: [TypeAccess] double +# 21| 4: [Parameter] p4 +# 21| 0: [TypeAccess] float +# 21| 5: [Parameter] p5 +# 21| 0: [TypeAccess] boolean +# 21| 6: [Parameter] p6 +# 21| 0: [TypeAccess] int +# 21| 7: [Parameter] p7 +# 21| 0: [TypeAccess] Object +# 21| 5: [BlockStmt] { ... } +# 21| 0: [IfStmt] if (...) +# 21| 0: [EQExpr] ... == ... +# 21| 0: [AndBitwiseExpr] ... & ... +# 21| 0: [IntegerLiteral] 2 +# 21| 1: [VarAccess] p6 +# 21| 1: [IntegerLiteral] 0 +# 21| 1: [ExprStmt] ; +# 21| 0: [AssignExpr] ...=... +# 21| 0: [VarAccess] p2 # 21| 1: [MethodCall] getString(...) # 21| -1: [TypeAccess] TestKt -# 20| 1: [IfStmt] if (...) -# 20| 0: [EQExpr] ... == ... -# 20| 0: [AndBitwiseExpr] ... & ... -# 20| 0: [IntegerLiteral] 8 -# 20| 1: [VarAccess] p6 -# 20| 1: [IntegerLiteral] 0 -# 20| 1: [ExprStmt] ; -# 20| 0: [AssignExpr] ...=... -# 20| 0: [VarAccess] p4 +# 21| 1: [IfStmt] if (...) +# 21| 0: [EQExpr] ... == ... +# 21| 0: [AndBitwiseExpr] ... & ... +# 21| 0: [IntegerLiteral] 8 +# 21| 1: [VarAccess] p6 +# 21| 1: [IntegerLiteral] 0 +# 21| 1: [ExprStmt] ; +# 21| 0: [AssignExpr] ...=... +# 21| 0: [VarAccess] p4 # 21| 1: [FloatLiteral] 1.0 -# 20| 2: [ReturnStmt] return ... -# 20| 0: [MethodCall] testCompanionFunction(...) -# 20| -1: [VarAccess] p0 -# 20| 0: [VarAccess] p1 -# 20| 1: [VarAccess] p2 -# 20| 2: [VarAccess] p3 -# 20| 3: [VarAccess] p4 -# 20| 4: [VarAccess] p5 -# 23| 6: [Method] testStaticCompanionFunction -# 23| 3: [TypeAccess] int +# 21| 2: [ReturnStmt] return ... +# 21| 0: [MethodCall] testCompanionFunction(...) +# 21| -1: [VarAccess] p0 +# 21| 0: [VarAccess] p1 +# 21| 1: [VarAccess] p2 +# 21| 2: [VarAccess] p3 +# 21| 3: [VarAccess] p4 +# 21| 4: [VarAccess] p5 +# 24| 6: [Method] testStaticCompanionFunction +# 24| 3: [TypeAccess] int #-----| 4: (Parameters) # 24| 0: [Parameter] a # 24| 0: [TypeAccess] int @@ -697,10 +697,10 @@ test.kt: # 24| 0: [TypeAccess] double # 24| 3: [Parameter] e # 24| 0: [TypeAccess] boolean -# 23| 5: [BlockStmt] { ... } -# 23| 0: [ReturnStmt] return ... -# 23| 0: [MethodCall] testStaticCompanionFunction$default(...) -# 23| -1: [TypeAccess] Companion +# 24| 5: [BlockStmt] { ... } +# 24| 0: [ReturnStmt] return ... +# 24| 0: [MethodCall] testStaticCompanionFunction$default(...) +# 24| -1: [TypeAccess] Companion # 0| 0: [ThisAccess] this # 0| 1: [VarAccess] a # 0| 2: [VarAccess] b @@ -709,11 +709,11 @@ test.kt: # 0| 5: [VarAccess] e # 1| 6: [IntegerLiteral] 23 # 1| 7: [NullLiteral] null -# 23| 7: [Method] testStaticCompanionFunction +# 24| 7: [Method] testStaticCompanionFunction #-----| 1: (Annotations) # 23| 1: [Annotation] JvmOverloads # 23| 2: [Annotation] JvmStatic -# 23| 3: [TypeAccess] int +# 24| 3: [TypeAccess] int #-----| 4: (Parameters) # 24| 0: [Parameter] a # 24| 0: [TypeAccess] int @@ -728,8 +728,8 @@ test.kt: # 24| 5: [BlockStmt] { ... } # 24| 0: [ReturnStmt] return ... # 24| 0: [VarAccess] a -# 23| 8: [Method] testStaticCompanionFunction -# 23| 3: [TypeAccess] int +# 24| 8: [Method] testStaticCompanionFunction +# 24| 3: [TypeAccess] int #-----| 4: (Parameters) # 24| 0: [Parameter] a # 24| 0: [TypeAccess] int @@ -737,10 +737,10 @@ test.kt: # 24| 0: [TypeAccess] double # 24| 2: [Parameter] e # 24| 0: [TypeAccess] boolean -# 23| 5: [BlockStmt] { ... } -# 23| 0: [ReturnStmt] return ... -# 23| 0: [MethodCall] testStaticCompanionFunction$default(...) -# 23| -1: [TypeAccess] Companion +# 24| 5: [BlockStmt] { ... } +# 24| 0: [ReturnStmt] return ... +# 24| 0: [MethodCall] testStaticCompanionFunction$default(...) +# 24| -1: [TypeAccess] Companion # 0| 0: [ThisAccess] this # 0| 1: [VarAccess] a # 1| 2: [NullLiteral] null @@ -749,57 +749,57 @@ test.kt: # 0| 5: [VarAccess] e # 1| 6: [IntegerLiteral] 21 # 1| 7: [NullLiteral] null -# 23| 9: [Method] testStaticCompanionFunction$default -# 23| 3: [TypeAccess] int +# 24| 9: [Method] testStaticCompanionFunction$default +# 24| 3: [TypeAccess] int #-----| 4: (Parameters) -# 23| 0: [Parameter] p0 -# 23| 0: [TypeAccess] Companion -# 23| 1: [Parameter] p1 -# 23| 0: [TypeAccess] int -# 23| 2: [Parameter] p2 -# 23| 0: [TypeAccess] String -# 23| 3: [Parameter] p3 -# 23| 0: [TypeAccess] double -# 23| 4: [Parameter] p4 -# 23| 0: [TypeAccess] float -# 23| 5: [Parameter] p5 -# 23| 0: [TypeAccess] boolean -# 23| 6: [Parameter] p6 -# 23| 0: [TypeAccess] int -# 23| 7: [Parameter] p7 -# 23| 0: [TypeAccess] Object -# 23| 5: [BlockStmt] { ... } -# 23| 0: [IfStmt] if (...) -# 23| 0: [EQExpr] ... == ... -# 23| 0: [AndBitwiseExpr] ... & ... -# 23| 0: [IntegerLiteral] 2 -# 23| 1: [VarAccess] p6 -# 23| 1: [IntegerLiteral] 0 -# 23| 1: [ExprStmt] ; -# 23| 0: [AssignExpr] ...=... -# 23| 0: [VarAccess] p2 +# 24| 0: [Parameter] p0 +# 24| 0: [TypeAccess] Companion +# 24| 1: [Parameter] p1 +# 24| 0: [TypeAccess] int +# 24| 2: [Parameter] p2 +# 24| 0: [TypeAccess] String +# 24| 3: [Parameter] p3 +# 24| 0: [TypeAccess] double +# 24| 4: [Parameter] p4 +# 24| 0: [TypeAccess] float +# 24| 5: [Parameter] p5 +# 24| 0: [TypeAccess] boolean +# 24| 6: [Parameter] p6 +# 24| 0: [TypeAccess] int +# 24| 7: [Parameter] p7 +# 24| 0: [TypeAccess] Object +# 24| 5: [BlockStmt] { ... } +# 24| 0: [IfStmt] if (...) +# 24| 0: [EQExpr] ... == ... +# 24| 0: [AndBitwiseExpr] ... & ... +# 24| 0: [IntegerLiteral] 2 +# 24| 1: [VarAccess] p6 +# 24| 1: [IntegerLiteral] 0 +# 24| 1: [ExprStmt] ; +# 24| 0: [AssignExpr] ...=... +# 24| 0: [VarAccess] p2 # 24| 1: [MethodCall] getString(...) # 24| -1: [TypeAccess] TestKt -# 23| 1: [IfStmt] if (...) -# 23| 0: [EQExpr] ... == ... -# 23| 0: [AndBitwiseExpr] ... & ... -# 23| 0: [IntegerLiteral] 8 -# 23| 1: [VarAccess] p6 -# 23| 1: [IntegerLiteral] 0 -# 23| 1: [ExprStmt] ; -# 23| 0: [AssignExpr] ...=... -# 23| 0: [VarAccess] p4 +# 24| 1: [IfStmt] if (...) +# 24| 0: [EQExpr] ... == ... +# 24| 0: [AndBitwiseExpr] ... & ... +# 24| 0: [IntegerLiteral] 8 +# 24| 1: [VarAccess] p6 +# 24| 1: [IntegerLiteral] 0 +# 24| 1: [ExprStmt] ; +# 24| 0: [AssignExpr] ...=... +# 24| 0: [VarAccess] p4 # 24| 1: [FloatLiteral] 1.0 -# 23| 2: [ReturnStmt] return ... -# 23| 0: [MethodCall] testStaticCompanionFunction(...) -# 23| -1: [VarAccess] p0 -# 23| 0: [VarAccess] p1 -# 23| 1: [VarAccess] p2 -# 23| 2: [VarAccess] p3 -# 23| 3: [VarAccess] p4 -# 23| 4: [VarAccess] p5 -# 23| 6: [Method] testStaticCompanionFunction -# 23| 3: [TypeAccess] int +# 24| 2: [ReturnStmt] return ... +# 24| 0: [MethodCall] testStaticCompanionFunction(...) +# 24| -1: [VarAccess] p0 +# 24| 0: [VarAccess] p1 +# 24| 1: [VarAccess] p2 +# 24| 2: [VarAccess] p3 +# 24| 3: [VarAccess] p4 +# 24| 4: [VarAccess] p5 +# 24| 6: [Method] testStaticCompanionFunction +# 24| 3: [TypeAccess] int #-----| 4: (Parameters) # 24| 0: [Parameter] a # 24| 0: [TypeAccess] int @@ -809,10 +809,10 @@ test.kt: # 24| 0: [TypeAccess] double # 24| 3: [Parameter] e # 24| 0: [TypeAccess] boolean -# 23| 5: [BlockStmt] { ... } -# 23| 0: [ReturnStmt] return ... -# 23| 0: [MethodCall] testStaticCompanionFunction$default(...) -# 23| -1: [TypeAccess] Companion +# 24| 5: [BlockStmt] { ... } +# 24| 0: [ReturnStmt] return ... +# 24| 0: [MethodCall] testStaticCompanionFunction$default(...) +# 24| -1: [TypeAccess] Companion # 0| 0: [ThisAccess] this # 0| 1: [VarAccess] a # 0| 2: [VarAccess] b @@ -821,8 +821,8 @@ test.kt: # 0| 5: [VarAccess] e # 1| 6: [IntegerLiteral] 23 # 1| 7: [NullLiteral] null -# 23| 7: [Method] testStaticCompanionFunction -# 23| 3: [TypeAccess] int +# 24| 7: [Method] testStaticCompanionFunction +# 24| 3: [TypeAccess] int #-----| 4: (Parameters) # 24| 0: [Parameter] a # 24| 0: [TypeAccess] int @@ -834,18 +834,18 @@ test.kt: # 24| 0: [TypeAccess] float # 24| 4: [Parameter] e # 24| 0: [TypeAccess] boolean -# 23| 5: [BlockStmt] { ... } -# 23| 0: [ReturnStmt] return ... -# 23| 0: [MethodCall] testStaticCompanionFunction(...) -# 23| -1: [VarAccess] Test2.Companion -# 23| -1: [TypeAccess] Test2 -# 23| 0: [VarAccess] a -# 23| 1: [VarAccess] b -# 23| 2: [VarAccess] c -# 23| 3: [VarAccess] d -# 23| 4: [VarAccess] e -# 23| 8: [Method] testStaticCompanionFunction -# 23| 3: [TypeAccess] int +# 24| 5: [BlockStmt] { ... } +# 24| 0: [ReturnStmt] return ... +# 24| 0: [MethodCall] testStaticCompanionFunction(...) +# 24| -1: [VarAccess] Test2.Companion +# 24| -1: [TypeAccess] Test2 +# 24| 0: [VarAccess] a +# 24| 1: [VarAccess] b +# 24| 2: [VarAccess] c +# 24| 3: [VarAccess] d +# 24| 4: [VarAccess] e +# 24| 8: [Method] testStaticCompanionFunction +# 24| 3: [TypeAccess] int #-----| 4: (Parameters) # 24| 0: [Parameter] a # 24| 0: [TypeAccess] int @@ -853,10 +853,10 @@ test.kt: # 24| 0: [TypeAccess] double # 24| 2: [Parameter] e # 24| 0: [TypeAccess] boolean -# 23| 5: [BlockStmt] { ... } -# 23| 0: [ReturnStmt] return ... -# 23| 0: [MethodCall] testStaticCompanionFunction$default(...) -# 23| -1: [TypeAccess] Companion +# 24| 5: [BlockStmt] { ... } +# 24| 0: [ReturnStmt] return ... +# 24| 0: [MethodCall] testStaticCompanionFunction$default(...) +# 24| -1: [TypeAccess] Companion # 0| 0: [ThisAccess] this # 0| 1: [VarAccess] a # 1| 2: [NullLiteral] null @@ -953,17 +953,17 @@ test.kt: # 0| 3: [VarAccess] d # 1| 4: [IntegerLiteral] 11 # 1| 5: [NullLiteral] null -# 32| 5: [Method] testMemberFunction -# 32| 3: [TypeAccess] int +# 33| 5: [Method] testMemberFunction +# 33| 3: [TypeAccess] int #-----| 4: (Parameters) # 33| 0: [Parameter] b # 33| 0: [TypeAccess] T # 33| 1: [Parameter] d # 33| 0: [TypeAccess] T -# 32| 5: [BlockStmt] { ... } -# 32| 0: [ReturnStmt] return ... -# 32| 0: [MethodCall] testMemberFunction$default(...) -# 32| -1: [TypeAccess] GenericTest<> +# 33| 5: [BlockStmt] { ... } +# 33| 0: [ReturnStmt] return ... +# 33| 0: [MethodCall] testMemberFunction$default(...) +# 33| -1: [TypeAccess] GenericTest<> # 0| 0: [ThisAccess] this # 1| 1: [IntegerLiteral] 0 # 0| 2: [VarAccess] b @@ -971,10 +971,10 @@ test.kt: # 0| 4: [VarAccess] d # 1| 5: [IntegerLiteral] 10 # 1| 6: [NullLiteral] null -# 32| 6: [Method] testMemberFunction +# 33| 6: [Method] testMemberFunction #-----| 1: (Annotations) # 32| 1: [Annotation] JvmOverloads -# 32| 3: [TypeAccess] int +# 33| 3: [TypeAccess] int #-----| 4: (Parameters) # 33| 0: [Parameter] a # 33| 0: [TypeAccess] int @@ -987,8 +987,8 @@ test.kt: # 33| 5: [BlockStmt] { ... } # 33| 0: [ReturnStmt] return ... # 33| 0: [VarAccess] a -# 32| 7: [Method] testMemberFunction -# 32| 3: [TypeAccess] int +# 33| 7: [Method] testMemberFunction +# 33| 3: [TypeAccess] int #-----| 4: (Parameters) # 33| 0: [Parameter] a # 33| 0: [TypeAccess] int @@ -996,10 +996,10 @@ test.kt: # 33| 0: [TypeAccess] T # 33| 2: [Parameter] d # 33| 0: [TypeAccess] T -# 32| 5: [BlockStmt] { ... } -# 32| 0: [ReturnStmt] return ... -# 32| 0: [MethodCall] testMemberFunction$default(...) -# 32| -1: [TypeAccess] GenericTest<> +# 33| 5: [BlockStmt] { ... } +# 33| 0: [ReturnStmt] return ... +# 33| 0: [MethodCall] testMemberFunction$default(...) +# 33| -1: [TypeAccess] GenericTest<> # 0| 0: [ThisAccess] this # 0| 1: [VarAccess] a # 0| 2: [VarAccess] b @@ -1007,51 +1007,51 @@ test.kt: # 0| 4: [VarAccess] d # 1| 5: [IntegerLiteral] 11 # 1| 6: [NullLiteral] null -# 32| 8: [Method] testMemberFunction$default -# 32| 3: [TypeAccess] int +# 33| 8: [Method] testMemberFunction$default +# 33| 3: [TypeAccess] int #-----| 4: (Parameters) -# 32| 0: [Parameter] p0 -# 32| 0: [TypeAccess] GenericTest<> -# 32| 1: [Parameter] p1 -# 32| 0: [TypeAccess] int -# 32| 2: [Parameter] p2 -# 32| 0: [TypeAccess] Object -# 32| 3: [Parameter] p3 -# 32| 0: [TypeAccess] String -# 32| 4: [Parameter] p4 -# 32| 0: [TypeAccess] Object -# 32| 5: [Parameter] p5 -# 32| 0: [TypeAccess] int -# 32| 6: [Parameter] p6 -# 32| 0: [TypeAccess] Object -# 32| 5: [BlockStmt] { ... } -# 32| 0: [IfStmt] if (...) -# 32| 0: [EQExpr] ... == ... -# 32| 0: [AndBitwiseExpr] ... & ... -# 32| 0: [IntegerLiteral] 1 -# 32| 1: [VarAccess] p5 -# 32| 1: [IntegerLiteral] 0 -# 32| 1: [ExprStmt] ; -# 32| 0: [AssignExpr] ...=... -# 32| 0: [VarAccess] p1 +# 33| 0: [Parameter] p0 +# 33| 0: [TypeAccess] GenericTest<> +# 33| 1: [Parameter] p1 +# 33| 0: [TypeAccess] int +# 33| 2: [Parameter] p2 +# 33| 0: [TypeAccess] Object +# 33| 3: [Parameter] p3 +# 33| 0: [TypeAccess] String +# 33| 4: [Parameter] p4 +# 33| 0: [TypeAccess] Object +# 33| 5: [Parameter] p5 +# 33| 0: [TypeAccess] int +# 33| 6: [Parameter] p6 +# 33| 0: [TypeAccess] Object +# 33| 5: [BlockStmt] { ... } +# 33| 0: [IfStmt] if (...) +# 33| 0: [EQExpr] ... == ... +# 33| 0: [AndBitwiseExpr] ... & ... +# 33| 0: [IntegerLiteral] 1 +# 33| 1: [VarAccess] p5 +# 33| 1: [IntegerLiteral] 0 +# 33| 1: [ExprStmt] ; +# 33| 0: [AssignExpr] ...=... +# 33| 0: [VarAccess] p1 # 33| 1: [IntegerLiteral] 1 -# 32| 1: [IfStmt] if (...) -# 32| 0: [EQExpr] ... == ... -# 32| 0: [AndBitwiseExpr] ... & ... -# 32| 0: [IntegerLiteral] 4 -# 32| 1: [VarAccess] p5 -# 32| 1: [IntegerLiteral] 0 -# 32| 1: [ExprStmt] ; -# 32| 0: [AssignExpr] ...=... -# 32| 0: [VarAccess] p3 +# 33| 1: [IfStmt] if (...) +# 33| 0: [EQExpr] ... == ... +# 33| 0: [AndBitwiseExpr] ... & ... +# 33| 0: [IntegerLiteral] 4 +# 33| 1: [VarAccess] p5 +# 33| 1: [IntegerLiteral] 0 +# 33| 1: [ExprStmt] ; +# 33| 0: [AssignExpr] ...=... +# 33| 0: [VarAccess] p3 # 33| 1: [StringLiteral] "Hello world" -# 32| 2: [ReturnStmt] return ... -# 32| 0: [MethodCall] testMemberFunction(...) -# 32| -1: [VarAccess] p0 -# 32| 0: [VarAccess] p1 -# 32| 1: [VarAccess] p2 -# 32| 2: [VarAccess] p3 -# 32| 3: [VarAccess] p4 +# 33| 2: [ReturnStmt] return ... +# 33| 0: [MethodCall] testMemberFunction(...) +# 33| -1: [VarAccess] p0 +# 33| 0: [VarAccess] p1 +# 33| 1: [VarAccess] p2 +# 33| 2: [VarAccess] p3 +# 33| 3: [VarAccess] p4 # 35| 9: [Method] useSpecialised # 35| 3: [TypeAccess] Unit #-----| 4: (Parameters) diff --git a/java/ql/test-kotlin2/library-tests/jvmoverloads-annotation/test.expected b/java/ql/test-kotlin2/library-tests/jvmoverloads-annotation/test.expected index a8d3f281f8c1..e47edc61a6b3 100644 --- a/java/ql/test-kotlin2/library-tests/jvmoverloads-annotation/test.expected +++ b/java/ql/test-kotlin2/library-tests/jvmoverloads-annotation/test.expected @@ -13,45 +13,45 @@ | file:///!unknown-binary-location/GenericTest.class:0:0:0:0 | GenericTest | file:///!unknown-binary-location/GenericTest.class:0:0:0:0 | testMemberFunction | testMemberFunction(java.lang.Float,java.lang.Float) | | file:///!unknown-binary-location/GenericTest.class:0:0:0:0 | GenericTest | file:///!unknown-binary-location/GenericTest.class:0:0:0:0 | useSpecialised | useSpecialised(GenericTest,GenericTest) | | test.kt:0:0:0:0 | TestKt | test.kt:1:1:1:31 | getString | getString() | -| test.kt:0:0:0:0 | TestKt | test.kt:44:1:45:112 | testExtensionFunction | testExtensionFunction(Test,int,double,boolean) | -| test.kt:0:0:0:0 | TestKt | test.kt:44:1:45:112 | testExtensionFunction | testExtensionFunction(Test,int,java.lang.String,double,boolean) | -| test.kt:0:0:0:0 | TestKt | test.kt:44:1:45:112 | testExtensionFunction | testExtensionFunction(Test,int,java.lang.String,double,float,boolean) | -| test.kt:0:0:0:0 | TestKt | test.kt:44:1:45:112 | testExtensionFunction$default | testExtensionFunction$default(Test,int,java.lang.String,double,float,boolean,int,java.lang.Object) | +| test.kt:0:0:0:0 | TestKt | test.kt:45:1:45:112 | testExtensionFunction | testExtensionFunction(Test,int,double,boolean) | +| test.kt:0:0:0:0 | TestKt | test.kt:45:1:45:112 | testExtensionFunction | testExtensionFunction(Test,int,java.lang.String,double,boolean) | +| test.kt:0:0:0:0 | TestKt | test.kt:45:1:45:112 | testExtensionFunction | testExtensionFunction(Test,int,java.lang.String,double,float,boolean) | +| test.kt:0:0:0:0 | TestKt | test.kt:45:1:45:112 | testExtensionFunction$default | testExtensionFunction$default(Test,int,java.lang.String,double,float,boolean,int,java.lang.Object) | | test.kt:3:1:14:1 | Test | test.kt:3:1:14:1 | Test | Test() | -| test.kt:3:1:14:1 | Test | test.kt:5:3:6:106 | testStaticFunction | testStaticFunction(int,double,boolean) | -| test.kt:3:1:14:1 | Test | test.kt:5:3:6:106 | testStaticFunction | testStaticFunction(int,java.lang.String,double,boolean) | -| test.kt:3:1:14:1 | Test | test.kt:5:3:6:106 | testStaticFunction | testStaticFunction(int,java.lang.String,double,float,boolean) | -| test.kt:3:1:14:1 | Test | test.kt:5:3:6:106 | testStaticFunction$default | testStaticFunction$default(int,java.lang.String,double,float,boolean,int,java.lang.Object) | -| test.kt:3:1:14:1 | Test | test.kt:8:3:9:106 | testMemberFunction | testMemberFunction(int,double,boolean) | -| test.kt:3:1:14:1 | Test | test.kt:8:3:9:106 | testMemberFunction | testMemberFunction(int,java.lang.String,double,boolean) | -| test.kt:3:1:14:1 | Test | test.kt:8:3:9:106 | testMemberFunction | testMemberFunction(int,java.lang.String,double,float,boolean) | -| test.kt:3:1:14:1 | Test | test.kt:8:3:9:106 | testMemberFunction$default | testMemberFunction$default(Test,int,java.lang.String,double,float,boolean,int,java.lang.Object) | -| test.kt:3:1:14:1 | Test | test.kt:11:3:12:121 | testMemberExtensionFunction | testMemberExtensionFunction(Test2,int,double,boolean) | -| test.kt:3:1:14:1 | Test | test.kt:11:3:12:121 | testMemberExtensionFunction | testMemberExtensionFunction(Test2,int,java.lang.String,double,boolean) | -| test.kt:3:1:14:1 | Test | test.kt:11:3:12:121 | testMemberExtensionFunction | testMemberExtensionFunction(Test2,int,java.lang.String,double,float,boolean) | -| test.kt:3:1:14:1 | Test | test.kt:11:3:12:121 | testMemberExtensionFunction$default | testMemberExtensionFunction$default(Test,Test2,int,java.lang.String,double,float,boolean,int,java.lang.Object) | -| test.kt:16:1:28:1 | Test2 | test.kt:16:20:16:117 | Test2 | Test2(int,double,boolean) | -| test.kt:16:1:28:1 | Test2 | test.kt:16:20:16:117 | Test2 | Test2(int,java.lang.String,double,boolean) | -| test.kt:16:1:28:1 | Test2 | test.kt:16:20:16:117 | Test2 | Test2(int,java.lang.String,double,float,boolean) | -| test.kt:16:1:28:1 | Test2 | test.kt:16:20:16:117 | Test2 | Test2(int,java.lang.String,double,float,boolean,int,kotlin.jvm.internal.DefaultConstructorMarker) | -| test.kt:16:1:28:1 | Test2 | test.kt:23:5:24:117 | testStaticCompanionFunction | testStaticCompanionFunction(int,double,boolean) | -| test.kt:16:1:28:1 | Test2 | test.kt:23:5:24:117 | testStaticCompanionFunction | testStaticCompanionFunction(int,java.lang.String,double,boolean) | -| test.kt:16:1:28:1 | Test2 | test.kt:23:5:24:117 | testStaticCompanionFunction | testStaticCompanionFunction(int,java.lang.String,double,float,boolean) | +| test.kt:3:1:14:1 | Test | test.kt:6:3:6:106 | testStaticFunction | testStaticFunction(int,double,boolean) | +| test.kt:3:1:14:1 | Test | test.kt:6:3:6:106 | testStaticFunction | testStaticFunction(int,java.lang.String,double,boolean) | +| test.kt:3:1:14:1 | Test | test.kt:6:3:6:106 | testStaticFunction | testStaticFunction(int,java.lang.String,double,float,boolean) | +| test.kt:3:1:14:1 | Test | test.kt:6:3:6:106 | testStaticFunction$default | testStaticFunction$default(int,java.lang.String,double,float,boolean,int,java.lang.Object) | +| test.kt:3:1:14:1 | Test | test.kt:9:3:9:106 | testMemberFunction | testMemberFunction(int,double,boolean) | +| test.kt:3:1:14:1 | Test | test.kt:9:3:9:106 | testMemberFunction | testMemberFunction(int,java.lang.String,double,boolean) | +| test.kt:3:1:14:1 | Test | test.kt:9:3:9:106 | testMemberFunction | testMemberFunction(int,java.lang.String,double,float,boolean) | +| test.kt:3:1:14:1 | Test | test.kt:9:3:9:106 | testMemberFunction$default | testMemberFunction$default(Test,int,java.lang.String,double,float,boolean,int,java.lang.Object) | +| test.kt:3:1:14:1 | Test | test.kt:12:3:12:121 | testMemberExtensionFunction | testMemberExtensionFunction(Test2,int,double,boolean) | +| test.kt:3:1:14:1 | Test | test.kt:12:3:12:121 | testMemberExtensionFunction | testMemberExtensionFunction(Test2,int,java.lang.String,double,boolean) | +| test.kt:3:1:14:1 | Test | test.kt:12:3:12:121 | testMemberExtensionFunction | testMemberExtensionFunction(Test2,int,java.lang.String,double,float,boolean) | +| test.kt:3:1:14:1 | Test | test.kt:12:3:12:121 | testMemberExtensionFunction$default | testMemberExtensionFunction$default(Test,Test2,int,java.lang.String,double,float,boolean,int,java.lang.Object) | +| test.kt:16:1:28:1 | Test2 | test.kt:16:34:16:117 | Test2 | Test2(int,double,boolean) | +| test.kt:16:1:28:1 | Test2 | test.kt:16:34:16:117 | Test2 | Test2(int,java.lang.String,double,boolean) | +| test.kt:16:1:28:1 | Test2 | test.kt:16:34:16:117 | Test2 | Test2(int,java.lang.String,double,float,boolean) | +| test.kt:16:1:28:1 | Test2 | test.kt:16:34:16:117 | Test2 | Test2(int,java.lang.String,double,float,boolean,int,kotlin.jvm.internal.DefaultConstructorMarker) | +| test.kt:16:1:28:1 | Test2 | test.kt:24:5:24:117 | testStaticCompanionFunction | testStaticCompanionFunction(int,double,boolean) | +| test.kt:16:1:28:1 | Test2 | test.kt:24:5:24:117 | testStaticCompanionFunction | testStaticCompanionFunction(int,java.lang.String,double,boolean) | +| test.kt:16:1:28:1 | Test2 | test.kt:24:5:24:117 | testStaticCompanionFunction | testStaticCompanionFunction(int,java.lang.String,double,float,boolean) | | test.kt:18:3:26:3 | Companion | test.kt:18:3:26:3 | Companion | Companion() | -| test.kt:18:3:26:3 | Companion | test.kt:20:5:21:111 | testCompanionFunction | testCompanionFunction(int,double,boolean) | -| test.kt:18:3:26:3 | Companion | test.kt:20:5:21:111 | testCompanionFunction | testCompanionFunction(int,java.lang.String,double,boolean) | -| test.kt:18:3:26:3 | Companion | test.kt:20:5:21:111 | testCompanionFunction | testCompanionFunction(int,java.lang.String,double,float,boolean) | -| test.kt:18:3:26:3 | Companion | test.kt:20:5:21:111 | testCompanionFunction$default | testCompanionFunction$default(Test2.Companion,int,java.lang.String,double,float,boolean,int,java.lang.Object) | -| test.kt:18:3:26:3 | Companion | test.kt:23:5:24:117 | testStaticCompanionFunction | testStaticCompanionFunction(int,double,boolean) | -| test.kt:18:3:26:3 | Companion | test.kt:23:5:24:117 | testStaticCompanionFunction | testStaticCompanionFunction(int,java.lang.String,double,boolean) | -| test.kt:18:3:26:3 | Companion | test.kt:23:5:24:117 | testStaticCompanionFunction | testStaticCompanionFunction(int,java.lang.String,double,float,boolean) | -| test.kt:18:3:26:3 | Companion | test.kt:23:5:24:117 | testStaticCompanionFunction$default | testStaticCompanionFunction$default(Test2.Companion,int,java.lang.String,double,float,boolean,int,java.lang.Object) | -| test.kt:30:1:42:1 | GenericTest | test.kt:30:29:30:104 | GenericTest | GenericTest(int,java.lang.Object,java.lang.Object) | -| test.kt:30:1:42:1 | GenericTest | test.kt:30:29:30:104 | GenericTest | GenericTest(int,java.lang.Object,java.lang.String,java.lang.Object) | -| test.kt:30:1:42:1 | GenericTest | test.kt:30:29:30:104 | GenericTest | GenericTest(int,java.lang.Object,java.lang.String,java.lang.Object,int,kotlin.jvm.internal.DefaultConstructorMarker) | -| test.kt:30:1:42:1 | GenericTest | test.kt:30:29:30:104 | GenericTest | GenericTest(java.lang.Object,java.lang.Object) | -| test.kt:30:1:42:1 | GenericTest | test.kt:32:3:33:84 | testMemberFunction | testMemberFunction(int,java.lang.Object,java.lang.Object) | -| test.kt:30:1:42:1 | GenericTest | test.kt:32:3:33:84 | testMemberFunction | testMemberFunction(int,java.lang.Object,java.lang.String,java.lang.Object) | -| test.kt:30:1:42:1 | GenericTest | test.kt:32:3:33:84 | testMemberFunction | testMemberFunction(java.lang.Object,java.lang.Object) | -| test.kt:30:1:42:1 | GenericTest | test.kt:32:3:33:84 | testMemberFunction$default | testMemberFunction$default(GenericTest,int,java.lang.Object,java.lang.String,java.lang.Object,int,java.lang.Object) | +| test.kt:18:3:26:3 | Companion | test.kt:21:5:21:111 | testCompanionFunction | testCompanionFunction(int,double,boolean) | +| test.kt:18:3:26:3 | Companion | test.kt:21:5:21:111 | testCompanionFunction | testCompanionFunction(int,java.lang.String,double,boolean) | +| test.kt:18:3:26:3 | Companion | test.kt:21:5:21:111 | testCompanionFunction | testCompanionFunction(int,java.lang.String,double,float,boolean) | +| test.kt:18:3:26:3 | Companion | test.kt:21:5:21:111 | testCompanionFunction$default | testCompanionFunction$default(Test2.Companion,int,java.lang.String,double,float,boolean,int,java.lang.Object) | +| test.kt:18:3:26:3 | Companion | test.kt:24:5:24:117 | testStaticCompanionFunction | testStaticCompanionFunction(int,double,boolean) | +| test.kt:18:3:26:3 | Companion | test.kt:24:5:24:117 | testStaticCompanionFunction | testStaticCompanionFunction(int,java.lang.String,double,boolean) | +| test.kt:18:3:26:3 | Companion | test.kt:24:5:24:117 | testStaticCompanionFunction | testStaticCompanionFunction(int,java.lang.String,double,float,boolean) | +| test.kt:18:3:26:3 | Companion | test.kt:24:5:24:117 | testStaticCompanionFunction$default | testStaticCompanionFunction$default(Test2.Companion,int,java.lang.String,double,float,boolean,int,java.lang.Object) | +| test.kt:30:1:42:1 | GenericTest | test.kt:30:43:30:104 | GenericTest | GenericTest(int,java.lang.Object,java.lang.Object) | +| test.kt:30:1:42:1 | GenericTest | test.kt:30:43:30:104 | GenericTest | GenericTest(int,java.lang.Object,java.lang.String,java.lang.Object) | +| test.kt:30:1:42:1 | GenericTest | test.kt:30:43:30:104 | GenericTest | GenericTest(int,java.lang.Object,java.lang.String,java.lang.Object,int,kotlin.jvm.internal.DefaultConstructorMarker) | +| test.kt:30:1:42:1 | GenericTest | test.kt:30:43:30:104 | GenericTest | GenericTest(java.lang.Object,java.lang.Object) | +| test.kt:30:1:42:1 | GenericTest | test.kt:33:3:33:84 | testMemberFunction | testMemberFunction(int,java.lang.Object,java.lang.Object) | +| test.kt:30:1:42:1 | GenericTest | test.kt:33:3:33:84 | testMemberFunction | testMemberFunction(int,java.lang.Object,java.lang.String,java.lang.Object) | +| test.kt:30:1:42:1 | GenericTest | test.kt:33:3:33:84 | testMemberFunction | testMemberFunction(java.lang.Object,java.lang.Object) | +| test.kt:30:1:42:1 | GenericTest | test.kt:33:3:33:84 | testMemberFunction$default | testMemberFunction$default(GenericTest,int,java.lang.Object,java.lang.String,java.lang.Object,int,java.lang.Object) | | test.kt:30:1:42:1 | GenericTest | test.kt:35:3:40:3 | useSpecialised | useSpecialised(GenericTest,GenericTest) | diff --git a/java/ql/test-kotlin2/library-tests/jvmoverloads_flow/test.expected b/java/ql/test-kotlin2/library-tests/jvmoverloads_flow/test.expected index feac5a14c95f..5892fe226aa5 100644 --- a/java/ql/test-kotlin2/library-tests/jvmoverloads_flow/test.expected +++ b/java/ql/test-kotlin2/library-tests/jvmoverloads_flow/test.expected @@ -12,9 +12,9 @@ | User.java:35:61:35:68 | source(...) | test.kt:74:10:74:10 | s | User.java:5:22:5:25 | test | | User.java:38:28:38:35 | source(...) | test.kt:84:10:84:10 | y | User.java:5:22:5:25 | test | | User.java:39:20:39:27 | source(...) | test.kt:84:10:84:10 | y | User.java:5:22:5:25 | test | -| test.kt:10:55:10:62 | source(...) | test.kt:10:84:10:84 | s | test.kt:9:3:10:87 | taintSuppliedAsDefault$default | -| test.kt:22:63:22:70 | source(...) | test.kt:22:92:22:92 | s | test.kt:21:5:22:95 | taintSuppliedAsDefaultStatic$default | -| test.kt:30:55:30:62 | source(...) | test.kt:30:84:30:84 | s | test.kt:29:3:30:87 | taintSuppliedAsDefault$default | -| test.kt:40:53:40:60 | source(...) | test.kt:40:80:40:80 | s | test.kt:39:3:40:83 | taintSuppliedAsDefault$default | -| test.kt:47:92:47:99 | source(...) | test.kt:50:10:50:10 | s | test.kt:47:41:47:112 | ConstructorTaintsByDefault | -| test.kt:63:100:63:107 | source(...) | test.kt:66:10:66:10 | s | test.kt:63:51:63:118 | GenericConstructorTaintsByDefault | +| test.kt:10:55:10:62 | source(...) | test.kt:10:84:10:84 | s | test.kt:10:3:10:87 | taintSuppliedAsDefault$default | +| test.kt:22:63:22:70 | source(...) | test.kt:22:92:22:92 | s | test.kt:22:5:22:95 | taintSuppliedAsDefaultStatic$default | +| test.kt:30:55:30:62 | source(...) | test.kt:30:84:30:84 | s | test.kt:30:3:30:87 | taintSuppliedAsDefault$default | +| test.kt:40:53:40:60 | source(...) | test.kt:40:80:40:80 | s | test.kt:40:3:40:83 | taintSuppliedAsDefault$default | +| test.kt:47:92:47:99 | source(...) | test.kt:50:10:50:10 | s | test.kt:47:55:47:112 | ConstructorTaintsByDefault | +| test.kt:63:100:63:107 | source(...) | test.kt:66:10:66:10 | s | test.kt:63:65:63:118 | GenericConstructorTaintsByDefault | diff --git a/java/ql/test-kotlin2/library-tests/jvmoverloads_generics/test.expected b/java/ql/test-kotlin2/library-tests/jvmoverloads_generics/test.expected index 964935c841fd..7bd54989bcf8 100644 --- a/java/ql/test-kotlin2/library-tests/jvmoverloads_generics/test.expected +++ b/java/ql/test-kotlin2/library-tests/jvmoverloads_generics/test.expected @@ -1,9 +1,9 @@ -| test.kt:3:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads() | return | T | genericFunctionWithOverloads() | -| test.kt:3:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object) | param | T | genericFunctionWithOverloads(java.lang.Object) | -| test.kt:3:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object) | return | T | genericFunctionWithOverloads(java.lang.Object) | -| test.kt:3:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object,java.util.List) | param | List | genericFunctionWithOverloads(java.lang.Object,java.util.List) | -| test.kt:3:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object,java.util.List) | param | T | genericFunctionWithOverloads(java.lang.Object,java.util.List) | -| test.kt:3:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object,java.util.List) | return | T | genericFunctionWithOverloads(java.lang.Object,java.util.List) | -| test.kt:3:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object,java.util.List,java.lang.Object) | param | List | genericFunctionWithOverloads(java.lang.Object,java.util.List,java.lang.Object) | -| test.kt:3:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object,java.util.List,java.lang.Object) | param | T | genericFunctionWithOverloads(java.lang.Object,java.util.List,java.lang.Object) | -| test.kt:3:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object,java.util.List,java.lang.Object) | return | T | genericFunctionWithOverloads(java.lang.Object,java.util.List,java.lang.Object) | +| test.kt:4:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads() | return | T | genericFunctionWithOverloads() | +| test.kt:4:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object) | param | T | genericFunctionWithOverloads(java.lang.Object) | +| test.kt:4:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object) | return | T | genericFunctionWithOverloads(java.lang.Object) | +| test.kt:4:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object,java.util.List) | param | List | genericFunctionWithOverloads(java.lang.Object,java.util.List) | +| test.kt:4:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object,java.util.List) | param | T | genericFunctionWithOverloads(java.lang.Object,java.util.List) | +| test.kt:4:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object,java.util.List) | return | T | genericFunctionWithOverloads(java.lang.Object,java.util.List) | +| test.kt:4:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object,java.util.List,java.lang.Object) | param | List | genericFunctionWithOverloads(java.lang.Object,java.util.List,java.lang.Object) | +| test.kt:4:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object,java.util.List,java.lang.Object) | param | T | genericFunctionWithOverloads(java.lang.Object,java.util.List,java.lang.Object) | +| test.kt:4:3:4:94 | genericFunctionWithOverloads | genericFunctionWithOverloads(java.lang.Object,java.util.List,java.lang.Object) | return | T | genericFunctionWithOverloads(java.lang.Object,java.util.List,java.lang.Object) | diff --git a/java/ql/test-kotlin2/library-tests/jvmstatic-annotation/test.expected b/java/ql/test-kotlin2/library-tests/jvmstatic-annotation/test.expected index 71e45333654a..813562aa20d6 100644 --- a/java/ql/test-kotlin2/library-tests/jvmstatic-annotation/test.expected +++ b/java/ql/test-kotlin2/library-tests/jvmstatic-annotation/test.expected @@ -3,15 +3,15 @@ staticMembers | test.kt:0:0:0:0 | TestKt | test.kt:49:1:67:1 | externalUser | Method | | test.kt:9:1:29:1 | HasCompanion | test.kt:11:3:27:3 | Companion | Class | | test.kt:9:1:29:1 | HasCompanion | test.kt:11:3:27:3 | Companion | Field | -| test.kt:9:1:29:1 | HasCompanion | test.kt:13:5:13:71 | staticMethod | Method | -| test.kt:9:1:29:1 | HasCompanion | test.kt:16:5:16:37 | getStaticProp | Method | -| test.kt:9:1:29:1 | HasCompanion | test.kt:16:5:16:37 | setStaticProp | Method | +| test.kt:9:1:29:1 | HasCompanion | test.kt:13:16:13:71 | staticMethod | Method | +| test.kt:9:1:29:1 | HasCompanion | test.kt:16:16:16:37 | getStaticProp | Method | +| test.kt:9:1:29:1 | HasCompanion | test.kt:16:16:16:37 | setStaticProp | Method | | test.kt:9:1:29:1 | HasCompanion | test.kt:20:7:20:45 | getPropWithStaticGetter | Method | | test.kt:9:1:29:1 | HasCompanion | test.kt:25:7:25:60 | setPropWithStaticSetter | Method | | test.kt:31:1:47:1 | NonCompanion | test.kt:31:1:47:1 | INSTANCE | Field | -| test.kt:31:1:47:1 | NonCompanion | test.kt:33:3:33:69 | staticMethod | Method | -| test.kt:31:1:47:1 | NonCompanion | test.kt:36:3:36:35 | getStaticProp | Method | -| test.kt:31:1:47:1 | NonCompanion | test.kt:36:3:36:35 | setStaticProp | Method | +| test.kt:31:1:47:1 | NonCompanion | test.kt:33:14:33:69 | staticMethod | Method | +| test.kt:31:1:47:1 | NonCompanion | test.kt:36:14:36:35 | getStaticProp | Method | +| test.kt:31:1:47:1 | NonCompanion | test.kt:36:14:36:35 | setStaticProp | Method | | test.kt:31:1:47:1 | NonCompanion | test.kt:40:5:40:43 | getPropWithStaticGetter | Method | | test.kt:31:1:47:1 | NonCompanion | test.kt:45:5:45:58 | setPropWithStaticSetter | Method | #select @@ -25,11 +25,11 @@ staticMembers | test.kt:11:3:27:3 | Companion | JavaUser.java:8:5:8:73 | setNonStaticProp(...) | JavaUser.java:8:5:8:26 | HasCompanion.Companion | instance | | test.kt:11:3:27:3 | Companion | JavaUser.java:9:5:9:100 | setPropWithStaticGetter(...) | JavaUser.java:9:5:9:26 | HasCompanion.Companion | instance | | test.kt:11:3:27:3 | Companion | JavaUser.java:9:52:9:99 | getPropWithStaticSetter(...) | JavaUser.java:9:52:9:73 | HasCompanion.Companion | instance | -| test.kt:11:3:27:3 | Companion | test.kt:13:5:13:71 | staticMethod(...) | test.kt:13:5:13:71 | HasCompanion.Companion | instance | +| test.kt:11:3:27:3 | Companion | test.kt:13:16:13:71 | staticMethod(...) | test.kt:13:16:13:71 | HasCompanion.Companion | instance | | test.kt:11:3:27:3 | Companion | test.kt:13:54:13:71 | nonStaticMethod(...) | test.kt:13:54:13:71 | this | instance | | test.kt:11:3:27:3 | Companion | test.kt:14:46:14:60 | staticMethod(...) | test.kt:14:46:14:60 | this | instance | -| test.kt:11:3:27:3 | Companion | test.kt:16:5:16:37 | getStaticProp(...) | test.kt:16:5:16:37 | HasCompanion.Companion | instance | -| test.kt:11:3:27:3 | Companion | test.kt:16:5:16:37 | setStaticProp(...) | test.kt:16:5:16:37 | HasCompanion.Companion | instance | +| test.kt:11:3:27:3 | Companion | test.kt:16:16:16:37 | getStaticProp(...) | test.kt:16:16:16:37 | HasCompanion.Companion | instance | +| test.kt:11:3:27:3 | Companion | test.kt:16:16:16:37 | setStaticProp(...) | test.kt:16:16:16:37 | HasCompanion.Companion | instance | | test.kt:11:3:27:3 | Companion | test.kt:20:7:20:45 | getPropWithStaticGetter(...) | test.kt:20:7:20:45 | HasCompanion.Companion | instance | | test.kt:11:3:27:3 | Companion | test.kt:20:26:20:45 | getPropWithStaticSetter(...) | test.kt:20:26:20:45 | this | instance | | test.kt:11:3:27:3 | Companion | test.kt:21:24:21:47 | setPropWithStaticSetter(...) | test.kt:21:24:21:47 | this | instance | diff --git a/java/ql/test-kotlin2/library-tests/lateinit/test.expected b/java/ql/test-kotlin2/library-tests/lateinit/test.expected index 3e8b48d298b8..4a54d9d28585 100644 --- a/java/ql/test-kotlin2/library-tests/lateinit/test.expected +++ b/java/ql/test-kotlin2/library-tests/lateinit/test.expected @@ -1,8 +1,8 @@ | test.kt:4:15:4:26 | println(...) | file:///ConsoleKt.class:0:0:0:0 | println | -| test.kt:9:9:9:13 | getTest0$private(...) | test.kt:2:5:2:40 | getTest0$private | +| test.kt:9:9:9:13 | getTest0$private(...) | test.kt:2:22:2:40 | getTest0$private | | test.kt:9:9:9:17 | f(...) | test.kt:4:5:4:26 | f | | test.kt:10:13:10:23 | get(...) | test.kt:10:13:10:23 | get | -| test.kt:10:13:10:23 | getTest0$private(...) | test.kt:2:5:2:40 | getTest0$private | -| test.kt:10:13:10:23 | setTest0$private(...) | test.kt:2:5:2:40 | setTest0$private | +| test.kt:10:13:10:23 | getTest0$private(...) | test.kt:2:22:2:40 | getTest0$private | +| test.kt:10:13:10:23 | setTest0$private(...) | test.kt:2:22:2:40 | setTest0$private | | test.kt:10:13:10:37 | isInitialized(...) | file:///LateinitKt.class:0:0:0:0 | isInitialized | | test.kt:14:9:14:17 | f(...) | test.kt:4:5:4:26 | f | diff --git a/java/ql/test-kotlin2/library-tests/methods-mixed-java-and-kotlin/test.expected b/java/ql/test-kotlin2/library-tests/methods-mixed-java-and-kotlin/test.expected index 43281e98beba..12654f3142a8 100644 --- a/java/ql/test-kotlin2/library-tests/methods-mixed-java-and-kotlin/test.expected +++ b/java/ql/test-kotlin2/library-tests/methods-mixed-java-and-kotlin/test.expected @@ -2,5 +2,5 @@ | A.java:4:10:4:12 | foo | j.A.foo | foo(java.lang.Object) | A.java:4:10:4:12 | foo | j.A.foo | | B.java:4:17:4:19 | foo | j.B.foo | foo(java.lang.String) | B.java:4:17:4:19 | foo | j.B.foo | | W.kt:4:5:4:17 | foo | k.A.foo | foo(java.lang.Object) | W.kt:4:5:4:17 | foo | k.A.foo | -| W.kt:8:5:8:34 | foo | k.B.foo | foo(java.lang.String) | W.kt:8:5:8:34 | foo | k.B.foo | +| W.kt:8:14:8:34 | foo | k.B.foo | foo(java.lang.String) | W.kt:8:14:8:34 | foo | k.B.foo | | file:///!unknown-binary-location/k/A.class:0:0:0:0 | foo | k.A.foo | foo(java.lang.String) | W.kt:4:5:4:17 | foo | k.A.foo | diff --git a/java/ql/test-kotlin2/library-tests/methods/exprs.expected b/java/ql/test-kotlin2/library-tests/methods/exprs.expected index accffb8beff8..fbe0ff419440 100644 --- a/java/ql/test-kotlin2/library-tests/methods/exprs.expected +++ b/java/ql/test-kotlin2/library-tests/methods/exprs.expected @@ -23,7 +23,6 @@ | dataClass.kt:0:0:0:0 | "DataClass(" | StringLiteral | | dataClass.kt:0:0:0:0 | "x=" | StringLiteral | | dataClass.kt:0:0:0:0 | "y=" | StringLiteral | -| dataClass.kt:0:0:0:0 | (...)... | CastExpr | | dataClass.kt:0:0:0:0 | ... !is ... | NotInstanceOfExpr | | dataClass.kt:0:0:0:0 | ... & ... | AndBitwiseExpr | | dataClass.kt:0:0:0:0 | ... & ... | AndBitwiseExpr | @@ -37,6 +36,7 @@ | dataClass.kt:0:0:0:0 | ...=... | AssignExpr | | dataClass.kt:0:0:0:0 | ...=... | AssignExpr | | dataClass.kt:0:0:0:0 | ...=... | AssignExpr | +| dataClass.kt:0:0:0:0 | | ImplicitCastExpr | | dataClass.kt:0:0:0:0 | DataClass | TypeAccess | | dataClass.kt:0:0:0:0 | DataClass | TypeAccess | | dataClass.kt:0:0:0:0 | DataClass | TypeAccess | @@ -233,12 +233,12 @@ | enumClass.kt:0:0:0:0 | EnumWithFunctions | TypeAccess | | enumClass.kt:0:0:0:0 | EnumWithFunctions | TypeAccess | | enumClass.kt:0:0:0:0 | EnumWithFunctions[] | TypeAccess | +| enumClass.kt:1:1:4:1 | 0 | IntegerLiteral | +| enumClass.kt:1:1:4:1 | Enum | TypeAccess | +| enumClass.kt:1:1:4:1 | EnumClass | TypeAccess | | enumClass.kt:1:1:4:1 | String | TypeAccess | -| enumClass.kt:1:21:1:32 | 0 | IntegerLiteral | -| enumClass.kt:1:21:1:32 | Enum | TypeAccess | -| enumClass.kt:1:21:1:32 | EnumClass | TypeAccess | -| enumClass.kt:1:21:1:32 | new Enum(...) | ClassInstanceExpr | -| enumClass.kt:1:21:1:32 | null | NullLiteral | +| enumClass.kt:1:1:4:1 | new Enum(...) | ClassInstanceExpr | +| enumClass.kt:1:1:4:1 | null | NullLiteral | | enumClass.kt:1:22:1:31 | ...=... | KtInitializerAssignExpr | | enumClass.kt:1:22:1:31 | int | TypeAccess | | enumClass.kt:1:22:1:31 | int | TypeAccess | @@ -275,19 +275,19 @@ | enumClass.kt:8:3:11:4 | VAL | TypeAccess | | enumClass.kt:8:3:11:4 | new EnumWithFunctions(...) | ClassInstanceExpr | | enumClass.kt:8:3:11:4 | new VAL(...) | ClassInstanceExpr | -| enumClass.kt:9:5:9:30 | int | TypeAccess | +| enumClass.kt:9:14:9:30 | int | TypeAccess | | enumClass.kt:9:20:9:25 | int | TypeAccess | | enumClass.kt:9:30:9:30 | i | VarAccess | -| enumClass.kt:10:5:10:42 | int | TypeAccess | +| enumClass.kt:10:14:10:42 | int | TypeAccess | | enumClass.kt:10:20:10:25 | int | TypeAccess | | enumClass.kt:10:30:10:33 | this | ThisAccess | | enumClass.kt:10:30:10:38 | f(...) | MethodCall | | enumClass.kt:10:30:10:42 | ... + ... | AddExpr | | enumClass.kt:10:37:10:37 | i | VarAccess | | enumClass.kt:10:42:10:42 | i | VarAccess | -| enumClass.kt:13:3:13:29 | int | TypeAccess | +| enumClass.kt:13:12:13:29 | int | TypeAccess | | enumClass.kt:13:18:13:23 | int | TypeAccess | -| enumClass.kt:14:3:14:29 | int | TypeAccess | +| enumClass.kt:14:12:14:29 | int | TypeAccess | | enumClass.kt:14:18:14:23 | int | TypeAccess | | methods2.kt:4:1:5:1 | Unit | TypeAccess | | methods2.kt:4:26:4:31 | int | TypeAccess | @@ -374,7 +374,7 @@ | methods5.kt:10:13:10:18 | | ImplicitCoercionToUnitExpr | | methods5.kt:10:13:10:18 | Unit | TypeAccess | | methods5.kt:10:16:10:17 | 42 | IntegerLiteral | -| methods6.kt:3:1:4:1 | Unit | TypeAccess | +| methods6.kt:3:9:4:1 | Unit | TypeAccess | | methods.kt:2:1:3:1 | Unit | TypeAccess | | methods.kt:2:20:2:25 | int | TypeAccess | | methods.kt:2:28:2:33 | int | TypeAccess | @@ -392,9 +392,9 @@ | methods.kt:11:9:11:28 | topLevelMethod(...) | MethodCall | | methods.kt:11:24:11:24 | b | VarAccess | | methods.kt:11:27:11:27 | 4 | IntegerLiteral | -| methods.kt:14:5:14:29 | Unit | TypeAccess | -| methods.kt:15:5:15:35 | Unit | TypeAccess | -| methods.kt:16:5:16:31 | Unit | TypeAccess | -| methods.kt:17:5:17:33 | Unit | TypeAccess | +| methods.kt:14:12:14:29 | Unit | TypeAccess | +| methods.kt:15:15:15:35 | Unit | TypeAccess | +| methods.kt:16:13:16:31 | Unit | TypeAccess | +| methods.kt:17:14:17:33 | Unit | TypeAccess | | methods.kt:18:5:18:36 | Unit | TypeAccess | -| methods.kt:19:5:19:29 | Unit | TypeAccess | +| methods.kt:19:12:19:29 | Unit | TypeAccess | diff --git a/java/ql/test-kotlin2/library-tests/methods/methods.expected b/java/ql/test-kotlin2/library-tests/methods/methods.expected index 94c0d62e20b1..abd50a29c1f2 100644 --- a/java/ql/test-kotlin2/library-tests/methods/methods.expected +++ b/java/ql/test-kotlin2/library-tests/methods/methods.expected @@ -34,10 +34,10 @@ methods | enumClass.kt:6:1:16:1 | EnumWithFunctions | enumClass.kt:0:0:0:0 | getEntries | getEntries() | final, public, static | Compiler generated | | enumClass.kt:6:1:16:1 | EnumWithFunctions | enumClass.kt:0:0:0:0 | valueOf | valueOf(java.lang.String) | final, public, static | Compiler generated | | enumClass.kt:6:1:16:1 | EnumWithFunctions | enumClass.kt:0:0:0:0 | values | values() | final, public, static | Compiler generated | -| enumClass.kt:6:1:16:1 | EnumWithFunctions | enumClass.kt:13:3:13:29 | f | f(int) | abstract, public | | -| enumClass.kt:6:1:16:1 | EnumWithFunctions | enumClass.kt:14:3:14:29 | g | g(int) | abstract, public | | -| enumClass.kt:8:3:11:4 | VAL | enumClass.kt:9:5:9:30 | f | f(int) | override, public | | -| enumClass.kt:8:3:11:4 | VAL | enumClass.kt:10:5:10:42 | g | g(int) | override, public | | +| enumClass.kt:6:1:16:1 | EnumWithFunctions | enumClass.kt:13:12:13:29 | f | f(int) | abstract, public | | +| enumClass.kt:6:1:16:1 | EnumWithFunctions | enumClass.kt:14:12:14:29 | g | g(int) | abstract, public | | +| enumClass.kt:8:3:11:4 | VAL | enumClass.kt:9:14:9:30 | f | f(int) | override, public | | +| enumClass.kt:8:3:11:4 | VAL | enumClass.kt:10:14:10:42 | g | g(int) | override, public | | | methods2.kt:0:0:0:0 | Methods2Kt | methods2.kt:4:1:5:1 | fooBarTopLevelMethod | fooBarTopLevelMethod(int,int) | final, public, static | | | methods2.kt:7:1:10:1 | Class2 | methods2.kt:8:5:9:5 | fooBarClassMethod | fooBarClassMethod(int,int) | final, public | | | methods3.kt:0:0:0:0 | Methods3Kt | methods3.kt:3:1:3:49 | fooBarTopLevelMethodExt | fooBarTopLevelMethodExt(java.lang.String,int) | final, public, static | | @@ -48,16 +48,16 @@ methods | methods5.kt:0:0:0:0 | Methods5Kt | methods5.kt:3:1:11:1 | x | x() | final, public, static | | | methods5.kt:5:3:5:27 | | methods5.kt:5:3:5:27 | a | a(int) | final, public | | | methods5.kt:9:3:9:32 | | methods5.kt:9:3:9:32 | f1 | f1(foo.bar.C1,int) | final, public | | -| methods6.kt:0:0:0:0 | Methods6Kt | methods6.kt:3:1:4:1 | s | s() | final, public, static, suspend | | +| methods6.kt:0:0:0:0 | Methods6Kt | methods6.kt:3:9:4:1 | s | s() | final, public, static, suspend | | | methods.kt:0:0:0:0 | MethodsKt | methods.kt:2:1:3:1 | topLevelMethod | topLevelMethod(int,int) | final, public, static | | | methods.kt:5:1:20:1 | Class | methods.kt:6:5:7:5 | classMethod | classMethod(int,int) | final, public | | | methods.kt:5:1:20:1 | Class | methods.kt:9:5:12:5 | anotherClassMethod | anotherClassMethod(int,int) | final, public | | -| methods.kt:5:1:20:1 | Class | methods.kt:14:5:14:29 | publicFun | publicFun() | final, public | | -| methods.kt:5:1:20:1 | Class | methods.kt:15:5:15:35 | protectedFun | protectedFun() | final, protected | | -| methods.kt:5:1:20:1 | Class | methods.kt:16:5:16:31 | privateFun | privateFun() | final, private | | -| methods.kt:5:1:20:1 | Class | methods.kt:17:5:17:33 | internalFun$main | internalFun$main() | final, internal | | +| methods.kt:5:1:20:1 | Class | methods.kt:14:12:14:29 | publicFun | publicFun() | final, public | | +| methods.kt:5:1:20:1 | Class | methods.kt:15:15:15:35 | protectedFun | protectedFun() | final, protected | | +| methods.kt:5:1:20:1 | Class | methods.kt:16:13:16:31 | privateFun | privateFun() | final, private | | +| methods.kt:5:1:20:1 | Class | methods.kt:17:14:17:33 | internalFun$main | internalFun$main() | final, internal | | | methods.kt:5:1:20:1 | Class | methods.kt:18:5:18:36 | noExplicitVisibilityFun | noExplicitVisibilityFun() | final, public | | -| methods.kt:5:1:20:1 | Class | methods.kt:19:5:19:29 | inlineFun | inlineFun() | final, inline, public | | +| methods.kt:5:1:20:1 | Class | methods.kt:19:12:19:29 | inlineFun | inlineFun() | final, inline, public | | constructors | dataClass.kt:1:1:1:47 | DataClass | dataClass.kt:1:21:1:47 | DataClass | DataClass(int,java.lang.String) | | delegates.kt:3:1:12:1 | MyClass | delegates.kt:3:1:12:1 | MyClass | MyClass() | diff --git a/java/ql/test-kotlin2/library-tests/methods/parameters.expected b/java/ql/test-kotlin2/library-tests/methods/parameters.expected index 3e5485f27245..b26345a228d5 100644 --- a/java/ql/test-kotlin2/library-tests/methods/parameters.expected +++ b/java/ql/test-kotlin2/library-tests/methods/parameters.expected @@ -24,10 +24,10 @@ | delegates.kt:8:66:11:5 | invoke | delegates.kt:9:20:9:22 | new | 2 | | enumClass.kt:0:0:0:0 | valueOf | enumClass.kt:1:1:4:1 | value | 0 | | enumClass.kt:0:0:0:0 | valueOf | enumClass.kt:6:1:16:1 | value | 0 | -| enumClass.kt:9:5:9:30 | f | enumClass.kt:9:20:9:25 | i | 0 | -| enumClass.kt:10:5:10:42 | g | enumClass.kt:10:20:10:25 | i | 0 | -| enumClass.kt:13:3:13:29 | f | enumClass.kt:13:18:13:23 | i | 0 | -| enumClass.kt:14:3:14:29 | g | enumClass.kt:14:18:14:23 | i | 0 | +| enumClass.kt:9:14:9:30 | f | enumClass.kt:9:20:9:25 | i | 0 | +| enumClass.kt:10:14:10:42 | g | enumClass.kt:10:20:10:25 | i | 0 | +| enumClass.kt:13:12:13:29 | f | enumClass.kt:13:18:13:23 | i | 0 | +| enumClass.kt:14:12:14:29 | g | enumClass.kt:14:18:14:23 | i | 0 | | methods2.kt:4:1:5:1 | fooBarTopLevelMethod | methods2.kt:4:26:4:31 | x | 0 | | methods2.kt:4:1:5:1 | fooBarTopLevelMethod | methods2.kt:4:34:4:39 | y | 1 | | methods2.kt:8:5:9:5 | fooBarClassMethod | methods2.kt:8:27:8:32 | x | 0 | diff --git a/java/ql/test-kotlin2/library-tests/modifiers/modifiers.expected b/java/ql/test-kotlin2/library-tests/modifiers/modifiers.expected index 6bc77b34a0ad..4fc6ff961db5 100644 --- a/java/ql/test-kotlin2/library-tests/modifiers/modifiers.expected +++ b/java/ql/test-kotlin2/library-tests/modifiers/modifiers.expected @@ -1,20 +1,20 @@ | modifiers.kt:1:1:29:1 | X | Class | public | | modifiers.kt:1:1:29:1 | X | Constructor | public | -| modifiers.kt:2:5:2:17 | getA$private | Method | final | -| modifiers.kt:2:5:2:17 | getA$private | Method | private | -| modifiers.kt:2:5:2:21 | a | Field | final | -| modifiers.kt:2:5:2:21 | a | Field | private | -| modifiers.kt:2:5:2:21 | a | Property | private | -| modifiers.kt:3:5:3:19 | getB | Method | final | -| modifiers.kt:3:5:3:19 | getB | Method | protected | -| modifiers.kt:3:5:3:23 | b | Field | final | -| modifiers.kt:3:5:3:23 | b | Field | private | -| modifiers.kt:3:5:3:23 | b | Property | protected | -| modifiers.kt:4:5:4:18 | getC$main | Method | final | -| modifiers.kt:4:5:4:18 | getC$main | Method | internal | -| modifiers.kt:4:5:4:22 | c | Field | final | -| modifiers.kt:4:5:4:22 | c | Field | private | -| modifiers.kt:4:5:4:22 | c | Property | internal | +| modifiers.kt:2:13:2:17 | getA$private | Method | final | +| modifiers.kt:2:13:2:17 | getA$private | Method | private | +| modifiers.kt:2:13:2:21 | a | Field | final | +| modifiers.kt:2:13:2:21 | a | Field | private | +| modifiers.kt:2:13:2:21 | a | Property | private | +| modifiers.kt:3:15:3:19 | getB | Method | final | +| modifiers.kt:3:15:3:19 | getB | Method | protected | +| modifiers.kt:3:15:3:23 | b | Field | final | +| modifiers.kt:3:15:3:23 | b | Field | private | +| modifiers.kt:3:15:3:23 | b | Property | protected | +| modifiers.kt:4:14:4:18 | getC$main | Method | final | +| modifiers.kt:4:14:4:18 | getC$main | Method | internal | +| modifiers.kt:4:14:4:22 | c | Field | final | +| modifiers.kt:4:14:4:22 | c | Field | private | +| modifiers.kt:4:14:4:22 | c | Property | internal | | modifiers.kt:5:5:5:9 | getD | Method | final | | modifiers.kt:5:5:5:9 | getD | Method | public | | modifiers.kt:5:5:5:34 | d | Field | final | @@ -23,11 +23,11 @@ | modifiers.kt:7:5:9:5 | Nested | Class | final | | modifiers.kt:7:5:9:5 | Nested | Class | protected | | modifiers.kt:7:5:9:5 | Nested | Constructor | public | -| modifiers.kt:8:9:8:25 | getE | Method | final | -| modifiers.kt:8:9:8:25 | getE | Method | public | -| modifiers.kt:8:9:8:29 | e | Field | final | -| modifiers.kt:8:9:8:29 | e | Field | private | -| modifiers.kt:8:9:8:29 | e | Property | public | +| modifiers.kt:8:16:8:25 | getE | Method | final | +| modifiers.kt:8:16:8:25 | getE | Method | public | +| modifiers.kt:8:16:8:29 | e | Field | final | +| modifiers.kt:8:16:8:29 | e | Field | private | +| modifiers.kt:8:16:8:29 | e | Property | public | | modifiers.kt:11:5:15:5 | fn1 | Method | final | | modifiers.kt:11:5:15:5 | fn1 | Method | public | | modifiers.kt:12:16:14:9 | | Constructor | public | @@ -49,17 +49,17 @@ | modifiers.kt:23:9:23:27 | localClass | Constructor | public | | modifiers.kt:23:9:23:27 | localClass | LocalClass | final | | modifiers.kt:23:9:23:27 | localClass | LocalClass | private | -| modifiers.kt:26:5:26:46 | fn4 | Method | final | -| modifiers.kt:26:5:26:46 | fn4 | Method | inline | -| modifiers.kt:26:5:26:46 | fn4 | Method | public | +| modifiers.kt:26:12:26:46 | fn4 | Method | final | +| modifiers.kt:26:12:26:46 | fn4 | Method | inline | +| modifiers.kt:26:12:26:46 | fn4 | Method | public | | modifiers.kt:26:20:26:41 | f | Parameter | noinline | -| modifiers.kt:27:5:27:49 | fn5 | Method | final | -| modifiers.kt:27:5:27:49 | fn5 | Method | inline | -| modifiers.kt:27:5:27:49 | fn5 | Method | public | +| modifiers.kt:27:12:27:49 | fn5 | Method | final | +| modifiers.kt:27:12:27:49 | fn5 | Method | inline | +| modifiers.kt:27:12:27:49 | fn5 | Method | public | | modifiers.kt:27:20:27:44 | f | Parameter | crossinline | -| modifiers.kt:28:5:28:39 | fn6 | Method | final | -| modifiers.kt:28:5:28:39 | fn6 | Method | inline | -| modifiers.kt:28:5:28:39 | fn6 | Method | public | +| modifiers.kt:28:12:28:39 | fn6 | Method | final | +| modifiers.kt:28:12:28:39 | fn6 | Method | inline | +| modifiers.kt:28:12:28:39 | fn6 | Method | public | | modifiers.kt:28:17:28:25 | T | TypeVariable | reified | | modifiers.kt:31:1:33:1 | Y | Class | final | | modifiers.kt:31:1:33:1 | Y | Class | public | @@ -75,13 +75,13 @@ | modifiers.kt:35:1:41:1 | LateInit | Class | final | | modifiers.kt:35:1:41:1 | LateInit | Class | public | | modifiers.kt:35:1:41:1 | LateInit | Constructor | public | -| modifiers.kt:36:5:36:40 | getTest0$private | Method | final | -| modifiers.kt:36:5:36:40 | getTest0$private | Method | private | -| modifiers.kt:36:5:36:40 | setTest0$private | Method | final | -| modifiers.kt:36:5:36:40 | setTest0$private | Method | private | -| modifiers.kt:36:5:36:40 | test0 | Field | private | -| modifiers.kt:36:5:36:40 | test0 | Property | lateinit | -| modifiers.kt:36:5:36:40 | test0 | Property | private | +| modifiers.kt:36:22:36:40 | getTest0$private | Method | final | +| modifiers.kt:36:22:36:40 | getTest0$private | Method | private | +| modifiers.kt:36:22:36:40 | setTest0$private | Method | final | +| modifiers.kt:36:22:36:40 | setTest0$private | Method | private | +| modifiers.kt:36:22:36:40 | test0 | Field | private | +| modifiers.kt:36:22:36:40 | test0 | Property | lateinit | +| modifiers.kt:36:22:36:40 | test0 | Property | private | | modifiers.kt:38:5:40:5 | fn | Method | final | | modifiers.kt:38:5:40:5 | fn | Method | public | -| modifiers.kt:39:9:39:36 | LateInit test1 | LocalVariableDecl | lateinit | +| modifiers.kt:39:18:39:36 | LateInit test1 | LocalVariableDecl | lateinit | diff --git a/java/ql/test-kotlin2/library-tests/parameter-defaults/defaults.expected b/java/ql/test-kotlin2/library-tests/parameter-defaults/defaults.expected index 2e7d2920d78d..fe02743697d8 100644 --- a/java/ql/test-kotlin2/library-tests/parameter-defaults/defaults.expected +++ b/java/ql/test-kotlin2/library-tests/parameter-defaults/defaults.expected @@ -1,6 +1,6 @@ | test.kt:5:3:7:3 | f | test.kt:5:3:7:3 | f$default | | test.kt:19:3:22:3 | f | test.kt:19:3:22:3 | f$default | -| test.kt:34:3:36:3 | f | test.kt:34:3:36:3 | f$default | +| test.kt:34:14:36:3 | f | test.kt:34:14:36:3 | f$default | | test.kt:56:3:58:3 | test | test.kt:56:3:58:3 | test$default | | test.kt:68:22:68:75 | TestConstructor | test.kt:68:22:68:75 | TestConstructor | | test.kt:86:5:88:5 | f | test.kt:86:5:88:5 | f$default | @@ -9,9 +9,9 @@ | test.kt:135:3:135:43 | testReturn | test.kt:135:3:135:43 | testReturn$default | | test.kt:145:3:147:3 | f | test.kt:145:3:147:3 | f$default | | test.kt:158:3:158:35 | f | test.kt:158:3:158:35 | f$default | -| test.kt:159:3:159:44 | g$main | test.kt:159:3:159:44 | g$main$default | -| test.kt:160:3:160:45 | h | test.kt:160:3:160:45 | h$default | -| test.kt:161:3:161:43 | i | test.kt:161:3:161:43 | i$default | +| test.kt:159:12:159:44 | g$main | test.kt:159:12:159:44 | g$main$default | +| test.kt:160:13:160:45 | h | test.kt:160:13:160:45 | h$default | +| test.kt:161:11:161:43 | i | test.kt:161:11:161:43 | i$default | | test.kt:171:3:171:97 | f | test.kt:171:3:171:97 | f$default | | test.kt:179:3:179:46 | f | test.kt:179:3:179:46 | f$default | | test.kt:180:3:180:34 | f | test.kt:180:3:180:34 | f$default | diff --git a/java/ql/test-kotlin2/library-tests/private-anonymous-types/test.expected b/java/ql/test-kotlin2/library-tests/private-anonymous-types/test.expected index fa622bab6ff8..c87337a92c74 100644 --- a/java/ql/test-kotlin2/library-tests/private-anonymous-types/test.expected +++ b/java/ql/test-kotlin2/library-tests/private-anonymous-types/test.expected @@ -19,15 +19,15 @@ | test.kt:7:1:22:1 | A | test.kt:7:16:7:21 | A | | test.kt:7:1:22:1 | A | test.kt:9:3:9:14 | getAnonType | | test.kt:7:1:22:1 | A | test.kt:9:3:11:3 | anonType | -| test.kt:7:1:22:1 | A | test.kt:13:3:13:29 | getPrivateAnonType$private | -| test.kt:7:1:22:1 | A | test.kt:13:3:15:3 | privateAnonType | +| test.kt:7:1:22:1 | A | test.kt:13:11:13:29 | getPrivateAnonType$private | +| test.kt:7:1:22:1 | A | test.kt:13:11:15:3 | privateAnonType | | test.kt:7:1:22:1 | A | test.kt:17:3:20:3 | privateUser | | test.kt:9:18:11:3 | new If(...) { ... } | test.kt:9:18:11:3 | | -| test.kt:9:18:11:3 | new If(...) { ... } | test.kt:10:5:10:18 | getX | -| test.kt:9:18:11:3 | new If(...) { ... } | test.kt:10:5:10:22 | x | +| test.kt:9:18:11:3 | new If(...) { ... } | test.kt:10:14:10:18 | getX | +| test.kt:9:18:11:3 | new If(...) { ... } | test.kt:10:14:10:22 | x | | test.kt:13:33:15:3 | new If(...) { ... } | test.kt:13:33:15:3 | | -| test.kt:13:33:15:3 | new If(...) { ... } | test.kt:14:5:14:18 | getX | -| test.kt:13:33:15:3 | new If(...) { ... } | test.kt:14:5:14:22 | x | +| test.kt:13:33:15:3 | new If(...) { ... } | test.kt:14:14:14:18 | getX | +| test.kt:13:33:15:3 | new If(...) { ... } | test.kt:14:14:14:22 | x | enclosingTypes | file:///!unknown-binary-location/A$.class:0:0:0:0 | new If(...) { ... }<> | file:///!unknown-binary-location/A.class:0:0:0:0 | A | | file:///!unknown-binary-location/A$.class:0:0:0:0 | new If(...) { ... }<> | file:///!unknown-binary-location/A.class:0:0:0:0 | A | diff --git a/java/ql/test-kotlin2/library-tests/properties/properties.expected b/java/ql/test-kotlin2/library-tests/properties/properties.expected index 6e2d867153ce..705427f13a86 100644 --- a/java/ql/test-kotlin2/library-tests/properties/properties.expected +++ b/java/ql/test-kotlin2/library-tests/properties/properties.expected @@ -4,7 +4,7 @@ | properties.kt:3:5:3:25 | modifiableInt | properties.kt:3:5:3:21 | getModifiableInt | properties.kt:3:5:3:21 | setModifiableInt | properties.kt:3:5:3:25 | modifiableInt | public | | properties.kt:4:5:4:24 | immutableInt | properties.kt:4:5:4:20 | getImmutableInt | file://:0:0:0:0 | | properties.kt:4:5:4:24 | immutableInt | public | | properties.kt:5:5:5:26 | typedProp | properties.kt:5:5:5:22 | getTypedProp | file://:0:0:0:0 | | properties.kt:5:5:5:26 | typedProp | public | -| properties.kt:6:5:6:38 | abstractTypeProp | properties.kt:6:5:6:38 | getAbstractTypeProp | file://:0:0:0:0 | | file://:0:0:0:0 | | public | +| properties.kt:6:14:6:38 | abstractTypeProp | properties.kt:6:14:6:38 | getAbstractTypeProp | file://:0:0:0:0 | | file://:0:0:0:0 | | public | | properties.kt:7:5:7:30 | initialisedInInit | properties.kt:7:5:7:30 | getInitialisedInInit | file://:0:0:0:0 | | properties.kt:7:5:7:30 | initialisedInInit | public | | properties.kt:11:5:11:40 | useConstructorArg | properties.kt:11:5:11:25 | getUseConstructorArg | file://:0:0:0:0 | | properties.kt:11:5:11:40 | useConstructorArg | public | | properties.kt:12:5:13:21 | five | properties.kt:13:13:13:21 | getFive | file://:0:0:0:0 | | file://:0:0:0:0 | | public | @@ -17,17 +17,17 @@ | properties.kt:28:5:29:22 | overrideGetter | properties.kt:29:13:29:22 | getOverrideGetter | properties.kt:28:5:28:22 | setOverrideGetter | properties.kt:28:5:29:22 | overrideGetter | public | | properties.kt:30:5:31:29 | overrideGetterUseField | properties.kt:31:13:31:29 | getOverrideGetterUseField | properties.kt:30:5:30:30 | setOverrideGetterUseField | properties.kt:30:5:31:29 | overrideGetterUseField | public | | properties.kt:32:5:33:29 | useField | properties.kt:33:13:33:29 | getUseField | file://:0:0:0:0 | | properties.kt:32:5:33:29 | useField | public | -| properties.kt:34:5:34:36 | lateInitVar | properties.kt:34:5:34:36 | getLateInitVar | properties.kt:34:5:34:36 | setLateInitVar | properties.kt:34:5:34:36 | lateInitVar | lateinit, public | -| properties.kt:35:5:35:32 | privateProp | properties.kt:35:5:35:27 | getPrivateProp$private | file://:0:0:0:0 | | properties.kt:35:5:35:32 | privateProp | private | -| properties.kt:36:5:36:36 | protectedProp | properties.kt:36:5:36:31 | getProtectedProp | file://:0:0:0:0 | | properties.kt:36:5:36:36 | protectedProp | protected | -| properties.kt:37:5:37:30 | publicProp | properties.kt:37:5:37:25 | getPublicProp | file://:0:0:0:0 | | properties.kt:37:5:37:30 | publicProp | public | -| properties.kt:38:5:38:34 | internalProp | properties.kt:38:5:38:29 | getInternalProp$main | file://:0:0:0:0 | | properties.kt:38:5:38:34 | internalProp | internal | -| properties.kt:67:1:67:23 | constVal | properties.kt:67:1:67:18 | getConstVal | file://:0:0:0:0 | | properties.kt:67:1:67:23 | constVal | public | +| properties.kt:34:14:34:36 | lateInitVar | properties.kt:34:14:34:36 | getLateInitVar | properties.kt:34:14:34:36 | setLateInitVar | properties.kt:34:14:34:36 | lateInitVar | lateinit, public | +| properties.kt:35:13:35:32 | privateProp | properties.kt:35:13:35:27 | getPrivateProp$private | file://:0:0:0:0 | | properties.kt:35:13:35:32 | privateProp | private | +| properties.kt:36:15:36:36 | protectedProp | properties.kt:36:15:36:31 | getProtectedProp | file://:0:0:0:0 | | properties.kt:36:15:36:36 | protectedProp | protected | +| properties.kt:37:12:37:30 | publicProp | properties.kt:37:12:37:25 | getPublicProp | file://:0:0:0:0 | | properties.kt:37:12:37:30 | publicProp | public | +| properties.kt:38:14:38:34 | internalProp | properties.kt:38:14:38:29 | getInternalProp$main | file://:0:0:0:0 | | properties.kt:38:14:38:34 | internalProp | internal | +| properties.kt:67:7:67:23 | constVal | properties.kt:67:7:67:18 | getConstVal | file://:0:0:0:0 | | properties.kt:67:7:67:23 | constVal | public | | properties.kt:70:5:70:16 | prop | properties.kt:70:5:70:12 | getProp | file://:0:0:0:0 | | properties.kt:70:5:70:16 | prop | public | | properties.kt:78:1:79:13 | x | properties.kt:79:5:79:13 | getX | file://:0:0:0:0 | | file://:0:0:0:0 | | public | | properties.kt:80:1:81:13 | x | properties.kt:81:5:81:13 | getX | file://:0:0:0:0 | | file://:0:0:0:0 | | public | -| properties.kt:84:5:84:29 | data | properties.kt:84:5:84:25 | getData$private | properties.kt:84:5:84:25 | setData$private | properties.kt:84:5:84:29 | data | private | -| properties.kt:92:5:93:18 | data | properties.kt:93:9:93:18 | getData | properties.kt:92:5:92:25 | setData$private | properties.kt:92:5:93:18 | data | private | +| properties.kt:84:13:84:29 | data | properties.kt:84:13:84:25 | getData$private | properties.kt:84:13:84:25 | setData$private | properties.kt:84:13:84:29 | data | private | +| properties.kt:92:13:93:18 | data | properties.kt:93:9:93:18 | getData | properties.kt:92:13:92:25 | setData$private | properties.kt:92:13:93:18 | data | private | fieldDeclarations | properties.kt:2:27:2:50 | int constructorProp; | properties.kt:2:27:2:50 | constructorProp | 0 | | properties.kt:2:53:2:83 | int mutableConstructorProp; | properties.kt:2:53:2:83 | mutableConstructorProp | 0 | @@ -43,12 +43,12 @@ fieldDeclarations | properties.kt:28:5:29:22 | int overrideGetter; | properties.kt:28:5:29:22 | overrideGetter | 0 | | properties.kt:30:5:31:29 | int overrideGetterUseField; | properties.kt:30:5:31:29 | overrideGetterUseField | 0 | | properties.kt:32:5:33:29 | int useField; | properties.kt:32:5:33:29 | useField | 0 | -| properties.kt:34:5:34:36 | String lateInitVar; | properties.kt:34:5:34:36 | lateInitVar | 0 | -| properties.kt:35:5:35:32 | int privateProp; | properties.kt:35:5:35:32 | privateProp | 0 | -| properties.kt:36:5:36:36 | int protectedProp; | properties.kt:36:5:36:36 | protectedProp | 0 | -| properties.kt:37:5:37:30 | int publicProp; | properties.kt:37:5:37:30 | publicProp | 0 | -| properties.kt:38:5:38:34 | int internalProp; | properties.kt:38:5:38:34 | internalProp | 0 | -| properties.kt:67:1:67:23 | int constVal; | properties.kt:67:1:67:23 | constVal | 0 | +| properties.kt:34:14:34:36 | String lateInitVar; | properties.kt:34:14:34:36 | lateInitVar | 0 | +| properties.kt:35:13:35:32 | int privateProp; | properties.kt:35:13:35:32 | privateProp | 0 | +| properties.kt:36:15:36:36 | int protectedProp; | properties.kt:36:15:36:36 | protectedProp | 0 | +| properties.kt:37:12:37:30 | int publicProp; | properties.kt:37:12:37:30 | publicProp | 0 | +| properties.kt:38:14:38:34 | int internalProp; | properties.kt:38:14:38:34 | internalProp | 0 | +| properties.kt:67:7:67:23 | int constVal; | properties.kt:67:7:67:23 | constVal | 0 | | properties.kt:70:5:70:16 | int prop; | properties.kt:70:5:70:16 | prop | 0 | -| properties.kt:84:5:84:29 | int data; | properties.kt:84:5:84:29 | data | 0 | -| properties.kt:92:5:93:18 | int data; | properties.kt:92:5:93:18 | data | 0 | +| properties.kt:84:13:84:29 | int data; | properties.kt:84:13:84:29 | data | 0 | +| properties.kt:92:13:93:18 | int data; | properties.kt:92:13:93:18 | data | 0 | diff --git a/java/ql/test-kotlin2/library-tests/stmts/PrintAst.expected b/java/ql/test-kotlin2/library-tests/stmts/PrintAst.expected index c97765b3a733..473e06e32310 100644 --- a/java/ql/test-kotlin2/library-tests/stmts/PrintAst.expected +++ b/java/ql/test-kotlin2/library-tests/stmts/PrintAst.expected @@ -97,20 +97,19 @@ stmts.kt: # 23| 0: [LTExpr] ... < ... # 23| 0: [VarAccess] x # 23| 1: [IntegerLiteral] 100 -# 23| 1: [BlockStmt] { ... } -# 24| 0: [BlockStmt] { ... } -# 24| 0: [DoStmt] do ... while (...) -# 26| 0: [GTExpr] ... > ... -# 26| 0: [VarAccess] y -# 26| 1: [IntegerLiteral] 100 -# 24| 1: [BlockStmt] { ... } -# 25| 0: [ExprStmt] ; -# 25| 0: [WhenExpr] when ... -# 25| 0: [WhenBranch] ... -> ... -# 25| 0: [GTExpr] ... > ... -# 25| 0: [VarAccess] x -# 25| 1: [VarAccess] y -# 25| 1: [BreakStmt] break +# 24| 1: [BlockStmt] { ... } +# 24| 0: [DoStmt] do ... while (...) +# 26| 0: [GTExpr] ... > ... +# 26| 0: [VarAccess] y +# 26| 1: [IntegerLiteral] 100 +# 24| 1: [BlockStmt] { ... } +# 25| 0: [ExprStmt] ; +# 25| 0: [WhenExpr] when ... +# 25| 0: [WhenBranch] ... -> ... +# 25| 0: [GTExpr] ... > ... +# 25| 0: [VarAccess] x +# 25| 1: [VarAccess] y +# 25| 1: [BreakStmt] break # 28| 1: [WhileStmt] while (...) # 28| 0: [GTExpr] ... > ... # 28| 0: [VarAccess] x @@ -137,20 +136,19 @@ stmts.kt: # 35| 1: [MethodCall] rangeTo(...) # 35| -1: [VarAccess] x # 35| 0: [VarAccess] y -# 35| 2: [BlockStmt] { ... } -# 36| 0: [BlockStmt] { ... } -# 36| 0: [DoStmt] do ... while (...) -# 38| 0: [GTExpr] ... > ... -# 38| 0: [VarAccess] y -# 38| 1: [IntegerLiteral] 100 -# 36| 1: [BlockStmt] { ... } -# 37| 0: [ExprStmt] ; -# 37| 0: [WhenExpr] when ... -# 37| 0: [WhenBranch] ... -> ... -# 37| 0: [GTExpr] ... > ... -# 37| 0: [VarAccess] x -# 37| 1: [VarAccess] y -# 37| 1: [BreakStmt] break +# 36| 2: [BlockStmt] { ... } +# 36| 0: [DoStmt] do ... while (...) +# 38| 0: [GTExpr] ... > ... +# 38| 0: [VarAccess] y +# 38| 1: [IntegerLiteral] 100 +# 36| 1: [BlockStmt] { ... } +# 37| 0: [ExprStmt] ; +# 37| 0: [WhenExpr] when ... +# 37| 0: [WhenBranch] ... -> ... +# 37| 0: [GTExpr] ... > ... +# 37| 0: [VarAccess] x +# 37| 1: [VarAccess] y +# 37| 1: [BreakStmt] break # 41| 4: [EnhancedForStmt] for (... : ...) #-----| 0: (Single Local Variable Declaration) # 41| 1: [LocalVariableDeclExpr] diff --git a/java/ql/test-kotlin2/library-tests/stmts/stmts.expected b/java/ql/test-kotlin2/library-tests/stmts/stmts.expected index 62238cbfaefc..c004c4bc0d6f 100644 --- a/java/ql/test-kotlin2/library-tests/stmts/stmts.expected +++ b/java/ql/test-kotlin2/library-tests/stmts/stmts.expected @@ -33,7 +33,6 @@ | stmts.kt:22:27:44:1 | { ... } | BlockStmt | | stmts.kt:23:11:27:5 | + + + diff --git a/python/ql/src/experimental/Security/CWE-1427/PromptInjection.ql b/python/ql/src/experimental/Security/CWE-1427/PromptInjection.ql new file mode 100644 index 000000000000..95895ba14fd4 --- /dev/null +++ b/python/ql/src/experimental/Security/CWE-1427/PromptInjection.ql @@ -0,0 +1,20 @@ +/** + * @name Prompt injection + * @kind path-problem + * @problem.severity error + * @security-severity 5.0 + * @precision high + * @id py/prompt-injection + * @tags security + * experimental + * external/cwe/cwe-1427 + */ + +import python +import experimental.semmle.python.security.dataflow.PromptInjectionQuery +import PromptInjectionFlow::PathGraph + +from PromptInjectionFlow::PathNode source, PromptInjectionFlow::PathNode sink +where PromptInjectionFlow::flowPath(source, sink) +select sink.getNode(), source, sink, "This prompt construction depends on a $@.", source.getNode(), + "user-provided value" diff --git a/python/ql/src/experimental/Security/CWE-1427/examples/example.py b/python/ql/src/experimental/Security/CWE-1427/examples/example.py new file mode 100644 index 000000000000..a049f727b37a --- /dev/null +++ b/python/ql/src/experimental/Security/CWE-1427/examples/example.py @@ -0,0 +1,17 @@ +from flask import Flask, request +from agents import Agent +from guardrails import GuardrailAgent + +@app.route("/parameter-route") +def get_input(): + input = request.args.get("input") + + goodAgent = GuardrailAgent( # GOOD: Agent created with guardrails automatically configured. + config=Path("guardrails_config.json"), + name="Assistant", + instructions="This prompt is customized for " + input) + + badAgent = Agent( + name="Assistant", + instructions="This prompt is customized for " + input # BAD: user input in agent instruction. + ) diff --git a/python/ql/src/experimental/semmle/python/Concepts.qll b/python/ql/src/experimental/semmle/python/Concepts.qll index 0e4bd6441e9b..122490fb6d89 100644 --- a/python/ql/src/experimental/semmle/python/Concepts.qll +++ b/python/ql/src/experimental/semmle/python/Concepts.qll @@ -483,3 +483,28 @@ class EmailSender extends DataFlow::Node instanceof EmailSender::Range { */ DataFlow::Node getABody() { result in [super.getPlainTextBody(), super.getHtmlBody()] } } + +/** + * A data-flow node that prompts an AI model. + * + * Extend this class to refine existing API models. If you want to model new APIs, + * extend `AIPrompt::Range` instead. + */ +class AIPrompt extends DataFlow::Node instanceof AIPrompt::Range { + /** Gets an input that is used as AI prompt. */ + DataFlow::Node getAPrompt() { result = super.getAPrompt() } +} + +/** Provides a class for modeling new AI prompting mechanisms. */ +module AIPrompt { + /** + * A data-flow node that prompts an AI model. + * + * Extend this class to model new APIs. If you want to refine existing API models, + * extend `AIPrompt` instead. + */ + abstract class Range extends DataFlow::Node { + /** Gets an input that is used as AI prompt. */ + abstract DataFlow::Node getAPrompt(); + } +} diff --git a/python/ql/src/experimental/semmle/python/Frameworks.qll b/python/ql/src/experimental/semmle/python/Frameworks.qll index 6c9972e42552..c4a0c7f67da4 100644 --- a/python/ql/src/experimental/semmle/python/Frameworks.qll +++ b/python/ql/src/experimental/semmle/python/Frameworks.qll @@ -13,6 +13,7 @@ private import experimental.semmle.python.frameworks.Scrapli private import experimental.semmle.python.frameworks.Twisted private import experimental.semmle.python.frameworks.JWT private import experimental.semmle.python.frameworks.Csv +private import experimental.semmle.python.frameworks.OpenAI private import experimental.semmle.python.libraries.PyJWT private import experimental.semmle.python.libraries.Python_JWT private import experimental.semmle.python.libraries.Authlib diff --git a/python/ql/src/experimental/semmle/python/frameworks/OpenAI.qll b/python/ql/src/experimental/semmle/python/frameworks/OpenAI.qll new file mode 100644 index 000000000000..74614a739aa4 --- /dev/null +++ b/python/ql/src/experimental/semmle/python/frameworks/OpenAI.qll @@ -0,0 +1,88 @@ +/** + * Provides classes modeling security-relevant aspects of the `openAI` Agents SDK package. + * See https://github.com/openai/openai-agents-python. + * As well as the regular openai python interface. + * See https://github.com/openai/openai-python. + */ + +private import python +private import semmle.python.ApiGraphs + +/** + * Provides models for agents SDK (instances of the `agents.Runner` class etc). + * + * See https://github.com/openai/openai-agents-python. + */ +module AgentSDK { + /** Gets a reference to the `agents.Runner` class. */ + API::Node classRef() { result = API::moduleImport("agents").getMember("Runner") } + + /** Gets a reference to the `run` members. */ + API::Node runMembers() { result = classRef().getMember(["run", "run_sync", "run_streamed"]) } + + /** Gets a reference to a potential property of `agents.Runner` called input which can refer to a system prompt depending on the role specified. */ + API::Node getContentNode() { + result = runMembers().getKeywordParameter("input").getASubscript().getSubscript("content") + or + result = runMembers().getParameter(_).getASubscript().getSubscript("content") + } +} + +/** + * Provides models for Agent (instances of the `openai.OpenAI` class). + * + * See https://github.com/openai/openai-python. + */ +module OpenAI { + /** Gets a reference to the `openai.OpenAI` class. */ + API::Node classRef() { + result = + API::moduleImport("openai").getMember(["OpenAI", "AsyncOpenAI", "AzureOpenAI"]).getReturn() + } + + /** Gets a reference to a potential property of `openai.OpenAI` called instructions which refers to the system prompt. */ + API::Node getContentNode() { + exists(API::Node content | + content = + classRef() + .getMember("responses") + .getMember("create") + .getKeywordParameter(["input", "instructions"]) + or + content = + classRef() + .getMember("responses") + .getMember("create") + .getKeywordParameter(["input", "instructions"]) + .getASubscript() + .getSubscript("content") + or + content = + classRef() + .getMember("realtime") + .getMember("connect") + .getReturn() + .getMember("conversation") + .getMember("item") + .getMember("create") + .getKeywordParameter("item") + .getSubscript("content") + or + content = + classRef() + .getMember("chat") + .getMember("completions") + .getMember("create") + .getKeywordParameter("messages") + .getASubscript() + .getSubscript("content") + | + // content + if not exists(content.getASubscript()) + then result = content + else + // content.text + result = content.getASubscript().getSubscript("text") + ) + } +} diff --git a/python/ql/src/experimental/semmle/python/security/dataflow/PromptInjectionCustomizations.qll b/python/ql/src/experimental/semmle/python/security/dataflow/PromptInjectionCustomizations.qll new file mode 100644 index 000000000000..181be6393956 --- /dev/null +++ b/python/ql/src/experimental/semmle/python/security/dataflow/PromptInjectionCustomizations.qll @@ -0,0 +1,65 @@ +/** + * Provides default sources, sinks and sanitizers for detecting + * "prompt injection" + * vulnerabilities, as well as extension points for adding your own. + */ + +import python +private import semmle.python.dataflow.new.DataFlow +private import semmle.python.Concepts +private import experimental.semmle.python.Concepts +private import semmle.python.dataflow.new.RemoteFlowSources +private import semmle.python.dataflow.new.BarrierGuards +private import semmle.python.frameworks.data.ModelsAsData +private import experimental.semmle.python.frameworks.OpenAI + +/** + * Provides default sources, sinks and sanitizers for detecting + * "prompt injection" + * vulnerabilities, as well as extension points for adding your own. + */ +module PromptInjection { + /** + * A data flow source for "prompt injection" vulnerabilities. + */ + abstract class Source extends DataFlow::Node { } + + /** + * A data flow sink for "prompt injection" vulnerabilities. + */ + abstract class Sink extends DataFlow::Node { } + + /** + * A sanitizer for "prompt injection" vulnerabilities. + */ + abstract class Sanitizer extends DataFlow::Node { } + + /** + * An active threat-model source, considered as a flow source. + */ + private class ActiveThreatModelSourceAsSource extends Source, ActiveThreatModelSource { } + + /** + * A prompt to an AI model, considered as a flow sink. + */ + class AIPromptAsSink extends Sink { + AIPromptAsSink() { this = any(AIPrompt p).getAPrompt() } + } + + private class SinkFromModel extends Sink { + SinkFromModel() { this = ModelOutput::getASinkNode("prompt-injection").asSink() } + } + + private class PromptContentSink extends Sink { + PromptContentSink() { + this = OpenAI::getContentNode().asSink() + or + this = AgentSDK::getContentNode().asSink() + } + } + + /** + * A comparison with a constant, considered as a sanitizer-guard. + */ + class ConstCompareAsSanitizerGuard extends Sanitizer, ConstCompareBarrier { } +} diff --git a/python/ql/src/experimental/semmle/python/security/dataflow/PromptInjectionQuery.qll b/python/ql/src/experimental/semmle/python/security/dataflow/PromptInjectionQuery.qll new file mode 100644 index 000000000000..5c0413726e62 --- /dev/null +++ b/python/ql/src/experimental/semmle/python/security/dataflow/PromptInjectionQuery.qll @@ -0,0 +1,25 @@ +/** + * Provides a taint-tracking configuration for detecting "prompt injection" vulnerabilities. + * + * Note, for performance reasons: only import this file if + * `PromptInjection::Configuration` is needed, otherwise + * `PromptInjectionCustomizations` should be imported instead. + */ + +private import python +import semmle.python.dataflow.new.DataFlow +import semmle.python.dataflow.new.TaintTracking +import PromptInjectionCustomizations::PromptInjection + +private module PromptInjectionConfig implements DataFlow::ConfigSig { + predicate isSource(DataFlow::Node node) { node instanceof Source } + + predicate isSink(DataFlow::Node node) { node instanceof Sink } + + predicate isBarrier(DataFlow::Node node) { node instanceof Sanitizer } + + predicate observeDiffInformedIncrementalMode() { any() } +} + +/** Global taint-tracking for detecting "prompt injection" vulnerabilities. */ +module PromptInjectionFlow = TaintTracking::Global; diff --git a/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.expected b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.expected new file mode 100644 index 000000000000..d60b63c701e7 --- /dev/null +++ b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.expected @@ -0,0 +1,94 @@ +#select +| agent_instructions.py:9:50:9:89 | ControlFlowNode for BinaryExpr | agent_instructions.py:2:26:2:32 | ControlFlowNode for ImportMember | agent_instructions.py:9:50:9:89 | ControlFlowNode for BinaryExpr | This prompt construction depends on a $@. | agent_instructions.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| agent_instructions.py:25:28:25:32 | ControlFlowNode for input | agent_instructions.py:2:26:2:32 | ControlFlowNode for ImportMember | agent_instructions.py:25:28:25:32 | ControlFlowNode for input | This prompt construction depends on a $@. | agent_instructions.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| agent_instructions.py:35:28:35:32 | ControlFlowNode for input | agent_instructions.py:2:26:2:32 | ControlFlowNode for ImportMember | agent_instructions.py:35:28:35:32 | ControlFlowNode for input | This prompt construction depends on a $@. | agent_instructions.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:17:22:17:46 | ControlFlowNode for BinaryExpr | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:17:22:17:46 | ControlFlowNode for BinaryExpr | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:18:15:18:19 | ControlFlowNode for query | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:18:15:18:19 | ControlFlowNode for query | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:22:22:22:46 | ControlFlowNode for BinaryExpr | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:22:22:22:46 | ControlFlowNode for BinaryExpr | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:26:28:26:51 | ControlFlowNode for BinaryExpr | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:26:28:26:51 | ControlFlowNode for BinaryExpr | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:33:33:33:37 | ControlFlowNode for query | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:33:33:33:37 | ControlFlowNode for query | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:41:22:41:46 | ControlFlowNode for BinaryExpr | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:41:22:41:46 | ControlFlowNode for BinaryExpr | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:42:15:42:19 | ControlFlowNode for query | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:42:15:42:19 | ControlFlowNode for query | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:53:33:53:37 | ControlFlowNode for query | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:53:33:53:37 | ControlFlowNode for query | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:63:28:63:51 | ControlFlowNode for BinaryExpr | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:63:28:63:51 | ControlFlowNode for BinaryExpr | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:67:28:67:32 | ControlFlowNode for query | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:67:28:67:32 | ControlFlowNode for query | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:71:28:71:32 | ControlFlowNode for query | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:71:28:71:32 | ControlFlowNode for query | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:80:28:80:51 | ControlFlowNode for BinaryExpr | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:80:28:80:51 | ControlFlowNode for BinaryExpr | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:84:28:84:32 | ControlFlowNode for query | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:84:28:84:32 | ControlFlowNode for query | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +| openai_test.py:92:22:92:46 | ControlFlowNode for BinaryExpr | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:92:22:92:46 | ControlFlowNode for BinaryExpr | This prompt construction depends on a $@. | openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | user-provided value | +edges +| agent_instructions.py:2:26:2:32 | ControlFlowNode for ImportMember | agent_instructions.py:2:26:2:32 | ControlFlowNode for request | provenance | | +| agent_instructions.py:2:26:2:32 | ControlFlowNode for request | agent_instructions.py:7:13:7:19 | ControlFlowNode for request | provenance | | +| agent_instructions.py:2:26:2:32 | ControlFlowNode for request | agent_instructions.py:17:13:17:19 | ControlFlowNode for request | provenance | | +| agent_instructions.py:7:5:7:9 | ControlFlowNode for input | agent_instructions.py:9:50:9:89 | ControlFlowNode for BinaryExpr | provenance | Sink:MaD:94 | +| agent_instructions.py:7:13:7:19 | ControlFlowNode for request | agent_instructions.py:7:13:7:24 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | +| agent_instructions.py:7:13:7:24 | ControlFlowNode for Attribute | agent_instructions.py:7:13:7:37 | ControlFlowNode for Attribute() | provenance | dict.get | +| agent_instructions.py:7:13:7:37 | ControlFlowNode for Attribute() | agent_instructions.py:7:5:7:9 | ControlFlowNode for input | provenance | | +| agent_instructions.py:17:5:17:9 | ControlFlowNode for input | agent_instructions.py:25:28:25:32 | ControlFlowNode for input | provenance | | +| agent_instructions.py:17:5:17:9 | ControlFlowNode for input | agent_instructions.py:35:28:35:32 | ControlFlowNode for input | provenance | | +| agent_instructions.py:17:13:17:19 | ControlFlowNode for request | agent_instructions.py:17:13:17:24 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | +| agent_instructions.py:17:13:17:24 | ControlFlowNode for Attribute | agent_instructions.py:17:13:17:37 | ControlFlowNode for Attribute() | provenance | dict.get | +| agent_instructions.py:17:13:17:37 | ControlFlowNode for Attribute() | agent_instructions.py:17:5:17:9 | ControlFlowNode for input | provenance | | +| openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | openai_test.py:2:26:2:32 | ControlFlowNode for request | provenance | | +| openai_test.py:2:26:2:32 | ControlFlowNode for request | openai_test.py:12:15:12:21 | ControlFlowNode for request | provenance | | +| openai_test.py:2:26:2:32 | ControlFlowNode for request | openai_test.py:13:13:13:19 | ControlFlowNode for request | provenance | | +| openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:17:22:17:46 | ControlFlowNode for BinaryExpr | provenance | | +| openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:22:22:22:46 | ControlFlowNode for BinaryExpr | provenance | | +| openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:26:28:26:51 | ControlFlowNode for BinaryExpr | provenance | | +| openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:41:22:41:46 | ControlFlowNode for BinaryExpr | provenance | | +| openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:63:28:63:51 | ControlFlowNode for BinaryExpr | provenance | | +| openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:80:28:80:51 | ControlFlowNode for BinaryExpr | provenance | | +| openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:92:22:92:46 | ControlFlowNode for BinaryExpr | provenance | Sink:MaD:58614 | +| openai_test.py:12:15:12:21 | ControlFlowNode for request | openai_test.py:12:15:12:26 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | +| openai_test.py:12:15:12:21 | ControlFlowNode for request | openai_test.py:13:13:13:24 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | +| openai_test.py:12:15:12:26 | ControlFlowNode for Attribute | openai_test.py:12:15:12:41 | ControlFlowNode for Attribute() | provenance | dict.get | +| openai_test.py:12:15:12:41 | ControlFlowNode for Attribute() | openai_test.py:12:5:12:11 | ControlFlowNode for persona | provenance | | +| openai_test.py:13:5:13:9 | ControlFlowNode for query | openai_test.py:18:15:18:19 | ControlFlowNode for query | provenance | | +| openai_test.py:13:5:13:9 | ControlFlowNode for query | openai_test.py:33:33:33:37 | ControlFlowNode for query | provenance | | +| openai_test.py:13:5:13:9 | ControlFlowNode for query | openai_test.py:42:15:42:19 | ControlFlowNode for query | provenance | | +| openai_test.py:13:5:13:9 | ControlFlowNode for query | openai_test.py:53:33:53:37 | ControlFlowNode for query | provenance | | +| openai_test.py:13:5:13:9 | ControlFlowNode for query | openai_test.py:67:28:67:32 | ControlFlowNode for query | provenance | | +| openai_test.py:13:5:13:9 | ControlFlowNode for query | openai_test.py:71:28:71:32 | ControlFlowNode for query | provenance | | +| openai_test.py:13:5:13:9 | ControlFlowNode for query | openai_test.py:84:28:84:32 | ControlFlowNode for query | provenance | | +| openai_test.py:13:13:13:19 | ControlFlowNode for request | openai_test.py:13:13:13:24 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | +| openai_test.py:13:13:13:24 | ControlFlowNode for Attribute | openai_test.py:13:13:13:37 | ControlFlowNode for Attribute() | provenance | dict.get | +| openai_test.py:13:13:13:37 | ControlFlowNode for Attribute() | openai_test.py:13:5:13:9 | ControlFlowNode for query | provenance | | +nodes +| agent_instructions.py:2:26:2:32 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | +| agent_instructions.py:2:26:2:32 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| agent_instructions.py:7:5:7:9 | ControlFlowNode for input | semmle.label | ControlFlowNode for input | +| agent_instructions.py:7:13:7:19 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| agent_instructions.py:7:13:7:24 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute | +| agent_instructions.py:7:13:7:37 | ControlFlowNode for Attribute() | semmle.label | ControlFlowNode for Attribute() | +| agent_instructions.py:9:50:9:89 | ControlFlowNode for BinaryExpr | semmle.label | ControlFlowNode for BinaryExpr | +| agent_instructions.py:17:5:17:9 | ControlFlowNode for input | semmle.label | ControlFlowNode for input | +| agent_instructions.py:17:13:17:19 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| agent_instructions.py:17:13:17:24 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute | +| agent_instructions.py:17:13:17:37 | ControlFlowNode for Attribute() | semmle.label | ControlFlowNode for Attribute() | +| agent_instructions.py:25:28:25:32 | ControlFlowNode for input | semmle.label | ControlFlowNode for input | +| agent_instructions.py:35:28:35:32 | ControlFlowNode for input | semmle.label | ControlFlowNode for input | +| openai_test.py:2:26:2:32 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | +| openai_test.py:2:26:2:32 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| openai_test.py:12:5:12:11 | ControlFlowNode for persona | semmle.label | ControlFlowNode for persona | +| openai_test.py:12:15:12:21 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| openai_test.py:12:15:12:26 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute | +| openai_test.py:12:15:12:41 | ControlFlowNode for Attribute() | semmle.label | ControlFlowNode for Attribute() | +| openai_test.py:13:5:13:9 | ControlFlowNode for query | semmle.label | ControlFlowNode for query | +| openai_test.py:13:13:13:19 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | +| openai_test.py:13:13:13:24 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute | +| openai_test.py:13:13:13:37 | ControlFlowNode for Attribute() | semmle.label | ControlFlowNode for Attribute() | +| openai_test.py:17:22:17:46 | ControlFlowNode for BinaryExpr | semmle.label | ControlFlowNode for BinaryExpr | +| openai_test.py:18:15:18:19 | ControlFlowNode for query | semmle.label | ControlFlowNode for query | +| openai_test.py:22:22:22:46 | ControlFlowNode for BinaryExpr | semmle.label | ControlFlowNode for BinaryExpr | +| openai_test.py:26:28:26:51 | ControlFlowNode for BinaryExpr | semmle.label | ControlFlowNode for BinaryExpr | +| openai_test.py:33:33:33:37 | ControlFlowNode for query | semmle.label | ControlFlowNode for query | +| openai_test.py:41:22:41:46 | ControlFlowNode for BinaryExpr | semmle.label | ControlFlowNode for BinaryExpr | +| openai_test.py:42:15:42:19 | ControlFlowNode for query | semmle.label | ControlFlowNode for query | +| openai_test.py:53:33:53:37 | ControlFlowNode for query | semmle.label | ControlFlowNode for query | +| openai_test.py:63:28:63:51 | ControlFlowNode for BinaryExpr | semmle.label | ControlFlowNode for BinaryExpr | +| openai_test.py:67:28:67:32 | ControlFlowNode for query | semmle.label | ControlFlowNode for query | +| openai_test.py:71:28:71:32 | ControlFlowNode for query | semmle.label | ControlFlowNode for query | +| openai_test.py:80:28:80:51 | ControlFlowNode for BinaryExpr | semmle.label | ControlFlowNode for BinaryExpr | +| openai_test.py:84:28:84:32 | ControlFlowNode for query | semmle.label | ControlFlowNode for query | +| openai_test.py:92:22:92:46 | ControlFlowNode for BinaryExpr | semmle.label | ControlFlowNode for BinaryExpr | +subpaths diff --git a/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.qlref b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.qlref new file mode 100644 index 000000000000..08466562ffe7 --- /dev/null +++ b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.qlref @@ -0,0 +1,2 @@ +query: experimental/Security/CWE-1427/PromptInjection.ql +postprocess: utils/test/InlineExpectationsTestQuery.ql \ No newline at end of file diff --git a/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/agent_instructions.py b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/agent_instructions.py new file mode 100644 index 000000000000..12cebc1b5831 --- /dev/null +++ b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/agent_instructions.py @@ -0,0 +1,38 @@ +from agents import Agent, Runner +from flask import Flask, request # $ Source +app = Flask(__name__) + +@app.route("/parameter-route") +def get_input1(): + input = request.args.get("input") + + agent = Agent(name="Assistant", instructions="This prompt is customized for " + input) # $Alert[py/prompt-injection] + + result = Runner.run_sync(agent, "This is a user message.") + print(result.final_output) + + +@app.route("/parameter-route") +def get_input2(): + input = request.args.get("input") + + agent = Agent(name="Assistant", instructions="This prompt is not customized.") + result = Runner.run_sync( + agent=agent, + input=[ + { + "role": "user", + "content": input, # $Alert[py/prompt-injection] + } + ] + ) + + result2 = Runner.run_sync( + agent, + [ + { + "role": "user", + "content": input, # $Alert[py/prompt-injection] + } + ] + ) diff --git a/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/openai_test.py b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/openai_test.py new file mode 100644 index 000000000000..2b25609670c5 --- /dev/null +++ b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/openai_test.py @@ -0,0 +1,93 @@ +from openai import OpenAI, AsyncOpenAI, AzureOpenAI +from flask import Flask, request # $ Source +app = Flask(__name__) + +client = OpenAI() +async_client = AsyncOpenAI() +azure_client = AzureOpenAI() + + +@app.route("/openai") +async def get_input_openai(): + persona = request.args.get("persona") + query = request.args.get("query") + role = request.args.get("role") + + response1 = client.responses.create( + instructions="Talks like a " + persona, # $ Alert[py/prompt-injection] + input=query, # $ Alert[py/prompt-injection] + ) + + response2 = client.responses.create( + instructions="Talks like a " + persona, # $ Alert[py/prompt-injection] + input=[ + { + "role": "developer", + "content": "Talk like a " + persona # $ Alert[py/prompt-injection] + }, + { + "role": "user", + "content": [ + { + "type": "input_text", + "text": query # $ Alert[py/prompt-injection] + } + ] + } + ] + ) + + response3 = await async_client.responses.create( + instructions="Talks like a " + persona, # $ Alert[py/prompt-injection] + input=query, # $ Alert[py/prompt-injection] + ) + + async with client.realtime.connect(model="gpt-realtime") as connection: + await connection.conversation.item.create( + item={ + "type": "message", + "role": role, + "content": [ + { + "type": "input_text", + "text": query # $ Alert[py/prompt-injection] + } + ], + } + ) + + completion1 = client.chat.completions.create( + messages=[ + { + "role": "developer", + "content": "Talk like a " + persona # $ Alert[py/prompt-injection] + }, + { + "role": "user", + "content": query, # $ Alert[py/prompt-injection] + }, + { + "role": role, + "content": query, # $ Alert[py/prompt-injection] + } + ] + ) + + completion2 = azure_client.chat.completions.create( + messages=[ + { + "role": "developer", + "content": "Talk like a " + persona # $ Alert[py/prompt-injection] + }, + { + "role": "user", + "content": query, # $ Alert[py/prompt-injection] + } + ] + ) + + assistant = client.beta.assistants.create( + name="Test Agent", + model="gpt-4.1", + instructions="Talks like a " + persona # $ Alert[py/prompt-injection] + ) diff --git a/shared/mad/codeql/mad/ModelValidation.qll b/shared/mad/codeql/mad/ModelValidation.qll index 9791355d03ae..042fb4200dd1 100644 --- a/shared/mad/codeql/mad/ModelValidation.qll +++ b/shared/mad/codeql/mad/ModelValidation.qll @@ -46,7 +46,9 @@ module KindValidation { // Go-only currently, but may be shared in the future "jwt", // CPP-only currently - "remote-sink" + "remote-sink", + // Python-only currently, but may be shared in the future + "prompt-injection" ] or this.matches([ From ad6f800022beae4d874adfe224dc6ace5965221a Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 29 Jan 2026 13:52:10 +0000 Subject: [PATCH 236/433] Pretty print model numbers in tests --- python/ql/lib/utils/test/PrettyPrintModels.ql | 6 ++ .../UnsafeUnpack.expected | 32 +++++---- .../UnsafeUnpack.qlref | 3 +- .../CWE-409/DecompressionBombs.expected | 70 ++++++++++--------- .../Security/CWE-409/DecompressionBombs.qlref | 3 +- .../SqlInjection.expected | 8 ++- .../SqlInjection.qlref | 3 +- .../Tests1/HeaderInjection.expected | 23 +++--- .../Tests1/HeaderInjection.qlref | 3 +- 9 files changed, 85 insertions(+), 66 deletions(-) create mode 100644 python/ql/lib/utils/test/PrettyPrintModels.ql diff --git a/python/ql/lib/utils/test/PrettyPrintModels.ql b/python/ql/lib/utils/test/PrettyPrintModels.ql new file mode 100644 index 000000000000..91c398543289 --- /dev/null +++ b/python/ql/lib/utils/test/PrettyPrintModels.ql @@ -0,0 +1,6 @@ +/** + * @kind test-postprocess + */ + +import semmle.python.frameworks.data.internal.ApiGraphModels +import codeql.dataflow.test.ProvenancePathGraph::TestPostProcessing::TranslateProvenanceResults diff --git a/python/ql/test/experimental/query-tests/Security/CWE-022-UnsafeUnpacking/UnsafeUnpack.expected b/python/ql/test/experimental/query-tests/Security/CWE-022-UnsafeUnpacking/UnsafeUnpack.expected index 69bb8d30e8f4..de8721382bf3 100644 --- a/python/ql/test/experimental/query-tests/Security/CWE-022-UnsafeUnpacking/UnsafeUnpack.expected +++ b/python/ql/test/experimental/query-tests/Security/CWE-022-UnsafeUnpacking/UnsafeUnpack.expected @@ -1,3 +1,17 @@ +#select +| UnsafeUnpack.py:19:35:19:41 | ControlFlowNode for tarpath | UnsafeUnpack.py:5:26:5:32 | ControlFlowNode for ImportMember | UnsafeUnpack.py:19:35:19:41 | ControlFlowNode for tarpath | Unsafe extraction from a malicious tarball retrieved from a remote location. | +| UnsafeUnpack.py:34:23:34:38 | ControlFlowNode for local_ziped_path | UnsafeUnpack.py:33:50:33:65 | ControlFlowNode for local_ziped_path | UnsafeUnpack.py:34:23:34:38 | ControlFlowNode for local_ziped_path | Unsafe extraction from a malicious tarball retrieved from a remote location. | +| UnsafeUnpack.py:48:23:48:37 | ControlFlowNode for compressed_file | UnsafeUnpack.py:47:20:47:34 | ControlFlowNode for compressed_file | UnsafeUnpack.py:48:23:48:37 | ControlFlowNode for compressed_file | Unsafe extraction from a malicious tarball retrieved from a remote location. | +| UnsafeUnpack.py:52:23:52:37 | ControlFlowNode for compressed_file | UnsafeUnpack.py:51:19:51:36 | ControlFlowNode for Attribute() | UnsafeUnpack.py:52:23:52:37 | ControlFlowNode for compressed_file | Unsafe extraction from a malicious tarball retrieved from a remote location. | +| UnsafeUnpack.py:66:23:66:37 | ControlFlowNode for compressed_file | UnsafeUnpack.py:65:19:65:31 | ControlFlowNode for Attribute | UnsafeUnpack.py:66:23:66:37 | ControlFlowNode for compressed_file | Unsafe extraction from a malicious tarball retrieved from a remote location. | +| UnsafeUnpack.py:87:23:87:29 | ControlFlowNode for tarpath | UnsafeUnpack.py:79:16:79:28 | ControlFlowNode for Attribute | UnsafeUnpack.py:87:23:87:29 | ControlFlowNode for tarpath | Unsafe extraction from a malicious tarball retrieved from a remote location. | +| UnsafeUnpack.py:105:35:105:42 | ControlFlowNode for savepath | UnsafeUnpack.py:103:32:103:44 | ControlFlowNode for Attribute | UnsafeUnpack.py:105:35:105:42 | ControlFlowNode for savepath | Unsafe extraction from a malicious tarball retrieved from a remote location. | +| UnsafeUnpack.py:112:35:112:43 | ControlFlowNode for file_path | UnsafeUnpack.py:108:22:108:34 | ControlFlowNode for Attribute | UnsafeUnpack.py:112:35:112:43 | ControlFlowNode for file_path | Unsafe extraction from a malicious tarball retrieved from a remote location. | +| UnsafeUnpack.py:120:41:120:58 | ControlFlowNode for uploaded_file_path | UnsafeUnpack.py:116:27:116:39 | ControlFlowNode for Attribute | UnsafeUnpack.py:120:41:120:58 | ControlFlowNode for uploaded_file_path | Unsafe extraction from a malicious tarball retrieved from a remote location. | +| UnsafeUnpack.py:142:49:142:51 | ControlFlowNode for tar | UnsafeUnpack.py:140:23:140:35 | ControlFlowNode for Attribute | UnsafeUnpack.py:142:49:142:51 | ControlFlowNode for tar | Unsafe extraction from a malicious tarball retrieved from a remote location. | +| UnsafeUnpack.py:167:67:167:72 | ControlFlowNode for result | UnsafeUnpack.py:158:32:158:44 | ControlFlowNode for Attribute | UnsafeUnpack.py:167:67:167:72 | ControlFlowNode for result | Unsafe extraction from a malicious tarball retrieved from a remote location. | +| UnsafeUnpack.py:176:1:176:34 | ControlFlowNode for Attribute() | UnsafeUnpack.py:79:16:79:28 | ControlFlowNode for Attribute | UnsafeUnpack.py:176:1:176:34 | ControlFlowNode for Attribute() | Unsafe extraction from a malicious tarball retrieved from a remote location. | +| UnsafeUnpack.py:201:29:201:36 | ControlFlowNode for Attribute | UnsafeUnpack.py:194:53:194:55 | ControlFlowNode for tmp | UnsafeUnpack.py:201:29:201:36 | ControlFlowNode for Attribute | Unsafe extraction from a malicious tarball retrieved from a remote location. | edges | UnsafeUnpack.py:5:26:5:32 | ControlFlowNode for ImportMember | UnsafeUnpack.py:5:26:5:32 | ControlFlowNode for request | provenance | | | UnsafeUnpack.py:5:26:5:32 | ControlFlowNode for request | UnsafeUnpack.py:11:18:11:24 | ControlFlowNode for request | provenance | | @@ -75,7 +89,7 @@ edges | UnsafeUnpack.py:161:19:161:21 | ControlFlowNode for tar | UnsafeUnpack.py:163:33:163:35 | ControlFlowNode for tar | provenance | | | UnsafeUnpack.py:161:25:161:46 | ControlFlowNode for Attribute() | UnsafeUnpack.py:161:19:161:21 | ControlFlowNode for tar | provenance | | | UnsafeUnpack.py:161:38:161:45 | ControlFlowNode for savepath | UnsafeUnpack.py:161:25:161:46 | ControlFlowNode for Attribute() | provenance | Config | -| UnsafeUnpack.py:161:38:161:45 | ControlFlowNode for savepath | UnsafeUnpack.py:161:25:161:46 | ControlFlowNode for Attribute() | provenance | MaD:70 | +| UnsafeUnpack.py:161:38:161:45 | ControlFlowNode for savepath | UnsafeUnpack.py:161:25:161:46 | ControlFlowNode for Attribute() | provenance | MaD:1 | | UnsafeUnpack.py:163:23:163:28 | ControlFlowNode for member | UnsafeUnpack.py:166:37:166:42 | ControlFlowNode for member | provenance | | | UnsafeUnpack.py:163:33:163:35 | ControlFlowNode for tar | UnsafeUnpack.py:163:23:163:28 | ControlFlowNode for member | provenance | | | UnsafeUnpack.py:166:23:166:28 | [post] ControlFlowNode for result | UnsafeUnpack.py:167:67:167:72 | ControlFlowNode for result | provenance | | @@ -92,6 +106,8 @@ edges | UnsafeUnpack.py:176:17:176:23 | ControlFlowNode for tarpath | UnsafeUnpack.py:176:1:176:34 | ControlFlowNode for Attribute() | provenance | Config | | UnsafeUnpack.py:194:53:194:55 | ControlFlowNode for tmp | UnsafeUnpack.py:201:29:201:31 | ControlFlowNode for tmp | provenance | | | UnsafeUnpack.py:201:29:201:31 | ControlFlowNode for tmp | UnsafeUnpack.py:201:29:201:36 | ControlFlowNode for Attribute | provenance | Config | +models +| 1 | Summary: tarfile; Member[open]; Argument[0,name:,2,fileobj:]; ReturnValue; taint | nodes | UnsafeUnpack.py:5:26:5:32 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | | UnsafeUnpack.py:5:26:5:32 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | @@ -188,17 +204,3 @@ nodes | UnsafeUnpack.py:201:29:201:31 | ControlFlowNode for tmp | semmle.label | ControlFlowNode for tmp | | UnsafeUnpack.py:201:29:201:36 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute | subpaths -#select -| UnsafeUnpack.py:19:35:19:41 | ControlFlowNode for tarpath | UnsafeUnpack.py:5:26:5:32 | ControlFlowNode for ImportMember | UnsafeUnpack.py:19:35:19:41 | ControlFlowNode for tarpath | Unsafe extraction from a malicious tarball retrieved from a remote location. | -| UnsafeUnpack.py:34:23:34:38 | ControlFlowNode for local_ziped_path | UnsafeUnpack.py:33:50:33:65 | ControlFlowNode for local_ziped_path | UnsafeUnpack.py:34:23:34:38 | ControlFlowNode for local_ziped_path | Unsafe extraction from a malicious tarball retrieved from a remote location. | -| UnsafeUnpack.py:48:23:48:37 | ControlFlowNode for compressed_file | UnsafeUnpack.py:47:20:47:34 | ControlFlowNode for compressed_file | UnsafeUnpack.py:48:23:48:37 | ControlFlowNode for compressed_file | Unsafe extraction from a malicious tarball retrieved from a remote location. | -| UnsafeUnpack.py:52:23:52:37 | ControlFlowNode for compressed_file | UnsafeUnpack.py:51:19:51:36 | ControlFlowNode for Attribute() | UnsafeUnpack.py:52:23:52:37 | ControlFlowNode for compressed_file | Unsafe extraction from a malicious tarball retrieved from a remote location. | -| UnsafeUnpack.py:66:23:66:37 | ControlFlowNode for compressed_file | UnsafeUnpack.py:65:19:65:31 | ControlFlowNode for Attribute | UnsafeUnpack.py:66:23:66:37 | ControlFlowNode for compressed_file | Unsafe extraction from a malicious tarball retrieved from a remote location. | -| UnsafeUnpack.py:87:23:87:29 | ControlFlowNode for tarpath | UnsafeUnpack.py:79:16:79:28 | ControlFlowNode for Attribute | UnsafeUnpack.py:87:23:87:29 | ControlFlowNode for tarpath | Unsafe extraction from a malicious tarball retrieved from a remote location. | -| UnsafeUnpack.py:105:35:105:42 | ControlFlowNode for savepath | UnsafeUnpack.py:103:32:103:44 | ControlFlowNode for Attribute | UnsafeUnpack.py:105:35:105:42 | ControlFlowNode for savepath | Unsafe extraction from a malicious tarball retrieved from a remote location. | -| UnsafeUnpack.py:112:35:112:43 | ControlFlowNode for file_path | UnsafeUnpack.py:108:22:108:34 | ControlFlowNode for Attribute | UnsafeUnpack.py:112:35:112:43 | ControlFlowNode for file_path | Unsafe extraction from a malicious tarball retrieved from a remote location. | -| UnsafeUnpack.py:120:41:120:58 | ControlFlowNode for uploaded_file_path | UnsafeUnpack.py:116:27:116:39 | ControlFlowNode for Attribute | UnsafeUnpack.py:120:41:120:58 | ControlFlowNode for uploaded_file_path | Unsafe extraction from a malicious tarball retrieved from a remote location. | -| UnsafeUnpack.py:142:49:142:51 | ControlFlowNode for tar | UnsafeUnpack.py:140:23:140:35 | ControlFlowNode for Attribute | UnsafeUnpack.py:142:49:142:51 | ControlFlowNode for tar | Unsafe extraction from a malicious tarball retrieved from a remote location. | -| UnsafeUnpack.py:167:67:167:72 | ControlFlowNode for result | UnsafeUnpack.py:158:32:158:44 | ControlFlowNode for Attribute | UnsafeUnpack.py:167:67:167:72 | ControlFlowNode for result | Unsafe extraction from a malicious tarball retrieved from a remote location. | -| UnsafeUnpack.py:176:1:176:34 | ControlFlowNode for Attribute() | UnsafeUnpack.py:79:16:79:28 | ControlFlowNode for Attribute | UnsafeUnpack.py:176:1:176:34 | ControlFlowNode for Attribute() | Unsafe extraction from a malicious tarball retrieved from a remote location. | -| UnsafeUnpack.py:201:29:201:36 | ControlFlowNode for Attribute | UnsafeUnpack.py:194:53:194:55 | ControlFlowNode for tmp | UnsafeUnpack.py:201:29:201:36 | ControlFlowNode for Attribute | Unsafe extraction from a malicious tarball retrieved from a remote location. | diff --git a/python/ql/test/experimental/query-tests/Security/CWE-022-UnsafeUnpacking/UnsafeUnpack.qlref b/python/ql/test/experimental/query-tests/Security/CWE-022-UnsafeUnpacking/UnsafeUnpack.qlref index 90e5db651a0d..564ed9515aa9 100644 --- a/python/ql/test/experimental/query-tests/Security/CWE-022-UnsafeUnpacking/UnsafeUnpack.qlref +++ b/python/ql/test/experimental/query-tests/Security/CWE-022-UnsafeUnpacking/UnsafeUnpack.qlref @@ -1 +1,2 @@ -experimental/Security/CWE-022bis/UnsafeUnpack.ql \ No newline at end of file +query: experimental/Security/CWE-022bis/UnsafeUnpack.ql +postprocess: utils/test/PrettyPrintModels.ql diff --git a/python/ql/test/experimental/query-tests/Security/CWE-409/DecompressionBombs.expected b/python/ql/test/experimental/query-tests/Security/CWE-409/DecompressionBombs.expected index e32edeb702bb..c9f584c987e5 100644 --- a/python/ql/test/experimental/query-tests/Security/CWE-409/DecompressionBombs.expected +++ b/python/ql/test/experimental/query-tests/Security/CWE-409/DecompressionBombs.expected @@ -1,23 +1,52 @@ +#select +| test.py:11:5:11:52 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:11:5:11:52 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:12:5:12:48 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:12:5:12:48 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:15:14:15:29 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:15:14:15:29 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:19:14:19:39 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:19:14:19:39 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:22:5:22:60 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:22:5:22:60 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:24:5:24:52 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:24:5:24:52 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:25:5:25:55 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:25:5:25:55 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:26:5:26:57 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:26:5:26:57 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:27:5:27:50 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:27:5:27:50 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:28:5:28:60 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:28:5:28:60 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:35:27:35:35 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:35:27:35:35 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:39:15:39:23 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:39:15:39:23 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:40:19:40:27 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:40:19:40:27 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:44:14:44:22 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:44:14:44:22 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:45:17:45:25 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:45:17:45:25 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:49:15:49:23 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:49:15:49:23 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:50:19:50:27 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:50:19:50:27 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:54:15:54:23 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:54:15:54:23 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:55:19:55:27 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:55:19:55:27 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:59:40:59:48 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:59:40:59:48 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:61:23:61:31 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:61:23:61:31 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:62:21:62:29 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:62:21:62:29 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:64:40:64:48 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:64:40:64:48 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:65:22:65:30 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:65:22:65:30 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:66:21:66:29 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:66:21:66:29 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:67:42:67:50 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:67:42:67:50 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:68:23:68:31 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:68:23:68:31 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | +| test.py:69:36:69:44 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:69:36:69:44 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | edges | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:11:21:11:29 | ControlFlowNode for file_path | provenance | | | test.py:11:5:11:35 | ControlFlowNode for Attribute() | test.py:11:5:11:52 | ControlFlowNode for Attribute() | provenance | Config | -| test.py:11:21:11:29 | ControlFlowNode for file_path | test.py:11:5:11:35 | ControlFlowNode for Attribute() | provenance | MaD:87 | +| test.py:11:21:11:29 | ControlFlowNode for file_path | test.py:11:5:11:35 | ControlFlowNode for Attribute() | provenance | MaD:1 | | test.py:11:21:11:29 | ControlFlowNode for file_path | test.py:11:5:11:52 | ControlFlowNode for Attribute() | provenance | Config | | test.py:11:21:11:29 | ControlFlowNode for file_path | test.py:12:21:12:29 | ControlFlowNode for file_path | provenance | | | test.py:12:5:12:35 | ControlFlowNode for Attribute() | test.py:12:5:12:48 | ControlFlowNode for Attribute() | provenance | Config | -| test.py:12:21:12:29 | ControlFlowNode for file_path | test.py:12:5:12:35 | ControlFlowNode for Attribute() | provenance | MaD:87 | +| test.py:12:21:12:29 | ControlFlowNode for file_path | test.py:12:5:12:35 | ControlFlowNode for Attribute() | provenance | MaD:1 | | test.py:12:21:12:29 | ControlFlowNode for file_path | test.py:12:5:12:48 | ControlFlowNode for Attribute() | provenance | Config | | test.py:12:21:12:29 | ControlFlowNode for file_path | test.py:14:26:14:34 | ControlFlowNode for file_path | provenance | | | test.py:14:10:14:35 | ControlFlowNode for Attribute() | test.py:15:14:15:29 | ControlFlowNode for Attribute() | provenance | Config | -| test.py:14:26:14:34 | ControlFlowNode for file_path | test.py:14:10:14:35 | ControlFlowNode for Attribute() | provenance | MaD:87 | +| test.py:14:26:14:34 | ControlFlowNode for file_path | test.py:14:10:14:35 | ControlFlowNode for Attribute() | provenance | MaD:1 | | test.py:14:26:14:34 | ControlFlowNode for file_path | test.py:15:14:15:29 | ControlFlowNode for Attribute() | provenance | Config | | test.py:14:26:14:34 | ControlFlowNode for file_path | test.py:18:26:18:34 | ControlFlowNode for file_path | provenance | | | test.py:18:10:18:35 | ControlFlowNode for Attribute() | test.py:19:14:19:39 | ControlFlowNode for Attribute() | provenance | Config | -| test.py:18:26:18:34 | ControlFlowNode for file_path | test.py:18:10:18:35 | ControlFlowNode for Attribute() | provenance | MaD:87 | +| test.py:18:26:18:34 | ControlFlowNode for file_path | test.py:18:10:18:35 | ControlFlowNode for Attribute() | provenance | MaD:1 | | test.py:18:26:18:34 | ControlFlowNode for file_path | test.py:19:14:19:39 | ControlFlowNode for Attribute() | provenance | Config | | test.py:18:26:18:34 | ControlFlowNode for file_path | test.py:22:21:22:29 | ControlFlowNode for file_path | provenance | | | test.py:22:5:22:30 | ControlFlowNode for Attribute() | test.py:22:5:22:60 | ControlFlowNode for Attribute() | provenance | Config | -| test.py:22:21:22:29 | ControlFlowNode for file_path | test.py:22:5:22:30 | ControlFlowNode for Attribute() | provenance | MaD:87 | +| test.py:22:21:22:29 | ControlFlowNode for file_path | test.py:22:5:22:30 | ControlFlowNode for Attribute() | provenance | MaD:1 | | test.py:22:21:22:29 | ControlFlowNode for file_path | test.py:22:5:22:60 | ControlFlowNode for Attribute() | provenance | Config | | test.py:22:21:22:29 | ControlFlowNode for file_path | test.py:24:18:24:26 | ControlFlowNode for file_path | provenance | | | test.py:24:18:24:26 | ControlFlowNode for file_path | test.py:24:5:24:52 | ControlFlowNode for Attribute() | provenance | Config | @@ -47,6 +76,8 @@ edges | test.py:28:26:28:34 | ControlFlowNode for file_path | test.py:67:42:67:50 | ControlFlowNode for file_path | provenance | | | test.py:28:26:28:34 | ControlFlowNode for file_path | test.py:68:23:68:31 | ControlFlowNode for file_path | provenance | | | test.py:28:26:28:34 | ControlFlowNode for file_path | test.py:69:36:69:44 | ControlFlowNode for file_path | provenance | | +models +| 1 | Summary: zipfile.ZipFile!; Subclass.Call; Argument[0,file:]; ReturnValue; taint | nodes | test.py:10:16:10:24 | ControlFlowNode for file_path | semmle.label | ControlFlowNode for file_path | | test.py:11:5:11:35 | ControlFlowNode for Attribute() | semmle.label | ControlFlowNode for Attribute() | @@ -93,32 +124,3 @@ nodes | test.py:68:23:68:31 | ControlFlowNode for file_path | semmle.label | ControlFlowNode for file_path | | test.py:69:36:69:44 | ControlFlowNode for file_path | semmle.label | ControlFlowNode for file_path | subpaths -#select -| test.py:11:5:11:52 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:11:5:11:52 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:12:5:12:48 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:12:5:12:48 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:15:14:15:29 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:15:14:15:29 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:19:14:19:39 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:19:14:19:39 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:22:5:22:60 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:22:5:22:60 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:24:5:24:52 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:24:5:24:52 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:25:5:25:55 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:25:5:25:55 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:26:5:26:57 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:26:5:26:57 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:27:5:27:50 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:27:5:27:50 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:28:5:28:60 | ControlFlowNode for Attribute() | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:28:5:28:60 | ControlFlowNode for Attribute() | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:35:27:35:35 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:35:27:35:35 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:39:15:39:23 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:39:15:39:23 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:40:19:40:27 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:40:19:40:27 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:44:14:44:22 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:44:14:44:22 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:45:17:45:25 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:45:17:45:25 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:49:15:49:23 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:49:15:49:23 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:50:19:50:27 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:50:19:50:27 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:54:15:54:23 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:54:15:54:23 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:55:19:55:27 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:55:19:55:27 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:59:40:59:48 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:59:40:59:48 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:61:23:61:31 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:61:23:61:31 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:62:21:62:29 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:62:21:62:29 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:64:40:64:48 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:64:40:64:48 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:65:22:65:30 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:65:22:65:30 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:66:21:66:29 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:66:21:66:29 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:67:42:67:50 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:67:42:67:50 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:68:23:68:31 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:68:23:68:31 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | -| test.py:69:36:69:44 | ControlFlowNode for file_path | test.py:10:16:10:24 | ControlFlowNode for file_path | test.py:69:36:69:44 | ControlFlowNode for file_path | This uncontrolled file extraction is $@. | test.py:10:16:10:24 | ControlFlowNode for file_path | depends on this user controlled data | diff --git a/python/ql/test/experimental/query-tests/Security/CWE-409/DecompressionBombs.qlref b/python/ql/test/experimental/query-tests/Security/CWE-409/DecompressionBombs.qlref index 5d425772f9a7..c4bb4019f740 100644 --- a/python/ql/test/experimental/query-tests/Security/CWE-409/DecompressionBombs.qlref +++ b/python/ql/test/experimental/query-tests/Security/CWE-409/DecompressionBombs.qlref @@ -1 +1,2 @@ -experimental/Security/CWE-409/DecompressionBombs.ql \ No newline at end of file +query: experimental/Security/CWE-409/DecompressionBombs.ql +postprocess: utils/test/PrettyPrintModels.ql diff --git a/python/ql/test/query-tests/Security/CWE-089-SqlInjection-local-threat-model/SqlInjection.expected b/python/ql/test/query-tests/Security/CWE-089-SqlInjection-local-threat-model/SqlInjection.expected index d59e639d641b..8cf2ec7b8266 100644 --- a/python/ql/test/query-tests/Security/CWE-089-SqlInjection-local-threat-model/SqlInjection.expected +++ b/python/ql/test/query-tests/Security/CWE-089-SqlInjection-local-threat-model/SqlInjection.expected @@ -1,8 +1,10 @@ +#select +| test.py:6:14:6:24 | ControlFlowNode for Subscript | test.py:6:14:6:21 | ControlFlowNode for Attribute | test.py:6:14:6:24 | ControlFlowNode for Subscript | This SQL query depends on a $@. | test.py:6:14:6:21 | ControlFlowNode for Attribute | user-provided value | edges -| test.py:6:14:6:21 | ControlFlowNode for Attribute | test.py:6:14:6:24 | ControlFlowNode for Subscript | provenance | Src:MaD:18 | +| test.py:6:14:6:21 | ControlFlowNode for Attribute | test.py:6:14:6:24 | ControlFlowNode for Subscript | provenance | Src:MaD:1 | +models +| 1 | Source: sys; Member[argv]; commandargs | nodes | test.py:6:14:6:21 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute | | test.py:6:14:6:24 | ControlFlowNode for Subscript | semmle.label | ControlFlowNode for Subscript | subpaths -#select -| test.py:6:14:6:24 | ControlFlowNode for Subscript | test.py:6:14:6:21 | ControlFlowNode for Attribute | test.py:6:14:6:24 | ControlFlowNode for Subscript | This SQL query depends on a $@. | test.py:6:14:6:21 | ControlFlowNode for Attribute | user-provided value | diff --git a/python/ql/test/query-tests/Security/CWE-089-SqlInjection-local-threat-model/SqlInjection.qlref b/python/ql/test/query-tests/Security/CWE-089-SqlInjection-local-threat-model/SqlInjection.qlref index d1d02cbe8d37..b6916bd2cd46 100644 --- a/python/ql/test/query-tests/Security/CWE-089-SqlInjection-local-threat-model/SqlInjection.qlref +++ b/python/ql/test/query-tests/Security/CWE-089-SqlInjection-local-threat-model/SqlInjection.qlref @@ -1 +1,2 @@ -Security/CWE-089/SqlInjection.ql +query: Security/CWE-089/SqlInjection.ql +postprocess: utils/test/PrettyPrintModels.ql diff --git a/python/ql/test/query-tests/Security/CWE-113-HeaderInjection/Tests1/HeaderInjection.expected b/python/ql/test/query-tests/Security/CWE-113-HeaderInjection/Tests1/HeaderInjection.expected index 6c5f8363c487..4043b9332435 100644 --- a/python/ql/test/query-tests/Security/CWE-113-HeaderInjection/Tests1/HeaderInjection.expected +++ b/python/ql/test/query-tests/Security/CWE-113-HeaderInjection/Tests1/HeaderInjection.expected @@ -1,3 +1,11 @@ +#select +| flask_tests.py:13:17:13:26 | ControlFlowNode for rfs_header | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | flask_tests.py:13:17:13:26 | ControlFlowNode for rfs_header | This HTTP header is constructed from a $@. | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | user-provided value | +| flask_tests.py:20:36:20:61 | ControlFlowNode for Subscript | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | flask_tests.py:20:36:20:61 | ControlFlowNode for Subscript | This HTTP header is constructed from a $@. | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | user-provided value | +| flask_tests.py:33:11:33:20 | ControlFlowNode for rfs_header | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | flask_tests.py:33:11:33:20 | ControlFlowNode for rfs_header | This HTTP header is constructed from a $@. | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | user-provided value | +| flask_tests.py:35:12:35:21 | ControlFlowNode for rfs_header | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | flask_tests.py:35:12:35:21 | ControlFlowNode for rfs_header | This HTTP header is constructed from a $@. | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | user-provided value | +| http_test.py:12:40:12:50 | ControlFlowNode for input_value | http_test.py:5:16:5:19 | ControlFlowNode for self | http_test.py:12:40:12:50 | ControlFlowNode for input_value | This HTTP header is constructed from a $@. | http_test.py:5:16:5:19 | ControlFlowNode for self | user-provided value | +| wsgiref_tests.py:8:17:8:22 | ControlFlowNode for h_name | wsgiref_tests.py:4:14:4:20 | ControlFlowNode for environ | wsgiref_tests.py:8:17:8:22 | ControlFlowNode for h_name | This HTTP header is constructed from a $@. | wsgiref_tests.py:4:14:4:20 | ControlFlowNode for environ | user-provided value | +| wsgiref_tests.py:8:42:8:46 | ControlFlowNode for h_val | wsgiref_tests.py:4:14:4:20 | ControlFlowNode for environ | wsgiref_tests.py:8:42:8:46 | ControlFlowNode for h_val | This HTTP header is constructed from a $@. | wsgiref_tests.py:4:14:4:20 | ControlFlowNode for environ | user-provided value | edges | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | flask_tests.py:1:29:1:35 | ControlFlowNode for request | provenance | | | flask_tests.py:1:29:1:35 | ControlFlowNode for request | flask_tests.py:9:18:9:24 | ControlFlowNode for request | provenance | | @@ -14,10 +22,10 @@ edges | http_test.py:5:16:5:19 | ControlFlowNode for self | http_test.py:6:45:6:53 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | http_test.py:6:9:6:19 | ControlFlowNode for parsed_path | http_test.py:7:40:7:56 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | http_test.py:6:23:6:54 | ControlFlowNode for Attribute() | http_test.py:6:9:6:19 | ControlFlowNode for parsed_path | provenance | | -| http_test.py:6:45:6:53 | ControlFlowNode for Attribute | http_test.py:6:23:6:54 | ControlFlowNode for Attribute() | provenance | MaD:78 | +| http_test.py:6:45:6:53 | ControlFlowNode for Attribute | http_test.py:6:23:6:54 | ControlFlowNode for Attribute() | provenance | MaD:2 | | http_test.py:7:9:7:14 | ControlFlowNode for params | http_test.py:8:23:8:28 | ControlFlowNode for params | provenance | | | http_test.py:7:18:7:57 | ControlFlowNode for Attribute() | http_test.py:7:9:7:14 | ControlFlowNode for params | provenance | | -| http_test.py:7:40:7:56 | ControlFlowNode for Attribute | http_test.py:7:18:7:57 | ControlFlowNode for Attribute() | provenance | MaD:77 | +| http_test.py:7:40:7:56 | ControlFlowNode for Attribute | http_test.py:7:18:7:57 | ControlFlowNode for Attribute() | provenance | MaD:1 | | http_test.py:8:9:8:19 | ControlFlowNode for input_value | http_test.py:12:40:12:50 | ControlFlowNode for input_value | provenance | | | http_test.py:8:23:8:28 | ControlFlowNode for params | http_test.py:8:23:8:47 | ControlFlowNode for Attribute() | provenance | dict.get | | http_test.py:8:23:8:47 | ControlFlowNode for Attribute() | http_test.py:8:9:8:19 | ControlFlowNode for input_value | provenance | | @@ -25,6 +33,9 @@ edges | wsgiref_tests.py:4:14:4:20 | ControlFlowNode for environ | wsgiref_tests.py:7:5:7:9 | ControlFlowNode for h_val | provenance | | | wsgiref_tests.py:6:5:6:10 | ControlFlowNode for h_name | wsgiref_tests.py:8:17:8:22 | ControlFlowNode for h_name | provenance | | | wsgiref_tests.py:7:5:7:9 | ControlFlowNode for h_val | wsgiref_tests.py:8:42:8:46 | ControlFlowNode for h_val | provenance | | +models +| 1 | Summary: urllib; Member[parse].Member[parse_qs]; Argument[0,qs:]; ReturnValue; taint | +| 2 | Summary: urllib; Member[parse].Member[urlparse]; Argument[0,urlstring:]; ReturnValue; taint | nodes | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | | flask_tests.py:1:29:1:35 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | @@ -55,11 +66,3 @@ nodes | wsgiref_tests.py:8:17:8:22 | ControlFlowNode for h_name | semmle.label | ControlFlowNode for h_name | | wsgiref_tests.py:8:42:8:46 | ControlFlowNode for h_val | semmle.label | ControlFlowNode for h_val | subpaths -#select -| flask_tests.py:13:17:13:26 | ControlFlowNode for rfs_header | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | flask_tests.py:13:17:13:26 | ControlFlowNode for rfs_header | This HTTP header is constructed from a $@. | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | user-provided value | -| flask_tests.py:20:36:20:61 | ControlFlowNode for Subscript | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | flask_tests.py:20:36:20:61 | ControlFlowNode for Subscript | This HTTP header is constructed from a $@. | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | user-provided value | -| flask_tests.py:33:11:33:20 | ControlFlowNode for rfs_header | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | flask_tests.py:33:11:33:20 | ControlFlowNode for rfs_header | This HTTP header is constructed from a $@. | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | user-provided value | -| flask_tests.py:35:12:35:21 | ControlFlowNode for rfs_header | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | flask_tests.py:35:12:35:21 | ControlFlowNode for rfs_header | This HTTP header is constructed from a $@. | flask_tests.py:1:29:1:35 | ControlFlowNode for ImportMember | user-provided value | -| http_test.py:12:40:12:50 | ControlFlowNode for input_value | http_test.py:5:16:5:19 | ControlFlowNode for self | http_test.py:12:40:12:50 | ControlFlowNode for input_value | This HTTP header is constructed from a $@. | http_test.py:5:16:5:19 | ControlFlowNode for self | user-provided value | -| wsgiref_tests.py:8:17:8:22 | ControlFlowNode for h_name | wsgiref_tests.py:4:14:4:20 | ControlFlowNode for environ | wsgiref_tests.py:8:17:8:22 | ControlFlowNode for h_name | This HTTP header is constructed from a $@. | wsgiref_tests.py:4:14:4:20 | ControlFlowNode for environ | user-provided value | -| wsgiref_tests.py:8:42:8:46 | ControlFlowNode for h_val | wsgiref_tests.py:4:14:4:20 | ControlFlowNode for environ | wsgiref_tests.py:8:42:8:46 | ControlFlowNode for h_val | This HTTP header is constructed from a $@. | wsgiref_tests.py:4:14:4:20 | ControlFlowNode for environ | user-provided value | diff --git a/python/ql/test/query-tests/Security/CWE-113-HeaderInjection/Tests1/HeaderInjection.qlref b/python/ql/test/query-tests/Security/CWE-113-HeaderInjection/Tests1/HeaderInjection.qlref index 7dbe28e4b591..bf103a555451 100644 --- a/python/ql/test/query-tests/Security/CWE-113-HeaderInjection/Tests1/HeaderInjection.qlref +++ b/python/ql/test/query-tests/Security/CWE-113-HeaderInjection/Tests1/HeaderInjection.qlref @@ -1 +1,2 @@ -Security/CWE-113/HeaderInjection.ql \ No newline at end of file +query: Security/CWE-113/HeaderInjection.ql +postprocess: utils/test/PrettyPrintModels.ql From ef6332c5814be8821cefce637c0b2981097d3331 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 29 Jan 2026 12:04:18 +0000 Subject: [PATCH 237/433] Allow MaD sanitizers for queries with MaD sinks --- .../security/dataflow/CodeInjectionCustomizations.qll | 7 +++++++ .../dataflow/CommandInjectionCustomizations.qll | 7 +++++++ .../security/dataflow/LogInjectionCustomizations.qll | 7 +++++++ .../security/dataflow/PathInjectionCustomizations.qll | 7 +++++++ .../security/dataflow/ReflectedXSSCustomizations.qll | 7 +++++++ .../security/dataflow/SqlInjectionCustomizations.qll | 7 +++++++ .../dataflow/UnsafeDeserializationCustomizations.qll | 7 +++++++ .../ql/src/Security/CWE-798/HardcodedCredentials.ql | 11 +++++++++++ 8 files changed, 60 insertions(+) diff --git a/python/ql/lib/semmle/python/security/dataflow/CodeInjectionCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/CodeInjectionCustomizations.qll index 5878245ed104..5a7e5882e449 100644 --- a/python/ql/lib/semmle/python/security/dataflow/CodeInjectionCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/CodeInjectionCustomizations.qll @@ -60,4 +60,11 @@ module CodeInjection { /** DEPRECATED: Use ConstCompareAsSanitizerGuard instead. */ deprecated class StringConstCompareAsSanitizerGuard = ConstCompareAsSanitizerGuard; + + /** + * A sanitizer defined via models-as-data with kind "code-injection". + */ + class SanitizerFromModel extends Sanitizer { + SanitizerFromModel() { ModelOutput::barrierNode(this, "code-injection") } + } } diff --git a/python/ql/lib/semmle/python/security/dataflow/CommandInjectionCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/CommandInjectionCustomizations.qll index 0bfd6494a1cd..facb422e7285 100644 --- a/python/ql/lib/semmle/python/security/dataflow/CommandInjectionCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/CommandInjectionCustomizations.qll @@ -95,4 +95,11 @@ module CommandInjection { /** DEPRECATED: Use ConstCompareAsSanitizerGuard instead. */ deprecated class StringConstCompareAsSanitizerGuard = ConstCompareAsSanitizerGuard; + + /** + * A sanitizer defined via models-as-data with kind "command-injection". + */ + class SanitizerFromModel extends Sanitizer { + SanitizerFromModel() { ModelOutput::barrierNode(this, "command-injection") } + } } diff --git a/python/ql/lib/semmle/python/security/dataflow/LogInjectionCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/LogInjectionCustomizations.qll index 59e52f0ab0a9..98c767df2894 100644 --- a/python/ql/lib/semmle/python/security/dataflow/LogInjectionCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/LogInjectionCustomizations.qll @@ -106,4 +106,11 @@ module LogInjection { this.getArg(0).asExpr().(StringLiteral).getText() in ["\r\n", "\n"] } } + + /** + * A sanitizer defined via models-as-data with kind "log-injection". + */ + class SanitizerFromModel extends Sanitizer { + SanitizerFromModel() { ModelOutput::barrierNode(this, "log-injection") } + } } diff --git a/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll index e2399d49c0b8..269026b591bc 100644 --- a/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll @@ -98,4 +98,11 @@ module PathInjection { /** DEPRECATED: Use ConstCompareAsSanitizerGuard instead. */ deprecated class StringConstCompareAsSanitizerGuard = ConstCompareAsSanitizerGuard; + + /** + * A sanitizer defined via models-as-data with kind "path-injection". + */ + class SanitizerFromModel extends Sanitizer { + SanitizerFromModel() { ModelOutput::barrierNode(this, "path-injection") } + } } diff --git a/python/ql/lib/semmle/python/security/dataflow/ReflectedXSSCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/ReflectedXSSCustomizations.qll index 58e5adc86605..0ef2234a5772 100644 --- a/python/ql/lib/semmle/python/security/dataflow/ReflectedXSSCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/ReflectedXSSCustomizations.qll @@ -84,4 +84,11 @@ module ReflectedXss { /** DEPRECATED: Use ConstCompareAsSanitizerGuard instead. */ deprecated class StringConstCompareAsSanitizerGuard = ConstCompareAsSanitizerGuard; + + /** + * A sanitizer defined via models-as-data with kind "html-injection" or "js-injection". + */ + class SanitizerFromModel extends Sanitizer { + SanitizerFromModel() { ModelOutput::barrierNode(this, ["html-injection", "js-injection"]) } + } } diff --git a/python/ql/lib/semmle/python/security/dataflow/SqlInjectionCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/SqlInjectionCustomizations.qll index 4118732e8dae..ee6f17b03d2c 100644 --- a/python/ql/lib/semmle/python/security/dataflow/SqlInjectionCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/SqlInjectionCustomizations.qll @@ -69,4 +69,11 @@ module SqlInjection { private class DataAsSqlSink extends Sink { DataAsSqlSink() { ModelOutput::sinkNode(this, "sql-injection") } } + + /** + * A sanitizer defined via models-as-data with kind "sql-injection". + */ + class SanitizerFromModel extends Sanitizer { + SanitizerFromModel() { ModelOutput::barrierNode(this, "sql-injection") } + } } diff --git a/python/ql/lib/semmle/python/security/dataflow/UnsafeDeserializationCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/UnsafeDeserializationCustomizations.qll index 074677ee1dc2..17450bb82d96 100644 --- a/python/ql/lib/semmle/python/security/dataflow/UnsafeDeserializationCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/UnsafeDeserializationCustomizations.qll @@ -65,4 +65,11 @@ module UnsafeDeserialization { /** DEPRECATED: Use ConstCompareAsSanitizerGuard instead. */ deprecated class StringConstCompareAsSanitizerGuard = ConstCompareAsSanitizerGuard; + + /** + * A sanitizer defined via models-as-data with kind "unsafe-deserialization". + */ + class SanitizerFromModel extends Sanitizer { + SanitizerFromModel() { ModelOutput::barrierNode(this, "unsafe-deserialization") } + } } diff --git a/python/ql/src/Security/CWE-798/HardcodedCredentials.ql b/python/ql/src/Security/CWE-798/HardcodedCredentials.ql index 97b1f2fba1c9..1e7b4452a9a6 100644 --- a/python/ql/src/Security/CWE-798/HardcodedCredentials.ql +++ b/python/ql/src/Security/CWE-798/HardcodedCredentials.ql @@ -105,6 +105,15 @@ class CredentialSink extends DataFlow::Node { } } +class CredentialSanitizer extends DataFlow::Node { + CredentialSanitizer() { + exists(string s | s.matches("credentials-%") | + // Whatever the string, this will sanitize flow to all credential sinks. + ModelOutput::barrierNode(this, s) + ) + } +} + /** * Gets a regular expression for matching names of locations (variables, parameters, keys) that * indicate the value being held is a credential. @@ -120,6 +129,8 @@ private module HardcodedCredentialsConfig implements DataFlow::ConfigSig { predicate isSink(DataFlow::Node sink) { sink instanceof CredentialSink } + predicate isBarrier(DataFlow::Node node) { node instanceof CredentialSanitizer } + predicate observeDiffInformedIncrementalMode() { any() } } From b4cb2c3f132c33d5adf2143bc885defb079eafce Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 29 Jan 2026 12:05:18 +0000 Subject: [PATCH 238/433] Make qldoc slightly more specific --- .../python/security/dataflow/UrlRedirectCustomizations.qll | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll index 28e18552bfcc..75a638fc3a42 100644 --- a/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/UrlRedirectCustomizations.qll @@ -162,7 +162,8 @@ module UrlRedirect { deprecated class StringConstCompareAsSanitizerGuard = ConstCompareAsSanitizerGuard; /** - * A sanitizer defined via models-as-data with kind "url-redirection". + * A sanitizer which sanitizes all flow states, defined via models-as-data + * with kind "url-redirection". */ class SanitizerFromModel extends Sanitizer { SanitizerFromModel() { ModelOutput::barrierNode(this, "url-redirection") } From a3885cd8b281381ce07cc98dd9eeb22cecf2d909 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 30 Jan 2026 09:27:38 +0000 Subject: [PATCH 239/433] Replace sanitizer by exclusion from sink definition --- python/ql/lib/semmle/python/Concepts.qll | 12 ++++++++++ .../ql/lib/semmle/python/frameworks/Flask.qll | 22 +++++-------------- .../dataflow/PathInjectionCustomizations.qll | 1 + 3 files changed, 19 insertions(+), 16 deletions(-) diff --git a/python/ql/lib/semmle/python/Concepts.qll b/python/ql/lib/semmle/python/Concepts.qll index 0ca8a4dbef01..7c90ff98dc0e 100644 --- a/python/ql/lib/semmle/python/Concepts.qll +++ b/python/ql/lib/semmle/python/Concepts.qll @@ -116,6 +116,12 @@ module SystemCommandExecution { class FileSystemAccess extends DataFlow::Node instanceof FileSystemAccess::Range { /** Gets an argument to this file system access that is interpreted as a path. */ DataFlow::Node getAPathArgument() { result = super.getAPathArgument() } + + /** + * Gets an argument to this file system access that is interpreted as a path, + * but which is not vulnerable to path injection. + */ + DataFlow::Node getASafePathArgument() { result = super.getASafePathArgument() } } /** Provides a class for modeling new file system access APIs. */ @@ -130,6 +136,12 @@ module FileSystemAccess { abstract class Range extends DataFlow::Node { /** Gets an argument to this file system access that is interpreted as a path. */ abstract DataFlow::Node getAPathArgument(); + + /** + * Gets an argument to this file system access that is interpreted as a path, + * but which is not vulnerable to path injection. + */ + DataFlow::Node getASafePathArgument() { none() } } } diff --git a/python/ql/lib/semmle/python/frameworks/Flask.qll b/python/ql/lib/semmle/python/frameworks/Flask.qll index 8ac9f3deab31..eaafdf8ea23b 100644 --- a/python/ql/lib/semmle/python/frameworks/Flask.qll +++ b/python/ql/lib/semmle/python/frameworks/Flask.qll @@ -621,24 +621,14 @@ module Flask { } override DataFlow::Node getAPathArgument() { - result in [ - this.getArg(0), this.getArgByName("directory"), - // as described in the docs, the `filename` argument is restrained to be within - // the provided directory, so is not exposed to path-injection. (but is still a - // path-argument). - this.getArg(1), this.getArgByName("filename") - ] + result = this.getArg([0, 1]) or + result = this.getArgByName(["directory", "filename"]) } - } - /** - * To exclude `filename` argument to `flask.send_from_directory` as a path-injection sink. - */ - private class FlaskSendFromDirectoryCallFilenameSanitizer extends PathInjection::Sanitizer { - FlaskSendFromDirectoryCallFilenameSanitizer() { - this = any(FlaskSendFromDirectoryCall c).getArg(1) - or - this = any(FlaskSendFromDirectoryCall c).getArgByName("filename") + override DataFlow::Node getASafePathArgument() { + // as described in the docs, the `filename` argument is restrained to be within + // the provided directory, so is not exposed to path-injection. + result in [this.getArg(1), this.getArgByName("filename")] } } diff --git a/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll index 269026b591bc..10903fe0c513 100644 --- a/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll @@ -58,6 +58,7 @@ module PathInjection { class FileSystemAccessAsSink extends Sink { FileSystemAccessAsSink() { this = any(FileSystemAccess e).getAPathArgument() and + not this = any(FileSystemAccess e).getASafePathArgument() and // since implementation of Path.open in pathlib.py is like // ```py // def open(self, ...): From 5ba3b679dd48e4b3a8eac371a170702bc739ff3c Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Fri, 30 Jan 2026 12:18:56 +0000 Subject: [PATCH 240/433] Move into if statement --- .../NugetPackageRestorer.cs | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs index 923e380b7779..4fce6f3eb65d 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs @@ -849,6 +849,17 @@ private IEnumerable GetFeeds(Func> getNugetFeeds) .Where(folder => folder != null) .SelectMany(folder => GetFeeds(() => dotnet.GetNugetFeedsFromFolder(folder!))) .ToHashSet(); + + // If we have discovered any explicit feeds, then we also expect these to be in the set of all feeds. + // Normally, it is a safe assumption to make that `GetNugetFeedsFromFolder` will include the feeds configured + // in a NuGet configuration file in the given directory. There is one exception: on a system with case-sensitive + // file systems, we may discover a configuration file such as `Nuget.Config` which is not recognised by `dotnet nuget`. + // In that case, our call to `GetNugetFeeds` will retrieve the feeds from that file (because it is accepted when + // provided explicitly as `--configfile` argument), but the call to `GetNugetFeedsFromFolder` will not. + if (explicitFeeds.Count > 0) + { + allFeeds.UnionWith(explicitFeeds); + } } else { @@ -856,17 +867,6 @@ private IEnumerable GetFeeds(Func> getNugetFeeds) allFeeds = GetFeeds(() => dotnet.GetNugetFeedsFromFolder(this.fileProvider.SourceDir.FullName)).ToHashSet(); } - // If we have discovered any explicit feeds, then we also expect these to be in the set of all feeds. - // Normally, it is a safe assumption to make that `GetNugetFeedsFromFolder` will include the feeds configured - // in a NuGet configuration file in the given directory. There is one exception: on a system with case-sensitive - // file systems, we may discover a configuration file such as `Nuget.Config` which is not recognised by `dotnet nuget`. - // In that case, our call to `GetNugetFeeds` will retrieve the feeds from that file (because it is accepted when - // provided explicitly as `--configfile` argument), but the call to `GetNugetFeedsFromFolder` will not. - if (explicitFeeds.Count > 0) - { - allFeeds.UnionWith(explicitFeeds); - } - logger.LogInfo($"Found {allFeeds.Count} NuGet feeds (with inherited ones) in nuget.config files: {string.Join(", ", allFeeds.OrderBy(f => f))}"); return (explicitFeeds, allFeeds); From 5f079c1d51fc64a659f16615e4e117e59fb82089 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Fri, 30 Jan 2026 12:19:28 +0000 Subject: [PATCH 241/433] C++: Add change note. --- .../2026-01-30-guard-condition-logical-operators.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/lib/change-notes/2026-01-30-guard-condition-logical-operators.md diff --git a/cpp/ql/lib/change-notes/2026-01-30-guard-condition-logical-operators.md b/cpp/ql/lib/change-notes/2026-01-30-guard-condition-logical-operators.md new file mode 100644 index 000000000000..646d9b3821f6 --- /dev/null +++ b/cpp/ql/lib/change-notes/2026-01-30-guard-condition-logical-operators.md @@ -0,0 +1,4 @@ +--- +category: fix +--- +* Fixed a bug in the `GuardCondition` library which sometimes prevented binary logical operators from being recognized as guard conditions. As a result, queries using `GuardCondition` may see improved results. \ No newline at end of file From 4543c66d26ba2cd7df87869abfe32f45bd3ecbe4 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 9 Jan 2026 13:49:17 +0000 Subject: [PATCH 242/433] Python: Prepare `LocalSourceNode` for locality Removes the dependence on the (global) `ModuleVariableNode.getARead()`, by adding a local version (that doesn't include `import *` reads) instead. --- .../python/dataflow/new/internal/DataFlowPublic.qll | 10 +++++++--- .../python/dataflow/new/internal/LocalSources.qll | 4 ++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll index 4d112bcdcddd..10ac89b023d8 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll @@ -440,13 +440,17 @@ class ModuleVariableNode extends Node, TModuleVariableNode { /** Gets a node that reads this variable. */ Node getARead() { - result.asCfgNode() = var.getALoad().getAFlowNode() and - // Ignore reads that happen when the module is imported. These are only executed once. - not result.getScope() = mod + result = this.getALocalRead() or this = import_star_read(result) } + /** Gets a node that reads this variable, excluding reads that happen through `from ... import *`. */ + Node getALocalRead() { + result.asCfgNode() = var.getALoad().getAFlowNode() and + not result.getScope() = mod + } + /** Gets an `EssaNode` that corresponds to an assignment of this global variable. */ Node getAWrite() { any(EssaNodeDefinition def).definedBy(var, result.asCfgNode().(DefinitionNode)) diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/LocalSources.qll b/python/ql/lib/semmle/python/dataflow/new/internal/LocalSources.qll index c43a111c9c8b..7752846ae1ff 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/LocalSources.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/LocalSources.qll @@ -67,7 +67,7 @@ class LocalSourceNode extends Node { or // We explicitly include any read of a global variable, as some of these may have local flow going // into them. - this = any(ModuleVariableNode mvn).getARead() + this = any(ModuleVariableNode v).getALocalRead() or // We include all scope entry definitions, as these act as the local source within the scope they // enter. @@ -248,7 +248,7 @@ private module Cached { pragma[nomagic] private predicate localSourceFlowStep(Node nodeFrom, Node nodeTo) { simpleLocalFlowStep(nodeFrom, nodeTo, _) and - not nodeTo = any(ModuleVariableNode v).getARead() + not nodeTo = any(ModuleVariableNode v).getALocalRead() } /** From 30ce4069c7f57a158f9cd4fa0a1e3f35906538b2 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 9 Jan 2026 17:01:11 +0000 Subject: [PATCH 243/433] Python: Remove global restriction on `ModuleVariableNode` This may result in more nodes, but it should still be bounded by the number of global variables in the source code. --- .../python/dataflow/new/internal/DataFlowPublic.qll | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll index 10ac89b023d8..0f508898c5aa 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll @@ -76,15 +76,7 @@ newtype TNode = node.getNode() = any(Comp c).getIterable() } or /** A node representing a global (module-level) variable in a specific module. */ - TModuleVariableNode(Module m, GlobalVariable v) { - v.getScope() = m and - ( - v.escapes() - or - isAccessedThroughImportStar(m) and - ImportStar::globalNameDefinedInModule(v.getId(), m) - ) - } or + TModuleVariableNode(Module m, GlobalVariable v) { v.getScope() = m } or /** * A synthetic node representing that an iterable sequence flows to consumer. */ @@ -470,8 +462,6 @@ class ModuleVariableNode extends Node, TModuleVariableNode { override Location getLocation() { result = mod.getLocation() } } -private predicate isAccessedThroughImportStar(Module m) { m = ImportStar::getStarImported(_) } - private ModuleVariableNode import_star_read(Node n) { resolved_import_star_module(result.getModule(), result.getVariable().getId(), n) } From ac5a74448fd8a6191d1c01060787eb70b7ce6e3f Mon Sep 17 00:00:00 2001 From: Taus Date: Mon, 12 Jan 2026 15:04:14 +0000 Subject: [PATCH 244/433] Python: Fix tests With `ModuleVariableNode`s now appearing for _all_ global variables (not just the ones that actually seem to be used), some of the tests changed a bit. Mostly this was in the form of new flow (because of new nodes that popped into existence). For some inline expectation tests, I opted to instead exclude these results, as there was no suitable location to annotate. For the normal tests, I just accepted the output (after having vetted it carefully, of course). --- .../utils/test/dataflow/MaximalFlowTest.qll | 4 ++- .../experimental/attrs/AttrWrites.expected | 1 + .../dataflow/basic/global.expected | 15 +++++++++++ .../dataflow/basic/globalStep.expected | 4 +++ .../dataflow/basic/local.expected | 5 ++++ .../dataflow/basic/maximalFlows.expected | 5 ++++ .../dataflow/basic/sinks.expected | 5 ++++ .../dataflow/basic/sources.expected | 5 ++++ .../dataflow/global-flow/test.py | 26 +++++++++---------- .../dataflow/typetracking/moduleattr.expected | 1 + .../PoorMansFunctionResolutionTest.ql | 4 ++- 11 files changed, 60 insertions(+), 15 deletions(-) diff --git a/python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll b/python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll index 7587584a269b..5e9831906a4a 100644 --- a/python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll +++ b/python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll @@ -8,7 +8,9 @@ module MaximalFlowTest implements FlowTestSig { predicate relevantFlow(DataFlow::Node source, DataFlow::Node sink) { source != sink and - MaximalFlows::flow(source, sink) + MaximalFlows::flow(source, sink) and + // exclude ModuleVariableNodes (which have location 0:0:0:0) + not sink instanceof DataFlow::ModuleVariableNode } } diff --git a/python/ql/test/experimental/attrs/AttrWrites.expected b/python/ql/test/experimental/attrs/AttrWrites.expected index f8a55824043f..d1fc30b34515 100644 --- a/python/ql/test/experimental/attrs/AttrWrites.expected +++ b/python/ql/test/experimental/attrs/AttrWrites.expected @@ -1,4 +1,5 @@ | test.py:5:9:5:16 | ControlFlowNode for __init__ | test.py:4:1:4:20 | ControlFlowNode for ClassExpr | __init__ | test.py:5:5:5:28 | ControlFlowNode for FunctionExpr | | test.py:6:9:6:16 | ControlFlowNode for Attribute | test.py:6:9:6:12 | ControlFlowNode for self | foo | test.py:6:20:6:22 | ControlFlowNode for foo | +| test.py:9:1:9:9 | ControlFlowNode for Attribute | test.py:0:0:0:0 | ModuleVariableNode in Module test for myobj | foo | test.py:9:13:9:17 | ControlFlowNode for StringLiteral | | test.py:9:1:9:9 | ControlFlowNode for Attribute | test.py:9:1:9:5 | ControlFlowNode for myobj | foo | test.py:9:13:9:17 | ControlFlowNode for StringLiteral | | test.py:12:1:12:25 | ControlFlowNode for setattr() | test.py:12:9:12:13 | ControlFlowNode for myobj | foo | test.py:12:23:12:24 | ControlFlowNode for IntegerLiteral | diff --git a/python/ql/test/library-tests/dataflow/basic/global.expected b/python/ql/test/library-tests/dataflow/basic/global.expected index 7d2c0cab9b92..9e0ef2e6751b 100644 --- a/python/ql/test/library-tests/dataflow/basic/global.expected +++ b/python/ql/test/library-tests/dataflow/basic/global.expected @@ -1,6 +1,9 @@ +| test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | +| test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | +| test.py:1:19:1:19 | ControlFlowNode for x | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:2:3:2:3 | ControlFlowNode for y | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:2:7:2:7 | ControlFlowNode for x | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:3:3:3:3 | ControlFlowNode for z | @@ -8,26 +11,33 @@ | test.py:1:19:1:19 | ControlFlowNode for x | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:2:3:2:3 | ControlFlowNode for y | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:2:3:2:3 | ControlFlowNode for y | test.py:3:3:3:3 | ControlFlowNode for z | | test.py:2:3:2:3 | ControlFlowNode for y | test.py:3:7:3:7 | ControlFlowNode for y | | test.py:2:3:2:3 | ControlFlowNode for y | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:2:3:2:3 | ControlFlowNode for y | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:2:3:2:3 | ControlFlowNode for y | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:2:7:2:7 | ControlFlowNode for x | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:2:7:2:7 | ControlFlowNode for x | test.py:2:3:2:3 | ControlFlowNode for y | | test.py:2:7:2:7 | ControlFlowNode for x | test.py:3:3:3:3 | ControlFlowNode for z | | test.py:2:7:2:7 | ControlFlowNode for x | test.py:3:7:3:7 | ControlFlowNode for y | | test.py:2:7:2:7 | ControlFlowNode for x | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:2:7:2:7 | ControlFlowNode for x | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:2:7:2:7 | ControlFlowNode for x | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:3:3:3:3 | ControlFlowNode for z | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:3:3:3:3 | ControlFlowNode for z | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:3:3:3:3 | ControlFlowNode for z | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:3:3:3:3 | ControlFlowNode for z | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:3:7:3:7 | ControlFlowNode for y | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:3:7:3:7 | ControlFlowNode for y | test.py:3:3:3:3 | ControlFlowNode for z | | test.py:3:7:3:7 | ControlFlowNode for y | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:3:7:3:7 | ControlFlowNode for y | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:3:7:3:7 | ControlFlowNode for y | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:4:10:4:10 | ControlFlowNode for z | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:4:10:4:10 | ControlFlowNode for z | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:4:10:4:10 | ControlFlowNode for z | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:6:1:6:1 | ControlFlowNode for a | test.py:0:0:0:0 | ModuleVariableNode in Module test for a | +| test.py:6:1:6:1 | ControlFlowNode for a | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:1:19:1:19 | ControlFlowNode for x | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:2:3:2:3 | ControlFlowNode for y | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:2:7:2:7 | ControlFlowNode for x | @@ -37,6 +47,8 @@ | test.py:6:1:6:1 | ControlFlowNode for a | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:7:19:7:19 | ControlFlowNode for a | +| test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:0:0:0:0 | ModuleVariableNode in Module test for a | +| test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:1:19:1:19 | ControlFlowNode for x | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:2:3:2:3 | ControlFlowNode for y | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:2:7:2:7 | ControlFlowNode for x | @@ -47,7 +59,10 @@ | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:7:19:7:19 | ControlFlowNode for a | +| test.py:7:1:7:1 | ControlFlowNode for b | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | +| test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:7:1:7:1 | ControlFlowNode for b | +| test.py:7:19:7:19 | ControlFlowNode for a | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:7:19:7:19 | ControlFlowNode for a | test.py:1:19:1:19 | ControlFlowNode for x | | test.py:7:19:7:19 | ControlFlowNode for a | test.py:2:3:2:3 | ControlFlowNode for y | | test.py:7:19:7:19 | ControlFlowNode for a | test.py:2:7:2:7 | ControlFlowNode for x | diff --git a/python/ql/test/library-tests/dataflow/basic/globalStep.expected b/python/ql/test/library-tests/dataflow/basic/globalStep.expected index 00ee53dba003..26d8902e7bbe 100644 --- a/python/ql/test/library-tests/dataflow/basic/globalStep.expected +++ b/python/ql/test/library-tests/dataflow/basic/globalStep.expected @@ -1,5 +1,6 @@ | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | +| test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:2:3:2:3 | ControlFlowNode for y | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:2:3:2:3 | ControlFlowNode for y | @@ -31,10 +32,13 @@ | test.py:3:7:3:7 | ControlFlowNode for y | test.py:3:3:3:3 | ControlFlowNode for z | | test.py:4:10:4:10 | ControlFlowNode for z | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | | test.py:4:10:4:10 | ControlFlowNode for z | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | +| test.py:6:1:6:1 | ControlFlowNode for a | test.py:0:0:0:0 | ModuleVariableNode in Module test for a | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:7:19:7:19 | ControlFlowNode for a | | test.py:6:1:6:1 | ControlFlowNode for a | test.py:7:19:7:19 | ControlFlowNode for a | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:6:1:6:1 | ControlFlowNode for a | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:6:1:6:1 | ControlFlowNode for a | +| test.py:7:1:7:1 | ControlFlowNode for b | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | +| test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:7:19:7:19 | ControlFlowNode for a | test.py:1:19:1:19 | ControlFlowNode for x | | test.py:7:19:7:19 | ControlFlowNode for a | test.py:1:19:1:19 | ControlFlowNode for x | diff --git a/python/ql/test/library-tests/dataflow/basic/local.expected b/python/ql/test/library-tests/dataflow/basic/local.expected index 142c84015aeb..eb47f1308d42 100644 --- a/python/ql/test/library-tests/dataflow/basic/local.expected +++ b/python/ql/test/library-tests/dataflow/basic/local.expected @@ -1,3 +1,8 @@ +| test.py:0:0:0:0 | ModuleVariableNode in Module test for __name__ | test.py:0:0:0:0 | ModuleVariableNode in Module test for __name__ | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for __package__ | test.py:0:0:0:0 | ModuleVariableNode in Module test for __package__ | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for a | test.py:0:0:0:0 | ModuleVariableNode in Module test for a | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for b | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | diff --git a/python/ql/test/library-tests/dataflow/basic/maximalFlows.expected b/python/ql/test/library-tests/dataflow/basic/maximalFlows.expected index a9fa5d8da920..421918620455 100644 --- a/python/ql/test/library-tests/dataflow/basic/maximalFlows.expected +++ b/python/ql/test/library-tests/dataflow/basic/maximalFlows.expected @@ -1,7 +1,12 @@ +| test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | +| test.py:1:19:1:19 | ControlFlowNode for x | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:1:19:1:19 | ControlFlowNode for x | test.py:7:1:7:1 | ControlFlowNode for b | +| test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:0:0:0:0 | ModuleVariableNode in Module test for a | +| test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:4:10:4:10 | ControlFlowNode for z | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:7:19:7:19 | ControlFlowNode for a | +| test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:0:0:0:0 | ModuleVariableNode in Module test for b | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:7:1:7:1 | ControlFlowNode for b | diff --git a/python/ql/test/library-tests/dataflow/basic/sinks.expected b/python/ql/test/library-tests/dataflow/basic/sinks.expected index bf5800e0b73f..34525d5043e1 100644 --- a/python/ql/test/library-tests/dataflow/basic/sinks.expected +++ b/python/ql/test/library-tests/dataflow/basic/sinks.expected @@ -1,3 +1,8 @@ +| test.py:0:0:0:0 | ModuleVariableNode in Module test for __name__ | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for __package__ | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for a | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for b | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | | test.py:1:1:1:21 | SynthDictSplatParameterNode | | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | diff --git a/python/ql/test/library-tests/dataflow/basic/sources.expected b/python/ql/test/library-tests/dataflow/basic/sources.expected index bf5800e0b73f..34525d5043e1 100644 --- a/python/ql/test/library-tests/dataflow/basic/sources.expected +++ b/python/ql/test/library-tests/dataflow/basic/sources.expected @@ -1,3 +1,8 @@ +| test.py:0:0:0:0 | ModuleVariableNode in Module test for __name__ | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for __package__ | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for a | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for b | +| test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id | | test.py:1:1:1:21 | ControlFlowNode for FunctionExpr | | test.py:1:1:1:21 | SynthDictSplatParameterNode | | test.py:1:5:1:17 | ControlFlowNode for obfuscated_id | diff --git a/python/ql/test/library-tests/dataflow/global-flow/test.py b/python/ql/test/library-tests/dataflow/global-flow/test.py index ab2da1c2959d..0b62e47c71fb 100644 --- a/python/ql/test/library-tests/dataflow/global-flow/test.py +++ b/python/ql/test/library-tests/dataflow/global-flow/test.py @@ -8,9 +8,9 @@ g1, g2 = [6], [7] # $writes=g1 writes=g2 -# Assignment that's only referenced in this scope. This one will not give rise to a `ModuleVariableNode`. +# Assignment that's only referenced in this scope. -unreferenced_g = [8] +unreferenced_g = [8] # $writes=unreferenced_g print(unreferenced_g) # Testing modifications of globals @@ -34,7 +34,7 @@ # A global with multiple potential definitions -import unknown_module +import unknown_module # $writes=unknown_module if unknown_module.attr: g_mult = [200] # $writes=g_mult else: @@ -46,7 +46,7 @@ if unknown_module.attr: g_redef = [500] # $writes=g_redef -def global_access(): +def global_access(): # $writes=global_access l = 5 print(g) # $reads=g print(g1) # $reads=g1 @@ -59,12 +59,12 @@ def global_access(): def print_g_mod(): # $writes=print_g_mod print(g_mod) # $reads=g_mod -def global_mod(): +def global_mod(): # $writes=global_mod global g_mod g_mod += [150] # $reads,writes=g_mod print_g_mod() # $reads=print_g_mod -def global_inside_local_function(): +def global_inside_local_function(): # $writes=global_inside_local_function def local_function(): print(g) # $reads=g local_function() @@ -76,21 +76,21 @@ def local_function(): import foo_module # $writes=foo_module -def use_foo(): +def use_foo(): # $writes=use_foo print(foo_module.attr) # $reads=foo_module # Partial imports from bar import baz_attr, quux_attr # $writes=baz_attr writes=quux_attr -def use_partial_import(): +def use_partial_import(): # $writes=use_partial_import print(baz_attr, quux_attr) # $reads=baz_attr reads=quux_attr # Aliased imports from spam_module import ham_attr as eggs_attr # $writes=eggs_attr -def use_aliased_import(): +def use_aliased_import(): # $writes=use_aliased_import print(eggs_attr) # $reads=eggs_attr # Import star (unlikely to work unless we happen to extract/model the referenced module) @@ -99,23 +99,23 @@ def use_aliased_import(): from unknown import * -def secretly_use_unknown(): +def secretly_use_unknown(): # $writes=secretly_use_unknown print(unknown_attr) # $reads=unknown_attr # Known modules from known import * -def secretly_use_known(): +def secretly_use_known(): # $writes=secretly_use_known print(known_attr) # $reads=known_attr # Local import in function -def imports_locally(): +def imports_locally(): # $writes=imports_locally import mod1 # Global import hidden in function -def imports_stuff(): +def imports_stuff(): # $writes=imports_stuff global mod2 import mod2 # $writes=mod2 diff --git a/python/ql/test/library-tests/dataflow/typetracking/moduleattr.expected b/python/ql/test/library-tests/dataflow/typetracking/moduleattr.expected index ff9673aaaea8..06b560623929 100644 --- a/python/ql/test/library-tests/dataflow/typetracking/moduleattr.expected +++ b/python/ql/test/library-tests/dataflow/typetracking/moduleattr.expected @@ -2,6 +2,7 @@ module_tracker | import_as_attr.py:1:6:1:11 | ControlFlowNode for ImportExpr | module_attr_tracker | import_as_attr.py:0:0:0:0 | ModuleVariableNode in Module import_as_attr for attr_ref | +| import_as_attr.py:0:0:0:0 | ModuleVariableNode in Module import_as_attr for x | | import_as_attr.py:1:20:1:35 | ControlFlowNode for ImportMember | | import_as_attr.py:1:28:1:35 | ControlFlowNode for attr_ref | | import_as_attr.py:3:1:3:1 | ControlFlowNode for x | diff --git a/python/ql/test/library-tests/frameworks/internal-ql-helpers/PoorMansFunctionResolutionTest.ql b/python/ql/test/library-tests/frameworks/internal-ql-helpers/PoorMansFunctionResolutionTest.ql index b0325b027c3a..b9575e43493e 100644 --- a/python/ql/test/library-tests/frameworks/internal-ql-helpers/PoorMansFunctionResolutionTest.ql +++ b/python/ql/test/library-tests/frameworks/internal-ql-helpers/PoorMansFunctionResolutionTest.ql @@ -17,7 +17,9 @@ module InlinePoorMansFunctionResolutionTest implements TestSig { ) and // exclude decorator calls (which with our extractor rewrites does reference the // function) - not ref.asExpr() = func.getDefinition().(FunctionExpr).getADecoratorCall() + not ref.asExpr() = func.getDefinition().(FunctionExpr).getADecoratorCall() and + // exclude ModuleVariableNodes (which have location 0:0:0:0) + not ref instanceof DataFlow::ModuleVariableNode | value = func.getName() and tag = "resolved" and From 7fccc23dbef3d37b398534c5727d37bc2c5ebd28 Mon Sep 17 00:00:00 2001 From: Taus Date: Mon, 26 Jan 2026 13:28:35 +0000 Subject: [PATCH 245/433] Python: Make `ExtractedArgumentNode` local Explicitly adds a bunch of nodes that were previously (using a global analysis) identified as `ExtractedArgumentNode`s. These are then subsequently filtered out in `argumentOf` (which is global) by putting the call to `getCallArg` there instead of in the charpred. --- .../dataflow/new/internal/DataFlowPublic.qll | 46 ++++++++++++++----- 1 file changed, 35 insertions(+), 11 deletions(-) diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll index 0f508898c5aa..d14cac5a4cd8 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll @@ -339,27 +339,51 @@ abstract class ArgumentNode extends Node { final ExtractedDataFlowCall getCall() { this.argumentOf(result, _) } } +/** Gets an overapproximation of the argument nodes that are included in `getCallArg`. */ +Node getCallArgApproximation() { + // pre-update nodes for calls + result = any(CallCfgNode c).(PostUpdateNode).getPreUpdateNode() + or + // self parameters in methods + exists(Class c | result.asExpr() = c.getAMethod().getArg(0)) + or + // the object part of an attribute expression (which might be a bound method) + result.asCfgNode() = any(AttrNode a).getObject() + or + // the function part of any call + result.asCfgNode() = any(CallNode c).getFunction() +} + +/** Gets the extracted argument nodes that do not rely on `getCallArg`. */ +private Node otherArgs() { + // for potential summaries we allow all normal call arguments + normalCallArg(_, result, _) + or + // and self arguments + result.asCfgNode() = any(CallNode c).getFunction().(AttrNode).getObject() + or + // for comprehensions, we allow the synthetic `iterable` argument + result.asExpr() = any(Comp c).getIterable() +} + /** * A data flow node that represents a call argument found in the source code. */ class ExtractedArgumentNode extends ArgumentNode { ExtractedArgumentNode() { - // for resolved calls, we need to allow all argument nodes - getCallArg(_, _, _, this, _) - or - // for potential summaries we allow all normal call arguments - normalCallArg(_, this, _) + this = getCallArgApproximation() or - // and self arguments - this.asCfgNode() = any(CallNode c).getFunction().(AttrNode).getObject() - or - // for comprehensions, we allow the synthetic `iterable` argument - this.asExpr() = any(Comp c).getIterable() + this = otherArgs() } final override predicate argumentOf(DataFlowCall call, ArgumentPosition pos) { this = call.getArgument(pos) and - call instanceof ExtractedDataFlowCall + call instanceof ExtractedDataFlowCall and + ( + this = otherArgs() + or + this = getCallArgApproximation() and getCallArg(_, _, _, this, _) + ) } } From 6113d4be9e6a3711e4afdcdc22e27cb0afb56da6 Mon Sep 17 00:00:00 2001 From: Taus Date: Mon, 26 Jan 2026 15:38:25 +0000 Subject: [PATCH 246/433] Python: Fix test issues Fixes the test failures that arose from making `ExtractedArgumentNode` local. For the consistency checks, we now explicitly exclude the `ExtractedArgumentNode`s (now much more plentiful due to the overapproximation) that don't have a corresponding `getCallArg` tuple. For various queries/tests using `instanceof ArgumentNode`, we instead us `isArgumentNode`, which explicitly filters out the ones for which `isArgumentOf` doesn't hold (which, again, is the case for most of the nodes in the overapproximation). --- python/ql/consistency-queries/DataFlowConsistency.ql | 10 ++++++++++ python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll | 2 +- python/ql/lib/utils/test/dataflow/callGraphConfig.qll | 2 +- .../InitCallsSubclass/InitCallsSubclassMethod.ql | 3 ++- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/python/ql/consistency-queries/DataFlowConsistency.ql b/python/ql/consistency-queries/DataFlowConsistency.ql index 759db3d19a9c..62bbb3062c29 100644 --- a/python/ql/consistency-queries/DataFlowConsistency.ql +++ b/python/ql/consistency-queries/DataFlowConsistency.ql @@ -26,6 +26,8 @@ private module Input implements InputSig { or // TODO: Implement post-updates for **kwargs, see tests added in https://github.com/github/codeql/pull/14936 exists(ArgumentPosition apos | n.argumentOf(_, apos) and apos.isDictSplat()) + or + missingArgumentCallExclude(n) } predicate reverseReadExclude(Node n) { @@ -134,6 +136,14 @@ private module Input implements InputSig { other.getNode().getScope() = f ) } + + predicate missingArgumentCallExclude(ArgumentNode arg) { + // We overapproximate the argument nodes in order to not rely on the global `getCallArg` + // predicate. + // Because of this, we must exclude the cases where we have an approximation but no actual + // argument node. + arg = getCallArgApproximation() and not getCallArg(_, _, _, arg, _) + } } import MakeConsistency diff --git a/python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll b/python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll index 5e9831906a4a..cbd3b4c6aa51 100644 --- a/python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll +++ b/python/ql/lib/utils/test/dataflow/MaximalFlowTest.qll @@ -35,7 +35,7 @@ module MaximalFlowsConfig implements DataFlow::ConfigSig { predicate isSink(DataFlow::Node node) { exists(node.getLocation().getFile().getRelativePath()) and not any(CallNode c).getArg(_) = node.asCfgNode() and - not node instanceof DataFlow::ArgumentNode and + not isArgumentNode(node, _, _) and not node.asCfgNode().(NameNode).getId().matches("SINK%") and not DataFlow::localFlowStep(node, _) } diff --git a/python/ql/lib/utils/test/dataflow/callGraphConfig.qll b/python/ql/lib/utils/test/dataflow/callGraphConfig.qll index 8528396a12f2..85ecb9b701db 100644 --- a/python/ql/lib/utils/test/dataflow/callGraphConfig.qll +++ b/python/ql/lib/utils/test/dataflow/callGraphConfig.qll @@ -9,7 +9,7 @@ module CallGraphConfig implements DataFlow::ConfigSig { predicate isSource(DataFlow::Node node) { node instanceof DataFlowPrivate::ReturnNode or - node instanceof DataFlow::ArgumentNode + DataFlowPrivate::isArgumentNode(node, _, _) } predicate isSink(DataFlow::Node node) { diff --git a/python/ql/src/Classes/InitCallsSubclass/InitCallsSubclassMethod.ql b/python/ql/src/Classes/InitCallsSubclass/InitCallsSubclassMethod.ql index 32eb5ffe79e5..4c1b3247d96f 100644 --- a/python/ql/src/Classes/InitCallsSubclass/InitCallsSubclassMethod.ql +++ b/python/ql/src/Classes/InitCallsSubclass/InitCallsSubclassMethod.ql @@ -15,6 +15,7 @@ import python import semmle.python.dataflow.new.DataFlow import semmle.python.dataflow.new.internal.DataFlowDispatch +import semmle.python.dataflow.new.internal.DataFlowPrivate predicate initSelfCallOverridden( Function init, DataFlow::Node self, DataFlow::MethodCallNode call, Function target, @@ -39,7 +40,7 @@ predicate readsFromSelf(Function method) { self.getParameter() = method.getArg(0) and DataFlow::localFlow(self, sink) | - sink instanceof DataFlow::ArgumentNode + isArgumentNode(sink, _, _) or sink = any(DataFlow::AttrRead a).getObject() ) From 3f718123a687bf43d6bdc1c108a23e30f5503548 Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 29 Jan 2026 16:09:43 +0000 Subject: [PATCH 247/433] Python: Make capturing closure arguments synthetic and non-global Uses the same trick as for `ExtractedArgumentNode`, wherein we postpone the global restriction on the charpred to instead be in the `argumentOf` predicate (which is global anyway). In addition to this, we also converted `CapturedVariablesArgumentNode` into a proper synthetic node, and added an explicit post-update node for it. These nodes just act as wrappers for the function part of call nodes. Thus, to make them work with the variable capture machinery, we simply map them to the closure node for the corresponding control-flow or post-update node. --- .../new/internal/DataFlowDispatch.qll | 74 ++++++++++++++----- .../dataflow/new/internal/DataFlowPrivate.qll | 8 ++ .../dataflow/new/internal/DataFlowPublic.qll | 14 ++++ .../dataflow/new/internal/VariableCapture.qll | 6 ++ 4 files changed, 82 insertions(+), 20 deletions(-) diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowDispatch.qll b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowDispatch.qll index c717cd7bc97b..b04b83be83ec 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowDispatch.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowDispatch.qll @@ -1714,36 +1714,66 @@ private class SummaryPostUpdateNode extends FlowSummaryNode, PostUpdateNodeImpl * This is also known as the environment part of a closure. * * This is used for tracking flow through captured variables. - * - * TODO: - * We might want a synthetic node here, but currently that incurs problems - * with non-monotonic recursion, because of the use of `resolveCall` in the - * char pred. This may be solvable by using - * `CallGraphConstruction::Make` in stead of - * `CallGraphConstruction::Simple::Make` appropriately. */ -class CapturedVariablesArgumentNode extends CfgNode, ArgumentNode { - CallNode callNode; +class SynthCapturedVariablesArgumentNode extends Node, TSynthCapturedVariablesArgumentNode { + ControlFlowNode callable; - CapturedVariablesArgumentNode() { - node = callNode.getFunction() and - exists(Function target | resolveCall(callNode, target, _) | - target = any(VariableCapture::CapturedVariable v).getACapturingScope() - ) - } + SynthCapturedVariablesArgumentNode() { this = TSynthCapturedVariablesArgumentNode(callable) } + + /** Gets the `CallNode` corresponding to this captured variables argument node. */ + CallNode getCallNode() { result.getFunction() = callable } + + /** Gets the `CfgNode` that corresponds to this synthetic node. */ + CfgNode getUnderlyingNode() { result.asCfgNode() = callable } + + override Scope getScope() { result = callable.getScope() } + + override Location getLocation() { result = callable.getLocation() } override string toString() { result = "Capturing closure argument" } +} +/** A captured variables argument node viewed as an argument node. Needed because `argumentOf` is a global predicate. */ +class CapturedVariablesArgumentNodeAsArgumentNode extends ArgumentNode, + SynthCapturedVariablesArgumentNode +{ override predicate argumentOf(DataFlowCall call, ArgumentPosition pos) { - callNode = call.getNode() and - pos.isLambdaSelf() + exists(CallNode callNode | callNode = this.getCallNode() | + callNode = call.getNode() and + exists(Function target | resolveCall(callNode, target, _) | + target = any(VariableCapture::CapturedVariable v).getACapturingScope() + ) and + pos.isLambdaSelf() + ) } } -/** A synthetic node representing the values of variables captured by a comprehension. */ -class SynthCompCapturedVariablesArgumentNode extends Node, TSynthCompCapturedVariablesArgumentNode, - ArgumentNode +/** A synthetic node representing the values of captured variables after the output has been computed. */ +class SynthCapturedVariablesArgumentPostUpdateNode extends PostUpdateNodeImpl, + TSynthCapturedVariablesArgumentPostUpdateNode { + ControlFlowNode callable; + + SynthCapturedVariablesArgumentPostUpdateNode() { + this = TSynthCapturedVariablesArgumentPostUpdateNode(callable) + } + + /** Gets the `PostUpdateNode` (for a `CfgNode`) that corresponds to this synthetic node. */ + PostUpdateNode getUnderlyingNode() { result.getPreUpdateNode().asCfgNode() = callable } + + override string toString() { result = "[post] Capturing closure argument" } + + override Scope getScope() { result = callable.getScope() } + + override Location getLocation() { result = callable.getLocation() } + + override SynthCapturedVariablesArgumentNode getPreUpdateNode() { + result = TSynthCapturedVariablesArgumentNode(callable) + } +} + +/** A synthetic node representing the values of variables captured by a comprehension. */ +class SynthCompCapturedVariablesArgumentNode extends Node, TSynthCompCapturedVariablesArgumentNode { Comp comp; SynthCompCapturedVariablesArgumentNode() { this = TSynthCompCapturedVariablesArgumentNode(comp) } @@ -1755,7 +1785,11 @@ class SynthCompCapturedVariablesArgumentNode extends Node, TSynthCompCapturedVar override Location getLocation() { result = comp.getLocation() } Comp getComprehension() { result = comp } +} +class SynthCompCapturedVariablesArgumentNodeAsArgumentNode extends SynthCompCapturedVariablesArgumentNode, + ArgumentNode +{ override predicate argumentOf(DataFlowCall call, ArgumentPosition pos) { call.(ComprehensionCall).getComprehension() = comp and pos.isLambdaSelf() diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPrivate.qll b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPrivate.qll index 2322539995b6..9866bd009642 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPrivate.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPrivate.qll @@ -1128,6 +1128,14 @@ predicate nodeIsHidden(Node n) { n instanceof SynthCaptureNode or n instanceof SynthCapturedVariablesParameterNode + or + n instanceof SynthCapturedVariablesArgumentNode + or + n instanceof SynthCapturedVariablesArgumentPostUpdateNode + or + n instanceof SynthCompCapturedVariablesArgumentNode + or + n instanceof SynthCompCapturedVariablesArgumentPostUpdateNode } class LambdaCallKind = Unit; diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll index d14cac5a4cd8..532f7b23e4cf 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll @@ -121,6 +121,20 @@ newtype TNode = f = any(VariableCapture::CapturedVariable v).getACapturingScope() and exists(TFunction(f)) } or + /** + * A synthetic node representing the values of the variables captured + * by the callable being called. + */ + TSynthCapturedVariablesArgumentNode(ControlFlowNode callable) { + callable = any(CallNode c).getFunction() + } or + /** + * A synthetic node representing the values of the variables captured + * by the callable being called, after the output has been computed. + */ + TSynthCapturedVariablesArgumentPostUpdateNode(ControlFlowNode callable) { + callable = any(CallNode c).getFunction() + } or /** A synthetic node representing the values of variables captured by a comprehension. */ TSynthCompCapturedVariablesArgumentNode(Comp comp) { comp.getFunction() = any(VariableCapture::CapturedVariable v).getACapturingScope() diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/VariableCapture.qll b/python/ql/lib/semmle/python/dataflow/new/internal/VariableCapture.qll index a7b3b9ceaebf..5ed365a8e56f 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/VariableCapture.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/VariableCapture.qll @@ -114,6 +114,12 @@ private Flow::ClosureNode asClosureNode(Node n) { result.(Flow::ExprNode).getExpr().getNode() = comp ) or + // For captured variable argument nodes (and their post-update variants), we use the closure node + // for the underlying node. + result = asClosureNode(n.(SynthCapturedVariablesArgumentNode).getUnderlyingNode()) + or + result = asClosureNode(n.(SynthCapturedVariablesArgumentPostUpdateNode).getUnderlyingNode()) + or // TODO: Should the `Comp`s above be excluded here? result.(Flow::ExprNode).getExpr() = n.(CfgNode).getNode() or From fb6175d10b24116a98fbda185b922a41ae426085 Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 29 Jan 2026 17:06:21 +0000 Subject: [PATCH 248/433] Python: Fix consistency test failures As we now have many more capturing closure arguments, we must once again exclude the ones that don't actually have `argumentOf` defined. --- python/ql/consistency-queries/DataFlowConsistency.ql | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/python/ql/consistency-queries/DataFlowConsistency.ql b/python/ql/consistency-queries/DataFlowConsistency.ql index 62bbb3062c29..829aa6debef2 100644 --- a/python/ql/consistency-queries/DataFlowConsistency.ql +++ b/python/ql/consistency-queries/DataFlowConsistency.ql @@ -143,6 +143,10 @@ private module Input implements InputSig { // Because of this, we must exclude the cases where we have an approximation but no actual // argument node. arg = getCallArgApproximation() and not getCallArg(_, _, _, arg, _) + or + // Likewise, capturing closure arguments do not have corresponding argument nodes in some cases. + arg instanceof SynthCapturedVariablesArgumentNode and + not arg.argumentOf(_, _) } } From 958c798c3fa09ba96bcf7d6dc6cc4deb6f7a0505 Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 29 Jan 2026 19:37:55 +0000 Subject: [PATCH 249/433] Python: Accept dataflow test changes New nodes means new results. Luckily we rarely have a test that selects _all_ dataflow nodes. --- python/ql/test/library-tests/dataflow/basic/local.expected | 2 ++ python/ql/test/library-tests/dataflow/basic/sinks.expected | 2 ++ python/ql/test/library-tests/dataflow/basic/sources.expected | 2 ++ 3 files changed, 6 insertions(+) diff --git a/python/ql/test/library-tests/dataflow/basic/local.expected b/python/ql/test/library-tests/dataflow/basic/local.expected index eb47f1308d42..96d402325129 100644 --- a/python/ql/test/library-tests/dataflow/basic/local.expected +++ b/python/ql/test/library-tests/dataflow/basic/local.expected @@ -36,7 +36,9 @@ | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | test.py:7:19:7:19 | ControlFlowNode for a | | test.py:7:1:7:1 | ControlFlowNode for b | test.py:7:1:7:1 | ControlFlowNode for b | +| test.py:7:5:7:17 | Capturing closure argument | test.py:7:5:7:17 | Capturing closure argument | | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | +| test.py:7:5:7:17 | [post] Capturing closure argument | test.py:7:5:7:17 | [post] Capturing closure argument | | test.py:7:5:7:17 | [post] ControlFlowNode for obfuscated_id | test.py:7:5:7:17 | [post] ControlFlowNode for obfuscated_id | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:7:1:7:1 | ControlFlowNode for b | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | diff --git a/python/ql/test/library-tests/dataflow/basic/sinks.expected b/python/ql/test/library-tests/dataflow/basic/sinks.expected index 34525d5043e1..80055f9a2f2b 100644 --- a/python/ql/test/library-tests/dataflow/basic/sinks.expected +++ b/python/ql/test/library-tests/dataflow/basic/sinks.expected @@ -15,7 +15,9 @@ | test.py:6:1:6:1 | ControlFlowNode for a | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | | test.py:7:1:7:1 | ControlFlowNode for b | +| test.py:7:5:7:17 | Capturing closure argument | | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | +| test.py:7:5:7:17 | [post] Capturing closure argument | | test.py:7:5:7:17 | [post] ControlFlowNode for obfuscated_id | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | | test.py:7:5:7:20 | [pre] ControlFlowNode for obfuscated_id() | diff --git a/python/ql/test/library-tests/dataflow/basic/sources.expected b/python/ql/test/library-tests/dataflow/basic/sources.expected index 34525d5043e1..80055f9a2f2b 100644 --- a/python/ql/test/library-tests/dataflow/basic/sources.expected +++ b/python/ql/test/library-tests/dataflow/basic/sources.expected @@ -15,7 +15,9 @@ | test.py:6:1:6:1 | ControlFlowNode for a | | test.py:6:5:6:6 | ControlFlowNode for IntegerLiteral | | test.py:7:1:7:1 | ControlFlowNode for b | +| test.py:7:5:7:17 | Capturing closure argument | | test.py:7:5:7:17 | ControlFlowNode for obfuscated_id | +| test.py:7:5:7:17 | [post] Capturing closure argument | | test.py:7:5:7:17 | [post] ControlFlowNode for obfuscated_id | | test.py:7:5:7:20 | ControlFlowNode for obfuscated_id() | | test.py:7:5:7:20 | [pre] ControlFlowNode for obfuscated_id() | From 1b5ed129ac28255201b2bc0e32965e2694543206 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Fri, 30 Jan 2026 13:09:01 +0000 Subject: [PATCH 250/433] Log and emit diagnostic if incorrectly named files are found --- .../BuildScripts.cs | 4 ++ .../BuildScripts.cs | 4 ++ .../NugetPackageRestorer.cs | 37 +++++++++++++++++++ csharp/extractor/Semmle.Util/BuildActions.cs | 8 ++++ 4 files changed, 53 insertions(+) diff --git a/csharp/autobuilder/Semmle.Autobuild.CSharp.Tests/BuildScripts.cs b/csharp/autobuilder/Semmle.Autobuild.CSharp.Tests/BuildScripts.cs index 7eb0d539812c..a8ce96539169 100644 --- a/csharp/autobuilder/Semmle.Autobuild.CSharp.Tests/BuildScripts.cs +++ b/csharp/autobuilder/Semmle.Autobuild.CSharp.Tests/BuildScripts.cs @@ -158,6 +158,10 @@ IEnumerable IBuildActions.EnumerateDirectories(string dir) bool IBuildActions.IsMacOs() => IsMacOs; + public bool IsLinux { get; set; } + + bool IBuildActions.IsLinux() => IsLinux; + public bool IsRunningOnAppleSilicon { get; set; } bool IBuildActions.IsRunningOnAppleSilicon() => IsRunningOnAppleSilicon; diff --git a/csharp/autobuilder/Semmle.Autobuild.Cpp.Tests/BuildScripts.cs b/csharp/autobuilder/Semmle.Autobuild.Cpp.Tests/BuildScripts.cs index afa4ea4b41c3..fd5e4073d6d9 100644 --- a/csharp/autobuilder/Semmle.Autobuild.Cpp.Tests/BuildScripts.cs +++ b/csharp/autobuilder/Semmle.Autobuild.Cpp.Tests/BuildScripts.cs @@ -146,6 +146,10 @@ IEnumerable IBuildActions.EnumerateDirectories(string dir) bool IBuildActions.IsMacOs() => IsMacOs; + public bool IsLinux { get; set; } + + bool IBuildActions.IsLinux() => IsLinux; + public bool IsRunningOnAppleSilicon { get; set; } bool IBuildActions.IsRunningOnAppleSilicon() => IsRunningOnAppleSilicon; diff --git a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs index 4fce6f3eb65d..8c64798987f7 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs @@ -814,6 +814,43 @@ private IEnumerable GetFeeds(Func> getNugetFeeds) private (HashSet explicitFeeds, HashSet allFeeds) GetAllFeeds() { var nugetConfigs = fileProvider.NugetConfigs; + + // On systems with case-sensitive file systems (for simplicity, we assume that is Linux), the + // filenames of NuGet configuration files must be named correctly. For compatibility with projects + // that are typically built on Windows or macOS where this doesn't matter, we accept all variants + // of `nuget.config` ourselves. However, `dotnet` does not. If we detect that incorrectly-named + // files are present, we emit a diagnostic to warn the user. + if (SystemBuildActions.Instance.IsLinux()) + { + string[] acceptedNugetConfigNames = ["nuget.config", "NuGet.config", "NuGet.Config"]; + var invalidNugetConfigs = nugetConfigs + .Where(path => acceptedNugetConfigNames.Contains(Path.GetFileName(path))); + + if (invalidNugetConfigs.Count() > 0) + { + this.logger.LogWarning(string.Format( + "Found incorrectly named NuGet configuration files: {0}", + string.Join(", ", invalidNugetConfigs) + )); + this.diagnosticsWriter.AddEntry(new DiagnosticMessage( + Language.CSharp, + "buildless/case-sensitive-nuget-config", + "Found NuGet configuration files which are not correctly named", + visibility: new DiagnosticMessage.TspVisibility(statusPage: true, cliSummaryTable: true, telemetry: true), + markdownMessage: string.Format( + "On platforms with case-sensitive file systems, NuGet only accepts files with one of the following names: {0}.\n\n" + + "CodeQL found the following files while performing an analysis on a platform with a case-sensitive file system:\n\n" + + "{1}\n\n" + + "To avoid unexpected results, rename these files to match the casing of one of the accepted filenames.", + string.Join(", ", acceptedNugetConfigNames), + string.Join("\n", invalidNugetConfigs.Select(path => string.Format("- `{0}`", path))) + ), + severity: DiagnosticMessage.TspSeverity.Warning + )); + } + } + + // Find feeds that are explicitly configured in the NuGet configuration files that we found. var explicitFeeds = nugetConfigs .SelectMany(config => GetFeeds(() => dotnet.GetNugetFeeds(config))) .ToHashSet(); diff --git a/csharp/extractor/Semmle.Util/BuildActions.cs b/csharp/extractor/Semmle.Util/BuildActions.cs index 38210402945b..09696564efc5 100644 --- a/csharp/extractor/Semmle.Util/BuildActions.cs +++ b/csharp/extractor/Semmle.Util/BuildActions.cs @@ -119,6 +119,12 @@ public interface IBuildActions /// True if we are running on macOS. bool IsMacOs(); + /// + /// Gets a value indicating whether we are running on Linux. + /// + /// True if we are running on Linux. + bool IsLinux(); + /// /// Gets a value indicating whether we are running on Apple Silicon. /// @@ -246,6 +252,8 @@ int IBuildActions.RunProcess(string cmd, string args, string? workingDirectory, bool IBuildActions.IsMacOs() => RuntimeInformation.IsOSPlatform(OSPlatform.OSX); + bool IBuildActions.IsLinux() => RuntimeInformation.IsOSPlatform(OSPlatform.Linux); + bool IBuildActions.IsRunningOnAppleSilicon() { var thisBuildActions = (IBuildActions)this; From 1aba0b20cd2acf197d83aafb7d67c6117a582912 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Fri, 30 Jan 2026 13:09:33 +0000 Subject: [PATCH 251/433] Add integration test --- .../linux/diag_nuget_config_casing/Program.cs | 6 ++++ .../diagnostics.expected | 28 +++++++++++++++++++ .../diag_nuget_config_casing/global.json | 5 ++++ .../sub-project/Nuget.Config | 5 ++++ .../diag_nuget_config_casing/test.csproj | 8 ++++++ .../linux/diag_nuget_config_casing/test.py | 5 ++++ 6 files changed, 57 insertions(+) create mode 100644 csharp/ql/integration-tests/linux/diag_nuget_config_casing/Program.cs create mode 100644 csharp/ql/integration-tests/linux/diag_nuget_config_casing/diagnostics.expected create mode 100644 csharp/ql/integration-tests/linux/diag_nuget_config_casing/global.json create mode 100644 csharp/ql/integration-tests/linux/diag_nuget_config_casing/sub-project/Nuget.Config create mode 100644 csharp/ql/integration-tests/linux/diag_nuget_config_casing/test.csproj create mode 100644 csharp/ql/integration-tests/linux/diag_nuget_config_casing/test.py diff --git a/csharp/ql/integration-tests/linux/diag_nuget_config_casing/Program.cs b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/Program.cs new file mode 100644 index 000000000000..39a9e95bb6e3 --- /dev/null +++ b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/Program.cs @@ -0,0 +1,6 @@ +class Program +{ + static void Main(string[] args) + { + } +} \ No newline at end of file diff --git a/csharp/ql/integration-tests/linux/diag_nuget_config_casing/diagnostics.expected b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/diagnostics.expected new file mode 100644 index 000000000000..f53cd8e15987 --- /dev/null +++ b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/diagnostics.expected @@ -0,0 +1,28 @@ +{ + "markdownMessage": "C# analysis with build-mode 'none' completed.", + "severity": "unknown", + "source": { + "extractorName": "csharp", + "id": "csharp/autobuilder/buildless/complete", + "name": "C# analysis with build-mode 'none' completed" + }, + "visibility": { + "cliSummaryTable": true, + "statusPage": false, + "telemetry": true + } +} +{ + "markdownMessage": "C# was extracted with build-mode set to 'none'. This means that all C# source in the working directory will be scanned, with build tools, such as NuGet and dotnet CLIs, only contributing information about external dependencies.", + "severity": "note", + "source": { + "extractorName": "csharp", + "id": "csharp/autobuilder/buildless/mode-active", + "name": "C# was extracted with build-mode set to 'none'" + }, + "visibility": { + "cliSummaryTable": true, + "statusPage": true, + "telemetry": true + } +} diff --git a/csharp/ql/integration-tests/linux/diag_nuget_config_casing/global.json b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/global.json new file mode 100644 index 000000000000..481e95ec7be1 --- /dev/null +++ b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/global.json @@ -0,0 +1,5 @@ +{ + "sdk": { + "version": "10.0.100" + } +} diff --git a/csharp/ql/integration-tests/linux/diag_nuget_config_casing/sub-project/Nuget.Config b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/sub-project/Nuget.Config new file mode 100644 index 000000000000..aa5beec8aa09 --- /dev/null +++ b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/sub-project/Nuget.Config @@ -0,0 +1,5 @@ + + + + + diff --git a/csharp/ql/integration-tests/linux/diag_nuget_config_casing/test.csproj b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/test.csproj new file mode 100644 index 000000000000..a15a29bf12c2 --- /dev/null +++ b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/test.csproj @@ -0,0 +1,8 @@ + + + + Exe + net10.0 + + + diff --git a/csharp/ql/integration-tests/linux/diag_nuget_config_casing/test.py b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/test.py new file mode 100644 index 000000000000..a5d5f3fe03a4 --- /dev/null +++ b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/test.py @@ -0,0 +1,5 @@ +import runs_on + +@runs_on.linux +def test(codeql, csharp): + codeql.database.create(build_mode="none") From 3e0719609fb9ec20f276666b0275bf6e29b5fb78 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Fri, 30 Jan 2026 13:30:47 +0000 Subject: [PATCH 252/433] Fix missing negation --- .../NugetPackageRestorer.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs index 8c64798987f7..6093e43e5137 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs @@ -824,7 +824,7 @@ private IEnumerable GetFeeds(Func> getNugetFeeds) { string[] acceptedNugetConfigNames = ["nuget.config", "NuGet.config", "NuGet.Config"]; var invalidNugetConfigs = nugetConfigs - .Where(path => acceptedNugetConfigNames.Contains(Path.GetFileName(path))); + .Where(path => !acceptedNugetConfigNames.Contains(Path.GetFileName(path))); if (invalidNugetConfigs.Count() > 0) { From ad2aa6d4f8a41bd4be3765b04efc032dbb638e1c Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Fri, 30 Jan 2026 13:38:50 +0000 Subject: [PATCH 253/433] Accept expected diagnostic output --- .../diag_nuget_config_casing/diagnostics.expected | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/csharp/ql/integration-tests/linux/diag_nuget_config_casing/diagnostics.expected b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/diagnostics.expected index f53cd8e15987..063a2659f861 100644 --- a/csharp/ql/integration-tests/linux/diag_nuget_config_casing/diagnostics.expected +++ b/csharp/ql/integration-tests/linux/diag_nuget_config_casing/diagnostics.expected @@ -26,3 +26,17 @@ "telemetry": true } } +{ + "markdownMessage": "On platforms with case-sensitive file systems, NuGet only accepts files with one of the following names: nuget.config, NuGet.config, NuGet.Config.\n\nCodeQL found the following files while performing an analysis on a platform with a case-sensitive file system:\n\n- `/sub-project/Nuget.Config`\n\nTo avoid unexpected results, rename these files to match the casing of one of the accepted filenames.", + "severity": "warning", + "source": { + "extractorName": "csharp", + "id": "csharp/autobuilder/buildless/case-sensitive-nuget-config", + "name": "Found NuGet configuration files which are not correctly named" + }, + "visibility": { + "cliSummaryTable": true, + "statusPage": true, + "telemetry": true + } +} From 454d13b48582bf2a89d9d26731443905eec654ff Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Fri, 30 Jan 2026 14:03:43 +0000 Subject: [PATCH 254/433] Remove element check --- .../NugetPackageRestorer.cs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs index 6093e43e5137..1d01412ee051 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/NugetPackageRestorer.cs @@ -893,10 +893,7 @@ private IEnumerable GetFeeds(Func> getNugetFeeds) // file systems, we may discover a configuration file such as `Nuget.Config` which is not recognised by `dotnet nuget`. // In that case, our call to `GetNugetFeeds` will retrieve the feeds from that file (because it is accepted when // provided explicitly as `--configfile` argument), but the call to `GetNugetFeedsFromFolder` will not. - if (explicitFeeds.Count > 0) - { - allFeeds.UnionWith(explicitFeeds); - } + allFeeds.UnionWith(explicitFeeds); } else { From 0222159df5aaf9a43f257e9a16dc165a41b11a4d Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 30 Jan 2026 14:10:03 +0000 Subject: [PATCH 255/433] Specify vulnerable args instead of safe ones --- python/ql/lib/semmle/python/Concepts.qll | 20 +++++++++++++------ .../ql/lib/semmle/python/frameworks/Flask.qll | 7 ++++--- .../dataflow/PathInjectionCustomizations.qll | 3 +-- 3 files changed, 19 insertions(+), 11 deletions(-) diff --git a/python/ql/lib/semmle/python/Concepts.qll b/python/ql/lib/semmle/python/Concepts.qll index 7c90ff98dc0e..1c018566cbf0 100644 --- a/python/ql/lib/semmle/python/Concepts.qll +++ b/python/ql/lib/semmle/python/Concepts.qll @@ -118,10 +118,14 @@ class FileSystemAccess extends DataFlow::Node instanceof FileSystemAccess::Range DataFlow::Node getAPathArgument() { result = super.getAPathArgument() } /** - * Gets an argument to this file system access that is interpreted as a path, - * but which is not vulnerable to path injection. + * Gets an argument to this file system access that is interpreted as a path + * which is vulnerable to path injection. + * + * By default all path arguments are considered vulnerable, but this can be overridden to + * exclude certain arguments that are known to be safe, for example because they are + * restricted to a specific directory. */ - DataFlow::Node getASafePathArgument() { result = super.getASafePathArgument() } + DataFlow::Node getAVulnerablePathArgument() { result = super.getAVulnerablePathArgument() } } /** Provides a class for modeling new file system access APIs. */ @@ -138,10 +142,14 @@ module FileSystemAccess { abstract DataFlow::Node getAPathArgument(); /** - * Gets an argument to this file system access that is interpreted as a path, - * but which is not vulnerable to path injection. + * Gets an argument to this file system access that is interpreted as a path + * which is vulnerable to path injection. + * + * By default all path arguments are considered vulnerable, but this can be overridden to + * exclude certain arguments that are known to be safe, for example because they are + * restricted to a specific directory. */ - DataFlow::Node getASafePathArgument() { none() } + DataFlow::Node getAVulnerablePathArgument() { result = this.getAPathArgument() } } } diff --git a/python/ql/lib/semmle/python/frameworks/Flask.qll b/python/ql/lib/semmle/python/frameworks/Flask.qll index eaafdf8ea23b..b9bba675ac05 100644 --- a/python/ql/lib/semmle/python/frameworks/Flask.qll +++ b/python/ql/lib/semmle/python/frameworks/Flask.qll @@ -625,10 +625,11 @@ module Flask { result = this.getArgByName(["directory", "filename"]) } - override DataFlow::Node getASafePathArgument() { - // as described in the docs, the `filename` argument is restrained to be within + override DataFlow::Node getAVulnerablePathArgument() { + result = this.getAPathArgument() and + // as described in the docs, the `filename` argument is restricted to be within // the provided directory, so is not exposed to path-injection. - result in [this.getArg(1), this.getArgByName("filename")] + not result in [this.getArg(1), this.getArgByName("filename")] } } diff --git a/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll b/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll index 10903fe0c513..7121faa19ffb 100644 --- a/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll +++ b/python/ql/lib/semmle/python/security/dataflow/PathInjectionCustomizations.qll @@ -57,8 +57,7 @@ module PathInjection { */ class FileSystemAccessAsSink extends Sink { FileSystemAccessAsSink() { - this = any(FileSystemAccess e).getAPathArgument() and - not this = any(FileSystemAccess e).getASafePathArgument() and + this = any(FileSystemAccess e).getAVulnerablePathArgument() and // since implementation of Path.open in pathlib.py is like // ```py // def open(self, ...): From 8aa1bff9a5ae7c8def20b98a22445a8e2f452be0 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sun, 1 Feb 2026 22:59:19 +0000 Subject: [PATCH 256/433] Add `AstNode.getEnclosingBlock()` --- go/ql/lib/semmle/go/AST.qll | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/go/ql/lib/semmle/go/AST.qll b/go/ql/lib/semmle/go/AST.qll index c5e388ba000f..6a840f81cbbe 100644 --- a/go/ql/lib/semmle/go/AST.qll +++ b/go/ql/lib/semmle/go/AST.qll @@ -84,6 +84,16 @@ class AstNode extends @node, Locatable { pragma[nomagic] FuncDef getEnclosingFunction() { result = this.getParent().parentInSameFunction*() } + /** Gets the innermost block statement to which this AST node belongs, if any. */ + BlockStmt getEnclosingBlock() { + exists(AstNode p | p = this.getParent() | + result = p + or + not p instanceof BlockStmt and + result = p.getEnclosingBlock() + ) + } + /** * Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs. */ From fe0634574d970ebebd55eaf09e34f35831a91ec2 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 2 Feb 2026 11:09:26 +0100 Subject: [PATCH 257/433] C#: Add more tests for `InsecureDirectObjectReference.ql` --- .../CWE-639/MVCTests/CommentController.cs | 47 ++++++++++++++++--- .../InsecureDirectObjectReference.expected | 4 +- 2 files changed, 43 insertions(+), 8 deletions(-) diff --git a/csharp/ql/test/query-tests/Security Features/CWE-639/MVCTests/CommentController.cs b/csharp/ql/test/query-tests/Security Features/CWE-639/MVCTests/CommentController.cs index 891e8374c1cc..d446c7ed4864 100644 --- a/csharp/ql/test/query-tests/Security Features/CWE-639/MVCTests/CommentController.cs +++ b/csharp/ql/test/query-tests/Security Features/CWE-639/MVCTests/CommentController.cs @@ -1,16 +1,28 @@ using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Authorization; +using System.Threading.Tasks; + +public class CommentController : Controller +{ + private readonly IAuthorizationService _authorizationService; + + public CommentController(IAuthorizationService authorizationService) + { + _authorizationService = authorizationService; + } -public class CommentController : Controller { // BAD: Any user can access this. - public ActionResult Edit1(int commentId, string text) { + public ActionResult Edit1(int commentId, string text) + { editComment(commentId, text); return View(); } // GOOD: The user's authorization is checked. - public ActionResult Edit2(int commentId, string text) { - if (canEditComment(commentId, User.Identity.Name)){ + public ActionResult Edit2(int commentId, string text) + { + if (canEditComment(commentId, User.Identity.Name)) + { editComment(commentId, text); } return View(); @@ -18,7 +30,8 @@ public ActionResult Edit2(int commentId, string text) { // GOOD: The Authorize attribute is used [Authorize] - public ActionResult Edit3(int commentId, string text) { + public ActionResult Edit3(int commentId, string text) + { editComment(commentId, text); return View(); } @@ -26,7 +39,29 @@ public ActionResult Edit3(int commentId, string text) { // BAD: The AllowAnonymous attribute overrides the Authorize attribute [Authorize] [AllowAnonymous] - public ActionResult Edit4(int commentId, string text) { + public ActionResult Edit4(int commentId, string text) + { + editComment(commentId, text); + return View(); + } + + // GOOD: An authorization check is made. + public async Task Edit5(int commentId, string text) + { + var authResult = await _authorizationService.AuthorizeAsync(User, "Comment", "EditPolicy"); + + if (authResult.Succeeded) + { + editComment(commentId, text); + return View(); + } + return Forbid(); + } + + // GOOD: Only users with the `admin` role can access this method. + [Authorize(Roles = "admin")] + public async Task Edit6(int commentId, string text) + { editComment(commentId, text); return View(); } diff --git a/csharp/ql/test/query-tests/Security Features/CWE-639/MVCTests/InsecureDirectObjectReference.expected b/csharp/ql/test/query-tests/Security Features/CWE-639/MVCTests/InsecureDirectObjectReference.expected index 061b87dc6afe..e851a72f6a95 100644 --- a/csharp/ql/test/query-tests/Security Features/CWE-639/MVCTests/InsecureDirectObjectReference.expected +++ b/csharp/ql/test/query-tests/Security Features/CWE-639/MVCTests/InsecureDirectObjectReference.expected @@ -1,5 +1,5 @@ -| CommentController.cs:6:25:6:29 | Edit1 | This method may be missing authorization checks for which users can access the resource of the provided ID. | -| CommentController.cs:29:25:29:29 | Edit4 | This method may be missing authorization checks for which users can access the resource of the provided ID. | +| CommentController.cs:15:25:15:29 | Edit1 | This method may be missing authorization checks for which users can access the resource of the provided ID. | +| CommentController.cs:42:25:42:29 | Edit4 | This method may be missing authorization checks for which users can access the resource of the provided ID. | | MiscTestControllers.cs:26:33:26:40 | EditAnon | This method may be missing authorization checks for which users can access the resource of the provided ID. | | MiscTestControllers.cs:34:34:34:41 | EditAnon | This method may be missing authorization checks for which users can access the resource of the provided ID. | | MiscTestControllers.cs:45:25:45:29 | Edit4 | This method may be missing authorization checks for which users can access the resource of the provided ID. | From 18576838d4d7ba8f804d30b79923d711c13972fd Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 2 Feb 2026 12:07:18 +0100 Subject: [PATCH 258/433] Rust: Minor tweaks and improvements --- .../codeql/rust/internal/PathResolution.qll | 23 +++++++------- .../internal/typeinference/TypeMention.qll | 30 +++++++++++-------- 2 files changed, 30 insertions(+), 23 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/PathResolution.qll b/rust/ql/lib/codeql/rust/internal/PathResolution.qll index 00582e584f80..7e77669cc4fe 100644 --- a/rust/ql/lib/codeql/rust/internal/PathResolution.qll +++ b/rust/ql/lib/codeql/rust/internal/PathResolution.qll @@ -110,7 +110,7 @@ pragma[nomagic] private ItemNode getAChildSuccessor(ItemNode item, string name, SuccessorKind kind) { item = result.getImmediateParent() and name = result.getName() and - // Associated types in `impl` and `trait` blocks are handled elsewhere + // Associated items in `impl` and `trait` blocks are handled elsewhere not (item instanceof ImplOrTraitItemNode and result instanceof AssocItem) and // type parameters are only available inside the declaring item if result instanceof TypeParam @@ -324,13 +324,14 @@ abstract class ItemNode extends Locatable { ) ) or - exists(TraitItemNodeImpl trait | this = trait | - result = trait.getAssocItem(name) - or - // a trait has access to the associated items of its supertraits - not trait.hasAssocItem(name) and - result = trait.resolveABoundCand().getASuccessor(name).(AssocItemNode) - ) and + this = + any(TraitItemNodeImpl trait | + result = trait.getAssocItem(name) + or + // a trait has access to the associated items of its supertraits + not trait.hasAssocItem(name) and + result = trait.resolveABoundCand().getASuccessor(name).(AssocItemNode) + ) and kind.isExternal() and useOpt.isNone() or @@ -1788,6 +1789,8 @@ private ItemNode resolvePathCand0(PathExt path, Namespace ns) { exists(ItemNode res | res = unqualifiedPathLookup(path, ns, _) and if + // `Self` paths that are not used as qualifiers (for instance `Self` in + // `fn(..) -> Self`) should resolve to the type being implemented. not any(PathExt parent).getQualifier() = path and isUnqualifiedSelfPath(path) and res instanceof ImplItemNode @@ -2191,7 +2194,7 @@ private predicate externCrateEdge( /** * Holds if `typeItem` is the implementing type of `impl` and the implementation - * makes `assoc` available as `name` at `kind`. + * makes `assoc` available as `name`. */ private predicate typeImplEdge( TypeItemNode typeItem, ImplItemNodeImpl impl, string name, AssocItemNode assoc @@ -2201,7 +2204,7 @@ private predicate typeImplEdge( // Functions in `impl` blocks are made available on the implementing type // (e.g., `S::fun` is valid) but associated types are not (e.g., `S::Output` // is invalid). - (assoc instanceof FunctionItemNode or assoc instanceof ConstItemNode) + not assoc instanceof TypeAlias } pragma[nomagic] diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index f7dc0420f6a3..13809bce7da4 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -7,6 +7,12 @@ private import Type private import TypeAbstraction private import TypeInference +bindingset[trait, name] +pragma[inline_late] +private TypeAlias getTraitAssocType(TraitItemNode trait, string name) { + result = trait.getAssocItem(name) +} + private signature Type getAdditionalPathTypeAtSig(Path p, TypePath typePath); /** @@ -286,11 +292,6 @@ private module MkTypeMention::AssocType` // ^^^ tm ^^^^^^^^^ name exists(string name | - name = path.getSegment().getIdentifier().getText() and - tm = qualifier.getSegment().getTypeRepr() and + name = path.getText() and trait = resolvePath(qualifier.getSegment().getTraitTypeRepr().getPath()) and - trait.(TraitItemNode).getAssocItem(name) = alias + getTraitAssocType(trait, name) = alias and + tm = qualifier.getSegment().getTypeRepr() ) or // path of the form `Self::AssocType` within an `impl` block @@ -676,12 +679,14 @@ predicate pathConcreteTypeAssocType(Path path, PreTypeMention tm, Trait trait, T ) } -private module PathSatisfiesConstraint implements SatisfiesConstraintInputSig { +private module PathSatisfiesConstraintInput implements SatisfiesConstraintInputSig { predicate relevantConstraint(PreTypeMention tm, Type constraint) { pathConcreteTypeAssocType(_, tm, constraint.(TraitType).getTrait(), _) } } +module PathSatisfiesConstraint = SatisfiesConstraint; + /** * Gets the type of `path` at `typePath` when `path` accesses an associated type * on a concrete type. @@ -689,8 +694,7 @@ private module PathSatisfiesConstraint implements SatisfiesConstraintInputSig::satisfiesConstraintType(tm, - TTrait(t), path0, result) and + PathSatisfiesConstraint::satisfiesConstraintType(tm, TTrait(t), path0, result) and path0.isCons(TAssociatedTypeTypeParameter(t, alias), typePath) ) } From 0567864a83e1cebb0f919d426297dc522e10d071 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 2 Feb 2026 12:55:12 +0100 Subject: [PATCH 259/433] Rust: Make module private Co-authored-by: Tom Hvitved --- rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index 13809bce7da4..bdb25a65b156 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -685,7 +685,8 @@ private module PathSatisfiesConstraintInput implements SatisfiesConstraintInputS } } -module PathSatisfiesConstraint = SatisfiesConstraint; +private module PathSatisfiesConstraint = + SatisfiesConstraint; /** * Gets the type of `path` at `typePath` when `path` accesses an associated type From 0db542e9f0be08204e5391e73a708bb97c80886d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 2 Feb 2026 12:09:09 +0000 Subject: [PATCH 260/433] Release preparation for version 2.24.1 --- actions/ql/lib/CHANGELOG.md | 6 ++++++ .../0.4.27.md} | 7 ++++--- actions/ql/lib/codeql-pack.release.yml | 2 +- actions/ql/lib/qlpack.yml | 2 +- actions/ql/src/CHANGELOG.md | 4 ++++ .../ql/src/change-notes/released/0.6.19.md | 3 +++ actions/ql/src/codeql-pack.release.yml | 2 +- actions/ql/src/qlpack.yml | 2 +- cpp/ql/lib/CHANGELOG.md | 18 ++++++++++++++++ cpp/ql/lib/change-notes/2026-01-19-embed.md | 4 ---- .../2026-01-19-parameterized-barrier-guard.md | 4 ---- .../change-notes/2026-01-23-as-definition.md | 4 ---- cpp/ql/lib/change-notes/2026-01-23-mysql.md | 4 ---- .../2026-01-26-buffer-overflow-fps.md | 4 ---- ...01-30-guard-condition-logical-operators.md | 4 ---- cpp/ql/lib/change-notes/released/7.1.0.md | 17 +++++++++++++++ cpp/ql/lib/codeql-pack.release.yml | 2 +- cpp/ql/lib/qlpack.yml | 2 +- cpp/ql/src/CHANGELOG.md | 4 ++++ cpp/ql/src/change-notes/released/1.5.10.md | 3 +++ cpp/ql/src/codeql-pack.release.yml | 2 +- cpp/ql/src/qlpack.yml | 2 +- .../ql/campaigns/Solorigate/lib/CHANGELOG.md | 4 ++++ .../lib/change-notes/released/1.7.58.md | 3 +++ .../Solorigate/lib/codeql-pack.release.yml | 2 +- csharp/ql/campaigns/Solorigate/lib/qlpack.yml | 2 +- .../ql/campaigns/Solorigate/src/CHANGELOG.md | 4 ++++ .../src/change-notes/released/1.7.58.md | 3 +++ .../Solorigate/src/codeql-pack.release.yml | 2 +- csharp/ql/campaigns/Solorigate/src/qlpack.yml | 2 +- csharp/ql/lib/CHANGELOG.md | 7 +++++++ ...2026-01-14-null-conditional-assignments.md | 4 ---- .../2026-01-16-summarized-callable.md | 4 ---- csharp/ql/lib/change-notes/released/5.4.6.md | 6 ++++++ csharp/ql/lib/codeql-pack.release.yml | 2 +- csharp/ql/lib/qlpack.yml | 2 +- csharp/ql/src/CHANGELOG.md | 4 ++++ csharp/ql/src/change-notes/released/1.6.1.md | 3 +++ csharp/ql/src/codeql-pack.release.yml | 2 +- csharp/ql/src/qlpack.yml | 2 +- go/ql/consistency-queries/CHANGELOG.md | 4 ++++ .../change-notes/released/1.0.41.md | 3 +++ .../codeql-pack.release.yml | 2 +- go/ql/consistency-queries/qlpack.yml | 2 +- go/ql/lib/CHANGELOG.md | 6 ++++++ .../ql/lib/change-notes/released/6.0.1.md | 7 ++++--- go/ql/lib/codeql-pack.release.yml | 2 +- go/ql/lib/qlpack.yml | 2 +- go/ql/src/CHANGELOG.md | 4 ++++ go/ql/src/change-notes/released/1.5.5.md | 3 +++ go/ql/src/codeql-pack.release.yml | 2 +- go/ql/src/qlpack.yml | 2 +- java/ql/lib/CHANGELOG.md | 21 +++++++++++++++++++ .../lib/change-notes/2026-01-07-kotlin-2_3.md | 4 ---- ...6-01-07-kotlin-mimimum_suppoted_version.md | 4 ---- .../2026-01-09-maven-plugin-registries.md | 4 ---- .../2026-01-26-kotlin-extractor-load-last.md | 4 ---- .../2026-01-27-struts-7-support.md | 4 ---- .../2026-01-27-unreleased-lock-pools.md | 4 ---- java/ql/lib/change-notes/released/8.0.0.md | 20 ++++++++++++++++++ java/ql/lib/codeql-pack.release.yml | 2 +- java/ql/lib/qlpack.yml | 2 +- java/ql/src/CHANGELOG.md | 4 ++++ java/ql/src/change-notes/released/1.10.6.md | 3 +++ java/ql/src/codeql-pack.release.yml | 2 +- java/ql/src/qlpack.yml | 2 +- javascript/ql/lib/CHANGELOG.md | 6 ++++++ .../ql/lib/change-notes/released/2.6.21.md | 7 ++++--- javascript/ql/lib/codeql-pack.release.yml | 2 +- javascript/ql/lib/qlpack.yml | 2 +- javascript/ql/src/CHANGELOG.md | 4 ++++ .../ql/src/change-notes/released/2.3.1.md | 3 +++ javascript/ql/src/codeql-pack.release.yml | 2 +- javascript/ql/src/qlpack.yml | 2 +- misc/suite-helpers/CHANGELOG.md | 4 ++++ .../change-notes/released/1.0.41.md | 3 +++ misc/suite-helpers/codeql-pack.release.yml | 2 +- misc/suite-helpers/qlpack.yml | 2 +- python/ql/lib/CHANGELOG.md | 13 ++++++++++++ .../lib/change-notes/2025-12-01-websockets.md | 4 ---- .../2026-01-02-prompt-injection.md | 5 ----- .../2026-01-16-summarized-callable.md | 4 ---- ...01-20-support-ListElement-in-python-MaD.md | 4 ---- python/ql/lib/change-notes/released/6.1.0.md | 12 +++++++++++ python/ql/lib/codeql-pack.release.yml | 2 +- python/ql/lib/qlpack.yml | 2 +- python/ql/src/CHANGELOG.md | 4 ++++ python/ql/src/change-notes/released/1.7.6.md | 3 +++ python/ql/src/codeql-pack.release.yml | 2 +- python/ql/src/qlpack.yml | 2 +- ruby/ql/lib/CHANGELOG.md | 6 ++++++ .../2026-01-16-summarized-callable.md | 4 ---- .../ql/lib/change-notes/released/5.1.9.md | 7 ++++--- ruby/ql/lib/codeql-pack.release.yml | 2 +- ruby/ql/lib/qlpack.yml | 2 +- ruby/ql/src/CHANGELOG.md | 4 ++++ ruby/ql/src/change-notes/released/1.5.6.md | 3 +++ ruby/ql/src/codeql-pack.release.yml | 2 +- ruby/ql/src/qlpack.yml | 2 +- rust/ql/lib/CHANGELOG.md | 9 +++++++- .../2026-01-16-summarized-callable.md | 4 ---- .../2026-01-16-type-inference-closures.md | 4 ---- rust/ql/lib/change-notes/released/0.2.5.md | 6 ++++++ rust/ql/lib/codeql-pack.release.yml | 2 +- rust/ql/lib/qlpack.yml | 2 +- rust/ql/src/CHANGELOG.md | 4 ++++ rust/ql/src/change-notes/released/0.1.26.md | 3 +++ rust/ql/src/codeql-pack.release.yml | 2 +- rust/ql/src/qlpack.yml | 2 +- shared/concepts/CHANGELOG.md | 4 ++++ .../concepts/change-notes/released/0.0.15.md | 3 +++ shared/concepts/codeql-pack.release.yml | 2 +- shared/concepts/qlpack.yml | 2 +- shared/controlflow/CHANGELOG.md | 4 ++++ .../change-notes/released/2.0.25.md | 3 +++ shared/controlflow/codeql-pack.release.yml | 2 +- shared/controlflow/qlpack.yml | 2 +- shared/dataflow/CHANGELOG.md | 4 ++++ .../dataflow/change-notes/released/2.0.25.md | 3 +++ shared/dataflow/codeql-pack.release.yml | 2 +- shared/dataflow/qlpack.yml | 2 +- shared/mad/CHANGELOG.md | 4 ++++ shared/mad/change-notes/released/1.0.41.md | 3 +++ shared/mad/codeql-pack.release.yml | 2 +- shared/mad/qlpack.yml | 2 +- shared/quantum/CHANGELOG.md | 4 ++++ .../quantum/change-notes/released/0.0.19.md | 3 +++ shared/quantum/codeql-pack.release.yml | 2 +- shared/quantum/qlpack.yml | 2 +- shared/rangeanalysis/CHANGELOG.md | 4 ++++ .../change-notes/released/1.0.41.md | 3 +++ shared/rangeanalysis/codeql-pack.release.yml | 2 +- shared/rangeanalysis/qlpack.yml | 2 +- shared/regex/CHANGELOG.md | 4 ++++ shared/regex/change-notes/released/1.0.41.md | 3 +++ shared/regex/codeql-pack.release.yml | 2 +- shared/regex/qlpack.yml | 2 +- shared/ssa/CHANGELOG.md | 4 ++++ shared/ssa/change-notes/released/2.0.17.md | 3 +++ shared/ssa/codeql-pack.release.yml | 2 +- shared/ssa/qlpack.yml | 2 +- shared/threat-models/CHANGELOG.md | 4 ++++ .../change-notes/released/1.0.41.md | 3 +++ shared/threat-models/codeql-pack.release.yml | 2 +- shared/threat-models/qlpack.yml | 2 +- shared/tutorial/CHANGELOG.md | 4 ++++ .../tutorial/change-notes/released/1.0.41.md | 3 +++ shared/tutorial/codeql-pack.release.yml | 2 +- shared/tutorial/qlpack.yml | 2 +- shared/typeflow/CHANGELOG.md | 4 ++++ .../typeflow/change-notes/released/1.0.41.md | 3 +++ shared/typeflow/codeql-pack.release.yml | 2 +- shared/typeflow/qlpack.yml | 2 +- shared/typeinference/CHANGELOG.md | 4 ++++ .../change-notes/released/0.0.22.md | 3 +++ shared/typeinference/codeql-pack.release.yml | 2 +- shared/typeinference/qlpack.yml | 2 +- shared/typetracking/CHANGELOG.md | 4 ++++ .../change-notes/released/2.0.25.md | 3 +++ shared/typetracking/codeql-pack.release.yml | 2 +- shared/typetracking/qlpack.yml | 2 +- shared/typos/CHANGELOG.md | 4 ++++ shared/typos/change-notes/released/1.0.41.md | 3 +++ shared/typos/codeql-pack.release.yml | 2 +- shared/typos/qlpack.yml | 2 +- shared/util/CHANGELOG.md | 4 ++++ shared/util/change-notes/released/2.0.28.md | 3 +++ shared/util/codeql-pack.release.yml | 2 +- shared/util/qlpack.yml | 2 +- shared/xml/CHANGELOG.md | 4 ++++ shared/xml/change-notes/released/1.0.41.md | 3 +++ shared/xml/codeql-pack.release.yml | 2 +- shared/xml/qlpack.yml | 2 +- shared/yaml/CHANGELOG.md | 4 ++++ shared/yaml/change-notes/released/1.0.41.md | 3 +++ shared/yaml/codeql-pack.release.yml | 2 +- shared/yaml/qlpack.yml | 2 +- swift/ql/lib/CHANGELOG.md | 6 ++++++ .../2026-01-16-summarized-callable.md | 4 ---- .../ql/lib/change-notes/released/6.2.1.md | 7 ++++--- swift/ql/lib/codeql-pack.release.yml | 2 +- swift/ql/lib/qlpack.yml | 2 +- swift/ql/src/CHANGELOG.md | 4 ++++ swift/ql/src/change-notes/released/1.2.15.md | 3 +++ swift/ql/src/codeql-pack.release.yml | 2 +- swift/ql/src/qlpack.yml | 2 +- 186 files changed, 477 insertions(+), 187 deletions(-) rename actions/ql/lib/change-notes/{2026-01-23-long-expression-fix.md => released/0.4.27.md} (78%) create mode 100644 actions/ql/src/change-notes/released/0.6.19.md delete mode 100644 cpp/ql/lib/change-notes/2026-01-19-embed.md delete mode 100644 cpp/ql/lib/change-notes/2026-01-19-parameterized-barrier-guard.md delete mode 100644 cpp/ql/lib/change-notes/2026-01-23-as-definition.md delete mode 100644 cpp/ql/lib/change-notes/2026-01-23-mysql.md delete mode 100644 cpp/ql/lib/change-notes/2026-01-26-buffer-overflow-fps.md delete mode 100644 cpp/ql/lib/change-notes/2026-01-30-guard-condition-logical-operators.md create mode 100644 cpp/ql/lib/change-notes/released/7.1.0.md create mode 100644 cpp/ql/src/change-notes/released/1.5.10.md create mode 100644 csharp/ql/campaigns/Solorigate/lib/change-notes/released/1.7.58.md create mode 100644 csharp/ql/campaigns/Solorigate/src/change-notes/released/1.7.58.md delete mode 100644 csharp/ql/lib/change-notes/2026-01-14-null-conditional-assignments.md delete mode 100644 csharp/ql/lib/change-notes/2026-01-16-summarized-callable.md create mode 100644 csharp/ql/lib/change-notes/released/5.4.6.md create mode 100644 csharp/ql/src/change-notes/released/1.6.1.md create mode 100644 go/ql/consistency-queries/change-notes/released/1.0.41.md rename javascript/ql/lib/change-notes/2026-01-16-summarized-callable.md => go/ql/lib/change-notes/released/6.0.1.md (85%) create mode 100644 go/ql/src/change-notes/released/1.5.5.md delete mode 100644 java/ql/lib/change-notes/2026-01-07-kotlin-2_3.md delete mode 100644 java/ql/lib/change-notes/2026-01-07-kotlin-mimimum_suppoted_version.md delete mode 100644 java/ql/lib/change-notes/2026-01-09-maven-plugin-registries.md delete mode 100644 java/ql/lib/change-notes/2026-01-26-kotlin-extractor-load-last.md delete mode 100644 java/ql/lib/change-notes/2026-01-27-struts-7-support.md delete mode 100644 java/ql/lib/change-notes/2026-01-27-unreleased-lock-pools.md create mode 100644 java/ql/lib/change-notes/released/8.0.0.md create mode 100644 java/ql/src/change-notes/released/1.10.6.md rename java/ql/lib/change-notes/2026-01-16-summarized-callable.md => javascript/ql/lib/change-notes/released/2.6.21.md (85%) create mode 100644 javascript/ql/src/change-notes/released/2.3.1.md create mode 100644 misc/suite-helpers/change-notes/released/1.0.41.md delete mode 100644 python/ql/lib/change-notes/2025-12-01-websockets.md delete mode 100644 python/ql/lib/change-notes/2026-01-02-prompt-injection.md delete mode 100644 python/ql/lib/change-notes/2026-01-16-summarized-callable.md delete mode 100644 python/ql/lib/change-notes/2026-01-20-support-ListElement-in-python-MaD.md create mode 100644 python/ql/lib/change-notes/released/6.1.0.md create mode 100644 python/ql/src/change-notes/released/1.7.6.md delete mode 100644 ruby/ql/lib/change-notes/2026-01-16-summarized-callable.md rename cpp/ql/lib/change-notes/2026-01-16-summarized-callable.md => ruby/ql/lib/change-notes/released/5.1.9.md (85%) create mode 100644 ruby/ql/src/change-notes/released/1.5.6.md delete mode 100644 rust/ql/lib/change-notes/2026-01-16-summarized-callable.md delete mode 100644 rust/ql/lib/change-notes/2026-01-16-type-inference-closures.md create mode 100644 rust/ql/lib/change-notes/released/0.2.5.md create mode 100644 rust/ql/src/change-notes/released/0.1.26.md create mode 100644 shared/concepts/change-notes/released/0.0.15.md create mode 100644 shared/controlflow/change-notes/released/2.0.25.md create mode 100644 shared/dataflow/change-notes/released/2.0.25.md create mode 100644 shared/mad/change-notes/released/1.0.41.md create mode 100644 shared/quantum/change-notes/released/0.0.19.md create mode 100644 shared/rangeanalysis/change-notes/released/1.0.41.md create mode 100644 shared/regex/change-notes/released/1.0.41.md create mode 100644 shared/ssa/change-notes/released/2.0.17.md create mode 100644 shared/threat-models/change-notes/released/1.0.41.md create mode 100644 shared/tutorial/change-notes/released/1.0.41.md create mode 100644 shared/typeflow/change-notes/released/1.0.41.md create mode 100644 shared/typeinference/change-notes/released/0.0.22.md create mode 100644 shared/typetracking/change-notes/released/2.0.25.md create mode 100644 shared/typos/change-notes/released/1.0.41.md create mode 100644 shared/util/change-notes/released/2.0.28.md create mode 100644 shared/xml/change-notes/released/1.0.41.md create mode 100644 shared/yaml/change-notes/released/1.0.41.md delete mode 100644 swift/ql/lib/change-notes/2026-01-16-summarized-callable.md rename go/ql/lib/change-notes/2026-01-16-summarized-callable.md => swift/ql/lib/change-notes/released/6.2.1.md (85%) create mode 100644 swift/ql/src/change-notes/released/1.2.15.md diff --git a/actions/ql/lib/CHANGELOG.md b/actions/ql/lib/CHANGELOG.md index 1759333d659d..d2e85ddb6a27 100644 --- a/actions/ql/lib/CHANGELOG.md +++ b/actions/ql/lib/CHANGELOG.md @@ -1,3 +1,9 @@ +## 0.4.27 + +### Bug Fixes + +* Fixed a crash when analysing a `${{ ... }}` expression over around 300 characters in length. + ## 0.4.26 ### Major Analysis Improvements diff --git a/actions/ql/lib/change-notes/2026-01-23-long-expression-fix.md b/actions/ql/lib/change-notes/released/0.4.27.md similarity index 78% rename from actions/ql/lib/change-notes/2026-01-23-long-expression-fix.md rename to actions/ql/lib/change-notes/released/0.4.27.md index 31adf6058a7d..d56c7bd36e89 100644 --- a/actions/ql/lib/change-notes/2026-01-23-long-expression-fix.md +++ b/actions/ql/lib/change-notes/released/0.4.27.md @@ -1,4 +1,5 @@ ---- -category: fix ---- +## 0.4.27 + +### Bug Fixes + * Fixed a crash when analysing a `${{ ... }}` expression over around 300 characters in length. diff --git a/actions/ql/lib/codeql-pack.release.yml b/actions/ql/lib/codeql-pack.release.yml index 06a4605c7674..5e24b634389f 100644 --- a/actions/ql/lib/codeql-pack.release.yml +++ b/actions/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.4.26 +lastReleaseVersion: 0.4.27 diff --git a/actions/ql/lib/qlpack.yml b/actions/ql/lib/qlpack.yml index 27d4fa665e9c..aa29568caf7c 100644 --- a/actions/ql/lib/qlpack.yml +++ b/actions/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-all -version: 0.4.27-dev +version: 0.4.27 library: true warnOnImplicitThis: true dependencies: diff --git a/actions/ql/src/CHANGELOG.md b/actions/ql/src/CHANGELOG.md index f667d2841851..ebf6b7214c99 100644 --- a/actions/ql/src/CHANGELOG.md +++ b/actions/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.6.19 + +No user-facing changes. + ## 0.6.18 No user-facing changes. diff --git a/actions/ql/src/change-notes/released/0.6.19.md b/actions/ql/src/change-notes/released/0.6.19.md new file mode 100644 index 000000000000..db142fe8aed1 --- /dev/null +++ b/actions/ql/src/change-notes/released/0.6.19.md @@ -0,0 +1,3 @@ +## 0.6.19 + +No user-facing changes. diff --git a/actions/ql/src/codeql-pack.release.yml b/actions/ql/src/codeql-pack.release.yml index b694a16787b1..2baec50a823b 100644 --- a/actions/ql/src/codeql-pack.release.yml +++ b/actions/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.6.18 +lastReleaseVersion: 0.6.19 diff --git a/actions/ql/src/qlpack.yml b/actions/ql/src/qlpack.yml index e93b555f030c..7b9f281601a7 100644 --- a/actions/ql/src/qlpack.yml +++ b/actions/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-queries -version: 0.6.19-dev +version: 0.6.19 library: false warnOnImplicitThis: true groups: [actions, queries] diff --git a/cpp/ql/lib/CHANGELOG.md b/cpp/ql/lib/CHANGELOG.md index a626fec99ae5..9aa9e9953b50 100644 --- a/cpp/ql/lib/CHANGELOG.md +++ b/cpp/ql/lib/CHANGELOG.md @@ -1,3 +1,21 @@ +## 7.1.0 + +### New Features + +* Added a subclass `Embed` of `PreprocessorDirective` for C23 and C++26 `#embed` preprocessor directives. +* Added modules `DataFlow::ParameterizedBarrierGuard` and `DataFlow::ParameterizedInstructionBarrierGuard`. These modules provide the same features as `DataFlow::BarrierGuard` and `DataFlow::InstructionBarrierGuard`, but allow for an additional parameter to support properly using them in dataflow configurations that uses flow states. + +### Minor Analysis Improvements + +* The `Buffer.qll` library will no longer report incorrect buffer sizes on certain malformed databases. As a result, the queries `cpp/static-buffer-overflow`, `cpp/overflow-buffer`, `cpp/badly-bounded-write`, `cpp/overrunning-write`, `cpp/overrunning-write-with-float`, and `cpp/very-likely-overrunning-write` will report fewer false positives on such databases. +* Added `taint` summary models and `sql-injection` barrier models for the mySQL `mysql_real_escape_string` and `mysql_real_escape_string_quote` escaping functions. +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. + +### Bug Fixes + +* Fixed a bug in the `GuardCondition` library which sometimes prevented binary logical operators from being recognized as guard conditions. As a result, queries using `GuardCondition` may see improved results. +* Fixed a bug which caused `Node.asDefinition()` to not have a result for certain assignments. + ## 7.0.0 ### Breaking Changes diff --git a/cpp/ql/lib/change-notes/2026-01-19-embed.md b/cpp/ql/lib/change-notes/2026-01-19-embed.md deleted file mode 100644 index 26d495277b5c..000000000000 --- a/cpp/ql/lib/change-notes/2026-01-19-embed.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: feature ---- -* Added a subclass `Embed` of `PreprocessorDirective` for C23 and C++26 `#embed` preprocessor directives. diff --git a/cpp/ql/lib/change-notes/2026-01-19-parameterized-barrier-guard.md b/cpp/ql/lib/change-notes/2026-01-19-parameterized-barrier-guard.md deleted file mode 100644 index 4f2d754c0b87..000000000000 --- a/cpp/ql/lib/change-notes/2026-01-19-parameterized-barrier-guard.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: feature ---- -* Added modules `DataFlow::ParameterizedBarrierGuard` and `DataFlow::ParameterizedInstructionBarrierGuard`. These modules provide the same features as `DataFlow::BarrierGuard` and `DataFlow::InstructionBarrierGuard`, but allow for an additional parameter to support properly using them in dataflow configurations that uses flow states. \ No newline at end of file diff --git a/cpp/ql/lib/change-notes/2026-01-23-as-definition.md b/cpp/ql/lib/change-notes/2026-01-23-as-definition.md deleted file mode 100644 index 1f18562cdcd7..000000000000 --- a/cpp/ql/lib/change-notes/2026-01-23-as-definition.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: fix ---- -* Fixed a bug which caused `Node.asDefinition()` to not have a result for certain assignments. \ No newline at end of file diff --git a/cpp/ql/lib/change-notes/2026-01-23-mysql.md b/cpp/ql/lib/change-notes/2026-01-23-mysql.md deleted file mode 100644 index ee4268f8152c..000000000000 --- a/cpp/ql/lib/change-notes/2026-01-23-mysql.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* Added `taint` summary models and `sql-injection` barrier models for the mySQL `mysql_real_escape_string` and `mysql_real_escape_string_quote` escaping functions. diff --git a/cpp/ql/lib/change-notes/2026-01-26-buffer-overflow-fps.md b/cpp/ql/lib/change-notes/2026-01-26-buffer-overflow-fps.md deleted file mode 100644 index ea9a5ccf7988..000000000000 --- a/cpp/ql/lib/change-notes/2026-01-26-buffer-overflow-fps.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* The `Buffer.qll` library will no longer report incorrect buffer sizes on certain malformed databases. As a result, the queries `cpp/static-buffer-overflow`, `cpp/overflow-buffer`, `cpp/badly-bounded-write`, `cpp/overrunning-write`, `cpp/overrunning-write-with-float`, and `cpp/very-likely-overrunning-write` will report fewer false positives on such databases. \ No newline at end of file diff --git a/cpp/ql/lib/change-notes/2026-01-30-guard-condition-logical-operators.md b/cpp/ql/lib/change-notes/2026-01-30-guard-condition-logical-operators.md deleted file mode 100644 index 646d9b3821f6..000000000000 --- a/cpp/ql/lib/change-notes/2026-01-30-guard-condition-logical-operators.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: fix ---- -* Fixed a bug in the `GuardCondition` library which sometimes prevented binary logical operators from being recognized as guard conditions. As a result, queries using `GuardCondition` may see improved results. \ No newline at end of file diff --git a/cpp/ql/lib/change-notes/released/7.1.0.md b/cpp/ql/lib/change-notes/released/7.1.0.md new file mode 100644 index 000000000000..7565cb4dab9e --- /dev/null +++ b/cpp/ql/lib/change-notes/released/7.1.0.md @@ -0,0 +1,17 @@ +## 7.1.0 + +### New Features + +* Added a subclass `Embed` of `PreprocessorDirective` for C23 and C++26 `#embed` preprocessor directives. +* Added modules `DataFlow::ParameterizedBarrierGuard` and `DataFlow::ParameterizedInstructionBarrierGuard`. These modules provide the same features as `DataFlow::BarrierGuard` and `DataFlow::InstructionBarrierGuard`, but allow for an additional parameter to support properly using them in dataflow configurations that uses flow states. + +### Minor Analysis Improvements + +* The `Buffer.qll` library will no longer report incorrect buffer sizes on certain malformed databases. As a result, the queries `cpp/static-buffer-overflow`, `cpp/overflow-buffer`, `cpp/badly-bounded-write`, `cpp/overrunning-write`, `cpp/overrunning-write-with-float`, and `cpp/very-likely-overrunning-write` will report fewer false positives on such databases. +* Added `taint` summary models and `sql-injection` barrier models for the mySQL `mysql_real_escape_string` and `mysql_real_escape_string_quote` escaping functions. +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. + +### Bug Fixes + +* Fixed a bug in the `GuardCondition` library which sometimes prevented binary logical operators from being recognized as guard conditions. As a result, queries using `GuardCondition` may see improved results. +* Fixed a bug which caused `Node.asDefinition()` to not have a result for certain assignments. diff --git a/cpp/ql/lib/codeql-pack.release.yml b/cpp/ql/lib/codeql-pack.release.yml index e0db21c78694..dcaaa76112a6 100644 --- a/cpp/ql/lib/codeql-pack.release.yml +++ b/cpp/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 7.0.0 +lastReleaseVersion: 7.1.0 diff --git a/cpp/ql/lib/qlpack.yml b/cpp/ql/lib/qlpack.yml index 4ee4779041d3..ac07194106ad 100644 --- a/cpp/ql/lib/qlpack.yml +++ b/cpp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-all -version: 7.0.1-dev +version: 7.1.0 groups: cpp dbscheme: semmlecode.cpp.dbscheme extractor: cpp diff --git a/cpp/ql/src/CHANGELOG.md b/cpp/ql/src/CHANGELOG.md index 02a055ee266c..61792c6a700b 100644 --- a/cpp/ql/src/CHANGELOG.md +++ b/cpp/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.5.10 + +No user-facing changes. + ## 1.5.9 ### Minor Analysis Improvements diff --git a/cpp/ql/src/change-notes/released/1.5.10.md b/cpp/ql/src/change-notes/released/1.5.10.md new file mode 100644 index 000000000000..829c5f1f1a1a --- /dev/null +++ b/cpp/ql/src/change-notes/released/1.5.10.md @@ -0,0 +1,3 @@ +## 1.5.10 + +No user-facing changes. diff --git a/cpp/ql/src/codeql-pack.release.yml b/cpp/ql/src/codeql-pack.release.yml index 5ac7d08bfbfc..fda54b31bffb 100644 --- a/cpp/ql/src/codeql-pack.release.yml +++ b/cpp/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.5.9 +lastReleaseVersion: 1.5.10 diff --git a/cpp/ql/src/qlpack.yml b/cpp/ql/src/qlpack.yml index 30fd4696695f..232836a053d8 100644 --- a/cpp/ql/src/qlpack.yml +++ b/cpp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-queries -version: 1.5.10-dev +version: 1.5.10 groups: - cpp - queries diff --git a/csharp/ql/campaigns/Solorigate/lib/CHANGELOG.md b/csharp/ql/campaigns/Solorigate/lib/CHANGELOG.md index 029e03a4c9e6..68238efa1101 100644 --- a/csharp/ql/campaigns/Solorigate/lib/CHANGELOG.md +++ b/csharp/ql/campaigns/Solorigate/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.7.58 + +No user-facing changes. + ## 1.7.57 No user-facing changes. diff --git a/csharp/ql/campaigns/Solorigate/lib/change-notes/released/1.7.58.md b/csharp/ql/campaigns/Solorigate/lib/change-notes/released/1.7.58.md new file mode 100644 index 000000000000..b6b1debf611f --- /dev/null +++ b/csharp/ql/campaigns/Solorigate/lib/change-notes/released/1.7.58.md @@ -0,0 +1,3 @@ +## 1.7.58 + +No user-facing changes. diff --git a/csharp/ql/campaigns/Solorigate/lib/codeql-pack.release.yml b/csharp/ql/campaigns/Solorigate/lib/codeql-pack.release.yml index 4b2fd88d6a3e..422196097f2a 100644 --- a/csharp/ql/campaigns/Solorigate/lib/codeql-pack.release.yml +++ b/csharp/ql/campaigns/Solorigate/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.7.57 +lastReleaseVersion: 1.7.58 diff --git a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml index 59e35f8f8a24..09feed992650 100644 --- a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-all -version: 1.7.58-dev +version: 1.7.58 groups: - csharp - solorigate diff --git a/csharp/ql/campaigns/Solorigate/src/CHANGELOG.md b/csharp/ql/campaigns/Solorigate/src/CHANGELOG.md index 029e03a4c9e6..68238efa1101 100644 --- a/csharp/ql/campaigns/Solorigate/src/CHANGELOG.md +++ b/csharp/ql/campaigns/Solorigate/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.7.58 + +No user-facing changes. + ## 1.7.57 No user-facing changes. diff --git a/csharp/ql/campaigns/Solorigate/src/change-notes/released/1.7.58.md b/csharp/ql/campaigns/Solorigate/src/change-notes/released/1.7.58.md new file mode 100644 index 000000000000..b6b1debf611f --- /dev/null +++ b/csharp/ql/campaigns/Solorigate/src/change-notes/released/1.7.58.md @@ -0,0 +1,3 @@ +## 1.7.58 + +No user-facing changes. diff --git a/csharp/ql/campaigns/Solorigate/src/codeql-pack.release.yml b/csharp/ql/campaigns/Solorigate/src/codeql-pack.release.yml index 4b2fd88d6a3e..422196097f2a 100644 --- a/csharp/ql/campaigns/Solorigate/src/codeql-pack.release.yml +++ b/csharp/ql/campaigns/Solorigate/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.7.57 +lastReleaseVersion: 1.7.58 diff --git a/csharp/ql/campaigns/Solorigate/src/qlpack.yml b/csharp/ql/campaigns/Solorigate/src/qlpack.yml index a37381968efa..6f7ea3b625bf 100644 --- a/csharp/ql/campaigns/Solorigate/src/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-queries -version: 1.7.58-dev +version: 1.7.58 groups: - csharp - solorigate diff --git a/csharp/ql/lib/CHANGELOG.md b/csharp/ql/lib/CHANGELOG.md index 371e10c370a3..2910824c1b72 100644 --- a/csharp/ql/lib/CHANGELOG.md +++ b/csharp/ql/lib/CHANGELOG.md @@ -1,3 +1,10 @@ +## 5.4.6 + +### Minor Analysis Improvements + +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. +* C# 14: Support for null-conditional assignments (such as `c?.Prop = p`). Furthermore, the `MaybeNullExpr` class now takes null-conditional access (such as `?.`) into account when modeling potential null values. + ## 5.4.5 ### Minor Analysis Improvements diff --git a/csharp/ql/lib/change-notes/2026-01-14-null-conditional-assignments.md b/csharp/ql/lib/change-notes/2026-01-14-null-conditional-assignments.md deleted file mode 100644 index ebce4c187e02..000000000000 --- a/csharp/ql/lib/change-notes/2026-01-14-null-conditional-assignments.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* C# 14: Support for null-conditional assignments (such as `c?.Prop = p`). Furthermore, the `MaybeNullExpr` class now takes null-conditional access (such as `?.`) into account when modeling potential null values. diff --git a/csharp/ql/lib/change-notes/2026-01-16-summarized-callable.md b/csharp/ql/lib/change-notes/2026-01-16-summarized-callable.md deleted file mode 100644 index 02c453207d4d..000000000000 --- a/csharp/ql/lib/change-notes/2026-01-16-summarized-callable.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. \ No newline at end of file diff --git a/csharp/ql/lib/change-notes/released/5.4.6.md b/csharp/ql/lib/change-notes/released/5.4.6.md new file mode 100644 index 000000000000..31fab7d4be88 --- /dev/null +++ b/csharp/ql/lib/change-notes/released/5.4.6.md @@ -0,0 +1,6 @@ +## 5.4.6 + +### Minor Analysis Improvements + +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. +* C# 14: Support for null-conditional assignments (such as `c?.Prop = p`). Furthermore, the `MaybeNullExpr` class now takes null-conditional access (such as `?.`) into account when modeling potential null values. diff --git a/csharp/ql/lib/codeql-pack.release.yml b/csharp/ql/lib/codeql-pack.release.yml index e79e40bd1d84..2f1d6ff78a82 100644 --- a/csharp/ql/lib/codeql-pack.release.yml +++ b/csharp/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 5.4.5 +lastReleaseVersion: 5.4.6 diff --git a/csharp/ql/lib/qlpack.yml b/csharp/ql/lib/qlpack.yml index 235030e26015..28d4a36b3ab7 100644 --- a/csharp/ql/lib/qlpack.yml +++ b/csharp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-all -version: 5.4.6-dev +version: 5.4.6 groups: csharp dbscheme: semmlecode.csharp.dbscheme extractor: csharp diff --git a/csharp/ql/src/CHANGELOG.md b/csharp/ql/src/CHANGELOG.md index b3c3276ae5cc..d532951fadc8 100644 --- a/csharp/ql/src/CHANGELOG.md +++ b/csharp/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.6.1 + +No user-facing changes. + ## 1.6.0 ### Query Metadata Changes diff --git a/csharp/ql/src/change-notes/released/1.6.1.md b/csharp/ql/src/change-notes/released/1.6.1.md new file mode 100644 index 000000000000..898f6201ed73 --- /dev/null +++ b/csharp/ql/src/change-notes/released/1.6.1.md @@ -0,0 +1,3 @@ +## 1.6.1 + +No user-facing changes. diff --git a/csharp/ql/src/codeql-pack.release.yml b/csharp/ql/src/codeql-pack.release.yml index c4f0b07d5336..ef7a789e0cf1 100644 --- a/csharp/ql/src/codeql-pack.release.yml +++ b/csharp/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.6.0 +lastReleaseVersion: 1.6.1 diff --git a/csharp/ql/src/qlpack.yml b/csharp/ql/src/qlpack.yml index 2ea09521187e..85d9dbf9ead1 100644 --- a/csharp/ql/src/qlpack.yml +++ b/csharp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-queries -version: 1.6.1-dev +version: 1.6.1 groups: - csharp - queries diff --git a/go/ql/consistency-queries/CHANGELOG.md b/go/ql/consistency-queries/CHANGELOG.md index 8718668249fd..d0c8171cdf67 100644 --- a/go/ql/consistency-queries/CHANGELOG.md +++ b/go/ql/consistency-queries/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.41 + +No user-facing changes. + ## 1.0.40 No user-facing changes. diff --git a/go/ql/consistency-queries/change-notes/released/1.0.41.md b/go/ql/consistency-queries/change-notes/released/1.0.41.md new file mode 100644 index 000000000000..b9e9f7a5c44d --- /dev/null +++ b/go/ql/consistency-queries/change-notes/released/1.0.41.md @@ -0,0 +1,3 @@ +## 1.0.41 + +No user-facing changes. diff --git a/go/ql/consistency-queries/codeql-pack.release.yml b/go/ql/consistency-queries/codeql-pack.release.yml index 326e4b5da674..d496eab6eb95 100644 --- a/go/ql/consistency-queries/codeql-pack.release.yml +++ b/go/ql/consistency-queries/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.40 +lastReleaseVersion: 1.0.41 diff --git a/go/ql/consistency-queries/qlpack.yml b/go/ql/consistency-queries/qlpack.yml index b164141b8281..c07633f30b96 100644 --- a/go/ql/consistency-queries/qlpack.yml +++ b/go/ql/consistency-queries/qlpack.yml @@ -1,5 +1,5 @@ name: codeql-go-consistency-queries -version: 1.0.41-dev +version: 1.0.41 groups: - go - queries diff --git a/go/ql/lib/CHANGELOG.md b/go/ql/lib/CHANGELOG.md index 97391d2342af..126058537cef 100644 --- a/go/ql/lib/CHANGELOG.md +++ b/go/ql/lib/CHANGELOG.md @@ -1,3 +1,9 @@ +## 6.0.1 + +### Minor Analysis Improvements + +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. + ## 6.0.0 ### Breaking Changes diff --git a/javascript/ql/lib/change-notes/2026-01-16-summarized-callable.md b/go/ql/lib/change-notes/released/6.0.1.md similarity index 85% rename from javascript/ql/lib/change-notes/2026-01-16-summarized-callable.md rename to go/ql/lib/change-notes/released/6.0.1.md index b6e5101617ed..7b5e8dad5a86 100644 --- a/javascript/ql/lib/change-notes/2026-01-16-summarized-callable.md +++ b/go/ql/lib/change-notes/released/6.0.1.md @@ -1,4 +1,5 @@ ---- -category: minorAnalysis ---- +## 6.0.1 + +### Minor Analysis Improvements + * The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/go/ql/lib/codeql-pack.release.yml b/go/ql/lib/codeql-pack.release.yml index f8c4fa43ccb7..d1f3c68c8120 100644 --- a/go/ql/lib/codeql-pack.release.yml +++ b/go/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 6.0.0 +lastReleaseVersion: 6.0.1 diff --git a/go/ql/lib/qlpack.yml b/go/ql/lib/qlpack.yml index 669112f115df..af34da5d7d5a 100644 --- a/go/ql/lib/qlpack.yml +++ b/go/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-all -version: 6.0.1-dev +version: 6.0.1 groups: go dbscheme: go.dbscheme extractor: go diff --git a/go/ql/src/CHANGELOG.md b/go/ql/src/CHANGELOG.md index 8a2f1355eec8..f2475a92207c 100644 --- a/go/ql/src/CHANGELOG.md +++ b/go/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.5.5 + +No user-facing changes. + ## 1.5.4 No user-facing changes. diff --git a/go/ql/src/change-notes/released/1.5.5.md b/go/ql/src/change-notes/released/1.5.5.md new file mode 100644 index 000000000000..76d0ac894891 --- /dev/null +++ b/go/ql/src/change-notes/released/1.5.5.md @@ -0,0 +1,3 @@ +## 1.5.5 + +No user-facing changes. diff --git a/go/ql/src/codeql-pack.release.yml b/go/ql/src/codeql-pack.release.yml index c216828ee1c3..1c73e9d9ce9e 100644 --- a/go/ql/src/codeql-pack.release.yml +++ b/go/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.5.4 +lastReleaseVersion: 1.5.5 diff --git a/go/ql/src/qlpack.yml b/go/ql/src/qlpack.yml index da64d00094fa..20e25202476b 100644 --- a/go/ql/src/qlpack.yml +++ b/go/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-queries -version: 1.5.5-dev +version: 1.5.5 groups: - go - queries diff --git a/java/ql/lib/CHANGELOG.md b/java/ql/lib/CHANGELOG.md index cd0db2ab96f5..a100137879d1 100644 --- a/java/ql/lib/CHANGELOG.md +++ b/java/ql/lib/CHANGELOG.md @@ -1,3 +1,24 @@ +## 8.0.0 + +### Breaking Changes + +* Support for Kotlin 1.6.x and 1.7.x series has been dropped + +### New Features + +* Kotlin versions up to 2.3.0\ *x* are now supported. + +### Minor Analysis Improvements + +* Added support for Struts 7.x package names in the Struts framework library. The library now recognizes both the legacy `com.opensymphony.xwork2` package names (Struts 2.x-6.x) and the new `org.apache.struts2` package names (Struts 7.x+), maintaining backward compatibility while enabling analysis of code using the latest Struts versions. +* The query `java/unreleased-lock` no longer applies to lock types with names ending in "Pool", as these typically manage a collection of resources and the `lock` and `unlock` methods typically only lock one resource at a time. This may lead to a reduction in false positives. +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. +* When Maven-compatible private package registries are configured for an organisation for Default Setup, CodeQL will now configure Maven to also use these as plugin repositories. CodeQL previously already configured Maven to use them as regular package repositories. This should now allow Maven plugins to be obtained from private registries. + +### Bug Fixes + +* Kotlin: The Kotlin extractor now registers as the last IR generation extension, ensuring that code generated by other compiler plugins (such as kotlinx.serialization) is correctly captured. + ## 7.8.4 ### Minor Analysis Improvements diff --git a/java/ql/lib/change-notes/2026-01-07-kotlin-2_3.md b/java/ql/lib/change-notes/2026-01-07-kotlin-2_3.md deleted file mode 100644 index 82253f0e5e8c..000000000000 --- a/java/ql/lib/change-notes/2026-01-07-kotlin-2_3.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: feature ---- -* Kotlin versions up to 2.3.0\ *x* are now supported. diff --git a/java/ql/lib/change-notes/2026-01-07-kotlin-mimimum_suppoted_version.md b/java/ql/lib/change-notes/2026-01-07-kotlin-mimimum_suppoted_version.md deleted file mode 100644 index 6877579f6c67..000000000000 --- a/java/ql/lib/change-notes/2026-01-07-kotlin-mimimum_suppoted_version.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: breaking ---- -* Support for Kotlin 1.6.x and 1.7.x series has been dropped diff --git a/java/ql/lib/change-notes/2026-01-09-maven-plugin-registries.md b/java/ql/lib/change-notes/2026-01-09-maven-plugin-registries.md deleted file mode 100644 index d3d42e9325b8..000000000000 --- a/java/ql/lib/change-notes/2026-01-09-maven-plugin-registries.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* When Maven-compatible private package registries are configured for an organisation for Default Setup, CodeQL will now configure Maven to also use these as plugin repositories. CodeQL previously already configured Maven to use them as regular package repositories. This should now allow Maven plugins to be obtained from private registries. diff --git a/java/ql/lib/change-notes/2026-01-26-kotlin-extractor-load-last.md b/java/ql/lib/change-notes/2026-01-26-kotlin-extractor-load-last.md deleted file mode 100644 index e6b496073b9c..000000000000 --- a/java/ql/lib/change-notes/2026-01-26-kotlin-extractor-load-last.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: fix ---- -* Kotlin: The Kotlin extractor now registers as the last IR generation extension, ensuring that code generated by other compiler plugins (such as kotlinx.serialization) is correctly captured. diff --git a/java/ql/lib/change-notes/2026-01-27-struts-7-support.md b/java/ql/lib/change-notes/2026-01-27-struts-7-support.md deleted file mode 100644 index a94a03567ee2..000000000000 --- a/java/ql/lib/change-notes/2026-01-27-struts-7-support.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* Added support for Struts 7.x package names in the Struts framework library. The library now recognizes both the legacy `com.opensymphony.xwork2` package names (Struts 2.x-6.x) and the new `org.apache.struts2` package names (Struts 7.x+), maintaining backward compatibility while enabling analysis of code using the latest Struts versions. diff --git a/java/ql/lib/change-notes/2026-01-27-unreleased-lock-pools.md b/java/ql/lib/change-notes/2026-01-27-unreleased-lock-pools.md deleted file mode 100644 index 6ac8a19a7622..000000000000 --- a/java/ql/lib/change-notes/2026-01-27-unreleased-lock-pools.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* The query `java/unreleased-lock` no longer applies to lock types with names ending in "Pool", as these typically manage a collection of resources and the `lock` and `unlock` methods typically only lock one resource at a time. This may lead to a reduction in false positives. diff --git a/java/ql/lib/change-notes/released/8.0.0.md b/java/ql/lib/change-notes/released/8.0.0.md new file mode 100644 index 000000000000..cf6f8f52f97f --- /dev/null +++ b/java/ql/lib/change-notes/released/8.0.0.md @@ -0,0 +1,20 @@ +## 8.0.0 + +### Breaking Changes + +* Support for Kotlin 1.6.x and 1.7.x series has been dropped + +### New Features + +* Kotlin versions up to 2.3.0\ *x* are now supported. + +### Minor Analysis Improvements + +* Added support for Struts 7.x package names in the Struts framework library. The library now recognizes both the legacy `com.opensymphony.xwork2` package names (Struts 2.x-6.x) and the new `org.apache.struts2` package names (Struts 7.x+), maintaining backward compatibility while enabling analysis of code using the latest Struts versions. +* The query `java/unreleased-lock` no longer applies to lock types with names ending in "Pool", as these typically manage a collection of resources and the `lock` and `unlock` methods typically only lock one resource at a time. This may lead to a reduction in false positives. +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. +* When Maven-compatible private package registries are configured for an organisation for Default Setup, CodeQL will now configure Maven to also use these as plugin repositories. CodeQL previously already configured Maven to use them as regular package repositories. This should now allow Maven plugins to be obtained from private registries. + +### Bug Fixes + +* Kotlin: The Kotlin extractor now registers as the last IR generation extension, ensuring that code generated by other compiler plugins (such as kotlinx.serialization) is correctly captured. diff --git a/java/ql/lib/codeql-pack.release.yml b/java/ql/lib/codeql-pack.release.yml index c8145c25bf66..0f48687270dc 100644 --- a/java/ql/lib/codeql-pack.release.yml +++ b/java/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 7.8.4 +lastReleaseVersion: 8.0.0 diff --git a/java/ql/lib/qlpack.yml b/java/ql/lib/qlpack.yml index 37de3eb6f72e..eb1a7f632c7f 100644 --- a/java/ql/lib/qlpack.yml +++ b/java/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-all -version: 7.8.5-dev +version: 8.0.0 groups: java dbscheme: config/semmlecode.dbscheme extractor: java diff --git a/java/ql/src/CHANGELOG.md b/java/ql/src/CHANGELOG.md index 113c024d14a2..a7307229a499 100644 --- a/java/ql/src/CHANGELOG.md +++ b/java/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.10.6 + +No user-facing changes. + ## 1.10.5 ### Minor Analysis Improvements diff --git a/java/ql/src/change-notes/released/1.10.6.md b/java/ql/src/change-notes/released/1.10.6.md new file mode 100644 index 000000000000..eb53de204df9 --- /dev/null +++ b/java/ql/src/change-notes/released/1.10.6.md @@ -0,0 +1,3 @@ +## 1.10.6 + +No user-facing changes. diff --git a/java/ql/src/codeql-pack.release.yml b/java/ql/src/codeql-pack.release.yml index 2b3096747d57..4e10f150f2e7 100644 --- a/java/ql/src/codeql-pack.release.yml +++ b/java/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.10.5 +lastReleaseVersion: 1.10.6 diff --git a/java/ql/src/qlpack.yml b/java/ql/src/qlpack.yml index 54fa90952dd2..570c8bf7e184 100644 --- a/java/ql/src/qlpack.yml +++ b/java/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-queries -version: 1.10.6-dev +version: 1.10.6 groups: - java - queries diff --git a/javascript/ql/lib/CHANGELOG.md b/javascript/ql/lib/CHANGELOG.md index 08f8bb5fbb26..c599ea0799bd 100644 --- a/javascript/ql/lib/CHANGELOG.md +++ b/javascript/ql/lib/CHANGELOG.md @@ -1,3 +1,9 @@ +## 2.6.21 + +### Minor Analysis Improvements + +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. + ## 2.6.20 ### Minor Analysis Improvements diff --git a/java/ql/lib/change-notes/2026-01-16-summarized-callable.md b/javascript/ql/lib/change-notes/released/2.6.21.md similarity index 85% rename from java/ql/lib/change-notes/2026-01-16-summarized-callable.md rename to javascript/ql/lib/change-notes/released/2.6.21.md index b6e5101617ed..4307ee556052 100644 --- a/java/ql/lib/change-notes/2026-01-16-summarized-callable.md +++ b/javascript/ql/lib/change-notes/released/2.6.21.md @@ -1,4 +1,5 @@ ---- -category: minorAnalysis ---- +## 2.6.21 + +### Minor Analysis Improvements + * The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/javascript/ql/lib/codeql-pack.release.yml b/javascript/ql/lib/codeql-pack.release.yml index 3c7db9023cc3..872f4f9807c1 100644 --- a/javascript/ql/lib/codeql-pack.release.yml +++ b/javascript/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.6.20 +lastReleaseVersion: 2.6.21 diff --git a/javascript/ql/lib/qlpack.yml b/javascript/ql/lib/qlpack.yml index b9abf987afb6..2e54148b68c4 100644 --- a/javascript/ql/lib/qlpack.yml +++ b/javascript/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-all -version: 2.6.21-dev +version: 2.6.21 groups: javascript dbscheme: semmlecode.javascript.dbscheme extractor: javascript diff --git a/javascript/ql/src/CHANGELOG.md b/javascript/ql/src/CHANGELOG.md index d3a5bfa8f82a..50da6325746f 100644 --- a/javascript/ql/src/CHANGELOG.md +++ b/javascript/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.3.1 + +No user-facing changes. + ## 2.3.0 ### Major Analysis Improvements diff --git a/javascript/ql/src/change-notes/released/2.3.1.md b/javascript/ql/src/change-notes/released/2.3.1.md new file mode 100644 index 000000000000..af7c45e68fa9 --- /dev/null +++ b/javascript/ql/src/change-notes/released/2.3.1.md @@ -0,0 +1,3 @@ +## 2.3.1 + +No user-facing changes. diff --git a/javascript/ql/src/codeql-pack.release.yml b/javascript/ql/src/codeql-pack.release.yml index 5936154675ae..530699ffeccb 100644 --- a/javascript/ql/src/codeql-pack.release.yml +++ b/javascript/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.3.0 +lastReleaseVersion: 2.3.1 diff --git a/javascript/ql/src/qlpack.yml b/javascript/ql/src/qlpack.yml index 9eb734b9d11a..ad56a74e9b5d 100644 --- a/javascript/ql/src/qlpack.yml +++ b/javascript/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-queries -version: 2.3.1-dev +version: 2.3.1 groups: - javascript - queries diff --git a/misc/suite-helpers/CHANGELOG.md b/misc/suite-helpers/CHANGELOG.md index 3fa0771beca0..0d796d324391 100644 --- a/misc/suite-helpers/CHANGELOG.md +++ b/misc/suite-helpers/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.41 + +No user-facing changes. + ## 1.0.40 No user-facing changes. diff --git a/misc/suite-helpers/change-notes/released/1.0.41.md b/misc/suite-helpers/change-notes/released/1.0.41.md new file mode 100644 index 000000000000..b9e9f7a5c44d --- /dev/null +++ b/misc/suite-helpers/change-notes/released/1.0.41.md @@ -0,0 +1,3 @@ +## 1.0.41 + +No user-facing changes. diff --git a/misc/suite-helpers/codeql-pack.release.yml b/misc/suite-helpers/codeql-pack.release.yml index 326e4b5da674..d496eab6eb95 100644 --- a/misc/suite-helpers/codeql-pack.release.yml +++ b/misc/suite-helpers/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.40 +lastReleaseVersion: 1.0.41 diff --git a/misc/suite-helpers/qlpack.yml b/misc/suite-helpers/qlpack.yml index b01f97237d37..4a0344c0f0f8 100644 --- a/misc/suite-helpers/qlpack.yml +++ b/misc/suite-helpers/qlpack.yml @@ -1,4 +1,4 @@ name: codeql/suite-helpers -version: 1.0.41-dev +version: 1.0.41 groups: shared warnOnImplicitThis: true diff --git a/python/ql/lib/CHANGELOG.md b/python/ql/lib/CHANGELOG.md index ee4f1b529e36..a273dc2628b2 100644 --- a/python/ql/lib/CHANGELOG.md +++ b/python/ql/lib/CHANGELOG.md @@ -1,3 +1,16 @@ +## 6.1.0 + +### New Features + +* It is now possible to refer to list elements in the Python models-as-data language, via the `ListElement` path. + +### Minor Analysis Improvements + +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. +* Added experimental query `py/prompt-injection` to detect potential prompt injection vulnerabilities in code using LLMs. +* Added taint flow model and type model for `agents` and `openai` modules. +* Remote flow sources for the `websockets` package have been modeled. + ## 6.0.0 ### Breaking Changes diff --git a/python/ql/lib/change-notes/2025-12-01-websockets.md b/python/ql/lib/change-notes/2025-12-01-websockets.md deleted file mode 100644 index 6b4db223d7b3..000000000000 --- a/python/ql/lib/change-notes/2025-12-01-websockets.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* Remote flow sources for the `websockets` package have been modeled. \ No newline at end of file diff --git a/python/ql/lib/change-notes/2026-01-02-prompt-injection.md b/python/ql/lib/change-notes/2026-01-02-prompt-injection.md deleted file mode 100644 index 21f04216ecbc..000000000000 --- a/python/ql/lib/change-notes/2026-01-02-prompt-injection.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -category: minorAnalysis ---- -* Added experimental query `py/prompt-injection` to detect potential prompt injection vulnerabilities in code using LLMs. -* Added taint flow model and type model for `agents` and `openai` modules. \ No newline at end of file diff --git a/python/ql/lib/change-notes/2026-01-16-summarized-callable.md b/python/ql/lib/change-notes/2026-01-16-summarized-callable.md deleted file mode 100644 index b6e5101617ed..000000000000 --- a/python/ql/lib/change-notes/2026-01-16-summarized-callable.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/python/ql/lib/change-notes/2026-01-20-support-ListElement-in-python-MaD.md b/python/ql/lib/change-notes/2026-01-20-support-ListElement-in-python-MaD.md deleted file mode 100644 index cf51193efe9b..000000000000 --- a/python/ql/lib/change-notes/2026-01-20-support-ListElement-in-python-MaD.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: feature ---- -* It is now possible to refer to list elements in the Python models-as-data language, via the `ListElement` path. diff --git a/python/ql/lib/change-notes/released/6.1.0.md b/python/ql/lib/change-notes/released/6.1.0.md new file mode 100644 index 000000000000..633ade1f67c1 --- /dev/null +++ b/python/ql/lib/change-notes/released/6.1.0.md @@ -0,0 +1,12 @@ +## 6.1.0 + +### New Features + +* It is now possible to refer to list elements in the Python models-as-data language, via the `ListElement` path. + +### Minor Analysis Improvements + +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. +* Added experimental query `py/prompt-injection` to detect potential prompt injection vulnerabilities in code using LLMs. +* Added taint flow model and type model for `agents` and `openai` modules. +* Remote flow sources for the `websockets` package have been modeled. diff --git a/python/ql/lib/codeql-pack.release.yml b/python/ql/lib/codeql-pack.release.yml index f8c4fa43ccb7..22247782f3e5 100644 --- a/python/ql/lib/codeql-pack.release.yml +++ b/python/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 6.0.0 +lastReleaseVersion: 6.1.0 diff --git a/python/ql/lib/qlpack.yml b/python/ql/lib/qlpack.yml index ff6a730a2ea3..db127bd57920 100644 --- a/python/ql/lib/qlpack.yml +++ b/python/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-all -version: 6.0.1-dev +version: 6.1.0 groups: python dbscheme: semmlecode.python.dbscheme extractor: python diff --git a/python/ql/src/CHANGELOG.md b/python/ql/src/CHANGELOG.md index 9b09127c0ae7..3f9a869decca 100644 --- a/python/ql/src/CHANGELOG.md +++ b/python/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.7.6 + +No user-facing changes. + ## 1.7.5 No user-facing changes. diff --git a/python/ql/src/change-notes/released/1.7.6.md b/python/ql/src/change-notes/released/1.7.6.md new file mode 100644 index 000000000000..fe2a0f02e7e9 --- /dev/null +++ b/python/ql/src/change-notes/released/1.7.6.md @@ -0,0 +1,3 @@ +## 1.7.6 + +No user-facing changes. diff --git a/python/ql/src/codeql-pack.release.yml b/python/ql/src/codeql-pack.release.yml index 83aebd7c12a0..1f68518dba9b 100644 --- a/python/ql/src/codeql-pack.release.yml +++ b/python/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.7.5 +lastReleaseVersion: 1.7.6 diff --git a/python/ql/src/qlpack.yml b/python/ql/src/qlpack.yml index 8b797e76e6a3..5725ef1f6644 100644 --- a/python/ql/src/qlpack.yml +++ b/python/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-queries -version: 1.7.6-dev +version: 1.7.6 groups: - python - queries diff --git a/ruby/ql/lib/CHANGELOG.md b/ruby/ql/lib/CHANGELOG.md index e6150ac44bc0..408f2f3144f1 100644 --- a/ruby/ql/lib/CHANGELOG.md +++ b/ruby/ql/lib/CHANGELOG.md @@ -1,3 +1,9 @@ +## 5.1.9 + +### Minor Analysis Improvements + +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. + ## 5.1.8 No user-facing changes. diff --git a/ruby/ql/lib/change-notes/2026-01-16-summarized-callable.md b/ruby/ql/lib/change-notes/2026-01-16-summarized-callable.md deleted file mode 100644 index b6e5101617ed..000000000000 --- a/ruby/ql/lib/change-notes/2026-01-16-summarized-callable.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/cpp/ql/lib/change-notes/2026-01-16-summarized-callable.md b/ruby/ql/lib/change-notes/released/5.1.9.md similarity index 85% rename from cpp/ql/lib/change-notes/2026-01-16-summarized-callable.md rename to ruby/ql/lib/change-notes/released/5.1.9.md index b6e5101617ed..5455fb9f5e21 100644 --- a/cpp/ql/lib/change-notes/2026-01-16-summarized-callable.md +++ b/ruby/ql/lib/change-notes/released/5.1.9.md @@ -1,4 +1,5 @@ ---- -category: minorAnalysis ---- +## 5.1.9 + +### Minor Analysis Improvements + * The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/ruby/ql/lib/codeql-pack.release.yml b/ruby/ql/lib/codeql-pack.release.yml index 8ffbb79d2249..f9bf26052618 100644 --- a/ruby/ql/lib/codeql-pack.release.yml +++ b/ruby/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 5.1.8 +lastReleaseVersion: 5.1.9 diff --git a/ruby/ql/lib/qlpack.yml b/ruby/ql/lib/qlpack.yml index 1a0515cc7766..6a48d4be1a25 100644 --- a/ruby/ql/lib/qlpack.yml +++ b/ruby/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-all -version: 5.1.9-dev +version: 5.1.9 groups: ruby extractor: ruby dbscheme: ruby.dbscheme diff --git a/ruby/ql/src/CHANGELOG.md b/ruby/ql/src/CHANGELOG.md index 43e207937df8..fd5b24f166e5 100644 --- a/ruby/ql/src/CHANGELOG.md +++ b/ruby/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.5.6 + +No user-facing changes. + ## 1.5.5 No user-facing changes. diff --git a/ruby/ql/src/change-notes/released/1.5.6.md b/ruby/ql/src/change-notes/released/1.5.6.md new file mode 100644 index 000000000000..17fb577dc9e3 --- /dev/null +++ b/ruby/ql/src/change-notes/released/1.5.6.md @@ -0,0 +1,3 @@ +## 1.5.6 + +No user-facing changes. diff --git a/ruby/ql/src/codeql-pack.release.yml b/ruby/ql/src/codeql-pack.release.yml index 1c73e9d9ce9e..9a0b3c9461b0 100644 --- a/ruby/ql/src/codeql-pack.release.yml +++ b/ruby/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.5.5 +lastReleaseVersion: 1.5.6 diff --git a/ruby/ql/src/qlpack.yml b/ruby/ql/src/qlpack.yml index 8534baf24823..a14269c692a9 100644 --- a/ruby/ql/src/qlpack.yml +++ b/ruby/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-queries -version: 1.5.6-dev +version: 1.5.6 groups: - ruby - queries diff --git a/rust/ql/lib/CHANGELOG.md b/rust/ql/lib/CHANGELOG.md index c06726370dfd..b913efd02f06 100644 --- a/rust/ql/lib/CHANGELOG.md +++ b/rust/ql/lib/CHANGELOG.md @@ -1,3 +1,10 @@ +## 0.2.5 + +### Minor Analysis Improvements + +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. +* Added type inference support for the `FnMut(..) -> ..` and `Fn(..) -> ..` traits. They now work in type parameter bounds and are implemented by closures. + ## 0.2.4 ### Minor Analysis Improvements @@ -6,7 +13,7 @@ * Renamed the `Adt` class to `TypeItem` and moved common predicates from `Struct`, `Enum`, and `Union` to `TypeItem`. * Added models for the Axum web application framework. * Reading content of a value now carries taint if the value itself is tainted. For instance, if `s` is tainted then `s.field` is also tainted. This generally improves taint flow. -* The call graph is now more precise for calls that target a trait function with a default implemention. This reduces the number of false positives for data flow queries. +* The call graph is now more precise for calls that target a trait function with a default implementation. This reduces the number of false positives for data flow queries. * Improved type inference for raw pointers (`*const` and `*mut`). This includes type inference for the raw borrow operators (`&raw const` and `&raw mut`) and dereferencing of raw pointers. ## 0.2.3 diff --git a/rust/ql/lib/change-notes/2026-01-16-summarized-callable.md b/rust/ql/lib/change-notes/2026-01-16-summarized-callable.md deleted file mode 100644 index b6e5101617ed..000000000000 --- a/rust/ql/lib/change-notes/2026-01-16-summarized-callable.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/rust/ql/lib/change-notes/2026-01-16-type-inference-closures.md b/rust/ql/lib/change-notes/2026-01-16-type-inference-closures.md deleted file mode 100644 index 1e093b74dbe9..000000000000 --- a/rust/ql/lib/change-notes/2026-01-16-type-inference-closures.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* Added type inference support for the `FnMut(..) -> ..` and `Fn(..) -> ..` traits. They now work in type parameter bounds and are implemented by closures. \ No newline at end of file diff --git a/rust/ql/lib/change-notes/released/0.2.5.md b/rust/ql/lib/change-notes/released/0.2.5.md new file mode 100644 index 000000000000..5145bf5a9b21 --- /dev/null +++ b/rust/ql/lib/change-notes/released/0.2.5.md @@ -0,0 +1,6 @@ +## 0.2.5 + +### Minor Analysis Improvements + +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. +* Added type inference support for the `FnMut(..) -> ..` and `Fn(..) -> ..` traits. They now work in type parameter bounds and are implemented by closures. diff --git a/rust/ql/lib/codeql-pack.release.yml b/rust/ql/lib/codeql-pack.release.yml index 7f1e3841dcd6..211454ed3064 100644 --- a/rust/ql/lib/codeql-pack.release.yml +++ b/rust/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.2.4 +lastReleaseVersion: 0.2.5 diff --git a/rust/ql/lib/qlpack.yml b/rust/ql/lib/qlpack.yml index c976e05b9b9c..4f33822af63e 100644 --- a/rust/ql/lib/qlpack.yml +++ b/rust/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-all -version: 0.2.5-dev +version: 0.2.5 groups: rust extractor: rust dbscheme: rust.dbscheme diff --git a/rust/ql/src/CHANGELOG.md b/rust/ql/src/CHANGELOG.md index 6f17ba911334..fe96ab5baad8 100644 --- a/rust/ql/src/CHANGELOG.md +++ b/rust/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.1.26 + +No user-facing changes. + ## 0.1.25 ### Minor Analysis Improvements diff --git a/rust/ql/src/change-notes/released/0.1.26.md b/rust/ql/src/change-notes/released/0.1.26.md new file mode 100644 index 000000000000..79d28dd1b409 --- /dev/null +++ b/rust/ql/src/change-notes/released/0.1.26.md @@ -0,0 +1,3 @@ +## 0.1.26 + +No user-facing changes. diff --git a/rust/ql/src/codeql-pack.release.yml b/rust/ql/src/codeql-pack.release.yml index 44eb1ee2438f..e2396c0532fa 100644 --- a/rust/ql/src/codeql-pack.release.yml +++ b/rust/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.1.25 +lastReleaseVersion: 0.1.26 diff --git a/rust/ql/src/qlpack.yml b/rust/ql/src/qlpack.yml index e8873e003399..61ff8e48167c 100644 --- a/rust/ql/src/qlpack.yml +++ b/rust/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-queries -version: 0.1.26-dev +version: 0.1.26 groups: - rust - queries diff --git a/shared/concepts/CHANGELOG.md b/shared/concepts/CHANGELOG.md index 161a50915157..29dba07c3659 100644 --- a/shared/concepts/CHANGELOG.md +++ b/shared/concepts/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.0.15 + +No user-facing changes. + ## 0.0.14 No user-facing changes. diff --git a/shared/concepts/change-notes/released/0.0.15.md b/shared/concepts/change-notes/released/0.0.15.md new file mode 100644 index 000000000000..7af9c05f23fb --- /dev/null +++ b/shared/concepts/change-notes/released/0.0.15.md @@ -0,0 +1,3 @@ +## 0.0.15 + +No user-facing changes. diff --git a/shared/concepts/codeql-pack.release.yml b/shared/concepts/codeql-pack.release.yml index ca29e45d0a67..dff35216fc69 100644 --- a/shared/concepts/codeql-pack.release.yml +++ b/shared/concepts/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.0.14 +lastReleaseVersion: 0.0.15 diff --git a/shared/concepts/qlpack.yml b/shared/concepts/qlpack.yml index 0acc44a77e60..40350f8b33c0 100644 --- a/shared/concepts/qlpack.yml +++ b/shared/concepts/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/concepts -version: 0.0.15-dev +version: 0.0.15 groups: shared library: true dependencies: diff --git a/shared/controlflow/CHANGELOG.md b/shared/controlflow/CHANGELOG.md index a0141238ede7..1fd69b562a68 100644 --- a/shared/controlflow/CHANGELOG.md +++ b/shared/controlflow/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.25 + +No user-facing changes. + ## 2.0.24 No user-facing changes. diff --git a/shared/controlflow/change-notes/released/2.0.25.md b/shared/controlflow/change-notes/released/2.0.25.md new file mode 100644 index 000000000000..ca39dd50c697 --- /dev/null +++ b/shared/controlflow/change-notes/released/2.0.25.md @@ -0,0 +1,3 @@ +## 2.0.25 + +No user-facing changes. diff --git a/shared/controlflow/codeql-pack.release.yml b/shared/controlflow/codeql-pack.release.yml index 1460df314d51..f54d86201189 100644 --- a/shared/controlflow/codeql-pack.release.yml +++ b/shared/controlflow/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.24 +lastReleaseVersion: 2.0.25 diff --git a/shared/controlflow/qlpack.yml b/shared/controlflow/qlpack.yml index fe9c546bd4a1..f8e86c3b834d 100644 --- a/shared/controlflow/qlpack.yml +++ b/shared/controlflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/controlflow -version: 2.0.25-dev +version: 2.0.25 groups: shared library: true dependencies: diff --git a/shared/dataflow/CHANGELOG.md b/shared/dataflow/CHANGELOG.md index 2190138e037d..49857928ffe2 100644 --- a/shared/dataflow/CHANGELOG.md +++ b/shared/dataflow/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.25 + +No user-facing changes. + ## 2.0.24 No user-facing changes. diff --git a/shared/dataflow/change-notes/released/2.0.25.md b/shared/dataflow/change-notes/released/2.0.25.md new file mode 100644 index 000000000000..ca39dd50c697 --- /dev/null +++ b/shared/dataflow/change-notes/released/2.0.25.md @@ -0,0 +1,3 @@ +## 2.0.25 + +No user-facing changes. diff --git a/shared/dataflow/codeql-pack.release.yml b/shared/dataflow/codeql-pack.release.yml index 1460df314d51..f54d86201189 100644 --- a/shared/dataflow/codeql-pack.release.yml +++ b/shared/dataflow/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.24 +lastReleaseVersion: 2.0.25 diff --git a/shared/dataflow/qlpack.yml b/shared/dataflow/qlpack.yml index f1c036d74dfb..86bfb0a5b055 100644 --- a/shared/dataflow/qlpack.yml +++ b/shared/dataflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/dataflow -version: 2.0.25-dev +version: 2.0.25 groups: shared library: true dependencies: diff --git a/shared/mad/CHANGELOG.md b/shared/mad/CHANGELOG.md index 40e305bad35d..bc1ee96895ce 100644 --- a/shared/mad/CHANGELOG.md +++ b/shared/mad/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.41 + +No user-facing changes. + ## 1.0.40 No user-facing changes. diff --git a/shared/mad/change-notes/released/1.0.41.md b/shared/mad/change-notes/released/1.0.41.md new file mode 100644 index 000000000000..b9e9f7a5c44d --- /dev/null +++ b/shared/mad/change-notes/released/1.0.41.md @@ -0,0 +1,3 @@ +## 1.0.41 + +No user-facing changes. diff --git a/shared/mad/codeql-pack.release.yml b/shared/mad/codeql-pack.release.yml index 326e4b5da674..d496eab6eb95 100644 --- a/shared/mad/codeql-pack.release.yml +++ b/shared/mad/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.40 +lastReleaseVersion: 1.0.41 diff --git a/shared/mad/qlpack.yml b/shared/mad/qlpack.yml index f001129240fb..349dc19aa337 100644 --- a/shared/mad/qlpack.yml +++ b/shared/mad/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/mad -version: 1.0.41-dev +version: 1.0.41 groups: shared library: true dependencies: diff --git a/shared/quantum/CHANGELOG.md b/shared/quantum/CHANGELOG.md index 172f2ee2b297..d5252bfc0c4f 100644 --- a/shared/quantum/CHANGELOG.md +++ b/shared/quantum/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.0.19 + +No user-facing changes. + ## 0.0.18 No user-facing changes. diff --git a/shared/quantum/change-notes/released/0.0.19.md b/shared/quantum/change-notes/released/0.0.19.md new file mode 100644 index 000000000000..914e4c9074d1 --- /dev/null +++ b/shared/quantum/change-notes/released/0.0.19.md @@ -0,0 +1,3 @@ +## 0.0.19 + +No user-facing changes. diff --git a/shared/quantum/codeql-pack.release.yml b/shared/quantum/codeql-pack.release.yml index a0d2bc59d979..f406319f372e 100644 --- a/shared/quantum/codeql-pack.release.yml +++ b/shared/quantum/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.0.18 +lastReleaseVersion: 0.0.19 diff --git a/shared/quantum/qlpack.yml b/shared/quantum/qlpack.yml index de32dad32f19..f394fab96541 100644 --- a/shared/quantum/qlpack.yml +++ b/shared/quantum/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/quantum -version: 0.0.19-dev +version: 0.0.19 groups: shared library: true dependencies: diff --git a/shared/rangeanalysis/CHANGELOG.md b/shared/rangeanalysis/CHANGELOG.md index 7c9e43f8ff3e..3dde8baa4b06 100644 --- a/shared/rangeanalysis/CHANGELOG.md +++ b/shared/rangeanalysis/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.41 + +No user-facing changes. + ## 1.0.40 No user-facing changes. diff --git a/shared/rangeanalysis/change-notes/released/1.0.41.md b/shared/rangeanalysis/change-notes/released/1.0.41.md new file mode 100644 index 000000000000..b9e9f7a5c44d --- /dev/null +++ b/shared/rangeanalysis/change-notes/released/1.0.41.md @@ -0,0 +1,3 @@ +## 1.0.41 + +No user-facing changes. diff --git a/shared/rangeanalysis/codeql-pack.release.yml b/shared/rangeanalysis/codeql-pack.release.yml index 326e4b5da674..d496eab6eb95 100644 --- a/shared/rangeanalysis/codeql-pack.release.yml +++ b/shared/rangeanalysis/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.40 +lastReleaseVersion: 1.0.41 diff --git a/shared/rangeanalysis/qlpack.yml b/shared/rangeanalysis/qlpack.yml index 5ecb12275e6b..846d83bc93c4 100644 --- a/shared/rangeanalysis/qlpack.yml +++ b/shared/rangeanalysis/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rangeanalysis -version: 1.0.41-dev +version: 1.0.41 groups: shared library: true dependencies: diff --git a/shared/regex/CHANGELOG.md b/shared/regex/CHANGELOG.md index ecf8ebbe399d..2e3dacffd923 100644 --- a/shared/regex/CHANGELOG.md +++ b/shared/regex/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.41 + +No user-facing changes. + ## 1.0.40 No user-facing changes. diff --git a/shared/regex/change-notes/released/1.0.41.md b/shared/regex/change-notes/released/1.0.41.md new file mode 100644 index 000000000000..b9e9f7a5c44d --- /dev/null +++ b/shared/regex/change-notes/released/1.0.41.md @@ -0,0 +1,3 @@ +## 1.0.41 + +No user-facing changes. diff --git a/shared/regex/codeql-pack.release.yml b/shared/regex/codeql-pack.release.yml index 326e4b5da674..d496eab6eb95 100644 --- a/shared/regex/codeql-pack.release.yml +++ b/shared/regex/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.40 +lastReleaseVersion: 1.0.41 diff --git a/shared/regex/qlpack.yml b/shared/regex/qlpack.yml index c57a3de51890..80b995f7c50c 100644 --- a/shared/regex/qlpack.yml +++ b/shared/regex/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/regex -version: 1.0.41-dev +version: 1.0.41 groups: shared library: true dependencies: diff --git a/shared/ssa/CHANGELOG.md b/shared/ssa/CHANGELOG.md index 03f338ad3e62..62c6ce297f98 100644 --- a/shared/ssa/CHANGELOG.md +++ b/shared/ssa/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.17 + +No user-facing changes. + ## 2.0.16 No user-facing changes. diff --git a/shared/ssa/change-notes/released/2.0.17.md b/shared/ssa/change-notes/released/2.0.17.md new file mode 100644 index 000000000000..0ed1592726c8 --- /dev/null +++ b/shared/ssa/change-notes/released/2.0.17.md @@ -0,0 +1,3 @@ +## 2.0.17 + +No user-facing changes. diff --git a/shared/ssa/codeql-pack.release.yml b/shared/ssa/codeql-pack.release.yml index c10461a785cf..a5f7c15c020f 100644 --- a/shared/ssa/codeql-pack.release.yml +++ b/shared/ssa/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.16 +lastReleaseVersion: 2.0.17 diff --git a/shared/ssa/qlpack.yml b/shared/ssa/qlpack.yml index ac679f613eaf..c1b143d616ef 100644 --- a/shared/ssa/qlpack.yml +++ b/shared/ssa/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ssa -version: 2.0.17-dev +version: 2.0.17 groups: shared library: true dependencies: diff --git a/shared/threat-models/CHANGELOG.md b/shared/threat-models/CHANGELOG.md index 8718668249fd..d0c8171cdf67 100644 --- a/shared/threat-models/CHANGELOG.md +++ b/shared/threat-models/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.41 + +No user-facing changes. + ## 1.0.40 No user-facing changes. diff --git a/shared/threat-models/change-notes/released/1.0.41.md b/shared/threat-models/change-notes/released/1.0.41.md new file mode 100644 index 000000000000..b9e9f7a5c44d --- /dev/null +++ b/shared/threat-models/change-notes/released/1.0.41.md @@ -0,0 +1,3 @@ +## 1.0.41 + +No user-facing changes. diff --git a/shared/threat-models/codeql-pack.release.yml b/shared/threat-models/codeql-pack.release.yml index 326e4b5da674..d496eab6eb95 100644 --- a/shared/threat-models/codeql-pack.release.yml +++ b/shared/threat-models/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.40 +lastReleaseVersion: 1.0.41 diff --git a/shared/threat-models/qlpack.yml b/shared/threat-models/qlpack.yml index f16ee329d007..634544a4eb87 100644 --- a/shared/threat-models/qlpack.yml +++ b/shared/threat-models/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/threat-models -version: 1.0.41-dev +version: 1.0.41 library: true groups: shared dataExtensions: diff --git a/shared/tutorial/CHANGELOG.md b/shared/tutorial/CHANGELOG.md index 6a9afbe090a3..833807725734 100644 --- a/shared/tutorial/CHANGELOG.md +++ b/shared/tutorial/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.41 + +No user-facing changes. + ## 1.0.40 No user-facing changes. diff --git a/shared/tutorial/change-notes/released/1.0.41.md b/shared/tutorial/change-notes/released/1.0.41.md new file mode 100644 index 000000000000..b9e9f7a5c44d --- /dev/null +++ b/shared/tutorial/change-notes/released/1.0.41.md @@ -0,0 +1,3 @@ +## 1.0.41 + +No user-facing changes. diff --git a/shared/tutorial/codeql-pack.release.yml b/shared/tutorial/codeql-pack.release.yml index 326e4b5da674..d496eab6eb95 100644 --- a/shared/tutorial/codeql-pack.release.yml +++ b/shared/tutorial/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.40 +lastReleaseVersion: 1.0.41 diff --git a/shared/tutorial/qlpack.yml b/shared/tutorial/qlpack.yml index 8ffe365de0a9..93b95d3210c3 100644 --- a/shared/tutorial/qlpack.yml +++ b/shared/tutorial/qlpack.yml @@ -1,7 +1,7 @@ name: codeql/tutorial description: Library for the CodeQL detective tutorials, helping new users learn to write CodeQL queries. -version: 1.0.41-dev +version: 1.0.41 groups: shared library: true warnOnImplicitThis: true diff --git a/shared/typeflow/CHANGELOG.md b/shared/typeflow/CHANGELOG.md index 37cada863622..caecb313a31a 100644 --- a/shared/typeflow/CHANGELOG.md +++ b/shared/typeflow/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.41 + +No user-facing changes. + ## 1.0.40 No user-facing changes. diff --git a/shared/typeflow/change-notes/released/1.0.41.md b/shared/typeflow/change-notes/released/1.0.41.md new file mode 100644 index 000000000000..b9e9f7a5c44d --- /dev/null +++ b/shared/typeflow/change-notes/released/1.0.41.md @@ -0,0 +1,3 @@ +## 1.0.41 + +No user-facing changes. diff --git a/shared/typeflow/codeql-pack.release.yml b/shared/typeflow/codeql-pack.release.yml index 326e4b5da674..d496eab6eb95 100644 --- a/shared/typeflow/codeql-pack.release.yml +++ b/shared/typeflow/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.40 +lastReleaseVersion: 1.0.41 diff --git a/shared/typeflow/qlpack.yml b/shared/typeflow/qlpack.yml index 773700f2ac14..4512e9553856 100644 --- a/shared/typeflow/qlpack.yml +++ b/shared/typeflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeflow -version: 1.0.41-dev +version: 1.0.41 groups: shared library: true dependencies: diff --git a/shared/typeinference/CHANGELOG.md b/shared/typeinference/CHANGELOG.md index 2daa850c9cd1..356c331b5dfe 100644 --- a/shared/typeinference/CHANGELOG.md +++ b/shared/typeinference/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.0.22 + +No user-facing changes. + ## 0.0.21 No user-facing changes. diff --git a/shared/typeinference/change-notes/released/0.0.22.md b/shared/typeinference/change-notes/released/0.0.22.md new file mode 100644 index 000000000000..002267474382 --- /dev/null +++ b/shared/typeinference/change-notes/released/0.0.22.md @@ -0,0 +1,3 @@ +## 0.0.22 + +No user-facing changes. diff --git a/shared/typeinference/codeql-pack.release.yml b/shared/typeinference/codeql-pack.release.yml index 0c15c351db40..11aaa2243f57 100644 --- a/shared/typeinference/codeql-pack.release.yml +++ b/shared/typeinference/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.0.21 +lastReleaseVersion: 0.0.22 diff --git a/shared/typeinference/qlpack.yml b/shared/typeinference/qlpack.yml index 323af6d7d5da..6bb3be57eba1 100644 --- a/shared/typeinference/qlpack.yml +++ b/shared/typeinference/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeinference -version: 0.0.22-dev +version: 0.0.22 groups: shared library: true dependencies: diff --git a/shared/typetracking/CHANGELOG.md b/shared/typetracking/CHANGELOG.md index 769f68dd3dd5..8504089f8728 100644 --- a/shared/typetracking/CHANGELOG.md +++ b/shared/typetracking/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.25 + +No user-facing changes. + ## 2.0.24 No user-facing changes. diff --git a/shared/typetracking/change-notes/released/2.0.25.md b/shared/typetracking/change-notes/released/2.0.25.md new file mode 100644 index 000000000000..ca39dd50c697 --- /dev/null +++ b/shared/typetracking/change-notes/released/2.0.25.md @@ -0,0 +1,3 @@ +## 2.0.25 + +No user-facing changes. diff --git a/shared/typetracking/codeql-pack.release.yml b/shared/typetracking/codeql-pack.release.yml index 1460df314d51..f54d86201189 100644 --- a/shared/typetracking/codeql-pack.release.yml +++ b/shared/typetracking/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.24 +lastReleaseVersion: 2.0.25 diff --git a/shared/typetracking/qlpack.yml b/shared/typetracking/qlpack.yml index 3c2758e09077..fe7582bbde63 100644 --- a/shared/typetracking/qlpack.yml +++ b/shared/typetracking/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typetracking -version: 2.0.25-dev +version: 2.0.25 groups: shared library: true dependencies: diff --git a/shared/typos/CHANGELOG.md b/shared/typos/CHANGELOG.md index 5ef65f8781d4..cfbec562b146 100644 --- a/shared/typos/CHANGELOG.md +++ b/shared/typos/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.41 + +No user-facing changes. + ## 1.0.40 No user-facing changes. diff --git a/shared/typos/change-notes/released/1.0.41.md b/shared/typos/change-notes/released/1.0.41.md new file mode 100644 index 000000000000..b9e9f7a5c44d --- /dev/null +++ b/shared/typos/change-notes/released/1.0.41.md @@ -0,0 +1,3 @@ +## 1.0.41 + +No user-facing changes. diff --git a/shared/typos/codeql-pack.release.yml b/shared/typos/codeql-pack.release.yml index 326e4b5da674..d496eab6eb95 100644 --- a/shared/typos/codeql-pack.release.yml +++ b/shared/typos/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.40 +lastReleaseVersion: 1.0.41 diff --git a/shared/typos/qlpack.yml b/shared/typos/qlpack.yml index 07154ada5476..e587573ad405 100644 --- a/shared/typos/qlpack.yml +++ b/shared/typos/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typos -version: 1.0.41-dev +version: 1.0.41 groups: shared library: true warnOnImplicitThis: true diff --git a/shared/util/CHANGELOG.md b/shared/util/CHANGELOG.md index 1c818e1f21da..904aa45e034f 100644 --- a/shared/util/CHANGELOG.md +++ b/shared/util/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.28 + +No user-facing changes. + ## 2.0.27 No user-facing changes. diff --git a/shared/util/change-notes/released/2.0.28.md b/shared/util/change-notes/released/2.0.28.md new file mode 100644 index 000000000000..3f9412b6e635 --- /dev/null +++ b/shared/util/change-notes/released/2.0.28.md @@ -0,0 +1,3 @@ +## 2.0.28 + +No user-facing changes. diff --git a/shared/util/codeql-pack.release.yml b/shared/util/codeql-pack.release.yml index a047558f018b..ec5bd6ba3691 100644 --- a/shared/util/codeql-pack.release.yml +++ b/shared/util/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.27 +lastReleaseVersion: 2.0.28 diff --git a/shared/util/qlpack.yml b/shared/util/qlpack.yml index 0b10b300a47d..dd8c960aa0bb 100644 --- a/shared/util/qlpack.yml +++ b/shared/util/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/util -version: 2.0.28-dev +version: 2.0.28 groups: shared library: true dependencies: null diff --git a/shared/xml/CHANGELOG.md b/shared/xml/CHANGELOG.md index cb8550f886bc..7a85ea45c7b3 100644 --- a/shared/xml/CHANGELOG.md +++ b/shared/xml/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.41 + +No user-facing changes. + ## 1.0.40 No user-facing changes. diff --git a/shared/xml/change-notes/released/1.0.41.md b/shared/xml/change-notes/released/1.0.41.md new file mode 100644 index 000000000000..b9e9f7a5c44d --- /dev/null +++ b/shared/xml/change-notes/released/1.0.41.md @@ -0,0 +1,3 @@ +## 1.0.41 + +No user-facing changes. diff --git a/shared/xml/codeql-pack.release.yml b/shared/xml/codeql-pack.release.yml index 326e4b5da674..d496eab6eb95 100644 --- a/shared/xml/codeql-pack.release.yml +++ b/shared/xml/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.40 +lastReleaseVersion: 1.0.41 diff --git a/shared/xml/qlpack.yml b/shared/xml/qlpack.yml index 86ac177bdbfc..ad13296db46a 100644 --- a/shared/xml/qlpack.yml +++ b/shared/xml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/xml -version: 1.0.41-dev +version: 1.0.41 groups: shared library: true dependencies: diff --git a/shared/yaml/CHANGELOG.md b/shared/yaml/CHANGELOG.md index 82c9137dbbf5..78b636e0288b 100644 --- a/shared/yaml/CHANGELOG.md +++ b/shared/yaml/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.41 + +No user-facing changes. + ## 1.0.40 No user-facing changes. diff --git a/shared/yaml/change-notes/released/1.0.41.md b/shared/yaml/change-notes/released/1.0.41.md new file mode 100644 index 000000000000..b9e9f7a5c44d --- /dev/null +++ b/shared/yaml/change-notes/released/1.0.41.md @@ -0,0 +1,3 @@ +## 1.0.41 + +No user-facing changes. diff --git a/shared/yaml/codeql-pack.release.yml b/shared/yaml/codeql-pack.release.yml index 326e4b5da674..d496eab6eb95 100644 --- a/shared/yaml/codeql-pack.release.yml +++ b/shared/yaml/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.40 +lastReleaseVersion: 1.0.41 diff --git a/shared/yaml/qlpack.yml b/shared/yaml/qlpack.yml index 9e3dec90b6d5..03ddecb8a053 100644 --- a/shared/yaml/qlpack.yml +++ b/shared/yaml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/yaml -version: 1.0.41-dev +version: 1.0.41 groups: shared library: true warnOnImplicitThis: true diff --git a/swift/ql/lib/CHANGELOG.md b/swift/ql/lib/CHANGELOG.md index efad17a8e8b2..f4fe2159e07a 100644 --- a/swift/ql/lib/CHANGELOG.md +++ b/swift/ql/lib/CHANGELOG.md @@ -1,3 +1,9 @@ +## 6.2.1 + +### Minor Analysis Improvements + +* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. + ## 6.2.0 ### Major Analysis Improvements diff --git a/swift/ql/lib/change-notes/2026-01-16-summarized-callable.md b/swift/ql/lib/change-notes/2026-01-16-summarized-callable.md deleted file mode 100644 index b6e5101617ed..000000000000 --- a/swift/ql/lib/change-notes/2026-01-16-summarized-callable.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/go/ql/lib/change-notes/2026-01-16-summarized-callable.md b/swift/ql/lib/change-notes/released/6.2.1.md similarity index 85% rename from go/ql/lib/change-notes/2026-01-16-summarized-callable.md rename to swift/ql/lib/change-notes/released/6.2.1.md index b6e5101617ed..bd50d7adb368 100644 --- a/go/ql/lib/change-notes/2026-01-16-summarized-callable.md +++ b/swift/ql/lib/change-notes/released/6.2.1.md @@ -1,4 +1,5 @@ ---- -category: minorAnalysis ---- +## 6.2.1 + +### Minor Analysis Improvements + * The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. diff --git a/swift/ql/lib/codeql-pack.release.yml b/swift/ql/lib/codeql-pack.release.yml index 35c46c599f08..8e36085279d5 100644 --- a/swift/ql/lib/codeql-pack.release.yml +++ b/swift/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 6.2.0 +lastReleaseVersion: 6.2.1 diff --git a/swift/ql/lib/qlpack.yml b/swift/ql/lib/qlpack.yml index 84482a72c80a..9fc1e4731dd8 100644 --- a/swift/ql/lib/qlpack.yml +++ b/swift/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-all -version: 6.2.1-dev +version: 6.2.1 groups: swift extractor: swift dbscheme: swift.dbscheme diff --git a/swift/ql/src/CHANGELOG.md b/swift/ql/src/CHANGELOG.md index b555657d87af..bf6367cf668b 100644 --- a/swift/ql/src/CHANGELOG.md +++ b/swift/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.2.15 + +No user-facing changes. + ## 1.2.14 No user-facing changes. diff --git a/swift/ql/src/change-notes/released/1.2.15.md b/swift/ql/src/change-notes/released/1.2.15.md new file mode 100644 index 000000000000..c73741aba037 --- /dev/null +++ b/swift/ql/src/change-notes/released/1.2.15.md @@ -0,0 +1,3 @@ +## 1.2.15 + +No user-facing changes. diff --git a/swift/ql/src/codeql-pack.release.yml b/swift/ql/src/codeql-pack.release.yml index ef55ed9564a8..df8980e5dd26 100644 --- a/swift/ql/src/codeql-pack.release.yml +++ b/swift/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.2.14 +lastReleaseVersion: 1.2.15 diff --git a/swift/ql/src/qlpack.yml b/swift/ql/src/qlpack.yml index 61ca00447b22..86538099f759 100644 --- a/swift/ql/src/qlpack.yml +++ b/swift/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-queries -version: 1.2.15-dev +version: 1.2.15 groups: - swift - queries From 38fcc61817613ca2456ece88508d48b12645b4a3 Mon Sep 17 00:00:00 2001 From: Henry Mercer Date: Mon, 2 Feb 2026 12:10:15 +0000 Subject: [PATCH 261/433] Fix formatting in Kotlin changelog --- java/ql/lib/change-notes/released/8.0.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/ql/lib/change-notes/released/8.0.0.md b/java/ql/lib/change-notes/released/8.0.0.md index cf6f8f52f97f..efe82a7db857 100644 --- a/java/ql/lib/change-notes/released/8.0.0.md +++ b/java/ql/lib/change-notes/released/8.0.0.md @@ -6,7 +6,7 @@ ### New Features -* Kotlin versions up to 2.3.0\ *x* are now supported. +* Kotlin versions up to 2.3.0 are now supported. ### Minor Analysis Improvements From 5f1fd57f84b062da390765efc4c7f1c2b4842690 Mon Sep 17 00:00:00 2001 From: Henry Mercer Date: Mon, 2 Feb 2026 12:22:50 +0000 Subject: [PATCH 262/433] Fix formatting of Kotlin version ranges --- java/ql/lib/CHANGELOG.md | 8 ++++---- java/ql/lib/change-notes/released/4.1.0.md | 2 +- java/ql/lib/change-notes/released/7.2.0.md | 2 +- java/ql/lib/change-notes/released/7.5.0.md | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/java/ql/lib/CHANGELOG.md b/java/ql/lib/CHANGELOG.md index a100137879d1..f238699b4e5b 100644 --- a/java/ql/lib/CHANGELOG.md +++ b/java/ql/lib/CHANGELOG.md @@ -6,7 +6,7 @@ ### New Features -* Kotlin versions up to 2.3.0\ *x* are now supported. +* Kotlin versions up to 2.3.0*x* are now supported. ### Minor Analysis Improvements @@ -98,7 +98,7 @@ No user-facing changes. ### New Features -* Kotlin versions up to 2.2.2\ *x* are now supported. +* Kotlin versions up to 2.2.2*x* are now supported. ## 7.4.0 @@ -139,7 +139,7 @@ No user-facing changes. ### New Features -* Kotlin versions up to 2.2.0\ *x* are now supported. Support for the Kotlin 1.5.x series is dropped (so the minimum Kotlin version is now 1.6.0). +* Kotlin versions up to 2.2.0*x* are now supported. Support for the Kotlin 1.5.x series is dropped (so the minimum Kotlin version is now 1.6.0). ## 7.1.4 @@ -276,7 +276,7 @@ No user-facing changes. ### New Features * The Java extractor and QL libraries now support Java 23. -* Kotlin versions up to 2.1.0\ *x* are now supported. +* Kotlin versions up to 2.1.0*x* are now supported. ## 4.0.0 diff --git a/java/ql/lib/change-notes/released/4.1.0.md b/java/ql/lib/change-notes/released/4.1.0.md index 579567e1edd0..d24446bd8c1a 100644 --- a/java/ql/lib/change-notes/released/4.1.0.md +++ b/java/ql/lib/change-notes/released/4.1.0.md @@ -10,4 +10,4 @@ ### New Features * The Java extractor and QL libraries now support Java 23. -* Kotlin versions up to 2.1.0\ *x* are now supported. +* Kotlin versions up to 2.1.0*x* are now supported. diff --git a/java/ql/lib/change-notes/released/7.2.0.md b/java/ql/lib/change-notes/released/7.2.0.md index 7714e3eeb326..e3585377d0b2 100644 --- a/java/ql/lib/change-notes/released/7.2.0.md +++ b/java/ql/lib/change-notes/released/7.2.0.md @@ -2,4 +2,4 @@ ### New Features -* Kotlin versions up to 2.2.0\ *x* are now supported. Support for the Kotlin 1.5.x series is dropped (so the minimum Kotlin version is now 1.6.0). +* Kotlin versions up to 2.2.0*x* are now supported. Support for the Kotlin 1.5.x series is dropped (so the minimum Kotlin version is now 1.6.0). diff --git a/java/ql/lib/change-notes/released/7.5.0.md b/java/ql/lib/change-notes/released/7.5.0.md index 415dab5dfe4f..36cc6112a12e 100644 --- a/java/ql/lib/change-notes/released/7.5.0.md +++ b/java/ql/lib/change-notes/released/7.5.0.md @@ -2,4 +2,4 @@ ### New Features -* Kotlin versions up to 2.2.2\ *x* are now supported. +* Kotlin versions up to 2.2.2*x* are now supported. From 1a6b2b9b82563dcb8d68aa870aa6ffeae22d4766 Mon Sep 17 00:00:00 2001 From: Henry Mercer Date: Mon, 2 Feb 2026 12:37:32 +0000 Subject: [PATCH 263/433] Fix capitalization of MySQL --- cpp/ql/lib/CHANGELOG.md | 2 +- cpp/ql/lib/change-notes/released/7.1.0.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/cpp/ql/lib/CHANGELOG.md b/cpp/ql/lib/CHANGELOG.md index 9aa9e9953b50..6f256c9499b4 100644 --- a/cpp/ql/lib/CHANGELOG.md +++ b/cpp/ql/lib/CHANGELOG.md @@ -8,7 +8,7 @@ ### Minor Analysis Improvements * The `Buffer.qll` library will no longer report incorrect buffer sizes on certain malformed databases. As a result, the queries `cpp/static-buffer-overflow`, `cpp/overflow-buffer`, `cpp/badly-bounded-write`, `cpp/overrunning-write`, `cpp/overrunning-write-with-float`, and `cpp/very-likely-overrunning-write` will report fewer false positives on such databases. -* Added `taint` summary models and `sql-injection` barrier models for the mySQL `mysql_real_escape_string` and `mysql_real_escape_string_quote` escaping functions. +* Added `taint` summary models and `sql-injection` barrier models for the MySQL `mysql_real_escape_string` and `mysql_real_escape_string_quote` escaping functions. * The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. ### Bug Fixes diff --git a/cpp/ql/lib/change-notes/released/7.1.0.md b/cpp/ql/lib/change-notes/released/7.1.0.md index 7565cb4dab9e..58ee0e9b6ef1 100644 --- a/cpp/ql/lib/change-notes/released/7.1.0.md +++ b/cpp/ql/lib/change-notes/released/7.1.0.md @@ -8,7 +8,7 @@ ### Minor Analysis Improvements * The `Buffer.qll` library will no longer report incorrect buffer sizes on certain malformed databases. As a result, the queries `cpp/static-buffer-overflow`, `cpp/overflow-buffer`, `cpp/badly-bounded-write`, `cpp/overrunning-write`, `cpp/overrunning-write-with-float`, and `cpp/very-likely-overrunning-write` will report fewer false positives on such databases. -* Added `taint` summary models and `sql-injection` barrier models for the mySQL `mysql_real_escape_string` and `mysql_real_escape_string_quote` escaping functions. +* Added `taint` summary models and `sql-injection` barrier models for the MySQL `mysql_real_escape_string` and `mysql_real_escape_string_quote` escaping functions. * The predicate `SummarizedCallable.propagatesFlow` has been extended with the columns `Provenance p` and `boolean isExact`, and as a consequence the predicates `SummarizedCallable.hasProvenance` and `SummarizedCallable.hasExactModel` have been removed. ### Bug Fixes From 95afe615b5655430532ff5abca17ee34a9817021 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 2 Feb 2026 13:06:24 +0100 Subject: [PATCH 264/433] Rust: Add path resolution tests --- .../library-tests/path-resolution/main.rs | 23 +++ .../path-resolution/path-resolution.expected | 164 ++++++++++-------- 2 files changed, 110 insertions(+), 77 deletions(-) diff --git a/rust/ql/test/library-tests/path-resolution/main.rs b/rust/ql/test/library-tests/path-resolution/main.rs index 9336666b477d..b330822ecc8b 100644 --- a/rust/ql/test/library-tests/path-resolution/main.rs +++ b/rust/ql/test/library-tests/path-resolution/main.rs @@ -1056,6 +1056,29 @@ mod self_constructors { } } +/// Tests for using `Self` in type definitions. +mod self_types { + struct NonEmptyListStruct { + head: T, // $ item=T + tail: Option>, // $ item=Option item=Box MISSING: item=NonEmptyListStruct + } + + enum NonEmptyListEnum { + Single(T), // $ item=T + Cons(T, Box), // $ item=T item=Box MISSING: item=NonEmptyListEnum + } + + #[rustfmt::skip] + union NonEmptyListUnion< + 'a, + T // T + : Copy // $ item=Copy + > { + single: T, // $ item=T + cons: (T, &'a Self), // $ item=T MISSING: item=NonEmptyListUnion + } +} + fn main() { my::nested::nested1::nested2::f(); // $ item=I4 my::f(); // $ item=I38 diff --git a/rust/ql/test/library-tests/path-resolution/path-resolution.expected b/rust/ql/test/library-tests/path-resolution/path-resolution.expected index fd1e5fd8503e..e1f9f60b76a8 100644 --- a/rust/ql/test/library-tests/path-resolution/path-resolution.expected +++ b/rust/ql/test/library-tests/path-resolution/path-resolution.expected @@ -35,6 +35,7 @@ mod | main.rs:949:1:968:1 | mod impl_with_attribute_macro | | main.rs:970:1:1011:1 | mod patterns | | main.rs:1013:1:1057:1 | mod self_constructors | +| main.rs:1059:1:1080:1 | mod self_types | | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:20:1:20:12 | mod my3 | | my2/mod.rs:22:1:23:10 | mod mymod | @@ -75,7 +76,7 @@ resolvePath | main.rs:37:17:37:24 | ...::f | main.rs:26:9:28:9 | fn f | | main.rs:39:17:39:23 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:40:17:40:17 | f | main.rs:26:9:28:9 | fn f | -| main.rs:47:9:47:13 | super | main.rs:1:1:1096:2 | SourceFile | +| main.rs:47:9:47:13 | super | main.rs:1:1:1119:2 | SourceFile | | main.rs:47:9:47:17 | ...::m1 | main.rs:20:1:44:1 | mod m1 | | main.rs:47:9:47:21 | ...::m2 | main.rs:25:5:43:5 | mod m2 | | main.rs:47:9:47:24 | ...::g | main.rs:30:9:34:9 | fn g | @@ -90,7 +91,7 @@ resolvePath | main.rs:68:17:68:19 | Foo | main.rs:66:9:66:21 | struct Foo | | main.rs:71:13:71:15 | Foo | main.rs:60:5:60:17 | struct Foo | | main.rs:73:5:73:5 | f | main.rs:62:5:69:5 | fn f | -| main.rs:75:5:75:8 | self | main.rs:1:1:1096:2 | SourceFile | +| main.rs:75:5:75:8 | self | main.rs:1:1:1119:2 | SourceFile | | main.rs:75:5:75:11 | ...::i | main.rs:78:1:90:1 | fn i | | main.rs:79:5:79:11 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:81:13:81:15 | Foo | main.rs:55:1:55:13 | struct Foo | @@ -112,7 +113,7 @@ resolvePath | main.rs:112:9:112:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:118:9:118:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:122:9:122:15 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:125:13:125:17 | super | main.rs:1:1:1096:2 | SourceFile | +| main.rs:125:13:125:17 | super | main.rs:1:1:1119:2 | SourceFile | | main.rs:125:13:125:21 | ...::m5 | main.rs:110:1:114:1 | mod m5 | | main.rs:126:9:126:9 | f | main.rs:111:5:113:5 | fn f | | main.rs:126:9:126:9 | f | main.rs:117:5:119:5 | fn f | @@ -532,79 +533,88 @@ resolvePath | main.rs:1047:25:1047:27 | i32 | {EXTERNAL LOCATION} | struct i32 | | main.rs:1049:17:1049:20 | Self | main.rs:1045:5:1056:5 | impl MyEnum { ... } | | main.rs:1049:17:1049:23 | ...::A | main.rs:1040:9:1042:9 | A | -| main.rs:1060:5:1060:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:1060:5:1060:14 | ...::nested | my.rs:1:1:1:15 | mod nested | -| main.rs:1060:5:1060:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | -| main.rs:1060:5:1060:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | -| main.rs:1060:5:1060:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | -| main.rs:1061:5:1061:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:1061:5:1061:9 | ...::f | my.rs:5:1:7:1 | fn f | -| main.rs:1062:5:1062:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | -| main.rs:1062:5:1062:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | -| main.rs:1062:5:1062:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | -| main.rs:1062:5:1062:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:1063:5:1063:5 | f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:1064:5:1064:5 | g | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:1065:5:1065:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:1065:5:1065:12 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:1066:5:1066:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:1066:5:1066:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:1066:5:1066:13 | ...::g | main.rs:30:9:34:9 | fn g | -| main.rs:1067:5:1067:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:1067:5:1067:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:1067:5:1067:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | -| main.rs:1067:5:1067:17 | ...::h | main.rs:37:27:41:13 | fn h | -| main.rs:1068:5:1068:6 | m4 | main.rs:46:1:53:1 | mod m4 | -| main.rs:1068:5:1068:9 | ...::i | main.rs:49:5:52:5 | fn i | -| main.rs:1069:5:1069:5 | h | main.rs:57:1:76:1 | fn h | -| main.rs:1070:5:1070:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:1071:5:1071:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:1072:5:1072:5 | j | main.rs:104:1:108:1 | fn j | -| main.rs:1073:5:1073:6 | m6 | main.rs:116:1:128:1 | mod m6 | -| main.rs:1073:5:1073:9 | ...::g | main.rs:121:5:127:5 | fn g | -| main.rs:1074:5:1074:6 | m7 | main.rs:130:1:149:1 | mod m7 | -| main.rs:1074:5:1074:9 | ...::f | main.rs:141:5:148:5 | fn f | -| main.rs:1075:5:1075:6 | m8 | main.rs:151:1:205:1 | mod m8 | -| main.rs:1075:5:1075:9 | ...::g | main.rs:189:5:204:5 | fn g | -| main.rs:1076:5:1076:6 | m9 | main.rs:207:1:215:1 | mod m9 | -| main.rs:1076:5:1076:9 | ...::f | main.rs:210:5:214:5 | fn f | -| main.rs:1077:5:1077:7 | m11 | main.rs:238:1:275:1 | mod m11 | -| main.rs:1077:5:1077:10 | ...::f | main.rs:243:5:246:5 | fn f | -| main.rs:1078:5:1078:7 | m15 | main.rs:306:1:375:1 | mod m15 | -| main.rs:1078:5:1078:10 | ...::f | main.rs:362:5:374:5 | fn f | -| main.rs:1079:5:1079:7 | m16 | main.rs:377:1:574:1 | mod m16 | -| main.rs:1079:5:1079:10 | ...::f | main.rs:446:5:470:5 | fn f | -| main.rs:1080:5:1080:20 | trait_visibility | main.rs:576:1:633:1 | mod trait_visibility | -| main.rs:1080:5:1080:23 | ...::f | main.rs:603:5:632:5 | fn f | -| main.rs:1081:5:1081:7 | m17 | main.rs:635:1:665:1 | mod m17 | -| main.rs:1081:5:1081:10 | ...::f | main.rs:659:5:664:5 | fn f | -| main.rs:1082:5:1082:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | -| main.rs:1082:5:1082:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | -| main.rs:1083:5:1083:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | -| main.rs:1083:5:1083:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | -| main.rs:1084:5:1084:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | -| main.rs:1084:5:1084:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | -| main.rs:1085:5:1085:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:1086:5:1086:12 | my_alias | main.rs:1:1:1:7 | mod my | -| main.rs:1086:5:1086:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:1087:5:1087:7 | m18 | main.rs:667:1:685:1 | mod m18 | -| main.rs:1087:5:1087:12 | ...::m19 | main.rs:672:5:684:5 | mod m19 | -| main.rs:1087:5:1087:17 | ...::m20 | main.rs:677:9:683:9 | mod m20 | -| main.rs:1087:5:1087:20 | ...::g | main.rs:678:13:682:13 | fn g | -| main.rs:1088:5:1088:7 | m23 | main.rs:714:1:739:1 | mod m23 | -| main.rs:1088:5:1088:10 | ...::f | main.rs:734:5:738:5 | fn f | -| main.rs:1089:5:1089:7 | m24 | main.rs:741:1:809:1 | mod m24 | -| main.rs:1089:5:1089:10 | ...::f | main.rs:795:5:808:5 | fn f | -| main.rs:1090:5:1090:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:1090:5:1090:11 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:1091:5:1091:13 | z_changed | main.rs:814:1:814:9 | fn z_changed | -| main.rs:1092:5:1092:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | -| main.rs:1092:5:1092:22 | ...::z_on_type | main.rs:820:5:820:17 | fn z_on_type | -| main.rs:1093:5:1093:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | -| main.rs:1094:5:1094:29 | impl_with_attribute_macro | main.rs:949:1:968:1 | mod impl_with_attribute_macro | -| main.rs:1094:5:1094:35 | ...::test | main.rs:964:5:967:5 | fn test | -| main.rs:1095:5:1095:12 | patterns | main.rs:970:1:1011:1 | mod patterns | -| main.rs:1095:5:1095:18 | ...::test | main.rs:971:5:985:5 | fn test | +| main.rs:1062:15:1062:15 | T | main.rs:1061:31:1061:31 | T | +| main.rs:1063:15:1063:31 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:1063:22:1063:30 | Box::<...> | {EXTERNAL LOCATION} | struct Box | +| main.rs:1067:16:1067:16 | T | main.rs:1066:27:1066:27 | T | +| main.rs:1068:14:1068:14 | T | main.rs:1066:27:1066:27 | T | +| main.rs:1068:17:1068:25 | Box::<...> | {EXTERNAL LOCATION} | struct Box | +| main.rs:1075:13:1075:16 | Copy | {EXTERNAL LOCATION} | trait Copy | +| main.rs:1077:17:1077:17 | T | main.rs:1074:9:1074:9 | T | +| main.rs:1078:16:1078:16 | T | main.rs:1074:9:1074:9 | T | +| main.rs:1083:5:1083:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:1083:5:1083:14 | ...::nested | my.rs:1:1:1:15 | mod nested | +| main.rs:1083:5:1083:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | +| main.rs:1083:5:1083:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | +| main.rs:1083:5:1083:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | +| main.rs:1084:5:1084:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:1084:5:1084:9 | ...::f | my.rs:5:1:7:1 | fn f | +| main.rs:1085:5:1085:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | +| main.rs:1085:5:1085:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | +| main.rs:1085:5:1085:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | +| main.rs:1085:5:1085:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1086:5:1086:5 | f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1087:5:1087:5 | g | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1088:5:1088:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1088:5:1088:12 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1089:5:1089:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:1089:5:1089:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:1089:5:1089:13 | ...::g | main.rs:30:9:34:9 | fn g | +| main.rs:1090:5:1090:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:1090:5:1090:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:1090:5:1090:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | +| main.rs:1090:5:1090:17 | ...::h | main.rs:37:27:41:13 | fn h | +| main.rs:1091:5:1091:6 | m4 | main.rs:46:1:53:1 | mod m4 | +| main.rs:1091:5:1091:9 | ...::i | main.rs:49:5:52:5 | fn i | +| main.rs:1092:5:1092:5 | h | main.rs:57:1:76:1 | fn h | +| main.rs:1093:5:1093:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1094:5:1094:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1095:5:1095:5 | j | main.rs:104:1:108:1 | fn j | +| main.rs:1096:5:1096:6 | m6 | main.rs:116:1:128:1 | mod m6 | +| main.rs:1096:5:1096:9 | ...::g | main.rs:121:5:127:5 | fn g | +| main.rs:1097:5:1097:6 | m7 | main.rs:130:1:149:1 | mod m7 | +| main.rs:1097:5:1097:9 | ...::f | main.rs:141:5:148:5 | fn f | +| main.rs:1098:5:1098:6 | m8 | main.rs:151:1:205:1 | mod m8 | +| main.rs:1098:5:1098:9 | ...::g | main.rs:189:5:204:5 | fn g | +| main.rs:1099:5:1099:6 | m9 | main.rs:207:1:215:1 | mod m9 | +| main.rs:1099:5:1099:9 | ...::f | main.rs:210:5:214:5 | fn f | +| main.rs:1100:5:1100:7 | m11 | main.rs:238:1:275:1 | mod m11 | +| main.rs:1100:5:1100:10 | ...::f | main.rs:243:5:246:5 | fn f | +| main.rs:1101:5:1101:7 | m15 | main.rs:306:1:375:1 | mod m15 | +| main.rs:1101:5:1101:10 | ...::f | main.rs:362:5:374:5 | fn f | +| main.rs:1102:5:1102:7 | m16 | main.rs:377:1:574:1 | mod m16 | +| main.rs:1102:5:1102:10 | ...::f | main.rs:446:5:470:5 | fn f | +| main.rs:1103:5:1103:20 | trait_visibility | main.rs:576:1:633:1 | mod trait_visibility | +| main.rs:1103:5:1103:23 | ...::f | main.rs:603:5:632:5 | fn f | +| main.rs:1104:5:1104:7 | m17 | main.rs:635:1:665:1 | mod m17 | +| main.rs:1104:5:1104:10 | ...::f | main.rs:659:5:664:5 | fn f | +| main.rs:1105:5:1105:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | +| main.rs:1105:5:1105:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | +| main.rs:1106:5:1106:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | +| main.rs:1106:5:1106:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | +| main.rs:1107:5:1107:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | +| main.rs:1107:5:1107:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | +| main.rs:1108:5:1108:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1109:5:1109:12 | my_alias | main.rs:1:1:1:7 | mod my | +| main.rs:1109:5:1109:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1110:5:1110:7 | m18 | main.rs:667:1:685:1 | mod m18 | +| main.rs:1110:5:1110:12 | ...::m19 | main.rs:672:5:684:5 | mod m19 | +| main.rs:1110:5:1110:17 | ...::m20 | main.rs:677:9:683:9 | mod m20 | +| main.rs:1110:5:1110:20 | ...::g | main.rs:678:13:682:13 | fn g | +| main.rs:1111:5:1111:7 | m23 | main.rs:714:1:739:1 | mod m23 | +| main.rs:1111:5:1111:10 | ...::f | main.rs:734:5:738:5 | fn f | +| main.rs:1112:5:1112:7 | m24 | main.rs:741:1:809:1 | mod m24 | +| main.rs:1112:5:1112:10 | ...::f | main.rs:795:5:808:5 | fn f | +| main.rs:1113:5:1113:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1113:5:1113:11 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1114:5:1114:13 | z_changed | main.rs:814:1:814:9 | fn z_changed | +| main.rs:1115:5:1115:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | +| main.rs:1115:5:1115:22 | ...::z_on_type | main.rs:820:5:820:17 | fn z_on_type | +| main.rs:1116:5:1116:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | +| main.rs:1117:5:1117:29 | impl_with_attribute_macro | main.rs:949:1:968:1 | mod impl_with_attribute_macro | +| main.rs:1117:5:1117:35 | ...::test | main.rs:964:5:967:5 | fn test | +| main.rs:1118:5:1118:12 | patterns | main.rs:970:1:1011:1 | mod patterns | +| main.rs:1118:5:1118:18 | ...::test | main.rs:971:5:985:5 | fn test | | my2/mod.rs:4:5:4:11 | println | {EXTERNAL LOCATION} | MacroRules | | my2/mod.rs:5:5:5:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:5:5:5:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | @@ -630,7 +640,7 @@ resolvePath | my2/my3/mod.rs:3:5:3:5 | g | my2/mod.rs:3:1:6:1 | fn g | | my2/my3/mod.rs:4:5:4:5 | h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:7:5:7:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | -| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1096:2 | SourceFile | +| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1119:2 | SourceFile | | my2/my3/mod.rs:7:5:7:19 | ...::h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:8:5:8:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | | my2/my3/mod.rs:8:5:8:12 | ...::g | my2/mod.rs:3:1:6:1 | fn g | From 99b498b891bab893c2f542ea3de0d100fd7b48dd Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 2 Feb 2026 13:29:26 +0100 Subject: [PATCH 265/433] Rust: Resolve `Self` paths in type definitions --- .../codeql/rust/internal/PathResolution.qll | 34 ++++++------------- .../library-tests/path-resolution/main.rs | 6 ++-- .../path-resolution/path-resolution.expected | 3 ++ 3 files changed, 17 insertions(+), 26 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/PathResolution.qll b/rust/ql/lib/codeql/rust/internal/PathResolution.qll index 7e77669cc4fe..bfc2c4a0cc08 100644 --- a/rust/ql/lib/codeql/rust/internal/PathResolution.qll +++ b/rust/ql/lib/codeql/rust/internal/PathResolution.qll @@ -119,6 +119,15 @@ private ItemNode getAChildSuccessor(ItemNode item, string name, SuccessorKind ki if result.isPublic() then kind.isBoth() else kind.isInternal() + or + // `Self` has scoping rules similar to type parameters and can be considered + // an implicit type parameter child of the introducing item. + // - https://doc.rust-lang.org/stable/reference/paths.html#r-paths.qualifiers.type-self + // - https://doc.rust-lang.org/stable/reference/names/scopes.html#r-names.scopes.self + (item instanceof TypeItemTypeItemNode or item instanceof ImplOrTraitItemNode) and + name = "Self" and + kind.isInternal() and + result = item } private module UseOption = Option; @@ -405,9 +414,6 @@ abstract class ItemNode extends Locatable { this instanceof SourceFile and builtin(name, result) or - name = "Self" and - this = result.(ImplOrTraitItemNode).getAnItemInSelfScope() - or name = "crate" and this = result.(CrateItemNode).getASourceFile() ) @@ -718,26 +724,12 @@ class FunctionItemNode extends AssocItemNode, ParameterizableItemNode instanceof } abstract class ImplOrTraitItemNode extends ItemNode { - /** Gets an item that may refer to this node using `Self`. */ - pragma[nomagic] - ItemNode getAnItemInSelfScope() { - result = this - or - result.getImmediateParent() = this - or - exists(ItemNode mid | - mid = this.getAnItemInSelfScope() and - result.getImmediateParent() = mid and - not mid instanceof ImplOrTraitItemNode - ) - } - /** Gets a `Self` path that refers to this item. */ cached Path getASelfPath() { Stages::PathResolutionStage::ref() and isUnqualifiedSelfPath(result) and - result = this.getAnItemInSelfScope().getADescendant() + this = unqualifiedPathLookup(result, _, _) } /** Gets an associated item belonging to this trait or `impl` block. */ @@ -1610,11 +1602,7 @@ private predicate unqualifiedPathLookup(ItemNode ancestor, string name, Namespac // lookup in an outer scope, but only if the item is not declared in inner scope exists(ItemNode mid | unqualifiedPathLookup(mid, name, ns, encl) and - not declares(mid, ns, name) and - not ( - name = "Self" and - mid = any(ImplOrTraitItemNode i).getAnItemInSelfScope() - ) + not declares(mid, ns, name) | ancestor = getOuterScope(mid) or diff --git a/rust/ql/test/library-tests/path-resolution/main.rs b/rust/ql/test/library-tests/path-resolution/main.rs index b330822ecc8b..4a3e4c82c20c 100644 --- a/rust/ql/test/library-tests/path-resolution/main.rs +++ b/rust/ql/test/library-tests/path-resolution/main.rs @@ -1060,12 +1060,12 @@ mod self_constructors { mod self_types { struct NonEmptyListStruct { head: T, // $ item=T - tail: Option>, // $ item=Option item=Box MISSING: item=NonEmptyListStruct + tail: Option>, // $ item=Option item=Box item=NonEmptyListStruct } enum NonEmptyListEnum { Single(T), // $ item=T - Cons(T, Box), // $ item=T item=Box MISSING: item=NonEmptyListEnum + Cons(T, Box), // $ item=T item=Box item=NonEmptyListEnum } #[rustfmt::skip] @@ -1075,7 +1075,7 @@ mod self_types { : Copy // $ item=Copy > { single: T, // $ item=T - cons: (T, &'a Self), // $ item=T MISSING: item=NonEmptyListUnion + cons: (T, &'a Self), // $ item=T item=NonEmptyListUnion } } diff --git a/rust/ql/test/library-tests/path-resolution/path-resolution.expected b/rust/ql/test/library-tests/path-resolution/path-resolution.expected index e1f9f60b76a8..fbb81bbf2caf 100644 --- a/rust/ql/test/library-tests/path-resolution/path-resolution.expected +++ b/rust/ql/test/library-tests/path-resolution/path-resolution.expected @@ -536,12 +536,15 @@ resolvePath | main.rs:1062:15:1062:15 | T | main.rs:1061:31:1061:31 | T | | main.rs:1063:15:1063:31 | Option::<...> | {EXTERNAL LOCATION} | enum Option | | main.rs:1063:22:1063:30 | Box::<...> | {EXTERNAL LOCATION} | struct Box | +| main.rs:1063:26:1063:29 | Self | main.rs:1061:5:1064:5 | struct NonEmptyListStruct | | main.rs:1067:16:1067:16 | T | main.rs:1066:27:1066:27 | T | | main.rs:1068:14:1068:14 | T | main.rs:1066:27:1066:27 | T | | main.rs:1068:17:1068:25 | Box::<...> | {EXTERNAL LOCATION} | struct Box | +| main.rs:1068:21:1068:24 | Self | main.rs:1066:5:1069:5 | enum NonEmptyListEnum | | main.rs:1075:13:1075:16 | Copy | {EXTERNAL LOCATION} | trait Copy | | main.rs:1077:17:1077:17 | T | main.rs:1074:9:1074:9 | T | | main.rs:1078:16:1078:16 | T | main.rs:1074:9:1074:9 | T | +| main.rs:1078:23:1078:26 | Self | main.rs:1071:5:1079:5 | union NonEmptyListUnion | | main.rs:1083:5:1083:6 | my | main.rs:1:1:1:7 | mod my | | main.rs:1083:5:1083:14 | ...::nested | my.rs:1:1:1:15 | mod nested | | main.rs:1083:5:1083:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | From 73d06f26cbffe97b29a80e1d3a2e9c41a79c8ff6 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 2 Feb 2026 14:04:26 +0000 Subject: [PATCH 266/433] Post-release preparation for codeql-cli-2.24.1 --- actions/ql/lib/qlpack.yml | 2 +- actions/ql/src/qlpack.yml | 2 +- cpp/ql/lib/qlpack.yml | 2 +- cpp/ql/src/qlpack.yml | 2 +- csharp/ql/campaigns/Solorigate/lib/qlpack.yml | 2 +- csharp/ql/campaigns/Solorigate/src/qlpack.yml | 2 +- csharp/ql/lib/qlpack.yml | 2 +- csharp/ql/src/qlpack.yml | 2 +- go/ql/consistency-queries/qlpack.yml | 2 +- go/ql/lib/qlpack.yml | 2 +- go/ql/src/qlpack.yml | 2 +- java/ql/lib/qlpack.yml | 2 +- java/ql/src/qlpack.yml | 2 +- javascript/ql/lib/qlpack.yml | 2 +- javascript/ql/src/qlpack.yml | 2 +- misc/suite-helpers/qlpack.yml | 2 +- python/ql/lib/qlpack.yml | 2 +- python/ql/src/qlpack.yml | 2 +- ruby/ql/lib/qlpack.yml | 2 +- ruby/ql/src/qlpack.yml | 2 +- rust/ql/lib/qlpack.yml | 2 +- rust/ql/src/qlpack.yml | 2 +- shared/concepts/qlpack.yml | 2 +- shared/controlflow/qlpack.yml | 2 +- shared/dataflow/qlpack.yml | 2 +- shared/mad/qlpack.yml | 2 +- shared/quantum/qlpack.yml | 2 +- shared/rangeanalysis/qlpack.yml | 2 +- shared/regex/qlpack.yml | 2 +- shared/ssa/qlpack.yml | 2 +- shared/threat-models/qlpack.yml | 2 +- shared/tutorial/qlpack.yml | 2 +- shared/typeflow/qlpack.yml | 2 +- shared/typeinference/qlpack.yml | 2 +- shared/typetracking/qlpack.yml | 2 +- shared/typos/qlpack.yml | 2 +- shared/util/qlpack.yml | 2 +- shared/xml/qlpack.yml | 2 +- shared/yaml/qlpack.yml | 2 +- swift/ql/lib/qlpack.yml | 2 +- swift/ql/src/qlpack.yml | 2 +- 41 files changed, 41 insertions(+), 41 deletions(-) diff --git a/actions/ql/lib/qlpack.yml b/actions/ql/lib/qlpack.yml index aa29568caf7c..d700f90710ab 100644 --- a/actions/ql/lib/qlpack.yml +++ b/actions/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-all -version: 0.4.27 +version: 0.4.28-dev library: true warnOnImplicitThis: true dependencies: diff --git a/actions/ql/src/qlpack.yml b/actions/ql/src/qlpack.yml index 7b9f281601a7..7c19f90be064 100644 --- a/actions/ql/src/qlpack.yml +++ b/actions/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-queries -version: 0.6.19 +version: 0.6.20-dev library: false warnOnImplicitThis: true groups: [actions, queries] diff --git a/cpp/ql/lib/qlpack.yml b/cpp/ql/lib/qlpack.yml index ac07194106ad..eeb5d0adf088 100644 --- a/cpp/ql/lib/qlpack.yml +++ b/cpp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-all -version: 7.1.0 +version: 7.1.1-dev groups: cpp dbscheme: semmlecode.cpp.dbscheme extractor: cpp diff --git a/cpp/ql/src/qlpack.yml b/cpp/ql/src/qlpack.yml index 232836a053d8..b374fb51f75f 100644 --- a/cpp/ql/src/qlpack.yml +++ b/cpp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-queries -version: 1.5.10 +version: 1.5.11-dev groups: - cpp - queries diff --git a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml index 09feed992650..bc1e19c5d118 100644 --- a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-all -version: 1.7.58 +version: 1.7.59-dev groups: - csharp - solorigate diff --git a/csharp/ql/campaigns/Solorigate/src/qlpack.yml b/csharp/ql/campaigns/Solorigate/src/qlpack.yml index 6f7ea3b625bf..87016f799ea4 100644 --- a/csharp/ql/campaigns/Solorigate/src/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-queries -version: 1.7.58 +version: 1.7.59-dev groups: - csharp - solorigate diff --git a/csharp/ql/lib/qlpack.yml b/csharp/ql/lib/qlpack.yml index 28d4a36b3ab7..31fb2ca66187 100644 --- a/csharp/ql/lib/qlpack.yml +++ b/csharp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-all -version: 5.4.6 +version: 5.4.7-dev groups: csharp dbscheme: semmlecode.csharp.dbscheme extractor: csharp diff --git a/csharp/ql/src/qlpack.yml b/csharp/ql/src/qlpack.yml index 85d9dbf9ead1..492445c23748 100644 --- a/csharp/ql/src/qlpack.yml +++ b/csharp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-queries -version: 1.6.1 +version: 1.6.2-dev groups: - csharp - queries diff --git a/go/ql/consistency-queries/qlpack.yml b/go/ql/consistency-queries/qlpack.yml index c07633f30b96..9db7c50224de 100644 --- a/go/ql/consistency-queries/qlpack.yml +++ b/go/ql/consistency-queries/qlpack.yml @@ -1,5 +1,5 @@ name: codeql-go-consistency-queries -version: 1.0.41 +version: 1.0.42-dev groups: - go - queries diff --git a/go/ql/lib/qlpack.yml b/go/ql/lib/qlpack.yml index af34da5d7d5a..3ddf09d98644 100644 --- a/go/ql/lib/qlpack.yml +++ b/go/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-all -version: 6.0.1 +version: 6.0.2-dev groups: go dbscheme: go.dbscheme extractor: go diff --git a/go/ql/src/qlpack.yml b/go/ql/src/qlpack.yml index 20e25202476b..cb2e964d4402 100644 --- a/go/ql/src/qlpack.yml +++ b/go/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-queries -version: 1.5.5 +version: 1.5.6-dev groups: - go - queries diff --git a/java/ql/lib/qlpack.yml b/java/ql/lib/qlpack.yml index eb1a7f632c7f..177711350d5a 100644 --- a/java/ql/lib/qlpack.yml +++ b/java/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-all -version: 8.0.0 +version: 8.0.1-dev groups: java dbscheme: config/semmlecode.dbscheme extractor: java diff --git a/java/ql/src/qlpack.yml b/java/ql/src/qlpack.yml index 570c8bf7e184..792bb13eb322 100644 --- a/java/ql/src/qlpack.yml +++ b/java/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-queries -version: 1.10.6 +version: 1.10.7-dev groups: - java - queries diff --git a/javascript/ql/lib/qlpack.yml b/javascript/ql/lib/qlpack.yml index 2e54148b68c4..830994432a56 100644 --- a/javascript/ql/lib/qlpack.yml +++ b/javascript/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-all -version: 2.6.21 +version: 2.6.22-dev groups: javascript dbscheme: semmlecode.javascript.dbscheme extractor: javascript diff --git a/javascript/ql/src/qlpack.yml b/javascript/ql/src/qlpack.yml index ad56a74e9b5d..8fc055f61e1a 100644 --- a/javascript/ql/src/qlpack.yml +++ b/javascript/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-queries -version: 2.3.1 +version: 2.3.2-dev groups: - javascript - queries diff --git a/misc/suite-helpers/qlpack.yml b/misc/suite-helpers/qlpack.yml index 4a0344c0f0f8..28a63301e69c 100644 --- a/misc/suite-helpers/qlpack.yml +++ b/misc/suite-helpers/qlpack.yml @@ -1,4 +1,4 @@ name: codeql/suite-helpers -version: 1.0.41 +version: 1.0.42-dev groups: shared warnOnImplicitThis: true diff --git a/python/ql/lib/qlpack.yml b/python/ql/lib/qlpack.yml index db127bd57920..1ead7adb6059 100644 --- a/python/ql/lib/qlpack.yml +++ b/python/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-all -version: 6.1.0 +version: 6.1.1-dev groups: python dbscheme: semmlecode.python.dbscheme extractor: python diff --git a/python/ql/src/qlpack.yml b/python/ql/src/qlpack.yml index 5725ef1f6644..e6de4a768bf6 100644 --- a/python/ql/src/qlpack.yml +++ b/python/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-queries -version: 1.7.6 +version: 1.7.7-dev groups: - python - queries diff --git a/ruby/ql/lib/qlpack.yml b/ruby/ql/lib/qlpack.yml index 6a48d4be1a25..824d21e13312 100644 --- a/ruby/ql/lib/qlpack.yml +++ b/ruby/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-all -version: 5.1.9 +version: 5.1.10-dev groups: ruby extractor: ruby dbscheme: ruby.dbscheme diff --git a/ruby/ql/src/qlpack.yml b/ruby/ql/src/qlpack.yml index a14269c692a9..63d59fd0faa9 100644 --- a/ruby/ql/src/qlpack.yml +++ b/ruby/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-queries -version: 1.5.6 +version: 1.5.7-dev groups: - ruby - queries diff --git a/rust/ql/lib/qlpack.yml b/rust/ql/lib/qlpack.yml index 4f33822af63e..d87089914d30 100644 --- a/rust/ql/lib/qlpack.yml +++ b/rust/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-all -version: 0.2.5 +version: 0.2.6-dev groups: rust extractor: rust dbscheme: rust.dbscheme diff --git a/rust/ql/src/qlpack.yml b/rust/ql/src/qlpack.yml index 61ff8e48167c..850f67e18a88 100644 --- a/rust/ql/src/qlpack.yml +++ b/rust/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-queries -version: 0.1.26 +version: 0.1.27-dev groups: - rust - queries diff --git a/shared/concepts/qlpack.yml b/shared/concepts/qlpack.yml index 40350f8b33c0..4cfa6918d191 100644 --- a/shared/concepts/qlpack.yml +++ b/shared/concepts/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/concepts -version: 0.0.15 +version: 0.0.16-dev groups: shared library: true dependencies: diff --git a/shared/controlflow/qlpack.yml b/shared/controlflow/qlpack.yml index f8e86c3b834d..5ed225933687 100644 --- a/shared/controlflow/qlpack.yml +++ b/shared/controlflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/controlflow -version: 2.0.25 +version: 2.0.26-dev groups: shared library: true dependencies: diff --git a/shared/dataflow/qlpack.yml b/shared/dataflow/qlpack.yml index 86bfb0a5b055..de23fe3e38b1 100644 --- a/shared/dataflow/qlpack.yml +++ b/shared/dataflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/dataflow -version: 2.0.25 +version: 2.0.26-dev groups: shared library: true dependencies: diff --git a/shared/mad/qlpack.yml b/shared/mad/qlpack.yml index 349dc19aa337..e1b46e5427cf 100644 --- a/shared/mad/qlpack.yml +++ b/shared/mad/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/mad -version: 1.0.41 +version: 1.0.42-dev groups: shared library: true dependencies: diff --git a/shared/quantum/qlpack.yml b/shared/quantum/qlpack.yml index f394fab96541..d3129461a499 100644 --- a/shared/quantum/qlpack.yml +++ b/shared/quantum/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/quantum -version: 0.0.19 +version: 0.0.20-dev groups: shared library: true dependencies: diff --git a/shared/rangeanalysis/qlpack.yml b/shared/rangeanalysis/qlpack.yml index 846d83bc93c4..be9c067d84ea 100644 --- a/shared/rangeanalysis/qlpack.yml +++ b/shared/rangeanalysis/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rangeanalysis -version: 1.0.41 +version: 1.0.42-dev groups: shared library: true dependencies: diff --git a/shared/regex/qlpack.yml b/shared/regex/qlpack.yml index 80b995f7c50c..93baefe6d786 100644 --- a/shared/regex/qlpack.yml +++ b/shared/regex/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/regex -version: 1.0.41 +version: 1.0.42-dev groups: shared library: true dependencies: diff --git a/shared/ssa/qlpack.yml b/shared/ssa/qlpack.yml index c1b143d616ef..d5e6d266097d 100644 --- a/shared/ssa/qlpack.yml +++ b/shared/ssa/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ssa -version: 2.0.17 +version: 2.0.18-dev groups: shared library: true dependencies: diff --git a/shared/threat-models/qlpack.yml b/shared/threat-models/qlpack.yml index 634544a4eb87..0ed1decf1d03 100644 --- a/shared/threat-models/qlpack.yml +++ b/shared/threat-models/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/threat-models -version: 1.0.41 +version: 1.0.42-dev library: true groups: shared dataExtensions: diff --git a/shared/tutorial/qlpack.yml b/shared/tutorial/qlpack.yml index 93b95d3210c3..1e937c1f8604 100644 --- a/shared/tutorial/qlpack.yml +++ b/shared/tutorial/qlpack.yml @@ -1,7 +1,7 @@ name: codeql/tutorial description: Library for the CodeQL detective tutorials, helping new users learn to write CodeQL queries. -version: 1.0.41 +version: 1.0.42-dev groups: shared library: true warnOnImplicitThis: true diff --git a/shared/typeflow/qlpack.yml b/shared/typeflow/qlpack.yml index 4512e9553856..f40dd352f6ea 100644 --- a/shared/typeflow/qlpack.yml +++ b/shared/typeflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeflow -version: 1.0.41 +version: 1.0.42-dev groups: shared library: true dependencies: diff --git a/shared/typeinference/qlpack.yml b/shared/typeinference/qlpack.yml index 6bb3be57eba1..927036035b5d 100644 --- a/shared/typeinference/qlpack.yml +++ b/shared/typeinference/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeinference -version: 0.0.22 +version: 0.0.23-dev groups: shared library: true dependencies: diff --git a/shared/typetracking/qlpack.yml b/shared/typetracking/qlpack.yml index fe7582bbde63..fcaed606ded0 100644 --- a/shared/typetracking/qlpack.yml +++ b/shared/typetracking/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typetracking -version: 2.0.25 +version: 2.0.26-dev groups: shared library: true dependencies: diff --git a/shared/typos/qlpack.yml b/shared/typos/qlpack.yml index e587573ad405..de131d17f6bb 100644 --- a/shared/typos/qlpack.yml +++ b/shared/typos/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typos -version: 1.0.41 +version: 1.0.42-dev groups: shared library: true warnOnImplicitThis: true diff --git a/shared/util/qlpack.yml b/shared/util/qlpack.yml index dd8c960aa0bb..def146658c0b 100644 --- a/shared/util/qlpack.yml +++ b/shared/util/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/util -version: 2.0.28 +version: 2.0.29-dev groups: shared library: true dependencies: null diff --git a/shared/xml/qlpack.yml b/shared/xml/qlpack.yml index ad13296db46a..d12cff34fbee 100644 --- a/shared/xml/qlpack.yml +++ b/shared/xml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/xml -version: 1.0.41 +version: 1.0.42-dev groups: shared library: true dependencies: diff --git a/shared/yaml/qlpack.yml b/shared/yaml/qlpack.yml index 03ddecb8a053..5ba88d4abdba 100644 --- a/shared/yaml/qlpack.yml +++ b/shared/yaml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/yaml -version: 1.0.41 +version: 1.0.42-dev groups: shared library: true warnOnImplicitThis: true diff --git a/swift/ql/lib/qlpack.yml b/swift/ql/lib/qlpack.yml index 9fc1e4731dd8..157e1334212b 100644 --- a/swift/ql/lib/qlpack.yml +++ b/swift/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-all -version: 6.2.1 +version: 6.2.2-dev groups: swift extractor: swift dbscheme: swift.dbscheme diff --git a/swift/ql/src/qlpack.yml b/swift/ql/src/qlpack.yml index 86538099f759..bdac35f35b2c 100644 --- a/swift/ql/src/qlpack.yml +++ b/swift/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-queries -version: 1.2.15 +version: 1.2.16-dev groups: - swift - queries From b16f1d3778564ff07ccda14d6190d6c4c9611e59 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 2 Feb 2026 15:21:05 +0100 Subject: [PATCH 267/433] Rust: Fix bad join Before ``` Evaluated relational algebra for predicate _PathResolution::ImplItemNode.getTraitPath/0#dispred#3b7d1cb6_PathResolution::ImplOrTraitItemNode.ge__#shared@0d3de6d9 with tuple counts: 395360270 ~2% {5} r1 = JOIN Type::TAssociatedTypeTypeParameter#6da9e52a WITH `PathResolution::ImplItemNode.getTraitPath/0#dispred#3b7d1cb6` CARTESIAN PRODUCT OUTPUT Rhs.0, Lhs.0, Lhs.1, Lhs.2, Rhs.1 1274237644 ~0% {6} | JOIN WITH `PathResolution::ItemNode.getASuccessor/1#8f430f71` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.4, Rhs.1, Rhs.2 1274237644 ~0% {6} | JOIN WITH PathResolution::TraitItemNode#8d4ce62d ON FIRST 1 OUTPUT Lhs.0, Lhs.4, Lhs.1, Lhs.2, Lhs.3, Lhs.5 6984871 ~0% {5} | JOIN WITH `PathResolution::ImplOrTraitItemNode.getAssocItem/1#f77bb9ed` ON FIRST 3 OUTPUT Lhs.2, Lhs.0, Lhs.3, Lhs.4, Lhs.5 6984871 ~0% {4} | JOIN WITH TypeAlias::Generated::TypeAlias#1ca97780 ON FIRST 1 OUTPUT Lhs.4, Lhs.1, Lhs.2, Lhs.3 6076675 ~0% {4} | JOIN WITH `TypeAlias::Generated::TypeAlias.getTypeRepr/0#dispred#5fd7e521` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3 return r1 ``` After ``` Evaluated relational algebra for predicate _PathResolution::ImplItemNode.getTraitPath/0#dispred#3b7d1cb6_PathResolution::ImplOrTraitItemNode.ge__#shared@760e0499 with tuple counts: 443292 ~2% {3} r1 = SCAN `PathResolution::ImplOrTraitItemNode.getAssocItem/1#f77bb9ed` OUTPUT In.0, In.2, In.1 1258 ~1% {3} | JOIN WITH Type::TAssociatedTypeTypeParameter#6da9e52a ON FIRST 2 OUTPUT Lhs.2, Lhs.0, Rhs.2 13656944 ~3% {4} | JOIN WITH `PathResolution::ItemNode.getASuccessor/1#8f430f71_102#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Rhs.2 6984871 ~0% {4} | JOIN WITH `PathResolution::ImplItemNode.getTraitPath/0#dispred#3b7d1cb6` ON FIRST 1 OUTPUT Lhs.3, Lhs.1, Lhs.2, Rhs.1 6076675 ~0% {4} | JOIN WITH `TypeAlias::Generated::TypeAlias.getTypeRepr/0#dispred#5fd7e521` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3 return r1 ``` --- rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index bdb25a65b156..4bff45ba0275 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -323,7 +323,7 @@ private module MkTypeMention Date: Mon, 2 Feb 2026 14:39:27 +0000 Subject: [PATCH 268/433] Add `EmitPrivateRegistryUsed` --- go/extractor/diagnostics/diagnostics.go | 21 ++++++++++++++++++++ go/extractor/diagnostics/diagnostics_test.go | 21 ++++++++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/go/extractor/diagnostics/diagnostics.go b/go/extractor/diagnostics/diagnostics.go index a91a9efac0d1..b40b31c15f3e 100644 --- a/go/extractor/diagnostics/diagnostics.go +++ b/go/extractor/diagnostics/diagnostics.go @@ -568,3 +568,24 @@ func EmitExtractionFailedForProjects(path []string) { noLocation, ) } + +func EmitPrivateRegistryUsed(writer DiagnosticsWriter, configs []string) { + lines := []string{} + + for i := range configs { + lines = append(lines, fmt.Sprintf("* %s", configs[i])) + } + + emitDiagnosticTo( + writer, + "go/autobuilder/analysis-using-private-registries", + "Go extraction used private package registries", + fmt.Sprintf( + "Go was extracted using the following private package registrie%s:\n\n%s\n", + plural(len(lines), "", "s"), + strings.Join(lines, "\n")), + severityNote, + fullVisibility, + noLocation, + ) +} diff --git a/go/extractor/diagnostics/diagnostics_test.go b/go/extractor/diagnostics/diagnostics_test.go index f2b560004bae..1582923fb559 100644 --- a/go/extractor/diagnostics/diagnostics_test.go +++ b/go/extractor/diagnostics/diagnostics_test.go @@ -83,3 +83,24 @@ func Test_EmitCannotFindPackages_Actions(t *testing.T) { // Custom build command suggestion assert.Contains(t, d.MarkdownMessage, "If any of the packages are already present in the repository") } + +func Test_EmitPrivateRegistryUsed(t *testing.T) { + writer := newMemoryDiagnosticsWriter() + + testItems := []string{ + "* https://github.com/github/example (Git Source)", + "* https://example.com/goproxy (GOPROXY Server)", + } + + EmitPrivateRegistryUsed(writer, testItems) + + assert.Len(t, writer.diagnostics, 1, "Expected one diagnostic to be emitted") + + d := writer.diagnostics[0] + assert.Equal(t, d.Source.Id, "go/autobuilder/analysis-using-private-registries") + assert.Equal(t, d.Severity, string(severityNote)) + + for i := range testItems { + assert.Contains(t, d.MarkdownMessage, testItems[i]) + } +} From 29930fa6bf98828af43ac93378ef9637b52ef385 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Mon, 2 Feb 2026 14:40:08 +0000 Subject: [PATCH 269/433] Track active proxy configurations --- go/extractor/util/registryproxy.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/go/extractor/util/registryproxy.go b/go/extractor/util/registryproxy.go index 1f20832e8d81..600c05a5af11 100644 --- a/go/extractor/util/registryproxy.go +++ b/go/extractor/util/registryproxy.go @@ -22,6 +22,19 @@ type RegistryConfig struct { URL string `json:"url"` } +func (config *RegistryConfig) Pretty() string { + pretty_type := "other" + + switch config.Type { + case GIT_SOURCE: + pretty_type = "Git Source" + case GOPROXY_SERVER: + pretty_type = "GOPROXY Server" + } + + return fmt.Sprintf("`%s` (%s)", config.URL, pretty_type) +} + // The address of the proxy including protocol and port (e.g. http://localhost:1234) var proxy_address string @@ -97,18 +110,22 @@ func getEnvVars() []string { if err != nil { slog.Error("Unable to parse proxy configurations", slog.String("error", err.Error())) } else { + activeConfigs := []RegistryConfig{} + // We only care about private registry configurations that are relevant to Go and // filter others out at this point. for _, cfg := range val { if cfg.Type == GOPROXY_SERVER { goproxy_servers = append(goproxy_servers, cfg.URL) slog.Info("Found GOPROXY server", slog.String("url", cfg.URL)) + activeConfigs = append(activeConfigs, cfg) } else if cfg.Type == GIT_SOURCE { parsed, err := url.Parse(cfg.URL) if err == nil && parsed.Hostname() != "" { git_source := parsed.Hostname() + parsed.Path + "*" git_sources = append(git_sources, git_source) slog.Info("Found Git source", slog.String("source", git_source)) + activeConfigs = append(activeConfigs, cfg) } else { slog.Warn("Not a valid URL for Git source", slog.String("url", cfg.URL)) } From 6d67e419ffc705deb5033bbb07f82ef80b3a8bd3 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Mon, 2 Feb 2026 14:45:06 +0000 Subject: [PATCH 270/433] Move private registry sources out of `util` package --- go/extractor/registries/BUILD.bazel | 16 ++++++++++++++++ .../{util => registries}/registryproxy.go | 2 +- .../{util => registries}/registryproxy_test.go | 2 +- go/extractor/toolchain/BUILD.bazel | 5 ++++- go/extractor/toolchain/toolchain.go | 3 ++- go/extractor/util/BUILD.bazel | 2 -- 6 files changed, 24 insertions(+), 6 deletions(-) create mode 100644 go/extractor/registries/BUILD.bazel rename go/extractor/{util => registries}/registryproxy.go (99%) rename go/extractor/{util => registries}/registryproxy_test.go (99%) diff --git a/go/extractor/registries/BUILD.bazel b/go/extractor/registries/BUILD.bazel new file mode 100644 index 000000000000..8c002f20db28 --- /dev/null +++ b/go/extractor/registries/BUILD.bazel @@ -0,0 +1,16 @@ +# generated running `bazel run //go/gazelle`, do not edit + +load("@rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "registries", + srcs = ["registryproxy.go"], + importpath = "github.com/github/codeql-go/extractor/registries", + visibility = ["//visibility:public"], +) + +go_test( + name = "registries_test", + srcs = ["registryproxy_test.go"], + embed = [":registries"], +) diff --git a/go/extractor/util/registryproxy.go b/go/extractor/registries/registryproxy.go similarity index 99% rename from go/extractor/util/registryproxy.go rename to go/extractor/registries/registryproxy.go index 600c05a5af11..793bec5a41db 100644 --- a/go/extractor/util/registryproxy.go +++ b/go/extractor/registries/registryproxy.go @@ -1,4 +1,4 @@ -package util +package registries import ( "encoding/json" diff --git a/go/extractor/util/registryproxy_test.go b/go/extractor/registries/registryproxy_test.go similarity index 99% rename from go/extractor/util/registryproxy_test.go rename to go/extractor/registries/registryproxy_test.go index ef63bd9d3f87..c564040ff1b6 100644 --- a/go/extractor/util/registryproxy_test.go +++ b/go/extractor/registries/registryproxy_test.go @@ -1,4 +1,4 @@ -package util +package registries import ( "testing" diff --git a/go/extractor/toolchain/BUILD.bazel b/go/extractor/toolchain/BUILD.bazel index 583749993239..16c591f2a96a 100644 --- a/go/extractor/toolchain/BUILD.bazel +++ b/go/extractor/toolchain/BUILD.bazel @@ -7,7 +7,10 @@ go_library( srcs = ["toolchain.go"], importpath = "github.com/github/codeql-go/extractor/toolchain", visibility = ["//visibility:public"], - deps = ["//go/extractor/util"], + deps = [ + "//go/extractor/registries", + "//go/extractor/util", + ], ) go_test( diff --git a/go/extractor/toolchain/toolchain.go b/go/extractor/toolchain/toolchain.go index 01b3ab813bd5..fb9d5512cd83 100644 --- a/go/extractor/toolchain/toolchain.go +++ b/go/extractor/toolchain/toolchain.go @@ -10,6 +10,7 @@ import ( "path/filepath" "strings" + "github.com/github/codeql-go/extractor/registries" "github.com/github/codeql-go/extractor/util" ) @@ -140,7 +141,7 @@ func SupportsWorkspaces() bool { // Constructs a `*exec.Cmd` for `go` with the specified arguments. func GoCommand(arg ...string) *exec.Cmd { cmd := exec.Command("go", arg...) - util.ApplyProxyEnvVars(cmd) + registries.ApplyProxyEnvVars(cmd) return cmd } diff --git a/go/extractor/util/BUILD.bazel b/go/extractor/util/BUILD.bazel index ee090607ced5..ccebf5ebd865 100644 --- a/go/extractor/util/BUILD.bazel +++ b/go/extractor/util/BUILD.bazel @@ -8,7 +8,6 @@ go_library( "extractvendordirs.go", "logging.go", "overlays.go", - "registryproxy.go", "semver.go", "util.go", ], @@ -21,7 +20,6 @@ go_test( name = "util_test", srcs = [ "logging_test.go", - "registryproxy_test.go", "semver_test.go", "util_test.go", ], From 30b30d65c832a2a14a7f64834f532156d4e223c0 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Mon, 2 Feb 2026 14:47:25 +0000 Subject: [PATCH 271/433] Emit the new diagnostic --- go/extractor/registries/BUILD.bazel | 1 + go/extractor/registries/registryproxy.go | 14 ++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/go/extractor/registries/BUILD.bazel b/go/extractor/registries/BUILD.bazel index 8c002f20db28..7947556ee5d8 100644 --- a/go/extractor/registries/BUILD.bazel +++ b/go/extractor/registries/BUILD.bazel @@ -7,6 +7,7 @@ go_library( srcs = ["registryproxy.go"], importpath = "github.com/github/codeql-go/extractor/registries", visibility = ["//visibility:public"], + deps = ["//go/extractor/diagnostics"], ) go_test( diff --git a/go/extractor/registries/registryproxy.go b/go/extractor/registries/registryproxy.go index 793bec5a41db..1bb5995e27ab 100644 --- a/go/extractor/registries/registryproxy.go +++ b/go/extractor/registries/registryproxy.go @@ -8,6 +8,8 @@ import ( "os" "os/exec" "strings" + + "github.com/github/codeql-go/extractor/diagnostics" ) const PROXY_HOST = "CODEQL_PROXY_HOST" @@ -132,6 +134,18 @@ func getEnvVars() []string { } } + // Emit a diagnostic to make it easy for users to see that private registry + // configurations were picked up by the Go analysis. + if len(activeConfigs) > 0 { + prettyConfigs := []string{} + for i := range activeConfigs { + prettyConfigs = append(prettyConfigs, activeConfigs[i].Pretty()) + } + + diagnostics.EmitPrivateRegistryUsed(diagnostics.DefaultWriter, prettyConfigs) + } + + // Assemble environment variables for Go. goprivate := []string{} if len(goproxy_servers) > 0 { From 8de37fec17efaf1aa914c3ad6e41dcc73f88bcc3 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 2 Feb 2026 13:59:50 +0100 Subject: [PATCH 272/433] Rust: Add tests with `as` paths --- .../library-tests/path-resolution/main.rs | 21 +- .../path-resolution/path-resolution.expected | 831 +- .../test/library-tests/type-inference/main.rs | 31 + .../type-inference/type-inference.expected | 16052 ++++++++-------- 4 files changed, 8525 insertions(+), 8410 deletions(-) diff --git a/rust/ql/test/library-tests/path-resolution/main.rs b/rust/ql/test/library-tests/path-resolution/main.rs index 9336666b477d..3276807cacb4 100644 --- a/rust/ql/test/library-tests/path-resolution/main.rs +++ b/rust/ql/test/library-tests/path-resolution/main.rs @@ -305,7 +305,7 @@ mod m13 { mod m15 { trait Trait1 { - fn f(&self); + fn f(&self); // Trait1::f fn g(&self); // I80 } // I79 @@ -317,7 +317,7 @@ mod m15 { println!("m15::Trait2::f"); // $ item=println Self::g(self); // $ item=I80 self.g(); // $ item=I80 - } + } // Trait2::f } // I82 #[rustfmt::skip] @@ -379,10 +379,11 @@ mod m16 { trait Trait1< T // I84 > { - fn f(&self) -> T; // $ item=I84 + fn f(&self) -> T // $ item=I84 + ; // Trait1::f fn g(&self) -> T {// $ item=I84 - self.f() // $ item=f + self.f() // $ item=Trait1::f } // I85 fn h(&self) -> T { // $ item=I84 @@ -406,7 +407,7 @@ mod m16 { Self::g(self); // $ item=I85 self.g(); // $ item=I85 Self::c // $ item=I94 - } + } // Trait2::f } // I89 struct S; // I90 @@ -940,6 +941,16 @@ mod associated_types_subtrait { self.0 } } + + #[rustfmt::skip] + impl S { // $ item=S item=bool + fn _test() { + let _c: as Super>::Out = 'a'; // $ item=S item=i32 item=Super MISSING: item=SuperAssoc + let _i: as Super>::Out = 1; // $ item=S item=bool item=Super MISSING: item=SuperAssoc + + let _b: as SuperAlt>::Out = true; // $ item=S item=bool item=SuperAlt MISSING: item=SuperAltAssoc + } + } } use std::{self as ztd}; // $ item=std diff --git a/rust/ql/test/library-tests/path-resolution/path-resolution.expected b/rust/ql/test/library-tests/path-resolution/path-resolution.expected index fd1e5fd8503e..9b65bb84666b 100644 --- a/rust/ql/test/library-tests/path-resolution/path-resolution.expected +++ b/rust/ql/test/library-tests/path-resolution/path-resolution.expected @@ -18,23 +18,23 @@ mod | main.rs:291:1:304:1 | mod m13 | | main.rs:295:5:303:5 | mod m14 | | main.rs:306:1:375:1 | mod m15 | -| main.rs:377:1:574:1 | mod m16 | -| main.rs:576:1:633:1 | mod trait_visibility | -| main.rs:577:5:599:5 | mod m | -| main.rs:635:1:665:1 | mod m17 | -| main.rs:667:1:685:1 | mod m18 | -| main.rs:672:5:684:5 | mod m19 | -| main.rs:677:9:683:9 | mod m20 | -| main.rs:687:1:712:1 | mod m21 | -| main.rs:688:5:694:5 | mod m22 | -| main.rs:696:5:711:5 | mod m33 | -| main.rs:714:1:739:1 | mod m23 | -| main.rs:741:1:809:1 | mod m24 | -| main.rs:826:1:878:1 | mod associated_types | -| main.rs:880:1:943:1 | mod associated_types_subtrait | -| main.rs:949:1:968:1 | mod impl_with_attribute_macro | -| main.rs:970:1:1011:1 | mod patterns | -| main.rs:1013:1:1057:1 | mod self_constructors | +| main.rs:377:1:575:1 | mod m16 | +| main.rs:577:1:634:1 | mod trait_visibility | +| main.rs:578:5:600:5 | mod m | +| main.rs:636:1:666:1 | mod m17 | +| main.rs:668:1:686:1 | mod m18 | +| main.rs:673:5:685:5 | mod m19 | +| main.rs:678:9:684:9 | mod m20 | +| main.rs:688:1:713:1 | mod m21 | +| main.rs:689:5:695:5 | mod m22 | +| main.rs:697:5:712:5 | mod m33 | +| main.rs:715:1:740:1 | mod m23 | +| main.rs:742:1:810:1 | mod m24 | +| main.rs:827:1:879:1 | mod associated_types | +| main.rs:881:1:954:1 | mod associated_types_subtrait | +| main.rs:960:1:979:1 | mod impl_with_attribute_macro | +| main.rs:981:1:1022:1 | mod patterns | +| main.rs:1024:1:1068:1 | mod self_constructors | | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:20:1:20:12 | mod my3 | | my2/mod.rs:22:1:23:10 | mod mymod | @@ -75,7 +75,7 @@ resolvePath | main.rs:37:17:37:24 | ...::f | main.rs:26:9:28:9 | fn f | | main.rs:39:17:39:23 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:40:17:40:17 | f | main.rs:26:9:28:9 | fn f | -| main.rs:47:9:47:13 | super | main.rs:1:1:1096:2 | SourceFile | +| main.rs:47:9:47:13 | super | main.rs:1:1:1107:2 | SourceFile | | main.rs:47:9:47:17 | ...::m1 | main.rs:20:1:44:1 | mod m1 | | main.rs:47:9:47:21 | ...::m2 | main.rs:25:5:43:5 | mod m2 | | main.rs:47:9:47:24 | ...::g | main.rs:30:9:34:9 | fn g | @@ -90,7 +90,7 @@ resolvePath | main.rs:68:17:68:19 | Foo | main.rs:66:9:66:21 | struct Foo | | main.rs:71:13:71:15 | Foo | main.rs:60:5:60:17 | struct Foo | | main.rs:73:5:73:5 | f | main.rs:62:5:69:5 | fn f | -| main.rs:75:5:75:8 | self | main.rs:1:1:1096:2 | SourceFile | +| main.rs:75:5:75:8 | self | main.rs:1:1:1107:2 | SourceFile | | main.rs:75:5:75:11 | ...::i | main.rs:78:1:90:1 | fn i | | main.rs:79:5:79:11 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:81:13:81:15 | Foo | main.rs:55:1:55:13 | struct Foo | @@ -112,7 +112,7 @@ resolvePath | main.rs:112:9:112:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:118:9:118:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:122:9:122:15 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:125:13:125:17 | super | main.rs:1:1:1096:2 | SourceFile | +| main.rs:125:13:125:17 | super | main.rs:1:1:1107:2 | SourceFile | | main.rs:125:13:125:21 | ...::m5 | main.rs:110:1:114:1 | mod m5 | | main.rs:126:9:126:9 | f | main.rs:111:5:113:5 | fn f | | main.rs:126:9:126:9 | f | main.rs:117:5:119:5 | fn f | @@ -214,397 +214,408 @@ resolvePath | main.rs:372:9:372:9 | S | main.rs:338:5:338:13 | struct S | | main.rs:372:9:372:12 | ...::g | main.rs:349:9:351:9 | fn g | | main.rs:382:24:382:24 | T | main.rs:380:7:380:7 | T | -| main.rs:384:24:384:24 | T | main.rs:380:7:380:7 | T | -| main.rs:388:24:388:24 | T | main.rs:380:7:380:7 | T | -| main.rs:389:13:389:16 | Self | main.rs:378:5:395:5 | trait Trait1 | -| main.rs:389:13:389:19 | ...::g | main.rs:384:9:386:9 | fn g | -| main.rs:393:18:393:18 | T | main.rs:380:7:380:7 | T | -| main.rs:401:9:403:9 | Trait1::<...> | main.rs:378:5:395:5 | trait Trait1 | -| main.rs:402:11:402:11 | T | main.rs:399:7:399:7 | T | -| main.rs:404:24:404:24 | T | main.rs:399:7:399:7 | T | -| main.rs:405:13:405:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:406:13:406:16 | Self | main.rs:397:5:410:5 | trait Trait2 | -| main.rs:406:13:406:19 | ...::g | main.rs:384:9:386:9 | fn g | -| main.rs:408:13:408:16 | Self | main.rs:397:5:410:5 | trait Trait2 | -| main.rs:408:13:408:19 | ...::c | main.rs:393:9:394:9 | Const | -| main.rs:415:10:417:5 | Trait1::<...> | main.rs:378:5:395:5 | trait Trait1 | -| main.rs:416:7:416:7 | S | main.rs:412:5:412:13 | struct S | -| main.rs:418:11:418:11 | S | main.rs:412:5:412:13 | struct S | -| main.rs:419:24:419:24 | S | main.rs:412:5:412:13 | struct S | -| main.rs:420:13:420:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:421:13:421:16 | Self | main.rs:414:5:432:5 | impl Trait1::<...> for S { ... } | -| main.rs:421:13:421:19 | ...::g | main.rs:425:9:428:9 | fn g | -| main.rs:425:24:425:24 | S | main.rs:412:5:412:13 | struct S | -| main.rs:426:13:426:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:427:13:427:16 | Self | main.rs:414:5:432:5 | impl Trait1::<...> for S { ... } | -| main.rs:427:13:427:19 | ...::c | main.rs:430:9:431:9 | Const | -| main.rs:430:18:430:18 | S | main.rs:412:5:412:13 | struct S | -| main.rs:430:22:430:22 | S | main.rs:412:5:412:13 | struct S | -| main.rs:435:10:437:5 | Trait2::<...> | main.rs:397:5:410:5 | trait Trait2 | -| main.rs:436:7:436:7 | S | main.rs:412:5:412:13 | struct S | -| main.rs:438:11:438:11 | S | main.rs:412:5:412:13 | struct S | -| main.rs:439:24:439:24 | S | main.rs:412:5:412:13 | struct S | -| main.rs:440:13:440:16 | Self | main.rs:434:5:444:5 | impl Trait2::<...> for S { ... } | -| main.rs:440:13:440:19 | ...::g | main.rs:425:9:428:9 | fn g | -| main.rs:441:13:441:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:442:13:442:16 | Self | main.rs:434:5:444:5 | impl Trait2::<...> for S { ... } | -| main.rs:442:13:442:19 | ...::c | main.rs:430:9:431:9 | Const | -| main.rs:448:9:448:15 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:449:17:449:17 | S | main.rs:412:5:412:13 | struct S | -| main.rs:450:10:450:10 | S | main.rs:412:5:412:13 | struct S | -| main.rs:451:14:453:11 | Trait1::<...> | main.rs:378:5:395:5 | trait Trait1 | -| main.rs:452:13:452:13 | S | main.rs:412:5:412:13 | struct S | -| main.rs:455:10:455:10 | S | main.rs:412:5:412:13 | struct S | -| main.rs:456:14:458:11 | Trait2::<...> | main.rs:397:5:410:5 | trait Trait2 | -| main.rs:457:13:457:13 | S | main.rs:412:5:412:13 | struct S | -| main.rs:460:9:460:9 | S | main.rs:412:5:412:13 | struct S | -| main.rs:460:9:460:12 | ...::g | main.rs:425:9:428:9 | fn g | -| main.rs:462:9:462:9 | S | main.rs:412:5:412:13 | struct S | -| main.rs:462:9:462:12 | ...::h | main.rs:388:9:391:9 | fn h | -| main.rs:464:9:464:9 | S | main.rs:412:5:412:13 | struct S | -| main.rs:464:9:464:12 | ...::c | main.rs:430:9:431:9 | Const | -| main.rs:465:10:465:10 | S | main.rs:412:5:412:13 | struct S | -| main.rs:466:14:468:11 | Trait1::<...> | main.rs:378:5:395:5 | trait Trait1 | -| main.rs:467:13:467:13 | S | main.rs:412:5:412:13 | struct S | -| main.rs:487:10:487:15 | Trait3 | main.rs:472:5:476:5 | trait Trait3 | -| main.rs:487:21:487:22 | S2 | main.rs:484:5:484:14 | struct S2 | -| main.rs:488:26:488:28 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:492:20:492:23 | Self | main.rs:486:5:494:5 | impl Trait3 for S2 { ... } | -| main.rs:492:20:492:34 | ...::AssocType | main.rs:487:26:489:9 | type AssocType | -| main.rs:497:10:497:15 | Trait4 | main.rs:478:5:482:5 | trait Trait4 | -| main.rs:497:21:497:22 | S2 | main.rs:484:5:484:14 | struct S2 | -| main.rs:498:26:498:29 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:502:13:502:16 | Self | main.rs:496:5:506:5 | impl Trait4 for S2 { ... } | -| main.rs:502:13:502:19 | ...::f | main.rs:489:11:493:9 | fn f | -| main.rs:503:13:503:14 | S2 | main.rs:484:5:484:14 | struct S2 | -| main.rs:503:13:503:17 | ...::f | main.rs:489:11:493:9 | fn f | -| main.rs:504:20:504:23 | Self | main.rs:496:5:506:5 | impl Trait4 for S2 { ... } | -| main.rs:504:20:504:34 | ...::AssocType | main.rs:497:26:499:9 | type AssocType | -| main.rs:511:23:511:26 | Self | main.rs:508:5:512:5 | trait Trait5 | -| main.rs:511:23:511:33 | ...::Assoc | main.rs:509:9:509:19 | type Assoc | -| main.rs:515:10:515:15 | Trait5 | main.rs:508:5:512:5 | trait Trait5 | -| main.rs:515:21:515:21 | S | main.rs:412:5:412:13 | struct S | -| main.rs:516:22:516:24 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:520:16:520:19 | Self | main.rs:514:5:523:5 | impl Trait5 for S { ... } | -| main.rs:520:16:520:26 | ...::Assoc | main.rs:515:25:517:9 | type Assoc | -| main.rs:521:13:521:16 | Self | main.rs:514:5:523:5 | impl Trait5 for S { ... } | -| main.rs:521:13:521:23 | ...::Assoc | main.rs:519:9:522:9 | fn Assoc | -| main.rs:525:19:525:20 | T3 | main.rs:525:15:525:16 | T3 | -| main.rs:528:10:528:15 | Trait5 | main.rs:508:5:512:5 | trait Trait5 | -| main.rs:528:21:528:27 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:528:24:528:26 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:529:22:529:24 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:533:16:533:19 | Self | main.rs:527:5:536:5 | impl Trait5 for S3::<...> { ... } | -| main.rs:533:16:533:26 | ...::Assoc | main.rs:528:31:530:9 | type Assoc | -| main.rs:534:13:534:16 | Self | main.rs:527:5:536:5 | impl Trait5 for S3::<...> { ... } | -| main.rs:534:13:534:23 | ...::Assoc | main.rs:532:9:535:9 | fn Assoc | -| main.rs:539:10:539:15 | Trait5 | main.rs:508:5:512:5 | trait Trait5 | -| main.rs:539:21:539:28 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:539:24:539:27 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:540:22:540:25 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:544:16:544:19 | Self | main.rs:538:5:547:5 | impl Trait5 for S3::<...> { ... } | -| main.rs:544:16:544:26 | ...::Assoc | main.rs:539:32:541:9 | type Assoc | -| main.rs:545:14:545:17 | Self | main.rs:538:5:547:5 | impl Trait5 for S3::<...> { ... } | -| main.rs:545:14:545:24 | ...::Assoc | main.rs:543:9:546:9 | fn Assoc | -| main.rs:550:10:550:16 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:550:13:550:15 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:551:20:551:22 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:557:10:557:17 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:557:13:557:16 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:558:20:558:23 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:565:9:565:17 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:565:9:566:13 | ...::Assoc | main.rs:532:9:535:9 | fn Assoc | -| main.rs:565:9:566:13 | ...::Assoc | main.rs:543:9:546:9 | fn Assoc | -| main.rs:565:14:565:16 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:568:9:568:18 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:568:9:569:10 | ...::f1 | main.rs:550:20:553:9 | fn f1 | -| main.rs:568:9:569:10 | ...::f1 | main.rs:557:21:560:9 | fn f1 | -| main.rs:568:14:568:17 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:571:9:571:17 | S3::<...> | main.rs:525:5:525:22 | struct S3 | -| main.rs:571:9:572:10 | ...::f1 | main.rs:550:20:553:9 | fn f1 | -| main.rs:571:9:572:10 | ...::f1 | main.rs:557:21:560:9 | fn f1 | -| main.rs:571:14:571:16 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:588:14:588:16 | Foo | main.rs:578:9:580:9 | trait Foo | -| main.rs:588:22:588:22 | X | main.rs:586:9:586:21 | struct X | -| main.rs:590:17:590:23 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:594:14:594:16 | Bar | main.rs:582:9:584:9 | trait Bar | -| main.rs:594:22:594:22 | X | main.rs:586:9:586:21 | struct X | -| main.rs:596:17:596:23 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:601:9:601:9 | m | main.rs:577:5:599:5 | mod m | -| main.rs:601:9:601:12 | ...::X | main.rs:586:9:586:21 | struct X | -| main.rs:604:17:604:17 | X | main.rs:586:9:586:21 | struct X | -| main.rs:607:17:607:17 | m | main.rs:577:5:599:5 | mod m | -| main.rs:607:17:607:22 | ...::Foo | main.rs:578:9:580:9 | trait Foo | -| main.rs:608:13:608:13 | X | main.rs:586:9:586:21 | struct X | -| main.rs:608:13:608:23 | ...::a_method | main.rs:588:26:591:13 | fn a_method | -| main.rs:611:18:611:18 | X | main.rs:586:9:586:21 | struct X | -| main.rs:613:21:613:24 | Self | main.rs:610:13:615:13 | impl X { ... } | -| main.rs:613:21:613:34 | ...::a_method | main.rs:588:26:591:13 | fn a_method | -| main.rs:619:17:619:17 | m | main.rs:577:5:599:5 | mod m | -| main.rs:619:17:619:22 | ...::Bar | main.rs:582:9:584:9 | trait Bar | -| main.rs:620:13:620:13 | X | main.rs:586:9:586:21 | struct X | -| main.rs:620:13:620:23 | ...::a_method | main.rs:594:26:597:13 | fn a_method | -| main.rs:624:17:624:17 | m | main.rs:577:5:599:5 | mod m | -| main.rs:624:17:624:22 | ...::Bar | main.rs:582:9:584:9 | trait Bar | -| main.rs:625:13:625:13 | X | main.rs:586:9:586:21 | struct X | -| main.rs:625:13:625:23 | ...::a_method | main.rs:594:26:597:13 | fn a_method | -| main.rs:630:13:630:13 | m | main.rs:577:5:599:5 | mod m | -| main.rs:630:13:630:18 | ...::Bar | main.rs:582:9:584:9 | trait Bar | -| main.rs:630:13:630:28 | ...::a_method | main.rs:583:13:583:31 | fn a_method | -| main.rs:643:10:643:16 | MyTrait | main.rs:636:5:638:5 | trait MyTrait | -| main.rs:644:9:644:9 | S | main.rs:640:5:640:13 | struct S | -| main.rs:646:13:646:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:652:7:652:13 | MyTrait | main.rs:636:5:638:5 | trait MyTrait | -| main.rs:653:10:653:10 | T | main.rs:651:10:651:10 | T | -| main.rs:655:9:655:9 | T | main.rs:651:10:651:10 | T | -| main.rs:655:9:655:12 | ...::f | main.rs:637:9:637:20 | fn f | -| main.rs:656:9:656:15 | MyTrait | main.rs:636:5:638:5 | trait MyTrait | -| main.rs:656:9:656:18 | ...::f | main.rs:637:9:637:20 | fn f | -| main.rs:661:9:661:9 | g | main.rs:650:5:657:5 | fn g | -| main.rs:662:11:662:11 | S | main.rs:640:5:640:13 | struct S | -| main.rs:669:9:669:15 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:674:13:674:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:679:17:679:23 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:680:17:680:21 | super | main.rs:672:5:684:5 | mod m19 | -| main.rs:680:17:680:24 | ...::f | main.rs:673:9:675:9 | fn f | -| main.rs:681:17:681:21 | super | main.rs:672:5:684:5 | mod m19 | -| main.rs:681:17:681:28 | ...::super | main.rs:667:1:685:1 | mod m18 | -| main.rs:681:17:681:31 | ...::f | main.rs:668:5:670:5 | fn f | -| main.rs:698:13:698:17 | super | main.rs:687:1:712:1 | mod m21 | -| main.rs:698:13:698:22 | ...::m22 | main.rs:688:5:694:5 | mod m22 | -| main.rs:698:13:698:30 | ...::MyEnum | main.rs:689:9:691:9 | enum MyEnum | -| main.rs:699:13:699:16 | self | main.rs:689:9:691:9 | enum MyEnum | -| main.rs:703:13:703:17 | super | main.rs:687:1:712:1 | mod m21 | -| main.rs:703:13:703:22 | ...::m22 | main.rs:688:5:694:5 | mod m22 | -| main.rs:703:13:703:32 | ...::MyStruct | main.rs:693:9:693:28 | struct MyStruct | -| main.rs:704:13:704:16 | self | main.rs:693:9:693:28 | struct MyStruct | -| main.rs:708:21:708:26 | MyEnum | main.rs:689:9:691:9 | enum MyEnum | -| main.rs:708:21:708:29 | ...::A | main.rs:690:13:690:13 | A | -| main.rs:709:21:709:28 | MyStruct | main.rs:693:9:693:28 | struct MyStruct | -| main.rs:725:10:727:5 | Trait1::<...> | main.rs:715:5:720:5 | trait Trait1 | -| main.rs:726:7:726:10 | Self | main.rs:722:5:722:13 | struct S | -| main.rs:728:11:728:11 | S | main.rs:722:5:722:13 | struct S | -| main.rs:730:13:730:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:736:17:736:17 | S | main.rs:722:5:722:13 | struct S | -| main.rs:752:15:752:15 | T | main.rs:751:26:751:26 | T | -| main.rs:757:9:757:24 | GenericStruct::<...> | main.rs:750:5:753:5 | struct GenericStruct | -| main.rs:757:23:757:23 | T | main.rs:756:10:756:10 | T | -| main.rs:759:9:759:9 | T | main.rs:756:10:756:10 | T | -| main.rs:759:12:759:17 | TraitA | main.rs:742:5:744:5 | trait TraitA | -| main.rs:768:9:768:24 | GenericStruct::<...> | main.rs:750:5:753:5 | struct GenericStruct | -| main.rs:768:23:768:23 | T | main.rs:767:10:767:10 | T | -| main.rs:770:9:770:9 | T | main.rs:767:10:767:10 | T | -| main.rs:770:12:770:17 | TraitB | main.rs:746:5:748:5 | trait TraitB | -| main.rs:771:9:771:9 | T | main.rs:767:10:767:10 | T | -| main.rs:771:12:771:17 | TraitA | main.rs:742:5:744:5 | trait TraitA | -| main.rs:782:10:782:15 | TraitA | main.rs:742:5:744:5 | trait TraitA | -| main.rs:782:21:782:31 | Implementor | main.rs:779:5:779:23 | struct Implementor | -| main.rs:784:13:784:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:789:10:789:15 | TraitB | main.rs:746:5:748:5 | trait TraitB | -| main.rs:789:21:789:31 | Implementor | main.rs:779:5:779:23 | struct Implementor | -| main.rs:791:13:791:19 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:797:24:797:34 | Implementor | main.rs:779:5:779:23 | struct Implementor | -| main.rs:798:23:798:35 | GenericStruct | main.rs:750:5:753:5 | struct GenericStruct | -| main.rs:804:9:804:36 | GenericStruct::<...> | main.rs:750:5:753:5 | struct GenericStruct | -| main.rs:804:9:804:50 | ...::call_trait_a | main.rs:761:9:763:9 | fn call_trait_a | -| main.rs:804:25:804:35 | Implementor | main.rs:779:5:779:23 | struct Implementor | -| main.rs:807:9:807:36 | GenericStruct::<...> | main.rs:750:5:753:5 | struct GenericStruct | -| main.rs:807:9:807:47 | ...::call_both | main.rs:773:9:776:9 | fn call_both | -| main.rs:807:25:807:35 | Implementor | main.rs:779:5:779:23 | struct Implementor | -| main.rs:813:3:813:12 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:813:3:813:24 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | -| main.rs:817:6:817:12 | AStruct | main.rs:816:1:816:17 | struct AStruct | -| main.rs:819:7:819:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:819:7:819:28 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | -| main.rs:822:7:822:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:822:7:822:28 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | -| main.rs:827:9:827:11 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:827:9:827:19 | ...::marker | {EXTERNAL LOCATION} | mod marker | -| main.rs:827:9:827:32 | ...::PhantomData | {EXTERNAL LOCATION} | struct PhantomData | +| main.rs:385:24:385:24 | T | main.rs:380:7:380:7 | T | +| main.rs:389:24:389:24 | T | main.rs:380:7:380:7 | T | +| main.rs:390:13:390:16 | Self | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:390:13:390:19 | ...::g | main.rs:385:9:387:9 | fn g | +| main.rs:394:18:394:18 | T | main.rs:380:7:380:7 | T | +| main.rs:402:9:404:9 | Trait1::<...> | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:403:11:403:11 | T | main.rs:400:7:400:7 | T | +| main.rs:405:24:405:24 | T | main.rs:400:7:400:7 | T | +| main.rs:406:13:406:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:407:13:407:16 | Self | main.rs:398:5:411:5 | trait Trait2 | +| main.rs:407:13:407:19 | ...::g | main.rs:385:9:387:9 | fn g | +| main.rs:409:13:409:16 | Self | main.rs:398:5:411:5 | trait Trait2 | +| main.rs:409:13:409:19 | ...::c | main.rs:394:9:395:9 | Const | +| main.rs:416:10:418:5 | Trait1::<...> | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:417:7:417:7 | S | main.rs:413:5:413:13 | struct S | +| main.rs:419:11:419:11 | S | main.rs:413:5:413:13 | struct S | +| main.rs:420:24:420:24 | S | main.rs:413:5:413:13 | struct S | +| main.rs:421:13:421:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:422:13:422:16 | Self | main.rs:415:5:433:5 | impl Trait1::<...> for S { ... } | +| main.rs:422:13:422:19 | ...::g | main.rs:426:9:429:9 | fn g | +| main.rs:426:24:426:24 | S | main.rs:413:5:413:13 | struct S | +| main.rs:427:13:427:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:428:13:428:16 | Self | main.rs:415:5:433:5 | impl Trait1::<...> for S { ... } | +| main.rs:428:13:428:19 | ...::c | main.rs:431:9:432:9 | Const | +| main.rs:431:18:431:18 | S | main.rs:413:5:413:13 | struct S | +| main.rs:431:22:431:22 | S | main.rs:413:5:413:13 | struct S | +| main.rs:436:10:438:5 | Trait2::<...> | main.rs:398:5:411:5 | trait Trait2 | +| main.rs:437:7:437:7 | S | main.rs:413:5:413:13 | struct S | +| main.rs:439:11:439:11 | S | main.rs:413:5:413:13 | struct S | +| main.rs:440:24:440:24 | S | main.rs:413:5:413:13 | struct S | +| main.rs:441:13:441:16 | Self | main.rs:435:5:445:5 | impl Trait2::<...> for S { ... } | +| main.rs:441:13:441:19 | ...::g | main.rs:426:9:429:9 | fn g | +| main.rs:442:13:442:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:443:13:443:16 | Self | main.rs:435:5:445:5 | impl Trait2::<...> for S { ... } | +| main.rs:443:13:443:19 | ...::c | main.rs:431:9:432:9 | Const | +| main.rs:449:9:449:15 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:450:17:450:17 | S | main.rs:413:5:413:13 | struct S | +| main.rs:451:10:451:10 | S | main.rs:413:5:413:13 | struct S | +| main.rs:452:14:454:11 | Trait1::<...> | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:453:13:453:13 | S | main.rs:413:5:413:13 | struct S | +| main.rs:456:10:456:10 | S | main.rs:413:5:413:13 | struct S | +| main.rs:457:14:459:11 | Trait2::<...> | main.rs:398:5:411:5 | trait Trait2 | +| main.rs:458:13:458:13 | S | main.rs:413:5:413:13 | struct S | +| main.rs:461:9:461:9 | S | main.rs:413:5:413:13 | struct S | +| main.rs:461:9:461:12 | ...::g | main.rs:426:9:429:9 | fn g | +| main.rs:463:9:463:9 | S | main.rs:413:5:413:13 | struct S | +| main.rs:463:9:463:12 | ...::h | main.rs:389:9:392:9 | fn h | +| main.rs:465:9:465:9 | S | main.rs:413:5:413:13 | struct S | +| main.rs:465:9:465:12 | ...::c | main.rs:431:9:432:9 | Const | +| main.rs:466:10:466:10 | S | main.rs:413:5:413:13 | struct S | +| main.rs:467:14:469:11 | Trait1::<...> | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:468:13:468:13 | S | main.rs:413:5:413:13 | struct S | +| main.rs:488:10:488:15 | Trait3 | main.rs:473:5:477:5 | trait Trait3 | +| main.rs:488:21:488:22 | S2 | main.rs:485:5:485:14 | struct S2 | +| main.rs:489:26:489:28 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:493:20:493:23 | Self | main.rs:487:5:495:5 | impl Trait3 for S2 { ... } | +| main.rs:493:20:493:34 | ...::AssocType | main.rs:488:26:490:9 | type AssocType | +| main.rs:498:10:498:15 | Trait4 | main.rs:479:5:483:5 | trait Trait4 | +| main.rs:498:21:498:22 | S2 | main.rs:485:5:485:14 | struct S2 | +| main.rs:499:26:499:29 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:503:13:503:16 | Self | main.rs:497:5:507:5 | impl Trait4 for S2 { ... } | +| main.rs:503:13:503:19 | ...::f | main.rs:490:11:494:9 | fn f | +| main.rs:504:13:504:14 | S2 | main.rs:485:5:485:14 | struct S2 | +| main.rs:504:13:504:17 | ...::f | main.rs:490:11:494:9 | fn f | +| main.rs:505:20:505:23 | Self | main.rs:497:5:507:5 | impl Trait4 for S2 { ... } | +| main.rs:505:20:505:34 | ...::AssocType | main.rs:498:26:500:9 | type AssocType | +| main.rs:512:23:512:26 | Self | main.rs:509:5:513:5 | trait Trait5 | +| main.rs:512:23:512:33 | ...::Assoc | main.rs:510:9:510:19 | type Assoc | +| main.rs:516:10:516:15 | Trait5 | main.rs:509:5:513:5 | trait Trait5 | +| main.rs:516:21:516:21 | S | main.rs:413:5:413:13 | struct S | +| main.rs:517:22:517:24 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:521:16:521:19 | Self | main.rs:515:5:524:5 | impl Trait5 for S { ... } | +| main.rs:521:16:521:26 | ...::Assoc | main.rs:516:25:518:9 | type Assoc | +| main.rs:522:13:522:16 | Self | main.rs:515:5:524:5 | impl Trait5 for S { ... } | +| main.rs:522:13:522:23 | ...::Assoc | main.rs:520:9:523:9 | fn Assoc | +| main.rs:526:19:526:20 | T3 | main.rs:526:15:526:16 | T3 | +| main.rs:529:10:529:15 | Trait5 | main.rs:509:5:513:5 | trait Trait5 | +| main.rs:529:21:529:27 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:529:24:529:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:530:22:530:24 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:534:16:534:19 | Self | main.rs:528:5:537:5 | impl Trait5 for S3::<...> { ... } | +| main.rs:534:16:534:26 | ...::Assoc | main.rs:529:31:531:9 | type Assoc | +| main.rs:535:13:535:16 | Self | main.rs:528:5:537:5 | impl Trait5 for S3::<...> { ... } | +| main.rs:535:13:535:23 | ...::Assoc | main.rs:533:9:536:9 | fn Assoc | +| main.rs:540:10:540:15 | Trait5 | main.rs:509:5:513:5 | trait Trait5 | +| main.rs:540:21:540:28 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:540:24:540:27 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:541:22:541:25 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:545:16:545:19 | Self | main.rs:539:5:548:5 | impl Trait5 for S3::<...> { ... } | +| main.rs:545:16:545:26 | ...::Assoc | main.rs:540:32:542:9 | type Assoc | +| main.rs:546:14:546:17 | Self | main.rs:539:5:548:5 | impl Trait5 for S3::<...> { ... } | +| main.rs:546:14:546:24 | ...::Assoc | main.rs:544:9:547:9 | fn Assoc | +| main.rs:551:10:551:16 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:551:13:551:15 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:552:20:552:22 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:558:10:558:17 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:558:13:558:16 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:559:20:559:23 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:566:9:566:17 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:566:9:567:13 | ...::Assoc | main.rs:533:9:536:9 | fn Assoc | +| main.rs:566:9:567:13 | ...::Assoc | main.rs:544:9:547:9 | fn Assoc | +| main.rs:566:14:566:16 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:569:9:569:18 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:569:9:570:10 | ...::f1 | main.rs:551:20:554:9 | fn f1 | +| main.rs:569:9:570:10 | ...::f1 | main.rs:558:21:561:9 | fn f1 | +| main.rs:569:14:569:17 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:572:9:572:17 | S3::<...> | main.rs:526:5:526:22 | struct S3 | +| main.rs:572:9:573:10 | ...::f1 | main.rs:551:20:554:9 | fn f1 | +| main.rs:572:9:573:10 | ...::f1 | main.rs:558:21:561:9 | fn f1 | +| main.rs:572:14:572:16 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:589:14:589:16 | Foo | main.rs:579:9:581:9 | trait Foo | +| main.rs:589:22:589:22 | X | main.rs:587:9:587:21 | struct X | +| main.rs:591:17:591:23 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:595:14:595:16 | Bar | main.rs:583:9:585:9 | trait Bar | +| main.rs:595:22:595:22 | X | main.rs:587:9:587:21 | struct X | +| main.rs:597:17:597:23 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:602:9:602:9 | m | main.rs:578:5:600:5 | mod m | +| main.rs:602:9:602:12 | ...::X | main.rs:587:9:587:21 | struct X | +| main.rs:605:17:605:17 | X | main.rs:587:9:587:21 | struct X | +| main.rs:608:17:608:17 | m | main.rs:578:5:600:5 | mod m | +| main.rs:608:17:608:22 | ...::Foo | main.rs:579:9:581:9 | trait Foo | +| main.rs:609:13:609:13 | X | main.rs:587:9:587:21 | struct X | +| main.rs:609:13:609:23 | ...::a_method | main.rs:589:26:592:13 | fn a_method | +| main.rs:612:18:612:18 | X | main.rs:587:9:587:21 | struct X | +| main.rs:614:21:614:24 | Self | main.rs:611:13:616:13 | impl X { ... } | +| main.rs:614:21:614:34 | ...::a_method | main.rs:589:26:592:13 | fn a_method | +| main.rs:620:17:620:17 | m | main.rs:578:5:600:5 | mod m | +| main.rs:620:17:620:22 | ...::Bar | main.rs:583:9:585:9 | trait Bar | +| main.rs:621:13:621:13 | X | main.rs:587:9:587:21 | struct X | +| main.rs:621:13:621:23 | ...::a_method | main.rs:595:26:598:13 | fn a_method | +| main.rs:625:17:625:17 | m | main.rs:578:5:600:5 | mod m | +| main.rs:625:17:625:22 | ...::Bar | main.rs:583:9:585:9 | trait Bar | +| main.rs:626:13:626:13 | X | main.rs:587:9:587:21 | struct X | +| main.rs:626:13:626:23 | ...::a_method | main.rs:595:26:598:13 | fn a_method | +| main.rs:631:13:631:13 | m | main.rs:578:5:600:5 | mod m | +| main.rs:631:13:631:18 | ...::Bar | main.rs:583:9:585:9 | trait Bar | +| main.rs:631:13:631:28 | ...::a_method | main.rs:584:13:584:31 | fn a_method | +| main.rs:644:10:644:16 | MyTrait | main.rs:637:5:639:5 | trait MyTrait | +| main.rs:645:9:645:9 | S | main.rs:641:5:641:13 | struct S | +| main.rs:647:13:647:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:653:7:653:13 | MyTrait | main.rs:637:5:639:5 | trait MyTrait | +| main.rs:654:10:654:10 | T | main.rs:652:10:652:10 | T | +| main.rs:656:9:656:9 | T | main.rs:652:10:652:10 | T | +| main.rs:656:9:656:12 | ...::f | main.rs:638:9:638:20 | fn f | +| main.rs:657:9:657:15 | MyTrait | main.rs:637:5:639:5 | trait MyTrait | +| main.rs:657:9:657:18 | ...::f | main.rs:638:9:638:20 | fn f | +| main.rs:662:9:662:9 | g | main.rs:651:5:658:5 | fn g | +| main.rs:663:11:663:11 | S | main.rs:641:5:641:13 | struct S | +| main.rs:670:9:670:15 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:675:13:675:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:680:17:680:23 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:681:17:681:21 | super | main.rs:673:5:685:5 | mod m19 | +| main.rs:681:17:681:24 | ...::f | main.rs:674:9:676:9 | fn f | +| main.rs:682:17:682:21 | super | main.rs:673:5:685:5 | mod m19 | +| main.rs:682:17:682:28 | ...::super | main.rs:668:1:686:1 | mod m18 | +| main.rs:682:17:682:31 | ...::f | main.rs:669:5:671:5 | fn f | +| main.rs:699:13:699:17 | super | main.rs:688:1:713:1 | mod m21 | +| main.rs:699:13:699:22 | ...::m22 | main.rs:689:5:695:5 | mod m22 | +| main.rs:699:13:699:30 | ...::MyEnum | main.rs:690:9:692:9 | enum MyEnum | +| main.rs:700:13:700:16 | self | main.rs:690:9:692:9 | enum MyEnum | +| main.rs:704:13:704:17 | super | main.rs:688:1:713:1 | mod m21 | +| main.rs:704:13:704:22 | ...::m22 | main.rs:689:5:695:5 | mod m22 | +| main.rs:704:13:704:32 | ...::MyStruct | main.rs:694:9:694:28 | struct MyStruct | +| main.rs:705:13:705:16 | self | main.rs:694:9:694:28 | struct MyStruct | +| main.rs:709:21:709:26 | MyEnum | main.rs:690:9:692:9 | enum MyEnum | +| main.rs:709:21:709:29 | ...::A | main.rs:691:13:691:13 | A | +| main.rs:710:21:710:28 | MyStruct | main.rs:694:9:694:28 | struct MyStruct | +| main.rs:726:10:728:5 | Trait1::<...> | main.rs:716:5:721:5 | trait Trait1 | +| main.rs:727:7:727:10 | Self | main.rs:723:5:723:13 | struct S | +| main.rs:729:11:729:11 | S | main.rs:723:5:723:13 | struct S | +| main.rs:731:13:731:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:737:17:737:17 | S | main.rs:723:5:723:13 | struct S | +| main.rs:753:15:753:15 | T | main.rs:752:26:752:26 | T | +| main.rs:758:9:758:24 | GenericStruct::<...> | main.rs:751:5:754:5 | struct GenericStruct | +| main.rs:758:23:758:23 | T | main.rs:757:10:757:10 | T | +| main.rs:760:9:760:9 | T | main.rs:757:10:757:10 | T | +| main.rs:760:12:760:17 | TraitA | main.rs:743:5:745:5 | trait TraitA | +| main.rs:769:9:769:24 | GenericStruct::<...> | main.rs:751:5:754:5 | struct GenericStruct | +| main.rs:769:23:769:23 | T | main.rs:768:10:768:10 | T | +| main.rs:771:9:771:9 | T | main.rs:768:10:768:10 | T | +| main.rs:771:12:771:17 | TraitB | main.rs:747:5:749:5 | trait TraitB | +| main.rs:772:9:772:9 | T | main.rs:768:10:768:10 | T | +| main.rs:772:12:772:17 | TraitA | main.rs:743:5:745:5 | trait TraitA | +| main.rs:783:10:783:15 | TraitA | main.rs:743:5:745:5 | trait TraitA | +| main.rs:783:21:783:31 | Implementor | main.rs:780:5:780:23 | struct Implementor | +| main.rs:785:13:785:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:790:10:790:15 | TraitB | main.rs:747:5:749:5 | trait TraitB | +| main.rs:790:21:790:31 | Implementor | main.rs:780:5:780:23 | struct Implementor | +| main.rs:792:13:792:19 | println | {EXTERNAL LOCATION} | MacroRules | +| main.rs:798:24:798:34 | Implementor | main.rs:780:5:780:23 | struct Implementor | +| main.rs:799:23:799:35 | GenericStruct | main.rs:751:5:754:5 | struct GenericStruct | +| main.rs:805:9:805:36 | GenericStruct::<...> | main.rs:751:5:754:5 | struct GenericStruct | +| main.rs:805:9:805:50 | ...::call_trait_a | main.rs:762:9:764:9 | fn call_trait_a | +| main.rs:805:25:805:35 | Implementor | main.rs:780:5:780:23 | struct Implementor | +| main.rs:808:9:808:36 | GenericStruct::<...> | main.rs:751:5:754:5 | struct GenericStruct | +| main.rs:808:9:808:47 | ...::call_both | main.rs:774:9:777:9 | fn call_both | +| main.rs:808:25:808:35 | Implementor | main.rs:780:5:780:23 | struct Implementor | +| main.rs:814:3:814:12 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:814:3:814:24 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | +| main.rs:818:6:818:12 | AStruct | main.rs:817:1:817:17 | struct AStruct | +| main.rs:820:7:820:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:820:7:820:28 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | +| main.rs:823:7:823:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:823:7:823:28 | ...::add_suffix | proc_macro.rs:4:1:13:1 | fn add_suffix | | main.rs:828:9:828:11 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:828:9:828:19 | ...::result | {EXTERNAL LOCATION} | mod result | -| main.rs:828:9:828:27 | ...::Result | {EXTERNAL LOCATION} | enum Result | -| main.rs:836:19:836:22 | Self | main.rs:830:5:838:5 | trait Reduce | -| main.rs:836:19:836:29 | ...::Input | main.rs:831:9:831:19 | type Input | -| main.rs:837:14:837:46 | Result::<...> | {EXTERNAL LOCATION} | enum Result | -| main.rs:837:21:837:24 | Self | main.rs:830:5:838:5 | trait Reduce | -| main.rs:837:21:837:32 | ...::Output | main.rs:832:21:833:20 | type Output | -| main.rs:837:35:837:38 | Self | main.rs:830:5:838:5 | trait Reduce | -| main.rs:837:35:837:45 | ...::Error | main.rs:831:21:832:19 | type Error | -| main.rs:841:17:841:34 | PhantomData::<...> | {EXTERNAL LOCATION} | struct PhantomData | -| main.rs:841:29:841:33 | Input | main.rs:840:19:840:23 | Input | +| main.rs:828:9:828:19 | ...::marker | {EXTERNAL LOCATION} | mod marker | +| main.rs:828:9:828:32 | ...::PhantomData | {EXTERNAL LOCATION} | struct PhantomData | +| main.rs:829:9:829:11 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:829:9:829:19 | ...::result | {EXTERNAL LOCATION} | mod result | +| main.rs:829:9:829:27 | ...::Result | {EXTERNAL LOCATION} | enum Result | +| main.rs:837:19:837:22 | Self | main.rs:831:5:839:5 | trait Reduce | +| main.rs:837:19:837:29 | ...::Input | main.rs:832:9:832:19 | type Input | +| main.rs:838:14:838:46 | Result::<...> | {EXTERNAL LOCATION} | enum Result | +| main.rs:838:21:838:24 | Self | main.rs:831:5:839:5 | trait Reduce | +| main.rs:838:21:838:32 | ...::Output | main.rs:833:21:834:20 | type Output | +| main.rs:838:35:838:38 | Self | main.rs:831:5:839:5 | trait Reduce | +| main.rs:838:35:838:45 | ...::Error | main.rs:832:21:833:19 | type Error | | main.rs:842:17:842:34 | PhantomData::<...> | {EXTERNAL LOCATION} | struct PhantomData | -| main.rs:842:29:842:33 | Error | main.rs:840:26:840:30 | Error | -| main.rs:849:11:849:16 | Reduce | main.rs:830:5:838:5 | trait Reduce | -| main.rs:850:13:853:9 | MyImpl::<...> | main.rs:840:5:843:5 | struct MyImpl | -| main.rs:851:13:851:17 | Input | main.rs:847:13:847:17 | Input | -| main.rs:852:13:852:17 | Error | main.rs:848:13:848:17 | Error | -| main.rs:855:22:858:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | -| main.rs:856:13:856:17 | Input | main.rs:847:13:847:17 | Input | -| main.rs:857:13:857:16 | Self | main.rs:845:5:877:5 | impl Reduce for MyImpl::<...> { ... } | -| main.rs:857:13:857:23 | ...::Error | main.rs:859:11:863:9 | type Error | -| main.rs:860:22:862:9 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:861:11:861:15 | Error | main.rs:848:13:848:17 | Error | -| main.rs:865:13:865:17 | Input | main.rs:847:13:847:17 | Input | -| main.rs:870:19:870:22 | Self | main.rs:845:5:877:5 | impl Reduce for MyImpl::<...> { ... } | -| main.rs:870:19:870:29 | ...::Input | main.rs:855:9:859:9 | type Input | -| main.rs:871:14:874:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | -| main.rs:872:13:872:16 | Self | main.rs:845:5:877:5 | impl Reduce for MyImpl::<...> { ... } | -| main.rs:872:13:872:24 | ...::Output | main.rs:863:11:866:9 | type Output | -| main.rs:873:13:873:16 | Self | main.rs:845:5:877:5 | impl Reduce for MyImpl::<...> { ... } | -| main.rs:873:13:873:23 | ...::Error | main.rs:859:11:863:9 | type Error | -| main.rs:885:16:885:20 | Super | main.rs:881:5:883:5 | trait Super | -| main.rs:887:19:887:22 | Self | main.rs:885:5:889:5 | trait Sub | -| main.rs:887:19:887:27 | ...::Out | main.rs:882:9:882:17 | type Out | -| main.rs:892:9:892:10 | ST | main.rs:891:14:891:15 | ST | -| main.rs:896:10:896:14 | Super | main.rs:881:5:883:5 | trait Super | -| main.rs:896:20:896:25 | S::<...> | main.rs:891:5:893:6 | struct S | -| main.rs:896:22:896:24 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:897:20:897:23 | char | {EXTERNAL LOCATION} | struct char | -| main.rs:902:10:902:14 | Super | main.rs:881:5:883:5 | trait Super | -| main.rs:902:20:902:26 | S::<...> | main.rs:891:5:893:6 | struct S | -| main.rs:902:22:902:25 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:903:20:903:22 | i64 | {EXTERNAL LOCATION} | struct i64 | -| main.rs:908:10:908:12 | Sub | main.rs:885:5:889:5 | trait Sub | -| main.rs:908:18:908:23 | S::<...> | main.rs:891:5:893:6 | struct S | -| main.rs:908:20:908:22 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:909:19:909:22 | Self | main.rs:907:5:912:5 | impl Sub for S::<...> { ... } | -| main.rs:909:19:909:27 | ...::Out | main.rs:882:9:882:17 | type Out | -| main.rs:915:10:915:12 | Sub | main.rs:885:5:889:5 | trait Sub | -| main.rs:915:18:915:24 | S::<...> | main.rs:891:5:893:6 | struct S | -| main.rs:915:20:915:23 | bool | {EXTERNAL LOCATION} | struct bool | -| main.rs:916:19:916:22 | Self | main.rs:914:5:919:5 | impl Sub for S::<...> { ... } | -| main.rs:916:19:916:27 | ...::Out | main.rs:882:9:882:17 | type Out | -| main.rs:925:19:925:26 | SuperAlt | main.rs:921:5:923:5 | trait SuperAlt | -| main.rs:927:23:927:26 | Self | main.rs:925:5:929:5 | trait SubAlt | -| main.rs:927:23:927:31 | ...::Out | main.rs:922:9:922:17 | type Out | -| main.rs:932:13:932:20 | SuperAlt | main.rs:921:5:923:5 | trait SuperAlt | -| main.rs:932:26:932:29 | S::<...> | main.rs:891:5:893:6 | struct S | -| main.rs:932:28:932:28 | A | main.rs:932:10:932:10 | A | -| main.rs:933:20:933:20 | A | main.rs:932:10:932:10 | A | -| main.rs:938:13:938:18 | SubAlt | main.rs:925:5:929:5 | trait SubAlt | -| main.rs:938:24:938:27 | S::<...> | main.rs:891:5:893:6 | struct S | -| main.rs:938:26:938:26 | A | main.rs:938:10:938:10 | A | -| main.rs:939:23:939:26 | Self | main.rs:937:5:942:5 | impl SubAlt for S::<...> { ... } | -| main.rs:939:23:939:31 | ...::Out | main.rs:922:9:922:17 | type Out | -| main.rs:945:5:945:7 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:945:11:945:14 | self | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:947:15:947:17 | ztd | {EXTERNAL LOCATION} | Crate(std@0.0.0) | -| main.rs:947:15:947:25 | ...::string | {EXTERNAL LOCATION} | mod string | -| main.rs:947:15:947:33 | ...::String | {EXTERNAL LOCATION} | struct String | -| main.rs:957:7:957:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | -| main.rs:957:7:957:26 | ...::identity | proc_macro.rs:15:1:18:1 | fn identity | -| main.rs:958:10:958:15 | ATrait | main.rs:953:5:955:5 | trait ATrait | -| main.rs:958:21:958:23 | i64 | {EXTERNAL LOCATION} | struct i64 | -| main.rs:960:11:960:13 | i64 | {EXTERNAL LOCATION} | struct i64 | -| main.rs:966:17:966:19 | Foo | main.rs:951:5:951:15 | struct Foo | -| main.rs:972:22:972:32 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:972:29:972:31 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:973:17:973:20 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:974:17:974:27 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:974:24:974:26 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:975:13:975:16 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:976:17:976:20 | None | {EXTERNAL LOCATION} | None | -| main.rs:978:13:978:16 | None | {EXTERNAL LOCATION} | None | -| main.rs:979:17:979:20 | None | {EXTERNAL LOCATION} | None | -| main.rs:988:19:988:29 | Option::<...> | {EXTERNAL LOCATION} | enum Option | -| main.rs:988:26:988:28 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:989:26:989:29 | test | main.rs:971:5:985:5 | fn test | -| main.rs:995:14:995:16 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:1000:17:1000:20 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:1002:13:1002:16 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:1007:13:1007:16 | Some | {EXTERNAL LOCATION} | Some | -| main.rs:1007:18:1007:18 | z | main.rs:994:5:996:12 | Const | -| main.rs:1007:24:1007:24 | z | main.rs:994:5:996:12 | Const | -| main.rs:1015:24:1015:26 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:1018:10:1018:20 | TupleStruct | main.rs:1015:5:1015:28 | struct TupleStruct | -| main.rs:1020:19:1020:21 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:1020:27:1020:30 | Self | main.rs:1015:5:1015:28 | struct TupleStruct | -| main.rs:1021:21:1021:24 | Self | main.rs:1015:5:1015:28 | struct TupleStruct | -| main.rs:1022:31:1022:34 | Self | main.rs:1015:5:1015:28 | struct TupleStruct | -| main.rs:1028:12:1028:14 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:1032:10:1032:21 | StructStruct | main.rs:1027:5:1029:5 | struct StructStruct | -| main.rs:1034:19:1034:21 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:1034:27:1034:30 | Self | main.rs:1027:5:1029:5 | struct StructStruct | -| main.rs:1035:13:1035:16 | Self | main.rs:1027:5:1029:5 | struct StructStruct | -| main.rs:1041:13:1041:15 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:1046:10:1046:15 | MyEnum | main.rs:1039:5:1043:5 | enum MyEnum | -| main.rs:1047:25:1047:27 | i32 | {EXTERNAL LOCATION} | struct i32 | -| main.rs:1049:17:1049:20 | Self | main.rs:1045:5:1056:5 | impl MyEnum { ... } | -| main.rs:1049:17:1049:23 | ...::A | main.rs:1040:9:1042:9 | A | -| main.rs:1060:5:1060:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:1060:5:1060:14 | ...::nested | my.rs:1:1:1:15 | mod nested | -| main.rs:1060:5:1060:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | -| main.rs:1060:5:1060:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | -| main.rs:1060:5:1060:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | -| main.rs:1061:5:1061:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:1061:5:1061:9 | ...::f | my.rs:5:1:7:1 | fn f | -| main.rs:1062:5:1062:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | -| main.rs:1062:5:1062:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | -| main.rs:1062:5:1062:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | -| main.rs:1062:5:1062:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:1063:5:1063:5 | f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:1064:5:1064:5 | g | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:1065:5:1065:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:1065:5:1065:12 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:1066:5:1066:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:1066:5:1066:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:1066:5:1066:13 | ...::g | main.rs:30:9:34:9 | fn g | -| main.rs:1067:5:1067:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:1067:5:1067:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:1067:5:1067:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | -| main.rs:1067:5:1067:17 | ...::h | main.rs:37:27:41:13 | fn h | -| main.rs:1068:5:1068:6 | m4 | main.rs:46:1:53:1 | mod m4 | -| main.rs:1068:5:1068:9 | ...::i | main.rs:49:5:52:5 | fn i | -| main.rs:1069:5:1069:5 | h | main.rs:57:1:76:1 | fn h | -| main.rs:1070:5:1070:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:1071:5:1071:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:1072:5:1072:5 | j | main.rs:104:1:108:1 | fn j | -| main.rs:1073:5:1073:6 | m6 | main.rs:116:1:128:1 | mod m6 | -| main.rs:1073:5:1073:9 | ...::g | main.rs:121:5:127:5 | fn g | -| main.rs:1074:5:1074:6 | m7 | main.rs:130:1:149:1 | mod m7 | -| main.rs:1074:5:1074:9 | ...::f | main.rs:141:5:148:5 | fn f | -| main.rs:1075:5:1075:6 | m8 | main.rs:151:1:205:1 | mod m8 | -| main.rs:1075:5:1075:9 | ...::g | main.rs:189:5:204:5 | fn g | -| main.rs:1076:5:1076:6 | m9 | main.rs:207:1:215:1 | mod m9 | -| main.rs:1076:5:1076:9 | ...::f | main.rs:210:5:214:5 | fn f | -| main.rs:1077:5:1077:7 | m11 | main.rs:238:1:275:1 | mod m11 | -| main.rs:1077:5:1077:10 | ...::f | main.rs:243:5:246:5 | fn f | -| main.rs:1078:5:1078:7 | m15 | main.rs:306:1:375:1 | mod m15 | -| main.rs:1078:5:1078:10 | ...::f | main.rs:362:5:374:5 | fn f | -| main.rs:1079:5:1079:7 | m16 | main.rs:377:1:574:1 | mod m16 | -| main.rs:1079:5:1079:10 | ...::f | main.rs:446:5:470:5 | fn f | -| main.rs:1080:5:1080:20 | trait_visibility | main.rs:576:1:633:1 | mod trait_visibility | -| main.rs:1080:5:1080:23 | ...::f | main.rs:603:5:632:5 | fn f | -| main.rs:1081:5:1081:7 | m17 | main.rs:635:1:665:1 | mod m17 | -| main.rs:1081:5:1081:10 | ...::f | main.rs:659:5:664:5 | fn f | -| main.rs:1082:5:1082:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | -| main.rs:1082:5:1082:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | -| main.rs:1083:5:1083:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | -| main.rs:1083:5:1083:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | -| main.rs:1084:5:1084:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | -| main.rs:1084:5:1084:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | -| main.rs:1085:5:1085:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:1086:5:1086:12 | my_alias | main.rs:1:1:1:7 | mod my | -| main.rs:1086:5:1086:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:1087:5:1087:7 | m18 | main.rs:667:1:685:1 | mod m18 | -| main.rs:1087:5:1087:12 | ...::m19 | main.rs:672:5:684:5 | mod m19 | -| main.rs:1087:5:1087:17 | ...::m20 | main.rs:677:9:683:9 | mod m20 | -| main.rs:1087:5:1087:20 | ...::g | main.rs:678:13:682:13 | fn g | -| main.rs:1088:5:1088:7 | m23 | main.rs:714:1:739:1 | mod m23 | -| main.rs:1088:5:1088:10 | ...::f | main.rs:734:5:738:5 | fn f | -| main.rs:1089:5:1089:7 | m24 | main.rs:741:1:809:1 | mod m24 | -| main.rs:1089:5:1089:10 | ...::f | main.rs:795:5:808:5 | fn f | -| main.rs:1090:5:1090:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:1090:5:1090:11 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:1091:5:1091:13 | z_changed | main.rs:814:1:814:9 | fn z_changed | -| main.rs:1092:5:1092:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | -| main.rs:1092:5:1092:22 | ...::z_on_type | main.rs:820:5:820:17 | fn z_on_type | -| main.rs:1093:5:1093:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | -| main.rs:1094:5:1094:29 | impl_with_attribute_macro | main.rs:949:1:968:1 | mod impl_with_attribute_macro | -| main.rs:1094:5:1094:35 | ...::test | main.rs:964:5:967:5 | fn test | -| main.rs:1095:5:1095:12 | patterns | main.rs:970:1:1011:1 | mod patterns | -| main.rs:1095:5:1095:18 | ...::test | main.rs:971:5:985:5 | fn test | +| main.rs:842:29:842:33 | Input | main.rs:841:19:841:23 | Input | +| main.rs:843:17:843:34 | PhantomData::<...> | {EXTERNAL LOCATION} | struct PhantomData | +| main.rs:843:29:843:33 | Error | main.rs:841:26:841:30 | Error | +| main.rs:850:11:850:16 | Reduce | main.rs:831:5:839:5 | trait Reduce | +| main.rs:851:13:854:9 | MyImpl::<...> | main.rs:841:5:844:5 | struct MyImpl | +| main.rs:852:13:852:17 | Input | main.rs:848:13:848:17 | Input | +| main.rs:853:13:853:17 | Error | main.rs:849:13:849:17 | Error | +| main.rs:856:22:859:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | +| main.rs:857:13:857:17 | Input | main.rs:848:13:848:17 | Input | +| main.rs:858:13:858:16 | Self | main.rs:846:5:878:5 | impl Reduce for MyImpl::<...> { ... } | +| main.rs:858:13:858:23 | ...::Error | main.rs:860:11:864:9 | type Error | +| main.rs:861:22:863:9 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:862:11:862:15 | Error | main.rs:849:13:849:17 | Error | +| main.rs:866:13:866:17 | Input | main.rs:848:13:848:17 | Input | +| main.rs:871:19:871:22 | Self | main.rs:846:5:878:5 | impl Reduce for MyImpl::<...> { ... } | +| main.rs:871:19:871:29 | ...::Input | main.rs:856:9:860:9 | type Input | +| main.rs:872:14:875:9 | Result::<...> | {EXTERNAL LOCATION} | enum Result | +| main.rs:873:13:873:16 | Self | main.rs:846:5:878:5 | impl Reduce for MyImpl::<...> { ... } | +| main.rs:873:13:873:24 | ...::Output | main.rs:864:11:867:9 | type Output | +| main.rs:874:13:874:16 | Self | main.rs:846:5:878:5 | impl Reduce for MyImpl::<...> { ... } | +| main.rs:874:13:874:23 | ...::Error | main.rs:860:11:864:9 | type Error | +| main.rs:886:16:886:20 | Super | main.rs:882:5:884:5 | trait Super | +| main.rs:888:19:888:22 | Self | main.rs:886:5:890:5 | trait Sub | +| main.rs:888:19:888:27 | ...::Out | main.rs:883:9:883:17 | type Out | +| main.rs:893:9:893:10 | ST | main.rs:892:14:892:15 | ST | +| main.rs:897:10:897:14 | Super | main.rs:882:5:884:5 | trait Super | +| main.rs:897:20:897:25 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:897:22:897:24 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:898:20:898:23 | char | {EXTERNAL LOCATION} | struct char | +| main.rs:903:10:903:14 | Super | main.rs:882:5:884:5 | trait Super | +| main.rs:903:20:903:26 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:903:22:903:25 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:904:20:904:22 | i64 | {EXTERNAL LOCATION} | struct i64 | +| main.rs:909:10:909:12 | Sub | main.rs:886:5:890:5 | trait Sub | +| main.rs:909:18:909:23 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:909:20:909:22 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:910:19:910:22 | Self | main.rs:908:5:913:5 | impl Sub for S::<...> { ... } | +| main.rs:910:19:910:27 | ...::Out | main.rs:883:9:883:17 | type Out | +| main.rs:916:10:916:12 | Sub | main.rs:886:5:890:5 | trait Sub | +| main.rs:916:18:916:24 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:916:20:916:23 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:917:19:917:22 | Self | main.rs:915:5:920:5 | impl Sub for S::<...> { ... } | +| main.rs:917:19:917:27 | ...::Out | main.rs:883:9:883:17 | type Out | +| main.rs:926:19:926:26 | SuperAlt | main.rs:922:5:924:5 | trait SuperAlt | +| main.rs:928:23:928:26 | Self | main.rs:926:5:930:5 | trait SubAlt | +| main.rs:928:23:928:31 | ...::Out | main.rs:923:9:923:17 | type Out | +| main.rs:933:13:933:20 | SuperAlt | main.rs:922:5:924:5 | trait SuperAlt | +| main.rs:933:26:933:29 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:933:28:933:28 | A | main.rs:933:10:933:10 | A | +| main.rs:934:20:934:20 | A | main.rs:933:10:933:10 | A | +| main.rs:939:13:939:18 | SubAlt | main.rs:926:5:930:5 | trait SubAlt | +| main.rs:939:24:939:27 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:939:26:939:26 | A | main.rs:939:10:939:10 | A | +| main.rs:940:23:940:26 | Self | main.rs:938:5:943:5 | impl SubAlt for S::<...> { ... } | +| main.rs:940:23:940:31 | ...::Out | main.rs:923:9:923:17 | type Out | +| main.rs:946:10:946:16 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:946:12:946:15 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:948:22:948:27 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:948:24:948:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:948:32:948:36 | Super | main.rs:882:5:884:5 | trait Super | +| main.rs:949:22:949:28 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:949:24:949:27 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:949:33:949:37 | Super | main.rs:882:5:884:5 | trait Super | +| main.rs:951:22:951:28 | S::<...> | main.rs:892:5:894:6 | struct S | +| main.rs:951:24:951:27 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:951:33:951:40 | SuperAlt | main.rs:922:5:924:5 | trait SuperAlt | +| main.rs:956:5:956:7 | std | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:956:11:956:14 | self | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:958:15:958:17 | ztd | {EXTERNAL LOCATION} | Crate(std@0.0.0) | +| main.rs:958:15:958:25 | ...::string | {EXTERNAL LOCATION} | mod string | +| main.rs:958:15:958:33 | ...::String | {EXTERNAL LOCATION} | struct String | +| main.rs:968:7:968:16 | proc_macro | proc_macro.rs:0:0:0:0 | Crate(proc_macro@0.0.1) | +| main.rs:968:7:968:26 | ...::identity | proc_macro.rs:15:1:18:1 | fn identity | +| main.rs:969:10:969:15 | ATrait | main.rs:964:5:966:5 | trait ATrait | +| main.rs:969:21:969:23 | i64 | {EXTERNAL LOCATION} | struct i64 | +| main.rs:971:11:971:13 | i64 | {EXTERNAL LOCATION} | struct i64 | +| main.rs:977:17:977:19 | Foo | main.rs:962:5:962:15 | struct Foo | +| main.rs:983:22:983:32 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:983:29:983:31 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:984:17:984:20 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:985:17:985:27 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:985:24:985:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:986:13:986:16 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:987:17:987:20 | None | {EXTERNAL LOCATION} | None | +| main.rs:989:13:989:16 | None | {EXTERNAL LOCATION} | None | +| main.rs:990:17:990:20 | None | {EXTERNAL LOCATION} | None | +| main.rs:999:19:999:29 | Option::<...> | {EXTERNAL LOCATION} | enum Option | +| main.rs:999:26:999:28 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1000:26:1000:29 | test | main.rs:982:5:996:5 | fn test | +| main.rs:1006:14:1006:16 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1011:17:1011:20 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:1013:13:1013:16 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:1018:13:1018:16 | Some | {EXTERNAL LOCATION} | Some | +| main.rs:1018:18:1018:18 | z | main.rs:1005:5:1007:12 | Const | +| main.rs:1018:24:1018:24 | z | main.rs:1005:5:1007:12 | Const | +| main.rs:1026:24:1026:26 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1029:10:1029:20 | TupleStruct | main.rs:1026:5:1026:28 | struct TupleStruct | +| main.rs:1031:19:1031:21 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1031:27:1031:30 | Self | main.rs:1026:5:1026:28 | struct TupleStruct | +| main.rs:1032:21:1032:24 | Self | main.rs:1026:5:1026:28 | struct TupleStruct | +| main.rs:1033:31:1033:34 | Self | main.rs:1026:5:1026:28 | struct TupleStruct | +| main.rs:1039:12:1039:14 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1043:10:1043:21 | StructStruct | main.rs:1038:5:1040:5 | struct StructStruct | +| main.rs:1045:19:1045:21 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1045:27:1045:30 | Self | main.rs:1038:5:1040:5 | struct StructStruct | +| main.rs:1046:13:1046:16 | Self | main.rs:1038:5:1040:5 | struct StructStruct | +| main.rs:1052:13:1052:15 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1057:10:1057:15 | MyEnum | main.rs:1050:5:1054:5 | enum MyEnum | +| main.rs:1058:25:1058:27 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1060:17:1060:20 | Self | main.rs:1056:5:1067:5 | impl MyEnum { ... } | +| main.rs:1060:17:1060:23 | ...::A | main.rs:1051:9:1053:9 | A | +| main.rs:1071:5:1071:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:1071:5:1071:14 | ...::nested | my.rs:1:1:1:15 | mod nested | +| main.rs:1071:5:1071:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | +| main.rs:1071:5:1071:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | +| main.rs:1071:5:1071:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | +| main.rs:1072:5:1072:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:1072:5:1072:9 | ...::f | my.rs:5:1:7:1 | fn f | +| main.rs:1073:5:1073:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | +| main.rs:1073:5:1073:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | +| main.rs:1073:5:1073:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | +| main.rs:1073:5:1073:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1074:5:1074:5 | f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1075:5:1075:5 | g | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1076:5:1076:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1076:5:1076:12 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1077:5:1077:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:1077:5:1077:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:1077:5:1077:13 | ...::g | main.rs:30:9:34:9 | fn g | +| main.rs:1078:5:1078:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:1078:5:1078:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:1078:5:1078:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | +| main.rs:1078:5:1078:17 | ...::h | main.rs:37:27:41:13 | fn h | +| main.rs:1079:5:1079:6 | m4 | main.rs:46:1:53:1 | mod m4 | +| main.rs:1079:5:1079:9 | ...::i | main.rs:49:5:52:5 | fn i | +| main.rs:1080:5:1080:5 | h | main.rs:57:1:76:1 | fn h | +| main.rs:1081:5:1081:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1082:5:1082:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1083:5:1083:5 | j | main.rs:104:1:108:1 | fn j | +| main.rs:1084:5:1084:6 | m6 | main.rs:116:1:128:1 | mod m6 | +| main.rs:1084:5:1084:9 | ...::g | main.rs:121:5:127:5 | fn g | +| main.rs:1085:5:1085:6 | m7 | main.rs:130:1:149:1 | mod m7 | +| main.rs:1085:5:1085:9 | ...::f | main.rs:141:5:148:5 | fn f | +| main.rs:1086:5:1086:6 | m8 | main.rs:151:1:205:1 | mod m8 | +| main.rs:1086:5:1086:9 | ...::g | main.rs:189:5:204:5 | fn g | +| main.rs:1087:5:1087:6 | m9 | main.rs:207:1:215:1 | mod m9 | +| main.rs:1087:5:1087:9 | ...::f | main.rs:210:5:214:5 | fn f | +| main.rs:1088:5:1088:7 | m11 | main.rs:238:1:275:1 | mod m11 | +| main.rs:1088:5:1088:10 | ...::f | main.rs:243:5:246:5 | fn f | +| main.rs:1089:5:1089:7 | m15 | main.rs:306:1:375:1 | mod m15 | +| main.rs:1089:5:1089:10 | ...::f | main.rs:362:5:374:5 | fn f | +| main.rs:1090:5:1090:7 | m16 | main.rs:377:1:575:1 | mod m16 | +| main.rs:1090:5:1090:10 | ...::f | main.rs:447:5:471:5 | fn f | +| main.rs:1091:5:1091:20 | trait_visibility | main.rs:577:1:634:1 | mod trait_visibility | +| main.rs:1091:5:1091:23 | ...::f | main.rs:604:5:633:5 | fn f | +| main.rs:1092:5:1092:7 | m17 | main.rs:636:1:666:1 | mod m17 | +| main.rs:1092:5:1092:10 | ...::f | main.rs:660:5:665:5 | fn f | +| main.rs:1093:5:1093:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | +| main.rs:1093:5:1093:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | +| main.rs:1094:5:1094:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | +| main.rs:1094:5:1094:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | +| main.rs:1095:5:1095:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | +| main.rs:1095:5:1095:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | +| main.rs:1096:5:1096:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1097:5:1097:12 | my_alias | main.rs:1:1:1:7 | mod my | +| main.rs:1097:5:1097:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1098:5:1098:7 | m18 | main.rs:668:1:686:1 | mod m18 | +| main.rs:1098:5:1098:12 | ...::m19 | main.rs:673:5:685:5 | mod m19 | +| main.rs:1098:5:1098:17 | ...::m20 | main.rs:678:9:684:9 | mod m20 | +| main.rs:1098:5:1098:20 | ...::g | main.rs:679:13:683:13 | fn g | +| main.rs:1099:5:1099:7 | m23 | main.rs:715:1:740:1 | mod m23 | +| main.rs:1099:5:1099:10 | ...::f | main.rs:735:5:739:5 | fn f | +| main.rs:1100:5:1100:7 | m24 | main.rs:742:1:810:1 | mod m24 | +| main.rs:1100:5:1100:10 | ...::f | main.rs:796:5:809:5 | fn f | +| main.rs:1101:5:1101:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1101:5:1101:11 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1102:5:1102:13 | z_changed | main.rs:815:1:815:9 | fn z_changed | +| main.rs:1103:5:1103:11 | AStruct | main.rs:817:1:817:17 | struct AStruct | +| main.rs:1103:5:1103:22 | ...::z_on_type | main.rs:821:5:821:17 | fn z_on_type | +| main.rs:1104:5:1104:11 | AStruct | main.rs:817:1:817:17 | struct AStruct | +| main.rs:1105:5:1105:29 | impl_with_attribute_macro | main.rs:960:1:979:1 | mod impl_with_attribute_macro | +| main.rs:1105:5:1105:35 | ...::test | main.rs:975:5:978:5 | fn test | +| main.rs:1106:5:1106:12 | patterns | main.rs:981:1:1022:1 | mod patterns | +| main.rs:1106:5:1106:18 | ...::test | main.rs:982:5:996:5 | fn test | | my2/mod.rs:4:5:4:11 | println | {EXTERNAL LOCATION} | MacroRules | | my2/mod.rs:5:5:5:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:5:5:5:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | @@ -630,7 +641,7 @@ resolvePath | my2/my3/mod.rs:3:5:3:5 | g | my2/mod.rs:3:1:6:1 | fn g | | my2/my3/mod.rs:4:5:4:5 | h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:7:5:7:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | -| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1096:2 | SourceFile | +| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1107:2 | SourceFile | | my2/my3/mod.rs:7:5:7:19 | ...::h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:8:5:8:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | | my2/my3/mod.rs:8:5:8:12 | ...::g | my2/mod.rs:3:1:6:1 | fn g | diff --git a/rust/ql/test/library-tests/type-inference/main.rs b/rust/ql/test/library-tests/type-inference/main.rs index e72fecf32f1a..8f2002117da0 100644 --- a/rust/ql/test/library-tests/type-inference/main.rs +++ b/rust/ql/test/library-tests/type-inference/main.rs @@ -129,6 +129,9 @@ mod trait_impl { let y = MyThing { field: false }; let b = MyTrait::trait_method(y); // $ type=b:bool target=MyThing::trait_method + + let z = MyThing { field: false }; + let c = >::trait_method(z); // $ type=c:bool target=MyThing::trait_method } } @@ -181,6 +184,34 @@ mod trait_visibility { } } +mod method_call_trait_path_disambig { + trait FirstTrait { + // FirstTrait::method + fn method(&self) -> bool { + true + } + } + trait SecondTrait { + // SecondTrait::method + fn method(&self) -> i64 { + 1 + } + } + struct S; + impl FirstTrait for S {} + impl SecondTrait for S {} + + fn _test() { + let s = S; + + let _b1 = FirstTrait::method(&s); // $ type=_b1:bool target=FirstTrait::method + let _b2 = ::method(&s); // $ type=_b2:bool target=FirstTrait::method SPURIOUS: target=SecondTrait::method + + let _n1 = SecondTrait::method(&s); // $ type=_n1:i64 target=SecondTrait::method + let _n2 = ::method(&s); // $ type=_n2:i64 target=SecondTrait::method SPURIOUS: target=FirstTrait::method + } +} + mod method_non_parametric_impl { #[derive(Debug)] struct MyThing { diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 753dad0079b8..3d14c16902e5 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -1104,7 +1104,7 @@ inferCertainType | main.rs:121:25:121:28 | SelfParam | | main.rs:110:5:113:5 | MyThing | | main.rs:121:39:123:9 | { ... } | | {EXTERNAL LOCATION} | bool | | main.rs:122:13:122:16 | self | | main.rs:110:5:113:5 | MyThing | -| main.rs:126:16:132:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:126:16:135:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:127:13:127:13 | x | | main.rs:110:5:113:5 | MyThing | | main.rs:127:17:127:39 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | | main.rs:127:34:127:37 | true | | {EXTERNAL LOCATION} | bool | @@ -1113,2738 +1113,2758 @@ inferCertainType | main.rs:130:17:130:40 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | | main.rs:130:34:130:38 | false | | {EXTERNAL LOCATION} | bool | | main.rs:131:39:131:39 | y | | main.rs:110:5:113:5 | MyThing | -| main.rs:141:25:141:29 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:141:25:141:29 | SelfParam | TRef | main.rs:139:9:144:9 | Self [trait Foo] | -| main.rs:141:32:143:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:142:26:142:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:142:26:142:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:142:26:142:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:142:26:142:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:148:25:148:29 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:148:25:148:29 | SelfParam | TRef | main.rs:146:9:151:9 | Self [trait Bar] | -| main.rs:148:32:150:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:149:26:149:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:149:26:149:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:149:26:149:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:149:26:149:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:160:15:181:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:162:9:165:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:166:9:169:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:170:9:173:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:174:9:180:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:178:13:178:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | -| main.rs:178:27:178:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:179:13:179:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | -| main.rs:179:27:179:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:197:15:197:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | -| main.rs:197:15:197:18 | SelfParam | A | main.rs:190:5:191:14 | S1 | -| main.rs:197:27:199:9 | { ... } | | main.rs:190:5:191:14 | S1 | -| main.rs:198:13:198:16 | self | | main.rs:185:5:188:5 | MyThing | -| main.rs:198:13:198:16 | self | A | main.rs:190:5:191:14 | S1 | -| main.rs:204:15:204:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | -| main.rs:204:15:204:18 | SelfParam | A | main.rs:192:5:193:14 | S2 | -| main.rs:204:29:206:9 | { ... } | | main.rs:185:5:188:5 | MyThing | -| main.rs:204:29:206:9 | { ... } | A | main.rs:192:5:193:14 | S2 | -| main.rs:205:13:205:30 | Self {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:205:13:205:30 | Self {...} | A | main.rs:192:5:193:14 | S2 | -| main.rs:205:23:205:26 | self | | main.rs:185:5:188:5 | MyThing | -| main.rs:205:23:205:26 | self | A | main.rs:192:5:193:14 | S2 | -| main.rs:210:15:210:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | -| main.rs:210:15:210:18 | SelfParam | A | main.rs:209:10:209:10 | T | -| main.rs:210:26:212:9 | { ... } | | main.rs:209:10:209:10 | T | -| main.rs:211:13:211:16 | self | | main.rs:185:5:188:5 | MyThing | -| main.rs:211:13:211:16 | self | A | main.rs:209:10:209:10 | T | -| main.rs:215:16:231:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:216:13:216:13 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:216:17:216:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:217:13:217:13 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:217:17:217:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:220:18:220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:220:18:220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:220:18:220:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:220:18:220:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:220:26:220:26 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:221:18:221:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:221:18:221:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:221:18:221:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:221:18:221:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:221:26:221:26 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:223:18:223:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:223:18:223:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:223:18:223:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:223:18:223:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:223:26:223:26 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:224:18:224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:224:18:224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:224:18:224:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:224:18:224:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:224:26:224:26 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:226:13:226:13 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:226:17:226:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:227:13:227:13 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:227:17:227:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:229:18:229:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:229:18:229:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:229:18:229:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:229:18:229:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:229:26:229:26 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:230:18:230:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:230:18:230:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:230:18:230:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:230:18:230:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:230:26:230:26 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:254:15:254:18 | SelfParam | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:256:15:256:18 | SelfParam | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:259:9:261:9 | { ... } | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:260:13:260:16 | self | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:266:16:266:19 | SelfParam | | main.rs:264:5:269:5 | Self [trait MyProduct] | -| main.rs:268:16:268:19 | SelfParam | | main.rs:264:5:269:5 | Self [trait MyProduct] | -| main.rs:271:43:271:43 | x | | main.rs:271:26:271:40 | T2 | -| main.rs:271:56:273:5 | { ... } | | main.rs:271:22:271:23 | T1 | -| main.rs:272:9:272:9 | x | | main.rs:271:26:271:40 | T2 | -| main.rs:277:15:277:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | -| main.rs:277:15:277:18 | SelfParam | A | main.rs:246:5:247:14 | S1 | -| main.rs:277:27:279:9 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:278:13:278:16 | self | | main.rs:235:5:238:5 | MyThing | -| main.rs:278:13:278:16 | self | A | main.rs:246:5:247:14 | S1 | -| main.rs:284:15:284:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | -| main.rs:284:15:284:18 | SelfParam | A | main.rs:248:5:249:14 | S2 | -| main.rs:284:29:286:9 | { ... } | | main.rs:235:5:238:5 | MyThing | -| main.rs:284:29:286:9 | { ... } | A | main.rs:248:5:249:14 | S2 | -| main.rs:285:13:285:30 | Self {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:285:13:285:30 | Self {...} | A | main.rs:248:5:249:14 | S2 | -| main.rs:285:23:285:26 | self | | main.rs:235:5:238:5 | MyThing | -| main.rs:285:23:285:26 | self | A | main.rs:248:5:249:14 | S2 | -| main.rs:296:15:296:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | -| main.rs:296:15:296:18 | SelfParam | A | main.rs:250:5:251:14 | S3 | -| main.rs:296:27:298:9 | { ... } | | main.rs:291:10:291:11 | TD | -| main.rs:303:15:303:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:303:15:303:18 | SelfParam | P1 | main.rs:301:10:301:10 | I | -| main.rs:303:15:303:18 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:303:26:305:9 | { ... } | | main.rs:301:10:301:10 | I | -| main.rs:304:13:304:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:304:13:304:16 | self | P1 | main.rs:301:10:301:10 | I | -| main.rs:304:13:304:16 | self | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:310:15:310:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:310:15:310:18 | SelfParam | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:310:15:310:18 | SelfParam | P2 | main.rs:248:5:249:14 | S2 | -| main.rs:310:27:312:9 | { ... } | | main.rs:250:5:251:14 | S3 | -| main.rs:317:15:317:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:317:15:317:18 | SelfParam | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:317:15:317:18 | SelfParam | P1.A | main.rs:315:10:315:11 | TT | -| main.rs:317:15:317:18 | SelfParam | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:317:27:320:9 | { ... } | | main.rs:315:10:315:11 | TT | -| main.rs:318:25:318:28 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:318:25:318:28 | self | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:318:25:318:28 | self | P1.A | main.rs:315:10:315:11 | TT | -| main.rs:318:25:318:28 | self | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:326:16:326:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:326:16:326:19 | SelfParam | P1 | main.rs:324:10:324:10 | A | -| main.rs:326:16:326:19 | SelfParam | P2 | main.rs:324:10:324:10 | A | -| main.rs:326:27:328:9 | { ... } | | main.rs:324:10:324:10 | A | -| main.rs:327:13:327:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:327:13:327:16 | self | P1 | main.rs:324:10:324:10 | A | -| main.rs:327:13:327:16 | self | P2 | main.rs:324:10:324:10 | A | -| main.rs:331:16:331:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:331:16:331:19 | SelfParam | P1 | main.rs:324:10:324:10 | A | -| main.rs:331:16:331:19 | SelfParam | P2 | main.rs:324:10:324:10 | A | -| main.rs:331:27:333:9 | { ... } | | main.rs:324:10:324:10 | A | -| main.rs:332:13:332:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:332:13:332:16 | self | P1 | main.rs:324:10:324:10 | A | -| main.rs:332:13:332:16 | self | P2 | main.rs:324:10:324:10 | A | -| main.rs:339:16:339:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:339:16:339:19 | SelfParam | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:339:16:339:19 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:339:28:341:9 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:340:13:340:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:340:13:340:16 | self | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:340:13:340:16 | self | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:344:16:344:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:344:16:344:19 | SelfParam | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:344:16:344:19 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:344:28:346:9 | { ... } | | main.rs:248:5:249:14 | S2 | -| main.rs:345:13:345:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:345:13:345:16 | self | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:345:13:345:16 | self | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:349:46:349:46 | p | | main.rs:349:24:349:43 | P | -| main.rs:349:58:351:5 | { ... } | | main.rs:349:16:349:17 | V1 | -| main.rs:350:9:350:9 | p | | main.rs:349:24:349:43 | P | -| main.rs:353:46:353:46 | p | | main.rs:353:24:353:43 | P | -| main.rs:353:58:355:5 | { ... } | | main.rs:353:20:353:21 | V2 | -| main.rs:354:9:354:9 | p | | main.rs:353:24:353:43 | P | -| main.rs:357:54:357:54 | p | | main.rs:240:5:244:5 | MyPair | -| main.rs:357:54:357:54 | p | P1 | main.rs:357:20:357:21 | V0 | -| main.rs:357:54:357:54 | p | P2 | main.rs:357:32:357:51 | P | -| main.rs:357:78:359:5 | { ... } | | main.rs:357:24:357:25 | V1 | -| main.rs:358:9:358:9 | p | | main.rs:240:5:244:5 | MyPair | -| main.rs:358:9:358:9 | p | P1 | main.rs:357:20:357:21 | V0 | -| main.rs:358:9:358:9 | p | P2 | main.rs:357:32:357:51 | P | -| main.rs:363:23:363:26 | SelfParam | | main.rs:361:5:364:5 | Self [trait ConvertTo] | -| main.rs:368:23:368:26 | SelfParam | | main.rs:366:10:366:23 | T | -| main.rs:368:35:370:9 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:369:13:369:16 | self | | main.rs:366:10:366:23 | T | -| main.rs:373:41:373:45 | thing | | main.rs:373:23:373:38 | T | -| main.rs:373:57:375:5 | { ... } | | main.rs:373:19:373:20 | TS | -| main.rs:374:9:374:13 | thing | | main.rs:373:23:373:38 | T | -| main.rs:377:56:377:60 | thing | | main.rs:377:39:377:53 | TP | -| main.rs:377:73:380:5 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:379:9:379:13 | thing | | main.rs:377:39:377:53 | TP | -| main.rs:382:16:453:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:383:13:383:20 | thing_s1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:383:24:383:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:384:13:384:20 | thing_s2 | | main.rs:235:5:238:5 | MyThing | -| main.rs:384:24:384:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:385:13:385:20 | thing_s3 | | main.rs:235:5:238:5 | MyThing | -| main.rs:385:24:385:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:389:18:389:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:389:18:389:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:389:18:389:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:389:18:389:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:389:26:389:33 | thing_s1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:390:18:390:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:390:18:390:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:390:18:390:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:390:18:390:40 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:390:26:390:33 | thing_s2 | | main.rs:235:5:238:5 | MyThing | -| main.rs:391:13:391:14 | s3 | | main.rs:250:5:251:14 | S3 | -| main.rs:391:22:391:29 | thing_s3 | | main.rs:235:5:238:5 | MyThing | -| main.rs:392:18:392:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:392:18:392:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:392:18:392:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:392:18:392:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:392:26:392:27 | s3 | | main.rs:250:5:251:14 | S3 | -| main.rs:394:13:394:14 | p1 | | main.rs:240:5:244:5 | MyPair | -| main.rs:394:18:394:42 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:395:18:395:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:395:18:395:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:395:18:395:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:395:18:395:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:395:26:395:27 | p1 | | main.rs:240:5:244:5 | MyPair | -| main.rs:397:13:397:14 | p2 | | main.rs:240:5:244:5 | MyPair | -| main.rs:397:18:397:42 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:398:18:398:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:398:18:398:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:398:18:398:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:398:18:398:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:398:26:398:27 | p2 | | main.rs:240:5:244:5 | MyPair | -| main.rs:400:13:400:14 | p3 | | main.rs:240:5:244:5 | MyPair | -| main.rs:400:18:403:9 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:401:17:401:33 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:404:18:404:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:404:18:404:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:404:18:404:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:404:18:404:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:404:26:404:27 | p3 | | main.rs:240:5:244:5 | MyPair | -| main.rs:407:13:407:13 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:407:17:407:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:408:17:408:17 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:409:18:409:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:409:18:409:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:409:18:409:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:409:18:409:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:410:17:410:17 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:411:18:411:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:411:18:411:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:411:18:411:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:411:18:411:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:417:13:417:13 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:417:17:417:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:418:17:418:17 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:419:18:419:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:419:18:419:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:419:18:419:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:419:18:419:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:420:17:420:17 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:133:13:133:13 | z | | main.rs:110:5:113:5 | MyThing | +| main.rs:133:17:133:40 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | +| main.rs:133:34:133:38 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:134:58:134:58 | z | | main.rs:110:5:113:5 | MyThing | +| main.rs:144:25:144:29 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:144:25:144:29 | SelfParam | TRef | main.rs:142:9:147:9 | Self [trait Foo] | +| main.rs:144:32:146:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:145:26:145:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:145:26:145:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:145:26:145:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:145:26:145:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:151:25:151:29 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:151:25:151:29 | SelfParam | TRef | main.rs:149:9:154:9 | Self [trait Bar] | +| main.rs:151:32:153:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:152:26:152:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:152:26:152:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:152:26:152:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:152:26:152:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:163:15:184:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:165:9:168:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:169:9:172:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:173:9:176:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:177:9:183:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:181:13:181:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | +| main.rs:181:27:181:28 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:182:13:182:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | +| main.rs:182:27:182:28 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:190:19:190:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:190:19:190:23 | SelfParam | TRef | main.rs:188:5:193:5 | Self [trait FirstTrait] | +| main.rs:190:34:192:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:191:13:191:16 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:196:19:196:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:196:19:196:23 | SelfParam | TRef | main.rs:194:5:199:5 | Self [trait SecondTrait] | +| main.rs:196:33:198:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:204:16:212:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:207:13:207:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| main.rs:207:19:207:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:207:38:207:39 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:208:45:208:46 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:210:13:210:15 | _n1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:210:19:210:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:210:39:210:40 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:211:46:211:47 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:228:15:228:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | +| main.rs:228:15:228:18 | SelfParam | A | main.rs:221:5:222:14 | S1 | +| main.rs:228:27:230:9 | { ... } | | main.rs:221:5:222:14 | S1 | +| main.rs:229:13:229:16 | self | | main.rs:216:5:219:5 | MyThing | +| main.rs:229:13:229:16 | self | A | main.rs:221:5:222:14 | S1 | +| main.rs:235:15:235:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | +| main.rs:235:15:235:18 | SelfParam | A | main.rs:223:5:224:14 | S2 | +| main.rs:235:29:237:9 | { ... } | | main.rs:216:5:219:5 | MyThing | +| main.rs:235:29:237:9 | { ... } | A | main.rs:223:5:224:14 | S2 | +| main.rs:236:13:236:30 | Self {...} | | main.rs:216:5:219:5 | MyThing | +| main.rs:236:13:236:30 | Self {...} | A | main.rs:223:5:224:14 | S2 | +| main.rs:236:23:236:26 | self | | main.rs:216:5:219:5 | MyThing | +| main.rs:236:23:236:26 | self | A | main.rs:223:5:224:14 | S2 | +| main.rs:241:15:241:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | +| main.rs:241:15:241:18 | SelfParam | A | main.rs:240:10:240:10 | T | +| main.rs:241:26:243:9 | { ... } | | main.rs:240:10:240:10 | T | +| main.rs:242:13:242:16 | self | | main.rs:216:5:219:5 | MyThing | +| main.rs:242:13:242:16 | self | A | main.rs:240:10:240:10 | T | +| main.rs:246:16:262:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:247:13:247:13 | x | | main.rs:216:5:219:5 | MyThing | +| main.rs:247:17:247:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | +| main.rs:248:13:248:13 | y | | main.rs:216:5:219:5 | MyThing | +| main.rs:248:17:248:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | +| main.rs:251:18:251:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:251:18:251:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:251:18:251:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:251:18:251:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:251:26:251:26 | x | | main.rs:216:5:219:5 | MyThing | +| main.rs:252:18:252:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:252:18:252:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:252:18:252:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:252:18:252:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:252:26:252:26 | y | | main.rs:216:5:219:5 | MyThing | +| main.rs:254:18:254:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:254:18:254:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:254:18:254:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:254:18:254:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:254:26:254:26 | x | | main.rs:216:5:219:5 | MyThing | +| main.rs:255:18:255:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:255:18:255:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:255:18:255:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:255:18:255:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:255:26:255:26 | y | | main.rs:216:5:219:5 | MyThing | +| main.rs:257:13:257:13 | x | | main.rs:216:5:219:5 | MyThing | +| main.rs:257:17:257:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | +| main.rs:258:13:258:13 | y | | main.rs:216:5:219:5 | MyThing | +| main.rs:258:17:258:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | +| main.rs:260:18:260:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:260:18:260:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:260:18:260:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:260:18:260:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:260:26:260:26 | x | | main.rs:216:5:219:5 | MyThing | +| main.rs:261:18:261:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:261:18:261:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:261:18:261:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:261:18:261:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:261:26:261:26 | y | | main.rs:216:5:219:5 | MyThing | +| main.rs:285:15:285:18 | SelfParam | | main.rs:284:5:293:5 | Self [trait MyTrait] | +| main.rs:287:15:287:18 | SelfParam | | main.rs:284:5:293:5 | Self [trait MyTrait] | +| main.rs:290:9:292:9 | { ... } | | main.rs:284:5:293:5 | Self [trait MyTrait] | +| main.rs:291:13:291:16 | self | | main.rs:284:5:293:5 | Self [trait MyTrait] | +| main.rs:297:16:297:19 | SelfParam | | main.rs:295:5:300:5 | Self [trait MyProduct] | +| main.rs:299:16:299:19 | SelfParam | | main.rs:295:5:300:5 | Self [trait MyProduct] | +| main.rs:302:43:302:43 | x | | main.rs:302:26:302:40 | T2 | +| main.rs:302:56:304:5 | { ... } | | main.rs:302:22:302:23 | T1 | +| main.rs:303:9:303:9 | x | | main.rs:302:26:302:40 | T2 | +| main.rs:308:15:308:18 | SelfParam | | main.rs:266:5:269:5 | MyThing | +| main.rs:308:15:308:18 | SelfParam | A | main.rs:277:5:278:14 | S1 | +| main.rs:308:27:310:9 | { ... } | | main.rs:277:5:278:14 | S1 | +| main.rs:309:13:309:16 | self | | main.rs:266:5:269:5 | MyThing | +| main.rs:309:13:309:16 | self | A | main.rs:277:5:278:14 | S1 | +| main.rs:315:15:315:18 | SelfParam | | main.rs:266:5:269:5 | MyThing | +| main.rs:315:15:315:18 | SelfParam | A | main.rs:279:5:280:14 | S2 | +| main.rs:315:29:317:9 | { ... } | | main.rs:266:5:269:5 | MyThing | +| main.rs:315:29:317:9 | { ... } | A | main.rs:279:5:280:14 | S2 | +| main.rs:316:13:316:30 | Self {...} | | main.rs:266:5:269:5 | MyThing | +| main.rs:316:13:316:30 | Self {...} | A | main.rs:279:5:280:14 | S2 | +| main.rs:316:23:316:26 | self | | main.rs:266:5:269:5 | MyThing | +| main.rs:316:23:316:26 | self | A | main.rs:279:5:280:14 | S2 | +| main.rs:327:15:327:18 | SelfParam | | main.rs:266:5:269:5 | MyThing | +| main.rs:327:15:327:18 | SelfParam | A | main.rs:281:5:282:14 | S3 | +| main.rs:327:27:329:9 | { ... } | | main.rs:322:10:322:11 | TD | +| main.rs:334:15:334:18 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:334:15:334:18 | SelfParam | P1 | main.rs:332:10:332:10 | I | +| main.rs:334:15:334:18 | SelfParam | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:334:26:336:9 | { ... } | | main.rs:332:10:332:10 | I | +| main.rs:335:13:335:16 | self | | main.rs:271:5:275:5 | MyPair | +| main.rs:335:13:335:16 | self | P1 | main.rs:332:10:332:10 | I | +| main.rs:335:13:335:16 | self | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:341:15:341:18 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:341:15:341:18 | SelfParam | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:341:15:341:18 | SelfParam | P2 | main.rs:279:5:280:14 | S2 | +| main.rs:341:27:343:9 | { ... } | | main.rs:281:5:282:14 | S3 | +| main.rs:348:15:348:18 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:348:15:348:18 | SelfParam | P1 | main.rs:266:5:269:5 | MyThing | +| main.rs:348:15:348:18 | SelfParam | P1.A | main.rs:346:10:346:11 | TT | +| main.rs:348:15:348:18 | SelfParam | P2 | main.rs:281:5:282:14 | S3 | +| main.rs:348:27:351:9 | { ... } | | main.rs:346:10:346:11 | TT | +| main.rs:349:25:349:28 | self | | main.rs:271:5:275:5 | MyPair | +| main.rs:349:25:349:28 | self | P1 | main.rs:266:5:269:5 | MyThing | +| main.rs:349:25:349:28 | self | P1.A | main.rs:346:10:346:11 | TT | +| main.rs:349:25:349:28 | self | P2 | main.rs:281:5:282:14 | S3 | +| main.rs:357:16:357:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:357:16:357:19 | SelfParam | P1 | main.rs:355:10:355:10 | A | +| main.rs:357:16:357:19 | SelfParam | P2 | main.rs:355:10:355:10 | A | +| main.rs:357:27:359:9 | { ... } | | main.rs:355:10:355:10 | A | +| main.rs:358:13:358:16 | self | | main.rs:271:5:275:5 | MyPair | +| main.rs:358:13:358:16 | self | P1 | main.rs:355:10:355:10 | A | +| main.rs:358:13:358:16 | self | P2 | main.rs:355:10:355:10 | A | +| main.rs:362:16:362:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:362:16:362:19 | SelfParam | P1 | main.rs:355:10:355:10 | A | +| main.rs:362:16:362:19 | SelfParam | P2 | main.rs:355:10:355:10 | A | +| main.rs:362:27:364:9 | { ... } | | main.rs:355:10:355:10 | A | +| main.rs:363:13:363:16 | self | | main.rs:271:5:275:5 | MyPair | +| main.rs:363:13:363:16 | self | P1 | main.rs:355:10:355:10 | A | +| main.rs:363:13:363:16 | self | P2 | main.rs:355:10:355:10 | A | +| main.rs:370:16:370:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:370:16:370:19 | SelfParam | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:370:16:370:19 | SelfParam | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:370:28:372:9 | { ... } | | main.rs:277:5:278:14 | S1 | +| main.rs:371:13:371:16 | self | | main.rs:271:5:275:5 | MyPair | +| main.rs:371:13:371:16 | self | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:371:13:371:16 | self | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:375:16:375:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:375:16:375:19 | SelfParam | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:375:16:375:19 | SelfParam | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:375:28:377:9 | { ... } | | main.rs:279:5:280:14 | S2 | +| main.rs:376:13:376:16 | self | | main.rs:271:5:275:5 | MyPair | +| main.rs:376:13:376:16 | self | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:376:13:376:16 | self | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:380:46:380:46 | p | | main.rs:380:24:380:43 | P | +| main.rs:380:58:382:5 | { ... } | | main.rs:380:16:380:17 | V1 | +| main.rs:381:9:381:9 | p | | main.rs:380:24:380:43 | P | +| main.rs:384:46:384:46 | p | | main.rs:384:24:384:43 | P | +| main.rs:384:58:386:5 | { ... } | | main.rs:384:20:384:21 | V2 | +| main.rs:385:9:385:9 | p | | main.rs:384:24:384:43 | P | +| main.rs:388:54:388:54 | p | | main.rs:271:5:275:5 | MyPair | +| main.rs:388:54:388:54 | p | P1 | main.rs:388:20:388:21 | V0 | +| main.rs:388:54:388:54 | p | P2 | main.rs:388:32:388:51 | P | +| main.rs:388:78:390:5 | { ... } | | main.rs:388:24:388:25 | V1 | +| main.rs:389:9:389:9 | p | | main.rs:271:5:275:5 | MyPair | +| main.rs:389:9:389:9 | p | P1 | main.rs:388:20:388:21 | V0 | +| main.rs:389:9:389:9 | p | P2 | main.rs:388:32:388:51 | P | +| main.rs:394:23:394:26 | SelfParam | | main.rs:392:5:395:5 | Self [trait ConvertTo] | +| main.rs:399:23:399:26 | SelfParam | | main.rs:397:10:397:23 | T | +| main.rs:399:35:401:9 | { ... } | | main.rs:277:5:278:14 | S1 | +| main.rs:400:13:400:16 | self | | main.rs:397:10:397:23 | T | +| main.rs:404:41:404:45 | thing | | main.rs:404:23:404:38 | T | +| main.rs:404:57:406:5 | { ... } | | main.rs:404:19:404:20 | TS | +| main.rs:405:9:405:13 | thing | | main.rs:404:23:404:38 | T | +| main.rs:408:56:408:60 | thing | | main.rs:408:39:408:53 | TP | +| main.rs:408:73:411:5 | { ... } | | main.rs:277:5:278:14 | S1 | +| main.rs:410:9:410:13 | thing | | main.rs:408:39:408:53 | TP | +| main.rs:413:16:484:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:414:13:414:20 | thing_s1 | | main.rs:266:5:269:5 | MyThing | +| main.rs:414:24:414:40 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | +| main.rs:415:13:415:20 | thing_s2 | | main.rs:266:5:269:5 | MyThing | +| main.rs:415:24:415:40 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | +| main.rs:416:13:416:20 | thing_s3 | | main.rs:266:5:269:5 | MyThing | +| main.rs:416:24:416:40 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | +| main.rs:420:18:420:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:420:18:420:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:420:18:420:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:420:18:420:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:420:26:420:33 | thing_s1 | | main.rs:266:5:269:5 | MyThing | | main.rs:421:18:421:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:421:18:421:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:421:18:421:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:421:18:421:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:425:31:425:38 | thing_s1 | | main.rs:235:5:238:5 | MyThing | +| main.rs:421:18:421:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:421:18:421:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:421:26:421:33 | thing_s2 | | main.rs:266:5:269:5 | MyThing | +| main.rs:422:13:422:14 | s3 | | main.rs:281:5:282:14 | S3 | +| main.rs:422:22:422:29 | thing_s3 | | main.rs:266:5:269:5 | MyThing | +| main.rs:423:18:423:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:423:18:423:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:423:18:423:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:423:18:423:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:423:26:423:27 | s3 | | main.rs:281:5:282:14 | S3 | +| main.rs:425:13:425:14 | p1 | | main.rs:271:5:275:5 | MyPair | +| main.rs:425:18:425:42 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | | main.rs:426:18:426:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:426:18:426:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:426:18:426:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:426:18:426:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:427:31:427:38 | thing_s2 | | main.rs:235:5:238:5 | MyThing | -| main.rs:428:18:428:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:428:18:428:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:428:18:428:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:428:18:428:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:431:13:431:13 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:431:17:431:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:432:25:432:25 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:433:18:433:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:433:18:433:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:433:18:433:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:433:18:433:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:434:25:434:25 | a | | main.rs:240:5:244:5 | MyPair | +| main.rs:426:18:426:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:426:18:426:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:426:26:426:27 | p1 | | main.rs:271:5:275:5 | MyPair | +| main.rs:428:13:428:14 | p2 | | main.rs:271:5:275:5 | MyPair | +| main.rs:428:18:428:42 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:429:18:429:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:429:18:429:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:429:18:429:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:429:26:429:27 | p2 | | main.rs:271:5:275:5 | MyPair | +| main.rs:431:13:431:14 | p3 | | main.rs:271:5:275:5 | MyPair | +| main.rs:431:18:434:9 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:432:17:432:33 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | | main.rs:435:18:435:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:435:18:435:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:435:18:435:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:435:18:435:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:438:13:438:13 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:438:17:438:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:439:25:439:25 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:435:18:435:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:435:18:435:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:435:26:435:27 | p3 | | main.rs:271:5:275:5 | MyPair | +| main.rs:438:13:438:13 | a | | main.rs:271:5:275:5 | MyPair | +| main.rs:438:17:438:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:439:17:439:17 | a | | main.rs:271:5:275:5 | MyPair | | main.rs:440:18:440:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:440:18:440:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:440:18:440:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:440:18:440:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:441:25:441:25 | b | | main.rs:240:5:244:5 | MyPair | +| main.rs:441:17:441:17 | a | | main.rs:271:5:275:5 | MyPair | | main.rs:442:18:442:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:442:18:442:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:442:18:442:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:442:18:442:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:444:13:444:13 | c | | main.rs:240:5:244:5 | MyPair | -| main.rs:444:17:447:9 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:446:17:446:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:448:29:448:29 | c | | main.rs:240:5:244:5 | MyPair | -| main.rs:450:13:450:17 | thing | | main.rs:235:5:238:5 | MyThing | -| main.rs:450:21:450:37 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:451:17:451:21 | thing | | main.rs:235:5:238:5 | MyThing | -| main.rs:452:28:452:32 | thing | | main.rs:235:5:238:5 | MyThing | -| main.rs:461:26:461:29 | SelfParam | | main.rs:460:5:464:5 | Self [trait OverlappingTrait] | -| main.rs:463:28:463:31 | SelfParam | | main.rs:460:5:464:5 | Self [trait OverlappingTrait] | -| main.rs:463:34:463:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:468:26:468:29 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:468:38:470:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:473:28:473:31 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:473:34:473:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:473:48:475:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:480:26:480:29 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:480:38:482:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:481:13:481:16 | self | | main.rs:457:5:458:14 | S1 | -| main.rs:485:28:485:31 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:485:40:487:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:486:13:486:16 | self | | main.rs:457:5:458:14 | S1 | -| main.rs:494:26:494:29 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:494:26:494:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:494:38:496:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:499:28:499:31 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:499:28:499:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:499:40:501:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:506:26:506:29 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:506:26:506:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:506:38:508:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:511:28:511:31 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:511:28:511:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:511:34:511:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:511:48:513:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:518:26:518:29 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:518:26:518:29 | SelfParam | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:518:38:520:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:523:28:523:31 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:523:28:523:31 | SelfParam | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:523:34:523:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:523:48:525:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:532:14:532:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:532:14:532:18 | SelfParam | TRef | main.rs:531:5:533:5 | Self [trait OverlappingTrait2] | -| main.rs:532:21:532:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:532:21:532:21 | x | TRef | main.rs:531:29:531:29 | T | -| main.rs:537:14:537:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:537:14:537:18 | SelfParam | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:537:14:537:18 | SelfParam | TRef.T3 | main.rs:535:10:535:10 | T | -| main.rs:537:21:537:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:537:21:537:21 | x | TRef | main.rs:535:10:535:10 | T | -| main.rs:537:37:539:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:537:37:539:9 | { ... } | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:537:37:539:9 | { ... } | TRef.T3 | main.rs:535:10:535:10 | T | -| main.rs:538:13:538:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:538:13:538:16 | self | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:538:13:538:16 | self | TRef.T3 | main.rs:535:10:535:10 | T | -| main.rs:544:14:544:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:544:14:544:18 | SelfParam | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:544:14:544:18 | SelfParam | TRef.T3 | main.rs:542:10:542:10 | T | -| main.rs:544:21:544:21 | x | | main.rs:542:10:542:10 | T | -| main.rs:544:36:546:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:544:36:546:9 | { ... } | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:544:36:546:9 | { ... } | TRef.T3 | main.rs:542:10:542:10 | T | -| main.rs:545:13:545:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:545:13:545:16 | self | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:545:13:545:16 | self | TRef.T3 | main.rs:542:10:542:10 | T | -| main.rs:551:14:551:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:551:14:551:18 | SelfParam | TRef | main.rs:549:5:552:5 | Self [trait MyTrait1] | -| main.rs:551:21:551:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:561:14:561:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:561:14:561:18 | SelfParam | TRef | main.rs:556:5:557:14 | S4 | -| main.rs:561:21:561:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:571:14:571:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:571:14:571:18 | SelfParam | TRef | main.rs:566:5:567:22 | S5 | -| main.rs:571:14:571:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:571:21:571:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:580:16:606:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:582:18:582:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:582:18:582:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:583:18:583:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:583:18:583:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:45 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:583:26:583:45 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:584:18:584:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:584:18:584:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:584:18:584:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:584:18:584:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:585:18:585:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:585:18:585:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:585:18:585:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:585:18:585:47 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:585:26:585:47 | ...::common_method_2(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:588:18:588:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:588:18:588:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:588:18:588:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:588:18:588:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:589:18:589:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:589:18:589:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:589:18:589:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:589:18:589:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:589:26:589:56 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:592:18:592:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:592:18:592:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:592:18:592:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:592:18:592:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:593:18:593:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:593:18:593:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:593:18:593:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:593:18:593:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:593:26:593:49 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:594:18:594:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:594:18:594:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:594:18:594:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:594:18:594:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:594:26:594:56 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:597:18:597:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:597:18:597:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:597:18:597:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:597:18:597:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:598:18:598:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:598:18:598:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:598:18:598:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:598:18:598:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:598:26:598:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | -| main.rs:598:26:598:37 | ...::m(...) | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:598:32:598:33 | &w | | {EXTERNAL LOCATION} | & | -| main.rs:601:9:601:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:601:15:601:17 | &S4 | | {EXTERNAL LOCATION} | & | -| main.rs:602:12:602:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:603:9:603:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:603:15:603:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:603:19:603:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:604:12:604:15 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:605:9:605:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:605:15:605:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:605:19:605:22 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:622:19:622:22 | SelfParam | | main.rs:620:5:623:5 | Self [trait FirstTrait] | -| main.rs:627:19:627:22 | SelfParam | | main.rs:625:5:628:5 | Self [trait SecondTrait] | -| main.rs:630:64:630:64 | x | | main.rs:630:45:630:61 | T | -| main.rs:630:70:634:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:632:18:632:18 | x | | main.rs:630:45:630:61 | T | -| main.rs:633:18:633:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:633:18:633:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:633:18:633:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:633:18:633:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:636:65:636:65 | x | | main.rs:636:46:636:62 | T | -| main.rs:636:71:640:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:638:18:638:18 | x | | main.rs:636:46:636:62 | T | -| main.rs:639:18:639:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:639:18:639:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:639:18:639:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:639:18:639:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:642:49:642:49 | x | | main.rs:642:30:642:46 | T | -| main.rs:642:55:645:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:643:17:643:17 | x | | main.rs:642:30:642:46 | T | -| main.rs:644:18:644:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:644:18:644:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:644:18:644:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:644:18:644:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:647:53:647:53 | x | | main.rs:647:34:647:50 | T | -| main.rs:647:59:650:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:648:17:648:17 | x | | main.rs:647:34:647:50 | T | -| main.rs:649:18:649:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:649:18:649:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:649:18:649:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:649:18:649:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:652:43:652:43 | x | | main.rs:652:40:652:40 | T | -| main.rs:655:5:658:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:656:17:656:17 | x | | main.rs:652:40:652:40 | T | -| main.rs:657:18:657:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:657:18:657:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:657:18:657:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:657:18:657:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:661:16:661:19 | SelfParam | | main.rs:660:5:664:5 | Self [trait Pair] | -| main.rs:663:16:663:19 | SelfParam | | main.rs:660:5:664:5 | Self [trait Pair] | -| main.rs:666:53:666:53 | x | | main.rs:666:50:666:50 | T | -| main.rs:666:59:666:59 | y | | main.rs:666:50:666:50 | T | -| main.rs:670:5:673:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:671:17:671:17 | x | | main.rs:666:50:666:50 | T | -| main.rs:672:17:672:17 | y | | main.rs:666:50:666:50 | T | -| main.rs:675:58:675:58 | x | | main.rs:675:41:675:55 | T | -| main.rs:675:64:675:64 | y | | main.rs:675:41:675:55 | T | -| main.rs:675:70:680:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:677:18:677:18 | x | | main.rs:675:41:675:55 | T | -| main.rs:678:18:678:18 | y | | main.rs:675:41:675:55 | T | -| main.rs:679:18:679:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:679:18:679:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:679:18:679:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:679:18:679:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:682:69:682:69 | x | | main.rs:682:52:682:66 | T | -| main.rs:682:75:682:75 | y | | main.rs:682:52:682:66 | T | -| main.rs:682:81:687:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:684:18:684:18 | x | | main.rs:682:52:682:66 | T | -| main.rs:685:18:685:18 | y | | main.rs:682:52:682:66 | T | -| main.rs:686:18:686:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:686:18:686:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:686:18:686:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:686:18:686:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:689:50:689:50 | x | | main.rs:689:41:689:47 | T | -| main.rs:689:56:689:56 | y | | main.rs:689:41:689:47 | T | -| main.rs:689:62:694:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:691:18:691:18 | x | | main.rs:689:41:689:47 | T | -| main.rs:692:18:692:18 | y | | main.rs:689:41:689:47 | T | -| main.rs:693:18:693:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:693:18:693:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:693:18:693:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:693:18:693:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:696:54:696:54 | x | | main.rs:696:41:696:51 | T | -| main.rs:696:60:696:60 | y | | main.rs:696:41:696:51 | T | -| main.rs:696:66:701:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:698:18:698:18 | x | | main.rs:696:41:696:51 | T | -| main.rs:699:18:699:18 | y | | main.rs:696:41:696:51 | T | -| main.rs:700:18:700:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:700:18:700:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:700:18:700:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:700:18:700:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:708:18:708:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:708:18:708:22 | SelfParam | TRef | main.rs:705:5:709:5 | Self [trait TraitWithSelfTp] | -| main.rs:711:40:711:44 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:711:40:711:44 | thing | TRef | main.rs:711:17:711:37 | T | -| main.rs:711:56:713:5 | { ... } | | main.rs:711:14:711:14 | A | -| main.rs:712:9:712:13 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:712:9:712:13 | thing | TRef | main.rs:711:17:711:37 | T | -| main.rs:716:44:716:48 | thing | | main.rs:716:24:716:41 | S | -| main.rs:716:61:719:5 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:717:19:717:23 | thing | | main.rs:716:24:716:41 | S | -| main.rs:724:55:724:59 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:724:55:724:59 | thing | TRef | main.rs:724:25:724:52 | S | -| main.rs:724:66:727:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:726:25:726:29 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:726:25:726:29 | thing | TRef | main.rs:724:25:724:52 | S | -| main.rs:735:18:735:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:735:18:735:22 | SelfParam | TRef | main.rs:729:5:731:5 | MyStruct | -| main.rs:735:41:737:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:735:41:737:9 | { ... } | T | main.rs:729:5:731:5 | MyStruct | -| main.rs:736:18:736:47 | MyStruct {...} | | main.rs:729:5:731:5 | MyStruct | -| main.rs:736:36:736:39 | self | | {EXTERNAL LOCATION} | & | -| main.rs:736:36:736:39 | self | TRef | main.rs:729:5:731:5 | MyStruct | -| main.rs:742:19:745:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:743:13:743:13 | s | | main.rs:729:5:731:5 | MyStruct | -| main.rs:743:17:743:37 | MyStruct {...} | | main.rs:729:5:731:5 | MyStruct | -| main.rs:744:25:744:26 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:744:26:744:26 | s | | main.rs:729:5:731:5 | MyStruct | -| main.rs:760:15:760:18 | SelfParam | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:762:15:762:18 | SelfParam | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:765:9:767:9 | { ... } | | main.rs:759:19:759:19 | A | -| main.rs:766:13:766:16 | self | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:769:18:769:18 | x | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:773:15:773:18 | SelfParam | | main.rs:756:5:757:14 | S2 | -| main.rs:773:26:775:9 | { ... } | | main.rs:772:10:772:19 | T | -| main.rs:777:18:777:18 | x | | main.rs:756:5:757:14 | S2 | -| main.rs:777:32:779:9 | { ... } | | main.rs:772:10:772:19 | T | -| main.rs:783:15:783:18 | SelfParam | | main.rs:754:5:755:14 | S1 | -| main.rs:783:28:785:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:787:18:787:18 | x | | main.rs:754:5:755:14 | S1 | -| main.rs:787:34:789:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:794:50:794:50 | x | | main.rs:794:26:794:47 | T2 | -| main.rs:794:63:797:5 | { ... } | | main.rs:794:22:794:23 | T1 | -| main.rs:795:9:795:9 | x | | main.rs:794:26:794:47 | T2 | -| main.rs:796:9:796:9 | x | | main.rs:794:26:794:47 | T2 | -| main.rs:798:52:798:52 | x | | main.rs:798:28:798:49 | T2 | -| main.rs:798:65:802:5 | { ... } | | main.rs:798:24:798:25 | T1 | -| main.rs:799:24:799:24 | x | | main.rs:798:28:798:49 | T2 | -| main.rs:801:16:801:16 | x | | main.rs:798:28:798:49 | T2 | -| main.rs:803:52:803:52 | x | | main.rs:803:28:803:49 | T2 | -| main.rs:803:65:807:5 | { ... } | | main.rs:803:24:803:25 | T1 | -| main.rs:804:29:804:29 | x | | main.rs:803:28:803:49 | T2 | -| main.rs:806:21:806:21 | x | | main.rs:803:28:803:49 | T2 | -| main.rs:808:55:808:55 | x | | main.rs:808:31:808:52 | T2 | -| main.rs:808:68:812:5 | { ... } | | main.rs:808:27:808:28 | T1 | -| main.rs:809:27:809:27 | x | | main.rs:808:31:808:52 | T2 | -| main.rs:811:19:811:19 | x | | main.rs:808:31:808:52 | T2 | -| main.rs:813:55:813:55 | x | | main.rs:813:31:813:52 | T2 | -| main.rs:813:68:817:5 | { ... } | | main.rs:813:27:813:28 | T1 | -| main.rs:814:32:814:32 | x | | main.rs:813:31:813:52 | T2 | -| main.rs:816:24:816:24 | x | | main.rs:813:31:813:52 | T2 | -| main.rs:821:49:821:49 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:821:49:821:49 | x | T | main.rs:821:32:821:46 | T2 | -| main.rs:821:71:823:5 | { ... } | | main.rs:821:28:821:29 | T1 | -| main.rs:822:9:822:9 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:822:9:822:9 | x | T | main.rs:821:32:821:46 | T2 | -| main.rs:824:51:824:51 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:824:51:824:51 | x | T | main.rs:824:34:824:48 | T2 | -| main.rs:824:73:826:5 | { ... } | | main.rs:824:30:824:31 | T1 | -| main.rs:825:16:825:16 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:825:16:825:16 | x | T | main.rs:824:34:824:48 | T2 | -| main.rs:827:51:827:51 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:827:51:827:51 | x | T | main.rs:827:34:827:48 | T2 | -| main.rs:827:73:829:5 | { ... } | | main.rs:827:30:827:31 | T1 | -| main.rs:828:21:828:21 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:828:21:828:21 | x | T | main.rs:827:34:827:48 | T2 | -| main.rs:832:15:832:18 | SelfParam | | main.rs:749:5:752:5 | MyThing | -| main.rs:832:15:832:18 | SelfParam | T | main.rs:831:10:831:10 | T | -| main.rs:832:26:834:9 | { ... } | | main.rs:831:10:831:10 | T | -| main.rs:833:13:833:16 | self | | main.rs:749:5:752:5 | MyThing | -| main.rs:833:13:833:16 | self | T | main.rs:831:10:831:10 | T | -| main.rs:836:18:836:18 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:836:18:836:18 | x | T | main.rs:831:10:831:10 | T | -| main.rs:836:32:838:9 | { ... } | | main.rs:831:10:831:10 | T | -| main.rs:837:13:837:13 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:837:13:837:13 | x | T | main.rs:831:10:831:10 | T | -| main.rs:843:15:843:18 | SelfParam | | main.rs:841:5:844:5 | Self [trait MyTrait2] | -| main.rs:848:15:848:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:848:15:848:19 | SelfParam | TRef | main.rs:846:5:849:5 | Self [trait MyTrait3] | -| main.rs:851:46:851:46 | x | | main.rs:851:22:851:43 | T | -| main.rs:851:52:851:52 | y | | {EXTERNAL LOCATION} | & | -| main.rs:851:52:851:52 | y | TRef | main.rs:851:22:851:43 | T | -| main.rs:851:59:854:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:852:9:852:9 | x | | main.rs:851:22:851:43 | T | -| main.rs:853:9:853:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:853:9:853:9 | y | TRef | main.rs:851:22:851:43 | T | -| main.rs:856:16:914:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:857:13:857:13 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:857:17:857:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:858:13:858:13 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:858:17:858:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:860:18:860:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:860:18:860:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:860:18:860:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:860:18:860:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:860:26:860:26 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:861:18:861:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:861:18:861:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:861:18:861:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:861:18:861:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:861:26:861:26 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:863:13:863:13 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:863:17:863:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:864:13:864:13 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:864:17:864:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:866:18:866:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:866:18:866:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:866:18:866:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:866:18:866:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:866:26:866:26 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:867:18:867:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:867:18:867:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:867:18:867:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:867:18:867:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:867:26:867:26 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:869:13:869:14 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:869:18:869:34 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:870:13:870:14 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:870:18:870:34 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:872:31:872:32 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:873:18:873:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:873:18:873:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:873:18:873:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:873:18:873:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:874:33:874:34 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:875:18:875:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:875:18:875:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:875:18:875:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:875:18:875:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:876:33:876:34 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:877:18:877:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:877:18:877:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:877:18:877:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:877:18:877:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:878:31:878:32 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:879:18:879:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:879:18:879:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:879:18:879:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:879:18:879:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:880:33:880:34 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:881:18:881:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:881:18:881:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:881:18:881:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:881:18:881:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:882:33:882:34 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:883:18:883:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:883:18:883:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:883:18:883:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:883:18:883:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:884:36:884:37 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:885:18:885:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:885:18:885:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:885:18:885:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:885:18:885:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:886:36:886:37 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:887:18:887:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:887:18:887:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:887:18:887:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:887:18:887:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:888:36:888:37 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:889:18:889:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:889:18:889:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:889:18:889:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:889:18:889:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:890:36:890:37 | y2 | | main.rs:749:5:752:5 | MyThing | +| main.rs:448:13:448:13 | b | | main.rs:271:5:275:5 | MyPair | +| main.rs:448:17:448:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:449:17:449:17 | b | | main.rs:271:5:275:5 | MyPair | +| main.rs:450:18:450:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:450:18:450:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:450:18:450:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:450:18:450:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:451:17:451:17 | b | | main.rs:271:5:275:5 | MyPair | +| main.rs:452:18:452:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:452:18:452:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:452:18:452:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:452:18:452:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:456:31:456:38 | thing_s1 | | main.rs:266:5:269:5 | MyThing | +| main.rs:457:18:457:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:457:18:457:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:457:18:457:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:457:18:457:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:458:31:458:38 | thing_s2 | | main.rs:266:5:269:5 | MyThing | +| main.rs:459:18:459:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:459:18:459:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:459:18:459:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:459:18:459:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:462:13:462:13 | a | | main.rs:271:5:275:5 | MyPair | +| main.rs:462:17:462:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:463:25:463:25 | a | | main.rs:271:5:275:5 | MyPair | +| main.rs:464:18:464:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:464:18:464:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:464:18:464:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:464:18:464:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:465:25:465:25 | a | | main.rs:271:5:275:5 | MyPair | +| main.rs:466:18:466:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:466:18:466:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:466:18:466:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:466:18:466:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:469:13:469:13 | b | | main.rs:271:5:275:5 | MyPair | +| main.rs:469:17:469:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:470:25:470:25 | b | | main.rs:271:5:275:5 | MyPair | +| main.rs:471:18:471:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:471:18:471:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:471:18:471:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:471:18:471:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:472:25:472:25 | b | | main.rs:271:5:275:5 | MyPair | +| main.rs:473:18:473:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:473:18:473:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:473:18:473:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:473:18:473:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:475:13:475:13 | c | | main.rs:271:5:275:5 | MyPair | +| main.rs:475:17:478:9 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:477:17:477:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:479:29:479:29 | c | | main.rs:271:5:275:5 | MyPair | +| main.rs:481:13:481:17 | thing | | main.rs:266:5:269:5 | MyThing | +| main.rs:481:21:481:37 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | +| main.rs:482:17:482:21 | thing | | main.rs:266:5:269:5 | MyThing | +| main.rs:483:28:483:32 | thing | | main.rs:266:5:269:5 | MyThing | +| main.rs:492:26:492:29 | SelfParam | | main.rs:491:5:495:5 | Self [trait OverlappingTrait] | +| main.rs:494:28:494:31 | SelfParam | | main.rs:491:5:495:5 | Self [trait OverlappingTrait] | +| main.rs:494:34:494:35 | s1 | | main.rs:488:5:489:14 | S1 | +| main.rs:499:26:499:29 | SelfParam | | main.rs:488:5:489:14 | S1 | +| main.rs:499:38:501:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:504:28:504:31 | SelfParam | | main.rs:488:5:489:14 | S1 | +| main.rs:504:34:504:35 | s1 | | main.rs:488:5:489:14 | S1 | +| main.rs:504:48:506:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:511:26:511:29 | SelfParam | | main.rs:488:5:489:14 | S1 | +| main.rs:511:38:513:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:512:13:512:16 | self | | main.rs:488:5:489:14 | S1 | +| main.rs:516:28:516:31 | SelfParam | | main.rs:488:5:489:14 | S1 | +| main.rs:516:40:518:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:517:13:517:16 | self | | main.rs:488:5:489:14 | S1 | +| main.rs:525:26:525:29 | SelfParam | | main.rs:521:5:521:22 | S2 | +| main.rs:525:26:525:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:525:38:527:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:530:28:530:31 | SelfParam | | main.rs:521:5:521:22 | S2 | +| main.rs:530:28:530:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:530:40:532:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:537:26:537:29 | SelfParam | | main.rs:521:5:521:22 | S2 | +| main.rs:537:26:537:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:537:38:539:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:542:28:542:31 | SelfParam | | main.rs:521:5:521:22 | S2 | +| main.rs:542:28:542:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:542:34:542:35 | s1 | | main.rs:488:5:489:14 | S1 | +| main.rs:542:48:544:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:549:26:549:29 | SelfParam | | main.rs:521:5:521:22 | S2 | +| main.rs:549:26:549:29 | SelfParam | T2 | main.rs:488:5:489:14 | S1 | +| main.rs:549:38:551:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:554:28:554:31 | SelfParam | | main.rs:521:5:521:22 | S2 | +| main.rs:554:28:554:31 | SelfParam | T2 | main.rs:488:5:489:14 | S1 | +| main.rs:554:34:554:35 | s1 | | main.rs:488:5:489:14 | S1 | +| main.rs:554:48:556:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:563:14:563:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:563:14:563:18 | SelfParam | TRef | main.rs:562:5:564:5 | Self [trait OverlappingTrait2] | +| main.rs:563:21:563:21 | x | | {EXTERNAL LOCATION} | & | +| main.rs:563:21:563:21 | x | TRef | main.rs:562:29:562:29 | T | +| main.rs:568:14:568:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:568:14:568:18 | SelfParam | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:568:14:568:18 | SelfParam | TRef.T3 | main.rs:566:10:566:10 | T | +| main.rs:568:21:568:21 | x | | {EXTERNAL LOCATION} | & | +| main.rs:568:21:568:21 | x | TRef | main.rs:566:10:566:10 | T | +| main.rs:568:37:570:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:568:37:570:9 | { ... } | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:568:37:570:9 | { ... } | TRef.T3 | main.rs:566:10:566:10 | T | +| main.rs:569:13:569:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:569:13:569:16 | self | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:569:13:569:16 | self | TRef.T3 | main.rs:566:10:566:10 | T | +| main.rs:575:14:575:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:575:14:575:18 | SelfParam | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:575:14:575:18 | SelfParam | TRef.T3 | main.rs:573:10:573:10 | T | +| main.rs:575:21:575:21 | x | | main.rs:573:10:573:10 | T | +| main.rs:575:36:577:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:575:36:577:9 | { ... } | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:575:36:577:9 | { ... } | TRef.T3 | main.rs:573:10:573:10 | T | +| main.rs:576:13:576:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:576:13:576:16 | self | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:576:13:576:16 | self | TRef.T3 | main.rs:573:10:573:10 | T | +| main.rs:582:14:582:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:582:14:582:18 | SelfParam | TRef | main.rs:580:5:583:5 | Self [trait MyTrait1] | +| main.rs:582:21:582:22 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:592:14:592:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:592:14:592:18 | SelfParam | TRef | main.rs:587:5:588:14 | S4 | +| main.rs:592:21:592:22 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:602:14:602:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:602:14:602:18 | SelfParam | TRef | main.rs:597:5:598:22 | S5 | +| main.rs:602:14:602:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:602:21:602:22 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:611:16:637:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:613:18:613:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:613:18:613:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:613:18:613:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:613:18:613:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:614:18:614:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:614:18:614:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:614:18:614:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:614:18:614:45 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:614:26:614:45 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | +| main.rs:615:18:615:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:615:18:615:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:615:18:615:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:615:18:615:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:616:18:616:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:616:18:616:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:616:18:616:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:616:18:616:47 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:616:26:616:47 | ...::common_method_2(...) | | main.rs:488:5:489:14 | S1 | +| main.rs:619:18:619:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:619:18:619:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:619:18:619:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:619:18:619:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:620:18:620:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:620:18:620:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:620:18:620:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:620:18:620:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:620:26:620:56 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | +| main.rs:623:18:623:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:623:18:623:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:623:18:623:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:623:18:623:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:624:18:624:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:624:18:624:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:624:18:624:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:624:18:624:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:624:26:624:49 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | +| main.rs:625:18:625:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:625:18:625:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:625:18:625:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:625:18:625:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:625:26:625:56 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | +| main.rs:628:18:628:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:628:18:628:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:628:18:628:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:628:18:628:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:629:18:629:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:629:18:629:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:629:18:629:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:629:18:629:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:629:26:629:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | +| main.rs:629:26:629:37 | ...::m(...) | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:629:32:629:33 | &w | | {EXTERNAL LOCATION} | & | +| main.rs:632:9:632:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| main.rs:632:15:632:17 | &S4 | | {EXTERNAL LOCATION} | & | +| main.rs:633:12:633:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:634:9:634:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| main.rs:634:15:634:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:634:19:634:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:635:12:635:15 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:636:9:636:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| main.rs:636:15:636:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:636:19:636:22 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:653:19:653:22 | SelfParam | | main.rs:651:5:654:5 | Self [trait FirstTrait] | +| main.rs:658:19:658:22 | SelfParam | | main.rs:656:5:659:5 | Self [trait SecondTrait] | +| main.rs:661:64:661:64 | x | | main.rs:661:45:661:61 | T | +| main.rs:661:70:665:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:663:18:663:18 | x | | main.rs:661:45:661:61 | T | +| main.rs:664:18:664:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:664:18:664:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:664:18:664:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:664:18:664:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:667:65:667:65 | x | | main.rs:667:46:667:62 | T | +| main.rs:667:71:671:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:669:18:669:18 | x | | main.rs:667:46:667:62 | T | +| main.rs:670:18:670:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:670:18:670:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:670:18:670:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:670:18:670:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:673:49:673:49 | x | | main.rs:673:30:673:46 | T | +| main.rs:673:55:676:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:674:17:674:17 | x | | main.rs:673:30:673:46 | T | +| main.rs:675:18:675:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:675:18:675:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:675:18:675:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:675:18:675:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:678:53:678:53 | x | | main.rs:678:34:678:50 | T | +| main.rs:678:59:681:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:679:17:679:17 | x | | main.rs:678:34:678:50 | T | +| main.rs:680:18:680:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:680:18:680:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:680:18:680:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:680:18:680:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:683:43:683:43 | x | | main.rs:683:40:683:40 | T | +| main.rs:686:5:689:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:687:17:687:17 | x | | main.rs:683:40:683:40 | T | +| main.rs:688:18:688:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:688:18:688:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:688:18:688:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:688:18:688:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:692:16:692:19 | SelfParam | | main.rs:691:5:695:5 | Self [trait Pair] | +| main.rs:694:16:694:19 | SelfParam | | main.rs:691:5:695:5 | Self [trait Pair] | +| main.rs:697:53:697:53 | x | | main.rs:697:50:697:50 | T | +| main.rs:697:59:697:59 | y | | main.rs:697:50:697:50 | T | +| main.rs:701:5:704:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:702:17:702:17 | x | | main.rs:697:50:697:50 | T | +| main.rs:703:17:703:17 | y | | main.rs:697:50:697:50 | T | +| main.rs:706:58:706:58 | x | | main.rs:706:41:706:55 | T | +| main.rs:706:64:706:64 | y | | main.rs:706:41:706:55 | T | +| main.rs:706:70:711:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:708:18:708:18 | x | | main.rs:706:41:706:55 | T | +| main.rs:709:18:709:18 | y | | main.rs:706:41:706:55 | T | +| main.rs:710:18:710:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:710:18:710:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:710:18:710:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:710:18:710:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:713:69:713:69 | x | | main.rs:713:52:713:66 | T | +| main.rs:713:75:713:75 | y | | main.rs:713:52:713:66 | T | +| main.rs:713:81:718:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:715:18:715:18 | x | | main.rs:713:52:713:66 | T | +| main.rs:716:18:716:18 | y | | main.rs:713:52:713:66 | T | +| main.rs:717:18:717:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:717:18:717:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:717:18:717:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:717:18:717:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:720:50:720:50 | x | | main.rs:720:41:720:47 | T | +| main.rs:720:56:720:56 | y | | main.rs:720:41:720:47 | T | +| main.rs:720:62:725:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:722:18:722:18 | x | | main.rs:720:41:720:47 | T | +| main.rs:723:18:723:18 | y | | main.rs:720:41:720:47 | T | +| main.rs:724:18:724:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:724:18:724:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:724:18:724:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:724:18:724:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:727:54:727:54 | x | | main.rs:727:41:727:51 | T | +| main.rs:727:60:727:60 | y | | main.rs:727:41:727:51 | T | +| main.rs:727:66:732:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:729:18:729:18 | x | | main.rs:727:41:727:51 | T | +| main.rs:730:18:730:18 | y | | main.rs:727:41:727:51 | T | +| main.rs:731:18:731:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:731:18:731:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:731:18:731:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:731:18:731:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:739:18:739:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:739:18:739:22 | SelfParam | TRef | main.rs:736:5:740:5 | Self [trait TraitWithSelfTp] | +| main.rs:742:40:742:44 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:742:40:742:44 | thing | TRef | main.rs:742:17:742:37 | T | +| main.rs:742:56:744:5 | { ... } | | main.rs:742:14:742:14 | A | +| main.rs:743:9:743:13 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:743:9:743:13 | thing | TRef | main.rs:742:17:742:37 | T | +| main.rs:747:44:747:48 | thing | | main.rs:747:24:747:41 | S | +| main.rs:747:61:750:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:748:19:748:23 | thing | | main.rs:747:24:747:41 | S | +| main.rs:755:55:755:59 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:755:55:755:59 | thing | TRef | main.rs:755:25:755:52 | S | +| main.rs:755:66:758:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:757:25:757:29 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:757:25:757:29 | thing | TRef | main.rs:755:25:755:52 | S | +| main.rs:766:18:766:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:766:18:766:22 | SelfParam | TRef | main.rs:760:5:762:5 | MyStruct | +| main.rs:766:41:768:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:766:41:768:9 | { ... } | T | main.rs:760:5:762:5 | MyStruct | +| main.rs:767:18:767:47 | MyStruct {...} | | main.rs:760:5:762:5 | MyStruct | +| main.rs:767:36:767:39 | self | | {EXTERNAL LOCATION} | & | +| main.rs:767:36:767:39 | self | TRef | main.rs:760:5:762:5 | MyStruct | +| main.rs:773:19:776:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:774:13:774:13 | s | | main.rs:760:5:762:5 | MyStruct | +| main.rs:774:17:774:37 | MyStruct {...} | | main.rs:760:5:762:5 | MyStruct | +| main.rs:775:25:775:26 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:775:26:775:26 | s | | main.rs:760:5:762:5 | MyStruct | +| main.rs:791:15:791:18 | SelfParam | | main.rs:790:5:801:5 | Self [trait MyTrait] | +| main.rs:793:15:793:18 | SelfParam | | main.rs:790:5:801:5 | Self [trait MyTrait] | +| main.rs:796:9:798:9 | { ... } | | main.rs:790:19:790:19 | A | +| main.rs:797:13:797:16 | self | | main.rs:790:5:801:5 | Self [trait MyTrait] | +| main.rs:800:18:800:18 | x | | main.rs:790:5:801:5 | Self [trait MyTrait] | +| main.rs:804:15:804:18 | SelfParam | | main.rs:787:5:788:14 | S2 | +| main.rs:804:26:806:9 | { ... } | | main.rs:803:10:803:19 | T | +| main.rs:808:18:808:18 | x | | main.rs:787:5:788:14 | S2 | +| main.rs:808:32:810:9 | { ... } | | main.rs:803:10:803:19 | T | +| main.rs:814:15:814:18 | SelfParam | | main.rs:785:5:786:14 | S1 | +| main.rs:814:28:816:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:818:18:818:18 | x | | main.rs:785:5:786:14 | S1 | +| main.rs:818:34:820:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:825:50:825:50 | x | | main.rs:825:26:825:47 | T2 | +| main.rs:825:63:828:5 | { ... } | | main.rs:825:22:825:23 | T1 | +| main.rs:826:9:826:9 | x | | main.rs:825:26:825:47 | T2 | +| main.rs:827:9:827:9 | x | | main.rs:825:26:825:47 | T2 | +| main.rs:829:52:829:52 | x | | main.rs:829:28:829:49 | T2 | +| main.rs:829:65:833:5 | { ... } | | main.rs:829:24:829:25 | T1 | +| main.rs:830:24:830:24 | x | | main.rs:829:28:829:49 | T2 | +| main.rs:832:16:832:16 | x | | main.rs:829:28:829:49 | T2 | +| main.rs:834:52:834:52 | x | | main.rs:834:28:834:49 | T2 | +| main.rs:834:65:838:5 | { ... } | | main.rs:834:24:834:25 | T1 | +| main.rs:835:29:835:29 | x | | main.rs:834:28:834:49 | T2 | +| main.rs:837:21:837:21 | x | | main.rs:834:28:834:49 | T2 | +| main.rs:839:55:839:55 | x | | main.rs:839:31:839:52 | T2 | +| main.rs:839:68:843:5 | { ... } | | main.rs:839:27:839:28 | T1 | +| main.rs:840:27:840:27 | x | | main.rs:839:31:839:52 | T2 | +| main.rs:842:19:842:19 | x | | main.rs:839:31:839:52 | T2 | +| main.rs:844:55:844:55 | x | | main.rs:844:31:844:52 | T2 | +| main.rs:844:68:848:5 | { ... } | | main.rs:844:27:844:28 | T1 | +| main.rs:845:32:845:32 | x | | main.rs:844:31:844:52 | T2 | +| main.rs:847:24:847:24 | x | | main.rs:844:31:844:52 | T2 | +| main.rs:852:49:852:49 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:852:49:852:49 | x | T | main.rs:852:32:852:46 | T2 | +| main.rs:852:71:854:5 | { ... } | | main.rs:852:28:852:29 | T1 | +| main.rs:853:9:853:9 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:853:9:853:9 | x | T | main.rs:852:32:852:46 | T2 | +| main.rs:855:51:855:51 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:855:51:855:51 | x | T | main.rs:855:34:855:48 | T2 | +| main.rs:855:73:857:5 | { ... } | | main.rs:855:30:855:31 | T1 | +| main.rs:856:16:856:16 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:856:16:856:16 | x | T | main.rs:855:34:855:48 | T2 | +| main.rs:858:51:858:51 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:858:51:858:51 | x | T | main.rs:858:34:858:48 | T2 | +| main.rs:858:73:860:5 | { ... } | | main.rs:858:30:858:31 | T1 | +| main.rs:859:21:859:21 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:859:21:859:21 | x | T | main.rs:858:34:858:48 | T2 | +| main.rs:863:15:863:18 | SelfParam | | main.rs:780:5:783:5 | MyThing | +| main.rs:863:15:863:18 | SelfParam | T | main.rs:862:10:862:10 | T | +| main.rs:863:26:865:9 | { ... } | | main.rs:862:10:862:10 | T | +| main.rs:864:13:864:16 | self | | main.rs:780:5:783:5 | MyThing | +| main.rs:864:13:864:16 | self | T | main.rs:862:10:862:10 | T | +| main.rs:867:18:867:18 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:867:18:867:18 | x | T | main.rs:862:10:862:10 | T | +| main.rs:867:32:869:9 | { ... } | | main.rs:862:10:862:10 | T | +| main.rs:868:13:868:13 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:868:13:868:13 | x | T | main.rs:862:10:862:10 | T | +| main.rs:874:15:874:18 | SelfParam | | main.rs:872:5:875:5 | Self [trait MyTrait2] | +| main.rs:879:15:879:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:879:15:879:19 | SelfParam | TRef | main.rs:877:5:880:5 | Self [trait MyTrait3] | +| main.rs:882:46:882:46 | x | | main.rs:882:22:882:43 | T | +| main.rs:882:52:882:52 | y | | {EXTERNAL LOCATION} | & | +| main.rs:882:52:882:52 | y | TRef | main.rs:882:22:882:43 | T | +| main.rs:882:59:885:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:883:9:883:9 | x | | main.rs:882:22:882:43 | T | +| main.rs:884:9:884:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:884:9:884:9 | y | TRef | main.rs:882:22:882:43 | T | +| main.rs:887:16:945:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:888:13:888:13 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:888:17:888:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:889:13:889:13 | y | | main.rs:780:5:783:5 | MyThing | +| main.rs:889:17:889:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | | main.rs:891:18:891:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:891:18:891:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:891:18:891:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:891:18:891:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:893:13:893:14 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:893:18:895:9 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:894:16:894:32 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:896:13:896:14 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:896:18:898:9 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:897:16:897:32 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:900:37:900:38 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:901:18:901:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:901:18:901:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:901:18:901:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:901:18:901:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:902:39:902:40 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:903:18:903:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:903:18:903:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:903:18:903:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:903:18:903:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:904:39:904:40 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:905:18:905:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:905:18:905:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:905:18:905:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:905:18:905:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:906:37:906:38 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:907:18:907:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:907:18:907:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:907:18:907:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:907:18:907:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:908:39:908:40 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:909:18:909:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:909:18:909:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:909:18:909:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:909:18:909:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:910:39:910:40 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:911:18:911:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:911:18:911:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:911:18:911:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:911:18:911:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:913:13:913:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:930:15:930:18 | SelfParam | | main.rs:918:5:922:5 | MyEnum | -| main.rs:930:15:930:18 | SelfParam | A | main.rs:929:10:929:10 | T | -| main.rs:930:26:935:9 | { ... } | | main.rs:929:10:929:10 | T | -| main.rs:931:19:931:22 | self | | main.rs:918:5:922:5 | MyEnum | -| main.rs:931:19:931:22 | self | A | main.rs:929:10:929:10 | T | -| main.rs:933:17:933:32 | ...::C2 {...} | | main.rs:918:5:922:5 | MyEnum | -| main.rs:938:16:944:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:940:13:940:13 | y | | main.rs:918:5:922:5 | MyEnum | -| main.rs:940:17:940:36 | ...::C2 {...} | | main.rs:918:5:922:5 | MyEnum | +| main.rs:891:18:891:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:891:18:891:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:891:26:891:26 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:892:18:892:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:892:18:892:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:892:18:892:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:892:18:892:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:892:26:892:26 | y | | main.rs:780:5:783:5 | MyThing | +| main.rs:894:13:894:13 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:894:17:894:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:895:13:895:13 | y | | main.rs:780:5:783:5 | MyThing | +| main.rs:895:17:895:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:897:18:897:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:897:18:897:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:897:18:897:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:897:18:897:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:897:26:897:26 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:898:18:898:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:898:18:898:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:898:18:898:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:898:18:898:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:898:26:898:26 | y | | main.rs:780:5:783:5 | MyThing | +| main.rs:900:13:900:14 | x2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:900:18:900:34 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:901:13:901:14 | y2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:901:18:901:34 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:903:31:903:32 | x2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:904:18:904:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:904:18:904:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:904:18:904:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:904:18:904:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:905:33:905:34 | x2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:906:18:906:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:906:18:906:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:906:18:906:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:906:18:906:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:907:33:907:34 | x2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:908:18:908:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:908:18:908:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:908:18:908:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:908:18:908:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:909:31:909:32 | y2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:910:18:910:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:910:18:910:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:910:18:910:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:910:18:910:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:911:33:911:34 | y2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:912:18:912:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:912:18:912:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:912:18:912:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:912:18:912:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:913:33:913:34 | y2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:914:18:914:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:914:18:914:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:914:18:914:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:914:18:914:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:915:36:915:37 | x2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:916:18:916:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:916:18:916:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:916:18:916:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:916:18:916:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:917:36:917:37 | x2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:918:18:918:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:918:18:918:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:918:18:918:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:918:18:918:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:919:36:919:37 | y2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:920:18:920:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:920:18:920:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:920:18:920:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:920:18:920:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:921:36:921:37 | y2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:922:18:922:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:922:18:922:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:922:18:922:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:922:18:922:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:924:13:924:14 | x3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:924:18:926:9 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:925:16:925:32 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:927:13:927:14 | y3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:927:18:929:9 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:928:16:928:32 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:931:37:931:38 | x3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:932:18:932:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:932:18:932:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:932:18:932:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:932:18:932:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:933:39:933:40 | x3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:934:18:934:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:934:18:934:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:934:18:934:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:934:18:934:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:935:39:935:40 | x3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:936:18:936:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:936:18:936:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:936:18:936:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:936:18:936:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:937:37:937:38 | y3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:938:18:938:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:938:18:938:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:938:18:938:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:938:18:938:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:939:39:939:40 | y3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:940:18:940:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:940:18:940:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:940:18:940:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:940:18:940:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:941:39:941:40 | y3 | | main.rs:780:5:783:5 | MyThing | | main.rs:942:18:942:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:942:18:942:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:942:18:942:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:942:18:942:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:943:18:943:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:943:18:943:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:943:18:943:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:943:18:943:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:943:26:943:26 | y | | main.rs:918:5:922:5 | MyEnum | -| main.rs:965:15:965:18 | SelfParam | | main.rs:963:5:966:5 | Self [trait MyTrait1] | -| main.rs:970:15:970:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:970:15:970:19 | SelfParam | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:973:9:979:9 | { ... } | | main.rs:968:20:968:22 | Tr2 | -| main.rs:975:17:975:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:975:17:975:20 | self | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:977:27:977:30 | self | | {EXTERNAL LOCATION} | & | -| main.rs:977:27:977:30 | self | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:984:15:984:18 | SelfParam | | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:987:9:993:9 | { ... } | | main.rs:982:20:982:22 | Tr3 | -| main.rs:989:17:989:20 | self | | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:991:26:991:30 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:991:27:991:30 | self | | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:998:15:998:18 | SelfParam | | main.rs:948:5:951:5 | MyThing | -| main.rs:998:15:998:18 | SelfParam | A | main.rs:996:10:996:10 | T | -| main.rs:998:26:1000:9 | { ... } | | main.rs:996:10:996:10 | T | -| main.rs:999:13:999:16 | self | | main.rs:948:5:951:5 | MyThing | -| main.rs:999:13:999:16 | self | A | main.rs:996:10:996:10 | T | -| main.rs:1007:15:1007:18 | SelfParam | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1007:15:1007:18 | SelfParam | A | main.rs:1005:10:1005:10 | T | -| main.rs:1007:35:1009:9 | { ... } | | main.rs:948:5:951:5 | MyThing | -| main.rs:1007:35:1009:9 | { ... } | A | main.rs:1005:10:1005:10 | T | -| main.rs:1008:13:1008:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1008:26:1008:29 | self | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1008:26:1008:29 | self | A | main.rs:1005:10:1005:10 | T | -| main.rs:1016:44:1016:44 | x | | main.rs:1016:26:1016:41 | T2 | -| main.rs:1016:57:1018:5 | { ... } | | main.rs:1016:22:1016:23 | T1 | -| main.rs:1017:9:1017:9 | x | | main.rs:1016:26:1016:41 | T2 | -| main.rs:1020:56:1020:56 | x | | main.rs:1020:39:1020:53 | T | -| main.rs:1020:62:1024:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1022:17:1022:17 | x | | main.rs:1020:39:1020:53 | T | -| main.rs:1023:18:1023:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1023:18:1023:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1023:18:1023:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1023:18:1023:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1026:16:1050:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1027:13:1027:13 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1027:17:1027:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1028:13:1028:13 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1028:17:1028:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1030:18:1030:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1030:18:1030:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1030:18:1030:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1030:18:1030:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1030:26:1030:26 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1031:18:1031:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1031:18:1031:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1031:18:1031:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1031:18:1031:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1031:26:1031:26 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1033:13:1033:13 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1033:17:1033:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1034:13:1034:13 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1034:17:1034:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1036:18:1036:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1036:18:1036:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1036:18:1036:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1036:18:1036:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1036:26:1036:26 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1037:18:1037:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1037:18:1037:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1037:18:1037:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1037:18:1037:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1037:26:1037:26 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1039:13:1039:13 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1039:17:1039:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1040:13:1040:13 | y | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1040:17:1040:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1042:18:1042:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1042:18:1042:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1042:18:1042:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1042:18:1042:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1042:26:1042:26 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1043:18:1043:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1043:18:1043:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1043:18:1043:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1043:18:1043:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1043:26:1043:26 | y | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1045:13:1045:13 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1045:17:1045:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1046:31:1046:31 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1048:13:1048:13 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1048:17:1048:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1049:31:1049:31 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1066:22:1066:22 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1066:22:1066:22 | x | TRef | main.rs:1066:11:1066:19 | T | -| main.rs:1066:35:1068:5 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1066:35:1068:5 | { ... } | TRef | main.rs:1066:11:1066:19 | T | -| main.rs:1067:9:1067:9 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1067:9:1067:9 | x | TRef | main.rs:1066:11:1066:19 | T | -| main.rs:1071:17:1071:20 | SelfParam | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1071:29:1073:9 | { ... } | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1076:21:1076:21 | x | | main.rs:1076:13:1076:14 | T1 | -| main.rs:1079:5:1081:5 | { ... } | | main.rs:1076:17:1076:18 | T2 | -| main.rs:1080:9:1080:9 | x | | main.rs:1076:13:1076:14 | T1 | -| main.rs:1083:16:1099:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1085:18:1085:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1085:18:1085:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1085:18:1085:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1085:18:1085:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1085:26:1085:31 | id(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1085:29:1085:30 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1088:18:1088:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1088:18:1088:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1088:18:1088:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1088:18:1088:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1088:26:1088:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1088:26:1088:37 | id::<...>(...) | TRef | main.rs:1056:5:1057:14 | S1 | -| main.rs:1088:35:1088:36 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1092:18:1092:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1092:18:1092:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1092:18:1092:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1092:18:1092:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1092:26:1092:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1092:26:1092:44 | id::<...>(...) | TRef | main.rs:1062:5:1062:25 | dyn Trait | -| main.rs:1092:42:1092:43 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1095:9:1095:25 | into::<...>(...) | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1098:13:1098:13 | y | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1112:22:1112:25 | SelfParam | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1112:22:1112:25 | SelfParam | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1112:22:1112:25 | SelfParam | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1112:35:1119:9 | { ... } | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1113:19:1113:22 | self | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1113:19:1113:22 | self | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1113:19:1113:22 | self | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1114:43:1114:82 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1114:50:1114:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | -| main.rs:1114:50:1114:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1114:50:1114:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1114:50:1114:81 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1115:43:1115:81 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1115:50:1115:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | -| main.rs:1115:50:1115:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1115:50:1115:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1115:50:1115:80 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1143:10:1143:10 | t | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1143:10:1143:10 | t | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1143:10:1143:10 | t | Snd | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1143:10:1143:10 | t | Snd.Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1143:10:1143:10 | t | Snd.Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1143:30:1146:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1144:17:1144:17 | t | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1144:17:1144:17 | t | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1144:17:1144:17 | t | Snd | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1144:17:1144:17 | t | Snd.Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1144:17:1144:17 | t | Snd.Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1145:18:1145:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1145:18:1145:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1145:18:1145:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1145:18:1145:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1156:16:1176:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1158:13:1158:14 | p1 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1158:13:1158:14 | p1 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1158:13:1158:14 | p1 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1159:18:1159:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1159:18:1159:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1159:18:1159:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1159:18:1159:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1159:26:1159:27 | p1 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1159:26:1159:27 | p1 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1159:26:1159:27 | p1 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1162:13:1162:14 | p2 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1162:13:1162:14 | p2 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1162:13:1162:14 | p2 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1163:18:1163:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1163:18:1163:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1163:18:1163:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1163:18:1163:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1163:26:1163:27 | p2 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1163:26:1163:27 | p2 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1163:26:1163:27 | p2 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1166:13:1166:14 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1166:13:1166:14 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1167:18:1167:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1167:18:1167:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1167:18:1167:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1167:18:1167:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1167:26:1167:27 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1167:26:1167:27 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1170:13:1170:14 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1170:13:1170:14 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1170:13:1170:14 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1171:18:1171:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1171:18:1171:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1171:18:1171:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1171:18:1171:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1171:26:1171:27 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1171:26:1171:27 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1171:26:1171:27 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1173:9:1173:55 | g(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1175:13:1175:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1175:13:1175:13 | x | E | main.rs:1122:5:1123:14 | S1 | -| main.rs:1175:13:1175:13 | x | T | main.rs:1148:5:1148:34 | S4 | -| main.rs:1175:13:1175:13 | x | T.T41 | main.rs:1125:5:1126:14 | S2 | -| main.rs:1175:13:1175:13 | x | T.T42 | main.rs:1150:5:1150:22 | S5 | -| main.rs:1175:13:1175:13 | x | T.T42.T5 | main.rs:1125:5:1126:14 | S2 | -| main.rs:1188:16:1188:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1188:16:1188:24 | SelfParam | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | -| main.rs:1188:27:1188:31 | value | | main.rs:1186:19:1186:19 | S | -| main.rs:1190:21:1190:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1190:21:1190:29 | SelfParam | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | -| main.rs:1190:32:1190:36 | value | | main.rs:1186:19:1186:19 | S | -| main.rs:1190:42:1192:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1191:13:1191:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1191:13:1191:16 | self | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | -| main.rs:1191:22:1191:26 | value | | main.rs:1186:19:1186:19 | S | -| main.rs:1197:16:1197:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1197:16:1197:24 | SelfParam | TRefMut | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1197:16:1197:24 | SelfParam | TRefMut.T | main.rs:1195:10:1195:10 | T | -| main.rs:1197:27:1197:31 | value | | main.rs:1195:10:1195:10 | T | -| main.rs:1197:37:1197:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1201:26:1203:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1201:26:1203:9 | { ... } | T | main.rs:1200:10:1200:10 | T | -| main.rs:1207:20:1207:23 | SelfParam | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1207:20:1207:23 | SelfParam | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1207:20:1207:23 | SelfParam | T.T | main.rs:1206:10:1206:10 | T | -| main.rs:1207:41:1212:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1207:41:1212:9 | { ... } | T | main.rs:1206:10:1206:10 | T | -| main.rs:1208:19:1208:22 | self | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1208:19:1208:22 | self | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1208:19:1208:22 | self | T.T | main.rs:1206:10:1206:10 | T | -| main.rs:1218:16:1263:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1219:13:1219:14 | x1 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1219:13:1219:14 | x1 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1219:18:1219:37 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1219:18:1219:37 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1220:18:1220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1220:18:1220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1220:18:1220:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1220:18:1220:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1220:26:1220:27 | x1 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1220:26:1220:27 | x1 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1222:17:1222:18 | x2 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1222:22:1222:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1223:9:1223:10 | x2 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1224:18:1224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1224:18:1224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1224:18:1224:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1224:18:1224:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1224:26:1224:27 | x2 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1226:17:1226:18 | x3 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1226:22:1226:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1227:9:1227:10 | x3 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1228:18:1228:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1228:18:1228:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1228:18:1228:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1228:18:1228:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1228:26:1228:27 | x3 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1230:17:1230:18 | x4 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1230:22:1230:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1231:9:1231:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1231:23:1231:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | -| main.rs:1231:28:1231:29 | x4 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1232:18:1232:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1232:18:1232:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1232:18:1232:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1232:18:1232:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1232:26:1232:27 | x4 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1235:18:1235:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1235:18:1235:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1235:18:1235:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1235:18:1235:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1238:18:1238:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1238:18:1238:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1238:18:1238:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1238:18:1238:61 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1238:26:1238:61 | ...::flatten(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1238:26:1238:61 | ...::flatten(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1246:18:1246:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1246:18:1246:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1246:18:1246:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1246:18:1246:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1250:13:1250:16 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1251:13:1251:17 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1253:18:1253:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1253:18:1253:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1253:18:1253:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1253:18:1253:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1256:30:1261:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1257:13:1259:13 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1257:22:1259:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1262:18:1262:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1262:18:1262:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1262:18:1262:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1262:18:1262:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1280:15:1280:18 | SelfParam | | main.rs:1268:5:1269:19 | S | -| main.rs:1280:15:1280:18 | SelfParam | T | main.rs:1279:10:1279:10 | T | -| main.rs:1280:26:1282:9 | { ... } | | main.rs:1279:10:1279:10 | T | -| main.rs:1281:13:1281:16 | self | | main.rs:1268:5:1269:19 | S | -| main.rs:1281:13:1281:16 | self | T | main.rs:1279:10:1279:10 | T | -| main.rs:1284:15:1284:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1284:15:1284:19 | SelfParam | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1284:15:1284:19 | SelfParam | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1284:28:1286:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1284:28:1286:9 | { ... } | TRef | main.rs:1279:10:1279:10 | T | -| main.rs:1285:13:1285:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1285:14:1285:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1285:14:1285:17 | self | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1285:14:1285:17 | self | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1288:15:1288:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1288:15:1288:25 | SelfParam | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1288:15:1288:25 | SelfParam | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1288:34:1290:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1288:34:1290:9 | { ... } | TRef | main.rs:1279:10:1279:10 | T | -| main.rs:1289:13:1289:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1289:14:1289:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1289:14:1289:17 | self | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1289:14:1289:17 | self | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1294:29:1294:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1294:29:1294:33 | SelfParam | TRef | main.rs:1293:5:1296:5 | Self [trait ATrait] | -| main.rs:1295:33:1295:36 | SelfParam | | main.rs:1293:5:1296:5 | Self [trait ATrait] | -| main.rs:1301:29:1301:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1301:29:1301:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1301:29:1301:33 | SelfParam | TRef.TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1301:43:1303:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1302:17:1302:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1302:17:1302:20 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1302:17:1302:20 | self | TRef.TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1306:33:1306:36 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1306:33:1306:36 | SelfParam | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1306:46:1308:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1307:15:1307:18 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1307:15:1307:18 | self | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1311:16:1361:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1313:18:1313:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1313:18:1313:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1313:18:1313:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1313:18:1313:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1317:18:1317:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1317:18:1317:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1317:18:1317:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1317:18:1317:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1318:18:1318:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1318:18:1318:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1318:18:1318:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1318:18:1318:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1322:18:1322:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1322:18:1322:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1322:26:1322:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1322:26:1322:41 | ...::m2(...) | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1322:38:1322:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1323:18:1323:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1323:18:1323:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1323:18:1323:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1323:18:1323:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1323:26:1323:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1323:26:1323:41 | ...::m3(...) | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1323:38:1323:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1325:13:1325:14 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1325:18:1325:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1327:18:1327:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1327:18:1327:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1327:18:1327:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1327:18:1327:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1327:26:1327:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1328:18:1328:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1328:18:1328:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1328:18:1328:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1328:18:1328:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1328:26:1328:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1330:13:1330:14 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1330:18:1330:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1332:18:1332:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1332:18:1332:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1332:18:1332:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1332:18:1332:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1332:26:1332:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1333:18:1333:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1333:18:1333:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1333:18:1333:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1333:18:1333:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1333:26:1333:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1335:13:1335:14 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1335:18:1335:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1338:18:1338:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1338:18:1338:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1338:18:1338:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1338:18:1338:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1338:28:1338:29 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1340:20:1340:22 | &S2 | | {EXTERNAL LOCATION} | & | +| main.rs:942:18:942:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:942:18:942:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:944:13:944:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:961:15:961:18 | SelfParam | | main.rs:949:5:953:5 | MyEnum | +| main.rs:961:15:961:18 | SelfParam | A | main.rs:960:10:960:10 | T | +| main.rs:961:26:966:9 | { ... } | | main.rs:960:10:960:10 | T | +| main.rs:962:19:962:22 | self | | main.rs:949:5:953:5 | MyEnum | +| main.rs:962:19:962:22 | self | A | main.rs:960:10:960:10 | T | +| main.rs:964:17:964:32 | ...::C2 {...} | | main.rs:949:5:953:5 | MyEnum | +| main.rs:969:16:975:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:971:13:971:13 | y | | main.rs:949:5:953:5 | MyEnum | +| main.rs:971:17:971:36 | ...::C2 {...} | | main.rs:949:5:953:5 | MyEnum | +| main.rs:973:18:973:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:973:18:973:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:973:18:973:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:973:18:973:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:974:18:974:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:974:18:974:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:974:18:974:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:974:18:974:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:974:26:974:26 | y | | main.rs:949:5:953:5 | MyEnum | +| main.rs:996:15:996:18 | SelfParam | | main.rs:994:5:997:5 | Self [trait MyTrait1] | +| main.rs:1001:15:1001:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1001:15:1001:19 | SelfParam | TRef | main.rs:999:5:1011:5 | Self [trait MyTrait2] | +| main.rs:1004:9:1010:9 | { ... } | | main.rs:999:20:999:22 | Tr2 | +| main.rs:1006:17:1006:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1006:17:1006:20 | self | TRef | main.rs:999:5:1011:5 | Self [trait MyTrait2] | +| main.rs:1008:27:1008:30 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1008:27:1008:30 | self | TRef | main.rs:999:5:1011:5 | Self [trait MyTrait2] | +| main.rs:1015:15:1015:18 | SelfParam | | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | +| main.rs:1018:9:1024:9 | { ... } | | main.rs:1013:20:1013:22 | Tr3 | +| main.rs:1020:17:1020:20 | self | | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | +| main.rs:1022:26:1022:30 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1022:27:1022:30 | self | | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | +| main.rs:1029:15:1029:18 | SelfParam | | main.rs:979:5:982:5 | MyThing | +| main.rs:1029:15:1029:18 | SelfParam | A | main.rs:1027:10:1027:10 | T | +| main.rs:1029:26:1031:9 | { ... } | | main.rs:1027:10:1027:10 | T | +| main.rs:1030:13:1030:16 | self | | main.rs:979:5:982:5 | MyThing | +| main.rs:1030:13:1030:16 | self | A | main.rs:1027:10:1027:10 | T | +| main.rs:1038:15:1038:18 | SelfParam | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1038:15:1038:18 | SelfParam | A | main.rs:1036:10:1036:10 | T | +| main.rs:1038:35:1040:9 | { ... } | | main.rs:979:5:982:5 | MyThing | +| main.rs:1038:35:1040:9 | { ... } | A | main.rs:1036:10:1036:10 | T | +| main.rs:1039:13:1039:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | +| main.rs:1039:26:1039:29 | self | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1039:26:1039:29 | self | A | main.rs:1036:10:1036:10 | T | +| main.rs:1047:44:1047:44 | x | | main.rs:1047:26:1047:41 | T2 | +| main.rs:1047:57:1049:5 | { ... } | | main.rs:1047:22:1047:23 | T1 | +| main.rs:1048:9:1048:9 | x | | main.rs:1047:26:1047:41 | T2 | +| main.rs:1051:56:1051:56 | x | | main.rs:1051:39:1051:53 | T | +| main.rs:1051:62:1055:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1053:17:1053:17 | x | | main.rs:1051:39:1051:53 | T | +| main.rs:1054:18:1054:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1054:18:1054:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1054:18:1054:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1054:18:1054:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1057:16:1081:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1058:13:1058:13 | x | | main.rs:979:5:982:5 | MyThing | +| main.rs:1058:17:1058:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | +| main.rs:1059:13:1059:13 | y | | main.rs:979:5:982:5 | MyThing | +| main.rs:1059:17:1059:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | +| main.rs:1061:18:1061:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1061:18:1061:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1061:18:1061:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1061:18:1061:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1061:26:1061:26 | x | | main.rs:979:5:982:5 | MyThing | +| main.rs:1062:18:1062:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1062:18:1062:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1062:18:1062:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1062:18:1062:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1062:26:1062:26 | y | | main.rs:979:5:982:5 | MyThing | +| main.rs:1064:13:1064:13 | x | | main.rs:979:5:982:5 | MyThing | +| main.rs:1064:17:1064:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | +| main.rs:1065:13:1065:13 | y | | main.rs:979:5:982:5 | MyThing | +| main.rs:1065:17:1065:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | +| main.rs:1067:18:1067:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1067:18:1067:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1067:18:1067:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1067:18:1067:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1067:26:1067:26 | x | | main.rs:979:5:982:5 | MyThing | +| main.rs:1068:18:1068:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1068:18:1068:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1068:18:1068:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1068:18:1068:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1068:26:1068:26 | y | | main.rs:979:5:982:5 | MyThing | +| main.rs:1070:13:1070:13 | x | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1070:17:1070:34 | MyThing2 {...} | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1071:13:1071:13 | y | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1071:17:1071:34 | MyThing2 {...} | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1073:18:1073:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1073:18:1073:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1073:18:1073:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1073:18:1073:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1073:26:1073:26 | x | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1074:18:1074:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1074:18:1074:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1074:18:1074:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1074:18:1074:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1074:26:1074:26 | y | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1076:13:1076:13 | x | | main.rs:979:5:982:5 | MyThing | +| main.rs:1076:17:1076:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | +| main.rs:1077:31:1077:31 | x | | main.rs:979:5:982:5 | MyThing | +| main.rs:1079:13:1079:13 | x | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1079:17:1079:34 | MyThing2 {...} | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1080:31:1080:31 | x | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1097:22:1097:22 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1097:22:1097:22 | x | TRef | main.rs:1097:11:1097:19 | T | +| main.rs:1097:35:1099:5 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1097:35:1099:5 | { ... } | TRef | main.rs:1097:11:1097:19 | T | +| main.rs:1098:9:1098:9 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1098:9:1098:9 | x | TRef | main.rs:1097:11:1097:19 | T | +| main.rs:1102:17:1102:20 | SelfParam | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1102:29:1104:9 | { ... } | | main.rs:1090:5:1091:14 | S2 | +| main.rs:1107:21:1107:21 | x | | main.rs:1107:13:1107:14 | T1 | +| main.rs:1110:5:1112:5 | { ... } | | main.rs:1107:17:1107:18 | T2 | +| main.rs:1111:9:1111:9 | x | | main.rs:1107:13:1107:14 | T1 | +| main.rs:1114:16:1130:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1116:18:1116:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1116:18:1116:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1116:18:1116:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1116:18:1116:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1116:26:1116:31 | id(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1116:29:1116:30 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1119:18:1119:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1119:18:1119:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1119:18:1119:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1119:18:1119:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1119:26:1119:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1119:26:1119:37 | id::<...>(...) | TRef | main.rs:1087:5:1088:14 | S1 | +| main.rs:1119:35:1119:36 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1123:18:1123:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1123:18:1123:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1123:18:1123:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1123:18:1123:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1123:26:1123:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1123:26:1123:44 | id::<...>(...) | TRef | main.rs:1093:5:1093:25 | dyn Trait | +| main.rs:1123:42:1123:43 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1126:9:1126:25 | into::<...>(...) | | main.rs:1090:5:1091:14 | S2 | +| main.rs:1129:13:1129:13 | y | | main.rs:1090:5:1091:14 | S2 | +| main.rs:1143:22:1143:25 | SelfParam | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1143:22:1143:25 | SelfParam | Fst | main.rs:1142:10:1142:12 | Fst | +| main.rs:1143:22:1143:25 | SelfParam | Snd | main.rs:1142:15:1142:17 | Snd | +| main.rs:1143:35:1150:9 | { ... } | | main.rs:1142:15:1142:17 | Snd | +| main.rs:1144:19:1144:22 | self | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1144:19:1144:22 | self | Fst | main.rs:1142:10:1142:12 | Fst | +| main.rs:1144:19:1144:22 | self | Snd | main.rs:1142:15:1142:17 | Snd | +| main.rs:1145:43:1145:82 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:1145:50:1145:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | +| main.rs:1145:50:1145:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1145:50:1145:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:1145:50:1145:81 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1146:43:1146:81 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:1146:50:1146:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | +| main.rs:1146:50:1146:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1146:50:1146:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:1146:50:1146:80 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1174:10:1174:10 | t | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1174:10:1174:10 | t | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1174:10:1174:10 | t | Snd | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1174:10:1174:10 | t | Snd.Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1174:10:1174:10 | t | Snd.Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1174:30:1177:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1175:17:1175:17 | t | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1175:17:1175:17 | t | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1175:17:1175:17 | t | Snd | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1175:17:1175:17 | t | Snd.Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1175:17:1175:17 | t | Snd.Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1176:18:1176:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1176:18:1176:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1176:18:1176:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1176:18:1176:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1187:16:1207:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1189:13:1189:14 | p1 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1189:13:1189:14 | p1 | Fst | main.rs:1153:5:1154:14 | S1 | +| main.rs:1189:13:1189:14 | p1 | Snd | main.rs:1156:5:1157:14 | S2 | +| main.rs:1190:18:1190:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1190:18:1190:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1190:18:1190:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1190:26:1190:27 | p1 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1190:26:1190:27 | p1 | Fst | main.rs:1153:5:1154:14 | S1 | +| main.rs:1190:26:1190:27 | p1 | Snd | main.rs:1156:5:1157:14 | S2 | +| main.rs:1193:13:1193:14 | p2 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1193:13:1193:14 | p2 | Fst | main.rs:1153:5:1154:14 | S1 | +| main.rs:1193:13:1193:14 | p2 | Snd | main.rs:1156:5:1157:14 | S2 | +| main.rs:1194:18:1194:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1194:18:1194:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1194:18:1194:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1194:18:1194:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1194:26:1194:27 | p2 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1194:26:1194:27 | p2 | Fst | main.rs:1153:5:1154:14 | S1 | +| main.rs:1194:26:1194:27 | p2 | Snd | main.rs:1156:5:1157:14 | S2 | +| main.rs:1197:13:1197:14 | p3 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1197:13:1197:14 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1198:18:1198:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1198:18:1198:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1198:18:1198:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1198:18:1198:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1198:26:1198:27 | p3 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1198:26:1198:27 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1201:13:1201:14 | p3 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1201:13:1201:14 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1201:13:1201:14 | p3 | Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1202:18:1202:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1202:18:1202:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1202:18:1202:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1202:18:1202:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1202:26:1202:27 | p3 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1202:26:1202:27 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1202:26:1202:27 | p3 | Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1204:9:1204:55 | g(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1206:13:1206:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1206:13:1206:13 | x | E | main.rs:1153:5:1154:14 | S1 | +| main.rs:1206:13:1206:13 | x | T | main.rs:1179:5:1179:34 | S4 | +| main.rs:1206:13:1206:13 | x | T.T41 | main.rs:1156:5:1157:14 | S2 | +| main.rs:1206:13:1206:13 | x | T.T42 | main.rs:1181:5:1181:22 | S5 | +| main.rs:1206:13:1206:13 | x | T.T42.T5 | main.rs:1156:5:1157:14 | S2 | +| main.rs:1219:16:1219:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1219:16:1219:24 | SelfParam | TRefMut | main.rs:1217:5:1224:5 | Self [trait MyTrait] | +| main.rs:1219:27:1219:31 | value | | main.rs:1217:19:1217:19 | S | +| main.rs:1221:21:1221:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1221:21:1221:29 | SelfParam | TRefMut | main.rs:1217:5:1224:5 | Self [trait MyTrait] | +| main.rs:1221:32:1221:36 | value | | main.rs:1217:19:1217:19 | S | +| main.rs:1221:42:1223:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1222:13:1222:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1222:13:1222:16 | self | TRefMut | main.rs:1217:5:1224:5 | Self [trait MyTrait] | +| main.rs:1222:22:1222:26 | value | | main.rs:1217:19:1217:19 | S | +| main.rs:1228:16:1228:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1228:16:1228:24 | SelfParam | TRefMut | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1228:16:1228:24 | SelfParam | TRefMut.T | main.rs:1226:10:1226:10 | T | +| main.rs:1228:27:1228:31 | value | | main.rs:1226:10:1226:10 | T | +| main.rs:1228:37:1228:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1232:26:1234:9 | { ... } | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1232:26:1234:9 | { ... } | T | main.rs:1231:10:1231:10 | T | +| main.rs:1238:20:1238:23 | SelfParam | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1238:20:1238:23 | SelfParam | T | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1238:20:1238:23 | SelfParam | T.T | main.rs:1237:10:1237:10 | T | +| main.rs:1238:41:1243:9 | { ... } | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1238:41:1243:9 | { ... } | T | main.rs:1237:10:1237:10 | T | +| main.rs:1239:19:1239:22 | self | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1239:19:1239:22 | self | T | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1239:19:1239:22 | self | T.T | main.rs:1237:10:1237:10 | T | +| main.rs:1249:16:1294:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1250:13:1250:14 | x1 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1250:13:1250:14 | x1 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1250:18:1250:37 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1250:18:1250:37 | ...::new(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1251:18:1251:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1251:18:1251:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1251:18:1251:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1251:18:1251:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1251:26:1251:27 | x1 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1251:26:1251:27 | x1 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1253:17:1253:18 | x2 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1253:22:1253:36 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1254:9:1254:10 | x2 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1255:18:1255:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1255:18:1255:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1255:18:1255:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1255:18:1255:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1255:26:1255:27 | x2 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1257:17:1257:18 | x3 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1257:22:1257:36 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1258:9:1258:10 | x3 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1259:18:1259:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1259:18:1259:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1259:18:1259:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1259:18:1259:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1259:26:1259:27 | x3 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1261:17:1261:18 | x4 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1261:22:1261:36 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1262:9:1262:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1262:23:1262:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | +| main.rs:1262:28:1262:29 | x4 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1263:18:1263:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1263:18:1263:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1263:18:1263:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1263:18:1263:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1263:26:1263:27 | x4 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1266:18:1266:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1266:18:1266:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1266:18:1266:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1266:18:1266:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1269:18:1269:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1269:18:1269:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1269:18:1269:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1269:18:1269:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1269:26:1269:61 | ...::flatten(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1269:26:1269:61 | ...::flatten(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1277:18:1277:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1277:18:1277:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1277:18:1277:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1277:18:1277:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1281:13:1281:16 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1282:13:1282:17 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1284:18:1284:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1284:18:1284:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1284:18:1284:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1284:18:1284:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1287:30:1292:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1288:13:1290:13 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1288:22:1290:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1293:18:1293:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1293:18:1293:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1293:18:1293:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1293:18:1293:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1311:15:1311:18 | SelfParam | | main.rs:1299:5:1300:19 | S | +| main.rs:1311:15:1311:18 | SelfParam | T | main.rs:1310:10:1310:10 | T | +| main.rs:1311:26:1313:9 | { ... } | | main.rs:1310:10:1310:10 | T | +| main.rs:1312:13:1312:16 | self | | main.rs:1299:5:1300:19 | S | +| main.rs:1312:13:1312:16 | self | T | main.rs:1310:10:1310:10 | T | +| main.rs:1315:15:1315:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1315:15:1315:19 | SelfParam | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1315:15:1315:19 | SelfParam | TRef.T | main.rs:1310:10:1310:10 | T | +| main.rs:1315:28:1317:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1315:28:1317:9 | { ... } | TRef | main.rs:1310:10:1310:10 | T | +| main.rs:1316:13:1316:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1316:14:1316:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1316:14:1316:17 | self | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1316:14:1316:17 | self | TRef.T | main.rs:1310:10:1310:10 | T | +| main.rs:1319:15:1319:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1319:15:1319:25 | SelfParam | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1319:15:1319:25 | SelfParam | TRef.T | main.rs:1310:10:1310:10 | T | +| main.rs:1319:34:1321:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1319:34:1321:9 | { ... } | TRef | main.rs:1310:10:1310:10 | T | +| main.rs:1320:13:1320:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1320:14:1320:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1320:14:1320:17 | self | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1320:14:1320:17 | self | TRef.T | main.rs:1310:10:1310:10 | T | +| main.rs:1325:29:1325:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1325:29:1325:33 | SelfParam | TRef | main.rs:1324:5:1327:5 | Self [trait ATrait] | +| main.rs:1326:33:1326:36 | SelfParam | | main.rs:1324:5:1327:5 | Self [trait ATrait] | +| main.rs:1332:29:1332:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1332:29:1332:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1332:29:1332:33 | SelfParam | TRef.TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1332:43:1334:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1333:17:1333:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1333:17:1333:20 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1333:17:1333:20 | self | TRef.TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1337:33:1337:36 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1337:33:1337:36 | SelfParam | TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1337:46:1339:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1338:15:1338:18 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1338:15:1338:18 | self | TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1342:16:1392:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1344:18:1344:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1344:18:1344:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1344:18:1344:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1346:13:1346:14 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1346:26:1346:32 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1346:26:1346:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1350:17:1350:18 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1352:13:1352:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1352:24:1352:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1352:25:1352:39 | MyInt {...} | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1354:17:1354:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1355:18:1355:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1355:18:1355:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1355:18:1355:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1355:18:1355:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1358:13:1358:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1358:24:1358:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1358:25:1358:39 | MyInt {...} | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1359:17:1359:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1360:18:1360:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1360:18:1360:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1360:18:1360:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1360:18:1360:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1367:16:1367:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1367:16:1367:20 | SelfParam | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1370:16:1370:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1370:16:1370:20 | SelfParam | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1370:32:1372:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1370:32:1372:9 | { ... } | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1371:13:1371:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1371:13:1371:16 | self | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1379:16:1379:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1379:16:1379:20 | SelfParam | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1379:36:1381:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1379:36:1381:9 | { ... } | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1380:13:1380:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1380:13:1380:16 | self | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1384:16:1387:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1396:16:1396:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1396:16:1396:20 | SelfParam | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1396:16:1396:20 | SelfParam | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1396:32:1398:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1396:32:1398:9 | { ... } | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1396:32:1398:9 | { ... } | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1397:13:1397:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1397:13:1397:16 | self | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1397:13:1397:16 | self | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1400:16:1400:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1400:16:1400:20 | SelfParam | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1400:16:1400:20 | SelfParam | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1400:23:1400:23 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1400:23:1400:23 | x | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1400:23:1400:23 | x | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1400:42:1402:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1400:42:1402:9 | { ... } | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1400:42:1402:9 | { ... } | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1401:13:1401:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1401:13:1401:16 | self | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1401:13:1401:16 | self | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1405:16:1411:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1410:15:1410:17 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1410:16:1410:17 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1421:17:1421:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1421:17:1421:25 | SelfParam | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1421:28:1423:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1422:13:1422:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1422:13:1422:16 | self | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1422:26:1422:29 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1422:26:1422:29 | self | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1429:15:1429:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1429:15:1429:19 | SelfParam | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1429:31:1431:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1429:31:1431:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1430:13:1430:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1430:14:1430:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1430:15:1430:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1430:16:1430:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1430:16:1430:19 | self | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1433:15:1433:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1433:15:1433:25 | SelfParam | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1433:37:1435:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1433:37:1435:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1434:13:1434:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1434:14:1434:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1434:15:1434:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1434:16:1434:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1434:16:1434:19 | self | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1437:15:1437:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1437:15:1437:15 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1437:34:1439:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1437:34:1439:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1438:13:1438:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1438:13:1438:13 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1441:15:1441:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1441:15:1441:15 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1441:34:1443:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1441:34:1443:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1442:13:1442:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1442:14:1442:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1442:15:1442:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1442:16:1442:16 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1442:16:1442:16 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1446:16:1459:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1447:13:1447:13 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1447:17:1447:20 | S {...} | | main.rs:1426:5:1426:13 | S | -| main.rs:1448:9:1448:9 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1449:9:1449:9 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1450:9:1450:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1450:9:1450:17 | ...::f3(...) | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1450:15:1450:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1450:16:1450:16 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1452:19:1452:24 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1452:20:1452:24 | &true | | {EXTERNAL LOCATION} | & | -| main.rs:1452:21:1452:24 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1457:9:1457:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1457:22:1457:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | -| main.rs:1458:18:1458:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1458:18:1458:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1458:18:1458:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1458:18:1458:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1473:43:1476:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1473:43:1476:5 | { ... } | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1473:43:1476:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1480:46:1484:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1480:46:1484:5 | { ... } | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1480:46:1484:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1488:40:1493:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1488:40:1493:5 | { ... } | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1488:40:1493:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1497:30:1497:34 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1497:30:1497:34 | input | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1497:30:1497:34 | input | T | main.rs:1497:20:1497:27 | T | -| main.rs:1497:69:1504:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1497:69:1504:5 | { ... } | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1497:69:1504:5 | { ... } | T | main.rs:1497:20:1497:27 | T | -| main.rs:1498:21:1498:25 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1498:21:1498:25 | input | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1498:21:1498:25 | input | T | main.rs:1497:20:1497:27 | T | -| main.rs:1500:22:1500:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1500:22:1500:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1500:22:1500:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1500:22:1500:30 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1507:16:1523:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1508:9:1510:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1508:37:1508:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1508:37:1508:52 | try_same_error(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:37:1508:52 | try_same_error(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:54:1510:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1509:22:1509:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1509:22:1509:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1509:22:1509:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1509:22:1509:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1512:9:1514:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1512:37:1512:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1512:37:1512:55 | try_convert_error(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1512:37:1512:55 | try_convert_error(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1512:57:1514:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1513:22:1513:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1513:22:1513:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1513:22:1513:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1513:22:1513:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1516:9:1518:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1516:37:1516:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1516:37:1516:49 | try_chained(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1516:37:1516:49 | try_chained(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1516:51:1518:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1517:22:1517:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1517:22:1517:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1517:22:1517:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1517:22:1517:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1520:9:1522:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1520:37:1520:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1520:37:1520:63 | try_complex(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:65:1522:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1521:22:1521:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1521:22:1521:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1521:22:1521:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1521:22:1521:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1527:16:1618:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1528:13:1528:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1530:17:1530:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1531:17:1531:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1532:13:1532:13 | c | | {EXTERNAL LOCATION} | char | -| main.rs:1532:17:1532:19 | 'c' | | {EXTERNAL LOCATION} | char | -| main.rs:1533:13:1533:17 | hello | | {EXTERNAL LOCATION} | & | -| main.rs:1533:13:1533:17 | hello | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1533:21:1533:27 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1533:21:1533:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1534:13:1534:13 | f | | {EXTERNAL LOCATION} | f64 | -| main.rs:1534:17:1534:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | -| main.rs:1535:13:1535:13 | t | | {EXTERNAL LOCATION} | bool | -| main.rs:1535:17:1535:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1536:13:1536:13 | f | | {EXTERNAL LOCATION} | bool | -| main.rs:1536:17:1536:21 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1539:26:1539:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1539:26:1539:30 | SelfParam | TRef | main.rs:1538:9:1542:9 | Self [trait MyTrait] | -| main.rs:1545:26:1545:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1545:26:1545:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1545:26:1545:30 | SelfParam | TRef.TArray | main.rs:1544:14:1544:23 | T | -| main.rs:1545:39:1547:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1545:39:1547:13 | { ... } | TRef | main.rs:1544:14:1544:23 | T | -| main.rs:1546:17:1546:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1546:17:1546:20 | self | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1546:17:1546:20 | self | TRef.TArray | main.rs:1544:14:1544:23 | T | -| main.rs:1549:31:1551:13 | { ... } | | main.rs:1544:14:1544:23 | T | -| main.rs:1554:17:1554:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1555:13:1555:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1555:17:1555:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1555:37:1555:46 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1555:38:1555:46 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1556:13:1556:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1556:17:1556:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1559:26:1559:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1559:26:1559:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1559:26:1559:30 | SelfParam | TRef.TSlice | main.rs:1558:14:1558:23 | T | -| main.rs:1559:39:1561:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1559:39:1561:13 | { ... } | TRef | main.rs:1558:14:1558:23 | T | -| main.rs:1560:17:1560:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1560:17:1560:20 | self | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1560:17:1560:20 | self | TRef.TSlice | main.rs:1558:14:1558:23 | T | -| main.rs:1563:31:1565:13 | { ... } | | main.rs:1558:14:1558:23 | T | -| main.rs:1568:13:1568:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1568:13:1568:13 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1568:13:1568:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:25:1568:34 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1568:26:1568:34 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1569:17:1569:17 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1569:17:1569:17 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1569:17:1569:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1570:13:1570:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1570:17:1570:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1570:34:1570:34 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1570:34:1570:34 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1570:34:1570:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1571:13:1571:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1571:17:1571:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:26:1574:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1574:26:1574:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1574:26:1574:30 | SelfParam | TRef.T0 | main.rs:1573:14:1573:23 | T | -| main.rs:1574:26:1574:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:39:1576:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1574:39:1576:13 | { ... } | TRef | main.rs:1573:14:1573:23 | T | -| main.rs:1575:17:1575:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1575:18:1575:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1575:18:1575:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1575:18:1575:21 | self | TRef.T0 | main.rs:1573:14:1573:23 | T | -| main.rs:1575:18:1575:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1578:31:1580:13 | { ... } | | main.rs:1573:14:1573:23 | T | -| main.rs:1583:13:1583:13 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1583:17:1583:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1584:17:1584:17 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1585:13:1585:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1585:17:1585:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1585:37:1585:38 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1585:38:1585:38 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1586:13:1586:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:17:1586:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1589:26:1589:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1589:26:1589:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1589:26:1589:30 | SelfParam | TRef.TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1589:39:1591:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1589:39:1591:13 | { ... } | TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1590:18:1590:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1590:18:1590:21 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1590:18:1590:21 | self | TRef.TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1593:31:1595:13 | { ... } | | main.rs:1588:14:1588:23 | T | -| main.rs:1598:13:1598:13 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1598:17:1598:19 | &42 | | {EXTERNAL LOCATION} | & | -| main.rs:1599:17:1599:17 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1600:13:1600:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1600:17:1600:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1600:33:1600:34 | &r | | {EXTERNAL LOCATION} | & | -| main.rs:1600:34:1600:34 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1601:13:1601:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1601:17:1601:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1604:26:1604:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1604:26:1604:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1604:26:1604:30 | SelfParam | TRef.TPtrMut | main.rs:1603:14:1603:23 | T | -| main.rs:1604:39:1606:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1604:39:1606:13 | { ... } | TRef | main.rs:1603:14:1603:23 | T | -| main.rs:1605:26:1605:32 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1605:29:1605:32 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1605:29:1605:32 | self | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1605:29:1605:32 | self | TRef.TPtrMut | main.rs:1603:14:1603:23 | T | -| main.rs:1608:31:1610:13 | { ... } | | main.rs:1603:14:1603:23 | T | -| main.rs:1614:13:1614:13 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1614:13:1614:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:27:1614:32 | &mut v | | {EXTERNAL LOCATION} | &mut | -| main.rs:1615:26:1615:26 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1615:26:1615:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:26:1616:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1616:46:1616:47 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1616:47:1616:47 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1616:47:1616:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1344:18:1344:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1344:18:1344:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1348:18:1348:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1348:18:1348:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1348:18:1348:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1348:18:1348:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1349:18:1349:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1349:18:1349:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1349:18:1349:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1349:18:1349:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1353:18:1353:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1353:18:1353:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1353:18:1353:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1353:18:1353:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1353:26:1353:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1353:26:1353:41 | ...::m2(...) | TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1353:38:1353:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1354:18:1354:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1354:18:1354:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1354:18:1354:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1354:18:1354:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1354:26:1354:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1354:26:1354:41 | ...::m3(...) | TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1354:38:1354:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1356:13:1356:14 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1356:18:1356:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1358:18:1358:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1358:18:1358:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1358:18:1358:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1358:18:1358:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1358:26:1358:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1359:18:1359:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1359:18:1359:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1359:18:1359:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1359:18:1359:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1359:26:1359:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1361:13:1361:14 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1361:18:1361:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1363:18:1363:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1363:18:1363:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1363:18:1363:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1363:18:1363:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1363:26:1363:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1364:18:1364:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1364:18:1364:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1364:18:1364:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1364:18:1364:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1364:26:1364:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1366:13:1366:14 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1366:18:1366:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1369:18:1369:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1369:18:1369:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1369:18:1369:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1369:18:1369:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1369:28:1369:29 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1371:20:1371:22 | &S2 | | {EXTERNAL LOCATION} | & | +| main.rs:1375:18:1375:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1375:18:1375:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1375:18:1375:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1375:18:1375:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1377:13:1377:14 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1377:26:1377:32 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1377:26:1377:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1381:17:1381:18 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1383:13:1383:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1383:24:1383:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1383:25:1383:39 | MyInt {...} | | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1385:17:1385:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1386:18:1386:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1386:18:1386:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1386:18:1386:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1386:18:1386:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1389:13:1389:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1389:24:1389:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1389:25:1389:39 | MyInt {...} | | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1390:17:1390:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1391:18:1391:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1391:18:1391:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1391:18:1391:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1391:18:1391:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1398:16:1398:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1398:16:1398:20 | SelfParam | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | +| main.rs:1401:16:1401:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1401:16:1401:20 | SelfParam | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | +| main.rs:1401:32:1403:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1401:32:1403:9 | { ... } | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | +| main.rs:1402:13:1402:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1402:13:1402:16 | self | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | +| main.rs:1410:16:1410:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1410:16:1410:20 | SelfParam | TRef | main.rs:1406:5:1406:20 | MyStruct | +| main.rs:1410:36:1412:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1410:36:1412:9 | { ... } | TRef | main.rs:1406:5:1406:20 | MyStruct | +| main.rs:1411:13:1411:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1411:13:1411:16 | self | TRef | main.rs:1406:5:1406:20 | MyStruct | +| main.rs:1415:16:1418:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1427:16:1427:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1427:16:1427:20 | SelfParam | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1427:16:1427:20 | SelfParam | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1427:32:1429:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1427:32:1429:9 | { ... } | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1427:32:1429:9 | { ... } | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1428:13:1428:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1428:13:1428:16 | self | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1428:13:1428:16 | self | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1431:16:1431:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1431:16:1431:20 | SelfParam | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1431:16:1431:20 | SelfParam | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1431:23:1431:23 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1431:23:1431:23 | x | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1431:23:1431:23 | x | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1431:42:1433:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1431:42:1433:9 | { ... } | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1431:42:1433:9 | { ... } | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1432:13:1432:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1432:13:1432:16 | self | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1432:13:1432:16 | self | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1436:16:1442:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1441:15:1441:17 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1441:16:1441:17 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1452:17:1452:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1452:17:1452:25 | SelfParam | TRefMut | main.rs:1446:5:1449:5 | MyFlag | +| main.rs:1452:28:1454:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1453:13:1453:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1453:13:1453:16 | self | TRefMut | main.rs:1446:5:1449:5 | MyFlag | +| main.rs:1453:26:1453:29 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1453:26:1453:29 | self | TRefMut | main.rs:1446:5:1449:5 | MyFlag | +| main.rs:1460:15:1460:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1460:15:1460:19 | SelfParam | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1460:31:1462:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1460:31:1462:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1461:13:1461:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1461:14:1461:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1461:15:1461:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1461:16:1461:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1461:16:1461:19 | self | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1464:15:1464:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1464:15:1464:25 | SelfParam | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1464:37:1466:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1464:37:1466:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1465:13:1465:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1465:14:1465:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1465:15:1465:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1465:16:1465:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1465:16:1465:19 | self | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1468:15:1468:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1468:15:1468:15 | x | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1468:34:1470:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1468:34:1470:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1469:13:1469:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1469:13:1469:13 | x | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1472:15:1472:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1472:15:1472:15 | x | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1472:34:1474:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1472:34:1474:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1473:13:1473:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1473:14:1473:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1473:15:1473:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1473:16:1473:16 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1473:16:1473:16 | x | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1477:16:1490:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1478:13:1478:13 | x | | main.rs:1457:5:1457:13 | S | +| main.rs:1478:17:1478:20 | S {...} | | main.rs:1457:5:1457:13 | S | +| main.rs:1479:9:1479:9 | x | | main.rs:1457:5:1457:13 | S | +| main.rs:1480:9:1480:9 | x | | main.rs:1457:5:1457:13 | S | +| main.rs:1481:9:1481:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1481:9:1481:17 | ...::f3(...) | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1481:15:1481:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1481:16:1481:16 | x | | main.rs:1457:5:1457:13 | S | +| main.rs:1483:19:1483:24 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1483:20:1483:24 | &true | | {EXTERNAL LOCATION} | & | +| main.rs:1483:21:1483:24 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1488:9:1488:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1488:22:1488:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | +| main.rs:1489:18:1489:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1489:18:1489:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1489:18:1489:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1489:18:1489:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1504:43:1507:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1504:43:1507:5 | { ... } | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1504:43:1507:5 | { ... } | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1511:46:1515:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1511:46:1515:5 | { ... } | E | main.rs:1499:5:1500:14 | S2 | +| main.rs:1511:46:1515:5 | { ... } | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1519:40:1524:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1519:40:1524:5 | { ... } | E | main.rs:1499:5:1500:14 | S2 | +| main.rs:1519:40:1524:5 | { ... } | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1528:30:1528:34 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1528:30:1528:34 | input | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1528:30:1528:34 | input | T | main.rs:1528:20:1528:27 | T | +| main.rs:1528:69:1535:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1528:69:1535:5 | { ... } | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1528:69:1535:5 | { ... } | T | main.rs:1528:20:1528:27 | T | +| main.rs:1529:21:1529:25 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1529:21:1529:25 | input | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1529:21:1529:25 | input | T | main.rs:1528:20:1528:27 | T | +| main.rs:1531:22:1531:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1531:22:1531:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1531:22:1531:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1531:22:1531:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1538:16:1554:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1539:9:1541:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1539:37:1539:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1539:37:1539:52 | try_same_error(...) | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1539:37:1539:52 | try_same_error(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1539:54:1541:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1540:22:1540:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1540:22:1540:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1540:22:1540:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1540:22:1540:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1543:9:1545:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1543:37:1543:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1543:37:1543:55 | try_convert_error(...) | E | main.rs:1499:5:1500:14 | S2 | +| main.rs:1543:37:1543:55 | try_convert_error(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1543:57:1545:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1544:22:1544:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1544:22:1544:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1544:22:1544:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1544:22:1544:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1547:9:1549:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1547:37:1547:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1547:37:1547:49 | try_chained(...) | E | main.rs:1499:5:1500:14 | S2 | +| main.rs:1547:37:1547:49 | try_chained(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1547:51:1549:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1548:22:1548:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1548:22:1548:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1548:22:1548:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1548:22:1548:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1551:9:1553:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1551:37:1551:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1551:37:1551:63 | try_complex(...) | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1551:65:1553:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1552:22:1552:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1552:22:1552:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1552:22:1552:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1552:22:1552:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1558:16:1649:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1559:13:1559:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1561:17:1561:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1562:17:1562:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1563:13:1563:13 | c | | {EXTERNAL LOCATION} | char | +| main.rs:1563:17:1563:19 | 'c' | | {EXTERNAL LOCATION} | char | +| main.rs:1564:13:1564:17 | hello | | {EXTERNAL LOCATION} | & | +| main.rs:1564:13:1564:17 | hello | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1564:21:1564:27 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1564:21:1564:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1565:13:1565:13 | f | | {EXTERNAL LOCATION} | f64 | +| main.rs:1565:17:1565:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | +| main.rs:1566:13:1566:13 | t | | {EXTERNAL LOCATION} | bool | +| main.rs:1566:17:1566:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1567:13:1567:13 | f | | {EXTERNAL LOCATION} | bool | +| main.rs:1567:17:1567:21 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1570:26:1570:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1570:26:1570:30 | SelfParam | TRef | main.rs:1569:9:1573:9 | Self [trait MyTrait] | +| main.rs:1576:26:1576:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1576:26:1576:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1576:26:1576:30 | SelfParam | TRef.TArray | main.rs:1575:14:1575:23 | T | +| main.rs:1576:39:1578:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1576:39:1578:13 | { ... } | TRef | main.rs:1575:14:1575:23 | T | +| main.rs:1577:17:1577:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1577:17:1577:20 | self | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1577:17:1577:20 | self | TRef.TArray | main.rs:1575:14:1575:23 | T | +| main.rs:1580:31:1582:13 | { ... } | | main.rs:1575:14:1575:23 | T | +| main.rs:1585:17:1585:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1586:13:1586:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1586:17:1586:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1586:37:1586:46 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1586:38:1586:46 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1587:13:1587:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1587:17:1587:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1590:26:1590:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1590:26:1590:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1590:26:1590:30 | SelfParam | TRef.TSlice | main.rs:1589:14:1589:23 | T | +| main.rs:1590:39:1592:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1590:39:1592:13 | { ... } | TRef | main.rs:1589:14:1589:23 | T | +| main.rs:1591:17:1591:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1591:17:1591:20 | self | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1591:17:1591:20 | self | TRef.TSlice | main.rs:1589:14:1589:23 | T | +| main.rs:1594:31:1596:13 | { ... } | | main.rs:1589:14:1589:23 | T | +| main.rs:1599:13:1599:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1599:13:1599:13 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1599:13:1599:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1599:25:1599:34 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1599:26:1599:34 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1600:17:1600:17 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1600:17:1600:17 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1600:17:1600:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1601:13:1601:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1601:17:1601:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1601:34:1601:34 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1601:34:1601:34 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1601:34:1601:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1602:13:1602:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1602:17:1602:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1605:26:1605:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1605:26:1605:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1605:26:1605:30 | SelfParam | TRef.T0 | main.rs:1604:14:1604:23 | T | +| main.rs:1605:26:1605:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1605:39:1607:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1605:39:1607:13 | { ... } | TRef | main.rs:1604:14:1604:23 | T | +| main.rs:1606:17:1606:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1606:18:1606:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1606:18:1606:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1606:18:1606:21 | self | TRef.T0 | main.rs:1604:14:1604:23 | T | +| main.rs:1606:18:1606:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1609:31:1611:13 | { ... } | | main.rs:1604:14:1604:23 | T | +| main.rs:1614:13:1614:13 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1614:17:1614:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1615:17:1615:17 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1616:13:1616:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1616:17:1616:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1616:37:1616:38 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1616:38:1616:38 | p | | {EXTERNAL LOCATION} | (T_2) | | main.rs:1617:13:1617:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1617:17:1617:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1623:16:1635:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1624:13:1624:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:1624:17:1624:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1624:17:1624:29 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1624:25:1624:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:13:1625:13 | y | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:17:1625:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:17:1625:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:25:1625:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1629:17:1631:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1631:16:1633:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1648:30:1650:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1649:13:1649:31 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1656:16:1656:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1656:22:1656:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1656:41:1661:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1657:13:1660:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1658:20:1658:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1658:29:1658:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1659:20:1659:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1659:29:1659:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1666:23:1666:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1666:23:1666:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1666:34:1666:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1666:45:1669:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1667:13:1667:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1667:13:1667:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1667:23:1667:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1668:13:1668:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1668:13:1668:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1668:23:1668:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1674:16:1674:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1674:22:1674:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1674:41:1679:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1675:13:1678:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1676:20:1676:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1676:29:1676:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1677:20:1677:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1677:29:1677:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1684:23:1684:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1684:23:1684:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1684:34:1684:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1684:45:1687:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1685:13:1685:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1685:13:1685:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1685:23:1685:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1686:13:1686:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1686:13:1686:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1686:23:1686:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1692:16:1692:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1692:22:1692:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1692:41:1697:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1693:13:1696:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1694:20:1694:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1694:29:1694:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1695:20:1695:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1695:29:1695:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1701:23:1701:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1701:23:1701:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1701:34:1701:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1701:45:1704:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1702:13:1702:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1702:13:1702:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1702:23:1702:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1703:13:1703:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1703:13:1703:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1703:23:1703:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1709:16:1709:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1709:22:1709:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1709:41:1714:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1710:13:1713:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1711:20:1711:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1711:29:1711:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1712:20:1712:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1712:29:1712:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1718:23:1718:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1718:23:1718:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1718:34:1718:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1718:45:1721:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1719:13:1719:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1719:13:1719:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1719:23:1719:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1720:13:1720:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1720:13:1720:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1720:23:1720:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1726:16:1726:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1726:22:1726:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1726:41:1731:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1727:13:1730:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1728:20:1728:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1728:29:1728:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1729:20:1729:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1729:29:1729:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1735:23:1735:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1735:23:1735:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1735:34:1735:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1735:45:1738:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1736:13:1736:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1736:13:1736:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1736:23:1736:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1737:13:1737:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1737:13:1737:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1737:23:1737:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1743:19:1743:22 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1743:25:1743:27 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1743:44:1748:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1744:13:1747:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1745:20:1745:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1745:29:1745:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1746:20:1746:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1746:29:1746:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1752:26:1752:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1752:26:1752:34 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1752:37:1752:39 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1752:48:1755:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1753:13:1753:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1753:13:1753:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1753:23:1753:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1754:13:1754:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1754:13:1754:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1754:23:1754:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1760:18:1760:21 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1760:24:1760:26 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1760:43:1765:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1761:13:1764:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1762:20:1762:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1762:29:1762:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1763:20:1763:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1763:29:1763:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1769:25:1769:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1769:25:1769:33 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1769:36:1769:38 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1769:47:1772:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1770:13:1770:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1770:13:1770:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1770:23:1770:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1771:13:1771:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1771:13:1771:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1771:23:1771:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1777:19:1777:22 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1777:25:1777:27 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1777:44:1782:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1778:13:1781:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1779:20:1779:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1779:29:1779:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1780:20:1780:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1780:29:1780:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1786:26:1786:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1786:26:1786:34 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1786:37:1786:39 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1786:48:1789:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1787:13:1787:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1787:13:1787:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1787:23:1787:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1788:13:1788:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1788:13:1788:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1788:23:1788:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1794:16:1794:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1794:22:1794:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1794:40:1799:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1795:13:1798:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1796:20:1796:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1796:30:1796:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1797:20:1797:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1797:30:1797:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1803:23:1803:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1803:23:1803:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1803:34:1803:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1803:44:1806:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1804:13:1804:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1804:13:1804:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1804:24:1804:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1805:13:1805:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1805:13:1805:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1805:24:1805:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1811:16:1811:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1811:22:1811:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1811:40:1816:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1812:13:1815:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1813:20:1813:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1813:30:1813:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1814:20:1814:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1814:30:1814:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1820:23:1820:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1820:23:1820:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1820:34:1820:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1820:44:1823:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1821:13:1821:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1821:13:1821:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1821:24:1821:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1822:13:1822:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1822:13:1822:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1822:24:1822:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1828:16:1828:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1828:30:1833:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1829:13:1832:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1830:21:1830:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1831:21:1831:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1838:16:1838:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1838:30:1843:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1839:13:1842:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1840:21:1840:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1841:21:1841:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1847:15:1847:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1847:15:1847:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1847:22:1847:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1847:22:1847:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1847:44:1849:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:13:1848:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1848:13:1848:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:13:1848:29 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:13:1848:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:23:1848:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1848:23:1848:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:34:1848:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1848:34:1848:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:34:1848:50 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:44:1848:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1848:44:1848:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1851:15:1851:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1851:15:1851:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1851:22:1851:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1851:22:1851:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1851:44:1853:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:13:1852:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1852:13:1852:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:13:1852:29 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:13:1852:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:23:1852:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1852:23:1852:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:34:1852:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1852:34:1852:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:34:1852:50 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:44:1852:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1852:44:1852:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1857:24:1857:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1857:24:1857:28 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1857:31:1857:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1857:31:1857:35 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1857:75:1859:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:1857:75:1859:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | -| main.rs:1858:14:1858:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1858:14:1858:17 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:23:1858:26 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1858:23:1858:26 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:43:1858:62 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1858:45:1858:49 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1858:45:1858:49 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:55:1858:59 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1858:55:1858:59 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1861:15:1861:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1861:15:1861:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1861:22:1861:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1861:22:1861:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1861:44:1863:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:13:1862:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1862:13:1862:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:13:1862:28 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:13:1862:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:22:1862:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1862:22:1862:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:33:1862:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1862:33:1862:36 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:33:1862:48 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:42:1862:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1862:42:1862:46 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1865:15:1865:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1865:15:1865:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1865:22:1865:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1865:22:1865:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1865:44:1867:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:13:1866:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1866:13:1866:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:13:1866:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:13:1866:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:23:1866:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1866:23:1866:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:34:1866:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1866:34:1866:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:34:1866:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:44:1866:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1866:44:1866:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1869:15:1869:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1869:15:1869:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1869:22:1869:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1869:22:1869:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1869:44:1871:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:13:1870:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1870:13:1870:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:13:1870:28 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:13:1870:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:22:1870:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1870:22:1870:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:33:1870:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1870:33:1870:36 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:33:1870:48 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:42:1870:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1870:42:1870:46 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1873:15:1873:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1873:15:1873:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1873:22:1873:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1873:22:1873:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1873:44:1875:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:13:1874:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1874:13:1874:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:13:1874:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:13:1874:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:23:1874:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1874:23:1874:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:34:1874:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1874:34:1874:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:34:1874:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:44:1874:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1874:44:1874:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1878:26:1878:26 | a | | main.rs:1878:18:1878:23 | T | -| main.rs:1878:32:1878:32 | b | | main.rs:1878:18:1878:23 | T | -| main.rs:1879:9:1879:9 | a | | main.rs:1878:18:1878:23 | T | -| main.rs:1879:13:1879:13 | b | | main.rs:1878:18:1878:23 | T | -| main.rs:1882:16:2013:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1886:23:1886:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1886:31:1886:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:23:1887:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:31:1887:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:23:1888:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:30:1888:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:23:1889:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:31:1889:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1890:23:1890:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1890:30:1890:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1891:23:1891:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1891:32:1891:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:23:1894:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:31:1894:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:23:1895:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:31:1895:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:23:1896:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:31:1896:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:23:1897:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:31:1897:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:23:1898:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:31:1898:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1899:39:1899:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1899:45:1899:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1902:17:1902:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1902:34:1902:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1903:9:1903:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1903:27:1903:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1905:17:1905:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1905:34:1905:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1906:9:1906:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1906:27:1906:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:17:1908:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:34:1908:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:9:1909:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:27:1909:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:17:1911:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:34:1911:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1912:9:1912:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1912:27:1912:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1914:17:1914:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1914:34:1914:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1915:9:1915:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1915:27:1915:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:26:1918:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:34:1918:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:25:1919:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:33:1919:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:26:1920:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:34:1920:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:23:1921:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:32:1921:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:23:1922:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:32:1922:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:17:1925:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:37:1925:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:9:1926:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:30:1926:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:17:1928:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:36:1928:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:9:1929:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:29:1929:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1931:17:1931:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1931:37:1931:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1932:9:1932:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1932:30:1932:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1934:17:1934:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1934:34:1934:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1935:9:1935:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1935:28:1935:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1937:17:1937:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1937:34:1937:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1938:9:1938:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1938:28:1938:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1940:24:1940:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1941:24:1941:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1944:13:1944:14 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1944:18:1944:36 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1945:13:1945:14 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1945:18:1945:36 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1948:23:1948:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1948:29:1948:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1949:23:1949:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1949:29:1949:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1950:23:1950:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1950:28:1950:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1951:23:1951:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1951:29:1951:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1952:23:1952:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1952:28:1952:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1953:23:1953:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1953:29:1953:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1956:24:1956:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1956:29:1956:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1957:24:1957:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1957:29:1957:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1958:24:1958:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1958:29:1958:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1959:24:1959:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1959:29:1959:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1960:24:1960:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1960:29:1960:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1963:17:1963:31 | vec2_add_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1963:35:1963:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1964:9:1964:23 | vec2_add_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1964:28:1964:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1966:17:1966:31 | vec2_sub_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1966:35:1966:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1967:9:1967:23 | vec2_sub_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1967:28:1967:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1969:17:1969:31 | vec2_mul_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1969:35:1969:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1970:9:1970:23 | vec2_mul_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1970:28:1970:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1972:17:1972:31 | vec2_div_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1972:35:1972:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1973:9:1973:23 | vec2_div_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1973:28:1973:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1975:17:1975:31 | vec2_rem_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1975:35:1975:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1976:9:1976:23 | vec2_rem_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1976:28:1976:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1979:27:1979:28 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1979:32:1979:33 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1980:26:1980:27 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1980:31:1980:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1981:27:1981:28 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1981:32:1981:33 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1982:24:1982:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1982:30:1982:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1983:24:1983:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1983:30:1983:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1986:17:1986:34 | vec2_bitand_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1986:38:1986:39 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1987:9:1987:26 | vec2_bitand_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1987:31:1987:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1989:17:1989:33 | vec2_bitor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1989:37:1989:38 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1990:9:1990:25 | vec2_bitor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1990:30:1990:31 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1992:17:1992:34 | vec2_bitxor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1992:38:1992:39 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1993:9:1993:26 | vec2_bitxor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1993:31:1993:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1995:17:1995:31 | vec2_shl_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1995:35:1995:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1996:9:1996:23 | vec2_shl_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1996:29:1996:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1998:17:1998:31 | vec2_shr_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1998:35:1998:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1999:9:1999:23 | vec2_shr_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1999:29:1999:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2002:25:2002:26 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2003:25:2003:26 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2007:30:2007:48 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2012:30:2012:48 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2022:18:2022:21 | SelfParam | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2022:24:2022:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2025:25:2027:5 | { ... } | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2030:9:2030:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2034:9:2034:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2034:9:2034:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2043:13:2043:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | -| main.rs:2043:13:2043:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | -| main.rs:2043:13:2043:42 | SelfParam | Ptr.TRefMut | main.rs:2037:5:2037:14 | S2 | -| main.rs:2044:13:2044:15 | _cx | | {EXTERNAL LOCATION} | &mut | -| main.rs:2044:13:2044:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | -| main.rs:2045:44:2047:9 | { ... } | | {EXTERNAL LOCATION} | Poll | -| main.rs:2045:44:2047:9 | { ... } | T | main.rs:2019:5:2019:14 | S1 | -| main.rs:2054:22:2062:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2055:9:2055:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2055:9:2055:12 | f1(...) | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2056:9:2056:12 | f2(...) | | main.rs:2029:16:2029:39 | impl ... | -| main.rs:2057:9:2057:12 | f3(...) | | main.rs:2033:16:2033:39 | impl ... | -| main.rs:2058:9:2058:12 | f4(...) | | main.rs:2050:16:2050:39 | impl ... | -| main.rs:2060:13:2060:13 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2060:17:2060:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2061:9:2061:9 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2072:15:2072:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2072:15:2072:19 | SelfParam | TRef | main.rs:2071:5:2073:5 | Self [trait Trait1] | -| main.rs:2072:22:2072:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2076:15:2076:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2076:15:2076:19 | SelfParam | TRef | main.rs:2075:5:2077:5 | Self [trait Trait2] | -| main.rs:2076:22:2076:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2080:15:2080:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2080:15:2080:19 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | -| main.rs:2080:22:2080:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2084:15:2084:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2084:15:2084:19 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | -| main.rs:2084:22:2084:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2092:18:2092:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2092:18:2092:22 | SelfParam | TRef | main.rs:2091:5:2093:5 | Self [trait MyTrait] | -| main.rs:2096:18:2096:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2096:18:2096:22 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | -| main.rs:2096:31:2098:9 | { ... } | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2102:18:2102:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2102:18:2102:22 | SelfParam | TRef | main.rs:2069:5:2069:22 | S3 | -| main.rs:2102:18:2102:22 | SelfParam | TRef.T3 | main.rs:2101:10:2101:17 | T | -| main.rs:2102:30:2105:9 | { ... } | | main.rs:2101:10:2101:17 | T | -| main.rs:2103:25:2103:28 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2103:25:2103:28 | self | TRef | main.rs:2069:5:2069:22 | S3 | -| main.rs:2103:25:2103:28 | self | TRef.T3 | main.rs:2101:10:2101:17 | T | -| main.rs:2112:41:2112:41 | t | | main.rs:2112:26:2112:38 | B | -| main.rs:2112:52:2114:5 | { ... } | | main.rs:2112:23:2112:23 | A | -| main.rs:2113:9:2113:9 | t | | main.rs:2112:26:2112:38 | B | -| main.rs:2116:34:2116:34 | x | | main.rs:2116:24:2116:31 | T | -| main.rs:2116:59:2118:5 | { ... } | | main.rs:2116:43:2116:57 | impl ... | -| main.rs:2116:59:2118:5 | { ... } | impl(T) | main.rs:2116:24:2116:31 | T | -| main.rs:2117:12:2117:12 | x | | main.rs:2116:24:2116:31 | T | -| main.rs:2120:34:2120:34 | x | | main.rs:2120:24:2120:31 | T | -| main.rs:2120:67:2122:5 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2120:67:2122:5 | { ... } | T | main.rs:2120:50:2120:64 | impl ... | -| main.rs:2120:67:2122:5 | { ... } | T.impl(T) | main.rs:2120:24:2120:31 | T | -| main.rs:2121:17:2121:17 | x | | main.rs:2120:24:2120:31 | T | -| main.rs:2124:34:2124:34 | x | | main.rs:2124:24:2124:31 | T | -| main.rs:2124:78:2126:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2124:78:2126:5 | { ... } | T0 | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2124:78:2126:5 | { ... } | T0.impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2124:78:2126:5 | { ... } | T1 | main.rs:2124:61:2124:75 | impl ... | -| main.rs:2124:78:2126:5 | { ... } | T1.impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2125:9:2125:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2125:13:2125:13 | x | | main.rs:2124:24:2124:31 | T | -| main.rs:2125:28:2125:28 | x | | main.rs:2124:24:2124:31 | T | -| main.rs:2128:26:2128:26 | t | | main.rs:2128:29:2128:43 | impl ... | -| main.rs:2128:51:2130:5 | { ... } | | main.rs:2128:23:2128:23 | A | -| main.rs:2129:9:2129:9 | t | | main.rs:2128:29:2128:43 | impl ... | -| main.rs:2132:16:2146:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2133:13:2133:13 | x | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2133:17:2133:20 | f1(...) | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2134:9:2134:9 | x | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2135:9:2135:9 | x | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2136:13:2136:13 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2136:17:2136:32 | get_a_my_trait(...) | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2137:32:2137:32 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2138:13:2138:13 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2138:17:2138:32 | get_a_my_trait(...) | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2139:32:2139:32 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2141:17:2141:35 | get_a_my_trait2(...) | | main.rs:2116:43:2116:57 | impl ... | -| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | T | main.rs:2120:50:2120:64 | impl ... | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T0 | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T1 | main.rs:2124:61:2124:75 | impl ... | -| main.rs:2156:16:2156:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2156:16:2156:20 | SelfParam | TRef | main.rs:2152:5:2153:13 | S | -| main.rs:2156:31:2158:9 | { ... } | | main.rs:2152:5:2153:13 | S | -| main.rs:2167:26:2169:9 | { ... } | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2167:26:2169:9 | { ... } | T | main.rs:2166:10:2166:10 | T | -| main.rs:2168:13:2168:38 | MyVec {...} | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2168:27:2168:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2168:27:2168:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2171:17:2171:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:2171:17:2171:25 | SelfParam | TRefMut | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2171:17:2171:25 | SelfParam | TRefMut.T | main.rs:2166:10:2166:10 | T | -| main.rs:2171:28:2171:32 | value | | main.rs:2166:10:2166:10 | T | -| main.rs:2171:38:2173:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2172:13:2172:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:2172:13:2172:16 | self | TRefMut | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2172:13:2172:16 | self | TRefMut.T | main.rs:2166:10:2166:10 | T | -| main.rs:2172:28:2172:32 | value | | main.rs:2166:10:2166:10 | T | -| main.rs:2180:18:2180:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2180:18:2180:22 | SelfParam | TRef | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2180:18:2180:22 | SelfParam | TRef.T | main.rs:2176:10:2176:10 | T | -| main.rs:2180:25:2180:29 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2180:56:2182:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2180:56:2182:9 | { ... } | TRef | main.rs:2176:10:2176:10 | T | -| main.rs:2181:13:2181:29 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2181:14:2181:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2181:14:2181:17 | self | TRef | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2181:14:2181:17 | self | TRef.T | main.rs:2176:10:2176:10 | T | -| main.rs:2181:24:2181:28 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2185:22:2185:26 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2185:22:2185:26 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2185:22:2185:26 | slice | TRef.TSlice | main.rs:2152:5:2153:13 | S | -| main.rs:2185:35:2187:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2186:17:2186:21 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2186:17:2186:21 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2186:17:2186:21 | slice | TRef.TSlice | main.rs:2152:5:2153:13 | S | -| main.rs:2189:37:2189:37 | a | | main.rs:2189:20:2189:34 | T | -| main.rs:2189:43:2189:43 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2193:9:2193:9 | a | | main.rs:2189:20:2189:34 | T | -| main.rs:2193:11:2193:11 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2196:16:2207:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2197:17:2197:19 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2197:23:2197:34 | ...::new(...) | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2198:9:2198:11 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2199:9:2199:11 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2201:13:2201:14 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2201:13:2201:14 | xs | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2201:26:2201:28 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2202:17:2202:18 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2202:17:2202:18 | xs | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2204:29:2204:31 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2206:9:2206:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2206:23:2206:25 | &xs | | {EXTERNAL LOCATION} | & | -| main.rs:2206:24:2206:25 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2206:24:2206:25 | xs | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2211:16:2213:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2212:25:2212:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | -| main.rs:2212:25:2212:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2212:25:2212:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2212:38:2212:45 | "World!" | | {EXTERNAL LOCATION} | & | -| main.rs:2212:38:2212:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2221:19:2221:22 | SelfParam | | main.rs:2217:5:2222:5 | Self [trait MyAdd] | -| main.rs:2221:25:2221:27 | rhs | | main.rs:2217:17:2217:26 | Rhs | -| main.rs:2228:19:2228:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2228:25:2228:29 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2228:45:2230:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2229:13:2229:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:19:2237:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:25:2237:29 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2237:25:2237:29 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:46:2239:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2238:14:2238:18 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2238:14:2238:18 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2246:19:2246:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2246:25:2246:29 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2246:46:2252:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2247:16:2247:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2261:19:2261:22 | SelfParam | | main.rs:2255:5:2255:19 | S | -| main.rs:2261:19:2261:22 | SelfParam | T | main.rs:2257:10:2257:17 | T | -| main.rs:2261:25:2261:29 | other | | main.rs:2255:5:2255:19 | S | -| main.rs:2261:25:2261:29 | other | T | main.rs:2257:10:2257:17 | T | -| main.rs:2261:54:2263:9 | { ... } | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:16:2262:19 | self | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:16:2262:19 | self | T | main.rs:2257:10:2257:17 | T | -| main.rs:2262:31:2262:35 | other | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:31:2262:35 | other | T | main.rs:2257:10:2257:17 | T | -| main.rs:2270:19:2270:22 | SelfParam | | main.rs:2255:5:2255:19 | S | -| main.rs:2270:19:2270:22 | SelfParam | T | main.rs:2266:10:2266:17 | T | -| main.rs:2270:25:2270:29 | other | | main.rs:2266:10:2266:17 | T | -| main.rs:2270:51:2272:9 | { ... } | | main.rs:2255:5:2255:19 | S | -| main.rs:2271:16:2271:19 | self | | main.rs:2255:5:2255:19 | S | -| main.rs:2271:16:2271:19 | self | T | main.rs:2266:10:2266:17 | T | -| main.rs:2271:31:2271:35 | other | | main.rs:2266:10:2266:17 | T | -| main.rs:2282:19:2282:22 | SelfParam | | main.rs:2255:5:2255:19 | S | -| main.rs:2282:19:2282:22 | SelfParam | T | main.rs:2275:14:2275:14 | T | -| main.rs:2282:25:2282:29 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2282:25:2282:29 | other | TRef | main.rs:2275:14:2275:14 | T | -| main.rs:2282:55:2284:9 | { ... } | | main.rs:2255:5:2255:19 | S | -| main.rs:2283:16:2283:19 | self | | main.rs:2255:5:2255:19 | S | -| main.rs:2283:16:2283:19 | self | T | main.rs:2275:14:2275:14 | T | -| main.rs:2283:31:2283:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2283:31:2283:35 | other | TRef | main.rs:2275:14:2275:14 | T | -| main.rs:2289:20:2289:24 | value | | main.rs:2287:18:2287:18 | T | -| main.rs:2294:20:2294:24 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2294:40:2296:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2295:13:2295:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2301:20:2301:24 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2301:41:2307:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2302:16:2302:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2312:21:2312:25 | value | | main.rs:2310:19:2310:19 | T | -| main.rs:2312:31:2312:31 | x | | main.rs:2310:5:2313:5 | Self [trait MyFrom2] | -| main.rs:2317:21:2317:25 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2317:33:2317:33 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2317:48:2319:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2318:13:2318:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2324:21:2324:25 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2324:34:2324:34 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2324:49:2330:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2325:16:2325:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2335:15:2335:15 | x | | main.rs:2333:5:2339:5 | Self [trait MySelfTrait] | -| main.rs:2338:15:2338:15 | x | | main.rs:2333:5:2339:5 | Self [trait MySelfTrait] | -| main.rs:2343:15:2343:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2343:31:2345:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2344:13:2344:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2348:15:2348:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2348:32:2350:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2349:13:2349:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2355:15:2355:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2355:31:2357:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2360:15:2360:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2360:32:2362:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:2361:13:2361:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2365:16:2390:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2366:13:2366:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:9:2367:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:18:2367:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:9:2368:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:18:2368:22 | &5i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2368:19:2368:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:9:2369:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:18:2369:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2371:11:2371:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2371:26:2371:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:11:2372:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:24:2372:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:11:2373:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:24:2373:28 | &3i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2373:25:2373:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1617:17:1617:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1620:26:1620:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1620:26:1620:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1620:26:1620:30 | SelfParam | TRef.TRef | main.rs:1619:14:1619:23 | T | +| main.rs:1620:39:1622:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1620:39:1622:13 | { ... } | TRef | main.rs:1619:14:1619:23 | T | +| main.rs:1621:18:1621:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1621:18:1621:21 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1621:18:1621:21 | self | TRef.TRef | main.rs:1619:14:1619:23 | T | +| main.rs:1624:31:1626:13 | { ... } | | main.rs:1619:14:1619:23 | T | +| main.rs:1629:13:1629:13 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1629:17:1629:19 | &42 | | {EXTERNAL LOCATION} | & | +| main.rs:1630:17:1630:17 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1631:13:1631:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1631:17:1631:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1631:33:1631:34 | &r | | {EXTERNAL LOCATION} | & | +| main.rs:1631:34:1631:34 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1632:13:1632:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1632:17:1632:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1635:26:1635:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1635:26:1635:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1635:26:1635:30 | SelfParam | TRef.TPtrMut | main.rs:1634:14:1634:23 | T | +| main.rs:1635:39:1637:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1635:39:1637:13 | { ... } | TRef | main.rs:1634:14:1634:23 | T | +| main.rs:1636:26:1636:32 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1636:29:1636:32 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1636:29:1636:32 | self | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1636:29:1636:32 | self | TRef.TPtrMut | main.rs:1634:14:1634:23 | T | +| main.rs:1639:31:1641:13 | { ... } | | main.rs:1634:14:1634:23 | T | +| main.rs:1645:13:1645:13 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1645:13:1645:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1645:27:1645:32 | &mut v | | {EXTERNAL LOCATION} | &mut | +| main.rs:1646:26:1646:26 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1646:26:1646:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1647:26:1647:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1647:46:1647:47 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1647:47:1647:47 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1647:47:1647:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1648:13:1648:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1648:17:1648:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1654:16:1666:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1655:13:1655:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:1655:17:1655:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1655:17:1655:29 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1655:25:1655:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1656:13:1656:13 | y | | {EXTERNAL LOCATION} | bool | +| main.rs:1656:17:1656:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1656:17:1656:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1656:25:1656:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1660:17:1662:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1662:16:1664:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1679:30:1681:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1680:13:1680:31 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1687:16:1687:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1687:22:1687:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1687:41:1692:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1688:13:1691:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1689:20:1689:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1689:29:1689:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1690:20:1690:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1690:29:1690:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1697:23:1697:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1697:23:1697:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1697:34:1697:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1697:45:1700:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1698:13:1698:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1698:13:1698:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1698:23:1698:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1699:13:1699:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1699:13:1699:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1699:23:1699:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1705:16:1705:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1705:22:1705:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1705:41:1710:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1706:13:1709:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1707:20:1707:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1707:29:1707:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1708:20:1708:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1708:29:1708:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1715:23:1715:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1715:23:1715:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1715:34:1715:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1715:45:1718:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1716:13:1716:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1716:13:1716:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1716:23:1716:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1717:13:1717:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1717:13:1717:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1717:23:1717:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1723:16:1723:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1723:22:1723:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1723:41:1728:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1724:13:1727:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1725:20:1725:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1725:29:1725:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1726:20:1726:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1726:29:1726:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1732:23:1732:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1732:23:1732:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1732:34:1732:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1732:45:1735:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1733:13:1733:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1733:13:1733:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1733:23:1733:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1734:13:1734:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1734:13:1734:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1734:23:1734:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1740:16:1740:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1740:22:1740:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1740:41:1745:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1741:13:1744:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1742:20:1742:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1742:29:1742:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1743:20:1743:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1743:29:1743:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1749:23:1749:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1749:23:1749:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1749:34:1749:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1749:45:1752:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1750:13:1750:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1750:13:1750:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1750:23:1750:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1751:13:1751:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1751:13:1751:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1751:23:1751:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1757:16:1757:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1757:22:1757:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1757:41:1762:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1758:13:1761:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1759:20:1759:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1759:29:1759:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1760:20:1760:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1760:29:1760:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1766:23:1766:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1766:23:1766:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1766:34:1766:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1766:45:1769:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1767:13:1767:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1767:13:1767:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1767:23:1767:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1768:13:1768:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1768:13:1768:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1768:23:1768:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1774:19:1774:22 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1774:25:1774:27 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1774:44:1779:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1775:13:1778:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1776:20:1776:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1776:29:1776:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1777:20:1777:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1777:29:1777:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1783:26:1783:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1783:26:1783:34 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1783:37:1783:39 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1783:48:1786:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1784:13:1784:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1784:13:1784:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1784:23:1784:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1785:13:1785:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1785:13:1785:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1785:23:1785:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1791:18:1791:21 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1791:24:1791:26 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1791:43:1796:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1792:13:1795:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1793:20:1793:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1793:29:1793:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1794:20:1794:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1794:29:1794:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1800:25:1800:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1800:25:1800:33 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1800:36:1800:38 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1800:47:1803:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1801:13:1801:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1801:13:1801:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1801:23:1801:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1802:13:1802:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1802:13:1802:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1802:23:1802:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1808:19:1808:22 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1808:25:1808:27 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1808:44:1813:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1809:13:1812:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1810:20:1810:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1810:29:1810:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1811:20:1811:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1811:29:1811:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1817:26:1817:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1817:26:1817:34 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1817:37:1817:39 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1817:48:1820:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1818:13:1818:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1818:13:1818:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1818:23:1818:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1819:13:1819:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1819:13:1819:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1819:23:1819:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1825:16:1825:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1825:22:1825:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1825:40:1830:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1826:13:1829:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1827:20:1827:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1827:30:1827:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1828:20:1828:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1828:30:1828:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1834:23:1834:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1834:23:1834:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1834:34:1834:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1834:44:1837:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1835:13:1835:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1835:13:1835:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1835:24:1835:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1836:13:1836:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1836:13:1836:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1836:24:1836:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1842:16:1842:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1842:22:1842:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1842:40:1847:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1843:13:1846:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1844:20:1844:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1844:30:1844:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1845:20:1845:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1845:30:1845:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1851:23:1851:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1851:23:1851:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1851:34:1851:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1851:44:1854:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1852:13:1852:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1852:13:1852:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1852:24:1852:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1853:13:1853:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1853:13:1853:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1853:24:1853:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1859:16:1859:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1859:30:1864:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1860:13:1863:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1861:21:1861:24 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1862:21:1862:24 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1869:16:1869:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1869:30:1874:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1870:13:1873:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1871:21:1871:24 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1872:21:1872:24 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1878:15:1878:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1878:15:1878:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1878:22:1878:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1878:22:1878:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1878:44:1880:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1879:13:1879:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1879:13:1879:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1879:13:1879:29 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1879:13:1879:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1879:23:1879:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1879:23:1879:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1879:34:1879:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1879:34:1879:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1879:34:1879:50 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1879:44:1879:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1879:44:1879:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1882:15:1882:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1882:15:1882:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1882:22:1882:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1882:22:1882:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1882:44:1884:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1883:13:1883:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1883:13:1883:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1883:13:1883:29 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1883:13:1883:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1883:23:1883:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1883:23:1883:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1883:34:1883:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1883:34:1883:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1883:34:1883:50 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1883:44:1883:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1883:44:1883:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1888:24:1888:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1888:24:1888:28 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1888:31:1888:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1888:31:1888:35 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1888:75:1890:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:1888:75:1890:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | +| main.rs:1889:14:1889:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1889:14:1889:17 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1889:23:1889:26 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1889:23:1889:26 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1889:43:1889:62 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1889:45:1889:49 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1889:45:1889:49 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1889:55:1889:59 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1889:55:1889:59 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1892:15:1892:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1892:15:1892:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1892:22:1892:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1892:22:1892:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1892:44:1894:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1893:13:1893:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1893:13:1893:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1893:13:1893:28 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1893:13:1893:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1893:22:1893:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1893:22:1893:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1893:33:1893:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1893:33:1893:36 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1893:33:1893:48 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1893:42:1893:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1893:42:1893:46 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1896:15:1896:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1896:15:1896:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1896:22:1896:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1896:22:1896:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1896:44:1898:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1897:13:1897:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1897:13:1897:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1897:13:1897:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1897:13:1897:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1897:23:1897:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1897:23:1897:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1897:34:1897:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1897:34:1897:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1897:34:1897:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1897:44:1897:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1897:44:1897:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1900:15:1900:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1900:15:1900:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1900:22:1900:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1900:22:1900:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1900:44:1902:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1901:13:1901:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1901:13:1901:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1901:13:1901:28 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1901:13:1901:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1901:22:1901:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1901:22:1901:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1901:33:1901:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1901:33:1901:36 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1901:33:1901:48 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1901:42:1901:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1901:42:1901:46 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1904:15:1904:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1904:15:1904:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1904:22:1904:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1904:22:1904:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1904:44:1906:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1905:13:1905:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1905:13:1905:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1905:13:1905:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1905:13:1905:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1905:23:1905:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1905:23:1905:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1905:34:1905:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1905:34:1905:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1905:34:1905:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1905:44:1905:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1905:44:1905:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1909:26:1909:26 | a | | main.rs:1909:18:1909:23 | T | +| main.rs:1909:32:1909:32 | b | | main.rs:1909:18:1909:23 | T | +| main.rs:1910:9:1910:9 | a | | main.rs:1909:18:1909:23 | T | +| main.rs:1910:13:1910:13 | b | | main.rs:1909:18:1909:23 | T | +| main.rs:1913:16:2044:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1917:23:1917:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1917:31:1917:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1918:23:1918:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1918:31:1918:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1919:23:1919:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1919:30:1919:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1920:23:1920:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1920:31:1920:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1921:23:1921:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1921:30:1921:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1922:23:1922:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1922:32:1922:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1925:23:1925:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1925:31:1925:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1926:23:1926:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1926:31:1926:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1927:23:1927:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1927:31:1927:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1928:23:1928:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1928:31:1928:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1929:23:1929:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1929:31:1929:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1930:39:1930:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1930:45:1930:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1933:17:1933:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1933:34:1933:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1934:9:1934:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1934:27:1934:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1936:17:1936:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1936:34:1936:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1937:9:1937:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1937:27:1937:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1939:17:1939:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1939:34:1939:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1940:9:1940:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1940:27:1940:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1942:17:1942:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1942:34:1942:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1943:9:1943:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1943:27:1943:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1945:17:1945:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1945:34:1945:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1946:9:1946:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1946:27:1946:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1949:26:1949:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1949:34:1949:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1950:25:1950:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1950:33:1950:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1951:26:1951:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1951:34:1951:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1952:23:1952:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1952:32:1952:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1953:23:1953:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1953:32:1953:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1956:17:1956:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1956:37:1956:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1957:9:1957:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1957:30:1957:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1959:17:1959:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1959:36:1959:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1960:9:1960:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1960:29:1960:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1962:17:1962:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1962:37:1962:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1963:9:1963:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1963:30:1963:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1965:17:1965:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1965:34:1965:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1966:9:1966:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1966:28:1966:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1968:17:1968:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1968:34:1968:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1969:9:1969:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1969:28:1969:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1971:24:1971:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1972:24:1972:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1975:13:1975:14 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1975:18:1975:36 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1976:13:1976:14 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1976:18:1976:36 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1979:23:1979:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1979:29:1979:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1980:23:1980:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1980:29:1980:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1981:23:1981:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1981:28:1981:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1982:23:1982:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1982:29:1982:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1983:23:1983:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1983:28:1983:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1984:23:1984:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1984:29:1984:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1987:24:1987:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1987:29:1987:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1988:24:1988:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1988:29:1988:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1989:24:1989:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1989:29:1989:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1990:24:1990:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1990:29:1990:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1991:24:1991:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1991:29:1991:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1994:17:1994:31 | vec2_add_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1994:35:1994:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1995:9:1995:23 | vec2_add_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1995:28:1995:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1997:17:1997:31 | vec2_sub_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1997:35:1997:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1998:9:1998:23 | vec2_sub_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1998:28:1998:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2000:17:2000:31 | vec2_mul_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2000:35:2000:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2001:9:2001:23 | vec2_mul_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2001:28:2001:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2003:17:2003:31 | vec2_div_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2003:35:2003:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2004:9:2004:23 | vec2_div_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2004:28:2004:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2006:17:2006:31 | vec2_rem_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2006:35:2006:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2007:9:2007:23 | vec2_rem_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2007:28:2007:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2010:27:2010:28 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2010:32:2010:33 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2011:26:2011:27 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2011:31:2011:32 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2012:27:2012:28 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2012:32:2012:33 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2013:24:2013:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2013:30:2013:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2014:24:2014:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2014:30:2014:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2017:17:2017:34 | vec2_bitand_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2017:38:2017:39 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2018:9:2018:26 | vec2_bitand_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2018:31:2018:32 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2020:17:2020:33 | vec2_bitor_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2020:37:2020:38 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2021:9:2021:25 | vec2_bitor_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2021:30:2021:31 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2023:17:2023:34 | vec2_bitxor_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2023:38:2023:39 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2024:9:2024:26 | vec2_bitxor_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2024:31:2024:32 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2026:17:2026:31 | vec2_shl_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2026:35:2026:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2027:9:2027:23 | vec2_shl_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2027:29:2027:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2029:17:2029:31 | vec2_shr_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2029:35:2029:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2030:9:2030:23 | vec2_shr_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2030:29:2030:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2033:25:2033:26 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2034:25:2034:26 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2038:30:2038:48 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2043:30:2043:48 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2053:18:2053:21 | SelfParam | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2053:24:2053:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2056:25:2058:5 | { ... } | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2061:9:2061:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2065:9:2065:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2065:9:2065:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2074:13:2074:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | +| main.rs:2074:13:2074:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | +| main.rs:2074:13:2074:42 | SelfParam | Ptr.TRefMut | main.rs:2068:5:2068:14 | S2 | +| main.rs:2075:13:2075:15 | _cx | | {EXTERNAL LOCATION} | &mut | +| main.rs:2075:13:2075:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | +| main.rs:2076:44:2078:9 | { ... } | | {EXTERNAL LOCATION} | Poll | +| main.rs:2076:44:2078:9 | { ... } | T | main.rs:2050:5:2050:14 | S1 | +| main.rs:2085:22:2093:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2086:9:2086:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2086:9:2086:12 | f1(...) | dyn(Output) | main.rs:2050:5:2050:14 | S1 | +| main.rs:2087:9:2087:12 | f2(...) | | main.rs:2060:16:2060:39 | impl ... | +| main.rs:2088:9:2088:12 | f3(...) | | main.rs:2064:16:2064:39 | impl ... | +| main.rs:2089:9:2089:12 | f4(...) | | main.rs:2081:16:2081:39 | impl ... | +| main.rs:2091:13:2091:13 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2091:17:2091:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2092:9:2092:9 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2103:15:2103:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2103:15:2103:19 | SelfParam | TRef | main.rs:2102:5:2104:5 | Self [trait Trait1] | +| main.rs:2103:22:2103:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2107:15:2107:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2107:15:2107:19 | SelfParam | TRef | main.rs:2106:5:2108:5 | Self [trait Trait2] | +| main.rs:2107:22:2107:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2111:15:2111:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2111:15:2111:19 | SelfParam | TRef | main.rs:2097:5:2098:14 | S1 | +| main.rs:2111:22:2111:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2115:15:2115:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2115:15:2115:19 | SelfParam | TRef | main.rs:2097:5:2098:14 | S1 | +| main.rs:2115:22:2115:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2123:18:2123:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2123:18:2123:22 | SelfParam | TRef | main.rs:2122:5:2124:5 | Self [trait MyTrait] | +| main.rs:2127:18:2127:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2127:18:2127:22 | SelfParam | TRef | main.rs:2097:5:2098:14 | S1 | +| main.rs:2127:31:2129:9 | { ... } | | main.rs:2099:5:2099:14 | S2 | +| main.rs:2133:18:2133:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2133:18:2133:22 | SelfParam | TRef | main.rs:2100:5:2100:22 | S3 | +| main.rs:2133:18:2133:22 | SelfParam | TRef.T3 | main.rs:2132:10:2132:17 | T | +| main.rs:2133:30:2136:9 | { ... } | | main.rs:2132:10:2132:17 | T | +| main.rs:2134:25:2134:28 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2134:25:2134:28 | self | TRef | main.rs:2100:5:2100:22 | S3 | +| main.rs:2134:25:2134:28 | self | TRef.T3 | main.rs:2132:10:2132:17 | T | +| main.rs:2143:41:2143:41 | t | | main.rs:2143:26:2143:38 | B | +| main.rs:2143:52:2145:5 | { ... } | | main.rs:2143:23:2143:23 | A | +| main.rs:2144:9:2144:9 | t | | main.rs:2143:26:2143:38 | B | +| main.rs:2147:34:2147:34 | x | | main.rs:2147:24:2147:31 | T | +| main.rs:2147:59:2149:5 | { ... } | | main.rs:2147:43:2147:57 | impl ... | +| main.rs:2147:59:2149:5 | { ... } | impl(T) | main.rs:2147:24:2147:31 | T | +| main.rs:2148:12:2148:12 | x | | main.rs:2147:24:2147:31 | T | +| main.rs:2151:34:2151:34 | x | | main.rs:2151:24:2151:31 | T | +| main.rs:2151:67:2153:5 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:2151:67:2153:5 | { ... } | T | main.rs:2151:50:2151:64 | impl ... | +| main.rs:2151:67:2153:5 | { ... } | T.impl(T) | main.rs:2151:24:2151:31 | T | +| main.rs:2152:17:2152:17 | x | | main.rs:2151:24:2151:31 | T | +| main.rs:2155:34:2155:34 | x | | main.rs:2155:24:2155:31 | T | +| main.rs:2155:78:2157:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2155:78:2157:5 | { ... } | T0 | main.rs:2155:44:2155:58 | impl ... | +| main.rs:2155:78:2157:5 | { ... } | T0.impl(T) | main.rs:2155:24:2155:31 | T | +| main.rs:2155:78:2157:5 | { ... } | T1 | main.rs:2155:61:2155:75 | impl ... | +| main.rs:2155:78:2157:5 | { ... } | T1.impl(T) | main.rs:2155:24:2155:31 | T | +| main.rs:2156:9:2156:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2156:13:2156:13 | x | | main.rs:2155:24:2155:31 | T | +| main.rs:2156:28:2156:28 | x | | main.rs:2155:24:2155:31 | T | +| main.rs:2159:26:2159:26 | t | | main.rs:2159:29:2159:43 | impl ... | +| main.rs:2159:51:2161:5 | { ... } | | main.rs:2159:23:2159:23 | A | +| main.rs:2160:9:2160:9 | t | | main.rs:2159:29:2159:43 | impl ... | +| main.rs:2163:16:2177:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2164:13:2164:13 | x | | main.rs:2118:16:2118:35 | impl ... + ... | +| main.rs:2164:17:2164:20 | f1(...) | | main.rs:2118:16:2118:35 | impl ... + ... | +| main.rs:2165:9:2165:9 | x | | main.rs:2118:16:2118:35 | impl ... + ... | +| main.rs:2166:9:2166:9 | x | | main.rs:2118:16:2118:35 | impl ... + ... | +| main.rs:2167:13:2167:13 | a | | main.rs:2139:28:2139:43 | impl ... | +| main.rs:2167:17:2167:32 | get_a_my_trait(...) | | main.rs:2139:28:2139:43 | impl ... | +| main.rs:2168:32:2168:32 | a | | main.rs:2139:28:2139:43 | impl ... | +| main.rs:2169:13:2169:13 | a | | main.rs:2139:28:2139:43 | impl ... | +| main.rs:2169:17:2169:32 | get_a_my_trait(...) | | main.rs:2139:28:2139:43 | impl ... | +| main.rs:2170:32:2170:32 | a | | main.rs:2139:28:2139:43 | impl ... | +| main.rs:2172:17:2172:35 | get_a_my_trait2(...) | | main.rs:2147:43:2147:57 | impl ... | +| main.rs:2175:17:2175:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2175:17:2175:35 | get_a_my_trait3(...) | T | main.rs:2151:50:2151:64 | impl ... | +| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | T0 | main.rs:2155:44:2155:58 | impl ... | +| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | T1 | main.rs:2155:61:2155:75 | impl ... | +| main.rs:2187:16:2187:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2187:16:2187:20 | SelfParam | TRef | main.rs:2183:5:2184:13 | S | +| main.rs:2187:31:2189:9 | { ... } | | main.rs:2183:5:2184:13 | S | +| main.rs:2198:26:2200:9 | { ... } | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2198:26:2200:9 | { ... } | T | main.rs:2197:10:2197:10 | T | +| main.rs:2199:13:2199:38 | MyVec {...} | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2199:27:2199:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2199:27:2199:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2202:17:2202:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:2202:17:2202:25 | SelfParam | TRefMut | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2202:17:2202:25 | SelfParam | TRefMut.T | main.rs:2197:10:2197:10 | T | +| main.rs:2202:28:2202:32 | value | | main.rs:2197:10:2197:10 | T | +| main.rs:2202:38:2204:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2203:13:2203:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:2203:13:2203:16 | self | TRefMut | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2203:13:2203:16 | self | TRefMut.T | main.rs:2197:10:2197:10 | T | +| main.rs:2203:28:2203:32 | value | | main.rs:2197:10:2197:10 | T | +| main.rs:2211:18:2211:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2211:18:2211:22 | SelfParam | TRef | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2211:18:2211:22 | SelfParam | TRef.T | main.rs:2207:10:2207:10 | T | +| main.rs:2211:25:2211:29 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2211:56:2213:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2211:56:2213:9 | { ... } | TRef | main.rs:2207:10:2207:10 | T | +| main.rs:2212:13:2212:29 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2212:14:2212:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2212:14:2212:17 | self | TRef | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2212:14:2212:17 | self | TRef.T | main.rs:2207:10:2207:10 | T | +| main.rs:2212:24:2212:28 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2216:22:2216:26 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2216:22:2216:26 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2216:22:2216:26 | slice | TRef.TSlice | main.rs:2183:5:2184:13 | S | +| main.rs:2216:35:2218:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2217:17:2217:21 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2217:17:2217:21 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2217:17:2217:21 | slice | TRef.TSlice | main.rs:2183:5:2184:13 | S | +| main.rs:2220:37:2220:37 | a | | main.rs:2220:20:2220:34 | T | +| main.rs:2220:43:2220:43 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2224:9:2224:9 | a | | main.rs:2220:20:2220:34 | T | +| main.rs:2224:11:2224:11 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2227:16:2238:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2228:17:2228:19 | vec | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2228:23:2228:34 | ...::new(...) | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2229:9:2229:11 | vec | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2230:9:2230:11 | vec | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2232:13:2232:14 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2232:13:2232:14 | xs | TArray | main.rs:2183:5:2184:13 | S | +| main.rs:2232:26:2232:28 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2233:17:2233:18 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2233:17:2233:18 | xs | TArray | main.rs:2183:5:2184:13 | S | +| main.rs:2235:29:2235:31 | vec | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2237:9:2237:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2237:23:2237:25 | &xs | | {EXTERNAL LOCATION} | & | +| main.rs:2237:24:2237:25 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2237:24:2237:25 | xs | TArray | main.rs:2183:5:2184:13 | S | +| main.rs:2242:16:2244:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2243:25:2243:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | +| main.rs:2243:25:2243:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2243:25:2243:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2243:38:2243:45 | "World!" | | {EXTERNAL LOCATION} | & | +| main.rs:2243:38:2243:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2252:19:2252:22 | SelfParam | | main.rs:2248:5:2253:5 | Self [trait MyAdd] | +| main.rs:2252:25:2252:27 | rhs | | main.rs:2248:17:2248:26 | Rhs | +| main.rs:2259:19:2259:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2259:25:2259:29 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2259:45:2261:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2260:13:2260:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2268:19:2268:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2268:25:2268:29 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2268:25:2268:29 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2268:46:2270:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2269:14:2269:18 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2269:14:2269:18 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2277:19:2277:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2277:25:2277:29 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2277:46:2283:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2278:16:2278:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2292:19:2292:22 | SelfParam | | main.rs:2286:5:2286:19 | S | +| main.rs:2292:19:2292:22 | SelfParam | T | main.rs:2288:10:2288:17 | T | +| main.rs:2292:25:2292:29 | other | | main.rs:2286:5:2286:19 | S | +| main.rs:2292:25:2292:29 | other | T | main.rs:2288:10:2288:17 | T | +| main.rs:2292:54:2294:9 | { ... } | | main.rs:2286:5:2286:19 | S | +| main.rs:2293:16:2293:19 | self | | main.rs:2286:5:2286:19 | S | +| main.rs:2293:16:2293:19 | self | T | main.rs:2288:10:2288:17 | T | +| main.rs:2293:31:2293:35 | other | | main.rs:2286:5:2286:19 | S | +| main.rs:2293:31:2293:35 | other | T | main.rs:2288:10:2288:17 | T | +| main.rs:2301:19:2301:22 | SelfParam | | main.rs:2286:5:2286:19 | S | +| main.rs:2301:19:2301:22 | SelfParam | T | main.rs:2297:10:2297:17 | T | +| main.rs:2301:25:2301:29 | other | | main.rs:2297:10:2297:17 | T | +| main.rs:2301:51:2303:9 | { ... } | | main.rs:2286:5:2286:19 | S | +| main.rs:2302:16:2302:19 | self | | main.rs:2286:5:2286:19 | S | +| main.rs:2302:16:2302:19 | self | T | main.rs:2297:10:2297:17 | T | +| main.rs:2302:31:2302:35 | other | | main.rs:2297:10:2297:17 | T | +| main.rs:2313:19:2313:22 | SelfParam | | main.rs:2286:5:2286:19 | S | +| main.rs:2313:19:2313:22 | SelfParam | T | main.rs:2306:14:2306:14 | T | +| main.rs:2313:25:2313:29 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2313:25:2313:29 | other | TRef | main.rs:2306:14:2306:14 | T | +| main.rs:2313:55:2315:9 | { ... } | | main.rs:2286:5:2286:19 | S | +| main.rs:2314:16:2314:19 | self | | main.rs:2286:5:2286:19 | S | +| main.rs:2314:16:2314:19 | self | T | main.rs:2306:14:2306:14 | T | +| main.rs:2314:31:2314:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2314:31:2314:35 | other | TRef | main.rs:2306:14:2306:14 | T | +| main.rs:2320:20:2320:24 | value | | main.rs:2318:18:2318:18 | T | +| main.rs:2325:20:2325:24 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2325:40:2327:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2326:13:2326:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2332:20:2332:24 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2332:41:2338:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2333:16:2333:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2343:21:2343:25 | value | | main.rs:2341:19:2341:19 | T | +| main.rs:2343:31:2343:31 | x | | main.rs:2341:5:2344:5 | Self [trait MyFrom2] | +| main.rs:2348:21:2348:25 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2348:33:2348:33 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2348:48:2350:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2349:13:2349:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2355:21:2355:25 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2355:34:2355:34 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2355:49:2361:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2356:16:2356:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2366:15:2366:15 | x | | main.rs:2364:5:2370:5 | Self [trait MySelfTrait] | +| main.rs:2369:15:2369:15 | x | | main.rs:2364:5:2370:5 | Self [trait MySelfTrait] | +| main.rs:2374:15:2374:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2374:31:2376:9 | { ... } | | {EXTERNAL LOCATION} | i64 | | main.rs:2375:13:2375:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:17:2375:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:30:2375:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:13:2376:13 | y | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:17:2376:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:30:2376:33 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2377:13:2377:13 | z | | {EXTERNAL LOCATION} | i64 | -| main.rs:2377:38:2377:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2378:9:2378:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2378:23:2378:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2378:30:2378:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2379:9:2379:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2379:23:2379:26 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2379:29:2379:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2380:9:2380:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2380:27:2380:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2380:34:2380:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2382:9:2382:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2382:17:2382:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2383:9:2383:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2383:17:2383:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2384:9:2384:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2384:18:2384:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2385:9:2385:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2385:18:2385:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2386:9:2386:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2386:25:2386:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2387:25:2387:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2388:9:2388:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2388:25:2388:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2389:25:2389:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2397:26:2399:9 | { ... } | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2398:13:2398:25 | MyCallable {...} | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2401:17:2401:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2401:17:2401:21 | SelfParam | TRef | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2401:31:2403:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2406:16:2513:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2409:9:2409:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2409:18:2409:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2409:28:2409:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2410:9:2410:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2410:18:2410:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2410:43:2410:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2411:9:2411:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2411:18:2411:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2411:40:2411:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2413:13:2413:17 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2413:21:2413:31 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2413:22:2413:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2414:9:2414:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2414:18:2414:22 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2414:24:2414:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2416:13:2416:17 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2416:21:2416:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2416:22:2416:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2417:9:2417:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2417:18:2417:22 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2417:24:2417:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2419:13:2419:17 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2419:13:2419:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2419:31:2419:39 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2420:9:2420:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2420:18:2420:22 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2420:18:2420:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2420:24:2420:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2422:13:2422:17 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2422:13:2422:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2422:31:2422:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2423:9:2423:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2423:18:2423:22 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2423:18:2423:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2423:24:2423:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2425:17:2425:24 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2425:28:2425:48 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2425:29:2425:33 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2425:29:2425:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:36:2425:40 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2425:36:2425:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:43:2425:47 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2425:43:2425:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2426:9:2426:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2426:18:2426:26 | &strings1 | | {EXTERNAL LOCATION} | & | -| main.rs:2426:19:2426:26 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2426:28:2426:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2427:9:2427:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2427:18:2427:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | -| main.rs:2427:23:2427:30 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2427:32:2427:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2428:9:2428:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2428:18:2428:25 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2428:27:2428:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2430:13:2430:20 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2431:9:2435:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2432:13:2432:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2432:26:2432:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2432:26:2432:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2433:13:2433:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2433:26:2433:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2433:26:2433:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2434:13:2434:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2434:26:2434:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2434:26:2434:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2436:9:2436:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2436:18:2436:25 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2436:27:2436:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2438:13:2438:20 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2439:9:2443:9 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2439:10:2443:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2440:13:2440:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2440:26:2440:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2440:26:2440:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2441:13:2441:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2441:26:2441:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2441:26:2441:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2442:13:2442:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2442:26:2442:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2442:26:2442:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2444:9:2444:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2444:18:2444:25 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2444:27:2444:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2446:13:2446:21 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2446:25:2446:81 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2446:26:2446:42 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2446:45:2446:61 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2446:64:2446:80 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2447:9:2451:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2448:12:2448:20 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2449:9:2451:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2455:9:2455:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2455:18:2455:22 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2455:24:2455:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2456:9:2456:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2456:18:2456:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2456:19:2456:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2456:19:2456:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2456:28:2456:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2457:13:2457:17 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2457:21:2457:25 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2458:9:2458:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2458:18:2458:22 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2458:24:2458:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2459:13:2459:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2459:26:2459:27 | .. | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2460:9:2460:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2460:18:2460:48 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2460:19:2460:36 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2460:20:2460:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:26:2460:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:32:2460:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:38:2460:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2460:50:2460:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2462:13:2462:18 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2463:9:2466:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | -| main.rs:2464:20:2464:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2465:18:2465:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2467:9:2467:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2467:18:2467:23 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2467:25:2467:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2472:9:2472:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2472:24:2472:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2474:13:2474:18 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2474:13:2474:18 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2474:13:2474:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2474:32:2474:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2474:33:2474:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2475:9:2475:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2475:18:2475:23 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2475:18:2475:23 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2475:18:2475:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2475:25:2475:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2477:22:2477:33 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2477:23:2477:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2478:9:2478:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2478:25:2478:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2480:13:2480:17 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2480:21:2480:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2480:31:2480:42 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2480:32:2480:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2481:9:2481:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2481:18:2481:22 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2481:24:2481:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2483:13:2483:17 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2483:13:2483:17 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2483:13:2483:17 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2483:13:2483:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2483:32:2483:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2483:33:2483:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | -| main.rs:2484:9:2484:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2484:18:2484:22 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2484:18:2484:22 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2484:18:2484:22 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2484:18:2484:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2484:24:2484:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2486:17:2486:21 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2486:17:2486:21 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2486:25:2486:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2486:25:2486:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2487:9:2487:13 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2487:9:2487:13 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2487:20:2487:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2488:9:2488:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2488:18:2488:22 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2488:18:2488:22 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2488:24:2488:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2492:17:2495:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2493:13:2494:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2493:29:2494:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2497:17:2497:20 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2497:17:2497:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2497:24:2497:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2497:24:2497:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2498:9:2498:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2498:9:2498:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2498:24:2498:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2498:24:2498:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2498:33:2498:37 | "one" | | {EXTERNAL LOCATION} | & | -| main.rs:2498:33:2498:37 | "one" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2499:9:2499:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2499:9:2499:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2499:24:2499:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2499:24:2499:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2499:33:2499:37 | "two" | | {EXTERNAL LOCATION} | & | -| main.rs:2499:33:2499:37 | "two" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2500:9:2500:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2500:20:2500:23 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2500:20:2500:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2500:32:2500:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2501:9:2501:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2501:22:2501:25 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2501:22:2501:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2501:36:2501:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2502:9:2502:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2502:13:2502:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2502:29:2502:32 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2502:29:2502:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2502:41:2502:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2503:9:2503:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2503:13:2503:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2503:29:2503:33 | &map1 | | {EXTERNAL LOCATION} | & | -| main.rs:2503:30:2503:33 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2503:30:2503:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2503:35:2503:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2507:17:2507:17 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2509:17:2512:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2509:23:2509:23 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2510:9:2512:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2511:13:2511:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2523:40:2525:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2523:40:2525:9 | { ... } | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2523:40:2525:9 | { ... } | T.T | main.rs:2522:10:2522:19 | T | -| main.rs:2527:30:2529:9 | { ... } | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2527:30:2529:9 | { ... } | T | main.rs:2522:10:2522:19 | T | -| main.rs:2531:19:2531:22 | SelfParam | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2531:19:2531:22 | SelfParam | T | main.rs:2522:10:2522:19 | T | -| main.rs:2531:33:2533:9 | { ... } | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2531:33:2533:9 | { ... } | T | main.rs:2522:10:2522:19 | T | -| main.rs:2532:13:2532:16 | self | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2532:13:2532:16 | self | T | main.rs:2522:10:2522:19 | T | -| main.rs:2544:15:2544:15 | x | | main.rs:2544:12:2544:12 | T | -| main.rs:2544:26:2546:5 | { ... } | | main.rs:2544:12:2544:12 | T | -| main.rs:2545:9:2545:9 | x | | main.rs:2544:12:2544:12 | T | -| main.rs:2548:16:2570:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2549:13:2549:14 | x1 | | {EXTERNAL LOCATION} | Option | -| main.rs:2549:13:2549:14 | x1 | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2549:13:2549:14 | x1 | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2550:13:2550:14 | x2 | | {EXTERNAL LOCATION} | Option | -| main.rs:2550:13:2550:14 | x2 | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2550:13:2550:14 | x2 | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2551:13:2551:14 | x3 | | {EXTERNAL LOCATION} | Option | -| main.rs:2551:13:2551:14 | x3 | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2551:13:2551:14 | x3 | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2552:13:2552:14 | x4 | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2552:13:2552:14 | x4 | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2552:18:2552:48 | ...::method(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2552:18:2552:48 | ...::method(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2552:35:2552:47 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2553:13:2553:14 | x5 | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2553:13:2553:14 | x5 | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2553:18:2553:42 | ...::method(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2553:18:2553:42 | ...::method(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2553:29:2553:41 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2557:21:2557:33 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2558:13:2558:15 | x10 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2558:13:2558:15 | x10 | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2558:19:2561:9 | S5::<...> {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2558:19:2561:9 | S5::<...> {...} | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2562:13:2562:15 | x11 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2562:19:2562:34 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2563:13:2563:15 | x12 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2563:19:2563:33 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2564:13:2564:15 | x13 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2564:19:2567:9 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2566:20:2566:32 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2568:13:2568:15 | x14 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2568:19:2568:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2569:13:2569:15 | x15 | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2569:13:2569:15 | x15 | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2569:19:2569:37 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2569:19:2569:37 | ...::default(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2578:35:2580:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2578:35:2580:9 | { ... } | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2578:35:2580:9 | { ... } | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2579:13:2579:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2579:14:2579:18 | S1 {...} | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2579:21:2579:25 | S1 {...} | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2581:16:2581:19 | SelfParam | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2581:22:2581:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2584:16:2618:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2585:13:2585:13 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2585:13:2585:13 | a | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2585:13:2585:13 | a | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2585:17:2585:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2585:17:2585:30 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2585:17:2585:30 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:17:2586:17 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2586:17:2586:17 | b | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:17:2586:17 | b | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:21:2586:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2586:21:2586:34 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:21:2586:34 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:13:2587:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2587:22:2587:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2587:22:2587:35 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:22:2587:35 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:13:2588:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2588:26:2588:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2588:26:2588:39 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:26:2588:39 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:13:2589:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2589:30:2589:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2589:30:2589:43 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:30:2589:43 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2591:9:2591:9 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2591:9:2591:9 | a | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2591:9:2591:9 | a | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2592:9:2592:9 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2592:9:2592:9 | b | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2592:9:2592:9 | b | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2605:13:2605:16 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2605:20:2605:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2606:13:2606:13 | i | | {EXTERNAL LOCATION} | i64 | -| main.rs:2606:22:2606:25 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2607:13:2607:13 | j | | {EXTERNAL LOCATION} | bool | -| main.rs:2607:23:2607:26 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2609:20:2609:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2611:13:2611:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2611:30:2611:41 | "unexpected" | | {EXTERNAL LOCATION} | & | -| main.rs:2611:30:2611:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2611:30:2611:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2611:30:2611:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2612:25:2612:34 | "expected" | | {EXTERNAL LOCATION} | & | -| main.rs:2612:25:2612:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2612:25:2612:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2612:25:2612:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2616:13:2616:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2616:17:2616:31 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2616:18:2616:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2616:18:2616:31 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2616:18:2616:31 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2617:9:2617:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2623:27:2645:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2624:13:2624:23 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2624:13:2624:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2624:27:2624:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2624:27:2624:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2624:36:2624:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2627:15:2627:25 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2627:15:2627:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2628:24:2630:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2629:26:2629:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2629:26:2629:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2629:26:2629:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2629:26:2629:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2631:22:2634:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2633:26:2633:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2633:26:2633:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2633:26:2633:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2633:26:2633:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2638:13:2638:22 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2638:13:2638:22 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:26:2638:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2638:26:2638:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:35:2638:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2638:35:2638:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:44:2638:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2639:15:2639:24 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2639:15:2639:24 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2640:26:2643:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2642:26:2642:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2642:26:2642:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2642:26:2642:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2642:26:2642:59 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2654:36:2656:9 | { ... } | | main.rs:2651:5:2651:22 | Path | -| main.rs:2655:13:2655:19 | Path {...} | | main.rs:2651:5:2651:22 | Path | -| main.rs:2658:29:2658:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2658:29:2658:33 | SelfParam | TRef | main.rs:2651:5:2651:22 | Path | -| main.rs:2658:59:2660:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:2658:59:2660:9 | { ... } | E | {EXTERNAL LOCATION} | () | -| main.rs:2658:59:2660:9 | { ... } | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2659:16:2659:29 | ...::new(...) | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2666:39:2668:9 | { ... } | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2667:13:2667:22 | PathBuf {...} | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2676:18:2676:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2676:18:2676:22 | SelfParam | TRef | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2676:34:2680:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2676:34:2680:9 | { ... } | TRef | main.rs:2651:5:2651:22 | Path | -| main.rs:2678:33:2678:43 | ...::new(...) | | main.rs:2651:5:2651:22 | Path | -| main.rs:2679:13:2679:17 | &path | | {EXTERNAL LOCATION} | & | -| main.rs:2683:16:2691:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2684:13:2684:17 | path1 | | main.rs:2651:5:2651:22 | Path | -| main.rs:2684:21:2684:31 | ...::new(...) | | main.rs:2651:5:2651:22 | Path | -| main.rs:2685:21:2685:25 | path1 | | main.rs:2651:5:2651:22 | Path | -| main.rs:2688:13:2688:20 | pathbuf1 | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2688:24:2688:37 | ...::new(...) | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2689:24:2689:31 | pathbuf1 | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2696:14:2696:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2696:14:2696:18 | SelfParam | TRef | main.rs:2695:5:2697:5 | Self [trait MyTrait] | -| main.rs:2703:14:2703:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2703:14:2703:18 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2703:14:2703:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2703:28:2705:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2704:13:2704:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2704:13:2704:16 | self | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2704:13:2704:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2709:14:2709:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2709:14:2709:18 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2709:14:2709:18 | SelfParam | TRef.T | main.rs:2699:5:2700:19 | S | -| main.rs:2709:14:2709:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2709:28:2711:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2710:13:2710:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2710:13:2710:16 | self | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2710:13:2710:16 | self | TRef.T | main.rs:2699:5:2700:19 | S | -| main.rs:2710:13:2710:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2715:15:2715:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2715:15:2715:19 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2715:15:2715:19 | SelfParam | TRef.T | main.rs:2714:10:2714:16 | T | -| main.rs:2715:33:2717:9 | { ... } | | main.rs:2699:5:2700:19 | S | -| main.rs:2715:33:2717:9 | { ... } | T | main.rs:2699:5:2700:19 | S | -| main.rs:2715:33:2717:9 | { ... } | T.T | main.rs:2714:10:2714:16 | T | -| main.rs:2716:17:2716:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2716:17:2716:20 | self | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2716:17:2716:20 | self | TRef.T | main.rs:2714:10:2714:16 | T | -| main.rs:2720:14:2720:14 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2720:48:2737:5 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2720:48:2737:5 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2720:48:2737:5 | { ... } | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2720:48:2737:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2721:20:2721:20 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2731:12:2731:12 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2733:13:2733:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2733:13:2733:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2735:13:2735:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2735:13:2735:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2741:22:2745:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2742:18:2742:18 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2742:33:2744:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2743:13:2743:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2750:11:2750:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2750:30:2758:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2753:13:2755:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2753:16:2753:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2753:21:2755:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2761:20:2768:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2766:18:2766:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2766:18:2766:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2766:18:2766:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2766:18:2766:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2770:20:2772:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2775:11:2775:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2775:30:2783:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2776:13:2776:13 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2776:17:2780:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2777:13:2779:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2777:16:2777:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2777:21:2779:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2781:18:2781:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2781:18:2781:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2781:18:2781:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2781:18:2781:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2781:29:2781:29 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2787:16:2834:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2789:13:2789:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2789:13:2789:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2793:26:2793:28 | opt | | {EXTERNAL LOCATION} | Option | -| main.rs:2793:26:2793:28 | opt | T | main.rs:2793:23:2793:23 | T | -| main.rs:2793:42:2793:42 | x | | main.rs:2793:23:2793:23 | T | -| main.rs:2793:48:2793:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2796:9:2796:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2803:13:2803:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2803:17:2803:39 | ...::A {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2804:13:2804:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2804:13:2804:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2804:13:2804:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2804:40:2804:40 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2805:13:2805:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2805:13:2805:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2805:17:2805:52 | ...::A {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2805:17:2805:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2807:13:2807:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2807:13:2807:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2807:17:2809:9 | ...::B::<...> {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2807:17:2809:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2808:20:2808:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2811:29:2811:29 | e | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2811:29:2811:29 | e | T1 | main.rs:2811:26:2811:26 | T | -| main.rs:2811:29:2811:29 | e | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2811:53:2811:53 | x | | main.rs:2811:26:2811:26 | T | -| main.rs:2811:59:2811:60 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2814:13:2814:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2814:17:2816:9 | ...::B {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2815:20:2815:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2817:9:2817:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2817:23:2817:23 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2820:13:2820:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2820:13:2820:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2379:15:2379:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2379:32:2381:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2380:13:2380:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2386:15:2386:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2386:31:2388:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2391:15:2391:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2391:32:2393:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:2392:13:2392:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2396:16:2421:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2397:13:2397:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2398:9:2398:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2398:18:2398:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2399:9:2399:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2399:18:2399:22 | &5i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2399:19:2399:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2400:9:2400:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2400:18:2400:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2402:11:2402:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2402:26:2402:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2403:11:2403:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2403:24:2403:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2404:11:2404:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2404:24:2404:28 | &3i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2404:25:2404:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2406:13:2406:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2406:17:2406:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2406:30:2406:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2407:13:2407:13 | y | | {EXTERNAL LOCATION} | i64 | +| main.rs:2407:17:2407:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2407:30:2407:33 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2408:13:2408:13 | z | | {EXTERNAL LOCATION} | i64 | +| main.rs:2408:38:2408:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2409:9:2409:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2409:23:2409:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2409:30:2409:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2410:9:2410:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2410:23:2410:26 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2410:29:2410:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2411:9:2411:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2411:27:2411:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2411:34:2411:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2413:9:2413:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2413:17:2413:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2414:9:2414:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2414:17:2414:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2415:9:2415:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2415:18:2415:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2416:9:2416:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2416:18:2416:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2417:9:2417:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2417:25:2417:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2418:25:2418:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2419:9:2419:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2419:25:2419:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2420:25:2420:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2428:26:2430:9 | { ... } | | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2429:13:2429:25 | MyCallable {...} | | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2432:17:2432:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2432:17:2432:21 | SelfParam | TRef | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2432:31:2434:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2437:16:2544:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2440:9:2440:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2440:18:2440:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2440:28:2440:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2441:9:2441:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2441:18:2441:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2441:43:2441:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2442:9:2442:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2442:18:2442:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2442:40:2442:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2444:13:2444:17 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2444:21:2444:31 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2444:22:2444:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2445:9:2445:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2445:18:2445:22 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2445:24:2445:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2447:13:2447:17 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2447:21:2447:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2447:22:2447:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2448:9:2448:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2448:18:2448:22 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2448:24:2448:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2450:13:2450:17 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2450:13:2450:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2450:31:2450:39 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2451:9:2451:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2451:18:2451:22 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2451:18:2451:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2451:24:2451:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2453:13:2453:17 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2453:13:2453:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2453:31:2453:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2454:9:2454:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2454:18:2454:22 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2454:18:2454:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2454:24:2454:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2456:17:2456:24 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2456:28:2456:48 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2456:29:2456:33 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2456:29:2456:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2456:36:2456:40 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2456:36:2456:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2456:43:2456:47 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2456:43:2456:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2457:9:2457:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2457:18:2457:26 | &strings1 | | {EXTERNAL LOCATION} | & | +| main.rs:2457:19:2457:26 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2457:28:2457:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2458:9:2458:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2458:18:2458:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | +| main.rs:2458:23:2458:30 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2458:32:2458:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2459:9:2459:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2459:18:2459:25 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2459:27:2459:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2461:13:2461:20 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2462:9:2466:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2463:13:2463:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2463:26:2463:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2463:26:2463:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2464:13:2464:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2464:26:2464:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2464:26:2464:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2465:13:2465:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2465:26:2465:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2465:26:2465:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2467:9:2467:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2467:18:2467:25 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2467:27:2467:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2469:13:2469:20 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2470:9:2474:9 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2470:10:2474:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2471:13:2471:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2471:26:2471:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2471:26:2471:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2472:13:2472:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2472:26:2472:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2472:26:2472:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2473:13:2473:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2473:26:2473:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2473:26:2473:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2475:9:2475:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2475:18:2475:25 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2475:27:2475:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2477:13:2477:21 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2477:25:2477:81 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2477:26:2477:42 | ...::new(...) | | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2477:45:2477:61 | ...::new(...) | | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2477:64:2477:80 | ...::new(...) | | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2478:9:2482:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2479:12:2479:20 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2480:9:2482:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2486:9:2486:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2486:18:2486:22 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2486:24:2486:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2487:9:2487:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2487:18:2487:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2487:19:2487:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2487:19:2487:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2487:28:2487:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2488:13:2488:17 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2488:21:2488:25 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2489:9:2489:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2489:18:2489:22 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2489:24:2489:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2490:13:2490:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2490:26:2490:27 | .. | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2491:9:2491:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2491:18:2491:48 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2491:19:2491:36 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2491:20:2491:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2491:26:2491:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2491:32:2491:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2491:38:2491:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2491:50:2491:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2493:13:2493:18 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2494:9:2497:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | +| main.rs:2495:20:2495:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2496:18:2496:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2498:9:2498:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2498:18:2498:23 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2498:25:2498:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2503:9:2503:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2503:24:2503:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2505:13:2505:18 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2505:13:2505:18 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2505:13:2505:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2505:32:2505:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2505:33:2505:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2506:9:2506:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2506:18:2506:23 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2506:18:2506:23 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2506:18:2506:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2506:25:2506:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2508:22:2508:33 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2508:23:2508:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2509:9:2509:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2509:25:2509:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2511:13:2511:17 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2511:21:2511:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2511:31:2511:42 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2511:32:2511:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2512:9:2512:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2512:18:2512:22 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2512:24:2512:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2514:13:2514:17 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2514:13:2514:17 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2514:13:2514:17 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2514:13:2514:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2514:32:2514:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2514:33:2514:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | +| main.rs:2515:9:2515:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2515:18:2515:22 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2515:18:2515:22 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2515:18:2515:22 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2515:18:2515:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2515:24:2515:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2517:17:2517:21 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2517:17:2517:21 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2517:25:2517:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2517:25:2517:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2518:9:2518:13 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2518:9:2518:13 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2518:20:2518:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2519:9:2519:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2519:18:2519:22 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2519:18:2519:22 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2519:24:2519:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2523:17:2526:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2524:13:2525:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2524:29:2525:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2528:17:2528:20 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2528:17:2528:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2528:24:2528:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2528:24:2528:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2529:9:2529:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2529:9:2529:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2529:24:2529:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2529:24:2529:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2529:33:2529:37 | "one" | | {EXTERNAL LOCATION} | & | +| main.rs:2529:33:2529:37 | "one" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2530:9:2530:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2530:9:2530:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2530:24:2530:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2530:24:2530:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2530:33:2530:37 | "two" | | {EXTERNAL LOCATION} | & | +| main.rs:2530:33:2530:37 | "two" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2531:9:2531:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2531:20:2531:23 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2531:20:2531:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2531:32:2531:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2532:9:2532:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2532:22:2532:25 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2532:22:2532:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2532:36:2532:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2533:9:2533:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2533:13:2533:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2533:29:2533:32 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2533:29:2533:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2533:41:2533:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2534:9:2534:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2534:13:2534:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2534:29:2534:33 | &map1 | | {EXTERNAL LOCATION} | & | +| main.rs:2534:30:2534:33 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2534:30:2534:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2534:35:2534:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2538:17:2538:17 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2540:17:2543:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2540:23:2540:23 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2541:9:2543:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2542:13:2542:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2554:40:2556:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:2554:40:2556:9 | { ... } | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2554:40:2556:9 | { ... } | T.T | main.rs:2553:10:2553:19 | T | +| main.rs:2558:30:2560:9 | { ... } | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2558:30:2560:9 | { ... } | T | main.rs:2553:10:2553:19 | T | +| main.rs:2562:19:2562:22 | SelfParam | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2562:19:2562:22 | SelfParam | T | main.rs:2553:10:2553:19 | T | +| main.rs:2562:33:2564:9 | { ... } | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2562:33:2564:9 | { ... } | T | main.rs:2553:10:2553:19 | T | +| main.rs:2563:13:2563:16 | self | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2563:13:2563:16 | self | T | main.rs:2553:10:2553:19 | T | +| main.rs:2575:15:2575:15 | x | | main.rs:2575:12:2575:12 | T | +| main.rs:2575:26:2577:5 | { ... } | | main.rs:2575:12:2575:12 | T | +| main.rs:2576:9:2576:9 | x | | main.rs:2575:12:2575:12 | T | +| main.rs:2579:16:2601:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2580:13:2580:14 | x1 | | {EXTERNAL LOCATION} | Option | +| main.rs:2580:13:2580:14 | x1 | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2580:13:2580:14 | x1 | T.T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2580:34:2580:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2580:34:2580:48 | ...::assoc_fun(...) | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2581:13:2581:14 | x2 | | {EXTERNAL LOCATION} | Option | +| main.rs:2581:13:2581:14 | x2 | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2581:13:2581:14 | x2 | T.T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2581:18:2581:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2581:18:2581:38 | ...::assoc_fun(...) | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2581:18:2581:38 | ...::assoc_fun(...) | T.T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2582:13:2582:14 | x3 | | {EXTERNAL LOCATION} | Option | +| main.rs:2582:13:2582:14 | x3 | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2582:13:2582:14 | x3 | T.T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2582:18:2582:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2582:18:2582:32 | ...::assoc_fun(...) | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2582:18:2582:32 | ...::assoc_fun(...) | T.T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2583:13:2583:14 | x4 | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2583:13:2583:14 | x4 | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2583:18:2583:48 | ...::method(...) | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2583:18:2583:48 | ...::method(...) | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2583:35:2583:47 | ...::default(...) | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2584:13:2584:14 | x5 | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2584:13:2584:14 | x5 | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2584:18:2584:42 | ...::method(...) | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2584:18:2584:42 | ...::method(...) | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2584:29:2584:41 | ...::default(...) | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2588:21:2588:33 | ...::default(...) | | main.rs:2550:5:2551:14 | S2 | +| main.rs:2589:13:2589:15 | x10 | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2589:13:2589:15 | x10 | T5 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2589:19:2592:9 | S5::<...> {...} | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2589:19:2592:9 | S5::<...> {...} | T5 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2593:13:2593:15 | x11 | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2593:19:2593:34 | S5 {...} | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2594:13:2594:15 | x12 | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2594:19:2594:33 | S5 {...} | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2595:13:2595:15 | x13 | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2595:19:2598:9 | S5 {...} | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2597:20:2597:32 | ...::default(...) | | main.rs:2550:5:2551:14 | S2 | +| main.rs:2599:13:2599:15 | x14 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2599:19:2599:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2600:13:2600:15 | x15 | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2600:13:2600:15 | x15 | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2600:19:2600:37 | ...::default(...) | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2600:19:2600:37 | ...::default(...) | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2609:35:2611:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2609:35:2611:9 | { ... } | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2609:35:2611:9 | { ... } | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2610:13:2610:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2610:14:2610:18 | S1 {...} | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2610:21:2610:25 | S1 {...} | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2612:16:2612:19 | SelfParam | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2612:22:2612:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2615:16:2649:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2616:13:2616:13 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2616:13:2616:13 | a | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2616:13:2616:13 | a | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2616:17:2616:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2616:17:2616:30 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2616:17:2616:30 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2617:17:2617:17 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2617:17:2617:17 | b | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2617:17:2617:17 | b | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2617:21:2617:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2617:21:2617:34 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2617:21:2617:34 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2618:13:2618:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2618:22:2618:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2618:22:2618:35 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2618:22:2618:35 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2619:13:2619:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2619:26:2619:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2619:26:2619:39 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2619:26:2619:39 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2620:13:2620:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2620:30:2620:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2620:30:2620:43 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2620:30:2620:43 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2622:9:2622:9 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2622:9:2622:9 | a | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2622:9:2622:9 | a | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2623:9:2623:9 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2623:9:2623:9 | b | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2623:9:2623:9 | b | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2636:13:2636:16 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2636:20:2636:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2637:13:2637:13 | i | | {EXTERNAL LOCATION} | i64 | +| main.rs:2637:22:2637:25 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2638:13:2638:13 | j | | {EXTERNAL LOCATION} | bool | +| main.rs:2638:23:2638:26 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2640:20:2640:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2642:13:2642:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2642:30:2642:41 | "unexpected" | | {EXTERNAL LOCATION} | & | +| main.rs:2642:30:2642:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2642:30:2642:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2642:30:2642:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2643:25:2643:34 | "expected" | | {EXTERNAL LOCATION} | & | +| main.rs:2643:25:2643:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2643:25:2643:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2643:25:2643:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2647:13:2647:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2647:17:2647:31 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2647:18:2647:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2647:18:2647:31 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2647:18:2647:31 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2648:9:2648:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2654:27:2676:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2655:13:2655:23 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2655:13:2655:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2655:27:2655:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2655:27:2655:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2655:36:2655:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2658:15:2658:25 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2658:15:2658:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2659:24:2661:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2660:26:2660:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2660:26:2660:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2660:26:2660:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2660:26:2660:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2662:22:2665:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2664:26:2664:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2664:26:2664:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2664:26:2664:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2664:26:2664:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2669:13:2669:22 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2669:13:2669:22 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2669:26:2669:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2669:26:2669:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2669:35:2669:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2669:35:2669:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2669:44:2669:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2670:15:2670:24 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2670:15:2670:24 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2671:26:2674:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2673:26:2673:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2673:26:2673:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2673:26:2673:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2673:26:2673:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2685:36:2687:9 | { ... } | | main.rs:2682:5:2682:22 | Path | +| main.rs:2686:13:2686:19 | Path {...} | | main.rs:2682:5:2682:22 | Path | +| main.rs:2689:29:2689:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2689:29:2689:33 | SelfParam | TRef | main.rs:2682:5:2682:22 | Path | +| main.rs:2689:59:2691:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:2689:59:2691:9 | { ... } | E | {EXTERNAL LOCATION} | () | +| main.rs:2689:59:2691:9 | { ... } | T | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2690:16:2690:29 | ...::new(...) | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2697:39:2699:9 | { ... } | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2698:13:2698:22 | PathBuf {...} | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2707:18:2707:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2707:18:2707:22 | SelfParam | TRef | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2707:34:2711:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2707:34:2711:9 | { ... } | TRef | main.rs:2682:5:2682:22 | Path | +| main.rs:2709:33:2709:43 | ...::new(...) | | main.rs:2682:5:2682:22 | Path | +| main.rs:2710:13:2710:17 | &path | | {EXTERNAL LOCATION} | & | +| main.rs:2714:16:2722:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2715:13:2715:17 | path1 | | main.rs:2682:5:2682:22 | Path | +| main.rs:2715:21:2715:31 | ...::new(...) | | main.rs:2682:5:2682:22 | Path | +| main.rs:2716:21:2716:25 | path1 | | main.rs:2682:5:2682:22 | Path | +| main.rs:2719:13:2719:20 | pathbuf1 | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2719:24:2719:37 | ...::new(...) | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2720:24:2720:31 | pathbuf1 | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2727:14:2727:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2727:14:2727:18 | SelfParam | TRef | main.rs:2726:5:2728:5 | Self [trait MyTrait] | +| main.rs:2734:14:2734:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2734:14:2734:18 | SelfParam | TRef | main.rs:2730:5:2731:19 | S | +| main.rs:2734:14:2734:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2734:28:2736:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2735:13:2735:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2735:13:2735:16 | self | TRef | main.rs:2730:5:2731:19 | S | +| main.rs:2735:13:2735:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2740:14:2740:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2740:14:2740:18 | SelfParam | TRef | main.rs:2730:5:2731:19 | S | +| main.rs:2740:14:2740:18 | SelfParam | TRef.T | main.rs:2730:5:2731:19 | S | +| main.rs:2740:14:2740:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2740:28:2742:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2741:13:2741:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2741:13:2741:16 | self | TRef | main.rs:2730:5:2731:19 | S | +| main.rs:2741:13:2741:16 | self | TRef.T | main.rs:2730:5:2731:19 | S | +| main.rs:2741:13:2741:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2746:15:2746:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2746:15:2746:19 | SelfParam | TRef | main.rs:2730:5:2731:19 | S | +| main.rs:2746:15:2746:19 | SelfParam | TRef.T | main.rs:2745:10:2745:16 | T | +| main.rs:2746:33:2748:9 | { ... } | | main.rs:2730:5:2731:19 | S | +| main.rs:2746:33:2748:9 | { ... } | T | main.rs:2730:5:2731:19 | S | +| main.rs:2746:33:2748:9 | { ... } | T.T | main.rs:2745:10:2745:16 | T | +| main.rs:2747:17:2747:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2747:17:2747:20 | self | TRef | main.rs:2730:5:2731:19 | S | +| main.rs:2747:17:2747:20 | self | TRef.T | main.rs:2745:10:2745:16 | T | +| main.rs:2751:14:2751:14 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2751:48:2768:5 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2751:48:2768:5 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2751:48:2768:5 | { ... } | T | main.rs:2726:5:2728:5 | dyn MyTrait | +| main.rs:2751:48:2768:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2752:20:2752:20 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2762:12:2762:12 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2764:13:2764:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2764:13:2764:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2766:13:2766:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2766:13:2766:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2772:22:2776:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2773:18:2773:18 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2773:33:2775:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2774:13:2774:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2781:11:2781:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2781:30:2789:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2784:13:2786:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2784:16:2784:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2784:21:2786:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2792:20:2799:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2797:18:2797:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2797:18:2797:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2797:18:2797:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2797:18:2797:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2801:20:2803:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2806:11:2806:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2806:30:2814:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2807:13:2807:13 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2807:17:2811:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2808:13:2810:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2808:16:2808:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2808:21:2810:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2812:18:2812:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2812:18:2812:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2812:18:2812:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2812:18:2812:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2812:29:2812:29 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2818:16:2865:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2820:13:2820:13 | x | | {EXTERNAL LOCATION} | Option | | main.rs:2820:13:2820:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2824:29:2824:31 | res | | {EXTERNAL LOCATION} | Result | -| main.rs:2824:29:2824:31 | res | E | main.rs:2824:26:2824:26 | E | -| main.rs:2824:29:2824:31 | res | T | main.rs:2824:23:2824:23 | T | -| main.rs:2824:48:2824:48 | x | | main.rs:2824:26:2824:26 | E | -| main.rs:2824:54:2824:55 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2827:9:2827:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2827:23:2827:27 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:2829:17:2829:17 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2829:17:2829:17 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2829:21:2829:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2829:21:2829:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2830:9:2830:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2830:9:2830:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2833:9:2833:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2833:9:2833:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2840:14:2840:17 | SelfParam | | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2843:14:2843:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2843:14:2843:18 | SelfParam | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2843:21:2843:25 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2843:21:2843:25 | other | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2843:44:2845:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2843:44:2845:9 | { ... } | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2844:13:2844:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2844:13:2844:16 | self | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2850:14:2850:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | -| main.rs:2850:28:2852:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2851:13:2851:16 | self | | {EXTERNAL LOCATION} | i32 | -| main.rs:2857:14:2857:17 | SelfParam | | {EXTERNAL LOCATION} | usize | -| main.rs:2857:28:2859:9 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2858:13:2858:16 | self | | {EXTERNAL LOCATION} | usize | -| main.rs:2864:14:2864:17 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2864:14:2864:17 | SelfParam | TRef | main.rs:2862:10:2862:10 | T | -| main.rs:2864:28:2866:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2864:28:2866:9 | { ... } | TRef | main.rs:2862:10:2862:10 | T | -| main.rs:2865:13:2865:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2865:13:2865:16 | self | TRef | main.rs:2862:10:2862:10 | T | -| main.rs:2869:25:2873:5 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2875:12:2883:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2876:13:2876:13 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2877:13:2877:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2877:17:2877:18 | &1 | | {EXTERNAL LOCATION} | & | -| main.rs:2878:17:2878:17 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2878:21:2878:21 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2881:13:2881:13 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2882:23:2882:23 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2892:11:2927:1 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2893:5:2893:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2894:5:2894:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2895:5:2895:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2895:20:2895:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2895:41:2895:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2896:5:2896:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2897:5:2897:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2898:5:2898:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2899:5:2899:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2900:5:2900:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2901:5:2901:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2902:5:2902:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2903:5:2903:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2904:5:2904:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2905:5:2905:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2906:5:2906:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2907:5:2907:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2908:5:2908:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2909:5:2909:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2910:5:2910:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2911:5:2911:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2911:5:2911:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2912:5:2912:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2913:5:2913:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2914:5:2914:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2915:5:2915:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2916:5:2916:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2917:5:2917:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2918:5:2918:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2919:5:2919:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2920:5:2920:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2921:5:2921:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2922:5:2922:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2923:5:2923:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2924:5:2924:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2925:5:2925:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2925:5:2925:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2925:5:2925:20 | ...::f(...) | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2925:5:2925:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2925:16:2925:19 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2926:5:2926:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2824:26:2824:28 | opt | | {EXTERNAL LOCATION} | Option | +| main.rs:2824:26:2824:28 | opt | T | main.rs:2824:23:2824:23 | T | +| main.rs:2824:42:2824:42 | x | | main.rs:2824:23:2824:23 | T | +| main.rs:2824:48:2824:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2827:9:2827:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2834:13:2834:13 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2834:17:2834:39 | ...::A {...} | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2835:13:2835:13 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2835:13:2835:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2835:13:2835:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2835:40:2835:40 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2836:13:2836:13 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2836:13:2836:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2836:17:2836:52 | ...::A {...} | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2836:17:2836:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2838:13:2838:13 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2838:13:2838:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2838:17:2840:9 | ...::B::<...> {...} | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2838:17:2840:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2839:20:2839:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2842:29:2842:29 | e | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2842:29:2842:29 | e | T1 | main.rs:2842:26:2842:26 | T | +| main.rs:2842:29:2842:29 | e | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2842:53:2842:53 | x | | main.rs:2842:26:2842:26 | T | +| main.rs:2842:59:2842:60 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2845:13:2845:13 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2845:17:2847:9 | ...::B {...} | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2846:20:2846:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2848:9:2848:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2848:23:2848:23 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2851:13:2851:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2851:13:2851:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2851:13:2851:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2855:29:2855:31 | res | | {EXTERNAL LOCATION} | Result | +| main.rs:2855:29:2855:31 | res | E | main.rs:2855:26:2855:26 | E | +| main.rs:2855:29:2855:31 | res | T | main.rs:2855:23:2855:23 | T | +| main.rs:2855:48:2855:48 | x | | main.rs:2855:26:2855:26 | E | +| main.rs:2855:54:2855:55 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2858:9:2858:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2858:23:2858:27 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:2860:17:2860:17 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2860:17:2860:17 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2860:21:2860:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2860:21:2860:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2861:9:2861:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2861:9:2861:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2864:9:2864:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2864:9:2864:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2871:14:2871:17 | SelfParam | | main.rs:2869:5:2877:5 | Self [trait MyTrait] | +| main.rs:2874:14:2874:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2874:14:2874:18 | SelfParam | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | +| main.rs:2874:21:2874:25 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2874:21:2874:25 | other | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | +| main.rs:2874:44:2876:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2874:44:2876:9 | { ... } | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | +| main.rs:2875:13:2875:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2875:13:2875:16 | self | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | +| main.rs:2881:14:2881:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| main.rs:2881:28:2883:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2882:13:2882:16 | self | | {EXTERNAL LOCATION} | i32 | +| main.rs:2888:14:2888:17 | SelfParam | | {EXTERNAL LOCATION} | usize | +| main.rs:2888:28:2890:9 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2889:13:2889:16 | self | | {EXTERNAL LOCATION} | usize | +| main.rs:2895:14:2895:17 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2895:14:2895:17 | SelfParam | TRef | main.rs:2893:10:2893:10 | T | +| main.rs:2895:28:2897:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2895:28:2897:9 | { ... } | TRef | main.rs:2893:10:2893:10 | T | +| main.rs:2896:13:2896:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2896:13:2896:16 | self | TRef | main.rs:2893:10:2893:10 | T | +| main.rs:2900:25:2904:5 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2906:12:2914:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2907:13:2907:13 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2908:13:2908:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2908:17:2908:18 | &1 | | {EXTERNAL LOCATION} | & | +| main.rs:2909:17:2909:17 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2909:21:2909:21 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2912:13:2912:13 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2913:23:2913:23 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2923:11:2958:1 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2924:5:2924:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2925:5:2925:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2926:5:2926:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2926:20:2926:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2926:41:2926:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2927:5:2927:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2928:5:2928:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2929:5:2929:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2930:5:2930:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2931:5:2931:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2932:5:2932:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2933:5:2933:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2934:5:2934:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2935:5:2935:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2936:5:2936:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2937:5:2937:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2938:5:2938:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2939:5:2939:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2940:5:2940:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2941:5:2941:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2942:5:2942:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2942:5:2942:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2943:5:2943:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2944:5:2944:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2945:5:2945:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2946:5:2946:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2947:5:2947:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2948:5:2948:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2949:5:2949:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2950:5:2950:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2951:5:2951:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2952:5:2952:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2953:5:2953:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2954:5:2954:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2955:5:2955:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2956:5:2956:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2956:5:2956:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2956:5:2956:20 | ...::f(...) | T | main.rs:2726:5:2728:5 | dyn MyTrait | +| main.rs:2956:5:2956:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2956:16:2956:19 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2957:5:2957:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:13:26:133:1 | { ... } | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:13:26:133:1 | { ... } | T | {EXTERNAL LOCATION} | () | | pattern_matching.rs:15:5:18:5 | if ... {...} | | {EXTERNAL LOCATION} | () | @@ -6799,7 +6819,7 @@ inferType | main.rs:121:39:123:9 | { ... } | | {EXTERNAL LOCATION} | bool | | main.rs:122:13:122:16 | self | | main.rs:110:5:113:5 | MyThing | | main.rs:122:13:122:22 | self.field | | {EXTERNAL LOCATION} | bool | -| main.rs:126:16:132:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:126:16:135:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:127:13:127:13 | x | | main.rs:110:5:113:5 | MyThing | | main.rs:127:17:127:39 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | | main.rs:127:34:127:37 | true | | {EXTERNAL LOCATION} | bool | @@ -6812,5331 +6832,5373 @@ inferType | main.rs:131:13:131:13 | b | | {EXTERNAL LOCATION} | bool | | main.rs:131:17:131:40 | ...::trait_method(...) | | {EXTERNAL LOCATION} | bool | | main.rs:131:39:131:39 | y | | main.rs:110:5:113:5 | MyThing | -| main.rs:141:25:141:29 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:141:25:141:29 | SelfParam | TRef | main.rs:139:9:144:9 | Self [trait Foo] | -| main.rs:141:32:143:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:142:17:142:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:142:26:142:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:142:26:142:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:142:26:142:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:142:26:142:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:142:26:142:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:148:25:148:29 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:148:25:148:29 | SelfParam | TRef | main.rs:146:9:151:9 | Self [trait Bar] | -| main.rs:148:32:150:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:149:17:149:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:149:26:149:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:149:26:149:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:149:26:149:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:149:26:149:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:149:26:149:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:160:15:181:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:161:13:161:13 | x | | main.rs:153:9:153:21 | X | -| main.rs:161:17:161:17 | X | | main.rs:153:9:153:21 | X | -| main.rs:162:9:165:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:164:13:164:13 | x | | main.rs:153:9:153:21 | X | -| main.rs:164:13:164:24 | x.a_method() | | {EXTERNAL LOCATION} | () | -| main.rs:166:9:169:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:168:13:168:13 | x | | main.rs:153:9:153:21 | X | -| main.rs:168:13:168:24 | x.a_method() | | {EXTERNAL LOCATION} | () | -| main.rs:170:9:173:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:172:13:172:13 | x | | main.rs:153:9:153:21 | X | -| main.rs:172:13:172:24 | x.a_method() | | {EXTERNAL LOCATION} | () | -| main.rs:174:9:180:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:178:13:178:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | -| main.rs:178:27:178:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:178:27:178:28 | &x | TRef | main.rs:153:9:153:21 | X | -| main.rs:178:28:178:28 | x | | main.rs:153:9:153:21 | X | -| main.rs:179:13:179:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | -| main.rs:179:27:179:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:179:27:179:28 | &x | TRef | main.rs:153:9:153:21 | X | -| main.rs:179:28:179:28 | x | | main.rs:153:9:153:21 | X | -| main.rs:197:15:197:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | -| main.rs:197:15:197:18 | SelfParam | A | main.rs:190:5:191:14 | S1 | -| main.rs:197:27:199:9 | { ... } | | main.rs:190:5:191:14 | S1 | -| main.rs:198:13:198:16 | self | | main.rs:185:5:188:5 | MyThing | -| main.rs:198:13:198:16 | self | A | main.rs:190:5:191:14 | S1 | -| main.rs:198:13:198:18 | self.a | | main.rs:190:5:191:14 | S1 | -| main.rs:204:15:204:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | -| main.rs:204:15:204:18 | SelfParam | A | main.rs:192:5:193:14 | S2 | -| main.rs:204:29:206:9 | { ... } | | main.rs:185:5:188:5 | MyThing | -| main.rs:204:29:206:9 | { ... } | A | main.rs:192:5:193:14 | S2 | -| main.rs:205:13:205:30 | Self {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:205:13:205:30 | Self {...} | A | main.rs:192:5:193:14 | S2 | -| main.rs:205:23:205:26 | self | | main.rs:185:5:188:5 | MyThing | -| main.rs:205:23:205:26 | self | A | main.rs:192:5:193:14 | S2 | -| main.rs:205:23:205:28 | self.a | | main.rs:192:5:193:14 | S2 | -| main.rs:210:15:210:18 | SelfParam | | main.rs:185:5:188:5 | MyThing | -| main.rs:210:15:210:18 | SelfParam | A | main.rs:209:10:209:10 | T | -| main.rs:210:26:212:9 | { ... } | | main.rs:209:10:209:10 | T | -| main.rs:211:13:211:16 | self | | main.rs:185:5:188:5 | MyThing | -| main.rs:211:13:211:16 | self | A | main.rs:209:10:209:10 | T | -| main.rs:211:13:211:18 | self.a | | main.rs:209:10:209:10 | T | -| main.rs:215:16:231:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:216:13:216:13 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:216:13:216:13 | x | A | main.rs:190:5:191:14 | S1 | -| main.rs:216:17:216:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:216:17:216:33 | MyThing {...} | A | main.rs:190:5:191:14 | S1 | -| main.rs:216:30:216:31 | S1 | | main.rs:190:5:191:14 | S1 | -| main.rs:217:13:217:13 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:217:13:217:13 | y | A | main.rs:192:5:193:14 | S2 | -| main.rs:217:17:217:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:217:17:217:33 | MyThing {...} | A | main.rs:192:5:193:14 | S2 | -| main.rs:217:30:217:31 | S2 | | main.rs:192:5:193:14 | S2 | -| main.rs:220:9:220:29 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:220:18:220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:220:18:220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:220:18:220:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:220:18:220:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:220:18:220:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:220:26:220:26 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:220:26:220:26 | x | A | main.rs:190:5:191:14 | S1 | -| main.rs:220:26:220:28 | x.a | | main.rs:190:5:191:14 | S1 | -| main.rs:221:9:221:29 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:221:18:221:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:221:18:221:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:221:18:221:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:221:18:221:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:221:18:221:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:221:26:221:26 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:221:26:221:26 | y | A | main.rs:192:5:193:14 | S2 | -| main.rs:221:26:221:28 | y.a | | main.rs:192:5:193:14 | S2 | -| main.rs:223:9:223:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:223:18:223:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:223:18:223:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:223:18:223:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:223:18:223:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:223:18:223:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:223:26:223:26 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:223:26:223:26 | x | A | main.rs:190:5:191:14 | S1 | -| main.rs:223:26:223:31 | x.m1() | | main.rs:190:5:191:14 | S1 | -| main.rs:224:9:224:34 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:224:18:224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:224:18:224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:224:18:224:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:224:18:224:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:224:18:224:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:224:26:224:26 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:224:26:224:26 | y | A | main.rs:192:5:193:14 | S2 | -| main.rs:224:26:224:31 | y.m1() | | main.rs:185:5:188:5 | MyThing | -| main.rs:224:26:224:31 | y.m1() | A | main.rs:192:5:193:14 | S2 | -| main.rs:224:26:224:33 | ... .a | | main.rs:192:5:193:14 | S2 | -| main.rs:226:13:226:13 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:226:13:226:13 | x | A | main.rs:190:5:191:14 | S1 | -| main.rs:226:17:226:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:226:17:226:33 | MyThing {...} | A | main.rs:190:5:191:14 | S1 | -| main.rs:226:30:226:31 | S1 | | main.rs:190:5:191:14 | S1 | -| main.rs:227:13:227:13 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:227:13:227:13 | y | A | main.rs:192:5:193:14 | S2 | -| main.rs:227:17:227:33 | MyThing {...} | | main.rs:185:5:188:5 | MyThing | -| main.rs:227:17:227:33 | MyThing {...} | A | main.rs:192:5:193:14 | S2 | -| main.rs:227:30:227:31 | S2 | | main.rs:192:5:193:14 | S2 | -| main.rs:229:9:229:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:229:18:229:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:229:18:229:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:229:18:229:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:229:18:229:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:229:18:229:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:229:26:229:26 | x | | main.rs:185:5:188:5 | MyThing | -| main.rs:229:26:229:26 | x | A | main.rs:190:5:191:14 | S1 | -| main.rs:229:26:229:31 | x.m2() | | main.rs:190:5:191:14 | S1 | -| main.rs:230:9:230:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:230:18:230:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:230:18:230:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:230:18:230:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:230:18:230:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:230:18:230:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:230:26:230:26 | y | | main.rs:185:5:188:5 | MyThing | -| main.rs:230:26:230:26 | y | A | main.rs:192:5:193:14 | S2 | -| main.rs:230:26:230:31 | y.m2() | | main.rs:192:5:193:14 | S2 | -| main.rs:254:15:254:18 | SelfParam | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:256:15:256:18 | SelfParam | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:259:9:261:9 | { ... } | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:260:13:260:16 | self | | main.rs:253:5:262:5 | Self [trait MyTrait] | -| main.rs:266:16:266:19 | SelfParam | | main.rs:264:5:269:5 | Self [trait MyProduct] | -| main.rs:268:16:268:19 | SelfParam | | main.rs:264:5:269:5 | Self [trait MyProduct] | -| main.rs:271:43:271:43 | x | | main.rs:271:26:271:40 | T2 | -| main.rs:271:56:273:5 | { ... } | | main.rs:271:22:271:23 | T1 | -| main.rs:272:9:272:9 | x | | main.rs:271:26:271:40 | T2 | -| main.rs:272:9:272:14 | x.m1() | | main.rs:271:22:271:23 | T1 | -| main.rs:277:15:277:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | -| main.rs:277:15:277:18 | SelfParam | A | main.rs:246:5:247:14 | S1 | -| main.rs:277:27:279:9 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:278:13:278:16 | self | | main.rs:235:5:238:5 | MyThing | -| main.rs:278:13:278:16 | self | A | main.rs:246:5:247:14 | S1 | -| main.rs:278:13:278:18 | self.a | | main.rs:246:5:247:14 | S1 | -| main.rs:284:15:284:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | -| main.rs:284:15:284:18 | SelfParam | A | main.rs:248:5:249:14 | S2 | -| main.rs:284:29:286:9 | { ... } | | main.rs:235:5:238:5 | MyThing | -| main.rs:284:29:286:9 | { ... } | A | main.rs:248:5:249:14 | S2 | -| main.rs:285:13:285:30 | Self {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:285:13:285:30 | Self {...} | A | main.rs:248:5:249:14 | S2 | -| main.rs:285:23:285:26 | self | | main.rs:235:5:238:5 | MyThing | -| main.rs:285:23:285:26 | self | A | main.rs:248:5:249:14 | S2 | -| main.rs:285:23:285:28 | self.a | | main.rs:248:5:249:14 | S2 | -| main.rs:296:15:296:18 | SelfParam | | main.rs:235:5:238:5 | MyThing | -| main.rs:296:15:296:18 | SelfParam | A | main.rs:250:5:251:14 | S3 | -| main.rs:296:27:298:9 | { ... } | | main.rs:291:10:291:11 | TD | -| main.rs:297:13:297:25 | ...::default(...) | | main.rs:291:10:291:11 | TD | -| main.rs:303:15:303:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:303:15:303:18 | SelfParam | P1 | main.rs:301:10:301:10 | I | -| main.rs:303:15:303:18 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:303:26:305:9 | { ... } | | main.rs:301:10:301:10 | I | -| main.rs:304:13:304:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:304:13:304:16 | self | P1 | main.rs:301:10:301:10 | I | -| main.rs:304:13:304:16 | self | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:304:13:304:19 | self.p1 | | main.rs:301:10:301:10 | I | -| main.rs:310:15:310:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:310:15:310:18 | SelfParam | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:310:15:310:18 | SelfParam | P2 | main.rs:248:5:249:14 | S2 | -| main.rs:310:27:312:9 | { ... } | | main.rs:250:5:251:14 | S3 | -| main.rs:311:13:311:14 | S3 | | main.rs:250:5:251:14 | S3 | -| main.rs:317:15:317:18 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:317:15:317:18 | SelfParam | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:317:15:317:18 | SelfParam | P1.A | main.rs:315:10:315:11 | TT | -| main.rs:317:15:317:18 | SelfParam | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:317:27:320:9 | { ... } | | main.rs:315:10:315:11 | TT | -| main.rs:318:17:318:21 | alpha | | main.rs:235:5:238:5 | MyThing | -| main.rs:318:17:318:21 | alpha | A | main.rs:315:10:315:11 | TT | -| main.rs:318:25:318:28 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:318:25:318:28 | self | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:318:25:318:28 | self | P1.A | main.rs:315:10:315:11 | TT | -| main.rs:318:25:318:28 | self | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:318:25:318:31 | self.p1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:318:25:318:31 | self.p1 | A | main.rs:315:10:315:11 | TT | -| main.rs:319:13:319:17 | alpha | | main.rs:235:5:238:5 | MyThing | -| main.rs:319:13:319:17 | alpha | A | main.rs:315:10:315:11 | TT | -| main.rs:319:13:319:19 | alpha.a | | main.rs:315:10:315:11 | TT | -| main.rs:326:16:326:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:326:16:326:19 | SelfParam | P1 | main.rs:324:10:324:10 | A | -| main.rs:326:16:326:19 | SelfParam | P2 | main.rs:324:10:324:10 | A | -| main.rs:326:27:328:9 | { ... } | | main.rs:324:10:324:10 | A | -| main.rs:327:13:327:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:327:13:327:16 | self | P1 | main.rs:324:10:324:10 | A | -| main.rs:327:13:327:16 | self | P2 | main.rs:324:10:324:10 | A | -| main.rs:327:13:327:19 | self.p1 | | main.rs:324:10:324:10 | A | -| main.rs:331:16:331:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:331:16:331:19 | SelfParam | P1 | main.rs:324:10:324:10 | A | -| main.rs:331:16:331:19 | SelfParam | P2 | main.rs:324:10:324:10 | A | -| main.rs:331:27:333:9 | { ... } | | main.rs:324:10:324:10 | A | -| main.rs:332:13:332:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:332:13:332:16 | self | P1 | main.rs:324:10:324:10 | A | -| main.rs:332:13:332:16 | self | P2 | main.rs:324:10:324:10 | A | -| main.rs:332:13:332:19 | self.p2 | | main.rs:324:10:324:10 | A | -| main.rs:339:16:339:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:339:16:339:19 | SelfParam | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:339:16:339:19 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:339:28:341:9 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:340:13:340:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:340:13:340:16 | self | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:340:13:340:16 | self | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:340:13:340:19 | self.p2 | | main.rs:246:5:247:14 | S1 | -| main.rs:344:16:344:19 | SelfParam | | main.rs:240:5:244:5 | MyPair | -| main.rs:344:16:344:19 | SelfParam | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:344:16:344:19 | SelfParam | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:344:28:346:9 | { ... } | | main.rs:248:5:249:14 | S2 | -| main.rs:345:13:345:16 | self | | main.rs:240:5:244:5 | MyPair | -| main.rs:345:13:345:16 | self | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:345:13:345:16 | self | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:345:13:345:19 | self.p1 | | main.rs:248:5:249:14 | S2 | -| main.rs:349:46:349:46 | p | | main.rs:349:24:349:43 | P | -| main.rs:349:58:351:5 | { ... } | | main.rs:349:16:349:17 | V1 | -| main.rs:350:9:350:9 | p | | main.rs:349:24:349:43 | P | -| main.rs:350:9:350:15 | p.fst() | | main.rs:349:16:349:17 | V1 | -| main.rs:353:46:353:46 | p | | main.rs:353:24:353:43 | P | -| main.rs:353:58:355:5 | { ... } | | main.rs:353:20:353:21 | V2 | -| main.rs:354:9:354:9 | p | | main.rs:353:24:353:43 | P | -| main.rs:354:9:354:15 | p.snd() | | main.rs:353:20:353:21 | V2 | -| main.rs:357:54:357:54 | p | | main.rs:240:5:244:5 | MyPair | -| main.rs:357:54:357:54 | p | P1 | main.rs:357:20:357:21 | V0 | -| main.rs:357:54:357:54 | p | P2 | main.rs:357:32:357:51 | P | -| main.rs:357:78:359:5 | { ... } | | main.rs:357:24:357:25 | V1 | -| main.rs:358:9:358:9 | p | | main.rs:240:5:244:5 | MyPair | -| main.rs:358:9:358:9 | p | P1 | main.rs:357:20:357:21 | V0 | -| main.rs:358:9:358:9 | p | P2 | main.rs:357:32:357:51 | P | -| main.rs:358:9:358:12 | p.p2 | | main.rs:357:32:357:51 | P | -| main.rs:358:9:358:18 | ... .fst() | | main.rs:357:24:357:25 | V1 | -| main.rs:363:23:363:26 | SelfParam | | main.rs:361:5:364:5 | Self [trait ConvertTo] | -| main.rs:368:23:368:26 | SelfParam | | main.rs:366:10:366:23 | T | -| main.rs:368:35:370:9 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:369:13:369:16 | self | | main.rs:366:10:366:23 | T | -| main.rs:369:13:369:21 | self.m1() | | main.rs:246:5:247:14 | S1 | -| main.rs:373:41:373:45 | thing | | main.rs:373:23:373:38 | T | -| main.rs:373:57:375:5 | { ... } | | main.rs:373:19:373:20 | TS | -| main.rs:374:9:374:13 | thing | | main.rs:373:23:373:38 | T | -| main.rs:374:9:374:26 | thing.convert_to() | | main.rs:373:19:373:20 | TS | -| main.rs:377:56:377:60 | thing | | main.rs:377:39:377:53 | TP | -| main.rs:377:73:380:5 | { ... } | | main.rs:246:5:247:14 | S1 | -| main.rs:379:9:379:13 | thing | | main.rs:377:39:377:53 | TP | -| main.rs:379:9:379:26 | thing.convert_to() | | main.rs:246:5:247:14 | S1 | -| main.rs:382:16:453:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:383:13:383:20 | thing_s1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:383:13:383:20 | thing_s1 | A | main.rs:246:5:247:14 | S1 | -| main.rs:383:24:383:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:383:24:383:40 | MyThing {...} | A | main.rs:246:5:247:14 | S1 | -| main.rs:383:37:383:38 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:384:13:384:20 | thing_s2 | | main.rs:235:5:238:5 | MyThing | -| main.rs:384:13:384:20 | thing_s2 | A | main.rs:248:5:249:14 | S2 | -| main.rs:384:24:384:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:384:24:384:40 | MyThing {...} | A | main.rs:248:5:249:14 | S2 | -| main.rs:384:37:384:38 | S2 | | main.rs:248:5:249:14 | S2 | -| main.rs:385:13:385:20 | thing_s3 | | main.rs:235:5:238:5 | MyThing | -| main.rs:385:13:385:20 | thing_s3 | A | main.rs:250:5:251:14 | S3 | -| main.rs:385:24:385:40 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:385:24:385:40 | MyThing {...} | A | main.rs:250:5:251:14 | S3 | -| main.rs:385:37:385:38 | S3 | | main.rs:250:5:251:14 | S3 | -| main.rs:389:9:389:39 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:389:18:389:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:389:18:389:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:389:18:389:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:389:18:389:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:389:18:389:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:389:26:389:33 | thing_s1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:389:26:389:33 | thing_s1 | A | main.rs:246:5:247:14 | S1 | -| main.rs:389:26:389:38 | thing_s1.m1() | | main.rs:246:5:247:14 | S1 | -| main.rs:390:9:390:41 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:390:18:390:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:390:18:390:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:390:18:390:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:390:18:390:40 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:390:18:390:40 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:390:26:390:33 | thing_s2 | | main.rs:235:5:238:5 | MyThing | -| main.rs:390:26:390:33 | thing_s2 | A | main.rs:248:5:249:14 | S2 | -| main.rs:390:26:390:38 | thing_s2.m1() | | main.rs:235:5:238:5 | MyThing | -| main.rs:390:26:390:38 | thing_s2.m1() | A | main.rs:248:5:249:14 | S2 | -| main.rs:390:26:390:40 | ... .a | | main.rs:248:5:249:14 | S2 | -| main.rs:391:13:391:14 | s3 | | main.rs:250:5:251:14 | S3 | -| main.rs:391:22:391:29 | thing_s3 | | main.rs:235:5:238:5 | MyThing | -| main.rs:391:22:391:29 | thing_s3 | A | main.rs:250:5:251:14 | S3 | -| main.rs:391:22:391:34 | thing_s3.m1() | | main.rs:250:5:251:14 | S3 | -| main.rs:392:9:392:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:392:18:392:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:392:18:392:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:392:18:392:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:392:18:392:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:392:18:392:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:392:26:392:27 | s3 | | main.rs:250:5:251:14 | S3 | -| main.rs:394:13:394:14 | p1 | | main.rs:240:5:244:5 | MyPair | -| main.rs:394:13:394:14 | p1 | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:394:13:394:14 | p1 | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:394:18:394:42 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:394:18:394:42 | MyPair {...} | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:394:18:394:42 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:394:31:394:32 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:394:39:394:40 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:395:9:395:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:395:18:395:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:395:18:395:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:395:18:395:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:395:18:395:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:395:18:395:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:395:26:395:27 | p1 | | main.rs:240:5:244:5 | MyPair | -| main.rs:395:26:395:27 | p1 | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:395:26:395:27 | p1 | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:395:26:395:32 | p1.m1() | | main.rs:246:5:247:14 | S1 | -| main.rs:397:13:397:14 | p2 | | main.rs:240:5:244:5 | MyPair | -| main.rs:397:13:397:14 | p2 | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:397:13:397:14 | p2 | P2 | main.rs:248:5:249:14 | S2 | -| main.rs:397:18:397:42 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:397:18:397:42 | MyPair {...} | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:397:18:397:42 | MyPair {...} | P2 | main.rs:248:5:249:14 | S2 | -| main.rs:397:31:397:32 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:397:39:397:40 | S2 | | main.rs:248:5:249:14 | S2 | -| main.rs:398:9:398:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:398:18:398:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:398:18:398:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:398:18:398:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:398:18:398:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:398:18:398:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:398:26:398:27 | p2 | | main.rs:240:5:244:5 | MyPair | -| main.rs:398:26:398:27 | p2 | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:398:26:398:27 | p2 | P2 | main.rs:248:5:249:14 | S2 | -| main.rs:398:26:398:32 | p2.m1() | | main.rs:250:5:251:14 | S3 | -| main.rs:400:13:400:14 | p3 | | main.rs:240:5:244:5 | MyPair | -| main.rs:400:13:400:14 | p3 | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:400:13:400:14 | p3 | P1.A | main.rs:246:5:247:14 | S1 | -| main.rs:400:13:400:14 | p3 | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:400:18:403:9 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:400:18:403:9 | MyPair {...} | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:400:18:403:9 | MyPair {...} | P1.A | main.rs:246:5:247:14 | S1 | -| main.rs:400:18:403:9 | MyPair {...} | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:401:17:401:33 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:401:17:401:33 | MyThing {...} | A | main.rs:246:5:247:14 | S1 | -| main.rs:401:30:401:31 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:402:17:402:18 | S3 | | main.rs:250:5:251:14 | S3 | -| main.rs:404:9:404:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:404:18:404:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:404:18:404:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:404:18:404:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:404:18:404:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:404:18:404:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:404:26:404:27 | p3 | | main.rs:240:5:244:5 | MyPair | -| main.rs:404:26:404:27 | p3 | P1 | main.rs:235:5:238:5 | MyThing | -| main.rs:404:26:404:27 | p3 | P1.A | main.rs:246:5:247:14 | S1 | -| main.rs:404:26:404:27 | p3 | P2 | main.rs:250:5:251:14 | S3 | -| main.rs:404:26:404:32 | p3.m1() | | main.rs:246:5:247:14 | S1 | -| main.rs:407:13:407:13 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:407:13:407:13 | a | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:407:13:407:13 | a | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:407:17:407:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:407:17:407:41 | MyPair {...} | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:407:17:407:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:407:30:407:31 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:407:38:407:39 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:408:13:408:13 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:408:17:408:17 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:408:17:408:17 | a | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:408:17:408:17 | a | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:408:17:408:23 | a.fst() | | main.rs:246:5:247:14 | S1 | -| main.rs:409:9:409:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:409:18:409:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:409:18:409:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:409:18:409:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:409:18:409:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:409:18:409:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:409:26:409:26 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:410:13:410:13 | y | | main.rs:246:5:247:14 | S1 | -| main.rs:410:17:410:17 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:410:17:410:17 | a | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:410:17:410:17 | a | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:410:17:410:23 | a.snd() | | main.rs:246:5:247:14 | S1 | -| main.rs:411:9:411:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:411:18:411:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:411:18:411:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:411:18:411:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:411:18:411:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:411:18:411:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:411:26:411:26 | y | | main.rs:246:5:247:14 | S1 | -| main.rs:417:13:417:13 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:417:13:417:13 | b | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:417:13:417:13 | b | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:417:17:417:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:417:17:417:41 | MyPair {...} | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:417:17:417:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:417:30:417:31 | S2 | | main.rs:248:5:249:14 | S2 | -| main.rs:417:38:417:39 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:418:13:418:13 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:418:17:418:17 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:418:17:418:17 | b | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:418:17:418:17 | b | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:418:17:418:23 | b.fst() | | main.rs:246:5:247:14 | S1 | -| main.rs:419:9:419:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:419:18:419:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:419:18:419:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:419:18:419:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:419:18:419:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:419:18:419:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:419:26:419:26 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:420:13:420:13 | y | | main.rs:248:5:249:14 | S2 | -| main.rs:420:17:420:17 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:420:17:420:17 | b | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:420:17:420:17 | b | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:420:17:420:23 | b.snd() | | main.rs:248:5:249:14 | S2 | -| main.rs:421:9:421:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:133:13:133:13 | z | | main.rs:110:5:113:5 | MyThing | +| main.rs:133:17:133:40 | MyThing {...} | | main.rs:110:5:113:5 | MyThing | +| main.rs:133:34:133:38 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:134:13:134:13 | c | | {EXTERNAL LOCATION} | bool | +| main.rs:134:17:134:59 | ...::trait_method(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:134:58:134:58 | z | | main.rs:110:5:113:5 | MyThing | +| main.rs:144:25:144:29 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:144:25:144:29 | SelfParam | TRef | main.rs:142:9:147:9 | Self [trait Foo] | +| main.rs:144:32:146:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:145:17:145:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:145:26:145:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:145:26:145:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:145:26:145:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:145:26:145:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:145:26:145:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:151:25:151:29 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:151:25:151:29 | SelfParam | TRef | main.rs:149:9:154:9 | Self [trait Bar] | +| main.rs:151:32:153:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:152:17:152:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:152:26:152:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:152:26:152:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:152:26:152:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:152:26:152:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:152:26:152:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:163:15:184:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:164:13:164:13 | x | | main.rs:156:9:156:21 | X | +| main.rs:164:17:164:17 | X | | main.rs:156:9:156:21 | X | +| main.rs:165:9:168:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:167:13:167:13 | x | | main.rs:156:9:156:21 | X | +| main.rs:167:13:167:24 | x.a_method() | | {EXTERNAL LOCATION} | () | +| main.rs:169:9:172:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:171:13:171:13 | x | | main.rs:156:9:156:21 | X | +| main.rs:171:13:171:24 | x.a_method() | | {EXTERNAL LOCATION} | () | +| main.rs:173:9:176:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:175:13:175:13 | x | | main.rs:156:9:156:21 | X | +| main.rs:175:13:175:24 | x.a_method() | | {EXTERNAL LOCATION} | () | +| main.rs:177:9:183:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:181:13:181:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | +| main.rs:181:27:181:28 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:181:27:181:28 | &x | TRef | main.rs:156:9:156:21 | X | +| main.rs:181:28:181:28 | x | | main.rs:156:9:156:21 | X | +| main.rs:182:13:182:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | +| main.rs:182:27:182:28 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:182:27:182:28 | &x | TRef | main.rs:156:9:156:21 | X | +| main.rs:182:28:182:28 | x | | main.rs:156:9:156:21 | X | +| main.rs:190:19:190:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:190:19:190:23 | SelfParam | TRef | main.rs:188:5:193:5 | Self [trait FirstTrait] | +| main.rs:190:34:192:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:191:13:191:16 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:196:19:196:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:196:19:196:23 | SelfParam | TRef | main.rs:194:5:199:5 | Self [trait SecondTrait] | +| main.rs:196:33:198:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:197:13:197:13 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:197:13:197:13 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:204:16:212:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:205:13:205:13 | s | | main.rs:200:5:200:13 | S | +| main.rs:205:17:205:17 | S | | main.rs:200:5:200:13 | S | +| main.rs:207:13:207:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| main.rs:207:19:207:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:207:38:207:39 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:207:38:207:39 | &s | TRef | main.rs:200:5:200:13 | S | +| main.rs:207:39:207:39 | s | | main.rs:200:5:200:13 | S | +| main.rs:208:13:208:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| main.rs:208:13:208:15 | _b2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:208:19:208:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:208:19:208:47 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:208:45:208:46 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:208:45:208:46 | &s | TRef | main.rs:200:5:200:13 | S | +| main.rs:208:46:208:46 | s | | main.rs:200:5:200:13 | S | +| main.rs:210:13:210:15 | _n1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:210:19:210:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:210:39:210:40 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:210:39:210:40 | &s | TRef | main.rs:200:5:200:13 | S | +| main.rs:210:40:210:40 | s | | main.rs:200:5:200:13 | S | +| main.rs:211:13:211:15 | _n2 | | {EXTERNAL LOCATION} | bool | +| main.rs:211:13:211:15 | _n2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:211:19:211:48 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:211:19:211:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:211:46:211:47 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:211:46:211:47 | &s | TRef | main.rs:200:5:200:13 | S | +| main.rs:211:47:211:47 | s | | main.rs:200:5:200:13 | S | +| main.rs:228:15:228:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | +| main.rs:228:15:228:18 | SelfParam | A | main.rs:221:5:222:14 | S1 | +| main.rs:228:27:230:9 | { ... } | | main.rs:221:5:222:14 | S1 | +| main.rs:229:13:229:16 | self | | main.rs:216:5:219:5 | MyThing | +| main.rs:229:13:229:16 | self | A | main.rs:221:5:222:14 | S1 | +| main.rs:229:13:229:18 | self.a | | main.rs:221:5:222:14 | S1 | +| main.rs:235:15:235:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | +| main.rs:235:15:235:18 | SelfParam | A | main.rs:223:5:224:14 | S2 | +| main.rs:235:29:237:9 | { ... } | | main.rs:216:5:219:5 | MyThing | +| main.rs:235:29:237:9 | { ... } | A | main.rs:223:5:224:14 | S2 | +| main.rs:236:13:236:30 | Self {...} | | main.rs:216:5:219:5 | MyThing | +| main.rs:236:13:236:30 | Self {...} | A | main.rs:223:5:224:14 | S2 | +| main.rs:236:23:236:26 | self | | main.rs:216:5:219:5 | MyThing | +| main.rs:236:23:236:26 | self | A | main.rs:223:5:224:14 | S2 | +| main.rs:236:23:236:28 | self.a | | main.rs:223:5:224:14 | S2 | +| main.rs:241:15:241:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | +| main.rs:241:15:241:18 | SelfParam | A | main.rs:240:10:240:10 | T | +| main.rs:241:26:243:9 | { ... } | | main.rs:240:10:240:10 | T | +| main.rs:242:13:242:16 | self | | main.rs:216:5:219:5 | MyThing | +| main.rs:242:13:242:16 | self | A | main.rs:240:10:240:10 | T | +| main.rs:242:13:242:18 | self.a | | main.rs:240:10:240:10 | T | +| main.rs:246:16:262:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:247:13:247:13 | x | | main.rs:216:5:219:5 | MyThing | +| main.rs:247:13:247:13 | x | A | main.rs:221:5:222:14 | S1 | +| main.rs:247:17:247:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | +| main.rs:247:17:247:33 | MyThing {...} | A | main.rs:221:5:222:14 | S1 | +| main.rs:247:30:247:31 | S1 | | main.rs:221:5:222:14 | S1 | +| main.rs:248:13:248:13 | y | | main.rs:216:5:219:5 | MyThing | +| main.rs:248:13:248:13 | y | A | main.rs:223:5:224:14 | S2 | +| main.rs:248:17:248:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | +| main.rs:248:17:248:33 | MyThing {...} | A | main.rs:223:5:224:14 | S2 | +| main.rs:248:30:248:31 | S2 | | main.rs:223:5:224:14 | S2 | +| main.rs:251:9:251:29 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:251:18:251:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:251:18:251:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:251:18:251:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:251:18:251:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:251:18:251:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:251:26:251:26 | x | | main.rs:216:5:219:5 | MyThing | +| main.rs:251:26:251:26 | x | A | main.rs:221:5:222:14 | S1 | +| main.rs:251:26:251:28 | x.a | | main.rs:221:5:222:14 | S1 | +| main.rs:252:9:252:29 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:252:18:252:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:252:18:252:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:252:18:252:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:252:18:252:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:252:18:252:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:252:26:252:26 | y | | main.rs:216:5:219:5 | MyThing | +| main.rs:252:26:252:26 | y | A | main.rs:223:5:224:14 | S2 | +| main.rs:252:26:252:28 | y.a | | main.rs:223:5:224:14 | S2 | +| main.rs:254:9:254:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:254:18:254:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:254:18:254:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:254:18:254:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:254:18:254:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:254:18:254:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:254:26:254:26 | x | | main.rs:216:5:219:5 | MyThing | +| main.rs:254:26:254:26 | x | A | main.rs:221:5:222:14 | S1 | +| main.rs:254:26:254:31 | x.m1() | | main.rs:221:5:222:14 | S1 | +| main.rs:255:9:255:34 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:255:18:255:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:255:18:255:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:255:18:255:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:255:18:255:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:255:18:255:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:255:26:255:26 | y | | main.rs:216:5:219:5 | MyThing | +| main.rs:255:26:255:26 | y | A | main.rs:223:5:224:14 | S2 | +| main.rs:255:26:255:31 | y.m1() | | main.rs:216:5:219:5 | MyThing | +| main.rs:255:26:255:31 | y.m1() | A | main.rs:223:5:224:14 | S2 | +| main.rs:255:26:255:33 | ... .a | | main.rs:223:5:224:14 | S2 | +| main.rs:257:13:257:13 | x | | main.rs:216:5:219:5 | MyThing | +| main.rs:257:13:257:13 | x | A | main.rs:221:5:222:14 | S1 | +| main.rs:257:17:257:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | +| main.rs:257:17:257:33 | MyThing {...} | A | main.rs:221:5:222:14 | S1 | +| main.rs:257:30:257:31 | S1 | | main.rs:221:5:222:14 | S1 | +| main.rs:258:13:258:13 | y | | main.rs:216:5:219:5 | MyThing | +| main.rs:258:13:258:13 | y | A | main.rs:223:5:224:14 | S2 | +| main.rs:258:17:258:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | +| main.rs:258:17:258:33 | MyThing {...} | A | main.rs:223:5:224:14 | S2 | +| main.rs:258:30:258:31 | S2 | | main.rs:223:5:224:14 | S2 | +| main.rs:260:9:260:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:260:18:260:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:260:18:260:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:260:18:260:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:260:18:260:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:260:18:260:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:260:26:260:26 | x | | main.rs:216:5:219:5 | MyThing | +| main.rs:260:26:260:26 | x | A | main.rs:221:5:222:14 | S1 | +| main.rs:260:26:260:31 | x.m2() | | main.rs:221:5:222:14 | S1 | +| main.rs:261:9:261:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:261:18:261:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:261:18:261:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:261:18:261:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:261:18:261:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:261:18:261:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:261:26:261:26 | y | | main.rs:216:5:219:5 | MyThing | +| main.rs:261:26:261:26 | y | A | main.rs:223:5:224:14 | S2 | +| main.rs:261:26:261:31 | y.m2() | | main.rs:223:5:224:14 | S2 | +| main.rs:285:15:285:18 | SelfParam | | main.rs:284:5:293:5 | Self [trait MyTrait] | +| main.rs:287:15:287:18 | SelfParam | | main.rs:284:5:293:5 | Self [trait MyTrait] | +| main.rs:290:9:292:9 | { ... } | | main.rs:284:5:293:5 | Self [trait MyTrait] | +| main.rs:291:13:291:16 | self | | main.rs:284:5:293:5 | Self [trait MyTrait] | +| main.rs:297:16:297:19 | SelfParam | | main.rs:295:5:300:5 | Self [trait MyProduct] | +| main.rs:299:16:299:19 | SelfParam | | main.rs:295:5:300:5 | Self [trait MyProduct] | +| main.rs:302:43:302:43 | x | | main.rs:302:26:302:40 | T2 | +| main.rs:302:56:304:5 | { ... } | | main.rs:302:22:302:23 | T1 | +| main.rs:303:9:303:9 | x | | main.rs:302:26:302:40 | T2 | +| main.rs:303:9:303:14 | x.m1() | | main.rs:302:22:302:23 | T1 | +| main.rs:308:15:308:18 | SelfParam | | main.rs:266:5:269:5 | MyThing | +| main.rs:308:15:308:18 | SelfParam | A | main.rs:277:5:278:14 | S1 | +| main.rs:308:27:310:9 | { ... } | | main.rs:277:5:278:14 | S1 | +| main.rs:309:13:309:16 | self | | main.rs:266:5:269:5 | MyThing | +| main.rs:309:13:309:16 | self | A | main.rs:277:5:278:14 | S1 | +| main.rs:309:13:309:18 | self.a | | main.rs:277:5:278:14 | S1 | +| main.rs:315:15:315:18 | SelfParam | | main.rs:266:5:269:5 | MyThing | +| main.rs:315:15:315:18 | SelfParam | A | main.rs:279:5:280:14 | S2 | +| main.rs:315:29:317:9 | { ... } | | main.rs:266:5:269:5 | MyThing | +| main.rs:315:29:317:9 | { ... } | A | main.rs:279:5:280:14 | S2 | +| main.rs:316:13:316:30 | Self {...} | | main.rs:266:5:269:5 | MyThing | +| main.rs:316:13:316:30 | Self {...} | A | main.rs:279:5:280:14 | S2 | +| main.rs:316:23:316:26 | self | | main.rs:266:5:269:5 | MyThing | +| main.rs:316:23:316:26 | self | A | main.rs:279:5:280:14 | S2 | +| main.rs:316:23:316:28 | self.a | | main.rs:279:5:280:14 | S2 | +| main.rs:327:15:327:18 | SelfParam | | main.rs:266:5:269:5 | MyThing | +| main.rs:327:15:327:18 | SelfParam | A | main.rs:281:5:282:14 | S3 | +| main.rs:327:27:329:9 | { ... } | | main.rs:322:10:322:11 | TD | +| main.rs:328:13:328:25 | ...::default(...) | | main.rs:322:10:322:11 | TD | +| main.rs:334:15:334:18 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:334:15:334:18 | SelfParam | P1 | main.rs:332:10:332:10 | I | +| main.rs:334:15:334:18 | SelfParam | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:334:26:336:9 | { ... } | | main.rs:332:10:332:10 | I | +| main.rs:335:13:335:16 | self | | main.rs:271:5:275:5 | MyPair | +| main.rs:335:13:335:16 | self | P1 | main.rs:332:10:332:10 | I | +| main.rs:335:13:335:16 | self | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:335:13:335:19 | self.p1 | | main.rs:332:10:332:10 | I | +| main.rs:341:15:341:18 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:341:15:341:18 | SelfParam | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:341:15:341:18 | SelfParam | P2 | main.rs:279:5:280:14 | S2 | +| main.rs:341:27:343:9 | { ... } | | main.rs:281:5:282:14 | S3 | +| main.rs:342:13:342:14 | S3 | | main.rs:281:5:282:14 | S3 | +| main.rs:348:15:348:18 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:348:15:348:18 | SelfParam | P1 | main.rs:266:5:269:5 | MyThing | +| main.rs:348:15:348:18 | SelfParam | P1.A | main.rs:346:10:346:11 | TT | +| main.rs:348:15:348:18 | SelfParam | P2 | main.rs:281:5:282:14 | S3 | +| main.rs:348:27:351:9 | { ... } | | main.rs:346:10:346:11 | TT | +| main.rs:349:17:349:21 | alpha | | main.rs:266:5:269:5 | MyThing | +| main.rs:349:17:349:21 | alpha | A | main.rs:346:10:346:11 | TT | +| main.rs:349:25:349:28 | self | | main.rs:271:5:275:5 | MyPair | +| main.rs:349:25:349:28 | self | P1 | main.rs:266:5:269:5 | MyThing | +| main.rs:349:25:349:28 | self | P1.A | main.rs:346:10:346:11 | TT | +| main.rs:349:25:349:28 | self | P2 | main.rs:281:5:282:14 | S3 | +| main.rs:349:25:349:31 | self.p1 | | main.rs:266:5:269:5 | MyThing | +| main.rs:349:25:349:31 | self.p1 | A | main.rs:346:10:346:11 | TT | +| main.rs:350:13:350:17 | alpha | | main.rs:266:5:269:5 | MyThing | +| main.rs:350:13:350:17 | alpha | A | main.rs:346:10:346:11 | TT | +| main.rs:350:13:350:19 | alpha.a | | main.rs:346:10:346:11 | TT | +| main.rs:357:16:357:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:357:16:357:19 | SelfParam | P1 | main.rs:355:10:355:10 | A | +| main.rs:357:16:357:19 | SelfParam | P2 | main.rs:355:10:355:10 | A | +| main.rs:357:27:359:9 | { ... } | | main.rs:355:10:355:10 | A | +| main.rs:358:13:358:16 | self | | main.rs:271:5:275:5 | MyPair | +| main.rs:358:13:358:16 | self | P1 | main.rs:355:10:355:10 | A | +| main.rs:358:13:358:16 | self | P2 | main.rs:355:10:355:10 | A | +| main.rs:358:13:358:19 | self.p1 | | main.rs:355:10:355:10 | A | +| main.rs:362:16:362:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:362:16:362:19 | SelfParam | P1 | main.rs:355:10:355:10 | A | +| main.rs:362:16:362:19 | SelfParam | P2 | main.rs:355:10:355:10 | A | +| main.rs:362:27:364:9 | { ... } | | main.rs:355:10:355:10 | A | +| main.rs:363:13:363:16 | self | | main.rs:271:5:275:5 | MyPair | +| main.rs:363:13:363:16 | self | P1 | main.rs:355:10:355:10 | A | +| main.rs:363:13:363:16 | self | P2 | main.rs:355:10:355:10 | A | +| main.rs:363:13:363:19 | self.p2 | | main.rs:355:10:355:10 | A | +| main.rs:370:16:370:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:370:16:370:19 | SelfParam | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:370:16:370:19 | SelfParam | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:370:28:372:9 | { ... } | | main.rs:277:5:278:14 | S1 | +| main.rs:371:13:371:16 | self | | main.rs:271:5:275:5 | MyPair | +| main.rs:371:13:371:16 | self | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:371:13:371:16 | self | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:371:13:371:19 | self.p2 | | main.rs:277:5:278:14 | S1 | +| main.rs:375:16:375:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | +| main.rs:375:16:375:19 | SelfParam | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:375:16:375:19 | SelfParam | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:375:28:377:9 | { ... } | | main.rs:279:5:280:14 | S2 | +| main.rs:376:13:376:16 | self | | main.rs:271:5:275:5 | MyPair | +| main.rs:376:13:376:16 | self | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:376:13:376:16 | self | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:376:13:376:19 | self.p1 | | main.rs:279:5:280:14 | S2 | +| main.rs:380:46:380:46 | p | | main.rs:380:24:380:43 | P | +| main.rs:380:58:382:5 | { ... } | | main.rs:380:16:380:17 | V1 | +| main.rs:381:9:381:9 | p | | main.rs:380:24:380:43 | P | +| main.rs:381:9:381:15 | p.fst() | | main.rs:380:16:380:17 | V1 | +| main.rs:384:46:384:46 | p | | main.rs:384:24:384:43 | P | +| main.rs:384:58:386:5 | { ... } | | main.rs:384:20:384:21 | V2 | +| main.rs:385:9:385:9 | p | | main.rs:384:24:384:43 | P | +| main.rs:385:9:385:15 | p.snd() | | main.rs:384:20:384:21 | V2 | +| main.rs:388:54:388:54 | p | | main.rs:271:5:275:5 | MyPair | +| main.rs:388:54:388:54 | p | P1 | main.rs:388:20:388:21 | V0 | +| main.rs:388:54:388:54 | p | P2 | main.rs:388:32:388:51 | P | +| main.rs:388:78:390:5 | { ... } | | main.rs:388:24:388:25 | V1 | +| main.rs:389:9:389:9 | p | | main.rs:271:5:275:5 | MyPair | +| main.rs:389:9:389:9 | p | P1 | main.rs:388:20:388:21 | V0 | +| main.rs:389:9:389:9 | p | P2 | main.rs:388:32:388:51 | P | +| main.rs:389:9:389:12 | p.p2 | | main.rs:388:32:388:51 | P | +| main.rs:389:9:389:18 | ... .fst() | | main.rs:388:24:388:25 | V1 | +| main.rs:394:23:394:26 | SelfParam | | main.rs:392:5:395:5 | Self [trait ConvertTo] | +| main.rs:399:23:399:26 | SelfParam | | main.rs:397:10:397:23 | T | +| main.rs:399:35:401:9 | { ... } | | main.rs:277:5:278:14 | S1 | +| main.rs:400:13:400:16 | self | | main.rs:397:10:397:23 | T | +| main.rs:400:13:400:21 | self.m1() | | main.rs:277:5:278:14 | S1 | +| main.rs:404:41:404:45 | thing | | main.rs:404:23:404:38 | T | +| main.rs:404:57:406:5 | { ... } | | main.rs:404:19:404:20 | TS | +| main.rs:405:9:405:13 | thing | | main.rs:404:23:404:38 | T | +| main.rs:405:9:405:26 | thing.convert_to() | | main.rs:404:19:404:20 | TS | +| main.rs:408:56:408:60 | thing | | main.rs:408:39:408:53 | TP | +| main.rs:408:73:411:5 | { ... } | | main.rs:277:5:278:14 | S1 | +| main.rs:410:9:410:13 | thing | | main.rs:408:39:408:53 | TP | +| main.rs:410:9:410:26 | thing.convert_to() | | main.rs:277:5:278:14 | S1 | +| main.rs:413:16:484:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:414:13:414:20 | thing_s1 | | main.rs:266:5:269:5 | MyThing | +| main.rs:414:13:414:20 | thing_s1 | A | main.rs:277:5:278:14 | S1 | +| main.rs:414:24:414:40 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | +| main.rs:414:24:414:40 | MyThing {...} | A | main.rs:277:5:278:14 | S1 | +| main.rs:414:37:414:38 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:415:13:415:20 | thing_s2 | | main.rs:266:5:269:5 | MyThing | +| main.rs:415:13:415:20 | thing_s2 | A | main.rs:279:5:280:14 | S2 | +| main.rs:415:24:415:40 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | +| main.rs:415:24:415:40 | MyThing {...} | A | main.rs:279:5:280:14 | S2 | +| main.rs:415:37:415:38 | S2 | | main.rs:279:5:280:14 | S2 | +| main.rs:416:13:416:20 | thing_s3 | | main.rs:266:5:269:5 | MyThing | +| main.rs:416:13:416:20 | thing_s3 | A | main.rs:281:5:282:14 | S3 | +| main.rs:416:24:416:40 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | +| main.rs:416:24:416:40 | MyThing {...} | A | main.rs:281:5:282:14 | S3 | +| main.rs:416:37:416:38 | S3 | | main.rs:281:5:282:14 | S3 | +| main.rs:420:9:420:39 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:420:18:420:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:420:18:420:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:420:18:420:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:420:18:420:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:420:18:420:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:420:26:420:33 | thing_s1 | | main.rs:266:5:269:5 | MyThing | +| main.rs:420:26:420:33 | thing_s1 | A | main.rs:277:5:278:14 | S1 | +| main.rs:420:26:420:38 | thing_s1.m1() | | main.rs:277:5:278:14 | S1 | +| main.rs:421:9:421:41 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:421:18:421:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:421:18:421:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:421:18:421:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:421:18:421:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:421:18:421:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:421:26:421:26 | y | | main.rs:248:5:249:14 | S2 | -| main.rs:425:13:425:13 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:425:17:425:39 | call_trait_m1(...) | | main.rs:246:5:247:14 | S1 | -| main.rs:425:31:425:38 | thing_s1 | | main.rs:235:5:238:5 | MyThing | -| main.rs:425:31:425:38 | thing_s1 | A | main.rs:246:5:247:14 | S1 | -| main.rs:426:9:426:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:421:18:421:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:421:18:421:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:421:18:421:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:421:26:421:33 | thing_s2 | | main.rs:266:5:269:5 | MyThing | +| main.rs:421:26:421:33 | thing_s2 | A | main.rs:279:5:280:14 | S2 | +| main.rs:421:26:421:38 | thing_s2.m1() | | main.rs:266:5:269:5 | MyThing | +| main.rs:421:26:421:38 | thing_s2.m1() | A | main.rs:279:5:280:14 | S2 | +| main.rs:421:26:421:40 | ... .a | | main.rs:279:5:280:14 | S2 | +| main.rs:422:13:422:14 | s3 | | main.rs:281:5:282:14 | S3 | +| main.rs:422:22:422:29 | thing_s3 | | main.rs:266:5:269:5 | MyThing | +| main.rs:422:22:422:29 | thing_s3 | A | main.rs:281:5:282:14 | S3 | +| main.rs:422:22:422:34 | thing_s3.m1() | | main.rs:281:5:282:14 | S3 | +| main.rs:423:9:423:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:423:18:423:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:423:18:423:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:423:18:423:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:423:18:423:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:423:18:423:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:423:26:423:27 | s3 | | main.rs:281:5:282:14 | S3 | +| main.rs:425:13:425:14 | p1 | | main.rs:271:5:275:5 | MyPair | +| main.rs:425:13:425:14 | p1 | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:425:13:425:14 | p1 | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:425:18:425:42 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:425:18:425:42 | MyPair {...} | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:425:18:425:42 | MyPair {...} | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:425:31:425:32 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:425:39:425:40 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:426:9:426:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:426:18:426:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:426:18:426:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:426:18:426:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:426:18:426:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:426:18:426:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:426:26:426:26 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:427:13:427:13 | y | | main.rs:235:5:238:5 | MyThing | -| main.rs:427:13:427:13 | y | A | main.rs:248:5:249:14 | S2 | -| main.rs:427:17:427:39 | call_trait_m1(...) | | main.rs:235:5:238:5 | MyThing | -| main.rs:427:17:427:39 | call_trait_m1(...) | A | main.rs:248:5:249:14 | S2 | -| main.rs:427:31:427:38 | thing_s2 | | main.rs:235:5:238:5 | MyThing | -| main.rs:427:31:427:38 | thing_s2 | A | main.rs:248:5:249:14 | S2 | -| main.rs:428:9:428:29 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:428:18:428:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:428:18:428:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:428:18:428:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:428:18:428:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:428:18:428:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:428:26:428:26 | y | | main.rs:235:5:238:5 | MyThing | -| main.rs:428:26:428:26 | y | A | main.rs:248:5:249:14 | S2 | -| main.rs:428:26:428:28 | y.a | | main.rs:248:5:249:14 | S2 | -| main.rs:431:13:431:13 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:431:13:431:13 | a | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:431:13:431:13 | a | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:431:17:431:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:431:17:431:41 | MyPair {...} | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:431:17:431:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:431:30:431:31 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:431:38:431:39 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:432:13:432:13 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:432:17:432:26 | get_fst(...) | | main.rs:246:5:247:14 | S1 | -| main.rs:432:25:432:25 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:432:25:432:25 | a | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:432:25:432:25 | a | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:433:9:433:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:433:18:433:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:433:18:433:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:433:18:433:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:433:18:433:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:433:18:433:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:433:26:433:26 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:434:13:434:13 | y | | main.rs:246:5:247:14 | S1 | -| main.rs:434:17:434:26 | get_snd(...) | | main.rs:246:5:247:14 | S1 | -| main.rs:434:25:434:25 | a | | main.rs:240:5:244:5 | MyPair | -| main.rs:434:25:434:25 | a | P1 | main.rs:246:5:247:14 | S1 | -| main.rs:434:25:434:25 | a | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:435:9:435:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:426:18:426:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:426:18:426:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:426:18:426:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:426:26:426:27 | p1 | | main.rs:271:5:275:5 | MyPair | +| main.rs:426:26:426:27 | p1 | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:426:26:426:27 | p1 | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:426:26:426:32 | p1.m1() | | main.rs:277:5:278:14 | S1 | +| main.rs:428:13:428:14 | p2 | | main.rs:271:5:275:5 | MyPair | +| main.rs:428:13:428:14 | p2 | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:428:13:428:14 | p2 | P2 | main.rs:279:5:280:14 | S2 | +| main.rs:428:18:428:42 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:428:18:428:42 | MyPair {...} | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:428:18:428:42 | MyPair {...} | P2 | main.rs:279:5:280:14 | S2 | +| main.rs:428:31:428:32 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:428:39:428:40 | S2 | | main.rs:279:5:280:14 | S2 | +| main.rs:429:9:429:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:429:18:429:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:429:18:429:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:429:26:429:27 | p2 | | main.rs:271:5:275:5 | MyPair | +| main.rs:429:26:429:27 | p2 | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:429:26:429:27 | p2 | P2 | main.rs:279:5:280:14 | S2 | +| main.rs:429:26:429:32 | p2.m1() | | main.rs:281:5:282:14 | S3 | +| main.rs:431:13:431:14 | p3 | | main.rs:271:5:275:5 | MyPair | +| main.rs:431:13:431:14 | p3 | P1 | main.rs:266:5:269:5 | MyThing | +| main.rs:431:13:431:14 | p3 | P1.A | main.rs:277:5:278:14 | S1 | +| main.rs:431:13:431:14 | p3 | P2 | main.rs:281:5:282:14 | S3 | +| main.rs:431:18:434:9 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:431:18:434:9 | MyPair {...} | P1 | main.rs:266:5:269:5 | MyThing | +| main.rs:431:18:434:9 | MyPair {...} | P1.A | main.rs:277:5:278:14 | S1 | +| main.rs:431:18:434:9 | MyPair {...} | P2 | main.rs:281:5:282:14 | S3 | +| main.rs:432:17:432:33 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | +| main.rs:432:17:432:33 | MyThing {...} | A | main.rs:277:5:278:14 | S1 | +| main.rs:432:30:432:31 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:433:17:433:18 | S3 | | main.rs:281:5:282:14 | S3 | +| main.rs:435:9:435:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:435:18:435:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:435:18:435:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:435:18:435:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:435:18:435:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:435:18:435:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:435:26:435:26 | y | | main.rs:246:5:247:14 | S1 | -| main.rs:438:13:438:13 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:438:13:438:13 | b | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:438:13:438:13 | b | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:438:17:438:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:438:17:438:41 | MyPair {...} | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:438:17:438:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:438:30:438:31 | S2 | | main.rs:248:5:249:14 | S2 | -| main.rs:438:38:438:39 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:439:13:439:13 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:439:17:439:26 | get_fst(...) | | main.rs:246:5:247:14 | S1 | -| main.rs:439:25:439:25 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:439:25:439:25 | b | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:439:25:439:25 | b | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:435:18:435:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:435:18:435:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:435:18:435:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:435:26:435:27 | p3 | | main.rs:271:5:275:5 | MyPair | +| main.rs:435:26:435:27 | p3 | P1 | main.rs:266:5:269:5 | MyThing | +| main.rs:435:26:435:27 | p3 | P1.A | main.rs:277:5:278:14 | S1 | +| main.rs:435:26:435:27 | p3 | P2 | main.rs:281:5:282:14 | S3 | +| main.rs:435:26:435:32 | p3.m1() | | main.rs:277:5:278:14 | S1 | +| main.rs:438:13:438:13 | a | | main.rs:271:5:275:5 | MyPair | +| main.rs:438:13:438:13 | a | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:438:13:438:13 | a | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:438:17:438:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:438:17:438:41 | MyPair {...} | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:438:17:438:41 | MyPair {...} | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:438:30:438:31 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:438:38:438:39 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:439:13:439:13 | x | | main.rs:277:5:278:14 | S1 | +| main.rs:439:17:439:17 | a | | main.rs:271:5:275:5 | MyPair | +| main.rs:439:17:439:17 | a | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:439:17:439:17 | a | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:439:17:439:23 | a.fst() | | main.rs:277:5:278:14 | S1 | | main.rs:440:9:440:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:440:18:440:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:440:18:440:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:440:18:440:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:440:18:440:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:440:18:440:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:440:26:440:26 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:441:13:441:13 | y | | main.rs:248:5:249:14 | S2 | -| main.rs:441:17:441:26 | get_snd(...) | | main.rs:248:5:249:14 | S2 | -| main.rs:441:25:441:25 | b | | main.rs:240:5:244:5 | MyPair | -| main.rs:441:25:441:25 | b | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:441:25:441:25 | b | P2 | main.rs:246:5:247:14 | S1 | +| main.rs:440:26:440:26 | x | | main.rs:277:5:278:14 | S1 | +| main.rs:441:13:441:13 | y | | main.rs:277:5:278:14 | S1 | +| main.rs:441:17:441:17 | a | | main.rs:271:5:275:5 | MyPair | +| main.rs:441:17:441:17 | a | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:441:17:441:17 | a | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:441:17:441:23 | a.snd() | | main.rs:277:5:278:14 | S1 | | main.rs:442:9:442:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:442:18:442:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:442:18:442:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:442:18:442:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:442:18:442:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:442:18:442:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:442:26:442:26 | y | | main.rs:248:5:249:14 | S2 | -| main.rs:444:13:444:13 | c | | main.rs:240:5:244:5 | MyPair | -| main.rs:444:13:444:13 | c | P1 | main.rs:250:5:251:14 | S3 | -| main.rs:444:13:444:13 | c | P2 | main.rs:240:5:244:5 | MyPair | -| main.rs:444:13:444:13 | c | P2.P1 | main.rs:248:5:249:14 | S2 | -| main.rs:444:13:444:13 | c | P2.P2 | main.rs:246:5:247:14 | S1 | -| main.rs:444:17:447:9 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:444:17:447:9 | MyPair {...} | P1 | main.rs:250:5:251:14 | S3 | -| main.rs:444:17:447:9 | MyPair {...} | P2 | main.rs:240:5:244:5 | MyPair | -| main.rs:444:17:447:9 | MyPair {...} | P2.P1 | main.rs:248:5:249:14 | S2 | -| main.rs:444:17:447:9 | MyPair {...} | P2.P2 | main.rs:246:5:247:14 | S1 | -| main.rs:445:17:445:18 | S3 | | main.rs:250:5:251:14 | S3 | -| main.rs:446:17:446:41 | MyPair {...} | | main.rs:240:5:244:5 | MyPair | -| main.rs:446:17:446:41 | MyPair {...} | P1 | main.rs:248:5:249:14 | S2 | -| main.rs:446:17:446:41 | MyPair {...} | P2 | main.rs:246:5:247:14 | S1 | -| main.rs:446:30:446:31 | S2 | | main.rs:248:5:249:14 | S2 | -| main.rs:446:38:446:39 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:448:13:448:13 | x | | main.rs:246:5:247:14 | S1 | -| main.rs:448:17:448:30 | get_snd_fst(...) | | main.rs:246:5:247:14 | S1 | -| main.rs:448:29:448:29 | c | | main.rs:240:5:244:5 | MyPair | -| main.rs:448:29:448:29 | c | P1 | main.rs:250:5:251:14 | S3 | -| main.rs:448:29:448:29 | c | P2 | main.rs:240:5:244:5 | MyPair | -| main.rs:448:29:448:29 | c | P2.P1 | main.rs:248:5:249:14 | S2 | -| main.rs:448:29:448:29 | c | P2.P2 | main.rs:246:5:247:14 | S1 | -| main.rs:450:13:450:17 | thing | | main.rs:235:5:238:5 | MyThing | -| main.rs:450:13:450:17 | thing | A | main.rs:246:5:247:14 | S1 | -| main.rs:450:21:450:37 | MyThing {...} | | main.rs:235:5:238:5 | MyThing | -| main.rs:450:21:450:37 | MyThing {...} | A | main.rs:246:5:247:14 | S1 | -| main.rs:450:34:450:35 | S1 | | main.rs:246:5:247:14 | S1 | -| main.rs:451:13:451:13 | i | | main.rs:246:5:247:14 | S1 | -| main.rs:451:17:451:21 | thing | | main.rs:235:5:238:5 | MyThing | -| main.rs:451:17:451:21 | thing | A | main.rs:246:5:247:14 | S1 | -| main.rs:451:17:451:34 | thing.convert_to() | | main.rs:246:5:247:14 | S1 | -| main.rs:452:28:452:32 | thing | | main.rs:235:5:238:5 | MyThing | -| main.rs:452:28:452:32 | thing | A | main.rs:246:5:247:14 | S1 | -| main.rs:461:26:461:29 | SelfParam | | main.rs:460:5:464:5 | Self [trait OverlappingTrait] | -| main.rs:463:28:463:31 | SelfParam | | main.rs:460:5:464:5 | Self [trait OverlappingTrait] | -| main.rs:463:34:463:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:468:26:468:29 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:468:38:470:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:469:13:469:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:473:28:473:31 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:473:34:473:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:473:48:475:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:474:13:474:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:480:26:480:29 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:480:38:482:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:481:13:481:16 | self | | main.rs:457:5:458:14 | S1 | -| main.rs:485:28:485:31 | SelfParam | | main.rs:457:5:458:14 | S1 | -| main.rs:485:40:487:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:486:13:486:16 | self | | main.rs:457:5:458:14 | S1 | -| main.rs:494:26:494:29 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:494:26:494:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:494:38:496:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:495:13:495:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:499:28:499:31 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:499:28:499:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:499:40:501:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:500:13:500:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:506:26:506:29 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:506:26:506:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:506:38:508:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:507:13:507:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:511:28:511:31 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:511:28:511:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:511:34:511:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:511:48:513:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:512:13:512:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:518:26:518:29 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:518:26:518:29 | SelfParam | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:518:38:520:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:519:13:519:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:523:28:523:31 | SelfParam | | main.rs:490:5:490:22 | S2 | -| main.rs:523:28:523:31 | SelfParam | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:523:34:523:35 | s1 | | main.rs:457:5:458:14 | S1 | -| main.rs:523:48:525:9 | { ... } | | main.rs:457:5:458:14 | S1 | -| main.rs:524:13:524:14 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:532:14:532:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:532:14:532:18 | SelfParam | TRef | main.rs:531:5:533:5 | Self [trait OverlappingTrait2] | -| main.rs:532:21:532:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:532:21:532:21 | x | TRef | main.rs:531:29:531:29 | T | -| main.rs:537:14:537:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:537:14:537:18 | SelfParam | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:537:14:537:18 | SelfParam | TRef.T3 | main.rs:535:10:535:10 | T | -| main.rs:537:21:537:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:537:21:537:21 | x | TRef | main.rs:535:10:535:10 | T | -| main.rs:537:37:539:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:537:37:539:9 | { ... } | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:537:37:539:9 | { ... } | TRef.T3 | main.rs:535:10:535:10 | T | -| main.rs:538:13:538:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:538:13:538:16 | self | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:538:13:538:16 | self | TRef.T3 | main.rs:535:10:535:10 | T | -| main.rs:544:14:544:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:544:14:544:18 | SelfParam | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:544:14:544:18 | SelfParam | TRef.T3 | main.rs:542:10:542:10 | T | -| main.rs:544:21:544:21 | x | | main.rs:542:10:542:10 | T | -| main.rs:544:36:546:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:544:36:546:9 | { ... } | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:544:36:546:9 | { ... } | TRef.T3 | main.rs:542:10:542:10 | T | -| main.rs:545:13:545:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:545:13:545:16 | self | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:545:13:545:16 | self | TRef.T3 | main.rs:542:10:542:10 | T | -| main.rs:551:14:551:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:551:14:551:18 | SelfParam | TRef | main.rs:549:5:552:5 | Self [trait MyTrait1] | -| main.rs:551:21:551:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:561:14:561:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:561:14:561:18 | SelfParam | TRef | main.rs:556:5:557:14 | S4 | -| main.rs:561:21:561:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:571:14:571:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:571:14:571:18 | SelfParam | TRef | main.rs:566:5:567:22 | S5 | -| main.rs:571:14:571:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:571:21:571:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:580:16:606:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:581:13:581:13 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:581:17:581:18 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:582:9:582:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:582:18:582:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:582:18:582:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:582:18:582:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:582:26:582:26 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:582:26:582:42 | x.common_method() | | main.rs:457:5:458:14 | S1 | -| main.rs:583:9:583:46 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:583:18:583:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:583:18:583:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:45 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:583:18:583:45 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:583:26:583:45 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:583:44:583:44 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:584:9:584:45 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:584:18:584:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:584:18:584:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:584:18:584:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:584:18:584:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:584:18:584:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:584:26:584:26 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:584:26:584:44 | x.common_method_2() | | main.rs:457:5:458:14 | S1 | -| main.rs:585:9:585:48 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:585:18:585:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:585:18:585:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:585:18:585:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:585:18:585:47 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:585:18:585:47 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:585:26:585:47 | ...::common_method_2(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:585:46:585:46 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:587:13:587:13 | y | | main.rs:490:5:490:22 | S2 | -| main.rs:587:13:587:13 | y | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:587:17:587:22 | S2(...) | | main.rs:490:5:490:22 | S2 | -| main.rs:587:17:587:22 | S2(...) | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:587:20:587:21 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:588:9:588:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:588:18:588:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:588:18:588:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:588:18:588:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:588:18:588:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:588:18:588:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:588:26:588:26 | y | | main.rs:490:5:490:22 | S2 | -| main.rs:588:26:588:26 | y | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:588:26:588:42 | y.common_method() | | main.rs:457:5:458:14 | S1 | -| main.rs:589:9:589:57 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:589:18:589:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:589:18:589:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:589:18:589:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:589:18:589:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:589:18:589:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:589:26:589:56 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:589:50:589:55 | S2(...) | | main.rs:490:5:490:22 | S2 | -| main.rs:589:50:589:55 | S2(...) | T2 | main.rs:457:5:458:14 | S1 | -| main.rs:589:53:589:54 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:591:13:591:13 | z | | main.rs:490:5:490:22 | S2 | -| main.rs:591:13:591:13 | z | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:591:17:591:21 | S2(...) | | main.rs:490:5:490:22 | S2 | -| main.rs:591:17:591:21 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:591:20:591:20 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:592:9:592:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:592:18:592:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:592:18:592:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:592:18:592:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:592:18:592:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:592:18:592:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:592:26:592:26 | z | | main.rs:490:5:490:22 | S2 | -| main.rs:592:26:592:26 | z | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:592:26:592:42 | z.common_method() | | main.rs:457:5:458:14 | S1 | -| main.rs:593:9:593:50 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:593:18:593:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:593:18:593:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:593:18:593:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:593:18:593:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:593:18:593:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:593:26:593:49 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:593:44:593:48 | S2(...) | | main.rs:490:5:490:22 | S2 | -| main.rs:593:44:593:48 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:593:47:593:47 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:594:9:594:57 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:594:18:594:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:594:18:594:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:594:18:594:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:594:18:594:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:594:18:594:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:594:26:594:56 | ...::common_method(...) | | main.rs:457:5:458:14 | S1 | -| main.rs:594:51:594:55 | S2(...) | | main.rs:490:5:490:22 | S2 | -| main.rs:594:51:594:55 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:594:54:594:54 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:596:13:596:13 | w | | main.rs:528:5:529:22 | S3 | -| main.rs:596:13:596:13 | w | T3 | main.rs:457:5:458:14 | S1 | -| main.rs:596:17:596:22 | S3(...) | | main.rs:528:5:529:22 | S3 | -| main.rs:596:17:596:22 | S3(...) | T3 | main.rs:457:5:458:14 | S1 | -| main.rs:596:20:596:21 | S1 | | main.rs:457:5:458:14 | S1 | -| main.rs:597:9:597:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:597:18:597:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:597:18:597:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:597:18:597:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:597:18:597:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:597:18:597:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:597:26:597:26 | w | | main.rs:528:5:529:22 | S3 | -| main.rs:597:26:597:26 | w | T3 | main.rs:457:5:458:14 | S1 | -| main.rs:597:26:597:31 | w.m(...) | | {EXTERNAL LOCATION} | & | -| main.rs:597:26:597:31 | w.m(...) | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:597:26:597:31 | w.m(...) | TRef.T3 | main.rs:457:5:458:14 | S1 | -| main.rs:597:30:597:30 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:598:9:598:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:598:18:598:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:598:18:598:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:598:18:598:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:598:18:598:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:598:18:598:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:598:26:598:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | -| main.rs:598:26:598:37 | ...::m(...) | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:598:26:598:37 | ...::m(...) | TRef.T3 | main.rs:457:5:458:14 | S1 | -| main.rs:598:32:598:33 | &w | | {EXTERNAL LOCATION} | & | -| main.rs:598:32:598:33 | &w | TRef | main.rs:528:5:529:22 | S3 | -| main.rs:598:32:598:33 | &w | TRef.T3 | main.rs:457:5:458:14 | S1 | -| main.rs:598:33:598:33 | w | | main.rs:528:5:529:22 | S3 | -| main.rs:598:33:598:33 | w | T3 | main.rs:457:5:458:14 | S1 | -| main.rs:598:36:598:36 | x | | main.rs:457:5:458:14 | S1 | -| main.rs:600:9:600:10 | S4 | | main.rs:556:5:557:14 | S4 | -| main.rs:600:9:600:14 | S4.m() | | {EXTERNAL LOCATION} | () | -| main.rs:601:9:601:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:601:15:601:17 | &S4 | | {EXTERNAL LOCATION} | & | -| main.rs:601:15:601:17 | &S4 | TRef | main.rs:556:5:557:14 | S4 | -| main.rs:601:16:601:17 | S4 | | main.rs:556:5:557:14 | S4 | -| main.rs:602:9:602:16 | S5(...) | | main.rs:566:5:567:22 | S5 | -| main.rs:602:9:602:16 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:602:9:602:20 | ... .m() | | {EXTERNAL LOCATION} | () | -| main.rs:602:12:602:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:603:9:603:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:603:15:603:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:603:15:603:23 | &... | TRef | main.rs:566:5:567:22 | S5 | -| main.rs:603:15:603:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:603:16:603:23 | S5(...) | | main.rs:566:5:567:22 | S5 | -| main.rs:603:16:603:23 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:603:19:603:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:604:9:604:16 | S5(...) | | main.rs:566:5:567:22 | S5 | -| main.rs:604:9:604:16 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | -| main.rs:604:9:604:20 | ... .m() | | {EXTERNAL LOCATION} | () | -| main.rs:604:12:604:15 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:605:9:605:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:605:15:605:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:605:15:605:23 | &... | TRef | main.rs:566:5:567:22 | S5 | -| main.rs:605:15:605:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | bool | -| main.rs:605:16:605:23 | S5(...) | | main.rs:566:5:567:22 | S5 | -| main.rs:605:16:605:23 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | -| main.rs:605:19:605:22 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:622:19:622:22 | SelfParam | | main.rs:620:5:623:5 | Self [trait FirstTrait] | -| main.rs:627:19:627:22 | SelfParam | | main.rs:625:5:628:5 | Self [trait SecondTrait] | -| main.rs:630:64:630:64 | x | | main.rs:630:45:630:61 | T | -| main.rs:630:70:634:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:632:13:632:14 | s1 | | main.rs:630:35:630:42 | I | -| main.rs:632:18:632:18 | x | | main.rs:630:45:630:61 | T | -| main.rs:632:18:632:27 | x.method() | | main.rs:630:35:630:42 | I | -| main.rs:633:9:633:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:633:18:633:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:633:18:633:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:633:18:633:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:633:18:633:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:633:18:633:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:633:26:633:27 | s1 | | main.rs:630:35:630:42 | I | -| main.rs:636:65:636:65 | x | | main.rs:636:46:636:62 | T | -| main.rs:636:71:640:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:638:13:638:14 | s2 | | main.rs:636:36:636:43 | I | -| main.rs:638:18:638:18 | x | | main.rs:636:46:636:62 | T | -| main.rs:638:18:638:27 | x.method() | | main.rs:636:36:636:43 | I | -| main.rs:639:9:639:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:639:18:639:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:639:18:639:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:639:18:639:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:639:18:639:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:639:18:639:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:639:26:639:27 | s2 | | main.rs:636:36:636:43 | I | -| main.rs:642:49:642:49 | x | | main.rs:642:30:642:46 | T | -| main.rs:642:55:645:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:643:13:643:13 | s | | main.rs:612:5:613:14 | S1 | -| main.rs:643:17:643:17 | x | | main.rs:642:30:642:46 | T | -| main.rs:643:17:643:26 | x.method() | | main.rs:612:5:613:14 | S1 | -| main.rs:644:9:644:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:644:18:644:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:644:18:644:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:644:18:644:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:644:18:644:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:644:18:644:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:644:26:644:26 | s | | main.rs:612:5:613:14 | S1 | -| main.rs:647:53:647:53 | x | | main.rs:647:34:647:50 | T | -| main.rs:647:59:650:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:648:13:648:13 | s | | main.rs:612:5:613:14 | S1 | -| main.rs:648:17:648:17 | x | | main.rs:647:34:647:50 | T | -| main.rs:648:17:648:26 | x.method() | | main.rs:612:5:613:14 | S1 | -| main.rs:649:9:649:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:649:18:649:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:649:18:649:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:649:18:649:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:649:18:649:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:649:18:649:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:649:26:649:26 | s | | main.rs:612:5:613:14 | S1 | -| main.rs:652:43:652:43 | x | | main.rs:652:40:652:40 | T | -| main.rs:655:5:658:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:656:13:656:13 | s | | main.rs:612:5:613:14 | S1 | -| main.rs:656:17:656:17 | x | | main.rs:652:40:652:40 | T | -| main.rs:656:17:656:26 | x.method() | | main.rs:612:5:613:14 | S1 | -| main.rs:657:9:657:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:657:18:657:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:657:18:657:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:657:18:657:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:657:18:657:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:657:18:657:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:657:26:657:26 | s | | main.rs:612:5:613:14 | S1 | -| main.rs:661:16:661:19 | SelfParam | | main.rs:660:5:664:5 | Self [trait Pair] | -| main.rs:663:16:663:19 | SelfParam | | main.rs:660:5:664:5 | Self [trait Pair] | -| main.rs:666:53:666:53 | x | | main.rs:666:50:666:50 | T | -| main.rs:666:59:666:59 | y | | main.rs:666:50:666:50 | T | -| main.rs:670:5:673:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:671:13:671:13 | _ | | main.rs:612:5:613:14 | S1 | -| main.rs:671:17:671:17 | x | | main.rs:666:50:666:50 | T | -| main.rs:671:17:671:23 | x.fst() | | main.rs:612:5:613:14 | S1 | -| main.rs:672:13:672:13 | _ | | main.rs:612:5:613:14 | S1 | -| main.rs:672:17:672:17 | y | | main.rs:666:50:666:50 | T | -| main.rs:672:17:672:26 | y.method() | | main.rs:612:5:613:14 | S1 | -| main.rs:675:58:675:58 | x | | main.rs:675:41:675:55 | T | -| main.rs:675:64:675:64 | y | | main.rs:675:41:675:55 | T | -| main.rs:675:70:680:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:677:13:677:14 | s1 | | main.rs:612:5:613:14 | S1 | -| main.rs:677:18:677:18 | x | | main.rs:675:41:675:55 | T | -| main.rs:677:18:677:24 | x.fst() | | main.rs:612:5:613:14 | S1 | -| main.rs:678:13:678:14 | s2 | | main.rs:615:5:616:14 | S2 | -| main.rs:678:18:678:18 | y | | main.rs:675:41:675:55 | T | -| main.rs:678:18:678:24 | y.snd() | | main.rs:615:5:616:14 | S2 | -| main.rs:679:9:679:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:679:18:679:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:679:18:679:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:679:18:679:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:679:18:679:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:679:18:679:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:679:32:679:33 | s1 | | main.rs:612:5:613:14 | S1 | -| main.rs:679:36:679:37 | s2 | | main.rs:615:5:616:14 | S2 | -| main.rs:682:69:682:69 | x | | main.rs:682:52:682:66 | T | -| main.rs:682:75:682:75 | y | | main.rs:682:52:682:66 | T | -| main.rs:682:81:687:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:684:13:684:14 | s1 | | main.rs:612:5:613:14 | S1 | -| main.rs:684:18:684:18 | x | | main.rs:682:52:682:66 | T | -| main.rs:684:18:684:24 | x.fst() | | main.rs:612:5:613:14 | S1 | -| main.rs:685:13:685:14 | s2 | | main.rs:682:41:682:49 | T2 | -| main.rs:685:18:685:18 | y | | main.rs:682:52:682:66 | T | -| main.rs:685:18:685:24 | y.snd() | | main.rs:682:41:682:49 | T2 | -| main.rs:686:9:686:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:686:18:686:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:686:18:686:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:686:18:686:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:686:18:686:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:686:18:686:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:686:32:686:33 | s1 | | main.rs:612:5:613:14 | S1 | -| main.rs:686:36:686:37 | s2 | | main.rs:682:41:682:49 | T2 | -| main.rs:689:50:689:50 | x | | main.rs:689:41:689:47 | T | -| main.rs:689:56:689:56 | y | | main.rs:689:41:689:47 | T | -| main.rs:689:62:694:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:691:13:691:14 | s1 | | {EXTERNAL LOCATION} | bool | -| main.rs:691:18:691:18 | x | | main.rs:689:41:689:47 | T | -| main.rs:691:18:691:24 | x.fst() | | {EXTERNAL LOCATION} | bool | -| main.rs:692:13:692:14 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:692:18:692:18 | y | | main.rs:689:41:689:47 | T | -| main.rs:692:18:692:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | -| main.rs:693:9:693:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:693:18:693:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:693:18:693:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:693:18:693:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:693:18:693:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:693:18:693:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:693:32:693:33 | s1 | | {EXTERNAL LOCATION} | bool | -| main.rs:693:36:693:37 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:696:54:696:54 | x | | main.rs:696:41:696:51 | T | -| main.rs:696:60:696:60 | y | | main.rs:696:41:696:51 | T | -| main.rs:696:66:701:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:698:13:698:14 | s1 | | {EXTERNAL LOCATION} | u8 | -| main.rs:698:18:698:18 | x | | main.rs:696:41:696:51 | T | -| main.rs:698:18:698:24 | x.fst() | | {EXTERNAL LOCATION} | u8 | -| main.rs:699:13:699:14 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:699:18:699:18 | y | | main.rs:696:41:696:51 | T | -| main.rs:699:18:699:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | -| main.rs:700:9:700:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:700:18:700:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:700:18:700:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:700:18:700:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:700:18:700:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:700:18:700:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:700:32:700:33 | s1 | | {EXTERNAL LOCATION} | u8 | -| main.rs:700:36:700:37 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:708:18:708:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:708:18:708:22 | SelfParam | TRef | main.rs:705:5:709:5 | Self [trait TraitWithSelfTp] | -| main.rs:711:40:711:44 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:711:40:711:44 | thing | TRef | main.rs:711:17:711:37 | T | -| main.rs:711:56:713:5 | { ... } | | main.rs:711:14:711:14 | A | -| main.rs:712:9:712:13 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:712:9:712:13 | thing | TRef | main.rs:711:17:711:37 | T | -| main.rs:712:9:712:21 | thing.get_a() | | main.rs:711:14:711:14 | A | -| main.rs:716:44:716:48 | thing | | main.rs:716:24:716:41 | S | -| main.rs:716:61:719:5 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:717:13:717:15 | _ms | | {EXTERNAL LOCATION} | Option | -| main.rs:717:13:717:15 | _ms | T | main.rs:716:24:716:41 | S | -| main.rs:717:19:717:23 | thing | | main.rs:716:24:716:41 | S | -| main.rs:717:19:717:31 | thing.get_a() | | {EXTERNAL LOCATION} | Option | -| main.rs:717:19:717:31 | thing.get_a() | T | main.rs:716:24:716:41 | S | -| main.rs:718:9:718:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:718:9:718:9 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:724:55:724:59 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:724:55:724:59 | thing | TRef | main.rs:724:25:724:52 | S | -| main.rs:724:66:727:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:726:13:726:15 | _ms | | {EXTERNAL LOCATION} | Option | -| main.rs:726:13:726:15 | _ms | T | main.rs:724:25:724:52 | S | -| main.rs:726:19:726:30 | get_a(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:726:19:726:30 | get_a(...) | T | main.rs:724:25:724:52 | S | -| main.rs:726:25:726:29 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:726:25:726:29 | thing | TRef | main.rs:724:25:724:52 | S | -| main.rs:735:18:735:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:735:18:735:22 | SelfParam | TRef | main.rs:729:5:731:5 | MyStruct | -| main.rs:735:41:737:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:735:41:737:9 | { ... } | T | main.rs:729:5:731:5 | MyStruct | -| main.rs:736:13:736:48 | Some(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:736:13:736:48 | Some(...) | T | main.rs:729:5:731:5 | MyStruct | -| main.rs:736:18:736:47 | MyStruct {...} | | main.rs:729:5:731:5 | MyStruct | -| main.rs:736:36:736:39 | self | | {EXTERNAL LOCATION} | & | -| main.rs:736:36:736:39 | self | TRef | main.rs:729:5:731:5 | MyStruct | -| main.rs:736:36:736:45 | self.value | | {EXTERNAL LOCATION} | i32 | -| main.rs:742:19:745:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:743:13:743:13 | s | | main.rs:729:5:731:5 | MyStruct | -| main.rs:743:17:743:37 | MyStruct {...} | | main.rs:729:5:731:5 | MyStruct | -| main.rs:743:35:743:35 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:744:13:744:15 | _ms | | {EXTERNAL LOCATION} | Option | -| main.rs:744:13:744:15 | _ms | T | main.rs:729:5:731:5 | MyStruct | -| main.rs:744:19:744:27 | get_a(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:744:19:744:27 | get_a(...) | T | main.rs:729:5:731:5 | MyStruct | -| main.rs:744:25:744:26 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:744:25:744:26 | &s | TRef | main.rs:729:5:731:5 | MyStruct | -| main.rs:744:26:744:26 | s | | main.rs:729:5:731:5 | MyStruct | -| main.rs:760:15:760:18 | SelfParam | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:762:15:762:18 | SelfParam | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:765:9:767:9 | { ... } | | main.rs:759:19:759:19 | A | -| main.rs:766:13:766:16 | self | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:766:13:766:21 | self.m1() | | main.rs:759:19:759:19 | A | -| main.rs:769:18:769:18 | x | | main.rs:759:5:770:5 | Self [trait MyTrait] | -| main.rs:773:15:773:18 | SelfParam | | main.rs:756:5:757:14 | S2 | -| main.rs:773:26:775:9 | { ... } | | main.rs:772:10:772:19 | T | -| main.rs:774:13:774:30 | ...::default(...) | | main.rs:772:10:772:19 | T | -| main.rs:777:18:777:18 | x | | main.rs:756:5:757:14 | S2 | -| main.rs:777:32:779:9 | { ... } | | main.rs:772:10:772:19 | T | -| main.rs:778:13:778:30 | ...::default(...) | | main.rs:772:10:772:19 | T | -| main.rs:783:15:783:18 | SelfParam | | main.rs:754:5:755:14 | S1 | -| main.rs:783:28:785:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:784:13:784:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:787:18:787:18 | x | | main.rs:754:5:755:14 | S1 | -| main.rs:787:34:789:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:788:13:788:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:794:50:794:50 | x | | main.rs:794:26:794:47 | T2 | -| main.rs:794:63:797:5 | { ... } | | main.rs:794:22:794:23 | T1 | -| main.rs:795:9:795:9 | x | | main.rs:794:26:794:47 | T2 | -| main.rs:795:9:795:14 | x.m1() | | main.rs:794:22:794:23 | T1 | -| main.rs:796:9:796:9 | x | | main.rs:794:26:794:47 | T2 | -| main.rs:796:9:796:14 | x.m1() | | main.rs:794:22:794:23 | T1 | -| main.rs:798:52:798:52 | x | | main.rs:798:28:798:49 | T2 | -| main.rs:798:65:802:5 | { ... } | | main.rs:798:24:798:25 | T1 | -| main.rs:799:13:799:13 | y | | main.rs:798:24:798:25 | T1 | -| main.rs:799:17:799:25 | ...::m1(...) | | main.rs:798:24:798:25 | T1 | -| main.rs:799:24:799:24 | x | | main.rs:798:28:798:49 | T2 | -| main.rs:800:9:800:9 | y | | main.rs:798:24:798:25 | T1 | -| main.rs:801:9:801:17 | ...::m1(...) | | main.rs:798:24:798:25 | T1 | -| main.rs:801:16:801:16 | x | | main.rs:798:28:798:49 | T2 | -| main.rs:803:52:803:52 | x | | main.rs:803:28:803:49 | T2 | -| main.rs:803:65:807:5 | { ... } | | main.rs:803:24:803:25 | T1 | -| main.rs:804:13:804:13 | y | | main.rs:803:24:803:25 | T1 | -| main.rs:804:17:804:30 | ...::m1(...) | | main.rs:803:24:803:25 | T1 | -| main.rs:804:29:804:29 | x | | main.rs:803:28:803:49 | T2 | -| main.rs:805:9:805:9 | y | | main.rs:803:24:803:25 | T1 | -| main.rs:806:9:806:22 | ...::m1(...) | | main.rs:803:24:803:25 | T1 | -| main.rs:806:21:806:21 | x | | main.rs:803:28:803:49 | T2 | -| main.rs:808:55:808:55 | x | | main.rs:808:31:808:52 | T2 | -| main.rs:808:68:812:5 | { ... } | | main.rs:808:27:808:28 | T1 | -| main.rs:809:13:809:13 | y | | main.rs:808:27:808:28 | T1 | -| main.rs:809:17:809:28 | ...::assoc(...) | | main.rs:808:27:808:28 | T1 | -| main.rs:809:27:809:27 | x | | main.rs:808:31:808:52 | T2 | -| main.rs:810:9:810:9 | y | | main.rs:808:27:808:28 | T1 | -| main.rs:811:9:811:20 | ...::assoc(...) | | main.rs:808:27:808:28 | T1 | -| main.rs:811:19:811:19 | x | | main.rs:808:31:808:52 | T2 | -| main.rs:813:55:813:55 | x | | main.rs:813:31:813:52 | T2 | -| main.rs:813:68:817:5 | { ... } | | main.rs:813:27:813:28 | T1 | -| main.rs:814:13:814:13 | y | | main.rs:813:27:813:28 | T1 | -| main.rs:814:17:814:33 | ...::assoc(...) | | main.rs:813:27:813:28 | T1 | -| main.rs:814:32:814:32 | x | | main.rs:813:31:813:52 | T2 | -| main.rs:815:9:815:9 | y | | main.rs:813:27:813:28 | T1 | -| main.rs:816:9:816:25 | ...::assoc(...) | | main.rs:813:27:813:28 | T1 | -| main.rs:816:24:816:24 | x | | main.rs:813:31:813:52 | T2 | -| main.rs:821:49:821:49 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:821:49:821:49 | x | T | main.rs:821:32:821:46 | T2 | -| main.rs:821:71:823:5 | { ... } | | main.rs:821:28:821:29 | T1 | -| main.rs:822:9:822:9 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:822:9:822:9 | x | T | main.rs:821:32:821:46 | T2 | -| main.rs:822:9:822:11 | x.a | | main.rs:821:32:821:46 | T2 | -| main.rs:822:9:822:16 | ... .m1() | | main.rs:821:28:821:29 | T1 | -| main.rs:824:51:824:51 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:824:51:824:51 | x | T | main.rs:824:34:824:48 | T2 | -| main.rs:824:73:826:5 | { ... } | | main.rs:824:30:824:31 | T1 | -| main.rs:825:9:825:19 | ...::m1(...) | | main.rs:824:30:824:31 | T1 | -| main.rs:825:16:825:16 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:825:16:825:16 | x | T | main.rs:824:34:824:48 | T2 | -| main.rs:825:16:825:18 | x.a | | main.rs:824:34:824:48 | T2 | -| main.rs:827:51:827:51 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:827:51:827:51 | x | T | main.rs:827:34:827:48 | T2 | -| main.rs:827:73:829:5 | { ... } | | main.rs:827:30:827:31 | T1 | -| main.rs:828:9:828:24 | ...::m1(...) | | main.rs:827:30:827:31 | T1 | -| main.rs:828:21:828:21 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:828:21:828:21 | x | T | main.rs:827:34:827:48 | T2 | -| main.rs:828:21:828:23 | x.a | | main.rs:827:34:827:48 | T2 | -| main.rs:832:15:832:18 | SelfParam | | main.rs:749:5:752:5 | MyThing | -| main.rs:832:15:832:18 | SelfParam | T | main.rs:831:10:831:10 | T | -| main.rs:832:26:834:9 | { ... } | | main.rs:831:10:831:10 | T | -| main.rs:833:13:833:16 | self | | main.rs:749:5:752:5 | MyThing | -| main.rs:833:13:833:16 | self | T | main.rs:831:10:831:10 | T | -| main.rs:833:13:833:18 | self.a | | main.rs:831:10:831:10 | T | -| main.rs:836:18:836:18 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:836:18:836:18 | x | T | main.rs:831:10:831:10 | T | -| main.rs:836:32:838:9 | { ... } | | main.rs:831:10:831:10 | T | -| main.rs:837:13:837:13 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:837:13:837:13 | x | T | main.rs:831:10:831:10 | T | -| main.rs:837:13:837:15 | x.a | | main.rs:831:10:831:10 | T | -| main.rs:843:15:843:18 | SelfParam | | main.rs:841:5:844:5 | Self [trait MyTrait2] | -| main.rs:848:15:848:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:848:15:848:19 | SelfParam | TRef | main.rs:846:5:849:5 | Self [trait MyTrait3] | -| main.rs:851:46:851:46 | x | | main.rs:851:22:851:43 | T | -| main.rs:851:52:851:52 | y | | {EXTERNAL LOCATION} | & | -| main.rs:851:52:851:52 | y | TRef | main.rs:851:22:851:43 | T | -| main.rs:851:59:854:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:852:9:852:9 | x | | main.rs:851:22:851:43 | T | -| main.rs:852:9:852:14 | x.m2() | | {EXTERNAL LOCATION} | () | -| main.rs:853:9:853:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:853:9:853:9 | y | TRef | main.rs:851:22:851:43 | T | -| main.rs:853:9:853:14 | y.m2() | | {EXTERNAL LOCATION} | () | -| main.rs:856:16:914:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:857:13:857:13 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:857:13:857:13 | x | T | main.rs:754:5:755:14 | S1 | -| main.rs:857:17:857:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:857:17:857:33 | MyThing {...} | T | main.rs:754:5:755:14 | S1 | -| main.rs:857:30:857:31 | S1 | | main.rs:754:5:755:14 | S1 | -| main.rs:858:13:858:13 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:858:13:858:13 | y | T | main.rs:756:5:757:14 | S2 | -| main.rs:858:17:858:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:858:17:858:33 | MyThing {...} | T | main.rs:756:5:757:14 | S2 | -| main.rs:858:30:858:31 | S2 | | main.rs:756:5:757:14 | S2 | -| main.rs:860:9:860:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:860:18:860:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:860:18:860:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:860:18:860:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:860:18:860:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:860:18:860:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:860:26:860:26 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:860:26:860:26 | x | T | main.rs:754:5:755:14 | S1 | -| main.rs:860:26:860:31 | x.m1() | | main.rs:754:5:755:14 | S1 | -| main.rs:861:9:861:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:861:18:861:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:861:18:861:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:861:18:861:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:861:18:861:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:861:18:861:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:861:26:861:26 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:861:26:861:26 | y | T | main.rs:756:5:757:14 | S2 | -| main.rs:861:26:861:31 | y.m1() | | main.rs:756:5:757:14 | S2 | -| main.rs:863:13:863:13 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:863:13:863:13 | x | T | main.rs:754:5:755:14 | S1 | -| main.rs:863:17:863:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:863:17:863:33 | MyThing {...} | T | main.rs:754:5:755:14 | S1 | -| main.rs:863:30:863:31 | S1 | | main.rs:754:5:755:14 | S1 | -| main.rs:864:13:864:13 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:864:13:864:13 | y | T | main.rs:756:5:757:14 | S2 | -| main.rs:864:17:864:33 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:864:17:864:33 | MyThing {...} | T | main.rs:756:5:757:14 | S2 | -| main.rs:864:30:864:31 | S2 | | main.rs:756:5:757:14 | S2 | -| main.rs:866:9:866:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:866:18:866:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:866:18:866:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:866:18:866:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:866:18:866:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:866:18:866:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:866:26:866:26 | x | | main.rs:749:5:752:5 | MyThing | -| main.rs:866:26:866:26 | x | T | main.rs:754:5:755:14 | S1 | -| main.rs:866:26:866:31 | x.m2() | | main.rs:754:5:755:14 | S1 | -| main.rs:867:9:867:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:867:18:867:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:867:18:867:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:867:18:867:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:867:18:867:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:867:18:867:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:867:26:867:26 | y | | main.rs:749:5:752:5 | MyThing | -| main.rs:867:26:867:26 | y | T | main.rs:756:5:757:14 | S2 | -| main.rs:867:26:867:31 | y.m2() | | main.rs:756:5:757:14 | S2 | -| main.rs:869:13:869:14 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:869:13:869:14 | x2 | T | main.rs:754:5:755:14 | S1 | -| main.rs:869:18:869:34 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:869:18:869:34 | MyThing {...} | T | main.rs:754:5:755:14 | S1 | -| main.rs:869:31:869:32 | S1 | | main.rs:754:5:755:14 | S1 | -| main.rs:870:13:870:14 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:870:13:870:14 | y2 | T | main.rs:756:5:757:14 | S2 | -| main.rs:870:18:870:34 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:870:18:870:34 | MyThing {...} | T | main.rs:756:5:757:14 | S2 | -| main.rs:870:31:870:32 | S2 | | main.rs:756:5:757:14 | S2 | -| main.rs:872:13:872:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:872:17:872:33 | call_trait_m1(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:872:31:872:32 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:872:31:872:32 | x2 | T | main.rs:754:5:755:14 | S1 | -| main.rs:873:9:873:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:873:18:873:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:873:18:873:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:873:18:873:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:873:18:873:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:873:18:873:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:873:26:873:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:874:13:874:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:874:17:874:35 | call_trait_m1_2(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:874:33:874:34 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:874:33:874:34 | x2 | T | main.rs:754:5:755:14 | S1 | -| main.rs:875:9:875:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:875:18:875:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:875:18:875:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:875:18:875:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:875:18:875:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:875:18:875:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:875:26:875:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:876:13:876:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:876:17:876:35 | call_trait_m1_3(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:876:33:876:34 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:876:33:876:34 | x2 | T | main.rs:754:5:755:14 | S1 | -| main.rs:877:9:877:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:877:18:877:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:877:18:877:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:877:18:877:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:877:18:877:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:877:18:877:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:877:26:877:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:878:13:878:13 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:878:17:878:33 | call_trait_m1(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:878:31:878:32 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:878:31:878:32 | y2 | T | main.rs:756:5:757:14 | S2 | -| main.rs:879:9:879:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:879:18:879:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:879:18:879:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:879:18:879:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:879:18:879:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:879:18:879:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:879:26:879:26 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:880:13:880:13 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:880:17:880:35 | call_trait_m1_2(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:880:33:880:34 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:880:33:880:34 | y2 | T | main.rs:756:5:757:14 | S2 | -| main.rs:881:9:881:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:881:18:881:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:881:18:881:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:881:18:881:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:881:18:881:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:881:18:881:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:881:26:881:26 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:882:13:882:13 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:882:17:882:35 | call_trait_m1_3(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:882:33:882:34 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:882:33:882:34 | y2 | T | main.rs:756:5:757:14 | S2 | -| main.rs:883:9:883:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:883:18:883:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:883:18:883:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:883:18:883:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:883:18:883:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:883:18:883:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:883:26:883:26 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:884:13:884:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:884:17:884:38 | call_trait_assoc_1(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:884:36:884:37 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:884:36:884:37 | x2 | T | main.rs:754:5:755:14 | S1 | -| main.rs:885:9:885:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:885:18:885:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:885:18:885:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:885:18:885:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:885:18:885:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:885:18:885:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:885:26:885:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:886:13:886:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:886:17:886:38 | call_trait_assoc_2(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:886:36:886:37 | x2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:886:36:886:37 | x2 | T | main.rs:754:5:755:14 | S1 | -| main.rs:887:9:887:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:887:18:887:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:887:18:887:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:887:18:887:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:887:18:887:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:887:18:887:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:887:26:887:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:888:13:888:13 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:888:17:888:38 | call_trait_assoc_1(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:888:36:888:37 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:888:36:888:37 | y2 | T | main.rs:756:5:757:14 | S2 | -| main.rs:889:9:889:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:889:18:889:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:889:18:889:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:889:18:889:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:889:18:889:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:889:18:889:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:889:26:889:26 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:890:13:890:13 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:890:17:890:38 | call_trait_assoc_2(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:890:36:890:37 | y2 | | main.rs:749:5:752:5 | MyThing | -| main.rs:890:36:890:37 | y2 | T | main.rs:756:5:757:14 | S2 | -| main.rs:891:9:891:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:442:26:442:26 | y | | main.rs:277:5:278:14 | S1 | +| main.rs:448:13:448:13 | b | | main.rs:271:5:275:5 | MyPair | +| main.rs:448:13:448:13 | b | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:448:13:448:13 | b | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:448:17:448:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:448:17:448:41 | MyPair {...} | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:448:17:448:41 | MyPair {...} | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:448:30:448:31 | S2 | | main.rs:279:5:280:14 | S2 | +| main.rs:448:38:448:39 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:449:13:449:13 | x | | main.rs:277:5:278:14 | S1 | +| main.rs:449:17:449:17 | b | | main.rs:271:5:275:5 | MyPair | +| main.rs:449:17:449:17 | b | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:449:17:449:17 | b | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:449:17:449:23 | b.fst() | | main.rs:277:5:278:14 | S1 | +| main.rs:450:9:450:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:450:18:450:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:450:18:450:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:450:18:450:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:450:18:450:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:450:18:450:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:450:26:450:26 | x | | main.rs:277:5:278:14 | S1 | +| main.rs:451:13:451:13 | y | | main.rs:279:5:280:14 | S2 | +| main.rs:451:17:451:17 | b | | main.rs:271:5:275:5 | MyPair | +| main.rs:451:17:451:17 | b | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:451:17:451:17 | b | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:451:17:451:23 | b.snd() | | main.rs:279:5:280:14 | S2 | +| main.rs:452:9:452:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:452:18:452:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:452:18:452:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:452:18:452:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:452:18:452:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:452:18:452:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:452:26:452:26 | y | | main.rs:279:5:280:14 | S2 | +| main.rs:456:13:456:13 | x | | main.rs:277:5:278:14 | S1 | +| main.rs:456:17:456:39 | call_trait_m1(...) | | main.rs:277:5:278:14 | S1 | +| main.rs:456:31:456:38 | thing_s1 | | main.rs:266:5:269:5 | MyThing | +| main.rs:456:31:456:38 | thing_s1 | A | main.rs:277:5:278:14 | S1 | +| main.rs:457:9:457:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:457:18:457:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:457:18:457:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:457:18:457:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:457:18:457:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:457:18:457:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:457:26:457:26 | x | | main.rs:277:5:278:14 | S1 | +| main.rs:458:13:458:13 | y | | main.rs:266:5:269:5 | MyThing | +| main.rs:458:13:458:13 | y | A | main.rs:279:5:280:14 | S2 | +| main.rs:458:17:458:39 | call_trait_m1(...) | | main.rs:266:5:269:5 | MyThing | +| main.rs:458:17:458:39 | call_trait_m1(...) | A | main.rs:279:5:280:14 | S2 | +| main.rs:458:31:458:38 | thing_s2 | | main.rs:266:5:269:5 | MyThing | +| main.rs:458:31:458:38 | thing_s2 | A | main.rs:279:5:280:14 | S2 | +| main.rs:459:9:459:29 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:459:18:459:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:459:18:459:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:459:18:459:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:459:18:459:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:459:18:459:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:459:26:459:26 | y | | main.rs:266:5:269:5 | MyThing | +| main.rs:459:26:459:26 | y | A | main.rs:279:5:280:14 | S2 | +| main.rs:459:26:459:28 | y.a | | main.rs:279:5:280:14 | S2 | +| main.rs:462:13:462:13 | a | | main.rs:271:5:275:5 | MyPair | +| main.rs:462:13:462:13 | a | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:462:13:462:13 | a | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:462:17:462:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:462:17:462:41 | MyPair {...} | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:462:17:462:41 | MyPair {...} | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:462:30:462:31 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:462:38:462:39 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:463:13:463:13 | x | | main.rs:277:5:278:14 | S1 | +| main.rs:463:17:463:26 | get_fst(...) | | main.rs:277:5:278:14 | S1 | +| main.rs:463:25:463:25 | a | | main.rs:271:5:275:5 | MyPair | +| main.rs:463:25:463:25 | a | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:463:25:463:25 | a | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:464:9:464:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:464:18:464:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:464:18:464:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:464:18:464:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:464:18:464:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:464:18:464:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:464:26:464:26 | x | | main.rs:277:5:278:14 | S1 | +| main.rs:465:13:465:13 | y | | main.rs:277:5:278:14 | S1 | +| main.rs:465:17:465:26 | get_snd(...) | | main.rs:277:5:278:14 | S1 | +| main.rs:465:25:465:25 | a | | main.rs:271:5:275:5 | MyPair | +| main.rs:465:25:465:25 | a | P1 | main.rs:277:5:278:14 | S1 | +| main.rs:465:25:465:25 | a | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:466:9:466:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:466:18:466:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:466:18:466:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:466:18:466:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:466:18:466:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:466:18:466:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:466:26:466:26 | y | | main.rs:277:5:278:14 | S1 | +| main.rs:469:13:469:13 | b | | main.rs:271:5:275:5 | MyPair | +| main.rs:469:13:469:13 | b | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:469:13:469:13 | b | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:469:17:469:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:469:17:469:41 | MyPair {...} | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:469:17:469:41 | MyPair {...} | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:469:30:469:31 | S2 | | main.rs:279:5:280:14 | S2 | +| main.rs:469:38:469:39 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:470:13:470:13 | x | | main.rs:277:5:278:14 | S1 | +| main.rs:470:17:470:26 | get_fst(...) | | main.rs:277:5:278:14 | S1 | +| main.rs:470:25:470:25 | b | | main.rs:271:5:275:5 | MyPair | +| main.rs:470:25:470:25 | b | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:470:25:470:25 | b | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:471:9:471:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:471:18:471:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:471:18:471:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:471:18:471:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:471:18:471:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:471:18:471:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:471:26:471:26 | x | | main.rs:277:5:278:14 | S1 | +| main.rs:472:13:472:13 | y | | main.rs:279:5:280:14 | S2 | +| main.rs:472:17:472:26 | get_snd(...) | | main.rs:279:5:280:14 | S2 | +| main.rs:472:25:472:25 | b | | main.rs:271:5:275:5 | MyPair | +| main.rs:472:25:472:25 | b | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:472:25:472:25 | b | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:473:9:473:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:473:18:473:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:473:18:473:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:473:18:473:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:473:18:473:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:473:18:473:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:473:26:473:26 | y | | main.rs:279:5:280:14 | S2 | +| main.rs:475:13:475:13 | c | | main.rs:271:5:275:5 | MyPair | +| main.rs:475:13:475:13 | c | P1 | main.rs:281:5:282:14 | S3 | +| main.rs:475:13:475:13 | c | P2 | main.rs:271:5:275:5 | MyPair | +| main.rs:475:13:475:13 | c | P2.P1 | main.rs:279:5:280:14 | S2 | +| main.rs:475:13:475:13 | c | P2.P2 | main.rs:277:5:278:14 | S1 | +| main.rs:475:17:478:9 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:475:17:478:9 | MyPair {...} | P1 | main.rs:281:5:282:14 | S3 | +| main.rs:475:17:478:9 | MyPair {...} | P2 | main.rs:271:5:275:5 | MyPair | +| main.rs:475:17:478:9 | MyPair {...} | P2.P1 | main.rs:279:5:280:14 | S2 | +| main.rs:475:17:478:9 | MyPair {...} | P2.P2 | main.rs:277:5:278:14 | S1 | +| main.rs:476:17:476:18 | S3 | | main.rs:281:5:282:14 | S3 | +| main.rs:477:17:477:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:477:17:477:41 | MyPair {...} | P1 | main.rs:279:5:280:14 | S2 | +| main.rs:477:17:477:41 | MyPair {...} | P2 | main.rs:277:5:278:14 | S1 | +| main.rs:477:30:477:31 | S2 | | main.rs:279:5:280:14 | S2 | +| main.rs:477:38:477:39 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:479:13:479:13 | x | | main.rs:277:5:278:14 | S1 | +| main.rs:479:17:479:30 | get_snd_fst(...) | | main.rs:277:5:278:14 | S1 | +| main.rs:479:29:479:29 | c | | main.rs:271:5:275:5 | MyPair | +| main.rs:479:29:479:29 | c | P1 | main.rs:281:5:282:14 | S3 | +| main.rs:479:29:479:29 | c | P2 | main.rs:271:5:275:5 | MyPair | +| main.rs:479:29:479:29 | c | P2.P1 | main.rs:279:5:280:14 | S2 | +| main.rs:479:29:479:29 | c | P2.P2 | main.rs:277:5:278:14 | S1 | +| main.rs:481:13:481:17 | thing | | main.rs:266:5:269:5 | MyThing | +| main.rs:481:13:481:17 | thing | A | main.rs:277:5:278:14 | S1 | +| main.rs:481:21:481:37 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | +| main.rs:481:21:481:37 | MyThing {...} | A | main.rs:277:5:278:14 | S1 | +| main.rs:481:34:481:35 | S1 | | main.rs:277:5:278:14 | S1 | +| main.rs:482:13:482:13 | i | | main.rs:277:5:278:14 | S1 | +| main.rs:482:17:482:21 | thing | | main.rs:266:5:269:5 | MyThing | +| main.rs:482:17:482:21 | thing | A | main.rs:277:5:278:14 | S1 | +| main.rs:482:17:482:34 | thing.convert_to() | | main.rs:277:5:278:14 | S1 | +| main.rs:483:28:483:32 | thing | | main.rs:266:5:269:5 | MyThing | +| main.rs:483:28:483:32 | thing | A | main.rs:277:5:278:14 | S1 | +| main.rs:492:26:492:29 | SelfParam | | main.rs:491:5:495:5 | Self [trait OverlappingTrait] | +| main.rs:494:28:494:31 | SelfParam | | main.rs:491:5:495:5 | Self [trait OverlappingTrait] | +| main.rs:494:34:494:35 | s1 | | main.rs:488:5:489:14 | S1 | +| main.rs:499:26:499:29 | SelfParam | | main.rs:488:5:489:14 | S1 | +| main.rs:499:38:501:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:500:13:500:14 | S1 | | main.rs:488:5:489:14 | S1 | +| main.rs:504:28:504:31 | SelfParam | | main.rs:488:5:489:14 | S1 | +| main.rs:504:34:504:35 | s1 | | main.rs:488:5:489:14 | S1 | +| main.rs:504:48:506:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:505:13:505:14 | S1 | | main.rs:488:5:489:14 | S1 | +| main.rs:511:26:511:29 | SelfParam | | main.rs:488:5:489:14 | S1 | +| main.rs:511:38:513:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:512:13:512:16 | self | | main.rs:488:5:489:14 | S1 | +| main.rs:516:28:516:31 | SelfParam | | main.rs:488:5:489:14 | S1 | +| main.rs:516:40:518:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:517:13:517:16 | self | | main.rs:488:5:489:14 | S1 | +| main.rs:525:26:525:29 | SelfParam | | main.rs:521:5:521:22 | S2 | +| main.rs:525:26:525:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:525:38:527:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:526:13:526:14 | S1 | | main.rs:488:5:489:14 | S1 | +| main.rs:530:28:530:31 | SelfParam | | main.rs:521:5:521:22 | S2 | +| main.rs:530:28:530:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:530:40:532:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:531:13:531:14 | S1 | | main.rs:488:5:489:14 | S1 | +| main.rs:537:26:537:29 | SelfParam | | main.rs:521:5:521:22 | S2 | +| main.rs:537:26:537:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:537:38:539:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:538:13:538:14 | S1 | | main.rs:488:5:489:14 | S1 | +| main.rs:542:28:542:31 | SelfParam | | main.rs:521:5:521:22 | S2 | +| main.rs:542:28:542:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:542:34:542:35 | s1 | | main.rs:488:5:489:14 | S1 | +| main.rs:542:48:544:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:543:13:543:14 | S1 | | main.rs:488:5:489:14 | S1 | +| main.rs:549:26:549:29 | SelfParam | | main.rs:521:5:521:22 | S2 | +| main.rs:549:26:549:29 | SelfParam | T2 | main.rs:488:5:489:14 | S1 | +| main.rs:549:38:551:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:550:13:550:14 | S1 | | main.rs:488:5:489:14 | S1 | +| main.rs:554:28:554:31 | SelfParam | | main.rs:521:5:521:22 | S2 | +| main.rs:554:28:554:31 | SelfParam | T2 | main.rs:488:5:489:14 | S1 | +| main.rs:554:34:554:35 | s1 | | main.rs:488:5:489:14 | S1 | +| main.rs:554:48:556:9 | { ... } | | main.rs:488:5:489:14 | S1 | +| main.rs:555:13:555:14 | S1 | | main.rs:488:5:489:14 | S1 | +| main.rs:563:14:563:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:563:14:563:18 | SelfParam | TRef | main.rs:562:5:564:5 | Self [trait OverlappingTrait2] | +| main.rs:563:21:563:21 | x | | {EXTERNAL LOCATION} | & | +| main.rs:563:21:563:21 | x | TRef | main.rs:562:29:562:29 | T | +| main.rs:568:14:568:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:568:14:568:18 | SelfParam | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:568:14:568:18 | SelfParam | TRef.T3 | main.rs:566:10:566:10 | T | +| main.rs:568:21:568:21 | x | | {EXTERNAL LOCATION} | & | +| main.rs:568:21:568:21 | x | TRef | main.rs:566:10:566:10 | T | +| main.rs:568:37:570:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:568:37:570:9 | { ... } | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:568:37:570:9 | { ... } | TRef.T3 | main.rs:566:10:566:10 | T | +| main.rs:569:13:569:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:569:13:569:16 | self | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:569:13:569:16 | self | TRef.T3 | main.rs:566:10:566:10 | T | +| main.rs:575:14:575:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:575:14:575:18 | SelfParam | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:575:14:575:18 | SelfParam | TRef.T3 | main.rs:573:10:573:10 | T | +| main.rs:575:21:575:21 | x | | main.rs:573:10:573:10 | T | +| main.rs:575:36:577:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:575:36:577:9 | { ... } | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:575:36:577:9 | { ... } | TRef.T3 | main.rs:573:10:573:10 | T | +| main.rs:576:13:576:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:576:13:576:16 | self | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:576:13:576:16 | self | TRef.T3 | main.rs:573:10:573:10 | T | +| main.rs:582:14:582:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:582:14:582:18 | SelfParam | TRef | main.rs:580:5:583:5 | Self [trait MyTrait1] | +| main.rs:582:21:582:22 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:592:14:592:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:592:14:592:18 | SelfParam | TRef | main.rs:587:5:588:14 | S4 | +| main.rs:592:21:592:22 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:602:14:602:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:602:14:602:18 | SelfParam | TRef | main.rs:597:5:598:22 | S5 | +| main.rs:602:14:602:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:602:21:602:22 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:611:16:637:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:612:13:612:13 | x | | main.rs:488:5:489:14 | S1 | +| main.rs:612:17:612:18 | S1 | | main.rs:488:5:489:14 | S1 | +| main.rs:613:9:613:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:613:18:613:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:613:18:613:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:613:18:613:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:613:18:613:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:613:18:613:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:613:26:613:26 | x | | main.rs:488:5:489:14 | S1 | +| main.rs:613:26:613:42 | x.common_method() | | main.rs:488:5:489:14 | S1 | +| main.rs:614:9:614:46 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:614:18:614:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:614:18:614:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:614:18:614:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:614:18:614:45 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:614:18:614:45 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:614:26:614:45 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | +| main.rs:614:44:614:44 | x | | main.rs:488:5:489:14 | S1 | +| main.rs:615:9:615:45 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:615:18:615:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:615:18:615:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:615:18:615:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:615:18:615:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:615:18:615:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:615:26:615:26 | x | | main.rs:488:5:489:14 | S1 | +| main.rs:615:26:615:44 | x.common_method_2() | | main.rs:488:5:489:14 | S1 | +| main.rs:616:9:616:48 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:616:18:616:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:616:18:616:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:616:18:616:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:616:18:616:47 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:616:18:616:47 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:616:26:616:47 | ...::common_method_2(...) | | main.rs:488:5:489:14 | S1 | +| main.rs:616:46:616:46 | x | | main.rs:488:5:489:14 | S1 | +| main.rs:618:13:618:13 | y | | main.rs:521:5:521:22 | S2 | +| main.rs:618:13:618:13 | y | T2 | main.rs:488:5:489:14 | S1 | +| main.rs:618:17:618:22 | S2(...) | | main.rs:521:5:521:22 | S2 | +| main.rs:618:17:618:22 | S2(...) | T2 | main.rs:488:5:489:14 | S1 | +| main.rs:618:20:618:21 | S1 | | main.rs:488:5:489:14 | S1 | +| main.rs:619:9:619:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:619:18:619:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:619:18:619:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:619:18:619:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:619:18:619:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:619:18:619:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:619:26:619:26 | y | | main.rs:521:5:521:22 | S2 | +| main.rs:619:26:619:26 | y | T2 | main.rs:488:5:489:14 | S1 | +| main.rs:619:26:619:42 | y.common_method() | | main.rs:488:5:489:14 | S1 | +| main.rs:620:9:620:57 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:620:18:620:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:620:18:620:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:620:18:620:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:620:18:620:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:620:18:620:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:620:26:620:56 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | +| main.rs:620:50:620:55 | S2(...) | | main.rs:521:5:521:22 | S2 | +| main.rs:620:50:620:55 | S2(...) | T2 | main.rs:488:5:489:14 | S1 | +| main.rs:620:53:620:54 | S1 | | main.rs:488:5:489:14 | S1 | +| main.rs:622:13:622:13 | z | | main.rs:521:5:521:22 | S2 | +| main.rs:622:13:622:13 | z | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:622:17:622:21 | S2(...) | | main.rs:521:5:521:22 | S2 | +| main.rs:622:17:622:21 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:622:20:622:20 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:623:9:623:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:623:18:623:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:623:18:623:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:623:18:623:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:623:18:623:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:623:18:623:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:623:26:623:26 | z | | main.rs:521:5:521:22 | S2 | +| main.rs:623:26:623:26 | z | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:623:26:623:42 | z.common_method() | | main.rs:488:5:489:14 | S1 | +| main.rs:624:9:624:50 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:624:18:624:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:624:18:624:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:624:18:624:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:624:18:624:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:624:18:624:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:624:26:624:49 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | +| main.rs:624:44:624:48 | S2(...) | | main.rs:521:5:521:22 | S2 | +| main.rs:624:44:624:48 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:624:47:624:47 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:625:9:625:57 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:625:18:625:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:625:18:625:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:625:18:625:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:625:18:625:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:625:18:625:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:625:26:625:56 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | +| main.rs:625:51:625:55 | S2(...) | | main.rs:521:5:521:22 | S2 | +| main.rs:625:51:625:55 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| main.rs:625:54:625:54 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:627:13:627:13 | w | | main.rs:559:5:560:22 | S3 | +| main.rs:627:13:627:13 | w | T3 | main.rs:488:5:489:14 | S1 | +| main.rs:627:17:627:22 | S3(...) | | main.rs:559:5:560:22 | S3 | +| main.rs:627:17:627:22 | S3(...) | T3 | main.rs:488:5:489:14 | S1 | +| main.rs:627:20:627:21 | S1 | | main.rs:488:5:489:14 | S1 | +| main.rs:628:9:628:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:628:18:628:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:628:18:628:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:628:18:628:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:628:18:628:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:628:18:628:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:628:26:628:26 | w | | main.rs:559:5:560:22 | S3 | +| main.rs:628:26:628:26 | w | T3 | main.rs:488:5:489:14 | S1 | +| main.rs:628:26:628:31 | w.m(...) | | {EXTERNAL LOCATION} | & | +| main.rs:628:26:628:31 | w.m(...) | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:628:26:628:31 | w.m(...) | TRef.T3 | main.rs:488:5:489:14 | S1 | +| main.rs:628:30:628:30 | x | | main.rs:488:5:489:14 | S1 | +| main.rs:629:9:629:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:629:18:629:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:629:18:629:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:629:18:629:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:629:18:629:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:629:18:629:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:629:26:629:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | +| main.rs:629:26:629:37 | ...::m(...) | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:629:26:629:37 | ...::m(...) | TRef.T3 | main.rs:488:5:489:14 | S1 | +| main.rs:629:32:629:33 | &w | | {EXTERNAL LOCATION} | & | +| main.rs:629:32:629:33 | &w | TRef | main.rs:559:5:560:22 | S3 | +| main.rs:629:32:629:33 | &w | TRef.T3 | main.rs:488:5:489:14 | S1 | +| main.rs:629:33:629:33 | w | | main.rs:559:5:560:22 | S3 | +| main.rs:629:33:629:33 | w | T3 | main.rs:488:5:489:14 | S1 | +| main.rs:629:36:629:36 | x | | main.rs:488:5:489:14 | S1 | +| main.rs:631:9:631:10 | S4 | | main.rs:587:5:588:14 | S4 | +| main.rs:631:9:631:14 | S4.m() | | {EXTERNAL LOCATION} | () | +| main.rs:632:9:632:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| main.rs:632:15:632:17 | &S4 | | {EXTERNAL LOCATION} | & | +| main.rs:632:15:632:17 | &S4 | TRef | main.rs:587:5:588:14 | S4 | +| main.rs:632:16:632:17 | S4 | | main.rs:587:5:588:14 | S4 | +| main.rs:633:9:633:16 | S5(...) | | main.rs:597:5:598:22 | S5 | +| main.rs:633:9:633:16 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:633:9:633:20 | ... .m() | | {EXTERNAL LOCATION} | () | +| main.rs:633:12:633:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:634:9:634:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| main.rs:634:15:634:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:634:15:634:23 | &... | TRef | main.rs:597:5:598:22 | S5 | +| main.rs:634:15:634:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:634:16:634:23 | S5(...) | | main.rs:597:5:598:22 | S5 | +| main.rs:634:16:634:23 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:634:19:634:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:635:9:635:16 | S5(...) | | main.rs:597:5:598:22 | S5 | +| main.rs:635:9:635:16 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | +| main.rs:635:9:635:20 | ... .m() | | {EXTERNAL LOCATION} | () | +| main.rs:635:12:635:15 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:636:9:636:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| main.rs:636:15:636:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:636:15:636:23 | &... | TRef | main.rs:597:5:598:22 | S5 | +| main.rs:636:15:636:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | bool | +| main.rs:636:16:636:23 | S5(...) | | main.rs:597:5:598:22 | S5 | +| main.rs:636:16:636:23 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | +| main.rs:636:19:636:22 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:653:19:653:22 | SelfParam | | main.rs:651:5:654:5 | Self [trait FirstTrait] | +| main.rs:658:19:658:22 | SelfParam | | main.rs:656:5:659:5 | Self [trait SecondTrait] | +| main.rs:661:64:661:64 | x | | main.rs:661:45:661:61 | T | +| main.rs:661:70:665:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:663:13:663:14 | s1 | | main.rs:661:35:661:42 | I | +| main.rs:663:18:663:18 | x | | main.rs:661:45:661:61 | T | +| main.rs:663:18:663:27 | x.method() | | main.rs:661:35:661:42 | I | +| main.rs:664:9:664:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:664:18:664:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:664:18:664:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:664:18:664:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:664:18:664:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:664:18:664:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:664:26:664:27 | s1 | | main.rs:661:35:661:42 | I | +| main.rs:667:65:667:65 | x | | main.rs:667:46:667:62 | T | +| main.rs:667:71:671:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:669:13:669:14 | s2 | | main.rs:667:36:667:43 | I | +| main.rs:669:18:669:18 | x | | main.rs:667:46:667:62 | T | +| main.rs:669:18:669:27 | x.method() | | main.rs:667:36:667:43 | I | +| main.rs:670:9:670:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:670:18:670:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:670:18:670:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:670:18:670:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:670:18:670:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:670:18:670:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:670:26:670:27 | s2 | | main.rs:667:36:667:43 | I | +| main.rs:673:49:673:49 | x | | main.rs:673:30:673:46 | T | +| main.rs:673:55:676:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:674:13:674:13 | s | | main.rs:643:5:644:14 | S1 | +| main.rs:674:17:674:17 | x | | main.rs:673:30:673:46 | T | +| main.rs:674:17:674:26 | x.method() | | main.rs:643:5:644:14 | S1 | +| main.rs:675:9:675:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:675:18:675:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:675:18:675:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:675:18:675:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:675:18:675:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:675:18:675:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:675:26:675:26 | s | | main.rs:643:5:644:14 | S1 | +| main.rs:678:53:678:53 | x | | main.rs:678:34:678:50 | T | +| main.rs:678:59:681:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:679:13:679:13 | s | | main.rs:643:5:644:14 | S1 | +| main.rs:679:17:679:17 | x | | main.rs:678:34:678:50 | T | +| main.rs:679:17:679:26 | x.method() | | main.rs:643:5:644:14 | S1 | +| main.rs:680:9:680:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:680:18:680:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:680:18:680:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:680:18:680:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:680:18:680:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:680:18:680:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:680:26:680:26 | s | | main.rs:643:5:644:14 | S1 | +| main.rs:683:43:683:43 | x | | main.rs:683:40:683:40 | T | +| main.rs:686:5:689:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:687:13:687:13 | s | | main.rs:643:5:644:14 | S1 | +| main.rs:687:17:687:17 | x | | main.rs:683:40:683:40 | T | +| main.rs:687:17:687:26 | x.method() | | main.rs:643:5:644:14 | S1 | +| main.rs:688:9:688:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:688:18:688:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:688:18:688:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:688:18:688:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:688:18:688:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:688:18:688:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:688:26:688:26 | s | | main.rs:643:5:644:14 | S1 | +| main.rs:692:16:692:19 | SelfParam | | main.rs:691:5:695:5 | Self [trait Pair] | +| main.rs:694:16:694:19 | SelfParam | | main.rs:691:5:695:5 | Self [trait Pair] | +| main.rs:697:53:697:53 | x | | main.rs:697:50:697:50 | T | +| main.rs:697:59:697:59 | y | | main.rs:697:50:697:50 | T | +| main.rs:701:5:704:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:702:13:702:13 | _ | | main.rs:643:5:644:14 | S1 | +| main.rs:702:17:702:17 | x | | main.rs:697:50:697:50 | T | +| main.rs:702:17:702:23 | x.fst() | | main.rs:643:5:644:14 | S1 | +| main.rs:703:13:703:13 | _ | | main.rs:643:5:644:14 | S1 | +| main.rs:703:17:703:17 | y | | main.rs:697:50:697:50 | T | +| main.rs:703:17:703:26 | y.method() | | main.rs:643:5:644:14 | S1 | +| main.rs:706:58:706:58 | x | | main.rs:706:41:706:55 | T | +| main.rs:706:64:706:64 | y | | main.rs:706:41:706:55 | T | +| main.rs:706:70:711:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:708:13:708:14 | s1 | | main.rs:643:5:644:14 | S1 | +| main.rs:708:18:708:18 | x | | main.rs:706:41:706:55 | T | +| main.rs:708:18:708:24 | x.fst() | | main.rs:643:5:644:14 | S1 | +| main.rs:709:13:709:14 | s2 | | main.rs:646:5:647:14 | S2 | +| main.rs:709:18:709:18 | y | | main.rs:706:41:706:55 | T | +| main.rs:709:18:709:24 | y.snd() | | main.rs:646:5:647:14 | S2 | +| main.rs:710:9:710:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:710:18:710:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:710:18:710:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:710:18:710:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:710:18:710:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:710:18:710:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:710:32:710:33 | s1 | | main.rs:643:5:644:14 | S1 | +| main.rs:710:36:710:37 | s2 | | main.rs:646:5:647:14 | S2 | +| main.rs:713:69:713:69 | x | | main.rs:713:52:713:66 | T | +| main.rs:713:75:713:75 | y | | main.rs:713:52:713:66 | T | +| main.rs:713:81:718:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:715:13:715:14 | s1 | | main.rs:643:5:644:14 | S1 | +| main.rs:715:18:715:18 | x | | main.rs:713:52:713:66 | T | +| main.rs:715:18:715:24 | x.fst() | | main.rs:643:5:644:14 | S1 | +| main.rs:716:13:716:14 | s2 | | main.rs:713:41:713:49 | T2 | +| main.rs:716:18:716:18 | y | | main.rs:713:52:713:66 | T | +| main.rs:716:18:716:24 | y.snd() | | main.rs:713:41:713:49 | T2 | +| main.rs:717:9:717:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:717:18:717:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:717:18:717:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:717:18:717:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:717:18:717:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:717:18:717:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:717:32:717:33 | s1 | | main.rs:643:5:644:14 | S1 | +| main.rs:717:36:717:37 | s2 | | main.rs:713:41:713:49 | T2 | +| main.rs:720:50:720:50 | x | | main.rs:720:41:720:47 | T | +| main.rs:720:56:720:56 | y | | main.rs:720:41:720:47 | T | +| main.rs:720:62:725:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:722:13:722:14 | s1 | | {EXTERNAL LOCATION} | bool | +| main.rs:722:18:722:18 | x | | main.rs:720:41:720:47 | T | +| main.rs:722:18:722:24 | x.fst() | | {EXTERNAL LOCATION} | bool | +| main.rs:723:13:723:14 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:723:18:723:18 | y | | main.rs:720:41:720:47 | T | +| main.rs:723:18:723:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | +| main.rs:724:9:724:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:724:18:724:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:724:18:724:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:724:18:724:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:724:18:724:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:724:18:724:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:724:32:724:33 | s1 | | {EXTERNAL LOCATION} | bool | +| main.rs:724:36:724:37 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:727:54:727:54 | x | | main.rs:727:41:727:51 | T | +| main.rs:727:60:727:60 | y | | main.rs:727:41:727:51 | T | +| main.rs:727:66:732:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:729:13:729:14 | s1 | | {EXTERNAL LOCATION} | u8 | +| main.rs:729:18:729:18 | x | | main.rs:727:41:727:51 | T | +| main.rs:729:18:729:24 | x.fst() | | {EXTERNAL LOCATION} | u8 | +| main.rs:730:13:730:14 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:730:18:730:18 | y | | main.rs:727:41:727:51 | T | +| main.rs:730:18:730:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | +| main.rs:731:9:731:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:731:18:731:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:731:18:731:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:731:18:731:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:731:18:731:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:731:18:731:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:731:32:731:33 | s1 | | {EXTERNAL LOCATION} | u8 | +| main.rs:731:36:731:37 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:739:18:739:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:739:18:739:22 | SelfParam | TRef | main.rs:736:5:740:5 | Self [trait TraitWithSelfTp] | +| main.rs:742:40:742:44 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:742:40:742:44 | thing | TRef | main.rs:742:17:742:37 | T | +| main.rs:742:56:744:5 | { ... } | | main.rs:742:14:742:14 | A | +| main.rs:743:9:743:13 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:743:9:743:13 | thing | TRef | main.rs:742:17:742:37 | T | +| main.rs:743:9:743:21 | thing.get_a() | | main.rs:742:14:742:14 | A | +| main.rs:747:44:747:48 | thing | | main.rs:747:24:747:41 | S | +| main.rs:747:61:750:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:748:13:748:15 | _ms | | {EXTERNAL LOCATION} | Option | +| main.rs:748:13:748:15 | _ms | T | main.rs:747:24:747:41 | S | +| main.rs:748:19:748:23 | thing | | main.rs:747:24:747:41 | S | +| main.rs:748:19:748:31 | thing.get_a() | | {EXTERNAL LOCATION} | Option | +| main.rs:748:19:748:31 | thing.get_a() | T | main.rs:747:24:747:41 | S | +| main.rs:749:9:749:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:749:9:749:9 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:755:55:755:59 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:755:55:755:59 | thing | TRef | main.rs:755:25:755:52 | S | +| main.rs:755:66:758:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:757:13:757:15 | _ms | | {EXTERNAL LOCATION} | Option | +| main.rs:757:13:757:15 | _ms | T | main.rs:755:25:755:52 | S | +| main.rs:757:19:757:30 | get_a(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:757:19:757:30 | get_a(...) | T | main.rs:755:25:755:52 | S | +| main.rs:757:25:757:29 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:757:25:757:29 | thing | TRef | main.rs:755:25:755:52 | S | +| main.rs:766:18:766:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:766:18:766:22 | SelfParam | TRef | main.rs:760:5:762:5 | MyStruct | +| main.rs:766:41:768:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:766:41:768:9 | { ... } | T | main.rs:760:5:762:5 | MyStruct | +| main.rs:767:13:767:48 | Some(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:767:13:767:48 | Some(...) | T | main.rs:760:5:762:5 | MyStruct | +| main.rs:767:18:767:47 | MyStruct {...} | | main.rs:760:5:762:5 | MyStruct | +| main.rs:767:36:767:39 | self | | {EXTERNAL LOCATION} | & | +| main.rs:767:36:767:39 | self | TRef | main.rs:760:5:762:5 | MyStruct | +| main.rs:767:36:767:45 | self.value | | {EXTERNAL LOCATION} | i32 | +| main.rs:773:19:776:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:774:13:774:13 | s | | main.rs:760:5:762:5 | MyStruct | +| main.rs:774:17:774:37 | MyStruct {...} | | main.rs:760:5:762:5 | MyStruct | +| main.rs:774:35:774:35 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:775:13:775:15 | _ms | | {EXTERNAL LOCATION} | Option | +| main.rs:775:13:775:15 | _ms | T | main.rs:760:5:762:5 | MyStruct | +| main.rs:775:19:775:27 | get_a(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:775:19:775:27 | get_a(...) | T | main.rs:760:5:762:5 | MyStruct | +| main.rs:775:25:775:26 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:775:25:775:26 | &s | TRef | main.rs:760:5:762:5 | MyStruct | +| main.rs:775:26:775:26 | s | | main.rs:760:5:762:5 | MyStruct | +| main.rs:791:15:791:18 | SelfParam | | main.rs:790:5:801:5 | Self [trait MyTrait] | +| main.rs:793:15:793:18 | SelfParam | | main.rs:790:5:801:5 | Self [trait MyTrait] | +| main.rs:796:9:798:9 | { ... } | | main.rs:790:19:790:19 | A | +| main.rs:797:13:797:16 | self | | main.rs:790:5:801:5 | Self [trait MyTrait] | +| main.rs:797:13:797:21 | self.m1() | | main.rs:790:19:790:19 | A | +| main.rs:800:18:800:18 | x | | main.rs:790:5:801:5 | Self [trait MyTrait] | +| main.rs:804:15:804:18 | SelfParam | | main.rs:787:5:788:14 | S2 | +| main.rs:804:26:806:9 | { ... } | | main.rs:803:10:803:19 | T | +| main.rs:805:13:805:30 | ...::default(...) | | main.rs:803:10:803:19 | T | +| main.rs:808:18:808:18 | x | | main.rs:787:5:788:14 | S2 | +| main.rs:808:32:810:9 | { ... } | | main.rs:803:10:803:19 | T | +| main.rs:809:13:809:30 | ...::default(...) | | main.rs:803:10:803:19 | T | +| main.rs:814:15:814:18 | SelfParam | | main.rs:785:5:786:14 | S1 | +| main.rs:814:28:816:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:815:13:815:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:818:18:818:18 | x | | main.rs:785:5:786:14 | S1 | +| main.rs:818:34:820:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:819:13:819:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:825:50:825:50 | x | | main.rs:825:26:825:47 | T2 | +| main.rs:825:63:828:5 | { ... } | | main.rs:825:22:825:23 | T1 | +| main.rs:826:9:826:9 | x | | main.rs:825:26:825:47 | T2 | +| main.rs:826:9:826:14 | x.m1() | | main.rs:825:22:825:23 | T1 | +| main.rs:827:9:827:9 | x | | main.rs:825:26:825:47 | T2 | +| main.rs:827:9:827:14 | x.m1() | | main.rs:825:22:825:23 | T1 | +| main.rs:829:52:829:52 | x | | main.rs:829:28:829:49 | T2 | +| main.rs:829:65:833:5 | { ... } | | main.rs:829:24:829:25 | T1 | +| main.rs:830:13:830:13 | y | | main.rs:829:24:829:25 | T1 | +| main.rs:830:17:830:25 | ...::m1(...) | | main.rs:829:24:829:25 | T1 | +| main.rs:830:24:830:24 | x | | main.rs:829:28:829:49 | T2 | +| main.rs:831:9:831:9 | y | | main.rs:829:24:829:25 | T1 | +| main.rs:832:9:832:17 | ...::m1(...) | | main.rs:829:24:829:25 | T1 | +| main.rs:832:16:832:16 | x | | main.rs:829:28:829:49 | T2 | +| main.rs:834:52:834:52 | x | | main.rs:834:28:834:49 | T2 | +| main.rs:834:65:838:5 | { ... } | | main.rs:834:24:834:25 | T1 | +| main.rs:835:13:835:13 | y | | main.rs:834:24:834:25 | T1 | +| main.rs:835:17:835:30 | ...::m1(...) | | main.rs:834:24:834:25 | T1 | +| main.rs:835:29:835:29 | x | | main.rs:834:28:834:49 | T2 | +| main.rs:836:9:836:9 | y | | main.rs:834:24:834:25 | T1 | +| main.rs:837:9:837:22 | ...::m1(...) | | main.rs:834:24:834:25 | T1 | +| main.rs:837:21:837:21 | x | | main.rs:834:28:834:49 | T2 | +| main.rs:839:55:839:55 | x | | main.rs:839:31:839:52 | T2 | +| main.rs:839:68:843:5 | { ... } | | main.rs:839:27:839:28 | T1 | +| main.rs:840:13:840:13 | y | | main.rs:839:27:839:28 | T1 | +| main.rs:840:17:840:28 | ...::assoc(...) | | main.rs:839:27:839:28 | T1 | +| main.rs:840:27:840:27 | x | | main.rs:839:31:839:52 | T2 | +| main.rs:841:9:841:9 | y | | main.rs:839:27:839:28 | T1 | +| main.rs:842:9:842:20 | ...::assoc(...) | | main.rs:839:27:839:28 | T1 | +| main.rs:842:19:842:19 | x | | main.rs:839:31:839:52 | T2 | +| main.rs:844:55:844:55 | x | | main.rs:844:31:844:52 | T2 | +| main.rs:844:68:848:5 | { ... } | | main.rs:844:27:844:28 | T1 | +| main.rs:845:13:845:13 | y | | main.rs:844:27:844:28 | T1 | +| main.rs:845:17:845:33 | ...::assoc(...) | | main.rs:844:27:844:28 | T1 | +| main.rs:845:32:845:32 | x | | main.rs:844:31:844:52 | T2 | +| main.rs:846:9:846:9 | y | | main.rs:844:27:844:28 | T1 | +| main.rs:847:9:847:25 | ...::assoc(...) | | main.rs:844:27:844:28 | T1 | +| main.rs:847:24:847:24 | x | | main.rs:844:31:844:52 | T2 | +| main.rs:852:49:852:49 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:852:49:852:49 | x | T | main.rs:852:32:852:46 | T2 | +| main.rs:852:71:854:5 | { ... } | | main.rs:852:28:852:29 | T1 | +| main.rs:853:9:853:9 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:853:9:853:9 | x | T | main.rs:852:32:852:46 | T2 | +| main.rs:853:9:853:11 | x.a | | main.rs:852:32:852:46 | T2 | +| main.rs:853:9:853:16 | ... .m1() | | main.rs:852:28:852:29 | T1 | +| main.rs:855:51:855:51 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:855:51:855:51 | x | T | main.rs:855:34:855:48 | T2 | +| main.rs:855:73:857:5 | { ... } | | main.rs:855:30:855:31 | T1 | +| main.rs:856:9:856:19 | ...::m1(...) | | main.rs:855:30:855:31 | T1 | +| main.rs:856:16:856:16 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:856:16:856:16 | x | T | main.rs:855:34:855:48 | T2 | +| main.rs:856:16:856:18 | x.a | | main.rs:855:34:855:48 | T2 | +| main.rs:858:51:858:51 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:858:51:858:51 | x | T | main.rs:858:34:858:48 | T2 | +| main.rs:858:73:860:5 | { ... } | | main.rs:858:30:858:31 | T1 | +| main.rs:859:9:859:24 | ...::m1(...) | | main.rs:858:30:858:31 | T1 | +| main.rs:859:21:859:21 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:859:21:859:21 | x | T | main.rs:858:34:858:48 | T2 | +| main.rs:859:21:859:23 | x.a | | main.rs:858:34:858:48 | T2 | +| main.rs:863:15:863:18 | SelfParam | | main.rs:780:5:783:5 | MyThing | +| main.rs:863:15:863:18 | SelfParam | T | main.rs:862:10:862:10 | T | +| main.rs:863:26:865:9 | { ... } | | main.rs:862:10:862:10 | T | +| main.rs:864:13:864:16 | self | | main.rs:780:5:783:5 | MyThing | +| main.rs:864:13:864:16 | self | T | main.rs:862:10:862:10 | T | +| main.rs:864:13:864:18 | self.a | | main.rs:862:10:862:10 | T | +| main.rs:867:18:867:18 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:867:18:867:18 | x | T | main.rs:862:10:862:10 | T | +| main.rs:867:32:869:9 | { ... } | | main.rs:862:10:862:10 | T | +| main.rs:868:13:868:13 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:868:13:868:13 | x | T | main.rs:862:10:862:10 | T | +| main.rs:868:13:868:15 | x.a | | main.rs:862:10:862:10 | T | +| main.rs:874:15:874:18 | SelfParam | | main.rs:872:5:875:5 | Self [trait MyTrait2] | +| main.rs:879:15:879:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:879:15:879:19 | SelfParam | TRef | main.rs:877:5:880:5 | Self [trait MyTrait3] | +| main.rs:882:46:882:46 | x | | main.rs:882:22:882:43 | T | +| main.rs:882:52:882:52 | y | | {EXTERNAL LOCATION} | & | +| main.rs:882:52:882:52 | y | TRef | main.rs:882:22:882:43 | T | +| main.rs:882:59:885:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:883:9:883:9 | x | | main.rs:882:22:882:43 | T | +| main.rs:883:9:883:14 | x.m2() | | {EXTERNAL LOCATION} | () | +| main.rs:884:9:884:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:884:9:884:9 | y | TRef | main.rs:882:22:882:43 | T | +| main.rs:884:9:884:14 | y.m2() | | {EXTERNAL LOCATION} | () | +| main.rs:887:16:945:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:888:13:888:13 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:888:13:888:13 | x | T | main.rs:785:5:786:14 | S1 | +| main.rs:888:17:888:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:888:17:888:33 | MyThing {...} | T | main.rs:785:5:786:14 | S1 | +| main.rs:888:30:888:31 | S1 | | main.rs:785:5:786:14 | S1 | +| main.rs:889:13:889:13 | y | | main.rs:780:5:783:5 | MyThing | +| main.rs:889:13:889:13 | y | T | main.rs:787:5:788:14 | S2 | +| main.rs:889:17:889:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:889:17:889:33 | MyThing {...} | T | main.rs:787:5:788:14 | S2 | +| main.rs:889:30:889:31 | S2 | | main.rs:787:5:788:14 | S2 | +| main.rs:891:9:891:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:891:18:891:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:891:18:891:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:891:18:891:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:891:18:891:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:891:18:891:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:891:26:891:26 | a | | main.rs:756:5:757:14 | S2 | -| main.rs:893:13:893:14 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:893:13:893:14 | x3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:893:13:893:14 | x3 | T.T | main.rs:754:5:755:14 | S1 | -| main.rs:893:18:895:9 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:893:18:895:9 | MyThing {...} | T | main.rs:749:5:752:5 | MyThing | -| main.rs:893:18:895:9 | MyThing {...} | T.T | main.rs:754:5:755:14 | S1 | -| main.rs:894:16:894:32 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:894:16:894:32 | MyThing {...} | T | main.rs:754:5:755:14 | S1 | -| main.rs:894:29:894:30 | S1 | | main.rs:754:5:755:14 | S1 | -| main.rs:896:13:896:14 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:896:13:896:14 | y3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:896:13:896:14 | y3 | T.T | main.rs:756:5:757:14 | S2 | -| main.rs:896:18:898:9 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:896:18:898:9 | MyThing {...} | T | main.rs:749:5:752:5 | MyThing | -| main.rs:896:18:898:9 | MyThing {...} | T.T | main.rs:756:5:757:14 | S2 | -| main.rs:897:16:897:32 | MyThing {...} | | main.rs:749:5:752:5 | MyThing | -| main.rs:897:16:897:32 | MyThing {...} | T | main.rs:756:5:757:14 | S2 | -| main.rs:897:29:897:30 | S2 | | main.rs:756:5:757:14 | S2 | -| main.rs:900:13:900:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:900:17:900:39 | call_trait_thing_m1(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:900:37:900:38 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:900:37:900:38 | x3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:900:37:900:38 | x3 | T.T | main.rs:754:5:755:14 | S1 | -| main.rs:901:9:901:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:901:18:901:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:901:18:901:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:901:18:901:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:901:18:901:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:901:18:901:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:901:26:901:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:902:13:902:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:902:17:902:41 | call_trait_thing_m1_2(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:902:39:902:40 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:902:39:902:40 | x3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:902:39:902:40 | x3 | T.T | main.rs:754:5:755:14 | S1 | -| main.rs:903:9:903:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:903:18:903:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:903:18:903:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:903:18:903:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:903:18:903:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:903:18:903:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:903:26:903:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:904:13:904:13 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:904:17:904:41 | call_trait_thing_m1_3(...) | | main.rs:754:5:755:14 | S1 | -| main.rs:904:39:904:40 | x3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:904:39:904:40 | x3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:904:39:904:40 | x3 | T.T | main.rs:754:5:755:14 | S1 | -| main.rs:905:9:905:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:905:18:905:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:905:18:905:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:905:18:905:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:905:18:905:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:905:18:905:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:905:26:905:26 | a | | main.rs:754:5:755:14 | S1 | -| main.rs:906:13:906:13 | b | | main.rs:756:5:757:14 | S2 | -| main.rs:906:17:906:39 | call_trait_thing_m1(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:906:37:906:38 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:906:37:906:38 | y3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:906:37:906:38 | y3 | T.T | main.rs:756:5:757:14 | S2 | -| main.rs:907:9:907:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:907:18:907:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:907:18:907:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:907:18:907:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:907:18:907:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:907:18:907:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:907:26:907:26 | b | | main.rs:756:5:757:14 | S2 | -| main.rs:908:13:908:13 | b | | main.rs:756:5:757:14 | S2 | -| main.rs:908:17:908:41 | call_trait_thing_m1_2(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:908:39:908:40 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:908:39:908:40 | y3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:908:39:908:40 | y3 | T.T | main.rs:756:5:757:14 | S2 | -| main.rs:909:9:909:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:909:18:909:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:909:18:909:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:909:18:909:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:909:18:909:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:909:18:909:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:909:26:909:26 | b | | main.rs:756:5:757:14 | S2 | -| main.rs:910:13:910:13 | b | | main.rs:756:5:757:14 | S2 | -| main.rs:910:17:910:41 | call_trait_thing_m1_3(...) | | main.rs:756:5:757:14 | S2 | -| main.rs:910:39:910:40 | y3 | | main.rs:749:5:752:5 | MyThing | -| main.rs:910:39:910:40 | y3 | T | main.rs:749:5:752:5 | MyThing | -| main.rs:910:39:910:40 | y3 | T.T | main.rs:756:5:757:14 | S2 | -| main.rs:911:9:911:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:911:18:911:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:911:18:911:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:911:18:911:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:911:18:911:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:911:18:911:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:911:26:911:26 | b | | main.rs:756:5:757:14 | S2 | -| main.rs:912:13:912:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:912:17:912:26 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:912:24:912:25 | S1 | | main.rs:754:5:755:14 | S1 | -| main.rs:913:13:913:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:913:22:913:31 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:913:29:913:30 | S2 | | main.rs:756:5:757:14 | S2 | -| main.rs:930:15:930:18 | SelfParam | | main.rs:918:5:922:5 | MyEnum | -| main.rs:930:15:930:18 | SelfParam | A | main.rs:929:10:929:10 | T | -| main.rs:930:26:935:9 | { ... } | | main.rs:929:10:929:10 | T | -| main.rs:931:13:934:13 | match self { ... } | | main.rs:929:10:929:10 | T | -| main.rs:931:19:931:22 | self | | main.rs:918:5:922:5 | MyEnum | -| main.rs:931:19:931:22 | self | A | main.rs:929:10:929:10 | T | -| main.rs:932:17:932:29 | ...::C1(...) | | main.rs:918:5:922:5 | MyEnum | -| main.rs:932:17:932:29 | ...::C1(...) | A | main.rs:929:10:929:10 | T | -| main.rs:932:28:932:28 | a | | main.rs:929:10:929:10 | T | -| main.rs:932:34:932:34 | a | | main.rs:929:10:929:10 | T | -| main.rs:933:17:933:32 | ...::C2 {...} | | main.rs:918:5:922:5 | MyEnum | -| main.rs:933:17:933:32 | ...::C2 {...} | A | main.rs:929:10:929:10 | T | -| main.rs:933:30:933:30 | a | | main.rs:929:10:929:10 | T | -| main.rs:933:37:933:37 | a | | main.rs:929:10:929:10 | T | -| main.rs:938:16:944:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:939:13:939:13 | x | | main.rs:918:5:922:5 | MyEnum | -| main.rs:939:13:939:13 | x | A | main.rs:924:5:925:14 | S1 | -| main.rs:939:17:939:30 | ...::C1(...) | | main.rs:918:5:922:5 | MyEnum | -| main.rs:939:17:939:30 | ...::C1(...) | A | main.rs:924:5:925:14 | S1 | -| main.rs:939:28:939:29 | S1 | | main.rs:924:5:925:14 | S1 | -| main.rs:940:13:940:13 | y | | main.rs:918:5:922:5 | MyEnum | -| main.rs:940:13:940:13 | y | A | main.rs:926:5:927:14 | S2 | -| main.rs:940:17:940:36 | ...::C2 {...} | | main.rs:918:5:922:5 | MyEnum | -| main.rs:940:17:940:36 | ...::C2 {...} | A | main.rs:926:5:927:14 | S2 | -| main.rs:940:33:940:34 | S2 | | main.rs:926:5:927:14 | S2 | -| main.rs:942:9:942:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:891:18:891:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:891:18:891:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:891:18:891:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:891:26:891:26 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:891:26:891:26 | x | T | main.rs:785:5:786:14 | S1 | +| main.rs:891:26:891:31 | x.m1() | | main.rs:785:5:786:14 | S1 | +| main.rs:892:9:892:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:892:18:892:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:892:18:892:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:892:18:892:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:892:18:892:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:892:18:892:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:892:26:892:26 | y | | main.rs:780:5:783:5 | MyThing | +| main.rs:892:26:892:26 | y | T | main.rs:787:5:788:14 | S2 | +| main.rs:892:26:892:31 | y.m1() | | main.rs:787:5:788:14 | S2 | +| main.rs:894:13:894:13 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:894:13:894:13 | x | T | main.rs:785:5:786:14 | S1 | +| main.rs:894:17:894:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:894:17:894:33 | MyThing {...} | T | main.rs:785:5:786:14 | S1 | +| main.rs:894:30:894:31 | S1 | | main.rs:785:5:786:14 | S1 | +| main.rs:895:13:895:13 | y | | main.rs:780:5:783:5 | MyThing | +| main.rs:895:13:895:13 | y | T | main.rs:787:5:788:14 | S2 | +| main.rs:895:17:895:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:895:17:895:33 | MyThing {...} | T | main.rs:787:5:788:14 | S2 | +| main.rs:895:30:895:31 | S2 | | main.rs:787:5:788:14 | S2 | +| main.rs:897:9:897:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:897:18:897:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:897:18:897:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:897:18:897:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:897:18:897:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:897:18:897:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:897:26:897:26 | x | | main.rs:780:5:783:5 | MyThing | +| main.rs:897:26:897:26 | x | T | main.rs:785:5:786:14 | S1 | +| main.rs:897:26:897:31 | x.m2() | | main.rs:785:5:786:14 | S1 | +| main.rs:898:9:898:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:898:18:898:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:898:18:898:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:898:18:898:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:898:18:898:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:898:18:898:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:898:26:898:26 | y | | main.rs:780:5:783:5 | MyThing | +| main.rs:898:26:898:26 | y | T | main.rs:787:5:788:14 | S2 | +| main.rs:898:26:898:31 | y.m2() | | main.rs:787:5:788:14 | S2 | +| main.rs:900:13:900:14 | x2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:900:13:900:14 | x2 | T | main.rs:785:5:786:14 | S1 | +| main.rs:900:18:900:34 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:900:18:900:34 | MyThing {...} | T | main.rs:785:5:786:14 | S1 | +| main.rs:900:31:900:32 | S1 | | main.rs:785:5:786:14 | S1 | +| main.rs:901:13:901:14 | y2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:901:13:901:14 | y2 | T | main.rs:787:5:788:14 | S2 | +| main.rs:901:18:901:34 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:901:18:901:34 | MyThing {...} | T | main.rs:787:5:788:14 | S2 | +| main.rs:901:31:901:32 | S2 | | main.rs:787:5:788:14 | S2 | +| main.rs:903:13:903:13 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:903:17:903:33 | call_trait_m1(...) | | main.rs:785:5:786:14 | S1 | +| main.rs:903:31:903:32 | x2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:903:31:903:32 | x2 | T | main.rs:785:5:786:14 | S1 | +| main.rs:904:9:904:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:904:18:904:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:904:18:904:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:904:18:904:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:904:18:904:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:904:18:904:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:904:26:904:26 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:905:13:905:13 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:905:17:905:35 | call_trait_m1_2(...) | | main.rs:785:5:786:14 | S1 | +| main.rs:905:33:905:34 | x2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:905:33:905:34 | x2 | T | main.rs:785:5:786:14 | S1 | +| main.rs:906:9:906:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:906:18:906:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:906:18:906:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:906:18:906:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:906:18:906:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:906:18:906:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:906:26:906:26 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:907:13:907:13 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:907:17:907:35 | call_trait_m1_3(...) | | main.rs:785:5:786:14 | S1 | +| main.rs:907:33:907:34 | x2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:907:33:907:34 | x2 | T | main.rs:785:5:786:14 | S1 | +| main.rs:908:9:908:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:908:18:908:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:908:18:908:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:908:18:908:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:908:18:908:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:908:18:908:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:908:26:908:26 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:909:13:909:13 | a | | main.rs:787:5:788:14 | S2 | +| main.rs:909:17:909:33 | call_trait_m1(...) | | main.rs:787:5:788:14 | S2 | +| main.rs:909:31:909:32 | y2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:909:31:909:32 | y2 | T | main.rs:787:5:788:14 | S2 | +| main.rs:910:9:910:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:910:18:910:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:910:18:910:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:910:18:910:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:910:18:910:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:910:18:910:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:910:26:910:26 | a | | main.rs:787:5:788:14 | S2 | +| main.rs:911:13:911:13 | a | | main.rs:787:5:788:14 | S2 | +| main.rs:911:17:911:35 | call_trait_m1_2(...) | | main.rs:787:5:788:14 | S2 | +| main.rs:911:33:911:34 | y2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:911:33:911:34 | y2 | T | main.rs:787:5:788:14 | S2 | +| main.rs:912:9:912:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:912:18:912:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:912:18:912:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:912:18:912:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:912:18:912:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:912:18:912:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:912:26:912:26 | a | | main.rs:787:5:788:14 | S2 | +| main.rs:913:13:913:13 | a | | main.rs:787:5:788:14 | S2 | +| main.rs:913:17:913:35 | call_trait_m1_3(...) | | main.rs:787:5:788:14 | S2 | +| main.rs:913:33:913:34 | y2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:913:33:913:34 | y2 | T | main.rs:787:5:788:14 | S2 | +| main.rs:914:9:914:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:914:18:914:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:914:18:914:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:914:18:914:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:914:18:914:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:914:18:914:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:914:26:914:26 | a | | main.rs:787:5:788:14 | S2 | +| main.rs:915:13:915:13 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:915:17:915:38 | call_trait_assoc_1(...) | | main.rs:785:5:786:14 | S1 | +| main.rs:915:36:915:37 | x2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:915:36:915:37 | x2 | T | main.rs:785:5:786:14 | S1 | +| main.rs:916:9:916:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:916:18:916:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:916:18:916:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:916:18:916:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:916:18:916:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:916:18:916:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:916:26:916:26 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:917:13:917:13 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:917:17:917:38 | call_trait_assoc_2(...) | | main.rs:785:5:786:14 | S1 | +| main.rs:917:36:917:37 | x2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:917:36:917:37 | x2 | T | main.rs:785:5:786:14 | S1 | +| main.rs:918:9:918:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:918:18:918:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:918:18:918:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:918:18:918:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:918:18:918:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:918:18:918:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:918:26:918:26 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:919:13:919:13 | a | | main.rs:787:5:788:14 | S2 | +| main.rs:919:17:919:38 | call_trait_assoc_1(...) | | main.rs:787:5:788:14 | S2 | +| main.rs:919:36:919:37 | y2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:919:36:919:37 | y2 | T | main.rs:787:5:788:14 | S2 | +| main.rs:920:9:920:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:920:18:920:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:920:18:920:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:920:18:920:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:920:18:920:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:920:18:920:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:920:26:920:26 | a | | main.rs:787:5:788:14 | S2 | +| main.rs:921:13:921:13 | a | | main.rs:787:5:788:14 | S2 | +| main.rs:921:17:921:38 | call_trait_assoc_2(...) | | main.rs:787:5:788:14 | S2 | +| main.rs:921:36:921:37 | y2 | | main.rs:780:5:783:5 | MyThing | +| main.rs:921:36:921:37 | y2 | T | main.rs:787:5:788:14 | S2 | +| main.rs:922:9:922:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:922:18:922:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:922:18:922:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:922:18:922:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:922:18:922:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:922:18:922:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:922:26:922:26 | a | | main.rs:787:5:788:14 | S2 | +| main.rs:924:13:924:14 | x3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:924:13:924:14 | x3 | T | main.rs:780:5:783:5 | MyThing | +| main.rs:924:13:924:14 | x3 | T.T | main.rs:785:5:786:14 | S1 | +| main.rs:924:18:926:9 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:924:18:926:9 | MyThing {...} | T | main.rs:780:5:783:5 | MyThing | +| main.rs:924:18:926:9 | MyThing {...} | T.T | main.rs:785:5:786:14 | S1 | +| main.rs:925:16:925:32 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:925:16:925:32 | MyThing {...} | T | main.rs:785:5:786:14 | S1 | +| main.rs:925:29:925:30 | S1 | | main.rs:785:5:786:14 | S1 | +| main.rs:927:13:927:14 | y3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:927:13:927:14 | y3 | T | main.rs:780:5:783:5 | MyThing | +| main.rs:927:13:927:14 | y3 | T.T | main.rs:787:5:788:14 | S2 | +| main.rs:927:18:929:9 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:927:18:929:9 | MyThing {...} | T | main.rs:780:5:783:5 | MyThing | +| main.rs:927:18:929:9 | MyThing {...} | T.T | main.rs:787:5:788:14 | S2 | +| main.rs:928:16:928:32 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | +| main.rs:928:16:928:32 | MyThing {...} | T | main.rs:787:5:788:14 | S2 | +| main.rs:928:29:928:30 | S2 | | main.rs:787:5:788:14 | S2 | +| main.rs:931:13:931:13 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:931:17:931:39 | call_trait_thing_m1(...) | | main.rs:785:5:786:14 | S1 | +| main.rs:931:37:931:38 | x3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:931:37:931:38 | x3 | T | main.rs:780:5:783:5 | MyThing | +| main.rs:931:37:931:38 | x3 | T.T | main.rs:785:5:786:14 | S1 | +| main.rs:932:9:932:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:932:18:932:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:932:18:932:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:932:18:932:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:932:18:932:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:932:18:932:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:932:26:932:26 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:933:13:933:13 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:933:17:933:41 | call_trait_thing_m1_2(...) | | main.rs:785:5:786:14 | S1 | +| main.rs:933:39:933:40 | x3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:933:39:933:40 | x3 | T | main.rs:780:5:783:5 | MyThing | +| main.rs:933:39:933:40 | x3 | T.T | main.rs:785:5:786:14 | S1 | +| main.rs:934:9:934:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:934:18:934:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:934:18:934:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:934:18:934:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:934:18:934:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:934:18:934:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:934:26:934:26 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:935:13:935:13 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:935:17:935:41 | call_trait_thing_m1_3(...) | | main.rs:785:5:786:14 | S1 | +| main.rs:935:39:935:40 | x3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:935:39:935:40 | x3 | T | main.rs:780:5:783:5 | MyThing | +| main.rs:935:39:935:40 | x3 | T.T | main.rs:785:5:786:14 | S1 | +| main.rs:936:9:936:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:936:18:936:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:936:18:936:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:936:18:936:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:936:18:936:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:936:18:936:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:936:26:936:26 | a | | main.rs:785:5:786:14 | S1 | +| main.rs:937:13:937:13 | b | | main.rs:787:5:788:14 | S2 | +| main.rs:937:17:937:39 | call_trait_thing_m1(...) | | main.rs:787:5:788:14 | S2 | +| main.rs:937:37:937:38 | y3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:937:37:937:38 | y3 | T | main.rs:780:5:783:5 | MyThing | +| main.rs:937:37:937:38 | y3 | T.T | main.rs:787:5:788:14 | S2 | +| main.rs:938:9:938:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:938:18:938:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:938:18:938:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:938:18:938:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:938:18:938:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:938:18:938:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:938:26:938:26 | b | | main.rs:787:5:788:14 | S2 | +| main.rs:939:13:939:13 | b | | main.rs:787:5:788:14 | S2 | +| main.rs:939:17:939:41 | call_trait_thing_m1_2(...) | | main.rs:787:5:788:14 | S2 | +| main.rs:939:39:939:40 | y3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:939:39:939:40 | y3 | T | main.rs:780:5:783:5 | MyThing | +| main.rs:939:39:939:40 | y3 | T.T | main.rs:787:5:788:14 | S2 | +| main.rs:940:9:940:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:940:18:940:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:940:18:940:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:940:18:940:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:940:18:940:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:940:18:940:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:940:26:940:26 | b | | main.rs:787:5:788:14 | S2 | +| main.rs:941:13:941:13 | b | | main.rs:787:5:788:14 | S2 | +| main.rs:941:17:941:41 | call_trait_thing_m1_3(...) | | main.rs:787:5:788:14 | S2 | +| main.rs:941:39:941:40 | y3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:941:39:941:40 | y3 | T | main.rs:780:5:783:5 | MyThing | +| main.rs:941:39:941:40 | y3 | T.T | main.rs:787:5:788:14 | S2 | +| main.rs:942:9:942:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:942:18:942:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:942:18:942:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:942:18:942:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:942:18:942:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:942:18:942:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:942:26:942:26 | x | | main.rs:918:5:922:5 | MyEnum | -| main.rs:942:26:942:26 | x | A | main.rs:924:5:925:14 | S1 | -| main.rs:942:26:942:31 | x.m1() | | main.rs:924:5:925:14 | S1 | -| main.rs:943:9:943:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:943:18:943:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:943:18:943:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:943:18:943:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:943:18:943:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:943:18:943:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:943:26:943:26 | y | | main.rs:918:5:922:5 | MyEnum | -| main.rs:943:26:943:26 | y | A | main.rs:926:5:927:14 | S2 | -| main.rs:943:26:943:31 | y.m1() | | main.rs:926:5:927:14 | S2 | -| main.rs:965:15:965:18 | SelfParam | | main.rs:963:5:966:5 | Self [trait MyTrait1] | -| main.rs:970:15:970:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:970:15:970:19 | SelfParam | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:973:9:979:9 | { ... } | | main.rs:968:20:968:22 | Tr2 | -| main.rs:974:13:978:13 | if ... {...} else {...} | | main.rs:968:20:968:22 | Tr2 | -| main.rs:974:16:974:16 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:974:16:974:20 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:974:20:974:20 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:974:22:976:13 | { ... } | | main.rs:968:20:968:22 | Tr2 | -| main.rs:975:17:975:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:975:17:975:20 | self | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:975:17:975:25 | self.m1() | | main.rs:968:20:968:22 | Tr2 | -| main.rs:976:20:978:13 | { ... } | | main.rs:968:20:968:22 | Tr2 | -| main.rs:977:17:977:31 | ...::m1(...) | | main.rs:968:20:968:22 | Tr2 | -| main.rs:977:26:977:30 | * ... | | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:977:27:977:30 | self | | {EXTERNAL LOCATION} | & | -| main.rs:977:27:977:30 | self | TRef | main.rs:968:5:980:5 | Self [trait MyTrait2] | -| main.rs:984:15:984:18 | SelfParam | | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:987:9:993:9 | { ... } | | main.rs:982:20:982:22 | Tr3 | -| main.rs:988:13:992:13 | if ... {...} else {...} | | main.rs:982:20:982:22 | Tr3 | -| main.rs:988:16:988:16 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:988:16:988:20 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:988:20:988:20 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:988:22:990:13 | { ... } | | main.rs:982:20:982:22 | Tr3 | -| main.rs:989:17:989:20 | self | | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:989:17:989:25 | self.m2() | | main.rs:948:5:951:5 | MyThing | -| main.rs:989:17:989:25 | self.m2() | A | main.rs:982:20:982:22 | Tr3 | -| main.rs:989:17:989:27 | ... .a | | main.rs:982:20:982:22 | Tr3 | -| main.rs:990:20:992:13 | { ... } | | main.rs:982:20:982:22 | Tr3 | -| main.rs:991:17:991:31 | ...::m2(...) | | main.rs:948:5:951:5 | MyThing | -| main.rs:991:17:991:31 | ...::m2(...) | A | main.rs:982:20:982:22 | Tr3 | -| main.rs:991:17:991:33 | ... .a | | main.rs:982:20:982:22 | Tr3 | -| main.rs:991:26:991:30 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:991:26:991:30 | &self | TRef | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:991:27:991:30 | self | | main.rs:982:5:994:5 | Self [trait MyTrait3] | -| main.rs:998:15:998:18 | SelfParam | | main.rs:948:5:951:5 | MyThing | -| main.rs:998:15:998:18 | SelfParam | A | main.rs:996:10:996:10 | T | -| main.rs:998:26:1000:9 | { ... } | | main.rs:996:10:996:10 | T | -| main.rs:999:13:999:16 | self | | main.rs:948:5:951:5 | MyThing | -| main.rs:999:13:999:16 | self | A | main.rs:996:10:996:10 | T | -| main.rs:999:13:999:18 | self.a | | main.rs:996:10:996:10 | T | -| main.rs:1007:15:1007:18 | SelfParam | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1007:15:1007:18 | SelfParam | A | main.rs:1005:10:1005:10 | T | -| main.rs:1007:35:1009:9 | { ... } | | main.rs:948:5:951:5 | MyThing | -| main.rs:1007:35:1009:9 | { ... } | A | main.rs:1005:10:1005:10 | T | -| main.rs:1008:13:1008:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1008:13:1008:33 | MyThing {...} | A | main.rs:1005:10:1005:10 | T | -| main.rs:1008:26:1008:29 | self | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1008:26:1008:29 | self | A | main.rs:1005:10:1005:10 | T | -| main.rs:1008:26:1008:31 | self.a | | main.rs:1005:10:1005:10 | T | -| main.rs:1016:44:1016:44 | x | | main.rs:1016:26:1016:41 | T2 | -| main.rs:1016:57:1018:5 | { ... } | | main.rs:1016:22:1016:23 | T1 | -| main.rs:1017:9:1017:9 | x | | main.rs:1016:26:1016:41 | T2 | -| main.rs:1017:9:1017:14 | x.m1() | | main.rs:1016:22:1016:23 | T1 | -| main.rs:1020:56:1020:56 | x | | main.rs:1020:39:1020:53 | T | -| main.rs:1020:62:1024:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1022:13:1022:13 | a | | main.rs:948:5:951:5 | MyThing | -| main.rs:1022:13:1022:13 | a | A | main.rs:958:5:959:14 | S1 | -| main.rs:1022:17:1022:17 | x | | main.rs:1020:39:1020:53 | T | -| main.rs:1022:17:1022:22 | x.m1() | | main.rs:948:5:951:5 | MyThing | -| main.rs:1022:17:1022:22 | x.m1() | A | main.rs:958:5:959:14 | S1 | -| main.rs:1023:9:1023:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1023:18:1023:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1023:18:1023:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1023:18:1023:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1023:18:1023:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1023:18:1023:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1023:26:1023:26 | a | | main.rs:948:5:951:5 | MyThing | -| main.rs:1023:26:1023:26 | a | A | main.rs:958:5:959:14 | S1 | -| main.rs:1026:16:1050:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1027:13:1027:13 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1027:13:1027:13 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1027:17:1027:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1027:17:1027:33 | MyThing {...} | A | main.rs:958:5:959:14 | S1 | -| main.rs:1027:30:1027:31 | S1 | | main.rs:958:5:959:14 | S1 | -| main.rs:1028:13:1028:13 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1028:13:1028:13 | y | A | main.rs:960:5:961:14 | S2 | -| main.rs:1028:17:1028:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1028:17:1028:33 | MyThing {...} | A | main.rs:960:5:961:14 | S2 | -| main.rs:1028:30:1028:31 | S2 | | main.rs:960:5:961:14 | S2 | -| main.rs:1030:9:1030:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1030:18:1030:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1030:18:1030:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1030:18:1030:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1030:18:1030:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1030:18:1030:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1030:26:1030:26 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1030:26:1030:26 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1030:26:1030:31 | x.m1() | | main.rs:958:5:959:14 | S1 | -| main.rs:1031:9:1031:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1031:18:1031:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1031:18:1031:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1031:18:1031:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1031:18:1031:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1031:18:1031:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1031:26:1031:26 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1031:26:1031:26 | y | A | main.rs:960:5:961:14 | S2 | -| main.rs:1031:26:1031:31 | y.m1() | | main.rs:960:5:961:14 | S2 | -| main.rs:1033:13:1033:13 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1033:13:1033:13 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1033:17:1033:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1033:17:1033:33 | MyThing {...} | A | main.rs:958:5:959:14 | S1 | -| main.rs:1033:30:1033:31 | S1 | | main.rs:958:5:959:14 | S1 | -| main.rs:1034:13:1034:13 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1034:13:1034:13 | y | A | main.rs:960:5:961:14 | S2 | -| main.rs:1034:17:1034:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1034:17:1034:33 | MyThing {...} | A | main.rs:960:5:961:14 | S2 | -| main.rs:1034:30:1034:31 | S2 | | main.rs:960:5:961:14 | S2 | -| main.rs:1036:9:1036:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1036:18:1036:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1036:18:1036:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1036:18:1036:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1036:18:1036:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1036:18:1036:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1036:26:1036:26 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1036:26:1036:26 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1036:26:1036:31 | x.m2() | | main.rs:958:5:959:14 | S1 | -| main.rs:1037:9:1037:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1037:18:1037:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1037:18:1037:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1037:18:1037:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1037:18:1037:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1037:18:1037:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1037:26:1037:26 | y | | main.rs:948:5:951:5 | MyThing | -| main.rs:1037:26:1037:26 | y | A | main.rs:960:5:961:14 | S2 | -| main.rs:1037:26:1037:31 | y.m2() | | main.rs:960:5:961:14 | S2 | -| main.rs:1039:13:1039:13 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1039:13:1039:13 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1039:17:1039:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1039:17:1039:34 | MyThing2 {...} | A | main.rs:958:5:959:14 | S1 | -| main.rs:1039:31:1039:32 | S1 | | main.rs:958:5:959:14 | S1 | -| main.rs:1040:13:1040:13 | y | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1040:13:1040:13 | y | A | main.rs:960:5:961:14 | S2 | -| main.rs:1040:17:1040:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1040:17:1040:34 | MyThing2 {...} | A | main.rs:960:5:961:14 | S2 | -| main.rs:1040:31:1040:32 | S2 | | main.rs:960:5:961:14 | S2 | -| main.rs:1042:9:1042:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1042:18:1042:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1042:18:1042:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1042:18:1042:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1042:18:1042:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1042:18:1042:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1042:26:1042:26 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1042:26:1042:26 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1042:26:1042:31 | x.m3() | | main.rs:958:5:959:14 | S1 | -| main.rs:1043:9:1043:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1043:18:1043:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1043:18:1043:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1043:18:1043:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1043:18:1043:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1043:18:1043:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1043:26:1043:26 | y | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1043:26:1043:26 | y | A | main.rs:960:5:961:14 | S2 | -| main.rs:1043:26:1043:31 | y.m3() | | main.rs:960:5:961:14 | S2 | -| main.rs:1045:13:1045:13 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1045:13:1045:13 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1045:17:1045:33 | MyThing {...} | | main.rs:948:5:951:5 | MyThing | -| main.rs:1045:17:1045:33 | MyThing {...} | A | main.rs:958:5:959:14 | S1 | -| main.rs:1045:30:1045:31 | S1 | | main.rs:958:5:959:14 | S1 | -| main.rs:1046:13:1046:13 | s | | main.rs:958:5:959:14 | S1 | -| main.rs:1046:17:1046:32 | call_trait_m1(...) | | main.rs:958:5:959:14 | S1 | -| main.rs:1046:31:1046:31 | x | | main.rs:948:5:951:5 | MyThing | -| main.rs:1046:31:1046:31 | x | A | main.rs:958:5:959:14 | S1 | -| main.rs:1048:13:1048:13 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1048:13:1048:13 | x | A | main.rs:960:5:961:14 | S2 | -| main.rs:1048:17:1048:34 | MyThing2 {...} | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1048:17:1048:34 | MyThing2 {...} | A | main.rs:960:5:961:14 | S2 | -| main.rs:1048:31:1048:32 | S2 | | main.rs:960:5:961:14 | S2 | -| main.rs:1049:13:1049:13 | s | | main.rs:948:5:951:5 | MyThing | -| main.rs:1049:13:1049:13 | s | A | main.rs:960:5:961:14 | S2 | -| main.rs:1049:17:1049:32 | call_trait_m1(...) | | main.rs:948:5:951:5 | MyThing | -| main.rs:1049:17:1049:32 | call_trait_m1(...) | A | main.rs:960:5:961:14 | S2 | -| main.rs:1049:31:1049:31 | x | | main.rs:953:5:956:5 | MyThing2 | -| main.rs:1049:31:1049:31 | x | A | main.rs:960:5:961:14 | S2 | -| main.rs:1066:22:1066:22 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1066:22:1066:22 | x | TRef | main.rs:1066:11:1066:19 | T | -| main.rs:1066:35:1068:5 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1066:35:1068:5 | { ... } | TRef | main.rs:1066:11:1066:19 | T | -| main.rs:1067:9:1067:9 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1067:9:1067:9 | x | TRef | main.rs:1066:11:1066:19 | T | -| main.rs:1071:17:1071:20 | SelfParam | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1071:29:1073:9 | { ... } | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1072:13:1072:14 | S2 | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1076:21:1076:21 | x | | main.rs:1076:13:1076:14 | T1 | -| main.rs:1079:5:1081:5 | { ... } | | main.rs:1076:17:1076:18 | T2 | -| main.rs:1080:9:1080:9 | x | | main.rs:1076:13:1076:14 | T1 | -| main.rs:1080:9:1080:16 | x.into() | | main.rs:1076:17:1076:18 | T2 | -| main.rs:1083:16:1099:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1084:13:1084:13 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1084:17:1084:18 | S1 | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1085:9:1085:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1085:18:1085:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1085:18:1085:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1085:18:1085:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1085:18:1085:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1085:18:1085:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1085:26:1085:31 | id(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1085:26:1085:31 | id(...) | TRef | main.rs:1056:5:1057:14 | S1 | -| main.rs:1085:29:1085:30 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1085:29:1085:30 | &x | TRef | main.rs:1056:5:1057:14 | S1 | -| main.rs:1085:30:1085:30 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1087:13:1087:13 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1087:17:1087:18 | S1 | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1088:9:1088:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1088:18:1088:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1088:18:1088:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1088:18:1088:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1088:18:1088:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1088:18:1088:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1088:26:1088:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1088:26:1088:37 | id::<...>(...) | TRef | main.rs:1056:5:1057:14 | S1 | -| main.rs:1088:35:1088:36 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1088:35:1088:36 | &x | TRef | main.rs:1056:5:1057:14 | S1 | -| main.rs:1088:36:1088:36 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1090:13:1090:13 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1090:17:1090:18 | S1 | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1092:9:1092:45 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1092:18:1092:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1092:18:1092:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1092:18:1092:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1092:18:1092:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1092:18:1092:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1092:26:1092:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1092:26:1092:44 | id::<...>(...) | TRef | main.rs:1062:5:1062:25 | dyn Trait | -| main.rs:1092:42:1092:43 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1092:42:1092:43 | &x | TRef | main.rs:1056:5:1057:14 | S1 | -| main.rs:1092:43:1092:43 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1094:13:1094:13 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1094:17:1094:18 | S1 | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1095:9:1095:25 | into::<...>(...) | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1095:24:1095:24 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1097:13:1097:13 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1097:17:1097:18 | S1 | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1098:13:1098:13 | y | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1098:21:1098:27 | into(...) | | main.rs:1059:5:1060:14 | S2 | -| main.rs:1098:26:1098:26 | x | | main.rs:1056:5:1057:14 | S1 | -| main.rs:1112:22:1112:25 | SelfParam | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1112:22:1112:25 | SelfParam | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1112:22:1112:25 | SelfParam | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1112:35:1119:9 | { ... } | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1113:13:1118:13 | match self { ... } | | file://:0:0:0:0 | ! | -| main.rs:1113:13:1118:13 | match self { ... } | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1113:19:1113:22 | self | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1113:19:1113:22 | self | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1113:19:1113:22 | self | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1114:17:1114:38 | ...::PairNone(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1114:17:1114:38 | ...::PairNone(...) | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1114:17:1114:38 | ...::PairNone(...) | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1114:43:1114:82 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1114:50:1114:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | -| main.rs:1114:50:1114:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1114:50:1114:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1114:50:1114:81 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1114:50:1114:81 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1115:17:1115:38 | ...::PairFst(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1115:17:1115:38 | ...::PairFst(...) | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1115:17:1115:38 | ...::PairFst(...) | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1115:37:1115:37 | _ | | main.rs:1111:10:1111:12 | Fst | -| main.rs:1115:43:1115:81 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1115:50:1115:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | -| main.rs:1115:50:1115:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1115:50:1115:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1115:50:1115:80 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1115:50:1115:80 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1116:17:1116:40 | ...::PairSnd(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1116:17:1116:40 | ...::PairSnd(...) | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1116:17:1116:40 | ...::PairSnd(...) | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1116:37:1116:39 | snd | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1116:45:1116:47 | snd | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1117:17:1117:44 | ...::PairBoth(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1117:17:1117:44 | ...::PairBoth(...) | Fst | main.rs:1111:10:1111:12 | Fst | -| main.rs:1117:17:1117:44 | ...::PairBoth(...) | Snd | main.rs:1111:15:1111:17 | Snd | -| main.rs:1117:38:1117:38 | _ | | main.rs:1111:10:1111:12 | Fst | -| main.rs:1117:41:1117:43 | snd | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1117:49:1117:51 | snd | | main.rs:1111:15:1111:17 | Snd | -| main.rs:1143:10:1143:10 | t | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1143:10:1143:10 | t | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1143:10:1143:10 | t | Snd | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1143:10:1143:10 | t | Snd.Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1143:10:1143:10 | t | Snd.Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1143:30:1146:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1144:13:1144:13 | x | | main.rs:1128:5:1129:14 | S3 | -| main.rs:1144:17:1144:17 | t | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1144:17:1144:17 | t | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1144:17:1144:17 | t | Snd | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1144:17:1144:17 | t | Snd.Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1144:17:1144:17 | t | Snd.Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1144:17:1144:29 | t.unwrapSnd() | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1144:17:1144:29 | t.unwrapSnd() | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1144:17:1144:29 | t.unwrapSnd() | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1144:17:1144:41 | ... .unwrapSnd() | | main.rs:1128:5:1129:14 | S3 | -| main.rs:1145:9:1145:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1145:18:1145:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1145:18:1145:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1145:18:1145:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1145:18:1145:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1145:18:1145:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1145:26:1145:26 | x | | main.rs:1128:5:1129:14 | S3 | -| main.rs:1156:16:1176:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1158:13:1158:14 | p1 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1158:13:1158:14 | p1 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1158:13:1158:14 | p1 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1158:26:1158:53 | ...::PairBoth(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1158:26:1158:53 | ...::PairBoth(...) | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1158:26:1158:53 | ...::PairBoth(...) | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1158:47:1158:48 | S1 | | main.rs:1122:5:1123:14 | S1 | -| main.rs:1158:51:1158:52 | S2 | | main.rs:1125:5:1126:14 | S2 | -| main.rs:1159:9:1159:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1159:18:1159:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1159:18:1159:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1159:18:1159:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1159:18:1159:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1159:18:1159:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1159:26:1159:27 | p1 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1159:26:1159:27 | p1 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1159:26:1159:27 | p1 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1162:13:1162:14 | p2 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1162:13:1162:14 | p2 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1162:13:1162:14 | p2 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1162:26:1162:47 | ...::PairNone(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1162:26:1162:47 | ...::PairNone(...) | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1162:26:1162:47 | ...::PairNone(...) | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1163:9:1163:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1163:18:1163:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1163:18:1163:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1163:18:1163:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1163:18:1163:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1163:18:1163:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1163:26:1163:27 | p2 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1163:26:1163:27 | p2 | Fst | main.rs:1122:5:1123:14 | S1 | -| main.rs:1163:26:1163:27 | p2 | Snd | main.rs:1125:5:1126:14 | S2 | -| main.rs:1166:13:1166:14 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1166:13:1166:14 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1166:13:1166:14 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1166:34:1166:56 | ...::PairSnd(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1166:34:1166:56 | ...::PairSnd(...) | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1166:34:1166:56 | ...::PairSnd(...) | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1166:54:1166:55 | S3 | | main.rs:1128:5:1129:14 | S3 | -| main.rs:1167:9:1167:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1167:18:1167:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1167:18:1167:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1167:18:1167:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1167:18:1167:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1167:18:1167:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1167:26:1167:27 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1167:26:1167:27 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1167:26:1167:27 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1170:13:1170:14 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1170:13:1170:14 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1170:13:1170:14 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1170:35:1170:56 | ...::PairNone(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1170:35:1170:56 | ...::PairNone(...) | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1170:35:1170:56 | ...::PairNone(...) | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1171:9:1171:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1171:18:1171:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1171:18:1171:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1171:18:1171:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1171:18:1171:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1171:18:1171:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1171:26:1171:27 | p3 | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1171:26:1171:27 | p3 | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1171:26:1171:27 | p3 | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1173:9:1173:55 | g(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1173:11:1173:54 | ...::PairSnd(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1173:11:1173:54 | ...::PairSnd(...) | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1173:11:1173:54 | ...::PairSnd(...) | Snd | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1173:11:1173:54 | ...::PairSnd(...) | Snd.Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1173:11:1173:54 | ...::PairSnd(...) | Snd.Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1173:31:1173:53 | ...::PairSnd(...) | | main.rs:1103:5:1109:5 | PairOption | -| main.rs:1173:31:1173:53 | ...::PairSnd(...) | Fst | main.rs:1125:5:1126:14 | S2 | -| main.rs:1173:31:1173:53 | ...::PairSnd(...) | Snd | main.rs:1128:5:1129:14 | S3 | -| main.rs:1173:51:1173:52 | S3 | | main.rs:1128:5:1129:14 | S3 | -| main.rs:1175:13:1175:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1175:13:1175:13 | x | E | main.rs:1122:5:1123:14 | S1 | -| main.rs:1175:13:1175:13 | x | T | main.rs:1148:5:1148:34 | S4 | -| main.rs:1175:13:1175:13 | x | T.T41 | main.rs:1125:5:1126:14 | S2 | -| main.rs:1175:13:1175:13 | x | T.T42 | main.rs:1150:5:1150:22 | S5 | -| main.rs:1175:13:1175:13 | x | T.T42.T5 | main.rs:1125:5:1126:14 | S2 | -| main.rs:1188:16:1188:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1188:16:1188:24 | SelfParam | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | -| main.rs:1188:27:1188:31 | value | | main.rs:1186:19:1186:19 | S | -| main.rs:1190:21:1190:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1190:21:1190:29 | SelfParam | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | -| main.rs:1190:32:1190:36 | value | | main.rs:1186:19:1186:19 | S | -| main.rs:1190:42:1192:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1191:13:1191:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1191:13:1191:16 | self | TRefMut | main.rs:1186:5:1193:5 | Self [trait MyTrait] | -| main.rs:1191:13:1191:27 | self.set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1191:22:1191:26 | value | | main.rs:1186:19:1186:19 | S | -| main.rs:1197:16:1197:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1197:16:1197:24 | SelfParam | TRefMut | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1197:16:1197:24 | SelfParam | TRefMut.T | main.rs:1195:10:1195:10 | T | -| main.rs:1197:27:1197:31 | value | | main.rs:1195:10:1195:10 | T | -| main.rs:1197:37:1197:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1201:26:1203:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1201:26:1203:9 | { ... } | T | main.rs:1200:10:1200:10 | T | -| main.rs:1202:13:1202:30 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1202:13:1202:30 | ...::MyNone(...) | T | main.rs:1200:10:1200:10 | T | -| main.rs:1207:20:1207:23 | SelfParam | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1207:20:1207:23 | SelfParam | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1207:20:1207:23 | SelfParam | T.T | main.rs:1206:10:1206:10 | T | -| main.rs:1207:41:1212:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1207:41:1212:9 | { ... } | T | main.rs:1206:10:1206:10 | T | -| main.rs:1208:13:1211:13 | match self { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1208:13:1211:13 | match self { ... } | T | main.rs:1206:10:1206:10 | T | -| main.rs:1208:19:1208:22 | self | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1208:19:1208:22 | self | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1208:19:1208:22 | self | T.T | main.rs:1206:10:1206:10 | T | -| main.rs:1209:17:1209:34 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1209:17:1209:34 | ...::MyNone(...) | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1209:17:1209:34 | ...::MyNone(...) | T.T | main.rs:1206:10:1206:10 | T | -| main.rs:1209:39:1209:56 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1209:39:1209:56 | ...::MyNone(...) | T | main.rs:1206:10:1206:10 | T | -| main.rs:1210:17:1210:35 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1210:17:1210:35 | ...::MySome(...) | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1210:17:1210:35 | ...::MySome(...) | T.T | main.rs:1206:10:1206:10 | T | -| main.rs:1210:34:1210:34 | x | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1210:34:1210:34 | x | T | main.rs:1206:10:1206:10 | T | -| main.rs:1210:40:1210:40 | x | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1210:40:1210:40 | x | T | main.rs:1206:10:1206:10 | T | -| main.rs:1218:16:1263:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1219:13:1219:14 | x1 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1219:13:1219:14 | x1 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1219:18:1219:37 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1219:18:1219:37 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1220:9:1220:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1220:18:1220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1220:18:1220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1220:18:1220:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1220:18:1220:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1220:18:1220:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1220:26:1220:27 | x1 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1220:26:1220:27 | x1 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1222:17:1222:18 | x2 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1222:17:1222:18 | x2 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1222:22:1222:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1222:22:1222:36 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1223:9:1223:10 | x2 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1223:9:1223:10 | x2 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1223:9:1223:17 | x2.set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1223:16:1223:16 | S | | main.rs:1215:5:1216:13 | S | -| main.rs:1224:9:1224:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1224:18:1224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1224:18:1224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1224:18:1224:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1224:18:1224:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1224:18:1224:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1224:26:1224:27 | x2 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1224:26:1224:27 | x2 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1226:17:1226:18 | x3 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1226:17:1226:18 | x3 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1226:22:1226:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1226:22:1226:36 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1227:9:1227:10 | x3 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1227:9:1227:10 | x3 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1227:9:1227:22 | x3.call_set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1227:21:1227:21 | S | | main.rs:1215:5:1216:13 | S | -| main.rs:1228:9:1228:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1228:18:1228:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1228:18:1228:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1228:18:1228:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1228:18:1228:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1228:18:1228:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1228:26:1228:27 | x3 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1228:26:1228:27 | x3 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1230:17:1230:18 | x4 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1230:17:1230:18 | x4 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1230:22:1230:36 | ...::new(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1230:22:1230:36 | ...::new(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1231:9:1231:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1231:23:1231:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | -| main.rs:1231:23:1231:29 | &mut x4 | TRefMut | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1231:23:1231:29 | &mut x4 | TRefMut.T | main.rs:1215:5:1216:13 | S | -| main.rs:1231:28:1231:29 | x4 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1231:28:1231:29 | x4 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1231:32:1231:32 | S | | main.rs:1215:5:1216:13 | S | -| main.rs:1232:9:1232:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1232:18:1232:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1232:18:1232:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1232:18:1232:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1232:18:1232:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1232:18:1232:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1232:26:1232:27 | x4 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1232:26:1232:27 | x4 | T | main.rs:1215:5:1216:13 | S | -| main.rs:1234:13:1234:14 | x5 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1234:13:1234:14 | x5 | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1234:13:1234:14 | x5 | T.T | main.rs:1215:5:1216:13 | S | -| main.rs:1234:18:1234:58 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1234:18:1234:58 | ...::MySome(...) | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1234:18:1234:58 | ...::MySome(...) | T.T | main.rs:1215:5:1216:13 | S | -| main.rs:1234:35:1234:57 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1234:35:1234:57 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1235:9:1235:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1235:18:1235:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1235:18:1235:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1235:18:1235:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1235:18:1235:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1235:18:1235:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1235:26:1235:27 | x5 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1235:26:1235:27 | x5 | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1235:26:1235:27 | x5 | T.T | main.rs:1215:5:1216:13 | S | -| main.rs:1235:26:1235:37 | x5.flatten() | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1235:26:1235:37 | x5.flatten() | T | main.rs:1215:5:1216:13 | S | -| main.rs:1237:13:1237:14 | x6 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1237:13:1237:14 | x6 | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1237:13:1237:14 | x6 | T.T | main.rs:1215:5:1216:13 | S | -| main.rs:1237:18:1237:58 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1237:18:1237:58 | ...::MySome(...) | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1237:18:1237:58 | ...::MySome(...) | T.T | main.rs:1215:5:1216:13 | S | -| main.rs:1237:35:1237:57 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1237:35:1237:57 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1238:9:1238:62 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1238:18:1238:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1238:18:1238:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1238:18:1238:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1238:18:1238:61 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1238:18:1238:61 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1238:26:1238:61 | ...::flatten(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1238:26:1238:61 | ...::flatten(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1238:59:1238:60 | x6 | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1238:59:1238:60 | x6 | T | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1238:59:1238:60 | x6 | T.T | main.rs:1215:5:1216:13 | S | -| main.rs:1241:13:1241:19 | from_if | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1241:13:1241:19 | from_if | T | main.rs:1215:5:1216:13 | S | -| main.rs:1241:23:1245:9 | if ... {...} else {...} | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1241:23:1245:9 | if ... {...} else {...} | T | main.rs:1215:5:1216:13 | S | -| main.rs:1241:26:1241:26 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1241:26:1241:30 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1241:30:1241:30 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1241:32:1243:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1241:32:1243:9 | { ... } | T | main.rs:1215:5:1216:13 | S | -| main.rs:1242:13:1242:30 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1242:13:1242:30 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1243:16:1245:9 | { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1243:16:1245:9 | { ... } | T | main.rs:1215:5:1216:13 | S | -| main.rs:1244:13:1244:31 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1244:13:1244:31 | ...::MySome(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1244:30:1244:30 | S | | main.rs:1215:5:1216:13 | S | -| main.rs:1246:9:1246:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1246:18:1246:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1246:18:1246:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1246:18:1246:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1246:18:1246:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1246:18:1246:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1246:26:1246:32 | from_if | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1246:26:1246:32 | from_if | T | main.rs:1215:5:1216:13 | S | -| main.rs:1249:13:1249:22 | from_match | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1249:13:1249:22 | from_match | T | main.rs:1215:5:1216:13 | S | -| main.rs:1249:26:1252:9 | match ... { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1249:26:1252:9 | match ... { ... } | T | main.rs:1215:5:1216:13 | S | -| main.rs:1249:32:1249:32 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1249:32:1249:36 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1249:36:1249:36 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1250:13:1250:16 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1250:21:1250:38 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1250:21:1250:38 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1251:13:1251:17 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1251:22:1251:40 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1251:22:1251:40 | ...::MySome(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1251:39:1251:39 | S | | main.rs:1215:5:1216:13 | S | -| main.rs:1253:9:1253:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1253:18:1253:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1253:18:1253:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1253:18:1253:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1253:18:1253:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1253:18:1253:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1253:26:1253:35 | from_match | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1253:26:1253:35 | from_match | T | main.rs:1215:5:1216:13 | S | -| main.rs:1256:13:1256:21 | from_loop | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1256:13:1256:21 | from_loop | T | main.rs:1215:5:1216:13 | S | -| main.rs:1256:25:1261:9 | loop { ... } | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1256:25:1261:9 | loop { ... } | T | main.rs:1215:5:1216:13 | S | -| main.rs:1256:30:1261:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1257:13:1259:13 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1257:16:1257:16 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1257:16:1257:20 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1257:20:1257:20 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1257:22:1259:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1258:23:1258:40 | ...::MyNone(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1258:23:1258:40 | ...::MyNone(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1260:19:1260:37 | ...::MySome(...) | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1260:19:1260:37 | ...::MySome(...) | T | main.rs:1215:5:1216:13 | S | -| main.rs:1260:36:1260:36 | S | | main.rs:1215:5:1216:13 | S | -| main.rs:1262:9:1262:35 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1262:18:1262:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1262:18:1262:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1262:18:1262:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1262:18:1262:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1262:18:1262:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1262:26:1262:34 | from_loop | | main.rs:1180:5:1184:5 | MyOption | -| main.rs:1262:26:1262:34 | from_loop | T | main.rs:1215:5:1216:13 | S | -| main.rs:1280:15:1280:18 | SelfParam | | main.rs:1268:5:1269:19 | S | -| main.rs:1280:15:1280:18 | SelfParam | T | main.rs:1279:10:1279:10 | T | -| main.rs:1280:26:1282:9 | { ... } | | main.rs:1279:10:1279:10 | T | -| main.rs:1281:13:1281:16 | self | | main.rs:1268:5:1269:19 | S | -| main.rs:1281:13:1281:16 | self | T | main.rs:1279:10:1279:10 | T | -| main.rs:1281:13:1281:18 | self.0 | | main.rs:1279:10:1279:10 | T | -| main.rs:1284:15:1284:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1284:15:1284:19 | SelfParam | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1284:15:1284:19 | SelfParam | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1284:28:1286:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1284:28:1286:9 | { ... } | TRef | main.rs:1279:10:1279:10 | T | -| main.rs:1285:13:1285:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1285:13:1285:19 | &... | TRef | main.rs:1279:10:1279:10 | T | -| main.rs:1285:14:1285:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1285:14:1285:17 | self | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1285:14:1285:17 | self | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1285:14:1285:19 | self.0 | | main.rs:1279:10:1279:10 | T | -| main.rs:1288:15:1288:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1288:15:1288:25 | SelfParam | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1288:15:1288:25 | SelfParam | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1288:34:1290:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1288:34:1290:9 | { ... } | TRef | main.rs:1279:10:1279:10 | T | -| main.rs:1289:13:1289:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1289:13:1289:19 | &... | TRef | main.rs:1279:10:1279:10 | T | -| main.rs:1289:14:1289:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1289:14:1289:17 | self | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1289:14:1289:17 | self | TRef.T | main.rs:1279:10:1279:10 | T | -| main.rs:1289:14:1289:19 | self.0 | | main.rs:1279:10:1279:10 | T | -| main.rs:1294:29:1294:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1294:29:1294:33 | SelfParam | TRef | main.rs:1293:5:1296:5 | Self [trait ATrait] | -| main.rs:1295:33:1295:36 | SelfParam | | main.rs:1293:5:1296:5 | Self [trait ATrait] | -| main.rs:1301:29:1301:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1301:29:1301:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1301:29:1301:33 | SelfParam | TRef.TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1301:43:1303:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1302:13:1302:22 | (...) | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1302:13:1302:24 | ... .a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1302:14:1302:21 | * ... | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1302:15:1302:21 | (...) | | {EXTERNAL LOCATION} | & | -| main.rs:1302:15:1302:21 | (...) | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1302:16:1302:20 | * ... | | {EXTERNAL LOCATION} | & | -| main.rs:1302:16:1302:20 | * ... | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1302:17:1302:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1302:17:1302:20 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1302:17:1302:20 | self | TRef.TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1306:33:1306:36 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1306:33:1306:36 | SelfParam | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1306:46:1308:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1307:13:1307:19 | (...) | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1307:13:1307:21 | ... .a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1307:14:1307:18 | * ... | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1307:15:1307:18 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1307:15:1307:18 | self | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1311:16:1361:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1312:13:1312:14 | x1 | | main.rs:1268:5:1269:19 | S | -| main.rs:1312:13:1312:14 | x1 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1312:18:1312:22 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1312:18:1312:22 | S(...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1312:20:1312:21 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1313:9:1313:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1313:18:1313:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1313:18:1313:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1313:18:1313:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1313:18:1313:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1313:18:1313:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1313:26:1313:27 | x1 | | main.rs:1268:5:1269:19 | S | -| main.rs:1313:26:1313:27 | x1 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1313:26:1313:32 | x1.m1() | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1315:13:1315:14 | x2 | | main.rs:1268:5:1269:19 | S | -| main.rs:1315:13:1315:14 | x2 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1315:18:1315:22 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1315:18:1315:22 | S(...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1315:20:1315:21 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1317:9:1317:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1317:18:1317:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1317:18:1317:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1317:18:1317:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1317:18:1317:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1317:18:1317:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1317:26:1317:27 | x2 | | main.rs:1268:5:1269:19 | S | -| main.rs:1317:26:1317:27 | x2 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1317:26:1317:32 | x2.m2() | | {EXTERNAL LOCATION} | & | -| main.rs:1317:26:1317:32 | x2.m2() | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1318:9:1318:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1318:18:1318:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1318:18:1318:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1318:18:1318:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1318:18:1318:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1318:18:1318:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1318:26:1318:27 | x2 | | main.rs:1268:5:1269:19 | S | -| main.rs:1318:26:1318:27 | x2 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1318:26:1318:32 | x2.m3() | | {EXTERNAL LOCATION} | & | -| main.rs:1318:26:1318:32 | x2.m3() | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1320:13:1320:14 | x3 | | main.rs:1268:5:1269:19 | S | -| main.rs:1320:13:1320:14 | x3 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1320:18:1320:22 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1320:18:1320:22 | S(...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1320:20:1320:21 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1322:9:1322:42 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1322:18:1322:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1322:18:1322:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1322:18:1322:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1322:26:1322:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1322:26:1322:41 | ...::m2(...) | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1322:38:1322:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1322:38:1322:40 | &x3 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1322:38:1322:40 | &x3 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1322:39:1322:40 | x3 | | main.rs:1268:5:1269:19 | S | -| main.rs:1322:39:1322:40 | x3 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1323:9:1323:42 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1323:18:1323:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1323:18:1323:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1323:18:1323:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1323:18:1323:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1323:18:1323:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1323:26:1323:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1323:26:1323:41 | ...::m3(...) | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1323:38:1323:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1323:38:1323:40 | &x3 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1323:38:1323:40 | &x3 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1323:39:1323:40 | x3 | | main.rs:1268:5:1269:19 | S | -| main.rs:1323:39:1323:40 | x3 | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1325:13:1325:14 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1325:13:1325:14 | x4 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1325:13:1325:14 | x4 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1325:18:1325:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1325:18:1325:23 | &... | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1325:18:1325:23 | &... | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1325:19:1325:23 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1325:19:1325:23 | S(...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1325:21:1325:22 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1327:9:1327:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1327:18:1327:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1327:18:1327:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1327:18:1327:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1327:18:1327:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1327:18:1327:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1327:26:1327:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1327:26:1327:27 | x4 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1327:26:1327:27 | x4 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1327:26:1327:32 | x4.m2() | | {EXTERNAL LOCATION} | & | -| main.rs:1327:26:1327:32 | x4.m2() | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1328:9:1328:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1328:18:1328:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1328:18:1328:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1328:18:1328:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1328:18:1328:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1328:18:1328:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1328:26:1328:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1328:26:1328:27 | x4 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1328:26:1328:27 | x4 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1328:26:1328:32 | x4.m3() | | {EXTERNAL LOCATION} | & | -| main.rs:1328:26:1328:32 | x4.m3() | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1330:13:1330:14 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1330:13:1330:14 | x5 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1330:13:1330:14 | x5 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1330:18:1330:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1330:18:1330:23 | &... | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1330:18:1330:23 | &... | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1330:19:1330:23 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1330:19:1330:23 | S(...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1330:21:1330:22 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1332:9:1332:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1332:18:1332:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1332:18:1332:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1332:18:1332:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1332:18:1332:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1332:18:1332:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1332:26:1332:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1332:26:1332:27 | x5 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1332:26:1332:27 | x5 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1332:26:1332:32 | x5.m1() | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1333:9:1333:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1333:18:1333:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1333:18:1333:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1333:18:1333:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1333:18:1333:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1333:18:1333:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1333:26:1333:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1333:26:1333:27 | x5 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1333:26:1333:27 | x5 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1333:26:1333:29 | x5.0 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1335:13:1335:14 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1335:13:1335:14 | x6 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1335:13:1335:14 | x6 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1335:18:1335:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1335:18:1335:23 | &... | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1335:18:1335:23 | &... | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1335:19:1335:23 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1335:19:1335:23 | S(...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1335:21:1335:22 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1338:9:1338:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1338:18:1338:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1338:18:1338:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1338:18:1338:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1338:18:1338:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1338:18:1338:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1338:26:1338:30 | (...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1338:26:1338:30 | (...) | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1338:26:1338:35 | ... .m1() | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1338:27:1338:29 | * ... | | main.rs:1268:5:1269:19 | S | -| main.rs:1338:27:1338:29 | * ... | T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1338:28:1338:29 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1338:28:1338:29 | x6 | TRef | main.rs:1268:5:1269:19 | S | -| main.rs:1338:28:1338:29 | x6 | TRef.T | main.rs:1271:5:1272:14 | S2 | -| main.rs:1340:13:1340:14 | x7 | | main.rs:1268:5:1269:19 | S | -| main.rs:1340:13:1340:14 | x7 | T | {EXTERNAL LOCATION} | & | -| main.rs:1340:13:1340:14 | x7 | T.TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1340:18:1340:23 | S(...) | | main.rs:1268:5:1269:19 | S | -| main.rs:1340:18:1340:23 | S(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:1340:18:1340:23 | S(...) | T.TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1340:20:1340:22 | &S2 | | {EXTERNAL LOCATION} | & | -| main.rs:1340:20:1340:22 | &S2 | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1340:21:1340:22 | S2 | | main.rs:1271:5:1272:14 | S2 | -| main.rs:1343:13:1343:13 | t | | {EXTERNAL LOCATION} | & | -| main.rs:1343:13:1343:13 | t | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1343:17:1343:18 | x7 | | main.rs:1268:5:1269:19 | S | -| main.rs:1343:17:1343:18 | x7 | T | {EXTERNAL LOCATION} | & | -| main.rs:1343:17:1343:18 | x7 | T.TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1343:17:1343:23 | x7.m1() | | {EXTERNAL LOCATION} | & | -| main.rs:1343:17:1343:23 | x7.m1() | TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1344:9:1344:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:942:18:942:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:942:18:942:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:942:18:942:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:942:26:942:26 | b | | main.rs:787:5:788:14 | S2 | +| main.rs:943:13:943:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:943:17:943:26 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:943:24:943:25 | S1 | | main.rs:785:5:786:14 | S1 | +| main.rs:944:13:944:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:944:22:944:31 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:944:29:944:30 | S2 | | main.rs:787:5:788:14 | S2 | +| main.rs:961:15:961:18 | SelfParam | | main.rs:949:5:953:5 | MyEnum | +| main.rs:961:15:961:18 | SelfParam | A | main.rs:960:10:960:10 | T | +| main.rs:961:26:966:9 | { ... } | | main.rs:960:10:960:10 | T | +| main.rs:962:13:965:13 | match self { ... } | | main.rs:960:10:960:10 | T | +| main.rs:962:19:962:22 | self | | main.rs:949:5:953:5 | MyEnum | +| main.rs:962:19:962:22 | self | A | main.rs:960:10:960:10 | T | +| main.rs:963:17:963:29 | ...::C1(...) | | main.rs:949:5:953:5 | MyEnum | +| main.rs:963:17:963:29 | ...::C1(...) | A | main.rs:960:10:960:10 | T | +| main.rs:963:28:963:28 | a | | main.rs:960:10:960:10 | T | +| main.rs:963:34:963:34 | a | | main.rs:960:10:960:10 | T | +| main.rs:964:17:964:32 | ...::C2 {...} | | main.rs:949:5:953:5 | MyEnum | +| main.rs:964:17:964:32 | ...::C2 {...} | A | main.rs:960:10:960:10 | T | +| main.rs:964:30:964:30 | a | | main.rs:960:10:960:10 | T | +| main.rs:964:37:964:37 | a | | main.rs:960:10:960:10 | T | +| main.rs:969:16:975:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:970:13:970:13 | x | | main.rs:949:5:953:5 | MyEnum | +| main.rs:970:13:970:13 | x | A | main.rs:955:5:956:14 | S1 | +| main.rs:970:17:970:30 | ...::C1(...) | | main.rs:949:5:953:5 | MyEnum | +| main.rs:970:17:970:30 | ...::C1(...) | A | main.rs:955:5:956:14 | S1 | +| main.rs:970:28:970:29 | S1 | | main.rs:955:5:956:14 | S1 | +| main.rs:971:13:971:13 | y | | main.rs:949:5:953:5 | MyEnum | +| main.rs:971:13:971:13 | y | A | main.rs:957:5:958:14 | S2 | +| main.rs:971:17:971:36 | ...::C2 {...} | | main.rs:949:5:953:5 | MyEnum | +| main.rs:971:17:971:36 | ...::C2 {...} | A | main.rs:957:5:958:14 | S2 | +| main.rs:971:33:971:34 | S2 | | main.rs:957:5:958:14 | S2 | +| main.rs:973:9:973:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:973:18:973:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:973:18:973:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:973:18:973:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:973:18:973:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:973:18:973:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:973:26:973:26 | x | | main.rs:949:5:953:5 | MyEnum | +| main.rs:973:26:973:26 | x | A | main.rs:955:5:956:14 | S1 | +| main.rs:973:26:973:31 | x.m1() | | main.rs:955:5:956:14 | S1 | +| main.rs:974:9:974:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:974:18:974:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:974:18:974:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:974:18:974:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:974:18:974:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:974:18:974:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:974:26:974:26 | y | | main.rs:949:5:953:5 | MyEnum | +| main.rs:974:26:974:26 | y | A | main.rs:957:5:958:14 | S2 | +| main.rs:974:26:974:31 | y.m1() | | main.rs:957:5:958:14 | S2 | +| main.rs:996:15:996:18 | SelfParam | | main.rs:994:5:997:5 | Self [trait MyTrait1] | +| main.rs:1001:15:1001:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1001:15:1001:19 | SelfParam | TRef | main.rs:999:5:1011:5 | Self [trait MyTrait2] | +| main.rs:1004:9:1010:9 | { ... } | | main.rs:999:20:999:22 | Tr2 | +| main.rs:1005:13:1009:13 | if ... {...} else {...} | | main.rs:999:20:999:22 | Tr2 | +| main.rs:1005:16:1005:16 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1005:16:1005:20 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1005:20:1005:20 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1005:22:1007:13 | { ... } | | main.rs:999:20:999:22 | Tr2 | +| main.rs:1006:17:1006:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1006:17:1006:20 | self | TRef | main.rs:999:5:1011:5 | Self [trait MyTrait2] | +| main.rs:1006:17:1006:25 | self.m1() | | main.rs:999:20:999:22 | Tr2 | +| main.rs:1007:20:1009:13 | { ... } | | main.rs:999:20:999:22 | Tr2 | +| main.rs:1008:17:1008:31 | ...::m1(...) | | main.rs:999:20:999:22 | Tr2 | +| main.rs:1008:26:1008:30 | * ... | | main.rs:999:5:1011:5 | Self [trait MyTrait2] | +| main.rs:1008:27:1008:30 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1008:27:1008:30 | self | TRef | main.rs:999:5:1011:5 | Self [trait MyTrait2] | +| main.rs:1015:15:1015:18 | SelfParam | | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | +| main.rs:1018:9:1024:9 | { ... } | | main.rs:1013:20:1013:22 | Tr3 | +| main.rs:1019:13:1023:13 | if ... {...} else {...} | | main.rs:1013:20:1013:22 | Tr3 | +| main.rs:1019:16:1019:16 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1019:16:1019:20 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1019:20:1019:20 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1019:22:1021:13 | { ... } | | main.rs:1013:20:1013:22 | Tr3 | +| main.rs:1020:17:1020:20 | self | | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | +| main.rs:1020:17:1020:25 | self.m2() | | main.rs:979:5:982:5 | MyThing | +| main.rs:1020:17:1020:25 | self.m2() | A | main.rs:1013:20:1013:22 | Tr3 | +| main.rs:1020:17:1020:27 | ... .a | | main.rs:1013:20:1013:22 | Tr3 | +| main.rs:1021:20:1023:13 | { ... } | | main.rs:1013:20:1013:22 | Tr3 | +| main.rs:1022:17:1022:31 | ...::m2(...) | | main.rs:979:5:982:5 | MyThing | +| main.rs:1022:17:1022:31 | ...::m2(...) | A | main.rs:1013:20:1013:22 | Tr3 | +| main.rs:1022:17:1022:33 | ... .a | | main.rs:1013:20:1013:22 | Tr3 | +| main.rs:1022:26:1022:30 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1022:26:1022:30 | &self | TRef | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | +| main.rs:1022:27:1022:30 | self | | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | +| main.rs:1029:15:1029:18 | SelfParam | | main.rs:979:5:982:5 | MyThing | +| main.rs:1029:15:1029:18 | SelfParam | A | main.rs:1027:10:1027:10 | T | +| main.rs:1029:26:1031:9 | { ... } | | main.rs:1027:10:1027:10 | T | +| main.rs:1030:13:1030:16 | self | | main.rs:979:5:982:5 | MyThing | +| main.rs:1030:13:1030:16 | self | A | main.rs:1027:10:1027:10 | T | +| main.rs:1030:13:1030:18 | self.a | | main.rs:1027:10:1027:10 | T | +| main.rs:1038:15:1038:18 | SelfParam | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1038:15:1038:18 | SelfParam | A | main.rs:1036:10:1036:10 | T | +| main.rs:1038:35:1040:9 | { ... } | | main.rs:979:5:982:5 | MyThing | +| main.rs:1038:35:1040:9 | { ... } | A | main.rs:1036:10:1036:10 | T | +| main.rs:1039:13:1039:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | +| main.rs:1039:13:1039:33 | MyThing {...} | A | main.rs:1036:10:1036:10 | T | +| main.rs:1039:26:1039:29 | self | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1039:26:1039:29 | self | A | main.rs:1036:10:1036:10 | T | +| main.rs:1039:26:1039:31 | self.a | | main.rs:1036:10:1036:10 | T | +| main.rs:1047:44:1047:44 | x | | main.rs:1047:26:1047:41 | T2 | +| main.rs:1047:57:1049:5 | { ... } | | main.rs:1047:22:1047:23 | T1 | +| main.rs:1048:9:1048:9 | x | | main.rs:1047:26:1047:41 | T2 | +| main.rs:1048:9:1048:14 | x.m1() | | main.rs:1047:22:1047:23 | T1 | +| main.rs:1051:56:1051:56 | x | | main.rs:1051:39:1051:53 | T | +| main.rs:1051:62:1055:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1053:13:1053:13 | a | | main.rs:979:5:982:5 | MyThing | +| main.rs:1053:13:1053:13 | a | A | main.rs:989:5:990:14 | S1 | +| main.rs:1053:17:1053:17 | x | | main.rs:1051:39:1051:53 | T | +| main.rs:1053:17:1053:22 | x.m1() | | main.rs:979:5:982:5 | MyThing | +| main.rs:1053:17:1053:22 | x.m1() | A | main.rs:989:5:990:14 | S1 | +| main.rs:1054:9:1054:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1054:18:1054:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1054:18:1054:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1054:18:1054:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1054:18:1054:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1054:18:1054:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1054:26:1054:26 | a | | main.rs:979:5:982:5 | MyThing | +| main.rs:1054:26:1054:26 | a | A | main.rs:989:5:990:14 | S1 | +| main.rs:1057:16:1081:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1058:13:1058:13 | x | | main.rs:979:5:982:5 | MyThing | +| main.rs:1058:13:1058:13 | x | A | main.rs:989:5:990:14 | S1 | +| main.rs:1058:17:1058:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | +| main.rs:1058:17:1058:33 | MyThing {...} | A | main.rs:989:5:990:14 | S1 | +| main.rs:1058:30:1058:31 | S1 | | main.rs:989:5:990:14 | S1 | +| main.rs:1059:13:1059:13 | y | | main.rs:979:5:982:5 | MyThing | +| main.rs:1059:13:1059:13 | y | A | main.rs:991:5:992:14 | S2 | +| main.rs:1059:17:1059:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | +| main.rs:1059:17:1059:33 | MyThing {...} | A | main.rs:991:5:992:14 | S2 | +| main.rs:1059:30:1059:31 | S2 | | main.rs:991:5:992:14 | S2 | +| main.rs:1061:9:1061:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1061:18:1061:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1061:18:1061:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1061:18:1061:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1061:18:1061:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1061:18:1061:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1061:26:1061:26 | x | | main.rs:979:5:982:5 | MyThing | +| main.rs:1061:26:1061:26 | x | A | main.rs:989:5:990:14 | S1 | +| main.rs:1061:26:1061:31 | x.m1() | | main.rs:989:5:990:14 | S1 | +| main.rs:1062:9:1062:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1062:18:1062:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1062:18:1062:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1062:18:1062:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1062:18:1062:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1062:18:1062:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1062:26:1062:26 | y | | main.rs:979:5:982:5 | MyThing | +| main.rs:1062:26:1062:26 | y | A | main.rs:991:5:992:14 | S2 | +| main.rs:1062:26:1062:31 | y.m1() | | main.rs:991:5:992:14 | S2 | +| main.rs:1064:13:1064:13 | x | | main.rs:979:5:982:5 | MyThing | +| main.rs:1064:13:1064:13 | x | A | main.rs:989:5:990:14 | S1 | +| main.rs:1064:17:1064:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | +| main.rs:1064:17:1064:33 | MyThing {...} | A | main.rs:989:5:990:14 | S1 | +| main.rs:1064:30:1064:31 | S1 | | main.rs:989:5:990:14 | S1 | +| main.rs:1065:13:1065:13 | y | | main.rs:979:5:982:5 | MyThing | +| main.rs:1065:13:1065:13 | y | A | main.rs:991:5:992:14 | S2 | +| main.rs:1065:17:1065:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | +| main.rs:1065:17:1065:33 | MyThing {...} | A | main.rs:991:5:992:14 | S2 | +| main.rs:1065:30:1065:31 | S2 | | main.rs:991:5:992:14 | S2 | +| main.rs:1067:9:1067:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1067:18:1067:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1067:18:1067:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1067:18:1067:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1067:18:1067:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1067:18:1067:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1067:26:1067:26 | x | | main.rs:979:5:982:5 | MyThing | +| main.rs:1067:26:1067:26 | x | A | main.rs:989:5:990:14 | S1 | +| main.rs:1067:26:1067:31 | x.m2() | | main.rs:989:5:990:14 | S1 | +| main.rs:1068:9:1068:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1068:18:1068:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1068:18:1068:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1068:18:1068:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1068:18:1068:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1068:18:1068:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1068:26:1068:26 | y | | main.rs:979:5:982:5 | MyThing | +| main.rs:1068:26:1068:26 | y | A | main.rs:991:5:992:14 | S2 | +| main.rs:1068:26:1068:31 | y.m2() | | main.rs:991:5:992:14 | S2 | +| main.rs:1070:13:1070:13 | x | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1070:13:1070:13 | x | A | main.rs:989:5:990:14 | S1 | +| main.rs:1070:17:1070:34 | MyThing2 {...} | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1070:17:1070:34 | MyThing2 {...} | A | main.rs:989:5:990:14 | S1 | +| main.rs:1070:31:1070:32 | S1 | | main.rs:989:5:990:14 | S1 | +| main.rs:1071:13:1071:13 | y | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1071:13:1071:13 | y | A | main.rs:991:5:992:14 | S2 | +| main.rs:1071:17:1071:34 | MyThing2 {...} | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1071:17:1071:34 | MyThing2 {...} | A | main.rs:991:5:992:14 | S2 | +| main.rs:1071:31:1071:32 | S2 | | main.rs:991:5:992:14 | S2 | +| main.rs:1073:9:1073:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1073:18:1073:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1073:18:1073:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1073:18:1073:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1073:18:1073:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1073:18:1073:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1073:26:1073:26 | x | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1073:26:1073:26 | x | A | main.rs:989:5:990:14 | S1 | +| main.rs:1073:26:1073:31 | x.m3() | | main.rs:989:5:990:14 | S1 | +| main.rs:1074:9:1074:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1074:18:1074:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1074:18:1074:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1074:18:1074:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1074:18:1074:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1074:18:1074:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1074:26:1074:26 | y | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1074:26:1074:26 | y | A | main.rs:991:5:992:14 | S2 | +| main.rs:1074:26:1074:31 | y.m3() | | main.rs:991:5:992:14 | S2 | +| main.rs:1076:13:1076:13 | x | | main.rs:979:5:982:5 | MyThing | +| main.rs:1076:13:1076:13 | x | A | main.rs:989:5:990:14 | S1 | +| main.rs:1076:17:1076:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | +| main.rs:1076:17:1076:33 | MyThing {...} | A | main.rs:989:5:990:14 | S1 | +| main.rs:1076:30:1076:31 | S1 | | main.rs:989:5:990:14 | S1 | +| main.rs:1077:13:1077:13 | s | | main.rs:989:5:990:14 | S1 | +| main.rs:1077:17:1077:32 | call_trait_m1(...) | | main.rs:989:5:990:14 | S1 | +| main.rs:1077:31:1077:31 | x | | main.rs:979:5:982:5 | MyThing | +| main.rs:1077:31:1077:31 | x | A | main.rs:989:5:990:14 | S1 | +| main.rs:1079:13:1079:13 | x | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1079:13:1079:13 | x | A | main.rs:991:5:992:14 | S2 | +| main.rs:1079:17:1079:34 | MyThing2 {...} | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1079:17:1079:34 | MyThing2 {...} | A | main.rs:991:5:992:14 | S2 | +| main.rs:1079:31:1079:32 | S2 | | main.rs:991:5:992:14 | S2 | +| main.rs:1080:13:1080:13 | s | | main.rs:979:5:982:5 | MyThing | +| main.rs:1080:13:1080:13 | s | A | main.rs:991:5:992:14 | S2 | +| main.rs:1080:17:1080:32 | call_trait_m1(...) | | main.rs:979:5:982:5 | MyThing | +| main.rs:1080:17:1080:32 | call_trait_m1(...) | A | main.rs:991:5:992:14 | S2 | +| main.rs:1080:31:1080:31 | x | | main.rs:984:5:987:5 | MyThing2 | +| main.rs:1080:31:1080:31 | x | A | main.rs:991:5:992:14 | S2 | +| main.rs:1097:22:1097:22 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1097:22:1097:22 | x | TRef | main.rs:1097:11:1097:19 | T | +| main.rs:1097:35:1099:5 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1097:35:1099:5 | { ... } | TRef | main.rs:1097:11:1097:19 | T | +| main.rs:1098:9:1098:9 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1098:9:1098:9 | x | TRef | main.rs:1097:11:1097:19 | T | +| main.rs:1102:17:1102:20 | SelfParam | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1102:29:1104:9 | { ... } | | main.rs:1090:5:1091:14 | S2 | +| main.rs:1103:13:1103:14 | S2 | | main.rs:1090:5:1091:14 | S2 | +| main.rs:1107:21:1107:21 | x | | main.rs:1107:13:1107:14 | T1 | +| main.rs:1110:5:1112:5 | { ... } | | main.rs:1107:17:1107:18 | T2 | +| main.rs:1111:9:1111:9 | x | | main.rs:1107:13:1107:14 | T1 | +| main.rs:1111:9:1111:16 | x.into() | | main.rs:1107:17:1107:18 | T2 | +| main.rs:1114:16:1130:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1115:13:1115:13 | x | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1115:17:1115:18 | S1 | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1116:9:1116:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1116:18:1116:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1116:18:1116:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1116:18:1116:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1116:18:1116:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1116:18:1116:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1116:26:1116:31 | id(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1116:26:1116:31 | id(...) | TRef | main.rs:1087:5:1088:14 | S1 | +| main.rs:1116:29:1116:30 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1116:29:1116:30 | &x | TRef | main.rs:1087:5:1088:14 | S1 | +| main.rs:1116:30:1116:30 | x | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1118:13:1118:13 | x | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1118:17:1118:18 | S1 | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1119:9:1119:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1119:18:1119:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1119:18:1119:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1119:18:1119:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1119:18:1119:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1119:18:1119:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1119:26:1119:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1119:26:1119:37 | id::<...>(...) | TRef | main.rs:1087:5:1088:14 | S1 | +| main.rs:1119:35:1119:36 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1119:35:1119:36 | &x | TRef | main.rs:1087:5:1088:14 | S1 | +| main.rs:1119:36:1119:36 | x | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1121:13:1121:13 | x | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1121:17:1121:18 | S1 | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1123:9:1123:45 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1123:18:1123:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1123:18:1123:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1123:18:1123:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1123:18:1123:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1123:18:1123:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1123:26:1123:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1123:26:1123:44 | id::<...>(...) | TRef | main.rs:1093:5:1093:25 | dyn Trait | +| main.rs:1123:42:1123:43 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1123:42:1123:43 | &x | TRef | main.rs:1087:5:1088:14 | S1 | +| main.rs:1123:43:1123:43 | x | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1125:13:1125:13 | x | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1125:17:1125:18 | S1 | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1126:9:1126:25 | into::<...>(...) | | main.rs:1090:5:1091:14 | S2 | +| main.rs:1126:24:1126:24 | x | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1128:13:1128:13 | x | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1128:17:1128:18 | S1 | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1129:13:1129:13 | y | | main.rs:1090:5:1091:14 | S2 | +| main.rs:1129:21:1129:27 | into(...) | | main.rs:1090:5:1091:14 | S2 | +| main.rs:1129:26:1129:26 | x | | main.rs:1087:5:1088:14 | S1 | +| main.rs:1143:22:1143:25 | SelfParam | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1143:22:1143:25 | SelfParam | Fst | main.rs:1142:10:1142:12 | Fst | +| main.rs:1143:22:1143:25 | SelfParam | Snd | main.rs:1142:15:1142:17 | Snd | +| main.rs:1143:35:1150:9 | { ... } | | main.rs:1142:15:1142:17 | Snd | +| main.rs:1144:13:1149:13 | match self { ... } | | file://:0:0:0:0 | ! | +| main.rs:1144:13:1149:13 | match self { ... } | | main.rs:1142:15:1142:17 | Snd | +| main.rs:1144:19:1144:22 | self | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1144:19:1144:22 | self | Fst | main.rs:1142:10:1142:12 | Fst | +| main.rs:1144:19:1144:22 | self | Snd | main.rs:1142:15:1142:17 | Snd | +| main.rs:1145:17:1145:38 | ...::PairNone(...) | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1145:17:1145:38 | ...::PairNone(...) | Fst | main.rs:1142:10:1142:12 | Fst | +| main.rs:1145:17:1145:38 | ...::PairNone(...) | Snd | main.rs:1142:15:1142:17 | Snd | +| main.rs:1145:43:1145:82 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:1145:50:1145:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | +| main.rs:1145:50:1145:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1145:50:1145:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:1145:50:1145:81 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1145:50:1145:81 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1146:17:1146:38 | ...::PairFst(...) | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1146:17:1146:38 | ...::PairFst(...) | Fst | main.rs:1142:10:1142:12 | Fst | +| main.rs:1146:17:1146:38 | ...::PairFst(...) | Snd | main.rs:1142:15:1142:17 | Snd | +| main.rs:1146:37:1146:37 | _ | | main.rs:1142:10:1142:12 | Fst | +| main.rs:1146:43:1146:81 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:1146:50:1146:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | +| main.rs:1146:50:1146:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1146:50:1146:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:1146:50:1146:80 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1146:50:1146:80 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1147:17:1147:40 | ...::PairSnd(...) | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1147:17:1147:40 | ...::PairSnd(...) | Fst | main.rs:1142:10:1142:12 | Fst | +| main.rs:1147:17:1147:40 | ...::PairSnd(...) | Snd | main.rs:1142:15:1142:17 | Snd | +| main.rs:1147:37:1147:39 | snd | | main.rs:1142:15:1142:17 | Snd | +| main.rs:1147:45:1147:47 | snd | | main.rs:1142:15:1142:17 | Snd | +| main.rs:1148:17:1148:44 | ...::PairBoth(...) | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1148:17:1148:44 | ...::PairBoth(...) | Fst | main.rs:1142:10:1142:12 | Fst | +| main.rs:1148:17:1148:44 | ...::PairBoth(...) | Snd | main.rs:1142:15:1142:17 | Snd | +| main.rs:1148:38:1148:38 | _ | | main.rs:1142:10:1142:12 | Fst | +| main.rs:1148:41:1148:43 | snd | | main.rs:1142:15:1142:17 | Snd | +| main.rs:1148:49:1148:51 | snd | | main.rs:1142:15:1142:17 | Snd | +| main.rs:1174:10:1174:10 | t | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1174:10:1174:10 | t | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1174:10:1174:10 | t | Snd | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1174:10:1174:10 | t | Snd.Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1174:10:1174:10 | t | Snd.Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1174:30:1177:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1175:13:1175:13 | x | | main.rs:1159:5:1160:14 | S3 | +| main.rs:1175:17:1175:17 | t | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1175:17:1175:17 | t | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1175:17:1175:17 | t | Snd | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1175:17:1175:17 | t | Snd.Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1175:17:1175:17 | t | Snd.Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1175:17:1175:29 | t.unwrapSnd() | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1175:17:1175:29 | t.unwrapSnd() | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1175:17:1175:29 | t.unwrapSnd() | Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1175:17:1175:41 | ... .unwrapSnd() | | main.rs:1159:5:1160:14 | S3 | +| main.rs:1176:9:1176:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1176:18:1176:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1176:18:1176:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1176:18:1176:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1176:18:1176:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1176:18:1176:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1176:26:1176:26 | x | | main.rs:1159:5:1160:14 | S3 | +| main.rs:1187:16:1207:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1189:13:1189:14 | p1 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1189:13:1189:14 | p1 | Fst | main.rs:1153:5:1154:14 | S1 | +| main.rs:1189:13:1189:14 | p1 | Snd | main.rs:1156:5:1157:14 | S2 | +| main.rs:1189:26:1189:53 | ...::PairBoth(...) | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1189:26:1189:53 | ...::PairBoth(...) | Fst | main.rs:1153:5:1154:14 | S1 | +| main.rs:1189:26:1189:53 | ...::PairBoth(...) | Snd | main.rs:1156:5:1157:14 | S2 | +| main.rs:1189:47:1189:48 | S1 | | main.rs:1153:5:1154:14 | S1 | +| main.rs:1189:51:1189:52 | S2 | | main.rs:1156:5:1157:14 | S2 | +| main.rs:1190:9:1190:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1190:18:1190:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1190:18:1190:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1190:26:1190:27 | p1 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1190:26:1190:27 | p1 | Fst | main.rs:1153:5:1154:14 | S1 | +| main.rs:1190:26:1190:27 | p1 | Snd | main.rs:1156:5:1157:14 | S2 | +| main.rs:1193:13:1193:14 | p2 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1193:13:1193:14 | p2 | Fst | main.rs:1153:5:1154:14 | S1 | +| main.rs:1193:13:1193:14 | p2 | Snd | main.rs:1156:5:1157:14 | S2 | +| main.rs:1193:26:1193:47 | ...::PairNone(...) | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1193:26:1193:47 | ...::PairNone(...) | Fst | main.rs:1153:5:1154:14 | S1 | +| main.rs:1193:26:1193:47 | ...::PairNone(...) | Snd | main.rs:1156:5:1157:14 | S2 | +| main.rs:1194:9:1194:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1194:18:1194:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1194:18:1194:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1194:18:1194:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1194:18:1194:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1194:18:1194:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1194:26:1194:27 | p2 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1194:26:1194:27 | p2 | Fst | main.rs:1153:5:1154:14 | S1 | +| main.rs:1194:26:1194:27 | p2 | Snd | main.rs:1156:5:1157:14 | S2 | +| main.rs:1197:13:1197:14 | p3 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1197:13:1197:14 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1197:13:1197:14 | p3 | Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1197:34:1197:56 | ...::PairSnd(...) | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1197:34:1197:56 | ...::PairSnd(...) | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1197:34:1197:56 | ...::PairSnd(...) | Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1197:54:1197:55 | S3 | | main.rs:1159:5:1160:14 | S3 | +| main.rs:1198:9:1198:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1198:18:1198:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1198:18:1198:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1198:18:1198:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1198:18:1198:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1198:18:1198:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1198:26:1198:27 | p3 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1198:26:1198:27 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1198:26:1198:27 | p3 | Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1201:13:1201:14 | p3 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1201:13:1201:14 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1201:13:1201:14 | p3 | Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1201:35:1201:56 | ...::PairNone(...) | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1201:35:1201:56 | ...::PairNone(...) | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1201:35:1201:56 | ...::PairNone(...) | Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1202:9:1202:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1202:18:1202:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1202:18:1202:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1202:18:1202:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1202:18:1202:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1202:18:1202:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1202:26:1202:27 | p3 | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1202:26:1202:27 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1202:26:1202:27 | p3 | Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1204:9:1204:55 | g(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1204:11:1204:54 | ...::PairSnd(...) | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1204:11:1204:54 | ...::PairSnd(...) | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1204:11:1204:54 | ...::PairSnd(...) | Snd | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1204:11:1204:54 | ...::PairSnd(...) | Snd.Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1204:11:1204:54 | ...::PairSnd(...) | Snd.Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1204:31:1204:53 | ...::PairSnd(...) | | main.rs:1134:5:1140:5 | PairOption | +| main.rs:1204:31:1204:53 | ...::PairSnd(...) | Fst | main.rs:1156:5:1157:14 | S2 | +| main.rs:1204:31:1204:53 | ...::PairSnd(...) | Snd | main.rs:1159:5:1160:14 | S3 | +| main.rs:1204:51:1204:52 | S3 | | main.rs:1159:5:1160:14 | S3 | +| main.rs:1206:13:1206:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1206:13:1206:13 | x | E | main.rs:1153:5:1154:14 | S1 | +| main.rs:1206:13:1206:13 | x | T | main.rs:1179:5:1179:34 | S4 | +| main.rs:1206:13:1206:13 | x | T.T41 | main.rs:1156:5:1157:14 | S2 | +| main.rs:1206:13:1206:13 | x | T.T42 | main.rs:1181:5:1181:22 | S5 | +| main.rs:1206:13:1206:13 | x | T.T42.T5 | main.rs:1156:5:1157:14 | S2 | +| main.rs:1219:16:1219:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1219:16:1219:24 | SelfParam | TRefMut | main.rs:1217:5:1224:5 | Self [trait MyTrait] | +| main.rs:1219:27:1219:31 | value | | main.rs:1217:19:1217:19 | S | +| main.rs:1221:21:1221:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1221:21:1221:29 | SelfParam | TRefMut | main.rs:1217:5:1224:5 | Self [trait MyTrait] | +| main.rs:1221:32:1221:36 | value | | main.rs:1217:19:1217:19 | S | +| main.rs:1221:42:1223:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1222:13:1222:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1222:13:1222:16 | self | TRefMut | main.rs:1217:5:1224:5 | Self [trait MyTrait] | +| main.rs:1222:13:1222:27 | self.set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1222:22:1222:26 | value | | main.rs:1217:19:1217:19 | S | +| main.rs:1228:16:1228:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1228:16:1228:24 | SelfParam | TRefMut | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1228:16:1228:24 | SelfParam | TRefMut.T | main.rs:1226:10:1226:10 | T | +| main.rs:1228:27:1228:31 | value | | main.rs:1226:10:1226:10 | T | +| main.rs:1228:37:1228:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1232:26:1234:9 | { ... } | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1232:26:1234:9 | { ... } | T | main.rs:1231:10:1231:10 | T | +| main.rs:1233:13:1233:30 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1233:13:1233:30 | ...::MyNone(...) | T | main.rs:1231:10:1231:10 | T | +| main.rs:1238:20:1238:23 | SelfParam | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1238:20:1238:23 | SelfParam | T | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1238:20:1238:23 | SelfParam | T.T | main.rs:1237:10:1237:10 | T | +| main.rs:1238:41:1243:9 | { ... } | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1238:41:1243:9 | { ... } | T | main.rs:1237:10:1237:10 | T | +| main.rs:1239:13:1242:13 | match self { ... } | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1239:13:1242:13 | match self { ... } | T | main.rs:1237:10:1237:10 | T | +| main.rs:1239:19:1239:22 | self | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1239:19:1239:22 | self | T | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1239:19:1239:22 | self | T.T | main.rs:1237:10:1237:10 | T | +| main.rs:1240:17:1240:34 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1240:17:1240:34 | ...::MyNone(...) | T | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1240:17:1240:34 | ...::MyNone(...) | T.T | main.rs:1237:10:1237:10 | T | +| main.rs:1240:39:1240:56 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1240:39:1240:56 | ...::MyNone(...) | T | main.rs:1237:10:1237:10 | T | +| main.rs:1241:17:1241:35 | ...::MySome(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1241:17:1241:35 | ...::MySome(...) | T | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1241:17:1241:35 | ...::MySome(...) | T.T | main.rs:1237:10:1237:10 | T | +| main.rs:1241:34:1241:34 | x | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1241:34:1241:34 | x | T | main.rs:1237:10:1237:10 | T | +| main.rs:1241:40:1241:40 | x | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1241:40:1241:40 | x | T | main.rs:1237:10:1237:10 | T | +| main.rs:1249:16:1294:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1250:13:1250:14 | x1 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1250:13:1250:14 | x1 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1250:18:1250:37 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1250:18:1250:37 | ...::new(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1251:9:1251:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1251:18:1251:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1251:18:1251:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1251:18:1251:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1251:18:1251:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1251:18:1251:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1251:26:1251:27 | x1 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1251:26:1251:27 | x1 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1253:17:1253:18 | x2 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1253:17:1253:18 | x2 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1253:22:1253:36 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1253:22:1253:36 | ...::new(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1254:9:1254:10 | x2 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1254:9:1254:10 | x2 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1254:9:1254:17 | x2.set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1254:16:1254:16 | S | | main.rs:1246:5:1247:13 | S | +| main.rs:1255:9:1255:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1255:18:1255:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1255:18:1255:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1255:18:1255:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1255:18:1255:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1255:18:1255:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1255:26:1255:27 | x2 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1255:26:1255:27 | x2 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1257:17:1257:18 | x3 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1257:17:1257:18 | x3 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1257:22:1257:36 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1257:22:1257:36 | ...::new(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1258:9:1258:10 | x3 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1258:9:1258:10 | x3 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1258:9:1258:22 | x3.call_set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1258:21:1258:21 | S | | main.rs:1246:5:1247:13 | S | +| main.rs:1259:9:1259:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1259:18:1259:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1259:18:1259:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1259:18:1259:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1259:18:1259:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1259:18:1259:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1259:26:1259:27 | x3 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1259:26:1259:27 | x3 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1261:17:1261:18 | x4 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1261:17:1261:18 | x4 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1261:22:1261:36 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1261:22:1261:36 | ...::new(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1262:9:1262:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1262:23:1262:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | +| main.rs:1262:23:1262:29 | &mut x4 | TRefMut | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1262:23:1262:29 | &mut x4 | TRefMut.T | main.rs:1246:5:1247:13 | S | +| main.rs:1262:28:1262:29 | x4 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1262:28:1262:29 | x4 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1262:32:1262:32 | S | | main.rs:1246:5:1247:13 | S | +| main.rs:1263:9:1263:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1263:18:1263:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1263:18:1263:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1263:18:1263:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1263:18:1263:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1263:18:1263:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1263:26:1263:27 | x4 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1263:26:1263:27 | x4 | T | main.rs:1246:5:1247:13 | S | +| main.rs:1265:13:1265:14 | x5 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1265:13:1265:14 | x5 | T | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1265:13:1265:14 | x5 | T.T | main.rs:1246:5:1247:13 | S | +| main.rs:1265:18:1265:58 | ...::MySome(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1265:18:1265:58 | ...::MySome(...) | T | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1265:18:1265:58 | ...::MySome(...) | T.T | main.rs:1246:5:1247:13 | S | +| main.rs:1265:35:1265:57 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1265:35:1265:57 | ...::MyNone(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1266:9:1266:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1266:18:1266:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1266:18:1266:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1266:18:1266:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1266:18:1266:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1266:18:1266:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1266:26:1266:27 | x5 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1266:26:1266:27 | x5 | T | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1266:26:1266:27 | x5 | T.T | main.rs:1246:5:1247:13 | S | +| main.rs:1266:26:1266:37 | x5.flatten() | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1266:26:1266:37 | x5.flatten() | T | main.rs:1246:5:1247:13 | S | +| main.rs:1268:13:1268:14 | x6 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1268:13:1268:14 | x6 | T | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1268:13:1268:14 | x6 | T.T | main.rs:1246:5:1247:13 | S | +| main.rs:1268:18:1268:58 | ...::MySome(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1268:18:1268:58 | ...::MySome(...) | T | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1268:18:1268:58 | ...::MySome(...) | T.T | main.rs:1246:5:1247:13 | S | +| main.rs:1268:35:1268:57 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1268:35:1268:57 | ...::MyNone(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1269:9:1269:62 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1269:18:1269:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1269:18:1269:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1269:18:1269:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1269:18:1269:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1269:18:1269:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1269:26:1269:61 | ...::flatten(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1269:26:1269:61 | ...::flatten(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1269:59:1269:60 | x6 | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1269:59:1269:60 | x6 | T | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1269:59:1269:60 | x6 | T.T | main.rs:1246:5:1247:13 | S | +| main.rs:1272:13:1272:19 | from_if | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1272:13:1272:19 | from_if | T | main.rs:1246:5:1247:13 | S | +| main.rs:1272:23:1276:9 | if ... {...} else {...} | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1272:23:1276:9 | if ... {...} else {...} | T | main.rs:1246:5:1247:13 | S | +| main.rs:1272:26:1272:26 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1272:26:1272:30 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1272:30:1272:30 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1272:32:1274:9 | { ... } | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1272:32:1274:9 | { ... } | T | main.rs:1246:5:1247:13 | S | +| main.rs:1273:13:1273:30 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1273:13:1273:30 | ...::MyNone(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1274:16:1276:9 | { ... } | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1274:16:1276:9 | { ... } | T | main.rs:1246:5:1247:13 | S | +| main.rs:1275:13:1275:31 | ...::MySome(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1275:13:1275:31 | ...::MySome(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1275:30:1275:30 | S | | main.rs:1246:5:1247:13 | S | +| main.rs:1277:9:1277:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1277:18:1277:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1277:18:1277:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1277:18:1277:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1277:18:1277:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1277:18:1277:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1277:26:1277:32 | from_if | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1277:26:1277:32 | from_if | T | main.rs:1246:5:1247:13 | S | +| main.rs:1280:13:1280:22 | from_match | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1280:13:1280:22 | from_match | T | main.rs:1246:5:1247:13 | S | +| main.rs:1280:26:1283:9 | match ... { ... } | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1280:26:1283:9 | match ... { ... } | T | main.rs:1246:5:1247:13 | S | +| main.rs:1280:32:1280:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1280:32:1280:36 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1280:36:1280:36 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1281:13:1281:16 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1281:21:1281:38 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1281:21:1281:38 | ...::MyNone(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1282:13:1282:17 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1282:22:1282:40 | ...::MySome(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1282:22:1282:40 | ...::MySome(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1282:39:1282:39 | S | | main.rs:1246:5:1247:13 | S | +| main.rs:1284:9:1284:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1284:18:1284:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1284:18:1284:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1284:18:1284:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1284:18:1284:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1284:18:1284:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1284:26:1284:35 | from_match | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1284:26:1284:35 | from_match | T | main.rs:1246:5:1247:13 | S | +| main.rs:1287:13:1287:21 | from_loop | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1287:13:1287:21 | from_loop | T | main.rs:1246:5:1247:13 | S | +| main.rs:1287:25:1292:9 | loop { ... } | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1287:25:1292:9 | loop { ... } | T | main.rs:1246:5:1247:13 | S | +| main.rs:1287:30:1292:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1288:13:1290:13 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1288:16:1288:16 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1288:16:1288:20 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1288:20:1288:20 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1288:22:1290:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1289:23:1289:40 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1289:23:1289:40 | ...::MyNone(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1291:19:1291:37 | ...::MySome(...) | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1291:19:1291:37 | ...::MySome(...) | T | main.rs:1246:5:1247:13 | S | +| main.rs:1291:36:1291:36 | S | | main.rs:1246:5:1247:13 | S | +| main.rs:1293:9:1293:35 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1293:18:1293:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1293:18:1293:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1293:18:1293:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1293:18:1293:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1293:18:1293:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1293:26:1293:34 | from_loop | | main.rs:1211:5:1215:5 | MyOption | +| main.rs:1293:26:1293:34 | from_loop | T | main.rs:1246:5:1247:13 | S | +| main.rs:1311:15:1311:18 | SelfParam | | main.rs:1299:5:1300:19 | S | +| main.rs:1311:15:1311:18 | SelfParam | T | main.rs:1310:10:1310:10 | T | +| main.rs:1311:26:1313:9 | { ... } | | main.rs:1310:10:1310:10 | T | +| main.rs:1312:13:1312:16 | self | | main.rs:1299:5:1300:19 | S | +| main.rs:1312:13:1312:16 | self | T | main.rs:1310:10:1310:10 | T | +| main.rs:1312:13:1312:18 | self.0 | | main.rs:1310:10:1310:10 | T | +| main.rs:1315:15:1315:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1315:15:1315:19 | SelfParam | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1315:15:1315:19 | SelfParam | TRef.T | main.rs:1310:10:1310:10 | T | +| main.rs:1315:28:1317:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1315:28:1317:9 | { ... } | TRef | main.rs:1310:10:1310:10 | T | +| main.rs:1316:13:1316:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1316:13:1316:19 | &... | TRef | main.rs:1310:10:1310:10 | T | +| main.rs:1316:14:1316:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1316:14:1316:17 | self | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1316:14:1316:17 | self | TRef.T | main.rs:1310:10:1310:10 | T | +| main.rs:1316:14:1316:19 | self.0 | | main.rs:1310:10:1310:10 | T | +| main.rs:1319:15:1319:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1319:15:1319:25 | SelfParam | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1319:15:1319:25 | SelfParam | TRef.T | main.rs:1310:10:1310:10 | T | +| main.rs:1319:34:1321:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1319:34:1321:9 | { ... } | TRef | main.rs:1310:10:1310:10 | T | +| main.rs:1320:13:1320:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1320:13:1320:19 | &... | TRef | main.rs:1310:10:1310:10 | T | +| main.rs:1320:14:1320:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1320:14:1320:17 | self | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1320:14:1320:17 | self | TRef.T | main.rs:1310:10:1310:10 | T | +| main.rs:1320:14:1320:19 | self.0 | | main.rs:1310:10:1310:10 | T | +| main.rs:1325:29:1325:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1325:29:1325:33 | SelfParam | TRef | main.rs:1324:5:1327:5 | Self [trait ATrait] | +| main.rs:1326:33:1326:36 | SelfParam | | main.rs:1324:5:1327:5 | Self [trait ATrait] | +| main.rs:1332:29:1332:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1332:29:1332:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1332:29:1332:33 | SelfParam | TRef.TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1332:43:1334:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1333:13:1333:22 | (...) | | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1333:13:1333:24 | ... .a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1333:14:1333:21 | * ... | | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1333:15:1333:21 | (...) | | {EXTERNAL LOCATION} | & | +| main.rs:1333:15:1333:21 | (...) | TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1333:16:1333:20 | * ... | | {EXTERNAL LOCATION} | & | +| main.rs:1333:16:1333:20 | * ... | TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1333:17:1333:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1333:17:1333:20 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1333:17:1333:20 | self | TRef.TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1337:33:1337:36 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1337:33:1337:36 | SelfParam | TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1337:46:1339:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1338:13:1338:19 | (...) | | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1338:13:1338:21 | ... .a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1338:14:1338:18 | * ... | | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1338:15:1338:18 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1338:15:1338:18 | self | TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1342:16:1392:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1343:13:1343:14 | x1 | | main.rs:1299:5:1300:19 | S | +| main.rs:1343:13:1343:14 | x1 | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1343:18:1343:22 | S(...) | | main.rs:1299:5:1300:19 | S | +| main.rs:1343:18:1343:22 | S(...) | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1343:20:1343:21 | S2 | | main.rs:1302:5:1303:14 | S2 | +| main.rs:1344:9:1344:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1344:18:1344:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1344:18:1344:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1344:18:1344:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1344:26:1344:27 | x7 | | main.rs:1268:5:1269:19 | S | -| main.rs:1344:26:1344:27 | x7 | T | {EXTERNAL LOCATION} | & | -| main.rs:1344:26:1344:27 | x7 | T.TRef | main.rs:1271:5:1272:14 | S2 | -| main.rs:1346:13:1346:14 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1346:26:1346:32 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1346:26:1346:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1346:26:1346:44 | "Hello".to_string() | | {EXTERNAL LOCATION} | String | -| main.rs:1350:13:1350:13 | u | | {EXTERNAL LOCATION} | Result | -| main.rs:1350:13:1350:13 | u | T | {EXTERNAL LOCATION} | u32 | -| main.rs:1350:17:1350:18 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1350:17:1350:33 | x9.parse() | | {EXTERNAL LOCATION} | Result | -| main.rs:1350:17:1350:33 | x9.parse() | T | {EXTERNAL LOCATION} | u32 | -| main.rs:1352:13:1352:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1352:13:1352:20 | my_thing | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1352:24:1352:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1352:24:1352:39 | &... | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1352:25:1352:39 | MyInt {...} | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1352:36:1352:37 | 37 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1354:13:1354:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1354:17:1354:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1354:17:1354:24 | my_thing | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1354:17:1354:43 | my_thing.method_on_borrow() | | {EXTERNAL LOCATION} | i64 | -| main.rs:1355:9:1355:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1355:18:1355:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1355:18:1355:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1355:18:1355:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1355:18:1355:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1355:18:1355:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1355:26:1355:26 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1358:13:1358:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1358:13:1358:20 | my_thing | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1358:24:1358:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1358:24:1358:39 | &... | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1358:25:1358:39 | MyInt {...} | | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1358:36:1358:37 | 38 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1359:13:1359:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1359:17:1359:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1359:17:1359:24 | my_thing | TRef | main.rs:1274:5:1277:5 | MyInt | -| main.rs:1359:17:1359:47 | my_thing.method_not_on_borrow() | | {EXTERNAL LOCATION} | i64 | -| main.rs:1360:9:1360:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1360:18:1360:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1360:18:1360:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1360:18:1360:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1360:18:1360:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1360:18:1360:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1360:26:1360:26 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1367:16:1367:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1367:16:1367:20 | SelfParam | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1370:16:1370:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1370:16:1370:20 | SelfParam | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1370:32:1372:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1370:32:1372:9 | { ... } | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1371:13:1371:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1371:13:1371:16 | self | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1371:13:1371:22 | self.foo() | | {EXTERNAL LOCATION} | & | -| main.rs:1371:13:1371:22 | self.foo() | TRef | main.rs:1365:5:1373:5 | Self [trait MyTrait] | -| main.rs:1379:16:1379:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1379:16:1379:20 | SelfParam | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1379:36:1381:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1379:36:1381:9 | { ... } | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1380:13:1380:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1380:13:1380:16 | self | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1384:16:1387:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1385:13:1385:13 | x | | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1385:17:1385:24 | MyStruct | | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1386:9:1386:9 | x | | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1386:9:1386:15 | x.bar() | | {EXTERNAL LOCATION} | & | -| main.rs:1386:9:1386:15 | x.bar() | TRef | main.rs:1375:5:1375:20 | MyStruct | -| main.rs:1396:16:1396:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1396:16:1396:20 | SelfParam | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1396:16:1396:20 | SelfParam | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1396:32:1398:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1396:32:1398:9 | { ... } | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1396:32:1398:9 | { ... } | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1397:13:1397:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1397:13:1397:16 | self | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1397:13:1397:16 | self | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1400:16:1400:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1400:16:1400:20 | SelfParam | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1400:16:1400:20 | SelfParam | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1400:23:1400:23 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1400:23:1400:23 | x | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1400:23:1400:23 | x | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1400:42:1402:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1400:42:1402:9 | { ... } | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1400:42:1402:9 | { ... } | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1401:13:1401:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1401:13:1401:16 | self | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1401:13:1401:16 | self | TRef.T | main.rs:1395:10:1395:10 | T | -| main.rs:1405:16:1411:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1406:13:1406:13 | x | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1406:13:1406:13 | x | T | main.rs:1391:5:1391:13 | S | -| main.rs:1406:17:1406:27 | MyStruct(...) | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1406:17:1406:27 | MyStruct(...) | T | main.rs:1391:5:1391:13 | S | -| main.rs:1406:26:1406:26 | S | | main.rs:1391:5:1391:13 | S | -| main.rs:1407:9:1407:9 | x | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1407:9:1407:9 | x | T | main.rs:1391:5:1391:13 | S | -| main.rs:1407:9:1407:15 | x.foo() | | {EXTERNAL LOCATION} | & | -| main.rs:1407:9:1407:15 | x.foo() | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1407:9:1407:15 | x.foo() | TRef.T | main.rs:1391:5:1391:13 | S | -| main.rs:1408:13:1408:13 | x | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1408:13:1408:13 | x | T | main.rs:1391:5:1391:13 | S | -| main.rs:1408:17:1408:27 | MyStruct(...) | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1408:17:1408:27 | MyStruct(...) | T | main.rs:1391:5:1391:13 | S | -| main.rs:1408:26:1408:26 | S | | main.rs:1391:5:1391:13 | S | -| main.rs:1410:9:1410:9 | x | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1410:9:1410:9 | x | T | main.rs:1391:5:1391:13 | S | -| main.rs:1410:9:1410:18 | x.bar(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1410:9:1410:18 | x.bar(...) | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1410:9:1410:18 | x.bar(...) | TRef.T | main.rs:1391:5:1391:13 | S | -| main.rs:1410:15:1410:17 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1410:15:1410:17 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1410:15:1410:17 | &... | TRef.TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1410:15:1410:17 | &... | TRef.TRef.T | main.rs:1391:5:1391:13 | S | -| main.rs:1410:16:1410:17 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1410:16:1410:17 | &x | TRef | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1410:16:1410:17 | &x | TRef.T | main.rs:1391:5:1391:13 | S | -| main.rs:1410:17:1410:17 | x | | main.rs:1393:5:1393:26 | MyStruct | -| main.rs:1410:17:1410:17 | x | T | main.rs:1391:5:1391:13 | S | -| main.rs:1421:17:1421:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1421:17:1421:25 | SelfParam | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1421:28:1423:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1422:13:1422:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1422:13:1422:16 | self | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1422:13:1422:21 | self.bool | | {EXTERNAL LOCATION} | bool | -| main.rs:1422:13:1422:34 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:1422:25:1422:34 | ! ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1422:26:1422:29 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1422:26:1422:29 | self | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1422:26:1422:34 | self.bool | | {EXTERNAL LOCATION} | bool | -| main.rs:1429:15:1429:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1429:15:1429:19 | SelfParam | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1429:31:1431:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1429:31:1431:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1430:13:1430:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1430:13:1430:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1430:13:1430:19 | &... | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1430:13:1430:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1430:13:1430:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1430:13:1430:19 | &... | TRef.TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1430:14:1430:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1430:14:1430:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1430:14:1430:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1430:14:1430:19 | &... | TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1430:15:1430:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1430:15:1430:19 | &self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1430:15:1430:19 | &self | TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1430:16:1430:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1430:16:1430:19 | self | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1433:15:1433:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1433:15:1433:25 | SelfParam | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1433:37:1435:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1433:37:1435:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1434:13:1434:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1434:13:1434:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1434:13:1434:19 | &... | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1434:13:1434:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1434:13:1434:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1434:13:1434:19 | &... | TRef.TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1434:14:1434:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1434:14:1434:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1434:14:1434:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1434:14:1434:19 | &... | TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1434:15:1434:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1434:15:1434:19 | &self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1434:15:1434:19 | &self | TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1434:16:1434:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1434:16:1434:19 | self | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1437:15:1437:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1437:15:1437:15 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1437:34:1439:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1437:34:1439:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1438:13:1438:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1438:13:1438:13 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1441:15:1441:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1441:15:1441:15 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1441:34:1443:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1441:34:1443:9 | { ... } | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1442:13:1442:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1442:13:1442:16 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1442:13:1442:16 | &... | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1442:13:1442:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1442:13:1442:16 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1442:13:1442:16 | &... | TRef.TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1442:14:1442:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1442:14:1442:16 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1442:14:1442:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1442:14:1442:16 | &... | TRef.TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1442:15:1442:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1442:15:1442:16 | &x | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1442:15:1442:16 | &x | TRef.TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1442:16:1442:16 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1442:16:1442:16 | x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1446:16:1459:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1447:13:1447:13 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1447:17:1447:20 | S {...} | | main.rs:1426:5:1426:13 | S | -| main.rs:1448:9:1448:9 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1448:9:1448:14 | x.f1() | | {EXTERNAL LOCATION} | & | -| main.rs:1448:9:1448:14 | x.f1() | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1449:9:1449:9 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1449:9:1449:14 | x.f2() | | {EXTERNAL LOCATION} | & | -| main.rs:1449:9:1449:14 | x.f2() | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1450:9:1450:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1450:9:1450:17 | ...::f3(...) | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1450:15:1450:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1450:15:1450:16 | &x | TRef | main.rs:1426:5:1426:13 | S | -| main.rs:1450:16:1450:16 | x | | main.rs:1426:5:1426:13 | S | -| main.rs:1452:13:1452:13 | n | | {EXTERNAL LOCATION} | bool | -| main.rs:1452:17:1452:24 | * ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1452:18:1452:24 | * ... | | {EXTERNAL LOCATION} | & | -| main.rs:1452:18:1452:24 | * ... | TRef | {EXTERNAL LOCATION} | bool | -| main.rs:1452:19:1452:24 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1452:19:1452:24 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1452:19:1452:24 | &... | TRef.TRef | {EXTERNAL LOCATION} | bool | -| main.rs:1452:20:1452:24 | &true | | {EXTERNAL LOCATION} | & | -| main.rs:1452:20:1452:24 | &true | TRef | {EXTERNAL LOCATION} | bool | -| main.rs:1452:21:1452:24 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1456:17:1456:20 | flag | | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1456:24:1456:41 | ...::default(...) | | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1457:9:1457:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1457:22:1457:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | -| main.rs:1457:22:1457:30 | &mut flag | TRefMut | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1457:27:1457:30 | flag | | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1458:9:1458:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1458:18:1458:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1458:18:1458:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1458:18:1458:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1458:18:1458:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1458:18:1458:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1458:26:1458:29 | flag | | main.rs:1415:5:1418:5 | MyFlag | -| main.rs:1473:43:1476:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1473:43:1476:5 | { ... } | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1473:43:1476:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1474:13:1474:13 | x | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1474:17:1474:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1474:17:1474:30 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1474:17:1474:31 | TryExpr | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1474:28:1474:29 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1475:9:1475:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1475:9:1475:22 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1475:9:1475:22 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1475:20:1475:21 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1480:46:1484:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1480:46:1484:5 | { ... } | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1480:46:1484:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1481:13:1481:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1481:13:1481:13 | x | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1481:17:1481:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1481:17:1481:30 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1481:28:1481:29 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1482:13:1482:13 | y | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1482:17:1482:17 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1482:17:1482:17 | x | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1482:17:1482:18 | TryExpr | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1483:9:1483:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1483:9:1483:22 | ...::Ok(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1483:9:1483:22 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1483:20:1483:21 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1488:40:1493:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1488:40:1493:5 | { ... } | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1488:40:1493:5 | { ... } | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1489:13:1489:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1489:13:1489:13 | x | T | {EXTERNAL LOCATION} | Result | -| main.rs:1489:13:1489:13 | x | T.T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1489:17:1489:42 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1489:17:1489:42 | ...::Ok(...) | T | {EXTERNAL LOCATION} | Result | -| main.rs:1489:17:1489:42 | ...::Ok(...) | T.T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1489:28:1489:41 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1489:28:1489:41 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1489:39:1489:40 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1491:17:1491:17 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1491:17:1491:17 | x | T | {EXTERNAL LOCATION} | Result | -| main.rs:1491:17:1491:17 | x | T.T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1491:17:1491:18 | TryExpr | | {EXTERNAL LOCATION} | Result | -| main.rs:1491:17:1491:18 | TryExpr | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1491:17:1491:29 | ... .map(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1491:24:1491:28 | \|...\| s | | {EXTERNAL LOCATION} | dyn Fn | -| main.rs:1491:24:1491:28 | \|...\| s | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| main.rs:1492:9:1492:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1492:9:1492:22 | ...::Ok(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1492:9:1492:22 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1492:20:1492:21 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1497:30:1497:34 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1497:30:1497:34 | input | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1497:30:1497:34 | input | T | main.rs:1497:20:1497:27 | T | -| main.rs:1497:69:1504:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1497:69:1504:5 | { ... } | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1497:69:1504:5 | { ... } | T | main.rs:1497:20:1497:27 | T | -| main.rs:1498:13:1498:17 | value | | main.rs:1497:20:1497:27 | T | -| main.rs:1498:21:1498:25 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1498:21:1498:25 | input | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1498:21:1498:25 | input | T | main.rs:1497:20:1497:27 | T | -| main.rs:1498:21:1498:26 | TryExpr | | main.rs:1497:20:1497:27 | T | -| main.rs:1499:22:1499:38 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1499:22:1499:38 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1499:22:1499:38 | ...::Ok(...) | T | main.rs:1497:20:1497:27 | T | -| main.rs:1499:22:1502:10 | ... .and_then(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1499:22:1502:10 | ... .and_then(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1499:33:1499:37 | value | | main.rs:1497:20:1497:27 | T | -| main.rs:1499:49:1502:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | -| main.rs:1499:49:1502:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| main.rs:1499:49:1502:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | Result | -| main.rs:1499:49:1502:9 | \|...\| ... | dyn(Output).E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1499:53:1502:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1499:53:1502:9 | { ... } | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1500:13:1500:31 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1500:22:1500:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1500:22:1500:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1500:22:1500:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1500:22:1500:30 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1500:22:1500:30 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1501:13:1501:34 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1501:13:1501:34 | ...::Ok::<...>(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1503:9:1503:23 | ...::Err(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1503:9:1503:23 | ...::Err(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1503:9:1503:23 | ...::Err(...) | T | main.rs:1497:20:1497:27 | T | -| main.rs:1503:21:1503:22 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1507:16:1523:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1508:9:1510:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1508:16:1508:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1508:16:1508:33 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:16:1508:33 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:27:1508:32 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:37:1508:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1508:37:1508:52 | try_same_error(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:37:1508:52 | try_same_error(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1508:54:1510:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1509:13:1509:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1509:22:1509:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1509:22:1509:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1509:22:1509:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1509:22:1509:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1509:22:1509:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1509:30:1509:35 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1512:9:1514:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1512:16:1512:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1512:16:1512:33 | ...::Ok(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1512:16:1512:33 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1512:27:1512:32 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1512:37:1512:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1512:37:1512:55 | try_convert_error(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1512:37:1512:55 | try_convert_error(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1512:57:1514:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1513:13:1513:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1513:22:1513:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1513:22:1513:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1513:22:1513:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1513:22:1513:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1513:22:1513:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1513:30:1513:35 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1516:9:1518:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1516:16:1516:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1516:16:1516:33 | ...::Ok(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1516:16:1516:33 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1516:27:1516:32 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1516:37:1516:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1516:37:1516:49 | try_chained(...) | E | main.rs:1468:5:1469:14 | S2 | -| main.rs:1516:37:1516:49 | try_chained(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1516:51:1518:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1517:13:1517:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1517:22:1517:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1517:22:1517:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1517:22:1517:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1517:22:1517:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1517:22:1517:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1517:30:1517:35 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:9:1522:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1520:16:1520:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1520:16:1520:33 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:16:1520:33 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:27:1520:32 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:37:1520:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1520:37:1520:63 | try_complex(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:37:1520:63 | try_complex(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:49:1520:62 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1520:49:1520:62 | ...::Ok(...) | E | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:49:1520:62 | ...::Ok(...) | T | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:60:1520:61 | S1 | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1520:65:1522:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1521:13:1521:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1521:22:1521:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1521:22:1521:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1521:22:1521:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1521:22:1521:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1521:22:1521:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1521:30:1521:35 | result | | main.rs:1465:5:1466:14 | S1 | -| main.rs:1527:16:1618:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1528:13:1528:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1528:22:1528:22 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1529:13:1529:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:1529:17:1529:17 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1530:13:1530:13 | z | | {EXTERNAL LOCATION} | i32 | -| main.rs:1530:17:1530:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1530:17:1530:21 | ... + ... | | {EXTERNAL LOCATION} | i32 | -| main.rs:1530:21:1530:21 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:1531:13:1531:13 | z | | {EXTERNAL LOCATION} | i32 | -| main.rs:1531:17:1531:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1531:17:1531:23 | x.abs() | | {EXTERNAL LOCATION} | i32 | -| main.rs:1532:13:1532:13 | c | | {EXTERNAL LOCATION} | char | -| main.rs:1532:17:1532:19 | 'c' | | {EXTERNAL LOCATION} | char | -| main.rs:1533:13:1533:17 | hello | | {EXTERNAL LOCATION} | & | -| main.rs:1533:13:1533:17 | hello | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1533:21:1533:27 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1533:21:1533:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1534:13:1534:13 | f | | {EXTERNAL LOCATION} | f64 | -| main.rs:1534:17:1534:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | -| main.rs:1535:13:1535:13 | t | | {EXTERNAL LOCATION} | bool | -| main.rs:1535:17:1535:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1536:13:1536:13 | f | | {EXTERNAL LOCATION} | bool | -| main.rs:1536:17:1536:21 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1539:26:1539:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1539:26:1539:30 | SelfParam | TRef | main.rs:1538:9:1542:9 | Self [trait MyTrait] | -| main.rs:1545:26:1545:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1545:26:1545:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1545:26:1545:30 | SelfParam | TRef.TArray | main.rs:1544:14:1544:23 | T | -| main.rs:1545:39:1547:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1545:39:1547:13 | { ... } | TRef | main.rs:1544:14:1544:23 | T | -| main.rs:1546:17:1546:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1546:17:1546:20 | self | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1546:17:1546:20 | self | TRef.TArray | main.rs:1544:14:1544:23 | T | -| main.rs:1546:17:1546:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | -| main.rs:1546:17:1546:36 | ... .unwrap() | TRef | main.rs:1544:14:1544:23 | T | -| main.rs:1546:26:1546:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1549:31:1551:13 | { ... } | | main.rs:1544:14:1544:23 | T | -| main.rs:1550:17:1550:28 | ...::default(...) | | main.rs:1544:14:1544:23 | T | -| main.rs:1554:13:1554:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1554:13:1554:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1554:17:1554:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1554:17:1554:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1554:17:1554:37 | ... .my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1554:17:1554:37 | ... .my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1554:18:1554:18 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1554:21:1554:21 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1554:24:1554:24 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:13:1555:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1555:13:1555:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:17:1555:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1555:17:1555:47 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:22:1555:22 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:37:1555:46 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1555:37:1555:46 | &... | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1555:37:1555:46 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:38:1555:46 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1555:38:1555:46 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:39:1555:39 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:42:1555:42 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1555:45:1555:45 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1556:13:1556:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1556:17:1556:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1556:24:1556:24 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1559:26:1559:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1559:26:1559:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1559:26:1559:30 | SelfParam | TRef.TSlice | main.rs:1558:14:1558:23 | T | -| main.rs:1559:39:1561:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1559:39:1561:13 | { ... } | TRef | main.rs:1558:14:1558:23 | T | -| main.rs:1560:17:1560:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1560:17:1560:20 | self | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1560:17:1560:20 | self | TRef.TSlice | main.rs:1558:14:1558:23 | T | -| main.rs:1560:17:1560:27 | self.get(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:1560:17:1560:27 | self.get(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:1560:17:1560:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | -| main.rs:1560:17:1560:36 | ... .unwrap() | TRef | main.rs:1558:14:1558:23 | T | -| main.rs:1560:26:1560:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1563:31:1565:13 | { ... } | | main.rs:1558:14:1558:23 | T | -| main.rs:1564:17:1564:28 | ...::default(...) | | main.rs:1558:14:1558:23 | T | -| main.rs:1568:13:1568:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1568:13:1568:13 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1568:13:1568:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:25:1568:34 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1568:25:1568:34 | &... | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1568:25:1568:34 | &... | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1568:25:1568:34 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:25:1568:34 | &... | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:26:1568:34 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1568:26:1568:34 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:27:1568:27 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:30:1568:30 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1568:33:1568:33 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1569:13:1569:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1569:13:1569:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1569:17:1569:17 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1569:17:1569:17 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1569:17:1569:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1569:17:1569:29 | s.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1569:17:1569:29 | s.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1570:13:1570:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1570:13:1570:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1570:17:1570:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1570:17:1570:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1570:34:1570:34 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1570:34:1570:34 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1570:34:1570:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1571:13:1571:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1571:17:1571:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:26:1574:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1574:26:1574:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1574:26:1574:30 | SelfParam | TRef.T0 | main.rs:1573:14:1573:23 | T | -| main.rs:1574:26:1574:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1574:39:1576:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1574:39:1576:13 | { ... } | TRef | main.rs:1573:14:1573:23 | T | -| main.rs:1575:17:1575:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1575:17:1575:23 | &... | TRef | main.rs:1573:14:1573:23 | T | -| main.rs:1575:18:1575:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1575:18:1575:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1575:18:1575:21 | self | TRef.T0 | main.rs:1573:14:1573:23 | T | -| main.rs:1575:18:1575:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1575:18:1575:23 | self.0 | | main.rs:1573:14:1573:23 | T | -| main.rs:1578:31:1580:13 | { ... } | | main.rs:1573:14:1573:23 | T | -| main.rs:1579:17:1579:28 | ...::default(...) | | main.rs:1573:14:1573:23 | T | -| main.rs:1583:13:1583:13 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1583:13:1583:13 | p | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1583:13:1583:13 | p | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1583:17:1583:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1583:17:1583:23 | TupleExpr | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1583:17:1583:23 | TupleExpr | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1583:18:1583:19 | 42 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1583:22:1583:22 | 7 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1584:13:1584:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1584:13:1584:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1584:17:1584:17 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1584:17:1584:17 | p | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1584:17:1584:17 | p | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1584:17:1584:29 | p.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1584:17:1584:29 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1344:18:1344:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1344:18:1344:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1344:18:1344:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1344:26:1344:27 | x1 | | main.rs:1299:5:1300:19 | S | +| main.rs:1344:26:1344:27 | x1 | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1344:26:1344:32 | x1.m1() | | main.rs:1302:5:1303:14 | S2 | +| main.rs:1346:13:1346:14 | x2 | | main.rs:1299:5:1300:19 | S | +| main.rs:1346:13:1346:14 | x2 | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1346:18:1346:22 | S(...) | | main.rs:1299:5:1300:19 | S | +| main.rs:1346:18:1346:22 | S(...) | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1346:20:1346:21 | S2 | | main.rs:1302:5:1303:14 | S2 | +| main.rs:1348:9:1348:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1348:18:1348:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1348:18:1348:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1348:18:1348:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1348:18:1348:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1348:18:1348:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1348:26:1348:27 | x2 | | main.rs:1299:5:1300:19 | S | +| main.rs:1348:26:1348:27 | x2 | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1348:26:1348:32 | x2.m2() | | {EXTERNAL LOCATION} | & | +| main.rs:1348:26:1348:32 | x2.m2() | TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1349:9:1349:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1349:18:1349:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1349:18:1349:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1349:18:1349:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1349:18:1349:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1349:18:1349:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1349:26:1349:27 | x2 | | main.rs:1299:5:1300:19 | S | +| main.rs:1349:26:1349:27 | x2 | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1349:26:1349:32 | x2.m3() | | {EXTERNAL LOCATION} | & | +| main.rs:1349:26:1349:32 | x2.m3() | TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1351:13:1351:14 | x3 | | main.rs:1299:5:1300:19 | S | +| main.rs:1351:13:1351:14 | x3 | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1351:18:1351:22 | S(...) | | main.rs:1299:5:1300:19 | S | +| main.rs:1351:18:1351:22 | S(...) | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1351:20:1351:21 | S2 | | main.rs:1302:5:1303:14 | S2 | +| main.rs:1353:9:1353:42 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1353:18:1353:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1353:18:1353:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1353:18:1353:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1353:18:1353:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1353:18:1353:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1353:26:1353:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1353:26:1353:41 | ...::m2(...) | TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1353:38:1353:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1353:38:1353:40 | &x3 | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1353:38:1353:40 | &x3 | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1353:39:1353:40 | x3 | | main.rs:1299:5:1300:19 | S | +| main.rs:1353:39:1353:40 | x3 | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1354:9:1354:42 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1354:18:1354:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1354:18:1354:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1354:18:1354:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1354:18:1354:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1354:18:1354:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1354:26:1354:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1354:26:1354:41 | ...::m3(...) | TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1354:38:1354:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1354:38:1354:40 | &x3 | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1354:38:1354:40 | &x3 | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1354:39:1354:40 | x3 | | main.rs:1299:5:1300:19 | S | +| main.rs:1354:39:1354:40 | x3 | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1356:13:1356:14 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1356:13:1356:14 | x4 | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1356:13:1356:14 | x4 | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1356:18:1356:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1356:18:1356:23 | &... | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1356:18:1356:23 | &... | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1356:19:1356:23 | S(...) | | main.rs:1299:5:1300:19 | S | +| main.rs:1356:19:1356:23 | S(...) | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1356:21:1356:22 | S2 | | main.rs:1302:5:1303:14 | S2 | +| main.rs:1358:9:1358:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1358:18:1358:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1358:18:1358:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1358:18:1358:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1358:18:1358:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1358:18:1358:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1358:26:1358:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1358:26:1358:27 | x4 | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1358:26:1358:27 | x4 | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1358:26:1358:32 | x4.m2() | | {EXTERNAL LOCATION} | & | +| main.rs:1358:26:1358:32 | x4.m2() | TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1359:9:1359:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1359:18:1359:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1359:18:1359:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1359:18:1359:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1359:18:1359:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1359:18:1359:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1359:26:1359:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1359:26:1359:27 | x4 | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1359:26:1359:27 | x4 | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1359:26:1359:32 | x4.m3() | | {EXTERNAL LOCATION} | & | +| main.rs:1359:26:1359:32 | x4.m3() | TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1361:13:1361:14 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1361:13:1361:14 | x5 | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1361:13:1361:14 | x5 | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1361:18:1361:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1361:18:1361:23 | &... | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1361:18:1361:23 | &... | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1361:19:1361:23 | S(...) | | main.rs:1299:5:1300:19 | S | +| main.rs:1361:19:1361:23 | S(...) | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1361:21:1361:22 | S2 | | main.rs:1302:5:1303:14 | S2 | +| main.rs:1363:9:1363:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1363:18:1363:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1363:18:1363:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1363:18:1363:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1363:18:1363:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1363:18:1363:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1363:26:1363:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1363:26:1363:27 | x5 | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1363:26:1363:27 | x5 | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1363:26:1363:32 | x5.m1() | | main.rs:1302:5:1303:14 | S2 | +| main.rs:1364:9:1364:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1364:18:1364:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1364:18:1364:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1364:18:1364:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1364:18:1364:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1364:18:1364:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1364:26:1364:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1364:26:1364:27 | x5 | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1364:26:1364:27 | x5 | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1364:26:1364:29 | x5.0 | | main.rs:1302:5:1303:14 | S2 | +| main.rs:1366:13:1366:14 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1366:13:1366:14 | x6 | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1366:13:1366:14 | x6 | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1366:18:1366:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1366:18:1366:23 | &... | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1366:18:1366:23 | &... | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1366:19:1366:23 | S(...) | | main.rs:1299:5:1300:19 | S | +| main.rs:1366:19:1366:23 | S(...) | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1366:21:1366:22 | S2 | | main.rs:1302:5:1303:14 | S2 | +| main.rs:1369:9:1369:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1369:18:1369:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1369:18:1369:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1369:18:1369:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1369:18:1369:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1369:18:1369:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1369:26:1369:30 | (...) | | main.rs:1299:5:1300:19 | S | +| main.rs:1369:26:1369:30 | (...) | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1369:26:1369:35 | ... .m1() | | main.rs:1302:5:1303:14 | S2 | +| main.rs:1369:27:1369:29 | * ... | | main.rs:1299:5:1300:19 | S | +| main.rs:1369:27:1369:29 | * ... | T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1369:28:1369:29 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1369:28:1369:29 | x6 | TRef | main.rs:1299:5:1300:19 | S | +| main.rs:1369:28:1369:29 | x6 | TRef.T | main.rs:1302:5:1303:14 | S2 | +| main.rs:1371:13:1371:14 | x7 | | main.rs:1299:5:1300:19 | S | +| main.rs:1371:13:1371:14 | x7 | T | {EXTERNAL LOCATION} | & | +| main.rs:1371:13:1371:14 | x7 | T.TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1371:18:1371:23 | S(...) | | main.rs:1299:5:1300:19 | S | +| main.rs:1371:18:1371:23 | S(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:1371:18:1371:23 | S(...) | T.TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1371:20:1371:22 | &S2 | | {EXTERNAL LOCATION} | & | +| main.rs:1371:20:1371:22 | &S2 | TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1371:21:1371:22 | S2 | | main.rs:1302:5:1303:14 | S2 | +| main.rs:1374:13:1374:13 | t | | {EXTERNAL LOCATION} | & | +| main.rs:1374:13:1374:13 | t | TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1374:17:1374:18 | x7 | | main.rs:1299:5:1300:19 | S | +| main.rs:1374:17:1374:18 | x7 | T | {EXTERNAL LOCATION} | & | +| main.rs:1374:17:1374:18 | x7 | T.TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1374:17:1374:23 | x7.m1() | | {EXTERNAL LOCATION} | & | +| main.rs:1374:17:1374:23 | x7.m1() | TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1375:9:1375:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1375:18:1375:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1375:18:1375:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1375:18:1375:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1375:18:1375:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1375:18:1375:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1375:26:1375:27 | x7 | | main.rs:1299:5:1300:19 | S | +| main.rs:1375:26:1375:27 | x7 | T | {EXTERNAL LOCATION} | & | +| main.rs:1375:26:1375:27 | x7 | T.TRef | main.rs:1302:5:1303:14 | S2 | +| main.rs:1377:13:1377:14 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1377:26:1377:32 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1377:26:1377:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1377:26:1377:44 | "Hello".to_string() | | {EXTERNAL LOCATION} | String | +| main.rs:1381:13:1381:13 | u | | {EXTERNAL LOCATION} | Result | +| main.rs:1381:13:1381:13 | u | T | {EXTERNAL LOCATION} | u32 | +| main.rs:1381:17:1381:18 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1381:17:1381:33 | x9.parse() | | {EXTERNAL LOCATION} | Result | +| main.rs:1381:17:1381:33 | x9.parse() | T | {EXTERNAL LOCATION} | u32 | +| main.rs:1383:13:1383:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1383:13:1383:20 | my_thing | TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1383:24:1383:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1383:24:1383:39 | &... | TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1383:25:1383:39 | MyInt {...} | | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1383:36:1383:37 | 37 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1385:13:1385:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1385:17:1385:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1385:17:1385:24 | my_thing | TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1385:17:1385:43 | my_thing.method_on_borrow() | | {EXTERNAL LOCATION} | i64 | +| main.rs:1386:9:1386:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1386:18:1386:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1386:18:1386:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1386:18:1386:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1386:18:1386:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1386:18:1386:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1386:26:1386:26 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1389:13:1389:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1389:13:1389:20 | my_thing | TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1389:24:1389:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1389:24:1389:39 | &... | TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1389:25:1389:39 | MyInt {...} | | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1389:36:1389:37 | 38 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1390:13:1390:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1390:17:1390:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1390:17:1390:24 | my_thing | TRef | main.rs:1305:5:1308:5 | MyInt | +| main.rs:1390:17:1390:47 | my_thing.method_not_on_borrow() | | {EXTERNAL LOCATION} | i64 | +| main.rs:1391:9:1391:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1391:18:1391:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1391:18:1391:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1391:18:1391:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1391:18:1391:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1391:18:1391:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1391:26:1391:26 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1398:16:1398:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1398:16:1398:20 | SelfParam | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | +| main.rs:1401:16:1401:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1401:16:1401:20 | SelfParam | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | +| main.rs:1401:32:1403:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1401:32:1403:9 | { ... } | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | +| main.rs:1402:13:1402:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1402:13:1402:16 | self | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | +| main.rs:1402:13:1402:22 | self.foo() | | {EXTERNAL LOCATION} | & | +| main.rs:1402:13:1402:22 | self.foo() | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | +| main.rs:1410:16:1410:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1410:16:1410:20 | SelfParam | TRef | main.rs:1406:5:1406:20 | MyStruct | +| main.rs:1410:36:1412:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1410:36:1412:9 | { ... } | TRef | main.rs:1406:5:1406:20 | MyStruct | +| main.rs:1411:13:1411:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1411:13:1411:16 | self | TRef | main.rs:1406:5:1406:20 | MyStruct | +| main.rs:1415:16:1418:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1416:13:1416:13 | x | | main.rs:1406:5:1406:20 | MyStruct | +| main.rs:1416:17:1416:24 | MyStruct | | main.rs:1406:5:1406:20 | MyStruct | +| main.rs:1417:9:1417:9 | x | | main.rs:1406:5:1406:20 | MyStruct | +| main.rs:1417:9:1417:15 | x.bar() | | {EXTERNAL LOCATION} | & | +| main.rs:1417:9:1417:15 | x.bar() | TRef | main.rs:1406:5:1406:20 | MyStruct | +| main.rs:1427:16:1427:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1427:16:1427:20 | SelfParam | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1427:16:1427:20 | SelfParam | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1427:32:1429:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1427:32:1429:9 | { ... } | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1427:32:1429:9 | { ... } | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1428:13:1428:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1428:13:1428:16 | self | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1428:13:1428:16 | self | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1431:16:1431:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1431:16:1431:20 | SelfParam | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1431:16:1431:20 | SelfParam | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1431:23:1431:23 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1431:23:1431:23 | x | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1431:23:1431:23 | x | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1431:42:1433:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1431:42:1433:9 | { ... } | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1431:42:1433:9 | { ... } | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1432:13:1432:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1432:13:1432:16 | self | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1432:13:1432:16 | self | TRef.T | main.rs:1426:10:1426:10 | T | +| main.rs:1436:16:1442:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1437:13:1437:13 | x | | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1437:13:1437:13 | x | T | main.rs:1422:5:1422:13 | S | +| main.rs:1437:17:1437:27 | MyStruct(...) | | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1437:17:1437:27 | MyStruct(...) | T | main.rs:1422:5:1422:13 | S | +| main.rs:1437:26:1437:26 | S | | main.rs:1422:5:1422:13 | S | +| main.rs:1438:9:1438:9 | x | | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1438:9:1438:9 | x | T | main.rs:1422:5:1422:13 | S | +| main.rs:1438:9:1438:15 | x.foo() | | {EXTERNAL LOCATION} | & | +| main.rs:1438:9:1438:15 | x.foo() | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1438:9:1438:15 | x.foo() | TRef.T | main.rs:1422:5:1422:13 | S | +| main.rs:1439:13:1439:13 | x | | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1439:13:1439:13 | x | T | main.rs:1422:5:1422:13 | S | +| main.rs:1439:17:1439:27 | MyStruct(...) | | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1439:17:1439:27 | MyStruct(...) | T | main.rs:1422:5:1422:13 | S | +| main.rs:1439:26:1439:26 | S | | main.rs:1422:5:1422:13 | S | +| main.rs:1441:9:1441:9 | x | | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1441:9:1441:9 | x | T | main.rs:1422:5:1422:13 | S | +| main.rs:1441:9:1441:18 | x.bar(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1441:9:1441:18 | x.bar(...) | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1441:9:1441:18 | x.bar(...) | TRef.T | main.rs:1422:5:1422:13 | S | +| main.rs:1441:15:1441:17 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1441:15:1441:17 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1441:15:1441:17 | &... | TRef.TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1441:15:1441:17 | &... | TRef.TRef.T | main.rs:1422:5:1422:13 | S | +| main.rs:1441:16:1441:17 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1441:16:1441:17 | &x | TRef | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1441:16:1441:17 | &x | TRef.T | main.rs:1422:5:1422:13 | S | +| main.rs:1441:17:1441:17 | x | | main.rs:1424:5:1424:26 | MyStruct | +| main.rs:1441:17:1441:17 | x | T | main.rs:1422:5:1422:13 | S | +| main.rs:1452:17:1452:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1452:17:1452:25 | SelfParam | TRefMut | main.rs:1446:5:1449:5 | MyFlag | +| main.rs:1452:28:1454:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1453:13:1453:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1453:13:1453:16 | self | TRefMut | main.rs:1446:5:1449:5 | MyFlag | +| main.rs:1453:13:1453:21 | self.bool | | {EXTERNAL LOCATION} | bool | +| main.rs:1453:13:1453:34 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:1453:25:1453:34 | ! ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1453:26:1453:29 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1453:26:1453:29 | self | TRefMut | main.rs:1446:5:1449:5 | MyFlag | +| main.rs:1453:26:1453:34 | self.bool | | {EXTERNAL LOCATION} | bool | +| main.rs:1460:15:1460:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1460:15:1460:19 | SelfParam | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1460:31:1462:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1460:31:1462:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1461:13:1461:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1461:13:1461:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1461:13:1461:19 | &... | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1461:13:1461:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1461:13:1461:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1461:13:1461:19 | &... | TRef.TRef.TRef.TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1461:14:1461:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1461:14:1461:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1461:14:1461:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1461:14:1461:19 | &... | TRef.TRef.TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1461:15:1461:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1461:15:1461:19 | &self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1461:15:1461:19 | &self | TRef.TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1461:16:1461:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1461:16:1461:19 | self | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1464:15:1464:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1464:15:1464:25 | SelfParam | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1464:37:1466:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1464:37:1466:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1465:13:1465:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1465:13:1465:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1465:13:1465:19 | &... | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1465:13:1465:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1465:13:1465:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1465:13:1465:19 | &... | TRef.TRef.TRef.TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1465:14:1465:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1465:14:1465:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1465:14:1465:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1465:14:1465:19 | &... | TRef.TRef.TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1465:15:1465:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1465:15:1465:19 | &self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1465:15:1465:19 | &self | TRef.TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1465:16:1465:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1465:16:1465:19 | self | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1468:15:1468:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1468:15:1468:15 | x | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1468:34:1470:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1468:34:1470:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1469:13:1469:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1469:13:1469:13 | x | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1472:15:1472:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1472:15:1472:15 | x | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1472:34:1474:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1472:34:1474:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1473:13:1473:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1473:13:1473:16 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1473:13:1473:16 | &... | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1473:13:1473:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1473:13:1473:16 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1473:13:1473:16 | &... | TRef.TRef.TRef.TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1473:14:1473:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1473:14:1473:16 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1473:14:1473:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1473:14:1473:16 | &... | TRef.TRef.TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1473:15:1473:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1473:15:1473:16 | &x | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1473:15:1473:16 | &x | TRef.TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1473:16:1473:16 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1473:16:1473:16 | x | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1477:16:1490:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1478:13:1478:13 | x | | main.rs:1457:5:1457:13 | S | +| main.rs:1478:17:1478:20 | S {...} | | main.rs:1457:5:1457:13 | S | +| main.rs:1479:9:1479:9 | x | | main.rs:1457:5:1457:13 | S | +| main.rs:1479:9:1479:14 | x.f1() | | {EXTERNAL LOCATION} | & | +| main.rs:1479:9:1479:14 | x.f1() | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1480:9:1480:9 | x | | main.rs:1457:5:1457:13 | S | +| main.rs:1480:9:1480:14 | x.f2() | | {EXTERNAL LOCATION} | & | +| main.rs:1480:9:1480:14 | x.f2() | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1481:9:1481:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1481:9:1481:17 | ...::f3(...) | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1481:15:1481:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1481:15:1481:16 | &x | TRef | main.rs:1457:5:1457:13 | S | +| main.rs:1481:16:1481:16 | x | | main.rs:1457:5:1457:13 | S | +| main.rs:1483:13:1483:13 | n | | {EXTERNAL LOCATION} | bool | +| main.rs:1483:17:1483:24 | * ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1483:18:1483:24 | * ... | | {EXTERNAL LOCATION} | & | +| main.rs:1483:18:1483:24 | * ... | TRef | {EXTERNAL LOCATION} | bool | +| main.rs:1483:19:1483:24 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1483:19:1483:24 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1483:19:1483:24 | &... | TRef.TRef | {EXTERNAL LOCATION} | bool | +| main.rs:1483:20:1483:24 | &true | | {EXTERNAL LOCATION} | & | +| main.rs:1483:20:1483:24 | &true | TRef | {EXTERNAL LOCATION} | bool | +| main.rs:1483:21:1483:24 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1487:17:1487:20 | flag | | main.rs:1446:5:1449:5 | MyFlag | +| main.rs:1487:24:1487:41 | ...::default(...) | | main.rs:1446:5:1449:5 | MyFlag | +| main.rs:1488:9:1488:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1488:22:1488:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | +| main.rs:1488:22:1488:30 | &mut flag | TRefMut | main.rs:1446:5:1449:5 | MyFlag | +| main.rs:1488:27:1488:30 | flag | | main.rs:1446:5:1449:5 | MyFlag | +| main.rs:1489:9:1489:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1489:18:1489:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1489:18:1489:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1489:18:1489:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1489:18:1489:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1489:18:1489:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1489:26:1489:29 | flag | | main.rs:1446:5:1449:5 | MyFlag | +| main.rs:1504:43:1507:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1504:43:1507:5 | { ... } | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1504:43:1507:5 | { ... } | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1505:13:1505:13 | x | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1505:17:1505:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1505:17:1505:30 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1505:17:1505:31 | TryExpr | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1505:28:1505:29 | S1 | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1506:9:1506:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1506:9:1506:22 | ...::Ok(...) | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1506:9:1506:22 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1506:20:1506:21 | S1 | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1511:46:1515:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1511:46:1515:5 | { ... } | E | main.rs:1499:5:1500:14 | S2 | +| main.rs:1511:46:1515:5 | { ... } | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1512:13:1512:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1512:13:1512:13 | x | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1512:17:1512:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1512:17:1512:30 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1512:28:1512:29 | S1 | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1513:13:1513:13 | y | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1513:17:1513:17 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1513:17:1513:17 | x | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1513:17:1513:18 | TryExpr | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1514:9:1514:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1514:9:1514:22 | ...::Ok(...) | E | main.rs:1499:5:1500:14 | S2 | +| main.rs:1514:9:1514:22 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1514:20:1514:21 | S1 | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1519:40:1524:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1519:40:1524:5 | { ... } | E | main.rs:1499:5:1500:14 | S2 | +| main.rs:1519:40:1524:5 | { ... } | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1520:13:1520:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1520:13:1520:13 | x | T | {EXTERNAL LOCATION} | Result | +| main.rs:1520:13:1520:13 | x | T.T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1520:17:1520:42 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1520:17:1520:42 | ...::Ok(...) | T | {EXTERNAL LOCATION} | Result | +| main.rs:1520:17:1520:42 | ...::Ok(...) | T.T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1520:28:1520:41 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1520:28:1520:41 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1520:39:1520:40 | S1 | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1522:17:1522:17 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1522:17:1522:17 | x | T | {EXTERNAL LOCATION} | Result | +| main.rs:1522:17:1522:17 | x | T.T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1522:17:1522:18 | TryExpr | | {EXTERNAL LOCATION} | Result | +| main.rs:1522:17:1522:18 | TryExpr | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1522:17:1522:29 | ... .map(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1522:24:1522:28 | \|...\| s | | {EXTERNAL LOCATION} | dyn Fn | +| main.rs:1522:24:1522:28 | \|...\| s | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:1523:9:1523:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1523:9:1523:22 | ...::Ok(...) | E | main.rs:1499:5:1500:14 | S2 | +| main.rs:1523:9:1523:22 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1523:20:1523:21 | S1 | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1528:30:1528:34 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1528:30:1528:34 | input | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1528:30:1528:34 | input | T | main.rs:1528:20:1528:27 | T | +| main.rs:1528:69:1535:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1528:69:1535:5 | { ... } | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1528:69:1535:5 | { ... } | T | main.rs:1528:20:1528:27 | T | +| main.rs:1529:13:1529:17 | value | | main.rs:1528:20:1528:27 | T | +| main.rs:1529:21:1529:25 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1529:21:1529:25 | input | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1529:21:1529:25 | input | T | main.rs:1528:20:1528:27 | T | +| main.rs:1529:21:1529:26 | TryExpr | | main.rs:1528:20:1528:27 | T | +| main.rs:1530:22:1530:38 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1530:22:1530:38 | ...::Ok(...) | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1530:22:1530:38 | ...::Ok(...) | T | main.rs:1528:20:1528:27 | T | +| main.rs:1530:22:1533:10 | ... .and_then(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1530:22:1533:10 | ... .and_then(...) | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1530:33:1530:37 | value | | main.rs:1528:20:1528:27 | T | +| main.rs:1530:49:1533:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| main.rs:1530:49:1533:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:1530:49:1533:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | Result | +| main.rs:1530:49:1533:9 | \|...\| ... | dyn(Output).E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1530:53:1533:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1530:53:1533:9 | { ... } | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1531:13:1531:31 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1531:22:1531:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1531:22:1531:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1531:22:1531:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1531:22:1531:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1531:22:1531:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1532:13:1532:34 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1532:13:1532:34 | ...::Ok::<...>(...) | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1534:9:1534:23 | ...::Err(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1534:9:1534:23 | ...::Err(...) | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1534:9:1534:23 | ...::Err(...) | T | main.rs:1528:20:1528:27 | T | +| main.rs:1534:21:1534:22 | S1 | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1538:16:1554:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1539:9:1541:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1539:16:1539:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1539:16:1539:33 | ...::Ok(...) | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1539:16:1539:33 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1539:27:1539:32 | result | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1539:37:1539:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1539:37:1539:52 | try_same_error(...) | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1539:37:1539:52 | try_same_error(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1539:54:1541:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1540:13:1540:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1540:22:1540:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1540:22:1540:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1540:22:1540:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1540:22:1540:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1540:22:1540:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1540:30:1540:35 | result | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1543:9:1545:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1543:16:1543:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1543:16:1543:33 | ...::Ok(...) | E | main.rs:1499:5:1500:14 | S2 | +| main.rs:1543:16:1543:33 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1543:27:1543:32 | result | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1543:37:1543:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1543:37:1543:55 | try_convert_error(...) | E | main.rs:1499:5:1500:14 | S2 | +| main.rs:1543:37:1543:55 | try_convert_error(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1543:57:1545:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1544:13:1544:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1544:22:1544:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1544:22:1544:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1544:22:1544:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1544:22:1544:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1544:22:1544:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1544:30:1544:35 | result | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1547:9:1549:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1547:16:1547:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1547:16:1547:33 | ...::Ok(...) | E | main.rs:1499:5:1500:14 | S2 | +| main.rs:1547:16:1547:33 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1547:27:1547:32 | result | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1547:37:1547:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1547:37:1547:49 | try_chained(...) | E | main.rs:1499:5:1500:14 | S2 | +| main.rs:1547:37:1547:49 | try_chained(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1547:51:1549:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1548:13:1548:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1548:22:1548:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1548:22:1548:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1548:22:1548:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1548:22:1548:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1548:22:1548:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1548:30:1548:35 | result | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1551:9:1553:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1551:16:1551:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1551:16:1551:33 | ...::Ok(...) | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1551:16:1551:33 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1551:27:1551:32 | result | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1551:37:1551:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1551:37:1551:63 | try_complex(...) | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1551:37:1551:63 | try_complex(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1551:49:1551:62 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1551:49:1551:62 | ...::Ok(...) | E | main.rs:1496:5:1497:14 | S1 | +| main.rs:1551:49:1551:62 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | +| main.rs:1551:60:1551:61 | S1 | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1551:65:1553:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1552:13:1552:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1552:22:1552:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1552:22:1552:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1552:22:1552:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1552:22:1552:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1552:22:1552:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1552:30:1552:35 | result | | main.rs:1496:5:1497:14 | S1 | +| main.rs:1558:16:1649:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1559:13:1559:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1559:22:1559:22 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1560:13:1560:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:1560:17:1560:17 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1561:13:1561:13 | z | | {EXTERNAL LOCATION} | i32 | +| main.rs:1561:17:1561:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1561:17:1561:21 | ... + ... | | {EXTERNAL LOCATION} | i32 | +| main.rs:1561:21:1561:21 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:1562:13:1562:13 | z | | {EXTERNAL LOCATION} | i32 | +| main.rs:1562:17:1562:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1562:17:1562:23 | x.abs() | | {EXTERNAL LOCATION} | i32 | +| main.rs:1563:13:1563:13 | c | | {EXTERNAL LOCATION} | char | +| main.rs:1563:17:1563:19 | 'c' | | {EXTERNAL LOCATION} | char | +| main.rs:1564:13:1564:17 | hello | | {EXTERNAL LOCATION} | & | +| main.rs:1564:13:1564:17 | hello | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1564:21:1564:27 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1564:21:1564:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1565:13:1565:13 | f | | {EXTERNAL LOCATION} | f64 | +| main.rs:1565:17:1565:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | +| main.rs:1566:13:1566:13 | t | | {EXTERNAL LOCATION} | bool | +| main.rs:1566:17:1566:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1567:13:1567:13 | f | | {EXTERNAL LOCATION} | bool | +| main.rs:1567:17:1567:21 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1570:26:1570:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1570:26:1570:30 | SelfParam | TRef | main.rs:1569:9:1573:9 | Self [trait MyTrait] | +| main.rs:1576:26:1576:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1576:26:1576:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1576:26:1576:30 | SelfParam | TRef.TArray | main.rs:1575:14:1575:23 | T | +| main.rs:1576:39:1578:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1576:39:1578:13 | { ... } | TRef | main.rs:1575:14:1575:23 | T | +| main.rs:1577:17:1577:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1577:17:1577:20 | self | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1577:17:1577:20 | self | TRef.TArray | main.rs:1575:14:1575:23 | T | +| main.rs:1577:17:1577:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | +| main.rs:1577:17:1577:36 | ... .unwrap() | TRef | main.rs:1575:14:1575:23 | T | +| main.rs:1577:26:1577:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1580:31:1582:13 | { ... } | | main.rs:1575:14:1575:23 | T | +| main.rs:1581:17:1581:28 | ...::default(...) | | main.rs:1575:14:1575:23 | T | | main.rs:1585:13:1585:13 | x | | {EXTERNAL LOCATION} | & | | main.rs:1585:13:1585:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:17:1585:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1585:17:1585:39 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:37:1585:38 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1585:37:1585:38 | &p | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1585:37:1585:38 | &p | TRef.T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:37:1585:38 | &p | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:38:1585:38 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1585:38:1585:38 | p | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:38:1585:38 | p | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:13:1586:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:17:1586:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1589:26:1589:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1589:26:1589:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1589:26:1589:30 | SelfParam | TRef.TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1589:39:1591:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1589:39:1591:13 | { ... } | TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1590:17:1590:21 | * ... | | {EXTERNAL LOCATION} | & | -| main.rs:1590:17:1590:21 | * ... | TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1590:18:1590:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1590:18:1590:21 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1590:18:1590:21 | self | TRef.TRef | main.rs:1588:14:1588:23 | T | -| main.rs:1593:31:1595:13 | { ... } | | main.rs:1588:14:1588:23 | T | -| main.rs:1594:17:1594:28 | ...::default(...) | | main.rs:1588:14:1588:23 | T | -| main.rs:1598:13:1598:13 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1598:13:1598:13 | r | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1598:17:1598:19 | &42 | | {EXTERNAL LOCATION} | & | -| main.rs:1598:17:1598:19 | &42 | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1598:18:1598:19 | 42 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:13:1599:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1599:13:1599:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:17:1599:17 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1599:17:1599:17 | r | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:17:1599:29 | r.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1599:17:1599:29 | r.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1585:17:1585:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1585:17:1585:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1585:17:1585:37 | ... .my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1585:17:1585:37 | ... .my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1585:18:1585:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1585:21:1585:21 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1585:24:1585:24 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1586:13:1586:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1586:13:1586:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1586:17:1586:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1586:17:1586:47 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1586:22:1586:22 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1586:37:1586:46 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1586:37:1586:46 | &... | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1586:37:1586:46 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1586:38:1586:46 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1586:38:1586:46 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1586:39:1586:39 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1586:42:1586:42 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1586:45:1586:45 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1587:13:1587:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1587:17:1587:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1587:24:1587:24 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1590:26:1590:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1590:26:1590:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1590:26:1590:30 | SelfParam | TRef.TSlice | main.rs:1589:14:1589:23 | T | +| main.rs:1590:39:1592:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1590:39:1592:13 | { ... } | TRef | main.rs:1589:14:1589:23 | T | +| main.rs:1591:17:1591:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1591:17:1591:20 | self | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1591:17:1591:20 | self | TRef.TSlice | main.rs:1589:14:1589:23 | T | +| main.rs:1591:17:1591:27 | self.get(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1591:17:1591:27 | self.get(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:1591:17:1591:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | +| main.rs:1591:17:1591:36 | ... .unwrap() | TRef | main.rs:1589:14:1589:23 | T | +| main.rs:1591:26:1591:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1594:31:1596:13 | { ... } | | main.rs:1589:14:1589:23 | T | +| main.rs:1595:17:1595:28 | ...::default(...) | | main.rs:1589:14:1589:23 | T | +| main.rs:1599:13:1599:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1599:13:1599:13 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1599:13:1599:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1599:25:1599:34 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1599:25:1599:34 | &... | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1599:25:1599:34 | &... | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1599:25:1599:34 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1599:25:1599:34 | &... | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1599:26:1599:34 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1599:26:1599:34 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1599:27:1599:27 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1599:30:1599:30 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1599:33:1599:33 | 3 | | {EXTERNAL LOCATION} | i32 | | main.rs:1600:13:1600:13 | x | | {EXTERNAL LOCATION} | & | | main.rs:1600:13:1600:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1600:17:1600:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1600:17:1600:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1600:33:1600:34 | &r | | {EXTERNAL LOCATION} | & | -| main.rs:1600:33:1600:34 | &r | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1600:33:1600:34 | &r | TRef.TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1600:34:1600:34 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1600:34:1600:34 | r | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1601:13:1601:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1601:17:1601:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1604:26:1604:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1604:26:1604:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1604:26:1604:30 | SelfParam | TRef.TPtrMut | main.rs:1603:14:1603:23 | T | -| main.rs:1604:39:1606:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1604:39:1606:13 | { ... } | TRef | main.rs:1603:14:1603:23 | T | -| main.rs:1605:17:1605:34 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1605:17:1605:34 | { ... } | TRef | main.rs:1603:14:1603:23 | T | -| main.rs:1605:26:1605:32 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1605:26:1605:32 | &... | TRef | main.rs:1603:14:1603:23 | T | -| main.rs:1605:27:1605:32 | * ... | | main.rs:1603:14:1603:23 | T | -| main.rs:1605:28:1605:32 | * ... | | {EXTERNAL LOCATION} | *mut | -| main.rs:1605:28:1605:32 | * ... | TPtrMut | main.rs:1603:14:1603:23 | T | -| main.rs:1605:29:1605:32 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1605:29:1605:32 | self | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1605:29:1605:32 | self | TRef.TPtrMut | main.rs:1603:14:1603:23 | T | -| main.rs:1608:31:1610:13 | { ... } | | main.rs:1603:14:1603:23 | T | -| main.rs:1609:17:1609:28 | ...::default(...) | | main.rs:1603:14:1603:23 | T | -| main.rs:1613:17:1613:17 | v | | {EXTERNAL LOCATION} | i32 | -| main.rs:1613:21:1613:22 | 42 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:13:1614:13 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1614:13:1614:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:27:1614:32 | &mut v | | {EXTERNAL LOCATION} | &mut | -| main.rs:1614:27:1614:32 | &mut v | TRefMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:32:1614:32 | v | | {EXTERNAL LOCATION} | i32 | +| main.rs:1600:17:1600:17 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1600:17:1600:17 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1600:17:1600:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1600:17:1600:29 | s.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1600:17:1600:29 | s.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1601:13:1601:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1601:13:1601:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1601:17:1601:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1601:17:1601:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1601:34:1601:34 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1601:34:1601:34 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1601:34:1601:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1602:13:1602:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1602:17:1602:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1605:26:1605:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1605:26:1605:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1605:26:1605:30 | SelfParam | TRef.T0 | main.rs:1604:14:1604:23 | T | +| main.rs:1605:26:1605:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1605:39:1607:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1605:39:1607:13 | { ... } | TRef | main.rs:1604:14:1604:23 | T | +| main.rs:1606:17:1606:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1606:17:1606:23 | &... | TRef | main.rs:1604:14:1604:23 | T | +| main.rs:1606:18:1606:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1606:18:1606:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1606:18:1606:21 | self | TRef.T0 | main.rs:1604:14:1604:23 | T | +| main.rs:1606:18:1606:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1606:18:1606:23 | self.0 | | main.rs:1604:14:1604:23 | T | +| main.rs:1609:31:1611:13 | { ... } | | main.rs:1604:14:1604:23 | T | +| main.rs:1610:17:1610:28 | ...::default(...) | | main.rs:1604:14:1604:23 | T | +| main.rs:1614:13:1614:13 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1614:13:1614:13 | p | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1614:13:1614:13 | p | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1614:17:1614:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1614:17:1614:23 | TupleExpr | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1614:17:1614:23 | TupleExpr | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1614:18:1614:19 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1614:22:1614:22 | 7 | | {EXTERNAL LOCATION} | i32 | | main.rs:1615:13:1615:13 | x | | {EXTERNAL LOCATION} | & | | main.rs:1615:13:1615:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1615:17:1615:40 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1615:17:1615:40 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1615:26:1615:26 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1615:26:1615:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1615:26:1615:38 | p.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1615:26:1615:38 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1615:17:1615:17 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1615:17:1615:17 | p | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1615:17:1615:17 | p | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1615:17:1615:29 | p.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1615:17:1615:29 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | | main.rs:1616:13:1616:13 | x | | {EXTERNAL LOCATION} | & | | main.rs:1616:13:1616:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:17:1616:50 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1616:17:1616:50 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:26:1616:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1616:26:1616:48 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:46:1616:47 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1616:46:1616:47 | &p | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1616:46:1616:47 | &p | TRef.TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:47:1616:47 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1616:47:1616:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1616:17:1616:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1616:17:1616:39 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1616:37:1616:38 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1616:37:1616:38 | &p | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1616:37:1616:38 | &p | TRef.T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1616:37:1616:38 | &p | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1616:38:1616:38 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1616:38:1616:38 | p | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1616:38:1616:38 | p | T1 | {EXTERNAL LOCATION} | i32 | | main.rs:1617:13:1617:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1617:17:1617:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1623:16:1635:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1624:13:1624:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:1624:17:1624:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1624:17:1624:29 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1624:25:1624:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:13:1625:13 | y | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:17:1625:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:17:1625:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1625:25:1625:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1627:17:1627:17 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1628:13:1628:16 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:1628:20:1628:21 | 34 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1628:20:1628:27 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1628:26:1628:27 | 33 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1629:9:1633:9 | if cond {...} else {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1629:12:1629:15 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:1629:17:1631:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1630:17:1630:17 | z | | {EXTERNAL LOCATION} | () | -| main.rs:1630:21:1630:27 | (...) | | {EXTERNAL LOCATION} | () | -| main.rs:1630:22:1630:22 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1630:22:1630:26 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:1630:26:1630:26 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1631:16:1633:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1632:13:1632:13 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1632:13:1632:17 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:1632:17:1632:17 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1634:9:1634:9 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1648:30:1650:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1649:13:1649:31 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1649:23:1649:23 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1649:29:1649:29 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1656:16:1656:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1656:22:1656:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1656:41:1661:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1657:13:1660:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1658:20:1658:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1658:20:1658:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1658:20:1658:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1658:29:1658:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1658:29:1658:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1659:20:1659:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1659:20:1659:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1659:20:1659:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1659:29:1659:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1659:29:1659:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1666:23:1666:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1666:23:1666:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1666:34:1666:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1666:45:1669:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1667:13:1667:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1667:13:1667:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1667:13:1667:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1667:13:1667:27 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1667:23:1667:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1667:23:1667:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1668:13:1668:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1668:13:1668:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1668:13:1668:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1668:13:1668:27 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1668:23:1668:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1668:23:1668:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1674:16:1674:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1674:22:1674:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1674:41:1679:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1675:13:1678:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1676:20:1676:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1676:20:1676:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1676:20:1676:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1676:29:1676:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1676:29:1676:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1677:20:1677:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1677:20:1677:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1677:20:1677:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1677:29:1677:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1677:29:1677:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1684:23:1684:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1684:23:1684:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1684:34:1684:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1684:45:1687:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1685:13:1685:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1685:13:1685:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1685:13:1685:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1685:13:1685:27 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1685:23:1685:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1685:23:1685:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1686:13:1686:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1686:13:1686:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1686:13:1686:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1686:13:1686:27 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1686:23:1686:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1686:23:1686:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1692:16:1692:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1692:22:1692:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1692:41:1697:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1693:13:1696:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1694:20:1694:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1694:20:1694:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1694:20:1694:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1694:29:1694:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1694:29:1694:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1695:20:1695:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1695:20:1695:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1695:20:1695:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1695:29:1695:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1695:29:1695:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1701:23:1701:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1701:23:1701:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1701:34:1701:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1701:45:1704:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1702:13:1702:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1702:13:1702:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1702:13:1702:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1702:13:1702:27 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1702:23:1702:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1702:23:1702:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1703:13:1703:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1703:13:1703:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1703:13:1703:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1703:13:1703:27 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1703:23:1703:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1703:23:1703:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1709:16:1709:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1709:22:1709:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1709:41:1714:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1710:13:1713:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1711:20:1711:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1711:20:1711:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1711:20:1711:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1711:29:1711:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1711:29:1711:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1712:20:1712:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1712:20:1712:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1712:20:1712:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1712:29:1712:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1712:29:1712:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1718:23:1718:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1718:23:1718:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1718:34:1718:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1718:45:1721:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1719:13:1719:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1719:13:1719:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1719:13:1719:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1719:13:1719:27 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1719:23:1719:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1719:23:1719:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1720:13:1720:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1720:13:1720:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1720:13:1720:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1720:13:1720:27 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1720:23:1720:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1720:23:1720:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1726:16:1726:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1726:22:1726:24 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1726:41:1731:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1727:13:1730:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1728:20:1728:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1728:20:1728:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1728:20:1728:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1728:29:1728:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1728:29:1728:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1729:20:1729:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1729:20:1729:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1729:20:1729:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1729:29:1729:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1729:29:1729:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1735:23:1735:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1735:23:1735:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1735:34:1735:36 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1735:45:1738:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1736:13:1736:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1736:13:1736:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1736:13:1736:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1736:13:1736:27 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1736:23:1736:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1736:23:1736:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1737:13:1737:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1737:13:1737:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1737:13:1737:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1737:13:1737:27 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1737:23:1737:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1737:23:1737:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1743:19:1743:22 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1743:25:1743:27 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1743:44:1748:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1744:13:1747:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1745:20:1745:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1745:20:1745:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1745:20:1745:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1745:29:1745:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1745:29:1745:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1746:20:1746:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1746:20:1746:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1746:20:1746:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1746:29:1746:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1746:29:1746:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1752:26:1752:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1752:26:1752:34 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1752:37:1752:39 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1752:48:1755:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1753:13:1753:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1753:13:1753:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1753:13:1753:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1753:13:1753:27 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1753:23:1753:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1753:23:1753:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1754:13:1754:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1754:13:1754:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1754:13:1754:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1754:13:1754:27 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1754:23:1754:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1754:23:1754:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1760:18:1760:21 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1760:24:1760:26 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1760:43:1765:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1761:13:1764:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1762:20:1762:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1762:20:1762:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1762:20:1762:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1762:29:1762:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1762:29:1762:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1763:20:1763:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1763:20:1763:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1763:20:1763:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1763:29:1763:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1763:29:1763:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1769:25:1769:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1769:25:1769:33 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1769:36:1769:38 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1769:47:1772:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1770:13:1770:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1770:13:1770:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1770:13:1770:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1770:13:1770:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1770:23:1770:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1770:23:1770:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1771:13:1771:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1771:13:1771:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1771:13:1771:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1771:13:1771:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1771:23:1771:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1771:23:1771:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1777:19:1777:22 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1777:25:1777:27 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1777:44:1782:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1778:13:1781:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1779:20:1779:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1779:20:1779:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1779:20:1779:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1779:29:1779:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1779:29:1779:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1780:20:1780:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1780:20:1780:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1780:20:1780:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1780:29:1780:31 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1780:29:1780:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1786:26:1786:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1786:26:1786:34 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1786:37:1786:39 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1786:48:1789:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1787:13:1787:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1787:13:1787:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1787:13:1787:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1787:13:1787:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1787:23:1787:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1787:23:1787:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1788:13:1788:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1788:13:1788:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1788:13:1788:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1788:13:1788:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1788:23:1788:25 | rhs | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1788:23:1788:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1794:16:1794:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1794:22:1794:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1794:40:1799:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1795:13:1798:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1796:20:1796:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1796:20:1796:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1796:20:1796:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1796:30:1796:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1797:20:1797:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1797:20:1797:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1797:20:1797:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1797:30:1797:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1803:23:1803:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1803:23:1803:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1803:34:1803:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1803:44:1806:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1804:13:1804:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1804:13:1804:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1804:13:1804:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1804:13:1804:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1804:24:1804:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1805:13:1805:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1805:13:1805:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1805:13:1805:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1805:13:1805:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1805:24:1805:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1811:16:1811:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1811:22:1811:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1811:40:1816:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1812:13:1815:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1813:20:1813:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1813:20:1813:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1813:20:1813:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1813:30:1813:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1814:20:1814:23 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1814:20:1814:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1814:20:1814:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1814:30:1814:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1820:23:1820:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1820:23:1820:31 | SelfParam | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1820:34:1820:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1820:44:1823:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1821:13:1821:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1821:13:1821:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1821:13:1821:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1821:13:1821:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1821:24:1821:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1822:13:1822:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1822:13:1822:16 | self | TRefMut | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1822:13:1822:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1822:13:1822:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1822:24:1822:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1828:16:1828:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1828:30:1833:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1829:13:1832:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1830:20:1830:26 | - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1830:21:1830:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1830:21:1830:26 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1831:20:1831:26 | - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1831:21:1831:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1831:21:1831:26 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1838:16:1838:19 | SelfParam | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1838:30:1843:9 | { ... } | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1839:13:1842:13 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1840:20:1840:26 | ! ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1840:21:1840:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1840:21:1840:26 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1841:20:1841:26 | ! ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1841:21:1841:24 | self | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1841:21:1841:26 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1847:15:1847:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1847:15:1847:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1847:22:1847:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1847:22:1847:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1847:44:1849:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:13:1848:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1848:13:1848:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:13:1848:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1848:13:1848:29 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:13:1848:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:23:1848:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1848:23:1848:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:23:1848:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1848:34:1848:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1848:34:1848:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:34:1848:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1848:34:1848:50 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1848:44:1848:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1848:44:1848:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1848:44:1848:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1851:15:1851:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1851:15:1851:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1851:22:1851:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1851:22:1851:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1851:44:1853:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:13:1852:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1852:13:1852:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | +| main.rs:1617:17:1617:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1620:26:1620:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1620:26:1620:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1620:26:1620:30 | SelfParam | TRef.TRef | main.rs:1619:14:1619:23 | T | +| main.rs:1620:39:1622:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1620:39:1622:13 | { ... } | TRef | main.rs:1619:14:1619:23 | T | +| main.rs:1621:17:1621:21 | * ... | | {EXTERNAL LOCATION} | & | +| main.rs:1621:17:1621:21 | * ... | TRef | main.rs:1619:14:1619:23 | T | +| main.rs:1621:18:1621:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1621:18:1621:21 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1621:18:1621:21 | self | TRef.TRef | main.rs:1619:14:1619:23 | T | +| main.rs:1624:31:1626:13 | { ... } | | main.rs:1619:14:1619:23 | T | +| main.rs:1625:17:1625:28 | ...::default(...) | | main.rs:1619:14:1619:23 | T | +| main.rs:1629:13:1629:13 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1629:13:1629:13 | r | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1629:17:1629:19 | &42 | | {EXTERNAL LOCATION} | & | +| main.rs:1629:17:1629:19 | &42 | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1629:18:1629:19 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1630:13:1630:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1630:13:1630:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1630:17:1630:17 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1630:17:1630:17 | r | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1630:17:1630:29 | r.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1630:17:1630:29 | r.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1631:13:1631:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1631:13:1631:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1631:17:1631:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1631:17:1631:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1631:33:1631:34 | &r | | {EXTERNAL LOCATION} | & | +| main.rs:1631:33:1631:34 | &r | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1631:33:1631:34 | &r | TRef.TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1631:34:1631:34 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1631:34:1631:34 | r | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1632:13:1632:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1632:17:1632:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1635:26:1635:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1635:26:1635:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1635:26:1635:30 | SelfParam | TRef.TPtrMut | main.rs:1634:14:1634:23 | T | +| main.rs:1635:39:1637:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1635:39:1637:13 | { ... } | TRef | main.rs:1634:14:1634:23 | T | +| main.rs:1636:17:1636:34 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1636:17:1636:34 | { ... } | TRef | main.rs:1634:14:1634:23 | T | +| main.rs:1636:26:1636:32 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1636:26:1636:32 | &... | TRef | main.rs:1634:14:1634:23 | T | +| main.rs:1636:27:1636:32 | * ... | | main.rs:1634:14:1634:23 | T | +| main.rs:1636:28:1636:32 | * ... | | {EXTERNAL LOCATION} | *mut | +| main.rs:1636:28:1636:32 | * ... | TPtrMut | main.rs:1634:14:1634:23 | T | +| main.rs:1636:29:1636:32 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1636:29:1636:32 | self | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1636:29:1636:32 | self | TRef.TPtrMut | main.rs:1634:14:1634:23 | T | +| main.rs:1639:31:1641:13 | { ... } | | main.rs:1634:14:1634:23 | T | +| main.rs:1640:17:1640:28 | ...::default(...) | | main.rs:1634:14:1634:23 | T | +| main.rs:1644:17:1644:17 | v | | {EXTERNAL LOCATION} | i32 | +| main.rs:1644:21:1644:22 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1645:13:1645:13 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1645:13:1645:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1645:27:1645:32 | &mut v | | {EXTERNAL LOCATION} | &mut | +| main.rs:1645:27:1645:32 | &mut v | TRefMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1645:32:1645:32 | v | | {EXTERNAL LOCATION} | i32 | +| main.rs:1646:13:1646:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1646:13:1646:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1646:17:1646:40 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1646:17:1646:40 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1646:26:1646:26 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1646:26:1646:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1646:26:1646:38 | p.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1646:26:1646:38 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1647:13:1647:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1647:13:1647:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1647:17:1647:50 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1647:17:1647:50 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1647:26:1647:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1647:26:1647:48 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1647:46:1647:47 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1647:46:1647:47 | &p | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1647:46:1647:47 | &p | TRef.TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1647:47:1647:47 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1647:47:1647:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1648:13:1648:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1648:17:1648:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1654:16:1666:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1655:13:1655:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:1655:17:1655:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1655:17:1655:29 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1655:25:1655:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1656:13:1656:13 | y | | {EXTERNAL LOCATION} | bool | +| main.rs:1656:17:1656:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1656:17:1656:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1656:25:1656:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1658:17:1658:17 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1659:13:1659:16 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:1659:20:1659:21 | 34 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1659:20:1659:27 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1659:26:1659:27 | 33 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1660:9:1664:9 | if cond {...} else {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1660:12:1660:15 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:1660:17:1662:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1661:17:1661:17 | z | | {EXTERNAL LOCATION} | () | +| main.rs:1661:21:1661:27 | (...) | | {EXTERNAL LOCATION} | () | +| main.rs:1661:22:1661:22 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1661:22:1661:26 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:1661:26:1661:26 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1662:16:1664:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1663:13:1663:13 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1663:13:1663:17 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:1663:17:1663:17 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1665:9:1665:9 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1679:30:1681:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1680:13:1680:31 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1680:23:1680:23 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1680:29:1680:29 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1687:16:1687:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1687:22:1687:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1687:41:1692:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1688:13:1691:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1689:20:1689:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1689:20:1689:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1689:20:1689:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1689:29:1689:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1689:29:1689:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1690:20:1690:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1690:20:1690:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1690:20:1690:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1690:29:1690:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1690:29:1690:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1697:23:1697:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1697:23:1697:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1697:34:1697:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1697:45:1700:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1698:13:1698:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1698:13:1698:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1698:13:1698:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1698:13:1698:27 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1698:23:1698:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1698:23:1698:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1699:13:1699:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1699:13:1699:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1699:13:1699:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1699:13:1699:27 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1699:23:1699:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1699:23:1699:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1705:16:1705:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1705:22:1705:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1705:41:1710:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1706:13:1709:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1707:20:1707:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1707:20:1707:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1707:20:1707:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1707:29:1707:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1707:29:1707:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1708:20:1708:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1708:20:1708:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1708:20:1708:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1708:29:1708:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1708:29:1708:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1715:23:1715:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1715:23:1715:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1715:34:1715:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1715:45:1718:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1716:13:1716:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1716:13:1716:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1716:13:1716:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1716:13:1716:27 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1716:23:1716:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1716:23:1716:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1717:13:1717:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1717:13:1717:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1717:13:1717:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1717:13:1717:27 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1717:23:1717:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1717:23:1717:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1723:16:1723:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1723:22:1723:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1723:41:1728:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1724:13:1727:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1725:20:1725:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1725:20:1725:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1725:20:1725:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1725:29:1725:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1725:29:1725:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1726:20:1726:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1726:20:1726:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1726:20:1726:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1726:29:1726:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1726:29:1726:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1732:23:1732:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1732:23:1732:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1732:34:1732:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1732:45:1735:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1733:13:1733:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1733:13:1733:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1733:13:1733:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1733:13:1733:27 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1733:23:1733:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1733:23:1733:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1734:13:1734:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1734:13:1734:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1734:13:1734:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1734:13:1734:27 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1734:23:1734:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1734:23:1734:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1740:16:1740:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1740:22:1740:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1740:41:1745:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1741:13:1744:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1742:20:1742:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1742:20:1742:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1742:20:1742:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1742:29:1742:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1742:29:1742:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1743:20:1743:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1743:20:1743:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1743:20:1743:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1743:29:1743:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1743:29:1743:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:23:1749:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1749:23:1749:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1749:34:1749:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1749:45:1752:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1750:13:1750:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1750:13:1750:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1750:13:1750:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:13:1750:27 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1750:23:1750:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1750:23:1750:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:13:1751:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1751:13:1751:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1751:13:1751:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:13:1751:27 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1751:23:1751:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1751:23:1751:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1757:16:1757:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1757:22:1757:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1757:41:1762:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1758:13:1761:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1759:20:1759:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1759:20:1759:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1759:20:1759:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1759:29:1759:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1759:29:1759:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1760:20:1760:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1760:20:1760:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1760:20:1760:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1760:29:1760:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1760:29:1760:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1766:23:1766:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1766:23:1766:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1766:34:1766:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1766:45:1769:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1767:13:1767:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1767:13:1767:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1767:13:1767:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1767:13:1767:27 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1767:23:1767:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1767:23:1767:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1768:13:1768:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1768:13:1768:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1768:13:1768:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1768:13:1768:27 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1768:23:1768:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1768:23:1768:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:19:1774:22 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1774:25:1774:27 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1774:44:1779:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1775:13:1778:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1776:20:1776:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1776:20:1776:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1776:20:1776:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1776:29:1776:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1776:29:1776:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1777:20:1777:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1777:20:1777:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1777:20:1777:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1777:29:1777:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1777:29:1777:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1783:26:1783:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1783:26:1783:34 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1783:37:1783:39 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1783:48:1786:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1784:13:1784:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1784:13:1784:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1784:13:1784:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1784:13:1784:27 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1784:23:1784:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1784:23:1784:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1785:13:1785:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1785:13:1785:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1785:13:1785:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1785:13:1785:27 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1785:23:1785:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1785:23:1785:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1791:18:1791:21 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1791:24:1791:26 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1791:43:1796:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1792:13:1795:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1793:20:1793:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1793:20:1793:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1793:20:1793:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1793:29:1793:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1793:29:1793:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1794:20:1794:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1794:20:1794:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1794:20:1794:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1794:29:1794:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1794:29:1794:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1800:25:1800:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1800:25:1800:33 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1800:36:1800:38 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1800:47:1803:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1801:13:1801:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1801:13:1801:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1801:13:1801:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1801:13:1801:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1801:23:1801:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1801:23:1801:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1802:13:1802:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1802:13:1802:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1802:13:1802:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1802:13:1802:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1802:23:1802:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1802:23:1802:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1808:19:1808:22 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1808:25:1808:27 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1808:44:1813:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1809:13:1812:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1810:20:1810:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1810:20:1810:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1810:20:1810:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1810:29:1810:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1810:29:1810:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1811:20:1811:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1811:20:1811:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1811:20:1811:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1811:29:1811:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1811:29:1811:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1817:26:1817:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1817:26:1817:34 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1817:37:1817:39 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1817:48:1820:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1818:13:1818:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1818:13:1818:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1818:13:1818:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1818:13:1818:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1818:23:1818:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1818:23:1818:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1819:13:1819:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1819:13:1819:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1819:13:1819:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1819:13:1819:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1819:23:1819:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1819:23:1819:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1825:16:1825:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1825:22:1825:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1825:40:1830:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1826:13:1829:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1827:20:1827:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1827:20:1827:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1827:20:1827:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1827:30:1827:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1828:20:1828:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1828:20:1828:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1828:20:1828:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1828:30:1828:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1834:23:1834:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1834:23:1834:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1834:34:1834:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1834:44:1837:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1835:13:1835:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1835:13:1835:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1835:13:1835:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1835:13:1835:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1835:24:1835:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1836:13:1836:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1836:13:1836:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1836:13:1836:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1836:13:1836:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1836:24:1836:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1842:16:1842:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1842:22:1842:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1842:40:1847:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1843:13:1846:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1844:20:1844:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1844:20:1844:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1844:20:1844:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1844:30:1844:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1845:20:1845:23 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1845:20:1845:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1845:20:1845:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1845:30:1845:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1851:23:1851:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1851:23:1851:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1851:34:1851:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1851:44:1854:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1852:13:1852:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1852:13:1852:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | | main.rs:1852:13:1852:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1852:13:1852:29 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:13:1852:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:23:1852:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1852:23:1852:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:23:1852:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1852:34:1852:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1852:34:1852:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:34:1852:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1852:34:1852:50 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1852:44:1852:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1852:44:1852:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1852:44:1852:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1857:24:1857:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1857:24:1857:28 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1857:31:1857:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1857:31:1857:35 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1857:75:1859:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:1857:75:1859:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | -| main.rs:1858:13:1858:29 | (...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:13:1858:63 | ... .partial_cmp(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:1858:13:1858:63 | ... .partial_cmp(...) | T | {EXTERNAL LOCATION} | Ordering | -| main.rs:1858:14:1858:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1858:14:1858:17 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:14:1858:19 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:14:1858:28 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:23:1858:26 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1858:23:1858:26 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:23:1858:28 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:43:1858:62 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1858:43:1858:62 | &... | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:44:1858:62 | (...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:45:1858:49 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1858:45:1858:49 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:45:1858:51 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:45:1858:61 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1858:55:1858:59 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1858:55:1858:59 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1858:55:1858:61 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1861:15:1861:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1861:15:1861:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1861:22:1861:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1861:22:1861:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1861:44:1863:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:13:1862:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1862:13:1862:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:13:1862:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1862:13:1862:28 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:13:1862:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:22:1862:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1862:22:1862:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:22:1862:28 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1862:33:1862:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1862:33:1862:36 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:33:1862:38 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1862:33:1862:48 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1862:42:1862:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1862:42:1862:46 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1862:42:1862:48 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1865:15:1865:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1865:15:1865:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1865:22:1865:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1865:22:1865:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1865:44:1867:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:13:1866:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1866:13:1866:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:13:1866:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1866:13:1866:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:13:1866:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:23:1866:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1866:23:1866:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:23:1866:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1866:34:1866:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1866:34:1866:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:34:1866:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1866:34:1866:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1866:44:1866:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1866:44:1866:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1866:44:1866:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1869:15:1869:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1869:15:1869:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1869:22:1869:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1869:22:1869:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1869:44:1871:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:13:1870:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1870:13:1870:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:13:1870:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1870:13:1870:28 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:13:1870:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:22:1870:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1870:22:1870:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:22:1870:28 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1870:33:1870:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1870:33:1870:36 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:33:1870:38 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1870:33:1870:48 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1870:42:1870:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1870:42:1870:46 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1870:42:1870:48 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1873:15:1873:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1873:15:1873:19 | SelfParam | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1873:22:1873:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1873:22:1873:26 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1873:44:1875:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:13:1874:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1874:13:1874:16 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:13:1874:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1874:13:1874:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:13:1874:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:23:1874:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1874:23:1874:27 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:23:1874:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1874:34:1874:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1874:34:1874:37 | self | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:34:1874:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1874:34:1874:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1874:44:1874:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1874:44:1874:48 | other | TRef | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1874:44:1874:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1878:26:1878:26 | a | | main.rs:1878:18:1878:23 | T | -| main.rs:1878:32:1878:32 | b | | main.rs:1878:18:1878:23 | T | -| main.rs:1879:9:1879:9 | a | | main.rs:1878:18:1878:23 | T | -| main.rs:1879:13:1879:13 | b | | main.rs:1878:18:1878:23 | T | -| main.rs:1882:16:2013:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1886:13:1886:18 | i64_eq | | {EXTERNAL LOCATION} | bool | -| main.rs:1886:22:1886:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1886:23:1886:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1886:23:1886:34 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1886:31:1886:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:13:1887:18 | i64_ne | | {EXTERNAL LOCATION} | bool | -| main.rs:1887:22:1887:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1887:23:1887:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1887:23:1887:34 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1887:31:1887:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:13:1888:18 | i64_lt | | {EXTERNAL LOCATION} | bool | -| main.rs:1888:22:1888:34 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1888:23:1888:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:23:1888:33 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1888:30:1888:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:13:1889:18 | i64_le | | {EXTERNAL LOCATION} | bool | -| main.rs:1889:22:1889:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1889:23:1889:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:23:1889:34 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1889:31:1889:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1890:13:1890:18 | i64_gt | | {EXTERNAL LOCATION} | bool | -| main.rs:1890:22:1890:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1890:23:1890:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1890:23:1890:34 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1890:30:1890:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1891:13:1891:18 | i64_ge | | {EXTERNAL LOCATION} | bool | -| main.rs:1891:22:1891:37 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1891:23:1891:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1891:23:1891:36 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1891:32:1891:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:13:1894:19 | i64_add | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:23:1894:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:23:1894:35 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1894:31:1894:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:13:1895:19 | i64_sub | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:23:1895:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:23:1895:35 | ... - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1895:31:1895:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:13:1896:19 | i64_mul | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:23:1896:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:23:1896:35 | ... * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:31:1896:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:13:1897:19 | i64_div | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:23:1897:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:23:1897:35 | ... / ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:31:1897:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:13:1898:19 | i64_rem | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:23:1898:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:23:1898:35 | ... % ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1898:31:1898:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1899:39:1899:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1899:45:1899:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1902:17:1902:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1902:34:1902:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1903:9:1903:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1903:9:1903:31 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1903:27:1903:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1905:17:1905:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1905:34:1905:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1906:9:1906:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1906:9:1906:31 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1906:27:1906:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:17:1908:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1908:34:1908:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:9:1909:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:9:1909:31 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1909:27:1909:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:17:1911:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1911:34:1911:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1912:9:1912:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1912:9:1912:31 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1912:27:1912:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1914:17:1914:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1914:34:1914:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1915:9:1915:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1915:9:1915:31 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1915:27:1915:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:13:1918:22 | i64_bitand | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:26:1918:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:26:1918:38 | ... & ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:34:1918:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:13:1919:21 | i64_bitor | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:25:1919:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:25:1919:37 | ... \| ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:33:1919:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:13:1920:22 | i64_bitxor | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:26:1920:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:26:1920:38 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:34:1920:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:13:1921:19 | i64_shl | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:23:1921:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:23:1921:36 | ... << ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:32:1921:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:13:1922:19 | i64_shr | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:23:1922:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:23:1922:36 | ... >> ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:32:1922:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:17:1925:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:37:1925:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:9:1926:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:9:1926:34 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1926:30:1926:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:17:1928:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:36:1928:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:9:1929:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:9:1929:33 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1929:29:1929:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1931:17:1931:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1931:37:1931:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1932:9:1932:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1932:9:1932:34 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1932:30:1932:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1934:17:1934:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1934:34:1934:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1935:9:1935:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1935:9:1935:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1935:28:1935:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1937:17:1937:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1937:34:1937:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1938:9:1938:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1938:9:1938:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1938:28:1938:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1940:13:1940:19 | i64_neg | | {EXTERNAL LOCATION} | i64 | -| main.rs:1940:23:1940:28 | - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1940:24:1940:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1941:13:1941:19 | i64_not | | {EXTERNAL LOCATION} | i64 | -| main.rs:1941:23:1941:28 | ! ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1941:24:1941:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1944:13:1944:14 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1944:18:1944:36 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1944:28:1944:28 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1944:34:1944:34 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1945:13:1945:14 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1945:18:1945:36 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1945:28:1945:28 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1945:34:1945:34 | 4 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1948:13:1948:19 | vec2_eq | | {EXTERNAL LOCATION} | bool | -| main.rs:1948:23:1948:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1948:23:1948:30 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1948:29:1948:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1949:13:1949:19 | vec2_ne | | {EXTERNAL LOCATION} | bool | -| main.rs:1949:23:1949:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1949:23:1949:30 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1949:29:1949:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1950:13:1950:19 | vec2_lt | | {EXTERNAL LOCATION} | bool | -| main.rs:1950:23:1950:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1950:23:1950:29 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1950:28:1950:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1951:13:1951:19 | vec2_le | | {EXTERNAL LOCATION} | bool | -| main.rs:1951:23:1951:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1951:23:1951:30 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1951:29:1951:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1952:13:1952:19 | vec2_gt | | {EXTERNAL LOCATION} | bool | -| main.rs:1952:23:1952:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1952:23:1952:29 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1952:28:1952:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1953:13:1953:19 | vec2_ge | | {EXTERNAL LOCATION} | bool | -| main.rs:1953:23:1953:24 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1953:23:1953:30 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1953:29:1953:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1956:13:1956:20 | vec2_add | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1956:24:1956:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1956:24:1956:30 | ... + ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1956:29:1956:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1957:13:1957:20 | vec2_sub | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1957:24:1957:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1957:24:1957:30 | ... - ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1957:29:1957:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1958:13:1958:20 | vec2_mul | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1958:24:1958:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1958:24:1958:30 | ... * ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1958:29:1958:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1959:13:1959:20 | vec2_div | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1959:24:1959:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1959:24:1959:30 | ... / ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1959:29:1959:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1960:13:1960:20 | vec2_rem | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1960:24:1960:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1960:24:1960:30 | ... % ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1960:29:1960:30 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1963:17:1963:31 | vec2_add_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1963:35:1963:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1964:9:1964:23 | vec2_add_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1964:9:1964:29 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1964:28:1964:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1966:17:1966:31 | vec2_sub_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1966:35:1966:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1967:9:1967:23 | vec2_sub_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1967:9:1967:29 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1967:28:1967:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1969:17:1969:31 | vec2_mul_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1969:35:1969:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1970:9:1970:23 | vec2_mul_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1970:9:1970:29 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1970:28:1970:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1972:17:1972:31 | vec2_div_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1972:35:1972:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1973:9:1973:23 | vec2_div_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1973:9:1973:29 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1973:28:1973:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1975:17:1975:31 | vec2_rem_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1975:35:1975:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1976:9:1976:23 | vec2_rem_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1976:9:1976:29 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1976:28:1976:29 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1979:13:1979:23 | vec2_bitand | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1979:27:1979:28 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1979:27:1979:33 | ... & ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1979:32:1979:33 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1980:13:1980:22 | vec2_bitor | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1980:26:1980:27 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1980:26:1980:32 | ... \| ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1980:31:1980:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1981:13:1981:23 | vec2_bitxor | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1981:27:1981:28 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1981:27:1981:33 | ... ^ ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1981:32:1981:33 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1982:13:1982:20 | vec2_shl | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1982:24:1982:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1982:24:1982:33 | ... << ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1982:30:1982:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1983:13:1983:20 | vec2_shr | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1983:24:1983:25 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1983:24:1983:33 | ... >> ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1983:30:1983:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1986:17:1986:34 | vec2_bitand_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1986:38:1986:39 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1987:9:1987:26 | vec2_bitand_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1987:9:1987:32 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1987:31:1987:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1989:17:1989:33 | vec2_bitor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1989:37:1989:38 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1990:9:1990:25 | vec2_bitor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1990:9:1990:31 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1990:30:1990:31 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1992:17:1992:34 | vec2_bitxor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1992:38:1992:39 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1993:9:1993:26 | vec2_bitxor_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1993:9:1993:32 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1993:31:1993:32 | v2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1995:17:1995:31 | vec2_shl_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1995:35:1995:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1996:9:1996:23 | vec2_shl_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1996:9:1996:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1996:29:1996:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:1998:17:1998:31 | vec2_shr_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1998:35:1998:36 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1999:9:1999:23 | vec2_shr_assign | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:1999:9:1999:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1999:29:1999:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2002:13:2002:20 | vec2_neg | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2002:24:2002:26 | - ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2002:25:2002:26 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2003:13:2003:20 | vec2_not | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2003:24:2003:26 | ! ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2003:25:2003:26 | v1 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2006:13:2006:24 | default_vec2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2006:28:2006:45 | ...::default(...) | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2007:13:2007:26 | vec2_zero_plus | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2007:30:2007:48 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2007:30:2007:63 | ... + ... | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2007:40:2007:40 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2007:46:2007:46 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2007:52:2007:63 | default_vec2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2011:13:2011:24 | default_vec2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2011:28:2011:45 | ...::default(...) | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2012:13:2012:26 | vec2_zero_plus | | {EXTERNAL LOCATION} | bool | -| main.rs:2012:30:2012:48 | Vec2 {...} | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2012:30:2012:64 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:2012:40:2012:40 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2012:46:2012:46 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2012:53:2012:64 | default_vec2 | | main.rs:1641:5:1646:5 | Vec2 | -| main.rs:2022:18:2022:21 | SelfParam | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2022:24:2022:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2025:25:2027:5 | { ... } | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2026:9:2026:10 | S1 | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2029:41:2031:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2029:41:2031:5 | { ... } | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2030:9:2030:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2030:9:2030:20 | { ... } | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2030:17:2030:18 | S1 | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2033:41:2035:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2033:41:2035:5 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2034:9:2034:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2034:9:2034:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2043:13:2043:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | -| main.rs:2043:13:2043:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | -| main.rs:2043:13:2043:42 | SelfParam | Ptr.TRefMut | main.rs:2037:5:2037:14 | S2 | -| main.rs:2044:13:2044:15 | _cx | | {EXTERNAL LOCATION} | &mut | -| main.rs:2044:13:2044:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | -| main.rs:2045:44:2047:9 | { ... } | | {EXTERNAL LOCATION} | Poll | -| main.rs:2045:44:2047:9 | { ... } | T | main.rs:2019:5:2019:14 | S1 | -| main.rs:2046:13:2046:38 | ...::Ready(...) | | {EXTERNAL LOCATION} | Poll | -| main.rs:2046:13:2046:38 | ...::Ready(...) | T | main.rs:2019:5:2019:14 | S1 | -| main.rs:2046:36:2046:37 | S1 | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2050:41:2052:5 | { ... } | | main.rs:2037:5:2037:14 | S2 | -| main.rs:2051:9:2051:10 | S2 | | main.rs:2037:5:2037:14 | S2 | -| main.rs:2054:22:2062:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2055:9:2055:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2055:9:2055:12 | f1(...) | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2055:9:2055:18 | await ... | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2055:9:2055:22 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2056:9:2056:12 | f2(...) | | main.rs:2029:16:2029:39 | impl ... | -| main.rs:2056:9:2056:18 | await ... | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2056:9:2056:22 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2057:9:2057:12 | f3(...) | | main.rs:2033:16:2033:39 | impl ... | -| main.rs:2057:9:2057:18 | await ... | | {EXTERNAL LOCATION} | () | -| main.rs:2058:9:2058:12 | f4(...) | | main.rs:2050:16:2050:39 | impl ... | -| main.rs:2058:9:2058:18 | await ... | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2058:9:2058:22 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2059:9:2059:10 | S2 | | main.rs:2037:5:2037:14 | S2 | -| main.rs:2059:9:2059:16 | await S2 | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2059:9:2059:20 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2060:13:2060:13 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2060:13:2060:13 | b | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2060:17:2060:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2060:17:2060:28 | { ... } | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2060:25:2060:26 | S1 | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2061:9:2061:9 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2061:9:2061:9 | b | dyn(Output) | main.rs:2019:5:2019:14 | S1 | -| main.rs:2061:9:2061:15 | await b | | main.rs:2019:5:2019:14 | S1 | -| main.rs:2061:9:2061:19 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2072:15:2072:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2072:15:2072:19 | SelfParam | TRef | main.rs:2071:5:2073:5 | Self [trait Trait1] | -| main.rs:2072:22:2072:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2076:15:2076:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2076:15:2076:19 | SelfParam | TRef | main.rs:2075:5:2077:5 | Self [trait Trait2] | -| main.rs:2076:22:2076:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2080:15:2080:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2080:15:2080:19 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | -| main.rs:2080:22:2080:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2084:15:2084:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2084:15:2084:19 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | -| main.rs:2084:22:2084:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2087:37:2089:5 | { ... } | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2088:9:2088:10 | S1 | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2092:18:2092:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2092:18:2092:22 | SelfParam | TRef | main.rs:2091:5:2093:5 | Self [trait MyTrait] | -| main.rs:2096:18:2096:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2096:18:2096:22 | SelfParam | TRef | main.rs:2066:5:2067:14 | S1 | -| main.rs:2096:31:2098:9 | { ... } | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2097:13:2097:14 | S2 | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2102:18:2102:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2102:18:2102:22 | SelfParam | TRef | main.rs:2069:5:2069:22 | S3 | -| main.rs:2102:18:2102:22 | SelfParam | TRef.T3 | main.rs:2101:10:2101:17 | T | -| main.rs:2102:30:2105:9 | { ... } | | main.rs:2101:10:2101:17 | T | -| main.rs:2103:17:2103:21 | S3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:2103:17:2103:21 | S3(...) | | main.rs:2069:5:2069:22 | S3 | -| main.rs:2103:17:2103:21 | S3(...) | TRef | main.rs:2069:5:2069:22 | S3 | -| main.rs:2103:17:2103:21 | S3(...) | TRef.T3 | main.rs:2101:10:2101:17 | T | -| main.rs:2103:25:2103:28 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2103:25:2103:28 | self | TRef | main.rs:2069:5:2069:22 | S3 | -| main.rs:2103:25:2103:28 | self | TRef.T3 | main.rs:2101:10:2101:17 | T | -| main.rs:2104:13:2104:21 | t.clone() | | main.rs:2101:10:2101:17 | T | -| main.rs:2108:45:2110:5 | { ... } | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2109:9:2109:10 | S1 | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2112:41:2112:41 | t | | main.rs:2112:26:2112:38 | B | -| main.rs:2112:52:2114:5 | { ... } | | main.rs:2112:23:2112:23 | A | -| main.rs:2113:9:2113:9 | t | | main.rs:2112:26:2112:38 | B | -| main.rs:2113:9:2113:17 | t.get_a() | | main.rs:2112:23:2112:23 | A | -| main.rs:2116:34:2116:34 | x | | main.rs:2116:24:2116:31 | T | -| main.rs:2116:59:2118:5 | { ... } | | main.rs:2116:43:2116:57 | impl ... | -| main.rs:2116:59:2118:5 | { ... } | impl(T) | main.rs:2116:24:2116:31 | T | -| main.rs:2117:9:2117:13 | S3(...) | | main.rs:2069:5:2069:22 | S3 | -| main.rs:2117:9:2117:13 | S3(...) | | main.rs:2116:43:2116:57 | impl ... | -| main.rs:2117:9:2117:13 | S3(...) | T3 | main.rs:2116:24:2116:31 | T | -| main.rs:2117:9:2117:13 | S3(...) | impl(T) | main.rs:2116:24:2116:31 | T | -| main.rs:2117:12:2117:12 | x | | main.rs:2116:24:2116:31 | T | -| main.rs:2120:34:2120:34 | x | | main.rs:2120:24:2120:31 | T | -| main.rs:2120:67:2122:5 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2120:67:2122:5 | { ... } | T | main.rs:2120:50:2120:64 | impl ... | -| main.rs:2120:67:2122:5 | { ... } | T.impl(T) | main.rs:2120:24:2120:31 | T | -| main.rs:2121:9:2121:19 | Some(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2121:9:2121:19 | Some(...) | T | main.rs:2069:5:2069:22 | S3 | -| main.rs:2121:9:2121:19 | Some(...) | T | main.rs:2120:50:2120:64 | impl ... | -| main.rs:2121:9:2121:19 | Some(...) | T.T3 | main.rs:2120:24:2120:31 | T | -| main.rs:2121:9:2121:19 | Some(...) | T.impl(T) | main.rs:2120:24:2120:31 | T | -| main.rs:2121:14:2121:18 | S3(...) | | main.rs:2069:5:2069:22 | S3 | -| main.rs:2121:14:2121:18 | S3(...) | T3 | main.rs:2120:24:2120:31 | T | -| main.rs:2121:17:2121:17 | x | | main.rs:2120:24:2120:31 | T | -| main.rs:2124:34:2124:34 | x | | main.rs:2124:24:2124:31 | T | -| main.rs:2124:78:2126:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2124:78:2126:5 | { ... } | T0 | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2124:78:2126:5 | { ... } | T0.impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2124:78:2126:5 | { ... } | T1 | main.rs:2124:61:2124:75 | impl ... | -| main.rs:2124:78:2126:5 | { ... } | T1.impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2125:9:2125:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2125:9:2125:30 | TupleExpr | T0 | main.rs:2069:5:2069:22 | S3 | -| main.rs:2125:9:2125:30 | TupleExpr | T0 | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2125:9:2125:30 | TupleExpr | T0.T3 | main.rs:2124:24:2124:31 | T | -| main.rs:2125:9:2125:30 | TupleExpr | T0.impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2125:9:2125:30 | TupleExpr | T1 | main.rs:2069:5:2069:22 | S3 | -| main.rs:2125:9:2125:30 | TupleExpr | T1 | main.rs:2124:61:2124:75 | impl ... | -| main.rs:2125:9:2125:30 | TupleExpr | T1.T3 | main.rs:2124:24:2124:31 | T | -| main.rs:2125:9:2125:30 | TupleExpr | T1.impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2125:10:2125:22 | S3(...) | | main.rs:2069:5:2069:22 | S3 | -| main.rs:2125:10:2125:22 | S3(...) | | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2125:10:2125:22 | S3(...) | T3 | main.rs:2124:24:2124:31 | T | -| main.rs:2125:10:2125:22 | S3(...) | impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2125:13:2125:13 | x | | main.rs:2124:24:2124:31 | T | -| main.rs:2125:13:2125:21 | x.clone() | | main.rs:2124:24:2124:31 | T | -| main.rs:2125:25:2125:29 | S3(...) | | main.rs:2069:5:2069:22 | S3 | -| main.rs:2125:25:2125:29 | S3(...) | | main.rs:2124:61:2124:75 | impl ... | -| main.rs:2125:25:2125:29 | S3(...) | T3 | main.rs:2124:24:2124:31 | T | -| main.rs:2125:25:2125:29 | S3(...) | impl(T) | main.rs:2124:24:2124:31 | T | -| main.rs:2125:28:2125:28 | x | | main.rs:2124:24:2124:31 | T | -| main.rs:2128:26:2128:26 | t | | main.rs:2128:29:2128:43 | impl ... | -| main.rs:2128:51:2130:5 | { ... } | | main.rs:2128:23:2128:23 | A | -| main.rs:2129:9:2129:9 | t | | main.rs:2128:29:2128:43 | impl ... | -| main.rs:2129:9:2129:17 | t.get_a() | | main.rs:2128:23:2128:23 | A | -| main.rs:2132:16:2146:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2133:13:2133:13 | x | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2133:17:2133:20 | f1(...) | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2134:9:2134:9 | x | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2134:9:2134:14 | x.f1() | | {EXTERNAL LOCATION} | () | -| main.rs:2135:9:2135:9 | x | | main.rs:2087:16:2087:35 | impl ... + ... | -| main.rs:2135:9:2135:14 | x.f2() | | {EXTERNAL LOCATION} | () | -| main.rs:2136:13:2136:13 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2136:17:2136:32 | get_a_my_trait(...) | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2137:13:2137:13 | b | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2137:17:2137:33 | uses_my_trait1(...) | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2137:32:2137:32 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2138:13:2138:13 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2138:17:2138:32 | get_a_my_trait(...) | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2139:13:2139:13 | c | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2139:17:2139:33 | uses_my_trait2(...) | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2139:32:2139:32 | a | | main.rs:2108:28:2108:43 | impl ... | -| main.rs:2140:13:2140:13 | d | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2140:17:2140:34 | uses_my_trait2(...) | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2140:32:2140:33 | S1 | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2141:13:2141:13 | e | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2141:17:2141:35 | get_a_my_trait2(...) | | main.rs:2116:43:2116:57 | impl ... | -| main.rs:2141:17:2141:35 | get_a_my_trait2(...) | impl(T) | main.rs:2066:5:2067:14 | S1 | -| main.rs:2141:17:2141:43 | ... .get_a() | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2141:33:2141:34 | S1 | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2144:13:2144:13 | f | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | T | main.rs:2120:50:2120:64 | impl ... | -| main.rs:2144:17:2144:35 | get_a_my_trait3(...) | T.impl(T) | main.rs:2066:5:2067:14 | S1 | -| main.rs:2144:17:2144:44 | ... .unwrap() | | main.rs:2120:50:2120:64 | impl ... | -| main.rs:2144:17:2144:44 | ... .unwrap() | impl(T) | main.rs:2066:5:2067:14 | S1 | -| main.rs:2144:17:2144:52 | ... .get_a() | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2144:33:2144:34 | S1 | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2145:13:2145:13 | g | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T0 | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T0.impl(T) | main.rs:2066:5:2067:14 | S1 | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T1 | main.rs:2124:61:2124:75 | impl ... | -| main.rs:2145:17:2145:35 | get_a_my_trait4(...) | T1.impl(T) | main.rs:2066:5:2067:14 | S1 | -| main.rs:2145:17:2145:37 | ... .0 | | main.rs:2124:44:2124:58 | impl ... | -| main.rs:2145:17:2145:37 | ... .0 | impl(T) | main.rs:2066:5:2067:14 | S1 | -| main.rs:2145:17:2145:45 | ... .get_a() | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2145:33:2145:34 | S1 | | main.rs:2066:5:2067:14 | S1 | -| main.rs:2156:16:2156:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2156:16:2156:20 | SelfParam | TRef | main.rs:2152:5:2153:13 | S | -| main.rs:2156:31:2158:9 | { ... } | | main.rs:2152:5:2153:13 | S | -| main.rs:2157:13:2157:13 | S | | main.rs:2152:5:2153:13 | S | -| main.rs:2167:26:2169:9 | { ... } | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2167:26:2169:9 | { ... } | T | main.rs:2166:10:2166:10 | T | -| main.rs:2168:13:2168:38 | MyVec {...} | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2168:13:2168:38 | MyVec {...} | T | main.rs:2166:10:2166:10 | T | -| main.rs:2168:27:2168:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2168:27:2168:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2168:27:2168:36 | ...::new(...) | T | main.rs:2166:10:2166:10 | T | -| main.rs:2171:17:2171:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:2171:17:2171:25 | SelfParam | TRefMut | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2171:17:2171:25 | SelfParam | TRefMut.T | main.rs:2166:10:2166:10 | T | -| main.rs:2171:28:2171:32 | value | | main.rs:2166:10:2166:10 | T | -| main.rs:2171:38:2173:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2172:13:2172:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:2172:13:2172:16 | self | TRefMut | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2172:13:2172:16 | self | TRefMut.T | main.rs:2166:10:2166:10 | T | -| main.rs:2172:13:2172:21 | self.data | | {EXTERNAL LOCATION} | Vec | -| main.rs:2172:13:2172:21 | self.data | A | {EXTERNAL LOCATION} | Global | -| main.rs:2172:13:2172:21 | self.data | T | main.rs:2166:10:2166:10 | T | -| main.rs:2172:13:2172:33 | ... .push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2172:28:2172:32 | value | | main.rs:2166:10:2166:10 | T | -| main.rs:2180:18:2180:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2180:18:2180:22 | SelfParam | TRef | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2180:18:2180:22 | SelfParam | TRef.T | main.rs:2176:10:2176:10 | T | -| main.rs:2180:25:2180:29 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2180:56:2182:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2180:56:2182:9 | { ... } | TRef | main.rs:2176:10:2176:10 | T | -| main.rs:2181:13:2181:29 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2181:13:2181:29 | &... | TRef | main.rs:2176:10:2176:10 | T | -| main.rs:2181:14:2181:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2181:14:2181:17 | self | TRef | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2181:14:2181:17 | self | TRef.T | main.rs:2176:10:2176:10 | T | -| main.rs:2181:14:2181:22 | self.data | | {EXTERNAL LOCATION} | Vec | -| main.rs:2181:14:2181:22 | self.data | A | {EXTERNAL LOCATION} | Global | -| main.rs:2181:14:2181:22 | self.data | T | main.rs:2176:10:2176:10 | T | -| main.rs:2181:14:2181:29 | ...[index] | | main.rs:2176:10:2176:10 | T | -| main.rs:2181:24:2181:28 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2185:22:2185:26 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2185:22:2185:26 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2185:22:2185:26 | slice | TRef.TSlice | main.rs:2152:5:2153:13 | S | -| main.rs:2185:35:2187:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2186:13:2186:13 | x | | main.rs:2152:5:2153:13 | S | -| main.rs:2186:17:2186:21 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2186:17:2186:21 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2186:17:2186:21 | slice | TRef.TSlice | main.rs:2152:5:2153:13 | S | -| main.rs:2186:17:2186:24 | slice[0] | | main.rs:2152:5:2153:13 | S | -| main.rs:2186:17:2186:30 | ... .foo() | | main.rs:2152:5:2153:13 | S | -| main.rs:2186:23:2186:23 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2189:37:2189:37 | a | | main.rs:2189:20:2189:34 | T | -| main.rs:2189:43:2189:43 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2193:9:2193:9 | a | | main.rs:2189:20:2189:34 | T | -| main.rs:2193:11:2193:11 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2196:16:2207:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2197:17:2197:19 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2197:17:2197:19 | vec | T | main.rs:2152:5:2153:13 | S | -| main.rs:2197:23:2197:34 | ...::new(...) | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2197:23:2197:34 | ...::new(...) | T | main.rs:2152:5:2153:13 | S | -| main.rs:2198:9:2198:11 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2198:9:2198:11 | vec | T | main.rs:2152:5:2153:13 | S | -| main.rs:2198:9:2198:19 | vec.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2198:18:2198:18 | S | | main.rs:2152:5:2153:13 | S | -| main.rs:2199:9:2199:11 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2199:9:2199:11 | vec | T | main.rs:2152:5:2153:13 | S | -| main.rs:2199:9:2199:14 | vec[0] | | main.rs:2152:5:2153:13 | S | -| main.rs:2199:9:2199:20 | ... .foo() | | main.rs:2152:5:2153:13 | S | -| main.rs:2199:13:2199:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2201:13:2201:14 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2201:13:2201:14 | xs | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2201:21:2201:21 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2201:26:2201:28 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2201:26:2201:28 | [...] | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2201:27:2201:27 | S | | main.rs:2152:5:2153:13 | S | -| main.rs:2202:13:2202:13 | x | | main.rs:2152:5:2153:13 | S | -| main.rs:2202:17:2202:18 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2202:17:2202:18 | xs | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2202:17:2202:21 | xs[0] | | main.rs:2152:5:2153:13 | S | -| main.rs:2202:17:2202:27 | ... .foo() | | main.rs:2152:5:2153:13 | S | -| main.rs:2202:20:2202:20 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2204:29:2204:31 | vec | | main.rs:2161:5:2164:5 | MyVec | -| main.rs:2204:29:2204:31 | vec | T | main.rs:2152:5:2153:13 | S | -| main.rs:2204:34:2204:34 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2206:9:2206:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2206:23:2206:25 | &xs | | {EXTERNAL LOCATION} | & | -| main.rs:2206:23:2206:25 | &xs | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2206:23:2206:25 | &xs | TRef.TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2206:24:2206:25 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2206:24:2206:25 | xs | TArray | main.rs:2152:5:2153:13 | S | -| main.rs:2211:16:2213:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2212:13:2212:13 | x | | {EXTERNAL LOCATION} | String | -| main.rs:2212:17:2212:46 | MacroExpr | | {EXTERNAL LOCATION} | String | -| main.rs:2212:25:2212:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | -| main.rs:2212:25:2212:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2212:25:2212:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2212:25:2212:45 | ...::must_use(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2212:25:2212:45 | { ... } | | {EXTERNAL LOCATION} | String | -| main.rs:2212:38:2212:45 | "World!" | | {EXTERNAL LOCATION} | & | -| main.rs:2212:38:2212:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2221:19:2221:22 | SelfParam | | main.rs:2217:5:2222:5 | Self [trait MyAdd] | -| main.rs:2221:25:2221:27 | rhs | | main.rs:2217:17:2217:26 | Rhs | -| main.rs:2228:19:2228:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2228:25:2228:29 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2228:45:2230:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2229:13:2229:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:19:2237:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:25:2237:29 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2237:25:2237:29 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2237:46:2239:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2238:13:2238:18 | * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:2238:14:2238:18 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2238:14:2238:18 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2246:19:2246:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2246:25:2246:29 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2246:46:2252:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2247:13:2251:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| main.rs:2247:13:2251:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | -| main.rs:2247:16:2247:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2247:22:2249:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2247:22:2249:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2248:17:2248:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2248:17:2248:17 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2249:20:2251:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2249:20:2251:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2250:17:2250:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2250:17:2250:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2261:19:2261:22 | SelfParam | | main.rs:2255:5:2255:19 | S | -| main.rs:2261:19:2261:22 | SelfParam | T | main.rs:2257:10:2257:17 | T | -| main.rs:2261:25:2261:29 | other | | main.rs:2255:5:2255:19 | S | -| main.rs:2261:25:2261:29 | other | T | main.rs:2257:10:2257:17 | T | -| main.rs:2261:54:2263:9 | { ... } | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:13:2262:39 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:15:2262:22 | (...) | | main.rs:2257:10:2257:17 | T | -| main.rs:2262:16:2262:19 | self | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:16:2262:19 | self | T | main.rs:2257:10:2257:17 | T | -| main.rs:2262:16:2262:21 | self.0 | | main.rs:2257:10:2257:17 | T | -| main.rs:2262:31:2262:35 | other | | main.rs:2255:5:2255:19 | S | -| main.rs:2262:31:2262:35 | other | T | main.rs:2257:10:2257:17 | T | -| main.rs:2262:31:2262:37 | other.0 | | main.rs:2257:10:2257:17 | T | -| main.rs:2270:19:2270:22 | SelfParam | | main.rs:2255:5:2255:19 | S | -| main.rs:2270:19:2270:22 | SelfParam | T | main.rs:2266:10:2266:17 | T | -| main.rs:2270:25:2270:29 | other | | main.rs:2266:10:2266:17 | T | -| main.rs:2270:51:2272:9 | { ... } | | main.rs:2255:5:2255:19 | S | -| main.rs:2271:13:2271:37 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2271:15:2271:22 | (...) | | main.rs:2266:10:2266:17 | T | -| main.rs:2271:16:2271:19 | self | | main.rs:2255:5:2255:19 | S | -| main.rs:2271:16:2271:19 | self | T | main.rs:2266:10:2266:17 | T | -| main.rs:2271:16:2271:21 | self.0 | | main.rs:2266:10:2266:17 | T | -| main.rs:2271:31:2271:35 | other | | main.rs:2266:10:2266:17 | T | -| main.rs:2282:19:2282:22 | SelfParam | | main.rs:2255:5:2255:19 | S | -| main.rs:2282:19:2282:22 | SelfParam | T | main.rs:2275:14:2275:14 | T | -| main.rs:2282:25:2282:29 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2282:25:2282:29 | other | TRef | main.rs:2275:14:2275:14 | T | -| main.rs:2282:55:2284:9 | { ... } | | main.rs:2255:5:2255:19 | S | -| main.rs:2283:13:2283:37 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2283:15:2283:22 | (...) | | main.rs:2275:14:2275:14 | T | -| main.rs:2283:16:2283:19 | self | | main.rs:2255:5:2255:19 | S | -| main.rs:2283:16:2283:19 | self | T | main.rs:2275:14:2275:14 | T | -| main.rs:2283:16:2283:21 | self.0 | | main.rs:2275:14:2275:14 | T | -| main.rs:2283:31:2283:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2283:31:2283:35 | other | TRef | main.rs:2275:14:2275:14 | T | -| main.rs:2289:20:2289:24 | value | | main.rs:2287:18:2287:18 | T | -| main.rs:2294:20:2294:24 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2294:40:2296:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2295:13:2295:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2301:20:2301:24 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2301:41:2307:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2302:13:2306:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| main.rs:2302:13:2306:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | -| main.rs:2302:16:2302:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2302:22:2304:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2302:22:2304:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2303:17:2303:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2303:17:2303:17 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2304:20:2306:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2304:20:2306:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2305:17:2305:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2305:17:2305:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2312:21:2312:25 | value | | main.rs:2310:19:2310:19 | T | -| main.rs:2312:31:2312:31 | x | | main.rs:2310:5:2313:5 | Self [trait MyFrom2] | -| main.rs:2317:21:2317:25 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2317:33:2317:33 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2317:48:2319:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2318:13:2318:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2324:21:2324:25 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2324:34:2324:34 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2324:49:2330:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2325:13:2329:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| main.rs:2325:16:2325:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2325:22:2327:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2326:17:2326:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2327:20:2329:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2328:17:2328:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2335:15:2335:15 | x | | main.rs:2333:5:2339:5 | Self [trait MySelfTrait] | -| main.rs:2338:15:2338:15 | x | | main.rs:2333:5:2339:5 | Self [trait MySelfTrait] | -| main.rs:2343:15:2343:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2343:31:2345:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2344:13:2344:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2344:13:2344:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:2344:17:2344:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2348:15:2348:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2348:32:2350:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2349:13:2349:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2349:13:2349:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:2349:17:2349:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2355:15:2355:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2355:31:2357:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2356:13:2356:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2356:13:2356:13 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2360:15:2360:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2360:32:2362:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:2361:13:2361:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2365:16:2390:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2366:13:2366:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2366:22:2366:23 | 73 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2366:22:2366:23 | 73 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:9:2367:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:9:2367:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2367:18:2367:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:9:2368:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:9:2368:23 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:18:2368:22 | &5i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2368:18:2368:22 | &5i64 | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2368:19:2368:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:9:2369:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:9:2369:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2369:18:2369:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2371:9:2371:15 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2371:9:2371:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2371:9:2371:31 | ... .my_add(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2371:11:2371:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2371:24:2371:30 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2371:24:2371:30 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2371:26:2371:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:9:2372:15 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2372:9:2372:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:11:2372:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2372:24:2372:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:9:2373:15 | S(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2373:9:2373:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:9:2373:29 | ... .my_add(...) | | main.rs:2255:5:2255:19 | S | -| main.rs:2373:11:2373:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:24:2373:28 | &3i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2373:24:2373:28 | &3i64 | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2373:25:2373:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1852:13:1852:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1852:24:1852:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1853:13:1853:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1853:13:1853:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1853:13:1853:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1853:13:1853:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1853:24:1853:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1859:16:1859:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1859:30:1864:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1860:13:1863:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1861:20:1861:26 | - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1861:21:1861:24 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1861:21:1861:26 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1862:20:1862:26 | - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1862:21:1862:24 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1862:21:1862:26 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1869:16:1869:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1869:30:1874:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1870:13:1873:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1871:20:1871:26 | ! ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1871:21:1871:24 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1871:21:1871:26 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1872:20:1872:26 | ! ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1872:21:1872:24 | self | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1872:21:1872:26 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1878:15:1878:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1878:15:1878:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1878:22:1878:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1878:22:1878:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1878:44:1880:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1879:13:1879:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1879:13:1879:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1879:13:1879:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1879:13:1879:29 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1879:13:1879:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1879:23:1879:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1879:23:1879:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1879:23:1879:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1879:34:1879:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1879:34:1879:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1879:34:1879:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1879:34:1879:50 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1879:44:1879:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1879:44:1879:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1879:44:1879:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1882:15:1882:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1882:15:1882:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1882:22:1882:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1882:22:1882:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1882:44:1884:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1883:13:1883:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1883:13:1883:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1883:13:1883:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1883:13:1883:29 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1883:13:1883:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1883:23:1883:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1883:23:1883:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1883:23:1883:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1883:34:1883:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1883:34:1883:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1883:34:1883:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1883:34:1883:50 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1883:44:1883:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1883:44:1883:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1883:44:1883:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1888:24:1888:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1888:24:1888:28 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1888:31:1888:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1888:31:1888:35 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1888:75:1890:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:1888:75:1890:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | +| main.rs:1889:13:1889:29 | (...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:1889:13:1889:63 | ... .partial_cmp(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1889:13:1889:63 | ... .partial_cmp(...) | T | {EXTERNAL LOCATION} | Ordering | +| main.rs:1889:14:1889:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1889:14:1889:17 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1889:14:1889:19 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1889:14:1889:28 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1889:23:1889:26 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1889:23:1889:26 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1889:23:1889:28 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1889:43:1889:62 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1889:43:1889:62 | &... | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:1889:44:1889:62 | (...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:1889:45:1889:49 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1889:45:1889:49 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1889:45:1889:51 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1889:45:1889:61 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1889:55:1889:59 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1889:55:1889:59 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1889:55:1889:61 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1892:15:1892:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1892:15:1892:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1892:22:1892:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1892:22:1892:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1892:44:1894:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1893:13:1893:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1893:13:1893:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1893:13:1893:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1893:13:1893:28 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1893:13:1893:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1893:22:1893:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1893:22:1893:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1893:22:1893:28 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1893:33:1893:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1893:33:1893:36 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1893:33:1893:38 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1893:33:1893:48 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1893:42:1893:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1893:42:1893:46 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1893:42:1893:48 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1896:15:1896:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1896:15:1896:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1896:22:1896:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1896:22:1896:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1896:44:1898:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1897:13:1897:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1897:13:1897:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1897:13:1897:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1897:13:1897:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1897:13:1897:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1897:23:1897:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1897:23:1897:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1897:23:1897:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1897:34:1897:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1897:34:1897:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1897:34:1897:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1897:34:1897:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1897:44:1897:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1897:44:1897:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1897:44:1897:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1900:15:1900:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1900:15:1900:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1900:22:1900:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1900:22:1900:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1900:44:1902:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1901:13:1901:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1901:13:1901:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1901:13:1901:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1901:13:1901:28 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1901:13:1901:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1901:22:1901:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1901:22:1901:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1901:22:1901:28 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1901:33:1901:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1901:33:1901:36 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1901:33:1901:38 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1901:33:1901:48 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1901:42:1901:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1901:42:1901:46 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1901:42:1901:48 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1904:15:1904:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1904:15:1904:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1904:22:1904:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1904:22:1904:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1904:44:1906:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1905:13:1905:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1905:13:1905:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1905:13:1905:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1905:13:1905:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1905:13:1905:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1905:23:1905:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1905:23:1905:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1905:23:1905:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1905:34:1905:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1905:34:1905:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1905:34:1905:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1905:34:1905:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1905:44:1905:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1905:44:1905:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1905:44:1905:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1909:26:1909:26 | a | | main.rs:1909:18:1909:23 | T | +| main.rs:1909:32:1909:32 | b | | main.rs:1909:18:1909:23 | T | +| main.rs:1910:9:1910:9 | a | | main.rs:1909:18:1909:23 | T | +| main.rs:1910:13:1910:13 | b | | main.rs:1909:18:1909:23 | T | +| main.rs:1913:16:2044:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1917:13:1917:18 | i64_eq | | {EXTERNAL LOCATION} | bool | +| main.rs:1917:22:1917:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1917:23:1917:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1917:23:1917:34 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1917:31:1917:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1918:13:1918:18 | i64_ne | | {EXTERNAL LOCATION} | bool | +| main.rs:1918:22:1918:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1918:23:1918:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1918:23:1918:34 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1918:31:1918:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1919:13:1919:18 | i64_lt | | {EXTERNAL LOCATION} | bool | +| main.rs:1919:22:1919:34 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1919:23:1919:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1919:23:1919:33 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1919:30:1919:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1920:13:1920:18 | i64_le | | {EXTERNAL LOCATION} | bool | +| main.rs:1920:22:1920:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1920:23:1920:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1920:23:1920:34 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1920:31:1920:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1921:13:1921:18 | i64_gt | | {EXTERNAL LOCATION} | bool | +| main.rs:1921:22:1921:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1921:23:1921:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1921:23:1921:34 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1921:30:1921:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1922:13:1922:18 | i64_ge | | {EXTERNAL LOCATION} | bool | +| main.rs:1922:22:1922:37 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1922:23:1922:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1922:23:1922:36 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1922:32:1922:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1925:13:1925:19 | i64_add | | {EXTERNAL LOCATION} | i64 | +| main.rs:1925:23:1925:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1925:23:1925:35 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1925:31:1925:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1926:13:1926:19 | i64_sub | | {EXTERNAL LOCATION} | i64 | +| main.rs:1926:23:1926:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1926:23:1926:35 | ... - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1926:31:1926:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1927:13:1927:19 | i64_mul | | {EXTERNAL LOCATION} | i64 | +| main.rs:1927:23:1927:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1927:23:1927:35 | ... * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1927:31:1927:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1928:13:1928:19 | i64_div | | {EXTERNAL LOCATION} | i64 | +| main.rs:1928:23:1928:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1928:23:1928:35 | ... / ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1928:31:1928:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1929:13:1929:19 | i64_rem | | {EXTERNAL LOCATION} | i64 | +| main.rs:1929:23:1929:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1929:23:1929:35 | ... % ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1929:31:1929:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1930:39:1930:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1930:45:1930:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1933:17:1933:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1933:34:1933:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1934:9:1934:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1934:9:1934:31 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1934:27:1934:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1936:17:1936:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1936:34:1936:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1937:9:1937:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1937:9:1937:31 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1937:27:1937:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1939:17:1939:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1939:34:1939:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1940:9:1940:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1940:9:1940:31 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1940:27:1940:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1942:17:1942:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1942:34:1942:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1943:9:1943:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1943:9:1943:31 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1943:27:1943:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1945:17:1945:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1945:34:1945:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1946:9:1946:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1946:9:1946:31 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1946:27:1946:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1949:13:1949:22 | i64_bitand | | {EXTERNAL LOCATION} | i64 | +| main.rs:1949:26:1949:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1949:26:1949:38 | ... & ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1949:34:1949:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1950:13:1950:21 | i64_bitor | | {EXTERNAL LOCATION} | i64 | +| main.rs:1950:25:1950:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1950:25:1950:37 | ... \| ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1950:33:1950:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1951:13:1951:22 | i64_bitxor | | {EXTERNAL LOCATION} | i64 | +| main.rs:1951:26:1951:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1951:26:1951:38 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1951:34:1951:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1952:13:1952:19 | i64_shl | | {EXTERNAL LOCATION} | i64 | +| main.rs:1952:23:1952:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1952:23:1952:36 | ... << ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1952:32:1952:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1953:13:1953:19 | i64_shr | | {EXTERNAL LOCATION} | i64 | +| main.rs:1953:23:1953:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1953:23:1953:36 | ... >> ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1953:32:1953:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1956:17:1956:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1956:37:1956:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1957:9:1957:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1957:9:1957:34 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1957:30:1957:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1959:17:1959:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1959:36:1959:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1960:9:1960:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1960:9:1960:33 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1960:29:1960:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1962:17:1962:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1962:37:1962:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1963:9:1963:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1963:9:1963:34 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1963:30:1963:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1965:17:1965:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1965:34:1965:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1966:9:1966:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1966:9:1966:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1966:28:1966:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1968:17:1968:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1968:34:1968:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1969:9:1969:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1969:9:1969:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1969:28:1969:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1971:13:1971:19 | i64_neg | | {EXTERNAL LOCATION} | i64 | +| main.rs:1971:23:1971:28 | - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1971:24:1971:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1972:13:1972:19 | i64_not | | {EXTERNAL LOCATION} | i64 | +| main.rs:1972:23:1972:28 | ! ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1972:24:1972:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1975:13:1975:14 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1975:18:1975:36 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1975:28:1975:28 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1975:34:1975:34 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1976:13:1976:14 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1976:18:1976:36 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1976:28:1976:28 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1976:34:1976:34 | 4 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1979:13:1979:19 | vec2_eq | | {EXTERNAL LOCATION} | bool | +| main.rs:1979:23:1979:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1979:23:1979:30 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1979:29:1979:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1980:13:1980:19 | vec2_ne | | {EXTERNAL LOCATION} | bool | +| main.rs:1980:23:1980:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1980:23:1980:30 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1980:29:1980:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1981:13:1981:19 | vec2_lt | | {EXTERNAL LOCATION} | bool | +| main.rs:1981:23:1981:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1981:23:1981:29 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1981:28:1981:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1982:13:1982:19 | vec2_le | | {EXTERNAL LOCATION} | bool | +| main.rs:1982:23:1982:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1982:23:1982:30 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1982:29:1982:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1983:13:1983:19 | vec2_gt | | {EXTERNAL LOCATION} | bool | +| main.rs:1983:23:1983:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1983:23:1983:29 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1983:28:1983:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1984:13:1984:19 | vec2_ge | | {EXTERNAL LOCATION} | bool | +| main.rs:1984:23:1984:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1984:23:1984:30 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1984:29:1984:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1987:13:1987:20 | vec2_add | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1987:24:1987:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1987:24:1987:30 | ... + ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1987:29:1987:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1988:13:1988:20 | vec2_sub | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1988:24:1988:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1988:24:1988:30 | ... - ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1988:29:1988:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1989:13:1989:20 | vec2_mul | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1989:24:1989:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1989:24:1989:30 | ... * ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1989:29:1989:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1990:13:1990:20 | vec2_div | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1990:24:1990:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1990:24:1990:30 | ... / ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1990:29:1990:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1991:13:1991:20 | vec2_rem | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1991:24:1991:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1991:24:1991:30 | ... % ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1991:29:1991:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1994:17:1994:31 | vec2_add_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1994:35:1994:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1995:9:1995:23 | vec2_add_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1995:9:1995:29 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1995:28:1995:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1997:17:1997:31 | vec2_sub_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1997:35:1997:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1998:9:1998:23 | vec2_sub_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:1998:9:1998:29 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1998:28:1998:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2000:17:2000:31 | vec2_mul_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2000:35:2000:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2001:9:2001:23 | vec2_mul_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2001:9:2001:29 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:2001:28:2001:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2003:17:2003:31 | vec2_div_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2003:35:2003:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2004:9:2004:23 | vec2_div_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2004:9:2004:29 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:2004:28:2004:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2006:17:2006:31 | vec2_rem_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2006:35:2006:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2007:9:2007:23 | vec2_rem_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2007:9:2007:29 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:2007:28:2007:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2010:13:2010:23 | vec2_bitand | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2010:27:2010:28 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2010:27:2010:33 | ... & ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2010:32:2010:33 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2011:13:2011:22 | vec2_bitor | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2011:26:2011:27 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2011:26:2011:32 | ... \| ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2011:31:2011:32 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2012:13:2012:23 | vec2_bitxor | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2012:27:2012:28 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2012:27:2012:33 | ... ^ ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2012:32:2012:33 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2013:13:2013:20 | vec2_shl | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2013:24:2013:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2013:24:2013:33 | ... << ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2013:30:2013:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2014:13:2014:20 | vec2_shr | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2014:24:2014:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2014:24:2014:33 | ... >> ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2014:30:2014:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2017:17:2017:34 | vec2_bitand_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2017:38:2017:39 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2018:9:2018:26 | vec2_bitand_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2018:9:2018:32 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:2018:31:2018:32 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2020:17:2020:33 | vec2_bitor_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2020:37:2020:38 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2021:9:2021:25 | vec2_bitor_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2021:9:2021:31 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:2021:30:2021:31 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2023:17:2023:34 | vec2_bitxor_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2023:38:2023:39 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2024:9:2024:26 | vec2_bitxor_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2024:9:2024:32 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:2024:31:2024:32 | v2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2026:17:2026:31 | vec2_shl_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2026:35:2026:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2027:9:2027:23 | vec2_shl_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2027:9:2027:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:2027:29:2027:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2029:17:2029:31 | vec2_shr_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2029:35:2029:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2030:9:2030:23 | vec2_shr_assign | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2030:9:2030:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:2030:29:2030:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2033:13:2033:20 | vec2_neg | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2033:24:2033:26 | - ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2033:25:2033:26 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2034:13:2034:20 | vec2_not | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2034:24:2034:26 | ! ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2034:25:2034:26 | v1 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2037:13:2037:24 | default_vec2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2037:28:2037:45 | ...::default(...) | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2038:13:2038:26 | vec2_zero_plus | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2038:30:2038:48 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2038:30:2038:63 | ... + ... | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2038:40:2038:40 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2038:46:2038:46 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2038:52:2038:63 | default_vec2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2042:13:2042:24 | default_vec2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2042:28:2042:45 | ...::default(...) | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2043:13:2043:26 | vec2_zero_plus | | {EXTERNAL LOCATION} | bool | +| main.rs:2043:30:2043:48 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2043:30:2043:64 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:2043:40:2043:40 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2043:46:2043:46 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2043:53:2043:64 | default_vec2 | | main.rs:1672:5:1677:5 | Vec2 | +| main.rs:2053:18:2053:21 | SelfParam | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2053:24:2053:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2056:25:2058:5 | { ... } | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2057:9:2057:10 | S1 | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2060:41:2062:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2060:41:2062:5 | { ... } | dyn(Output) | main.rs:2050:5:2050:14 | S1 | +| main.rs:2061:9:2061:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2061:9:2061:20 | { ... } | dyn(Output) | main.rs:2050:5:2050:14 | S1 | +| main.rs:2061:17:2061:18 | S1 | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2064:41:2066:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2064:41:2066:5 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2065:9:2065:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2065:9:2065:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2074:13:2074:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | +| main.rs:2074:13:2074:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | +| main.rs:2074:13:2074:42 | SelfParam | Ptr.TRefMut | main.rs:2068:5:2068:14 | S2 | +| main.rs:2075:13:2075:15 | _cx | | {EXTERNAL LOCATION} | &mut | +| main.rs:2075:13:2075:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | +| main.rs:2076:44:2078:9 | { ... } | | {EXTERNAL LOCATION} | Poll | +| main.rs:2076:44:2078:9 | { ... } | T | main.rs:2050:5:2050:14 | S1 | +| main.rs:2077:13:2077:38 | ...::Ready(...) | | {EXTERNAL LOCATION} | Poll | +| main.rs:2077:13:2077:38 | ...::Ready(...) | T | main.rs:2050:5:2050:14 | S1 | +| main.rs:2077:36:2077:37 | S1 | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2081:41:2083:5 | { ... } | | main.rs:2068:5:2068:14 | S2 | +| main.rs:2082:9:2082:10 | S2 | | main.rs:2068:5:2068:14 | S2 | +| main.rs:2085:22:2093:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2086:9:2086:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2086:9:2086:12 | f1(...) | dyn(Output) | main.rs:2050:5:2050:14 | S1 | +| main.rs:2086:9:2086:18 | await ... | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2086:9:2086:22 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:2087:9:2087:12 | f2(...) | | main.rs:2060:16:2060:39 | impl ... | +| main.rs:2087:9:2087:18 | await ... | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2087:9:2087:22 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:2088:9:2088:12 | f3(...) | | main.rs:2064:16:2064:39 | impl ... | +| main.rs:2088:9:2088:18 | await ... | | {EXTERNAL LOCATION} | () | +| main.rs:2089:9:2089:12 | f4(...) | | main.rs:2081:16:2081:39 | impl ... | +| main.rs:2089:9:2089:18 | await ... | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2089:9:2089:22 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:2090:9:2090:10 | S2 | | main.rs:2068:5:2068:14 | S2 | +| main.rs:2090:9:2090:16 | await S2 | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2090:9:2090:20 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:2091:13:2091:13 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2091:13:2091:13 | b | dyn(Output) | main.rs:2050:5:2050:14 | S1 | +| main.rs:2091:17:2091:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2091:17:2091:28 | { ... } | dyn(Output) | main.rs:2050:5:2050:14 | S1 | +| main.rs:2091:25:2091:26 | S1 | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2092:9:2092:9 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2092:9:2092:9 | b | dyn(Output) | main.rs:2050:5:2050:14 | S1 | +| main.rs:2092:9:2092:15 | await b | | main.rs:2050:5:2050:14 | S1 | +| main.rs:2092:9:2092:19 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:2103:15:2103:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2103:15:2103:19 | SelfParam | TRef | main.rs:2102:5:2104:5 | Self [trait Trait1] | +| main.rs:2103:22:2103:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2107:15:2107:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2107:15:2107:19 | SelfParam | TRef | main.rs:2106:5:2108:5 | Self [trait Trait2] | +| main.rs:2107:22:2107:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2111:15:2111:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2111:15:2111:19 | SelfParam | TRef | main.rs:2097:5:2098:14 | S1 | +| main.rs:2111:22:2111:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2115:15:2115:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2115:15:2115:19 | SelfParam | TRef | main.rs:2097:5:2098:14 | S1 | +| main.rs:2115:22:2115:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2118:37:2120:5 | { ... } | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2119:9:2119:10 | S1 | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2123:18:2123:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2123:18:2123:22 | SelfParam | TRef | main.rs:2122:5:2124:5 | Self [trait MyTrait] | +| main.rs:2127:18:2127:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2127:18:2127:22 | SelfParam | TRef | main.rs:2097:5:2098:14 | S1 | +| main.rs:2127:31:2129:9 | { ... } | | main.rs:2099:5:2099:14 | S2 | +| main.rs:2128:13:2128:14 | S2 | | main.rs:2099:5:2099:14 | S2 | +| main.rs:2133:18:2133:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2133:18:2133:22 | SelfParam | TRef | main.rs:2100:5:2100:22 | S3 | +| main.rs:2133:18:2133:22 | SelfParam | TRef.T3 | main.rs:2132:10:2132:17 | T | +| main.rs:2133:30:2136:9 | { ... } | | main.rs:2132:10:2132:17 | T | +| main.rs:2134:17:2134:21 | S3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:2134:17:2134:21 | S3(...) | | main.rs:2100:5:2100:22 | S3 | +| main.rs:2134:17:2134:21 | S3(...) | TRef | main.rs:2100:5:2100:22 | S3 | +| main.rs:2134:17:2134:21 | S3(...) | TRef.T3 | main.rs:2132:10:2132:17 | T | +| main.rs:2134:25:2134:28 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2134:25:2134:28 | self | TRef | main.rs:2100:5:2100:22 | S3 | +| main.rs:2134:25:2134:28 | self | TRef.T3 | main.rs:2132:10:2132:17 | T | +| main.rs:2135:13:2135:21 | t.clone() | | main.rs:2132:10:2132:17 | T | +| main.rs:2139:45:2141:5 | { ... } | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2140:9:2140:10 | S1 | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2143:41:2143:41 | t | | main.rs:2143:26:2143:38 | B | +| main.rs:2143:52:2145:5 | { ... } | | main.rs:2143:23:2143:23 | A | +| main.rs:2144:9:2144:9 | t | | main.rs:2143:26:2143:38 | B | +| main.rs:2144:9:2144:17 | t.get_a() | | main.rs:2143:23:2143:23 | A | +| main.rs:2147:34:2147:34 | x | | main.rs:2147:24:2147:31 | T | +| main.rs:2147:59:2149:5 | { ... } | | main.rs:2147:43:2147:57 | impl ... | +| main.rs:2147:59:2149:5 | { ... } | impl(T) | main.rs:2147:24:2147:31 | T | +| main.rs:2148:9:2148:13 | S3(...) | | main.rs:2100:5:2100:22 | S3 | +| main.rs:2148:9:2148:13 | S3(...) | | main.rs:2147:43:2147:57 | impl ... | +| main.rs:2148:9:2148:13 | S3(...) | T3 | main.rs:2147:24:2147:31 | T | +| main.rs:2148:9:2148:13 | S3(...) | impl(T) | main.rs:2147:24:2147:31 | T | +| main.rs:2148:12:2148:12 | x | | main.rs:2147:24:2147:31 | T | +| main.rs:2151:34:2151:34 | x | | main.rs:2151:24:2151:31 | T | +| main.rs:2151:67:2153:5 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:2151:67:2153:5 | { ... } | T | main.rs:2151:50:2151:64 | impl ... | +| main.rs:2151:67:2153:5 | { ... } | T.impl(T) | main.rs:2151:24:2151:31 | T | +| main.rs:2152:9:2152:19 | Some(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2152:9:2152:19 | Some(...) | T | main.rs:2100:5:2100:22 | S3 | +| main.rs:2152:9:2152:19 | Some(...) | T | main.rs:2151:50:2151:64 | impl ... | +| main.rs:2152:9:2152:19 | Some(...) | T.T3 | main.rs:2151:24:2151:31 | T | +| main.rs:2152:9:2152:19 | Some(...) | T.impl(T) | main.rs:2151:24:2151:31 | T | +| main.rs:2152:14:2152:18 | S3(...) | | main.rs:2100:5:2100:22 | S3 | +| main.rs:2152:14:2152:18 | S3(...) | T3 | main.rs:2151:24:2151:31 | T | +| main.rs:2152:17:2152:17 | x | | main.rs:2151:24:2151:31 | T | +| main.rs:2155:34:2155:34 | x | | main.rs:2155:24:2155:31 | T | +| main.rs:2155:78:2157:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2155:78:2157:5 | { ... } | T0 | main.rs:2155:44:2155:58 | impl ... | +| main.rs:2155:78:2157:5 | { ... } | T0.impl(T) | main.rs:2155:24:2155:31 | T | +| main.rs:2155:78:2157:5 | { ... } | T1 | main.rs:2155:61:2155:75 | impl ... | +| main.rs:2155:78:2157:5 | { ... } | T1.impl(T) | main.rs:2155:24:2155:31 | T | +| main.rs:2156:9:2156:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2156:9:2156:30 | TupleExpr | T0 | main.rs:2100:5:2100:22 | S3 | +| main.rs:2156:9:2156:30 | TupleExpr | T0 | main.rs:2155:44:2155:58 | impl ... | +| main.rs:2156:9:2156:30 | TupleExpr | T0.T3 | main.rs:2155:24:2155:31 | T | +| main.rs:2156:9:2156:30 | TupleExpr | T0.impl(T) | main.rs:2155:24:2155:31 | T | +| main.rs:2156:9:2156:30 | TupleExpr | T1 | main.rs:2100:5:2100:22 | S3 | +| main.rs:2156:9:2156:30 | TupleExpr | T1 | main.rs:2155:61:2155:75 | impl ... | +| main.rs:2156:9:2156:30 | TupleExpr | T1.T3 | main.rs:2155:24:2155:31 | T | +| main.rs:2156:9:2156:30 | TupleExpr | T1.impl(T) | main.rs:2155:24:2155:31 | T | +| main.rs:2156:10:2156:22 | S3(...) | | main.rs:2100:5:2100:22 | S3 | +| main.rs:2156:10:2156:22 | S3(...) | | main.rs:2155:44:2155:58 | impl ... | +| main.rs:2156:10:2156:22 | S3(...) | T3 | main.rs:2155:24:2155:31 | T | +| main.rs:2156:10:2156:22 | S3(...) | impl(T) | main.rs:2155:24:2155:31 | T | +| main.rs:2156:13:2156:13 | x | | main.rs:2155:24:2155:31 | T | +| main.rs:2156:13:2156:21 | x.clone() | | main.rs:2155:24:2155:31 | T | +| main.rs:2156:25:2156:29 | S3(...) | | main.rs:2100:5:2100:22 | S3 | +| main.rs:2156:25:2156:29 | S3(...) | | main.rs:2155:61:2155:75 | impl ... | +| main.rs:2156:25:2156:29 | S3(...) | T3 | main.rs:2155:24:2155:31 | T | +| main.rs:2156:25:2156:29 | S3(...) | impl(T) | main.rs:2155:24:2155:31 | T | +| main.rs:2156:28:2156:28 | x | | main.rs:2155:24:2155:31 | T | +| main.rs:2159:26:2159:26 | t | | main.rs:2159:29:2159:43 | impl ... | +| main.rs:2159:51:2161:5 | { ... } | | main.rs:2159:23:2159:23 | A | +| main.rs:2160:9:2160:9 | t | | main.rs:2159:29:2159:43 | impl ... | +| main.rs:2160:9:2160:17 | t.get_a() | | main.rs:2159:23:2159:23 | A | +| main.rs:2163:16:2177:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2164:13:2164:13 | x | | main.rs:2118:16:2118:35 | impl ... + ... | +| main.rs:2164:17:2164:20 | f1(...) | | main.rs:2118:16:2118:35 | impl ... + ... | +| main.rs:2165:9:2165:9 | x | | main.rs:2118:16:2118:35 | impl ... + ... | +| main.rs:2165:9:2165:14 | x.f1() | | {EXTERNAL LOCATION} | () | +| main.rs:2166:9:2166:9 | x | | main.rs:2118:16:2118:35 | impl ... + ... | +| main.rs:2166:9:2166:14 | x.f2() | | {EXTERNAL LOCATION} | () | +| main.rs:2167:13:2167:13 | a | | main.rs:2139:28:2139:43 | impl ... | +| main.rs:2167:17:2167:32 | get_a_my_trait(...) | | main.rs:2139:28:2139:43 | impl ... | +| main.rs:2168:13:2168:13 | b | | main.rs:2099:5:2099:14 | S2 | +| main.rs:2168:17:2168:33 | uses_my_trait1(...) | | main.rs:2099:5:2099:14 | S2 | +| main.rs:2168:32:2168:32 | a | | main.rs:2139:28:2139:43 | impl ... | +| main.rs:2169:13:2169:13 | a | | main.rs:2139:28:2139:43 | impl ... | +| main.rs:2169:17:2169:32 | get_a_my_trait(...) | | main.rs:2139:28:2139:43 | impl ... | +| main.rs:2170:13:2170:13 | c | | main.rs:2099:5:2099:14 | S2 | +| main.rs:2170:17:2170:33 | uses_my_trait2(...) | | main.rs:2099:5:2099:14 | S2 | +| main.rs:2170:32:2170:32 | a | | main.rs:2139:28:2139:43 | impl ... | +| main.rs:2171:13:2171:13 | d | | main.rs:2099:5:2099:14 | S2 | +| main.rs:2171:17:2171:34 | uses_my_trait2(...) | | main.rs:2099:5:2099:14 | S2 | +| main.rs:2171:32:2171:33 | S1 | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2172:13:2172:13 | e | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2172:17:2172:35 | get_a_my_trait2(...) | | main.rs:2147:43:2147:57 | impl ... | +| main.rs:2172:17:2172:35 | get_a_my_trait2(...) | impl(T) | main.rs:2097:5:2098:14 | S1 | +| main.rs:2172:17:2172:43 | ... .get_a() | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2172:33:2172:34 | S1 | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2175:13:2175:13 | f | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2175:17:2175:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2175:17:2175:35 | get_a_my_trait3(...) | T | main.rs:2151:50:2151:64 | impl ... | +| main.rs:2175:17:2175:35 | get_a_my_trait3(...) | T.impl(T) | main.rs:2097:5:2098:14 | S1 | +| main.rs:2175:17:2175:44 | ... .unwrap() | | main.rs:2151:50:2151:64 | impl ... | +| main.rs:2175:17:2175:44 | ... .unwrap() | impl(T) | main.rs:2097:5:2098:14 | S1 | +| main.rs:2175:17:2175:52 | ... .get_a() | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2175:33:2175:34 | S1 | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2176:13:2176:13 | g | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | T0 | main.rs:2155:44:2155:58 | impl ... | +| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | T0.impl(T) | main.rs:2097:5:2098:14 | S1 | +| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | T1 | main.rs:2155:61:2155:75 | impl ... | +| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | T1.impl(T) | main.rs:2097:5:2098:14 | S1 | +| main.rs:2176:17:2176:37 | ... .0 | | main.rs:2155:44:2155:58 | impl ... | +| main.rs:2176:17:2176:37 | ... .0 | impl(T) | main.rs:2097:5:2098:14 | S1 | +| main.rs:2176:17:2176:45 | ... .get_a() | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2176:33:2176:34 | S1 | | main.rs:2097:5:2098:14 | S1 | +| main.rs:2187:16:2187:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2187:16:2187:20 | SelfParam | TRef | main.rs:2183:5:2184:13 | S | +| main.rs:2187:31:2189:9 | { ... } | | main.rs:2183:5:2184:13 | S | +| main.rs:2188:13:2188:13 | S | | main.rs:2183:5:2184:13 | S | +| main.rs:2198:26:2200:9 | { ... } | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2198:26:2200:9 | { ... } | T | main.rs:2197:10:2197:10 | T | +| main.rs:2199:13:2199:38 | MyVec {...} | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2199:13:2199:38 | MyVec {...} | T | main.rs:2197:10:2197:10 | T | +| main.rs:2199:27:2199:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2199:27:2199:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2199:27:2199:36 | ...::new(...) | T | main.rs:2197:10:2197:10 | T | +| main.rs:2202:17:2202:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:2202:17:2202:25 | SelfParam | TRefMut | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2202:17:2202:25 | SelfParam | TRefMut.T | main.rs:2197:10:2197:10 | T | +| main.rs:2202:28:2202:32 | value | | main.rs:2197:10:2197:10 | T | +| main.rs:2202:38:2204:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2203:13:2203:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:2203:13:2203:16 | self | TRefMut | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2203:13:2203:16 | self | TRefMut.T | main.rs:2197:10:2197:10 | T | +| main.rs:2203:13:2203:21 | self.data | | {EXTERNAL LOCATION} | Vec | +| main.rs:2203:13:2203:21 | self.data | A | {EXTERNAL LOCATION} | Global | +| main.rs:2203:13:2203:21 | self.data | T | main.rs:2197:10:2197:10 | T | +| main.rs:2203:13:2203:33 | ... .push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2203:28:2203:32 | value | | main.rs:2197:10:2197:10 | T | +| main.rs:2211:18:2211:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2211:18:2211:22 | SelfParam | TRef | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2211:18:2211:22 | SelfParam | TRef.T | main.rs:2207:10:2207:10 | T | +| main.rs:2211:25:2211:29 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2211:56:2213:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2211:56:2213:9 | { ... } | TRef | main.rs:2207:10:2207:10 | T | +| main.rs:2212:13:2212:29 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2212:13:2212:29 | &... | TRef | main.rs:2207:10:2207:10 | T | +| main.rs:2212:14:2212:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2212:14:2212:17 | self | TRef | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2212:14:2212:17 | self | TRef.T | main.rs:2207:10:2207:10 | T | +| main.rs:2212:14:2212:22 | self.data | | {EXTERNAL LOCATION} | Vec | +| main.rs:2212:14:2212:22 | self.data | A | {EXTERNAL LOCATION} | Global | +| main.rs:2212:14:2212:22 | self.data | T | main.rs:2207:10:2207:10 | T | +| main.rs:2212:14:2212:29 | ...[index] | | main.rs:2207:10:2207:10 | T | +| main.rs:2212:24:2212:28 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2216:22:2216:26 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2216:22:2216:26 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2216:22:2216:26 | slice | TRef.TSlice | main.rs:2183:5:2184:13 | S | +| main.rs:2216:35:2218:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2217:13:2217:13 | x | | main.rs:2183:5:2184:13 | S | +| main.rs:2217:17:2217:21 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2217:17:2217:21 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2217:17:2217:21 | slice | TRef.TSlice | main.rs:2183:5:2184:13 | S | +| main.rs:2217:17:2217:24 | slice[0] | | main.rs:2183:5:2184:13 | S | +| main.rs:2217:17:2217:30 | ... .foo() | | main.rs:2183:5:2184:13 | S | +| main.rs:2217:23:2217:23 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2220:37:2220:37 | a | | main.rs:2220:20:2220:34 | T | +| main.rs:2220:43:2220:43 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2224:9:2224:9 | a | | main.rs:2220:20:2220:34 | T | +| main.rs:2224:11:2224:11 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2227:16:2238:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2228:17:2228:19 | vec | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2228:17:2228:19 | vec | T | main.rs:2183:5:2184:13 | S | +| main.rs:2228:23:2228:34 | ...::new(...) | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2228:23:2228:34 | ...::new(...) | T | main.rs:2183:5:2184:13 | S | +| main.rs:2229:9:2229:11 | vec | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2229:9:2229:11 | vec | T | main.rs:2183:5:2184:13 | S | +| main.rs:2229:9:2229:19 | vec.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2229:18:2229:18 | S | | main.rs:2183:5:2184:13 | S | +| main.rs:2230:9:2230:11 | vec | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2230:9:2230:11 | vec | T | main.rs:2183:5:2184:13 | S | +| main.rs:2230:9:2230:14 | vec[0] | | main.rs:2183:5:2184:13 | S | +| main.rs:2230:9:2230:20 | ... .foo() | | main.rs:2183:5:2184:13 | S | +| main.rs:2230:13:2230:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2232:13:2232:14 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2232:13:2232:14 | xs | TArray | main.rs:2183:5:2184:13 | S | +| main.rs:2232:21:2232:21 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2232:26:2232:28 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2232:26:2232:28 | [...] | TArray | main.rs:2183:5:2184:13 | S | +| main.rs:2232:27:2232:27 | S | | main.rs:2183:5:2184:13 | S | +| main.rs:2233:13:2233:13 | x | | main.rs:2183:5:2184:13 | S | +| main.rs:2233:17:2233:18 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2233:17:2233:18 | xs | TArray | main.rs:2183:5:2184:13 | S | +| main.rs:2233:17:2233:21 | xs[0] | | main.rs:2183:5:2184:13 | S | +| main.rs:2233:17:2233:27 | ... .foo() | | main.rs:2183:5:2184:13 | S | +| main.rs:2233:20:2233:20 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2235:29:2235:31 | vec | | main.rs:2192:5:2195:5 | MyVec | +| main.rs:2235:29:2235:31 | vec | T | main.rs:2183:5:2184:13 | S | +| main.rs:2235:34:2235:34 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2237:9:2237:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2237:23:2237:25 | &xs | | {EXTERNAL LOCATION} | & | +| main.rs:2237:23:2237:25 | &xs | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2237:23:2237:25 | &xs | TRef.TArray | main.rs:2183:5:2184:13 | S | +| main.rs:2237:24:2237:25 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2237:24:2237:25 | xs | TArray | main.rs:2183:5:2184:13 | S | +| main.rs:2242:16:2244:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2243:13:2243:13 | x | | {EXTERNAL LOCATION} | String | +| main.rs:2243:17:2243:46 | MacroExpr | | {EXTERNAL LOCATION} | String | +| main.rs:2243:25:2243:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | +| main.rs:2243:25:2243:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2243:25:2243:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2243:25:2243:45 | ...::must_use(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2243:25:2243:45 | { ... } | | {EXTERNAL LOCATION} | String | +| main.rs:2243:38:2243:45 | "World!" | | {EXTERNAL LOCATION} | & | +| main.rs:2243:38:2243:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2252:19:2252:22 | SelfParam | | main.rs:2248:5:2253:5 | Self [trait MyAdd] | +| main.rs:2252:25:2252:27 | rhs | | main.rs:2248:17:2248:26 | Rhs | +| main.rs:2259:19:2259:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2259:25:2259:29 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2259:45:2261:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2260:13:2260:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2268:19:2268:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2268:25:2268:29 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2268:25:2268:29 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2268:46:2270:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2269:13:2269:18 | * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:2269:14:2269:18 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2269:14:2269:18 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2277:19:2277:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2277:25:2277:29 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2277:46:2283:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2278:13:2282:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| main.rs:2278:13:2282:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | +| main.rs:2278:16:2278:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2278:22:2280:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2278:22:2280:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2279:17:2279:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2279:17:2279:17 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2280:20:2282:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2280:20:2282:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2281:17:2281:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2281:17:2281:17 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2292:19:2292:22 | SelfParam | | main.rs:2286:5:2286:19 | S | +| main.rs:2292:19:2292:22 | SelfParam | T | main.rs:2288:10:2288:17 | T | +| main.rs:2292:25:2292:29 | other | | main.rs:2286:5:2286:19 | S | +| main.rs:2292:25:2292:29 | other | T | main.rs:2288:10:2288:17 | T | +| main.rs:2292:54:2294:9 | { ... } | | main.rs:2286:5:2286:19 | S | +| main.rs:2293:13:2293:39 | S(...) | | main.rs:2286:5:2286:19 | S | +| main.rs:2293:15:2293:22 | (...) | | main.rs:2288:10:2288:17 | T | +| main.rs:2293:16:2293:19 | self | | main.rs:2286:5:2286:19 | S | +| main.rs:2293:16:2293:19 | self | T | main.rs:2288:10:2288:17 | T | +| main.rs:2293:16:2293:21 | self.0 | | main.rs:2288:10:2288:17 | T | +| main.rs:2293:31:2293:35 | other | | main.rs:2286:5:2286:19 | S | +| main.rs:2293:31:2293:35 | other | T | main.rs:2288:10:2288:17 | T | +| main.rs:2293:31:2293:37 | other.0 | | main.rs:2288:10:2288:17 | T | +| main.rs:2301:19:2301:22 | SelfParam | | main.rs:2286:5:2286:19 | S | +| main.rs:2301:19:2301:22 | SelfParam | T | main.rs:2297:10:2297:17 | T | +| main.rs:2301:25:2301:29 | other | | main.rs:2297:10:2297:17 | T | +| main.rs:2301:51:2303:9 | { ... } | | main.rs:2286:5:2286:19 | S | +| main.rs:2302:13:2302:37 | S(...) | | main.rs:2286:5:2286:19 | S | +| main.rs:2302:15:2302:22 | (...) | | main.rs:2297:10:2297:17 | T | +| main.rs:2302:16:2302:19 | self | | main.rs:2286:5:2286:19 | S | +| main.rs:2302:16:2302:19 | self | T | main.rs:2297:10:2297:17 | T | +| main.rs:2302:16:2302:21 | self.0 | | main.rs:2297:10:2297:17 | T | +| main.rs:2302:31:2302:35 | other | | main.rs:2297:10:2297:17 | T | +| main.rs:2313:19:2313:22 | SelfParam | | main.rs:2286:5:2286:19 | S | +| main.rs:2313:19:2313:22 | SelfParam | T | main.rs:2306:14:2306:14 | T | +| main.rs:2313:25:2313:29 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2313:25:2313:29 | other | TRef | main.rs:2306:14:2306:14 | T | +| main.rs:2313:55:2315:9 | { ... } | | main.rs:2286:5:2286:19 | S | +| main.rs:2314:13:2314:37 | S(...) | | main.rs:2286:5:2286:19 | S | +| main.rs:2314:15:2314:22 | (...) | | main.rs:2306:14:2306:14 | T | +| main.rs:2314:16:2314:19 | self | | main.rs:2286:5:2286:19 | S | +| main.rs:2314:16:2314:19 | self | T | main.rs:2306:14:2306:14 | T | +| main.rs:2314:16:2314:21 | self.0 | | main.rs:2306:14:2306:14 | T | +| main.rs:2314:31:2314:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2314:31:2314:35 | other | TRef | main.rs:2306:14:2306:14 | T | +| main.rs:2320:20:2320:24 | value | | main.rs:2318:18:2318:18 | T | +| main.rs:2325:20:2325:24 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2325:40:2327:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2326:13:2326:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2332:20:2332:24 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2332:41:2338:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2333:13:2337:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| main.rs:2333:13:2337:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | +| main.rs:2333:16:2333:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2333:22:2335:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2333:22:2335:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2334:17:2334:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2334:17:2334:17 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2335:20:2337:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2335:20:2337:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2336:17:2336:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2336:17:2336:17 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2343:21:2343:25 | value | | main.rs:2341:19:2341:19 | T | +| main.rs:2343:31:2343:31 | x | | main.rs:2341:5:2344:5 | Self [trait MyFrom2] | +| main.rs:2348:21:2348:25 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2348:33:2348:33 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2348:48:2350:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2349:13:2349:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2355:21:2355:25 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2355:34:2355:34 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2355:49:2361:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2356:13:2360:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| main.rs:2356:16:2356:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2356:22:2358:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2357:17:2357:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2358:20:2360:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2359:17:2359:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2366:15:2366:15 | x | | main.rs:2364:5:2370:5 | Self [trait MySelfTrait] | +| main.rs:2369:15:2369:15 | x | | main.rs:2364:5:2370:5 | Self [trait MySelfTrait] | +| main.rs:2374:15:2374:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2374:31:2376:9 | { ... } | | {EXTERNAL LOCATION} | i64 | | main.rs:2375:13:2375:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:17:2375:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:30:2375:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:13:2376:13 | y | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:17:2376:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2376:30:2376:33 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2377:13:2377:13 | z | | {EXTERNAL LOCATION} | i64 | -| main.rs:2377:22:2377:43 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2377:38:2377:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2378:9:2378:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2378:23:2378:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2378:30:2378:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2379:9:2379:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2379:23:2379:26 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2379:29:2379:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2380:9:2380:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2380:27:2380:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2380:34:2380:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2382:9:2382:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2382:17:2382:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2383:9:2383:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2383:17:2383:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2384:9:2384:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2384:18:2384:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2385:9:2385:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2385:18:2385:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2386:9:2386:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2386:25:2386:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2387:9:2387:30 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2387:25:2387:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2388:9:2388:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2388:25:2388:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2389:9:2389:29 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2389:25:2389:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2397:26:2399:9 | { ... } | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2398:13:2398:25 | MyCallable {...} | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2401:17:2401:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2401:17:2401:21 | SelfParam | TRef | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2401:31:2403:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2402:13:2402:13 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2402:13:2402:13 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2406:16:2513:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2409:9:2409:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2409:13:2409:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2409:18:2409:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2409:18:2409:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2409:19:2409:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2409:22:2409:22 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2409:25:2409:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2409:28:2409:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2410:9:2410:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2410:18:2410:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2410:18:2410:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2410:18:2410:41 | ... .map(...) | | {EXTERNAL LOCATION} | [;] | -| main.rs:2410:19:2410:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2410:22:2410:22 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2410:25:2410:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2410:32:2410:40 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | -| main.rs:2410:32:2410:40 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| main.rs:2410:40:2410:40 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2410:43:2410:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2411:9:2411:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2411:13:2411:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:18:2411:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2411:18:2411:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:18:2411:38 | ... .into_iter() | | {EXTERNAL LOCATION} | IntoIter | -| main.rs:2411:18:2411:38 | ... .into_iter() | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:19:2411:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:22:2411:22 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:25:2411:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2411:40:2411:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2413:13:2413:17 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2413:13:2413:17 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2413:13:2413:17 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | -| main.rs:2413:21:2413:31 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2413:21:2413:31 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2413:21:2413:31 | [...] | TArray | {EXTERNAL LOCATION} | u8 | -| main.rs:2413:22:2413:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2413:27:2413:27 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2413:27:2413:27 | 2 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2413:30:2413:30 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2413:30:2413:30 | 3 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2414:9:2414:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2414:13:2414:13 | u | | {EXTERNAL LOCATION} | i32 | -| main.rs:2414:13:2414:13 | u | | {EXTERNAL LOCATION} | u8 | -| main.rs:2414:18:2414:22 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2414:18:2414:22 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2414:18:2414:22 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | -| main.rs:2414:24:2414:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2416:13:2416:17 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2416:13:2416:17 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2416:21:2416:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2416:21:2416:29 | [1u16; 3] | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2416:22:2416:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2416:28:2416:28 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2417:9:2417:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2417:13:2417:13 | u | | {EXTERNAL LOCATION} | u16 | -| main.rs:2417:18:2417:22 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2417:18:2417:22 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2417:24:2417:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2419:13:2419:17 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2419:13:2419:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2419:26:2419:26 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2419:31:2419:39 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2419:31:2419:39 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2419:31:2419:39 | [...] | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2419:32:2419:32 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2419:32:2419:32 | 1 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2419:35:2419:35 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2419:35:2419:35 | 2 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2419:38:2419:38 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2419:38:2419:38 | 3 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2420:9:2420:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2420:13:2420:13 | u | | {EXTERNAL LOCATION} | u32 | -| main.rs:2420:18:2420:22 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2420:18:2420:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2420:24:2420:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2422:13:2422:17 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2422:13:2422:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2422:26:2422:26 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2422:31:2422:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2422:31:2422:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2422:31:2422:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2422:32:2422:32 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2422:32:2422:32 | 1 | | {EXTERNAL LOCATION} | u64 | -| main.rs:2422:35:2422:35 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2423:9:2423:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2423:13:2423:13 | u | | {EXTERNAL LOCATION} | u64 | -| main.rs:2423:18:2423:22 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2423:18:2423:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2423:24:2423:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2425:17:2425:24 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2425:17:2425:24 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2425:17:2425:24 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:28:2425:48 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2425:28:2425:48 | [...] | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2425:28:2425:48 | [...] | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:29:2425:33 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2425:29:2425:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:36:2425:40 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2425:36:2425:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2425:43:2425:47 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2425:43:2425:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2426:9:2426:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2426:13:2426:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:2426:13:2426:13 | s | TRef | {EXTERNAL LOCATION} | & | -| main.rs:2426:13:2426:13 | s | TRef.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2426:18:2426:26 | &strings1 | | {EXTERNAL LOCATION} | & | -| main.rs:2426:18:2426:26 | &strings1 | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2426:18:2426:26 | &strings1 | TRef.TArray | {EXTERNAL LOCATION} | & | -| main.rs:2426:18:2426:26 | &strings1 | TRef.TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2426:19:2426:26 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2426:19:2426:26 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2426:19:2426:26 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2426:28:2426:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2427:9:2427:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2427:13:2427:13 | s | | {EXTERNAL LOCATION} | &mut | -| main.rs:2427:13:2427:13 | s | TRefMut | {EXTERNAL LOCATION} | & | -| main.rs:2427:13:2427:13 | s | TRefMut.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2427:18:2427:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | -| main.rs:2427:18:2427:30 | &mut strings1 | TRefMut | {EXTERNAL LOCATION} | [;] | -| main.rs:2427:18:2427:30 | &mut strings1 | TRefMut.TArray | {EXTERNAL LOCATION} | & | -| main.rs:2427:18:2427:30 | &mut strings1 | TRefMut.TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2427:23:2427:30 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2427:23:2427:30 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2427:23:2427:30 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2427:32:2427:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2428:9:2428:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2428:13:2428:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:2428:13:2428:13 | s | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2428:18:2428:25 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2428:18:2428:25 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2428:18:2428:25 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2428:27:2428:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2430:13:2430:20 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2430:13:2430:20 | strings2 | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2431:9:2435:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2431:9:2435:9 | [...] | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2432:13:2432:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2432:26:2432:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2432:26:2432:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2433:13:2433:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2433:26:2433:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2433:26:2433:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2434:13:2434:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2434:26:2434:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2434:26:2434:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2436:9:2436:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2436:13:2436:13 | s | | {EXTERNAL LOCATION} | String | -| main.rs:2436:18:2436:25 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2436:18:2436:25 | strings2 | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2436:27:2436:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2438:13:2438:20 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2438:13:2438:20 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2438:13:2438:20 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | -| main.rs:2439:9:2443:9 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2439:9:2443:9 | &... | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2439:9:2443:9 | &... | TRef.TArray | {EXTERNAL LOCATION} | String | -| main.rs:2439:10:2443:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2439:10:2443:9 | [...] | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2440:13:2440:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2440:26:2440:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2440:26:2440:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2441:13:2441:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2441:26:2441:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2441:26:2441:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2442:13:2442:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2442:26:2442:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2442:26:2442:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2444:9:2444:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2444:13:2444:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:2444:13:2444:13 | s | TRef | {EXTERNAL LOCATION} | String | -| main.rs:2444:18:2444:25 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2444:18:2444:25 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2444:18:2444:25 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | -| main.rs:2444:27:2444:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2446:13:2446:21 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2446:13:2446:21 | callables | TArray | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2446:25:2446:81 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2446:25:2446:81 | [...] | TArray | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2446:26:2446:42 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2446:45:2446:61 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2446:64:2446:80 | ...::new(...) | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2447:9:2451:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2447:13:2447:13 | c | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2448:12:2448:20 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2448:12:2448:20 | callables | TArray | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2449:9:2451:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2450:17:2450:22 | result | | {EXTERNAL LOCATION} | i64 | -| main.rs:2450:26:2450:26 | c | | main.rs:2394:5:2394:24 | MyCallable | -| main.rs:2450:26:2450:33 | c.call() | | {EXTERNAL LOCATION} | i64 | -| main.rs:2455:9:2455:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2455:13:2455:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2455:18:2455:18 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2455:18:2455:22 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2455:18:2455:22 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2455:21:2455:22 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2455:24:2455:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2456:9:2456:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2456:13:2456:13 | u | | {EXTERNAL LOCATION} | Range | -| main.rs:2456:13:2456:13 | u | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2456:13:2456:13 | u | Idx | {EXTERNAL LOCATION} | u8 | -| main.rs:2456:18:2456:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2456:18:2456:26 | [...] | TArray | {EXTERNAL LOCATION} | Range | -| main.rs:2456:18:2456:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2456:18:2456:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | u8 | -| main.rs:2456:19:2456:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2456:19:2456:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2456:19:2456:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2456:19:2456:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | u8 | -| main.rs:2456:24:2456:25 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2456:24:2456:25 | 10 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2456:28:2456:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2457:13:2457:17 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2457:13:2457:17 | range | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2457:21:2457:21 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2457:21:2457:25 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2457:21:2457:25 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2457:24:2457:25 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2458:9:2458:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2458:13:2458:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2458:18:2458:22 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2458:18:2458:22 | range | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2458:24:2458:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2459:13:2459:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2459:26:2459:27 | .. | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2460:9:2460:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2460:18:2460:48 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2460:19:2460:36 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2460:19:2460:36 | [...] | TArray | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:20:2460:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:26:2460:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:32:2460:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2460:38:2460:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2460:50:2460:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2462:13:2462:18 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2462:13:2462:18 | range1 | Idx | {EXTERNAL LOCATION} | u16 | -| main.rs:2463:9:2466:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | -| main.rs:2463:9:2466:9 | ...::Range {...} | Idx | {EXTERNAL LOCATION} | u16 | -| main.rs:2464:20:2464:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2465:18:2465:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2467:9:2467:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2467:13:2467:13 | u | | {EXTERNAL LOCATION} | u16 | -| main.rs:2467:18:2467:23 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2467:18:2467:23 | range1 | Idx | {EXTERNAL LOCATION} | u16 | -| main.rs:2467:25:2467:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2471:13:2471:17 | vals3 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2471:21:2471:33 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2471:26:2471:26 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2471:29:2471:29 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2471:32:2471:32 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2472:9:2472:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2472:18:2472:22 | vals3 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2472:24:2472:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2474:13:2474:18 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2474:13:2474:18 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2474:13:2474:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2474:32:2474:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2474:32:2474:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2474:32:2474:43 | [...] | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2474:32:2474:52 | ... .to_vec() | | {EXTERNAL LOCATION} | Vec | -| main.rs:2474:32:2474:52 | ... .to_vec() | A | {EXTERNAL LOCATION} | Global | -| main.rs:2474:32:2474:52 | ... .to_vec() | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2474:33:2474:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2474:39:2474:39 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2474:42:2474:42 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2475:9:2475:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2475:13:2475:13 | u | | {EXTERNAL LOCATION} | u16 | -| main.rs:2475:18:2475:23 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2475:18:2475:23 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2475:18:2475:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2475:25:2475:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2477:22:2477:33 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2477:22:2477:33 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2477:22:2477:33 | [...] | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2477:23:2477:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2477:29:2477:29 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2477:32:2477:32 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2478:9:2478:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2478:25:2478:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2480:13:2480:17 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2480:13:2480:17 | vals5 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2480:13:2480:17 | vals5 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2480:13:2480:17 | vals5 | T | {EXTERNAL LOCATION} | u32 | -| main.rs:2480:21:2480:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2480:21:2480:43 | ...::from(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2480:21:2480:43 | ...::from(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2480:21:2480:43 | ...::from(...) | T | {EXTERNAL LOCATION} | u32 | -| main.rs:2480:31:2480:42 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2480:31:2480:42 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2480:31:2480:42 | [...] | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2480:32:2480:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2480:38:2480:38 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2480:41:2480:41 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2481:9:2481:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2481:13:2481:13 | u | | {EXTERNAL LOCATION} | i32 | -| main.rs:2481:13:2481:13 | u | | {EXTERNAL LOCATION} | u32 | -| main.rs:2481:18:2481:22 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2481:18:2481:22 | vals5 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2481:18:2481:22 | vals5 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2481:18:2481:22 | vals5 | T | {EXTERNAL LOCATION} | u32 | -| main.rs:2481:24:2481:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2483:13:2483:17 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2483:13:2483:17 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2483:13:2483:17 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2483:13:2483:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2483:32:2483:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2483:32:2483:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2483:32:2483:43 | [...] | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2483:32:2483:60 | ... .collect() | | {EXTERNAL LOCATION} | Vec | -| main.rs:2483:32:2483:60 | ... .collect() | A | {EXTERNAL LOCATION} | Global | -| main.rs:2483:32:2483:60 | ... .collect() | T | {EXTERNAL LOCATION} | & | -| main.rs:2483:32:2483:60 | ... .collect() | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2483:33:2483:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | -| main.rs:2483:39:2483:39 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2483:42:2483:42 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2484:9:2484:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2484:13:2484:13 | u | | {EXTERNAL LOCATION} | & | -| main.rs:2484:13:2484:13 | u | TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2484:18:2484:22 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2484:18:2484:22 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2484:18:2484:22 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2484:18:2484:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2484:24:2484:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2486:17:2486:21 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2486:17:2486:21 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2486:17:2486:21 | vals7 | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2486:25:2486:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2486:25:2486:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2486:25:2486:34 | ...::new(...) | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2487:9:2487:13 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2487:9:2487:13 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2487:9:2487:13 | vals7 | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2487:9:2487:23 | vals7.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2487:20:2487:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2488:9:2488:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2488:13:2488:13 | u | | {EXTERNAL LOCATION} | u8 | -| main.rs:2488:18:2488:22 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2488:18:2488:22 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2488:18:2488:22 | vals7 | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2488:24:2488:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2490:13:2490:19 | matrix1 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2490:23:2490:50 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2490:28:2490:37 | (...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2490:28:2490:37 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2490:33:2490:33 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2490:36:2490:36 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2490:40:2490:49 | (...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2490:40:2490:49 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2490:45:2490:45 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2490:48:2490:48 | 4 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2492:13:2492:13 | _ | | {EXTERNAL LOCATION} | () | -| main.rs:2492:17:2495:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2492:28:2492:34 | matrix1 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2492:36:2495:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2493:13:2494:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2493:29:2494:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2497:17:2497:20 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2497:17:2497:20 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2497:17:2497:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2497:17:2497:20 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2497:17:2497:20 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2497:17:2497:20 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2497:17:2497:20 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2497:24:2497:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2497:24:2497:55 | ...::new(...) | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2497:24:2497:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2497:24:2497:55 | ...::new(...) | V | {EXTERNAL LOCATION} | Box | -| main.rs:2497:24:2497:55 | ...::new(...) | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2497:24:2497:55 | ...::new(...) | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2497:24:2497:55 | ...::new(...) | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2498:9:2498:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2498:9:2498:12 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2498:9:2498:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2498:9:2498:12 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2498:9:2498:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2498:9:2498:12 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2498:9:2498:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2498:9:2498:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2498:9:2498:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | -| main.rs:2498:9:2498:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2498:9:2498:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | -| main.rs:2498:9:2498:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2498:21:2498:21 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2498:24:2498:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2498:24:2498:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2498:24:2498:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:2498:24:2498:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2498:33:2498:37 | "one" | | {EXTERNAL LOCATION} | & | -| main.rs:2498:33:2498:37 | "one" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2499:9:2499:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2499:9:2499:12 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2499:9:2499:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2499:9:2499:12 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2499:9:2499:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2499:9:2499:12 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2499:9:2499:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2499:9:2499:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2499:9:2499:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | -| main.rs:2499:9:2499:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2499:9:2499:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | -| main.rs:2499:9:2499:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2499:21:2499:21 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2499:24:2499:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2499:24:2499:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2499:24:2499:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:2499:24:2499:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2499:33:2499:37 | "two" | | {EXTERNAL LOCATION} | & | -| main.rs:2499:33:2499:37 | "two" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2500:9:2500:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2500:13:2500:15 | key | | {EXTERNAL LOCATION} | & | -| main.rs:2500:13:2500:15 | key | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2500:20:2500:23 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2500:20:2500:23 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2500:20:2500:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2500:20:2500:23 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2500:20:2500:23 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2500:20:2500:23 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2500:20:2500:23 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2500:20:2500:30 | map1.keys() | | {EXTERNAL LOCATION} | Keys | -| main.rs:2500:20:2500:30 | map1.keys() | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2500:20:2500:30 | map1.keys() | V | {EXTERNAL LOCATION} | Box | -| main.rs:2500:20:2500:30 | map1.keys() | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2500:20:2500:30 | map1.keys() | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2500:20:2500:30 | map1.keys() | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2500:32:2500:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2501:9:2501:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2501:13:2501:17 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2501:13:2501:17 | value | TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2501:13:2501:17 | value | TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2501:13:2501:17 | value | TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2501:13:2501:17 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2501:22:2501:25 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2501:22:2501:25 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2501:22:2501:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2501:22:2501:25 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2501:22:2501:25 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2501:22:2501:25 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2501:22:2501:25 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2501:22:2501:34 | map1.values() | | {EXTERNAL LOCATION} | Values | -| main.rs:2501:22:2501:34 | map1.values() | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2501:22:2501:34 | map1.values() | V | {EXTERNAL LOCATION} | Box | -| main.rs:2501:22:2501:34 | map1.values() | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2501:22:2501:34 | map1.values() | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2501:22:2501:34 | map1.values() | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2501:36:2501:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2502:9:2502:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2502:13:2502:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2502:13:2502:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | -| main.rs:2502:13:2502:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2502:13:2502:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | -| main.rs:2502:13:2502:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2502:13:2502:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2502:13:2502:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2502:13:2502:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2502:14:2502:16 | key | | {EXTERNAL LOCATION} | & | -| main.rs:2502:14:2502:16 | key | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2502:19:2502:23 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2502:19:2502:23 | value | TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2502:19:2502:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2502:19:2502:23 | value | TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2502:19:2502:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2502:29:2502:32 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2502:29:2502:32 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2502:29:2502:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2502:29:2502:32 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2502:29:2502:32 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2502:29:2502:32 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2502:29:2502:32 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2502:29:2502:39 | map1.iter() | | {EXTERNAL LOCATION} | Iter | -| main.rs:2502:29:2502:39 | map1.iter() | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2502:29:2502:39 | map1.iter() | V | {EXTERNAL LOCATION} | Box | -| main.rs:2502:29:2502:39 | map1.iter() | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2502:29:2502:39 | map1.iter() | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2502:29:2502:39 | map1.iter() | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2502:41:2502:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2503:9:2503:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2503:13:2503:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2503:13:2503:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | -| main.rs:2503:13:2503:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2503:13:2503:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | -| main.rs:2503:13:2503:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2503:13:2503:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2503:13:2503:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2503:13:2503:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2503:14:2503:16 | key | | {EXTERNAL LOCATION} | & | -| main.rs:2503:14:2503:16 | key | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2503:19:2503:23 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2503:19:2503:23 | value | TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2503:19:2503:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2503:19:2503:23 | value | TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2503:19:2503:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2503:29:2503:33 | &map1 | | {EXTERNAL LOCATION} | & | -| main.rs:2503:29:2503:33 | &map1 | TRef | {EXTERNAL LOCATION} | HashMap | -| main.rs:2503:29:2503:33 | &map1 | TRef.K | {EXTERNAL LOCATION} | i32 | -| main.rs:2503:29:2503:33 | &map1 | TRef.S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2503:29:2503:33 | &map1 | TRef.V | {EXTERNAL LOCATION} | Box | -| main.rs:2503:29:2503:33 | &map1 | TRef.V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2503:29:2503:33 | &map1 | TRef.V.T | {EXTERNAL LOCATION} | & | -| main.rs:2503:29:2503:33 | &map1 | TRef.V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2503:30:2503:33 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2503:30:2503:33 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2503:30:2503:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2503:30:2503:33 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2503:30:2503:33 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2503:30:2503:33 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2503:30:2503:33 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2503:35:2503:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2507:17:2507:17 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2507:26:2507:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2507:26:2507:26 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2509:13:2509:13 | _ | | {EXTERNAL LOCATION} | () | -| main.rs:2509:17:2512:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2509:23:2509:23 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2509:23:2509:28 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:2509:27:2509:28 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2510:9:2512:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2511:13:2511:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2511:13:2511:18 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:2511:18:2511:18 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2523:40:2525:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2523:40:2525:9 | { ... } | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2523:40:2525:9 | { ... } | T.T | main.rs:2522:10:2522:19 | T | -| main.rs:2524:13:2524:16 | None | | {EXTERNAL LOCATION} | Option | -| main.rs:2524:13:2524:16 | None | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2524:13:2524:16 | None | T.T | main.rs:2522:10:2522:19 | T | -| main.rs:2527:30:2529:9 | { ... } | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2527:30:2529:9 | { ... } | T | main.rs:2522:10:2522:19 | T | -| main.rs:2528:13:2528:28 | S1(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2528:13:2528:28 | S1(...) | T | main.rs:2522:10:2522:19 | T | -| main.rs:2528:16:2528:27 | ...::default(...) | | main.rs:2522:10:2522:19 | T | -| main.rs:2531:19:2531:22 | SelfParam | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2531:19:2531:22 | SelfParam | T | main.rs:2522:10:2522:19 | T | -| main.rs:2531:33:2533:9 | { ... } | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2531:33:2533:9 | { ... } | T | main.rs:2522:10:2522:19 | T | -| main.rs:2532:13:2532:16 | self | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2532:13:2532:16 | self | T | main.rs:2522:10:2522:19 | T | -| main.rs:2544:15:2544:15 | x | | main.rs:2544:12:2544:12 | T | -| main.rs:2544:26:2546:5 | { ... } | | main.rs:2544:12:2544:12 | T | -| main.rs:2545:9:2545:9 | x | | main.rs:2544:12:2544:12 | T | -| main.rs:2548:16:2570:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2549:13:2549:14 | x1 | | {EXTERNAL LOCATION} | Option | -| main.rs:2549:13:2549:14 | x1 | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2549:13:2549:14 | x1 | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2549:34:2549:48 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2550:13:2550:14 | x2 | | {EXTERNAL LOCATION} | Option | -| main.rs:2550:13:2550:14 | x2 | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2550:13:2550:14 | x2 | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2550:18:2550:38 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2551:13:2551:14 | x3 | | {EXTERNAL LOCATION} | Option | -| main.rs:2551:13:2551:14 | x3 | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2551:13:2551:14 | x3 | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | T | main.rs:2517:5:2517:20 | S1 | -| main.rs:2551:18:2551:32 | ...::assoc_fun(...) | T.T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2552:13:2552:14 | x4 | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2552:13:2552:14 | x4 | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2552:18:2552:48 | ...::method(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2552:18:2552:48 | ...::method(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2552:35:2552:47 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2552:35:2552:47 | ...::default(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2553:13:2553:14 | x5 | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2553:13:2553:14 | x5 | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2553:18:2553:42 | ...::method(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2553:18:2553:42 | ...::method(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2553:29:2553:41 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2553:29:2553:41 | ...::default(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2554:13:2554:14 | x6 | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2554:13:2554:14 | x6 | T4 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2554:18:2554:45 | S4::<...>(...) | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2554:18:2554:45 | S4::<...>(...) | T4 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2554:27:2554:44 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2555:13:2555:14 | x7 | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2555:13:2555:14 | x7 | T4 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2555:18:2555:23 | S4(...) | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2555:18:2555:23 | S4(...) | T4 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2555:21:2555:22 | S2 | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2556:13:2556:14 | x8 | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2556:13:2556:14 | x8 | T4 | {EXTERNAL LOCATION} | i32 | -| main.rs:2556:18:2556:22 | S4(...) | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2556:18:2556:22 | S4(...) | T4 | {EXTERNAL LOCATION} | i32 | -| main.rs:2556:21:2556:21 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2557:13:2557:14 | x9 | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2557:13:2557:14 | x9 | T4 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2557:18:2557:34 | S4(...) | | main.rs:2538:5:2538:27 | S4 | -| main.rs:2557:18:2557:34 | S4(...) | T4 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2557:21:2557:33 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2558:13:2558:15 | x10 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2558:13:2558:15 | x10 | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2558:19:2561:9 | S5::<...> {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2558:19:2561:9 | S5::<...> {...} | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2560:20:2560:37 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2562:13:2562:15 | x11 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2562:13:2562:15 | x11 | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2562:19:2562:34 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2562:19:2562:34 | S5 {...} | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2562:31:2562:32 | S2 | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2563:13:2563:15 | x12 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2563:13:2563:15 | x12 | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:2563:19:2563:33 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2563:19:2563:33 | S5 {...} | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:2563:31:2563:31 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2564:13:2564:15 | x13 | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2564:13:2564:15 | x13 | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2564:19:2567:9 | S5 {...} | | main.rs:2540:5:2542:5 | S5 | -| main.rs:2564:19:2567:9 | S5 {...} | T5 | main.rs:2519:5:2520:14 | S2 | -| main.rs:2566:20:2566:32 | ...::default(...) | | main.rs:2519:5:2520:14 | S2 | -| main.rs:2568:13:2568:15 | x14 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2568:19:2568:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2568:30:2568:47 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2569:13:2569:15 | x15 | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2569:13:2569:15 | x15 | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2569:19:2569:37 | ...::default(...) | | main.rs:2517:5:2517:20 | S1 | -| main.rs:2569:19:2569:37 | ...::default(...) | T | main.rs:2519:5:2520:14 | S2 | -| main.rs:2578:35:2580:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2578:35:2580:9 | { ... } | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2578:35:2580:9 | { ... } | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2579:13:2579:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2579:13:2579:26 | TupleExpr | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2579:13:2579:26 | TupleExpr | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2579:14:2579:18 | S1 {...} | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2579:21:2579:25 | S1 {...} | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2581:16:2581:19 | SelfParam | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2581:22:2581:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2584:16:2618:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2585:13:2585:13 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2585:13:2585:13 | a | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2585:13:2585:13 | a | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2585:17:2585:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2585:17:2585:30 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2585:17:2585:30 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:17:2586:17 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2586:17:2586:17 | b | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:17:2586:17 | b | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:21:2586:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2586:21:2586:34 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2586:21:2586:34 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:13:2587:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2587:13:2587:18 | TuplePat | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:13:2587:18 | TuplePat | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:14:2587:14 | c | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:17:2587:17 | d | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:22:2587:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2587:22:2587:35 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2587:22:2587:35 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:13:2588:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2588:13:2588:22 | TuplePat | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:13:2588:22 | TuplePat | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:18:2588:18 | e | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:21:2588:21 | f | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:26:2588:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2588:26:2588:39 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2588:26:2588:39 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:13:2589:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2589:13:2589:26 | TuplePat | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:13:2589:26 | TuplePat | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:18:2589:18 | g | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:25:2589:25 | h | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:30:2589:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2589:30:2589:43 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2589:30:2589:43 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2591:9:2591:9 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2591:9:2591:9 | a | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2591:9:2591:9 | a | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2591:9:2591:11 | a.0 | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2591:9:2591:17 | ... .foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2592:9:2592:9 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2592:9:2592:9 | b | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2592:9:2592:9 | b | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2592:9:2592:11 | b.1 | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2592:9:2592:17 | ... .foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2593:9:2593:9 | c | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2593:9:2593:15 | c.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2594:9:2594:9 | d | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2594:9:2594:15 | d.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2595:9:2595:9 | e | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2595:9:2595:15 | e.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2596:9:2596:9 | f | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2596:9:2596:15 | f.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2597:9:2597:9 | g | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2597:9:2597:15 | g.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2598:9:2598:9 | h | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2598:9:2598:15 | h.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2603:13:2603:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2603:17:2603:34 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2604:13:2604:13 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2604:17:2604:34 | ...::default(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2605:13:2605:16 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2605:13:2605:16 | pair | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2605:13:2605:16 | pair | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2605:20:2605:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2605:20:2605:25 | TupleExpr | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2605:20:2605:25 | TupleExpr | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2605:21:2605:21 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2605:24:2605:24 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2606:13:2606:13 | i | | {EXTERNAL LOCATION} | i64 | -| main.rs:2606:22:2606:25 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2606:22:2606:25 | pair | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2606:22:2606:25 | pair | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2606:22:2606:27 | pair.0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2607:13:2607:13 | j | | {EXTERNAL LOCATION} | bool | -| main.rs:2607:23:2607:26 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2607:23:2607:26 | pair | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2607:23:2607:26 | pair | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2607:23:2607:28 | pair.1 | | {EXTERNAL LOCATION} | bool | -| main.rs:2609:13:2609:16 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2609:13:2609:16 | pair | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2609:13:2609:16 | pair | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2609:20:2609:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2609:20:2609:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2609:20:2609:32 | ... .into() | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2609:20:2609:32 | ... .into() | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2609:20:2609:32 | ... .into() | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2609:21:2609:21 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2609:24:2609:24 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2610:9:2613:9 | match pair { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2610:15:2610:18 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2610:15:2610:18 | pair | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2610:15:2610:18 | pair | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2611:13:2611:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2611:13:2611:18 | TuplePat | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2611:13:2611:18 | TuplePat | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2611:14:2611:14 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2611:17:2611:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2611:23:2611:42 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2611:30:2611:41 | "unexpected" | | {EXTERNAL LOCATION} | & | -| main.rs:2611:30:2611:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2611:30:2611:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2611:30:2611:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2612:13:2612:13 | _ | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2612:13:2612:13 | _ | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2612:13:2612:13 | _ | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2612:18:2612:35 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2612:25:2612:34 | "expected" | | {EXTERNAL LOCATION} | & | -| main.rs:2612:25:2612:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2612:25:2612:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2612:25:2612:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2614:13:2614:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2614:17:2614:20 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2614:17:2614:20 | pair | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2614:17:2614:20 | pair | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2614:17:2614:22 | pair.0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2616:13:2616:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2616:13:2616:13 | y | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2616:13:2616:13 | y | TRef.T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2616:13:2616:13 | y | TRef.T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2616:17:2616:31 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2616:17:2616:31 | &... | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2616:17:2616:31 | &... | TRef.T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2616:17:2616:31 | &... | TRef.T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2616:18:2616:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2616:18:2616:31 | ...::get_pair(...) | T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2616:18:2616:31 | ...::get_pair(...) | T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2617:9:2617:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2617:9:2617:9 | y | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2617:9:2617:9 | y | TRef.T0 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2617:9:2617:9 | y | TRef.T1 | main.rs:2574:5:2575:16 | S1 | -| main.rs:2617:9:2617:11 | y.0 | | main.rs:2574:5:2575:16 | S1 | -| main.rs:2617:9:2617:17 | ... .foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2623:27:2645:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2624:13:2624:23 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2624:13:2624:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2624:13:2624:23 | boxed_value | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2624:27:2624:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2624:27:2624:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2624:27:2624:42 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2624:36:2624:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2627:9:2635:9 | match boxed_value { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2627:15:2627:25 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2627:15:2627:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2627:15:2627:25 | boxed_value | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2628:13:2628:19 | box 100 | | {EXTERNAL LOCATION} | Box | -| main.rs:2628:13:2628:19 | box 100 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2628:13:2628:19 | box 100 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2628:17:2628:19 | 100 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2628:24:2630:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2629:17:2629:37 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2629:26:2629:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2629:26:2629:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2629:26:2629:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2629:26:2629:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2629:26:2629:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2631:13:2631:17 | box ... | | {EXTERNAL LOCATION} | Box | -| main.rs:2631:13:2631:17 | box ... | A | {EXTERNAL LOCATION} | Global | -| main.rs:2631:13:2631:17 | box ... | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2631:22:2634:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2633:17:2633:52 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2633:26:2633:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2633:26:2633:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2633:26:2633:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2633:26:2633:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2633:26:2633:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2638:13:2638:22 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2638:13:2638:22 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:13:2638:22 | nested_box | T | {EXTERNAL LOCATION} | Box | -| main.rs:2638:13:2638:22 | nested_box | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:13:2638:22 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2638:26:2638:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2638:26:2638:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:26:2638:50 | ...::new(...) | T | {EXTERNAL LOCATION} | Box | -| main.rs:2638:26:2638:50 | ...::new(...) | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:26:2638:50 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2638:35:2638:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2638:35:2638:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2638:35:2638:49 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2638:44:2638:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2639:9:2644:9 | match nested_box { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2639:15:2639:24 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2639:15:2639:24 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2639:15:2639:24 | nested_box | T | {EXTERNAL LOCATION} | Box | -| main.rs:2639:15:2639:24 | nested_box | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2639:15:2639:24 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2640:13:2640:21 | box ... | | {EXTERNAL LOCATION} | Box | -| main.rs:2640:13:2640:21 | box ... | A | {EXTERNAL LOCATION} | Global | -| main.rs:2640:13:2640:21 | box ... | T | {EXTERNAL LOCATION} | Box | -| main.rs:2640:13:2640:21 | box ... | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2640:13:2640:21 | box ... | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2640:26:2643:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2642:17:2642:60 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2642:26:2642:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2642:26:2642:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2642:26:2642:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2642:26:2642:59 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2642:26:2642:59 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2654:36:2656:9 | { ... } | | main.rs:2651:5:2651:22 | Path | -| main.rs:2655:13:2655:19 | Path {...} | | main.rs:2651:5:2651:22 | Path | -| main.rs:2658:29:2658:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2658:29:2658:33 | SelfParam | TRef | main.rs:2651:5:2651:22 | Path | -| main.rs:2658:59:2660:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:2658:59:2660:9 | { ... } | E | {EXTERNAL LOCATION} | () | -| main.rs:2658:59:2660:9 | { ... } | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2659:13:2659:30 | Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2659:13:2659:30 | Ok(...) | E | {EXTERNAL LOCATION} | () | -| main.rs:2659:13:2659:30 | Ok(...) | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2659:16:2659:29 | ...::new(...) | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2666:39:2668:9 | { ... } | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2667:13:2667:22 | PathBuf {...} | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2676:18:2676:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2676:18:2676:22 | SelfParam | TRef | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2676:34:2680:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2676:34:2680:9 | { ... } | TRef | main.rs:2651:5:2651:22 | Path | -| main.rs:2678:33:2678:43 | ...::new(...) | | main.rs:2651:5:2651:22 | Path | -| main.rs:2679:13:2679:17 | &path | | {EXTERNAL LOCATION} | & | -| main.rs:2679:13:2679:17 | &path | TRef | main.rs:2651:5:2651:22 | Path | -| main.rs:2679:14:2679:17 | path | | main.rs:2651:5:2651:22 | Path | -| main.rs:2683:16:2691:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2684:13:2684:17 | path1 | | main.rs:2651:5:2651:22 | Path | -| main.rs:2684:21:2684:31 | ...::new(...) | | main.rs:2651:5:2651:22 | Path | -| main.rs:2685:13:2685:17 | path2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2685:13:2685:17 | path2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2685:13:2685:17 | path2 | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2685:21:2685:25 | path1 | | main.rs:2651:5:2651:22 | Path | -| main.rs:2685:21:2685:40 | path1.canonicalize() | | {EXTERNAL LOCATION} | Result | -| main.rs:2685:21:2685:40 | path1.canonicalize() | E | {EXTERNAL LOCATION} | () | -| main.rs:2685:21:2685:40 | path1.canonicalize() | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2686:13:2686:17 | path3 | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2686:21:2686:25 | path2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2686:21:2686:25 | path2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2686:21:2686:25 | path2 | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2686:21:2686:34 | path2.unwrap() | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2688:13:2688:20 | pathbuf1 | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2688:24:2688:37 | ...::new(...) | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2689:13:2689:20 | pathbuf2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2689:13:2689:20 | pathbuf2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2689:13:2689:20 | pathbuf2 | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2689:24:2689:31 | pathbuf1 | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2689:24:2689:46 | pathbuf1.canonicalize() | | {EXTERNAL LOCATION} | Result | -| main.rs:2689:24:2689:46 | pathbuf1.canonicalize() | E | {EXTERNAL LOCATION} | () | -| main.rs:2689:24:2689:46 | pathbuf1.canonicalize() | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2690:13:2690:20 | pathbuf3 | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2690:24:2690:31 | pathbuf2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2690:24:2690:31 | pathbuf2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2690:24:2690:31 | pathbuf2 | T | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2690:24:2690:40 | pathbuf2.unwrap() | | main.rs:2663:5:2663:25 | PathBuf | -| main.rs:2696:14:2696:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2696:14:2696:18 | SelfParam | TRef | main.rs:2695:5:2697:5 | Self [trait MyTrait] | -| main.rs:2703:14:2703:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2703:14:2703:18 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2703:14:2703:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2703:28:2705:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2704:13:2704:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2704:13:2704:16 | self | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2704:13:2704:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2704:13:2704:18 | self.0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2709:14:2709:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2709:14:2709:18 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2709:14:2709:18 | SelfParam | TRef.T | main.rs:2699:5:2700:19 | S | -| main.rs:2709:14:2709:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2709:28:2711:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2710:13:2710:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2710:13:2710:16 | self | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2710:13:2710:16 | self | TRef.T | main.rs:2699:5:2700:19 | S | -| main.rs:2710:13:2710:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2710:13:2710:18 | self.0 | | main.rs:2699:5:2700:19 | S | -| main.rs:2710:13:2710:18 | self.0 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2710:13:2710:21 | ... .0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2715:15:2715:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2715:15:2715:19 | SelfParam | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2715:15:2715:19 | SelfParam | TRef.T | main.rs:2714:10:2714:16 | T | -| main.rs:2715:33:2717:9 | { ... } | | main.rs:2699:5:2700:19 | S | -| main.rs:2715:33:2717:9 | { ... } | T | main.rs:2699:5:2700:19 | S | -| main.rs:2715:33:2717:9 | { ... } | T.T | main.rs:2714:10:2714:16 | T | -| main.rs:2716:13:2716:24 | S(...) | | main.rs:2699:5:2700:19 | S | -| main.rs:2716:13:2716:24 | S(...) | T | main.rs:2699:5:2700:19 | S | -| main.rs:2716:13:2716:24 | S(...) | T.T | main.rs:2714:10:2714:16 | T | -| main.rs:2716:15:2716:23 | S(...) | | main.rs:2699:5:2700:19 | S | -| main.rs:2716:15:2716:23 | S(...) | T | main.rs:2714:10:2714:16 | T | -| main.rs:2716:17:2716:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2716:17:2716:20 | self | TRef | main.rs:2699:5:2700:19 | S | -| main.rs:2716:17:2716:20 | self | TRef.T | main.rs:2714:10:2714:16 | T | -| main.rs:2716:17:2716:22 | self.0 | | main.rs:2714:10:2714:16 | T | -| main.rs:2720:14:2720:14 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2720:48:2737:5 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2720:48:2737:5 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2720:48:2737:5 | { ... } | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2720:48:2737:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2721:13:2721:13 | x | | main.rs:2699:5:2700:19 | S | -| main.rs:2721:13:2721:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2721:17:2726:9 | if b {...} else {...} | | main.rs:2699:5:2700:19 | S | -| main.rs:2721:17:2726:9 | if b {...} else {...} | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2721:20:2721:20 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2721:22:2724:9 | { ... } | | main.rs:2699:5:2700:19 | S | -| main.rs:2721:22:2724:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2722:17:2722:17 | y | | main.rs:2699:5:2700:19 | S | -| main.rs:2722:17:2722:17 | y | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2722:21:2722:38 | ...::default(...) | | main.rs:2699:5:2700:19 | S | -| main.rs:2722:21:2722:38 | ...::default(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2723:13:2723:13 | y | | main.rs:2699:5:2700:19 | S | -| main.rs:2723:13:2723:13 | y | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2724:16:2726:9 | { ... } | | main.rs:2699:5:2700:19 | S | -| main.rs:2724:16:2726:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2725:13:2725:16 | S(...) | | main.rs:2699:5:2700:19 | S | -| main.rs:2725:13:2725:16 | S(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2725:15:2725:15 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2730:13:2730:13 | x | | main.rs:2699:5:2700:19 | S | -| main.rs:2730:13:2730:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2730:17:2730:20 | S(...) | | main.rs:2699:5:2700:19 | S | -| main.rs:2730:17:2730:20 | S(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2730:19:2730:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2731:9:2736:9 | if b {...} else {...} | | {EXTERNAL LOCATION} | Box | -| main.rs:2731:9:2736:9 | if b {...} else {...} | A | {EXTERNAL LOCATION} | Global | -| main.rs:2731:9:2736:9 | if b {...} else {...} | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2731:9:2736:9 | if b {...} else {...} | T | main.rs:2699:5:2700:19 | S | -| main.rs:2731:9:2736:9 | if b {...} else {...} | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2731:9:2736:9 | if b {...} else {...} | T.T | main.rs:2699:5:2700:19 | S | -| main.rs:2731:9:2736:9 | if b {...} else {...} | T.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2731:9:2736:9 | if b {...} else {...} | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2731:12:2731:12 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2731:14:2734:9 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2731:14:2734:9 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2731:14:2734:9 | { ... } | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2731:14:2734:9 | { ... } | T | main.rs:2699:5:2700:19 | S | -| main.rs:2731:14:2734:9 | { ... } | T.T | main.rs:2699:5:2700:19 | S | -| main.rs:2731:14:2734:9 | { ... } | T.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2731:14:2734:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2732:17:2732:17 | x | | main.rs:2699:5:2700:19 | S | -| main.rs:2732:17:2732:17 | x | T | main.rs:2699:5:2700:19 | S | -| main.rs:2732:17:2732:17 | x | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2732:21:2732:21 | x | | main.rs:2699:5:2700:19 | S | -| main.rs:2732:21:2732:21 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2732:21:2732:26 | x.m2() | | main.rs:2699:5:2700:19 | S | -| main.rs:2732:21:2732:26 | x.m2() | T | main.rs:2699:5:2700:19 | S | -| main.rs:2732:21:2732:26 | x.m2() | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2733:13:2733:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2733:13:2733:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2733:13:2733:23 | ...::new(...) | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2733:13:2733:23 | ...::new(...) | T | main.rs:2699:5:2700:19 | S | -| main.rs:2733:13:2733:23 | ...::new(...) | T.T | main.rs:2699:5:2700:19 | S | -| main.rs:2733:13:2733:23 | ...::new(...) | T.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2733:13:2733:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2733:22:2733:22 | x | | main.rs:2699:5:2700:19 | S | -| main.rs:2733:22:2733:22 | x | T | main.rs:2699:5:2700:19 | S | -| main.rs:2733:22:2733:22 | x | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2734:16:2736:9 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2734:16:2736:9 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2734:16:2736:9 | { ... } | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2734:16:2736:9 | { ... } | T | main.rs:2699:5:2700:19 | S | -| main.rs:2734:16:2736:9 | { ... } | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2734:16:2736:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2735:13:2735:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2735:13:2735:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2735:13:2735:23 | ...::new(...) | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2735:13:2735:23 | ...::new(...) | T | main.rs:2699:5:2700:19 | S | -| main.rs:2735:13:2735:23 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2735:13:2735:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2735:22:2735:22 | x | | main.rs:2699:5:2700:19 | S | -| main.rs:2735:22:2735:22 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2741:22:2745:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2742:18:2742:18 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2742:33:2744:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2743:13:2743:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2743:13:2743:17 | ... + ... | | {EXTERNAL LOCATION} | i32 | -| main.rs:2743:17:2743:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2750:11:2750:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2750:30:2758:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2752:13:2752:13 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2752:17:2756:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2753:13:2755:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2753:16:2753:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2753:21:2755:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2754:24:2754:25 | 12 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2757:9:2757:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2761:20:2768:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2764:26:2764:27 | 12 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2766:9:2766:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2766:18:2766:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2766:18:2766:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2766:18:2766:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2766:18:2766:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2766:18:2766:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2767:9:2767:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2770:20:2772:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2771:16:2771:16 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2775:11:2775:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2775:30:2783:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2776:13:2776:13 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2776:17:2780:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2777:13:2779:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2777:16:2777:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2777:21:2779:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2778:24:2778:25 | 12 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2781:9:2781:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2781:18:2781:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2781:18:2781:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2781:18:2781:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2781:18:2781:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2781:18:2781:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2781:29:2781:29 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2782:9:2782:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2787:16:2834:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2788:13:2788:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2788:13:2788:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2788:17:2788:20 | None | | {EXTERNAL LOCATION} | Option | -| main.rs:2788:17:2788:20 | None | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2789:13:2789:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2789:13:2789:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2789:30:2789:30 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2789:30:2789:30 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2790:13:2790:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2790:13:2790:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2790:17:2790:35 | ...::None | | {EXTERNAL LOCATION} | Option | -| main.rs:2790:17:2790:35 | ...::None | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2791:13:2791:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2791:13:2791:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2791:17:2791:35 | ...::None::<...> | | {EXTERNAL LOCATION} | Option | -| main.rs:2791:17:2791:35 | ...::None::<...> | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2793:26:2793:28 | opt | | {EXTERNAL LOCATION} | Option | -| main.rs:2793:26:2793:28 | opt | T | main.rs:2793:23:2793:23 | T | -| main.rs:2793:42:2793:42 | x | | main.rs:2793:23:2793:23 | T | -| main.rs:2793:48:2793:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2795:13:2795:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2795:13:2795:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2795:17:2795:20 | None | | {EXTERNAL LOCATION} | Option | -| main.rs:2795:17:2795:20 | None | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2796:9:2796:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2796:20:2796:20 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2796:20:2796:20 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2796:23:2796:23 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2803:13:2803:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2803:13:2803:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2803:13:2803:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2803:17:2803:39 | ...::A {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2803:17:2803:39 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2803:17:2803:39 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2803:37:2803:37 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2804:13:2804:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2804:13:2804:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2804:13:2804:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2804:40:2804:40 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2804:40:2804:40 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2804:40:2804:40 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2805:13:2805:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2805:13:2805:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2805:13:2805:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2805:17:2805:52 | ...::A {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2805:17:2805:52 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2805:17:2805:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2805:50:2805:50 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2807:13:2807:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2807:13:2807:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2807:13:2807:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2807:17:2809:9 | ...::B::<...> {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2807:17:2809:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2807:17:2809:9 | ...::B::<...> {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2808:20:2808:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2811:29:2811:29 | e | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2811:29:2811:29 | e | T1 | main.rs:2811:26:2811:26 | T | -| main.rs:2811:29:2811:29 | e | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2811:53:2811:53 | x | | main.rs:2811:26:2811:26 | T | -| main.rs:2811:59:2811:60 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2814:13:2814:13 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2814:13:2814:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2814:13:2814:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2814:17:2816:9 | ...::B {...} | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2814:17:2816:9 | ...::B {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2814:17:2816:9 | ...::B {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2815:20:2815:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2817:9:2817:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2817:23:2817:23 | x | | main.rs:2798:9:2801:9 | MyEither | -| main.rs:2817:23:2817:23 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2817:23:2817:23 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2817:26:2817:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2819:13:2819:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2819:13:2819:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2375:13:2375:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:2375:17:2375:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2379:15:2379:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2379:32:2381:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2380:13:2380:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2380:13:2380:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:2380:17:2380:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2386:15:2386:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2386:31:2388:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2387:13:2387:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2387:13:2387:13 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2391:15:2391:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2391:32:2393:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:2392:13:2392:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2396:16:2421:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2397:13:2397:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2397:22:2397:23 | 73 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2397:22:2397:23 | 73 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2398:9:2398:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2398:9:2398:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2398:18:2398:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2399:9:2399:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2399:9:2399:23 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2399:18:2399:22 | &5i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2399:18:2399:22 | &5i64 | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2399:19:2399:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2400:9:2400:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2400:9:2400:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2400:18:2400:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2402:9:2402:15 | S(...) | | main.rs:2286:5:2286:19 | S | +| main.rs:2402:9:2402:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2402:9:2402:31 | ... .my_add(...) | | main.rs:2286:5:2286:19 | S | +| main.rs:2402:11:2402:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2402:24:2402:30 | S(...) | | main.rs:2286:5:2286:19 | S | +| main.rs:2402:24:2402:30 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2402:26:2402:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2403:9:2403:15 | S(...) | | main.rs:2286:5:2286:19 | S | +| main.rs:2403:9:2403:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2403:11:2403:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2403:24:2403:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2404:9:2404:15 | S(...) | | main.rs:2286:5:2286:19 | S | +| main.rs:2404:9:2404:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2404:9:2404:29 | ... .my_add(...) | | main.rs:2286:5:2286:19 | S | +| main.rs:2404:11:2404:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2404:24:2404:28 | &3i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2404:24:2404:28 | &3i64 | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2404:25:2404:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2406:13:2406:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2406:17:2406:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2406:30:2406:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2407:13:2407:13 | y | | {EXTERNAL LOCATION} | i64 | +| main.rs:2407:17:2407:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2407:30:2407:33 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2408:13:2408:13 | z | | {EXTERNAL LOCATION} | i64 | +| main.rs:2408:22:2408:43 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2408:38:2408:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2409:9:2409:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2409:23:2409:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2409:30:2409:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2410:9:2410:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2410:23:2410:26 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2410:29:2410:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2411:9:2411:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2411:27:2411:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2411:34:2411:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2413:9:2413:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2413:17:2413:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2414:9:2414:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2414:17:2414:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2415:9:2415:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2415:18:2415:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2416:9:2416:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2416:18:2416:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2417:9:2417:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2417:25:2417:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2418:9:2418:30 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2418:25:2418:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2419:9:2419:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2419:25:2419:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2420:9:2420:29 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2420:25:2420:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2428:26:2430:9 | { ... } | | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2429:13:2429:25 | MyCallable {...} | | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2432:17:2432:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2432:17:2432:21 | SelfParam | TRef | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2432:31:2434:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2433:13:2433:13 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2433:13:2433:13 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2437:16:2544:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2440:9:2440:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2440:13:2440:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2440:18:2440:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2440:18:2440:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2440:19:2440:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2440:22:2440:22 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2440:25:2440:25 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2440:28:2440:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2441:9:2441:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2441:18:2441:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2441:18:2441:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2441:18:2441:41 | ... .map(...) | | {EXTERNAL LOCATION} | [;] | +| main.rs:2441:19:2441:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2441:22:2441:22 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2441:25:2441:25 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2441:32:2441:40 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| main.rs:2441:32:2441:40 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:2441:40:2441:40 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2441:43:2441:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2442:9:2442:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2442:13:2442:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2442:18:2442:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2442:18:2442:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2442:18:2442:38 | ... .into_iter() | | {EXTERNAL LOCATION} | IntoIter | +| main.rs:2442:18:2442:38 | ... .into_iter() | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2442:19:2442:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2442:22:2442:22 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2442:25:2442:25 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2442:40:2442:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2444:13:2444:17 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2444:13:2444:17 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2444:13:2444:17 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | +| main.rs:2444:21:2444:31 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2444:21:2444:31 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2444:21:2444:31 | [...] | TArray | {EXTERNAL LOCATION} | u8 | +| main.rs:2444:22:2444:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2444:27:2444:27 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2444:27:2444:27 | 2 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2444:30:2444:30 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2444:30:2444:30 | 3 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2445:9:2445:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2445:13:2445:13 | u | | {EXTERNAL LOCATION} | i32 | +| main.rs:2445:13:2445:13 | u | | {EXTERNAL LOCATION} | u8 | +| main.rs:2445:18:2445:22 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2445:18:2445:22 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2445:18:2445:22 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | +| main.rs:2445:24:2445:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2447:13:2447:17 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2447:13:2447:17 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2447:21:2447:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2447:21:2447:29 | [1u16; 3] | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2447:22:2447:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2447:28:2447:28 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2448:9:2448:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2448:13:2448:13 | u | | {EXTERNAL LOCATION} | u16 | +| main.rs:2448:18:2448:22 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2448:18:2448:22 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2448:24:2448:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2450:13:2450:17 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2450:13:2450:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2450:26:2450:26 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2450:31:2450:39 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2450:31:2450:39 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2450:31:2450:39 | [...] | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2450:32:2450:32 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2450:32:2450:32 | 1 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2450:35:2450:35 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2450:35:2450:35 | 2 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2450:38:2450:38 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2450:38:2450:38 | 3 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2451:9:2451:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2451:13:2451:13 | u | | {EXTERNAL LOCATION} | u32 | +| main.rs:2451:18:2451:22 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2451:18:2451:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2451:24:2451:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2453:13:2453:17 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2453:13:2453:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2453:26:2453:26 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2453:31:2453:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2453:31:2453:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2453:31:2453:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2453:32:2453:32 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2453:32:2453:32 | 1 | | {EXTERNAL LOCATION} | u64 | +| main.rs:2453:35:2453:35 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2454:9:2454:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2454:13:2454:13 | u | | {EXTERNAL LOCATION} | u64 | +| main.rs:2454:18:2454:22 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2454:18:2454:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2454:24:2454:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2456:17:2456:24 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2456:17:2456:24 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2456:17:2456:24 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2456:28:2456:48 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2456:28:2456:48 | [...] | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2456:28:2456:48 | [...] | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2456:29:2456:33 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2456:29:2456:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2456:36:2456:40 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2456:36:2456:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2456:43:2456:47 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2456:43:2456:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2457:9:2457:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2457:13:2457:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:2457:13:2457:13 | s | TRef | {EXTERNAL LOCATION} | & | +| main.rs:2457:13:2457:13 | s | TRef.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2457:18:2457:26 | &strings1 | | {EXTERNAL LOCATION} | & | +| main.rs:2457:18:2457:26 | &strings1 | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2457:18:2457:26 | &strings1 | TRef.TArray | {EXTERNAL LOCATION} | & | +| main.rs:2457:18:2457:26 | &strings1 | TRef.TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2457:19:2457:26 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2457:19:2457:26 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2457:19:2457:26 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2457:28:2457:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2458:9:2458:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2458:13:2458:13 | s | | {EXTERNAL LOCATION} | &mut | +| main.rs:2458:13:2458:13 | s | TRefMut | {EXTERNAL LOCATION} | & | +| main.rs:2458:13:2458:13 | s | TRefMut.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2458:18:2458:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | +| main.rs:2458:18:2458:30 | &mut strings1 | TRefMut | {EXTERNAL LOCATION} | [;] | +| main.rs:2458:18:2458:30 | &mut strings1 | TRefMut.TArray | {EXTERNAL LOCATION} | & | +| main.rs:2458:18:2458:30 | &mut strings1 | TRefMut.TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2458:23:2458:30 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2458:23:2458:30 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2458:23:2458:30 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2458:32:2458:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2459:9:2459:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2459:13:2459:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:2459:13:2459:13 | s | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2459:18:2459:25 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2459:18:2459:25 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2459:18:2459:25 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2459:27:2459:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2461:13:2461:20 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2461:13:2461:20 | strings2 | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2462:9:2466:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2462:9:2466:9 | [...] | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2463:13:2463:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2463:26:2463:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2463:26:2463:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2464:13:2464:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2464:26:2464:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2464:26:2464:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2465:13:2465:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2465:26:2465:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2465:26:2465:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2467:9:2467:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2467:13:2467:13 | s | | {EXTERNAL LOCATION} | String | +| main.rs:2467:18:2467:25 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2467:18:2467:25 | strings2 | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2467:27:2467:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2469:13:2469:20 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2469:13:2469:20 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2469:13:2469:20 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | +| main.rs:2470:9:2474:9 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2470:9:2474:9 | &... | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2470:9:2474:9 | &... | TRef.TArray | {EXTERNAL LOCATION} | String | +| main.rs:2470:10:2474:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2470:10:2474:9 | [...] | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2471:13:2471:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2471:26:2471:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2471:26:2471:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2472:13:2472:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2472:26:2472:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2472:26:2472:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2473:13:2473:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2473:26:2473:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2473:26:2473:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2475:9:2475:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2475:13:2475:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:2475:13:2475:13 | s | TRef | {EXTERNAL LOCATION} | String | +| main.rs:2475:18:2475:25 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2475:18:2475:25 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2475:18:2475:25 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | +| main.rs:2475:27:2475:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2477:13:2477:21 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2477:13:2477:21 | callables | TArray | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2477:25:2477:81 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2477:25:2477:81 | [...] | TArray | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2477:26:2477:42 | ...::new(...) | | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2477:45:2477:61 | ...::new(...) | | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2477:64:2477:80 | ...::new(...) | | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2478:9:2482:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2478:13:2478:13 | c | | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2479:12:2479:20 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2479:12:2479:20 | callables | TArray | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2480:9:2482:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2481:17:2481:22 | result | | {EXTERNAL LOCATION} | i64 | +| main.rs:2481:26:2481:26 | c | | main.rs:2425:5:2425:24 | MyCallable | +| main.rs:2481:26:2481:33 | c.call() | | {EXTERNAL LOCATION} | i64 | +| main.rs:2486:9:2486:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2486:13:2486:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2486:18:2486:18 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2486:18:2486:22 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2486:18:2486:22 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2486:21:2486:22 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2486:24:2486:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2487:9:2487:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2487:13:2487:13 | u | | {EXTERNAL LOCATION} | Range | +| main.rs:2487:13:2487:13 | u | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2487:13:2487:13 | u | Idx | {EXTERNAL LOCATION} | u8 | +| main.rs:2487:18:2487:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2487:18:2487:26 | [...] | TArray | {EXTERNAL LOCATION} | Range | +| main.rs:2487:18:2487:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2487:18:2487:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | u8 | +| main.rs:2487:19:2487:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2487:19:2487:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2487:19:2487:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2487:19:2487:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | u8 | +| main.rs:2487:24:2487:25 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2487:24:2487:25 | 10 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2487:28:2487:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2488:13:2488:17 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2488:13:2488:17 | range | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2488:21:2488:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2488:21:2488:25 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2488:21:2488:25 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2488:24:2488:25 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2489:9:2489:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2489:13:2489:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2489:18:2489:22 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2489:18:2489:22 | range | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2489:24:2489:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2490:13:2490:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2490:26:2490:27 | .. | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2491:9:2491:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2491:18:2491:48 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2491:19:2491:36 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2491:19:2491:36 | [...] | TArray | {EXTERNAL LOCATION} | i64 | +| main.rs:2491:20:2491:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2491:26:2491:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2491:32:2491:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2491:38:2491:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2491:50:2491:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2493:13:2493:18 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2493:13:2493:18 | range1 | Idx | {EXTERNAL LOCATION} | u16 | +| main.rs:2494:9:2497:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | +| main.rs:2494:9:2497:9 | ...::Range {...} | Idx | {EXTERNAL LOCATION} | u16 | +| main.rs:2495:20:2495:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2496:18:2496:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2498:9:2498:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2498:13:2498:13 | u | | {EXTERNAL LOCATION} | u16 | +| main.rs:2498:18:2498:23 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2498:18:2498:23 | range1 | Idx | {EXTERNAL LOCATION} | u16 | +| main.rs:2498:25:2498:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2502:13:2502:17 | vals3 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2502:21:2502:33 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2502:26:2502:26 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2502:29:2502:29 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2502:32:2502:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2503:9:2503:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2503:18:2503:22 | vals3 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2503:24:2503:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2505:13:2505:18 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2505:13:2505:18 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2505:13:2505:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2505:32:2505:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2505:32:2505:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2505:32:2505:43 | [...] | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2505:32:2505:52 | ... .to_vec() | | {EXTERNAL LOCATION} | Vec | +| main.rs:2505:32:2505:52 | ... .to_vec() | A | {EXTERNAL LOCATION} | Global | +| main.rs:2505:32:2505:52 | ... .to_vec() | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2505:33:2505:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2505:39:2505:39 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2505:42:2505:42 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2506:9:2506:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2506:13:2506:13 | u | | {EXTERNAL LOCATION} | u16 | +| main.rs:2506:18:2506:23 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2506:18:2506:23 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2506:18:2506:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2506:25:2506:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2508:22:2508:33 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2508:22:2508:33 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2508:22:2508:33 | [...] | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2508:23:2508:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2508:29:2508:29 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2508:32:2508:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2509:9:2509:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2509:25:2509:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2511:13:2511:17 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2511:13:2511:17 | vals5 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2511:13:2511:17 | vals5 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2511:13:2511:17 | vals5 | T | {EXTERNAL LOCATION} | u32 | +| main.rs:2511:21:2511:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2511:21:2511:43 | ...::from(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2511:21:2511:43 | ...::from(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2511:21:2511:43 | ...::from(...) | T | {EXTERNAL LOCATION} | u32 | +| main.rs:2511:31:2511:42 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2511:31:2511:42 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2511:31:2511:42 | [...] | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2511:32:2511:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2511:38:2511:38 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2511:41:2511:41 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2512:9:2512:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2512:13:2512:13 | u | | {EXTERNAL LOCATION} | i32 | +| main.rs:2512:13:2512:13 | u | | {EXTERNAL LOCATION} | u32 | +| main.rs:2512:18:2512:22 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2512:18:2512:22 | vals5 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2512:18:2512:22 | vals5 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2512:18:2512:22 | vals5 | T | {EXTERNAL LOCATION} | u32 | +| main.rs:2512:24:2512:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2514:13:2514:17 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2514:13:2514:17 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2514:13:2514:17 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2514:13:2514:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2514:32:2514:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2514:32:2514:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2514:32:2514:43 | [...] | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2514:32:2514:60 | ... .collect() | | {EXTERNAL LOCATION} | Vec | +| main.rs:2514:32:2514:60 | ... .collect() | A | {EXTERNAL LOCATION} | Global | +| main.rs:2514:32:2514:60 | ... .collect() | T | {EXTERNAL LOCATION} | & | +| main.rs:2514:32:2514:60 | ... .collect() | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2514:33:2514:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | +| main.rs:2514:39:2514:39 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2514:42:2514:42 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2515:9:2515:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2515:13:2515:13 | u | | {EXTERNAL LOCATION} | & | +| main.rs:2515:13:2515:13 | u | TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2515:18:2515:22 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2515:18:2515:22 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2515:18:2515:22 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2515:18:2515:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2515:24:2515:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2517:17:2517:21 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2517:17:2517:21 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2517:17:2517:21 | vals7 | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2517:25:2517:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2517:25:2517:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2517:25:2517:34 | ...::new(...) | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2518:9:2518:13 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2518:9:2518:13 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2518:9:2518:13 | vals7 | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2518:9:2518:23 | vals7.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2518:20:2518:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2519:9:2519:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2519:13:2519:13 | u | | {EXTERNAL LOCATION} | u8 | +| main.rs:2519:18:2519:22 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2519:18:2519:22 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2519:18:2519:22 | vals7 | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2519:24:2519:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2521:13:2521:19 | matrix1 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2521:23:2521:50 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2521:28:2521:37 | (...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2521:28:2521:37 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2521:33:2521:33 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2521:36:2521:36 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2521:40:2521:49 | (...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2521:40:2521:49 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2521:45:2521:45 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2521:48:2521:48 | 4 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2523:13:2523:13 | _ | | {EXTERNAL LOCATION} | () | +| main.rs:2523:17:2526:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2523:28:2523:34 | matrix1 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2523:36:2526:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2524:13:2525:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2524:29:2525:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2528:17:2528:20 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2528:17:2528:20 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2528:17:2528:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2528:17:2528:20 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2528:17:2528:20 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2528:17:2528:20 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2528:17:2528:20 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2528:24:2528:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2528:24:2528:55 | ...::new(...) | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2528:24:2528:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2528:24:2528:55 | ...::new(...) | V | {EXTERNAL LOCATION} | Box | +| main.rs:2528:24:2528:55 | ...::new(...) | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2528:24:2528:55 | ...::new(...) | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2528:24:2528:55 | ...::new(...) | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2529:9:2529:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2529:9:2529:12 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2529:9:2529:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2529:9:2529:12 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2529:9:2529:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2529:9:2529:12 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2529:9:2529:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2529:9:2529:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2529:9:2529:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | +| main.rs:2529:9:2529:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2529:9:2529:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | +| main.rs:2529:9:2529:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2529:21:2529:21 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2529:24:2529:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2529:24:2529:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2529:24:2529:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:2529:24:2529:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2529:33:2529:37 | "one" | | {EXTERNAL LOCATION} | & | +| main.rs:2529:33:2529:37 | "one" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2530:9:2530:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2530:9:2530:12 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2530:9:2530:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2530:9:2530:12 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2530:9:2530:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2530:9:2530:12 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2530:9:2530:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2530:9:2530:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2530:9:2530:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | +| main.rs:2530:9:2530:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2530:9:2530:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | +| main.rs:2530:9:2530:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2530:21:2530:21 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2530:24:2530:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2530:24:2530:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2530:24:2530:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:2530:24:2530:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2530:33:2530:37 | "two" | | {EXTERNAL LOCATION} | & | +| main.rs:2530:33:2530:37 | "two" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2531:9:2531:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2531:13:2531:15 | key | | {EXTERNAL LOCATION} | & | +| main.rs:2531:13:2531:15 | key | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2531:20:2531:23 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2531:20:2531:23 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2531:20:2531:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2531:20:2531:23 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2531:20:2531:23 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2531:20:2531:23 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2531:20:2531:23 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2531:20:2531:30 | map1.keys() | | {EXTERNAL LOCATION} | Keys | +| main.rs:2531:20:2531:30 | map1.keys() | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2531:20:2531:30 | map1.keys() | V | {EXTERNAL LOCATION} | Box | +| main.rs:2531:20:2531:30 | map1.keys() | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2531:20:2531:30 | map1.keys() | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2531:20:2531:30 | map1.keys() | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2531:32:2531:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2532:9:2532:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2532:13:2532:17 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2532:13:2532:17 | value | TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2532:13:2532:17 | value | TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2532:13:2532:17 | value | TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2532:13:2532:17 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2532:22:2532:25 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2532:22:2532:25 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2532:22:2532:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2532:22:2532:25 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2532:22:2532:25 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2532:22:2532:25 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2532:22:2532:25 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2532:22:2532:34 | map1.values() | | {EXTERNAL LOCATION} | Values | +| main.rs:2532:22:2532:34 | map1.values() | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2532:22:2532:34 | map1.values() | V | {EXTERNAL LOCATION} | Box | +| main.rs:2532:22:2532:34 | map1.values() | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2532:22:2532:34 | map1.values() | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2532:22:2532:34 | map1.values() | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2532:36:2532:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2533:9:2533:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2533:13:2533:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2533:13:2533:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | +| main.rs:2533:13:2533:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2533:13:2533:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | +| main.rs:2533:13:2533:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2533:13:2533:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2533:13:2533:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2533:13:2533:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2533:14:2533:16 | key | | {EXTERNAL LOCATION} | & | +| main.rs:2533:14:2533:16 | key | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2533:19:2533:23 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2533:19:2533:23 | value | TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2533:19:2533:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2533:19:2533:23 | value | TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2533:19:2533:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2533:29:2533:32 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2533:29:2533:32 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2533:29:2533:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2533:29:2533:32 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2533:29:2533:32 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2533:29:2533:32 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2533:29:2533:32 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2533:29:2533:39 | map1.iter() | | {EXTERNAL LOCATION} | Iter | +| main.rs:2533:29:2533:39 | map1.iter() | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2533:29:2533:39 | map1.iter() | V | {EXTERNAL LOCATION} | Box | +| main.rs:2533:29:2533:39 | map1.iter() | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2533:29:2533:39 | map1.iter() | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2533:29:2533:39 | map1.iter() | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2533:41:2533:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2534:9:2534:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2534:13:2534:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2534:13:2534:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | +| main.rs:2534:13:2534:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2534:13:2534:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | +| main.rs:2534:13:2534:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2534:13:2534:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2534:13:2534:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2534:13:2534:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2534:14:2534:16 | key | | {EXTERNAL LOCATION} | & | +| main.rs:2534:14:2534:16 | key | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2534:19:2534:23 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2534:19:2534:23 | value | TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2534:19:2534:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2534:19:2534:23 | value | TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2534:19:2534:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2534:29:2534:33 | &map1 | | {EXTERNAL LOCATION} | & | +| main.rs:2534:29:2534:33 | &map1 | TRef | {EXTERNAL LOCATION} | HashMap | +| main.rs:2534:29:2534:33 | &map1 | TRef.K | {EXTERNAL LOCATION} | i32 | +| main.rs:2534:29:2534:33 | &map1 | TRef.S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2534:29:2534:33 | &map1 | TRef.V | {EXTERNAL LOCATION} | Box | +| main.rs:2534:29:2534:33 | &map1 | TRef.V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2534:29:2534:33 | &map1 | TRef.V.T | {EXTERNAL LOCATION} | & | +| main.rs:2534:29:2534:33 | &map1 | TRef.V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2534:30:2534:33 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2534:30:2534:33 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2534:30:2534:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2534:30:2534:33 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2534:30:2534:33 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2534:30:2534:33 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2534:30:2534:33 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2534:35:2534:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2538:17:2538:17 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2538:26:2538:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2538:26:2538:26 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2540:13:2540:13 | _ | | {EXTERNAL LOCATION} | () | +| main.rs:2540:17:2543:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2540:23:2540:23 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2540:23:2540:28 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:2540:27:2540:28 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2541:9:2543:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2542:13:2542:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2542:13:2542:18 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:2542:18:2542:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2554:40:2556:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:2554:40:2556:9 | { ... } | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2554:40:2556:9 | { ... } | T.T | main.rs:2553:10:2553:19 | T | +| main.rs:2555:13:2555:16 | None | | {EXTERNAL LOCATION} | Option | +| main.rs:2555:13:2555:16 | None | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2555:13:2555:16 | None | T.T | main.rs:2553:10:2553:19 | T | +| main.rs:2558:30:2560:9 | { ... } | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2558:30:2560:9 | { ... } | T | main.rs:2553:10:2553:19 | T | +| main.rs:2559:13:2559:28 | S1(...) | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2559:13:2559:28 | S1(...) | T | main.rs:2553:10:2553:19 | T | +| main.rs:2559:16:2559:27 | ...::default(...) | | main.rs:2553:10:2553:19 | T | +| main.rs:2562:19:2562:22 | SelfParam | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2562:19:2562:22 | SelfParam | T | main.rs:2553:10:2553:19 | T | +| main.rs:2562:33:2564:9 | { ... } | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2562:33:2564:9 | { ... } | T | main.rs:2553:10:2553:19 | T | +| main.rs:2563:13:2563:16 | self | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2563:13:2563:16 | self | T | main.rs:2553:10:2553:19 | T | +| main.rs:2575:15:2575:15 | x | | main.rs:2575:12:2575:12 | T | +| main.rs:2575:26:2577:5 | { ... } | | main.rs:2575:12:2575:12 | T | +| main.rs:2576:9:2576:9 | x | | main.rs:2575:12:2575:12 | T | +| main.rs:2579:16:2601:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2580:13:2580:14 | x1 | | {EXTERNAL LOCATION} | Option | +| main.rs:2580:13:2580:14 | x1 | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2580:13:2580:14 | x1 | T.T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2580:34:2580:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2580:34:2580:48 | ...::assoc_fun(...) | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2580:34:2580:48 | ...::assoc_fun(...) | T.T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2581:13:2581:14 | x2 | | {EXTERNAL LOCATION} | Option | +| main.rs:2581:13:2581:14 | x2 | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2581:13:2581:14 | x2 | T.T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2581:18:2581:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2581:18:2581:38 | ...::assoc_fun(...) | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2581:18:2581:38 | ...::assoc_fun(...) | T.T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2582:13:2582:14 | x3 | | {EXTERNAL LOCATION} | Option | +| main.rs:2582:13:2582:14 | x3 | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2582:13:2582:14 | x3 | T.T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2582:18:2582:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2582:18:2582:32 | ...::assoc_fun(...) | T | main.rs:2548:5:2548:20 | S1 | +| main.rs:2582:18:2582:32 | ...::assoc_fun(...) | T.T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2583:13:2583:14 | x4 | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2583:13:2583:14 | x4 | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2583:18:2583:48 | ...::method(...) | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2583:18:2583:48 | ...::method(...) | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2583:35:2583:47 | ...::default(...) | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2583:35:2583:47 | ...::default(...) | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2584:13:2584:14 | x5 | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2584:13:2584:14 | x5 | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2584:18:2584:42 | ...::method(...) | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2584:18:2584:42 | ...::method(...) | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2584:29:2584:41 | ...::default(...) | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2584:29:2584:41 | ...::default(...) | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2585:13:2585:14 | x6 | | main.rs:2569:5:2569:27 | S4 | +| main.rs:2585:13:2585:14 | x6 | T4 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2585:18:2585:45 | S4::<...>(...) | | main.rs:2569:5:2569:27 | S4 | +| main.rs:2585:18:2585:45 | S4::<...>(...) | T4 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2585:27:2585:44 | ...::default(...) | | main.rs:2550:5:2551:14 | S2 | +| main.rs:2586:13:2586:14 | x7 | | main.rs:2569:5:2569:27 | S4 | +| main.rs:2586:13:2586:14 | x7 | T4 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2586:18:2586:23 | S4(...) | | main.rs:2569:5:2569:27 | S4 | +| main.rs:2586:18:2586:23 | S4(...) | T4 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2586:21:2586:22 | S2 | | main.rs:2550:5:2551:14 | S2 | +| main.rs:2587:13:2587:14 | x8 | | main.rs:2569:5:2569:27 | S4 | +| main.rs:2587:13:2587:14 | x8 | T4 | {EXTERNAL LOCATION} | i32 | +| main.rs:2587:18:2587:22 | S4(...) | | main.rs:2569:5:2569:27 | S4 | +| main.rs:2587:18:2587:22 | S4(...) | T4 | {EXTERNAL LOCATION} | i32 | +| main.rs:2587:21:2587:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2588:13:2588:14 | x9 | | main.rs:2569:5:2569:27 | S4 | +| main.rs:2588:13:2588:14 | x9 | T4 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2588:18:2588:34 | S4(...) | | main.rs:2569:5:2569:27 | S4 | +| main.rs:2588:18:2588:34 | S4(...) | T4 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2588:21:2588:33 | ...::default(...) | | main.rs:2550:5:2551:14 | S2 | +| main.rs:2589:13:2589:15 | x10 | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2589:13:2589:15 | x10 | T5 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2589:19:2592:9 | S5::<...> {...} | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2589:19:2592:9 | S5::<...> {...} | T5 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2591:20:2591:37 | ...::default(...) | | main.rs:2550:5:2551:14 | S2 | +| main.rs:2593:13:2593:15 | x11 | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2593:13:2593:15 | x11 | T5 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2593:19:2593:34 | S5 {...} | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2593:19:2593:34 | S5 {...} | T5 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2593:31:2593:32 | S2 | | main.rs:2550:5:2551:14 | S2 | +| main.rs:2594:13:2594:15 | x12 | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2594:13:2594:15 | x12 | T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:2594:19:2594:33 | S5 {...} | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2594:19:2594:33 | S5 {...} | T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:2594:31:2594:31 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2595:13:2595:15 | x13 | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2595:13:2595:15 | x13 | T5 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2595:19:2598:9 | S5 {...} | | main.rs:2571:5:2573:5 | S5 | +| main.rs:2595:19:2598:9 | S5 {...} | T5 | main.rs:2550:5:2551:14 | S2 | +| main.rs:2597:20:2597:32 | ...::default(...) | | main.rs:2550:5:2551:14 | S2 | +| main.rs:2599:13:2599:15 | x14 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2599:19:2599:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2599:30:2599:47 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2600:13:2600:15 | x15 | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2600:13:2600:15 | x15 | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2600:19:2600:37 | ...::default(...) | | main.rs:2548:5:2548:20 | S1 | +| main.rs:2600:19:2600:37 | ...::default(...) | T | main.rs:2550:5:2551:14 | S2 | +| main.rs:2609:35:2611:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2609:35:2611:9 | { ... } | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2609:35:2611:9 | { ... } | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2610:13:2610:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2610:13:2610:26 | TupleExpr | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2610:13:2610:26 | TupleExpr | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2610:14:2610:18 | S1 {...} | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2610:21:2610:25 | S1 {...} | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2612:16:2612:19 | SelfParam | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2612:22:2612:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2615:16:2649:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2616:13:2616:13 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2616:13:2616:13 | a | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2616:13:2616:13 | a | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2616:17:2616:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2616:17:2616:30 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2616:17:2616:30 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2617:17:2617:17 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2617:17:2617:17 | b | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2617:17:2617:17 | b | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2617:21:2617:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2617:21:2617:34 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2617:21:2617:34 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2618:13:2618:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2618:13:2618:18 | TuplePat | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2618:13:2618:18 | TuplePat | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2618:14:2618:14 | c | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2618:17:2618:17 | d | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2618:22:2618:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2618:22:2618:35 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2618:22:2618:35 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2619:13:2619:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2619:13:2619:22 | TuplePat | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2619:13:2619:22 | TuplePat | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2619:18:2619:18 | e | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2619:21:2619:21 | f | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2619:26:2619:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2619:26:2619:39 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2619:26:2619:39 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2620:13:2620:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2620:13:2620:26 | TuplePat | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2620:13:2620:26 | TuplePat | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2620:18:2620:18 | g | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2620:25:2620:25 | h | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2620:30:2620:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2620:30:2620:43 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2620:30:2620:43 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2622:9:2622:9 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2622:9:2622:9 | a | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2622:9:2622:9 | a | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2622:9:2622:11 | a.0 | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2622:9:2622:17 | ... .foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2623:9:2623:9 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2623:9:2623:9 | b | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2623:9:2623:9 | b | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2623:9:2623:11 | b.1 | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2623:9:2623:17 | ... .foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2624:9:2624:9 | c | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2624:9:2624:15 | c.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2625:9:2625:9 | d | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2625:9:2625:15 | d.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2626:9:2626:9 | e | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2626:9:2626:15 | e.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2627:9:2627:9 | f | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2627:9:2627:15 | f.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2628:9:2628:9 | g | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2628:9:2628:15 | g.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2629:9:2629:9 | h | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2629:9:2629:15 | h.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2634:13:2634:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2634:17:2634:34 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2635:13:2635:13 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2635:17:2635:34 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2636:13:2636:16 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2636:13:2636:16 | pair | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2636:13:2636:16 | pair | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2636:20:2636:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2636:20:2636:25 | TupleExpr | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2636:20:2636:25 | TupleExpr | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2636:21:2636:21 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2636:24:2636:24 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2637:13:2637:13 | i | | {EXTERNAL LOCATION} | i64 | +| main.rs:2637:22:2637:25 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2637:22:2637:25 | pair | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2637:22:2637:25 | pair | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2637:22:2637:27 | pair.0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2638:13:2638:13 | j | | {EXTERNAL LOCATION} | bool | +| main.rs:2638:23:2638:26 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2638:23:2638:26 | pair | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2638:23:2638:26 | pair | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2638:23:2638:28 | pair.1 | | {EXTERNAL LOCATION} | bool | +| main.rs:2640:13:2640:16 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2640:13:2640:16 | pair | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2640:13:2640:16 | pair | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2640:20:2640:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2640:20:2640:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2640:20:2640:32 | ... .into() | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2640:20:2640:32 | ... .into() | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2640:20:2640:32 | ... .into() | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2640:21:2640:21 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2640:24:2640:24 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2641:9:2644:9 | match pair { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2641:15:2641:18 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2641:15:2641:18 | pair | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2641:15:2641:18 | pair | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2642:13:2642:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2642:13:2642:18 | TuplePat | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2642:13:2642:18 | TuplePat | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2642:14:2642:14 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2642:17:2642:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2642:23:2642:42 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2642:30:2642:41 | "unexpected" | | {EXTERNAL LOCATION} | & | +| main.rs:2642:30:2642:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2642:30:2642:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2642:30:2642:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2643:13:2643:13 | _ | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2643:13:2643:13 | _ | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2643:13:2643:13 | _ | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2643:18:2643:35 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2643:25:2643:34 | "expected" | | {EXTERNAL LOCATION} | & | +| main.rs:2643:25:2643:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2643:25:2643:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2643:25:2643:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2645:13:2645:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2645:17:2645:20 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2645:17:2645:20 | pair | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2645:17:2645:20 | pair | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2645:17:2645:22 | pair.0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2647:13:2647:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2647:13:2647:13 | y | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2647:13:2647:13 | y | TRef.T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2647:13:2647:13 | y | TRef.T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2647:17:2647:31 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2647:17:2647:31 | &... | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2647:17:2647:31 | &... | TRef.T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2647:17:2647:31 | &... | TRef.T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2647:18:2647:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2647:18:2647:31 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2647:18:2647:31 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2648:9:2648:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2648:9:2648:9 | y | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2648:9:2648:9 | y | TRef.T0 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2648:9:2648:9 | y | TRef.T1 | main.rs:2605:5:2606:16 | S1 | +| main.rs:2648:9:2648:11 | y.0 | | main.rs:2605:5:2606:16 | S1 | +| main.rs:2648:9:2648:17 | ... .foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2654:27:2676:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2655:13:2655:23 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2655:13:2655:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2655:13:2655:23 | boxed_value | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2655:27:2655:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2655:27:2655:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2655:27:2655:42 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2655:36:2655:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2658:9:2666:9 | match boxed_value { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2658:15:2658:25 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2658:15:2658:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2658:15:2658:25 | boxed_value | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2659:13:2659:19 | box 100 | | {EXTERNAL LOCATION} | Box | +| main.rs:2659:13:2659:19 | box 100 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2659:13:2659:19 | box 100 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2659:17:2659:19 | 100 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2659:24:2661:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2660:17:2660:37 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2660:26:2660:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2660:26:2660:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2660:26:2660:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2660:26:2660:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2660:26:2660:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2662:13:2662:17 | box ... | | {EXTERNAL LOCATION} | Box | +| main.rs:2662:13:2662:17 | box ... | A | {EXTERNAL LOCATION} | Global | +| main.rs:2662:13:2662:17 | box ... | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2662:22:2665:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2664:17:2664:52 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2664:26:2664:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2664:26:2664:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2664:26:2664:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2664:26:2664:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2664:26:2664:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2669:13:2669:22 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2669:13:2669:22 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2669:13:2669:22 | nested_box | T | {EXTERNAL LOCATION} | Box | +| main.rs:2669:13:2669:22 | nested_box | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2669:13:2669:22 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2669:26:2669:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2669:26:2669:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2669:26:2669:50 | ...::new(...) | T | {EXTERNAL LOCATION} | Box | +| main.rs:2669:26:2669:50 | ...::new(...) | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2669:26:2669:50 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2669:35:2669:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2669:35:2669:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2669:35:2669:49 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2669:44:2669:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2670:9:2675:9 | match nested_box { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2670:15:2670:24 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2670:15:2670:24 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2670:15:2670:24 | nested_box | T | {EXTERNAL LOCATION} | Box | +| main.rs:2670:15:2670:24 | nested_box | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2670:15:2670:24 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2671:13:2671:21 | box ... | | {EXTERNAL LOCATION} | Box | +| main.rs:2671:13:2671:21 | box ... | A | {EXTERNAL LOCATION} | Global | +| main.rs:2671:13:2671:21 | box ... | T | {EXTERNAL LOCATION} | Box | +| main.rs:2671:13:2671:21 | box ... | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2671:13:2671:21 | box ... | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2671:26:2674:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2673:17:2673:60 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2673:26:2673:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2673:26:2673:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2673:26:2673:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2673:26:2673:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2673:26:2673:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2685:36:2687:9 | { ... } | | main.rs:2682:5:2682:22 | Path | +| main.rs:2686:13:2686:19 | Path {...} | | main.rs:2682:5:2682:22 | Path | +| main.rs:2689:29:2689:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2689:29:2689:33 | SelfParam | TRef | main.rs:2682:5:2682:22 | Path | +| main.rs:2689:59:2691:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:2689:59:2691:9 | { ... } | E | {EXTERNAL LOCATION} | () | +| main.rs:2689:59:2691:9 | { ... } | T | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2690:13:2690:30 | Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2690:13:2690:30 | Ok(...) | E | {EXTERNAL LOCATION} | () | +| main.rs:2690:13:2690:30 | Ok(...) | T | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2690:16:2690:29 | ...::new(...) | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2697:39:2699:9 | { ... } | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2698:13:2698:22 | PathBuf {...} | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2707:18:2707:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2707:18:2707:22 | SelfParam | TRef | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2707:34:2711:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2707:34:2711:9 | { ... } | TRef | main.rs:2682:5:2682:22 | Path | +| main.rs:2709:33:2709:43 | ...::new(...) | | main.rs:2682:5:2682:22 | Path | +| main.rs:2710:13:2710:17 | &path | | {EXTERNAL LOCATION} | & | +| main.rs:2710:13:2710:17 | &path | TRef | main.rs:2682:5:2682:22 | Path | +| main.rs:2710:14:2710:17 | path | | main.rs:2682:5:2682:22 | Path | +| main.rs:2714:16:2722:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2715:13:2715:17 | path1 | | main.rs:2682:5:2682:22 | Path | +| main.rs:2715:21:2715:31 | ...::new(...) | | main.rs:2682:5:2682:22 | Path | +| main.rs:2716:13:2716:17 | path2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2716:13:2716:17 | path2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2716:13:2716:17 | path2 | T | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2716:21:2716:25 | path1 | | main.rs:2682:5:2682:22 | Path | +| main.rs:2716:21:2716:40 | path1.canonicalize() | | {EXTERNAL LOCATION} | Result | +| main.rs:2716:21:2716:40 | path1.canonicalize() | E | {EXTERNAL LOCATION} | () | +| main.rs:2716:21:2716:40 | path1.canonicalize() | T | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2717:13:2717:17 | path3 | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2717:21:2717:25 | path2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2717:21:2717:25 | path2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2717:21:2717:25 | path2 | T | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2717:21:2717:34 | path2.unwrap() | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2719:13:2719:20 | pathbuf1 | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2719:24:2719:37 | ...::new(...) | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2720:13:2720:20 | pathbuf2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2720:13:2720:20 | pathbuf2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2720:13:2720:20 | pathbuf2 | T | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2720:24:2720:31 | pathbuf1 | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2720:24:2720:46 | pathbuf1.canonicalize() | | {EXTERNAL LOCATION} | Result | +| main.rs:2720:24:2720:46 | pathbuf1.canonicalize() | E | {EXTERNAL LOCATION} | () | +| main.rs:2720:24:2720:46 | pathbuf1.canonicalize() | T | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2721:13:2721:20 | pathbuf3 | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2721:24:2721:31 | pathbuf2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2721:24:2721:31 | pathbuf2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2721:24:2721:31 | pathbuf2 | T | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2721:24:2721:40 | pathbuf2.unwrap() | | main.rs:2694:5:2694:25 | PathBuf | +| main.rs:2727:14:2727:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2727:14:2727:18 | SelfParam | TRef | main.rs:2726:5:2728:5 | Self [trait MyTrait] | +| main.rs:2734:14:2734:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2734:14:2734:18 | SelfParam | TRef | main.rs:2730:5:2731:19 | S | +| main.rs:2734:14:2734:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2734:28:2736:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2735:13:2735:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2735:13:2735:16 | self | TRef | main.rs:2730:5:2731:19 | S | +| main.rs:2735:13:2735:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2735:13:2735:18 | self.0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2740:14:2740:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2740:14:2740:18 | SelfParam | TRef | main.rs:2730:5:2731:19 | S | +| main.rs:2740:14:2740:18 | SelfParam | TRef.T | main.rs:2730:5:2731:19 | S | +| main.rs:2740:14:2740:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2740:28:2742:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2741:13:2741:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2741:13:2741:16 | self | TRef | main.rs:2730:5:2731:19 | S | +| main.rs:2741:13:2741:16 | self | TRef.T | main.rs:2730:5:2731:19 | S | +| main.rs:2741:13:2741:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2741:13:2741:18 | self.0 | | main.rs:2730:5:2731:19 | S | +| main.rs:2741:13:2741:18 | self.0 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2741:13:2741:21 | ... .0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2746:15:2746:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2746:15:2746:19 | SelfParam | TRef | main.rs:2730:5:2731:19 | S | +| main.rs:2746:15:2746:19 | SelfParam | TRef.T | main.rs:2745:10:2745:16 | T | +| main.rs:2746:33:2748:9 | { ... } | | main.rs:2730:5:2731:19 | S | +| main.rs:2746:33:2748:9 | { ... } | T | main.rs:2730:5:2731:19 | S | +| main.rs:2746:33:2748:9 | { ... } | T.T | main.rs:2745:10:2745:16 | T | +| main.rs:2747:13:2747:24 | S(...) | | main.rs:2730:5:2731:19 | S | +| main.rs:2747:13:2747:24 | S(...) | T | main.rs:2730:5:2731:19 | S | +| main.rs:2747:13:2747:24 | S(...) | T.T | main.rs:2745:10:2745:16 | T | +| main.rs:2747:15:2747:23 | S(...) | | main.rs:2730:5:2731:19 | S | +| main.rs:2747:15:2747:23 | S(...) | T | main.rs:2745:10:2745:16 | T | +| main.rs:2747:17:2747:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2747:17:2747:20 | self | TRef | main.rs:2730:5:2731:19 | S | +| main.rs:2747:17:2747:20 | self | TRef.T | main.rs:2745:10:2745:16 | T | +| main.rs:2747:17:2747:22 | self.0 | | main.rs:2745:10:2745:16 | T | +| main.rs:2751:14:2751:14 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2751:48:2768:5 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2751:48:2768:5 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2751:48:2768:5 | { ... } | T | main.rs:2726:5:2728:5 | dyn MyTrait | +| main.rs:2751:48:2768:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2752:13:2752:13 | x | | main.rs:2730:5:2731:19 | S | +| main.rs:2752:13:2752:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2752:17:2757:9 | if b {...} else {...} | | main.rs:2730:5:2731:19 | S | +| main.rs:2752:17:2757:9 | if b {...} else {...} | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2752:20:2752:20 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2752:22:2755:9 | { ... } | | main.rs:2730:5:2731:19 | S | +| main.rs:2752:22:2755:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2753:17:2753:17 | y | | main.rs:2730:5:2731:19 | S | +| main.rs:2753:17:2753:17 | y | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2753:21:2753:38 | ...::default(...) | | main.rs:2730:5:2731:19 | S | +| main.rs:2753:21:2753:38 | ...::default(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2754:13:2754:13 | y | | main.rs:2730:5:2731:19 | S | +| main.rs:2754:13:2754:13 | y | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2755:16:2757:9 | { ... } | | main.rs:2730:5:2731:19 | S | +| main.rs:2755:16:2757:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2756:13:2756:16 | S(...) | | main.rs:2730:5:2731:19 | S | +| main.rs:2756:13:2756:16 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2756:15:2756:15 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2761:13:2761:13 | x | | main.rs:2730:5:2731:19 | S | +| main.rs:2761:13:2761:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2761:17:2761:20 | S(...) | | main.rs:2730:5:2731:19 | S | +| main.rs:2761:17:2761:20 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2761:19:2761:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2762:9:2767:9 | if b {...} else {...} | | {EXTERNAL LOCATION} | Box | +| main.rs:2762:9:2767:9 | if b {...} else {...} | A | {EXTERNAL LOCATION} | Global | +| main.rs:2762:9:2767:9 | if b {...} else {...} | T | main.rs:2726:5:2728:5 | dyn MyTrait | +| main.rs:2762:9:2767:9 | if b {...} else {...} | T | main.rs:2730:5:2731:19 | S | +| main.rs:2762:9:2767:9 | if b {...} else {...} | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2762:9:2767:9 | if b {...} else {...} | T.T | main.rs:2730:5:2731:19 | S | +| main.rs:2762:9:2767:9 | if b {...} else {...} | T.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2762:9:2767:9 | if b {...} else {...} | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2762:12:2762:12 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2762:14:2765:9 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2762:14:2765:9 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2762:14:2765:9 | { ... } | T | main.rs:2726:5:2728:5 | dyn MyTrait | +| main.rs:2762:14:2765:9 | { ... } | T | main.rs:2730:5:2731:19 | S | +| main.rs:2762:14:2765:9 | { ... } | T.T | main.rs:2730:5:2731:19 | S | +| main.rs:2762:14:2765:9 | { ... } | T.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2762:14:2765:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2763:17:2763:17 | x | | main.rs:2730:5:2731:19 | S | +| main.rs:2763:17:2763:17 | x | T | main.rs:2730:5:2731:19 | S | +| main.rs:2763:17:2763:17 | x | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2763:21:2763:21 | x | | main.rs:2730:5:2731:19 | S | +| main.rs:2763:21:2763:21 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2763:21:2763:26 | x.m2() | | main.rs:2730:5:2731:19 | S | +| main.rs:2763:21:2763:26 | x.m2() | T | main.rs:2730:5:2731:19 | S | +| main.rs:2763:21:2763:26 | x.m2() | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2764:13:2764:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2764:13:2764:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2764:13:2764:23 | ...::new(...) | T | main.rs:2726:5:2728:5 | dyn MyTrait | +| main.rs:2764:13:2764:23 | ...::new(...) | T | main.rs:2730:5:2731:19 | S | +| main.rs:2764:13:2764:23 | ...::new(...) | T.T | main.rs:2730:5:2731:19 | S | +| main.rs:2764:13:2764:23 | ...::new(...) | T.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2764:13:2764:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2764:22:2764:22 | x | | main.rs:2730:5:2731:19 | S | +| main.rs:2764:22:2764:22 | x | T | main.rs:2730:5:2731:19 | S | +| main.rs:2764:22:2764:22 | x | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2765:16:2767:9 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2765:16:2767:9 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2765:16:2767:9 | { ... } | T | main.rs:2726:5:2728:5 | dyn MyTrait | +| main.rs:2765:16:2767:9 | { ... } | T | main.rs:2730:5:2731:19 | S | +| main.rs:2765:16:2767:9 | { ... } | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2765:16:2767:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2766:13:2766:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2766:13:2766:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2766:13:2766:23 | ...::new(...) | T | main.rs:2726:5:2728:5 | dyn MyTrait | +| main.rs:2766:13:2766:23 | ...::new(...) | T | main.rs:2730:5:2731:19 | S | +| main.rs:2766:13:2766:23 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2766:13:2766:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2766:22:2766:22 | x | | main.rs:2730:5:2731:19 | S | +| main.rs:2766:22:2766:22 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2772:22:2776:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2773:18:2773:18 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2773:33:2775:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2774:13:2774:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2774:13:2774:17 | ... + ... | | {EXTERNAL LOCATION} | i32 | +| main.rs:2774:17:2774:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2781:11:2781:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2781:30:2789:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2783:13:2783:13 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2783:17:2787:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2784:13:2786:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2784:16:2784:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2784:21:2786:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2785:24:2785:25 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2788:9:2788:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2792:20:2799:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2795:26:2795:27 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2797:9:2797:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2797:18:2797:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2797:18:2797:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2797:18:2797:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2797:18:2797:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2797:18:2797:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2798:9:2798:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2801:20:2803:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2802:16:2802:16 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2806:11:2806:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2806:30:2814:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2807:13:2807:13 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2807:17:2811:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2808:13:2810:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2808:16:2808:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2808:21:2810:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2809:24:2809:25 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2812:9:2812:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2812:18:2812:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2812:18:2812:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2812:18:2812:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2812:18:2812:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2812:18:2812:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2812:29:2812:29 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2813:9:2813:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2818:16:2865:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2819:13:2819:13 | x | | {EXTERNAL LOCATION} | Option | | main.rs:2819:13:2819:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2819:17:2819:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2819:17:2819:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | -| main.rs:2819:17:2819:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2819:28:2819:28 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2820:13:2820:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2820:13:2820:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2819:17:2819:20 | None | | {EXTERNAL LOCATION} | Option | +| main.rs:2819:17:2819:20 | None | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2820:13:2820:13 | x | | {EXTERNAL LOCATION} | Option | | main.rs:2820:13:2820:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2820:38:2820:38 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2820:38:2820:38 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2820:38:2820:38 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2821:13:2821:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2821:13:2821:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2820:30:2820:30 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2820:30:2820:30 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2821:13:2821:13 | x | | {EXTERNAL LOCATION} | Option | | main.rs:2821:13:2821:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2821:17:2821:44 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2821:17:2821:44 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | -| main.rs:2821:17:2821:44 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2821:43:2821:43 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2822:13:2822:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2822:13:2822:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2821:17:2821:35 | ...::None | | {EXTERNAL LOCATION} | Option | +| main.rs:2821:17:2821:35 | ...::None | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2822:13:2822:13 | x | | {EXTERNAL LOCATION} | Option | | main.rs:2822:13:2822:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2822:17:2822:44 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2822:17:2822:44 | ...::Ok::<...>(...) | E | {EXTERNAL LOCATION} | String | -| main.rs:2822:17:2822:44 | ...::Ok::<...>(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2822:43:2822:43 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2824:29:2824:31 | res | | {EXTERNAL LOCATION} | Result | -| main.rs:2824:29:2824:31 | res | E | main.rs:2824:26:2824:26 | E | -| main.rs:2824:29:2824:31 | res | T | main.rs:2824:23:2824:23 | T | -| main.rs:2824:48:2824:48 | x | | main.rs:2824:26:2824:26 | E | -| main.rs:2824:54:2824:55 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2826:13:2826:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2826:13:2826:13 | x | E | {EXTERNAL LOCATION} | bool | +| main.rs:2822:17:2822:35 | ...::None::<...> | | {EXTERNAL LOCATION} | Option | +| main.rs:2822:17:2822:35 | ...::None::<...> | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2824:26:2824:28 | opt | | {EXTERNAL LOCATION} | Option | +| main.rs:2824:26:2824:28 | opt | T | main.rs:2824:23:2824:23 | T | +| main.rs:2824:42:2824:42 | x | | main.rs:2824:23:2824:23 | T | +| main.rs:2824:48:2824:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2826:13:2826:13 | x | | {EXTERNAL LOCATION} | Option | | main.rs:2826:13:2826:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2826:17:2826:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2826:17:2826:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | bool | -| main.rs:2826:17:2826:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2826:28:2826:28 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2827:9:2827:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2827:20:2827:20 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2827:20:2827:20 | x | E | {EXTERNAL LOCATION} | bool | +| main.rs:2826:17:2826:20 | None | | {EXTERNAL LOCATION} | Option | +| main.rs:2826:17:2826:20 | None | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2827:9:2827:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2827:20:2827:20 | x | | {EXTERNAL LOCATION} | Option | | main.rs:2827:20:2827:20 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2827:23:2827:27 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:2829:17:2829:17 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2829:17:2829:17 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2829:17:2829:17 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2829:21:2829:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2829:21:2829:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2829:21:2829:30 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2830:9:2830:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2830:9:2830:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2830:9:2830:9 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2830:9:2830:17 | x.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2830:16:2830:16 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2832:13:2832:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:2832:17:2832:34 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2833:9:2833:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2833:9:2833:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2833:9:2833:9 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2833:9:2833:17 | x.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2833:16:2833:16 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:2840:14:2840:17 | SelfParam | | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2843:14:2843:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2843:14:2843:18 | SelfParam | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2843:21:2843:25 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2843:21:2843:25 | other | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2843:44:2845:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2843:44:2845:9 | { ... } | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2844:13:2844:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2844:13:2844:16 | self | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2844:13:2844:20 | self.f() | | {EXTERNAL LOCATION} | & | -| main.rs:2844:13:2844:20 | self.f() | TRef | main.rs:2838:5:2846:5 | Self [trait MyTrait] | -| main.rs:2850:14:2850:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | -| main.rs:2850:28:2852:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2851:13:2851:16 | self | | {EXTERNAL LOCATION} | i32 | -| main.rs:2857:14:2857:17 | SelfParam | | {EXTERNAL LOCATION} | usize | -| main.rs:2857:28:2859:9 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2858:13:2858:16 | self | | {EXTERNAL LOCATION} | usize | -| main.rs:2864:14:2864:17 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2864:14:2864:17 | SelfParam | TRef | main.rs:2862:10:2862:10 | T | -| main.rs:2864:28:2866:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2864:28:2866:9 | { ... } | TRef | main.rs:2862:10:2862:10 | T | -| main.rs:2865:13:2865:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2865:13:2865:16 | self | TRef | main.rs:2862:10:2862:10 | T | -| main.rs:2869:25:2873:5 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2870:17:2870:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2870:17:2870:17 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2870:21:2870:21 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2870:21:2870:21 | 0 | | {EXTERNAL LOCATION} | usize | -| main.rs:2871:9:2871:9 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2871:9:2871:9 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2871:9:2871:17 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:2871:13:2871:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2871:13:2871:13 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2871:13:2871:17 | x.f() | | {EXTERNAL LOCATION} | i32 | -| main.rs:2871:13:2871:17 | x.f() | | {EXTERNAL LOCATION} | usize | -| main.rs:2872:9:2872:9 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2872:9:2872:9 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2875:12:2883:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2876:13:2876:13 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2876:24:2876:24 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2876:24:2876:24 | 0 | | {EXTERNAL LOCATION} | usize | -| main.rs:2877:13:2877:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2877:13:2877:13 | y | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2877:17:2877:18 | &1 | | {EXTERNAL LOCATION} | & | -| main.rs:2877:17:2877:18 | &1 | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2877:18:2877:18 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2878:13:2878:13 | z | | {EXTERNAL LOCATION} | & | -| main.rs:2878:13:2878:13 | z | TRef | {EXTERNAL LOCATION} | usize | -| main.rs:2878:17:2878:17 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2878:17:2878:22 | x.g(...) | | {EXTERNAL LOCATION} | & | -| main.rs:2878:17:2878:22 | x.g(...) | TRef | {EXTERNAL LOCATION} | usize | -| main.rs:2878:21:2878:21 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2878:21:2878:21 | y | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2880:13:2880:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2880:17:2880:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2881:13:2881:13 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2881:24:2881:24 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2881:24:2881:24 | 1 | | {EXTERNAL LOCATION} | usize | -| main.rs:2882:13:2882:13 | z | | {EXTERNAL LOCATION} | i32 | -| main.rs:2882:17:2882:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2882:17:2882:24 | x.max(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2882:23:2882:23 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2892:11:2927:1 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2893:5:2893:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2894:5:2894:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2895:5:2895:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2895:20:2895:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2895:41:2895:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2896:5:2896:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2897:5:2897:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2898:5:2898:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2899:5:2899:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2900:5:2900:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2901:5:2901:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2902:5:2902:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2903:5:2903:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2904:5:2904:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2905:5:2905:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2906:5:2906:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2907:5:2907:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2908:5:2908:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2909:5:2909:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2910:5:2910:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2911:5:2911:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2911:5:2911:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2912:5:2912:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2913:5:2913:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2914:5:2914:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2915:5:2915:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2916:5:2916:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2917:5:2917:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2918:5:2918:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2919:5:2919:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2920:5:2920:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2921:5:2921:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2922:5:2922:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2923:5:2923:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2924:5:2924:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2925:5:2925:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2925:5:2925:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2925:5:2925:20 | ...::f(...) | T | main.rs:2695:5:2697:5 | dyn MyTrait | -| main.rs:2925:5:2925:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2925:16:2925:19 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2926:5:2926:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2827:23:2827:23 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2834:13:2834:13 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2834:13:2834:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2834:13:2834:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2834:17:2834:39 | ...::A {...} | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2834:17:2834:39 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2834:17:2834:39 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2834:37:2834:37 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2835:13:2835:13 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2835:13:2835:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2835:13:2835:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2835:40:2835:40 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2835:40:2835:40 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2835:40:2835:40 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2836:13:2836:13 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2836:13:2836:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2836:13:2836:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2836:17:2836:52 | ...::A {...} | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2836:17:2836:52 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2836:17:2836:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2836:50:2836:50 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2838:13:2838:13 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2838:13:2838:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2838:13:2838:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2838:17:2840:9 | ...::B::<...> {...} | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2838:17:2840:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2838:17:2840:9 | ...::B::<...> {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2839:20:2839:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2842:29:2842:29 | e | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2842:29:2842:29 | e | T1 | main.rs:2842:26:2842:26 | T | +| main.rs:2842:29:2842:29 | e | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2842:53:2842:53 | x | | main.rs:2842:26:2842:26 | T | +| main.rs:2842:59:2842:60 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2845:13:2845:13 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2845:13:2845:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2845:13:2845:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2845:17:2847:9 | ...::B {...} | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2845:17:2847:9 | ...::B {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2845:17:2847:9 | ...::B {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2846:20:2846:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2848:9:2848:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2848:23:2848:23 | x | | main.rs:2829:9:2832:9 | MyEither | +| main.rs:2848:23:2848:23 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2848:23:2848:23 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2848:26:2848:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2850:13:2850:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2850:13:2850:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2850:13:2850:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2850:17:2850:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2850:17:2850:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | +| main.rs:2850:17:2850:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2850:28:2850:28 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2851:13:2851:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2851:13:2851:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2851:13:2851:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2851:38:2851:38 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2851:38:2851:38 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2851:38:2851:38 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2852:13:2852:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2852:13:2852:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2852:13:2852:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2852:17:2852:44 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2852:17:2852:44 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | +| main.rs:2852:17:2852:44 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2852:43:2852:43 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2853:13:2853:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2853:13:2853:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2853:13:2853:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2853:17:2853:44 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2853:17:2853:44 | ...::Ok::<...>(...) | E | {EXTERNAL LOCATION} | String | +| main.rs:2853:17:2853:44 | ...::Ok::<...>(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2853:43:2853:43 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2855:29:2855:31 | res | | {EXTERNAL LOCATION} | Result | +| main.rs:2855:29:2855:31 | res | E | main.rs:2855:26:2855:26 | E | +| main.rs:2855:29:2855:31 | res | T | main.rs:2855:23:2855:23 | T | +| main.rs:2855:48:2855:48 | x | | main.rs:2855:26:2855:26 | E | +| main.rs:2855:54:2855:55 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2857:13:2857:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2857:13:2857:13 | x | E | {EXTERNAL LOCATION} | bool | +| main.rs:2857:13:2857:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2857:17:2857:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2857:17:2857:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | bool | +| main.rs:2857:17:2857:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2857:28:2857:28 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2858:9:2858:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2858:20:2858:20 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2858:20:2858:20 | x | E | {EXTERNAL LOCATION} | bool | +| main.rs:2858:20:2858:20 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2858:23:2858:27 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:2860:17:2860:17 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2860:17:2860:17 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2860:17:2860:17 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2860:21:2860:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2860:21:2860:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2860:21:2860:30 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2861:9:2861:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2861:9:2861:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2861:9:2861:9 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2861:9:2861:17 | x.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2861:16:2861:16 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2863:13:2863:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:2863:17:2863:34 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2864:9:2864:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2864:9:2864:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2864:9:2864:9 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2864:9:2864:17 | x.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2864:16:2864:16 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:2871:14:2871:17 | SelfParam | | main.rs:2869:5:2877:5 | Self [trait MyTrait] | +| main.rs:2874:14:2874:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2874:14:2874:18 | SelfParam | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | +| main.rs:2874:21:2874:25 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2874:21:2874:25 | other | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | +| main.rs:2874:44:2876:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2874:44:2876:9 | { ... } | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | +| main.rs:2875:13:2875:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2875:13:2875:16 | self | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | +| main.rs:2875:13:2875:20 | self.f() | | {EXTERNAL LOCATION} | & | +| main.rs:2875:13:2875:20 | self.f() | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | +| main.rs:2881:14:2881:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| main.rs:2881:28:2883:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2882:13:2882:16 | self | | {EXTERNAL LOCATION} | i32 | +| main.rs:2888:14:2888:17 | SelfParam | | {EXTERNAL LOCATION} | usize | +| main.rs:2888:28:2890:9 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2889:13:2889:16 | self | | {EXTERNAL LOCATION} | usize | +| main.rs:2895:14:2895:17 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2895:14:2895:17 | SelfParam | TRef | main.rs:2893:10:2893:10 | T | +| main.rs:2895:28:2897:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2895:28:2897:9 | { ... } | TRef | main.rs:2893:10:2893:10 | T | +| main.rs:2896:13:2896:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2896:13:2896:16 | self | TRef | main.rs:2893:10:2893:10 | T | +| main.rs:2900:25:2904:5 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2901:17:2901:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2901:17:2901:17 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2901:21:2901:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2901:21:2901:21 | 0 | | {EXTERNAL LOCATION} | usize | +| main.rs:2902:9:2902:9 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2902:9:2902:9 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2902:9:2902:17 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:2902:13:2902:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2902:13:2902:13 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2902:13:2902:17 | x.f() | | {EXTERNAL LOCATION} | i32 | +| main.rs:2902:13:2902:17 | x.f() | | {EXTERNAL LOCATION} | usize | +| main.rs:2903:9:2903:9 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2903:9:2903:9 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2906:12:2914:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2907:13:2907:13 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2907:24:2907:24 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2907:24:2907:24 | 0 | | {EXTERNAL LOCATION} | usize | +| main.rs:2908:13:2908:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2908:13:2908:13 | y | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2908:17:2908:18 | &1 | | {EXTERNAL LOCATION} | & | +| main.rs:2908:17:2908:18 | &1 | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2908:18:2908:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2909:13:2909:13 | z | | {EXTERNAL LOCATION} | & | +| main.rs:2909:13:2909:13 | z | TRef | {EXTERNAL LOCATION} | usize | +| main.rs:2909:17:2909:17 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2909:17:2909:22 | x.g(...) | | {EXTERNAL LOCATION} | & | +| main.rs:2909:17:2909:22 | x.g(...) | TRef | {EXTERNAL LOCATION} | usize | +| main.rs:2909:21:2909:21 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2909:21:2909:21 | y | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2911:13:2911:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2911:17:2911:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2912:13:2912:13 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2912:24:2912:24 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2912:24:2912:24 | 1 | | {EXTERNAL LOCATION} | usize | +| main.rs:2913:13:2913:13 | z | | {EXTERNAL LOCATION} | i32 | +| main.rs:2913:17:2913:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2913:17:2913:24 | x.max(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2913:23:2913:23 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2923:11:2958:1 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2924:5:2924:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2925:5:2925:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2926:5:2926:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2926:20:2926:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2926:41:2926:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2927:5:2927:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2928:5:2928:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2929:5:2929:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2930:5:2930:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2931:5:2931:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2932:5:2932:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2933:5:2933:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2934:5:2934:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2935:5:2935:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2936:5:2936:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2937:5:2937:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2938:5:2938:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2939:5:2939:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2940:5:2940:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2941:5:2941:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2942:5:2942:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2942:5:2942:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2943:5:2943:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2944:5:2944:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2945:5:2945:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2946:5:2946:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2947:5:2947:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2948:5:2948:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2949:5:2949:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2950:5:2950:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2951:5:2951:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2952:5:2952:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2953:5:2953:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2954:5:2954:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2955:5:2955:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2956:5:2956:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2956:5:2956:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2956:5:2956:20 | ...::f(...) | T | main.rs:2726:5:2728:5 | dyn MyTrait | +| main.rs:2956:5:2956:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2956:16:2956:19 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2957:5:2957:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:13:26:133:1 | { ... } | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:13:26:133:1 | { ... } | T | {EXTERNAL LOCATION} | () | | pattern_matching.rs:14:9:14:13 | value | | {EXTERNAL LOCATION} | Option | From d0e30d19c4afacd45cd0c17094979a8874be9638 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 2 Feb 2026 16:02:27 +0100 Subject: [PATCH 273/433] Rust: Resolve `as` paths to trait --- .../codeql/rust/internal/PathResolution.qll | 3 ++- .../test/library-tests/path-resolution/main.rs | 18 +++++++++--------- .../path-resolution/path-resolution.expected | 18 ++++++++++++++++++ .../test/library-tests/type-inference/main.rs | 4 ++-- .../type-inference/type-inference.expected | 8 ++++---- 5 files changed, 35 insertions(+), 16 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/PathResolution.qll b/rust/ql/lib/codeql/rust/internal/PathResolution.qll index 7e77669cc4fe..859135cd3b11 100644 --- a/rust/ql/lib/codeql/rust/internal/PathResolution.qll +++ b/rust/ql/lib/codeql/rust/internal/PathResolution.qll @@ -1556,7 +1556,8 @@ private class PathExtPath extends PathExt instanceof Path { tree.hasPath() and this = getAUseTreeUseTree(tree).getPath().getQualifier*() ) and - name = Path.super.getText() + // For a `` path we resolve the trait name + name = [Path.super.getText(), Path.super.getSegment().getTraitTypeRepr().getPath().getText()] } override Path getQualifier() { result = Path.super.getQualifier() } diff --git a/rust/ql/test/library-tests/path-resolution/main.rs b/rust/ql/test/library-tests/path-resolution/main.rs index 3276807cacb4..38909e167faa 100644 --- a/rust/ql/test/library-tests/path-resolution/main.rs +++ b/rust/ql/test/library-tests/path-resolution/main.rs @@ -194,7 +194,7 @@ mod m8 { // $ MISSING: item=52 - ::f(&x); // $ MISSING: item=I53 + ::f(&x); // $ item=I48 let x = MyStruct {}; // $ item=I50 x.f(); // $ item=I53 let x = MyStruct {}; // $ item=I50 @@ -365,10 +365,10 @@ mod m15 { let x = S; // $ item=I81 ::f(&x); // $ MISSING: item=I76 + >::f(&x); // $ item=Trait1::f ::f(&x); // $ MISSING: item=I78 + >::f(&x); // $ item=Trait2::f S::g(&x); // $ item=I77 x.g(); // $ item=I77 } // I75 @@ -452,12 +452,12 @@ mod m16 { as Trait1< S // $ item=I90 > // $ item=I86 - >::f(&x); // $ MISSING: item=I91 + >::f(&x); // $ item=Trait1::f // $ item=I89 - >::f(&x); // $ MISSING: item=I93 + >::f(&x); // $ item=Trait2::f S::g(&x); // $ item=I92 x.g(); // $ item=I92 S::h(&x); // $ item=I96 @@ -467,7 +467,7 @@ mod m16 { as Trait1< S // $ item=I90 > // $ item=I86 - >::c; // $ MISSING: item=I95 + >::c; // $ item=I94 } // I83 trait Trait3 { @@ -945,10 +945,10 @@ mod associated_types_subtrait { #[rustfmt::skip] impl S { // $ item=S item=bool fn _test() { - let _c: as Super>::Out = 'a'; // $ item=S item=i32 item=Super MISSING: item=SuperAssoc - let _i: as Super>::Out = 1; // $ item=S item=bool item=Super MISSING: item=SuperAssoc + let _c: as Super>::Out = 'a'; // $ item=S item=i32 item=Super item=SuperAssoc + let _i: as Super>::Out = 1; // $ item=S item=bool item=Super item=SuperAssoc - let _b: as SuperAlt>::Out = true; // $ item=S item=bool item=SuperAlt MISSING: item=SuperAltAssoc + let _b: as SuperAlt>::Out = true; // $ item=S item=bool item=SuperAlt item=SuperAltAssoc } } } diff --git a/rust/ql/test/library-tests/path-resolution/path-resolution.expected b/rust/ql/test/library-tests/path-resolution/path-resolution.expected index 9b65bb84666b..f04c0577b904 100644 --- a/rust/ql/test/library-tests/path-resolution/path-resolution.expected +++ b/rust/ql/test/library-tests/path-resolution/path-resolution.expected @@ -146,6 +146,8 @@ resolvePath | main.rs:192:9:192:18 | ...::f | main.rs:153:9:153:20 | fn f | | main.rs:193:9:193:16 | MyStruct | main.rs:162:5:162:22 | struct MyStruct | | main.rs:193:9:193:19 | ...::f | main.rs:169:33:174:9 | fn f | +| main.rs:194:9:196:9 | <...> | main.rs:152:5:160:5 | trait MyTrait | +| main.rs:194:9:197:11 | ...::f | main.rs:153:9:153:20 | fn f | | main.rs:194:10:194:17 | MyStruct | main.rs:162:5:162:22 | struct MyStruct | | main.rs:195:10:195:16 | MyTrait | main.rs:152:5:160:5 | trait MyTrait | | main.rs:198:17:198:24 | MyStruct | main.rs:162:5:162:22 | struct MyStruct | @@ -207,8 +209,12 @@ resolvePath | main.rs:358:13:358:19 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:364:9:364:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:365:17:365:17 | S | main.rs:338:5:338:13 | struct S | +| main.rs:366:9:368:9 | <...> | main.rs:307:5:311:5 | trait Trait1 | +| main.rs:366:9:368:12 | ...::f | main.rs:308:9:308:20 | fn f | | main.rs:366:10:366:10 | S | main.rs:338:5:338:13 | struct S | | main.rs:367:14:367:19 | Trait1 | main.rs:307:5:311:5 | trait Trait1 | +| main.rs:369:9:371:9 | <...> | main.rs:313:5:321:5 | trait Trait2 | +| main.rs:369:9:371:12 | ...::f | main.rs:315:18:320:9 | fn f | | main.rs:369:10:369:10 | S | main.rs:338:5:338:13 | struct S | | main.rs:370:14:370:19 | Trait2 | main.rs:313:5:321:5 | trait Trait2 | | main.rs:372:9:372:9 | S | main.rs:338:5:338:13 | struct S | @@ -251,9 +257,13 @@ resolvePath | main.rs:443:13:443:19 | ...::c | main.rs:431:9:432:9 | Const | | main.rs:449:9:449:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:450:17:450:17 | S | main.rs:413:5:413:13 | struct S | +| main.rs:451:9:455:9 | <...> | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:451:9:455:12 | ...::f | main.rs:382:9:383:9 | fn f | | main.rs:451:10:451:10 | S | main.rs:413:5:413:13 | struct S | | main.rs:452:14:454:11 | Trait1::<...> | main.rs:378:5:396:5 | trait Trait1 | | main.rs:453:13:453:13 | S | main.rs:413:5:413:13 | struct S | +| main.rs:456:9:460:9 | <...> | main.rs:398:5:411:5 | trait Trait2 | +| main.rs:456:9:460:12 | ...::f | main.rs:404:13:410:9 | fn f | | main.rs:456:10:456:10 | S | main.rs:413:5:413:13 | struct S | | main.rs:457:14:459:11 | Trait2::<...> | main.rs:398:5:411:5 | trait Trait2 | | main.rs:458:13:458:13 | S | main.rs:413:5:413:13 | struct S | @@ -263,6 +273,8 @@ resolvePath | main.rs:463:9:463:12 | ...::h | main.rs:389:9:392:9 | fn h | | main.rs:465:9:465:9 | S | main.rs:413:5:413:13 | struct S | | main.rs:465:9:465:12 | ...::c | main.rs:431:9:432:9 | Const | +| main.rs:466:9:470:9 | <...> | main.rs:378:5:396:5 | trait Trait1 | +| main.rs:466:9:470:12 | ...::c | main.rs:394:9:395:9 | Const | | main.rs:466:10:466:10 | S | main.rs:413:5:413:13 | struct S | | main.rs:467:14:469:11 | Trait1::<...> | main.rs:378:5:396:5 | trait Trait1 | | main.rs:468:13:468:13 | S | main.rs:413:5:413:13 | struct S | @@ -489,12 +501,18 @@ resolvePath | main.rs:940:23:940:31 | ...::Out | main.rs:923:9:923:17 | type Out | | main.rs:946:10:946:16 | S::<...> | main.rs:892:5:894:6 | struct S | | main.rs:946:12:946:15 | bool | {EXTERNAL LOCATION} | struct bool | +| main.rs:948:21:948:37 | <...> | main.rs:882:5:884:5 | trait Super | +| main.rs:948:21:948:42 | ...::Out | main.rs:883:9:883:17 | type Out | | main.rs:948:22:948:27 | S::<...> | main.rs:892:5:894:6 | struct S | | main.rs:948:24:948:26 | i32 | {EXTERNAL LOCATION} | struct i32 | | main.rs:948:32:948:36 | Super | main.rs:882:5:884:5 | trait Super | +| main.rs:949:21:949:38 | <...> | main.rs:882:5:884:5 | trait Super | +| main.rs:949:21:949:43 | ...::Out | main.rs:883:9:883:17 | type Out | | main.rs:949:22:949:28 | S::<...> | main.rs:892:5:894:6 | struct S | | main.rs:949:24:949:27 | bool | {EXTERNAL LOCATION} | struct bool | | main.rs:949:33:949:37 | Super | main.rs:882:5:884:5 | trait Super | +| main.rs:951:21:951:41 | <...> | main.rs:922:5:924:5 | trait SuperAlt | +| main.rs:951:21:951:46 | ...::Out | main.rs:923:9:923:17 | type Out | | main.rs:951:22:951:28 | S::<...> | main.rs:892:5:894:6 | struct S | | main.rs:951:24:951:27 | bool | {EXTERNAL LOCATION} | struct bool | | main.rs:951:33:951:40 | SuperAlt | main.rs:922:5:924:5 | trait SuperAlt | diff --git a/rust/ql/test/library-tests/type-inference/main.rs b/rust/ql/test/library-tests/type-inference/main.rs index 8f2002117da0..b4f9b04f56f2 100644 --- a/rust/ql/test/library-tests/type-inference/main.rs +++ b/rust/ql/test/library-tests/type-inference/main.rs @@ -205,10 +205,10 @@ mod method_call_trait_path_disambig { let s = S; let _b1 = FirstTrait::method(&s); // $ type=_b1:bool target=FirstTrait::method - let _b2 = ::method(&s); // $ type=_b2:bool target=FirstTrait::method SPURIOUS: target=SecondTrait::method + let _b2 = ::method(&s); // $ type=_b2:bool target=FirstTrait::method let _n1 = SecondTrait::method(&s); // $ type=_n1:i64 target=SecondTrait::method - let _n2 = ::method(&s); // $ type=_n2:i64 target=SecondTrait::method SPURIOUS: target=FirstTrait::method + let _n2 = ::method(&s); // $ type=_n2:i64 target=SecondTrait::method } } diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 3d14c16902e5..19e46b1cae65 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -1151,10 +1151,14 @@ inferCertainType | main.rs:207:13:207:15 | _b1 | | {EXTERNAL LOCATION} | bool | | main.rs:207:19:207:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | | main.rs:207:38:207:39 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:208:13:208:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| main.rs:208:19:208:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | | main.rs:208:45:208:46 | &s | | {EXTERNAL LOCATION} | & | | main.rs:210:13:210:15 | _n1 | | {EXTERNAL LOCATION} | i64 | | main.rs:210:19:210:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | | main.rs:210:39:210:40 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:211:13:211:15 | _n2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:211:19:211:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | | main.rs:211:46:211:47 | &s | | {EXTERNAL LOCATION} | & | | main.rs:228:15:228:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | | main.rs:228:15:228:18 | SelfParam | A | main.rs:221:5:222:14 | S1 | @@ -6895,9 +6899,7 @@ inferType | main.rs:207:38:207:39 | &s | TRef | main.rs:200:5:200:13 | S | | main.rs:207:39:207:39 | s | | main.rs:200:5:200:13 | S | | main.rs:208:13:208:15 | _b2 | | {EXTERNAL LOCATION} | bool | -| main.rs:208:13:208:15 | _b2 | | {EXTERNAL LOCATION} | i64 | | main.rs:208:19:208:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:208:19:208:47 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | | main.rs:208:45:208:46 | &s | | {EXTERNAL LOCATION} | & | | main.rs:208:45:208:46 | &s | TRef | main.rs:200:5:200:13 | S | | main.rs:208:46:208:46 | s | | main.rs:200:5:200:13 | S | @@ -6906,9 +6908,7 @@ inferType | main.rs:210:39:210:40 | &s | | {EXTERNAL LOCATION} | & | | main.rs:210:39:210:40 | &s | TRef | main.rs:200:5:200:13 | S | | main.rs:210:40:210:40 | s | | main.rs:200:5:200:13 | S | -| main.rs:211:13:211:15 | _n2 | | {EXTERNAL LOCATION} | bool | | main.rs:211:13:211:15 | _n2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:211:19:211:48 | ...::method(...) | | {EXTERNAL LOCATION} | bool | | main.rs:211:19:211:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | | main.rs:211:46:211:47 | &s | | {EXTERNAL LOCATION} | & | | main.rs:211:46:211:47 | &s | TRef | main.rs:200:5:200:13 | S | From 9fc2a5471229f7de818518c5e18d3c1c04dc71a2 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 2 Feb 2026 17:12:25 +0100 Subject: [PATCH 274/433] Rust: Accept changes to expected files for consistency checks --- .../CONSISTENCY/PathResolutionConsistency.expected | 10 +++------- .../CONSISTENCY/PathResolutionConsistency.expected | 2 +- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected index 23ac5e722d5c..abb80612c6e8 100644 --- a/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected @@ -1,9 +1,5 @@ multipleResolvedTargets | main.rs:126:9:126:11 | f(...) | -| main.rs:366:9:368:16 | ...::f(...) | -| main.rs:369:9:371:16 | ...::f(...) | -| main.rs:450:9:454:16 | ...::f(...) | -| main.rs:455:9:459:16 | ...::f(...) | -| main.rs:565:9:566:15 | ...::Assoc(...) | -| main.rs:568:9:569:12 | ...::f1(...) | -| main.rs:571:9:572:12 | ...::f1(...) | +| main.rs:566:9:567:15 | ...::Assoc(...) | +| main.rs:569:9:570:12 | ...::f1(...) | +| main.rs:572:9:573:12 | ...::f1(...) | diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected index 97dfe4bc278c..5e7cfcf2baa5 100644 --- a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected @@ -1,2 +1,2 @@ multipleResolvedTargets -| main.rs:2871:13:2871:17 | x.f() | +| main.rs:2902:13:2902:17 | x.f() | From cbbc057dd313144605650f4d59d23f220247194a Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Mon, 2 Feb 2026 16:15:36 +0000 Subject: [PATCH 275/433] Fix singular/plural wording and add test --- go/extractor/diagnostics/diagnostics.go | 4 ++-- go/extractor/diagnostics/diagnostics_test.go | 24 +++++++++++++++++++- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/go/extractor/diagnostics/diagnostics.go b/go/extractor/diagnostics/diagnostics.go index b40b31c15f3e..1deff68aa955 100644 --- a/go/extractor/diagnostics/diagnostics.go +++ b/go/extractor/diagnostics/diagnostics.go @@ -581,8 +581,8 @@ func EmitPrivateRegistryUsed(writer DiagnosticsWriter, configs []string) { "go/autobuilder/analysis-using-private-registries", "Go extraction used private package registries", fmt.Sprintf( - "Go was extracted using the following private package registrie%s:\n\n%s\n", - plural(len(lines), "", "s"), + "Go was extracted using the following private package registr%s:\n\n%s\n", + plural(len(lines), "y", "ies"), strings.Join(lines, "\n")), severityNote, fullVisibility, diff --git a/go/extractor/diagnostics/diagnostics_test.go b/go/extractor/diagnostics/diagnostics_test.go index 1582923fb559..1817610868fc 100644 --- a/go/extractor/diagnostics/diagnostics_test.go +++ b/go/extractor/diagnostics/diagnostics_test.go @@ -84,7 +84,28 @@ func Test_EmitCannotFindPackages_Actions(t *testing.T) { assert.Contains(t, d.MarkdownMessage, "If any of the packages are already present in the repository") } -func Test_EmitPrivateRegistryUsed(t *testing.T) { +func Test_EmitPrivateRegistryUsed_Single(t *testing.T) { + writer := newMemoryDiagnosticsWriter() + + testItems := []string{ + "* https://github.com/github/example (Git Source)", + } + + EmitPrivateRegistryUsed(writer, testItems) + + assert.Len(t, writer.diagnostics, 1, "Expected one diagnostic to be emitted") + + d := writer.diagnostics[0] + assert.Equal(t, d.Source.Id, "go/autobuilder/analysis-using-private-registries") + assert.Equal(t, d.Severity, string(severityNote)) + assert.Contains(t, d.MarkdownMessage, "following private package registry") + + for i := range testItems { + assert.Contains(t, d.MarkdownMessage, testItems[i]) + } +} + +func Test_EmitPrivateRegistryUsed_Multiple(t *testing.T) { writer := newMemoryDiagnosticsWriter() testItems := []string{ @@ -99,6 +120,7 @@ func Test_EmitPrivateRegistryUsed(t *testing.T) { d := writer.diagnostics[0] assert.Equal(t, d.Source.Id, "go/autobuilder/analysis-using-private-registries") assert.Equal(t, d.Severity, string(severityNote)) + assert.Contains(t, d.MarkdownMessage, "following private package registries") for i := range testItems { assert.Contains(t, d.MarkdownMessage, testItems[i]) From d079671ec8b56014eb484419c1253474105dbe8b Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Mon, 2 Feb 2026 16:17:22 +0000 Subject: [PATCH 276/433] Align `testItems` with what `getEnvVars` does --- go/extractor/diagnostics/diagnostics_test.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/go/extractor/diagnostics/diagnostics_test.go b/go/extractor/diagnostics/diagnostics_test.go index 1817610868fc..3c28a57d4b5b 100644 --- a/go/extractor/diagnostics/diagnostics_test.go +++ b/go/extractor/diagnostics/diagnostics_test.go @@ -88,7 +88,7 @@ func Test_EmitPrivateRegistryUsed_Single(t *testing.T) { writer := newMemoryDiagnosticsWriter() testItems := []string{ - "* https://github.com/github/example (Git Source)", + "https://github.com/github/example (Git Source)", } EmitPrivateRegistryUsed(writer, testItems) @@ -109,8 +109,8 @@ func Test_EmitPrivateRegistryUsed_Multiple(t *testing.T) { writer := newMemoryDiagnosticsWriter() testItems := []string{ - "* https://github.com/github/example (Git Source)", - "* https://example.com/goproxy (GOPROXY Server)", + "https://github.com/github/example (Git Source)", + "https://example.com/goproxy (GOPROXY Server)", } EmitPrivateRegistryUsed(writer, testItems) From d5c4a19efa878c8c6b134c987cee5edd3ec921b0 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Tue, 3 Feb 2026 10:29:15 +0000 Subject: [PATCH 277/433] Apply suggestions from code review Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com> --- go/extractor/diagnostics/diagnostics.go | 7 ++++--- go/extractor/registries/registryproxy.go | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/go/extractor/diagnostics/diagnostics.go b/go/extractor/diagnostics/diagnostics.go index 1deff68aa955..e7ff86cb878b 100644 --- a/go/extractor/diagnostics/diagnostics.go +++ b/go/extractor/diagnostics/diagnostics.go @@ -570,10 +570,11 @@ func EmitExtractionFailedForProjects(path []string) { } func EmitPrivateRegistryUsed(writer DiagnosticsWriter, configs []string) { - lines := []string{} + n := len(configs) + lines := make([]string, n) for i := range configs { - lines = append(lines, fmt.Sprintf("* %s", configs[i])) + lines[i] = fmt.Sprintf("* %s", configs[i]) } emitDiagnosticTo( @@ -582,7 +583,7 @@ func EmitPrivateRegistryUsed(writer DiagnosticsWriter, configs []string) { "Go extraction used private package registries", fmt.Sprintf( "Go was extracted using the following private package registr%s:\n\n%s\n", - plural(len(lines), "y", "ies"), + plural(n, "y", "ies"), strings.Join(lines, "\n")), severityNote, fullVisibility, diff --git a/go/extractor/registries/registryproxy.go b/go/extractor/registries/registryproxy.go index 1bb5995e27ab..39578af476be 100644 --- a/go/extractor/registries/registryproxy.go +++ b/go/extractor/registries/registryproxy.go @@ -112,7 +112,7 @@ func getEnvVars() []string { if err != nil { slog.Error("Unable to parse proxy configurations", slog.String("error", err.Error())) } else { - activeConfigs := []RegistryConfig{} + activeConfigs := make([]RegistryConfig, 0, len(val)) // We only care about private registry configurations that are relevant to Go and // filter others out at this point. From 1791c1f1f985ab0f4043c09d34e28c3dbb322521 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Tue, 3 Feb 2026 11:45:38 +0100 Subject: [PATCH 278/433] Rust: Add test with path resolution inconsistency --- .../PathResolutionConsistency.expected | 2 + .../library-tests/path-resolution/main.rs | 8 + .../path-resolution/path-resolution.expected | 172 +++++++++--------- 3 files changed, 100 insertions(+), 82 deletions(-) diff --git a/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected index 23ac5e722d5c..e98f8d29fed7 100644 --- a/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected @@ -7,3 +7,5 @@ multipleResolvedTargets | main.rs:565:9:566:15 | ...::Assoc(...) | | main.rs:568:9:569:12 | ...::f1(...) | | main.rs:571:9:572:12 | ...::f1(...) | +multiplePathResolutions +| main.rs:1075:13:1074:16 | Self | diff --git a/rust/ql/test/library-tests/path-resolution/main.rs b/rust/ql/test/library-tests/path-resolution/main.rs index 4a3e4c82c20c..8699d9b9a367 100644 --- a/rust/ql/test/library-tests/path-resolution/main.rs +++ b/rust/ql/test/library-tests/path-resolution/main.rs @@ -1068,6 +1068,14 @@ mod self_types { Cons(T, Box), // $ item=T item=Box item=NonEmptyListEnum } + #[rustfmt::skip] + impl NonEmptyListEnum { // $ item=NonEmptyListEnum item=i32 + fn new_single(value: i32) -> Self { // $ item=i32 item=NonEmptyListEnum + use NonEmptyListEnum::*; // $ item=NonEmptyListEnum + Self::Single(value) // $ item=Single + } + } + #[rustfmt::skip] union NonEmptyListUnion< 'a, diff --git a/rust/ql/test/library-tests/path-resolution/path-resolution.expected b/rust/ql/test/library-tests/path-resolution/path-resolution.expected index fbb81bbf2caf..a711e5cf6b51 100644 --- a/rust/ql/test/library-tests/path-resolution/path-resolution.expected +++ b/rust/ql/test/library-tests/path-resolution/path-resolution.expected @@ -35,7 +35,7 @@ mod | main.rs:949:1:968:1 | mod impl_with_attribute_macro | | main.rs:970:1:1011:1 | mod patterns | | main.rs:1013:1:1057:1 | mod self_constructors | -| main.rs:1059:1:1080:1 | mod self_types | +| main.rs:1059:1:1088:1 | mod self_types | | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:20:1:20:12 | mod my3 | | my2/mod.rs:22:1:23:10 | mod mymod | @@ -76,7 +76,7 @@ resolvePath | main.rs:37:17:37:24 | ...::f | main.rs:26:9:28:9 | fn f | | main.rs:39:17:39:23 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:40:17:40:17 | f | main.rs:26:9:28:9 | fn f | -| main.rs:47:9:47:13 | super | main.rs:1:1:1119:2 | SourceFile | +| main.rs:47:9:47:13 | super | main.rs:1:1:1127:2 | SourceFile | | main.rs:47:9:47:17 | ...::m1 | main.rs:20:1:44:1 | mod m1 | | main.rs:47:9:47:21 | ...::m2 | main.rs:25:5:43:5 | mod m2 | | main.rs:47:9:47:24 | ...::g | main.rs:30:9:34:9 | fn g | @@ -91,7 +91,7 @@ resolvePath | main.rs:68:17:68:19 | Foo | main.rs:66:9:66:21 | struct Foo | | main.rs:71:13:71:15 | Foo | main.rs:60:5:60:17 | struct Foo | | main.rs:73:5:73:5 | f | main.rs:62:5:69:5 | fn f | -| main.rs:75:5:75:8 | self | main.rs:1:1:1119:2 | SourceFile | +| main.rs:75:5:75:8 | self | main.rs:1:1:1127:2 | SourceFile | | main.rs:75:5:75:11 | ...::i | main.rs:78:1:90:1 | fn i | | main.rs:79:5:79:11 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:81:13:81:15 | Foo | main.rs:55:1:55:13 | struct Foo | @@ -113,7 +113,7 @@ resolvePath | main.rs:112:9:112:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:118:9:118:15 | println | {EXTERNAL LOCATION} | MacroRules | | main.rs:122:9:122:15 | println | {EXTERNAL LOCATION} | MacroRules | -| main.rs:125:13:125:17 | super | main.rs:1:1:1119:2 | SourceFile | +| main.rs:125:13:125:17 | super | main.rs:1:1:1127:2 | SourceFile | | main.rs:125:13:125:21 | ...::m5 | main.rs:110:1:114:1 | mod m5 | | main.rs:126:9:126:9 | f | main.rs:111:5:113:5 | fn f | | main.rs:126:9:126:9 | f | main.rs:117:5:119:5 | fn f | @@ -541,83 +541,91 @@ resolvePath | main.rs:1068:14:1068:14 | T | main.rs:1066:27:1066:27 | T | | main.rs:1068:17:1068:25 | Box::<...> | {EXTERNAL LOCATION} | struct Box | | main.rs:1068:21:1068:24 | Self | main.rs:1066:5:1069:5 | enum NonEmptyListEnum | -| main.rs:1075:13:1075:16 | Copy | {EXTERNAL LOCATION} | trait Copy | -| main.rs:1077:17:1077:17 | T | main.rs:1074:9:1074:9 | T | -| main.rs:1078:16:1078:16 | T | main.rs:1074:9:1074:9 | T | -| main.rs:1078:23:1078:26 | Self | main.rs:1071:5:1079:5 | union NonEmptyListUnion | -| main.rs:1083:5:1083:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:1083:5:1083:14 | ...::nested | my.rs:1:1:1:15 | mod nested | -| main.rs:1083:5:1083:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | -| main.rs:1083:5:1083:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | -| main.rs:1083:5:1083:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | -| main.rs:1084:5:1084:6 | my | main.rs:1:1:1:7 | mod my | -| main.rs:1084:5:1084:9 | ...::f | my.rs:5:1:7:1 | fn f | -| main.rs:1085:5:1085:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | -| main.rs:1085:5:1085:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | -| main.rs:1085:5:1085:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | -| main.rs:1085:5:1085:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:1086:5:1086:5 | f | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:1087:5:1087:5 | g | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:1088:5:1088:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:1088:5:1088:12 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:1089:5:1089:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:1089:5:1089:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:1089:5:1089:13 | ...::g | main.rs:30:9:34:9 | fn g | -| main.rs:1090:5:1090:6 | m1 | main.rs:20:1:44:1 | mod m1 | -| main.rs:1090:5:1090:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | -| main.rs:1090:5:1090:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | -| main.rs:1090:5:1090:17 | ...::h | main.rs:37:27:41:13 | fn h | -| main.rs:1091:5:1091:6 | m4 | main.rs:46:1:53:1 | mod m4 | -| main.rs:1091:5:1091:9 | ...::i | main.rs:49:5:52:5 | fn i | -| main.rs:1092:5:1092:5 | h | main.rs:57:1:76:1 | fn h | -| main.rs:1093:5:1093:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | -| main.rs:1094:5:1094:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | -| main.rs:1095:5:1095:5 | j | main.rs:104:1:108:1 | fn j | -| main.rs:1096:5:1096:6 | m6 | main.rs:116:1:128:1 | mod m6 | -| main.rs:1096:5:1096:9 | ...::g | main.rs:121:5:127:5 | fn g | -| main.rs:1097:5:1097:6 | m7 | main.rs:130:1:149:1 | mod m7 | -| main.rs:1097:5:1097:9 | ...::f | main.rs:141:5:148:5 | fn f | -| main.rs:1098:5:1098:6 | m8 | main.rs:151:1:205:1 | mod m8 | -| main.rs:1098:5:1098:9 | ...::g | main.rs:189:5:204:5 | fn g | -| main.rs:1099:5:1099:6 | m9 | main.rs:207:1:215:1 | mod m9 | -| main.rs:1099:5:1099:9 | ...::f | main.rs:210:5:214:5 | fn f | -| main.rs:1100:5:1100:7 | m11 | main.rs:238:1:275:1 | mod m11 | -| main.rs:1100:5:1100:10 | ...::f | main.rs:243:5:246:5 | fn f | -| main.rs:1101:5:1101:7 | m15 | main.rs:306:1:375:1 | mod m15 | -| main.rs:1101:5:1101:10 | ...::f | main.rs:362:5:374:5 | fn f | -| main.rs:1102:5:1102:7 | m16 | main.rs:377:1:574:1 | mod m16 | -| main.rs:1102:5:1102:10 | ...::f | main.rs:446:5:470:5 | fn f | -| main.rs:1103:5:1103:20 | trait_visibility | main.rs:576:1:633:1 | mod trait_visibility | -| main.rs:1103:5:1103:23 | ...::f | main.rs:603:5:632:5 | fn f | -| main.rs:1104:5:1104:7 | m17 | main.rs:635:1:665:1 | mod m17 | -| main.rs:1104:5:1104:10 | ...::f | main.rs:659:5:664:5 | fn f | -| main.rs:1105:5:1105:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | -| main.rs:1105:5:1105:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | -| main.rs:1106:5:1106:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | -| main.rs:1106:5:1106:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | -| main.rs:1107:5:1107:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | -| main.rs:1107:5:1107:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | -| main.rs:1108:5:1108:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:1109:5:1109:12 | my_alias | main.rs:1:1:1:7 | mod my | -| main.rs:1109:5:1109:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | -| main.rs:1110:5:1110:7 | m18 | main.rs:667:1:685:1 | mod m18 | -| main.rs:1110:5:1110:12 | ...::m19 | main.rs:672:5:684:5 | mod m19 | -| main.rs:1110:5:1110:17 | ...::m20 | main.rs:677:9:683:9 | mod m20 | -| main.rs:1110:5:1110:20 | ...::g | main.rs:678:13:682:13 | fn g | -| main.rs:1111:5:1111:7 | m23 | main.rs:714:1:739:1 | mod m23 | -| main.rs:1111:5:1111:10 | ...::f | main.rs:734:5:738:5 | fn f | -| main.rs:1112:5:1112:7 | m24 | main.rs:741:1:809:1 | mod m24 | -| main.rs:1112:5:1112:10 | ...::f | main.rs:795:5:808:5 | fn f | -| main.rs:1113:5:1113:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | -| main.rs:1113:5:1113:11 | ...::h | main.rs:57:1:76:1 | fn h | -| main.rs:1114:5:1114:13 | z_changed | main.rs:814:1:814:9 | fn z_changed | -| main.rs:1115:5:1115:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | -| main.rs:1115:5:1115:22 | ...::z_on_type | main.rs:820:5:820:17 | fn z_on_type | -| main.rs:1116:5:1116:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | -| main.rs:1117:5:1117:29 | impl_with_attribute_macro | main.rs:949:1:968:1 | mod impl_with_attribute_macro | -| main.rs:1117:5:1117:35 | ...::test | main.rs:964:5:967:5 | fn test | -| main.rs:1118:5:1118:12 | patterns | main.rs:970:1:1011:1 | mod patterns | -| main.rs:1118:5:1118:18 | ...::test | main.rs:971:5:985:5 | fn test | +| main.rs:1072:10:1072:30 | NonEmptyListEnum::<...> | main.rs:1066:5:1069:5 | enum NonEmptyListEnum | +| main.rs:1072:27:1072:29 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1073:30:1073:32 | i32 | {EXTERNAL LOCATION} | struct i32 | +| main.rs:1073:38:1073:41 | Self | main.rs:1066:5:1069:5 | enum NonEmptyListEnum | +| main.rs:1074:17:1074:32 | NonEmptyListEnum | main.rs:1066:5:1069:5 | enum NonEmptyListEnum | +| main.rs:1075:13:1075:16 | Self | main.rs:1066:5:1069:5 | enum NonEmptyListEnum | +| main.rs:1075:13:1075:16 | Self | main.rs:1071:5:1077:5 | impl NonEmptyListEnum::<...> { ... } | +| main.rs:1075:13:1075:24 | ...::Single | main.rs:1067:9:1067:17 | Single | +| main.rs:1083:13:1083:16 | Copy | {EXTERNAL LOCATION} | trait Copy | +| main.rs:1085:17:1085:17 | T | main.rs:1082:9:1082:9 | T | +| main.rs:1086:16:1086:16 | T | main.rs:1082:9:1082:9 | T | +| main.rs:1086:23:1086:26 | Self | main.rs:1079:5:1087:5 | union NonEmptyListUnion | +| main.rs:1091:5:1091:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:1091:5:1091:14 | ...::nested | my.rs:1:1:1:15 | mod nested | +| main.rs:1091:5:1091:23 | ...::nested1 | my/nested.rs:1:1:17:1 | mod nested1 | +| main.rs:1091:5:1091:32 | ...::nested2 | my/nested.rs:2:5:11:5 | mod nested2 | +| main.rs:1091:5:1091:35 | ...::f | my/nested.rs:3:9:5:9 | fn f | +| main.rs:1092:5:1092:6 | my | main.rs:1:1:1:7 | mod my | +| main.rs:1092:5:1092:9 | ...::f | my.rs:5:1:7:1 | fn f | +| main.rs:1093:5:1093:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | +| main.rs:1093:5:1093:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | +| main.rs:1093:5:1093:29 | ...::nested4 | my2/nested2.rs:2:5:10:5 | mod nested4 | +| main.rs:1093:5:1093:32 | ...::f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1094:5:1094:5 | f | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1095:5:1095:5 | g | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1096:5:1096:9 | crate | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1096:5:1096:12 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1097:5:1097:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:1097:5:1097:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:1097:5:1097:13 | ...::g | main.rs:30:9:34:9 | fn g | +| main.rs:1098:5:1098:6 | m1 | main.rs:20:1:44:1 | mod m1 | +| main.rs:1098:5:1098:10 | ...::m2 | main.rs:25:5:43:5 | mod m2 | +| main.rs:1098:5:1098:14 | ...::m3 | main.rs:36:9:42:9 | mod m3 | +| main.rs:1098:5:1098:17 | ...::h | main.rs:37:27:41:13 | fn h | +| main.rs:1099:5:1099:6 | m4 | main.rs:46:1:53:1 | mod m4 | +| main.rs:1099:5:1099:9 | ...::i | main.rs:49:5:52:5 | fn i | +| main.rs:1100:5:1100:5 | h | main.rs:57:1:76:1 | fn h | +| main.rs:1101:5:1101:11 | f_alias | my2/nested2.rs:3:9:5:9 | fn f | +| main.rs:1102:5:1102:11 | g_alias | my2/nested2.rs:7:9:9:9 | fn g | +| main.rs:1103:5:1103:5 | j | main.rs:104:1:108:1 | fn j | +| main.rs:1104:5:1104:6 | m6 | main.rs:116:1:128:1 | mod m6 | +| main.rs:1104:5:1104:9 | ...::g | main.rs:121:5:127:5 | fn g | +| main.rs:1105:5:1105:6 | m7 | main.rs:130:1:149:1 | mod m7 | +| main.rs:1105:5:1105:9 | ...::f | main.rs:141:5:148:5 | fn f | +| main.rs:1106:5:1106:6 | m8 | main.rs:151:1:205:1 | mod m8 | +| main.rs:1106:5:1106:9 | ...::g | main.rs:189:5:204:5 | fn g | +| main.rs:1107:5:1107:6 | m9 | main.rs:207:1:215:1 | mod m9 | +| main.rs:1107:5:1107:9 | ...::f | main.rs:210:5:214:5 | fn f | +| main.rs:1108:5:1108:7 | m11 | main.rs:238:1:275:1 | mod m11 | +| main.rs:1108:5:1108:10 | ...::f | main.rs:243:5:246:5 | fn f | +| main.rs:1109:5:1109:7 | m15 | main.rs:306:1:375:1 | mod m15 | +| main.rs:1109:5:1109:10 | ...::f | main.rs:362:5:374:5 | fn f | +| main.rs:1110:5:1110:7 | m16 | main.rs:377:1:574:1 | mod m16 | +| main.rs:1110:5:1110:10 | ...::f | main.rs:446:5:470:5 | fn f | +| main.rs:1111:5:1111:20 | trait_visibility | main.rs:576:1:633:1 | mod trait_visibility | +| main.rs:1111:5:1111:23 | ...::f | main.rs:603:5:632:5 | fn f | +| main.rs:1112:5:1112:7 | m17 | main.rs:635:1:665:1 | mod m17 | +| main.rs:1112:5:1112:10 | ...::f | main.rs:659:5:664:5 | fn f | +| main.rs:1113:5:1113:11 | nested6 | my2/nested2.rs:14:5:18:5 | mod nested6 | +| main.rs:1113:5:1113:14 | ...::f | my2/nested2.rs:15:9:17:9 | fn f | +| main.rs:1114:5:1114:11 | nested8 | my2/nested2.rs:22:5:26:5 | mod nested8 | +| main.rs:1114:5:1114:14 | ...::f | my2/nested2.rs:23:9:25:9 | fn f | +| main.rs:1115:5:1115:7 | my3 | my2/mod.rs:20:1:20:12 | mod my3 | +| main.rs:1115:5:1115:10 | ...::f | my2/my3/mod.rs:1:1:5:1 | fn f | +| main.rs:1116:5:1116:12 | nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1117:5:1117:12 | my_alias | main.rs:1:1:1:7 | mod my | +| main.rs:1117:5:1117:22 | ...::nested_f | my/my4/my5/mod.rs:1:1:3:1 | fn f | +| main.rs:1118:5:1118:7 | m18 | main.rs:667:1:685:1 | mod m18 | +| main.rs:1118:5:1118:12 | ...::m19 | main.rs:672:5:684:5 | mod m19 | +| main.rs:1118:5:1118:17 | ...::m20 | main.rs:677:9:683:9 | mod m20 | +| main.rs:1118:5:1118:20 | ...::g | main.rs:678:13:682:13 | fn g | +| main.rs:1119:5:1119:7 | m23 | main.rs:714:1:739:1 | mod m23 | +| main.rs:1119:5:1119:10 | ...::f | main.rs:734:5:738:5 | fn f | +| main.rs:1120:5:1120:7 | m24 | main.rs:741:1:809:1 | mod m24 | +| main.rs:1120:5:1120:10 | ...::f | main.rs:795:5:808:5 | fn f | +| main.rs:1121:5:1121:8 | zelf | main.rs:0:0:0:0 | Crate(main@0.0.1) | +| main.rs:1121:5:1121:11 | ...::h | main.rs:57:1:76:1 | fn h | +| main.rs:1122:5:1122:13 | z_changed | main.rs:814:1:814:9 | fn z_changed | +| main.rs:1123:5:1123:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | +| main.rs:1123:5:1123:22 | ...::z_on_type | main.rs:820:5:820:17 | fn z_on_type | +| main.rs:1124:5:1124:11 | AStruct | main.rs:816:1:816:17 | struct AStruct | +| main.rs:1125:5:1125:29 | impl_with_attribute_macro | main.rs:949:1:968:1 | mod impl_with_attribute_macro | +| main.rs:1125:5:1125:35 | ...::test | main.rs:964:5:967:5 | fn test | +| main.rs:1126:5:1126:12 | patterns | main.rs:970:1:1011:1 | mod patterns | +| main.rs:1126:5:1126:18 | ...::test | main.rs:971:5:985:5 | fn test | | my2/mod.rs:4:5:4:11 | println | {EXTERNAL LOCATION} | MacroRules | | my2/mod.rs:5:5:5:11 | nested2 | my2/mod.rs:1:1:1:16 | mod nested2 | | my2/mod.rs:5:5:5:20 | ...::nested3 | my2/nested2.rs:1:1:11:1 | mod nested3 | @@ -643,7 +651,7 @@ resolvePath | my2/my3/mod.rs:3:5:3:5 | g | my2/mod.rs:3:1:6:1 | fn g | | my2/my3/mod.rs:4:5:4:5 | h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:7:5:7:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | -| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1119:2 | SourceFile | +| my2/my3/mod.rs:7:5:7:16 | ...::super | main.rs:1:1:1127:2 | SourceFile | | my2/my3/mod.rs:7:5:7:19 | ...::h | main.rs:57:1:76:1 | fn h | | my2/my3/mod.rs:8:5:8:9 | super | my2/mod.rs:1:1:25:34 | SourceFile | | my2/my3/mod.rs:8:5:8:12 | ...::g | my2/mod.rs:3:1:6:1 | fn g | From d72d8b63ed64adb20b3923f7c3271b54f892b58a Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Tue, 3 Feb 2026 11:54:28 +0100 Subject: [PATCH 279/433] Rust: Fix inconsistency by skipping `Self` in use globs --- rust/ql/lib/codeql/rust/internal/PathResolution.qll | 2 +- .../CONSISTENCY/PathResolutionConsistency.expected | 2 -- .../test/library-tests/path-resolution/path-resolution.expected | 1 - 3 files changed, 1 insertion(+), 4 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/PathResolution.qll b/rust/ql/lib/codeql/rust/internal/PathResolution.qll index bfc2c4a0cc08..f57d9eed5564 100644 --- a/rust/ql/lib/codeql/rust/internal/PathResolution.qll +++ b/rust/ql/lib/codeql/rust/internal/PathResolution.qll @@ -2135,7 +2135,7 @@ private predicate useImportEdge(Use use, string name, ItemNode item, SuccessorKi checkQualifiedVisibility(use, item, kind1, useOpt) and // glob imports can be shadowed not declares(encl, ns, name) and - not name = ["super", "self"] + not name = ["super", "self", "Self"] ) else ( item = used and diff --git a/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected index e98f8d29fed7..23ac5e722d5c 100644 --- a/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/path-resolution/CONSISTENCY/PathResolutionConsistency.expected @@ -7,5 +7,3 @@ multipleResolvedTargets | main.rs:565:9:566:15 | ...::Assoc(...) | | main.rs:568:9:569:12 | ...::f1(...) | | main.rs:571:9:572:12 | ...::f1(...) | -multiplePathResolutions -| main.rs:1075:13:1074:16 | Self | diff --git a/rust/ql/test/library-tests/path-resolution/path-resolution.expected b/rust/ql/test/library-tests/path-resolution/path-resolution.expected index a711e5cf6b51..209828069996 100644 --- a/rust/ql/test/library-tests/path-resolution/path-resolution.expected +++ b/rust/ql/test/library-tests/path-resolution/path-resolution.expected @@ -546,7 +546,6 @@ resolvePath | main.rs:1073:30:1073:32 | i32 | {EXTERNAL LOCATION} | struct i32 | | main.rs:1073:38:1073:41 | Self | main.rs:1066:5:1069:5 | enum NonEmptyListEnum | | main.rs:1074:17:1074:32 | NonEmptyListEnum | main.rs:1066:5:1069:5 | enum NonEmptyListEnum | -| main.rs:1075:13:1075:16 | Self | main.rs:1066:5:1069:5 | enum NonEmptyListEnum | | main.rs:1075:13:1075:16 | Self | main.rs:1071:5:1077:5 | impl NonEmptyListEnum::<...> { ... } | | main.rs:1075:13:1075:24 | ...::Single | main.rs:1067:9:1067:17 | Single | | main.rs:1083:13:1083:16 | Copy | {EXTERNAL LOCATION} | trait Copy | From 208cf716dc49e842af7c1ba60f50a1da88f54a65 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Tue, 3 Feb 2026 10:59:55 +0000 Subject: [PATCH 280/433] C++: Add tests with tests for remote flow sources from the Win32 API and from the Azure SDK. --- .../dataflow/external-models/azure.cpp | 297 ++++++++++++++++++ .../external-models/validatemodels.expected | 3 + .../dataflow/external-models/windows.cpp | 161 ++++++++++ 3 files changed, 461 insertions(+) create mode 100644 cpp/ql/test/library-tests/dataflow/external-models/azure.cpp diff --git a/cpp/ql/test/library-tests/dataflow/external-models/azure.cpp b/cpp/ql/test/library-tests/dataflow/external-models/azure.cpp new file mode 100644 index 000000000000..1b6c0c059fc5 --- /dev/null +++ b/cpp/ql/test/library-tests/dataflow/external-models/azure.cpp @@ -0,0 +1,297 @@ +using uint16_t = unsigned short; +using int64_t = long long; +using size_t = unsigned long; +using uint8_t = unsigned char; +using int32_t = int; +using uint32_t = unsigned int; + +namespace std +{ + class string + { + public: + string(); + string(const char *); + ~string(); + }; + + template + class map + { + public: + map(); + ~map(); + + V& operator[](const K& key); + }; + + template + class vector + { + public: + vector(); + ~vector(); + + T& operator[](size_t); + }; + + template + class unique_ptr { + public: + unique_ptr(); + ~unique_ptr(); + + T* get(); + }; +} + +namespace Azure +{ + template + class Nullable + { + public: + Nullable(); + Nullable(const T); + Nullable(const Nullable &); + ~Nullable(); + Nullable (Nullable &&); + Nullable & operator= (const Nullable &); + bool HasValue() const; + const T & Value () const; + T& Value (); + const T * operator-> () const; + T * operator-> (); + const T & operator* () const; + T & operator* (); + }; + + namespace Core + { + class Url + { + public: + Url(); + Url(const std::string &); + void AppendPath(const std::string &encodedPath); + void AppendQueryParameter(const std::string &encodedKey, + const std::string &encodedValue); + + static std::string Url::Decode(const std::string &value); + static std::string Url::Encode(const std::string &value, + const std::string &doNotEncodeSymbols = ""); + + std::string Url::GetAbsoluteUrl() const; + const std::string &GetHost() const; + const std::string &GetPath() const; + uint16_t GetPort() const; + std::map GetQueryParameters() const; + std::string Url::GetRelativeUrl() const; + const std::string &GetScheme() const; + void RemoveQueryParameter(const std::string &encodedKey); + void SetHost(const std::string &encodedHost); + void SetPath(const std::string &encodedPath); + void SetPort(uint16_t port); + void SetQueryParameters(std::map queryParameters); + void SetScheme(const std::string &scheme); + }; + + class Context + { + public: + Context(); + }; + + namespace IO + { + class BodyStream + { + public: + virtual ~BodyStream(); + virtual int64_t Length() const = 0; + virtual void Rewind(); + size_t Read(uint8_t *buffer, size_t count, Azure::Core::Context const &context = Azure::Core::Context()); + size_t ReadToCount(uint8_t *buffer, size_t count, Azure::Core::Context const &context = Azure::Core::Context()); + std::vector ReadToEnd(Azure::Core::Context const &context = Azure::Core::Context()); + }; + } + + enum class HttpStatusCode { + None = 0, + Continue = 100, + SwitchingProtocols = 101, + Processing = 102, + EarlyHints = 103, + OK = 200, + Created = 201, + Accepted = 202, + NonAuthoritativeInformation = 203, + NoContent = 204, + ResetContent = 205, + PartialContent = 206, + MultiStatus = 207, + AlreadyReported = 208, + IMUsed = 226, + MultipleChoices = 300, + MovedPermanently = 301, + Found = 302, + SeeOther = 303, + NotModified = 304, + UseProxy = 305, + TemporaryRedirect = 307, + PermanentRedirect = 308, + BadRequest = 400, + Unauthorized = 401, + PaymentRequired = 402, + Forbidden = 403, + NotFound = 404, + MethodNotAllowed = 405, + NotAcceptable = 406, + ProxyAuthenticationRequired = 407, + RequestTimeout = 408, + Conflict = 409, + Gone = 410, + LengthRequired = 411, + PreconditionFailed = 412, + PayloadTooLarge = 413, + URITooLong = 414, + UnsupportedMediaType = 415, + RangeNotSatisfiable = 416, + ExpectationFailed = 417, + MisdirectedRequest = 421, + UnprocessableEntity = 422, + Locked = 423, + FailedDependency = 424, + TooEarly = 425, + UpgradeRequired = 426, + PreconditionRequired = 428, + TooManyRequests = 429, + RequestHeaderFieldsTooLarge = 431, + UnavailableForLegalReasons = 451, + InternalServerError = 500, + NotImplemented = 501, + BadGateway = 502, + ServiceUnavailable = 503, + GatewayTimeout = 504, + HTTPVersionNotSupported = 505, + VariantAlsoNegotiates = 506, + InsufficientStorage = 507, + LoopDetected = 508, + NotExtended = 510, + NetworkAuthenticationRequired = 511 + }; + + namespace Http + { + class HttpMethod + { + public: + HttpMethod(std::string value); + bool operator==(const HttpMethod &other) const; + bool operator!=(const HttpMethod &other) const; + const std::string &ToString() const; + }; + + extern const HttpMethod Get; + extern const HttpMethod Head; + extern const HttpMethod Post; + extern const HttpMethod Put; + extern const HttpMethod Delete; + extern const HttpMethod Patch; + extern const HttpMethod Options; + + class Request + { + public: + explicit Request(HttpMethod httpMethod, + Url url); + explicit Request(HttpMethod httpMethod, + Url url, + bool shouldBufferResponse); + explicit Request(HttpMethod httpMethod, + Url url, + IO::BodyStream *bodyStream); + explicit Request(HttpMethod httpMethod, + Url url, + IO::BodyStream *bodyStream, + bool shouldBufferResponse); + std::map GetHeaders () const; + Azure::Nullable GetHeader(std::string const &name); + IO::BodyStream * GetBodyStream(); + Azure::Core::IO::BodyStream const* GetBodyStream () const; + }; + + class RawResponse { + public: + RawResponse (int32_t majorVersion, int32_t minorVersion, HttpStatusCode statusCode, std::string const &reasonPhrase); + RawResponse (RawResponse const &response); + RawResponse (RawResponse &&response); + ~RawResponse (); + void SetHeader (std::string const &name, std::string const &value); + void SetBodyStream (std::unique_ptr< Azure::Core::IO::BodyStream > stream); + void SetBody (std::vector< uint8_t > body); + uint32_t GetMajorVersion () const; + uint32_t GetMinorVersion () const; + HttpStatusCode GetStatusCode () const; + std::string const & GetReasonPhrase () const; + std::map& GetHeaders () const; + std::unique_ptr ExtractBodyStream (); + std::vector & GetBody (); + std::vector const& GetBody() const; + }; + } + } +} + +void sink(char); +void sink(std::string); +void sink(std::vector); +void sink(Azure::Nullable); + +void test_BodyStream() { + Azure::Core::Http::Request request(Azure::Core::Http::Get, Azure::Core::Url("http://example.com")); + Azure::Core::IO::BodyStream * resp = request.GetBodyStream(); + + { + unsigned char buffer[1024]; + resp->Read(buffer, sizeof(buffer)); + sink(*buffer); // $ MISSING: ir + } + { + unsigned char buffer[1024]; + resp->ReadToCount(buffer, sizeof(buffer)); + sink(*buffer); // $ MISSING: ir + } + { + std::vector vec = resp->ReadToEnd(); + sink(vec); // $ MISSING: ir + } +} + +void test_RawResponse(Azure::Core::Http::RawResponse& resp) { + { + std::map body = resp.GetHeaders(); + sink(body["Content-Type"]); // $ MISSING: ir + } + { + std::vector body = resp.GetBody(); + sink(body); // $ MISSING: ir + } + { + std::unique_ptr bodyStream = resp.ExtractBodyStream(); + sink(bodyStream.get()->ReadToEnd()); // $ MISSING: ir + } +} + +void test_GetHeader() { + Azure::Core::Http::Request request(Azure::Core::Http::Get, Azure::Core::Url("http://example.com")); + { + auto headerValue = request.GetHeader("Content-Type").Value(); + sink(headerValue); // $ MISSING: ir + } + { + std::map headers = request.GetHeaders(); + std::string contentType = headers["Content-Type"]; + sink(contentType); // $ MISSING: ir + } +} \ No newline at end of file diff --git a/cpp/ql/test/library-tests/dataflow/external-models/validatemodels.expected b/cpp/ql/test/library-tests/dataflow/external-models/validatemodels.expected index 1b74b290eb39..15ae50bddc26 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/validatemodels.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/validatemodels.expected @@ -5586,3 +5586,6 @@ | Unrecognized output specification "Field[***hEvent]" in summary model. | | Unrecognized output specification "Parameter[***0]" in summary model. | | Unrecognized output specification "Parameter[****0]" in summary model. | +| Unrecognized output specification "ReturnValue[*****]" in summary model. | +| Unrecognized output specification "ReturnValue[****]" in summary model. | +| Unrecognized output specification "ReturnValue[***]" in summary model. | diff --git a/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp b/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp index 3e03c1a69a5b..5bd9c49170f8 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp +++ b/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp @@ -573,4 +573,165 @@ void test_copy_and_move_memory() { RtlMoveVolatileMemory(dest_buffer, &x, sizeof(x)); sink(dest_buffer[0]); // $ ir } +} + +using HINTERNET = void*; +using ULONGLONG = unsigned long long; +using LPCWSTR = const wchar_t*; +using UINT = unsigned int; +using PDWORD = DWORD*; +using PCSTR = const char*; +typedef union _WINHTTP_HEADER_NAME { + PCWSTR pwszName; + PCSTR pszName; +} WINHTTP_HEADER_NAME, *PWINHTTP_HEADER_NAME; +typedef struct _WINHTTP_EXTENDED_HEADER { + union { + PCWSTR pwszName; + PCSTR pszName; + }; + union { + PCWSTR pwszValue; + PCSTR pszValue; + }; +} WINHTTP_EXTENDED_HEADER, *PWINHTTP_EXTENDED_HEADER; + +BOOL WinHttpReadData( + HINTERNET hRequest, + LPVOID lpBuffer, + DWORD dwNumberOfBytesToRead, + LPDWORD lpdwNumberOfBytesRead +); + +DWORD WinHttpReadDataEx( + HINTERNET hRequest, + LPVOID lpBuffer, + DWORD dwNumberOfBytesToRead, + LPDWORD lpdwNumberOfBytesRead, + ULONGLONG ullFlags, + DWORD cbProperty, + PVOID pvProperty +); + +BOOL WinHttpQueryHeaders( + HINTERNET hRequest, + DWORD dwInfoLevel, + LPCWSTR pwszName, + LPVOID lpBuffer, + LPDWORD lpdwBufferLength, + LPDWORD lpdwIndex +); + +DWORD WinHttpQueryHeadersEx( + HINTERNET hRequest, + DWORD dwInfoLevel, + ULONGLONG ullFlags, + UINT uiCodePage, + PDWORD pdwIndex, + PWINHTTP_HEADER_NAME pHeaderName, + PVOID pBuffer, + PDWORD pdwBufferLength, + PWINHTTP_EXTENDED_HEADER *ppHeaders, + PDWORD pdwHeadersCount +); + +void sink(PCSTR); + +void test_winhttp(HINTERNET hRequest) { + { + char buffer[1024]; + DWORD bytesRead; + BOOL result = WinHttpReadData(hRequest, buffer, sizeof(buffer), &bytesRead); + sink(buffer); + sink(*buffer); // $ MISSING: ir + } + { + char buffer[1024]; + DWORD bytesRead; + DWORD result = WinHttpReadDataEx(hRequest, buffer, sizeof(buffer), &bytesRead, 0, 0, nullptr); + sink(buffer); + sink(*buffer); // $ MISSING: ir + } + { + char buffer[1024]; + DWORD bufferLength = sizeof(buffer); + DWORD result = WinHttpQueryHeaders(hRequest, 0, nullptr, buffer, &bufferLength, nullptr); + sink(buffer); + sink(*buffer); // $ MISSING: ir + } + { + char buffer[1024]; + DWORD bufferLength = sizeof(buffer); + PWINHTTP_EXTENDED_HEADER headers; + DWORD headersCount; + PWINHTTP_HEADER_NAME headerName; + DWORD result = WinHttpQueryHeadersEx(hRequest, 0, 0, 0, nullptr, headerName, buffer, &bufferLength, &headers, &headersCount); + sink(buffer); + sink(*buffer); // $ MISSING: ir + sink(headerName->pszName); + sink(*headerName->pszName); // $ MISSING: ir + sink(headers->pszValue); + sink(*headers->pszValue); // $ MISSING: ir + } +} + +using LPWSTR = wchar_t*; +using INTERNET_SCHEME = enum { + INTERNET_SCHEME_INVALID = -1, + INTERNET_SCHEME_UNKNOWN = 0, + INTERNET_SCHEME_HTTP = 1, + INTERNET_SCHEME_HTTPS = 2, + INTERNET_SCHEME_FTP = 3, + INTERNET_SCHEME_FILE = 4, + INTERNET_SCHEME_NEWS = 5, + INTERNET_SCHEME_MAILTO = 6, + INTERNET_SCHEME_SNEWS = 7, + INTERNET_SCHEME_SOCKS = 8, + INTERNET_SCHEME_WAIS = 9, + INTERNET_SCHEME_LAST = 10 +}; +using INTERNET_PORT = unsigned short; +using LPCWSTR = const wchar_t*; + +typedef struct _WINHTTP_URL_COMPONENTS { + DWORD dwStructSize; + LPWSTR lpszScheme; + DWORD dwSchemeLength; + INTERNET_SCHEME nScheme; + LPWSTR lpszHostName; + DWORD dwHostNameLength; + INTERNET_PORT nPort; + LPWSTR lpszUserName; + DWORD dwUserNameLength; + LPWSTR lpszPassword; + DWORD dwPasswordLength; + LPWSTR lpszUrlPath; + DWORD dwUrlPathLength; + LPWSTR lpszExtraInfo; + DWORD dwExtraInfoLength; +} URL_COMPONENTS, *LPURL_COMPONENTS; + +BOOL WinHttpCrackUrl( + LPCWSTR pwszUrl, + DWORD dwUrlLength, + DWORD dwFlags, + LPURL_COMPONENTS lpUrlComponents +); + +void sink(LPWSTR); + +void test_winhttp_crack_url() { + { + URL_COMPONENTS urlComponents; + urlComponents.dwStructSize = sizeof(URL_COMPONENTS); + wchar_t x[256]; + x[0] = (wchar_t)source(); + BOOL result = WinHttpCrackUrl(x, 0, 0, &urlComponents); + sink(urlComponents.lpszHostName); + sink(*urlComponents.lpszHostName); // $ MISSING: ir + sink(urlComponents.lpszUrlPath); + sink(*urlComponents.lpszUrlPath); // $ MISSING: ir + sink(urlComponents.lpszExtraInfo); + sink(*urlComponents.lpszExtraInfo); // $ MISSING: ir + } } \ No newline at end of file From cbc2dbc14d77d125a1d9a7e54100a74089346758 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Tue, 3 Feb 2026 11:14:16 +0000 Subject: [PATCH 281/433] C++: Add flow sources and summary models. --- cpp/ql/lib/ext/Windows.model.yml | 11 +++++++- cpp/ql/lib/ext/azure.core.model.yml | 41 +++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 cpp/ql/lib/ext/azure.core.model.yml diff --git a/cpp/ql/lib/ext/Windows.model.yml b/cpp/ql/lib/ext/Windows.model.yml index ccebfc9f3401..a2ec30d95bda 100644 --- a/cpp/ql/lib/ext/Windows.model.yml +++ b/cpp/ql/lib/ext/Windows.model.yml @@ -24,6 +24,13 @@ extensions: - ["", "", False, "MapViewOfFileNuma2", "", "", "ReturnValue[*]", "local", "manual"] # ntifs.h - ["", "", False, "NtReadFile", "", "", "Argument[*5]", "local", "manual"] + # winhttp.h + - ["", "", False, "WinHttpReadData", "", "", "Argument[*1]", "remote", "manual"] + - ["", "", False, "WinHttpReadDataEx", "", "", "Argument[*1]", "remote", "manual"] + - ["", "", False, "WinHttpQueryHeaders", "", "", "Argument[*3]", "remote", "manual"] + - ["", "", False, "WinHttpQueryHeadersEx", "", "", "Argument[*5]", "remote", "manual"] + - ["", "", False, "WinHttpQueryHeadersEx", "", "", "Argument[*6]", "remote", "manual"] + - ["", "", False, "WinHttpQueryHeadersEx", "", "", "Argument[**8]", "remote", "manual"] - addsTo: pack: codeql/cpp-all extensible: summaryModel @@ -46,4 +53,6 @@ extensions: - ["", "", False, "RtlMoveMemory", "", "", "Argument[*@1]", "Argument[*@0]", "value", "manual"] - ["", "", False, "RtlMoveVolatileMemory", "", "", "Argument[*@1]", "Argument[*@0]", "value", "manual"] # winternl.h - - ["", "", False, "RtlInitUnicodeString", "", "", "Argument[*1]", "Argument[*0].Field[*Buffer]", "value", "manual"] \ No newline at end of file + - ["", "", False, "RtlInitUnicodeString", "", "", "Argument[*1]", "Argument[*0].Field[*Buffer]", "value", "manual"] + # winhttp.h + - ["", "", False, "WinHttpCrackUrl", "", "", "Argument[*0]", "Argument[*3]", "taint", "manual"] \ No newline at end of file diff --git a/cpp/ql/lib/ext/azure.core.model.yml b/cpp/ql/lib/ext/azure.core.model.yml new file mode 100644 index 000000000000..7c5280b0f180 --- /dev/null +++ b/cpp/ql/lib/ext/azure.core.model.yml @@ -0,0 +1,41 @@ +extensions: + - addsTo: + pack: codeql/cpp-all + extensible: sourceModel + data: # namespace, type, subtypes, name, signature, ext, output, kind, provenance + - ["Azure::Core::Http", "RawResponse", True, "GetHeaders", "", "", "ReturnValue[*]", "remote", "manual"] + - ["Azure::Core::Http", "RawResponse", True, "GetBody", "", "", "ReturnValue[*]", "remote", "manual"] + - ["Azure::Core::Http", "RawResponse", True, "ExtractBodyStream", "", "", "ReturnValue[*]", "remote", "manual"] + - ["Azure::Core::Http", "Request", True, "GetHeaders", "", "", "ReturnValue", "remote", "manual"] + - ["Azure::Core::Http", "Request", True, "GetHeader", "", "", "ReturnValue", "remote", "manual"] + - ["Azure::Core::Http", "Request", True, "GetBodyStream", "", "", "ReturnValue[*]", "remote", "manual"] + + - addsTo: + pack: codeql/cpp-all + extensible: summaryModel + data: # namespace, type, subtypes, name, signature, ext, input, output, kind, provenance + - ["Azure::Core", "Url", True, "Url", "", "", "Argument[*0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "SetScheme", "", "", "Argument[*0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "SetHost", "", "", "Argument[*0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "SetPort", "", "", "Argument[0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "SetPath", "", "", "Argument[*0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "SetQueryParameters", "", "", "Argument[0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "AppendPath", "", "", "Argument[*0]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "AppendQueryParameter", "", "", "Argument[*1]", "Argument[-1]", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetHost", "", "", "Argument[-1]", "ReturnValue[*]", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetPath", "", "", "Argument[-1]", "ReturnValue[*]", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetPort", "", "", "Argument[-1]", "ReturnValue", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetQueryParameters", "", "", "Argument[-1]", "ReturnValue", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetScheme", "", "", "Argument[-1]", "ReturnValue[*]", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetRelativeUrl", "", "", "Argument[-1]", "ReturnValue", "taint", "manual"] + - ["Azure::Core", "Url", True, "GetAbsoluteUrl", "", "", "Argument[-1]", "ReturnValue", "taint", "manual"] + - ["Azure::Core", "Url", True, "Decode", "", "", "Argument[*0]", "ReturnValue", "taint", "manual"] + - ["Azure::Core", "Url", True, "Encode", "", "", "Argument[*0]", "ReturnValue", "taint", "manual"] + - ["Azure::Core::IO", "BodyStream", True, "Read", "", "", "Argument[-1]", "Argument[*0]", "taint", "manual"] + - ["Azure::Core::IO", "BodyStream", True, "ReadToCount", "", "", "Argument[-1]", "Argument[*0]", "taint", "manual"] + - ["Azure::Core::IO", "BodyStream", True, "ReadToEnd", "", "", "Argument[-1]", "ReturnValue.Element", "taint", "manual"] + - ["Azure", "Nullable", True, "Nullable", "", "", "Argument[0]", "Argument[-1]", "taint", "manual"] + - ["Azure", "Nullable", True, "operator=", "", "", "Argument[*0]", "Argument[-1]", "value", "manual"] + - ["Azure", "Nullable", True, "Value", "", "", "Argument[-1]", "ReturnValue[*]", "taint", "manual"] + - ["Azure", "Nullable", True, "operator->", "", "", "Argument[-1]", "ReturnValue[*]", "taint", "manual"] + - ["Azure", "Nullable", True, "operator*", "", "", "Argument[-1]", "ReturnValue[*]", "taint", "manual"] \ No newline at end of file From 5531ef9bc15cbd9dd348f3ea0b583e89f3fc2a24 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Tue, 3 Feb 2026 11:17:23 +0000 Subject: [PATCH 282/433] C++: Accept test changes. --- .../dataflow/external-models/azure.cpp | 16 +- .../dataflow/external-models/flow.expected | 265 +++++++++++++----- .../dataflow/external-models/sources.expected | 12 + .../dataflow/external-models/steps.expected | 6 + .../dataflow/external-models/windows.cpp | 8 +- 5 files changed, 229 insertions(+), 78 deletions(-) diff --git a/cpp/ql/test/library-tests/dataflow/external-models/azure.cpp b/cpp/ql/test/library-tests/dataflow/external-models/azure.cpp index 1b6c0c059fc5..14407a8b5bed 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/azure.cpp +++ b/cpp/ql/test/library-tests/dataflow/external-models/azure.cpp @@ -255,31 +255,31 @@ void test_BodyStream() { { unsigned char buffer[1024]; resp->Read(buffer, sizeof(buffer)); - sink(*buffer); // $ MISSING: ir + sink(*buffer); // $ ir } { unsigned char buffer[1024]; resp->ReadToCount(buffer, sizeof(buffer)); - sink(*buffer); // $ MISSING: ir + sink(*buffer); // $ ir } { std::vector vec = resp->ReadToEnd(); - sink(vec); // $ MISSING: ir + sink(vec); // $ ir } } void test_RawResponse(Azure::Core::Http::RawResponse& resp) { { std::map body = resp.GetHeaders(); - sink(body["Content-Type"]); // $ MISSING: ir + sink(body["Content-Type"]); // $ ir } { std::vector body = resp.GetBody(); - sink(body); // $ MISSING: ir + sink(body); // $ ir } { std::unique_ptr bodyStream = resp.ExtractBodyStream(); - sink(bodyStream.get()->ReadToEnd()); // $ MISSING: ir + sink(bodyStream.get()->ReadToEnd()); // $ ir } } @@ -287,11 +287,11 @@ void test_GetHeader() { Azure::Core::Http::Request request(Azure::Core::Http::Get, Azure::Core::Url("http://example.com")); { auto headerValue = request.GetHeader("Content-Type").Value(); - sink(headerValue); // $ MISSING: ir + sink(headerValue); // $ ir } { std::map headers = request.GetHeaders(); std::string contentType = headers["Content-Type"]; - sink(contentType); // $ MISSING: ir + sink(contentType); // $ ir } } \ No newline at end of file diff --git a/cpp/ql/test/library-tests/dataflow/external-models/flow.expected b/cpp/ql/test/library-tests/dataflow/external-models/flow.expected index d47ae8950fb3..ce1207f62092 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/flow.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/flow.expected @@ -14,45 +14,108 @@ models | 13 | Source: ; ; false; NtReadFile; ; ; Argument[*5]; local; manual | | 14 | Source: ; ; false; ReadFile; ; ; Argument[*1]; local; manual | | 15 | Source: ; ; false; ReadFileEx; ; ; Argument[*1]; local; manual | -| 16 | Source: ; ; false; ymlSource; ; ; ReturnValue; local; manual | -| 17 | Source: boost::asio; ; false; read_until; ; ; Argument[*1]; remote; manual | -| 18 | Summary: ; ; false; CommandLineToArgvA; ; ; Argument[*0]; ReturnValue[**]; taint; manual | -| 19 | Summary: ; ; false; CreateRemoteThread; ; ; Argument[@4]; Argument[3].Parameter[@0]; value; manual | -| 20 | Summary: ; ; false; CreateRemoteThreadEx; ; ; Argument[@4]; Argument[3].Parameter[@0]; value; manual | -| 21 | Summary: ; ; false; CreateThread; ; ; Argument[@3]; Argument[2].Parameter[@0]; value; manual | -| 22 | Summary: ; ; false; ReadFileEx; ; ; Argument[*3].Field[@hEvent]; Argument[4].Parameter[*2].Field[@hEvent]; value; manual | -| 23 | Summary: ; ; false; RtlCopyDeviceMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 24 | Summary: ; ; false; RtlCopyMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 25 | Summary: ; ; false; RtlCopyMemoryNonTemporal; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 26 | Summary: ; ; false; RtlCopyUnicodeString; ; ; Argument[*1].Field[*Buffer]; Argument[*0].Field[*Buffer]; value; manual | -| 27 | Summary: ; ; false; RtlCopyVolatileMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 28 | Summary: ; ; false; RtlInitUnicodeString; ; ; Argument[*1]; Argument[*0].Field[*Buffer]; value; manual | -| 29 | Summary: ; ; false; RtlMoveMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 30 | Summary: ; ; false; RtlMoveVolatileMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 31 | Summary: ; ; false; callWithArgument; ; ; Argument[1]; Argument[0].Parameter[0]; value; manual | -| 32 | Summary: ; ; false; callWithNonTypeTemplate; (const T &); ; Argument[*0]; ReturnValue; value; manual | -| 33 | Summary: ; ; false; pthread_create; ; ; Argument[@3]; Argument[2].Parameter[@0]; value; manual | -| 34 | Summary: ; ; false; ymlStepGenerated; ; ; Argument[0]; ReturnValue; taint; df-generated | -| 35 | Summary: ; ; false; ymlStepManual; ; ; Argument[0]; ReturnValue; taint; manual | -| 36 | Summary: ; ; false; ymlStepManual_with_body; ; ; Argument[0]; ReturnValue; taint; manual | -| 37 | Summary: boost::asio; ; false; buffer; ; ; Argument[*0]; ReturnValue; taint; manual | +| 16 | Source: ; ; false; WinHttpQueryHeaders; ; ; Argument[*3]; remote; manual | +| 17 | Source: ; ; false; WinHttpQueryHeadersEx; ; ; Argument[*6]; remote; manual | +| 18 | Source: ; ; false; WinHttpReadData; ; ; Argument[*1]; remote; manual | +| 19 | Source: ; ; false; WinHttpReadDataEx; ; ; Argument[*1]; remote; manual | +| 20 | Source: ; ; false; ymlSource; ; ; ReturnValue; local; manual | +| 21 | Source: Azure::Core::Http; RawResponse; true; ExtractBodyStream; ; ; ReturnValue[*]; remote; manual | +| 22 | Source: Azure::Core::Http; RawResponse; true; GetBody; ; ; ReturnValue[*]; remote; manual | +| 23 | Source: Azure::Core::Http; RawResponse; true; GetHeaders; ; ; ReturnValue[*]; remote; manual | +| 24 | Source: Azure::Core::Http; Request; true; GetBodyStream; ; ; ReturnValue[*]; remote; manual | +| 25 | Source: Azure::Core::Http; Request; true; GetHeader; ; ; ReturnValue; remote; manual | +| 26 | Source: Azure::Core::Http; Request; true; GetHeaders; ; ; ReturnValue; remote; manual | +| 27 | Source: boost::asio; ; false; read_until; ; ; Argument[*1]; remote; manual | +| 28 | Summary: ; ; false; CommandLineToArgvA; ; ; Argument[*0]; ReturnValue[**]; taint; manual | +| 29 | Summary: ; ; false; CreateRemoteThread; ; ; Argument[@4]; Argument[3].Parameter[@0]; value; manual | +| 30 | Summary: ; ; false; CreateRemoteThreadEx; ; ; Argument[@4]; Argument[3].Parameter[@0]; value; manual | +| 31 | Summary: ; ; false; CreateThread; ; ; Argument[@3]; Argument[2].Parameter[@0]; value; manual | +| 32 | Summary: ; ; false; ReadFileEx; ; ; Argument[*3].Field[@hEvent]; Argument[4].Parameter[*2].Field[@hEvent]; value; manual | +| 33 | Summary: ; ; false; RtlCopyDeviceMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 34 | Summary: ; ; false; RtlCopyMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 35 | Summary: ; ; false; RtlCopyMemoryNonTemporal; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 36 | Summary: ; ; false; RtlCopyUnicodeString; ; ; Argument[*1].Field[*Buffer]; Argument[*0].Field[*Buffer]; value; manual | +| 37 | Summary: ; ; false; RtlCopyVolatileMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 38 | Summary: ; ; false; RtlInitUnicodeString; ; ; Argument[*1]; Argument[*0].Field[*Buffer]; value; manual | +| 39 | Summary: ; ; false; RtlMoveMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 40 | Summary: ; ; false; RtlMoveVolatileMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 41 | Summary: ; ; false; callWithArgument; ; ; Argument[1]; Argument[0].Parameter[0]; value; manual | +| 42 | Summary: ; ; false; callWithNonTypeTemplate; (const T &); ; Argument[*0]; ReturnValue; value; manual | +| 43 | Summary: ; ; false; pthread_create; ; ; Argument[@3]; Argument[2].Parameter[@0]; value; manual | +| 44 | Summary: ; ; false; ymlStepGenerated; ; ; Argument[0]; ReturnValue; taint; df-generated | +| 45 | Summary: ; ; false; ymlStepManual; ; ; Argument[0]; ReturnValue; taint; manual | +| 46 | Summary: ; ; false; ymlStepManual_with_body; ; ; Argument[0]; ReturnValue; taint; manual | +| 47 | Summary: Azure::Core::IO; BodyStream; true; Read; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 48 | Summary: Azure::Core::IO; BodyStream; true; ReadToCount; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 49 | Summary: Azure::Core::IO; BodyStream; true; ReadToEnd; ; ; Argument[-1]; ReturnValue.Element; taint; manual | +| 50 | Summary: Azure; Nullable; true; Value; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 51 | Summary: boost::asio; ; false; buffer; ; ; Argument[*0]; ReturnValue; taint; manual | edges -| asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | asio_streams.cpp:56:18:56:23 | [summary] to write: ReturnValue in buffer | provenance | MaD:37 | -| asio_streams.cpp:87:34:87:44 | read_until output argument | asio_streams.cpp:91:7:91:17 | recv_buffer | provenance | Src:MaD:17 | -| asio_streams.cpp:87:34:87:44 | read_until output argument | asio_streams.cpp:93:29:93:39 | *recv_buffer | provenance | Src:MaD:17 Sink:MaD:2 | +| asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | asio_streams.cpp:56:18:56:23 | [summary] to write: ReturnValue in buffer | provenance | MaD:51 | +| asio_streams.cpp:87:34:87:44 | read_until output argument | asio_streams.cpp:91:7:91:17 | recv_buffer | provenance | Src:MaD:27 | +| asio_streams.cpp:87:34:87:44 | read_until output argument | asio_streams.cpp:93:29:93:39 | *recv_buffer | provenance | Src:MaD:27 Sink:MaD:2 | | asio_streams.cpp:97:37:97:44 | call to source | asio_streams.cpp:98:7:98:14 | send_str | provenance | TaintFunction | | asio_streams.cpp:97:37:97:44 | call to source | asio_streams.cpp:100:64:100:71 | *send_str | provenance | TaintFunction | | asio_streams.cpp:100:44:100:62 | call to buffer | asio_streams.cpp:100:44:100:62 | call to buffer | provenance | | | asio_streams.cpp:100:44:100:62 | call to buffer | asio_streams.cpp:101:7:101:17 | send_buffer | provenance | | | asio_streams.cpp:100:44:100:62 | call to buffer | asio_streams.cpp:103:29:103:39 | *send_buffer | provenance | Sink:MaD:2 | | asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | provenance | | -| asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:100:44:100:62 | call to buffer | provenance | MaD:37 | -| test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | test.cpp:4:5:4:17 | [summary] to write: ReturnValue in ymlStepManual | provenance | MaD:35 | -| test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | test.cpp:5:5:5:20 | [summary] to write: ReturnValue in ymlStepGenerated | provenance | MaD:34 | -| test.cpp:6:5:6:27 | [summary param] 0 in ymlStepManual_with_body | test.cpp:6:5:6:27 | [summary] to write: ReturnValue in ymlStepManual_with_body | provenance | MaD:36 | +| asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:100:44:100:62 | call to buffer | provenance | MaD:51 | +| azure.cpp:62:10:62:14 | [summary param] this in Value | azure.cpp:62:10:62:14 | [summary] to write: ReturnValue[*] in Value | provenance | MaD:50 | +| azure.cpp:113:16:113:19 | [summary param] this in Read | azure.cpp:113:16:113:19 | [summary param] *0 in Read [Return] | provenance | MaD:47 | +| azure.cpp:114:16:114:26 | [summary param] this in ReadToCount | azure.cpp:114:16:114:26 | [summary param] *0 in ReadToCount [Return] | provenance | MaD:48 | +| azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | azure.cpp:115:30:115:38 | [summary] to write: ReturnValue.Element in ReadToEnd | provenance | MaD:49 | +| azure.cpp:115:30:115:38 | [summary] to write: ReturnValue.Element in ReadToEnd | azure.cpp:115:30:115:38 | [summary] to write: ReturnValue in ReadToEnd [element] | provenance | | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:253:48:253:60 | *call to GetBodyStream | provenance | Src:MaD:24 | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:257:5:257:8 | *resp | provenance | | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:262:5:262:8 | *resp | provenance | | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:266:38:266:41 | *resp | provenance | | +| azure.cpp:257:5:257:8 | *resp | azure.cpp:113:16:113:19 | [summary param] this in Read | provenance | | +| azure.cpp:257:5:257:8 | *resp | azure.cpp:257:16:257:21 | Read output argument | provenance | MaD:47 | +| azure.cpp:257:16:257:21 | Read output argument | azure.cpp:258:10:258:16 | * ... | provenance | | +| azure.cpp:262:5:262:8 | *resp | azure.cpp:114:16:114:26 | [summary param] this in ReadToCount | provenance | | +| azure.cpp:262:5:262:8 | *resp | azure.cpp:262:23:262:28 | ReadToCount output argument | provenance | MaD:48 | +| azure.cpp:262:23:262:28 | ReadToCount output argument | azure.cpp:263:10:263:16 | * ... | provenance | | +| azure.cpp:266:38:266:41 | *resp | azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | provenance | | +| azure.cpp:266:38:266:41 | *resp | azure.cpp:266:44:266:52 | call to ReadToEnd [element] | provenance | MaD:49 | +| azure.cpp:266:44:266:52 | call to ReadToEnd [element] | azure.cpp:266:44:266:52 | call to ReadToEnd [element] | provenance | | +| azure.cpp:266:44:266:52 | call to ReadToEnd [element] | azure.cpp:267:10:267:12 | vec [element] | provenance | | +| azure.cpp:267:10:267:12 | vec [element] | azure.cpp:267:10:267:12 | vec | provenance | | +| azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:273:62:273:64 | call to GetHeaders | provenance | Src:MaD:23 | +| azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:274:14:274:29 | call to operator[] | provenance | TaintFunction | +| azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:274:14:274:29 | call to operator[] | provenance | TaintFunction | +| azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:274:14:274:29 | call to operator[] | provenance | TaintFunction | +| azure.cpp:274:14:274:29 | call to operator[] | azure.cpp:274:10:274:29 | call to operator[] | provenance | | +| azure.cpp:274:14:274:29 | call to operator[] | azure.cpp:274:14:274:29 | call to operator[] | provenance | | +| azure.cpp:277:45:277:47 | call to GetBody | azure.cpp:277:45:277:47 | call to GetBody | provenance | Src:MaD:22 | +| azure.cpp:277:45:277:47 | call to GetBody | azure.cpp:278:10:278:13 | body | provenance | | +| azure.cpp:277:45:277:47 | call to GetBody | azure.cpp:278:10:278:13 | body | provenance | | +| azure.cpp:278:10:278:13 | body | azure.cpp:278:10:278:13 | body | provenance | | +| azure.cpp:281:68:281:84 | *call to ExtractBodyStream | azure.cpp:281:68:281:84 | *call to ExtractBodyStream | provenance | Src:MaD:21 | +| azure.cpp:281:68:281:84 | *call to ExtractBodyStream | azure.cpp:282:21:282:23 | *call to get | provenance | | +| azure.cpp:282:21:282:23 | *call to get | azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | provenance | | +| azure.cpp:282:21:282:23 | *call to get | azure.cpp:282:28:282:36 | call to ReadToEnd [element] | provenance | MaD:49 | +| azure.cpp:282:28:282:36 | call to ReadToEnd [element] | azure.cpp:282:10:282:38 | call to ReadToEnd | provenance | | +| azure.cpp:282:28:282:36 | call to ReadToEnd [element] | azure.cpp:282:28:282:36 | call to ReadToEnd [element] | provenance | | +| azure.cpp:289:24:289:56 | call to GetHeader | azure.cpp:62:10:62:14 | [summary param] this in Value | provenance | | +| azure.cpp:289:24:289:56 | call to GetHeader | azure.cpp:289:63:289:65 | call to Value | provenance | MaD:50 | +| azure.cpp:289:32:289:40 | call to GetHeader | azure.cpp:289:24:289:56 | call to GetHeader | provenance | | +| azure.cpp:289:32:289:40 | call to GetHeader | azure.cpp:289:32:289:40 | call to GetHeader | provenance | Src:MaD:25 | +| azure.cpp:289:63:289:65 | call to Value | azure.cpp:289:63:289:65 | call to Value | provenance | | +| azure.cpp:289:63:289:65 | call to Value | azure.cpp:290:10:290:20 | headerValue | provenance | | +| azure.cpp:289:63:289:65 | call to Value | azure.cpp:290:10:290:20 | headerValue | provenance | | +| azure.cpp:290:10:290:20 | headerValue | azure.cpp:290:10:290:20 | headerValue | provenance | | +| azure.cpp:293:58:293:67 | call to GetHeaders | azure.cpp:293:58:293:67 | call to GetHeaders | provenance | Src:MaD:26 | +| azure.cpp:293:58:293:67 | call to GetHeaders | azure.cpp:294:38:294:53 | call to operator[] | provenance | TaintFunction | +| azure.cpp:294:38:294:53 | call to operator[] | azure.cpp:295:10:295:20 | contentType | provenance | | +| azure.cpp:294:38:294:53 | call to operator[] | azure.cpp:295:10:295:20 | contentType | provenance | | +| azure.cpp:295:10:295:20 | contentType | azure.cpp:295:10:295:20 | contentType | provenance | | +| test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | test.cpp:4:5:4:17 | [summary] to write: ReturnValue in ymlStepManual | provenance | MaD:45 | +| test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | test.cpp:5:5:5:20 | [summary] to write: ReturnValue in ymlStepGenerated | provenance | MaD:44 | +| test.cpp:6:5:6:27 | [summary param] 0 in ymlStepManual_with_body | test.cpp:6:5:6:27 | [summary] to write: ReturnValue in ymlStepManual_with_body | provenance | MaD:46 | | test.cpp:7:47:7:52 | value2 | test.cpp:7:64:7:69 | value2 | provenance | | | test.cpp:7:64:7:69 | value2 | test.cpp:7:5:7:30 | *ymlStepGenerated_with_body | provenance | | -| test.cpp:10:10:10:18 | call to ymlSource | test.cpp:10:10:10:18 | call to ymlSource | provenance | Src:MaD:16 | +| test.cpp:10:10:10:18 | call to ymlSource | test.cpp:10:10:10:18 | call to ymlSource | provenance | Src:MaD:20 | | test.cpp:10:10:10:18 | call to ymlSource | test.cpp:14:10:14:10 | x | provenance | Sink:MaD:1 | | test.cpp:10:10:10:18 | call to ymlSource | test.cpp:17:24:17:24 | x | provenance | | | test.cpp:10:10:10:18 | call to ymlSource | test.cpp:21:27:21:27 | x | provenance | | @@ -61,15 +124,15 @@ edges | test.cpp:17:10:17:22 | call to ymlStepManual | test.cpp:17:10:17:22 | call to ymlStepManual | provenance | | | test.cpp:17:10:17:22 | call to ymlStepManual | test.cpp:18:10:18:10 | y | provenance | Sink:MaD:1 | | test.cpp:17:24:17:24 | x | test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | provenance | | -| test.cpp:17:24:17:24 | x | test.cpp:17:10:17:22 | call to ymlStepManual | provenance | MaD:35 | +| test.cpp:17:24:17:24 | x | test.cpp:17:10:17:22 | call to ymlStepManual | provenance | MaD:45 | | test.cpp:21:10:21:25 | call to ymlStepGenerated | test.cpp:21:10:21:25 | call to ymlStepGenerated | provenance | | | test.cpp:21:10:21:25 | call to ymlStepGenerated | test.cpp:22:10:22:10 | z | provenance | Sink:MaD:1 | | test.cpp:21:27:21:27 | x | test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | provenance | | -| test.cpp:21:27:21:27 | x | test.cpp:21:10:21:25 | call to ymlStepGenerated | provenance | MaD:34 | +| test.cpp:21:27:21:27 | x | test.cpp:21:10:21:25 | call to ymlStepGenerated | provenance | MaD:44 | | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | provenance | | | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | test.cpp:26:10:26:11 | y2 | provenance | Sink:MaD:1 | | test.cpp:25:35:25:35 | x | test.cpp:6:5:6:27 | [summary param] 0 in ymlStepManual_with_body | provenance | | -| test.cpp:25:35:25:35 | x | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | provenance | MaD:36 | +| test.cpp:25:35:25:35 | x | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | provenance | MaD:46 | | test.cpp:32:11:32:36 | call to ymlStepGenerated_with_body | test.cpp:32:11:32:36 | call to ymlStepGenerated_with_body | provenance | | | test.cpp:32:11:32:36 | call to ymlStepGenerated_with_body | test.cpp:33:10:33:11 | z2 | provenance | Sink:MaD:1 | | test.cpp:32:41:32:41 | x | test.cpp:7:47:7:52 | value2 | provenance | | @@ -77,16 +140,16 @@ edges | test.cpp:46:30:46:32 | *arg [x] | test.cpp:47:12:47:19 | *arg [x] | provenance | | | test.cpp:47:12:47:19 | *arg [x] | test.cpp:48:13:48:13 | *s [x] | provenance | | | test.cpp:48:13:48:13 | *s [x] | test.cpp:48:16:48:16 | x | provenance | Sink:MaD:1 | -| test.cpp:52:5:52:18 | [summary param] *3 in pthread_create [x] | test.cpp:52:5:52:18 | [summary] to write: Argument[2].Parameter[*0] in pthread_create [x] | provenance | MaD:33 | +| test.cpp:52:5:52:18 | [summary param] *3 in pthread_create [x] | test.cpp:52:5:52:18 | [summary] to write: Argument[2].Parameter[*0] in pthread_create [x] | provenance | MaD:43 | | test.cpp:52:5:52:18 | [summary] to write: Argument[2].Parameter[*0] in pthread_create [x] | test.cpp:46:30:46:32 | *arg [x] | provenance | | | test.cpp:56:2:56:2 | *s [post update] [x] | test.cpp:59:55:59:64 | *& ... [x] | provenance | | | test.cpp:56:2:56:18 | ... = ... | test.cpp:56:2:56:2 | *s [post update] [x] | provenance | | -| test.cpp:56:8:56:16 | call to ymlSource | test.cpp:56:2:56:18 | ... = ... | provenance | Src:MaD:16 | +| test.cpp:56:8:56:16 | call to ymlSource | test.cpp:56:2:56:18 | ... = ... | provenance | Src:MaD:20 | | test.cpp:59:55:59:64 | *& ... [x] | test.cpp:52:5:52:18 | [summary param] *3 in pthread_create [x] | provenance | | -| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:31 | -| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:31 | -| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:31 | -| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:31 | +| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:41 | +| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:41 | +| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:41 | +| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:41 | | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | test.cpp:68:22:68:22 | y | provenance | | | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | test.cpp:74:22:74:22 | y | provenance | | | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | test.cpp:82:22:82:22 | y | provenance | | @@ -95,7 +158,7 @@ edges | test.cpp:74:22:74:22 | y | test.cpp:75:11:75:11 | y | provenance | Sink:MaD:1 | | test.cpp:82:22:82:22 | y | test.cpp:83:11:83:11 | y | provenance | Sink:MaD:1 | | test.cpp:88:22:88:22 | y | test.cpp:89:11:89:11 | y | provenance | Sink:MaD:1 | -| test.cpp:94:10:94:18 | call to ymlSource | test.cpp:94:10:94:18 | call to ymlSource | provenance | Src:MaD:16 | +| test.cpp:94:10:94:18 | call to ymlSource | test.cpp:94:10:94:18 | call to ymlSource | provenance | Src:MaD:20 | | test.cpp:94:10:94:18 | call to ymlSource | test.cpp:97:26:97:26 | x | provenance | | | test.cpp:94:10:94:18 | call to ymlSource | test.cpp:101:26:101:26 | x | provenance | | | test.cpp:94:10:94:18 | call to ymlSource | test.cpp:103:63:103:63 | x | provenance | | @@ -104,28 +167,28 @@ edges | test.cpp:101:26:101:26 | x | test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | provenance | | | test.cpp:103:63:103:63 | x | test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | provenance | | | test.cpp:104:62:104:62 | x | test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | provenance | | -| test.cpp:111:3:111:25 | [summary param] *0 in callWithNonTypeTemplate | test.cpp:111:3:111:25 | [summary] to write: ReturnValue in callWithNonTypeTemplate | provenance | MaD:32 | -| test.cpp:114:10:114:18 | call to ymlSource | test.cpp:114:10:114:18 | call to ymlSource | provenance | Src:MaD:16 | +| test.cpp:111:3:111:25 | [summary param] *0 in callWithNonTypeTemplate | test.cpp:111:3:111:25 | [summary] to write: ReturnValue in callWithNonTypeTemplate | provenance | MaD:42 | +| test.cpp:114:10:114:18 | call to ymlSource | test.cpp:114:10:114:18 | call to ymlSource | provenance | Src:MaD:20 | | test.cpp:114:10:114:18 | call to ymlSource | test.cpp:118:44:118:44 | *x | provenance | | | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | provenance | | | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | test.cpp:119:10:119:11 | y2 | provenance | Sink:MaD:1 | | test.cpp:118:44:118:44 | *x | test.cpp:111:3:111:25 | [summary param] *0 in callWithNonTypeTemplate | provenance | | -| test.cpp:118:44:118:44 | *x | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | provenance | MaD:32 | -| windows.cpp:17:8:17:25 | [summary param] *0 in CommandLineToArgvA | windows.cpp:17:8:17:25 | [summary] to write: ReturnValue[**] in CommandLineToArgvA | provenance | MaD:18 | +| test.cpp:118:44:118:44 | *x | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | provenance | MaD:42 | +| windows.cpp:17:8:17:25 | [summary param] *0 in CommandLineToArgvA | windows.cpp:17:8:17:25 | [summary] to write: ReturnValue[**] in CommandLineToArgvA | provenance | MaD:28 | | windows.cpp:22:15:22:29 | *call to GetCommandLineA | windows.cpp:22:15:22:29 | *call to GetCommandLineA | provenance | Src:MaD:3 | | windows.cpp:22:15:22:29 | *call to GetCommandLineA | windows.cpp:24:8:24:11 | * ... | provenance | | | windows.cpp:22:15:22:29 | *call to GetCommandLineA | windows.cpp:27:36:27:38 | *cmd | provenance | | | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | provenance | | | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | windows.cpp:30:8:30:15 | * ... | provenance | | | windows.cpp:27:36:27:38 | *cmd | windows.cpp:17:8:17:25 | [summary param] *0 in CommandLineToArgvA | provenance | | -| windows.cpp:27:36:27:38 | *cmd | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | provenance | MaD:18 | +| windows.cpp:27:36:27:38 | *cmd | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | provenance | MaD:28 | | windows.cpp:34:17:34:38 | *call to GetEnvironmentStringsA | windows.cpp:34:17:34:38 | *call to GetEnvironmentStringsA | provenance | Src:MaD:4 | | windows.cpp:34:17:34:38 | *call to GetEnvironmentStringsA | windows.cpp:36:10:36:13 | * ... | provenance | | | windows.cpp:39:36:39:38 | GetEnvironmentVariableA output argument | windows.cpp:41:10:41:13 | * ... | provenance | Src:MaD:5 | | windows.cpp:90:6:90:15 | [summary param] *3 in ReadFileEx [*hEvent] | windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[*hEvent] in ReadFileEx | provenance | | | windows.cpp:90:6:90:15 | [summary param] *3 in ReadFileEx [hEvent] | windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[hEvent] in ReadFileEx | provenance | | -| windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[*hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[*hEvent] in ReadFileEx | provenance | MaD:22 | -| windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[hEvent] in ReadFileEx | provenance | MaD:22 | +| windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[*hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[*hEvent] in ReadFileEx | provenance | MaD:32 | +| windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[hEvent] in ReadFileEx | provenance | MaD:32 | | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2] in ReadFileEx [*hEvent] | windows.cpp:147:16:147:27 | *lpOverlapped [*hEvent] | provenance | | | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2] in ReadFileEx [hEvent] | windows.cpp:157:16:157:27 | *lpOverlapped [hEvent] | provenance | | | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[*hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2] in ReadFileEx [*hEvent] | provenance | | @@ -173,11 +236,11 @@ edges | windows.cpp:332:23:332:40 | *call to MapViewOfFileNuma2 | windows.cpp:332:23:332:40 | *call to MapViewOfFileNuma2 | provenance | Src:MaD:12 | | windows.cpp:332:23:332:40 | *call to MapViewOfFileNuma2 | windows.cpp:333:20:333:52 | *pMapView | provenance | | | windows.cpp:333:20:333:52 | *pMapView | windows.cpp:335:10:335:16 | * ... | provenance | | -| windows.cpp:349:8:349:19 | [summary param] *3 in CreateThread [x] | windows.cpp:349:8:349:19 | [summary] to write: Argument[2].Parameter[*0] in CreateThread [x] | provenance | MaD:21 | +| windows.cpp:349:8:349:19 | [summary param] *3 in CreateThread [x] | windows.cpp:349:8:349:19 | [summary] to write: Argument[2].Parameter[*0] in CreateThread [x] | provenance | MaD:31 | | windows.cpp:349:8:349:19 | [summary] to write: Argument[2].Parameter[*0] in CreateThread [x] | windows.cpp:403:26:403:36 | *lpParameter [x] | provenance | | -| windows.cpp:357:8:357:25 | [summary param] *4 in CreateRemoteThread [x] | windows.cpp:357:8:357:25 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThread [x] | provenance | MaD:19 | +| windows.cpp:357:8:357:25 | [summary param] *4 in CreateRemoteThread [x] | windows.cpp:357:8:357:25 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThread [x] | provenance | MaD:29 | | windows.cpp:357:8:357:25 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThread [x] | windows.cpp:410:26:410:36 | *lpParameter [x] | provenance | | -| windows.cpp:387:8:387:27 | [summary param] *4 in CreateRemoteThreadEx [x] | windows.cpp:387:8:387:27 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThreadEx [x] | provenance | MaD:20 | +| windows.cpp:387:8:387:27 | [summary param] *4 in CreateRemoteThreadEx [x] | windows.cpp:387:8:387:27 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThreadEx [x] | provenance | MaD:30 | | windows.cpp:387:8:387:27 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThreadEx [x] | windows.cpp:417:26:417:36 | *lpParameter [x] | provenance | | | windows.cpp:403:26:403:36 | *lpParameter [x] | windows.cpp:405:10:405:25 | *lpParameter [x] | provenance | | | windows.cpp:405:10:405:25 | *lpParameter [x] | windows.cpp:406:8:406:8 | *s [x] | provenance | | @@ -196,17 +259,17 @@ edges | windows.cpp:439:7:439:8 | *& ... [x] | windows.cpp:349:8:349:19 | [summary param] *3 in CreateThread [x] | provenance | | | windows.cpp:451:7:451:8 | *& ... [x] | windows.cpp:357:8:357:25 | [summary param] *4 in CreateRemoteThread [x] | provenance | | | windows.cpp:464:7:464:8 | *& ... [x] | windows.cpp:387:8:387:27 | [summary param] *4 in CreateRemoteThreadEx [x] | provenance | | -| windows.cpp:473:17:473:37 | [summary param] *1 in RtlCopyVolatileMemory | windows.cpp:473:17:473:37 | [summary param] *0 in RtlCopyVolatileMemory [Return] | provenance | MaD:27 | -| windows.cpp:479:17:479:35 | [summary param] *1 in RtlCopyDeviceMemory | windows.cpp:479:17:479:35 | [summary param] *0 in RtlCopyDeviceMemory [Return] | provenance | MaD:23 | -| windows.cpp:485:6:485:18 | [summary param] *1 in RtlCopyMemory | windows.cpp:485:6:485:18 | [summary param] *0 in RtlCopyMemory [Return] | provenance | MaD:24 | -| windows.cpp:493:6:493:29 | [summary param] *1 in RtlCopyMemoryNonTemporal | windows.cpp:493:6:493:29 | [summary param] *0 in RtlCopyMemoryNonTemporal [Return] | provenance | MaD:25 | +| windows.cpp:473:17:473:37 | [summary param] *1 in RtlCopyVolatileMemory | windows.cpp:473:17:473:37 | [summary param] *0 in RtlCopyVolatileMemory [Return] | provenance | MaD:37 | +| windows.cpp:479:17:479:35 | [summary param] *1 in RtlCopyDeviceMemory | windows.cpp:479:17:479:35 | [summary param] *0 in RtlCopyDeviceMemory [Return] | provenance | MaD:33 | +| windows.cpp:485:6:485:18 | [summary param] *1 in RtlCopyMemory | windows.cpp:485:6:485:18 | [summary param] *0 in RtlCopyMemory [Return] | provenance | MaD:34 | +| windows.cpp:493:6:493:29 | [summary param] *1 in RtlCopyMemoryNonTemporal | windows.cpp:493:6:493:29 | [summary param] *0 in RtlCopyMemoryNonTemporal [Return] | provenance | MaD:35 | | windows.cpp:510:6:510:25 | [summary param] *1 in RtlCopyUnicodeString [*Buffer] | windows.cpp:510:6:510:25 | [summary] read: Argument[*1].Field[*Buffer] in RtlCopyUnicodeString | provenance | | -| windows.cpp:510:6:510:25 | [summary] read: Argument[*1].Field[*Buffer] in RtlCopyUnicodeString | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlCopyUnicodeString | provenance | MaD:26 | +| windows.cpp:510:6:510:25 | [summary] read: Argument[*1].Field[*Buffer] in RtlCopyUnicodeString | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlCopyUnicodeString | provenance | MaD:36 | | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0] in RtlCopyUnicodeString [*Buffer] | windows.cpp:510:6:510:25 | [summary param] *0 in RtlCopyUnicodeString [Return] [*Buffer] | provenance | | | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlCopyUnicodeString | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0] in RtlCopyUnicodeString [*Buffer] | provenance | | -| windows.cpp:515:6:515:18 | [summary param] *1 in RtlMoveMemory | windows.cpp:515:6:515:18 | [summary param] *0 in RtlMoveMemory [Return] | provenance | MaD:29 | -| windows.cpp:521:17:521:37 | [summary param] *1 in RtlMoveVolatileMemory | windows.cpp:521:17:521:37 | [summary param] *0 in RtlMoveVolatileMemory [Return] | provenance | MaD:30 | -| windows.cpp:527:6:527:25 | [summary param] *1 in RtlInitUnicodeString | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlInitUnicodeString | provenance | MaD:28 | +| windows.cpp:515:6:515:18 | [summary param] *1 in RtlMoveMemory | windows.cpp:515:6:515:18 | [summary param] *0 in RtlMoveMemory [Return] | provenance | MaD:39 | +| windows.cpp:521:17:521:37 | [summary param] *1 in RtlMoveVolatileMemory | windows.cpp:521:17:521:37 | [summary param] *0 in RtlMoveVolatileMemory [Return] | provenance | MaD:40 | +| windows.cpp:527:6:527:25 | [summary param] *1 in RtlInitUnicodeString | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlInitUnicodeString | provenance | MaD:38 | | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0] in RtlInitUnicodeString [*Buffer] | windows.cpp:527:6:527:25 | [summary param] *0 in RtlInitUnicodeString [Return] [*Buffer] | provenance | | | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlInitUnicodeString | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0] in RtlInitUnicodeString [*Buffer] | provenance | | | windows.cpp:533:11:533:16 | call to source | windows.cpp:533:11:533:16 | call to source | provenance | | @@ -218,37 +281,41 @@ edges | windows.cpp:533:11:533:16 | call to source | windows.cpp:573:40:573:41 | *& ... | provenance | | | windows.cpp:537:27:537:37 | RtlCopyVolatileMemory output argument | windows.cpp:538:10:538:23 | access to array | provenance | | | windows.cpp:537:40:537:41 | *& ... | windows.cpp:473:17:473:37 | [summary param] *1 in RtlCopyVolatileMemory | provenance | | -| windows.cpp:537:40:537:41 | *& ... | windows.cpp:537:27:537:37 | RtlCopyVolatileMemory output argument | provenance | MaD:27 | +| windows.cpp:537:40:537:41 | *& ... | windows.cpp:537:27:537:37 | RtlCopyVolatileMemory output argument | provenance | MaD:37 | | windows.cpp:542:25:542:35 | RtlCopyDeviceMemory output argument | windows.cpp:543:10:543:23 | access to array | provenance | | | windows.cpp:542:38:542:39 | *& ... | windows.cpp:479:17:479:35 | [summary param] *1 in RtlCopyDeviceMemory | provenance | | -| windows.cpp:542:38:542:39 | *& ... | windows.cpp:542:25:542:35 | RtlCopyDeviceMemory output argument | provenance | MaD:23 | +| windows.cpp:542:38:542:39 | *& ... | windows.cpp:542:25:542:35 | RtlCopyDeviceMemory output argument | provenance | MaD:33 | | windows.cpp:547:19:547:29 | RtlCopyMemory output argument | windows.cpp:548:10:548:23 | access to array | provenance | | | windows.cpp:547:32:547:33 | *& ... | windows.cpp:485:6:485:18 | [summary param] *1 in RtlCopyMemory | provenance | | -| windows.cpp:547:32:547:33 | *& ... | windows.cpp:547:19:547:29 | RtlCopyMemory output argument | provenance | MaD:24 | +| windows.cpp:547:32:547:33 | *& ... | windows.cpp:547:19:547:29 | RtlCopyMemory output argument | provenance | MaD:34 | | windows.cpp:552:30:552:40 | RtlCopyMemoryNonTemporal output argument | windows.cpp:553:10:553:23 | access to array | provenance | | | windows.cpp:552:43:552:44 | *& ... | windows.cpp:493:6:493:29 | [summary param] *1 in RtlCopyMemoryNonTemporal | provenance | | -| windows.cpp:552:43:552:44 | *& ... | windows.cpp:552:30:552:40 | RtlCopyMemoryNonTemporal output argument | provenance | MaD:25 | +| windows.cpp:552:43:552:44 | *& ... | windows.cpp:552:30:552:40 | RtlCopyMemoryNonTemporal output argument | provenance | MaD:35 | | windows.cpp:559:5:559:24 | ... = ... | windows.cpp:561:39:561:44 | *buffer | provenance | | | windows.cpp:559:17:559:24 | call to source | windows.cpp:559:5:559:24 | ... = ... | provenance | | | windows.cpp:561:26:561:36 | RtlInitUnicodeString output argument [*Buffer] | windows.cpp:562:10:562:19 | *src_string [*Buffer] | provenance | | | windows.cpp:561:26:561:36 | RtlInitUnicodeString output argument [*Buffer] | windows.cpp:563:40:563:50 | *& ... [*Buffer] | provenance | | | windows.cpp:561:39:561:44 | *buffer | windows.cpp:527:6:527:25 | [summary param] *1 in RtlInitUnicodeString | provenance | | -| windows.cpp:561:39:561:44 | *buffer | windows.cpp:561:26:561:36 | RtlInitUnicodeString output argument [*Buffer] | provenance | MaD:28 | +| windows.cpp:561:39:561:44 | *buffer | windows.cpp:561:26:561:36 | RtlInitUnicodeString output argument [*Buffer] | provenance | MaD:38 | | windows.cpp:562:10:562:19 | *src_string [*Buffer] | windows.cpp:562:10:562:29 | access to array | provenance | | | windows.cpp:562:10:562:19 | *src_string [*Buffer] | windows.cpp:562:21:562:26 | *Buffer | provenance | | | windows.cpp:562:21:562:26 | *Buffer | windows.cpp:562:10:562:29 | access to array | provenance | | | windows.cpp:563:26:563:37 | RtlCopyUnicodeString output argument [*Buffer] | windows.cpp:564:10:564:20 | *dest_string [*Buffer] | provenance | | | windows.cpp:563:40:563:50 | *& ... [*Buffer] | windows.cpp:510:6:510:25 | [summary param] *1 in RtlCopyUnicodeString [*Buffer] | provenance | | -| windows.cpp:563:40:563:50 | *& ... [*Buffer] | windows.cpp:563:26:563:37 | RtlCopyUnicodeString output argument [*Buffer] | provenance | MaD:26 | +| windows.cpp:563:40:563:50 | *& ... [*Buffer] | windows.cpp:563:26:563:37 | RtlCopyUnicodeString output argument [*Buffer] | provenance | MaD:36 | | windows.cpp:564:10:564:20 | *dest_string [*Buffer] | windows.cpp:564:10:564:30 | access to array | provenance | | | windows.cpp:564:10:564:20 | *dest_string [*Buffer] | windows.cpp:564:22:564:27 | *Buffer | provenance | | | windows.cpp:564:22:564:27 | *Buffer | windows.cpp:564:10:564:30 | access to array | provenance | | | windows.cpp:568:19:568:29 | RtlMoveMemory output argument | windows.cpp:569:10:569:23 | access to array | provenance | | | windows.cpp:568:32:568:33 | *& ... | windows.cpp:515:6:515:18 | [summary param] *1 in RtlMoveMemory | provenance | | -| windows.cpp:568:32:568:33 | *& ... | windows.cpp:568:19:568:29 | RtlMoveMemory output argument | provenance | MaD:29 | +| windows.cpp:568:32:568:33 | *& ... | windows.cpp:568:19:568:29 | RtlMoveMemory output argument | provenance | MaD:39 | | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | windows.cpp:574:10:574:23 | access to array | provenance | | | windows.cpp:573:40:573:41 | *& ... | windows.cpp:521:17:521:37 | [summary param] *1 in RtlMoveVolatileMemory | provenance | | -| windows.cpp:573:40:573:41 | *& ... | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | provenance | MaD:30 | +| windows.cpp:573:40:573:41 | *& ... | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | provenance | MaD:40 | +| windows.cpp:644:45:644:50 | WinHttpReadData output argument | windows.cpp:646:10:646:16 | * ... | provenance | Src:MaD:18 | +| windows.cpp:651:48:651:53 | WinHttpReadDataEx output argument | windows.cpp:653:10:653:16 | * ... | provenance | Src:MaD:19 | +| windows.cpp:658:62:658:67 | WinHttpQueryHeaders output argument | windows.cpp:660:10:660:16 | * ... | provenance | Src:MaD:16 | +| windows.cpp:668:82:668:87 | WinHttpQueryHeadersEx output argument | windows.cpp:670:10:670:16 | * ... | provenance | Src:MaD:17 | nodes | asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | semmle.label | [summary param] *0 in buffer | | asio_streams.cpp:56:18:56:23 | [summary] to write: ReturnValue in buffer | semmle.label | [summary] to write: ReturnValue in buffer | @@ -262,6 +329,59 @@ nodes | asio_streams.cpp:100:64:100:71 | *send_str | semmle.label | *send_str | | asio_streams.cpp:101:7:101:17 | send_buffer | semmle.label | send_buffer | | asio_streams.cpp:103:29:103:39 | *send_buffer | semmle.label | *send_buffer | +| azure.cpp:62:10:62:14 | [summary param] this in Value | semmle.label | [summary param] this in Value | +| azure.cpp:62:10:62:14 | [summary] to write: ReturnValue[*] in Value | semmle.label | [summary] to write: ReturnValue[*] in Value | +| azure.cpp:113:16:113:19 | [summary param] *0 in Read [Return] | semmle.label | [summary param] *0 in Read [Return] | +| azure.cpp:113:16:113:19 | [summary param] this in Read | semmle.label | [summary param] this in Read | +| azure.cpp:114:16:114:26 | [summary param] *0 in ReadToCount [Return] | semmle.label | [summary param] *0 in ReadToCount [Return] | +| azure.cpp:114:16:114:26 | [summary param] this in ReadToCount | semmle.label | [summary param] this in ReadToCount | +| azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | semmle.label | [summary param] this in ReadToEnd | +| azure.cpp:115:30:115:38 | [summary] to write: ReturnValue in ReadToEnd [element] | semmle.label | [summary] to write: ReturnValue in ReadToEnd [element] | +| azure.cpp:115:30:115:38 | [summary] to write: ReturnValue.Element in ReadToEnd | semmle.label | [summary] to write: ReturnValue.Element in ReadToEnd | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | semmle.label | *call to GetBodyStream | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | semmle.label | *call to GetBodyStream | +| azure.cpp:257:5:257:8 | *resp | semmle.label | *resp | +| azure.cpp:257:16:257:21 | Read output argument | semmle.label | Read output argument | +| azure.cpp:258:10:258:16 | * ... | semmle.label | * ... | +| azure.cpp:262:5:262:8 | *resp | semmle.label | *resp | +| azure.cpp:262:23:262:28 | ReadToCount output argument | semmle.label | ReadToCount output argument | +| azure.cpp:263:10:263:16 | * ... | semmle.label | * ... | +| azure.cpp:266:38:266:41 | *resp | semmle.label | *resp | +| azure.cpp:266:44:266:52 | call to ReadToEnd [element] | semmle.label | call to ReadToEnd [element] | +| azure.cpp:266:44:266:52 | call to ReadToEnd [element] | semmle.label | call to ReadToEnd [element] | +| azure.cpp:267:10:267:12 | vec | semmle.label | vec | +| azure.cpp:267:10:267:12 | vec [element] | semmle.label | vec [element] | +| azure.cpp:273:62:273:64 | call to GetHeaders | semmle.label | call to GetHeaders | +| azure.cpp:273:62:273:64 | call to GetHeaders | semmle.label | call to GetHeaders | +| azure.cpp:274:10:274:29 | call to operator[] | semmle.label | call to operator[] | +| azure.cpp:274:14:274:29 | call to operator[] | semmle.label | call to operator[] | +| azure.cpp:274:14:274:29 | call to operator[] | semmle.label | call to operator[] | +| azure.cpp:274:14:274:29 | call to operator[] | semmle.label | call to operator[] | +| azure.cpp:277:45:277:47 | call to GetBody | semmle.label | call to GetBody | +| azure.cpp:277:45:277:47 | call to GetBody | semmle.label | call to GetBody | +| azure.cpp:278:10:278:13 | body | semmle.label | body | +| azure.cpp:278:10:278:13 | body | semmle.label | body | +| azure.cpp:278:10:278:13 | body | semmle.label | body | +| azure.cpp:281:68:281:84 | *call to ExtractBodyStream | semmle.label | *call to ExtractBodyStream | +| azure.cpp:281:68:281:84 | *call to ExtractBodyStream | semmle.label | *call to ExtractBodyStream | +| azure.cpp:282:10:282:38 | call to ReadToEnd | semmle.label | call to ReadToEnd | +| azure.cpp:282:21:282:23 | *call to get | semmle.label | *call to get | +| azure.cpp:282:28:282:36 | call to ReadToEnd [element] | semmle.label | call to ReadToEnd [element] | +| azure.cpp:282:28:282:36 | call to ReadToEnd [element] | semmle.label | call to ReadToEnd [element] | +| azure.cpp:289:24:289:56 | call to GetHeader | semmle.label | call to GetHeader | +| azure.cpp:289:32:289:40 | call to GetHeader | semmle.label | call to GetHeader | +| azure.cpp:289:32:289:40 | call to GetHeader | semmle.label | call to GetHeader | +| azure.cpp:289:63:289:65 | call to Value | semmle.label | call to Value | +| azure.cpp:289:63:289:65 | call to Value | semmle.label | call to Value | +| azure.cpp:290:10:290:20 | headerValue | semmle.label | headerValue | +| azure.cpp:290:10:290:20 | headerValue | semmle.label | headerValue | +| azure.cpp:290:10:290:20 | headerValue | semmle.label | headerValue | +| azure.cpp:293:58:293:67 | call to GetHeaders | semmle.label | call to GetHeaders | +| azure.cpp:293:58:293:67 | call to GetHeaders | semmle.label | call to GetHeaders | +| azure.cpp:294:38:294:53 | call to operator[] | semmle.label | call to operator[] | +| azure.cpp:295:10:295:20 | contentType | semmle.label | contentType | +| azure.cpp:295:10:295:20 | contentType | semmle.label | contentType | +| azure.cpp:295:10:295:20 | contentType | semmle.label | contentType | | test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | semmle.label | [summary param] 0 in ymlStepManual | | test.cpp:4:5:4:17 | [summary] to write: ReturnValue in ymlStepManual | semmle.label | [summary] to write: ReturnValue in ymlStepManual | | test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | semmle.label | [summary param] 0 in ymlStepGenerated | @@ -482,8 +602,21 @@ nodes | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | semmle.label | RtlMoveVolatileMemory output argument | | windows.cpp:573:40:573:41 | *& ... | semmle.label | *& ... | | windows.cpp:574:10:574:23 | access to array | semmle.label | access to array | +| windows.cpp:644:45:644:50 | WinHttpReadData output argument | semmle.label | WinHttpReadData output argument | +| windows.cpp:646:10:646:16 | * ... | semmle.label | * ... | +| windows.cpp:651:48:651:53 | WinHttpReadDataEx output argument | semmle.label | WinHttpReadDataEx output argument | +| windows.cpp:653:10:653:16 | * ... | semmle.label | * ... | +| windows.cpp:658:62:658:67 | WinHttpQueryHeaders output argument | semmle.label | WinHttpQueryHeaders output argument | +| windows.cpp:660:10:660:16 | * ... | semmle.label | * ... | +| windows.cpp:668:82:668:87 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | +| windows.cpp:670:10:670:16 | * ... | semmle.label | * ... | subpaths | asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | asio_streams.cpp:56:18:56:23 | [summary] to write: ReturnValue in buffer | asio_streams.cpp:100:44:100:62 | call to buffer | +| azure.cpp:257:5:257:8 | *resp | azure.cpp:113:16:113:19 | [summary param] this in Read | azure.cpp:113:16:113:19 | [summary param] *0 in Read [Return] | azure.cpp:257:16:257:21 | Read output argument | +| azure.cpp:262:5:262:8 | *resp | azure.cpp:114:16:114:26 | [summary param] this in ReadToCount | azure.cpp:114:16:114:26 | [summary param] *0 in ReadToCount [Return] | azure.cpp:262:23:262:28 | ReadToCount output argument | +| azure.cpp:266:38:266:41 | *resp | azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | azure.cpp:115:30:115:38 | [summary] to write: ReturnValue in ReadToEnd [element] | azure.cpp:266:44:266:52 | call to ReadToEnd [element] | +| azure.cpp:282:21:282:23 | *call to get | azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | azure.cpp:115:30:115:38 | [summary] to write: ReturnValue in ReadToEnd [element] | azure.cpp:282:28:282:36 | call to ReadToEnd [element] | +| azure.cpp:289:24:289:56 | call to GetHeader | azure.cpp:62:10:62:14 | [summary param] this in Value | azure.cpp:62:10:62:14 | [summary] to write: ReturnValue[*] in Value | azure.cpp:289:63:289:65 | call to Value | | test.cpp:17:24:17:24 | x | test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | test.cpp:4:5:4:17 | [summary] to write: ReturnValue in ymlStepManual | test.cpp:17:10:17:22 | call to ymlStepManual | | test.cpp:21:27:21:27 | x | test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | test.cpp:5:5:5:20 | [summary] to write: ReturnValue in ymlStepGenerated | test.cpp:21:10:21:25 | call to ymlStepGenerated | | test.cpp:25:35:25:35 | x | test.cpp:6:5:6:27 | [summary param] 0 in ymlStepManual_with_body | test.cpp:6:5:6:27 | [summary] to write: ReturnValue in ymlStepManual_with_body | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | diff --git a/cpp/ql/test/library-tests/dataflow/external-models/sources.expected b/cpp/ql/test/library-tests/dataflow/external-models/sources.expected index cb7e06b801d0..9481e8634f62 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/sources.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/sources.expected @@ -1,4 +1,10 @@ | asio_streams.cpp:87:34:87:44 | read_until output argument | remote | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | remote | +| azure.cpp:273:62:273:64 | call to GetHeaders | remote | +| azure.cpp:277:45:277:47 | call to GetBody | remote | +| azure.cpp:281:68:281:84 | *call to ExtractBodyStream | remote | +| azure.cpp:289:32:289:40 | call to GetHeader | remote | +| azure.cpp:293:58:293:67 | call to GetHeaders | remote | | test.cpp:10:10:10:18 | call to ymlSource | local | | test.cpp:56:8:56:16 | call to ymlSource | local | | test.cpp:94:10:94:18 | call to ymlSource | local | @@ -20,3 +26,9 @@ | windows.cpp:318:23:318:37 | *call to MapViewOfFileEx | local | | windows.cpp:325:23:325:42 | *call to MapViewOfFileFromApp | local | | windows.cpp:332:23:332:40 | *call to MapViewOfFileNuma2 | local | +| windows.cpp:644:45:644:50 | WinHttpReadData output argument | remote | +| windows.cpp:651:48:651:53 | WinHttpReadDataEx output argument | remote | +| windows.cpp:658:62:658:67 | WinHttpQueryHeaders output argument | remote | +| windows.cpp:668:70:668:79 | WinHttpQueryHeadersEx output argument | remote | +| windows.cpp:668:82:668:87 | WinHttpQueryHeadersEx output argument | remote | +| windows.cpp:668:105:668:112 | WinHttpQueryHeadersEx output argument | remote | diff --git a/cpp/ql/test/library-tests/dataflow/external-models/steps.expected b/cpp/ql/test/library-tests/dataflow/external-models/steps.expected index 9f4a5f55fef1..61b05459ade1 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/steps.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/steps.expected @@ -1,6 +1,12 @@ | asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:100:44:100:62 | call to buffer | +| azure.cpp:252:79:252:98 | call to string | azure.cpp:252:62:252:99 | call to Url | +| azure.cpp:257:5:257:8 | *resp | azure.cpp:257:16:257:21 | Read output argument | +| azure.cpp:262:5:262:8 | *resp | azure.cpp:262:23:262:28 | ReadToCount output argument | +| azure.cpp:287:79:287:98 | call to string | azure.cpp:287:62:287:99 | call to Url | +| azure.cpp:289:24:289:56 | call to GetHeader | azure.cpp:289:63:289:65 | call to Value | | test.cpp:17:24:17:24 | x | test.cpp:17:10:17:22 | call to ymlStepManual | | test.cpp:21:27:21:27 | x | test.cpp:21:10:21:25 | call to ymlStepGenerated | | test.cpp:25:35:25:35 | x | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | | test.cpp:28:35:28:35 | 0 | test.cpp:28:11:28:33 | call to ymlStepManual_with_body | | windows.cpp:27:36:27:38 | *cmd | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | +| windows.cpp:729:35:729:35 | *x | windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | diff --git a/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp b/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp index 5bd9c49170f8..15d684b1d6a6 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp +++ b/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp @@ -643,21 +643,21 @@ void test_winhttp(HINTERNET hRequest) { DWORD bytesRead; BOOL result = WinHttpReadData(hRequest, buffer, sizeof(buffer), &bytesRead); sink(buffer); - sink(*buffer); // $ MISSING: ir + sink(*buffer); // $ ir } { char buffer[1024]; DWORD bytesRead; DWORD result = WinHttpReadDataEx(hRequest, buffer, sizeof(buffer), &bytesRead, 0, 0, nullptr); sink(buffer); - sink(*buffer); // $ MISSING: ir + sink(*buffer); // $ ir } { char buffer[1024]; DWORD bufferLength = sizeof(buffer); DWORD result = WinHttpQueryHeaders(hRequest, 0, nullptr, buffer, &bufferLength, nullptr); sink(buffer); - sink(*buffer); // $ MISSING: ir + sink(*buffer); // $ ir } { char buffer[1024]; @@ -667,7 +667,7 @@ void test_winhttp(HINTERNET hRequest) { PWINHTTP_HEADER_NAME headerName; DWORD result = WinHttpQueryHeadersEx(hRequest, 0, 0, 0, nullptr, headerName, buffer, &bufferLength, &headers, &headersCount); sink(buffer); - sink(*buffer); // $ MISSING: ir + sink(*buffer); // $ ir sink(headerName->pszName); sink(*headerName->pszName); // $ MISSING: ir sink(headers->pszValue); From 7ef96e3f3c942af0ead214e47b4591ec9adea8ec Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Tue, 3 Feb 2026 11:30:31 +0000 Subject: [PATCH 283/433] C++: Add taint-inheriting reads from the Winhttp structs. --- cpp/ql/lib/semmle/code/cpp/models/Models.qll | 1 + .../cpp/models/implementations/WinHttp.qll | 49 +++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 cpp/ql/lib/semmle/code/cpp/models/implementations/WinHttp.qll diff --git a/cpp/ql/lib/semmle/code/cpp/models/Models.qll b/cpp/ql/lib/semmle/code/cpp/models/Models.qll index 83bda3e2a44e..09f0a0df9668 100644 --- a/cpp/ql/lib/semmle/code/cpp/models/Models.qll +++ b/cpp/ql/lib/semmle/code/cpp/models/Models.qll @@ -57,3 +57,4 @@ private import implementations.CAtlFile private import implementations.CAtlFileMapping private import implementations.CAtlTemporaryFile private import implementations.CRegKey +private import implementations.WinHttp diff --git a/cpp/ql/lib/semmle/code/cpp/models/implementations/WinHttp.qll b/cpp/ql/lib/semmle/code/cpp/models/implementations/WinHttp.qll new file mode 100644 index 000000000000..fccd1b68f8f8 --- /dev/null +++ b/cpp/ql/lib/semmle/code/cpp/models/implementations/WinHttp.qll @@ -0,0 +1,49 @@ +private import cpp +private import semmle.code.cpp.ir.dataflow.FlowSteps +private import semmle.code.cpp.dataflow.new.DataFlow + +/** The `WINHTTP_HEADER_NAME` classes from `winhttp.h`. */ +class WinHttpHeaderName extends Class { + WinHttpHeaderName() { this.hasGlobalName("_WINHTTP_HEADER_NAME") } +} + +/** The `WINHTTP_EXTENDED_HEADER` classes from `winhttp.h`. */ +class WinHttpExtendedHeader extends Class { + WinHttpExtendedHeader() { this.hasGlobalName("_WINHTTP_EXTENDED_HEADER") } +} + +private class WinHttpHeaderNameInheritingContent extends TaintInheritingContent, + DataFlow::FieldContent +{ + WinHttpHeaderNameInheritingContent() { + this.getIndirectionIndex() = 2 and + ( + this.getAField().getDeclaringType() instanceof WinHttpHeaderName + or + // The extended header looks like: + // struct WINHTTP_EXTENDED_HEADER { + // union { [...] }; + // union { [...] }; + // }; + // So the first declaring type is the anonymous unions, and the declaring + // type of those anonymous unions is the `WINHTTP_EXTENDED_HEADER` struct. + this.getAField().getDeclaringType().getDeclaringType() instanceof WinHttpExtendedHeader + ) + } +} + +class WinHttpUrlComponents extends Class { + WinHttpUrlComponents() { this.hasGlobalName("_WINHTTP_URL_COMPONENTS") } +} + +private class WinHttpUrlComponentsInheritingContent extends TaintInheritingContent, + DataFlow::FieldContent +{ + WinHttpUrlComponentsInheritingContent() { + exists(Field f | f = this.getField() and f.getDeclaringType() instanceof WinHttpUrlComponents | + if f.getType().getUnspecifiedType() instanceof PointerType + then this.getIndirectionIndex() = 2 + else this.getIndirectionIndex() = 1 + ) + } +} From 40a58135c2f9c69ffb33bfcbdc1863f41a5c92d2 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Tue, 3 Feb 2026 11:30:55 +0000 Subject: [PATCH 284/433] C++: Accept test changes. --- .../dataflow/external-models/flow.expected | 221 ++++++++++-------- .../dataflow/external-models/windows.cpp | 10 +- 2 files changed, 129 insertions(+), 102 deletions(-) diff --git a/cpp/ql/test/library-tests/dataflow/external-models/flow.expected b/cpp/ql/test/library-tests/dataflow/external-models/flow.expected index ce1207f62092..5c77771c7859 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/flow.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/flow.expected @@ -15,107 +15,110 @@ models | 14 | Source: ; ; false; ReadFile; ; ; Argument[*1]; local; manual | | 15 | Source: ; ; false; ReadFileEx; ; ; Argument[*1]; local; manual | | 16 | Source: ; ; false; WinHttpQueryHeaders; ; ; Argument[*3]; remote; manual | -| 17 | Source: ; ; false; WinHttpQueryHeadersEx; ; ; Argument[*6]; remote; manual | -| 18 | Source: ; ; false; WinHttpReadData; ; ; Argument[*1]; remote; manual | -| 19 | Source: ; ; false; WinHttpReadDataEx; ; ; Argument[*1]; remote; manual | -| 20 | Source: ; ; false; ymlSource; ; ; ReturnValue; local; manual | -| 21 | Source: Azure::Core::Http; RawResponse; true; ExtractBodyStream; ; ; ReturnValue[*]; remote; manual | -| 22 | Source: Azure::Core::Http; RawResponse; true; GetBody; ; ; ReturnValue[*]; remote; manual | -| 23 | Source: Azure::Core::Http; RawResponse; true; GetHeaders; ; ; ReturnValue[*]; remote; manual | -| 24 | Source: Azure::Core::Http; Request; true; GetBodyStream; ; ; ReturnValue[*]; remote; manual | -| 25 | Source: Azure::Core::Http; Request; true; GetHeader; ; ; ReturnValue; remote; manual | -| 26 | Source: Azure::Core::Http; Request; true; GetHeaders; ; ; ReturnValue; remote; manual | -| 27 | Source: boost::asio; ; false; read_until; ; ; Argument[*1]; remote; manual | -| 28 | Summary: ; ; false; CommandLineToArgvA; ; ; Argument[*0]; ReturnValue[**]; taint; manual | -| 29 | Summary: ; ; false; CreateRemoteThread; ; ; Argument[@4]; Argument[3].Parameter[@0]; value; manual | -| 30 | Summary: ; ; false; CreateRemoteThreadEx; ; ; Argument[@4]; Argument[3].Parameter[@0]; value; manual | -| 31 | Summary: ; ; false; CreateThread; ; ; Argument[@3]; Argument[2].Parameter[@0]; value; manual | -| 32 | Summary: ; ; false; ReadFileEx; ; ; Argument[*3].Field[@hEvent]; Argument[4].Parameter[*2].Field[@hEvent]; value; manual | -| 33 | Summary: ; ; false; RtlCopyDeviceMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 34 | Summary: ; ; false; RtlCopyMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 35 | Summary: ; ; false; RtlCopyMemoryNonTemporal; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 36 | Summary: ; ; false; RtlCopyUnicodeString; ; ; Argument[*1].Field[*Buffer]; Argument[*0].Field[*Buffer]; value; manual | -| 37 | Summary: ; ; false; RtlCopyVolatileMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 38 | Summary: ; ; false; RtlInitUnicodeString; ; ; Argument[*1]; Argument[*0].Field[*Buffer]; value; manual | -| 39 | Summary: ; ; false; RtlMoveMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 40 | Summary: ; ; false; RtlMoveVolatileMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | -| 41 | Summary: ; ; false; callWithArgument; ; ; Argument[1]; Argument[0].Parameter[0]; value; manual | -| 42 | Summary: ; ; false; callWithNonTypeTemplate; (const T &); ; Argument[*0]; ReturnValue; value; manual | -| 43 | Summary: ; ; false; pthread_create; ; ; Argument[@3]; Argument[2].Parameter[@0]; value; manual | -| 44 | Summary: ; ; false; ymlStepGenerated; ; ; Argument[0]; ReturnValue; taint; df-generated | -| 45 | Summary: ; ; false; ymlStepManual; ; ; Argument[0]; ReturnValue; taint; manual | -| 46 | Summary: ; ; false; ymlStepManual_with_body; ; ; Argument[0]; ReturnValue; taint; manual | -| 47 | Summary: Azure::Core::IO; BodyStream; true; Read; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 48 | Summary: Azure::Core::IO; BodyStream; true; ReadToCount; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 49 | Summary: Azure::Core::IO; BodyStream; true; ReadToEnd; ; ; Argument[-1]; ReturnValue.Element; taint; manual | -| 50 | Summary: Azure; Nullable; true; Value; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 51 | Summary: boost::asio; ; false; buffer; ; ; Argument[*0]; ReturnValue; taint; manual | +| 17 | Source: ; ; false; WinHttpQueryHeadersEx; ; ; Argument[**8]; remote; manual | +| 18 | Source: ; ; false; WinHttpQueryHeadersEx; ; ; Argument[*5]; remote; manual | +| 19 | Source: ; ; false; WinHttpQueryHeadersEx; ; ; Argument[*6]; remote; manual | +| 20 | Source: ; ; false; WinHttpReadData; ; ; Argument[*1]; remote; manual | +| 21 | Source: ; ; false; WinHttpReadDataEx; ; ; Argument[*1]; remote; manual | +| 22 | Source: ; ; false; ymlSource; ; ; ReturnValue; local; manual | +| 23 | Source: Azure::Core::Http; RawResponse; true; ExtractBodyStream; ; ; ReturnValue[*]; remote; manual | +| 24 | Source: Azure::Core::Http; RawResponse; true; GetBody; ; ; ReturnValue[*]; remote; manual | +| 25 | Source: Azure::Core::Http; RawResponse; true; GetHeaders; ; ; ReturnValue[*]; remote; manual | +| 26 | Source: Azure::Core::Http; Request; true; GetBodyStream; ; ; ReturnValue[*]; remote; manual | +| 27 | Source: Azure::Core::Http; Request; true; GetHeader; ; ; ReturnValue; remote; manual | +| 28 | Source: Azure::Core::Http; Request; true; GetHeaders; ; ; ReturnValue; remote; manual | +| 29 | Source: boost::asio; ; false; read_until; ; ; Argument[*1]; remote; manual | +| 30 | Summary: ; ; false; CommandLineToArgvA; ; ; Argument[*0]; ReturnValue[**]; taint; manual | +| 31 | Summary: ; ; false; CreateRemoteThread; ; ; Argument[@4]; Argument[3].Parameter[@0]; value; manual | +| 32 | Summary: ; ; false; CreateRemoteThreadEx; ; ; Argument[@4]; Argument[3].Parameter[@0]; value; manual | +| 33 | Summary: ; ; false; CreateThread; ; ; Argument[@3]; Argument[2].Parameter[@0]; value; manual | +| 34 | Summary: ; ; false; ReadFileEx; ; ; Argument[*3].Field[@hEvent]; Argument[4].Parameter[*2].Field[@hEvent]; value; manual | +| 35 | Summary: ; ; false; RtlCopyDeviceMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 36 | Summary: ; ; false; RtlCopyMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 37 | Summary: ; ; false; RtlCopyMemoryNonTemporal; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 38 | Summary: ; ; false; RtlCopyUnicodeString; ; ; Argument[*1].Field[*Buffer]; Argument[*0].Field[*Buffer]; value; manual | +| 39 | Summary: ; ; false; RtlCopyVolatileMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 40 | Summary: ; ; false; RtlInitUnicodeString; ; ; Argument[*1]; Argument[*0].Field[*Buffer]; value; manual | +| 41 | Summary: ; ; false; RtlMoveMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 42 | Summary: ; ; false; RtlMoveVolatileMemory; ; ; Argument[*@1]; Argument[*@0]; value; manual | +| 43 | Summary: ; ; false; WinHttpCrackUrl; ; ; Argument[*0]; Argument[*3]; taint; manual | +| 44 | Summary: ; ; false; callWithArgument; ; ; Argument[1]; Argument[0].Parameter[0]; value; manual | +| 45 | Summary: ; ; false; callWithNonTypeTemplate; (const T &); ; Argument[*0]; ReturnValue; value; manual | +| 46 | Summary: ; ; false; pthread_create; ; ; Argument[@3]; Argument[2].Parameter[@0]; value; manual | +| 47 | Summary: ; ; false; ymlStepGenerated; ; ; Argument[0]; ReturnValue; taint; df-generated | +| 48 | Summary: ; ; false; ymlStepManual; ; ; Argument[0]; ReturnValue; taint; manual | +| 49 | Summary: ; ; false; ymlStepManual_with_body; ; ; Argument[0]; ReturnValue; taint; manual | +| 50 | Summary: Azure::Core::IO; BodyStream; true; Read; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 51 | Summary: Azure::Core::IO; BodyStream; true; ReadToCount; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 52 | Summary: Azure::Core::IO; BodyStream; true; ReadToEnd; ; ; Argument[-1]; ReturnValue.Element; taint; manual | +| 53 | Summary: Azure; Nullable; true; Value; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 54 | Summary: boost::asio; ; false; buffer; ; ; Argument[*0]; ReturnValue; taint; manual | edges -| asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | asio_streams.cpp:56:18:56:23 | [summary] to write: ReturnValue in buffer | provenance | MaD:51 | -| asio_streams.cpp:87:34:87:44 | read_until output argument | asio_streams.cpp:91:7:91:17 | recv_buffer | provenance | Src:MaD:27 | -| asio_streams.cpp:87:34:87:44 | read_until output argument | asio_streams.cpp:93:29:93:39 | *recv_buffer | provenance | Src:MaD:27 Sink:MaD:2 | +| asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | asio_streams.cpp:56:18:56:23 | [summary] to write: ReturnValue in buffer | provenance | MaD:54 | +| asio_streams.cpp:87:34:87:44 | read_until output argument | asio_streams.cpp:91:7:91:17 | recv_buffer | provenance | Src:MaD:29 | +| asio_streams.cpp:87:34:87:44 | read_until output argument | asio_streams.cpp:93:29:93:39 | *recv_buffer | provenance | Src:MaD:29 Sink:MaD:2 | | asio_streams.cpp:97:37:97:44 | call to source | asio_streams.cpp:98:7:98:14 | send_str | provenance | TaintFunction | | asio_streams.cpp:97:37:97:44 | call to source | asio_streams.cpp:100:64:100:71 | *send_str | provenance | TaintFunction | | asio_streams.cpp:100:44:100:62 | call to buffer | asio_streams.cpp:100:44:100:62 | call to buffer | provenance | | | asio_streams.cpp:100:44:100:62 | call to buffer | asio_streams.cpp:101:7:101:17 | send_buffer | provenance | | | asio_streams.cpp:100:44:100:62 | call to buffer | asio_streams.cpp:103:29:103:39 | *send_buffer | provenance | Sink:MaD:2 | | asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | provenance | | -| asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:100:44:100:62 | call to buffer | provenance | MaD:51 | -| azure.cpp:62:10:62:14 | [summary param] this in Value | azure.cpp:62:10:62:14 | [summary] to write: ReturnValue[*] in Value | provenance | MaD:50 | -| azure.cpp:113:16:113:19 | [summary param] this in Read | azure.cpp:113:16:113:19 | [summary param] *0 in Read [Return] | provenance | MaD:47 | -| azure.cpp:114:16:114:26 | [summary param] this in ReadToCount | azure.cpp:114:16:114:26 | [summary param] *0 in ReadToCount [Return] | provenance | MaD:48 | -| azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | azure.cpp:115:30:115:38 | [summary] to write: ReturnValue.Element in ReadToEnd | provenance | MaD:49 | +| asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:100:44:100:62 | call to buffer | provenance | MaD:54 | +| azure.cpp:62:10:62:14 | [summary param] this in Value | azure.cpp:62:10:62:14 | [summary] to write: ReturnValue[*] in Value | provenance | MaD:53 | +| azure.cpp:113:16:113:19 | [summary param] this in Read | azure.cpp:113:16:113:19 | [summary param] *0 in Read [Return] | provenance | MaD:50 | +| azure.cpp:114:16:114:26 | [summary param] this in ReadToCount | azure.cpp:114:16:114:26 | [summary param] *0 in ReadToCount [Return] | provenance | MaD:51 | +| azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | azure.cpp:115:30:115:38 | [summary] to write: ReturnValue.Element in ReadToEnd | provenance | MaD:52 | | azure.cpp:115:30:115:38 | [summary] to write: ReturnValue.Element in ReadToEnd | azure.cpp:115:30:115:38 | [summary] to write: ReturnValue in ReadToEnd [element] | provenance | | -| azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:253:48:253:60 | *call to GetBodyStream | provenance | Src:MaD:24 | +| azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:253:48:253:60 | *call to GetBodyStream | provenance | Src:MaD:26 | | azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:257:5:257:8 | *resp | provenance | | | azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:262:5:262:8 | *resp | provenance | | | azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:266:38:266:41 | *resp | provenance | | | azure.cpp:257:5:257:8 | *resp | azure.cpp:113:16:113:19 | [summary param] this in Read | provenance | | -| azure.cpp:257:5:257:8 | *resp | azure.cpp:257:16:257:21 | Read output argument | provenance | MaD:47 | +| azure.cpp:257:5:257:8 | *resp | azure.cpp:257:16:257:21 | Read output argument | provenance | MaD:50 | | azure.cpp:257:16:257:21 | Read output argument | azure.cpp:258:10:258:16 | * ... | provenance | | | azure.cpp:262:5:262:8 | *resp | azure.cpp:114:16:114:26 | [summary param] this in ReadToCount | provenance | | -| azure.cpp:262:5:262:8 | *resp | azure.cpp:262:23:262:28 | ReadToCount output argument | provenance | MaD:48 | +| azure.cpp:262:5:262:8 | *resp | azure.cpp:262:23:262:28 | ReadToCount output argument | provenance | MaD:51 | | azure.cpp:262:23:262:28 | ReadToCount output argument | azure.cpp:263:10:263:16 | * ... | provenance | | | azure.cpp:266:38:266:41 | *resp | azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | provenance | | -| azure.cpp:266:38:266:41 | *resp | azure.cpp:266:44:266:52 | call to ReadToEnd [element] | provenance | MaD:49 | +| azure.cpp:266:38:266:41 | *resp | azure.cpp:266:44:266:52 | call to ReadToEnd [element] | provenance | MaD:52 | | azure.cpp:266:44:266:52 | call to ReadToEnd [element] | azure.cpp:266:44:266:52 | call to ReadToEnd [element] | provenance | | | azure.cpp:266:44:266:52 | call to ReadToEnd [element] | azure.cpp:267:10:267:12 | vec [element] | provenance | | | azure.cpp:267:10:267:12 | vec [element] | azure.cpp:267:10:267:12 | vec | provenance | | -| azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:273:62:273:64 | call to GetHeaders | provenance | Src:MaD:23 | +| azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:273:62:273:64 | call to GetHeaders | provenance | Src:MaD:25 | | azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:274:14:274:29 | call to operator[] | provenance | TaintFunction | | azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:274:14:274:29 | call to operator[] | provenance | TaintFunction | | azure.cpp:273:62:273:64 | call to GetHeaders | azure.cpp:274:14:274:29 | call to operator[] | provenance | TaintFunction | | azure.cpp:274:14:274:29 | call to operator[] | azure.cpp:274:10:274:29 | call to operator[] | provenance | | | azure.cpp:274:14:274:29 | call to operator[] | azure.cpp:274:14:274:29 | call to operator[] | provenance | | -| azure.cpp:277:45:277:47 | call to GetBody | azure.cpp:277:45:277:47 | call to GetBody | provenance | Src:MaD:22 | +| azure.cpp:277:45:277:47 | call to GetBody | azure.cpp:277:45:277:47 | call to GetBody | provenance | Src:MaD:24 | | azure.cpp:277:45:277:47 | call to GetBody | azure.cpp:278:10:278:13 | body | provenance | | | azure.cpp:277:45:277:47 | call to GetBody | azure.cpp:278:10:278:13 | body | provenance | | | azure.cpp:278:10:278:13 | body | azure.cpp:278:10:278:13 | body | provenance | | -| azure.cpp:281:68:281:84 | *call to ExtractBodyStream | azure.cpp:281:68:281:84 | *call to ExtractBodyStream | provenance | Src:MaD:21 | +| azure.cpp:281:68:281:84 | *call to ExtractBodyStream | azure.cpp:281:68:281:84 | *call to ExtractBodyStream | provenance | Src:MaD:23 | | azure.cpp:281:68:281:84 | *call to ExtractBodyStream | azure.cpp:282:21:282:23 | *call to get | provenance | | | azure.cpp:282:21:282:23 | *call to get | azure.cpp:115:30:115:38 | [summary param] this in ReadToEnd | provenance | | -| azure.cpp:282:21:282:23 | *call to get | azure.cpp:282:28:282:36 | call to ReadToEnd [element] | provenance | MaD:49 | +| azure.cpp:282:21:282:23 | *call to get | azure.cpp:282:28:282:36 | call to ReadToEnd [element] | provenance | MaD:52 | | azure.cpp:282:28:282:36 | call to ReadToEnd [element] | azure.cpp:282:10:282:38 | call to ReadToEnd | provenance | | | azure.cpp:282:28:282:36 | call to ReadToEnd [element] | azure.cpp:282:28:282:36 | call to ReadToEnd [element] | provenance | | | azure.cpp:289:24:289:56 | call to GetHeader | azure.cpp:62:10:62:14 | [summary param] this in Value | provenance | | -| azure.cpp:289:24:289:56 | call to GetHeader | azure.cpp:289:63:289:65 | call to Value | provenance | MaD:50 | +| azure.cpp:289:24:289:56 | call to GetHeader | azure.cpp:289:63:289:65 | call to Value | provenance | MaD:53 | | azure.cpp:289:32:289:40 | call to GetHeader | azure.cpp:289:24:289:56 | call to GetHeader | provenance | | -| azure.cpp:289:32:289:40 | call to GetHeader | azure.cpp:289:32:289:40 | call to GetHeader | provenance | Src:MaD:25 | +| azure.cpp:289:32:289:40 | call to GetHeader | azure.cpp:289:32:289:40 | call to GetHeader | provenance | Src:MaD:27 | | azure.cpp:289:63:289:65 | call to Value | azure.cpp:289:63:289:65 | call to Value | provenance | | | azure.cpp:289:63:289:65 | call to Value | azure.cpp:290:10:290:20 | headerValue | provenance | | | azure.cpp:289:63:289:65 | call to Value | azure.cpp:290:10:290:20 | headerValue | provenance | | | azure.cpp:290:10:290:20 | headerValue | azure.cpp:290:10:290:20 | headerValue | provenance | | -| azure.cpp:293:58:293:67 | call to GetHeaders | azure.cpp:293:58:293:67 | call to GetHeaders | provenance | Src:MaD:26 | +| azure.cpp:293:58:293:67 | call to GetHeaders | azure.cpp:293:58:293:67 | call to GetHeaders | provenance | Src:MaD:28 | | azure.cpp:293:58:293:67 | call to GetHeaders | azure.cpp:294:38:294:53 | call to operator[] | provenance | TaintFunction | | azure.cpp:294:38:294:53 | call to operator[] | azure.cpp:295:10:295:20 | contentType | provenance | | | azure.cpp:294:38:294:53 | call to operator[] | azure.cpp:295:10:295:20 | contentType | provenance | | | azure.cpp:295:10:295:20 | contentType | azure.cpp:295:10:295:20 | contentType | provenance | | -| test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | test.cpp:4:5:4:17 | [summary] to write: ReturnValue in ymlStepManual | provenance | MaD:45 | -| test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | test.cpp:5:5:5:20 | [summary] to write: ReturnValue in ymlStepGenerated | provenance | MaD:44 | -| test.cpp:6:5:6:27 | [summary param] 0 in ymlStepManual_with_body | test.cpp:6:5:6:27 | [summary] to write: ReturnValue in ymlStepManual_with_body | provenance | MaD:46 | +| test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | test.cpp:4:5:4:17 | [summary] to write: ReturnValue in ymlStepManual | provenance | MaD:48 | +| test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | test.cpp:5:5:5:20 | [summary] to write: ReturnValue in ymlStepGenerated | provenance | MaD:47 | +| test.cpp:6:5:6:27 | [summary param] 0 in ymlStepManual_with_body | test.cpp:6:5:6:27 | [summary] to write: ReturnValue in ymlStepManual_with_body | provenance | MaD:49 | | test.cpp:7:47:7:52 | value2 | test.cpp:7:64:7:69 | value2 | provenance | | | test.cpp:7:64:7:69 | value2 | test.cpp:7:5:7:30 | *ymlStepGenerated_with_body | provenance | | -| test.cpp:10:10:10:18 | call to ymlSource | test.cpp:10:10:10:18 | call to ymlSource | provenance | Src:MaD:20 | +| test.cpp:10:10:10:18 | call to ymlSource | test.cpp:10:10:10:18 | call to ymlSource | provenance | Src:MaD:22 | | test.cpp:10:10:10:18 | call to ymlSource | test.cpp:14:10:14:10 | x | provenance | Sink:MaD:1 | | test.cpp:10:10:10:18 | call to ymlSource | test.cpp:17:24:17:24 | x | provenance | | | test.cpp:10:10:10:18 | call to ymlSource | test.cpp:21:27:21:27 | x | provenance | | @@ -124,15 +127,15 @@ edges | test.cpp:17:10:17:22 | call to ymlStepManual | test.cpp:17:10:17:22 | call to ymlStepManual | provenance | | | test.cpp:17:10:17:22 | call to ymlStepManual | test.cpp:18:10:18:10 | y | provenance | Sink:MaD:1 | | test.cpp:17:24:17:24 | x | test.cpp:4:5:4:17 | [summary param] 0 in ymlStepManual | provenance | | -| test.cpp:17:24:17:24 | x | test.cpp:17:10:17:22 | call to ymlStepManual | provenance | MaD:45 | +| test.cpp:17:24:17:24 | x | test.cpp:17:10:17:22 | call to ymlStepManual | provenance | MaD:48 | | test.cpp:21:10:21:25 | call to ymlStepGenerated | test.cpp:21:10:21:25 | call to ymlStepGenerated | provenance | | | test.cpp:21:10:21:25 | call to ymlStepGenerated | test.cpp:22:10:22:10 | z | provenance | Sink:MaD:1 | | test.cpp:21:27:21:27 | x | test.cpp:5:5:5:20 | [summary param] 0 in ymlStepGenerated | provenance | | -| test.cpp:21:27:21:27 | x | test.cpp:21:10:21:25 | call to ymlStepGenerated | provenance | MaD:44 | +| test.cpp:21:27:21:27 | x | test.cpp:21:10:21:25 | call to ymlStepGenerated | provenance | MaD:47 | | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | provenance | | | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | test.cpp:26:10:26:11 | y2 | provenance | Sink:MaD:1 | | test.cpp:25:35:25:35 | x | test.cpp:6:5:6:27 | [summary param] 0 in ymlStepManual_with_body | provenance | | -| test.cpp:25:35:25:35 | x | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | provenance | MaD:46 | +| test.cpp:25:35:25:35 | x | test.cpp:25:11:25:33 | call to ymlStepManual_with_body | provenance | MaD:49 | | test.cpp:32:11:32:36 | call to ymlStepGenerated_with_body | test.cpp:32:11:32:36 | call to ymlStepGenerated_with_body | provenance | | | test.cpp:32:11:32:36 | call to ymlStepGenerated_with_body | test.cpp:33:10:33:11 | z2 | provenance | Sink:MaD:1 | | test.cpp:32:41:32:41 | x | test.cpp:7:47:7:52 | value2 | provenance | | @@ -140,16 +143,16 @@ edges | test.cpp:46:30:46:32 | *arg [x] | test.cpp:47:12:47:19 | *arg [x] | provenance | | | test.cpp:47:12:47:19 | *arg [x] | test.cpp:48:13:48:13 | *s [x] | provenance | | | test.cpp:48:13:48:13 | *s [x] | test.cpp:48:16:48:16 | x | provenance | Sink:MaD:1 | -| test.cpp:52:5:52:18 | [summary param] *3 in pthread_create [x] | test.cpp:52:5:52:18 | [summary] to write: Argument[2].Parameter[*0] in pthread_create [x] | provenance | MaD:43 | +| test.cpp:52:5:52:18 | [summary param] *3 in pthread_create [x] | test.cpp:52:5:52:18 | [summary] to write: Argument[2].Parameter[*0] in pthread_create [x] | provenance | MaD:46 | | test.cpp:52:5:52:18 | [summary] to write: Argument[2].Parameter[*0] in pthread_create [x] | test.cpp:46:30:46:32 | *arg [x] | provenance | | | test.cpp:56:2:56:2 | *s [post update] [x] | test.cpp:59:55:59:64 | *& ... [x] | provenance | | | test.cpp:56:2:56:18 | ... = ... | test.cpp:56:2:56:2 | *s [post update] [x] | provenance | | -| test.cpp:56:8:56:16 | call to ymlSource | test.cpp:56:2:56:18 | ... = ... | provenance | Src:MaD:20 | +| test.cpp:56:8:56:16 | call to ymlSource | test.cpp:56:2:56:18 | ... = ... | provenance | Src:MaD:22 | | test.cpp:59:55:59:64 | *& ... [x] | test.cpp:52:5:52:18 | [summary param] *3 in pthread_create [x] | provenance | | -| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:41 | -| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:41 | -| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:41 | -| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:41 | +| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:44 | +| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:44 | +| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:44 | +| test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | provenance | MaD:44 | | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | test.cpp:68:22:68:22 | y | provenance | | | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | test.cpp:74:22:74:22 | y | provenance | | | test.cpp:63:6:63:21 | [summary] to write: Argument[0].Parameter[0] in callWithArgument | test.cpp:82:22:82:22 | y | provenance | | @@ -158,7 +161,7 @@ edges | test.cpp:74:22:74:22 | y | test.cpp:75:11:75:11 | y | provenance | Sink:MaD:1 | | test.cpp:82:22:82:22 | y | test.cpp:83:11:83:11 | y | provenance | Sink:MaD:1 | | test.cpp:88:22:88:22 | y | test.cpp:89:11:89:11 | y | provenance | Sink:MaD:1 | -| test.cpp:94:10:94:18 | call to ymlSource | test.cpp:94:10:94:18 | call to ymlSource | provenance | Src:MaD:20 | +| test.cpp:94:10:94:18 | call to ymlSource | test.cpp:94:10:94:18 | call to ymlSource | provenance | Src:MaD:22 | | test.cpp:94:10:94:18 | call to ymlSource | test.cpp:97:26:97:26 | x | provenance | | | test.cpp:94:10:94:18 | call to ymlSource | test.cpp:101:26:101:26 | x | provenance | | | test.cpp:94:10:94:18 | call to ymlSource | test.cpp:103:63:103:63 | x | provenance | | @@ -167,28 +170,28 @@ edges | test.cpp:101:26:101:26 | x | test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | provenance | | | test.cpp:103:63:103:63 | x | test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | provenance | | | test.cpp:104:62:104:62 | x | test.cpp:63:6:63:21 | [summary param] 1 in callWithArgument | provenance | | -| test.cpp:111:3:111:25 | [summary param] *0 in callWithNonTypeTemplate | test.cpp:111:3:111:25 | [summary] to write: ReturnValue in callWithNonTypeTemplate | provenance | MaD:42 | -| test.cpp:114:10:114:18 | call to ymlSource | test.cpp:114:10:114:18 | call to ymlSource | provenance | Src:MaD:20 | +| test.cpp:111:3:111:25 | [summary param] *0 in callWithNonTypeTemplate | test.cpp:111:3:111:25 | [summary] to write: ReturnValue in callWithNonTypeTemplate | provenance | MaD:45 | +| test.cpp:114:10:114:18 | call to ymlSource | test.cpp:114:10:114:18 | call to ymlSource | provenance | Src:MaD:22 | | test.cpp:114:10:114:18 | call to ymlSource | test.cpp:118:44:118:44 | *x | provenance | | | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | provenance | | | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | test.cpp:119:10:119:11 | y2 | provenance | Sink:MaD:1 | | test.cpp:118:44:118:44 | *x | test.cpp:111:3:111:25 | [summary param] *0 in callWithNonTypeTemplate | provenance | | -| test.cpp:118:44:118:44 | *x | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | provenance | MaD:42 | -| windows.cpp:17:8:17:25 | [summary param] *0 in CommandLineToArgvA | windows.cpp:17:8:17:25 | [summary] to write: ReturnValue[**] in CommandLineToArgvA | provenance | MaD:28 | +| test.cpp:118:44:118:44 | *x | test.cpp:118:11:118:42 | call to callWithNonTypeTemplate | provenance | MaD:45 | +| windows.cpp:17:8:17:25 | [summary param] *0 in CommandLineToArgvA | windows.cpp:17:8:17:25 | [summary] to write: ReturnValue[**] in CommandLineToArgvA | provenance | MaD:30 | | windows.cpp:22:15:22:29 | *call to GetCommandLineA | windows.cpp:22:15:22:29 | *call to GetCommandLineA | provenance | Src:MaD:3 | | windows.cpp:22:15:22:29 | *call to GetCommandLineA | windows.cpp:24:8:24:11 | * ... | provenance | | | windows.cpp:22:15:22:29 | *call to GetCommandLineA | windows.cpp:27:36:27:38 | *cmd | provenance | | | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | provenance | | | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | windows.cpp:30:8:30:15 | * ... | provenance | | | windows.cpp:27:36:27:38 | *cmd | windows.cpp:17:8:17:25 | [summary param] *0 in CommandLineToArgvA | provenance | | -| windows.cpp:27:36:27:38 | *cmd | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | provenance | MaD:28 | +| windows.cpp:27:36:27:38 | *cmd | windows.cpp:27:17:27:34 | **call to CommandLineToArgvA | provenance | MaD:30 | | windows.cpp:34:17:34:38 | *call to GetEnvironmentStringsA | windows.cpp:34:17:34:38 | *call to GetEnvironmentStringsA | provenance | Src:MaD:4 | | windows.cpp:34:17:34:38 | *call to GetEnvironmentStringsA | windows.cpp:36:10:36:13 | * ... | provenance | | | windows.cpp:39:36:39:38 | GetEnvironmentVariableA output argument | windows.cpp:41:10:41:13 | * ... | provenance | Src:MaD:5 | | windows.cpp:90:6:90:15 | [summary param] *3 in ReadFileEx [*hEvent] | windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[*hEvent] in ReadFileEx | provenance | | | windows.cpp:90:6:90:15 | [summary param] *3 in ReadFileEx [hEvent] | windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[hEvent] in ReadFileEx | provenance | | -| windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[*hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[*hEvent] in ReadFileEx | provenance | MaD:32 | -| windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[hEvent] in ReadFileEx | provenance | MaD:32 | +| windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[*hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[*hEvent] in ReadFileEx | provenance | MaD:34 | +| windows.cpp:90:6:90:15 | [summary] read: Argument[*3].Field[hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[hEvent] in ReadFileEx | provenance | MaD:34 | | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2] in ReadFileEx [*hEvent] | windows.cpp:147:16:147:27 | *lpOverlapped [*hEvent] | provenance | | | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2] in ReadFileEx [hEvent] | windows.cpp:157:16:157:27 | *lpOverlapped [hEvent] | provenance | | | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2].Field[*hEvent] in ReadFileEx | windows.cpp:90:6:90:15 | [summary] to write: Argument[4].Parameter[*2] in ReadFileEx [*hEvent] | provenance | | @@ -236,11 +239,11 @@ edges | windows.cpp:332:23:332:40 | *call to MapViewOfFileNuma2 | windows.cpp:332:23:332:40 | *call to MapViewOfFileNuma2 | provenance | Src:MaD:12 | | windows.cpp:332:23:332:40 | *call to MapViewOfFileNuma2 | windows.cpp:333:20:333:52 | *pMapView | provenance | | | windows.cpp:333:20:333:52 | *pMapView | windows.cpp:335:10:335:16 | * ... | provenance | | -| windows.cpp:349:8:349:19 | [summary param] *3 in CreateThread [x] | windows.cpp:349:8:349:19 | [summary] to write: Argument[2].Parameter[*0] in CreateThread [x] | provenance | MaD:31 | +| windows.cpp:349:8:349:19 | [summary param] *3 in CreateThread [x] | windows.cpp:349:8:349:19 | [summary] to write: Argument[2].Parameter[*0] in CreateThread [x] | provenance | MaD:33 | | windows.cpp:349:8:349:19 | [summary] to write: Argument[2].Parameter[*0] in CreateThread [x] | windows.cpp:403:26:403:36 | *lpParameter [x] | provenance | | -| windows.cpp:357:8:357:25 | [summary param] *4 in CreateRemoteThread [x] | windows.cpp:357:8:357:25 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThread [x] | provenance | MaD:29 | +| windows.cpp:357:8:357:25 | [summary param] *4 in CreateRemoteThread [x] | windows.cpp:357:8:357:25 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThread [x] | provenance | MaD:31 | | windows.cpp:357:8:357:25 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThread [x] | windows.cpp:410:26:410:36 | *lpParameter [x] | provenance | | -| windows.cpp:387:8:387:27 | [summary param] *4 in CreateRemoteThreadEx [x] | windows.cpp:387:8:387:27 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThreadEx [x] | provenance | MaD:30 | +| windows.cpp:387:8:387:27 | [summary param] *4 in CreateRemoteThreadEx [x] | windows.cpp:387:8:387:27 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThreadEx [x] | provenance | MaD:32 | | windows.cpp:387:8:387:27 | [summary] to write: Argument[3].Parameter[*0] in CreateRemoteThreadEx [x] | windows.cpp:417:26:417:36 | *lpParameter [x] | provenance | | | windows.cpp:403:26:403:36 | *lpParameter [x] | windows.cpp:405:10:405:25 | *lpParameter [x] | provenance | | | windows.cpp:405:10:405:25 | *lpParameter [x] | windows.cpp:406:8:406:8 | *s [x] | provenance | | @@ -259,17 +262,17 @@ edges | windows.cpp:439:7:439:8 | *& ... [x] | windows.cpp:349:8:349:19 | [summary param] *3 in CreateThread [x] | provenance | | | windows.cpp:451:7:451:8 | *& ... [x] | windows.cpp:357:8:357:25 | [summary param] *4 in CreateRemoteThread [x] | provenance | | | windows.cpp:464:7:464:8 | *& ... [x] | windows.cpp:387:8:387:27 | [summary param] *4 in CreateRemoteThreadEx [x] | provenance | | -| windows.cpp:473:17:473:37 | [summary param] *1 in RtlCopyVolatileMemory | windows.cpp:473:17:473:37 | [summary param] *0 in RtlCopyVolatileMemory [Return] | provenance | MaD:37 | -| windows.cpp:479:17:479:35 | [summary param] *1 in RtlCopyDeviceMemory | windows.cpp:479:17:479:35 | [summary param] *0 in RtlCopyDeviceMemory [Return] | provenance | MaD:33 | -| windows.cpp:485:6:485:18 | [summary param] *1 in RtlCopyMemory | windows.cpp:485:6:485:18 | [summary param] *0 in RtlCopyMemory [Return] | provenance | MaD:34 | -| windows.cpp:493:6:493:29 | [summary param] *1 in RtlCopyMemoryNonTemporal | windows.cpp:493:6:493:29 | [summary param] *0 in RtlCopyMemoryNonTemporal [Return] | provenance | MaD:35 | +| windows.cpp:473:17:473:37 | [summary param] *1 in RtlCopyVolatileMemory | windows.cpp:473:17:473:37 | [summary param] *0 in RtlCopyVolatileMemory [Return] | provenance | MaD:39 | +| windows.cpp:479:17:479:35 | [summary param] *1 in RtlCopyDeviceMemory | windows.cpp:479:17:479:35 | [summary param] *0 in RtlCopyDeviceMemory [Return] | provenance | MaD:35 | +| windows.cpp:485:6:485:18 | [summary param] *1 in RtlCopyMemory | windows.cpp:485:6:485:18 | [summary param] *0 in RtlCopyMemory [Return] | provenance | MaD:36 | +| windows.cpp:493:6:493:29 | [summary param] *1 in RtlCopyMemoryNonTemporal | windows.cpp:493:6:493:29 | [summary param] *0 in RtlCopyMemoryNonTemporal [Return] | provenance | MaD:37 | | windows.cpp:510:6:510:25 | [summary param] *1 in RtlCopyUnicodeString [*Buffer] | windows.cpp:510:6:510:25 | [summary] read: Argument[*1].Field[*Buffer] in RtlCopyUnicodeString | provenance | | -| windows.cpp:510:6:510:25 | [summary] read: Argument[*1].Field[*Buffer] in RtlCopyUnicodeString | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlCopyUnicodeString | provenance | MaD:36 | +| windows.cpp:510:6:510:25 | [summary] read: Argument[*1].Field[*Buffer] in RtlCopyUnicodeString | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlCopyUnicodeString | provenance | MaD:38 | | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0] in RtlCopyUnicodeString [*Buffer] | windows.cpp:510:6:510:25 | [summary param] *0 in RtlCopyUnicodeString [Return] [*Buffer] | provenance | | | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlCopyUnicodeString | windows.cpp:510:6:510:25 | [summary] to write: Argument[*0] in RtlCopyUnicodeString [*Buffer] | provenance | | -| windows.cpp:515:6:515:18 | [summary param] *1 in RtlMoveMemory | windows.cpp:515:6:515:18 | [summary param] *0 in RtlMoveMemory [Return] | provenance | MaD:39 | -| windows.cpp:521:17:521:37 | [summary param] *1 in RtlMoveVolatileMemory | windows.cpp:521:17:521:37 | [summary param] *0 in RtlMoveVolatileMemory [Return] | provenance | MaD:40 | -| windows.cpp:527:6:527:25 | [summary param] *1 in RtlInitUnicodeString | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlInitUnicodeString | provenance | MaD:38 | +| windows.cpp:515:6:515:18 | [summary param] *1 in RtlMoveMemory | windows.cpp:515:6:515:18 | [summary param] *0 in RtlMoveMemory [Return] | provenance | MaD:41 | +| windows.cpp:521:17:521:37 | [summary param] *1 in RtlMoveVolatileMemory | windows.cpp:521:17:521:37 | [summary param] *0 in RtlMoveVolatileMemory [Return] | provenance | MaD:42 | +| windows.cpp:527:6:527:25 | [summary param] *1 in RtlInitUnicodeString | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlInitUnicodeString | provenance | MaD:40 | | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0] in RtlInitUnicodeString [*Buffer] | windows.cpp:527:6:527:25 | [summary param] *0 in RtlInitUnicodeString [Return] [*Buffer] | provenance | | | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0].Field[*Buffer] in RtlInitUnicodeString | windows.cpp:527:6:527:25 | [summary] to write: Argument[*0] in RtlInitUnicodeString [*Buffer] | provenance | | | windows.cpp:533:11:533:16 | call to source | windows.cpp:533:11:533:16 | call to source | provenance | | @@ -281,41 +284,51 @@ edges | windows.cpp:533:11:533:16 | call to source | windows.cpp:573:40:573:41 | *& ... | provenance | | | windows.cpp:537:27:537:37 | RtlCopyVolatileMemory output argument | windows.cpp:538:10:538:23 | access to array | provenance | | | windows.cpp:537:40:537:41 | *& ... | windows.cpp:473:17:473:37 | [summary param] *1 in RtlCopyVolatileMemory | provenance | | -| windows.cpp:537:40:537:41 | *& ... | windows.cpp:537:27:537:37 | RtlCopyVolatileMemory output argument | provenance | MaD:37 | +| windows.cpp:537:40:537:41 | *& ... | windows.cpp:537:27:537:37 | RtlCopyVolatileMemory output argument | provenance | MaD:39 | | windows.cpp:542:25:542:35 | RtlCopyDeviceMemory output argument | windows.cpp:543:10:543:23 | access to array | provenance | | | windows.cpp:542:38:542:39 | *& ... | windows.cpp:479:17:479:35 | [summary param] *1 in RtlCopyDeviceMemory | provenance | | -| windows.cpp:542:38:542:39 | *& ... | windows.cpp:542:25:542:35 | RtlCopyDeviceMemory output argument | provenance | MaD:33 | +| windows.cpp:542:38:542:39 | *& ... | windows.cpp:542:25:542:35 | RtlCopyDeviceMemory output argument | provenance | MaD:35 | | windows.cpp:547:19:547:29 | RtlCopyMemory output argument | windows.cpp:548:10:548:23 | access to array | provenance | | | windows.cpp:547:32:547:33 | *& ... | windows.cpp:485:6:485:18 | [summary param] *1 in RtlCopyMemory | provenance | | -| windows.cpp:547:32:547:33 | *& ... | windows.cpp:547:19:547:29 | RtlCopyMemory output argument | provenance | MaD:34 | +| windows.cpp:547:32:547:33 | *& ... | windows.cpp:547:19:547:29 | RtlCopyMemory output argument | provenance | MaD:36 | | windows.cpp:552:30:552:40 | RtlCopyMemoryNonTemporal output argument | windows.cpp:553:10:553:23 | access to array | provenance | | | windows.cpp:552:43:552:44 | *& ... | windows.cpp:493:6:493:29 | [summary param] *1 in RtlCopyMemoryNonTemporal | provenance | | -| windows.cpp:552:43:552:44 | *& ... | windows.cpp:552:30:552:40 | RtlCopyMemoryNonTemporal output argument | provenance | MaD:35 | +| windows.cpp:552:43:552:44 | *& ... | windows.cpp:552:30:552:40 | RtlCopyMemoryNonTemporal output argument | provenance | MaD:37 | | windows.cpp:559:5:559:24 | ... = ... | windows.cpp:561:39:561:44 | *buffer | provenance | | | windows.cpp:559:17:559:24 | call to source | windows.cpp:559:5:559:24 | ... = ... | provenance | | | windows.cpp:561:26:561:36 | RtlInitUnicodeString output argument [*Buffer] | windows.cpp:562:10:562:19 | *src_string [*Buffer] | provenance | | | windows.cpp:561:26:561:36 | RtlInitUnicodeString output argument [*Buffer] | windows.cpp:563:40:563:50 | *& ... [*Buffer] | provenance | | | windows.cpp:561:39:561:44 | *buffer | windows.cpp:527:6:527:25 | [summary param] *1 in RtlInitUnicodeString | provenance | | -| windows.cpp:561:39:561:44 | *buffer | windows.cpp:561:26:561:36 | RtlInitUnicodeString output argument [*Buffer] | provenance | MaD:38 | +| windows.cpp:561:39:561:44 | *buffer | windows.cpp:561:26:561:36 | RtlInitUnicodeString output argument [*Buffer] | provenance | MaD:40 | | windows.cpp:562:10:562:19 | *src_string [*Buffer] | windows.cpp:562:10:562:29 | access to array | provenance | | | windows.cpp:562:10:562:19 | *src_string [*Buffer] | windows.cpp:562:21:562:26 | *Buffer | provenance | | | windows.cpp:562:21:562:26 | *Buffer | windows.cpp:562:10:562:29 | access to array | provenance | | | windows.cpp:563:26:563:37 | RtlCopyUnicodeString output argument [*Buffer] | windows.cpp:564:10:564:20 | *dest_string [*Buffer] | provenance | | | windows.cpp:563:40:563:50 | *& ... [*Buffer] | windows.cpp:510:6:510:25 | [summary param] *1 in RtlCopyUnicodeString [*Buffer] | provenance | | -| windows.cpp:563:40:563:50 | *& ... [*Buffer] | windows.cpp:563:26:563:37 | RtlCopyUnicodeString output argument [*Buffer] | provenance | MaD:36 | +| windows.cpp:563:40:563:50 | *& ... [*Buffer] | windows.cpp:563:26:563:37 | RtlCopyUnicodeString output argument [*Buffer] | provenance | MaD:38 | | windows.cpp:564:10:564:20 | *dest_string [*Buffer] | windows.cpp:564:10:564:30 | access to array | provenance | | | windows.cpp:564:10:564:20 | *dest_string [*Buffer] | windows.cpp:564:22:564:27 | *Buffer | provenance | | | windows.cpp:564:22:564:27 | *Buffer | windows.cpp:564:10:564:30 | access to array | provenance | | | windows.cpp:568:19:568:29 | RtlMoveMemory output argument | windows.cpp:569:10:569:23 | access to array | provenance | | | windows.cpp:568:32:568:33 | *& ... | windows.cpp:515:6:515:18 | [summary param] *1 in RtlMoveMemory | provenance | | -| windows.cpp:568:32:568:33 | *& ... | windows.cpp:568:19:568:29 | RtlMoveMemory output argument | provenance | MaD:39 | +| windows.cpp:568:32:568:33 | *& ... | windows.cpp:568:19:568:29 | RtlMoveMemory output argument | provenance | MaD:41 | | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | windows.cpp:574:10:574:23 | access to array | provenance | | | windows.cpp:573:40:573:41 | *& ... | windows.cpp:521:17:521:37 | [summary param] *1 in RtlMoveVolatileMemory | provenance | | -| windows.cpp:573:40:573:41 | *& ... | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | provenance | MaD:40 | -| windows.cpp:644:45:644:50 | WinHttpReadData output argument | windows.cpp:646:10:646:16 | * ... | provenance | Src:MaD:18 | -| windows.cpp:651:48:651:53 | WinHttpReadDataEx output argument | windows.cpp:653:10:653:16 | * ... | provenance | Src:MaD:19 | +| windows.cpp:573:40:573:41 | *& ... | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | provenance | MaD:42 | +| windows.cpp:644:45:644:50 | WinHttpReadData output argument | windows.cpp:646:10:646:16 | * ... | provenance | Src:MaD:20 | +| windows.cpp:651:48:651:53 | WinHttpReadDataEx output argument | windows.cpp:653:10:653:16 | * ... | provenance | Src:MaD:21 | | windows.cpp:658:62:658:67 | WinHttpQueryHeaders output argument | windows.cpp:660:10:660:16 | * ... | provenance | Src:MaD:16 | -| windows.cpp:668:82:668:87 | WinHttpQueryHeadersEx output argument | windows.cpp:670:10:670:16 | * ... | provenance | Src:MaD:17 | +| windows.cpp:668:70:668:79 | WinHttpQueryHeadersEx output argument | windows.cpp:672:10:672:29 | * ... | provenance | Src:MaD:18 | +| windows.cpp:668:82:668:87 | WinHttpQueryHeadersEx output argument | windows.cpp:670:10:670:16 | * ... | provenance | Src:MaD:19 | +| windows.cpp:668:105:668:112 | WinHttpQueryHeadersEx output argument | windows.cpp:674:10:674:27 | * ... | provenance | Src:MaD:17 | +| windows.cpp:714:6:714:20 | [summary param] *0 in WinHttpCrackUrl | windows.cpp:714:6:714:20 | [summary param] *3 in WinHttpCrackUrl [Return] | provenance | MaD:43 | +| windows.cpp:728:5:728:28 | ... = ... | windows.cpp:729:35:729:35 | *x | provenance | | +| windows.cpp:728:12:728:28 | call to source | windows.cpp:728:5:728:28 | ... = ... | provenance | | +| windows.cpp:729:35:729:35 | *x | windows.cpp:714:6:714:20 | [summary param] *0 in WinHttpCrackUrl | provenance | | +| windows.cpp:729:35:729:35 | *x | windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | provenance | MaD:43 | +| windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | windows.cpp:731:10:731:36 | * ... | provenance | | +| windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | windows.cpp:733:10:733:35 | * ... | provenance | | +| windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | windows.cpp:735:10:735:37 | * ... | provenance | | nodes | asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | semmle.label | [summary param] *0 in buffer | | asio_streams.cpp:56:18:56:23 | [summary] to write: ReturnValue in buffer | semmle.label | [summary] to write: ReturnValue in buffer | @@ -608,8 +621,21 @@ nodes | windows.cpp:653:10:653:16 | * ... | semmle.label | * ... | | windows.cpp:658:62:658:67 | WinHttpQueryHeaders output argument | semmle.label | WinHttpQueryHeaders output argument | | windows.cpp:660:10:660:16 | * ... | semmle.label | * ... | +| windows.cpp:668:70:668:79 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | | windows.cpp:668:82:668:87 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | +| windows.cpp:668:105:668:112 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | | windows.cpp:670:10:670:16 | * ... | semmle.label | * ... | +| windows.cpp:672:10:672:29 | * ... | semmle.label | * ... | +| windows.cpp:674:10:674:27 | * ... | semmle.label | * ... | +| windows.cpp:714:6:714:20 | [summary param] *0 in WinHttpCrackUrl | semmle.label | [summary param] *0 in WinHttpCrackUrl | +| windows.cpp:714:6:714:20 | [summary param] *3 in WinHttpCrackUrl [Return] | semmle.label | [summary param] *3 in WinHttpCrackUrl [Return] | +| windows.cpp:728:5:728:28 | ... = ... | semmle.label | ... = ... | +| windows.cpp:728:12:728:28 | call to source | semmle.label | call to source | +| windows.cpp:729:35:729:35 | *x | semmle.label | *x | +| windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | semmle.label | WinHttpCrackUrl output argument | +| windows.cpp:731:10:731:36 | * ... | semmle.label | * ... | +| windows.cpp:733:10:733:35 | * ... | semmle.label | * ... | +| windows.cpp:735:10:735:37 | * ... | semmle.label | * ... | subpaths | asio_streams.cpp:100:64:100:71 | *send_str | asio_streams.cpp:56:18:56:23 | [summary param] *0 in buffer | asio_streams.cpp:56:18:56:23 | [summary] to write: ReturnValue in buffer | asio_streams.cpp:100:44:100:62 | call to buffer | | azure.cpp:257:5:257:8 | *resp | azure.cpp:113:16:113:19 | [summary param] this in Read | azure.cpp:113:16:113:19 | [summary param] *0 in Read [Return] | azure.cpp:257:16:257:21 | Read output argument | @@ -631,4 +657,5 @@ subpaths | windows.cpp:563:40:563:50 | *& ... [*Buffer] | windows.cpp:510:6:510:25 | [summary param] *1 in RtlCopyUnicodeString [*Buffer] | windows.cpp:510:6:510:25 | [summary param] *0 in RtlCopyUnicodeString [Return] [*Buffer] | windows.cpp:563:26:563:37 | RtlCopyUnicodeString output argument [*Buffer] | | windows.cpp:568:32:568:33 | *& ... | windows.cpp:515:6:515:18 | [summary param] *1 in RtlMoveMemory | windows.cpp:515:6:515:18 | [summary param] *0 in RtlMoveMemory [Return] | windows.cpp:568:19:568:29 | RtlMoveMemory output argument | | windows.cpp:573:40:573:41 | *& ... | windows.cpp:521:17:521:37 | [summary param] *1 in RtlMoveVolatileMemory | windows.cpp:521:17:521:37 | [summary param] *0 in RtlMoveVolatileMemory [Return] | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | +| windows.cpp:729:35:729:35 | *x | windows.cpp:714:6:714:20 | [summary param] *0 in WinHttpCrackUrl | windows.cpp:714:6:714:20 | [summary param] *3 in WinHttpCrackUrl [Return] | windows.cpp:729:44:729:57 | WinHttpCrackUrl output argument | testFailures diff --git a/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp b/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp index 15d684b1d6a6..4e8ab6a6609c 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp +++ b/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp @@ -669,9 +669,9 @@ void test_winhttp(HINTERNET hRequest) { sink(buffer); sink(*buffer); // $ ir sink(headerName->pszName); - sink(*headerName->pszName); // $ MISSING: ir + sink(*headerName->pszName); // $ ir sink(headers->pszValue); - sink(*headers->pszValue); // $ MISSING: ir + sink(*headers->pszValue); // $ ir } } @@ -728,10 +728,10 @@ void test_winhttp_crack_url() { x[0] = (wchar_t)source(); BOOL result = WinHttpCrackUrl(x, 0, 0, &urlComponents); sink(urlComponents.lpszHostName); - sink(*urlComponents.lpszHostName); // $ MISSING: ir + sink(*urlComponents.lpszHostName); // $ ir sink(urlComponents.lpszUrlPath); - sink(*urlComponents.lpszUrlPath); // $ MISSING: ir + sink(*urlComponents.lpszUrlPath); // $ ir sink(urlComponents.lpszExtraInfo); - sink(*urlComponents.lpszExtraInfo); // $ MISSING: ir + sink(*urlComponents.lpszExtraInfo); // $ ir } } \ No newline at end of file From 32b86eca50d511d1b2e6f9dfb0ca43b87943aa82 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Tue, 3 Feb 2026 11:40:31 +0000 Subject: [PATCH 285/433] C++: Add change note. --- .../change-notes/2026-02-03-windows-remote-flow-sources.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/lib/change-notes/2026-02-03-windows-remote-flow-sources.md diff --git a/cpp/ql/lib/change-notes/2026-02-03-windows-remote-flow-sources.md b/cpp/ql/lib/change-notes/2026-02-03-windows-remote-flow-sources.md new file mode 100644 index 000000000000..0a884df065a3 --- /dev/null +++ b/cpp/ql/lib/change-notes/2026-02-03-windows-remote-flow-sources.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* Added remote flow source models for the `winhttp.h` windows header and the Azure SDK core library for C/C++. \ No newline at end of file From 092d25451fa8458a9947e0409bb15f4a6e52bca0 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Tue, 3 Feb 2026 11:45:30 +0000 Subject: [PATCH 286/433] C++: Fix Copilot comments. --- .../cpp/models/implementations/WinHttp.qll | 5 +-- .../dataflow/external-models/flow.expected | 36 +++++++++---------- .../dataflow/external-models/sources.expected | 12 +++---- .../dataflow/external-models/windows.cpp | 6 ++-- 4 files changed, 30 insertions(+), 29 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/models/implementations/WinHttp.qll b/cpp/ql/lib/semmle/code/cpp/models/implementations/WinHttp.qll index fccd1b68f8f8..fb28e6ebe451 100644 --- a/cpp/ql/lib/semmle/code/cpp/models/implementations/WinHttp.qll +++ b/cpp/ql/lib/semmle/code/cpp/models/implementations/WinHttp.qll @@ -2,12 +2,12 @@ private import cpp private import semmle.code.cpp.ir.dataflow.FlowSteps private import semmle.code.cpp.dataflow.new.DataFlow -/** The `WINHTTP_HEADER_NAME` classes from `winhttp.h`. */ +/** The `WINHTTP_HEADER_NAME` class from `winhttp.h`. */ class WinHttpHeaderName extends Class { WinHttpHeaderName() { this.hasGlobalName("_WINHTTP_HEADER_NAME") } } -/** The `WINHTTP_EXTENDED_HEADER` classes from `winhttp.h`. */ +/** The `WINHTTP_EXTENDED_HEADER` class from `winhttp.h`. */ class WinHttpExtendedHeader extends Class { WinHttpExtendedHeader() { this.hasGlobalName("_WINHTTP_EXTENDED_HEADER") } } @@ -32,6 +32,7 @@ private class WinHttpHeaderNameInheritingContent extends TaintInheritingContent, } } +/** The `URL_COMPONENTS` class from `winhttp.h`. */ class WinHttpUrlComponents extends Class { WinHttpUrlComponents() { this.hasGlobalName("_WINHTTP_URL_COMPONENTS") } } diff --git a/cpp/ql/test/library-tests/dataflow/external-models/flow.expected b/cpp/ql/test/library-tests/dataflow/external-models/flow.expected index 5c77771c7859..1e46060c97ed 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/flow.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/flow.expected @@ -315,12 +315,12 @@ edges | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | windows.cpp:574:10:574:23 | access to array | provenance | | | windows.cpp:573:40:573:41 | *& ... | windows.cpp:521:17:521:37 | [summary param] *1 in RtlMoveVolatileMemory | provenance | | | windows.cpp:573:40:573:41 | *& ... | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | provenance | MaD:42 | -| windows.cpp:644:45:644:50 | WinHttpReadData output argument | windows.cpp:646:10:646:16 | * ... | provenance | Src:MaD:20 | -| windows.cpp:651:48:651:53 | WinHttpReadDataEx output argument | windows.cpp:653:10:653:16 | * ... | provenance | Src:MaD:21 | -| windows.cpp:658:62:658:67 | WinHttpQueryHeaders output argument | windows.cpp:660:10:660:16 | * ... | provenance | Src:MaD:16 | -| windows.cpp:668:70:668:79 | WinHttpQueryHeadersEx output argument | windows.cpp:672:10:672:29 | * ... | provenance | Src:MaD:18 | -| windows.cpp:668:82:668:87 | WinHttpQueryHeadersEx output argument | windows.cpp:670:10:670:16 | * ... | provenance | Src:MaD:19 | -| windows.cpp:668:105:668:112 | WinHttpQueryHeadersEx output argument | windows.cpp:674:10:674:27 | * ... | provenance | Src:MaD:17 | +| windows.cpp:645:45:645:50 | WinHttpReadData output argument | windows.cpp:647:10:647:16 | * ... | provenance | Src:MaD:20 | +| windows.cpp:652:48:652:53 | WinHttpReadDataEx output argument | windows.cpp:654:10:654:16 | * ... | provenance | Src:MaD:21 | +| windows.cpp:659:47:659:52 | WinHttpQueryHeaders output argument | windows.cpp:661:10:661:16 | * ... | provenance | Src:MaD:16 | +| windows.cpp:669:70:669:79 | WinHttpQueryHeadersEx output argument | windows.cpp:673:10:673:29 | * ... | provenance | Src:MaD:18 | +| windows.cpp:669:82:669:87 | WinHttpQueryHeadersEx output argument | windows.cpp:671:10:671:16 | * ... | provenance | Src:MaD:19 | +| windows.cpp:669:105:669:112 | WinHttpQueryHeadersEx output argument | windows.cpp:675:10:675:27 | * ... | provenance | Src:MaD:17 | | windows.cpp:714:6:714:20 | [summary param] *0 in WinHttpCrackUrl | windows.cpp:714:6:714:20 | [summary param] *3 in WinHttpCrackUrl [Return] | provenance | MaD:43 | | windows.cpp:728:5:728:28 | ... = ... | windows.cpp:729:35:729:35 | *x | provenance | | | windows.cpp:728:12:728:28 | call to source | windows.cpp:728:5:728:28 | ... = ... | provenance | | @@ -615,18 +615,18 @@ nodes | windows.cpp:573:27:573:37 | RtlMoveVolatileMemory output argument | semmle.label | RtlMoveVolatileMemory output argument | | windows.cpp:573:40:573:41 | *& ... | semmle.label | *& ... | | windows.cpp:574:10:574:23 | access to array | semmle.label | access to array | -| windows.cpp:644:45:644:50 | WinHttpReadData output argument | semmle.label | WinHttpReadData output argument | -| windows.cpp:646:10:646:16 | * ... | semmle.label | * ... | -| windows.cpp:651:48:651:53 | WinHttpReadDataEx output argument | semmle.label | WinHttpReadDataEx output argument | -| windows.cpp:653:10:653:16 | * ... | semmle.label | * ... | -| windows.cpp:658:62:658:67 | WinHttpQueryHeaders output argument | semmle.label | WinHttpQueryHeaders output argument | -| windows.cpp:660:10:660:16 | * ... | semmle.label | * ... | -| windows.cpp:668:70:668:79 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | -| windows.cpp:668:82:668:87 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | -| windows.cpp:668:105:668:112 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | -| windows.cpp:670:10:670:16 | * ... | semmle.label | * ... | -| windows.cpp:672:10:672:29 | * ... | semmle.label | * ... | -| windows.cpp:674:10:674:27 | * ... | semmle.label | * ... | +| windows.cpp:645:45:645:50 | WinHttpReadData output argument | semmle.label | WinHttpReadData output argument | +| windows.cpp:647:10:647:16 | * ... | semmle.label | * ... | +| windows.cpp:652:48:652:53 | WinHttpReadDataEx output argument | semmle.label | WinHttpReadDataEx output argument | +| windows.cpp:654:10:654:16 | * ... | semmle.label | * ... | +| windows.cpp:659:47:659:52 | WinHttpQueryHeaders output argument | semmle.label | WinHttpQueryHeaders output argument | +| windows.cpp:661:10:661:16 | * ... | semmle.label | * ... | +| windows.cpp:669:70:669:79 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | +| windows.cpp:669:82:669:87 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | +| windows.cpp:669:105:669:112 | WinHttpQueryHeadersEx output argument | semmle.label | WinHttpQueryHeadersEx output argument | +| windows.cpp:671:10:671:16 | * ... | semmle.label | * ... | +| windows.cpp:673:10:673:29 | * ... | semmle.label | * ... | +| windows.cpp:675:10:675:27 | * ... | semmle.label | * ... | | windows.cpp:714:6:714:20 | [summary param] *0 in WinHttpCrackUrl | semmle.label | [summary param] *0 in WinHttpCrackUrl | | windows.cpp:714:6:714:20 | [summary param] *3 in WinHttpCrackUrl [Return] | semmle.label | [summary param] *3 in WinHttpCrackUrl [Return] | | windows.cpp:728:5:728:28 | ... = ... | semmle.label | ... = ... | diff --git a/cpp/ql/test/library-tests/dataflow/external-models/sources.expected b/cpp/ql/test/library-tests/dataflow/external-models/sources.expected index 9481e8634f62..c683d8539a07 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/sources.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/sources.expected @@ -26,9 +26,9 @@ | windows.cpp:318:23:318:37 | *call to MapViewOfFileEx | local | | windows.cpp:325:23:325:42 | *call to MapViewOfFileFromApp | local | | windows.cpp:332:23:332:40 | *call to MapViewOfFileNuma2 | local | -| windows.cpp:644:45:644:50 | WinHttpReadData output argument | remote | -| windows.cpp:651:48:651:53 | WinHttpReadDataEx output argument | remote | -| windows.cpp:658:62:658:67 | WinHttpQueryHeaders output argument | remote | -| windows.cpp:668:70:668:79 | WinHttpQueryHeadersEx output argument | remote | -| windows.cpp:668:82:668:87 | WinHttpQueryHeadersEx output argument | remote | -| windows.cpp:668:105:668:112 | WinHttpQueryHeadersEx output argument | remote | +| windows.cpp:645:45:645:50 | WinHttpReadData output argument | remote | +| windows.cpp:652:48:652:53 | WinHttpReadDataEx output argument | remote | +| windows.cpp:659:47:659:52 | WinHttpQueryHeaders output argument | remote | +| windows.cpp:669:70:669:79 | WinHttpQueryHeadersEx output argument | remote | +| windows.cpp:669:82:669:87 | WinHttpQueryHeadersEx output argument | remote | +| windows.cpp:669:105:669:112 | WinHttpQueryHeadersEx output argument | remote | diff --git a/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp b/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp index 4e8ab6a6609c..2900af9034c8 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp +++ b/cpp/ql/test/library-tests/dataflow/external-models/windows.cpp @@ -577,7 +577,6 @@ void test_copy_and_move_memory() { using HINTERNET = void*; using ULONGLONG = unsigned long long; -using LPCWSTR = const wchar_t*; using UINT = unsigned int; using PDWORD = DWORD*; using PCSTR = const char*; @@ -613,6 +612,8 @@ DWORD WinHttpReadDataEx( PVOID pvProperty ); +using LPCWSTR = const wchar_t*; + BOOL WinHttpQueryHeaders( HINTERNET hRequest, DWORD dwInfoLevel, @@ -655,7 +656,7 @@ void test_winhttp(HINTERNET hRequest) { { char buffer[1024]; DWORD bufferLength = sizeof(buffer); - DWORD result = WinHttpQueryHeaders(hRequest, 0, nullptr, buffer, &bufferLength, nullptr); + WinHttpQueryHeaders(hRequest, 0, nullptr, buffer, &bufferLength, nullptr); sink(buffer); sink(*buffer); // $ ir } @@ -691,7 +692,6 @@ using INTERNET_SCHEME = enum { INTERNET_SCHEME_LAST = 10 }; using INTERNET_PORT = unsigned short; -using LPCWSTR = const wchar_t*; typedef struct _WINHTTP_URL_COMPONENTS { DWORD dwStructSize; From 389cd5d648e31b695f7240a1e9c711092b6fdec0 Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Tue, 3 Feb 2026 15:33:55 +0100 Subject: [PATCH 287/433] Cfg: Extract CFG pretty-printing code. --- shared/controlflow/codeql/controlflow/Cfg.qll | 157 +-------------- .../codeql/controlflow/PrintGraph.qll | 184 ++++++++++++++++++ 2 files changed, 193 insertions(+), 148 deletions(-) create mode 100644 shared/controlflow/codeql/controlflow/PrintGraph.qll diff --git a/shared/controlflow/codeql/controlflow/Cfg.qll b/shared/controlflow/codeql/controlflow/Cfg.qll index 62eebe8e183e..6f9a3adfec46 100644 --- a/shared/controlflow/codeql/controlflow/Cfg.qll +++ b/shared/controlflow/codeql/controlflow/Cfg.qll @@ -1310,161 +1310,22 @@ module MakeWithSplitting< } } - /** A node to be included in the output of `TestOutput`. */ - signature class RelevantNodeSig extends Node; + private import PrintGraph as Pp - /** - * Import this module into a `.ql` file to output a CFG. The - * graph is restricted to nodes from `RelevantNode`. - */ - module TestOutput { - /** Holds if `pred -> succ` is an edge in the CFG. */ - query predicate edges(RelevantNode pred, RelevantNode succ, string label) { - label = - strictconcat(SuccessorType t, string s | - succ = getASuccessor(pred, t) and - if t instanceof DirectSuccessor then s = "" else s = t.toString() - | - s, ", " order by s - ) - } - - /** - * Provides logic for representing a CFG as a [Mermaid diagram](https://mermaid.js.org/). - */ - module Mermaid { - private string nodeId(RelevantNode n) { - result = - any(int i | - n = - rank[i](RelevantNode p, string filePath, int startLine, int startColumn, int endLine, - int endColumn | - p.getLocation() - .hasLocationInfo(filePath, startLine, startColumn, endLine, endColumn) - | - p order by filePath, startLine, startColumn, endLine, endColumn, p.toString() - ) - ).toString() - } - - private string nodes() { - result = - concat(RelevantNode n, string id, string text | - id = nodeId(n) and - text = n.toString() - | - id + "[\"" + text + "\"]", "\n" order by id - ) - } + private module PrintGraphInput implements Pp::InputSig { + class Callable = CfgScope; - private string edge(RelevantNode pred, RelevantNode succ) { - edges(pred, succ, _) and - exists(string label | - edges(pred, succ, label) and - if label = "" - then result = nodeId(pred) + " --> " + nodeId(succ) - else result = nodeId(pred) + " -- " + label + " --> " + nodeId(succ) - ) - } - - private string edges() { - result = - concat(RelevantNode pred, RelevantNode succ, string edge, string filePath, int startLine, - int startColumn, int endLine, int endColumn | - edge = edge(pred, succ) and - pred.getLocation().hasLocationInfo(filePath, startLine, startColumn, endLine, endColumn) - | - edge, "\n" - order by - filePath, startLine, startColumn, endLine, endColumn, pred.toString() - ) - } - - /** Holds if the Mermaid representation is `s`. */ - query predicate mermaid(string s) { s = "flowchart TD\n" + nodes() + "\n\n" + edges() } + class ControlFlowNode extends Node { + Callable getEnclosingCallable() { result = this.getScope() } } - } - - /** Provides the input to `ViewCfgQuery`. */ - signature module ViewCfgQueryInputSig { - /** The source file selected in the IDE. Should be an `external` predicate. */ - string selectedSourceFile(); - - /** The source line selected in the IDE. Should be an `external` predicate. */ - int selectedSourceLine(); - /** The source column selected in the IDE. Should be an `external` predicate. */ - int selectedSourceColumn(); - - /** - * Holds if CFG scope `scope` spans column `startColumn` of line `startLine` to - * column `endColumn` of line `endLine` in `file`. - */ - predicate cfgScopeSpan( - CfgScope scope, File file, int startLine, int startColumn, int endLine, int endColumn - ); - } - - /** - * Provides an implementation for a `View CFG` query. - * - * Import this module into a `.ql` that looks like - * - * ```ql - * @name Print CFG - * @description Produces a representation of a file's Control Flow Graph. - * This query is used by the VS Code extension. - * @id /print-cfg - * @kind graph - * @tags ide-contextual-queries/print-cfg - * ``` - */ - module ViewCfgQuery ViewCfgQueryInput> { - private import ViewCfgQueryInput - - bindingset[file, line, column] - private CfgScope smallestEnclosingScope(File file, int line, int column) { - result = - min(CfgScope scope, int startLine, int startColumn, int endLine, int endColumn | - cfgScopeSpan(scope, file, startLine, startColumn, endLine, endColumn) and - ( - startLine < line - or - startLine = line and startColumn <= column - ) and - ( - endLine > line - or - endLine = line and endColumn >= column - ) - | - scope order by startLine desc, startColumn desc, endLine, endColumn - ) - } - - private import IdeContextual - - private class RelevantNode extends Node { - RelevantNode() { - this.getScope() = - smallestEnclosingScope(getFileBySourceArchiveName(selectedSourceFile()), - selectedSourceLine(), selectedSourceColumn()) - } - - string getOrderDisambiguation() { result = "" } - } - - private module Output = TestOutput; - - import Output::Mermaid - - /** Holds if `pred` -> `succ` is an edge in the CFG. */ - query predicate edges(RelevantNode pred, RelevantNode succ, string attr, string val) { - attr = "semmle.label" and - Output::edges(pred, succ, val) + ControlFlowNode getASuccessor(ControlFlowNode n, SuccessorType t) { + result = n.getASuccessor(t) } } + import Pp::PrintGraph + /** Provides a set of consistency queries. */ module Consistency { /** Holds if `s1` and `s2` are distinct representations of the same set. */ diff --git a/shared/controlflow/codeql/controlflow/PrintGraph.qll b/shared/controlflow/codeql/controlflow/PrintGraph.qll new file mode 100644 index 000000000000..c09aeeff71cb --- /dev/null +++ b/shared/controlflow/codeql/controlflow/PrintGraph.qll @@ -0,0 +1,184 @@ +/** + * Provides modules for printing control flow graphs in VSCode via the "View + * CFG" query. Also provides modules for printing control flow graphs in tests + * and as Mermaid diagrams. + */ + +private import codeql.util.FileSystem +private import codeql.util.Location +private import SuccessorType + +signature module InputSig { + class Callable; + + class ControlFlowNode { + Callable getEnclosingCallable(); + + Location getLocation(); + + string toString(); + } + + ControlFlowNode getASuccessor(ControlFlowNode n, SuccessorType t); +} + +module PrintGraph Input> { + private import Input + + /** A node to be included in the output of `TestOutput`. */ + signature class RelevantNodeSig extends ControlFlowNode; + + /** + * Import this module into a `.ql` file to output a CFG. The + * graph is restricted to nodes from `RelevantNode`. + */ + module TestOutput { + /** Holds if `pred -> succ` is an edge in the CFG. */ + query predicate edges(RelevantNode pred, RelevantNode succ, string label) { + label = + strictconcat(SuccessorType t, string s | + succ = getASuccessor(pred, t) and + if t instanceof DirectSuccessor then s = "" else s = t.toString() + | + s, ", " order by s + ) + } + + /** + * Provides logic for representing a CFG as a [Mermaid diagram](https://mermaid.js.org/). + */ + module Mermaid { + private string nodeId(RelevantNode n) { + result = + any(int i | + n = + rank[i](RelevantNode p, string filePath, int startLine, int startColumn, int endLine, + int endColumn | + p.getLocation() + .hasLocationInfo(filePath, startLine, startColumn, endLine, endColumn) + | + p order by filePath, startLine, startColumn, endLine, endColumn, p.toString() + ) + ).toString() + } + + private string nodes() { + result = + concat(RelevantNode n, string id, string text | + id = nodeId(n) and + text = n.toString() + | + id + "[\"" + text + "\"]", "\n" order by id + ) + } + + private string edge(RelevantNode pred, RelevantNode succ) { + edges(pred, succ, _) and + exists(string label | + edges(pred, succ, label) and + if label = "" + then result = nodeId(pred) + " --> " + nodeId(succ) + else result = nodeId(pred) + " -- " + label + " --> " + nodeId(succ) + ) + } + + private string edges() { + result = + concat(RelevantNode pred, RelevantNode succ, string edge, string filePath, int startLine, + int startColumn, int endLine, int endColumn | + edge = edge(pred, succ) and + pred.getLocation().hasLocationInfo(filePath, startLine, startColumn, endLine, endColumn) + | + edge, "\n" + order by + filePath, startLine, startColumn, endLine, endColumn, pred.toString() + ) + } + + /** Holds if the Mermaid representation is `s`. */ + query predicate mermaid(string s) { s = "flowchart TD\n" + nodes() + "\n\n" + edges() } + } + } + + /** Provides the input to `ViewCfgQuery`. */ + signature module ViewCfgQueryInputSig { + /** The source file selected in the IDE. Should be an `external` predicate. */ + string selectedSourceFile(); + + /** The source line selected in the IDE. Should be an `external` predicate. */ + int selectedSourceLine(); + + /** The source column selected in the IDE. Should be an `external` predicate. */ + int selectedSourceColumn(); + + /** + * Holds if `callable` spans column `startColumn` of line `startLine` to + * column `endColumn` of line `endLine` in `file`. + */ + predicate cfgScopeSpan( + Callable callable, File file, int startLine, int startColumn, int endLine, int endColumn + ); + } + + /** + * Provides an implementation for a `View CFG` query. + * + * Import this module into a `.ql` that looks like + * + * ```ql + * @name Print CFG + * @description Produces a representation of a file's Control Flow Graph. + * This query is used by the VS Code extension. + * @id /print-cfg + * @kind graph + * @tags ide-contextual-queries/print-cfg + * ``` + */ + module ViewCfgQuery ViewCfgQueryInput> { + private import ViewCfgQueryInput + + bindingset[file, line, column] + private Callable smallestEnclosingScope(File file, int line, int column) { + result = + min(Callable callable, int startLine, int startColumn, int endLine, int endColumn | + cfgScopeSpan(callable, file, startLine, startColumn, endLine, endColumn) and + ( + startLine < line + or + startLine = line and startColumn <= column + ) and + ( + endLine > line + or + endLine = line and endColumn >= column + ) + | + callable order by startLine desc, startColumn desc, endLine, endColumn + ) + } + + private import IdeContextual + + final private class FinalControlFlowNode = ControlFlowNode; + + private class RelevantNode extends FinalControlFlowNode { + RelevantNode() { + this.getEnclosingCallable() = + smallestEnclosingScope(getFileBySourceArchiveName(selectedSourceFile()), + selectedSourceLine(), selectedSourceColumn()) + } + + string getOrderDisambiguation() { result = "" } + } + + private module Output = TestOutput; + + import Output::Mermaid + + /** Holds if `pred` -> `succ` is an edge in the CFG. */ + query predicate edges(RelevantNode pred, RelevantNode succ, string attr, string val) { + attr = "semmle.label" and + Output::edges(pred, succ, val) + } + } +} From 2d61fc5309379648577b42fc1d2691b28c03c657 Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Tue, 3 Feb 2026 15:49:27 +0100 Subject: [PATCH 288/433] Java: Add support for "View CFG". --- java/ql/lib/printCfg.ql | 45 +++++++++++++++++++ .../lib/semmle/code/java/ControlFlowGraph.qll | 14 ++++++ 2 files changed, 59 insertions(+) create mode 100644 java/ql/lib/printCfg.ql diff --git a/java/ql/lib/printCfg.ql b/java/ql/lib/printCfg.ql new file mode 100644 index 000000000000..5e3cc22644ef --- /dev/null +++ b/java/ql/lib/printCfg.ql @@ -0,0 +1,45 @@ +/** + * @name Print CFG + * @description Produces a representation of a file's Control Flow Graph. + * This query is used by the VS Code extension. + * @id java/print-cfg + * @kind graph + * @tags ide-contextual-queries/print-cfg + */ + +import java + +external string selectedSourceFile(); + +private predicate selectedSourceFileAlias = selectedSourceFile/0; + +external int selectedSourceLine(); + +private predicate selectedSourceLineAlias = selectedSourceLine/0; + +external int selectedSourceColumn(); + +private predicate selectedSourceColumnAlias = selectedSourceColumn/0; + +module ViewCfgQueryInput implements ViewCfgQueryInputSig { + predicate selectedSourceFile = selectedSourceFileAlias/0; + + predicate selectedSourceLine = selectedSourceLineAlias/0; + + predicate selectedSourceColumn = selectedSourceColumnAlias/0; + + predicate cfgScopeSpan( + Callable callable, File file, int startLine, int startColumn, int endLine, int endColumn + ) { + file = callable.getFile() and + callable.getLocation().getStartLine() = startLine and + callable.getLocation().getStartColumn() = startColumn and + exists(Location loc | + loc.getEndLine() = endLine and + loc.getEndColumn() = endColumn and + loc = callable.getBody().getLocation() + ) + } +} + +import ViewCfgQuery diff --git a/java/ql/lib/semmle/code/java/ControlFlowGraph.qll b/java/ql/lib/semmle/code/java/ControlFlowGraph.qll index a31101888da3..c7a56f7b4159 100644 --- a/java/ql/lib/semmle/code/java/ControlFlowGraph.qll +++ b/java/ql/lib/semmle/code/java/ControlFlowGraph.qll @@ -1775,3 +1775,17 @@ class ConditionNode extends ControlFlow::Node { /** Gets the condition of this `ConditionNode`. */ ExprParent getCondition() { result = this.asExpr() or result = this.asStmt() } } + +private import codeql.controlflow.PrintGraph as PrintGraph + +private module PrintGraphInput implements PrintGraph::InputSig { + private import java as J + + class Callable = J::Callable; + + class ControlFlowNode = J::ControlFlowNode; + + ControlFlowNode getASuccessor(ControlFlowNode n, SuccessorType t) { result = n.getASuccessor(t) } +} + +import PrintGraph::PrintGraph From 571f21ba49d37a091ee48de92914017eb17b74a7 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Tue, 3 Feb 2026 15:28:47 +0000 Subject: [PATCH 289/433] C#: Emit diagnostic if private registries are configured --- .../DependabotProxy.cs | 21 ++++++++++++++++++- .../DependencyManager.cs | 2 +- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependabotProxy.cs b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependabotProxy.cs index be5f137548c4..e06970141fed 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependabotProxy.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependabotProxy.cs @@ -5,6 +5,7 @@ using Semmle.Util; using Semmle.Util.Logging; using Newtonsoft.Json; +using System.Linq; namespace Semmle.Extraction.CSharp.DependencyFetching { @@ -37,7 +38,8 @@ public record class RegistryConfig(string Type, string URL); /// internal X509Certificate2? Certificate { get; private set; } - internal static DependabotProxy? GetDependabotProxy(ILogger logger, TemporaryDirectory tempWorkingDirectory) + internal static DependabotProxy? GetDependabotProxy( + ILogger logger, IDiagnosticsWriter diagnosticsWriter, TemporaryDirectory tempWorkingDirectory) { // Setting HTTP(S)_PROXY and SSL_CERT_FILE have no effect on Windows or macOS, // but we would still end up using the Dependabot proxy to check for feed reachability. @@ -112,6 +114,23 @@ public record class RegistryConfig(string Type, string URL); } } + // Emit a diagnostic for the discovered private registries, so that it is easy + // for users to see that they were picked up. + if (result.RegistryURLs.Count > 0) + { + diagnosticsWriter.AddEntry(new DiagnosticMessage( + Language.CSharp, + "buildless/analysis-using-private-registries", + severity: DiagnosticMessage.TspSeverity.Note, + visibility: new DiagnosticMessage.TspVisibility(true, true, true), + name: "C# extraction used private package registries", + markdownMessage: string.Format( + "C# was extracted using the following private package registries:\n\n{0}\n", + string.Join("\n", result.RegistryURLs.Select(url => string.Format("- `{0}`", url))) + ) + )); + } + return result; } diff --git a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependencyManager.cs b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependencyManager.cs index ad69d0c85c37..bc010e318c35 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependencyManager.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/DependencyManager.cs @@ -106,7 +106,7 @@ void exitCallback(int ret, string msg, bool silent) return BuildScript.Success; }).Run(SystemBuildActions.Instance, startCallback, exitCallback); - dependabotProxy = DependabotProxy.GetDependabotProxy(logger, tempWorkingDirectory); + dependabotProxy = DependabotProxy.GetDependabotProxy(logger, diagnosticsWriter, tempWorkingDirectory); try { From 62fb38d8343e75cd86ea949fd4c09dff274f367f Mon Sep 17 00:00:00 2001 From: Taus Date: Tue, 3 Feb 2026 15:32:46 +0000 Subject: [PATCH 290/433] Python: Rename `otherArgs` to `implicitArgumentNode` Co-authored-by: yoff --- .../semmle/python/dataflow/new/internal/DataFlowPublic.qll | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll index 532f7b23e4cf..de26d988c068 100644 --- a/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll +++ b/python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPublic.qll @@ -369,7 +369,7 @@ Node getCallArgApproximation() { } /** Gets the extracted argument nodes that do not rely on `getCallArg`. */ -private Node otherArgs() { +private Node implicitArgumentNode() { // for potential summaries we allow all normal call arguments normalCallArg(_, result, _) or @@ -387,14 +387,14 @@ class ExtractedArgumentNode extends ArgumentNode { ExtractedArgumentNode() { this = getCallArgApproximation() or - this = otherArgs() + this = implicitArgumentNode() } final override predicate argumentOf(DataFlowCall call, ArgumentPosition pos) { this = call.getArgument(pos) and call instanceof ExtractedDataFlowCall and ( - this = otherArgs() + this = implicitArgumentNode() or this = getCallArgApproximation() and getCallArg(_, _, _, this, _) ) From 49735234045756951380e742da836af0df9ec483 Mon Sep 17 00:00:00 2001 From: Paolo Tranquilli Date: Wed, 4 Feb 2026 09:36:56 +0100 Subject: [PATCH 291/433] C#: Fix CSRF query to check antiforgery attributes on base classes Fixes https://github.com/github/codeql/discussions/21255 --- .../MissingAntiForgeryTokenValidation.ql | 4 +-- .../2026-02-04-csrf-inherited-attribute.md | 4 +++ .../MissingAntiForgeryTokenValidation.cs | 31 +++++++++++++++++++ ...MissingAntiForgeryTokenValidation.expected | 1 + .../MissingAntiForgeryTokenValidation.cs | 31 +++++++++++++++++++ ...MissingAntiForgeryTokenValidation.expected | 1 + 6 files changed, 70 insertions(+), 2 deletions(-) create mode 100644 csharp/ql/src/change-notes/2026-02-04-csrf-inherited-attribute.md diff --git a/csharp/ql/src/Security Features/CWE-352/MissingAntiForgeryTokenValidation.ql b/csharp/ql/src/Security Features/CWE-352/MissingAntiForgeryTokenValidation.ql index acdc4637221a..60a022d43d0f 100644 --- a/csharp/ql/src/Security Features/CWE-352/MissingAntiForgeryTokenValidation.ql +++ b/csharp/ql/src/Security Features/CWE-352/MissingAntiForgeryTokenValidation.ql @@ -54,12 +54,12 @@ predicate hasGlobalAntiForgeryFilter() { predicate isUnvalidatedPostMethod(Class c, Method m) { c.(Controller).getAPostActionMethod() = m and not m.getAnAttribute() instanceof ValidateAntiForgeryTokenAttribute and - not c.getAnAttribute() instanceof ValidateAntiForgeryTokenAttribute + not c.getABaseType*().getAnAttribute() instanceof ValidateAntiForgeryTokenAttribute or c.(AspNetCore::MicrosoftAspNetCoreMvcController).getAnActionMethod() = m and m.getAnAttribute() instanceof AspNetCore::MicrosoftAspNetCoreMvcHttpPostAttribute and not m.getAnAttribute() instanceof AspNetCore::ValidateAntiForgeryAttribute and - not c.getAnAttribute() instanceof AspNetCore::ValidateAntiForgeryAttribute + not c.getABaseType*().getAnAttribute() instanceof AspNetCore::ValidateAntiForgeryAttribute } Element getAValidatedElement() { diff --git a/csharp/ql/src/change-notes/2026-02-04-csrf-inherited-attribute.md b/csharp/ql/src/change-notes/2026-02-04-csrf-inherited-attribute.md new file mode 100644 index 000000000000..7c9875fcdfde --- /dev/null +++ b/csharp/ql/src/change-notes/2026-02-04-csrf-inherited-attribute.md @@ -0,0 +1,4 @@ +--- +category: fix +--- +* The `cs/web/missing-token-validation` ("Missing cross-site request forgery token validation") query now recognizes antiforgery attributes on base controller classes, fixing false positives when `[ValidateAntiForgeryToken]` or `[AutoValidateAntiforgeryToken]` is applied to a parent class. diff --git a/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.cs b/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.cs index 84d904f900d3..e9e5202b40ab 100644 --- a/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.cs +++ b/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.cs @@ -29,3 +29,34 @@ public void UtilityMethod() { } } + +// GOOD: Base class has AutoValidateAntiforgeryToken attribute +[AutoValidateAntiforgeryToken] +public abstract class BaseController : Controller +{ +} + +public class DerivedController : BaseController +{ + // GOOD: Inherits antiforgery validation from base class + [HttpPost] + public ActionResult InheritedValidation() + { + return View(); + } +} + +// BAD: Base class without antiforgery attribute +public abstract class UnprotectedBaseController : Controller +{ +} + +public class DerivedUnprotectedController : UnprotectedBaseController +{ + // BAD: No antiforgery validation on this or any base class + [HttpPost] + public ActionResult NoInheritedValidation() + { + return View(); + } +} diff --git a/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.expected b/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.expected index 859fd4be9200..7a4135e441d6 100644 --- a/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.expected +++ b/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.expected @@ -1 +1,2 @@ | MissingAntiForgeryTokenValidation.cs:7:25:7:29 | Login | Method 'Login' handles a POST request without performing CSRF token validation. | +| MissingAntiForgeryTokenValidation.cs:47:25:47:47 | NoInheritedValidation | Method 'NoInheritedValidation' handles a POST request without performing CSRF token validation. | diff --git a/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.cs b/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.cs index 69024e57a2e9..a86800e51529 100644 --- a/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.cs +++ b/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.cs @@ -29,3 +29,34 @@ public void UtilityMethod() { } } + +// GOOD: Base class has ValidateAntiForgeryToken attribute +[ValidateAntiForgeryToken] +public abstract class BaseController : Controller +{ +} + +public class DerivedController : BaseController +{ + // GOOD: Inherits antiforgery validation from base class + [HttpPost] + public ActionResult InheritedValidation() + { + return View(); + } +} + +// BAD: Base class without antiforgery attribute +public abstract class UnprotectedBaseController : Controller +{ +} + +public class DerivedUnprotectedController : UnprotectedBaseController +{ + // BAD: No antiforgery validation on this or any base class + [HttpPost] + public ActionResult NoInheritedValidation() + { + return View(); + } +} diff --git a/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.expected b/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.expected index 859fd4be9200..7a4135e441d6 100644 --- a/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.expected +++ b/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.expected @@ -1 +1,2 @@ | MissingAntiForgeryTokenValidation.cs:7:25:7:29 | Login | Method 'Login' handles a POST request without performing CSRF token validation. | +| MissingAntiForgeryTokenValidation.cs:47:25:47:47 | NoInheritedValidation | Method 'NoInheritedValidation' handles a POST request without performing CSRF token validation. | From 5e6e64b2b7625269e03f92415446b30407d93ea7 Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Wed, 4 Feb 2026 10:50:49 +0100 Subject: [PATCH 292/433] Java: Rename UnaryExpr.getExpr to getOperand. --- java/ql/consistency-queries/UnaryExpr.ql | 2 +- java/ql/lib/semmle/code/java/Constants.qll | 8 +++--- .../lib/semmle/code/java/ControlFlowGraph.qll | 6 ++--- java/ql/lib/semmle/code/java/Expr.qll | 27 ++++++++++++------- .../lib/semmle/code/java/PrettyPrintAst.qll | 2 +- java/ql/lib/semmle/code/java/Statement.qll | 2 +- .../semmle/code/java/arithmetic/Overflow.qll | 6 ++--- .../code/java/comparison/Comparison.qll | 2 +- .../semmle/code/java/controlflow/Guards.qll | 4 +-- .../semmle/code/java/dataflow/Nullness.qll | 2 +- .../code/java/dataflow/RangeAnalysis.qll | 12 ++++----- .../semmle/code/java/dataflow/TypeFlow.qll | 2 +- .../code/java/dataflow/internal/BaseSSA.qll | 2 +- .../java/dataflow/internal/DataFlowUtil.qll | 2 +- .../code/java/dataflow/internal/SsaImpl.qll | 2 +- .../rangeanalysis/SignAnalysisSpecific.qll | 26 +++++++++--------- .../code/java/frameworks/android/Intent.qll | 2 +- .../java/security/InsecureRandomnessQuery.qll | 2 +- .../Declarations/NonFinalImmutableField.ql | 2 +- .../src/Security/CWE/CWE-835/InfiniteLoop.ql | 2 +- .../Boolean Logic/SimplifyBoolExpr.ql | 4 +-- .../Dead Code/DeadStoreOfLocal.ql | 2 +- .../Dead Code/NonAssignedFields.ql | 2 +- .../library-tests/exprs/unaryOp.ql | 2 +- .../library-tests/exprs/unaryOp.ql | 2 +- .../locations/NegativeLiteralLocation.ql | 2 +- 26 files changed, 67 insertions(+), 62 deletions(-) diff --git a/java/ql/consistency-queries/UnaryExpr.ql b/java/ql/consistency-queries/UnaryExpr.ql index 29a895eca6a2..f71d51f19d18 100644 --- a/java/ql/consistency-queries/UnaryExpr.ql +++ b/java/ql/consistency-queries/UnaryExpr.ql @@ -2,7 +2,7 @@ import java from UnaryExpr ue where - not exists(ue.getExpr()) + not exists(ue.getOperand()) or exists(Expr e, int i | e.isNthChildOf(ue, i) and i != 0) select ue diff --git a/java/ql/lib/semmle/code/java/Constants.qll b/java/ql/lib/semmle/code/java/Constants.qll index 0cad92b7fc6d..b515eaefb286 100644 --- a/java/ql/lib/semmle/code/java/Constants.qll +++ b/java/ql/lib/semmle/code/java/Constants.qll @@ -22,7 +22,7 @@ module CalculateConstants boolean calculateBooleanValue(Expr e) { // No casts relevant to booleans. // `!` is the only unary operator that evaluates to a boolean. - result = getBoolVal(e.(LogNotExpr).getExpr()).booleanNot() + result = getBoolVal(e.(LogNotExpr).getOperand()).booleanNot() or // Handle binary expressions that have integer operands and a boolean result. exists(BinaryExpr b, int left, int right | @@ -115,11 +115,11 @@ module CalculateConstants else result = val ) or - result = getIntVal(e.(PlusExpr).getExpr()) + result = getIntVal(e.(PlusExpr).getOperand()) or - result = -getIntVal(e.(MinusExpr).getExpr()) + result = -getIntVal(e.(MinusExpr).getOperand()) or - result = getIntVal(e.(BitNotExpr).getExpr()).bitNot() + result = getIntVal(e.(BitNotExpr).getOperand()).bitNot() or // No `int` value for `LogNotExpr`. exists(BinaryExpr b, int v1, int v2 | diff --git a/java/ql/lib/semmle/code/java/ControlFlowGraph.qll b/java/ql/lib/semmle/code/java/ControlFlowGraph.qll index a31101888da3..2987a8ae2b1e 100644 --- a/java/ql/lib/semmle/code/java/ControlFlowGraph.qll +++ b/java/ql/lib/semmle/code/java/ControlFlowGraph.qll @@ -827,7 +827,7 @@ private module ControlFlowGraphImpl { index = 1 and result = e.getRightOperand() ) or - index = 0 and result = this.(UnaryExpr).getExpr() + index = 0 and result = this.(UnaryExpr).getOperand() or index = 0 and result = this.(CastingExpr).getExpr() or @@ -1044,7 +1044,7 @@ private module ControlFlowGraphImpl { or // The last node of a `LogNotExpr` is in its sub-expression with an inverted boolean completion // (or a `normalCompletion`). - exists(Completion subcompletion | last(n.(LogNotExpr).getExpr(), last, subcompletion) | + exists(Completion subcompletion | last(n.(LogNotExpr).getOperand(), last, subcompletion) | subcompletion = NormalCompletion() and completion = NormalCompletion() and not inBooleanContext(n) @@ -1356,7 +1356,7 @@ private module ControlFlowGraphImpl { ( result = first(n.asExpr().(AndLogicalExpr).getLeftOperand()) or result = first(n.asExpr().(OrLogicalExpr).getLeftOperand()) or - result = first(n.asExpr().(LogNotExpr).getExpr()) or + result = first(n.asExpr().(LogNotExpr).getOperand()) or result = first(n.asExpr().(ConditionalExpr).getCondition()) ) or diff --git a/java/ql/lib/semmle/code/java/Expr.qll b/java/ql/lib/semmle/code/java/Expr.qll index 4b03375c69ee..9e958b36471a 100644 --- a/java/ql/lib/semmle/code/java/Expr.qll +++ b/java/ql/lib/semmle/code/java/Expr.qll @@ -113,7 +113,7 @@ class Expr extends ExprParent, @expr { if this instanceof CastingExpr or this instanceof NotNullExpr then result = this.(CastingExpr).getExpr().getUnderlyingExpr() or - result = this.(NotNullExpr).getExpr().getUnderlyingExpr() + result = this.(NotNullExpr).getOperand().getUnderlyingExpr() else result = this } } @@ -144,13 +144,13 @@ class CompileTimeConstantExpr extends Expr { this.(CastingExpr).getExpr().isCompileTimeConstant() or // The unary operators `+`, `-`, `~`, and `!` (but not `++` or `--`). - this.(PlusExpr).getExpr().isCompileTimeConstant() + this.(PlusExpr).getOperand().isCompileTimeConstant() or - this.(MinusExpr).getExpr().isCompileTimeConstant() + this.(MinusExpr).getOperand().isCompileTimeConstant() or - this.(BitNotExpr).getExpr().isCompileTimeConstant() + this.(BitNotExpr).getOperand().isCompileTimeConstant() or - this.(LogNotExpr).getExpr().isCompileTimeConstant() + this.(LogNotExpr).getOperand().isCompileTimeConstant() or // The multiplicative operators `*`, `/`, and `%`, // the additive operators `+` and `-`, @@ -943,7 +943,7 @@ class LogicExpr extends Expr { /** Gets an operand of this logical expression. */ Expr getAnOperand() { this.(BinaryExpr).getAnOperand() = result or - this.(UnaryExpr).getExpr() = result + this.(UnaryExpr).getOperand() = result } } @@ -1039,8 +1039,15 @@ class ReferenceEqualityTest extends EqualityTest { /** A common super-class that represents unary operator expressions. */ class UnaryExpr extends Expr, @unaryexpr { + /** + * DEPRECATED: Use getOperand() instead. + * + * Gets the operand expression. + */ + deprecated Expr getExpr() { result.getParent() = this } + /** Gets the operand expression. */ - Expr getExpr() { result.getParent() = this } + Expr getOperand() { result.getParent() = this } } /** @@ -1773,14 +1780,14 @@ class VariableUpdate extends Expr { VariableUpdate() { this.(Assignment).getDest() instanceof VarAccess or this instanceof LocalVariableDeclExpr or - this.(UnaryAssignExpr).getExpr() instanceof VarAccess + this.(UnaryAssignExpr).getOperand() instanceof VarAccess } /** Gets the destination of this variable update. */ Variable getDestVar() { result.getAnAccess() = this.(Assignment).getDest() or result = this.(LocalVariableDeclExpr).getVariable() or - result.getAnAccess() = this.(UnaryAssignExpr).getExpr() + result.getAnAccess() = this.(UnaryAssignExpr).getOperand() } } @@ -1970,7 +1977,7 @@ class VarAccess extends Expr, @varaccess { */ predicate isVarWrite() { exists(Assignment a | a.getDest() = this) or - exists(UnaryAssignExpr e | e.getExpr() = this) + exists(UnaryAssignExpr e | e.getOperand() = this) } /** diff --git a/java/ql/lib/semmle/code/java/PrettyPrintAst.qll b/java/ql/lib/semmle/code/java/PrettyPrintAst.qll index 3d907a5a0991..4538b8172668 100644 --- a/java/ql/lib/semmle/code/java/PrettyPrintAst.qll +++ b/java/ql/lib/semmle/code/java/PrettyPrintAst.qll @@ -257,7 +257,7 @@ private class PpUnaryExpr extends PpAst, UnaryExpr { i = 2 and result = "--" and this instanceof PostDecExpr } - override PpAst getChild(int i) { i = 1 and result = this.getExpr() } + override PpAst getChild(int i) { i = 1 and result = this.getOperand() } } private class PpCastExpr extends PpAst, CastExpr { diff --git a/java/ql/lib/semmle/code/java/Statement.qll b/java/ql/lib/semmle/code/java/Statement.qll index 2aea8b006ae1..8db9d5e6628a 100644 --- a/java/ql/lib/semmle/code/java/Statement.qll +++ b/java/ql/lib/semmle/code/java/Statement.qll @@ -184,7 +184,7 @@ class ForStmt extends ConditionalStmt, @forstmt { Variable getAnIterationVariable() { // Check that the variable is assigned to, incremented or decremented in the update expression, and... exists(Expr update | update = this.getAnUpdate().getAChildExpr*() | - update.(UnaryAssignExpr).getExpr() = result.getAnAccess() or + update.(UnaryAssignExpr).getOperand() = result.getAnAccess() or update = result.getAnAssignedValue() ) and // ...that it is checked or used in the condition. diff --git a/java/ql/lib/semmle/code/java/arithmetic/Overflow.qll b/java/ql/lib/semmle/code/java/arithmetic/Overflow.qll index 471f271eb866..e82192b0fbaf 100644 --- a/java/ql/lib/semmle/code/java/arithmetic/Overflow.qll +++ b/java/ql/lib/semmle/code/java/arithmetic/Overflow.qll @@ -93,7 +93,7 @@ class ArithExpr extends Expr { ) and forall(Expr e | e = this.(BinaryExpr).getAnOperand() or - e = this.(UnaryAssignExpr).getExpr() or + e = this.(UnaryAssignExpr).getOperand() or e = this.(AssignOp).getSource() | e.getType() instanceof NumType @@ -114,7 +114,7 @@ class ArithExpr extends Expr { */ Expr getLeftOperand() { result = this.(BinaryExpr).getLeftOperand() or - result = this.(UnaryAssignExpr).getExpr() or + result = this.(UnaryAssignExpr).getOperand() or result = this.(AssignOp).getDest() } @@ -128,7 +128,7 @@ class ArithExpr extends Expr { /** Gets an operand of this arithmetic expression. */ Expr getAnOperand() { result = this.(BinaryExpr).getAnOperand() or - result = this.(UnaryAssignExpr).getExpr() or + result = this.(UnaryAssignExpr).getOperand() or result = this.(AssignOp).getSource() } } diff --git a/java/ql/lib/semmle/code/java/comparison/Comparison.qll b/java/ql/lib/semmle/code/java/comparison/Comparison.qll index 7aea0f6fb258..4a2601678e2f 100644 --- a/java/ql/lib/semmle/code/java/comparison/Comparison.qll +++ b/java/ql/lib/semmle/code/java/comparison/Comparison.qll @@ -9,7 +9,7 @@ import java * Used as basis for the transitive closure in `exprImplies`. */ private predicate exprImpliesStep(Expr e1, boolean b1, Expr e2, boolean b2) { - e1.(LogNotExpr).getExpr() = e2 and + e1.(LogNotExpr).getOperand() = e2 and b2 = b1.booleanNot() and (b1 = true or b1 = false) or diff --git a/java/ql/lib/semmle/code/java/controlflow/Guards.qll b/java/ql/lib/semmle/code/java/controlflow/Guards.qll index 0e1db1600949..954658497011 100644 --- a/java/ql/lib/semmle/code/java/controlflow/Guards.qll +++ b/java/ql/lib/semmle/code/java/controlflow/Guards.qll @@ -279,9 +279,7 @@ private module GuardsInput implements SharedGuards::InputSig { } class NegateExpr extends UnaryExpr instanceof MinusExpr { - override Expr getOperand() { result = super.getExpr() } + override Expr getOperand() { result = MinusExpr.super.getOperand() } } class PreIncExpr extends UnaryExpr instanceof J::PreIncExpr { - override Expr getOperand() { result = super.getExpr() } + override Expr getOperand() { result = J::PreIncExpr.super.getOperand() } } class PreDecExpr extends UnaryExpr instanceof J::PreDecExpr { - override Expr getOperand() { result = super.getExpr() } + override Expr getOperand() { result = J::PreDecExpr.super.getOperand() } } class PostIncExpr extends UnaryExpr instanceof J::PostIncExpr { - override Expr getOperand() { result = super.getExpr() } + override Expr getOperand() { result = J::PostIncExpr.super.getOperand() } } class PostDecExpr extends UnaryExpr instanceof J::PostDecExpr { - override Expr getOperand() { result = super.getExpr() } + override Expr getOperand() { result = J::PostDecExpr.super.getOperand() } } class CopyValueExpr extends UnaryExpr { @@ -200,7 +200,7 @@ module Sem implements Semantic { } override Expr getOperand() { - result = this.(J::PlusExpr).getExpr() or + result = this.(J::PlusExpr).getOperand() or result = this.(J::AssignExpr).getSource() or result = this.(J::LocalVariableDeclExpr).getInit() } diff --git a/java/ql/lib/semmle/code/java/dataflow/TypeFlow.qll b/java/ql/lib/semmle/code/java/dataflow/TypeFlow.qll index 361b4feb54a8..10e5c754c617 100644 --- a/java/ql/lib/semmle/code/java/dataflow/TypeFlow.qll +++ b/java/ql/lib/semmle/code/java/dataflow/TypeFlow.qll @@ -137,7 +137,7 @@ module FlowStepsInput implements UniversalFlow::UniversalFlowInput { or n2.asSsa().(Base::SsaCapturedDefinition).captures(n1.asSsa()) or - n2.asExpr().(NotNullExpr).getExpr() = n1.asExpr() + n2.asExpr().(NotNullExpr).getOperand() = n1.asExpr() } /** diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/BaseSSA.qll b/java/ql/lib/semmle/code/java/dataflow/internal/BaseSSA.qll index e373340d7d7c..5e3a8550e3cc 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/BaseSSA.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/BaseSSA.qll @@ -87,7 +87,7 @@ private module BaseSsaImpl { result = TLocalVar(v.getCallable(), v) ) or - result.getAnAccess() = upd.(UnaryAssignExpr).getExpr() + result.getAnAccess() = upd.(UnaryAssignExpr).getOperand() } /** Holds if `n` updates the local variable `v`. */ diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowUtil.qll b/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowUtil.qll index e2e80c293ef0..9c2bb13a09f5 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowUtil.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowUtil.qll @@ -201,7 +201,7 @@ predicate simpleAstFlowStep(Expr e1, Expr e2) { or e2 = any(StmtExpr stmtExpr | e1 = stmtExpr.getResultExpr()) or - e2 = any(NotNullExpr nne | e1 = nne.getExpr()) + e2 = any(NotNullExpr nne | e1 = nne.getOperand()) or e2.(WhenExpr).getBranch(_).getAResult() = e1 or diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/SsaImpl.qll b/java/ql/lib/semmle/code/java/dataflow/internal/SsaImpl.qll index bafb16d6ab53..409cf5863630 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/SsaImpl.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/SsaImpl.qll @@ -302,7 +302,7 @@ private module Cached { result = TLocalVar(v.getCallable(), v) ) or - result.getAnAccess() = upd.(UnaryAssignExpr).getExpr() + result.getAnAccess() = upd.(UnaryAssignExpr).getOperand() } /* diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/rangeanalysis/SignAnalysisSpecific.qll b/java/ql/lib/semmle/code/java/dataflow/internal/rangeanalysis/SignAnalysisSpecific.qll index 4a4181604770..e4525ed36ea9 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/rangeanalysis/SignAnalysisSpecific.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/rangeanalysis/SignAnalysisSpecific.qll @@ -69,10 +69,10 @@ module Private { /** Returns the operand of this expression. */ Expr getOperand() { - result = this.(J::PreIncExpr).getExpr() or - result = this.(J::PreDecExpr).getExpr() or - result = this.(J::MinusExpr).getExpr() or - result = this.(J::BitNotExpr).getExpr() + result = this.(J::PreIncExpr).getOperand() or + result = this.(J::PreDecExpr).getOperand() or + result = this.(J::MinusExpr).getOperand() or + result = this.(J::BitNotExpr).getOperand() } /** Returns the operation representing this expression. */ @@ -258,12 +258,12 @@ private module Impl { /** Returns the operand of the operation if `e` is a decrement. */ Expr getDecrementOperand(Element e) { - result = e.(PostDecExpr).getExpr() or result = e.(PreDecExpr).getExpr() + result = e.(PostDecExpr).getOperand() or result = e.(PreDecExpr).getOperand() } /** Returns the operand of the operation if `e` is an increment. */ Expr getIncrementOperand(Element e) { - result = e.(PostIncExpr).getExpr() or result = e.(PreIncExpr).getExpr() + result = e.(PostIncExpr).getOperand() or result = e.(PreIncExpr).getOperand() } /** Gets the variable underlying the implicit SSA variable `v`. */ @@ -287,14 +287,14 @@ private module Impl { /** Holds if `f` is accessed in an increment operation. */ predicate fieldIncrementOperationOperand(Field f) { - any(PostIncExpr inc).getExpr() = f.getAnAccess() or - any(PreIncExpr inc).getExpr() = f.getAnAccess() + any(PostIncExpr inc).getOperand() = f.getAnAccess() or + any(PreIncExpr inc).getOperand() = f.getAnAccess() } /** Holds if `f` is accessed in a decrement operation. */ predicate fieldDecrementOperationOperand(Field f) { - any(PostDecExpr dec).getExpr() = f.getAnAccess() or - any(PreDecExpr dec).getExpr() = f.getAnAccess() + any(PostDecExpr dec).getOperand() = f.getAnAccess() or + any(PreDecExpr dec).getOperand() = f.getAnAccess() } /** Returns possible signs of `f` based on the declaration. */ @@ -316,9 +316,9 @@ private module Impl { /** Returns a sub expression of `e` for expression types where the sign depends on the child. */ Expr getASubExprWithSameSign(Expr e) { result = e.(AssignExpr).getSource() or - result = e.(PlusExpr).getExpr() or - result = e.(PostIncExpr).getExpr() or - result = e.(PostDecExpr).getExpr() or + result = e.(PlusExpr).getOperand() or + result = e.(PostIncExpr).getOperand() or + result = e.(PostDecExpr).getOperand() or result = e.(ChooseExpr).getAResultExpr() or result = e.(CastingExpr).getExpr() } diff --git a/java/ql/lib/semmle/code/java/frameworks/android/Intent.qll b/java/ql/lib/semmle/code/java/frameworks/android/Intent.qll index 3df890c95f41..b11e4e5d4ef8 100644 --- a/java/ql/lib/semmle/code/java/frameworks/android/Intent.qll +++ b/java/ql/lib/semmle/code/java/frameworks/android/Intent.qll @@ -279,7 +279,7 @@ private predicate reaches(Expr src, Argument arg) { or exists(StmtExpr e | e.getResultExpr() = src | reaches(e, arg)) or - exists(NotNullExpr e | e.getExpr() = src | reaches(e, arg)) + exists(NotNullExpr e | e.getOperand() = src | reaches(e, arg)) or exists(WhenExpr e | e.getBranch(_).getAResult() = src | reaches(e, arg)) } diff --git a/java/ql/lib/semmle/code/java/security/InsecureRandomnessQuery.qll b/java/ql/lib/semmle/code/java/security/InsecureRandomnessQuery.qll index 77da25d35866..7474c977fe68 100644 --- a/java/ql/lib/semmle/code/java/security/InsecureRandomnessQuery.qll +++ b/java/ql/lib/semmle/code/java/security/InsecureRandomnessQuery.qll @@ -75,7 +75,7 @@ module InsecureRandomnessConfig implements DataFlow::ConfigSig { predicate isAdditionalFlowStep(DataFlow::Node n1, DataFlow::Node n2) { n1.asExpr() = n2.asExpr().(BinaryExpr).getAnOperand() or - n1.asExpr() = n2.asExpr().(UnaryExpr).getExpr() + n1.asExpr() = n2.asExpr().(UnaryExpr).getOperand() or exists(MethodCall mc, string methodName | mc.getMethod().hasQualifiedName("org.owasp.esapi", "Encoder", methodName) and diff --git a/java/ql/src/Advisory/Declarations/NonFinalImmutableField.ql b/java/ql/src/Advisory/Declarations/NonFinalImmutableField.ql index 1ca836ab2317..a94d54a92048 100644 --- a/java/ql/src/Advisory/Declarations/NonFinalImmutableField.ql +++ b/java/ql/src/Advisory/Declarations/NonFinalImmutableField.ql @@ -32,7 +32,7 @@ class AnyAssignment extends Expr { /** The expression modified by this assignment. */ Expr getDest() { this.(Assignment).getDest() = result or - this.(UnaryAssignExpr).getExpr() = result + this.(UnaryAssignExpr).getOperand() = result } } diff --git a/java/ql/src/Security/CWE/CWE-835/InfiniteLoop.ql b/java/ql/src/Security/CWE/CWE-835/InfiniteLoop.ql index a04cfd6ac43f..ef167189ebfe 100644 --- a/java/ql/src/Security/CWE/CWE-835/InfiniteLoop.ql +++ b/java/ql/src/Security/CWE/CWE-835/InfiniteLoop.ql @@ -49,7 +49,7 @@ predicate subCondition(Expr cond, Expr subcond, boolean negated) { or subCondition(cond.(OrLogicalExpr).getAnOperand(), subcond, negated) or - subCondition(cond.(LogNotExpr).getExpr(), subcond, negated.booleanNot()) + subCondition(cond.(LogNotExpr).getOperand(), subcond, negated.booleanNot()) } from diff --git a/java/ql/src/Violations of Best Practice/Boolean Logic/SimplifyBoolExpr.ql b/java/ql/src/Violations of Best Practice/Boolean Logic/SimplifyBoolExpr.ql index 9b87a3589056..eabd4fe1e1f7 100644 --- a/java/ql/src/Violations of Best Practice/Boolean Logic/SimplifyBoolExpr.ql +++ b/java/ql/src/Violations of Best Practice/Boolean Logic/SimplifyBoolExpr.ql @@ -98,9 +98,9 @@ where or conditionalWithBool(e, pattern, rewrite) or - e.(LogNotExpr).getExpr().(ComparisonOrEquality).negate(pattern, rewrite) + e.(LogNotExpr).getOperand().(ComparisonOrEquality).negate(pattern, rewrite) or - e.(LogNotExpr).getExpr() instanceof LogNotExpr and + e.(LogNotExpr).getOperand() instanceof LogNotExpr and pattern = "!!A" and rewrite = "A" ) diff --git a/java/ql/src/Violations of Best Practice/Dead Code/DeadStoreOfLocal.ql b/java/ql/src/Violations of Best Practice/Dead Code/DeadStoreOfLocal.ql index 3f96f43bc249..0f45b9cae538 100644 --- a/java/ql/src/Violations of Best Practice/Dead Code/DeadStoreOfLocal.ql +++ b/java/ql/src/Violations of Best Practice/Dead Code/DeadStoreOfLocal.ql @@ -15,7 +15,7 @@ import java import DeadLocals -predicate minusOne(MinusExpr e) { e.getExpr().(Literal).getValue() = "1" } +predicate minusOne(MinusExpr e) { e.getOperand().(Literal).getValue() = "1" } predicate flowStep(Expr decl, Expr init) { decl = init diff --git a/java/ql/src/Violations of Best Practice/Dead Code/NonAssignedFields.ql b/java/ql/src/Violations of Best Practice/Dead Code/NonAssignedFields.ql index 28f06c4edfc0..fd2cac889014 100644 --- a/java/ql/src/Violations of Best Practice/Dead Code/NonAssignedFields.ql +++ b/java/ql/src/Violations of Best Practice/Dead Code/NonAssignedFields.ql @@ -66,7 +66,7 @@ where fr.getField() = f and not f.getDeclaringType() instanceof EnumType and forall(Assignment ae | ae.getDest() = f.getAnAccess() | ae.getSource() instanceof NullLiteral) and - not exists(UnaryAssignExpr ua | ua.getExpr() = f.getAnAccess()) and + not exists(UnaryAssignExpr ua | ua.getOperand() = f.getAnAccess()) and not f.isFinal() and // Exclude fields that may be accessed reflectively. not reflectivelyWritten(f) and diff --git a/java/ql/test-kotlin1/library-tests/exprs/unaryOp.ql b/java/ql/test-kotlin1/library-tests/exprs/unaryOp.ql index 9e7359e1e075..bce290e4afc8 100644 --- a/java/ql/test-kotlin1/library-tests/exprs/unaryOp.ql +++ b/java/ql/test-kotlin1/library-tests/exprs/unaryOp.ql @@ -29,7 +29,7 @@ class NoMaybeElement extends MaybeElement { } MaybeElement op(UnaryExpr e) { - if exists(e.getExpr()) then result = TElement(e.getExpr()) else result = TNoElement() + if exists(e.getOperand()) then result = TElement(e.getOperand()) else result = TNoElement() } from Expr e diff --git a/java/ql/test-kotlin2/library-tests/exprs/unaryOp.ql b/java/ql/test-kotlin2/library-tests/exprs/unaryOp.ql index 9e7359e1e075..bce290e4afc8 100644 --- a/java/ql/test-kotlin2/library-tests/exprs/unaryOp.ql +++ b/java/ql/test-kotlin2/library-tests/exprs/unaryOp.ql @@ -29,7 +29,7 @@ class NoMaybeElement extends MaybeElement { } MaybeElement op(UnaryExpr e) { - if exists(e.getExpr()) then result = TElement(e.getExpr()) else result = TNoElement() + if exists(e.getOperand()) then result = TElement(e.getOperand()) else result = TNoElement() } from Expr e diff --git a/java/ql/test/library-tests/locations/NegativeLiteralLocation.ql b/java/ql/test/library-tests/locations/NegativeLiteralLocation.ql index c91c02639945..a5e9054cd756 100644 --- a/java/ql/test/library-tests/locations/NegativeLiteralLocation.ql +++ b/java/ql/test/library-tests/locations/NegativeLiteralLocation.ql @@ -1,5 +1,5 @@ import default from MinusExpr me, Literal l -where l = me.getExpr() +where l = me.getOperand() select me, l From 3f08ff88a47386de983eb5e165c7b537efc5b00b Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Wed, 4 Feb 2026 10:52:44 +0000 Subject: [PATCH 293/433] Pretty print models in test Otherwise the tests breaks when unrelated changes are made because the model numbers change --- .../CWE-1427-PromptInjection/PromptInjection.expected | 7 +++++-- .../CWE-1427-PromptInjection/PromptInjection.qlref | 4 +++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.expected b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.expected index d60b63c701e7..1a899e7c82fe 100644 --- a/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.expected +++ b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.expected @@ -20,7 +20,7 @@ edges | agent_instructions.py:2:26:2:32 | ControlFlowNode for ImportMember | agent_instructions.py:2:26:2:32 | ControlFlowNode for request | provenance | | | agent_instructions.py:2:26:2:32 | ControlFlowNode for request | agent_instructions.py:7:13:7:19 | ControlFlowNode for request | provenance | | | agent_instructions.py:2:26:2:32 | ControlFlowNode for request | agent_instructions.py:17:13:17:19 | ControlFlowNode for request | provenance | | -| agent_instructions.py:7:5:7:9 | ControlFlowNode for input | agent_instructions.py:9:50:9:89 | ControlFlowNode for BinaryExpr | provenance | Sink:MaD:94 | +| agent_instructions.py:7:5:7:9 | ControlFlowNode for input | agent_instructions.py:9:50:9:89 | ControlFlowNode for BinaryExpr | provenance | Sink:MaD:2 | | agent_instructions.py:7:13:7:19 | ControlFlowNode for request | agent_instructions.py:7:13:7:24 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | agent_instructions.py:7:13:7:24 | ControlFlowNode for Attribute | agent_instructions.py:7:13:7:37 | ControlFlowNode for Attribute() | provenance | dict.get | | agent_instructions.py:7:13:7:37 | ControlFlowNode for Attribute() | agent_instructions.py:7:5:7:9 | ControlFlowNode for input | provenance | | @@ -38,7 +38,7 @@ edges | openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:41:22:41:46 | ControlFlowNode for BinaryExpr | provenance | | | openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:63:28:63:51 | ControlFlowNode for BinaryExpr | provenance | | | openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:80:28:80:51 | ControlFlowNode for BinaryExpr | provenance | | -| openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:92:22:92:46 | ControlFlowNode for BinaryExpr | provenance | Sink:MaD:58614 | +| openai_test.py:12:5:12:11 | ControlFlowNode for persona | openai_test.py:92:22:92:46 | ControlFlowNode for BinaryExpr | provenance | Sink:MaD:1 | | openai_test.py:12:15:12:21 | ControlFlowNode for request | openai_test.py:12:15:12:26 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | openai_test.py:12:15:12:21 | ControlFlowNode for request | openai_test.py:13:13:13:24 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | openai_test.py:12:15:12:26 | ControlFlowNode for Attribute | openai_test.py:12:15:12:41 | ControlFlowNode for Attribute() | provenance | dict.get | @@ -53,6 +53,9 @@ edges | openai_test.py:13:13:13:19 | ControlFlowNode for request | openai_test.py:13:13:13:24 | ControlFlowNode for Attribute | provenance | AdditionalTaintStep | | openai_test.py:13:13:13:24 | ControlFlowNode for Attribute | openai_test.py:13:13:13:37 | ControlFlowNode for Attribute() | provenance | dict.get | | openai_test.py:13:13:13:37 | ControlFlowNode for Attribute() | openai_test.py:13:5:13:9 | ControlFlowNode for query | provenance | | +models +| 1 | Sink: OpenAI; Member[beta].Member[assistants].Member[create].Argument[instructions:]; prompt-injection | +| 2 | Sink: agents; Member[Agent].Argument[instructions:]; prompt-injection | nodes | agent_instructions.py:2:26:2:32 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | | agent_instructions.py:2:26:2:32 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | diff --git a/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.qlref b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.qlref index 08466562ffe7..bd9514c306b5 100644 --- a/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.qlref +++ b/python/ql/test/experimental/query-tests/Security/CWE-1427-PromptInjection/PromptInjection.qlref @@ -1,2 +1,4 @@ query: experimental/Security/CWE-1427/PromptInjection.ql -postprocess: utils/test/InlineExpectationsTestQuery.ql \ No newline at end of file +postprocess: + - utils/test/PrettyPrintModels.ql + - utils/test/InlineExpectationsTestQuery.ql From dca10f874054fdee48c739c2021c1f07f51ecd74 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 12:51:30 +0100 Subject: [PATCH 294/433] C#: Add extended_type to the DB scheme. --- .../Semmle.Extraction.CSharp/Kinds/TypeKind.cs | 1 + csharp/ql/lib/semmlecode.csharp.dbscheme | 11 ++++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Kinds/TypeKind.cs b/csharp/extractor/Semmle.Extraction.CSharp/Kinds/TypeKind.cs index a35f25c7596c..9088a11da61f 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Kinds/TypeKind.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Kinds/TypeKind.cs @@ -38,5 +38,6 @@ public enum TypeKind TUPLE = 32, FUNCTION_POINTER = 33, INLINE_ARRAY = 34, + EXTENSION = 35 } } diff --git a/csharp/ql/lib/semmlecode.csharp.dbscheme b/csharp/ql/lib/semmlecode.csharp.dbscheme index 68b5aec54e50..a39a96d1f33b 100644 --- a/csharp/ql/lib/semmlecode.csharp.dbscheme +++ b/csharp/ql/lib/semmlecode.csharp.dbscheme @@ -222,7 +222,7 @@ overlayChangedFiles( | @using_directive | @type_parameter_constraints | @externalDataElement | @xmllocatable | @asp_element | @namespace | @preprocessor_directive; -@declaration = @callable | @generic | @assignable | @namespace; +@declaration = @callable | @generic | @assignable | @namespace | @extension_type; @named_element = @namespace | @declaration; @@ -492,6 +492,7 @@ case @type.kind of | 32 = @tuple_type | 33 = @function_pointer_type | 34 = @inline_array_type +| 35 = @extension_type ; @simple_type = @bool_type | @char_type | @integral_type | @floating_point_type | @decimal_type; @@ -502,7 +503,7 @@ case @type.kind of @value_type = @simple_type | @enum_type | @struct_type | @nullable_type | @int_ptr_type | @uint_ptr_type | @tuple_type | @void_type | @inline_array_type; @ref_type = @class_type | @interface_type | @array_type | @delegate_type | @null_type - | @dynamic_type; + | @dynamic_type | @extension_type; @value_or_ref_type = @value_type | @ref_type; typerefs( @@ -541,6 +542,10 @@ function_pointer_return_type( unique int function_pointer_id: @function_pointer_type ref, int return_type_id: @type_or_ref ref); +extension_receiver_type( + unique int extension: @extension_type ref, + int receiver_type_id: @type_or_ref ref); + extend( int sub: @type ref, int super: @type_or_ref ref); @@ -903,7 +908,7 @@ localvar_location( unique int id: @local_variable ref, int loc: @location ref); -@parameterizable = @callable | @delegate_type | @indexer | @function_pointer_type; +@parameterizable = @callable | @delegate_type | @indexer | @function_pointer_type | @extension_type; #keyset[name, parent_id] #keyset[index, parent_id] From c68cd58f705fd32de6fa1e998d6b485daedf50aa Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 13:19:29 +0100 Subject: [PATCH 295/433] C#: Add parameter marker interface, allow a type to a parent for parameter and make it possible to specify a parameter position offset. --- .../Entities/IParameter.cs | 9 ++++++ .../Entities/Parameter.cs | 28 +++++++++++++------ .../Semmle.Extraction.CSharp/Trap/Tuples.cs | 4 +-- 3 files changed, 31 insertions(+), 10 deletions(-) create mode 100644 csharp/extractor/Semmle.Extraction.CSharp/Entities/IParameter.cs diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/IParameter.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/IParameter.cs new file mode 100644 index 000000000000..d3f3a04c08fc --- /dev/null +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/IParameter.cs @@ -0,0 +1,9 @@ +namespace Semmle.Extraction.CSharp.Entities +{ + /// + /// Marker interface for parameter entities. + /// + internal interface IParameter : IEntity + { + } +} diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Parameter.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Parameter.cs index 49ef9a4a6e9a..9cca0683f004 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Parameter.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Parameter.cs @@ -7,16 +7,23 @@ namespace Semmle.Extraction.CSharp.Entities { - internal class Parameter : CachedSymbol, IExpressionParentEntity + internal class Parameter : CachedSymbol, IExpressionParentEntity, IParameter { protected IEntity? Parent { get; set; } protected Parameter Original { get; } + private int PositionOffset { get; set; } - protected Parameter(Context cx, IParameterSymbol init, IEntity? parent, Parameter? original) + private Parameter(Context cx, IParameterSymbol init, IEntity? parent, Parameter? original, int positionOffset) : base(cx, init) { Parent = parent; Original = original ?? this; + PositionOffset = positionOffset; + } + + protected Parameter(Context cx, IParameterSymbol init, IEntity? parent, Parameter? original) + : this(cx, init, parent, original, 0) + { } public override Microsoft.CodeAnalysis.Location ReportingLocation => Symbol.GetSymbolLocation(); @@ -32,7 +39,7 @@ public enum Kind RefReadOnly = 6 } - protected virtual int Ordinal => Symbol.Ordinal; + protected virtual int Ordinal => Symbol.Ordinal + PositionOffset; private Kind ParamKind { @@ -55,23 +62,25 @@ private Kind ParamKind if (Ordinal == 0) { if (Symbol.ContainingSymbol is IMethodSymbol method && method.IsExtensionMethod) + { return Kind.This; + } } return Kind.None; } } } - public static Parameter Create(Context cx, IParameterSymbol param, IEntity parent, Parameter? original = null) + public static Parameter Create(Context cx, IParameterSymbol param, IEntity parent, Parameter? original = null, int positionOffset = 0) { var cachedSymbol = cx.GetPossiblyCachedParameterSymbol(param); - return ParameterFactory.Instance.CreateEntity(cx, cachedSymbol, (cachedSymbol, parent, original)); + return ParameterFactory.Instance.CreateEntity(cx, cachedSymbol, (cachedSymbol, parent, original, positionOffset)); } public static Parameter Create(Context cx, IParameterSymbol param) { var cachedSymbol = cx.GetPossiblyCachedParameterSymbol(param); - return ParameterFactory.Instance.CreateEntity(cx, cachedSymbol, (cachedSymbol, null, null)); + return ParameterFactory.Instance.CreateEntity(cx, cachedSymbol, (cachedSymbol, null, null, 0)); } public override void WriteId(EscapingTextWriter trapFile) @@ -79,6 +88,9 @@ public override void WriteId(EscapingTextWriter trapFile) if (Parent is null) Parent = Method.Create(Context, Symbol.ContainingSymbol as IMethodSymbol); + if (Parent is null && Symbol.ContainingSymbol is INamedTypeSymbol type && type.IsExtension) + Parent = Type.Create(Context, type); + if (Parent is null) throw new InternalError(Symbol, "Couldn't get parent of symbol."); @@ -194,11 +206,11 @@ Symbol.ContainingSymbol is IMethodSymbol ms && return syntax?.Default; } - private class ParameterFactory : CachedEntityFactory<(IParameterSymbol, IEntity?, Parameter?), Parameter> + private class ParameterFactory : CachedEntityFactory<(IParameterSymbol, IEntity?, Parameter?, int), Parameter> { public static ParameterFactory Instance { get; } = new ParameterFactory(); - public override Parameter Create(Context cx, (IParameterSymbol, IEntity?, Parameter?) init) => new Parameter(cx, init.Item1, init.Item2, init.Item3); + public override Parameter Create(Context cx, (IParameterSymbol, IEntity?, Parameter?, int) init) => new Parameter(cx, init.Item1, init.Item2, init.Item3, init.Item4); } public override TrapStackBehaviour TrapStackBehaviour => TrapStackBehaviour.OptionalLabel; diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Trap/Tuples.cs b/csharp/extractor/Semmle.Extraction.CSharp/Trap/Tuples.cs index b789eaa2e9c7..c1d082bbee2b 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Trap/Tuples.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Trap/Tuples.cs @@ -292,10 +292,10 @@ internal static void operators(this TextWriter trapFile, UserOperator method, st internal static void overrides(this TextWriter trapFile, Method overriding, Method overridden) => trapFile.WriteTuple("overrides", overriding, overridden); - internal static void param_location(this TextWriter trapFile, Parameter param, Location location) => + internal static void param_location(this TextWriter trapFile, IParameter param, Location location) => trapFile.WriteTuple("param_location", param, location); - internal static void @params(this TextWriter trapFile, Parameter param, string name, Type type, int child, Parameter.Kind mode, IEntity method, Parameter originalDefinition) => + internal static void @params(this TextWriter trapFile, IParameter param, string name, Type type, int child, Parameter.Kind mode, IEntity method, IParameter originalDefinition) => trapFile.WriteTuple("params", param, name, type, child, (int)mode, method, originalDefinition); internal static void parent_namespace(this TextWriter trapFile, IEntity type, Namespace parent) => From 60bb9a9b0666851fb024781161fa3c5b27d36762 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 13:23:39 +0100 Subject: [PATCH 296/433] C#: Move some populate methods and location writing methods. --- .../Entities/Base/CachedEntity.cs | 16 ------- .../Entities/Base/CachedSymbol.cs | 26 ----------- .../Entities/Base/Entity.cs | 46 ++++++++++++++++++- 3 files changed, 45 insertions(+), 43 deletions(-) diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedEntity.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedEntity.cs index 2002fe0f1d7a..39d0f886b813 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedEntity.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedEntity.cs @@ -54,22 +54,6 @@ public string DebugContents } } - protected static void WriteLocationToTrap(Action writeAction, T1 entity, Location l) - { - if (l is not EmptyLocation) - { - writeAction(entity, l); - } - } - - protected static void WriteLocationsToTrap(Action writeAction, T1 entity, IEnumerable locations) - { - foreach (var loc in locations) - { - WriteLocationToTrap(writeAction, entity, loc); - } - } - public override bool NeedsPopulation { get; } public override int GetHashCode() => Symbol is null ? 0 : Symbol.GetHashCode(); diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedSymbol.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedSymbol.cs index 92861e97fdd8..1a69b0e08b2b 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedSymbol.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedSymbol.cs @@ -32,32 +32,6 @@ protected void PopulateAttributes() Attribute.ExtractAttributes(Context, Symbol, this); } - protected void PopulateNullability(TextWriter trapFile, AnnotatedTypeSymbol type) - { - var n = NullabilityEntity.Create(Context, Nullability.Create(type)); - if (!type.HasObliviousNullability()) - { - trapFile.type_nullability(this, n); - } - } - - protected void PopulateRefKind(TextWriter trapFile, RefKind kind) - { - switch (kind) - { - case RefKind.Out: - trapFile.type_annotation(this, Kinds.TypeAnnotation.Out); - break; - case RefKind.Ref: - trapFile.type_annotation(this, Kinds.TypeAnnotation.Ref); - break; - case RefKind.RefReadOnly: - case RefKind.RefReadOnlyParameter: - trapFile.type_annotation(this, Kinds.TypeAnnotation.ReadonlyRef); - break; - } - } - protected void PopulateScopedKind(TextWriter trapFile, ScopedKind kind) { switch (kind) diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/Entity.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/Entity.cs index ca1887b3be9c..94b2e16e9e6b 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/Entity.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/Entity.cs @@ -1,6 +1,8 @@ using System; +using System.Collections.Generic; using System.IO; using Microsoft.CodeAnalysis; +using Semmle.Extraction.CSharp.Entities; namespace Semmle.Extraction.CSharp { @@ -24,7 +26,7 @@ public virtual void WriteQuotedId(EscapingTextWriter trapFile) trapFile.WriteUnescaped('\"'); } - public abstract Location? ReportingLocation { get; } + public abstract Microsoft.CodeAnalysis.Location? ReportingLocation { get; } public abstract TrapStackBehaviour TrapStackBehaviour { get; } @@ -65,6 +67,48 @@ public string GetDebugLabel() } #endif + protected void PopulateRefKind(TextWriter trapFile, RefKind kind) + { + switch (kind) + { + case RefKind.Out: + trapFile.type_annotation(this, Kinds.TypeAnnotation.Out); + break; + case RefKind.Ref: + trapFile.type_annotation(this, Kinds.TypeAnnotation.Ref); + break; + case RefKind.RefReadOnly: + case RefKind.RefReadOnlyParameter: + trapFile.type_annotation(this, Kinds.TypeAnnotation.ReadonlyRef); + break; + } + } + + protected void PopulateNullability(TextWriter trapFile, AnnotatedTypeSymbol type) + { + var n = NullabilityEntity.Create(Context, Nullability.Create(type)); + if (!type.HasObliviousNullability()) + { + trapFile.type_nullability(this, n); + } + } + + protected static void WriteLocationToTrap(Action writeAction, T1 entity, Entities.Location l) + { + if (l is not EmptyLocation) + { + writeAction(entity, l); + } + } + + protected static void WriteLocationsToTrap(Action writeAction, T1 entity, IEnumerable locations) + { + foreach (var loc in locations) + { + WriteLocationToTrap(writeAction, entity, loc); + } + } + public override string ToString() => Label.ToString(); } } From 36fa0a22f9948cda50ccf0f50b3c1e277fc4c1e5 Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Wed, 4 Feb 2026 13:38:11 +0100 Subject: [PATCH 297/433] Java: Rename getTrueExpr/getFalseExpr on ConditionalExpr to getThen/getElse. --- .../examples/snippets/ternaryconditional.ql | 6 ++-- java/ql/lib/semmle/code/java/Expr.qll | 32 ++++++++++++++----- .../lib/semmle/code/java/PrettyPrintAst.qll | 4 +-- .../semmle/code/java/controlflow/Guards.qll | 8 +---- .../semmle/code/java/dataflow/NullGuards.qll | 4 +-- .../Likely Bugs/Arithmetic/CondExprTypes.ql | 4 +-- .../Comparison/StringComparison.ql | 4 +-- .../Comparison/UselessComparisonTest.ql | 4 +-- .../Boolean Logic/SimplifyBoolExpr.ql | 16 +++++----- .../Implementation Hiding/StaticArray.ql | 4 +-- .../legacy/AutoBoxing.ql | 4 +-- 11 files changed, 49 insertions(+), 41 deletions(-) diff --git a/java/ql/examples/snippets/ternaryconditional.ql b/java/ql/examples/snippets/ternaryconditional.ql index bbd82770a16f..867ea024674a 100644 --- a/java/ql/examples/snippets/ternaryconditional.ql +++ b/java/ql/examples/snippets/ternaryconditional.ql @@ -11,7 +11,7 @@ import java from ConditionalExpr e where - e.getTrueExpr().getType() != e.getFalseExpr().getType() and - not e.getTrueExpr().getType() instanceof NullType and - not e.getFalseExpr().getType() instanceof NullType + e.getThen().getType() != e.getElse().getType() and + not e.getThen().getType() instanceof NullType and + not e.getElse().getType() instanceof NullType select e diff --git a/java/ql/lib/semmle/code/java/Expr.qll b/java/ql/lib/semmle/code/java/Expr.qll index 9e958b36471a..757bef86e3d3 100644 --- a/java/ql/lib/semmle/code/java/Expr.qll +++ b/java/ql/lib/semmle/code/java/Expr.qll @@ -166,8 +166,8 @@ class CompileTimeConstantExpr extends Expr { // The ternary conditional operator ` ? : `. exists(ConditionalExpr e | this = e | e.getCondition().isCompileTimeConstant() and - e.getTrueExpr().isCompileTimeConstant() and - e.getFalseExpr().isCompileTimeConstant() + e.getThen().isCompileTimeConstant() and + e.getElse().isCompileTimeConstant() ) or // Access to a final variable initialized by a compile-time constant. @@ -1463,27 +1463,43 @@ class ConditionalExpr extends Expr, @conditionalexpr { /** Gets the condition of this conditional expression. */ Expr getCondition() { result.isNthChildOf(this, 0) } + /** + * DEPRECATED: Use getThen() instead. + * + * Gets the expression that is evaluated if the condition of this + * conditional expression evaluates to `true`. + */ + deprecated Expr getTrueExpr() { result.isNthChildOf(this, 1) } + + /** + * DEPRECATED: Use getElse() instead. + * + * Gets the expression that is evaluated if the condition of this + * conditional expression evaluates to `false`. + */ + deprecated Expr getFalseExpr() { result.isNthChildOf(this, 2) } + /** * Gets the expression that is evaluated if the condition of this * conditional expression evaluates to `true`. */ - Expr getTrueExpr() { result.isNthChildOf(this, 1) } + Expr getThen() { result.isNthChildOf(this, 1) } /** * Gets the expression that is evaluated if the condition of this * conditional expression evaluates to `false`. */ - Expr getFalseExpr() { result.isNthChildOf(this, 2) } + Expr getElse() { result.isNthChildOf(this, 2) } /** * Gets the expression that is evaluated by the specific branch of this - * conditional expression. If `true` that is `getTrueExpr()`, if `false` - * it is `getFalseExpr()`. + * conditional expression. If `true` that is `getThen()`, if `false` + * it is `getElse()`. */ Expr getBranchExpr(boolean branch) { - branch = true and result = this.getTrueExpr() + branch = true and result = this.getThen() or - branch = false and result = this.getFalseExpr() + branch = false and result = this.getElse() } /** diff --git a/java/ql/lib/semmle/code/java/PrettyPrintAst.qll b/java/ql/lib/semmle/code/java/PrettyPrintAst.qll index 4538b8172668..64e44b2cec48 100644 --- a/java/ql/lib/semmle/code/java/PrettyPrintAst.qll +++ b/java/ql/lib/semmle/code/java/PrettyPrintAst.qll @@ -351,9 +351,9 @@ private class PpConditionalExpr extends PpAst, ConditionalExpr { override PpAst getChild(int i) { i = 0 and result = this.getCondition() or - i = 2 and result = this.getTrueExpr() + i = 2 and result = this.getThen() or - i = 4 and result = this.getFalseExpr() + i = 4 and result = this.getElse() } } diff --git a/java/ql/lib/semmle/code/java/controlflow/Guards.qll b/java/ql/lib/semmle/code/java/controlflow/Guards.qll index 954658497011..845360474833 100644 --- a/java/ql/lib/semmle/code/java/controlflow/Guards.qll +++ b/java/ql/lib/semmle/code/java/controlflow/Guards.qll @@ -315,13 +315,7 @@ private module GuardsInput implements SharedGuards::InputSig Date: Wed, 4 Feb 2026 13:56:50 +0100 Subject: [PATCH 298/433] Java: Rename ReturnStmt.getResult to getExpr. --- java/ql/examples/snippets/returnstatement.ql | 2 +- java/ql/lib/semmle/code/java/ControlFlowGraph.qll | 2 +- java/ql/lib/semmle/code/java/Conversions.qll | 2 +- java/ql/lib/semmle/code/java/Expr.qll | 4 ++-- java/ql/lib/semmle/code/java/Member.qll | 4 ++-- java/ql/lib/semmle/code/java/PrettyPrintAst.qll | 4 ++-- java/ql/lib/semmle/code/java/Statement.qll | 9 ++++++++- java/ql/lib/semmle/code/java/controlflow/Guards.qll | 2 +- .../code/java/controlflow/UnreachableBlocks.qll | 6 ++---- java/ql/lib/semmle/code/java/dataflow/Nullness.qll | 2 +- java/ql/lib/semmle/code/java/dataflow/TypeFlow.qll | 2 +- .../code/java/dataflow/internal/DataFlowNodes.qll | 2 +- .../semmle/code/java/deadcode/DeadEnumConstant.qll | 2 +- .../lib/semmle/code/java/dispatch/DispatchFlow.qll | 2 +- java/ql/lib/semmle/code/java/dispatch/ObjFlow.qll | 2 +- java/ql/lib/semmle/code/java/frameworks/JaxWS.qll | 2 +- java/ql/lib/semmle/code/java/frameworks/Mockito.qll | 2 +- java/ql/lib/semmle/code/java/frameworks/MyBatis.qll | 2 +- .../lib/semmle/code/java/frameworks/ThreadLocal.qll | 2 +- .../code/java/frameworks/android/AsyncTask.qll | 2 +- .../semmle/code/java/frameworks/android/Compose.qll | 2 +- .../java/frameworks/javaee/ejb/EJBRestrictions.qll | 2 +- .../code/java/frameworks/spring/SpringHttp.qll | 2 +- .../semmle/code/java/frameworks/stapler/Stapler.qll | 4 ++-- .../semmle/code/java/security/ArithmeticCommon.qll | 2 +- .../semmle/code/java/security/FragmentInjection.qll | 2 +- .../security/StaticInitializationVectorQuery.qll | 2 +- .../java/security/UnsafeDeserializationQuery.qll | 2 +- .../security/UnsafeHostnameVerificationQuery.qll | 2 +- java/ql/src/Language Abuse/IterableClass.qll | 2 +- java/ql/src/Language Abuse/IterableIterator.ql | 2 +- .../Likely Bugs/Collections/IteratorRemoveMayFail.ql | 4 ++-- .../src/Likely Bugs/Collections/ReadOnlyContainer.ql | 2 +- .../Comparison/DefineEqualsWhenAddingFields.ql | 8 ++++---- java/ql/src/Likely Bugs/Comparison/Equality.qll | 2 +- .../Comparison/MissingInstanceofInEquals.ql | 2 +- .../src/Likely Bugs/Comparison/StringComparison.ql | 2 +- .../Concurrency/NonSynchronizedOverride.ql | 2 +- .../Serialization/NonSerializableInnerClass.ql | 2 +- java/ql/src/Likely Bugs/Statements/Chaining.qll | 12 ++++++------ java/ql/src/Likely Bugs/Statements/ImpossibleCast.ql | 4 ++-- .../Security/CWE/CWE-338/JHipsterGeneratedPRNG.ql | 2 +- java/ql/src/Security/CWE/CWE-367/TOCTOURace.ql | 2 +- .../Boxed Types/BoxedVariable.ql | 2 +- .../Implementation Hiding/ExposeRepresentation.ql | 4 ++-- .../Naming Conventions/ConfusingOverloading.ql | 2 +- .../Naming Conventions/Shadowing.qll | 2 +- .../CWE/CWE-094/SpringViewManipulationLib.qll | 4 ++-- .../CWE/CWE-295/JxBrowserWithoutCertValidation.ql | 2 +- .../frameworks/android/taint-database/flowSteps.ql | 2 +- .../lgtm-example-queries/returnstatement.ql | 2 +- 51 files changed, 75 insertions(+), 70 deletions(-) diff --git a/java/ql/examples/snippets/returnstatement.ql b/java/ql/examples/snippets/returnstatement.ql index 14270dc87c20..f2b6c601fb56 100644 --- a/java/ql/examples/snippets/returnstatement.ql +++ b/java/ql/examples/snippets/returnstatement.ql @@ -10,5 +10,5 @@ import java from ReturnStmt r -where r.getResult() instanceof NullLiteral +where r.getExpr() instanceof NullLiteral select r diff --git a/java/ql/lib/semmle/code/java/ControlFlowGraph.qll b/java/ql/lib/semmle/code/java/ControlFlowGraph.qll index 2987a8ae2b1e..bb3690dbbfc9 100644 --- a/java/ql/lib/semmle/code/java/ControlFlowGraph.qll +++ b/java/ql/lib/semmle/code/java/ControlFlowGraph.qll @@ -849,7 +849,7 @@ private module ControlFlowGraphImpl { or index = 0 and result = this.(ClassExpr).getExpr() or - index = 0 and result = this.(ReturnStmt).getResult() + index = 0 and result = this.(ReturnStmt).getExpr() or index = 0 and result = this.(ThrowStmt).getExpr() or diff --git a/java/ql/lib/semmle/code/java/Conversions.qll b/java/ql/lib/semmle/code/java/Conversions.qll index 779eb7620bec..1855b7af54a1 100644 --- a/java/ql/lib/semmle/code/java/Conversions.qll +++ b/java/ql/lib/semmle/code/java/Conversions.qll @@ -69,7 +69,7 @@ class AssignmentConversionContext extends ConversionSite { class ReturnConversionSite extends ConversionSite { ReturnStmt r; - ReturnConversionSite() { this = r.getResult() } + ReturnConversionSite() { this = r.getExpr() } override Type getConversionTarget() { result = r.getEnclosingCallable().getReturnType() } diff --git a/java/ql/lib/semmle/code/java/Expr.qll b/java/ql/lib/semmle/code/java/Expr.qll index 757bef86e3d3..d4b43a9dfab4 100644 --- a/java/ql/lib/semmle/code/java/Expr.qll +++ b/java/ql/lib/semmle/code/java/Expr.qll @@ -1312,7 +1312,7 @@ class LambdaExpr extends FunctionalExpr, @lambdaexpr { /** Gets the body of this lambda expression, if it is an expression. */ Expr getExprBody() { - this.hasExprBody() and result = this.asMethod().getBody().getAChild().(ReturnStmt).getResult() + this.hasExprBody() and result = this.asMethod().getBody().getAChild().(ReturnStmt).getExpr() } /** Gets the body of this lambda expression, if it is a statement. */ @@ -1347,7 +1347,7 @@ class MemberRefExpr extends FunctionalExpr, @memberref { exists(Stmt stmt | stmt = this.asMethod().getBody().(SingletonBlock).getStmt() and ( - result = stmt.(ReturnStmt).getResult() + result = stmt.(ReturnStmt).getExpr() or // Note: Currently never an ExprStmt, but might change once https://github.com/github/codeql/issues/3605 is fixed result = stmt.(ExprStmt).getExpr() diff --git a/java/ql/lib/semmle/code/java/Member.qll b/java/ql/lib/semmle/code/java/Member.qll index 17fe696972f6..23e08c4e6b60 100644 --- a/java/ql/lib/semmle/code/java/Member.qll +++ b/java/ql/lib/semmle/code/java/Member.qll @@ -680,13 +680,13 @@ class GetterMethod extends Method { GetterMethod() { this.hasNoParameters() and exists(ReturnStmt s, Field f | s = this.getBody().(SingletonBlock).getStmt() | - s.getResult() = f.getAnAccess() + s.getExpr() = f.getAnAccess() ) } /** Gets the field whose value is returned by this getter method. */ Field getField() { - exists(ReturnStmt r | r.getEnclosingCallable() = this | r.getResult() = result.getAnAccess()) + exists(ReturnStmt r | r.getEnclosingCallable() = this | r.getExpr() = result.getAnAccess()) } } diff --git a/java/ql/lib/semmle/code/java/PrettyPrintAst.qll b/java/ql/lib/semmle/code/java/PrettyPrintAst.qll index 64e44b2cec48..ac707c849dde 100644 --- a/java/ql/lib/semmle/code/java/PrettyPrintAst.qll +++ b/java/ql/lib/semmle/code/java/PrettyPrintAst.qll @@ -854,7 +854,7 @@ private class PpSynchronizedStmt extends PpAst, SynchronizedStmt { private class PpReturnStmt extends PpAst, ReturnStmt { override string getPart(int i) { - if exists(this.getResult()) + if exists(this.getExpr()) then i = 0 and result = "return " or @@ -864,7 +864,7 @@ private class PpReturnStmt extends PpAst, ReturnStmt { ) } - override PpAst getChild(int i) { i = 1 and result = this.getResult() } + override PpAst getChild(int i) { i = 1 and result = this.getExpr() } } private class PpThrowStmt extends PpAst, ThrowStmt { diff --git a/java/ql/lib/semmle/code/java/Statement.qll b/java/ql/lib/semmle/code/java/Statement.qll index 8db9d5e6628a..3f138ac0fa27 100644 --- a/java/ql/lib/semmle/code/java/Statement.qll +++ b/java/ql/lib/semmle/code/java/Statement.qll @@ -627,8 +627,15 @@ class SynchronizedStmt extends Stmt, @synchronizedstmt { /** A `return` statement. */ class ReturnStmt extends Stmt, @returnstmt { + /** + * DEPRECATED: Use getExpr() instead. + * + * Gets the expression returned by this `return` statement, if any. + */ + deprecated Expr getResult() { result.getParent() = this } + /** Gets the expression returned by this `return` statement, if any. */ - Expr getResult() { result.getParent() = this } + Expr getExpr() { result.getParent() = this } override string pp() { result = "return ..." } diff --git a/java/ql/lib/semmle/code/java/controlflow/Guards.qll b/java/ql/lib/semmle/code/java/controlflow/Guards.qll index 845360474833..49cd0d189414 100644 --- a/java/ql/lib/semmle/code/java/controlflow/Guards.qll +++ b/java/ql/lib/semmle/code/java/controlflow/Guards.qll @@ -349,7 +349,7 @@ private module GuardsInput implements SharedGuards::InputSig { n2.asSsa().(Base::SsaPhiDefinition).getAnUltimateDefinition() = n1.asSsa() or exists(ReturnStmt ret | - n2.asMethod() = ret.getEnclosingCallable() and ret.getResult() = n1.asExpr() + n2.asMethod() = ret.getEnclosingCallable() and ret.getExpr() = n1.asExpr() ) or viableImpl_v1(n2.asExpr()) = n1.asMethod() diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowNodes.qll b/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowNodes.qll index 9786286389c8..a280e531f91c 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowNodes.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/DataFlowNodes.qll @@ -510,7 +510,7 @@ module Private { /** A data flow node that occurs as the result of a `ReturnStmt`. */ class ReturnNode extends Node { ReturnNode() { - exists(ReturnStmt ret | this.asExpr() = ret.getResult()) or + exists(ReturnStmt ret | this.asExpr() = ret.getExpr()) or this.(FlowSummaryNode).isReturn() } diff --git a/java/ql/lib/semmle/code/java/deadcode/DeadEnumConstant.qll b/java/ql/lib/semmle/code/java/deadcode/DeadEnumConstant.qll index 3a8491b8428e..011049eec4bc 100644 --- a/java/ql/lib/semmle/code/java/deadcode/DeadEnumConstant.qll +++ b/java/ql/lib/semmle/code/java/deadcode/DeadEnumConstant.qll @@ -27,7 +27,7 @@ VarAccess valueAccess(EnumConstant e) { or exists(Assignment a | a.getSource() = valueFlow+(result)) or - exists(ReturnStmt r | r.getResult() = valueFlow+(result)) + exists(ReturnStmt r | r.getExpr() = valueFlow+(result)) or exists(LocalVariableDeclExpr v | v.getInit() = valueFlow+(result)) or diff --git a/java/ql/lib/semmle/code/java/dispatch/DispatchFlow.qll b/java/ql/lib/semmle/code/java/dispatch/DispatchFlow.qll index 2af5df281070..d4425eae2b8a 100644 --- a/java/ql/lib/semmle/code/java/dispatch/DispatchFlow.qll +++ b/java/ql/lib/semmle/code/java/dispatch/DispatchFlow.qll @@ -354,7 +354,7 @@ private module TrackLambda { predicate returnStep(Node n1, LocalSourceNode n2) { exists(ReturnStmt ret, Method m | ret.getEnclosingCallable() = m and - ret.getResult() = n1.asExpr() and + ret.getExpr() = n1.asExpr() and m = dispatch(n2.asExpr()) ) } diff --git a/java/ql/lib/semmle/code/java/dispatch/ObjFlow.qll b/java/ql/lib/semmle/code/java/dispatch/ObjFlow.qll index 239f4dd0fbc1..d5a4ee605712 100644 --- a/java/ql/lib/semmle/code/java/dispatch/ObjFlow.qll +++ b/java/ql/lib/semmle/code/java/dispatch/ObjFlow.qll @@ -53,7 +53,7 @@ private predicate viableArgParam(ArgumentNode arg, ParameterNode p) { private predicate returnStep(Node n1, Node n2) { exists(ReturnStmt ret, Method m | ret.getEnclosingCallable() = m and - ret.getResult() = n1.asExpr() and + ret.getExpr() = n1.asExpr() and pragma[only_bind_out](m) = dispatchCand(n2.asExpr()) ) } diff --git a/java/ql/lib/semmle/code/java/frameworks/JaxWS.qll b/java/ql/lib/semmle/code/java/frameworks/JaxWS.qll index 62289f737c02..8b3ab081ee0f 100644 --- a/java/ql/lib/semmle/code/java/frameworks/JaxWS.qll +++ b/java/ql/lib/semmle/code/java/frameworks/JaxWS.qll @@ -424,7 +424,7 @@ private class JaxRSXssSink extends XssSink { exists(JaxRsResourceMethod resourceMethod, ReturnStmt rs | resourceMethod = any(JaxRsResourceClass resourceClass).getAResourceMethod() and rs.getEnclosingCallable() = resourceMethod and - this.asExpr() = rs.getResult() + this.asExpr() = rs.getExpr() | not exists(resourceMethod.getProducesAnnotation()) or diff --git a/java/ql/lib/semmle/code/java/frameworks/Mockito.qll b/java/ql/lib/semmle/code/java/frameworks/Mockito.qll index a8559060d306..2613b0e5c51c 100644 --- a/java/ql/lib/semmle/code/java/frameworks/Mockito.qll +++ b/java/ql/lib/semmle/code/java/frameworks/Mockito.qll @@ -386,7 +386,7 @@ class MockitoMockedObject extends Expr { or exists(ReturnStmt ret | this.(MethodCall).getMethod() = ret.getEnclosingCallable() and - ret.getResult() instanceof MockitoMockedObject + ret.getExpr() instanceof MockitoMockedObject ) } } diff --git a/java/ql/lib/semmle/code/java/frameworks/MyBatis.qll b/java/ql/lib/semmle/code/java/frameworks/MyBatis.qll index e3f89186821b..6a354a0a42a7 100644 --- a/java/ql/lib/semmle/code/java/frameworks/MyBatis.qll +++ b/java/ql/lib/semmle/code/java/frameworks/MyBatis.qll @@ -109,7 +109,7 @@ class MyBatisInjectionSink extends DataFlow::Node { a.getType() instanceof MyBatisProvider and m.getDeclaringType() = a.getValue(["type", "value"]).(TypeLiteral).getTypeName().getType() and m.hasName(a.getValue("method").(StringLiteral).getValue()) and - exists(ReturnStmt ret | this.asExpr() = ret.getResult() and ret.getEnclosingCallable() = m) + exists(ReturnStmt ret | this.asExpr() = ret.getExpr() and ret.getEnclosingCallable() = m) ) } } diff --git a/java/ql/lib/semmle/code/java/frameworks/ThreadLocal.qll b/java/ql/lib/semmle/code/java/frameworks/ThreadLocal.qll index c813c0383eb6..5a550ff95013 100644 --- a/java/ql/lib/semmle/code/java/frameworks/ThreadLocal.qll +++ b/java/ql/lib/semmle/code/java/frameworks/ThreadLocal.qll @@ -15,7 +15,7 @@ private predicate threadLocalInitialValue(ClassInstanceExpr cie, Method initialV exists(RefType t, ReturnStmt ret | cie.getConstructedType().getSourceDeclaration() = t and t.getASourceSupertype+().hasQualifiedName("java.lang", "ThreadLocal") and - ret.getResult() = init and + ret.getExpr() = init and ret.getEnclosingCallable() = initialValue and initialValue.hasName("initialValue") and initialValue.getDeclaringType() = t diff --git a/java/ql/lib/semmle/code/java/frameworks/android/AsyncTask.qll b/java/ql/lib/semmle/code/java/frameworks/android/AsyncTask.qll index 1aba64a4c7e0..e7948fcd5f4d 100644 --- a/java/ql/lib/semmle/code/java/frameworks/android/AsyncTask.qll +++ b/java/ql/lib/semmle/code/java/frameworks/android/AsyncTask.qll @@ -37,7 +37,7 @@ private class AsyncTaskOnPostExecuteAdditionalValueStep extends AdditionalValueS | onPostExecute.getDeclaringType() = runInBackground.getDeclaringType() | - node1.asExpr() = any(ReturnStmt r | r.getEnclosingCallable() = runInBackground).getResult() and + node1.asExpr() = any(ReturnStmt r | r.getEnclosingCallable() = runInBackground).getExpr() and node2.asParameter() = onPostExecute.getParameter(0) ) } diff --git a/java/ql/lib/semmle/code/java/frameworks/android/Compose.qll b/java/ql/lib/semmle/code/java/frameworks/android/Compose.qll index 9123600d4e48..134e93ea4eb7 100644 --- a/java/ql/lib/semmle/code/java/frameworks/android/Compose.qll +++ b/java/ql/lib/semmle/code/java/frameworks/android/Compose.qll @@ -44,7 +44,7 @@ class LiveLiteralMethod extends Method { private predicate methodReturns(Method m, Expr res) { exists(ReturnStmt r | - r.getResult() = res and + r.getExpr() = res and r.getEnclosingCallable() = m ) } diff --git a/java/ql/lib/semmle/code/java/frameworks/javaee/ejb/EJBRestrictions.qll b/java/ql/lib/semmle/code/java/frameworks/javaee/ejb/EJBRestrictions.qll index 2f5a88ba5c81..10b6e7f3df2f 100644 --- a/java/ql/lib/semmle/code/java/frameworks/javaee/ejb/EJBRestrictions.qll +++ b/java/ql/lib/semmle/code/java/frameworks/javaee/ejb/EJBRestrictions.qll @@ -138,7 +138,7 @@ ThisAccess forbiddenThisUse(Callable c) { result.getEnclosingCallable() = c and ( exists(MethodCall ma | ma.getAnArgument() = result) or - exists(ReturnStmt rs | rs.getResult() = result) + exists(ReturnStmt rs | rs.getExpr() = result) ) } diff --git a/java/ql/lib/semmle/code/java/frameworks/spring/SpringHttp.qll b/java/ql/lib/semmle/code/java/frameworks/spring/SpringHttp.qll index 5f9271c01490..d110caa1703c 100644 --- a/java/ql/lib/semmle/code/java/frameworks/spring/SpringHttp.qll +++ b/java/ql/lib/semmle/code/java/frameworks/spring/SpringHttp.qll @@ -52,7 +52,7 @@ private class SpringXssSink extends XSS::XssSink { SpringXssSink() { exists(SpringRequestMappingMethod requestMappingMethod, ReturnStmt rs | requestMappingMethod = rs.getEnclosingCallable() and - this.asExpr() = rs.getResult() and + this.asExpr() = rs.getExpr() and ( not specifiesContentType(requestMappingMethod) or isXssVulnerableContentTypeExpr(requestMappingMethod.getAProducesExpr()) diff --git a/java/ql/lib/semmle/code/java/frameworks/stapler/Stapler.qll b/java/ql/lib/semmle/code/java/frameworks/stapler/Stapler.qll index 28ca95b55413..d7563100d974 100644 --- a/java/ql/lib/semmle/code/java/frameworks/stapler/Stapler.qll +++ b/java/ql/lib/semmle/code/java/frameworks/stapler/Stapler.qll @@ -58,9 +58,9 @@ private class HttpResponseGetDescriptionStep extends AdditionalValueStep { override predicate step(DataFlow::Node n1, DataFlow::Node n2) { exists(ReturnStmt s, GenerateResponseMethod m | s.getEnclosingCallable() instanceof HudsonWebMethod and - boundOrStaticType(s.getResult(), m.getDeclaringType().getADescendant()) + boundOrStaticType(s.getExpr(), m.getDeclaringType().getADescendant()) | - n1.asExpr() = s.getResult() and + n1.asExpr() = s.getExpr() and n2.(DataFlow::InstanceParameterNode).getCallable() = m ) } diff --git a/java/ql/lib/semmle/code/java/security/ArithmeticCommon.qll b/java/ql/lib/semmle/code/java/security/ArithmeticCommon.qll index 4f4c20a5263b..9282e7666273 100644 --- a/java/ql/lib/semmle/code/java/security/ArithmeticCommon.qll +++ b/java/ql/lib/semmle/code/java/security/ArithmeticCommon.qll @@ -113,7 +113,7 @@ predicate upcastToWiderType(Expr e) { or exists(CastingExpr c | c.getExpr() = e and t2 = c.getType()) or - exists(ReturnStmt ret | ret.getResult() = e and t2 = ret.getEnclosingCallable().getReturnType()) + exists(ReturnStmt ret | ret.getExpr() = e and t2 = ret.getEnclosingCallable().getReturnType()) or exists(Parameter p | p.getAnArgument() = e and t2 = p.getType()) or diff --git a/java/ql/lib/semmle/code/java/security/FragmentInjection.qll b/java/ql/lib/semmle/code/java/security/FragmentInjection.qll index d27677b22717..7dc5f68d2d1e 100644 --- a/java/ql/lib/semmle/code/java/security/FragmentInjection.qll +++ b/java/ql/lib/semmle/code/java/security/FragmentInjection.qll @@ -25,7 +25,7 @@ class IsValidFragmentMethod extends Method { predicate isUnsafe() { this.getDeclaringType().(AndroidActivity).isExported() and forex(ReturnStmt retStmt | retStmt.getEnclosingCallable() = this | - retStmt.getResult().(BooleanLiteral).getBooleanValue() = true + retStmt.getExpr().(BooleanLiteral).getBooleanValue() = true ) } } diff --git a/java/ql/lib/semmle/code/java/security/StaticInitializationVectorQuery.qll b/java/ql/lib/semmle/code/java/security/StaticInitializationVectorQuery.qll index a03775990541..e97a31614999 100644 --- a/java/ql/lib/semmle/code/java/security/StaticInitializationVectorQuery.qll +++ b/java/ql/lib/semmle/code/java/security/StaticInitializationVectorQuery.qll @@ -107,7 +107,7 @@ private class StaticInitializationVectorSource extends DataFlow::Node { // Reduce FPs from utility methods that return an empty array in an exceptional case not exists(ReturnStmt ret | array.getADimension().(CompileTimeConstantExpr).getIntValue() = 0 and - DataFlow::localExprFlow(array, ret.getResult()) + DataFlow::localExprFlow(array, ret.getExpr()) ) ) } diff --git a/java/ql/lib/semmle/code/java/security/UnsafeDeserializationQuery.qll b/java/ql/lib/semmle/code/java/security/UnsafeDeserializationQuery.qll index dc771a466063..4b9f5c61f591 100644 --- a/java/ql/lib/semmle/code/java/security/UnsafeDeserializationQuery.qll +++ b/java/ql/lib/semmle/code/java/security/UnsafeDeserializationQuery.qll @@ -95,7 +95,7 @@ private module SafeKryoConfig implements DataFlow::ConfigSig { ) { exists(ConstructorCall cc, FunctionalExpr fe | cc.getConstructedType() instanceof KryoPoolBuilder and - fe.asMethod().getBody().getAStmt().(ReturnStmt).getResult() = node1.asExpr() and + fe.asMethod().getBody().getAStmt().(ReturnStmt).getExpr() = node1.asExpr() and node2.asExpr() = cc and cc.getArgument(0) = fe ) diff --git a/java/ql/lib/semmle/code/java/security/UnsafeHostnameVerificationQuery.qll b/java/ql/lib/semmle/code/java/security/UnsafeHostnameVerificationQuery.qll index 60829f426f75..724bccceb1fd 100644 --- a/java/ql/lib/semmle/code/java/security/UnsafeHostnameVerificationQuery.qll +++ b/java/ql/lib/semmle/code/java/security/UnsafeHostnameVerificationQuery.qll @@ -13,7 +13,7 @@ private import semmle.code.java.dataflow.ExternalFlow */ private predicate alwaysReturnsTrue(HostnameVerifierVerify m) { forex(ReturnStmt rs | rs.getEnclosingCallable() = m | - rs.getResult().(CompileTimeConstantExpr).getBooleanValue() = true + rs.getExpr().(CompileTimeConstantExpr).getBooleanValue() = true ) } diff --git a/java/ql/src/Language Abuse/IterableClass.qll b/java/ql/src/Language Abuse/IterableClass.qll index a6b4c86cffda..896fc2e11607 100644 --- a/java/ql/src/Language Abuse/IterableClass.qll +++ b/java/ql/src/Language Abuse/IterableClass.qll @@ -12,7 +12,7 @@ class Iterable extends Class { exists(Method m | m.getDeclaringType().getSourceDeclaration() = this and m.getName() = "iterator" and - m.getBody().(SingletonBlock).getStmt().(ReturnStmt).getResult() = result + m.getBody().(SingletonBlock).getStmt().(ReturnStmt).getExpr() = result ) } } diff --git a/java/ql/src/Language Abuse/IterableIterator.ql b/java/ql/src/Language Abuse/IterableIterator.ql index 72dfbcd99655..f2ba1a727de7 100644 --- a/java/ql/src/Language Abuse/IterableIterator.ql +++ b/java/ql/src/Language Abuse/IterableIterator.ql @@ -30,7 +30,7 @@ class EmptyIterableIterator extends IterableIterator { .(SingletonBlock) .getStmt() .(ReturnStmt) - .getResult() + .getExpr() .(BooleanLiteral) .getBooleanValue() = false ) diff --git a/java/ql/src/Likely Bugs/Collections/IteratorRemoveMayFail.ql b/java/ql/src/Likely Bugs/Collections/IteratorRemoveMayFail.ql index 09d686947e00..92faee89be7b 100644 --- a/java/ql/src/Likely Bugs/Collections/IteratorRemoveMayFail.ql +++ b/java/ql/src/Likely Bugs/Collections/IteratorRemoveMayFail.ql @@ -39,7 +39,7 @@ predicate containsSpecialCollection(Expr e, SpecialCollectionCreation origin) { or exists(Call c, ReturnStmt r | e = c | r.getEnclosingCallable() = c.getCallee().getSourceDeclaration() and - containsSpecialCollection(r.getResult(), origin) + containsSpecialCollection(r.getExpr(), origin) ) } @@ -61,7 +61,7 @@ predicate iterOfSpecialCollection(Expr e, SpecialCollectionCreation origin) { or exists(Call c, ReturnStmt r | e = c | r.getEnclosingCallable() = c.getCallee().getSourceDeclaration() and - iterOfSpecialCollection(r.getResult(), origin) + iterOfSpecialCollection(r.getExpr(), origin) ) } diff --git a/java/ql/src/Likely Bugs/Collections/ReadOnlyContainer.ql b/java/ql/src/Likely Bugs/Collections/ReadOnlyContainer.ql index 2951f97d65fe..6de1e52ed98d 100644 --- a/java/ql/src/Likely Bugs/Collections/ReadOnlyContainer.ql +++ b/java/ql/src/Likely Bugs/Collections/ReadOnlyContainer.ql @@ -29,7 +29,7 @@ where exists(AssignExpr assgn | va = assgn.getDest() | assgn.getSource() instanceof FreshContainer) or // ...a return (but only if `v` is a local variable) - v instanceof LocalVariableDecl and exists(ReturnStmt ret | ret.getResult() = va) + v instanceof LocalVariableDecl and exists(ReturnStmt ret | ret.getExpr() = va) or // ...or a call to a query method on `v`. exists(MethodCall ma | va = ma.getQualifier() | ma.getMethod() instanceof ContainerQueryMethod) diff --git a/java/ql/src/Likely Bugs/Comparison/DefineEqualsWhenAddingFields.ql b/java/ql/src/Likely Bugs/Comparison/DefineEqualsWhenAddingFields.ql index 2edeea4ec57f..6695d6b677c2 100644 --- a/java/ql/src/Likely Bugs/Comparison/DefineEqualsWhenAddingFields.ql +++ b/java/ql/src/Likely Bugs/Comparison/DefineEqualsWhenAddingFields.ql @@ -32,13 +32,13 @@ predicate checksReferenceEquality(EqualsMethod em) { eq.getAnOperand().(VarAccess).getVariable() = em.getParameter(0) and ( // `{ return (ojb==this); }` - eq = blk.getStmt().(ReturnStmt).getResult() + eq = blk.getStmt().(ReturnStmt).getExpr() or // `{ if (ojb==this) return true; else return false; }` exists(IfStmt ifStmt | ifStmt = blk.getStmt() | eq = ifStmt.getCondition() and - ifStmt.getThen().(ReturnStmt).getResult().(BooleanLiteral).getBooleanValue() = true and - ifStmt.getElse().(ReturnStmt).getResult().(BooleanLiteral).getBooleanValue() = false + ifStmt.getThen().(ReturnStmt).getExpr().(BooleanLiteral).getBooleanValue() = true and + ifStmt.getElse().(ReturnStmt).getExpr().(BooleanLiteral).getBooleanValue() = false ) ) ) @@ -47,7 +47,7 @@ predicate checksReferenceEquality(EqualsMethod em) { // More precisely, we check whether the body of `em` is of the form `return super.equals(o);`, // where `o` is the (only) parameter of `em`, and the invoked method is a reference equality check. exists(SuperMethodCall sup | - sup = em.getBody().(SingletonBlock).getStmt().(ReturnStmt).getResult() and + sup = em.getBody().(SingletonBlock).getStmt().(ReturnStmt).getExpr() and sup.getArgument(0) = em.getParameter(0).getAnAccess() and checksReferenceEquality(sup.getCallee()) ) diff --git a/java/ql/src/Likely Bugs/Comparison/Equality.qll b/java/ql/src/Likely Bugs/Comparison/Equality.qll index 9aeb4a46047e..babd41157426 100644 --- a/java/ql/src/Likely Bugs/Comparison/Equality.qll +++ b/java/ql/src/Likely Bugs/Comparison/Equality.qll @@ -22,7 +22,7 @@ class RefiningEquals extends EqualsMethod { // ... on the (only) parameter of this method ... sup.getArgument(0).(VarAccess).getVariable() = this.getAParameter() and // ... and its result is implied by the result of `ret`. - exprImplies(ret.getResult(), true, sup, true) + exprImplies(ret.getExpr(), true, sup, true) ) ) } diff --git a/java/ql/src/Likely Bugs/Comparison/MissingInstanceofInEquals.ql b/java/ql/src/Likely Bugs/Comparison/MissingInstanceofInEquals.ql index 7cd495f90733..2c33143ccf0f 100644 --- a/java/ql/src/Likely Bugs/Comparison/MissingInstanceofInEquals.ql +++ b/java/ql/src/Likely Bugs/Comparison/MissingInstanceofInEquals.ql @@ -52,7 +52,7 @@ class ReferenceEquals extends EqualsMethod { exists(BlockStmt b, ReturnStmt ret, EQExpr eq | this.getBody() = b and b.getStmt(0) = ret and - ret.getResult() = eq and + ret.getExpr() = eq and eq.getAnOperand() = this.getAParameter().getAnAccess() and (eq.getAnOperand() instanceof ThisAccess or eq.getAnOperand() instanceof FieldAccess) ) diff --git a/java/ql/src/Likely Bugs/Comparison/StringComparison.ql b/java/ql/src/Likely Bugs/Comparison/StringComparison.ql index b6b39673a736..9818f965e05c 100644 --- a/java/ql/src/Likely Bugs/Comparison/StringComparison.ql +++ b/java/ql/src/Likely Bugs/Comparison/StringComparison.ql @@ -38,7 +38,7 @@ class StringValue extends Expr { or // Method accesses whose results are all interned. forex(ReturnStmt rs | rs.getEnclosingCallable() = this.(MethodCall).getMethod() | - rs.getResult().(StringValue).isInterned() + rs.getExpr().(StringValue).isInterned() ) } } diff --git a/java/ql/src/Likely Bugs/Concurrency/NonSynchronizedOverride.ql b/java/ql/src/Likely Bugs/Concurrency/NonSynchronizedOverride.ql index 3dcd44a5273d..25eaca21aba1 100644 --- a/java/ql/src/Likely Bugs/Concurrency/NonSynchronizedOverride.ql +++ b/java/ql/src/Likely Bugs/Concurrency/NonSynchronizedOverride.ql @@ -42,7 +42,7 @@ predicate delegatingOverride(Method sub, Method sup) { delegatingSuperCall(stmt.(ExprStmt).getExpr(), sup) or // ...or a `return` statement containing such a call. - delegatingSuperCall(stmt.(ReturnStmt).getResult(), sup) + delegatingSuperCall(stmt.(ReturnStmt).getExpr(), sup) ) ) } diff --git a/java/ql/src/Likely Bugs/Serialization/NonSerializableInnerClass.ql b/java/ql/src/Likely Bugs/Serialization/NonSerializableInnerClass.ql index 520dba86c418..316352b9b687 100644 --- a/java/ql/src/Likely Bugs/Serialization/NonSerializableInnerClass.ql +++ b/java/ql/src/Likely Bugs/Serialization/NonSerializableInnerClass.ql @@ -32,7 +32,7 @@ predicate castTo(ClassInstanceExpr cie, RefType to) { or exists(Call call, int n | call.getArgument(n) = cie | to = call.getCallee().getParameterType(n)) or - exists(ReturnStmt ret | ret.getResult() = cie | to = ret.getEnclosingCallable().getReturnType()) + exists(ReturnStmt ret | ret.getExpr() = cie | to = ret.getEnclosingCallable().getReturnType()) or exists(ArrayCreationExpr ace | ace.getInit().getAnInit() = cie | to = ace.getType().(Array).getComponentType() diff --git a/java/ql/src/Likely Bugs/Statements/Chaining.qll b/java/ql/src/Likely Bugs/Statements/Chaining.qll index bb7fba549e7b..a02c07fac42a 100644 --- a/java/ql/src/Likely Bugs/Statements/Chaining.qll +++ b/java/ql/src/Likely Bugs/Statements/Chaining.qll @@ -31,13 +31,13 @@ private predicate nonChaining(Method m) { private predicate nonChainingReturn(Method m, ReturnStmt ret) { // The wrong `this` is returned. - ret.getResult() instanceof ThisAccess and - ret.getResult().getType() != m.getDeclaringType() + ret.getExpr() instanceof ThisAccess and + ret.getExpr().getType() != m.getDeclaringType() or // A method call to the wrong method is returned. - ret.getResult() instanceof MethodCall and + ret.getExpr() instanceof MethodCall and exists(MethodCall delegateCall, Method delegate | - delegateCall = ret.getResult() and + delegateCall = ret.getExpr() and delegate = delegateCall.getMethod() | delegate.getDeclaringType() != m.getDeclaringType() @@ -54,7 +54,7 @@ private predicate nonChainingReturn(Method m, ReturnStmt ret) { or // Something else is returned. not ( - ret.getResult() instanceof ThisAccess or - ret.getResult() instanceof MethodCall + ret.getExpr() instanceof ThisAccess or + ret.getExpr() instanceof MethodCall ) } diff --git a/java/ql/src/Likely Bugs/Statements/ImpossibleCast.ql b/java/ql/src/Likely Bugs/Statements/ImpossibleCast.ql index 753c40774f6f..1232e775be50 100644 --- a/java/ql/src/Likely Bugs/Statements/ImpossibleCast.ql +++ b/java/ql/src/Likely Bugs/Statements/ImpossibleCast.ql @@ -45,13 +45,13 @@ predicate castFlow(ArrayCast ce, Variable v) { } predicate returnedFrom(ArrayCast ce, Method m) { - exists(ReturnStmt ret | ret.getEnclosingCallable() = m | ret.getResult() = ce) + exists(ReturnStmt ret | ret.getEnclosingCallable() = m | ret.getExpr() = ce) or exists(Variable v | castFlow(ce, v) | returnedVariableFrom(v, m)) } predicate returnedVariableFrom(Variable v, Method m) { - exists(ReturnStmt ret | ret.getResult() = v.getAnAccess() and ret.getEnclosingCallable() = m) + exists(ReturnStmt ret | ret.getExpr() = v.getAnAccess() and ret.getEnclosingCallable() = m) } predicate rawTypeConversion(RawType source, ParameterizedType target) { diff --git a/java/ql/src/Security/CWE/CWE-338/JHipsterGeneratedPRNG.ql b/java/ql/src/Security/CWE/CWE-338/JHipsterGeneratedPRNG.ql index c51e5d4acc57..d94436f2127c 100644 --- a/java/ql/src/Security/CWE/CWE-338/JHipsterGeneratedPRNG.ql +++ b/java/ql/src/Security/CWE/CWE-338/JHipsterGeneratedPRNG.ql @@ -41,7 +41,7 @@ private class VulnerableJHipsterRandomUtilMethod extends Method { this.getReturnType() instanceof TypeString and exists(ReturnStmt s | s = this.getBody().(SingletonBlock).getStmt() and - s.getResult() instanceof PredictableApacheRandomStringUtilsMethodCall + s.getExpr() instanceof PredictableApacheRandomStringUtilsMethodCall ) } } diff --git a/java/ql/src/Security/CWE/CWE-367/TOCTOURace.ql b/java/ql/src/Security/CWE/CWE-367/TOCTOURace.ql index 868085524337..521c7a1ca909 100644 --- a/java/ql/src/Security/CWE/CWE-367/TOCTOURace.ql +++ b/java/ql/src/Security/CWE/CWE-367/TOCTOURace.ql @@ -96,7 +96,7 @@ predicate probablyNeverEscapes(LocalVariableDecl v) { // Not assigned directly to another variable. not exists(Assignment a | a.getSource() = v.getAnAccess()) and // Not returned. - not exists(ReturnStmt r | r.getResult() = v.getAnAccess()) and + not exists(ReturnStmt r | r.getExpr() = v.getAnAccess()) and // All assignments are to new instances of a class. forex(Expr e | e = v.getAnAssignedValue() | e instanceof ClassInstanceExpr) } diff --git a/java/ql/src/Violations of Best Practice/Boxed Types/BoxedVariable.ql b/java/ql/src/Violations of Best Practice/Boxed Types/BoxedVariable.ql index fec9a2e8e442..713fdad5726f 100644 --- a/java/ql/src/Violations of Best Practice/Boxed Types/BoxedVariable.ql +++ b/java/ql/src/Violations of Best Practice/Boxed Types/BoxedVariable.ql @@ -35,7 +35,7 @@ predicate notDeliberatelyBoxed(LocalBoxedVar v) { ) or exists(ReturnStmt ret | - ret.getResult() = a and + ret.getExpr() = a and ret.getEnclosingCallable().getReturnType() instanceof RefType ) ) diff --git a/java/ql/src/Violations of Best Practice/Implementation Hiding/ExposeRepresentation.ql b/java/ql/src/Violations of Best Practice/Implementation Hiding/ExposeRepresentation.ql index b5d27655f8d9..205023202865 100644 --- a/java/ql/src/Violations of Best Practice/Implementation Hiding/ExposeRepresentation.ql +++ b/java/ql/src/Violations of Best Practice/Implementation Hiding/ExposeRepresentation.ql @@ -51,7 +51,7 @@ predicate storesArray(Callable c, int i, Field f) { predicate returnsArray(Callable c, Field f) { f.getDeclaringType() = c.getDeclaringType().getAnAncestor().getSourceDeclaration() and relevantType(f.getType()) and - exists(ReturnStmt rs | rs.getEnclosingCallable() = c and rs.getResult() = f.getAnAccess()) and + exists(ReturnStmt rs | rs.getEnclosingCallable() = c and rs.getExpr() = f.getAnAccess()) and not c.isStatic() } @@ -71,7 +71,7 @@ predicate mayWriteToArray(Expr modified) { ) or // return __array__; ... method()[1] = 0 - exists(ReturnStmt rs | modified = rs.getResult() and relevantType(modified.getType()) | + exists(ReturnStmt rs | modified = rs.getExpr() and relevantType(modified.getType()) | exists(Callable enclosing, MethodCall ma | enclosing = rs.getEnclosingCallable() and ma.getMethod().getSourceDeclaration() = enclosing | diff --git a/java/ql/src/Violations of Best Practice/Naming Conventions/ConfusingOverloading.ql b/java/ql/src/Violations of Best Practice/Naming Conventions/ConfusingOverloading.ql index 0a1e8785b4ec..fa3ea20f05f4 100644 --- a/java/ql/src/Violations of Best Practice/Naming Conventions/ConfusingOverloading.ql +++ b/java/ql/src/Violations of Best Practice/Naming Conventions/ConfusingOverloading.ql @@ -126,7 +126,7 @@ private predicate delegate(Method caller, Method callee) { exists(MethodCall ma | ma.getMethod() = callee | exists(Stmt stmt | stmt = caller.getBody().(SingletonBlock).getStmt() | wrappedAccess(stmt.(ExprStmt).getExpr(), ma) or - wrappedAccess(stmt.(ReturnStmt).getResult(), ma) + wrappedAccess(stmt.(ReturnStmt).getExpr(), ma) ) and forex(Parameter p, int i, Expr arg | p = caller.getParameter(i) and ma.getArgument(i) = arg | // The parameter is propagated without modification. diff --git a/java/ql/src/Violations of Best Practice/Naming Conventions/Shadowing.qll b/java/ql/src/Violations of Best Practice/Naming Conventions/Shadowing.qll index 561c57b7cd9b..02f00d4ffb22 100644 --- a/java/ql/src/Violations of Best Practice/Naming Conventions/Shadowing.qll +++ b/java/ql/src/Violations of Best Practice/Naming Conventions/Shadowing.qll @@ -3,7 +3,7 @@ import java predicate getterFor(Method m, Field f) { m.getName().matches("get%") and m.getDeclaringType() = f.getDeclaringType() and - exists(ReturnStmt ret | ret.getEnclosingCallable() = m and ret.getResult() = f.getAnAccess()) + exists(ReturnStmt ret | ret.getEnclosingCallable() = m and ret.getExpr() = f.getAnAccess()) } predicate setterFor(Method m, Field f) { diff --git a/java/ql/src/experimental/Security/CWE/CWE-094/SpringViewManipulationLib.qll b/java/ql/src/experimental/Security/CWE/CWE-094/SpringViewManipulationLib.qll index 5d65431b415a..c9dc2bda6c7b 100644 --- a/java/ql/src/experimental/Security/CWE/CWE-094/SpringViewManipulationLib.qll +++ b/java/ql/src/experimental/Security/CWE/CWE-094/SpringViewManipulationLib.qll @@ -125,10 +125,10 @@ private class StringFormatMethod extends StringCombiningMethod { class SpringViewManipulationSink extends DataFlow::ExprNode { SpringViewManipulationSink() { exists(ReturnStmt r, SpringRequestMappingMethod m | - r.getResult() = this.asExpr() and + r.getExpr() = this.asExpr() and m.getBody().getAStmt() = r and not m.isResponseBody() and - r.getResult().getType() instanceof TypeString + r.getExpr().getType() instanceof TypeString ) or exists(ConstructorCall c | c.getConstructedType() instanceof ModelAndView | diff --git a/java/ql/src/experimental/Security/CWE/CWE-295/JxBrowserWithoutCertValidation.ql b/java/ql/src/experimental/Security/CWE/CWE-295/JxBrowserWithoutCertValidation.ql index c53c2cacdaed..cb340ce0f69b 100644 --- a/java/ql/src/experimental/Security/CWE/CWE-295/JxBrowserWithoutCertValidation.ql +++ b/java/ql/src/experimental/Security/CWE/CWE-295/JxBrowserWithoutCertValidation.ql @@ -48,7 +48,7 @@ private class JxBrowserLoadHandler extends RefType { private predicate isOnCertificateErrorMethodSafe(Method m) { forex(ReturnStmt rs | rs.getEnclosingCallable() = m | - rs.getResult().(CompileTimeConstantExpr).getBooleanValue() = true + rs.getExpr().(CompileTimeConstantExpr).getBooleanValue() = true ) } diff --git a/java/ql/test/library-tests/frameworks/android/taint-database/flowSteps.ql b/java/ql/test/library-tests/frameworks/android/taint-database/flowSteps.ql index ae4f8ca0da02..578846438bee 100644 --- a/java/ql/test/library-tests/frameworks/android/taint-database/flowSteps.ql +++ b/java/ql/test/library-tests/frameworks/android/taint-database/flowSteps.ql @@ -9,7 +9,7 @@ module Config implements DataFlow::ConfigSig { source.asExpr().(MethodCall).getMethod().hasName("taint") } - predicate isSink(DataFlow::Node sink) { sink.asExpr() = any(ReturnStmt r).getResult() } + predicate isSink(DataFlow::Node sink) { sink.asExpr() = any(ReturnStmt r).getExpr() } } module Flow = TaintTracking::Global; diff --git a/java/ql/test/query-tests/lgtm-example-queries/returnstatement.ql b/java/ql/test/query-tests/lgtm-example-queries/returnstatement.ql index 8ace7e729314..fec039f24daa 100644 --- a/java/ql/test/query-tests/lgtm-example-queries/returnstatement.ql +++ b/java/ql/test/query-tests/lgtm-example-queries/returnstatement.ql @@ -9,5 +9,5 @@ import java from ReturnStmt r -where r.getResult() instanceof NullLiteral +where r.getExpr() instanceof NullLiteral select r From 4fcf3fbff8dc643c0d7b7410bf404bcb877bae12 Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Wed, 4 Feb 2026 14:30:00 +0100 Subject: [PATCH 299/433] Java: Make loop classes extend LoopStmt and use getBody instead of getStmt. --- .../lib/semmle/code/java/ControlFlowGraph.qll | 12 +-- .../lib/semmle/code/java/PrettyPrintAst.qll | 30 ++++---- java/ql/lib/semmle/code/java/Statement.qll | 76 +++++++++++-------- .../java/security/internal/ArraySizing.qll | 2 +- .../Likely Bugs/Termination/SpinOnField.ql | 6 +- 5 files changed, 70 insertions(+), 56 deletions(-) diff --git a/java/ql/lib/semmle/code/java/ControlFlowGraph.qll b/java/ql/lib/semmle/code/java/ControlFlowGraph.qll index bb3690dbbfc9..6d91788ba153 100644 --- a/java/ql/lib/semmle/code/java/ControlFlowGraph.qll +++ b/java/ql/lib/semmle/code/java/ControlFlowGraph.qll @@ -1427,7 +1427,7 @@ private module ControlFlowGraphImpl { condentry = first(for.getCondition()) or // ...or the body if the for doesn't include a condition. - not exists(for.getCondition()) and condentry = first(for.getStmt()) + not exists(for.getCondition()) and condentry = first(for.getBody()) | // From the entry point, which is the for statement itself, control goes to either the first init expression... n.asStmt() = for and result = first(for.getInit(0)) and completion = NormalCompletion() @@ -1448,7 +1448,7 @@ private module ControlFlowGraphImpl { // The true-successor of the condition is the body of the for loop. last(for.getCondition(), n, completion) and completion = BooleanCompletion(true, _) and - result = first(for.getStmt()) + result = first(for.getBody()) or // The updates execute sequentially, after which control is transferred to the condition. exists(int i | last(for.getUpdate(i), n, completion) and completion = NormalCompletion() | @@ -1458,7 +1458,7 @@ private module ControlFlowGraphImpl { ) or // The back edge of the loop: control goes to either the first update or the condition if no updates exist. - last(for.getStmt(), n, completion) and + last(for.getBody(), n, completion) and continues(completion, for) and ( result = first(for.getUpdate(0)) @@ -1479,11 +1479,11 @@ private module ControlFlowGraphImpl { or // ...and then control goes to the body of the loop. n.asExpr() = for.getVariable() and - result = first(for.getStmt()) and + result = first(for.getBody()) and completion = NormalCompletion() or // Finally, the back edge of the loop goes to reassign the variable. - last(for.getStmt(), n, completion) and + last(for.getBody(), n, completion) and continues(completion, for) and result.asExpr() = for.getVariable() ) @@ -1492,7 +1492,7 @@ private module ControlFlowGraphImpl { result = first(n.asStmt().(WhileStmt).getCondition()) and completion = NormalCompletion() or // ...and do-while loops start at the body. - result = first(n.asStmt().(DoStmt).getStmt()) and completion = NormalCompletion() + result = first(n.asStmt().(DoStmt).getBody()) and completion = NormalCompletion() or exists(LoopStmt loop | loop instanceof WhileStmt or loop instanceof DoStmt | // Control goes from the condition via a true-completion to the body... diff --git a/java/ql/lib/semmle/code/java/PrettyPrintAst.qll b/java/ql/lib/semmle/code/java/PrettyPrintAst.qll index ac707c849dde..59a59cd9cdd0 100644 --- a/java/ql/lib/semmle/code/java/PrettyPrintAst.qll +++ b/java/ql/lib/semmle/code/java/PrettyPrintAst.qll @@ -577,7 +577,7 @@ private class PpForStmt extends PpAst, ForStmt { or i = 1 + this.lastUpdateIndex() and result = ")" or - i = 2 + this.lastUpdateIndex() and result = " " and this.getStmt() instanceof BlockStmt + i = 2 + this.lastUpdateIndex() and result = " " and this.getBody() instanceof BlockStmt } private int lastInitIndex() { result = 3 + 2 * max(int j | exists(this.getInit(j))) } @@ -587,7 +587,7 @@ private class PpForStmt extends PpAst, ForStmt { } override predicate newline(int i) { - i = 2 + this.lastUpdateIndex() and not this.getStmt() instanceof BlockStmt + i = 2 + this.lastUpdateIndex() and not this.getBody() instanceof BlockStmt } override PpAst getChild(int i) { @@ -599,11 +599,11 @@ private class PpForStmt extends PpAst, ForStmt { or exists(int j | result = this.getUpdate(j) and i = 4 + this.lastInitIndex() + 2 * j) or - i = 3 + this.lastUpdateIndex() and result = this.getStmt() + i = 3 + this.lastUpdateIndex() and result = this.getBody() } override predicate indents(int i) { - i = 3 + this.lastUpdateIndex() and not this.getStmt() instanceof BlockStmt + i = 3 + this.lastUpdateIndex() and not this.getBody() instanceof BlockStmt } } @@ -616,7 +616,7 @@ private class PpEnhancedForStmt extends PpAst, EnhancedForStmt { i = 4 and result = " : " or i = 6 and - if this.getStmt() instanceof BlockStmt then result = ") " else result = ")" + if this.getBody() instanceof BlockStmt then result = ") " else result = ")" } override PpAst getChild(int i) { @@ -626,10 +626,10 @@ private class PpEnhancedForStmt extends PpAst, EnhancedForStmt { or i = 5 and result = this.getExpr() or - i = 7 and result = this.getStmt() + i = 7 and result = this.getBody() } - override predicate indents(int i) { i = 7 and not this.getStmt() instanceof BlockStmt } + override predicate indents(int i) { i = 7 and not this.getBody() instanceof BlockStmt } } private class PpWhileStmt extends PpAst, WhileStmt { @@ -638,40 +638,40 @@ private class PpWhileStmt extends PpAst, WhileStmt { or i = 2 and result = ")" or - i = 3 and result = " " and this.getStmt() instanceof BlockStmt + i = 3 and result = " " and this.getBody() instanceof BlockStmt } - override predicate newline(int i) { i = 3 and not this.getStmt() instanceof BlockStmt } + override predicate newline(int i) { i = 3 and not this.getBody() instanceof BlockStmt } override PpAst getChild(int i) { i = 1 and result = this.getCondition() or - i = 4 and result = this.getStmt() + i = 4 and result = this.getBody() } - override predicate indents(int i) { i = 4 and not this.getStmt() instanceof BlockStmt } + override predicate indents(int i) { i = 4 and not this.getBody() instanceof BlockStmt } } private class PpDoStmt extends PpAst, DoStmt { override string getPart(int i) { i = 0 and result = "do" or - i in [1, 3] and result = " " and this.getStmt() instanceof BlockStmt + i in [1, 3] and result = " " and this.getBody() instanceof BlockStmt or i = 4 and result = "while (" or i = 6 and result = ");" } - override predicate newline(int i) { i in [1, 3] and not this.getStmt() instanceof BlockStmt } + override predicate newline(int i) { i in [1, 3] and not this.getBody() instanceof BlockStmt } override PpAst getChild(int i) { - i = 2 and result = this.getStmt() + i = 2 and result = this.getBody() or i = 5 and result = this.getCondition() } - override predicate indents(int i) { i = 2 and not this.getStmt() instanceof BlockStmt } + override predicate indents(int i) { i = 2 and not this.getBody() instanceof BlockStmt } } private class PpTryStmt extends PpAst, TryStmt { diff --git a/java/ql/lib/semmle/code/java/Statement.qll b/java/ql/lib/semmle/code/java/Statement.qll index 3f138ac0fa27..d71a678d669d 100644 --- a/java/ql/lib/semmle/code/java/Statement.qll +++ b/java/ql/lib/semmle/code/java/Statement.qll @@ -140,7 +140,7 @@ class IfStmt extends ConditionalStmt, @ifstmt { } /** A `for` loop. */ -class ForStmt extends ConditionalStmt, @forstmt { +class ForStmt extends ConditionalStmt, LoopStmtImpl, @forstmt { /** * Gets an initializer expression of the loop. * @@ -167,8 +167,15 @@ class ForStmt extends ConditionalStmt, @forstmt { index = result.getIndex() - 3 } + /** + * DEPRECATED: Use getBody() instead. + * + * Gets the body of this `for` loop. + */ + deprecated Stmt getStmt() { result.getParent() = this and result.getIndex() = 2 } + /** Gets the body of this `for` loop. */ - Stmt getStmt() { result.getParent() = this and result.getIndex() = 2 } + override Stmt getBody() { result.getParent() = this and result.getIndex() = 2 } /** * Gets a variable that is used as an iteration variable: it is defined, @@ -191,7 +198,7 @@ class ForStmt extends ConditionalStmt, @forstmt { this.getCondition().getAChildExpr*() = result.getAnAccess() } - override string pp() { result = "for (...;...;...) " + this.getStmt().pp() } + override string pp() { result = "for (...;...;...) " + this.getBody().pp() } override string toString() { result = "for (...;...;...)" } @@ -201,17 +208,24 @@ class ForStmt extends ConditionalStmt, @forstmt { } /** An enhanced `for` loop. (Introduced in Java 5.) */ -class EnhancedForStmt extends Stmt, @enhancedforstmt { +class EnhancedForStmt extends LoopStmtImpl, @enhancedforstmt { /** Gets the local variable declaration expression of this enhanced `for` loop. */ LocalVariableDeclExpr getVariable() { result.getParent() = this } /** Gets the expression over which this enhanced `for` loop iterates. */ Expr getExpr() { result.isNthChildOf(this, 1) } + /** + * DEPRECATED: Use getBody() instead. + * + * Gets the body of this enhanced `for` loop. + */ + deprecated Stmt getStmt() { result.getParent() = this } + /** Gets the body of this enhanced `for` loop. */ - Stmt getStmt() { result.getParent() = this } + override Stmt getBody() { result.getParent() = this } - override string pp() { result = "for (... : ...) " + this.getStmt().pp() } + override string pp() { result = "for (... : ...) " + this.getBody().pp() } override string toString() { result = "for (... : ...)" } @@ -221,14 +235,21 @@ class EnhancedForStmt extends Stmt, @enhancedforstmt { } /** A `while` loop. */ -class WhileStmt extends ConditionalStmt, @whilestmt { +class WhileStmt extends ConditionalStmt, LoopStmtImpl, @whilestmt { /** Gets the boolean condition of this `while` loop. */ override Expr getCondition() { result.getParent() = this } + /** + * DEPRECATED: Use getBody() instead. + * + * Gets the body of this `while` loop. + */ + deprecated Stmt getStmt() { result.getParent() = this } + /** Gets the body of this `while` loop. */ - Stmt getStmt() { result.getParent() = this } + override Stmt getBody() { result.getParent() = this } - override string pp() { result = "while (...) " + this.getStmt().pp() } + override string pp() { result = "while (...) " + this.getBody().pp() } override string toString() { result = "while (...)" } @@ -238,14 +259,21 @@ class WhileStmt extends ConditionalStmt, @whilestmt { } /** A `do` loop. */ -class DoStmt extends ConditionalStmt, @dostmt { +class DoStmt extends ConditionalStmt, LoopStmtImpl, @dostmt { /** Gets the condition of this `do` loop. */ override Expr getCondition() { result.getParent() = this } + /** + * DEPRECATED: Use getBody() instead. + * + * Gets the body of this `do` loop. + */ + deprecated Stmt getStmt() { result.getParent() = this } + /** Gets the body of this `do` loop. */ - Stmt getStmt() { result.getParent() = this } + override Stmt getBody() { result.getParent() = this } - override string pp() { result = "do " + this.getStmt().pp() + " while (...)" } + override string pp() { result = "do " + this.getBody().pp() + " while (...)" } override string toString() { result = "do ... while (...)" } @@ -258,30 +286,16 @@ class DoStmt extends ConditionalStmt, @dostmt { * A loop statement, including `for`, enhanced `for`, * `while` and `do` statements. */ -class LoopStmt extends Stmt { - LoopStmt() { - this instanceof ForStmt or - this instanceof EnhancedForStmt or - this instanceof WhileStmt or - this instanceof DoStmt - } - +abstract private class LoopStmtImpl extends Stmt { /** Gets the body of this loop statement. */ - Stmt getBody() { - result = this.(ForStmt).getStmt() or - result = this.(EnhancedForStmt).getStmt() or - result = this.(WhileStmt).getStmt() or - result = this.(DoStmt).getStmt() - } + abstract Stmt getBody(); /** Gets the boolean condition of this loop statement. */ - Expr getCondition() { - result = this.(ForStmt).getCondition() or - result = this.(WhileStmt).getCondition() or - result = this.(DoStmt).getCondition() - } + Expr getCondition() { none() } } +final class LoopStmt = LoopStmtImpl; + /** A `try` statement. */ class TryStmt extends Stmt, @trystmt { /** Gets the block of the `try` statement. */ diff --git a/java/ql/lib/semmle/code/java/security/internal/ArraySizing.qll b/java/ql/lib/semmle/code/java/security/internal/ArraySizing.qll index 185b1b8a46e2..ab9ac70e7c44 100644 --- a/java/ql/lib/semmle/code/java/security/internal/ArraySizing.qll +++ b/java/ql/lib/semmle/code/java/security/internal/ArraySizing.qll @@ -49,7 +49,7 @@ class PointlessLoop extends WhileStmt { this.getCondition().(BooleanLiteral).getBooleanValue() = true and // The only `break` must be the last statement. forall(BreakStmt break | break.getTarget() = this | - this.getStmt().(BlockStmt).getLastStmt() = break + this.getBody().(BlockStmt).getLastStmt() = break ) and // No `continue` statements. not exists(ContinueStmt continue | continue.getTarget() = this) diff --git a/java/ql/src/Likely Bugs/Termination/SpinOnField.ql b/java/ql/src/Likely Bugs/Termination/SpinOnField.ql index 7cfb2308c966..1b4185531cad 100644 --- a/java/ql/src/Likely Bugs/Termination/SpinOnField.ql +++ b/java/ql/src/Likely Bugs/Termination/SpinOnField.ql @@ -37,12 +37,12 @@ class EmptyLoop extends Stmt { exists(ForStmt stmt | stmt = this | not exists(stmt.getAnInit()) and not exists(stmt.getAnUpdate()) and - stmt.getStmt() instanceof Empty + stmt.getBody() instanceof Empty ) or - this.(WhileStmt).getStmt() instanceof Empty + this.(WhileStmt).getBody() instanceof Empty or - this.(DoStmt).getStmt() instanceof Empty + this.(DoStmt).getBody() instanceof Empty } Expr getCondition() { From 2d02908e7fa5acfdd68f430ef0546a7d54c5d7ba Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Wed, 4 Feb 2026 14:37:15 +0100 Subject: [PATCH 300/433] Java: Add change note. --- java/ql/lib/change-notes/2026-02-04-renames.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 java/ql/lib/change-notes/2026-02-04-renames.md diff --git a/java/ql/lib/change-notes/2026-02-04-renames.md b/java/ql/lib/change-notes/2026-02-04-renames.md new file mode 100644 index 000000000000..9392bcbb4f62 --- /dev/null +++ b/java/ql/lib/change-notes/2026-02-04-renames.md @@ -0,0 +1,12 @@ +--- +category: deprecated +--- +* Renamed the following predicates to increase uniformity across languages. The `getBody` predicate already existed on `LoopStmt`, but is now properly inherited. + - `UnaryExpr.getExpr` to `getOperand`. + - `ConditionalExpr.getTrueExpr` to `getThen`. + - `ConditionalExpr.getFalseExpr` to `getElse`. + - `ReturnStmt.getResult` to `getExpr`. + - `WhileStmt.getStmt` to `getBody`. + - `DoStmt.getStmt` to `getBody`. + - `ForStmt.getStmt` to `getBody`. + - `EnhancedForStmt.getStmt` to `getBody`. From 0a884251708c721c6a4b0c0ae120dd9360494c81 Mon Sep 17 00:00:00 2001 From: "REDMOND\\brodes" Date: Wed, 4 Feb 2026 09:04:22 -0500 Subject: [PATCH 301/433] Python: Altering SSRF MaD to use 'request-forgery' tag. Update to test cases expected results, off by one line. Changed to using ModelOutput::sinkNode. --- .../frameworks/Azure.Keyvault.model.yml | 8 +-- .../python/frameworks/Azure.Storage.model.yml | 58 +++++++++---------- .../lib/semmle/python/frameworks/SSRFSink.qll | 4 +- .../FullServerSideRequestForgery.expected | 6 +- .../PartialServerSideRequestForgery.expected | 10 ++-- 5 files changed, 43 insertions(+), 43 deletions(-) diff --git a/python/ql/lib/semmle/python/frameworks/Azure.Keyvault.model.yml b/python/ql/lib/semmle/python/frameworks/Azure.Keyvault.model.yml index 8f4efc9f4fe4..d792c72425ab 100644 --- a/python/ql/lib/semmle/python/frameworks/Azure.Keyvault.model.yml +++ b/python/ql/lib/semmle/python/frameworks/Azure.Keyvault.model.yml @@ -3,7 +3,7 @@ extensions: pack: codeql/python-all extensible: sinkModel data: - - ['azure.keyvault.certificates.CertificateClient!', 'Call.Argument[0,vault_url:]', 'ssrf'] - - ['azure.keyvault.certificates.DeletedCertificate!', 'Call.Argument[recovery_id:]', 'ssrf'] - - ['azure.keyvault.keys.KeyClient!', 'Call.Argument[0,vault_url:]', 'ssrf'] - - ['azure.keyvault.secrets.SecretClient!', 'Call.Argument[0,vault_url:]', 'ssrf'] \ No newline at end of file + - ['azure.keyvault.certificates.CertificateClient!', 'Call.Argument[0,vault_url:]', 'request-forgery'] + - ['azure.keyvault.certificates.DeletedCertificate!', 'Call.Argument[recovery_id:]', 'request-forgery'] + - ['azure.keyvault.keys.KeyClient!', 'Call.Argument[0,vault_url:]', 'request-forgery'] + - ['azure.keyvault.secrets.SecretClient!', 'Call.Argument[0,vault_url:]', 'request-forgery'] \ No newline at end of file diff --git a/python/ql/lib/semmle/python/frameworks/Azure.Storage.model.yml b/python/ql/lib/semmle/python/frameworks/Azure.Storage.model.yml index 974e6334a0ed..b8d857b95f90 100644 --- a/python/ql/lib/semmle/python/frameworks/Azure.Storage.model.yml +++ b/python/ql/lib/semmle/python/frameworks/Azure.Storage.model.yml @@ -3,32 +3,32 @@ extensions: pack: codeql/python-all extensible: sinkModel data: - - ['azure.storage.blob.BlobClient!', 'Call.Argument[0,account_url:]', 'ssrf'] - - ['azure.storage.blob.BlobClient', 'Member[append_block_from_url].Argument[0,copy_source_url:]', 'ssrf'] - - ['azure.storage.blob.BlobClient', 'Member[get_page_range_diff_for_managed_disk].Argument[0,previous_snapshot_url:]', 'ssrf'] - - ['azure.storage.blob.BlobClient', 'Member[stage_block_from_url].Argument[1,source_url:]', 'ssrf'] - - ['azure.storage.blob.BlobClient', 'Member[start_copy_from_url].Argument[0,source_url:]', 'ssrf'] - - ['azure.storage.blob.BlobClient', 'Member[upload_blob_from_url].Argument[0,source_url:]', 'ssrf'] - - ['azure.storage.blob.BlobClient', 'Member[upload_pages_from_url].Argument[0,source_url:]', 'ssrf'] - - ['azure.storage.blob.BlobClient!', 'Member[from_blob_url].Argument[0,blob_url:]', 'ssrf'] - - ['azure.storage.blob.BlobServiceClient!', 'Call.Argument[0,account_url:]', 'ssrf'] - - ['azure.storage.blob.ContainerClient!', 'Call.Argument[0,account_url:]', 'ssrf'] - - ['azure.storage.blob.ContainerClient!', 'Member[from_container_url].Argument[0,container_url:]', 'ssrf'] - - ['azure', 'Member[storage].Member[blob].Member[download_blob_from_url].Argument[0,blob_url:]', 'ssrf'] - - ['azure', 'Member[storage].Member[blob].Member[upload_blob_to_url].Argument[0,blob_url:]', 'ssrf'] - - ['azure.storage.filedatalake.DataLakeDirectoryClient!', 'Call.Argument[0,account_url:]', 'ssrf'] - - ['azure.storage.filedatalake.DataLakeFileClient!', 'Call.Argument[0,account_url:]', 'ssrf'] - - ['azure.storage.filedatalake.DataLakeServiceClient!', 'Call.Argument[0,account_url:]', 'ssrf'] - - ['azure.storage.filedatalake.FileSystemClient!', 'Call.Argument[0,account_url:]', 'ssrf'] - - ['azure.storage.fileshare.ShareClient!', 'Call.Argument[0,account_url:]', 'ssrf'] - - ['azure.storage.fileshare.ShareClient!', 'Member[from_share_url].Argument[0,share_url:]', 'ssrf'] - - ['azure.storage.fileshare.ShareDirectoryClient!', 'Call.Argument[0,account_url:]', 'ssrf'] - - ['azure.storage.fileshare.ShareDirectoryClient!', 'Member[from_directory_url].Argument[0,directory_url:]', 'ssrf'] - - ['azure.storage.fileshare.ShareFileClient!', 'Call.Argument[0,account_url:]', 'ssrf'] - - ['azure.storage.fileshare.ShareFileClient!', 'Member[from_file_url].Argument[0,file_url:]', 'ssrf'] - - ['azure.storage.fileshare.ShareFileClient', 'Member[start_copy_from_url].Argument[0,source_url:]', 'ssrf'] - - ['azure.storage.fileshare.ShareFileClient', 'Member[upload_range_from_url].Argument[0,source_url:]', 'ssrf'] - - ['azure.storage.fileshare.ShareServiceClient!', 'Call.Argument[0,account_url:]', 'ssrf'] - - ['azure.storage.queue.QueueClient!', 'Call.Argument[0,account_url:]', 'ssrf'] - - ['azure.storage.queue.QueueClient', 'Member[from_queue_url].Argument[0,queue_url:]', 'ssrf'] - - ['azure.storage.queue.QueueServiceClient!', 'Call.Argument[0,account_url:]', 'ssrf'] \ No newline at end of file + - ['azure.storage.blob.BlobClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient', 'Member[append_block_from_url].Argument[0,copy_source_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient', 'Member[get_page_range_diff_for_managed_disk].Argument[0,previous_snapshot_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient', 'Member[stage_block_from_url].Argument[1,source_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient', 'Member[start_copy_from_url].Argument[0,source_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient', 'Member[upload_blob_from_url].Argument[0,source_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient', 'Member[upload_pages_from_url].Argument[0,source_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobClient!', 'Member[from_blob_url].Argument[0,blob_url:]', 'request-forgery'] + - ['azure.storage.blob.BlobServiceClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.blob.ContainerClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.blob.ContainerClient!', 'Member[from_container_url].Argument[0,container_url:]', 'request-forgery'] + - ['azure', 'Member[storage].Member[blob].Member[download_blob_from_url].Argument[0,blob_url:]', 'request-forgery'] + - ['azure', 'Member[storage].Member[blob].Member[upload_blob_to_url].Argument[0,blob_url:]', 'request-forgery'] + - ['azure.storage.filedatalake.DataLakeDirectoryClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.filedatalake.DataLakeFileClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.filedatalake.DataLakeServiceClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.filedatalake.FileSystemClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareClient!', 'Member[from_share_url].Argument[0,share_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareDirectoryClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareDirectoryClient!', 'Member[from_directory_url].Argument[0,directory_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareFileClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareFileClient!', 'Member[from_file_url].Argument[0,file_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareFileClient', 'Member[start_copy_from_url].Argument[0,source_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareFileClient', 'Member[upload_range_from_url].Argument[0,source_url:]', 'request-forgery'] + - ['azure.storage.fileshare.ShareServiceClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.queue.QueueClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] + - ['azure.storage.queue.QueueClient', 'Member[from_queue_url].Argument[0,queue_url:]', 'request-forgery'] + - ['azure.storage.queue.QueueServiceClient!', 'Call.Argument[0,account_url:]', 'request-forgery'] \ No newline at end of file diff --git a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll index aeb228daf13b..d732701c0845 100644 --- a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll +++ b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll @@ -14,7 +14,7 @@ private import semmle.python.frameworks.data.ModelsAsData */ module SsrfMaDModel { /** - * An HTTP request modeled from `ssrf` sinks, modeled using MaD. + * An HTTP request modeled from `request-forgery` sinks, modeled using MaD. */ class SsrfSink extends Http::Client::Request::Range instanceof API::CallNode { DataFlow::Node urlArg; @@ -25,7 +25,7 @@ module SsrfMaDModel { or this.getArgByName(_) = urlArg ) and - urlArg = ModelOutput::getASinkNode("ssrf").asSink() + ModelOutput::sinkNode(urlArg, "request-forgery") } override DataFlow::Node getAUrlPart() { result = urlArg } diff --git a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/FullServerSideRequestForgery.expected b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/FullServerSideRequestForgery.expected index ae554fa812c9..339703184610 100644 --- a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/FullServerSideRequestForgery.expected +++ b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/FullServerSideRequestForgery.expected @@ -45,7 +45,7 @@ edges | test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | provenance | Sink:MaD:38 | | test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | provenance | Sink:MaD:14 | | test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | provenance | Sink:MaD:26 | -| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:33:18:33:25 | ControlFlowNode for full_url | provenance | Sink:MaD:27 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:32:18:32:25 | ControlFlowNode for full_url | provenance | Sink:MaD:27 | | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:1:26:1:32 | ControlFlowNode for request | provenance | | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | test_http_client.py:9:19:9:25 | ControlFlowNode for request | provenance | | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | test_http_client.py:10:19:10:25 | ControlFlowNode for request | provenance | | @@ -110,7 +110,7 @@ nodes | test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | | test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | | test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | -| test_azure_client.py:33:18:33:25 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:32:18:32:25 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | | test_http_client.py:9:5:9:15 | ControlFlowNode for unsafe_host | semmle.label | ControlFlowNode for unsafe_host | @@ -148,7 +148,7 @@ subpaths | test_azure_client.py:19:9:19:47 | ControlFlowNode for Attribute() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | | test_azure_client.py:21:9:21:39 | ControlFlowNode for KeyClient() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | | test_azure_client.py:23:9:23:89 | ControlFlowNode for Attribute() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | -| test_azure_client.py:32:5:37:5 | ControlFlowNode for download_blob_from_url() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:33:18:33:25 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:31:5:36:5 | ControlFlowNode for download_blob_from_url() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:32:18:32:25 | ControlFlowNode for full_url | The full URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:14:5:14:36 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:13:27:13:37 | ControlFlowNode for unsafe_host | The full URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:14:5:14:36 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:14:25:14:35 | ControlFlowNode for unsafe_path | The full URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:19:5:19:36 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:18:27:18:37 | ControlFlowNode for unsafe_host | The full URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | diff --git a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/PartialServerSideRequestForgery.expected b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/PartialServerSideRequestForgery.expected index bbe756e24b7c..bdcac7465387 100644 --- a/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/PartialServerSideRequestForgery.expected +++ b/python/ql/test/query-tests/Security/CWE-918-ServerSideRequestForgery/PartialServerSideRequestForgery.expected @@ -89,12 +89,12 @@ edges | test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:18:39:18:41 | ControlFlowNode for url | provenance | Sink:MaD:38 | | test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:20:19:20:21 | ControlFlowNode for url | provenance | Sink:MaD:14 | | test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:22:58:22:60 | ControlFlowNode for url | provenance | Sink:MaD:26 | -| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:27:18:27:20 | ControlFlowNode for url | provenance | Sink:MaD:27 | +| test_azure_client.py:13:5:13:7 | ControlFlowNode for url | test_azure_client.py:26:18:26:20 | ControlFlowNode for url | provenance | Sink:MaD:27 | | test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:17:32:17:39 | ControlFlowNode for full_url | provenance | Sink:MaD:15 | | test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:19:39:19:46 | ControlFlowNode for full_url | provenance | Sink:MaD:38 | | test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | provenance | Sink:MaD:14 | | test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | provenance | Sink:MaD:26 | -| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:33:18:33:25 | ControlFlowNode for full_url | provenance | Sink:MaD:27 | +| test_azure_client.py:14:5:14:12 | ControlFlowNode for full_url | test_azure_client.py:32:18:32:25 | ControlFlowNode for full_url | provenance | Sink:MaD:27 | | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:1:26:1:32 | ControlFlowNode for request | provenance | | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | test_http_client.py:9:19:9:25 | ControlFlowNode for request | provenance | | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | test_http_client.py:10:19:10:25 | ControlFlowNode for request | provenance | | @@ -207,8 +207,8 @@ nodes | test_azure_client.py:21:19:21:26 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | | test_azure_client.py:22:58:22:60 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | | test_azure_client.py:23:58:23:65 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | -| test_azure_client.py:27:18:27:20 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | -| test_azure_client.py:33:18:33:25 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | +| test_azure_client.py:26:18:26:20 | ControlFlowNode for url | semmle.label | ControlFlowNode for url | +| test_azure_client.py:32:18:32:25 | ControlFlowNode for full_url | semmle.label | ControlFlowNode for full_url | | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | semmle.label | ControlFlowNode for ImportMember | | test_http_client.py:1:26:1:32 | ControlFlowNode for request | semmle.label | ControlFlowNode for request | | test_http_client.py:9:5:9:15 | ControlFlowNode for unsafe_host | semmle.label | ControlFlowNode for unsafe_host | @@ -245,7 +245,7 @@ subpaths | test_azure_client.py:18:9:18:42 | ControlFlowNode for Attribute() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:18:39:18:41 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | | test_azure_client.py:20:9:20:34 | ControlFlowNode for KeyClient() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:20:19:20:21 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | | test_azure_client.py:22:9:22:84 | ControlFlowNode for Attribute() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:22:58:22:60 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | -| test_azure_client.py:26:5:31:5 | ControlFlowNode for download_blob_from_url() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:27:18:27:20 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | +| test_azure_client.py:25:5:30:5 | ControlFlowNode for download_blob_from_url() | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | test_azure_client.py:26:18:26:20 | ControlFlowNode for url | Part of the URL of this request depends on a $@. | test_azure_client.py:7:19:7:25 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:22:5:22:31 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:18:27:18:37 | ControlFlowNode for unsafe_host | Part of the URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:26:5:26:31 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:25:27:25:37 | ControlFlowNode for unsafe_host | Part of the URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | | test_http_client.py:29:5:29:36 | ControlFlowNode for Attribute() | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | test_http_client.py:29:25:29:35 | ControlFlowNode for unsafe_path | Part of the URL of this request depends on a $@. | test_http_client.py:1:26:1:32 | ControlFlowNode for ImportMember | user-provided value | From 83adf793e4bca2a0673dd0a50a67c6bd8fda3621 Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Wed, 4 Feb 2026 15:28:37 +0100 Subject: [PATCH 302/433] Cfg: Fix compilation. --- shared/controlflow/codeql/controlflow/Cfg.qll | 7 ++++--- shared/controlflow/codeql/controlflow/PrintGraph.qll | 6 +++--- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/shared/controlflow/codeql/controlflow/Cfg.qll b/shared/controlflow/codeql/controlflow/Cfg.qll index 6f9a3adfec46..157bf0ffd4f3 100644 --- a/shared/controlflow/codeql/controlflow/Cfg.qll +++ b/shared/controlflow/codeql/controlflow/Cfg.qll @@ -1122,6 +1122,9 @@ module MakeWithSplitting< /** Gets the scope of this node. */ CfgScope getScope() { result = getNodeCfgScope(this) } + /** Gets the enclosing callable of this node. */ + CfgScope getEnclosingCallable() { result = this.getScope() } + /** Gets a successor node of a given type, if any. */ Node getASuccessor(SuccessorType t) { result = getASuccessor(this, t) } @@ -1315,9 +1318,7 @@ module MakeWithSplitting< private module PrintGraphInput implements Pp::InputSig { class Callable = CfgScope; - class ControlFlowNode extends Node { - Callable getEnclosingCallable() { result = this.getScope() } - } + class ControlFlowNode = Node; ControlFlowNode getASuccessor(ControlFlowNode n, SuccessorType t) { result = n.getASuccessor(t) diff --git a/shared/controlflow/codeql/controlflow/PrintGraph.qll b/shared/controlflow/codeql/controlflow/PrintGraph.qll index c09aeeff71cb..635b671888f6 100644 --- a/shared/controlflow/codeql/controlflow/PrintGraph.qll +++ b/shared/controlflow/codeql/controlflow/PrintGraph.qll @@ -102,13 +102,13 @@ module PrintGraph Input> { /** Provides the input to `ViewCfgQuery`. */ signature module ViewCfgQueryInputSig { - /** The source file selected in the IDE. Should be an `external` predicate. */ + /** Gets the source file selected in the IDE. Should be an `external` predicate. */ string selectedSourceFile(); - /** The source line selected in the IDE. Should be an `external` predicate. */ + /** Gets the source line selected in the IDE. Should be an `external` predicate. */ int selectedSourceLine(); - /** The source column selected in the IDE. Should be an `external` predicate. */ + /** Gets the source column selected in the IDE. Should be an `external` predicate. */ int selectedSourceColumn(); /** From 32fe12a6dd6151c6688836626c69fbf3e2cf77e3 Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Thu, 5 Feb 2026 08:51:27 +0100 Subject: [PATCH 303/433] Java: Delay deprecation a bit. --- java/ql/lib/semmle/code/java/Statement.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/ql/lib/semmle/code/java/Statement.qll b/java/ql/lib/semmle/code/java/Statement.qll index d71a678d669d..b74489e24f4a 100644 --- a/java/ql/lib/semmle/code/java/Statement.qll +++ b/java/ql/lib/semmle/code/java/Statement.qll @@ -646,7 +646,7 @@ class ReturnStmt extends Stmt, @returnstmt { * * Gets the expression returned by this `return` statement, if any. */ - deprecated Expr getResult() { result.getParent() = this } + Expr getResult() { result.getParent() = this } /** Gets the expression returned by this `return` statement, if any. */ Expr getExpr() { result.getParent() = this } From 81977f11a10da519b1fb2adc1342690b585b8b91 Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Thu, 5 Feb 2026 08:59:28 +0100 Subject: [PATCH 304/433] Cfg: qldoc + overlay fixups. --- shared/controlflow/codeql/controlflow/PrintGraph.qll | 3 +++ 1 file changed, 3 insertions(+) diff --git a/shared/controlflow/codeql/controlflow/PrintGraph.qll b/shared/controlflow/codeql/controlflow/PrintGraph.qll index 635b671888f6..c4a942feab23 100644 --- a/shared/controlflow/codeql/controlflow/PrintGraph.qll +++ b/shared/controlflow/codeql/controlflow/PrintGraph.qll @@ -3,6 +3,8 @@ * CFG" query. Also provides modules for printing control flow graphs in tests * and as Mermaid diagrams. */ +overlay[local?] +module; private import codeql.util.FileSystem private import codeql.util.Location @@ -22,6 +24,7 @@ signature module InputSig { ControlFlowNode getASuccessor(ControlFlowNode n, SuccessorType t); } +/** Provides modules for printing control flow graphs. */ module PrintGraph Input> { private import Input From 11003e685daeb53d0d91692de55695d05da895cd Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Thu, 5 Feb 2026 10:37:19 +0100 Subject: [PATCH 305/433] Java: Fix qldoc --- java/ql/lib/semmle/code/java/Expr.qll | 6 +++--- java/ql/lib/semmle/code/java/Statement.qll | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/java/ql/lib/semmle/code/java/Expr.qll b/java/ql/lib/semmle/code/java/Expr.qll index d4b43a9dfab4..c609c35cd71e 100644 --- a/java/ql/lib/semmle/code/java/Expr.qll +++ b/java/ql/lib/semmle/code/java/Expr.qll @@ -1040,7 +1040,7 @@ class ReferenceEqualityTest extends EqualityTest { /** A common super-class that represents unary operator expressions. */ class UnaryExpr extends Expr, @unaryexpr { /** - * DEPRECATED: Use getOperand() instead. + * DEPRECATED: Use `getOperand()` instead. * * Gets the operand expression. */ @@ -1464,7 +1464,7 @@ class ConditionalExpr extends Expr, @conditionalexpr { Expr getCondition() { result.isNthChildOf(this, 0) } /** - * DEPRECATED: Use getThen() instead. + * DEPRECATED: Use `getThen()` instead. * * Gets the expression that is evaluated if the condition of this * conditional expression evaluates to `true`. @@ -1472,7 +1472,7 @@ class ConditionalExpr extends Expr, @conditionalexpr { deprecated Expr getTrueExpr() { result.isNthChildOf(this, 1) } /** - * DEPRECATED: Use getElse() instead. + * DEPRECATED: Use `getElse()` instead. * * Gets the expression that is evaluated if the condition of this * conditional expression evaluates to `false`. diff --git a/java/ql/lib/semmle/code/java/Statement.qll b/java/ql/lib/semmle/code/java/Statement.qll index b74489e24f4a..942f5283039e 100644 --- a/java/ql/lib/semmle/code/java/Statement.qll +++ b/java/ql/lib/semmle/code/java/Statement.qll @@ -168,7 +168,7 @@ class ForStmt extends ConditionalStmt, LoopStmtImpl, @forstmt { } /** - * DEPRECATED: Use getBody() instead. + * DEPRECATED: Use `getBody()` instead. * * Gets the body of this `for` loop. */ @@ -216,7 +216,7 @@ class EnhancedForStmt extends LoopStmtImpl, @enhancedforstmt { Expr getExpr() { result.isNthChildOf(this, 1) } /** - * DEPRECATED: Use getBody() instead. + * DEPRECATED: Use `getBody()` instead. * * Gets the body of this enhanced `for` loop. */ @@ -240,7 +240,7 @@ class WhileStmt extends ConditionalStmt, LoopStmtImpl, @whilestmt { override Expr getCondition() { result.getParent() = this } /** - * DEPRECATED: Use getBody() instead. + * DEPRECATED: Use `getBody()` instead. * * Gets the body of this `while` loop. */ @@ -264,7 +264,7 @@ class DoStmt extends ConditionalStmt, LoopStmtImpl, @dostmt { override Expr getCondition() { result.getParent() = this } /** - * DEPRECATED: Use getBody() instead. + * DEPRECATED: Use `getBody()` instead. * * Gets the body of this `do` loop. */ @@ -642,7 +642,7 @@ class SynchronizedStmt extends Stmt, @synchronizedstmt { /** A `return` statement. */ class ReturnStmt extends Stmt, @returnstmt { /** - * DEPRECATED: Use getExpr() instead. + * DEPRECATED: Use `getExpr()` instead. * * Gets the expression returned by this `return` statement, if any. */ From f79bd3f4cfddd44633b3070b11ddb6c3d05a864c Mon Sep 17 00:00:00 2001 From: Paolo Tranquilli Date: Thu, 5 Feb 2026 12:14:59 +0100 Subject: [PATCH 306/433] C#: accept location changes in test --- .../MissingAntiForgeryTokenValidation.expected | 2 +- .../CWE-352/missing/MissingAntiForgeryTokenValidation.expected | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.expected b/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.expected index 7a4135e441d6..360b909cd0fa 100644 --- a/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.expected +++ b/csharp/ql/test/query-tests/Security Features/CWE-352/missing-aspnetcore/MissingAntiForgeryTokenValidation.expected @@ -1,2 +1,2 @@ | MissingAntiForgeryTokenValidation.cs:7:25:7:29 | Login | Method 'Login' handles a POST request without performing CSRF token validation. | -| MissingAntiForgeryTokenValidation.cs:47:25:47:47 | NoInheritedValidation | Method 'NoInheritedValidation' handles a POST request without performing CSRF token validation. | +| MissingAntiForgeryTokenValidation.cs:58:25:58:45 | NoInheritedValidation | Method 'NoInheritedValidation' handles a POST request without performing CSRF token validation. | diff --git a/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.expected b/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.expected index 7a4135e441d6..360b909cd0fa 100644 --- a/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.expected +++ b/csharp/ql/test/query-tests/Security Features/CWE-352/missing/MissingAntiForgeryTokenValidation.expected @@ -1,2 +1,2 @@ | MissingAntiForgeryTokenValidation.cs:7:25:7:29 | Login | Method 'Login' handles a POST request without performing CSRF token validation. | -| MissingAntiForgeryTokenValidation.cs:47:25:47:47 | NoInheritedValidation | Method 'NoInheritedValidation' handles a POST request without performing CSRF token validation. | +| MissingAntiForgeryTokenValidation.cs:58:25:58:45 | NoInheritedValidation | Method 'NoInheritedValidation' handles a POST request without performing CSRF token validation. | From e26c1994267a0e67bf4bacf4ab6ba0b901380140 Mon Sep 17 00:00:00 2001 From: idrissrio Date: Mon, 2 Feb 2026 11:34:34 +0100 Subject: [PATCH 307/433] C/C++ overlay: use files table instead of `overlayChangedFiles` for overlay discard --- .../lib/semmle/code/cpp/internal/Overlay.qll | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll b/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll index 8035a09809af..7e98177f3236 100644 --- a/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll +++ b/cpp/ql/lib/semmle/code/cpp/internal/Overlay.qll @@ -64,17 +64,27 @@ private string getMultiLocationFilePath(@element e) { overlay[local] private predicate isBase() { not isOverlay() } +/** + * Holds if `path` was extracted in the overlay database. + */ +overlay[local] +private predicate overlayHasFile(string path) { + isOverlay() and + files(_, path) and + path != "" +} + /** * Discards an element from the base variant if: - * - It has a single location in a changed file, or - * - All of its locations are in changed files. + * - It has a single location in a file extracted in the overlay, or + * - All of its locations are in files extracted in the overlay. */ overlay[discard_entity] private predicate discardElement(@element e) { isBase() and ( - overlayChangedFiles(getSingleLocationFilePath(e)) + overlayHasFile(getSingleLocationFilePath(e)) or - forex(string path | path = getMultiLocationFilePath(e) | overlayChangedFiles(path)) + forex(string path | path = getMultiLocationFilePath(e) | overlayHasFile(path)) ) } From 025f73301bc2bc800368590b3991b7f51da07e4a Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Thu, 29 Jan 2026 17:12:40 +0100 Subject: [PATCH 308/433] Rust: Move some overloading tests into a separate file --- .../PathResolutionConsistency.expected | 2 +- .../test/library-tests/type-inference/main.rs | 181 +- .../type-inference/overloading.rs | 180 + .../type-inference/type-inference.expected | 16070 ++++++++-------- 4 files changed, 8217 insertions(+), 8216 deletions(-) create mode 100644 rust/ql/test/library-tests/type-inference/overloading.rs diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected index 5e7cfcf2baa5..1140950774c7 100644 --- a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected @@ -1,2 +1,2 @@ multipleResolvedTargets -| main.rs:2902:13:2902:17 | x.f() | +| main.rs:2723:13:2723:17 | x.f() | diff --git a/rust/ql/test/library-tests/type-inference/main.rs b/rust/ql/test/library-tests/type-inference/main.rs index b4f9b04f56f2..d150efbe2986 100644 --- a/rust/ql/test/library-tests/type-inference/main.rs +++ b/rust/ql/test/library-tests/type-inference/main.rs @@ -184,34 +184,6 @@ mod trait_visibility { } } -mod method_call_trait_path_disambig { - trait FirstTrait { - // FirstTrait::method - fn method(&self) -> bool { - true - } - } - trait SecondTrait { - // SecondTrait::method - fn method(&self) -> i64 { - 1 - } - } - struct S; - impl FirstTrait for S {} - impl SecondTrait for S {} - - fn _test() { - let s = S; - - let _b1 = FirstTrait::method(&s); // $ type=_b1:bool target=FirstTrait::method - let _b2 = ::method(&s); // $ type=_b2:bool target=FirstTrait::method - - let _n1 = SecondTrait::method(&s); // $ type=_n1:i64 target=SecondTrait::method - let _n2 = ::method(&s); // $ type=_n2:i64 target=SecondTrait::method - } -} - mod method_non_parametric_impl { #[derive(Debug)] struct MyThing { @@ -484,158 +456,7 @@ mod method_non_parametric_trait_impl { } } -mod impl_overlap { - #[derive(Debug, Clone, Copy)] - struct S1; - - trait OverlappingTrait { - fn common_method(self) -> S1; - - fn common_method_2(self, s1: S1) -> S1; - } - - impl OverlappingTrait for S1 { - // ::common_method - fn common_method(self) -> S1 { - S1 - } - - // ::common_method_2 - fn common_method_2(self, s1: S1) -> S1 { - S1 - } - } - - impl S1 { - // S1::common_method - fn common_method(self) -> S1 { - self - } - - // S1::common_method_2 - fn common_method_2(self) -> S1 { - self - } - } - - struct S2(T2); - - impl S2 { - // S2::common_method - fn common_method(self) -> S1 { - S1 - } - - // S2::common_method - fn common_method_2(self) -> S1 { - S1 - } - } - - impl OverlappingTrait for S2 { - // _as_OverlappingTrait>::common_method - fn common_method(self) -> S1 { - S1 - } - - // _as_OverlappingTrait>::common_method_2 - fn common_method_2(self, s1: S1) -> S1 { - S1 - } - } - - impl OverlappingTrait for S2 { - // _as_OverlappingTrait>::common_method - fn common_method(self) -> S1 { - S1 - } - - // _as_OverlappingTrait>::common_method_2 - fn common_method_2(self, s1: S1) -> S1 { - S1 - } - } - - #[derive(Debug)] - struct S3(T3); - - trait OverlappingTrait2 { - fn m(&self, x: &T) -> &Self; - } - - impl OverlappingTrait2 for S3 { - // _as_OverlappingTrait2>::m - fn m(&self, x: &T) -> &Self { - self - } - } - - impl S3 { - // S3::m - fn m(&self, x: T) -> &Self { - self - } - } - - trait MyTrait1 { - // MyTrait1::m - fn m(&self) {} - } - - trait MyTrait2: MyTrait1 {} - - #[derive(Debug)] - struct S4; - - impl MyTrait1 for S4 { - // ::m - fn m(&self) {} - } - - impl MyTrait2 for S4 {} - - #[derive(Debug)] - struct S5(T5); - - impl MyTrait1 for S5 { - // _as_MyTrait1>::m - fn m(&self) {} - } - - impl MyTrait2 for S5 {} - - impl MyTrait1 for S5 {} - - impl MyTrait2 for S5 {} - - pub fn f() { - let x = S1; - println!("{:?}", x.common_method()); // $ target=S1::common_method - println!("{:?}", S1::common_method(x)); // $ target=S1::common_method - println!("{:?}", x.common_method_2()); // $ target=S1::common_method_2 - println!("{:?}", S1::common_method_2(x)); // $ target=S1::common_method_2 - - let y = S2(S1); - println!("{:?}", y.common_method()); // $ target=_as_OverlappingTrait>::common_method - println!("{:?}", S2::::common_method(S2(S1))); // $ target=_as_OverlappingTrait>::common_method - - let z = S2(0); - println!("{:?}", z.common_method()); // $ target=S2::common_method - println!("{:?}", S2::common_method(S2(0))); // $ target=S2::common_method - println!("{:?}", S2::::common_method(S2(0))); // $ target=S2::common_method - - let w = S3(S1); - println!("{:?}", w.m(x)); // $ target=S3::m - println!("{:?}", S3::m(&w, x)); // $ target=S3::m - - S4.m(); // $ target=::m - S4::m(&S4); // $ target=::m - S5(0i32).m(); // $ target=_as_MyTrait1>::m - S5::m(&S5(0i32)); // $ target=_as_MyTrait1>::m - S5(true).m(); // $ target=MyTrait1::m - S5::m(&S5(true)); // $ target=MyTrait1::m - } -} +mod overloading; mod type_parameter_bounds { use std::fmt::Debug; diff --git a/rust/ql/test/library-tests/type-inference/overloading.rs b/rust/ql/test/library-tests/type-inference/overloading.rs new file mode 100644 index 000000000000..09571861ecb8 --- /dev/null +++ b/rust/ql/test/library-tests/type-inference/overloading.rs @@ -0,0 +1,180 @@ +mod method_call_trait_path_disambig { + trait FirstTrait { + // FirstTrait::method + fn method(&self) -> bool { + true + } + } + trait SecondTrait { + // SecondTrait::method + fn method(&self) -> i64 { + 1 + } + } + struct S; + impl FirstTrait for S {} + impl SecondTrait for S {} + + fn _test() { + let s = S; + + let _b1 = FirstTrait::method(&s); // $ type=_b1:bool target=FirstTrait::method + let _b2 = ::method(&s); // $ type=_b2:bool target=FirstTrait::method + + let _n1 = SecondTrait::method(&s); // $ type=_n1:i64 target=SecondTrait::method + let _n2 = ::method(&s); // $ type=_n2:i64 target=SecondTrait::method + } +} + +pub mod impl_overlap { + #[derive(Debug, Clone, Copy)] + struct S1; + + trait OverlappingTrait { + fn common_method(self) -> S1; + + fn common_method_2(self, s1: S1) -> S1; + } + + impl OverlappingTrait for S1 { + // ::common_method + fn common_method(self) -> S1 { + S1 + } + + // ::common_method_2 + fn common_method_2(self, s1: S1) -> S1 { + S1 + } + } + + impl S1 { + // S1::common_method + fn common_method(self) -> S1 { + self + } + + // S1::common_method_2 + fn common_method_2(self) -> S1 { + self + } + } + + struct S2(T2); + + impl S2 { + // S2::common_method + fn common_method(self) -> S1 { + S1 + } + + // S2::common_method + fn common_method_2(self) -> S1 { + S1 + } + } + + impl OverlappingTrait for S2 { + // _as_OverlappingTrait>::common_method + fn common_method(self) -> S1 { + S1 + } + + // _as_OverlappingTrait>::common_method_2 + fn common_method_2(self, s1: S1) -> S1 { + S1 + } + } + + impl OverlappingTrait for S2 { + // _as_OverlappingTrait>::common_method + fn common_method(self) -> S1 { + S1 + } + + // _as_OverlappingTrait>::common_method_2 + fn common_method_2(self, s1: S1) -> S1 { + S1 + } + } + + #[derive(Debug)] + struct S3(T3); + + trait OverlappingTrait2 { + fn m(&self, x: &T) -> &Self; + } + + impl OverlappingTrait2 for S3 { + // _as_OverlappingTrait2>::m + fn m(&self, x: &T) -> &Self { + self + } + } + + impl S3 { + // S3::m + fn m(&self, x: T) -> &Self { + self + } + } + + trait MyTrait1 { + // MyTrait1::m + fn m(&self) {} + } + + trait MyTrait2: MyTrait1 {} + + #[derive(Debug)] + struct S4; + + impl MyTrait1 for S4 { + // ::m + fn m(&self) {} + } + + impl MyTrait2 for S4 {} + + #[derive(Debug)] + struct S5(T5); + + impl MyTrait1 for S5 { + // _as_MyTrait1>::m + fn m(&self) {} + } + + impl MyTrait2 for S5 {} + + impl MyTrait1 for S5 {} + + impl MyTrait2 for S5 {} + + pub fn f() { + let x = S1; + println!("{:?}", x.common_method()); // $ target=S1::common_method + println!("{:?}", S1::common_method(x)); // $ target=S1::common_method + println!("{:?}", x.common_method_2()); // $ target=S1::common_method_2 + println!("{:?}", S1::common_method_2(x)); // $ target=S1::common_method_2 + + let y = S2(S1); + println!("{:?}", y.common_method()); // $ target=_as_OverlappingTrait>::common_method + println!("{:?}", S2::::common_method(S2(S1))); // $ target=_as_OverlappingTrait>::common_method + + let z = S2(0); + println!("{:?}", z.common_method()); // $ target=S2::common_method + println!("{:?}", S2::common_method(S2(0))); // $ target=S2::common_method + println!("{:?}", S2::::common_method(S2(0))); // $ target=S2::common_method + + let w = S3(S1); + println!("{:?}", w.m(x)); // $ target=S3::m + println!("{:?}", S3::m(&w, x)); // $ target=S3::m + + S4.m(); // $ target=::m + S4::m(&S4); // $ target=::m + S5(0i32).m(); // $ target=_as_MyTrait1>::m + S5::m(&S5(0i32)); // $ target=_as_MyTrait1>::m + S5(true).m(); // $ target=MyTrait1::m + S5::m(&S5(true)); // $ target=MyTrait1::m + } +} diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 19e46b1cae65..f1ad65a3aae0 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -1140,2735 +1140,2735 @@ inferCertainType | main.rs:181:27:181:28 | &x | | {EXTERNAL LOCATION} | & | | main.rs:182:13:182:29 | ...::a_method(...) | | {EXTERNAL LOCATION} | () | | main.rs:182:27:182:28 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:190:19:190:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:190:19:190:23 | SelfParam | TRef | main.rs:188:5:193:5 | Self [trait FirstTrait] | -| main.rs:190:34:192:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:191:13:191:16 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:196:19:196:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:196:19:196:23 | SelfParam | TRef | main.rs:194:5:199:5 | Self [trait SecondTrait] | -| main.rs:196:33:198:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:204:16:212:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:207:13:207:15 | _b1 | | {EXTERNAL LOCATION} | bool | -| main.rs:207:19:207:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:207:38:207:39 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:208:13:208:15 | _b2 | | {EXTERNAL LOCATION} | bool | -| main.rs:208:19:208:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:208:45:208:46 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:210:13:210:15 | _n1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:210:19:210:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:210:39:210:40 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:211:13:211:15 | _n2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:211:19:211:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:211:46:211:47 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:228:15:228:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | -| main.rs:228:15:228:18 | SelfParam | A | main.rs:221:5:222:14 | S1 | -| main.rs:228:27:230:9 | { ... } | | main.rs:221:5:222:14 | S1 | -| main.rs:229:13:229:16 | self | | main.rs:216:5:219:5 | MyThing | -| main.rs:229:13:229:16 | self | A | main.rs:221:5:222:14 | S1 | -| main.rs:235:15:235:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | -| main.rs:235:15:235:18 | SelfParam | A | main.rs:223:5:224:14 | S2 | -| main.rs:235:29:237:9 | { ... } | | main.rs:216:5:219:5 | MyThing | -| main.rs:235:29:237:9 | { ... } | A | main.rs:223:5:224:14 | S2 | -| main.rs:236:13:236:30 | Self {...} | | main.rs:216:5:219:5 | MyThing | -| main.rs:236:13:236:30 | Self {...} | A | main.rs:223:5:224:14 | S2 | -| main.rs:236:23:236:26 | self | | main.rs:216:5:219:5 | MyThing | -| main.rs:236:23:236:26 | self | A | main.rs:223:5:224:14 | S2 | -| main.rs:241:15:241:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | -| main.rs:241:15:241:18 | SelfParam | A | main.rs:240:10:240:10 | T | -| main.rs:241:26:243:9 | { ... } | | main.rs:240:10:240:10 | T | -| main.rs:242:13:242:16 | self | | main.rs:216:5:219:5 | MyThing | -| main.rs:242:13:242:16 | self | A | main.rs:240:10:240:10 | T | -| main.rs:246:16:262:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:247:13:247:13 | x | | main.rs:216:5:219:5 | MyThing | -| main.rs:247:17:247:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | -| main.rs:248:13:248:13 | y | | main.rs:216:5:219:5 | MyThing | -| main.rs:248:17:248:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | -| main.rs:251:18:251:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:251:18:251:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:251:18:251:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:251:18:251:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:251:26:251:26 | x | | main.rs:216:5:219:5 | MyThing | -| main.rs:252:18:252:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:252:18:252:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:252:18:252:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:252:18:252:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:252:26:252:26 | y | | main.rs:216:5:219:5 | MyThing | -| main.rs:254:18:254:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:254:18:254:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:254:18:254:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:254:18:254:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:254:26:254:26 | x | | main.rs:216:5:219:5 | MyThing | -| main.rs:255:18:255:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:255:18:255:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:255:18:255:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:255:18:255:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:255:26:255:26 | y | | main.rs:216:5:219:5 | MyThing | -| main.rs:257:13:257:13 | x | | main.rs:216:5:219:5 | MyThing | -| main.rs:257:17:257:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | -| main.rs:258:13:258:13 | y | | main.rs:216:5:219:5 | MyThing | -| main.rs:258:17:258:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | -| main.rs:260:18:260:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:260:18:260:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:260:18:260:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:260:18:260:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:260:26:260:26 | x | | main.rs:216:5:219:5 | MyThing | -| main.rs:261:18:261:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:261:18:261:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:261:18:261:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:261:18:261:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:261:26:261:26 | y | | main.rs:216:5:219:5 | MyThing | -| main.rs:285:15:285:18 | SelfParam | | main.rs:284:5:293:5 | Self [trait MyTrait] | -| main.rs:287:15:287:18 | SelfParam | | main.rs:284:5:293:5 | Self [trait MyTrait] | -| main.rs:290:9:292:9 | { ... } | | main.rs:284:5:293:5 | Self [trait MyTrait] | -| main.rs:291:13:291:16 | self | | main.rs:284:5:293:5 | Self [trait MyTrait] | -| main.rs:297:16:297:19 | SelfParam | | main.rs:295:5:300:5 | Self [trait MyProduct] | -| main.rs:299:16:299:19 | SelfParam | | main.rs:295:5:300:5 | Self [trait MyProduct] | -| main.rs:302:43:302:43 | x | | main.rs:302:26:302:40 | T2 | -| main.rs:302:56:304:5 | { ... } | | main.rs:302:22:302:23 | T1 | -| main.rs:303:9:303:9 | x | | main.rs:302:26:302:40 | T2 | -| main.rs:308:15:308:18 | SelfParam | | main.rs:266:5:269:5 | MyThing | -| main.rs:308:15:308:18 | SelfParam | A | main.rs:277:5:278:14 | S1 | -| main.rs:308:27:310:9 | { ... } | | main.rs:277:5:278:14 | S1 | -| main.rs:309:13:309:16 | self | | main.rs:266:5:269:5 | MyThing | -| main.rs:309:13:309:16 | self | A | main.rs:277:5:278:14 | S1 | -| main.rs:315:15:315:18 | SelfParam | | main.rs:266:5:269:5 | MyThing | -| main.rs:315:15:315:18 | SelfParam | A | main.rs:279:5:280:14 | S2 | -| main.rs:315:29:317:9 | { ... } | | main.rs:266:5:269:5 | MyThing | -| main.rs:315:29:317:9 | { ... } | A | main.rs:279:5:280:14 | S2 | -| main.rs:316:13:316:30 | Self {...} | | main.rs:266:5:269:5 | MyThing | -| main.rs:316:13:316:30 | Self {...} | A | main.rs:279:5:280:14 | S2 | -| main.rs:316:23:316:26 | self | | main.rs:266:5:269:5 | MyThing | -| main.rs:316:23:316:26 | self | A | main.rs:279:5:280:14 | S2 | -| main.rs:327:15:327:18 | SelfParam | | main.rs:266:5:269:5 | MyThing | -| main.rs:327:15:327:18 | SelfParam | A | main.rs:281:5:282:14 | S3 | -| main.rs:327:27:329:9 | { ... } | | main.rs:322:10:322:11 | TD | -| main.rs:334:15:334:18 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:334:15:334:18 | SelfParam | P1 | main.rs:332:10:332:10 | I | -| main.rs:334:15:334:18 | SelfParam | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:334:26:336:9 | { ... } | | main.rs:332:10:332:10 | I | -| main.rs:335:13:335:16 | self | | main.rs:271:5:275:5 | MyPair | -| main.rs:335:13:335:16 | self | P1 | main.rs:332:10:332:10 | I | -| main.rs:335:13:335:16 | self | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:341:15:341:18 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:341:15:341:18 | SelfParam | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:341:15:341:18 | SelfParam | P2 | main.rs:279:5:280:14 | S2 | -| main.rs:341:27:343:9 | { ... } | | main.rs:281:5:282:14 | S3 | -| main.rs:348:15:348:18 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:348:15:348:18 | SelfParam | P1 | main.rs:266:5:269:5 | MyThing | -| main.rs:348:15:348:18 | SelfParam | P1.A | main.rs:346:10:346:11 | TT | -| main.rs:348:15:348:18 | SelfParam | P2 | main.rs:281:5:282:14 | S3 | -| main.rs:348:27:351:9 | { ... } | | main.rs:346:10:346:11 | TT | -| main.rs:349:25:349:28 | self | | main.rs:271:5:275:5 | MyPair | -| main.rs:349:25:349:28 | self | P1 | main.rs:266:5:269:5 | MyThing | -| main.rs:349:25:349:28 | self | P1.A | main.rs:346:10:346:11 | TT | -| main.rs:349:25:349:28 | self | P2 | main.rs:281:5:282:14 | S3 | -| main.rs:357:16:357:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:357:16:357:19 | SelfParam | P1 | main.rs:355:10:355:10 | A | -| main.rs:357:16:357:19 | SelfParam | P2 | main.rs:355:10:355:10 | A | -| main.rs:357:27:359:9 | { ... } | | main.rs:355:10:355:10 | A | -| main.rs:358:13:358:16 | self | | main.rs:271:5:275:5 | MyPair | -| main.rs:358:13:358:16 | self | P1 | main.rs:355:10:355:10 | A | -| main.rs:358:13:358:16 | self | P2 | main.rs:355:10:355:10 | A | -| main.rs:362:16:362:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:362:16:362:19 | SelfParam | P1 | main.rs:355:10:355:10 | A | -| main.rs:362:16:362:19 | SelfParam | P2 | main.rs:355:10:355:10 | A | -| main.rs:362:27:364:9 | { ... } | | main.rs:355:10:355:10 | A | -| main.rs:363:13:363:16 | self | | main.rs:271:5:275:5 | MyPair | -| main.rs:363:13:363:16 | self | P1 | main.rs:355:10:355:10 | A | -| main.rs:363:13:363:16 | self | P2 | main.rs:355:10:355:10 | A | -| main.rs:370:16:370:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:370:16:370:19 | SelfParam | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:370:16:370:19 | SelfParam | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:370:28:372:9 | { ... } | | main.rs:277:5:278:14 | S1 | -| main.rs:371:13:371:16 | self | | main.rs:271:5:275:5 | MyPair | -| main.rs:371:13:371:16 | self | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:371:13:371:16 | self | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:375:16:375:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:375:16:375:19 | SelfParam | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:375:16:375:19 | SelfParam | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:375:28:377:9 | { ... } | | main.rs:279:5:280:14 | S2 | -| main.rs:376:13:376:16 | self | | main.rs:271:5:275:5 | MyPair | -| main.rs:376:13:376:16 | self | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:376:13:376:16 | self | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:380:46:380:46 | p | | main.rs:380:24:380:43 | P | -| main.rs:380:58:382:5 | { ... } | | main.rs:380:16:380:17 | V1 | -| main.rs:381:9:381:9 | p | | main.rs:380:24:380:43 | P | -| main.rs:384:46:384:46 | p | | main.rs:384:24:384:43 | P | -| main.rs:384:58:386:5 | { ... } | | main.rs:384:20:384:21 | V2 | -| main.rs:385:9:385:9 | p | | main.rs:384:24:384:43 | P | -| main.rs:388:54:388:54 | p | | main.rs:271:5:275:5 | MyPair | -| main.rs:388:54:388:54 | p | P1 | main.rs:388:20:388:21 | V0 | -| main.rs:388:54:388:54 | p | P2 | main.rs:388:32:388:51 | P | -| main.rs:388:78:390:5 | { ... } | | main.rs:388:24:388:25 | V1 | -| main.rs:389:9:389:9 | p | | main.rs:271:5:275:5 | MyPair | -| main.rs:389:9:389:9 | p | P1 | main.rs:388:20:388:21 | V0 | -| main.rs:389:9:389:9 | p | P2 | main.rs:388:32:388:51 | P | -| main.rs:394:23:394:26 | SelfParam | | main.rs:392:5:395:5 | Self [trait ConvertTo] | -| main.rs:399:23:399:26 | SelfParam | | main.rs:397:10:397:23 | T | -| main.rs:399:35:401:9 | { ... } | | main.rs:277:5:278:14 | S1 | -| main.rs:400:13:400:16 | self | | main.rs:397:10:397:23 | T | -| main.rs:404:41:404:45 | thing | | main.rs:404:23:404:38 | T | -| main.rs:404:57:406:5 | { ... } | | main.rs:404:19:404:20 | TS | -| main.rs:405:9:405:13 | thing | | main.rs:404:23:404:38 | T | -| main.rs:408:56:408:60 | thing | | main.rs:408:39:408:53 | TP | -| main.rs:408:73:411:5 | { ... } | | main.rs:277:5:278:14 | S1 | -| main.rs:410:9:410:13 | thing | | main.rs:408:39:408:53 | TP | -| main.rs:413:16:484:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:414:13:414:20 | thing_s1 | | main.rs:266:5:269:5 | MyThing | -| main.rs:414:24:414:40 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | -| main.rs:415:13:415:20 | thing_s2 | | main.rs:266:5:269:5 | MyThing | -| main.rs:415:24:415:40 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | -| main.rs:416:13:416:20 | thing_s3 | | main.rs:266:5:269:5 | MyThing | -| main.rs:416:24:416:40 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | -| main.rs:420:18:420:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:420:18:420:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:420:18:420:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:420:18:420:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:420:26:420:33 | thing_s1 | | main.rs:266:5:269:5 | MyThing | -| main.rs:421:18:421:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:421:18:421:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:421:18:421:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:421:18:421:40 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:421:26:421:33 | thing_s2 | | main.rs:266:5:269:5 | MyThing | -| main.rs:422:13:422:14 | s3 | | main.rs:281:5:282:14 | S3 | -| main.rs:422:22:422:29 | thing_s3 | | main.rs:266:5:269:5 | MyThing | -| main.rs:423:18:423:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:423:18:423:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:423:18:423:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:423:18:423:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:423:26:423:27 | s3 | | main.rs:281:5:282:14 | S3 | -| main.rs:425:13:425:14 | p1 | | main.rs:271:5:275:5 | MyPair | -| main.rs:425:18:425:42 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:426:18:426:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:426:18:426:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:426:18:426:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:426:18:426:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:426:26:426:27 | p1 | | main.rs:271:5:275:5 | MyPair | -| main.rs:428:13:428:14 | p2 | | main.rs:271:5:275:5 | MyPair | -| main.rs:428:18:428:42 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | +| main.rs:200:15:200:18 | SelfParam | | main.rs:188:5:191:5 | MyThing | +| main.rs:200:15:200:18 | SelfParam | A | main.rs:193:5:194:14 | S1 | +| main.rs:200:27:202:9 | { ... } | | main.rs:193:5:194:14 | S1 | +| main.rs:201:13:201:16 | self | | main.rs:188:5:191:5 | MyThing | +| main.rs:201:13:201:16 | self | A | main.rs:193:5:194:14 | S1 | +| main.rs:207:15:207:18 | SelfParam | | main.rs:188:5:191:5 | MyThing | +| main.rs:207:15:207:18 | SelfParam | A | main.rs:195:5:196:14 | S2 | +| main.rs:207:29:209:9 | { ... } | | main.rs:188:5:191:5 | MyThing | +| main.rs:207:29:209:9 | { ... } | A | main.rs:195:5:196:14 | S2 | +| main.rs:208:13:208:30 | Self {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:208:13:208:30 | Self {...} | A | main.rs:195:5:196:14 | S2 | +| main.rs:208:23:208:26 | self | | main.rs:188:5:191:5 | MyThing | +| main.rs:208:23:208:26 | self | A | main.rs:195:5:196:14 | S2 | +| main.rs:213:15:213:18 | SelfParam | | main.rs:188:5:191:5 | MyThing | +| main.rs:213:15:213:18 | SelfParam | A | main.rs:212:10:212:10 | T | +| main.rs:213:26:215:9 | { ... } | | main.rs:212:10:212:10 | T | +| main.rs:214:13:214:16 | self | | main.rs:188:5:191:5 | MyThing | +| main.rs:214:13:214:16 | self | A | main.rs:212:10:212:10 | T | +| main.rs:218:16:234:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:219:13:219:13 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:219:17:219:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:220:13:220:13 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:220:17:220:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:223:18:223:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:223:18:223:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:223:18:223:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:223:18:223:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:223:26:223:26 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:224:18:224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:224:18:224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:224:18:224:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:224:18:224:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:224:26:224:26 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:226:18:226:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:226:18:226:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:226:18:226:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:226:18:226:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:226:26:226:26 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:227:18:227:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:227:18:227:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:227:18:227:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:227:18:227:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:227:26:227:26 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:229:13:229:13 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:229:17:229:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:230:13:230:13 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:230:17:230:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:232:18:232:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:232:18:232:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:232:18:232:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:232:18:232:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:232:26:232:26 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:233:18:233:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:233:18:233:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:233:18:233:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:233:18:233:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:233:26:233:26 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:257:15:257:18 | SelfParam | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:259:15:259:18 | SelfParam | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:262:9:264:9 | { ... } | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:263:13:263:16 | self | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:269:16:269:19 | SelfParam | | main.rs:267:5:272:5 | Self [trait MyProduct] | +| main.rs:271:16:271:19 | SelfParam | | main.rs:267:5:272:5 | Self [trait MyProduct] | +| main.rs:274:43:274:43 | x | | main.rs:274:26:274:40 | T2 | +| main.rs:274:56:276:5 | { ... } | | main.rs:274:22:274:23 | T1 | +| main.rs:275:9:275:9 | x | | main.rs:274:26:274:40 | T2 | +| main.rs:280:15:280:18 | SelfParam | | main.rs:238:5:241:5 | MyThing | +| main.rs:280:15:280:18 | SelfParam | A | main.rs:249:5:250:14 | S1 | +| main.rs:280:27:282:9 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:281:13:281:16 | self | | main.rs:238:5:241:5 | MyThing | +| main.rs:281:13:281:16 | self | A | main.rs:249:5:250:14 | S1 | +| main.rs:287:15:287:18 | SelfParam | | main.rs:238:5:241:5 | MyThing | +| main.rs:287:15:287:18 | SelfParam | A | main.rs:251:5:252:14 | S2 | +| main.rs:287:29:289:9 | { ... } | | main.rs:238:5:241:5 | MyThing | +| main.rs:287:29:289:9 | { ... } | A | main.rs:251:5:252:14 | S2 | +| main.rs:288:13:288:30 | Self {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:288:13:288:30 | Self {...} | A | main.rs:251:5:252:14 | S2 | +| main.rs:288:23:288:26 | self | | main.rs:238:5:241:5 | MyThing | +| main.rs:288:23:288:26 | self | A | main.rs:251:5:252:14 | S2 | +| main.rs:299:15:299:18 | SelfParam | | main.rs:238:5:241:5 | MyThing | +| main.rs:299:15:299:18 | SelfParam | A | main.rs:253:5:254:14 | S3 | +| main.rs:299:27:301:9 | { ... } | | main.rs:294:10:294:11 | TD | +| main.rs:306:15:306:18 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:306:15:306:18 | SelfParam | P1 | main.rs:304:10:304:10 | I | +| main.rs:306:15:306:18 | SelfParam | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:306:26:308:9 | { ... } | | main.rs:304:10:304:10 | I | +| main.rs:307:13:307:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:307:13:307:16 | self | P1 | main.rs:304:10:304:10 | I | +| main.rs:307:13:307:16 | self | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:313:15:313:18 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:313:15:313:18 | SelfParam | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:313:15:313:18 | SelfParam | P2 | main.rs:251:5:252:14 | S2 | +| main.rs:313:27:315:9 | { ... } | | main.rs:253:5:254:14 | S3 | +| main.rs:320:15:320:18 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:320:15:320:18 | SelfParam | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:320:15:320:18 | SelfParam | P1.A | main.rs:318:10:318:11 | TT | +| main.rs:320:15:320:18 | SelfParam | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:320:27:323:9 | { ... } | | main.rs:318:10:318:11 | TT | +| main.rs:321:25:321:28 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:321:25:321:28 | self | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:321:25:321:28 | self | P1.A | main.rs:318:10:318:11 | TT | +| main.rs:321:25:321:28 | self | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:329:16:329:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:329:16:329:19 | SelfParam | P1 | main.rs:327:10:327:10 | A | +| main.rs:329:16:329:19 | SelfParam | P2 | main.rs:327:10:327:10 | A | +| main.rs:329:27:331:9 | { ... } | | main.rs:327:10:327:10 | A | +| main.rs:330:13:330:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:330:13:330:16 | self | P1 | main.rs:327:10:327:10 | A | +| main.rs:330:13:330:16 | self | P2 | main.rs:327:10:327:10 | A | +| main.rs:334:16:334:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:334:16:334:19 | SelfParam | P1 | main.rs:327:10:327:10 | A | +| main.rs:334:16:334:19 | SelfParam | P2 | main.rs:327:10:327:10 | A | +| main.rs:334:27:336:9 | { ... } | | main.rs:327:10:327:10 | A | +| main.rs:335:13:335:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:335:13:335:16 | self | P1 | main.rs:327:10:327:10 | A | +| main.rs:335:13:335:16 | self | P2 | main.rs:327:10:327:10 | A | +| main.rs:342:16:342:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:342:16:342:19 | SelfParam | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:342:16:342:19 | SelfParam | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:342:28:344:9 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:343:13:343:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:343:13:343:16 | self | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:343:13:343:16 | self | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:347:16:347:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:347:16:347:19 | SelfParam | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:347:16:347:19 | SelfParam | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:347:28:349:9 | { ... } | | main.rs:251:5:252:14 | S2 | +| main.rs:348:13:348:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:348:13:348:16 | self | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:348:13:348:16 | self | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:352:46:352:46 | p | | main.rs:352:24:352:43 | P | +| main.rs:352:58:354:5 | { ... } | | main.rs:352:16:352:17 | V1 | +| main.rs:353:9:353:9 | p | | main.rs:352:24:352:43 | P | +| main.rs:356:46:356:46 | p | | main.rs:356:24:356:43 | P | +| main.rs:356:58:358:5 | { ... } | | main.rs:356:20:356:21 | V2 | +| main.rs:357:9:357:9 | p | | main.rs:356:24:356:43 | P | +| main.rs:360:54:360:54 | p | | main.rs:243:5:247:5 | MyPair | +| main.rs:360:54:360:54 | p | P1 | main.rs:360:20:360:21 | V0 | +| main.rs:360:54:360:54 | p | P2 | main.rs:360:32:360:51 | P | +| main.rs:360:78:362:5 | { ... } | | main.rs:360:24:360:25 | V1 | +| main.rs:361:9:361:9 | p | | main.rs:243:5:247:5 | MyPair | +| main.rs:361:9:361:9 | p | P1 | main.rs:360:20:360:21 | V0 | +| main.rs:361:9:361:9 | p | P2 | main.rs:360:32:360:51 | P | +| main.rs:366:23:366:26 | SelfParam | | main.rs:364:5:367:5 | Self [trait ConvertTo] | +| main.rs:371:23:371:26 | SelfParam | | main.rs:369:10:369:23 | T | +| main.rs:371:35:373:9 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:372:13:372:16 | self | | main.rs:369:10:369:23 | T | +| main.rs:376:41:376:45 | thing | | main.rs:376:23:376:38 | T | +| main.rs:376:57:378:5 | { ... } | | main.rs:376:19:376:20 | TS | +| main.rs:377:9:377:13 | thing | | main.rs:376:23:376:38 | T | +| main.rs:380:56:380:60 | thing | | main.rs:380:39:380:53 | TP | +| main.rs:380:73:383:5 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:382:9:382:13 | thing | | main.rs:380:39:380:53 | TP | +| main.rs:385:16:456:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:386:13:386:20 | thing_s1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:386:24:386:40 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:387:13:387:20 | thing_s2 | | main.rs:238:5:241:5 | MyThing | +| main.rs:387:24:387:40 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:388:13:388:20 | thing_s3 | | main.rs:238:5:241:5 | MyThing | +| main.rs:388:24:388:40 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:392:18:392:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:392:18:392:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:392:18:392:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:392:18:392:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:392:26:392:33 | thing_s1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:393:18:393:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:393:18:393:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:393:18:393:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:393:18:393:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:393:26:393:33 | thing_s2 | | main.rs:238:5:241:5 | MyThing | +| main.rs:394:13:394:14 | s3 | | main.rs:253:5:254:14 | S3 | +| main.rs:394:22:394:29 | thing_s3 | | main.rs:238:5:241:5 | MyThing | +| main.rs:395:18:395:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:395:18:395:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:395:18:395:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:395:18:395:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:395:26:395:27 | s3 | | main.rs:253:5:254:14 | S3 | +| main.rs:397:13:397:14 | p1 | | main.rs:243:5:247:5 | MyPair | +| main.rs:397:18:397:42 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:398:18:398:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:398:18:398:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:398:18:398:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:398:18:398:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:398:26:398:27 | p1 | | main.rs:243:5:247:5 | MyPair | +| main.rs:400:13:400:14 | p2 | | main.rs:243:5:247:5 | MyPair | +| main.rs:400:18:400:42 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:401:18:401:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:401:18:401:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:401:18:401:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:401:18:401:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:401:26:401:27 | p2 | | main.rs:243:5:247:5 | MyPair | +| main.rs:403:13:403:14 | p3 | | main.rs:243:5:247:5 | MyPair | +| main.rs:403:18:406:9 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:404:17:404:33 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:407:18:407:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:407:18:407:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:407:18:407:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:407:18:407:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:407:26:407:27 | p3 | | main.rs:243:5:247:5 | MyPair | +| main.rs:410:13:410:13 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:410:17:410:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:411:17:411:17 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:412:18:412:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:412:18:412:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:412:18:412:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:412:18:412:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:413:17:413:17 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:414:18:414:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:414:18:414:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:414:18:414:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:414:18:414:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:420:13:420:13 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:420:17:420:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:421:17:421:17 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:422:18:422:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:422:18:422:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:422:18:422:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:422:18:422:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:423:17:423:17 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:424:18:424:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:424:18:424:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:424:18:424:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:424:18:424:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:428:31:428:38 | thing_s1 | | main.rs:238:5:241:5 | MyThing | | main.rs:429:18:429:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:429:18:429:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:429:18:429:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:429:18:429:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:429:26:429:27 | p2 | | main.rs:271:5:275:5 | MyPair | -| main.rs:431:13:431:14 | p3 | | main.rs:271:5:275:5 | MyPair | -| main.rs:431:18:434:9 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:432:17:432:33 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | -| main.rs:435:18:435:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:435:18:435:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:435:18:435:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:435:18:435:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:435:26:435:27 | p3 | | main.rs:271:5:275:5 | MyPair | -| main.rs:438:13:438:13 | a | | main.rs:271:5:275:5 | MyPair | -| main.rs:438:17:438:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:439:17:439:17 | a | | main.rs:271:5:275:5 | MyPair | -| main.rs:440:18:440:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:440:18:440:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:440:18:440:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:440:18:440:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:441:17:441:17 | a | | main.rs:271:5:275:5 | MyPair | -| main.rs:442:18:442:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:442:18:442:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:442:18:442:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:442:18:442:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:448:13:448:13 | b | | main.rs:271:5:275:5 | MyPair | -| main.rs:448:17:448:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:449:17:449:17 | b | | main.rs:271:5:275:5 | MyPair | -| main.rs:450:18:450:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:450:18:450:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:450:18:450:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:450:18:450:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:451:17:451:17 | b | | main.rs:271:5:275:5 | MyPair | -| main.rs:452:18:452:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:452:18:452:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:452:18:452:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:452:18:452:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:456:31:456:38 | thing_s1 | | main.rs:266:5:269:5 | MyThing | -| main.rs:457:18:457:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:457:18:457:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:457:18:457:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:457:18:457:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:458:31:458:38 | thing_s2 | | main.rs:266:5:269:5 | MyThing | -| main.rs:459:18:459:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:459:18:459:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:459:18:459:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:459:18:459:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:462:13:462:13 | a | | main.rs:271:5:275:5 | MyPair | -| main.rs:462:17:462:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:463:25:463:25 | a | | main.rs:271:5:275:5 | MyPair | -| main.rs:464:18:464:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:464:18:464:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:464:18:464:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:464:18:464:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:465:25:465:25 | a | | main.rs:271:5:275:5 | MyPair | -| main.rs:466:18:466:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:466:18:466:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:466:18:466:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:466:18:466:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:469:13:469:13 | b | | main.rs:271:5:275:5 | MyPair | -| main.rs:469:17:469:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:470:25:470:25 | b | | main.rs:271:5:275:5 | MyPair | -| main.rs:471:18:471:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:471:18:471:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:471:18:471:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:471:18:471:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:472:25:472:25 | b | | main.rs:271:5:275:5 | MyPair | -| main.rs:473:18:473:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:473:18:473:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:473:18:473:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:473:18:473:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:475:13:475:13 | c | | main.rs:271:5:275:5 | MyPair | -| main.rs:475:17:478:9 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:477:17:477:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:479:29:479:29 | c | | main.rs:271:5:275:5 | MyPair | -| main.rs:481:13:481:17 | thing | | main.rs:266:5:269:5 | MyThing | -| main.rs:481:21:481:37 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | -| main.rs:482:17:482:21 | thing | | main.rs:266:5:269:5 | MyThing | -| main.rs:483:28:483:32 | thing | | main.rs:266:5:269:5 | MyThing | -| main.rs:492:26:492:29 | SelfParam | | main.rs:491:5:495:5 | Self [trait OverlappingTrait] | -| main.rs:494:28:494:31 | SelfParam | | main.rs:491:5:495:5 | Self [trait OverlappingTrait] | -| main.rs:494:34:494:35 | s1 | | main.rs:488:5:489:14 | S1 | -| main.rs:499:26:499:29 | SelfParam | | main.rs:488:5:489:14 | S1 | -| main.rs:499:38:501:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:504:28:504:31 | SelfParam | | main.rs:488:5:489:14 | S1 | -| main.rs:504:34:504:35 | s1 | | main.rs:488:5:489:14 | S1 | -| main.rs:504:48:506:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:511:26:511:29 | SelfParam | | main.rs:488:5:489:14 | S1 | -| main.rs:511:38:513:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:512:13:512:16 | self | | main.rs:488:5:489:14 | S1 | -| main.rs:516:28:516:31 | SelfParam | | main.rs:488:5:489:14 | S1 | -| main.rs:516:40:518:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:517:13:517:16 | self | | main.rs:488:5:489:14 | S1 | -| main.rs:525:26:525:29 | SelfParam | | main.rs:521:5:521:22 | S2 | -| main.rs:525:26:525:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:525:38:527:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:530:28:530:31 | SelfParam | | main.rs:521:5:521:22 | S2 | -| main.rs:530:28:530:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:530:40:532:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:537:26:537:29 | SelfParam | | main.rs:521:5:521:22 | S2 | -| main.rs:537:26:537:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:537:38:539:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:542:28:542:31 | SelfParam | | main.rs:521:5:521:22 | S2 | -| main.rs:542:28:542:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:542:34:542:35 | s1 | | main.rs:488:5:489:14 | S1 | -| main.rs:542:48:544:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:549:26:549:29 | SelfParam | | main.rs:521:5:521:22 | S2 | -| main.rs:549:26:549:29 | SelfParam | T2 | main.rs:488:5:489:14 | S1 | -| main.rs:549:38:551:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:554:28:554:31 | SelfParam | | main.rs:521:5:521:22 | S2 | -| main.rs:554:28:554:31 | SelfParam | T2 | main.rs:488:5:489:14 | S1 | -| main.rs:554:34:554:35 | s1 | | main.rs:488:5:489:14 | S1 | -| main.rs:554:48:556:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:563:14:563:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:563:14:563:18 | SelfParam | TRef | main.rs:562:5:564:5 | Self [trait OverlappingTrait2] | -| main.rs:563:21:563:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:563:21:563:21 | x | TRef | main.rs:562:29:562:29 | T | -| main.rs:568:14:568:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:568:14:568:18 | SelfParam | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:568:14:568:18 | SelfParam | TRef.T3 | main.rs:566:10:566:10 | T | -| main.rs:568:21:568:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:568:21:568:21 | x | TRef | main.rs:566:10:566:10 | T | -| main.rs:568:37:570:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:568:37:570:9 | { ... } | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:568:37:570:9 | { ... } | TRef.T3 | main.rs:566:10:566:10 | T | -| main.rs:569:13:569:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:569:13:569:16 | self | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:569:13:569:16 | self | TRef.T3 | main.rs:566:10:566:10 | T | -| main.rs:575:14:575:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:575:14:575:18 | SelfParam | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:575:14:575:18 | SelfParam | TRef.T3 | main.rs:573:10:573:10 | T | -| main.rs:575:21:575:21 | x | | main.rs:573:10:573:10 | T | -| main.rs:575:36:577:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:575:36:577:9 | { ... } | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:575:36:577:9 | { ... } | TRef.T3 | main.rs:573:10:573:10 | T | -| main.rs:576:13:576:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:576:13:576:16 | self | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:576:13:576:16 | self | TRef.T3 | main.rs:573:10:573:10 | T | -| main.rs:582:14:582:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:582:14:582:18 | SelfParam | TRef | main.rs:580:5:583:5 | Self [trait MyTrait1] | -| main.rs:582:21:582:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:592:14:592:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:592:14:592:18 | SelfParam | TRef | main.rs:587:5:588:14 | S4 | -| main.rs:592:21:592:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:602:14:602:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:602:14:602:18 | SelfParam | TRef | main.rs:597:5:598:22 | S5 | -| main.rs:602:14:602:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:602:21:602:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:611:16:637:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:613:18:613:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:613:18:613:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:613:18:613:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:613:18:613:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:614:18:614:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:614:18:614:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:614:18:614:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:614:18:614:45 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:614:26:614:45 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | -| main.rs:615:18:615:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:615:18:615:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:615:18:615:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:615:18:615:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:616:18:616:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:616:18:616:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:616:18:616:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:616:18:616:47 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:616:26:616:47 | ...::common_method_2(...) | | main.rs:488:5:489:14 | S1 | -| main.rs:619:18:619:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:619:18:619:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:619:18:619:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:619:18:619:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:620:18:620:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:620:18:620:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:620:18:620:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:620:18:620:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:620:26:620:56 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | -| main.rs:623:18:623:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:623:18:623:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:623:18:623:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:623:18:623:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:624:18:624:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:624:18:624:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:624:18:624:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:624:18:624:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:624:26:624:49 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | -| main.rs:625:18:625:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:625:18:625:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:625:18:625:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:625:18:625:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:625:26:625:56 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | -| main.rs:628:18:628:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:628:18:628:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:628:18:628:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:628:18:628:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:629:18:629:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:629:18:629:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:629:18:629:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:629:18:629:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:629:26:629:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | -| main.rs:629:26:629:37 | ...::m(...) | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:629:32:629:33 | &w | | {EXTERNAL LOCATION} | & | -| main.rs:632:9:632:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:632:15:632:17 | &S4 | | {EXTERNAL LOCATION} | & | -| main.rs:633:12:633:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:634:9:634:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:634:15:634:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:634:19:634:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:635:12:635:15 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:636:9:636:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:636:15:636:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:636:19:636:22 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:653:19:653:22 | SelfParam | | main.rs:651:5:654:5 | Self [trait FirstTrait] | -| main.rs:658:19:658:22 | SelfParam | | main.rs:656:5:659:5 | Self [trait SecondTrait] | -| main.rs:661:64:661:64 | x | | main.rs:661:45:661:61 | T | -| main.rs:661:70:665:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:663:18:663:18 | x | | main.rs:661:45:661:61 | T | -| main.rs:664:18:664:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:664:18:664:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:664:18:664:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:664:18:664:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:667:65:667:65 | x | | main.rs:667:46:667:62 | T | -| main.rs:667:71:671:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:669:18:669:18 | x | | main.rs:667:46:667:62 | T | -| main.rs:670:18:670:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:670:18:670:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:670:18:670:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:670:18:670:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:673:49:673:49 | x | | main.rs:673:30:673:46 | T | -| main.rs:673:55:676:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:674:17:674:17 | x | | main.rs:673:30:673:46 | T | -| main.rs:675:18:675:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:675:18:675:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:675:18:675:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:675:18:675:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:678:53:678:53 | x | | main.rs:678:34:678:50 | T | -| main.rs:678:59:681:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:679:17:679:17 | x | | main.rs:678:34:678:50 | T | -| main.rs:680:18:680:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:680:18:680:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:680:18:680:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:680:18:680:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:683:43:683:43 | x | | main.rs:683:40:683:40 | T | -| main.rs:686:5:689:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:687:17:687:17 | x | | main.rs:683:40:683:40 | T | -| main.rs:688:18:688:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:688:18:688:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:688:18:688:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:688:18:688:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:692:16:692:19 | SelfParam | | main.rs:691:5:695:5 | Self [trait Pair] | -| main.rs:694:16:694:19 | SelfParam | | main.rs:691:5:695:5 | Self [trait Pair] | -| main.rs:697:53:697:53 | x | | main.rs:697:50:697:50 | T | -| main.rs:697:59:697:59 | y | | main.rs:697:50:697:50 | T | -| main.rs:701:5:704:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:702:17:702:17 | x | | main.rs:697:50:697:50 | T | -| main.rs:703:17:703:17 | y | | main.rs:697:50:697:50 | T | -| main.rs:706:58:706:58 | x | | main.rs:706:41:706:55 | T | -| main.rs:706:64:706:64 | y | | main.rs:706:41:706:55 | T | -| main.rs:706:70:711:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:708:18:708:18 | x | | main.rs:706:41:706:55 | T | -| main.rs:709:18:709:18 | y | | main.rs:706:41:706:55 | T | -| main.rs:710:18:710:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:710:18:710:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:710:18:710:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:710:18:710:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:713:69:713:69 | x | | main.rs:713:52:713:66 | T | -| main.rs:713:75:713:75 | y | | main.rs:713:52:713:66 | T | -| main.rs:713:81:718:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:715:18:715:18 | x | | main.rs:713:52:713:66 | T | -| main.rs:716:18:716:18 | y | | main.rs:713:52:713:66 | T | -| main.rs:717:18:717:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:717:18:717:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:717:18:717:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:717:18:717:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:720:50:720:50 | x | | main.rs:720:41:720:47 | T | -| main.rs:720:56:720:56 | y | | main.rs:720:41:720:47 | T | -| main.rs:720:62:725:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:722:18:722:18 | x | | main.rs:720:41:720:47 | T | -| main.rs:723:18:723:18 | y | | main.rs:720:41:720:47 | T | -| main.rs:724:18:724:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:724:18:724:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:724:18:724:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:724:18:724:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:727:54:727:54 | x | | main.rs:727:41:727:51 | T | -| main.rs:727:60:727:60 | y | | main.rs:727:41:727:51 | T | -| main.rs:727:66:732:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:729:18:729:18 | x | | main.rs:727:41:727:51 | T | -| main.rs:730:18:730:18 | y | | main.rs:727:41:727:51 | T | -| main.rs:731:18:731:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:731:18:731:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:731:18:731:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:731:18:731:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:739:18:739:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:739:18:739:22 | SelfParam | TRef | main.rs:736:5:740:5 | Self [trait TraitWithSelfTp] | -| main.rs:742:40:742:44 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:742:40:742:44 | thing | TRef | main.rs:742:17:742:37 | T | -| main.rs:742:56:744:5 | { ... } | | main.rs:742:14:742:14 | A | -| main.rs:743:9:743:13 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:743:9:743:13 | thing | TRef | main.rs:742:17:742:37 | T | -| main.rs:747:44:747:48 | thing | | main.rs:747:24:747:41 | S | -| main.rs:747:61:750:5 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:748:19:748:23 | thing | | main.rs:747:24:747:41 | S | -| main.rs:755:55:755:59 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:755:55:755:59 | thing | TRef | main.rs:755:25:755:52 | S | -| main.rs:755:66:758:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:757:25:757:29 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:757:25:757:29 | thing | TRef | main.rs:755:25:755:52 | S | -| main.rs:766:18:766:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:766:18:766:22 | SelfParam | TRef | main.rs:760:5:762:5 | MyStruct | -| main.rs:766:41:768:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:766:41:768:9 | { ... } | T | main.rs:760:5:762:5 | MyStruct | -| main.rs:767:18:767:47 | MyStruct {...} | | main.rs:760:5:762:5 | MyStruct | -| main.rs:767:36:767:39 | self | | {EXTERNAL LOCATION} | & | -| main.rs:767:36:767:39 | self | TRef | main.rs:760:5:762:5 | MyStruct | -| main.rs:773:19:776:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:774:13:774:13 | s | | main.rs:760:5:762:5 | MyStruct | -| main.rs:774:17:774:37 | MyStruct {...} | | main.rs:760:5:762:5 | MyStruct | -| main.rs:775:25:775:26 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:775:26:775:26 | s | | main.rs:760:5:762:5 | MyStruct | -| main.rs:791:15:791:18 | SelfParam | | main.rs:790:5:801:5 | Self [trait MyTrait] | -| main.rs:793:15:793:18 | SelfParam | | main.rs:790:5:801:5 | Self [trait MyTrait] | -| main.rs:796:9:798:9 | { ... } | | main.rs:790:19:790:19 | A | -| main.rs:797:13:797:16 | self | | main.rs:790:5:801:5 | Self [trait MyTrait] | -| main.rs:800:18:800:18 | x | | main.rs:790:5:801:5 | Self [trait MyTrait] | -| main.rs:804:15:804:18 | SelfParam | | main.rs:787:5:788:14 | S2 | -| main.rs:804:26:806:9 | { ... } | | main.rs:803:10:803:19 | T | -| main.rs:808:18:808:18 | x | | main.rs:787:5:788:14 | S2 | -| main.rs:808:32:810:9 | { ... } | | main.rs:803:10:803:19 | T | -| main.rs:814:15:814:18 | SelfParam | | main.rs:785:5:786:14 | S1 | -| main.rs:814:28:816:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:818:18:818:18 | x | | main.rs:785:5:786:14 | S1 | -| main.rs:818:34:820:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:825:50:825:50 | x | | main.rs:825:26:825:47 | T2 | -| main.rs:825:63:828:5 | { ... } | | main.rs:825:22:825:23 | T1 | -| main.rs:826:9:826:9 | x | | main.rs:825:26:825:47 | T2 | -| main.rs:827:9:827:9 | x | | main.rs:825:26:825:47 | T2 | -| main.rs:829:52:829:52 | x | | main.rs:829:28:829:49 | T2 | -| main.rs:829:65:833:5 | { ... } | | main.rs:829:24:829:25 | T1 | -| main.rs:830:24:830:24 | x | | main.rs:829:28:829:49 | T2 | -| main.rs:832:16:832:16 | x | | main.rs:829:28:829:49 | T2 | -| main.rs:834:52:834:52 | x | | main.rs:834:28:834:49 | T2 | -| main.rs:834:65:838:5 | { ... } | | main.rs:834:24:834:25 | T1 | -| main.rs:835:29:835:29 | x | | main.rs:834:28:834:49 | T2 | -| main.rs:837:21:837:21 | x | | main.rs:834:28:834:49 | T2 | -| main.rs:839:55:839:55 | x | | main.rs:839:31:839:52 | T2 | -| main.rs:839:68:843:5 | { ... } | | main.rs:839:27:839:28 | T1 | -| main.rs:840:27:840:27 | x | | main.rs:839:31:839:52 | T2 | -| main.rs:842:19:842:19 | x | | main.rs:839:31:839:52 | T2 | -| main.rs:844:55:844:55 | x | | main.rs:844:31:844:52 | T2 | -| main.rs:844:68:848:5 | { ... } | | main.rs:844:27:844:28 | T1 | -| main.rs:845:32:845:32 | x | | main.rs:844:31:844:52 | T2 | -| main.rs:847:24:847:24 | x | | main.rs:844:31:844:52 | T2 | -| main.rs:852:49:852:49 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:852:49:852:49 | x | T | main.rs:852:32:852:46 | T2 | -| main.rs:852:71:854:5 | { ... } | | main.rs:852:28:852:29 | T1 | -| main.rs:853:9:853:9 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:853:9:853:9 | x | T | main.rs:852:32:852:46 | T2 | -| main.rs:855:51:855:51 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:855:51:855:51 | x | T | main.rs:855:34:855:48 | T2 | -| main.rs:855:73:857:5 | { ... } | | main.rs:855:30:855:31 | T1 | -| main.rs:856:16:856:16 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:856:16:856:16 | x | T | main.rs:855:34:855:48 | T2 | -| main.rs:858:51:858:51 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:858:51:858:51 | x | T | main.rs:858:34:858:48 | T2 | -| main.rs:858:73:860:5 | { ... } | | main.rs:858:30:858:31 | T1 | -| main.rs:859:21:859:21 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:859:21:859:21 | x | T | main.rs:858:34:858:48 | T2 | -| main.rs:863:15:863:18 | SelfParam | | main.rs:780:5:783:5 | MyThing | -| main.rs:863:15:863:18 | SelfParam | T | main.rs:862:10:862:10 | T | -| main.rs:863:26:865:9 | { ... } | | main.rs:862:10:862:10 | T | -| main.rs:864:13:864:16 | self | | main.rs:780:5:783:5 | MyThing | -| main.rs:864:13:864:16 | self | T | main.rs:862:10:862:10 | T | -| main.rs:867:18:867:18 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:867:18:867:18 | x | T | main.rs:862:10:862:10 | T | -| main.rs:867:32:869:9 | { ... } | | main.rs:862:10:862:10 | T | -| main.rs:868:13:868:13 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:868:13:868:13 | x | T | main.rs:862:10:862:10 | T | -| main.rs:874:15:874:18 | SelfParam | | main.rs:872:5:875:5 | Self [trait MyTrait2] | -| main.rs:879:15:879:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:879:15:879:19 | SelfParam | TRef | main.rs:877:5:880:5 | Self [trait MyTrait3] | -| main.rs:882:46:882:46 | x | | main.rs:882:22:882:43 | T | -| main.rs:882:52:882:52 | y | | {EXTERNAL LOCATION} | & | -| main.rs:882:52:882:52 | y | TRef | main.rs:882:22:882:43 | T | -| main.rs:882:59:885:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:883:9:883:9 | x | | main.rs:882:22:882:43 | T | -| main.rs:884:9:884:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:884:9:884:9 | y | TRef | main.rs:882:22:882:43 | T | -| main.rs:887:16:945:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:888:13:888:13 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:888:17:888:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:889:13:889:13 | y | | main.rs:780:5:783:5 | MyThing | -| main.rs:889:17:889:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:891:18:891:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:891:18:891:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:891:18:891:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:891:18:891:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:891:26:891:26 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:892:18:892:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:892:18:892:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:892:18:892:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:892:18:892:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:892:26:892:26 | y | | main.rs:780:5:783:5 | MyThing | -| main.rs:894:13:894:13 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:894:17:894:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:895:13:895:13 | y | | main.rs:780:5:783:5 | MyThing | -| main.rs:895:17:895:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:897:18:897:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:897:18:897:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:897:18:897:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:897:18:897:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:897:26:897:26 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:898:18:898:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:898:18:898:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:898:18:898:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:898:18:898:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:898:26:898:26 | y | | main.rs:780:5:783:5 | MyThing | -| main.rs:900:13:900:14 | x2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:900:18:900:34 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:901:13:901:14 | y2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:901:18:901:34 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:903:31:903:32 | x2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:904:18:904:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:904:18:904:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:904:18:904:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:904:18:904:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:905:33:905:34 | x2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:906:18:906:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:906:18:906:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:906:18:906:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:906:18:906:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:907:33:907:34 | x2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:908:18:908:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:908:18:908:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:908:18:908:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:908:18:908:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:909:31:909:32 | y2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:910:18:910:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:910:18:910:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:910:18:910:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:910:18:910:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:911:33:911:34 | y2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:912:18:912:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:912:18:912:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:912:18:912:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:912:18:912:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:913:33:913:34 | y2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:914:18:914:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:914:18:914:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:914:18:914:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:914:18:914:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:915:36:915:37 | x2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:916:18:916:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:916:18:916:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:916:18:916:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:916:18:916:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:917:36:917:37 | x2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:918:18:918:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:918:18:918:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:918:18:918:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:918:18:918:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:919:36:919:37 | y2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:920:18:920:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:920:18:920:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:920:18:920:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:920:18:920:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:921:36:921:37 | y2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:922:18:922:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:922:18:922:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:922:18:922:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:922:18:922:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:924:13:924:14 | x3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:924:18:926:9 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:925:16:925:32 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:927:13:927:14 | y3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:927:18:929:9 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:928:16:928:32 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:931:37:931:38 | x3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:932:18:932:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:932:18:932:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:932:18:932:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:932:18:932:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:933:39:933:40 | x3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:934:18:934:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:934:18:934:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:934:18:934:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:934:18:934:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:935:39:935:40 | x3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:936:18:936:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:936:18:936:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:936:18:936:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:936:18:936:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:937:37:937:38 | y3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:938:18:938:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:938:18:938:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:938:18:938:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:938:18:938:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:939:39:939:40 | y3 | | main.rs:780:5:783:5 | MyThing | +| main.rs:429:18:429:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:430:31:430:38 | thing_s2 | | main.rs:238:5:241:5 | MyThing | +| main.rs:431:18:431:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:431:18:431:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:431:18:431:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:431:18:431:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:434:13:434:13 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:434:17:434:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:435:25:435:25 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:436:18:436:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:436:18:436:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:436:18:436:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:436:18:436:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:437:25:437:25 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:438:18:438:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:438:18:438:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:438:18:438:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:438:18:438:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:441:13:441:13 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:441:17:441:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:442:25:442:25 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:443:18:443:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:443:18:443:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:443:18:443:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:443:18:443:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:444:25:444:25 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:445:18:445:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:445:18:445:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:445:18:445:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:445:18:445:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:447:13:447:13 | c | | main.rs:243:5:247:5 | MyPair | +| main.rs:447:17:450:9 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:449:17:449:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:451:29:451:29 | c | | main.rs:243:5:247:5 | MyPair | +| main.rs:453:13:453:17 | thing | | main.rs:238:5:241:5 | MyThing | +| main.rs:453:21:453:37 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:454:17:454:21 | thing | | main.rs:238:5:241:5 | MyThing | +| main.rs:455:28:455:32 | thing | | main.rs:238:5:241:5 | MyThing | +| main.rs:474:19:474:22 | SelfParam | | main.rs:472:5:475:5 | Self [trait FirstTrait] | +| main.rs:479:19:479:22 | SelfParam | | main.rs:477:5:480:5 | Self [trait SecondTrait] | +| main.rs:482:64:482:64 | x | | main.rs:482:45:482:61 | T | +| main.rs:482:70:486:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:484:18:484:18 | x | | main.rs:482:45:482:61 | T | +| main.rs:485:18:485:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:485:18:485:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:485:18:485:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:485:18:485:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:488:65:488:65 | x | | main.rs:488:46:488:62 | T | +| main.rs:488:71:492:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:490:18:490:18 | x | | main.rs:488:46:488:62 | T | +| main.rs:491:18:491:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:491:18:491:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:491:18:491:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:491:18:491:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:494:49:494:49 | x | | main.rs:494:30:494:46 | T | +| main.rs:494:55:497:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:495:17:495:17 | x | | main.rs:494:30:494:46 | T | +| main.rs:496:18:496:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:496:18:496:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:496:18:496:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:496:18:496:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:499:53:499:53 | x | | main.rs:499:34:499:50 | T | +| main.rs:499:59:502:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:500:17:500:17 | x | | main.rs:499:34:499:50 | T | +| main.rs:501:18:501:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:501:18:501:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:501:18:501:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:501:18:501:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:504:43:504:43 | x | | main.rs:504:40:504:40 | T | +| main.rs:507:5:510:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:508:17:508:17 | x | | main.rs:504:40:504:40 | T | +| main.rs:509:18:509:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:509:18:509:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:509:18:509:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:509:18:509:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:513:16:513:19 | SelfParam | | main.rs:512:5:516:5 | Self [trait Pair] | +| main.rs:515:16:515:19 | SelfParam | | main.rs:512:5:516:5 | Self [trait Pair] | +| main.rs:518:53:518:53 | x | | main.rs:518:50:518:50 | T | +| main.rs:518:59:518:59 | y | | main.rs:518:50:518:50 | T | +| main.rs:522:5:525:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:523:17:523:17 | x | | main.rs:518:50:518:50 | T | +| main.rs:524:17:524:17 | y | | main.rs:518:50:518:50 | T | +| main.rs:527:58:527:58 | x | | main.rs:527:41:527:55 | T | +| main.rs:527:64:527:64 | y | | main.rs:527:41:527:55 | T | +| main.rs:527:70:532:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:529:18:529:18 | x | | main.rs:527:41:527:55 | T | +| main.rs:530:18:530:18 | y | | main.rs:527:41:527:55 | T | +| main.rs:531:18:531:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:531:18:531:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:531:18:531:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:531:18:531:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:534:69:534:69 | x | | main.rs:534:52:534:66 | T | +| main.rs:534:75:534:75 | y | | main.rs:534:52:534:66 | T | +| main.rs:534:81:539:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:536:18:536:18 | x | | main.rs:534:52:534:66 | T | +| main.rs:537:18:537:18 | y | | main.rs:534:52:534:66 | T | +| main.rs:538:18:538:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:538:18:538:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:538:18:538:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:538:18:538:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:541:50:541:50 | x | | main.rs:541:41:541:47 | T | +| main.rs:541:56:541:56 | y | | main.rs:541:41:541:47 | T | +| main.rs:541:62:546:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:543:18:543:18 | x | | main.rs:541:41:541:47 | T | +| main.rs:544:18:544:18 | y | | main.rs:541:41:541:47 | T | +| main.rs:545:18:545:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:545:18:545:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:545:18:545:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:545:18:545:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:548:54:548:54 | x | | main.rs:548:41:548:51 | T | +| main.rs:548:60:548:60 | y | | main.rs:548:41:548:51 | T | +| main.rs:548:66:553:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:550:18:550:18 | x | | main.rs:548:41:548:51 | T | +| main.rs:551:18:551:18 | y | | main.rs:548:41:548:51 | T | +| main.rs:552:18:552:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:552:18:552:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:552:18:552:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:552:18:552:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:560:18:560:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:560:18:560:22 | SelfParam | TRef | main.rs:557:5:561:5 | Self [trait TraitWithSelfTp] | +| main.rs:563:40:563:44 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:563:40:563:44 | thing | TRef | main.rs:563:17:563:37 | T | +| main.rs:563:56:565:5 | { ... } | | main.rs:563:14:563:14 | A | +| main.rs:564:9:564:13 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:564:9:564:13 | thing | TRef | main.rs:563:17:563:37 | T | +| main.rs:568:44:568:48 | thing | | main.rs:568:24:568:41 | S | +| main.rs:568:61:571:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:569:19:569:23 | thing | | main.rs:568:24:568:41 | S | +| main.rs:576:55:576:59 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:576:55:576:59 | thing | TRef | main.rs:576:25:576:52 | S | +| main.rs:576:66:579:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:578:25:578:29 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:578:25:578:29 | thing | TRef | main.rs:576:25:576:52 | S | +| main.rs:587:18:587:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:587:18:587:22 | SelfParam | TRef | main.rs:581:5:583:5 | MyStruct | +| main.rs:587:41:589:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:587:41:589:9 | { ... } | T | main.rs:581:5:583:5 | MyStruct | +| main.rs:588:18:588:47 | MyStruct {...} | | main.rs:581:5:583:5 | MyStruct | +| main.rs:588:36:588:39 | self | | {EXTERNAL LOCATION} | & | +| main.rs:588:36:588:39 | self | TRef | main.rs:581:5:583:5 | MyStruct | +| main.rs:594:19:597:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:595:13:595:13 | s | | main.rs:581:5:583:5 | MyStruct | +| main.rs:595:17:595:37 | MyStruct {...} | | main.rs:581:5:583:5 | MyStruct | +| main.rs:596:25:596:26 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:596:26:596:26 | s | | main.rs:581:5:583:5 | MyStruct | +| main.rs:612:15:612:18 | SelfParam | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:614:15:614:18 | SelfParam | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:617:9:619:9 | { ... } | | main.rs:611:19:611:19 | A | +| main.rs:618:13:618:16 | self | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:621:18:621:18 | x | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:625:15:625:18 | SelfParam | | main.rs:608:5:609:14 | S2 | +| main.rs:625:26:627:9 | { ... } | | main.rs:624:10:624:19 | T | +| main.rs:629:18:629:18 | x | | main.rs:608:5:609:14 | S2 | +| main.rs:629:32:631:9 | { ... } | | main.rs:624:10:624:19 | T | +| main.rs:635:15:635:18 | SelfParam | | main.rs:606:5:607:14 | S1 | +| main.rs:635:28:637:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:639:18:639:18 | x | | main.rs:606:5:607:14 | S1 | +| main.rs:639:34:641:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:646:50:646:50 | x | | main.rs:646:26:646:47 | T2 | +| main.rs:646:63:649:5 | { ... } | | main.rs:646:22:646:23 | T1 | +| main.rs:647:9:647:9 | x | | main.rs:646:26:646:47 | T2 | +| main.rs:648:9:648:9 | x | | main.rs:646:26:646:47 | T2 | +| main.rs:650:52:650:52 | x | | main.rs:650:28:650:49 | T2 | +| main.rs:650:65:654:5 | { ... } | | main.rs:650:24:650:25 | T1 | +| main.rs:651:24:651:24 | x | | main.rs:650:28:650:49 | T2 | +| main.rs:653:16:653:16 | x | | main.rs:650:28:650:49 | T2 | +| main.rs:655:52:655:52 | x | | main.rs:655:28:655:49 | T2 | +| main.rs:655:65:659:5 | { ... } | | main.rs:655:24:655:25 | T1 | +| main.rs:656:29:656:29 | x | | main.rs:655:28:655:49 | T2 | +| main.rs:658:21:658:21 | x | | main.rs:655:28:655:49 | T2 | +| main.rs:660:55:660:55 | x | | main.rs:660:31:660:52 | T2 | +| main.rs:660:68:664:5 | { ... } | | main.rs:660:27:660:28 | T1 | +| main.rs:661:27:661:27 | x | | main.rs:660:31:660:52 | T2 | +| main.rs:663:19:663:19 | x | | main.rs:660:31:660:52 | T2 | +| main.rs:665:55:665:55 | x | | main.rs:665:31:665:52 | T2 | +| main.rs:665:68:669:5 | { ... } | | main.rs:665:27:665:28 | T1 | +| main.rs:666:32:666:32 | x | | main.rs:665:31:665:52 | T2 | +| main.rs:668:24:668:24 | x | | main.rs:665:31:665:52 | T2 | +| main.rs:673:49:673:49 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:673:49:673:49 | x | T | main.rs:673:32:673:46 | T2 | +| main.rs:673:71:675:5 | { ... } | | main.rs:673:28:673:29 | T1 | +| main.rs:674:9:674:9 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:674:9:674:9 | x | T | main.rs:673:32:673:46 | T2 | +| main.rs:676:51:676:51 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:676:51:676:51 | x | T | main.rs:676:34:676:48 | T2 | +| main.rs:676:73:678:5 | { ... } | | main.rs:676:30:676:31 | T1 | +| main.rs:677:16:677:16 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:677:16:677:16 | x | T | main.rs:676:34:676:48 | T2 | +| main.rs:679:51:679:51 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:679:51:679:51 | x | T | main.rs:679:34:679:48 | T2 | +| main.rs:679:73:681:5 | { ... } | | main.rs:679:30:679:31 | T1 | +| main.rs:680:21:680:21 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:680:21:680:21 | x | T | main.rs:679:34:679:48 | T2 | +| main.rs:684:15:684:18 | SelfParam | | main.rs:601:5:604:5 | MyThing | +| main.rs:684:15:684:18 | SelfParam | T | main.rs:683:10:683:10 | T | +| main.rs:684:26:686:9 | { ... } | | main.rs:683:10:683:10 | T | +| main.rs:685:13:685:16 | self | | main.rs:601:5:604:5 | MyThing | +| main.rs:685:13:685:16 | self | T | main.rs:683:10:683:10 | T | +| main.rs:688:18:688:18 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:688:18:688:18 | x | T | main.rs:683:10:683:10 | T | +| main.rs:688:32:690:9 | { ... } | | main.rs:683:10:683:10 | T | +| main.rs:689:13:689:13 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:689:13:689:13 | x | T | main.rs:683:10:683:10 | T | +| main.rs:695:15:695:18 | SelfParam | | main.rs:693:5:696:5 | Self [trait MyTrait2] | +| main.rs:700:15:700:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:700:15:700:19 | SelfParam | TRef | main.rs:698:5:701:5 | Self [trait MyTrait3] | +| main.rs:703:46:703:46 | x | | main.rs:703:22:703:43 | T | +| main.rs:703:52:703:52 | y | | {EXTERNAL LOCATION} | & | +| main.rs:703:52:703:52 | y | TRef | main.rs:703:22:703:43 | T | +| main.rs:703:59:706:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:704:9:704:9 | x | | main.rs:703:22:703:43 | T | +| main.rs:705:9:705:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:705:9:705:9 | y | TRef | main.rs:703:22:703:43 | T | +| main.rs:708:16:766:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:709:13:709:13 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:709:17:709:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:710:13:710:13 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:710:17:710:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:712:18:712:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:712:18:712:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:712:18:712:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:712:18:712:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:712:26:712:26 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:713:18:713:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:713:18:713:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:713:18:713:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:713:18:713:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:713:26:713:26 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:715:13:715:13 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:715:17:715:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:716:13:716:13 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:716:17:716:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:718:18:718:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:718:18:718:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:718:18:718:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:718:18:718:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:718:26:718:26 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:719:18:719:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:719:18:719:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:719:18:719:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:719:18:719:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:719:26:719:26 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:721:13:721:14 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:721:18:721:34 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:722:13:722:14 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:722:18:722:34 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:724:31:724:32 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:725:18:725:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:725:18:725:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:725:18:725:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:725:18:725:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:726:33:726:34 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:727:18:727:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:727:18:727:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:727:18:727:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:727:18:727:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:728:33:728:34 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:729:18:729:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:729:18:729:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:729:18:729:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:729:18:729:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:730:31:730:32 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:731:18:731:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:731:18:731:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:731:18:731:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:731:18:731:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:732:33:732:34 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:733:18:733:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:733:18:733:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:733:18:733:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:733:18:733:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:734:33:734:34 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:735:18:735:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:735:18:735:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:735:18:735:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:735:18:735:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:736:36:736:37 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:737:18:737:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:737:18:737:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:737:18:737:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:737:18:737:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:738:36:738:37 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:739:18:739:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:739:18:739:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:739:18:739:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:739:18:739:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:740:36:740:37 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:741:18:741:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:741:18:741:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:741:18:741:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:741:18:741:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:742:36:742:37 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:743:18:743:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:743:18:743:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:743:18:743:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:743:18:743:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:745:13:745:14 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:745:18:747:9 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:746:16:746:32 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:748:13:748:14 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:748:18:750:9 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:749:16:749:32 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:752:37:752:38 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:753:18:753:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:753:18:753:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:753:18:753:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:753:18:753:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:754:39:754:40 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:755:18:755:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:755:18:755:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:755:18:755:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:755:18:755:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:756:39:756:40 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:757:18:757:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:757:18:757:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:757:18:757:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:757:18:757:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:758:37:758:38 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:759:18:759:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:759:18:759:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:759:18:759:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:759:18:759:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:760:39:760:40 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:761:18:761:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:761:18:761:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:761:18:761:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:761:18:761:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:762:39:762:40 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:763:18:763:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:763:18:763:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:763:18:763:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:763:18:763:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:765:13:765:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:782:15:782:18 | SelfParam | | main.rs:770:5:774:5 | MyEnum | +| main.rs:782:15:782:18 | SelfParam | A | main.rs:781:10:781:10 | T | +| main.rs:782:26:787:9 | { ... } | | main.rs:781:10:781:10 | T | +| main.rs:783:19:783:22 | self | | main.rs:770:5:774:5 | MyEnum | +| main.rs:783:19:783:22 | self | A | main.rs:781:10:781:10 | T | +| main.rs:785:17:785:32 | ...::C2 {...} | | main.rs:770:5:774:5 | MyEnum | +| main.rs:790:16:796:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:792:13:792:13 | y | | main.rs:770:5:774:5 | MyEnum | +| main.rs:792:17:792:36 | ...::C2 {...} | | main.rs:770:5:774:5 | MyEnum | +| main.rs:794:18:794:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:794:18:794:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:794:18:794:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:794:18:794:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:795:18:795:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:795:18:795:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:795:18:795:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:795:18:795:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:795:26:795:26 | y | | main.rs:770:5:774:5 | MyEnum | +| main.rs:817:15:817:18 | SelfParam | | main.rs:815:5:818:5 | Self [trait MyTrait1] | +| main.rs:822:15:822:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:822:15:822:19 | SelfParam | TRef | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:825:9:831:9 | { ... } | | main.rs:820:20:820:22 | Tr2 | +| main.rs:827:17:827:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:827:17:827:20 | self | TRef | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:829:27:829:30 | self | | {EXTERNAL LOCATION} | & | +| main.rs:829:27:829:30 | self | TRef | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:836:15:836:18 | SelfParam | | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:839:9:845:9 | { ... } | | main.rs:834:20:834:22 | Tr3 | +| main.rs:841:17:841:20 | self | | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:843:26:843:30 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:843:27:843:30 | self | | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:850:15:850:18 | SelfParam | | main.rs:800:5:803:5 | MyThing | +| main.rs:850:15:850:18 | SelfParam | A | main.rs:848:10:848:10 | T | +| main.rs:850:26:852:9 | { ... } | | main.rs:848:10:848:10 | T | +| main.rs:851:13:851:16 | self | | main.rs:800:5:803:5 | MyThing | +| main.rs:851:13:851:16 | self | A | main.rs:848:10:848:10 | T | +| main.rs:859:15:859:18 | SelfParam | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:859:15:859:18 | SelfParam | A | main.rs:857:10:857:10 | T | +| main.rs:859:35:861:9 | { ... } | | main.rs:800:5:803:5 | MyThing | +| main.rs:859:35:861:9 | { ... } | A | main.rs:857:10:857:10 | T | +| main.rs:860:13:860:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:860:26:860:29 | self | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:860:26:860:29 | self | A | main.rs:857:10:857:10 | T | +| main.rs:868:44:868:44 | x | | main.rs:868:26:868:41 | T2 | +| main.rs:868:57:870:5 | { ... } | | main.rs:868:22:868:23 | T1 | +| main.rs:869:9:869:9 | x | | main.rs:868:26:868:41 | T2 | +| main.rs:872:56:872:56 | x | | main.rs:872:39:872:53 | T | +| main.rs:872:62:876:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:874:17:874:17 | x | | main.rs:872:39:872:53 | T | +| main.rs:875:18:875:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:875:18:875:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:875:18:875:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:875:18:875:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:878:16:902:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:879:13:879:13 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:879:17:879:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:880:13:880:13 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:880:17:880:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:882:18:882:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:882:18:882:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:882:18:882:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:882:18:882:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:882:26:882:26 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:883:18:883:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:883:18:883:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:883:18:883:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:883:18:883:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:883:26:883:26 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:885:13:885:13 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:885:17:885:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:886:13:886:13 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:886:17:886:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:888:18:888:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:888:18:888:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:888:18:888:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:888:18:888:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:888:26:888:26 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:889:18:889:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:889:18:889:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:889:18:889:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:889:18:889:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:889:26:889:26 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:891:13:891:13 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:891:17:891:34 | MyThing2 {...} | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:892:13:892:13 | y | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:892:17:892:34 | MyThing2 {...} | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:894:18:894:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:894:18:894:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:894:18:894:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:894:18:894:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:894:26:894:26 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:895:18:895:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:895:18:895:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:895:18:895:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:895:18:895:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:895:26:895:26 | y | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:897:13:897:13 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:897:17:897:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:898:31:898:31 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:900:13:900:13 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:900:17:900:34 | MyThing2 {...} | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:901:31:901:31 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:918:22:918:22 | x | | {EXTERNAL LOCATION} | & | +| main.rs:918:22:918:22 | x | TRef | main.rs:918:11:918:19 | T | +| main.rs:918:35:920:5 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:918:35:920:5 | { ... } | TRef | main.rs:918:11:918:19 | T | +| main.rs:919:9:919:9 | x | | {EXTERNAL LOCATION} | & | +| main.rs:919:9:919:9 | x | TRef | main.rs:918:11:918:19 | T | +| main.rs:923:17:923:20 | SelfParam | | main.rs:908:5:909:14 | S1 | +| main.rs:923:29:925:9 | { ... } | | main.rs:911:5:912:14 | S2 | +| main.rs:928:21:928:21 | x | | main.rs:928:13:928:14 | T1 | +| main.rs:931:5:933:5 | { ... } | | main.rs:928:17:928:18 | T2 | +| main.rs:932:9:932:9 | x | | main.rs:928:13:928:14 | T1 | +| main.rs:935:16:951:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:937:18:937:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:937:18:937:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:937:18:937:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:937:18:937:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:937:26:937:31 | id(...) | | {EXTERNAL LOCATION} | & | +| main.rs:937:29:937:30 | &x | | {EXTERNAL LOCATION} | & | | main.rs:940:18:940:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:940:18:940:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:940:18:940:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:940:18:940:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:941:39:941:40 | y3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:942:18:942:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:942:18:942:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:942:18:942:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:942:18:942:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:944:13:944:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:961:15:961:18 | SelfParam | | main.rs:949:5:953:5 | MyEnum | -| main.rs:961:15:961:18 | SelfParam | A | main.rs:960:10:960:10 | T | -| main.rs:961:26:966:9 | { ... } | | main.rs:960:10:960:10 | T | -| main.rs:962:19:962:22 | self | | main.rs:949:5:953:5 | MyEnum | -| main.rs:962:19:962:22 | self | A | main.rs:960:10:960:10 | T | -| main.rs:964:17:964:32 | ...::C2 {...} | | main.rs:949:5:953:5 | MyEnum | -| main.rs:969:16:975:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:971:13:971:13 | y | | main.rs:949:5:953:5 | MyEnum | -| main.rs:971:17:971:36 | ...::C2 {...} | | main.rs:949:5:953:5 | MyEnum | -| main.rs:973:18:973:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:973:18:973:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:973:18:973:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:973:18:973:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:974:18:974:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:974:18:974:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:974:18:974:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:974:18:974:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:974:26:974:26 | y | | main.rs:949:5:953:5 | MyEnum | -| main.rs:996:15:996:18 | SelfParam | | main.rs:994:5:997:5 | Self [trait MyTrait1] | -| main.rs:1001:15:1001:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1001:15:1001:19 | SelfParam | TRef | main.rs:999:5:1011:5 | Self [trait MyTrait2] | -| main.rs:1004:9:1010:9 | { ... } | | main.rs:999:20:999:22 | Tr2 | -| main.rs:1006:17:1006:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1006:17:1006:20 | self | TRef | main.rs:999:5:1011:5 | Self [trait MyTrait2] | -| main.rs:1008:27:1008:30 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1008:27:1008:30 | self | TRef | main.rs:999:5:1011:5 | Self [trait MyTrait2] | -| main.rs:1015:15:1015:18 | SelfParam | | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | -| main.rs:1018:9:1024:9 | { ... } | | main.rs:1013:20:1013:22 | Tr3 | -| main.rs:1020:17:1020:20 | self | | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | -| main.rs:1022:26:1022:30 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1022:27:1022:30 | self | | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | -| main.rs:1029:15:1029:18 | SelfParam | | main.rs:979:5:982:5 | MyThing | -| main.rs:1029:15:1029:18 | SelfParam | A | main.rs:1027:10:1027:10 | T | -| main.rs:1029:26:1031:9 | { ... } | | main.rs:1027:10:1027:10 | T | -| main.rs:1030:13:1030:16 | self | | main.rs:979:5:982:5 | MyThing | -| main.rs:1030:13:1030:16 | self | A | main.rs:1027:10:1027:10 | T | -| main.rs:1038:15:1038:18 | SelfParam | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1038:15:1038:18 | SelfParam | A | main.rs:1036:10:1036:10 | T | -| main.rs:1038:35:1040:9 | { ... } | | main.rs:979:5:982:5 | MyThing | -| main.rs:1038:35:1040:9 | { ... } | A | main.rs:1036:10:1036:10 | T | -| main.rs:1039:13:1039:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | -| main.rs:1039:26:1039:29 | self | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1039:26:1039:29 | self | A | main.rs:1036:10:1036:10 | T | -| main.rs:1047:44:1047:44 | x | | main.rs:1047:26:1047:41 | T2 | -| main.rs:1047:57:1049:5 | { ... } | | main.rs:1047:22:1047:23 | T1 | -| main.rs:1048:9:1048:9 | x | | main.rs:1047:26:1047:41 | T2 | -| main.rs:1051:56:1051:56 | x | | main.rs:1051:39:1051:53 | T | -| main.rs:1051:62:1055:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1053:17:1053:17 | x | | main.rs:1051:39:1051:53 | T | -| main.rs:1054:18:1054:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1054:18:1054:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1054:18:1054:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1054:18:1054:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1057:16:1081:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1058:13:1058:13 | x | | main.rs:979:5:982:5 | MyThing | -| main.rs:1058:17:1058:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | -| main.rs:1059:13:1059:13 | y | | main.rs:979:5:982:5 | MyThing | -| main.rs:1059:17:1059:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | -| main.rs:1061:18:1061:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1061:18:1061:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1061:18:1061:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1061:18:1061:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1061:26:1061:26 | x | | main.rs:979:5:982:5 | MyThing | -| main.rs:1062:18:1062:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1062:18:1062:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1062:18:1062:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1062:18:1062:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1062:26:1062:26 | y | | main.rs:979:5:982:5 | MyThing | -| main.rs:1064:13:1064:13 | x | | main.rs:979:5:982:5 | MyThing | -| main.rs:1064:17:1064:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | -| main.rs:1065:13:1065:13 | y | | main.rs:979:5:982:5 | MyThing | -| main.rs:1065:17:1065:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | -| main.rs:1067:18:1067:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1067:18:1067:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1067:18:1067:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1067:18:1067:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1067:26:1067:26 | x | | main.rs:979:5:982:5 | MyThing | -| main.rs:1068:18:1068:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1068:18:1068:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1068:18:1068:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1068:18:1068:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1068:26:1068:26 | y | | main.rs:979:5:982:5 | MyThing | -| main.rs:1070:13:1070:13 | x | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1070:17:1070:34 | MyThing2 {...} | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1071:13:1071:13 | y | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1071:17:1071:34 | MyThing2 {...} | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1073:18:1073:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1073:18:1073:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1073:18:1073:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1073:18:1073:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1073:26:1073:26 | x | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1074:18:1074:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1074:18:1074:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1074:18:1074:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1074:18:1074:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1074:26:1074:26 | y | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1076:13:1076:13 | x | | main.rs:979:5:982:5 | MyThing | -| main.rs:1076:17:1076:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | -| main.rs:1077:31:1077:31 | x | | main.rs:979:5:982:5 | MyThing | -| main.rs:1079:13:1079:13 | x | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1079:17:1079:34 | MyThing2 {...} | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1080:31:1080:31 | x | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1097:22:1097:22 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1097:22:1097:22 | x | TRef | main.rs:1097:11:1097:19 | T | -| main.rs:1097:35:1099:5 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1097:35:1099:5 | { ... } | TRef | main.rs:1097:11:1097:19 | T | -| main.rs:1098:9:1098:9 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1098:9:1098:9 | x | TRef | main.rs:1097:11:1097:19 | T | -| main.rs:1102:17:1102:20 | SelfParam | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1102:29:1104:9 | { ... } | | main.rs:1090:5:1091:14 | S2 | -| main.rs:1107:21:1107:21 | x | | main.rs:1107:13:1107:14 | T1 | -| main.rs:1110:5:1112:5 | { ... } | | main.rs:1107:17:1107:18 | T2 | -| main.rs:1111:9:1111:9 | x | | main.rs:1107:13:1107:14 | T1 | -| main.rs:1114:16:1130:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1116:18:1116:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1116:18:1116:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1116:18:1116:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1116:18:1116:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1116:26:1116:31 | id(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1116:29:1116:30 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1119:18:1119:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1119:18:1119:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1119:18:1119:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1119:18:1119:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1119:26:1119:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1119:26:1119:37 | id::<...>(...) | TRef | main.rs:1087:5:1088:14 | S1 | -| main.rs:1119:35:1119:36 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1123:18:1123:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1123:18:1123:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1123:18:1123:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1123:18:1123:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1123:26:1123:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1123:26:1123:44 | id::<...>(...) | TRef | main.rs:1093:5:1093:25 | dyn Trait | -| main.rs:1123:42:1123:43 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1126:9:1126:25 | into::<...>(...) | | main.rs:1090:5:1091:14 | S2 | -| main.rs:1129:13:1129:13 | y | | main.rs:1090:5:1091:14 | S2 | -| main.rs:1143:22:1143:25 | SelfParam | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1143:22:1143:25 | SelfParam | Fst | main.rs:1142:10:1142:12 | Fst | -| main.rs:1143:22:1143:25 | SelfParam | Snd | main.rs:1142:15:1142:17 | Snd | -| main.rs:1143:35:1150:9 | { ... } | | main.rs:1142:15:1142:17 | Snd | -| main.rs:1144:19:1144:22 | self | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1144:19:1144:22 | self | Fst | main.rs:1142:10:1142:12 | Fst | -| main.rs:1144:19:1144:22 | self | Snd | main.rs:1142:15:1142:17 | Snd | -| main.rs:1145:43:1145:82 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1145:50:1145:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | -| main.rs:1145:50:1145:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1145:50:1145:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1145:50:1145:81 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1146:43:1146:81 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1146:50:1146:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | -| main.rs:1146:50:1146:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1146:50:1146:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1146:50:1146:80 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1174:10:1174:10 | t | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1174:10:1174:10 | t | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1174:10:1174:10 | t | Snd | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1174:10:1174:10 | t | Snd.Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1174:10:1174:10 | t | Snd.Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1174:30:1177:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1175:17:1175:17 | t | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1175:17:1175:17 | t | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1175:17:1175:17 | t | Snd | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1175:17:1175:17 | t | Snd.Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1175:17:1175:17 | t | Snd.Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1176:18:1176:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1176:18:1176:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1176:18:1176:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1176:18:1176:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1187:16:1207:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1189:13:1189:14 | p1 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1189:13:1189:14 | p1 | Fst | main.rs:1153:5:1154:14 | S1 | -| main.rs:1189:13:1189:14 | p1 | Snd | main.rs:1156:5:1157:14 | S2 | +| main.rs:940:18:940:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:940:18:940:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:940:26:940:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:940:26:940:37 | id::<...>(...) | TRef | main.rs:908:5:909:14 | S1 | +| main.rs:940:35:940:36 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:944:18:944:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:944:18:944:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:944:18:944:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:944:18:944:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:944:26:944:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:944:26:944:44 | id::<...>(...) | TRef | main.rs:914:5:914:25 | dyn Trait | +| main.rs:944:42:944:43 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:947:9:947:25 | into::<...>(...) | | main.rs:911:5:912:14 | S2 | +| main.rs:950:13:950:13 | y | | main.rs:911:5:912:14 | S2 | +| main.rs:964:22:964:25 | SelfParam | | main.rs:955:5:961:5 | PairOption | +| main.rs:964:22:964:25 | SelfParam | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:964:22:964:25 | SelfParam | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:964:35:971:9 | { ... } | | main.rs:963:15:963:17 | Snd | +| main.rs:965:19:965:22 | self | | main.rs:955:5:961:5 | PairOption | +| main.rs:965:19:965:22 | self | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:965:19:965:22 | self | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:966:43:966:82 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:966:50:966:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | +| main.rs:966:50:966:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:966:50:966:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:966:50:966:81 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:967:43:967:81 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:967:50:967:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | +| main.rs:967:50:967:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:967:50:967:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:967:50:967:80 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:995:10:995:10 | t | | main.rs:955:5:961:5 | PairOption | +| main.rs:995:10:995:10 | t | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:995:10:995:10 | t | Snd | main.rs:955:5:961:5 | PairOption | +| main.rs:995:10:995:10 | t | Snd.Fst | main.rs:977:5:978:14 | S2 | +| main.rs:995:10:995:10 | t | Snd.Snd | main.rs:980:5:981:14 | S3 | +| main.rs:995:30:998:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:996:17:996:17 | t | | main.rs:955:5:961:5 | PairOption | +| main.rs:996:17:996:17 | t | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:996:17:996:17 | t | Snd | main.rs:955:5:961:5 | PairOption | +| main.rs:996:17:996:17 | t | Snd.Fst | main.rs:977:5:978:14 | S2 | +| main.rs:996:17:996:17 | t | Snd.Snd | main.rs:980:5:981:14 | S3 | +| main.rs:997:18:997:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:997:18:997:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:997:18:997:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:997:18:997:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1008:16:1028:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1010:13:1010:14 | p1 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1010:13:1010:14 | p1 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1010:13:1010:14 | p1 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1011:18:1011:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1011:18:1011:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1011:18:1011:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1011:18:1011:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1011:26:1011:27 | p1 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1011:26:1011:27 | p1 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1011:26:1011:27 | p1 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1014:13:1014:14 | p2 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1014:13:1014:14 | p2 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1014:13:1014:14 | p2 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1015:18:1015:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1015:18:1015:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1015:18:1015:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1015:18:1015:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1015:26:1015:27 | p2 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1015:26:1015:27 | p2 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1015:26:1015:27 | p2 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1018:13:1018:14 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1018:13:1018:14 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1019:18:1019:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1019:18:1019:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1019:18:1019:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1019:18:1019:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1019:26:1019:27 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1019:26:1019:27 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1022:13:1022:14 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1022:13:1022:14 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1022:13:1022:14 | p3 | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1023:18:1023:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1023:18:1023:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1023:18:1023:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1023:26:1023:27 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1023:26:1023:27 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1023:26:1023:27 | p3 | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1025:9:1025:55 | g(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1027:13:1027:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1027:13:1027:13 | x | E | main.rs:974:5:975:14 | S1 | +| main.rs:1027:13:1027:13 | x | T | main.rs:1000:5:1000:34 | S4 | +| main.rs:1027:13:1027:13 | x | T.T41 | main.rs:977:5:978:14 | S2 | +| main.rs:1027:13:1027:13 | x | T.T42 | main.rs:1002:5:1002:22 | S5 | +| main.rs:1027:13:1027:13 | x | T.T42.T5 | main.rs:977:5:978:14 | S2 | +| main.rs:1040:16:1040:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1040:16:1040:24 | SelfParam | TRefMut | main.rs:1038:5:1045:5 | Self [trait MyTrait] | +| main.rs:1040:27:1040:31 | value | | main.rs:1038:19:1038:19 | S | +| main.rs:1042:21:1042:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1042:21:1042:29 | SelfParam | TRefMut | main.rs:1038:5:1045:5 | Self [trait MyTrait] | +| main.rs:1042:32:1042:36 | value | | main.rs:1038:19:1038:19 | S | +| main.rs:1042:42:1044:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1043:13:1043:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1043:13:1043:16 | self | TRefMut | main.rs:1038:5:1045:5 | Self [trait MyTrait] | +| main.rs:1043:22:1043:26 | value | | main.rs:1038:19:1038:19 | S | +| main.rs:1049:16:1049:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1049:16:1049:24 | SelfParam | TRefMut | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1049:16:1049:24 | SelfParam | TRefMut.T | main.rs:1047:10:1047:10 | T | +| main.rs:1049:27:1049:31 | value | | main.rs:1047:10:1047:10 | T | +| main.rs:1049:37:1049:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1053:26:1055:9 | { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1053:26:1055:9 | { ... } | T | main.rs:1052:10:1052:10 | T | +| main.rs:1059:20:1059:23 | SelfParam | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1059:20:1059:23 | SelfParam | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1059:20:1059:23 | SelfParam | T.T | main.rs:1058:10:1058:10 | T | +| main.rs:1059:41:1064:9 | { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1059:41:1064:9 | { ... } | T | main.rs:1058:10:1058:10 | T | +| main.rs:1060:19:1060:22 | self | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1060:19:1060:22 | self | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1060:19:1060:22 | self | T.T | main.rs:1058:10:1058:10 | T | +| main.rs:1070:16:1115:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1071:13:1071:14 | x1 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1071:13:1071:14 | x1 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1071:18:1071:37 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1071:18:1071:37 | ...::new(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1072:18:1072:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1072:18:1072:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1072:18:1072:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1072:18:1072:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1072:26:1072:27 | x1 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1072:26:1072:27 | x1 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1074:17:1074:18 | x2 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1074:22:1074:36 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1075:9:1075:10 | x2 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1076:18:1076:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1076:18:1076:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1076:18:1076:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1076:18:1076:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1076:26:1076:27 | x2 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1078:17:1078:18 | x3 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1078:22:1078:36 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1079:9:1079:10 | x3 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1080:18:1080:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1080:18:1080:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1080:18:1080:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1080:18:1080:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1080:26:1080:27 | x3 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1082:17:1082:18 | x4 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1082:22:1082:36 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1083:9:1083:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1083:23:1083:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | +| main.rs:1083:28:1083:29 | x4 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1084:18:1084:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1084:18:1084:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1084:18:1084:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1084:18:1084:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1084:26:1084:27 | x4 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1087:18:1087:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1087:18:1087:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1087:18:1087:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1087:18:1087:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1090:18:1090:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1090:18:1090:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1090:18:1090:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1090:18:1090:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1090:26:1090:61 | ...::flatten(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1090:26:1090:61 | ...::flatten(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1098:18:1098:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1098:18:1098:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1098:18:1098:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1098:18:1098:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1102:13:1102:16 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1103:13:1103:17 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1105:18:1105:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1105:18:1105:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1105:18:1105:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1105:18:1105:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1108:30:1113:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1109:13:1111:13 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1109:22:1111:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1114:18:1114:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1114:18:1114:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1114:18:1114:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1114:18:1114:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1132:15:1132:18 | SelfParam | | main.rs:1120:5:1121:19 | S | +| main.rs:1132:15:1132:18 | SelfParam | T | main.rs:1131:10:1131:10 | T | +| main.rs:1132:26:1134:9 | { ... } | | main.rs:1131:10:1131:10 | T | +| main.rs:1133:13:1133:16 | self | | main.rs:1120:5:1121:19 | S | +| main.rs:1133:13:1133:16 | self | T | main.rs:1131:10:1131:10 | T | +| main.rs:1136:15:1136:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1136:15:1136:19 | SelfParam | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1136:15:1136:19 | SelfParam | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1136:28:1138:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1136:28:1138:9 | { ... } | TRef | main.rs:1131:10:1131:10 | T | +| main.rs:1137:13:1137:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1137:14:1137:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1137:14:1137:17 | self | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1137:14:1137:17 | self | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1140:15:1140:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1140:15:1140:25 | SelfParam | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1140:15:1140:25 | SelfParam | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1140:34:1142:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1140:34:1142:9 | { ... } | TRef | main.rs:1131:10:1131:10 | T | +| main.rs:1141:13:1141:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1141:14:1141:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1141:14:1141:17 | self | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1141:14:1141:17 | self | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1146:29:1146:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1146:29:1146:33 | SelfParam | TRef | main.rs:1145:5:1148:5 | Self [trait ATrait] | +| main.rs:1147:33:1147:36 | SelfParam | | main.rs:1145:5:1148:5 | Self [trait ATrait] | +| main.rs:1153:29:1153:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1153:29:1153:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1153:29:1153:33 | SelfParam | TRef.TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1153:43:1155:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1154:17:1154:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1154:17:1154:20 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1154:17:1154:20 | self | TRef.TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1158:33:1158:36 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1158:33:1158:36 | SelfParam | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1158:46:1160:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1159:15:1159:18 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1159:15:1159:18 | self | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1163:16:1213:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1165:18:1165:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1165:18:1165:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1165:18:1165:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1165:18:1165:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1169:18:1169:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1169:18:1169:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1169:18:1169:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1169:18:1169:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1170:18:1170:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1170:18:1170:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1170:18:1170:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1170:18:1170:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1174:18:1174:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1174:18:1174:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1174:18:1174:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1174:18:1174:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1174:26:1174:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1174:26:1174:41 | ...::m2(...) | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1174:38:1174:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1175:18:1175:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1175:18:1175:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1175:18:1175:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1175:18:1175:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1175:26:1175:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1175:26:1175:41 | ...::m3(...) | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1175:38:1175:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1177:13:1177:14 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1177:18:1177:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1179:18:1179:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1179:18:1179:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1179:18:1179:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1179:18:1179:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1179:26:1179:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1180:18:1180:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1180:18:1180:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1180:18:1180:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1180:18:1180:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1180:26:1180:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1182:13:1182:14 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1182:18:1182:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1184:18:1184:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1184:18:1184:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1184:18:1184:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1184:18:1184:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1184:26:1184:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1185:18:1185:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1185:18:1185:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1185:18:1185:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1185:18:1185:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1185:26:1185:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1187:13:1187:14 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1187:18:1187:23 | &... | | {EXTERNAL LOCATION} | & | | main.rs:1190:18:1190:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1190:18:1190:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1190:18:1190:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1190:18:1190:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1190:26:1190:27 | p1 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1190:26:1190:27 | p1 | Fst | main.rs:1153:5:1154:14 | S1 | -| main.rs:1190:26:1190:27 | p1 | Snd | main.rs:1156:5:1157:14 | S2 | -| main.rs:1193:13:1193:14 | p2 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1193:13:1193:14 | p2 | Fst | main.rs:1153:5:1154:14 | S1 | -| main.rs:1193:13:1193:14 | p2 | Snd | main.rs:1156:5:1157:14 | S2 | -| main.rs:1194:18:1194:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1194:18:1194:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1194:18:1194:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1194:18:1194:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1194:26:1194:27 | p2 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1194:26:1194:27 | p2 | Fst | main.rs:1153:5:1154:14 | S1 | -| main.rs:1194:26:1194:27 | p2 | Snd | main.rs:1156:5:1157:14 | S2 | -| main.rs:1197:13:1197:14 | p3 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1197:13:1197:14 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1198:18:1198:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1198:18:1198:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1198:18:1198:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1198:18:1198:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1198:26:1198:27 | p3 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1198:26:1198:27 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1201:13:1201:14 | p3 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1201:13:1201:14 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1201:13:1201:14 | p3 | Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1202:18:1202:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1202:18:1202:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1202:18:1202:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1202:18:1202:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1202:26:1202:27 | p3 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1202:26:1202:27 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1202:26:1202:27 | p3 | Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1204:9:1204:55 | g(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1206:13:1206:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1206:13:1206:13 | x | E | main.rs:1153:5:1154:14 | S1 | -| main.rs:1206:13:1206:13 | x | T | main.rs:1179:5:1179:34 | S4 | -| main.rs:1206:13:1206:13 | x | T.T41 | main.rs:1156:5:1157:14 | S2 | -| main.rs:1206:13:1206:13 | x | T.T42 | main.rs:1181:5:1181:22 | S5 | -| main.rs:1206:13:1206:13 | x | T.T42.T5 | main.rs:1156:5:1157:14 | S2 | -| main.rs:1219:16:1219:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1219:16:1219:24 | SelfParam | TRefMut | main.rs:1217:5:1224:5 | Self [trait MyTrait] | -| main.rs:1219:27:1219:31 | value | | main.rs:1217:19:1217:19 | S | -| main.rs:1221:21:1221:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1221:21:1221:29 | SelfParam | TRefMut | main.rs:1217:5:1224:5 | Self [trait MyTrait] | -| main.rs:1221:32:1221:36 | value | | main.rs:1217:19:1217:19 | S | -| main.rs:1221:42:1223:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1222:13:1222:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1222:13:1222:16 | self | TRefMut | main.rs:1217:5:1224:5 | Self [trait MyTrait] | -| main.rs:1222:22:1222:26 | value | | main.rs:1217:19:1217:19 | S | -| main.rs:1228:16:1228:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1228:16:1228:24 | SelfParam | TRefMut | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1228:16:1228:24 | SelfParam | TRefMut.T | main.rs:1226:10:1226:10 | T | -| main.rs:1228:27:1228:31 | value | | main.rs:1226:10:1226:10 | T | -| main.rs:1228:37:1228:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1232:26:1234:9 | { ... } | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1232:26:1234:9 | { ... } | T | main.rs:1231:10:1231:10 | T | -| main.rs:1238:20:1238:23 | SelfParam | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1238:20:1238:23 | SelfParam | T | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1238:20:1238:23 | SelfParam | T.T | main.rs:1237:10:1237:10 | T | -| main.rs:1238:41:1243:9 | { ... } | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1238:41:1243:9 | { ... } | T | main.rs:1237:10:1237:10 | T | -| main.rs:1239:19:1239:22 | self | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1239:19:1239:22 | self | T | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1239:19:1239:22 | self | T.T | main.rs:1237:10:1237:10 | T | -| main.rs:1249:16:1294:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1250:13:1250:14 | x1 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1250:13:1250:14 | x1 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1250:18:1250:37 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1250:18:1250:37 | ...::new(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1251:18:1251:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1251:18:1251:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1251:18:1251:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1251:18:1251:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1251:26:1251:27 | x1 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1251:26:1251:27 | x1 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1253:17:1253:18 | x2 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1253:22:1253:36 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1254:9:1254:10 | x2 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1255:18:1255:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1255:18:1255:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1255:18:1255:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1255:18:1255:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1255:26:1255:27 | x2 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1257:17:1257:18 | x3 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1257:22:1257:36 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1258:9:1258:10 | x3 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1259:18:1259:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1259:18:1259:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1259:18:1259:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1259:18:1259:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1259:26:1259:27 | x3 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1261:17:1261:18 | x4 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1261:22:1261:36 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1262:9:1262:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1262:23:1262:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | -| main.rs:1262:28:1262:29 | x4 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1263:18:1263:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1263:18:1263:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1263:18:1263:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1263:18:1263:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1263:26:1263:27 | x4 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1266:18:1266:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1266:18:1266:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1266:18:1266:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1266:18:1266:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1269:18:1269:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1269:18:1269:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1269:18:1269:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1269:18:1269:61 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1269:26:1269:61 | ...::flatten(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1269:26:1269:61 | ...::flatten(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1277:18:1277:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1277:18:1277:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1277:18:1277:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1277:18:1277:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1281:13:1281:16 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1282:13:1282:17 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1284:18:1284:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1284:18:1284:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1284:18:1284:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1284:18:1284:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1287:30:1292:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1288:13:1290:13 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1288:22:1290:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1293:18:1293:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1293:18:1293:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1293:18:1293:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1293:18:1293:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1311:15:1311:18 | SelfParam | | main.rs:1299:5:1300:19 | S | -| main.rs:1311:15:1311:18 | SelfParam | T | main.rs:1310:10:1310:10 | T | -| main.rs:1311:26:1313:9 | { ... } | | main.rs:1310:10:1310:10 | T | -| main.rs:1312:13:1312:16 | self | | main.rs:1299:5:1300:19 | S | -| main.rs:1312:13:1312:16 | self | T | main.rs:1310:10:1310:10 | T | -| main.rs:1315:15:1315:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1315:15:1315:19 | SelfParam | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1315:15:1315:19 | SelfParam | TRef.T | main.rs:1310:10:1310:10 | T | -| main.rs:1315:28:1317:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1315:28:1317:9 | { ... } | TRef | main.rs:1310:10:1310:10 | T | -| main.rs:1316:13:1316:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1316:14:1316:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1316:14:1316:17 | self | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1316:14:1316:17 | self | TRef.T | main.rs:1310:10:1310:10 | T | -| main.rs:1319:15:1319:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1319:15:1319:25 | SelfParam | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1319:15:1319:25 | SelfParam | TRef.T | main.rs:1310:10:1310:10 | T | -| main.rs:1319:34:1321:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1319:34:1321:9 | { ... } | TRef | main.rs:1310:10:1310:10 | T | -| main.rs:1320:13:1320:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1320:14:1320:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1320:14:1320:17 | self | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1320:14:1320:17 | self | TRef.T | main.rs:1310:10:1310:10 | T | -| main.rs:1325:29:1325:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1325:29:1325:33 | SelfParam | TRef | main.rs:1324:5:1327:5 | Self [trait ATrait] | -| main.rs:1326:33:1326:36 | SelfParam | | main.rs:1324:5:1327:5 | Self [trait ATrait] | -| main.rs:1332:29:1332:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1332:29:1332:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1332:29:1332:33 | SelfParam | TRef.TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1332:43:1334:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1333:17:1333:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1333:17:1333:20 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1333:17:1333:20 | self | TRef.TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1337:33:1337:36 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1337:33:1337:36 | SelfParam | TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1337:46:1339:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1338:15:1338:18 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1338:15:1338:18 | self | TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1342:16:1392:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1344:18:1344:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1344:18:1344:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1348:18:1348:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1348:18:1348:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1348:18:1348:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1348:18:1348:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1349:18:1349:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1349:18:1349:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1349:18:1349:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1349:18:1349:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1353:18:1353:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1353:18:1353:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1353:18:1353:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1353:18:1353:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1353:26:1353:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1353:26:1353:41 | ...::m2(...) | TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1353:38:1353:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1354:18:1354:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1354:18:1354:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1354:18:1354:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1354:18:1354:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1354:26:1354:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1354:26:1354:41 | ...::m3(...) | TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1354:38:1354:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1356:13:1356:14 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1356:18:1356:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1358:18:1358:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1358:18:1358:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1358:18:1358:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1358:18:1358:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1358:26:1358:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1359:18:1359:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1359:18:1359:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1359:18:1359:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1359:18:1359:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1359:26:1359:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1361:13:1361:14 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1361:18:1361:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1363:18:1363:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1363:18:1363:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1363:18:1363:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1363:18:1363:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1363:26:1363:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1364:18:1364:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1364:18:1364:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1364:18:1364:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1364:18:1364:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1364:26:1364:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1366:13:1366:14 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1366:18:1366:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1369:18:1369:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1369:18:1369:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1369:18:1369:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1369:18:1369:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1369:28:1369:29 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1371:20:1371:22 | &S2 | | {EXTERNAL LOCATION} | & | -| main.rs:1375:18:1375:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1375:18:1375:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1375:18:1375:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1375:18:1375:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1377:13:1377:14 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1377:26:1377:32 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1377:26:1377:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1381:17:1381:18 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1383:13:1383:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1383:24:1383:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1383:25:1383:39 | MyInt {...} | | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1385:17:1385:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1386:18:1386:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1386:18:1386:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1386:18:1386:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1386:18:1386:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1389:13:1389:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1389:24:1389:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1389:25:1389:39 | MyInt {...} | | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1390:17:1390:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1391:18:1391:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1391:18:1391:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1391:18:1391:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1391:18:1391:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1398:16:1398:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1398:16:1398:20 | SelfParam | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | -| main.rs:1401:16:1401:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1401:16:1401:20 | SelfParam | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | -| main.rs:1401:32:1403:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1401:32:1403:9 | { ... } | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | -| main.rs:1402:13:1402:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1402:13:1402:16 | self | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | -| main.rs:1410:16:1410:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1410:16:1410:20 | SelfParam | TRef | main.rs:1406:5:1406:20 | MyStruct | -| main.rs:1410:36:1412:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1410:36:1412:9 | { ... } | TRef | main.rs:1406:5:1406:20 | MyStruct | -| main.rs:1411:13:1411:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1411:13:1411:16 | self | TRef | main.rs:1406:5:1406:20 | MyStruct | -| main.rs:1415:16:1418:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1427:16:1427:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1427:16:1427:20 | SelfParam | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1427:16:1427:20 | SelfParam | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1427:32:1429:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1427:32:1429:9 | { ... } | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1427:32:1429:9 | { ... } | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1428:13:1428:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1428:13:1428:16 | self | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1428:13:1428:16 | self | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1431:16:1431:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1431:16:1431:20 | SelfParam | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1431:16:1431:20 | SelfParam | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1431:23:1431:23 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1431:23:1431:23 | x | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1431:23:1431:23 | x | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1431:42:1433:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1431:42:1433:9 | { ... } | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1431:42:1433:9 | { ... } | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1432:13:1432:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1432:13:1432:16 | self | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1432:13:1432:16 | self | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1436:16:1442:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1441:15:1441:17 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1441:16:1441:17 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1452:17:1452:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1452:17:1452:25 | SelfParam | TRefMut | main.rs:1446:5:1449:5 | MyFlag | -| main.rs:1452:28:1454:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1453:13:1453:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1453:13:1453:16 | self | TRefMut | main.rs:1446:5:1449:5 | MyFlag | -| main.rs:1453:26:1453:29 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1453:26:1453:29 | self | TRefMut | main.rs:1446:5:1449:5 | MyFlag | -| main.rs:1460:15:1460:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1460:15:1460:19 | SelfParam | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1460:31:1462:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1460:31:1462:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1461:13:1461:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1461:14:1461:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1461:15:1461:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1461:16:1461:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1461:16:1461:19 | self | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1464:15:1464:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1464:15:1464:25 | SelfParam | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1464:37:1466:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1464:37:1466:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1465:13:1465:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1465:14:1465:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1465:15:1465:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1465:16:1465:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1465:16:1465:19 | self | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1468:15:1468:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1468:15:1468:15 | x | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1468:34:1470:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1468:34:1470:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1469:13:1469:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1469:13:1469:13 | x | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1472:15:1472:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1472:15:1472:15 | x | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1472:34:1474:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1472:34:1474:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1473:13:1473:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1473:14:1473:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1473:15:1473:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1473:16:1473:16 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1473:16:1473:16 | x | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1477:16:1490:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1478:13:1478:13 | x | | main.rs:1457:5:1457:13 | S | -| main.rs:1478:17:1478:20 | S {...} | | main.rs:1457:5:1457:13 | S | -| main.rs:1479:9:1479:9 | x | | main.rs:1457:5:1457:13 | S | -| main.rs:1480:9:1480:9 | x | | main.rs:1457:5:1457:13 | S | -| main.rs:1481:9:1481:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1481:9:1481:17 | ...::f3(...) | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1481:15:1481:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1481:16:1481:16 | x | | main.rs:1457:5:1457:13 | S | -| main.rs:1483:19:1483:24 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1483:20:1483:24 | &true | | {EXTERNAL LOCATION} | & | -| main.rs:1483:21:1483:24 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1488:9:1488:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1488:22:1488:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | -| main.rs:1489:18:1489:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1489:18:1489:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1489:18:1489:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1489:18:1489:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1504:43:1507:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1504:43:1507:5 | { ... } | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1504:43:1507:5 | { ... } | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1511:46:1515:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1511:46:1515:5 | { ... } | E | main.rs:1499:5:1500:14 | S2 | -| main.rs:1511:46:1515:5 | { ... } | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1519:40:1524:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1519:40:1524:5 | { ... } | E | main.rs:1499:5:1500:14 | S2 | -| main.rs:1519:40:1524:5 | { ... } | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1528:30:1528:34 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1528:30:1528:34 | input | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1528:30:1528:34 | input | T | main.rs:1528:20:1528:27 | T | -| main.rs:1528:69:1535:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1528:69:1535:5 | { ... } | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1528:69:1535:5 | { ... } | T | main.rs:1528:20:1528:27 | T | -| main.rs:1529:21:1529:25 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1529:21:1529:25 | input | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1529:21:1529:25 | input | T | main.rs:1528:20:1528:27 | T | -| main.rs:1531:22:1531:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1531:22:1531:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1531:22:1531:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1531:22:1531:30 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1538:16:1554:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1539:9:1541:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1539:37:1539:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1539:37:1539:52 | try_same_error(...) | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1539:37:1539:52 | try_same_error(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1539:54:1541:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1540:22:1540:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1540:22:1540:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1540:22:1540:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1540:22:1540:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1543:9:1545:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1543:37:1543:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1543:37:1543:55 | try_convert_error(...) | E | main.rs:1499:5:1500:14 | S2 | -| main.rs:1543:37:1543:55 | try_convert_error(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1543:57:1545:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1544:22:1544:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1544:22:1544:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1544:22:1544:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1544:22:1544:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1547:9:1549:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1547:37:1547:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1547:37:1547:49 | try_chained(...) | E | main.rs:1499:5:1500:14 | S2 | -| main.rs:1547:37:1547:49 | try_chained(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1547:51:1549:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1548:22:1548:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1548:22:1548:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1548:22:1548:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1548:22:1548:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1551:9:1553:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1551:37:1551:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1551:37:1551:63 | try_complex(...) | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1551:65:1553:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1552:22:1552:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1552:22:1552:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1552:22:1552:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1552:22:1552:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1558:16:1649:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1559:13:1559:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1561:17:1561:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1562:17:1562:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1563:13:1563:13 | c | | {EXTERNAL LOCATION} | char | -| main.rs:1563:17:1563:19 | 'c' | | {EXTERNAL LOCATION} | char | -| main.rs:1564:13:1564:17 | hello | | {EXTERNAL LOCATION} | & | -| main.rs:1564:13:1564:17 | hello | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1564:21:1564:27 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1564:21:1564:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1565:13:1565:13 | f | | {EXTERNAL LOCATION} | f64 | -| main.rs:1565:17:1565:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | -| main.rs:1566:13:1566:13 | t | | {EXTERNAL LOCATION} | bool | -| main.rs:1566:17:1566:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1567:13:1567:13 | f | | {EXTERNAL LOCATION} | bool | -| main.rs:1567:17:1567:21 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1570:26:1570:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1570:26:1570:30 | SelfParam | TRef | main.rs:1569:9:1573:9 | Self [trait MyTrait] | -| main.rs:1576:26:1576:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1576:26:1576:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1576:26:1576:30 | SelfParam | TRef.TArray | main.rs:1575:14:1575:23 | T | -| main.rs:1576:39:1578:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1576:39:1578:13 | { ... } | TRef | main.rs:1575:14:1575:23 | T | -| main.rs:1577:17:1577:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1577:17:1577:20 | self | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1577:17:1577:20 | self | TRef.TArray | main.rs:1575:14:1575:23 | T | -| main.rs:1580:31:1582:13 | { ... } | | main.rs:1575:14:1575:23 | T | -| main.rs:1585:17:1585:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1586:13:1586:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1586:17:1586:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1586:37:1586:46 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1586:38:1586:46 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1587:13:1587:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1587:17:1587:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1590:26:1590:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1590:26:1590:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1590:26:1590:30 | SelfParam | TRef.TSlice | main.rs:1589:14:1589:23 | T | -| main.rs:1590:39:1592:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1590:39:1592:13 | { ... } | TRef | main.rs:1589:14:1589:23 | T | -| main.rs:1591:17:1591:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1591:17:1591:20 | self | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1591:17:1591:20 | self | TRef.TSlice | main.rs:1589:14:1589:23 | T | -| main.rs:1594:31:1596:13 | { ... } | | main.rs:1589:14:1589:23 | T | -| main.rs:1599:13:1599:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1599:13:1599:13 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1599:13:1599:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:25:1599:34 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1599:26:1599:34 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1600:17:1600:17 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1600:17:1600:17 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1600:17:1600:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1601:13:1601:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1601:17:1601:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1601:34:1601:34 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1601:34:1601:34 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1601:34:1601:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1602:13:1602:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1602:17:1602:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1605:26:1605:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1605:26:1605:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1605:26:1605:30 | SelfParam | TRef.T0 | main.rs:1604:14:1604:23 | T | -| main.rs:1605:26:1605:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1605:39:1607:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1605:39:1607:13 | { ... } | TRef | main.rs:1604:14:1604:23 | T | -| main.rs:1606:17:1606:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1606:18:1606:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1606:18:1606:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1606:18:1606:21 | self | TRef.T0 | main.rs:1604:14:1604:23 | T | -| main.rs:1606:18:1606:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1609:31:1611:13 | { ... } | | main.rs:1604:14:1604:23 | T | -| main.rs:1614:13:1614:13 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1614:17:1614:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1615:17:1615:17 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1616:13:1616:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1616:17:1616:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1616:37:1616:38 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1616:38:1616:38 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1617:13:1617:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1617:17:1617:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1620:26:1620:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1620:26:1620:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1620:26:1620:30 | SelfParam | TRef.TRef | main.rs:1619:14:1619:23 | T | -| main.rs:1620:39:1622:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1620:39:1622:13 | { ... } | TRef | main.rs:1619:14:1619:23 | T | -| main.rs:1621:18:1621:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1621:18:1621:21 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1621:18:1621:21 | self | TRef.TRef | main.rs:1619:14:1619:23 | T | -| main.rs:1624:31:1626:13 | { ... } | | main.rs:1619:14:1619:23 | T | -| main.rs:1629:13:1629:13 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1629:17:1629:19 | &42 | | {EXTERNAL LOCATION} | & | -| main.rs:1630:17:1630:17 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1631:13:1631:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1631:17:1631:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1631:33:1631:34 | &r | | {EXTERNAL LOCATION} | & | -| main.rs:1631:34:1631:34 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1632:13:1632:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1632:17:1632:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1635:26:1635:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1635:26:1635:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1635:26:1635:30 | SelfParam | TRef.TPtrMut | main.rs:1634:14:1634:23 | T | -| main.rs:1635:39:1637:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1635:39:1637:13 | { ... } | TRef | main.rs:1634:14:1634:23 | T | -| main.rs:1636:26:1636:32 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1636:29:1636:32 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1636:29:1636:32 | self | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1636:29:1636:32 | self | TRef.TPtrMut | main.rs:1634:14:1634:23 | T | -| main.rs:1639:31:1641:13 | { ... } | | main.rs:1634:14:1634:23 | T | -| main.rs:1645:13:1645:13 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1645:13:1645:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1645:27:1645:32 | &mut v | | {EXTERNAL LOCATION} | &mut | -| main.rs:1646:26:1646:26 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1646:26:1646:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1647:26:1647:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1647:46:1647:47 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1647:47:1647:47 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1647:47:1647:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1648:13:1648:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1648:17:1648:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1654:16:1666:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1655:13:1655:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:1655:17:1655:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1655:17:1655:29 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1655:25:1655:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1656:13:1656:13 | y | | {EXTERNAL LOCATION} | bool | -| main.rs:1656:17:1656:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1656:17:1656:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1656:25:1656:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1660:17:1662:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1662:16:1664:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1679:30:1681:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1680:13:1680:31 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1687:16:1687:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1687:22:1687:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1687:41:1692:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1688:13:1691:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1689:20:1689:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1689:29:1689:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1690:20:1690:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1690:29:1690:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1697:23:1697:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1697:23:1697:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1697:34:1697:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1697:45:1700:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1698:13:1698:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1698:13:1698:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1698:23:1698:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1699:13:1699:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1699:13:1699:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1699:23:1699:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1705:16:1705:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1705:22:1705:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1705:41:1710:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1706:13:1709:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1707:20:1707:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1707:29:1707:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1708:20:1708:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1708:29:1708:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1715:23:1715:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1715:23:1715:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1715:34:1715:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1715:45:1718:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1716:13:1716:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1716:13:1716:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1716:23:1716:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1717:13:1717:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1717:13:1717:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1717:23:1717:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1723:16:1723:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1723:22:1723:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1723:41:1728:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1724:13:1727:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1725:20:1725:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1725:29:1725:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1726:20:1726:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1726:29:1726:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1732:23:1732:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1732:23:1732:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1732:34:1732:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1732:45:1735:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1733:13:1733:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1733:13:1733:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1733:23:1733:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1734:13:1734:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1734:13:1734:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1734:23:1734:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1740:16:1740:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1740:22:1740:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1740:41:1745:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1741:13:1744:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1742:20:1742:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1742:29:1742:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1743:20:1743:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1743:29:1743:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1749:23:1749:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1749:23:1749:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1749:34:1749:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1749:45:1752:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1750:13:1750:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1750:13:1750:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1750:23:1750:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1751:13:1751:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1751:13:1751:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1751:23:1751:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1757:16:1757:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1757:22:1757:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1757:41:1762:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1758:13:1761:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1759:20:1759:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1759:29:1759:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1760:20:1760:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1760:29:1760:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1766:23:1766:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1766:23:1766:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1766:34:1766:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1766:45:1769:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1767:13:1767:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1767:13:1767:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1767:23:1767:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1768:13:1768:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1768:13:1768:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1768:23:1768:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1774:19:1774:22 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1774:25:1774:27 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1774:44:1779:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1775:13:1778:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1776:20:1776:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1776:29:1776:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1777:20:1777:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1777:29:1777:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1783:26:1783:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1783:26:1783:34 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1783:37:1783:39 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1783:48:1786:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1784:13:1784:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1784:13:1784:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1784:23:1784:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1785:13:1785:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1785:13:1785:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1785:23:1785:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1791:18:1791:21 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1791:24:1791:26 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1791:43:1796:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1792:13:1795:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1793:20:1793:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1793:29:1793:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1794:20:1794:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1794:29:1794:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1800:25:1800:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1800:25:1800:33 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1800:36:1800:38 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1800:47:1803:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1801:13:1801:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1801:13:1801:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1801:23:1801:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1802:13:1802:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1802:13:1802:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1802:23:1802:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1808:19:1808:22 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1808:25:1808:27 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1808:44:1813:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1809:13:1812:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1810:20:1810:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1810:29:1810:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1811:20:1811:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1811:29:1811:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1817:26:1817:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1817:26:1817:34 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1817:37:1817:39 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1817:48:1820:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1818:13:1818:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1818:13:1818:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1818:23:1818:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1819:13:1819:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1819:13:1819:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1819:23:1819:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1825:16:1825:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1825:22:1825:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1825:40:1830:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1826:13:1829:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1827:20:1827:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1827:30:1827:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1828:20:1828:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1828:30:1828:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1834:23:1834:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1834:23:1834:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1834:34:1834:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1834:44:1837:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1835:13:1835:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1835:13:1835:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1835:24:1835:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1836:13:1836:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1836:13:1836:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1836:24:1836:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1842:16:1842:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1842:22:1842:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1842:40:1847:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1843:13:1846:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1844:20:1844:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1844:30:1844:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1845:20:1845:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1845:30:1845:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1851:23:1851:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1851:23:1851:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1851:34:1851:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1851:44:1854:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1852:13:1852:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1852:13:1852:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1852:24:1852:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1853:13:1853:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1853:13:1853:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1853:24:1853:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1859:16:1859:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1859:30:1864:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1860:13:1863:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1861:21:1861:24 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1862:21:1862:24 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1869:16:1869:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1869:30:1874:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1870:13:1873:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1871:21:1871:24 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1872:21:1872:24 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1878:15:1878:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1878:15:1878:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1878:22:1878:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1878:22:1878:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1878:44:1880:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1879:13:1879:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1879:13:1879:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1879:13:1879:29 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1879:13:1879:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1879:23:1879:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1879:23:1879:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1879:34:1879:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1879:34:1879:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1879:34:1879:50 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1879:44:1879:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1879:44:1879:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1882:15:1882:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1882:15:1882:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1882:22:1882:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1882:22:1882:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1882:44:1884:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1883:13:1883:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1883:13:1883:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1883:13:1883:29 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1883:13:1883:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1883:23:1883:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1883:23:1883:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1883:34:1883:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1883:34:1883:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1883:34:1883:50 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1883:44:1883:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1883:44:1883:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1888:24:1888:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1888:24:1888:28 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1888:31:1888:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1888:31:1888:35 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1888:75:1890:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:1888:75:1890:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | -| main.rs:1889:14:1889:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1889:14:1889:17 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1889:23:1889:26 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1889:23:1889:26 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1889:43:1889:62 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1889:45:1889:49 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1889:45:1889:49 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1889:55:1889:59 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1889:55:1889:59 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1892:15:1892:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1892:15:1892:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1892:22:1892:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1892:22:1892:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1892:44:1894:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1893:13:1893:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1893:13:1893:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1893:13:1893:28 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1893:13:1893:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1893:22:1893:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1893:22:1893:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1893:33:1893:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1893:33:1893:36 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1893:33:1893:48 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1893:42:1893:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1893:42:1893:46 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1896:15:1896:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1896:15:1896:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1896:22:1896:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1896:22:1896:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1896:44:1898:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1897:13:1897:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1897:13:1897:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1897:13:1897:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1897:13:1897:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1897:23:1897:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1897:23:1897:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1897:34:1897:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1897:34:1897:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1897:34:1897:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1897:44:1897:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1897:44:1897:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1900:15:1900:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1900:15:1900:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1900:22:1900:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1900:22:1900:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1900:44:1902:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1901:13:1901:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1901:13:1901:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1901:13:1901:28 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1901:13:1901:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1901:22:1901:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1901:22:1901:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1901:33:1901:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1901:33:1901:36 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1901:33:1901:48 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1901:42:1901:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1901:42:1901:46 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1904:15:1904:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1904:15:1904:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1904:22:1904:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1904:22:1904:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1904:44:1906:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1905:13:1905:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1905:13:1905:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1905:13:1905:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1905:13:1905:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1905:23:1905:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1905:23:1905:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1905:34:1905:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1905:34:1905:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1905:34:1905:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1905:44:1905:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1905:44:1905:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1909:26:1909:26 | a | | main.rs:1909:18:1909:23 | T | -| main.rs:1909:32:1909:32 | b | | main.rs:1909:18:1909:23 | T | -| main.rs:1910:9:1910:9 | a | | main.rs:1909:18:1909:23 | T | -| main.rs:1910:13:1910:13 | b | | main.rs:1909:18:1909:23 | T | -| main.rs:1913:16:2044:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1917:23:1917:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1917:31:1917:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:23:1918:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:31:1918:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:23:1919:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:30:1919:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:23:1920:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:31:1920:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:23:1921:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:30:1921:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:23:1922:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:32:1922:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:23:1925:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:31:1925:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:23:1926:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:31:1926:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1927:23:1927:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1927:31:1927:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:23:1928:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:31:1928:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:23:1929:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:31:1929:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1930:39:1930:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1930:45:1930:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1933:17:1933:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1933:34:1933:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1934:9:1934:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1934:27:1934:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1936:17:1936:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1936:34:1936:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1937:9:1937:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1937:27:1937:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1939:17:1939:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1939:34:1939:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1940:9:1940:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1940:27:1940:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1942:17:1942:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1942:34:1942:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1943:9:1943:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1943:27:1943:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1945:17:1945:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1945:34:1945:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1946:9:1946:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1946:27:1946:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1949:26:1949:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1949:34:1949:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1950:25:1950:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1950:33:1950:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1951:26:1951:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1951:34:1951:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1952:23:1952:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1952:32:1952:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1953:23:1953:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1953:32:1953:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1956:17:1956:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1956:37:1956:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1957:9:1957:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1957:30:1957:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1959:17:1959:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1959:36:1959:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1960:9:1960:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1960:29:1960:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1962:17:1962:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1962:37:1962:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1963:9:1963:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1963:30:1963:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1965:17:1965:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1965:34:1965:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1966:9:1966:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1966:28:1966:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1968:17:1968:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1968:34:1968:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1969:9:1969:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1969:28:1969:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1971:24:1971:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1972:24:1972:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1975:13:1975:14 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1975:18:1975:36 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1976:13:1976:14 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1976:18:1976:36 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1979:23:1979:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1979:29:1979:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1980:23:1980:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1980:29:1980:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1981:23:1981:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1981:28:1981:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1982:23:1982:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1982:29:1982:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1983:23:1983:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1983:28:1983:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1984:23:1984:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1984:29:1984:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1987:24:1987:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1987:29:1987:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1988:24:1988:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1988:29:1988:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1989:24:1989:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1989:29:1989:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1990:24:1990:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1990:29:1990:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1991:24:1991:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1991:29:1991:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1994:17:1994:31 | vec2_add_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1994:35:1994:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1995:9:1995:23 | vec2_add_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1995:28:1995:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1997:17:1997:31 | vec2_sub_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1997:35:1997:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1998:9:1998:23 | vec2_sub_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1998:28:1998:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2000:17:2000:31 | vec2_mul_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2000:35:2000:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2001:9:2001:23 | vec2_mul_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2001:28:2001:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2003:17:2003:31 | vec2_div_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2003:35:2003:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2004:9:2004:23 | vec2_div_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2004:28:2004:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2006:17:2006:31 | vec2_rem_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2006:35:2006:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2007:9:2007:23 | vec2_rem_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2007:28:2007:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2010:27:2010:28 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2010:32:2010:33 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2011:26:2011:27 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2011:31:2011:32 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2012:27:2012:28 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2012:32:2012:33 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2013:24:2013:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2013:30:2013:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2014:24:2014:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2014:30:2014:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2017:17:2017:34 | vec2_bitand_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2017:38:2017:39 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2018:9:2018:26 | vec2_bitand_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2018:31:2018:32 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2020:17:2020:33 | vec2_bitor_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2020:37:2020:38 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2021:9:2021:25 | vec2_bitor_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2021:30:2021:31 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2023:17:2023:34 | vec2_bitxor_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2023:38:2023:39 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2024:9:2024:26 | vec2_bitxor_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2024:31:2024:32 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2026:17:2026:31 | vec2_shl_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2026:35:2026:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2027:9:2027:23 | vec2_shl_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2027:29:2027:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2029:17:2029:31 | vec2_shr_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2029:35:2029:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2030:9:2030:23 | vec2_shr_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2030:29:2030:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2033:25:2033:26 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2034:25:2034:26 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2038:30:2038:48 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2043:30:2043:48 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2053:18:2053:21 | SelfParam | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2053:24:2053:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2056:25:2058:5 | { ... } | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2061:9:2061:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2065:9:2065:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2065:9:2065:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2074:13:2074:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | -| main.rs:2074:13:2074:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | -| main.rs:2074:13:2074:42 | SelfParam | Ptr.TRefMut | main.rs:2068:5:2068:14 | S2 | -| main.rs:2075:13:2075:15 | _cx | | {EXTERNAL LOCATION} | &mut | -| main.rs:2075:13:2075:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | -| main.rs:2076:44:2078:9 | { ... } | | {EXTERNAL LOCATION} | Poll | -| main.rs:2076:44:2078:9 | { ... } | T | main.rs:2050:5:2050:14 | S1 | -| main.rs:2085:22:2093:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2086:9:2086:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2086:9:2086:12 | f1(...) | dyn(Output) | main.rs:2050:5:2050:14 | S1 | -| main.rs:2087:9:2087:12 | f2(...) | | main.rs:2060:16:2060:39 | impl ... | -| main.rs:2088:9:2088:12 | f3(...) | | main.rs:2064:16:2064:39 | impl ... | -| main.rs:2089:9:2089:12 | f4(...) | | main.rs:2081:16:2081:39 | impl ... | -| main.rs:2091:13:2091:13 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2091:17:2091:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2092:9:2092:9 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2103:15:2103:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2103:15:2103:19 | SelfParam | TRef | main.rs:2102:5:2104:5 | Self [trait Trait1] | -| main.rs:2103:22:2103:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2107:15:2107:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2107:15:2107:19 | SelfParam | TRef | main.rs:2106:5:2108:5 | Self [trait Trait2] | -| main.rs:2107:22:2107:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2111:15:2111:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2111:15:2111:19 | SelfParam | TRef | main.rs:2097:5:2098:14 | S1 | -| main.rs:2111:22:2111:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2115:15:2115:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2115:15:2115:19 | SelfParam | TRef | main.rs:2097:5:2098:14 | S1 | -| main.rs:2115:22:2115:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2123:18:2123:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2123:18:2123:22 | SelfParam | TRef | main.rs:2122:5:2124:5 | Self [trait MyTrait] | -| main.rs:2127:18:2127:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2127:18:2127:22 | SelfParam | TRef | main.rs:2097:5:2098:14 | S1 | -| main.rs:2127:31:2129:9 | { ... } | | main.rs:2099:5:2099:14 | S2 | -| main.rs:2133:18:2133:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2133:18:2133:22 | SelfParam | TRef | main.rs:2100:5:2100:22 | S3 | -| main.rs:2133:18:2133:22 | SelfParam | TRef.T3 | main.rs:2132:10:2132:17 | T | -| main.rs:2133:30:2136:9 | { ... } | | main.rs:2132:10:2132:17 | T | -| main.rs:2134:25:2134:28 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2134:25:2134:28 | self | TRef | main.rs:2100:5:2100:22 | S3 | -| main.rs:2134:25:2134:28 | self | TRef.T3 | main.rs:2132:10:2132:17 | T | -| main.rs:2143:41:2143:41 | t | | main.rs:2143:26:2143:38 | B | -| main.rs:2143:52:2145:5 | { ... } | | main.rs:2143:23:2143:23 | A | -| main.rs:2144:9:2144:9 | t | | main.rs:2143:26:2143:38 | B | -| main.rs:2147:34:2147:34 | x | | main.rs:2147:24:2147:31 | T | -| main.rs:2147:59:2149:5 | { ... } | | main.rs:2147:43:2147:57 | impl ... | -| main.rs:2147:59:2149:5 | { ... } | impl(T) | main.rs:2147:24:2147:31 | T | -| main.rs:2148:12:2148:12 | x | | main.rs:2147:24:2147:31 | T | -| main.rs:2151:34:2151:34 | x | | main.rs:2151:24:2151:31 | T | -| main.rs:2151:67:2153:5 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2151:67:2153:5 | { ... } | T | main.rs:2151:50:2151:64 | impl ... | -| main.rs:2151:67:2153:5 | { ... } | T.impl(T) | main.rs:2151:24:2151:31 | T | -| main.rs:2152:17:2152:17 | x | | main.rs:2151:24:2151:31 | T | -| main.rs:2155:34:2155:34 | x | | main.rs:2155:24:2155:31 | T | -| main.rs:2155:78:2157:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2155:78:2157:5 | { ... } | T0 | main.rs:2155:44:2155:58 | impl ... | -| main.rs:2155:78:2157:5 | { ... } | T0.impl(T) | main.rs:2155:24:2155:31 | T | -| main.rs:2155:78:2157:5 | { ... } | T1 | main.rs:2155:61:2155:75 | impl ... | -| main.rs:2155:78:2157:5 | { ... } | T1.impl(T) | main.rs:2155:24:2155:31 | T | -| main.rs:2156:9:2156:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2156:13:2156:13 | x | | main.rs:2155:24:2155:31 | T | -| main.rs:2156:28:2156:28 | x | | main.rs:2155:24:2155:31 | T | -| main.rs:2159:26:2159:26 | t | | main.rs:2159:29:2159:43 | impl ... | -| main.rs:2159:51:2161:5 | { ... } | | main.rs:2159:23:2159:23 | A | -| main.rs:2160:9:2160:9 | t | | main.rs:2159:29:2159:43 | impl ... | -| main.rs:2163:16:2177:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2164:13:2164:13 | x | | main.rs:2118:16:2118:35 | impl ... + ... | -| main.rs:2164:17:2164:20 | f1(...) | | main.rs:2118:16:2118:35 | impl ... + ... | -| main.rs:2165:9:2165:9 | x | | main.rs:2118:16:2118:35 | impl ... + ... | -| main.rs:2166:9:2166:9 | x | | main.rs:2118:16:2118:35 | impl ... + ... | -| main.rs:2167:13:2167:13 | a | | main.rs:2139:28:2139:43 | impl ... | -| main.rs:2167:17:2167:32 | get_a_my_trait(...) | | main.rs:2139:28:2139:43 | impl ... | -| main.rs:2168:32:2168:32 | a | | main.rs:2139:28:2139:43 | impl ... | -| main.rs:2169:13:2169:13 | a | | main.rs:2139:28:2139:43 | impl ... | -| main.rs:2169:17:2169:32 | get_a_my_trait(...) | | main.rs:2139:28:2139:43 | impl ... | -| main.rs:2170:32:2170:32 | a | | main.rs:2139:28:2139:43 | impl ... | -| main.rs:2172:17:2172:35 | get_a_my_trait2(...) | | main.rs:2147:43:2147:57 | impl ... | -| main.rs:2175:17:2175:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2175:17:2175:35 | get_a_my_trait3(...) | T | main.rs:2151:50:2151:64 | impl ... | -| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | T0 | main.rs:2155:44:2155:58 | impl ... | -| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | T1 | main.rs:2155:61:2155:75 | impl ... | -| main.rs:2187:16:2187:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2187:16:2187:20 | SelfParam | TRef | main.rs:2183:5:2184:13 | S | -| main.rs:2187:31:2189:9 | { ... } | | main.rs:2183:5:2184:13 | S | -| main.rs:2198:26:2200:9 | { ... } | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2198:26:2200:9 | { ... } | T | main.rs:2197:10:2197:10 | T | -| main.rs:2199:13:2199:38 | MyVec {...} | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2199:27:2199:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2199:27:2199:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2202:17:2202:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:2202:17:2202:25 | SelfParam | TRefMut | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2202:17:2202:25 | SelfParam | TRefMut.T | main.rs:2197:10:2197:10 | T | -| main.rs:2202:28:2202:32 | value | | main.rs:2197:10:2197:10 | T | -| main.rs:2202:38:2204:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2203:13:2203:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:2203:13:2203:16 | self | TRefMut | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2203:13:2203:16 | self | TRefMut.T | main.rs:2197:10:2197:10 | T | -| main.rs:2203:28:2203:32 | value | | main.rs:2197:10:2197:10 | T | -| main.rs:2211:18:2211:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2211:18:2211:22 | SelfParam | TRef | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2211:18:2211:22 | SelfParam | TRef.T | main.rs:2207:10:2207:10 | T | -| main.rs:2211:25:2211:29 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2211:56:2213:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2211:56:2213:9 | { ... } | TRef | main.rs:2207:10:2207:10 | T | -| main.rs:2212:13:2212:29 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2212:14:2212:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2212:14:2212:17 | self | TRef | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2212:14:2212:17 | self | TRef.T | main.rs:2207:10:2207:10 | T | -| main.rs:2212:24:2212:28 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2216:22:2216:26 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2216:22:2216:26 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2216:22:2216:26 | slice | TRef.TSlice | main.rs:2183:5:2184:13 | S | -| main.rs:2216:35:2218:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2217:17:2217:21 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2217:17:2217:21 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2217:17:2217:21 | slice | TRef.TSlice | main.rs:2183:5:2184:13 | S | -| main.rs:2220:37:2220:37 | a | | main.rs:2220:20:2220:34 | T | -| main.rs:2220:43:2220:43 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2224:9:2224:9 | a | | main.rs:2220:20:2220:34 | T | -| main.rs:2224:11:2224:11 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2227:16:2238:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2228:17:2228:19 | vec | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2228:23:2228:34 | ...::new(...) | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2229:9:2229:11 | vec | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2230:9:2230:11 | vec | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2232:13:2232:14 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2232:13:2232:14 | xs | TArray | main.rs:2183:5:2184:13 | S | -| main.rs:2232:26:2232:28 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2233:17:2233:18 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2233:17:2233:18 | xs | TArray | main.rs:2183:5:2184:13 | S | -| main.rs:2235:29:2235:31 | vec | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2237:9:2237:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2237:23:2237:25 | &xs | | {EXTERNAL LOCATION} | & | -| main.rs:2237:24:2237:25 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2237:24:2237:25 | xs | TArray | main.rs:2183:5:2184:13 | S | -| main.rs:2242:16:2244:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2243:25:2243:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | -| main.rs:2243:25:2243:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2243:25:2243:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2243:38:2243:45 | "World!" | | {EXTERNAL LOCATION} | & | -| main.rs:2243:38:2243:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2252:19:2252:22 | SelfParam | | main.rs:2248:5:2253:5 | Self [trait MyAdd] | -| main.rs:2252:25:2252:27 | rhs | | main.rs:2248:17:2248:26 | Rhs | -| main.rs:2259:19:2259:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2259:25:2259:29 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2259:45:2261:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2260:13:2260:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2268:19:2268:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2268:25:2268:29 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2268:25:2268:29 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2268:46:2270:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2269:14:2269:18 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2269:14:2269:18 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2277:19:2277:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2277:25:2277:29 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2277:46:2283:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2278:16:2278:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2292:19:2292:22 | SelfParam | | main.rs:2286:5:2286:19 | S | -| main.rs:2292:19:2292:22 | SelfParam | T | main.rs:2288:10:2288:17 | T | -| main.rs:2292:25:2292:29 | other | | main.rs:2286:5:2286:19 | S | -| main.rs:2292:25:2292:29 | other | T | main.rs:2288:10:2288:17 | T | -| main.rs:2292:54:2294:9 | { ... } | | main.rs:2286:5:2286:19 | S | -| main.rs:2293:16:2293:19 | self | | main.rs:2286:5:2286:19 | S | -| main.rs:2293:16:2293:19 | self | T | main.rs:2288:10:2288:17 | T | -| main.rs:2293:31:2293:35 | other | | main.rs:2286:5:2286:19 | S | -| main.rs:2293:31:2293:35 | other | T | main.rs:2288:10:2288:17 | T | -| main.rs:2301:19:2301:22 | SelfParam | | main.rs:2286:5:2286:19 | S | -| main.rs:2301:19:2301:22 | SelfParam | T | main.rs:2297:10:2297:17 | T | -| main.rs:2301:25:2301:29 | other | | main.rs:2297:10:2297:17 | T | -| main.rs:2301:51:2303:9 | { ... } | | main.rs:2286:5:2286:19 | S | -| main.rs:2302:16:2302:19 | self | | main.rs:2286:5:2286:19 | S | -| main.rs:2302:16:2302:19 | self | T | main.rs:2297:10:2297:17 | T | -| main.rs:2302:31:2302:35 | other | | main.rs:2297:10:2297:17 | T | -| main.rs:2313:19:2313:22 | SelfParam | | main.rs:2286:5:2286:19 | S | -| main.rs:2313:19:2313:22 | SelfParam | T | main.rs:2306:14:2306:14 | T | -| main.rs:2313:25:2313:29 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2313:25:2313:29 | other | TRef | main.rs:2306:14:2306:14 | T | -| main.rs:2313:55:2315:9 | { ... } | | main.rs:2286:5:2286:19 | S | -| main.rs:2314:16:2314:19 | self | | main.rs:2286:5:2286:19 | S | -| main.rs:2314:16:2314:19 | self | T | main.rs:2306:14:2306:14 | T | -| main.rs:2314:31:2314:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2314:31:2314:35 | other | TRef | main.rs:2306:14:2306:14 | T | -| main.rs:2320:20:2320:24 | value | | main.rs:2318:18:2318:18 | T | -| main.rs:2325:20:2325:24 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2325:40:2327:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2326:13:2326:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2332:20:2332:24 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2332:41:2338:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2333:16:2333:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2343:21:2343:25 | value | | main.rs:2341:19:2341:19 | T | -| main.rs:2343:31:2343:31 | x | | main.rs:2341:5:2344:5 | Self [trait MyFrom2] | -| main.rs:2348:21:2348:25 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2348:33:2348:33 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2348:48:2350:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2349:13:2349:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2355:21:2355:25 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2355:34:2355:34 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2355:49:2361:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2356:16:2356:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2366:15:2366:15 | x | | main.rs:2364:5:2370:5 | Self [trait MySelfTrait] | -| main.rs:2369:15:2369:15 | x | | main.rs:2364:5:2370:5 | Self [trait MySelfTrait] | -| main.rs:2374:15:2374:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2374:31:2376:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:13:2375:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2379:15:2379:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2379:32:2381:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2380:13:2380:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2386:15:2386:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2386:31:2388:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2391:15:2391:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2391:32:2393:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:2392:13:2392:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2396:16:2421:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2397:13:2397:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2398:9:2398:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2398:18:2398:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2399:9:2399:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2399:18:2399:22 | &5i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2399:19:2399:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2400:9:2400:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2400:18:2400:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2402:11:2402:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2402:26:2402:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2403:11:2403:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2403:24:2403:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2404:11:2404:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2404:24:2404:28 | &3i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2404:25:2404:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2406:13:2406:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2406:17:2406:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2406:30:2406:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2407:13:2407:13 | y | | {EXTERNAL LOCATION} | i64 | -| main.rs:2407:17:2407:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2407:30:2407:33 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2408:13:2408:13 | z | | {EXTERNAL LOCATION} | i64 | -| main.rs:2408:38:2408:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2409:9:2409:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2409:23:2409:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2409:30:2409:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2410:9:2410:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2410:23:2410:26 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2410:29:2410:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2411:9:2411:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2411:27:2411:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2411:34:2411:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2413:9:2413:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2413:17:2413:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2414:9:2414:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2414:17:2414:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2415:9:2415:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2415:18:2415:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2416:9:2416:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2416:18:2416:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2417:9:2417:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2417:25:2417:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2418:25:2418:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2419:9:2419:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2419:25:2419:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2420:25:2420:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2428:26:2430:9 | { ... } | | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2429:13:2429:25 | MyCallable {...} | | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2432:17:2432:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2432:17:2432:21 | SelfParam | TRef | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2432:31:2434:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2437:16:2544:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2440:9:2440:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2440:18:2440:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2440:28:2440:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2441:9:2441:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2441:18:2441:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2441:43:2441:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2442:9:2442:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2442:18:2442:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2442:40:2442:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2444:13:2444:17 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2444:21:2444:31 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2444:22:2444:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2445:9:2445:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2445:18:2445:22 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2445:24:2445:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2447:13:2447:17 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2447:21:2447:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2447:22:2447:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2448:9:2448:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2448:18:2448:22 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2448:24:2448:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2450:13:2450:17 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2450:13:2450:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2450:31:2450:39 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2451:9:2451:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2451:18:2451:22 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2451:18:2451:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2451:24:2451:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2453:13:2453:17 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2453:13:2453:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2453:31:2453:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2454:9:2454:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2454:18:2454:22 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2454:18:2454:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2454:24:2454:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2456:17:2456:24 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2456:28:2456:48 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2456:29:2456:33 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2456:29:2456:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2456:36:2456:40 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2456:36:2456:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2456:43:2456:47 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2456:43:2456:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2457:9:2457:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2457:18:2457:26 | &strings1 | | {EXTERNAL LOCATION} | & | -| main.rs:2457:19:2457:26 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2457:28:2457:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2458:9:2458:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2458:18:2458:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | -| main.rs:2458:23:2458:30 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2458:32:2458:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2459:9:2459:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2459:18:2459:25 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2459:27:2459:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2461:13:2461:20 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2462:9:2466:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2463:13:2463:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2463:26:2463:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2463:26:2463:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2464:13:2464:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2464:26:2464:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2464:26:2464:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2465:13:2465:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2465:26:2465:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2465:26:2465:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2467:9:2467:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2467:18:2467:25 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2467:27:2467:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2469:13:2469:20 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2470:9:2474:9 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2470:10:2474:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2471:13:2471:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2471:26:2471:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2471:26:2471:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2472:13:2472:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2472:26:2472:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2472:26:2472:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2473:13:2473:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2473:26:2473:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2473:26:2473:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2475:9:2475:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2475:18:2475:25 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2475:27:2475:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2477:13:2477:21 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2477:25:2477:81 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2477:26:2477:42 | ...::new(...) | | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2477:45:2477:61 | ...::new(...) | | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2477:64:2477:80 | ...::new(...) | | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2478:9:2482:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2479:12:2479:20 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2480:9:2482:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2486:9:2486:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2486:18:2486:22 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2486:24:2486:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2487:9:2487:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2487:18:2487:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2487:19:2487:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2487:19:2487:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2487:28:2487:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2488:13:2488:17 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2488:21:2488:25 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2489:9:2489:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2489:18:2489:22 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2489:24:2489:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2490:13:2490:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2490:26:2490:27 | .. | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2491:9:2491:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2491:18:2491:48 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2491:19:2491:36 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2491:20:2491:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2491:26:2491:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2491:32:2491:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2491:38:2491:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2491:50:2491:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2493:13:2493:18 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2494:9:2497:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | -| main.rs:2495:20:2495:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2496:18:2496:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2498:9:2498:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2498:18:2498:23 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2498:25:2498:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2503:9:2503:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2503:24:2503:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2505:13:2505:18 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2505:13:2505:18 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2505:13:2505:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2505:32:2505:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2505:33:2505:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2506:9:2506:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2506:18:2506:23 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2506:18:2506:23 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2506:18:2506:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2506:25:2506:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2508:22:2508:33 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2508:23:2508:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2509:9:2509:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2509:25:2509:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2511:13:2511:17 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2511:21:2511:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2511:31:2511:42 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2511:32:2511:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2512:9:2512:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2512:18:2512:22 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2512:24:2512:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2514:13:2514:17 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2514:13:2514:17 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2514:13:2514:17 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2514:13:2514:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2514:32:2514:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2514:33:2514:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | -| main.rs:2515:9:2515:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2515:18:2515:22 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2515:18:2515:22 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2515:18:2515:22 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2515:18:2515:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2515:24:2515:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2517:17:2517:21 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2517:17:2517:21 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2517:25:2517:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2517:25:2517:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2518:9:2518:13 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2518:9:2518:13 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2518:20:2518:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2519:9:2519:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2519:18:2519:22 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2519:18:2519:22 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2519:24:2519:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2523:17:2526:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2524:13:2525:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2524:29:2525:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2528:17:2528:20 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2528:17:2528:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2528:24:2528:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2528:24:2528:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2529:9:2529:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2529:9:2529:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2529:24:2529:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2529:24:2529:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2529:33:2529:37 | "one" | | {EXTERNAL LOCATION} | & | -| main.rs:2529:33:2529:37 | "one" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2530:9:2530:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2530:9:2530:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2530:24:2530:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2530:24:2530:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2530:33:2530:37 | "two" | | {EXTERNAL LOCATION} | & | -| main.rs:2530:33:2530:37 | "two" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2531:9:2531:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2531:20:2531:23 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2531:20:2531:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2531:32:2531:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2532:9:2532:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2532:22:2532:25 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2532:22:2532:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2532:36:2532:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2533:9:2533:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2533:13:2533:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2533:29:2533:32 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2533:29:2533:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2533:41:2533:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2534:9:2534:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2534:13:2534:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2534:29:2534:33 | &map1 | | {EXTERNAL LOCATION} | & | -| main.rs:2534:30:2534:33 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2534:30:2534:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2534:35:2534:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2538:17:2538:17 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2540:17:2543:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2540:23:2540:23 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2541:9:2543:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2542:13:2542:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2554:40:2556:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2554:40:2556:9 | { ... } | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2554:40:2556:9 | { ... } | T.T | main.rs:2553:10:2553:19 | T | -| main.rs:2558:30:2560:9 | { ... } | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2558:30:2560:9 | { ... } | T | main.rs:2553:10:2553:19 | T | -| main.rs:2562:19:2562:22 | SelfParam | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2562:19:2562:22 | SelfParam | T | main.rs:2553:10:2553:19 | T | -| main.rs:2562:33:2564:9 | { ... } | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2562:33:2564:9 | { ... } | T | main.rs:2553:10:2553:19 | T | -| main.rs:2563:13:2563:16 | self | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2563:13:2563:16 | self | T | main.rs:2553:10:2553:19 | T | -| main.rs:2575:15:2575:15 | x | | main.rs:2575:12:2575:12 | T | -| main.rs:2575:26:2577:5 | { ... } | | main.rs:2575:12:2575:12 | T | -| main.rs:2576:9:2576:9 | x | | main.rs:2575:12:2575:12 | T | -| main.rs:2579:16:2601:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2580:13:2580:14 | x1 | | {EXTERNAL LOCATION} | Option | -| main.rs:2580:13:2580:14 | x1 | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2580:13:2580:14 | x1 | T.T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2580:34:2580:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2580:34:2580:48 | ...::assoc_fun(...) | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2581:13:2581:14 | x2 | | {EXTERNAL LOCATION} | Option | -| main.rs:2581:13:2581:14 | x2 | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2581:13:2581:14 | x2 | T.T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2581:18:2581:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2581:18:2581:38 | ...::assoc_fun(...) | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2581:18:2581:38 | ...::assoc_fun(...) | T.T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2582:13:2582:14 | x3 | | {EXTERNAL LOCATION} | Option | -| main.rs:2582:13:2582:14 | x3 | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2582:13:2582:14 | x3 | T.T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2582:18:2582:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2582:18:2582:32 | ...::assoc_fun(...) | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2582:18:2582:32 | ...::assoc_fun(...) | T.T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2583:13:2583:14 | x4 | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2583:13:2583:14 | x4 | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2583:18:2583:48 | ...::method(...) | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2583:18:2583:48 | ...::method(...) | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2583:35:2583:47 | ...::default(...) | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2584:13:2584:14 | x5 | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2584:13:2584:14 | x5 | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2584:18:2584:42 | ...::method(...) | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2584:18:2584:42 | ...::method(...) | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2584:29:2584:41 | ...::default(...) | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2588:21:2588:33 | ...::default(...) | | main.rs:2550:5:2551:14 | S2 | -| main.rs:2589:13:2589:15 | x10 | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2589:13:2589:15 | x10 | T5 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2589:19:2592:9 | S5::<...> {...} | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2589:19:2592:9 | S5::<...> {...} | T5 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2593:13:2593:15 | x11 | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2593:19:2593:34 | S5 {...} | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2594:13:2594:15 | x12 | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2594:19:2594:33 | S5 {...} | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2595:13:2595:15 | x13 | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2595:19:2598:9 | S5 {...} | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2597:20:2597:32 | ...::default(...) | | main.rs:2550:5:2551:14 | S2 | -| main.rs:2599:13:2599:15 | x14 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2599:19:2599:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2600:13:2600:15 | x15 | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2600:13:2600:15 | x15 | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2600:19:2600:37 | ...::default(...) | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2600:19:2600:37 | ...::default(...) | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2609:35:2611:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2609:35:2611:9 | { ... } | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2609:35:2611:9 | { ... } | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2610:13:2610:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2610:14:2610:18 | S1 {...} | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2610:21:2610:25 | S1 {...} | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2612:16:2612:19 | SelfParam | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2612:22:2612:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2615:16:2649:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2616:13:2616:13 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2616:13:2616:13 | a | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2616:13:2616:13 | a | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2616:17:2616:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2616:17:2616:30 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2616:17:2616:30 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2617:17:2617:17 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2617:17:2617:17 | b | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2617:17:2617:17 | b | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2617:21:2617:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2617:21:2617:34 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2617:21:2617:34 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2618:13:2618:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2618:22:2618:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2618:22:2618:35 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2618:22:2618:35 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2619:13:2619:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2619:26:2619:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2619:26:2619:39 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2619:26:2619:39 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2620:13:2620:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2620:30:2620:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2620:30:2620:43 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2620:30:2620:43 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2622:9:2622:9 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2622:9:2622:9 | a | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2622:9:2622:9 | a | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2623:9:2623:9 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2623:9:2623:9 | b | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2623:9:2623:9 | b | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2636:13:2636:16 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2636:20:2636:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2637:13:2637:13 | i | | {EXTERNAL LOCATION} | i64 | -| main.rs:2637:22:2637:25 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2638:13:2638:13 | j | | {EXTERNAL LOCATION} | bool | -| main.rs:2638:23:2638:26 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2640:20:2640:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2642:13:2642:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2642:30:2642:41 | "unexpected" | | {EXTERNAL LOCATION} | & | -| main.rs:2642:30:2642:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2642:30:2642:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2642:30:2642:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2643:25:2643:34 | "expected" | | {EXTERNAL LOCATION} | & | -| main.rs:2643:25:2643:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2643:25:2643:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2643:25:2643:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2647:13:2647:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2647:17:2647:31 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2647:18:2647:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2647:18:2647:31 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2647:18:2647:31 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2648:9:2648:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2654:27:2676:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2655:13:2655:23 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2655:13:2655:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2655:27:2655:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2655:27:2655:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2655:36:2655:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2658:15:2658:25 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2658:15:2658:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2659:24:2661:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2660:26:2660:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2660:26:2660:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2660:26:2660:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2660:26:2660:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2662:22:2665:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2664:26:2664:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2664:26:2664:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2664:26:2664:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2664:26:2664:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2669:13:2669:22 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2669:13:2669:22 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2669:26:2669:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2669:26:2669:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2669:35:2669:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2669:35:2669:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2669:44:2669:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2670:15:2670:24 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2670:15:2670:24 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2671:26:2674:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2673:26:2673:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2673:26:2673:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2673:26:2673:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2673:26:2673:59 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2685:36:2687:9 | { ... } | | main.rs:2682:5:2682:22 | Path | -| main.rs:2686:13:2686:19 | Path {...} | | main.rs:2682:5:2682:22 | Path | -| main.rs:2689:29:2689:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2689:29:2689:33 | SelfParam | TRef | main.rs:2682:5:2682:22 | Path | -| main.rs:2689:59:2691:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:2689:59:2691:9 | { ... } | E | {EXTERNAL LOCATION} | () | -| main.rs:2689:59:2691:9 | { ... } | T | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2690:16:2690:29 | ...::new(...) | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2697:39:2699:9 | { ... } | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2698:13:2698:22 | PathBuf {...} | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2707:18:2707:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2707:18:2707:22 | SelfParam | TRef | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2707:34:2711:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2707:34:2711:9 | { ... } | TRef | main.rs:2682:5:2682:22 | Path | -| main.rs:2709:33:2709:43 | ...::new(...) | | main.rs:2682:5:2682:22 | Path | -| main.rs:2710:13:2710:17 | &path | | {EXTERNAL LOCATION} | & | -| main.rs:2714:16:2722:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2715:13:2715:17 | path1 | | main.rs:2682:5:2682:22 | Path | -| main.rs:2715:21:2715:31 | ...::new(...) | | main.rs:2682:5:2682:22 | Path | -| main.rs:2716:21:2716:25 | path1 | | main.rs:2682:5:2682:22 | Path | -| main.rs:2719:13:2719:20 | pathbuf1 | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2719:24:2719:37 | ...::new(...) | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2720:24:2720:31 | pathbuf1 | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2727:14:2727:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2727:14:2727:18 | SelfParam | TRef | main.rs:2726:5:2728:5 | Self [trait MyTrait] | -| main.rs:2734:14:2734:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2734:14:2734:18 | SelfParam | TRef | main.rs:2730:5:2731:19 | S | -| main.rs:2734:14:2734:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2734:28:2736:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2735:13:2735:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2735:13:2735:16 | self | TRef | main.rs:2730:5:2731:19 | S | -| main.rs:2735:13:2735:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2740:14:2740:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2740:14:2740:18 | SelfParam | TRef | main.rs:2730:5:2731:19 | S | -| main.rs:2740:14:2740:18 | SelfParam | TRef.T | main.rs:2730:5:2731:19 | S | -| main.rs:2740:14:2740:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2740:28:2742:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2741:13:2741:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2741:13:2741:16 | self | TRef | main.rs:2730:5:2731:19 | S | -| main.rs:2741:13:2741:16 | self | TRef.T | main.rs:2730:5:2731:19 | S | -| main.rs:2741:13:2741:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2746:15:2746:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2746:15:2746:19 | SelfParam | TRef | main.rs:2730:5:2731:19 | S | -| main.rs:2746:15:2746:19 | SelfParam | TRef.T | main.rs:2745:10:2745:16 | T | -| main.rs:2746:33:2748:9 | { ... } | | main.rs:2730:5:2731:19 | S | -| main.rs:2746:33:2748:9 | { ... } | T | main.rs:2730:5:2731:19 | S | -| main.rs:2746:33:2748:9 | { ... } | T.T | main.rs:2745:10:2745:16 | T | -| main.rs:2747:17:2747:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2747:17:2747:20 | self | TRef | main.rs:2730:5:2731:19 | S | -| main.rs:2747:17:2747:20 | self | TRef.T | main.rs:2745:10:2745:16 | T | -| main.rs:2751:14:2751:14 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2751:48:2768:5 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2751:48:2768:5 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2751:48:2768:5 | { ... } | T | main.rs:2726:5:2728:5 | dyn MyTrait | -| main.rs:2751:48:2768:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2752:20:2752:20 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2762:12:2762:12 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2764:13:2764:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2764:13:2764:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2766:13:2766:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2766:13:2766:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2772:22:2776:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2773:18:2773:18 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2773:33:2775:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2774:13:2774:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2781:11:2781:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2781:30:2789:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2784:13:2786:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2784:16:2784:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2784:21:2786:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2792:20:2799:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2797:18:2797:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2797:18:2797:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2797:18:2797:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2797:18:2797:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2801:20:2803:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2806:11:2806:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2806:30:2814:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2807:13:2807:13 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2807:17:2811:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2808:13:2810:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2808:16:2808:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2808:21:2810:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2812:18:2812:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2812:18:2812:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2812:18:2812:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2812:18:2812:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2812:29:2812:29 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2818:16:2865:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2820:13:2820:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2820:13:2820:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2824:26:2824:28 | opt | | {EXTERNAL LOCATION} | Option | -| main.rs:2824:26:2824:28 | opt | T | main.rs:2824:23:2824:23 | T | -| main.rs:2824:42:2824:42 | x | | main.rs:2824:23:2824:23 | T | -| main.rs:2824:48:2824:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2827:9:2827:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2834:13:2834:13 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2834:17:2834:39 | ...::A {...} | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2835:13:2835:13 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2835:13:2835:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2835:13:2835:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2835:40:2835:40 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2836:13:2836:13 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2836:13:2836:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2836:17:2836:52 | ...::A {...} | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2836:17:2836:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2838:13:2838:13 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2838:13:2838:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2838:17:2840:9 | ...::B::<...> {...} | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2838:17:2840:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2839:20:2839:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2842:29:2842:29 | e | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2842:29:2842:29 | e | T1 | main.rs:2842:26:2842:26 | T | -| main.rs:2842:29:2842:29 | e | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2842:53:2842:53 | x | | main.rs:2842:26:2842:26 | T | -| main.rs:2842:59:2842:60 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2845:13:2845:13 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2845:17:2847:9 | ...::B {...} | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2846:20:2846:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2848:9:2848:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2848:23:2848:23 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2851:13:2851:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2851:13:2851:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2851:13:2851:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2855:29:2855:31 | res | | {EXTERNAL LOCATION} | Result | -| main.rs:2855:29:2855:31 | res | E | main.rs:2855:26:2855:26 | E | -| main.rs:2855:29:2855:31 | res | T | main.rs:2855:23:2855:23 | T | -| main.rs:2855:48:2855:48 | x | | main.rs:2855:26:2855:26 | E | -| main.rs:2855:54:2855:55 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2858:9:2858:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2858:23:2858:27 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:2860:17:2860:17 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2860:17:2860:17 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2860:21:2860:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2860:21:2860:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2861:9:2861:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2861:9:2861:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2864:9:2864:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2864:9:2864:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2871:14:2871:17 | SelfParam | | main.rs:2869:5:2877:5 | Self [trait MyTrait] | -| main.rs:2874:14:2874:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2874:14:2874:18 | SelfParam | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | -| main.rs:2874:21:2874:25 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2874:21:2874:25 | other | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | -| main.rs:2874:44:2876:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2874:44:2876:9 | { ... } | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | -| main.rs:2875:13:2875:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2875:13:2875:16 | self | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | -| main.rs:2881:14:2881:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | -| main.rs:2881:28:2883:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2882:13:2882:16 | self | | {EXTERNAL LOCATION} | i32 | -| main.rs:2888:14:2888:17 | SelfParam | | {EXTERNAL LOCATION} | usize | -| main.rs:2888:28:2890:9 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2889:13:2889:16 | self | | {EXTERNAL LOCATION} | usize | -| main.rs:2895:14:2895:17 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2895:14:2895:17 | SelfParam | TRef | main.rs:2893:10:2893:10 | T | -| main.rs:2895:28:2897:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2895:28:2897:9 | { ... } | TRef | main.rs:2893:10:2893:10 | T | -| main.rs:2896:13:2896:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2896:13:2896:16 | self | TRef | main.rs:2893:10:2893:10 | T | -| main.rs:2900:25:2904:5 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2906:12:2914:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2907:13:2907:13 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2908:13:2908:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2908:17:2908:18 | &1 | | {EXTERNAL LOCATION} | & | -| main.rs:2909:17:2909:17 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2909:21:2909:21 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2912:13:2912:13 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2913:23:2913:23 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2923:11:2958:1 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2924:5:2924:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2925:5:2925:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2926:5:2926:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2926:20:2926:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2926:41:2926:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2927:5:2927:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2928:5:2928:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2929:5:2929:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2930:5:2930:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2931:5:2931:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2932:5:2932:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2933:5:2933:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2934:5:2934:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2935:5:2935:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2936:5:2936:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2937:5:2937:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2938:5:2938:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2939:5:2939:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2940:5:2940:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2941:5:2941:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2942:5:2942:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2942:5:2942:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2943:5:2943:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2944:5:2944:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2945:5:2945:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2946:5:2946:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2947:5:2947:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2948:5:2948:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2949:5:2949:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2950:5:2950:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2951:5:2951:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2952:5:2952:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2953:5:2953:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2954:5:2954:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2955:5:2955:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2956:5:2956:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2956:5:2956:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2956:5:2956:20 | ...::f(...) | T | main.rs:2726:5:2728:5 | dyn MyTrait | -| main.rs:2956:5:2956:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2956:16:2956:19 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2957:5:2957:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1190:28:1190:29 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1192:20:1192:22 | &S2 | | {EXTERNAL LOCATION} | & | +| main.rs:1196:18:1196:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1196:18:1196:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1196:18:1196:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1196:18:1196:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1198:13:1198:14 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1198:26:1198:32 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1198:26:1198:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1202:17:1202:18 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1204:13:1204:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1204:24:1204:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1204:25:1204:39 | MyInt {...} | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1206:17:1206:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1207:18:1207:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1207:18:1207:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1207:18:1207:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1207:18:1207:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1210:13:1210:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1210:24:1210:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1210:25:1210:39 | MyInt {...} | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1211:17:1211:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1212:18:1212:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1212:18:1212:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1212:18:1212:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1212:18:1212:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1219:16:1219:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1219:16:1219:20 | SelfParam | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1222:16:1222:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1222:16:1222:20 | SelfParam | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1222:32:1224:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1222:32:1224:9 | { ... } | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1223:13:1223:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1223:13:1223:16 | self | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1231:16:1231:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1231:16:1231:20 | SelfParam | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1231:36:1233:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1231:36:1233:9 | { ... } | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1232:13:1232:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1232:13:1232:16 | self | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1236:16:1239:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1248:16:1248:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1248:16:1248:20 | SelfParam | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1248:16:1248:20 | SelfParam | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1248:32:1250:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1248:32:1250:9 | { ... } | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1248:32:1250:9 | { ... } | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1249:13:1249:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1249:13:1249:16 | self | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1249:13:1249:16 | self | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1252:16:1252:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1252:16:1252:20 | SelfParam | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1252:16:1252:20 | SelfParam | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1252:23:1252:23 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1252:23:1252:23 | x | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1252:23:1252:23 | x | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1252:42:1254:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1252:42:1254:9 | { ... } | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1252:42:1254:9 | { ... } | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1253:13:1253:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1253:13:1253:16 | self | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1253:13:1253:16 | self | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1257:16:1263:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1262:15:1262:17 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1262:16:1262:17 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1273:17:1273:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1273:17:1273:25 | SelfParam | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1273:28:1275:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1274:13:1274:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1274:13:1274:16 | self | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1274:26:1274:29 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1274:26:1274:29 | self | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1281:15:1281:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1281:15:1281:19 | SelfParam | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1281:31:1283:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1281:31:1283:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1282:13:1282:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1282:14:1282:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1282:15:1282:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1282:16:1282:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1282:16:1282:19 | self | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1285:15:1285:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1285:15:1285:25 | SelfParam | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1285:37:1287:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1285:37:1287:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1286:13:1286:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1286:14:1286:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1286:15:1286:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1286:16:1286:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1286:16:1286:19 | self | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1289:15:1289:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1289:15:1289:15 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1289:34:1291:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1289:34:1291:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1290:13:1290:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1290:13:1290:13 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1293:15:1293:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1293:15:1293:15 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1293:34:1295:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1293:34:1295:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1294:13:1294:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1294:14:1294:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1294:15:1294:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1294:16:1294:16 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1294:16:1294:16 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1298:16:1311:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1299:13:1299:13 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1299:17:1299:20 | S {...} | | main.rs:1278:5:1278:13 | S | +| main.rs:1300:9:1300:9 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1301:9:1301:9 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1302:9:1302:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1302:9:1302:17 | ...::f3(...) | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1302:15:1302:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1302:16:1302:16 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1304:19:1304:24 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1304:20:1304:24 | &true | | {EXTERNAL LOCATION} | & | +| main.rs:1304:21:1304:24 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1309:9:1309:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1309:22:1309:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | +| main.rs:1310:18:1310:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1310:18:1310:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1310:18:1310:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1310:18:1310:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1325:43:1328:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1325:43:1328:5 | { ... } | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1325:43:1328:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1332:46:1336:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1332:46:1336:5 | { ... } | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1332:46:1336:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1340:40:1345:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1340:40:1345:5 | { ... } | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1340:40:1345:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1349:30:1349:34 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1349:30:1349:34 | input | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1349:30:1349:34 | input | T | main.rs:1349:20:1349:27 | T | +| main.rs:1349:69:1356:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1349:69:1356:5 | { ... } | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1349:69:1356:5 | { ... } | T | main.rs:1349:20:1349:27 | T | +| main.rs:1350:21:1350:25 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1350:21:1350:25 | input | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1350:21:1350:25 | input | T | main.rs:1349:20:1349:27 | T | +| main.rs:1352:22:1352:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1352:22:1352:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1352:22:1352:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1352:22:1352:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1359:16:1375:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1360:9:1362:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1360:37:1360:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1360:37:1360:52 | try_same_error(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:37:1360:52 | try_same_error(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:54:1362:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1361:22:1361:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1361:22:1361:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1361:22:1361:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1361:22:1361:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1364:9:1366:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1364:37:1364:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1364:37:1364:55 | try_convert_error(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1364:37:1364:55 | try_convert_error(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1364:57:1366:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1365:22:1365:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1365:22:1365:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1365:22:1365:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1365:22:1365:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1368:9:1370:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1368:37:1368:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1368:37:1368:49 | try_chained(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1368:37:1368:49 | try_chained(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1368:51:1370:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1369:22:1369:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1369:22:1369:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1369:22:1369:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1369:22:1369:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1372:9:1374:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1372:37:1372:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1372:37:1372:63 | try_complex(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:65:1374:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1373:22:1373:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1373:22:1373:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1373:22:1373:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1373:22:1373:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1379:16:1470:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1380:13:1380:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1382:17:1382:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1383:17:1383:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1384:13:1384:13 | c | | {EXTERNAL LOCATION} | char | +| main.rs:1384:17:1384:19 | 'c' | | {EXTERNAL LOCATION} | char | +| main.rs:1385:13:1385:17 | hello | | {EXTERNAL LOCATION} | & | +| main.rs:1385:13:1385:17 | hello | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1385:21:1385:27 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1385:21:1385:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1386:13:1386:13 | f | | {EXTERNAL LOCATION} | f64 | +| main.rs:1386:17:1386:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | +| main.rs:1387:13:1387:13 | t | | {EXTERNAL LOCATION} | bool | +| main.rs:1387:17:1387:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1388:13:1388:13 | f | | {EXTERNAL LOCATION} | bool | +| main.rs:1388:17:1388:21 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1391:26:1391:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1391:26:1391:30 | SelfParam | TRef | main.rs:1390:9:1394:9 | Self [trait MyTrait] | +| main.rs:1397:26:1397:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1397:26:1397:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1397:26:1397:30 | SelfParam | TRef.TArray | main.rs:1396:14:1396:23 | T | +| main.rs:1397:39:1399:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1397:39:1399:13 | { ... } | TRef | main.rs:1396:14:1396:23 | T | +| main.rs:1398:17:1398:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1398:17:1398:20 | self | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1398:17:1398:20 | self | TRef.TArray | main.rs:1396:14:1396:23 | T | +| main.rs:1401:31:1403:13 | { ... } | | main.rs:1396:14:1396:23 | T | +| main.rs:1406:17:1406:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1407:13:1407:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1407:17:1407:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1407:37:1407:46 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1407:38:1407:46 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1408:13:1408:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1408:17:1408:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1411:26:1411:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1411:26:1411:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1411:26:1411:30 | SelfParam | TRef.TSlice | main.rs:1410:14:1410:23 | T | +| main.rs:1411:39:1413:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1411:39:1413:13 | { ... } | TRef | main.rs:1410:14:1410:23 | T | +| main.rs:1412:17:1412:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1412:17:1412:20 | self | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1412:17:1412:20 | self | TRef.TSlice | main.rs:1410:14:1410:23 | T | +| main.rs:1415:31:1417:13 | { ... } | | main.rs:1410:14:1410:23 | T | +| main.rs:1420:13:1420:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1420:13:1420:13 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1420:13:1420:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:25:1420:34 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1420:26:1420:34 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1421:17:1421:17 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1421:17:1421:17 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1421:17:1421:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1422:13:1422:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1422:17:1422:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1422:34:1422:34 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1422:34:1422:34 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1422:34:1422:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1423:13:1423:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1423:17:1423:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1426:26:1426:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1426:26:1426:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1426:26:1426:30 | SelfParam | TRef.T0 | main.rs:1425:14:1425:23 | T | +| main.rs:1426:26:1426:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1426:39:1428:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1426:39:1428:13 | { ... } | TRef | main.rs:1425:14:1425:23 | T | +| main.rs:1427:17:1427:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1427:18:1427:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1427:18:1427:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1427:18:1427:21 | self | TRef.T0 | main.rs:1425:14:1425:23 | T | +| main.rs:1427:18:1427:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1430:31:1432:13 | { ... } | | main.rs:1425:14:1425:23 | T | +| main.rs:1435:13:1435:13 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1435:17:1435:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1436:17:1436:17 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1437:13:1437:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1437:17:1437:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1437:37:1437:38 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1437:38:1437:38 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1438:13:1438:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1438:17:1438:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1441:26:1441:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1441:26:1441:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1441:26:1441:30 | SelfParam | TRef.TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1441:39:1443:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1441:39:1443:13 | { ... } | TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1442:18:1442:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1442:18:1442:21 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1442:18:1442:21 | self | TRef.TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1445:31:1447:13 | { ... } | | main.rs:1440:14:1440:23 | T | +| main.rs:1450:13:1450:13 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1450:17:1450:19 | &42 | | {EXTERNAL LOCATION} | & | +| main.rs:1451:17:1451:17 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1452:13:1452:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1452:17:1452:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1452:33:1452:34 | &r | | {EXTERNAL LOCATION} | & | +| main.rs:1452:34:1452:34 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1453:13:1453:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1453:17:1453:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1456:26:1456:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1456:26:1456:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1456:26:1456:30 | SelfParam | TRef.TPtrMut | main.rs:1455:14:1455:23 | T | +| main.rs:1456:39:1458:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1456:39:1458:13 | { ... } | TRef | main.rs:1455:14:1455:23 | T | +| main.rs:1457:26:1457:32 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1457:29:1457:32 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1457:29:1457:32 | self | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1457:29:1457:32 | self | TRef.TPtrMut | main.rs:1455:14:1455:23 | T | +| main.rs:1460:31:1462:13 | { ... } | | main.rs:1455:14:1455:23 | T | +| main.rs:1466:13:1466:13 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1466:13:1466:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1466:27:1466:32 | &mut v | | {EXTERNAL LOCATION} | &mut | +| main.rs:1467:26:1467:26 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1467:26:1467:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1468:26:1468:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1468:46:1468:47 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1468:47:1468:47 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1468:47:1468:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1469:13:1469:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1469:17:1469:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1475:16:1487:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1476:13:1476:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:1476:17:1476:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1476:17:1476:29 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1476:25:1476:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:13:1477:13 | y | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:17:1477:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:17:1477:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:25:1477:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1481:17:1483:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1483:16:1485:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1500:30:1502:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1501:13:1501:31 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1508:16:1508:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1508:22:1508:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1508:41:1513:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1509:13:1512:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1510:20:1510:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1510:29:1510:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1511:20:1511:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1511:29:1511:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1518:23:1518:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1518:23:1518:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1518:34:1518:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1518:45:1521:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1519:13:1519:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1519:13:1519:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1519:23:1519:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1520:13:1520:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1520:13:1520:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1520:23:1520:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1526:16:1526:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1526:22:1526:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1526:41:1531:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1527:13:1530:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1528:20:1528:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1528:29:1528:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1529:20:1529:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1529:29:1529:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1536:23:1536:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1536:23:1536:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1536:34:1536:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1536:45:1539:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1537:13:1537:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1537:13:1537:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1537:23:1537:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1538:13:1538:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1538:13:1538:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1538:23:1538:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1544:16:1544:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1544:22:1544:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1544:41:1549:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1545:13:1548:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1546:20:1546:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1546:29:1546:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1547:20:1547:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1547:29:1547:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1553:23:1553:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1553:23:1553:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1553:34:1553:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1553:45:1556:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1554:13:1554:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1554:13:1554:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1554:23:1554:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1555:13:1555:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1555:13:1555:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1555:23:1555:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1561:16:1561:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1561:22:1561:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1561:41:1566:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1562:13:1565:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1563:20:1563:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1563:29:1563:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1564:20:1564:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1564:29:1564:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1570:23:1570:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1570:23:1570:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1570:34:1570:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1570:45:1573:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1571:13:1571:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1571:13:1571:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1571:23:1571:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1572:13:1572:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1572:13:1572:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1572:23:1572:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1578:16:1578:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1578:22:1578:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1578:41:1583:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1579:13:1582:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1580:20:1580:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1580:29:1580:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1581:20:1581:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1581:29:1581:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1587:23:1587:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1587:23:1587:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1587:34:1587:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1587:45:1590:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1588:13:1588:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1588:13:1588:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1588:23:1588:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1589:13:1589:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1589:13:1589:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1589:23:1589:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1595:19:1595:22 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1595:25:1595:27 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1595:44:1600:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1596:13:1599:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1597:20:1597:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1597:29:1597:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1598:20:1598:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1598:29:1598:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1604:26:1604:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1604:26:1604:34 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1604:37:1604:39 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1604:48:1607:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1605:13:1605:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1605:13:1605:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1605:23:1605:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1606:13:1606:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1606:13:1606:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1606:23:1606:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1612:18:1612:21 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1612:24:1612:26 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1612:43:1617:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1613:13:1616:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1614:20:1614:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1614:29:1614:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1615:20:1615:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1615:29:1615:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1621:25:1621:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1621:25:1621:33 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1621:36:1621:38 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1621:47:1624:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1622:13:1622:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1622:13:1622:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1622:23:1622:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1623:13:1623:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1623:13:1623:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1623:23:1623:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1629:19:1629:22 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1629:25:1629:27 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1629:44:1634:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1630:13:1633:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1631:20:1631:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1631:29:1631:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1632:20:1632:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1632:29:1632:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1638:26:1638:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1638:26:1638:34 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1638:37:1638:39 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1638:48:1641:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1639:13:1639:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1639:13:1639:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1639:23:1639:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1640:13:1640:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1640:13:1640:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1640:23:1640:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1646:16:1646:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1646:22:1646:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1646:40:1651:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1647:13:1650:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1648:20:1648:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1648:30:1648:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1649:20:1649:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1649:30:1649:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1655:23:1655:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1655:23:1655:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1655:34:1655:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1655:44:1658:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1656:13:1656:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1656:13:1656:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1656:24:1656:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1657:13:1657:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1657:13:1657:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1657:24:1657:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1663:16:1663:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1663:22:1663:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1663:40:1668:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1664:13:1667:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1665:20:1665:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1665:30:1665:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1666:20:1666:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1666:30:1666:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1672:23:1672:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1672:23:1672:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1672:34:1672:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1672:44:1675:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1673:13:1673:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1673:13:1673:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1673:24:1673:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1674:13:1674:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1674:13:1674:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1674:24:1674:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1680:16:1680:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1680:30:1685:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1681:13:1684:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1682:21:1682:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1683:21:1683:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1690:16:1690:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1690:30:1695:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1691:13:1694:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1692:21:1692:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1693:21:1693:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1699:15:1699:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1699:15:1699:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1699:22:1699:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1699:22:1699:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1699:44:1701:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:13:1700:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1700:13:1700:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:13:1700:29 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:13:1700:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:23:1700:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1700:23:1700:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:34:1700:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1700:34:1700:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:34:1700:50 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:44:1700:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1700:44:1700:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1703:15:1703:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1703:15:1703:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1703:22:1703:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1703:22:1703:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1703:44:1705:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:13:1704:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1704:13:1704:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:13:1704:29 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:13:1704:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:23:1704:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1704:23:1704:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:34:1704:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1704:34:1704:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:34:1704:50 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:44:1704:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1704:44:1704:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1709:24:1709:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1709:24:1709:28 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1709:31:1709:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1709:31:1709:35 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1709:75:1711:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:1709:75:1711:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | +| main.rs:1710:14:1710:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1710:14:1710:17 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:23:1710:26 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1710:23:1710:26 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:43:1710:62 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1710:45:1710:49 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1710:45:1710:49 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:55:1710:59 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1710:55:1710:59 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1713:15:1713:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1713:15:1713:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1713:22:1713:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1713:22:1713:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1713:44:1715:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:13:1714:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1714:13:1714:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:13:1714:28 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:13:1714:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:22:1714:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1714:22:1714:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:33:1714:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1714:33:1714:36 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:33:1714:48 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:42:1714:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1714:42:1714:46 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1717:15:1717:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1717:15:1717:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1717:22:1717:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1717:22:1717:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1717:44:1719:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:13:1718:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1718:13:1718:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:13:1718:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:13:1718:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:23:1718:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1718:23:1718:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:34:1718:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1718:34:1718:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:34:1718:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:44:1718:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1718:44:1718:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1721:15:1721:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1721:15:1721:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1721:22:1721:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1721:22:1721:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1721:44:1723:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:13:1722:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1722:13:1722:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:13:1722:28 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:13:1722:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:22:1722:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1722:22:1722:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:33:1722:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1722:33:1722:36 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:33:1722:48 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:42:1722:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1722:42:1722:46 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1725:15:1725:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1725:15:1725:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1725:22:1725:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1725:22:1725:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1725:44:1727:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:13:1726:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1726:13:1726:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:13:1726:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:13:1726:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:23:1726:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1726:23:1726:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:34:1726:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1726:34:1726:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:34:1726:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:44:1726:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1726:44:1726:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1730:26:1730:26 | a | | main.rs:1730:18:1730:23 | T | +| main.rs:1730:32:1730:32 | b | | main.rs:1730:18:1730:23 | T | +| main.rs:1731:9:1731:9 | a | | main.rs:1730:18:1730:23 | T | +| main.rs:1731:13:1731:13 | b | | main.rs:1730:18:1730:23 | T | +| main.rs:1734:16:1865:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1738:23:1738:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1738:31:1738:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1739:23:1739:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1739:31:1739:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1740:23:1740:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1740:30:1740:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1741:23:1741:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1741:31:1741:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1742:23:1742:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1742:30:1742:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1743:23:1743:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1743:32:1743:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:23:1746:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:31:1746:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1747:23:1747:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1747:31:1747:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1748:23:1748:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1748:31:1748:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:23:1749:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:31:1749:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:23:1750:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:31:1750:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:39:1751:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:45:1751:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1754:17:1754:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1754:34:1754:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1755:9:1755:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1755:27:1755:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1757:17:1757:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1757:34:1757:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1758:9:1758:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1758:27:1758:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1760:17:1760:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1760:34:1760:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1761:9:1761:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1761:27:1761:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1763:17:1763:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1763:34:1763:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1764:9:1764:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1764:27:1764:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1766:17:1766:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1766:34:1766:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1767:9:1767:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1767:27:1767:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:26:1770:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:34:1770:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:25:1771:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:33:1771:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1772:26:1772:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1772:34:1772:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1773:23:1773:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1773:32:1773:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:23:1774:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:32:1774:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1777:17:1777:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1777:37:1777:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1778:9:1778:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1778:30:1778:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1780:17:1780:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1780:36:1780:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1781:9:1781:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1781:29:1781:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1783:17:1783:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1783:37:1783:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1784:9:1784:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1784:30:1784:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1786:17:1786:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1786:34:1786:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1787:9:1787:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1787:28:1787:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1789:17:1789:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1789:34:1789:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1790:9:1790:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1790:28:1790:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1792:24:1792:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1793:24:1793:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1796:13:1796:14 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1796:18:1796:36 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1797:13:1797:14 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1797:18:1797:36 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1800:23:1800:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1800:29:1800:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1801:23:1801:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1801:29:1801:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1802:23:1802:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1802:28:1802:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1803:23:1803:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1803:29:1803:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1804:23:1804:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1804:28:1804:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1805:23:1805:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1805:29:1805:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1808:24:1808:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1808:29:1808:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1809:24:1809:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1809:29:1809:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1810:24:1810:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1810:29:1810:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1811:24:1811:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1811:29:1811:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1812:24:1812:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1812:29:1812:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1815:17:1815:31 | vec2_add_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1815:35:1815:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1816:9:1816:23 | vec2_add_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1816:28:1816:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1818:17:1818:31 | vec2_sub_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1818:35:1818:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1819:9:1819:23 | vec2_sub_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1819:28:1819:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1821:17:1821:31 | vec2_mul_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1821:35:1821:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1822:9:1822:23 | vec2_mul_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1822:28:1822:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1824:17:1824:31 | vec2_div_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1824:35:1824:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1825:9:1825:23 | vec2_div_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1825:28:1825:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1827:17:1827:31 | vec2_rem_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1827:35:1827:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1828:9:1828:23 | vec2_rem_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1828:28:1828:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1831:27:1831:28 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1831:32:1831:33 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1832:26:1832:27 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1832:31:1832:32 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1833:27:1833:28 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1833:32:1833:33 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1834:24:1834:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1834:30:1834:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1835:24:1835:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1835:30:1835:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1838:17:1838:34 | vec2_bitand_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1838:38:1838:39 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1839:9:1839:26 | vec2_bitand_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1839:31:1839:32 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1841:17:1841:33 | vec2_bitor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1841:37:1841:38 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1842:9:1842:25 | vec2_bitor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1842:30:1842:31 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1844:17:1844:34 | vec2_bitxor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1844:38:1844:39 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1845:9:1845:26 | vec2_bitxor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1845:31:1845:32 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1847:17:1847:31 | vec2_shl_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1847:35:1847:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1848:9:1848:23 | vec2_shl_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1848:29:1848:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1850:17:1850:31 | vec2_shr_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1850:35:1850:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1851:9:1851:23 | vec2_shr_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1851:29:1851:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1854:25:1854:26 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1855:25:1855:26 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1859:30:1859:48 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1864:30:1864:48 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1874:18:1874:21 | SelfParam | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1874:24:1874:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1877:25:1879:5 | { ... } | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1882:9:1882:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1886:9:1886:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1886:9:1886:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:1895:13:1895:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | +| main.rs:1895:13:1895:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | +| main.rs:1895:13:1895:42 | SelfParam | Ptr.TRefMut | main.rs:1889:5:1889:14 | S2 | +| main.rs:1896:13:1896:15 | _cx | | {EXTERNAL LOCATION} | &mut | +| main.rs:1896:13:1896:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | +| main.rs:1897:44:1899:9 | { ... } | | {EXTERNAL LOCATION} | Poll | +| main.rs:1897:44:1899:9 | { ... } | T | main.rs:1871:5:1871:14 | S1 | +| main.rs:1906:22:1914:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1907:9:1907:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1907:9:1907:12 | f1(...) | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1908:9:1908:12 | f2(...) | | main.rs:1881:16:1881:39 | impl ... | +| main.rs:1909:9:1909:12 | f3(...) | | main.rs:1885:16:1885:39 | impl ... | +| main.rs:1910:9:1910:12 | f4(...) | | main.rs:1902:16:1902:39 | impl ... | +| main.rs:1912:13:1912:13 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1912:17:1912:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1913:9:1913:9 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1924:15:1924:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1924:15:1924:19 | SelfParam | TRef | main.rs:1923:5:1925:5 | Self [trait Trait1] | +| main.rs:1924:22:1924:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1928:15:1928:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1928:15:1928:19 | SelfParam | TRef | main.rs:1927:5:1929:5 | Self [trait Trait2] | +| main.rs:1928:22:1928:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1932:15:1932:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1932:15:1932:19 | SelfParam | TRef | main.rs:1918:5:1919:14 | S1 | +| main.rs:1932:22:1932:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1936:15:1936:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1936:15:1936:19 | SelfParam | TRef | main.rs:1918:5:1919:14 | S1 | +| main.rs:1936:22:1936:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1944:18:1944:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1944:18:1944:22 | SelfParam | TRef | main.rs:1943:5:1945:5 | Self [trait MyTrait] | +| main.rs:1948:18:1948:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1948:18:1948:22 | SelfParam | TRef | main.rs:1918:5:1919:14 | S1 | +| main.rs:1948:31:1950:9 | { ... } | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1954:18:1954:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1954:18:1954:22 | SelfParam | TRef | main.rs:1921:5:1921:22 | S3 | +| main.rs:1954:18:1954:22 | SelfParam | TRef.T3 | main.rs:1953:10:1953:17 | T | +| main.rs:1954:30:1957:9 | { ... } | | main.rs:1953:10:1953:17 | T | +| main.rs:1955:25:1955:28 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1955:25:1955:28 | self | TRef | main.rs:1921:5:1921:22 | S3 | +| main.rs:1955:25:1955:28 | self | TRef.T3 | main.rs:1953:10:1953:17 | T | +| main.rs:1964:41:1964:41 | t | | main.rs:1964:26:1964:38 | B | +| main.rs:1964:52:1966:5 | { ... } | | main.rs:1964:23:1964:23 | A | +| main.rs:1965:9:1965:9 | t | | main.rs:1964:26:1964:38 | B | +| main.rs:1968:34:1968:34 | x | | main.rs:1968:24:1968:31 | T | +| main.rs:1968:59:1970:5 | { ... } | | main.rs:1968:43:1968:57 | impl ... | +| main.rs:1968:59:1970:5 | { ... } | impl(T) | main.rs:1968:24:1968:31 | T | +| main.rs:1969:12:1969:12 | x | | main.rs:1968:24:1968:31 | T | +| main.rs:1972:34:1972:34 | x | | main.rs:1972:24:1972:31 | T | +| main.rs:1972:67:1974:5 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:1972:67:1974:5 | { ... } | T | main.rs:1972:50:1972:64 | impl ... | +| main.rs:1972:67:1974:5 | { ... } | T.impl(T) | main.rs:1972:24:1972:31 | T | +| main.rs:1973:17:1973:17 | x | | main.rs:1972:24:1972:31 | T | +| main.rs:1976:34:1976:34 | x | | main.rs:1976:24:1976:31 | T | +| main.rs:1976:78:1978:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1976:78:1978:5 | { ... } | T0 | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1976:78:1978:5 | { ... } | T0.impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1976:78:1978:5 | { ... } | T1 | main.rs:1976:61:1976:75 | impl ... | +| main.rs:1976:78:1978:5 | { ... } | T1.impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1977:9:1977:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1977:13:1977:13 | x | | main.rs:1976:24:1976:31 | T | +| main.rs:1977:28:1977:28 | x | | main.rs:1976:24:1976:31 | T | +| main.rs:1980:26:1980:26 | t | | main.rs:1980:29:1980:43 | impl ... | +| main.rs:1980:51:1982:5 | { ... } | | main.rs:1980:23:1980:23 | A | +| main.rs:1981:9:1981:9 | t | | main.rs:1980:29:1980:43 | impl ... | +| main.rs:1984:16:1998:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1985:13:1985:13 | x | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1985:17:1985:20 | f1(...) | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1986:9:1986:9 | x | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1987:9:1987:9 | x | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1988:13:1988:13 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1988:17:1988:32 | get_a_my_trait(...) | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1989:32:1989:32 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1990:13:1990:13 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1990:17:1990:32 | get_a_my_trait(...) | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1991:32:1991:32 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1993:17:1993:35 | get_a_my_trait2(...) | | main.rs:1968:43:1968:57 | impl ... | +| main.rs:1996:17:1996:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1996:17:1996:35 | get_a_my_trait3(...) | T | main.rs:1972:50:1972:64 | impl ... | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | T0 | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | T1 | main.rs:1976:61:1976:75 | impl ... | +| main.rs:2008:16:2008:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2008:16:2008:20 | SelfParam | TRef | main.rs:2004:5:2005:13 | S | +| main.rs:2008:31:2010:9 | { ... } | | main.rs:2004:5:2005:13 | S | +| main.rs:2019:26:2021:9 | { ... } | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2019:26:2021:9 | { ... } | T | main.rs:2018:10:2018:10 | T | +| main.rs:2020:13:2020:38 | MyVec {...} | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2020:27:2020:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2020:27:2020:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2023:17:2023:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:2023:17:2023:25 | SelfParam | TRefMut | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2023:17:2023:25 | SelfParam | TRefMut.T | main.rs:2018:10:2018:10 | T | +| main.rs:2023:28:2023:32 | value | | main.rs:2018:10:2018:10 | T | +| main.rs:2023:38:2025:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2024:13:2024:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:2024:13:2024:16 | self | TRefMut | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2024:13:2024:16 | self | TRefMut.T | main.rs:2018:10:2018:10 | T | +| main.rs:2024:28:2024:32 | value | | main.rs:2018:10:2018:10 | T | +| main.rs:2032:18:2032:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2032:18:2032:22 | SelfParam | TRef | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2032:18:2032:22 | SelfParam | TRef.T | main.rs:2028:10:2028:10 | T | +| main.rs:2032:25:2032:29 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2032:56:2034:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2032:56:2034:9 | { ... } | TRef | main.rs:2028:10:2028:10 | T | +| main.rs:2033:13:2033:29 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2033:14:2033:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2033:14:2033:17 | self | TRef | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2033:14:2033:17 | self | TRef.T | main.rs:2028:10:2028:10 | T | +| main.rs:2033:24:2033:28 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2037:22:2037:26 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2037:22:2037:26 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2037:22:2037:26 | slice | TRef.TSlice | main.rs:2004:5:2005:13 | S | +| main.rs:2037:35:2039:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2038:17:2038:21 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2038:17:2038:21 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2038:17:2038:21 | slice | TRef.TSlice | main.rs:2004:5:2005:13 | S | +| main.rs:2041:37:2041:37 | a | | main.rs:2041:20:2041:34 | T | +| main.rs:2041:43:2041:43 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2045:9:2045:9 | a | | main.rs:2041:20:2041:34 | T | +| main.rs:2045:11:2045:11 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2048:16:2059:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2049:17:2049:19 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2049:23:2049:34 | ...::new(...) | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2050:9:2050:11 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2051:9:2051:11 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2053:13:2053:14 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2053:13:2053:14 | xs | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2053:26:2053:28 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2054:17:2054:18 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2054:17:2054:18 | xs | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2056:29:2056:31 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2058:9:2058:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2058:23:2058:25 | &xs | | {EXTERNAL LOCATION} | & | +| main.rs:2058:24:2058:25 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2058:24:2058:25 | xs | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2063:16:2065:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2064:25:2064:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | +| main.rs:2064:25:2064:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2064:25:2064:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2064:38:2064:45 | "World!" | | {EXTERNAL LOCATION} | & | +| main.rs:2064:38:2064:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2073:19:2073:22 | SelfParam | | main.rs:2069:5:2074:5 | Self [trait MyAdd] | +| main.rs:2073:25:2073:27 | rhs | | main.rs:2069:17:2069:26 | Rhs | +| main.rs:2080:19:2080:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2080:25:2080:29 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2080:45:2082:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2081:13:2081:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2089:19:2089:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2089:25:2089:29 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2089:25:2089:29 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2089:46:2091:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2090:14:2090:18 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2090:14:2090:18 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2098:19:2098:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2098:25:2098:29 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2098:46:2104:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2099:16:2099:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2113:19:2113:22 | SelfParam | | main.rs:2107:5:2107:19 | S | +| main.rs:2113:19:2113:22 | SelfParam | T | main.rs:2109:10:2109:17 | T | +| main.rs:2113:25:2113:29 | other | | main.rs:2107:5:2107:19 | S | +| main.rs:2113:25:2113:29 | other | T | main.rs:2109:10:2109:17 | T | +| main.rs:2113:54:2115:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:16:2114:19 | self | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:16:2114:19 | self | T | main.rs:2109:10:2109:17 | T | +| main.rs:2114:31:2114:35 | other | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:31:2114:35 | other | T | main.rs:2109:10:2109:17 | T | +| main.rs:2122:19:2122:22 | SelfParam | | main.rs:2107:5:2107:19 | S | +| main.rs:2122:19:2122:22 | SelfParam | T | main.rs:2118:10:2118:17 | T | +| main.rs:2122:25:2122:29 | other | | main.rs:2118:10:2118:17 | T | +| main.rs:2122:51:2124:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2123:16:2123:19 | self | | main.rs:2107:5:2107:19 | S | +| main.rs:2123:16:2123:19 | self | T | main.rs:2118:10:2118:17 | T | +| main.rs:2123:31:2123:35 | other | | main.rs:2118:10:2118:17 | T | +| main.rs:2134:19:2134:22 | SelfParam | | main.rs:2107:5:2107:19 | S | +| main.rs:2134:19:2134:22 | SelfParam | T | main.rs:2127:14:2127:14 | T | +| main.rs:2134:25:2134:29 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2134:25:2134:29 | other | TRef | main.rs:2127:14:2127:14 | T | +| main.rs:2134:55:2136:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2135:16:2135:19 | self | | main.rs:2107:5:2107:19 | S | +| main.rs:2135:16:2135:19 | self | T | main.rs:2127:14:2127:14 | T | +| main.rs:2135:31:2135:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2135:31:2135:35 | other | TRef | main.rs:2127:14:2127:14 | T | +| main.rs:2141:20:2141:24 | value | | main.rs:2139:18:2139:18 | T | +| main.rs:2146:20:2146:24 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2146:40:2148:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2147:13:2147:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2153:20:2153:24 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2153:41:2159:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2154:16:2154:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2164:21:2164:25 | value | | main.rs:2162:19:2162:19 | T | +| main.rs:2164:31:2164:31 | x | | main.rs:2162:5:2165:5 | Self [trait MyFrom2] | +| main.rs:2169:21:2169:25 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2169:33:2169:33 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2169:48:2171:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2170:13:2170:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2176:21:2176:25 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2176:34:2176:34 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2176:49:2182:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2177:16:2177:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2187:15:2187:15 | x | | main.rs:2185:5:2191:5 | Self [trait MySelfTrait] | +| main.rs:2190:15:2190:15 | x | | main.rs:2185:5:2191:5 | Self [trait MySelfTrait] | +| main.rs:2195:15:2195:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2195:31:2197:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2196:13:2196:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2200:15:2200:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2200:32:2202:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2201:13:2201:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2207:15:2207:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2207:31:2209:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2212:15:2212:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2212:32:2214:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:2213:13:2213:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2217:16:2242:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2218:13:2218:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2219:9:2219:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2219:18:2219:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2220:9:2220:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2220:18:2220:22 | &5i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2220:19:2220:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2221:9:2221:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2221:18:2221:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2223:11:2223:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2223:26:2223:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2224:11:2224:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2224:24:2224:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:11:2225:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:24:2225:28 | &3i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2225:25:2225:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2227:13:2227:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2227:17:2227:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2227:30:2227:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:13:2228:13 | y | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:17:2228:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:30:2228:33 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2229:13:2229:13 | z | | {EXTERNAL LOCATION} | i64 | +| main.rs:2229:38:2229:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2230:9:2230:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2230:23:2230:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2230:30:2230:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2231:9:2231:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2231:23:2231:26 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2231:29:2231:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2232:9:2232:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2232:27:2232:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2232:34:2232:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2234:9:2234:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2234:17:2234:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2235:9:2235:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2235:17:2235:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2236:9:2236:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2236:18:2236:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2237:9:2237:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2237:18:2237:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2238:9:2238:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2238:25:2238:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2239:25:2239:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2240:9:2240:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2240:25:2240:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2241:25:2241:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2249:26:2251:9 | { ... } | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2250:13:2250:25 | MyCallable {...} | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2253:17:2253:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2253:17:2253:21 | SelfParam | TRef | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2253:31:2255:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2258:16:2365:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2261:9:2261:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2261:18:2261:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2261:28:2261:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2262:9:2262:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2262:18:2262:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2262:43:2262:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2263:9:2263:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2263:18:2263:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2263:40:2263:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2265:13:2265:17 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2265:21:2265:31 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2265:22:2265:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2266:9:2266:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2266:18:2266:22 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2266:24:2266:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2268:13:2268:17 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2268:21:2268:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2268:22:2268:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2269:9:2269:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2269:18:2269:22 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2269:24:2269:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2271:13:2271:17 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2271:13:2271:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2271:31:2271:39 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2272:9:2272:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2272:18:2272:22 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2272:18:2272:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2272:24:2272:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2274:13:2274:17 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2274:13:2274:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2274:31:2274:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2275:9:2275:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2275:18:2275:22 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2275:18:2275:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2275:24:2275:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2277:17:2277:24 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2277:28:2277:48 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2277:29:2277:33 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2277:29:2277:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2277:36:2277:40 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2277:36:2277:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2277:43:2277:47 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2277:43:2277:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2278:9:2278:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2278:18:2278:26 | &strings1 | | {EXTERNAL LOCATION} | & | +| main.rs:2278:19:2278:26 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2278:28:2278:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2279:9:2279:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2279:18:2279:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | +| main.rs:2279:23:2279:30 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2279:32:2279:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2280:9:2280:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2280:18:2280:25 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2280:27:2280:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2282:13:2282:20 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2283:9:2287:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2284:13:2284:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2284:26:2284:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2284:26:2284:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2285:13:2285:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2285:26:2285:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2285:26:2285:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2286:13:2286:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2286:26:2286:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2286:26:2286:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2288:9:2288:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2288:18:2288:25 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2288:27:2288:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2290:13:2290:20 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2291:9:2295:9 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2291:10:2295:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2292:13:2292:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2292:26:2292:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2292:26:2292:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2293:13:2293:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2293:26:2293:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2293:26:2293:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2294:13:2294:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2294:26:2294:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2294:26:2294:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2296:9:2296:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2296:18:2296:25 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2296:27:2296:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2298:13:2298:21 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2298:25:2298:81 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2298:26:2298:42 | ...::new(...) | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2298:45:2298:61 | ...::new(...) | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2298:64:2298:80 | ...::new(...) | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2299:9:2303:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2300:12:2300:20 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2301:9:2303:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2307:9:2307:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2307:18:2307:22 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2307:24:2307:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2308:9:2308:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2308:18:2308:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2308:19:2308:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2308:19:2308:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2308:28:2308:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2309:13:2309:17 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2309:21:2309:25 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2310:9:2310:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2310:18:2310:22 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2310:24:2310:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2311:13:2311:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2311:26:2311:27 | .. | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2312:9:2312:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2312:18:2312:48 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2312:19:2312:36 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2312:20:2312:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:26:2312:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:32:2312:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:38:2312:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2312:50:2312:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2314:13:2314:18 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2315:9:2318:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | +| main.rs:2316:20:2316:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2317:18:2317:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2319:9:2319:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2319:18:2319:23 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2319:25:2319:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2324:9:2324:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2324:24:2324:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2326:13:2326:18 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2326:13:2326:18 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2326:13:2326:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2326:32:2326:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2326:33:2326:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2327:9:2327:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2327:18:2327:23 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2327:18:2327:23 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2327:18:2327:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2327:25:2327:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2329:22:2329:33 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2329:23:2329:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2330:9:2330:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2330:25:2330:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2332:13:2332:17 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2332:21:2332:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2332:31:2332:42 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2332:32:2332:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2333:9:2333:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2333:18:2333:22 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2333:24:2333:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2335:13:2335:17 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2335:13:2335:17 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2335:13:2335:17 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2335:13:2335:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2335:32:2335:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2335:33:2335:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | +| main.rs:2336:9:2336:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2336:18:2336:22 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2336:18:2336:22 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2336:18:2336:22 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2336:18:2336:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2336:24:2336:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2338:17:2338:21 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2338:17:2338:21 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2338:25:2338:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2338:25:2338:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2339:9:2339:13 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2339:9:2339:13 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2339:20:2339:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2340:9:2340:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2340:18:2340:22 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2340:18:2340:22 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2340:24:2340:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2344:17:2347:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2345:13:2346:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2345:29:2346:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2349:17:2349:20 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2349:17:2349:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2349:24:2349:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2349:24:2349:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2350:9:2350:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2350:9:2350:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2350:24:2350:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2350:24:2350:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2350:33:2350:37 | "one" | | {EXTERNAL LOCATION} | & | +| main.rs:2350:33:2350:37 | "one" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2351:9:2351:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2351:9:2351:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2351:24:2351:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2351:24:2351:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2351:33:2351:37 | "two" | | {EXTERNAL LOCATION} | & | +| main.rs:2351:33:2351:37 | "two" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2352:9:2352:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2352:20:2352:23 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2352:20:2352:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2352:32:2352:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2353:9:2353:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2353:22:2353:25 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2353:22:2353:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2353:36:2353:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2354:9:2354:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2354:13:2354:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2354:29:2354:32 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2354:29:2354:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2354:41:2354:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2355:9:2355:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2355:13:2355:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2355:29:2355:33 | &map1 | | {EXTERNAL LOCATION} | & | +| main.rs:2355:30:2355:33 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2355:30:2355:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2355:35:2355:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2359:17:2359:17 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2361:17:2364:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2361:23:2361:23 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2362:9:2364:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2363:13:2363:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2375:40:2377:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:2375:40:2377:9 | { ... } | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2375:40:2377:9 | { ... } | T.T | main.rs:2374:10:2374:19 | T | +| main.rs:2379:30:2381:9 | { ... } | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2379:30:2381:9 | { ... } | T | main.rs:2374:10:2374:19 | T | +| main.rs:2383:19:2383:22 | SelfParam | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2383:19:2383:22 | SelfParam | T | main.rs:2374:10:2374:19 | T | +| main.rs:2383:33:2385:9 | { ... } | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2383:33:2385:9 | { ... } | T | main.rs:2374:10:2374:19 | T | +| main.rs:2384:13:2384:16 | self | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2384:13:2384:16 | self | T | main.rs:2374:10:2374:19 | T | +| main.rs:2396:15:2396:15 | x | | main.rs:2396:12:2396:12 | T | +| main.rs:2396:26:2398:5 | { ... } | | main.rs:2396:12:2396:12 | T | +| main.rs:2397:9:2397:9 | x | | main.rs:2396:12:2396:12 | T | +| main.rs:2400:16:2422:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2401:13:2401:14 | x1 | | {EXTERNAL LOCATION} | Option | +| main.rs:2401:13:2401:14 | x1 | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2401:13:2401:14 | x1 | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2401:34:2401:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2401:34:2401:48 | ...::assoc_fun(...) | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2402:13:2402:14 | x2 | | {EXTERNAL LOCATION} | Option | +| main.rs:2402:13:2402:14 | x2 | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2402:13:2402:14 | x2 | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2402:18:2402:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2402:18:2402:38 | ...::assoc_fun(...) | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2402:18:2402:38 | ...::assoc_fun(...) | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2403:13:2403:14 | x3 | | {EXTERNAL LOCATION} | Option | +| main.rs:2403:13:2403:14 | x3 | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2403:13:2403:14 | x3 | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2403:18:2403:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2403:18:2403:32 | ...::assoc_fun(...) | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2403:18:2403:32 | ...::assoc_fun(...) | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2404:13:2404:14 | x4 | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2404:13:2404:14 | x4 | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2404:18:2404:48 | ...::method(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2404:18:2404:48 | ...::method(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2404:35:2404:47 | ...::default(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2405:13:2405:14 | x5 | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2405:13:2405:14 | x5 | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2405:18:2405:42 | ...::method(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2405:18:2405:42 | ...::method(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2405:29:2405:41 | ...::default(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2409:21:2409:33 | ...::default(...) | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2410:13:2410:15 | x10 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2410:13:2410:15 | x10 | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2410:19:2413:9 | S5::<...> {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2410:19:2413:9 | S5::<...> {...} | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2414:13:2414:15 | x11 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2414:19:2414:34 | S5 {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2415:13:2415:15 | x12 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2415:19:2415:33 | S5 {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2416:13:2416:15 | x13 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2416:19:2419:9 | S5 {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2418:20:2418:32 | ...::default(...) | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2420:13:2420:15 | x14 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2420:19:2420:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2421:13:2421:15 | x15 | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2421:13:2421:15 | x15 | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2421:19:2421:37 | ...::default(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2421:19:2421:37 | ...::default(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2430:35:2432:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2430:35:2432:9 | { ... } | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2430:35:2432:9 | { ... } | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2431:13:2431:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2431:14:2431:18 | S1 {...} | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2431:21:2431:25 | S1 {...} | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2433:16:2433:19 | SelfParam | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2433:22:2433:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2436:16:2470:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2437:13:2437:13 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2437:13:2437:13 | a | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2437:13:2437:13 | a | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2437:17:2437:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2437:17:2437:30 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2437:17:2437:30 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:17:2438:17 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2438:17:2438:17 | b | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:17:2438:17 | b | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:21:2438:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2438:21:2438:34 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:21:2438:34 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:13:2439:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2439:22:2439:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2439:22:2439:35 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:22:2439:35 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:13:2440:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2440:26:2440:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2440:26:2440:39 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:26:2440:39 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:13:2441:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2441:30:2441:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2441:30:2441:43 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:30:2441:43 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2443:9:2443:9 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2443:9:2443:9 | a | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2443:9:2443:9 | a | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2444:9:2444:9 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2444:9:2444:9 | b | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2444:9:2444:9 | b | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2457:13:2457:16 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2457:20:2457:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2458:13:2458:13 | i | | {EXTERNAL LOCATION} | i64 | +| main.rs:2458:22:2458:25 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2459:13:2459:13 | j | | {EXTERNAL LOCATION} | bool | +| main.rs:2459:23:2459:26 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2461:20:2461:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2463:13:2463:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2463:30:2463:41 | "unexpected" | | {EXTERNAL LOCATION} | & | +| main.rs:2463:30:2463:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2463:30:2463:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2463:30:2463:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2464:25:2464:34 | "expected" | | {EXTERNAL LOCATION} | & | +| main.rs:2464:25:2464:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2464:25:2464:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2464:25:2464:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2468:13:2468:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2468:17:2468:31 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2468:18:2468:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2468:18:2468:31 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2468:18:2468:31 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2469:9:2469:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2475:27:2497:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2476:13:2476:23 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2476:13:2476:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2476:27:2476:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2476:27:2476:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2476:36:2476:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2479:15:2479:25 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2479:15:2479:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2480:24:2482:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2481:26:2481:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2481:26:2481:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2481:26:2481:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2481:26:2481:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2483:22:2486:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2485:26:2485:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2485:26:2485:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2485:26:2485:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2485:26:2485:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2490:13:2490:22 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2490:13:2490:22 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:26:2490:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2490:26:2490:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:35:2490:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2490:35:2490:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:44:2490:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2491:15:2491:24 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2491:15:2491:24 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2492:26:2495:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2494:26:2494:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2494:26:2494:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2494:26:2494:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2494:26:2494:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2506:36:2508:9 | { ... } | | main.rs:2503:5:2503:22 | Path | +| main.rs:2507:13:2507:19 | Path {...} | | main.rs:2503:5:2503:22 | Path | +| main.rs:2510:29:2510:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2510:29:2510:33 | SelfParam | TRef | main.rs:2503:5:2503:22 | Path | +| main.rs:2510:59:2512:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:2510:59:2512:9 | { ... } | E | {EXTERNAL LOCATION} | () | +| main.rs:2510:59:2512:9 | { ... } | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2511:16:2511:29 | ...::new(...) | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2518:39:2520:9 | { ... } | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2519:13:2519:22 | PathBuf {...} | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2528:18:2528:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2528:18:2528:22 | SelfParam | TRef | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2528:34:2532:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2528:34:2532:9 | { ... } | TRef | main.rs:2503:5:2503:22 | Path | +| main.rs:2530:33:2530:43 | ...::new(...) | | main.rs:2503:5:2503:22 | Path | +| main.rs:2531:13:2531:17 | &path | | {EXTERNAL LOCATION} | & | +| main.rs:2535:16:2543:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2536:13:2536:17 | path1 | | main.rs:2503:5:2503:22 | Path | +| main.rs:2536:21:2536:31 | ...::new(...) | | main.rs:2503:5:2503:22 | Path | +| main.rs:2537:21:2537:25 | path1 | | main.rs:2503:5:2503:22 | Path | +| main.rs:2540:13:2540:20 | pathbuf1 | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2540:24:2540:37 | ...::new(...) | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2541:24:2541:31 | pathbuf1 | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2548:14:2548:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2548:14:2548:18 | SelfParam | TRef | main.rs:2547:5:2549:5 | Self [trait MyTrait] | +| main.rs:2555:14:2555:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2555:14:2555:18 | SelfParam | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2555:14:2555:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2555:28:2557:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2556:13:2556:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2556:13:2556:16 | self | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2556:13:2556:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2561:14:2561:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2561:14:2561:18 | SelfParam | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2561:14:2561:18 | SelfParam | TRef.T | main.rs:2551:5:2552:19 | S | +| main.rs:2561:14:2561:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2561:28:2563:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2562:13:2562:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2562:13:2562:16 | self | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2562:13:2562:16 | self | TRef.T | main.rs:2551:5:2552:19 | S | +| main.rs:2562:13:2562:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2567:15:2567:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2567:15:2567:19 | SelfParam | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2567:15:2567:19 | SelfParam | TRef.T | main.rs:2566:10:2566:16 | T | +| main.rs:2567:33:2569:9 | { ... } | | main.rs:2551:5:2552:19 | S | +| main.rs:2567:33:2569:9 | { ... } | T | main.rs:2551:5:2552:19 | S | +| main.rs:2567:33:2569:9 | { ... } | T.T | main.rs:2566:10:2566:16 | T | +| main.rs:2568:17:2568:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2568:17:2568:20 | self | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2568:17:2568:20 | self | TRef.T | main.rs:2566:10:2566:16 | T | +| main.rs:2572:14:2572:14 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2572:48:2589:5 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2572:48:2589:5 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2572:48:2589:5 | { ... } | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2572:48:2589:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2573:20:2573:20 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2583:12:2583:12 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2585:13:2585:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2585:13:2585:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2587:13:2587:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2587:13:2587:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2593:22:2597:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2594:18:2594:18 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2594:33:2596:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2595:13:2595:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2602:11:2602:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2602:30:2610:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2605:13:2607:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2605:16:2605:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2605:21:2607:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2613:20:2620:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2618:18:2618:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2618:18:2618:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2618:18:2618:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2618:18:2618:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2622:20:2624:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2627:11:2627:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2627:30:2635:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2628:13:2628:13 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2628:17:2632:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2629:13:2631:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2629:16:2629:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2629:21:2631:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2633:18:2633:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2633:18:2633:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2633:18:2633:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2633:18:2633:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2633:29:2633:29 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2639:16:2686:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2641:13:2641:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2641:13:2641:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2645:26:2645:28 | opt | | {EXTERNAL LOCATION} | Option | +| main.rs:2645:26:2645:28 | opt | T | main.rs:2645:23:2645:23 | T | +| main.rs:2645:42:2645:42 | x | | main.rs:2645:23:2645:23 | T | +| main.rs:2645:48:2645:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2648:9:2648:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2655:13:2655:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2655:17:2655:39 | ...::A {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2656:13:2656:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2656:13:2656:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2656:13:2656:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2656:40:2656:40 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2657:13:2657:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2657:13:2657:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2657:17:2657:52 | ...::A {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2657:17:2657:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2659:13:2659:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2659:13:2659:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2659:17:2661:9 | ...::B::<...> {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2659:17:2661:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2660:20:2660:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2663:29:2663:29 | e | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2663:29:2663:29 | e | T1 | main.rs:2663:26:2663:26 | T | +| main.rs:2663:29:2663:29 | e | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2663:53:2663:53 | x | | main.rs:2663:26:2663:26 | T | +| main.rs:2663:59:2663:60 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2666:13:2666:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2666:17:2668:9 | ...::B {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2667:20:2667:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2669:9:2669:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2669:23:2669:23 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2672:13:2672:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2672:13:2672:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2672:13:2672:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2676:29:2676:31 | res | | {EXTERNAL LOCATION} | Result | +| main.rs:2676:29:2676:31 | res | E | main.rs:2676:26:2676:26 | E | +| main.rs:2676:29:2676:31 | res | T | main.rs:2676:23:2676:23 | T | +| main.rs:2676:48:2676:48 | x | | main.rs:2676:26:2676:26 | E | +| main.rs:2676:54:2676:55 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2679:9:2679:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2679:23:2679:27 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:2681:17:2681:17 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2681:17:2681:17 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2681:21:2681:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2681:21:2681:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2682:9:2682:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2682:9:2682:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2685:9:2685:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2685:9:2685:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2692:14:2692:17 | SelfParam | | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2695:14:2695:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2695:14:2695:18 | SelfParam | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2695:21:2695:25 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2695:21:2695:25 | other | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2695:44:2697:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2695:44:2697:9 | { ... } | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2696:13:2696:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2696:13:2696:16 | self | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2702:14:2702:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| main.rs:2702:28:2704:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2703:13:2703:16 | self | | {EXTERNAL LOCATION} | i32 | +| main.rs:2709:14:2709:17 | SelfParam | | {EXTERNAL LOCATION} | usize | +| main.rs:2709:28:2711:9 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2710:13:2710:16 | self | | {EXTERNAL LOCATION} | usize | +| main.rs:2716:14:2716:17 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2716:14:2716:17 | SelfParam | TRef | main.rs:2714:10:2714:10 | T | +| main.rs:2716:28:2718:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2716:28:2718:9 | { ... } | TRef | main.rs:2714:10:2714:10 | T | +| main.rs:2717:13:2717:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2717:13:2717:16 | self | TRef | main.rs:2714:10:2714:10 | T | +| main.rs:2721:25:2725:5 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2727:12:2735:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2728:13:2728:13 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2729:13:2729:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2729:17:2729:18 | &1 | | {EXTERNAL LOCATION} | & | +| main.rs:2730:17:2730:17 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2730:21:2730:21 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2733:13:2733:13 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2734:23:2734:23 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2744:11:2779:1 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2745:5:2745:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2746:5:2746:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2747:5:2747:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2747:20:2747:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2747:41:2747:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2748:5:2748:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2749:5:2749:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2750:5:2750:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2751:5:2751:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2752:5:2752:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2753:5:2753:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2754:5:2754:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2755:5:2755:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2756:5:2756:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2757:5:2757:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2758:5:2758:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2759:5:2759:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2760:5:2760:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2761:5:2761:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2762:5:2762:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2763:5:2763:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2763:5:2763:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2764:5:2764:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2765:5:2765:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2766:5:2766:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2767:5:2767:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2768:5:2768:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2769:5:2769:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2770:5:2770:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2771:5:2771:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2772:5:2772:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2773:5:2773:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2774:5:2774:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2775:5:2775:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2776:5:2776:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2777:5:2777:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2777:5:2777:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2777:5:2777:20 | ...::f(...) | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2777:5:2777:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2777:16:2777:19 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2778:5:2778:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:4:19:4:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:4:19:4:23 | SelfParam | TRef | overloading.rs:2:5:7:5 | Self [trait FirstTrait] | +| overloading.rs:4:34:6:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:5:13:5:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:10:19:10:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:10:19:10:23 | SelfParam | TRef | overloading.rs:8:5:13:5 | Self [trait SecondTrait] | +| overloading.rs:10:33:12:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:18:16:26:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:21:13:21:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:21:19:21:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:21:38:21:39 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:22:13:22:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:22:19:22:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:22:45:22:46 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:24:13:24:15 | _n1 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:24:19:24:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:24:39:24:40 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:25:13:25:15 | _n2 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:25:19:25:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:25:46:25:47 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:34:26:34:29 | SelfParam | | overloading.rs:33:5:37:5 | Self [trait OverlappingTrait] | +| overloading.rs:36:28:36:31 | SelfParam | | overloading.rs:33:5:37:5 | Self [trait OverlappingTrait] | +| overloading.rs:36:34:36:35 | s1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:41:26:41:29 | SelfParam | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:41:38:43:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:46:28:46:31 | SelfParam | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:46:34:46:35 | s1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:46:48:48:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:53:26:53:29 | SelfParam | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:53:38:55:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:54:13:54:16 | self | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:58:28:58:31 | SelfParam | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:58:40:60:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:59:13:59:16 | self | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:67:26:67:29 | SelfParam | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:67:26:67:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:67:38:69:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:72:28:72:31 | SelfParam | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:72:28:72:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:72:40:74:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:79:26:79:29 | SelfParam | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:79:26:79:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:79:38:81:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:84:28:84:31 | SelfParam | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:84:28:84:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:84:34:84:35 | s1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:84:48:86:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:91:26:91:29 | SelfParam | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:91:26:91:29 | SelfParam | T2 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:91:38:93:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:96:28:96:31 | SelfParam | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:96:28:96:31 | SelfParam | T2 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:96:34:96:35 | s1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:96:48:98:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:105:14:105:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:105:14:105:18 | SelfParam | TRef | overloading.rs:104:5:106:5 | Self [trait OverlappingTrait2] | +| overloading.rs:105:21:105:21 | x | | {EXTERNAL LOCATION} | & | +| overloading.rs:105:21:105:21 | x | TRef | overloading.rs:104:29:104:29 | T | +| overloading.rs:110:14:110:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:110:14:110:18 | SelfParam | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:110:14:110:18 | SelfParam | TRef.T3 | overloading.rs:108:10:108:10 | T | +| overloading.rs:110:21:110:21 | x | | {EXTERNAL LOCATION} | & | +| overloading.rs:110:21:110:21 | x | TRef | overloading.rs:108:10:108:10 | T | +| overloading.rs:110:37:112:9 | { ... } | | {EXTERNAL LOCATION} | & | +| overloading.rs:110:37:112:9 | { ... } | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:110:37:112:9 | { ... } | TRef.T3 | overloading.rs:108:10:108:10 | T | +| overloading.rs:111:13:111:16 | self | | {EXTERNAL LOCATION} | & | +| overloading.rs:111:13:111:16 | self | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:111:13:111:16 | self | TRef.T3 | overloading.rs:108:10:108:10 | T | +| overloading.rs:117:14:117:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:117:14:117:18 | SelfParam | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:117:14:117:18 | SelfParam | TRef.T3 | overloading.rs:115:10:115:10 | T | +| overloading.rs:117:21:117:21 | x | | overloading.rs:115:10:115:10 | T | +| overloading.rs:117:36:119:9 | { ... } | | {EXTERNAL LOCATION} | & | +| overloading.rs:117:36:119:9 | { ... } | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:117:36:119:9 | { ... } | TRef.T3 | overloading.rs:115:10:115:10 | T | +| overloading.rs:118:13:118:16 | self | | {EXTERNAL LOCATION} | & | +| overloading.rs:118:13:118:16 | self | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:118:13:118:16 | self | TRef.T3 | overloading.rs:115:10:115:10 | T | +| overloading.rs:124:14:124:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:124:14:124:18 | SelfParam | TRef | overloading.rs:122:5:125:5 | Self [trait MyTrait1] | +| overloading.rs:124:21:124:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:134:14:134:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:134:14:134:18 | SelfParam | TRef | overloading.rs:129:5:130:14 | S4 | +| overloading.rs:134:21:134:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:144:14:144:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:144:14:144:18 | SelfParam | TRef | overloading.rs:139:5:140:22 | S5 | +| overloading.rs:144:14:144:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:144:21:144:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:153:16:179:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:155:18:155:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:155:18:155:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:155:18:155:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:155:18:155:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:156:18:156:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:156:18:156:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:156:18:156:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:156:18:156:45 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:156:26:156:45 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:157:18:157:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:157:18:157:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:157:18:157:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:157:18:157:44 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:158:18:158:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:158:18:158:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:158:18:158:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:158:18:158:47 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:158:26:158:47 | ...::common_method_2(...) | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:161:18:161:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:161:18:161:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:161:18:161:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:161:18:161:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:162:18:162:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:162:18:162:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:162:18:162:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:162:18:162:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:162:26:162:56 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:165:18:165:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:165:18:165:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:165:18:165:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:165:18:165:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:166:18:166:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:166:18:166:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:166:18:166:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:166:18:166:49 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:166:26:166:49 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:167:18:167:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:167:18:167:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:167:18:167:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:167:18:167:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:167:26:167:56 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:170:18:170:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:170:18:170:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:170:18:170:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:170:18:170:31 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:171:18:171:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:171:18:171:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:171:18:171:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:171:18:171:37 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:171:26:171:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | +| overloading.rs:171:26:171:37 | ...::m(...) | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:171:32:171:33 | &w | | {EXTERNAL LOCATION} | & | +| overloading.rs:174:9:174:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:174:15:174:17 | &S4 | | {EXTERNAL LOCATION} | & | +| overloading.rs:175:12:175:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:176:9:176:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:176:15:176:23 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:176:19:176:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:177:12:177:15 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:178:9:178:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:178:15:178:23 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:178:19:178:22 | true | | {EXTERNAL LOCATION} | bool | | pattern_matching.rs:13:26:133:1 | { ... } | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:13:26:133:1 | { ... } | T | {EXTERNAL LOCATION} | () | | pattern_matching.rs:15:5:18:5 | if ... {...} | | {EXTERNAL LOCATION} | () | @@ -6881,5324 +6881,5324 @@ inferType | main.rs:182:27:182:28 | &x | | {EXTERNAL LOCATION} | & | | main.rs:182:27:182:28 | &x | TRef | main.rs:156:9:156:21 | X | | main.rs:182:28:182:28 | x | | main.rs:156:9:156:21 | X | -| main.rs:190:19:190:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:190:19:190:23 | SelfParam | TRef | main.rs:188:5:193:5 | Self [trait FirstTrait] | -| main.rs:190:34:192:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:191:13:191:16 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:196:19:196:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:196:19:196:23 | SelfParam | TRef | main.rs:194:5:199:5 | Self [trait SecondTrait] | -| main.rs:196:33:198:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:197:13:197:13 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:197:13:197:13 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:204:16:212:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:205:13:205:13 | s | | main.rs:200:5:200:13 | S | -| main.rs:205:17:205:17 | S | | main.rs:200:5:200:13 | S | -| main.rs:207:13:207:15 | _b1 | | {EXTERNAL LOCATION} | bool | -| main.rs:207:19:207:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:207:38:207:39 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:207:38:207:39 | &s | TRef | main.rs:200:5:200:13 | S | -| main.rs:207:39:207:39 | s | | main.rs:200:5:200:13 | S | -| main.rs:208:13:208:15 | _b2 | | {EXTERNAL LOCATION} | bool | -| main.rs:208:19:208:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:208:45:208:46 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:208:45:208:46 | &s | TRef | main.rs:200:5:200:13 | S | -| main.rs:208:46:208:46 | s | | main.rs:200:5:200:13 | S | -| main.rs:210:13:210:15 | _n1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:210:19:210:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:210:39:210:40 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:210:39:210:40 | &s | TRef | main.rs:200:5:200:13 | S | -| main.rs:210:40:210:40 | s | | main.rs:200:5:200:13 | S | -| main.rs:211:13:211:15 | _n2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:211:19:211:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:211:46:211:47 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:211:46:211:47 | &s | TRef | main.rs:200:5:200:13 | S | -| main.rs:211:47:211:47 | s | | main.rs:200:5:200:13 | S | -| main.rs:228:15:228:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | -| main.rs:228:15:228:18 | SelfParam | A | main.rs:221:5:222:14 | S1 | -| main.rs:228:27:230:9 | { ... } | | main.rs:221:5:222:14 | S1 | -| main.rs:229:13:229:16 | self | | main.rs:216:5:219:5 | MyThing | -| main.rs:229:13:229:16 | self | A | main.rs:221:5:222:14 | S1 | -| main.rs:229:13:229:18 | self.a | | main.rs:221:5:222:14 | S1 | -| main.rs:235:15:235:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | -| main.rs:235:15:235:18 | SelfParam | A | main.rs:223:5:224:14 | S2 | -| main.rs:235:29:237:9 | { ... } | | main.rs:216:5:219:5 | MyThing | -| main.rs:235:29:237:9 | { ... } | A | main.rs:223:5:224:14 | S2 | -| main.rs:236:13:236:30 | Self {...} | | main.rs:216:5:219:5 | MyThing | -| main.rs:236:13:236:30 | Self {...} | A | main.rs:223:5:224:14 | S2 | -| main.rs:236:23:236:26 | self | | main.rs:216:5:219:5 | MyThing | -| main.rs:236:23:236:26 | self | A | main.rs:223:5:224:14 | S2 | -| main.rs:236:23:236:28 | self.a | | main.rs:223:5:224:14 | S2 | -| main.rs:241:15:241:18 | SelfParam | | main.rs:216:5:219:5 | MyThing | -| main.rs:241:15:241:18 | SelfParam | A | main.rs:240:10:240:10 | T | -| main.rs:241:26:243:9 | { ... } | | main.rs:240:10:240:10 | T | -| main.rs:242:13:242:16 | self | | main.rs:216:5:219:5 | MyThing | -| main.rs:242:13:242:16 | self | A | main.rs:240:10:240:10 | T | -| main.rs:242:13:242:18 | self.a | | main.rs:240:10:240:10 | T | -| main.rs:246:16:262:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:247:13:247:13 | x | | main.rs:216:5:219:5 | MyThing | -| main.rs:247:13:247:13 | x | A | main.rs:221:5:222:14 | S1 | -| main.rs:247:17:247:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | -| main.rs:247:17:247:33 | MyThing {...} | A | main.rs:221:5:222:14 | S1 | -| main.rs:247:30:247:31 | S1 | | main.rs:221:5:222:14 | S1 | -| main.rs:248:13:248:13 | y | | main.rs:216:5:219:5 | MyThing | -| main.rs:248:13:248:13 | y | A | main.rs:223:5:224:14 | S2 | -| main.rs:248:17:248:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | -| main.rs:248:17:248:33 | MyThing {...} | A | main.rs:223:5:224:14 | S2 | -| main.rs:248:30:248:31 | S2 | | main.rs:223:5:224:14 | S2 | -| main.rs:251:9:251:29 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:251:18:251:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:251:18:251:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:251:18:251:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:251:18:251:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:251:18:251:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:251:26:251:26 | x | | main.rs:216:5:219:5 | MyThing | -| main.rs:251:26:251:26 | x | A | main.rs:221:5:222:14 | S1 | -| main.rs:251:26:251:28 | x.a | | main.rs:221:5:222:14 | S1 | -| main.rs:252:9:252:29 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:252:18:252:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:252:18:252:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:252:18:252:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:252:18:252:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:252:18:252:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:252:26:252:26 | y | | main.rs:216:5:219:5 | MyThing | -| main.rs:252:26:252:26 | y | A | main.rs:223:5:224:14 | S2 | -| main.rs:252:26:252:28 | y.a | | main.rs:223:5:224:14 | S2 | -| main.rs:254:9:254:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:254:18:254:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:254:18:254:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:254:18:254:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:254:18:254:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:254:18:254:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:254:26:254:26 | x | | main.rs:216:5:219:5 | MyThing | -| main.rs:254:26:254:26 | x | A | main.rs:221:5:222:14 | S1 | -| main.rs:254:26:254:31 | x.m1() | | main.rs:221:5:222:14 | S1 | -| main.rs:255:9:255:34 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:255:18:255:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:255:18:255:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:255:18:255:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:255:18:255:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:255:18:255:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:255:26:255:26 | y | | main.rs:216:5:219:5 | MyThing | -| main.rs:255:26:255:26 | y | A | main.rs:223:5:224:14 | S2 | -| main.rs:255:26:255:31 | y.m1() | | main.rs:216:5:219:5 | MyThing | -| main.rs:255:26:255:31 | y.m1() | A | main.rs:223:5:224:14 | S2 | -| main.rs:255:26:255:33 | ... .a | | main.rs:223:5:224:14 | S2 | -| main.rs:257:13:257:13 | x | | main.rs:216:5:219:5 | MyThing | -| main.rs:257:13:257:13 | x | A | main.rs:221:5:222:14 | S1 | -| main.rs:257:17:257:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | -| main.rs:257:17:257:33 | MyThing {...} | A | main.rs:221:5:222:14 | S1 | -| main.rs:257:30:257:31 | S1 | | main.rs:221:5:222:14 | S1 | -| main.rs:258:13:258:13 | y | | main.rs:216:5:219:5 | MyThing | -| main.rs:258:13:258:13 | y | A | main.rs:223:5:224:14 | S2 | -| main.rs:258:17:258:33 | MyThing {...} | | main.rs:216:5:219:5 | MyThing | -| main.rs:258:17:258:33 | MyThing {...} | A | main.rs:223:5:224:14 | S2 | -| main.rs:258:30:258:31 | S2 | | main.rs:223:5:224:14 | S2 | -| main.rs:260:9:260:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:260:18:260:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:260:18:260:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:260:18:260:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:260:18:260:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:260:18:260:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:260:26:260:26 | x | | main.rs:216:5:219:5 | MyThing | -| main.rs:260:26:260:26 | x | A | main.rs:221:5:222:14 | S1 | -| main.rs:260:26:260:31 | x.m2() | | main.rs:221:5:222:14 | S1 | -| main.rs:261:9:261:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:261:18:261:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:261:18:261:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:261:18:261:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:261:18:261:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:261:18:261:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:261:26:261:26 | y | | main.rs:216:5:219:5 | MyThing | -| main.rs:261:26:261:26 | y | A | main.rs:223:5:224:14 | S2 | -| main.rs:261:26:261:31 | y.m2() | | main.rs:223:5:224:14 | S2 | -| main.rs:285:15:285:18 | SelfParam | | main.rs:284:5:293:5 | Self [trait MyTrait] | -| main.rs:287:15:287:18 | SelfParam | | main.rs:284:5:293:5 | Self [trait MyTrait] | -| main.rs:290:9:292:9 | { ... } | | main.rs:284:5:293:5 | Self [trait MyTrait] | -| main.rs:291:13:291:16 | self | | main.rs:284:5:293:5 | Self [trait MyTrait] | -| main.rs:297:16:297:19 | SelfParam | | main.rs:295:5:300:5 | Self [trait MyProduct] | -| main.rs:299:16:299:19 | SelfParam | | main.rs:295:5:300:5 | Self [trait MyProduct] | -| main.rs:302:43:302:43 | x | | main.rs:302:26:302:40 | T2 | -| main.rs:302:56:304:5 | { ... } | | main.rs:302:22:302:23 | T1 | -| main.rs:303:9:303:9 | x | | main.rs:302:26:302:40 | T2 | -| main.rs:303:9:303:14 | x.m1() | | main.rs:302:22:302:23 | T1 | -| main.rs:308:15:308:18 | SelfParam | | main.rs:266:5:269:5 | MyThing | -| main.rs:308:15:308:18 | SelfParam | A | main.rs:277:5:278:14 | S1 | -| main.rs:308:27:310:9 | { ... } | | main.rs:277:5:278:14 | S1 | -| main.rs:309:13:309:16 | self | | main.rs:266:5:269:5 | MyThing | -| main.rs:309:13:309:16 | self | A | main.rs:277:5:278:14 | S1 | -| main.rs:309:13:309:18 | self.a | | main.rs:277:5:278:14 | S1 | -| main.rs:315:15:315:18 | SelfParam | | main.rs:266:5:269:5 | MyThing | -| main.rs:315:15:315:18 | SelfParam | A | main.rs:279:5:280:14 | S2 | -| main.rs:315:29:317:9 | { ... } | | main.rs:266:5:269:5 | MyThing | -| main.rs:315:29:317:9 | { ... } | A | main.rs:279:5:280:14 | S2 | -| main.rs:316:13:316:30 | Self {...} | | main.rs:266:5:269:5 | MyThing | -| main.rs:316:13:316:30 | Self {...} | A | main.rs:279:5:280:14 | S2 | -| main.rs:316:23:316:26 | self | | main.rs:266:5:269:5 | MyThing | -| main.rs:316:23:316:26 | self | A | main.rs:279:5:280:14 | S2 | -| main.rs:316:23:316:28 | self.a | | main.rs:279:5:280:14 | S2 | -| main.rs:327:15:327:18 | SelfParam | | main.rs:266:5:269:5 | MyThing | -| main.rs:327:15:327:18 | SelfParam | A | main.rs:281:5:282:14 | S3 | -| main.rs:327:27:329:9 | { ... } | | main.rs:322:10:322:11 | TD | -| main.rs:328:13:328:25 | ...::default(...) | | main.rs:322:10:322:11 | TD | -| main.rs:334:15:334:18 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:334:15:334:18 | SelfParam | P1 | main.rs:332:10:332:10 | I | -| main.rs:334:15:334:18 | SelfParam | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:334:26:336:9 | { ... } | | main.rs:332:10:332:10 | I | -| main.rs:335:13:335:16 | self | | main.rs:271:5:275:5 | MyPair | -| main.rs:335:13:335:16 | self | P1 | main.rs:332:10:332:10 | I | -| main.rs:335:13:335:16 | self | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:335:13:335:19 | self.p1 | | main.rs:332:10:332:10 | I | -| main.rs:341:15:341:18 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:341:15:341:18 | SelfParam | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:341:15:341:18 | SelfParam | P2 | main.rs:279:5:280:14 | S2 | -| main.rs:341:27:343:9 | { ... } | | main.rs:281:5:282:14 | S3 | -| main.rs:342:13:342:14 | S3 | | main.rs:281:5:282:14 | S3 | -| main.rs:348:15:348:18 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:348:15:348:18 | SelfParam | P1 | main.rs:266:5:269:5 | MyThing | -| main.rs:348:15:348:18 | SelfParam | P1.A | main.rs:346:10:346:11 | TT | -| main.rs:348:15:348:18 | SelfParam | P2 | main.rs:281:5:282:14 | S3 | -| main.rs:348:27:351:9 | { ... } | | main.rs:346:10:346:11 | TT | -| main.rs:349:17:349:21 | alpha | | main.rs:266:5:269:5 | MyThing | -| main.rs:349:17:349:21 | alpha | A | main.rs:346:10:346:11 | TT | -| main.rs:349:25:349:28 | self | | main.rs:271:5:275:5 | MyPair | -| main.rs:349:25:349:28 | self | P1 | main.rs:266:5:269:5 | MyThing | -| main.rs:349:25:349:28 | self | P1.A | main.rs:346:10:346:11 | TT | -| main.rs:349:25:349:28 | self | P2 | main.rs:281:5:282:14 | S3 | -| main.rs:349:25:349:31 | self.p1 | | main.rs:266:5:269:5 | MyThing | -| main.rs:349:25:349:31 | self.p1 | A | main.rs:346:10:346:11 | TT | -| main.rs:350:13:350:17 | alpha | | main.rs:266:5:269:5 | MyThing | -| main.rs:350:13:350:17 | alpha | A | main.rs:346:10:346:11 | TT | -| main.rs:350:13:350:19 | alpha.a | | main.rs:346:10:346:11 | TT | -| main.rs:357:16:357:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:357:16:357:19 | SelfParam | P1 | main.rs:355:10:355:10 | A | -| main.rs:357:16:357:19 | SelfParam | P2 | main.rs:355:10:355:10 | A | -| main.rs:357:27:359:9 | { ... } | | main.rs:355:10:355:10 | A | -| main.rs:358:13:358:16 | self | | main.rs:271:5:275:5 | MyPair | -| main.rs:358:13:358:16 | self | P1 | main.rs:355:10:355:10 | A | -| main.rs:358:13:358:16 | self | P2 | main.rs:355:10:355:10 | A | -| main.rs:358:13:358:19 | self.p1 | | main.rs:355:10:355:10 | A | -| main.rs:362:16:362:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:362:16:362:19 | SelfParam | P1 | main.rs:355:10:355:10 | A | -| main.rs:362:16:362:19 | SelfParam | P2 | main.rs:355:10:355:10 | A | -| main.rs:362:27:364:9 | { ... } | | main.rs:355:10:355:10 | A | -| main.rs:363:13:363:16 | self | | main.rs:271:5:275:5 | MyPair | -| main.rs:363:13:363:16 | self | P1 | main.rs:355:10:355:10 | A | -| main.rs:363:13:363:16 | self | P2 | main.rs:355:10:355:10 | A | -| main.rs:363:13:363:19 | self.p2 | | main.rs:355:10:355:10 | A | -| main.rs:370:16:370:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:370:16:370:19 | SelfParam | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:370:16:370:19 | SelfParam | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:370:28:372:9 | { ... } | | main.rs:277:5:278:14 | S1 | -| main.rs:371:13:371:16 | self | | main.rs:271:5:275:5 | MyPair | -| main.rs:371:13:371:16 | self | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:371:13:371:16 | self | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:371:13:371:19 | self.p2 | | main.rs:277:5:278:14 | S1 | -| main.rs:375:16:375:19 | SelfParam | | main.rs:271:5:275:5 | MyPair | -| main.rs:375:16:375:19 | SelfParam | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:375:16:375:19 | SelfParam | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:375:28:377:9 | { ... } | | main.rs:279:5:280:14 | S2 | -| main.rs:376:13:376:16 | self | | main.rs:271:5:275:5 | MyPair | -| main.rs:376:13:376:16 | self | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:376:13:376:16 | self | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:376:13:376:19 | self.p1 | | main.rs:279:5:280:14 | S2 | -| main.rs:380:46:380:46 | p | | main.rs:380:24:380:43 | P | -| main.rs:380:58:382:5 | { ... } | | main.rs:380:16:380:17 | V1 | -| main.rs:381:9:381:9 | p | | main.rs:380:24:380:43 | P | -| main.rs:381:9:381:15 | p.fst() | | main.rs:380:16:380:17 | V1 | -| main.rs:384:46:384:46 | p | | main.rs:384:24:384:43 | P | -| main.rs:384:58:386:5 | { ... } | | main.rs:384:20:384:21 | V2 | -| main.rs:385:9:385:9 | p | | main.rs:384:24:384:43 | P | -| main.rs:385:9:385:15 | p.snd() | | main.rs:384:20:384:21 | V2 | -| main.rs:388:54:388:54 | p | | main.rs:271:5:275:5 | MyPair | -| main.rs:388:54:388:54 | p | P1 | main.rs:388:20:388:21 | V0 | -| main.rs:388:54:388:54 | p | P2 | main.rs:388:32:388:51 | P | -| main.rs:388:78:390:5 | { ... } | | main.rs:388:24:388:25 | V1 | -| main.rs:389:9:389:9 | p | | main.rs:271:5:275:5 | MyPair | -| main.rs:389:9:389:9 | p | P1 | main.rs:388:20:388:21 | V0 | -| main.rs:389:9:389:9 | p | P2 | main.rs:388:32:388:51 | P | -| main.rs:389:9:389:12 | p.p2 | | main.rs:388:32:388:51 | P | -| main.rs:389:9:389:18 | ... .fst() | | main.rs:388:24:388:25 | V1 | -| main.rs:394:23:394:26 | SelfParam | | main.rs:392:5:395:5 | Self [trait ConvertTo] | -| main.rs:399:23:399:26 | SelfParam | | main.rs:397:10:397:23 | T | -| main.rs:399:35:401:9 | { ... } | | main.rs:277:5:278:14 | S1 | -| main.rs:400:13:400:16 | self | | main.rs:397:10:397:23 | T | -| main.rs:400:13:400:21 | self.m1() | | main.rs:277:5:278:14 | S1 | -| main.rs:404:41:404:45 | thing | | main.rs:404:23:404:38 | T | -| main.rs:404:57:406:5 | { ... } | | main.rs:404:19:404:20 | TS | -| main.rs:405:9:405:13 | thing | | main.rs:404:23:404:38 | T | -| main.rs:405:9:405:26 | thing.convert_to() | | main.rs:404:19:404:20 | TS | -| main.rs:408:56:408:60 | thing | | main.rs:408:39:408:53 | TP | -| main.rs:408:73:411:5 | { ... } | | main.rs:277:5:278:14 | S1 | -| main.rs:410:9:410:13 | thing | | main.rs:408:39:408:53 | TP | -| main.rs:410:9:410:26 | thing.convert_to() | | main.rs:277:5:278:14 | S1 | -| main.rs:413:16:484:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:414:13:414:20 | thing_s1 | | main.rs:266:5:269:5 | MyThing | -| main.rs:414:13:414:20 | thing_s1 | A | main.rs:277:5:278:14 | S1 | -| main.rs:414:24:414:40 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | -| main.rs:414:24:414:40 | MyThing {...} | A | main.rs:277:5:278:14 | S1 | -| main.rs:414:37:414:38 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:415:13:415:20 | thing_s2 | | main.rs:266:5:269:5 | MyThing | -| main.rs:415:13:415:20 | thing_s2 | A | main.rs:279:5:280:14 | S2 | -| main.rs:415:24:415:40 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | -| main.rs:415:24:415:40 | MyThing {...} | A | main.rs:279:5:280:14 | S2 | -| main.rs:415:37:415:38 | S2 | | main.rs:279:5:280:14 | S2 | -| main.rs:416:13:416:20 | thing_s3 | | main.rs:266:5:269:5 | MyThing | -| main.rs:416:13:416:20 | thing_s3 | A | main.rs:281:5:282:14 | S3 | -| main.rs:416:24:416:40 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | -| main.rs:416:24:416:40 | MyThing {...} | A | main.rs:281:5:282:14 | S3 | -| main.rs:416:37:416:38 | S3 | | main.rs:281:5:282:14 | S3 | -| main.rs:420:9:420:39 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:420:18:420:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:420:18:420:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:420:18:420:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:420:18:420:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:420:18:420:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:420:26:420:33 | thing_s1 | | main.rs:266:5:269:5 | MyThing | -| main.rs:420:26:420:33 | thing_s1 | A | main.rs:277:5:278:14 | S1 | -| main.rs:420:26:420:38 | thing_s1.m1() | | main.rs:277:5:278:14 | S1 | -| main.rs:421:9:421:41 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:421:18:421:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:421:18:421:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:421:18:421:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:421:18:421:40 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:421:18:421:40 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:421:26:421:33 | thing_s2 | | main.rs:266:5:269:5 | MyThing | -| main.rs:421:26:421:33 | thing_s2 | A | main.rs:279:5:280:14 | S2 | -| main.rs:421:26:421:38 | thing_s2.m1() | | main.rs:266:5:269:5 | MyThing | -| main.rs:421:26:421:38 | thing_s2.m1() | A | main.rs:279:5:280:14 | S2 | -| main.rs:421:26:421:40 | ... .a | | main.rs:279:5:280:14 | S2 | -| main.rs:422:13:422:14 | s3 | | main.rs:281:5:282:14 | S3 | -| main.rs:422:22:422:29 | thing_s3 | | main.rs:266:5:269:5 | MyThing | -| main.rs:422:22:422:29 | thing_s3 | A | main.rs:281:5:282:14 | S3 | -| main.rs:422:22:422:34 | thing_s3.m1() | | main.rs:281:5:282:14 | S3 | -| main.rs:423:9:423:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:423:18:423:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:423:18:423:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:423:18:423:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:423:18:423:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:423:18:423:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:423:26:423:27 | s3 | | main.rs:281:5:282:14 | S3 | -| main.rs:425:13:425:14 | p1 | | main.rs:271:5:275:5 | MyPair | -| main.rs:425:13:425:14 | p1 | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:425:13:425:14 | p1 | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:425:18:425:42 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:425:18:425:42 | MyPair {...} | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:425:18:425:42 | MyPair {...} | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:425:31:425:32 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:425:39:425:40 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:426:9:426:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:426:18:426:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:426:18:426:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:426:18:426:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:426:18:426:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:426:18:426:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:426:26:426:27 | p1 | | main.rs:271:5:275:5 | MyPair | -| main.rs:426:26:426:27 | p1 | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:426:26:426:27 | p1 | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:426:26:426:32 | p1.m1() | | main.rs:277:5:278:14 | S1 | -| main.rs:428:13:428:14 | p2 | | main.rs:271:5:275:5 | MyPair | -| main.rs:428:13:428:14 | p2 | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:428:13:428:14 | p2 | P2 | main.rs:279:5:280:14 | S2 | -| main.rs:428:18:428:42 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:428:18:428:42 | MyPair {...} | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:428:18:428:42 | MyPair {...} | P2 | main.rs:279:5:280:14 | S2 | -| main.rs:428:31:428:32 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:428:39:428:40 | S2 | | main.rs:279:5:280:14 | S2 | -| main.rs:429:9:429:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:200:15:200:18 | SelfParam | | main.rs:188:5:191:5 | MyThing | +| main.rs:200:15:200:18 | SelfParam | A | main.rs:193:5:194:14 | S1 | +| main.rs:200:27:202:9 | { ... } | | main.rs:193:5:194:14 | S1 | +| main.rs:201:13:201:16 | self | | main.rs:188:5:191:5 | MyThing | +| main.rs:201:13:201:16 | self | A | main.rs:193:5:194:14 | S1 | +| main.rs:201:13:201:18 | self.a | | main.rs:193:5:194:14 | S1 | +| main.rs:207:15:207:18 | SelfParam | | main.rs:188:5:191:5 | MyThing | +| main.rs:207:15:207:18 | SelfParam | A | main.rs:195:5:196:14 | S2 | +| main.rs:207:29:209:9 | { ... } | | main.rs:188:5:191:5 | MyThing | +| main.rs:207:29:209:9 | { ... } | A | main.rs:195:5:196:14 | S2 | +| main.rs:208:13:208:30 | Self {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:208:13:208:30 | Self {...} | A | main.rs:195:5:196:14 | S2 | +| main.rs:208:23:208:26 | self | | main.rs:188:5:191:5 | MyThing | +| main.rs:208:23:208:26 | self | A | main.rs:195:5:196:14 | S2 | +| main.rs:208:23:208:28 | self.a | | main.rs:195:5:196:14 | S2 | +| main.rs:213:15:213:18 | SelfParam | | main.rs:188:5:191:5 | MyThing | +| main.rs:213:15:213:18 | SelfParam | A | main.rs:212:10:212:10 | T | +| main.rs:213:26:215:9 | { ... } | | main.rs:212:10:212:10 | T | +| main.rs:214:13:214:16 | self | | main.rs:188:5:191:5 | MyThing | +| main.rs:214:13:214:16 | self | A | main.rs:212:10:212:10 | T | +| main.rs:214:13:214:18 | self.a | | main.rs:212:10:212:10 | T | +| main.rs:218:16:234:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:219:13:219:13 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:219:13:219:13 | x | A | main.rs:193:5:194:14 | S1 | +| main.rs:219:17:219:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:219:17:219:33 | MyThing {...} | A | main.rs:193:5:194:14 | S1 | +| main.rs:219:30:219:31 | S1 | | main.rs:193:5:194:14 | S1 | +| main.rs:220:13:220:13 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:220:13:220:13 | y | A | main.rs:195:5:196:14 | S2 | +| main.rs:220:17:220:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:220:17:220:33 | MyThing {...} | A | main.rs:195:5:196:14 | S2 | +| main.rs:220:30:220:31 | S2 | | main.rs:195:5:196:14 | S2 | +| main.rs:223:9:223:29 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:223:18:223:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:223:18:223:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:223:18:223:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:223:18:223:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:223:18:223:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:223:26:223:26 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:223:26:223:26 | x | A | main.rs:193:5:194:14 | S1 | +| main.rs:223:26:223:28 | x.a | | main.rs:193:5:194:14 | S1 | +| main.rs:224:9:224:29 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:224:18:224:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:224:18:224:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:224:18:224:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:224:18:224:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:224:18:224:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:224:26:224:26 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:224:26:224:26 | y | A | main.rs:195:5:196:14 | S2 | +| main.rs:224:26:224:28 | y.a | | main.rs:195:5:196:14 | S2 | +| main.rs:226:9:226:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:226:18:226:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:226:18:226:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:226:18:226:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:226:18:226:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:226:18:226:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:226:26:226:26 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:226:26:226:26 | x | A | main.rs:193:5:194:14 | S1 | +| main.rs:226:26:226:31 | x.m1() | | main.rs:193:5:194:14 | S1 | +| main.rs:227:9:227:34 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:227:18:227:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:227:18:227:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:227:18:227:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:227:18:227:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:227:18:227:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:227:26:227:26 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:227:26:227:26 | y | A | main.rs:195:5:196:14 | S2 | +| main.rs:227:26:227:31 | y.m1() | | main.rs:188:5:191:5 | MyThing | +| main.rs:227:26:227:31 | y.m1() | A | main.rs:195:5:196:14 | S2 | +| main.rs:227:26:227:33 | ... .a | | main.rs:195:5:196:14 | S2 | +| main.rs:229:13:229:13 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:229:13:229:13 | x | A | main.rs:193:5:194:14 | S1 | +| main.rs:229:17:229:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:229:17:229:33 | MyThing {...} | A | main.rs:193:5:194:14 | S1 | +| main.rs:229:30:229:31 | S1 | | main.rs:193:5:194:14 | S1 | +| main.rs:230:13:230:13 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:230:13:230:13 | y | A | main.rs:195:5:196:14 | S2 | +| main.rs:230:17:230:33 | MyThing {...} | | main.rs:188:5:191:5 | MyThing | +| main.rs:230:17:230:33 | MyThing {...} | A | main.rs:195:5:196:14 | S2 | +| main.rs:230:30:230:31 | S2 | | main.rs:195:5:196:14 | S2 | +| main.rs:232:9:232:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:232:18:232:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:232:18:232:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:232:18:232:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:232:18:232:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:232:18:232:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:232:26:232:26 | x | | main.rs:188:5:191:5 | MyThing | +| main.rs:232:26:232:26 | x | A | main.rs:193:5:194:14 | S1 | +| main.rs:232:26:232:31 | x.m2() | | main.rs:193:5:194:14 | S1 | +| main.rs:233:9:233:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:233:18:233:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:233:18:233:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:233:18:233:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:233:18:233:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:233:18:233:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:233:26:233:26 | y | | main.rs:188:5:191:5 | MyThing | +| main.rs:233:26:233:26 | y | A | main.rs:195:5:196:14 | S2 | +| main.rs:233:26:233:31 | y.m2() | | main.rs:195:5:196:14 | S2 | +| main.rs:257:15:257:18 | SelfParam | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:259:15:259:18 | SelfParam | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:262:9:264:9 | { ... } | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:263:13:263:16 | self | | main.rs:256:5:265:5 | Self [trait MyTrait] | +| main.rs:269:16:269:19 | SelfParam | | main.rs:267:5:272:5 | Self [trait MyProduct] | +| main.rs:271:16:271:19 | SelfParam | | main.rs:267:5:272:5 | Self [trait MyProduct] | +| main.rs:274:43:274:43 | x | | main.rs:274:26:274:40 | T2 | +| main.rs:274:56:276:5 | { ... } | | main.rs:274:22:274:23 | T1 | +| main.rs:275:9:275:9 | x | | main.rs:274:26:274:40 | T2 | +| main.rs:275:9:275:14 | x.m1() | | main.rs:274:22:274:23 | T1 | +| main.rs:280:15:280:18 | SelfParam | | main.rs:238:5:241:5 | MyThing | +| main.rs:280:15:280:18 | SelfParam | A | main.rs:249:5:250:14 | S1 | +| main.rs:280:27:282:9 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:281:13:281:16 | self | | main.rs:238:5:241:5 | MyThing | +| main.rs:281:13:281:16 | self | A | main.rs:249:5:250:14 | S1 | +| main.rs:281:13:281:18 | self.a | | main.rs:249:5:250:14 | S1 | +| main.rs:287:15:287:18 | SelfParam | | main.rs:238:5:241:5 | MyThing | +| main.rs:287:15:287:18 | SelfParam | A | main.rs:251:5:252:14 | S2 | +| main.rs:287:29:289:9 | { ... } | | main.rs:238:5:241:5 | MyThing | +| main.rs:287:29:289:9 | { ... } | A | main.rs:251:5:252:14 | S2 | +| main.rs:288:13:288:30 | Self {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:288:13:288:30 | Self {...} | A | main.rs:251:5:252:14 | S2 | +| main.rs:288:23:288:26 | self | | main.rs:238:5:241:5 | MyThing | +| main.rs:288:23:288:26 | self | A | main.rs:251:5:252:14 | S2 | +| main.rs:288:23:288:28 | self.a | | main.rs:251:5:252:14 | S2 | +| main.rs:299:15:299:18 | SelfParam | | main.rs:238:5:241:5 | MyThing | +| main.rs:299:15:299:18 | SelfParam | A | main.rs:253:5:254:14 | S3 | +| main.rs:299:27:301:9 | { ... } | | main.rs:294:10:294:11 | TD | +| main.rs:300:13:300:25 | ...::default(...) | | main.rs:294:10:294:11 | TD | +| main.rs:306:15:306:18 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:306:15:306:18 | SelfParam | P1 | main.rs:304:10:304:10 | I | +| main.rs:306:15:306:18 | SelfParam | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:306:26:308:9 | { ... } | | main.rs:304:10:304:10 | I | +| main.rs:307:13:307:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:307:13:307:16 | self | P1 | main.rs:304:10:304:10 | I | +| main.rs:307:13:307:16 | self | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:307:13:307:19 | self.p1 | | main.rs:304:10:304:10 | I | +| main.rs:313:15:313:18 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:313:15:313:18 | SelfParam | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:313:15:313:18 | SelfParam | P2 | main.rs:251:5:252:14 | S2 | +| main.rs:313:27:315:9 | { ... } | | main.rs:253:5:254:14 | S3 | +| main.rs:314:13:314:14 | S3 | | main.rs:253:5:254:14 | S3 | +| main.rs:320:15:320:18 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:320:15:320:18 | SelfParam | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:320:15:320:18 | SelfParam | P1.A | main.rs:318:10:318:11 | TT | +| main.rs:320:15:320:18 | SelfParam | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:320:27:323:9 | { ... } | | main.rs:318:10:318:11 | TT | +| main.rs:321:17:321:21 | alpha | | main.rs:238:5:241:5 | MyThing | +| main.rs:321:17:321:21 | alpha | A | main.rs:318:10:318:11 | TT | +| main.rs:321:25:321:28 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:321:25:321:28 | self | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:321:25:321:28 | self | P1.A | main.rs:318:10:318:11 | TT | +| main.rs:321:25:321:28 | self | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:321:25:321:31 | self.p1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:321:25:321:31 | self.p1 | A | main.rs:318:10:318:11 | TT | +| main.rs:322:13:322:17 | alpha | | main.rs:238:5:241:5 | MyThing | +| main.rs:322:13:322:17 | alpha | A | main.rs:318:10:318:11 | TT | +| main.rs:322:13:322:19 | alpha.a | | main.rs:318:10:318:11 | TT | +| main.rs:329:16:329:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:329:16:329:19 | SelfParam | P1 | main.rs:327:10:327:10 | A | +| main.rs:329:16:329:19 | SelfParam | P2 | main.rs:327:10:327:10 | A | +| main.rs:329:27:331:9 | { ... } | | main.rs:327:10:327:10 | A | +| main.rs:330:13:330:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:330:13:330:16 | self | P1 | main.rs:327:10:327:10 | A | +| main.rs:330:13:330:16 | self | P2 | main.rs:327:10:327:10 | A | +| main.rs:330:13:330:19 | self.p1 | | main.rs:327:10:327:10 | A | +| main.rs:334:16:334:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:334:16:334:19 | SelfParam | P1 | main.rs:327:10:327:10 | A | +| main.rs:334:16:334:19 | SelfParam | P2 | main.rs:327:10:327:10 | A | +| main.rs:334:27:336:9 | { ... } | | main.rs:327:10:327:10 | A | +| main.rs:335:13:335:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:335:13:335:16 | self | P1 | main.rs:327:10:327:10 | A | +| main.rs:335:13:335:16 | self | P2 | main.rs:327:10:327:10 | A | +| main.rs:335:13:335:19 | self.p2 | | main.rs:327:10:327:10 | A | +| main.rs:342:16:342:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:342:16:342:19 | SelfParam | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:342:16:342:19 | SelfParam | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:342:28:344:9 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:343:13:343:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:343:13:343:16 | self | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:343:13:343:16 | self | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:343:13:343:19 | self.p2 | | main.rs:249:5:250:14 | S1 | +| main.rs:347:16:347:19 | SelfParam | | main.rs:243:5:247:5 | MyPair | +| main.rs:347:16:347:19 | SelfParam | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:347:16:347:19 | SelfParam | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:347:28:349:9 | { ... } | | main.rs:251:5:252:14 | S2 | +| main.rs:348:13:348:16 | self | | main.rs:243:5:247:5 | MyPair | +| main.rs:348:13:348:16 | self | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:348:13:348:16 | self | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:348:13:348:19 | self.p1 | | main.rs:251:5:252:14 | S2 | +| main.rs:352:46:352:46 | p | | main.rs:352:24:352:43 | P | +| main.rs:352:58:354:5 | { ... } | | main.rs:352:16:352:17 | V1 | +| main.rs:353:9:353:9 | p | | main.rs:352:24:352:43 | P | +| main.rs:353:9:353:15 | p.fst() | | main.rs:352:16:352:17 | V1 | +| main.rs:356:46:356:46 | p | | main.rs:356:24:356:43 | P | +| main.rs:356:58:358:5 | { ... } | | main.rs:356:20:356:21 | V2 | +| main.rs:357:9:357:9 | p | | main.rs:356:24:356:43 | P | +| main.rs:357:9:357:15 | p.snd() | | main.rs:356:20:356:21 | V2 | +| main.rs:360:54:360:54 | p | | main.rs:243:5:247:5 | MyPair | +| main.rs:360:54:360:54 | p | P1 | main.rs:360:20:360:21 | V0 | +| main.rs:360:54:360:54 | p | P2 | main.rs:360:32:360:51 | P | +| main.rs:360:78:362:5 | { ... } | | main.rs:360:24:360:25 | V1 | +| main.rs:361:9:361:9 | p | | main.rs:243:5:247:5 | MyPair | +| main.rs:361:9:361:9 | p | P1 | main.rs:360:20:360:21 | V0 | +| main.rs:361:9:361:9 | p | P2 | main.rs:360:32:360:51 | P | +| main.rs:361:9:361:12 | p.p2 | | main.rs:360:32:360:51 | P | +| main.rs:361:9:361:18 | ... .fst() | | main.rs:360:24:360:25 | V1 | +| main.rs:366:23:366:26 | SelfParam | | main.rs:364:5:367:5 | Self [trait ConvertTo] | +| main.rs:371:23:371:26 | SelfParam | | main.rs:369:10:369:23 | T | +| main.rs:371:35:373:9 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:372:13:372:16 | self | | main.rs:369:10:369:23 | T | +| main.rs:372:13:372:21 | self.m1() | | main.rs:249:5:250:14 | S1 | +| main.rs:376:41:376:45 | thing | | main.rs:376:23:376:38 | T | +| main.rs:376:57:378:5 | { ... } | | main.rs:376:19:376:20 | TS | +| main.rs:377:9:377:13 | thing | | main.rs:376:23:376:38 | T | +| main.rs:377:9:377:26 | thing.convert_to() | | main.rs:376:19:376:20 | TS | +| main.rs:380:56:380:60 | thing | | main.rs:380:39:380:53 | TP | +| main.rs:380:73:383:5 | { ... } | | main.rs:249:5:250:14 | S1 | +| main.rs:382:9:382:13 | thing | | main.rs:380:39:380:53 | TP | +| main.rs:382:9:382:26 | thing.convert_to() | | main.rs:249:5:250:14 | S1 | +| main.rs:385:16:456:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:386:13:386:20 | thing_s1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:386:13:386:20 | thing_s1 | A | main.rs:249:5:250:14 | S1 | +| main.rs:386:24:386:40 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:386:24:386:40 | MyThing {...} | A | main.rs:249:5:250:14 | S1 | +| main.rs:386:37:386:38 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:387:13:387:20 | thing_s2 | | main.rs:238:5:241:5 | MyThing | +| main.rs:387:13:387:20 | thing_s2 | A | main.rs:251:5:252:14 | S2 | +| main.rs:387:24:387:40 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:387:24:387:40 | MyThing {...} | A | main.rs:251:5:252:14 | S2 | +| main.rs:387:37:387:38 | S2 | | main.rs:251:5:252:14 | S2 | +| main.rs:388:13:388:20 | thing_s3 | | main.rs:238:5:241:5 | MyThing | +| main.rs:388:13:388:20 | thing_s3 | A | main.rs:253:5:254:14 | S3 | +| main.rs:388:24:388:40 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:388:24:388:40 | MyThing {...} | A | main.rs:253:5:254:14 | S3 | +| main.rs:388:37:388:38 | S3 | | main.rs:253:5:254:14 | S3 | +| main.rs:392:9:392:39 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:392:18:392:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:392:18:392:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:392:18:392:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:392:18:392:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:392:18:392:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:392:26:392:33 | thing_s1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:392:26:392:33 | thing_s1 | A | main.rs:249:5:250:14 | S1 | +| main.rs:392:26:392:38 | thing_s1.m1() | | main.rs:249:5:250:14 | S1 | +| main.rs:393:9:393:41 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:393:18:393:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:393:18:393:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:393:18:393:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:393:18:393:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:393:18:393:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:393:26:393:33 | thing_s2 | | main.rs:238:5:241:5 | MyThing | +| main.rs:393:26:393:33 | thing_s2 | A | main.rs:251:5:252:14 | S2 | +| main.rs:393:26:393:38 | thing_s2.m1() | | main.rs:238:5:241:5 | MyThing | +| main.rs:393:26:393:38 | thing_s2.m1() | A | main.rs:251:5:252:14 | S2 | +| main.rs:393:26:393:40 | ... .a | | main.rs:251:5:252:14 | S2 | +| main.rs:394:13:394:14 | s3 | | main.rs:253:5:254:14 | S3 | +| main.rs:394:22:394:29 | thing_s3 | | main.rs:238:5:241:5 | MyThing | +| main.rs:394:22:394:29 | thing_s3 | A | main.rs:253:5:254:14 | S3 | +| main.rs:394:22:394:34 | thing_s3.m1() | | main.rs:253:5:254:14 | S3 | +| main.rs:395:9:395:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:395:18:395:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:395:18:395:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:395:18:395:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:395:18:395:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:395:18:395:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:395:26:395:27 | s3 | | main.rs:253:5:254:14 | S3 | +| main.rs:397:13:397:14 | p1 | | main.rs:243:5:247:5 | MyPair | +| main.rs:397:13:397:14 | p1 | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:397:13:397:14 | p1 | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:397:18:397:42 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:397:18:397:42 | MyPair {...} | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:397:18:397:42 | MyPair {...} | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:397:31:397:32 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:397:39:397:40 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:398:9:398:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:398:18:398:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:398:18:398:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:398:18:398:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:398:18:398:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:398:18:398:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:398:26:398:27 | p1 | | main.rs:243:5:247:5 | MyPair | +| main.rs:398:26:398:27 | p1 | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:398:26:398:27 | p1 | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:398:26:398:32 | p1.m1() | | main.rs:249:5:250:14 | S1 | +| main.rs:400:13:400:14 | p2 | | main.rs:243:5:247:5 | MyPair | +| main.rs:400:13:400:14 | p2 | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:400:13:400:14 | p2 | P2 | main.rs:251:5:252:14 | S2 | +| main.rs:400:18:400:42 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:400:18:400:42 | MyPair {...} | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:400:18:400:42 | MyPair {...} | P2 | main.rs:251:5:252:14 | S2 | +| main.rs:400:31:400:32 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:400:39:400:40 | S2 | | main.rs:251:5:252:14 | S2 | +| main.rs:401:9:401:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:401:18:401:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:401:18:401:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:401:18:401:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:401:18:401:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:401:18:401:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:401:26:401:27 | p2 | | main.rs:243:5:247:5 | MyPair | +| main.rs:401:26:401:27 | p2 | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:401:26:401:27 | p2 | P2 | main.rs:251:5:252:14 | S2 | +| main.rs:401:26:401:32 | p2.m1() | | main.rs:253:5:254:14 | S3 | +| main.rs:403:13:403:14 | p3 | | main.rs:243:5:247:5 | MyPair | +| main.rs:403:13:403:14 | p3 | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:403:13:403:14 | p3 | P1.A | main.rs:249:5:250:14 | S1 | +| main.rs:403:13:403:14 | p3 | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:403:18:406:9 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:403:18:406:9 | MyPair {...} | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:403:18:406:9 | MyPair {...} | P1.A | main.rs:249:5:250:14 | S1 | +| main.rs:403:18:406:9 | MyPair {...} | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:404:17:404:33 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:404:17:404:33 | MyThing {...} | A | main.rs:249:5:250:14 | S1 | +| main.rs:404:30:404:31 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:405:17:405:18 | S3 | | main.rs:253:5:254:14 | S3 | +| main.rs:407:9:407:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:407:18:407:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:407:18:407:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:407:18:407:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:407:18:407:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:407:18:407:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:407:26:407:27 | p3 | | main.rs:243:5:247:5 | MyPair | +| main.rs:407:26:407:27 | p3 | P1 | main.rs:238:5:241:5 | MyThing | +| main.rs:407:26:407:27 | p3 | P1.A | main.rs:249:5:250:14 | S1 | +| main.rs:407:26:407:27 | p3 | P2 | main.rs:253:5:254:14 | S3 | +| main.rs:407:26:407:32 | p3.m1() | | main.rs:249:5:250:14 | S1 | +| main.rs:410:13:410:13 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:410:13:410:13 | a | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:410:13:410:13 | a | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:410:17:410:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:410:17:410:41 | MyPair {...} | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:410:17:410:41 | MyPair {...} | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:410:30:410:31 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:410:38:410:39 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:411:13:411:13 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:411:17:411:17 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:411:17:411:17 | a | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:411:17:411:17 | a | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:411:17:411:23 | a.fst() | | main.rs:249:5:250:14 | S1 | +| main.rs:412:9:412:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:412:18:412:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:412:18:412:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:412:18:412:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:412:18:412:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:412:18:412:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:412:26:412:26 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:413:13:413:13 | y | | main.rs:249:5:250:14 | S1 | +| main.rs:413:17:413:17 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:413:17:413:17 | a | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:413:17:413:17 | a | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:413:17:413:23 | a.snd() | | main.rs:249:5:250:14 | S1 | +| main.rs:414:9:414:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:414:18:414:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:414:18:414:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:414:18:414:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:414:18:414:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:414:18:414:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:414:26:414:26 | y | | main.rs:249:5:250:14 | S1 | +| main.rs:420:13:420:13 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:420:13:420:13 | b | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:420:13:420:13 | b | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:420:17:420:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:420:17:420:41 | MyPair {...} | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:420:17:420:41 | MyPair {...} | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:420:30:420:31 | S2 | | main.rs:251:5:252:14 | S2 | +| main.rs:420:38:420:39 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:421:13:421:13 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:421:17:421:17 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:421:17:421:17 | b | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:421:17:421:17 | b | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:421:17:421:23 | b.fst() | | main.rs:249:5:250:14 | S1 | +| main.rs:422:9:422:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:422:18:422:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:422:18:422:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:422:18:422:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:422:18:422:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:422:18:422:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:422:26:422:26 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:423:13:423:13 | y | | main.rs:251:5:252:14 | S2 | +| main.rs:423:17:423:17 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:423:17:423:17 | b | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:423:17:423:17 | b | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:423:17:423:23 | b.snd() | | main.rs:251:5:252:14 | S2 | +| main.rs:424:9:424:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:424:18:424:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:424:18:424:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:424:18:424:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:424:18:424:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:424:18:424:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:424:26:424:26 | y | | main.rs:251:5:252:14 | S2 | +| main.rs:428:13:428:13 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:428:17:428:39 | call_trait_m1(...) | | main.rs:249:5:250:14 | S1 | +| main.rs:428:31:428:38 | thing_s1 | | main.rs:238:5:241:5 | MyThing | +| main.rs:428:31:428:38 | thing_s1 | A | main.rs:249:5:250:14 | S1 | +| main.rs:429:9:429:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:429:18:429:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:429:18:429:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:429:18:429:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:429:18:429:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:429:18:429:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:429:26:429:27 | p2 | | main.rs:271:5:275:5 | MyPair | -| main.rs:429:26:429:27 | p2 | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:429:26:429:27 | p2 | P2 | main.rs:279:5:280:14 | S2 | -| main.rs:429:26:429:32 | p2.m1() | | main.rs:281:5:282:14 | S3 | -| main.rs:431:13:431:14 | p3 | | main.rs:271:5:275:5 | MyPair | -| main.rs:431:13:431:14 | p3 | P1 | main.rs:266:5:269:5 | MyThing | -| main.rs:431:13:431:14 | p3 | P1.A | main.rs:277:5:278:14 | S1 | -| main.rs:431:13:431:14 | p3 | P2 | main.rs:281:5:282:14 | S3 | -| main.rs:431:18:434:9 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:431:18:434:9 | MyPair {...} | P1 | main.rs:266:5:269:5 | MyThing | -| main.rs:431:18:434:9 | MyPair {...} | P1.A | main.rs:277:5:278:14 | S1 | -| main.rs:431:18:434:9 | MyPair {...} | P2 | main.rs:281:5:282:14 | S3 | -| main.rs:432:17:432:33 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | -| main.rs:432:17:432:33 | MyThing {...} | A | main.rs:277:5:278:14 | S1 | -| main.rs:432:30:432:31 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:433:17:433:18 | S3 | | main.rs:281:5:282:14 | S3 | -| main.rs:435:9:435:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:435:18:435:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:435:18:435:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:435:18:435:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:435:18:435:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:435:18:435:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:435:26:435:27 | p3 | | main.rs:271:5:275:5 | MyPair | -| main.rs:435:26:435:27 | p3 | P1 | main.rs:266:5:269:5 | MyThing | -| main.rs:435:26:435:27 | p3 | P1.A | main.rs:277:5:278:14 | S1 | -| main.rs:435:26:435:27 | p3 | P2 | main.rs:281:5:282:14 | S3 | -| main.rs:435:26:435:32 | p3.m1() | | main.rs:277:5:278:14 | S1 | -| main.rs:438:13:438:13 | a | | main.rs:271:5:275:5 | MyPair | -| main.rs:438:13:438:13 | a | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:438:13:438:13 | a | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:438:17:438:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:438:17:438:41 | MyPair {...} | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:438:17:438:41 | MyPair {...} | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:438:30:438:31 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:438:38:438:39 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:439:13:439:13 | x | | main.rs:277:5:278:14 | S1 | -| main.rs:439:17:439:17 | a | | main.rs:271:5:275:5 | MyPair | -| main.rs:439:17:439:17 | a | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:439:17:439:17 | a | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:439:17:439:23 | a.fst() | | main.rs:277:5:278:14 | S1 | -| main.rs:440:9:440:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:440:18:440:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:440:18:440:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:440:18:440:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:440:18:440:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:440:18:440:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:440:26:440:26 | x | | main.rs:277:5:278:14 | S1 | -| main.rs:441:13:441:13 | y | | main.rs:277:5:278:14 | S1 | -| main.rs:441:17:441:17 | a | | main.rs:271:5:275:5 | MyPair | -| main.rs:441:17:441:17 | a | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:441:17:441:17 | a | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:441:17:441:23 | a.snd() | | main.rs:277:5:278:14 | S1 | -| main.rs:442:9:442:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:442:18:442:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:442:18:442:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:442:18:442:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:442:18:442:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:442:18:442:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:442:26:442:26 | y | | main.rs:277:5:278:14 | S1 | -| main.rs:448:13:448:13 | b | | main.rs:271:5:275:5 | MyPair | -| main.rs:448:13:448:13 | b | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:448:13:448:13 | b | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:448:17:448:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:448:17:448:41 | MyPair {...} | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:448:17:448:41 | MyPair {...} | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:448:30:448:31 | S2 | | main.rs:279:5:280:14 | S2 | -| main.rs:448:38:448:39 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:449:13:449:13 | x | | main.rs:277:5:278:14 | S1 | -| main.rs:449:17:449:17 | b | | main.rs:271:5:275:5 | MyPair | -| main.rs:449:17:449:17 | b | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:449:17:449:17 | b | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:449:17:449:23 | b.fst() | | main.rs:277:5:278:14 | S1 | -| main.rs:450:9:450:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:450:18:450:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:450:18:450:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:450:18:450:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:450:18:450:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:450:18:450:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:450:26:450:26 | x | | main.rs:277:5:278:14 | S1 | -| main.rs:451:13:451:13 | y | | main.rs:279:5:280:14 | S2 | -| main.rs:451:17:451:17 | b | | main.rs:271:5:275:5 | MyPair | -| main.rs:451:17:451:17 | b | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:451:17:451:17 | b | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:451:17:451:23 | b.snd() | | main.rs:279:5:280:14 | S2 | -| main.rs:452:9:452:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:452:18:452:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:452:18:452:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:452:18:452:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:452:18:452:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:452:18:452:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:452:26:452:26 | y | | main.rs:279:5:280:14 | S2 | -| main.rs:456:13:456:13 | x | | main.rs:277:5:278:14 | S1 | -| main.rs:456:17:456:39 | call_trait_m1(...) | | main.rs:277:5:278:14 | S1 | -| main.rs:456:31:456:38 | thing_s1 | | main.rs:266:5:269:5 | MyThing | -| main.rs:456:31:456:38 | thing_s1 | A | main.rs:277:5:278:14 | S1 | -| main.rs:457:9:457:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:457:18:457:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:457:18:457:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:457:18:457:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:457:18:457:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:457:18:457:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:457:26:457:26 | x | | main.rs:277:5:278:14 | S1 | -| main.rs:458:13:458:13 | y | | main.rs:266:5:269:5 | MyThing | -| main.rs:458:13:458:13 | y | A | main.rs:279:5:280:14 | S2 | -| main.rs:458:17:458:39 | call_trait_m1(...) | | main.rs:266:5:269:5 | MyThing | -| main.rs:458:17:458:39 | call_trait_m1(...) | A | main.rs:279:5:280:14 | S2 | -| main.rs:458:31:458:38 | thing_s2 | | main.rs:266:5:269:5 | MyThing | -| main.rs:458:31:458:38 | thing_s2 | A | main.rs:279:5:280:14 | S2 | -| main.rs:459:9:459:29 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:459:18:459:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:459:18:459:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:459:18:459:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:459:18:459:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:459:18:459:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:459:26:459:26 | y | | main.rs:266:5:269:5 | MyThing | -| main.rs:459:26:459:26 | y | A | main.rs:279:5:280:14 | S2 | -| main.rs:459:26:459:28 | y.a | | main.rs:279:5:280:14 | S2 | -| main.rs:462:13:462:13 | a | | main.rs:271:5:275:5 | MyPair | -| main.rs:462:13:462:13 | a | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:462:13:462:13 | a | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:462:17:462:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:462:17:462:41 | MyPair {...} | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:462:17:462:41 | MyPair {...} | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:462:30:462:31 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:462:38:462:39 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:463:13:463:13 | x | | main.rs:277:5:278:14 | S1 | -| main.rs:463:17:463:26 | get_fst(...) | | main.rs:277:5:278:14 | S1 | -| main.rs:463:25:463:25 | a | | main.rs:271:5:275:5 | MyPair | -| main.rs:463:25:463:25 | a | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:463:25:463:25 | a | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:464:9:464:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:464:18:464:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:464:18:464:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:464:18:464:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:464:18:464:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:464:18:464:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:464:26:464:26 | x | | main.rs:277:5:278:14 | S1 | -| main.rs:465:13:465:13 | y | | main.rs:277:5:278:14 | S1 | -| main.rs:465:17:465:26 | get_snd(...) | | main.rs:277:5:278:14 | S1 | -| main.rs:465:25:465:25 | a | | main.rs:271:5:275:5 | MyPair | -| main.rs:465:25:465:25 | a | P1 | main.rs:277:5:278:14 | S1 | -| main.rs:465:25:465:25 | a | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:466:9:466:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:466:18:466:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:466:18:466:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:466:18:466:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:466:18:466:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:466:18:466:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:466:26:466:26 | y | | main.rs:277:5:278:14 | S1 | -| main.rs:469:13:469:13 | b | | main.rs:271:5:275:5 | MyPair | -| main.rs:469:13:469:13 | b | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:469:13:469:13 | b | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:469:17:469:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:469:17:469:41 | MyPair {...} | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:469:17:469:41 | MyPair {...} | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:469:30:469:31 | S2 | | main.rs:279:5:280:14 | S2 | -| main.rs:469:38:469:39 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:470:13:470:13 | x | | main.rs:277:5:278:14 | S1 | -| main.rs:470:17:470:26 | get_fst(...) | | main.rs:277:5:278:14 | S1 | -| main.rs:470:25:470:25 | b | | main.rs:271:5:275:5 | MyPair | -| main.rs:470:25:470:25 | b | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:470:25:470:25 | b | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:471:9:471:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:471:18:471:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:471:18:471:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:471:18:471:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:471:18:471:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:471:18:471:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:471:26:471:26 | x | | main.rs:277:5:278:14 | S1 | -| main.rs:472:13:472:13 | y | | main.rs:279:5:280:14 | S2 | -| main.rs:472:17:472:26 | get_snd(...) | | main.rs:279:5:280:14 | S2 | -| main.rs:472:25:472:25 | b | | main.rs:271:5:275:5 | MyPair | -| main.rs:472:25:472:25 | b | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:472:25:472:25 | b | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:473:9:473:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:473:18:473:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:473:18:473:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:473:18:473:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:473:18:473:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:473:18:473:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:473:26:473:26 | y | | main.rs:279:5:280:14 | S2 | -| main.rs:475:13:475:13 | c | | main.rs:271:5:275:5 | MyPair | -| main.rs:475:13:475:13 | c | P1 | main.rs:281:5:282:14 | S3 | -| main.rs:475:13:475:13 | c | P2 | main.rs:271:5:275:5 | MyPair | -| main.rs:475:13:475:13 | c | P2.P1 | main.rs:279:5:280:14 | S2 | -| main.rs:475:13:475:13 | c | P2.P2 | main.rs:277:5:278:14 | S1 | -| main.rs:475:17:478:9 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:475:17:478:9 | MyPair {...} | P1 | main.rs:281:5:282:14 | S3 | -| main.rs:475:17:478:9 | MyPair {...} | P2 | main.rs:271:5:275:5 | MyPair | -| main.rs:475:17:478:9 | MyPair {...} | P2.P1 | main.rs:279:5:280:14 | S2 | -| main.rs:475:17:478:9 | MyPair {...} | P2.P2 | main.rs:277:5:278:14 | S1 | -| main.rs:476:17:476:18 | S3 | | main.rs:281:5:282:14 | S3 | -| main.rs:477:17:477:41 | MyPair {...} | | main.rs:271:5:275:5 | MyPair | -| main.rs:477:17:477:41 | MyPair {...} | P1 | main.rs:279:5:280:14 | S2 | -| main.rs:477:17:477:41 | MyPair {...} | P2 | main.rs:277:5:278:14 | S1 | -| main.rs:477:30:477:31 | S2 | | main.rs:279:5:280:14 | S2 | -| main.rs:477:38:477:39 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:479:13:479:13 | x | | main.rs:277:5:278:14 | S1 | -| main.rs:479:17:479:30 | get_snd_fst(...) | | main.rs:277:5:278:14 | S1 | -| main.rs:479:29:479:29 | c | | main.rs:271:5:275:5 | MyPair | -| main.rs:479:29:479:29 | c | P1 | main.rs:281:5:282:14 | S3 | -| main.rs:479:29:479:29 | c | P2 | main.rs:271:5:275:5 | MyPair | -| main.rs:479:29:479:29 | c | P2.P1 | main.rs:279:5:280:14 | S2 | -| main.rs:479:29:479:29 | c | P2.P2 | main.rs:277:5:278:14 | S1 | -| main.rs:481:13:481:17 | thing | | main.rs:266:5:269:5 | MyThing | -| main.rs:481:13:481:17 | thing | A | main.rs:277:5:278:14 | S1 | -| main.rs:481:21:481:37 | MyThing {...} | | main.rs:266:5:269:5 | MyThing | -| main.rs:481:21:481:37 | MyThing {...} | A | main.rs:277:5:278:14 | S1 | -| main.rs:481:34:481:35 | S1 | | main.rs:277:5:278:14 | S1 | -| main.rs:482:13:482:13 | i | | main.rs:277:5:278:14 | S1 | -| main.rs:482:17:482:21 | thing | | main.rs:266:5:269:5 | MyThing | -| main.rs:482:17:482:21 | thing | A | main.rs:277:5:278:14 | S1 | -| main.rs:482:17:482:34 | thing.convert_to() | | main.rs:277:5:278:14 | S1 | -| main.rs:483:28:483:32 | thing | | main.rs:266:5:269:5 | MyThing | -| main.rs:483:28:483:32 | thing | A | main.rs:277:5:278:14 | S1 | -| main.rs:492:26:492:29 | SelfParam | | main.rs:491:5:495:5 | Self [trait OverlappingTrait] | -| main.rs:494:28:494:31 | SelfParam | | main.rs:491:5:495:5 | Self [trait OverlappingTrait] | -| main.rs:494:34:494:35 | s1 | | main.rs:488:5:489:14 | S1 | -| main.rs:499:26:499:29 | SelfParam | | main.rs:488:5:489:14 | S1 | -| main.rs:499:38:501:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:500:13:500:14 | S1 | | main.rs:488:5:489:14 | S1 | -| main.rs:504:28:504:31 | SelfParam | | main.rs:488:5:489:14 | S1 | -| main.rs:504:34:504:35 | s1 | | main.rs:488:5:489:14 | S1 | -| main.rs:504:48:506:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:505:13:505:14 | S1 | | main.rs:488:5:489:14 | S1 | -| main.rs:511:26:511:29 | SelfParam | | main.rs:488:5:489:14 | S1 | -| main.rs:511:38:513:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:512:13:512:16 | self | | main.rs:488:5:489:14 | S1 | -| main.rs:516:28:516:31 | SelfParam | | main.rs:488:5:489:14 | S1 | -| main.rs:516:40:518:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:517:13:517:16 | self | | main.rs:488:5:489:14 | S1 | -| main.rs:525:26:525:29 | SelfParam | | main.rs:521:5:521:22 | S2 | -| main.rs:525:26:525:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:525:38:527:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:526:13:526:14 | S1 | | main.rs:488:5:489:14 | S1 | -| main.rs:530:28:530:31 | SelfParam | | main.rs:521:5:521:22 | S2 | -| main.rs:530:28:530:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:530:40:532:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:531:13:531:14 | S1 | | main.rs:488:5:489:14 | S1 | -| main.rs:537:26:537:29 | SelfParam | | main.rs:521:5:521:22 | S2 | -| main.rs:537:26:537:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:537:38:539:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:538:13:538:14 | S1 | | main.rs:488:5:489:14 | S1 | -| main.rs:542:28:542:31 | SelfParam | | main.rs:521:5:521:22 | S2 | -| main.rs:542:28:542:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:542:34:542:35 | s1 | | main.rs:488:5:489:14 | S1 | -| main.rs:542:48:544:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:543:13:543:14 | S1 | | main.rs:488:5:489:14 | S1 | -| main.rs:549:26:549:29 | SelfParam | | main.rs:521:5:521:22 | S2 | -| main.rs:549:26:549:29 | SelfParam | T2 | main.rs:488:5:489:14 | S1 | -| main.rs:549:38:551:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:550:13:550:14 | S1 | | main.rs:488:5:489:14 | S1 | -| main.rs:554:28:554:31 | SelfParam | | main.rs:521:5:521:22 | S2 | -| main.rs:554:28:554:31 | SelfParam | T2 | main.rs:488:5:489:14 | S1 | -| main.rs:554:34:554:35 | s1 | | main.rs:488:5:489:14 | S1 | -| main.rs:554:48:556:9 | { ... } | | main.rs:488:5:489:14 | S1 | -| main.rs:555:13:555:14 | S1 | | main.rs:488:5:489:14 | S1 | -| main.rs:563:14:563:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:563:14:563:18 | SelfParam | TRef | main.rs:562:5:564:5 | Self [trait OverlappingTrait2] | -| main.rs:563:21:563:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:563:21:563:21 | x | TRef | main.rs:562:29:562:29 | T | -| main.rs:568:14:568:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:568:14:568:18 | SelfParam | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:568:14:568:18 | SelfParam | TRef.T3 | main.rs:566:10:566:10 | T | -| main.rs:568:21:568:21 | x | | {EXTERNAL LOCATION} | & | -| main.rs:568:21:568:21 | x | TRef | main.rs:566:10:566:10 | T | -| main.rs:568:37:570:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:568:37:570:9 | { ... } | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:568:37:570:9 | { ... } | TRef.T3 | main.rs:566:10:566:10 | T | -| main.rs:569:13:569:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:569:13:569:16 | self | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:569:13:569:16 | self | TRef.T3 | main.rs:566:10:566:10 | T | -| main.rs:575:14:575:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:575:14:575:18 | SelfParam | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:575:14:575:18 | SelfParam | TRef.T3 | main.rs:573:10:573:10 | T | -| main.rs:575:21:575:21 | x | | main.rs:573:10:573:10 | T | -| main.rs:575:36:577:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:575:36:577:9 | { ... } | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:575:36:577:9 | { ... } | TRef.T3 | main.rs:573:10:573:10 | T | -| main.rs:576:13:576:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:576:13:576:16 | self | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:576:13:576:16 | self | TRef.T3 | main.rs:573:10:573:10 | T | -| main.rs:582:14:582:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:582:14:582:18 | SelfParam | TRef | main.rs:580:5:583:5 | Self [trait MyTrait1] | -| main.rs:582:21:582:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:592:14:592:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:592:14:592:18 | SelfParam | TRef | main.rs:587:5:588:14 | S4 | -| main.rs:592:21:592:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:602:14:602:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:602:14:602:18 | SelfParam | TRef | main.rs:597:5:598:22 | S5 | -| main.rs:602:14:602:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:602:21:602:22 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:611:16:637:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:612:13:612:13 | x | | main.rs:488:5:489:14 | S1 | -| main.rs:612:17:612:18 | S1 | | main.rs:488:5:489:14 | S1 | -| main.rs:613:9:613:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:613:18:613:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:613:18:613:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:613:18:613:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:613:18:613:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:613:18:613:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:613:26:613:26 | x | | main.rs:488:5:489:14 | S1 | -| main.rs:613:26:613:42 | x.common_method() | | main.rs:488:5:489:14 | S1 | -| main.rs:614:9:614:46 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:614:18:614:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:614:18:614:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:614:18:614:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:614:18:614:45 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:614:18:614:45 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:614:26:614:45 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | -| main.rs:614:44:614:44 | x | | main.rs:488:5:489:14 | S1 | -| main.rs:615:9:615:45 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:615:18:615:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:615:18:615:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:615:18:615:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:615:18:615:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:615:18:615:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:615:26:615:26 | x | | main.rs:488:5:489:14 | S1 | -| main.rs:615:26:615:44 | x.common_method_2() | | main.rs:488:5:489:14 | S1 | -| main.rs:616:9:616:48 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:616:18:616:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:616:18:616:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:616:18:616:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:616:18:616:47 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:616:18:616:47 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:616:26:616:47 | ...::common_method_2(...) | | main.rs:488:5:489:14 | S1 | -| main.rs:616:46:616:46 | x | | main.rs:488:5:489:14 | S1 | -| main.rs:618:13:618:13 | y | | main.rs:521:5:521:22 | S2 | -| main.rs:618:13:618:13 | y | T2 | main.rs:488:5:489:14 | S1 | -| main.rs:618:17:618:22 | S2(...) | | main.rs:521:5:521:22 | S2 | -| main.rs:618:17:618:22 | S2(...) | T2 | main.rs:488:5:489:14 | S1 | -| main.rs:618:20:618:21 | S1 | | main.rs:488:5:489:14 | S1 | -| main.rs:619:9:619:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:619:18:619:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:619:18:619:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:619:18:619:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:619:18:619:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:619:18:619:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:619:26:619:26 | y | | main.rs:521:5:521:22 | S2 | -| main.rs:619:26:619:26 | y | T2 | main.rs:488:5:489:14 | S1 | -| main.rs:619:26:619:42 | y.common_method() | | main.rs:488:5:489:14 | S1 | -| main.rs:620:9:620:57 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:620:18:620:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:620:18:620:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:620:18:620:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:620:18:620:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:620:18:620:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:620:26:620:56 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | -| main.rs:620:50:620:55 | S2(...) | | main.rs:521:5:521:22 | S2 | -| main.rs:620:50:620:55 | S2(...) | T2 | main.rs:488:5:489:14 | S1 | -| main.rs:620:53:620:54 | S1 | | main.rs:488:5:489:14 | S1 | -| main.rs:622:13:622:13 | z | | main.rs:521:5:521:22 | S2 | -| main.rs:622:13:622:13 | z | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:622:17:622:21 | S2(...) | | main.rs:521:5:521:22 | S2 | -| main.rs:622:17:622:21 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:622:20:622:20 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:623:9:623:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:623:18:623:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:623:18:623:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:623:18:623:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:623:18:623:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:623:18:623:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:623:26:623:26 | z | | main.rs:521:5:521:22 | S2 | -| main.rs:623:26:623:26 | z | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:623:26:623:42 | z.common_method() | | main.rs:488:5:489:14 | S1 | -| main.rs:624:9:624:50 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:624:18:624:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:624:18:624:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:624:18:624:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:624:18:624:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:624:18:624:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:624:26:624:49 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | -| main.rs:624:44:624:48 | S2(...) | | main.rs:521:5:521:22 | S2 | -| main.rs:624:44:624:48 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:624:47:624:47 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:625:9:625:57 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:625:18:625:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:625:18:625:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:625:18:625:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:625:18:625:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:625:18:625:56 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:625:26:625:56 | ...::common_method(...) | | main.rs:488:5:489:14 | S1 | -| main.rs:625:51:625:55 | S2(...) | | main.rs:521:5:521:22 | S2 | -| main.rs:625:51:625:55 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| main.rs:625:54:625:54 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:627:13:627:13 | w | | main.rs:559:5:560:22 | S3 | -| main.rs:627:13:627:13 | w | T3 | main.rs:488:5:489:14 | S1 | -| main.rs:627:17:627:22 | S3(...) | | main.rs:559:5:560:22 | S3 | -| main.rs:627:17:627:22 | S3(...) | T3 | main.rs:488:5:489:14 | S1 | -| main.rs:627:20:627:21 | S1 | | main.rs:488:5:489:14 | S1 | -| main.rs:628:9:628:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:628:18:628:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:628:18:628:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:628:18:628:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:628:18:628:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:628:18:628:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:628:26:628:26 | w | | main.rs:559:5:560:22 | S3 | -| main.rs:628:26:628:26 | w | T3 | main.rs:488:5:489:14 | S1 | -| main.rs:628:26:628:31 | w.m(...) | | {EXTERNAL LOCATION} | & | -| main.rs:628:26:628:31 | w.m(...) | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:628:26:628:31 | w.m(...) | TRef.T3 | main.rs:488:5:489:14 | S1 | -| main.rs:628:30:628:30 | x | | main.rs:488:5:489:14 | S1 | -| main.rs:629:9:629:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:629:18:629:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:629:18:629:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:629:18:629:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:629:18:629:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:629:18:629:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:629:26:629:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | -| main.rs:629:26:629:37 | ...::m(...) | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:629:26:629:37 | ...::m(...) | TRef.T3 | main.rs:488:5:489:14 | S1 | -| main.rs:629:32:629:33 | &w | | {EXTERNAL LOCATION} | & | -| main.rs:629:32:629:33 | &w | TRef | main.rs:559:5:560:22 | S3 | -| main.rs:629:32:629:33 | &w | TRef.T3 | main.rs:488:5:489:14 | S1 | -| main.rs:629:33:629:33 | w | | main.rs:559:5:560:22 | S3 | -| main.rs:629:33:629:33 | w | T3 | main.rs:488:5:489:14 | S1 | -| main.rs:629:36:629:36 | x | | main.rs:488:5:489:14 | S1 | -| main.rs:631:9:631:10 | S4 | | main.rs:587:5:588:14 | S4 | -| main.rs:631:9:631:14 | S4.m() | | {EXTERNAL LOCATION} | () | -| main.rs:632:9:632:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:632:15:632:17 | &S4 | | {EXTERNAL LOCATION} | & | -| main.rs:632:15:632:17 | &S4 | TRef | main.rs:587:5:588:14 | S4 | -| main.rs:632:16:632:17 | S4 | | main.rs:587:5:588:14 | S4 | -| main.rs:633:9:633:16 | S5(...) | | main.rs:597:5:598:22 | S5 | -| main.rs:633:9:633:16 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:633:9:633:20 | ... .m() | | {EXTERNAL LOCATION} | () | -| main.rs:633:12:633:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:634:9:634:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:634:15:634:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:634:15:634:23 | &... | TRef | main.rs:597:5:598:22 | S5 | -| main.rs:634:15:634:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:634:16:634:23 | S5(...) | | main.rs:597:5:598:22 | S5 | -| main.rs:634:16:634:23 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:634:19:634:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:635:9:635:16 | S5(...) | | main.rs:597:5:598:22 | S5 | -| main.rs:635:9:635:16 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | -| main.rs:635:9:635:20 | ... .m() | | {EXTERNAL LOCATION} | () | -| main.rs:635:12:635:15 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:636:9:636:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| main.rs:636:15:636:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:636:15:636:23 | &... | TRef | main.rs:597:5:598:22 | S5 | -| main.rs:636:15:636:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | bool | -| main.rs:636:16:636:23 | S5(...) | | main.rs:597:5:598:22 | S5 | -| main.rs:636:16:636:23 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | -| main.rs:636:19:636:22 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:653:19:653:22 | SelfParam | | main.rs:651:5:654:5 | Self [trait FirstTrait] | -| main.rs:658:19:658:22 | SelfParam | | main.rs:656:5:659:5 | Self [trait SecondTrait] | -| main.rs:661:64:661:64 | x | | main.rs:661:45:661:61 | T | -| main.rs:661:70:665:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:663:13:663:14 | s1 | | main.rs:661:35:661:42 | I | -| main.rs:663:18:663:18 | x | | main.rs:661:45:661:61 | T | -| main.rs:663:18:663:27 | x.method() | | main.rs:661:35:661:42 | I | -| main.rs:664:9:664:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:664:18:664:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:664:18:664:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:664:18:664:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:664:18:664:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:664:18:664:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:664:26:664:27 | s1 | | main.rs:661:35:661:42 | I | -| main.rs:667:65:667:65 | x | | main.rs:667:46:667:62 | T | -| main.rs:667:71:671:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:669:13:669:14 | s2 | | main.rs:667:36:667:43 | I | -| main.rs:669:18:669:18 | x | | main.rs:667:46:667:62 | T | -| main.rs:669:18:669:27 | x.method() | | main.rs:667:36:667:43 | I | -| main.rs:670:9:670:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:670:18:670:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:670:18:670:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:670:18:670:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:670:18:670:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:670:18:670:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:670:26:670:27 | s2 | | main.rs:667:36:667:43 | I | -| main.rs:673:49:673:49 | x | | main.rs:673:30:673:46 | T | -| main.rs:673:55:676:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:674:13:674:13 | s | | main.rs:643:5:644:14 | S1 | -| main.rs:674:17:674:17 | x | | main.rs:673:30:673:46 | T | -| main.rs:674:17:674:26 | x.method() | | main.rs:643:5:644:14 | S1 | -| main.rs:675:9:675:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:675:18:675:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:675:18:675:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:675:18:675:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:675:18:675:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:675:18:675:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:675:26:675:26 | s | | main.rs:643:5:644:14 | S1 | -| main.rs:678:53:678:53 | x | | main.rs:678:34:678:50 | T | -| main.rs:678:59:681:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:679:13:679:13 | s | | main.rs:643:5:644:14 | S1 | -| main.rs:679:17:679:17 | x | | main.rs:678:34:678:50 | T | -| main.rs:679:17:679:26 | x.method() | | main.rs:643:5:644:14 | S1 | -| main.rs:680:9:680:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:680:18:680:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:680:18:680:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:680:18:680:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:680:18:680:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:680:18:680:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:680:26:680:26 | s | | main.rs:643:5:644:14 | S1 | -| main.rs:683:43:683:43 | x | | main.rs:683:40:683:40 | T | -| main.rs:686:5:689:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:687:13:687:13 | s | | main.rs:643:5:644:14 | S1 | -| main.rs:687:17:687:17 | x | | main.rs:683:40:683:40 | T | -| main.rs:687:17:687:26 | x.method() | | main.rs:643:5:644:14 | S1 | -| main.rs:688:9:688:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:688:18:688:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:688:18:688:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:688:18:688:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:688:18:688:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:688:18:688:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:688:26:688:26 | s | | main.rs:643:5:644:14 | S1 | -| main.rs:692:16:692:19 | SelfParam | | main.rs:691:5:695:5 | Self [trait Pair] | -| main.rs:694:16:694:19 | SelfParam | | main.rs:691:5:695:5 | Self [trait Pair] | -| main.rs:697:53:697:53 | x | | main.rs:697:50:697:50 | T | -| main.rs:697:59:697:59 | y | | main.rs:697:50:697:50 | T | -| main.rs:701:5:704:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:702:13:702:13 | _ | | main.rs:643:5:644:14 | S1 | -| main.rs:702:17:702:17 | x | | main.rs:697:50:697:50 | T | -| main.rs:702:17:702:23 | x.fst() | | main.rs:643:5:644:14 | S1 | -| main.rs:703:13:703:13 | _ | | main.rs:643:5:644:14 | S1 | -| main.rs:703:17:703:17 | y | | main.rs:697:50:697:50 | T | -| main.rs:703:17:703:26 | y.method() | | main.rs:643:5:644:14 | S1 | -| main.rs:706:58:706:58 | x | | main.rs:706:41:706:55 | T | -| main.rs:706:64:706:64 | y | | main.rs:706:41:706:55 | T | -| main.rs:706:70:711:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:708:13:708:14 | s1 | | main.rs:643:5:644:14 | S1 | -| main.rs:708:18:708:18 | x | | main.rs:706:41:706:55 | T | -| main.rs:708:18:708:24 | x.fst() | | main.rs:643:5:644:14 | S1 | -| main.rs:709:13:709:14 | s2 | | main.rs:646:5:647:14 | S2 | -| main.rs:709:18:709:18 | y | | main.rs:706:41:706:55 | T | -| main.rs:709:18:709:24 | y.snd() | | main.rs:646:5:647:14 | S2 | -| main.rs:710:9:710:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:710:18:710:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:710:18:710:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:710:18:710:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:710:18:710:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:710:18:710:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:710:32:710:33 | s1 | | main.rs:643:5:644:14 | S1 | -| main.rs:710:36:710:37 | s2 | | main.rs:646:5:647:14 | S2 | -| main.rs:713:69:713:69 | x | | main.rs:713:52:713:66 | T | -| main.rs:713:75:713:75 | y | | main.rs:713:52:713:66 | T | -| main.rs:713:81:718:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:715:13:715:14 | s1 | | main.rs:643:5:644:14 | S1 | -| main.rs:715:18:715:18 | x | | main.rs:713:52:713:66 | T | -| main.rs:715:18:715:24 | x.fst() | | main.rs:643:5:644:14 | S1 | -| main.rs:716:13:716:14 | s2 | | main.rs:713:41:713:49 | T2 | -| main.rs:716:18:716:18 | y | | main.rs:713:52:713:66 | T | -| main.rs:716:18:716:24 | y.snd() | | main.rs:713:41:713:49 | T2 | -| main.rs:717:9:717:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:717:18:717:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:717:18:717:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:717:18:717:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:717:18:717:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:717:18:717:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:717:32:717:33 | s1 | | main.rs:643:5:644:14 | S1 | -| main.rs:717:36:717:37 | s2 | | main.rs:713:41:713:49 | T2 | -| main.rs:720:50:720:50 | x | | main.rs:720:41:720:47 | T | -| main.rs:720:56:720:56 | y | | main.rs:720:41:720:47 | T | -| main.rs:720:62:725:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:722:13:722:14 | s1 | | {EXTERNAL LOCATION} | bool | -| main.rs:722:18:722:18 | x | | main.rs:720:41:720:47 | T | -| main.rs:722:18:722:24 | x.fst() | | {EXTERNAL LOCATION} | bool | -| main.rs:723:13:723:14 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:723:18:723:18 | y | | main.rs:720:41:720:47 | T | -| main.rs:723:18:723:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | -| main.rs:724:9:724:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:724:18:724:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:724:18:724:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:724:18:724:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:724:18:724:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:724:18:724:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:724:32:724:33 | s1 | | {EXTERNAL LOCATION} | bool | -| main.rs:724:36:724:37 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:727:54:727:54 | x | | main.rs:727:41:727:51 | T | -| main.rs:727:60:727:60 | y | | main.rs:727:41:727:51 | T | -| main.rs:727:66:732:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:729:13:729:14 | s1 | | {EXTERNAL LOCATION} | u8 | -| main.rs:729:18:729:18 | x | | main.rs:727:41:727:51 | T | -| main.rs:729:18:729:24 | x.fst() | | {EXTERNAL LOCATION} | u8 | -| main.rs:730:13:730:14 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:730:18:730:18 | y | | main.rs:727:41:727:51 | T | -| main.rs:730:18:730:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | -| main.rs:731:9:731:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:731:18:731:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:731:18:731:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:731:18:731:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:731:18:731:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:731:18:731:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:731:32:731:33 | s1 | | {EXTERNAL LOCATION} | u8 | -| main.rs:731:36:731:37 | s2 | | {EXTERNAL LOCATION} | i64 | -| main.rs:739:18:739:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:739:18:739:22 | SelfParam | TRef | main.rs:736:5:740:5 | Self [trait TraitWithSelfTp] | -| main.rs:742:40:742:44 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:742:40:742:44 | thing | TRef | main.rs:742:17:742:37 | T | -| main.rs:742:56:744:5 | { ... } | | main.rs:742:14:742:14 | A | -| main.rs:743:9:743:13 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:743:9:743:13 | thing | TRef | main.rs:742:17:742:37 | T | -| main.rs:743:9:743:21 | thing.get_a() | | main.rs:742:14:742:14 | A | -| main.rs:747:44:747:48 | thing | | main.rs:747:24:747:41 | S | -| main.rs:747:61:750:5 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:748:13:748:15 | _ms | | {EXTERNAL LOCATION} | Option | -| main.rs:748:13:748:15 | _ms | T | main.rs:747:24:747:41 | S | -| main.rs:748:19:748:23 | thing | | main.rs:747:24:747:41 | S | -| main.rs:748:19:748:31 | thing.get_a() | | {EXTERNAL LOCATION} | Option | -| main.rs:748:19:748:31 | thing.get_a() | T | main.rs:747:24:747:41 | S | -| main.rs:749:9:749:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:749:9:749:9 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:755:55:755:59 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:755:55:755:59 | thing | TRef | main.rs:755:25:755:52 | S | -| main.rs:755:66:758:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:757:13:757:15 | _ms | | {EXTERNAL LOCATION} | Option | -| main.rs:757:13:757:15 | _ms | T | main.rs:755:25:755:52 | S | -| main.rs:757:19:757:30 | get_a(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:757:19:757:30 | get_a(...) | T | main.rs:755:25:755:52 | S | -| main.rs:757:25:757:29 | thing | | {EXTERNAL LOCATION} | & | -| main.rs:757:25:757:29 | thing | TRef | main.rs:755:25:755:52 | S | -| main.rs:766:18:766:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:766:18:766:22 | SelfParam | TRef | main.rs:760:5:762:5 | MyStruct | -| main.rs:766:41:768:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:766:41:768:9 | { ... } | T | main.rs:760:5:762:5 | MyStruct | -| main.rs:767:13:767:48 | Some(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:767:13:767:48 | Some(...) | T | main.rs:760:5:762:5 | MyStruct | -| main.rs:767:18:767:47 | MyStruct {...} | | main.rs:760:5:762:5 | MyStruct | -| main.rs:767:36:767:39 | self | | {EXTERNAL LOCATION} | & | -| main.rs:767:36:767:39 | self | TRef | main.rs:760:5:762:5 | MyStruct | -| main.rs:767:36:767:45 | self.value | | {EXTERNAL LOCATION} | i32 | -| main.rs:773:19:776:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:774:13:774:13 | s | | main.rs:760:5:762:5 | MyStruct | -| main.rs:774:17:774:37 | MyStruct {...} | | main.rs:760:5:762:5 | MyStruct | -| main.rs:774:35:774:35 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:775:13:775:15 | _ms | | {EXTERNAL LOCATION} | Option | -| main.rs:775:13:775:15 | _ms | T | main.rs:760:5:762:5 | MyStruct | -| main.rs:775:19:775:27 | get_a(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:775:19:775:27 | get_a(...) | T | main.rs:760:5:762:5 | MyStruct | -| main.rs:775:25:775:26 | &s | | {EXTERNAL LOCATION} | & | -| main.rs:775:25:775:26 | &s | TRef | main.rs:760:5:762:5 | MyStruct | -| main.rs:775:26:775:26 | s | | main.rs:760:5:762:5 | MyStruct | -| main.rs:791:15:791:18 | SelfParam | | main.rs:790:5:801:5 | Self [trait MyTrait] | -| main.rs:793:15:793:18 | SelfParam | | main.rs:790:5:801:5 | Self [trait MyTrait] | -| main.rs:796:9:798:9 | { ... } | | main.rs:790:19:790:19 | A | -| main.rs:797:13:797:16 | self | | main.rs:790:5:801:5 | Self [trait MyTrait] | -| main.rs:797:13:797:21 | self.m1() | | main.rs:790:19:790:19 | A | -| main.rs:800:18:800:18 | x | | main.rs:790:5:801:5 | Self [trait MyTrait] | -| main.rs:804:15:804:18 | SelfParam | | main.rs:787:5:788:14 | S2 | -| main.rs:804:26:806:9 | { ... } | | main.rs:803:10:803:19 | T | -| main.rs:805:13:805:30 | ...::default(...) | | main.rs:803:10:803:19 | T | -| main.rs:808:18:808:18 | x | | main.rs:787:5:788:14 | S2 | -| main.rs:808:32:810:9 | { ... } | | main.rs:803:10:803:19 | T | -| main.rs:809:13:809:30 | ...::default(...) | | main.rs:803:10:803:19 | T | -| main.rs:814:15:814:18 | SelfParam | | main.rs:785:5:786:14 | S1 | -| main.rs:814:28:816:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:815:13:815:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:818:18:818:18 | x | | main.rs:785:5:786:14 | S1 | -| main.rs:818:34:820:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:819:13:819:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:825:50:825:50 | x | | main.rs:825:26:825:47 | T2 | -| main.rs:825:63:828:5 | { ... } | | main.rs:825:22:825:23 | T1 | -| main.rs:826:9:826:9 | x | | main.rs:825:26:825:47 | T2 | -| main.rs:826:9:826:14 | x.m1() | | main.rs:825:22:825:23 | T1 | -| main.rs:827:9:827:9 | x | | main.rs:825:26:825:47 | T2 | -| main.rs:827:9:827:14 | x.m1() | | main.rs:825:22:825:23 | T1 | -| main.rs:829:52:829:52 | x | | main.rs:829:28:829:49 | T2 | -| main.rs:829:65:833:5 | { ... } | | main.rs:829:24:829:25 | T1 | -| main.rs:830:13:830:13 | y | | main.rs:829:24:829:25 | T1 | -| main.rs:830:17:830:25 | ...::m1(...) | | main.rs:829:24:829:25 | T1 | -| main.rs:830:24:830:24 | x | | main.rs:829:28:829:49 | T2 | -| main.rs:831:9:831:9 | y | | main.rs:829:24:829:25 | T1 | -| main.rs:832:9:832:17 | ...::m1(...) | | main.rs:829:24:829:25 | T1 | -| main.rs:832:16:832:16 | x | | main.rs:829:28:829:49 | T2 | -| main.rs:834:52:834:52 | x | | main.rs:834:28:834:49 | T2 | -| main.rs:834:65:838:5 | { ... } | | main.rs:834:24:834:25 | T1 | -| main.rs:835:13:835:13 | y | | main.rs:834:24:834:25 | T1 | -| main.rs:835:17:835:30 | ...::m1(...) | | main.rs:834:24:834:25 | T1 | -| main.rs:835:29:835:29 | x | | main.rs:834:28:834:49 | T2 | -| main.rs:836:9:836:9 | y | | main.rs:834:24:834:25 | T1 | -| main.rs:837:9:837:22 | ...::m1(...) | | main.rs:834:24:834:25 | T1 | -| main.rs:837:21:837:21 | x | | main.rs:834:28:834:49 | T2 | -| main.rs:839:55:839:55 | x | | main.rs:839:31:839:52 | T2 | -| main.rs:839:68:843:5 | { ... } | | main.rs:839:27:839:28 | T1 | -| main.rs:840:13:840:13 | y | | main.rs:839:27:839:28 | T1 | -| main.rs:840:17:840:28 | ...::assoc(...) | | main.rs:839:27:839:28 | T1 | -| main.rs:840:27:840:27 | x | | main.rs:839:31:839:52 | T2 | -| main.rs:841:9:841:9 | y | | main.rs:839:27:839:28 | T1 | -| main.rs:842:9:842:20 | ...::assoc(...) | | main.rs:839:27:839:28 | T1 | -| main.rs:842:19:842:19 | x | | main.rs:839:31:839:52 | T2 | -| main.rs:844:55:844:55 | x | | main.rs:844:31:844:52 | T2 | -| main.rs:844:68:848:5 | { ... } | | main.rs:844:27:844:28 | T1 | -| main.rs:845:13:845:13 | y | | main.rs:844:27:844:28 | T1 | -| main.rs:845:17:845:33 | ...::assoc(...) | | main.rs:844:27:844:28 | T1 | -| main.rs:845:32:845:32 | x | | main.rs:844:31:844:52 | T2 | -| main.rs:846:9:846:9 | y | | main.rs:844:27:844:28 | T1 | -| main.rs:847:9:847:25 | ...::assoc(...) | | main.rs:844:27:844:28 | T1 | -| main.rs:847:24:847:24 | x | | main.rs:844:31:844:52 | T2 | -| main.rs:852:49:852:49 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:852:49:852:49 | x | T | main.rs:852:32:852:46 | T2 | -| main.rs:852:71:854:5 | { ... } | | main.rs:852:28:852:29 | T1 | -| main.rs:853:9:853:9 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:853:9:853:9 | x | T | main.rs:852:32:852:46 | T2 | -| main.rs:853:9:853:11 | x.a | | main.rs:852:32:852:46 | T2 | -| main.rs:853:9:853:16 | ... .m1() | | main.rs:852:28:852:29 | T1 | -| main.rs:855:51:855:51 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:855:51:855:51 | x | T | main.rs:855:34:855:48 | T2 | -| main.rs:855:73:857:5 | { ... } | | main.rs:855:30:855:31 | T1 | -| main.rs:856:9:856:19 | ...::m1(...) | | main.rs:855:30:855:31 | T1 | -| main.rs:856:16:856:16 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:856:16:856:16 | x | T | main.rs:855:34:855:48 | T2 | -| main.rs:856:16:856:18 | x.a | | main.rs:855:34:855:48 | T2 | -| main.rs:858:51:858:51 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:858:51:858:51 | x | T | main.rs:858:34:858:48 | T2 | -| main.rs:858:73:860:5 | { ... } | | main.rs:858:30:858:31 | T1 | -| main.rs:859:9:859:24 | ...::m1(...) | | main.rs:858:30:858:31 | T1 | -| main.rs:859:21:859:21 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:859:21:859:21 | x | T | main.rs:858:34:858:48 | T2 | -| main.rs:859:21:859:23 | x.a | | main.rs:858:34:858:48 | T2 | -| main.rs:863:15:863:18 | SelfParam | | main.rs:780:5:783:5 | MyThing | -| main.rs:863:15:863:18 | SelfParam | T | main.rs:862:10:862:10 | T | -| main.rs:863:26:865:9 | { ... } | | main.rs:862:10:862:10 | T | -| main.rs:864:13:864:16 | self | | main.rs:780:5:783:5 | MyThing | -| main.rs:864:13:864:16 | self | T | main.rs:862:10:862:10 | T | -| main.rs:864:13:864:18 | self.a | | main.rs:862:10:862:10 | T | -| main.rs:867:18:867:18 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:867:18:867:18 | x | T | main.rs:862:10:862:10 | T | -| main.rs:867:32:869:9 | { ... } | | main.rs:862:10:862:10 | T | -| main.rs:868:13:868:13 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:868:13:868:13 | x | T | main.rs:862:10:862:10 | T | -| main.rs:868:13:868:15 | x.a | | main.rs:862:10:862:10 | T | -| main.rs:874:15:874:18 | SelfParam | | main.rs:872:5:875:5 | Self [trait MyTrait2] | -| main.rs:879:15:879:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:879:15:879:19 | SelfParam | TRef | main.rs:877:5:880:5 | Self [trait MyTrait3] | -| main.rs:882:46:882:46 | x | | main.rs:882:22:882:43 | T | -| main.rs:882:52:882:52 | y | | {EXTERNAL LOCATION} | & | -| main.rs:882:52:882:52 | y | TRef | main.rs:882:22:882:43 | T | -| main.rs:882:59:885:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:883:9:883:9 | x | | main.rs:882:22:882:43 | T | -| main.rs:883:9:883:14 | x.m2() | | {EXTERNAL LOCATION} | () | -| main.rs:884:9:884:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:884:9:884:9 | y | TRef | main.rs:882:22:882:43 | T | -| main.rs:884:9:884:14 | y.m2() | | {EXTERNAL LOCATION} | () | -| main.rs:887:16:945:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:888:13:888:13 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:888:13:888:13 | x | T | main.rs:785:5:786:14 | S1 | -| main.rs:888:17:888:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:888:17:888:33 | MyThing {...} | T | main.rs:785:5:786:14 | S1 | -| main.rs:888:30:888:31 | S1 | | main.rs:785:5:786:14 | S1 | -| main.rs:889:13:889:13 | y | | main.rs:780:5:783:5 | MyThing | -| main.rs:889:13:889:13 | y | T | main.rs:787:5:788:14 | S2 | -| main.rs:889:17:889:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:889:17:889:33 | MyThing {...} | T | main.rs:787:5:788:14 | S2 | -| main.rs:889:30:889:31 | S2 | | main.rs:787:5:788:14 | S2 | -| main.rs:891:9:891:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:891:18:891:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:891:18:891:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:891:18:891:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:891:18:891:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:891:18:891:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:891:26:891:26 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:891:26:891:26 | x | T | main.rs:785:5:786:14 | S1 | -| main.rs:891:26:891:31 | x.m1() | | main.rs:785:5:786:14 | S1 | -| main.rs:892:9:892:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:892:18:892:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:892:18:892:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:892:18:892:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:892:18:892:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:892:18:892:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:892:26:892:26 | y | | main.rs:780:5:783:5 | MyThing | -| main.rs:892:26:892:26 | y | T | main.rs:787:5:788:14 | S2 | -| main.rs:892:26:892:31 | y.m1() | | main.rs:787:5:788:14 | S2 | -| main.rs:894:13:894:13 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:894:13:894:13 | x | T | main.rs:785:5:786:14 | S1 | -| main.rs:894:17:894:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:894:17:894:33 | MyThing {...} | T | main.rs:785:5:786:14 | S1 | -| main.rs:894:30:894:31 | S1 | | main.rs:785:5:786:14 | S1 | -| main.rs:895:13:895:13 | y | | main.rs:780:5:783:5 | MyThing | -| main.rs:895:13:895:13 | y | T | main.rs:787:5:788:14 | S2 | -| main.rs:895:17:895:33 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:895:17:895:33 | MyThing {...} | T | main.rs:787:5:788:14 | S2 | -| main.rs:895:30:895:31 | S2 | | main.rs:787:5:788:14 | S2 | -| main.rs:897:9:897:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:897:18:897:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:897:18:897:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:897:18:897:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:897:18:897:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:897:18:897:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:897:26:897:26 | x | | main.rs:780:5:783:5 | MyThing | -| main.rs:897:26:897:26 | x | T | main.rs:785:5:786:14 | S1 | -| main.rs:897:26:897:31 | x.m2() | | main.rs:785:5:786:14 | S1 | -| main.rs:898:9:898:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:898:18:898:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:898:18:898:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:898:18:898:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:898:18:898:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:898:18:898:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:898:26:898:26 | y | | main.rs:780:5:783:5 | MyThing | -| main.rs:898:26:898:26 | y | T | main.rs:787:5:788:14 | S2 | -| main.rs:898:26:898:31 | y.m2() | | main.rs:787:5:788:14 | S2 | -| main.rs:900:13:900:14 | x2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:900:13:900:14 | x2 | T | main.rs:785:5:786:14 | S1 | -| main.rs:900:18:900:34 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:900:18:900:34 | MyThing {...} | T | main.rs:785:5:786:14 | S1 | -| main.rs:900:31:900:32 | S1 | | main.rs:785:5:786:14 | S1 | -| main.rs:901:13:901:14 | y2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:901:13:901:14 | y2 | T | main.rs:787:5:788:14 | S2 | -| main.rs:901:18:901:34 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:901:18:901:34 | MyThing {...} | T | main.rs:787:5:788:14 | S2 | -| main.rs:901:31:901:32 | S2 | | main.rs:787:5:788:14 | S2 | -| main.rs:903:13:903:13 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:903:17:903:33 | call_trait_m1(...) | | main.rs:785:5:786:14 | S1 | -| main.rs:903:31:903:32 | x2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:903:31:903:32 | x2 | T | main.rs:785:5:786:14 | S1 | -| main.rs:904:9:904:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:904:18:904:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:904:18:904:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:904:18:904:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:904:18:904:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:904:18:904:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:904:26:904:26 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:905:13:905:13 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:905:17:905:35 | call_trait_m1_2(...) | | main.rs:785:5:786:14 | S1 | -| main.rs:905:33:905:34 | x2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:905:33:905:34 | x2 | T | main.rs:785:5:786:14 | S1 | -| main.rs:906:9:906:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:906:18:906:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:906:18:906:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:906:18:906:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:906:18:906:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:906:18:906:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:906:26:906:26 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:907:13:907:13 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:907:17:907:35 | call_trait_m1_3(...) | | main.rs:785:5:786:14 | S1 | -| main.rs:907:33:907:34 | x2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:907:33:907:34 | x2 | T | main.rs:785:5:786:14 | S1 | -| main.rs:908:9:908:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:908:18:908:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:908:18:908:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:908:18:908:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:908:18:908:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:908:18:908:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:908:26:908:26 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:909:13:909:13 | a | | main.rs:787:5:788:14 | S2 | -| main.rs:909:17:909:33 | call_trait_m1(...) | | main.rs:787:5:788:14 | S2 | -| main.rs:909:31:909:32 | y2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:909:31:909:32 | y2 | T | main.rs:787:5:788:14 | S2 | -| main.rs:910:9:910:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:910:18:910:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:910:18:910:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:910:18:910:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:910:18:910:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:910:18:910:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:910:26:910:26 | a | | main.rs:787:5:788:14 | S2 | -| main.rs:911:13:911:13 | a | | main.rs:787:5:788:14 | S2 | -| main.rs:911:17:911:35 | call_trait_m1_2(...) | | main.rs:787:5:788:14 | S2 | -| main.rs:911:33:911:34 | y2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:911:33:911:34 | y2 | T | main.rs:787:5:788:14 | S2 | -| main.rs:912:9:912:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:912:18:912:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:912:18:912:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:912:18:912:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:912:18:912:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:912:18:912:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:912:26:912:26 | a | | main.rs:787:5:788:14 | S2 | -| main.rs:913:13:913:13 | a | | main.rs:787:5:788:14 | S2 | -| main.rs:913:17:913:35 | call_trait_m1_3(...) | | main.rs:787:5:788:14 | S2 | -| main.rs:913:33:913:34 | y2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:913:33:913:34 | y2 | T | main.rs:787:5:788:14 | S2 | -| main.rs:914:9:914:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:914:18:914:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:914:18:914:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:914:18:914:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:914:18:914:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:914:18:914:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:914:26:914:26 | a | | main.rs:787:5:788:14 | S2 | -| main.rs:915:13:915:13 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:915:17:915:38 | call_trait_assoc_1(...) | | main.rs:785:5:786:14 | S1 | -| main.rs:915:36:915:37 | x2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:915:36:915:37 | x2 | T | main.rs:785:5:786:14 | S1 | -| main.rs:916:9:916:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:916:18:916:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:916:18:916:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:916:18:916:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:916:18:916:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:916:18:916:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:916:26:916:26 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:917:13:917:13 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:917:17:917:38 | call_trait_assoc_2(...) | | main.rs:785:5:786:14 | S1 | -| main.rs:917:36:917:37 | x2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:917:36:917:37 | x2 | T | main.rs:785:5:786:14 | S1 | -| main.rs:918:9:918:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:918:18:918:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:918:18:918:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:918:18:918:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:918:18:918:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:918:18:918:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:918:26:918:26 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:919:13:919:13 | a | | main.rs:787:5:788:14 | S2 | -| main.rs:919:17:919:38 | call_trait_assoc_1(...) | | main.rs:787:5:788:14 | S2 | -| main.rs:919:36:919:37 | y2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:919:36:919:37 | y2 | T | main.rs:787:5:788:14 | S2 | -| main.rs:920:9:920:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:920:18:920:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:920:18:920:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:920:18:920:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:920:18:920:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:920:18:920:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:920:26:920:26 | a | | main.rs:787:5:788:14 | S2 | -| main.rs:921:13:921:13 | a | | main.rs:787:5:788:14 | S2 | -| main.rs:921:17:921:38 | call_trait_assoc_2(...) | | main.rs:787:5:788:14 | S2 | -| main.rs:921:36:921:37 | y2 | | main.rs:780:5:783:5 | MyThing | -| main.rs:921:36:921:37 | y2 | T | main.rs:787:5:788:14 | S2 | -| main.rs:922:9:922:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:922:18:922:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:922:18:922:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:922:18:922:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:922:18:922:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:922:18:922:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:922:26:922:26 | a | | main.rs:787:5:788:14 | S2 | -| main.rs:924:13:924:14 | x3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:924:13:924:14 | x3 | T | main.rs:780:5:783:5 | MyThing | -| main.rs:924:13:924:14 | x3 | T.T | main.rs:785:5:786:14 | S1 | -| main.rs:924:18:926:9 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:924:18:926:9 | MyThing {...} | T | main.rs:780:5:783:5 | MyThing | -| main.rs:924:18:926:9 | MyThing {...} | T.T | main.rs:785:5:786:14 | S1 | -| main.rs:925:16:925:32 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:925:16:925:32 | MyThing {...} | T | main.rs:785:5:786:14 | S1 | -| main.rs:925:29:925:30 | S1 | | main.rs:785:5:786:14 | S1 | -| main.rs:927:13:927:14 | y3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:927:13:927:14 | y3 | T | main.rs:780:5:783:5 | MyThing | -| main.rs:927:13:927:14 | y3 | T.T | main.rs:787:5:788:14 | S2 | -| main.rs:927:18:929:9 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:927:18:929:9 | MyThing {...} | T | main.rs:780:5:783:5 | MyThing | -| main.rs:927:18:929:9 | MyThing {...} | T.T | main.rs:787:5:788:14 | S2 | -| main.rs:928:16:928:32 | MyThing {...} | | main.rs:780:5:783:5 | MyThing | -| main.rs:928:16:928:32 | MyThing {...} | T | main.rs:787:5:788:14 | S2 | -| main.rs:928:29:928:30 | S2 | | main.rs:787:5:788:14 | S2 | -| main.rs:931:13:931:13 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:931:17:931:39 | call_trait_thing_m1(...) | | main.rs:785:5:786:14 | S1 | -| main.rs:931:37:931:38 | x3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:931:37:931:38 | x3 | T | main.rs:780:5:783:5 | MyThing | -| main.rs:931:37:931:38 | x3 | T.T | main.rs:785:5:786:14 | S1 | -| main.rs:932:9:932:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:932:18:932:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:932:18:932:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:932:18:932:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:932:18:932:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:932:18:932:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:932:26:932:26 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:933:13:933:13 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:933:17:933:41 | call_trait_thing_m1_2(...) | | main.rs:785:5:786:14 | S1 | -| main.rs:933:39:933:40 | x3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:933:39:933:40 | x3 | T | main.rs:780:5:783:5 | MyThing | -| main.rs:933:39:933:40 | x3 | T.T | main.rs:785:5:786:14 | S1 | -| main.rs:934:9:934:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:934:18:934:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:934:18:934:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:934:18:934:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:934:18:934:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:934:18:934:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:934:26:934:26 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:935:13:935:13 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:935:17:935:41 | call_trait_thing_m1_3(...) | | main.rs:785:5:786:14 | S1 | -| main.rs:935:39:935:40 | x3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:935:39:935:40 | x3 | T | main.rs:780:5:783:5 | MyThing | -| main.rs:935:39:935:40 | x3 | T.T | main.rs:785:5:786:14 | S1 | -| main.rs:936:9:936:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:936:18:936:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:936:18:936:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:936:18:936:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:936:18:936:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:936:18:936:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:936:26:936:26 | a | | main.rs:785:5:786:14 | S1 | -| main.rs:937:13:937:13 | b | | main.rs:787:5:788:14 | S2 | -| main.rs:937:17:937:39 | call_trait_thing_m1(...) | | main.rs:787:5:788:14 | S2 | -| main.rs:937:37:937:38 | y3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:937:37:937:38 | y3 | T | main.rs:780:5:783:5 | MyThing | -| main.rs:937:37:937:38 | y3 | T.T | main.rs:787:5:788:14 | S2 | -| main.rs:938:9:938:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:938:18:938:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:938:18:938:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:938:18:938:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:938:18:938:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:938:18:938:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:938:26:938:26 | b | | main.rs:787:5:788:14 | S2 | -| main.rs:939:13:939:13 | b | | main.rs:787:5:788:14 | S2 | -| main.rs:939:17:939:41 | call_trait_thing_m1_2(...) | | main.rs:787:5:788:14 | S2 | -| main.rs:939:39:939:40 | y3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:939:39:939:40 | y3 | T | main.rs:780:5:783:5 | MyThing | -| main.rs:939:39:939:40 | y3 | T.T | main.rs:787:5:788:14 | S2 | -| main.rs:940:9:940:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:429:26:429:26 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:430:13:430:13 | y | | main.rs:238:5:241:5 | MyThing | +| main.rs:430:13:430:13 | y | A | main.rs:251:5:252:14 | S2 | +| main.rs:430:17:430:39 | call_trait_m1(...) | | main.rs:238:5:241:5 | MyThing | +| main.rs:430:17:430:39 | call_trait_m1(...) | A | main.rs:251:5:252:14 | S2 | +| main.rs:430:31:430:38 | thing_s2 | | main.rs:238:5:241:5 | MyThing | +| main.rs:430:31:430:38 | thing_s2 | A | main.rs:251:5:252:14 | S2 | +| main.rs:431:9:431:29 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:431:18:431:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:431:18:431:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:431:18:431:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:431:18:431:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:431:18:431:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:431:26:431:26 | y | | main.rs:238:5:241:5 | MyThing | +| main.rs:431:26:431:26 | y | A | main.rs:251:5:252:14 | S2 | +| main.rs:431:26:431:28 | y.a | | main.rs:251:5:252:14 | S2 | +| main.rs:434:13:434:13 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:434:13:434:13 | a | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:434:13:434:13 | a | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:434:17:434:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:434:17:434:41 | MyPair {...} | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:434:17:434:41 | MyPair {...} | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:434:30:434:31 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:434:38:434:39 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:435:13:435:13 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:435:17:435:26 | get_fst(...) | | main.rs:249:5:250:14 | S1 | +| main.rs:435:25:435:25 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:435:25:435:25 | a | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:435:25:435:25 | a | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:436:9:436:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:436:18:436:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:436:18:436:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:436:18:436:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:436:18:436:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:436:18:436:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:436:26:436:26 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:437:13:437:13 | y | | main.rs:249:5:250:14 | S1 | +| main.rs:437:17:437:26 | get_snd(...) | | main.rs:249:5:250:14 | S1 | +| main.rs:437:25:437:25 | a | | main.rs:243:5:247:5 | MyPair | +| main.rs:437:25:437:25 | a | P1 | main.rs:249:5:250:14 | S1 | +| main.rs:437:25:437:25 | a | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:438:9:438:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:438:18:438:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:438:18:438:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:438:18:438:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:438:18:438:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:438:18:438:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:438:26:438:26 | y | | main.rs:249:5:250:14 | S1 | +| main.rs:441:13:441:13 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:441:13:441:13 | b | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:441:13:441:13 | b | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:441:17:441:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:441:17:441:41 | MyPair {...} | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:441:17:441:41 | MyPair {...} | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:441:30:441:31 | S2 | | main.rs:251:5:252:14 | S2 | +| main.rs:441:38:441:39 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:442:13:442:13 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:442:17:442:26 | get_fst(...) | | main.rs:249:5:250:14 | S1 | +| main.rs:442:25:442:25 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:442:25:442:25 | b | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:442:25:442:25 | b | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:443:9:443:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:443:18:443:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:443:18:443:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:443:18:443:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:443:18:443:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:443:18:443:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:443:26:443:26 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:444:13:444:13 | y | | main.rs:251:5:252:14 | S2 | +| main.rs:444:17:444:26 | get_snd(...) | | main.rs:251:5:252:14 | S2 | +| main.rs:444:25:444:25 | b | | main.rs:243:5:247:5 | MyPair | +| main.rs:444:25:444:25 | b | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:444:25:444:25 | b | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:445:9:445:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:445:18:445:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:445:18:445:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:445:18:445:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:445:18:445:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:445:18:445:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:445:26:445:26 | y | | main.rs:251:5:252:14 | S2 | +| main.rs:447:13:447:13 | c | | main.rs:243:5:247:5 | MyPair | +| main.rs:447:13:447:13 | c | P1 | main.rs:253:5:254:14 | S3 | +| main.rs:447:13:447:13 | c | P2 | main.rs:243:5:247:5 | MyPair | +| main.rs:447:13:447:13 | c | P2.P1 | main.rs:251:5:252:14 | S2 | +| main.rs:447:13:447:13 | c | P2.P2 | main.rs:249:5:250:14 | S1 | +| main.rs:447:17:450:9 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:447:17:450:9 | MyPair {...} | P1 | main.rs:253:5:254:14 | S3 | +| main.rs:447:17:450:9 | MyPair {...} | P2 | main.rs:243:5:247:5 | MyPair | +| main.rs:447:17:450:9 | MyPair {...} | P2.P1 | main.rs:251:5:252:14 | S2 | +| main.rs:447:17:450:9 | MyPair {...} | P2.P2 | main.rs:249:5:250:14 | S1 | +| main.rs:448:17:448:18 | S3 | | main.rs:253:5:254:14 | S3 | +| main.rs:449:17:449:41 | MyPair {...} | | main.rs:243:5:247:5 | MyPair | +| main.rs:449:17:449:41 | MyPair {...} | P1 | main.rs:251:5:252:14 | S2 | +| main.rs:449:17:449:41 | MyPair {...} | P2 | main.rs:249:5:250:14 | S1 | +| main.rs:449:30:449:31 | S2 | | main.rs:251:5:252:14 | S2 | +| main.rs:449:38:449:39 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:451:13:451:13 | x | | main.rs:249:5:250:14 | S1 | +| main.rs:451:17:451:30 | get_snd_fst(...) | | main.rs:249:5:250:14 | S1 | +| main.rs:451:29:451:29 | c | | main.rs:243:5:247:5 | MyPair | +| main.rs:451:29:451:29 | c | P1 | main.rs:253:5:254:14 | S3 | +| main.rs:451:29:451:29 | c | P2 | main.rs:243:5:247:5 | MyPair | +| main.rs:451:29:451:29 | c | P2.P1 | main.rs:251:5:252:14 | S2 | +| main.rs:451:29:451:29 | c | P2.P2 | main.rs:249:5:250:14 | S1 | +| main.rs:453:13:453:17 | thing | | main.rs:238:5:241:5 | MyThing | +| main.rs:453:13:453:17 | thing | A | main.rs:249:5:250:14 | S1 | +| main.rs:453:21:453:37 | MyThing {...} | | main.rs:238:5:241:5 | MyThing | +| main.rs:453:21:453:37 | MyThing {...} | A | main.rs:249:5:250:14 | S1 | +| main.rs:453:34:453:35 | S1 | | main.rs:249:5:250:14 | S1 | +| main.rs:454:13:454:13 | i | | main.rs:249:5:250:14 | S1 | +| main.rs:454:17:454:21 | thing | | main.rs:238:5:241:5 | MyThing | +| main.rs:454:17:454:21 | thing | A | main.rs:249:5:250:14 | S1 | +| main.rs:454:17:454:34 | thing.convert_to() | | main.rs:249:5:250:14 | S1 | +| main.rs:455:28:455:32 | thing | | main.rs:238:5:241:5 | MyThing | +| main.rs:455:28:455:32 | thing | A | main.rs:249:5:250:14 | S1 | +| main.rs:474:19:474:22 | SelfParam | | main.rs:472:5:475:5 | Self [trait FirstTrait] | +| main.rs:479:19:479:22 | SelfParam | | main.rs:477:5:480:5 | Self [trait SecondTrait] | +| main.rs:482:64:482:64 | x | | main.rs:482:45:482:61 | T | +| main.rs:482:70:486:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:484:13:484:14 | s1 | | main.rs:482:35:482:42 | I | +| main.rs:484:18:484:18 | x | | main.rs:482:45:482:61 | T | +| main.rs:484:18:484:27 | x.method() | | main.rs:482:35:482:42 | I | +| main.rs:485:9:485:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:485:18:485:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:485:18:485:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:485:18:485:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:485:18:485:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:485:18:485:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:485:26:485:27 | s1 | | main.rs:482:35:482:42 | I | +| main.rs:488:65:488:65 | x | | main.rs:488:46:488:62 | T | +| main.rs:488:71:492:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:490:13:490:14 | s2 | | main.rs:488:36:488:43 | I | +| main.rs:490:18:490:18 | x | | main.rs:488:46:488:62 | T | +| main.rs:490:18:490:27 | x.method() | | main.rs:488:36:488:43 | I | +| main.rs:491:9:491:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:491:18:491:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:491:18:491:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:491:18:491:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:491:18:491:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:491:18:491:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:491:26:491:27 | s2 | | main.rs:488:36:488:43 | I | +| main.rs:494:49:494:49 | x | | main.rs:494:30:494:46 | T | +| main.rs:494:55:497:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:495:13:495:13 | s | | main.rs:464:5:465:14 | S1 | +| main.rs:495:17:495:17 | x | | main.rs:494:30:494:46 | T | +| main.rs:495:17:495:26 | x.method() | | main.rs:464:5:465:14 | S1 | +| main.rs:496:9:496:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:496:18:496:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:496:18:496:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:496:18:496:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:496:18:496:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:496:18:496:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:496:26:496:26 | s | | main.rs:464:5:465:14 | S1 | +| main.rs:499:53:499:53 | x | | main.rs:499:34:499:50 | T | +| main.rs:499:59:502:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:500:13:500:13 | s | | main.rs:464:5:465:14 | S1 | +| main.rs:500:17:500:17 | x | | main.rs:499:34:499:50 | T | +| main.rs:500:17:500:26 | x.method() | | main.rs:464:5:465:14 | S1 | +| main.rs:501:9:501:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:501:18:501:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:501:18:501:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:501:18:501:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:501:18:501:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:501:18:501:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:501:26:501:26 | s | | main.rs:464:5:465:14 | S1 | +| main.rs:504:43:504:43 | x | | main.rs:504:40:504:40 | T | +| main.rs:507:5:510:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:508:13:508:13 | s | | main.rs:464:5:465:14 | S1 | +| main.rs:508:17:508:17 | x | | main.rs:504:40:504:40 | T | +| main.rs:508:17:508:26 | x.method() | | main.rs:464:5:465:14 | S1 | +| main.rs:509:9:509:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:509:18:509:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:509:18:509:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:509:18:509:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:509:18:509:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:509:18:509:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:509:26:509:26 | s | | main.rs:464:5:465:14 | S1 | +| main.rs:513:16:513:19 | SelfParam | | main.rs:512:5:516:5 | Self [trait Pair] | +| main.rs:515:16:515:19 | SelfParam | | main.rs:512:5:516:5 | Self [trait Pair] | +| main.rs:518:53:518:53 | x | | main.rs:518:50:518:50 | T | +| main.rs:518:59:518:59 | y | | main.rs:518:50:518:50 | T | +| main.rs:522:5:525:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:523:13:523:13 | _ | | main.rs:464:5:465:14 | S1 | +| main.rs:523:17:523:17 | x | | main.rs:518:50:518:50 | T | +| main.rs:523:17:523:23 | x.fst() | | main.rs:464:5:465:14 | S1 | +| main.rs:524:13:524:13 | _ | | main.rs:464:5:465:14 | S1 | +| main.rs:524:17:524:17 | y | | main.rs:518:50:518:50 | T | +| main.rs:524:17:524:26 | y.method() | | main.rs:464:5:465:14 | S1 | +| main.rs:527:58:527:58 | x | | main.rs:527:41:527:55 | T | +| main.rs:527:64:527:64 | y | | main.rs:527:41:527:55 | T | +| main.rs:527:70:532:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:529:13:529:14 | s1 | | main.rs:464:5:465:14 | S1 | +| main.rs:529:18:529:18 | x | | main.rs:527:41:527:55 | T | +| main.rs:529:18:529:24 | x.fst() | | main.rs:464:5:465:14 | S1 | +| main.rs:530:13:530:14 | s2 | | main.rs:467:5:468:14 | S2 | +| main.rs:530:18:530:18 | y | | main.rs:527:41:527:55 | T | +| main.rs:530:18:530:24 | y.snd() | | main.rs:467:5:468:14 | S2 | +| main.rs:531:9:531:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:531:18:531:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:531:18:531:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:531:18:531:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:531:18:531:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:531:18:531:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:531:32:531:33 | s1 | | main.rs:464:5:465:14 | S1 | +| main.rs:531:36:531:37 | s2 | | main.rs:467:5:468:14 | S2 | +| main.rs:534:69:534:69 | x | | main.rs:534:52:534:66 | T | +| main.rs:534:75:534:75 | y | | main.rs:534:52:534:66 | T | +| main.rs:534:81:539:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:536:13:536:14 | s1 | | main.rs:464:5:465:14 | S1 | +| main.rs:536:18:536:18 | x | | main.rs:534:52:534:66 | T | +| main.rs:536:18:536:24 | x.fst() | | main.rs:464:5:465:14 | S1 | +| main.rs:537:13:537:14 | s2 | | main.rs:534:41:534:49 | T2 | +| main.rs:537:18:537:18 | y | | main.rs:534:52:534:66 | T | +| main.rs:537:18:537:24 | y.snd() | | main.rs:534:41:534:49 | T2 | +| main.rs:538:9:538:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:538:18:538:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:538:18:538:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:538:18:538:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:538:18:538:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:538:18:538:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:538:32:538:33 | s1 | | main.rs:464:5:465:14 | S1 | +| main.rs:538:36:538:37 | s2 | | main.rs:534:41:534:49 | T2 | +| main.rs:541:50:541:50 | x | | main.rs:541:41:541:47 | T | +| main.rs:541:56:541:56 | y | | main.rs:541:41:541:47 | T | +| main.rs:541:62:546:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:543:13:543:14 | s1 | | {EXTERNAL LOCATION} | bool | +| main.rs:543:18:543:18 | x | | main.rs:541:41:541:47 | T | +| main.rs:543:18:543:24 | x.fst() | | {EXTERNAL LOCATION} | bool | +| main.rs:544:13:544:14 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:544:18:544:18 | y | | main.rs:541:41:541:47 | T | +| main.rs:544:18:544:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | +| main.rs:545:9:545:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:545:18:545:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:545:18:545:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:545:18:545:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:545:18:545:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:545:18:545:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:545:32:545:33 | s1 | | {EXTERNAL LOCATION} | bool | +| main.rs:545:36:545:37 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:548:54:548:54 | x | | main.rs:548:41:548:51 | T | +| main.rs:548:60:548:60 | y | | main.rs:548:41:548:51 | T | +| main.rs:548:66:553:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:550:13:550:14 | s1 | | {EXTERNAL LOCATION} | u8 | +| main.rs:550:18:550:18 | x | | main.rs:548:41:548:51 | T | +| main.rs:550:18:550:24 | x.fst() | | {EXTERNAL LOCATION} | u8 | +| main.rs:551:13:551:14 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:551:18:551:18 | y | | main.rs:548:41:548:51 | T | +| main.rs:551:18:551:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | +| main.rs:552:9:552:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:552:18:552:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:552:18:552:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:552:18:552:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:552:18:552:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:552:18:552:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:552:32:552:33 | s1 | | {EXTERNAL LOCATION} | u8 | +| main.rs:552:36:552:37 | s2 | | {EXTERNAL LOCATION} | i64 | +| main.rs:560:18:560:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:560:18:560:22 | SelfParam | TRef | main.rs:557:5:561:5 | Self [trait TraitWithSelfTp] | +| main.rs:563:40:563:44 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:563:40:563:44 | thing | TRef | main.rs:563:17:563:37 | T | +| main.rs:563:56:565:5 | { ... } | | main.rs:563:14:563:14 | A | +| main.rs:564:9:564:13 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:564:9:564:13 | thing | TRef | main.rs:563:17:563:37 | T | +| main.rs:564:9:564:21 | thing.get_a() | | main.rs:563:14:563:14 | A | +| main.rs:568:44:568:48 | thing | | main.rs:568:24:568:41 | S | +| main.rs:568:61:571:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:569:13:569:15 | _ms | | {EXTERNAL LOCATION} | Option | +| main.rs:569:13:569:15 | _ms | T | main.rs:568:24:568:41 | S | +| main.rs:569:19:569:23 | thing | | main.rs:568:24:568:41 | S | +| main.rs:569:19:569:31 | thing.get_a() | | {EXTERNAL LOCATION} | Option | +| main.rs:569:19:569:31 | thing.get_a() | T | main.rs:568:24:568:41 | S | +| main.rs:570:9:570:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:570:9:570:9 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:576:55:576:59 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:576:55:576:59 | thing | TRef | main.rs:576:25:576:52 | S | +| main.rs:576:66:579:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:578:13:578:15 | _ms | | {EXTERNAL LOCATION} | Option | +| main.rs:578:13:578:15 | _ms | T | main.rs:576:25:576:52 | S | +| main.rs:578:19:578:30 | get_a(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:578:19:578:30 | get_a(...) | T | main.rs:576:25:576:52 | S | +| main.rs:578:25:578:29 | thing | | {EXTERNAL LOCATION} | & | +| main.rs:578:25:578:29 | thing | TRef | main.rs:576:25:576:52 | S | +| main.rs:587:18:587:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:587:18:587:22 | SelfParam | TRef | main.rs:581:5:583:5 | MyStruct | +| main.rs:587:41:589:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:587:41:589:9 | { ... } | T | main.rs:581:5:583:5 | MyStruct | +| main.rs:588:13:588:48 | Some(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:588:13:588:48 | Some(...) | T | main.rs:581:5:583:5 | MyStruct | +| main.rs:588:18:588:47 | MyStruct {...} | | main.rs:581:5:583:5 | MyStruct | +| main.rs:588:36:588:39 | self | | {EXTERNAL LOCATION} | & | +| main.rs:588:36:588:39 | self | TRef | main.rs:581:5:583:5 | MyStruct | +| main.rs:588:36:588:45 | self.value | | {EXTERNAL LOCATION} | i32 | +| main.rs:594:19:597:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:595:13:595:13 | s | | main.rs:581:5:583:5 | MyStruct | +| main.rs:595:17:595:37 | MyStruct {...} | | main.rs:581:5:583:5 | MyStruct | +| main.rs:595:35:595:35 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:596:13:596:15 | _ms | | {EXTERNAL LOCATION} | Option | +| main.rs:596:13:596:15 | _ms | T | main.rs:581:5:583:5 | MyStruct | +| main.rs:596:19:596:27 | get_a(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:596:19:596:27 | get_a(...) | T | main.rs:581:5:583:5 | MyStruct | +| main.rs:596:25:596:26 | &s | | {EXTERNAL LOCATION} | & | +| main.rs:596:25:596:26 | &s | TRef | main.rs:581:5:583:5 | MyStruct | +| main.rs:596:26:596:26 | s | | main.rs:581:5:583:5 | MyStruct | +| main.rs:612:15:612:18 | SelfParam | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:614:15:614:18 | SelfParam | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:617:9:619:9 | { ... } | | main.rs:611:19:611:19 | A | +| main.rs:618:13:618:16 | self | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:618:13:618:21 | self.m1() | | main.rs:611:19:611:19 | A | +| main.rs:621:18:621:18 | x | | main.rs:611:5:622:5 | Self [trait MyTrait] | +| main.rs:625:15:625:18 | SelfParam | | main.rs:608:5:609:14 | S2 | +| main.rs:625:26:627:9 | { ... } | | main.rs:624:10:624:19 | T | +| main.rs:626:13:626:30 | ...::default(...) | | main.rs:624:10:624:19 | T | +| main.rs:629:18:629:18 | x | | main.rs:608:5:609:14 | S2 | +| main.rs:629:32:631:9 | { ... } | | main.rs:624:10:624:19 | T | +| main.rs:630:13:630:30 | ...::default(...) | | main.rs:624:10:624:19 | T | +| main.rs:635:15:635:18 | SelfParam | | main.rs:606:5:607:14 | S1 | +| main.rs:635:28:637:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:636:13:636:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:639:18:639:18 | x | | main.rs:606:5:607:14 | S1 | +| main.rs:639:34:641:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:640:13:640:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:646:50:646:50 | x | | main.rs:646:26:646:47 | T2 | +| main.rs:646:63:649:5 | { ... } | | main.rs:646:22:646:23 | T1 | +| main.rs:647:9:647:9 | x | | main.rs:646:26:646:47 | T2 | +| main.rs:647:9:647:14 | x.m1() | | main.rs:646:22:646:23 | T1 | +| main.rs:648:9:648:9 | x | | main.rs:646:26:646:47 | T2 | +| main.rs:648:9:648:14 | x.m1() | | main.rs:646:22:646:23 | T1 | +| main.rs:650:52:650:52 | x | | main.rs:650:28:650:49 | T2 | +| main.rs:650:65:654:5 | { ... } | | main.rs:650:24:650:25 | T1 | +| main.rs:651:13:651:13 | y | | main.rs:650:24:650:25 | T1 | +| main.rs:651:17:651:25 | ...::m1(...) | | main.rs:650:24:650:25 | T1 | +| main.rs:651:24:651:24 | x | | main.rs:650:28:650:49 | T2 | +| main.rs:652:9:652:9 | y | | main.rs:650:24:650:25 | T1 | +| main.rs:653:9:653:17 | ...::m1(...) | | main.rs:650:24:650:25 | T1 | +| main.rs:653:16:653:16 | x | | main.rs:650:28:650:49 | T2 | +| main.rs:655:52:655:52 | x | | main.rs:655:28:655:49 | T2 | +| main.rs:655:65:659:5 | { ... } | | main.rs:655:24:655:25 | T1 | +| main.rs:656:13:656:13 | y | | main.rs:655:24:655:25 | T1 | +| main.rs:656:17:656:30 | ...::m1(...) | | main.rs:655:24:655:25 | T1 | +| main.rs:656:29:656:29 | x | | main.rs:655:28:655:49 | T2 | +| main.rs:657:9:657:9 | y | | main.rs:655:24:655:25 | T1 | +| main.rs:658:9:658:22 | ...::m1(...) | | main.rs:655:24:655:25 | T1 | +| main.rs:658:21:658:21 | x | | main.rs:655:28:655:49 | T2 | +| main.rs:660:55:660:55 | x | | main.rs:660:31:660:52 | T2 | +| main.rs:660:68:664:5 | { ... } | | main.rs:660:27:660:28 | T1 | +| main.rs:661:13:661:13 | y | | main.rs:660:27:660:28 | T1 | +| main.rs:661:17:661:28 | ...::assoc(...) | | main.rs:660:27:660:28 | T1 | +| main.rs:661:27:661:27 | x | | main.rs:660:31:660:52 | T2 | +| main.rs:662:9:662:9 | y | | main.rs:660:27:660:28 | T1 | +| main.rs:663:9:663:20 | ...::assoc(...) | | main.rs:660:27:660:28 | T1 | +| main.rs:663:19:663:19 | x | | main.rs:660:31:660:52 | T2 | +| main.rs:665:55:665:55 | x | | main.rs:665:31:665:52 | T2 | +| main.rs:665:68:669:5 | { ... } | | main.rs:665:27:665:28 | T1 | +| main.rs:666:13:666:13 | y | | main.rs:665:27:665:28 | T1 | +| main.rs:666:17:666:33 | ...::assoc(...) | | main.rs:665:27:665:28 | T1 | +| main.rs:666:32:666:32 | x | | main.rs:665:31:665:52 | T2 | +| main.rs:667:9:667:9 | y | | main.rs:665:27:665:28 | T1 | +| main.rs:668:9:668:25 | ...::assoc(...) | | main.rs:665:27:665:28 | T1 | +| main.rs:668:24:668:24 | x | | main.rs:665:31:665:52 | T2 | +| main.rs:673:49:673:49 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:673:49:673:49 | x | T | main.rs:673:32:673:46 | T2 | +| main.rs:673:71:675:5 | { ... } | | main.rs:673:28:673:29 | T1 | +| main.rs:674:9:674:9 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:674:9:674:9 | x | T | main.rs:673:32:673:46 | T2 | +| main.rs:674:9:674:11 | x.a | | main.rs:673:32:673:46 | T2 | +| main.rs:674:9:674:16 | ... .m1() | | main.rs:673:28:673:29 | T1 | +| main.rs:676:51:676:51 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:676:51:676:51 | x | T | main.rs:676:34:676:48 | T2 | +| main.rs:676:73:678:5 | { ... } | | main.rs:676:30:676:31 | T1 | +| main.rs:677:9:677:19 | ...::m1(...) | | main.rs:676:30:676:31 | T1 | +| main.rs:677:16:677:16 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:677:16:677:16 | x | T | main.rs:676:34:676:48 | T2 | +| main.rs:677:16:677:18 | x.a | | main.rs:676:34:676:48 | T2 | +| main.rs:679:51:679:51 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:679:51:679:51 | x | T | main.rs:679:34:679:48 | T2 | +| main.rs:679:73:681:5 | { ... } | | main.rs:679:30:679:31 | T1 | +| main.rs:680:9:680:24 | ...::m1(...) | | main.rs:679:30:679:31 | T1 | +| main.rs:680:21:680:21 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:680:21:680:21 | x | T | main.rs:679:34:679:48 | T2 | +| main.rs:680:21:680:23 | x.a | | main.rs:679:34:679:48 | T2 | +| main.rs:684:15:684:18 | SelfParam | | main.rs:601:5:604:5 | MyThing | +| main.rs:684:15:684:18 | SelfParam | T | main.rs:683:10:683:10 | T | +| main.rs:684:26:686:9 | { ... } | | main.rs:683:10:683:10 | T | +| main.rs:685:13:685:16 | self | | main.rs:601:5:604:5 | MyThing | +| main.rs:685:13:685:16 | self | T | main.rs:683:10:683:10 | T | +| main.rs:685:13:685:18 | self.a | | main.rs:683:10:683:10 | T | +| main.rs:688:18:688:18 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:688:18:688:18 | x | T | main.rs:683:10:683:10 | T | +| main.rs:688:32:690:9 | { ... } | | main.rs:683:10:683:10 | T | +| main.rs:689:13:689:13 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:689:13:689:13 | x | T | main.rs:683:10:683:10 | T | +| main.rs:689:13:689:15 | x.a | | main.rs:683:10:683:10 | T | +| main.rs:695:15:695:18 | SelfParam | | main.rs:693:5:696:5 | Self [trait MyTrait2] | +| main.rs:700:15:700:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:700:15:700:19 | SelfParam | TRef | main.rs:698:5:701:5 | Self [trait MyTrait3] | +| main.rs:703:46:703:46 | x | | main.rs:703:22:703:43 | T | +| main.rs:703:52:703:52 | y | | {EXTERNAL LOCATION} | & | +| main.rs:703:52:703:52 | y | TRef | main.rs:703:22:703:43 | T | +| main.rs:703:59:706:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:704:9:704:9 | x | | main.rs:703:22:703:43 | T | +| main.rs:704:9:704:14 | x.m2() | | {EXTERNAL LOCATION} | () | +| main.rs:705:9:705:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:705:9:705:9 | y | TRef | main.rs:703:22:703:43 | T | +| main.rs:705:9:705:14 | y.m2() | | {EXTERNAL LOCATION} | () | +| main.rs:708:16:766:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:709:13:709:13 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:709:13:709:13 | x | T | main.rs:606:5:607:14 | S1 | +| main.rs:709:17:709:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:709:17:709:33 | MyThing {...} | T | main.rs:606:5:607:14 | S1 | +| main.rs:709:30:709:31 | S1 | | main.rs:606:5:607:14 | S1 | +| main.rs:710:13:710:13 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:710:13:710:13 | y | T | main.rs:608:5:609:14 | S2 | +| main.rs:710:17:710:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:710:17:710:33 | MyThing {...} | T | main.rs:608:5:609:14 | S2 | +| main.rs:710:30:710:31 | S2 | | main.rs:608:5:609:14 | S2 | +| main.rs:712:9:712:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:712:18:712:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:712:18:712:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:712:18:712:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:712:18:712:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:712:18:712:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:712:26:712:26 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:712:26:712:26 | x | T | main.rs:606:5:607:14 | S1 | +| main.rs:712:26:712:31 | x.m1() | | main.rs:606:5:607:14 | S1 | +| main.rs:713:9:713:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:713:18:713:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:713:18:713:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:713:18:713:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:713:18:713:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:713:18:713:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:713:26:713:26 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:713:26:713:26 | y | T | main.rs:608:5:609:14 | S2 | +| main.rs:713:26:713:31 | y.m1() | | main.rs:608:5:609:14 | S2 | +| main.rs:715:13:715:13 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:715:13:715:13 | x | T | main.rs:606:5:607:14 | S1 | +| main.rs:715:17:715:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:715:17:715:33 | MyThing {...} | T | main.rs:606:5:607:14 | S1 | +| main.rs:715:30:715:31 | S1 | | main.rs:606:5:607:14 | S1 | +| main.rs:716:13:716:13 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:716:13:716:13 | y | T | main.rs:608:5:609:14 | S2 | +| main.rs:716:17:716:33 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:716:17:716:33 | MyThing {...} | T | main.rs:608:5:609:14 | S2 | +| main.rs:716:30:716:31 | S2 | | main.rs:608:5:609:14 | S2 | +| main.rs:718:9:718:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:718:18:718:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:718:18:718:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:718:18:718:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:718:18:718:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:718:18:718:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:718:26:718:26 | x | | main.rs:601:5:604:5 | MyThing | +| main.rs:718:26:718:26 | x | T | main.rs:606:5:607:14 | S1 | +| main.rs:718:26:718:31 | x.m2() | | main.rs:606:5:607:14 | S1 | +| main.rs:719:9:719:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:719:18:719:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:719:18:719:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:719:18:719:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:719:18:719:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:719:18:719:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:719:26:719:26 | y | | main.rs:601:5:604:5 | MyThing | +| main.rs:719:26:719:26 | y | T | main.rs:608:5:609:14 | S2 | +| main.rs:719:26:719:31 | y.m2() | | main.rs:608:5:609:14 | S2 | +| main.rs:721:13:721:14 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:721:13:721:14 | x2 | T | main.rs:606:5:607:14 | S1 | +| main.rs:721:18:721:34 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:721:18:721:34 | MyThing {...} | T | main.rs:606:5:607:14 | S1 | +| main.rs:721:31:721:32 | S1 | | main.rs:606:5:607:14 | S1 | +| main.rs:722:13:722:14 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:722:13:722:14 | y2 | T | main.rs:608:5:609:14 | S2 | +| main.rs:722:18:722:34 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:722:18:722:34 | MyThing {...} | T | main.rs:608:5:609:14 | S2 | +| main.rs:722:31:722:32 | S2 | | main.rs:608:5:609:14 | S2 | +| main.rs:724:13:724:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:724:17:724:33 | call_trait_m1(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:724:31:724:32 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:724:31:724:32 | x2 | T | main.rs:606:5:607:14 | S1 | +| main.rs:725:9:725:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:725:18:725:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:725:18:725:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:725:18:725:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:725:18:725:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:725:18:725:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:725:26:725:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:726:13:726:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:726:17:726:35 | call_trait_m1_2(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:726:33:726:34 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:726:33:726:34 | x2 | T | main.rs:606:5:607:14 | S1 | +| main.rs:727:9:727:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:727:18:727:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:727:18:727:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:727:18:727:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:727:18:727:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:727:18:727:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:727:26:727:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:728:13:728:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:728:17:728:35 | call_trait_m1_3(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:728:33:728:34 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:728:33:728:34 | x2 | T | main.rs:606:5:607:14 | S1 | +| main.rs:729:9:729:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:729:18:729:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:729:18:729:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:729:18:729:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:729:18:729:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:729:18:729:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:729:26:729:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:730:13:730:13 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:730:17:730:33 | call_trait_m1(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:730:31:730:32 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:730:31:730:32 | y2 | T | main.rs:608:5:609:14 | S2 | +| main.rs:731:9:731:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:731:18:731:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:731:18:731:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:731:18:731:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:731:18:731:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:731:18:731:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:731:26:731:26 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:732:13:732:13 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:732:17:732:35 | call_trait_m1_2(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:732:33:732:34 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:732:33:732:34 | y2 | T | main.rs:608:5:609:14 | S2 | +| main.rs:733:9:733:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:733:18:733:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:733:18:733:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:733:18:733:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:733:18:733:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:733:18:733:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:733:26:733:26 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:734:13:734:13 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:734:17:734:35 | call_trait_m1_3(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:734:33:734:34 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:734:33:734:34 | y2 | T | main.rs:608:5:609:14 | S2 | +| main.rs:735:9:735:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:735:18:735:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:735:18:735:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:735:18:735:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:735:18:735:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:735:18:735:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:735:26:735:26 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:736:13:736:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:736:17:736:38 | call_trait_assoc_1(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:736:36:736:37 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:736:36:736:37 | x2 | T | main.rs:606:5:607:14 | S1 | +| main.rs:737:9:737:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:737:18:737:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:737:18:737:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:737:18:737:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:737:18:737:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:737:18:737:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:737:26:737:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:738:13:738:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:738:17:738:38 | call_trait_assoc_2(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:738:36:738:37 | x2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:738:36:738:37 | x2 | T | main.rs:606:5:607:14 | S1 | +| main.rs:739:9:739:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:739:18:739:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:739:18:739:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:739:18:739:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:739:18:739:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:739:18:739:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:739:26:739:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:740:13:740:13 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:740:17:740:38 | call_trait_assoc_1(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:740:36:740:37 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:740:36:740:37 | y2 | T | main.rs:608:5:609:14 | S2 | +| main.rs:741:9:741:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:741:18:741:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:741:18:741:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:741:18:741:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:741:18:741:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:741:18:741:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:741:26:741:26 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:742:13:742:13 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:742:17:742:38 | call_trait_assoc_2(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:742:36:742:37 | y2 | | main.rs:601:5:604:5 | MyThing | +| main.rs:742:36:742:37 | y2 | T | main.rs:608:5:609:14 | S2 | +| main.rs:743:9:743:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:743:18:743:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:743:18:743:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:743:18:743:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:743:18:743:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:743:18:743:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:743:26:743:26 | a | | main.rs:608:5:609:14 | S2 | +| main.rs:745:13:745:14 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:745:13:745:14 | x3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:745:13:745:14 | x3 | T.T | main.rs:606:5:607:14 | S1 | +| main.rs:745:18:747:9 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:745:18:747:9 | MyThing {...} | T | main.rs:601:5:604:5 | MyThing | +| main.rs:745:18:747:9 | MyThing {...} | T.T | main.rs:606:5:607:14 | S1 | +| main.rs:746:16:746:32 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:746:16:746:32 | MyThing {...} | T | main.rs:606:5:607:14 | S1 | +| main.rs:746:29:746:30 | S1 | | main.rs:606:5:607:14 | S1 | +| main.rs:748:13:748:14 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:748:13:748:14 | y3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:748:13:748:14 | y3 | T.T | main.rs:608:5:609:14 | S2 | +| main.rs:748:18:750:9 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:748:18:750:9 | MyThing {...} | T | main.rs:601:5:604:5 | MyThing | +| main.rs:748:18:750:9 | MyThing {...} | T.T | main.rs:608:5:609:14 | S2 | +| main.rs:749:16:749:32 | MyThing {...} | | main.rs:601:5:604:5 | MyThing | +| main.rs:749:16:749:32 | MyThing {...} | T | main.rs:608:5:609:14 | S2 | +| main.rs:749:29:749:30 | S2 | | main.rs:608:5:609:14 | S2 | +| main.rs:752:13:752:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:752:17:752:39 | call_trait_thing_m1(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:752:37:752:38 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:752:37:752:38 | x3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:752:37:752:38 | x3 | T.T | main.rs:606:5:607:14 | S1 | +| main.rs:753:9:753:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:753:18:753:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:753:18:753:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:753:18:753:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:753:18:753:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:753:18:753:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:753:26:753:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:754:13:754:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:754:17:754:41 | call_trait_thing_m1_2(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:754:39:754:40 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:754:39:754:40 | x3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:754:39:754:40 | x3 | T.T | main.rs:606:5:607:14 | S1 | +| main.rs:755:9:755:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:755:18:755:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:755:18:755:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:755:18:755:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:755:18:755:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:755:18:755:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:755:26:755:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:756:13:756:13 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:756:17:756:41 | call_trait_thing_m1_3(...) | | main.rs:606:5:607:14 | S1 | +| main.rs:756:39:756:40 | x3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:756:39:756:40 | x3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:756:39:756:40 | x3 | T.T | main.rs:606:5:607:14 | S1 | +| main.rs:757:9:757:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:757:18:757:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:757:18:757:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:757:18:757:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:757:18:757:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:757:18:757:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:757:26:757:26 | a | | main.rs:606:5:607:14 | S1 | +| main.rs:758:13:758:13 | b | | main.rs:608:5:609:14 | S2 | +| main.rs:758:17:758:39 | call_trait_thing_m1(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:758:37:758:38 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:758:37:758:38 | y3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:758:37:758:38 | y3 | T.T | main.rs:608:5:609:14 | S2 | +| main.rs:759:9:759:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:759:18:759:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:759:18:759:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:759:18:759:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:759:18:759:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:759:18:759:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:759:26:759:26 | b | | main.rs:608:5:609:14 | S2 | +| main.rs:760:13:760:13 | b | | main.rs:608:5:609:14 | S2 | +| main.rs:760:17:760:41 | call_trait_thing_m1_2(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:760:39:760:40 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:760:39:760:40 | y3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:760:39:760:40 | y3 | T.T | main.rs:608:5:609:14 | S2 | +| main.rs:761:9:761:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:761:18:761:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:761:18:761:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:761:18:761:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:761:18:761:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:761:18:761:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:761:26:761:26 | b | | main.rs:608:5:609:14 | S2 | +| main.rs:762:13:762:13 | b | | main.rs:608:5:609:14 | S2 | +| main.rs:762:17:762:41 | call_trait_thing_m1_3(...) | | main.rs:608:5:609:14 | S2 | +| main.rs:762:39:762:40 | y3 | | main.rs:601:5:604:5 | MyThing | +| main.rs:762:39:762:40 | y3 | T | main.rs:601:5:604:5 | MyThing | +| main.rs:762:39:762:40 | y3 | T.T | main.rs:608:5:609:14 | S2 | +| main.rs:763:9:763:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:763:18:763:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:763:18:763:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:763:18:763:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:763:18:763:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:763:18:763:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:763:26:763:26 | b | | main.rs:608:5:609:14 | S2 | +| main.rs:764:13:764:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:764:17:764:26 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:764:24:764:25 | S1 | | main.rs:606:5:607:14 | S1 | +| main.rs:765:13:765:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:765:22:765:31 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:765:29:765:30 | S2 | | main.rs:608:5:609:14 | S2 | +| main.rs:782:15:782:18 | SelfParam | | main.rs:770:5:774:5 | MyEnum | +| main.rs:782:15:782:18 | SelfParam | A | main.rs:781:10:781:10 | T | +| main.rs:782:26:787:9 | { ... } | | main.rs:781:10:781:10 | T | +| main.rs:783:13:786:13 | match self { ... } | | main.rs:781:10:781:10 | T | +| main.rs:783:19:783:22 | self | | main.rs:770:5:774:5 | MyEnum | +| main.rs:783:19:783:22 | self | A | main.rs:781:10:781:10 | T | +| main.rs:784:17:784:29 | ...::C1(...) | | main.rs:770:5:774:5 | MyEnum | +| main.rs:784:17:784:29 | ...::C1(...) | A | main.rs:781:10:781:10 | T | +| main.rs:784:28:784:28 | a | | main.rs:781:10:781:10 | T | +| main.rs:784:34:784:34 | a | | main.rs:781:10:781:10 | T | +| main.rs:785:17:785:32 | ...::C2 {...} | | main.rs:770:5:774:5 | MyEnum | +| main.rs:785:17:785:32 | ...::C2 {...} | A | main.rs:781:10:781:10 | T | +| main.rs:785:30:785:30 | a | | main.rs:781:10:781:10 | T | +| main.rs:785:37:785:37 | a | | main.rs:781:10:781:10 | T | +| main.rs:790:16:796:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:791:13:791:13 | x | | main.rs:770:5:774:5 | MyEnum | +| main.rs:791:13:791:13 | x | A | main.rs:776:5:777:14 | S1 | +| main.rs:791:17:791:30 | ...::C1(...) | | main.rs:770:5:774:5 | MyEnum | +| main.rs:791:17:791:30 | ...::C1(...) | A | main.rs:776:5:777:14 | S1 | +| main.rs:791:28:791:29 | S1 | | main.rs:776:5:777:14 | S1 | +| main.rs:792:13:792:13 | y | | main.rs:770:5:774:5 | MyEnum | +| main.rs:792:13:792:13 | y | A | main.rs:778:5:779:14 | S2 | +| main.rs:792:17:792:36 | ...::C2 {...} | | main.rs:770:5:774:5 | MyEnum | +| main.rs:792:17:792:36 | ...::C2 {...} | A | main.rs:778:5:779:14 | S2 | +| main.rs:792:33:792:34 | S2 | | main.rs:778:5:779:14 | S2 | +| main.rs:794:9:794:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:794:18:794:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:794:18:794:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:794:18:794:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:794:18:794:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:794:18:794:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:794:26:794:26 | x | | main.rs:770:5:774:5 | MyEnum | +| main.rs:794:26:794:26 | x | A | main.rs:776:5:777:14 | S1 | +| main.rs:794:26:794:31 | x.m1() | | main.rs:776:5:777:14 | S1 | +| main.rs:795:9:795:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:795:18:795:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:795:18:795:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:795:18:795:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:795:18:795:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:795:18:795:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:795:26:795:26 | y | | main.rs:770:5:774:5 | MyEnum | +| main.rs:795:26:795:26 | y | A | main.rs:778:5:779:14 | S2 | +| main.rs:795:26:795:31 | y.m1() | | main.rs:778:5:779:14 | S2 | +| main.rs:817:15:817:18 | SelfParam | | main.rs:815:5:818:5 | Self [trait MyTrait1] | +| main.rs:822:15:822:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:822:15:822:19 | SelfParam | TRef | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:825:9:831:9 | { ... } | | main.rs:820:20:820:22 | Tr2 | +| main.rs:826:13:830:13 | if ... {...} else {...} | | main.rs:820:20:820:22 | Tr2 | +| main.rs:826:16:826:16 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:826:16:826:20 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:826:20:826:20 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:826:22:828:13 | { ... } | | main.rs:820:20:820:22 | Tr2 | +| main.rs:827:17:827:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:827:17:827:20 | self | TRef | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:827:17:827:25 | self.m1() | | main.rs:820:20:820:22 | Tr2 | +| main.rs:828:20:830:13 | { ... } | | main.rs:820:20:820:22 | Tr2 | +| main.rs:829:17:829:31 | ...::m1(...) | | main.rs:820:20:820:22 | Tr2 | +| main.rs:829:26:829:30 | * ... | | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:829:27:829:30 | self | | {EXTERNAL LOCATION} | & | +| main.rs:829:27:829:30 | self | TRef | main.rs:820:5:832:5 | Self [trait MyTrait2] | +| main.rs:836:15:836:18 | SelfParam | | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:839:9:845:9 | { ... } | | main.rs:834:20:834:22 | Tr3 | +| main.rs:840:13:844:13 | if ... {...} else {...} | | main.rs:834:20:834:22 | Tr3 | +| main.rs:840:16:840:16 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:840:16:840:20 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:840:20:840:20 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:840:22:842:13 | { ... } | | main.rs:834:20:834:22 | Tr3 | +| main.rs:841:17:841:20 | self | | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:841:17:841:25 | self.m2() | | main.rs:800:5:803:5 | MyThing | +| main.rs:841:17:841:25 | self.m2() | A | main.rs:834:20:834:22 | Tr3 | +| main.rs:841:17:841:27 | ... .a | | main.rs:834:20:834:22 | Tr3 | +| main.rs:842:20:844:13 | { ... } | | main.rs:834:20:834:22 | Tr3 | +| main.rs:843:17:843:31 | ...::m2(...) | | main.rs:800:5:803:5 | MyThing | +| main.rs:843:17:843:31 | ...::m2(...) | A | main.rs:834:20:834:22 | Tr3 | +| main.rs:843:17:843:33 | ... .a | | main.rs:834:20:834:22 | Tr3 | +| main.rs:843:26:843:30 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:843:26:843:30 | &self | TRef | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:843:27:843:30 | self | | main.rs:834:5:846:5 | Self [trait MyTrait3] | +| main.rs:850:15:850:18 | SelfParam | | main.rs:800:5:803:5 | MyThing | +| main.rs:850:15:850:18 | SelfParam | A | main.rs:848:10:848:10 | T | +| main.rs:850:26:852:9 | { ... } | | main.rs:848:10:848:10 | T | +| main.rs:851:13:851:16 | self | | main.rs:800:5:803:5 | MyThing | +| main.rs:851:13:851:16 | self | A | main.rs:848:10:848:10 | T | +| main.rs:851:13:851:18 | self.a | | main.rs:848:10:848:10 | T | +| main.rs:859:15:859:18 | SelfParam | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:859:15:859:18 | SelfParam | A | main.rs:857:10:857:10 | T | +| main.rs:859:35:861:9 | { ... } | | main.rs:800:5:803:5 | MyThing | +| main.rs:859:35:861:9 | { ... } | A | main.rs:857:10:857:10 | T | +| main.rs:860:13:860:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:860:13:860:33 | MyThing {...} | A | main.rs:857:10:857:10 | T | +| main.rs:860:26:860:29 | self | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:860:26:860:29 | self | A | main.rs:857:10:857:10 | T | +| main.rs:860:26:860:31 | self.a | | main.rs:857:10:857:10 | T | +| main.rs:868:44:868:44 | x | | main.rs:868:26:868:41 | T2 | +| main.rs:868:57:870:5 | { ... } | | main.rs:868:22:868:23 | T1 | +| main.rs:869:9:869:9 | x | | main.rs:868:26:868:41 | T2 | +| main.rs:869:9:869:14 | x.m1() | | main.rs:868:22:868:23 | T1 | +| main.rs:872:56:872:56 | x | | main.rs:872:39:872:53 | T | +| main.rs:872:62:876:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:874:13:874:13 | a | | main.rs:800:5:803:5 | MyThing | +| main.rs:874:13:874:13 | a | A | main.rs:810:5:811:14 | S1 | +| main.rs:874:17:874:17 | x | | main.rs:872:39:872:53 | T | +| main.rs:874:17:874:22 | x.m1() | | main.rs:800:5:803:5 | MyThing | +| main.rs:874:17:874:22 | x.m1() | A | main.rs:810:5:811:14 | S1 | +| main.rs:875:9:875:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:875:18:875:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:875:18:875:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:875:18:875:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:875:18:875:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:875:18:875:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:875:26:875:26 | a | | main.rs:800:5:803:5 | MyThing | +| main.rs:875:26:875:26 | a | A | main.rs:810:5:811:14 | S1 | +| main.rs:878:16:902:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:879:13:879:13 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:879:13:879:13 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:879:17:879:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:879:17:879:33 | MyThing {...} | A | main.rs:810:5:811:14 | S1 | +| main.rs:879:30:879:31 | S1 | | main.rs:810:5:811:14 | S1 | +| main.rs:880:13:880:13 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:880:13:880:13 | y | A | main.rs:812:5:813:14 | S2 | +| main.rs:880:17:880:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:880:17:880:33 | MyThing {...} | A | main.rs:812:5:813:14 | S2 | +| main.rs:880:30:880:31 | S2 | | main.rs:812:5:813:14 | S2 | +| main.rs:882:9:882:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:882:18:882:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:882:18:882:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:882:18:882:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:882:18:882:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:882:18:882:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:882:26:882:26 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:882:26:882:26 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:882:26:882:31 | x.m1() | | main.rs:810:5:811:14 | S1 | +| main.rs:883:9:883:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:883:18:883:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:883:18:883:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:883:18:883:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:883:18:883:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:883:18:883:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:883:26:883:26 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:883:26:883:26 | y | A | main.rs:812:5:813:14 | S2 | +| main.rs:883:26:883:31 | y.m1() | | main.rs:812:5:813:14 | S2 | +| main.rs:885:13:885:13 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:885:13:885:13 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:885:17:885:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:885:17:885:33 | MyThing {...} | A | main.rs:810:5:811:14 | S1 | +| main.rs:885:30:885:31 | S1 | | main.rs:810:5:811:14 | S1 | +| main.rs:886:13:886:13 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:886:13:886:13 | y | A | main.rs:812:5:813:14 | S2 | +| main.rs:886:17:886:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:886:17:886:33 | MyThing {...} | A | main.rs:812:5:813:14 | S2 | +| main.rs:886:30:886:31 | S2 | | main.rs:812:5:813:14 | S2 | +| main.rs:888:9:888:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:888:18:888:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:888:18:888:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:888:18:888:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:888:18:888:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:888:18:888:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:888:26:888:26 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:888:26:888:26 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:888:26:888:31 | x.m2() | | main.rs:810:5:811:14 | S1 | +| main.rs:889:9:889:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:889:18:889:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:889:18:889:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:889:18:889:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:889:18:889:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:889:18:889:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:889:26:889:26 | y | | main.rs:800:5:803:5 | MyThing | +| main.rs:889:26:889:26 | y | A | main.rs:812:5:813:14 | S2 | +| main.rs:889:26:889:31 | y.m2() | | main.rs:812:5:813:14 | S2 | +| main.rs:891:13:891:13 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:891:13:891:13 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:891:17:891:34 | MyThing2 {...} | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:891:17:891:34 | MyThing2 {...} | A | main.rs:810:5:811:14 | S1 | +| main.rs:891:31:891:32 | S1 | | main.rs:810:5:811:14 | S1 | +| main.rs:892:13:892:13 | y | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:892:13:892:13 | y | A | main.rs:812:5:813:14 | S2 | +| main.rs:892:17:892:34 | MyThing2 {...} | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:892:17:892:34 | MyThing2 {...} | A | main.rs:812:5:813:14 | S2 | +| main.rs:892:31:892:32 | S2 | | main.rs:812:5:813:14 | S2 | +| main.rs:894:9:894:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:894:18:894:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:894:18:894:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:894:18:894:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:894:18:894:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:894:18:894:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:894:26:894:26 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:894:26:894:26 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:894:26:894:31 | x.m3() | | main.rs:810:5:811:14 | S1 | +| main.rs:895:9:895:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:895:18:895:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:895:18:895:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:895:18:895:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:895:18:895:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:895:18:895:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:895:26:895:26 | y | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:895:26:895:26 | y | A | main.rs:812:5:813:14 | S2 | +| main.rs:895:26:895:31 | y.m3() | | main.rs:812:5:813:14 | S2 | +| main.rs:897:13:897:13 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:897:13:897:13 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:897:17:897:33 | MyThing {...} | | main.rs:800:5:803:5 | MyThing | +| main.rs:897:17:897:33 | MyThing {...} | A | main.rs:810:5:811:14 | S1 | +| main.rs:897:30:897:31 | S1 | | main.rs:810:5:811:14 | S1 | +| main.rs:898:13:898:13 | s | | main.rs:810:5:811:14 | S1 | +| main.rs:898:17:898:32 | call_trait_m1(...) | | main.rs:810:5:811:14 | S1 | +| main.rs:898:31:898:31 | x | | main.rs:800:5:803:5 | MyThing | +| main.rs:898:31:898:31 | x | A | main.rs:810:5:811:14 | S1 | +| main.rs:900:13:900:13 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:900:13:900:13 | x | A | main.rs:812:5:813:14 | S2 | +| main.rs:900:17:900:34 | MyThing2 {...} | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:900:17:900:34 | MyThing2 {...} | A | main.rs:812:5:813:14 | S2 | +| main.rs:900:31:900:32 | S2 | | main.rs:812:5:813:14 | S2 | +| main.rs:901:13:901:13 | s | | main.rs:800:5:803:5 | MyThing | +| main.rs:901:13:901:13 | s | A | main.rs:812:5:813:14 | S2 | +| main.rs:901:17:901:32 | call_trait_m1(...) | | main.rs:800:5:803:5 | MyThing | +| main.rs:901:17:901:32 | call_trait_m1(...) | A | main.rs:812:5:813:14 | S2 | +| main.rs:901:31:901:31 | x | | main.rs:805:5:808:5 | MyThing2 | +| main.rs:901:31:901:31 | x | A | main.rs:812:5:813:14 | S2 | +| main.rs:918:22:918:22 | x | | {EXTERNAL LOCATION} | & | +| main.rs:918:22:918:22 | x | TRef | main.rs:918:11:918:19 | T | +| main.rs:918:35:920:5 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:918:35:920:5 | { ... } | TRef | main.rs:918:11:918:19 | T | +| main.rs:919:9:919:9 | x | | {EXTERNAL LOCATION} | & | +| main.rs:919:9:919:9 | x | TRef | main.rs:918:11:918:19 | T | +| main.rs:923:17:923:20 | SelfParam | | main.rs:908:5:909:14 | S1 | +| main.rs:923:29:925:9 | { ... } | | main.rs:911:5:912:14 | S2 | +| main.rs:924:13:924:14 | S2 | | main.rs:911:5:912:14 | S2 | +| main.rs:928:21:928:21 | x | | main.rs:928:13:928:14 | T1 | +| main.rs:931:5:933:5 | { ... } | | main.rs:928:17:928:18 | T2 | +| main.rs:932:9:932:9 | x | | main.rs:928:13:928:14 | T1 | +| main.rs:932:9:932:16 | x.into() | | main.rs:928:17:928:18 | T2 | +| main.rs:935:16:951:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:936:13:936:13 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:936:17:936:18 | S1 | | main.rs:908:5:909:14 | S1 | +| main.rs:937:9:937:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:937:18:937:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:937:18:937:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:937:18:937:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:937:18:937:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:937:18:937:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:937:26:937:31 | id(...) | | {EXTERNAL LOCATION} | & | +| main.rs:937:26:937:31 | id(...) | TRef | main.rs:908:5:909:14 | S1 | +| main.rs:937:29:937:30 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:937:29:937:30 | &x | TRef | main.rs:908:5:909:14 | S1 | +| main.rs:937:30:937:30 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:939:13:939:13 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:939:17:939:18 | S1 | | main.rs:908:5:909:14 | S1 | +| main.rs:940:9:940:38 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:940:18:940:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:940:18:940:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:940:18:940:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:940:18:940:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:940:18:940:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:940:26:940:26 | b | | main.rs:787:5:788:14 | S2 | -| main.rs:941:13:941:13 | b | | main.rs:787:5:788:14 | S2 | -| main.rs:941:17:941:41 | call_trait_thing_m1_3(...) | | main.rs:787:5:788:14 | S2 | -| main.rs:941:39:941:40 | y3 | | main.rs:780:5:783:5 | MyThing | -| main.rs:941:39:941:40 | y3 | T | main.rs:780:5:783:5 | MyThing | -| main.rs:941:39:941:40 | y3 | T.T | main.rs:787:5:788:14 | S2 | -| main.rs:942:9:942:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:942:18:942:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:942:18:942:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:942:18:942:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:942:18:942:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:942:18:942:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:942:26:942:26 | b | | main.rs:787:5:788:14 | S2 | -| main.rs:943:13:943:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:943:17:943:26 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:943:24:943:25 | S1 | | main.rs:785:5:786:14 | S1 | -| main.rs:944:13:944:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:944:22:944:31 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:944:29:944:30 | S2 | | main.rs:787:5:788:14 | S2 | -| main.rs:961:15:961:18 | SelfParam | | main.rs:949:5:953:5 | MyEnum | -| main.rs:961:15:961:18 | SelfParam | A | main.rs:960:10:960:10 | T | -| main.rs:961:26:966:9 | { ... } | | main.rs:960:10:960:10 | T | -| main.rs:962:13:965:13 | match self { ... } | | main.rs:960:10:960:10 | T | -| main.rs:962:19:962:22 | self | | main.rs:949:5:953:5 | MyEnum | -| main.rs:962:19:962:22 | self | A | main.rs:960:10:960:10 | T | -| main.rs:963:17:963:29 | ...::C1(...) | | main.rs:949:5:953:5 | MyEnum | -| main.rs:963:17:963:29 | ...::C1(...) | A | main.rs:960:10:960:10 | T | -| main.rs:963:28:963:28 | a | | main.rs:960:10:960:10 | T | -| main.rs:963:34:963:34 | a | | main.rs:960:10:960:10 | T | -| main.rs:964:17:964:32 | ...::C2 {...} | | main.rs:949:5:953:5 | MyEnum | -| main.rs:964:17:964:32 | ...::C2 {...} | A | main.rs:960:10:960:10 | T | -| main.rs:964:30:964:30 | a | | main.rs:960:10:960:10 | T | -| main.rs:964:37:964:37 | a | | main.rs:960:10:960:10 | T | -| main.rs:969:16:975:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:970:13:970:13 | x | | main.rs:949:5:953:5 | MyEnum | -| main.rs:970:13:970:13 | x | A | main.rs:955:5:956:14 | S1 | -| main.rs:970:17:970:30 | ...::C1(...) | | main.rs:949:5:953:5 | MyEnum | -| main.rs:970:17:970:30 | ...::C1(...) | A | main.rs:955:5:956:14 | S1 | -| main.rs:970:28:970:29 | S1 | | main.rs:955:5:956:14 | S1 | -| main.rs:971:13:971:13 | y | | main.rs:949:5:953:5 | MyEnum | -| main.rs:971:13:971:13 | y | A | main.rs:957:5:958:14 | S2 | -| main.rs:971:17:971:36 | ...::C2 {...} | | main.rs:949:5:953:5 | MyEnum | -| main.rs:971:17:971:36 | ...::C2 {...} | A | main.rs:957:5:958:14 | S2 | -| main.rs:971:33:971:34 | S2 | | main.rs:957:5:958:14 | S2 | -| main.rs:973:9:973:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:973:18:973:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:973:18:973:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:973:18:973:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:973:18:973:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:973:18:973:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:973:26:973:26 | x | | main.rs:949:5:953:5 | MyEnum | -| main.rs:973:26:973:26 | x | A | main.rs:955:5:956:14 | S1 | -| main.rs:973:26:973:31 | x.m1() | | main.rs:955:5:956:14 | S1 | -| main.rs:974:9:974:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:974:18:974:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:974:18:974:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:974:18:974:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:974:18:974:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:974:18:974:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:974:26:974:26 | y | | main.rs:949:5:953:5 | MyEnum | -| main.rs:974:26:974:26 | y | A | main.rs:957:5:958:14 | S2 | -| main.rs:974:26:974:31 | y.m1() | | main.rs:957:5:958:14 | S2 | -| main.rs:996:15:996:18 | SelfParam | | main.rs:994:5:997:5 | Self [trait MyTrait1] | -| main.rs:1001:15:1001:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1001:15:1001:19 | SelfParam | TRef | main.rs:999:5:1011:5 | Self [trait MyTrait2] | -| main.rs:1004:9:1010:9 | { ... } | | main.rs:999:20:999:22 | Tr2 | -| main.rs:1005:13:1009:13 | if ... {...} else {...} | | main.rs:999:20:999:22 | Tr2 | -| main.rs:1005:16:1005:16 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1005:16:1005:20 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1005:20:1005:20 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1005:22:1007:13 | { ... } | | main.rs:999:20:999:22 | Tr2 | -| main.rs:1006:17:1006:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1006:17:1006:20 | self | TRef | main.rs:999:5:1011:5 | Self [trait MyTrait2] | -| main.rs:1006:17:1006:25 | self.m1() | | main.rs:999:20:999:22 | Tr2 | -| main.rs:1007:20:1009:13 | { ... } | | main.rs:999:20:999:22 | Tr2 | -| main.rs:1008:17:1008:31 | ...::m1(...) | | main.rs:999:20:999:22 | Tr2 | -| main.rs:1008:26:1008:30 | * ... | | main.rs:999:5:1011:5 | Self [trait MyTrait2] | -| main.rs:1008:27:1008:30 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1008:27:1008:30 | self | TRef | main.rs:999:5:1011:5 | Self [trait MyTrait2] | -| main.rs:1015:15:1015:18 | SelfParam | | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | -| main.rs:1018:9:1024:9 | { ... } | | main.rs:1013:20:1013:22 | Tr3 | -| main.rs:1019:13:1023:13 | if ... {...} else {...} | | main.rs:1013:20:1013:22 | Tr3 | -| main.rs:1019:16:1019:16 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1019:16:1019:20 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1019:20:1019:20 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1019:22:1021:13 | { ... } | | main.rs:1013:20:1013:22 | Tr3 | -| main.rs:1020:17:1020:20 | self | | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | -| main.rs:1020:17:1020:25 | self.m2() | | main.rs:979:5:982:5 | MyThing | -| main.rs:1020:17:1020:25 | self.m2() | A | main.rs:1013:20:1013:22 | Tr3 | -| main.rs:1020:17:1020:27 | ... .a | | main.rs:1013:20:1013:22 | Tr3 | -| main.rs:1021:20:1023:13 | { ... } | | main.rs:1013:20:1013:22 | Tr3 | -| main.rs:1022:17:1022:31 | ...::m2(...) | | main.rs:979:5:982:5 | MyThing | -| main.rs:1022:17:1022:31 | ...::m2(...) | A | main.rs:1013:20:1013:22 | Tr3 | -| main.rs:1022:17:1022:33 | ... .a | | main.rs:1013:20:1013:22 | Tr3 | -| main.rs:1022:26:1022:30 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1022:26:1022:30 | &self | TRef | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | -| main.rs:1022:27:1022:30 | self | | main.rs:1013:5:1025:5 | Self [trait MyTrait3] | -| main.rs:1029:15:1029:18 | SelfParam | | main.rs:979:5:982:5 | MyThing | -| main.rs:1029:15:1029:18 | SelfParam | A | main.rs:1027:10:1027:10 | T | -| main.rs:1029:26:1031:9 | { ... } | | main.rs:1027:10:1027:10 | T | -| main.rs:1030:13:1030:16 | self | | main.rs:979:5:982:5 | MyThing | -| main.rs:1030:13:1030:16 | self | A | main.rs:1027:10:1027:10 | T | -| main.rs:1030:13:1030:18 | self.a | | main.rs:1027:10:1027:10 | T | -| main.rs:1038:15:1038:18 | SelfParam | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1038:15:1038:18 | SelfParam | A | main.rs:1036:10:1036:10 | T | -| main.rs:1038:35:1040:9 | { ... } | | main.rs:979:5:982:5 | MyThing | -| main.rs:1038:35:1040:9 | { ... } | A | main.rs:1036:10:1036:10 | T | -| main.rs:1039:13:1039:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | -| main.rs:1039:13:1039:33 | MyThing {...} | A | main.rs:1036:10:1036:10 | T | -| main.rs:1039:26:1039:29 | self | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1039:26:1039:29 | self | A | main.rs:1036:10:1036:10 | T | -| main.rs:1039:26:1039:31 | self.a | | main.rs:1036:10:1036:10 | T | -| main.rs:1047:44:1047:44 | x | | main.rs:1047:26:1047:41 | T2 | -| main.rs:1047:57:1049:5 | { ... } | | main.rs:1047:22:1047:23 | T1 | -| main.rs:1048:9:1048:9 | x | | main.rs:1047:26:1047:41 | T2 | -| main.rs:1048:9:1048:14 | x.m1() | | main.rs:1047:22:1047:23 | T1 | -| main.rs:1051:56:1051:56 | x | | main.rs:1051:39:1051:53 | T | -| main.rs:1051:62:1055:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1053:13:1053:13 | a | | main.rs:979:5:982:5 | MyThing | -| main.rs:1053:13:1053:13 | a | A | main.rs:989:5:990:14 | S1 | -| main.rs:1053:17:1053:17 | x | | main.rs:1051:39:1051:53 | T | -| main.rs:1053:17:1053:22 | x.m1() | | main.rs:979:5:982:5 | MyThing | -| main.rs:1053:17:1053:22 | x.m1() | A | main.rs:989:5:990:14 | S1 | -| main.rs:1054:9:1054:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1054:18:1054:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1054:18:1054:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1054:18:1054:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1054:18:1054:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1054:18:1054:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1054:26:1054:26 | a | | main.rs:979:5:982:5 | MyThing | -| main.rs:1054:26:1054:26 | a | A | main.rs:989:5:990:14 | S1 | -| main.rs:1057:16:1081:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1058:13:1058:13 | x | | main.rs:979:5:982:5 | MyThing | -| main.rs:1058:13:1058:13 | x | A | main.rs:989:5:990:14 | S1 | -| main.rs:1058:17:1058:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | -| main.rs:1058:17:1058:33 | MyThing {...} | A | main.rs:989:5:990:14 | S1 | -| main.rs:1058:30:1058:31 | S1 | | main.rs:989:5:990:14 | S1 | -| main.rs:1059:13:1059:13 | y | | main.rs:979:5:982:5 | MyThing | -| main.rs:1059:13:1059:13 | y | A | main.rs:991:5:992:14 | S2 | -| main.rs:1059:17:1059:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | -| main.rs:1059:17:1059:33 | MyThing {...} | A | main.rs:991:5:992:14 | S2 | -| main.rs:1059:30:1059:31 | S2 | | main.rs:991:5:992:14 | S2 | -| main.rs:1061:9:1061:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1061:18:1061:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1061:18:1061:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1061:18:1061:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1061:18:1061:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1061:18:1061:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1061:26:1061:26 | x | | main.rs:979:5:982:5 | MyThing | -| main.rs:1061:26:1061:26 | x | A | main.rs:989:5:990:14 | S1 | -| main.rs:1061:26:1061:31 | x.m1() | | main.rs:989:5:990:14 | S1 | -| main.rs:1062:9:1062:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1062:18:1062:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1062:18:1062:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1062:18:1062:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1062:18:1062:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1062:18:1062:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1062:26:1062:26 | y | | main.rs:979:5:982:5 | MyThing | -| main.rs:1062:26:1062:26 | y | A | main.rs:991:5:992:14 | S2 | -| main.rs:1062:26:1062:31 | y.m1() | | main.rs:991:5:992:14 | S2 | -| main.rs:1064:13:1064:13 | x | | main.rs:979:5:982:5 | MyThing | -| main.rs:1064:13:1064:13 | x | A | main.rs:989:5:990:14 | S1 | -| main.rs:1064:17:1064:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | -| main.rs:1064:17:1064:33 | MyThing {...} | A | main.rs:989:5:990:14 | S1 | -| main.rs:1064:30:1064:31 | S1 | | main.rs:989:5:990:14 | S1 | -| main.rs:1065:13:1065:13 | y | | main.rs:979:5:982:5 | MyThing | -| main.rs:1065:13:1065:13 | y | A | main.rs:991:5:992:14 | S2 | -| main.rs:1065:17:1065:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | -| main.rs:1065:17:1065:33 | MyThing {...} | A | main.rs:991:5:992:14 | S2 | -| main.rs:1065:30:1065:31 | S2 | | main.rs:991:5:992:14 | S2 | -| main.rs:1067:9:1067:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1067:18:1067:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1067:18:1067:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1067:18:1067:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1067:18:1067:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1067:18:1067:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1067:26:1067:26 | x | | main.rs:979:5:982:5 | MyThing | -| main.rs:1067:26:1067:26 | x | A | main.rs:989:5:990:14 | S1 | -| main.rs:1067:26:1067:31 | x.m2() | | main.rs:989:5:990:14 | S1 | -| main.rs:1068:9:1068:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1068:18:1068:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1068:18:1068:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1068:18:1068:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1068:18:1068:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1068:18:1068:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1068:26:1068:26 | y | | main.rs:979:5:982:5 | MyThing | -| main.rs:1068:26:1068:26 | y | A | main.rs:991:5:992:14 | S2 | -| main.rs:1068:26:1068:31 | y.m2() | | main.rs:991:5:992:14 | S2 | -| main.rs:1070:13:1070:13 | x | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1070:13:1070:13 | x | A | main.rs:989:5:990:14 | S1 | -| main.rs:1070:17:1070:34 | MyThing2 {...} | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1070:17:1070:34 | MyThing2 {...} | A | main.rs:989:5:990:14 | S1 | -| main.rs:1070:31:1070:32 | S1 | | main.rs:989:5:990:14 | S1 | -| main.rs:1071:13:1071:13 | y | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1071:13:1071:13 | y | A | main.rs:991:5:992:14 | S2 | -| main.rs:1071:17:1071:34 | MyThing2 {...} | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1071:17:1071:34 | MyThing2 {...} | A | main.rs:991:5:992:14 | S2 | -| main.rs:1071:31:1071:32 | S2 | | main.rs:991:5:992:14 | S2 | -| main.rs:1073:9:1073:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1073:18:1073:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1073:18:1073:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1073:18:1073:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1073:18:1073:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1073:18:1073:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1073:26:1073:26 | x | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1073:26:1073:26 | x | A | main.rs:989:5:990:14 | S1 | -| main.rs:1073:26:1073:31 | x.m3() | | main.rs:989:5:990:14 | S1 | -| main.rs:1074:9:1074:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1074:18:1074:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1074:18:1074:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1074:18:1074:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1074:18:1074:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1074:18:1074:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1074:26:1074:26 | y | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1074:26:1074:26 | y | A | main.rs:991:5:992:14 | S2 | -| main.rs:1074:26:1074:31 | y.m3() | | main.rs:991:5:992:14 | S2 | -| main.rs:1076:13:1076:13 | x | | main.rs:979:5:982:5 | MyThing | -| main.rs:1076:13:1076:13 | x | A | main.rs:989:5:990:14 | S1 | -| main.rs:1076:17:1076:33 | MyThing {...} | | main.rs:979:5:982:5 | MyThing | -| main.rs:1076:17:1076:33 | MyThing {...} | A | main.rs:989:5:990:14 | S1 | -| main.rs:1076:30:1076:31 | S1 | | main.rs:989:5:990:14 | S1 | -| main.rs:1077:13:1077:13 | s | | main.rs:989:5:990:14 | S1 | -| main.rs:1077:17:1077:32 | call_trait_m1(...) | | main.rs:989:5:990:14 | S1 | -| main.rs:1077:31:1077:31 | x | | main.rs:979:5:982:5 | MyThing | -| main.rs:1077:31:1077:31 | x | A | main.rs:989:5:990:14 | S1 | -| main.rs:1079:13:1079:13 | x | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1079:13:1079:13 | x | A | main.rs:991:5:992:14 | S2 | -| main.rs:1079:17:1079:34 | MyThing2 {...} | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1079:17:1079:34 | MyThing2 {...} | A | main.rs:991:5:992:14 | S2 | -| main.rs:1079:31:1079:32 | S2 | | main.rs:991:5:992:14 | S2 | -| main.rs:1080:13:1080:13 | s | | main.rs:979:5:982:5 | MyThing | -| main.rs:1080:13:1080:13 | s | A | main.rs:991:5:992:14 | S2 | -| main.rs:1080:17:1080:32 | call_trait_m1(...) | | main.rs:979:5:982:5 | MyThing | -| main.rs:1080:17:1080:32 | call_trait_m1(...) | A | main.rs:991:5:992:14 | S2 | -| main.rs:1080:31:1080:31 | x | | main.rs:984:5:987:5 | MyThing2 | -| main.rs:1080:31:1080:31 | x | A | main.rs:991:5:992:14 | S2 | -| main.rs:1097:22:1097:22 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1097:22:1097:22 | x | TRef | main.rs:1097:11:1097:19 | T | -| main.rs:1097:35:1099:5 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1097:35:1099:5 | { ... } | TRef | main.rs:1097:11:1097:19 | T | -| main.rs:1098:9:1098:9 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1098:9:1098:9 | x | TRef | main.rs:1097:11:1097:19 | T | -| main.rs:1102:17:1102:20 | SelfParam | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1102:29:1104:9 | { ... } | | main.rs:1090:5:1091:14 | S2 | -| main.rs:1103:13:1103:14 | S2 | | main.rs:1090:5:1091:14 | S2 | -| main.rs:1107:21:1107:21 | x | | main.rs:1107:13:1107:14 | T1 | -| main.rs:1110:5:1112:5 | { ... } | | main.rs:1107:17:1107:18 | T2 | -| main.rs:1111:9:1111:9 | x | | main.rs:1107:13:1107:14 | T1 | -| main.rs:1111:9:1111:16 | x.into() | | main.rs:1107:17:1107:18 | T2 | -| main.rs:1114:16:1130:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1115:13:1115:13 | x | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1115:17:1115:18 | S1 | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1116:9:1116:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1116:18:1116:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1116:18:1116:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1116:18:1116:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1116:18:1116:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1116:18:1116:31 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1116:26:1116:31 | id(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1116:26:1116:31 | id(...) | TRef | main.rs:1087:5:1088:14 | S1 | -| main.rs:1116:29:1116:30 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1116:29:1116:30 | &x | TRef | main.rs:1087:5:1088:14 | S1 | -| main.rs:1116:30:1116:30 | x | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1118:13:1118:13 | x | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1118:17:1118:18 | S1 | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1119:9:1119:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1119:18:1119:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1119:18:1119:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1119:18:1119:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1119:18:1119:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1119:18:1119:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1119:26:1119:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1119:26:1119:37 | id::<...>(...) | TRef | main.rs:1087:5:1088:14 | S1 | -| main.rs:1119:35:1119:36 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1119:35:1119:36 | &x | TRef | main.rs:1087:5:1088:14 | S1 | -| main.rs:1119:36:1119:36 | x | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1121:13:1121:13 | x | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1121:17:1121:18 | S1 | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1123:9:1123:45 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1123:18:1123:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1123:18:1123:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1123:18:1123:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1123:18:1123:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1123:18:1123:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1123:26:1123:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1123:26:1123:44 | id::<...>(...) | TRef | main.rs:1093:5:1093:25 | dyn Trait | -| main.rs:1123:42:1123:43 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1123:42:1123:43 | &x | TRef | main.rs:1087:5:1088:14 | S1 | -| main.rs:1123:43:1123:43 | x | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1125:13:1125:13 | x | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1125:17:1125:18 | S1 | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1126:9:1126:25 | into::<...>(...) | | main.rs:1090:5:1091:14 | S2 | -| main.rs:1126:24:1126:24 | x | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1128:13:1128:13 | x | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1128:17:1128:18 | S1 | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1129:13:1129:13 | y | | main.rs:1090:5:1091:14 | S2 | -| main.rs:1129:21:1129:27 | into(...) | | main.rs:1090:5:1091:14 | S2 | -| main.rs:1129:26:1129:26 | x | | main.rs:1087:5:1088:14 | S1 | -| main.rs:1143:22:1143:25 | SelfParam | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1143:22:1143:25 | SelfParam | Fst | main.rs:1142:10:1142:12 | Fst | -| main.rs:1143:22:1143:25 | SelfParam | Snd | main.rs:1142:15:1142:17 | Snd | -| main.rs:1143:35:1150:9 | { ... } | | main.rs:1142:15:1142:17 | Snd | -| main.rs:1144:13:1149:13 | match self { ... } | | file://:0:0:0:0 | ! | -| main.rs:1144:13:1149:13 | match self { ... } | | main.rs:1142:15:1142:17 | Snd | -| main.rs:1144:19:1144:22 | self | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1144:19:1144:22 | self | Fst | main.rs:1142:10:1142:12 | Fst | -| main.rs:1144:19:1144:22 | self | Snd | main.rs:1142:15:1142:17 | Snd | -| main.rs:1145:17:1145:38 | ...::PairNone(...) | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1145:17:1145:38 | ...::PairNone(...) | Fst | main.rs:1142:10:1142:12 | Fst | -| main.rs:1145:17:1145:38 | ...::PairNone(...) | Snd | main.rs:1142:15:1142:17 | Snd | -| main.rs:1145:43:1145:82 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1145:50:1145:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | -| main.rs:1145:50:1145:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1145:50:1145:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1145:50:1145:81 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1145:50:1145:81 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1146:17:1146:38 | ...::PairFst(...) | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1146:17:1146:38 | ...::PairFst(...) | Fst | main.rs:1142:10:1142:12 | Fst | -| main.rs:1146:17:1146:38 | ...::PairFst(...) | Snd | main.rs:1142:15:1142:17 | Snd | -| main.rs:1146:37:1146:37 | _ | | main.rs:1142:10:1142:12 | Fst | -| main.rs:1146:43:1146:81 | MacroExpr | | file://:0:0:0:0 | ! | -| main.rs:1146:50:1146:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | -| main.rs:1146:50:1146:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1146:50:1146:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | -| main.rs:1146:50:1146:80 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1146:50:1146:80 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1147:17:1147:40 | ...::PairSnd(...) | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1147:17:1147:40 | ...::PairSnd(...) | Fst | main.rs:1142:10:1142:12 | Fst | -| main.rs:1147:17:1147:40 | ...::PairSnd(...) | Snd | main.rs:1142:15:1142:17 | Snd | -| main.rs:1147:37:1147:39 | snd | | main.rs:1142:15:1142:17 | Snd | -| main.rs:1147:45:1147:47 | snd | | main.rs:1142:15:1142:17 | Snd | -| main.rs:1148:17:1148:44 | ...::PairBoth(...) | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1148:17:1148:44 | ...::PairBoth(...) | Fst | main.rs:1142:10:1142:12 | Fst | -| main.rs:1148:17:1148:44 | ...::PairBoth(...) | Snd | main.rs:1142:15:1142:17 | Snd | -| main.rs:1148:38:1148:38 | _ | | main.rs:1142:10:1142:12 | Fst | -| main.rs:1148:41:1148:43 | snd | | main.rs:1142:15:1142:17 | Snd | -| main.rs:1148:49:1148:51 | snd | | main.rs:1142:15:1142:17 | Snd | -| main.rs:1174:10:1174:10 | t | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1174:10:1174:10 | t | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1174:10:1174:10 | t | Snd | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1174:10:1174:10 | t | Snd.Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1174:10:1174:10 | t | Snd.Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1174:30:1177:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1175:13:1175:13 | x | | main.rs:1159:5:1160:14 | S3 | -| main.rs:1175:17:1175:17 | t | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1175:17:1175:17 | t | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1175:17:1175:17 | t | Snd | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1175:17:1175:17 | t | Snd.Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1175:17:1175:17 | t | Snd.Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1175:17:1175:29 | t.unwrapSnd() | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1175:17:1175:29 | t.unwrapSnd() | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1175:17:1175:29 | t.unwrapSnd() | Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1175:17:1175:41 | ... .unwrapSnd() | | main.rs:1159:5:1160:14 | S3 | -| main.rs:1176:9:1176:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1176:18:1176:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1176:18:1176:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1176:18:1176:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1176:18:1176:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1176:18:1176:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1176:26:1176:26 | x | | main.rs:1159:5:1160:14 | S3 | -| main.rs:1187:16:1207:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1189:13:1189:14 | p1 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1189:13:1189:14 | p1 | Fst | main.rs:1153:5:1154:14 | S1 | -| main.rs:1189:13:1189:14 | p1 | Snd | main.rs:1156:5:1157:14 | S2 | -| main.rs:1189:26:1189:53 | ...::PairBoth(...) | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1189:26:1189:53 | ...::PairBoth(...) | Fst | main.rs:1153:5:1154:14 | S1 | -| main.rs:1189:26:1189:53 | ...::PairBoth(...) | Snd | main.rs:1156:5:1157:14 | S2 | -| main.rs:1189:47:1189:48 | S1 | | main.rs:1153:5:1154:14 | S1 | -| main.rs:1189:51:1189:52 | S2 | | main.rs:1156:5:1157:14 | S2 | -| main.rs:1190:9:1190:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:940:18:940:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:940:18:940:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:940:18:940:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:940:26:940:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:940:26:940:37 | id::<...>(...) | TRef | main.rs:908:5:909:14 | S1 | +| main.rs:940:35:940:36 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:940:35:940:36 | &x | TRef | main.rs:908:5:909:14 | S1 | +| main.rs:940:36:940:36 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:942:13:942:13 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:942:17:942:18 | S1 | | main.rs:908:5:909:14 | S1 | +| main.rs:944:9:944:45 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:944:18:944:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:944:18:944:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:944:18:944:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:944:18:944:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:944:18:944:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:944:26:944:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | +| main.rs:944:26:944:44 | id::<...>(...) | TRef | main.rs:914:5:914:25 | dyn Trait | +| main.rs:944:42:944:43 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:944:42:944:43 | &x | TRef | main.rs:908:5:909:14 | S1 | +| main.rs:944:43:944:43 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:946:13:946:13 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:946:17:946:18 | S1 | | main.rs:908:5:909:14 | S1 | +| main.rs:947:9:947:25 | into::<...>(...) | | main.rs:911:5:912:14 | S2 | +| main.rs:947:24:947:24 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:949:13:949:13 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:949:17:949:18 | S1 | | main.rs:908:5:909:14 | S1 | +| main.rs:950:13:950:13 | y | | main.rs:911:5:912:14 | S2 | +| main.rs:950:21:950:27 | into(...) | | main.rs:911:5:912:14 | S2 | +| main.rs:950:26:950:26 | x | | main.rs:908:5:909:14 | S1 | +| main.rs:964:22:964:25 | SelfParam | | main.rs:955:5:961:5 | PairOption | +| main.rs:964:22:964:25 | SelfParam | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:964:22:964:25 | SelfParam | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:964:35:971:9 | { ... } | | main.rs:963:15:963:17 | Snd | +| main.rs:965:13:970:13 | match self { ... } | | file://:0:0:0:0 | ! | +| main.rs:965:13:970:13 | match self { ... } | | main.rs:963:15:963:17 | Snd | +| main.rs:965:19:965:22 | self | | main.rs:955:5:961:5 | PairOption | +| main.rs:965:19:965:22 | self | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:965:19:965:22 | self | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:966:17:966:38 | ...::PairNone(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:966:17:966:38 | ...::PairNone(...) | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:966:17:966:38 | ...::PairNone(...) | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:966:43:966:82 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:966:50:966:81 | "PairNone has no second elemen... | | {EXTERNAL LOCATION} | & | +| main.rs:966:50:966:81 | "PairNone has no second elemen... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:966:50:966:81 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:966:50:966:81 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:966:50:966:81 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:967:17:967:38 | ...::PairFst(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:967:17:967:38 | ...::PairFst(...) | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:967:17:967:38 | ...::PairFst(...) | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:967:37:967:37 | _ | | main.rs:963:10:963:12 | Fst | +| main.rs:967:43:967:81 | MacroExpr | | file://:0:0:0:0 | ! | +| main.rs:967:50:967:80 | "PairFst has no second element... | | {EXTERNAL LOCATION} | & | +| main.rs:967:50:967:80 | "PairFst has no second element... | TRef | {EXTERNAL LOCATION} | str | +| main.rs:967:50:967:80 | ...::panic_fmt(...) | | file://:0:0:0:0 | ! | +| main.rs:967:50:967:80 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:967:50:967:80 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:968:17:968:40 | ...::PairSnd(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:968:17:968:40 | ...::PairSnd(...) | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:968:17:968:40 | ...::PairSnd(...) | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:968:37:968:39 | snd | | main.rs:963:15:963:17 | Snd | +| main.rs:968:45:968:47 | snd | | main.rs:963:15:963:17 | Snd | +| main.rs:969:17:969:44 | ...::PairBoth(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:969:17:969:44 | ...::PairBoth(...) | Fst | main.rs:963:10:963:12 | Fst | +| main.rs:969:17:969:44 | ...::PairBoth(...) | Snd | main.rs:963:15:963:17 | Snd | +| main.rs:969:38:969:38 | _ | | main.rs:963:10:963:12 | Fst | +| main.rs:969:41:969:43 | snd | | main.rs:963:15:963:17 | Snd | +| main.rs:969:49:969:51 | snd | | main.rs:963:15:963:17 | Snd | +| main.rs:995:10:995:10 | t | | main.rs:955:5:961:5 | PairOption | +| main.rs:995:10:995:10 | t | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:995:10:995:10 | t | Snd | main.rs:955:5:961:5 | PairOption | +| main.rs:995:10:995:10 | t | Snd.Fst | main.rs:977:5:978:14 | S2 | +| main.rs:995:10:995:10 | t | Snd.Snd | main.rs:980:5:981:14 | S3 | +| main.rs:995:30:998:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:996:13:996:13 | x | | main.rs:980:5:981:14 | S3 | +| main.rs:996:17:996:17 | t | | main.rs:955:5:961:5 | PairOption | +| main.rs:996:17:996:17 | t | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:996:17:996:17 | t | Snd | main.rs:955:5:961:5 | PairOption | +| main.rs:996:17:996:17 | t | Snd.Fst | main.rs:977:5:978:14 | S2 | +| main.rs:996:17:996:17 | t | Snd.Snd | main.rs:980:5:981:14 | S3 | +| main.rs:996:17:996:29 | t.unwrapSnd() | | main.rs:955:5:961:5 | PairOption | +| main.rs:996:17:996:29 | t.unwrapSnd() | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:996:17:996:29 | t.unwrapSnd() | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:996:17:996:41 | ... .unwrapSnd() | | main.rs:980:5:981:14 | S3 | +| main.rs:997:9:997:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:997:18:997:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:997:18:997:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:997:18:997:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:997:18:997:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:997:18:997:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:997:26:997:26 | x | | main.rs:980:5:981:14 | S3 | +| main.rs:1008:16:1028:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1010:13:1010:14 | p1 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1010:13:1010:14 | p1 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1010:13:1010:14 | p1 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1010:26:1010:53 | ...::PairBoth(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:1010:26:1010:53 | ...::PairBoth(...) | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1010:26:1010:53 | ...::PairBoth(...) | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1010:47:1010:48 | S1 | | main.rs:974:5:975:14 | S1 | +| main.rs:1010:51:1010:52 | S2 | | main.rs:977:5:978:14 | S2 | +| main.rs:1011:9:1011:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1011:18:1011:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1011:18:1011:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1011:18:1011:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1011:18:1011:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1011:18:1011:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1011:26:1011:27 | p1 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1011:26:1011:27 | p1 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1011:26:1011:27 | p1 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1014:13:1014:14 | p2 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1014:13:1014:14 | p2 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1014:13:1014:14 | p2 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1014:26:1014:47 | ...::PairNone(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:1014:26:1014:47 | ...::PairNone(...) | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1014:26:1014:47 | ...::PairNone(...) | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1015:9:1015:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1015:18:1015:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1015:18:1015:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1015:18:1015:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1015:18:1015:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1015:18:1015:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1015:26:1015:27 | p2 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1015:26:1015:27 | p2 | Fst | main.rs:974:5:975:14 | S1 | +| main.rs:1015:26:1015:27 | p2 | Snd | main.rs:977:5:978:14 | S2 | +| main.rs:1018:13:1018:14 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1018:13:1018:14 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1018:13:1018:14 | p3 | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1018:34:1018:56 | ...::PairSnd(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:1018:34:1018:56 | ...::PairSnd(...) | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1018:34:1018:56 | ...::PairSnd(...) | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1018:54:1018:55 | S3 | | main.rs:980:5:981:14 | S3 | +| main.rs:1019:9:1019:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1019:18:1019:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1019:18:1019:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1019:18:1019:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1019:18:1019:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1019:18:1019:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1019:26:1019:27 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1019:26:1019:27 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1019:26:1019:27 | p3 | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1022:13:1022:14 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1022:13:1022:14 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1022:13:1022:14 | p3 | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1022:35:1022:56 | ...::PairNone(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:1022:35:1022:56 | ...::PairNone(...) | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1022:35:1022:56 | ...::PairNone(...) | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1023:9:1023:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1023:18:1023:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1023:18:1023:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1023:18:1023:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1023:26:1023:27 | p3 | | main.rs:955:5:961:5 | PairOption | +| main.rs:1023:26:1023:27 | p3 | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1023:26:1023:27 | p3 | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1025:9:1025:55 | g(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1025:11:1025:54 | ...::PairSnd(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:1025:11:1025:54 | ...::PairSnd(...) | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1025:11:1025:54 | ...::PairSnd(...) | Snd | main.rs:955:5:961:5 | PairOption | +| main.rs:1025:11:1025:54 | ...::PairSnd(...) | Snd.Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1025:11:1025:54 | ...::PairSnd(...) | Snd.Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1025:31:1025:53 | ...::PairSnd(...) | | main.rs:955:5:961:5 | PairOption | +| main.rs:1025:31:1025:53 | ...::PairSnd(...) | Fst | main.rs:977:5:978:14 | S2 | +| main.rs:1025:31:1025:53 | ...::PairSnd(...) | Snd | main.rs:980:5:981:14 | S3 | +| main.rs:1025:51:1025:52 | S3 | | main.rs:980:5:981:14 | S3 | +| main.rs:1027:13:1027:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1027:13:1027:13 | x | E | main.rs:974:5:975:14 | S1 | +| main.rs:1027:13:1027:13 | x | T | main.rs:1000:5:1000:34 | S4 | +| main.rs:1027:13:1027:13 | x | T.T41 | main.rs:977:5:978:14 | S2 | +| main.rs:1027:13:1027:13 | x | T.T42 | main.rs:1002:5:1002:22 | S5 | +| main.rs:1027:13:1027:13 | x | T.T42.T5 | main.rs:977:5:978:14 | S2 | +| main.rs:1040:16:1040:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1040:16:1040:24 | SelfParam | TRefMut | main.rs:1038:5:1045:5 | Self [trait MyTrait] | +| main.rs:1040:27:1040:31 | value | | main.rs:1038:19:1038:19 | S | +| main.rs:1042:21:1042:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1042:21:1042:29 | SelfParam | TRefMut | main.rs:1038:5:1045:5 | Self [trait MyTrait] | +| main.rs:1042:32:1042:36 | value | | main.rs:1038:19:1038:19 | S | +| main.rs:1042:42:1044:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1043:13:1043:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1043:13:1043:16 | self | TRefMut | main.rs:1038:5:1045:5 | Self [trait MyTrait] | +| main.rs:1043:13:1043:27 | self.set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1043:22:1043:26 | value | | main.rs:1038:19:1038:19 | S | +| main.rs:1049:16:1049:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1049:16:1049:24 | SelfParam | TRefMut | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1049:16:1049:24 | SelfParam | TRefMut.T | main.rs:1047:10:1047:10 | T | +| main.rs:1049:27:1049:31 | value | | main.rs:1047:10:1047:10 | T | +| main.rs:1049:37:1049:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1053:26:1055:9 | { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1053:26:1055:9 | { ... } | T | main.rs:1052:10:1052:10 | T | +| main.rs:1054:13:1054:30 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1054:13:1054:30 | ...::MyNone(...) | T | main.rs:1052:10:1052:10 | T | +| main.rs:1059:20:1059:23 | SelfParam | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1059:20:1059:23 | SelfParam | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1059:20:1059:23 | SelfParam | T.T | main.rs:1058:10:1058:10 | T | +| main.rs:1059:41:1064:9 | { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1059:41:1064:9 | { ... } | T | main.rs:1058:10:1058:10 | T | +| main.rs:1060:13:1063:13 | match self { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1060:13:1063:13 | match self { ... } | T | main.rs:1058:10:1058:10 | T | +| main.rs:1060:19:1060:22 | self | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1060:19:1060:22 | self | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1060:19:1060:22 | self | T.T | main.rs:1058:10:1058:10 | T | +| main.rs:1061:17:1061:34 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1061:17:1061:34 | ...::MyNone(...) | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1061:17:1061:34 | ...::MyNone(...) | T.T | main.rs:1058:10:1058:10 | T | +| main.rs:1061:39:1061:56 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1061:39:1061:56 | ...::MyNone(...) | T | main.rs:1058:10:1058:10 | T | +| main.rs:1062:17:1062:35 | ...::MySome(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1062:17:1062:35 | ...::MySome(...) | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1062:17:1062:35 | ...::MySome(...) | T.T | main.rs:1058:10:1058:10 | T | +| main.rs:1062:34:1062:34 | x | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1062:34:1062:34 | x | T | main.rs:1058:10:1058:10 | T | +| main.rs:1062:40:1062:40 | x | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1062:40:1062:40 | x | T | main.rs:1058:10:1058:10 | T | +| main.rs:1070:16:1115:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1071:13:1071:14 | x1 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1071:13:1071:14 | x1 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1071:18:1071:37 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1071:18:1071:37 | ...::new(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1072:9:1072:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1072:18:1072:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1072:18:1072:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1072:18:1072:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1072:18:1072:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1072:18:1072:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1072:26:1072:27 | x1 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1072:26:1072:27 | x1 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1074:17:1074:18 | x2 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1074:17:1074:18 | x2 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1074:22:1074:36 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1074:22:1074:36 | ...::new(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1075:9:1075:10 | x2 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1075:9:1075:10 | x2 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1075:9:1075:17 | x2.set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1075:16:1075:16 | S | | main.rs:1067:5:1068:13 | S | +| main.rs:1076:9:1076:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1076:18:1076:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1076:18:1076:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1076:18:1076:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1076:18:1076:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1076:18:1076:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1076:26:1076:27 | x2 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1076:26:1076:27 | x2 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1078:17:1078:18 | x3 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1078:17:1078:18 | x3 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1078:22:1078:36 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1078:22:1078:36 | ...::new(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1079:9:1079:10 | x3 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1079:9:1079:10 | x3 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1079:9:1079:22 | x3.call_set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1079:21:1079:21 | S | | main.rs:1067:5:1068:13 | S | +| main.rs:1080:9:1080:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1080:18:1080:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1080:18:1080:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1080:18:1080:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1080:18:1080:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1080:18:1080:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1080:26:1080:27 | x3 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1080:26:1080:27 | x3 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1082:17:1082:18 | x4 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1082:17:1082:18 | x4 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1082:22:1082:36 | ...::new(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1082:22:1082:36 | ...::new(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1083:9:1083:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1083:23:1083:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | +| main.rs:1083:23:1083:29 | &mut x4 | TRefMut | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1083:23:1083:29 | &mut x4 | TRefMut.T | main.rs:1067:5:1068:13 | S | +| main.rs:1083:28:1083:29 | x4 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1083:28:1083:29 | x4 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1083:32:1083:32 | S | | main.rs:1067:5:1068:13 | S | +| main.rs:1084:9:1084:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1084:18:1084:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1084:18:1084:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1084:18:1084:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1084:18:1084:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1084:18:1084:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1084:26:1084:27 | x4 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1084:26:1084:27 | x4 | T | main.rs:1067:5:1068:13 | S | +| main.rs:1086:13:1086:14 | x5 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1086:13:1086:14 | x5 | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1086:13:1086:14 | x5 | T.T | main.rs:1067:5:1068:13 | S | +| main.rs:1086:18:1086:58 | ...::MySome(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1086:18:1086:58 | ...::MySome(...) | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1086:18:1086:58 | ...::MySome(...) | T.T | main.rs:1067:5:1068:13 | S | +| main.rs:1086:35:1086:57 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1086:35:1086:57 | ...::MyNone(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1087:9:1087:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1087:18:1087:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1087:18:1087:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1087:18:1087:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1087:18:1087:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1087:18:1087:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1087:26:1087:27 | x5 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1087:26:1087:27 | x5 | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1087:26:1087:27 | x5 | T.T | main.rs:1067:5:1068:13 | S | +| main.rs:1087:26:1087:37 | x5.flatten() | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1087:26:1087:37 | x5.flatten() | T | main.rs:1067:5:1068:13 | S | +| main.rs:1089:13:1089:14 | x6 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1089:13:1089:14 | x6 | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1089:13:1089:14 | x6 | T.T | main.rs:1067:5:1068:13 | S | +| main.rs:1089:18:1089:58 | ...::MySome(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1089:18:1089:58 | ...::MySome(...) | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1089:18:1089:58 | ...::MySome(...) | T.T | main.rs:1067:5:1068:13 | S | +| main.rs:1089:35:1089:57 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1089:35:1089:57 | ...::MyNone(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1090:9:1090:62 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1090:18:1090:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1090:18:1090:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1090:18:1090:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1090:18:1090:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1090:18:1090:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1090:26:1090:61 | ...::flatten(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1090:26:1090:61 | ...::flatten(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1090:59:1090:60 | x6 | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1090:59:1090:60 | x6 | T | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1090:59:1090:60 | x6 | T.T | main.rs:1067:5:1068:13 | S | +| main.rs:1093:13:1093:19 | from_if | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1093:13:1093:19 | from_if | T | main.rs:1067:5:1068:13 | S | +| main.rs:1093:23:1097:9 | if ... {...} else {...} | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1093:23:1097:9 | if ... {...} else {...} | T | main.rs:1067:5:1068:13 | S | +| main.rs:1093:26:1093:26 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1093:26:1093:30 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1093:30:1093:30 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1093:32:1095:9 | { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1093:32:1095:9 | { ... } | T | main.rs:1067:5:1068:13 | S | +| main.rs:1094:13:1094:30 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1094:13:1094:30 | ...::MyNone(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1095:16:1097:9 | { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1095:16:1097:9 | { ... } | T | main.rs:1067:5:1068:13 | S | +| main.rs:1096:13:1096:31 | ...::MySome(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1096:13:1096:31 | ...::MySome(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1096:30:1096:30 | S | | main.rs:1067:5:1068:13 | S | +| main.rs:1098:9:1098:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1098:18:1098:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1098:18:1098:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1098:18:1098:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1098:18:1098:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1098:18:1098:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1098:26:1098:32 | from_if | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1098:26:1098:32 | from_if | T | main.rs:1067:5:1068:13 | S | +| main.rs:1101:13:1101:22 | from_match | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1101:13:1101:22 | from_match | T | main.rs:1067:5:1068:13 | S | +| main.rs:1101:26:1104:9 | match ... { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1101:26:1104:9 | match ... { ... } | T | main.rs:1067:5:1068:13 | S | +| main.rs:1101:32:1101:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1101:32:1101:36 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1101:36:1101:36 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1102:13:1102:16 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1102:21:1102:38 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1102:21:1102:38 | ...::MyNone(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1103:13:1103:17 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1103:22:1103:40 | ...::MySome(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1103:22:1103:40 | ...::MySome(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1103:39:1103:39 | S | | main.rs:1067:5:1068:13 | S | +| main.rs:1105:9:1105:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1105:18:1105:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1105:18:1105:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1105:18:1105:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1105:18:1105:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1105:18:1105:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1105:26:1105:35 | from_match | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1105:26:1105:35 | from_match | T | main.rs:1067:5:1068:13 | S | +| main.rs:1108:13:1108:21 | from_loop | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1108:13:1108:21 | from_loop | T | main.rs:1067:5:1068:13 | S | +| main.rs:1108:25:1113:9 | loop { ... } | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1108:25:1113:9 | loop { ... } | T | main.rs:1067:5:1068:13 | S | +| main.rs:1108:30:1113:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1109:13:1111:13 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1109:16:1109:16 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1109:16:1109:20 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1109:20:1109:20 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1109:22:1111:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1110:23:1110:40 | ...::MyNone(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1110:23:1110:40 | ...::MyNone(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1112:19:1112:37 | ...::MySome(...) | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1112:19:1112:37 | ...::MySome(...) | T | main.rs:1067:5:1068:13 | S | +| main.rs:1112:36:1112:36 | S | | main.rs:1067:5:1068:13 | S | +| main.rs:1114:9:1114:35 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1114:18:1114:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1114:18:1114:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1114:18:1114:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1114:18:1114:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1114:18:1114:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1114:26:1114:34 | from_loop | | main.rs:1032:5:1036:5 | MyOption | +| main.rs:1114:26:1114:34 | from_loop | T | main.rs:1067:5:1068:13 | S | +| main.rs:1132:15:1132:18 | SelfParam | | main.rs:1120:5:1121:19 | S | +| main.rs:1132:15:1132:18 | SelfParam | T | main.rs:1131:10:1131:10 | T | +| main.rs:1132:26:1134:9 | { ... } | | main.rs:1131:10:1131:10 | T | +| main.rs:1133:13:1133:16 | self | | main.rs:1120:5:1121:19 | S | +| main.rs:1133:13:1133:16 | self | T | main.rs:1131:10:1131:10 | T | +| main.rs:1133:13:1133:18 | self.0 | | main.rs:1131:10:1131:10 | T | +| main.rs:1136:15:1136:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1136:15:1136:19 | SelfParam | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1136:15:1136:19 | SelfParam | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1136:28:1138:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1136:28:1138:9 | { ... } | TRef | main.rs:1131:10:1131:10 | T | +| main.rs:1137:13:1137:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1137:13:1137:19 | &... | TRef | main.rs:1131:10:1131:10 | T | +| main.rs:1137:14:1137:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1137:14:1137:17 | self | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1137:14:1137:17 | self | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1137:14:1137:19 | self.0 | | main.rs:1131:10:1131:10 | T | +| main.rs:1140:15:1140:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1140:15:1140:25 | SelfParam | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1140:15:1140:25 | SelfParam | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1140:34:1142:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1140:34:1142:9 | { ... } | TRef | main.rs:1131:10:1131:10 | T | +| main.rs:1141:13:1141:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1141:13:1141:19 | &... | TRef | main.rs:1131:10:1131:10 | T | +| main.rs:1141:14:1141:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1141:14:1141:17 | self | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1141:14:1141:17 | self | TRef.T | main.rs:1131:10:1131:10 | T | +| main.rs:1141:14:1141:19 | self.0 | | main.rs:1131:10:1131:10 | T | +| main.rs:1146:29:1146:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1146:29:1146:33 | SelfParam | TRef | main.rs:1145:5:1148:5 | Self [trait ATrait] | +| main.rs:1147:33:1147:36 | SelfParam | | main.rs:1145:5:1148:5 | Self [trait ATrait] | +| main.rs:1153:29:1153:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1153:29:1153:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1153:29:1153:33 | SelfParam | TRef.TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1153:43:1155:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1154:13:1154:22 | (...) | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1154:13:1154:24 | ... .a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1154:14:1154:21 | * ... | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1154:15:1154:21 | (...) | | {EXTERNAL LOCATION} | & | +| main.rs:1154:15:1154:21 | (...) | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1154:16:1154:20 | * ... | | {EXTERNAL LOCATION} | & | +| main.rs:1154:16:1154:20 | * ... | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1154:17:1154:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1154:17:1154:20 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1154:17:1154:20 | self | TRef.TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1158:33:1158:36 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1158:33:1158:36 | SelfParam | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1158:46:1160:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:1159:13:1159:19 | (...) | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1159:13:1159:21 | ... .a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1159:14:1159:18 | * ... | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1159:15:1159:18 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1159:15:1159:18 | self | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1163:16:1213:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1164:13:1164:14 | x1 | | main.rs:1120:5:1121:19 | S | +| main.rs:1164:13:1164:14 | x1 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1164:18:1164:22 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1164:18:1164:22 | S(...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1164:20:1164:21 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1165:9:1165:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1165:18:1165:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1165:18:1165:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1165:18:1165:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1165:18:1165:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1165:18:1165:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1165:26:1165:27 | x1 | | main.rs:1120:5:1121:19 | S | +| main.rs:1165:26:1165:27 | x1 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1165:26:1165:32 | x1.m1() | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1167:13:1167:14 | x2 | | main.rs:1120:5:1121:19 | S | +| main.rs:1167:13:1167:14 | x2 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1167:18:1167:22 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1167:18:1167:22 | S(...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1167:20:1167:21 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1169:9:1169:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1169:18:1169:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1169:18:1169:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1169:18:1169:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1169:18:1169:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1169:18:1169:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1169:26:1169:27 | x2 | | main.rs:1120:5:1121:19 | S | +| main.rs:1169:26:1169:27 | x2 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1169:26:1169:32 | x2.m2() | | {EXTERNAL LOCATION} | & | +| main.rs:1169:26:1169:32 | x2.m2() | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1170:9:1170:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1170:18:1170:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1170:18:1170:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1170:18:1170:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1170:18:1170:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1170:18:1170:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1170:26:1170:27 | x2 | | main.rs:1120:5:1121:19 | S | +| main.rs:1170:26:1170:27 | x2 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1170:26:1170:32 | x2.m3() | | {EXTERNAL LOCATION} | & | +| main.rs:1170:26:1170:32 | x2.m3() | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1172:13:1172:14 | x3 | | main.rs:1120:5:1121:19 | S | +| main.rs:1172:13:1172:14 | x3 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1172:18:1172:22 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1172:18:1172:22 | S(...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1172:20:1172:21 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1174:9:1174:42 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1174:18:1174:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1174:18:1174:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1174:18:1174:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1174:18:1174:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1174:18:1174:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1174:26:1174:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1174:26:1174:41 | ...::m2(...) | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1174:38:1174:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1174:38:1174:40 | &x3 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1174:38:1174:40 | &x3 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1174:39:1174:40 | x3 | | main.rs:1120:5:1121:19 | S | +| main.rs:1174:39:1174:40 | x3 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1175:9:1175:42 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1175:18:1175:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1175:18:1175:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1175:18:1175:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1175:18:1175:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1175:18:1175:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1175:26:1175:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1175:26:1175:41 | ...::m3(...) | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1175:38:1175:40 | &x3 | | {EXTERNAL LOCATION} | & | +| main.rs:1175:38:1175:40 | &x3 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1175:38:1175:40 | &x3 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1175:39:1175:40 | x3 | | main.rs:1120:5:1121:19 | S | +| main.rs:1175:39:1175:40 | x3 | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1177:13:1177:14 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1177:13:1177:14 | x4 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1177:13:1177:14 | x4 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1177:18:1177:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1177:18:1177:23 | &... | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1177:18:1177:23 | &... | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1177:19:1177:23 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1177:19:1177:23 | S(...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1177:21:1177:22 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1179:9:1179:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1179:18:1179:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1179:18:1179:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1179:18:1179:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1179:18:1179:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1179:18:1179:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1179:26:1179:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1179:26:1179:27 | x4 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1179:26:1179:27 | x4 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1179:26:1179:32 | x4.m2() | | {EXTERNAL LOCATION} | & | +| main.rs:1179:26:1179:32 | x4.m2() | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1180:9:1180:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1180:18:1180:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1180:18:1180:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1180:18:1180:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1180:18:1180:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1180:18:1180:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1180:26:1180:27 | x4 | | {EXTERNAL LOCATION} | & | +| main.rs:1180:26:1180:27 | x4 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1180:26:1180:27 | x4 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1180:26:1180:32 | x4.m3() | | {EXTERNAL LOCATION} | & | +| main.rs:1180:26:1180:32 | x4.m3() | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1182:13:1182:14 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1182:13:1182:14 | x5 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1182:13:1182:14 | x5 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1182:18:1182:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1182:18:1182:23 | &... | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1182:18:1182:23 | &... | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1182:19:1182:23 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1182:19:1182:23 | S(...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1182:21:1182:22 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1184:9:1184:33 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1184:18:1184:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1184:18:1184:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1184:18:1184:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1184:18:1184:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1184:18:1184:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1184:26:1184:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1184:26:1184:27 | x5 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1184:26:1184:27 | x5 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1184:26:1184:32 | x5.m1() | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1185:9:1185:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1185:18:1185:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1185:18:1185:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1185:18:1185:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1185:18:1185:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1185:18:1185:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1185:26:1185:27 | x5 | | {EXTERNAL LOCATION} | & | +| main.rs:1185:26:1185:27 | x5 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1185:26:1185:27 | x5 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1185:26:1185:29 | x5.0 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1187:13:1187:14 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1187:13:1187:14 | x6 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1187:13:1187:14 | x6 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1187:18:1187:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1187:18:1187:23 | &... | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1187:18:1187:23 | &... | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1187:19:1187:23 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1187:19:1187:23 | S(...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1187:21:1187:22 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1190:9:1190:36 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1190:18:1190:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1190:18:1190:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1190:18:1190:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1190:18:1190:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1190:18:1190:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1190:26:1190:27 | p1 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1190:26:1190:27 | p1 | Fst | main.rs:1153:5:1154:14 | S1 | -| main.rs:1190:26:1190:27 | p1 | Snd | main.rs:1156:5:1157:14 | S2 | -| main.rs:1193:13:1193:14 | p2 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1193:13:1193:14 | p2 | Fst | main.rs:1153:5:1154:14 | S1 | -| main.rs:1193:13:1193:14 | p2 | Snd | main.rs:1156:5:1157:14 | S2 | -| main.rs:1193:26:1193:47 | ...::PairNone(...) | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1193:26:1193:47 | ...::PairNone(...) | Fst | main.rs:1153:5:1154:14 | S1 | -| main.rs:1193:26:1193:47 | ...::PairNone(...) | Snd | main.rs:1156:5:1157:14 | S2 | -| main.rs:1194:9:1194:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1194:18:1194:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1194:18:1194:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1194:18:1194:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1194:18:1194:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1194:18:1194:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1194:26:1194:27 | p2 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1194:26:1194:27 | p2 | Fst | main.rs:1153:5:1154:14 | S1 | -| main.rs:1194:26:1194:27 | p2 | Snd | main.rs:1156:5:1157:14 | S2 | -| main.rs:1197:13:1197:14 | p3 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1197:13:1197:14 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1197:13:1197:14 | p3 | Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1197:34:1197:56 | ...::PairSnd(...) | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1197:34:1197:56 | ...::PairSnd(...) | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1197:34:1197:56 | ...::PairSnd(...) | Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1197:54:1197:55 | S3 | | main.rs:1159:5:1160:14 | S3 | -| main.rs:1198:9:1198:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1198:18:1198:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1198:18:1198:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1198:18:1198:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1198:18:1198:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1198:18:1198:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1198:26:1198:27 | p3 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1198:26:1198:27 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1198:26:1198:27 | p3 | Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1201:13:1201:14 | p3 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1201:13:1201:14 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1201:13:1201:14 | p3 | Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1201:35:1201:56 | ...::PairNone(...) | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1201:35:1201:56 | ...::PairNone(...) | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1201:35:1201:56 | ...::PairNone(...) | Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1202:9:1202:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1202:18:1202:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1202:18:1202:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1202:18:1202:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1202:18:1202:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1202:18:1202:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1202:26:1202:27 | p3 | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1202:26:1202:27 | p3 | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1202:26:1202:27 | p3 | Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1204:9:1204:55 | g(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1204:11:1204:54 | ...::PairSnd(...) | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1204:11:1204:54 | ...::PairSnd(...) | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1204:11:1204:54 | ...::PairSnd(...) | Snd | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1204:11:1204:54 | ...::PairSnd(...) | Snd.Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1204:11:1204:54 | ...::PairSnd(...) | Snd.Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1204:31:1204:53 | ...::PairSnd(...) | | main.rs:1134:5:1140:5 | PairOption | -| main.rs:1204:31:1204:53 | ...::PairSnd(...) | Fst | main.rs:1156:5:1157:14 | S2 | -| main.rs:1204:31:1204:53 | ...::PairSnd(...) | Snd | main.rs:1159:5:1160:14 | S3 | -| main.rs:1204:51:1204:52 | S3 | | main.rs:1159:5:1160:14 | S3 | -| main.rs:1206:13:1206:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1206:13:1206:13 | x | E | main.rs:1153:5:1154:14 | S1 | -| main.rs:1206:13:1206:13 | x | T | main.rs:1179:5:1179:34 | S4 | -| main.rs:1206:13:1206:13 | x | T.T41 | main.rs:1156:5:1157:14 | S2 | -| main.rs:1206:13:1206:13 | x | T.T42 | main.rs:1181:5:1181:22 | S5 | -| main.rs:1206:13:1206:13 | x | T.T42.T5 | main.rs:1156:5:1157:14 | S2 | -| main.rs:1219:16:1219:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1219:16:1219:24 | SelfParam | TRefMut | main.rs:1217:5:1224:5 | Self [trait MyTrait] | -| main.rs:1219:27:1219:31 | value | | main.rs:1217:19:1217:19 | S | -| main.rs:1221:21:1221:29 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1221:21:1221:29 | SelfParam | TRefMut | main.rs:1217:5:1224:5 | Self [trait MyTrait] | -| main.rs:1221:32:1221:36 | value | | main.rs:1217:19:1217:19 | S | -| main.rs:1221:42:1223:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1222:13:1222:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1222:13:1222:16 | self | TRefMut | main.rs:1217:5:1224:5 | Self [trait MyTrait] | -| main.rs:1222:13:1222:27 | self.set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1222:22:1222:26 | value | | main.rs:1217:19:1217:19 | S | -| main.rs:1228:16:1228:24 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1228:16:1228:24 | SelfParam | TRefMut | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1228:16:1228:24 | SelfParam | TRefMut.T | main.rs:1226:10:1226:10 | T | -| main.rs:1228:27:1228:31 | value | | main.rs:1226:10:1226:10 | T | -| main.rs:1228:37:1228:38 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1232:26:1234:9 | { ... } | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1232:26:1234:9 | { ... } | T | main.rs:1231:10:1231:10 | T | -| main.rs:1233:13:1233:30 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1233:13:1233:30 | ...::MyNone(...) | T | main.rs:1231:10:1231:10 | T | -| main.rs:1238:20:1238:23 | SelfParam | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1238:20:1238:23 | SelfParam | T | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1238:20:1238:23 | SelfParam | T.T | main.rs:1237:10:1237:10 | T | -| main.rs:1238:41:1243:9 | { ... } | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1238:41:1243:9 | { ... } | T | main.rs:1237:10:1237:10 | T | -| main.rs:1239:13:1242:13 | match self { ... } | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1239:13:1242:13 | match self { ... } | T | main.rs:1237:10:1237:10 | T | -| main.rs:1239:19:1239:22 | self | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1239:19:1239:22 | self | T | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1239:19:1239:22 | self | T.T | main.rs:1237:10:1237:10 | T | -| main.rs:1240:17:1240:34 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1240:17:1240:34 | ...::MyNone(...) | T | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1240:17:1240:34 | ...::MyNone(...) | T.T | main.rs:1237:10:1237:10 | T | -| main.rs:1240:39:1240:56 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1240:39:1240:56 | ...::MyNone(...) | T | main.rs:1237:10:1237:10 | T | -| main.rs:1241:17:1241:35 | ...::MySome(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1241:17:1241:35 | ...::MySome(...) | T | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1241:17:1241:35 | ...::MySome(...) | T.T | main.rs:1237:10:1237:10 | T | -| main.rs:1241:34:1241:34 | x | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1241:34:1241:34 | x | T | main.rs:1237:10:1237:10 | T | -| main.rs:1241:40:1241:40 | x | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1241:40:1241:40 | x | T | main.rs:1237:10:1237:10 | T | -| main.rs:1249:16:1294:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1250:13:1250:14 | x1 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1250:13:1250:14 | x1 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1250:18:1250:37 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1250:18:1250:37 | ...::new(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1251:9:1251:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1251:18:1251:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1251:18:1251:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1251:18:1251:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1251:18:1251:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1251:18:1251:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1251:26:1251:27 | x1 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1251:26:1251:27 | x1 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1253:17:1253:18 | x2 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1253:17:1253:18 | x2 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1253:22:1253:36 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1253:22:1253:36 | ...::new(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1254:9:1254:10 | x2 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1254:9:1254:10 | x2 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1254:9:1254:17 | x2.set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1254:16:1254:16 | S | | main.rs:1246:5:1247:13 | S | -| main.rs:1255:9:1255:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1255:18:1255:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1255:18:1255:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1255:18:1255:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1255:18:1255:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1255:18:1255:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1255:26:1255:27 | x2 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1255:26:1255:27 | x2 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1257:17:1257:18 | x3 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1257:17:1257:18 | x3 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1257:22:1257:36 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1257:22:1257:36 | ...::new(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1258:9:1258:10 | x3 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1258:9:1258:10 | x3 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1258:9:1258:22 | x3.call_set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1258:21:1258:21 | S | | main.rs:1246:5:1247:13 | S | -| main.rs:1259:9:1259:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1259:18:1259:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1259:18:1259:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1259:18:1259:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1259:18:1259:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1259:18:1259:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1259:26:1259:27 | x3 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1259:26:1259:27 | x3 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1261:17:1261:18 | x4 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1261:17:1261:18 | x4 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1261:22:1261:36 | ...::new(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1261:22:1261:36 | ...::new(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1262:9:1262:33 | ...::set(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1262:23:1262:29 | &mut x4 | | {EXTERNAL LOCATION} | &mut | -| main.rs:1262:23:1262:29 | &mut x4 | TRefMut | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1262:23:1262:29 | &mut x4 | TRefMut.T | main.rs:1246:5:1247:13 | S | -| main.rs:1262:28:1262:29 | x4 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1262:28:1262:29 | x4 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1262:32:1262:32 | S | | main.rs:1246:5:1247:13 | S | -| main.rs:1263:9:1263:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1263:18:1263:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1263:18:1263:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1263:18:1263:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1263:18:1263:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1263:18:1263:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1263:26:1263:27 | x4 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1263:26:1263:27 | x4 | T | main.rs:1246:5:1247:13 | S | -| main.rs:1265:13:1265:14 | x5 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1265:13:1265:14 | x5 | T | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1265:13:1265:14 | x5 | T.T | main.rs:1246:5:1247:13 | S | -| main.rs:1265:18:1265:58 | ...::MySome(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1265:18:1265:58 | ...::MySome(...) | T | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1265:18:1265:58 | ...::MySome(...) | T.T | main.rs:1246:5:1247:13 | S | -| main.rs:1265:35:1265:57 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1265:35:1265:57 | ...::MyNone(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1266:9:1266:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1266:18:1266:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1266:18:1266:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1266:18:1266:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1266:18:1266:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1266:18:1266:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1266:26:1266:27 | x5 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1266:26:1266:27 | x5 | T | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1266:26:1266:27 | x5 | T.T | main.rs:1246:5:1247:13 | S | -| main.rs:1266:26:1266:37 | x5.flatten() | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1266:26:1266:37 | x5.flatten() | T | main.rs:1246:5:1247:13 | S | -| main.rs:1268:13:1268:14 | x6 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1268:13:1268:14 | x6 | T | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1268:13:1268:14 | x6 | T.T | main.rs:1246:5:1247:13 | S | -| main.rs:1268:18:1268:58 | ...::MySome(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1268:18:1268:58 | ...::MySome(...) | T | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1268:18:1268:58 | ...::MySome(...) | T.T | main.rs:1246:5:1247:13 | S | -| main.rs:1268:35:1268:57 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1268:35:1268:57 | ...::MyNone(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1269:9:1269:62 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1269:18:1269:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1269:18:1269:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1269:18:1269:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1269:18:1269:61 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1269:18:1269:61 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1269:26:1269:61 | ...::flatten(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1269:26:1269:61 | ...::flatten(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1269:59:1269:60 | x6 | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1269:59:1269:60 | x6 | T | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1269:59:1269:60 | x6 | T.T | main.rs:1246:5:1247:13 | S | -| main.rs:1272:13:1272:19 | from_if | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1272:13:1272:19 | from_if | T | main.rs:1246:5:1247:13 | S | -| main.rs:1272:23:1276:9 | if ... {...} else {...} | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1272:23:1276:9 | if ... {...} else {...} | T | main.rs:1246:5:1247:13 | S | -| main.rs:1272:26:1272:26 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1272:26:1272:30 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1272:30:1272:30 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1272:32:1274:9 | { ... } | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1272:32:1274:9 | { ... } | T | main.rs:1246:5:1247:13 | S | -| main.rs:1273:13:1273:30 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1273:13:1273:30 | ...::MyNone(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1274:16:1276:9 | { ... } | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1274:16:1276:9 | { ... } | T | main.rs:1246:5:1247:13 | S | -| main.rs:1275:13:1275:31 | ...::MySome(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1275:13:1275:31 | ...::MySome(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1275:30:1275:30 | S | | main.rs:1246:5:1247:13 | S | -| main.rs:1277:9:1277:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1277:18:1277:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1277:18:1277:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1277:18:1277:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1277:18:1277:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1277:18:1277:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1277:26:1277:32 | from_if | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1277:26:1277:32 | from_if | T | main.rs:1246:5:1247:13 | S | -| main.rs:1280:13:1280:22 | from_match | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1280:13:1280:22 | from_match | T | main.rs:1246:5:1247:13 | S | -| main.rs:1280:26:1283:9 | match ... { ... } | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1280:26:1283:9 | match ... { ... } | T | main.rs:1246:5:1247:13 | S | -| main.rs:1280:32:1280:32 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1280:32:1280:36 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1280:36:1280:36 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1281:13:1281:16 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1281:21:1281:38 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1281:21:1281:38 | ...::MyNone(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1282:13:1282:17 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1282:22:1282:40 | ...::MySome(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1282:22:1282:40 | ...::MySome(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1282:39:1282:39 | S | | main.rs:1246:5:1247:13 | S | -| main.rs:1284:9:1284:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1284:18:1284:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1284:18:1284:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1284:18:1284:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1284:18:1284:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1284:18:1284:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1284:26:1284:35 | from_match | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1284:26:1284:35 | from_match | T | main.rs:1246:5:1247:13 | S | -| main.rs:1287:13:1287:21 | from_loop | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1287:13:1287:21 | from_loop | T | main.rs:1246:5:1247:13 | S | -| main.rs:1287:25:1292:9 | loop { ... } | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1287:25:1292:9 | loop { ... } | T | main.rs:1246:5:1247:13 | S | -| main.rs:1287:30:1292:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1288:13:1290:13 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1288:16:1288:16 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1288:16:1288:20 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1288:20:1288:20 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1288:22:1290:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1289:23:1289:40 | ...::MyNone(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1289:23:1289:40 | ...::MyNone(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1291:19:1291:37 | ...::MySome(...) | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1291:19:1291:37 | ...::MySome(...) | T | main.rs:1246:5:1247:13 | S | -| main.rs:1291:36:1291:36 | S | | main.rs:1246:5:1247:13 | S | -| main.rs:1293:9:1293:35 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1293:18:1293:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1293:18:1293:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1293:18:1293:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1293:18:1293:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1293:18:1293:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1293:26:1293:34 | from_loop | | main.rs:1211:5:1215:5 | MyOption | -| main.rs:1293:26:1293:34 | from_loop | T | main.rs:1246:5:1247:13 | S | -| main.rs:1311:15:1311:18 | SelfParam | | main.rs:1299:5:1300:19 | S | -| main.rs:1311:15:1311:18 | SelfParam | T | main.rs:1310:10:1310:10 | T | -| main.rs:1311:26:1313:9 | { ... } | | main.rs:1310:10:1310:10 | T | -| main.rs:1312:13:1312:16 | self | | main.rs:1299:5:1300:19 | S | -| main.rs:1312:13:1312:16 | self | T | main.rs:1310:10:1310:10 | T | -| main.rs:1312:13:1312:18 | self.0 | | main.rs:1310:10:1310:10 | T | -| main.rs:1315:15:1315:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1315:15:1315:19 | SelfParam | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1315:15:1315:19 | SelfParam | TRef.T | main.rs:1310:10:1310:10 | T | -| main.rs:1315:28:1317:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1315:28:1317:9 | { ... } | TRef | main.rs:1310:10:1310:10 | T | -| main.rs:1316:13:1316:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1316:13:1316:19 | &... | TRef | main.rs:1310:10:1310:10 | T | -| main.rs:1316:14:1316:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1316:14:1316:17 | self | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1316:14:1316:17 | self | TRef.T | main.rs:1310:10:1310:10 | T | -| main.rs:1316:14:1316:19 | self.0 | | main.rs:1310:10:1310:10 | T | -| main.rs:1319:15:1319:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1319:15:1319:25 | SelfParam | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1319:15:1319:25 | SelfParam | TRef.T | main.rs:1310:10:1310:10 | T | -| main.rs:1319:34:1321:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1319:34:1321:9 | { ... } | TRef | main.rs:1310:10:1310:10 | T | -| main.rs:1320:13:1320:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1320:13:1320:19 | &... | TRef | main.rs:1310:10:1310:10 | T | -| main.rs:1320:14:1320:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1320:14:1320:17 | self | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1320:14:1320:17 | self | TRef.T | main.rs:1310:10:1310:10 | T | -| main.rs:1320:14:1320:19 | self.0 | | main.rs:1310:10:1310:10 | T | -| main.rs:1325:29:1325:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1325:29:1325:33 | SelfParam | TRef | main.rs:1324:5:1327:5 | Self [trait ATrait] | -| main.rs:1326:33:1326:36 | SelfParam | | main.rs:1324:5:1327:5 | Self [trait ATrait] | -| main.rs:1332:29:1332:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1332:29:1332:33 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1332:29:1332:33 | SelfParam | TRef.TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1332:43:1334:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1333:13:1333:22 | (...) | | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1333:13:1333:24 | ... .a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1333:14:1333:21 | * ... | | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1333:15:1333:21 | (...) | | {EXTERNAL LOCATION} | & | -| main.rs:1333:15:1333:21 | (...) | TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1333:16:1333:20 | * ... | | {EXTERNAL LOCATION} | & | -| main.rs:1333:16:1333:20 | * ... | TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1333:17:1333:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1333:17:1333:20 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1333:17:1333:20 | self | TRef.TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1337:33:1337:36 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1337:33:1337:36 | SelfParam | TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1337:46:1339:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:1338:13:1338:19 | (...) | | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1338:13:1338:21 | ... .a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1338:14:1338:18 | * ... | | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1338:15:1338:18 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1338:15:1338:18 | self | TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1342:16:1392:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1343:13:1343:14 | x1 | | main.rs:1299:5:1300:19 | S | -| main.rs:1343:13:1343:14 | x1 | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1343:18:1343:22 | S(...) | | main.rs:1299:5:1300:19 | S | -| main.rs:1343:18:1343:22 | S(...) | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1343:20:1343:21 | S2 | | main.rs:1302:5:1303:14 | S2 | -| main.rs:1344:9:1344:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1344:18:1344:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1344:18:1344:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1344:18:1344:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1344:26:1344:27 | x1 | | main.rs:1299:5:1300:19 | S | -| main.rs:1344:26:1344:27 | x1 | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1344:26:1344:32 | x1.m1() | | main.rs:1302:5:1303:14 | S2 | -| main.rs:1346:13:1346:14 | x2 | | main.rs:1299:5:1300:19 | S | -| main.rs:1346:13:1346:14 | x2 | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1346:18:1346:22 | S(...) | | main.rs:1299:5:1300:19 | S | -| main.rs:1346:18:1346:22 | S(...) | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1346:20:1346:21 | S2 | | main.rs:1302:5:1303:14 | S2 | -| main.rs:1348:9:1348:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1348:18:1348:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1348:18:1348:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1348:18:1348:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1348:18:1348:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1348:18:1348:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1348:26:1348:27 | x2 | | main.rs:1299:5:1300:19 | S | -| main.rs:1348:26:1348:27 | x2 | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1348:26:1348:32 | x2.m2() | | {EXTERNAL LOCATION} | & | -| main.rs:1348:26:1348:32 | x2.m2() | TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1349:9:1349:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1349:18:1349:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1349:18:1349:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1349:18:1349:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1349:18:1349:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1349:18:1349:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1349:26:1349:27 | x2 | | main.rs:1299:5:1300:19 | S | -| main.rs:1349:26:1349:27 | x2 | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1349:26:1349:32 | x2.m3() | | {EXTERNAL LOCATION} | & | -| main.rs:1349:26:1349:32 | x2.m3() | TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1351:13:1351:14 | x3 | | main.rs:1299:5:1300:19 | S | -| main.rs:1351:13:1351:14 | x3 | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1351:18:1351:22 | S(...) | | main.rs:1299:5:1300:19 | S | -| main.rs:1351:18:1351:22 | S(...) | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1351:20:1351:21 | S2 | | main.rs:1302:5:1303:14 | S2 | -| main.rs:1353:9:1353:42 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1353:18:1353:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1353:18:1353:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1353:18:1353:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1353:18:1353:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1353:18:1353:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1353:26:1353:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1353:26:1353:41 | ...::m2(...) | TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1353:38:1353:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1353:38:1353:40 | &x3 | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1353:38:1353:40 | &x3 | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1353:39:1353:40 | x3 | | main.rs:1299:5:1300:19 | S | -| main.rs:1353:39:1353:40 | x3 | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1354:9:1354:42 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1354:18:1354:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1354:18:1354:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1354:18:1354:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1354:18:1354:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1354:18:1354:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1354:26:1354:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1354:26:1354:41 | ...::m3(...) | TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1354:38:1354:40 | &x3 | | {EXTERNAL LOCATION} | & | -| main.rs:1354:38:1354:40 | &x3 | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1354:38:1354:40 | &x3 | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1354:39:1354:40 | x3 | | main.rs:1299:5:1300:19 | S | -| main.rs:1354:39:1354:40 | x3 | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1356:13:1356:14 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1356:13:1356:14 | x4 | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1356:13:1356:14 | x4 | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1356:18:1356:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1356:18:1356:23 | &... | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1356:18:1356:23 | &... | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1356:19:1356:23 | S(...) | | main.rs:1299:5:1300:19 | S | -| main.rs:1356:19:1356:23 | S(...) | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1356:21:1356:22 | S2 | | main.rs:1302:5:1303:14 | S2 | -| main.rs:1358:9:1358:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1358:18:1358:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1358:18:1358:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1358:18:1358:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1358:18:1358:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1358:18:1358:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1358:26:1358:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1358:26:1358:27 | x4 | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1358:26:1358:27 | x4 | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1358:26:1358:32 | x4.m2() | | {EXTERNAL LOCATION} | & | -| main.rs:1358:26:1358:32 | x4.m2() | TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1359:9:1359:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1359:18:1359:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1359:18:1359:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1359:18:1359:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1359:18:1359:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1359:18:1359:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1359:26:1359:27 | x4 | | {EXTERNAL LOCATION} | & | -| main.rs:1359:26:1359:27 | x4 | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1359:26:1359:27 | x4 | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1359:26:1359:32 | x4.m3() | | {EXTERNAL LOCATION} | & | -| main.rs:1359:26:1359:32 | x4.m3() | TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1361:13:1361:14 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1361:13:1361:14 | x5 | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1361:13:1361:14 | x5 | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1361:18:1361:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1361:18:1361:23 | &... | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1361:18:1361:23 | &... | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1361:19:1361:23 | S(...) | | main.rs:1299:5:1300:19 | S | -| main.rs:1361:19:1361:23 | S(...) | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1361:21:1361:22 | S2 | | main.rs:1302:5:1303:14 | S2 | -| main.rs:1363:9:1363:33 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1363:18:1363:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1363:18:1363:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1363:18:1363:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1363:18:1363:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1363:18:1363:32 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1363:26:1363:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1363:26:1363:27 | x5 | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1363:26:1363:27 | x5 | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1363:26:1363:32 | x5.m1() | | main.rs:1302:5:1303:14 | S2 | -| main.rs:1364:9:1364:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1364:18:1364:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1364:18:1364:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1364:18:1364:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1364:18:1364:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1364:18:1364:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1364:26:1364:27 | x5 | | {EXTERNAL LOCATION} | & | -| main.rs:1364:26:1364:27 | x5 | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1364:26:1364:27 | x5 | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1364:26:1364:29 | x5.0 | | main.rs:1302:5:1303:14 | S2 | -| main.rs:1366:13:1366:14 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1366:13:1366:14 | x6 | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1366:13:1366:14 | x6 | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1366:18:1366:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1366:18:1366:23 | &... | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1366:18:1366:23 | &... | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1366:19:1366:23 | S(...) | | main.rs:1299:5:1300:19 | S | -| main.rs:1366:19:1366:23 | S(...) | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1366:21:1366:22 | S2 | | main.rs:1302:5:1303:14 | S2 | -| main.rs:1369:9:1369:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1369:18:1369:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1369:18:1369:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1369:18:1369:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1369:18:1369:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1369:18:1369:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1369:26:1369:30 | (...) | | main.rs:1299:5:1300:19 | S | -| main.rs:1369:26:1369:30 | (...) | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1369:26:1369:35 | ... .m1() | | main.rs:1302:5:1303:14 | S2 | -| main.rs:1369:27:1369:29 | * ... | | main.rs:1299:5:1300:19 | S | -| main.rs:1369:27:1369:29 | * ... | T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1369:28:1369:29 | x6 | | {EXTERNAL LOCATION} | & | -| main.rs:1369:28:1369:29 | x6 | TRef | main.rs:1299:5:1300:19 | S | -| main.rs:1369:28:1369:29 | x6 | TRef.T | main.rs:1302:5:1303:14 | S2 | -| main.rs:1371:13:1371:14 | x7 | | main.rs:1299:5:1300:19 | S | -| main.rs:1371:13:1371:14 | x7 | T | {EXTERNAL LOCATION} | & | -| main.rs:1371:13:1371:14 | x7 | T.TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1371:18:1371:23 | S(...) | | main.rs:1299:5:1300:19 | S | -| main.rs:1371:18:1371:23 | S(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:1371:18:1371:23 | S(...) | T.TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1371:20:1371:22 | &S2 | | {EXTERNAL LOCATION} | & | -| main.rs:1371:20:1371:22 | &S2 | TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1371:21:1371:22 | S2 | | main.rs:1302:5:1303:14 | S2 | -| main.rs:1374:13:1374:13 | t | | {EXTERNAL LOCATION} | & | -| main.rs:1374:13:1374:13 | t | TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1374:17:1374:18 | x7 | | main.rs:1299:5:1300:19 | S | -| main.rs:1374:17:1374:18 | x7 | T | {EXTERNAL LOCATION} | & | -| main.rs:1374:17:1374:18 | x7 | T.TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1374:17:1374:23 | x7.m1() | | {EXTERNAL LOCATION} | & | -| main.rs:1374:17:1374:23 | x7.m1() | TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1375:9:1375:28 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1375:18:1375:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1375:18:1375:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1375:18:1375:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1375:18:1375:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1375:18:1375:27 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1375:26:1375:27 | x7 | | main.rs:1299:5:1300:19 | S | -| main.rs:1375:26:1375:27 | x7 | T | {EXTERNAL LOCATION} | & | -| main.rs:1375:26:1375:27 | x7 | T.TRef | main.rs:1302:5:1303:14 | S2 | -| main.rs:1377:13:1377:14 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1377:26:1377:32 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1377:26:1377:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1377:26:1377:44 | "Hello".to_string() | | {EXTERNAL LOCATION} | String | -| main.rs:1381:13:1381:13 | u | | {EXTERNAL LOCATION} | Result | -| main.rs:1381:13:1381:13 | u | T | {EXTERNAL LOCATION} | u32 | -| main.rs:1381:17:1381:18 | x9 | | {EXTERNAL LOCATION} | String | -| main.rs:1381:17:1381:33 | x9.parse() | | {EXTERNAL LOCATION} | Result | -| main.rs:1381:17:1381:33 | x9.parse() | T | {EXTERNAL LOCATION} | u32 | -| main.rs:1383:13:1383:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1383:13:1383:20 | my_thing | TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1383:24:1383:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1383:24:1383:39 | &... | TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1383:25:1383:39 | MyInt {...} | | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1383:36:1383:37 | 37 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1385:13:1385:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1385:17:1385:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1385:17:1385:24 | my_thing | TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1385:17:1385:43 | my_thing.method_on_borrow() | | {EXTERNAL LOCATION} | i64 | -| main.rs:1386:9:1386:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1386:18:1386:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1386:18:1386:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1386:18:1386:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1386:18:1386:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1386:18:1386:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1386:26:1386:26 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1389:13:1389:20 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1389:13:1389:20 | my_thing | TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1389:24:1389:39 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1389:24:1389:39 | &... | TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1389:25:1389:39 | MyInt {...} | | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1389:36:1389:37 | 38 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1390:13:1390:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1390:17:1390:24 | my_thing | | {EXTERNAL LOCATION} | & | -| main.rs:1390:17:1390:24 | my_thing | TRef | main.rs:1305:5:1308:5 | MyInt | -| main.rs:1390:17:1390:47 | my_thing.method_not_on_borrow() | | {EXTERNAL LOCATION} | i64 | -| main.rs:1391:9:1391:27 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1391:18:1391:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1391:18:1391:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1391:18:1391:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1391:18:1391:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1391:18:1391:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1391:26:1391:26 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:1398:16:1398:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1398:16:1398:20 | SelfParam | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | -| main.rs:1401:16:1401:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1401:16:1401:20 | SelfParam | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | -| main.rs:1401:32:1403:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1401:32:1403:9 | { ... } | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | -| main.rs:1402:13:1402:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1402:13:1402:16 | self | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | -| main.rs:1402:13:1402:22 | self.foo() | | {EXTERNAL LOCATION} | & | -| main.rs:1402:13:1402:22 | self.foo() | TRef | main.rs:1396:5:1404:5 | Self [trait MyTrait] | -| main.rs:1410:16:1410:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1410:16:1410:20 | SelfParam | TRef | main.rs:1406:5:1406:20 | MyStruct | -| main.rs:1410:36:1412:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1410:36:1412:9 | { ... } | TRef | main.rs:1406:5:1406:20 | MyStruct | -| main.rs:1411:13:1411:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1411:13:1411:16 | self | TRef | main.rs:1406:5:1406:20 | MyStruct | -| main.rs:1415:16:1418:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1416:13:1416:13 | x | | main.rs:1406:5:1406:20 | MyStruct | -| main.rs:1416:17:1416:24 | MyStruct | | main.rs:1406:5:1406:20 | MyStruct | -| main.rs:1417:9:1417:9 | x | | main.rs:1406:5:1406:20 | MyStruct | -| main.rs:1417:9:1417:15 | x.bar() | | {EXTERNAL LOCATION} | & | -| main.rs:1417:9:1417:15 | x.bar() | TRef | main.rs:1406:5:1406:20 | MyStruct | -| main.rs:1427:16:1427:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1427:16:1427:20 | SelfParam | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1427:16:1427:20 | SelfParam | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1427:32:1429:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1427:32:1429:9 | { ... } | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1427:32:1429:9 | { ... } | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1428:13:1428:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1428:13:1428:16 | self | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1428:13:1428:16 | self | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1431:16:1431:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1431:16:1431:20 | SelfParam | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1431:16:1431:20 | SelfParam | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1431:23:1431:23 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1431:23:1431:23 | x | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1431:23:1431:23 | x | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1431:42:1433:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1431:42:1433:9 | { ... } | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1431:42:1433:9 | { ... } | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1432:13:1432:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1432:13:1432:16 | self | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1432:13:1432:16 | self | TRef.T | main.rs:1426:10:1426:10 | T | -| main.rs:1436:16:1442:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1437:13:1437:13 | x | | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1437:13:1437:13 | x | T | main.rs:1422:5:1422:13 | S | -| main.rs:1437:17:1437:27 | MyStruct(...) | | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1437:17:1437:27 | MyStruct(...) | T | main.rs:1422:5:1422:13 | S | -| main.rs:1437:26:1437:26 | S | | main.rs:1422:5:1422:13 | S | -| main.rs:1438:9:1438:9 | x | | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1438:9:1438:9 | x | T | main.rs:1422:5:1422:13 | S | -| main.rs:1438:9:1438:15 | x.foo() | | {EXTERNAL LOCATION} | & | -| main.rs:1438:9:1438:15 | x.foo() | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1438:9:1438:15 | x.foo() | TRef.T | main.rs:1422:5:1422:13 | S | -| main.rs:1439:13:1439:13 | x | | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1439:13:1439:13 | x | T | main.rs:1422:5:1422:13 | S | -| main.rs:1439:17:1439:27 | MyStruct(...) | | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1439:17:1439:27 | MyStruct(...) | T | main.rs:1422:5:1422:13 | S | -| main.rs:1439:26:1439:26 | S | | main.rs:1422:5:1422:13 | S | -| main.rs:1441:9:1441:9 | x | | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1441:9:1441:9 | x | T | main.rs:1422:5:1422:13 | S | -| main.rs:1441:9:1441:18 | x.bar(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1441:9:1441:18 | x.bar(...) | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1441:9:1441:18 | x.bar(...) | TRef.T | main.rs:1422:5:1422:13 | S | -| main.rs:1441:15:1441:17 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1441:15:1441:17 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1441:15:1441:17 | &... | TRef.TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1441:15:1441:17 | &... | TRef.TRef.T | main.rs:1422:5:1422:13 | S | -| main.rs:1441:16:1441:17 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1441:16:1441:17 | &x | TRef | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1441:16:1441:17 | &x | TRef.T | main.rs:1422:5:1422:13 | S | -| main.rs:1441:17:1441:17 | x | | main.rs:1424:5:1424:26 | MyStruct | -| main.rs:1441:17:1441:17 | x | T | main.rs:1422:5:1422:13 | S | -| main.rs:1452:17:1452:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1452:17:1452:25 | SelfParam | TRefMut | main.rs:1446:5:1449:5 | MyFlag | -| main.rs:1452:28:1454:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1453:13:1453:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1453:13:1453:16 | self | TRefMut | main.rs:1446:5:1449:5 | MyFlag | -| main.rs:1453:13:1453:21 | self.bool | | {EXTERNAL LOCATION} | bool | -| main.rs:1453:13:1453:34 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:1453:25:1453:34 | ! ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1453:26:1453:29 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1453:26:1453:29 | self | TRefMut | main.rs:1446:5:1449:5 | MyFlag | -| main.rs:1453:26:1453:34 | self.bool | | {EXTERNAL LOCATION} | bool | -| main.rs:1460:15:1460:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1460:15:1460:19 | SelfParam | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1460:31:1462:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1460:31:1462:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1461:13:1461:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1461:13:1461:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1461:13:1461:19 | &... | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1461:13:1461:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1461:13:1461:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1461:13:1461:19 | &... | TRef.TRef.TRef.TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1461:14:1461:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1461:14:1461:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1461:14:1461:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1461:14:1461:19 | &... | TRef.TRef.TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1461:15:1461:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1461:15:1461:19 | &self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1461:15:1461:19 | &self | TRef.TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1461:16:1461:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1461:16:1461:19 | self | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1464:15:1464:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1464:15:1464:25 | SelfParam | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1464:37:1466:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1464:37:1466:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1465:13:1465:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1465:13:1465:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1465:13:1465:19 | &... | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1465:13:1465:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1465:13:1465:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1465:13:1465:19 | &... | TRef.TRef.TRef.TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1465:14:1465:19 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1465:14:1465:19 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1465:14:1465:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1465:14:1465:19 | &... | TRef.TRef.TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1465:15:1465:19 | &self | | {EXTERNAL LOCATION} | & | -| main.rs:1465:15:1465:19 | &self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1465:15:1465:19 | &self | TRef.TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1465:16:1465:19 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1465:16:1465:19 | self | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1468:15:1468:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1468:15:1468:15 | x | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1468:34:1470:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1468:34:1470:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1469:13:1469:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1469:13:1469:13 | x | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1472:15:1472:15 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1472:15:1472:15 | x | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1472:34:1474:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1472:34:1474:9 | { ... } | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1473:13:1473:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1473:13:1473:16 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1473:13:1473:16 | &... | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1473:13:1473:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1473:13:1473:16 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1473:13:1473:16 | &... | TRef.TRef.TRef.TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1473:14:1473:16 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1473:14:1473:16 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1473:14:1473:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | -| main.rs:1473:14:1473:16 | &... | TRef.TRef.TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1473:15:1473:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1473:15:1473:16 | &x | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1473:15:1473:16 | &x | TRef.TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1473:16:1473:16 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1473:16:1473:16 | x | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1477:16:1490:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1478:13:1478:13 | x | | main.rs:1457:5:1457:13 | S | -| main.rs:1478:17:1478:20 | S {...} | | main.rs:1457:5:1457:13 | S | -| main.rs:1479:9:1479:9 | x | | main.rs:1457:5:1457:13 | S | -| main.rs:1479:9:1479:14 | x.f1() | | {EXTERNAL LOCATION} | & | -| main.rs:1479:9:1479:14 | x.f1() | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1480:9:1480:9 | x | | main.rs:1457:5:1457:13 | S | -| main.rs:1480:9:1480:14 | x.f2() | | {EXTERNAL LOCATION} | & | -| main.rs:1480:9:1480:14 | x.f2() | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1481:9:1481:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1481:9:1481:17 | ...::f3(...) | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1481:15:1481:16 | &x | | {EXTERNAL LOCATION} | & | -| main.rs:1481:15:1481:16 | &x | TRef | main.rs:1457:5:1457:13 | S | -| main.rs:1481:16:1481:16 | x | | main.rs:1457:5:1457:13 | S | -| main.rs:1483:13:1483:13 | n | | {EXTERNAL LOCATION} | bool | -| main.rs:1483:17:1483:24 | * ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1483:18:1483:24 | * ... | | {EXTERNAL LOCATION} | & | -| main.rs:1483:18:1483:24 | * ... | TRef | {EXTERNAL LOCATION} | bool | -| main.rs:1483:19:1483:24 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1483:19:1483:24 | &... | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1483:19:1483:24 | &... | TRef.TRef | {EXTERNAL LOCATION} | bool | -| main.rs:1483:20:1483:24 | &true | | {EXTERNAL LOCATION} | & | -| main.rs:1483:20:1483:24 | &true | TRef | {EXTERNAL LOCATION} | bool | -| main.rs:1483:21:1483:24 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1487:17:1487:20 | flag | | main.rs:1446:5:1449:5 | MyFlag | -| main.rs:1487:24:1487:41 | ...::default(...) | | main.rs:1446:5:1449:5 | MyFlag | -| main.rs:1488:9:1488:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1488:22:1488:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | -| main.rs:1488:22:1488:30 | &mut flag | TRefMut | main.rs:1446:5:1449:5 | MyFlag | -| main.rs:1488:27:1488:30 | flag | | main.rs:1446:5:1449:5 | MyFlag | -| main.rs:1489:9:1489:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1489:18:1489:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1489:18:1489:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1489:18:1489:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1489:18:1489:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1489:18:1489:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1489:26:1489:29 | flag | | main.rs:1446:5:1449:5 | MyFlag | -| main.rs:1504:43:1507:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1504:43:1507:5 | { ... } | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1504:43:1507:5 | { ... } | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1505:13:1505:13 | x | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1505:17:1505:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1505:17:1505:30 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1505:17:1505:31 | TryExpr | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1505:28:1505:29 | S1 | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1506:9:1506:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1506:9:1506:22 | ...::Ok(...) | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1506:9:1506:22 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1506:20:1506:21 | S1 | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1511:46:1515:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1511:46:1515:5 | { ... } | E | main.rs:1499:5:1500:14 | S2 | -| main.rs:1511:46:1515:5 | { ... } | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1512:13:1512:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1512:13:1512:13 | x | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1512:17:1512:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1512:17:1512:30 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1512:28:1512:29 | S1 | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1513:13:1513:13 | y | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1513:17:1513:17 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1513:17:1513:17 | x | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1513:17:1513:18 | TryExpr | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1514:9:1514:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1514:9:1514:22 | ...::Ok(...) | E | main.rs:1499:5:1500:14 | S2 | -| main.rs:1514:9:1514:22 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1514:20:1514:21 | S1 | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1519:40:1524:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1519:40:1524:5 | { ... } | E | main.rs:1499:5:1500:14 | S2 | -| main.rs:1519:40:1524:5 | { ... } | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1520:13:1520:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1520:13:1520:13 | x | T | {EXTERNAL LOCATION} | Result | -| main.rs:1520:13:1520:13 | x | T.T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1520:17:1520:42 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1520:17:1520:42 | ...::Ok(...) | T | {EXTERNAL LOCATION} | Result | -| main.rs:1520:17:1520:42 | ...::Ok(...) | T.T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1520:28:1520:41 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1520:28:1520:41 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1520:39:1520:40 | S1 | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1522:17:1522:17 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:1522:17:1522:17 | x | T | {EXTERNAL LOCATION} | Result | -| main.rs:1522:17:1522:17 | x | T.T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1522:17:1522:18 | TryExpr | | {EXTERNAL LOCATION} | Result | -| main.rs:1522:17:1522:18 | TryExpr | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1522:17:1522:29 | ... .map(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1522:24:1522:28 | \|...\| s | | {EXTERNAL LOCATION} | dyn Fn | -| main.rs:1522:24:1522:28 | \|...\| s | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| main.rs:1523:9:1523:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1523:9:1523:22 | ...::Ok(...) | E | main.rs:1499:5:1500:14 | S2 | -| main.rs:1523:9:1523:22 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1523:20:1523:21 | S1 | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1528:30:1528:34 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1528:30:1528:34 | input | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1528:30:1528:34 | input | T | main.rs:1528:20:1528:27 | T | -| main.rs:1528:69:1535:5 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1528:69:1535:5 | { ... } | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1528:69:1535:5 | { ... } | T | main.rs:1528:20:1528:27 | T | -| main.rs:1529:13:1529:17 | value | | main.rs:1528:20:1528:27 | T | -| main.rs:1529:21:1529:25 | input | | {EXTERNAL LOCATION} | Result | -| main.rs:1529:21:1529:25 | input | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1529:21:1529:25 | input | T | main.rs:1528:20:1528:27 | T | -| main.rs:1529:21:1529:26 | TryExpr | | main.rs:1528:20:1528:27 | T | -| main.rs:1530:22:1530:38 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1530:22:1530:38 | ...::Ok(...) | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1530:22:1530:38 | ...::Ok(...) | T | main.rs:1528:20:1528:27 | T | -| main.rs:1530:22:1533:10 | ... .and_then(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1530:22:1533:10 | ... .and_then(...) | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1530:33:1530:37 | value | | main.rs:1528:20:1528:27 | T | -| main.rs:1530:49:1533:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | -| main.rs:1530:49:1533:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| main.rs:1530:49:1533:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | Result | -| main.rs:1530:49:1533:9 | \|...\| ... | dyn(Output).E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1530:53:1533:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:1530:53:1533:9 | { ... } | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1531:13:1531:31 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1531:22:1531:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1531:22:1531:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1531:22:1531:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1531:22:1531:30 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1531:22:1531:30 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1532:13:1532:34 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1532:13:1532:34 | ...::Ok::<...>(...) | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1534:9:1534:23 | ...::Err(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1534:9:1534:23 | ...::Err(...) | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1534:9:1534:23 | ...::Err(...) | T | main.rs:1528:20:1528:27 | T | -| main.rs:1534:21:1534:22 | S1 | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1538:16:1554:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1539:9:1541:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1539:16:1539:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1539:16:1539:33 | ...::Ok(...) | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1539:16:1539:33 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1539:27:1539:32 | result | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1539:37:1539:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1539:37:1539:52 | try_same_error(...) | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1539:37:1539:52 | try_same_error(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1539:54:1541:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1540:13:1540:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1540:22:1540:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1540:22:1540:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1540:22:1540:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1540:22:1540:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1540:22:1540:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1540:30:1540:35 | result | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1543:9:1545:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1543:16:1543:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1543:16:1543:33 | ...::Ok(...) | E | main.rs:1499:5:1500:14 | S2 | -| main.rs:1543:16:1543:33 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1543:27:1543:32 | result | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1543:37:1543:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1543:37:1543:55 | try_convert_error(...) | E | main.rs:1499:5:1500:14 | S2 | -| main.rs:1543:37:1543:55 | try_convert_error(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1543:57:1545:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1544:13:1544:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1544:22:1544:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1544:22:1544:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1544:22:1544:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1544:22:1544:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1544:22:1544:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1544:30:1544:35 | result | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1547:9:1549:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1547:16:1547:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1547:16:1547:33 | ...::Ok(...) | E | main.rs:1499:5:1500:14 | S2 | -| main.rs:1547:16:1547:33 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1547:27:1547:32 | result | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1547:37:1547:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1547:37:1547:49 | try_chained(...) | E | main.rs:1499:5:1500:14 | S2 | -| main.rs:1547:37:1547:49 | try_chained(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1547:51:1549:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1548:13:1548:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1548:22:1548:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1548:22:1548:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1548:22:1548:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1548:22:1548:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1548:22:1548:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1548:30:1548:35 | result | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1551:9:1553:9 | if ... {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1551:16:1551:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1551:16:1551:33 | ...::Ok(...) | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1551:16:1551:33 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1551:27:1551:32 | result | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1551:37:1551:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1551:37:1551:63 | try_complex(...) | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1551:37:1551:63 | try_complex(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1551:49:1551:62 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:1551:49:1551:62 | ...::Ok(...) | E | main.rs:1496:5:1497:14 | S1 | -| main.rs:1551:49:1551:62 | ...::Ok(...) | T | main.rs:1496:5:1497:14 | S1 | -| main.rs:1551:60:1551:61 | S1 | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1551:65:1553:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1552:13:1552:36 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:1552:22:1552:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:1552:22:1552:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1552:22:1552:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:1552:22:1552:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1552:22:1552:35 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1552:30:1552:35 | result | | main.rs:1496:5:1497:14 | S1 | -| main.rs:1558:16:1649:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1559:13:1559:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1559:22:1559:22 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1560:13:1560:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:1560:17:1560:17 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1561:13:1561:13 | z | | {EXTERNAL LOCATION} | i32 | -| main.rs:1561:17:1561:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1561:17:1561:21 | ... + ... | | {EXTERNAL LOCATION} | i32 | -| main.rs:1561:21:1561:21 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:1562:13:1562:13 | z | | {EXTERNAL LOCATION} | i32 | -| main.rs:1562:17:1562:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1562:17:1562:23 | x.abs() | | {EXTERNAL LOCATION} | i32 | -| main.rs:1563:13:1563:13 | c | | {EXTERNAL LOCATION} | char | -| main.rs:1563:17:1563:19 | 'c' | | {EXTERNAL LOCATION} | char | -| main.rs:1564:13:1564:17 | hello | | {EXTERNAL LOCATION} | & | -| main.rs:1564:13:1564:17 | hello | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1564:21:1564:27 | "Hello" | | {EXTERNAL LOCATION} | & | -| main.rs:1564:21:1564:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:1565:13:1565:13 | f | | {EXTERNAL LOCATION} | f64 | -| main.rs:1565:17:1565:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | -| main.rs:1566:13:1566:13 | t | | {EXTERNAL LOCATION} | bool | -| main.rs:1566:17:1566:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1567:13:1567:13 | f | | {EXTERNAL LOCATION} | bool | -| main.rs:1567:17:1567:21 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1570:26:1570:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1570:26:1570:30 | SelfParam | TRef | main.rs:1569:9:1573:9 | Self [trait MyTrait] | -| main.rs:1576:26:1576:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1576:26:1576:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1576:26:1576:30 | SelfParam | TRef.TArray | main.rs:1575:14:1575:23 | T | -| main.rs:1576:39:1578:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1576:39:1578:13 | { ... } | TRef | main.rs:1575:14:1575:23 | T | -| main.rs:1577:17:1577:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1577:17:1577:20 | self | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1577:17:1577:20 | self | TRef.TArray | main.rs:1575:14:1575:23 | T | -| main.rs:1577:17:1577:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | -| main.rs:1577:17:1577:36 | ... .unwrap() | TRef | main.rs:1575:14:1575:23 | T | -| main.rs:1577:26:1577:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1580:31:1582:13 | { ... } | | main.rs:1575:14:1575:23 | T | -| main.rs:1581:17:1581:28 | ...::default(...) | | main.rs:1575:14:1575:23 | T | -| main.rs:1585:13:1585:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1585:13:1585:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:17:1585:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1585:17:1585:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:17:1585:37 | ... .my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1585:17:1585:37 | ... .my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:18:1585:18 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:21:1585:21 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1585:24:1585:24 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:13:1586:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1586:13:1586:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:17:1586:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1586:17:1586:47 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:22:1586:22 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:37:1586:46 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1586:37:1586:46 | &... | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1586:37:1586:46 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:38:1586:46 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1586:38:1586:46 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:39:1586:39 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:42:1586:42 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1586:45:1586:45 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1587:13:1587:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1587:17:1587:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1587:24:1587:24 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1590:26:1590:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1590:26:1590:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1590:26:1590:30 | SelfParam | TRef.TSlice | main.rs:1589:14:1589:23 | T | -| main.rs:1590:39:1592:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1590:39:1592:13 | { ... } | TRef | main.rs:1589:14:1589:23 | T | -| main.rs:1591:17:1591:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1591:17:1591:20 | self | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1591:17:1591:20 | self | TRef.TSlice | main.rs:1589:14:1589:23 | T | -| main.rs:1591:17:1591:27 | self.get(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:1591:17:1591:27 | self.get(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:1591:17:1591:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | -| main.rs:1591:17:1591:36 | ... .unwrap() | TRef | main.rs:1589:14:1589:23 | T | -| main.rs:1591:26:1591:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1594:31:1596:13 | { ... } | | main.rs:1589:14:1589:23 | T | -| main.rs:1595:17:1595:28 | ...::default(...) | | main.rs:1589:14:1589:23 | T | -| main.rs:1599:13:1599:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1599:13:1599:13 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1599:13:1599:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:25:1599:34 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1599:25:1599:34 | &... | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1599:25:1599:34 | &... | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:1599:25:1599:34 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:25:1599:34 | &... | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:26:1599:34 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:1599:26:1599:34 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:27:1599:27 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:30:1599:30 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1599:33:1599:33 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1600:13:1600:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1600:13:1600:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1600:17:1600:17 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1600:17:1600:17 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1600:17:1600:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1600:17:1600:29 | s.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1600:17:1600:29 | s.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1601:13:1601:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1601:13:1601:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1601:17:1601:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1601:17:1601:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1601:34:1601:34 | s | | {EXTERNAL LOCATION} | & | -| main.rs:1601:34:1601:34 | s | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:1601:34:1601:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | -| main.rs:1602:13:1602:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1602:17:1602:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1605:26:1605:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1605:26:1605:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1605:26:1605:30 | SelfParam | TRef.T0 | main.rs:1604:14:1604:23 | T | -| main.rs:1605:26:1605:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1605:39:1607:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1605:39:1607:13 | { ... } | TRef | main.rs:1604:14:1604:23 | T | -| main.rs:1606:17:1606:23 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1606:17:1606:23 | &... | TRef | main.rs:1604:14:1604:23 | T | -| main.rs:1606:18:1606:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1606:18:1606:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1606:18:1606:21 | self | TRef.T0 | main.rs:1604:14:1604:23 | T | -| main.rs:1606:18:1606:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1606:18:1606:23 | self.0 | | main.rs:1604:14:1604:23 | T | -| main.rs:1609:31:1611:13 | { ... } | | main.rs:1604:14:1604:23 | T | -| main.rs:1610:17:1610:28 | ...::default(...) | | main.rs:1604:14:1604:23 | T | -| main.rs:1614:13:1614:13 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1614:13:1614:13 | p | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:13:1614:13 | p | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:17:1614:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1614:17:1614:23 | TupleExpr | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:17:1614:23 | TupleExpr | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:18:1614:19 | 42 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1614:22:1614:22 | 7 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1615:13:1615:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1615:13:1615:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1615:17:1615:17 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1615:17:1615:17 | p | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1615:17:1615:17 | p | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1615:17:1615:29 | p.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1615:17:1615:29 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:13:1616:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1616:13:1616:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:17:1616:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1616:17:1616:39 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:37:1616:38 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1616:37:1616:38 | &p | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1616:37:1616:38 | &p | TRef.T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:37:1616:38 | &p | TRef.T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:38:1616:38 | p | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:1616:38:1616:38 | p | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:1616:38:1616:38 | p | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:1617:13:1617:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1617:17:1617:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1620:26:1620:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1620:26:1620:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1620:26:1620:30 | SelfParam | TRef.TRef | main.rs:1619:14:1619:23 | T | -| main.rs:1620:39:1622:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1620:39:1622:13 | { ... } | TRef | main.rs:1619:14:1619:23 | T | -| main.rs:1621:17:1621:21 | * ... | | {EXTERNAL LOCATION} | & | -| main.rs:1621:17:1621:21 | * ... | TRef | main.rs:1619:14:1619:23 | T | -| main.rs:1621:18:1621:21 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1621:18:1621:21 | self | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1621:18:1621:21 | self | TRef.TRef | main.rs:1619:14:1619:23 | T | -| main.rs:1624:31:1626:13 | { ... } | | main.rs:1619:14:1619:23 | T | -| main.rs:1625:17:1625:28 | ...::default(...) | | main.rs:1619:14:1619:23 | T | -| main.rs:1629:13:1629:13 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1629:13:1629:13 | r | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1629:17:1629:19 | &42 | | {EXTERNAL LOCATION} | & | -| main.rs:1629:17:1629:19 | &42 | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1629:18:1629:19 | 42 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1630:13:1630:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1630:13:1630:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1630:17:1630:17 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1630:17:1630:17 | r | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1630:17:1630:29 | r.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1630:17:1630:29 | r.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1631:13:1631:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1631:13:1631:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1631:17:1631:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1631:17:1631:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1631:33:1631:34 | &r | | {EXTERNAL LOCATION} | & | -| main.rs:1631:33:1631:34 | &r | TRef | {EXTERNAL LOCATION} | & | -| main.rs:1631:33:1631:34 | &r | TRef.TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1631:34:1631:34 | r | | {EXTERNAL LOCATION} | & | -| main.rs:1631:34:1631:34 | r | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1632:13:1632:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1632:17:1632:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1635:26:1635:30 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1635:26:1635:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1635:26:1635:30 | SelfParam | TRef.TPtrMut | main.rs:1634:14:1634:23 | T | -| main.rs:1635:39:1637:13 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1635:39:1637:13 | { ... } | TRef | main.rs:1634:14:1634:23 | T | -| main.rs:1636:17:1636:34 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1636:17:1636:34 | { ... } | TRef | main.rs:1634:14:1634:23 | T | -| main.rs:1636:26:1636:32 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1636:26:1636:32 | &... | TRef | main.rs:1634:14:1634:23 | T | -| main.rs:1636:27:1636:32 | * ... | | main.rs:1634:14:1634:23 | T | -| main.rs:1636:28:1636:32 | * ... | | {EXTERNAL LOCATION} | *mut | -| main.rs:1636:28:1636:32 | * ... | TPtrMut | main.rs:1634:14:1634:23 | T | -| main.rs:1636:29:1636:32 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1636:29:1636:32 | self | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1636:29:1636:32 | self | TRef.TPtrMut | main.rs:1634:14:1634:23 | T | -| main.rs:1639:31:1641:13 | { ... } | | main.rs:1634:14:1634:23 | T | -| main.rs:1640:17:1640:28 | ...::default(...) | | main.rs:1634:14:1634:23 | T | -| main.rs:1644:17:1644:17 | v | | {EXTERNAL LOCATION} | i32 | -| main.rs:1644:21:1644:22 | 42 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1645:13:1645:13 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1645:13:1645:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1645:27:1645:32 | &mut v | | {EXTERNAL LOCATION} | &mut | -| main.rs:1645:27:1645:32 | &mut v | TRefMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1645:32:1645:32 | v | | {EXTERNAL LOCATION} | i32 | -| main.rs:1646:13:1646:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1646:13:1646:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1646:17:1646:40 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1646:17:1646:40 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1646:26:1646:26 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1646:26:1646:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1646:26:1646:38 | p.my_method() | | {EXTERNAL LOCATION} | & | -| main.rs:1646:26:1646:38 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1647:13:1647:13 | x | | {EXTERNAL LOCATION} | & | -| main.rs:1647:13:1647:13 | x | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1647:17:1647:50 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:1647:17:1647:50 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1647:26:1647:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | -| main.rs:1647:26:1647:48 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:1647:46:1647:47 | &p | | {EXTERNAL LOCATION} | & | -| main.rs:1647:46:1647:47 | &p | TRef | {EXTERNAL LOCATION} | *mut | -| main.rs:1647:46:1647:47 | &p | TRef.TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1647:47:1647:47 | p | | {EXTERNAL LOCATION} | *mut | -| main.rs:1647:47:1647:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | -| main.rs:1648:13:1648:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:1648:17:1648:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:1654:16:1666:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1655:13:1655:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:1655:17:1655:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1655:17:1655:29 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1655:25:1655:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1656:13:1656:13 | y | | {EXTERNAL LOCATION} | bool | -| main.rs:1656:17:1656:20 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:1656:17:1656:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1656:25:1656:29 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:1658:17:1658:17 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1659:13:1659:16 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:1659:20:1659:21 | 34 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1659:20:1659:27 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1659:26:1659:27 | 33 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1660:9:1664:9 | if cond {...} else {...} | | {EXTERNAL LOCATION} | () | -| main.rs:1660:12:1660:15 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:1660:17:1662:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1661:17:1661:17 | z | | {EXTERNAL LOCATION} | () | -| main.rs:1661:21:1661:27 | (...) | | {EXTERNAL LOCATION} | () | -| main.rs:1661:22:1661:22 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1661:22:1661:26 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:1661:26:1661:26 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1662:16:1664:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1663:13:1663:13 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1663:13:1663:17 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:1663:17:1663:17 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1665:9:1665:9 | a | | {EXTERNAL LOCATION} | i32 | -| main.rs:1679:30:1681:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1680:13:1680:31 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1680:23:1680:23 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1680:29:1680:29 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1687:16:1687:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1687:22:1687:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1687:41:1692:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1688:13:1691:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1689:20:1689:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1689:20:1689:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1689:20:1689:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1689:29:1689:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1689:29:1689:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1690:20:1690:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1690:20:1690:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1690:20:1690:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1690:29:1690:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1690:29:1690:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1697:23:1697:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1697:23:1697:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1697:34:1697:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1697:45:1700:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1698:13:1698:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1698:13:1698:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1698:13:1698:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1698:13:1698:27 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1698:23:1698:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1698:23:1698:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1699:13:1699:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1699:13:1699:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1699:13:1699:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1699:13:1699:27 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1699:23:1699:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1699:23:1699:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1705:16:1705:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1705:22:1705:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1705:41:1710:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1706:13:1709:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1707:20:1707:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1707:20:1707:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1707:20:1707:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1707:29:1707:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1707:29:1707:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1708:20:1708:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1708:20:1708:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1708:20:1708:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1708:29:1708:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1708:29:1708:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1715:23:1715:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1715:23:1715:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1715:34:1715:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1715:45:1718:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1716:13:1716:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1716:13:1716:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1716:13:1716:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1716:13:1716:27 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1716:23:1716:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1716:23:1716:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1717:13:1717:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1717:13:1717:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1717:13:1717:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1717:13:1717:27 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1717:23:1717:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1717:23:1717:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1723:16:1723:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1723:22:1723:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1723:41:1728:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1724:13:1727:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1725:20:1725:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1725:20:1725:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1725:20:1725:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1725:29:1725:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1725:29:1725:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1726:20:1726:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1726:20:1726:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1726:20:1726:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1726:29:1726:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1726:29:1726:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1732:23:1732:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1732:23:1732:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1732:34:1732:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1732:45:1735:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1733:13:1733:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1733:13:1733:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1733:13:1733:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1733:13:1733:27 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1733:23:1733:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1733:23:1733:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1734:13:1734:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1734:13:1734:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1734:13:1734:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1734:13:1734:27 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1734:23:1734:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1734:23:1734:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1740:16:1740:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1740:22:1740:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1740:41:1745:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1741:13:1744:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1742:20:1742:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1742:20:1742:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1742:20:1742:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1742:29:1742:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1742:29:1742:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1743:20:1743:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1743:20:1743:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1743:20:1743:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1743:29:1743:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1743:29:1743:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1749:23:1749:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1749:23:1749:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1749:34:1749:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1749:45:1752:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1750:13:1750:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1750:13:1750:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1750:13:1750:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1750:13:1750:27 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1750:23:1750:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1750:23:1750:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1751:13:1751:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1751:13:1751:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1751:13:1751:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1751:13:1751:27 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1751:23:1751:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1751:23:1751:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1757:16:1757:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1757:22:1757:24 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1757:41:1762:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1758:13:1761:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1759:20:1759:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1759:20:1759:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1759:20:1759:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1759:29:1759:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1759:29:1759:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1760:20:1760:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1760:20:1760:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1760:20:1760:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1760:29:1760:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1760:29:1760:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1766:23:1766:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1766:23:1766:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1766:34:1766:36 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1766:45:1769:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1767:13:1767:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1767:13:1767:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1767:13:1767:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1767:13:1767:27 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1767:23:1767:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1767:23:1767:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1768:13:1768:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1768:13:1768:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1768:13:1768:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1768:13:1768:27 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1768:23:1768:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1768:23:1768:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1774:19:1774:22 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1774:25:1774:27 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1774:44:1779:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1775:13:1778:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1776:20:1776:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1776:20:1776:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1776:20:1776:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1776:29:1776:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1776:29:1776:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1777:20:1777:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1777:20:1777:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1777:20:1777:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1777:29:1777:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1777:29:1777:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1783:26:1783:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1783:26:1783:34 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1783:37:1783:39 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1783:48:1786:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1784:13:1784:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1784:13:1784:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1784:13:1784:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1784:13:1784:27 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1784:23:1784:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1784:23:1784:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1785:13:1785:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1785:13:1785:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1785:13:1785:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1785:13:1785:27 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1785:23:1785:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1785:23:1785:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1791:18:1791:21 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1791:24:1791:26 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1791:43:1796:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1792:13:1795:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1793:20:1793:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1793:20:1793:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1793:20:1793:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1793:29:1793:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1793:29:1793:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1794:20:1794:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1794:20:1794:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1794:20:1794:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1794:29:1794:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1794:29:1794:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1800:25:1800:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1800:25:1800:33 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1800:36:1800:38 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1800:47:1803:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1801:13:1801:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1801:13:1801:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1801:13:1801:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1801:13:1801:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1801:23:1801:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1801:23:1801:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1802:13:1802:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1802:13:1802:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1802:13:1802:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1802:13:1802:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1802:23:1802:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1802:23:1802:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1808:19:1808:22 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1808:25:1808:27 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1808:44:1813:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1809:13:1812:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1810:20:1810:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1810:20:1810:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1810:20:1810:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1810:29:1810:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1810:29:1810:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1811:20:1811:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1811:20:1811:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1811:20:1811:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1811:29:1811:31 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1811:29:1811:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1817:26:1817:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1817:26:1817:34 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1817:37:1817:39 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1817:48:1820:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1818:13:1818:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1818:13:1818:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1818:13:1818:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1818:13:1818:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1818:23:1818:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1818:23:1818:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1819:13:1819:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1819:13:1819:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1819:13:1819:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1819:13:1819:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1819:23:1819:25 | rhs | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1819:23:1819:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1825:16:1825:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1825:22:1825:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1825:40:1830:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1826:13:1829:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1827:20:1827:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1827:20:1827:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1827:20:1827:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1827:30:1827:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1828:20:1828:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1828:20:1828:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1828:20:1828:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1828:30:1828:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1834:23:1834:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1834:23:1834:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1834:34:1834:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1834:44:1837:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1835:13:1835:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1835:13:1835:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1835:13:1835:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1835:13:1835:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1835:24:1835:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1836:13:1836:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1836:13:1836:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1836:13:1836:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1836:13:1836:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1836:24:1836:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1842:16:1842:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1842:22:1842:24 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1842:40:1847:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1843:13:1846:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1844:20:1844:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1844:20:1844:25 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1844:20:1844:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1844:30:1844:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1845:20:1845:23 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1845:20:1845:25 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1845:20:1845:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1845:30:1845:32 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1851:23:1851:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:1851:23:1851:31 | SelfParam | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1851:34:1851:36 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1851:44:1854:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1852:13:1852:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1852:13:1852:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1852:13:1852:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1852:13:1852:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1852:24:1852:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1853:13:1853:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:1853:13:1853:16 | self | TRefMut | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1853:13:1853:18 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1853:13:1853:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1853:24:1853:26 | rhs | | {EXTERNAL LOCATION} | u32 | -| main.rs:1859:16:1859:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1859:30:1864:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1860:13:1863:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1861:20:1861:26 | - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1861:21:1861:24 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1861:21:1861:26 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1862:20:1862:26 | - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1862:21:1862:24 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1862:21:1862:26 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1869:16:1869:19 | SelfParam | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1869:30:1874:9 | { ... } | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1870:13:1873:13 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1871:20:1871:26 | ! ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1871:21:1871:24 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1871:21:1871:26 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1872:20:1872:26 | ! ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1872:21:1872:24 | self | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1872:21:1872:26 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1878:15:1878:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1878:15:1878:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1878:22:1878:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1878:22:1878:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1878:44:1880:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1879:13:1879:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1879:13:1879:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1879:13:1879:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1879:13:1879:29 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1879:13:1879:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1879:23:1879:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1879:23:1879:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1879:23:1879:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1879:34:1879:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1879:34:1879:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1879:34:1879:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1879:34:1879:50 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1879:44:1879:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1879:44:1879:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1879:44:1879:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1882:15:1882:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1882:15:1882:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1882:22:1882:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1882:22:1882:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1882:44:1884:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1883:13:1883:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1883:13:1883:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1883:13:1883:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1883:13:1883:29 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1883:13:1883:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1883:23:1883:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1883:23:1883:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1883:23:1883:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1883:34:1883:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1883:34:1883:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1883:34:1883:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1883:34:1883:50 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1883:44:1883:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1883:44:1883:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1883:44:1883:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1888:24:1888:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1888:24:1888:28 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1888:31:1888:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1888:31:1888:35 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1888:75:1890:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:1888:75:1890:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | -| main.rs:1889:13:1889:29 | (...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:13:1889:63 | ... .partial_cmp(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:1889:13:1889:63 | ... .partial_cmp(...) | T | {EXTERNAL LOCATION} | Ordering | -| main.rs:1889:14:1889:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1889:14:1889:17 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1889:14:1889:19 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:14:1889:28 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:23:1889:26 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1889:23:1889:26 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1889:23:1889:28 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:43:1889:62 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:1889:43:1889:62 | &... | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:44:1889:62 | (...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:45:1889:49 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1889:45:1889:49 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1889:45:1889:51 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:45:1889:61 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1889:55:1889:59 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1889:55:1889:59 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1889:55:1889:61 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1892:15:1892:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1892:15:1892:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1892:22:1892:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1892:22:1892:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1892:44:1894:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1893:13:1893:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1893:13:1893:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1893:13:1893:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1893:13:1893:28 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1893:13:1893:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1893:22:1893:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1893:22:1893:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1893:22:1893:28 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1893:33:1893:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1893:33:1893:36 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1893:33:1893:38 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1893:33:1893:48 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1893:42:1893:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1893:42:1893:46 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1893:42:1893:48 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1896:15:1896:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1896:15:1896:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1896:22:1896:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1896:22:1896:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1896:44:1898:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1897:13:1897:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1897:13:1897:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1897:13:1897:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:13:1897:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1897:13:1897:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1897:23:1897:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1897:23:1897:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1897:23:1897:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:34:1897:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1897:34:1897:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1897:34:1897:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1897:34:1897:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1897:44:1897:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1897:44:1897:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1897:44:1897:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1900:15:1900:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1900:15:1900:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1900:22:1900:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1900:22:1900:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1900:44:1902:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1901:13:1901:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1901:13:1901:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1901:13:1901:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1901:13:1901:28 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1901:13:1901:48 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1901:22:1901:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1901:22:1901:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1901:22:1901:28 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1901:33:1901:36 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1901:33:1901:36 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1901:33:1901:38 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1901:33:1901:48 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1901:42:1901:46 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1901:42:1901:46 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1901:42:1901:48 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1904:15:1904:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:1904:15:1904:19 | SelfParam | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1904:22:1904:26 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1904:22:1904:26 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1904:44:1906:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:1905:13:1905:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1905:13:1905:16 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1905:13:1905:18 | self.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1905:13:1905:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1905:13:1905:50 | ... && ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1905:23:1905:27 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1905:23:1905:27 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1905:23:1905:29 | other.x | | {EXTERNAL LOCATION} | i64 | -| main.rs:1905:34:1905:37 | self | | {EXTERNAL LOCATION} | & | -| main.rs:1905:34:1905:37 | self | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1905:34:1905:39 | self.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1905:34:1905:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1905:44:1905:48 | other | | {EXTERNAL LOCATION} | & | -| main.rs:1905:44:1905:48 | other | TRef | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1905:44:1905:50 | other.y | | {EXTERNAL LOCATION} | i64 | -| main.rs:1909:26:1909:26 | a | | main.rs:1909:18:1909:23 | T | -| main.rs:1909:32:1909:32 | b | | main.rs:1909:18:1909:23 | T | -| main.rs:1910:9:1910:9 | a | | main.rs:1909:18:1909:23 | T | -| main.rs:1910:13:1910:13 | b | | main.rs:1909:18:1909:23 | T | -| main.rs:1913:16:2044:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:1917:13:1917:18 | i64_eq | | {EXTERNAL LOCATION} | bool | -| main.rs:1917:22:1917:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1917:23:1917:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1917:23:1917:34 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1917:31:1917:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:13:1918:18 | i64_ne | | {EXTERNAL LOCATION} | bool | -| main.rs:1918:22:1918:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1918:23:1918:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1918:23:1918:34 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1918:31:1918:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:13:1919:18 | i64_lt | | {EXTERNAL LOCATION} | bool | -| main.rs:1919:22:1919:34 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1919:23:1919:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1919:23:1919:33 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1919:30:1919:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:13:1920:18 | i64_le | | {EXTERNAL LOCATION} | bool | -| main.rs:1920:22:1920:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1920:23:1920:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1920:23:1920:34 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1920:31:1920:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:13:1921:18 | i64_gt | | {EXTERNAL LOCATION} | bool | -| main.rs:1921:22:1921:35 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1921:23:1921:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1921:23:1921:34 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1921:30:1921:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:13:1922:18 | i64_ge | | {EXTERNAL LOCATION} | bool | -| main.rs:1922:22:1922:37 | (...) | | {EXTERNAL LOCATION} | bool | -| main.rs:1922:23:1922:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1922:23:1922:36 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1922:32:1922:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:13:1925:19 | i64_add | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:23:1925:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:23:1925:35 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1925:31:1925:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:13:1926:19 | i64_sub | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:23:1926:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:23:1926:35 | ... - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1926:31:1926:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1927:13:1927:19 | i64_mul | | {EXTERNAL LOCATION} | i64 | -| main.rs:1927:23:1927:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1927:23:1927:35 | ... * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1927:31:1927:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:13:1928:19 | i64_div | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:23:1928:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:23:1928:35 | ... / ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1928:31:1928:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:13:1929:19 | i64_rem | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:23:1929:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:23:1929:35 | ... % ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1929:31:1929:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1930:39:1930:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1930:45:1930:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1933:17:1933:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1933:34:1933:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1934:9:1934:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1934:9:1934:31 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1934:27:1934:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1936:17:1936:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1936:34:1936:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1937:9:1937:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1937:9:1937:31 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1937:27:1937:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1939:17:1939:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1939:34:1939:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1940:9:1940:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1940:9:1940:31 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1940:27:1940:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1942:17:1942:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1942:34:1942:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1943:9:1943:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1943:9:1943:31 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1943:27:1943:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1945:17:1945:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1945:34:1945:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1946:9:1946:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1946:9:1946:31 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1946:27:1946:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1949:13:1949:22 | i64_bitand | | {EXTERNAL LOCATION} | i64 | -| main.rs:1949:26:1949:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1949:26:1949:38 | ... & ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1949:34:1949:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1950:13:1950:21 | i64_bitor | | {EXTERNAL LOCATION} | i64 | -| main.rs:1950:25:1950:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1950:25:1950:37 | ... \| ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1950:33:1950:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1951:13:1951:22 | i64_bitxor | | {EXTERNAL LOCATION} | i64 | -| main.rs:1951:26:1951:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1951:26:1951:38 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1951:34:1951:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1952:13:1952:19 | i64_shl | | {EXTERNAL LOCATION} | i64 | -| main.rs:1952:23:1952:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1952:23:1952:36 | ... << ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1952:32:1952:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1953:13:1953:19 | i64_shr | | {EXTERNAL LOCATION} | i64 | -| main.rs:1953:23:1953:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1953:23:1953:36 | ... >> ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1953:32:1953:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1956:17:1956:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1956:37:1956:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1957:9:1957:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1957:9:1957:34 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1957:30:1957:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1959:17:1959:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1959:36:1959:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1960:9:1960:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1960:9:1960:33 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1960:29:1960:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1962:17:1962:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1962:37:1962:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1963:9:1963:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1963:9:1963:34 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1963:30:1963:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1965:17:1965:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1965:34:1965:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1966:9:1966:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1966:9:1966:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1966:28:1966:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1968:17:1968:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1968:34:1968:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1969:9:1969:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | -| main.rs:1969:9:1969:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1969:28:1969:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1971:13:1971:19 | i64_neg | | {EXTERNAL LOCATION} | i64 | -| main.rs:1971:23:1971:28 | - ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1971:24:1971:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1972:13:1972:19 | i64_not | | {EXTERNAL LOCATION} | i64 | -| main.rs:1972:23:1972:28 | ! ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:1972:24:1972:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:1975:13:1975:14 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1975:18:1975:36 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1975:28:1975:28 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1975:34:1975:34 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1976:13:1976:14 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1976:18:1976:36 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1976:28:1976:28 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1976:34:1976:34 | 4 | | {EXTERNAL LOCATION} | i32 | -| main.rs:1979:13:1979:19 | vec2_eq | | {EXTERNAL LOCATION} | bool | -| main.rs:1979:23:1979:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1979:23:1979:30 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1979:29:1979:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1980:13:1980:19 | vec2_ne | | {EXTERNAL LOCATION} | bool | -| main.rs:1980:23:1980:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1980:23:1980:30 | ... != ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1980:29:1980:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1981:13:1981:19 | vec2_lt | | {EXTERNAL LOCATION} | bool | -| main.rs:1981:23:1981:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1981:23:1981:29 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1981:28:1981:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1982:13:1982:19 | vec2_le | | {EXTERNAL LOCATION} | bool | -| main.rs:1982:23:1982:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1982:23:1982:30 | ... <= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1982:29:1982:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1983:13:1983:19 | vec2_gt | | {EXTERNAL LOCATION} | bool | -| main.rs:1983:23:1983:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1983:23:1983:29 | ... > ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1983:28:1983:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1984:13:1984:19 | vec2_ge | | {EXTERNAL LOCATION} | bool | -| main.rs:1984:23:1984:24 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1984:23:1984:30 | ... >= ... | | {EXTERNAL LOCATION} | bool | -| main.rs:1984:29:1984:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1987:13:1987:20 | vec2_add | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1987:24:1987:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1987:24:1987:30 | ... + ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1987:29:1987:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1988:13:1988:20 | vec2_sub | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1988:24:1988:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1988:24:1988:30 | ... - ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1988:29:1988:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1989:13:1989:20 | vec2_mul | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1989:24:1989:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1989:24:1989:30 | ... * ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1989:29:1989:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1990:13:1990:20 | vec2_div | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1990:24:1990:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1990:24:1990:30 | ... / ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1990:29:1990:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1991:13:1991:20 | vec2_rem | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1991:24:1991:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1991:24:1991:30 | ... % ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1991:29:1991:30 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1994:17:1994:31 | vec2_add_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1994:35:1994:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1995:9:1995:23 | vec2_add_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1995:9:1995:29 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:1995:28:1995:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1997:17:1997:31 | vec2_sub_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1997:35:1997:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1998:9:1998:23 | vec2_sub_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:1998:9:1998:29 | ... -= ... | | {EXTERNAL LOCATION} | () | -| main.rs:1998:28:1998:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2000:17:2000:31 | vec2_mul_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2000:35:2000:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2001:9:2001:23 | vec2_mul_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2001:9:2001:29 | ... *= ... | | {EXTERNAL LOCATION} | () | -| main.rs:2001:28:2001:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2003:17:2003:31 | vec2_div_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2003:35:2003:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2004:9:2004:23 | vec2_div_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2004:9:2004:29 | ... /= ... | | {EXTERNAL LOCATION} | () | -| main.rs:2004:28:2004:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2006:17:2006:31 | vec2_rem_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2006:35:2006:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2007:9:2007:23 | vec2_rem_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2007:9:2007:29 | ... %= ... | | {EXTERNAL LOCATION} | () | -| main.rs:2007:28:2007:29 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2010:13:2010:23 | vec2_bitand | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2010:27:2010:28 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2010:27:2010:33 | ... & ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2010:32:2010:33 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2011:13:2011:22 | vec2_bitor | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2011:26:2011:27 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2011:26:2011:32 | ... \| ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2011:31:2011:32 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2012:13:2012:23 | vec2_bitxor | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2012:27:2012:28 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2012:27:2012:33 | ... ^ ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2012:32:2012:33 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2013:13:2013:20 | vec2_shl | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2013:24:2013:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2013:24:2013:33 | ... << ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2013:30:2013:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2014:13:2014:20 | vec2_shr | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2014:24:2014:25 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2014:24:2014:33 | ... >> ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2014:30:2014:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2017:17:2017:34 | vec2_bitand_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2017:38:2017:39 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2018:9:2018:26 | vec2_bitand_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2018:9:2018:32 | ... &= ... | | {EXTERNAL LOCATION} | () | -| main.rs:2018:31:2018:32 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2020:17:2020:33 | vec2_bitor_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2020:37:2020:38 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2021:9:2021:25 | vec2_bitor_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2021:9:2021:31 | ... \|= ... | | {EXTERNAL LOCATION} | () | -| main.rs:2021:30:2021:31 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2023:17:2023:34 | vec2_bitxor_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2023:38:2023:39 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2024:9:2024:26 | vec2_bitxor_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2024:9:2024:32 | ... ^= ... | | {EXTERNAL LOCATION} | () | -| main.rs:2024:31:2024:32 | v2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2026:17:2026:31 | vec2_shl_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2026:35:2026:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2027:9:2027:23 | vec2_shl_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2027:9:2027:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | -| main.rs:2027:29:2027:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2029:17:2029:31 | vec2_shr_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2029:35:2029:36 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2030:9:2030:23 | vec2_shr_assign | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2030:9:2030:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | -| main.rs:2030:29:2030:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2033:13:2033:20 | vec2_neg | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2033:24:2033:26 | - ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2033:25:2033:26 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2034:13:2034:20 | vec2_not | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2034:24:2034:26 | ! ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2034:25:2034:26 | v1 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2037:13:2037:24 | default_vec2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2037:28:2037:45 | ...::default(...) | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2038:13:2038:26 | vec2_zero_plus | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2038:30:2038:48 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2038:30:2038:63 | ... + ... | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2038:40:2038:40 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2038:46:2038:46 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2038:52:2038:63 | default_vec2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2042:13:2042:24 | default_vec2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2042:28:2042:45 | ...::default(...) | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2043:13:2043:26 | vec2_zero_plus | | {EXTERNAL LOCATION} | bool | -| main.rs:2043:30:2043:48 | Vec2 {...} | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2043:30:2043:64 | ... == ... | | {EXTERNAL LOCATION} | bool | -| main.rs:2043:40:2043:40 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2043:46:2043:46 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2043:53:2043:64 | default_vec2 | | main.rs:1672:5:1677:5 | Vec2 | -| main.rs:2053:18:2053:21 | SelfParam | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2053:24:2053:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2056:25:2058:5 | { ... } | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2057:9:2057:10 | S1 | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2060:41:2062:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2060:41:2062:5 | { ... } | dyn(Output) | main.rs:2050:5:2050:14 | S1 | -| main.rs:2061:9:2061:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2061:9:2061:20 | { ... } | dyn(Output) | main.rs:2050:5:2050:14 | S1 | -| main.rs:2061:17:2061:18 | S1 | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2064:41:2066:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2064:41:2066:5 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2065:9:2065:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2065:9:2065:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2074:13:2074:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | -| main.rs:2074:13:2074:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | -| main.rs:2074:13:2074:42 | SelfParam | Ptr.TRefMut | main.rs:2068:5:2068:14 | S2 | -| main.rs:2075:13:2075:15 | _cx | | {EXTERNAL LOCATION} | &mut | -| main.rs:2075:13:2075:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | -| main.rs:2076:44:2078:9 | { ... } | | {EXTERNAL LOCATION} | Poll | -| main.rs:2076:44:2078:9 | { ... } | T | main.rs:2050:5:2050:14 | S1 | -| main.rs:2077:13:2077:38 | ...::Ready(...) | | {EXTERNAL LOCATION} | Poll | -| main.rs:2077:13:2077:38 | ...::Ready(...) | T | main.rs:2050:5:2050:14 | S1 | -| main.rs:2077:36:2077:37 | S1 | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2081:41:2083:5 | { ... } | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2082:9:2082:10 | S2 | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2085:22:2093:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2086:9:2086:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2086:9:2086:12 | f1(...) | dyn(Output) | main.rs:2050:5:2050:14 | S1 | -| main.rs:2086:9:2086:18 | await ... | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2086:9:2086:22 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2087:9:2087:12 | f2(...) | | main.rs:2060:16:2060:39 | impl ... | -| main.rs:2087:9:2087:18 | await ... | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2087:9:2087:22 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2088:9:2088:12 | f3(...) | | main.rs:2064:16:2064:39 | impl ... | -| main.rs:2088:9:2088:18 | await ... | | {EXTERNAL LOCATION} | () | -| main.rs:2089:9:2089:12 | f4(...) | | main.rs:2081:16:2081:39 | impl ... | -| main.rs:2089:9:2089:18 | await ... | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2089:9:2089:22 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2090:9:2090:10 | S2 | | main.rs:2068:5:2068:14 | S2 | -| main.rs:2090:9:2090:16 | await S2 | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2090:9:2090:20 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2091:13:2091:13 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2091:13:2091:13 | b | dyn(Output) | main.rs:2050:5:2050:14 | S1 | -| main.rs:2091:17:2091:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2091:17:2091:28 | { ... } | dyn(Output) | main.rs:2050:5:2050:14 | S1 | -| main.rs:2091:25:2091:26 | S1 | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2092:9:2092:9 | b | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2092:9:2092:9 | b | dyn(Output) | main.rs:2050:5:2050:14 | S1 | -| main.rs:2092:9:2092:15 | await b | | main.rs:2050:5:2050:14 | S1 | -| main.rs:2092:9:2092:19 | ... .f() | | {EXTERNAL LOCATION} | () | -| main.rs:2103:15:2103:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2103:15:2103:19 | SelfParam | TRef | main.rs:2102:5:2104:5 | Self [trait Trait1] | -| main.rs:2103:22:2103:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2107:15:2107:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2107:15:2107:19 | SelfParam | TRef | main.rs:2106:5:2108:5 | Self [trait Trait2] | -| main.rs:2107:22:2107:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2111:15:2111:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2111:15:2111:19 | SelfParam | TRef | main.rs:2097:5:2098:14 | S1 | -| main.rs:2111:22:2111:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2115:15:2115:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2115:15:2115:19 | SelfParam | TRef | main.rs:2097:5:2098:14 | S1 | -| main.rs:2115:22:2115:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2118:37:2120:5 | { ... } | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2119:9:2119:10 | S1 | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2123:18:2123:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2123:18:2123:22 | SelfParam | TRef | main.rs:2122:5:2124:5 | Self [trait MyTrait] | -| main.rs:2127:18:2127:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2127:18:2127:22 | SelfParam | TRef | main.rs:2097:5:2098:14 | S1 | -| main.rs:2127:31:2129:9 | { ... } | | main.rs:2099:5:2099:14 | S2 | -| main.rs:2128:13:2128:14 | S2 | | main.rs:2099:5:2099:14 | S2 | -| main.rs:2133:18:2133:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2133:18:2133:22 | SelfParam | TRef | main.rs:2100:5:2100:22 | S3 | -| main.rs:2133:18:2133:22 | SelfParam | TRef.T3 | main.rs:2132:10:2132:17 | T | -| main.rs:2133:30:2136:9 | { ... } | | main.rs:2132:10:2132:17 | T | -| main.rs:2134:17:2134:21 | S3(...) | | {EXTERNAL LOCATION} | & | -| main.rs:2134:17:2134:21 | S3(...) | | main.rs:2100:5:2100:22 | S3 | -| main.rs:2134:17:2134:21 | S3(...) | TRef | main.rs:2100:5:2100:22 | S3 | -| main.rs:2134:17:2134:21 | S3(...) | TRef.T3 | main.rs:2132:10:2132:17 | T | -| main.rs:2134:25:2134:28 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2134:25:2134:28 | self | TRef | main.rs:2100:5:2100:22 | S3 | -| main.rs:2134:25:2134:28 | self | TRef.T3 | main.rs:2132:10:2132:17 | T | -| main.rs:2135:13:2135:21 | t.clone() | | main.rs:2132:10:2132:17 | T | -| main.rs:2139:45:2141:5 | { ... } | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2140:9:2140:10 | S1 | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2143:41:2143:41 | t | | main.rs:2143:26:2143:38 | B | -| main.rs:2143:52:2145:5 | { ... } | | main.rs:2143:23:2143:23 | A | -| main.rs:2144:9:2144:9 | t | | main.rs:2143:26:2143:38 | B | -| main.rs:2144:9:2144:17 | t.get_a() | | main.rs:2143:23:2143:23 | A | -| main.rs:2147:34:2147:34 | x | | main.rs:2147:24:2147:31 | T | -| main.rs:2147:59:2149:5 | { ... } | | main.rs:2147:43:2147:57 | impl ... | -| main.rs:2147:59:2149:5 | { ... } | impl(T) | main.rs:2147:24:2147:31 | T | -| main.rs:2148:9:2148:13 | S3(...) | | main.rs:2100:5:2100:22 | S3 | -| main.rs:2148:9:2148:13 | S3(...) | | main.rs:2147:43:2147:57 | impl ... | -| main.rs:2148:9:2148:13 | S3(...) | T3 | main.rs:2147:24:2147:31 | T | -| main.rs:2148:9:2148:13 | S3(...) | impl(T) | main.rs:2147:24:2147:31 | T | -| main.rs:2148:12:2148:12 | x | | main.rs:2147:24:2147:31 | T | -| main.rs:2151:34:2151:34 | x | | main.rs:2151:24:2151:31 | T | -| main.rs:2151:67:2153:5 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2151:67:2153:5 | { ... } | T | main.rs:2151:50:2151:64 | impl ... | -| main.rs:2151:67:2153:5 | { ... } | T.impl(T) | main.rs:2151:24:2151:31 | T | -| main.rs:2152:9:2152:19 | Some(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2152:9:2152:19 | Some(...) | T | main.rs:2100:5:2100:22 | S3 | -| main.rs:2152:9:2152:19 | Some(...) | T | main.rs:2151:50:2151:64 | impl ... | -| main.rs:2152:9:2152:19 | Some(...) | T.T3 | main.rs:2151:24:2151:31 | T | -| main.rs:2152:9:2152:19 | Some(...) | T.impl(T) | main.rs:2151:24:2151:31 | T | -| main.rs:2152:14:2152:18 | S3(...) | | main.rs:2100:5:2100:22 | S3 | -| main.rs:2152:14:2152:18 | S3(...) | T3 | main.rs:2151:24:2151:31 | T | -| main.rs:2152:17:2152:17 | x | | main.rs:2151:24:2151:31 | T | -| main.rs:2155:34:2155:34 | x | | main.rs:2155:24:2155:31 | T | -| main.rs:2155:78:2157:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2155:78:2157:5 | { ... } | T0 | main.rs:2155:44:2155:58 | impl ... | -| main.rs:2155:78:2157:5 | { ... } | T0.impl(T) | main.rs:2155:24:2155:31 | T | -| main.rs:2155:78:2157:5 | { ... } | T1 | main.rs:2155:61:2155:75 | impl ... | -| main.rs:2155:78:2157:5 | { ... } | T1.impl(T) | main.rs:2155:24:2155:31 | T | -| main.rs:2156:9:2156:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2156:9:2156:30 | TupleExpr | T0 | main.rs:2100:5:2100:22 | S3 | -| main.rs:2156:9:2156:30 | TupleExpr | T0 | main.rs:2155:44:2155:58 | impl ... | -| main.rs:2156:9:2156:30 | TupleExpr | T0.T3 | main.rs:2155:24:2155:31 | T | -| main.rs:2156:9:2156:30 | TupleExpr | T0.impl(T) | main.rs:2155:24:2155:31 | T | -| main.rs:2156:9:2156:30 | TupleExpr | T1 | main.rs:2100:5:2100:22 | S3 | -| main.rs:2156:9:2156:30 | TupleExpr | T1 | main.rs:2155:61:2155:75 | impl ... | -| main.rs:2156:9:2156:30 | TupleExpr | T1.T3 | main.rs:2155:24:2155:31 | T | -| main.rs:2156:9:2156:30 | TupleExpr | T1.impl(T) | main.rs:2155:24:2155:31 | T | -| main.rs:2156:10:2156:22 | S3(...) | | main.rs:2100:5:2100:22 | S3 | -| main.rs:2156:10:2156:22 | S3(...) | | main.rs:2155:44:2155:58 | impl ... | -| main.rs:2156:10:2156:22 | S3(...) | T3 | main.rs:2155:24:2155:31 | T | -| main.rs:2156:10:2156:22 | S3(...) | impl(T) | main.rs:2155:24:2155:31 | T | -| main.rs:2156:13:2156:13 | x | | main.rs:2155:24:2155:31 | T | -| main.rs:2156:13:2156:21 | x.clone() | | main.rs:2155:24:2155:31 | T | -| main.rs:2156:25:2156:29 | S3(...) | | main.rs:2100:5:2100:22 | S3 | -| main.rs:2156:25:2156:29 | S3(...) | | main.rs:2155:61:2155:75 | impl ... | -| main.rs:2156:25:2156:29 | S3(...) | T3 | main.rs:2155:24:2155:31 | T | -| main.rs:2156:25:2156:29 | S3(...) | impl(T) | main.rs:2155:24:2155:31 | T | -| main.rs:2156:28:2156:28 | x | | main.rs:2155:24:2155:31 | T | -| main.rs:2159:26:2159:26 | t | | main.rs:2159:29:2159:43 | impl ... | -| main.rs:2159:51:2161:5 | { ... } | | main.rs:2159:23:2159:23 | A | -| main.rs:2160:9:2160:9 | t | | main.rs:2159:29:2159:43 | impl ... | -| main.rs:2160:9:2160:17 | t.get_a() | | main.rs:2159:23:2159:23 | A | -| main.rs:2163:16:2177:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2164:13:2164:13 | x | | main.rs:2118:16:2118:35 | impl ... + ... | -| main.rs:2164:17:2164:20 | f1(...) | | main.rs:2118:16:2118:35 | impl ... + ... | -| main.rs:2165:9:2165:9 | x | | main.rs:2118:16:2118:35 | impl ... + ... | -| main.rs:2165:9:2165:14 | x.f1() | | {EXTERNAL LOCATION} | () | -| main.rs:2166:9:2166:9 | x | | main.rs:2118:16:2118:35 | impl ... + ... | -| main.rs:2166:9:2166:14 | x.f2() | | {EXTERNAL LOCATION} | () | -| main.rs:2167:13:2167:13 | a | | main.rs:2139:28:2139:43 | impl ... | -| main.rs:2167:17:2167:32 | get_a_my_trait(...) | | main.rs:2139:28:2139:43 | impl ... | -| main.rs:2168:13:2168:13 | b | | main.rs:2099:5:2099:14 | S2 | -| main.rs:2168:17:2168:33 | uses_my_trait1(...) | | main.rs:2099:5:2099:14 | S2 | -| main.rs:2168:32:2168:32 | a | | main.rs:2139:28:2139:43 | impl ... | -| main.rs:2169:13:2169:13 | a | | main.rs:2139:28:2139:43 | impl ... | -| main.rs:2169:17:2169:32 | get_a_my_trait(...) | | main.rs:2139:28:2139:43 | impl ... | -| main.rs:2170:13:2170:13 | c | | main.rs:2099:5:2099:14 | S2 | -| main.rs:2170:17:2170:33 | uses_my_trait2(...) | | main.rs:2099:5:2099:14 | S2 | -| main.rs:2170:32:2170:32 | a | | main.rs:2139:28:2139:43 | impl ... | -| main.rs:2171:13:2171:13 | d | | main.rs:2099:5:2099:14 | S2 | -| main.rs:2171:17:2171:34 | uses_my_trait2(...) | | main.rs:2099:5:2099:14 | S2 | -| main.rs:2171:32:2171:33 | S1 | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2172:13:2172:13 | e | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2172:17:2172:35 | get_a_my_trait2(...) | | main.rs:2147:43:2147:57 | impl ... | -| main.rs:2172:17:2172:35 | get_a_my_trait2(...) | impl(T) | main.rs:2097:5:2098:14 | S1 | -| main.rs:2172:17:2172:43 | ... .get_a() | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2172:33:2172:34 | S1 | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2175:13:2175:13 | f | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2175:17:2175:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2175:17:2175:35 | get_a_my_trait3(...) | T | main.rs:2151:50:2151:64 | impl ... | -| main.rs:2175:17:2175:35 | get_a_my_trait3(...) | T.impl(T) | main.rs:2097:5:2098:14 | S1 | -| main.rs:2175:17:2175:44 | ... .unwrap() | | main.rs:2151:50:2151:64 | impl ... | -| main.rs:2175:17:2175:44 | ... .unwrap() | impl(T) | main.rs:2097:5:2098:14 | S1 | -| main.rs:2175:17:2175:52 | ... .get_a() | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2175:33:2175:34 | S1 | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2176:13:2176:13 | g | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | T0 | main.rs:2155:44:2155:58 | impl ... | -| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | T0.impl(T) | main.rs:2097:5:2098:14 | S1 | -| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | T1 | main.rs:2155:61:2155:75 | impl ... | -| main.rs:2176:17:2176:35 | get_a_my_trait4(...) | T1.impl(T) | main.rs:2097:5:2098:14 | S1 | -| main.rs:2176:17:2176:37 | ... .0 | | main.rs:2155:44:2155:58 | impl ... | -| main.rs:2176:17:2176:37 | ... .0 | impl(T) | main.rs:2097:5:2098:14 | S1 | -| main.rs:2176:17:2176:45 | ... .get_a() | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2176:33:2176:34 | S1 | | main.rs:2097:5:2098:14 | S1 | -| main.rs:2187:16:2187:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2187:16:2187:20 | SelfParam | TRef | main.rs:2183:5:2184:13 | S | -| main.rs:2187:31:2189:9 | { ... } | | main.rs:2183:5:2184:13 | S | -| main.rs:2188:13:2188:13 | S | | main.rs:2183:5:2184:13 | S | -| main.rs:2198:26:2200:9 | { ... } | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2198:26:2200:9 | { ... } | T | main.rs:2197:10:2197:10 | T | -| main.rs:2199:13:2199:38 | MyVec {...} | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2199:13:2199:38 | MyVec {...} | T | main.rs:2197:10:2197:10 | T | -| main.rs:2199:27:2199:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2199:27:2199:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2199:27:2199:36 | ...::new(...) | T | main.rs:2197:10:2197:10 | T | -| main.rs:2202:17:2202:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | -| main.rs:2202:17:2202:25 | SelfParam | TRefMut | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2202:17:2202:25 | SelfParam | TRefMut.T | main.rs:2197:10:2197:10 | T | -| main.rs:2202:28:2202:32 | value | | main.rs:2197:10:2197:10 | T | -| main.rs:2202:38:2204:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2203:13:2203:16 | self | | {EXTERNAL LOCATION} | &mut | -| main.rs:2203:13:2203:16 | self | TRefMut | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2203:13:2203:16 | self | TRefMut.T | main.rs:2197:10:2197:10 | T | -| main.rs:2203:13:2203:21 | self.data | | {EXTERNAL LOCATION} | Vec | -| main.rs:2203:13:2203:21 | self.data | A | {EXTERNAL LOCATION} | Global | -| main.rs:2203:13:2203:21 | self.data | T | main.rs:2197:10:2197:10 | T | -| main.rs:2203:13:2203:33 | ... .push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2203:28:2203:32 | value | | main.rs:2197:10:2197:10 | T | -| main.rs:2211:18:2211:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2211:18:2211:22 | SelfParam | TRef | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2211:18:2211:22 | SelfParam | TRef.T | main.rs:2207:10:2207:10 | T | -| main.rs:2211:25:2211:29 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2211:56:2213:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2211:56:2213:9 | { ... } | TRef | main.rs:2207:10:2207:10 | T | -| main.rs:2212:13:2212:29 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2212:13:2212:29 | &... | TRef | main.rs:2207:10:2207:10 | T | -| main.rs:2212:14:2212:17 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2212:14:2212:17 | self | TRef | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2212:14:2212:17 | self | TRef.T | main.rs:2207:10:2207:10 | T | -| main.rs:2212:14:2212:22 | self.data | | {EXTERNAL LOCATION} | Vec | -| main.rs:2212:14:2212:22 | self.data | A | {EXTERNAL LOCATION} | Global | -| main.rs:2212:14:2212:22 | self.data | T | main.rs:2207:10:2207:10 | T | -| main.rs:2212:14:2212:29 | ...[index] | | main.rs:2207:10:2207:10 | T | -| main.rs:2212:24:2212:28 | index | | {EXTERNAL LOCATION} | usize | -| main.rs:2216:22:2216:26 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2216:22:2216:26 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2216:22:2216:26 | slice | TRef.TSlice | main.rs:2183:5:2184:13 | S | -| main.rs:2216:35:2218:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2217:13:2217:13 | x | | main.rs:2183:5:2184:13 | S | -| main.rs:2217:17:2217:21 | slice | | {EXTERNAL LOCATION} | & | -| main.rs:2217:17:2217:21 | slice | TRef | {EXTERNAL LOCATION} | [] | -| main.rs:2217:17:2217:21 | slice | TRef.TSlice | main.rs:2183:5:2184:13 | S | -| main.rs:2217:17:2217:24 | slice[0] | | main.rs:2183:5:2184:13 | S | -| main.rs:2217:17:2217:30 | ... .foo() | | main.rs:2183:5:2184:13 | S | -| main.rs:2217:23:2217:23 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2220:37:2220:37 | a | | main.rs:2220:20:2220:34 | T | -| main.rs:2220:43:2220:43 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2224:9:2224:9 | a | | main.rs:2220:20:2220:34 | T | -| main.rs:2224:11:2224:11 | b | | {EXTERNAL LOCATION} | usize | -| main.rs:2227:16:2238:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2228:17:2228:19 | vec | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2228:17:2228:19 | vec | T | main.rs:2183:5:2184:13 | S | -| main.rs:2228:23:2228:34 | ...::new(...) | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2228:23:2228:34 | ...::new(...) | T | main.rs:2183:5:2184:13 | S | -| main.rs:2229:9:2229:11 | vec | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2229:9:2229:11 | vec | T | main.rs:2183:5:2184:13 | S | -| main.rs:2229:9:2229:19 | vec.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2229:18:2229:18 | S | | main.rs:2183:5:2184:13 | S | -| main.rs:2230:9:2230:11 | vec | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2230:9:2230:11 | vec | T | main.rs:2183:5:2184:13 | S | -| main.rs:2230:9:2230:14 | vec[0] | | main.rs:2183:5:2184:13 | S | -| main.rs:2230:9:2230:20 | ... .foo() | | main.rs:2183:5:2184:13 | S | -| main.rs:2230:13:2230:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2232:13:2232:14 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2232:13:2232:14 | xs | TArray | main.rs:2183:5:2184:13 | S | -| main.rs:2232:21:2232:21 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2232:26:2232:28 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2232:26:2232:28 | [...] | TArray | main.rs:2183:5:2184:13 | S | -| main.rs:2232:27:2232:27 | S | | main.rs:2183:5:2184:13 | S | -| main.rs:2233:13:2233:13 | x | | main.rs:2183:5:2184:13 | S | -| main.rs:2233:17:2233:18 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2233:17:2233:18 | xs | TArray | main.rs:2183:5:2184:13 | S | -| main.rs:2233:17:2233:21 | xs[0] | | main.rs:2183:5:2184:13 | S | -| main.rs:2233:17:2233:27 | ... .foo() | | main.rs:2183:5:2184:13 | S | -| main.rs:2233:20:2233:20 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2235:29:2235:31 | vec | | main.rs:2192:5:2195:5 | MyVec | -| main.rs:2235:29:2235:31 | vec | T | main.rs:2183:5:2184:13 | S | -| main.rs:2235:34:2235:34 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2237:9:2237:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2237:23:2237:25 | &xs | | {EXTERNAL LOCATION} | & | -| main.rs:2237:23:2237:25 | &xs | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2237:23:2237:25 | &xs | TRef.TArray | main.rs:2183:5:2184:13 | S | -| main.rs:2237:24:2237:25 | xs | | {EXTERNAL LOCATION} | [;] | -| main.rs:2237:24:2237:25 | xs | TArray | main.rs:2183:5:2184:13 | S | -| main.rs:2242:16:2244:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2243:13:2243:13 | x | | {EXTERNAL LOCATION} | String | -| main.rs:2243:17:2243:46 | MacroExpr | | {EXTERNAL LOCATION} | String | -| main.rs:2243:25:2243:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | -| main.rs:2243:25:2243:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2243:25:2243:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2243:25:2243:45 | ...::must_use(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2243:25:2243:45 | { ... } | | {EXTERNAL LOCATION} | String | -| main.rs:2243:38:2243:45 | "World!" | | {EXTERNAL LOCATION} | & | -| main.rs:2243:38:2243:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2252:19:2252:22 | SelfParam | | main.rs:2248:5:2253:5 | Self [trait MyAdd] | -| main.rs:2252:25:2252:27 | rhs | | main.rs:2248:17:2248:26 | Rhs | -| main.rs:2259:19:2259:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2259:25:2259:29 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2259:45:2261:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2260:13:2260:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2268:19:2268:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2268:25:2268:29 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2268:25:2268:29 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2268:46:2270:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2269:13:2269:18 | * ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:2269:14:2269:18 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2269:14:2269:18 | value | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2277:19:2277:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | -| main.rs:2277:25:2277:29 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2277:46:2283:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2278:13:2282:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| main.rs:2278:13:2282:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | -| main.rs:2278:16:2278:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2278:22:2280:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2278:22:2280:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2279:17:2279:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2279:17:2279:17 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2280:20:2282:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2280:20:2282:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2281:17:2281:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2281:17:2281:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2292:19:2292:22 | SelfParam | | main.rs:2286:5:2286:19 | S | -| main.rs:2292:19:2292:22 | SelfParam | T | main.rs:2288:10:2288:17 | T | -| main.rs:2292:25:2292:29 | other | | main.rs:2286:5:2286:19 | S | -| main.rs:2292:25:2292:29 | other | T | main.rs:2288:10:2288:17 | T | -| main.rs:2292:54:2294:9 | { ... } | | main.rs:2286:5:2286:19 | S | -| main.rs:2293:13:2293:39 | S(...) | | main.rs:2286:5:2286:19 | S | -| main.rs:2293:15:2293:22 | (...) | | main.rs:2288:10:2288:17 | T | -| main.rs:2293:16:2293:19 | self | | main.rs:2286:5:2286:19 | S | -| main.rs:2293:16:2293:19 | self | T | main.rs:2288:10:2288:17 | T | -| main.rs:2293:16:2293:21 | self.0 | | main.rs:2288:10:2288:17 | T | -| main.rs:2293:31:2293:35 | other | | main.rs:2286:5:2286:19 | S | -| main.rs:2293:31:2293:35 | other | T | main.rs:2288:10:2288:17 | T | -| main.rs:2293:31:2293:37 | other.0 | | main.rs:2288:10:2288:17 | T | -| main.rs:2301:19:2301:22 | SelfParam | | main.rs:2286:5:2286:19 | S | -| main.rs:2301:19:2301:22 | SelfParam | T | main.rs:2297:10:2297:17 | T | -| main.rs:2301:25:2301:29 | other | | main.rs:2297:10:2297:17 | T | -| main.rs:2301:51:2303:9 | { ... } | | main.rs:2286:5:2286:19 | S | -| main.rs:2302:13:2302:37 | S(...) | | main.rs:2286:5:2286:19 | S | -| main.rs:2302:15:2302:22 | (...) | | main.rs:2297:10:2297:17 | T | -| main.rs:2302:16:2302:19 | self | | main.rs:2286:5:2286:19 | S | -| main.rs:2302:16:2302:19 | self | T | main.rs:2297:10:2297:17 | T | -| main.rs:2302:16:2302:21 | self.0 | | main.rs:2297:10:2297:17 | T | -| main.rs:2302:31:2302:35 | other | | main.rs:2297:10:2297:17 | T | -| main.rs:2313:19:2313:22 | SelfParam | | main.rs:2286:5:2286:19 | S | -| main.rs:2313:19:2313:22 | SelfParam | T | main.rs:2306:14:2306:14 | T | -| main.rs:2313:25:2313:29 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2313:25:2313:29 | other | TRef | main.rs:2306:14:2306:14 | T | -| main.rs:2313:55:2315:9 | { ... } | | main.rs:2286:5:2286:19 | S | -| main.rs:2314:13:2314:37 | S(...) | | main.rs:2286:5:2286:19 | S | -| main.rs:2314:15:2314:22 | (...) | | main.rs:2306:14:2306:14 | T | -| main.rs:2314:16:2314:19 | self | | main.rs:2286:5:2286:19 | S | -| main.rs:2314:16:2314:19 | self | T | main.rs:2306:14:2306:14 | T | -| main.rs:2314:16:2314:21 | self.0 | | main.rs:2306:14:2306:14 | T | -| main.rs:2314:31:2314:35 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2314:31:2314:35 | other | TRef | main.rs:2306:14:2306:14 | T | -| main.rs:2320:20:2320:24 | value | | main.rs:2318:18:2318:18 | T | -| main.rs:2325:20:2325:24 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2325:40:2327:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2326:13:2326:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2332:20:2332:24 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2332:41:2338:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2333:13:2337:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| main.rs:2333:13:2337:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | -| main.rs:2333:16:2333:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2333:22:2335:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2333:22:2335:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2334:17:2334:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2334:17:2334:17 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2335:20:2337:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2335:20:2337:13 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2336:17:2336:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2336:17:2336:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2343:21:2343:25 | value | | main.rs:2341:19:2341:19 | T | -| main.rs:2343:31:2343:31 | x | | main.rs:2341:5:2344:5 | Self [trait MyFrom2] | -| main.rs:2348:21:2348:25 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2348:33:2348:33 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2348:48:2350:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2349:13:2349:17 | value | | {EXTERNAL LOCATION} | i64 | -| main.rs:2355:21:2355:25 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2355:34:2355:34 | _ | | {EXTERNAL LOCATION} | i64 | -| main.rs:2355:49:2361:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2356:13:2360:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| main.rs:2356:16:2356:20 | value | | {EXTERNAL LOCATION} | bool | -| main.rs:2356:22:2358:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2357:17:2357:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2358:20:2360:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2359:17:2359:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2366:15:2366:15 | x | | main.rs:2364:5:2370:5 | Self [trait MySelfTrait] | -| main.rs:2369:15:2369:15 | x | | main.rs:2364:5:2370:5 | Self [trait MySelfTrait] | -| main.rs:2374:15:2374:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2374:31:2376:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:13:2375:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:13:2375:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:2375:17:2375:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2379:15:2379:15 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2379:32:2381:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2380:13:2380:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2380:13:2380:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | -| main.rs:2380:17:2380:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2386:15:2386:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2386:31:2388:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2387:13:2387:13 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2387:13:2387:13 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2391:15:2391:15 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2391:32:2393:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| main.rs:2392:13:2392:13 | x | | {EXTERNAL LOCATION} | bool | -| main.rs:2396:16:2421:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2397:13:2397:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2397:22:2397:23 | 73 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2397:22:2397:23 | 73 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2398:9:2398:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2398:9:2398:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2398:18:2398:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2399:9:2399:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2399:9:2399:23 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2399:18:2399:22 | &5i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2399:18:2399:22 | &5i64 | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2399:19:2399:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2400:9:2400:9 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2400:9:2400:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2400:18:2400:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2402:9:2402:15 | S(...) | | main.rs:2286:5:2286:19 | S | -| main.rs:2402:9:2402:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2402:9:2402:31 | ... .my_add(...) | | main.rs:2286:5:2286:19 | S | -| main.rs:2402:11:2402:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2402:24:2402:30 | S(...) | | main.rs:2286:5:2286:19 | S | -| main.rs:2402:24:2402:30 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2402:26:2402:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2403:9:2403:15 | S(...) | | main.rs:2286:5:2286:19 | S | -| main.rs:2403:9:2403:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2403:11:2403:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2403:24:2403:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2404:9:2404:15 | S(...) | | main.rs:2286:5:2286:19 | S | -| main.rs:2404:9:2404:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | -| main.rs:2404:9:2404:29 | ... .my_add(...) | | main.rs:2286:5:2286:19 | S | -| main.rs:2404:11:2404:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2404:24:2404:28 | &3i64 | | {EXTERNAL LOCATION} | & | -| main.rs:2404:24:2404:28 | &3i64 | TRef | {EXTERNAL LOCATION} | i64 | -| main.rs:2404:25:2404:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2406:13:2406:13 | x | | {EXTERNAL LOCATION} | i64 | -| main.rs:2406:17:2406:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2406:30:2406:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2407:13:2407:13 | y | | {EXTERNAL LOCATION} | i64 | -| main.rs:2407:17:2407:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2407:30:2407:33 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2408:13:2408:13 | z | | {EXTERNAL LOCATION} | i64 | -| main.rs:2408:22:2408:43 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2408:38:2408:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2409:9:2409:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2409:23:2409:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2409:30:2409:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2410:9:2410:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2410:23:2410:26 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2410:29:2410:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2411:9:2411:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2411:27:2411:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2411:34:2411:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2413:9:2413:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2413:17:2413:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2414:9:2414:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2414:17:2414:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2415:9:2415:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2415:18:2415:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2416:9:2416:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2416:18:2416:21 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2417:9:2417:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2417:25:2417:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2418:9:2418:30 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2418:25:2418:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2419:9:2419:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2419:25:2419:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2420:9:2420:29 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2420:25:2420:28 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2428:26:2430:9 | { ... } | | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2429:13:2429:25 | MyCallable {...} | | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2432:17:2432:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2432:17:2432:21 | SelfParam | TRef | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2432:31:2434:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| main.rs:2433:13:2433:13 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2433:13:2433:13 | 1 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2437:16:2544:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2440:9:2440:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2440:13:2440:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2440:18:2440:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2440:18:2440:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2440:19:2440:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2440:22:2440:22 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2440:25:2440:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2440:28:2440:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2441:9:2441:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2441:18:2441:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2441:18:2441:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2441:18:2441:41 | ... .map(...) | | {EXTERNAL LOCATION} | [;] | -| main.rs:2441:19:2441:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2441:22:2441:22 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2441:25:2441:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2441:32:2441:40 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | -| main.rs:2441:32:2441:40 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| main.rs:2441:40:2441:40 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2441:43:2441:44 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2442:9:2442:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2442:13:2442:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2442:18:2442:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2442:18:2442:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2442:18:2442:38 | ... .into_iter() | | {EXTERNAL LOCATION} | IntoIter | -| main.rs:2442:18:2442:38 | ... .into_iter() | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2442:19:2442:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2442:22:2442:22 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2442:25:2442:25 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2442:40:2442:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2444:13:2444:17 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2444:13:2444:17 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2444:13:2444:17 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | -| main.rs:2444:21:2444:31 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2444:21:2444:31 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2444:21:2444:31 | [...] | TArray | {EXTERNAL LOCATION} | u8 | -| main.rs:2444:22:2444:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2444:27:2444:27 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2444:27:2444:27 | 2 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2444:30:2444:30 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2444:30:2444:30 | 3 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2445:9:2445:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2445:13:2445:13 | u | | {EXTERNAL LOCATION} | i32 | -| main.rs:2445:13:2445:13 | u | | {EXTERNAL LOCATION} | u8 | -| main.rs:2445:18:2445:22 | vals1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2445:18:2445:22 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2445:18:2445:22 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | -| main.rs:2445:24:2445:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2447:13:2447:17 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2447:13:2447:17 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2447:21:2447:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2447:21:2447:29 | [1u16; 3] | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2447:22:2447:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2447:28:2447:28 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2448:9:2448:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2448:13:2448:13 | u | | {EXTERNAL LOCATION} | u16 | -| main.rs:2448:18:2448:22 | vals2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2448:18:2448:22 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2448:24:2448:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2450:13:2450:17 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2450:13:2450:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2450:26:2450:26 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2450:31:2450:39 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2450:31:2450:39 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2450:31:2450:39 | [...] | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2450:32:2450:32 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2450:32:2450:32 | 1 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2450:35:2450:35 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2450:35:2450:35 | 2 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2450:38:2450:38 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2450:38:2450:38 | 3 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2451:9:2451:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2451:13:2451:13 | u | | {EXTERNAL LOCATION} | u32 | -| main.rs:2451:18:2451:22 | vals3 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2451:18:2451:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2451:24:2451:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2453:13:2453:17 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2453:13:2453:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2453:26:2453:26 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2453:31:2453:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2453:31:2453:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2453:31:2453:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2453:32:2453:32 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2453:32:2453:32 | 1 | | {EXTERNAL LOCATION} | u64 | -| main.rs:2453:35:2453:35 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2454:9:2454:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2454:13:2454:13 | u | | {EXTERNAL LOCATION} | u64 | -| main.rs:2454:18:2454:22 | vals4 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2454:18:2454:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2454:24:2454:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2456:17:2456:24 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2456:17:2456:24 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2456:17:2456:24 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2456:28:2456:48 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2456:28:2456:48 | [...] | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2456:28:2456:48 | [...] | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2456:29:2456:33 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2456:29:2456:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2456:36:2456:40 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2456:36:2456:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2456:43:2456:47 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2456:43:2456:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2457:9:2457:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2457:13:2457:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:2457:13:2457:13 | s | TRef | {EXTERNAL LOCATION} | & | -| main.rs:2457:13:2457:13 | s | TRef.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2457:18:2457:26 | &strings1 | | {EXTERNAL LOCATION} | & | -| main.rs:2457:18:2457:26 | &strings1 | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2457:18:2457:26 | &strings1 | TRef.TArray | {EXTERNAL LOCATION} | & | -| main.rs:2457:18:2457:26 | &strings1 | TRef.TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2457:19:2457:26 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2457:19:2457:26 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2457:19:2457:26 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2457:28:2457:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2458:9:2458:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2458:13:2458:13 | s | | {EXTERNAL LOCATION} | &mut | -| main.rs:2458:13:2458:13 | s | TRefMut | {EXTERNAL LOCATION} | & | -| main.rs:2458:13:2458:13 | s | TRefMut.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2458:18:2458:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | -| main.rs:2458:18:2458:30 | &mut strings1 | TRefMut | {EXTERNAL LOCATION} | [;] | -| main.rs:2458:18:2458:30 | &mut strings1 | TRefMut.TArray | {EXTERNAL LOCATION} | & | -| main.rs:2458:18:2458:30 | &mut strings1 | TRefMut.TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2458:23:2458:30 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2458:23:2458:30 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2458:23:2458:30 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2458:32:2458:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2459:9:2459:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2459:13:2459:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:2459:13:2459:13 | s | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2459:18:2459:25 | strings1 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2459:18:2459:25 | strings1 | TArray | {EXTERNAL LOCATION} | & | -| main.rs:2459:18:2459:25 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2459:27:2459:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2461:13:2461:20 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2461:13:2461:20 | strings2 | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2462:9:2466:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2462:9:2466:9 | [...] | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2463:13:2463:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2463:26:2463:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2463:26:2463:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2464:13:2464:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2464:26:2464:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2464:26:2464:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2465:13:2465:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2465:26:2465:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2465:26:2465:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2467:9:2467:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2467:13:2467:13 | s | | {EXTERNAL LOCATION} | String | -| main.rs:2467:18:2467:25 | strings2 | | {EXTERNAL LOCATION} | [;] | -| main.rs:2467:18:2467:25 | strings2 | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2467:27:2467:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2469:13:2469:20 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2469:13:2469:20 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2469:13:2469:20 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | -| main.rs:2470:9:2474:9 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2470:9:2474:9 | &... | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2470:9:2474:9 | &... | TRef.TArray | {EXTERNAL LOCATION} | String | -| main.rs:2470:10:2474:9 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2470:10:2474:9 | [...] | TArray | {EXTERNAL LOCATION} | String | -| main.rs:2471:13:2471:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2471:26:2471:30 | "foo" | | {EXTERNAL LOCATION} | & | -| main.rs:2471:26:2471:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2472:13:2472:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2472:26:2472:30 | "bar" | | {EXTERNAL LOCATION} | & | -| main.rs:2472:26:2472:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2473:13:2473:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2473:26:2473:30 | "baz" | | {EXTERNAL LOCATION} | & | -| main.rs:2473:26:2473:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2475:9:2475:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2475:13:2475:13 | s | | {EXTERNAL LOCATION} | & | -| main.rs:2475:13:2475:13 | s | TRef | {EXTERNAL LOCATION} | String | -| main.rs:2475:18:2475:25 | strings3 | | {EXTERNAL LOCATION} | & | -| main.rs:2475:18:2475:25 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | -| main.rs:2475:18:2475:25 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | -| main.rs:2475:27:2475:28 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2477:13:2477:21 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2477:13:2477:21 | callables | TArray | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2477:25:2477:81 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2477:25:2477:81 | [...] | TArray | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2477:26:2477:42 | ...::new(...) | | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2477:45:2477:61 | ...::new(...) | | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2477:64:2477:80 | ...::new(...) | | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2478:9:2482:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2478:13:2478:13 | c | | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2479:12:2479:20 | callables | | {EXTERNAL LOCATION} | [;] | -| main.rs:2479:12:2479:20 | callables | TArray | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2480:9:2482:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2481:17:2481:22 | result | | {EXTERNAL LOCATION} | i64 | -| main.rs:2481:26:2481:26 | c | | main.rs:2425:5:2425:24 | MyCallable | -| main.rs:2481:26:2481:33 | c.call() | | {EXTERNAL LOCATION} | i64 | -| main.rs:2486:9:2486:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2486:13:2486:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2486:18:2486:18 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2486:18:2486:22 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2486:18:2486:22 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2486:21:2486:22 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2486:24:2486:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2487:9:2487:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2487:13:2487:13 | u | | {EXTERNAL LOCATION} | Range | -| main.rs:2487:13:2487:13 | u | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2487:13:2487:13 | u | Idx | {EXTERNAL LOCATION} | u8 | -| main.rs:2487:18:2487:26 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2487:18:2487:26 | [...] | TArray | {EXTERNAL LOCATION} | Range | -| main.rs:2487:18:2487:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2487:18:2487:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | u8 | -| main.rs:2487:19:2487:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2487:19:2487:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2487:19:2487:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2487:19:2487:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | u8 | -| main.rs:2487:24:2487:25 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2487:24:2487:25 | 10 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2487:28:2487:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2488:13:2488:17 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2488:13:2488:17 | range | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2488:21:2488:21 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2488:21:2488:25 | 0..10 | | {EXTERNAL LOCATION} | Range | -| main.rs:2488:21:2488:25 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2488:24:2488:25 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2489:9:2489:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2489:13:2489:13 | i | | {EXTERNAL LOCATION} | i32 | -| main.rs:2489:18:2489:22 | range | | {EXTERNAL LOCATION} | Range | -| main.rs:2489:18:2489:22 | range | Idx | {EXTERNAL LOCATION} | i32 | -| main.rs:2489:24:2489:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2490:13:2490:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2490:26:2490:27 | .. | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2491:9:2491:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2491:18:2491:48 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2491:19:2491:36 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2491:19:2491:36 | [...] | TArray | {EXTERNAL LOCATION} | i64 | -| main.rs:2491:20:2491:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2491:26:2491:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2491:32:2491:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2491:38:2491:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | -| main.rs:2491:50:2491:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2493:13:2493:18 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2493:13:2493:18 | range1 | Idx | {EXTERNAL LOCATION} | u16 | -| main.rs:2494:9:2497:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | -| main.rs:2494:9:2497:9 | ...::Range {...} | Idx | {EXTERNAL LOCATION} | u16 | -| main.rs:2495:20:2495:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2496:18:2496:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2498:9:2498:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2498:13:2498:13 | u | | {EXTERNAL LOCATION} | u16 | -| main.rs:2498:18:2498:23 | range1 | | {EXTERNAL LOCATION} | Range | -| main.rs:2498:18:2498:23 | range1 | Idx | {EXTERNAL LOCATION} | u16 | -| main.rs:2498:25:2498:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2502:13:2502:17 | vals3 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2502:21:2502:33 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2502:26:2502:26 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2502:29:2502:29 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2502:32:2502:32 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2503:9:2503:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2503:18:2503:22 | vals3 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2503:24:2503:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2505:13:2505:18 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2505:13:2505:18 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2505:13:2505:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2505:32:2505:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2505:32:2505:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2505:32:2505:43 | [...] | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2505:32:2505:52 | ... .to_vec() | | {EXTERNAL LOCATION} | Vec | -| main.rs:2505:32:2505:52 | ... .to_vec() | A | {EXTERNAL LOCATION} | Global | -| main.rs:2505:32:2505:52 | ... .to_vec() | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2505:33:2505:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2505:39:2505:39 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2505:42:2505:42 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2506:9:2506:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2506:13:2506:13 | u | | {EXTERNAL LOCATION} | u16 | -| main.rs:2506:18:2506:23 | vals4a | | {EXTERNAL LOCATION} | Vec | -| main.rs:2506:18:2506:23 | vals4a | A | {EXTERNAL LOCATION} | Global | -| main.rs:2506:18:2506:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | -| main.rs:2506:25:2506:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2508:22:2508:33 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2508:22:2508:33 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2508:22:2508:33 | [...] | TArray | {EXTERNAL LOCATION} | u16 | -| main.rs:2508:23:2508:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | -| main.rs:2508:29:2508:29 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2508:32:2508:32 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2509:9:2509:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2509:25:2509:26 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2511:13:2511:17 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2511:13:2511:17 | vals5 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2511:13:2511:17 | vals5 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2511:13:2511:17 | vals5 | T | {EXTERNAL LOCATION} | u32 | -| main.rs:2511:21:2511:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2511:21:2511:43 | ...::from(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2511:21:2511:43 | ...::from(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2511:21:2511:43 | ...::from(...) | T | {EXTERNAL LOCATION} | u32 | -| main.rs:2511:31:2511:42 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2511:31:2511:42 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2511:31:2511:42 | [...] | TArray | {EXTERNAL LOCATION} | u32 | -| main.rs:2511:32:2511:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | -| main.rs:2511:38:2511:38 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2511:41:2511:41 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2512:9:2512:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2512:13:2512:13 | u | | {EXTERNAL LOCATION} | i32 | -| main.rs:2512:13:2512:13 | u | | {EXTERNAL LOCATION} | u32 | -| main.rs:2512:18:2512:22 | vals5 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2512:18:2512:22 | vals5 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2512:18:2512:22 | vals5 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2512:18:2512:22 | vals5 | T | {EXTERNAL LOCATION} | u32 | -| main.rs:2512:24:2512:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2514:13:2514:17 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2514:13:2514:17 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2514:13:2514:17 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2514:13:2514:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2514:32:2514:43 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2514:32:2514:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2514:32:2514:43 | [...] | TArray | {EXTERNAL LOCATION} | u64 | -| main.rs:2514:32:2514:60 | ... .collect() | | {EXTERNAL LOCATION} | Vec | -| main.rs:2514:32:2514:60 | ... .collect() | A | {EXTERNAL LOCATION} | Global | -| main.rs:2514:32:2514:60 | ... .collect() | T | {EXTERNAL LOCATION} | & | -| main.rs:2514:32:2514:60 | ... .collect() | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2514:33:2514:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | -| main.rs:2514:39:2514:39 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2514:42:2514:42 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2515:9:2515:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2515:13:2515:13 | u | | {EXTERNAL LOCATION} | & | -| main.rs:2515:13:2515:13 | u | TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2515:18:2515:22 | vals6 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2515:18:2515:22 | vals6 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2515:18:2515:22 | vals6 | T | {EXTERNAL LOCATION} | & | -| main.rs:2515:18:2515:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | -| main.rs:2515:24:2515:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2517:17:2517:21 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2517:17:2517:21 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2517:17:2517:21 | vals7 | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2517:25:2517:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2517:25:2517:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2517:25:2517:34 | ...::new(...) | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2518:9:2518:13 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2518:9:2518:13 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2518:9:2518:13 | vals7 | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2518:9:2518:23 | vals7.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2518:20:2518:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | -| main.rs:2519:9:2519:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2519:13:2519:13 | u | | {EXTERNAL LOCATION} | u8 | -| main.rs:2519:18:2519:22 | vals7 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2519:18:2519:22 | vals7 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2519:18:2519:22 | vals7 | T | {EXTERNAL LOCATION} | u8 | -| main.rs:2519:24:2519:25 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2521:13:2521:19 | matrix1 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2521:23:2521:50 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2521:28:2521:37 | (...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2521:28:2521:37 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2521:33:2521:33 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2521:36:2521:36 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2521:40:2521:49 | (...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2521:40:2521:49 | MacroExpr | | {EXTERNAL LOCATION} | Vec | -| main.rs:2521:45:2521:45 | 3 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2521:48:2521:48 | 4 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2523:13:2523:13 | _ | | {EXTERNAL LOCATION} | () | -| main.rs:2523:17:2526:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2523:28:2523:34 | matrix1 | | {EXTERNAL LOCATION} | Vec | -| main.rs:2523:36:2526:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2524:13:2525:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2524:29:2525:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2528:17:2528:20 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2528:17:2528:20 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2528:17:2528:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2528:17:2528:20 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2528:17:2528:20 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2528:17:2528:20 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2528:17:2528:20 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2528:24:2528:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2528:24:2528:55 | ...::new(...) | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2528:24:2528:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2528:24:2528:55 | ...::new(...) | V | {EXTERNAL LOCATION} | Box | -| main.rs:2528:24:2528:55 | ...::new(...) | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2528:24:2528:55 | ...::new(...) | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2528:24:2528:55 | ...::new(...) | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2529:9:2529:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2529:9:2529:12 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2529:9:2529:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2529:9:2529:12 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2529:9:2529:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2529:9:2529:12 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2529:9:2529:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2529:9:2529:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2529:9:2529:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | -| main.rs:2529:9:2529:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2529:9:2529:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | -| main.rs:2529:9:2529:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2529:21:2529:21 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2529:24:2529:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2529:24:2529:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2529:24:2529:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:2529:24:2529:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2529:33:2529:37 | "one" | | {EXTERNAL LOCATION} | & | -| main.rs:2529:33:2529:37 | "one" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2530:9:2530:12 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2530:9:2530:12 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2530:9:2530:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2530:9:2530:12 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2530:9:2530:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2530:9:2530:12 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2530:9:2530:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2530:9:2530:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2530:9:2530:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | -| main.rs:2530:9:2530:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2530:9:2530:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | -| main.rs:2530:9:2530:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2530:21:2530:21 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2530:24:2530:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2530:24:2530:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2530:24:2530:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | -| main.rs:2530:24:2530:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2530:33:2530:37 | "two" | | {EXTERNAL LOCATION} | & | -| main.rs:2530:33:2530:37 | "two" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2531:9:2531:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2531:13:2531:15 | key | | {EXTERNAL LOCATION} | & | -| main.rs:2531:13:2531:15 | key | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2531:20:2531:23 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2531:20:2531:23 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2531:20:2531:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2531:20:2531:23 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2531:20:2531:23 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2531:20:2531:23 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2531:20:2531:23 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2531:20:2531:30 | map1.keys() | | {EXTERNAL LOCATION} | Keys | -| main.rs:2531:20:2531:30 | map1.keys() | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2531:20:2531:30 | map1.keys() | V | {EXTERNAL LOCATION} | Box | -| main.rs:2531:20:2531:30 | map1.keys() | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2531:20:2531:30 | map1.keys() | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2531:20:2531:30 | map1.keys() | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2531:32:2531:33 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2532:9:2532:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2532:13:2532:17 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2532:13:2532:17 | value | TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2532:13:2532:17 | value | TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2532:13:2532:17 | value | TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2532:13:2532:17 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2532:22:2532:25 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2532:22:2532:25 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2532:22:2532:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2532:22:2532:25 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2532:22:2532:25 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2532:22:2532:25 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2532:22:2532:25 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2532:22:2532:34 | map1.values() | | {EXTERNAL LOCATION} | Values | -| main.rs:2532:22:2532:34 | map1.values() | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2532:22:2532:34 | map1.values() | V | {EXTERNAL LOCATION} | Box | -| main.rs:2532:22:2532:34 | map1.values() | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2532:22:2532:34 | map1.values() | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2532:22:2532:34 | map1.values() | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2532:36:2532:37 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2533:9:2533:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2533:13:2533:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2533:13:2533:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | -| main.rs:2533:13:2533:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2533:13:2533:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | -| main.rs:2533:13:2533:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2533:13:2533:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2533:13:2533:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2533:13:2533:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2533:14:2533:16 | key | | {EXTERNAL LOCATION} | & | -| main.rs:2533:14:2533:16 | key | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2533:19:2533:23 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2533:19:2533:23 | value | TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2533:19:2533:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2533:19:2533:23 | value | TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2533:19:2533:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2533:29:2533:32 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2533:29:2533:32 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2533:29:2533:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2533:29:2533:32 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2533:29:2533:32 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2533:29:2533:32 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2533:29:2533:32 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2533:29:2533:39 | map1.iter() | | {EXTERNAL LOCATION} | Iter | -| main.rs:2533:29:2533:39 | map1.iter() | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2533:29:2533:39 | map1.iter() | V | {EXTERNAL LOCATION} | Box | -| main.rs:2533:29:2533:39 | map1.iter() | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2533:29:2533:39 | map1.iter() | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2533:29:2533:39 | map1.iter() | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2533:41:2533:42 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2534:9:2534:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2534:13:2534:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2534:13:2534:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | -| main.rs:2534:13:2534:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2534:13:2534:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | -| main.rs:2534:13:2534:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2534:13:2534:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2534:13:2534:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2534:13:2534:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2534:14:2534:16 | key | | {EXTERNAL LOCATION} | & | -| main.rs:2534:14:2534:16 | key | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2534:19:2534:23 | value | | {EXTERNAL LOCATION} | & | -| main.rs:2534:19:2534:23 | value | TRef | {EXTERNAL LOCATION} | Box | -| main.rs:2534:19:2534:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | -| main.rs:2534:19:2534:23 | value | TRef.T | {EXTERNAL LOCATION} | & | -| main.rs:2534:19:2534:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2534:29:2534:33 | &map1 | | {EXTERNAL LOCATION} | & | -| main.rs:2534:29:2534:33 | &map1 | TRef | {EXTERNAL LOCATION} | HashMap | -| main.rs:2534:29:2534:33 | &map1 | TRef.K | {EXTERNAL LOCATION} | i32 | -| main.rs:2534:29:2534:33 | &map1 | TRef.S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2534:29:2534:33 | &map1 | TRef.V | {EXTERNAL LOCATION} | Box | -| main.rs:2534:29:2534:33 | &map1 | TRef.V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2534:29:2534:33 | &map1 | TRef.V.T | {EXTERNAL LOCATION} | & | -| main.rs:2534:29:2534:33 | &map1 | TRef.V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2534:30:2534:33 | map1 | | {EXTERNAL LOCATION} | HashMap | -| main.rs:2534:30:2534:33 | map1 | K | {EXTERNAL LOCATION} | i32 | -| main.rs:2534:30:2534:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | -| main.rs:2534:30:2534:33 | map1 | V | {EXTERNAL LOCATION} | Box | -| main.rs:2534:30:2534:33 | map1 | V.A | {EXTERNAL LOCATION} | Global | -| main.rs:2534:30:2534:33 | map1 | V.T | {EXTERNAL LOCATION} | & | -| main.rs:2534:30:2534:33 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | -| main.rs:2534:35:2534:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2538:17:2538:17 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2538:26:2538:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2538:26:2538:26 | 0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2540:13:2540:13 | _ | | {EXTERNAL LOCATION} | () | -| main.rs:2540:17:2543:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2540:23:2540:23 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2540:23:2540:28 | ... < ... | | {EXTERNAL LOCATION} | bool | -| main.rs:2540:27:2540:28 | 10 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2541:9:2543:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2542:13:2542:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2542:13:2542:18 | ... += ... | | {EXTERNAL LOCATION} | () | -| main.rs:2542:18:2542:18 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2554:40:2556:9 | { ... } | | {EXTERNAL LOCATION} | Option | -| main.rs:2554:40:2556:9 | { ... } | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2554:40:2556:9 | { ... } | T.T | main.rs:2553:10:2553:19 | T | -| main.rs:2555:13:2555:16 | None | | {EXTERNAL LOCATION} | Option | -| main.rs:2555:13:2555:16 | None | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2555:13:2555:16 | None | T.T | main.rs:2553:10:2553:19 | T | -| main.rs:2558:30:2560:9 | { ... } | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2558:30:2560:9 | { ... } | T | main.rs:2553:10:2553:19 | T | -| main.rs:2559:13:2559:28 | S1(...) | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2559:13:2559:28 | S1(...) | T | main.rs:2553:10:2553:19 | T | -| main.rs:2559:16:2559:27 | ...::default(...) | | main.rs:2553:10:2553:19 | T | -| main.rs:2562:19:2562:22 | SelfParam | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2562:19:2562:22 | SelfParam | T | main.rs:2553:10:2553:19 | T | -| main.rs:2562:33:2564:9 | { ... } | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2562:33:2564:9 | { ... } | T | main.rs:2553:10:2553:19 | T | -| main.rs:2563:13:2563:16 | self | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2563:13:2563:16 | self | T | main.rs:2553:10:2553:19 | T | -| main.rs:2575:15:2575:15 | x | | main.rs:2575:12:2575:12 | T | -| main.rs:2575:26:2577:5 | { ... } | | main.rs:2575:12:2575:12 | T | -| main.rs:2576:9:2576:9 | x | | main.rs:2575:12:2575:12 | T | -| main.rs:2579:16:2601:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2580:13:2580:14 | x1 | | {EXTERNAL LOCATION} | Option | -| main.rs:2580:13:2580:14 | x1 | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2580:13:2580:14 | x1 | T.T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2580:34:2580:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2580:34:2580:48 | ...::assoc_fun(...) | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2580:34:2580:48 | ...::assoc_fun(...) | T.T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2581:13:2581:14 | x2 | | {EXTERNAL LOCATION} | Option | -| main.rs:2581:13:2581:14 | x2 | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2581:13:2581:14 | x2 | T.T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2581:18:2581:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2581:18:2581:38 | ...::assoc_fun(...) | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2581:18:2581:38 | ...::assoc_fun(...) | T.T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2582:13:2582:14 | x3 | | {EXTERNAL LOCATION} | Option | -| main.rs:2582:13:2582:14 | x3 | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2582:13:2582:14 | x3 | T.T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2582:18:2582:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | -| main.rs:2582:18:2582:32 | ...::assoc_fun(...) | T | main.rs:2548:5:2548:20 | S1 | -| main.rs:2582:18:2582:32 | ...::assoc_fun(...) | T.T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2583:13:2583:14 | x4 | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2583:13:2583:14 | x4 | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2583:18:2583:48 | ...::method(...) | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2583:18:2583:48 | ...::method(...) | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2583:35:2583:47 | ...::default(...) | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2583:35:2583:47 | ...::default(...) | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2584:13:2584:14 | x5 | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2584:13:2584:14 | x5 | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2584:18:2584:42 | ...::method(...) | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2584:18:2584:42 | ...::method(...) | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2584:29:2584:41 | ...::default(...) | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2584:29:2584:41 | ...::default(...) | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2585:13:2585:14 | x6 | | main.rs:2569:5:2569:27 | S4 | -| main.rs:2585:13:2585:14 | x6 | T4 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2585:18:2585:45 | S4::<...>(...) | | main.rs:2569:5:2569:27 | S4 | -| main.rs:2585:18:2585:45 | S4::<...>(...) | T4 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2585:27:2585:44 | ...::default(...) | | main.rs:2550:5:2551:14 | S2 | -| main.rs:2586:13:2586:14 | x7 | | main.rs:2569:5:2569:27 | S4 | -| main.rs:2586:13:2586:14 | x7 | T4 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2586:18:2586:23 | S4(...) | | main.rs:2569:5:2569:27 | S4 | -| main.rs:2586:18:2586:23 | S4(...) | T4 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2586:21:2586:22 | S2 | | main.rs:2550:5:2551:14 | S2 | -| main.rs:2587:13:2587:14 | x8 | | main.rs:2569:5:2569:27 | S4 | -| main.rs:2587:13:2587:14 | x8 | T4 | {EXTERNAL LOCATION} | i32 | -| main.rs:2587:18:2587:22 | S4(...) | | main.rs:2569:5:2569:27 | S4 | -| main.rs:2587:18:2587:22 | S4(...) | T4 | {EXTERNAL LOCATION} | i32 | -| main.rs:2587:21:2587:21 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2588:13:2588:14 | x9 | | main.rs:2569:5:2569:27 | S4 | -| main.rs:2588:13:2588:14 | x9 | T4 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2588:18:2588:34 | S4(...) | | main.rs:2569:5:2569:27 | S4 | -| main.rs:2588:18:2588:34 | S4(...) | T4 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2588:21:2588:33 | ...::default(...) | | main.rs:2550:5:2551:14 | S2 | -| main.rs:2589:13:2589:15 | x10 | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2589:13:2589:15 | x10 | T5 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2589:19:2592:9 | S5::<...> {...} | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2589:19:2592:9 | S5::<...> {...} | T5 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2591:20:2591:37 | ...::default(...) | | main.rs:2550:5:2551:14 | S2 | -| main.rs:2593:13:2593:15 | x11 | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2593:13:2593:15 | x11 | T5 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2593:19:2593:34 | S5 {...} | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2593:19:2593:34 | S5 {...} | T5 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2593:31:2593:32 | S2 | | main.rs:2550:5:2551:14 | S2 | -| main.rs:2594:13:2594:15 | x12 | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2594:13:2594:15 | x12 | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:2594:19:2594:33 | S5 {...} | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2594:19:2594:33 | S5 {...} | T5 | {EXTERNAL LOCATION} | i32 | -| main.rs:2594:31:2594:31 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2595:13:2595:15 | x13 | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2595:13:2595:15 | x13 | T5 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2595:19:2598:9 | S5 {...} | | main.rs:2571:5:2573:5 | S5 | -| main.rs:2595:19:2598:9 | S5 {...} | T5 | main.rs:2550:5:2551:14 | S2 | -| main.rs:2597:20:2597:32 | ...::default(...) | | main.rs:2550:5:2551:14 | S2 | -| main.rs:2599:13:2599:15 | x14 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2599:19:2599:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2599:30:2599:47 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2600:13:2600:15 | x15 | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2600:13:2600:15 | x15 | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2600:19:2600:37 | ...::default(...) | | main.rs:2548:5:2548:20 | S1 | -| main.rs:2600:19:2600:37 | ...::default(...) | T | main.rs:2550:5:2551:14 | S2 | -| main.rs:2609:35:2611:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2609:35:2611:9 | { ... } | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2609:35:2611:9 | { ... } | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2610:13:2610:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2610:13:2610:26 | TupleExpr | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2610:13:2610:26 | TupleExpr | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2610:14:2610:18 | S1 {...} | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2610:21:2610:25 | S1 {...} | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2612:16:2612:19 | SelfParam | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2612:22:2612:23 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2615:16:2649:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2616:13:2616:13 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2616:13:2616:13 | a | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2616:13:2616:13 | a | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2616:17:2616:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2616:17:2616:30 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2616:17:2616:30 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2617:17:2617:17 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2617:17:2617:17 | b | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2617:17:2617:17 | b | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2617:21:2617:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2617:21:2617:34 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2617:21:2617:34 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2618:13:2618:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2618:13:2618:18 | TuplePat | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2618:13:2618:18 | TuplePat | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2618:14:2618:14 | c | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2618:17:2618:17 | d | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2618:22:2618:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2618:22:2618:35 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2618:22:2618:35 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2619:13:2619:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2619:13:2619:22 | TuplePat | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2619:13:2619:22 | TuplePat | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2619:18:2619:18 | e | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2619:21:2619:21 | f | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2619:26:2619:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2619:26:2619:39 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2619:26:2619:39 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2620:13:2620:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2620:13:2620:26 | TuplePat | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2620:13:2620:26 | TuplePat | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2620:18:2620:18 | g | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2620:25:2620:25 | h | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2620:30:2620:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2620:30:2620:43 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2620:30:2620:43 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2622:9:2622:9 | a | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2622:9:2622:9 | a | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2622:9:2622:9 | a | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2622:9:2622:11 | a.0 | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2622:9:2622:17 | ... .foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2623:9:2623:9 | b | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2623:9:2623:9 | b | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2623:9:2623:9 | b | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2623:9:2623:11 | b.1 | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2623:9:2623:17 | ... .foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2624:9:2624:9 | c | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2624:9:2624:15 | c.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2625:9:2625:9 | d | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2625:9:2625:15 | d.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2626:9:2626:9 | e | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2626:9:2626:15 | e.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2627:9:2627:9 | f | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2627:9:2627:15 | f.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2628:9:2628:9 | g | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2628:9:2628:15 | g.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2629:9:2629:9 | h | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2629:9:2629:15 | h.foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2634:13:2634:13 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2634:17:2634:34 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | -| main.rs:2635:13:2635:13 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2635:17:2635:34 | ...::default(...) | | {EXTERNAL LOCATION} | bool | -| main.rs:2636:13:2636:16 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2636:13:2636:16 | pair | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2636:13:2636:16 | pair | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2636:20:2636:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2636:20:2636:25 | TupleExpr | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2636:20:2636:25 | TupleExpr | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2636:21:2636:21 | a | | {EXTERNAL LOCATION} | i64 | -| main.rs:2636:24:2636:24 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2637:13:2637:13 | i | | {EXTERNAL LOCATION} | i64 | -| main.rs:2637:22:2637:25 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2637:22:2637:25 | pair | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2637:22:2637:25 | pair | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2637:22:2637:27 | pair.0 | | {EXTERNAL LOCATION} | i64 | -| main.rs:2638:13:2638:13 | j | | {EXTERNAL LOCATION} | bool | -| main.rs:2638:23:2638:26 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2638:23:2638:26 | pair | T0 | {EXTERNAL LOCATION} | i64 | -| main.rs:2638:23:2638:26 | pair | T1 | {EXTERNAL LOCATION} | bool | -| main.rs:2638:23:2638:28 | pair.1 | | {EXTERNAL LOCATION} | bool | -| main.rs:2640:13:2640:16 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2640:13:2640:16 | pair | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2640:13:2640:16 | pair | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2640:20:2640:25 | [...] | | {EXTERNAL LOCATION} | [;] | -| main.rs:2640:20:2640:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | -| main.rs:2640:20:2640:32 | ... .into() | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2640:20:2640:32 | ... .into() | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2640:20:2640:32 | ... .into() | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2640:21:2640:21 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2640:24:2640:24 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2641:9:2644:9 | match pair { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2641:15:2641:18 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2641:15:2641:18 | pair | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2641:15:2641:18 | pair | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2642:13:2642:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2642:13:2642:18 | TuplePat | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2642:13:2642:18 | TuplePat | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2642:14:2642:14 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2642:17:2642:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2642:23:2642:42 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2642:30:2642:41 | "unexpected" | | {EXTERNAL LOCATION} | & | -| main.rs:2642:30:2642:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2642:30:2642:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2642:30:2642:41 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2643:13:2643:13 | _ | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2643:13:2643:13 | _ | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2643:13:2643:13 | _ | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2643:18:2643:35 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2643:25:2643:34 | "expected" | | {EXTERNAL LOCATION} | & | -| main.rs:2643:25:2643:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2643:25:2643:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2643:25:2643:34 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2645:13:2645:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2645:17:2645:20 | pair | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2645:17:2645:20 | pair | T0 | {EXTERNAL LOCATION} | i32 | -| main.rs:2645:17:2645:20 | pair | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2645:17:2645:22 | pair.0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2647:13:2647:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2647:13:2647:13 | y | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2647:13:2647:13 | y | TRef.T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2647:13:2647:13 | y | TRef.T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2647:17:2647:31 | &... | | {EXTERNAL LOCATION} | & | -| main.rs:2647:17:2647:31 | &... | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2647:17:2647:31 | &... | TRef.T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2647:17:2647:31 | &... | TRef.T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2647:18:2647:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2647:18:2647:31 | ...::get_pair(...) | T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2647:18:2647:31 | ...::get_pair(...) | T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2648:9:2648:9 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2648:9:2648:9 | y | TRef | {EXTERNAL LOCATION} | (T_2) | -| main.rs:2648:9:2648:9 | y | TRef.T0 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2648:9:2648:9 | y | TRef.T1 | main.rs:2605:5:2606:16 | S1 | -| main.rs:2648:9:2648:11 | y.0 | | main.rs:2605:5:2606:16 | S1 | -| main.rs:2648:9:2648:17 | ... .foo() | | {EXTERNAL LOCATION} | () | -| main.rs:2654:27:2676:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2655:13:2655:23 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2655:13:2655:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2655:13:2655:23 | boxed_value | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2655:27:2655:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2655:27:2655:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2655:27:2655:42 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2655:36:2655:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2658:9:2666:9 | match boxed_value { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2658:15:2658:25 | boxed_value | | {EXTERNAL LOCATION} | Box | -| main.rs:2658:15:2658:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | -| main.rs:2658:15:2658:25 | boxed_value | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2659:13:2659:19 | box 100 | | {EXTERNAL LOCATION} | Box | -| main.rs:2659:13:2659:19 | box 100 | A | {EXTERNAL LOCATION} | Global | -| main.rs:2659:13:2659:19 | box 100 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2659:17:2659:19 | 100 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2659:24:2661:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2660:17:2660:37 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2660:26:2660:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2660:26:2660:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2660:26:2660:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2660:26:2660:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2660:26:2660:36 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2662:13:2662:17 | box ... | | {EXTERNAL LOCATION} | Box | -| main.rs:2662:13:2662:17 | box ... | A | {EXTERNAL LOCATION} | Global | -| main.rs:2662:13:2662:17 | box ... | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2662:22:2665:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2664:17:2664:52 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2664:26:2664:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2664:26:2664:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2664:26:2664:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2664:26:2664:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2664:26:2664:51 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2669:13:2669:22 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2669:13:2669:22 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2669:13:2669:22 | nested_box | T | {EXTERNAL LOCATION} | Box | -| main.rs:2669:13:2669:22 | nested_box | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2669:13:2669:22 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2669:26:2669:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2669:26:2669:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2669:26:2669:50 | ...::new(...) | T | {EXTERNAL LOCATION} | Box | -| main.rs:2669:26:2669:50 | ...::new(...) | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2669:26:2669:50 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2669:35:2669:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2669:35:2669:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2669:35:2669:49 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2669:44:2669:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2670:9:2675:9 | match nested_box { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2670:15:2670:24 | nested_box | | {EXTERNAL LOCATION} | Box | -| main.rs:2670:15:2670:24 | nested_box | A | {EXTERNAL LOCATION} | Global | -| main.rs:2670:15:2670:24 | nested_box | T | {EXTERNAL LOCATION} | Box | -| main.rs:2670:15:2670:24 | nested_box | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2670:15:2670:24 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2671:13:2671:21 | box ... | | {EXTERNAL LOCATION} | Box | -| main.rs:2671:13:2671:21 | box ... | A | {EXTERNAL LOCATION} | Global | -| main.rs:2671:13:2671:21 | box ... | T | {EXTERNAL LOCATION} | Box | -| main.rs:2671:13:2671:21 | box ... | T.A | {EXTERNAL LOCATION} | Global | -| main.rs:2671:13:2671:21 | box ... | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2671:26:2674:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2673:17:2673:60 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2673:26:2673:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2673:26:2673:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2673:26:2673:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2673:26:2673:59 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2673:26:2673:59 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2685:36:2687:9 | { ... } | | main.rs:2682:5:2682:22 | Path | -| main.rs:2686:13:2686:19 | Path {...} | | main.rs:2682:5:2682:22 | Path | -| main.rs:2689:29:2689:33 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2689:29:2689:33 | SelfParam | TRef | main.rs:2682:5:2682:22 | Path | -| main.rs:2689:59:2691:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| main.rs:2689:59:2691:9 | { ... } | E | {EXTERNAL LOCATION} | () | -| main.rs:2689:59:2691:9 | { ... } | T | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2690:13:2690:30 | Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2690:13:2690:30 | Ok(...) | E | {EXTERNAL LOCATION} | () | -| main.rs:2690:13:2690:30 | Ok(...) | T | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2690:16:2690:29 | ...::new(...) | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2697:39:2699:9 | { ... } | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2698:13:2698:22 | PathBuf {...} | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2707:18:2707:22 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2707:18:2707:22 | SelfParam | TRef | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2707:34:2711:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2707:34:2711:9 | { ... } | TRef | main.rs:2682:5:2682:22 | Path | -| main.rs:2709:33:2709:43 | ...::new(...) | | main.rs:2682:5:2682:22 | Path | -| main.rs:2710:13:2710:17 | &path | | {EXTERNAL LOCATION} | & | -| main.rs:2710:13:2710:17 | &path | TRef | main.rs:2682:5:2682:22 | Path | -| main.rs:2710:14:2710:17 | path | | main.rs:2682:5:2682:22 | Path | -| main.rs:2714:16:2722:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2715:13:2715:17 | path1 | | main.rs:2682:5:2682:22 | Path | -| main.rs:2715:21:2715:31 | ...::new(...) | | main.rs:2682:5:2682:22 | Path | -| main.rs:2716:13:2716:17 | path2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2716:13:2716:17 | path2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2716:13:2716:17 | path2 | T | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2716:21:2716:25 | path1 | | main.rs:2682:5:2682:22 | Path | -| main.rs:2716:21:2716:40 | path1.canonicalize() | | {EXTERNAL LOCATION} | Result | -| main.rs:2716:21:2716:40 | path1.canonicalize() | E | {EXTERNAL LOCATION} | () | -| main.rs:2716:21:2716:40 | path1.canonicalize() | T | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2717:13:2717:17 | path3 | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2717:21:2717:25 | path2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2717:21:2717:25 | path2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2717:21:2717:25 | path2 | T | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2717:21:2717:34 | path2.unwrap() | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2719:13:2719:20 | pathbuf1 | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2719:24:2719:37 | ...::new(...) | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2720:13:2720:20 | pathbuf2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2720:13:2720:20 | pathbuf2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2720:13:2720:20 | pathbuf2 | T | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2720:24:2720:31 | pathbuf1 | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2720:24:2720:46 | pathbuf1.canonicalize() | | {EXTERNAL LOCATION} | Result | -| main.rs:2720:24:2720:46 | pathbuf1.canonicalize() | E | {EXTERNAL LOCATION} | () | -| main.rs:2720:24:2720:46 | pathbuf1.canonicalize() | T | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2721:13:2721:20 | pathbuf3 | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2721:24:2721:31 | pathbuf2 | | {EXTERNAL LOCATION} | Result | -| main.rs:2721:24:2721:31 | pathbuf2 | E | {EXTERNAL LOCATION} | () | -| main.rs:2721:24:2721:31 | pathbuf2 | T | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2721:24:2721:40 | pathbuf2.unwrap() | | main.rs:2694:5:2694:25 | PathBuf | -| main.rs:2727:14:2727:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2727:14:2727:18 | SelfParam | TRef | main.rs:2726:5:2728:5 | Self [trait MyTrait] | -| main.rs:2734:14:2734:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2734:14:2734:18 | SelfParam | TRef | main.rs:2730:5:2731:19 | S | -| main.rs:2734:14:2734:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2734:28:2736:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2735:13:2735:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2735:13:2735:16 | self | TRef | main.rs:2730:5:2731:19 | S | -| main.rs:2735:13:2735:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2735:13:2735:18 | self.0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2740:14:2740:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2740:14:2740:18 | SelfParam | TRef | main.rs:2730:5:2731:19 | S | -| main.rs:2740:14:2740:18 | SelfParam | TRef.T | main.rs:2730:5:2731:19 | S | -| main.rs:2740:14:2740:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2740:28:2742:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2741:13:2741:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2741:13:2741:16 | self | TRef | main.rs:2730:5:2731:19 | S | -| main.rs:2741:13:2741:16 | self | TRef.T | main.rs:2730:5:2731:19 | S | -| main.rs:2741:13:2741:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2741:13:2741:18 | self.0 | | main.rs:2730:5:2731:19 | S | -| main.rs:2741:13:2741:18 | self.0 | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2741:13:2741:21 | ... .0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2746:15:2746:19 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2746:15:2746:19 | SelfParam | TRef | main.rs:2730:5:2731:19 | S | -| main.rs:2746:15:2746:19 | SelfParam | TRef.T | main.rs:2745:10:2745:16 | T | -| main.rs:2746:33:2748:9 | { ... } | | main.rs:2730:5:2731:19 | S | -| main.rs:2746:33:2748:9 | { ... } | T | main.rs:2730:5:2731:19 | S | -| main.rs:2746:33:2748:9 | { ... } | T.T | main.rs:2745:10:2745:16 | T | -| main.rs:2747:13:2747:24 | S(...) | | main.rs:2730:5:2731:19 | S | -| main.rs:2747:13:2747:24 | S(...) | T | main.rs:2730:5:2731:19 | S | -| main.rs:2747:13:2747:24 | S(...) | T.T | main.rs:2745:10:2745:16 | T | -| main.rs:2747:15:2747:23 | S(...) | | main.rs:2730:5:2731:19 | S | -| main.rs:2747:15:2747:23 | S(...) | T | main.rs:2745:10:2745:16 | T | -| main.rs:2747:17:2747:20 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2747:17:2747:20 | self | TRef | main.rs:2730:5:2731:19 | S | -| main.rs:2747:17:2747:20 | self | TRef.T | main.rs:2745:10:2745:16 | T | -| main.rs:2747:17:2747:22 | self.0 | | main.rs:2745:10:2745:16 | T | -| main.rs:2751:14:2751:14 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2751:48:2768:5 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2751:48:2768:5 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2751:48:2768:5 | { ... } | T | main.rs:2726:5:2728:5 | dyn MyTrait | -| main.rs:2751:48:2768:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2752:13:2752:13 | x | | main.rs:2730:5:2731:19 | S | -| main.rs:2752:13:2752:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2752:17:2757:9 | if b {...} else {...} | | main.rs:2730:5:2731:19 | S | -| main.rs:2752:17:2757:9 | if b {...} else {...} | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2752:20:2752:20 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2752:22:2755:9 | { ... } | | main.rs:2730:5:2731:19 | S | -| main.rs:2752:22:2755:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2753:17:2753:17 | y | | main.rs:2730:5:2731:19 | S | -| main.rs:2753:17:2753:17 | y | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2753:21:2753:38 | ...::default(...) | | main.rs:2730:5:2731:19 | S | -| main.rs:2753:21:2753:38 | ...::default(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2754:13:2754:13 | y | | main.rs:2730:5:2731:19 | S | -| main.rs:2754:13:2754:13 | y | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2755:16:2757:9 | { ... } | | main.rs:2730:5:2731:19 | S | -| main.rs:2755:16:2757:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2756:13:2756:16 | S(...) | | main.rs:2730:5:2731:19 | S | -| main.rs:2756:13:2756:16 | S(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2756:15:2756:15 | 2 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2761:13:2761:13 | x | | main.rs:2730:5:2731:19 | S | -| main.rs:2761:13:2761:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2761:17:2761:20 | S(...) | | main.rs:2730:5:2731:19 | S | -| main.rs:2761:17:2761:20 | S(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2761:19:2761:19 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2762:9:2767:9 | if b {...} else {...} | | {EXTERNAL LOCATION} | Box | -| main.rs:2762:9:2767:9 | if b {...} else {...} | A | {EXTERNAL LOCATION} | Global | -| main.rs:2762:9:2767:9 | if b {...} else {...} | T | main.rs:2726:5:2728:5 | dyn MyTrait | -| main.rs:2762:9:2767:9 | if b {...} else {...} | T | main.rs:2730:5:2731:19 | S | -| main.rs:2762:9:2767:9 | if b {...} else {...} | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2762:9:2767:9 | if b {...} else {...} | T.T | main.rs:2730:5:2731:19 | S | -| main.rs:2762:9:2767:9 | if b {...} else {...} | T.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2762:9:2767:9 | if b {...} else {...} | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2762:12:2762:12 | b | | {EXTERNAL LOCATION} | bool | -| main.rs:2762:14:2765:9 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2762:14:2765:9 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2762:14:2765:9 | { ... } | T | main.rs:2726:5:2728:5 | dyn MyTrait | -| main.rs:2762:14:2765:9 | { ... } | T | main.rs:2730:5:2731:19 | S | -| main.rs:2762:14:2765:9 | { ... } | T.T | main.rs:2730:5:2731:19 | S | -| main.rs:2762:14:2765:9 | { ... } | T.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2762:14:2765:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2763:17:2763:17 | x | | main.rs:2730:5:2731:19 | S | -| main.rs:2763:17:2763:17 | x | T | main.rs:2730:5:2731:19 | S | -| main.rs:2763:17:2763:17 | x | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2763:21:2763:21 | x | | main.rs:2730:5:2731:19 | S | -| main.rs:2763:21:2763:21 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2763:21:2763:26 | x.m2() | | main.rs:2730:5:2731:19 | S | -| main.rs:2763:21:2763:26 | x.m2() | T | main.rs:2730:5:2731:19 | S | -| main.rs:2763:21:2763:26 | x.m2() | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2764:13:2764:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2764:13:2764:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2764:13:2764:23 | ...::new(...) | T | main.rs:2726:5:2728:5 | dyn MyTrait | -| main.rs:2764:13:2764:23 | ...::new(...) | T | main.rs:2730:5:2731:19 | S | -| main.rs:2764:13:2764:23 | ...::new(...) | T.T | main.rs:2730:5:2731:19 | S | -| main.rs:2764:13:2764:23 | ...::new(...) | T.T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2764:13:2764:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2764:22:2764:22 | x | | main.rs:2730:5:2731:19 | S | -| main.rs:2764:22:2764:22 | x | T | main.rs:2730:5:2731:19 | S | -| main.rs:2764:22:2764:22 | x | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2765:16:2767:9 | { ... } | | {EXTERNAL LOCATION} | Box | -| main.rs:2765:16:2767:9 | { ... } | A | {EXTERNAL LOCATION} | Global | -| main.rs:2765:16:2767:9 | { ... } | T | main.rs:2726:5:2728:5 | dyn MyTrait | -| main.rs:2765:16:2767:9 | { ... } | T | main.rs:2730:5:2731:19 | S | -| main.rs:2765:16:2767:9 | { ... } | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2765:16:2767:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2766:13:2766:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2766:13:2766:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2766:13:2766:23 | ...::new(...) | T | main.rs:2726:5:2728:5 | dyn MyTrait | -| main.rs:2766:13:2766:23 | ...::new(...) | T | main.rs:2730:5:2731:19 | S | -| main.rs:2766:13:2766:23 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | -| main.rs:2766:13:2766:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2766:22:2766:22 | x | | main.rs:2730:5:2731:19 | S | -| main.rs:2766:22:2766:22 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2772:22:2776:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2773:18:2773:18 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2773:33:2775:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2774:13:2774:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2774:13:2774:17 | ... + ... | | {EXTERNAL LOCATION} | i32 | -| main.rs:2774:17:2774:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2781:11:2781:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2781:30:2789:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2783:13:2783:13 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2783:17:2787:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2784:13:2786:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2784:16:2784:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2784:21:2786:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2785:24:2785:25 | 12 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2788:9:2788:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2792:20:2799:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2795:26:2795:27 | 12 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2797:9:2797:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2797:18:2797:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2797:18:2797:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2797:18:2797:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2797:18:2797:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2797:18:2797:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2798:9:2798:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2801:20:2803:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2802:16:2802:16 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2806:11:2806:14 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2806:30:2814:5 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2807:13:2807:13 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2807:17:2811:9 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2808:13:2810:13 | if cond {...} | | {EXTERNAL LOCATION} | () | -| main.rs:2808:16:2808:19 | cond | | {EXTERNAL LOCATION} | bool | -| main.rs:2808:21:2810:13 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2809:24:2809:25 | 12 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2812:9:2812:30 | MacroExpr | | {EXTERNAL LOCATION} | () | -| main.rs:2812:18:2812:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | -| main.rs:2812:18:2812:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| main.rs:2812:18:2812:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2812:18:2812:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2812:18:2812:29 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2812:29:2812:29 | a | | {EXTERNAL LOCATION} | () | -| main.rs:2813:9:2813:9 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2818:16:2865:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2819:13:2819:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2819:13:2819:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2819:17:2819:20 | None | | {EXTERNAL LOCATION} | Option | -| main.rs:2819:17:2819:20 | None | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2820:13:2820:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2820:13:2820:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2820:30:2820:30 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2820:30:2820:30 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2821:13:2821:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2821:13:2821:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2821:17:2821:35 | ...::None | | {EXTERNAL LOCATION} | Option | -| main.rs:2821:17:2821:35 | ...::None | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2822:13:2822:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2822:13:2822:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2822:17:2822:35 | ...::None::<...> | | {EXTERNAL LOCATION} | Option | -| main.rs:2822:17:2822:35 | ...::None::<...> | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2824:26:2824:28 | opt | | {EXTERNAL LOCATION} | Option | -| main.rs:2824:26:2824:28 | opt | T | main.rs:2824:23:2824:23 | T | -| main.rs:2824:42:2824:42 | x | | main.rs:2824:23:2824:23 | T | -| main.rs:2824:48:2824:49 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2826:13:2826:13 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2826:13:2826:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2826:17:2826:20 | None | | {EXTERNAL LOCATION} | Option | -| main.rs:2826:17:2826:20 | None | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2827:9:2827:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2827:20:2827:20 | x | | {EXTERNAL LOCATION} | Option | -| main.rs:2827:20:2827:20 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2827:23:2827:23 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2834:13:2834:13 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2834:13:2834:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2834:13:2834:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2834:17:2834:39 | ...::A {...} | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2834:17:2834:39 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2834:17:2834:39 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2834:37:2834:37 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2835:13:2835:13 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2835:13:2835:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2835:13:2835:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2835:40:2835:40 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2835:40:2835:40 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2835:40:2835:40 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2836:13:2836:13 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2836:13:2836:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2836:13:2836:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2836:17:2836:52 | ...::A {...} | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2836:17:2836:52 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2836:17:2836:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2836:50:2836:50 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2838:13:2838:13 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2838:13:2838:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2838:13:2838:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2838:17:2840:9 | ...::B::<...> {...} | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2838:17:2840:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2838:17:2840:9 | ...::B::<...> {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2839:20:2839:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2842:29:2842:29 | e | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2842:29:2842:29 | e | T1 | main.rs:2842:26:2842:26 | T | -| main.rs:2842:29:2842:29 | e | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2842:53:2842:53 | x | | main.rs:2842:26:2842:26 | T | -| main.rs:2842:59:2842:60 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2845:13:2845:13 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2845:13:2845:13 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2845:13:2845:13 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2845:17:2847:9 | ...::B {...} | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2845:17:2847:9 | ...::B {...} | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2845:17:2847:9 | ...::B {...} | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2846:20:2846:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | -| main.rs:2848:9:2848:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2848:23:2848:23 | x | | main.rs:2829:9:2832:9 | MyEither | -| main.rs:2848:23:2848:23 | x | T1 | {EXTERNAL LOCATION} | i32 | -| main.rs:2848:23:2848:23 | x | T2 | {EXTERNAL LOCATION} | String | -| main.rs:2848:26:2848:26 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2850:13:2850:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2850:13:2850:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2850:13:2850:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2850:17:2850:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2850:17:2850:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | -| main.rs:2850:17:2850:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2850:28:2850:28 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2851:13:2851:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2851:13:2851:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2851:13:2851:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2851:38:2851:38 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2851:38:2851:38 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2851:38:2851:38 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2852:13:2852:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2852:13:2852:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2852:13:2852:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2852:17:2852:44 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2852:17:2852:44 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | -| main.rs:2852:17:2852:44 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2852:43:2852:43 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2853:13:2853:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2853:13:2853:13 | x | E | {EXTERNAL LOCATION} | String | -| main.rs:2853:13:2853:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2853:17:2853:44 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2853:17:2853:44 | ...::Ok::<...>(...) | E | {EXTERNAL LOCATION} | String | -| main.rs:2853:17:2853:44 | ...::Ok::<...>(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2853:43:2853:43 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2855:29:2855:31 | res | | {EXTERNAL LOCATION} | Result | -| main.rs:2855:29:2855:31 | res | E | main.rs:2855:26:2855:26 | E | -| main.rs:2855:29:2855:31 | res | T | main.rs:2855:23:2855:23 | T | -| main.rs:2855:48:2855:48 | x | | main.rs:2855:26:2855:26 | E | -| main.rs:2855:54:2855:55 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2857:13:2857:13 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2857:13:2857:13 | x | E | {EXTERNAL LOCATION} | bool | -| main.rs:2857:13:2857:13 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2857:17:2857:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | -| main.rs:2857:17:2857:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | bool | -| main.rs:2857:17:2857:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2857:28:2857:28 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2858:9:2858:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2858:20:2858:20 | x | | {EXTERNAL LOCATION} | Result | -| main.rs:2858:20:2858:20 | x | E | {EXTERNAL LOCATION} | bool | -| main.rs:2858:20:2858:20 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2858:23:2858:27 | false | | {EXTERNAL LOCATION} | bool | -| main.rs:2860:17:2860:17 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2860:17:2860:17 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2860:17:2860:17 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2860:21:2860:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | -| main.rs:2860:21:2860:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2860:21:2860:30 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2861:9:2861:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2861:9:2861:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2861:9:2861:9 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2861:9:2861:17 | x.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2861:16:2861:16 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2863:13:2863:13 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:2863:17:2863:34 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2864:9:2864:9 | x | | {EXTERNAL LOCATION} | Vec | -| main.rs:2864:9:2864:9 | x | A | {EXTERNAL LOCATION} | Global | -| main.rs:2864:9:2864:9 | x | T | {EXTERNAL LOCATION} | i32 | -| main.rs:2864:9:2864:17 | x.push(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2864:16:2864:16 | y | | {EXTERNAL LOCATION} | i32 | -| main.rs:2871:14:2871:17 | SelfParam | | main.rs:2869:5:2877:5 | Self [trait MyTrait] | -| main.rs:2874:14:2874:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2874:14:2874:18 | SelfParam | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | -| main.rs:2874:21:2874:25 | other | | {EXTERNAL LOCATION} | & | -| main.rs:2874:21:2874:25 | other | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | -| main.rs:2874:44:2876:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2874:44:2876:9 | { ... } | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | -| main.rs:2875:13:2875:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2875:13:2875:16 | self | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | -| main.rs:2875:13:2875:20 | self.f() | | {EXTERNAL LOCATION} | & | -| main.rs:2875:13:2875:20 | self.f() | TRef | main.rs:2869:5:2877:5 | Self [trait MyTrait] | -| main.rs:2881:14:2881:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | -| main.rs:2881:28:2883:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| main.rs:2882:13:2882:16 | self | | {EXTERNAL LOCATION} | i32 | -| main.rs:2888:14:2888:17 | SelfParam | | {EXTERNAL LOCATION} | usize | -| main.rs:2888:28:2890:9 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2889:13:2889:16 | self | | {EXTERNAL LOCATION} | usize | -| main.rs:2895:14:2895:17 | SelfParam | | {EXTERNAL LOCATION} | & | -| main.rs:2895:14:2895:17 | SelfParam | TRef | main.rs:2893:10:2893:10 | T | -| main.rs:2895:28:2897:9 | { ... } | | {EXTERNAL LOCATION} | & | -| main.rs:2895:28:2897:9 | { ... } | TRef | main.rs:2893:10:2893:10 | T | -| main.rs:2896:13:2896:16 | self | | {EXTERNAL LOCATION} | & | -| main.rs:2896:13:2896:16 | self | TRef | main.rs:2893:10:2893:10 | T | -| main.rs:2900:25:2904:5 | { ... } | | {EXTERNAL LOCATION} | usize | -| main.rs:2901:17:2901:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2901:17:2901:17 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2901:21:2901:21 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2901:21:2901:21 | 0 | | {EXTERNAL LOCATION} | usize | -| main.rs:2902:9:2902:9 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2902:9:2902:9 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2902:9:2902:17 | ... = ... | | {EXTERNAL LOCATION} | () | -| main.rs:2902:13:2902:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2902:13:2902:13 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2902:13:2902:17 | x.f() | | {EXTERNAL LOCATION} | i32 | -| main.rs:2902:13:2902:17 | x.f() | | {EXTERNAL LOCATION} | usize | -| main.rs:2903:9:2903:9 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2903:9:2903:9 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2906:12:2914:5 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2907:13:2907:13 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2907:24:2907:24 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2907:24:2907:24 | 0 | | {EXTERNAL LOCATION} | usize | -| main.rs:2908:13:2908:13 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2908:13:2908:13 | y | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2908:17:2908:18 | &1 | | {EXTERNAL LOCATION} | & | -| main.rs:2908:17:2908:18 | &1 | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2908:18:2908:18 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2909:13:2909:13 | z | | {EXTERNAL LOCATION} | & | -| main.rs:2909:13:2909:13 | z | TRef | {EXTERNAL LOCATION} | usize | -| main.rs:2909:17:2909:17 | x | | {EXTERNAL LOCATION} | usize | -| main.rs:2909:17:2909:22 | x.g(...) | | {EXTERNAL LOCATION} | & | -| main.rs:2909:17:2909:22 | x.g(...) | TRef | {EXTERNAL LOCATION} | usize | -| main.rs:2909:21:2909:21 | y | | {EXTERNAL LOCATION} | & | -| main.rs:2909:21:2909:21 | y | TRef | {EXTERNAL LOCATION} | i32 | -| main.rs:2911:13:2911:13 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2911:17:2911:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2912:13:2912:13 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2912:24:2912:24 | 1 | | {EXTERNAL LOCATION} | i32 | -| main.rs:2912:24:2912:24 | 1 | | {EXTERNAL LOCATION} | usize | -| main.rs:2913:13:2913:13 | z | | {EXTERNAL LOCATION} | i32 | -| main.rs:2913:17:2913:17 | x | | {EXTERNAL LOCATION} | i32 | -| main.rs:2913:17:2913:24 | x.max(...) | | {EXTERNAL LOCATION} | i32 | -| main.rs:2913:23:2913:23 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2923:11:2958:1 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2924:5:2924:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2925:5:2925:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2926:5:2926:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2926:20:2926:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2926:41:2926:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2927:5:2927:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2928:5:2928:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2929:5:2929:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2930:5:2930:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2931:5:2931:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2932:5:2932:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2933:5:2933:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2934:5:2934:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2935:5:2935:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2936:5:2936:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2937:5:2937:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2938:5:2938:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2939:5:2939:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2940:5:2940:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2941:5:2941:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2942:5:2942:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2942:5:2942:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2943:5:2943:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2944:5:2944:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2945:5:2945:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2946:5:2946:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2947:5:2947:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2948:5:2948:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2949:5:2949:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2950:5:2950:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2951:5:2951:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2952:5:2952:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2953:5:2953:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2954:5:2954:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2955:5:2955:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2956:5:2956:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2956:5:2956:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2956:5:2956:20 | ...::f(...) | T | main.rs:2726:5:2728:5 | dyn MyTrait | -| main.rs:2956:5:2956:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2956:16:2956:19 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2957:5:2957:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1190:18:1190:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1190:26:1190:30 | (...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1190:26:1190:30 | (...) | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1190:26:1190:35 | ... .m1() | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1190:27:1190:29 | * ... | | main.rs:1120:5:1121:19 | S | +| main.rs:1190:27:1190:29 | * ... | T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1190:28:1190:29 | x6 | | {EXTERNAL LOCATION} | & | +| main.rs:1190:28:1190:29 | x6 | TRef | main.rs:1120:5:1121:19 | S | +| main.rs:1190:28:1190:29 | x6 | TRef.T | main.rs:1123:5:1124:14 | S2 | +| main.rs:1192:13:1192:14 | x7 | | main.rs:1120:5:1121:19 | S | +| main.rs:1192:13:1192:14 | x7 | T | {EXTERNAL LOCATION} | & | +| main.rs:1192:13:1192:14 | x7 | T.TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1192:18:1192:23 | S(...) | | main.rs:1120:5:1121:19 | S | +| main.rs:1192:18:1192:23 | S(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:1192:18:1192:23 | S(...) | T.TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1192:20:1192:22 | &S2 | | {EXTERNAL LOCATION} | & | +| main.rs:1192:20:1192:22 | &S2 | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1192:21:1192:22 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1195:13:1195:13 | t | | {EXTERNAL LOCATION} | & | +| main.rs:1195:13:1195:13 | t | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1195:17:1195:18 | x7 | | main.rs:1120:5:1121:19 | S | +| main.rs:1195:17:1195:18 | x7 | T | {EXTERNAL LOCATION} | & | +| main.rs:1195:17:1195:18 | x7 | T.TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1195:17:1195:23 | x7.m1() | | {EXTERNAL LOCATION} | & | +| main.rs:1195:17:1195:23 | x7.m1() | TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1196:9:1196:28 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1196:18:1196:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1196:18:1196:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1196:18:1196:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1196:18:1196:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1196:18:1196:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1196:26:1196:27 | x7 | | main.rs:1120:5:1121:19 | S | +| main.rs:1196:26:1196:27 | x7 | T | {EXTERNAL LOCATION} | & | +| main.rs:1196:26:1196:27 | x7 | T.TRef | main.rs:1123:5:1124:14 | S2 | +| main.rs:1198:13:1198:14 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1198:26:1198:32 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1198:26:1198:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1198:26:1198:44 | "Hello".to_string() | | {EXTERNAL LOCATION} | String | +| main.rs:1202:13:1202:13 | u | | {EXTERNAL LOCATION} | Result | +| main.rs:1202:13:1202:13 | u | T | {EXTERNAL LOCATION} | u32 | +| main.rs:1202:17:1202:18 | x9 | | {EXTERNAL LOCATION} | String | +| main.rs:1202:17:1202:33 | x9.parse() | | {EXTERNAL LOCATION} | Result | +| main.rs:1202:17:1202:33 | x9.parse() | T | {EXTERNAL LOCATION} | u32 | +| main.rs:1204:13:1204:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1204:13:1204:20 | my_thing | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1204:24:1204:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1204:24:1204:39 | &... | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1204:25:1204:39 | MyInt {...} | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1204:36:1204:37 | 37 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1206:13:1206:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1206:17:1206:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1206:17:1206:24 | my_thing | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1206:17:1206:43 | my_thing.method_on_borrow() | | {EXTERNAL LOCATION} | i64 | +| main.rs:1207:9:1207:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1207:18:1207:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1207:18:1207:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1207:18:1207:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1207:18:1207:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1207:18:1207:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1207:26:1207:26 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1210:13:1210:20 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1210:13:1210:20 | my_thing | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1210:24:1210:39 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1210:24:1210:39 | &... | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1210:25:1210:39 | MyInt {...} | | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1210:36:1210:37 | 38 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1211:13:1211:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1211:17:1211:24 | my_thing | | {EXTERNAL LOCATION} | & | +| main.rs:1211:17:1211:24 | my_thing | TRef | main.rs:1126:5:1129:5 | MyInt | +| main.rs:1211:17:1211:47 | my_thing.method_not_on_borrow() | | {EXTERNAL LOCATION} | i64 | +| main.rs:1212:9:1212:27 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1212:18:1212:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1212:18:1212:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1212:18:1212:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1212:18:1212:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1212:18:1212:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1212:26:1212:26 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:1219:16:1219:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1219:16:1219:20 | SelfParam | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1222:16:1222:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1222:16:1222:20 | SelfParam | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1222:32:1224:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1222:32:1224:9 | { ... } | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1223:13:1223:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1223:13:1223:16 | self | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1223:13:1223:22 | self.foo() | | {EXTERNAL LOCATION} | & | +| main.rs:1223:13:1223:22 | self.foo() | TRef | main.rs:1217:5:1225:5 | Self [trait MyTrait] | +| main.rs:1231:16:1231:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1231:16:1231:20 | SelfParam | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1231:36:1233:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1231:36:1233:9 | { ... } | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1232:13:1232:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1232:13:1232:16 | self | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1236:16:1239:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1237:13:1237:13 | x | | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1237:17:1237:24 | MyStruct | | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1238:9:1238:9 | x | | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1238:9:1238:15 | x.bar() | | {EXTERNAL LOCATION} | & | +| main.rs:1238:9:1238:15 | x.bar() | TRef | main.rs:1227:5:1227:20 | MyStruct | +| main.rs:1248:16:1248:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1248:16:1248:20 | SelfParam | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1248:16:1248:20 | SelfParam | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1248:32:1250:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1248:32:1250:9 | { ... } | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1248:32:1250:9 | { ... } | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1249:13:1249:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1249:13:1249:16 | self | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1249:13:1249:16 | self | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1252:16:1252:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1252:16:1252:20 | SelfParam | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1252:16:1252:20 | SelfParam | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1252:23:1252:23 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1252:23:1252:23 | x | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1252:23:1252:23 | x | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1252:42:1254:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1252:42:1254:9 | { ... } | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1252:42:1254:9 | { ... } | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1253:13:1253:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1253:13:1253:16 | self | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1253:13:1253:16 | self | TRef.T | main.rs:1247:10:1247:10 | T | +| main.rs:1257:16:1263:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1258:13:1258:13 | x | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1258:13:1258:13 | x | T | main.rs:1243:5:1243:13 | S | +| main.rs:1258:17:1258:27 | MyStruct(...) | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1258:17:1258:27 | MyStruct(...) | T | main.rs:1243:5:1243:13 | S | +| main.rs:1258:26:1258:26 | S | | main.rs:1243:5:1243:13 | S | +| main.rs:1259:9:1259:9 | x | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1259:9:1259:9 | x | T | main.rs:1243:5:1243:13 | S | +| main.rs:1259:9:1259:15 | x.foo() | | {EXTERNAL LOCATION} | & | +| main.rs:1259:9:1259:15 | x.foo() | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1259:9:1259:15 | x.foo() | TRef.T | main.rs:1243:5:1243:13 | S | +| main.rs:1260:13:1260:13 | x | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1260:13:1260:13 | x | T | main.rs:1243:5:1243:13 | S | +| main.rs:1260:17:1260:27 | MyStruct(...) | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1260:17:1260:27 | MyStruct(...) | T | main.rs:1243:5:1243:13 | S | +| main.rs:1260:26:1260:26 | S | | main.rs:1243:5:1243:13 | S | +| main.rs:1262:9:1262:9 | x | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1262:9:1262:9 | x | T | main.rs:1243:5:1243:13 | S | +| main.rs:1262:9:1262:18 | x.bar(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1262:9:1262:18 | x.bar(...) | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1262:9:1262:18 | x.bar(...) | TRef.T | main.rs:1243:5:1243:13 | S | +| main.rs:1262:15:1262:17 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1262:15:1262:17 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1262:15:1262:17 | &... | TRef.TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1262:15:1262:17 | &... | TRef.TRef.T | main.rs:1243:5:1243:13 | S | +| main.rs:1262:16:1262:17 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1262:16:1262:17 | &x | TRef | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1262:16:1262:17 | &x | TRef.T | main.rs:1243:5:1243:13 | S | +| main.rs:1262:17:1262:17 | x | | main.rs:1245:5:1245:26 | MyStruct | +| main.rs:1262:17:1262:17 | x | T | main.rs:1243:5:1243:13 | S | +| main.rs:1273:17:1273:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1273:17:1273:25 | SelfParam | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1273:28:1275:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1274:13:1274:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1274:13:1274:16 | self | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1274:13:1274:21 | self.bool | | {EXTERNAL LOCATION} | bool | +| main.rs:1274:13:1274:34 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:1274:25:1274:34 | ! ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1274:26:1274:29 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1274:26:1274:29 | self | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1274:26:1274:34 | self.bool | | {EXTERNAL LOCATION} | bool | +| main.rs:1281:15:1281:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1281:15:1281:19 | SelfParam | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1281:31:1283:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1281:31:1283:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1282:13:1282:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1282:13:1282:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1282:13:1282:19 | &... | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1282:13:1282:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1282:13:1282:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1282:13:1282:19 | &... | TRef.TRef.TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1282:14:1282:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1282:14:1282:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1282:14:1282:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1282:14:1282:19 | &... | TRef.TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1282:15:1282:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1282:15:1282:19 | &self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1282:15:1282:19 | &self | TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1282:16:1282:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1282:16:1282:19 | self | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1285:15:1285:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1285:15:1285:25 | SelfParam | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1285:37:1287:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1285:37:1287:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1286:13:1286:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1286:13:1286:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1286:13:1286:19 | &... | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1286:13:1286:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1286:13:1286:19 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1286:13:1286:19 | &... | TRef.TRef.TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1286:14:1286:19 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1286:14:1286:19 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1286:14:1286:19 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1286:14:1286:19 | &... | TRef.TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1286:15:1286:19 | &self | | {EXTERNAL LOCATION} | & | +| main.rs:1286:15:1286:19 | &self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1286:15:1286:19 | &self | TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1286:16:1286:19 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1286:16:1286:19 | self | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1289:15:1289:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1289:15:1289:15 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1289:34:1291:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1289:34:1291:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1290:13:1290:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1290:13:1290:13 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1293:15:1293:15 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1293:15:1293:15 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1293:34:1295:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1293:34:1295:9 | { ... } | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1294:13:1294:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1294:13:1294:16 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1294:13:1294:16 | &... | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1294:13:1294:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1294:13:1294:16 | &... | TRef.TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1294:13:1294:16 | &... | TRef.TRef.TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1294:14:1294:16 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1294:14:1294:16 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1294:14:1294:16 | &... | TRef.TRef | {EXTERNAL LOCATION} | & | +| main.rs:1294:14:1294:16 | &... | TRef.TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1294:15:1294:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1294:15:1294:16 | &x | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1294:15:1294:16 | &x | TRef.TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1294:16:1294:16 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1294:16:1294:16 | x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1298:16:1311:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1299:13:1299:13 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1299:17:1299:20 | S {...} | | main.rs:1278:5:1278:13 | S | +| main.rs:1300:9:1300:9 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1300:9:1300:14 | x.f1() | | {EXTERNAL LOCATION} | & | +| main.rs:1300:9:1300:14 | x.f1() | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1301:9:1301:9 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1301:9:1301:14 | x.f2() | | {EXTERNAL LOCATION} | & | +| main.rs:1301:9:1301:14 | x.f2() | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1302:9:1302:17 | ...::f3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1302:9:1302:17 | ...::f3(...) | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1302:15:1302:16 | &x | | {EXTERNAL LOCATION} | & | +| main.rs:1302:15:1302:16 | &x | TRef | main.rs:1278:5:1278:13 | S | +| main.rs:1302:16:1302:16 | x | | main.rs:1278:5:1278:13 | S | +| main.rs:1304:13:1304:13 | n | | {EXTERNAL LOCATION} | bool | +| main.rs:1304:17:1304:24 | * ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1304:18:1304:24 | * ... | | {EXTERNAL LOCATION} | & | +| main.rs:1304:18:1304:24 | * ... | TRef | {EXTERNAL LOCATION} | bool | +| main.rs:1304:19:1304:24 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1304:19:1304:24 | &... | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1304:19:1304:24 | &... | TRef.TRef | {EXTERNAL LOCATION} | bool | +| main.rs:1304:20:1304:24 | &true | | {EXTERNAL LOCATION} | & | +| main.rs:1304:20:1304:24 | &true | TRef | {EXTERNAL LOCATION} | bool | +| main.rs:1304:21:1304:24 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1308:17:1308:20 | flag | | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1308:24:1308:41 | ...::default(...) | | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1309:9:1309:31 | ...::flip(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1309:22:1309:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | +| main.rs:1309:22:1309:30 | &mut flag | TRefMut | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1309:27:1309:30 | flag | | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1310:9:1310:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1310:18:1310:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1310:18:1310:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1310:18:1310:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1310:18:1310:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1310:18:1310:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1310:26:1310:29 | flag | | main.rs:1267:5:1270:5 | MyFlag | +| main.rs:1325:43:1328:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1325:43:1328:5 | { ... } | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1325:43:1328:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1326:13:1326:13 | x | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1326:17:1326:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1326:17:1326:30 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1326:17:1326:31 | TryExpr | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1326:28:1326:29 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1327:9:1327:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1327:9:1327:22 | ...::Ok(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1327:9:1327:22 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1327:20:1327:21 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1332:46:1336:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1332:46:1336:5 | { ... } | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1332:46:1336:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1333:13:1333:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1333:13:1333:13 | x | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1333:17:1333:30 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1333:17:1333:30 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1333:28:1333:29 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1334:13:1334:13 | y | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1334:17:1334:17 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1334:17:1334:17 | x | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1334:17:1334:18 | TryExpr | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1335:9:1335:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1335:9:1335:22 | ...::Ok(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1335:9:1335:22 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1335:20:1335:21 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1340:40:1345:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1340:40:1345:5 | { ... } | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1340:40:1345:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1341:13:1341:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1341:13:1341:13 | x | T | {EXTERNAL LOCATION} | Result | +| main.rs:1341:13:1341:13 | x | T.T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1341:17:1341:42 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1341:17:1341:42 | ...::Ok(...) | T | {EXTERNAL LOCATION} | Result | +| main.rs:1341:17:1341:42 | ...::Ok(...) | T.T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1341:28:1341:41 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1341:28:1341:41 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1341:39:1341:40 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1343:17:1343:17 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:1343:17:1343:17 | x | T | {EXTERNAL LOCATION} | Result | +| main.rs:1343:17:1343:17 | x | T.T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1343:17:1343:18 | TryExpr | | {EXTERNAL LOCATION} | Result | +| main.rs:1343:17:1343:18 | TryExpr | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1343:17:1343:29 | ... .map(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1343:24:1343:28 | \|...\| s | | {EXTERNAL LOCATION} | dyn Fn | +| main.rs:1343:24:1343:28 | \|...\| s | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:1344:9:1344:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1344:9:1344:22 | ...::Ok(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1344:9:1344:22 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1344:20:1344:21 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1349:30:1349:34 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1349:30:1349:34 | input | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1349:30:1349:34 | input | T | main.rs:1349:20:1349:27 | T | +| main.rs:1349:69:1356:5 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1349:69:1356:5 | { ... } | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1349:69:1356:5 | { ... } | T | main.rs:1349:20:1349:27 | T | +| main.rs:1350:13:1350:17 | value | | main.rs:1349:20:1349:27 | T | +| main.rs:1350:21:1350:25 | input | | {EXTERNAL LOCATION} | Result | +| main.rs:1350:21:1350:25 | input | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1350:21:1350:25 | input | T | main.rs:1349:20:1349:27 | T | +| main.rs:1350:21:1350:26 | TryExpr | | main.rs:1349:20:1349:27 | T | +| main.rs:1351:22:1351:38 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1351:22:1351:38 | ...::Ok(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1351:22:1351:38 | ...::Ok(...) | T | main.rs:1349:20:1349:27 | T | +| main.rs:1351:22:1354:10 | ... .and_then(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1351:22:1354:10 | ... .and_then(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1351:33:1351:37 | value | | main.rs:1349:20:1349:27 | T | +| main.rs:1351:49:1354:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| main.rs:1351:49:1354:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:1351:49:1354:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | Result | +| main.rs:1351:49:1354:9 | \|...\| ... | dyn(Output).E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1351:53:1354:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:1351:53:1354:9 | { ... } | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1352:13:1352:31 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1352:22:1352:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1352:22:1352:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1352:22:1352:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1352:22:1352:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1352:22:1352:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1353:13:1353:34 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1353:13:1353:34 | ...::Ok::<...>(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1355:9:1355:23 | ...::Err(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1355:9:1355:23 | ...::Err(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1355:9:1355:23 | ...::Err(...) | T | main.rs:1349:20:1349:27 | T | +| main.rs:1355:21:1355:22 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1359:16:1375:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1360:9:1362:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1360:16:1360:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1360:16:1360:33 | ...::Ok(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:16:1360:33 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:27:1360:32 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:37:1360:52 | try_same_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1360:37:1360:52 | try_same_error(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:37:1360:52 | try_same_error(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1360:54:1362:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1361:13:1361:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1361:22:1361:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1361:22:1361:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1361:22:1361:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1361:22:1361:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1361:22:1361:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1361:30:1361:35 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1364:9:1366:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1364:16:1364:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1364:16:1364:33 | ...::Ok(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1364:16:1364:33 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1364:27:1364:32 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1364:37:1364:55 | try_convert_error(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1364:37:1364:55 | try_convert_error(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1364:37:1364:55 | try_convert_error(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1364:57:1366:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1365:13:1365:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1365:22:1365:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1365:22:1365:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1365:22:1365:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1365:22:1365:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1365:22:1365:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1365:30:1365:35 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1368:9:1370:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1368:16:1368:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1368:16:1368:33 | ...::Ok(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1368:16:1368:33 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1368:27:1368:32 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1368:37:1368:49 | try_chained(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1368:37:1368:49 | try_chained(...) | E | main.rs:1320:5:1321:14 | S2 | +| main.rs:1368:37:1368:49 | try_chained(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1368:51:1370:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1369:13:1369:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1369:22:1369:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1369:22:1369:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1369:22:1369:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1369:22:1369:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1369:22:1369:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1369:30:1369:35 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:9:1374:9 | if ... {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1372:16:1372:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1372:16:1372:33 | ...::Ok(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:16:1372:33 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:27:1372:32 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:37:1372:63 | try_complex(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1372:37:1372:63 | try_complex(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:37:1372:63 | try_complex(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:49:1372:62 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1372:49:1372:62 | ...::Ok(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:49:1372:62 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:60:1372:61 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1372:65:1374:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1373:13:1373:36 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:1373:22:1373:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:1373:22:1373:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1373:22:1373:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:1373:22:1373:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1373:22:1373:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1373:30:1373:35 | result | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1379:16:1470:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1380:13:1380:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1380:22:1380:22 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1381:13:1381:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:1381:17:1381:17 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1382:13:1382:13 | z | | {EXTERNAL LOCATION} | i32 | +| main.rs:1382:17:1382:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1382:17:1382:21 | ... + ... | | {EXTERNAL LOCATION} | i32 | +| main.rs:1382:21:1382:21 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:1383:13:1383:13 | z | | {EXTERNAL LOCATION} | i32 | +| main.rs:1383:17:1383:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1383:17:1383:23 | x.abs() | | {EXTERNAL LOCATION} | i32 | +| main.rs:1384:13:1384:13 | c | | {EXTERNAL LOCATION} | char | +| main.rs:1384:17:1384:19 | 'c' | | {EXTERNAL LOCATION} | char | +| main.rs:1385:13:1385:17 | hello | | {EXTERNAL LOCATION} | & | +| main.rs:1385:13:1385:17 | hello | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1385:21:1385:27 | "Hello" | | {EXTERNAL LOCATION} | & | +| main.rs:1385:21:1385:27 | "Hello" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:1386:13:1386:13 | f | | {EXTERNAL LOCATION} | f64 | +| main.rs:1386:17:1386:24 | 123.0f64 | | {EXTERNAL LOCATION} | f64 | +| main.rs:1387:13:1387:13 | t | | {EXTERNAL LOCATION} | bool | +| main.rs:1387:17:1387:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1388:13:1388:13 | f | | {EXTERNAL LOCATION} | bool | +| main.rs:1388:17:1388:21 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1391:26:1391:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1391:26:1391:30 | SelfParam | TRef | main.rs:1390:9:1394:9 | Self [trait MyTrait] | +| main.rs:1397:26:1397:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1397:26:1397:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1397:26:1397:30 | SelfParam | TRef.TArray | main.rs:1396:14:1396:23 | T | +| main.rs:1397:39:1399:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1397:39:1399:13 | { ... } | TRef | main.rs:1396:14:1396:23 | T | +| main.rs:1398:17:1398:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1398:17:1398:20 | self | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1398:17:1398:20 | self | TRef.TArray | main.rs:1396:14:1396:23 | T | +| main.rs:1398:17:1398:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | +| main.rs:1398:17:1398:36 | ... .unwrap() | TRef | main.rs:1396:14:1396:23 | T | +| main.rs:1398:26:1398:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1401:31:1403:13 | { ... } | | main.rs:1396:14:1396:23 | T | +| main.rs:1402:17:1402:28 | ...::default(...) | | main.rs:1396:14:1396:23 | T | +| main.rs:1406:13:1406:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1406:13:1406:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1406:17:1406:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1406:17:1406:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1406:17:1406:37 | ... .my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1406:17:1406:37 | ... .my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1406:18:1406:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1406:21:1406:21 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1406:24:1406:24 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:13:1407:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1407:13:1407:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:17:1407:47 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1407:17:1407:47 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:22:1407:22 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:37:1407:46 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1407:37:1407:46 | &... | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1407:37:1407:46 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:38:1407:46 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1407:38:1407:46 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:39:1407:39 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:42:1407:42 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1407:45:1407:45 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1408:13:1408:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1408:17:1408:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1408:24:1408:24 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1411:26:1411:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1411:26:1411:30 | SelfParam | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1411:26:1411:30 | SelfParam | TRef.TSlice | main.rs:1410:14:1410:23 | T | +| main.rs:1411:39:1413:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1411:39:1413:13 | { ... } | TRef | main.rs:1410:14:1410:23 | T | +| main.rs:1412:17:1412:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1412:17:1412:20 | self | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1412:17:1412:20 | self | TRef.TSlice | main.rs:1410:14:1410:23 | T | +| main.rs:1412:17:1412:27 | self.get(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1412:17:1412:27 | self.get(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:1412:17:1412:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | +| main.rs:1412:17:1412:36 | ... .unwrap() | TRef | main.rs:1410:14:1410:23 | T | +| main.rs:1412:26:1412:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1415:31:1417:13 | { ... } | | main.rs:1410:14:1410:23 | T | +| main.rs:1416:17:1416:28 | ...::default(...) | | main.rs:1410:14:1410:23 | T | +| main.rs:1420:13:1420:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1420:13:1420:13 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1420:13:1420:13 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:25:1420:34 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1420:25:1420:34 | &... | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1420:25:1420:34 | &... | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:1420:25:1420:34 | &... | TRef.TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:25:1420:34 | &... | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:26:1420:34 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:1420:26:1420:34 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:27:1420:27 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:30:1420:30 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1420:33:1420:33 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1421:13:1421:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1421:13:1421:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1421:17:1421:17 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1421:17:1421:17 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1421:17:1421:17 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1421:17:1421:29 | s.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1421:17:1421:29 | s.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1422:13:1422:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1422:13:1422:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1422:17:1422:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1422:17:1422:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1422:34:1422:34 | s | | {EXTERNAL LOCATION} | & | +| main.rs:1422:34:1422:34 | s | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:1422:34:1422:34 | s | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| main.rs:1423:13:1423:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1423:17:1423:34 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1426:26:1426:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1426:26:1426:30 | SelfParam | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1426:26:1426:30 | SelfParam | TRef.T0 | main.rs:1425:14:1425:23 | T | +| main.rs:1426:26:1426:30 | SelfParam | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1426:39:1428:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1426:39:1428:13 | { ... } | TRef | main.rs:1425:14:1425:23 | T | +| main.rs:1427:17:1427:23 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1427:17:1427:23 | &... | TRef | main.rs:1425:14:1425:23 | T | +| main.rs:1427:18:1427:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1427:18:1427:21 | self | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1427:18:1427:21 | self | TRef.T0 | main.rs:1425:14:1425:23 | T | +| main.rs:1427:18:1427:21 | self | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1427:18:1427:23 | self.0 | | main.rs:1425:14:1425:23 | T | +| main.rs:1430:31:1432:13 | { ... } | | main.rs:1425:14:1425:23 | T | +| main.rs:1431:17:1431:28 | ...::default(...) | | main.rs:1425:14:1425:23 | T | +| main.rs:1435:13:1435:13 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1435:13:1435:13 | p | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1435:13:1435:13 | p | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1435:17:1435:23 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1435:17:1435:23 | TupleExpr | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1435:17:1435:23 | TupleExpr | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1435:18:1435:19 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1435:22:1435:22 | 7 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1436:13:1436:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1436:13:1436:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1436:17:1436:17 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1436:17:1436:17 | p | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1436:17:1436:17 | p | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1436:17:1436:29 | p.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1436:17:1436:29 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1437:13:1437:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1437:13:1437:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1437:17:1437:39 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1437:17:1437:39 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1437:37:1437:38 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1437:37:1437:38 | &p | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1437:37:1437:38 | &p | TRef.T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1437:37:1437:38 | &p | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1437:38:1437:38 | p | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1437:38:1437:38 | p | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:1437:38:1437:38 | p | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:1438:13:1438:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1438:17:1438:39 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1441:26:1441:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1441:26:1441:30 | SelfParam | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1441:26:1441:30 | SelfParam | TRef.TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1441:39:1443:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1441:39:1443:13 | { ... } | TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1442:17:1442:21 | * ... | | {EXTERNAL LOCATION} | & | +| main.rs:1442:17:1442:21 | * ... | TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1442:18:1442:21 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1442:18:1442:21 | self | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1442:18:1442:21 | self | TRef.TRef | main.rs:1440:14:1440:23 | T | +| main.rs:1445:31:1447:13 | { ... } | | main.rs:1440:14:1440:23 | T | +| main.rs:1446:17:1446:28 | ...::default(...) | | main.rs:1440:14:1440:23 | T | +| main.rs:1450:13:1450:13 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1450:13:1450:13 | r | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1450:17:1450:19 | &42 | | {EXTERNAL LOCATION} | & | +| main.rs:1450:17:1450:19 | &42 | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1450:18:1450:19 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1451:13:1451:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1451:13:1451:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1451:17:1451:17 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1451:17:1451:17 | r | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1451:17:1451:29 | r.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1451:17:1451:29 | r.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1452:13:1452:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1452:13:1452:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1452:17:1452:35 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1452:17:1452:35 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1452:33:1452:34 | &r | | {EXTERNAL LOCATION} | & | +| main.rs:1452:33:1452:34 | &r | TRef | {EXTERNAL LOCATION} | & | +| main.rs:1452:33:1452:34 | &r | TRef.TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1452:34:1452:34 | r | | {EXTERNAL LOCATION} | & | +| main.rs:1452:34:1452:34 | r | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1453:13:1453:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1453:17:1453:33 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1456:26:1456:30 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1456:26:1456:30 | SelfParam | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1456:26:1456:30 | SelfParam | TRef.TPtrMut | main.rs:1455:14:1455:23 | T | +| main.rs:1456:39:1458:13 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1456:39:1458:13 | { ... } | TRef | main.rs:1455:14:1455:23 | T | +| main.rs:1457:17:1457:34 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1457:17:1457:34 | { ... } | TRef | main.rs:1455:14:1455:23 | T | +| main.rs:1457:26:1457:32 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1457:26:1457:32 | &... | TRef | main.rs:1455:14:1455:23 | T | +| main.rs:1457:27:1457:32 | * ... | | main.rs:1455:14:1455:23 | T | +| main.rs:1457:28:1457:32 | * ... | | {EXTERNAL LOCATION} | *mut | +| main.rs:1457:28:1457:32 | * ... | TPtrMut | main.rs:1455:14:1455:23 | T | +| main.rs:1457:29:1457:32 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1457:29:1457:32 | self | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1457:29:1457:32 | self | TRef.TPtrMut | main.rs:1455:14:1455:23 | T | +| main.rs:1460:31:1462:13 | { ... } | | main.rs:1455:14:1455:23 | T | +| main.rs:1461:17:1461:28 | ...::default(...) | | main.rs:1455:14:1455:23 | T | +| main.rs:1465:17:1465:17 | v | | {EXTERNAL LOCATION} | i32 | +| main.rs:1465:21:1465:22 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1466:13:1466:13 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1466:13:1466:13 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1466:27:1466:32 | &mut v | | {EXTERNAL LOCATION} | &mut | +| main.rs:1466:27:1466:32 | &mut v | TRefMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1466:32:1466:32 | v | | {EXTERNAL LOCATION} | i32 | +| main.rs:1467:13:1467:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1467:13:1467:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1467:17:1467:40 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1467:17:1467:40 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1467:26:1467:26 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1467:26:1467:26 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1467:26:1467:38 | p.my_method() | | {EXTERNAL LOCATION} | & | +| main.rs:1467:26:1467:38 | p.my_method() | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1468:13:1468:13 | x | | {EXTERNAL LOCATION} | & | +| main.rs:1468:13:1468:13 | x | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1468:17:1468:50 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:1468:17:1468:50 | { ... } | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1468:26:1468:48 | ...::my_method(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1468:26:1468:48 | ...::my_method(...) | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:1468:46:1468:47 | &p | | {EXTERNAL LOCATION} | & | +| main.rs:1468:46:1468:47 | &p | TRef | {EXTERNAL LOCATION} | *mut | +| main.rs:1468:46:1468:47 | &p | TRef.TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1468:47:1468:47 | p | | {EXTERNAL LOCATION} | *mut | +| main.rs:1468:47:1468:47 | p | TPtrMut | {EXTERNAL LOCATION} | i32 | +| main.rs:1469:13:1469:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:1469:17:1469:37 | ...::my_func(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:1475:16:1487:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1476:13:1476:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:1476:17:1476:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1476:17:1476:29 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1476:25:1476:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:13:1477:13 | y | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:17:1477:20 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:17:1477:29 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1477:25:1477:29 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:1479:17:1479:17 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1480:13:1480:16 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:1480:20:1480:21 | 34 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1480:20:1480:27 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1480:26:1480:27 | 33 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1481:9:1485:9 | if cond {...} else {...} | | {EXTERNAL LOCATION} | () | +| main.rs:1481:12:1481:15 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:1481:17:1483:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1482:17:1482:17 | z | | {EXTERNAL LOCATION} | () | +| main.rs:1482:21:1482:27 | (...) | | {EXTERNAL LOCATION} | () | +| main.rs:1482:22:1482:22 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1482:22:1482:26 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:1482:26:1482:26 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1483:16:1485:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1484:13:1484:13 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1484:13:1484:17 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:1484:17:1484:17 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1486:9:1486:9 | a | | {EXTERNAL LOCATION} | i32 | +| main.rs:1500:30:1502:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1501:13:1501:31 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1501:23:1501:23 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1501:29:1501:29 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1508:16:1508:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1508:22:1508:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1508:41:1513:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1509:13:1512:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1510:20:1510:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1510:20:1510:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1510:20:1510:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1510:29:1510:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1510:29:1510:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1511:20:1511:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1511:20:1511:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1511:20:1511:33 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1511:29:1511:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1511:29:1511:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1518:23:1518:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1518:23:1518:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1518:34:1518:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1518:45:1521:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1519:13:1519:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1519:13:1519:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1519:13:1519:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1519:13:1519:27 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1519:23:1519:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1519:23:1519:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1520:13:1520:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1520:13:1520:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1520:13:1520:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1520:13:1520:27 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1520:23:1520:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1520:23:1520:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1526:16:1526:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1526:22:1526:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1526:41:1531:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1527:13:1530:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1528:20:1528:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1528:20:1528:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1528:20:1528:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1528:29:1528:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1528:29:1528:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1529:20:1529:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1529:20:1529:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1529:20:1529:33 | ... - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1529:29:1529:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1529:29:1529:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1536:23:1536:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1536:23:1536:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1536:34:1536:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1536:45:1539:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1537:13:1537:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1537:13:1537:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1537:13:1537:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1537:13:1537:27 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1537:23:1537:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1537:23:1537:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1538:13:1538:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1538:13:1538:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1538:13:1538:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1538:13:1538:27 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1538:23:1538:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1538:23:1538:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1544:16:1544:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1544:22:1544:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1544:41:1549:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1545:13:1548:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1546:20:1546:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1546:20:1546:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1546:20:1546:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1546:29:1546:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1546:29:1546:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1547:20:1547:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1547:20:1547:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1547:20:1547:33 | ... * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1547:29:1547:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1547:29:1547:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1553:23:1553:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1553:23:1553:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1553:34:1553:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1553:45:1556:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1554:13:1554:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1554:13:1554:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1554:13:1554:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1554:13:1554:27 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1554:23:1554:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1554:23:1554:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1555:13:1555:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1555:13:1555:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1555:13:1555:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1555:13:1555:27 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1555:23:1555:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1555:23:1555:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1561:16:1561:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1561:22:1561:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1561:41:1566:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1562:13:1565:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1563:20:1563:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1563:20:1563:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1563:20:1563:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1563:29:1563:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1563:29:1563:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1564:20:1564:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1564:20:1564:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1564:20:1564:33 | ... / ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1564:29:1564:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1564:29:1564:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1570:23:1570:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1570:23:1570:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1570:34:1570:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1570:45:1573:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1571:13:1571:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1571:13:1571:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1571:13:1571:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1571:13:1571:27 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1571:23:1571:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1571:23:1571:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1572:13:1572:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1572:13:1572:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1572:13:1572:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1572:13:1572:27 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1572:23:1572:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1572:23:1572:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1578:16:1578:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1578:22:1578:24 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1578:41:1583:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1579:13:1582:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1580:20:1580:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1580:20:1580:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1580:20:1580:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1580:29:1580:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1580:29:1580:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1581:20:1581:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1581:20:1581:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1581:20:1581:33 | ... % ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1581:29:1581:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1581:29:1581:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1587:23:1587:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1587:23:1587:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1587:34:1587:36 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1587:45:1590:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1588:13:1588:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1588:13:1588:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1588:13:1588:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1588:13:1588:27 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1588:23:1588:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1588:23:1588:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1589:13:1589:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1589:13:1589:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1589:13:1589:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1589:13:1589:27 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1589:23:1589:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1589:23:1589:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1595:19:1595:22 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1595:25:1595:27 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1595:44:1600:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1596:13:1599:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1597:20:1597:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1597:20:1597:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1597:20:1597:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1597:29:1597:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1597:29:1597:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1598:20:1598:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1598:20:1598:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1598:20:1598:33 | ... & ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1598:29:1598:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1598:29:1598:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1604:26:1604:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1604:26:1604:34 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1604:37:1604:39 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1604:48:1607:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1605:13:1605:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1605:13:1605:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1605:13:1605:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1605:13:1605:27 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1605:23:1605:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1605:23:1605:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1606:13:1606:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1606:13:1606:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1606:13:1606:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1606:13:1606:27 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1606:23:1606:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1606:23:1606:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1612:18:1612:21 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1612:24:1612:26 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1612:43:1617:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1613:13:1616:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1614:20:1614:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1614:20:1614:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1614:20:1614:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1614:29:1614:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1614:29:1614:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1615:20:1615:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1615:20:1615:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1615:20:1615:33 | ... \| ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1615:29:1615:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1615:29:1615:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1621:25:1621:33 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1621:25:1621:33 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1621:36:1621:38 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1621:47:1624:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1622:13:1622:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1622:13:1622:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1622:13:1622:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1622:13:1622:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1622:23:1622:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1622:23:1622:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1623:13:1623:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1623:13:1623:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1623:13:1623:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1623:13:1623:27 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1623:23:1623:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1623:23:1623:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1629:19:1629:22 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1629:25:1629:27 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1629:44:1634:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1630:13:1633:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1631:20:1631:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1631:20:1631:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1631:20:1631:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1631:29:1631:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1631:29:1631:33 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1632:20:1632:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1632:20:1632:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1632:20:1632:33 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1632:29:1632:31 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1632:29:1632:33 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1638:26:1638:34 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1638:26:1638:34 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1638:37:1638:39 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1638:48:1641:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1639:13:1639:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1639:13:1639:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1639:13:1639:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1639:13:1639:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1639:23:1639:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1639:23:1639:27 | rhs.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1640:13:1640:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1640:13:1640:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1640:13:1640:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1640:13:1640:27 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1640:23:1640:25 | rhs | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1640:23:1640:27 | rhs.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1646:16:1646:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1646:22:1646:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1646:40:1651:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1647:13:1650:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1648:20:1648:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1648:20:1648:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1648:20:1648:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1648:30:1648:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1649:20:1649:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1649:20:1649:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1649:20:1649:32 | ... << ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1649:30:1649:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1655:23:1655:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1655:23:1655:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1655:34:1655:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1655:44:1658:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1656:13:1656:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1656:13:1656:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1656:13:1656:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1656:13:1656:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1656:24:1656:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1657:13:1657:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1657:13:1657:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1657:13:1657:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1657:13:1657:26 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1657:24:1657:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1663:16:1663:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1663:22:1663:24 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1663:40:1668:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1664:13:1667:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1665:20:1665:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1665:20:1665:25 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1665:20:1665:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1665:30:1665:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1666:20:1666:23 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1666:20:1666:25 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1666:20:1666:32 | ... >> ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1666:30:1666:32 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1672:23:1672:31 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:1672:23:1672:31 | SelfParam | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1672:34:1672:36 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1672:44:1675:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1673:13:1673:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1673:13:1673:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1673:13:1673:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1673:13:1673:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1673:24:1673:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1674:13:1674:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:1674:13:1674:16 | self | TRefMut | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1674:13:1674:18 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1674:13:1674:26 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1674:24:1674:26 | rhs | | {EXTERNAL LOCATION} | u32 | +| main.rs:1680:16:1680:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1680:30:1685:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1681:13:1684:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1682:20:1682:26 | - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1682:21:1682:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1682:21:1682:26 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1683:20:1683:26 | - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1683:21:1683:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1683:21:1683:26 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1690:16:1690:19 | SelfParam | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1690:30:1695:9 | { ... } | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1691:13:1694:13 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1692:20:1692:26 | ! ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1692:21:1692:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1692:21:1692:26 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1693:20:1693:26 | ! ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1693:21:1693:24 | self | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1693:21:1693:26 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1699:15:1699:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1699:15:1699:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1699:22:1699:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1699:22:1699:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1699:44:1701:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:13:1700:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1700:13:1700:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:13:1700:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1700:13:1700:29 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:13:1700:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:23:1700:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1700:23:1700:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:23:1700:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1700:34:1700:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1700:34:1700:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:34:1700:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1700:34:1700:50 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1700:44:1700:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1700:44:1700:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1700:44:1700:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1703:15:1703:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1703:15:1703:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1703:22:1703:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1703:22:1703:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1703:44:1705:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:13:1704:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1704:13:1704:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:13:1704:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1704:13:1704:29 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:13:1704:50 | ... \|\| ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:23:1704:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1704:23:1704:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:23:1704:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1704:34:1704:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1704:34:1704:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:34:1704:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1704:34:1704:50 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1704:44:1704:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1704:44:1704:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1704:44:1704:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1709:24:1709:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1709:24:1709:28 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1709:31:1709:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1709:31:1709:35 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1709:75:1711:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:1709:75:1711:9 | { ... } | T | {EXTERNAL LOCATION} | Ordering | +| main.rs:1710:13:1710:29 | (...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:13:1710:63 | ... .partial_cmp(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1710:13:1710:63 | ... .partial_cmp(...) | T | {EXTERNAL LOCATION} | Ordering | +| main.rs:1710:14:1710:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1710:14:1710:17 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:14:1710:19 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:14:1710:28 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:23:1710:26 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1710:23:1710:26 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:23:1710:28 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:43:1710:62 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:1710:43:1710:62 | &... | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:44:1710:62 | (...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:45:1710:49 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1710:45:1710:49 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:45:1710:51 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:45:1710:61 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1710:55:1710:59 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1710:55:1710:59 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1710:55:1710:61 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1713:15:1713:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1713:15:1713:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1713:22:1713:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1713:22:1713:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1713:44:1715:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:13:1714:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1714:13:1714:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:13:1714:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1714:13:1714:28 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:13:1714:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:22:1714:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1714:22:1714:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:22:1714:28 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1714:33:1714:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1714:33:1714:36 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:33:1714:38 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1714:33:1714:48 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1714:42:1714:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1714:42:1714:46 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1714:42:1714:48 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1717:15:1717:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1717:15:1717:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1717:22:1717:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1717:22:1717:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1717:44:1719:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:13:1718:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1718:13:1718:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:13:1718:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1718:13:1718:29 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:13:1718:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:23:1718:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1718:23:1718:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:23:1718:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1718:34:1718:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1718:34:1718:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:34:1718:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1718:34:1718:50 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1718:44:1718:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1718:44:1718:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1718:44:1718:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1721:15:1721:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1721:15:1721:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1721:22:1721:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1721:22:1721:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1721:44:1723:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:13:1722:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1722:13:1722:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:13:1722:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1722:13:1722:28 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:13:1722:48 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:22:1722:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1722:22:1722:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:22:1722:28 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1722:33:1722:36 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1722:33:1722:36 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:33:1722:38 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1722:33:1722:48 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1722:42:1722:46 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1722:42:1722:46 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1722:42:1722:48 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1725:15:1725:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1725:15:1725:19 | SelfParam | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1725:22:1725:26 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1725:22:1725:26 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1725:44:1727:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:13:1726:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1726:13:1726:16 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:13:1726:18 | self.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1726:13:1726:29 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:13:1726:50 | ... && ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:23:1726:27 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1726:23:1726:27 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:23:1726:29 | other.x | | {EXTERNAL LOCATION} | i64 | +| main.rs:1726:34:1726:37 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1726:34:1726:37 | self | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:34:1726:39 | self.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1726:34:1726:50 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1726:44:1726:48 | other | | {EXTERNAL LOCATION} | & | +| main.rs:1726:44:1726:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1726:44:1726:50 | other.y | | {EXTERNAL LOCATION} | i64 | +| main.rs:1730:26:1730:26 | a | | main.rs:1730:18:1730:23 | T | +| main.rs:1730:32:1730:32 | b | | main.rs:1730:18:1730:23 | T | +| main.rs:1731:9:1731:9 | a | | main.rs:1730:18:1730:23 | T | +| main.rs:1731:13:1731:13 | b | | main.rs:1730:18:1730:23 | T | +| main.rs:1734:16:1865:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1738:13:1738:18 | i64_eq | | {EXTERNAL LOCATION} | bool | +| main.rs:1738:22:1738:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1738:23:1738:26 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1738:23:1738:34 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1738:31:1738:34 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1739:13:1739:18 | i64_ne | | {EXTERNAL LOCATION} | bool | +| main.rs:1739:22:1739:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1739:23:1739:26 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1739:23:1739:34 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1739:31:1739:34 | 4i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1740:13:1740:18 | i64_lt | | {EXTERNAL LOCATION} | bool | +| main.rs:1740:22:1740:34 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1740:23:1740:26 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1740:23:1740:33 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1740:30:1740:33 | 6i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1741:13:1741:18 | i64_le | | {EXTERNAL LOCATION} | bool | +| main.rs:1741:22:1741:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1741:23:1741:26 | 7i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1741:23:1741:34 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1741:31:1741:34 | 8i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1742:13:1742:18 | i64_gt | | {EXTERNAL LOCATION} | bool | +| main.rs:1742:22:1742:35 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1742:23:1742:26 | 9i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1742:23:1742:34 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1742:30:1742:34 | 10i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1743:13:1743:18 | i64_ge | | {EXTERNAL LOCATION} | bool | +| main.rs:1743:22:1743:37 | (...) | | {EXTERNAL LOCATION} | bool | +| main.rs:1743:23:1743:27 | 11i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1743:23:1743:36 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1743:32:1743:36 | 12i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:13:1746:19 | i64_add | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:23:1746:27 | 13i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:23:1746:35 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1746:31:1746:35 | 14i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1747:13:1747:19 | i64_sub | | {EXTERNAL LOCATION} | i64 | +| main.rs:1747:23:1747:27 | 15i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1747:23:1747:35 | ... - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1747:31:1747:35 | 16i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1748:13:1748:19 | i64_mul | | {EXTERNAL LOCATION} | i64 | +| main.rs:1748:23:1748:27 | 17i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1748:23:1748:35 | ... * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1748:31:1748:35 | 18i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:13:1749:19 | i64_div | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:23:1749:27 | 19i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:23:1749:35 | ... / ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1749:31:1749:35 | 20i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:13:1750:19 | i64_rem | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:23:1750:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:23:1750:35 | ... % ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1750:31:1750:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:39:1751:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:45:1751:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1754:17:1754:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1754:34:1754:38 | 23i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1755:9:1755:22 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1755:9:1755:31 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1755:27:1755:31 | 24i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1757:17:1757:30 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1757:34:1757:38 | 25i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1758:9:1758:22 | i64_sub_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1758:9:1758:31 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1758:27:1758:31 | 26i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1760:17:1760:30 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1760:34:1760:38 | 27i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1761:9:1761:22 | i64_mul_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1761:9:1761:31 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1761:27:1761:31 | 28i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1763:17:1763:30 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1763:34:1763:38 | 29i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1764:9:1764:22 | i64_div_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1764:9:1764:31 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1764:27:1764:31 | 30i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1766:17:1766:30 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1766:34:1766:38 | 31i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1767:9:1767:22 | i64_rem_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1767:9:1767:31 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1767:27:1767:31 | 32i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:13:1770:22 | i64_bitand | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:26:1770:30 | 33i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:26:1770:38 | ... & ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1770:34:1770:38 | 34i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:13:1771:21 | i64_bitor | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:25:1771:29 | 35i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:25:1771:37 | ... \| ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1771:33:1771:37 | 36i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1772:13:1772:22 | i64_bitxor | | {EXTERNAL LOCATION} | i64 | +| main.rs:1772:26:1772:30 | 37i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1772:26:1772:38 | ... ^ ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1772:34:1772:38 | 38i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1773:13:1773:19 | i64_shl | | {EXTERNAL LOCATION} | i64 | +| main.rs:1773:23:1773:27 | 39i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1773:23:1773:36 | ... << ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1773:32:1773:36 | 40i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:13:1774:19 | i64_shr | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:23:1774:27 | 41i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:23:1774:36 | ... >> ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1774:32:1774:36 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1777:17:1777:33 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1777:37:1777:41 | 43i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1778:9:1778:25 | i64_bitand_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1778:9:1778:34 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1778:30:1778:34 | 44i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1780:17:1780:32 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1780:36:1780:40 | 45i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1781:9:1781:24 | i64_bitor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1781:9:1781:33 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1781:29:1781:33 | 46i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1783:17:1783:33 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1783:37:1783:41 | 47i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1784:9:1784:25 | i64_bitxor_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1784:9:1784:34 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1784:30:1784:34 | 48i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1786:17:1786:30 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1786:34:1786:38 | 49i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1787:9:1787:22 | i64_shl_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1787:9:1787:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1787:28:1787:32 | 50i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1789:17:1789:30 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1789:34:1789:38 | 51i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1790:9:1790:22 | i64_shr_assign | | {EXTERNAL LOCATION} | i64 | +| main.rs:1790:9:1790:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1790:28:1790:32 | 52i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1792:13:1792:19 | i64_neg | | {EXTERNAL LOCATION} | i64 | +| main.rs:1792:23:1792:28 | - ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1792:24:1792:28 | 53i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1793:13:1793:19 | i64_not | | {EXTERNAL LOCATION} | i64 | +| main.rs:1793:23:1793:28 | ! ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:1793:24:1793:28 | 54i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1796:13:1796:14 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1796:18:1796:36 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1796:28:1796:28 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1796:34:1796:34 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1797:13:1797:14 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1797:18:1797:36 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1797:28:1797:28 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1797:34:1797:34 | 4 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1800:13:1800:19 | vec2_eq | | {EXTERNAL LOCATION} | bool | +| main.rs:1800:23:1800:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1800:23:1800:30 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1800:29:1800:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1801:13:1801:19 | vec2_ne | | {EXTERNAL LOCATION} | bool | +| main.rs:1801:23:1801:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1801:23:1801:30 | ... != ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1801:29:1801:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1802:13:1802:19 | vec2_lt | | {EXTERNAL LOCATION} | bool | +| main.rs:1802:23:1802:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1802:23:1802:29 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1802:28:1802:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1803:13:1803:19 | vec2_le | | {EXTERNAL LOCATION} | bool | +| main.rs:1803:23:1803:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1803:23:1803:30 | ... <= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1803:29:1803:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1804:13:1804:19 | vec2_gt | | {EXTERNAL LOCATION} | bool | +| main.rs:1804:23:1804:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1804:23:1804:29 | ... > ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1804:28:1804:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1805:13:1805:19 | vec2_ge | | {EXTERNAL LOCATION} | bool | +| main.rs:1805:23:1805:24 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1805:23:1805:30 | ... >= ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1805:29:1805:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1808:13:1808:20 | vec2_add | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1808:24:1808:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1808:24:1808:30 | ... + ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1808:29:1808:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1809:13:1809:20 | vec2_sub | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1809:24:1809:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1809:24:1809:30 | ... - ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1809:29:1809:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1810:13:1810:20 | vec2_mul | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1810:24:1810:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1810:24:1810:30 | ... * ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1810:29:1810:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1811:13:1811:20 | vec2_div | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1811:24:1811:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1811:24:1811:30 | ... / ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1811:29:1811:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1812:13:1812:20 | vec2_rem | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1812:24:1812:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1812:24:1812:30 | ... % ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1812:29:1812:30 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1815:17:1815:31 | vec2_add_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1815:35:1815:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1816:9:1816:23 | vec2_add_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1816:9:1816:29 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:1816:28:1816:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1818:17:1818:31 | vec2_sub_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1818:35:1818:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1819:9:1819:23 | vec2_sub_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1819:9:1819:29 | ... -= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1819:28:1819:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1821:17:1821:31 | vec2_mul_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1821:35:1821:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1822:9:1822:23 | vec2_mul_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1822:9:1822:29 | ... *= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1822:28:1822:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1824:17:1824:31 | vec2_div_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1824:35:1824:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1825:9:1825:23 | vec2_div_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1825:9:1825:29 | ... /= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1825:28:1825:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1827:17:1827:31 | vec2_rem_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1827:35:1827:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1828:9:1828:23 | vec2_rem_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1828:9:1828:29 | ... %= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1828:28:1828:29 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1831:13:1831:23 | vec2_bitand | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1831:27:1831:28 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1831:27:1831:33 | ... & ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1831:32:1831:33 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1832:13:1832:22 | vec2_bitor | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1832:26:1832:27 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1832:26:1832:32 | ... \| ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1832:31:1832:32 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1833:13:1833:23 | vec2_bitxor | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1833:27:1833:28 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1833:27:1833:33 | ... ^ ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1833:32:1833:33 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1834:13:1834:20 | vec2_shl | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1834:24:1834:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1834:24:1834:33 | ... << ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1834:30:1834:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1835:13:1835:20 | vec2_shr | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1835:24:1835:25 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1835:24:1835:33 | ... >> ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1835:30:1835:33 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1838:17:1838:34 | vec2_bitand_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1838:38:1838:39 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1839:9:1839:26 | vec2_bitand_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1839:9:1839:32 | ... &= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1839:31:1839:32 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1841:17:1841:33 | vec2_bitor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1841:37:1841:38 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1842:9:1842:25 | vec2_bitor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1842:9:1842:31 | ... \|= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1842:30:1842:31 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1844:17:1844:34 | vec2_bitxor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1844:38:1844:39 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1845:9:1845:26 | vec2_bitxor_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1845:9:1845:32 | ... ^= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1845:31:1845:32 | v2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1847:17:1847:31 | vec2_shl_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1847:35:1847:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1848:9:1848:23 | vec2_shl_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1848:9:1848:32 | ... <<= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1848:29:1848:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1850:17:1850:31 | vec2_shr_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1850:35:1850:36 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1851:9:1851:23 | vec2_shr_assign | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1851:9:1851:32 | ... >>= ... | | {EXTERNAL LOCATION} | () | +| main.rs:1851:29:1851:32 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:1854:13:1854:20 | vec2_neg | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1854:24:1854:26 | - ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1854:25:1854:26 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1855:13:1855:20 | vec2_not | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1855:24:1855:26 | ! ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1855:25:1855:26 | v1 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1858:13:1858:24 | default_vec2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1858:28:1858:45 | ...::default(...) | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1859:13:1859:26 | vec2_zero_plus | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1859:30:1859:48 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1859:30:1859:63 | ... + ... | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1859:40:1859:40 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1859:46:1859:46 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1859:52:1859:63 | default_vec2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1863:13:1863:24 | default_vec2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1863:28:1863:45 | ...::default(...) | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1864:13:1864:26 | vec2_zero_plus | | {EXTERNAL LOCATION} | bool | +| main.rs:1864:30:1864:48 | Vec2 {...} | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1864:30:1864:64 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:1864:40:1864:40 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1864:46:1864:46 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1864:53:1864:64 | default_vec2 | | main.rs:1493:5:1498:5 | Vec2 | +| main.rs:1874:18:1874:21 | SelfParam | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1874:24:1874:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1877:25:1879:5 | { ... } | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1878:9:1878:10 | S1 | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1881:41:1883:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1881:41:1883:5 | { ... } | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1882:9:1882:20 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1882:9:1882:20 | { ... } | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1882:17:1882:18 | S1 | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1885:41:1887:5 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1885:41:1887:5 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:1886:9:1886:16 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1886:9:1886:16 | { ... } | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:1895:13:1895:42 | SelfParam | | {EXTERNAL LOCATION} | Pin | +| main.rs:1895:13:1895:42 | SelfParam | Ptr | {EXTERNAL LOCATION} | &mut | +| main.rs:1895:13:1895:42 | SelfParam | Ptr.TRefMut | main.rs:1889:5:1889:14 | S2 | +| main.rs:1896:13:1896:15 | _cx | | {EXTERNAL LOCATION} | &mut | +| main.rs:1896:13:1896:15 | _cx | TRefMut | {EXTERNAL LOCATION} | Context | +| main.rs:1897:44:1899:9 | { ... } | | {EXTERNAL LOCATION} | Poll | +| main.rs:1897:44:1899:9 | { ... } | T | main.rs:1871:5:1871:14 | S1 | +| main.rs:1898:13:1898:38 | ...::Ready(...) | | {EXTERNAL LOCATION} | Poll | +| main.rs:1898:13:1898:38 | ...::Ready(...) | T | main.rs:1871:5:1871:14 | S1 | +| main.rs:1898:36:1898:37 | S1 | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1902:41:1904:5 | { ... } | | main.rs:1889:5:1889:14 | S2 | +| main.rs:1903:9:1903:10 | S2 | | main.rs:1889:5:1889:14 | S2 | +| main.rs:1906:22:1914:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1907:9:1907:12 | f1(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1907:9:1907:12 | f1(...) | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1907:9:1907:18 | await ... | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1907:9:1907:22 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:1908:9:1908:12 | f2(...) | | main.rs:1881:16:1881:39 | impl ... | +| main.rs:1908:9:1908:18 | await ... | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1908:9:1908:22 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:1909:9:1909:12 | f3(...) | | main.rs:1885:16:1885:39 | impl ... | +| main.rs:1909:9:1909:18 | await ... | | {EXTERNAL LOCATION} | () | +| main.rs:1910:9:1910:12 | f4(...) | | main.rs:1902:16:1902:39 | impl ... | +| main.rs:1910:9:1910:18 | await ... | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1910:9:1910:22 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:1911:9:1911:10 | S2 | | main.rs:1889:5:1889:14 | S2 | +| main.rs:1911:9:1911:16 | await S2 | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1911:9:1911:20 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:1912:13:1912:13 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1912:13:1912:13 | b | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1912:17:1912:28 | { ... } | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1912:17:1912:28 | { ... } | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1912:25:1912:26 | S1 | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1913:9:1913:9 | b | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:1913:9:1913:9 | b | dyn(Output) | main.rs:1871:5:1871:14 | S1 | +| main.rs:1913:9:1913:15 | await b | | main.rs:1871:5:1871:14 | S1 | +| main.rs:1913:9:1913:19 | ... .f() | | {EXTERNAL LOCATION} | () | +| main.rs:1924:15:1924:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1924:15:1924:19 | SelfParam | TRef | main.rs:1923:5:1925:5 | Self [trait Trait1] | +| main.rs:1924:22:1924:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1928:15:1928:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1928:15:1928:19 | SelfParam | TRef | main.rs:1927:5:1929:5 | Self [trait Trait2] | +| main.rs:1928:22:1928:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1932:15:1932:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1932:15:1932:19 | SelfParam | TRef | main.rs:1918:5:1919:14 | S1 | +| main.rs:1932:22:1932:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1936:15:1936:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1936:15:1936:19 | SelfParam | TRef | main.rs:1918:5:1919:14 | S1 | +| main.rs:1936:22:1936:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1939:37:1941:5 | { ... } | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1940:9:1940:10 | S1 | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1944:18:1944:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1944:18:1944:22 | SelfParam | TRef | main.rs:1943:5:1945:5 | Self [trait MyTrait] | +| main.rs:1948:18:1948:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1948:18:1948:22 | SelfParam | TRef | main.rs:1918:5:1919:14 | S1 | +| main.rs:1948:31:1950:9 | { ... } | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1949:13:1949:14 | S2 | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1954:18:1954:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:1954:18:1954:22 | SelfParam | TRef | main.rs:1921:5:1921:22 | S3 | +| main.rs:1954:18:1954:22 | SelfParam | TRef.T3 | main.rs:1953:10:1953:17 | T | +| main.rs:1954:30:1957:9 | { ... } | | main.rs:1953:10:1953:17 | T | +| main.rs:1955:17:1955:21 | S3(...) | | {EXTERNAL LOCATION} | & | +| main.rs:1955:17:1955:21 | S3(...) | | main.rs:1921:5:1921:22 | S3 | +| main.rs:1955:17:1955:21 | S3(...) | TRef | main.rs:1921:5:1921:22 | S3 | +| main.rs:1955:17:1955:21 | S3(...) | TRef.T3 | main.rs:1953:10:1953:17 | T | +| main.rs:1955:25:1955:28 | self | | {EXTERNAL LOCATION} | & | +| main.rs:1955:25:1955:28 | self | TRef | main.rs:1921:5:1921:22 | S3 | +| main.rs:1955:25:1955:28 | self | TRef.T3 | main.rs:1953:10:1953:17 | T | +| main.rs:1956:13:1956:21 | t.clone() | | main.rs:1953:10:1953:17 | T | +| main.rs:1960:45:1962:5 | { ... } | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1961:9:1961:10 | S1 | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1964:41:1964:41 | t | | main.rs:1964:26:1964:38 | B | +| main.rs:1964:52:1966:5 | { ... } | | main.rs:1964:23:1964:23 | A | +| main.rs:1965:9:1965:9 | t | | main.rs:1964:26:1964:38 | B | +| main.rs:1965:9:1965:17 | t.get_a() | | main.rs:1964:23:1964:23 | A | +| main.rs:1968:34:1968:34 | x | | main.rs:1968:24:1968:31 | T | +| main.rs:1968:59:1970:5 | { ... } | | main.rs:1968:43:1968:57 | impl ... | +| main.rs:1968:59:1970:5 | { ... } | impl(T) | main.rs:1968:24:1968:31 | T | +| main.rs:1969:9:1969:13 | S3(...) | | main.rs:1921:5:1921:22 | S3 | +| main.rs:1969:9:1969:13 | S3(...) | | main.rs:1968:43:1968:57 | impl ... | +| main.rs:1969:9:1969:13 | S3(...) | T3 | main.rs:1968:24:1968:31 | T | +| main.rs:1969:9:1969:13 | S3(...) | impl(T) | main.rs:1968:24:1968:31 | T | +| main.rs:1969:12:1969:12 | x | | main.rs:1968:24:1968:31 | T | +| main.rs:1972:34:1972:34 | x | | main.rs:1972:24:1972:31 | T | +| main.rs:1972:67:1974:5 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:1972:67:1974:5 | { ... } | T | main.rs:1972:50:1972:64 | impl ... | +| main.rs:1972:67:1974:5 | { ... } | T.impl(T) | main.rs:1972:24:1972:31 | T | +| main.rs:1973:9:1973:19 | Some(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1973:9:1973:19 | Some(...) | T | main.rs:1921:5:1921:22 | S3 | +| main.rs:1973:9:1973:19 | Some(...) | T | main.rs:1972:50:1972:64 | impl ... | +| main.rs:1973:9:1973:19 | Some(...) | T.T3 | main.rs:1972:24:1972:31 | T | +| main.rs:1973:9:1973:19 | Some(...) | T.impl(T) | main.rs:1972:24:1972:31 | T | +| main.rs:1973:14:1973:18 | S3(...) | | main.rs:1921:5:1921:22 | S3 | +| main.rs:1973:14:1973:18 | S3(...) | T3 | main.rs:1972:24:1972:31 | T | +| main.rs:1973:17:1973:17 | x | | main.rs:1972:24:1972:31 | T | +| main.rs:1976:34:1976:34 | x | | main.rs:1976:24:1976:31 | T | +| main.rs:1976:78:1978:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1976:78:1978:5 | { ... } | T0 | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1976:78:1978:5 | { ... } | T0.impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1976:78:1978:5 | { ... } | T1 | main.rs:1976:61:1976:75 | impl ... | +| main.rs:1976:78:1978:5 | { ... } | T1.impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1977:9:1977:30 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1977:9:1977:30 | TupleExpr | T0 | main.rs:1921:5:1921:22 | S3 | +| main.rs:1977:9:1977:30 | TupleExpr | T0 | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1977:9:1977:30 | TupleExpr | T0.T3 | main.rs:1976:24:1976:31 | T | +| main.rs:1977:9:1977:30 | TupleExpr | T0.impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1977:9:1977:30 | TupleExpr | T1 | main.rs:1921:5:1921:22 | S3 | +| main.rs:1977:9:1977:30 | TupleExpr | T1 | main.rs:1976:61:1976:75 | impl ... | +| main.rs:1977:9:1977:30 | TupleExpr | T1.T3 | main.rs:1976:24:1976:31 | T | +| main.rs:1977:9:1977:30 | TupleExpr | T1.impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1977:10:1977:22 | S3(...) | | main.rs:1921:5:1921:22 | S3 | +| main.rs:1977:10:1977:22 | S3(...) | | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1977:10:1977:22 | S3(...) | T3 | main.rs:1976:24:1976:31 | T | +| main.rs:1977:10:1977:22 | S3(...) | impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1977:13:1977:13 | x | | main.rs:1976:24:1976:31 | T | +| main.rs:1977:13:1977:21 | x.clone() | | main.rs:1976:24:1976:31 | T | +| main.rs:1977:25:1977:29 | S3(...) | | main.rs:1921:5:1921:22 | S3 | +| main.rs:1977:25:1977:29 | S3(...) | | main.rs:1976:61:1976:75 | impl ... | +| main.rs:1977:25:1977:29 | S3(...) | T3 | main.rs:1976:24:1976:31 | T | +| main.rs:1977:25:1977:29 | S3(...) | impl(T) | main.rs:1976:24:1976:31 | T | +| main.rs:1977:28:1977:28 | x | | main.rs:1976:24:1976:31 | T | +| main.rs:1980:26:1980:26 | t | | main.rs:1980:29:1980:43 | impl ... | +| main.rs:1980:51:1982:5 | { ... } | | main.rs:1980:23:1980:23 | A | +| main.rs:1981:9:1981:9 | t | | main.rs:1980:29:1980:43 | impl ... | +| main.rs:1981:9:1981:17 | t.get_a() | | main.rs:1980:23:1980:23 | A | +| main.rs:1984:16:1998:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1985:13:1985:13 | x | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1985:17:1985:20 | f1(...) | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1986:9:1986:9 | x | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1986:9:1986:14 | x.f1() | | {EXTERNAL LOCATION} | () | +| main.rs:1987:9:1987:9 | x | | main.rs:1939:16:1939:35 | impl ... + ... | +| main.rs:1987:9:1987:14 | x.f2() | | {EXTERNAL LOCATION} | () | +| main.rs:1988:13:1988:13 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1988:17:1988:32 | get_a_my_trait(...) | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1989:13:1989:13 | b | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1989:17:1989:33 | uses_my_trait1(...) | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1989:32:1989:32 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1990:13:1990:13 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1990:17:1990:32 | get_a_my_trait(...) | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1991:13:1991:13 | c | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1991:17:1991:33 | uses_my_trait2(...) | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1991:32:1991:32 | a | | main.rs:1960:28:1960:43 | impl ... | +| main.rs:1992:13:1992:13 | d | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1992:17:1992:34 | uses_my_trait2(...) | | main.rs:1920:5:1920:14 | S2 | +| main.rs:1992:32:1992:33 | S1 | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1993:13:1993:13 | e | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1993:17:1993:35 | get_a_my_trait2(...) | | main.rs:1968:43:1968:57 | impl ... | +| main.rs:1993:17:1993:35 | get_a_my_trait2(...) | impl(T) | main.rs:1918:5:1919:14 | S1 | +| main.rs:1993:17:1993:43 | ... .get_a() | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1993:33:1993:34 | S1 | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1996:13:1996:13 | f | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1996:17:1996:35 | get_a_my_trait3(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:1996:17:1996:35 | get_a_my_trait3(...) | T | main.rs:1972:50:1972:64 | impl ... | +| main.rs:1996:17:1996:35 | get_a_my_trait3(...) | T.impl(T) | main.rs:1918:5:1919:14 | S1 | +| main.rs:1996:17:1996:44 | ... .unwrap() | | main.rs:1972:50:1972:64 | impl ... | +| main.rs:1996:17:1996:44 | ... .unwrap() | impl(T) | main.rs:1918:5:1919:14 | S1 | +| main.rs:1996:17:1996:52 | ... .get_a() | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1996:33:1996:34 | S1 | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1997:13:1997:13 | g | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | T0 | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | T0.impl(T) | main.rs:1918:5:1919:14 | S1 | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | T1 | main.rs:1976:61:1976:75 | impl ... | +| main.rs:1997:17:1997:35 | get_a_my_trait4(...) | T1.impl(T) | main.rs:1918:5:1919:14 | S1 | +| main.rs:1997:17:1997:37 | ... .0 | | main.rs:1976:44:1976:58 | impl ... | +| main.rs:1997:17:1997:37 | ... .0 | impl(T) | main.rs:1918:5:1919:14 | S1 | +| main.rs:1997:17:1997:45 | ... .get_a() | | main.rs:1918:5:1919:14 | S1 | +| main.rs:1997:33:1997:34 | S1 | | main.rs:1918:5:1919:14 | S1 | +| main.rs:2008:16:2008:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2008:16:2008:20 | SelfParam | TRef | main.rs:2004:5:2005:13 | S | +| main.rs:2008:31:2010:9 | { ... } | | main.rs:2004:5:2005:13 | S | +| main.rs:2009:13:2009:13 | S | | main.rs:2004:5:2005:13 | S | +| main.rs:2019:26:2021:9 | { ... } | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2019:26:2021:9 | { ... } | T | main.rs:2018:10:2018:10 | T | +| main.rs:2020:13:2020:38 | MyVec {...} | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2020:13:2020:38 | MyVec {...} | T | main.rs:2018:10:2018:10 | T | +| main.rs:2020:27:2020:36 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2020:27:2020:36 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2020:27:2020:36 | ...::new(...) | T | main.rs:2018:10:2018:10 | T | +| main.rs:2023:17:2023:25 | SelfParam | | {EXTERNAL LOCATION} | &mut | +| main.rs:2023:17:2023:25 | SelfParam | TRefMut | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2023:17:2023:25 | SelfParam | TRefMut.T | main.rs:2018:10:2018:10 | T | +| main.rs:2023:28:2023:32 | value | | main.rs:2018:10:2018:10 | T | +| main.rs:2023:38:2025:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2024:13:2024:16 | self | | {EXTERNAL LOCATION} | &mut | +| main.rs:2024:13:2024:16 | self | TRefMut | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2024:13:2024:16 | self | TRefMut.T | main.rs:2018:10:2018:10 | T | +| main.rs:2024:13:2024:21 | self.data | | {EXTERNAL LOCATION} | Vec | +| main.rs:2024:13:2024:21 | self.data | A | {EXTERNAL LOCATION} | Global | +| main.rs:2024:13:2024:21 | self.data | T | main.rs:2018:10:2018:10 | T | +| main.rs:2024:13:2024:33 | ... .push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2024:28:2024:32 | value | | main.rs:2018:10:2018:10 | T | +| main.rs:2032:18:2032:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2032:18:2032:22 | SelfParam | TRef | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2032:18:2032:22 | SelfParam | TRef.T | main.rs:2028:10:2028:10 | T | +| main.rs:2032:25:2032:29 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2032:56:2034:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2032:56:2034:9 | { ... } | TRef | main.rs:2028:10:2028:10 | T | +| main.rs:2033:13:2033:29 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2033:13:2033:29 | &... | TRef | main.rs:2028:10:2028:10 | T | +| main.rs:2033:14:2033:17 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2033:14:2033:17 | self | TRef | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2033:14:2033:17 | self | TRef.T | main.rs:2028:10:2028:10 | T | +| main.rs:2033:14:2033:22 | self.data | | {EXTERNAL LOCATION} | Vec | +| main.rs:2033:14:2033:22 | self.data | A | {EXTERNAL LOCATION} | Global | +| main.rs:2033:14:2033:22 | self.data | T | main.rs:2028:10:2028:10 | T | +| main.rs:2033:14:2033:29 | ...[index] | | main.rs:2028:10:2028:10 | T | +| main.rs:2033:24:2033:28 | index | | {EXTERNAL LOCATION} | usize | +| main.rs:2037:22:2037:26 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2037:22:2037:26 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2037:22:2037:26 | slice | TRef.TSlice | main.rs:2004:5:2005:13 | S | +| main.rs:2037:35:2039:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2038:13:2038:13 | x | | main.rs:2004:5:2005:13 | S | +| main.rs:2038:17:2038:21 | slice | | {EXTERNAL LOCATION} | & | +| main.rs:2038:17:2038:21 | slice | TRef | {EXTERNAL LOCATION} | [] | +| main.rs:2038:17:2038:21 | slice | TRef.TSlice | main.rs:2004:5:2005:13 | S | +| main.rs:2038:17:2038:24 | slice[0] | | main.rs:2004:5:2005:13 | S | +| main.rs:2038:17:2038:30 | ... .foo() | | main.rs:2004:5:2005:13 | S | +| main.rs:2038:23:2038:23 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2041:37:2041:37 | a | | main.rs:2041:20:2041:34 | T | +| main.rs:2041:43:2041:43 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2045:9:2045:9 | a | | main.rs:2041:20:2041:34 | T | +| main.rs:2045:11:2045:11 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2048:16:2059:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2049:17:2049:19 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2049:17:2049:19 | vec | T | main.rs:2004:5:2005:13 | S | +| main.rs:2049:23:2049:34 | ...::new(...) | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2049:23:2049:34 | ...::new(...) | T | main.rs:2004:5:2005:13 | S | +| main.rs:2050:9:2050:11 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2050:9:2050:11 | vec | T | main.rs:2004:5:2005:13 | S | +| main.rs:2050:9:2050:19 | vec.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2050:18:2050:18 | S | | main.rs:2004:5:2005:13 | S | +| main.rs:2051:9:2051:11 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2051:9:2051:11 | vec | T | main.rs:2004:5:2005:13 | S | +| main.rs:2051:9:2051:14 | vec[0] | | main.rs:2004:5:2005:13 | S | +| main.rs:2051:9:2051:20 | ... .foo() | | main.rs:2004:5:2005:13 | S | +| main.rs:2051:13:2051:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2053:13:2053:14 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2053:13:2053:14 | xs | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2053:21:2053:21 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2053:26:2053:28 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2053:26:2053:28 | [...] | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2053:27:2053:27 | S | | main.rs:2004:5:2005:13 | S | +| main.rs:2054:13:2054:13 | x | | main.rs:2004:5:2005:13 | S | +| main.rs:2054:17:2054:18 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2054:17:2054:18 | xs | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2054:17:2054:21 | xs[0] | | main.rs:2004:5:2005:13 | S | +| main.rs:2054:17:2054:27 | ... .foo() | | main.rs:2004:5:2005:13 | S | +| main.rs:2054:20:2054:20 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2056:29:2056:31 | vec | | main.rs:2013:5:2016:5 | MyVec | +| main.rs:2056:29:2056:31 | vec | T | main.rs:2004:5:2005:13 | S | +| main.rs:2056:34:2056:34 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2058:9:2058:26 | analyze_slice(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2058:23:2058:25 | &xs | | {EXTERNAL LOCATION} | & | +| main.rs:2058:23:2058:25 | &xs | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2058:23:2058:25 | &xs | TRef.TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2058:24:2058:25 | xs | | {EXTERNAL LOCATION} | [;] | +| main.rs:2058:24:2058:25 | xs | TArray | main.rs:2004:5:2005:13 | S | +| main.rs:2063:16:2065:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2064:13:2064:13 | x | | {EXTERNAL LOCATION} | String | +| main.rs:2064:17:2064:46 | MacroExpr | | {EXTERNAL LOCATION} | String | +| main.rs:2064:25:2064:35 | "Hello, {}" | | {EXTERNAL LOCATION} | & | +| main.rs:2064:25:2064:35 | "Hello, {}" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2064:25:2064:45 | ...::format(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2064:25:2064:45 | ...::must_use(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2064:25:2064:45 | { ... } | | {EXTERNAL LOCATION} | String | +| main.rs:2064:38:2064:45 | "World!" | | {EXTERNAL LOCATION} | & | +| main.rs:2064:38:2064:45 | "World!" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2073:19:2073:22 | SelfParam | | main.rs:2069:5:2074:5 | Self [trait MyAdd] | +| main.rs:2073:25:2073:27 | rhs | | main.rs:2069:17:2069:26 | Rhs | +| main.rs:2080:19:2080:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2080:25:2080:29 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2080:45:2082:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2081:13:2081:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2089:19:2089:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2089:25:2089:29 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2089:25:2089:29 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2089:46:2091:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2090:13:2090:18 | * ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:2090:14:2090:18 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2090:14:2090:18 | value | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2098:19:2098:22 | SelfParam | | {EXTERNAL LOCATION} | i64 | +| main.rs:2098:25:2098:29 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2098:46:2104:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2099:13:2103:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| main.rs:2099:13:2103:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | +| main.rs:2099:16:2099:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2099:22:2101:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2099:22:2101:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2100:17:2100:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2100:17:2100:17 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2101:20:2103:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2101:20:2103:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2102:17:2102:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2102:17:2102:17 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2113:19:2113:22 | SelfParam | | main.rs:2107:5:2107:19 | S | +| main.rs:2113:19:2113:22 | SelfParam | T | main.rs:2109:10:2109:17 | T | +| main.rs:2113:25:2113:29 | other | | main.rs:2107:5:2107:19 | S | +| main.rs:2113:25:2113:29 | other | T | main.rs:2109:10:2109:17 | T | +| main.rs:2113:54:2115:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:13:2114:39 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:15:2114:22 | (...) | | main.rs:2109:10:2109:17 | T | +| main.rs:2114:16:2114:19 | self | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:16:2114:19 | self | T | main.rs:2109:10:2109:17 | T | +| main.rs:2114:16:2114:21 | self.0 | | main.rs:2109:10:2109:17 | T | +| main.rs:2114:31:2114:35 | other | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:31:2114:35 | other | T | main.rs:2109:10:2109:17 | T | +| main.rs:2114:31:2114:37 | other.0 | | main.rs:2109:10:2109:17 | T | +| main.rs:2122:19:2122:22 | SelfParam | | main.rs:2107:5:2107:19 | S | +| main.rs:2122:19:2122:22 | SelfParam | T | main.rs:2118:10:2118:17 | T | +| main.rs:2122:25:2122:29 | other | | main.rs:2118:10:2118:17 | T | +| main.rs:2122:51:2124:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2123:13:2123:37 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2123:15:2123:22 | (...) | | main.rs:2118:10:2118:17 | T | +| main.rs:2123:16:2123:19 | self | | main.rs:2107:5:2107:19 | S | +| main.rs:2123:16:2123:19 | self | T | main.rs:2118:10:2118:17 | T | +| main.rs:2123:16:2123:21 | self.0 | | main.rs:2118:10:2118:17 | T | +| main.rs:2123:31:2123:35 | other | | main.rs:2118:10:2118:17 | T | +| main.rs:2134:19:2134:22 | SelfParam | | main.rs:2107:5:2107:19 | S | +| main.rs:2134:19:2134:22 | SelfParam | T | main.rs:2127:14:2127:14 | T | +| main.rs:2134:25:2134:29 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2134:25:2134:29 | other | TRef | main.rs:2127:14:2127:14 | T | +| main.rs:2134:55:2136:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2135:13:2135:37 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2135:15:2135:22 | (...) | | main.rs:2127:14:2127:14 | T | +| main.rs:2135:16:2135:19 | self | | main.rs:2107:5:2107:19 | S | +| main.rs:2135:16:2135:19 | self | T | main.rs:2127:14:2127:14 | T | +| main.rs:2135:16:2135:21 | self.0 | | main.rs:2127:14:2127:14 | T | +| main.rs:2135:31:2135:35 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2135:31:2135:35 | other | TRef | main.rs:2127:14:2127:14 | T | +| main.rs:2141:20:2141:24 | value | | main.rs:2139:18:2139:18 | T | +| main.rs:2146:20:2146:24 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2146:40:2148:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2147:13:2147:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2153:20:2153:24 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2153:41:2159:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2154:13:2158:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| main.rs:2154:13:2158:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i64 | +| main.rs:2154:16:2154:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2154:22:2156:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2154:22:2156:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2155:17:2155:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2155:17:2155:17 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2156:20:2158:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2156:20:2158:13 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2157:17:2157:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2157:17:2157:17 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2164:21:2164:25 | value | | main.rs:2162:19:2162:19 | T | +| main.rs:2164:31:2164:31 | x | | main.rs:2162:5:2165:5 | Self [trait MyFrom2] | +| main.rs:2169:21:2169:25 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2169:33:2169:33 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2169:48:2171:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2170:13:2170:17 | value | | {EXTERNAL LOCATION} | i64 | +| main.rs:2176:21:2176:25 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2176:34:2176:34 | _ | | {EXTERNAL LOCATION} | i64 | +| main.rs:2176:49:2182:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2177:13:2181:13 | if value {...} else {...} | | {EXTERNAL LOCATION} | i32 | +| main.rs:2177:16:2177:20 | value | | {EXTERNAL LOCATION} | bool | +| main.rs:2177:22:2179:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2178:17:2178:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2179:20:2181:13 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2180:17:2180:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2187:15:2187:15 | x | | main.rs:2185:5:2191:5 | Self [trait MySelfTrait] | +| main.rs:2190:15:2190:15 | x | | main.rs:2185:5:2191:5 | Self [trait MySelfTrait] | +| main.rs:2195:15:2195:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2195:31:2197:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2196:13:2196:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2196:13:2196:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:2196:17:2196:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2200:15:2200:15 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2200:32:2202:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2201:13:2201:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2201:13:2201:17 | ... + ... | | {EXTERNAL LOCATION} | i64 | +| main.rs:2201:17:2201:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2207:15:2207:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2207:31:2209:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2208:13:2208:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2208:13:2208:13 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2212:15:2212:15 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2212:32:2214:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:2213:13:2213:13 | x | | {EXTERNAL LOCATION} | bool | +| main.rs:2217:16:2242:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2218:13:2218:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2218:22:2218:23 | 73 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2218:22:2218:23 | 73 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2219:9:2219:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2219:9:2219:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2219:18:2219:21 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2220:9:2220:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2220:9:2220:23 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2220:18:2220:22 | &5i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2220:18:2220:22 | &5i64 | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2220:19:2220:22 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2221:9:2221:9 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2221:9:2221:22 | x.my_add(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2221:18:2221:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2223:9:2223:15 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2223:9:2223:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2223:9:2223:31 | ... .my_add(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2223:11:2223:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2223:24:2223:30 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2223:24:2223:30 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2223:26:2223:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2224:9:2224:15 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2224:9:2224:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2224:11:2224:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2224:24:2224:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:9:2225:15 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2225:9:2225:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:9:2225:29 | ... .my_add(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2225:11:2225:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:24:2225:28 | &3i64 | | {EXTERNAL LOCATION} | & | +| main.rs:2225:24:2225:28 | &3i64 | TRef | {EXTERNAL LOCATION} | i64 | +| main.rs:2225:25:2225:28 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2227:13:2227:13 | x | | {EXTERNAL LOCATION} | i64 | +| main.rs:2227:17:2227:35 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2227:30:2227:34 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:13:2228:13 | y | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:17:2228:34 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2228:30:2228:33 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2229:13:2229:13 | z | | {EXTERNAL LOCATION} | i64 | +| main.rs:2229:22:2229:43 | ...::my_from(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2229:38:2229:42 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2230:9:2230:34 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2230:23:2230:27 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2230:30:2230:33 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2231:9:2231:33 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2231:23:2231:26 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2231:29:2231:32 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2232:9:2232:38 | ...::my_from2(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2232:27:2232:31 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2232:34:2232:37 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2234:9:2234:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2234:17:2234:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2235:9:2235:22 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2235:17:2235:21 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2236:9:2236:22 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2236:18:2236:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2237:9:2237:22 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2237:18:2237:21 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2238:9:2238:30 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2238:25:2238:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2239:9:2239:30 | ...::f2(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2239:25:2239:29 | 73i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2240:9:2240:29 | ...::f1(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2240:25:2240:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2241:9:2241:29 | ...::f2(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2241:25:2241:28 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2249:26:2251:9 | { ... } | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2250:13:2250:25 | MyCallable {...} | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2253:17:2253:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2253:17:2253:21 | SelfParam | TRef | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2253:31:2255:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| main.rs:2254:13:2254:13 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2254:13:2254:13 | 1 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2258:16:2365:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2261:9:2261:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2261:13:2261:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2261:18:2261:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2261:18:2261:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2261:19:2261:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2261:22:2261:22 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2261:25:2261:25 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2261:28:2261:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2262:9:2262:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2262:18:2262:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2262:18:2262:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:18:2262:41 | ... .map(...) | | {EXTERNAL LOCATION} | [;] | +| main.rs:2262:19:2262:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:22:2262:22 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:25:2262:25 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:32:2262:40 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| main.rs:2262:32:2262:40 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:2262:40:2262:40 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:43:2262:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2263:9:2263:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2263:13:2263:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2263:18:2263:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2263:18:2263:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2263:18:2263:38 | ... .into_iter() | | {EXTERNAL LOCATION} | IntoIter | +| main.rs:2263:18:2263:38 | ... .into_iter() | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2263:19:2263:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2263:22:2263:22 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2263:25:2263:25 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2263:40:2263:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2265:13:2265:17 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2265:13:2265:17 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2265:13:2265:17 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | +| main.rs:2265:21:2265:31 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2265:21:2265:31 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2265:21:2265:31 | [...] | TArray | {EXTERNAL LOCATION} | u8 | +| main.rs:2265:22:2265:24 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2265:27:2265:27 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2265:27:2265:27 | 2 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2265:30:2265:30 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2265:30:2265:30 | 3 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2266:9:2266:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2266:13:2266:13 | u | | {EXTERNAL LOCATION} | i32 | +| main.rs:2266:13:2266:13 | u | | {EXTERNAL LOCATION} | u8 | +| main.rs:2266:18:2266:22 | vals1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2266:18:2266:22 | vals1 | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2266:18:2266:22 | vals1 | TArray | {EXTERNAL LOCATION} | u8 | +| main.rs:2266:24:2266:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2268:13:2268:17 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2268:13:2268:17 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2268:21:2268:29 | [1u16; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2268:21:2268:29 | [1u16; 3] | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2268:22:2268:25 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2268:28:2268:28 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2269:9:2269:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2269:13:2269:13 | u | | {EXTERNAL LOCATION} | u16 | +| main.rs:2269:18:2269:22 | vals2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2269:18:2269:22 | vals2 | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2269:24:2269:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2271:13:2271:17 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2271:13:2271:17 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2271:26:2271:26 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2271:31:2271:39 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2271:31:2271:39 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2271:31:2271:39 | [...] | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2271:32:2271:32 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2271:32:2271:32 | 1 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2271:35:2271:35 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2271:35:2271:35 | 2 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2271:38:2271:38 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2271:38:2271:38 | 3 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2272:9:2272:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2272:13:2272:13 | u | | {EXTERNAL LOCATION} | u32 | +| main.rs:2272:18:2272:22 | vals3 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2272:18:2272:22 | vals3 | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2272:24:2272:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2274:13:2274:17 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2274:13:2274:17 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2274:26:2274:26 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2274:31:2274:36 | [1; 3] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2274:31:2274:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2274:31:2274:36 | [1; 3] | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2274:32:2274:32 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2274:32:2274:32 | 1 | | {EXTERNAL LOCATION} | u64 | +| main.rs:2274:35:2274:35 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2275:9:2275:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2275:13:2275:13 | u | | {EXTERNAL LOCATION} | u64 | +| main.rs:2275:18:2275:22 | vals4 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2275:18:2275:22 | vals4 | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2275:24:2275:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2277:17:2277:24 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2277:17:2277:24 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2277:17:2277:24 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2277:28:2277:48 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2277:28:2277:48 | [...] | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2277:28:2277:48 | [...] | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2277:29:2277:33 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2277:29:2277:33 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2277:36:2277:40 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2277:36:2277:40 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2277:43:2277:47 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2277:43:2277:47 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2278:9:2278:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2278:13:2278:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:2278:13:2278:13 | s | TRef | {EXTERNAL LOCATION} | & | +| main.rs:2278:13:2278:13 | s | TRef.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2278:18:2278:26 | &strings1 | | {EXTERNAL LOCATION} | & | +| main.rs:2278:18:2278:26 | &strings1 | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2278:18:2278:26 | &strings1 | TRef.TArray | {EXTERNAL LOCATION} | & | +| main.rs:2278:18:2278:26 | &strings1 | TRef.TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2278:19:2278:26 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2278:19:2278:26 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2278:19:2278:26 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2278:28:2278:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2279:9:2279:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2279:13:2279:13 | s | | {EXTERNAL LOCATION} | &mut | +| main.rs:2279:13:2279:13 | s | TRefMut | {EXTERNAL LOCATION} | & | +| main.rs:2279:13:2279:13 | s | TRefMut.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2279:18:2279:30 | &mut strings1 | | {EXTERNAL LOCATION} | &mut | +| main.rs:2279:18:2279:30 | &mut strings1 | TRefMut | {EXTERNAL LOCATION} | [;] | +| main.rs:2279:18:2279:30 | &mut strings1 | TRefMut.TArray | {EXTERNAL LOCATION} | & | +| main.rs:2279:18:2279:30 | &mut strings1 | TRefMut.TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2279:23:2279:30 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2279:23:2279:30 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2279:23:2279:30 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2279:32:2279:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2280:9:2280:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2280:13:2280:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:2280:13:2280:13 | s | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2280:18:2280:25 | strings1 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2280:18:2280:25 | strings1 | TArray | {EXTERNAL LOCATION} | & | +| main.rs:2280:18:2280:25 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2280:27:2280:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2282:13:2282:20 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2282:13:2282:20 | strings2 | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2283:9:2287:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2283:9:2287:9 | [...] | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2284:13:2284:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2284:26:2284:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2284:26:2284:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2285:13:2285:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2285:26:2285:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2285:26:2285:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2286:13:2286:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2286:26:2286:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2286:26:2286:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2288:9:2288:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2288:13:2288:13 | s | | {EXTERNAL LOCATION} | String | +| main.rs:2288:18:2288:25 | strings2 | | {EXTERNAL LOCATION} | [;] | +| main.rs:2288:18:2288:25 | strings2 | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2288:27:2288:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2290:13:2290:20 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2290:13:2290:20 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2290:13:2290:20 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | +| main.rs:2291:9:2295:9 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2291:9:2295:9 | &... | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2291:9:2295:9 | &... | TRef.TArray | {EXTERNAL LOCATION} | String | +| main.rs:2291:10:2295:9 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2291:10:2295:9 | [...] | TArray | {EXTERNAL LOCATION} | String | +| main.rs:2292:13:2292:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2292:26:2292:30 | "foo" | | {EXTERNAL LOCATION} | & | +| main.rs:2292:26:2292:30 | "foo" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2293:13:2293:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2293:26:2293:30 | "bar" | | {EXTERNAL LOCATION} | & | +| main.rs:2293:26:2293:30 | "bar" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2294:13:2294:31 | ...::from(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2294:26:2294:30 | "baz" | | {EXTERNAL LOCATION} | & | +| main.rs:2294:26:2294:30 | "baz" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2296:9:2296:28 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2296:13:2296:13 | s | | {EXTERNAL LOCATION} | & | +| main.rs:2296:13:2296:13 | s | TRef | {EXTERNAL LOCATION} | String | +| main.rs:2296:18:2296:25 | strings3 | | {EXTERNAL LOCATION} | & | +| main.rs:2296:18:2296:25 | strings3 | TRef | {EXTERNAL LOCATION} | [;] | +| main.rs:2296:18:2296:25 | strings3 | TRef.TArray | {EXTERNAL LOCATION} | String | +| main.rs:2296:27:2296:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2298:13:2298:21 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2298:13:2298:21 | callables | TArray | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2298:25:2298:81 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2298:25:2298:81 | [...] | TArray | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2298:26:2298:42 | ...::new(...) | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2298:45:2298:61 | ...::new(...) | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2298:64:2298:80 | ...::new(...) | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2299:9:2303:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2299:13:2299:13 | c | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2300:12:2300:20 | callables | | {EXTERNAL LOCATION} | [;] | +| main.rs:2300:12:2300:20 | callables | TArray | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2301:9:2303:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2302:17:2302:22 | result | | {EXTERNAL LOCATION} | i64 | +| main.rs:2302:26:2302:26 | c | | main.rs:2246:5:2246:24 | MyCallable | +| main.rs:2302:26:2302:33 | c.call() | | {EXTERNAL LOCATION} | i64 | +| main.rs:2307:9:2307:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2307:13:2307:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2307:18:2307:18 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2307:18:2307:22 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2307:18:2307:22 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2307:21:2307:22 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2307:24:2307:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2308:9:2308:29 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2308:13:2308:13 | u | | {EXTERNAL LOCATION} | Range | +| main.rs:2308:13:2308:13 | u | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2308:13:2308:13 | u | Idx | {EXTERNAL LOCATION} | u8 | +| main.rs:2308:18:2308:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2308:18:2308:26 | [...] | TArray | {EXTERNAL LOCATION} | Range | +| main.rs:2308:18:2308:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2308:18:2308:26 | [...] | TArray.Idx | {EXTERNAL LOCATION} | u8 | +| main.rs:2308:19:2308:21 | 0u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2308:19:2308:25 | 0u8..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2308:19:2308:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2308:19:2308:25 | 0u8..10 | Idx | {EXTERNAL LOCATION} | u8 | +| main.rs:2308:24:2308:25 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2308:24:2308:25 | 10 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2308:28:2308:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2309:13:2309:17 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2309:13:2309:17 | range | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2309:21:2309:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2309:21:2309:25 | 0..10 | | {EXTERNAL LOCATION} | Range | +| main.rs:2309:21:2309:25 | 0..10 | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2309:24:2309:25 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2310:9:2310:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2310:13:2310:13 | i | | {EXTERNAL LOCATION} | i32 | +| main.rs:2310:18:2310:22 | range | | {EXTERNAL LOCATION} | Range | +| main.rs:2310:18:2310:22 | range | Idx | {EXTERNAL LOCATION} | i32 | +| main.rs:2310:24:2310:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2311:13:2311:22 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2311:26:2311:27 | .. | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2312:9:2312:51 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2312:18:2312:48 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2312:19:2312:36 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2312:19:2312:36 | [...] | TArray | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:20:2312:23 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:26:2312:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:32:2312:35 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2312:38:2312:47 | range_full | | {EXTERNAL LOCATION} | RangeFull | +| main.rs:2312:50:2312:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2314:13:2314:18 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2314:13:2314:18 | range1 | Idx | {EXTERNAL LOCATION} | u16 | +| main.rs:2315:9:2318:9 | ...::Range {...} | | {EXTERNAL LOCATION} | Range | +| main.rs:2315:9:2318:9 | ...::Range {...} | Idx | {EXTERNAL LOCATION} | u16 | +| main.rs:2316:20:2316:23 | 0u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2317:18:2317:22 | 10u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2319:9:2319:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2319:13:2319:13 | u | | {EXTERNAL LOCATION} | u16 | +| main.rs:2319:18:2319:23 | range1 | | {EXTERNAL LOCATION} | Range | +| main.rs:2319:18:2319:23 | range1 | Idx | {EXTERNAL LOCATION} | u16 | +| main.rs:2319:25:2319:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2323:13:2323:17 | vals3 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2323:21:2323:33 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2323:26:2323:26 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2323:29:2323:29 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2323:32:2323:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2324:9:2324:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2324:18:2324:22 | vals3 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2324:24:2324:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2326:13:2326:18 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2326:13:2326:18 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2326:13:2326:18 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2326:32:2326:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2326:32:2326:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2326:32:2326:43 | [...] | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2326:32:2326:52 | ... .to_vec() | | {EXTERNAL LOCATION} | Vec | +| main.rs:2326:32:2326:52 | ... .to_vec() | A | {EXTERNAL LOCATION} | Global | +| main.rs:2326:32:2326:52 | ... .to_vec() | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2326:33:2326:36 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2326:39:2326:39 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2326:42:2326:42 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2327:9:2327:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2327:13:2327:13 | u | | {EXTERNAL LOCATION} | u16 | +| main.rs:2327:18:2327:23 | vals4a | | {EXTERNAL LOCATION} | Vec | +| main.rs:2327:18:2327:23 | vals4a | A | {EXTERNAL LOCATION} | Global | +| main.rs:2327:18:2327:23 | vals4a | T | {EXTERNAL LOCATION} | u16 | +| main.rs:2327:25:2327:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2329:22:2329:33 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2329:22:2329:33 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2329:22:2329:33 | [...] | TArray | {EXTERNAL LOCATION} | u16 | +| main.rs:2329:23:2329:26 | 1u16 | | {EXTERNAL LOCATION} | u16 | +| main.rs:2329:29:2329:29 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2329:32:2329:32 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2330:9:2330:26 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2330:25:2330:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2332:13:2332:17 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2332:13:2332:17 | vals5 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2332:13:2332:17 | vals5 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2332:13:2332:17 | vals5 | T | {EXTERNAL LOCATION} | u32 | +| main.rs:2332:21:2332:43 | ...::from(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2332:21:2332:43 | ...::from(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2332:21:2332:43 | ...::from(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2332:21:2332:43 | ...::from(...) | T | {EXTERNAL LOCATION} | u32 | +| main.rs:2332:31:2332:42 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2332:31:2332:42 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2332:31:2332:42 | [...] | TArray | {EXTERNAL LOCATION} | u32 | +| main.rs:2332:32:2332:35 | 1u32 | | {EXTERNAL LOCATION} | u32 | +| main.rs:2332:38:2332:38 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2332:41:2332:41 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2333:9:2333:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2333:13:2333:13 | u | | {EXTERNAL LOCATION} | i32 | +| main.rs:2333:13:2333:13 | u | | {EXTERNAL LOCATION} | u32 | +| main.rs:2333:18:2333:22 | vals5 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2333:18:2333:22 | vals5 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2333:18:2333:22 | vals5 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2333:18:2333:22 | vals5 | T | {EXTERNAL LOCATION} | u32 | +| main.rs:2333:24:2333:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2335:13:2335:17 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2335:13:2335:17 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2335:13:2335:17 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2335:13:2335:17 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2335:32:2335:43 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2335:32:2335:43 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2335:32:2335:43 | [...] | TArray | {EXTERNAL LOCATION} | u64 | +| main.rs:2335:32:2335:60 | ... .collect() | | {EXTERNAL LOCATION} | Vec | +| main.rs:2335:32:2335:60 | ... .collect() | A | {EXTERNAL LOCATION} | Global | +| main.rs:2335:32:2335:60 | ... .collect() | T | {EXTERNAL LOCATION} | & | +| main.rs:2335:32:2335:60 | ... .collect() | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2335:33:2335:36 | 1u64 | | {EXTERNAL LOCATION} | u64 | +| main.rs:2335:39:2335:39 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2335:42:2335:42 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2336:9:2336:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2336:13:2336:13 | u | | {EXTERNAL LOCATION} | & | +| main.rs:2336:13:2336:13 | u | TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2336:18:2336:22 | vals6 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2336:18:2336:22 | vals6 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2336:18:2336:22 | vals6 | T | {EXTERNAL LOCATION} | & | +| main.rs:2336:18:2336:22 | vals6 | T.TRef | {EXTERNAL LOCATION} | u64 | +| main.rs:2336:24:2336:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2338:17:2338:21 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2338:17:2338:21 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2338:17:2338:21 | vals7 | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2338:25:2338:34 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2338:25:2338:34 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2338:25:2338:34 | ...::new(...) | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2339:9:2339:13 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2339:9:2339:13 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2339:9:2339:13 | vals7 | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2339:9:2339:23 | vals7.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2339:20:2339:22 | 1u8 | | {EXTERNAL LOCATION} | u8 | +| main.rs:2340:9:2340:25 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2340:13:2340:13 | u | | {EXTERNAL LOCATION} | u8 | +| main.rs:2340:18:2340:22 | vals7 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2340:18:2340:22 | vals7 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2340:18:2340:22 | vals7 | T | {EXTERNAL LOCATION} | u8 | +| main.rs:2340:24:2340:25 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2342:13:2342:19 | matrix1 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2342:23:2342:50 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2342:28:2342:37 | (...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2342:28:2342:37 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2342:33:2342:33 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2342:36:2342:36 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2342:40:2342:49 | (...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2342:40:2342:49 | MacroExpr | | {EXTERNAL LOCATION} | Vec | +| main.rs:2342:45:2342:45 | 3 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2342:48:2342:48 | 4 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2344:13:2344:13 | _ | | {EXTERNAL LOCATION} | () | +| main.rs:2344:17:2347:9 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2344:28:2344:34 | matrix1 | | {EXTERNAL LOCATION} | Vec | +| main.rs:2344:36:2347:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2345:13:2346:13 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2345:29:2346:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2349:17:2349:20 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2349:17:2349:20 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2349:17:2349:20 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2349:17:2349:20 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2349:17:2349:20 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2349:17:2349:20 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2349:17:2349:20 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2349:24:2349:55 | ...::new(...) | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2349:24:2349:55 | ...::new(...) | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2349:24:2349:55 | ...::new(...) | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2349:24:2349:55 | ...::new(...) | V | {EXTERNAL LOCATION} | Box | +| main.rs:2349:24:2349:55 | ...::new(...) | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2349:24:2349:55 | ...::new(...) | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2349:24:2349:55 | ...::new(...) | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2350:9:2350:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2350:9:2350:12 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2350:9:2350:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2350:9:2350:12 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2350:9:2350:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2350:9:2350:12 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2350:9:2350:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2350:9:2350:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2350:9:2350:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | +| main.rs:2350:9:2350:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2350:9:2350:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | +| main.rs:2350:9:2350:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2350:21:2350:21 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2350:24:2350:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2350:24:2350:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2350:24:2350:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:2350:24:2350:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2350:33:2350:37 | "one" | | {EXTERNAL LOCATION} | & | +| main.rs:2350:33:2350:37 | "one" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2351:9:2351:12 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2351:9:2351:12 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2351:9:2351:12 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2351:9:2351:12 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2351:9:2351:12 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2351:9:2351:12 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2351:9:2351:12 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2351:9:2351:39 | map1.insert(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2351:9:2351:39 | map1.insert(...) | T | {EXTERNAL LOCATION} | Box | +| main.rs:2351:9:2351:39 | map1.insert(...) | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2351:9:2351:39 | map1.insert(...) | T.T | {EXTERNAL LOCATION} | & | +| main.rs:2351:9:2351:39 | map1.insert(...) | T.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2351:21:2351:21 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2351:24:2351:38 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2351:24:2351:38 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2351:24:2351:38 | ...::new(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:2351:24:2351:38 | ...::new(...) | T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2351:33:2351:37 | "two" | | {EXTERNAL LOCATION} | & | +| main.rs:2351:33:2351:37 | "two" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2352:9:2352:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2352:13:2352:15 | key | | {EXTERNAL LOCATION} | & | +| main.rs:2352:13:2352:15 | key | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2352:20:2352:23 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2352:20:2352:23 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2352:20:2352:23 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2352:20:2352:23 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2352:20:2352:23 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2352:20:2352:23 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2352:20:2352:23 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2352:20:2352:30 | map1.keys() | | {EXTERNAL LOCATION} | Keys | +| main.rs:2352:20:2352:30 | map1.keys() | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2352:20:2352:30 | map1.keys() | V | {EXTERNAL LOCATION} | Box | +| main.rs:2352:20:2352:30 | map1.keys() | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2352:20:2352:30 | map1.keys() | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2352:20:2352:30 | map1.keys() | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2352:32:2352:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2353:9:2353:37 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2353:13:2353:17 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2353:13:2353:17 | value | TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2353:13:2353:17 | value | TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2353:13:2353:17 | value | TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2353:13:2353:17 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2353:22:2353:25 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2353:22:2353:25 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2353:22:2353:25 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2353:22:2353:25 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2353:22:2353:25 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2353:22:2353:25 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2353:22:2353:25 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2353:22:2353:34 | map1.values() | | {EXTERNAL LOCATION} | Values | +| main.rs:2353:22:2353:34 | map1.values() | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2353:22:2353:34 | map1.values() | V | {EXTERNAL LOCATION} | Box | +| main.rs:2353:22:2353:34 | map1.values() | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2353:22:2353:34 | map1.values() | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2353:22:2353:34 | map1.values() | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2353:36:2353:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2354:9:2354:42 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2354:13:2354:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2354:13:2354:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | +| main.rs:2354:13:2354:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2354:13:2354:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | +| main.rs:2354:13:2354:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2354:13:2354:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2354:13:2354:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2354:13:2354:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2354:14:2354:16 | key | | {EXTERNAL LOCATION} | & | +| main.rs:2354:14:2354:16 | key | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2354:19:2354:23 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2354:19:2354:23 | value | TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2354:19:2354:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2354:19:2354:23 | value | TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2354:19:2354:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2354:29:2354:32 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2354:29:2354:32 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2354:29:2354:32 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2354:29:2354:32 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2354:29:2354:32 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2354:29:2354:32 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2354:29:2354:32 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2354:29:2354:39 | map1.iter() | | {EXTERNAL LOCATION} | Iter | +| main.rs:2354:29:2354:39 | map1.iter() | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2354:29:2354:39 | map1.iter() | V | {EXTERNAL LOCATION} | Box | +| main.rs:2354:29:2354:39 | map1.iter() | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2354:29:2354:39 | map1.iter() | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2354:29:2354:39 | map1.iter() | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2354:41:2354:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2355:9:2355:36 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2355:13:2355:24 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2355:13:2355:24 | TuplePat | T0 | {EXTERNAL LOCATION} | & | +| main.rs:2355:13:2355:24 | TuplePat | T0.TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2355:13:2355:24 | TuplePat | T1 | {EXTERNAL LOCATION} | & | +| main.rs:2355:13:2355:24 | TuplePat | T1.TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2355:13:2355:24 | TuplePat | T1.TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2355:13:2355:24 | TuplePat | T1.TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2355:13:2355:24 | TuplePat | T1.TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2355:14:2355:16 | key | | {EXTERNAL LOCATION} | & | +| main.rs:2355:14:2355:16 | key | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2355:19:2355:23 | value | | {EXTERNAL LOCATION} | & | +| main.rs:2355:19:2355:23 | value | TRef | {EXTERNAL LOCATION} | Box | +| main.rs:2355:19:2355:23 | value | TRef.A | {EXTERNAL LOCATION} | Global | +| main.rs:2355:19:2355:23 | value | TRef.T | {EXTERNAL LOCATION} | & | +| main.rs:2355:19:2355:23 | value | TRef.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2355:29:2355:33 | &map1 | | {EXTERNAL LOCATION} | & | +| main.rs:2355:29:2355:33 | &map1 | TRef | {EXTERNAL LOCATION} | HashMap | +| main.rs:2355:29:2355:33 | &map1 | TRef.K | {EXTERNAL LOCATION} | i32 | +| main.rs:2355:29:2355:33 | &map1 | TRef.S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2355:29:2355:33 | &map1 | TRef.V | {EXTERNAL LOCATION} | Box | +| main.rs:2355:29:2355:33 | &map1 | TRef.V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2355:29:2355:33 | &map1 | TRef.V.T | {EXTERNAL LOCATION} | & | +| main.rs:2355:29:2355:33 | &map1 | TRef.V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2355:30:2355:33 | map1 | | {EXTERNAL LOCATION} | HashMap | +| main.rs:2355:30:2355:33 | map1 | K | {EXTERNAL LOCATION} | i32 | +| main.rs:2355:30:2355:33 | map1 | S | {EXTERNAL LOCATION} | RandomState | +| main.rs:2355:30:2355:33 | map1 | V | {EXTERNAL LOCATION} | Box | +| main.rs:2355:30:2355:33 | map1 | V.A | {EXTERNAL LOCATION} | Global | +| main.rs:2355:30:2355:33 | map1 | V.T | {EXTERNAL LOCATION} | & | +| main.rs:2355:30:2355:33 | map1 | V.T.TRef | {EXTERNAL LOCATION} | str | +| main.rs:2355:35:2355:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2359:17:2359:17 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2359:26:2359:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2359:26:2359:26 | 0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2361:13:2361:13 | _ | | {EXTERNAL LOCATION} | () | +| main.rs:2361:17:2364:9 | while ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2361:23:2361:23 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2361:23:2361:28 | ... < ... | | {EXTERNAL LOCATION} | bool | +| main.rs:2361:27:2361:28 | 10 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2362:9:2364:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2363:13:2363:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2363:13:2363:18 | ... += ... | | {EXTERNAL LOCATION} | () | +| main.rs:2363:18:2363:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2375:40:2377:9 | { ... } | | {EXTERNAL LOCATION} | Option | +| main.rs:2375:40:2377:9 | { ... } | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2375:40:2377:9 | { ... } | T.T | main.rs:2374:10:2374:19 | T | +| main.rs:2376:13:2376:16 | None | | {EXTERNAL LOCATION} | Option | +| main.rs:2376:13:2376:16 | None | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2376:13:2376:16 | None | T.T | main.rs:2374:10:2374:19 | T | +| main.rs:2379:30:2381:9 | { ... } | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2379:30:2381:9 | { ... } | T | main.rs:2374:10:2374:19 | T | +| main.rs:2380:13:2380:28 | S1(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2380:13:2380:28 | S1(...) | T | main.rs:2374:10:2374:19 | T | +| main.rs:2380:16:2380:27 | ...::default(...) | | main.rs:2374:10:2374:19 | T | +| main.rs:2383:19:2383:22 | SelfParam | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2383:19:2383:22 | SelfParam | T | main.rs:2374:10:2374:19 | T | +| main.rs:2383:33:2385:9 | { ... } | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2383:33:2385:9 | { ... } | T | main.rs:2374:10:2374:19 | T | +| main.rs:2384:13:2384:16 | self | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2384:13:2384:16 | self | T | main.rs:2374:10:2374:19 | T | +| main.rs:2396:15:2396:15 | x | | main.rs:2396:12:2396:12 | T | +| main.rs:2396:26:2398:5 | { ... } | | main.rs:2396:12:2396:12 | T | +| main.rs:2397:9:2397:9 | x | | main.rs:2396:12:2396:12 | T | +| main.rs:2400:16:2422:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2401:13:2401:14 | x1 | | {EXTERNAL LOCATION} | Option | +| main.rs:2401:13:2401:14 | x1 | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2401:13:2401:14 | x1 | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2401:34:2401:48 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2401:34:2401:48 | ...::assoc_fun(...) | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2401:34:2401:48 | ...::assoc_fun(...) | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2402:13:2402:14 | x2 | | {EXTERNAL LOCATION} | Option | +| main.rs:2402:13:2402:14 | x2 | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2402:13:2402:14 | x2 | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2402:18:2402:38 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2402:18:2402:38 | ...::assoc_fun(...) | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2402:18:2402:38 | ...::assoc_fun(...) | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2403:13:2403:14 | x3 | | {EXTERNAL LOCATION} | Option | +| main.rs:2403:13:2403:14 | x3 | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2403:13:2403:14 | x3 | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2403:18:2403:32 | ...::assoc_fun(...) | | {EXTERNAL LOCATION} | Option | +| main.rs:2403:18:2403:32 | ...::assoc_fun(...) | T | main.rs:2369:5:2369:20 | S1 | +| main.rs:2403:18:2403:32 | ...::assoc_fun(...) | T.T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2404:13:2404:14 | x4 | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2404:13:2404:14 | x4 | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2404:18:2404:48 | ...::method(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2404:18:2404:48 | ...::method(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2404:35:2404:47 | ...::default(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2404:35:2404:47 | ...::default(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2405:13:2405:14 | x5 | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2405:13:2405:14 | x5 | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2405:18:2405:42 | ...::method(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2405:18:2405:42 | ...::method(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2405:29:2405:41 | ...::default(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2405:29:2405:41 | ...::default(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2406:13:2406:14 | x6 | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2406:13:2406:14 | x6 | T4 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2406:18:2406:45 | S4::<...>(...) | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2406:18:2406:45 | S4::<...>(...) | T4 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2406:27:2406:44 | ...::default(...) | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2407:13:2407:14 | x7 | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2407:13:2407:14 | x7 | T4 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2407:18:2407:23 | S4(...) | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2407:18:2407:23 | S4(...) | T4 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2407:21:2407:22 | S2 | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2408:13:2408:14 | x8 | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2408:13:2408:14 | x8 | T4 | {EXTERNAL LOCATION} | i32 | +| main.rs:2408:18:2408:22 | S4(...) | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2408:18:2408:22 | S4(...) | T4 | {EXTERNAL LOCATION} | i32 | +| main.rs:2408:21:2408:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2409:13:2409:14 | x9 | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2409:13:2409:14 | x9 | T4 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2409:18:2409:34 | S4(...) | | main.rs:2390:5:2390:27 | S4 | +| main.rs:2409:18:2409:34 | S4(...) | T4 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2409:21:2409:33 | ...::default(...) | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2410:13:2410:15 | x10 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2410:13:2410:15 | x10 | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2410:19:2413:9 | S5::<...> {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2410:19:2413:9 | S5::<...> {...} | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2412:20:2412:37 | ...::default(...) | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2414:13:2414:15 | x11 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2414:13:2414:15 | x11 | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2414:19:2414:34 | S5 {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2414:19:2414:34 | S5 {...} | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2414:31:2414:32 | S2 | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2415:13:2415:15 | x12 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2415:13:2415:15 | x12 | T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:2415:19:2415:33 | S5 {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2415:19:2415:33 | S5 {...} | T5 | {EXTERNAL LOCATION} | i32 | +| main.rs:2415:31:2415:31 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2416:13:2416:15 | x13 | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2416:13:2416:15 | x13 | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2416:19:2419:9 | S5 {...} | | main.rs:2392:5:2394:5 | S5 | +| main.rs:2416:19:2419:9 | S5 {...} | T5 | main.rs:2371:5:2372:14 | S2 | +| main.rs:2418:20:2418:32 | ...::default(...) | | main.rs:2371:5:2372:14 | S2 | +| main.rs:2420:13:2420:15 | x14 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2420:19:2420:48 | foo::<...>(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2420:30:2420:47 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2421:13:2421:15 | x15 | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2421:13:2421:15 | x15 | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2421:19:2421:37 | ...::default(...) | | main.rs:2369:5:2369:20 | S1 | +| main.rs:2421:19:2421:37 | ...::default(...) | T | main.rs:2371:5:2372:14 | S2 | +| main.rs:2430:35:2432:9 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2430:35:2432:9 | { ... } | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2430:35:2432:9 | { ... } | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2431:13:2431:26 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2431:13:2431:26 | TupleExpr | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2431:13:2431:26 | TupleExpr | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2431:14:2431:18 | S1 {...} | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2431:21:2431:25 | S1 {...} | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2433:16:2433:19 | SelfParam | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2433:22:2433:23 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2436:16:2470:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2437:13:2437:13 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2437:13:2437:13 | a | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2437:13:2437:13 | a | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2437:17:2437:30 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2437:17:2437:30 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2437:17:2437:30 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:17:2438:17 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2438:17:2438:17 | b | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:17:2438:17 | b | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:21:2438:34 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2438:21:2438:34 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2438:21:2438:34 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:13:2439:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2439:13:2439:18 | TuplePat | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:13:2439:18 | TuplePat | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:14:2439:14 | c | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:17:2439:17 | d | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:22:2439:35 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2439:22:2439:35 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2439:22:2439:35 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:13:2440:22 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2440:13:2440:22 | TuplePat | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:13:2440:22 | TuplePat | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:18:2440:18 | e | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:21:2440:21 | f | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:26:2440:39 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2440:26:2440:39 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2440:26:2440:39 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:13:2441:26 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2441:13:2441:26 | TuplePat | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:13:2441:26 | TuplePat | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:18:2441:18 | g | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:25:2441:25 | h | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:30:2441:43 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2441:30:2441:43 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2441:30:2441:43 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2443:9:2443:9 | a | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2443:9:2443:9 | a | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2443:9:2443:9 | a | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2443:9:2443:11 | a.0 | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2443:9:2443:17 | ... .foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2444:9:2444:9 | b | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2444:9:2444:9 | b | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2444:9:2444:9 | b | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2444:9:2444:11 | b.1 | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2444:9:2444:17 | ... .foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2445:9:2445:9 | c | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2445:9:2445:15 | c.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2446:9:2446:9 | d | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2446:9:2446:15 | d.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2447:9:2447:9 | e | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2447:9:2447:15 | e.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2448:9:2448:9 | f | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2448:9:2448:15 | f.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2449:9:2449:9 | g | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2449:9:2449:15 | g.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2450:9:2450:9 | h | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2450:9:2450:15 | h.foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2455:13:2455:13 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2455:17:2455:34 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| main.rs:2456:13:2456:13 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2456:17:2456:34 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2457:13:2457:16 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2457:13:2457:16 | pair | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2457:13:2457:16 | pair | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2457:20:2457:25 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2457:20:2457:25 | TupleExpr | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2457:20:2457:25 | TupleExpr | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2457:21:2457:21 | a | | {EXTERNAL LOCATION} | i64 | +| main.rs:2457:24:2457:24 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2458:13:2458:13 | i | | {EXTERNAL LOCATION} | i64 | +| main.rs:2458:22:2458:25 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2458:22:2458:25 | pair | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2458:22:2458:25 | pair | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2458:22:2458:27 | pair.0 | | {EXTERNAL LOCATION} | i64 | +| main.rs:2459:13:2459:13 | j | | {EXTERNAL LOCATION} | bool | +| main.rs:2459:23:2459:26 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2459:23:2459:26 | pair | T0 | {EXTERNAL LOCATION} | i64 | +| main.rs:2459:23:2459:26 | pair | T1 | {EXTERNAL LOCATION} | bool | +| main.rs:2459:23:2459:28 | pair.1 | | {EXTERNAL LOCATION} | bool | +| main.rs:2461:13:2461:16 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2461:13:2461:16 | pair | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2461:13:2461:16 | pair | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2461:20:2461:25 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2461:20:2461:25 | [...] | TArray | {EXTERNAL LOCATION} | i32 | +| main.rs:2461:20:2461:32 | ... .into() | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2461:20:2461:32 | ... .into() | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2461:20:2461:32 | ... .into() | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2461:21:2461:21 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2461:24:2461:24 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2462:9:2465:9 | match pair { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2462:15:2462:18 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2462:15:2462:18 | pair | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2462:15:2462:18 | pair | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2463:13:2463:18 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2463:13:2463:18 | TuplePat | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2463:13:2463:18 | TuplePat | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2463:14:2463:14 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2463:17:2463:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2463:23:2463:42 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2463:30:2463:41 | "unexpected" | | {EXTERNAL LOCATION} | & | +| main.rs:2463:30:2463:41 | "unexpected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2463:30:2463:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2463:30:2463:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2464:13:2464:13 | _ | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2464:13:2464:13 | _ | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2464:13:2464:13 | _ | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2464:18:2464:35 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2464:25:2464:34 | "expected" | | {EXTERNAL LOCATION} | & | +| main.rs:2464:25:2464:34 | "expected" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2464:25:2464:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2464:25:2464:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2466:13:2466:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2466:17:2466:20 | pair | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2466:17:2466:20 | pair | T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2466:17:2466:20 | pair | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2466:17:2466:22 | pair.0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2468:13:2468:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2468:13:2468:13 | y | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2468:13:2468:13 | y | TRef.T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2468:13:2468:13 | y | TRef.T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2468:17:2468:31 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2468:17:2468:31 | &... | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2468:17:2468:31 | &... | TRef.T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2468:17:2468:31 | &... | TRef.T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2468:18:2468:31 | ...::get_pair(...) | | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2468:18:2468:31 | ...::get_pair(...) | T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2468:18:2468:31 | ...::get_pair(...) | T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2469:9:2469:9 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2469:9:2469:9 | y | TRef | {EXTERNAL LOCATION} | (T_2) | +| main.rs:2469:9:2469:9 | y | TRef.T0 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2469:9:2469:9 | y | TRef.T1 | main.rs:2426:5:2427:16 | S1 | +| main.rs:2469:9:2469:11 | y.0 | | main.rs:2426:5:2427:16 | S1 | +| main.rs:2469:9:2469:17 | ... .foo() | | {EXTERNAL LOCATION} | () | +| main.rs:2475:27:2497:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2476:13:2476:23 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2476:13:2476:23 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2476:13:2476:23 | boxed_value | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2476:27:2476:42 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2476:27:2476:42 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2476:27:2476:42 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2476:36:2476:41 | 100i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2479:9:2487:9 | match boxed_value { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2479:15:2479:25 | boxed_value | | {EXTERNAL LOCATION} | Box | +| main.rs:2479:15:2479:25 | boxed_value | A | {EXTERNAL LOCATION} | Global | +| main.rs:2479:15:2479:25 | boxed_value | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2480:13:2480:19 | box 100 | | {EXTERNAL LOCATION} | Box | +| main.rs:2480:13:2480:19 | box 100 | A | {EXTERNAL LOCATION} | Global | +| main.rs:2480:13:2480:19 | box 100 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2480:17:2480:19 | 100 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2480:24:2482:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2481:17:2481:37 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2481:26:2481:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2481:26:2481:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2481:26:2481:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2481:26:2481:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2481:26:2481:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2483:13:2483:17 | box ... | | {EXTERNAL LOCATION} | Box | +| main.rs:2483:13:2483:17 | box ... | A | {EXTERNAL LOCATION} | Global | +| main.rs:2483:13:2483:17 | box ... | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2483:22:2486:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2485:17:2485:52 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2485:26:2485:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2485:26:2485:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2485:26:2485:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2485:26:2485:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2485:26:2485:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2490:13:2490:22 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2490:13:2490:22 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:13:2490:22 | nested_box | T | {EXTERNAL LOCATION} | Box | +| main.rs:2490:13:2490:22 | nested_box | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:13:2490:22 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2490:26:2490:50 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2490:26:2490:50 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:26:2490:50 | ...::new(...) | T | {EXTERNAL LOCATION} | Box | +| main.rs:2490:26:2490:50 | ...::new(...) | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:26:2490:50 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2490:35:2490:49 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2490:35:2490:49 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2490:35:2490:49 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2490:44:2490:48 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2491:9:2496:9 | match nested_box { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2491:15:2491:24 | nested_box | | {EXTERNAL LOCATION} | Box | +| main.rs:2491:15:2491:24 | nested_box | A | {EXTERNAL LOCATION} | Global | +| main.rs:2491:15:2491:24 | nested_box | T | {EXTERNAL LOCATION} | Box | +| main.rs:2491:15:2491:24 | nested_box | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2491:15:2491:24 | nested_box | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2492:13:2492:21 | box ... | | {EXTERNAL LOCATION} | Box | +| main.rs:2492:13:2492:21 | box ... | A | {EXTERNAL LOCATION} | Global | +| main.rs:2492:13:2492:21 | box ... | T | {EXTERNAL LOCATION} | Box | +| main.rs:2492:13:2492:21 | box ... | T.A | {EXTERNAL LOCATION} | Global | +| main.rs:2492:13:2492:21 | box ... | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2492:26:2495:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2494:17:2494:60 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2494:26:2494:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2494:26:2494:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2494:26:2494:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2494:26:2494:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2494:26:2494:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2506:36:2508:9 | { ... } | | main.rs:2503:5:2503:22 | Path | +| main.rs:2507:13:2507:19 | Path {...} | | main.rs:2503:5:2503:22 | Path | +| main.rs:2510:29:2510:33 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2510:29:2510:33 | SelfParam | TRef | main.rs:2503:5:2503:22 | Path | +| main.rs:2510:59:2512:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| main.rs:2510:59:2512:9 | { ... } | E | {EXTERNAL LOCATION} | () | +| main.rs:2510:59:2512:9 | { ... } | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2511:13:2511:30 | Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2511:13:2511:30 | Ok(...) | E | {EXTERNAL LOCATION} | () | +| main.rs:2511:13:2511:30 | Ok(...) | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2511:16:2511:29 | ...::new(...) | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2518:39:2520:9 | { ... } | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2519:13:2519:22 | PathBuf {...} | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2528:18:2528:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2528:18:2528:22 | SelfParam | TRef | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2528:34:2532:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2528:34:2532:9 | { ... } | TRef | main.rs:2503:5:2503:22 | Path | +| main.rs:2530:33:2530:43 | ...::new(...) | | main.rs:2503:5:2503:22 | Path | +| main.rs:2531:13:2531:17 | &path | | {EXTERNAL LOCATION} | & | +| main.rs:2531:13:2531:17 | &path | TRef | main.rs:2503:5:2503:22 | Path | +| main.rs:2531:14:2531:17 | path | | main.rs:2503:5:2503:22 | Path | +| main.rs:2535:16:2543:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2536:13:2536:17 | path1 | | main.rs:2503:5:2503:22 | Path | +| main.rs:2536:21:2536:31 | ...::new(...) | | main.rs:2503:5:2503:22 | Path | +| main.rs:2537:13:2537:17 | path2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2537:13:2537:17 | path2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2537:13:2537:17 | path2 | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2537:21:2537:25 | path1 | | main.rs:2503:5:2503:22 | Path | +| main.rs:2537:21:2537:40 | path1.canonicalize() | | {EXTERNAL LOCATION} | Result | +| main.rs:2537:21:2537:40 | path1.canonicalize() | E | {EXTERNAL LOCATION} | () | +| main.rs:2537:21:2537:40 | path1.canonicalize() | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2538:13:2538:17 | path3 | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2538:21:2538:25 | path2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2538:21:2538:25 | path2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2538:21:2538:25 | path2 | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2538:21:2538:34 | path2.unwrap() | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2540:13:2540:20 | pathbuf1 | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2540:24:2540:37 | ...::new(...) | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2541:13:2541:20 | pathbuf2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2541:13:2541:20 | pathbuf2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2541:13:2541:20 | pathbuf2 | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2541:24:2541:31 | pathbuf1 | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2541:24:2541:46 | pathbuf1.canonicalize() | | {EXTERNAL LOCATION} | Result | +| main.rs:2541:24:2541:46 | pathbuf1.canonicalize() | E | {EXTERNAL LOCATION} | () | +| main.rs:2541:24:2541:46 | pathbuf1.canonicalize() | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2542:13:2542:20 | pathbuf3 | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2542:24:2542:31 | pathbuf2 | | {EXTERNAL LOCATION} | Result | +| main.rs:2542:24:2542:31 | pathbuf2 | E | {EXTERNAL LOCATION} | () | +| main.rs:2542:24:2542:31 | pathbuf2 | T | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2542:24:2542:40 | pathbuf2.unwrap() | | main.rs:2515:5:2515:25 | PathBuf | +| main.rs:2548:14:2548:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2548:14:2548:18 | SelfParam | TRef | main.rs:2547:5:2549:5 | Self [trait MyTrait] | +| main.rs:2555:14:2555:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2555:14:2555:18 | SelfParam | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2555:14:2555:18 | SelfParam | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2555:28:2557:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2556:13:2556:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2556:13:2556:16 | self | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2556:13:2556:16 | self | TRef.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2556:13:2556:18 | self.0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2561:14:2561:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2561:14:2561:18 | SelfParam | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2561:14:2561:18 | SelfParam | TRef.T | main.rs:2551:5:2552:19 | S | +| main.rs:2561:14:2561:18 | SelfParam | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2561:28:2563:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2562:13:2562:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2562:13:2562:16 | self | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2562:13:2562:16 | self | TRef.T | main.rs:2551:5:2552:19 | S | +| main.rs:2562:13:2562:16 | self | TRef.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2562:13:2562:18 | self.0 | | main.rs:2551:5:2552:19 | S | +| main.rs:2562:13:2562:18 | self.0 | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2562:13:2562:21 | ... .0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2567:15:2567:19 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2567:15:2567:19 | SelfParam | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2567:15:2567:19 | SelfParam | TRef.T | main.rs:2566:10:2566:16 | T | +| main.rs:2567:33:2569:9 | { ... } | | main.rs:2551:5:2552:19 | S | +| main.rs:2567:33:2569:9 | { ... } | T | main.rs:2551:5:2552:19 | S | +| main.rs:2567:33:2569:9 | { ... } | T.T | main.rs:2566:10:2566:16 | T | +| main.rs:2568:13:2568:24 | S(...) | | main.rs:2551:5:2552:19 | S | +| main.rs:2568:13:2568:24 | S(...) | T | main.rs:2551:5:2552:19 | S | +| main.rs:2568:13:2568:24 | S(...) | T.T | main.rs:2566:10:2566:16 | T | +| main.rs:2568:15:2568:23 | S(...) | | main.rs:2551:5:2552:19 | S | +| main.rs:2568:15:2568:23 | S(...) | T | main.rs:2566:10:2566:16 | T | +| main.rs:2568:17:2568:20 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2568:17:2568:20 | self | TRef | main.rs:2551:5:2552:19 | S | +| main.rs:2568:17:2568:20 | self | TRef.T | main.rs:2566:10:2566:16 | T | +| main.rs:2568:17:2568:22 | self.0 | | main.rs:2566:10:2566:16 | T | +| main.rs:2572:14:2572:14 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2572:48:2589:5 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2572:48:2589:5 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2572:48:2589:5 | { ... } | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2572:48:2589:5 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2573:13:2573:13 | x | | main.rs:2551:5:2552:19 | S | +| main.rs:2573:13:2573:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2573:17:2578:9 | if b {...} else {...} | | main.rs:2551:5:2552:19 | S | +| main.rs:2573:17:2578:9 | if b {...} else {...} | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2573:20:2573:20 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2573:22:2576:9 | { ... } | | main.rs:2551:5:2552:19 | S | +| main.rs:2573:22:2576:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2574:17:2574:17 | y | | main.rs:2551:5:2552:19 | S | +| main.rs:2574:17:2574:17 | y | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2574:21:2574:38 | ...::default(...) | | main.rs:2551:5:2552:19 | S | +| main.rs:2574:21:2574:38 | ...::default(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2575:13:2575:13 | y | | main.rs:2551:5:2552:19 | S | +| main.rs:2575:13:2575:13 | y | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2576:16:2578:9 | { ... } | | main.rs:2551:5:2552:19 | S | +| main.rs:2576:16:2578:9 | { ... } | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2577:13:2577:16 | S(...) | | main.rs:2551:5:2552:19 | S | +| main.rs:2577:13:2577:16 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2577:15:2577:15 | 2 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2582:13:2582:13 | x | | main.rs:2551:5:2552:19 | S | +| main.rs:2582:13:2582:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2582:17:2582:20 | S(...) | | main.rs:2551:5:2552:19 | S | +| main.rs:2582:17:2582:20 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2582:19:2582:19 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2583:9:2588:9 | if b {...} else {...} | | {EXTERNAL LOCATION} | Box | +| main.rs:2583:9:2588:9 | if b {...} else {...} | A | {EXTERNAL LOCATION} | Global | +| main.rs:2583:9:2588:9 | if b {...} else {...} | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2583:9:2588:9 | if b {...} else {...} | T | main.rs:2551:5:2552:19 | S | +| main.rs:2583:9:2588:9 | if b {...} else {...} | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2583:9:2588:9 | if b {...} else {...} | T.T | main.rs:2551:5:2552:19 | S | +| main.rs:2583:9:2588:9 | if b {...} else {...} | T.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2583:9:2588:9 | if b {...} else {...} | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2583:12:2583:12 | b | | {EXTERNAL LOCATION} | bool | +| main.rs:2583:14:2586:9 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2583:14:2586:9 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2583:14:2586:9 | { ... } | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2583:14:2586:9 | { ... } | T | main.rs:2551:5:2552:19 | S | +| main.rs:2583:14:2586:9 | { ... } | T.T | main.rs:2551:5:2552:19 | S | +| main.rs:2583:14:2586:9 | { ... } | T.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2583:14:2586:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2584:17:2584:17 | x | | main.rs:2551:5:2552:19 | S | +| main.rs:2584:17:2584:17 | x | T | main.rs:2551:5:2552:19 | S | +| main.rs:2584:17:2584:17 | x | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2584:21:2584:21 | x | | main.rs:2551:5:2552:19 | S | +| main.rs:2584:21:2584:21 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2584:21:2584:26 | x.m2() | | main.rs:2551:5:2552:19 | S | +| main.rs:2584:21:2584:26 | x.m2() | T | main.rs:2551:5:2552:19 | S | +| main.rs:2584:21:2584:26 | x.m2() | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2585:13:2585:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2585:13:2585:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2585:13:2585:23 | ...::new(...) | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2585:13:2585:23 | ...::new(...) | T | main.rs:2551:5:2552:19 | S | +| main.rs:2585:13:2585:23 | ...::new(...) | T.T | main.rs:2551:5:2552:19 | S | +| main.rs:2585:13:2585:23 | ...::new(...) | T.T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2585:13:2585:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2585:22:2585:22 | x | | main.rs:2551:5:2552:19 | S | +| main.rs:2585:22:2585:22 | x | T | main.rs:2551:5:2552:19 | S | +| main.rs:2585:22:2585:22 | x | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2586:16:2588:9 | { ... } | | {EXTERNAL LOCATION} | Box | +| main.rs:2586:16:2588:9 | { ... } | A | {EXTERNAL LOCATION} | Global | +| main.rs:2586:16:2588:9 | { ... } | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2586:16:2588:9 | { ... } | T | main.rs:2551:5:2552:19 | S | +| main.rs:2586:16:2588:9 | { ... } | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2586:16:2588:9 | { ... } | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2587:13:2587:23 | ...::new(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2587:13:2587:23 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2587:13:2587:23 | ...::new(...) | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2587:13:2587:23 | ...::new(...) | T | main.rs:2551:5:2552:19 | S | +| main.rs:2587:13:2587:23 | ...::new(...) | T.T | {EXTERNAL LOCATION} | i32 | +| main.rs:2587:13:2587:23 | ...::new(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2587:22:2587:22 | x | | main.rs:2551:5:2552:19 | S | +| main.rs:2587:22:2587:22 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2593:22:2597:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2594:18:2594:18 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2594:33:2596:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2595:13:2595:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2595:13:2595:17 | ... + ... | | {EXTERNAL LOCATION} | i32 | +| main.rs:2595:17:2595:17 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2602:11:2602:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2602:30:2610:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2604:13:2604:13 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2604:17:2608:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2605:13:2607:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2605:16:2605:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2605:21:2607:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2606:24:2606:25 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2609:9:2609:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2613:20:2620:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2616:26:2616:27 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2618:9:2618:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2618:18:2618:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2618:18:2618:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2618:18:2618:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2618:18:2618:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2618:18:2618:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2619:9:2619:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2622:20:2624:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2623:16:2623:16 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2627:11:2627:14 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2627:30:2635:5 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2628:13:2628:13 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2628:17:2632:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2629:13:2631:13 | if cond {...} | | {EXTERNAL LOCATION} | () | +| main.rs:2629:16:2629:19 | cond | | {EXTERNAL LOCATION} | bool | +| main.rs:2629:21:2631:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2630:24:2630:25 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2633:9:2633:30 | MacroExpr | | {EXTERNAL LOCATION} | () | +| main.rs:2633:18:2633:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | +| main.rs:2633:18:2633:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| main.rs:2633:18:2633:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2633:18:2633:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2633:18:2633:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2633:29:2633:29 | a | | {EXTERNAL LOCATION} | () | +| main.rs:2634:9:2634:9 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2639:16:2686:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2640:13:2640:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2640:13:2640:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2640:17:2640:20 | None | | {EXTERNAL LOCATION} | Option | +| main.rs:2640:17:2640:20 | None | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2641:13:2641:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2641:13:2641:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2641:30:2641:30 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2641:30:2641:30 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2642:13:2642:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2642:13:2642:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2642:17:2642:35 | ...::None | | {EXTERNAL LOCATION} | Option | +| main.rs:2642:17:2642:35 | ...::None | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2643:13:2643:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2643:13:2643:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2643:17:2643:35 | ...::None::<...> | | {EXTERNAL LOCATION} | Option | +| main.rs:2643:17:2643:35 | ...::None::<...> | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2645:26:2645:28 | opt | | {EXTERNAL LOCATION} | Option | +| main.rs:2645:26:2645:28 | opt | T | main.rs:2645:23:2645:23 | T | +| main.rs:2645:42:2645:42 | x | | main.rs:2645:23:2645:23 | T | +| main.rs:2645:48:2645:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2647:13:2647:13 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2647:13:2647:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2647:17:2647:20 | None | | {EXTERNAL LOCATION} | Option | +| main.rs:2647:17:2647:20 | None | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2648:9:2648:24 | pin_option(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2648:20:2648:20 | x | | {EXTERNAL LOCATION} | Option | +| main.rs:2648:20:2648:20 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2648:23:2648:23 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2655:13:2655:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2655:13:2655:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2655:13:2655:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2655:17:2655:39 | ...::A {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2655:17:2655:39 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2655:17:2655:39 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2655:37:2655:37 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2656:13:2656:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2656:13:2656:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2656:13:2656:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2656:40:2656:40 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2656:40:2656:40 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2656:40:2656:40 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2657:13:2657:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2657:13:2657:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2657:13:2657:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2657:17:2657:52 | ...::A {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2657:17:2657:52 | ...::A {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2657:17:2657:52 | ...::A {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2657:50:2657:50 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2659:13:2659:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2659:13:2659:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2659:13:2659:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2659:17:2661:9 | ...::B::<...> {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2659:17:2661:9 | ...::B::<...> {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2659:17:2661:9 | ...::B::<...> {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2660:20:2660:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2663:29:2663:29 | e | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2663:29:2663:29 | e | T1 | main.rs:2663:26:2663:26 | T | +| main.rs:2663:29:2663:29 | e | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2663:53:2663:53 | x | | main.rs:2663:26:2663:26 | T | +| main.rs:2663:59:2663:60 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2666:13:2666:13 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2666:13:2666:13 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2666:13:2666:13 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2666:17:2668:9 | ...::B {...} | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2666:17:2668:9 | ...::B {...} | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2666:17:2668:9 | ...::B {...} | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2667:20:2667:32 | ...::new(...) | | {EXTERNAL LOCATION} | String | +| main.rs:2669:9:2669:27 | pin_my_either(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2669:23:2669:23 | x | | main.rs:2650:9:2653:9 | MyEither | +| main.rs:2669:23:2669:23 | x | T1 | {EXTERNAL LOCATION} | i32 | +| main.rs:2669:23:2669:23 | x | T2 | {EXTERNAL LOCATION} | String | +| main.rs:2669:26:2669:26 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2671:13:2671:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2671:13:2671:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2671:13:2671:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2671:17:2671:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2671:17:2671:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | +| main.rs:2671:17:2671:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2671:28:2671:28 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2672:13:2672:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2672:13:2672:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2672:13:2672:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2672:38:2672:38 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2672:38:2672:38 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2672:38:2672:38 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2673:13:2673:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2673:13:2673:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2673:13:2673:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2673:17:2673:44 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2673:17:2673:44 | ...::Ok(...) | E | {EXTERNAL LOCATION} | String | +| main.rs:2673:17:2673:44 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2673:43:2673:43 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2674:13:2674:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2674:13:2674:13 | x | E | {EXTERNAL LOCATION} | String | +| main.rs:2674:13:2674:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2674:17:2674:44 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2674:17:2674:44 | ...::Ok::<...>(...) | E | {EXTERNAL LOCATION} | String | +| main.rs:2674:17:2674:44 | ...::Ok::<...>(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2674:43:2674:43 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2676:29:2676:31 | res | | {EXTERNAL LOCATION} | Result | +| main.rs:2676:29:2676:31 | res | E | main.rs:2676:26:2676:26 | E | +| main.rs:2676:29:2676:31 | res | T | main.rs:2676:23:2676:23 | T | +| main.rs:2676:48:2676:48 | x | | main.rs:2676:26:2676:26 | E | +| main.rs:2676:54:2676:55 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2678:13:2678:13 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2678:13:2678:13 | x | E | {EXTERNAL LOCATION} | bool | +| main.rs:2678:13:2678:13 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2678:17:2678:29 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:2678:17:2678:29 | ...::Ok(...) | E | {EXTERNAL LOCATION} | bool | +| main.rs:2678:17:2678:29 | ...::Ok(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2678:28:2678:28 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2679:9:2679:28 | pin_result(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2679:20:2679:20 | x | | {EXTERNAL LOCATION} | Result | +| main.rs:2679:20:2679:20 | x | E | {EXTERNAL LOCATION} | bool | +| main.rs:2679:20:2679:20 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2679:23:2679:27 | false | | {EXTERNAL LOCATION} | bool | +| main.rs:2681:17:2681:17 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2681:17:2681:17 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2681:17:2681:17 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2681:21:2681:30 | ...::new(...) | | {EXTERNAL LOCATION} | Vec | +| main.rs:2681:21:2681:30 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2681:21:2681:30 | ...::new(...) | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2682:9:2682:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2682:9:2682:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2682:9:2682:9 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2682:9:2682:17 | x.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2682:16:2682:16 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2684:13:2684:13 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:2684:17:2684:34 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2685:9:2685:9 | x | | {EXTERNAL LOCATION} | Vec | +| main.rs:2685:9:2685:9 | x | A | {EXTERNAL LOCATION} | Global | +| main.rs:2685:9:2685:9 | x | T | {EXTERNAL LOCATION} | i32 | +| main.rs:2685:9:2685:17 | x.push(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2685:16:2685:16 | y | | {EXTERNAL LOCATION} | i32 | +| main.rs:2692:14:2692:17 | SelfParam | | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2695:14:2695:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2695:14:2695:18 | SelfParam | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2695:21:2695:25 | other | | {EXTERNAL LOCATION} | & | +| main.rs:2695:21:2695:25 | other | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2695:44:2697:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2695:44:2697:9 | { ... } | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2696:13:2696:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2696:13:2696:16 | self | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2696:13:2696:20 | self.f() | | {EXTERNAL LOCATION} | & | +| main.rs:2696:13:2696:20 | self.f() | TRef | main.rs:2690:5:2698:5 | Self [trait MyTrait] | +| main.rs:2702:14:2702:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| main.rs:2702:28:2704:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| main.rs:2703:13:2703:16 | self | | {EXTERNAL LOCATION} | i32 | +| main.rs:2709:14:2709:17 | SelfParam | | {EXTERNAL LOCATION} | usize | +| main.rs:2709:28:2711:9 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2710:13:2710:16 | self | | {EXTERNAL LOCATION} | usize | +| main.rs:2716:14:2716:17 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2716:14:2716:17 | SelfParam | TRef | main.rs:2714:10:2714:10 | T | +| main.rs:2716:28:2718:9 | { ... } | | {EXTERNAL LOCATION} | & | +| main.rs:2716:28:2718:9 | { ... } | TRef | main.rs:2714:10:2714:10 | T | +| main.rs:2717:13:2717:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2717:13:2717:16 | self | TRef | main.rs:2714:10:2714:10 | T | +| main.rs:2721:25:2725:5 | { ... } | | {EXTERNAL LOCATION} | usize | +| main.rs:2722:17:2722:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2722:17:2722:17 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2722:21:2722:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2722:21:2722:21 | 0 | | {EXTERNAL LOCATION} | usize | +| main.rs:2723:9:2723:9 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2723:9:2723:9 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2723:9:2723:17 | ... = ... | | {EXTERNAL LOCATION} | () | +| main.rs:2723:13:2723:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2723:13:2723:13 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2723:13:2723:17 | x.f() | | {EXTERNAL LOCATION} | i32 | +| main.rs:2723:13:2723:17 | x.f() | | {EXTERNAL LOCATION} | usize | +| main.rs:2724:9:2724:9 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2724:9:2724:9 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2727:12:2735:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2728:13:2728:13 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2728:24:2728:24 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2728:24:2728:24 | 0 | | {EXTERNAL LOCATION} | usize | +| main.rs:2729:13:2729:13 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2729:13:2729:13 | y | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2729:17:2729:18 | &1 | | {EXTERNAL LOCATION} | & | +| main.rs:2729:17:2729:18 | &1 | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2729:18:2729:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2730:13:2730:13 | z | | {EXTERNAL LOCATION} | & | +| main.rs:2730:13:2730:13 | z | TRef | {EXTERNAL LOCATION} | usize | +| main.rs:2730:17:2730:17 | x | | {EXTERNAL LOCATION} | usize | +| main.rs:2730:17:2730:22 | x.g(...) | | {EXTERNAL LOCATION} | & | +| main.rs:2730:17:2730:22 | x.g(...) | TRef | {EXTERNAL LOCATION} | usize | +| main.rs:2730:21:2730:21 | y | | {EXTERNAL LOCATION} | & | +| main.rs:2730:21:2730:21 | y | TRef | {EXTERNAL LOCATION} | i32 | +| main.rs:2732:13:2732:13 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2732:17:2732:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2733:13:2733:13 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2733:24:2733:24 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2733:24:2733:24 | 1 | | {EXTERNAL LOCATION} | usize | +| main.rs:2734:13:2734:13 | z | | {EXTERNAL LOCATION} | i32 | +| main.rs:2734:17:2734:17 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2734:17:2734:24 | x.max(...) | | {EXTERNAL LOCATION} | i32 | +| main.rs:2734:23:2734:23 | y | | {EXTERNAL LOCATION} | usize | +| main.rs:2744:11:2779:1 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2745:5:2745:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2746:5:2746:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2747:5:2747:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2747:20:2747:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2747:41:2747:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2748:5:2748:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2749:5:2749:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2750:5:2750:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2751:5:2751:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2752:5:2752:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2753:5:2753:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2754:5:2754:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2755:5:2755:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2756:5:2756:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2757:5:2757:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2758:5:2758:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2759:5:2759:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2760:5:2760:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2761:5:2761:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2762:5:2762:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2763:5:2763:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2763:5:2763:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2764:5:2764:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2765:5:2765:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2766:5:2766:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2767:5:2767:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2768:5:2768:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2769:5:2769:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2770:5:2770:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2771:5:2771:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2772:5:2772:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2773:5:2773:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2774:5:2774:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2775:5:2775:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2776:5:2776:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2777:5:2777:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2777:5:2777:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2777:5:2777:20 | ...::f(...) | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2777:5:2777:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2777:16:2777:19 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2778:5:2778:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:4:19:4:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:4:19:4:23 | SelfParam | TRef | overloading.rs:2:5:7:5 | Self [trait FirstTrait] | +| overloading.rs:4:34:6:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:5:13:5:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:10:19:10:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:10:19:10:23 | SelfParam | TRef | overloading.rs:8:5:13:5 | Self [trait SecondTrait] | +| overloading.rs:10:33:12:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:11:13:11:13 | 1 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:11:13:11:13 | 1 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:18:16:26:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:19:13:19:13 | s | | overloading.rs:14:5:14:13 | S | +| overloading.rs:19:17:19:17 | S | | overloading.rs:14:5:14:13 | S | +| overloading.rs:21:13:21:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:21:19:21:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:21:38:21:39 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:21:38:21:39 | &s | TRef | overloading.rs:14:5:14:13 | S | +| overloading.rs:21:39:21:39 | s | | overloading.rs:14:5:14:13 | S | +| overloading.rs:22:13:22:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:22:19:22:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:22:45:22:46 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:22:45:22:46 | &s | TRef | overloading.rs:14:5:14:13 | S | +| overloading.rs:22:46:22:46 | s | | overloading.rs:14:5:14:13 | S | +| overloading.rs:24:13:24:15 | _n1 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:24:19:24:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:24:39:24:40 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:24:39:24:40 | &s | TRef | overloading.rs:14:5:14:13 | S | +| overloading.rs:24:40:24:40 | s | | overloading.rs:14:5:14:13 | S | +| overloading.rs:25:13:25:15 | _n2 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:25:19:25:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:25:46:25:47 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:25:46:25:47 | &s | TRef | overloading.rs:14:5:14:13 | S | +| overloading.rs:25:47:25:47 | s | | overloading.rs:14:5:14:13 | S | +| overloading.rs:34:26:34:29 | SelfParam | | overloading.rs:33:5:37:5 | Self [trait OverlappingTrait] | +| overloading.rs:36:28:36:31 | SelfParam | | overloading.rs:33:5:37:5 | Self [trait OverlappingTrait] | +| overloading.rs:36:34:36:35 | s1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:41:26:41:29 | SelfParam | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:41:38:43:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:42:13:42:14 | S1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:46:28:46:31 | SelfParam | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:46:34:46:35 | s1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:46:48:48:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:47:13:47:14 | S1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:53:26:53:29 | SelfParam | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:53:38:55:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:54:13:54:16 | self | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:58:28:58:31 | SelfParam | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:58:40:60:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:59:13:59:16 | self | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:67:26:67:29 | SelfParam | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:67:26:67:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:67:38:69:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:68:13:68:14 | S1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:72:28:72:31 | SelfParam | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:72:28:72:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:72:40:74:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:73:13:73:14 | S1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:79:26:79:29 | SelfParam | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:79:26:79:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:79:38:81:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:80:13:80:14 | S1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:84:28:84:31 | SelfParam | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:84:28:84:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:84:34:84:35 | s1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:84:48:86:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:85:13:85:14 | S1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:91:26:91:29 | SelfParam | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:91:26:91:29 | SelfParam | T2 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:91:38:93:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:92:13:92:14 | S1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:96:28:96:31 | SelfParam | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:96:28:96:31 | SelfParam | T2 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:96:34:96:35 | s1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:96:48:98:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:97:13:97:14 | S1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:105:14:105:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:105:14:105:18 | SelfParam | TRef | overloading.rs:104:5:106:5 | Self [trait OverlappingTrait2] | +| overloading.rs:105:21:105:21 | x | | {EXTERNAL LOCATION} | & | +| overloading.rs:105:21:105:21 | x | TRef | overloading.rs:104:29:104:29 | T | +| overloading.rs:110:14:110:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:110:14:110:18 | SelfParam | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:110:14:110:18 | SelfParam | TRef.T3 | overloading.rs:108:10:108:10 | T | +| overloading.rs:110:21:110:21 | x | | {EXTERNAL LOCATION} | & | +| overloading.rs:110:21:110:21 | x | TRef | overloading.rs:108:10:108:10 | T | +| overloading.rs:110:37:112:9 | { ... } | | {EXTERNAL LOCATION} | & | +| overloading.rs:110:37:112:9 | { ... } | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:110:37:112:9 | { ... } | TRef.T3 | overloading.rs:108:10:108:10 | T | +| overloading.rs:111:13:111:16 | self | | {EXTERNAL LOCATION} | & | +| overloading.rs:111:13:111:16 | self | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:111:13:111:16 | self | TRef.T3 | overloading.rs:108:10:108:10 | T | +| overloading.rs:117:14:117:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:117:14:117:18 | SelfParam | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:117:14:117:18 | SelfParam | TRef.T3 | overloading.rs:115:10:115:10 | T | +| overloading.rs:117:21:117:21 | x | | overloading.rs:115:10:115:10 | T | +| overloading.rs:117:36:119:9 | { ... } | | {EXTERNAL LOCATION} | & | +| overloading.rs:117:36:119:9 | { ... } | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:117:36:119:9 | { ... } | TRef.T3 | overloading.rs:115:10:115:10 | T | +| overloading.rs:118:13:118:16 | self | | {EXTERNAL LOCATION} | & | +| overloading.rs:118:13:118:16 | self | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:118:13:118:16 | self | TRef.T3 | overloading.rs:115:10:115:10 | T | +| overloading.rs:124:14:124:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:124:14:124:18 | SelfParam | TRef | overloading.rs:122:5:125:5 | Self [trait MyTrait1] | +| overloading.rs:124:21:124:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:134:14:134:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:134:14:134:18 | SelfParam | TRef | overloading.rs:129:5:130:14 | S4 | +| overloading.rs:134:21:134:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:144:14:144:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:144:14:144:18 | SelfParam | TRef | overloading.rs:139:5:140:22 | S5 | +| overloading.rs:144:14:144:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:144:21:144:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:153:16:179:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:154:13:154:13 | x | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:154:17:154:18 | S1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:155:9:155:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:155:18:155:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:155:18:155:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:155:18:155:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:155:18:155:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:155:18:155:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:155:26:155:26 | x | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:155:26:155:42 | x.common_method() | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:156:9:156:46 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:156:18:156:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:156:18:156:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:156:18:156:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:156:18:156:45 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:156:18:156:45 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:156:26:156:45 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:156:44:156:44 | x | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:157:9:157:45 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:157:18:157:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:157:18:157:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:157:18:157:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:157:18:157:44 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:157:18:157:44 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:157:26:157:26 | x | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:157:26:157:44 | x.common_method_2() | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:158:9:158:48 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:158:18:158:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:158:18:158:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:158:18:158:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:158:18:158:47 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:158:18:158:47 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:158:26:158:47 | ...::common_method_2(...) | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:158:46:158:46 | x | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:160:13:160:13 | y | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:160:13:160:13 | y | T2 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:160:17:160:22 | S2(...) | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:160:17:160:22 | S2(...) | T2 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:160:20:160:21 | S1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:161:9:161:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:161:18:161:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:161:18:161:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:161:18:161:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:161:18:161:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:161:18:161:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:161:26:161:26 | y | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:161:26:161:26 | y | T2 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:161:26:161:42 | y.common_method() | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:162:9:162:57 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:162:18:162:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:162:18:162:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:162:18:162:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:162:18:162:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:162:18:162:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:162:26:162:56 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:162:50:162:55 | S2(...) | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:162:50:162:55 | S2(...) | T2 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:162:53:162:54 | S1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:164:13:164:13 | z | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:164:13:164:13 | z | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:164:17:164:21 | S2(...) | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:164:17:164:21 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:164:20:164:20 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:165:9:165:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:165:18:165:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:165:18:165:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:165:18:165:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:165:18:165:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:165:18:165:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:165:26:165:26 | z | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:165:26:165:26 | z | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:165:26:165:42 | z.common_method() | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:166:9:166:50 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:166:18:166:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:166:18:166:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:166:18:166:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:166:18:166:49 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:166:18:166:49 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:166:26:166:49 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:166:44:166:48 | S2(...) | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:166:44:166:48 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:166:47:166:47 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:167:9:167:57 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:167:18:167:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:167:18:167:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:167:18:167:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:167:18:167:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:167:18:167:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:167:26:167:56 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:167:51:167:55 | S2(...) | | overloading.rs:63:5:63:22 | S2 | +| overloading.rs:167:51:167:55 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:167:54:167:54 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:169:13:169:13 | w | | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:169:13:169:13 | w | T3 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:169:17:169:22 | S3(...) | | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:169:17:169:22 | S3(...) | T3 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:169:20:169:21 | S1 | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:170:9:170:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:170:18:170:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:170:18:170:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:170:18:170:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:170:18:170:31 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:170:18:170:31 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:170:26:170:26 | w | | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:170:26:170:26 | w | T3 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:170:26:170:31 | w.m(...) | | {EXTERNAL LOCATION} | & | +| overloading.rs:170:26:170:31 | w.m(...) | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:170:26:170:31 | w.m(...) | TRef.T3 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:170:30:170:30 | x | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:171:9:171:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:171:18:171:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:171:18:171:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:171:18:171:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:171:18:171:37 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:171:18:171:37 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:171:26:171:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | +| overloading.rs:171:26:171:37 | ...::m(...) | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:171:26:171:37 | ...::m(...) | TRef.T3 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:171:32:171:33 | &w | | {EXTERNAL LOCATION} | & | +| overloading.rs:171:32:171:33 | &w | TRef | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:171:32:171:33 | &w | TRef.T3 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:171:33:171:33 | w | | overloading.rs:101:5:102:22 | S3 | +| overloading.rs:171:33:171:33 | w | T3 | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:171:36:171:36 | x | | overloading.rs:30:5:31:14 | S1 | +| overloading.rs:173:9:173:10 | S4 | | overloading.rs:129:5:130:14 | S4 | +| overloading.rs:173:9:173:14 | S4.m() | | {EXTERNAL LOCATION} | () | +| overloading.rs:174:9:174:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:174:15:174:17 | &S4 | | {EXTERNAL LOCATION} | & | +| overloading.rs:174:15:174:17 | &S4 | TRef | overloading.rs:129:5:130:14 | S4 | +| overloading.rs:174:16:174:17 | S4 | | overloading.rs:129:5:130:14 | S4 | +| overloading.rs:175:9:175:16 | S5(...) | | overloading.rs:139:5:140:22 | S5 | +| overloading.rs:175:9:175:16 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:175:9:175:20 | ... .m() | | {EXTERNAL LOCATION} | () | +| overloading.rs:175:12:175:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:176:9:176:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:176:15:176:23 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:176:15:176:23 | &... | TRef | overloading.rs:139:5:140:22 | S5 | +| overloading.rs:176:15:176:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:176:16:176:23 | S5(...) | | overloading.rs:139:5:140:22 | S5 | +| overloading.rs:176:16:176:23 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:176:19:176:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:177:9:177:16 | S5(...) | | overloading.rs:139:5:140:22 | S5 | +| overloading.rs:177:9:177:16 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | +| overloading.rs:177:9:177:20 | ... .m() | | {EXTERNAL LOCATION} | () | +| overloading.rs:177:12:177:15 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:178:9:178:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:178:15:178:23 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:178:15:178:23 | &... | TRef | overloading.rs:139:5:140:22 | S5 | +| overloading.rs:178:15:178:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | bool | +| overloading.rs:178:16:178:23 | S5(...) | | overloading.rs:139:5:140:22 | S5 | +| overloading.rs:178:16:178:23 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | +| overloading.rs:178:19:178:22 | true | | {EXTERNAL LOCATION} | bool | | pattern_matching.rs:13:26:133:1 | { ... } | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:13:26:133:1 | { ... } | T | {EXTERNAL LOCATION} | () | | pattern_matching.rs:14:9:14:13 | value | | {EXTERNAL LOCATION} | Option | From c62d95ac9d028c2042c0d04e4162b60ec6b054a7 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Fri, 30 Jan 2026 14:54:03 +0100 Subject: [PATCH 309/433] Rust: More type inference tests --- .../PathResolutionConsistency.expected | 5 + .../type-inference/overloading.rs | 185 ++- .../type-inference/type-inference.expected | 1072 ++++++++++------- 3 files changed, 852 insertions(+), 410 deletions(-) diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected index 1140950774c7..2ee1f7c16a6e 100644 --- a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected @@ -1,2 +1,7 @@ multipleResolvedTargets | main.rs:2723:13:2723:17 | x.f() | +| overloading.rs:269:22:269:30 | x.g(...) | +| overloading.rs:315:9:315:25 | ...::Assoc(...) | +| overloading.rs:316:9:316:26 | ...::Assoc(...) | +| overloading.rs:319:9:319:26 | ...::f(...) | +| overloading.rs:320:9:320:22 | ...::f(...) | diff --git a/rust/ql/test/library-tests/type-inference/overloading.rs b/rust/ql/test/library-tests/type-inference/overloading.rs index 09571861ecb8..db2046b1314c 100644 --- a/rust/ql/test/library-tests/type-inference/overloading.rs +++ b/rust/ql/test/library-tests/type-inference/overloading.rs @@ -4,25 +4,69 @@ mod method_call_trait_path_disambig { fn method(&self) -> bool { true } + + fn method2(&self) -> bool; + + fn function() -> bool; } trait SecondTrait { // SecondTrait::method fn method(&self) -> i64 { 1 } + + fn method2(&self) -> i64; } + #[derive(Default)] struct S; - impl FirstTrait for S {} - impl SecondTrait for S {} + impl FirstTrait for S { + // S::method2 + fn method2(&self) -> bool { + true + } + + // S::function + fn function() -> bool { + true + } + } + impl SecondTrait for S { + // S::method2 + fn method2(&self) -> i64 { + 1 + } + } + + struct S2; + impl FirstTrait for S2 { + // S2::method2 + fn method2(&self) -> bool { + false + } + + // S2::function + fn function() -> bool { + false + } + } fn _test() { let s = S; let _b1 = FirstTrait::method(&s); // $ type=_b1:bool target=FirstTrait::method let _b2 = ::method(&s); // $ type=_b2:bool target=FirstTrait::method + let _b3 = ::method(&Default::default()); // $ type=_b3:bool $ MISSING: target=FirstTrait::method target=default + let _b4 = ::method2(&s); // $ type=_b4:bool target=S::method2 + let _b5 = ::method2(&Default::default()); // $ type=_b5:bool $ MISSING: target=S::method2 target=default let _n1 = SecondTrait::method(&s); // $ type=_n1:i64 target=SecondTrait::method let _n2 = ::method(&s); // $ type=_n2:i64 target=SecondTrait::method + let _n3 = ::method(&Default::default()); // $ type=_n3:i64 $ MISSING: target=SecondTrait::method target=default + let _n4 = ::method2(&s); // $ type=_n4:i64 target=S::method2 + let _n5 = ::method2(&Default::default()); // $ type=_n5:i64 $ MISSING: target=S::method2 target=default + + ::function(); // $ MISSING: target=S::function + ::function(); // $ MISSING: target=S2::function } } @@ -178,3 +222,140 @@ pub mod impl_overlap { S5::m(&S5(true)); // $ target=MyTrait1::m } } + +mod impl_overlap2 { + trait Trait1 { + fn f(self, x: T1) -> T1; + } + + impl Trait1 for i32 { + // f1 + fn f(self, x: i32) -> i32 { + 0 + } + } + + impl Trait1 for i32 { + // f2 + fn f(self, x: i64) -> i64 { + 0 + } + } + + trait Trait2 { + fn g(self, x: T1) -> T2; + } + + impl Trait2 for i32 { + // g3 + fn g(self, x: i32) -> i32 { + 0 + } + } + + impl Trait2 for i32 { + // g4 + fn g(self, x: i32) -> i64 { + 0 + } + } + + fn f() { + let x = 0; + let y = x.f(0i32); // $ target=f1 + let z: i32 = x.f(Default::default()); // $ MISSING: target=f1 target=default + let z = x.f(0i64); // $ target=f2 + let z: i64 = x.f(Default::default()); // $ MISSING: target=f2 target=default + let z: i64 = x.g(0i32); // $ target=g4 $ SPURIOUS: target=g3 + } +} + +mod impl_overlap3 { + trait Trait { + type Assoc; + + fn Assoc() -> Self::Assoc; + } + + struct S(T); + + impl Trait for S { + type Assoc = i32; + + // S3i32AssocFunc + fn Assoc() -> Self::Assoc { + 0 + } + } + + impl Trait for S { + type Assoc = bool; + + // S3boolAssocFunc + fn Assoc() -> Self::Assoc { + true + } + } + + impl S { + // S3i32f + fn f(x: i32) -> i32 { + 0 + } + } + + impl S { + // S3boolf + fn f(x: bool) -> bool { + true + } + } + + fn f() { + S::::Assoc(); // $ target=S3i32AssocFunc $ SPURIOUS: target=S3boolAssocFunc + S::::Assoc(); // $ target=S3boolAssocFunc $ SPURIOUS: target=S3i32AssocFunc + + // `S::f(true)` results in "multiple applicable items in scope", even though the argument is actually enough to disambiguate + S::::f(true); // $ target=S3boolf $ SPURIOUS: target=S3i32f + S::::f(0); // $ target=S3i32f $ SPURIOUS: target=S3boolf + } +} + +mod default_type_args { + struct S(T); + + trait MyTrait { + type AssocType; + + fn g(self) -> Self::AssocType; + } + + impl S { + fn f(self) -> i64 { + self.0 // $ fieldof=S + } + + fn g(self) -> i64 { + self.0 // $ fieldof=S + } + } + + impl S { + fn g(self) -> bool { + self.0 // $ fieldof=S + } + } + + impl MyTrait for S { + type AssocType = S; + + fn g(self) -> S { + let x = S::f(S(Default::default())); // $ type=x:i64 $ MISSING: target=f target=default + let x = Self::AssocType::f(S(Default::default())); // $ target=f target=default type=x:i64 + let x = S::::g(S(Default::default())); // $ target=g target=default type=x:bool + let x = S::::g(S(Default::default())); // $ target=g target=default type=x:i64 + let x = Self::AssocType::g(S(Default::default())); // $ target=g target=default type=x:i64 + S(0) + } + } +} diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index f1ad65a3aae0..8a998f5d211b 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -3718,157 +3718,253 @@ inferCertainType | main.rs:2777:16:2777:19 | true | | {EXTERNAL LOCATION} | bool | | main.rs:2778:5:2778:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | | overloading.rs:4:19:4:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:4:19:4:23 | SelfParam | TRef | overloading.rs:2:5:7:5 | Self [trait FirstTrait] | +| overloading.rs:4:19:4:23 | SelfParam | TRef | overloading.rs:2:5:11:5 | Self [trait FirstTrait] | | overloading.rs:4:34:6:9 | { ... } | | {EXTERNAL LOCATION} | bool | | overloading.rs:5:13:5:16 | true | | {EXTERNAL LOCATION} | bool | -| overloading.rs:10:19:10:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:10:19:10:23 | SelfParam | TRef | overloading.rs:8:5:13:5 | Self [trait SecondTrait] | -| overloading.rs:10:33:12:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| overloading.rs:18:16:26:5 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:21:13:21:15 | _b1 | | {EXTERNAL LOCATION} | bool | -| overloading.rs:21:19:21:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | -| overloading.rs:21:38:21:39 | &s | | {EXTERNAL LOCATION} | & | -| overloading.rs:22:13:22:15 | _b2 | | {EXTERNAL LOCATION} | bool | -| overloading.rs:22:19:22:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | -| overloading.rs:22:45:22:46 | &s | | {EXTERNAL LOCATION} | & | -| overloading.rs:24:13:24:15 | _n1 | | {EXTERNAL LOCATION} | i64 | -| overloading.rs:24:19:24:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | -| overloading.rs:24:39:24:40 | &s | | {EXTERNAL LOCATION} | & | -| overloading.rs:25:13:25:15 | _n2 | | {EXTERNAL LOCATION} | i64 | -| overloading.rs:25:19:25:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | -| overloading.rs:25:46:25:47 | &s | | {EXTERNAL LOCATION} | & | -| overloading.rs:34:26:34:29 | SelfParam | | overloading.rs:33:5:37:5 | Self [trait OverlappingTrait] | -| overloading.rs:36:28:36:31 | SelfParam | | overloading.rs:33:5:37:5 | Self [trait OverlappingTrait] | -| overloading.rs:36:34:36:35 | s1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:41:26:41:29 | SelfParam | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:41:38:43:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:46:28:46:31 | SelfParam | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:46:34:46:35 | s1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:46:48:48:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:53:26:53:29 | SelfParam | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:53:38:55:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:54:13:54:16 | self | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:58:28:58:31 | SelfParam | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:58:40:60:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:59:13:59:16 | self | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:67:26:67:29 | SelfParam | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:67:26:67:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:67:38:69:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:72:28:72:31 | SelfParam | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:72:28:72:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:72:40:74:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:79:26:79:29 | SelfParam | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:79:26:79:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:79:38:81:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:84:28:84:31 | SelfParam | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:84:28:84:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:84:34:84:35 | s1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:84:48:86:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:91:26:91:29 | SelfParam | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:91:26:91:29 | SelfParam | T2 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:91:38:93:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:96:28:96:31 | SelfParam | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:96:28:96:31 | SelfParam | T2 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:96:34:96:35 | s1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:96:48:98:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:105:14:105:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:105:14:105:18 | SelfParam | TRef | overloading.rs:104:5:106:5 | Self [trait OverlappingTrait2] | -| overloading.rs:105:21:105:21 | x | | {EXTERNAL LOCATION} | & | -| overloading.rs:105:21:105:21 | x | TRef | overloading.rs:104:29:104:29 | T | -| overloading.rs:110:14:110:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:110:14:110:18 | SelfParam | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:110:14:110:18 | SelfParam | TRef.T3 | overloading.rs:108:10:108:10 | T | -| overloading.rs:110:21:110:21 | x | | {EXTERNAL LOCATION} | & | -| overloading.rs:110:21:110:21 | x | TRef | overloading.rs:108:10:108:10 | T | -| overloading.rs:110:37:112:9 | { ... } | | {EXTERNAL LOCATION} | & | -| overloading.rs:110:37:112:9 | { ... } | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:110:37:112:9 | { ... } | TRef.T3 | overloading.rs:108:10:108:10 | T | -| overloading.rs:111:13:111:16 | self | | {EXTERNAL LOCATION} | & | -| overloading.rs:111:13:111:16 | self | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:111:13:111:16 | self | TRef.T3 | overloading.rs:108:10:108:10 | T | -| overloading.rs:117:14:117:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:117:14:117:18 | SelfParam | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:117:14:117:18 | SelfParam | TRef.T3 | overloading.rs:115:10:115:10 | T | -| overloading.rs:117:21:117:21 | x | | overloading.rs:115:10:115:10 | T | -| overloading.rs:117:36:119:9 | { ... } | | {EXTERNAL LOCATION} | & | -| overloading.rs:117:36:119:9 | { ... } | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:117:36:119:9 | { ... } | TRef.T3 | overloading.rs:115:10:115:10 | T | -| overloading.rs:118:13:118:16 | self | | {EXTERNAL LOCATION} | & | -| overloading.rs:118:13:118:16 | self | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:118:13:118:16 | self | TRef.T3 | overloading.rs:115:10:115:10 | T | -| overloading.rs:124:14:124:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:124:14:124:18 | SelfParam | TRef | overloading.rs:122:5:125:5 | Self [trait MyTrait1] | -| overloading.rs:124:21:124:22 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:134:14:134:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:134:14:134:18 | SelfParam | TRef | overloading.rs:129:5:130:14 | S4 | -| overloading.rs:134:21:134:22 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:144:14:144:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:144:14:144:18 | SelfParam | TRef | overloading.rs:139:5:140:22 | S5 | -| overloading.rs:144:14:144:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:144:21:144:22 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:153:16:179:5 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:155:18:155:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:155:18:155:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:155:18:155:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:155:18:155:42 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:156:18:156:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:156:18:156:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:156:18:156:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:156:18:156:45 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:156:26:156:45 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:157:18:157:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:157:18:157:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:157:18:157:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:157:18:157:44 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:158:18:158:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:158:18:158:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:158:18:158:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:158:18:158:47 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:158:26:158:47 | ...::common_method_2(...) | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:161:18:161:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:161:18:161:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:161:18:161:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:161:18:161:42 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:162:18:162:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:162:18:162:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:162:18:162:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:162:18:162:56 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:162:26:162:56 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:165:18:165:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:165:18:165:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:165:18:165:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:165:18:165:42 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:166:18:166:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:166:18:166:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:166:18:166:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:166:18:166:49 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:166:26:166:49 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:167:18:167:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:167:18:167:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:167:18:167:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:167:18:167:56 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:167:26:167:56 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:170:18:170:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:170:18:170:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:170:18:170:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:170:18:170:31 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:171:18:171:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:171:18:171:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:171:18:171:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:171:18:171:37 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:171:26:171:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | -| overloading.rs:171:26:171:37 | ...::m(...) | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:171:32:171:33 | &w | | {EXTERNAL LOCATION} | & | -| overloading.rs:174:9:174:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:174:15:174:17 | &S4 | | {EXTERNAL LOCATION} | & | -| overloading.rs:175:12:175:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| overloading.rs:176:9:176:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:176:15:176:23 | &... | | {EXTERNAL LOCATION} | & | -| overloading.rs:176:19:176:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| overloading.rs:177:12:177:15 | true | | {EXTERNAL LOCATION} | bool | -| overloading.rs:178:9:178:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:178:15:178:23 | &... | | {EXTERNAL LOCATION} | & | -| overloading.rs:178:19:178:22 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:8:20:8:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:8:20:8:24 | SelfParam | TRef | overloading.rs:2:5:11:5 | Self [trait FirstTrait] | +| overloading.rs:14:19:14:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:14:19:14:23 | SelfParam | TRef | overloading.rs:12:5:19:5 | Self [trait SecondTrait] | +| overloading.rs:14:33:16:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:18:20:18:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:18:20:18:24 | SelfParam | TRef | overloading.rs:12:5:19:5 | Self [trait SecondTrait] | +| overloading.rs:24:20:24:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:24:20:24:24 | SelfParam | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:24:35:26:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:25:13:25:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:29:31:31:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:30:13:30:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:35:20:35:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:35:20:35:24 | SelfParam | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:35:34:37:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:43:20:43:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:43:20:43:24 | SelfParam | TRef | overloading.rs:40:5:40:14 | S2 | +| overloading.rs:43:35:45:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:44:13:44:17 | false | | {EXTERNAL LOCATION} | bool | +| overloading.rs:48:31:50:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:49:13:49:17 | false | | {EXTERNAL LOCATION} | bool | +| overloading.rs:53:16:70:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:56:13:56:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:56:19:56:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:56:38:56:39 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:57:13:57:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:57:19:57:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:57:45:57:46 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:58:13:58:15 | _b3 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:58:19:58:64 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:58:45:58:63 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:59:13:59:15 | _b4 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:59:19:59:48 | ...::method2(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:59:46:59:47 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:60:13:60:15 | _b5 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:60:19:60:65 | ...::method2(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:60:46:60:64 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:62:13:62:15 | _n1 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:62:19:62:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:62:39:62:40 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:63:13:63:15 | _n2 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:63:19:63:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:63:46:63:47 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:64:13:64:15 | _n3 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:64:19:64:65 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:64:46:64:64 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:65:13:65:15 | _n4 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:65:19:65:49 | ...::method2(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:65:47:65:48 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:66:13:66:15 | _n5 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:66:19:66:66 | ...::method2(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:66:47:66:65 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:68:9:68:37 | ...::function(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:69:9:69:38 | ...::function(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:78:26:78:29 | SelfParam | | overloading.rs:77:5:81:5 | Self [trait OverlappingTrait] | +| overloading.rs:80:28:80:31 | SelfParam | | overloading.rs:77:5:81:5 | Self [trait OverlappingTrait] | +| overloading.rs:80:34:80:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:85:26:85:29 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:85:38:87:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:90:28:90:31 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:90:34:90:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:90:48:92:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:97:26:97:29 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:97:38:99:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:98:13:98:16 | self | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:102:28:102:31 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:102:40:104:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:103:13:103:16 | self | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:111:26:111:29 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:111:26:111:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:111:38:113:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:116:28:116:31 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:116:28:116:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:116:40:118:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:123:26:123:29 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:123:26:123:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:123:38:125:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:128:28:128:31 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:128:28:128:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:128:34:128:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:128:48:130:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:135:26:135:29 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:135:26:135:29 | SelfParam | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:135:38:137:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:140:28:140:31 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:140:28:140:31 | SelfParam | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:140:34:140:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:140:48:142:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:149:14:149:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:149:14:149:18 | SelfParam | TRef | overloading.rs:148:5:150:5 | Self [trait OverlappingTrait2] | +| overloading.rs:149:21:149:21 | x | | {EXTERNAL LOCATION} | & | +| overloading.rs:149:21:149:21 | x | TRef | overloading.rs:148:29:148:29 | T | +| overloading.rs:154:14:154:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:154:14:154:18 | SelfParam | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:154:14:154:18 | SelfParam | TRef.T3 | overloading.rs:152:10:152:10 | T | +| overloading.rs:154:21:154:21 | x | | {EXTERNAL LOCATION} | & | +| overloading.rs:154:21:154:21 | x | TRef | overloading.rs:152:10:152:10 | T | +| overloading.rs:154:37:156:9 | { ... } | | {EXTERNAL LOCATION} | & | +| overloading.rs:154:37:156:9 | { ... } | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:154:37:156:9 | { ... } | TRef.T3 | overloading.rs:152:10:152:10 | T | +| overloading.rs:155:13:155:16 | self | | {EXTERNAL LOCATION} | & | +| overloading.rs:155:13:155:16 | self | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:155:13:155:16 | self | TRef.T3 | overloading.rs:152:10:152:10 | T | +| overloading.rs:161:14:161:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:161:14:161:18 | SelfParam | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:161:14:161:18 | SelfParam | TRef.T3 | overloading.rs:159:10:159:10 | T | +| overloading.rs:161:21:161:21 | x | | overloading.rs:159:10:159:10 | T | +| overloading.rs:161:36:163:9 | { ... } | | {EXTERNAL LOCATION} | & | +| overloading.rs:161:36:163:9 | { ... } | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:161:36:163:9 | { ... } | TRef.T3 | overloading.rs:159:10:159:10 | T | +| overloading.rs:162:13:162:16 | self | | {EXTERNAL LOCATION} | & | +| overloading.rs:162:13:162:16 | self | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:162:13:162:16 | self | TRef.T3 | overloading.rs:159:10:159:10 | T | +| overloading.rs:168:14:168:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:168:14:168:18 | SelfParam | TRef | overloading.rs:166:5:169:5 | Self [trait MyTrait1] | +| overloading.rs:168:21:168:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:178:14:178:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:178:14:178:18 | SelfParam | TRef | overloading.rs:173:5:174:14 | S4 | +| overloading.rs:178:21:178:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:188:14:188:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:188:14:188:18 | SelfParam | TRef | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:188:14:188:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:188:21:188:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:197:16:223:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:199:18:199:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:199:18:199:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:199:18:199:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:199:18:199:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:18:200:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:200:18:200:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:200:18:200:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:18:200:45 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:26:200:45 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:201:18:201:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:201:18:201:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:201:18:201:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:201:18:201:44 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:18:202:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:202:18:202:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:202:18:202:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:18:202:47 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:26:202:47 | ...::common_method_2(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:205:18:205:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:205:18:205:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:205:18:205:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:205:18:205:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:18:206:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:206:18:206:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:206:18:206:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:18:206:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:26:206:56 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:209:18:209:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:209:18:209:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:209:18:209:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:209:18:209:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:18:210:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:210:18:210:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:210:18:210:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:18:210:49 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:26:210:49 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:211:18:211:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:211:18:211:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:211:18:211:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:211:18:211:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:211:26:211:56 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:214:18:214:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:214:18:214:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:214:18:214:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:214:18:214:31 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:18:215:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:215:18:215:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:215:18:215:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:18:215:37 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:26:215:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | +| overloading.rs:215:26:215:37 | ...::m(...) | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:215:32:215:33 | &w | | {EXTERNAL LOCATION} | & | +| overloading.rs:218:9:218:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:218:15:218:17 | &S4 | | {EXTERNAL LOCATION} | & | +| overloading.rs:219:12:219:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:220:9:220:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:220:15:220:23 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:220:19:220:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:221:12:221:15 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:222:9:222:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:222:15:222:23 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:222:19:222:22 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:228:14:228:17 | SelfParam | | overloading.rs:227:5:229:5 | Self [trait Trait1] | +| overloading.rs:228:20:228:20 | x | | overloading.rs:227:18:227:19 | T1 | +| overloading.rs:233:14:233:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:233:20:233:20 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:233:35:235:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:240:14:240:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:240:20:240:20 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:240:35:242:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:246:14:246:17 | SelfParam | | overloading.rs:245:5:247:5 | Self [trait Trait2] | +| overloading.rs:246:20:246:20 | x | | overloading.rs:245:18:245:19 | T1 | +| overloading.rs:251:14:251:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:251:20:251:20 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:251:35:253:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:258:14:258:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:258:20:258:20 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:258:35:260:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:263:12:270:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:265:21:265:24 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:266:13:266:13 | z | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:267:21:267:24 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:268:13:268:13 | z | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:269:13:269:13 | z | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:269:26:269:29 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:286:35:288:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:295:35:297:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:296:13:296:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:302:14:302:14 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:302:29:304:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:309:14:309:14 | x | | {EXTERNAL LOCATION} | bool | +| overloading.rs:309:31:311:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:310:13:310:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:314:12:321:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:319:22:319:25 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:330:14:330:17 | SelfParam | | overloading.rs:327:5:331:5 | Self [trait MyTrait] | +| overloading.rs:334:14:334:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:334:14:334:17 | SelfParam | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:334:27:336:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:335:13:335:16 | self | | overloading.rs:325:5:325:25 | S | +| overloading.rs:335:13:335:16 | self | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:338:14:338:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:338:14:338:17 | SelfParam | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:338:27:340:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:339:13:339:16 | self | | overloading.rs:325:5:325:25 | S | +| overloading.rs:339:13:339:16 | self | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:344:14:344:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:344:14:344:17 | SelfParam | T | {EXTERNAL LOCATION} | bool | +| overloading.rs:344:28:346:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:345:13:345:16 | self | | overloading.rs:325:5:325:25 | S | +| overloading.rs:345:13:345:16 | self | T | {EXTERNAL LOCATION} | bool | +| overloading.rs:352:14:352:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:352:14:352:17 | SelfParam | T | overloading.rs:349:10:349:10 | T | +| overloading.rs:352:25:359:9 | { ... } | | overloading.rs:325:5:325:25 | S | +| overloading.rs:352:25:359:9 | { ... } | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:353:17:353:17 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:353:21:353:47 | ...::f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:354:17:354:17 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:354:21:354:61 | ...::f(...) | | {EXTERNAL LOCATION} | i64 | | pattern_matching.rs:13:26:133:1 | { ... } | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:13:26:133:1 | { ... } | T | {EXTERNAL LOCATION} | () | | pattern_matching.rs:15:5:18:5 | if ... {...} | | {EXTERNAL LOCATION} | () | @@ -11938,267 +12034,427 @@ inferType | main.rs:2777:16:2777:19 | true | | {EXTERNAL LOCATION} | bool | | main.rs:2778:5:2778:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | | overloading.rs:4:19:4:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:4:19:4:23 | SelfParam | TRef | overloading.rs:2:5:7:5 | Self [trait FirstTrait] | +| overloading.rs:4:19:4:23 | SelfParam | TRef | overloading.rs:2:5:11:5 | Self [trait FirstTrait] | | overloading.rs:4:34:6:9 | { ... } | | {EXTERNAL LOCATION} | bool | | overloading.rs:5:13:5:16 | true | | {EXTERNAL LOCATION} | bool | -| overloading.rs:10:19:10:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:10:19:10:23 | SelfParam | TRef | overloading.rs:8:5:13:5 | Self [trait SecondTrait] | -| overloading.rs:10:33:12:9 | { ... } | | {EXTERNAL LOCATION} | i64 | -| overloading.rs:11:13:11:13 | 1 | | {EXTERNAL LOCATION} | i32 | -| overloading.rs:11:13:11:13 | 1 | | {EXTERNAL LOCATION} | i64 | -| overloading.rs:18:16:26:5 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:19:13:19:13 | s | | overloading.rs:14:5:14:13 | S | -| overloading.rs:19:17:19:17 | S | | overloading.rs:14:5:14:13 | S | -| overloading.rs:21:13:21:15 | _b1 | | {EXTERNAL LOCATION} | bool | -| overloading.rs:21:19:21:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | -| overloading.rs:21:38:21:39 | &s | | {EXTERNAL LOCATION} | & | -| overloading.rs:21:38:21:39 | &s | TRef | overloading.rs:14:5:14:13 | S | -| overloading.rs:21:39:21:39 | s | | overloading.rs:14:5:14:13 | S | -| overloading.rs:22:13:22:15 | _b2 | | {EXTERNAL LOCATION} | bool | -| overloading.rs:22:19:22:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | -| overloading.rs:22:45:22:46 | &s | | {EXTERNAL LOCATION} | & | -| overloading.rs:22:45:22:46 | &s | TRef | overloading.rs:14:5:14:13 | S | -| overloading.rs:22:46:22:46 | s | | overloading.rs:14:5:14:13 | S | -| overloading.rs:24:13:24:15 | _n1 | | {EXTERNAL LOCATION} | i64 | -| overloading.rs:24:19:24:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | -| overloading.rs:24:39:24:40 | &s | | {EXTERNAL LOCATION} | & | -| overloading.rs:24:39:24:40 | &s | TRef | overloading.rs:14:5:14:13 | S | -| overloading.rs:24:40:24:40 | s | | overloading.rs:14:5:14:13 | S | -| overloading.rs:25:13:25:15 | _n2 | | {EXTERNAL LOCATION} | i64 | -| overloading.rs:25:19:25:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | -| overloading.rs:25:46:25:47 | &s | | {EXTERNAL LOCATION} | & | -| overloading.rs:25:46:25:47 | &s | TRef | overloading.rs:14:5:14:13 | S | -| overloading.rs:25:47:25:47 | s | | overloading.rs:14:5:14:13 | S | -| overloading.rs:34:26:34:29 | SelfParam | | overloading.rs:33:5:37:5 | Self [trait OverlappingTrait] | -| overloading.rs:36:28:36:31 | SelfParam | | overloading.rs:33:5:37:5 | Self [trait OverlappingTrait] | -| overloading.rs:36:34:36:35 | s1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:41:26:41:29 | SelfParam | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:41:38:43:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:42:13:42:14 | S1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:46:28:46:31 | SelfParam | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:46:34:46:35 | s1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:46:48:48:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:47:13:47:14 | S1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:53:26:53:29 | SelfParam | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:53:38:55:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:54:13:54:16 | self | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:58:28:58:31 | SelfParam | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:58:40:60:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:59:13:59:16 | self | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:67:26:67:29 | SelfParam | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:67:26:67:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:67:38:69:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:68:13:68:14 | S1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:72:28:72:31 | SelfParam | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:72:28:72:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:72:40:74:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:73:13:73:14 | S1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:79:26:79:29 | SelfParam | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:79:26:79:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:79:38:81:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:80:13:80:14 | S1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:84:28:84:31 | SelfParam | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:84:28:84:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:84:34:84:35 | s1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:84:48:86:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:85:13:85:14 | S1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:91:26:91:29 | SelfParam | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:91:26:91:29 | SelfParam | T2 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:91:38:93:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:92:13:92:14 | S1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:96:28:96:31 | SelfParam | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:96:28:96:31 | SelfParam | T2 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:96:34:96:35 | s1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:96:48:98:9 | { ... } | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:97:13:97:14 | S1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:105:14:105:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:105:14:105:18 | SelfParam | TRef | overloading.rs:104:5:106:5 | Self [trait OverlappingTrait2] | -| overloading.rs:105:21:105:21 | x | | {EXTERNAL LOCATION} | & | -| overloading.rs:105:21:105:21 | x | TRef | overloading.rs:104:29:104:29 | T | -| overloading.rs:110:14:110:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:110:14:110:18 | SelfParam | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:110:14:110:18 | SelfParam | TRef.T3 | overloading.rs:108:10:108:10 | T | -| overloading.rs:110:21:110:21 | x | | {EXTERNAL LOCATION} | & | -| overloading.rs:110:21:110:21 | x | TRef | overloading.rs:108:10:108:10 | T | -| overloading.rs:110:37:112:9 | { ... } | | {EXTERNAL LOCATION} | & | -| overloading.rs:110:37:112:9 | { ... } | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:110:37:112:9 | { ... } | TRef.T3 | overloading.rs:108:10:108:10 | T | -| overloading.rs:111:13:111:16 | self | | {EXTERNAL LOCATION} | & | -| overloading.rs:111:13:111:16 | self | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:111:13:111:16 | self | TRef.T3 | overloading.rs:108:10:108:10 | T | -| overloading.rs:117:14:117:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:117:14:117:18 | SelfParam | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:117:14:117:18 | SelfParam | TRef.T3 | overloading.rs:115:10:115:10 | T | -| overloading.rs:117:21:117:21 | x | | overloading.rs:115:10:115:10 | T | -| overloading.rs:117:36:119:9 | { ... } | | {EXTERNAL LOCATION} | & | -| overloading.rs:117:36:119:9 | { ... } | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:117:36:119:9 | { ... } | TRef.T3 | overloading.rs:115:10:115:10 | T | -| overloading.rs:118:13:118:16 | self | | {EXTERNAL LOCATION} | & | -| overloading.rs:118:13:118:16 | self | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:118:13:118:16 | self | TRef.T3 | overloading.rs:115:10:115:10 | T | -| overloading.rs:124:14:124:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:124:14:124:18 | SelfParam | TRef | overloading.rs:122:5:125:5 | Self [trait MyTrait1] | -| overloading.rs:124:21:124:22 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:134:14:134:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:134:14:134:18 | SelfParam | TRef | overloading.rs:129:5:130:14 | S4 | -| overloading.rs:134:21:134:22 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:144:14:144:18 | SelfParam | | {EXTERNAL LOCATION} | & | -| overloading.rs:144:14:144:18 | SelfParam | TRef | overloading.rs:139:5:140:22 | S5 | -| overloading.rs:144:14:144:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:144:21:144:22 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:153:16:179:5 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:154:13:154:13 | x | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:154:17:154:18 | S1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:155:9:155:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| overloading.rs:155:18:155:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:155:18:155:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:155:18:155:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:155:18:155:42 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:155:18:155:42 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:155:26:155:26 | x | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:155:26:155:42 | x.common_method() | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:156:9:156:46 | MacroExpr | | {EXTERNAL LOCATION} | () | -| overloading.rs:156:18:156:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:156:18:156:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:156:18:156:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:156:18:156:45 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:156:18:156:45 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:156:26:156:45 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:156:44:156:44 | x | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:157:9:157:45 | MacroExpr | | {EXTERNAL LOCATION} | () | -| overloading.rs:157:18:157:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:157:18:157:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:157:18:157:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:157:18:157:44 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:157:18:157:44 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:157:26:157:26 | x | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:157:26:157:44 | x.common_method_2() | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:158:9:158:48 | MacroExpr | | {EXTERNAL LOCATION} | () | -| overloading.rs:158:18:158:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:158:18:158:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:158:18:158:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:158:18:158:47 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:158:18:158:47 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:158:26:158:47 | ...::common_method_2(...) | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:158:46:158:46 | x | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:160:13:160:13 | y | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:160:13:160:13 | y | T2 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:160:17:160:22 | S2(...) | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:160:17:160:22 | S2(...) | T2 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:160:20:160:21 | S1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:161:9:161:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| overloading.rs:161:18:161:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:161:18:161:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:161:18:161:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:161:18:161:42 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:161:18:161:42 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:161:26:161:26 | y | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:161:26:161:26 | y | T2 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:161:26:161:42 | y.common_method() | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:162:9:162:57 | MacroExpr | | {EXTERNAL LOCATION} | () | -| overloading.rs:162:18:162:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:162:18:162:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:162:18:162:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:162:18:162:56 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:162:18:162:56 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:162:26:162:56 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:162:50:162:55 | S2(...) | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:162:50:162:55 | S2(...) | T2 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:162:53:162:54 | S1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:164:13:164:13 | z | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:164:13:164:13 | z | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:164:17:164:21 | S2(...) | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:164:17:164:21 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:164:20:164:20 | 0 | | {EXTERNAL LOCATION} | i32 | -| overloading.rs:165:9:165:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| overloading.rs:165:18:165:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:165:18:165:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:165:18:165:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:165:18:165:42 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:165:18:165:42 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:165:26:165:26 | z | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:165:26:165:26 | z | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:165:26:165:42 | z.common_method() | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:166:9:166:50 | MacroExpr | | {EXTERNAL LOCATION} | () | -| overloading.rs:166:18:166:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:166:18:166:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:166:18:166:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:166:18:166:49 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:166:18:166:49 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:166:26:166:49 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:166:44:166:48 | S2(...) | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:166:44:166:48 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:166:47:166:47 | 0 | | {EXTERNAL LOCATION} | i32 | -| overloading.rs:167:9:167:57 | MacroExpr | | {EXTERNAL LOCATION} | () | -| overloading.rs:167:18:167:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:167:18:167:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:167:18:167:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:167:18:167:56 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:167:18:167:56 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:167:26:167:56 | ...::common_method(...) | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:167:51:167:55 | S2(...) | | overloading.rs:63:5:63:22 | S2 | -| overloading.rs:167:51:167:55 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:167:54:167:54 | 0 | | {EXTERNAL LOCATION} | i32 | -| overloading.rs:169:13:169:13 | w | | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:169:13:169:13 | w | T3 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:169:17:169:22 | S3(...) | | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:169:17:169:22 | S3(...) | T3 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:169:20:169:21 | S1 | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:170:9:170:32 | MacroExpr | | {EXTERNAL LOCATION} | () | -| overloading.rs:170:18:170:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:170:18:170:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:170:18:170:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:170:18:170:31 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:170:18:170:31 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:170:26:170:26 | w | | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:170:26:170:26 | w | T3 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:170:26:170:31 | w.m(...) | | {EXTERNAL LOCATION} | & | -| overloading.rs:170:26:170:31 | w.m(...) | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:170:26:170:31 | w.m(...) | TRef.T3 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:170:30:170:30 | x | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:171:9:171:38 | MacroExpr | | {EXTERNAL LOCATION} | () | -| overloading.rs:171:18:171:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | -| overloading.rs:171:18:171:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | -| overloading.rs:171:18:171:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:171:18:171:37 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:171:18:171:37 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:171:26:171:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | -| overloading.rs:171:26:171:37 | ...::m(...) | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:171:26:171:37 | ...::m(...) | TRef.T3 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:171:32:171:33 | &w | | {EXTERNAL LOCATION} | & | -| overloading.rs:171:32:171:33 | &w | TRef | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:171:32:171:33 | &w | TRef.T3 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:171:33:171:33 | w | | overloading.rs:101:5:102:22 | S3 | -| overloading.rs:171:33:171:33 | w | T3 | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:171:36:171:36 | x | | overloading.rs:30:5:31:14 | S1 | -| overloading.rs:173:9:173:10 | S4 | | overloading.rs:129:5:130:14 | S4 | -| overloading.rs:173:9:173:14 | S4.m() | | {EXTERNAL LOCATION} | () | -| overloading.rs:174:9:174:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:174:15:174:17 | &S4 | | {EXTERNAL LOCATION} | & | -| overloading.rs:174:15:174:17 | &S4 | TRef | overloading.rs:129:5:130:14 | S4 | -| overloading.rs:174:16:174:17 | S4 | | overloading.rs:129:5:130:14 | S4 | -| overloading.rs:175:9:175:16 | S5(...) | | overloading.rs:139:5:140:22 | S5 | -| overloading.rs:175:9:175:16 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:175:9:175:20 | ... .m() | | {EXTERNAL LOCATION} | () | -| overloading.rs:175:12:175:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| overloading.rs:176:9:176:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:176:15:176:23 | &... | | {EXTERNAL LOCATION} | & | -| overloading.rs:176:15:176:23 | &... | TRef | overloading.rs:139:5:140:22 | S5 | -| overloading.rs:176:15:176:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:176:16:176:23 | S5(...) | | overloading.rs:139:5:140:22 | S5 | -| overloading.rs:176:16:176:23 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | -| overloading.rs:176:19:176:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| overloading.rs:177:9:177:16 | S5(...) | | overloading.rs:139:5:140:22 | S5 | -| overloading.rs:177:9:177:16 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | -| overloading.rs:177:9:177:20 | ... .m() | | {EXTERNAL LOCATION} | () | -| overloading.rs:177:12:177:15 | true | | {EXTERNAL LOCATION} | bool | -| overloading.rs:178:9:178:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | -| overloading.rs:178:15:178:23 | &... | | {EXTERNAL LOCATION} | & | -| overloading.rs:178:15:178:23 | &... | TRef | overloading.rs:139:5:140:22 | S5 | -| overloading.rs:178:15:178:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | bool | -| overloading.rs:178:16:178:23 | S5(...) | | overloading.rs:139:5:140:22 | S5 | -| overloading.rs:178:16:178:23 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | -| overloading.rs:178:19:178:22 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:8:20:8:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:8:20:8:24 | SelfParam | TRef | overloading.rs:2:5:11:5 | Self [trait FirstTrait] | +| overloading.rs:14:19:14:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:14:19:14:23 | SelfParam | TRef | overloading.rs:12:5:19:5 | Self [trait SecondTrait] | +| overloading.rs:14:33:16:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:15:13:15:13 | 1 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:15:13:15:13 | 1 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:18:20:18:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:18:20:18:24 | SelfParam | TRef | overloading.rs:12:5:19:5 | Self [trait SecondTrait] | +| overloading.rs:24:20:24:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:24:20:24:24 | SelfParam | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:24:35:26:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:25:13:25:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:29:31:31:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:30:13:30:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:35:20:35:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:35:20:35:24 | SelfParam | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:35:34:37:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:36:13:36:13 | 1 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:36:13:36:13 | 1 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:43:20:43:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:43:20:43:24 | SelfParam | TRef | overloading.rs:40:5:40:14 | S2 | +| overloading.rs:43:35:45:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:44:13:44:17 | false | | {EXTERNAL LOCATION} | bool | +| overloading.rs:48:31:50:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:49:13:49:17 | false | | {EXTERNAL LOCATION} | bool | +| overloading.rs:53:16:70:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:54:13:54:13 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:54:17:54:17 | S | | overloading.rs:20:5:21:13 | S | +| overloading.rs:56:13:56:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:56:19:56:40 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:56:38:56:39 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:56:38:56:39 | &s | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:56:39:56:39 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:57:13:57:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:57:19:57:47 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:57:45:57:46 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:57:45:57:46 | &s | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:57:46:57:46 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:58:13:58:15 | _b3 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:58:19:58:64 | ...::method(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:58:45:58:63 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:59:13:59:15 | _b4 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:59:19:59:48 | ...::method2(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:59:46:59:47 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:59:46:59:47 | &s | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:59:47:59:47 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:60:13:60:15 | _b5 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:60:19:60:65 | ...::method2(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:60:46:60:64 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:62:13:62:15 | _n1 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:62:19:62:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:62:39:62:40 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:62:39:62:40 | &s | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:62:40:62:40 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:63:13:63:15 | _n2 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:63:19:63:48 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:63:46:63:47 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:63:46:63:47 | &s | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:63:47:63:47 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:64:13:64:15 | _n3 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:64:19:64:65 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:64:46:64:64 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:65:13:65:15 | _n4 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:65:19:65:49 | ...::method2(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:65:47:65:48 | &s | | {EXTERNAL LOCATION} | & | +| overloading.rs:65:47:65:48 | &s | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:65:48:65:48 | s | | overloading.rs:20:5:21:13 | S | +| overloading.rs:66:13:66:15 | _n5 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:66:19:66:66 | ...::method2(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:66:47:66:65 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:68:9:68:37 | ...::function(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:69:9:69:38 | ...::function(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:78:26:78:29 | SelfParam | | overloading.rs:77:5:81:5 | Self [trait OverlappingTrait] | +| overloading.rs:80:28:80:31 | SelfParam | | overloading.rs:77:5:81:5 | Self [trait OverlappingTrait] | +| overloading.rs:80:34:80:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:85:26:85:29 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:85:38:87:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:86:13:86:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:90:28:90:31 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:90:34:90:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:90:48:92:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:91:13:91:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:97:26:97:29 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:97:38:99:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:98:13:98:16 | self | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:102:28:102:31 | SelfParam | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:102:40:104:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:103:13:103:16 | self | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:111:26:111:29 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:111:26:111:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:111:38:113:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:112:13:112:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:116:28:116:31 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:116:28:116:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:116:40:118:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:117:13:117:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:123:26:123:29 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:123:26:123:29 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:123:38:125:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:124:13:124:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:128:28:128:31 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:128:28:128:31 | SelfParam | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:128:34:128:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:128:48:130:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:129:13:129:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:135:26:135:29 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:135:26:135:29 | SelfParam | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:135:38:137:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:136:13:136:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:140:28:140:31 | SelfParam | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:140:28:140:31 | SelfParam | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:140:34:140:35 | s1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:140:48:142:9 | { ... } | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:141:13:141:14 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:149:14:149:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:149:14:149:18 | SelfParam | TRef | overloading.rs:148:5:150:5 | Self [trait OverlappingTrait2] | +| overloading.rs:149:21:149:21 | x | | {EXTERNAL LOCATION} | & | +| overloading.rs:149:21:149:21 | x | TRef | overloading.rs:148:29:148:29 | T | +| overloading.rs:154:14:154:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:154:14:154:18 | SelfParam | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:154:14:154:18 | SelfParam | TRef.T3 | overloading.rs:152:10:152:10 | T | +| overloading.rs:154:21:154:21 | x | | {EXTERNAL LOCATION} | & | +| overloading.rs:154:21:154:21 | x | TRef | overloading.rs:152:10:152:10 | T | +| overloading.rs:154:37:156:9 | { ... } | | {EXTERNAL LOCATION} | & | +| overloading.rs:154:37:156:9 | { ... } | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:154:37:156:9 | { ... } | TRef.T3 | overloading.rs:152:10:152:10 | T | +| overloading.rs:155:13:155:16 | self | | {EXTERNAL LOCATION} | & | +| overloading.rs:155:13:155:16 | self | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:155:13:155:16 | self | TRef.T3 | overloading.rs:152:10:152:10 | T | +| overloading.rs:161:14:161:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:161:14:161:18 | SelfParam | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:161:14:161:18 | SelfParam | TRef.T3 | overloading.rs:159:10:159:10 | T | +| overloading.rs:161:21:161:21 | x | | overloading.rs:159:10:159:10 | T | +| overloading.rs:161:36:163:9 | { ... } | | {EXTERNAL LOCATION} | & | +| overloading.rs:161:36:163:9 | { ... } | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:161:36:163:9 | { ... } | TRef.T3 | overloading.rs:159:10:159:10 | T | +| overloading.rs:162:13:162:16 | self | | {EXTERNAL LOCATION} | & | +| overloading.rs:162:13:162:16 | self | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:162:13:162:16 | self | TRef.T3 | overloading.rs:159:10:159:10 | T | +| overloading.rs:168:14:168:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:168:14:168:18 | SelfParam | TRef | overloading.rs:166:5:169:5 | Self [trait MyTrait1] | +| overloading.rs:168:21:168:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:178:14:178:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:178:14:178:18 | SelfParam | TRef | overloading.rs:173:5:174:14 | S4 | +| overloading.rs:178:21:178:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:188:14:188:18 | SelfParam | | {EXTERNAL LOCATION} | & | +| overloading.rs:188:14:188:18 | SelfParam | TRef | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:188:14:188:18 | SelfParam | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:188:21:188:22 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:197:16:223:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:198:13:198:13 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:198:17:198:18 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:199:9:199:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:199:18:199:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:199:18:199:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:199:18:199:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:199:18:199:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:199:18:199:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:199:26:199:26 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:199:26:199:42 | x.common_method() | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:200:9:200:46 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:18:200:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:200:18:200:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:200:18:200:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:18:200:45 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:18:200:45 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:200:26:200:45 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:200:44:200:44 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:201:9:201:45 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:201:18:201:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:201:18:201:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:201:18:201:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:201:18:201:44 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:201:18:201:44 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:201:26:201:26 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:201:26:201:44 | x.common_method_2() | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:202:9:202:48 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:18:202:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:202:18:202:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:202:18:202:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:18:202:47 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:18:202:47 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:202:26:202:47 | ...::common_method_2(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:202:46:202:46 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:204:13:204:13 | y | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:204:13:204:13 | y | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:204:17:204:22 | S2(...) | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:204:17:204:22 | S2(...) | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:204:20:204:21 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:205:9:205:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:205:18:205:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:205:18:205:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:205:18:205:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:205:18:205:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:205:18:205:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:205:26:205:26 | y | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:205:26:205:26 | y | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:205:26:205:42 | y.common_method() | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:206:9:206:57 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:18:206:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:206:18:206:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:206:18:206:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:18:206:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:18:206:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:206:26:206:56 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:206:50:206:55 | S2(...) | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:206:50:206:55 | S2(...) | T2 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:206:53:206:54 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:208:13:208:13 | z | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:208:13:208:13 | z | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:208:17:208:21 | S2(...) | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:208:17:208:21 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:208:20:208:20 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:209:9:209:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:209:18:209:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:209:18:209:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:209:18:209:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:209:18:209:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:209:18:209:42 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:209:26:209:26 | z | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:209:26:209:26 | z | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:209:26:209:42 | z.common_method() | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:210:9:210:50 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:18:210:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:210:18:210:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:210:18:210:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:18:210:49 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:18:210:49 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:210:26:210:49 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:210:44:210:48 | S2(...) | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:210:44:210:48 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:210:47:210:47 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:211:9:211:57 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:211:18:211:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:211:18:211:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:211:18:211:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:211:18:211:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:211:18:211:56 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:211:26:211:56 | ...::common_method(...) | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:211:51:211:55 | S2(...) | | overloading.rs:107:5:107:22 | S2 | +| overloading.rs:211:51:211:55 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:211:54:211:54 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:213:13:213:13 | w | | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:213:13:213:13 | w | T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:213:17:213:22 | S3(...) | | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:213:17:213:22 | S3(...) | T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:213:20:213:21 | S1 | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:214:9:214:32 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:214:18:214:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:214:18:214:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:214:18:214:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:214:18:214:31 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:214:18:214:31 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:214:26:214:26 | w | | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:214:26:214:26 | w | T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:214:26:214:31 | w.m(...) | | {EXTERNAL LOCATION} | & | +| overloading.rs:214:26:214:31 | w.m(...) | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:214:26:214:31 | w.m(...) | TRef.T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:214:30:214:30 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:215:9:215:38 | MacroExpr | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:18:215:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | +| overloading.rs:215:18:215:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | +| overloading.rs:215:18:215:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:18:215:37 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:18:215:37 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:215:26:215:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | +| overloading.rs:215:26:215:37 | ...::m(...) | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:215:26:215:37 | ...::m(...) | TRef.T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:215:32:215:33 | &w | | {EXTERNAL LOCATION} | & | +| overloading.rs:215:32:215:33 | &w | TRef | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:215:32:215:33 | &w | TRef.T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:215:33:215:33 | w | | overloading.rs:145:5:146:22 | S3 | +| overloading.rs:215:33:215:33 | w | T3 | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:215:36:215:36 | x | | overloading.rs:74:5:75:14 | S1 | +| overloading.rs:217:9:217:10 | S4 | | overloading.rs:173:5:174:14 | S4 | +| overloading.rs:217:9:217:14 | S4.m() | | {EXTERNAL LOCATION} | () | +| overloading.rs:218:9:218:18 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:218:15:218:17 | &S4 | | {EXTERNAL LOCATION} | & | +| overloading.rs:218:15:218:17 | &S4 | TRef | overloading.rs:173:5:174:14 | S4 | +| overloading.rs:218:16:218:17 | S4 | | overloading.rs:173:5:174:14 | S4 | +| overloading.rs:219:9:219:16 | S5(...) | | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:219:9:219:16 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:219:9:219:20 | ... .m() | | {EXTERNAL LOCATION} | () | +| overloading.rs:219:12:219:15 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:220:9:220:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:220:15:220:23 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:220:15:220:23 | &... | TRef | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:220:15:220:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:220:16:220:23 | S5(...) | | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:220:16:220:23 | S5(...) | T5 | {EXTERNAL LOCATION} | i32 | +| overloading.rs:220:19:220:22 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:221:9:221:16 | S5(...) | | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:221:9:221:16 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | +| overloading.rs:221:9:221:20 | ... .m() | | {EXTERNAL LOCATION} | () | +| overloading.rs:221:12:221:15 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:222:9:222:24 | ...::m(...) | | {EXTERNAL LOCATION} | () | +| overloading.rs:222:15:222:23 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:222:15:222:23 | &... | TRef | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:222:15:222:23 | &... | TRef.T5 | {EXTERNAL LOCATION} | bool | +| overloading.rs:222:16:222:23 | S5(...) | | overloading.rs:183:5:184:22 | S5 | +| overloading.rs:222:16:222:23 | S5(...) | T5 | {EXTERNAL LOCATION} | bool | +| overloading.rs:222:19:222:22 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:228:14:228:17 | SelfParam | | overloading.rs:227:5:229:5 | Self [trait Trait1] | +| overloading.rs:228:20:228:20 | x | | overloading.rs:227:18:227:19 | T1 | +| overloading.rs:233:14:233:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:233:20:233:20 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:233:35:235:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:234:13:234:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:240:14:240:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:240:20:240:20 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:240:35:242:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:241:13:241:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:241:13:241:13 | 0 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:246:14:246:17 | SelfParam | | overloading.rs:245:5:247:5 | Self [trait Trait2] | +| overloading.rs:246:20:246:20 | x | | overloading.rs:245:18:245:19 | T1 | +| overloading.rs:251:14:251:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:251:20:251:20 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:251:35:253:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:252:13:252:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:258:14:258:17 | SelfParam | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:258:20:258:20 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:258:35:260:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:259:13:259:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:259:13:259:13 | 0 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:263:12:270:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:264:13:264:13 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:264:17:264:17 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:265:13:265:13 | y | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:265:17:265:17 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:265:17:265:25 | x.f(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:265:21:265:24 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:266:13:266:13 | z | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:266:22:266:22 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:266:22:266:44 | x.f(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:267:13:267:13 | z | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:267:17:267:17 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:267:17:267:25 | x.f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:267:21:267:24 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:268:13:268:13 | z | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:268:22:268:22 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:268:22:268:44 | x.f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:269:13:269:13 | z | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:269:22:269:22 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:269:22:269:30 | x.g(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:269:22:269:30 | x.g(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:269:26:269:29 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:286:35:288:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:287:13:287:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:295:35:297:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:296:13:296:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:302:14:302:14 | x | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:302:29:304:9 | { ... } | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:303:13:303:13 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:309:14:309:14 | x | | {EXTERNAL LOCATION} | bool | +| overloading.rs:309:31:311:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:310:13:310:16 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:314:12:321:5 | { ... } | | {EXTERNAL LOCATION} | () | +| overloading.rs:315:9:315:25 | ...::Assoc(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:315:9:315:25 | ...::Assoc(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:316:9:316:26 | ...::Assoc(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:316:9:316:26 | ...::Assoc(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:319:9:319:26 | ...::f(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:319:9:319:26 | ...::f(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:319:22:319:25 | true | | {EXTERNAL LOCATION} | bool | +| overloading.rs:320:9:320:22 | ...::f(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:320:9:320:22 | ...::f(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:320:21:320:21 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:330:14:330:17 | SelfParam | | overloading.rs:327:5:331:5 | Self [trait MyTrait] | +| overloading.rs:334:14:334:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:334:14:334:17 | SelfParam | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:334:27:336:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:335:13:335:16 | self | | overloading.rs:325:5:325:25 | S | +| overloading.rs:335:13:335:16 | self | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:335:13:335:18 | self.0 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:338:14:338:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:338:14:338:17 | SelfParam | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:338:27:340:9 | { ... } | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:339:13:339:16 | self | | overloading.rs:325:5:325:25 | S | +| overloading.rs:339:13:339:16 | self | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:339:13:339:18 | self.0 | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:344:14:344:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:344:14:344:17 | SelfParam | T | {EXTERNAL LOCATION} | bool | +| overloading.rs:344:28:346:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| overloading.rs:345:13:345:16 | self | | overloading.rs:325:5:325:25 | S | +| overloading.rs:345:13:345:16 | self | T | {EXTERNAL LOCATION} | bool | +| overloading.rs:345:13:345:18 | self.0 | | {EXTERNAL LOCATION} | bool | +| overloading.rs:352:14:352:17 | SelfParam | | overloading.rs:325:5:325:25 | S | +| overloading.rs:352:14:352:17 | SelfParam | T | overloading.rs:349:10:349:10 | T | +| overloading.rs:352:25:359:9 | { ... } | | overloading.rs:325:5:325:25 | S | +| overloading.rs:352:25:359:9 | { ... } | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:353:17:353:17 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:353:21:353:47 | ...::f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:353:26:353:46 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:354:17:354:17 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:354:21:354:61 | ...::f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:354:40:354:60 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:354:40:354:60 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:354:42:354:59 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:355:17:355:17 | x | | {EXTERNAL LOCATION} | bool | +| overloading.rs:355:21:355:55 | ...::g(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:355:34:355:54 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:355:34:355:54 | S(...) | T | {EXTERNAL LOCATION} | bool | +| overloading.rs:355:36:355:53 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| overloading.rs:356:17:356:17 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:356:21:356:54 | ...::g(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:356:33:356:53 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:356:33:356:53 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:356:35:356:52 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:357:17:357:17 | x | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:357:21:357:61 | ...::g(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:357:40:357:60 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:357:40:357:60 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:357:42:357:59 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:358:13:358:16 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:358:13:358:16 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| overloading.rs:358:13:358:16 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:358:15:358:15 | 0 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:13:26:133:1 | { ... } | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:13:26:133:1 | { ... } | T | {EXTERNAL LOCATION} | () | | pattern_matching.rs:14:9:14:13 | value | | {EXTERNAL LOCATION} | Option | From 2764d697d25298f65b3e2b8b43ccd50c208535c6 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 26 Jan 2026 17:21:53 +0100 Subject: [PATCH 310/433] Rust: Merge `Input1` and `Input2` modules --- .../internal/typeinference/TypeInference.qll | 32 +++++++++---------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index e8b5c9c7a19a..ca63c433feb8 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -30,7 +30,7 @@ private newtype TTypeArgumentPosition = } or TTypeParamTypeArgumentPosition(TypeParam tp) -private module Input1 implements InputSig1 { +private module Input implements InputSig1, InputSig2 { private import Type as T private import codeql.rust.elements.internal.generated.Raw private import codeql.rust.elements.internal.generated.Synth @@ -120,21 +120,7 @@ private module Input1 implements InputSig1 { } int getTypePathLimit() { result = 10 } -} - -private import Input1 - -private module M1 = Make1; - -import M1 - -predicate getTypePathLimit = Input1::getTypePathLimit/0; - -class TypePath = M1::TypePath; - -module TypePath = M1::TypePath; -private module Input2 implements InputSig2 { PreTypeMention getABaseTypeMention(Type t) { none() } Type getATypeParameterConstraint(TypeParameter tp, TypePath path) { @@ -208,7 +194,19 @@ private module Input2 implements InputSig2 { } } -private module M2 = Make2; +private import Input + +private module M1 = Make1; + +import M1 + +predicate getTypePathLimit = Input::getTypePathLimit/0; + +class TypePath = M1::TypePath; + +module TypePath = M1::TypePath; + +private module M2 = Make2; import M2 @@ -4152,7 +4150,7 @@ private module Debug { TypeAbstraction abs, TypeMention condition, TypeMention constraint, boolean transitive ) { abs = getRelevantLocatable() and - Input2::conditionSatisfiesConstraint(abs, condition, constraint, transitive) + Input::conditionSatisfiesConstraint(abs, condition, constraint, transitive) } predicate debugInferShorthandSelfType(ShorthandSelfParameterMention self, TypePath path, Type t) { From 68c1a3d38991a74b536411e2a20ddb7ed7c96eac Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 5 Feb 2026 13:45:54 +0000 Subject: [PATCH 311/433] Python: Fix syntax error when `=` is used as a format fill character An example (provided by @redsun82) is the string `f"{x:=^20}"`. Parsing this (with unnamed nodes shown) illustrates the problem: ``` module [0, 0] - [2, 0] expression_statement [0, 0] - [0, 11] string [0, 0] - [0, 11] string_start [0, 0] - [0, 2] interpolation [0, 2] - [0, 10] "{" [0, 2] - [0, 3] expression: named_expression [0, 3] - [0, 9] name: identifier [0, 3] - [0, 4] ":=" [0, 4] - [0, 6] ERROR [0, 6] - [0, 7] "^" [0, 6] - [0, 7] value: integer [0, 7] - [0, 9] "}" [0, 9] - [0, 10] string_end [0, 10] - [0, 11] ``` Observe that we've managed to combine the format specifier token `:` and the fill character `=` in a single token (which doesn't match the `:` we expect in the grammar rule), and hence we get a syntax error. If we change the `=` to some other character (e.g. a `-`), we instead get ``` module [0, 0] - [2, 0] expression_statement [0, 0] - [0, 11] string [0, 0] - [0, 11] string_start [0, 0] - [0, 2] interpolation [0, 2] - [0, 10] "{" [0, 2] - [0, 3] expression: identifier [0, 3] - [0, 4] format_specifier: format_specifier [0, 4] - [0, 9] ":" [0, 4] - [0, 5] "}" [0, 9] - [0, 10] string_end [0, 10] - [0, 11] ``` and in particular no syntax error. To fix this, we want to ensure that the `:` is lexed on its own, and the `token(prec(1, ...))` construction can be used to do exactly this. Finally, you may wonder why `=` is special here. I think what's going on is that the lexer knows that `:=` is a token on its own (because it's used in the walrus operator), and so it greedily consumes the following `=` with this in mind. --- python/extractor/tsg-python/tsp/grammar.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/extractor/tsg-python/tsp/grammar.js b/python/extractor/tsg-python/tsp/grammar.js index a30ddb9f0a0f..c53a67da1260 100644 --- a/python/extractor/tsg-python/tsp/grammar.js +++ b/python/extractor/tsg-python/tsp/grammar.js @@ -1168,7 +1168,7 @@ module.exports = grammar({ _not_escape_sequence: $ => token.immediate('\\'), format_specifier: $ => seq( - ':', + token(prec(1,':')), repeat(choice( token(prec(1, /[^{}\n]+/)), alias($.interpolation, $.format_expression) From bac356c9a14b66d7dee0361226aafe52d2096a0c Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 5 Feb 2026 13:46:59 +0000 Subject: [PATCH 312/433] Python: Regenerate parser files --- .../extractor/tsg-python/tsp/src/grammar.json | 18 +- .../tsg-python/tsp/src/node-types.json | 12 +- python/extractor/tsg-python/tsp/src/parser.c | 86156 +++++++++------- .../tsg-python/tsp/src/tree_sitter/array.h | 192 +- .../tsg-python/tsp/src/tree_sitter/parser.h | 97 +- 5 files changed, 48243 insertions(+), 38232 deletions(-) diff --git a/python/extractor/tsg-python/tsp/src/grammar.json b/python/extractor/tsg-python/tsp/src/grammar.json index e413f91b0855..fbe1f17b9491 100644 --- a/python/extractor/tsg-python/tsp/src/grammar.json +++ b/python/extractor/tsg-python/tsp/src/grammar.json @@ -1,4 +1,5 @@ { + "$schema": "https://tree-sitter.github.io/tree-sitter/assets/schemas/grammar.schema.json", "name": "python", "word": "identifier", "rules": { @@ -6292,8 +6293,15 @@ "type": "SEQ", "members": [ { - "type": "STRING", - "value": ":" + "type": "TOKEN", + "content": { + "type": "PREC", + "value": 1, + "content": { + "type": "STRING", + "value": ":" + } + } }, { "type": "REPEAT", @@ -6860,6 +6868,6 @@ "primary_expression", "pattern", "parameter" - ] -} - + ], + "reserved": {} +} \ No newline at end of file diff --git a/python/extractor/tsg-python/tsp/src/node-types.json b/python/extractor/tsg-python/tsp/src/node-types.json index a718a48aab65..609952bd5e53 100644 --- a/python/extractor/tsg-python/tsp/src/node-types.json +++ b/python/extractor/tsg-python/tsp/src/node-types.json @@ -2770,6 +2770,7 @@ { "type": "module", "named": true, + "root": true, "fields": {}, "children": { "multiple": true, @@ -3944,6 +3945,10 @@ "type": ":=", "named": false }, + { + "type": ";", + "named": false + }, { "type": "<", "named": false @@ -4000,6 +4005,10 @@ "type": "[", "named": false }, + { + "type": "\\", + "named": false + }, { "type": "]", "named": false @@ -4050,7 +4059,8 @@ }, { "type": "comment", - "named": true + "named": true, + "extra": true }, { "type": "continue", diff --git a/python/extractor/tsg-python/tsp/src/parser.c b/python/extractor/tsg-python/tsp/src/parser.c index e275c1316a0f..74a0d1440fbd 100644 --- a/python/extractor/tsg-python/tsp/src/parser.c +++ b/python/extractor/tsg-python/tsp/src/parser.c @@ -1,22 +1,25 @@ -#include +/* Automatically @generated by tree-sitter */ + +#include "tree_sitter/parser.h" #if defined(__GNUC__) || defined(__clang__) -#pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wmissing-field-initializers" #endif -#define LANGUAGE_VERSION 13 -#define STATE_COUNT 1510 -#define LARGE_STATE_COUNT 152 -#define SYMBOL_COUNT 288 +#define LANGUAGE_VERSION 14 +#define STATE_COUNT 1723 +#define LARGE_STATE_COUNT 156 +#define SYMBOL_COUNT 291 #define ALIAS_COUNT 3 -#define TOKEN_COUNT 108 +#define TOKEN_COUNT 109 #define EXTERNAL_TOKEN_COUNT 7 #define FIELD_COUNT 54 #define MAX_ALIAS_SEQUENCE_LENGTH 10 +#define MAX_RESERVED_WORD_SET_SIZE 0 #define PRODUCTION_ID_COUNT 166 +#define SUPERTYPE_COUNT 0 -enum { +enum ts_symbol_identifiers { sym_identifier = 1, anon_sym_import = 2, anon_sym_DOT = 3, @@ -106,207 +109,210 @@ enum { anon_sym_LBRACE2 = 87, sym__escape_interpolation = 88, sym_escape_sequence = 89, - sym__not_escape_sequence = 90, - aux_sym_format_specifier_token1 = 91, - sym_type_conversion = 92, - sym_integer = 93, - sym_float = 94, - anon_sym_await = 95, - sym_true = 96, - sym_false = 97, - sym_none = 98, - sym_comment = 99, - sym__semicolon = 100, - sym__newline = 101, - sym__indent = 102, - sym__dedent = 103, - sym__string_start = 104, - sym__string_content = 105, - sym__string_end = 106, - sym__template_string_start = 107, - sym_module = 108, - sym__statement = 109, - sym__simple_statements = 110, - sym_import_statement = 111, - sym_import_prefix = 112, - sym_relative_import = 113, - sym_future_import_statement = 114, - sym_import_from_statement = 115, - sym__import_list = 116, - sym_aliased_import = 117, - sym_wildcard_import = 118, - sym_print_statement = 119, - sym_chevron = 120, - sym_assert_statement = 121, - sym_expression_statement = 122, - sym_named_expression = 123, - sym_return_statement = 124, - sym_delete_statement = 125, - sym_raise_statement = 126, - sym_pass_statement = 127, - sym_break_statement = 128, - sym_continue_statement = 129, - sym_if_statement = 130, - sym_elif_clause = 131, - sym_else_clause = 132, - sym_for_statement = 133, - sym_while_statement = 134, - sym_try_statement = 135, - sym_exception_list = 136, - sym_except_clause = 137, - sym_except_group_clause = 138, - sym_finally_clause = 139, - sym_with_statement = 140, - sym_with_clause = 141, - sym_with_item = 142, - sym_match_statement = 143, - sym_cases = 144, - sym_case_block = 145, - sym__match_patterns = 146, - sym_open_sequence_match_pattern = 147, - sym__match_pattern = 148, - sym_match_as_pattern = 149, - sym__match_or_pattern = 150, - sym_match_or_pattern = 151, - sym__closed_pattern = 152, - sym_match_literal_pattern = 153, - sym_match_capture_pattern = 154, - sym_match_value_pattern = 155, - sym_match_group_pattern = 156, - sym_match_sequence_pattern = 157, - sym__match_maybe_star_pattern = 158, - sym_match_star_pattern = 159, - sym_match_mapping_pattern = 160, - sym_match_double_star_pattern = 161, - sym_match_key_value_pattern = 162, - sym_match_class_pattern = 163, - sym_pattern_class_name = 164, - sym_match_positional_pattern = 165, - sym_match_keyword_pattern = 166, - sym_guard = 167, - sym_function_definition = 168, - sym_parameters = 169, - sym_lambda_parameters = 170, - sym_list_splat = 171, - sym_dictionary_splat = 172, - sym_global_statement = 173, - sym_nonlocal_statement = 174, - sym_exec_statement = 175, - sym_type_alias_statement = 176, - sym_class_definition = 177, - sym_type_parameters = 178, - sym__type_bound = 179, - sym_typevar_parameter = 180, - sym_typevartuple_parameter = 181, - sym_paramspec_parameter = 182, - sym__type_parameter = 183, - sym__type_param_default = 184, - sym_parenthesized_list_splat = 185, - sym_argument_list = 186, - sym_decorated_definition = 187, - sym_decorator = 188, - sym_block = 189, - sym_expression_list = 190, - sym_dotted_name = 191, - sym__parameters = 192, - sym__patterns = 193, - sym_parameter = 194, - sym_pattern = 195, - sym_tuple_pattern = 196, - sym_list_pattern = 197, - sym_default_parameter = 198, - sym_typed_default_parameter = 199, - sym_list_splat_pattern = 200, - sym_dictionary_splat_pattern = 201, - sym__expression_within_for_in_clause = 202, - sym_expression = 203, - sym_primary_expression = 204, - sym_not_operator = 205, - sym_boolean_operator = 206, - sym_binary_operator = 207, - sym_unary_operator = 208, - sym_comparison_operator = 209, - sym_lambda = 210, - sym_lambda_within_for_in_clause = 211, - sym_assignment = 212, - sym_augmented_assignment = 213, - sym_pattern_list = 214, - sym__right_hand_side = 215, - sym_yield = 216, - sym_attribute = 217, - sym__index_expression = 218, - sym_index_expression_list = 219, - sym_subscript = 220, - sym_slice = 221, - sym_call = 222, - sym_typed_parameter = 223, - sym_type = 224, - sym_keyword_argument = 225, - sym_list = 226, - sym_set = 227, - sym_tuple = 228, - sym_dictionary = 229, - sym_pair = 230, - sym_list_comprehension = 231, - sym_dictionary_comprehension = 232, - sym_set_comprehension = 233, - sym_generator_expression = 234, - sym__comprehension_clauses = 235, - sym_parenthesized_expression = 236, - sym__collection_elements = 237, - sym_for_in_clause = 238, - sym_if_clause = 239, - sym_conditional_expression = 240, - sym_concatenated_string = 241, - sym_string = 242, - sym_concatenated_template_string = 243, - sym_template_string = 244, - sym_string_content = 245, - sym_interpolation = 246, - sym__f_expression = 247, - sym_format_specifier = 248, - sym_await = 249, - sym_positional_separator = 250, - sym_keyword_separator = 251, - aux_sym_module_repeat1 = 252, - aux_sym__simple_statements_repeat1 = 253, - aux_sym_import_prefix_repeat1 = 254, - aux_sym__import_list_repeat1 = 255, - aux_sym_print_statement_repeat1 = 256, - aux_sym_assert_statement_repeat1 = 257, - aux_sym_if_statement_repeat1 = 258, - aux_sym_try_statement_repeat1 = 259, - aux_sym_try_statement_repeat2 = 260, - aux_sym_exception_list_repeat1 = 261, - aux_sym_with_clause_repeat1 = 262, - aux_sym_cases_repeat1 = 263, - aux_sym_open_sequence_match_pattern_repeat1 = 264, - aux_sym_match_or_pattern_repeat1 = 265, - aux_sym_match_value_pattern_repeat1 = 266, - aux_sym_match_mapping_pattern_repeat1 = 267, - aux_sym_match_class_pattern_repeat1 = 268, - aux_sym_match_class_pattern_repeat2 = 269, - aux_sym_global_statement_repeat1 = 270, - aux_sym_type_parameters_repeat1 = 271, - aux_sym_argument_list_repeat1 = 272, - aux_sym_decorated_definition_repeat1 = 273, - aux_sym_expression_list_repeat1 = 274, - aux_sym__parameters_repeat1 = 275, - aux_sym__patterns_repeat1 = 276, - aux_sym_comparison_operator_repeat1 = 277, - aux_sym_index_expression_list_repeat1 = 278, - aux_sym_dictionary_repeat1 = 279, - aux_sym__comprehension_clauses_repeat1 = 280, - aux_sym__collection_elements_repeat1 = 281, - aux_sym_for_in_clause_repeat1 = 282, - aux_sym_concatenated_string_repeat1 = 283, - aux_sym_string_repeat1 = 284, - aux_sym_concatenated_template_string_repeat1 = 285, - aux_sym_string_content_repeat1 = 286, - aux_sym_format_specifier_repeat1 = 287, - alias_sym_format_expression = 288, - anon_alias_sym_isnot = 289, - anon_alias_sym_notin = 290, + anon_sym_BSLASH = 90, + anon_sym_COLON2 = 91, + aux_sym_format_specifier_token1 = 92, + sym_type_conversion = 93, + sym_integer = 94, + sym_float = 95, + anon_sym_await = 96, + sym_true = 97, + sym_false = 98, + sym_none = 99, + sym_comment = 100, + anon_sym_SEMI = 101, + sym__newline = 102, + sym__indent = 103, + sym__dedent = 104, + sym__string_start = 105, + sym__string_content = 106, + sym__string_end = 107, + sym__template_string_start = 108, + sym_module = 109, + sym__statement = 110, + sym__simple_statements = 111, + sym_import_statement = 112, + sym_import_prefix = 113, + sym_relative_import = 114, + sym_future_import_statement = 115, + sym_import_from_statement = 116, + sym__import_list = 117, + sym_aliased_import = 118, + sym_wildcard_import = 119, + sym_print_statement = 120, + sym_chevron = 121, + sym_assert_statement = 122, + sym_expression_statement = 123, + sym_named_expression = 124, + sym_return_statement = 125, + sym_delete_statement = 126, + sym_raise_statement = 127, + sym_pass_statement = 128, + sym_break_statement = 129, + sym_continue_statement = 130, + sym_if_statement = 131, + sym_elif_clause = 132, + sym_else_clause = 133, + sym_for_statement = 134, + sym_while_statement = 135, + sym_try_statement = 136, + sym_exception_list = 137, + sym_except_clause = 138, + sym_except_group_clause = 139, + sym_finally_clause = 140, + sym_with_statement = 141, + sym_with_clause = 142, + sym_with_item = 143, + sym_match_statement = 144, + sym_cases = 145, + sym_case_block = 146, + sym__match_patterns = 147, + sym_open_sequence_match_pattern = 148, + sym__match_pattern = 149, + sym_match_as_pattern = 150, + sym__match_or_pattern = 151, + sym_match_or_pattern = 152, + sym__closed_pattern = 153, + sym_match_literal_pattern = 154, + sym_match_capture_pattern = 155, + sym_match_value_pattern = 156, + sym_match_group_pattern = 157, + sym_match_sequence_pattern = 158, + sym__match_maybe_star_pattern = 159, + sym_match_star_pattern = 160, + sym_match_mapping_pattern = 161, + sym_match_double_star_pattern = 162, + sym_match_key_value_pattern = 163, + sym_match_class_pattern = 164, + sym_pattern_class_name = 165, + sym_match_positional_pattern = 166, + sym_match_keyword_pattern = 167, + sym_guard = 168, + sym_function_definition = 169, + sym_parameters = 170, + sym_lambda_parameters = 171, + sym_list_splat = 172, + sym_dictionary_splat = 173, + sym_global_statement = 174, + sym_nonlocal_statement = 175, + sym_exec_statement = 176, + sym_type_alias_statement = 177, + sym_class_definition = 178, + sym_type_parameters = 179, + sym__type_bound = 180, + sym_typevar_parameter = 181, + sym_typevartuple_parameter = 182, + sym_paramspec_parameter = 183, + sym__type_parameter = 184, + sym__type_param_default = 185, + sym_parenthesized_list_splat = 186, + sym_argument_list = 187, + sym_decorated_definition = 188, + sym_decorator = 189, + sym_block = 190, + sym_expression_list = 191, + sym_dotted_name = 192, + sym__parameters = 193, + sym__patterns = 194, + sym_parameter = 195, + sym_pattern = 196, + sym_tuple_pattern = 197, + sym_list_pattern = 198, + sym_default_parameter = 199, + sym_typed_default_parameter = 200, + sym_list_splat_pattern = 201, + sym_dictionary_splat_pattern = 202, + sym__expression_within_for_in_clause = 203, + sym_expression = 204, + sym_primary_expression = 205, + sym_not_operator = 206, + sym_boolean_operator = 207, + sym_binary_operator = 208, + sym_unary_operator = 209, + sym_comparison_operator = 210, + sym_lambda = 211, + sym_lambda_within_for_in_clause = 212, + sym_assignment = 213, + sym_augmented_assignment = 214, + sym_pattern_list = 215, + sym__right_hand_side = 216, + sym_yield = 217, + sym_attribute = 218, + sym__index_expression = 219, + sym_index_expression_list = 220, + sym_subscript = 221, + sym_slice = 222, + sym_call = 223, + sym_typed_parameter = 224, + sym_type = 225, + sym_keyword_argument = 226, + sym_list = 227, + sym_set = 228, + sym_tuple = 229, + sym_dictionary = 230, + sym_pair = 231, + sym_list_comprehension = 232, + sym_dictionary_comprehension = 233, + sym_set_comprehension = 234, + sym_generator_expression = 235, + sym__comprehension_clauses = 236, + sym_parenthesized_expression = 237, + sym__collection_elements = 238, + sym_for_in_clause = 239, + sym_if_clause = 240, + sym_conditional_expression = 241, + sym_concatenated_string = 242, + sym_string = 243, + sym_concatenated_template_string = 244, + sym_template_string = 245, + sym_string_content = 246, + sym_interpolation = 247, + sym__f_expression = 248, + sym__not_escape_sequence = 249, + sym_format_specifier = 250, + sym_await = 251, + sym_positional_separator = 252, + sym_keyword_separator = 253, + sym__semicolon = 254, + aux_sym_module_repeat1 = 255, + aux_sym__simple_statements_repeat1 = 256, + aux_sym_import_prefix_repeat1 = 257, + aux_sym__import_list_repeat1 = 258, + aux_sym_print_statement_repeat1 = 259, + aux_sym_assert_statement_repeat1 = 260, + aux_sym_if_statement_repeat1 = 261, + aux_sym_try_statement_repeat1 = 262, + aux_sym_try_statement_repeat2 = 263, + aux_sym_exception_list_repeat1 = 264, + aux_sym_with_clause_repeat1 = 265, + aux_sym_cases_repeat1 = 266, + aux_sym_open_sequence_match_pattern_repeat1 = 267, + aux_sym_match_or_pattern_repeat1 = 268, + aux_sym_match_value_pattern_repeat1 = 269, + aux_sym_match_mapping_pattern_repeat1 = 270, + aux_sym_match_class_pattern_repeat1 = 271, + aux_sym_match_class_pattern_repeat2 = 272, + aux_sym_global_statement_repeat1 = 273, + aux_sym_type_parameters_repeat1 = 274, + aux_sym_argument_list_repeat1 = 275, + aux_sym_decorated_definition_repeat1 = 276, + aux_sym_expression_list_repeat1 = 277, + aux_sym__parameters_repeat1 = 278, + aux_sym__patterns_repeat1 = 279, + aux_sym_comparison_operator_repeat1 = 280, + aux_sym_index_expression_list_repeat1 = 281, + aux_sym_dictionary_repeat1 = 282, + aux_sym__comprehension_clauses_repeat1 = 283, + aux_sym__collection_elements_repeat1 = 284, + aux_sym_for_in_clause_repeat1 = 285, + aux_sym_concatenated_string_repeat1 = 286, + aux_sym_string_repeat1 = 287, + aux_sym_concatenated_template_string_repeat1 = 288, + aux_sym_string_content_repeat1 = 289, + aux_sym_format_specifier_repeat1 = 290, + alias_sym_format_expression = 291, + anon_alias_sym_isnot = 292, + anon_alias_sym_notin = 293, }; static const char * const ts_symbol_names[] = { @@ -400,7 +406,8 @@ static const char * const ts_symbol_names[] = { [anon_sym_LBRACE2] = "{", [sym__escape_interpolation] = "_escape_interpolation", [sym_escape_sequence] = "escape_sequence", - [sym__not_escape_sequence] = "_not_escape_sequence", + [anon_sym_BSLASH] = "\\", + [anon_sym_COLON2] = ":", [aux_sym_format_specifier_token1] = "format_specifier_token1", [sym_type_conversion] = "type_conversion", [sym_integer] = "integer", @@ -410,7 +417,7 @@ static const char * const ts_symbol_names[] = { [sym_false] = "false", [sym_none] = "none", [sym_comment] = "comment", - [sym__semicolon] = "_semicolon", + [anon_sym_SEMI] = ";", [sym__newline] = "_newline", [sym__indent] = "_indent", [sym__dedent] = "_dedent", @@ -558,10 +565,12 @@ static const char * const ts_symbol_names[] = { [sym_string_content] = "string_content", [sym_interpolation] = "interpolation", [sym__f_expression] = "_f_expression", + [sym__not_escape_sequence] = "_not_escape_sequence", [sym_format_specifier] = "format_specifier", [sym_await] = "await", [sym_positional_separator] = "positional_separator", [sym_keyword_separator] = "keyword_separator", + [sym__semicolon] = "_semicolon", [aux_sym_module_repeat1] = "module_repeat1", [aux_sym__simple_statements_repeat1] = "_simple_statements_repeat1", [aux_sym_import_prefix_repeat1] = "import_prefix_repeat1", @@ -694,7 +703,8 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_LBRACE2] = anon_sym_LBRACE, [sym__escape_interpolation] = sym__escape_interpolation, [sym_escape_sequence] = sym_escape_sequence, - [sym__not_escape_sequence] = sym__not_escape_sequence, + [anon_sym_BSLASH] = anon_sym_BSLASH, + [anon_sym_COLON2] = anon_sym_COLON, [aux_sym_format_specifier_token1] = aux_sym_format_specifier_token1, [sym_type_conversion] = sym_type_conversion, [sym_integer] = sym_integer, @@ -704,7 +714,7 @@ static const TSSymbol ts_symbol_map[] = { [sym_false] = sym_false, [sym_none] = sym_none, [sym_comment] = sym_comment, - [sym__semicolon] = sym__semicolon, + [anon_sym_SEMI] = anon_sym_SEMI, [sym__newline] = sym__newline, [sym__indent] = sym__indent, [sym__dedent] = sym__dedent, @@ -852,10 +862,12 @@ static const TSSymbol ts_symbol_map[] = { [sym_string_content] = sym_string_content, [sym_interpolation] = sym_interpolation, [sym__f_expression] = sym__f_expression, + [sym__not_escape_sequence] = sym__not_escape_sequence, [sym_format_specifier] = sym_format_specifier, [sym_await] = sym_await, [sym_positional_separator] = sym_positional_separator, [sym_keyword_separator] = sym_keyword_separator, + [sym__semicolon] = sym__semicolon, [aux_sym_module_repeat1] = aux_sym_module_repeat1, [aux_sym__simple_statements_repeat1] = aux_sym__simple_statements_repeat1, [aux_sym_import_prefix_repeat1] = aux_sym_import_prefix_repeat1, @@ -1258,9 +1270,13 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym__not_escape_sequence] = { - .visible = false, - .named = true, + [anon_sym_BSLASH] = { + .visible = true, + .named = false, + }, + [anon_sym_COLON2] = { + .visible = true, + .named = false, }, [aux_sym_format_specifier_token1] = { .visible = false, @@ -1298,9 +1314,9 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym__semicolon] = { - .visible = false, - .named = true, + [anon_sym_SEMI] = { + .visible = true, + .named = false, }, [sym__newline] = { .visible = false, @@ -1894,6 +1910,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = true, }, + [sym__not_escape_sequence] = { + .visible = false, + .named = true, + }, [sym_format_specifier] = { .visible = true, .named = true, @@ -1910,6 +1930,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym__semicolon] = { + .visible = false, + .named = true, + }, [aux_sym_module_repeat1] = { .visible = false, .named = false, @@ -2068,7 +2092,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { }, }; -enum { +enum ts_field_identifiers { field_alias = 1, field_alternative = 2, field_argument = 3, @@ -2183,7 +2207,7 @@ static const char * const ts_field_names[] = { [field_vararg] = "vararg", }; -static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { +static const TSMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [2] = {.index = 0, .length = 2}, [3] = {.index = 2, .length = 1}, [4] = {.index = 3, .length = 1}, @@ -3032,2052 +3056,2234 @@ static const uint16_t ts_non_terminal_alias_map[] = { 0, }; -static inline bool sym_identifier_character_set_1(int32_t c) { - return (c < 43020 - ? (c < 4096 - ? (c < 2693 - ? (c < 1969 - ? (c < 910 - ? (c < 736 - ? (c < 186 - ? (c < 170 - ? (c < 'a' - ? (c >= 'A' && c <= '_') - : c <= 'z') - : (c <= 170 || c == 181)) - : (c <= 186 || (c < 248 - ? (c < 216 - ? (c >= 192 && c <= 214) - : c <= 246) - : (c <= 705 || (c >= 710 && c <= 721))))) - : (c <= 740 || (c < 891 - ? (c < 880 - ? (c < 750 - ? c == 748 - : c <= 750) - : (c <= 884 || (c >= 886 && c <= 887))) - : (c <= 893 || (c < 904 - ? (c < 902 - ? c == 895 - : c <= 902) - : (c <= 906 || c == 908)))))) - : (c <= 929 || (c < 1646 - ? (c < 1369 - ? (c < 1162 - ? (c < 1015 - ? (c >= 931 && c <= 1013) - : c <= 1153) - : (c <= 1327 || (c >= 1329 && c <= 1366))) - : (c <= 1369 || (c < 1519 - ? (c < 1488 - ? (c >= 1376 && c <= 1416) - : c <= 1514) - : (c <= 1522 || (c >= 1568 && c <= 1610))))) - : (c <= 1647 || (c < 1786 - ? (c < 1765 - ? (c < 1749 - ? (c >= 1649 && c <= 1747) - : c <= 1749) - : (c <= 1766 || (c >= 1774 && c <= 1775))) - : (c <= 1788 || (c < 1810 - ? (c < 1808 - ? c == 1791 - : c <= 1808) - : (c <= 1839 || (c >= 1869 && c <= 1957))))))))) - : (c <= 1969 || (c < 2474 - ? (c < 2208 - ? (c < 2074 - ? (c < 2042 - ? (c < 2036 - ? (c >= 1994 && c <= 2026) - : c <= 2037) - : (c <= 2042 || (c >= 2048 && c <= 2069))) - : (c <= 2074 || (c < 2112 - ? (c < 2088 - ? c == 2084 - : c <= 2088) - : (c <= 2136 || (c >= 2144 && c <= 2154))))) - : (c <= 2228 || (c < 2392 - ? (c < 2365 - ? (c < 2308 - ? (c >= 2230 && c <= 2247) - : c <= 2361) - : (c <= 2365 || c == 2384)) - : (c <= 2401 || (c < 2447 - ? (c < 2437 - ? (c >= 2417 && c <= 2432) - : c <= 2444) - : (c <= 2448 || (c >= 2451 && c <= 2472))))))) - : (c <= 2480 || (c < 2575 - ? (c < 2524 - ? (c < 2493 - ? (c < 2486 - ? c == 2482 - : c <= 2489) - : (c <= 2493 || c == 2510)) - : (c <= 2525 || (c < 2556 - ? (c < 2544 - ? (c >= 2527 && c <= 2529) - : c <= 2545) - : (c <= 2556 || (c >= 2565 && c <= 2570))))) - : (c <= 2576 || (c < 2616 - ? (c < 2610 - ? (c < 2602 - ? (c >= 2579 && c <= 2600) - : c <= 2608) - : (c <= 2611 || (c >= 2613 && c <= 2614))) - : (c <= 2617 || (c < 2654 - ? (c >= 2649 && c <= 2652) - : (c <= 2654 || (c >= 2674 && c <= 2676))))))))))) - : (c <= 2701 || (c < 3214 - ? (c < 2947 - ? (c < 2821 - ? (c < 2741 - ? (c < 2730 - ? (c < 2707 - ? (c >= 2703 && c <= 2705) - : c <= 2728) - : (c <= 2736 || (c >= 2738 && c <= 2739))) - : (c <= 2745 || (c < 2784 - ? (c < 2768 - ? c == 2749 - : c <= 2768) - : (c <= 2785 || c == 2809)))) - : (c <= 2828 || (c < 2869 - ? (c < 2858 - ? (c < 2835 - ? (c >= 2831 && c <= 2832) - : c <= 2856) - : (c <= 2864 || (c >= 2866 && c <= 2867))) - : (c <= 2873 || (c < 2911 - ? (c < 2908 - ? c == 2877 - : c <= 2909) - : (c <= 2913 || c == 2929)))))) - : (c <= 2947 || (c < 3024 - ? (c < 2972 - ? (c < 2962 - ? (c < 2958 - ? (c >= 2949 && c <= 2954) - : c <= 2960) - : (c <= 2965 || (c >= 2969 && c <= 2970))) - : (c <= 2972 || (c < 2984 - ? (c < 2979 - ? (c >= 2974 && c <= 2975) - : c <= 2980) - : (c <= 2986 || (c >= 2990 && c <= 3001))))) - : (c <= 3024 || (c < 3133 - ? (c < 3090 - ? (c < 3086 - ? (c >= 3077 && c <= 3084) - : c <= 3088) - : (c <= 3112 || (c >= 3114 && c <= 3129))) - : (c <= 3133 || (c < 3200 - ? (c < 3168 - ? (c >= 3160 && c <= 3162) - : c <= 3169) - : (c <= 3200 || (c >= 3205 && c <= 3212))))))))) - : (c <= 3216 || (c < 3520 - ? (c < 3346 - ? (c < 3294 - ? (c < 3253 - ? (c < 3242 - ? (c >= 3218 && c <= 3240) - : c <= 3251) - : (c <= 3257 || c == 3261)) - : (c <= 3294 || (c < 3332 - ? (c < 3313 - ? (c >= 3296 && c <= 3297) - : c <= 3314) - : (c <= 3340 || (c >= 3342 && c <= 3344))))) - : (c <= 3386 || (c < 3450 - ? (c < 3412 - ? (c < 3406 - ? c == 3389 - : c <= 3406) - : (c <= 3414 || (c >= 3423 && c <= 3425))) - : (c <= 3455 || (c < 3507 - ? (c < 3482 - ? (c >= 3461 && c <= 3478) - : c <= 3505) - : (c <= 3515 || c == 3517)))))) - : (c <= 3526 || (c < 3762 - ? (c < 3716 - ? (c < 3648 - ? (c < 3634 - ? (c >= 3585 && c <= 3632) - : c <= 3634) - : (c <= 3654 || (c >= 3713 && c <= 3714))) - : (c <= 3716 || (c < 3749 - ? (c < 3724 - ? (c >= 3718 && c <= 3722) - : c <= 3747) - : (c <= 3749 || (c >= 3751 && c <= 3760))))) - : (c <= 3762 || (c < 3840 - ? (c < 3782 - ? (c < 3776 - ? c == 3773 - : c <= 3780) - : (c <= 3782 || (c >= 3804 && c <= 3807))) - : (c <= 3840 || (c < 3913 - ? (c >= 3904 && c <= 3911) - : (c <= 3948 || (c >= 3976 && c <= 3980))))))))))))) - : (c <= 4138 || (c < 8025 - ? (c < 5952 - ? (c < 4752 - ? (c < 4295 - ? (c < 4197 - ? (c < 4186 - ? (c < 4176 - ? c == 4159 - : c <= 4181) - : (c <= 4189 || c == 4193)) - : (c <= 4198 || (c < 4238 - ? (c < 4213 - ? (c >= 4206 && c <= 4208) - : c <= 4225) - : (c <= 4238 || (c >= 4256 && c <= 4293))))) - : (c <= 4295 || (c < 4688 - ? (c < 4348 - ? (c < 4304 - ? c == 4301 - : c <= 4346) - : (c <= 4680 || (c >= 4682 && c <= 4685))) - : (c <= 4694 || (c < 4704 - ? (c < 4698 - ? c == 4696 - : c <= 4701) - : (c <= 4744 || (c >= 4746 && c <= 4749))))))) - : (c <= 4784 || (c < 5024 - ? (c < 4808 - ? (c < 4800 - ? (c < 4792 - ? (c >= 4786 && c <= 4789) - : c <= 4798) - : (c <= 4800 || (c >= 4802 && c <= 4805))) - : (c <= 4822 || (c < 4888 - ? (c < 4882 - ? (c >= 4824 && c <= 4880) - : c <= 4885) - : (c <= 4954 || (c >= 4992 && c <= 5007))))) - : (c <= 5109 || (c < 5792 - ? (c < 5743 - ? (c < 5121 - ? (c >= 5112 && c <= 5117) - : c <= 5740) - : (c <= 5759 || (c >= 5761 && c <= 5786))) - : (c <= 5866 || (c < 5902 - ? (c < 5888 - ? (c >= 5870 && c <= 5880) - : c <= 5900) - : (c <= 5905 || (c >= 5920 && c <= 5937))))))))) - : (c <= 5969 || (c < 7043 - ? (c < 6400 - ? (c < 6108 - ? (c < 6016 - ? (c < 5998 - ? (c >= 5984 && c <= 5996) - : c <= 6000) - : (c <= 6067 || c == 6103)) - : (c <= 6108 || (c < 6314 - ? (c < 6272 - ? (c >= 6176 && c <= 6264) - : c <= 6312) - : (c <= 6314 || (c >= 6320 && c <= 6389))))) - : (c <= 6430 || (c < 6656 - ? (c < 6528 - ? (c < 6512 - ? (c >= 6480 && c <= 6509) - : c <= 6516) - : (c <= 6571 || (c >= 6576 && c <= 6601))) - : (c <= 6678 || (c < 6917 - ? (c < 6823 - ? (c >= 6688 && c <= 6740) - : c <= 6823) - : (c <= 6963 || (c >= 6981 && c <= 6987))))))) - : (c <= 7072 || (c < 7406 - ? (c < 7258 - ? (c < 7168 - ? (c < 7098 - ? (c >= 7086 && c <= 7087) - : c <= 7141) - : (c <= 7203 || (c >= 7245 && c <= 7247))) - : (c <= 7293 || (c < 7357 - ? (c < 7312 - ? (c >= 7296 && c <= 7304) - : c <= 7354) - : (c <= 7359 || (c >= 7401 && c <= 7404))))) - : (c <= 7411 || (c < 7960 - ? (c < 7424 - ? (c < 7418 - ? (c >= 7413 && c <= 7414) - : c <= 7418) - : (c <= 7615 || (c >= 7680 && c <= 7957))) - : (c <= 7965 || (c < 8008 - ? (c >= 7968 && c <= 8005) - : (c <= 8013 || (c >= 8016 && c <= 8023))))))))))) - : (c <= 8025 || (c < 11631 - ? (c < 8469 - ? (c < 8150 - ? (c < 8118 - ? (c < 8031 - ? (c < 8029 - ? c == 8027 - : c <= 8029) - : (c <= 8061 || (c >= 8064 && c <= 8116))) - : (c <= 8124 || (c < 8134 - ? (c < 8130 - ? c == 8126 - : c <= 8132) - : (c <= 8140 || (c >= 8144 && c <= 8147))))) - : (c <= 8155 || (c < 8319 - ? (c < 8182 - ? (c < 8178 - ? (c >= 8160 && c <= 8172) - : c <= 8180) - : (c <= 8188 || c == 8305)) - : (c <= 8319 || (c < 8455 - ? (c < 8450 - ? (c >= 8336 && c <= 8348) - : c <= 8450) - : (c <= 8455 || (c >= 8458 && c <= 8467))))))) - : (c <= 8469 || (c < 11264 - ? (c < 8490 - ? (c < 8486 - ? (c < 8484 - ? (c >= 8472 && c <= 8477) - : c <= 8484) - : (c <= 8486 || c == 8488)) - : (c <= 8505 || (c < 8526 - ? (c < 8517 - ? (c >= 8508 && c <= 8511) - : c <= 8521) - : (c <= 8526 || (c >= 8544 && c <= 8584))))) - : (c <= 11310 || (c < 11520 - ? (c < 11499 - ? (c < 11360 - ? (c >= 11312 && c <= 11358) - : c <= 11492) - : (c <= 11502 || (c >= 11506 && c <= 11507))) - : (c <= 11557 || (c < 11565 - ? c == 11559 - : (c <= 11565 || (c >= 11568 && c <= 11623))))))))) - : (c <= 11631 || (c < 12704 - ? (c < 12293 - ? (c < 11704 - ? (c < 11688 - ? (c < 11680 - ? (c >= 11648 && c <= 11670) - : c <= 11686) - : (c <= 11694 || (c >= 11696 && c <= 11702))) - : (c <= 11710 || (c < 11728 - ? (c < 11720 - ? (c >= 11712 && c <= 11718) - : c <= 11726) - : (c <= 11734 || (c >= 11736 && c <= 11742))))) - : (c <= 12295 || (c < 12445 - ? (c < 12344 - ? (c < 12337 - ? (c >= 12321 && c <= 12329) - : c <= 12341) - : (c <= 12348 || (c >= 12353 && c <= 12438))) - : (c <= 12447 || (c < 12549 - ? (c < 12540 - ? (c >= 12449 && c <= 12538) - : c <= 12543) - : (c <= 12591 || (c >= 12593 && c <= 12686))))))) - : (c <= 12735 || (c < 42623 - ? (c < 42192 - ? (c < 19968 - ? (c < 13312 - ? (c >= 12784 && c <= 12799) - : c <= 19903) - : (c <= 40956 || (c >= 40960 && c <= 42124))) - : (c <= 42237 || (c < 42538 - ? (c < 42512 - ? (c >= 42240 && c <= 42508) - : c <= 42527) - : (c <= 42539 || (c >= 42560 && c <= 42606))))) - : (c <= 42653 || (c < 42946 - ? (c < 42786 - ? (c < 42775 - ? (c >= 42656 && c <= 42735) - : c <= 42783) - : (c <= 42888 || (c >= 42891 && c <= 42943))) - : (c <= 42954 || (c < 43011 - ? (c >= 42997 && c <= 43009) - : (c <= 43013 || (c >= 43015 && c <= 43018))))))))))))))) - : (c <= 43042 || (c < 70453 - ? (c < 66176 - ? (c < 64112 - ? (c < 43697 - ? (c < 43471 - ? (c < 43261 - ? (c < 43250 - ? (c < 43138 - ? (c >= 43072 && c <= 43123) - : c <= 43187) - : (c <= 43255 || c == 43259)) - : (c <= 43262 || (c < 43360 - ? (c < 43312 - ? (c >= 43274 && c <= 43301) - : c <= 43334) - : (c <= 43388 || (c >= 43396 && c <= 43442))))) - : (c <= 43471 || (c < 43584 - ? (c < 43514 - ? (c < 43494 - ? (c >= 43488 && c <= 43492) - : c <= 43503) - : (c <= 43518 || (c >= 43520 && c <= 43560))) - : (c <= 43586 || (c < 43642 - ? (c < 43616 - ? (c >= 43588 && c <= 43595) - : c <= 43638) - : (c <= 43642 || (c >= 43646 && c <= 43695))))))) - : (c <= 43697 || (c < 43793 - ? (c < 43739 - ? (c < 43712 - ? (c < 43705 - ? (c >= 43701 && c <= 43702) - : c <= 43709) - : (c <= 43712 || c == 43714)) - : (c <= 43741 || (c < 43777 - ? (c < 43762 - ? (c >= 43744 && c <= 43754) - : c <= 43764) - : (c <= 43782 || (c >= 43785 && c <= 43790))))) - : (c <= 43798 || (c < 43888 - ? (c < 43824 - ? (c < 43816 - ? (c >= 43808 && c <= 43814) - : c <= 43822) - : (c <= 43866 || (c >= 43868 && c <= 43881))) - : (c <= 44002 || (c < 55243 - ? (c < 55216 - ? (c >= 44032 && c <= 55203) - : c <= 55238) - : (c <= 55291 || (c >= 63744 && c <= 64109))))))))) - : (c <= 64217 || (c < 65147 - ? (c < 64326 - ? (c < 64298 - ? (c < 64285 - ? (c < 64275 - ? (c >= 64256 && c <= 64262) - : c <= 64279) - : (c <= 64285 || (c >= 64287 && c <= 64296))) - : (c <= 64310 || (c < 64320 - ? (c < 64318 - ? (c >= 64312 && c <= 64316) - : c <= 64318) - : (c <= 64321 || (c >= 64323 && c <= 64324))))) - : (c <= 64433 || (c < 65008 - ? (c < 64848 - ? (c < 64612 - ? (c >= 64467 && c <= 64605) - : c <= 64829) - : (c <= 64911 || (c >= 64914 && c <= 64967))) - : (c <= 65017 || (c < 65143 - ? (c < 65139 - ? c == 65137 - : c <= 65139) - : (c <= 65143 || c == 65145)))))) - : (c <= 65147 || (c < 65498 - ? (c < 65382 - ? (c < 65313 - ? (c < 65151 - ? c == 65149 - : c <= 65276) - : (c <= 65338 || (c >= 65345 && c <= 65370))) - : (c <= 65437 || (c < 65482 - ? (c < 65474 - ? (c >= 65440 && c <= 65470) - : c <= 65479) - : (c <= 65487 || (c >= 65490 && c <= 65495))))) - : (c <= 65500 || (c < 65599 - ? (c < 65576 - ? (c < 65549 - ? (c >= 65536 && c <= 65547) - : c <= 65574) - : (c <= 65594 || (c >= 65596 && c <= 65597))) - : (c <= 65613 || (c < 65664 - ? (c >= 65616 && c <= 65629) - : (c <= 65786 || (c >= 65856 && c <= 65908))))))))))) - : (c <= 66204 || (c < 68416 - ? (c < 67639 - ? (c < 66736 - ? (c < 66432 - ? (c < 66349 - ? (c < 66304 - ? (c >= 66208 && c <= 66256) - : c <= 66335) - : (c <= 66378 || (c >= 66384 && c <= 66421))) - : (c <= 66461 || (c < 66513 - ? (c < 66504 - ? (c >= 66464 && c <= 66499) - : c <= 66511) - : (c <= 66517 || (c >= 66560 && c <= 66717))))) - : (c <= 66771 || (c < 67392 - ? (c < 66864 - ? (c < 66816 - ? (c >= 66776 && c <= 66811) - : c <= 66855) - : (c <= 66915 || (c >= 67072 && c <= 67382))) - : (c <= 67413 || (c < 67592 - ? (c < 67584 - ? (c >= 67424 && c <= 67431) - : c <= 67589) - : (c <= 67592 || (c >= 67594 && c <= 67637))))))) - : (c <= 67640 || (c < 68030 - ? (c < 67808 - ? (c < 67680 - ? (c < 67647 - ? c == 67644 - : c <= 67669) - : (c <= 67702 || (c >= 67712 && c <= 67742))) - : (c <= 67826 || (c < 67872 - ? (c < 67840 - ? (c >= 67828 && c <= 67829) - : c <= 67861) - : (c <= 67897 || (c >= 67968 && c <= 68023))))) - : (c <= 68031 || (c < 68192 - ? (c < 68117 - ? (c < 68112 - ? c == 68096 - : c <= 68115) - : (c <= 68119 || (c >= 68121 && c <= 68149))) - : (c <= 68220 || (c < 68297 - ? (c < 68288 - ? (c >= 68224 && c <= 68252) - : c <= 68295) - : (c <= 68324 || (c >= 68352 && c <= 68405))))))))) - : (c <= 68437 || (c < 69968 - ? (c < 69415 - ? (c < 68800 - ? (c < 68608 - ? (c < 68480 - ? (c >= 68448 && c <= 68466) - : c <= 68497) - : (c <= 68680 || (c >= 68736 && c <= 68786))) - : (c <= 68850 || (c < 69296 - ? (c < 69248 - ? (c >= 68864 && c <= 68899) - : c <= 69289) - : (c <= 69297 || (c >= 69376 && c <= 69404))))) - : (c <= 69415 || (c < 69763 - ? (c < 69600 - ? (c < 69552 - ? (c >= 69424 && c <= 69445) - : c <= 69572) - : (c <= 69622 || (c >= 69635 && c <= 69687))) - : (c <= 69807 || (c < 69956 - ? (c < 69891 - ? (c >= 69840 && c <= 69864) - : c <= 69926) - : (c <= 69956 || c == 69959)))))) - : (c <= 70002 || (c < 70282 - ? (c < 70108 - ? (c < 70081 - ? (c < 70019 - ? c == 70006 - : c <= 70066) - : (c <= 70084 || c == 70106)) - : (c <= 70108 || (c < 70272 - ? (c < 70163 - ? (c >= 70144 && c <= 70161) - : c <= 70187) - : (c <= 70278 || c == 70280)))) - : (c <= 70285 || (c < 70415 - ? (c < 70320 - ? (c < 70303 - ? (c >= 70287 && c <= 70301) - : c <= 70312) - : (c <= 70366 || (c >= 70405 && c <= 70412))) - : (c <= 70416 || (c < 70442 - ? (c >= 70419 && c <= 70440) - : (c <= 70448 || (c >= 70450 && c <= 70451))))))))))))) - : (c <= 70457 || (c < 113808 - ? (c < 72818 - ? (c < 71945 - ? (c < 71040 - ? (c < 70727 - ? (c < 70493 - ? (c < 70480 - ? c == 70461 - : c <= 70480) - : (c <= 70497 || (c >= 70656 && c <= 70708))) - : (c <= 70730 || (c < 70852 - ? (c < 70784 - ? (c >= 70751 && c <= 70753) - : c <= 70831) - : (c <= 70853 || c == 70855)))) - : (c <= 71086 || (c < 71352 - ? (c < 71236 - ? (c < 71168 - ? (c >= 71128 && c <= 71131) - : c <= 71215) - : (c <= 71236 || (c >= 71296 && c <= 71338))) - : (c <= 71352 || (c < 71840 - ? (c < 71680 - ? (c >= 71424 && c <= 71450) - : c <= 71723) - : (c <= 71903 || (c >= 71935 && c <= 71942))))))) - : (c <= 71945 || (c < 72192 - ? (c < 72001 - ? (c < 71960 - ? (c < 71957 - ? (c >= 71948 && c <= 71955) - : c <= 71958) - : (c <= 71983 || c == 71999)) - : (c <= 72001 || (c < 72161 - ? (c < 72106 - ? (c >= 72096 && c <= 72103) - : c <= 72144) - : (c <= 72161 || c == 72163)))) - : (c <= 72192 || (c < 72349 - ? (c < 72272 - ? (c < 72250 - ? (c >= 72203 && c <= 72242) - : c <= 72250) - : (c <= 72272 || (c >= 72284 && c <= 72329))) - : (c <= 72349 || (c < 72714 - ? (c < 72704 - ? (c >= 72384 && c <= 72440) - : c <= 72712) - : (c <= 72750 || c == 72768)))))))) - : (c <= 72847 || (c < 92992 - ? (c < 73648 - ? (c < 73056 - ? (c < 72971 - ? (c < 72968 - ? (c >= 72960 && c <= 72966) - : c <= 72969) - : (c <= 73008 || c == 73030)) - : (c <= 73061 || (c < 73112 - ? (c < 73066 - ? (c >= 73063 && c <= 73064) - : c <= 73097) - : (c <= 73112 || (c >= 73440 && c <= 73458))))) - : (c <= 73648 || (c < 82944 - ? (c < 74880 - ? (c < 74752 - ? (c >= 73728 && c <= 74649) - : c <= 74862) - : (c <= 75075 || (c >= 77824 && c <= 78894))) - : (c <= 83526 || (c < 92880 - ? (c < 92736 - ? (c >= 92160 && c <= 92728) - : c <= 92766) - : (c <= 92909 || (c >= 92928 && c <= 92975))))))) - : (c <= 92995 || (c < 100352 - ? (c < 94032 - ? (c < 93760 - ? (c < 93053 - ? (c >= 93027 && c <= 93047) - : c <= 93071) - : (c <= 93823 || (c >= 93952 && c <= 94026))) - : (c <= 94032 || (c < 94179 - ? (c < 94176 - ? (c >= 94099 && c <= 94111) - : c <= 94177) - : (c <= 94179 || (c >= 94208 && c <= 100343))))) - : (c <= 101589 || (c < 110960 - ? (c < 110928 - ? (c < 110592 - ? (c >= 101632 && c <= 101640) - : c <= 110878) - : (c <= 110930 || (c >= 110948 && c <= 110951))) - : (c <= 111355 || (c < 113776 - ? (c >= 113664 && c <= 113770) - : (c <= 113788 || (c >= 113792 && c <= 113800))))))))))) - : (c <= 113817 || (c < 126469 - ? (c < 120488 - ? (c < 120005 - ? (c < 119973 - ? (c < 119966 - ? (c < 119894 - ? (c >= 119808 && c <= 119892) - : c <= 119964) - : (c <= 119967 || c == 119970)) - : (c <= 119974 || (c < 119995 - ? (c < 119982 - ? (c >= 119977 && c <= 119980) - : c <= 119993) - : (c <= 119995 || (c >= 119997 && c <= 120003))))) - : (c <= 120069 || (c < 120123 - ? (c < 120086 - ? (c < 120077 - ? (c >= 120071 && c <= 120074) - : c <= 120084) - : (c <= 120092 || (c >= 120094 && c <= 120121))) - : (c <= 120126 || (c < 120138 - ? (c < 120134 - ? (c >= 120128 && c <= 120132) - : c <= 120134) - : (c <= 120144 || (c >= 120146 && c <= 120485))))))) - : (c <= 120512 || (c < 120772 - ? (c < 120630 - ? (c < 120572 - ? (c < 120540 - ? (c >= 120514 && c <= 120538) - : c <= 120570) - : (c <= 120596 || (c >= 120598 && c <= 120628))) - : (c <= 120654 || (c < 120714 - ? (c < 120688 - ? (c >= 120656 && c <= 120686) - : c <= 120712) - : (c <= 120744 || (c >= 120746 && c <= 120770))))) - : (c <= 120779 || (c < 124928 - ? (c < 123214 - ? (c < 123191 - ? (c >= 123136 && c <= 123180) - : c <= 123197) - : (c <= 123214 || (c >= 123584 && c <= 123627))) - : (c <= 125124 || (c < 125259 - ? (c >= 125184 && c <= 125251) - : (c <= 125259 || (c >= 126464 && c <= 126467))))))))) - : (c <= 126495 || (c < 126561 - ? (c < 126537 - ? (c < 126516 - ? (c < 126503 - ? (c < 126500 - ? (c >= 126497 && c <= 126498) - : c <= 126500) - : (c <= 126503 || (c >= 126505 && c <= 126514))) - : (c <= 126519 || (c < 126530 - ? (c < 126523 - ? c == 126521 - : c <= 126523) - : (c <= 126530 || c == 126535)))) - : (c <= 126537 || (c < 126551 - ? (c < 126545 - ? (c < 126541 - ? c == 126539 - : c <= 126543) - : (c <= 126546 || c == 126548)) - : (c <= 126551 || (c < 126557 - ? (c < 126555 - ? c == 126553 - : c <= 126555) - : (c <= 126557 || c == 126559)))))) - : (c <= 126562 || (c < 126629 - ? (c < 126585 - ? (c < 126572 - ? (c < 126567 - ? c == 126564 - : c <= 126570) - : (c <= 126578 || (c >= 126580 && c <= 126583))) - : (c <= 126588 || (c < 126603 - ? (c < 126592 - ? c == 126590 - : c <= 126601) - : (c <= 126619 || (c >= 126625 && c <= 126627))))) - : (c <= 126633 || (c < 178208 - ? (c < 173824 - ? (c < 131072 - ? (c >= 126635 && c <= 126651) - : c <= 173789) - : (c <= 177972 || (c >= 177984 && c <= 178205))) - : (c <= 183969 || (c < 194560 - ? (c >= 183984 && c <= 191456) - : (c <= 195101 || (c >= 196608 && c <= 201546))))))))))))))))); -} +static const TSStateId ts_primary_state_ids[STATE_COUNT] = { + [0] = 0, + [1] = 1, + [2] = 2, + [3] = 3, + [4] = 2, + [5] = 5, + [6] = 6, + [7] = 7, + [8] = 8, + [9] = 9, + [10] = 10, + [11] = 11, + [12] = 12, + [13] = 13, + [14] = 14, + [15] = 15, + [16] = 16, + [17] = 17, + [18] = 18, + [19] = 19, + [20] = 20, + [21] = 21, + [22] = 22, + [23] = 23, + [24] = 24, + [25] = 25, + [26] = 26, + [27] = 27, + [28] = 28, + [29] = 29, + [30] = 30, + [31] = 3, + [32] = 5, + [33] = 6, + [34] = 7, + [35] = 8, + [36] = 9, + [37] = 10, + [38] = 11, + [39] = 12, + [40] = 13, + [41] = 14, + [42] = 15, + [43] = 16, + [44] = 17, + [45] = 18, + [46] = 19, + [47] = 20, + [48] = 21, + [49] = 22, + [50] = 23, + [51] = 24, + [52] = 25, + [53] = 26, + [54] = 27, + [55] = 28, + [56] = 56, + [57] = 29, + [58] = 30, + [59] = 56, + [60] = 60, + [61] = 61, + [62] = 62, + [63] = 61, + [64] = 60, + [65] = 61, + [66] = 66, + [67] = 66, + [68] = 68, + [69] = 69, + [70] = 70, + [71] = 71, + [72] = 72, + [73] = 73, + [74] = 74, + [75] = 75, + [76] = 76, + [77] = 77, + [78] = 78, + [79] = 79, + [80] = 80, + [81] = 81, + [82] = 82, + [83] = 83, + [84] = 84, + [85] = 71, + [86] = 72, + [87] = 87, + [88] = 74, + [89] = 75, + [90] = 80, + [91] = 82, + [92] = 92, + [93] = 83, + [94] = 94, + [95] = 87, + [96] = 84, + [97] = 94, + [98] = 98, + [99] = 76, + [100] = 100, + [101] = 100, + [102] = 102, + [103] = 77, + [104] = 104, + [105] = 105, + [106] = 102, + [107] = 107, + [108] = 104, + [109] = 105, + [110] = 110, + [111] = 78, + [112] = 112, + [113] = 79, + [114] = 107, + [115] = 115, + [116] = 116, + [117] = 110, + [118] = 92, + [119] = 70, + [120] = 112, + [121] = 81, + [122] = 73, + [123] = 115, + [124] = 69, + [125] = 116, + [126] = 98, + [127] = 127, + [128] = 128, + [129] = 128, + [130] = 127, + [131] = 128, + [132] = 127, + [133] = 133, + [134] = 134, + [135] = 135, + [136] = 136, + [137] = 137, + [138] = 136, + [139] = 139, + [140] = 136, + [141] = 136, + [142] = 142, + [143] = 137, + [144] = 136, + [145] = 137, + [146] = 146, + [147] = 136, + [148] = 134, + [149] = 137, + [150] = 137, + [151] = 146, + [152] = 137, + [153] = 153, + [154] = 154, + [155] = 155, + [156] = 156, + [157] = 157, + [158] = 158, + [159] = 159, + [160] = 157, + [161] = 161, + [162] = 159, + [163] = 157, + [164] = 164, + [165] = 164, + [166] = 164, + [167] = 164, + [168] = 168, + [169] = 168, + [170] = 170, + [171] = 171, + [172] = 172, + [173] = 173, + [174] = 168, + [175] = 175, + [176] = 176, + [177] = 177, + [178] = 170, + [179] = 171, + [180] = 172, + [181] = 173, + [182] = 176, + [183] = 183, + [184] = 184, + [185] = 185, + [186] = 186, + [187] = 176, + [188] = 176, + [189] = 189, + [190] = 190, + [191] = 170, + [192] = 192, + [193] = 172, + [194] = 194, + [195] = 195, + [196] = 196, + [197] = 197, + [198] = 198, + [199] = 199, + [200] = 200, + [201] = 189, + [202] = 195, + [203] = 196, + [204] = 204, + [205] = 205, + [206] = 194, + [207] = 197, + [208] = 194, + [209] = 198, + [210] = 199, + [211] = 199, + [212] = 195, + [213] = 196, + [214] = 198, + [215] = 189, + [216] = 200, + [217] = 217, + [218] = 194, + [219] = 197, + [220] = 171, + [221] = 195, + [222] = 196, + [223] = 198, + [224] = 189, + [225] = 200, + [226] = 194, + [227] = 197, + [228] = 200, + [229] = 194, + [230] = 197, + [231] = 197, + [232] = 232, + [233] = 233, + [234] = 234, + [235] = 235, + [236] = 236, + [237] = 237, + [238] = 232, + [239] = 239, + [240] = 232, + [241] = 232, + [242] = 242, + [243] = 243, + [244] = 244, + [245] = 245, + [246] = 246, + [247] = 246, + [248] = 243, + [249] = 249, + [250] = 250, + [251] = 250, + [252] = 252, + [253] = 253, + [254] = 249, + [255] = 252, + [256] = 252, + [257] = 253, + [258] = 249, + [259] = 252, + [260] = 253, + [261] = 249, + [262] = 253, + [263] = 250, + [264] = 264, + [265] = 265, + [266] = 266, + [267] = 267, + [268] = 266, + [269] = 269, + [270] = 270, + [271] = 265, + [272] = 272, + [273] = 273, + [274] = 274, + [275] = 275, + [276] = 276, + [277] = 277, + [278] = 278, + [279] = 275, + [280] = 267, + [281] = 273, + [282] = 282, + [283] = 283, + [284] = 278, + [285] = 276, + [286] = 270, + [287] = 283, + [288] = 288, + [289] = 289, + [290] = 290, + [291] = 291, + [292] = 292, + [293] = 293, + [294] = 294, + [295] = 295, + [296] = 296, + [297] = 297, + [298] = 298, + [299] = 299, + [300] = 300, + [301] = 301, + [302] = 302, + [303] = 303, + [304] = 288, + [305] = 305, + [306] = 306, + [307] = 307, + [308] = 308, + [309] = 309, + [310] = 305, + [311] = 295, + [312] = 312, + [313] = 313, + [314] = 314, + [315] = 315, + [316] = 316, + [317] = 317, + [318] = 313, + [319] = 312, + [320] = 320, + [321] = 321, + [322] = 322, + [323] = 323, + [324] = 324, + [325] = 320, + [326] = 321, + [327] = 322, + [328] = 328, + [329] = 329, + [330] = 328, + [331] = 329, + [332] = 314, + [333] = 316, + [334] = 334, + [335] = 317, + [336] = 334, + [337] = 323, + [338] = 324, + [339] = 339, + [340] = 340, + [341] = 341, + [342] = 342, + [343] = 340, + [344] = 344, + [345] = 345, + [346] = 346, + [347] = 347, + [348] = 345, + [349] = 349, + [350] = 350, + [351] = 351, + [352] = 352, + [353] = 353, + [354] = 354, + [355] = 355, + [356] = 356, + [357] = 356, + [358] = 358, + [359] = 341, + [360] = 360, + [361] = 361, + [362] = 362, + [363] = 363, + [364] = 364, + [365] = 365, + [366] = 356, + [367] = 367, + [368] = 361, + [369] = 351, + [370] = 341, + [371] = 344, + [372] = 372, + [373] = 373, + [374] = 353, + [375] = 362, + [376] = 360, + [377] = 377, + [378] = 378, + [379] = 361, + [380] = 380, + [381] = 364, + [382] = 351, + [383] = 383, + [384] = 384, + [385] = 385, + [386] = 353, + [387] = 360, + [388] = 344, + [389] = 344, + [390] = 378, + [391] = 340, + [392] = 356, + [393] = 361, + [394] = 364, + [395] = 351, + [396] = 353, + [397] = 397, + [398] = 360, + [399] = 354, + [400] = 344, + [401] = 340, + [402] = 402, + [403] = 340, + [404] = 350, + [405] = 356, + [406] = 406, + [407] = 407, + [408] = 356, + [409] = 361, + [410] = 364, + [411] = 351, + [412] = 353, + [413] = 360, + [414] = 344, + [415] = 361, + [416] = 340, + [417] = 350, + [418] = 362, + [419] = 350, + [420] = 364, + [421] = 350, + [422] = 350, + [423] = 385, + [424] = 407, + [425] = 425, + [426] = 351, + [427] = 353, + [428] = 360, + [429] = 380, + [430] = 430, + [431] = 378, + [432] = 432, + [433] = 402, + [434] = 397, + [435] = 364, + [436] = 436, + [437] = 437, + [438] = 438, + [439] = 439, + [440] = 440, + [441] = 441, + [442] = 442, + [443] = 443, + [444] = 436, + [445] = 442, + [446] = 446, + [447] = 447, + [448] = 446, + [449] = 447, + [450] = 450, + [451] = 440, + [452] = 452, + [453] = 452, + [454] = 437, + [455] = 441, + [456] = 438, + [457] = 443, + [458] = 458, + [459] = 439, + [460] = 450, + [461] = 461, + [462] = 462, + [463] = 463, + [464] = 464, + [465] = 465, + [466] = 466, + [467] = 467, + [468] = 468, + [469] = 469, + [470] = 470, + [471] = 471, + [472] = 470, + [473] = 463, + [474] = 474, + [475] = 294, + [476] = 466, + [477] = 477, + [478] = 478, + [479] = 468, + [480] = 480, + [481] = 480, + [482] = 482, + [483] = 307, + [484] = 469, + [485] = 485, + [486] = 471, + [487] = 487, + [488] = 464, + [489] = 485, + [490] = 477, + [491] = 482, + [492] = 492, + [493] = 493, + [494] = 494, + [495] = 495, + [496] = 496, + [497] = 497, + [498] = 492, + [499] = 499, + [500] = 500, + [501] = 501, + [502] = 502, + [503] = 495, + [504] = 496, + [505] = 499, + [506] = 500, + [507] = 501, + [508] = 493, + [509] = 509, + [510] = 510, + [511] = 511, + [512] = 511, + [513] = 513, + [514] = 514, + [515] = 515, + [516] = 516, + [517] = 517, + [518] = 518, + [519] = 519, + [520] = 520, + [521] = 521, + [522] = 522, + [523] = 523, + [524] = 524, + [525] = 525, + [526] = 526, + [527] = 527, + [528] = 528, + [529] = 529, + [530] = 530, + [531] = 531, + [532] = 532, + [533] = 533, + [534] = 534, + [535] = 535, + [536] = 536, + [537] = 537, + [538] = 538, + [539] = 539, + [540] = 540, + [541] = 541, + [542] = 542, + [543] = 543, + [544] = 544, + [545] = 545, + [546] = 546, + [547] = 547, + [548] = 548, + [549] = 549, + [550] = 550, + [551] = 551, + [552] = 521, + [553] = 553, + [554] = 554, + [555] = 555, + [556] = 556, + [557] = 557, + [558] = 514, + [559] = 559, + [560] = 560, + [561] = 534, + [562] = 535, + [563] = 540, + [564] = 541, + [565] = 547, + [566] = 550, + [567] = 567, + [568] = 568, + [569] = 569, + [570] = 570, + [571] = 571, + [572] = 515, + [573] = 516, + [574] = 517, + [575] = 518, + [576] = 519, + [577] = 520, + [578] = 522, + [579] = 523, + [580] = 524, + [581] = 567, + [582] = 525, + [583] = 526, + [584] = 527, + [585] = 528, + [586] = 529, + [587] = 530, + [588] = 560, + [589] = 531, + [590] = 532, + [591] = 533, + [592] = 536, + [593] = 537, + [594] = 538, + [595] = 539, + [596] = 568, + [597] = 569, + [598] = 542, + [599] = 543, + [600] = 544, + [601] = 545, + [602] = 546, + [603] = 548, + [604] = 549, + [605] = 570, + [606] = 571, + [607] = 553, + [608] = 554, + [609] = 555, + [610] = 556, + [611] = 557, + [612] = 612, + [613] = 559, + [614] = 614, + [615] = 615, + [616] = 616, + [617] = 617, + [618] = 615, + [619] = 619, + [620] = 620, + [621] = 621, + [622] = 615, + [623] = 615, + [624] = 624, + [625] = 615, + [626] = 615, + [627] = 627, + [628] = 628, + [629] = 629, + [630] = 630, + [631] = 627, + [632] = 632, + [633] = 633, + [634] = 634, + [635] = 628, + [636] = 629, + [637] = 628, + [638] = 629, + [639] = 630, + [640] = 640, + [641] = 641, + [642] = 642, + [643] = 633, + [644] = 634, + [645] = 632, + [646] = 628, + [647] = 629, + [648] = 630, + [649] = 640, + [650] = 634, + [651] = 642, + [652] = 633, + [653] = 634, + [654] = 640, + [655] = 627, + [656] = 632, + [657] = 657, + [658] = 627, + [659] = 632, + [660] = 641, + [661] = 630, + [662] = 662, + [663] = 628, + [664] = 629, + [665] = 630, + [666] = 640, + [667] = 641, + [668] = 642, + [669] = 633, + [670] = 634, + [671] = 642, + [672] = 640, + [673] = 627, + [674] = 632, + [675] = 657, + [676] = 657, + [677] = 657, + [678] = 678, + [679] = 657, + [680] = 641, + [681] = 628, + [682] = 629, + [683] = 630, + [684] = 640, + [685] = 641, + [686] = 642, + [687] = 633, + [688] = 634, + [689] = 633, + [690] = 627, + [691] = 632, + [692] = 657, + [693] = 642, + [694] = 641, + [695] = 695, + [696] = 696, + [697] = 697, + [698] = 698, + [699] = 699, + [700] = 700, + [701] = 701, + [702] = 702, + [703] = 703, + [704] = 704, + [705] = 705, + [706] = 706, + [707] = 707, + [708] = 708, + [709] = 709, + [710] = 710, + [711] = 711, + [712] = 712, + [713] = 713, + [714] = 714, + [715] = 715, + [716] = 716, + [717] = 717, + [718] = 718, + [719] = 719, + [720] = 720, + [721] = 721, + [722] = 722, + [723] = 723, + [724] = 724, + [725] = 719, + [726] = 726, + [727] = 727, + [728] = 728, + [729] = 729, + [730] = 730, + [731] = 731, + [732] = 732, + [733] = 733, + [734] = 734, + [735] = 735, + [736] = 736, + [737] = 737, + [738] = 738, + [739] = 739, + [740] = 734, + [741] = 741, + [742] = 742, + [743] = 743, + [744] = 616, + [745] = 617, + [746] = 619, + [747] = 620, + [748] = 748, + [749] = 749, + [750] = 736, + [751] = 737, + [752] = 738, + [753] = 739, + [754] = 741, + [755] = 742, + [756] = 743, + [757] = 748, + [758] = 749, + [759] = 759, + [760] = 735, + [761] = 759, + [762] = 620, + [763] = 624, + [764] = 713, + [765] = 616, + [766] = 719, + [767] = 621, + [768] = 624, + [769] = 616, + [770] = 617, + [771] = 619, + [772] = 719, + [773] = 773, + [774] = 774, + [775] = 619, + [776] = 620, + [777] = 712, + [778] = 617, + [779] = 719, + [780] = 773, + [781] = 774, + [782] = 621, + [783] = 734, + [784] = 759, + [785] = 735, + [786] = 736, + [787] = 737, + [788] = 738, + [789] = 739, + [790] = 735, + [791] = 741, + [792] = 742, + [793] = 743, + [794] = 621, + [795] = 624, + [796] = 736, + [797] = 748, + [798] = 749, + [799] = 737, + [800] = 738, + [801] = 739, + [802] = 734, + [803] = 759, + [804] = 742, + [805] = 743, + [806] = 695, + [807] = 696, + [808] = 697, + [809] = 698, + [810] = 735, + [811] = 759, + [812] = 736, + [813] = 737, + [814] = 738, + [815] = 739, + [816] = 734, + [817] = 741, + [818] = 742, + [819] = 743, + [820] = 748, + [821] = 749, + [822] = 719, + [823] = 748, + [824] = 749, + [825] = 741, + [826] = 773, + [827] = 696, + [828] = 736, + [829] = 737, + [830] = 698, + [831] = 738, + [832] = 739, + [833] = 734, + [834] = 509, + [835] = 741, + [836] = 742, + [837] = 743, + [838] = 502, + [839] = 839, + [840] = 773, + [841] = 697, + [842] = 774, + [843] = 748, + [844] = 749, + [845] = 759, + [846] = 846, + [847] = 695, + [848] = 735, + [849] = 494, + [850] = 695, + [851] = 698, + [852] = 852, + [853] = 774, + [854] = 854, + [855] = 855, + [856] = 856, + [857] = 513, + [858] = 462, + [859] = 696, + [860] = 860, + [861] = 697, + [862] = 856, + [863] = 773, + [864] = 465, + [865] = 774, + [866] = 720, + [867] = 716, + [868] = 710, + [869] = 705, + [870] = 712, + [871] = 713, + [872] = 706, + [873] = 707, + [874] = 708, + [875] = 709, + [876] = 294, + [877] = 699, + [878] = 732, + [879] = 721, + [880] = 726, + [881] = 727, + [882] = 728, + [883] = 729, + [884] = 730, + [885] = 731, + [886] = 706, + [887] = 722, + [888] = 700, + [889] = 702, + [890] = 307, + [891] = 705, + [892] = 717, + [893] = 714, + [894] = 716, + [895] = 718, + [896] = 732, + [897] = 711, + [898] = 701, + [899] = 703, + [900] = 704, + [901] = 710, + [902] = 708, + [903] = 718, + [904] = 733, + [905] = 712, + [906] = 733, + [907] = 721, + [908] = 724, + [909] = 714, + [910] = 726, + [911] = 773, + [912] = 774, + [913] = 727, + [914] = 701, + [915] = 494, + [916] = 703, + [917] = 704, + [918] = 713, + [919] = 502, + [920] = 728, + [921] = 729, + [922] = 730, + [923] = 731, + [924] = 724, + [925] = 513, + [926] = 723, + [927] = 927, + [928] = 928, + [929] = 722, + [930] = 700, + [931] = 699, + [932] = 932, + [933] = 933, + [934] = 934, + [935] = 935, + [936] = 702, + [937] = 707, + [938] = 723, + [939] = 715, + [940] = 717, + [941] = 720, + [942] = 715, + [943] = 711, + [944] = 709, + [945] = 706, + [946] = 710, + [947] = 294, + [948] = 722, + [949] = 699, + [950] = 702, + [951] = 307, + [952] = 715, + [953] = 724, + [954] = 717, + [955] = 714, + [956] = 716, + [957] = 718, + [958] = 720, + [959] = 732, + [960] = 711, + [961] = 701, + [962] = 703, + [963] = 723, + [964] = 964, + [965] = 704, + [966] = 707, + [967] = 721, + [968] = 708, + [969] = 705, + [970] = 726, + [971] = 727, + [972] = 839, + [973] = 852, + [974] = 728, + [975] = 709, + [976] = 729, + [977] = 733, + [978] = 730, + [979] = 979, + [980] = 980, + [981] = 731, + [982] = 982, + [983] = 700, + [984] = 984, + [985] = 985, + [986] = 986, + [987] = 987, + [988] = 988, + [989] = 989, + [990] = 989, + [991] = 991, + [992] = 991, + [993] = 993, + [994] = 994, + [995] = 989, + [996] = 996, + [997] = 991, + [998] = 998, + [999] = 999, + [1000] = 1000, + [1001] = 1001, + [1002] = 991, + [1003] = 989, + [1004] = 1004, + [1005] = 1005, + [1006] = 991, + [1007] = 989, + [1008] = 1008, + [1009] = 991, + [1010] = 1010, + [1011] = 989, + [1012] = 1012, + [1013] = 1013, + [1014] = 1014, + [1015] = 1014, + [1016] = 1014, + [1017] = 1014, + [1018] = 1014, + [1019] = 1019, + [1020] = 1014, + [1021] = 1021, + [1022] = 1022, + [1023] = 1023, + [1024] = 1024, + [1025] = 1025, + [1026] = 1025, + [1027] = 1023, + [1028] = 1028, + [1029] = 1028, + [1030] = 1030, + [1031] = 1031, + [1032] = 1032, + [1033] = 1033, + [1034] = 1034, + [1035] = 1035, + [1036] = 1036, + [1037] = 1037, + [1038] = 1038, + [1039] = 1039, + [1040] = 1040, + [1041] = 1041, + [1042] = 1042, + [1043] = 1033, + [1044] = 1035, + [1045] = 1037, + [1046] = 1034, + [1047] = 1033, + [1048] = 1036, + [1049] = 1049, + [1050] = 1035, + [1051] = 1037, + [1052] = 1052, + [1053] = 1033, + [1054] = 1036, + [1055] = 1035, + [1056] = 1037, + [1057] = 1033, + [1058] = 1036, + [1059] = 1035, + [1060] = 1034, + [1061] = 1034, + [1062] = 1062, + [1063] = 1063, + [1064] = 1064, + [1065] = 1065, + [1066] = 1066, + [1067] = 1067, + [1068] = 1063, + [1069] = 1065, + [1070] = 1070, + [1071] = 1071, + [1072] = 1072, + [1073] = 1066, + [1074] = 1070, + [1075] = 1067, + [1076] = 1067, + [1077] = 1077, + [1078] = 1078, + [1079] = 1066, + [1080] = 1067, + [1081] = 1081, + [1082] = 1064, + [1083] = 1081, + [1084] = 1066, + [1085] = 1071, + [1086] = 1081, + [1087] = 1077, + [1088] = 1081, + [1089] = 1062, + [1090] = 1090, + [1091] = 1091, + [1092] = 1092, + [1093] = 1093, + [1094] = 1094, + [1095] = 1095, + [1096] = 1096, + [1097] = 1097, + [1098] = 1098, + [1099] = 1099, + [1100] = 1100, + [1101] = 1101, + [1102] = 1071, + [1103] = 1064, + [1104] = 1062, + [1105] = 1063, + [1106] = 1065, + [1107] = 1070, + [1108] = 1071, + [1109] = 1071, + [1110] = 1110, + [1111] = 1111, + [1112] = 1096, + [1113] = 1113, + [1114] = 1114, + [1115] = 1115, + [1116] = 1116, + [1117] = 1117, + [1118] = 1113, + [1119] = 1119, + [1120] = 1120, + [1121] = 1063, + [1122] = 1122, + [1123] = 1065, + [1124] = 1124, + [1125] = 1125, + [1126] = 1126, + [1127] = 1127, + [1128] = 1128, + [1129] = 1031, + [1130] = 1130, + [1131] = 1131, + [1132] = 1132, + [1133] = 1133, + [1134] = 1134, + [1135] = 1030, + [1136] = 1136, + [1137] = 1137, + [1138] = 1138, + [1139] = 1139, + [1140] = 1140, + [1141] = 1096, + [1142] = 1142, + [1143] = 1143, + [1144] = 1070, + [1145] = 1077, + [1146] = 1146, + [1147] = 1147, + [1148] = 1093, + [1149] = 1077, + [1150] = 1064, + [1151] = 1062, + [1152] = 1063, + [1153] = 1065, + [1154] = 1154, + [1155] = 1155, + [1156] = 1064, + [1157] = 1070, + [1158] = 1031, + [1159] = 1159, + [1160] = 1160, + [1161] = 1161, + [1162] = 1162, + [1163] = 1062, + [1164] = 1117, + [1165] = 1077, + [1166] = 1125, + [1167] = 1167, + [1168] = 1030, + [1169] = 1169, + [1170] = 1170, + [1171] = 1171, + [1172] = 1172, + [1173] = 1173, + [1174] = 1174, + [1175] = 1175, + [1176] = 1031, + [1177] = 1177, + [1178] = 1178, + [1179] = 1179, + [1180] = 1180, + [1181] = 1173, + [1182] = 1182, + [1183] = 1183, + [1184] = 1184, + [1185] = 1185, + [1186] = 1186, + [1187] = 1171, + [1188] = 1077, + [1189] = 1183, + [1190] = 1170, + [1191] = 1125, + [1192] = 1064, + [1193] = 1062, + [1194] = 1063, + [1195] = 1065, + [1196] = 1196, + [1197] = 1197, + [1198] = 1170, + [1199] = 1117, + [1200] = 1200, + [1201] = 1201, + [1202] = 1093, + [1203] = 1203, + [1204] = 1204, + [1205] = 1186, + [1206] = 1206, + [1207] = 1204, + [1208] = 1070, + [1209] = 1071, + [1210] = 1030, + [1211] = 1211, + [1212] = 1170, + [1213] = 1213, + [1214] = 1214, + [1215] = 1215, + [1216] = 1216, + [1217] = 1217, + [1218] = 1218, + [1219] = 1216, + [1220] = 1220, + [1221] = 1221, + [1222] = 1221, + [1223] = 1223, + [1224] = 1224, + [1225] = 1225, + [1226] = 1226, + [1227] = 1227, + [1228] = 1228, + [1229] = 1229, + [1230] = 1230, + [1231] = 1231, + [1232] = 1215, + [1233] = 1233, + [1234] = 1032, + [1235] = 1235, + [1236] = 1236, + [1237] = 1235, + [1238] = 1238, + [1239] = 1239, + [1240] = 1236, + [1241] = 1233, + [1242] = 1242, + [1243] = 1243, + [1244] = 1244, + [1245] = 1245, + [1246] = 1246, + [1247] = 1247, + [1248] = 1248, + [1249] = 1249, + [1250] = 1172, + [1251] = 1229, + [1252] = 1252, + [1253] = 1253, + [1254] = 1230, + [1255] = 1255, + [1256] = 1256, + [1257] = 1257, + [1258] = 1183, + [1259] = 1259, + [1260] = 1215, + [1261] = 1261, + [1262] = 1262, + [1263] = 1263, + [1264] = 1264, + [1265] = 1265, + [1266] = 1266, + [1267] = 1267, + [1268] = 1268, + [1269] = 1269, + [1270] = 1270, + [1271] = 1271, + [1272] = 1272, + [1273] = 1267, + [1274] = 1274, + [1275] = 1275, + [1276] = 1276, + [1277] = 1277, + [1278] = 1229, + [1279] = 1279, + [1280] = 1221, + [1281] = 1256, + [1282] = 1214, + [1283] = 1283, + [1284] = 1284, + [1285] = 1285, + [1286] = 1286, + [1287] = 1265, + [1288] = 1288, + [1289] = 1049, + [1290] = 1290, + [1291] = 1291, + [1292] = 1292, + [1293] = 1293, + [1294] = 1294, + [1295] = 1295, + [1296] = 1296, + [1297] = 1297, + [1298] = 1298, + [1299] = 1299, + [1300] = 1300, + [1301] = 1301, + [1302] = 1302, + [1303] = 1303, + [1304] = 1304, + [1305] = 1298, + [1306] = 1306, + [1307] = 1297, + [1308] = 1308, + [1309] = 1309, + [1310] = 1302, + [1311] = 1311, + [1312] = 1312, + [1313] = 1313, + [1314] = 1314, + [1315] = 1315, + [1316] = 1316, + [1317] = 1039, + [1318] = 1040, + [1319] = 1319, + [1320] = 1320, + [1321] = 1321, + [1322] = 1322, + [1323] = 1323, + [1324] = 1324, + [1325] = 1325, + [1326] = 1326, + [1327] = 1327, + [1328] = 1271, + [1329] = 1275, + [1330] = 1290, + [1331] = 1331, + [1332] = 1332, + [1333] = 1303, + [1334] = 1334, + [1335] = 1297, + [1336] = 1336, + [1337] = 1337, + [1338] = 1338, + [1339] = 1297, + [1340] = 1340, + [1341] = 1341, + [1342] = 1342, + [1343] = 1303, + [1344] = 1344, + [1345] = 1297, + [1346] = 1322, + [1347] = 1334, + [1348] = 1332, + [1349] = 1349, + [1350] = 1295, + [1351] = 1351, + [1352] = 1349, + [1353] = 1353, + [1354] = 1354, + [1355] = 1355, + [1356] = 1356, + [1357] = 1357, + [1358] = 1267, + [1359] = 1359, + [1360] = 1360, + [1361] = 1351, + [1362] = 1362, + [1363] = 1304, + [1364] = 1364, + [1365] = 1365, + [1366] = 1297, + [1367] = 1255, + [1368] = 1368, + [1369] = 1301, + [1370] = 1323, + [1371] = 1371, + [1372] = 1372, + [1373] = 1332, + [1374] = 1374, + [1375] = 1375, + [1376] = 1376, + [1377] = 1377, + [1378] = 1378, + [1379] = 1379, + [1380] = 1223, + [1381] = 1381, + [1382] = 1306, + [1383] = 1383, + [1384] = 1309, + [1385] = 1385, + [1386] = 1386, + [1387] = 1387, + [1388] = 1388, + [1389] = 1389, + [1390] = 1390, + [1391] = 1391, + [1392] = 1392, + [1393] = 1393, + [1394] = 1394, + [1395] = 1368, + [1396] = 1396, + [1397] = 1387, + [1398] = 1388, + [1399] = 1399, + [1400] = 1383, + [1401] = 1401, + [1402] = 1402, + [1403] = 1403, + [1404] = 697, + [1405] = 1405, + [1406] = 1406, + [1407] = 1377, + [1408] = 1389, + [1409] = 1409, + [1410] = 1403, + [1411] = 1387, + [1412] = 1388, + [1413] = 1413, + [1414] = 1377, + [1415] = 1415, + [1416] = 1416, + [1417] = 1417, + [1418] = 1418, + [1419] = 1419, + [1420] = 1420, + [1421] = 1421, + [1422] = 1422, + [1423] = 1383, + [1424] = 1424, + [1425] = 1403, + [1426] = 1389, + [1427] = 1409, + [1428] = 1385, + [1429] = 1387, + [1430] = 1388, + [1431] = 1431, + [1432] = 1377, + [1433] = 1409, + [1434] = 1434, + [1435] = 1415, + [1436] = 1417, + [1437] = 1418, + [1438] = 1438, + [1439] = 1439, + [1440] = 1440, + [1441] = 1441, + [1442] = 1442, + [1443] = 1443, + [1444] = 1444, + [1445] = 1445, + [1446] = 1446, + [1447] = 1447, + [1448] = 1415, + [1449] = 1449, + [1450] = 1417, + [1451] = 1418, + [1452] = 1452, + [1453] = 1453, + [1454] = 1454, + [1455] = 1253, + [1456] = 1390, + [1457] = 1457, + [1458] = 1419, + [1459] = 1459, + [1460] = 1460, + [1461] = 1461, + [1462] = 1415, + [1463] = 1308, + [1464] = 1464, + [1465] = 1465, + [1466] = 1466, + [1467] = 1467, + [1468] = 1468, + [1469] = 1469, + [1470] = 695, + [1471] = 1376, + [1472] = 1472, + [1473] = 1473, + [1474] = 1474, + [1475] = 1475, + [1476] = 1476, + [1477] = 1477, + [1478] = 1478, + [1479] = 1342, + [1480] = 1480, + [1481] = 1417, + [1482] = 1218, + [1483] = 1418, + [1484] = 1484, + [1485] = 1389, + [1486] = 1486, + [1487] = 1353, + [1488] = 1359, + [1489] = 1383, + [1490] = 1403, + [1491] = 1409, + [1492] = 1492, + [1493] = 1453, + [1494] = 1457, + [1495] = 1495, + [1496] = 1496, + [1497] = 1497, + [1498] = 1498, + [1499] = 1460, + [1500] = 1500, + [1501] = 1501, + [1502] = 1217, + [1503] = 1503, + [1504] = 1496, + [1505] = 1473, + [1506] = 1443, + [1507] = 1507, + [1508] = 1508, + [1509] = 1509, + [1510] = 1510, + [1511] = 1511, + [1512] = 1512, + [1513] = 1513, + [1514] = 1514, + [1515] = 313, + [1516] = 1516, + [1517] = 1517, + [1518] = 1518, + [1519] = 1519, + [1520] = 1442, + [1521] = 320, + [1522] = 1522, + [1523] = 1523, + [1524] = 1524, + [1525] = 1525, + [1526] = 1526, + [1527] = 1527, + [1528] = 1528, + [1529] = 1529, + [1530] = 1530, + [1531] = 1531, + [1532] = 1532, + [1533] = 1533, + [1534] = 1534, + [1535] = 1535, + [1536] = 314, + [1537] = 1196, + [1538] = 317, + [1539] = 1539, + [1540] = 1486, + [1541] = 1541, + [1542] = 1542, + [1543] = 1511, + [1544] = 1544, + [1545] = 1421, + [1546] = 1513, + [1547] = 1547, + [1548] = 1548, + [1549] = 1510, + [1550] = 1550, + [1551] = 1551, + [1552] = 1548, + [1553] = 1553, + [1554] = 1541, + [1555] = 1555, + [1556] = 1556, + [1557] = 1557, + [1558] = 1558, + [1559] = 1559, + [1560] = 1560, + [1561] = 1561, + [1562] = 1562, + [1563] = 1563, + [1564] = 1564, + [1565] = 1550, + [1566] = 1566, + [1567] = 1510, + [1568] = 1568, + [1569] = 1569, + [1570] = 1570, + [1571] = 1571, + [1572] = 1572, + [1573] = 1573, + [1574] = 1574, + [1575] = 1575, + [1576] = 1557, + [1577] = 1577, + [1578] = 1512, + [1579] = 1579, + [1580] = 334, + [1581] = 1581, + [1582] = 1539, + [1583] = 1583, + [1584] = 1584, + [1585] = 1585, + [1586] = 1584, + [1587] = 1587, + [1588] = 1588, + [1589] = 1589, + [1590] = 1590, + [1591] = 1591, + [1592] = 1592, + [1593] = 1593, + [1594] = 1594, + [1595] = 1595, + [1596] = 1596, + [1597] = 1597, + [1598] = 1598, + [1599] = 1599, + [1600] = 1600, + [1601] = 1601, + [1602] = 1600, + [1603] = 1603, + [1604] = 1593, + [1605] = 1605, + [1606] = 1588, + [1607] = 1589, + [1608] = 1608, + [1609] = 1609, + [1610] = 1610, + [1611] = 1611, + [1612] = 1612, + [1613] = 1592, + [1614] = 1614, + [1615] = 1591, + [1616] = 1616, + [1617] = 1617, + [1618] = 1617, + [1619] = 1619, + [1620] = 1620, + [1621] = 1621, + [1622] = 1622, + [1623] = 1623, + [1624] = 1614, + [1625] = 1610, + [1626] = 1591, + [1627] = 1627, + [1628] = 1628, + [1629] = 1629, + [1630] = 1630, + [1631] = 1631, + [1632] = 1605, + [1633] = 1594, + [1634] = 1612, + [1635] = 1584, + [1636] = 1636, + [1637] = 1603, + [1638] = 1638, + [1639] = 1583, + [1640] = 1640, + [1641] = 1641, + [1642] = 1616, + [1643] = 1643, + [1644] = 1644, + [1645] = 1627, + [1646] = 1609, + [1647] = 1647, + [1648] = 1648, + [1649] = 1627, + [1650] = 1631, + [1651] = 1605, + [1652] = 1587, + [1653] = 1653, + [1654] = 1654, + [1655] = 1655, + [1656] = 1594, + [1657] = 1657, + [1658] = 1658, + [1659] = 1659, + [1660] = 1653, + [1661] = 1661, + [1662] = 1662, + [1663] = 1663, + [1664] = 1664, + [1665] = 1596, + [1666] = 1608, + [1667] = 1667, + [1668] = 1593, + [1669] = 1653, + [1670] = 1597, + [1671] = 1612, + [1672] = 1672, + [1673] = 1593, + [1674] = 1612, + [1675] = 1591, + [1676] = 1590, + [1677] = 1614, + [1678] = 1596, + [1679] = 1594, + [1680] = 1680, + [1681] = 1636, + [1682] = 1682, + [1683] = 1596, + [1684] = 1684, + [1685] = 1685, + [1686] = 1592, + [1687] = 1600, + [1688] = 1688, + [1689] = 1621, + [1690] = 1593, + [1691] = 1629, + [1692] = 1641, + [1693] = 1653, + [1694] = 1584, + [1695] = 1605, + [1696] = 1696, + [1697] = 1622, + [1698] = 1667, + [1699] = 1644, + [1700] = 1612, + [1701] = 1701, + [1702] = 1702, + [1703] = 1703, + [1704] = 1611, + [1705] = 1600, + [1706] = 1592, + [1707] = 1707, + [1708] = 1614, + [1709] = 1709, + [1710] = 1601, + [1711] = 1593, + [1712] = 1688, + [1713] = 1619, + [1714] = 1599, + [1715] = 1627, + [1716] = 1661, + [1717] = 1685, + [1718] = 1631, + [1719] = 1672, + [1720] = 1612, + [1721] = 1631, + [1722] = 1722, +}; -static inline bool sym_identifier_character_set_2(int32_t c) { - return (c < 43052 - ? (c < 3718 - ? (c < 2730 - ? (c < 2042 - ? (c < 1015 - ? (c < 710 - ? (c < 181 - ? (c < '_' - ? (c < 'A' - ? (c >= '0' && c <= '9') - : c <= 'Z') - : (c <= '_' || (c < 170 - ? (c >= 'a' && c <= 'z') - : c <= 170))) - : (c <= 181 || (c < 192 - ? (c < 186 - ? c == 183 - : c <= 186) - : (c <= 214 || (c < 248 - ? (c >= 216 && c <= 246) - : c <= 705))))) - : (c <= 721 || (c < 891 - ? (c < 750 - ? (c < 748 - ? (c >= 736 && c <= 740) - : c <= 748) - : (c <= 750 || (c < 886 - ? (c >= 768 && c <= 884) - : c <= 887))) - : (c <= 893 || (c < 908 - ? (c < 902 - ? c == 895 - : c <= 906) - : (c <= 908 || (c < 931 - ? (c >= 910 && c <= 929) - : c <= 1013))))))) - : (c <= 1153 || (c < 1519 - ? (c < 1425 - ? (c < 1329 - ? (c < 1162 - ? (c >= 1155 && c <= 1159) - : c <= 1327) - : (c <= 1366 || (c < 1376 - ? c == 1369 - : c <= 1416))) - : (c <= 1469 || (c < 1476 - ? (c < 1473 - ? c == 1471 - : c <= 1474) - : (c <= 1477 || (c < 1488 - ? c == 1479 - : c <= 1514))))) - : (c <= 1522 || (c < 1770 - ? (c < 1646 - ? (c < 1568 - ? (c >= 1552 && c <= 1562) - : c <= 1641) - : (c <= 1747 || (c < 1759 - ? (c >= 1749 && c <= 1756) - : c <= 1768))) - : (c <= 1788 || (c < 1869 - ? (c < 1808 - ? c == 1791 - : c <= 1866) - : (c <= 1969 || (c >= 1984 && c <= 2037))))))))) - : (c <= 2042 || (c < 2534 - ? (c < 2447 - ? (c < 2230 - ? (c < 2112 - ? (c < 2048 - ? c == 2045 - : c <= 2093) - : (c <= 2139 || (c < 2208 - ? (c >= 2144 && c <= 2154) - : c <= 2228))) - : (c <= 2247 || (c < 2406 - ? (c < 2275 - ? (c >= 2259 && c <= 2273) - : c <= 2403) - : (c <= 2415 || (c < 2437 - ? (c >= 2417 && c <= 2435) - : c <= 2444))))) - : (c <= 2448 || (c < 2503 - ? (c < 2482 - ? (c < 2474 - ? (c >= 2451 && c <= 2472) - : c <= 2480) - : (c <= 2482 || (c < 2492 - ? (c >= 2486 && c <= 2489) - : c <= 2500))) - : (c <= 2504 || (c < 2524 - ? (c < 2519 - ? (c >= 2507 && c <= 2510) - : c <= 2519) - : (c <= 2525 || (c >= 2527 && c <= 2531))))))) - : (c <= 2545 || (c < 2622 - ? (c < 2579 - ? (c < 2561 - ? (c < 2558 - ? c == 2556 - : c <= 2558) - : (c <= 2563 || (c < 2575 - ? (c >= 2565 && c <= 2570) - : c <= 2576))) - : (c <= 2600 || (c < 2613 - ? (c < 2610 - ? (c >= 2602 && c <= 2608) - : c <= 2611) - : (c <= 2614 || (c < 2620 - ? (c >= 2616 && c <= 2617) - : c <= 2620))))) - : (c <= 2626 || (c < 2662 - ? (c < 2641 - ? (c < 2635 - ? (c >= 2631 && c <= 2632) - : c <= 2637) - : (c <= 2641 || (c < 2654 - ? (c >= 2649 && c <= 2652) - : c <= 2654))) - : (c <= 2677 || (c < 2703 - ? (c < 2693 - ? (c >= 2689 && c <= 2691) - : c <= 2701) - : (c <= 2705 || (c >= 2707 && c <= 2728))))))))))) - : (c <= 2736 || (c < 3142 - ? (c < 2918 - ? (c < 2831 - ? (c < 2768 - ? (c < 2748 - ? (c < 2741 - ? (c >= 2738 && c <= 2739) - : c <= 2745) - : (c <= 2757 || (c < 2763 - ? (c >= 2759 && c <= 2761) - : c <= 2765))) - : (c <= 2768 || (c < 2809 - ? (c < 2790 - ? (c >= 2784 && c <= 2787) - : c <= 2799) - : (c <= 2815 || (c < 2821 - ? (c >= 2817 && c <= 2819) - : c <= 2828))))) - : (c <= 2832 || (c < 2887 - ? (c < 2866 - ? (c < 2858 - ? (c >= 2835 && c <= 2856) - : c <= 2864) - : (c <= 2867 || (c < 2876 - ? (c >= 2869 && c <= 2873) - : c <= 2884))) - : (c <= 2888 || (c < 2908 - ? (c < 2901 - ? (c >= 2891 && c <= 2893) - : c <= 2903) - : (c <= 2909 || (c >= 2911 && c <= 2915))))))) - : (c <= 2927 || (c < 3006 - ? (c < 2969 - ? (c < 2949 - ? (c < 2946 - ? c == 2929 - : c <= 2947) - : (c <= 2954 || (c < 2962 - ? (c >= 2958 && c <= 2960) - : c <= 2965))) - : (c <= 2970 || (c < 2979 - ? (c < 2974 - ? c == 2972 - : c <= 2975) - : (c <= 2980 || (c < 2990 - ? (c >= 2984 && c <= 2986) - : c <= 3001))))) - : (c <= 3010 || (c < 3072 - ? (c < 3024 - ? (c < 3018 - ? (c >= 3014 && c <= 3016) - : c <= 3021) - : (c <= 3024 || (c < 3046 - ? c == 3031 - : c <= 3055))) - : (c <= 3084 || (c < 3114 - ? (c < 3090 - ? (c >= 3086 && c <= 3088) - : c <= 3112) - : (c <= 3129 || (c >= 3133 && c <= 3140))))))))) - : (c <= 3144 || (c < 3398 - ? (c < 3260 - ? (c < 3200 - ? (c < 3160 - ? (c < 3157 - ? (c >= 3146 && c <= 3149) - : c <= 3158) - : (c <= 3162 || (c < 3174 - ? (c >= 3168 && c <= 3171) - : c <= 3183))) - : (c <= 3203 || (c < 3218 - ? (c < 3214 - ? (c >= 3205 && c <= 3212) - : c <= 3216) - : (c <= 3240 || (c < 3253 - ? (c >= 3242 && c <= 3251) - : c <= 3257))))) - : (c <= 3268 || (c < 3302 - ? (c < 3285 - ? (c < 3274 - ? (c >= 3270 && c <= 3272) - : c <= 3277) - : (c <= 3286 || (c < 3296 - ? c == 3294 - : c <= 3299))) - : (c <= 3311 || (c < 3342 - ? (c < 3328 - ? (c >= 3313 && c <= 3314) - : c <= 3340) - : (c <= 3344 || (c >= 3346 && c <= 3396))))))) - : (c <= 3400 || (c < 3530 - ? (c < 3457 - ? (c < 3423 - ? (c < 3412 - ? (c >= 3402 && c <= 3406) - : c <= 3415) - : (c <= 3427 || (c < 3450 - ? (c >= 3430 && c <= 3439) - : c <= 3455))) - : (c <= 3459 || (c < 3507 - ? (c < 3482 - ? (c >= 3461 && c <= 3478) - : c <= 3505) - : (c <= 3515 || (c < 3520 - ? c == 3517 - : c <= 3526))))) - : (c <= 3530 || (c < 3585 - ? (c < 3544 - ? (c < 3542 - ? (c >= 3535 && c <= 3540) - : c <= 3542) - : (c <= 3551 || (c < 3570 - ? (c >= 3558 && c <= 3567) - : c <= 3571))) - : (c <= 3642 || (c < 3713 - ? (c < 3664 - ? (c >= 3648 && c <= 3662) - : c <= 3673) - : (c <= 3714 || c == 3716)))))))))))) - : (c <= 3722 || (c < 7296 - ? (c < 5024 - ? (c < 4256 - ? (c < 3893 - ? (c < 3784 - ? (c < 3751 - ? (c < 3749 - ? (c >= 3724 && c <= 3747) - : c <= 3749) - : (c <= 3773 || (c < 3782 - ? (c >= 3776 && c <= 3780) - : c <= 3782))) - : (c <= 3789 || (c < 3840 - ? (c < 3804 - ? (c >= 3792 && c <= 3801) - : c <= 3807) - : (c <= 3840 || (c < 3872 - ? (c >= 3864 && c <= 3865) - : c <= 3881))))) - : (c <= 3893 || (c < 3974 - ? (c < 3902 - ? (c < 3897 - ? c == 3895 - : c <= 3897) - : (c <= 3911 || (c < 3953 - ? (c >= 3913 && c <= 3948) - : c <= 3972))) - : (c <= 3991 || (c < 4096 - ? (c < 4038 - ? (c >= 3993 && c <= 4028) - : c <= 4038) - : (c <= 4169 || (c >= 4176 && c <= 4253))))))) - : (c <= 4293 || (c < 4786 - ? (c < 4688 - ? (c < 4304 - ? (c < 4301 - ? c == 4295 - : c <= 4301) - : (c <= 4346 || (c < 4682 - ? (c >= 4348 && c <= 4680) - : c <= 4685))) - : (c <= 4694 || (c < 4704 - ? (c < 4698 - ? c == 4696 - : c <= 4701) - : (c <= 4744 || (c < 4752 - ? (c >= 4746 && c <= 4749) - : c <= 4784))))) - : (c <= 4789 || (c < 4882 - ? (c < 4802 - ? (c < 4800 - ? (c >= 4792 && c <= 4798) - : c <= 4800) - : (c <= 4805 || (c < 4824 - ? (c >= 4808 && c <= 4822) - : c <= 4880))) - : (c <= 4885 || (c < 4969 - ? (c < 4957 - ? (c >= 4888 && c <= 4954) - : c <= 4959) - : (c <= 4977 || (c >= 4992 && c <= 5007))))))))) - : (c <= 5109 || (c < 6400 - ? (c < 5998 - ? (c < 5870 - ? (c < 5743 - ? (c < 5121 - ? (c >= 5112 && c <= 5117) - : c <= 5740) - : (c <= 5759 || (c < 5792 - ? (c >= 5761 && c <= 5786) - : c <= 5866))) - : (c <= 5880 || (c < 5920 - ? (c < 5902 - ? (c >= 5888 && c <= 5900) - : c <= 5908) - : (c <= 5940 || (c < 5984 - ? (c >= 5952 && c <= 5971) - : c <= 5996))))) - : (c <= 6000 || (c < 6155 - ? (c < 6103 - ? (c < 6016 - ? (c >= 6002 && c <= 6003) - : c <= 6099) - : (c <= 6103 || (c < 6112 - ? (c >= 6108 && c <= 6109) - : c <= 6121))) - : (c <= 6157 || (c < 6272 - ? (c < 6176 - ? (c >= 6160 && c <= 6169) - : c <= 6264) - : (c <= 6314 || (c >= 6320 && c <= 6389))))))) - : (c <= 6430 || (c < 6800 - ? (c < 6576 - ? (c < 6470 - ? (c < 6448 - ? (c >= 6432 && c <= 6443) - : c <= 6459) - : (c <= 6509 || (c < 6528 - ? (c >= 6512 && c <= 6516) - : c <= 6571))) - : (c <= 6601 || (c < 6688 - ? (c < 6656 - ? (c >= 6608 && c <= 6618) - : c <= 6683) - : (c <= 6750 || (c < 6783 - ? (c >= 6752 && c <= 6780) - : c <= 6793))))) - : (c <= 6809 || (c < 7019 - ? (c < 6847 - ? (c < 6832 - ? c == 6823 - : c <= 6845) - : (c <= 6848 || (c < 6992 - ? (c >= 6912 && c <= 6987) - : c <= 7001))) - : (c <= 7027 || (c < 7232 - ? (c < 7168 - ? (c >= 7040 && c <= 7155) - : c <= 7223) - : (c <= 7241 || (c >= 7245 && c <= 7293))))))))))) - : (c <= 7304 || (c < 11264 - ? (c < 8178 - ? (c < 8027 - ? (c < 7675 - ? (c < 7376 - ? (c < 7357 - ? (c >= 7312 && c <= 7354) - : c <= 7359) - : (c <= 7378 || (c < 7424 - ? (c >= 7380 && c <= 7418) - : c <= 7673))) - : (c <= 7957 || (c < 8008 - ? (c < 7968 - ? (c >= 7960 && c <= 7965) - : c <= 8005) - : (c <= 8013 || (c < 8025 - ? (c >= 8016 && c <= 8023) - : c <= 8025))))) - : (c <= 8027 || (c < 8130 - ? (c < 8064 - ? (c < 8031 - ? c == 8029 - : c <= 8061) - : (c <= 8116 || (c < 8126 - ? (c >= 8118 && c <= 8124) - : c <= 8126))) - : (c <= 8132 || (c < 8150 - ? (c < 8144 - ? (c >= 8134 && c <= 8140) - : c <= 8147) - : (c <= 8155 || (c >= 8160 && c <= 8172))))))) - : (c <= 8180 || (c < 8458 - ? (c < 8336 - ? (c < 8276 - ? (c < 8255 - ? (c >= 8182 && c <= 8188) - : c <= 8256) - : (c <= 8276 || (c < 8319 - ? c == 8305 - : c <= 8319))) - : (c <= 8348 || (c < 8421 - ? (c < 8417 - ? (c >= 8400 && c <= 8412) - : c <= 8417) - : (c <= 8432 || (c < 8455 - ? c == 8450 - : c <= 8455))))) - : (c <= 8467 || (c < 8490 - ? (c < 8484 - ? (c < 8472 - ? c == 8469 - : c <= 8477) - : (c <= 8484 || (c < 8488 - ? c == 8486 - : c <= 8488))) - : (c <= 8505 || (c < 8526 - ? (c < 8517 - ? (c >= 8508 && c <= 8511) - : c <= 8521) - : (c <= 8526 || (c >= 8544 && c <= 8584))))))))) - : (c <= 11310 || (c < 12353 - ? (c < 11696 - ? (c < 11565 - ? (c < 11499 - ? (c < 11360 - ? (c >= 11312 && c <= 11358) - : c <= 11492) - : (c <= 11507 || (c < 11559 - ? (c >= 11520 && c <= 11557) - : c <= 11559))) - : (c <= 11565 || (c < 11647 - ? (c < 11631 - ? (c >= 11568 && c <= 11623) - : c <= 11631) - : (c <= 11670 || (c < 11688 - ? (c >= 11680 && c <= 11686) - : c <= 11694))))) - : (c <= 11702 || (c < 11744 - ? (c < 11720 - ? (c < 11712 - ? (c >= 11704 && c <= 11710) - : c <= 11718) - : (c <= 11726 || (c < 11736 - ? (c >= 11728 && c <= 11734) - : c <= 11742))) - : (c <= 11775 || (c < 12337 - ? (c < 12321 - ? (c >= 12293 && c <= 12295) - : c <= 12335) - : (c <= 12341 || (c >= 12344 && c <= 12348))))))) - : (c <= 12438 || (c < 42192 - ? (c < 12593 - ? (c < 12449 - ? (c < 12445 - ? (c >= 12441 && c <= 12442) - : c <= 12447) - : (c <= 12538 || (c < 12549 - ? (c >= 12540 && c <= 12543) - : c <= 12591))) - : (c <= 12686 || (c < 13312 - ? (c < 12784 - ? (c >= 12704 && c <= 12735) - : c <= 12799) - : (c <= 19903 || (c < 40960 - ? (c >= 19968 && c <= 40956) - : c <= 42124))))) - : (c <= 42237 || (c < 42775 - ? (c < 42560 - ? (c < 42512 - ? (c >= 42240 && c <= 42508) - : c <= 42539) - : (c <= 42607 || (c < 42623 - ? (c >= 42612 && c <= 42621) - : c <= 42737))) - : (c <= 42783 || (c < 42946 - ? (c < 42891 - ? (c >= 42786 && c <= 42888) - : c <= 42943) - : (c <= 42954 || (c >= 42997 && c <= 43047))))))))))))))) - : (c <= 43052 || (c < 71096 - ? (c < 66864 - ? (c < 64914 - ? (c < 43816 - ? (c < 43520 - ? (c < 43261 - ? (c < 43216 - ? (c < 43136 - ? (c >= 43072 && c <= 43123) - : c <= 43205) - : (c <= 43225 || (c < 43259 - ? (c >= 43232 && c <= 43255) - : c <= 43259))) - : (c <= 43309 || (c < 43392 - ? (c < 43360 - ? (c >= 43312 && c <= 43347) - : c <= 43388) - : (c <= 43456 || (c < 43488 - ? (c >= 43471 && c <= 43481) - : c <= 43518))))) - : (c <= 43574 || (c < 43744 - ? (c < 43616 - ? (c < 43600 - ? (c >= 43584 && c <= 43597) - : c <= 43609) - : (c <= 43638 || (c < 43739 - ? (c >= 43642 && c <= 43714) - : c <= 43741))) - : (c <= 43759 || (c < 43785 - ? (c < 43777 - ? (c >= 43762 && c <= 43766) - : c <= 43782) - : (c <= 43790 || (c < 43808 - ? (c >= 43793 && c <= 43798) - : c <= 43814))))))) - : (c <= 43822 || (c < 64275 - ? (c < 44032 - ? (c < 43888 - ? (c < 43868 - ? (c >= 43824 && c <= 43866) - : c <= 43881) - : (c <= 44010 || (c < 44016 - ? (c >= 44012 && c <= 44013) - : c <= 44025))) - : (c <= 55203 || (c < 63744 - ? (c < 55243 - ? (c >= 55216 && c <= 55238) - : c <= 55291) - : (c <= 64109 || (c < 64256 - ? (c >= 64112 && c <= 64217) - : c <= 64262))))) - : (c <= 64279 || (c < 64323 - ? (c < 64312 - ? (c < 64298 - ? (c >= 64285 && c <= 64296) - : c <= 64310) - : (c <= 64316 || (c < 64320 - ? c == 64318 - : c <= 64321))) - : (c <= 64324 || (c < 64612 - ? (c < 64467 - ? (c >= 64326 && c <= 64433) - : c <= 64605) - : (c <= 64829 || (c >= 64848 && c <= 64911))))))))) - : (c <= 64967 || (c < 65549 - ? (c < 65151 - ? (c < 65137 - ? (c < 65056 - ? (c < 65024 - ? (c >= 65008 && c <= 65017) - : c <= 65039) - : (c <= 65071 || (c < 65101 - ? (c >= 65075 && c <= 65076) - : c <= 65103))) - : (c <= 65137 || (c < 65145 - ? (c < 65143 - ? c == 65139 - : c <= 65143) - : (c <= 65145 || (c < 65149 - ? c == 65147 - : c <= 65149))))) - : (c <= 65276 || (c < 65474 - ? (c < 65343 - ? (c < 65313 - ? (c >= 65296 && c <= 65305) - : c <= 65338) - : (c <= 65343 || (c < 65382 - ? (c >= 65345 && c <= 65370) - : c <= 65470))) - : (c <= 65479 || (c < 65498 - ? (c < 65490 - ? (c >= 65482 && c <= 65487) - : c <= 65495) - : (c <= 65500 || (c >= 65536 && c <= 65547))))))) - : (c <= 65574 || (c < 66349 - ? (c < 65856 - ? (c < 65599 - ? (c < 65596 - ? (c >= 65576 && c <= 65594) - : c <= 65597) - : (c <= 65613 || (c < 65664 - ? (c >= 65616 && c <= 65629) - : c <= 65786))) - : (c <= 65908 || (c < 66208 - ? (c < 66176 - ? c == 66045 - : c <= 66204) - : (c <= 66256 || (c < 66304 - ? c == 66272 - : c <= 66335))))) - : (c <= 66378 || (c < 66560 - ? (c < 66464 - ? (c < 66432 - ? (c >= 66384 && c <= 66426) - : c <= 66461) - : (c <= 66499 || (c < 66513 - ? (c >= 66504 && c <= 66511) - : c <= 66517))) - : (c <= 66717 || (c < 66776 - ? (c < 66736 - ? (c >= 66720 && c <= 66729) - : c <= 66771) - : (c <= 66811 || (c >= 66816 && c <= 66855))))))))))) - : (c <= 66915 || (c < 69632 - ? (c < 68152 - ? (c < 67808 - ? (c < 67594 - ? (c < 67424 - ? (c < 67392 - ? (c >= 67072 && c <= 67382) - : c <= 67413) - : (c <= 67431 || (c < 67592 - ? (c >= 67584 && c <= 67589) - : c <= 67592))) - : (c <= 67637 || (c < 67647 - ? (c < 67644 - ? (c >= 67639 && c <= 67640) - : c <= 67644) - : (c <= 67669 || (c < 67712 - ? (c >= 67680 && c <= 67702) - : c <= 67742))))) - : (c <= 67826 || (c < 68096 - ? (c < 67872 - ? (c < 67840 - ? (c >= 67828 && c <= 67829) - : c <= 67861) - : (c <= 67897 || (c < 68030 - ? (c >= 67968 && c <= 68023) - : c <= 68031))) - : (c <= 68099 || (c < 68117 - ? (c < 68108 - ? (c >= 68101 && c <= 68102) - : c <= 68115) - : (c <= 68119 || (c >= 68121 && c <= 68149))))))) - : (c <= 68154 || (c < 68800 - ? (c < 68352 - ? (c < 68224 - ? (c < 68192 - ? c == 68159 - : c <= 68220) - : (c <= 68252 || (c < 68297 - ? (c >= 68288 && c <= 68295) - : c <= 68326))) - : (c <= 68405 || (c < 68480 - ? (c < 68448 - ? (c >= 68416 && c <= 68437) - : c <= 68466) - : (c <= 68497 || (c < 68736 - ? (c >= 68608 && c <= 68680) - : c <= 68786))))) - : (c <= 68850 || (c < 69376 - ? (c < 69248 - ? (c < 68912 - ? (c >= 68864 && c <= 68903) - : c <= 68921) - : (c <= 69289 || (c < 69296 - ? (c >= 69291 && c <= 69292) - : c <= 69297))) - : (c <= 69404 || (c < 69552 - ? (c < 69424 - ? c == 69415 - : c <= 69456) - : (c <= 69572 || (c >= 69600 && c <= 69622))))))))) - : (c <= 69702 || (c < 70384 - ? (c < 70094 - ? (c < 69942 - ? (c < 69840 - ? (c < 69759 - ? (c >= 69734 && c <= 69743) - : c <= 69818) - : (c <= 69864 || (c < 69888 - ? (c >= 69872 && c <= 69881) - : c <= 69940))) - : (c <= 69951 || (c < 70006 - ? (c < 69968 - ? (c >= 69956 && c <= 69959) - : c <= 70003) - : (c <= 70006 || (c < 70089 - ? (c >= 70016 && c <= 70084) - : c <= 70092))))) - : (c <= 70106 || (c < 70280 - ? (c < 70163 - ? (c < 70144 - ? c == 70108 - : c <= 70161) - : (c <= 70199 || (c < 70272 - ? c == 70206 - : c <= 70278))) - : (c <= 70280 || (c < 70303 - ? (c < 70287 - ? (c >= 70282 && c <= 70285) - : c <= 70301) - : (c <= 70312 || (c >= 70320 && c <= 70378))))))) - : (c <= 70393 || (c < 70487 - ? (c < 70450 - ? (c < 70415 - ? (c < 70405 - ? (c >= 70400 && c <= 70403) - : c <= 70412) - : (c <= 70416 || (c < 70442 - ? (c >= 70419 && c <= 70440) - : c <= 70448))) - : (c <= 70451 || (c < 70471 - ? (c < 70459 - ? (c >= 70453 && c <= 70457) - : c <= 70468) - : (c <= 70472 || (c < 70480 - ? (c >= 70475 && c <= 70477) - : c <= 70480))))) - : (c <= 70487 || (c < 70750 - ? (c < 70512 - ? (c < 70502 - ? (c >= 70493 && c <= 70499) - : c <= 70508) - : (c <= 70516 || (c < 70736 - ? (c >= 70656 && c <= 70730) - : c <= 70745))) - : (c <= 70753 || (c < 70864 - ? (c < 70855 - ? (c >= 70784 && c <= 70853) - : c <= 70855) - : (c <= 70873 || (c >= 71040 && c <= 71093))))))))))))) - : (c <= 71104 || (c < 119894 - ? (c < 73104 - ? (c < 72163 - ? (c < 71935 - ? (c < 71360 - ? (c < 71236 - ? (c < 71168 - ? (c >= 71128 && c <= 71133) - : c <= 71232) - : (c <= 71236 || (c < 71296 - ? (c >= 71248 && c <= 71257) - : c <= 71352))) - : (c <= 71369 || (c < 71472 - ? (c < 71453 - ? (c >= 71424 && c <= 71450) - : c <= 71467) - : (c <= 71481 || (c < 71840 - ? (c >= 71680 && c <= 71738) - : c <= 71913))))) - : (c <= 71942 || (c < 71995 - ? (c < 71957 - ? (c < 71948 - ? c == 71945 - : c <= 71955) - : (c <= 71958 || (c < 71991 - ? (c >= 71960 && c <= 71989) - : c <= 71992))) - : (c <= 72003 || (c < 72106 - ? (c < 72096 - ? (c >= 72016 && c <= 72025) - : c <= 72103) - : (c <= 72151 || (c >= 72154 && c <= 72161))))))) - : (c <= 72164 || (c < 72873 - ? (c < 72704 - ? (c < 72272 - ? (c < 72263 - ? (c >= 72192 && c <= 72254) - : c <= 72263) - : (c <= 72345 || (c < 72384 - ? c == 72349 - : c <= 72440))) - : (c <= 72712 || (c < 72784 - ? (c < 72760 - ? (c >= 72714 && c <= 72758) - : c <= 72768) - : (c <= 72793 || (c < 72850 - ? (c >= 72818 && c <= 72847) - : c <= 72871))))) - : (c <= 72886 || (c < 73023 - ? (c < 72971 - ? (c < 72968 - ? (c >= 72960 && c <= 72966) - : c <= 72969) - : (c <= 73014 || (c < 73020 - ? c == 73018 - : c <= 73021))) - : (c <= 73031 || (c < 73063 - ? (c < 73056 - ? (c >= 73040 && c <= 73049) - : c <= 73061) - : (c <= 73064 || (c >= 73066 && c <= 73102))))))))) - : (c <= 73105 || (c < 94095 - ? (c < 92768 - ? (c < 74752 - ? (c < 73440 - ? (c < 73120 - ? (c >= 73107 && c <= 73112) - : c <= 73129) - : (c <= 73462 || (c < 73728 - ? c == 73648 - : c <= 74649))) - : (c <= 74862 || (c < 82944 - ? (c < 77824 - ? (c >= 74880 && c <= 75075) - : c <= 78894) - : (c <= 83526 || (c < 92736 - ? (c >= 92160 && c <= 92728) - : c <= 92766))))) - : (c <= 92777 || (c < 93027 - ? (c < 92928 - ? (c < 92912 - ? (c >= 92880 && c <= 92909) - : c <= 92916) - : (c <= 92982 || (c < 93008 - ? (c >= 92992 && c <= 92995) - : c <= 93017))) - : (c <= 93047 || (c < 93952 - ? (c < 93760 - ? (c >= 93053 && c <= 93071) - : c <= 93823) - : (c <= 94026 || (c >= 94031 && c <= 94087))))))) - : (c <= 94111 || (c < 113776 - ? (c < 101632 - ? (c < 94192 - ? (c < 94179 - ? (c >= 94176 && c <= 94177) - : c <= 94180) - : (c <= 94193 || (c < 100352 - ? (c >= 94208 && c <= 100343) - : c <= 101589))) - : (c <= 101640 || (c < 110948 - ? (c < 110928 - ? (c >= 110592 && c <= 110878) - : c <= 110930) - : (c <= 110951 || (c < 113664 - ? (c >= 110960 && c <= 111355) - : c <= 113770))))) - : (c <= 113788 || (c < 119163 - ? (c < 113821 - ? (c < 113808 - ? (c >= 113792 && c <= 113800) - : c <= 113817) - : (c <= 113822 || (c < 119149 - ? (c >= 119141 && c <= 119145) - : c <= 119154))) - : (c <= 119170 || (c < 119362 - ? (c < 119210 - ? (c >= 119173 && c <= 119179) - : c <= 119213) - : (c <= 119364 || (c >= 119808 && c <= 119892))))))))))) - : (c <= 119964 || (c < 124928 - ? (c < 120630 - ? (c < 120094 - ? (c < 119995 - ? (c < 119973 - ? (c < 119970 - ? (c >= 119966 && c <= 119967) - : c <= 119970) - : (c <= 119974 || (c < 119982 - ? (c >= 119977 && c <= 119980) - : c <= 119993))) - : (c <= 119995 || (c < 120071 - ? (c < 120005 - ? (c >= 119997 && c <= 120003) - : c <= 120069) - : (c <= 120074 || (c < 120086 - ? (c >= 120077 && c <= 120084) - : c <= 120092))))) - : (c <= 120121 || (c < 120488 - ? (c < 120134 - ? (c < 120128 - ? (c >= 120123 && c <= 120126) - : c <= 120132) - : (c <= 120134 || (c < 120146 - ? (c >= 120138 && c <= 120144) - : c <= 120485))) - : (c <= 120512 || (c < 120572 - ? (c < 120540 - ? (c >= 120514 && c <= 120538) - : c <= 120570) - : (c <= 120596 || (c >= 120598 && c <= 120628))))))) - : (c <= 120654 || (c < 121505 - ? (c < 120782 - ? (c < 120714 - ? (c < 120688 - ? (c >= 120656 && c <= 120686) - : c <= 120712) - : (c <= 120744 || (c < 120772 - ? (c >= 120746 && c <= 120770) - : c <= 120779))) - : (c <= 120831 || (c < 121461 - ? (c < 121403 - ? (c >= 121344 && c <= 121398) - : c <= 121452) - : (c <= 121461 || (c < 121499 - ? c == 121476 - : c <= 121503))))) - : (c <= 121519 || (c < 123136 - ? (c < 122907 - ? (c < 122888 - ? (c >= 122880 && c <= 122886) - : c <= 122904) - : (c <= 122913 || (c < 122918 - ? (c >= 122915 && c <= 122916) - : c <= 122922))) - : (c <= 123180 || (c < 123214 - ? (c < 123200 - ? (c >= 123184 && c <= 123197) - : c <= 123209) - : (c <= 123214 || (c >= 123584 && c <= 123641))))))))) - : (c <= 125124 || (c < 126557 - ? (c < 126523 - ? (c < 126497 - ? (c < 125264 - ? (c < 125184 - ? (c >= 125136 && c <= 125142) - : c <= 125259) - : (c <= 125273 || (c < 126469 - ? (c >= 126464 && c <= 126467) - : c <= 126495))) - : (c <= 126498 || (c < 126505 - ? (c < 126503 - ? c == 126500 - : c <= 126503) - : (c <= 126514 || (c < 126521 - ? (c >= 126516 && c <= 126519) - : c <= 126521))))) - : (c <= 126523 || (c < 126545 - ? (c < 126537 - ? (c < 126535 - ? c == 126530 - : c <= 126535) - : (c <= 126537 || (c < 126541 - ? c == 126539 - : c <= 126543))) - : (c <= 126546 || (c < 126553 - ? (c < 126551 - ? c == 126548 - : c <= 126551) - : (c <= 126553 || c == 126555)))))) - : (c <= 126557 || (c < 126629 - ? (c < 126580 - ? (c < 126564 - ? (c < 126561 - ? c == 126559 - : c <= 126562) - : (c <= 126564 || (c < 126572 - ? (c >= 126567 && c <= 126570) - : c <= 126578))) - : (c <= 126583 || (c < 126592 - ? (c < 126590 - ? (c >= 126585 && c <= 126588) - : c <= 126590) - : (c <= 126601 || (c < 126625 - ? (c >= 126603 && c <= 126619) - : c <= 126627))))) - : (c <= 126633 || (c < 178208 - ? (c < 131072 - ? (c < 130032 - ? (c >= 126635 && c <= 126651) - : c <= 130041) - : (c <= 173789 || (c < 177984 - ? (c >= 173824 && c <= 177972) - : c <= 178205))) - : (c <= 183969 || (c < 196608 - ? (c < 194560 - ? (c >= 183984 && c <= 191456) - : c <= 195101) - : (c <= 201546 || (c >= 917760 && c <= 917999))))))))))))))))); -} +static const TSCharacterRange sym_identifier_character_set_1[] = { + {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, + {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x370, 0x374}, {0x376, 0x377}, {0x37b, 0x37d}, + {0x37f, 0x37f}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, {0x48a, 0x52f}, + {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x620, 0x64a}, {0x66e, 0x66f}, {0x671, 0x6d3}, + {0x6d5, 0x6d5}, {0x6e5, 0x6e6}, {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f}, {0x74d, 0x7a5}, + {0x7b1, 0x7b1}, {0x7ca, 0x7ea}, {0x7f4, 0x7f5}, {0x7fa, 0x7fa}, {0x800, 0x815}, {0x81a, 0x81a}, {0x824, 0x824}, {0x828, 0x828}, + {0x840, 0x858}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x8a0, 0x8c9}, {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950}, + {0x958, 0x961}, {0x971, 0x980}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, + {0x9bd, 0x9bd}, {0x9ce, 0x9ce}, {0x9dc, 0x9dd}, {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0x9fc, 0x9fc}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, + {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, + {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, + {0xae0, 0xae1}, {0xaf9, 0xaf9}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, + {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, + {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbd0, 0xbd0}, {0xc05, 0xc0c}, + {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3d, 0xc3d}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc61}, {0xc80, 0xc80}, + {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcdd, 0xcde}, {0xce0, 0xce1}, + {0xcf1, 0xcf2}, {0xd04, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd3a}, {0xd3d, 0xd3d}, {0xd4e, 0xd4e}, {0xd54, 0xd56}, {0xd5f, 0xd61}, + {0xd7a, 0xd7f}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe32}, + {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xeb0}, {0xeb2, 0xeb2}, + {0xebd, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6c}, {0xf88, 0xf8c}, + {0x1000, 0x102a}, {0x103f, 0x103f}, {0x1050, 0x1055}, {0x105a, 0x105d}, {0x1061, 0x1061}, {0x1065, 0x1066}, {0x106e, 0x1070}, {0x1075, 0x1081}, + {0x108e, 0x108e}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, + {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, + {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, + {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1711}, {0x171f, 0x1731}, {0x1740, 0x1751}, + {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1878}, {0x1880, 0x18a8}, {0x18aa, 0x18aa}, + {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, {0x1a20, 0x1a54}, + {0x1aa7, 0x1aa7}, {0x1b05, 0x1b33}, {0x1b45, 0x1b4c}, {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f}, + {0x1c5a, 0x1c7d}, {0x1c80, 0x1c8a}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf6}, {0x1cfa, 0x1cfa}, + {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, + {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, + {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2090, 0x209c}, {0x2102, 0x2102}, + {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, + {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, + {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, + {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x3005, 0x3007}, {0x3021, 0x3029}, {0x3031, 0x3035}, + {0x3038, 0x303c}, {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, + {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e}, + {0xa67f, 0xa69d}, {0xa6a0, 0xa6ef}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7cd}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7dc}, + {0xa7f2, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa822}, {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, {0xa8fb, 0xa8fb}, + {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, {0xa984, 0xa9b2}, {0xa9cf, 0xa9cf}, {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef}, + {0xa9fa, 0xa9fe}, {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, {0xaa7a, 0xaa7a}, {0xaa7e, 0xaaaf}, {0xaab1, 0xaab1}, + {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, {0xaac0, 0xaac0}, {0xaac2, 0xaac2}, {0xaadb, 0xaadd}, {0xaae0, 0xaaea}, {0xaaf2, 0xaaf4}, {0xab01, 0xab06}, + {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab69}, {0xab70, 0xabe2}, {0xac00, 0xd7a3}, + {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, + {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, + {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, + {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xff9d}, {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, + {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, + {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x10375}, {0x10380, 0x1039d}, + {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, + {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, + {0x105c0, 0x105f3}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, + {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, + {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a00}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, + {0x10a19, 0x10a35}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, + {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10d4a, 0x10d65}, {0x10d6f, 0x10d85}, {0x10e80, 0x10ea9}, + {0x10eb0, 0x10eb1}, {0x10ec2, 0x10ec4}, {0x10f00, 0x10f1c}, {0x10f27, 0x10f27}, {0x10f30, 0x10f45}, {0x10f70, 0x10f81}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, + {0x11003, 0x11037}, {0x11071, 0x11072}, {0x11075, 0x11075}, {0x11083, 0x110af}, {0x110d0, 0x110e8}, {0x11103, 0x11126}, {0x11144, 0x11144}, {0x11147, 0x11147}, + {0x11150, 0x11172}, {0x11176, 0x11176}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, {0x111da, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x1122b}, + {0x1123f, 0x11240}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, + {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133d, 0x1133d}, {0x11350, 0x11350}, {0x1135d, 0x11361}, + {0x11380, 0x11389}, {0x1138b, 0x1138b}, {0x1138e, 0x1138e}, {0x11390, 0x113b5}, {0x113b7, 0x113b7}, {0x113d1, 0x113d1}, {0x113d3, 0x113d3}, {0x11400, 0x11434}, + {0x11447, 0x1144a}, {0x1145f, 0x11461}, {0x11480, 0x114af}, {0x114c4, 0x114c5}, {0x114c7, 0x114c7}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, + {0x11644, 0x11644}, {0x11680, 0x116aa}, {0x116b8, 0x116b8}, {0x11700, 0x1171a}, {0x11740, 0x11746}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x118ff, 0x11906}, + {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x1192f}, {0x1193f, 0x1193f}, {0x11941, 0x11941}, {0x119a0, 0x119a7}, {0x119aa, 0x119d0}, + {0x119e1, 0x119e1}, {0x119e3, 0x119e3}, {0x11a00, 0x11a00}, {0x11a0b, 0x11a32}, {0x11a3a, 0x11a3a}, {0x11a50, 0x11a50}, {0x11a5c, 0x11a89}, {0x11a9d, 0x11a9d}, + {0x11ab0, 0x11af8}, {0x11bc0, 0x11be0}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c40, 0x11c40}, {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, + {0x11d0b, 0x11d30}, {0x11d46, 0x11d46}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d89}, {0x11d98, 0x11d98}, {0x11ee0, 0x11ef2}, {0x11f02, 0x11f02}, + {0x11f04, 0x11f10}, {0x11f12, 0x11f33}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342f}, + {0x13441, 0x13446}, {0x13460, 0x143fa}, {0x14400, 0x14646}, {0x16100, 0x1611d}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a70, 0x16abe}, {0x16ad0, 0x16aed}, + {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16d40, 0x16d6c}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f50, 0x16f50}, + {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe3}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18cff, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, + {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b132, 0x1b132}, {0x1b150, 0x1b152}, {0x1b155, 0x1b155}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, + {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, + {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, + {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, + {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, + {0x1d7c4, 0x1d7cb}, {0x1df00, 0x1df1e}, {0x1df25, 0x1df2a}, {0x1e030, 0x1e06d}, {0x1e100, 0x1e12c}, {0x1e137, 0x1e13d}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ad}, + {0x1e2c0, 0x1e2eb}, {0x1e4d0, 0x1e4eb}, {0x1e5d0, 0x1e5ed}, {0x1e5f0, 0x1e5f0}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, + {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1e94b, 0x1e94b}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, + {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, + {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, + {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, + {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x20000, 0x2a6df}, {0x2a700, 0x2b739}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, + {0x2ceb0, 0x2ebe0}, {0x2ebf0, 0x2ee5d}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0x31350, 0x323af}, +}; + +static const TSCharacterRange sym_identifier_character_set_2[] = { + {'0', '9'}, {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xb7, 0xb7}, {0xba, 0xba}, + {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x300, 0x374}, + {0x376, 0x377}, {0x37b, 0x37d}, {0x37f, 0x37f}, {0x386, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, + {0x483, 0x487}, {0x48a, 0x52f}, {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x591, 0x5bd}, {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, + {0x5c4, 0x5c5}, {0x5c7, 0x5c7}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x610, 0x61a}, {0x620, 0x669}, {0x66e, 0x6d3}, {0x6d5, 0x6dc}, + {0x6df, 0x6e8}, {0x6ea, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x74a}, {0x74d, 0x7b1}, {0x7c0, 0x7f5}, {0x7fa, 0x7fa}, {0x7fd, 0x7fd}, + {0x800, 0x82d}, {0x840, 0x85b}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x897, 0x8e1}, {0x8e3, 0x963}, {0x966, 0x96f}, + {0x971, 0x983}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bc, 0x9c4}, + {0x9c7, 0x9c8}, {0x9cb, 0x9ce}, {0x9d7, 0x9d7}, {0x9dc, 0x9dd}, {0x9df, 0x9e3}, {0x9e6, 0x9f1}, {0x9fc, 0x9fc}, {0x9fe, 0x9fe}, + {0xa01, 0xa03}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, + {0xa3c, 0xa3c}, {0xa3e, 0xa42}, {0xa47, 0xa48}, {0xa4b, 0xa4d}, {0xa51, 0xa51}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa66, 0xa75}, + {0xa81, 0xa83}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabc, 0xac5}, + {0xac7, 0xac9}, {0xacb, 0xacd}, {0xad0, 0xad0}, {0xae0, 0xae3}, {0xae6, 0xaef}, {0xaf9, 0xaff}, {0xb01, 0xb03}, {0xb05, 0xb0c}, + {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3c, 0xb44}, {0xb47, 0xb48}, {0xb4b, 0xb4d}, + {0xb55, 0xb57}, {0xb5c, 0xb5d}, {0xb5f, 0xb63}, {0xb66, 0xb6f}, {0xb71, 0xb71}, {0xb82, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, + {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbbe, 0xbc2}, + {0xbc6, 0xbc8}, {0xbca, 0xbcd}, {0xbd0, 0xbd0}, {0xbd7, 0xbd7}, {0xbe6, 0xbef}, {0xc00, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, + {0xc2a, 0xc39}, {0xc3c, 0xc44}, {0xc46, 0xc48}, {0xc4a, 0xc4d}, {0xc55, 0xc56}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc63}, + {0xc66, 0xc6f}, {0xc80, 0xc83}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbc, 0xcc4}, + {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6}, {0xcdd, 0xcde}, {0xce0, 0xce3}, {0xce6, 0xcef}, {0xcf1, 0xcf3}, {0xd00, 0xd0c}, + {0xd0e, 0xd10}, {0xd12, 0xd44}, {0xd46, 0xd48}, {0xd4a, 0xd4e}, {0xd54, 0xd57}, {0xd5f, 0xd63}, {0xd66, 0xd6f}, {0xd7a, 0xd7f}, + {0xd81, 0xd83}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xdca, 0xdca}, {0xdcf, 0xdd4}, + {0xdd6, 0xdd6}, {0xdd8, 0xddf}, {0xde6, 0xdef}, {0xdf2, 0xdf3}, {0xe01, 0xe3a}, {0xe40, 0xe4e}, {0xe50, 0xe59}, {0xe81, 0xe82}, + {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xec8, 0xece}, + {0xed0, 0xed9}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf18, 0xf19}, {0xf20, 0xf29}, {0xf35, 0xf35}, {0xf37, 0xf37}, {0xf39, 0xf39}, + {0xf3e, 0xf47}, {0xf49, 0xf6c}, {0xf71, 0xf84}, {0xf86, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, {0x1000, 0x1049}, {0x1050, 0x109d}, + {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258}, + {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, + {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x135d, 0x135f}, {0x1369, 0x1371}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, + {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1715}, {0x171f, 0x1734}, + {0x1740, 0x1753}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}, {0x1780, 0x17d3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dd}, {0x17e0, 0x17e9}, + {0x180b, 0x180d}, {0x180f, 0x1819}, {0x1820, 0x1878}, {0x1880, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1920, 0x192b}, {0x1930, 0x193b}, + {0x1946, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x19d0, 0x19da}, {0x1a00, 0x1a1b}, {0x1a20, 0x1a5e}, {0x1a60, 0x1a7c}, + {0x1a7f, 0x1a89}, {0x1a90, 0x1a99}, {0x1aa7, 0x1aa7}, {0x1ab0, 0x1abd}, {0x1abf, 0x1ace}, {0x1b00, 0x1b4c}, {0x1b50, 0x1b59}, {0x1b6b, 0x1b73}, + {0x1b80, 0x1bf3}, {0x1c00, 0x1c37}, {0x1c40, 0x1c49}, {0x1c4d, 0x1c7d}, {0x1c80, 0x1c8a}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1cd0, 0x1cd2}, + {0x1cd4, 0x1cfa}, {0x1d00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, + {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, + {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x200c, 0x200d}, {0x203f, 0x2040}, {0x2054, 0x2054}, {0x2071, 0x2071}, + {0x207f, 0x207f}, {0x2090, 0x209c}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1}, {0x20e5, 0x20f0}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, + {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, + {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, + {0x2d6f, 0x2d6f}, {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, + {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, {0x3021, 0x302f}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, + {0x3099, 0x309a}, {0x309d, 0x309f}, {0x30a1, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, + {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa62b}, {0xa640, 0xa66f}, {0xa674, 0xa67d}, {0xa67f, 0xa6f1}, {0xa717, 0xa71f}, + {0xa722, 0xa788}, {0xa78b, 0xa7cd}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7dc}, {0xa7f2, 0xa827}, {0xa82c, 0xa82c}, {0xa840, 0xa873}, + {0xa880, 0xa8c5}, {0xa8d0, 0xa8d9}, {0xa8e0, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa92d}, {0xa930, 0xa953}, {0xa960, 0xa97c}, {0xa980, 0xa9c0}, + {0xa9cf, 0xa9d9}, {0xa9e0, 0xa9fe}, {0xaa00, 0xaa36}, {0xaa40, 0xaa4d}, {0xaa50, 0xaa59}, {0xaa60, 0xaa76}, {0xaa7a, 0xaac2}, {0xaadb, 0xaadd}, + {0xaae0, 0xaaef}, {0xaaf2, 0xaaf6}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, + {0xab5c, 0xab69}, {0xab70, 0xabea}, {0xabec, 0xabed}, {0xabf0, 0xabf9}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, + {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, + {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe00, 0xfe0f}, + {0xfe20, 0xfe2f}, {0xfe33, 0xfe34}, {0xfe4d, 0xfe4f}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, + {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff10, 0xff19}, {0xff21, 0xff3a}, {0xff3f, 0xff3f}, {0xff41, 0xff5a}, {0xff65, 0xffbe}, {0xffc2, 0xffc7}, + {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, + {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x101fd, 0x101fd}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x102e0, 0x102e0}, {0x10300, 0x1031f}, + {0x1032d, 0x1034a}, {0x10350, 0x1037a}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104a0, 0x104a9}, + {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, + {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, {0x105c0, 0x105f3}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, + {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, + {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, + {0x109be, 0x109bf}, {0x10a00, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, {0x10a3f, 0x10a3f}, + {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae6}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, + {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, {0x10d30, 0x10d39}, {0x10d40, 0x10d65}, {0x10d69, 0x10d6d}, {0x10d6f, 0x10d85}, + {0x10e80, 0x10ea9}, {0x10eab, 0x10eac}, {0x10eb0, 0x10eb1}, {0x10ec2, 0x10ec4}, {0x10efc, 0x10f1c}, {0x10f27, 0x10f27}, {0x10f30, 0x10f50}, {0x10f70, 0x10f85}, + {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11000, 0x11046}, {0x11066, 0x11075}, {0x1107f, 0x110ba}, {0x110c2, 0x110c2}, {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, + {0x11100, 0x11134}, {0x11136, 0x1113f}, {0x11144, 0x11147}, {0x11150, 0x11173}, {0x11176, 0x11176}, {0x11180, 0x111c4}, {0x111c9, 0x111cc}, {0x111ce, 0x111da}, + {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x11237}, {0x1123e, 0x11241}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, + {0x1129f, 0x112a8}, {0x112b0, 0x112ea}, {0x112f0, 0x112f9}, {0x11300, 0x11303}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, + {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133b, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, {0x11350, 0x11350}, {0x11357, 0x11357}, {0x1135d, 0x11363}, + {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11380, 0x11389}, {0x1138b, 0x1138b}, {0x1138e, 0x1138e}, {0x11390, 0x113b5}, {0x113b7, 0x113c0}, {0x113c2, 0x113c2}, + {0x113c5, 0x113c5}, {0x113c7, 0x113ca}, {0x113cc, 0x113d3}, {0x113e1, 0x113e2}, {0x11400, 0x1144a}, {0x11450, 0x11459}, {0x1145e, 0x11461}, {0x11480, 0x114c5}, + {0x114c7, 0x114c7}, {0x114d0, 0x114d9}, {0x11580, 0x115b5}, {0x115b8, 0x115c0}, {0x115d8, 0x115dd}, {0x11600, 0x11640}, {0x11644, 0x11644}, {0x11650, 0x11659}, + {0x11680, 0x116b8}, {0x116c0, 0x116c9}, {0x116d0, 0x116e3}, {0x11700, 0x1171a}, {0x1171d, 0x1172b}, {0x11730, 0x11739}, {0x11740, 0x11746}, {0x11800, 0x1183a}, + {0x118a0, 0x118e9}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x11935}, {0x11937, 0x11938}, {0x1193b, 0x11943}, + {0x11950, 0x11959}, {0x119a0, 0x119a7}, {0x119aa, 0x119d7}, {0x119da, 0x119e1}, {0x119e3, 0x119e4}, {0x11a00, 0x11a3e}, {0x11a47, 0x11a47}, {0x11a50, 0x11a99}, + {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11bc0, 0x11be0}, {0x11bf0, 0x11bf9}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, {0x11c38, 0x11c40}, {0x11c50, 0x11c59}, + {0x11c72, 0x11c8f}, {0x11c92, 0x11ca7}, {0x11ca9, 0x11cb6}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, {0x11d3a, 0x11d3a}, {0x11d3c, 0x11d3d}, + {0x11d3f, 0x11d47}, {0x11d50, 0x11d59}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, {0x11da0, 0x11da9}, + {0x11ee0, 0x11ef6}, {0x11f00, 0x11f10}, {0x11f12, 0x11f3a}, {0x11f3e, 0x11f42}, {0x11f50, 0x11f5a}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, + {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342f}, {0x13440, 0x13455}, {0x13460, 0x143fa}, {0x14400, 0x14646}, {0x16100, 0x16139}, {0x16800, 0x16a38}, + {0x16a40, 0x16a5e}, {0x16a60, 0x16a69}, {0x16a70, 0x16abe}, {0x16ac0, 0x16ac9}, {0x16ad0, 0x16aed}, {0x16af0, 0x16af4}, {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, + {0x16b50, 0x16b59}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16d40, 0x16d6c}, {0x16d70, 0x16d79}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f4f, 0x16f87}, + {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe4}, {0x16ff0, 0x16ff1}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18cff, 0x18d08}, {0x1aff0, 0x1aff3}, + {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b132, 0x1b132}, {0x1b150, 0x1b152}, {0x1b155, 0x1b155}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, + {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1bc9d, 0x1bc9e}, {0x1ccf0, 0x1ccf9}, {0x1cf00, 0x1cf2d}, {0x1cf30, 0x1cf46}, + {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, + {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, + {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, + {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, + {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, {0x1da00, 0x1da36}, {0x1da3b, 0x1da6c}, {0x1da75, 0x1da75}, + {0x1da84, 0x1da84}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1df00, 0x1df1e}, {0x1df25, 0x1df2a}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, {0x1e01b, 0x1e021}, + {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e030, 0x1e06d}, {0x1e08f, 0x1e08f}, {0x1e100, 0x1e12c}, {0x1e130, 0x1e13d}, {0x1e140, 0x1e149}, {0x1e14e, 0x1e14e}, + {0x1e290, 0x1e2ae}, {0x1e2c0, 0x1e2f9}, {0x1e4d0, 0x1e4f9}, {0x1e5d0, 0x1e5fa}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, + {0x1e800, 0x1e8c4}, {0x1e8d0, 0x1e8d6}, {0x1e900, 0x1e94b}, {0x1e950, 0x1e959}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, + {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, + {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, + {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, + {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1fbf0, 0x1fbf9}, {0x20000, 0x2a6df}, {0x2a700, 0x2b739}, + {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2ebf0, 0x2ee5d}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0x31350, 0x323af}, {0xe0100, 0xe01ef}, +}; static bool ts_lex(TSLexer *lexer, TSStateId state) { START_LEXER(); eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(51); - if (lookahead == '!') ADVANCE(21); - if (lookahead == '#') ADVANCE(124); - if (lookahead == '%') ADVANCE(75); - if (lookahead == '&') ADVANCE(77); - if (lookahead == '(') ADVANCE(54); - if (lookahead == ')') ADVANCE(55); - if (lookahead == '*') ADVANCE(57); - if (lookahead == '+') ADVANCE(65); - if (lookahead == ',') ADVANCE(56); - if (lookahead == '-') ADVANCE(64); - if (lookahead == '.') ADVANCE(53); - if (lookahead == '/') ADVANCE(74); - if (lookahead == '0') ADVANCE(113); - if (lookahead == ':') ADVANCE(61); - if (lookahead == ';') ADVANCE(125); - if (lookahead == '<') ADVANCE(81); - if (lookahead == '=') ADVANCE(71); - if (lookahead == '>') ADVANCE(86); - if (lookahead == '@') ADVANCE(73); - if (lookahead == '[') ADVANCE(66); - if (lookahead == '\\') SKIP(46) - if (lookahead == ']') ADVANCE(67); - if (lookahead == '^') ADVANCE(78); - if (lookahead == '{') ADVANCE(102); - if (lookahead == '|') ADVANCE(62); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '~') ADVANCE(80); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + if (eof) ADVANCE(52); + ADVANCE_MAP( + '!', 22, + '#', 141, + '%', 85, + '&', 89, + '(', 55, + ')', 56, + '*', 58, + '+', 71, + ',', 57, + '-', 69, + '.', 54, + '/', 82, + '0', 129, + ':', 123, + ';', 142, + '<', 95, + '=', 78, + '>', 101, + '@', 81, + '[', 72, + ); + if (lookahead == '\\') SKIP(47); + if (lookahead == ']') ADVANCE(73); + if (lookahead == '^') ADVANCE(91); + if (lookahead == '{') ADVANCE(118); + if (lookahead == '|') ADVANCE(66); + if (lookahead == '}') ADVANCE(75); + if (lookahead == '~') ADVANCE(94); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(49) - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(112); - if (sym_identifier_character_set_1(lookahead)) ADVANCE(123); + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(50); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(130); + if (set_contains(sym_identifier_character_set_1, 685, lookahead)) ADVANCE(140); END_STATE(); case 1: - if (lookahead == '\n') SKIP(14) + if (lookahead == '\n') SKIP(14); END_STATE(); case 2: - if (lookahead == '\n') SKIP(14) - if (lookahead == '\r') SKIP(1) + if (lookahead == '\n') SKIP(14); + if (lookahead == '\r') SKIP(1); END_STATE(); case 3: - if (lookahead == '\n') SKIP(16) + if (lookahead == '\n') SKIP(16); END_STATE(); case 4: - if (lookahead == '\n') SKIP(16) - if (lookahead == '\r') SKIP(3) + if (lookahead == '\n') SKIP(16); + if (lookahead == '\r') SKIP(3); END_STATE(); case 5: - if (lookahead == '\n') SKIP(19) + if (lookahead == '\n') SKIP(15); END_STATE(); case 6: - if (lookahead == '\n') SKIP(19) - if (lookahead == '\r') SKIP(5) + if (lookahead == '\n') SKIP(15); + if (lookahead == '\r') SKIP(5); END_STATE(); case 7: - if (lookahead == '\n') ADVANCE(105); + if (lookahead == '\n') SKIP(19); END_STATE(); case 8: - if (lookahead == '\n') SKIP(9) - if (lookahead == '#') ADVANCE(109); - if (lookahead == '\\') ADVANCE(107); - if (lookahead == '{') ADVANCE(102); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '\t' || - lookahead == '\f' || - lookahead == '\r' || - lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) ADVANCE(108); - if (lookahead != 0) ADVANCE(109); + if (lookahead == '\n') SKIP(19); + if (lookahead == '\r') SKIP(7); END_STATE(); case 9: - if (lookahead == '\n') SKIP(9) - if (lookahead == '#') ADVANCE(109); - if (lookahead == '\\') ADVANCE(107); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '\t' || - lookahead == '\f' || - lookahead == '\r' || - lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) ADVANCE(108); - if (lookahead != 0 && - lookahead != '{') ADVANCE(109); + if (lookahead == '\n') ADVANCE(121); END_STATE(); case 10: - if (lookahead == '\n') SKIP(17) + if (lookahead == '\n') SKIP(11); + if (lookahead == '#') ADVANCE(126); + if (lookahead == '\\') ADVANCE(124); + if (lookahead == '{') ADVANCE(118); + if (lookahead == '}') ADVANCE(75); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) ADVANCE(125); + if (lookahead != 0) ADVANCE(126); END_STATE(); case 11: - if (lookahead == '\n') SKIP(17) - if (lookahead == '\r') SKIP(10) + if (lookahead == '\n') SKIP(11); + if (lookahead == '#') ADVANCE(126); + if (lookahead == '\\') ADVANCE(124); + if (lookahead == '}') ADVANCE(75); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) ADVANCE(125); + if (lookahead != 0 && + lookahead != '{') ADVANCE(126); END_STATE(); case 12: - if (lookahead == '\n') SKIP(15) + if (lookahead == '\n') SKIP(17); END_STATE(); case 13: - if (lookahead == '\n') SKIP(15) - if (lookahead == '\r') SKIP(12) + if (lookahead == '\n') SKIP(17); + if (lookahead == '\r') SKIP(12); END_STATE(); case 14: - if (lookahead == '!') ADVANCE(21); - if (lookahead == '#') ADVANCE(124); - if (lookahead == '%') ADVANCE(75); - if (lookahead == '&') ADVANCE(77); - if (lookahead == '(') ADVANCE(54); - if (lookahead == ')') ADVANCE(55); - if (lookahead == '*') ADVANCE(57); - if (lookahead == '+') ADVANCE(65); - if (lookahead == ',') ADVANCE(56); - if (lookahead == '-') ADVANCE(63); - if (lookahead == '.') ADVANCE(53); - if (lookahead == '/') ADVANCE(74); - if (lookahead == '0') ADVANCE(113); - if (lookahead == ':') ADVANCE(60); - if (lookahead == '<') ADVANCE(81); - if (lookahead == '=') ADVANCE(71); - if (lookahead == '>') ADVANCE(86); - if (lookahead == '@') ADVANCE(73); - if (lookahead == '[') ADVANCE(66); - if (lookahead == '\\') SKIP(2) - if (lookahead == ']') ADVANCE(67); - if (lookahead == '^') ADVANCE(78); - if (lookahead == '{') ADVANCE(68); - if (lookahead == '|') ADVANCE(62); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '~') ADVANCE(80); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + ADVANCE_MAP( + '!', 22, + '#', 141, + '%', 84, + '&', 88, + '(', 55, + ')', 56, + '*', 59, + '+', 70, + ',', 57, + '-', 67, + '.', 54, + '/', 83, + '0', 129, + ':', 123, + '<', 96, + '=', 78, + '>', 102, + '@', 80, + '[', 72, + ); + if (lookahead == '\\') SKIP(2); + if (lookahead == ']') ADVANCE(73); + if (lookahead == '^') ADVANCE(90); + if (lookahead == '{') ADVANCE(74); + if (lookahead == '|') ADVANCE(65); + if (lookahead == '}') ADVANCE(75); + if (lookahead == '~') ADVANCE(94); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(14) - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(112); - if (sym_identifier_character_set_1(lookahead)) ADVANCE(123); + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(14); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(130); + if (set_contains(sym_identifier_character_set_1, 685, lookahead)) ADVANCE(140); END_STATE(); case 15: - if (lookahead == '!') ADVANCE(21); - if (lookahead == '#') ADVANCE(124); - if (lookahead == '%') ADVANCE(75); - if (lookahead == '&') ADVANCE(77); - if (lookahead == '(') ADVANCE(54); - if (lookahead == ')') ADVANCE(55); - if (lookahead == '*') ADVANCE(57); - if (lookahead == '+') ADVANCE(65); - if (lookahead == ',') ADVANCE(56); - if (lookahead == '-') ADVANCE(63); - if (lookahead == '.') ADVANCE(52); - if (lookahead == '/') ADVANCE(74); - if (lookahead == ':') ADVANCE(61); - if (lookahead == ';') ADVANCE(125); - if (lookahead == '<') ADVANCE(81); - if (lookahead == '=') ADVANCE(71); - if (lookahead == '>') ADVANCE(86); - if (lookahead == '@') ADVANCE(73); - if (lookahead == '[') ADVANCE(66); - if (lookahead == '\\') SKIP(13) - if (lookahead == ']') ADVANCE(67); - if (lookahead == '^') ADVANCE(78); - if (lookahead == '|') ADVANCE(62); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + ADVANCE_MAP( + '!', 22, + '#', 141, + '%', 84, + '&', 88, + '(', 55, + ')', 56, + '*', 59, + '+', 70, + ',', 57, + '-', 67, + '.', 53, + '/', 83, + ':', 123, + '<', 96, + '=', 78, + '>', 102, + '@', 80, + '[', 72, + ); + if (lookahead == '\\') SKIP(6); + if (lookahead == ']') ADVANCE(73); + if (lookahead == '^') ADVANCE(90); + if (lookahead == '|') ADVANCE(65); + if (lookahead == '}') ADVANCE(75); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(15) - if (sym_identifier_character_set_1(lookahead)) ADVANCE(123); + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(15); + if (set_contains(sym_identifier_character_set_1, 685, lookahead)) ADVANCE(140); END_STATE(); case 16: - if (lookahead == '!') ADVANCE(21); - if (lookahead == '#') ADVANCE(124); - if (lookahead == '%') ADVANCE(75); - if (lookahead == '&') ADVANCE(77); - if (lookahead == '(') ADVANCE(54); - if (lookahead == ')') ADVANCE(55); - if (lookahead == '*') ADVANCE(57); - if (lookahead == '+') ADVANCE(65); - if (lookahead == ',') ADVANCE(56); - if (lookahead == '-') ADVANCE(63); - if (lookahead == '.') ADVANCE(52); - if (lookahead == '/') ADVANCE(74); - if (lookahead == ':') ADVANCE(60); - if (lookahead == ';') ADVANCE(125); - if (lookahead == '<') ADVANCE(81); - if (lookahead == '=') ADVANCE(71); - if (lookahead == '>') ADVANCE(86); - if (lookahead == '@') ADVANCE(73); - if (lookahead == '[') ADVANCE(66); - if (lookahead == '\\') SKIP(4) - if (lookahead == ']') ADVANCE(67); - if (lookahead == '^') ADVANCE(78); - if (lookahead == '|') ADVANCE(62); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + ADVANCE_MAP( + '!', 21, + '#', 141, + '%', 85, + '&', 89, + '(', 55, + ')', 56, + '*', 58, + '+', 71, + ',', 57, + '-', 68, + '.', 53, + '/', 82, + ':', 64, + ';', 142, + '<', 95, + '=', 78, + '>', 101, + '@', 81, + '[', 72, + ); + if (lookahead == '\\') SKIP(4); + if (lookahead == ']') ADVANCE(73); + if (lookahead == '^') ADVANCE(91); + if (lookahead == '|') ADVANCE(66); + if (lookahead == '}') ADVANCE(75); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(16) - if (sym_identifier_character_set_1(lookahead)) ADVANCE(123); + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(16); + if (set_contains(sym_identifier_character_set_1, 685, lookahead)) ADVANCE(140); END_STATE(); case 17: - if (lookahead == '#') ADVANCE(124); - if (lookahead == '-') ADVANCE(22); - if (lookahead == ':') ADVANCE(60); - if (lookahead == '\\') SKIP(11) - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + if (lookahead == '#') ADVANCE(141); + if (lookahead == '-') ADVANCE(23); + if (lookahead == ':') ADVANCE(63); + if (lookahead == '\\') SKIP(13); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(17) + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(17); END_STATE(); case 18: - if (lookahead == '#') ADVANCE(124); - if (lookahead == '\\') ADVANCE(106); - if (lookahead == '{') ADVANCE(103); - if (lookahead == '}') ADVANCE(28); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + if (lookahead == '#') ADVANCE(141); + if (lookahead == '\\') ADVANCE(122); + if (lookahead == '{') ADVANCE(119); + if (lookahead == '}') ADVANCE(29); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(19) + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(19); END_STATE(); case 19: - if (lookahead == '#') ADVANCE(124); - if (lookahead == '\\') SKIP(6) - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + if (lookahead == '#') ADVANCE(141); + if (lookahead == '\\') SKIP(8); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(19) + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(19); END_STATE(); case 20: - if (lookahead == '.') ADVANCE(101); + if (lookahead == '.') ADVANCE(117); END_STATE(); case 21: - if (lookahead == '=') ADVANCE(84); - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(110); + if (lookahead == '=') ADVANCE(99); END_STATE(); case 22: - if (lookahead == '>') ADVANCE(72); + if (lookahead == '=') ADVANCE(99); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(127); END_STATE(); case 23: - if (lookahead == '_') ADVANCE(30); - if (lookahead == '0' || - lookahead == '1') ADVANCE(115); + if (lookahead == '>') ADVANCE(79); END_STATE(); case 24: if (lookahead == '_') ADVANCE(31); - if (('0' <= lookahead && lookahead <= '7')) ADVANCE(116); + if (lookahead == '0' || + lookahead == '1') ADVANCE(132); END_STATE(); case 25: - if (lookahead == '_') ADVANCE(35); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(117); + if (lookahead == '_') ADVANCE(32); + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(133); END_STATE(); case 26: - if (lookahead == '{') ADVANCE(44); + if (lookahead == '_') ADVANCE(36); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(134); END_STATE(); case 27: - if (lookahead == '}') ADVANCE(105); - if (lookahead != 0) ADVANCE(27); + if (lookahead == '{') ADVANCE(45); END_STATE(); case 28: - if (lookahead == '}') ADVANCE(104); + if (lookahead == '}') ADVANCE(121); + if (lookahead != 0) ADVANCE(28); END_STATE(); case 29: - if (lookahead == '+' || - lookahead == '-') ADVANCE(32); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(120); + if (lookahead == '}') ADVANCE(120); END_STATE(); case 30: - if (lookahead == '0' || - lookahead == '1') ADVANCE(115); + if (lookahead == '+' || + lookahead == '-') ADVANCE(33); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(137); END_STATE(); case 31: - if (('0' <= lookahead && lookahead <= '7')) ADVANCE(116); + if (lookahead == '0' || + lookahead == '1') ADVANCE(132); END_STATE(); case 32: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(120); + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(133); END_STATE(); case 33: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(105); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(137); END_STATE(); case 34: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(33); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(121); END_STATE(); case 35: - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(117); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(34); END_STATE(); case 36: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(105); + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(134); END_STATE(); case 37: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(36); + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(121); END_STATE(); case 38: if (('0' <= lookahead && lookahead <= '9') || @@ -5110,472 +5316,536 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { ('a' <= lookahead && lookahead <= 'f')) ADVANCE(42); END_STATE(); case 44: - if (lookahead != 0 && - lookahead != '}') ADVANCE(27); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(43); END_STATE(); case 45: - if (eof) ADVANCE(51); - if (lookahead == '\n') SKIP(49) + if (lookahead != 0 && + lookahead != '}') ADVANCE(28); END_STATE(); case 46: - if (eof) ADVANCE(51); - if (lookahead == '\n') SKIP(49) - if (lookahead == '\r') SKIP(45) + if (eof) ADVANCE(52); + if (lookahead == '\n') SKIP(50); END_STATE(); case 47: - if (eof) ADVANCE(51); - if (lookahead == '\n') SKIP(50) + if (eof) ADVANCE(52); + if (lookahead == '\n') SKIP(50); + if (lookahead == '\r') SKIP(46); END_STATE(); case 48: - if (eof) ADVANCE(51); - if (lookahead == '\n') SKIP(50) - if (lookahead == '\r') SKIP(47) + if (eof) ADVANCE(52); + if (lookahead == '\n') SKIP(51); END_STATE(); case 49: - if (eof) ADVANCE(51); - if (lookahead == '!') ADVANCE(21); - if (lookahead == '#') ADVANCE(124); - if (lookahead == '%') ADVANCE(75); - if (lookahead == '&') ADVANCE(77); - if (lookahead == '(') ADVANCE(54); - if (lookahead == ')') ADVANCE(55); - if (lookahead == '*') ADVANCE(57); - if (lookahead == '+') ADVANCE(65); - if (lookahead == ',') ADVANCE(56); - if (lookahead == '-') ADVANCE(64); - if (lookahead == '.') ADVANCE(53); - if (lookahead == '/') ADVANCE(74); - if (lookahead == '0') ADVANCE(113); - if (lookahead == ':') ADVANCE(61); - if (lookahead == ';') ADVANCE(125); - if (lookahead == '<') ADVANCE(81); - if (lookahead == '=') ADVANCE(71); - if (lookahead == '>') ADVANCE(86); - if (lookahead == '@') ADVANCE(73); - if (lookahead == '[') ADVANCE(66); - if (lookahead == '\\') SKIP(46) - if (lookahead == ']') ADVANCE(67); - if (lookahead == '^') ADVANCE(78); - if (lookahead == '{') ADVANCE(68); - if (lookahead == '|') ADVANCE(62); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '~') ADVANCE(80); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || - lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(49) - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(112); - if (sym_identifier_character_set_1(lookahead)) ADVANCE(123); + if (eof) ADVANCE(52); + if (lookahead == '\n') SKIP(51); + if (lookahead == '\r') SKIP(48); END_STATE(); case 50: - if (eof) ADVANCE(51); - if (lookahead == '!') ADVANCE(21); - if (lookahead == '#') ADVANCE(124); - if (lookahead == '%') ADVANCE(75); - if (lookahead == '&') ADVANCE(77); - if (lookahead == '(') ADVANCE(54); - if (lookahead == ')') ADVANCE(55); - if (lookahead == '*') ADVANCE(57); - if (lookahead == '+') ADVANCE(65); - if (lookahead == ',') ADVANCE(56); - if (lookahead == '-') ADVANCE(63); - if (lookahead == '.') ADVANCE(53); - if (lookahead == '/') ADVANCE(74); - if (lookahead == '0') ADVANCE(113); - if (lookahead == ':') ADVANCE(61); - if (lookahead == ';') ADVANCE(125); - if (lookahead == '<') ADVANCE(81); - if (lookahead == '=') ADVANCE(71); - if (lookahead == '>') ADVANCE(86); - if (lookahead == '@') ADVANCE(73); - if (lookahead == '[') ADVANCE(66); - if (lookahead == '\\') SKIP(48) - if (lookahead == ']') ADVANCE(67); - if (lookahead == '^') ADVANCE(78); - if (lookahead == '{') ADVANCE(68); - if (lookahead == '|') ADVANCE(62); - if (lookahead == '}') ADVANCE(69); - if (lookahead == '~') ADVANCE(80); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + if (eof) ADVANCE(52); + ADVANCE_MAP( + '!', 22, + '#', 141, + '%', 85, + '&', 89, + '(', 55, + ')', 56, + '*', 58, + '+', 71, + ',', 57, + '-', 69, + '.', 54, + '/', 82, + '0', 129, + ':', 123, + ';', 142, + '<', 95, + '=', 78, + '>', 101, + '@', 81, + '[', 72, + ); + if (lookahead == '\\') SKIP(47); + if (lookahead == ']') ADVANCE(73); + if (lookahead == '^') ADVANCE(91); + if (lookahead == '{') ADVANCE(74); + if (lookahead == '|') ADVANCE(66); + if (lookahead == '}') ADVANCE(75); + if (lookahead == '~') ADVANCE(94); + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(50) - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(112); - if (sym_identifier_character_set_1(lookahead)) ADVANCE(123); + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(50); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(130); + if (set_contains(sym_identifier_character_set_1, 685, lookahead)) ADVANCE(140); END_STATE(); case 51: - ACCEPT_TOKEN(ts_builtin_sym_end); + if (eof) ADVANCE(52); + ADVANCE_MAP( + '!', 21, + '#', 141, + '%', 85, + '&', 89, + '(', 55, + ')', 56, + '*', 58, + '+', 71, + ',', 57, + '-', 68, + '.', 54, + '/', 82, + '0', 129, + ':', 64, + ';', 142, + '<', 95, + '=', 78, + '>', 101, + '@', 81, + '[', 72, + ); + if (lookahead == '\\') SKIP(49); + if (lookahead == ']') ADVANCE(73); + if (lookahead == '^') ADVANCE(91); + if (lookahead == '{') ADVANCE(74); + if (lookahead == '|') ADVANCE(66); + if (lookahead == '}') ADVANCE(75); + if (lookahead == '~') ADVANCE(94); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(51); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(130); + if (set_contains(sym_identifier_character_set_1, 685, lookahead)) ADVANCE(140); END_STATE(); case 52: - ACCEPT_TOKEN(anon_sym_DOT); + ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 53: ACCEPT_TOKEN(anon_sym_DOT); - if (lookahead == '.') ADVANCE(20); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(119); END_STATE(); case 54: - ACCEPT_TOKEN(anon_sym_LPAREN); + ACCEPT_TOKEN(anon_sym_DOT); + if (lookahead == '.') ADVANCE(20); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(136); END_STATE(); case 55: - ACCEPT_TOKEN(anon_sym_RPAREN); + ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 56: - ACCEPT_TOKEN(anon_sym_COMMA); + ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 57: - ACCEPT_TOKEN(anon_sym_STAR); - if (lookahead == '*') ADVANCE(70); - if (lookahead == '=') ADVANCE(90); + ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 58: - ACCEPT_TOKEN(anon_sym_GT_GT); - if (lookahead == '=') ADVANCE(96); + ACCEPT_TOKEN(anon_sym_STAR); + if (lookahead == '*') ADVANCE(77); + if (lookahead == '=') ADVANCE(106); END_STATE(); case 59: - ACCEPT_TOKEN(anon_sym_COLON_EQ); + ACCEPT_TOKEN(anon_sym_STAR); + if (lookahead == '*') ADVANCE(76); END_STATE(); case 60: - ACCEPT_TOKEN(anon_sym_COLON); + ACCEPT_TOKEN(anon_sym_GT_GT); END_STATE(); case 61: - ACCEPT_TOKEN(anon_sym_COLON); - if (lookahead == '=') ADVANCE(59); + ACCEPT_TOKEN(anon_sym_GT_GT); + if (lookahead == '=') ADVANCE(112); END_STATE(); case 62: - ACCEPT_TOKEN(anon_sym_PIPE); - if (lookahead == '=') ADVANCE(100); + ACCEPT_TOKEN(anon_sym_COLON_EQ); END_STATE(); case 63: - ACCEPT_TOKEN(anon_sym_DASH); - if (lookahead == '=') ADVANCE(89); + ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); case 64: - ACCEPT_TOKEN(anon_sym_DASH); - if (lookahead == '=') ADVANCE(89); - if (lookahead == '>') ADVANCE(72); + ACCEPT_TOKEN(anon_sym_COLON); + if (lookahead == '=') ADVANCE(62); END_STATE(); case 65: - ACCEPT_TOKEN(anon_sym_PLUS); - if (lookahead == '=') ADVANCE(88); + ACCEPT_TOKEN(anon_sym_PIPE); END_STATE(); case 66: - ACCEPT_TOKEN(anon_sym_LBRACK); + ACCEPT_TOKEN(anon_sym_PIPE); + if (lookahead == '=') ADVANCE(116); END_STATE(); case 67: - ACCEPT_TOKEN(anon_sym_RBRACK); + ACCEPT_TOKEN(anon_sym_DASH); END_STATE(); case 68: - ACCEPT_TOKEN(anon_sym_LBRACE); + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '=') ADVANCE(105); END_STATE(); case 69: - ACCEPT_TOKEN(anon_sym_RBRACE); + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '=') ADVANCE(105); + if (lookahead == '>') ADVANCE(79); END_STATE(); case 70: - ACCEPT_TOKEN(anon_sym_STAR_STAR); - if (lookahead == '=') ADVANCE(95); + ACCEPT_TOKEN(anon_sym_PLUS); END_STATE(); case 71: - ACCEPT_TOKEN(anon_sym_EQ); - if (lookahead == '=') ADVANCE(83); + ACCEPT_TOKEN(anon_sym_PLUS); + if (lookahead == '=') ADVANCE(104); END_STATE(); case 72: - ACCEPT_TOKEN(anon_sym_DASH_GT); + ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 73: - ACCEPT_TOKEN(anon_sym_AT); - if (lookahead == '=') ADVANCE(92); + ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 74: - ACCEPT_TOKEN(anon_sym_SLASH); - if (lookahead == '/') ADVANCE(76); - if (lookahead == '=') ADVANCE(91); + ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 75: - ACCEPT_TOKEN(anon_sym_PERCENT); - if (lookahead == '=') ADVANCE(94); + ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 76: - ACCEPT_TOKEN(anon_sym_SLASH_SLASH); - if (lookahead == '=') ADVANCE(93); + ACCEPT_TOKEN(anon_sym_STAR_STAR); END_STATE(); case 77: - ACCEPT_TOKEN(anon_sym_AMP); - if (lookahead == '=') ADVANCE(98); + ACCEPT_TOKEN(anon_sym_STAR_STAR); + if (lookahead == '=') ADVANCE(111); END_STATE(); case 78: - ACCEPT_TOKEN(anon_sym_CARET); - if (lookahead == '=') ADVANCE(99); + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '=') ADVANCE(98); END_STATE(); case 79: - ACCEPT_TOKEN(anon_sym_LT_LT); - if (lookahead == '=') ADVANCE(97); + ACCEPT_TOKEN(anon_sym_DASH_GT); END_STATE(); case 80: - ACCEPT_TOKEN(anon_sym_TILDE); + ACCEPT_TOKEN(anon_sym_AT); END_STATE(); case 81: - ACCEPT_TOKEN(anon_sym_LT); - if (lookahead == '<') ADVANCE(79); - if (lookahead == '=') ADVANCE(82); - if (lookahead == '>') ADVANCE(87); + ACCEPT_TOKEN(anon_sym_AT); + if (lookahead == '=') ADVANCE(108); END_STATE(); case 82: - ACCEPT_TOKEN(anon_sym_LT_EQ); + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '/') ADVANCE(87); + if (lookahead == '=') ADVANCE(107); END_STATE(); case 83: - ACCEPT_TOKEN(anon_sym_EQ_EQ); + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '/') ADVANCE(86); END_STATE(); case 84: - ACCEPT_TOKEN(anon_sym_BANG_EQ); + ACCEPT_TOKEN(anon_sym_PERCENT); END_STATE(); case 85: - ACCEPT_TOKEN(anon_sym_GT_EQ); + ACCEPT_TOKEN(anon_sym_PERCENT); + if (lookahead == '=') ADVANCE(110); END_STATE(); case 86: - ACCEPT_TOKEN(anon_sym_GT); - if (lookahead == '=') ADVANCE(85); - if (lookahead == '>') ADVANCE(58); + ACCEPT_TOKEN(anon_sym_SLASH_SLASH); END_STATE(); case 87: - ACCEPT_TOKEN(anon_sym_LT_GT); + ACCEPT_TOKEN(anon_sym_SLASH_SLASH); + if (lookahead == '=') ADVANCE(109); END_STATE(); case 88: - ACCEPT_TOKEN(anon_sym_PLUS_EQ); + ACCEPT_TOKEN(anon_sym_AMP); END_STATE(); case 89: - ACCEPT_TOKEN(anon_sym_DASH_EQ); + ACCEPT_TOKEN(anon_sym_AMP); + if (lookahead == '=') ADVANCE(114); END_STATE(); case 90: - ACCEPT_TOKEN(anon_sym_STAR_EQ); + ACCEPT_TOKEN(anon_sym_CARET); END_STATE(); case 91: - ACCEPT_TOKEN(anon_sym_SLASH_EQ); + ACCEPT_TOKEN(anon_sym_CARET); + if (lookahead == '=') ADVANCE(115); END_STATE(); case 92: - ACCEPT_TOKEN(anon_sym_AT_EQ); + ACCEPT_TOKEN(anon_sym_LT_LT); END_STATE(); case 93: - ACCEPT_TOKEN(anon_sym_SLASH_SLASH_EQ); + ACCEPT_TOKEN(anon_sym_LT_LT); + if (lookahead == '=') ADVANCE(113); END_STATE(); case 94: - ACCEPT_TOKEN(anon_sym_PERCENT_EQ); + ACCEPT_TOKEN(anon_sym_TILDE); END_STATE(); case 95: - ACCEPT_TOKEN(anon_sym_STAR_STAR_EQ); + ACCEPT_TOKEN(anon_sym_LT); + if (lookahead == '<') ADVANCE(93); + if (lookahead == '=') ADVANCE(97); + if (lookahead == '>') ADVANCE(103); END_STATE(); case 96: - ACCEPT_TOKEN(anon_sym_GT_GT_EQ); + ACCEPT_TOKEN(anon_sym_LT); + if (lookahead == '<') ADVANCE(92); + if (lookahead == '=') ADVANCE(97); + if (lookahead == '>') ADVANCE(103); END_STATE(); case 97: - ACCEPT_TOKEN(anon_sym_LT_LT_EQ); + ACCEPT_TOKEN(anon_sym_LT_EQ); END_STATE(); case 98: - ACCEPT_TOKEN(anon_sym_AMP_EQ); + ACCEPT_TOKEN(anon_sym_EQ_EQ); END_STATE(); case 99: - ACCEPT_TOKEN(anon_sym_CARET_EQ); + ACCEPT_TOKEN(anon_sym_BANG_EQ); END_STATE(); case 100: - ACCEPT_TOKEN(anon_sym_PIPE_EQ); + ACCEPT_TOKEN(anon_sym_GT_EQ); END_STATE(); case 101: - ACCEPT_TOKEN(sym_ellipsis); + ACCEPT_TOKEN(anon_sym_GT); + if (lookahead == '=') ADVANCE(100); + if (lookahead == '>') ADVANCE(61); END_STATE(); case 102: - ACCEPT_TOKEN(anon_sym_LBRACE2); + ACCEPT_TOKEN(anon_sym_GT); + if (lookahead == '=') ADVANCE(100); + if (lookahead == '>') ADVANCE(60); END_STATE(); case 103: - ACCEPT_TOKEN(anon_sym_LBRACE2); - if (lookahead == '{') ADVANCE(104); + ACCEPT_TOKEN(anon_sym_LT_GT); END_STATE(); case 104: - ACCEPT_TOKEN(sym__escape_interpolation); + ACCEPT_TOKEN(anon_sym_PLUS_EQ); END_STATE(); case 105: - ACCEPT_TOKEN(sym_escape_sequence); + ACCEPT_TOKEN(anon_sym_DASH_EQ); END_STATE(); case 106: - ACCEPT_TOKEN(sym__not_escape_sequence); - if (lookahead == '\n') ADVANCE(105); - if (lookahead == '\r') ADVANCE(7); - if (lookahead == 'N') ADVANCE(26); - if (lookahead == 'U') ADVANCE(43); - if (lookahead == 'u') ADVANCE(39); - if (lookahead == 'x') ADVANCE(37); - if (lookahead == '"' || - lookahead == '\'' || - lookahead == '\\' || - lookahead == 'a' || - lookahead == 'b' || - lookahead == 'f' || - lookahead == 'n' || - lookahead == 'r' || - ('t' <= lookahead && lookahead <= 'v')) ADVANCE(105); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(34); + ACCEPT_TOKEN(anon_sym_STAR_EQ); END_STATE(); case 107: + ACCEPT_TOKEN(anon_sym_SLASH_EQ); + END_STATE(); + case 108: + ACCEPT_TOKEN(anon_sym_AT_EQ); + END_STATE(); + case 109: + ACCEPT_TOKEN(anon_sym_SLASH_SLASH_EQ); + END_STATE(); + case 110: + ACCEPT_TOKEN(anon_sym_PERCENT_EQ); + END_STATE(); + case 111: + ACCEPT_TOKEN(anon_sym_STAR_STAR_EQ); + END_STATE(); + case 112: + ACCEPT_TOKEN(anon_sym_GT_GT_EQ); + END_STATE(); + case 113: + ACCEPT_TOKEN(anon_sym_LT_LT_EQ); + END_STATE(); + case 114: + ACCEPT_TOKEN(anon_sym_AMP_EQ); + END_STATE(); + case 115: + ACCEPT_TOKEN(anon_sym_CARET_EQ); + END_STATE(); + case 116: + ACCEPT_TOKEN(anon_sym_PIPE_EQ); + END_STATE(); + case 117: + ACCEPT_TOKEN(sym_ellipsis); + END_STATE(); + case 118: + ACCEPT_TOKEN(anon_sym_LBRACE2); + END_STATE(); + case 119: + ACCEPT_TOKEN(anon_sym_LBRACE2); + if (lookahead == '{') ADVANCE(120); + END_STATE(); + case 120: + ACCEPT_TOKEN(sym__escape_interpolation); + END_STATE(); + case 121: + ACCEPT_TOKEN(sym_escape_sequence); + END_STATE(); + case 122: + ACCEPT_TOKEN(anon_sym_BSLASH); + ADVANCE_MAP( + '\n', 121, + '\r', 9, + 'N', 27, + 'U', 44, + 'u', 40, + 'x', 38, + '"', 121, + '\'', 121, + '\\', 121, + 'a', 121, + 'b', 121, + 'f', 121, + 'n', 121, + 'r', 121, + 't', 121, + 'v', 121, + ); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(35); + END_STATE(); + case 123: + ACCEPT_TOKEN(anon_sym_COLON2); + END_STATE(); + case 124: ACCEPT_TOKEN(aux_sym_format_specifier_token1); - if (lookahead == '\r') ADVANCE(109); + if (lookahead == '\r') ADVANCE(126); if (lookahead != 0 && lookahead != '\n' && lookahead != '{' && - lookahead != '}') ADVANCE(109); + lookahead != '}') ADVANCE(126); END_STATE(); - case 108: + case 125: ACCEPT_TOKEN(aux_sym_format_specifier_token1); - if (lookahead == '#') ADVANCE(109); - if (lookahead == '\\') ADVANCE(107); + if (lookahead == '#') ADVANCE(126); + if (lookahead == '\\') ADVANCE(124); if (lookahead == '\t' || - lookahead == '\f' || - lookahead == '\r' || + (0x0b <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) ADVANCE(108); + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) ADVANCE(125); if (lookahead != 0 && - lookahead != '\n' && + (lookahead < '\t' || '\r' < lookahead) && lookahead != '{' && - lookahead != '}') ADVANCE(109); + lookahead != '}') ADVANCE(126); END_STATE(); - case 109: + case 126: ACCEPT_TOKEN(aux_sym_format_specifier_token1); if (lookahead != 0 && lookahead != '\n' && lookahead != '{' && - lookahead != '}') ADVANCE(109); + lookahead != '}') ADVANCE(126); END_STATE(); - case 110: + case 127: ACCEPT_TOKEN(sym_type_conversion); END_STATE(); - case 111: + case 128: ACCEPT_TOKEN(sym_integer); END_STATE(); - case 112: + case 129: ACCEPT_TOKEN(sym_integer); - if (lookahead == '.') ADVANCE(121); - if (lookahead == '_') ADVANCE(114); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(29); - if (lookahead == 'J' || - lookahead == 'L' || - lookahead == 'j' || - lookahead == 'l') ADVANCE(111); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(112); + ADVANCE_MAP( + '.', 138, + '_', 131, + 'B', 24, + 'b', 24, + 'E', 30, + 'e', 30, + 'O', 25, + 'o', 25, + 'X', 26, + 'x', 26, + 'J', 128, + 'L', 128, + 'j', 128, + 'l', 128, + ); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(130); END_STATE(); - case 113: + case 130: ACCEPT_TOKEN(sym_integer); - if (lookahead == '.') ADVANCE(121); - if (lookahead == 'B' || - lookahead == 'b') ADVANCE(23); - if (lookahead == 'O' || - lookahead == 'o') ADVANCE(24); - if (lookahead == 'X' || - lookahead == 'x') ADVANCE(25); - if (lookahead == '_') ADVANCE(114); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(29); - if (lookahead == 'J' || - lookahead == 'L' || - lookahead == 'j' || - lookahead == 'l') ADVANCE(111); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(112); + ADVANCE_MAP( + '.', 138, + '_', 131, + 'E', 30, + 'e', 30, + 'J', 128, + 'L', 128, + 'j', 128, + 'l', 128, + ); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(130); END_STATE(); - case 114: + case 131: ACCEPT_TOKEN(sym_integer); - if (lookahead == '.') ADVANCE(121); + if (lookahead == '.') ADVANCE(138); if (lookahead == 'E' || - lookahead == 'e') ADVANCE(29); + lookahead == 'e') ADVANCE(30); if (lookahead == 'J' || lookahead == 'L' || lookahead == 'j' || - lookahead == 'l') ADVANCE(111); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(112); + lookahead == 'l') ADVANCE(128); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(130); END_STATE(); - case 115: + case 132: ACCEPT_TOKEN(sym_integer); - if (lookahead == '_') ADVANCE(30); + if (lookahead == '_') ADVANCE(31); if (lookahead == 'L' || - lookahead == 'l') ADVANCE(111); + lookahead == 'l') ADVANCE(128); if (lookahead == '0' || - lookahead == '1') ADVANCE(115); + lookahead == '1') ADVANCE(132); END_STATE(); - case 116: + case 133: ACCEPT_TOKEN(sym_integer); - if (lookahead == '_') ADVANCE(31); + if (lookahead == '_') ADVANCE(32); if (lookahead == 'L' || - lookahead == 'l') ADVANCE(111); - if (('0' <= lookahead && lookahead <= '7')) ADVANCE(116); + lookahead == 'l') ADVANCE(128); + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(133); END_STATE(); - case 117: + case 134: ACCEPT_TOKEN(sym_integer); - if (lookahead == '_') ADVANCE(35); + if (lookahead == '_') ADVANCE(36); if (lookahead == 'L' || - lookahead == 'l') ADVANCE(111); + lookahead == 'l') ADVANCE(128); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(117); + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(134); END_STATE(); - case 118: + case 135: ACCEPT_TOKEN(sym_float); END_STATE(); - case 119: + case 136: ACCEPT_TOKEN(sym_float); - if (lookahead == '_') ADVANCE(121); + if (lookahead == '_') ADVANCE(138); if (lookahead == 'E' || - lookahead == 'e') ADVANCE(29); + lookahead == 'e') ADVANCE(30); if (lookahead == 'J' || lookahead == 'L' || lookahead == 'j' || - lookahead == 'l') ADVANCE(118); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(119); + lookahead == 'l') ADVANCE(135); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(136); END_STATE(); - case 120: + case 137: ACCEPT_TOKEN(sym_float); - if (lookahead == '_') ADVANCE(122); + if (lookahead == '_') ADVANCE(139); if (lookahead == 'J' || lookahead == 'L' || lookahead == 'j' || - lookahead == 'l') ADVANCE(118); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(120); + lookahead == 'l') ADVANCE(135); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(137); END_STATE(); - case 121: + case 138: ACCEPT_TOKEN(sym_float); if (lookahead == 'E' || - lookahead == 'e') ADVANCE(29); + lookahead == 'e') ADVANCE(30); if (lookahead == 'J' || lookahead == 'L' || lookahead == 'j' || - lookahead == 'l') ADVANCE(118); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(119); + lookahead == 'l') ADVANCE(135); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(136); END_STATE(); - case 122: + case 139: ACCEPT_TOKEN(sym_float); if (lookahead == 'J' || lookahead == 'L' || lookahead == 'j' || - lookahead == 'l') ADVANCE(118); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(120); + lookahead == 'l') ADVANCE(135); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(137); END_STATE(); - case 123: + case 140: ACCEPT_TOKEN(sym_identifier); - if (sym_identifier_character_set_2(lookahead)) ADVANCE(123); + if (set_contains(sym_identifier_character_set_2, 800, lookahead)) ADVANCE(140); END_STATE(); - case 124: + case 141: ACCEPT_TOKEN(sym_comment); if (lookahead != 0 && - lookahead != '\n') ADVANCE(124); + lookahead != '\n') ADVANCE(141); END_STATE(); - case 125: - ACCEPT_TOKEN(sym__semicolon); + case 142: + ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); default: return false; @@ -5590,7 +5860,7 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { if (lookahead == 'F') ADVANCE(1); if (lookahead == 'N') ADVANCE(2); if (lookahead == 'T') ADVANCE(3); - if (lookahead == '\\') SKIP(4) + if (lookahead == '\\') SKIP(4); if (lookahead == '_') ADVANCE(5); if (lookahead == 'a') ADVANCE(6); if (lookahead == 'b') ADVANCE(7); @@ -5609,14 +5879,11 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { if (lookahead == 't') ADVANCE(20); if (lookahead == 'w') ADVANCE(21); if (lookahead == 'y') ADVANCE(22); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\f' || - lookahead == '\r' || + if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || - lookahead == 8203 || - lookahead == 8288 || - lookahead == 65279) SKIP(0) + lookahead == 0x200b || + lookahead == 0x2060 || + lookahead == 0xfeff) SKIP(0); END_STATE(); case 1: if (lookahead == 'a') ADVANCE(23); @@ -5628,8 +5895,8 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { if (lookahead == 'r') ADVANCE(25); END_STATE(); case 4: - if (lookahead == '\n') SKIP(0) - if (lookahead == '\r') SKIP(26) + if (lookahead == '\n') SKIP(0); + if (lookahead == '\r') SKIP(26); END_STATE(); case 5: ACCEPT_TOKEN(sym_match_wildcard_pattern); @@ -5710,7 +5977,7 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { if (lookahead == 'u') ADVANCE(61); END_STATE(); case 26: - if (lookahead == '\n') SKIP(0) + if (lookahead == '\n') SKIP(0); END_STATE(); case 27: if (lookahead == 'f') ADVANCE(62); @@ -6136,817 +6403,817 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0, .external_lex_state = 1}, - [1] = {.lex_state = 50, .external_lex_state = 2}, - [2] = {.lex_state = 50, .external_lex_state = 3}, - [3] = {.lex_state = 50, .external_lex_state = 3}, - [4] = {.lex_state = 50, .external_lex_state = 3}, - [5] = {.lex_state = 50, .external_lex_state = 3}, - [6] = {.lex_state = 50, .external_lex_state = 3}, - [7] = {.lex_state = 50, .external_lex_state = 3}, - [8] = {.lex_state = 50, .external_lex_state = 3}, - [9] = {.lex_state = 50, .external_lex_state = 3}, - [10] = {.lex_state = 50, .external_lex_state = 3}, - [11] = {.lex_state = 50, .external_lex_state = 3}, - [12] = {.lex_state = 50, .external_lex_state = 3}, - [13] = {.lex_state = 50, .external_lex_state = 3}, - [14] = {.lex_state = 50, .external_lex_state = 3}, - [15] = {.lex_state = 50, .external_lex_state = 3}, - [16] = {.lex_state = 50, .external_lex_state = 3}, - [17] = {.lex_state = 50, .external_lex_state = 3}, - [18] = {.lex_state = 50, .external_lex_state = 3}, - [19] = {.lex_state = 50, .external_lex_state = 3}, - [20] = {.lex_state = 50, .external_lex_state = 3}, - [21] = {.lex_state = 50, .external_lex_state = 3}, - [22] = {.lex_state = 50, .external_lex_state = 3}, - [23] = {.lex_state = 50, .external_lex_state = 3}, - [24] = {.lex_state = 50, .external_lex_state = 3}, - [25] = {.lex_state = 50, .external_lex_state = 3}, - [26] = {.lex_state = 50, .external_lex_state = 3}, - [27] = {.lex_state = 50, .external_lex_state = 3}, - [28] = {.lex_state = 50, .external_lex_state = 3}, - [29] = {.lex_state = 50, .external_lex_state = 3}, - [30] = {.lex_state = 50, .external_lex_state = 3}, - [31] = {.lex_state = 50, .external_lex_state = 3}, - [32] = {.lex_state = 50, .external_lex_state = 3}, - [33] = {.lex_state = 50, .external_lex_state = 3}, - [34] = {.lex_state = 50, .external_lex_state = 3}, - [35] = {.lex_state = 50, .external_lex_state = 3}, - [36] = {.lex_state = 50, .external_lex_state = 3}, - [37] = {.lex_state = 50, .external_lex_state = 3}, - [38] = {.lex_state = 50, .external_lex_state = 3}, - [39] = {.lex_state = 50, .external_lex_state = 3}, - [40] = {.lex_state = 50, .external_lex_state = 3}, - [41] = {.lex_state = 50, .external_lex_state = 3}, - [42] = {.lex_state = 50, .external_lex_state = 3}, - [43] = {.lex_state = 50, .external_lex_state = 3}, - [44] = {.lex_state = 50, .external_lex_state = 3}, - [45] = {.lex_state = 50, .external_lex_state = 3}, - [46] = {.lex_state = 50, .external_lex_state = 3}, - [47] = {.lex_state = 50, .external_lex_state = 3}, - [48] = {.lex_state = 50, .external_lex_state = 3}, - [49] = {.lex_state = 50, .external_lex_state = 3}, - [50] = {.lex_state = 50, .external_lex_state = 3}, - [51] = {.lex_state = 50, .external_lex_state = 3}, - [52] = {.lex_state = 50, .external_lex_state = 3}, - [53] = {.lex_state = 50, .external_lex_state = 3}, - [54] = {.lex_state = 50, .external_lex_state = 3}, - [55] = {.lex_state = 50, .external_lex_state = 3}, - [56] = {.lex_state = 50, .external_lex_state = 3}, - [57] = {.lex_state = 50, .external_lex_state = 3}, - [58] = {.lex_state = 50, .external_lex_state = 3}, - [59] = {.lex_state = 50, .external_lex_state = 3}, - [60] = {.lex_state = 50, .external_lex_state = 3}, - [61] = {.lex_state = 50, .external_lex_state = 3}, - [62] = {.lex_state = 50, .external_lex_state = 3}, - [63] = {.lex_state = 50, .external_lex_state = 3}, - [64] = {.lex_state = 50, .external_lex_state = 2}, - [65] = {.lex_state = 50, .external_lex_state = 2}, - [66] = {.lex_state = 50, .external_lex_state = 4}, - [67] = {.lex_state = 50, .external_lex_state = 4}, - [68] = {.lex_state = 50, .external_lex_state = 5}, - [69] = {.lex_state = 50, .external_lex_state = 5}, - [70] = {.lex_state = 50, .external_lex_state = 5}, - [71] = {.lex_state = 50, .external_lex_state = 5}, - [72] = {.lex_state = 50, .external_lex_state = 5}, - [73] = {.lex_state = 50, .external_lex_state = 5}, - [74] = {.lex_state = 50, .external_lex_state = 5}, - [75] = {.lex_state = 50, .external_lex_state = 5}, - [76] = {.lex_state = 50, .external_lex_state = 5}, - [77] = {.lex_state = 50, .external_lex_state = 5}, - [78] = {.lex_state = 50, .external_lex_state = 5}, - [79] = {.lex_state = 50, .external_lex_state = 5}, - [80] = {.lex_state = 50, .external_lex_state = 5}, - [81] = {.lex_state = 50, .external_lex_state = 5}, - [82] = {.lex_state = 50, .external_lex_state = 5}, - [83] = {.lex_state = 50, .external_lex_state = 5}, - [84] = {.lex_state = 50, .external_lex_state = 5}, - [85] = {.lex_state = 50, .external_lex_state = 5}, - [86] = {.lex_state = 50, .external_lex_state = 5}, - [87] = {.lex_state = 50, .external_lex_state = 5}, - [88] = {.lex_state = 50, .external_lex_state = 5}, - [89] = {.lex_state = 50, .external_lex_state = 5}, - [90] = {.lex_state = 50, .external_lex_state = 5}, - [91] = {.lex_state = 50, .external_lex_state = 5}, - [92] = {.lex_state = 50, .external_lex_state = 5}, - [93] = {.lex_state = 50, .external_lex_state = 5}, - [94] = {.lex_state = 50, .external_lex_state = 5}, - [95] = {.lex_state = 50, .external_lex_state = 5}, - [96] = {.lex_state = 50, .external_lex_state = 5}, - [97] = {.lex_state = 50, .external_lex_state = 5}, - [98] = {.lex_state = 50, .external_lex_state = 5}, - [99] = {.lex_state = 50, .external_lex_state = 5}, - [100] = {.lex_state = 50, .external_lex_state = 5}, - [101] = {.lex_state = 50, .external_lex_state = 5}, - [102] = {.lex_state = 50, .external_lex_state = 5}, - [103] = {.lex_state = 50, .external_lex_state = 5}, - [104] = {.lex_state = 50, .external_lex_state = 5}, - [105] = {.lex_state = 50, .external_lex_state = 5}, - [106] = {.lex_state = 50, .external_lex_state = 5}, - [107] = {.lex_state = 50, .external_lex_state = 5}, - [108] = {.lex_state = 50, .external_lex_state = 5}, - [109] = {.lex_state = 50, .external_lex_state = 5}, - [110] = {.lex_state = 50, .external_lex_state = 5}, - [111] = {.lex_state = 50, .external_lex_state = 4}, - [112] = {.lex_state = 50, .external_lex_state = 5}, - [113] = {.lex_state = 50, .external_lex_state = 5}, - [114] = {.lex_state = 50, .external_lex_state = 5}, - [115] = {.lex_state = 50, .external_lex_state = 5}, - [116] = {.lex_state = 50, .external_lex_state = 5}, - [117] = {.lex_state = 50, .external_lex_state = 5}, - [118] = {.lex_state = 50, .external_lex_state = 5}, - [119] = {.lex_state = 50, .external_lex_state = 5}, - [120] = {.lex_state = 50, .external_lex_state = 5}, - [121] = {.lex_state = 50, .external_lex_state = 5}, - [122] = {.lex_state = 50, .external_lex_state = 5}, - [123] = {.lex_state = 50, .external_lex_state = 5}, - [124] = {.lex_state = 50, .external_lex_state = 5}, - [125] = {.lex_state = 50, .external_lex_state = 5}, - [126] = {.lex_state = 50, .external_lex_state = 5}, - [127] = {.lex_state = 50, .external_lex_state = 4}, - [128] = {.lex_state = 50, .external_lex_state = 4}, - [129] = {.lex_state = 50, .external_lex_state = 4}, - [130] = {.lex_state = 50, .external_lex_state = 4}, - [131] = {.lex_state = 50, .external_lex_state = 4}, - [132] = {.lex_state = 50, .external_lex_state = 4}, - [133] = {.lex_state = 50, .external_lex_state = 2}, - [134] = {.lex_state = 50, .external_lex_state = 4}, - [135] = {.lex_state = 50, .external_lex_state = 2}, - [136] = {.lex_state = 50, .external_lex_state = 2}, - [137] = {.lex_state = 14, .external_lex_state = 2}, - [138] = {.lex_state = 50, .external_lex_state = 2}, - [139] = {.lex_state = 14, .external_lex_state = 2}, - [140] = {.lex_state = 50, .external_lex_state = 4}, + [1] = {.lex_state = 51, .external_lex_state = 2}, + [2] = {.lex_state = 51, .external_lex_state = 3}, + [3] = {.lex_state = 51, .external_lex_state = 3}, + [4] = {.lex_state = 51, .external_lex_state = 3}, + [5] = {.lex_state = 51, .external_lex_state = 3}, + [6] = {.lex_state = 51, .external_lex_state = 3}, + [7] = {.lex_state = 51, .external_lex_state = 3}, + [8] = {.lex_state = 51, .external_lex_state = 3}, + [9] = {.lex_state = 51, .external_lex_state = 3}, + [10] = {.lex_state = 51, .external_lex_state = 3}, + [11] = {.lex_state = 51, .external_lex_state = 3}, + [12] = {.lex_state = 51, .external_lex_state = 3}, + [13] = {.lex_state = 51, .external_lex_state = 3}, + [14] = {.lex_state = 51, .external_lex_state = 3}, + [15] = {.lex_state = 51, .external_lex_state = 3}, + [16] = {.lex_state = 51, .external_lex_state = 3}, + [17] = {.lex_state = 51, .external_lex_state = 3}, + [18] = {.lex_state = 51, .external_lex_state = 3}, + [19] = {.lex_state = 51, .external_lex_state = 3}, + [20] = {.lex_state = 51, .external_lex_state = 3}, + [21] = {.lex_state = 51, .external_lex_state = 3}, + [22] = {.lex_state = 51, .external_lex_state = 3}, + [23] = {.lex_state = 51, .external_lex_state = 3}, + [24] = {.lex_state = 51, .external_lex_state = 3}, + [25] = {.lex_state = 51, .external_lex_state = 3}, + [26] = {.lex_state = 51, .external_lex_state = 3}, + [27] = {.lex_state = 51, .external_lex_state = 3}, + [28] = {.lex_state = 51, .external_lex_state = 3}, + [29] = {.lex_state = 51, .external_lex_state = 3}, + [30] = {.lex_state = 51, .external_lex_state = 3}, + [31] = {.lex_state = 51, .external_lex_state = 3}, + [32] = {.lex_state = 51, .external_lex_state = 3}, + [33] = {.lex_state = 51, .external_lex_state = 3}, + [34] = {.lex_state = 51, .external_lex_state = 3}, + [35] = {.lex_state = 51, .external_lex_state = 3}, + [36] = {.lex_state = 51, .external_lex_state = 3}, + [37] = {.lex_state = 51, .external_lex_state = 3}, + [38] = {.lex_state = 51, .external_lex_state = 3}, + [39] = {.lex_state = 51, .external_lex_state = 3}, + [40] = {.lex_state = 51, .external_lex_state = 3}, + [41] = {.lex_state = 51, .external_lex_state = 3}, + [42] = {.lex_state = 51, .external_lex_state = 3}, + [43] = {.lex_state = 51, .external_lex_state = 3}, + [44] = {.lex_state = 51, .external_lex_state = 3}, + [45] = {.lex_state = 51, .external_lex_state = 3}, + [46] = {.lex_state = 51, .external_lex_state = 3}, + [47] = {.lex_state = 51, .external_lex_state = 3}, + [48] = {.lex_state = 51, .external_lex_state = 3}, + [49] = {.lex_state = 51, .external_lex_state = 3}, + [50] = {.lex_state = 51, .external_lex_state = 3}, + [51] = {.lex_state = 51, .external_lex_state = 3}, + [52] = {.lex_state = 51, .external_lex_state = 3}, + [53] = {.lex_state = 51, .external_lex_state = 3}, + [54] = {.lex_state = 51, .external_lex_state = 3}, + [55] = {.lex_state = 51, .external_lex_state = 3}, + [56] = {.lex_state = 51, .external_lex_state = 3}, + [57] = {.lex_state = 51, .external_lex_state = 3}, + [58] = {.lex_state = 51, .external_lex_state = 3}, + [59] = {.lex_state = 51, .external_lex_state = 3}, + [60] = {.lex_state = 51, .external_lex_state = 2}, + [61] = {.lex_state = 51, .external_lex_state = 3}, + [62] = {.lex_state = 51, .external_lex_state = 2}, + [63] = {.lex_state = 51, .external_lex_state = 3}, + [64] = {.lex_state = 51, .external_lex_state = 3}, + [65] = {.lex_state = 51, .external_lex_state = 3}, + [66] = {.lex_state = 51, .external_lex_state = 4}, + [67] = {.lex_state = 51, .external_lex_state = 4}, + [68] = {.lex_state = 51, .external_lex_state = 4}, + [69] = {.lex_state = 51, .external_lex_state = 5}, + [70] = {.lex_state = 51, .external_lex_state = 5}, + [71] = {.lex_state = 51, .external_lex_state = 5}, + [72] = {.lex_state = 51, .external_lex_state = 5}, + [73] = {.lex_state = 51, .external_lex_state = 5}, + [74] = {.lex_state = 51, .external_lex_state = 5}, + [75] = {.lex_state = 51, .external_lex_state = 5}, + [76] = {.lex_state = 51, .external_lex_state = 5}, + [77] = {.lex_state = 51, .external_lex_state = 5}, + [78] = {.lex_state = 51, .external_lex_state = 5}, + [79] = {.lex_state = 51, .external_lex_state = 5}, + [80] = {.lex_state = 51, .external_lex_state = 5}, + [81] = {.lex_state = 51, .external_lex_state = 5}, + [82] = {.lex_state = 51, .external_lex_state = 5}, + [83] = {.lex_state = 51, .external_lex_state = 5}, + [84] = {.lex_state = 51, .external_lex_state = 5}, + [85] = {.lex_state = 51, .external_lex_state = 5}, + [86] = {.lex_state = 51, .external_lex_state = 5}, + [87] = {.lex_state = 51, .external_lex_state = 5}, + [88] = {.lex_state = 51, .external_lex_state = 5}, + [89] = {.lex_state = 51, .external_lex_state = 5}, + [90] = {.lex_state = 51, .external_lex_state = 5}, + [91] = {.lex_state = 51, .external_lex_state = 5}, + [92] = {.lex_state = 51, .external_lex_state = 5}, + [93] = {.lex_state = 51, .external_lex_state = 5}, + [94] = {.lex_state = 51, .external_lex_state = 5}, + [95] = {.lex_state = 51, .external_lex_state = 5}, + [96] = {.lex_state = 51, .external_lex_state = 5}, + [97] = {.lex_state = 51, .external_lex_state = 5}, + [98] = {.lex_state = 51, .external_lex_state = 5}, + [99] = {.lex_state = 51, .external_lex_state = 5}, + [100] = {.lex_state = 51, .external_lex_state = 5}, + [101] = {.lex_state = 51, .external_lex_state = 5}, + [102] = {.lex_state = 51, .external_lex_state = 5}, + [103] = {.lex_state = 51, .external_lex_state = 5}, + [104] = {.lex_state = 51, .external_lex_state = 5}, + [105] = {.lex_state = 51, .external_lex_state = 5}, + [106] = {.lex_state = 51, .external_lex_state = 5}, + [107] = {.lex_state = 51, .external_lex_state = 5}, + [108] = {.lex_state = 51, .external_lex_state = 5}, + [109] = {.lex_state = 51, .external_lex_state = 5}, + [110] = {.lex_state = 51, .external_lex_state = 5}, + [111] = {.lex_state = 51, .external_lex_state = 5}, + [112] = {.lex_state = 51, .external_lex_state = 5}, + [113] = {.lex_state = 51, .external_lex_state = 5}, + [114] = {.lex_state = 51, .external_lex_state = 5}, + [115] = {.lex_state = 51, .external_lex_state = 5}, + [116] = {.lex_state = 51, .external_lex_state = 5}, + [117] = {.lex_state = 51, .external_lex_state = 5}, + [118] = {.lex_state = 51, .external_lex_state = 5}, + [119] = {.lex_state = 51, .external_lex_state = 5}, + [120] = {.lex_state = 51, .external_lex_state = 5}, + [121] = {.lex_state = 51, .external_lex_state = 5}, + [122] = {.lex_state = 51, .external_lex_state = 5}, + [123] = {.lex_state = 51, .external_lex_state = 5}, + [124] = {.lex_state = 51, .external_lex_state = 5}, + [125] = {.lex_state = 51, .external_lex_state = 5}, + [126] = {.lex_state = 51, .external_lex_state = 5}, + [127] = {.lex_state = 51, .external_lex_state = 4}, + [128] = {.lex_state = 51, .external_lex_state = 4}, + [129] = {.lex_state = 51, .external_lex_state = 4}, + [130] = {.lex_state = 51, .external_lex_state = 4}, + [131] = {.lex_state = 51, .external_lex_state = 4}, + [132] = {.lex_state = 51, .external_lex_state = 4}, + [133] = {.lex_state = 51, .external_lex_state = 2}, + [134] = {.lex_state = 51, .external_lex_state = 4}, + [135] = {.lex_state = 51, .external_lex_state = 2}, + [136] = {.lex_state = 51, .external_lex_state = 2}, + [137] = {.lex_state = 51, .external_lex_state = 2}, + [138] = {.lex_state = 51, .external_lex_state = 2}, + [139] = {.lex_state = 51, .external_lex_state = 2}, + [140] = {.lex_state = 51, .external_lex_state = 4}, [141] = {.lex_state = 14, .external_lex_state = 2}, - [142] = {.lex_state = 14, .external_lex_state = 2}, - [143] = {.lex_state = 50, .external_lex_state = 2}, - [144] = {.lex_state = 50, .external_lex_state = 2}, - [145] = {.lex_state = 50, .external_lex_state = 4}, - [146] = {.lex_state = 50, .external_lex_state = 2}, - [147] = {.lex_state = 14, .external_lex_state = 2}, - [148] = {.lex_state = 50, .external_lex_state = 2}, - [149] = {.lex_state = 50, .external_lex_state = 2}, - [150] = {.lex_state = 50, .external_lex_state = 2}, - [151] = {.lex_state = 50, .external_lex_state = 2}, - [152] = {.lex_state = 14, .external_lex_state = 2}, - [153] = {.lex_state = 50, .external_lex_state = 2}, - [154] = {.lex_state = 50, .external_lex_state = 2}, - [155] = {.lex_state = 50, .external_lex_state = 2}, - [156] = {.lex_state = 50, .external_lex_state = 2}, - [157] = {.lex_state = 50, .external_lex_state = 2}, - [158] = {.lex_state = 14, .external_lex_state = 2}, - [159] = {.lex_state = 50, .external_lex_state = 2}, - [160] = {.lex_state = 14, .external_lex_state = 2}, - [161] = {.lex_state = 50, .external_lex_state = 2}, - [162] = {.lex_state = 14, .external_lex_state = 2}, - [163] = {.lex_state = 14, .external_lex_state = 2}, - [164] = {.lex_state = 50, .external_lex_state = 2}, - [165] = {.lex_state = 14, .external_lex_state = 2}, - [166] = {.lex_state = 50, .external_lex_state = 2}, - [167] = {.lex_state = 50, .external_lex_state = 2}, - [168] = {.lex_state = 50, .external_lex_state = 2}, - [169] = {.lex_state = 50, .external_lex_state = 2}, - [170] = {.lex_state = 50, .external_lex_state = 2}, - [171] = {.lex_state = 50, .external_lex_state = 2}, - [172] = {.lex_state = 50, .external_lex_state = 2}, - [173] = {.lex_state = 50, .external_lex_state = 2}, - [174] = {.lex_state = 50, .external_lex_state = 2}, - [175] = {.lex_state = 50, .external_lex_state = 2}, - [176] = {.lex_state = 50, .external_lex_state = 2}, - [177] = {.lex_state = 50, .external_lex_state = 4}, - [178] = {.lex_state = 50, .external_lex_state = 4}, - [179] = {.lex_state = 50, .external_lex_state = 2}, - [180] = {.lex_state = 50, .external_lex_state = 2}, - [181] = {.lex_state = 50, .external_lex_state = 2}, - [182] = {.lex_state = 50, .external_lex_state = 2}, - [183] = {.lex_state = 50, .external_lex_state = 2}, - [184] = {.lex_state = 50, .external_lex_state = 2}, - [185] = {.lex_state = 50, .external_lex_state = 2}, - [186] = {.lex_state = 50, .external_lex_state = 4}, - [187] = {.lex_state = 50, .external_lex_state = 2}, - [188] = {.lex_state = 50, .external_lex_state = 4}, - [189] = {.lex_state = 50, .external_lex_state = 2}, - [190] = {.lex_state = 50, .external_lex_state = 4}, - [191] = {.lex_state = 50, .external_lex_state = 2}, - [192] = {.lex_state = 50, .external_lex_state = 2}, - [193] = {.lex_state = 50, .external_lex_state = 2}, - [194] = {.lex_state = 50, .external_lex_state = 2}, - [195] = {.lex_state = 50, .external_lex_state = 2}, - [196] = {.lex_state = 50, .external_lex_state = 2}, - [197] = {.lex_state = 50, .external_lex_state = 2}, - [198] = {.lex_state = 50, .external_lex_state = 2}, - [199] = {.lex_state = 50, .external_lex_state = 2}, - [200] = {.lex_state = 50, .external_lex_state = 2}, - [201] = {.lex_state = 50, .external_lex_state = 2}, - [202] = {.lex_state = 50, .external_lex_state = 2}, - [203] = {.lex_state = 50, .external_lex_state = 2}, - [204] = {.lex_state = 50, .external_lex_state = 2}, - [205] = {.lex_state = 50, .external_lex_state = 2}, - [206] = {.lex_state = 50, .external_lex_state = 2}, - [207] = {.lex_state = 50, .external_lex_state = 2}, - [208] = {.lex_state = 50, .external_lex_state = 2}, - [209] = {.lex_state = 50, .external_lex_state = 2}, - [210] = {.lex_state = 50, .external_lex_state = 4}, - [211] = {.lex_state = 50, .external_lex_state = 2}, - [212] = {.lex_state = 50, .external_lex_state = 2}, - [213] = {.lex_state = 14, .external_lex_state = 2}, - [214] = {.lex_state = 14, .external_lex_state = 2}, - [215] = {.lex_state = 14, .external_lex_state = 2}, - [216] = {.lex_state = 14, .external_lex_state = 2}, - [217] = {.lex_state = 50, .external_lex_state = 2}, - [218] = {.lex_state = 14, .external_lex_state = 2}, - [219] = {.lex_state = 50, .external_lex_state = 2}, - [220] = {.lex_state = 14, .external_lex_state = 2}, - [221] = {.lex_state = 50, .external_lex_state = 2}, - [222] = {.lex_state = 50, .external_lex_state = 2}, - [223] = {.lex_state = 50, .external_lex_state = 2}, - [224] = {.lex_state = 50, .external_lex_state = 2}, - [225] = {.lex_state = 50, .external_lex_state = 2}, - [226] = {.lex_state = 14, .external_lex_state = 2}, - [227] = {.lex_state = 50, .external_lex_state = 2}, - [228] = {.lex_state = 50, .external_lex_state = 2}, - [229] = {.lex_state = 50, .external_lex_state = 2}, - [230] = {.lex_state = 50, .external_lex_state = 2}, - [231] = {.lex_state = 50, .external_lex_state = 2}, - [232] = {.lex_state = 50, .external_lex_state = 2}, - [233] = {.lex_state = 50, .external_lex_state = 2}, - [234] = {.lex_state = 50, .external_lex_state = 2}, - [235] = {.lex_state = 50, .external_lex_state = 2}, - [236] = {.lex_state = 50, .external_lex_state = 2}, - [237] = {.lex_state = 50, .external_lex_state = 2}, - [238] = {.lex_state = 50, .external_lex_state = 2}, - [239] = {.lex_state = 50, .external_lex_state = 2}, - [240] = {.lex_state = 50, .external_lex_state = 2}, - [241] = {.lex_state = 50, .external_lex_state = 2}, - [242] = {.lex_state = 50, .external_lex_state = 2}, - [243] = {.lex_state = 14, .external_lex_state = 2}, - [244] = {.lex_state = 16}, - [245] = {.lex_state = 16}, - [246] = {.lex_state = 14, .external_lex_state = 2}, - [247] = {.lex_state = 50, .external_lex_state = 2}, - [248] = {.lex_state = 50, .external_lex_state = 2}, - [249] = {.lex_state = 50, .external_lex_state = 2}, - [250] = {.lex_state = 50, .external_lex_state = 3}, - [251] = {.lex_state = 50, .external_lex_state = 2}, - [252] = {.lex_state = 50, .external_lex_state = 3}, - [253] = {.lex_state = 50, .external_lex_state = 2}, - [254] = {.lex_state = 50, .external_lex_state = 2}, - [255] = {.lex_state = 50, .external_lex_state = 3}, - [256] = {.lex_state = 50, .external_lex_state = 2}, - [257] = {.lex_state = 50, .external_lex_state = 3}, - [258] = {.lex_state = 50, .external_lex_state = 2}, - [259] = {.lex_state = 50, .external_lex_state = 2}, - [260] = {.lex_state = 50, .external_lex_state = 2}, - [261] = {.lex_state = 50, .external_lex_state = 2}, - [262] = {.lex_state = 14, .external_lex_state = 2}, - [263] = {.lex_state = 14, .external_lex_state = 2}, - [264] = {.lex_state = 50, .external_lex_state = 2}, - [265] = {.lex_state = 50, .external_lex_state = 4}, - [266] = {.lex_state = 50, .external_lex_state = 2}, - [267] = {.lex_state = 14, .external_lex_state = 2}, - [268] = {.lex_state = 50, .external_lex_state = 2}, - [269] = {.lex_state = 50, .external_lex_state = 2}, - [270] = {.lex_state = 50, .external_lex_state = 2}, - [271] = {.lex_state = 50, .external_lex_state = 4}, - [272] = {.lex_state = 50, .external_lex_state = 4}, - [273] = {.lex_state = 50, .external_lex_state = 2}, - [274] = {.lex_state = 50, .external_lex_state = 2}, - [275] = {.lex_state = 50, .external_lex_state = 2}, - [276] = {.lex_state = 50, .external_lex_state = 2}, - [277] = {.lex_state = 14, .external_lex_state = 2}, - [278] = {.lex_state = 50, .external_lex_state = 2}, - [279] = {.lex_state = 50, .external_lex_state = 2}, - [280] = {.lex_state = 50, .external_lex_state = 2}, - [281] = {.lex_state = 50, .external_lex_state = 2}, - [282] = {.lex_state = 50, .external_lex_state = 2}, - [283] = {.lex_state = 50, .external_lex_state = 2}, - [284] = {.lex_state = 50, .external_lex_state = 2}, - [285] = {.lex_state = 50, .external_lex_state = 2}, - [286] = {.lex_state = 50, .external_lex_state = 4}, - [287] = {.lex_state = 50, .external_lex_state = 2}, - [288] = {.lex_state = 50, .external_lex_state = 2}, - [289] = {.lex_state = 50, .external_lex_state = 2}, - [290] = {.lex_state = 50, .external_lex_state = 2}, - [291] = {.lex_state = 50, .external_lex_state = 2}, - [292] = {.lex_state = 50, .external_lex_state = 3}, - [293] = {.lex_state = 50, .external_lex_state = 3}, - [294] = {.lex_state = 50, .external_lex_state = 2}, - [295] = {.lex_state = 50, .external_lex_state = 2}, - [296] = {.lex_state = 50, .external_lex_state = 3}, - [297] = {.lex_state = 50, .external_lex_state = 2}, - [298] = {.lex_state = 15, .external_lex_state = 6}, - [299] = {.lex_state = 15, .external_lex_state = 6}, - [300] = {.lex_state = 50, .external_lex_state = 3}, - [301] = {.lex_state = 50, .external_lex_state = 3}, - [302] = {.lex_state = 50, .external_lex_state = 2}, - [303] = {.lex_state = 50, .external_lex_state = 2}, - [304] = {.lex_state = 50, .external_lex_state = 3}, - [305] = {.lex_state = 50, .external_lex_state = 2}, - [306] = {.lex_state = 50, .external_lex_state = 3}, - [307] = {.lex_state = 50, .external_lex_state = 3}, - [308] = {.lex_state = 50, .external_lex_state = 2}, - [309] = {.lex_state = 50, .external_lex_state = 2}, - [310] = {.lex_state = 50, .external_lex_state = 3}, - [311] = {.lex_state = 50, .external_lex_state = 2}, - [312] = {.lex_state = 50, .external_lex_state = 3}, - [313] = {.lex_state = 50, .external_lex_state = 3}, - [314] = {.lex_state = 50, .external_lex_state = 2}, - [315] = {.lex_state = 50, .external_lex_state = 2}, - [316] = {.lex_state = 50, .external_lex_state = 2}, - [317] = {.lex_state = 50, .external_lex_state = 2}, - [318] = {.lex_state = 50, .external_lex_state = 2}, - [319] = {.lex_state = 50, .external_lex_state = 2}, - [320] = {.lex_state = 50, .external_lex_state = 2}, - [321] = {.lex_state = 50, .external_lex_state = 2}, - [322] = {.lex_state = 50, .external_lex_state = 2}, - [323] = {.lex_state = 50, .external_lex_state = 2}, - [324] = {.lex_state = 50, .external_lex_state = 2}, - [325] = {.lex_state = 50, .external_lex_state = 2}, - [326] = {.lex_state = 50, .external_lex_state = 2}, - [327] = {.lex_state = 50, .external_lex_state = 2}, - [328] = {.lex_state = 50, .external_lex_state = 2}, - [329] = {.lex_state = 50, .external_lex_state = 2}, - [330] = {.lex_state = 50, .external_lex_state = 2}, - [331] = {.lex_state = 50, .external_lex_state = 2}, - [332] = {.lex_state = 50, .external_lex_state = 2}, - [333] = {.lex_state = 50, .external_lex_state = 2}, - [334] = {.lex_state = 50, .external_lex_state = 2}, - [335] = {.lex_state = 50, .external_lex_state = 2}, - [336] = {.lex_state = 50, .external_lex_state = 2}, - [337] = {.lex_state = 50, .external_lex_state = 2}, - [338] = {.lex_state = 50, .external_lex_state = 2}, - [339] = {.lex_state = 50, .external_lex_state = 2}, - [340] = {.lex_state = 50, .external_lex_state = 2}, - [341] = {.lex_state = 50, .external_lex_state = 2}, - [342] = {.lex_state = 50, .external_lex_state = 2}, - [343] = {.lex_state = 50, .external_lex_state = 2}, - [344] = {.lex_state = 50, .external_lex_state = 2}, - [345] = {.lex_state = 50, .external_lex_state = 2}, - [346] = {.lex_state = 50, .external_lex_state = 2}, - [347] = {.lex_state = 50, .external_lex_state = 2}, - [348] = {.lex_state = 50, .external_lex_state = 2}, - [349] = {.lex_state = 50, .external_lex_state = 2}, - [350] = {.lex_state = 50, .external_lex_state = 2}, - [351] = {.lex_state = 50, .external_lex_state = 2}, - [352] = {.lex_state = 50, .external_lex_state = 2}, - [353] = {.lex_state = 50, .external_lex_state = 2}, - [354] = {.lex_state = 50, .external_lex_state = 2}, - [355] = {.lex_state = 50, .external_lex_state = 2}, - [356] = {.lex_state = 50, .external_lex_state = 2}, - [357] = {.lex_state = 50, .external_lex_state = 2}, - [358] = {.lex_state = 50, .external_lex_state = 2}, - [359] = {.lex_state = 50, .external_lex_state = 2}, - [360] = {.lex_state = 50, .external_lex_state = 2}, - [361] = {.lex_state = 50, .external_lex_state = 2}, - [362] = {.lex_state = 50, .external_lex_state = 2}, - [363] = {.lex_state = 50, .external_lex_state = 2}, - [364] = {.lex_state = 50, .external_lex_state = 2}, - [365] = {.lex_state = 50, .external_lex_state = 2}, - [366] = {.lex_state = 50, .external_lex_state = 2}, - [367] = {.lex_state = 50, .external_lex_state = 2}, - [368] = {.lex_state = 50, .external_lex_state = 2}, - [369] = {.lex_state = 50, .external_lex_state = 3}, - [370] = {.lex_state = 50, .external_lex_state = 2}, - [371] = {.lex_state = 50, .external_lex_state = 2}, - [372] = {.lex_state = 50, .external_lex_state = 2}, - [373] = {.lex_state = 50, .external_lex_state = 2}, - [374] = {.lex_state = 50, .external_lex_state = 2}, - [375] = {.lex_state = 50, .external_lex_state = 2}, - [376] = {.lex_state = 50, .external_lex_state = 2}, - [377] = {.lex_state = 50, .external_lex_state = 2}, - [378] = {.lex_state = 50, .external_lex_state = 2}, - [379] = {.lex_state = 50, .external_lex_state = 2}, - [380] = {.lex_state = 50, .external_lex_state = 2}, - [381] = {.lex_state = 15, .external_lex_state = 7}, - [382] = {.lex_state = 50, .external_lex_state = 2}, - [383] = {.lex_state = 50, .external_lex_state = 2}, - [384] = {.lex_state = 50, .external_lex_state = 2}, - [385] = {.lex_state = 50, .external_lex_state = 2}, - [386] = {.lex_state = 50, .external_lex_state = 2}, - [387] = {.lex_state = 50, .external_lex_state = 2}, - [388] = {.lex_state = 50, .external_lex_state = 2}, - [389] = {.lex_state = 50, .external_lex_state = 2}, - [390] = {.lex_state = 50, .external_lex_state = 3}, - [391] = {.lex_state = 50, .external_lex_state = 2}, - [392] = {.lex_state = 50, .external_lex_state = 3}, - [393] = {.lex_state = 50, .external_lex_state = 3}, - [394] = {.lex_state = 50, .external_lex_state = 2}, - [395] = {.lex_state = 50, .external_lex_state = 2}, - [396] = {.lex_state = 50, .external_lex_state = 2}, - [397] = {.lex_state = 15, .external_lex_state = 6}, - [398] = {.lex_state = 50, .external_lex_state = 2}, - [399] = {.lex_state = 50, .external_lex_state = 2}, - [400] = {.lex_state = 50, .external_lex_state = 2}, - [401] = {.lex_state = 50, .external_lex_state = 3}, - [402] = {.lex_state = 50, .external_lex_state = 3}, - [403] = {.lex_state = 50, .external_lex_state = 3}, - [404] = {.lex_state = 50, .external_lex_state = 3}, - [405] = {.lex_state = 50, .external_lex_state = 2}, - [406] = {.lex_state = 50, .external_lex_state = 3}, - [407] = {.lex_state = 50, .external_lex_state = 2}, - [408] = {.lex_state = 50, .external_lex_state = 3}, - [409] = {.lex_state = 50, .external_lex_state = 2}, - [410] = {.lex_state = 50, .external_lex_state = 3}, - [411] = {.lex_state = 50, .external_lex_state = 2}, - [412] = {.lex_state = 50, .external_lex_state = 3}, - [413] = {.lex_state = 50, .external_lex_state = 3}, - [414] = {.lex_state = 50, .external_lex_state = 2}, - [415] = {.lex_state = 50, .external_lex_state = 2}, - [416] = {.lex_state = 15}, - [417] = {.lex_state = 50, .external_lex_state = 2}, - [418] = {.lex_state = 50, .external_lex_state = 3}, - [419] = {.lex_state = 50, .external_lex_state = 3}, - [420] = {.lex_state = 50, .external_lex_state = 2}, - [421] = {.lex_state = 50, .external_lex_state = 3}, - [422] = {.lex_state = 16, .external_lex_state = 6}, - [423] = {.lex_state = 50, .external_lex_state = 2}, - [424] = {.lex_state = 50, .external_lex_state = 3}, - [425] = {.lex_state = 50, .external_lex_state = 3}, - [426] = {.lex_state = 50, .external_lex_state = 2}, - [427] = {.lex_state = 50, .external_lex_state = 3}, - [428] = {.lex_state = 50, .external_lex_state = 2}, - [429] = {.lex_state = 15, .external_lex_state = 6}, - [430] = {.lex_state = 50, .external_lex_state = 3}, - [431] = {.lex_state = 50, .external_lex_state = 3}, - [432] = {.lex_state = 50, .external_lex_state = 2}, - [433] = {.lex_state = 50, .external_lex_state = 3}, - [434] = {.lex_state = 50, .external_lex_state = 2}, - [435] = {.lex_state = 50, .external_lex_state = 2}, - [436] = {.lex_state = 50, .external_lex_state = 3}, - [437] = {.lex_state = 50, .external_lex_state = 2}, - [438] = {.lex_state = 50, .external_lex_state = 2}, - [439] = {.lex_state = 50, .external_lex_state = 3}, - [440] = {.lex_state = 15, .external_lex_state = 6}, - [441] = {.lex_state = 50, .external_lex_state = 2}, - [442] = {.lex_state = 15}, - [443] = {.lex_state = 16, .external_lex_state = 6}, - [444] = {.lex_state = 50, .external_lex_state = 2}, - [445] = {.lex_state = 50, .external_lex_state = 2}, - [446] = {.lex_state = 16, .external_lex_state = 6}, - [447] = {.lex_state = 50, .external_lex_state = 2}, - [448] = {.lex_state = 50, .external_lex_state = 2}, - [449] = {.lex_state = 50, .external_lex_state = 2}, - [450] = {.lex_state = 50, .external_lex_state = 2}, - [451] = {.lex_state = 16, .external_lex_state = 6}, - [452] = {.lex_state = 16}, - [453] = {.lex_state = 50, .external_lex_state = 2}, - [454] = {.lex_state = 50, .external_lex_state = 2}, - [455] = {.lex_state = 50, .external_lex_state = 3}, - [456] = {.lex_state = 50, .external_lex_state = 2}, - [457] = {.lex_state = 50, .external_lex_state = 2}, - [458] = {.lex_state = 50, .external_lex_state = 2}, - [459] = {.lex_state = 16, .external_lex_state = 6}, - [460] = {.lex_state = 50, .external_lex_state = 3}, - [461] = {.lex_state = 50, .external_lex_state = 2}, - [462] = {.lex_state = 50, .external_lex_state = 3}, - [463] = {.lex_state = 50, .external_lex_state = 3}, - [464] = {.lex_state = 50, .external_lex_state = 3}, - [465] = {.lex_state = 50, .external_lex_state = 2}, - [466] = {.lex_state = 50, .external_lex_state = 3}, - [467] = {.lex_state = 50, .external_lex_state = 2}, - [468] = {.lex_state = 50, .external_lex_state = 3}, - [469] = {.lex_state = 50, .external_lex_state = 2}, - [470] = {.lex_state = 50, .external_lex_state = 3}, - [471] = {.lex_state = 50, .external_lex_state = 3}, - [472] = {.lex_state = 50, .external_lex_state = 2}, - [473] = {.lex_state = 50, .external_lex_state = 3}, - [474] = {.lex_state = 50, .external_lex_state = 3}, - [475] = {.lex_state = 50, .external_lex_state = 3}, - [476] = {.lex_state = 50, .external_lex_state = 2}, - [477] = {.lex_state = 50, .external_lex_state = 3}, - [478] = {.lex_state = 50, .external_lex_state = 3}, - [479] = {.lex_state = 50, .external_lex_state = 3}, - [480] = {.lex_state = 50, .external_lex_state = 3}, - [481] = {.lex_state = 50, .external_lex_state = 3}, - [482] = {.lex_state = 50, .external_lex_state = 2}, - [483] = {.lex_state = 50, .external_lex_state = 2}, - [484] = {.lex_state = 50, .external_lex_state = 2}, - [485] = {.lex_state = 50, .external_lex_state = 2}, - [486] = {.lex_state = 50, .external_lex_state = 3}, - [487] = {.lex_state = 50, .external_lex_state = 2}, - [488] = {.lex_state = 50, .external_lex_state = 3}, - [489] = {.lex_state = 50, .external_lex_state = 3}, - [490] = {.lex_state = 50, .external_lex_state = 2}, - [491] = {.lex_state = 50, .external_lex_state = 2}, - [492] = {.lex_state = 50, .external_lex_state = 3}, - [493] = {.lex_state = 50, .external_lex_state = 3}, - [494] = {.lex_state = 50, .external_lex_state = 3}, - [495] = {.lex_state = 50, .external_lex_state = 3}, - [496] = {.lex_state = 50, .external_lex_state = 3}, - [497] = {.lex_state = 50, .external_lex_state = 2}, - [498] = {.lex_state = 50, .external_lex_state = 3}, - [499] = {.lex_state = 50, .external_lex_state = 3}, - [500] = {.lex_state = 50, .external_lex_state = 3}, - [501] = {.lex_state = 50, .external_lex_state = 3}, - [502] = {.lex_state = 50, .external_lex_state = 2}, - [503] = {.lex_state = 50, .external_lex_state = 3}, - [504] = {.lex_state = 50, .external_lex_state = 2}, - [505] = {.lex_state = 50, .external_lex_state = 3}, - [506] = {.lex_state = 50, .external_lex_state = 2}, - [507] = {.lex_state = 50, .external_lex_state = 2}, - [508] = {.lex_state = 50, .external_lex_state = 2}, - [509] = {.lex_state = 50, .external_lex_state = 3}, - [510] = {.lex_state = 50, .external_lex_state = 2}, - [511] = {.lex_state = 50, .external_lex_state = 3}, - [512] = {.lex_state = 50, .external_lex_state = 3}, - [513] = {.lex_state = 50, .external_lex_state = 2}, - [514] = {.lex_state = 50, .external_lex_state = 3}, - [515] = {.lex_state = 50, .external_lex_state = 2}, - [516] = {.lex_state = 50, .external_lex_state = 3}, - [517] = {.lex_state = 50, .external_lex_state = 3}, - [518] = {.lex_state = 50, .external_lex_state = 2}, - [519] = {.lex_state = 50, .external_lex_state = 2}, - [520] = {.lex_state = 50, .external_lex_state = 2}, - [521] = {.lex_state = 50, .external_lex_state = 2}, - [522] = {.lex_state = 50, .external_lex_state = 3}, - [523] = {.lex_state = 50, .external_lex_state = 2}, - [524] = {.lex_state = 50, .external_lex_state = 2}, - [525] = {.lex_state = 50, .external_lex_state = 3}, - [526] = {.lex_state = 50, .external_lex_state = 3}, - [527] = {.lex_state = 50, .external_lex_state = 2}, - [528] = {.lex_state = 50, .external_lex_state = 2}, - [529] = {.lex_state = 50, .external_lex_state = 3}, - [530] = {.lex_state = 50, .external_lex_state = 3}, - [531] = {.lex_state = 50, .external_lex_state = 2}, - [532] = {.lex_state = 50, .external_lex_state = 2}, - [533] = {.lex_state = 50, .external_lex_state = 2}, - [534] = {.lex_state = 50, .external_lex_state = 2}, - [535] = {.lex_state = 50, .external_lex_state = 2}, - [536] = {.lex_state = 50, .external_lex_state = 3}, - [537] = {.lex_state = 50, .external_lex_state = 3}, - [538] = {.lex_state = 50, .external_lex_state = 3}, - [539] = {.lex_state = 50, .external_lex_state = 3}, - [540] = {.lex_state = 50, .external_lex_state = 2}, - [541] = {.lex_state = 50, .external_lex_state = 2}, - [542] = {.lex_state = 50, .external_lex_state = 2}, - [543] = {.lex_state = 50, .external_lex_state = 3}, - [544] = {.lex_state = 50, .external_lex_state = 2}, - [545] = {.lex_state = 50, .external_lex_state = 2}, - [546] = {.lex_state = 50, .external_lex_state = 2}, - [547] = {.lex_state = 50, .external_lex_state = 2}, - [548] = {.lex_state = 50, .external_lex_state = 3}, - [549] = {.lex_state = 50, .external_lex_state = 2}, - [550] = {.lex_state = 50, .external_lex_state = 3}, - [551] = {.lex_state = 50, .external_lex_state = 3}, - [552] = {.lex_state = 50, .external_lex_state = 2}, - [553] = {.lex_state = 50, .external_lex_state = 3}, - [554] = {.lex_state = 50, .external_lex_state = 2}, - [555] = {.lex_state = 50, .external_lex_state = 3}, - [556] = {.lex_state = 50, .external_lex_state = 2}, - [557] = {.lex_state = 50, .external_lex_state = 2}, - [558] = {.lex_state = 50, .external_lex_state = 2}, - [559] = {.lex_state = 50, .external_lex_state = 3}, - [560] = {.lex_state = 50, .external_lex_state = 3}, - [561] = {.lex_state = 50, .external_lex_state = 3}, - [562] = {.lex_state = 50, .external_lex_state = 2}, - [563] = {.lex_state = 50, .external_lex_state = 2}, - [564] = {.lex_state = 50, .external_lex_state = 2}, - [565] = {.lex_state = 50, .external_lex_state = 2}, - [566] = {.lex_state = 50, .external_lex_state = 2}, - [567] = {.lex_state = 50, .external_lex_state = 2}, - [568] = {.lex_state = 14, .external_lex_state = 2}, - [569] = {.lex_state = 16, .external_lex_state = 8}, - [570] = {.lex_state = 16, .external_lex_state = 9}, - [571] = {.lex_state = 16, .external_lex_state = 9}, - [572] = {.lex_state = 16, .external_lex_state = 9}, - [573] = {.lex_state = 16, .external_lex_state = 8}, - [574] = {.lex_state = 16, .external_lex_state = 8}, - [575] = {.lex_state = 50, .external_lex_state = 2}, - [576] = {.lex_state = 50, .external_lex_state = 2}, - [577] = {.lex_state = 50, .external_lex_state = 2}, - [578] = {.lex_state = 50, .external_lex_state = 2}, - [579] = {.lex_state = 50, .external_lex_state = 2}, - [580] = {.lex_state = 16, .external_lex_state = 8}, - [581] = {.lex_state = 16, .external_lex_state = 9}, - [582] = {.lex_state = 50, .external_lex_state = 2}, - [583] = {.lex_state = 50, .external_lex_state = 2}, - [584] = {.lex_state = 16, .external_lex_state = 8}, - [585] = {.lex_state = 50, .external_lex_state = 2}, - [586] = {.lex_state = 50, .external_lex_state = 2}, - [587] = {.lex_state = 50, .external_lex_state = 2}, - [588] = {.lex_state = 50, .external_lex_state = 2}, - [589] = {.lex_state = 50, .external_lex_state = 2}, - [590] = {.lex_state = 50, .external_lex_state = 2}, - [591] = {.lex_state = 50, .external_lex_state = 2}, - [592] = {.lex_state = 50, .external_lex_state = 2}, - [593] = {.lex_state = 50, .external_lex_state = 2}, - [594] = {.lex_state = 50, .external_lex_state = 2}, - [595] = {.lex_state = 50, .external_lex_state = 2}, - [596] = {.lex_state = 50, .external_lex_state = 2}, - [597] = {.lex_state = 50, .external_lex_state = 2}, - [598] = {.lex_state = 50, .external_lex_state = 2}, - [599] = {.lex_state = 50, .external_lex_state = 2}, - [600] = {.lex_state = 50, .external_lex_state = 2}, - [601] = {.lex_state = 50, .external_lex_state = 2}, - [602] = {.lex_state = 50, .external_lex_state = 2}, - [603] = {.lex_state = 50, .external_lex_state = 2}, - [604] = {.lex_state = 50, .external_lex_state = 2}, - [605] = {.lex_state = 50, .external_lex_state = 2}, - [606] = {.lex_state = 50, .external_lex_state = 2}, - [607] = {.lex_state = 50, .external_lex_state = 2}, - [608] = {.lex_state = 50, .external_lex_state = 2}, - [609] = {.lex_state = 50, .external_lex_state = 2}, - [610] = {.lex_state = 50, .external_lex_state = 2}, - [611] = {.lex_state = 50, .external_lex_state = 2}, - [612] = {.lex_state = 50, .external_lex_state = 2}, - [613] = {.lex_state = 50, .external_lex_state = 2}, - [614] = {.lex_state = 50, .external_lex_state = 2}, - [615] = {.lex_state = 50, .external_lex_state = 2}, - [616] = {.lex_state = 50, .external_lex_state = 2}, - [617] = {.lex_state = 50, .external_lex_state = 2}, - [618] = {.lex_state = 50, .external_lex_state = 2}, - [619] = {.lex_state = 50, .external_lex_state = 2}, - [620] = {.lex_state = 50, .external_lex_state = 2}, - [621] = {.lex_state = 50, .external_lex_state = 2}, - [622] = {.lex_state = 50, .external_lex_state = 2}, - [623] = {.lex_state = 50, .external_lex_state = 2}, + [142] = {.lex_state = 51, .external_lex_state = 2}, + [143] = {.lex_state = 51, .external_lex_state = 2}, + [144] = {.lex_state = 51, .external_lex_state = 2}, + [145] = {.lex_state = 14, .external_lex_state = 2}, + [146] = {.lex_state = 51, .external_lex_state = 2}, + [147] = {.lex_state = 51, .external_lex_state = 2}, + [148] = {.lex_state = 51, .external_lex_state = 2}, + [149] = {.lex_state = 51, .external_lex_state = 4}, + [150] = {.lex_state = 51, .external_lex_state = 2}, + [151] = {.lex_state = 51, .external_lex_state = 2}, + [152] = {.lex_state = 51, .external_lex_state = 2}, + [153] = {.lex_state = 51, .external_lex_state = 2}, + [154] = {.lex_state = 51, .external_lex_state = 2}, + [155] = {.lex_state = 51, .external_lex_state = 2}, + [156] = {.lex_state = 51, .external_lex_state = 2}, + [157] = {.lex_state = 51, .external_lex_state = 2}, + [158] = {.lex_state = 51, .external_lex_state = 2}, + [159] = {.lex_state = 51, .external_lex_state = 2}, + [160] = {.lex_state = 51, .external_lex_state = 2}, + [161] = {.lex_state = 51, .external_lex_state = 2}, + [162] = {.lex_state = 51, .external_lex_state = 2}, + [163] = {.lex_state = 51, .external_lex_state = 2}, + [164] = {.lex_state = 51, .external_lex_state = 2}, + [165] = {.lex_state = 51, .external_lex_state = 2}, + [166] = {.lex_state = 51, .external_lex_state = 2}, + [167] = {.lex_state = 51, .external_lex_state = 2}, + [168] = {.lex_state = 51, .external_lex_state = 2}, + [169] = {.lex_state = 14, .external_lex_state = 2}, + [170] = {.lex_state = 51, .external_lex_state = 2}, + [171] = {.lex_state = 51, .external_lex_state = 2}, + [172] = {.lex_state = 51, .external_lex_state = 2}, + [173] = {.lex_state = 51, .external_lex_state = 2}, + [174] = {.lex_state = 51, .external_lex_state = 4}, + [175] = {.lex_state = 51, .external_lex_state = 2}, + [176] = {.lex_state = 51, .external_lex_state = 2}, + [177] = {.lex_state = 51, .external_lex_state = 2}, + [178] = {.lex_state = 14, .external_lex_state = 2}, + [179] = {.lex_state = 14, .external_lex_state = 2}, + [180] = {.lex_state = 14, .external_lex_state = 2}, + [181] = {.lex_state = 51, .external_lex_state = 2}, + [182] = {.lex_state = 51, .external_lex_state = 2}, + [183] = {.lex_state = 51, .external_lex_state = 2}, + [184] = {.lex_state = 51, .external_lex_state = 4}, + [185] = {.lex_state = 51, .external_lex_state = 2}, + [186] = {.lex_state = 51, .external_lex_state = 2}, + [187] = {.lex_state = 51, .external_lex_state = 2}, + [188] = {.lex_state = 51, .external_lex_state = 2}, + [189] = {.lex_state = 51, .external_lex_state = 2}, + [190] = {.lex_state = 51, .external_lex_state = 2}, + [191] = {.lex_state = 51, .external_lex_state = 4}, + [192] = {.lex_state = 51, .external_lex_state = 2}, + [193] = {.lex_state = 51, .external_lex_state = 4}, + [194] = {.lex_state = 51, .external_lex_state = 2}, + [195] = {.lex_state = 51, .external_lex_state = 2}, + [196] = {.lex_state = 51, .external_lex_state = 2}, + [197] = {.lex_state = 51, .external_lex_state = 2}, + [198] = {.lex_state = 51, .external_lex_state = 2}, + [199] = {.lex_state = 51, .external_lex_state = 2}, + [200] = {.lex_state = 51, .external_lex_state = 2}, + [201] = {.lex_state = 51, .external_lex_state = 2}, + [202] = {.lex_state = 51, .external_lex_state = 2}, + [203] = {.lex_state = 51, .external_lex_state = 2}, + [204] = {.lex_state = 51, .external_lex_state = 2}, + [205] = {.lex_state = 51, .external_lex_state = 2}, + [206] = {.lex_state = 51, .external_lex_state = 2}, + [207] = {.lex_state = 51, .external_lex_state = 2}, + [208] = {.lex_state = 51, .external_lex_state = 2}, + [209] = {.lex_state = 51, .external_lex_state = 2}, + [210] = {.lex_state = 51, .external_lex_state = 2}, + [211] = {.lex_state = 51, .external_lex_state = 2}, + [212] = {.lex_state = 51, .external_lex_state = 2}, + [213] = {.lex_state = 51, .external_lex_state = 2}, + [214] = {.lex_state = 51, .external_lex_state = 2}, + [215] = {.lex_state = 51, .external_lex_state = 2}, + [216] = {.lex_state = 51, .external_lex_state = 2}, + [217] = {.lex_state = 51, .external_lex_state = 4}, + [218] = {.lex_state = 51, .external_lex_state = 2}, + [219] = {.lex_state = 51, .external_lex_state = 2}, + [220] = {.lex_state = 51, .external_lex_state = 4}, + [221] = {.lex_state = 51, .external_lex_state = 2}, + [222] = {.lex_state = 51, .external_lex_state = 2}, + [223] = {.lex_state = 51, .external_lex_state = 2}, + [224] = {.lex_state = 51, .external_lex_state = 2}, + [225] = {.lex_state = 51, .external_lex_state = 2}, + [226] = {.lex_state = 51, .external_lex_state = 2}, + [227] = {.lex_state = 51, .external_lex_state = 2}, + [228] = {.lex_state = 51, .external_lex_state = 2}, + [229] = {.lex_state = 51, .external_lex_state = 2}, + [230] = {.lex_state = 51, .external_lex_state = 2}, + [231] = {.lex_state = 51, .external_lex_state = 2}, + [232] = {.lex_state = 51, .external_lex_state = 2}, + [233] = {.lex_state = 51, .external_lex_state = 2}, + [234] = {.lex_state = 51, .external_lex_state = 2}, + [235] = {.lex_state = 51, .external_lex_state = 2}, + [236] = {.lex_state = 51, .external_lex_state = 2}, + [237] = {.lex_state = 51, .external_lex_state = 2}, + [238] = {.lex_state = 51, .external_lex_state = 2}, + [239] = {.lex_state = 51, .external_lex_state = 2}, + [240] = {.lex_state = 51, .external_lex_state = 2}, + [241] = {.lex_state = 51, .external_lex_state = 2}, + [242] = {.lex_state = 51, .external_lex_state = 2}, + [243] = {.lex_state = 51, .external_lex_state = 2}, + [244] = {.lex_state = 51, .external_lex_state = 2}, + [245] = {.lex_state = 51, .external_lex_state = 2}, + [246] = {.lex_state = 51, .external_lex_state = 2}, + [247] = {.lex_state = 51, .external_lex_state = 2}, + [248] = {.lex_state = 51, .external_lex_state = 2}, + [249] = {.lex_state = 51, .external_lex_state = 2}, + [250] = {.lex_state = 51, .external_lex_state = 2}, + [251] = {.lex_state = 51, .external_lex_state = 2}, + [252] = {.lex_state = 51, .external_lex_state = 2}, + [253] = {.lex_state = 51, .external_lex_state = 2}, + [254] = {.lex_state = 51, .external_lex_state = 2}, + [255] = {.lex_state = 51, .external_lex_state = 2}, + [256] = {.lex_state = 51, .external_lex_state = 2}, + [257] = {.lex_state = 51, .external_lex_state = 2}, + [258] = {.lex_state = 51, .external_lex_state = 2}, + [259] = {.lex_state = 51, .external_lex_state = 2}, + [260] = {.lex_state = 51, .external_lex_state = 2}, + [261] = {.lex_state = 51, .external_lex_state = 2}, + [262] = {.lex_state = 51, .external_lex_state = 2}, + [263] = {.lex_state = 51, .external_lex_state = 2}, + [264] = {.lex_state = 51, .external_lex_state = 2}, + [265] = {.lex_state = 51, .external_lex_state = 2}, + [266] = {.lex_state = 51, .external_lex_state = 3}, + [267] = {.lex_state = 51, .external_lex_state = 3}, + [268] = {.lex_state = 51, .external_lex_state = 2}, + [269] = {.lex_state = 51, .external_lex_state = 2}, + [270] = {.lex_state = 51, .external_lex_state = 2}, + [271] = {.lex_state = 51, .external_lex_state = 2}, + [272] = {.lex_state = 51, .external_lex_state = 2}, + [273] = {.lex_state = 51, .external_lex_state = 2}, + [274] = {.lex_state = 51, .external_lex_state = 2}, + [275] = {.lex_state = 51, .external_lex_state = 2}, + [276] = {.lex_state = 51, .external_lex_state = 2}, + [277] = {.lex_state = 51, .external_lex_state = 2}, + [278] = {.lex_state = 51, .external_lex_state = 2}, + [279] = {.lex_state = 51, .external_lex_state = 3}, + [280] = {.lex_state = 51, .external_lex_state = 2}, + [281] = {.lex_state = 51, .external_lex_state = 2}, + [282] = {.lex_state = 51, .external_lex_state = 2}, + [283] = {.lex_state = 51, .external_lex_state = 3}, + [284] = {.lex_state = 51, .external_lex_state = 2}, + [285] = {.lex_state = 51, .external_lex_state = 2}, + [286] = {.lex_state = 51, .external_lex_state = 2}, + [287] = {.lex_state = 51, .external_lex_state = 2}, + [288] = {.lex_state = 51, .external_lex_state = 2}, + [289] = {.lex_state = 51, .external_lex_state = 4}, + [290] = {.lex_state = 51, .external_lex_state = 4}, + [291] = {.lex_state = 51, .external_lex_state = 4}, + [292] = {.lex_state = 51, .external_lex_state = 2}, + [293] = {.lex_state = 51, .external_lex_state = 2}, + [294] = {.lex_state = 16}, + [295] = {.lex_state = 51, .external_lex_state = 2}, + [296] = {.lex_state = 51, .external_lex_state = 2}, + [297] = {.lex_state = 51, .external_lex_state = 2}, + [298] = {.lex_state = 51, .external_lex_state = 2}, + [299] = {.lex_state = 51, .external_lex_state = 2}, + [300] = {.lex_state = 51, .external_lex_state = 4}, + [301] = {.lex_state = 51, .external_lex_state = 2}, + [302] = {.lex_state = 51, .external_lex_state = 2}, + [303] = {.lex_state = 51, .external_lex_state = 2}, + [304] = {.lex_state = 51, .external_lex_state = 2}, + [305] = {.lex_state = 51, .external_lex_state = 2}, + [306] = {.lex_state = 51, .external_lex_state = 2}, + [307] = {.lex_state = 16}, + [308] = {.lex_state = 51, .external_lex_state = 2}, + [309] = {.lex_state = 51, .external_lex_state = 2}, + [310] = {.lex_state = 51, .external_lex_state = 2}, + [311] = {.lex_state = 51, .external_lex_state = 2}, + [312] = {.lex_state = 51, .external_lex_state = 2}, + [313] = {.lex_state = 51, .external_lex_state = 3}, + [314] = {.lex_state = 51, .external_lex_state = 3}, + [315] = {.lex_state = 51, .external_lex_state = 2}, + [316] = {.lex_state = 51, .external_lex_state = 2}, + [317] = {.lex_state = 51, .external_lex_state = 2}, + [318] = {.lex_state = 51, .external_lex_state = 2}, + [319] = {.lex_state = 51, .external_lex_state = 3}, + [320] = {.lex_state = 51, .external_lex_state = 3}, + [321] = {.lex_state = 51, .external_lex_state = 2}, + [322] = {.lex_state = 51, .external_lex_state = 2}, + [323] = {.lex_state = 51, .external_lex_state = 2}, + [324] = {.lex_state = 16, .external_lex_state = 6}, + [325] = {.lex_state = 51, .external_lex_state = 2}, + [326] = {.lex_state = 51, .external_lex_state = 3}, + [327] = {.lex_state = 51, .external_lex_state = 3}, + [328] = {.lex_state = 51, .external_lex_state = 2}, + [329] = {.lex_state = 51, .external_lex_state = 2}, + [330] = {.lex_state = 51, .external_lex_state = 3}, + [331] = {.lex_state = 51, .external_lex_state = 3}, + [332] = {.lex_state = 51, .external_lex_state = 2}, + [333] = {.lex_state = 51, .external_lex_state = 3}, + [334] = {.lex_state = 51, .external_lex_state = 2}, + [335] = {.lex_state = 51, .external_lex_state = 3}, + [336] = {.lex_state = 51, .external_lex_state = 3}, + [337] = {.lex_state = 51, .external_lex_state = 2}, + [338] = {.lex_state = 16, .external_lex_state = 6}, + [339] = {.lex_state = 51, .external_lex_state = 2}, + [340] = {.lex_state = 51, .external_lex_state = 2}, + [341] = {.lex_state = 51, .external_lex_state = 2}, + [342] = {.lex_state = 51, .external_lex_state = 2}, + [343] = {.lex_state = 51, .external_lex_state = 2}, + [344] = {.lex_state = 51, .external_lex_state = 2}, + [345] = {.lex_state = 51, .external_lex_state = 2}, + [346] = {.lex_state = 51, .external_lex_state = 2}, + [347] = {.lex_state = 51, .external_lex_state = 2}, + [348] = {.lex_state = 51, .external_lex_state = 2}, + [349] = {.lex_state = 51, .external_lex_state = 2}, + [350] = {.lex_state = 51, .external_lex_state = 2}, + [351] = {.lex_state = 51, .external_lex_state = 2}, + [352] = {.lex_state = 51, .external_lex_state = 2}, + [353] = {.lex_state = 51, .external_lex_state = 2}, + [354] = {.lex_state = 51, .external_lex_state = 2}, + [355] = {.lex_state = 51, .external_lex_state = 2}, + [356] = {.lex_state = 51, .external_lex_state = 2}, + [357] = {.lex_state = 51, .external_lex_state = 2}, + [358] = {.lex_state = 51, .external_lex_state = 2}, + [359] = {.lex_state = 51, .external_lex_state = 2}, + [360] = {.lex_state = 51, .external_lex_state = 2}, + [361] = {.lex_state = 51, .external_lex_state = 2}, + [362] = {.lex_state = 51, .external_lex_state = 2}, + [363] = {.lex_state = 51, .external_lex_state = 2}, + [364] = {.lex_state = 51, .external_lex_state = 2}, + [365] = {.lex_state = 51, .external_lex_state = 2}, + [366] = {.lex_state = 51, .external_lex_state = 2}, + [367] = {.lex_state = 16, .external_lex_state = 7}, + [368] = {.lex_state = 51, .external_lex_state = 2}, + [369] = {.lex_state = 51, .external_lex_state = 2}, + [370] = {.lex_state = 51, .external_lex_state = 2}, + [371] = {.lex_state = 51, .external_lex_state = 2}, + [372] = {.lex_state = 51, .external_lex_state = 2}, + [373] = {.lex_state = 51, .external_lex_state = 2}, + [374] = {.lex_state = 51, .external_lex_state = 2}, + [375] = {.lex_state = 51, .external_lex_state = 2}, + [376] = {.lex_state = 51, .external_lex_state = 2}, + [377] = {.lex_state = 51, .external_lex_state = 2}, + [378] = {.lex_state = 51, .external_lex_state = 2}, + [379] = {.lex_state = 51, .external_lex_state = 2}, + [380] = {.lex_state = 51, .external_lex_state = 2}, + [381] = {.lex_state = 51, .external_lex_state = 2}, + [382] = {.lex_state = 51, .external_lex_state = 2}, + [383] = {.lex_state = 51, .external_lex_state = 2}, + [384] = {.lex_state = 51, .external_lex_state = 2}, + [385] = {.lex_state = 51, .external_lex_state = 2}, + [386] = {.lex_state = 51, .external_lex_state = 2}, + [387] = {.lex_state = 51, .external_lex_state = 2}, + [388] = {.lex_state = 51, .external_lex_state = 2}, + [389] = {.lex_state = 51, .external_lex_state = 2}, + [390] = {.lex_state = 51, .external_lex_state = 2}, + [391] = {.lex_state = 51, .external_lex_state = 2}, + [392] = {.lex_state = 51, .external_lex_state = 2}, + [393] = {.lex_state = 51, .external_lex_state = 2}, + [394] = {.lex_state = 51, .external_lex_state = 2}, + [395] = {.lex_state = 51, .external_lex_state = 2}, + [396] = {.lex_state = 51, .external_lex_state = 2}, + [397] = {.lex_state = 51, .external_lex_state = 2}, + [398] = {.lex_state = 51, .external_lex_state = 2}, + [399] = {.lex_state = 51, .external_lex_state = 3}, + [400] = {.lex_state = 51, .external_lex_state = 2}, + [401] = {.lex_state = 51, .external_lex_state = 2}, + [402] = {.lex_state = 51, .external_lex_state = 2}, + [403] = {.lex_state = 51, .external_lex_state = 2}, + [404] = {.lex_state = 51, .external_lex_state = 2}, + [405] = {.lex_state = 51, .external_lex_state = 2}, + [406] = {.lex_state = 51, .external_lex_state = 2}, + [407] = {.lex_state = 51, .external_lex_state = 2}, + [408] = {.lex_state = 51, .external_lex_state = 2}, + [409] = {.lex_state = 51, .external_lex_state = 2}, + [410] = {.lex_state = 51, .external_lex_state = 2}, + [411] = {.lex_state = 51, .external_lex_state = 2}, + [412] = {.lex_state = 51, .external_lex_state = 2}, + [413] = {.lex_state = 51, .external_lex_state = 2}, + [414] = {.lex_state = 51, .external_lex_state = 2}, + [415] = {.lex_state = 51, .external_lex_state = 2}, + [416] = {.lex_state = 51, .external_lex_state = 2}, + [417] = {.lex_state = 51, .external_lex_state = 2}, + [418] = {.lex_state = 51, .external_lex_state = 2}, + [419] = {.lex_state = 51, .external_lex_state = 2}, + [420] = {.lex_state = 51, .external_lex_state = 2}, + [421] = {.lex_state = 51, .external_lex_state = 2}, + [422] = {.lex_state = 51, .external_lex_state = 2}, + [423] = {.lex_state = 51, .external_lex_state = 2}, + [424] = {.lex_state = 51, .external_lex_state = 2}, + [425] = {.lex_state = 51, .external_lex_state = 2}, + [426] = {.lex_state = 51, .external_lex_state = 2}, + [427] = {.lex_state = 51, .external_lex_state = 2}, + [428] = {.lex_state = 51, .external_lex_state = 2}, + [429] = {.lex_state = 51, .external_lex_state = 2}, + [430] = {.lex_state = 51, .external_lex_state = 2}, + [431] = {.lex_state = 51, .external_lex_state = 2}, + [432] = {.lex_state = 51, .external_lex_state = 2}, + [433] = {.lex_state = 51, .external_lex_state = 2}, + [434] = {.lex_state = 51, .external_lex_state = 2}, + [435] = {.lex_state = 51, .external_lex_state = 2}, + [436] = {.lex_state = 51, .external_lex_state = 2}, + [437] = {.lex_state = 51, .external_lex_state = 3}, + [438] = {.lex_state = 51, .external_lex_state = 3}, + [439] = {.lex_state = 51, .external_lex_state = 3}, + [440] = {.lex_state = 51, .external_lex_state = 3}, + [441] = {.lex_state = 51, .external_lex_state = 3}, + [442] = {.lex_state = 51, .external_lex_state = 2}, + [443] = {.lex_state = 51, .external_lex_state = 3}, + [444] = {.lex_state = 51, .external_lex_state = 3}, + [445] = {.lex_state = 51, .external_lex_state = 3}, + [446] = {.lex_state = 51, .external_lex_state = 3}, + [447] = {.lex_state = 51, .external_lex_state = 3}, + [448] = {.lex_state = 51, .external_lex_state = 2}, + [449] = {.lex_state = 51, .external_lex_state = 2}, + [450] = {.lex_state = 51, .external_lex_state = 2}, + [451] = {.lex_state = 51, .external_lex_state = 2}, + [452] = {.lex_state = 51, .external_lex_state = 3}, + [453] = {.lex_state = 51, .external_lex_state = 2}, + [454] = {.lex_state = 51, .external_lex_state = 2}, + [455] = {.lex_state = 51, .external_lex_state = 2}, + [456] = {.lex_state = 51, .external_lex_state = 2}, + [457] = {.lex_state = 51, .external_lex_state = 2}, + [458] = {.lex_state = 16, .external_lex_state = 6}, + [459] = {.lex_state = 51, .external_lex_state = 2}, + [460] = {.lex_state = 51, .external_lex_state = 3}, + [461] = {.lex_state = 51, .external_lex_state = 2}, + [462] = {.lex_state = 16, .external_lex_state = 6}, + [463] = {.lex_state = 51, .external_lex_state = 2}, + [464] = {.lex_state = 51, .external_lex_state = 2}, + [465] = {.lex_state = 16, .external_lex_state = 6}, + [466] = {.lex_state = 51, .external_lex_state = 3}, + [467] = {.lex_state = 51, .external_lex_state = 2}, + [468] = {.lex_state = 51, .external_lex_state = 2}, + [469] = {.lex_state = 51, .external_lex_state = 3}, + [470] = {.lex_state = 51, .external_lex_state = 3}, + [471] = {.lex_state = 51, .external_lex_state = 2}, + [472] = {.lex_state = 51, .external_lex_state = 2}, + [473] = {.lex_state = 51, .external_lex_state = 3}, + [474] = {.lex_state = 16}, + [475] = {.lex_state = 16, .external_lex_state = 6}, + [476] = {.lex_state = 51, .external_lex_state = 2}, + [477] = {.lex_state = 51, .external_lex_state = 3}, + [478] = {.lex_state = 51, .external_lex_state = 2}, + [479] = {.lex_state = 51, .external_lex_state = 3}, + [480] = {.lex_state = 51, .external_lex_state = 3}, + [481] = {.lex_state = 51, .external_lex_state = 2}, + [482] = {.lex_state = 51, .external_lex_state = 2}, + [483] = {.lex_state = 16, .external_lex_state = 6}, + [484] = {.lex_state = 51, .external_lex_state = 2}, + [485] = {.lex_state = 51, .external_lex_state = 2}, + [486] = {.lex_state = 51, .external_lex_state = 3}, + [487] = {.lex_state = 16}, + [488] = {.lex_state = 51, .external_lex_state = 3}, + [489] = {.lex_state = 51, .external_lex_state = 3}, + [490] = {.lex_state = 51, .external_lex_state = 2}, + [491] = {.lex_state = 51, .external_lex_state = 3}, + [492] = {.lex_state = 51, .external_lex_state = 3}, + [493] = {.lex_state = 51, .external_lex_state = 2}, + [494] = {.lex_state = 16, .external_lex_state = 6}, + [495] = {.lex_state = 51, .external_lex_state = 2}, + [496] = {.lex_state = 51, .external_lex_state = 2}, + [497] = {.lex_state = 51, .external_lex_state = 2}, + [498] = {.lex_state = 51, .external_lex_state = 2}, + [499] = {.lex_state = 51, .external_lex_state = 2}, + [500] = {.lex_state = 51, .external_lex_state = 2}, + [501] = {.lex_state = 51, .external_lex_state = 2}, + [502] = {.lex_state = 16, .external_lex_state = 6}, + [503] = {.lex_state = 51, .external_lex_state = 3}, + [504] = {.lex_state = 51, .external_lex_state = 3}, + [505] = {.lex_state = 51, .external_lex_state = 3}, + [506] = {.lex_state = 51, .external_lex_state = 3}, + [507] = {.lex_state = 51, .external_lex_state = 3}, + [508] = {.lex_state = 51, .external_lex_state = 2}, + [509] = {.lex_state = 16}, + [510] = {.lex_state = 51, .external_lex_state = 2}, + [511] = {.lex_state = 51, .external_lex_state = 2}, + [512] = {.lex_state = 51, .external_lex_state = 2}, + [513] = {.lex_state = 16, .external_lex_state = 6}, + [514] = {.lex_state = 51, .external_lex_state = 2}, + [515] = {.lex_state = 51, .external_lex_state = 2}, + [516] = {.lex_state = 51, .external_lex_state = 2}, + [517] = {.lex_state = 51, .external_lex_state = 2}, + [518] = {.lex_state = 51, .external_lex_state = 2}, + [519] = {.lex_state = 51, .external_lex_state = 2}, + [520] = {.lex_state = 51, .external_lex_state = 2}, + [521] = {.lex_state = 51, .external_lex_state = 2}, + [522] = {.lex_state = 51, .external_lex_state = 2}, + [523] = {.lex_state = 51, .external_lex_state = 2}, + [524] = {.lex_state = 51, .external_lex_state = 2}, + [525] = {.lex_state = 51, .external_lex_state = 2}, + [526] = {.lex_state = 51, .external_lex_state = 2}, + [527] = {.lex_state = 51, .external_lex_state = 2}, + [528] = {.lex_state = 51, .external_lex_state = 2}, + [529] = {.lex_state = 51, .external_lex_state = 2}, + [530] = {.lex_state = 51, .external_lex_state = 2}, + [531] = {.lex_state = 51, .external_lex_state = 2}, + [532] = {.lex_state = 51, .external_lex_state = 2}, + [533] = {.lex_state = 51, .external_lex_state = 2}, + [534] = {.lex_state = 51, .external_lex_state = 2}, + [535] = {.lex_state = 51, .external_lex_state = 2}, + [536] = {.lex_state = 51, .external_lex_state = 2}, + [537] = {.lex_state = 51, .external_lex_state = 2}, + [538] = {.lex_state = 51, .external_lex_state = 2}, + [539] = {.lex_state = 51, .external_lex_state = 2}, + [540] = {.lex_state = 51, .external_lex_state = 2}, + [541] = {.lex_state = 51, .external_lex_state = 2}, + [542] = {.lex_state = 51, .external_lex_state = 2}, + [543] = {.lex_state = 51, .external_lex_state = 2}, + [544] = {.lex_state = 51, .external_lex_state = 2}, + [545] = {.lex_state = 51, .external_lex_state = 2}, + [546] = {.lex_state = 51, .external_lex_state = 2}, + [547] = {.lex_state = 51, .external_lex_state = 2}, + [548] = {.lex_state = 51, .external_lex_state = 2}, + [549] = {.lex_state = 51, .external_lex_state = 2}, + [550] = {.lex_state = 51, .external_lex_state = 2}, + [551] = {.lex_state = 51, .external_lex_state = 2}, + [552] = {.lex_state = 51, .external_lex_state = 3}, + [553] = {.lex_state = 51, .external_lex_state = 3}, + [554] = {.lex_state = 51, .external_lex_state = 3}, + [555] = {.lex_state = 51, .external_lex_state = 3}, + [556] = {.lex_state = 51, .external_lex_state = 3}, + [557] = {.lex_state = 51, .external_lex_state = 3}, + [558] = {.lex_state = 51, .external_lex_state = 3}, + [559] = {.lex_state = 51, .external_lex_state = 3}, + [560] = {.lex_state = 51, .external_lex_state = 3}, + [561] = {.lex_state = 51, .external_lex_state = 3}, + [562] = {.lex_state = 51, .external_lex_state = 3}, + [563] = {.lex_state = 51, .external_lex_state = 3}, + [564] = {.lex_state = 51, .external_lex_state = 3}, + [565] = {.lex_state = 51, .external_lex_state = 3}, + [566] = {.lex_state = 51, .external_lex_state = 3}, + [567] = {.lex_state = 51, .external_lex_state = 3}, + [568] = {.lex_state = 51, .external_lex_state = 3}, + [569] = {.lex_state = 51, .external_lex_state = 3}, + [570] = {.lex_state = 51, .external_lex_state = 3}, + [571] = {.lex_state = 51, .external_lex_state = 3}, + [572] = {.lex_state = 51, .external_lex_state = 3}, + [573] = {.lex_state = 51, .external_lex_state = 3}, + [574] = {.lex_state = 51, .external_lex_state = 3}, + [575] = {.lex_state = 51, .external_lex_state = 3}, + [576] = {.lex_state = 51, .external_lex_state = 3}, + [577] = {.lex_state = 51, .external_lex_state = 3}, + [578] = {.lex_state = 51, .external_lex_state = 3}, + [579] = {.lex_state = 51, .external_lex_state = 3}, + [580] = {.lex_state = 51, .external_lex_state = 3}, + [581] = {.lex_state = 51, .external_lex_state = 2}, + [582] = {.lex_state = 51, .external_lex_state = 3}, + [583] = {.lex_state = 51, .external_lex_state = 3}, + [584] = {.lex_state = 51, .external_lex_state = 3}, + [585] = {.lex_state = 51, .external_lex_state = 3}, + [586] = {.lex_state = 51, .external_lex_state = 3}, + [587] = {.lex_state = 51, .external_lex_state = 3}, + [588] = {.lex_state = 51, .external_lex_state = 2}, + [589] = {.lex_state = 51, .external_lex_state = 3}, + [590] = {.lex_state = 51, .external_lex_state = 3}, + [591] = {.lex_state = 51, .external_lex_state = 3}, + [592] = {.lex_state = 51, .external_lex_state = 3}, + [593] = {.lex_state = 51, .external_lex_state = 3}, + [594] = {.lex_state = 51, .external_lex_state = 3}, + [595] = {.lex_state = 51, .external_lex_state = 3}, + [596] = {.lex_state = 51, .external_lex_state = 2}, + [597] = {.lex_state = 51, .external_lex_state = 2}, + [598] = {.lex_state = 51, .external_lex_state = 3}, + [599] = {.lex_state = 51, .external_lex_state = 3}, + [600] = {.lex_state = 51, .external_lex_state = 3}, + [601] = {.lex_state = 51, .external_lex_state = 3}, + [602] = {.lex_state = 51, .external_lex_state = 3}, + [603] = {.lex_state = 51, .external_lex_state = 3}, + [604] = {.lex_state = 51, .external_lex_state = 3}, + [605] = {.lex_state = 51, .external_lex_state = 2}, + [606] = {.lex_state = 51, .external_lex_state = 2}, + [607] = {.lex_state = 51, .external_lex_state = 2}, + [608] = {.lex_state = 51, .external_lex_state = 2}, + [609] = {.lex_state = 51, .external_lex_state = 2}, + [610] = {.lex_state = 51, .external_lex_state = 2}, + [611] = {.lex_state = 51, .external_lex_state = 2}, + [612] = {.lex_state = 51, .external_lex_state = 2}, + [613] = {.lex_state = 51, .external_lex_state = 2}, + [614] = {.lex_state = 51, .external_lex_state = 2}, + [615] = {.lex_state = 51, .external_lex_state = 2}, + [616] = {.lex_state = 16, .external_lex_state = 8}, + [617] = {.lex_state = 16, .external_lex_state = 9}, + [618] = {.lex_state = 51, .external_lex_state = 2}, + [619] = {.lex_state = 16, .external_lex_state = 8}, + [620] = {.lex_state = 16, .external_lex_state = 9}, + [621] = {.lex_state = 16, .external_lex_state = 8}, + [622] = {.lex_state = 51, .external_lex_state = 2}, + [623] = {.lex_state = 51, .external_lex_state = 2}, [624] = {.lex_state = 16, .external_lex_state = 9}, - [625] = {.lex_state = 50, .external_lex_state = 2}, - [626] = {.lex_state = 50, .external_lex_state = 2}, - [627] = {.lex_state = 50, .external_lex_state = 2}, - [628] = {.lex_state = 50, .external_lex_state = 2}, - [629] = {.lex_state = 16}, - [630] = {.lex_state = 16}, - [631] = {.lex_state = 16}, - [632] = {.lex_state = 16}, - [633] = {.lex_state = 16}, - [634] = {.lex_state = 16}, - [635] = {.lex_state = 16}, - [636] = {.lex_state = 16}, - [637] = {.lex_state = 16}, - [638] = {.lex_state = 16}, - [639] = {.lex_state = 16}, - [640] = {.lex_state = 16}, - [641] = {.lex_state = 16}, - [642] = {.lex_state = 16}, - [643] = {.lex_state = 16}, - [644] = {.lex_state = 16}, - [645] = {.lex_state = 16}, - [646] = {.lex_state = 16}, - [647] = {.lex_state = 16}, - [648] = {.lex_state = 16}, - [649] = {.lex_state = 16}, - [650] = {.lex_state = 16}, - [651] = {.lex_state = 16}, - [652] = {.lex_state = 16}, - [653] = {.lex_state = 16}, - [654] = {.lex_state = 16}, - [655] = {.lex_state = 16}, - [656] = {.lex_state = 16}, - [657] = {.lex_state = 16}, - [658] = {.lex_state = 16}, - [659] = {.lex_state = 16}, - [660] = {.lex_state = 16}, - [661] = {.lex_state = 16}, - [662] = {.lex_state = 16}, - [663] = {.lex_state = 16}, - [664] = {.lex_state = 16}, - [665] = {.lex_state = 16}, - [666] = {.lex_state = 16}, - [667] = {.lex_state = 16}, - [668] = {.lex_state = 16}, - [669] = {.lex_state = 16}, - [670] = {.lex_state = 16}, - [671] = {.lex_state = 16}, - [672] = {.lex_state = 16}, - [673] = {.lex_state = 16}, - [674] = {.lex_state = 16}, - [675] = {.lex_state = 16}, - [676] = {.lex_state = 16}, - [677] = {.lex_state = 16}, - [678] = {.lex_state = 16}, - [679] = {.lex_state = 16}, - [680] = {.lex_state = 16}, - [681] = {.lex_state = 16}, - [682] = {.lex_state = 16}, - [683] = {.lex_state = 16}, - [684] = {.lex_state = 16}, - [685] = {.lex_state = 16}, - [686] = {.lex_state = 16, .external_lex_state = 9}, - [687] = {.lex_state = 15}, - [688] = {.lex_state = 16, .external_lex_state = 8}, - [689] = {.lex_state = 16, .external_lex_state = 9}, - [690] = {.lex_state = 16}, - [691] = {.lex_state = 16, .external_lex_state = 8}, - [692] = {.lex_state = 15}, - [693] = {.lex_state = 15}, - [694] = {.lex_state = 15}, - [695] = {.lex_state = 16}, - [696] = {.lex_state = 16, .external_lex_state = 10}, - [697] = {.lex_state = 16}, - [698] = {.lex_state = 16, .external_lex_state = 7}, - [699] = {.lex_state = 16, .external_lex_state = 7}, - [700] = {.lex_state = 16, .external_lex_state = 10}, - [701] = {.lex_state = 16, .external_lex_state = 10}, - [702] = {.lex_state = 16, .external_lex_state = 6}, + [625] = {.lex_state = 51, .external_lex_state = 2}, + [626] = {.lex_state = 51, .external_lex_state = 2}, + [627] = {.lex_state = 51, .external_lex_state = 2}, + [628] = {.lex_state = 51, .external_lex_state = 2}, + [629] = {.lex_state = 51, .external_lex_state = 2}, + [630] = {.lex_state = 51, .external_lex_state = 2}, + [631] = {.lex_state = 51, .external_lex_state = 2}, + [632] = {.lex_state = 51, .external_lex_state = 2}, + [633] = {.lex_state = 51, .external_lex_state = 2}, + [634] = {.lex_state = 51, .external_lex_state = 2}, + [635] = {.lex_state = 51, .external_lex_state = 2}, + [636] = {.lex_state = 51, .external_lex_state = 2}, + [637] = {.lex_state = 51, .external_lex_state = 2}, + [638] = {.lex_state = 51, .external_lex_state = 2}, + [639] = {.lex_state = 51, .external_lex_state = 2}, + [640] = {.lex_state = 51, .external_lex_state = 2}, + [641] = {.lex_state = 51, .external_lex_state = 2}, + [642] = {.lex_state = 51, .external_lex_state = 2}, + [643] = {.lex_state = 51, .external_lex_state = 2}, + [644] = {.lex_state = 51, .external_lex_state = 2}, + [645] = {.lex_state = 51, .external_lex_state = 2}, + [646] = {.lex_state = 51, .external_lex_state = 2}, + [647] = {.lex_state = 51, .external_lex_state = 2}, + [648] = {.lex_state = 51, .external_lex_state = 2}, + [649] = {.lex_state = 51, .external_lex_state = 2}, + [650] = {.lex_state = 51, .external_lex_state = 2}, + [651] = {.lex_state = 51, .external_lex_state = 2}, + [652] = {.lex_state = 51, .external_lex_state = 2}, + [653] = {.lex_state = 51, .external_lex_state = 2}, + [654] = {.lex_state = 51, .external_lex_state = 2}, + [655] = {.lex_state = 51, .external_lex_state = 2}, + [656] = {.lex_state = 51, .external_lex_state = 2}, + [657] = {.lex_state = 51, .external_lex_state = 2}, + [658] = {.lex_state = 51, .external_lex_state = 2}, + [659] = {.lex_state = 51, .external_lex_state = 2}, + [660] = {.lex_state = 51, .external_lex_state = 2}, + [661] = {.lex_state = 51, .external_lex_state = 2}, + [662] = {.lex_state = 51, .external_lex_state = 2}, + [663] = {.lex_state = 51, .external_lex_state = 2}, + [664] = {.lex_state = 51, .external_lex_state = 2}, + [665] = {.lex_state = 51, .external_lex_state = 2}, + [666] = {.lex_state = 51, .external_lex_state = 2}, + [667] = {.lex_state = 51, .external_lex_state = 2}, + [668] = {.lex_state = 51, .external_lex_state = 2}, + [669] = {.lex_state = 51, .external_lex_state = 2}, + [670] = {.lex_state = 51, .external_lex_state = 2}, + [671] = {.lex_state = 51, .external_lex_state = 2}, + [672] = {.lex_state = 51, .external_lex_state = 2}, + [673] = {.lex_state = 51, .external_lex_state = 2}, + [674] = {.lex_state = 51, .external_lex_state = 2}, + [675] = {.lex_state = 51, .external_lex_state = 2}, + [676] = {.lex_state = 51, .external_lex_state = 2}, + [677] = {.lex_state = 51, .external_lex_state = 2}, + [678] = {.lex_state = 51, .external_lex_state = 2}, + [679] = {.lex_state = 51, .external_lex_state = 2}, + [680] = {.lex_state = 51, .external_lex_state = 2}, + [681] = {.lex_state = 51, .external_lex_state = 2}, + [682] = {.lex_state = 51, .external_lex_state = 2}, + [683] = {.lex_state = 51, .external_lex_state = 2}, + [684] = {.lex_state = 51, .external_lex_state = 2}, + [685] = {.lex_state = 51, .external_lex_state = 2}, + [686] = {.lex_state = 51, .external_lex_state = 2}, + [687] = {.lex_state = 51, .external_lex_state = 2}, + [688] = {.lex_state = 51, .external_lex_state = 2}, + [689] = {.lex_state = 51, .external_lex_state = 2}, + [690] = {.lex_state = 51, .external_lex_state = 2}, + [691] = {.lex_state = 51, .external_lex_state = 2}, + [692] = {.lex_state = 51, .external_lex_state = 2}, + [693] = {.lex_state = 51, .external_lex_state = 2}, + [694] = {.lex_state = 51, .external_lex_state = 2}, + [695] = {.lex_state = 16, .external_lex_state = 8}, + [696] = {.lex_state = 16, .external_lex_state = 9}, + [697] = {.lex_state = 16, .external_lex_state = 8}, + [698] = {.lex_state = 16, .external_lex_state = 9}, + [699] = {.lex_state = 16}, + [700] = {.lex_state = 16}, + [701] = {.lex_state = 16}, + [702] = {.lex_state = 16}, [703] = {.lex_state = 16}, - [704] = {.lex_state = 16, .external_lex_state = 7}, - [705] = {.lex_state = 16, .external_lex_state = 6}, - [706] = {.lex_state = 16, .external_lex_state = 6}, - [707] = {.lex_state = 16, .external_lex_state = 6}, - [708] = {.lex_state = 16, .external_lex_state = 6}, - [709] = {.lex_state = 16, .external_lex_state = 8}, - [710] = {.lex_state = 16, .external_lex_state = 6}, - [711] = {.lex_state = 16, .external_lex_state = 6}, - [712] = {.lex_state = 16, .external_lex_state = 6}, - [713] = {.lex_state = 16, .external_lex_state = 6}, - [714] = {.lex_state = 16, .external_lex_state = 6}, - [715] = {.lex_state = 16, .external_lex_state = 9}, - [716] = {.lex_state = 16, .external_lex_state = 8}, - [717] = {.lex_state = 16, .external_lex_state = 6}, + [704] = {.lex_state = 16}, + [705] = {.lex_state = 16}, + [706] = {.lex_state = 16}, + [707] = {.lex_state = 16}, + [708] = {.lex_state = 16}, + [709] = {.lex_state = 16}, + [710] = {.lex_state = 16}, + [711] = {.lex_state = 16}, + [712] = {.lex_state = 15}, + [713] = {.lex_state = 15}, + [714] = {.lex_state = 16}, + [715] = {.lex_state = 16}, + [716] = {.lex_state = 16}, + [717] = {.lex_state = 16}, [718] = {.lex_state = 16}, - [719] = {.lex_state = 16, .external_lex_state = 9}, - [720] = {.lex_state = 16, .external_lex_state = 8}, - [721] = {.lex_state = 16, .external_lex_state = 6}, - [722] = {.lex_state = 16, .external_lex_state = 9}, - [723] = {.lex_state = 16, .external_lex_state = 6}, + [719] = {.lex_state = 16}, + [720] = {.lex_state = 16}, + [721] = {.lex_state = 16}, + [722] = {.lex_state = 16}, + [723] = {.lex_state = 16}, [724] = {.lex_state = 16}, - [725] = {.lex_state = 16, .external_lex_state = 10}, - [726] = {.lex_state = 16, .external_lex_state = 10}, - [727] = {.lex_state = 15, .external_lex_state = 6}, - [728] = {.lex_state = 50, .external_lex_state = 2}, - [729] = {.lex_state = 15}, - [730] = {.lex_state = 15, .external_lex_state = 6}, + [725] = {.lex_state = 16}, + [726] = {.lex_state = 16}, + [727] = {.lex_state = 16}, + [728] = {.lex_state = 16}, + [729] = {.lex_state = 16}, + [730] = {.lex_state = 16}, [731] = {.lex_state = 16}, [732] = {.lex_state = 16}, - [733] = {.lex_state = 50, .external_lex_state = 2}, + [733] = {.lex_state = 16}, [734] = {.lex_state = 16}, [735] = {.lex_state = 16}, [736] = {.lex_state = 16}, - [737] = {.lex_state = 14, .external_lex_state = 2}, + [737] = {.lex_state = 16}, [738] = {.lex_state = 16}, [739] = {.lex_state = 16}, [740] = {.lex_state = 16}, [741] = {.lex_state = 16}, [742] = {.lex_state = 16}, - [743] = {.lex_state = 16, .external_lex_state = 7}, - [744] = {.lex_state = 16}, - [745] = {.lex_state = 16}, - [746] = {.lex_state = 16}, - [747] = {.lex_state = 15}, + [743] = {.lex_state = 16}, + [744] = {.lex_state = 16, .external_lex_state = 8}, + [745] = {.lex_state = 16, .external_lex_state = 9}, + [746] = {.lex_state = 16, .external_lex_state = 8}, + [747] = {.lex_state = 16, .external_lex_state = 9}, [748] = {.lex_state = 16}, - [749] = {.lex_state = 15}, - [750] = {.lex_state = 14, .external_lex_state = 2}, + [749] = {.lex_state = 16}, + [750] = {.lex_state = 16}, [751] = {.lex_state = 16}, [752] = {.lex_state = 16}, [753] = {.lex_state = 16}, - [754] = {.lex_state = 15}, - [755] = {.lex_state = 16, .external_lex_state = 7}, + [754] = {.lex_state = 16}, + [755] = {.lex_state = 16}, [756] = {.lex_state = 16}, - [757] = {.lex_state = 16, .external_lex_state = 6}, - [758] = {.lex_state = 16, .external_lex_state = 6}, - [759] = {.lex_state = 16, .external_lex_state = 6}, - [760] = {.lex_state = 16, .external_lex_state = 6}, - [761] = {.lex_state = 16, .external_lex_state = 6}, - [762] = {.lex_state = 15}, - [763] = {.lex_state = 16, .external_lex_state = 6}, - [764] = {.lex_state = 16, .external_lex_state = 6}, - [765] = {.lex_state = 50, .external_lex_state = 2}, - [766] = {.lex_state = 50, .external_lex_state = 2}, - [767] = {.lex_state = 16, .external_lex_state = 6}, - [768] = {.lex_state = 50, .external_lex_state = 2}, - [769] = {.lex_state = 16, .external_lex_state = 6}, - [770] = {.lex_state = 16}, - [771] = {.lex_state = 50, .external_lex_state = 2}, - [772] = {.lex_state = 16, .external_lex_state = 6}, - [773] = {.lex_state = 50, .external_lex_state = 2}, - [774] = {.lex_state = 50, .external_lex_state = 2}, - [775] = {.lex_state = 16, .external_lex_state = 6}, - [776] = {.lex_state = 16, .external_lex_state = 6}, - [777] = {.lex_state = 16, .external_lex_state = 6}, - [778] = {.lex_state = 15}, + [757] = {.lex_state = 16}, + [758] = {.lex_state = 16}, + [759] = {.lex_state = 16}, + [760] = {.lex_state = 16}, + [761] = {.lex_state = 16}, + [762] = {.lex_state = 15, .external_lex_state = 9}, + [763] = {.lex_state = 16, .external_lex_state = 10}, + [764] = {.lex_state = 16}, + [765] = {.lex_state = 16, .external_lex_state = 7}, + [766] = {.lex_state = 15}, + [767] = {.lex_state = 15, .external_lex_state = 8}, + [768] = {.lex_state = 15, .external_lex_state = 9}, + [769] = {.lex_state = 15, .external_lex_state = 8}, + [770] = {.lex_state = 15, .external_lex_state = 9}, + [771] = {.lex_state = 15, .external_lex_state = 8}, + [772] = {.lex_state = 16}, + [773] = {.lex_state = 16}, + [774] = {.lex_state = 16}, + [775] = {.lex_state = 16, .external_lex_state = 7}, + [776] = {.lex_state = 16, .external_lex_state = 10}, + [777] = {.lex_state = 16}, + [778] = {.lex_state = 16, .external_lex_state = 10}, [779] = {.lex_state = 16, .external_lex_state = 6}, - [780] = {.lex_state = 16, .external_lex_state = 6}, - [781] = {.lex_state = 16, .external_lex_state = 6}, - [782] = {.lex_state = 16, .external_lex_state = 6}, - [783] = {.lex_state = 16, .external_lex_state = 6}, - [784] = {.lex_state = 16, .external_lex_state = 6}, - [785] = {.lex_state = 16, .external_lex_state = 6}, - [786] = {.lex_state = 16, .external_lex_state = 6}, - [787] = {.lex_state = 16, .external_lex_state = 6}, - [788] = {.lex_state = 16, .external_lex_state = 6}, - [789] = {.lex_state = 16, .external_lex_state = 6}, - [790] = {.lex_state = 16, .external_lex_state = 6}, - [791] = {.lex_state = 16, .external_lex_state = 6}, - [792] = {.lex_state = 16, .external_lex_state = 6}, - [793] = {.lex_state = 16, .external_lex_state = 6}, - [794] = {.lex_state = 16, .external_lex_state = 6}, - [795] = {.lex_state = 16, .external_lex_state = 6}, - [796] = {.lex_state = 16}, - [797] = {.lex_state = 16, .external_lex_state = 6}, - [798] = {.lex_state = 16, .external_lex_state = 6}, + [780] = {.lex_state = 16}, + [781] = {.lex_state = 16}, + [782] = {.lex_state = 16, .external_lex_state = 7}, + [783] = {.lex_state = 15}, + [784] = {.lex_state = 15}, + [785] = {.lex_state = 15}, + [786] = {.lex_state = 15}, + [787] = {.lex_state = 15}, + [788] = {.lex_state = 15}, + [789] = {.lex_state = 15}, + [790] = {.lex_state = 16}, + [791] = {.lex_state = 15}, + [792] = {.lex_state = 15}, + [793] = {.lex_state = 15}, + [794] = {.lex_state = 16, .external_lex_state = 8}, + [795] = {.lex_state = 16, .external_lex_state = 9}, + [796] = {.lex_state = 16, .external_lex_state = 6}, + [797] = {.lex_state = 15}, + [798] = {.lex_state = 15}, [799] = {.lex_state = 16, .external_lex_state = 6}, - [800] = {.lex_state = 16}, - [801] = {.lex_state = 16}, - [802] = {.lex_state = 16}, - [803] = {.lex_state = 15}, - [804] = {.lex_state = 50, .external_lex_state = 2}, - [805] = {.lex_state = 16}, - [806] = {.lex_state = 16}, - [807] = {.lex_state = 50, .external_lex_state = 2}, - [808] = {.lex_state = 16}, - [809] = {.lex_state = 16}, - [810] = {.lex_state = 50, .external_lex_state = 2}, - [811] = {.lex_state = 16}, + [800] = {.lex_state = 16, .external_lex_state = 6}, + [801] = {.lex_state = 16, .external_lex_state = 6}, + [802] = {.lex_state = 16, .external_lex_state = 6}, + [803] = {.lex_state = 16}, + [804] = {.lex_state = 16, .external_lex_state = 6}, + [805] = {.lex_state = 16, .external_lex_state = 6}, + [806] = {.lex_state = 16, .external_lex_state = 8}, + [807] = {.lex_state = 16, .external_lex_state = 9}, + [808] = {.lex_state = 16, .external_lex_state = 8}, + [809] = {.lex_state = 16, .external_lex_state = 9}, + [810] = {.lex_state = 16, .external_lex_state = 6}, + [811] = {.lex_state = 16, .external_lex_state = 6}, [812] = {.lex_state = 16}, [813] = {.lex_state = 16}, [814] = {.lex_state = 16}, @@ -6958,14 +7225,14 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [820] = {.lex_state = 16}, [821] = {.lex_state = 16}, [822] = {.lex_state = 16}, - [823] = {.lex_state = 50, .external_lex_state = 2}, - [824] = {.lex_state = 16}, - [825] = {.lex_state = 15}, - [826] = {.lex_state = 16}, - [827] = {.lex_state = 16}, + [823] = {.lex_state = 16, .external_lex_state = 6}, + [824] = {.lex_state = 16, .external_lex_state = 6}, + [825] = {.lex_state = 16, .external_lex_state = 6}, + [826] = {.lex_state = 16, .external_lex_state = 6}, + [827] = {.lex_state = 16, .external_lex_state = 10}, [828] = {.lex_state = 16}, [829] = {.lex_state = 16}, - [830] = {.lex_state = 16}, + [830] = {.lex_state = 16, .external_lex_state = 10}, [831] = {.lex_state = 16}, [832] = {.lex_state = 16}, [833] = {.lex_state = 16}, @@ -6974,754 +7241,894 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [836] = {.lex_state = 16}, [837] = {.lex_state = 16}, [838] = {.lex_state = 16}, - [839] = {.lex_state = 50, .external_lex_state = 2}, - [840] = {.lex_state = 50, .external_lex_state = 2}, - [841] = {.lex_state = 50, .external_lex_state = 2}, - [842] = {.lex_state = 50, .external_lex_state = 2}, - [843] = {.lex_state = 50, .external_lex_state = 2}, - [844] = {.lex_state = 14}, - [845] = {.lex_state = 14}, - [846] = {.lex_state = 14}, - [847] = {.lex_state = 14}, - [848] = {.lex_state = 14}, - [849] = {.lex_state = 14}, - [850] = {.lex_state = 0, .external_lex_state = 6}, - [851] = {.lex_state = 50, .external_lex_state = 2}, + [839] = {.lex_state = 16}, + [840] = {.lex_state = 15}, + [841] = {.lex_state = 15, .external_lex_state = 8}, + [842] = {.lex_state = 16}, + [843] = {.lex_state = 16}, + [844] = {.lex_state = 16}, + [845] = {.lex_state = 16}, + [846] = {.lex_state = 51, .external_lex_state = 2}, + [847] = {.lex_state = 16, .external_lex_state = 7}, + [848] = {.lex_state = 16}, + [849] = {.lex_state = 16}, + [850] = {.lex_state = 15, .external_lex_state = 8}, + [851] = {.lex_state = 15, .external_lex_state = 9}, [852] = {.lex_state = 16}, - [853] = {.lex_state = 14}, - [854] = {.lex_state = 14}, - [855] = {.lex_state = 50, .external_lex_state = 2}, - [856] = {.lex_state = 0, .external_lex_state = 6}, - [857] = {.lex_state = 14}, - [858] = {.lex_state = 50, .external_lex_state = 2}, - [859] = {.lex_state = 16}, - [860] = {.lex_state = 14}, - [861] = {.lex_state = 14}, - [862] = {.lex_state = 16}, - [863] = {.lex_state = 14}, - [864] = {.lex_state = 14}, - [865] = {.lex_state = 14}, - [866] = {.lex_state = 14}, - [867] = {.lex_state = 14}, - [868] = {.lex_state = 14}, - [869] = {.lex_state = 14}, - [870] = {.lex_state = 50, .external_lex_state = 2}, - [871] = {.lex_state = 0}, - [872] = {.lex_state = 0}, - [873] = {.lex_state = 0}, - [874] = {.lex_state = 14}, - [875] = {.lex_state = 14}, - [876] = {.lex_state = 14}, - [877] = {.lex_state = 0}, - [878] = {.lex_state = 0}, - [879] = {.lex_state = 14}, - [880] = {.lex_state = 14}, - [881] = {.lex_state = 16}, - [882] = {.lex_state = 16}, - [883] = {.lex_state = 14}, - [884] = {.lex_state = 14}, - [885] = {.lex_state = 14}, - [886] = {.lex_state = 14}, - [887] = {.lex_state = 14}, - [888] = {.lex_state = 14}, - [889] = {.lex_state = 14}, - [890] = {.lex_state = 14}, - [891] = {.lex_state = 14, .external_lex_state = 9}, - [892] = {.lex_state = 14, .external_lex_state = 8}, - [893] = {.lex_state = 14}, - [894] = {.lex_state = 16}, - [895] = {.lex_state = 14}, - [896] = {.lex_state = 14}, - [897] = {.lex_state = 14}, - [898] = {.lex_state = 14}, - [899] = {.lex_state = 14}, - [900] = {.lex_state = 14}, - [901] = {.lex_state = 14}, - [902] = {.lex_state = 16}, - [903] = {.lex_state = 0}, - [904] = {.lex_state = 14}, - [905] = {.lex_state = 14}, - [906] = {.lex_state = 18, .external_lex_state = 11}, - [907] = {.lex_state = 18, .external_lex_state = 11}, - [908] = {.lex_state = 0}, - [909] = {.lex_state = 0}, - [910] = {.lex_state = 14}, - [911] = {.lex_state = 0}, - [912] = {.lex_state = 0}, - [913] = {.lex_state = 18, .external_lex_state = 11}, - [914] = {.lex_state = 18, .external_lex_state = 11}, - [915] = {.lex_state = 18, .external_lex_state = 11}, - [916] = {.lex_state = 18, .external_lex_state = 11}, - [917] = {.lex_state = 14}, - [918] = {.lex_state = 18, .external_lex_state = 11}, - [919] = {.lex_state = 18, .external_lex_state = 11}, - [920] = {.lex_state = 18, .external_lex_state = 11}, - [921] = {.lex_state = 0}, - [922] = {.lex_state = 18, .external_lex_state = 11}, - [923] = {.lex_state = 18, .external_lex_state = 11}, - [924] = {.lex_state = 14}, - [925] = {.lex_state = 18, .external_lex_state = 11}, - [926] = {.lex_state = 18, .external_lex_state = 11}, - [927] = {.lex_state = 14}, - [928] = {.lex_state = 0}, - [929] = {.lex_state = 18, .external_lex_state = 11}, - [930] = {.lex_state = 0}, - [931] = {.lex_state = 14}, - [932] = {.lex_state = 18, .external_lex_state = 11}, - [933] = {.lex_state = 0}, - [934] = {.lex_state = 14}, - [935] = {.lex_state = 0}, - [936] = {.lex_state = 0}, - [937] = {.lex_state = 0}, - [938] = {.lex_state = 14}, - [939] = {.lex_state = 14}, - [940] = {.lex_state = 14}, - [941] = {.lex_state = 0}, - [942] = {.lex_state = 0}, - [943] = {.lex_state = 0}, - [944] = {.lex_state = 14}, - [945] = {.lex_state = 0}, - [946] = {.lex_state = 14}, - [947] = {.lex_state = 14}, - [948] = {.lex_state = 14}, - [949] = {.lex_state = 14}, - [950] = {.lex_state = 14}, - [951] = {.lex_state = 0, .external_lex_state = 6}, - [952] = {.lex_state = 14}, - [953] = {.lex_state = 0, .external_lex_state = 6}, - [954] = {.lex_state = 14}, - [955] = {.lex_state = 0, .external_lex_state = 6}, - [956] = {.lex_state = 14}, - [957] = {.lex_state = 14}, - [958] = {.lex_state = 14}, - [959] = {.lex_state = 14}, - [960] = {.lex_state = 0}, - [961] = {.lex_state = 0}, - [962] = {.lex_state = 14}, - [963] = {.lex_state = 0, .external_lex_state = 6}, - [964] = {.lex_state = 14}, - [965] = {.lex_state = 14}, - [966] = {.lex_state = 14}, - [967] = {.lex_state = 0}, - [968] = {.lex_state = 14}, - [969] = {.lex_state = 0, .external_lex_state = 6}, - [970] = {.lex_state = 0, .external_lex_state = 6}, - [971] = {.lex_state = 14}, - [972] = {.lex_state = 0, .external_lex_state = 6}, - [973] = {.lex_state = 0}, - [974] = {.lex_state = 14}, - [975] = {.lex_state = 14}, - [976] = {.lex_state = 0}, - [977] = {.lex_state = 14}, - [978] = {.lex_state = 0}, - [979] = {.lex_state = 0, .external_lex_state = 6}, - [980] = {.lex_state = 14}, + [853] = {.lex_state = 16, .external_lex_state = 6}, + [854] = {.lex_state = 51, .external_lex_state = 2}, + [855] = {.lex_state = 16}, + [856] = {.lex_state = 51, .external_lex_state = 2}, + [857] = {.lex_state = 16}, + [858] = {.lex_state = 16}, + [859] = {.lex_state = 15, .external_lex_state = 9}, + [860] = {.lex_state = 16}, + [861] = {.lex_state = 16, .external_lex_state = 7}, + [862] = {.lex_state = 51, .external_lex_state = 2}, + [863] = {.lex_state = 16}, + [864] = {.lex_state = 16}, + [865] = {.lex_state = 15}, + [866] = {.lex_state = 15}, + [867] = {.lex_state = 16, .external_lex_state = 6}, + [868] = {.lex_state = 15}, + [869] = {.lex_state = 15}, + [870] = {.lex_state = 16}, + [871] = {.lex_state = 16}, + [872] = {.lex_state = 15}, + [873] = {.lex_state = 15}, + [874] = {.lex_state = 15}, + [875] = {.lex_state = 15}, + [876] = {.lex_state = 15}, + [877] = {.lex_state = 15}, + [878] = {.lex_state = 16, .external_lex_state = 6}, + [879] = {.lex_state = 15}, + [880] = {.lex_state = 15}, + [881] = {.lex_state = 15}, + [882] = {.lex_state = 15}, + [883] = {.lex_state = 15}, + [884] = {.lex_state = 15}, + [885] = {.lex_state = 15}, + [886] = {.lex_state = 16, .external_lex_state = 6}, + [887] = {.lex_state = 15}, + [888] = {.lex_state = 15}, + [889] = {.lex_state = 15}, + [890] = {.lex_state = 15}, + [891] = {.lex_state = 16, .external_lex_state = 6}, + [892] = {.lex_state = 15}, + [893] = {.lex_state = 15}, + [894] = {.lex_state = 15}, + [895] = {.lex_state = 15}, + [896] = {.lex_state = 15}, + [897] = {.lex_state = 15}, + [898] = {.lex_state = 15}, + [899] = {.lex_state = 15}, + [900] = {.lex_state = 15}, + [901] = {.lex_state = 16, .external_lex_state = 6}, + [902] = {.lex_state = 16, .external_lex_state = 6}, + [903] = {.lex_state = 16, .external_lex_state = 6}, + [904] = {.lex_state = 16, .external_lex_state = 6}, + [905] = {.lex_state = 16, .external_lex_state = 6}, + [906] = {.lex_state = 15}, + [907] = {.lex_state = 16, .external_lex_state = 6}, + [908] = {.lex_state = 16, .external_lex_state = 6}, + [909] = {.lex_state = 16, .external_lex_state = 6}, + [910] = {.lex_state = 16, .external_lex_state = 6}, + [911] = {.lex_state = 16}, + [912] = {.lex_state = 16}, + [913] = {.lex_state = 16, .external_lex_state = 6}, + [914] = {.lex_state = 16, .external_lex_state = 6}, + [915] = {.lex_state = 16}, + [916] = {.lex_state = 16, .external_lex_state = 6}, + [917] = {.lex_state = 16, .external_lex_state = 6}, + [918] = {.lex_state = 16, .external_lex_state = 6}, + [919] = {.lex_state = 16}, + [920] = {.lex_state = 16, .external_lex_state = 6}, + [921] = {.lex_state = 16, .external_lex_state = 6}, + [922] = {.lex_state = 16, .external_lex_state = 6}, + [923] = {.lex_state = 16, .external_lex_state = 6}, + [924] = {.lex_state = 15}, + [925] = {.lex_state = 16}, + [926] = {.lex_state = 16, .external_lex_state = 6}, + [927] = {.lex_state = 51, .external_lex_state = 2}, + [928] = {.lex_state = 51, .external_lex_state = 2}, + [929] = {.lex_state = 16, .external_lex_state = 6}, + [930] = {.lex_state = 16, .external_lex_state = 6}, + [931] = {.lex_state = 16, .external_lex_state = 6}, + [932] = {.lex_state = 51, .external_lex_state = 2}, + [933] = {.lex_state = 51, .external_lex_state = 2}, + [934] = {.lex_state = 51, .external_lex_state = 2}, + [935] = {.lex_state = 51, .external_lex_state = 2}, + [936] = {.lex_state = 16, .external_lex_state = 6}, + [937] = {.lex_state = 16, .external_lex_state = 6}, + [938] = {.lex_state = 15}, + [939] = {.lex_state = 15}, + [940] = {.lex_state = 16, .external_lex_state = 6}, + [941] = {.lex_state = 16, .external_lex_state = 6}, + [942] = {.lex_state = 16, .external_lex_state = 6}, + [943] = {.lex_state = 16, .external_lex_state = 6}, + [944] = {.lex_state = 16, .external_lex_state = 6}, + [945] = {.lex_state = 16}, + [946] = {.lex_state = 16}, + [947] = {.lex_state = 16}, + [948] = {.lex_state = 16}, + [949] = {.lex_state = 16}, + [950] = {.lex_state = 16}, + [951] = {.lex_state = 16}, + [952] = {.lex_state = 16}, + [953] = {.lex_state = 16}, + [954] = {.lex_state = 16}, + [955] = {.lex_state = 16}, + [956] = {.lex_state = 16}, + [957] = {.lex_state = 16}, + [958] = {.lex_state = 16}, + [959] = {.lex_state = 16}, + [960] = {.lex_state = 16}, + [961] = {.lex_state = 16}, + [962] = {.lex_state = 16}, + [963] = {.lex_state = 16}, + [964] = {.lex_state = 51, .external_lex_state = 2}, + [965] = {.lex_state = 16}, + [966] = {.lex_state = 16}, + [967] = {.lex_state = 16}, + [968] = {.lex_state = 16}, + [969] = {.lex_state = 16}, + [970] = {.lex_state = 16}, + [971] = {.lex_state = 16}, + [972] = {.lex_state = 16}, + [973] = {.lex_state = 16}, + [974] = {.lex_state = 16}, + [975] = {.lex_state = 16}, + [976] = {.lex_state = 16}, + [977] = {.lex_state = 16}, + [978] = {.lex_state = 16}, + [979] = {.lex_state = 51, .external_lex_state = 2}, + [980] = {.lex_state = 51, .external_lex_state = 2}, [981] = {.lex_state = 16}, - [982] = {.lex_state = 14}, - [983] = {.lex_state = 14}, - [984] = {.lex_state = 0, .external_lex_state = 6}, - [985] = {.lex_state = 0, .external_lex_state = 6}, - [986] = {.lex_state = 14}, - [987] = {.lex_state = 0}, - [988] = {.lex_state = 0}, - [989] = {.lex_state = 0, .external_lex_state = 6}, - [990] = {.lex_state = 14}, - [991] = {.lex_state = 14}, + [982] = {.lex_state = 51, .external_lex_state = 2}, + [983] = {.lex_state = 16}, + [984] = {.lex_state = 51, .external_lex_state = 2}, + [985] = {.lex_state = 51, .external_lex_state = 2}, + [986] = {.lex_state = 51, .external_lex_state = 2}, + [987] = {.lex_state = 51, .external_lex_state = 2}, + [988] = {.lex_state = 51, .external_lex_state = 2}, + [989] = {.lex_state = 51}, + [990] = {.lex_state = 0}, + [991] = {.lex_state = 51}, [992] = {.lex_state = 0}, - [993] = {.lex_state = 14}, - [994] = {.lex_state = 14}, - [995] = {.lex_state = 0}, - [996] = {.lex_state = 14}, - [997] = {.lex_state = 0}, - [998] = {.lex_state = 0}, - [999] = {.lex_state = 14}, - [1000] = {.lex_state = 14}, - [1001] = {.lex_state = 14}, + [993] = {.lex_state = 51}, + [994] = {.lex_state = 51, .external_lex_state = 2}, + [995] = {.lex_state = 14}, + [996] = {.lex_state = 51, .external_lex_state = 2}, + [997] = {.lex_state = 51}, + [998] = {.lex_state = 51}, + [999] = {.lex_state = 51}, + [1000] = {.lex_state = 16}, + [1001] = {.lex_state = 16}, [1002] = {.lex_state = 0, .external_lex_state = 6}, [1003] = {.lex_state = 0, .external_lex_state = 6}, - [1004] = {.lex_state = 0}, - [1005] = {.lex_state = 0, .external_lex_state = 6}, - [1006] = {.lex_state = 0}, - [1007] = {.lex_state = 0}, - [1008] = {.lex_state = 0, .external_lex_state = 6}, - [1009] = {.lex_state = 0, .external_lex_state = 6}, - [1010] = {.lex_state = 14}, - [1011] = {.lex_state = 0}, - [1012] = {.lex_state = 0, .external_lex_state = 6}, - [1013] = {.lex_state = 16}, - [1014] = {.lex_state = 14}, - [1015] = {.lex_state = 14}, - [1016] = {.lex_state = 0}, - [1017] = {.lex_state = 0}, - [1018] = {.lex_state = 0}, - [1019] = {.lex_state = 14}, - [1020] = {.lex_state = 0}, - [1021] = {.lex_state = 14}, - [1022] = {.lex_state = 14}, - [1023] = {.lex_state = 0}, - [1024] = {.lex_state = 14}, - [1025] = {.lex_state = 0}, - [1026] = {.lex_state = 0, .external_lex_state = 6}, - [1027] = {.lex_state = 14}, + [1004] = {.lex_state = 51}, + [1005] = {.lex_state = 51}, + [1006] = {.lex_state = 14}, + [1007] = {.lex_state = 51}, + [1008] = {.lex_state = 51, .external_lex_state = 2}, + [1009] = {.lex_state = 51}, + [1010] = {.lex_state = 51}, + [1011] = {.lex_state = 51}, + [1012] = {.lex_state = 16}, + [1013] = {.lex_state = 51}, + [1014] = {.lex_state = 51}, + [1015] = {.lex_state = 51}, + [1016] = {.lex_state = 51}, + [1017] = {.lex_state = 51}, + [1018] = {.lex_state = 51}, + [1019] = {.lex_state = 51}, + [1020] = {.lex_state = 51}, + [1021] = {.lex_state = 51, .external_lex_state = 2}, + [1022] = {.lex_state = 0}, + [1023] = {.lex_state = 51}, + [1024] = {.lex_state = 51}, + [1025] = {.lex_state = 51}, + [1026] = {.lex_state = 0}, + [1027] = {.lex_state = 0}, [1028] = {.lex_state = 0}, - [1029] = {.lex_state = 14}, - [1030] = {.lex_state = 0, .external_lex_state = 6}, - [1031] = {.lex_state = 0, .external_lex_state = 6}, - [1032] = {.lex_state = 0, .external_lex_state = 6}, - [1033] = {.lex_state = 14}, - [1034] = {.lex_state = 14}, + [1029] = {.lex_state = 0}, + [1030] = {.lex_state = 51}, + [1031] = {.lex_state = 51}, + [1032] = {.lex_state = 16}, + [1033] = {.lex_state = 18, .external_lex_state = 11}, + [1034] = {.lex_state = 51}, [1035] = {.lex_state = 18, .external_lex_state = 11}, - [1036] = {.lex_state = 14}, + [1036] = {.lex_state = 18, .external_lex_state = 11}, [1037] = {.lex_state = 18, .external_lex_state = 11}, - [1038] = {.lex_state = 16, .external_lex_state = 6}, - [1039] = {.lex_state = 16}, - [1040] = {.lex_state = 14}, - [1041] = {.lex_state = 16, .external_lex_state = 6}, - [1042] = {.lex_state = 14}, - [1043] = {.lex_state = 0}, + [1038] = {.lex_state = 16}, + [1039] = {.lex_state = 51, .external_lex_state = 8}, + [1040] = {.lex_state = 51, .external_lex_state = 9}, + [1041] = {.lex_state = 0}, + [1042] = {.lex_state = 16}, + [1043] = {.lex_state = 18, .external_lex_state = 11}, [1044] = {.lex_state = 18, .external_lex_state = 11}, - [1045] = {.lex_state = 0}, - [1046] = {.lex_state = 18, .external_lex_state = 11}, - [1047] = {.lex_state = 16, .external_lex_state = 6}, + [1045] = {.lex_state = 18, .external_lex_state = 11}, + [1046] = {.lex_state = 51}, + [1047] = {.lex_state = 18, .external_lex_state = 11}, [1048] = {.lex_state = 18, .external_lex_state = 11}, - [1049] = {.lex_state = 14}, - [1050] = {.lex_state = 14}, - [1051] = {.lex_state = 16}, - [1052] = {.lex_state = 14}, - [1053] = {.lex_state = 0, .external_lex_state = 6}, + [1049] = {.lex_state = 16}, + [1050] = {.lex_state = 18, .external_lex_state = 11}, + [1051] = {.lex_state = 18, .external_lex_state = 11}, + [1052] = {.lex_state = 18, .external_lex_state = 11}, + [1053] = {.lex_state = 18, .external_lex_state = 11}, [1054] = {.lex_state = 18, .external_lex_state = 11}, - [1055] = {.lex_state = 14}, + [1055] = {.lex_state = 18, .external_lex_state = 11}, [1056] = {.lex_state = 18, .external_lex_state = 11}, - [1057] = {.lex_state = 14}, - [1058] = {.lex_state = 14}, - [1059] = {.lex_state = 14}, - [1060] = {.lex_state = 0}, - [1061] = {.lex_state = 14}, - [1062] = {.lex_state = 14}, - [1063] = {.lex_state = 0, .external_lex_state = 6}, - [1064] = {.lex_state = 14}, - [1065] = {.lex_state = 14}, - [1066] = {.lex_state = 14}, - [1067] = {.lex_state = 18, .external_lex_state = 11}, - [1068] = {.lex_state = 0, .external_lex_state = 6}, - [1069] = {.lex_state = 0, .external_lex_state = 6}, - [1070] = {.lex_state = 14}, - [1071] = {.lex_state = 14}, - [1072] = {.lex_state = 8}, - [1073] = {.lex_state = 0, .external_lex_state = 6}, + [1057] = {.lex_state = 18, .external_lex_state = 11}, + [1058] = {.lex_state = 18, .external_lex_state = 11}, + [1059] = {.lex_state = 18, .external_lex_state = 11}, + [1060] = {.lex_state = 51}, + [1061] = {.lex_state = 51}, + [1062] = {.lex_state = 0}, + [1063] = {.lex_state = 51}, + [1064] = {.lex_state = 0}, + [1065] = {.lex_state = 51}, + [1066] = {.lex_state = 0}, + [1067] = {.lex_state = 0}, + [1068] = {.lex_state = 0}, + [1069] = {.lex_state = 0}, + [1070] = {.lex_state = 51}, + [1071] = {.lex_state = 51}, + [1072] = {.lex_state = 51}, + [1073] = {.lex_state = 0}, [1074] = {.lex_state = 0}, [1075] = {.lex_state = 0}, - [1076] = {.lex_state = 14}, - [1077] = {.lex_state = 0}, - [1078] = {.lex_state = 0, .external_lex_state = 6}, + [1076] = {.lex_state = 0}, + [1077] = {.lex_state = 51}, + [1078] = {.lex_state = 51}, [1079] = {.lex_state = 0}, - [1080] = {.lex_state = 0, .external_lex_state = 6}, - [1081] = {.lex_state = 0, .external_lex_state = 6}, - [1082] = {.lex_state = 0, .external_lex_state = 6}, + [1080] = {.lex_state = 0}, + [1081] = {.lex_state = 0}, + [1082] = {.lex_state = 51}, [1083] = {.lex_state = 0}, - [1084] = {.lex_state = 14}, + [1084] = {.lex_state = 0}, [1085] = {.lex_state = 0}, - [1086] = {.lex_state = 14}, + [1086] = {.lex_state = 0}, [1087] = {.lex_state = 0}, - [1088] = {.lex_state = 14}, - [1089] = {.lex_state = 14}, + [1088] = {.lex_state = 0}, + [1089] = {.lex_state = 51}, [1090] = {.lex_state = 0}, - [1091] = {.lex_state = 0, .external_lex_state = 6}, + [1091] = {.lex_state = 51}, [1092] = {.lex_state = 0}, - [1093] = {.lex_state = 0, .external_lex_state = 6}, - [1094] = {.lex_state = 0, .external_lex_state = 6}, - [1095] = {.lex_state = 0}, - [1096] = {.lex_state = 0, .external_lex_state = 6}, - [1097] = {.lex_state = 0, .external_lex_state = 6}, - [1098] = {.lex_state = 8}, + [1093] = {.lex_state = 14}, + [1094] = {.lex_state = 0}, + [1095] = {.lex_state = 14}, + [1096] = {.lex_state = 51}, + [1097] = {.lex_state = 51}, + [1098] = {.lex_state = 0}, [1099] = {.lex_state = 0}, [1100] = {.lex_state = 0}, - [1101] = {.lex_state = 0, .external_lex_state = 6}, - [1102] = {.lex_state = 0}, + [1101] = {.lex_state = 51}, + [1102] = {.lex_state = 51}, [1103] = {.lex_state = 14}, - [1104] = {.lex_state = 8}, - [1105] = {.lex_state = 0, .external_lex_state = 6}, - [1106] = {.lex_state = 0}, - [1107] = {.lex_state = 16, .external_lex_state = 6}, - [1108] = {.lex_state = 0}, + [1104] = {.lex_state = 14}, + [1105] = {.lex_state = 14}, + [1106] = {.lex_state = 14}, + [1107] = {.lex_state = 14}, + [1108] = {.lex_state = 14}, [1109] = {.lex_state = 0, .external_lex_state = 6}, - [1110] = {.lex_state = 0, .external_lex_state = 6}, - [1111] = {.lex_state = 0, .external_lex_state = 6}, + [1110] = {.lex_state = 51}, + [1111] = {.lex_state = 0}, [1112] = {.lex_state = 14}, [1113] = {.lex_state = 0}, - [1114] = {.lex_state = 16}, - [1115] = {.lex_state = 14}, - [1116] = {.lex_state = 0}, - [1117] = {.lex_state = 14}, + [1114] = {.lex_state = 51}, + [1115] = {.lex_state = 51}, + [1116] = {.lex_state = 51}, + [1117] = {.lex_state = 51}, [1118] = {.lex_state = 0}, - [1119] = {.lex_state = 14, .external_lex_state = 9}, - [1120] = {.lex_state = 14, .external_lex_state = 8}, - [1121] = {.lex_state = 14}, - [1122] = {.lex_state = 0}, - [1123] = {.lex_state = 0}, - [1124] = {.lex_state = 0, .external_lex_state = 6}, + [1119] = {.lex_state = 51}, + [1120] = {.lex_state = 51}, + [1121] = {.lex_state = 0, .external_lex_state = 6}, + [1122] = {.lex_state = 0, .external_lex_state = 6}, + [1123] = {.lex_state = 0, .external_lex_state = 6}, + [1124] = {.lex_state = 51}, [1125] = {.lex_state = 14}, - [1126] = {.lex_state = 14}, - [1127] = {.lex_state = 0}, - [1128] = {.lex_state = 14}, - [1129] = {.lex_state = 0}, - [1130] = {.lex_state = 0, .external_lex_state = 6}, - [1131] = {.lex_state = 0, .external_lex_state = 6}, - [1132] = {.lex_state = 0, .external_lex_state = 6}, - [1133] = {.lex_state = 0, .external_lex_state = 6}, - [1134] = {.lex_state = 0, .external_lex_state = 6}, + [1126] = {.lex_state = 51}, + [1127] = {.lex_state = 51}, + [1128] = {.lex_state = 0}, + [1129] = {.lex_state = 14}, + [1130] = {.lex_state = 51}, + [1131] = {.lex_state = 51}, + [1132] = {.lex_state = 51}, + [1133] = {.lex_state = 18, .external_lex_state = 11}, + [1134] = {.lex_state = 51}, [1135] = {.lex_state = 0, .external_lex_state = 6}, [1136] = {.lex_state = 0}, - [1137] = {.lex_state = 0}, - [1138] = {.lex_state = 0}, - [1139] = {.lex_state = 14}, - [1140] = {.lex_state = 0, .external_lex_state = 6}, - [1141] = {.lex_state = 14}, - [1142] = {.lex_state = 0}, - [1143] = {.lex_state = 0, .external_lex_state = 6}, + [1137] = {.lex_state = 51}, + [1138] = {.lex_state = 51}, + [1139] = {.lex_state = 16}, + [1140] = {.lex_state = 51}, + [1141] = {.lex_state = 0, .external_lex_state = 6}, + [1142] = {.lex_state = 51}, + [1143] = {.lex_state = 51}, [1144] = {.lex_state = 0, .external_lex_state = 6}, [1145] = {.lex_state = 0, .external_lex_state = 6}, [1146] = {.lex_state = 0}, - [1147] = {.lex_state = 0}, + [1147] = {.lex_state = 18, .external_lex_state = 11}, [1148] = {.lex_state = 0}, - [1149] = {.lex_state = 0}, - [1150] = {.lex_state = 14}, - [1151] = {.lex_state = 14}, - [1152] = {.lex_state = 14}, - [1153] = {.lex_state = 0}, - [1154] = {.lex_state = 14}, - [1155] = {.lex_state = 0, .external_lex_state = 6}, + [1149] = {.lex_state = 51}, + [1150] = {.lex_state = 51}, + [1151] = {.lex_state = 51}, + [1152] = {.lex_state = 51}, + [1153] = {.lex_state = 51}, + [1154] = {.lex_state = 51}, + [1155] = {.lex_state = 0}, [1156] = {.lex_state = 0, .external_lex_state = 6}, - [1157] = {.lex_state = 14}, - [1158] = {.lex_state = 14}, - [1159] = {.lex_state = 0, .external_lex_state = 6}, - [1160] = {.lex_state = 0}, - [1161] = {.lex_state = 14}, - [1162] = {.lex_state = 14}, - [1163] = {.lex_state = 0}, - [1164] = {.lex_state = 0}, - [1165] = {.lex_state = 0}, - [1166] = {.lex_state = 14}, - [1167] = {.lex_state = 0, .external_lex_state = 6}, - [1168] = {.lex_state = 0, .external_lex_state = 6}, - [1169] = {.lex_state = 14}, + [1157] = {.lex_state = 51}, + [1158] = {.lex_state = 0, .external_lex_state = 6}, + [1159] = {.lex_state = 51}, + [1160] = {.lex_state = 51}, + [1161] = {.lex_state = 51}, + [1162] = {.lex_state = 0}, + [1163] = {.lex_state = 0, .external_lex_state = 6}, + [1164] = {.lex_state = 14}, + [1165] = {.lex_state = 14}, + [1166] = {.lex_state = 51}, + [1167] = {.lex_state = 51}, + [1168] = {.lex_state = 14}, + [1169] = {.lex_state = 0}, [1170] = {.lex_state = 0}, - [1171] = {.lex_state = 16}, - [1172] = {.lex_state = 0}, + [1171] = {.lex_state = 0}, + [1172] = {.lex_state = 51}, [1173] = {.lex_state = 0}, [1174] = {.lex_state = 0}, - [1175] = {.lex_state = 0}, - [1176] = {.lex_state = 0}, - [1177] = {.lex_state = 0}, - [1178] = {.lex_state = 14}, - [1179] = {.lex_state = 14}, - [1180] = {.lex_state = 0}, - [1181] = {.lex_state = 0, .external_lex_state = 6}, + [1175] = {.lex_state = 0, .external_lex_state = 6}, + [1176] = {.lex_state = 51}, + [1177] = {.lex_state = 0, .external_lex_state = 6}, + [1178] = {.lex_state = 0}, + [1179] = {.lex_state = 0, .external_lex_state = 6}, + [1180] = {.lex_state = 0, .external_lex_state = 6}, + [1181] = {.lex_state = 0}, [1182] = {.lex_state = 0}, [1183] = {.lex_state = 14}, - [1184] = {.lex_state = 14}, + [1184] = {.lex_state = 51}, [1185] = {.lex_state = 0, .external_lex_state = 6}, - [1186] = {.lex_state = 14}, + [1186] = {.lex_state = 51}, [1187] = {.lex_state = 0}, - [1188] = {.lex_state = 0}, + [1188] = {.lex_state = 51}, [1189] = {.lex_state = 0}, [1190] = {.lex_state = 0}, - [1191] = {.lex_state = 8}, - [1192] = {.lex_state = 0}, - [1193] = {.lex_state = 0}, - [1194] = {.lex_state = 0}, - [1195] = {.lex_state = 0, .external_lex_state = 6}, - [1196] = {.lex_state = 0, .external_lex_state = 6}, - [1197] = {.lex_state = 0}, - [1198] = {.lex_state = 14}, + [1191] = {.lex_state = 0, .external_lex_state = 6}, + [1192] = {.lex_state = 51}, + [1193] = {.lex_state = 51}, + [1194] = {.lex_state = 51}, + [1195] = {.lex_state = 51}, + [1196] = {.lex_state = 14}, + [1197] = {.lex_state = 0, .external_lex_state = 6}, + [1198] = {.lex_state = 0}, [1199] = {.lex_state = 0, .external_lex_state = 6}, - [1200] = {.lex_state = 0}, - [1201] = {.lex_state = 0}, - [1202] = {.lex_state = 0}, + [1200] = {.lex_state = 51}, + [1201] = {.lex_state = 16}, + [1202] = {.lex_state = 0, .external_lex_state = 6}, [1203] = {.lex_state = 0}, - [1204] = {.lex_state = 0}, - [1205] = {.lex_state = 0}, + [1204] = {.lex_state = 51}, + [1205] = {.lex_state = 51}, [1206] = {.lex_state = 0}, - [1207] = {.lex_state = 0}, - [1208] = {.lex_state = 0}, - [1209] = {.lex_state = 14}, - [1210] = {.lex_state = 14}, - [1211] = {.lex_state = 0, .external_lex_state = 6}, - [1212] = {.lex_state = 0, .external_lex_state = 6}, - [1213] = {.lex_state = 0}, + [1207] = {.lex_state = 51}, + [1208] = {.lex_state = 51}, + [1209] = {.lex_state = 51}, + [1210] = {.lex_state = 51}, + [1211] = {.lex_state = 0}, + [1212] = {.lex_state = 0}, + [1213] = {.lex_state = 0, .external_lex_state = 6}, [1214] = {.lex_state = 0}, - [1215] = {.lex_state = 0}, - [1216] = {.lex_state = 0}, - [1217] = {.lex_state = 0, .external_lex_state = 6}, - [1218] = {.lex_state = 0}, - [1219] = {.lex_state = 0}, - [1220] = {.lex_state = 0}, - [1221] = {.lex_state = 0}, - [1222] = {.lex_state = 14}, - [1223] = {.lex_state = 0}, - [1224] = {.lex_state = 16}, + [1215] = {.lex_state = 14}, + [1216] = {.lex_state = 16}, + [1217] = {.lex_state = 18, .external_lex_state = 11}, + [1218] = {.lex_state = 18, .external_lex_state = 11}, + [1219] = {.lex_state = 16, .external_lex_state = 6}, + [1220] = {.lex_state = 51}, + [1221] = {.lex_state = 14}, + [1222] = {.lex_state = 51}, + [1223] = {.lex_state = 18, .external_lex_state = 11}, + [1224] = {.lex_state = 0, .external_lex_state = 6}, [1225] = {.lex_state = 0}, - [1226] = {.lex_state = 0}, + [1226] = {.lex_state = 0, .external_lex_state = 6}, [1227] = {.lex_state = 0, .external_lex_state = 6}, - [1228] = {.lex_state = 0, .external_lex_state = 6}, - [1229] = {.lex_state = 0}, - [1230] = {.lex_state = 0}, - [1231] = {.lex_state = 0, .external_lex_state = 6}, - [1232] = {.lex_state = 0}, - [1233] = {.lex_state = 0}, - [1234] = {.lex_state = 0}, - [1235] = {.lex_state = 0}, - [1236] = {.lex_state = 0}, - [1237] = {.lex_state = 0}, - [1238] = {.lex_state = 14}, - [1239] = {.lex_state = 14}, - [1240] = {.lex_state = 0}, - [1241] = {.lex_state = 8}, - [1242] = {.lex_state = 0}, - [1243] = {.lex_state = 0}, - [1244] = {.lex_state = 0}, - [1245] = {.lex_state = 8}, - [1246] = {.lex_state = 0}, - [1247] = {.lex_state = 0}, + [1228] = {.lex_state = 51}, + [1229] = {.lex_state = 51}, + [1230] = {.lex_state = 51}, + [1231] = {.lex_state = 51}, + [1232] = {.lex_state = 51}, + [1233] = {.lex_state = 16, .external_lex_state = 6}, + [1234] = {.lex_state = 16, .external_lex_state = 6}, + [1235] = {.lex_state = 51}, + [1236] = {.lex_state = 51}, + [1237] = {.lex_state = 51}, + [1238] = {.lex_state = 0}, + [1239] = {.lex_state = 51}, + [1240] = {.lex_state = 51}, + [1241] = {.lex_state = 16}, + [1242] = {.lex_state = 51}, + [1243] = {.lex_state = 51}, + [1244] = {.lex_state = 51}, + [1245] = {.lex_state = 18, .external_lex_state = 11}, + [1246] = {.lex_state = 51}, + [1247] = {.lex_state = 51}, [1248] = {.lex_state = 0}, - [1249] = {.lex_state = 0}, - [1250] = {.lex_state = 0}, - [1251] = {.lex_state = 0}, - [1252] = {.lex_state = 14}, - [1253] = {.lex_state = 0}, - [1254] = {.lex_state = 8}, - [1255] = {.lex_state = 8}, - [1256] = {.lex_state = 0, .external_lex_state = 6}, + [1249] = {.lex_state = 51}, + [1250] = {.lex_state = 0, .external_lex_state = 6}, + [1251] = {.lex_state = 14}, + [1252] = {.lex_state = 18, .external_lex_state = 11}, + [1253] = {.lex_state = 18, .external_lex_state = 11}, + [1254] = {.lex_state = 51}, + [1255] = {.lex_state = 0, .external_lex_state = 6}, + [1256] = {.lex_state = 51}, [1257] = {.lex_state = 0}, - [1258] = {.lex_state = 0}, + [1258] = {.lex_state = 0, .external_lex_state = 6}, [1259] = {.lex_state = 0}, - [1260] = {.lex_state = 0}, + [1260] = {.lex_state = 0, .external_lex_state = 6}, [1261] = {.lex_state = 0}, - [1262] = {.lex_state = 0, .external_lex_state = 6}, - [1263] = {.lex_state = 0}, + [1262] = {.lex_state = 0}, + [1263] = {.lex_state = 51}, [1264] = {.lex_state = 0}, - [1265] = {.lex_state = 0}, - [1266] = {.lex_state = 14}, - [1267] = {.lex_state = 0}, - [1268] = {.lex_state = 14}, - [1269] = {.lex_state = 0}, - [1270] = {.lex_state = 14}, - [1271] = {.lex_state = 14}, - [1272] = {.lex_state = 14}, - [1273] = {.lex_state = 0}, + [1265] = {.lex_state = 14}, + [1266] = {.lex_state = 0}, + [1267] = {.lex_state = 51}, + [1268] = {.lex_state = 0}, + [1269] = {.lex_state = 0, .external_lex_state = 6}, + [1270] = {.lex_state = 0}, + [1271] = {.lex_state = 0, .external_lex_state = 6}, + [1272] = {.lex_state = 0}, + [1273] = {.lex_state = 14}, [1274] = {.lex_state = 0}, - [1275] = {.lex_state = 0}, - [1276] = {.lex_state = 14}, - [1277] = {.lex_state = 14}, - [1278] = {.lex_state = 14}, - [1279] = {.lex_state = 0}, - [1280] = {.lex_state = 0}, - [1281] = {.lex_state = 0}, - [1282] = {.lex_state = 14}, - [1283] = {.lex_state = 0}, - [1284] = {.lex_state = 14}, - [1285] = {.lex_state = 0}, + [1275] = {.lex_state = 0, .external_lex_state = 6}, + [1276] = {.lex_state = 0}, + [1277] = {.lex_state = 51}, + [1278] = {.lex_state = 0, .external_lex_state = 6}, + [1279] = {.lex_state = 0, .external_lex_state = 6}, + [1280] = {.lex_state = 0, .external_lex_state = 6}, + [1281] = {.lex_state = 51}, + [1282] = {.lex_state = 0}, + [1283] = {.lex_state = 10}, + [1284] = {.lex_state = 10}, + [1285] = {.lex_state = 0, .external_lex_state = 6}, [1286] = {.lex_state = 0}, [1287] = {.lex_state = 14}, - [1288] = {.lex_state = 14}, - [1289] = {.lex_state = 0, .external_lex_state = 6}, + [1288] = {.lex_state = 10}, + [1289] = {.lex_state = 16, .external_lex_state = 6}, [1290] = {.lex_state = 0, .external_lex_state = 6}, [1291] = {.lex_state = 0}, - [1292] = {.lex_state = 14}, + [1292] = {.lex_state = 0, .external_lex_state = 6}, [1293] = {.lex_state = 0}, - [1294] = {.lex_state = 0}, - [1295] = {.lex_state = 0}, - [1296] = {.lex_state = 0}, + [1294] = {.lex_state = 51}, + [1295] = {.lex_state = 51}, + [1296] = {.lex_state = 51}, [1297] = {.lex_state = 0}, - [1298] = {.lex_state = 14}, + [1298] = {.lex_state = 0}, [1299] = {.lex_state = 0, .external_lex_state = 6}, [1300] = {.lex_state = 0}, [1301] = {.lex_state = 0}, - [1302] = {.lex_state = 0}, - [1303] = {.lex_state = 0}, + [1302] = {.lex_state = 14}, + [1303] = {.lex_state = 0, .external_lex_state = 6}, [1304] = {.lex_state = 0}, [1305] = {.lex_state = 0}, - [1306] = {.lex_state = 0}, - [1307] = {.lex_state = 14}, - [1308] = {.lex_state = 0}, - [1309] = {.lex_state = 0}, - [1310] = {.lex_state = 0}, - [1311] = {.lex_state = 0, .external_lex_state = 6}, + [1306] = {.lex_state = 0, .external_lex_state = 6}, + [1307] = {.lex_state = 0}, + [1308] = {.lex_state = 51}, + [1309] = {.lex_state = 0, .external_lex_state = 6}, + [1310] = {.lex_state = 14}, + [1311] = {.lex_state = 0}, [1312] = {.lex_state = 0}, [1313] = {.lex_state = 0}, - [1314] = {.lex_state = 0, .external_lex_state = 6}, - [1315] = {.lex_state = 0, .external_lex_state = 6}, + [1314] = {.lex_state = 0}, + [1315] = {.lex_state = 0}, [1316] = {.lex_state = 0, .external_lex_state = 6}, - [1317] = {.lex_state = 0}, - [1318] = {.lex_state = 0}, - [1319] = {.lex_state = 0}, - [1320] = {.lex_state = 17}, + [1317] = {.lex_state = 51, .external_lex_state = 8}, + [1318] = {.lex_state = 51, .external_lex_state = 9}, + [1319] = {.lex_state = 0, .external_lex_state = 6}, + [1320] = {.lex_state = 0, .external_lex_state = 6}, [1321] = {.lex_state = 0}, - [1322] = {.lex_state = 0}, + [1322] = {.lex_state = 51}, [1323] = {.lex_state = 0}, - [1324] = {.lex_state = 0}, - [1325] = {.lex_state = 0}, - [1326] = {.lex_state = 0}, + [1324] = {.lex_state = 0, .external_lex_state = 6}, + [1325] = {.lex_state = 51}, + [1326] = {.lex_state = 0, .external_lex_state = 6}, [1327] = {.lex_state = 0}, [1328] = {.lex_state = 0}, - [1329] = {.lex_state = 0, .external_lex_state = 6}, - [1330] = {.lex_state = 0, .external_lex_state = 6}, - [1331] = {.lex_state = 14}, - [1332] = {.lex_state = 0}, - [1333] = {.lex_state = 0}, - [1334] = {.lex_state = 17}, - [1335] = {.lex_state = 0, .external_lex_state = 6}, - [1336] = {.lex_state = 0}, - [1337] = {.lex_state = 0}, - [1338] = {.lex_state = 0, .external_lex_state = 6}, + [1329] = {.lex_state = 0}, + [1330] = {.lex_state = 0}, + [1331] = {.lex_state = 51}, + [1332] = {.lex_state = 0, .external_lex_state = 6}, + [1333] = {.lex_state = 0, .external_lex_state = 6}, + [1334] = {.lex_state = 51}, + [1335] = {.lex_state = 0}, + [1336] = {.lex_state = 16}, + [1337] = {.lex_state = 0, .external_lex_state = 6}, + [1338] = {.lex_state = 51}, [1339] = {.lex_state = 0}, [1340] = {.lex_state = 0, .external_lex_state = 6}, - [1341] = {.lex_state = 16}, - [1342] = {.lex_state = 0}, + [1341] = {.lex_state = 51}, + [1342] = {.lex_state = 51}, [1343] = {.lex_state = 0, .external_lex_state = 6}, - [1344] = {.lex_state = 0}, - [1345] = {.lex_state = 14}, - [1346] = {.lex_state = 14}, - [1347] = {.lex_state = 17}, - [1348] = {.lex_state = 17}, - [1349] = {.lex_state = 17}, - [1350] = {.lex_state = 17}, - [1351] = {.lex_state = 0}, - [1352] = {.lex_state = 0, .external_lex_state = 6}, - [1353] = {.lex_state = 17}, - [1354] = {.lex_state = 14}, - [1355] = {.lex_state = 17}, - [1356] = {.lex_state = 0, .external_lex_state = 6}, + [1344] = {.lex_state = 0, .external_lex_state = 6}, + [1345] = {.lex_state = 0}, + [1346] = {.lex_state = 51}, + [1347] = {.lex_state = 51}, + [1348] = {.lex_state = 0, .external_lex_state = 6}, + [1349] = {.lex_state = 51}, + [1350] = {.lex_state = 51}, + [1351] = {.lex_state = 51}, + [1352] = {.lex_state = 51}, + [1353] = {.lex_state = 0, .external_lex_state = 6}, + [1354] = {.lex_state = 0, .external_lex_state = 6}, + [1355] = {.lex_state = 0, .external_lex_state = 6}, + [1356] = {.lex_state = 0}, [1357] = {.lex_state = 0, .external_lex_state = 6}, - [1358] = {.lex_state = 0}, - [1359] = {.lex_state = 17}, - [1360] = {.lex_state = 0}, - [1361] = {.lex_state = 0}, - [1362] = {.lex_state = 0}, - [1363] = {.lex_state = 17}, - [1364] = {.lex_state = 0}, + [1358] = {.lex_state = 0, .external_lex_state = 6}, + [1359] = {.lex_state = 0, .external_lex_state = 6}, + [1360] = {.lex_state = 0, .external_lex_state = 6}, + [1361] = {.lex_state = 51}, + [1362] = {.lex_state = 16}, + [1363] = {.lex_state = 0}, + [1364] = {.lex_state = 51}, [1365] = {.lex_state = 0, .external_lex_state = 6}, [1366] = {.lex_state = 0}, [1367] = {.lex_state = 0}, - [1368] = {.lex_state = 0}, - [1369] = {.lex_state = 0, .external_lex_state = 6}, + [1368] = {.lex_state = 0, .external_lex_state = 6}, + [1369] = {.lex_state = 0}, [1370] = {.lex_state = 0}, [1371] = {.lex_state = 0}, [1372] = {.lex_state = 0}, - [1373] = {.lex_state = 0}, + [1373] = {.lex_state = 0, .external_lex_state = 6}, [1374] = {.lex_state = 0}, [1375] = {.lex_state = 0}, [1376] = {.lex_state = 0}, - [1377] = {.lex_state = 0, .external_lex_state = 6}, + [1377] = {.lex_state = 0}, [1378] = {.lex_state = 0}, - [1379] = {.lex_state = 14}, - [1380] = {.lex_state = 0, .external_lex_state = 6}, - [1381] = {.lex_state = 0, .external_lex_state = 6}, + [1379] = {.lex_state = 51}, + [1380] = {.lex_state = 10}, + [1381] = {.lex_state = 0}, [1382] = {.lex_state = 0}, [1383] = {.lex_state = 0}, [1384] = {.lex_state = 0}, - [1385] = {.lex_state = 14}, + [1385] = {.lex_state = 51}, [1386] = {.lex_state = 0}, [1387] = {.lex_state = 0}, [1388] = {.lex_state = 0}, [1389] = {.lex_state = 0}, - [1390] = {.lex_state = 0}, - [1391] = {.lex_state = 0}, + [1390] = {.lex_state = 51}, + [1391] = {.lex_state = 51}, [1392] = {.lex_state = 0}, - [1393] = {.lex_state = 0}, - [1394] = {.lex_state = 0}, - [1395] = {.lex_state = 14}, + [1393] = {.lex_state = 0, .external_lex_state = 6}, + [1394] = {.lex_state = 51}, + [1395] = {.lex_state = 0}, [1396] = {.lex_state = 0}, - [1397] = {.lex_state = 14}, + [1397] = {.lex_state = 0}, [1398] = {.lex_state = 0}, [1399] = {.lex_state = 0}, [1400] = {.lex_state = 0}, [1401] = {.lex_state = 0}, - [1402] = {.lex_state = 14}, + [1402] = {.lex_state = 0}, [1403] = {.lex_state = 0}, - [1404] = {.lex_state = 0}, + [1404] = {.lex_state = 0, .external_lex_state = 6}, [1405] = {.lex_state = 0}, - [1406] = {.lex_state = 14}, + [1406] = {.lex_state = 0, .external_lex_state = 6}, [1407] = {.lex_state = 0}, [1408] = {.lex_state = 0}, [1409] = {.lex_state = 0}, [1410] = {.lex_state = 0}, [1411] = {.lex_state = 0}, [1412] = {.lex_state = 0}, - [1413] = {.lex_state = 14}, + [1413] = {.lex_state = 0}, [1414] = {.lex_state = 0}, - [1415] = {.lex_state = 14}, + [1415] = {.lex_state = 0}, [1416] = {.lex_state = 0}, [1417] = {.lex_state = 0}, [1418] = {.lex_state = 0}, - [1419] = {.lex_state = 0}, - [1420] = {.lex_state = 0}, - [1421] = {.lex_state = 0}, + [1419] = {.lex_state = 14}, + [1420] = {.lex_state = 0, .external_lex_state = 6}, + [1421] = {.lex_state = 0, .external_lex_state = 6}, [1422] = {.lex_state = 0}, - [1423] = {.lex_state = 14}, + [1423] = {.lex_state = 0}, [1424] = {.lex_state = 0}, - [1425] = {.lex_state = 14}, + [1425] = {.lex_state = 0}, [1426] = {.lex_state = 0}, [1427] = {.lex_state = 0}, [1428] = {.lex_state = 0}, [1429] = {.lex_state = 0}, - [1430] = {.lex_state = 14}, - [1431] = {.lex_state = 14}, - [1432] = {.lex_state = 14}, - [1433] = {.lex_state = 14}, - [1434] = {.lex_state = 0}, - [1435] = {.lex_state = 14}, + [1430] = {.lex_state = 0}, + [1431] = {.lex_state = 0}, + [1432] = {.lex_state = 0}, + [1433] = {.lex_state = 0}, + [1434] = {.lex_state = 51}, + [1435] = {.lex_state = 0}, [1436] = {.lex_state = 0}, - [1437] = {.lex_state = 14}, + [1437] = {.lex_state = 0}, [1438] = {.lex_state = 0}, - [1439] = {.lex_state = 14}, - [1440] = {.lex_state = 14}, + [1439] = {.lex_state = 0}, + [1440] = {.lex_state = 0}, [1441] = {.lex_state = 0}, - [1442] = {.lex_state = 0}, + [1442] = {.lex_state = 51}, [1443] = {.lex_state = 0}, - [1444] = {.lex_state = 14}, - [1445] = {.lex_state = 0}, - [1446] = {.lex_state = 14}, - [1447] = {.lex_state = 0}, - [1448] = {.lex_state = 14}, - [1449] = {.lex_state = 14}, - [1450] = {.lex_state = 14}, - [1451] = {.lex_state = 14}, - [1452] = {.lex_state = 14}, - [1453] = {.lex_state = 14}, + [1444] = {.lex_state = 51}, + [1445] = {.lex_state = 51}, + [1446] = {.lex_state = 51}, + [1447] = {.lex_state = 51}, + [1448] = {.lex_state = 0}, + [1449] = {.lex_state = 0}, + [1450] = {.lex_state = 0}, + [1451] = {.lex_state = 0}, + [1452] = {.lex_state = 51}, + [1453] = {.lex_state = 51}, [1454] = {.lex_state = 0}, - [1455] = {.lex_state = 0}, - [1456] = {.lex_state = 0}, - [1457] = {.lex_state = 0}, - [1458] = {.lex_state = 0}, - [1459] = {.lex_state = 14}, + [1455] = {.lex_state = 10}, + [1456] = {.lex_state = 51}, + [1457] = {.lex_state = 14}, + [1458] = {.lex_state = 14}, + [1459] = {.lex_state = 0}, [1460] = {.lex_state = 0}, - [1461] = {.lex_state = 14}, + [1461] = {.lex_state = 0}, [1462] = {.lex_state = 0}, - [1463] = {.lex_state = 0}, - [1464] = {.lex_state = 14}, - [1465] = {.lex_state = 14}, - [1466] = {.lex_state = 14}, + [1463] = {.lex_state = 0, .external_lex_state = 6}, + [1464] = {.lex_state = 51}, + [1465] = {.lex_state = 51}, + [1466] = {.lex_state = 0}, [1467] = {.lex_state = 0}, [1468] = {.lex_state = 0}, [1469] = {.lex_state = 0}, - [1470] = {.lex_state = 0}, - [1471] = {.lex_state = 14}, - [1472] = {.lex_state = 14}, + [1470] = {.lex_state = 0, .external_lex_state = 6}, + [1471] = {.lex_state = 51}, + [1472] = {.lex_state = 0}, [1473] = {.lex_state = 0}, - [1474] = {.lex_state = 14}, - [1475] = {.lex_state = 0}, + [1474] = {.lex_state = 0}, + [1475] = {.lex_state = 0, .external_lex_state = 6}, [1476] = {.lex_state = 0}, [1477] = {.lex_state = 0}, - [1478] = {.lex_state = 14}, - [1479] = {.lex_state = 14}, + [1478] = {.lex_state = 16}, + [1479] = {.lex_state = 51}, [1480] = {.lex_state = 0}, [1481] = {.lex_state = 0}, - [1482] = {.lex_state = 0}, + [1482] = {.lex_state = 10}, [1483] = {.lex_state = 0}, [1484] = {.lex_state = 0}, [1485] = {.lex_state = 0}, - [1486] = {.lex_state = 0}, + [1486] = {.lex_state = 0, .external_lex_state = 6}, [1487] = {.lex_state = 0}, [1488] = {.lex_state = 0}, [1489] = {.lex_state = 0}, - [1490] = {.lex_state = 14}, + [1490] = {.lex_state = 0}, [1491] = {.lex_state = 0}, [1492] = {.lex_state = 0}, - [1493] = {.lex_state = 0}, - [1494] = {.lex_state = 0}, + [1493] = {.lex_state = 51}, + [1494] = {.lex_state = 14}, [1495] = {.lex_state = 0}, - [1496] = {.lex_state = 14}, - [1497] = {.lex_state = 0}, + [1496] = {.lex_state = 0}, + [1497] = {.lex_state = 10}, [1498] = {.lex_state = 0}, [1499] = {.lex_state = 0}, [1500] = {.lex_state = 0}, - [1501] = {.lex_state = 0}, - [1502] = {.lex_state = 0}, - [1503] = {.lex_state = 14}, + [1501] = {.lex_state = 51}, + [1502] = {.lex_state = 10}, + [1503] = {.lex_state = 0}, [1504] = {.lex_state = 0}, [1505] = {.lex_state = 0}, - [1506] = {.lex_state = 14}, - [1507] = {.lex_state = 0}, - [1508] = {.lex_state = 14}, + [1506] = {.lex_state = 51}, + [1507] = {.lex_state = 0, .external_lex_state = 6}, + [1508] = {.lex_state = 0}, [1509] = {.lex_state = 0}, -}; - -enum { - ts_external_token__newline = 0, - ts_external_token__indent = 1, - ts_external_token__dedent = 2, - ts_external_token__string_start = 3, - ts_external_token__string_content = 4, - ts_external_token__string_end = 5, - ts_external_token__template_string_start = 6, -}; - -static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { - [ts_external_token__newline] = sym__newline, - [ts_external_token__indent] = sym__indent, - [ts_external_token__dedent] = sym__dedent, - [ts_external_token__string_start] = sym__string_start, - [ts_external_token__string_content] = sym__string_content, - [ts_external_token__string_end] = sym__string_end, - [ts_external_token__template_string_start] = sym__template_string_start, -}; - -static const bool ts_external_scanner_states[12][EXTERNAL_TOKEN_COUNT] = { - [1] = { - [ts_external_token__newline] = true, - [ts_external_token__indent] = true, - [ts_external_token__dedent] = true, - [ts_external_token__string_start] = true, - [ts_external_token__string_content] = true, - [ts_external_token__string_end] = true, - [ts_external_token__template_string_start] = true, - }, - [2] = { - [ts_external_token__string_start] = true, - [ts_external_token__template_string_start] = true, - }, - [3] = { - [ts_external_token__dedent] = true, - [ts_external_token__string_start] = true, - [ts_external_token__template_string_start] = true, - }, - [4] = { - [ts_external_token__newline] = true, - [ts_external_token__string_start] = true, - [ts_external_token__template_string_start] = true, - }, - [5] = { - [ts_external_token__newline] = true, - [ts_external_token__indent] = true, - [ts_external_token__string_start] = true, - [ts_external_token__template_string_start] = true, - }, - [6] = { - [ts_external_token__newline] = true, - }, - [7] = { - [ts_external_token__newline] = true, - [ts_external_token__string_start] = true, - }, - [8] = { - [ts_external_token__string_start] = true, - }, - [9] = { - [ts_external_token__template_string_start] = true, - }, - [10] = { - [ts_external_token__newline] = true, - [ts_external_token__template_string_start] = true, - }, - [11] = { - [ts_external_token__string_content] = true, - [ts_external_token__string_end] = true, - }, + [1510] = {.lex_state = 0}, + [1511] = {.lex_state = 17}, + [1512] = {.lex_state = 0}, + [1513] = {.lex_state = 17}, + [1514] = {.lex_state = 0, .external_lex_state = 6}, + [1515] = {.lex_state = 0}, + [1516] = {.lex_state = 0}, + [1517] = {.lex_state = 0, .external_lex_state = 6}, + [1518] = {.lex_state = 0, .external_lex_state = 6}, + [1519] = {.lex_state = 0}, + [1520] = {.lex_state = 51}, + [1521] = {.lex_state = 0}, + [1522] = {.lex_state = 0}, + [1523] = {.lex_state = 0, .external_lex_state = 6}, + [1524] = {.lex_state = 0}, + [1525] = {.lex_state = 0, .external_lex_state = 6}, + [1526] = {.lex_state = 0}, + [1527] = {.lex_state = 0, .external_lex_state = 6}, + [1528] = {.lex_state = 0, .external_lex_state = 6}, + [1529] = {.lex_state = 0}, + [1530] = {.lex_state = 0, .external_lex_state = 6}, + [1531] = {.lex_state = 0, .external_lex_state = 6}, + [1532] = {.lex_state = 0, .external_lex_state = 6}, + [1533] = {.lex_state = 0, .external_lex_state = 6}, + [1534] = {.lex_state = 0}, + [1535] = {.lex_state = 0, .external_lex_state = 6}, + [1536] = {.lex_state = 0}, + [1537] = {.lex_state = 0, .external_lex_state = 6}, + [1538] = {.lex_state = 0}, + [1539] = {.lex_state = 17}, + [1540] = {.lex_state = 0}, + [1541] = {.lex_state = 17}, + [1542] = {.lex_state = 0}, + [1543] = {.lex_state = 17}, + [1544] = {.lex_state = 0}, + [1545] = {.lex_state = 0}, + [1546] = {.lex_state = 17}, + [1547] = {.lex_state = 17}, + [1548] = {.lex_state = 51}, + [1549] = {.lex_state = 0}, + [1550] = {.lex_state = 51}, + [1551] = {.lex_state = 0, .external_lex_state = 6}, + [1552] = {.lex_state = 51}, + [1553] = {.lex_state = 0}, + [1554] = {.lex_state = 17}, + [1555] = {.lex_state = 0}, + [1556] = {.lex_state = 0}, + [1557] = {.lex_state = 0}, + [1558] = {.lex_state = 0}, + [1559] = {.lex_state = 0}, + [1560] = {.lex_state = 0}, + [1561] = {.lex_state = 0}, + [1562] = {.lex_state = 16}, + [1563] = {.lex_state = 0}, + [1564] = {.lex_state = 0}, + [1565] = {.lex_state = 51}, + [1566] = {.lex_state = 0}, + [1567] = {.lex_state = 0}, + [1568] = {.lex_state = 0, .external_lex_state = 6}, + [1569] = {.lex_state = 0}, + [1570] = {.lex_state = 0}, + [1571] = {.lex_state = 17}, + [1572] = {.lex_state = 0, .external_lex_state = 6}, + [1573] = {.lex_state = 0}, + [1574] = {.lex_state = 0}, + [1575] = {.lex_state = 0}, + [1576] = {.lex_state = 0}, + [1577] = {.lex_state = 0}, + [1578] = {.lex_state = 0}, + [1579] = {.lex_state = 0, .external_lex_state = 6}, + [1580] = {.lex_state = 0}, + [1581] = {.lex_state = 0}, + [1582] = {.lex_state = 17}, + [1583] = {.lex_state = 51}, + [1584] = {.lex_state = 0}, + [1585] = {.lex_state = 0}, + [1586] = {.lex_state = 0}, + [1587] = {.lex_state = 0}, + [1588] = {.lex_state = 51}, + [1589] = {.lex_state = 51}, + [1590] = {.lex_state = 51}, + [1591] = {.lex_state = 0}, + [1592] = {.lex_state = 0}, + [1593] = {.lex_state = 51}, + [1594] = {.lex_state = 0}, + [1595] = {.lex_state = 0}, + [1596] = {.lex_state = 0}, + [1597] = {.lex_state = 51}, + [1598] = {.lex_state = 51}, + [1599] = {.lex_state = 0}, + [1600] = {.lex_state = 0}, + [1601] = {.lex_state = 51}, + [1602] = {.lex_state = 0}, + [1603] = {.lex_state = 51}, + [1604] = {.lex_state = 51}, + [1605] = {.lex_state = 0}, + [1606] = {.lex_state = 51}, + [1607] = {.lex_state = 51}, + [1608] = {.lex_state = 51}, + [1609] = {.lex_state = 51}, + [1610] = {.lex_state = 51}, + [1611] = {.lex_state = 0}, + [1612] = {.lex_state = 0}, + [1613] = {.lex_state = 0}, + [1614] = {.lex_state = 0}, + [1615] = {.lex_state = 0}, + [1616] = {.lex_state = 51}, + [1617] = {.lex_state = 51}, + [1618] = {.lex_state = 51}, + [1619] = {.lex_state = 0}, + [1620] = {.lex_state = 51}, + [1621] = {.lex_state = 51}, + [1622] = {.lex_state = 51}, + [1623] = {.lex_state = 0}, + [1624] = {.lex_state = 0}, + [1625] = {.lex_state = 51}, + [1626] = {.lex_state = 0}, + [1627] = {.lex_state = 0}, + [1628] = {.lex_state = 0}, + [1629] = {.lex_state = 0}, + [1630] = {.lex_state = 51}, + [1631] = {.lex_state = 0}, + [1632] = {.lex_state = 0}, + [1633] = {.lex_state = 0}, + [1634] = {.lex_state = 0}, + [1635] = {.lex_state = 0}, + [1636] = {.lex_state = 0}, + [1637] = {.lex_state = 51}, + [1638] = {.lex_state = 0}, + [1639] = {.lex_state = 51}, + [1640] = {.lex_state = 51}, + [1641] = {.lex_state = 0}, + [1642] = {.lex_state = 51}, + [1643] = {.lex_state = 0}, + [1644] = {.lex_state = 0}, + [1645] = {.lex_state = 0}, + [1646] = {.lex_state = 51}, + [1647] = {.lex_state = 0}, + [1648] = {.lex_state = 0}, + [1649] = {.lex_state = 0}, + [1650] = {.lex_state = 0}, + [1651] = {.lex_state = 0}, + [1652] = {.lex_state = 0}, + [1653] = {.lex_state = 0}, + [1654] = {.lex_state = 0}, + [1655] = {.lex_state = 0}, + [1656] = {.lex_state = 0}, + [1657] = {.lex_state = 0}, + [1658] = {.lex_state = 0}, + [1659] = {.lex_state = 0}, + [1660] = {.lex_state = 0}, + [1661] = {.lex_state = 0}, + [1662] = {.lex_state = 0}, + [1663] = {.lex_state = 0}, + [1664] = {.lex_state = 0}, + [1665] = {.lex_state = 0}, + [1666] = {.lex_state = 51}, + [1667] = {.lex_state = 0}, + [1668] = {.lex_state = 51}, + [1669] = {.lex_state = 0}, + [1670] = {.lex_state = 51}, + [1671] = {.lex_state = 0}, + [1672] = {.lex_state = 0}, + [1673] = {.lex_state = 51}, + [1674] = {.lex_state = 0}, + [1675] = {.lex_state = 0}, + [1676] = {.lex_state = 51}, + [1677] = {.lex_state = 0}, + [1678] = {.lex_state = 0}, + [1679] = {.lex_state = 0}, + [1680] = {.lex_state = 0}, + [1681] = {.lex_state = 0}, + [1682] = {.lex_state = 51}, + [1683] = {.lex_state = 0}, + [1684] = {.lex_state = 0}, + [1685] = {.lex_state = 0}, + [1686] = {.lex_state = 0}, + [1687] = {.lex_state = 0}, + [1688] = {.lex_state = 51}, + [1689] = {.lex_state = 51}, + [1690] = {.lex_state = 51}, + [1691] = {.lex_state = 0}, + [1692] = {.lex_state = 0}, + [1693] = {.lex_state = 0}, + [1694] = {.lex_state = 0}, + [1695] = {.lex_state = 0}, + [1696] = {.lex_state = 0}, + [1697] = {.lex_state = 51}, + [1698] = {.lex_state = 0}, + [1699] = {.lex_state = 0}, + [1700] = {.lex_state = 0}, + [1701] = {.lex_state = 0}, + [1702] = {.lex_state = 0}, + [1703] = {.lex_state = 0}, + [1704] = {.lex_state = 0}, + [1705] = {.lex_state = 0}, + [1706] = {.lex_state = 0}, + [1707] = {.lex_state = 0}, + [1708] = {.lex_state = 0}, + [1709] = {.lex_state = 0}, + [1710] = {.lex_state = 51}, + [1711] = {.lex_state = 51}, + [1712] = {.lex_state = 51}, + [1713] = {.lex_state = 0}, + [1714] = {.lex_state = 0}, + [1715] = {.lex_state = 0}, + [1716] = {.lex_state = 0}, + [1717] = {.lex_state = 0}, + [1718] = {.lex_state = 0}, + [1719] = {.lex_state = 0}, + [1720] = {.lex_state = 0}, + [1721] = {.lex_state = 0}, + [1722] = {.lex_state = 51}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { - [0] = { + [STATE(0)] = { [ts_builtin_sym_end] = ACTIONS(1), [sym_identifier] = ACTIONS(1), [anon_sym_import] = ACTIONS(1), @@ -7810,6 +8217,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_yield] = ACTIONS(1), [sym_ellipsis] = ACTIONS(1), [anon_sym_LBRACE2] = ACTIONS(1), + [anon_sym_COLON2] = ACTIONS(1), [sym_type_conversion] = ACTIONS(1), [sym_integer] = ACTIONS(1), [sym_float] = ACTIONS(1), @@ -7818,7 +8226,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(1), [sym_none] = ACTIONS(1), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(1), + [anon_sym_SEMI] = ACTIONS(1), [sym__newline] = ACTIONS(1), [sym__indent] = ACTIONS(1), [sym__dedent] = ACTIONS(1), @@ -7827,140 +8235,23 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_end] = ACTIONS(1), [sym__template_string_start] = ACTIONS(1), }, - [1] = { - [sym_module] = STATE(1488), - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(960), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(960), - [ts_builtin_sym_end] = ACTIONS(5), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(33), - [anon_sym_async] = ACTIONS(35), - [anon_sym_for] = ACTIONS(37), - [anon_sym_while] = ACTIONS(39), - [anon_sym_try] = ACTIONS(41), - [anon_sym_with] = ACTIONS(43), - [anon_sym_match] = ACTIONS(45), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(55), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(65), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [2] = { + [STATE(1)] = { + [sym_module] = STATE(1655), [sym__statement] = STATE(62), [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), [sym_if_statement] = STATE(62), [sym_for_statement] = STATE(62), [sym_while_statement] = STATE(62), @@ -7968,171 +8259,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(62), [sym_match_statement] = STATE(62), [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), [sym_class_definition] = STATE(62), [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(535), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1118), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [3] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(517), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1118), + [ts_builtin_sym_end] = ACTIONS(5), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8146,24 +8319,24 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), + [anon_sym_if] = ACTIONS(33), + [anon_sym_async] = ACTIONS(35), + [anon_sym_for] = ACTIONS(37), + [anon_sym_while] = ACTIONS(39), + [anon_sym_try] = ACTIONS(41), + [anon_sym_with] = ACTIONS(43), + [anon_sym_match] = ACTIONS(45), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), + [anon_sym_def] = ACTIONS(55), [anon_sym_global] = ACTIONS(57), [anon_sym_nonlocal] = ACTIONS(59), [anon_sym_exec] = ACTIONS(61), [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), + [anon_sym_class] = ACTIONS(65), [anon_sym_AT] = ACTIONS(67), [anon_sym_not] = ACTIONS(69), [anon_sym_TILDE] = ACTIONS(47), @@ -8177,80 +8350,79 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [4] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(407), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(2)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(327), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8299,76 +8471,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [5] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(392), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(3)] = { + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(1181), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8417,22 +8589,22 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [6] = { + [STATE(4)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -8440,53 +8612,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(403), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(322), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8531,80 +8703,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [7] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(485), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(5)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(490), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8649,80 +8821,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [8] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(291), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(6)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(540), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8767,26 +8939,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [9] = { + [STATE(7)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -8794,53 +8966,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(427), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(547), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -8885,26 +9057,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [10] = { + [STATE(8)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -8912,53 +9084,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(304), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(605), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9003,26 +9175,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [11] = { + [STATE(9)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -9030,53 +9202,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(516), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(519), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9121,80 +9293,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [12] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(435), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(10)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(522), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9239,80 +9411,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [13] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(497), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(11)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(524), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9357,80 +9529,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [14] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(450), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(12)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(526), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9475,80 +9647,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [15] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(528), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(13)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(484), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9593,80 +9765,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [16] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(398), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(14)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(456), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9711,80 +9883,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [17] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(562), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(15)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(529), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9829,80 +10001,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [18] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(544), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(16)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(532), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -9947,80 +10119,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [19] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(444), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(17)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(533), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10065,26 +10237,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [20] = { + [STATE(18)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -10092,53 +10264,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(514), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(498), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10183,26 +10355,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [21] = { + [STATE(19)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -10210,53 +10382,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(462), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(476), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10301,26 +10473,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [22] = { + [STATE(20)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -10328,53 +10500,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(406), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(538), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10419,26 +10591,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [23] = { + [STATE(21)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -10446,53 +10618,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(503), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(455), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10537,26 +10709,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [24] = { + [STATE(22)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -10564,171 +10736,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(543), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(499), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [25] = { - [sym__statement] = STATE(61), - [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(61), - [sym_for_statement] = STATE(61), - [sym_while_statement] = STATE(61), - [sym_try_statement] = STATE(61), - [sym_with_statement] = STATE(61), - [sym_match_statement] = STATE(61), - [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(61), - [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(961), - [sym_block] = STATE(998), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10777,22 +10831,22 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [26] = { + [STATE(23)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -10800,53 +10854,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(419), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(542), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -10891,80 +10945,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [27] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(519), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(24)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(471), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11009,26 +11063,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [28] = { + [STATE(25)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -11036,53 +11090,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(512), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(545), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11127,26 +11181,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [29] = { + [STATE(26)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -11154,53 +11208,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(460), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(457), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11245,80 +11299,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [30] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(454), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(27)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(501), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11363,80 +11417,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [31] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(565), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(28)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(548), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11481,26 +11535,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [32] = { + [STATE(29)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -11508,53 +11562,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(496), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(448), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11599,80 +11653,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [33] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(395), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(30)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(449), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11717,80 +11771,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [34] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(402), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(31)] = { + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(1173), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11839,76 +11893,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [35] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(546), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(32)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(477), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -11957,76 +12011,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [36] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(470), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(33)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(563), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12071,80 +12125,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [37] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(556), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(34)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(565), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12193,76 +12247,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [38] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(538), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(35)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(570), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12307,80 +12361,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [39] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(494), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(36)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(576), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12425,80 +12479,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [40] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(436), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(37)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(578), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12543,80 +12597,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [41] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(432), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(38)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(580), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12665,76 +12719,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [42] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(466), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(39)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(583), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12779,80 +12833,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [43] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(457), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(40)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(469), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -12901,76 +12955,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [44] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(474), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(41)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(438), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13015,80 +13069,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [45] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(492), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(42)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(586), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13133,80 +13187,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [46] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(475), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(43)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(590), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13251,80 +13305,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [47] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(490), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(44)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(591), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13373,76 +13427,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [48] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(488), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(45)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(492), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13487,80 +13541,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [49] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(400), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(46)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(466), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13609,76 +13663,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [50] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(554), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(47)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(594), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13727,76 +13781,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [51] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(540), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(48)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(441), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13845,76 +13899,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [52] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(506), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(49)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(505), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -13963,76 +14017,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [53] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(480), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(50)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(598), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14077,80 +14131,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [54] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(426), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(51)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(486), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14199,76 +14253,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [55] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(421), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(52)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(601), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14313,80 +14367,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [56] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(961), - [sym_block] = STATE(408), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(53)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(443), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14431,80 +14485,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [57] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(405), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(54)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(507), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14553,76 +14607,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [58] = { - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(961), - [sym_block] = STATE(534), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(55)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(603), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14671,76 +14725,76 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [59] = { - [sym__statement] = STATE(61), - [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(61), - [sym_for_statement] = STATE(61), - [sym_while_statement] = STATE(61), - [sym_try_statement] = STATE(61), - [sym_with_statement] = STATE(61), - [sym_match_statement] = STATE(61), - [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(61), - [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(961), - [sym_block] = STATE(1011), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(56)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(604), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -14785,196 +14839,198 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [60] = { - [sym__statement] = STATE(60), - [sym__simple_statements] = STATE(60), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(60), - [sym_for_statement] = STATE(60), - [sym_while_statement] = STATE(60), - [sym_try_statement] = STATE(60), - [sym_with_statement] = STATE(60), - [sym_match_statement] = STATE(60), - [sym_function_definition] = STATE(60), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(60), - [sym_decorated_definition] = STATE(60), - [sym_decorator] = STATE(961), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(60), - [aux_sym_decorated_definition_repeat1] = STATE(961), - [sym_identifier] = ACTIONS(109), - [anon_sym_import] = ACTIONS(112), - [anon_sym_from] = ACTIONS(115), - [anon_sym_LPAREN] = ACTIONS(118), - [anon_sym_STAR] = ACTIONS(121), - [anon_sym_print] = ACTIONS(124), - [anon_sym_assert] = ACTIONS(127), - [anon_sym_return] = ACTIONS(130), - [anon_sym_del] = ACTIONS(133), - [anon_sym_raise] = ACTIONS(136), - [anon_sym_pass] = ACTIONS(139), - [anon_sym_break] = ACTIONS(142), - [anon_sym_continue] = ACTIONS(145), - [anon_sym_if] = ACTIONS(148), - [anon_sym_async] = ACTIONS(151), - [anon_sym_for] = ACTIONS(154), - [anon_sym_while] = ACTIONS(157), - [anon_sym_try] = ACTIONS(160), - [anon_sym_with] = ACTIONS(163), - [anon_sym_match] = ACTIONS(166), - [anon_sym_DASH] = ACTIONS(169), - [anon_sym_PLUS] = ACTIONS(169), - [anon_sym_LBRACK] = ACTIONS(172), - [anon_sym_LBRACE] = ACTIONS(175), - [anon_sym_STAR_STAR] = ACTIONS(178), - [anon_sym_def] = ACTIONS(181), - [anon_sym_global] = ACTIONS(184), - [anon_sym_nonlocal] = ACTIONS(187), - [anon_sym_exec] = ACTIONS(190), - [anon_sym_type] = ACTIONS(193), - [anon_sym_class] = ACTIONS(196), - [anon_sym_AT] = ACTIONS(199), - [anon_sym_not] = ACTIONS(202), - [anon_sym_TILDE] = ACTIONS(169), - [anon_sym_lambda] = ACTIONS(205), - [anon_sym_yield] = ACTIONS(208), - [sym_ellipsis] = ACTIONS(211), - [sym_integer] = ACTIONS(214), - [sym_float] = ACTIONS(211), - [anon_sym_await] = ACTIONS(217), - [sym_true] = ACTIONS(214), - [sym_false] = ACTIONS(214), - [sym_none] = ACTIONS(214), + [STATE(57)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(446), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_identifier] = ACTIONS(7), + [anon_sym_import] = ACTIONS(9), + [anon_sym_from] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_STAR] = ACTIONS(15), + [anon_sym_print] = ACTIONS(17), + [anon_sym_assert] = ACTIONS(19), + [anon_sym_return] = ACTIONS(21), + [anon_sym_del] = ACTIONS(23), + [anon_sym_raise] = ACTIONS(25), + [anon_sym_pass] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(85), + [anon_sym_async] = ACTIONS(87), + [anon_sym_for] = ACTIONS(89), + [anon_sym_while] = ACTIONS(91), + [anon_sym_try] = ACTIONS(93), + [anon_sym_with] = ACTIONS(95), + [anon_sym_match] = ACTIONS(97), + [anon_sym_DASH] = ACTIONS(47), + [anon_sym_PLUS] = ACTIONS(47), + [anon_sym_LBRACK] = ACTIONS(49), + [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_STAR_STAR] = ACTIONS(53), + [anon_sym_def] = ACTIONS(99), + [anon_sym_global] = ACTIONS(57), + [anon_sym_nonlocal] = ACTIONS(59), + [anon_sym_exec] = ACTIONS(61), + [anon_sym_type] = ACTIONS(63), + [anon_sym_class] = ACTIONS(101), + [anon_sym_AT] = ACTIONS(67), + [anon_sym_not] = ACTIONS(69), + [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_lambda] = ACTIONS(71), + [anon_sym_yield] = ACTIONS(73), + [sym_ellipsis] = ACTIONS(75), + [sym_integer] = ACTIONS(77), + [sym_float] = ACTIONS(75), + [anon_sym_await] = ACTIONS(79), + [sym_true] = ACTIONS(77), + [sym_false] = ACTIONS(77), + [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(220), - [sym__string_start] = ACTIONS(222), - [sym__template_string_start] = ACTIONS(225), + [sym__dedent] = ACTIONS(103), + [sym__string_start] = ACTIONS(81), + [sym__template_string_start] = ACTIONS(83), }, - [61] = { - [sym__statement] = STATE(60), - [sym__simple_statements] = STATE(60), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(60), - [sym_for_statement] = STATE(60), - [sym_while_statement] = STATE(60), - [sym_try_statement] = STATE(60), - [sym_with_statement] = STATE(60), - [sym_match_statement] = STATE(60), - [sym_function_definition] = STATE(60), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(60), - [sym_decorated_definition] = STATE(60), - [sym_decorator] = STATE(961), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(60), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(58)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(447), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15019,79 +15075,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(228), + [sym__dedent] = ACTIONS(103), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [62] = { - [sym__statement] = STATE(60), - [sym__simple_statements] = STATE(60), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_if_statement] = STATE(60), - [sym_for_statement] = STATE(60), - [sym_while_statement] = STATE(60), - [sym_try_statement] = STATE(60), - [sym_with_statement] = STATE(60), - [sym_match_statement] = STATE(60), - [sym_function_definition] = STATE(60), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_class_definition] = STATE(60), - [sym_decorated_definition] = STATE(60), - [sym_decorator] = STATE(961), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(60), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [STATE(59)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1113), + [sym_block] = STATE(549), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15136,26 +15193,26 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(230), + [sym__dedent] = ACTIONS(107), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [63] = { + [STATE(60)] = { [sym__statement] = STATE(60), [sym__simple_statements] = STATE(60), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), [sym_if_statement] = STATE(60), [sym_for_statement] = STATE(60), [sym_while_statement] = STATE(60), @@ -15163,52 +15220,169 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(60), [sym_match_statement] = STATE(60), [sym_function_definition] = STATE(60), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), [sym_class_definition] = STATE(60), [sym_decorated_definition] = STATE(60), - [sym_decorator] = STATE(961), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [sym_decorator] = STATE(1118), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [aux_sym_module_repeat1] = STATE(60), - [aux_sym_decorated_definition_repeat1] = STATE(961), + [aux_sym_decorated_definition_repeat1] = STATE(1118), + [ts_builtin_sym_end] = ACTIONS(109), + [sym_identifier] = ACTIONS(111), + [anon_sym_import] = ACTIONS(114), + [anon_sym_from] = ACTIONS(117), + [anon_sym_LPAREN] = ACTIONS(120), + [anon_sym_STAR] = ACTIONS(123), + [anon_sym_print] = ACTIONS(126), + [anon_sym_assert] = ACTIONS(129), + [anon_sym_return] = ACTIONS(132), + [anon_sym_del] = ACTIONS(135), + [anon_sym_raise] = ACTIONS(138), + [anon_sym_pass] = ACTIONS(141), + [anon_sym_break] = ACTIONS(144), + [anon_sym_continue] = ACTIONS(147), + [anon_sym_if] = ACTIONS(150), + [anon_sym_async] = ACTIONS(153), + [anon_sym_for] = ACTIONS(156), + [anon_sym_while] = ACTIONS(159), + [anon_sym_try] = ACTIONS(162), + [anon_sym_with] = ACTIONS(165), + [anon_sym_match] = ACTIONS(168), + [anon_sym_DASH] = ACTIONS(171), + [anon_sym_PLUS] = ACTIONS(171), + [anon_sym_LBRACK] = ACTIONS(174), + [anon_sym_LBRACE] = ACTIONS(177), + [anon_sym_STAR_STAR] = ACTIONS(180), + [anon_sym_def] = ACTIONS(183), + [anon_sym_global] = ACTIONS(186), + [anon_sym_nonlocal] = ACTIONS(189), + [anon_sym_exec] = ACTIONS(192), + [anon_sym_type] = ACTIONS(195), + [anon_sym_class] = ACTIONS(198), + [anon_sym_AT] = ACTIONS(201), + [anon_sym_not] = ACTIONS(204), + [anon_sym_TILDE] = ACTIONS(171), + [anon_sym_lambda] = ACTIONS(207), + [anon_sym_yield] = ACTIONS(210), + [sym_ellipsis] = ACTIONS(213), + [sym_integer] = ACTIONS(216), + [sym_float] = ACTIONS(213), + [anon_sym_await] = ACTIONS(219), + [sym_true] = ACTIONS(216), + [sym_false] = ACTIONS(216), + [sym_none] = ACTIONS(216), + [sym_comment] = ACTIONS(3), + [sym__string_start] = ACTIONS(222), + [sym__template_string_start] = ACTIONS(225), + }, + [STATE(61)] = { + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1113), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1113), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15253,80 +15427,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(232), + [sym__dedent] = ACTIONS(228), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [64] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(960), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(960), - [ts_builtin_sym_end] = ACTIONS(234), + [STATE(62)] = { + [sym__statement] = STATE(60), + [sym__simple_statements] = STATE(60), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_if_statement] = STATE(60), + [sym_for_statement] = STATE(60), + [sym_while_statement] = STATE(60), + [sym_try_statement] = STATE(60), + [sym_with_statement] = STATE(60), + [sym_match_statement] = STATE(60), + [sym_function_definition] = STATE(60), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_class_definition] = STATE(60), + [sym_decorated_definition] = STATE(60), + [sym_decorator] = STATE(1118), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(60), + [aux_sym_decorated_definition_repeat1] = STATE(1118), + [ts_builtin_sym_end] = ACTIONS(230), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15374,154 +15548,388 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [65] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(960), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(960), - [ts_builtin_sym_end] = ACTIONS(220), - [sym_identifier] = ACTIONS(109), - [anon_sym_import] = ACTIONS(112), - [anon_sym_from] = ACTIONS(115), - [anon_sym_LPAREN] = ACTIONS(118), - [anon_sym_STAR] = ACTIONS(121), - [anon_sym_print] = ACTIONS(124), - [anon_sym_assert] = ACTIONS(127), - [anon_sym_return] = ACTIONS(130), - [anon_sym_del] = ACTIONS(133), - [anon_sym_raise] = ACTIONS(136), - [anon_sym_pass] = ACTIONS(139), - [anon_sym_break] = ACTIONS(142), - [anon_sym_continue] = ACTIONS(145), - [anon_sym_if] = ACTIONS(236), - [anon_sym_async] = ACTIONS(239), - [anon_sym_for] = ACTIONS(242), - [anon_sym_while] = ACTIONS(245), - [anon_sym_try] = ACTIONS(248), - [anon_sym_with] = ACTIONS(251), - [anon_sym_match] = ACTIONS(254), - [anon_sym_DASH] = ACTIONS(169), - [anon_sym_PLUS] = ACTIONS(169), - [anon_sym_LBRACK] = ACTIONS(172), - [anon_sym_LBRACE] = ACTIONS(175), - [anon_sym_STAR_STAR] = ACTIONS(178), - [anon_sym_def] = ACTIONS(257), - [anon_sym_global] = ACTIONS(184), - [anon_sym_nonlocal] = ACTIONS(187), - [anon_sym_exec] = ACTIONS(190), - [anon_sym_type] = ACTIONS(193), - [anon_sym_class] = ACTIONS(260), - [anon_sym_AT] = ACTIONS(199), - [anon_sym_not] = ACTIONS(202), - [anon_sym_TILDE] = ACTIONS(169), - [anon_sym_lambda] = ACTIONS(205), - [anon_sym_yield] = ACTIONS(208), - [sym_ellipsis] = ACTIONS(211), - [sym_integer] = ACTIONS(214), - [sym_float] = ACTIONS(211), - [anon_sym_await] = ACTIONS(217), - [sym_true] = ACTIONS(214), - [sym_false] = ACTIONS(214), - [sym_none] = ACTIONS(214), + [STATE(63)] = { + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1113), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_identifier] = ACTIONS(7), + [anon_sym_import] = ACTIONS(9), + [anon_sym_from] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_STAR] = ACTIONS(15), + [anon_sym_print] = ACTIONS(17), + [anon_sym_assert] = ACTIONS(19), + [anon_sym_return] = ACTIONS(21), + [anon_sym_del] = ACTIONS(23), + [anon_sym_raise] = ACTIONS(25), + [anon_sym_pass] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(85), + [anon_sym_async] = ACTIONS(87), + [anon_sym_for] = ACTIONS(89), + [anon_sym_while] = ACTIONS(91), + [anon_sym_try] = ACTIONS(93), + [anon_sym_with] = ACTIONS(95), + [anon_sym_match] = ACTIONS(97), + [anon_sym_DASH] = ACTIONS(47), + [anon_sym_PLUS] = ACTIONS(47), + [anon_sym_LBRACK] = ACTIONS(49), + [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_STAR_STAR] = ACTIONS(53), + [anon_sym_def] = ACTIONS(99), + [anon_sym_global] = ACTIONS(57), + [anon_sym_nonlocal] = ACTIONS(59), + [anon_sym_exec] = ACTIONS(61), + [anon_sym_type] = ACTIONS(63), + [anon_sym_class] = ACTIONS(101), + [anon_sym_AT] = ACTIONS(67), + [anon_sym_not] = ACTIONS(69), + [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_lambda] = ACTIONS(71), + [anon_sym_yield] = ACTIONS(73), + [sym_ellipsis] = ACTIONS(75), + [sym_integer] = ACTIONS(77), + [sym_float] = ACTIONS(75), + [anon_sym_await] = ACTIONS(79), + [sym_true] = ACTIONS(77), + [sym_false] = ACTIONS(77), + [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), + [sym__dedent] = ACTIONS(232), + [sym__string_start] = ACTIONS(81), + [sym__template_string_start] = ACTIONS(83), + }, + [STATE(64)] = { + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1113), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_identifier] = ACTIONS(111), + [anon_sym_import] = ACTIONS(114), + [anon_sym_from] = ACTIONS(117), + [anon_sym_LPAREN] = ACTIONS(120), + [anon_sym_STAR] = ACTIONS(123), + [anon_sym_print] = ACTIONS(126), + [anon_sym_assert] = ACTIONS(129), + [anon_sym_return] = ACTIONS(132), + [anon_sym_del] = ACTIONS(135), + [anon_sym_raise] = ACTIONS(138), + [anon_sym_pass] = ACTIONS(141), + [anon_sym_break] = ACTIONS(144), + [anon_sym_continue] = ACTIONS(147), + [anon_sym_if] = ACTIONS(234), + [anon_sym_async] = ACTIONS(237), + [anon_sym_for] = ACTIONS(240), + [anon_sym_while] = ACTIONS(243), + [anon_sym_try] = ACTIONS(246), + [anon_sym_with] = ACTIONS(249), + [anon_sym_match] = ACTIONS(252), + [anon_sym_DASH] = ACTIONS(171), + [anon_sym_PLUS] = ACTIONS(171), + [anon_sym_LBRACK] = ACTIONS(174), + [anon_sym_LBRACE] = ACTIONS(177), + [anon_sym_STAR_STAR] = ACTIONS(180), + [anon_sym_def] = ACTIONS(255), + [anon_sym_global] = ACTIONS(186), + [anon_sym_nonlocal] = ACTIONS(189), + [anon_sym_exec] = ACTIONS(192), + [anon_sym_type] = ACTIONS(195), + [anon_sym_class] = ACTIONS(258), + [anon_sym_AT] = ACTIONS(201), + [anon_sym_not] = ACTIONS(204), + [anon_sym_TILDE] = ACTIONS(171), + [anon_sym_lambda] = ACTIONS(207), + [anon_sym_yield] = ACTIONS(210), + [sym_ellipsis] = ACTIONS(213), + [sym_integer] = ACTIONS(216), + [sym_float] = ACTIONS(213), + [anon_sym_await] = ACTIONS(219), + [sym_true] = ACTIONS(216), + [sym_false] = ACTIONS(216), + [sym_none] = ACTIONS(216), + [sym_comment] = ACTIONS(3), + [sym__dedent] = ACTIONS(109), [sym__string_start] = ACTIONS(222), [sym__template_string_start] = ACTIONS(225), }, - [66] = { - [sym_named_expression] = STATE(880), - [sym_list_splat] = STATE(1375), - [sym_dictionary_splat] = STATE(1375), - [sym_expression_list] = STATE(1430), - [sym_expression] = STATE(1066), - [sym_primary_expression] = STATE(652), - [sym_not_operator] = STATE(880), - [sym_boolean_operator] = STATE(880), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_comparison_operator] = STATE(880), - [sym_lambda] = STATE(880), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_conditional_expression] = STATE(880), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(65)] = { + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1113), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_identifier] = ACTIONS(7), + [anon_sym_import] = ACTIONS(9), + [anon_sym_from] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_STAR] = ACTIONS(15), + [anon_sym_print] = ACTIONS(17), + [anon_sym_assert] = ACTIONS(19), + [anon_sym_return] = ACTIONS(21), + [anon_sym_del] = ACTIONS(23), + [anon_sym_raise] = ACTIONS(25), + [anon_sym_pass] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_if] = ACTIONS(85), + [anon_sym_async] = ACTIONS(87), + [anon_sym_for] = ACTIONS(89), + [anon_sym_while] = ACTIONS(91), + [anon_sym_try] = ACTIONS(93), + [anon_sym_with] = ACTIONS(95), + [anon_sym_match] = ACTIONS(97), + [anon_sym_DASH] = ACTIONS(47), + [anon_sym_PLUS] = ACTIONS(47), + [anon_sym_LBRACK] = ACTIONS(49), + [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_STAR_STAR] = ACTIONS(53), + [anon_sym_def] = ACTIONS(99), + [anon_sym_global] = ACTIONS(57), + [anon_sym_nonlocal] = ACTIONS(59), + [anon_sym_exec] = ACTIONS(61), + [anon_sym_type] = ACTIONS(63), + [anon_sym_class] = ACTIONS(101), + [anon_sym_AT] = ACTIONS(67), + [anon_sym_not] = ACTIONS(69), + [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_lambda] = ACTIONS(71), + [anon_sym_yield] = ACTIONS(73), + [sym_ellipsis] = ACTIONS(75), + [sym_integer] = ACTIONS(77), + [sym_float] = ACTIONS(75), + [anon_sym_await] = ACTIONS(79), + [sym_true] = ACTIONS(77), + [sym_false] = ACTIONS(77), + [sym_none] = ACTIONS(77), + [sym_comment] = ACTIONS(3), + [sym__dedent] = ACTIONS(261), + [sym__string_start] = ACTIONS(81), + [sym__template_string_start] = ACTIONS(83), + }, + [STATE(66)] = { + [sym_named_expression] = STATE(1031), + [sym_list_splat] = STATE(1510), + [sym_dictionary_splat] = STATE(1510), + [sym_expression_list] = STATE(1590), + [sym_expression] = STATE(1254), + [sym_primary_expression] = STATE(719), + [sym_not_operator] = STATE(1031), + [sym_boolean_operator] = STATE(1031), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_comparison_operator] = STATE(1031), + [sym_lambda] = STATE(1031), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_conditional_expression] = STATE(1031), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(263), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(267), @@ -15585,42 +15993,42 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(306), [sym_none] = ACTIONS(306), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(298), + [anon_sym_SEMI] = ACTIONS(298), [sym__newline] = ACTIONS(298), [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [67] = { - [sym_named_expression] = STATE(880), - [sym_list_splat] = STATE(1375), - [sym_dictionary_splat] = STATE(1375), - [sym_expression_list] = STATE(1433), - [sym_expression] = STATE(1052), - [sym_primary_expression] = STATE(652), - [sym_not_operator] = STATE(880), - [sym_boolean_operator] = STATE(880), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_comparison_operator] = STATE(880), - [sym_lambda] = STATE(880), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_conditional_expression] = STATE(880), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(67)] = { + [sym_named_expression] = STATE(1031), + [sym_list_splat] = STATE(1510), + [sym_dictionary_splat] = STATE(1510), + [sym_expression_list] = STATE(1676), + [sym_expression] = STATE(1230), + [sym_primary_expression] = STATE(719), + [sym_not_operator] = STATE(1031), + [sym_boolean_operator] = STATE(1031), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_comparison_operator] = STATE(1031), + [sym_lambda] = STATE(1031), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_conditional_expression] = STATE(1031), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(263), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(267), @@ -15684,67 +16092,164 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(306), [sym_none] = ACTIONS(306), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(298), + [anon_sym_SEMI] = ACTIONS(298), [sym__newline] = ACTIONS(298), [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [68] = { - [sym__simple_statements] = STATE(536), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(68)] = { + [sym_chevron] = STATE(1316), + [sym_named_expression] = STATE(1158), + [sym_expression] = STATE(1175), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_attribute] = STATE(908), + [sym_subscript] = STATE(908), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [sym_identifier] = ACTIONS(314), + [anon_sym_DOT] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(298), + [anon_sym_COMMA] = ACTIONS(270), + [anon_sym_STAR] = ACTIONS(265), + [anon_sym_print] = ACTIONS(316), + [anon_sym_GT_GT] = ACTIONS(318), + [anon_sym_COLON_EQ] = ACTIONS(278), + [anon_sym_if] = ACTIONS(265), + [anon_sym_COLON] = ACTIONS(280), + [anon_sym_async] = ACTIONS(316), + [anon_sym_in] = ACTIONS(265), + [anon_sym_match] = ACTIONS(316), + [anon_sym_PIPE] = ACTIONS(265), + [anon_sym_DASH] = ACTIONS(265), + [anon_sym_PLUS] = ACTIONS(265), + [anon_sym_LBRACK] = ACTIONS(298), + [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_STAR_STAR] = ACTIONS(265), + [anon_sym_EQ] = ACTIONS(280), + [anon_sym_exec] = ACTIONS(316), + [anon_sym_type] = ACTIONS(316), + [anon_sym_AT] = ACTIONS(265), + [anon_sym_not] = ACTIONS(265), + [anon_sym_and] = ACTIONS(265), + [anon_sym_or] = ACTIONS(265), + [anon_sym_SLASH] = ACTIONS(265), + [anon_sym_PERCENT] = ACTIONS(265), + [anon_sym_SLASH_SLASH] = ACTIONS(265), + [anon_sym_AMP] = ACTIONS(265), + [anon_sym_CARET] = ACTIONS(265), + [anon_sym_LT_LT] = ACTIONS(265), + [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_LT] = ACTIONS(265), + [anon_sym_LT_EQ] = ACTIONS(298), + [anon_sym_EQ_EQ] = ACTIONS(298), + [anon_sym_BANG_EQ] = ACTIONS(298), + [anon_sym_GT_EQ] = ACTIONS(298), + [anon_sym_GT] = ACTIONS(265), + [anon_sym_LT_GT] = ACTIONS(298), + [anon_sym_is] = ACTIONS(265), + [anon_sym_lambda] = ACTIONS(71), + [anon_sym_PLUS_EQ] = ACTIONS(302), + [anon_sym_DASH_EQ] = ACTIONS(302), + [anon_sym_STAR_EQ] = ACTIONS(302), + [anon_sym_SLASH_EQ] = ACTIONS(302), + [anon_sym_AT_EQ] = ACTIONS(302), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(302), + [anon_sym_PERCENT_EQ] = ACTIONS(302), + [anon_sym_STAR_STAR_EQ] = ACTIONS(302), + [anon_sym_GT_GT_EQ] = ACTIONS(302), + [anon_sym_LT_LT_EQ] = ACTIONS(302), + [anon_sym_AMP_EQ] = ACTIONS(302), + [anon_sym_CARET_EQ] = ACTIONS(302), + [anon_sym_PIPE_EQ] = ACTIONS(302), + [sym_ellipsis] = ACTIONS(75), + [sym_integer] = ACTIONS(77), + [sym_float] = ACTIONS(75), + [anon_sym_await] = ACTIONS(320), + [sym_true] = ACTIONS(77), + [sym_false] = ACTIONS(77), + [sym_none] = ACTIONS(77), + [sym_comment] = ACTIONS(3), + [anon_sym_SEMI] = ACTIONS(298), + [sym__newline] = ACTIONS(298), + [sym__string_start] = ACTIONS(81), + [sym__template_string_start] = ACTIONS(83), + }, + [STATE(69)] = { + [sym__simple_statements] = STATE(1171), + [sym_import_statement] = STATE(1373), + [sym_future_import_statement] = STATE(1373), + [sym_import_from_statement] = STATE(1373), + [sym_print_statement] = STATE(1373), + [sym_assert_statement] = STATE(1373), + [sym_expression_statement] = STATE(1373), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1373), + [sym_delete_statement] = STATE(1373), + [sym_raise_statement] = STATE(1373), + [sym_pass_statement] = STATE(1373), + [sym_break_statement] = STATE(1373), + [sym_continue_statement] = STATE(1373), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1373), + [sym_nonlocal_statement] = STATE(1373), + [sym_exec_statement] = STATE(1373), + [sym_type_alias_statement] = STATE(1373), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15758,8 +16263,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -15781,67 +16286,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(316), - [sym__indent] = ACTIONS(318), + [sym__newline] = ACTIONS(324), + [sym__indent] = ACTIONS(326), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [69] = { - [sym__simple_statements] = STATE(439), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(70)] = { + [sym__simple_statements] = STATE(436), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15855,8 +16360,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -15878,67 +16383,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(320), - [sym__indent] = ACTIONS(322), + [sym__newline] = ACTIONS(328), + [sym__indent] = ACTIONS(330), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [70] = { - [sym__simple_statements] = STATE(533), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(71)] = { + [sym__simple_statements] = STATE(550), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -15952,8 +16457,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -15975,67 +16480,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(324), - [sym__indent] = ACTIONS(326), + [sym__newline] = ACTIONS(332), + [sym__indent] = ACTIONS(334), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [71] = { - [sym__simple_statements] = STATE(424), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(72)] = { + [sym__simple_statements] = STATE(581), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16049,8 +16554,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16072,67 +16577,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(328), - [sym__indent] = ACTIONS(330), + [sym__newline] = ACTIONS(336), + [sym__indent] = ACTIONS(338), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [72] = { - [sym__simple_statements] = STATE(418), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(73)] = { + [sym__simple_statements] = STATE(442), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16146,8 +16651,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16169,67 +16674,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(332), - [sym__indent] = ACTIONS(334), + [sym__newline] = ACTIONS(340), + [sym__indent] = ACTIONS(342), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [73] = { - [sym__simple_statements] = STATE(413), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(74)] = { + [sym__simple_statements] = STATE(606), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16243,8 +16748,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16266,67 +16771,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(336), - [sym__indent] = ACTIONS(338), + [sym__newline] = ACTIONS(344), + [sym__indent] = ACTIONS(346), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [74] = { - [sym__simple_statements] = STATE(463), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(75)] = { + [sym__simple_statements] = STATE(482), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16340,8 +16845,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16363,67 +16868,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(340), - [sym__indent] = ACTIONS(342), + [sym__newline] = ACTIONS(348), + [sym__indent] = ACTIONS(350), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [75] = { - [sym__simple_statements] = STATE(437), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(76)] = { + [sym__simple_statements] = STATE(319), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16437,8 +16942,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16460,67 +16965,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(344), - [sym__indent] = ACTIONS(346), + [sym__newline] = ACTIONS(352), + [sym__indent] = ACTIONS(354), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [76] = { - [sym__simple_statements] = STATE(461), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(77)] = { + [sym__simple_statements] = STATE(489), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16534,8 +17039,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16557,67 +17062,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(348), - [sym__indent] = ACTIONS(350), + [sym__newline] = ACTIONS(356), + [sym__indent] = ACTIONS(358), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [77] = { - [sym__simple_statements] = STATE(428), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(78)] = { + [sym__simple_statements] = STATE(554), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16631,8 +17136,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16654,67 +17159,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(352), - [sym__indent] = ACTIONS(354), + [sym__newline] = ACTIONS(360), + [sym__indent] = ACTIONS(362), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [78] = { - [sym__simple_statements] = STATE(455), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(79)] = { + [sym__simple_statements] = STATE(557), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -16728,202 +17233,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(356), - [sym__indent] = ACTIONS(358), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [79] = { - [sym__simple_statements] = STATE(539), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(360), - [sym__indent] = ACTIONS(362), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [80] = { - [sym__simple_statements] = STATE(493), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -16950,62 +17261,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [81] = { - [sym__simple_statements] = STATE(487), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(80)] = { + [sym__simple_statements] = STATE(454), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17019,8 +17330,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17047,62 +17358,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [82] = { - [sym__simple_statements] = STATE(393), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(81)] = { + [sym__simple_statements] = STATE(559), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17116,8 +17427,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17144,62 +17455,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [83] = { - [sym__simple_statements] = STATE(471), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(82)] = { + [sym__simple_statements] = STATE(516), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17213,8 +17524,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17241,62 +17552,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [84] = { - [sym__simple_statements] = STATE(550), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(83)] = { + [sym__simple_statements] = STATE(520), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17310,8 +17621,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17338,62 +17649,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [85] = { - [sym__simple_statements] = STATE(476), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(84)] = { + [sym__simple_statements] = STATE(564), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17407,8 +17718,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17435,62 +17746,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [86] = { - [sym__simple_statements] = STATE(495), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(85)] = { + [sym__simple_statements] = STATE(566), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17504,8 +17815,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17532,62 +17843,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [87] = { - [sym__simple_statements] = STATE(430), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(86)] = { + [sym__simple_statements] = STATE(567), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17601,8 +17912,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17629,62 +17940,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [88] = { - [sym__simple_statements] = STATE(300), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(87)] = { + [sym__simple_statements] = STATE(523), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17698,8 +18009,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17726,62 +18037,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [89] = { - [sym__simple_statements] = STATE(420), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(88)] = { + [sym__simple_statements] = STATE(571), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17795,8 +18106,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17823,62 +18134,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [90] = { - [sym__simple_statements] = STATE(558), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(89)] = { + [sym__simple_statements] = STATE(491), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17892,8 +18203,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -17920,62 +18231,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [91] = { - [sym__simple_statements] = STATE(391), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(90)] = { + [sym__simple_statements] = STATE(437), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -17989,8 +18300,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18017,62 +18328,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [92] = { - [sym__simple_statements] = STATE(500), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(91)] = { + [sym__simple_statements] = STATE(573), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18086,8 +18397,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18114,62 +18425,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [93] = { - [sym__simple_statements] = STATE(401), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(92)] = { + [sym__simple_statements] = STATE(546), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18183,8 +18494,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18211,62 +18522,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [94] = { - [sym__simple_statements] = STATE(396), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(93)] = { + [sym__simple_statements] = STATE(577), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18280,8 +18591,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18308,62 +18619,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [95] = { - [sym__simple_statements] = STATE(394), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(94)] = { + [sym__simple_statements] = STATE(495), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18377,8 +18688,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18405,62 +18716,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [96] = { - [sym__simple_statements] = STATE(465), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(95)] = { + [sym__simple_statements] = STATE(579), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18474,8 +18785,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18502,62 +18813,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [97] = { - [sym__simple_statements] = STATE(525), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(96)] = { + [sym__simple_statements] = STATE(541), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18571,8 +18882,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18599,62 +18910,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [98] = { - [sym__simple_statements] = STATE(453), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(97)] = { + [sym__simple_statements] = STATE(503), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18668,8 +18979,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18696,62 +19007,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [99] = { - [sym__simple_statements] = STATE(547), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(98)] = { + [sym__simple_statements] = STATE(480), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18765,8 +19076,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18793,62 +19104,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [100] = { - [sym__simple_statements] = STATE(567), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(99)] = { + [sym__simple_statements] = STATE(312), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18862,8 +19173,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18890,62 +19201,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [101] = { - [sym__simple_statements] = STATE(997), - [sym_import_statement] = STATE(1212), - [sym_future_import_statement] = STATE(1212), - [sym_import_from_statement] = STATE(1212), - [sym_print_statement] = STATE(1212), - [sym_assert_statement] = STATE(1212), - [sym_expression_statement] = STATE(1212), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1212), - [sym_delete_statement] = STATE(1212), - [sym_raise_statement] = STATE(1212), - [sym_pass_statement] = STATE(1212), - [sym_break_statement] = STATE(1212), - [sym_continue_statement] = STATE(1212), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1212), - [sym_nonlocal_statement] = STATE(1212), - [sym_exec_statement] = STATE(1212), - [sym_type_alias_statement] = STATE(1212), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(100)] = { + [sym__simple_statements] = STATE(584), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -18959,8 +19270,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -18987,62 +19298,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [102] = { - [sym__simple_statements] = STATE(477), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(101)] = { + [sym__simple_statements] = STATE(527), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19056,8 +19367,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19084,62 +19395,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [103] = { - [sym__simple_statements] = STATE(472), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(102)] = { + [sym__simple_statements] = STATE(439), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19153,8 +19464,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19181,62 +19492,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [104] = { - [sym__simple_statements] = STATE(411), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(103)] = { + [sym__simple_statements] = STATE(485), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19250,8 +19561,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19278,62 +19589,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [105] = { - [sym__simple_statements] = STATE(438), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(104)] = { + [sym__simple_statements] = STATE(504), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19347,8 +19658,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19375,62 +19686,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [106] = { - [sym__simple_statements] = STATE(518), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(105)] = { + [sym__simple_statements] = STATE(589), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19444,8 +19755,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19472,62 +19783,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [107] = { - [sym__simple_statements] = STATE(464), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(106)] = { + [sym__simple_statements] = STATE(459), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19541,8 +19852,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19569,62 +19880,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [108] = { - [sym__simple_statements] = STATE(302), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(107)] = { + [sym__simple_statements] = STATE(488), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19638,8 +19949,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19666,62 +19977,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [109] = { - [sym__simple_statements] = STATE(509), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(108)] = { + [sym__simple_statements] = STATE(496), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19735,8 +20046,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19763,62 +20074,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [110] = { - [sym__simple_statements] = STATE(552), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(109)] = { + [sym__simple_statements] = STATE(531), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -19832,8 +20143,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -19860,159 +20171,256 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [111] = { - [sym_chevron] = STATE(1109), - [sym_named_expression] = STATE(955), - [sym_expression] = STATE(1012), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_attribute] = STATE(760), - [sym_subscript] = STATE(760), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [sym_identifier] = ACTIONS(488), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(270), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(490), - [anon_sym_GT_GT] = ACTIONS(492), - [anon_sym_COLON_EQ] = ACTIONS(278), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(280), - [anon_sym_async] = ACTIONS(490), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(490), - [anon_sym_PIPE] = ACTIONS(265), - [anon_sym_DASH] = ACTIONS(265), - [anon_sym_PLUS] = ACTIONS(265), - [anon_sym_LBRACK] = ACTIONS(298), + [STATE(110)] = { + [sym__simple_statements] = STATE(593), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [sym_identifier] = ACTIONS(7), + [anon_sym_import] = ACTIONS(9), + [anon_sym_from] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_STAR] = ACTIONS(15), + [anon_sym_print] = ACTIONS(17), + [anon_sym_assert] = ACTIONS(19), + [anon_sym_return] = ACTIONS(21), + [anon_sym_del] = ACTIONS(23), + [anon_sym_raise] = ACTIONS(25), + [anon_sym_pass] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), + [anon_sym_DASH] = ACTIONS(47), + [anon_sym_PLUS] = ACTIONS(47), + [anon_sym_LBRACK] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(265), - [anon_sym_EQ] = ACTIONS(280), - [anon_sym_exec] = ACTIONS(490), - [anon_sym_type] = ACTIONS(490), - [anon_sym_AT] = ACTIONS(265), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(265), - [anon_sym_SLASH_SLASH] = ACTIONS(265), - [anon_sym_AMP] = ACTIONS(265), - [anon_sym_CARET] = ACTIONS(265), - [anon_sym_LT_LT] = ACTIONS(265), + [anon_sym_STAR_STAR] = ACTIONS(53), + [anon_sym_global] = ACTIONS(57), + [anon_sym_nonlocal] = ACTIONS(59), + [anon_sym_exec] = ACTIONS(61), + [anon_sym_type] = ACTIONS(63), + [anon_sym_not] = ACTIONS(69), [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), [anon_sym_lambda] = ACTIONS(71), - [anon_sym_PLUS_EQ] = ACTIONS(302), - [anon_sym_DASH_EQ] = ACTIONS(302), - [anon_sym_STAR_EQ] = ACTIONS(302), - [anon_sym_SLASH_EQ] = ACTIONS(302), - [anon_sym_AT_EQ] = ACTIONS(302), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(302), - [anon_sym_PERCENT_EQ] = ACTIONS(302), - [anon_sym_STAR_STAR_EQ] = ACTIONS(302), - [anon_sym_GT_GT_EQ] = ACTIONS(302), - [anon_sym_LT_LT_EQ] = ACTIONS(302), - [anon_sym_AMP_EQ] = ACTIONS(302), - [anon_sym_CARET_EQ] = ACTIONS(302), - [anon_sym_PIPE_EQ] = ACTIONS(302), + [anon_sym_yield] = ACTIONS(73), [sym_ellipsis] = ACTIONS(75), [sym_integer] = ACTIONS(77), [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(494), + [anon_sym_await] = ACTIONS(79), [sym_true] = ACTIONS(77), [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(298), - [sym__newline] = ACTIONS(298), + [sym__newline] = ACTIONS(488), + [sym__indent] = ACTIONS(490), + [sym__string_start] = ACTIONS(81), + [sym__template_string_start] = ACTIONS(83), + }, + [STATE(111)] = { + [sym__simple_statements] = STATE(608), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [sym_identifier] = ACTIONS(7), + [anon_sym_import] = ACTIONS(9), + [anon_sym_from] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_STAR] = ACTIONS(15), + [anon_sym_print] = ACTIONS(17), + [anon_sym_assert] = ACTIONS(19), + [anon_sym_return] = ACTIONS(21), + [anon_sym_del] = ACTIONS(23), + [anon_sym_raise] = ACTIONS(25), + [anon_sym_pass] = ACTIONS(27), + [anon_sym_break] = ACTIONS(29), + [anon_sym_continue] = ACTIONS(31), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), + [anon_sym_DASH] = ACTIONS(47), + [anon_sym_PLUS] = ACTIONS(47), + [anon_sym_LBRACK] = ACTIONS(49), + [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_STAR_STAR] = ACTIONS(53), + [anon_sym_global] = ACTIONS(57), + [anon_sym_nonlocal] = ACTIONS(59), + [anon_sym_exec] = ACTIONS(61), + [anon_sym_type] = ACTIONS(63), + [anon_sym_not] = ACTIONS(69), + [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_lambda] = ACTIONS(71), + [anon_sym_yield] = ACTIONS(73), + [sym_ellipsis] = ACTIONS(75), + [sym_integer] = ACTIONS(77), + [sym_float] = ACTIONS(75), + [anon_sym_await] = ACTIONS(79), + [sym_true] = ACTIONS(77), + [sym_false] = ACTIONS(77), + [sym_none] = ACTIONS(77), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(492), + [sym__indent] = ACTIONS(494), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [112] = { - [sym__simple_statements] = STATE(501), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(112)] = { + [sym__simple_statements] = STATE(440), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20026,8 +20434,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20054,62 +20462,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [113] = { - [sym__simple_statements] = STATE(486), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(113)] = { + [sym__simple_statements] = STATE(611), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20123,8 +20531,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20151,62 +20559,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [114] = { - [sym__simple_statements] = STATE(995), - [sym_import_statement] = STATE(1212), - [sym_future_import_statement] = STATE(1212), - [sym_import_from_statement] = STATE(1212), - [sym_print_statement] = STATE(1212), - [sym_assert_statement] = STATE(1212), - [sym_expression_statement] = STATE(1212), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1212), - [sym_delete_statement] = STATE(1212), - [sym_raise_statement] = STATE(1212), - [sym_pass_statement] = STATE(1212), - [sym_break_statement] = STATE(1212), - [sym_continue_statement] = STATE(1212), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1212), - [sym_nonlocal_statement] = STATE(1212), - [sym_exec_statement] = STATE(1212), - [sym_type_alias_statement] = STATE(1212), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(114)] = { + [sym__simple_statements] = STATE(464), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20220,8 +20628,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20248,62 +20656,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [115] = { - [sym__simple_statements] = STATE(404), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(115)] = { + [sym__simple_statements] = STATE(506), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20317,8 +20725,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20345,62 +20753,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [116] = { - [sym__simple_statements] = STATE(561), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(116)] = { + [sym__simple_statements] = STATE(599), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20414,8 +20822,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20442,62 +20850,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [117] = { - [sym__simple_statements] = STATE(511), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(117)] = { + [sym__simple_statements] = STATE(537), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20511,8 +20919,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20539,62 +20947,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [118] = { - [sym__simple_statements] = STATE(468), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(118)] = { + [sym__simple_statements] = STATE(602), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20608,8 +21016,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20636,62 +21044,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [119] = { - [sym__simple_statements] = STATE(564), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(119)] = { + [sym__simple_statements] = STATE(444), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20705,8 +21113,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20733,62 +21141,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [120] = { - [sym__simple_statements] = STATE(563), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(120)] = { + [sym__simple_statements] = STATE(451), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20802,8 +21210,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20830,62 +21238,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [121] = { - [sym__simple_statements] = STATE(515), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(121)] = { + [sym__simple_statements] = STATE(613), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20899,8 +21307,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -20927,62 +21335,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [122] = { - [sym__simple_statements] = STATE(557), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(122)] = { + [sym__simple_statements] = STATE(445), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -20996,8 +21404,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21024,62 +21432,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [123] = { - [sym__simple_statements] = STATE(399), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(123)] = { + [sym__simple_statements] = STATE(500), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21093,8 +21501,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21121,62 +21529,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [124] = { - [sym__simple_statements] = STATE(410), - [sym_import_statement] = STATE(1227), - [sym_future_import_statement] = STATE(1227), - [sym_import_from_statement] = STATE(1227), - [sym_print_statement] = STATE(1227), - [sym_assert_statement] = STATE(1227), - [sym_expression_statement] = STATE(1227), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1227), - [sym_delete_statement] = STATE(1227), - [sym_raise_statement] = STATE(1227), - [sym_pass_statement] = STATE(1227), - [sym_break_statement] = STATE(1227), - [sym_continue_statement] = STATE(1227), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1227), - [sym_nonlocal_statement] = STATE(1227), - [sym_exec_statement] = STATE(1227), - [sym_type_alias_statement] = STATE(1227), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(124)] = { + [sym__simple_statements] = STATE(1187), + [sym_import_statement] = STATE(1373), + [sym_future_import_statement] = STATE(1373), + [sym_import_from_statement] = STATE(1373), + [sym_print_statement] = STATE(1373), + [sym_assert_statement] = STATE(1373), + [sym_expression_statement] = STATE(1373), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1373), + [sym_delete_statement] = STATE(1373), + [sym_raise_statement] = STATE(1373), + [sym_pass_statement] = STATE(1373), + [sym_break_statement] = STATE(1373), + [sym_continue_statement] = STATE(1373), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1373), + [sym_nonlocal_statement] = STATE(1373), + [sym_exec_statement] = STATE(1373), + [sym_type_alias_statement] = STATE(1373), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21190,8 +21598,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21218,62 +21626,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [125] = { - [sym__simple_statements] = STATE(508), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(125)] = { + [sym__simple_statements] = STATE(543), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21287,8 +21695,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21315,62 +21723,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [126] = { - [sym__simple_statements] = STATE(507), - [sym_import_statement] = STATE(1181), - [sym_future_import_statement] = STATE(1181), - [sym_import_from_statement] = STATE(1181), - [sym_print_statement] = STATE(1181), - [sym_assert_statement] = STATE(1181), - [sym_expression_statement] = STATE(1181), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1181), - [sym_delete_statement] = STATE(1181), - [sym_raise_statement] = STATE(1181), - [sym_pass_statement] = STATE(1181), - [sym_break_statement] = STATE(1181), - [sym_continue_statement] = STATE(1181), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1181), - [sym_nonlocal_statement] = STATE(1181), - [sym_exec_statement] = STATE(1181), - [sym_type_alias_statement] = STATE(1181), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(126)] = { + [sym__simple_statements] = STATE(481), + [sym_import_statement] = STATE(1348), + [sym_future_import_statement] = STATE(1348), + [sym_import_from_statement] = STATE(1348), + [sym_print_statement] = STATE(1348), + [sym_assert_statement] = STATE(1348), + [sym_expression_statement] = STATE(1348), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1348), + [sym_delete_statement] = STATE(1348), + [sym_raise_statement] = STATE(1348), + [sym_pass_statement] = STATE(1348), + [sym_break_statement] = STATE(1348), + [sym_continue_statement] = STATE(1348), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1348), + [sym_nonlocal_statement] = STATE(1348), + [sym_exec_statement] = STATE(1348), + [sym_type_alias_statement] = STATE(1348), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21384,8 +21792,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21412,61 +21820,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [127] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(127)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21480,8 +21888,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21507,61 +21915,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [128] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(128)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21575,8 +21983,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21602,61 +22010,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [129] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(129)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21670,8 +22078,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21697,61 +22105,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [130] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(130)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21765,8 +22173,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21792,61 +22200,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [131] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(131)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21860,8 +22268,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21887,61 +22295,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [132] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(132)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -21955,8 +22363,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -21982,61 +22390,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [133] = { - [sym_import_statement] = STATE(1369), - [sym_future_import_statement] = STATE(1369), - [sym_import_from_statement] = STATE(1369), - [sym_print_statement] = STATE(1369), - [sym_assert_statement] = STATE(1369), - [sym_expression_statement] = STATE(1369), - [sym_named_expression] = STATE(955), - [sym_return_statement] = STATE(1369), - [sym_delete_statement] = STATE(1369), - [sym_raise_statement] = STATE(1369), - [sym_pass_statement] = STATE(1369), - [sym_break_statement] = STATE(1369), - [sym_continue_statement] = STATE(1369), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_global_statement] = STATE(1369), - [sym_nonlocal_statement] = STATE(1369), - [sym_exec_statement] = STATE(1369), - [sym_type_alias_statement] = STATE(1369), - [sym_expression_list] = STATE(1329), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1032), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1329), - [sym_augmented_assignment] = STATE(1329), - [sym_pattern_list] = STATE(874), - [sym_yield] = STATE(1329), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(133)] = { + [sym_import_statement] = STATE(1517), + [sym_future_import_statement] = STATE(1517), + [sym_import_from_statement] = STATE(1517), + [sym_print_statement] = STATE(1517), + [sym_assert_statement] = STATE(1517), + [sym_expression_statement] = STATE(1517), + [sym_named_expression] = STATE(1158), + [sym_return_statement] = STATE(1517), + [sym_delete_statement] = STATE(1517), + [sym_raise_statement] = STATE(1517), + [sym_pass_statement] = STATE(1517), + [sym_break_statement] = STATE(1517), + [sym_continue_statement] = STATE(1517), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_global_statement] = STATE(1517), + [sym_nonlocal_statement] = STATE(1517), + [sym_exec_statement] = STATE(1517), + [sym_type_alias_statement] = STATE(1517), + [sym_expression_list] = STATE(1551), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1185), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1551), + [sym_augmented_assignment] = STATE(1551), + [sym_pattern_list] = STATE(1024), + [sym_yield] = STATE(1551), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_import] = ACTIONS(9), [anon_sym_from] = ACTIONS(11), @@ -22050,8 +22458,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(27), [anon_sym_break] = ACTIONS(29), [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), @@ -22076,27 +22484,27 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [134] = { - [sym_primary_expression] = STATE(711), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_attribute] = STATE(760), - [sym_subscript] = STATE(760), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(134)] = { + [sym_primary_expression] = STATE(810), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_attribute] = STATE(908), + [sym_subscript] = STATE(908), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(77), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(568), @@ -22159,32 +22567,32 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(298), + [anon_sym_SEMI] = ACTIONS(298), [sym__newline] = ACTIONS(298), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [135] = { - [sym_primary_expression] = STATE(669), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(135)] = { + [sym_primary_expression] = STATE(735), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(578), @@ -22252,27 +22660,27 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [136] = { - [sym_primary_expression] = STATE(669), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(136)] = { + [sym_primary_expression] = STATE(735), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(578), @@ -22319,7 +22727,6 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LT_GT] = ACTIONS(298), [anon_sym_is] = ACTIONS(265), [sym_ellipsis] = ACTIONS(304), - [sym_type_conversion] = ACTIONS(298), [sym_integer] = ACTIONS(306), [sym_float] = ACTIONS(304), [anon_sym_await] = ACTIONS(595), @@ -22330,27 +22737,27 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [137] = { - [sym_primary_expression] = STATE(669), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(137)] = { + [sym_primary_expression] = STATE(735), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(578), @@ -22396,7 +22803,6 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LT_GT] = ACTIONS(298), [anon_sym_is] = ACTIONS(265), [sym_ellipsis] = ACTIONS(304), - [sym_type_conversion] = ACTIONS(298), [sym_integer] = ACTIONS(306), [sym_float] = ACTIONS(304), [anon_sym_await] = ACTIONS(595), @@ -22407,27 +22813,27 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [138] = { - [sym_primary_expression] = STATE(675), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(138)] = { + [sym_primary_expression] = STATE(760), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(597), @@ -22439,7 +22845,6 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT_GT] = ACTIONS(298), [anon_sym_COLON_EQ] = ACTIONS(599), [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(265), [anon_sym_async] = ACTIONS(583), [anon_sym_for] = ACTIONS(265), [anon_sym_in] = ACTIONS(265), @@ -22484,75 +22889,74 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [139] = { - [sym_primary_expression] = STATE(675), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(139)] = { + [sym_primary_expression] = STATE(735), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(597), - [anon_sym_RPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_as] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(578), + [anon_sym_RPAREN] = ACTIONS(593), + [anon_sym_COMMA] = ACTIONS(593), [anon_sym_STAR] = ACTIONS(265), [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(298), + [anon_sym_GT_GT] = ACTIONS(265), + [anon_sym_COLON] = ACTIONS(593), [anon_sym_async] = ACTIONS(583), - [anon_sym_for] = ACTIONS(265), - [anon_sym_in] = ACTIONS(265), + [anon_sym_in] = ACTIONS(587), [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(601), - [anon_sym_PLUS] = ACTIONS(601), - [anon_sym_LBRACK] = ACTIONS(603), - [anon_sym_RBRACK] = ACTIONS(298), + [anon_sym_PIPE] = ACTIONS(265), + [anon_sym_DASH] = ACTIONS(589), + [anon_sym_PLUS] = ACTIONS(589), + [anon_sym_LBRACK] = ACTIONS(591), + [anon_sym_RBRACK] = ACTIONS(593), [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_RBRACE] = ACTIONS(298), - [anon_sym_STAR_STAR] = ACTIONS(298), + [anon_sym_STAR_STAR] = ACTIONS(265), + [anon_sym_EQ] = ACTIONS(593), [anon_sym_exec] = ACTIONS(583), [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), + [anon_sym_AT] = ACTIONS(265), [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(601), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), + [anon_sym_PERCENT] = ACTIONS(265), + [anon_sym_SLASH_SLASH] = ACTIONS(265), + [anon_sym_AMP] = ACTIONS(265), + [anon_sym_CARET] = ACTIONS(265), + [anon_sym_LT_LT] = ACTIONS(265), + [anon_sym_TILDE] = ACTIONS(296), + [anon_sym_PLUS_EQ] = ACTIONS(593), + [anon_sym_DASH_EQ] = ACTIONS(593), + [anon_sym_STAR_EQ] = ACTIONS(593), + [anon_sym_SLASH_EQ] = ACTIONS(593), + [anon_sym_AT_EQ] = ACTIONS(593), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(593), + [anon_sym_PERCENT_EQ] = ACTIONS(593), + [anon_sym_STAR_STAR_EQ] = ACTIONS(593), + [anon_sym_GT_GT_EQ] = ACTIONS(593), + [anon_sym_LT_LT_EQ] = ACTIONS(593), + [anon_sym_AMP_EQ] = ACTIONS(593), + [anon_sym_CARET_EQ] = ACTIONS(593), + [anon_sym_PIPE_EQ] = ACTIONS(593), [sym_ellipsis] = ACTIONS(304), [sym_integer] = ACTIONS(306), [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(605), + [anon_sym_await] = ACTIONS(595), [sym_true] = ACTIONS(306), [sym_false] = ACTIONS(306), [sym_none] = ACTIONS(306), @@ -22560,27 +22964,27 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [140] = { - [sym_primary_expression] = STATE(711), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_attribute] = STATE(760), - [sym_subscript] = STATE(760), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(140)] = { + [sym_primary_expression] = STATE(810), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_attribute] = STATE(908), + [sym_subscript] = STATE(908), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(77), [anon_sym_DOT] = ACTIONS(265), [anon_sym_from] = ACTIONS(265), @@ -22630,32 +23034,107 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(77), [sym_none] = ACTIONS(77), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(298), + [anon_sym_SEMI] = ACTIONS(298), [sym__newline] = ACTIONS(298), [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [141] = { - [sym_primary_expression] = STATE(669), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(141)] = { + [sym_primary_expression] = STATE(785), + [sym_binary_operator] = STATE(924), + [sym_unary_operator] = STATE(924), + [sym_attribute] = STATE(924), + [sym_subscript] = STATE(924), + [sym_call] = STATE(924), + [sym_list] = STATE(924), + [sym_set] = STATE(924), + [sym_tuple] = STATE(924), + [sym_dictionary] = STATE(924), + [sym_list_comprehension] = STATE(924), + [sym_dictionary_comprehension] = STATE(924), + [sym_set_comprehension] = STATE(924), + [sym_generator_expression] = STATE(924), + [sym_parenthesized_expression] = STATE(924), + [sym_concatenated_string] = STATE(924), + [sym_string] = STATE(767), + [sym_concatenated_template_string] = STATE(924), + [sym_template_string] = STATE(768), + [sym_await] = STATE(924), + [sym_identifier] = ACTIONS(607), + [anon_sym_DOT] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(609), + [anon_sym_COMMA] = ACTIONS(298), + [anon_sym_STAR] = ACTIONS(265), + [anon_sym_print] = ACTIONS(611), + [anon_sym_GT_GT] = ACTIONS(298), + [anon_sym_COLON_EQ] = ACTIONS(613), + [anon_sym_if] = ACTIONS(265), + [anon_sym_async] = ACTIONS(611), + [anon_sym_in] = ACTIONS(265), + [anon_sym_match] = ACTIONS(611), + [anon_sym_PIPE] = ACTIONS(298), + [anon_sym_DASH] = ACTIONS(615), + [anon_sym_PLUS] = ACTIONS(615), + [anon_sym_LBRACK] = ACTIONS(617), + [anon_sym_LBRACE] = ACTIONS(619), + [anon_sym_RBRACE] = ACTIONS(298), + [anon_sym_STAR_STAR] = ACTIONS(298), + [anon_sym_EQ] = ACTIONS(265), + [anon_sym_exec] = ACTIONS(611), + [anon_sym_type] = ACTIONS(611), + [anon_sym_AT] = ACTIONS(298), + [anon_sym_not] = ACTIONS(265), + [anon_sym_and] = ACTIONS(265), + [anon_sym_or] = ACTIONS(265), + [anon_sym_SLASH] = ACTIONS(265), + [anon_sym_PERCENT] = ACTIONS(298), + [anon_sym_SLASH_SLASH] = ACTIONS(298), + [anon_sym_AMP] = ACTIONS(298), + [anon_sym_CARET] = ACTIONS(298), + [anon_sym_LT_LT] = ACTIONS(298), + [anon_sym_TILDE] = ACTIONS(615), + [anon_sym_LT] = ACTIONS(265), + [anon_sym_LT_EQ] = ACTIONS(298), + [anon_sym_EQ_EQ] = ACTIONS(298), + [anon_sym_BANG_EQ] = ACTIONS(298), + [anon_sym_GT_EQ] = ACTIONS(298), + [anon_sym_GT] = ACTIONS(265), + [anon_sym_LT_GT] = ACTIONS(298), + [anon_sym_is] = ACTIONS(265), + [sym_ellipsis] = ACTIONS(621), + [anon_sym_COLON2] = ACTIONS(298), + [sym_type_conversion] = ACTIONS(298), + [sym_integer] = ACTIONS(607), + [sym_float] = ACTIONS(621), + [anon_sym_await] = ACTIONS(623), + [sym_true] = ACTIONS(607), + [sym_false] = ACTIONS(607), + [sym_none] = ACTIONS(607), + [sym_comment] = ACTIONS(3), + [sym__string_start] = ACTIONS(625), + [sym__template_string_start] = ACTIONS(627), + }, + [STATE(142)] = { + [sym_primary_expression] = STATE(735), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(578), @@ -22710,74 +23189,74 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [142] = { - [sym_primary_expression] = STATE(669), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(143)] = { + [sym_primary_expression] = STATE(760), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(578), - [anon_sym_RPAREN] = ACTIONS(593), - [anon_sym_COMMA] = ACTIONS(593), + [anon_sym_LPAREN] = ACTIONS(597), + [anon_sym_RPAREN] = ACTIONS(298), + [anon_sym_COMMA] = ACTIONS(298), + [anon_sym_as] = ACTIONS(265), [anon_sym_STAR] = ACTIONS(265), [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(593), + [anon_sym_GT_GT] = ACTIONS(298), + [anon_sym_if] = ACTIONS(265), [anon_sym_async] = ACTIONS(583), - [anon_sym_in] = ACTIONS(587), + [anon_sym_for] = ACTIONS(265), + [anon_sym_in] = ACTIONS(265), [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(265), - [anon_sym_DASH] = ACTIONS(589), - [anon_sym_PLUS] = ACTIONS(589), - [anon_sym_LBRACK] = ACTIONS(591), - [anon_sym_RBRACK] = ACTIONS(593), + [anon_sym_PIPE] = ACTIONS(298), + [anon_sym_DASH] = ACTIONS(601), + [anon_sym_PLUS] = ACTIONS(601), + [anon_sym_LBRACK] = ACTIONS(603), + [anon_sym_RBRACK] = ACTIONS(298), [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_STAR_STAR] = ACTIONS(265), - [anon_sym_EQ] = ACTIONS(593), + [anon_sym_RBRACE] = ACTIONS(298), + [anon_sym_STAR_STAR] = ACTIONS(298), [anon_sym_exec] = ACTIONS(583), [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(265), + [anon_sym_AT] = ACTIONS(298), + [anon_sym_not] = ACTIONS(265), + [anon_sym_and] = ACTIONS(265), + [anon_sym_or] = ACTIONS(265), [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(265), - [anon_sym_SLASH_SLASH] = ACTIONS(265), - [anon_sym_AMP] = ACTIONS(265), - [anon_sym_CARET] = ACTIONS(265), - [anon_sym_LT_LT] = ACTIONS(265), - [anon_sym_TILDE] = ACTIONS(296), - [anon_sym_PLUS_EQ] = ACTIONS(593), - [anon_sym_DASH_EQ] = ACTIONS(593), - [anon_sym_STAR_EQ] = ACTIONS(593), - [anon_sym_SLASH_EQ] = ACTIONS(593), - [anon_sym_AT_EQ] = ACTIONS(593), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(593), - [anon_sym_PERCENT_EQ] = ACTIONS(593), - [anon_sym_STAR_STAR_EQ] = ACTIONS(593), - [anon_sym_GT_GT_EQ] = ACTIONS(593), - [anon_sym_LT_LT_EQ] = ACTIONS(593), - [anon_sym_AMP_EQ] = ACTIONS(593), - [anon_sym_CARET_EQ] = ACTIONS(593), - [anon_sym_PIPE_EQ] = ACTIONS(593), + [anon_sym_PERCENT] = ACTIONS(298), + [anon_sym_SLASH_SLASH] = ACTIONS(298), + [anon_sym_AMP] = ACTIONS(298), + [anon_sym_CARET] = ACTIONS(298), + [anon_sym_LT_LT] = ACTIONS(298), + [anon_sym_TILDE] = ACTIONS(601), + [anon_sym_LT] = ACTIONS(265), + [anon_sym_LT_EQ] = ACTIONS(298), + [anon_sym_EQ_EQ] = ACTIONS(298), + [anon_sym_BANG_EQ] = ACTIONS(298), + [anon_sym_GT_EQ] = ACTIONS(298), + [anon_sym_GT] = ACTIONS(265), + [anon_sym_LT_GT] = ACTIONS(298), + [anon_sym_is] = ACTIONS(265), [sym_ellipsis] = ACTIONS(304), [sym_integer] = ACTIONS(306), [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(595), + [anon_sym_await] = ACTIONS(605), [sym_true] = ACTIONS(306), [sym_false] = ACTIONS(306), [sym_none] = ACTIONS(306), @@ -22785,39 +23264,109 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [143] = { - [sym_primary_expression] = STATE(748), - [sym_binary_operator] = STATE(809), - [sym_unary_operator] = STATE(809), - [sym_attribute] = STATE(809), - [sym_subscript] = STATE(809), - [sym_call] = STATE(809), - [sym_list] = STATE(809), - [sym_set] = STATE(809), - [sym_tuple] = STATE(809), - [sym_dictionary] = STATE(809), - [sym_list_comprehension] = STATE(809), - [sym_dictionary_comprehension] = STATE(809), - [sym_set_comprehension] = STATE(809), - [sym_generator_expression] = STATE(809), - [sym_parenthesized_expression] = STATE(809), - [sym_concatenated_string] = STATE(809), - [sym_string] = STATE(720), - [sym_concatenated_template_string] = STATE(809), - [sym_template_string] = STATE(722), - [sym_await] = STATE(809), - [sym_identifier] = ACTIONS(607), + [STATE(144)] = { + [sym_primary_expression] = STATE(848), + [sym_binary_operator] = STATE(953), + [sym_unary_operator] = STATE(953), + [sym_attribute] = STATE(953), + [sym_subscript] = STATE(953), + [sym_call] = STATE(953), + [sym_list] = STATE(953), + [sym_set] = STATE(953), + [sym_tuple] = STATE(953), + [sym_dictionary] = STATE(953), + [sym_list_comprehension] = STATE(953), + [sym_dictionary_comprehension] = STATE(953), + [sym_set_comprehension] = STATE(953), + [sym_generator_expression] = STATE(953), + [sym_parenthesized_expression] = STATE(953), + [sym_concatenated_string] = STATE(953), + [sym_string] = STATE(794), + [sym_concatenated_template_string] = STATE(953), + [sym_template_string] = STATE(795), + [sym_await] = STATE(953), + [sym_identifier] = ACTIONS(629), [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(609), + [anon_sym_LPAREN] = ACTIONS(631), [anon_sym_RPAREN] = ACTIONS(298), [anon_sym_COMMA] = ACTIONS(298), [anon_sym_as] = ACTIONS(265), [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(611), + [anon_sym_print] = ACTIONS(633), [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_COLON_EQ] = ACTIONS(613), + [anon_sym_COLON_EQ] = ACTIONS(635), [anon_sym_if] = ACTIONS(265), [anon_sym_COLON] = ACTIONS(265), + [anon_sym_async] = ACTIONS(633), + [anon_sym_in] = ACTIONS(265), + [anon_sym_match] = ACTIONS(633), + [anon_sym_PIPE] = ACTIONS(298), + [anon_sym_DASH] = ACTIONS(637), + [anon_sym_PLUS] = ACTIONS(637), + [anon_sym_LBRACK] = ACTIONS(639), + [anon_sym_LBRACE] = ACTIONS(641), + [anon_sym_STAR_STAR] = ACTIONS(298), + [anon_sym_exec] = ACTIONS(633), + [anon_sym_type] = ACTIONS(633), + [anon_sym_AT] = ACTIONS(298), + [anon_sym_not] = ACTIONS(265), + [anon_sym_and] = ACTIONS(265), + [anon_sym_or] = ACTIONS(265), + [anon_sym_SLASH] = ACTIONS(265), + [anon_sym_PERCENT] = ACTIONS(298), + [anon_sym_SLASH_SLASH] = ACTIONS(298), + [anon_sym_AMP] = ACTIONS(298), + [anon_sym_CARET] = ACTIONS(298), + [anon_sym_LT_LT] = ACTIONS(298), + [anon_sym_TILDE] = ACTIONS(637), + [anon_sym_LT] = ACTIONS(265), + [anon_sym_LT_EQ] = ACTIONS(298), + [anon_sym_EQ_EQ] = ACTIONS(298), + [anon_sym_BANG_EQ] = ACTIONS(298), + [anon_sym_GT_EQ] = ACTIONS(298), + [anon_sym_GT] = ACTIONS(265), + [anon_sym_LT_GT] = ACTIONS(298), + [anon_sym_is] = ACTIONS(265), + [sym_ellipsis] = ACTIONS(643), + [sym_integer] = ACTIONS(629), + [sym_float] = ACTIONS(643), + [anon_sym_await] = ACTIONS(645), + [sym_true] = ACTIONS(629), + [sym_false] = ACTIONS(629), + [sym_none] = ACTIONS(629), + [sym_comment] = ACTIONS(3), + [sym__string_start] = ACTIONS(647), + [sym__template_string_start] = ACTIONS(649), + }, + [STATE(145)] = { + [sym_primary_expression] = STATE(785), + [sym_binary_operator] = STATE(924), + [sym_unary_operator] = STATE(924), + [sym_attribute] = STATE(924), + [sym_subscript] = STATE(924), + [sym_call] = STATE(924), + [sym_list] = STATE(924), + [sym_set] = STATE(924), + [sym_tuple] = STATE(924), + [sym_dictionary] = STATE(924), + [sym_list_comprehension] = STATE(924), + [sym_dictionary_comprehension] = STATE(924), + [sym_set_comprehension] = STATE(924), + [sym_generator_expression] = STATE(924), + [sym_parenthesized_expression] = STATE(924), + [sym_concatenated_string] = STATE(924), + [sym_string] = STATE(767), + [sym_concatenated_template_string] = STATE(924), + [sym_template_string] = STATE(768), + [sym_await] = STATE(924), + [sym_identifier] = ACTIONS(607), + [anon_sym_DOT] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(609), + [anon_sym_COMMA] = ACTIONS(298), + [anon_sym_STAR] = ACTIONS(265), + [anon_sym_print] = ACTIONS(611), + [anon_sym_GT_GT] = ACTIONS(298), + [anon_sym_if] = ACTIONS(265), [anon_sym_async] = ACTIONS(611), [anon_sym_in] = ACTIONS(265), [anon_sym_match] = ACTIONS(611), @@ -22826,7 +23375,9 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_PLUS] = ACTIONS(615), [anon_sym_LBRACK] = ACTIONS(617), [anon_sym_LBRACE] = ACTIONS(619), + [anon_sym_RBRACE] = ACTIONS(298), [anon_sym_STAR_STAR] = ACTIONS(298), + [anon_sym_EQ] = ACTIONS(265), [anon_sym_exec] = ACTIONS(611), [anon_sym_type] = ACTIONS(611), [anon_sym_AT] = ACTIONS(298), @@ -22849,6 +23400,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LT_GT] = ACTIONS(298), [anon_sym_is] = ACTIONS(265), [sym_ellipsis] = ACTIONS(621), + [anon_sym_COLON2] = ACTIONS(298), + [sym_type_conversion] = ACTIONS(298), [sym_integer] = ACTIONS(607), [sym_float] = ACTIONS(621), [anon_sym_await] = ACTIONS(623), @@ -22859,27 +23412,27 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(625), [sym__template_string_start] = ACTIONS(627), }, - [144] = { - [sym_primary_expression] = STATE(675), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(146)] = { + [sym_primary_expression] = STATE(760), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(597), @@ -22900,7 +23453,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LBRACK] = ACTIONS(603), [anon_sym_LBRACE] = ACTIONS(288), [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(629), + [anon_sym_EQ] = ACTIONS(651), [anon_sym_exec] = ACTIONS(583), [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(298), @@ -22933,48 +23486,50 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [145] = { - [sym_primary_expression] = STATE(711), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_attribute] = STATE(760), - [sym_subscript] = STATE(760), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), - [sym_identifier] = ACTIONS(77), + [STATE(147)] = { + [sym_primary_expression] = STATE(790), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), + [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), - [anon_sym_from] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(568), + [anon_sym_LPAREN] = ACTIONS(653), [anon_sym_COMMA] = ACTIONS(298), [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(570), + [anon_sym_print] = ACTIONS(583), [anon_sym_GT_GT] = ACTIONS(298), + [anon_sym_COLON_EQ] = ACTIONS(655), [anon_sym_if] = ACTIONS(265), - [anon_sym_async] = ACTIONS(570), + [anon_sym_COLON] = ACTIONS(265), + [anon_sym_async] = ACTIONS(583), + [anon_sym_for] = ACTIONS(265), [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(570), + [anon_sym_match] = ACTIONS(583), [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(574), - [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_DASH] = ACTIONS(657), + [anon_sym_PLUS] = ACTIONS(657), + [anon_sym_LBRACK] = ACTIONS(659), + [anon_sym_LBRACE] = ACTIONS(288), + [anon_sym_RBRACE] = ACTIONS(298), [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(265), - [anon_sym_exec] = ACTIONS(570), - [anon_sym_type] = ACTIONS(570), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(298), [anon_sym_not] = ACTIONS(265), [anon_sym_and] = ACTIONS(265), @@ -22985,7 +23540,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(298), [anon_sym_CARET] = ACTIONS(298), [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_TILDE] = ACTIONS(657), [anon_sym_LT] = ACTIONS(265), [anon_sym_LT_EQ] = ACTIONS(298), [anon_sym_EQ_EQ] = ACTIONS(298), @@ -22994,40 +23549,38 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT] = ACTIONS(265), [anon_sym_LT_GT] = ACTIONS(298), [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(576), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [sym_ellipsis] = ACTIONS(304), + [sym_integer] = ACTIONS(306), + [sym_float] = ACTIONS(304), + [anon_sym_await] = ACTIONS(661), + [sym_true] = ACTIONS(306), + [sym_false] = ACTIONS(306), + [sym_none] = ACTIONS(306), [sym_comment] = ACTIONS(3), - [sym__semicolon] = ACTIONS(298), - [sym__newline] = ACTIONS(298), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__string_start] = ACTIONS(310), + [sym__template_string_start] = ACTIONS(312), }, - [146] = { - [sym_primary_expression] = STATE(675), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(148)] = { + [sym_primary_expression] = STATE(760), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(597), @@ -23081,49 +23634,123 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [147] = { - [sym_primary_expression] = STATE(748), - [sym_binary_operator] = STATE(809), - [sym_unary_operator] = STATE(809), - [sym_attribute] = STATE(809), - [sym_subscript] = STATE(809), - [sym_call] = STATE(809), - [sym_list] = STATE(809), - [sym_set] = STATE(809), - [sym_tuple] = STATE(809), - [sym_dictionary] = STATE(809), - [sym_list_comprehension] = STATE(809), - [sym_dictionary_comprehension] = STATE(809), - [sym_set_comprehension] = STATE(809), - [sym_generator_expression] = STATE(809), - [sym_parenthesized_expression] = STATE(809), - [sym_concatenated_string] = STATE(809), - [sym_string] = STATE(720), - [sym_concatenated_template_string] = STATE(809), - [sym_template_string] = STATE(722), - [sym_await] = STATE(809), - [sym_identifier] = ACTIONS(607), + [STATE(149)] = { + [sym_primary_expression] = STATE(810), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_attribute] = STATE(908), + [sym_subscript] = STATE(908), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), + [sym_identifier] = ACTIONS(77), [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(609), + [anon_sym_from] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(568), + [anon_sym_COMMA] = ACTIONS(298), + [anon_sym_STAR] = ACTIONS(265), + [anon_sym_print] = ACTIONS(570), + [anon_sym_GT_GT] = ACTIONS(298), + [anon_sym_if] = ACTIONS(265), + [anon_sym_async] = ACTIONS(570), + [anon_sym_in] = ACTIONS(265), + [anon_sym_match] = ACTIONS(570), + [anon_sym_PIPE] = ACTIONS(298), + [anon_sym_DASH] = ACTIONS(47), + [anon_sym_PLUS] = ACTIONS(47), + [anon_sym_LBRACK] = ACTIONS(574), + [anon_sym_LBRACE] = ACTIONS(51), + [anon_sym_STAR_STAR] = ACTIONS(298), + [anon_sym_EQ] = ACTIONS(265), + [anon_sym_exec] = ACTIONS(570), + [anon_sym_type] = ACTIONS(570), + [anon_sym_AT] = ACTIONS(298), + [anon_sym_not] = ACTIONS(265), + [anon_sym_and] = ACTIONS(265), + [anon_sym_or] = ACTIONS(265), + [anon_sym_SLASH] = ACTIONS(265), + [anon_sym_PERCENT] = ACTIONS(298), + [anon_sym_SLASH_SLASH] = ACTIONS(298), + [anon_sym_AMP] = ACTIONS(298), + [anon_sym_CARET] = ACTIONS(298), + [anon_sym_LT_LT] = ACTIONS(298), + [anon_sym_TILDE] = ACTIONS(47), + [anon_sym_LT] = ACTIONS(265), + [anon_sym_LT_EQ] = ACTIONS(298), + [anon_sym_EQ_EQ] = ACTIONS(298), + [anon_sym_BANG_EQ] = ACTIONS(298), + [anon_sym_GT_EQ] = ACTIONS(298), + [anon_sym_GT] = ACTIONS(265), + [anon_sym_LT_GT] = ACTIONS(298), + [anon_sym_is] = ACTIONS(265), + [sym_ellipsis] = ACTIONS(75), + [sym_integer] = ACTIONS(77), + [sym_float] = ACTIONS(75), + [anon_sym_await] = ACTIONS(576), + [sym_true] = ACTIONS(77), + [sym_false] = ACTIONS(77), + [sym_none] = ACTIONS(77), + [sym_comment] = ACTIONS(3), + [anon_sym_SEMI] = ACTIONS(298), + [sym__newline] = ACTIONS(298), + [sym__string_start] = ACTIONS(81), + [sym__template_string_start] = ACTIONS(83), + }, + [STATE(150)] = { + [sym_primary_expression] = STATE(848), + [sym_binary_operator] = STATE(953), + [sym_unary_operator] = STATE(953), + [sym_attribute] = STATE(953), + [sym_subscript] = STATE(953), + [sym_call] = STATE(953), + [sym_list] = STATE(953), + [sym_set] = STATE(953), + [sym_tuple] = STATE(953), + [sym_dictionary] = STATE(953), + [sym_list_comprehension] = STATE(953), + [sym_dictionary_comprehension] = STATE(953), + [sym_set_comprehension] = STATE(953), + [sym_generator_expression] = STATE(953), + [sym_parenthesized_expression] = STATE(953), + [sym_concatenated_string] = STATE(953), + [sym_string] = STATE(794), + [sym_concatenated_template_string] = STATE(953), + [sym_template_string] = STATE(795), + [sym_await] = STATE(953), + [sym_identifier] = ACTIONS(629), + [anon_sym_DOT] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(631), [anon_sym_RPAREN] = ACTIONS(298), [anon_sym_COMMA] = ACTIONS(298), [anon_sym_as] = ACTIONS(265), [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(611), + [anon_sym_print] = ACTIONS(633), [anon_sym_GT_GT] = ACTIONS(298), [anon_sym_if] = ACTIONS(265), [anon_sym_COLON] = ACTIONS(298), - [anon_sym_async] = ACTIONS(611), + [anon_sym_async] = ACTIONS(633), [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(611), + [anon_sym_match] = ACTIONS(633), [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(615), - [anon_sym_PLUS] = ACTIONS(615), - [anon_sym_LBRACK] = ACTIONS(617), - [anon_sym_LBRACE] = ACTIONS(619), + [anon_sym_DASH] = ACTIONS(637), + [anon_sym_PLUS] = ACTIONS(637), + [anon_sym_LBRACK] = ACTIONS(639), + [anon_sym_LBRACE] = ACTIONS(641), [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_exec] = ACTIONS(611), - [anon_sym_type] = ACTIONS(611), + [anon_sym_exec] = ACTIONS(633), + [anon_sym_type] = ACTIONS(633), [anon_sym_AT] = ACTIONS(298), [anon_sym_not] = ACTIONS(265), [anon_sym_and] = ACTIONS(265), @@ -23134,7 +23761,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(298), [anon_sym_CARET] = ACTIONS(298), [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(615), + [anon_sym_TILDE] = ACTIONS(637), [anon_sym_LT] = ACTIONS(265), [anon_sym_LT_EQ] = ACTIONS(298), [anon_sym_EQ_EQ] = ACTIONS(298), @@ -23143,38 +23770,38 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT] = ACTIONS(265), [anon_sym_LT_GT] = ACTIONS(298), [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(621), - [sym_integer] = ACTIONS(607), - [sym_float] = ACTIONS(621), - [anon_sym_await] = ACTIONS(623), - [sym_true] = ACTIONS(607), - [sym_false] = ACTIONS(607), - [sym_none] = ACTIONS(607), + [sym_ellipsis] = ACTIONS(643), + [sym_integer] = ACTIONS(629), + [sym_float] = ACTIONS(643), + [anon_sym_await] = ACTIONS(645), + [sym_true] = ACTIONS(629), + [sym_false] = ACTIONS(629), + [sym_none] = ACTIONS(629), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(625), - [sym__template_string_start] = ACTIONS(627), + [sym__string_start] = ACTIONS(647), + [sym__template_string_start] = ACTIONS(649), }, - [148] = { - [sym_primary_expression] = STATE(669), - [sym_binary_operator] = STATE(649), - [sym_unary_operator] = STATE(649), - [sym_attribute] = STATE(649), - [sym_subscript] = STATE(649), - [sym_call] = STATE(649), - [sym_list] = STATE(649), - [sym_set] = STATE(649), - [sym_tuple] = STATE(649), - [sym_dictionary] = STATE(649), - [sym_list_comprehension] = STATE(649), - [sym_dictionary_comprehension] = STATE(649), - [sym_set_comprehension] = STATE(649), - [sym_generator_expression] = STATE(649), - [sym_parenthesized_expression] = STATE(649), - [sym_concatenated_string] = STATE(649), - [sym_string] = STATE(569), - [sym_concatenated_template_string] = STATE(649), - [sym_template_string] = STATE(570), - [sym_await] = STATE(649), + [STATE(151)] = { + [sym_primary_expression] = STATE(735), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), [sym_identifier] = ACTIONS(306), [anon_sym_DOT] = ACTIONS(265), [anon_sym_LPAREN] = ACTIONS(578), @@ -23194,7 +23821,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LBRACK] = ACTIONS(591), [anon_sym_LBRACE] = ACTIONS(288), [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(629), + [anon_sym_EQ] = ACTIONS(651), [anon_sym_exec] = ACTIONS(583), [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(298), @@ -23227,59 +23854,132 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(310), [sym__template_string_start] = ACTIONS(312), }, - [149] = { - [sym_named_expression] = STATE(955), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_expression_list] = STATE(1357), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1026), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1357), - [sym_augmented_assignment] = STATE(1357), - [sym_pattern_list] = STATE(874), - [sym__right_hand_side] = STATE(1357), - [sym_yield] = STATE(1357), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(152)] = { + [sym_primary_expression] = STATE(790), + [sym_binary_operator] = STATE(724), + [sym_unary_operator] = STATE(724), + [sym_attribute] = STATE(724), + [sym_subscript] = STATE(724), + [sym_call] = STATE(724), + [sym_list] = STATE(724), + [sym_set] = STATE(724), + [sym_tuple] = STATE(724), + [sym_dictionary] = STATE(724), + [sym_list_comprehension] = STATE(724), + [sym_dictionary_comprehension] = STATE(724), + [sym_set_comprehension] = STATE(724), + [sym_generator_expression] = STATE(724), + [sym_parenthesized_expression] = STATE(724), + [sym_concatenated_string] = STATE(724), + [sym_string] = STATE(621), + [sym_concatenated_template_string] = STATE(724), + [sym_template_string] = STATE(624), + [sym_await] = STATE(724), + [sym_identifier] = ACTIONS(306), + [anon_sym_DOT] = ACTIONS(265), + [anon_sym_LPAREN] = ACTIONS(653), + [anon_sym_COMMA] = ACTIONS(298), + [anon_sym_STAR] = ACTIONS(265), + [anon_sym_print] = ACTIONS(583), + [anon_sym_GT_GT] = ACTIONS(298), + [anon_sym_if] = ACTIONS(265), + [anon_sym_COLON] = ACTIONS(298), + [anon_sym_async] = ACTIONS(583), + [anon_sym_for] = ACTIONS(265), + [anon_sym_in] = ACTIONS(265), + [anon_sym_match] = ACTIONS(583), + [anon_sym_PIPE] = ACTIONS(298), + [anon_sym_DASH] = ACTIONS(657), + [anon_sym_PLUS] = ACTIONS(657), + [anon_sym_LBRACK] = ACTIONS(659), + [anon_sym_LBRACE] = ACTIONS(288), + [anon_sym_RBRACE] = ACTIONS(298), + [anon_sym_STAR_STAR] = ACTIONS(298), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), + [anon_sym_AT] = ACTIONS(298), + [anon_sym_not] = ACTIONS(265), + [anon_sym_and] = ACTIONS(265), + [anon_sym_or] = ACTIONS(265), + [anon_sym_SLASH] = ACTIONS(265), + [anon_sym_PERCENT] = ACTIONS(298), + [anon_sym_SLASH_SLASH] = ACTIONS(298), + [anon_sym_AMP] = ACTIONS(298), + [anon_sym_CARET] = ACTIONS(298), + [anon_sym_LT_LT] = ACTIONS(298), + [anon_sym_TILDE] = ACTIONS(657), + [anon_sym_LT] = ACTIONS(265), + [anon_sym_LT_EQ] = ACTIONS(298), + [anon_sym_EQ_EQ] = ACTIONS(298), + [anon_sym_BANG_EQ] = ACTIONS(298), + [anon_sym_GT_EQ] = ACTIONS(298), + [anon_sym_GT] = ACTIONS(265), + [anon_sym_LT_GT] = ACTIONS(298), + [anon_sym_is] = ACTIONS(265), + [sym_ellipsis] = ACTIONS(304), + [sym_integer] = ACTIONS(306), + [sym_float] = ACTIONS(304), + [anon_sym_await] = ACTIONS(661), + [sym_true] = ACTIONS(306), + [sym_false] = ACTIONS(306), + [sym_none] = ACTIONS(306), + [sym_comment] = ACTIONS(3), + [sym__string_start] = ACTIONS(310), + [sym__template_string_start] = ACTIONS(312), + }, + [STATE(153)] = { + [sym_named_expression] = STATE(1158), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_expression_list] = STATE(1535), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1213), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1535), + [sym_augmented_assignment] = STATE(1535), + [sym_pattern_list] = STATE(1024), + [sym__right_hand_side] = STATE(1535), + [sym_yield] = STATE(1535), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_LPAREN] = ACTIONS(13), [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(314), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_print] = ACTIONS(322), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_exec] = ACTIONS(314), - [anon_sym_type] = ACTIONS(314), + [anon_sym_exec] = ACTIONS(322), + [anon_sym_type] = ACTIONS(322), [anon_sym_not] = ACTIONS(69), [anon_sym_TILDE] = ACTIONS(47), [anon_sym_lambda] = ACTIONS(71), @@ -23295,59 +23995,59 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [150] = { - [sym_named_expression] = STATE(955), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_expression_list] = STATE(1356), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1026), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1356), - [sym_augmented_assignment] = STATE(1356), - [sym_pattern_list] = STATE(874), - [sym__right_hand_side] = STATE(1356), - [sym_yield] = STATE(1356), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(154)] = { + [sym_named_expression] = STATE(1158), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_expression_list] = STATE(1518), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1213), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1518), + [sym_augmented_assignment] = STATE(1518), + [sym_pattern_list] = STATE(1024), + [sym__right_hand_side] = STATE(1518), + [sym_yield] = STATE(1518), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_LPAREN] = ACTIONS(13), [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(314), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_print] = ACTIONS(322), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_exec] = ACTIONS(314), - [anon_sym_type] = ACTIONS(314), + [anon_sym_exec] = ACTIONS(322), + [anon_sym_type] = ACTIONS(322), [anon_sym_not] = ACTIONS(69), [anon_sym_TILDE] = ACTIONS(47), [anon_sym_lambda] = ACTIONS(71), @@ -23363,59 +24063,59 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(81), [sym__template_string_start] = ACTIONS(83), }, - [151] = { - [sym_named_expression] = STATE(955), - [sym_list_splat] = STATE(1328), - [sym_dictionary_splat] = STATE(1328), - [sym_expression_list] = STATE(1365), - [sym_pattern] = STATE(867), - [sym_tuple_pattern] = STATE(853), - [sym_list_pattern] = STATE(853), - [sym_list_splat_pattern] = STATE(853), - [sym_expression] = STATE(1026), - [sym_primary_expression] = STATE(702), - [sym_not_operator] = STATE(955), - [sym_boolean_operator] = STATE(955), - [sym_binary_operator] = STATE(760), - [sym_unary_operator] = STATE(760), - [sym_comparison_operator] = STATE(955), - [sym_lambda] = STATE(955), - [sym_assignment] = STATE(1365), - [sym_augmented_assignment] = STATE(1365), - [sym_pattern_list] = STATE(874), - [sym__right_hand_side] = STATE(1365), - [sym_yield] = STATE(1365), - [sym_attribute] = STATE(459), - [sym_subscript] = STATE(459), - [sym_call] = STATE(760), - [sym_list] = STATE(760), - [sym_set] = STATE(760), - [sym_tuple] = STATE(760), - [sym_dictionary] = STATE(760), - [sym_list_comprehension] = STATE(760), - [sym_dictionary_comprehension] = STATE(760), - [sym_set_comprehension] = STATE(760), - [sym_generator_expression] = STATE(760), - [sym_parenthesized_expression] = STATE(760), - [sym_conditional_expression] = STATE(955), - [sym_concatenated_string] = STATE(760), - [sym_string] = STATE(698), - [sym_concatenated_template_string] = STATE(760), - [sym_template_string] = STATE(700), - [sym_await] = STATE(760), + [STATE(155)] = { + [sym_named_expression] = STATE(1158), + [sym_list_splat] = STATE(1549), + [sym_dictionary_splat] = STATE(1549), + [sym_expression_list] = STATE(1530), + [sym_pattern] = STATE(1013), + [sym_tuple_pattern] = STATE(999), + [sym_list_pattern] = STATE(999), + [sym_list_splat_pattern] = STATE(999), + [sym_expression] = STATE(1213), + [sym_primary_expression] = STATE(779), + [sym_not_operator] = STATE(1158), + [sym_boolean_operator] = STATE(1158), + [sym_binary_operator] = STATE(908), + [sym_unary_operator] = STATE(908), + [sym_comparison_operator] = STATE(1158), + [sym_lambda] = STATE(1158), + [sym_assignment] = STATE(1530), + [sym_augmented_assignment] = STATE(1530), + [sym_pattern_list] = STATE(1024), + [sym__right_hand_side] = STATE(1530), + [sym_yield] = STATE(1530), + [sym_attribute] = STATE(494), + [sym_subscript] = STATE(494), + [sym_call] = STATE(908), + [sym_list] = STATE(908), + [sym_set] = STATE(908), + [sym_tuple] = STATE(908), + [sym_dictionary] = STATE(908), + [sym_list_comprehension] = STATE(908), + [sym_dictionary_comprehension] = STATE(908), + [sym_set_comprehension] = STATE(908), + [sym_generator_expression] = STATE(908), + [sym_parenthesized_expression] = STATE(908), + [sym_conditional_expression] = STATE(1158), + [sym_concatenated_string] = STATE(908), + [sym_string] = STATE(782), + [sym_concatenated_template_string] = STATE(908), + [sym_template_string] = STATE(763), + [sym_await] = STATE(908), [sym_identifier] = ACTIONS(7), [anon_sym_LPAREN] = ACTIONS(13), [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(314), - [anon_sym_async] = ACTIONS(314), - [anon_sym_match] = ACTIONS(314), + [anon_sym_print] = ACTIONS(322), + [anon_sym_async] = ACTIONS(322), + [anon_sym_match] = ACTIONS(322), [anon_sym_DASH] = ACTIONS(47), [anon_sym_PLUS] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_exec] = ACTIONS(314), - [anon_sym_type] = ACTIONS(314), + [anon_sym_exec] = ACTIONS(322), + [anon_sym_type] = ACTIONS(322), [anon_sym_not] = ACTIONS(69), [anon_sym_TILDE] = ACTIONS(47), [anon_sym_lambda] = ACTIONS(71), @@ -23434,84 +24134,80 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }; static const uint16_t ts_small_parse_table[] = { - [0] = 26, + [0] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, + ACTIONS(296), 1, + anon_sym_TILDE, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(631), 1, - anon_sym_from, - ACTIONS(635), 1, + ACTIONS(667), 1, anon_sym_STAR, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, + ACTIONS(673), 1, + anon_sym_in, + ACTIONS(675), 1, + anon_sym_LBRACK, + ACTIONS(677), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(1005), 1, + sym_pattern, + STATE(1012), 1, sym_primary_expression, - STATE(885), 1, - sym_expression, - STATE(1001), 1, - sym_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1375), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(589), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, + STATE(849), 2, + sym_attribute, + sym_subscript, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(669), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - ACTIONS(633), 7, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(671), 15, anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_EQ, - sym_type_conversion, - STATE(649), 17, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + STATE(724), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -23525,7 +24221,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [117] = 30, + [110] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -23534,76 +24230,75 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(639), 1, + ACTIONS(679), 1, sym_identifier, - ACTIONS(641), 1, + ACTIONS(681), 1, anon_sym_LPAREN, - ACTIONS(643), 1, - anon_sym_RPAREN, - ACTIONS(645), 1, + ACTIONS(683), 1, anon_sym_STAR, - ACTIONS(649), 1, + ACTIONS(687), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(689), 1, + anon_sym_RBRACK, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(657), 1, + ACTIONS(697), 1, anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(935), 1, + STATE(1083), 1, sym_expression, - STATE(1177), 1, + STATE(1356), 1, sym_pattern, - STATE(1197), 1, - sym_yield, - STATE(1409), 1, - sym__collection_elements, - STATE(1416), 1, + STATE(1628), 1, sym__patterns, + STATE(1633), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(770), 2, + STATE(915), 2, sym_attribute, sym_subscript, - STATE(1095), 2, - sym_list_splat, - sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(647), 5, + ACTIONS(685), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 15, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -23619,64 +24314,47 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [241] = 31, + [232] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(296), 1, + anon_sym_TILDE, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(639), 1, + ACTIONS(663), 1, sym_identifier, - ACTIONS(641), 1, + ACTIONS(665), 1, anon_sym_LPAREN, - ACTIONS(645), 1, + ACTIONS(667), 1, anon_sym_STAR, - ACTIONS(649), 1, + ACTIONS(675), 1, anon_sym_LBRACK, - ACTIONS(651), 1, - anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(657), 1, + ACTIONS(677), 1, anon_sym_await, - ACTIONS(659), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(701), 1, + anon_sym_in, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(930), 1, - sym_expression, - STATE(1177), 1, + STATE(1005), 1, sym_pattern, - STATE(1218), 1, - sym_yield, - STATE(1303), 1, - sym_parenthesized_list_splat, - STATE(1304), 1, - sym_list_splat, - STATE(1416), 1, - sym__patterns, - STATE(1480), 1, - sym__collection_elements, + STATE(1012), 1, + sym_primary_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(770), 2, - sym_attribute, - sym_subscript, - ACTIONS(601), 3, + ACTIONS(589), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, + STATE(849), 2, + sym_attribute, + sym_subscript, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -23685,20 +24363,29 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(647), 5, + ACTIONS(669), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 15, + ACTIONS(699), 15, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -23714,7 +24401,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [367] = 29, + [342] = 30, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -23723,75 +24410,76 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(639), 1, + ACTIONS(679), 1, sym_identifier, - ACTIONS(641), 1, + ACTIONS(681), 1, anon_sym_LPAREN, - ACTIONS(645), 1, + ACTIONS(683), 1, anon_sym_STAR, - ACTIONS(649), 1, + ACTIONS(687), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(657), 1, + ACTIONS(697), 1, anon_sym_await, - ACTIONS(661), 1, - anon_sym_RBRACK, - STATE(569), 1, + ACTIONS(703), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(908), 1, + STATE(1066), 1, sym_expression, - STATE(1177), 1, + STATE(1356), 1, sym_pattern, - STATE(1434), 1, - sym__patterns, - STATE(1438), 1, + STATE(1383), 1, + sym_yield, + STATE(1615), 1, sym__collection_elements, + STATE(1643), 1, + sym__patterns, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(770), 2, + STATE(915), 2, sym_attribute, sym_subscript, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(647), 5, + ACTIONS(685), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 15, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -23807,7 +24495,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [489] = 30, + [466] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -23816,76 +24504,75 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(639), 1, + ACTIONS(679), 1, sym_identifier, - ACTIONS(641), 1, + ACTIONS(681), 1, anon_sym_LPAREN, - ACTIONS(645), 1, + ACTIONS(683), 1, anon_sym_STAR, - ACTIONS(649), 1, + ACTIONS(687), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(657), 1, + ACTIONS(697), 1, anon_sym_await, - ACTIONS(663), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(705), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(930), 1, + STATE(1081), 1, sym_expression, - STATE(1177), 1, + STATE(1356), 1, sym_pattern, - STATE(1218), 1, - sym_yield, - STATE(1416), 1, + STATE(1628), 1, sym__patterns, - STATE(1480), 1, + STATE(1656), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(770), 2, + STATE(915), 2, sym_attribute, sym_subscript, - STATE(1095), 2, - sym_list_splat, - sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(647), 5, + ACTIONS(685), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 15, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -23901,7 +24588,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [613] = 29, + [588] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -23910,75 +24597,77 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(639), 1, + ACTIONS(679), 1, sym_identifier, - ACTIONS(641), 1, + ACTIONS(681), 1, anon_sym_LPAREN, - ACTIONS(645), 1, + ACTIONS(683), 1, anon_sym_STAR, - ACTIONS(649), 1, + ACTIONS(687), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(657), 1, + ACTIONS(697), 1, anon_sym_await, - ACTIONS(665), 1, - anon_sym_RBRACK, - STATE(569), 1, + ACTIONS(707), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(912), 1, + STATE(1066), 1, sym_expression, - STATE(1177), 1, + STATE(1356), 1, sym_pattern, - STATE(1390), 1, + STATE(1383), 1, + sym_yield, + STATE(1440), 1, + sym_parenthesized_list_splat, + STATE(1474), 1, + sym_list_splat, + STATE(1615), 1, sym__collection_elements, - STATE(1434), 1, + STATE(1643), 1, sym__patterns, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(770), 2, + STATE(915), 2, sym_attribute, sym_subscript, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(647), 5, + ACTIONS(685), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 15, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -23994,47 +24683,63 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [735] = 23, + [714] = 30, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(296), 1, - anon_sym_TILDE, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, + ACTIONS(679), 1, sym_identifier, - ACTIONS(669), 1, + ACTIONS(681), 1, anon_sym_LPAREN, - ACTIONS(671), 1, + ACTIONS(683), 1, anon_sym_STAR, - ACTIONS(677), 1, - anon_sym_in, - ACTIONS(679), 1, + ACTIONS(687), 1, anon_sym_LBRACK, - ACTIONS(681), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(697), 1, anon_sym_await, - STATE(569), 1, + ACTIONS(709), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(854), 1, - sym_pattern, - STATE(862), 1, + STATE(725), 1, sym_primary_expression, + STATE(1084), 1, + sym_expression, + STATE(1356), 1, + sym_pattern, + STATE(1489), 1, + sym_yield, + STATE(1626), 1, + sym__collection_elements, + STATE(1643), 1, + sym__patterns, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(589), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(735), 2, + STATE(915), 2, sym_attribute, sym_subscript, - STATE(853), 3, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -24043,29 +24748,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(673), 5, + ACTIONS(685), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - ACTIONS(675), 15, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - STATE(649), 15, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24081,7 +24777,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [845] = 29, + [838] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -24090,53 +24786,53 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(639), 1, + ACTIONS(679), 1, sym_identifier, - ACTIONS(641), 1, + ACTIONS(681), 1, anon_sym_LPAREN, - ACTIONS(645), 1, + ACTIONS(683), 1, anon_sym_STAR, - ACTIONS(649), 1, + ACTIONS(687), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(657), 1, + ACTIONS(697), 1, anon_sym_await, - ACTIONS(683), 1, + ACTIONS(711), 1, anon_sym_RBRACK, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(912), 1, + STATE(1081), 1, sym_expression, - STATE(1177), 1, + STATE(1356), 1, sym_pattern, - STATE(1390), 1, - sym__collection_elements, - STATE(1434), 1, + STATE(1628), 1, sym__patterns, + STATE(1656), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(770), 2, + STATE(915), 2, sym_attribute, sym_subscript, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - STATE(1095), 3, + STATE(1257), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, @@ -24145,20 +24841,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(647), 5, + ACTIONS(685), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 15, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24174,80 +24870,85 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [967] = 23, + [960] = 29, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(296), 1, - anon_sym_TILDE, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(713), 1, sym_identifier, - ACTIONS(669), 1, + ACTIONS(715), 1, anon_sym_LPAREN, - ACTIONS(671), 1, + ACTIONS(717), 1, + anon_sym_COMMA, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, + ACTIONS(723), 1, + anon_sym_RBRACE, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, anon_sym_await, - ACTIONS(687), 1, - anon_sym_in, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(854), 1, - sym_pattern, - STATE(862), 1, + STATE(772), 1, sym_primary_expression, + STATE(1046), 1, + sym_expression, + STATE(1212), 1, + sym_pair, + STATE(1490), 1, + sym_dictionary_splat, + STATE(1705), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(589), 2, + ACTIONS(657), 3, anon_sym_DASH, anon_sym_PLUS, - STATE(735), 2, - sym_attribute, - sym_subscript, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, + anon_sym_TILDE, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(673), 5, + ACTIONS(721), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - ACTIONS(685), 15, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - STATE(649), 15, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -24261,7 +24962,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1077] = 29, + [1081] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -24272,48 +24973,48 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(659), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(651), 1, - anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, + ACTIONS(713), 1, sym_identifier, - ACTIONS(691), 1, + ACTIONS(715), 1, anon_sym_LPAREN, - ACTIONS(693), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + ACTIONS(731), 1, anon_sym_COMMA, - ACTIONS(697), 1, + ACTIONS(733), 1, anon_sym_RBRACE, - ACTIONS(699), 1, - anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(772), 1, sym_primary_expression, - STATE(905), 1, + STATE(1061), 1, sym_expression, - STATE(1017), 1, + STATE(1190), 1, sym_pair, - STATE(1259), 1, + STATE(1403), 1, sym_dictionary_splat, - STATE(1456), 1, + STATE(1687), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(657), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, + STATE(1257), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, @@ -24322,20 +25023,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(721), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24353,76 +25054,81 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1198] = 24, + [1202] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(659), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(715), 1, + anon_sym_LPAREN, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(725), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + ACTIONS(735), 1, + anon_sym_COMMA, + ACTIONS(737), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(772), 1, sym_primary_expression, - STATE(931), 1, + STATE(1060), 1, sym_expression, + STATE(1170), 1, + sym_pair, + STATE(1410), 1, + sym_dictionary_splat, + STATE(1600), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1010), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(657), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(721), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - ACTIONS(701), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24440,7 +25146,99 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1309] = 24, + [1323] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(715), 1, + anon_sym_LPAREN, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + ACTIONS(739), 1, + anon_sym_COMMA, + ACTIONS(741), 1, + anon_sym_RBRACE, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1034), 1, + sym_expression, + STATE(1198), 1, + sym_pair, + STATE(1425), 1, + sym_dictionary_splat, + STATE(1602), 1, + sym__collection_elements, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [1444] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -24461,22 +25259,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(743), 1, + anon_sym_from, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(931), 1, + STATE(1148), 1, sym_expression, + STATE(1196), 1, + sym_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1010), 2, + STATE(1510), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(296), 3, @@ -24488,28 +25290,25 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, + ACTIONS(745), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_RBRACE, ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - ACTIONS(703), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24527,81 +25326,77 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1420] = 29, + [1558] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(651), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(751), 1, + anon_sym_from, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(757), 1, anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(759), 1, anon_sym_await, - ACTIONS(705), 1, - anon_sym_COMMA, - ACTIONS(707), 1, - anon_sym_RBRACE, - STATE(569), 1, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(887), 1, + STATE(1093), 1, sym_expression, - STATE(1006), 1, - sym_pair, - STATE(1215), 1, - sym_dictionary_splat, - STATE(1396), 1, - sym__collection_elements, - ACTIONS(304), 2, + STATE(1196), 1, + sym_expression_list, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1567), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(306), 4, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(745), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24619,7 +25414,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1541] = 24, + [1672] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -24640,22 +25435,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(931), 1, + STATE(1117), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1010), 2, + STATE(1267), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(296), 3, @@ -24673,22 +25468,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + ACTIONS(761), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - ACTIONS(703), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24706,81 +25499,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1652] = 29, + [1781] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(709), 1, - anon_sym_COMMA, - ACTIONS(711), 1, - anon_sym_RBRACE, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(886), 1, + STATE(1117), 1, sym_expression, - STATE(1025), 1, - sym_pair, - STATE(1225), 1, - sym_dictionary_splat, - STATE(1387), 1, - sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1267), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + ACTIONS(763), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24798,9 +25584,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1773] = 24, + [1890] = 24, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -24813,39 +25601,32 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(717), 1, + ACTIONS(719), 1, anon_sym_STAR, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(992), 1, + STATE(1117), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1267), 2, + sym_list_splat, + sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(715), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1118), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, @@ -24857,14 +25638,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + ACTIONS(763), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24882,75 +25669,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1881] = 26, + [1999] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(651), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(757), 1, anon_sym_lambda, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(719), 1, - sym_identifier, - ACTIONS(721), 1, - anon_sym_RPAREN, - ACTIONS(723), 1, - anon_sym_COMMA, - ACTIONS(727), 1, + ACTIONS(759), 1, anon_sym_await, - STATE(569), 1, + ACTIONS(765), 1, + anon_sym_yield, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(911), 1, + STATE(1095), 1, sym_expression, - STATE(1261), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1567), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1260), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + STATE(1265), 3, + sym_expression_list, + sym_yield, + sym__f_expression, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(725), 5, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24968,76 +25754,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1993] = 27, + [2109] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(69), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(314), 1, sym_identifier, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(320), 1, anon_sym_await, - ACTIONS(717), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(729), 1, - anon_sym_RPAREN, - STATE(569), 1, - sym_string, - STATE(570), 1, + ACTIONS(767), 1, + anon_sym_from, + STATE(763), 1, sym_template_string, - STATE(653), 1, + STATE(779), 1, sym_primary_expression, - STATE(903), 1, + STATE(782), 1, + sym_string, + STATE(1202), 1, sym_expression, - STATE(1220), 1, - sym_yield, - STATE(1274), 1, - sym_with_item, - STATE(1391), 1, - sym__collection_elements, - ACTIONS(304), 2, + STATE(1537), 1, + sym_expression_list, + ACTIONS(75), 2, sym_ellipsis, sym_float, - STATE(1095), 2, + ACTIONS(745), 2, + sym__newline, + anon_sym_SEMI, + STATE(1549), 2, sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(601), 3, + sym_dictionary_splat, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25055,7 +25840,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2107] = 24, + [2221] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -25072,21 +25857,21 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(713), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(717), 1, + ACTIONS(773), 1, anon_sym_STAR, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(992), 1, + STATE(1174), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -25095,11 +25880,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(715), 3, + ACTIONS(771), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(1118), 3, + STATE(1315), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, @@ -25114,14 +25899,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25139,53 +25924,53 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2215] = 26, + [2329] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(775), 1, + sym_identifier, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(721), 1, + ACTIONS(779), 1, anon_sym_RPAREN, - ACTIONS(723), 1, + ACTIONS(781), 1, anon_sym_COMMA, - ACTIONS(731), 1, - sym_identifier, - ACTIONS(735), 1, + ACTIONS(785), 1, anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1060), 1, + STATE(1076), 1, sym_expression, - STATE(1261), 1, + STATE(1388), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1260), 3, + STATE(1387), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -25194,20 +25979,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(783), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25225,74 +26010,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2327] = 25, + [2441] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(655), 1, - anon_sym_yield, - STATE(569), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(789), 1, + anon_sym_RPAREN, + ACTIONS(791), 1, + anon_sym_COMMA, + ACTIONS(795), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(940), 1, + STATE(1225), 1, sym_expression, + STATE(1398), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1375), 2, - sym_list_splat, - sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1076), 3, - sym_expression_list, - sym_yield, - sym__f_expression, + STATE(1397), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25310,74 +26096,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2437] = 25, + [2553] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(655), 1, - anon_sym_yield, - STATE(569), 1, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + ACTIONS(797), 1, + anon_sym_STAR, + ACTIONS(799), 1, + anon_sym_STAR_STAR, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(940), 1, + STATE(1164), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - STATE(1375), 2, + STATE(1273), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1088), 3, - sym_expression_list, - sym_yield, - sym__f_expression, - ACTIONS(306), 4, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(761), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25395,75 +26180,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2547] = 26, + [2661] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(651), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(757), 1, anon_sym_lambda, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(719), 1, - sym_identifier, - ACTIONS(727), 1, + ACTIONS(759), 1, anon_sym_await, - ACTIONS(737), 1, - anon_sym_RPAREN, - ACTIONS(739), 1, - anon_sym_COMMA, - STATE(569), 1, + ACTIONS(797), 1, + anon_sym_STAR, + ACTIONS(799), 1, + anon_sym_STAR_STAR, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(933), 1, + STATE(1164), 1, sym_expression, - STATE(1204), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1273), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1205), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(725), 5, + ACTIONS(763), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25481,75 +26264,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2659] = 26, + [2769] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(651), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(757), 1, anon_sym_lambda, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(719), 1, - sym_identifier, - ACTIONS(727), 1, + ACTIONS(759), 1, anon_sym_await, - ACTIONS(741), 1, - anon_sym_RPAREN, - ACTIONS(743), 1, - anon_sym_COMMA, - STATE(569), 1, + ACTIONS(797), 1, + anon_sym_STAR, + ACTIONS(799), 1, + anon_sym_STAR_STAR, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(909), 1, + STATE(1164), 1, sym_expression, - STATE(1230), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1273), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1223), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(725), 5, + ACTIONS(763), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25567,73 +26348,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2771] = 24, + [2877] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(655), 1, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + ACTIONS(765), 1, anon_sym_yield, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(992), 1, + STATE(1095), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1567), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(745), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1118), 3, - sym_list_splat, - sym_parenthesized_list_splat, + STATE(1287), 3, + sym_expression_list, sym_yield, - ACTIONS(306), 4, + sym__f_expression, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25651,75 +26433,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2879] = 26, + [2987] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(747), 1, - anon_sym_from, - STATE(698), 1, + ACTIONS(775), 1, + sym_identifier, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(785), 1, + anon_sym_await, + ACTIONS(789), 1, + anon_sym_RPAREN, + ACTIONS(791), 1, + anon_sym_COMMA, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(989), 1, + STATE(1067), 1, sym_expression, - STATE(1228), 1, - sym_expression_list, - ACTIONS(75), 2, + STATE(1398), 1, + sym_parenthesized_list_splat, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(749), 2, - sym__newline, - sym__semicolon, - STATE(1328), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + STATE(1397), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(783), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25737,75 +26519,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2991] = 26, + [3099] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, anon_sym_STAR, - ACTIONS(751), 1, - anon_sym_from, - STATE(698), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(803), 1, + anon_sym_RPAREN, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(1030), 1, + STATE(1041), 1, sym_expression, - STATE(1330), 1, - sym_expression_list, - ACTIONS(75), 2, + STATE(1400), 1, + sym_yield, + STATE(1439), 1, + sym_with_item, + STATE(1675), 1, + sym__collection_elements, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(633), 2, - sym__newline, - sym__semicolon, - STATE(1328), 2, + STATE(1257), 2, sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + sym_parenthesized_list_splat, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25823,73 +26606,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3103] = 25, + [3213] = 26, ACTIONS(3), 1, sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(320), 1, anon_sym_await, - ACTIONS(753), 1, - anon_sym_RPAREN, - STATE(569), 1, - sym_string, - STATE(570), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(809), 1, + anon_sym_from, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1102), 1, + STATE(782), 1, + sym_string, + STATE(1122), 1, sym_expression, - STATE(1368), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + STATE(1475), 1, + sym_expression_list, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(811), 2, + sym__newline, + anon_sym_SEMI, + STATE(1549), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25907,43 +26692,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3212] = 25, + [3325] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, - sym_identifier, - ACTIONS(735), 1, - anon_sym_await, - ACTIONS(755), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1174), 1, sym_expression, - STATE(1368), 1, - sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -25951,29 +26732,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + ACTIONS(813), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1315), 3, sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25991,71 +26776,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3321] = 23, + [3433] = 24, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(945), 1, + STATE(1174), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1020), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(757), 3, + ACTIONS(813), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - ACTIONS(759), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, + STATE(1315), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 4, + ACTIONS(276), 5, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26073,51 +26860,53 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3426] = 25, + [3541] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(775), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(785), 1, anon_sym_await, - ACTIONS(763), 1, + ACTIONS(815), 1, anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(817), 1, + anon_sym_COMMA, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1075), 1, sym_expression, - STATE(1368), 1, + STATE(1412), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1411), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -26126,20 +26915,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(783), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26157,51 +26946,53 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3535] = 25, + [3653] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(775), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(785), 1, anon_sym_await, - ACTIONS(765), 1, + ACTIONS(819), 1, anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(821), 1, + anon_sym_COMMA, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1080), 1, sym_expression, - STATE(1368), 1, + STATE(1430), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1429), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -26210,20 +27001,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(783), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26241,7 +27032,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3644] = 25, + [3765] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -26256,27 +27047,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(767), 1, + ACTIONS(823), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -26285,7 +27076,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -26294,20 +27085,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26325,73 +27116,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3753] = 25, + [3874] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(801), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(769), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1094), 1, sym_expression, - STATE(1368), 1, - sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1211), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, + ACTIONS(825), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(827), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(805), 4, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26409,13 +27198,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3862] = 25, + [3979] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(69), 1, anon_sym_not, ACTIONS(71), 1, @@ -26424,33 +27211,35 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(831), 1, + anon_sym_from, + ACTIONS(833), 1, anon_sym_STAR, - STATE(698), 1, - sym_string, - STATE(700), 1, + ACTIONS(835), 1, + anon_sym_STAR_STAR, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(1031), 1, + STATE(782), 1, + sym_string, + STATE(1199), 1, sym_expression, - STATE(1377), 1, - sym_expression_list, ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(771), 2, + ACTIONS(761), 2, sym__newline, - sym__semicolon, - STATE(1328), 2, + anon_sym_SEMI, + STATE(1358), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(47), 3, @@ -26462,20 +27251,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26493,73 +27282,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3971] = 25, + [4088] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(801), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(773), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1094), 1, sym_expression, - STATE(1368), 1, - sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1211), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, + ACTIONS(837), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(839), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(805), 4, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26577,7 +27364,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4080] = 25, + [4193] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, @@ -26590,35 +27377,35 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(775), 1, - anon_sym_from, - ACTIONS(777), 1, + ACTIONS(833), 1, anon_sym_STAR, - ACTIONS(779), 1, + ACTIONS(835), 1, anon_sym_STAR_STAR, - STATE(698), 1, - sym_string, - STATE(700), 1, + ACTIONS(841), 1, + anon_sym_from, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(1002), 1, + STATE(782), 1, + sym_string, + STATE(1199), 1, sym_expression, ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(703), 2, + ACTIONS(763), 2, sym__newline, - sym__semicolon, - STATE(1168), 2, + anon_sym_SEMI, + STATE(1358), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(47), 3, @@ -26630,20 +27417,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26661,7 +27448,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4189] = 25, + [4302] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -26672,62 +27459,63 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(803), 1, + anon_sym_RPAREN, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(781), 1, - anon_sym_RBRACK, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(912), 1, + STATE(1066), 1, sym_expression, - STATE(1390), 1, + STATE(1383), 1, + sym_yield, + STATE(1615), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26745,73 +27533,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4298] = 25, + [4413] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(775), 1, - anon_sym_from, - ACTIONS(777), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(779), 1, - anon_sym_STAR_STAR, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(843), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1002), 1, + STATE(1261), 1, sym_expression, - ACTIONS(75), 2, + STATE(1577), 1, + sym_parenthesized_list_splat, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(703), 2, - sym__newline, - sym__semicolon, - STATE(1168), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26829,74 +27617,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4407] = 26, + [4522] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(729), 1, + ACTIONS(845), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(930), 1, + STATE(1261), 1, sym_expression, - STATE(1218), 1, - sym_yield, - STATE(1480), 1, - sym__collection_elements, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1095), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26914,7 +27701,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4518] = 23, + [4631] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -26923,62 +27710,64 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(689), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, sym_identifier, - ACTIONS(699), 1, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(847), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(945), 1, + STATE(1081), 1, sym_expression, + STATE(1656), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1020), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(783), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - ACTIONS(785), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 4, + ACTIONS(805), 5, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26996,71 +27785,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4623] = 23, + [4740] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, sym_identifier, - ACTIONS(699), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(849), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(945), 1, + STATE(1261), 1, sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1020), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(787), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - ACTIONS(789), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 4, + ACTIONS(793), 5, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27078,73 +27869,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4728] = 25, + [4849] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(801), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(791), 1, + ACTIONS(851), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1066), 1, sym_expression, - STATE(1368), 1, + STATE(1383), 1, + sym_yield, + STATE(1440), 1, sym_parenthesized_list_splat, + STATE(1474), 1, + sym_list_splat, + STATE(1615), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27162,7 +27955,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4837] = 25, + [4962] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -27177,27 +27970,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(793), 1, + ACTIONS(853), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -27206,7 +27999,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -27215,20 +28008,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27246,71 +28039,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4946] = 23, + [5071] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, sym_identifier, - ACTIONS(699), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(855), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(945), 1, + STATE(1261), 1, sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1020), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(795), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - ACTIONS(797), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 4, + ACTIONS(793), 5, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27328,7 +28123,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5051] = 25, + [5180] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -27343,27 +28138,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(799), 1, + ACTIONS(857), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -27372,7 +28167,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -27381,20 +28176,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27412,7 +28207,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5160] = 25, + [5289] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -27427,27 +28222,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(801), 1, + ACTIONS(859), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -27456,7 +28251,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -27465,20 +28260,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27496,7 +28291,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5269] = 27, + [5398] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -27505,66 +28300,62 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, + ACTIONS(801), 1, sym_identifier, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(803), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(930), 1, + STATE(1094), 1, sym_expression, - STATE(1218), 1, - sym_yield, - STATE(1303), 1, - sym_parenthesized_list_splat, - STATE(1304), 1, - sym_list_splat, - STATE(1480), 1, - sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1211), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + ACTIONS(861), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(863), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 4, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27582,73 +28373,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5382] = 25, + [5503] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(801), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(805), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1094), 1, sym_expression, - STATE(1368), 1, - sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1211), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, + ACTIONS(865), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(867), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(805), 4, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27666,7 +28455,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5491] = 25, + [5608] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -27677,62 +28466,63 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, - anon_sym_LPAREN, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(717), 1, + ACTIONS(773), 1, anon_sym_STAR, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, ACTIONS(807), 1, - anon_sym_RBRACK, - STATE(569), 1, + anon_sym_await, + ACTIONS(869), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(908), 1, + STATE(1084), 1, sym_expression, - STATE(1438), 1, + STATE(1489), 1, + sym_yield, + STATE(1626), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27750,7 +28540,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5600] = 26, + [5719] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -27761,63 +28551,62 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(729), 1, - anon_sym_RPAREN, - STATE(569), 1, + ACTIONS(871), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(921), 1, + STATE(1083), 1, sym_expression, - STATE(1220), 1, - sym_yield, - STATE(1391), 1, + STATE(1633), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1095), 2, - sym_list_splat, - sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27835,7 +28624,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5711] = 25, + [5828] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -27846,62 +28635,63 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(781), 1, - anon_sym_RBRACK, - STATE(569), 1, + ACTIONS(873), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(928), 1, + STATE(1073), 1, sym_expression, - STATE(1393), 1, + STATE(1423), 1, + sym_yield, + STATE(1591), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27919,7 +28709,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5820] = 25, + [5939] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -27934,27 +28724,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(809), 1, + ACTIONS(875), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -27963,7 +28753,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -27972,20 +28762,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28003,7 +28793,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5929] = 25, + [6048] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -28014,31 +28804,37 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(803), 1, + anon_sym_RPAREN, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(811), 1, - anon_sym_RBRACK, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(912), 1, + STATE(1066), 1, sym_expression, - STATE(1390), 1, + STATE(1383), 1, + sym_yield, + STATE(1440), 1, + sym_parenthesized_list_splat, + STATE(1474), 1, + sym_list_splat, + STATE(1615), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, @@ -28047,29 +28843,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1095), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28087,7 +28879,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6038] = 26, + [6161] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -28098,40 +28890,41 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(655), 1, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(813), 1, + ACTIONS(873), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(935), 1, + STATE(1066), 1, sym_expression, - STATE(1197), 1, + STATE(1383), 1, sym_yield, - STATE(1409), 1, + STATE(1440), 1, + sym_parenthesized_list_splat, + STATE(1474), 1, + sym_list_splat, + STATE(1615), 1, sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1095), 2, - sym_list_splat, - sym_parenthesized_list_splat, ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, @@ -28141,20 +28934,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28172,74 +28965,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6149] = 26, + [6274] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(803), 1, + ACTIONS(877), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(930), 1, + STATE(1261), 1, sym_expression, - STATE(1218), 1, - sym_yield, - STATE(1480), 1, - sym__collection_elements, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1095), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28257,75 +29049,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6260] = 27, + [6383] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(691), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(699), 1, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(717), 1, - anon_sym_STAR, - ACTIONS(729), 1, + ACTIONS(879), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(930), 1, + STATE(1261), 1, sym_expression, - STATE(1218), 1, - sym_yield, - STATE(1303), 1, + STATE(1577), 1, sym_parenthesized_list_splat, - STATE(1304), 1, - sym_list_splat, - STATE(1480), 1, - sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28343,7 +29133,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6373] = 25, + [6492] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -28358,27 +29148,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(815), 1, + ACTIONS(881), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -28387,7 +29177,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -28396,20 +29186,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28427,73 +29217,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6482] = 25, + [6601] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(777), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(779), 1, - anon_sym_STAR_STAR, - ACTIONS(817), 1, - anon_sym_from, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(883), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1002), 1, + STATE(1261), 1, sym_expression, - ACTIONS(75), 2, + STATE(1577), 1, + sym_parenthesized_list_splat, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(701), 2, - sym__newline, - sym__semicolon, - STATE(1168), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28511,7 +29301,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6591] = 25, + [6710] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -28526,27 +29316,27 @@ static const uint16_t ts_small_parse_table[] = { sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(787), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(795), 1, anon_sym_await, - ACTIONS(819), 1, + ACTIONS(885), 1, anon_sym_RPAREN, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1261), 1, sym_expression, - STATE(1368), 1, + STATE(1577), 1, sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, @@ -28555,7 +29345,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, + STATE(1570), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -28564,20 +29354,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28595,71 +29385,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6700] = 24, + [6819] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(731), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(735), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(719), 1, + anon_sym_STAR, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1102), 1, + STATE(782), 1, + sym_string, + STATE(1179), 1, sym_expression, - STATE(1368), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + STATE(1572), 1, + sym_expression_list, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(887), 2, + sym__newline, + anon_sym_SEMI, + STATE(1549), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1310), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(733), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28677,71 +29469,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6806] = 24, + [6928] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(717), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, anon_sym_STAR, - ACTIONS(821), 1, - anon_sym_COLON, - ACTIONS(823), 1, - anon_sym_RBRACK, - STATE(569), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(873), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1042), 1, + STATE(1066), 1, sym_expression, + STATE(1383), 1, + sym_yield, + STATE(1615), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1371), 3, - sym_list_splat, - sym__index_expression, - sym_slice, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28759,71 +29554,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6912] = 24, + [7039] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(717), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, anon_sym_STAR, - ACTIONS(821), 1, - anon_sym_COLON, - STATE(569), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(889), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1042), 1, + STATE(1088), 1, sym_expression, - STATE(1454), 1, - sym_index_expression_list, + STATE(1594), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1243), 3, + STATE(1257), 3, sym_list_splat, - sym__index_expression, - sym_slice, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28841,71 +29638,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7018] = 24, + [7148] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(717), 1, + ACTIONS(833), 1, anon_sym_STAR, - ACTIONS(821), 1, - anon_sym_COLON, - STATE(569), 1, - sym_string, - STATE(570), 1, + ACTIONS(835), 1, + anon_sym_STAR_STAR, + ACTIONS(841), 1, + anon_sym_from, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1042), 1, + STATE(782), 1, + sym_string, + STATE(1199), 1, sym_expression, - STATE(1407), 1, - sym_index_expression_list, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(763), 2, + sym__newline, + anon_sym_SEMI, + STATE(1358), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1203), 3, - sym_list_splat, - sym__index_expression, - sym_slice, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28923,65 +29722,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7124] = 18, + [7257] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, anon_sym_await, - STATE(569), 1, + ACTIONS(891), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(669), 1, + STATE(719), 1, sym_primary_expression, + STATE(1261), 1, + sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(265), 3, - anon_sym_DOT, - anon_sym_STAR, - anon_sym_SLASH, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(825), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - ACTIONS(306), 5, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(306), 4, sym_integer, - sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - ACTIONS(298), 9, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - STATE(649), 17, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28999,41 +29806,43 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7218] = 24, + [7366] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(715), 1, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(893), 1, anon_sym_RPAREN, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(992), 1, + STATE(1261), 1, sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -29041,29 +29850,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1118), 3, + STATE(1570), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29081,41 +29890,43 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7324] = 24, + [7475] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(717), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(821), 1, - anon_sym_COLON, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(895), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1042), 1, + STATE(1261), 1, sym_expression, - STATE(1469), 1, - sym_index_expression_list, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -29123,29 +29934,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1263), 3, + STATE(1570), 3, sym_list_splat, - sym__index_expression, - sym_slice, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29163,41 +29974,43 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7430] = 24, + [7584] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(655), 1, - anon_sym_yield, - ACTIONS(713), 1, + ACTIONS(769), 1, anon_sym_LPAREN, - ACTIONS(715), 1, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(897), 1, anon_sym_RPAREN, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(992), 1, + STATE(1261), 1, sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -29205,29 +30018,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1118), 3, + STATE(1570), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29245,41 +30058,43 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7536] = 24, + [7693] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(717), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(821), 1, - anon_sym_COLON, - ACTIONS(827), 1, - anon_sym_RBRACK, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(899), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1042), 1, + STATE(1261), 1, sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -29287,29 +30102,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1371), 3, + STATE(1570), 3, sym_list_splat, - sym__index_expression, - sym_slice, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29327,48 +30142,52 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7642] = 24, + [7802] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(851), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1055), 1, + STATE(1066), 1, sym_expression, - STATE(1453), 1, - sym_expression_list, + STATE(1383), 1, + sym_yield, + STATE(1615), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1375), 2, + STATE(1257), 2, sym_list_splat, - sym_dictionary_splat, - ACTIONS(296), 3, + sym_parenthesized_list_splat, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -29377,20 +30196,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29408,70 +30227,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7747] = 24, + [7913] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(889), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1065), 1, + STATE(1081), 1, sym_expression, - STATE(1490), 1, - sym_expression_list, + STATE(1656), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1375), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29489,70 +30311,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7852] = 24, + [8022] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(719), 1, anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + ACTIONS(901), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1040), 1, + STATE(1261), 1, sym_expression, - STATE(1446), 1, - sym_expression_list, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1375), 2, - sym_list_splat, - sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29570,69 +30395,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7957] = 23, + [8131] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(655), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, anon_sym_yield, - ACTIONS(713), 1, - anon_sym_LPAREN, - ACTIONS(717), 1, + ACTIONS(773), 1, anon_sym_STAR, - STATE(569), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(803), 1, + anon_sym_RPAREN, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(992), 1, + STATE(1079), 1, sym_expression, + STATE(1400), 1, + sym_yield, + STATE(1675), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1257), 2, + sym_list_splat, + sym_parenthesized_list_splat, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1118), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29650,70 +30480,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8060] = 24, + [8242] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(635), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, anon_sym_STAR, - STATE(698), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(847), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(1005), 1, + STATE(1086), 1, sym_expression, - STATE(1380), 1, - sym_expression_list, - ACTIONS(75), 2, + STATE(1679), 1, + sym__collection_elements, + ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1328), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + STATE(1257), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29731,69 +30564,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8165] = 23, + [8351] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(717), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(773), 1, anon_sym_STAR, - ACTIONS(821), 1, - anon_sym_COLON, - STATE(569), 1, + ACTIONS(777), 1, + anon_sym_LPAREN, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(903), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1042), 1, + STATE(1081), 1, sym_expression, + STATE(1656), 1, + sym__collection_elements, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1371), 3, + STATE(1257), 3, sym_list_splat, - sym__index_expression, - sym_slice, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29811,11 +30648,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8268] = 24, + [8460] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -29832,30 +30667,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(905), 1, + anon_sym_COLON, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1050), 1, + STATE(1246), 1, sym_expression, - STATE(1437), 1, - sym_expression_list, + STATE(1693), 1, + sym_index_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1375), 2, - sym_list_splat, - sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1407), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -29867,14 +30705,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29892,68 +30730,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8373] = 23, + [8566] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(829), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(787), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1261), 1, sym_expression, + STATE(1577), 1, + sym_parenthesized_list_splat, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1570), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(793), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29971,11 +30812,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8475] = 23, + [8672] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -29992,28 +30831,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(831), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(905), 1, + anon_sym_COLON, + ACTIONS(907), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1246), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1508), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -30025,14 +30869,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30050,68 +30894,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8577] = 23, + [8778] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(777), 1, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(773), 1, anon_sym_STAR, - ACTIONS(779), 1, - anon_sym_STAR_STAR, - STATE(698), 1, + ACTIONS(813), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1002), 1, + STATE(1174), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1168), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + STATE(1315), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30129,11 +30976,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8679] = 23, + [8884] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30150,28 +30995,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(833), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(905), 1, + anon_sym_COLON, + ACTIONS(909), 1, + anon_sym_RBRACK, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1246), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1508), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -30183,14 +31033,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30208,11 +31058,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8781] = 23, + [8990] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30225,32 +31073,37 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(835), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(813), 1, + anon_sym_RPAREN, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1174), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1315), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, @@ -30262,14 +31115,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30287,11 +31140,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8883] = 23, + [9096] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30308,28 +31159,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(837), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(905), 1, + anon_sym_COLON, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1246), 1, sym_expression, + STATE(1660), 1, + sym_index_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1377), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -30341,14 +31197,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30366,19 +31222,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8985] = 23, + [9202] = 18, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, @@ -30387,47 +31235,52 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(839), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(735), 1, sym_primary_expression, - STATE(1112), 1, - sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, + ACTIONS(265), 3, + anon_sym_DOT, + anon_sym_STAR, + anon_sym_SLASH, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(911), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(306), 5, sym_integer, + sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(583), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, + ACTIONS(298), 9, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30445,11 +31298,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9087] = 23, + [9296] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30466,28 +31317,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(635), 1, - anon_sym_STAR, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(905), 1, + anon_sym_COLON, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(931), 1, + STATE(1246), 1, sym_expression, + STATE(1669), 1, + sym_index_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1010), 2, - sym_list_splat, - sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1414), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -30499,14 +31355,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30524,11 +31380,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9189] = 23, + [9402] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30545,28 +31399,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(841), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + ACTIONS(905), 1, + anon_sym_COLON, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1246), 1, sym_expression, + STATE(1653), 1, + sym_index_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1432), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -30578,14 +31437,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30603,11 +31462,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9291] = 23, + [9508] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30620,32 +31477,35 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(695), 1, + anon_sym_yield, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(843), 1, - anon_sym_RBRACE, - STATE(569), 1, + ACTIONS(769), 1, + anon_sym_LPAREN, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1174), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1315), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(306), 4, sym_integer, sym_true, @@ -30657,14 +31517,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30682,7 +31542,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9393] = 23, + [9611] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -30703,24 +31563,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(845), 1, - anon_sym_RBRACE, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1237), 1, sym_expression, + STATE(1637), 1, + sym_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, + STATE(1510), 2, + sym_list_splat, sym_dictionary_splat, - sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -30736,14 +31598,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30761,71 +31623,88 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9495] = 9, + [9716] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(853), 1, - anon_sym_except, - ACTIONS(855), 1, - anon_sym_finally, - STATE(445), 1, - sym_else_clause, - STATE(520), 1, - sym_finally_clause, - STATE(308), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(847), 13, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, + ACTIONS(83), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(574), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(719), 1, + anon_sym_STAR, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1180), 1, + sym_expression, + STATE(1579), 1, + sym_expression_list, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(849), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + STATE(1549), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [9568] = 23, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [9821] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -30844,22 +31723,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, + ACTIONS(773), 1, anon_sym_STAR, - STATE(569), 1, + ACTIONS(905), 1, + anon_sym_COLON, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1246), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1459), 1, - sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -30867,6 +31744,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1508), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(306), 4, sym_integer, sym_true, @@ -30878,14 +31759,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30903,9 +31784,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9669] = 23, + [9924] = 24, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -30922,25 +31805,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(717), 1, + ACTIONS(719), 1, anon_sym_STAR, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1240), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1466), 1, - sym_type, + STATE(1625), 1, + sym_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1510), 2, + sym_list_splat, + sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -30956,14 +31840,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30981,9 +31865,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9770] = 23, + [10029] = 24, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -31000,25 +31886,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(717), 1, + ACTIONS(719), 1, anon_sym_STAR, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1236), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1415), 1, - sym_type, + STATE(1610), 1, + sym_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1510), 2, + sym_list_splat, + sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -31034,14 +31921,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31059,9 +31946,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9871] = 22, + [10134] = 24, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -31078,24 +31967,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(859), 1, - anon_sym_COLON, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1049), 1, + STATE(1235), 1, sym_expression, + STATE(1603), 1, + sym_expression_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(857), 2, - anon_sym_COMMA, - anon_sym_RBRACK, + STATE(1510), 2, + sym_list_splat, + sym_dictionary_splat, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -31111,14 +32002,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31136,125 +32027,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9970] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(863), 17, - anon_sym_as, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(861), 36, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - sym_type_conversion, - [10031] = 3, + [10239] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(867), 17, - anon_sym_as, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(53), 1, anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(865), 36, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - sym_type_conversion, - [10092] = 22, - ACTIONS(3), 1, - sym_comment, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -31271,24 +32048,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(871), 1, - anon_sym_COLON, - STATE(569), 1, + ACTIONS(913), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1071), 1, + STATE(1331), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(869), 2, - anon_sym_COMMA, - anon_sym_RBRACK, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -31304,14 +32081,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31329,67 +32106,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10191] = 23, + [10341] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(717), 1, + ACTIONS(833), 1, anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, + ACTIONS(835), 1, + anon_sym_STAR_STAR, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1022), 1, + STATE(782), 1, + sym_string, + STATE(1199), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1465), 1, - sym_type, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1358), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31407,67 +32185,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10292] = 23, + [10443] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - ACTIONS(717), 1, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + ACTIONS(797), 1, anon_sym_STAR, - STATE(569), 1, + ACTIONS(799), 1, + anon_sym_STAR_STAR, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1022), 1, + STATE(1164), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1450), 1, - sym_type, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1273), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31485,9 +32264,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10393] = 23, + [10545] = 23, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -31504,25 +32285,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(915), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1331), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1282), 1, - sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -31538,14 +32318,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31563,73 +32343,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10494] = 9, + [10647] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(879), 1, - anon_sym_except, - ACTIONS(881), 1, - anon_sym_finally, - STATE(431), 1, - sym_else_clause, - STATE(498), 1, - sym_finally_clause, - STATE(293), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(875), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, + ACTIONS(53), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(873), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [10567] = 23, - ACTIONS(3), 1, - sym_comment, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -31646,25 +32364,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(917), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1331), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1121), 1, - sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -31680,14 +32397,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31705,71 +32422,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10668] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(881), 1, - anon_sym_finally, - ACTIONS(883), 1, - anon_sym_except, - STATE(431), 1, - sym_else_clause, - STATE(498), 1, - sym_finally_clause, - STATE(292), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(875), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(873), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [10741] = 22, + [10749] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -31790,20 +32443,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(919), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1112), 1, + STATE(1331), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1378), 2, + STATE(1563), 2, sym_dictionary_splat, sym_pair, ACTIONS(296), 3, @@ -31821,14 +32476,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31846,67 +32501,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10840] = 23, + [10851] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(885), 1, - anon_sym_STAR, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(921), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1063), 1, + STATE(1331), 1, sym_expression, - STATE(1185), 1, - sym_list_splat, - STATE(1217), 1, - sym_type, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31924,73 +32580,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10941] = 9, + [10953] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(879), 1, - anon_sym_except, - ACTIONS(881), 1, - anon_sym_finally, - STATE(425), 1, - sym_else_clause, - STATE(555), 1, - sym_finally_clause, - STATE(293), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(847), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, + ACTIONS(53), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(849), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [11014] = 23, - ACTIONS(3), 1, - sym_comment, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -32007,25 +32601,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(923), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1331), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1461), 1, - sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -32041,14 +32634,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32066,108 +32659,45 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11115] = 9, + [11055] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(881), 1, - anon_sym_finally, - ACTIONS(883), 1, - anon_sym_except, - STATE(425), 1, - sym_else_clause, - STATE(555), 1, - sym_finally_clause, - STATE(292), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(847), 13, - sym__dedent, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(849), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [11188] = 23, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, + ACTIONS(312), 1, sym__template_string_start, ACTIONS(578), 1, anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(925), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1331), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1406), 1, - sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -32183,14 +32713,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32208,259 +32738,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11289] = 9, + [11157] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(855), 1, - anon_sym_finally, - ACTIONS(887), 1, - anon_sym_except, - STATE(445), 1, - sym_else_clause, - STATE(520), 1, - sym_finally_clause, - STATE(289), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(847), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, + ACTIONS(53), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(849), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, + ACTIONS(263), 1, sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [11362] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(853), 1, - anon_sym_except, - ACTIONS(855), 1, - anon_sym_finally, - STATE(415), 1, - sym_else_clause, - STATE(542), 1, - sym_finally_clause, - STATE(308), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(875), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, + ACTIONS(288), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(873), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, + ACTIONS(300), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(308), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [11435] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(855), 1, - anon_sym_finally, - ACTIONS(887), 1, - anon_sym_except, - STATE(415), 1, - sym_else_clause, - STATE(542), 1, - sym_finally_clause, - STATE(289), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(875), 13, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(873), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [11508] = 23, - ACTIONS(3), 1, - sym_comment, - ACTIONS(609), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(891), 1, - anon_sym_STAR, - ACTIONS(895), 1, - anon_sym_COLON, - ACTIONS(897), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, - anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + ACTIONS(927), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(1000), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1331), 1, sym_expression, - STATE(1354), 1, - sym_exception_list, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32478,67 +32817,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11609] = 23, + [11259] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, - anon_sym_await, - ACTIONS(903), 1, - anon_sym_STAR, - ACTIONS(905), 1, - anon_sym_COLON, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + ACTIONS(929), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(1034), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1331), 1, sym_expression, - STATE(1346), 1, - sym_exception_list, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32556,9 +32896,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11710] = 23, + [11361] = 23, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, ACTIONS(263), 1, sym_identifier, ACTIONS(288), 1, @@ -32575,25 +32917,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(931), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1022), 1, + STATE(1331), 1, sym_expression, - STATE(1117), 1, - sym_list_splat, - STATE(1431), 1, - sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -32609,14 +32950,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32634,64 +32975,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11811] = 21, + [11463] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(933), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1069), 1, + STATE(1331), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(907), 2, - sym__newline, - sym__semicolon, - ACTIONS(47), 3, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32709,42 +33054,46 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11907] = 21, + [11565] = 23, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(935), 1, + anon_sym_RBRACE, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(945), 1, + STATE(1331), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(973), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -32753,20 +33102,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32784,65 +33133,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12003] = 22, + [11667] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(895), 1, - anon_sym_COLON, - ACTIONS(897), 1, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(719), 1, + anon_sym_STAR, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, - anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(1000), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1117), 1, sym_expression, - STATE(1354), 1, - sym_exception_list, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + STATE(1267), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32860,7 +33212,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12101] = 21, + [11769] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -32879,22 +33231,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1085), 1, + STATE(1172), 1, sym_expression, + STATE(1308), 1, + sym_list_splat, + STATE(1447), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(909), 2, - anon_sym_COMMA, - anon_sym_RBRACK, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -32910,14 +33265,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32935,65 +33290,67 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12197] = 22, + [11870] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(263), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(308), 1, anon_sym_await, - ACTIONS(911), 1, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(999), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1172), 1, sym_expression, - STATE(1238), 1, - sym_with_item, - STATE(1432), 1, - sym_with_clause, - ACTIONS(621), 2, + STATE(1308), 1, + sym_list_splat, + STATE(1583), 1, + sym_type, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33011,214 +33368,258 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12295] = 21, + [11971] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(943), 1, + anon_sym_except, + ACTIONS(945), 1, + anon_sym_finally, + STATE(470), 1, + sym_else_clause, + STATE(575), 1, + sym_finally_clause, + STATE(330), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(939), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(651), 1, - anon_sym_not, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(945), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(1020), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(695), 5, + sym_ellipsis, + sym_float, + ACTIONS(937), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [12391] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(494), 1, anon_sym_await, - ACTIONS(568), 1, + sym_true, + sym_false, + sym_none, + [12044] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(945), 1, + anon_sym_finally, + ACTIONS(947), 1, + anon_sym_except, + STATE(470), 1, + sym_else_clause, + STATE(575), 1, + sym_finally_clause, + STATE(331), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(939), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(1069), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(913), 2, - sym__newline, - sym__semicolon, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 4, + sym_ellipsis, + sym_float, + ACTIONS(937), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + [12117] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(951), 1, + anon_sym_except, + ACTIONS(953), 1, + anon_sym_finally, + STATE(472), 1, + sym_else_clause, + STATE(518), 1, + sym_finally_clause, + STATE(328), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(939), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(937), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [12487] = 21, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [12190] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(957), 1, + anon_sym_COLON, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1069), 1, + STATE(1247), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(915), 2, - sym__newline, - sym__semicolon, - ACTIONS(47), 3, + ACTIONS(955), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33236,7 +33637,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12583] = 21, + [12289] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -33255,22 +33656,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1087), 1, + STATE(1172), 1, sym_expression, + STATE(1308), 1, + sym_list_splat, + STATE(1697), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(917), 2, - anon_sym_COMMA, - anon_sym_RBRACK, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -33286,14 +33690,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33311,42 +33715,45 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12679] = 21, + [12390] = 23, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(945), 1, + STATE(1172), 1, sym_expression, + STATE(1308), 1, + sym_list_splat, + STATE(1639), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(987), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -33355,20 +33762,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33386,65 +33793,67 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12775] = 22, + [12491] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - ACTIONS(911), 1, + ACTIONS(568), 1, anon_sym_LPAREN, - STATE(718), 1, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(959), 1, + anon_sym_STAR, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(999), 1, + STATE(1250), 1, sym_expression, - STATE(1238), 1, - sym_with_item, - STATE(1478), 1, - sym_with_clause, - ACTIONS(621), 2, + STATE(1406), 1, + sym_type, + STATE(1463), 1, + sym_list_splat, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33462,65 +33871,67 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12873] = 22, + [12592] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(617), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(897), 1, + ACTIONS(963), 1, + anon_sym_STAR, + ACTIONS(967), 1, + anon_sym_COLON, + ACTIONS(969), 1, anon_sym_not, - ACTIONS(899), 1, + ACTIONS(971), 1, anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(973), 1, anon_sym_await, - ACTIONS(911), 1, - anon_sym_LPAREN, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + STATE(794), 1, sym_string, - STATE(722), 1, + STATE(795), 1, sym_template_string, - STATE(999), 1, + STATE(822), 1, + sym_primary_expression, + STATE(1207), 1, sym_expression, - STATE(1238), 1, - sym_with_item, - STATE(1440), 1, - sym_with_clause, - ACTIONS(621), 2, + STATE(1552), 1, + sym_exception_list, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33538,65 +33949,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12971] = 22, + [12693] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, - anon_sym_await, - ACTIONS(905), 1, + ACTIONS(977), 1, anon_sym_COLON, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(1034), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1249), 1, sym_expression, - STATE(1346), 1, - sym_exception_list, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(975), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33614,65 +34026,131 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13069] = 22, + [12792] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(951), 1, + anon_sym_except, + ACTIONS(953), 1, + anon_sym_finally, + STATE(468), 1, + sym_else_clause, + STATE(534), 1, + sym_finally_clause, + STATE(328), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(979), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(981), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - ACTIONS(899), 1, anon_sym_lambda, - ACTIONS(901), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(919), 1, - anon_sym_RPAREN, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + sym_true, + sym_false, + sym_none, + [12865] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(999), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1172), 1, sym_expression, - STATE(1298), 1, - sym_with_item, - ACTIONS(621), 2, + STATE(1308), 1, + sym_list_splat, + STATE(1617), 1, + sym_type, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33690,42 +34168,45 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13167] = 21, + [12966] = 23, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(937), 1, + STATE(1172), 1, sym_expression, + STATE(1308), 1, + sym_list_splat, + STATE(1341), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1018), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -33734,20 +34215,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33765,7 +34246,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13263] = 21, + [13067] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -33784,22 +34265,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1090), 1, + STATE(1172), 1, sym_expression, + STATE(1308), 1, + sym_list_splat, + STATE(1642), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(921), 2, - anon_sym_COMMA, - anon_sym_RBRACK, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -33815,14 +34299,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33840,65 +34324,195 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13359] = 22, + [13168] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(617), 1, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(943), 1, + anon_sym_except, + ACTIONS(945), 1, + anon_sym_finally, + STATE(479), 1, + sym_else_clause, + STATE(561), 1, + sym_finally_clause, + STATE(330), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(979), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(981), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [13241] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(953), 1, + anon_sym_finally, + ACTIONS(983), 1, + anon_sym_except, + STATE(472), 1, + sym_else_clause, + STATE(518), 1, + sym_finally_clause, + STATE(329), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(939), 13, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(937), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - ACTIONS(899), 1, anon_sym_lambda, - ACTIONS(901), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(911), 1, + sym_true, + sym_false, + sym_none, + [13314] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, anon_sym_LPAREN, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + ACTIONS(985), 1, + anon_sym_STAR, + ACTIONS(987), 1, + anon_sym_COLON, + STATE(794), 1, sym_string, - STATE(722), 1, + STATE(795), 1, sym_template_string, - STATE(999), 1, + STATE(822), 1, + sym_primary_expression, + STATE(1204), 1, sym_expression, - STATE(1238), 1, - sym_with_item, - STATE(1385), 1, - sym_with_clause, - ACTIONS(621), 2, + STATE(1548), 1, + sym_exception_list, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33916,42 +34530,44 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13457] = 21, + [13415] = 22, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_STAR_STAR, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - ACTIONS(761), 1, - anon_sym_lambda, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(941), 1, + STATE(1331), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(1023), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + STATE(1563), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -33960,20 +34576,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33991,65 +34607,131 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13553] = 22, + [13514] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(945), 1, + anon_sym_finally, + ACTIONS(947), 1, + anon_sym_except, + STATE(479), 1, + sym_else_clause, + STATE(561), 1, + sym_finally_clause, + STATE(331), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(979), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(981), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - ACTIONS(899), 1, anon_sym_lambda, - ACTIONS(901), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(923), 1, - anon_sym_RPAREN, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + sym_true, + sym_false, + sym_none, + [13587] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(999), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1172), 1, sym_expression, - STATE(1298), 1, - sym_with_item, - ACTIONS(621), 2, + STATE(1308), 1, + sym_list_splat, + STATE(1616), 1, + sym_type, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34067,7 +34749,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13651] = 21, + [13688] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -34086,22 +34768,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1100), 1, + STATE(1172), 1, sym_expression, + STATE(1308), 1, + sym_list_splat, + STATE(1618), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(925), 2, - anon_sym_COMMA, - anon_sym_RBRACK, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, @@ -34117,14 +34802,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34142,7 +34827,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13747] = 22, + [13789] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -34161,20 +34846,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(717), 1, + ACTIONS(773), 1, anon_sym_STAR, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1075), 1, + STATE(1172), 1, sym_expression, - STATE(1324), 1, + STATE(1308), 1, sym_list_splat, + STATE(1622), 1, + sym_type, ACTIONS(304), 2, sym_ellipsis, sym_float, @@ -34193,14 +34880,154 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [13890] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(953), 1, + anon_sym_finally, + ACTIONS(983), 1, + anon_sym_except, + STATE(468), 1, + sym_else_clause, + STATE(534), 1, + sym_finally_clause, + STATE(329), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(979), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(981), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [13963] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + ACTIONS(989), 1, + anon_sym_LPAREN, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1200), 1, + sym_expression, + STATE(1434), 1, + sym_with_item, + STATE(1607), 1, + sym_with_clause, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(965), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34218,7 +35045,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13845] = 21, + [14061] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, @@ -34231,28 +35058,28 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(1069), 1, + STATE(782), 1, + sym_string, + STATE(1224), 1, sym_expression, ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(927), 2, + ACTIONS(991), 2, sym__newline, - sym__semicolon, + anon_sym_SEMI, ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, @@ -34262,20 +35089,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34293,63 +35120,64 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13941] = 21, + [14157] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(1036), 1, + STATE(1224), 1, sym_expression, - STATE(1379), 1, - sym_exception_list, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(993), 2, + sym__newline, + anon_sym_SEMI, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34367,63 +35195,64 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14036] = 21, + [14253] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(999), 1, + STATE(1224), 1, sym_expression, - STATE(1298), 1, - sym_with_item, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(995), 2, + sym__newline, + anon_sym_SEMI, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34441,887 +35270,574 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14131] = 5, + [14349] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(933), 1, - anon_sym_except, - STATE(289), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(929), 13, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(597), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(603), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(931), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + ACTIONS(691), 1, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, + ACTIONS(801), 1, sym_identifier, + ACTIONS(807), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [14194] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(940), 1, - anon_sym_elif, - STATE(382), 1, - aux_sym_if_statement_repeat1, - STATE(417), 1, - sym_elif_clause, - STATE(524), 1, - sym_else_clause, - ACTIONS(936), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(725), 1, + sym_primary_expression, + STATE(1098), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(1203), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(938), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(805), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [14263] = 8, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [14445] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(940), 1, - anon_sym_elif, - STATE(309), 1, - aux_sym_if_statement_repeat1, - STATE(417), 1, - sym_elif_clause, - STATE(521), 1, - sym_else_clause, - ACTIONS(942), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1276), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(944), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(997), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [14332] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [14541] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(950), 1, - anon_sym_except, - STATE(292), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(948), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, + ACTIONS(1001), 17, + anon_sym_as, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, + anon_sym_EQ, anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(946), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(999), 35, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_if, + anon_sym_COLON, anon_sym_else, anon_sym_async, anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [14395] = 5, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [14601] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(953), 1, - anon_sym_except, - STATE(293), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(929), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(631), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(639), 1, anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(967), 1, + anon_sym_COLON, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1207), 1, + sym_expression, + STATE(1552), 1, + sym_exception_list, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(931), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(965), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [14458] = 3, + STATE(1176), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [14699] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(956), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1266), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(958), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(1003), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [14517] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [14795] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(960), 13, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(597), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(603), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(962), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + ACTIONS(691), 1, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, + ACTIONS(801), 1, sym_identifier, + ACTIONS(807), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [14576] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(956), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(725), 1, + sym_primary_expression, + STATE(1094), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(1211), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(958), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, + ACTIONS(306), 4, sym_integer, - sym_identifier, - anon_sym_await, sym_true, sym_false, sym_none, - [14635] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(964), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(966), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(805), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [14694] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(968), 1, - anon_sym_for, - ACTIONS(970), 1, - anon_sym_with, - ACTIONS(972), 1, - anon_sym_def, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [14767] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(974), 1, - anon_sym_for, - ACTIONS(976), 1, - anon_sym_with, - ACTIONS(978), 1, - anon_sym_def, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [14840] = 8, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [14891] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(984), 1, - anon_sym_elif, - STATE(312), 1, - aux_sym_if_statement_repeat1, - STATE(433), 1, - sym_elif_clause, - STATE(560), 1, - sym_else_clause, - ACTIONS(982), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(980), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, + ACTIONS(300), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(308), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [14909] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(960), 13, - sym__dedent, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + ACTIONS(773), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1264), 1, + sym_expression, + STATE(1519), 1, + sym_list_splat, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(962), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, sym_integer, - sym_identifier, - anon_sym_await, sym_true, sym_false, sym_none, - [14968] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(940), 1, - anon_sym_elif, - STATE(290), 1, - aux_sym_if_statement_repeat1, - STATE(417), 1, - sym_elif_clause, - STATE(502), 1, - sym_else_clause, - ACTIONS(982), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(980), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15037] = 21, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [14989] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(631), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(639), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(897), 1, + ACTIONS(969), 1, anon_sym_not, - ACTIONS(899), 1, + ACTIONS(971), 1, anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(973), 1, anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + ACTIONS(1005), 1, + anon_sym_RPAREN, + STATE(794), 1, sym_string, - STATE(722), 1, + STATE(795), 1, sym_template_string, - STATE(1033), 1, + STATE(822), 1, + sym_primary_expression, + STATE(1200), 1, sym_expression, - STATE(1345), 1, - sym_exception_list, - ACTIONS(621), 2, + STATE(1501), 1, + sym_with_item, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35339,643 +35855,441 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15132] = 8, + [15087] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(984), 1, - anon_sym_elif, - STATE(310), 1, - aux_sym_if_statement_repeat1, - STATE(433), 1, - sym_elif_clause, - STATE(522), 1, - sym_else_clause, - ACTIONS(942), 13, - sym__dedent, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, + ACTIONS(83), 1, sym__template_string_start, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(574), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1224), 1, + sym_expression, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(944), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(1007), 2, + sym__newline, + anon_sym_SEMI, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15201] = 3, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [15183] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(986), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1268), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(988), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(1009), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15260] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [15279] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(986), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(597), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(603), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(725), 1, + sym_primary_expression, + STATE(1090), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(988), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + STATE(1178), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(805), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15319] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [15375] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(992), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(597), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(603), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(725), 1, + sym_primary_expression, + STATE(1094), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(990), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + STATE(1128), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(805), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15378] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [15471] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(994), 1, - anon_sym_except, - STATE(308), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(948), 13, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(647), 1, sym__string_start, + ACTIONS(649), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + ACTIONS(989), 1, anon_sym_LPAREN, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1200), 1, + sym_expression, + STATE(1434), 1, + sym_with_item, + STATE(1589), 1, + sym_with_clause, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(946), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(629), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(965), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15441] = 8, + STATE(1176), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [15569] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - ACTIONS(940), 1, - anon_sym_elif, - STATE(382), 1, - aux_sym_if_statement_repeat1, - STATE(417), 1, - sym_elif_clause, - STATE(491), 1, - sym_else_clause, - ACTIONS(997), 13, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(647), 1, sym__string_start, + ACTIONS(649), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + ACTIONS(989), 1, anon_sym_LPAREN, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1200), 1, + sym_expression, + STATE(1434), 1, + sym_with_item, + STATE(1597), 1, + sym_with_clause, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(999), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(629), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(965), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15510] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(984), 1, - anon_sym_elif, - STATE(369), 1, - aux_sym_if_statement_repeat1, - STATE(433), 1, - sym_elif_clause, - STATE(489), 1, - sym_else_clause, - ACTIONS(997), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(999), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15579] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(992), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(990), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15638] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(877), 1, - anon_sym_else, - ACTIONS(984), 1, - anon_sym_elif, - STATE(369), 1, - aux_sym_if_statement_repeat1, - STATE(433), 1, - sym_elif_clause, - STATE(526), 1, - sym_else_clause, - ACTIONS(936), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(938), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15707] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(964), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(966), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [15766] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(953), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(490), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(955), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35993,39 +36307,42 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15858] = 20, + [15667] = 21, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(899), 1, + STATE(1291), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(1011), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -36034,20 +36351,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36065,61 +36382,122 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15950] = 20, + [15763] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(1015), 17, + anon_sym_as, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_EQ, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1013), 35, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, anon_sym_LBRACK, - ACTIONS(619), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [15823] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(897), 1, + ACTIONS(969), 1, anon_sym_not, - ACTIONS(899), 1, + ACTIONS(971), 1, anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(973), 1, anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + ACTIONS(1017), 1, + anon_sym_RPAREN, + STATE(794), 1, sym_string, - STATE(722), 1, + STATE(795), 1, sym_template_string, - STATE(994), 1, + STATE(822), 1, + sym_primary_expression, + STATE(1200), 1, sym_expression, - ACTIONS(621), 2, + STATE(1501), 1, + sym_with_item, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36137,61 +36515,64 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16042] = 20, + [15921] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + ACTIONS(829), 1, + anon_sym_lambda, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(972), 1, + STATE(1094), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + STATE(1111), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36209,61 +36590,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16134] = 20, + [16017] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + ACTIONS(989), 1, + anon_sym_LPAREN, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(652), 1, + STATE(822), 1, sym_primary_expression, - STATE(1169), 1, + STATE(1200), 1, sym_expression, - ACTIONS(304), 2, + STATE(1434), 1, + sym_with_item, + STATE(1670), 1, + sym_with_clause, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36281,61 +36666,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16226] = 20, + [16115] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + ACTIONS(987), 1, + anon_sym_COLON, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(652), 1, + STATE(822), 1, sym_primary_expression, - STATE(890), 1, + STATE(1204), 1, sym_expression, - ACTIONS(304), 2, + STATE(1548), 1, + sym_exception_list, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36353,421 +36742,236 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16318] = 20, + [16213] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(1023), 1, + anon_sym_elif, + STATE(321), 1, + aux_sym_if_statement_repeat1, + STATE(463), 1, + sym_elif_clause, + STATE(514), 1, + sym_else_clause, + ACTIONS(1019), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1126), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1021), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16410] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(494), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(963), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16502] = 20, + [16282] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1027), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(651), 1, - anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(898), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(695), 5, + sym_ellipsis, + sym_float, + ACTIONS(1025), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16594] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(494), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(1053), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16686] = 20, + [16341] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(1031), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1166), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1029), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16778] = 20, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [16400] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(652), 1, + STATE(822), 1, sym_primary_expression, - STATE(1161), 1, + STATE(1200), 1, sym_expression, - ACTIONS(304), 2, + STATE(1501), 1, + sym_with_item, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36785,493 +36989,475 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16870] = 20, + [16495] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(1023), 1, + anon_sym_elif, + STATE(354), 1, + aux_sym_if_statement_repeat1, + STATE(463), 1, + sym_elif_clause, + STATE(525), 1, + sym_else_clause, + ACTIONS(1033), 13, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(951), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(490), 5, + sym_ellipsis, + sym_float, + ACTIONS(1035), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16962] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(651), 1, + anon_sym_class, anon_sym_not, - ACTIONS(653), 1, anon_sym_lambda, - ACTIONS(689), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(699), 1, anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(653), 1, - sym_primary_expression, - STATE(904), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17054] = 20, + [16564] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(1037), 13, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(1094), 1, - sym_expression, - ACTIONS(75), 2, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(490), 5, + ACTIONS(1039), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17146] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + anon_sym_class, + anon_sym_not, anon_sym_lambda, - ACTIONS(308), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(310), 1, + sym_true, + sym_false, + sym_none, + [16623] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1027), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1154), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1025), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17238] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + anon_sym_class, + anon_sym_not, anon_sym_lambda, - ACTIONS(308), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(310), 1, + sym_true, + sym_false, + sym_none, + [16682] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(1041), 1, + anon_sym_elif, + STATE(326), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + STATE(558), 1, + sym_else_clause, + ACTIONS(1019), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1150), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, + sym_ellipsis, + sym_float, + ACTIONS(1021), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + [16751] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1045), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1043), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17330] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + anon_sym_class, + anon_sym_not, anon_sym_lambda, - ACTIONS(308), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(310), 1, + sym_true, + sym_false, + sym_none, + [16810] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(1023), 1, + anon_sym_elif, + STATE(354), 1, + aux_sym_if_statement_repeat1, + STATE(463), 1, + sym_elif_clause, + STATE(596), 1, + sym_else_clause, + ACTIONS(1047), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1106), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, + sym_ellipsis, + sym_float, + ACTIONS(1049), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + [16879] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(949), 1, + anon_sym_else, + ACTIONS(1023), 1, + anon_sym_elif, + STATE(316), 1, + aux_sym_if_statement_repeat1, + STATE(463), 1, + sym_elif_clause, + STATE(597), 1, + sym_else_clause, + ACTIONS(1051), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1053), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17422] = 20, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [16948] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(652), 1, + STATE(822), 1, sym_primary_expression, - STATE(1092), 1, + STATE(1186), 1, sym_expression, - ACTIONS(304), 2, + STATE(1565), 1, + sym_exception_list, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -37289,709 +37475,821 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [17514] = 20, + [17043] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1151), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17606] = 20, + ACTIONS(270), 1, + anon_sym_COMMA, + ACTIONS(278), 1, + anon_sym_COLON_EQ, + ACTIONS(1055), 1, + anon_sym_for, + ACTIONS(1057), 1, + anon_sym_with, + ACTIONS(1059), 1, + anon_sym_def, + ACTIONS(280), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(302), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(265), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [17116] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(1045), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1059), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1043), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17698] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(494), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(985), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17790] = 20, + [17175] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(1041), 1, + anon_sym_elif, + STATE(399), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + STATE(568), 1, + sym_else_clause, + ACTIONS(1047), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(889), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1049), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17882] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + anon_sym_class, + anon_sym_not, anon_sym_lambda, - ACTIONS(308), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(310), 1, + sym_true, + sym_false, + sym_none, + [17244] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(1041), 1, + anon_sym_elif, + STATE(333), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + STATE(569), 1, + sym_else_clause, + ACTIONS(1051), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(934), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1053), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17974] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, + anon_sym_class, + anon_sym_not, anon_sym_lambda, - ACTIONS(308), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(310), 1, + sym_true, + sym_false, + sym_none, + [17313] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1065), 1, + anon_sym_except, + STATE(328), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(1061), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(879), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, + sym_ellipsis, + sym_float, + ACTIONS(1063), 35, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(880), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [18066] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(494), 1, anon_sym_await, - ACTIONS(568), 1, + sym_true, + sym_false, + sym_none, + [17376] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1072), 1, + anon_sym_except, + STATE(329), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(1068), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(1069), 1, - sym_expression, - ACTIONS(75), 2, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(1070), 35, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + [17439] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1075), 1, + anon_sym_except, + STATE(330), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(1061), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1063), 35, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [18158] = 20, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [17502] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(1078), 1, + anon_sym_except, + STATE(331), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(1068), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1070), 35, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - ACTIONS(899), 1, anon_sym_lambda, - ACTIONS(901), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(1064), 1, - sym_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + sym_true, + sym_false, + sym_none, + [17565] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1031), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 4, + sym_ellipsis, + sym_float, + ACTIONS(1029), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + [17624] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(941), 1, + anon_sym_else, + ACTIONS(1041), 1, + anon_sym_elif, + STATE(399), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + STATE(582), 1, + sym_else_clause, + ACTIONS(1033), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1035), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(996), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [18250] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(488), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(494), 1, anon_sym_await, - ACTIONS(568), 1, + sym_true, + sym_false, + sym_none, + [17693] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1081), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(702), 1, - sym_primary_expression, - STATE(984), 1, - sym_expression, - ACTIONS(75), 2, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(1083), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [17752] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1037), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 4, + sym_ellipsis, + sym_float, + ACTIONS(1039), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + [17811] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1081), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1083), 38, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(955), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [18342] = 20, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [17870] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, + STATE(794), 1, sym_string, - STATE(700), 1, + STATE(795), 1, sym_template_string, - STATE(702), 1, + STATE(822), 1, sym_primary_expression, - STATE(1081), 1, + STATE(1205), 1, sym_expression, - ACTIONS(75), 2, + STATE(1550), 1, + sym_exception_list, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38009,61 +38307,124 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18434] = 20, + [17965] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(270), 1, + anon_sym_COMMA, + ACTIONS(278), 1, + anon_sym_COLON_EQ, + ACTIONS(1085), 1, + anon_sym_for, + ACTIONS(1087), 1, + anon_sym_with, + ACTIONS(1089), 1, + anon_sym_def, + ACTIONS(280), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(302), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(265), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, anon_sym_LBRACK, - ACTIONS(619), 1, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [18038] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(1015), 1, + STATE(1224), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38081,39 +38442,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18526] = 20, + [18130] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1158), 1, + STATE(1030), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -38122,20 +38483,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38153,61 +38514,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18618] = 20, + [18222] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(625), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(627), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, sym_string, - STATE(570), 1, + STATE(768), 1, sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(1142), 1, + STATE(1112), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(607), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(753), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1129), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(924), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38225,61 +38586,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18710] = 20, + [18314] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(910), 1, + STATE(782), 1, + sym_string, + STATE(1324), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38297,61 +38658,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18802] = 20, + [18406] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(1021), 1, + STATE(1135), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38369,61 +38730,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18894] = 20, + [18498] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, - anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(1024), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1071), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38441,61 +38802,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18986] = 20, + [18590] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(889), 1, - sym_identifier, - ACTIONS(897), 1, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, - anon_sym_await, - STATE(718), 1, - sym_primary_expression, - STATE(720), 1, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(1027), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1282), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38513,39 +38874,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19078] = 20, + [18682] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1043), 1, + STATE(1155), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -38554,20 +38915,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38585,61 +38946,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19170] = 20, + [18774] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(1140), 1, + STATE(1296), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38657,39 +39018,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19262] = 20, + [18866] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1058), 1, + STATE(1214), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -38698,20 +39059,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38729,61 +39090,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19354] = 20, + [18958] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(1029), 1, + STATE(1197), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38801,39 +39162,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19446] = 20, + [19050] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(897), 1, + STATE(1297), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -38842,20 +39203,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38873,61 +39234,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19538] = 20, + [19142] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(993), 1, + STATE(1121), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38945,7 +39306,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19630] = 20, + [19234] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, @@ -38958,21 +39319,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(1068), 1, + STATE(782), 1, + sym_string, + STATE(1292), 1, sym_expression, ACTIONS(75), 2, sym_ellipsis, @@ -38986,20 +39347,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39017,61 +39378,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19722] = 20, + [19326] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1170), 1, + STATE(782), 1, + sym_string, + STATE(1123), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39089,61 +39450,119 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19814] = 20, + [19418] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(1095), 1, + anon_sym_elif, + STATE(354), 1, + aux_sym_if_statement_repeat1, + STATE(463), 1, + sym_elif_clause, + ACTIONS(1091), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(652), 1, - sym_primary_expression, - STATE(901), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1093), 34, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + [19482] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1279), 1, + sym_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39161,61 +39580,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19906] = 20, + [19574] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(652), 1, + STATE(822), 1, sym_primary_expression, - STATE(900), 1, + STATE(1188), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39233,61 +39652,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19998] = 20, + [19666] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(1091), 1, + STATE(1087), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39305,7 +39724,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20090] = 20, + [19758] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -39324,15 +39743,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1160), 1, + STATE(1228), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -39352,14 +39771,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39377,61 +39796,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20182] = 20, + [19850] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(896), 1, + STATE(782), 1, + sym_string, + STATE(1141), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39449,61 +39868,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20274] = 20, + [19942] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(895), 1, + STATE(782), 1, + sym_string, + STATE(1144), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39521,61 +39940,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20366] = 20, + [20034] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(1003), 1, + STATE(1064), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39593,7 +40012,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20458] = 20, + [20126] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -39612,15 +40031,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1128), 1, + STATE(1189), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -39640,14 +40059,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39665,7 +40084,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20550] = 20, + [20218] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, @@ -39678,21 +40097,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(970), 1, + STATE(782), 1, + sym_string, + STATE(1285), 1, sym_expression, ACTIONS(75), 2, sym_ellipsis, @@ -39706,20 +40125,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39737,39 +40156,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20642] = 20, + [20310] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(691), 1, anon_sym_not, - STATE(569), 1, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(725), 1, sym_primary_expression, - STATE(1164), 1, + STATE(1062), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -39778,20 +40197,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39809,7 +40228,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20734] = 20, + [20402] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, @@ -39822,21 +40241,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(969), 1, + STATE(782), 1, + sym_string, + STATE(1226), 1, sym_expression, ACTIONS(75), 2, sym_ellipsis, @@ -39850,20 +40269,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39881,119 +40300,194 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20826] = 6, + [20494] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1005), 1, - anon_sym_elif, - STATE(369), 1, - aux_sym_if_statement_repeat1, - STATE(433), 1, - sym_elif_clause, - ACTIONS(1003), 13, - sym__dedent, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, + ACTIONS(83), 1, sym__template_string_start, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(574), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1145), 1, + sym_expression, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(1001), 34, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [20890] = 20, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [20586] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(270), 1, + anon_sym_COMMA, + ACTIONS(278), 1, + anon_sym_COLON_EQ, + ACTIONS(1098), 1, + sym__string_start, + STATE(1393), 1, + sym_string, + ACTIONS(280), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(302), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(265), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 16, + sym__newline, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_if, + anon_sym_in, anon_sym_LBRACK, - ACTIONS(619), 1, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [20656] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(889), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(897), 1, - anon_sym_not, - ACTIONS(899), 1, - anon_sym_lambda, - ACTIONS(901), 1, + ACTIONS(320), 1, anon_sym_await, - STATE(718), 1, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, sym_primary_expression, - STATE(720), 1, + STATE(782), 1, sym_string, - STATE(722), 1, - sym_template_string, - STATE(1019), 1, + STATE(1156), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(893), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(996), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(809), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40011,7 +40505,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20982] = 20, + [20748] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -40024,21 +40518,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(603), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(691), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(689), 1, + ACTIONS(801), 1, sym_identifier, - ACTIONS(699), 1, + ACTIONS(807), 1, anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(725), 1, sym_primary_expression, - STATE(879), 1, + STATE(1068), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -40052,20 +40546,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40083,7 +40577,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21074] = 20, + [20840] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -40102,15 +40596,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(883), 1, + STATE(1096), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -40130,14 +40624,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40155,61 +40649,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21166] = 20, + [20932] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1162), 1, + STATE(782), 1, + sym_string, + STATE(1109), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40227,39 +40721,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21258] = 20, + [21024] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(884), 1, + STATE(1262), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -40268,20 +40762,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40299,39 +40793,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21350] = 20, + [21116] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, - anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(967), 1, + STATE(1274), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -40340,20 +40834,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40371,61 +40865,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21442] = 20, + [21208] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(603), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(725), 1, sym_primary_expression, - STATE(1093), 1, + STATE(1069), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(805), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40443,7 +40937,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21534] = 20, + [21300] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, @@ -40456,21 +40950,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(83), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(314), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(320), 1, anon_sym_await, ACTIONS(568), 1, anon_sym_LPAREN, ACTIONS(574), 1, anon_sym_LBRACK, - STATE(698), 1, - sym_string, - STATE(700), 1, + STATE(763), 1, sym_template_string, - STATE(702), 1, + STATE(779), 1, sym_primary_expression, - STATE(1008), 1, + STATE(782), 1, + sym_string, + STATE(1258), 1, sym_expression, ACTIONS(75), 2, sym_ellipsis, @@ -40484,20 +40978,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40515,7 +41009,79 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21626] = 20, + [21392] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(725), 1, + sym_primary_expression, + STATE(1074), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(805), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [21484] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -40534,15 +41100,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(1125), 1, + STATE(1231), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -40562,14 +41128,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40587,61 +41153,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21718] = 20, + [21576] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(300), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(488), 1, - sym_identifier, - ACTIONS(494), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - STATE(698), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(702), 1, + STATE(719), 1, sym_primary_expression, - STATE(979), 1, + STATE(1166), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40659,61 +41225,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21810] = 20, + [21668] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, + STATE(794), 1, sym_string, - STATE(700), 1, + STATE(795), 1, sym_template_string, - STATE(702), 1, + STATE(822), 1, sym_primary_expression, - STATE(1073), 1, + STATE(1192), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40731,180 +41297,205 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21902] = 9, + [21760] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(1008), 1, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, - STATE(1256), 1, - sym_string, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 16, - sym__newline, - anon_sym_DOT, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, + ACTIONS(591), 1, anon_sym_LBRACK, + ACTIONS(747), 1, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [21972] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1010), 1, - anon_sym_elif, - STATE(382), 1, - aux_sym_if_statement_repeat1, - STATE(417), 1, - sym_elif_clause, - ACTIONS(1003), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1295), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1001), 34, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [21852] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, + ACTIONS(971), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(973), 1, anon_sym_await, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1193), 1, + sym_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 4, + sym_integer, sym_true, sym_false, sym_none, - [22036] = 20, + ACTIONS(965), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1176), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [21944] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(971), 1, anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, + ACTIONS(973), 1, anon_sym_await, - STATE(569), 1, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(653), 1, + STATE(822), 1, sym_primary_expression, - STATE(888), 1, + STATE(1194), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40922,61 +41513,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22128] = 20, + [22036] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(51), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(81), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(83), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(574), 1, anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(763), 1, sym_template_string, - STATE(652), 1, + STATE(779), 1, sym_primary_expression, - STATE(1083), 1, + STATE(782), 1, + sym_string, + STATE(1269), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(77), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(316), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1158), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40994,39 +41585,42 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22220] = 20, + [22128] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(747), 1, anon_sym_not, - ACTIONS(653), 1, - anon_sym_lambda, - ACTIONS(689), 1, + ACTIONS(1100), 1, sym_identifier, - ACTIONS(699), 1, + ACTIONS(1104), 1, anon_sym_await, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(653), 1, + STATE(719), 1, sym_primary_expression, - STATE(1007), 1, + STATE(1096), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(509), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -41035,24 +41629,22 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(1102), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -41066,7 +41658,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22312] = 20, + [22222] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(263), 1, @@ -41085,15 +41677,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(637), 1, + ACTIONS(747), 1, anon_sym_not, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(652), 1, + STATE(719), 1, sym_primary_expression, - STATE(927), 1, + STATE(1322), 1, sym_expression, ACTIONS(304), 2, sym_ellipsis, @@ -41113,14 +41705,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1031), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41138,61 +41730,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22404] = 20, + [22314] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(651), 1, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, anon_sym_not, - ACTIONS(653), 1, + ACTIONS(971), 1, anon_sym_lambda, - ACTIONS(689), 1, - sym_identifier, - ACTIONS(699), 1, + ACTIONS(973), 1, anon_sym_await, - STATE(569), 1, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(653), 1, + STATE(822), 1, sym_primary_expression, - STATE(893), 1, + STATE(1195), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(695), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41210,61 +41802,61 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22496] = 20, + [22406] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(488), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(494), 1, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(698), 1, + STATE(794), 1, sym_string, - STATE(700), 1, + STATE(795), 1, sym_template_string, - STATE(702), 1, + STATE(822), 1, sym_primary_expression, - STATE(1009), 1, + STATE(1208), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(490), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(955), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(760), 17, + STATE(953), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41282,66 +41874,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22588] = 21, + [22498] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(637), 1, - anon_sym_not, - ACTIONS(1013), 1, + ACTIONS(961), 1, sym_identifier, - ACTIONS(1017), 1, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, anon_sym_await, - STATE(569), 1, + STATE(794), 1, sym_string, - STATE(570), 1, + STATE(795), 1, sym_template_string, - STATE(652), 1, + STATE(822), 1, sym_primary_expression, - STATE(934), 1, + STATE(1209), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(643), 2, sym_ellipsis, sym_float, - STATE(452), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, + ACTIONS(637), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(629), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(1015), 5, + ACTIONS(965), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(880), 6, + STATE(1176), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(649), 15, + STATE(953), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -41355,665 +41946,736 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22682] = 5, + [22590] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1023), 1, - anon_sym_case, - STATE(412), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1021), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(597), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(603), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(691), 1, + anon_sym_not, + ACTIONS(693), 1, + anon_sym_lambda, + ACTIONS(801), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(725), 1, + sym_primary_expression, + STATE(1085), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1019), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, sym_integer, - sym_identifier, - anon_sym_await, sym_true, sym_false, sym_none, - [22743] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1025), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1027), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(805), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [22800] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [22682] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1031), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1125), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1029), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [22857] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [22774] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1025), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1030), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1027), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [22914] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [22866] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1033), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1165), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1035), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [22971] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [22958] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1037), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1103), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1039), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23028] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23050] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1041), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1104), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1043), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23085] = 8, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23142] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(1045), 1, - sym_identifier, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(298), 10, - sym__newline, - anon_sym_DOT, + ACTIONS(609), 1, anon_sym_LPAREN, + ACTIONS(617), 1, anon_sym_LBRACK, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - sym__semicolon, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 21, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - anon_sym_is, - [23152] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1047), 13, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(625), 1, sym__string_start, + ACTIONS(627), 1, sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1105), 1, + sym_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1049), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23209] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23234] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1051), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1106), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1053), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23266] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23326] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1055), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1349), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1057), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23323] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23418] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1041), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1107), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1043), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23380] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23510] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1037), 13, + ACTIONS(1106), 1, + anon_sym_elif, + STATE(399), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + ACTIONS(1091), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -42027,7 +42689,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1039), 36, + ACTIONS(1093), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -42045,8 +42707,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -42064,1154 +42724,1145 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [23437] = 3, + [23574] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1055), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1108), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1057), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23494] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23666] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1051), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(631), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(639), 1, anon_sym_LBRACK, + ACTIONS(641), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(961), 1, + sym_identifier, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, + anon_sym_await, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1210), 1, + sym_expression, + ACTIONS(643), 2, sym_ellipsis, sym_float, - ACTIONS(1053), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(965), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23551] = 3, + STATE(1176), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23758] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1059), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1361), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1061), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23608] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23850] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1047), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(609), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(617), 1, anon_sym_LBRACK, + ACTIONS(619), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, + anon_sym_not, + ACTIONS(757), 1, + anon_sym_lambda, + ACTIONS(759), 1, + anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1168), 1, + sym_expression, + ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(1049), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(753), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23665] = 3, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [23942] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1031), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1307), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1029), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23722] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24034] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1059), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1077), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1061), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23779] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24126] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1067), 1, - anon_sym_case, - STATE(409), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1063), 13, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, + ACTIONS(83), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(574), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1177), 1, + sym_expression, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(1065), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23840] = 3, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24218] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1033), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1334), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1035), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23897] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24310] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1070), 13, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1149), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1072), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23954] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24402] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1074), 1, - anon_sym_case, - STATE(412), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1063), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1150), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1065), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24015] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24494] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1070), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1151), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1072), 36, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24072] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24586] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1077), 1, - anon_sym_case, - STATE(409), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1021), 13, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1152), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1019), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24133] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24678] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(855), 1, - anon_sym_finally, - STATE(523), 1, - sym_finally_clause, - ACTIONS(1079), 13, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1081), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, anon_sym_not, + ACTIONS(727), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(729), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [24193] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1090), 1, - anon_sym_COLON_EQ, - ACTIONS(1092), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(1085), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1094), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1083), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - ACTIONS(1088), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - [24257] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1096), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1153), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1098), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, + ACTIONS(306), 4, sym_integer, - sym_identifier, - anon_sym_await, sym_true, sym_false, sym_none, - [24313] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(877), 1, - anon_sym_else, - STATE(473), 1, - sym_else_clause, - ACTIONS(1102), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1100), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24373] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24770] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1106), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1104), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, anon_sym_not, + ACTIONS(727), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(729), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [24429] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(851), 1, - anon_sym_else, - STATE(513), 1, - sym_else_clause, - ACTIONS(1108), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1157), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1110), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24489] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24862] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - STATE(548), 1, - sym_else_clause, - ACTIONS(1114), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1102), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1112), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24549] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(863), 16, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(861), 32, - sym__newline, - anon_sym_DOT, - anon_sym_from, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - sym__semicolon, - [24605] = 21, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [24954] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(679), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(854), 1, - sym_pattern, - STATE(862), 1, + STATE(719), 1, sym_primary_expression, + STATE(1082), 1, + sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1116), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - STATE(735), 2, - sym_attribute, - sym_subscript, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(673), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(649), 15, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -43225,612 +43876,857 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24697] = 5, + [25046] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - STATE(481), 1, - sym_else_clause, - ACTIONS(1122), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(653), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(659), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(713), 1, + sym_identifier, + ACTIONS(725), 1, + anon_sym_not, + ACTIONS(727), 1, + anon_sym_lambda, + ACTIONS(729), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(772), 1, + sym_primary_expression, + STATE(1030), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1120), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(721), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24757] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25138] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(881), 1, - anon_sym_finally, - STATE(499), 1, - sym_finally_clause, - ACTIONS(1126), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1335), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1124), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25230] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(749), 1, + sym_identifier, + ACTIONS(755), 1, anon_sym_not, + ACTIONS(757), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(759), 1, anon_sym_await, + STATE(766), 1, + sym_primary_expression, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(1183), 1, + sym_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 4, + sym_integer, sym_true, sym_false, sym_none, - [24817] = 5, + ACTIONS(753), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1129), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25322] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - STATE(532), 1, - sym_else_clause, - ACTIONS(1114), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1339), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1112), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24877] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25414] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - STATE(505), 1, - sym_else_clause, - ACTIONS(1130), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1089), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1128), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25506] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(263), 1, sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, anon_sym_await, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1366), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, sym_true, sym_false, sym_none, - [24937] = 3, + ACTIONS(276), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25598] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1132), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1345), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1134), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [24993] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [25057] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25690] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - STATE(559), 1, - sym_else_clause, - ACTIONS(1108), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1346), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1110), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [25117] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25782] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(881), 1, - anon_sym_finally, - STATE(479), 1, - sym_finally_clause, - ACTIONS(1079), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1347), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1081), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [25177] = 5, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25874] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - STATE(545), 1, - sym_else_clause, - ACTIONS(1136), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1238), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1138), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [25237] = 3, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25966] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1096), 13, - sym__dedent, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1063), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1098), 35, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [25293] = 21, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26058] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(263), 1, + sym_identifier, ACTIONS(288), 1, anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(679), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(854), 1, - sym_pattern, - STATE(862), 1, + STATE(719), 1, sym_primary_expression, + STATE(1065), 1, + sym_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1140), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - STATE(735), 2, - sym_attribute, - sym_subscript, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, ACTIONS(306), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(673), 5, + ACTIONS(276), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(649), 15, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -43844,124 +44740,586 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25385] = 5, + [26150] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - STATE(510), 1, - sym_else_clause, - ACTIONS(1130), 13, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(578), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(591), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1070), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, sym_float, - ACTIONS(1128), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26242] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, anon_sym_lambda, - anon_sym_yield, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1350), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26334] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(961), 1, sym_identifier, + ACTIONS(969), 1, + anon_sym_not, + ACTIONS(971), 1, + anon_sym_lambda, + ACTIONS(973), 1, anon_sym_await, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + STATE(1243), 1, + sym_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 4, + sym_integer, sym_true, sym_false, sym_none, - [25445] = 5, + ACTIONS(965), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1176), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26426] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(877), 1, - anon_sym_else, - STATE(537), 1, - sym_else_clause, - ACTIONS(1136), 13, - sym__dedent, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, sym__string_start, + ACTIONS(83), 1, sym__template_string_start, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1191), 1, + sym_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26518] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, + anon_sym_not, + ACTIONS(71), 1, + anon_sym_lambda, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(314), 1, + sym_identifier, + ACTIONS(320), 1, + anon_sym_await, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1227), 1, + sym_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(316), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26610] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1351), 1, + sym_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26702] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(263), 1, + sym_identifier, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(300), 1, + anon_sym_lambda, + ACTIONS(308), 1, + anon_sym_await, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(747), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1352), 1, + sym_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1138), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(276), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, + STATE(1031), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26794] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(69), 1, anon_sym_not, + ACTIONS(71), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(314), 1, sym_identifier, + ACTIONS(320), 1, anon_sym_await, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + STATE(763), 1, + sym_template_string, + STATE(779), 1, + sym_primary_expression, + STATE(782), 1, + sym_string, + STATE(1163), 1, + sym_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 4, + sym_integer, sym_true, sym_false, sym_none, - [25505] = 5, + ACTIONS(316), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1158), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [26886] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - STATE(566), 1, - sym_else_clause, - ACTIONS(1102), 13, + ACTIONS(1109), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -43975,7 +45333,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1100), 33, + ACTIONS(1111), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -43988,10 +45346,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -44009,17 +45370,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [25565] = 5, + [26943] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - anon_sym_else, - STATE(483), 1, - sym_else_clause, - ACTIONS(1122), 13, + ACTIONS(1115), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -44030,7 +45387,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1120), 33, + ACTIONS(1113), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44043,10 +45400,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -44064,10 +45424,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [25625] = 3, + [27000] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1132), 13, + ACTIONS(1119), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -44081,7 +45441,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1134), 35, + ACTIONS(1117), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44094,12 +45454,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -44117,252 +45478,67 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [25681] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1142), 1, - anon_sym_COMMA, - ACTIONS(1145), 1, - anon_sym_COLON_EQ, - ACTIONS(1147), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(1149), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1088), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1083), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [25745] = 22, + [27057] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1123), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - ACTIONS(1151), 1, - anon_sym_RPAREN, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1177), 1, - sym_pattern, - STATE(1416), 1, - sym__patterns, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, + sym_ellipsis, + sym_float, + ACTIONS(1121), 36, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [25839] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(585), 1, - anon_sym_COLON_EQ, - ACTIONS(587), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(580), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(593), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(298), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - [25903] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(867), 16, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(865), 32, - sym__newline, - anon_sym_DOT, - anon_sym_from, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_LBRACK, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - sym__semicolon, - [25959] = 3, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [27114] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1106), 13, + ACTIONS(1127), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -44373,7 +45549,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1104), 35, + ACTIONS(1125), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44386,12 +45562,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -44409,17 +45586,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26015] = 5, + [27171] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(855), 1, - anon_sym_finally, - STATE(531), 1, - sym_finally_clause, - ACTIONS(1126), 13, + ACTIONS(1131), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -44430,7 +45603,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1124), 33, + ACTIONS(1129), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44443,10 +45616,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -44464,278 +45640,67 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26075] = 6, + [27228] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1155), 1, - anon_sym_COMMA, - ACTIONS(1162), 1, - anon_sym_EQ, - ACTIONS(1160), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1158), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1153), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [26136] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1133), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1237), 1, - sym_pattern, - STATE(1443), 1, - sym_pattern_list, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [26227] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, - anon_sym_LPAREN, - ACTIONS(679), 1, anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1279), 1, - sym_pattern, - STATE(1504), 1, - sym_pattern_list, - ACTIONS(304), 2, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, sym_ellipsis, sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, + ACTIONS(1135), 36, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [26318] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(667), 1, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(669), 1, - anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1306), 1, - sym_pattern, - STATE(1476), 1, - sym_pattern_list, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, sym_true, sym_false, sym_none, - ACTIONS(673), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [26409] = 3, + [27285] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1164), 13, + ACTIONS(1139), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -44746,7 +45711,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1166), 34, + ACTIONS(1137), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44759,13 +45724,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -44781,123 +45748,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26464] = 6, + [27342] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1170), 1, - anon_sym_COMMA, - ACTIONS(1177), 1, - anon_sym_EQ, - ACTIONS(1175), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1173), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1168), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [26525] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1092), 1, - anon_sym_EQ, - ACTIONS(1085), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1083), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - ACTIONS(1094), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1088), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - [26586] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1179), 13, + ACTIONS(1109), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -44908,7 +45765,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1181), 34, + ACTIONS(1111), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44921,13 +45778,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -44943,13 +45802,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26641] = 3, + [27399] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1183), 13, + ACTIONS(1133), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -44960,7 +45819,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1185), 34, + ACTIONS(1135), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -44973,13 +45832,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -44995,10 +45856,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26696] = 3, + [27456] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1179), 13, + ACTIONS(1143), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45012,7 +45873,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1181), 34, + ACTIONS(1141), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45025,13 +45886,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -45047,83 +45910,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26751] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, - anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1233), 1, - sym_pattern, - STATE(1422), 1, - sym_pattern_list, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [26842] = 3, + [27513] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1187), 13, + ACTIONS(1147), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45134,7 +45927,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1189), 34, + ACTIONS(1145), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45147,10 +45940,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, @@ -45169,138 +45964,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26897] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, - anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1291), 1, - sym_pattern, - STATE(1507), 1, - sym_pattern_list, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [26988] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1142), 1, - anon_sym_COMMA, - ACTIONS(1147), 1, - anon_sym_EQ, - ACTIONS(1149), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1088), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1083), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [27049] = 3, + [27570] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1183), 13, - sym__dedent, + ACTIONS(1143), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45311,7 +45981,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1185), 34, + ACTIONS(1141), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45324,13 +45994,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -45346,10 +46018,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27104] = 3, + [27627] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1191), 13, + ACTIONS(1147), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -45363,7 +46035,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1193), 34, + ACTIONS(1145), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45376,10 +46048,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, @@ -45398,13 +46072,18 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27159] = 3, + [27684] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1164), 13, - sym__dedent, + ACTIONS(1153), 1, + anon_sym_case, + STATE(450), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1149), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45415,7 +46094,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1166), 34, + ACTIONS(1151), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45434,7 +46113,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -45450,13 +46128,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27214] = 3, + [27745] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1191), 13, - sym__dedent, + ACTIONS(1127), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45467,7 +46145,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1193), 34, + ACTIONS(1125), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45480,10 +46158,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, @@ -45502,10 +46182,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27269] = 3, + [27802] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1197), 13, + ACTIONS(1160), 1, + anon_sym_case, + STATE(460), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1158), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45519,7 +46204,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1195), 34, + ACTIONS(1156), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45538,7 +46223,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -45554,10 +46238,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27324] = 3, + [27863] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1197), 13, + ACTIONS(1162), 1, + anon_sym_case, + STATE(450), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1158), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -45571,7 +46260,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1195), 34, + ACTIONS(1156), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45590,7 +46279,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -45606,13 +46294,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27379] = 3, + [27924] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1187), 13, - sym__dedent, + ACTIONS(1115), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45623,7 +46311,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1189), 34, + ACTIONS(1113), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45636,10 +46324,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, @@ -45658,83 +46348,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27434] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, - anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - STATE(1280), 1, - sym_pattern, - STATE(1428), 1, - sym_pattern_list, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [27525] = 3, + [27981] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1201), 13, - sym__dedent, + ACTIONS(1131), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45745,7 +46365,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1199), 33, + ACTIONS(1129), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45758,10 +46378,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -45779,10 +46402,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27579] = 3, + [28038] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(875), 13, + ACTIONS(1119), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -45796,7 +46419,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(873), 33, + ACTIONS(1117), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45809,10 +46432,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -45830,13 +46456,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27633] = 3, + [28095] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1205), 13, - sym__dedent, + ACTIONS(1139), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45847,7 +46473,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1203), 33, + ACTIONS(1137), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45860,10 +46486,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -45881,61 +46510,69 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27687] = 3, + [28152] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1209), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(270), 1, + anon_sym_COMMA, + ACTIONS(278), 1, + anon_sym_COLON_EQ, + ACTIONS(1164), 1, + sym_identifier, + ACTIONS(280), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(298), 10, + sym__newline, + anon_sym_DOT, anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_SEMI, + ACTIONS(302), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(265), 21, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1207), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [27741] = 3, + anon_sym_and, + anon_sym_or, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + anon_sym_is, + [28219] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1211), 13, + ACTIONS(1123), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -45949,7 +46586,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1213), 33, + ACTIONS(1121), 36, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45962,10 +46599,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -45983,10 +46623,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27795] = 3, + [28276] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1217), 13, + ACTIONS(1166), 1, + anon_sym_case, + STATE(460), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1149), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46000,7 +46645,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1215), 33, + ACTIONS(1151), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46034,64 +46679,141 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27849] = 3, + [28337] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1221), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(675), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1005), 1, + sym_pattern, + STATE(1012), 1, + sym_primary_expression, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1219), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, + ACTIONS(1169), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, + anon_sym_print, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [28429] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1175), 1, + anon_sym_COMMA, + ACTIONS(1180), 1, + anon_sym_COLON_EQ, + ACTIONS(1182), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(1184), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1178), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [27903] = 3, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [28493] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1225), 13, - sym__dedent, + ACTIONS(1186), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46102,7 +46824,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1223), 33, + ACTIONS(1188), 35, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46115,6 +46837,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -46136,10 +46860,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27957] = 3, + [28549] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1227), 13, + ACTIONS(1190), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46153,7 +46877,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1229), 33, + ACTIONS(1192), 35, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46166,6 +46890,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -46187,10 +46913,71 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28011] = 3, + [28605] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1233), 13, + ACTIONS(270), 1, + anon_sym_COMMA, + ACTIONS(278), 1, + anon_sym_COLON_EQ, + ACTIONS(280), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(302), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(265), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [28669] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(941), 1, + anon_sym_else, + STATE(600), 1, + sym_else_clause, + ACTIONS(1196), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46204,7 +46991,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1231), 33, + ACTIONS(1194), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46238,13 +47025,88 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28065] = 3, + [28729] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(847), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, + anon_sym_LPAREN, + ACTIONS(675), 1, + anon_sym_LBRACK, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1005), 1, + sym_pattern, + STATE(1012), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(1198), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [28821] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(953), 1, + anon_sym_finally, + STATE(517), 1, + sym_finally_clause, + ACTIONS(1200), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46255,7 +47117,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(849), 33, + ACTIONS(1202), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46289,10 +47151,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28119] = 3, + [28881] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1237), 13, + ACTIONS(941), 1, + anon_sym_else, + STATE(595), 1, + sym_else_clause, + ACTIONS(1206), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46306,7 +47172,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1235), 33, + ACTIONS(1204), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46340,10 +47206,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28173] = 3, + [28941] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1241), 13, + ACTIONS(945), 1, + anon_sym_finally, + STATE(587), 1, + sym_finally_clause, + ACTIONS(1210), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46357,7 +47227,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1239), 33, + ACTIONS(1208), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46391,13 +47261,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28227] = 3, + [29001] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1245), 13, - sym__dedent, + ACTIONS(1212), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46408,7 +47278,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1243), 33, + ACTIONS(1214), 35, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46421,6 +47291,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -46442,78 +47314,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28281] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(667), 1, - sym_identifier, - ACTIONS(669), 1, - anon_sym_LPAREN, - ACTIONS(679), 1, - anon_sym_LBRACK, - ACTIONS(681), 1, - anon_sym_await, - ACTIONS(1118), 1, - anon_sym_STAR, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(854), 1, - sym_pattern, - STATE(862), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(735), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(853), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(673), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [28369] = 3, + [29057] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1245), 13, + ACTIONS(953), 1, + anon_sym_finally, + STATE(530), 1, + sym_finally_clause, + ACTIONS(1210), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46527,7 +47335,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1243), 33, + ACTIONS(1208), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46561,13 +47369,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28423] = 3, + [29117] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1247), 13, + ACTIONS(1186), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46578,7 +47386,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1249), 33, + ACTIONS(1188), 35, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46591,6 +47399,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -46612,10 +47422,124 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28477] = 3, + [29173] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1251), 13, + ACTIONS(1219), 1, + anon_sym_COLON_EQ, + ACTIONS(1221), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(1216), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1223), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1173), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + ACTIONS(1178), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + [29237] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1001), 16, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_EQ, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(999), 32, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_SEMI, + [29293] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(949), 1, + anon_sym_else, + STATE(544), 1, + sym_else_clause, + ACTIONS(1196), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46629,7 +47553,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1253), 33, + ACTIONS(1194), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46663,10 +47587,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28531] = 3, + [29353] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1257), 13, + ACTIONS(941), 1, + anon_sym_else, + STATE(572), 1, + sym_else_clause, + ACTIONS(1227), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46680,7 +47608,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1255), 33, + ACTIONS(1225), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46714,61 +47642,86 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28585] = 3, + [29413] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1257), 13, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(675), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + ACTIONS(1229), 1, + anon_sym_RPAREN, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1356), 1, + sym_pattern, + STATE(1643), 1, + sym__patterns, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1255), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [28639] = 3, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [29507] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1261), 13, + ACTIONS(945), 1, + anon_sym_finally, + STATE(574), 1, + sym_finally_clause, + ACTIONS(1200), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46782,7 +47735,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1259), 33, + ACTIONS(1202), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46816,10 +47769,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28693] = 3, + [29567] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1265), 13, + ACTIONS(941), 1, + anon_sym_else, + STATE(592), 1, + sym_else_clause, + ACTIONS(1233), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46833,7 +47790,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1263), 33, + ACTIONS(1231), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46867,10 +47824,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28747] = 3, + [29627] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1261), 13, + ACTIONS(949), 1, + anon_sym_else, + STATE(536), 1, + sym_else_clause, + ACTIONS(1233), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46884,7 +47845,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1259), 33, + ACTIONS(1231), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46918,10 +47879,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28801] = 3, + [29687] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1265), 13, + ACTIONS(949), 1, + anon_sym_else, + STATE(528), 1, + sym_else_clause, + ACTIONS(1235), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46935,7 +47900,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1263), 33, + ACTIONS(1237), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46969,64 +47934,70 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28855] = 3, + [29747] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1269), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, + ACTIONS(1015), 16, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, + anon_sym_EQ, anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1267), 33, - anon_sym_import, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1013), 32, + sym__newline, + anon_sym_DOT, anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, + anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + anon_sym_COLON, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [28909] = 3, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_SEMI, + [29803] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1273), 13, - sym__dedent, + ACTIONS(949), 1, + anon_sym_else, + STATE(539), 1, + sym_else_clause, + ACTIONS(1206), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47037,7 +48008,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1271), 33, + ACTIONS(1204), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47071,13 +48042,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28963] = 3, + [29863] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1277), 13, - sym__dedent, + ACTIONS(949), 1, + anon_sym_else, + STATE(588), 1, + sym_else_clause, + ACTIONS(1239), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47088,7 +48063,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1275), 33, + ACTIONS(1241), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47122,10 +48097,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29017] = 3, + [29923] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1281), 13, + ACTIONS(1212), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47139,7 +48114,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1279), 33, + ACTIONS(1214), 35, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47152,6 +48127,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -47173,10 +48150,67 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29071] = 3, + [29979] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1285), 13, + ACTIONS(585), 1, + anon_sym_COLON_EQ, + ACTIONS(587), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(580), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(593), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(298), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + ACTIONS(265), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + [30043] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1190), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47190,7 +48224,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1283), 33, + ACTIONS(1192), 35, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47203,6 +48237,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -47224,13 +48260,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29125] = 3, + [30099] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1287), 13, + ACTIONS(941), 1, + anon_sym_else, + STATE(560), 1, + sym_else_clause, + ACTIONS(1239), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47241,7 +48281,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1289), 33, + ACTIONS(1241), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47275,13 +48315,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29179] = 3, + [30159] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1079), 13, - sym__dedent, + ACTIONS(949), 1, + anon_sym_else, + STATE(515), 1, + sym_else_clause, + ACTIONS(1227), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47292,7 +48336,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1081), 33, + ACTIONS(1225), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47326,10 +48370,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29233] = 3, + [30219] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1293), 13, + ACTIONS(941), 1, + anon_sym_else, + STATE(585), 1, + sym_else_clause, + ACTIONS(1235), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47343,7 +48391,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1291), 33, + ACTIONS(1237), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47377,10 +48425,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29287] = 3, + [30279] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1211), 13, + ACTIONS(1245), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47394,7 +48442,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1213), 33, + ACTIONS(1243), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47411,6 +48459,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -47428,61 +48477,135 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29341] = 3, + [30334] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1297), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(675), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1504), 1, + sym_pattern, + STATE(1716), 1, + sym_pattern_list, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1295), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [30425] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1175), 1, + anon_sym_COMMA, + ACTIONS(1182), 1, + anon_sym_EQ, + ACTIONS(1184), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1178), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [29395] = 3, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [30486] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1299), 13, + ACTIONS(1247), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47496,7 +48619,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1301), 33, + ACTIONS(1249), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47513,6 +48636,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -47530,13 +48654,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29449] = 3, + [30541] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1305), 13, - sym__dedent, + ACTIONS(1251), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47547,7 +48671,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1303), 33, + ACTIONS(1253), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47566,6 +48690,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -47581,7 +48706,7 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29503] = 20, + [30596] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -47590,35 +48715,37 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(667), 1, + ACTIONS(663), 1, sym_identifier, - ACTIONS(669), 1, + ACTIONS(665), 1, anon_sym_LPAREN, - ACTIONS(679), 1, + ACTIONS(675), 1, anon_sym_LBRACK, - ACTIONS(681), 1, + ACTIONS(677), 1, anon_sym_await, - ACTIONS(1118), 1, + ACTIONS(1171), 1, anon_sym_STAR, - STATE(569), 1, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(862), 1, + STATE(1012), 1, sym_primary_expression, - STATE(1307), 1, + STATE(1461), 1, sym_pattern, + STATE(1657), 1, + sym_pattern_list, ACTIONS(304), 2, sym_ellipsis, sym_float, - STATE(735), 2, + STATE(849), 2, sym_attribute, sym_subscript, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(853), 3, + STATE(999), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -47627,13 +48754,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(673), 5, + ACTIONS(669), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(649), 15, + STATE(724), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -47649,13 +48776,13 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [29591] = 3, + [30687] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1309), 13, - sym__dedent, + ACTIONS(1245), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47666,7 +48793,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1307), 33, + ACTIONS(1243), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47683,6 +48810,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -47700,10 +48828,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29645] = 3, + [30742] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1311), 13, + ACTIONS(1255), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47717,7 +48845,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1313), 33, + ACTIONS(1257), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47736,6 +48864,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -47751,10 +48880,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29699] = 3, + [30797] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1315), 13, + ACTIONS(1259), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47768,7 +48897,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1317), 33, + ACTIONS(1261), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47787,6 +48916,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -47802,10 +48932,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29753] = 3, + [30852] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1319), 13, + ACTIONS(1263), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47819,7 +48949,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1321), 33, + ACTIONS(1265), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47838,6 +48968,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -47853,10 +48984,65 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29807] = 3, + [30907] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1325), 13, + ACTIONS(1269), 1, + anon_sym_COMMA, + ACTIONS(1276), 1, + anon_sym_EQ, + ACTIONS(1274), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1272), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1267), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [30968] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1247), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47870,7 +49056,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1323), 33, + ACTIONS(1249), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47887,6 +49073,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -47904,13 +49091,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29861] = 3, + [31023] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1309), 13, + ACTIONS(1251), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47921,7 +49108,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1307), 33, + ACTIONS(1253), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47940,6 +49127,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -47955,10 +49143,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29915] = 3, + [31078] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1329), 13, + ACTIONS(1255), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47972,7 +49160,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1327), 33, + ACTIONS(1257), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47991,6 +49179,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -48006,10 +49195,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29969] = 3, + [31133] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1311), 13, + ACTIONS(1259), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -48023,7 +49212,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1313), 33, + ACTIONS(1261), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48042,6 +49231,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -48057,13 +49247,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30023] = 3, + [31188] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1331), 13, + ACTIONS(1263), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48074,7 +49264,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1333), 33, + ACTIONS(1265), 34, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48093,6 +49283,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -48108,13 +49299,403 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30077] = 3, + [31243] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1287), 13, - sym__dedent, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, + anon_sym_LPAREN, + ACTIONS(675), 1, + anon_sym_LBRACK, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1496), 1, + sym_pattern, + STATE(1661), 1, + sym_pattern_list, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [31334] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1221), 1, + anon_sym_EQ, + ACTIONS(1216), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1173), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + ACTIONS(1223), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1178), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + [31395] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, + anon_sym_LPAREN, + ACTIONS(675), 1, + anon_sym_LBRACK, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1500), 1, + sym_pattern, + STATE(1707), 1, + sym_pattern_list, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [31486] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, + anon_sym_LPAREN, + ACTIONS(675), 1, + anon_sym_LBRACK, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1473), 1, + sym_pattern, + STATE(1672), 1, + sym_pattern_list, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [31577] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, + anon_sym_LPAREN, + ACTIONS(675), 1, + anon_sym_LBRACK, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1505), 1, + sym_pattern, + STATE(1719), 1, + sym_pattern_list, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(669), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [31668] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1280), 1, + anon_sym_COMMA, + ACTIONS(1287), 1, + anon_sym_EQ, + ACTIONS(1285), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1283), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1278), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [31729] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1289), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48125,7 +49706,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1289), 33, + ACTIONS(1291), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48159,10 +49740,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30131] = 3, + [31783] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1297), 13, + ACTIONS(1293), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48210,13 +49791,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30185] = 3, + [31837] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1337), 13, - sym__dedent, + ACTIONS(1297), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48227,7 +49808,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1335), 33, + ACTIONS(1299), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48261,13 +49842,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30239] = 3, + [31891] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1251), 13, - sym__dedent, + ACTIONS(1301), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48278,7 +49859,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1253), 33, + ACTIONS(1303), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48312,10 +49893,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30293] = 3, + [31945] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1329), 13, + ACTIONS(1210), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48329,7 +49910,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1327), 33, + ACTIONS(1208), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48363,10 +49944,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30347] = 3, + [31999] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1337), 13, + ACTIONS(1305), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48380,7 +49961,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1335), 33, + ACTIONS(1307), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48414,10 +49995,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30401] = 3, + [32053] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1126), 13, + ACTIONS(1309), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48431,7 +50012,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1124), 33, + ACTIONS(1311), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48465,10 +50046,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30455] = 3, + [32107] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1339), 13, + ACTIONS(1313), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48482,7 +50063,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1341), 33, + ACTIONS(1315), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48516,13 +50097,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30509] = 3, + [32161] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1339), 13, - sym__dedent, + ACTIONS(1317), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48533,7 +50114,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1341), 33, + ACTIONS(1319), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48567,10 +50148,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30563] = 3, + [32215] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1237), 13, + ACTIONS(1321), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48584,7 +50165,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1235), 33, + ACTIONS(1323), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48618,10 +50199,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30617] = 3, + [32269] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1343), 13, + ACTIONS(1325), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48635,7 +50216,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1345), 33, + ACTIONS(1327), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48669,13 +50250,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30671] = 3, + [32323] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1319), 13, - sym__dedent, + ACTIONS(1329), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48686,7 +50267,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1321), 33, + ACTIONS(1331), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48720,13 +50301,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30725] = 3, + [32377] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1343), 13, - sym__dedent, + ACTIONS(1333), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48737,7 +50318,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1345), 33, + ACTIONS(1335), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48771,10 +50352,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30779] = 3, + [32431] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1347), 13, + ACTIONS(1337), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48788,7 +50369,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1349), 33, + ACTIONS(1339), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48822,10 +50403,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30833] = 3, + [32485] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1351), 13, + ACTIONS(1341), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48839,7 +50420,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1353), 33, + ACTIONS(1343), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48873,13 +50454,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30887] = 3, + [32539] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1357), 13, - sym__dedent, + ACTIONS(1345), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48890,7 +50471,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1355), 33, + ACTIONS(1347), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48924,13 +50505,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30941] = 3, + [32593] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1247), 13, - sym__dedent, + ACTIONS(1349), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48941,7 +50522,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1249), 33, + ACTIONS(1351), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48975,10 +50556,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30995] = 3, + [32647] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1293), 13, + ACTIONS(1353), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48992,7 +50573,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1291), 33, + ACTIONS(1355), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49026,10 +50607,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31049] = 3, + [32701] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1359), 13, + ACTIONS(1357), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49043,7 +50624,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1361), 33, + ACTIONS(1359), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49077,10 +50658,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31103] = 3, + [32755] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1233), 13, + ACTIONS(1361), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49094,7 +50675,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1231), 33, + ACTIONS(1363), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49128,10 +50709,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31157] = 3, + [32809] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1241), 13, + ACTIONS(1200), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49145,7 +50726,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1239), 33, + ACTIONS(1202), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49179,10 +50760,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31211] = 3, + [32863] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1285), 13, + ACTIONS(939), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49196,7 +50777,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1283), 33, + ACTIONS(937), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49230,13 +50811,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31265] = 3, + [32917] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1365), 13, - sym__dedent, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49247,7 +50828,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1363), 33, + ACTIONS(1367), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49281,13 +50862,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31319] = 3, + [32971] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1369), 13, - sym__dedent, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49298,7 +50879,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1367), 33, + ACTIONS(1371), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49332,13 +50913,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31373] = 3, + [33025] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1373), 13, - sym__dedent, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49349,7 +50930,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1371), 33, + ACTIONS(1375), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49383,13 +50964,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31427] = 3, + [33079] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1377), 13, - sym__dedent, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49400,7 +50981,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1375), 33, + ACTIONS(1379), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49434,10 +51015,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31481] = 3, + [33133] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1225), 13, + ACTIONS(1381), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49451,7 +51032,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1223), 33, + ACTIONS(1383), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49485,10 +51066,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31535] = 3, + [33187] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1357), 13, + ACTIONS(1385), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49502,7 +51083,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1355), 33, + ACTIONS(1387), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49536,10 +51117,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31589] = 3, + [33241] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1079), 13, + ACTIONS(1389), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49553,7 +51134,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1081), 33, + ACTIONS(1391), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49587,13 +51168,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31643] = 3, + [33295] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1351), 13, - sym__dedent, + ACTIONS(1393), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49604,7 +51185,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1353), 33, + ACTIONS(1395), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49638,10 +51219,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31697] = 3, + [33349] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1305), 13, + ACTIONS(1397), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49655,7 +51236,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1303), 33, + ACTIONS(1399), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49689,10 +51270,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31751] = 3, + [33403] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1369), 13, + ACTIONS(1401), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49706,7 +51287,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1367), 33, + ACTIONS(1403), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49740,10 +51321,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31805] = 3, + [33457] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1269), 13, + ACTIONS(1405), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49757,7 +51338,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1267), 33, + ACTIONS(1407), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49791,10 +51372,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31859] = 3, + [33511] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1281), 13, + ACTIONS(1409), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49808,7 +51389,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1279), 33, + ACTIONS(1411), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49842,13 +51423,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31913] = 3, + [33565] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1359), 13, - sym__dedent, + ACTIONS(1413), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49859,7 +51440,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1361), 33, + ACTIONS(1415), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49893,10 +51474,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31967] = 3, + [33619] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(847), 13, + ACTIONS(1417), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49910,7 +51491,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(849), 33, + ACTIONS(1419), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49944,13 +51525,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32021] = 3, + [33673] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1227), 13, - sym__dedent, + ACTIONS(1421), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49961,7 +51542,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1229), 33, + ACTIONS(1423), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49995,214 +51576,78 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32075] = 3, + [33727] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(875), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, + ACTIONS(288), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(873), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [32129] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1325), 13, + ACTIONS(310), 1, sym__string_start, + ACTIONS(312), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(675), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(677), 1, + anon_sym_await, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + STATE(1445), 1, + sym_pattern, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(1323), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [32183] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1347), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, + STATE(849), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1349), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, sym_integer, - sym_identifier, - anon_sym_await, sym_true, sym_false, sym_none, - [32237] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1221), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1219), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(669), 5, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [32291] = 3, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [33815] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1126), 13, + ACTIONS(1313), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -50216,7 +51661,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1124), 33, + ACTIONS(1315), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50250,13 +51695,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32345] = 3, + [33869] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1205), 13, + ACTIONS(979), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50267,7 +51712,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1203), 33, + ACTIONS(981), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50301,13 +51746,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32399] = 3, + [33923] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1377), 13, + ACTIONS(1427), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50318,7 +51763,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1375), 33, + ACTIONS(1425), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50352,13 +51797,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32453] = 3, + [33977] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1273), 13, + ACTIONS(1431), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50369,7 +51814,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1271), 33, + ACTIONS(1429), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50403,10 +51848,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32507] = 3, + [34031] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1331), 13, + ACTIONS(1435), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -50420,7 +51865,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1333), 33, + ACTIONS(1433), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50454,10 +51899,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32561] = 3, + [34085] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1299), 13, + ACTIONS(1439), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -50471,7 +51916,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1301), 33, + ACTIONS(1437), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50505,10 +51950,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32615] = 3, + [34139] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1315), 13, + ACTIONS(1289), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -50522,7 +51967,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1317), 33, + ACTIONS(1291), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50556,13 +52001,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32669] = 3, + [34193] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1373), 13, + ACTIONS(1443), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50573,7 +52018,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1371), 33, + ACTIONS(1441), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50607,13 +52052,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32723] = 3, + [34247] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1201), 13, + ACTIONS(1447), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50624,7 +52069,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1199), 33, + ACTIONS(1445), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50658,13 +52103,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32777] = 3, + [34301] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1365), 13, + ACTIONS(1200), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50675,7 +52120,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1363), 33, + ACTIONS(1202), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50709,13 +52154,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32831] = 3, + [34355] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1277), 13, + ACTIONS(939), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50726,7 +52171,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1275), 33, + ACTIONS(937), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50760,13 +52205,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32885] = 3, + [34409] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1217), 13, + ACTIONS(1381), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50777,7 +52222,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1215), 33, + ACTIONS(1383), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50811,13 +52256,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32939] = 3, + [34463] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1209), 13, + ACTIONS(1385), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50828,7 +52273,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1207), 33, + ACTIONS(1387), 33, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50862,2839 +52307,2404 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32993] = 18, + [34517] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1409), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(1379), 1, - sym_identifier, - ACTIONS(1385), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(740), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(1381), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(1383), 5, + sym_ellipsis, + sym_float, + ACTIONS(1411), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33075] = 5, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34571] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(310), 1, + ACTIONS(1421), 13, + sym__dedent, sym__string_start, - STATE(573), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1088), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1083), 34, - anon_sym_DOT, + sym__template_string_start, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1423), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33130] = 5, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34625] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(312), 1, + ACTIONS(1451), 13, + sym__dedent, + sym__string_start, sym__template_string_start, - STATE(572), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1088), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1083), 34, - anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1449), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33185] = 5, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34679] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1391), 1, + ACTIONS(1455), 13, + sym__dedent, + sym__string_start, sym__template_string_start, - STATE(571), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1389), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1387), 34, - anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1453), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33240] = 5, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34733] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(312), 1, + ACTIONS(1459), 13, + sym__dedent, + sym__string_start, sym__template_string_start, - STATE(571), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1396), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1394), 34, - anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1457), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33295] = 5, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34787] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(310), 1, + ACTIONS(1463), 13, + sym__dedent, sym__string_start, - STATE(574), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1400), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1398), 34, - anon_sym_DOT, + sym__template_string_start, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1461), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33350] = 5, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34841] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1406), 1, + ACTIONS(1467), 13, + sym__dedent, sym__string_start, - STATE(574), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1404), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1402), 34, - anon_sym_DOT, + sym__template_string_start, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33405] = 16, - ACTIONS(3), 1, - sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1409), 1, - anon_sym_not, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(751), 1, - sym_primary_expression, - ACTIONS(621), 2, + anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(615), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + ACTIONS(1465), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33481] = 16, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34895] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1293), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - ACTIONS(1411), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(663), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1295), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33557] = 16, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34949] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1297), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - ACTIONS(1413), 1, - anon_sym_not, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(717), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1299), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33633] = 16, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35003] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1301), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - ACTIONS(1415), 1, - anon_sym_not, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(667), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1303), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33709] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35057] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1210), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(672), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1208), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33782] = 3, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35111] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1419), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1417), 35, + ACTIONS(1305), 13, + sym__dedent, sym__string_start, - anon_sym_DOT, + sym__template_string_start, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33831] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1423), 6, - anon_sym_as, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1307), 33, + anon_sym_import, + anon_sym_from, anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1421), 35, - sym__template_string_start, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [33880] = 15, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35165] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1309), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(706), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1311), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33953] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35219] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1317), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(663), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1319), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34026] = 3, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35273] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1427), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1425), 35, + ACTIONS(1321), 13, + sym__dedent, sym__string_start, - anon_sym_DOT, + sym__template_string_start, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [34075] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(713), 1, - sym_primary_expression, - ACTIONS(75), 2, + anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + ACTIONS(1323), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34148] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35327] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1325), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(664), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1327), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34221] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35381] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1451), 13, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(739), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + ts_builtin_sym_end, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1449), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34294] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35435] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1329), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(673), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1331), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34367] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35489] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1333), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(712), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34440] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(736), 1, - sym_primary_expression, - ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + ACTIONS(1335), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34513] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35543] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1337), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(683), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1339), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34586] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35597] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1341), 13, + sym__dedent, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(734), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1343), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34659] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35651] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1345), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(677), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1347), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34732] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35705] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1349), 13, + sym__dedent, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(741), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1351), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34805] = 17, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35759] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1447), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(1429), 1, - sym_identifier, - ACTIONS(1433), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(859), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(1431), 5, + sym_ellipsis, + sym_float, + ACTIONS(1445), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34882] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35813] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1353), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(667), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [34955] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(745), 1, - sym_primary_expression, - ACTIONS(621), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + ACTIONS(1355), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35028] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35867] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1357), 13, + sym__dedent, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(751), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1359), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35101] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35921] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1361), 13, + sym__dedent, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(752), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1363), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35174] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35975] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1365), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(670), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1367), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35247] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36029] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1369), 13, + sym__dedent, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(753), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1371), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35320] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36083] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1373), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(723), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1375), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35393] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36137] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1377), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(682), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1379), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35466] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36191] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1455), 13, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(721), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1453), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35539] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36245] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1459), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(668), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1457), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35612] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36299] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1389), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(678), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1391), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35685] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36353] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1393), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(717), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1395), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35758] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36407] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(1397), 13, + sym__dedent, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(742), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, + sym_ellipsis, + sym_float, + ACTIONS(1399), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35831] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36461] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1401), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(714), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1403), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35904] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36515] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1405), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(674), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1407), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [35977] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36569] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1413), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(707), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1415), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36050] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36623] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1417), 13, + sym__dedent, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(708), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1419), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36123] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36677] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1463), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(685), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1461), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36196] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36731] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1467), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(662), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(1465), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36269] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36785] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(979), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(671), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, + sym_ellipsis, + sym_float, + ACTIONS(981), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36342] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36839] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(1427), 13, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(568), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(698), 1, - sym_string, - STATE(700), 1, - sym_template_string, - STATE(705), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, + sym_ellipsis, + sym_float, + ACTIONS(1425), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(760), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36415] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36893] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(1431), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(619), 1, anon_sym_LBRACE, - ACTIONS(623), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1429), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(625), 1, + sym_true, + sym_false, + sym_none, + [36947] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1435), 13, sym__string_start, - ACTIONS(627), 1, sym__template_string_start, - STATE(720), 1, - sym_string, - STATE(722), 1, - sym_template_string, - STATE(746), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, + ts_builtin_sym_end, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(607), 5, + sym_ellipsis, + sym_float, + ACTIONS(1433), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + [37001] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1439), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1437), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(809), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36488] = 15, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [37055] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(288), 1, @@ -53703,42 +54713,52 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(663), 1, + sym_identifier, + ACTIONS(665), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(675), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(677), 1, anon_sym_await, - STATE(569), 1, + ACTIONS(1171), 1, + anon_sym_STAR, + STATE(621), 1, sym_string, - STATE(570), 1, + STATE(624), 1, sym_template_string, - STATE(681), 1, + STATE(1005), 1, + sym_pattern, + STATE(1012), 1, sym_primary_expression, ACTIONS(304), 2, sym_ellipsis, sym_float, + STATE(849), 2, + sym_attribute, + sym_subscript, ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + STATE(999), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(306), 4, sym_integer, - sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(669), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(649), 17, + STATE(724), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -53752,51 +54772,108 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [36561] = 15, + [37143] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(1443), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_LBRACE, - ACTIONS(81), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1441), 33, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [37197] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(312), 1, sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(591), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(1469), 1, + sym_identifier, + ACTIONS(1475), 1, anon_sym_await, - STATE(698), 1, + STATE(621), 1, sym_string, - STATE(700), 1, + STATE(624), 1, sym_template_string, - STATE(710), 1, + STATE(1012), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + STATE(834), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(1471), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(306), 4, sym_integer, - sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(1473), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(760), 17, + STATE(724), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -53810,47 +54887,49 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [36634] = 15, + [37279] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(310), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(312), 1, sym__template_string_start, - STATE(720), 1, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + ACTIONS(1477), 1, + anon_sym_not, + STATE(621), 1, sym_string, - STATE(722), 1, + STATE(624), 1, sym_template_string, - STATE(744), 1, + STATE(738), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(304), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(601), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(306), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(583), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(809), 17, + STATE(724), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -53868,47 +54947,147 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [36707] = 15, + [37355] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, ACTIONS(310), 1, sym__string_start, + STATE(619), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1481), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1479), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [37409] = 5, + ACTIONS(3), 1, + sym_comment, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, + STATE(620), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1485), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1483), 33, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(603), 1, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(605), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [37463] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, + ACTIONS(1487), 1, + anon_sym_not, + STATE(763), 1, sym_template_string, - STATE(679), 1, + STATE(782), 1, + sym_string, + STATE(800), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(75), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(77), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(570), 5, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(649), 17, + STATE(908), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -53926,146 +55105,8132 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [36780] = 15, + [37539] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1493), 1, sym__string_start, - ACTIONS(312), 1, + STATE(619), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1491), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1489), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [37593] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1500), 1, sym__template_string_start, - ACTIONS(578), 1, + STATE(620), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1498), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1496), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [37647] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(310), 1, + sym__string_start, + STATE(616), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1178), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [37701] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1503), 1, + anon_sym_not, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(831), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [37777] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + ACTIONS(1505), 1, + anon_sym_not, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(788), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [37853] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(312), 1, + sym__template_string_start, + STATE(617), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1178), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [37907] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + ACTIONS(1507), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(752), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [37983] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + ACTIONS(1509), 1, + anon_sym_not, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(814), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38059] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(843), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38132] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(736), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38205] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(737), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38278] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(738), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38351] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(748), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38424] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(749), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38497] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(804), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38570] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(805), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38643] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(796), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38716] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(799), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38789] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(828), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38862] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(829), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [38935] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(831), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39008] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(832), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39081] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(833), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39154] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(835), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39227] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(836), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39300] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(837), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39373] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(844), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39446] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(786), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39519] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(787), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39592] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(788), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39665] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(789), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39738] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(743), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39811] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(791), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39884] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(792), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39957] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(793), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40030] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(739), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40103] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(797), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40176] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(798), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40249] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(759), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40322] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(823), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40395] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(824), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40468] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(740), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40541] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(800), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40614] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(1469), 1, + sym_identifier, + ACTIONS(1475), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(834), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(1473), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40691] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(750), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40764] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(751), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40837] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(752), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40910] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(753), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40983] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(734), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41056] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(754), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41129] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(755), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41202] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(756), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41275] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(741), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41348] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(801), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41421] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(757), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41494] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(758), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41567] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(595), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(761), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41640] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(811), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41713] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_LPAREN, + ACTIONS(639), 1, + anon_sym_LBRACK, + ACTIONS(641), 1, + anon_sym_LBRACE, + ACTIONS(645), 1, + anon_sym_await, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + STATE(794), 1, + sym_string, + STATE(795), 1, + sym_template_string, + STATE(845), 1, + sym_primary_expression, + ACTIONS(643), 2, + sym_ellipsis, + sym_float, + ACTIONS(637), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(629), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(633), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(953), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41786] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(578), 1, + anon_sym_LPAREN, + ACTIONS(591), 1, + anon_sym_LBRACK, + ACTIONS(1511), 1, + sym_identifier, + ACTIONS(1515), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(1012), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + STATE(1000), 2, + sym_attribute, + sym_subscript, + ACTIONS(296), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(1513), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41863] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(784), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41936] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(802), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42009] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(812), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42082] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(813), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42155] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(814), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42228] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(815), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42301] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(816), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42374] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(817), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42447] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(818), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42520] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(819), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42593] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(597), 1, + anon_sym_LPAREN, + ACTIONS(603), 1, + anon_sym_LBRACK, + ACTIONS(605), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(742), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(601), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42666] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(820), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42739] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(821), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42812] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(288), 1, + anon_sym_LBRACE, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(653), 1, + anon_sym_LPAREN, + ACTIONS(659), 1, + anon_sym_LBRACK, + ACTIONS(661), 1, + anon_sym_await, + STATE(621), 1, + sym_string, + STATE(624), 1, + sym_template_string, + STATE(803), 1, + sym_primary_expression, + ACTIONS(304), 2, + sym_ellipsis, + sym_float, + ACTIONS(657), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(306), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(724), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42885] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(51), 1, + anon_sym_LBRACE, + ACTIONS(81), 1, + sym__string_start, + ACTIONS(83), 1, + sym__template_string_start, + ACTIONS(568), 1, + anon_sym_LPAREN, + ACTIONS(574), 1, + anon_sym_LBRACK, + ACTIONS(576), 1, + anon_sym_await, + STATE(763), 1, + sym_template_string, + STATE(782), 1, + sym_string, + STATE(825), 1, + sym_primary_expression, + ACTIONS(75), 2, + sym_ellipsis, + sym_float, + ACTIONS(47), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(77), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(570), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(908), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42958] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_LPAREN, + ACTIONS(617), 1, + anon_sym_LBRACK, + ACTIONS(619), 1, + anon_sym_LBRACE, + ACTIONS(623), 1, + anon_sym_await, + ACTIONS(625), 1, + sym__string_start, + ACTIONS(627), 1, + sym__template_string_start, + STATE(767), 1, + sym_string, + STATE(768), 1, + sym_template_string, + STATE(783), 1, + sym_primary_expression, + ACTIONS(621), 2, + sym_ellipsis, + sym_float, + ACTIONS(615), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(607), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(611), 5, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(924), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [43031] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1519), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1517), 34, + sym__string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43079] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1523), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1521), 34, + sym__template_string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43127] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1527), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1525), 34, + sym__string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43175] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1531), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1529), 34, + sym__template_string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43223] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1535), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1533), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43270] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1539), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1537), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43317] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1543), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1541), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43364] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1547), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1545), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43411] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1551), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1549), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43458] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1543), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1541), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43505] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1555), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1553), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43552] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1559), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1557), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43599] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1563), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1561), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43646] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1567), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1565), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43693] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1571), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1569), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43740] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1575), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1573), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43787] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1579), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1577), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43834] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1272), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1267), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [43881] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1283), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1278), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [43928] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1583), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1581), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43975] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1587), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1585), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44022] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1591), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1589), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44069] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1583), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1581), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44116] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1579), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1577), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44163] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1605), 1, + anon_sym_PIPE, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1613), 1, + anon_sym_EQ, + ACTIONS(1617), 1, + anon_sym_not, + ACTIONS(1619), 1, + anon_sym_AMP, + ACTIONS(1621), 1, + anon_sym_CARET, + ACTIONS(1625), 1, + anon_sym_is, + STATE(991), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1623), 2, + anon_sym_LT, + anon_sym_GT, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1603), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1597), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [44244] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1629), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1627), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44291] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1633), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1631), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44338] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1637), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1635), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44385] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(265), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44432] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1178), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44479] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1613), 1, + anon_sym_as, + ACTIONS(1645), 1, + anon_sym_PIPE, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1653), 1, + anon_sym_not, + ACTIONS(1655), 1, + anon_sym_AMP, + ACTIONS(1657), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_is, + STATE(992), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_LT, + anon_sym_GT, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1643), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1597), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [44560] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1665), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1663), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44607] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1669), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1667), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44654] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1673), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1671), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44701] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1677), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1675), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44748] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1679), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44795] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1673), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1671), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44842] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1685), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1683), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44889] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1689), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1687), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44936] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 24, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [44996] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1697), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1695), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45052] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, + anon_sym_as, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45108] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 22, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45170] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1645), 1, + anon_sym_PIPE, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1655), 1, + anon_sym_AMP, + ACTIONS(1657), 1, + anon_sym_CARET, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1701), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1699), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45240] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1655), 1, + anon_sym_AMP, + ACTIONS(1657), 1, + anon_sym_CARET, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 18, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45308] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 24, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45368] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, + anon_sym_as, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45424] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1657), 1, + anon_sym_CARET, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45490] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 20, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45554] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + STATE(746), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1481), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1479), 31, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45604] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(649), 1, + sym__template_string_start, + STATE(747), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1485), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1483), 31, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45654] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1703), 1, + sym__string_start, + STATE(746), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1491), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1489), 31, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45704] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1706), 1, + sym__template_string_start, + STATE(747), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1498), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1496), 31, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45754] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1645), 1, + anon_sym_PIPE, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1655), 1, + anon_sym_AMP, + ACTIONS(1657), 1, + anon_sym_CARET, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1709), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45824] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1645), 1, + anon_sym_PIPE, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + ACTIONS(1655), 1, + anon_sym_AMP, + ACTIONS(1657), 1, + anon_sym_CARET, + ACTIONS(1639), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1641), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1647), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1651), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1715), 3, + anon_sym_as, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1713), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45894] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45950] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 22, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46012] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1605), 1, + anon_sym_PIPE, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1619), 1, + anon_sym_AMP, + ACTIONS(1621), 1, + anon_sym_CARET, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1701), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1699), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46082] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1619), 1, + anon_sym_AMP, + ACTIONS(1621), 1, + anon_sym_CARET, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 18, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46150] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46206] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1621), 1, + anon_sym_CARET, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46272] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1691), 20, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46336] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1605), 1, + anon_sym_PIPE, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1619), 1, + anon_sym_AMP, + ACTIONS(1621), 1, + anon_sym_CARET, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1709), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46406] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1605), 1, + anon_sym_PIPE, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + ACTIONS(1619), 1, + anon_sym_AMP, + ACTIONS(1621), 1, + anon_sym_CARET, + ACTIONS(1599), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1601), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1607), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1615), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1715), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1713), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46476] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1719), 5, + anon_sym_as, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1717), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46532] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1649), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1697), 5, + anon_sym_as, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1695), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46588] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1611), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1719), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1717), 27, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46644] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1721), 1, + sym__template_string_start, + STATE(762), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1498), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1496), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [46693] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(83), 1, + sym__template_string_start, + STATE(778), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1178), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [46742] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1283), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1278), 32, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46787] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(81), 1, + sym__string_start, + STATE(775), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1481), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1479), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [46836] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1613), 1, + anon_sym_EQ, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1734), 1, + anon_sym_PIPE, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1744), 1, + anon_sym_not, + ACTIONS(1746), 1, + anon_sym_AMP, + ACTIONS(1748), 1, + anon_sym_CARET, + ACTIONS(1752), 1, + anon_sym_is, + STATE(1006), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1728), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1750), 2, + anon_sym_LT, + anon_sym_GT, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1732), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1597), 7, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + anon_sym_COLON2, + sym_type_conversion, + [46915] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(625), 1, + sym__string_start, + STATE(769), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1178), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [46964] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(627), 1, + sym__template_string_start, + STATE(770), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1178), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [47013] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(625), 1, + sym__string_start, + STATE(771), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1481), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1479), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [47062] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(627), 1, + sym__template_string_start, + STATE(762), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1485), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1483), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [47111] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1754), 1, + sym__string_start, + STATE(771), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1491), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1489), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [47160] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(680), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, + ACTIONS(1763), 1, + anon_sym_PIPE, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + ACTIONS(1771), 1, + anon_sym_not, + ACTIONS(1773), 1, + anon_sym_AMP, + ACTIONS(1775), 1, + anon_sym_CARET, + ACTIONS(1779), 1, + anon_sym_is, + STATE(997), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1757), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1759), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1765), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, + ACTIONS(1777), 2, + anon_sym_LT, + anon_sym_GT, + STATE(733), 2, + sym_argument_list, sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36853] = 17, + ACTIONS(1769), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1761), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1597), 8, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [47237] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(585), 1, + anon_sym_COLON_EQ, + ACTIONS(265), 6, + anon_sym_STAR, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 30, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(1379), 1, - sym_identifier, - ACTIONS(1385), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(862), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(740), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(1383), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36930] = 3, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [47284] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1437), 6, - anon_sym_as, + ACTIONS(1219), 1, + anon_sym_COLON_EQ, + ACTIONS(1178), 6, anon_sym_STAR, + anon_sym_COLON, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1435), 35, - sym__template_string_start, + ACTIONS(1173), 30, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -54089,258 +63254,257 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [36979] = 15, + [47331] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1781), 1, sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, + STATE(775), 2, sym_string, - STATE(570), 1, - sym_template_string, - STATE(666), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, + aux_sym_concatenated_string_repeat1, + ACTIONS(1491), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1489), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [37052] = 15, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [47380] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, + ACTIONS(1784), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, + STATE(776), 2, sym_template_string, - STATE(676), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1498), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1496), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [37125] = 15, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [47429] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(1272), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1267), 32, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(591), 1, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [47474] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(83), 1, + sym__template_string_start, + STATE(776), 2, sym_template_string, - STATE(665), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(296), 3, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1485), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1483), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [37198] = 15, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [47523] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(1613), 1, + anon_sym_EQ, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(1797), 1, + anon_sym_PIPE, + ACTIONS(1801), 1, anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(569), 1, - sym_string, - STATE(570), 1, - sym_template_string, - STATE(684), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + ACTIONS(1807), 1, + anon_sym_not, + ACTIONS(1809), 1, + anon_sym_AMP, + ACTIONS(1811), 1, + anon_sym_CARET, + ACTIONS(1815), 1, + anon_sym_is, + STATE(1002), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1791), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1793), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1799), 2, anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(649), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, + anon_sym_PLUS, + ACTIONS(1813), 2, + anon_sym_LT, + anon_sym_GT, + STATE(904), 2, + sym_argument_list, sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [37271] = 3, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1795), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1597), 7, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_if, + anon_sym_and, + anon_sym_or, + anon_sym_SEMI, + [47602] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1441), 6, + ACTIONS(599), 1, + anon_sym_COLON_EQ, + ACTIONS(265), 5, anon_sym_as, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1439), 34, + ACTIONS(298), 31, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, @@ -54366,26 +63530,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37319] = 3, + [47649] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1445), 6, + ACTIONS(1817), 1, + anon_sym_COLON_EQ, + ACTIONS(1178), 5, anon_sym_as, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1443), 34, + ACTIONS(1173), 31, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, @@ -54411,35 +63573,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37367] = 3, + [47696] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1449), 6, - anon_sym_as, + ACTIONS(81), 1, + sym__string_start, + STATE(765), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1178), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1447), 34, + ACTIONS(1173), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -54456,42 +63616,44 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37415] = 3, + anon_sym_SEMI, + [47745] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1728), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1451), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 22, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -54501,36 +63663,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [37463] = 3, + [47803] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1457), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1719), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1455), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1717), 25, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -54546,36 +63709,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [37511] = 3, + [47857] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1461), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1697), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1459), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1695), 25, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -54591,36 +63755,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [37559] = 3, + [47911] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1691), 25, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -54636,42 +63801,46 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [37607] = 3, + [47965] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1469), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1728), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1467), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 20, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -54681,36 +63850,144 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [37655] = 3, + [48025] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1473), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1734), 1, + anon_sym_PIPE, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1746), 1, + anon_sym_AMP, + ACTIONS(1748), 1, + anon_sym_CARET, + ACTIONS(1728), 2, anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1701), 3, anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1699), 15, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [48093] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1746), 1, + anon_sym_AMP, + ACTIONS(1748), 1, + anon_sym_CARET, + ACTIONS(1728), 2, + anon_sym_STAR, anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1471), 34, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 16, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [48159] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, anon_sym_DOT, + ACTIONS(1595), 1, anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1697), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1695), 26, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -54726,36 +64003,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37703] = 3, + [48213] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1477), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1475), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1691), 25, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -54771,35 +64047,136 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [37751] = 3, + [48267] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1748), 1, + anon_sym_CARET, + ACTIONS(1728), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 17, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [48331] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1728), 2, anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 18, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [48393] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + STATE(744), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1178), 4, + anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 34, + ACTIONS(1173), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -54816,35 +64193,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37799] = 3, + [48441] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1481), 6, - anon_sym_as, + ACTIONS(649), 1, + sym__template_string_start, + STATE(745), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1178), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1479), 34, + ACTIONS(1173), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -54861,36 +64236,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37847] = 3, + [48489] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1485), 6, - anon_sym_as, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1483), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1691), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -54906,132 +64281,305 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37895] = 3, + anon_sym_SEMI, + [48543] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1489), 6, - anon_sym_as, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1734), 1, + anon_sym_PIPE, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1746), 1, + anon_sym_AMP, + ACTIONS(1748), 1, + anon_sym_CARET, + ACTIONS(1728), 2, anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1711), 3, anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1709), 15, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [48611] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1724), 1, + anon_sym_DOT, + ACTIONS(1726), 1, + anon_sym_LPAREN, + ACTIONS(1734), 1, + anon_sym_PIPE, + ACTIONS(1738), 1, + anon_sym_LBRACK, + ACTIONS(1740), 1, + anon_sym_STAR_STAR, + ACTIONS(1746), 1, + anon_sym_AMP, + ACTIONS(1748), 1, + anon_sym_CARET, + ACTIONS(1728), 2, + anon_sym_STAR, anon_sym_SLASH, + ACTIONS(1730), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1736), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(906), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1715), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1487), 34, + ACTIONS(1742), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1713), 15, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [48679] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1787), 1, anon_sym_DOT, + ACTIONS(1789), 1, anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + ACTIONS(1791), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1799), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 20, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [48739] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1797), 1, + anon_sym_PIPE, + ACTIONS(1801), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + ACTIONS(1803), 1, anon_sym_STAR_STAR, + ACTIONS(1809), 1, + anon_sym_AMP, + ACTIONS(1811), 1, + anon_sym_CARET, + ACTIONS(1791), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1793), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1799), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1701), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1805), 3, anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1699), 15, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_if, + anon_sym_in, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37943] = 3, + anon_sym_SEMI, + [48807] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 6, - anon_sym_as, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + ACTIONS(1809), 1, + anon_sym_AMP, + ACTIONS(1811), 1, + anon_sym_CARET, + ACTIONS(1791), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + ACTIONS(1793), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1799), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1451), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 16, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [37991] = 3, + anon_sym_SEMI, + [48873] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1493), 6, - anon_sym_as, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + ACTIONS(1791), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1491), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 22, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -55041,36 +64589,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38039] = 3, + anon_sym_SEMI, + [48931] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1497), 6, - anon_sym_as, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1719), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1495), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1717), 26, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -55086,118 +64636,125 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38087] = 3, + [48985] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1497), 6, - anon_sym_as, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + ACTIONS(1811), 1, + anon_sym_CARET, + ACTIONS(1791), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + ACTIONS(1793), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1799), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1495), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 17, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38135] = 3, + anon_sym_SEMI, + [49049] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1501), 6, - anon_sym_as, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + ACTIONS(1791), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + ACTIONS(1793), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1799), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1499), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 18, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38183] = 3, + anon_sym_SEMI, + [49111] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1449), 6, - anon_sym_as, + ACTIONS(1519), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1447), 34, + ACTIONS(1517), 32, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -55221,28 +64778,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38231] = 3, + [49155] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1088), 6, - anon_sym_as, + ACTIONS(1523), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 34, + ACTIONS(1521), 32, + sym__template_string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -55266,28 +64819,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38279] = 3, + [49199] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1505), 6, - anon_sym_as, + ACTIONS(1527), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1503), 34, + ACTIONS(1525), 32, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -55311,28 +64860,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38327] = 3, + [49243] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1509), 6, - anon_sym_as, + ACTIONS(1531), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1507), 34, + ACTIONS(1529), 32, + sym__template_string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -55356,160 +64901,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38375] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1511), 1, - anon_sym_DOT, - ACTIONS(1513), 1, - anon_sym_LPAREN, - ACTIONS(1523), 1, - anon_sym_PIPE, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1529), 1, - anon_sym_STAR_STAR, - ACTIONS(1531), 1, - anon_sym_EQ, - ACTIONS(1535), 1, - anon_sym_not, - ACTIONS(1537), 1, - anon_sym_AMP, - ACTIONS(1539), 1, - anon_sym_CARET, - ACTIONS(1543), 1, - anon_sym_is, - STATE(846), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1517), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1519), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1525), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(1541), 2, - anon_sym_LT, - anon_sym_GT, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1533), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1521), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1515), 10, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_and, - anon_sym_or, - sym_type_conversion, - [38457] = 20, + [49287] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1787), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1789), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1801), 1, anon_sym_LBRACK, - ACTIONS(1531), 1, - anon_sym_as, - ACTIONS(1551), 1, - anon_sym_PIPE, - ACTIONS(1555), 1, + ACTIONS(1803), 1, anon_sym_STAR_STAR, - ACTIONS(1559), 1, - anon_sym_not, - ACTIONS(1561), 1, - anon_sym_AMP, - ACTIONS(1563), 1, - anon_sym_CARET, - ACTIONS(1567), 1, - anon_sym_is, - STATE(845), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1545), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1547), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1553), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(1565), 2, - anon_sym_LT, - anon_sym_GT, - STATE(642), 2, + STATE(904), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1549), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1515), 10, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_and, - anon_sym_or, - [38539] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1571), 6, - anon_sym_as, + ACTIONS(1697), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1569), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1695), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -55525,36 +64946,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38587] = 3, + anon_sym_SEMI, + [49341] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1575), 6, - anon_sym_as, + ACTIONS(1787), 1, + anon_sym_DOT, + ACTIONS(1789), 1, + anon_sym_LPAREN, + ACTIONS(1801), 1, + anon_sym_LBRACK, + ACTIONS(1803), 1, + anon_sym_STAR_STAR, + STATE(904), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1719), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1573), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1717), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -55570,36 +64992,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38635] = 3, + anon_sym_SEMI, + [49395] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(265), 6, - anon_sym_as, + ACTIONS(1593), 1, + anon_sym_DOT, + ACTIONS(1595), 1, + anon_sym_LPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1693), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1691), 26, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -55615,42 +65039,46 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38683] = 3, + [49449] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1577), 34, + ACTIONS(1593), 1, anon_sym_DOT, + ACTIONS(1595), 1, anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1765), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1769), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 21, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -55660,177 +65088,150 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38731] = 3, + [49509] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1581), 34, + ACTIONS(1593), 1, anon_sym_DOT, + ACTIONS(1595), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1609), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + ACTIONS(1763), 1, + anon_sym_PIPE, + ACTIONS(1767), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + ACTIONS(1773), 1, anon_sym_AMP, + ACTIONS(1775), 1, anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [38779] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1587), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, + ACTIONS(1701), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1585), 34, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(1757), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1759), 2, anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1765), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1769), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1699), 16, + anon_sym_COMMA, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38827] = 3, + [49577] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1591), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1589), 34, + ACTIONS(1593), 1, anon_sym_DOT, + ACTIONS(1595), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + ACTIONS(1773), 1, + anon_sym_AMP, + ACTIONS(1775), 1, + anon_sym_CARET, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1759), 2, anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1765), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1769), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 17, + anon_sym_COMMA, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38875] = 3, + [49643] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1595), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1593), 34, + ACTIONS(1593), 1, anon_sym_DOT, + ACTIONS(1595), 1, anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1609), 1, + anon_sym_LBRACK, + ACTIONS(1767), 1, + anon_sym_STAR_STAR, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, + anon_sym_STAR, + anon_sym_SLASH, + STATE(733), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1769), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 23, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + anon_sym_or, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -55840,39 +65241,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38923] = 8, + [49701] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1593), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1767), 1, anon_sym_STAR_STAR, - STATE(642), 2, + STATE(733), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1599), 5, + ACTIONS(1693), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 28, - anon_sym_RPAREN, + ACTIONS(1691), 26, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_AT, anon_sym_not, @@ -55889,164 +65287,150 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [38980] = 15, + [49755] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1593), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(1551), 1, - anon_sym_PIPE, - ACTIONS(1555), 1, + ACTIONS(1767), 1, anon_sym_STAR_STAR, - ACTIONS(1561), 1, - anon_sym_AMP, - ACTIONS(1563), 1, + ACTIONS(1775), 1, anon_sym_CARET, - ACTIONS(1545), 2, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1547), 2, + ACTIONS(1759), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1553), 2, + ACTIONS(1765), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(733), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, + ACTIONS(1769), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1603), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1601), 18, - anon_sym_RPAREN, + ACTIONS(1691), 18, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_in, - anon_sym_RBRACK, + anon_sym_PIPE, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39051] = 15, + [49819] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1593), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(1551), 1, - anon_sym_PIPE, - ACTIONS(1555), 1, + ACTIONS(1767), 1, anon_sym_STAR_STAR, - ACTIONS(1561), 1, - anon_sym_AMP, - ACTIONS(1563), 1, - anon_sym_CARET, - ACTIONS(1545), 2, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1547), 2, + ACTIONS(1759), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1553), 2, + ACTIONS(1765), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(733), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, + ACTIONS(1769), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1607), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1605), 18, - anon_sym_RPAREN, + ACTIONS(1691), 19, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_in, - anon_sym_RBRACK, + anon_sym_PIPE, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39122] = 15, + [49881] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1593), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(1523), 1, - anon_sym_PIPE, - ACTIONS(1527), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1763), 1, + anon_sym_PIPE, + ACTIONS(1767), 1, anon_sym_STAR_STAR, - ACTIONS(1537), 1, + ACTIONS(1773), 1, anon_sym_AMP, - ACTIONS(1539), 1, + ACTIONS(1775), 1, anon_sym_CARET, - ACTIONS(1517), 2, + ACTIONS(1711), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1519), 2, + ACTIONS(1759), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1525), 2, + ACTIONS(1765), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(733), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1769), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1607), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1605), 18, - anon_sym_RPAREN, + ACTIONS(1709), 16, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_not, anon_sym_and, @@ -56057,52 +65441,49 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [39193] = 15, + [49949] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1593), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(1523), 1, - anon_sym_PIPE, - ACTIONS(1527), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1763), 1, + anon_sym_PIPE, + ACTIONS(1767), 1, anon_sym_STAR_STAR, - ACTIONS(1537), 1, + ACTIONS(1773), 1, anon_sym_AMP, - ACTIONS(1539), 1, + ACTIONS(1775), 1, anon_sym_CARET, - ACTIONS(1517), 2, + ACTIONS(1715), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1757), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1519), 2, + ACTIONS(1759), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1525), 2, + ACTIONS(1765), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(733), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1769), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1611), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1609), 18, - anon_sym_RPAREN, + ACTIONS(1713), 16, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_not, anon_sym_and, @@ -56113,247 +65494,199 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [39264] = 15, + [50017] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1523), 1, + ACTIONS(1829), 1, anon_sym_PIPE, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1537), 1, + ACTIONS(1839), 1, + anon_sym_not, + ACTIONS(1841), 1, anon_sym_AMP, - ACTIONS(1539), 1, + ACTIONS(1843), 1, anon_sym_CARET, - ACTIONS(1517), 2, + ACTIONS(1847), 1, + anon_sym_is, + STATE(1009), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1823), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1519), 2, + ACTIONS(1825), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1525), 2, + ACTIONS(1831), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + ACTIONS(1845), 2, + anon_sym_LT, + anon_sym_GT, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1837), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1603), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1601), 18, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, + ACTIONS(1827), 6, anon_sym_in, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [39335] = 12, + ACTIONS(1597), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_and, + anon_sym_or, + [50093] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1787), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1789), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1797), 1, + anon_sym_PIPE, + ACTIONS(1801), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, + ACTIONS(1803), 1, anon_sym_STAR_STAR, - ACTIONS(1545), 2, + ACTIONS(1809), 1, + anon_sym_AMP, + ACTIONS(1811), 1, + anon_sym_CARET, + ACTIONS(1791), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1547), 2, + ACTIONS(1793), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1553), 2, + ACTIONS(1799), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(904), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, + ACTIONS(1711), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1805), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 21, - anon_sym_RPAREN, + ACTIONS(1709), 15, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39400] = 8, + anon_sym_SEMI, + [50161] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1787), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1789), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1797), 1, + anon_sym_PIPE, + ACTIONS(1801), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1803), 1, anon_sym_STAR_STAR, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1615), 5, + ACTIONS(1809), 1, + anon_sym_AMP, + ACTIONS(1811), 1, + anon_sym_CARET, + ACTIONS(1791), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1613), 28, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(1793), 2, anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_in, - anon_sym_PIPE, + anon_sym_LT_LT, + ACTIONS(1799), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [39457] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1511), 1, - anon_sym_DOT, - ACTIONS(1513), 1, - anon_sym_LPAREN, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1555), 1, - anon_sym_STAR_STAR, - STATE(642), 2, + STATE(904), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1619), 5, - anon_sym_as, - anon_sym_STAR, - anon_sym_SLASH, + ACTIONS(1715), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1617), 28, - anon_sym_RPAREN, + ACTIONS(1805), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1713), 15, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39514] = 8, + anon_sym_SEMI, + [50229] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1787), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1789), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1801), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1803), 1, anon_sym_STAR_STAR, - STATE(642), 2, + STATE(904), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1619), 5, + ACTIONS(1693), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1617), 28, - anon_sym_RPAREN, + ACTIONS(1691), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -56369,40 +65702,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [39571] = 8, + anon_sym_SEMI, + [50283] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, - anon_sym_DOT, - ACTIONS(1513), 1, - anon_sym_LPAREN, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1529), 1, - anon_sym_STAR_STAR, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 5, + ACTIONS(278), 1, + anon_sym_COLON_EQ, + ACTIONS(265), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 28, - anon_sym_RPAREN, + ACTIONS(298), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACK, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -56418,152 +65743,31 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [39628] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1511), 1, - anon_sym_DOT, - ACTIONS(1513), 1, - anon_sym_LPAREN, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1551), 1, - anon_sym_PIPE, - ACTIONS(1555), 1, - anon_sym_STAR_STAR, - ACTIONS(1561), 1, - anon_sym_AMP, - ACTIONS(1563), 1, - anon_sym_CARET, - ACTIONS(1545), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1547), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1553), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1557), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1611), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1609), 18, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [39699] = 14, + anon_sym_SEMI, + [50328] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, - anon_sym_DOT, - ACTIONS(1513), 1, - anon_sym_LPAREN, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1529), 1, - anon_sym_STAR_STAR, - ACTIONS(1537), 1, - anon_sym_AMP, - ACTIONS(1539), 1, - anon_sym_CARET, - ACTIONS(1517), 2, + ACTIONS(1523), 5, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1519), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1525), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1533), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [39768] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1511), 1, + ACTIONS(1521), 30, + sym__newline, + sym__template_string_start, anon_sym_DOT, - ACTIONS(1513), 1, + anon_sym_from, anon_sym_LPAREN, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1555), 1, - anon_sym_STAR_STAR, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1615), 5, - anon_sym_as, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1613), 28, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_LBRACK, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -56579,40 +65783,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39825] = 8, + anon_sym_SEMI, + [50371] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - STATE(642), 2, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1599), 5, - anon_sym_as, + ACTIONS(1693), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 28, + ACTIONS(1691), 25, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -56628,46 +65829,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39882] = 11, + [50424] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1545), 2, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1553), 2, + ACTIONS(1831), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, + ACTIONS(1837), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 23, + ACTIONS(1691), 20, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, @@ -56680,48 +65877,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [39945] = 11, + [50483] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, - anon_sym_DOT, - ACTIONS(1513), 1, - anon_sym_LPAREN, - ACTIONS(1527), 1, - anon_sym_LBRACK, - ACTIONS(1529), 1, - anon_sym_STAR_STAR, - ACTIONS(1517), 2, + ACTIONS(1531), 5, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1525), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1533), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 23, - anon_sym_RPAREN, + ACTIONS(1529), 30, + sym__newline, + sym__template_string_start, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -56731,265 +65916,234 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [40008] = 13, + anon_sym_SEMI, + [50526] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1829), 1, + anon_sym_PIPE, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1563), 1, + ACTIONS(1841), 1, + anon_sym_AMP, + ACTIONS(1843), 1, anon_sym_CARET, - ACTIONS(1545), 2, + ACTIONS(1701), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1547), 2, + ACTIONS(1825), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1553), 2, + ACTIONS(1831), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, + ACTIONS(1837), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 20, + ACTIONS(1699), 15, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40075] = 12, + [50593] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1517), 2, + ACTIONS(1841), 1, + anon_sym_AMP, + ACTIONS(1843), 1, + anon_sym_CARET, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1519), 2, + ACTIONS(1825), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1525), 2, + ACTIONS(1831), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1837), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 21, + ACTIONS(1691), 16, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [40140] = 13, + [50658] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1539), 1, - anon_sym_CARET, - ACTIONS(1517), 2, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1519), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1525), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(642), 2, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1837), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 20, + ACTIONS(1691), 22, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_not, anon_sym_and, anon_sym_or, anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [40207] = 14, + [50715] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1173), 3, anon_sym_DOT, - ACTIONS(1513), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, - anon_sym_STAR_STAR, - ACTIONS(1561), 1, - anon_sym_AMP, - ACTIONS(1563), 1, - anon_sym_CARET, - ACTIONS(1545), 2, + ACTIONS(1178), 13, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1547), 2, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1553), 2, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1557), 3, + anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_SLASH, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 19, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + ACTIONS(1223), 19, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, - anon_sym_PIPE, anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [40276] = 10, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [50760] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1545), 2, - anon_sym_STAR, - anon_sym_SLASH, - STATE(642), 2, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1557), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_as, + ACTIONS(1693), 4, + anon_sym_STAR, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 25, + ACTIONS(1691), 25, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -56999,135 +66153,172 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40337] = 8, + [50813] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1555), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - STATE(642), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 5, - anon_sym_as, - anon_sym_STAR, - anon_sym_SLASH, + ACTIONS(1843), 1, + anon_sym_CARET, + ACTIONS(1693), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 28, + ACTIONS(1823), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1825), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1831), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(977), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1837), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1691), 17, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_GT_GT, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40394] = 10, + [50876] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(1819), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1821), 1, anon_sym_LPAREN, - ACTIONS(1527), 1, + ACTIONS(1833), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1835), 1, anon_sym_STAR_STAR, - ACTIONS(1517), 2, + ACTIONS(1693), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, anon_sym_STAR, anon_sym_SLASH, - STATE(642), 2, + ACTIONS(1825), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1831), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(977), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1837), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1599), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1597), 25, + ACTIONS(1691), 18, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_GT_GT, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, anon_sym_AMP, anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [40455] = 5, + [50937] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1621), 1, - sym__template_string_start, - STATE(686), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1389), 4, + ACTIONS(1267), 3, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_LBRACK, + ACTIONS(1272), 13, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + ACTIONS(1274), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [50982] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(599), 1, + anon_sym_COLON_EQ, + ACTIONS(651), 1, + anon_sym_EQ, + ACTIONS(265), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1387), 31, + ACTIONS(298), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57144,32 +66335,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40505] = 4, + [51029] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1090), 1, + ACTIONS(613), 1, anon_sym_COLON_EQ, - ACTIONS(1088), 6, + ACTIONS(265), 5, anon_sym_STAR, - anon_sym_COLON, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 31, + ACTIONS(298), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -57187,35 +66374,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [40553] = 5, + [51074] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1624), 1, - sym__string_start, - STATE(688), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1404), 4, + ACTIONS(1527), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1402), 31, + ACTIONS(1525), 30, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -57233,34 +66414,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40603] = 5, + anon_sym_COLON2, + sym_type_conversion, + [51117] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(627), 1, - sym__template_string_start, - STATE(686), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1396), 4, + ACTIONS(1849), 1, + anon_sym_COLON_EQ, + ACTIONS(1178), 5, anon_sym_STAR, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1394), 31, + ACTIONS(1173), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -57278,65 +66457,130 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40653] = 3, + [51162] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1158), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1153), 33, + ACTIONS(1819), 1, anon_sym_DOT, + ACTIONS(1821), 1, anon_sym_LPAREN, + ACTIONS(1829), 1, + anon_sym_PIPE, + ACTIONS(1833), 1, + anon_sym_LBRACK, + ACTIONS(1835), 1, + anon_sym_STAR_STAR, + ACTIONS(1841), 1, + anon_sym_AMP, + ACTIONS(1843), 1, + anon_sym_CARET, + ACTIONS(1711), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1825), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1831), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(977), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1837), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1709), 15, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_in, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [51229] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1819), 1, + anon_sym_DOT, + ACTIONS(1821), 1, + anon_sym_LPAREN, + ACTIONS(1829), 1, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1833), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + ACTIONS(1835), 1, anon_sym_STAR_STAR, + ACTIONS(1841), 1, + anon_sym_AMP, + ACTIONS(1843), 1, + anon_sym_CARET, + ACTIONS(1715), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1823), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1825), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1831), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(977), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1837), 3, anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1713), 15, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym_type_conversion, - [40699] = 5, + [51296] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - STATE(688), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1400), 4, + ACTIONS(1819), 1, + anon_sym_DOT, + ACTIONS(1821), 1, + anon_sym_LPAREN, + ACTIONS(1833), 1, + anon_sym_LBRACK, + ACTIONS(1835), 1, + anon_sym_STAR_STAR, + STATE(977), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1719), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1398), 31, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1717), 25, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -57347,10 +66591,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -57366,34 +66606,88 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40749] = 4, + [51349] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1627), 1, - anon_sym_COLON_EQ, - ACTIONS(1088), 6, - anon_sym_as, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, anon_sym_STAR, + ACTIONS(1857), 1, + anon_sym_if, + ACTIONS(1859), 1, anon_sym_COLON, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [51430] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1519), 5, + anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 31, + ACTIONS(1517), 30, + sym__newline, + sym__string_start, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57410,35 +66704,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40797] = 4, + anon_sym_SEMI, + [51473] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(599), 1, - anon_sym_COLON_EQ, - ACTIONS(265), 6, - anon_sym_as, + ACTIONS(1819), 1, + anon_sym_DOT, + ACTIONS(1821), 1, + anon_sym_LPAREN, + ACTIONS(1833), 1, + anon_sym_LBRACK, + ACTIONS(1835), 1, + anon_sym_STAR_STAR, + STATE(977), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1697), 4, anon_sym_STAR, - anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 31, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1695), 25, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -57454,75 +66750,68 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [40845] = 4, + [51526] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(585), 1, - anon_sym_COLON_EQ, - ACTIONS(265), 6, - anon_sym_STAR, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 31, + ACTIONS(1173), 3, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + anon_sym_LBRACK, + ACTIONS(1178), 13, + anon_sym_STAR, anon_sym_GT_GT, - anon_sym_if, - anon_sym_else, - anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, + anon_sym_SLASH, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym_type_conversion, - [40893] = 3, + ACTIONS(1184), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [51571] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1173), 5, + ACTIONS(1519), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1168), 33, + ACTIONS(1517), 30, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -57540,25 +66829,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_COLON2, sym_type_conversion, - [40939] = 5, + [51614] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1629), 1, - sym__template_string_start, - STATE(696), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1389), 5, + ACTIONS(1531), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1387), 29, - sym__newline, + ACTIONS(1529), 30, + sym__template_string_start, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -57568,6 +66852,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57584,24 +66869,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [40988] = 3, + anon_sym_COLON2, + sym_type_conversion, + [51657] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1158), 5, - anon_sym_as, + ACTIONS(1817), 1, + anon_sym_COLON_EQ, + ACTIONS(1875), 1, + anon_sym_EQ, + ACTIONS(1178), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1153), 32, + ACTIONS(1173), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_in, @@ -57609,8 +66897,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57627,21 +66913,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [41033] = 5, + [51704] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(81), 1, - sym__string_start, - STATE(699), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1088), 5, + ACTIONS(1180), 1, + anon_sym_COLON_EQ, + ACTIONS(1178), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, + ACTIONS(1173), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -57670,73 +66953,228 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41082] = 5, + anon_sym_SEMI, + [51749] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(81), 1, + ACTIONS(647), 1, sym__string_start, - STATE(704), 2, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1877), 1, + anon_sym_if, + ACTIONS(1879), 1, + anon_sym_COLON, + STATE(1039), 1, sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1400), 5, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [51830] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(298), 3, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_LBRACK, + ACTIONS(265), 13, anon_sym_STAR, - anon_sym_EQ, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1398), 29, - sym__newline, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + ACTIONS(302), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [51875] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1390), 2, + sym__match_patterns, + sym_open_sequence_match_pattern, + STATE(1391), 2, + sym__match_pattern, + sym_match_as_pattern, + STATE(1509), 2, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [51956] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1278), 3, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, + anon_sym_LBRACK, + ACTIONS(1283), 13, + anon_sym_STAR, anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, + anon_sym_SLASH, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [41131] = 5, + ACTIONS(1285), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [52001] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(83), 1, - sym__template_string_start, - STATE(701), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1088), 5, + ACTIONS(1817), 1, + anon_sym_COLON_EQ, + ACTIONS(1175), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1178), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, - sym__newline, + ACTIONS(1173), 27, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -57758,25 +67196,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41180] = 5, + [52048] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(83), 1, - sym__template_string_start, - STATE(696), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1396), 5, + ACTIONS(1523), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1394), 29, - sym__newline, + ACTIONS(1521), 30, + sym__template_string_start, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -57786,6 +67217,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57802,92 +67234,72 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41229] = 20, + anon_sym_COLON2, + sym_type_conversion, + [52091] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1531), 1, - anon_sym_EQ, - ACTIONS(1632), 1, + ACTIONS(298), 3, anon_sym_DOT, - ACTIONS(1634), 1, anon_sym_LPAREN, - ACTIONS(1642), 1, - anon_sym_PIPE, - ACTIONS(1646), 1, anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1652), 1, - anon_sym_not, - ACTIONS(1654), 1, - anon_sym_AMP, - ACTIONS(1656), 1, - anon_sym_CARET, - ACTIONS(1660), 1, - anon_sym_is, - STATE(850), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1636), 2, + ACTIONS(265), 13, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1638), 2, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(1658), 2, - anon_sym_LT, - anon_sym_GT, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1650), 3, + anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_SLASH, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1640), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1515), 7, - sym__newline, - anon_sym_from, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + ACTIONS(593), 19, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, - anon_sym_and, - anon_sym_or, - sym__semicolon, - [41308] = 3, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [52136] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1173), 5, - anon_sym_as, + ACTIONS(1527), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1168), 32, + ACTIONS(1525), 30, + sym__newline, + sym__string_start, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57904,33 +67316,91 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [41353] = 5, + anon_sym_SEMI, + [52179] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1662), 1, + ACTIONS(647), 1, sym__string_start, - STATE(704), 2, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + STATE(1039), 1, sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1404), 5, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1391), 2, + sym__match_pattern, + sym_match_as_pattern, + STATE(1456), 2, + sym__match_patterns, + sym_open_sequence_match_pattern, + STATE(1509), 2, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [52260] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(655), 1, + anon_sym_COLON_EQ, + ACTIONS(265), 5, anon_sym_STAR, - anon_sym_EQ, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1402), 29, - sym__newline, + ACTIONS(298), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -57947,149 +67417,39 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41402] = 13, + [52305] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1656), 1, - anon_sym_CARET, - ACTIONS(1636), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1638), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 17, - sym__newline, - anon_sym_from, + ACTIONS(599), 1, + anon_sym_COLON_EQ, + ACTIONS(270), 3, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_AMP, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [41466] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1642), 1, - anon_sym_PIPE, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1654), 1, - anon_sym_AMP, - ACTIONS(1656), 1, - anon_sym_CARET, - ACTIONS(1636), 2, + anon_sym_RBRACK, + ACTIONS(265), 4, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1638), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1607), 3, - anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1605), 15, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [41534] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1632), 1, + ACTIONS(298), 27, anon_sym_DOT, - ACTIONS(1634), 1, anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1636), 2, - anon_sym_STAR, - anon_sym_SLASH, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 22, - sym__newline, - anon_sym_from, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -58099,30 +67459,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41592] = 8, + [52352] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 5, + ACTIONS(1881), 1, + anon_sym_COLON_EQ, + ACTIONS(1178), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 25, - sym__newline, - anon_sym_from, + ACTIONS(1173), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -58130,6 +67480,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -58145,31 +67498,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41646] = 3, + anon_sym_COLON2, + sym_type_conversion, + [52397] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1427), 4, + ACTIONS(1629), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1425), 32, - sym__string_start, + ACTIONS(1627), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -58187,79 +67537,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [41690] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1636), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1638), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 18, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [41752] = 8, + anon_sym_COLON2, + sym_type_conversion, + [52439] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1615), 5, + ACTIONS(1591), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1613), 25, + ACTIONS(1589), 29, sym__newline, + anon_sym_DOT, anon_sym_from, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -58267,6 +67560,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -58282,30 +67577,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41806] = 8, + anon_sym_SEMI, + [52481] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1619), 5, + ACTIONS(1575), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1617), 25, - sym__newline, - anon_sym_from, + ACTIONS(1573), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -58313,6 +67597,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -58328,136 +67615,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [41860] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1642), 1, - anon_sym_PIPE, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1654), 1, - anon_sym_AMP, - ACTIONS(1656), 1, - anon_sym_CARET, - ACTIONS(1636), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1638), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1611), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1609), 15, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [41928] = 14, + anon_sym_COLON2, + sym_type_conversion, + [52523] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1654), 1, - anon_sym_AMP, - ACTIONS(1656), 1, - anon_sym_CARET, - ACTIONS(1636), 2, + ACTIONS(1555), 5, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1638), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 3, anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 16, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [41994] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1423), 4, - anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1421), 32, - sym__template_string_start, + ACTIONS(1553), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -58475,30 +67654,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [42038] = 3, + anon_sym_COLON2, + sym_type_conversion, + [52565] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1419), 4, + ACTIONS(1272), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1417), 32, - sym__string_start, + ACTIONS(1267), 30, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -58515,141 +67694,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - anon_sym_is, - [42082] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1642), 1, - anon_sym_PIPE, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1654), 1, - anon_sym_AMP, - ACTIONS(1656), 1, - anon_sym_CARET, - ACTIONS(1636), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1638), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1603), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1601), 15, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - sym__semicolon, - [42150] = 19, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1675), 1, - anon_sym_PIPE, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1685), 1, - anon_sym_not, - ACTIONS(1687), 1, - anon_sym_AMP, - ACTIONS(1689), 1, - anon_sym_CARET, - ACTIONS(1693), 1, - anon_sym_is, - STATE(863), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1669), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1671), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(1691), 2, - anon_sym_LT, - anon_sym_GT, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1673), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1515), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_and, - anon_sym_or, - [42226] = 3, + anon_sym_is, + [52607] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1437), 4, + ACTIONS(1283), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1435), 32, - sym__template_string_start, + ACTIONS(1278), 30, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -58667,33 +67734,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [42270] = 5, + [52649] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - STATE(691), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1088), 4, + ACTIONS(1559), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, + ACTIONS(1557), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -58710,45 +67771,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [42318] = 11, + anon_sym_COLON2, + sym_type_conversion, + [52691] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - ACTIONS(1636), 2, + ACTIONS(1563), 5, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1644), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 3, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1650), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 20, - sym__newline, - anon_sym_from, + ACTIONS(1561), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -58758,34 +67810,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [42378] = 5, + anon_sym_COLON2, + sym_type_conversion, + [52733] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(627), 1, - sym__template_string_start, - STATE(689), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1088), 4, + ACTIONS(1567), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, + ACTIONS(1565), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -58802,29 +67849,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [42426] = 8, + anon_sym_COLON2, + sym_type_conversion, + [52775] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1632), 1, - anon_sym_DOT, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(1646), 1, - anon_sym_LBRACK, - ACTIONS(1648), 1, - anon_sym_STAR_STAR, - STATE(788), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 5, + ACTIONS(1571), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 25, - sym__newline, - anon_sym_from, + ACTIONS(1569), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -58832,6 +67870,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -58847,62 +67888,58 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [42480] = 4, + anon_sym_COLON2, + sym_type_conversion, + [52817] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1153), 3, + ACTIONS(1001), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(999), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(1158), 13, - anon_sym_STAR, + anon_sym_COMMA, anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_SLASH, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(1160), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [42525] = 3, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [52859] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1437), 5, + ACTIONS(1535), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1435), 30, - sym__newline, - sym__template_string_start, + ACTIONS(1533), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -58912,6 +67949,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -58928,19 +67966,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [42568] = 3, + anon_sym_COLON2, + sym_type_conversion, + [52901] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1423), 5, + ACTIONS(1685), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1421), 30, + ACTIONS(1683), 29, sym__newline, - sym__template_string_start, anon_sym_DOT, anon_sym_from, anon_sym_LPAREN, @@ -58968,22 +68006,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [42611] = 4, + anon_sym_SEMI, + [52943] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(265), 5, + ACTIONS(1633), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, - sym__newline, + ACTIONS(1631), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -58993,6 +68027,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -59009,92 +68044,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [42656] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1183), 2, - sym__match_patterns, - sym_open_sequence_match_pattern, - STATE(1184), 2, - sym__match_pattern, - sym_match_as_pattern, - STATE(1362), 2, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [42737] = 5, + anon_sym_COLON2, + sym_type_conversion, + [52985] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(599), 1, - anon_sym_COLON_EQ, - ACTIONS(270), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(265), 4, + ACTIONS(1665), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 27, + ACTIONS(1663), 29, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -59111,21 +68083,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [42784] = 4, + anon_sym_COLON2, + sym_type_conversion, + [53027] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1145), 1, - anon_sym_COLON_EQ, - ACTIONS(1088), 5, + ACTIONS(1669), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, - sym__newline, + ACTIONS(1667), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -59135,6 +68105,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -59151,563 +68122,225 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [42829] = 4, + anon_sym_COLON2, + sym_type_conversion, + [53069] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(298), 3, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(265), 13, + ACTIONS(1673), 5, anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - ACTIONS(302), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [42874] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(298), 3, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1671), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(265), 13, - anon_sym_STAR, + anon_sym_COMMA, anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_SLASH, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(593), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [42919] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1184), 2, - sym__match_pattern, - sym_match_as_pattern, - STATE(1277), 2, - sym__match_patterns, - sym_open_sequence_match_pattern, - STATE(1362), 2, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [43000] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1675), 1, - anon_sym_PIPE, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1687), 1, - anon_sym_AMP, - ACTIONS(1689), 1, - anon_sym_CARET, - ACTIONS(1611), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1671), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1609), 15, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_not, - anon_sym_and, - anon_sym_or, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43067] = 4, + anon_sym_COLON2, + sym_type_conversion, + [53111] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1083), 3, + ACTIONS(1677), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1675), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(1088), 13, - anon_sym_STAR, + anon_sym_COMMA, anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_SLASH, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(1149), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [43112] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1675), 1, - anon_sym_PIPE, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1687), 1, - anon_sym_AMP, - ACTIONS(1689), 1, - anon_sym_CARET, - ACTIONS(1607), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1671), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1605), 15, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_not, - anon_sym_and, - anon_sym_or, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43179] = 22, + anon_sym_COLON2, + sym_type_conversion, + [53153] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, + ACTIONS(1681), 5, anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1715), 1, - anon_sym_if, - ACTIONS(1717), 1, - anon_sym_COLON, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [43260] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1168), 3, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1679), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(1173), 13, - anon_sym_STAR, + anon_sym_COMMA, anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - ACTIONS(1175), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [43305] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, anon_sym_LBRACK, - ACTIONS(1681), 1, + anon_sym_RBRACE, anon_sym_STAR_STAR, - ACTIONS(1599), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1671), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 18, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43366] = 4, + anon_sym_COLON2, + sym_type_conversion, + [53195] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1083), 3, + ACTIONS(1673), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1671), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(1088), 13, - anon_sym_STAR, + anon_sym_COMMA, anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_SLASH, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(1094), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [43411] = 13, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [53237] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1689), 1, - anon_sym_CARET, - ACTIONS(1599), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, + ACTIONS(1559), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1671), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 17, - anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1557), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, + anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43474] = 8, + anon_sym_SEMI, + [53279] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 4, + ACTIONS(1637), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 25, - anon_sym_RPAREN, + ACTIONS(1635), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -59723,20 +68356,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43527] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53321] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1419), 5, + ACTIONS(1539), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1417), 30, - sym__newline, - sym__string_start, + ACTIONS(1537), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -59746,6 +68378,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -59762,45 +68395,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [43570] = 10, + anon_sym_COLON2, + sym_type_conversion, + [53363] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1599), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, + ACTIONS(1547), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 22, - anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1545), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -59810,87 +68434,70 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43627] = 14, + anon_sym_COLON2, + sym_type_conversion, + [53405] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1687), 1, - anon_sym_AMP, - ACTIONS(1689), 1, - anon_sym_CARET, - ACTIONS(1599), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, + ACTIONS(1015), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1671), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 16, - anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1013), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, + anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43692] = 8, + anon_sym_COLON2, + sym_type_conversion, + [53447] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1619), 4, + ACTIONS(1555), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1617), 25, - anon_sym_RPAREN, + ACTIONS(1553), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -59906,32 +68513,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43745] = 5, + anon_sym_SEMI, + [53489] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(599), 1, - anon_sym_COLON_EQ, - ACTIONS(629), 1, - anon_sym_EQ, - ACTIONS(265), 4, + ACTIONS(1583), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, + ACTIONS(1581), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -59948,36 +68551,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43792] = 8, + anon_sym_COLON2, + sym_type_conversion, + [53531] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1615), 4, + ACTIONS(1583), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1613), 25, - anon_sym_RPAREN, + ACTIONS(1581), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -59993,32 +68590,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43845] = 5, + anon_sym_COLON2, + sym_type_conversion, + [53573] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1627), 1, - anon_sym_COLON_EQ, - ACTIONS(1719), 1, - anon_sym_EQ, - ACTIONS(1088), 4, + ACTIONS(1591), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, + ACTIONS(1589), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -60035,156 +68629,75 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43892] = 22, + anon_sym_COLON2, + sym_type_conversion, + [53615] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, + ACTIONS(1579), 5, anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1721), 1, - anon_sym_if, - ACTIONS(1723), 1, - anon_sym_COLON, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [43973] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1675), 1, - anon_sym_PIPE, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1687), 1, - anon_sym_AMP, - ACTIONS(1689), 1, - anon_sym_CARET, - ACTIONS(1603), 2, + anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1669), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1671), 2, + ACTIONS(1577), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1677), 2, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1601), 15, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44040] = 11, + anon_sym_COLON2, + sym_type_conversion, + [53657] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - ACTIONS(1599), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1669), 2, + ACTIONS(1685), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1677), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1683), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1597), 20, - anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1683), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -60194,36 +68707,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44099] = 8, + anon_sym_COLON2, + sym_type_conversion, + [53699] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 1, - anon_sym_DOT, - ACTIONS(1667), 1, - anon_sym_LPAREN, - ACTIONS(1679), 1, - anon_sym_LBRACK, - ACTIONS(1681), 1, - anon_sym_STAR_STAR, - STATE(813), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1599), 4, + ACTIONS(1579), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1597), 25, - anon_sym_RPAREN, + ACTIONS(1577), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -60239,32 +68746,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44152] = 5, + anon_sym_COLON2, + sym_type_conversion, + [53741] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1627), 1, - anon_sym_COLON_EQ, - ACTIONS(1142), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1088), 4, + ACTIONS(1543), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 27, + ACTIONS(1541), 29, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -60281,20 +68785,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44199] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53783] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1427), 5, + ACTIONS(1551), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1425), 30, - sym__newline, - sym__string_start, + ACTIONS(1549), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -60304,6 +68807,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -60320,31 +68824,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44242] = 4, + anon_sym_COLON2, + sym_type_conversion, + [53825] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1170), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1173), 4, + ACTIONS(1543), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1168), 27, + ACTIONS(1541), 29, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -60361,16 +68863,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44286] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53867] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1505), 5, + ACTIONS(1575), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1503), 29, + ACTIONS(1573), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60399,17 +68903,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44328] = 3, + anon_sym_SEMI, + [53909] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 5, + ACTIONS(1567), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 29, + ACTIONS(1565), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60438,17 +68942,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44370] = 3, + anon_sym_SEMI, + [53951] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(265), 5, + ACTIONS(1579), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, + ACTIONS(1577), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60477,17 +68981,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44412] = 3, + anon_sym_SEMI, + [53993] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1088), 5, + ACTIONS(1689), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, + ACTIONS(1687), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60516,17 +69020,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44454] = 3, + anon_sym_SEMI, + [54035] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 5, + ACTIONS(1272), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1577), 29, + ACTIONS(1267), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60555,24 +69059,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44496] = 4, + anon_sym_SEMI, + [54077] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(613), 1, - anon_sym_COLON_EQ, - ACTIONS(265), 5, + ACTIONS(1689), 5, anon_sym_STAR, - anon_sym_COLON, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 28, + ACTIONS(1687), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_in, @@ -60580,6 +69080,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -60596,16 +69097,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44540] = 3, + anon_sym_COLON2, + sym_type_conversion, + [54119] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1575), 5, + ACTIONS(1633), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1573), 29, + ACTIONS(1631), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60634,17 +69137,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44582] = 3, + anon_sym_SEMI, + [54161] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1571), 5, + ACTIONS(1178), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1569), 29, + ACTIONS(1173), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60673,132 +69176,56 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44624] = 22, + anon_sym_SEMI, + [54203] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, + ACTIONS(1583), 5, anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1725), 1, - anon_sym_RPAREN, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1376), 2, - sym__match_pattern, - sym_match_as_pattern, - STATE(1382), 2, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [44704] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1581), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1725), 1, - anon_sym_RBRACK, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1206), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [44782] = 3, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [54245] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1449), 5, + ACTIONS(1665), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1447), 29, + ACTIONS(1663), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -60827,79 +69254,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44824] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1727), 1, - anon_sym_RBRACK, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [44902] = 3, + anon_sym_SEMI, + [54287] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1469), 5, + ACTIONS(635), 1, + anon_sym_COLON_EQ, + ACTIONS(265), 5, anon_sym_STAR, - anon_sym_EQ, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1467), 29, - sym__newline, + ACTIONS(298), 28, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_in, @@ -60923,26 +69295,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [44944] = 4, + [54331] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1142), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1088), 4, + ACTIONS(1883), 1, + anon_sym_COLON_EQ, + ACTIONS(1178), 5, anon_sym_STAR, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 27, + ACTIONS(1173), 28, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -60964,73 +69335,55 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44988] = 21, + [54375] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, + ACTIONS(1669), 5, anon_sym_STAR, - ACTIONS(1701), 1, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1667), 29, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1727), 1, - anon_sym_RPAREN, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [45066] = 3, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [54417] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 5, + ACTIONS(1543), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 29, + ACTIONS(1541), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61059,138 +69412,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45108] = 21, + anon_sym_SEMI, + [54459] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1729), 1, + ACTIONS(1175), 3, anon_sym_RPAREN, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [45186] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1729), 1, + anon_sym_COMMA, anon_sym_RBRACK, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [45264] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1497), 5, + ACTIONS(1178), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1495), 29, - sym__newline, + ACTIONS(1173), 27, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -61212,17 +69453,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45306] = 3, + [54503] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1497), 5, + ACTIONS(1551), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1495), 29, + ACTIONS(1549), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61251,17 +69491,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45348] = 3, + anon_sym_SEMI, + [54545] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1477), 5, + ACTIONS(1543), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1475), 29, + ACTIONS(1541), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61290,24 +69530,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45390] = 4, + anon_sym_SEMI, + [54587] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1731), 1, - anon_sym_COLON_EQ, - ACTIONS(1088), 5, + ACTIONS(1283), 5, anon_sym_STAR, - anon_sym_COLON, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 28, + ACTIONS(1278), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_in, @@ -61331,23 +69569,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45434] = 3, + anon_sym_SEMI, + [54629] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1158), 5, + ACTIONS(1269), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1272), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1153), 29, - sym__newline, + ACTIONS(1267), 27, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -61369,17 +69610,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45476] = 3, + [54673] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1461), 5, + ACTIONS(1673), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1459), 29, + ACTIONS(1671), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61408,17 +69648,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45518] = 3, + anon_sym_SEMI, + [54715] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1473), 5, + ACTIONS(1677), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1471), 29, + ACTIONS(1675), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61447,17 +69687,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45560] = 3, + anon_sym_SEMI, + [54757] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1485), 5, + ACTIONS(1681), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1483), 29, + ACTIONS(1679), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61486,17 +69726,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45602] = 3, + anon_sym_SEMI, + [54799] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1481), 5, + ACTIONS(1673), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1479), 29, + ACTIONS(1671), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61525,20 +69765,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45644] = 3, + anon_sym_SEMI, + [54841] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1173), 5, + ACTIONS(1178), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1168), 29, - sym__newline, + ACTIONS(1173), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -61548,6 +69786,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -61564,24 +69803,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45686] = 3, + anon_sym_COLON2, + sym_type_conversion, + [54883] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 5, + ACTIONS(1280), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1283), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1451), 29, - sym__newline, + ACTIONS(1278), 27, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -61603,17 +69845,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45728] = 3, + [54927] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1509), 5, + ACTIONS(265), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1507), 29, + ACTIONS(298), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61642,17 +69883,131 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45770] = 3, + anon_sym_SEMI, + [54969] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 5, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1885), 1, + anon_sym_RPAREN, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55047] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1885), 1, + anon_sym_RBRACK, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55125] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1637), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1581), 29, + ACTIONS(1635), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61681,17 +70036,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45812] = 3, + anon_sym_SEMI, + [55167] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1489), 5, + ACTIONS(1539), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1487), 29, + ACTIONS(1537), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61720,17 +70075,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45854] = 3, + anon_sym_SEMI, + [55209] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1587), 5, + ACTIONS(1535), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1585), 29, + ACTIONS(1533), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61759,17 +70114,246 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45896] = 3, + anon_sym_SEMI, + [55251] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1887), 1, + anon_sym_RPAREN, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1553), 2, + sym__match_pattern, + sym_match_as_pattern, + STATE(1556), 2, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55331] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1887), 1, + anon_sym_RBRACK, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1469), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55409] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1889), 1, + anon_sym_RPAREN, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55487] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1889), 1, + anon_sym_RBRACK, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55565] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1501), 5, + ACTIONS(1547), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1499), 29, + ACTIONS(1545), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61798,17 +70382,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45938] = 3, + anon_sym_SEMI, + [55607] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1441), 5, + ACTIONS(1563), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1439), 29, + ACTIONS(1561), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61837,20 +70421,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [45980] = 3, + anon_sym_SEMI, + [55649] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1595), 5, + ACTIONS(265), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1593), 29, - sym__newline, + ACTIONS(298), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -61860,6 +70442,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -61876,20 +70459,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46022] = 3, + anon_sym_COLON2, + sym_type_conversion, + [55691] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1449), 5, + ACTIONS(1587), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1447), 29, - sym__newline, + ACTIONS(1585), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -61899,6 +70481,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -61915,17 +70498,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46064] = 3, + anon_sym_COLON2, + sym_type_conversion, + [55733] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1493), 5, + ACTIONS(1583), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1491), 29, + ACTIONS(1581), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61954,17 +70538,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46106] = 3, + anon_sym_SEMI, + [55775] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 5, + ACTIONS(1629), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1451), 29, + ACTIONS(1627), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -61993,57 +70577,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46148] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1155), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1158), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1153), 27, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [46192] = 3, + anon_sym_SEMI, + [55817] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1445), 5, + ACTIONS(1587), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1443), 29, + ACTIONS(1585), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -62072,17 +70616,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46234] = 3, + anon_sym_SEMI, + [55859] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1591), 5, + ACTIONS(1579), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1589), 29, + ACTIONS(1577), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -62111,17 +70655,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46276] = 3, + anon_sym_SEMI, + [55901] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1457), 5, + ACTIONS(1571), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1455), 29, + ACTIONS(1569), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -62150,16 +70694,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - sym__semicolon, - [46318] = 3, + anon_sym_SEMI, + [55943] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1595), 4, + ACTIONS(1559), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1593), 29, + ACTIONS(1557), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62189,7 +70733,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46359] = 3, + [55984] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1575), 4, @@ -62227,15 +70771,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46400] = 3, + [56025] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(265), 4, + ACTIONS(1001), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, + ACTIONS(999), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62265,112 +70809,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46441] = 5, + [56066] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(585), 1, - anon_sym_COLON_EQ, - ACTIONS(629), 1, - anon_sym_EQ, - ACTIONS(265), 4, + ACTIONS(1637), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 27, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [46486] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1733), 1, - sym_identifier, - ACTIONS(1735), 1, - anon_sym_RPAREN, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1192), 1, - sym_match_keyword_pattern, - STATE(1200), 1, - sym_match_positional_pattern, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1373), 2, - sym__match_pattern, - sym_match_as_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [46565] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1449), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1447), 29, + ACTIONS(1635), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62400,108 +70847,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46606] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1501), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1499), 29, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [46647] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1695), 1, - sym_identifier, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1699), 1, - anon_sym_STAR, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(1089), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [46722] = 3, + [56107] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1449), 4, + ACTIONS(1535), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1447), 29, + ACTIONS(1533), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62531,15 +70885,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46763] = 3, + [56148] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1088), 4, + ACTIONS(1547), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 29, + ACTIONS(1545), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62569,72 +70923,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46804] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - ACTIONS(1697), 1, - anon_sym_LPAREN, - ACTIONS(1701), 1, - anon_sym_DASH, - ACTIONS(1703), 1, - sym_match_wildcard_pattern, - ACTIONS(1705), 1, - anon_sym_LBRACK, - ACTIONS(1707), 1, - anon_sym_LBRACE, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1733), 1, - sym_identifier, - ACTIONS(1737), 1, - anon_sym_RPAREN, - STATE(891), 1, - sym_template_string, - STATE(892), 1, - sym_string, - STATE(1213), 1, - sym_match_keyword_pattern, - STATE(1332), 1, - sym_match_positional_pattern, - STATE(1419), 1, - sym_pattern_class_name, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1014), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1373), 2, - sym__match_pattern, - sym_match_as_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - STATE(980), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [46883] = 3, + [56189] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1509), 4, + ACTIONS(1015), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1507), 29, + ACTIONS(1013), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62664,15 +70961,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46924] = 3, + [56230] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 4, + ACTIONS(1587), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1451), 29, + ACTIONS(1585), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62702,15 +70999,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46965] = 3, + [56271] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1489), 4, + ACTIONS(1178), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1487), 29, + ACTIONS(1173), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62740,15 +71037,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47006] = 3, + [56312] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1481), 4, + ACTIONS(1583), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1479), 29, + ACTIONS(1581), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62778,15 +71075,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47047] = 3, + [56353] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1485), 4, + ACTIONS(1583), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1483), 29, + ACTIONS(1581), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62816,15 +71113,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47088] = 3, + [56394] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 4, + ACTIONS(1591), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1451), 29, + ACTIONS(1589), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62854,15 +71151,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47129] = 3, + [56435] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1591), 4, + ACTIONS(1579), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1589), 29, + ACTIONS(1577), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62892,15 +71189,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47170] = 3, + [56476] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1493), 4, + ACTIONS(1629), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1491), 29, + ACTIONS(1627), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62930,15 +71227,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47211] = 3, + [56517] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1497), 4, + ACTIONS(1685), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1495), 29, + ACTIONS(1683), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -62968,15 +71265,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47252] = 3, + [56558] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1445), 4, + ACTIONS(1579), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1443), 29, + ACTIONS(1577), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63006,15 +71303,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47293] = 3, + [56599] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1497), 4, + ACTIONS(1543), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1495), 29, + ACTIONS(1541), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63044,15 +71341,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47334] = 3, + [56640] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(863), 4, + ACTIONS(1551), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(861), 29, + ACTIONS(1549), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63082,55 +71379,93 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47375] = 22, + [56681] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(265), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(298), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [56722] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(1697), 1, + ACTIONS(1853), 1, anon_sym_LPAREN, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1703), 1, + ACTIONS(1863), 1, sym_match_wildcard_pattern, - ACTIONS(1705), 1, + ACTIONS(1865), 1, anon_sym_LBRACK, - ACTIONS(1707), 1, + ACTIONS(1867), 1, anon_sym_LBRACE, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - ACTIONS(1733), 1, + ACTIONS(1891), 1, sym_identifier, - ACTIONS(1739), 1, + ACTIONS(1893), 1, anon_sym_RPAREN, - STATE(891), 1, - sym_template_string, - STATE(892), 1, + STATE(1039), 1, sym_string, - STATE(1242), 1, + STATE(1040), 1, + sym_template_string, + STATE(1459), 1, sym_match_keyword_pattern, - STATE(1332), 1, + STATE(1534), 1, sym_match_positional_pattern, - STATE(1419), 1, + STATE(1680), 1, sym_pattern_class_name, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1014), 2, + STATE(1184), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1373), 2, + STATE(1526), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - STATE(980), 8, + STATE(1142), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -63139,15 +71474,15 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [47454] = 3, + [56801] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1571), 4, + ACTIONS(1543), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1569), 29, + ACTIONS(1541), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63177,25 +71512,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47495] = 5, + [56842] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1090), 1, - anon_sym_COLON_EQ, - ACTIONS(1719), 1, - anon_sym_EQ, - ACTIONS(1088), 4, + ACTIONS(1563), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1083), 27, + ACTIONS(1561), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -63217,15 +71550,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47540] = 3, + [56883] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 4, + ACTIONS(1633), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1577), 29, + ACTIONS(1631), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63255,15 +71588,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47581] = 3, + [56924] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 4, + ACTIONS(1567), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 29, + ACTIONS(1565), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63293,15 +71626,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47622] = 3, + [56965] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1441), 4, + ACTIONS(1555), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1439), 29, + ACTIONS(1553), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63331,15 +71664,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47663] = 3, + [57006] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1587), 4, + ACTIONS(1665), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1585), 29, + ACTIONS(1663), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63369,15 +71702,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47704] = 3, + [57047] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1477), 4, + ACTIONS(1669), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1475), 29, + ACTIONS(1667), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63407,15 +71740,95 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47745] = 3, + [57088] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 4, + ACTIONS(585), 1, + anon_sym_COLON_EQ, + ACTIONS(651), 1, + anon_sym_EQ, + ACTIONS(265), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1581), 29, + ACTIONS(298), 27, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [57133] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1219), 1, + anon_sym_COLON_EQ, + ACTIONS(1875), 1, + anon_sym_EQ, + ACTIONS(1178), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1173), 27, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [57178] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1673), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1671), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63445,15 +71858,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47786] = 3, + [57219] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1469), 4, + ACTIONS(1571), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1467), 29, + ACTIONS(1569), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63483,15 +71896,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47827] = 3, + [57260] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 4, + ACTIONS(1677), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 29, + ACTIONS(1675), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63521,15 +71934,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47868] = 3, + [57301] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1461), 4, + ACTIONS(1689), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1459), 29, + ACTIONS(1687), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63559,15 +71972,165 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47909] = 3, + [57342] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1679), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [57383] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1851), 1, + sym_identifier, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1855), 1, + anon_sym_STAR, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1277), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [57458] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1853), 1, + anon_sym_LPAREN, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, + anon_sym_LBRACK, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1891), 1, + sym_identifier, + ACTIONS(1895), 1, + anon_sym_RPAREN, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1438), 1, + sym_match_keyword_pattern, + STATE(1534), 1, + sym_match_positional_pattern, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1526), 2, + sym__match_pattern, + sym_match_as_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [57537] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1457), 4, + ACTIONS(1673), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1455), 29, + ACTIONS(1671), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63597,91 +72160,72 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47950] = 3, + [57578] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(867), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(865), 29, - anon_sym_DOT, + ACTIONS(647), 1, + sym__string_start, + ACTIONS(649), 1, + sym__template_string_start, + ACTIONS(1853), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, + ACTIONS(1861), 1, anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1863), 1, + sym_match_wildcard_pattern, + ACTIONS(1865), 1, anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [47991] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1473), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1471), 29, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1867), 1, + anon_sym_LBRACE, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1891), 1, + sym_identifier, + ACTIONS(1897), 1, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [48032] = 3, + STATE(1039), 1, + sym_string, + STATE(1040), 1, + sym_template_string, + STATE(1381), 1, + sym_match_keyword_pattern, + STATE(1466), 1, + sym_match_positional_pattern, + STATE(1680), 1, + sym_pattern_class_name, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1184), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1526), 2, + sym__match_pattern, + sym_match_as_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + STATE(1142), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [57657] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1505), 4, + ACTIONS(1539), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1503), 29, + ACTIONS(1537), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63711,51 +72255,51 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48073] = 20, + [57698] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(1695), 1, + ACTIONS(1851), 1, sym_identifier, - ACTIONS(1697), 1, + ACTIONS(1853), 1, anon_sym_LPAREN, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1703), 1, + ACTIONS(1863), 1, sym_match_wildcard_pattern, - ACTIONS(1705), 1, + ACTIONS(1865), 1, anon_sym_LBRACK, - ACTIONS(1707), 1, + ACTIONS(1867), 1, anon_sym_LBRACE, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - STATE(891), 1, - sym_template_string, - STATE(892), 1, + STATE(1039), 1, sym_string, - STATE(1332), 1, + STATE(1040), 1, + sym_template_string, + STATE(1534), 1, sym_match_positional_pattern, - STATE(1419), 1, + STATE(1680), 1, sym_pattern_class_name, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1014), 2, + STATE(1184), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1373), 2, + STATE(1526), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - STATE(980), 8, + STATE(1142), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -63764,49 +72308,49 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [48146] = 19, + [57771] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(1695), 1, + ACTIONS(1851), 1, sym_identifier, - ACTIONS(1697), 1, + ACTIONS(1853), 1, anon_sym_LPAREN, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1703), 1, + ACTIONS(1863), 1, sym_match_wildcard_pattern, - ACTIONS(1705), 1, + ACTIONS(1865), 1, anon_sym_LBRACK, - ACTIONS(1707), 1, + ACTIONS(1867), 1, anon_sym_LBRACE, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - STATE(891), 1, - sym_template_string, - STATE(892), 1, + STATE(1039), 1, sym_string, - STATE(1419), 1, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, sym_pattern_class_name, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1014), 2, + STATE(1184), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1384), 2, + STATE(1542), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - STATE(980), 8, + STATE(1142), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -63815,49 +72359,49 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [48216] = 19, + [57841] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(1695), 1, + ACTIONS(1851), 1, sym_identifier, - ACTIONS(1697), 1, + ACTIONS(1853), 1, anon_sym_LPAREN, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1703), 1, + ACTIONS(1863), 1, sym_match_wildcard_pattern, - ACTIONS(1705), 1, + ACTIONS(1865), 1, anon_sym_LBRACK, - ACTIONS(1707), 1, + ACTIONS(1867), 1, anon_sym_LBRACE, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - STATE(891), 1, - sym_template_string, - STATE(892), 1, + STATE(1039), 1, sym_string, - STATE(1419), 1, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, sym_pattern_class_name, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1014), 2, + STATE(1184), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1326), 2, + STATE(1575), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - STATE(980), 8, + STATE(1142), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -63866,43 +72410,43 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [48286] = 17, + [57911] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(1695), 1, + ACTIONS(1851), 1, sym_identifier, - ACTIONS(1697), 1, + ACTIONS(1853), 1, anon_sym_LPAREN, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1705), 1, + ACTIONS(1865), 1, anon_sym_LBRACK, - ACTIONS(1707), 1, + ACTIONS(1867), 1, anon_sym_LBRACE, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - ACTIONS(1741), 1, + ACTIONS(1899), 1, sym_match_wildcard_pattern, - STATE(891), 1, - sym_template_string, - STATE(892), 1, + STATE(1039), 1, sym_string, - STATE(1419), 1, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, sym_pattern_class_name, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - STATE(956), 8, + STATE(1116), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -63911,43 +72455,43 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [48348] = 17, + [57973] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(647), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(649), 1, sym__template_string_start, - ACTIONS(1695), 1, + ACTIONS(1851), 1, sym_identifier, - ACTIONS(1697), 1, + ACTIONS(1853), 1, anon_sym_LPAREN, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1705), 1, + ACTIONS(1865), 1, anon_sym_LBRACK, - ACTIONS(1707), 1, + ACTIONS(1867), 1, anon_sym_LBRACE, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - ACTIONS(1743), 1, + ACTIONS(1901), 1, sym_match_wildcard_pattern, - STATE(891), 1, - sym_template_string, - STATE(892), 1, + STATE(1039), 1, sym_string, - STATE(1419), 1, + STATE(1040), 1, + sym_template_string, + STATE(1680), 1, sym_pattern_class_name, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - STATE(939), 8, + STATE(1091), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -63956,28 +72500,28 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [48410] = 8, + [58035] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1750), 1, + ACTIONS(1908), 1, anon_sym_EQ, - ACTIONS(1752), 1, + ACTIONS(1910), 1, anon_sym_not, - ACTIONS(1758), 1, + ACTIONS(1916), 1, anon_sym_is, - STATE(844), 1, + STATE(989), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1755), 2, + ACTIONS(1913), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1747), 6, + ACTIONS(1905), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1745), 10, + ACTIONS(1903), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -63987,61 +72531,59 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - sym_type_conversion, - [48450] = 8, + [58074] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1559), 1, + ACTIONS(1908), 1, + anon_sym_as, + ACTIONS(1922), 1, anon_sym_not, - ACTIONS(1567), 1, + ACTIONS(1928), 1, anon_sym_is, - ACTIONS(1763), 1, - anon_sym_as, - STATE(847), 1, + STATE(990), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1565), 2, + ACTIONS(1925), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1549), 6, + ACTIONS(1919), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1761), 10, + ACTIONS(1903), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [48490] = 8, + [58113] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1535), 1, + ACTIONS(1617), 1, anon_sym_not, - ACTIONS(1543), 1, + ACTIONS(1625), 1, anon_sym_is, - ACTIONS(1763), 1, + ACTIONS(1933), 1, anon_sym_EQ, - STATE(844), 1, + STATE(989), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1541), 2, + ACTIONS(1623), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1521), 6, + ACTIONS(1603), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1761), 10, + ACTIONS(1931), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -64051,47 +72593,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - sym_type_conversion, - [48530] = 8, + [58152] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1750), 1, - anon_sym_as, - ACTIONS(1768), 1, + ACTIONS(1653), 1, anon_sym_not, - ACTIONS(1774), 1, + ACTIONS(1661), 1, anon_sym_is, - STATE(847), 1, + ACTIONS(1933), 1, + anon_sym_as, + STATE(990), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1771), 2, + ACTIONS(1659), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1765), 6, + ACTIONS(1643), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1745), 10, + ACTIONS(1931), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [48570] = 4, + [58191] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1779), 1, + ACTIONS(1937), 1, anon_sym_COMMA, - STATE(848), 1, + STATE(993), 1, aux_sym__patterns_repeat1, - ACTIONS(1777), 18, + ACTIONS(1935), 18, anon_sym_RPAREN, anon_sym_COLON, anon_sym_in, @@ -64110,124 +72650,141 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [48600] = 2, + [58221] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(1782), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [48625] = 8, + ACTIONS(310), 1, + sym__string_start, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(1861), 1, + anon_sym_DASH, + ACTIONS(1869), 1, + sym_integer, + ACTIONS(1871), 1, + sym_float, + ACTIONS(1940), 1, + sym_identifier, + ACTIONS(1942), 1, + anon_sym_RBRACE, + ACTIONS(1944), 1, + anon_sym_STAR_STAR, + STATE(1317), 1, + sym_string, + STATE(1318), 1, + sym_template_string, + STATE(1477), 1, + sym_match_key_value_pattern, + STATE(1564), 1, + sym_match_double_star_pattern, + STATE(1140), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1722), 2, + sym_match_literal_pattern, + sym_match_value_pattern, + ACTIONS(1873), 3, + sym_true, + sym_false, + sym_none, + [58274] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1652), 1, + ACTIONS(1908), 1, + anon_sym_EQ, + ACTIONS(1949), 1, anon_sym_not, - ACTIONS(1660), 1, + ACTIONS(1955), 1, anon_sym_is, - ACTIONS(1763), 1, - anon_sym_EQ, - STATE(856), 1, + STATE(995), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1658), 2, + ACTIONS(1952), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1640), 6, + ACTIONS(1946), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1761), 7, - sym__newline, - anon_sym_from, + ACTIONS(1903), 7, anon_sym_COMMA, anon_sym_if, + anon_sym_RBRACE, anon_sym_and, anon_sym_or, - sym__semicolon, - [48662] = 16, + anon_sym_COLON2, + sym_type_conversion, + [58311] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - ACTIONS(1784), 1, + ACTIONS(1940), 1, sym_identifier, - ACTIONS(1786), 1, - anon_sym_RBRACE, - ACTIONS(1788), 1, + ACTIONS(1944), 1, anon_sym_STAR_STAR, - STATE(1119), 1, - sym_template_string, - STATE(1120), 1, + ACTIONS(1958), 1, + anon_sym_RBRACE, + STATE(1317), 1, sym_string, - STATE(1273), 1, - sym_match_key_value_pattern, - STATE(1337), 1, + STATE(1318), 1, + sym_template_string, + STATE(1569), 1, sym_match_double_star_pattern, - STATE(977), 2, + STATE(1573), 1, + sym_match_key_value_pattern, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1471), 2, + STATE(1722), 2, sym_match_literal_pattern, sym_match_value_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - [48715] = 4, + [58364] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(265), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(825), 3, - anon_sym_RPAREN, + ACTIONS(1771), 1, + anon_sym_not, + ACTIONS(1779), 1, + anon_sym_is, + STATE(1007), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1777), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1761), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1931), 8, anon_sym_COMMA, + anon_sym_if, anon_sym_COLON, - ACTIONS(298), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - [48744] = 2, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [58399] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1149), 19, + ACTIONS(1960), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -64247,10 +72804,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [48769] = 2, + [58424] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1790), 19, + ACTIONS(1184), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -64270,76 +72827,141 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [48794] = 16, + [58449] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(1701), 1, + ACTIONS(1178), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1962), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(1173), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, - ACTIONS(1709), 1, - sym_integer, - ACTIONS(1711), 1, - sym_float, - ACTIONS(1784), 1, - sym_identifier, - ACTIONS(1788), 1, + anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_STAR_STAR, - ACTIONS(1792), 1, - anon_sym_RBRACE, - STATE(1119), 1, - sym_template_string, - STATE(1120), 1, - sym_string, - STATE(1339), 1, - sym_match_double_star_pattern, - STATE(1344), 1, - sym_match_key_value_pattern, - STATE(977), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1471), 2, - sym_match_literal_pattern, - sym_match_value_pattern, - ACTIONS(1713), 3, - sym_true, - sym_false, - sym_none, - [48847] = 8, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + [58478] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(265), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(911), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(298), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + [58507] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1750), 1, + ACTIONS(1807), 1, + anon_sym_not, + ACTIONS(1815), 1, + anon_sym_is, + ACTIONS(1933), 1, anon_sym_EQ, - ACTIONS(1797), 1, + STATE(1003), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1813), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1795), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1931), 7, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_if, + anon_sym_and, + anon_sym_or, + anon_sym_SEMI, + [58544] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1908), 1, + anon_sym_EQ, + ACTIONS(1967), 1, anon_sym_not, - ACTIONS(1803), 1, + ACTIONS(1973), 1, anon_sym_is, - STATE(856), 1, + STATE(1003), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1800), 2, + ACTIONS(1970), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1794), 6, + ACTIONS(1964), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1745), 7, + ACTIONS(1903), 7, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_and, anon_sym_or, - sym__semicolon, - [48884] = 2, + anon_sym_SEMI, + [58581] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1976), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [58606] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1806), 19, + ACTIONS(1978), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -64359,88 +72981,120 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [48909] = 16, + [58631] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1744), 1, + anon_sym_not, + ACTIONS(1752), 1, + anon_sym_is, + ACTIONS(1933), 1, + anon_sym_EQ, + STATE(995), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1750), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1732), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1931), 7, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + anon_sym_COLON2, + sym_type_conversion, + [58668] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1983), 1, + anon_sym_not, + ACTIONS(1989), 1, + anon_sym_is, + STATE(1007), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1986), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1980), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1903), 8, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [58703] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - ACTIONS(1784), 1, + ACTIONS(1940), 1, sym_identifier, - ACTIONS(1788), 1, + ACTIONS(1944), 1, anon_sym_STAR_STAR, - ACTIONS(1808), 1, + ACTIONS(1992), 1, anon_sym_RBRACE, - STATE(1119), 1, - sym_template_string, - STATE(1120), 1, + STATE(1317), 1, sym_string, - STATE(1313), 1, + STATE(1318), 1, + sym_template_string, + STATE(1544), 1, sym_match_double_star_pattern, - STATE(1344), 1, + STATE(1573), 1, sym_match_key_value_pattern, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1471), 2, + STATE(1722), 2, sym_match_literal_pattern, sym_match_value_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - [48962] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1088), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1810), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - ACTIONS(1083), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - [48991] = 7, + [58756] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1815), 1, + ACTIONS(1839), 1, anon_sym_not, - ACTIONS(1821), 1, + ACTIONS(1847), 1, anon_sym_is, - STATE(860), 1, + STATE(1011), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1818), 2, + ACTIONS(1845), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1812), 6, + ACTIONS(1827), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1745), 7, + ACTIONS(1931), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -64448,14 +73102,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_and, anon_sym_or, - [49025] = 4, + [58790] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1824), 1, + ACTIONS(1994), 1, anon_sym_COMMA, - STATE(848), 1, + STATE(993), 1, aux_sym__patterns_repeat1, - ACTIONS(1826), 16, + ACTIONS(1996), 16, anon_sym_COLON, anon_sym_in, anon_sym_EQ, @@ -64472,368 +73126,403 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [49053] = 13, + [58818] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1511), 1, + ACTIONS(2001), 1, + anon_sym_not, + ACTIONS(2007), 1, + anon_sym_is, + STATE(1011), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(2004), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1998), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1903), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_and, + anon_sym_or, + [58852] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1593), 1, anon_sym_DOT, - ACTIONS(1513), 1, + ACTIONS(1595), 1, anon_sym_LPAREN, - ACTIONS(1523), 1, + ACTIONS(1605), 1, anon_sym_PIPE, - ACTIONS(1527), 1, + ACTIONS(1609), 1, anon_sym_LBRACK, - ACTIONS(1529), 1, + ACTIONS(1611), 1, anon_sym_STAR_STAR, - ACTIONS(1537), 1, + ACTIONS(1619), 1, anon_sym_AMP, - ACTIONS(1539), 1, + ACTIONS(1621), 1, anon_sym_CARET, - ACTIONS(1517), 2, + ACTIONS(1599), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1519), 2, + ACTIONS(1601), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1525), 2, + ACTIONS(1607), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(642), 2, + STATE(733), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1533), 3, + ACTIONS(1615), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - [49099] = 7, + [58898] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1685), 1, - anon_sym_not, - ACTIONS(1693), 1, - anon_sym_is, - STATE(860), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1691), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1673), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1761), 7, - anon_sym_RPAREN, + ACTIONS(2010), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, + ACTIONS(2012), 1, anon_sym_COLON, - anon_sym_and, - anon_sym_or, - [49133] = 12, + ACTIONS(2014), 1, + anon_sym_EQ, + STATE(1010), 1, + aux_sym__patterns_repeat1, + ACTIONS(2016), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [58929] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1834), 1, + ACTIONS(2024), 1, anon_sym_COLON, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - STATE(1276), 1, + STATE(1385), 1, sym_parameter, - STATE(1448), 1, + STATE(1593), 1, sym_lambda_parameters, - STATE(1474), 1, + STATE(1598), 1, sym__parameters, - STATE(1331), 2, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49176] = 12, + [58972] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1840), 1, + ACTIONS(2030), 1, anon_sym_COLON, - STATE(1276), 1, + STATE(1385), 1, sym_parameter, - STATE(1435), 1, - sym_lambda_parameters, - STATE(1474), 1, + STATE(1598), 1, sym__parameters, - STATE(1331), 2, + STATE(1690), 1, + sym_lambda_parameters, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49219] = 12, + [59015] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1842), 1, + ACTIONS(2032), 1, anon_sym_COLON, - STATE(1276), 1, + STATE(1385), 1, sym_parameter, - STATE(1423), 1, - sym_lambda_parameters, - STATE(1474), 1, + STATE(1598), 1, sym__parameters, - STATE(1331), 2, + STATE(1668), 1, + sym_lambda_parameters, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49262] = 6, + [59058] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1844), 1, - anon_sym_COMMA, - ACTIONS(1846), 1, + ACTIONS(2018), 1, + sym_identifier, + ACTIONS(2020), 1, + anon_sym_LPAREN, + ACTIONS(2022), 1, + anon_sym_STAR, + ACTIONS(2026), 1, + anon_sym_STAR_STAR, + ACTIONS(2028), 1, + anon_sym_SLASH, + ACTIONS(2034), 1, anon_sym_COLON, - ACTIONS(1848), 1, - anon_sym_EQ, - STATE(861), 1, - aux_sym__patterns_repeat1, - ACTIONS(1850), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [49293] = 12, + STATE(1385), 1, + sym_parameter, + STATE(1598), 1, + sym__parameters, + STATE(1604), 1, + sym_lambda_parameters, + STATE(1520), 2, + sym_list_splat_pattern, + sym_dictionary_splat_pattern, + STATE(1394), 6, + sym_tuple_pattern, + sym_default_parameter, + sym_typed_default_parameter, + sym_typed_parameter, + sym_positional_separator, + sym_keyword_separator, + [59101] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1852), 1, + ACTIONS(2036), 1, anon_sym_COLON, - STATE(1276), 1, + STATE(1385), 1, sym_parameter, - STATE(1397), 1, - sym_lambda_parameters, - STATE(1474), 1, + STATE(1598), 1, sym__parameters, - STATE(1331), 2, + STATE(1673), 1, + sym_lambda_parameters, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49336] = 12, + [59144] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1854), 1, + ACTIONS(2038), 1, anon_sym_COLON, - STATE(1276), 1, + STATE(1385), 1, sym_parameter, - STATE(1472), 1, + STATE(1598), 1, + sym__parameters, + STATE(1682), 1, sym_lambda_parameters, - STATE(1474), 1, + STATE(1520), 2, + sym_list_splat_pattern, + sym_dictionary_splat_pattern, + STATE(1394), 6, + sym_tuple_pattern, + sym_default_parameter, + sym_typed_default_parameter, + sym_typed_parameter, + sym_positional_separator, + sym_keyword_separator, + [59187] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2018), 1, + sym_identifier, + ACTIONS(2020), 1, + anon_sym_LPAREN, + ACTIONS(2022), 1, + anon_sym_STAR, + ACTIONS(2026), 1, + anon_sym_STAR_STAR, + ACTIONS(2028), 1, + anon_sym_SLASH, + ACTIONS(2040), 1, + anon_sym_COLON, + STATE(1385), 1, + sym_parameter, + STATE(1598), 1, sym__parameters, - STATE(1331), 2, + STATE(1711), 1, + sym_lambda_parameters, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49379] = 13, + [59230] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(310), 1, sym__string_start, ACTIONS(312), 1, sym__template_string_start, - ACTIONS(1701), 1, + ACTIONS(1861), 1, anon_sym_DASH, - ACTIONS(1709), 1, + ACTIONS(1869), 1, sym_integer, - ACTIONS(1711), 1, + ACTIONS(1871), 1, sym_float, - ACTIONS(1784), 1, + ACTIONS(1940), 1, sym_identifier, - STATE(1119), 1, - sym_template_string, - STATE(1120), 1, + STATE(1317), 1, sym_string, - STATE(1344), 1, + STATE(1318), 1, + sym_template_string, + STATE(1573), 1, sym_match_key_value_pattern, - STATE(977), 2, + STATE(1140), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1471), 2, + STATE(1722), 2, sym_match_literal_pattern, sym_match_value_pattern, - ACTIONS(1713), 3, + ACTIONS(1873), 3, sym_true, sym_false, sym_none, - [49423] = 11, + [59274] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1856), 1, + ACTIONS(2042), 1, sym_identifier, - ACTIONS(1858), 1, + ACTIONS(2044), 1, anon_sym_RPAREN, - STATE(1229), 1, + STATE(1428), 1, sym_parameter, - STATE(1473), 1, + STATE(1684), 1, sym__parameters, - STATE(1222), 2, + STATE(1442), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49463] = 10, + [59314] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1830), 1, - anon_sym_LPAREN, - ACTIONS(1832), 1, - anon_sym_STAR, - ACTIONS(1836), 1, - anon_sym_STAR_STAR, - ACTIONS(1838), 1, - anon_sym_SLASH, - ACTIONS(1856), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1860), 1, - anon_sym_RPAREN, - STATE(1288), 1, - sym_parameter, - STATE(1222), 2, - sym_list_splat_pattern, - sym_dictionary_splat_pattern, - STATE(1278), 6, - sym_tuple_pattern, - sym_default_parameter, - sym_typed_default_parameter, - sym_typed_parameter, - sym_positional_separator, - sym_keyword_separator, - [49500] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1856), 1, - sym_identifier, - ACTIONS(1862), 1, - anon_sym_RPAREN, - STATE(1288), 1, + ACTIONS(2046), 1, + anon_sym_COLON, + STATE(1444), 1, sym_parameter, - STATE(1222), 2, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49537] = 4, + [59351] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1846), 1, + ACTIONS(2012), 1, anon_sym_COLON, - ACTIONS(1848), 1, + ACTIONS(2014), 1, anon_sym_EQ, - ACTIONS(1850), 13, + ACTIONS(2016), 13, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, @@ -64847,116 +73536,143 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [49562] = 10, + [59376] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(2018), 1, sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1862), 1, + ACTIONS(2048), 1, anon_sym_COLON, - STATE(1288), 1, + STATE(1444), 1, sym_parameter, - STATE(1331), 2, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49599] = 10, + [59413] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, - sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1860), 1, - anon_sym_COLON, - STATE(1288), 1, + ACTIONS(2042), 1, + sym_identifier, + ACTIONS(2048), 1, + anon_sym_RPAREN, + STATE(1444), 1, sym_parameter, - STATE(1331), 2, + STATE(1442), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49636] = 9, + [59450] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, - sym_identifier, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - STATE(1288), 1, + ACTIONS(2042), 1, + sym_identifier, + ACTIONS(2046), 1, + anon_sym_RPAREN, + STATE(1444), 1, sym_parameter, - STATE(1331), 2, + STATE(1442), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49670] = 9, + [59487] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(1830), 1, + ACTIONS(2020), 1, anon_sym_LPAREN, - ACTIONS(1832), 1, + ACTIONS(2022), 1, anon_sym_STAR, - ACTIONS(1836), 1, + ACTIONS(2026), 1, anon_sym_STAR_STAR, - ACTIONS(1838), 1, + ACTIONS(2028), 1, anon_sym_SLASH, - ACTIONS(1856), 1, + ACTIONS(2042), 1, sym_identifier, - STATE(1288), 1, + STATE(1444), 1, + sym_parameter, + STATE(1442), 2, + sym_list_splat_pattern, + sym_dictionary_splat_pattern, + STATE(1394), 6, + sym_tuple_pattern, + sym_default_parameter, + sym_typed_default_parameter, + sym_typed_parameter, + sym_positional_separator, + sym_keyword_separator, + [59521] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2018), 1, + sym_identifier, + ACTIONS(2020), 1, + anon_sym_LPAREN, + ACTIONS(2022), 1, + anon_sym_STAR, + ACTIONS(2026), 1, + anon_sym_STAR_STAR, + ACTIONS(2028), 1, + anon_sym_SLASH, + STATE(1444), 1, sym_parameter, - STATE(1222), 2, + STATE(1520), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1278), 6, + STATE(1394), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [49704] = 3, + [59555] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1866), 1, + ACTIONS(2052), 1, anon_sym_as, - ACTIONS(1864), 13, + ACTIONS(2050), 12, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -64969,13 +73685,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_and, anon_sym_or, - sym_type_conversion, - [49726] = 3, + [59576] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1531), 1, + ACTIONS(1613), 1, anon_sym_as, - ACTIONS(1515), 13, + ACTIONS(1597), 12, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -64988,15 +73703,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_and, anon_sym_or, - sym_type_conversion, - [49748] = 4, + [59597] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1870), 1, + ACTIONS(2056), 1, anon_sym_DOT, - STATE(881), 1, + STATE(1032), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(1868), 10, + ACTIONS(2054), 10, anon_sym_import, anon_sym_LPAREN, anon_sym_RPAREN, @@ -65007,16 +73721,129 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [49770] = 5, + [59619] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2067), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59650] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2071), 1, + anon_sym_if, + ACTIONS(2073), 1, + anon_sym_COLON, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2079), 1, + anon_sym_RBRACE, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + STATE(1100), 1, + sym_for_in_clause, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1627), 1, + sym__comprehension_clauses, + [59687] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2085), 1, + sym__string_end, + STATE(1043), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59718] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2087), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59749] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2089), 1, + sym__string_end, + STATE(1036), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59780] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, + ACTIONS(2091), 1, anon_sym_DOT, - ACTIONS(1875), 1, + ACTIONS(2093), 1, anon_sym_LPAREN, - STATE(902), 1, + STATE(1042), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(1877), 8, + ACTIONS(2095), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -65025,365 +73852,689 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [49793] = 4, + [59803] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1879), 9, + ACTIONS(647), 1, + sym__string_start, + STATE(744), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(2097), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_else, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [49814] = 5, + [59824] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1885), 1, - anon_sym_as, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1879), 8, + ACTIONS(649), 1, + sym__template_string_start, + STATE(745), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(2097), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_async, - anon_sym_for, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [49837] = 7, + [59845] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2099), 1, + anon_sym_RPAREN, + ACTIONS(2101), 1, + anon_sym_COMMA, + ACTIONS(2104), 1, + anon_sym_as, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1893), 1, + STATE(1100), 1, + sym_for_in_clause, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1706), 1, + sym__comprehension_clauses, + [59882] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2091), 1, + anon_sym_DOT, + ACTIONS(2112), 1, + anon_sym_LPAREN, + STATE(1032), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2114), 8, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(1895), 1, + anon_sym_as, anon_sym_if, - STATE(982), 1, - aux_sym_expression_list_repeat1, - ACTIONS(1891), 6, - anon_sym_RPAREN, anon_sym_COLON, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [49864] = 12, + [59905] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2116), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59936] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2118), 1, + sym__string_end, + STATE(1047), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59967] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2120), 1, + sym__string_end, + STATE(1048), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [59998] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2071), 1, + anon_sym_if, + ACTIONS(2073), 1, + anon_sym_COLON, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2079), 1, + anon_sym_RBRACE, + ACTIONS(2081), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2083), 1, anon_sym_or, - ACTIONS(1897), 1, + STATE(1100), 1, + sym_for_in_clause, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1645), 1, + sym__comprehension_clauses, + [60035] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2122), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60066] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2124), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60097] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2054), 11, + anon_sym_import, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [60114] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2126), 1, + sym__string_end, + STATE(1053), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60145] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2128), 1, + sym__string_end, + STATE(1054), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60176] = 9, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2130), 1, + anon_sym_LBRACE2, + ACTIONS(2136), 1, + anon_sym_BSLASH, + ACTIONS(2139), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2133), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60207] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2141), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60238] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2143), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60269] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2145), 1, + sym__string_end, + STATE(1057), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60300] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2147), 1, + sym__string_end, + STATE(1058), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60331] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2149), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60362] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2151), 1, + sym__string_end, + STATE(1052), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60393] = 9, + ACTIONS(2059), 1, + anon_sym_LBRACE2, + ACTIONS(2063), 1, + anon_sym_BSLASH, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2153), 1, + sym__string_end, + STATE(1033), 1, + aux_sym_string_repeat1, + STATE(1245), 1, + sym_interpolation, + STATE(1252), 1, + sym_string_content, + STATE(1147), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2061), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60424] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(1899), 1, + ACTIONS(2071), 1, anon_sym_if, - ACTIONS(1901), 1, + ACTIONS(2073), 1, anon_sym_COLON, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(1907), 1, + ACTIONS(2079), 1, anon_sym_RBRACE, - STATE(936), 1, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + STATE(1100), 1, sym_for_in_clause, - STATE(1079), 1, + STATE(1270), 1, aux_sym__collection_elements_repeat1, - STATE(1455), 1, + STATE(1649), 1, sym__comprehension_clauses, - [49901] = 12, + [60461] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(1899), 1, + ACTIONS(2071), 1, anon_sym_if, - ACTIONS(1901), 1, + ACTIONS(2073), 1, anon_sym_COLON, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(1907), 1, + ACTIONS(2079), 1, anon_sym_RBRACE, - STATE(936), 1, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + STATE(1100), 1, sym_for_in_clause, - STATE(1079), 1, + STATE(1270), 1, aux_sym__collection_elements_repeat1, - STATE(1403), 1, + STATE(1715), 1, sym__comprehension_clauses, - [49938] = 6, + [60498] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1911), 1, + ACTIONS(2157), 1, anon_sym_as, - ACTIONS(1909), 7, + ACTIONS(2155), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, + anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [49963] = 5, + [60520] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(1913), 8, + ACTIONS(2159), 9, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_else, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [49986] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, anon_sym_if, - ACTIONS(1915), 8, - anon_sym_RPAREN, - anon_sym_COMMA, anon_sym_COLON, anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - sym_type_conversion, - [50009] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(627), 1, - sym__template_string_start, - STATE(689), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1917), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [50030] = 4, + anon_sym_or, + [60538] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, - STATE(691), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1917), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(2106), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [50051] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1921), 1, + ACTIONS(2165), 1, anon_sym_as, - ACTIONS(1919), 8, + ACTIONS(2163), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [50074] = 2, + [60562] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1868), 11, - anon_sym_import, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2159), 8, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, + anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, - [50091] = 5, + anon_sym_EQ, + [60582] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(1909), 8, + ACTIONS(2169), 1, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_else, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [50114] = 4, + STATE(1100), 1, + sym_for_in_clause, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1686), 1, + sym__comprehension_clauses, + [60616] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1919), 9, + ACTIONS(2171), 1, anon_sym_RPAREN, + ACTIONS(2173), 1, anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [50135] = 4, + STATE(1100), 1, + sym_for_in_clause, + STATE(1451), 1, + aux_sym_argument_list_repeat1, + STATE(1686), 1, + sym__comprehension_clauses, + [60650] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1925), 1, + ACTIONS(2175), 1, anon_sym_as, - ACTIONS(1923), 9, + ACTIONS(2159), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_or, - [50156] = 6, + [60670] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1927), 1, + ACTIONS(2175), 1, anon_sym_as, - ACTIONS(1915), 7, + ACTIONS(2159), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, + anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [50181] = 5, + [60692] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1925), 1, - anon_sym_as, - ACTIONS(1923), 8, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2179), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [50204] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1923), 10, + ACTIONS(2177), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, anon_sym_COLON, anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - anon_sym_or, - sym_type_conversion, - [50223] = 4, + [60714] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1923), 9, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2181), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, anon_sym_COLON, anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - sym_type_conversion, - [50244] = 5, + [60736] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, - anon_sym_DOT, - ACTIONS(1929), 1, - anon_sym_LPAREN, - STATE(881), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(1931), 8, + ACTIONS(2185), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2183), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -65392,317 +74543,116 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [50267] = 12, + [60754] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1903), 1, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(1933), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + ACTIONS(2187), 1, anon_sym_RPAREN, - ACTIONS(1935), 1, - anon_sym_COMMA, - ACTIONS(1938), 1, - anon_sym_as, - STATE(936), 1, + STATE(1100), 1, sym_for_in_clause, - STATE(1079), 1, + STATE(1270), 1, aux_sym__collection_elements_repeat1, - STATE(1400), 1, + STATE(1613), 1, sym__comprehension_clauses, - [50304] = 6, + [60788] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1940), 1, + ACTIONS(2189), 1, anon_sym_as, - ACTIONS(1913), 7, + ACTIONS(2177), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [50329] = 12, + [60812] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1897), 1, - anon_sym_COMMA, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1901), 1, - anon_sym_COLON, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(1907), 1, - anon_sym_RBRACE, - STATE(936), 1, - sym_for_in_clause, - STATE(1079), 1, - aux_sym__collection_elements_repeat1, - STATE(1463), 1, - sym__comprehension_clauses, - [50366] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1950), 1, - sym__string_end, - STATE(919), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50396] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1952), 1, - sym__string_end, - STATE(914), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50426] = 11, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1897), 1, - anon_sym_COMMA, - ACTIONS(1899), 1, + ACTIONS(2106), 1, anon_sym_if, - ACTIONS(1903), 1, - anon_sym_async, - ACTIONS(1905), 1, - anon_sym_for, - ACTIONS(1907), 1, - anon_sym_RBRACK, - STATE(936), 1, - sym_for_in_clause, - STATE(1079), 1, - aux_sym__collection_elements_repeat1, - STATE(1467), 1, - sym__comprehension_clauses, - [50460] = 11, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1903), 1, - anon_sym_async, - ACTIONS(1905), 1, - anon_sym_for, - ACTIONS(1954), 1, + ACTIONS(2191), 1, anon_sym_RPAREN, - ACTIONS(1956), 1, + ACTIONS(2193), 1, anon_sym_COMMA, - STATE(936), 1, + STATE(1100), 1, sym_for_in_clause, - STATE(1264), 1, + STATE(1418), 1, aux_sym_argument_list_repeat1, - STATE(1499), 1, + STATE(1706), 1, sym__comprehension_clauses, - [50494] = 5, + [60846] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2106), 1, anon_sym_if, - ACTIONS(1958), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [50516] = 11, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1903), 1, - anon_sym_async, - ACTIONS(1905), 1, - anon_sym_for, - ACTIONS(1960), 1, + ACTIONS(2195), 1, anon_sym_RPAREN, - ACTIONS(1962), 1, + ACTIONS(2197), 1, anon_sym_COMMA, - STATE(936), 1, + STATE(1100), 1, sym_for_in_clause, - STATE(1286), 1, + STATE(1483), 1, aux_sym_argument_list_repeat1, - STATE(1426), 1, + STATE(1592), 1, sym__comprehension_clauses, - [50550] = 11, + [60880] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1897), 1, + ACTIONS(2199), 8, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(1899), 1, anon_sym_if, - ACTIONS(1903), 1, - anon_sym_async, - ACTIONS(1905), 1, - anon_sym_for, - ACTIONS(1907), 1, + anon_sym_COLON, + anon_sym_else, anon_sym_RBRACK, - STATE(936), 1, - sym_for_in_clause, - STATE(1079), 1, - aux_sym__collection_elements_repeat1, - STATE(1441), 1, - sym__comprehension_clauses, - [50584] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1964), 1, - sym__string_end, - STATE(922), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50614] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1966), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50644] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1968), 1, - sym__string_end, - STATE(920), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50674] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1970), 1, - sym__string_end, - STATE(923), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50704] = 3, + anon_sym_RBRACE, + anon_sym_EQ, + [60900] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1974), 2, + ACTIONS(2203), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(1972), 8, + ACTIONS(2201), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -65711,401 +74661,308 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [50722] = 9, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1976), 1, - anon_sym_LBRACE2, - ACTIONS(1982), 1, - sym__not_escape_sequence, - ACTIONS(1985), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1979), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50752] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1987), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50782] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1989), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50812] = 11, + [60918] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(1933), 1, + ACTIONS(2099), 1, anon_sym_RPAREN, - STATE(936), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + STATE(1100), 1, sym_for_in_clause, - STATE(1079), 1, + STATE(1270), 1, aux_sym__collection_elements_repeat1, - STATE(1400), 1, + STATE(1706), 1, sym__comprehension_clauses, - [50846] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1991), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50876] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1993), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50906] = 3, + [60952] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1997), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(1995), 8, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + ACTIONS(2205), 1, anon_sym_RPAREN, + ACTIONS(2207), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [50924] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(1999), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50954] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, + STATE(1100), 1, + sym_for_in_clause, + STATE(1437), 1, + aux_sym_argument_list_repeat1, + STATE(1613), 1, + sym__comprehension_clauses, + [60986] = 11, + ACTIONS(3), 1, sym_comment, - ACTIONS(2001), 1, - sym__string_end, - STATE(929), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [50984] = 5, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2079), 1, + anon_sym_RBRACK, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + STATE(1100), 1, + sym_for_in_clause, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1624), 1, + sym__comprehension_clauses, + [61020] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2003), 7, + ACTIONS(2163), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, + anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - sym_type_conversion, - [51006] = 11, + [61042] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(1907), 1, + ACTIONS(2079), 1, anon_sym_RBRACK, - STATE(936), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + STATE(1100), 1, sym_for_in_clause, - STATE(1079), 1, + STATE(1270), 1, aux_sym__collection_elements_repeat1, - STATE(1401), 1, + STATE(1677), 1, sym__comprehension_clauses, - [51040] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(2005), 1, - sym__string_end, - STATE(918), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [51070] = 11, + [61076] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(1899), 1, - anon_sym_if, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(2007), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + ACTIONS(2209), 1, anon_sym_RPAREN, - STATE(936), 1, + STATE(1100), 1, sym_for_in_clause, - STATE(1079), 1, + STATE(1270), 1, aux_sym__collection_elements_repeat1, - STATE(1426), 1, + STATE(1592), 1, sym__comprehension_clauses, - [51104] = 5, + [61110] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2009), 7, + ACTIONS(2211), 1, + anon_sym_as, + ACTIONS(2181), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [51126] = 9, - ACTIONS(1942), 1, - anon_sym_LBRACE2, - ACTIONS(1946), 1, - sym__not_escape_sequence, - ACTIONS(1948), 1, + [61134] = 11, + ACTIONS(3), 1, sym_comment, - ACTIONS(2011), 1, - sym__string_end, - STATE(925), 1, - aux_sym_string_repeat1, - STATE(1037), 1, - aux_sym_string_content_repeat1, - STATE(1046), 1, - sym_string_content, - STATE(1054), 1, - sym_interpolation, - ACTIONS(1944), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [51156] = 11, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2079), 1, + anon_sym_RBRACK, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + STATE(1100), 1, + sym_for_in_clause, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1708), 1, + sym__comprehension_clauses, + [61168] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1899), 1, + ACTIONS(2213), 1, + anon_sym_as, + ACTIONS(2199), 7, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_if, - ACTIONS(1903), 1, anon_sym_async, - ACTIONS(1905), 1, anon_sym_for, - ACTIONS(2013), 1, - anon_sym_RPAREN, - ACTIONS(2015), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61190] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2069), 1, anon_sym_COMMA, - STATE(936), 1, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2079), 1, + anon_sym_RBRACK, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + STATE(1100), 1, sym_for_in_clause, - STATE(1188), 1, - aux_sym_argument_list_repeat1, - STATE(1400), 1, + STATE(1270), 1, + aux_sym__collection_elements_repeat1, + STATE(1614), 1, sym__comprehension_clauses, - [51190] = 5, + [61224] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2017), 7, + ACTIONS(2155), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_if, anon_sym_COLON, + anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - sym_type_conversion, - [51212] = 11, + [61244] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1897), 1, + ACTIONS(2215), 7, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(1899), 1, anon_sym_if, - ACTIONS(1903), 1, anon_sym_async, - ACTIONS(1905), 1, anon_sym_for, - ACTIONS(2019), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61263] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2219), 1, + anon_sym_PIPE, + STATE(1101), 1, + aux_sym_match_or_pattern_repeat1, + ACTIONS(2217), 7, anon_sym_RPAREN, - STATE(936), 1, - sym_for_in_clause, - STATE(1079), 1, - aux_sym__collection_elements_repeat1, - STATE(1499), 1, - sym__comprehension_clauses, - [51246] = 6, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61282] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1903), 1, + ACTIONS(2223), 1, + anon_sym_if, + ACTIONS(2226), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2229), 1, anon_sym_for, - ACTIONS(2023), 1, - anon_sym_if, - ACTIONS(2021), 3, + ACTIONS(2221), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(943), 3, + STATE(1092), 3, sym_for_in_clause, sym_if_clause, aux_sym__comprehension_clauses_repeat1, - [51269] = 4, + [61305] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2232), 1, + anon_sym_COMMA, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2240), 1, + anon_sym_or, + STATE(1215), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2236), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61330] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(2025), 7, + ACTIONS(2215), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -66113,62 +74970,63 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [51288] = 4, + [61349] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2029), 1, - anon_sym_PIPE, - STATE(944), 1, - aux_sym_match_or_pattern_repeat1, - ACTIONS(2027), 7, - anon_sym_RPAREN, + ACTIONS(2232), 1, anon_sym_COMMA, - anon_sym_as, + ACTIONS(2234), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_RBRACK, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + STATE(1215), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2242), 4, anon_sym_RBRACE, - [51307] = 4, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61374] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2029), 1, - anon_sym_PIPE, - STATE(938), 1, - aux_sym_match_or_pattern_repeat1, - ACTIONS(2031), 7, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2244), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [51326] = 7, + anon_sym_EQ, + [61395] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1893), 1, + ACTIONS(2248), 1, + anon_sym_PIPE, + STATE(1097), 1, + aux_sym_match_or_pattern_repeat1, + ACTIONS(2246), 7, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(1895), 1, + anon_sym_as, anon_sym_if, - STATE(982), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2033), 4, anon_sym_COLON, + anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [51351] = 4, + [61414] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(2025), 7, + ACTIONS(2215), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -66176,48 +75034,48 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [51370] = 6, + [61433] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2037), 1, - anon_sym_if, - ACTIONS(2040), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(2043), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(2035), 3, + ACTIONS(2253), 1, + anon_sym_if, + ACTIONS(2251), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(942), 3, + STATE(1092), 3, sym_for_in_clause, sym_if_clause, aux_sym__comprehension_clauses_repeat1, - [51393] = 6, + [61456] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(2023), 1, + ACTIONS(2253), 1, anon_sym_if, - ACTIONS(2046), 3, + ACTIONS(2255), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(942), 3, + STATE(1099), 3, sym_for_in_clause, sym_if_clause, aux_sym__comprehension_clauses_repeat1, - [51416] = 4, + [61479] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2050), 1, + ACTIONS(2219), 1, anon_sym_PIPE, - STATE(944), 1, + STATE(1097), 1, aux_sym_match_or_pattern_repeat1, - ACTIONS(2048), 7, + ACTIONS(2257), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66225,25 +75083,184 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [51435] = 4, + [61498] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2071), 1, + anon_sym_if, + ACTIONS(2081), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2083), 1, + anon_sym_or, + ACTIONS(2181), 5, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [61518] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2163), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61538] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2155), 6, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61556] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2159), 7, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_or, + anon_sym_COLON2, + sym_type_conversion, + [61572] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, anon_sym_or, - ACTIONS(2025), 7, + ACTIONS(2159), 6, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61590] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2177), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61610] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2181), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61630] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2181), 5, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_SEMI, + [61650] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2265), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61664] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2269), 1, + anon_sym_COMMA, + STATE(1136), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2267), 6, + anon_sym_RPAREN, anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [51454] = 2, + [61682] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2244), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61702] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(67), 1, + anon_sym_AT, + ACTIONS(2271), 1, + anon_sym_async, + ACTIONS(2273), 1, + anon_sym_def, + ACTIONS(2275), 1, + anon_sym_class, + STATE(552), 2, + sym_function_definition, + sym_class_definition, + STATE(1248), 2, + sym_decorator, + aux_sym_decorated_definition_repeat1, + [61726] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2053), 8, + ACTIONS(2277), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66252,10 +75269,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51468] = 2, + [61740] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2055), 8, + ACTIONS(2279), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66264,10 +75281,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51482] = 2, + [61754] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2057), 8, + ACTIONS(2246), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66276,10 +75293,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51496] = 2, + [61768] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2281), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61788] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(67), 1, + anon_sym_AT, + ACTIONS(2283), 1, + anon_sym_async, + ACTIONS(2285), 1, + anon_sym_def, + ACTIONS(2287), 1, + anon_sym_class, + STATE(521), 2, + sym_function_definition, + sym_class_definition, + STATE(1248), 2, + sym_decorator, + aux_sym_decorated_definition_repeat1, + [61812] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2059), 8, + ACTIONS(2289), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66288,10 +75337,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51510] = 2, + [61826] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2061), 8, + ACTIONS(2291), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66300,51 +75349,55 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51524] = 4, + [61840] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(1879), 6, + ACTIONS(2159), 7, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_EQ, - sym__semicolon, - [51542] = 2, + anon_sym_or, + anon_sym_SEMI, + [61856] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2067), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(2259), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [51556] = 5, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2293), 1, + anon_sym_from, + ACTIONS(2295), 1, + anon_sym_COMMA, + STATE(1260), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2297), 2, + sym__newline, + anon_sym_SEMI, + [61882] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(1913), 5, + ACTIONS(2159), 6, sym__newline, anon_sym_from, anon_sym_COMMA, + anon_sym_if, anon_sym_EQ, - sym__semicolon, - [51576] = 2, + anon_sym_SEMI, + [61900] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2071), 8, + ACTIONS(2299), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66353,22 +75406,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51590] = 2, + [61914] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1515), 8, - sym__newline, - anon_sym_from, - anon_sym_COMMA, + ACTIONS(2234), 1, anon_sym_if, - anon_sym_EQ, + ACTIONS(2238), 1, anon_sym_and, + ACTIONS(2240), 1, anon_sym_or, - sym__semicolon, - [51604] = 2, + ACTIONS(2301), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [61934] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2048), 8, + ACTIONS(2303), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66377,10 +75433,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51618] = 2, + [61948] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2073), 8, + ACTIONS(2305), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66389,24 +75445,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51632] = 4, + [61962] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2077), 1, + ACTIONS(2309), 1, anon_sym_COMMA, - STATE(958), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2075), 6, + STATE(1146), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2307), 6, anon_sym_RPAREN, - anon_sym_COLON, + anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, + [61980] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1597), 8, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, anon_sym_EQ, + anon_sym_and, + anon_sym_or, + anon_sym_COLON2, sym_type_conversion, - [51650] = 2, + [61994] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2080), 8, + ACTIONS(2311), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66415,44 +75483,50 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51664] = 7, + [62008] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(67), 1, - anon_sym_AT, - ACTIONS(2082), 1, - anon_sym_async, - ACTIONS(2084), 1, - anon_sym_def, - ACTIONS(2086), 1, - anon_sym_class, - STATE(527), 2, - sym_function_definition, - sym_class_definition, - STATE(1045), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - [51688] = 7, + ACTIONS(2313), 8, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62022] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(67), 1, - anon_sym_AT, - ACTIONS(2088), 1, - anon_sym_async, - ACTIONS(2090), 1, - anon_sym_def, - ACTIONS(2092), 1, - anon_sym_class, - STATE(553), 2, - sym_function_definition, - sym_class_definition, - STATE(1045), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - [51712] = 2, + ACTIONS(2315), 8, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62036] = 6, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2317), 1, + anon_sym_LBRACE2, + ACTIONS(2322), 1, + anon_sym_BSLASH, + ACTIONS(2325), 1, + sym__string_end, + STATE(1133), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2319), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [62058] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2094), 8, + ACTIONS(2327), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66461,25 +75535,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51726] = 5, + [62072] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(1909), 5, + ACTIONS(2050), 8, sym__newline, anon_sym_from, anon_sym_COMMA, + anon_sym_if, anon_sym_EQ, - sym__semicolon, - [51746] = 2, + anon_sym_and, + anon_sym_or, + anon_sym_SEMI, + [62086] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2331), 1, + anon_sym_COMMA, + STATE(1162), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2329), 6, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62104] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2096), 8, + ACTIONS(2333), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66488,10 +75573,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51760] = 2, + [62118] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2098), 8, + ACTIONS(2335), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66500,10 +75585,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51774] = 2, + [62132] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2091), 1, + anon_sym_DOT, + ACTIONS(2093), 1, + anon_sym_LPAREN, + ACTIONS(2337), 1, + anon_sym_EQ, + STATE(1042), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2095), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_PIPE, + [62154] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2100), 8, + ACTIONS(2097), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66512,24 +75613,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51788] = 4, + [62168] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1887), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(1889), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2102), 6, + ACTIONS(2244), 5, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_SEMI, + [62188] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2341), 1, + anon_sym_PIPE, + ACTIONS(2339), 7, anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [51806] = 2, + [62204] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2104), 8, + ACTIONS(2343), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66538,113 +75653,156 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51820] = 4, + [62218] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(1923), 6, + ACTIONS(2177), 5, sym__newline, anon_sym_from, anon_sym_COMMA, - anon_sym_if, anon_sym_EQ, - sym__semicolon, - [51838] = 3, + anon_sym_SEMI, + [62238] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(1923), 7, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2199), 6, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_EQ, - anon_sym_or, - sym__semicolon, - [51854] = 2, + anon_sym_SEMI, + [62256] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2106), 8, - anon_sym_RPAREN, + ACTIONS(2347), 1, anon_sym_COMMA, - anon_sym_as, + STATE(1162), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2345), 6, + anon_sym_RPAREN, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [51868] = 2, + [62274] = 6, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2349), 1, + anon_sym_LBRACE2, + ACTIONS(2353), 1, + anon_sym_BSLASH, + ACTIONS(2355), 1, + sym__string_end, + STATE(1133), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2351), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [62296] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1864), 8, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_EQ, + ACTIONS(2161), 1, anon_sym_and, + ACTIONS(2167), 1, anon_sym_or, - sym__semicolon, - [51882] = 4, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2357), 1, + anon_sym_COMMA, + STATE(1232), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2236), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62320] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2110), 1, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + ACTIONS(2199), 6, anon_sym_COMMA, - STATE(988), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2108), 6, - anon_sym_RPAREN, anon_sym_if, + anon_sym_COLON, anon_sym_async, anon_sym_for, - anon_sym_RBRACK, anon_sym_RBRACE, - [51900] = 2, + [62338] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2112), 8, - anon_sym_RPAREN, + ACTIONS(2071), 1, + anon_sym_if, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + ACTIONS(2163), 5, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [62358] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + ACTIONS(2155), 6, anon_sym_COMMA, - anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, + anon_sym_async, + anon_sym_for, anon_sym_RBRACE, - [51914] = 2, + [62376] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2114), 8, - anon_sym_RPAREN, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2159), 7, anon_sym_COMMA, - anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, + anon_sym_async, + anon_sym_for, anon_sym_RBRACE, - [51928] = 4, + anon_sym_or, + [62392] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2118), 1, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + ACTIONS(2159), 6, anon_sym_COMMA, - STATE(976), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2116), 6, - anon_sym_RPAREN, anon_sym_if, + anon_sym_COLON, anon_sym_async, anon_sym_for, - anon_sym_RBRACK, anon_sym_RBRACE, - [51946] = 2, + [62410] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1917), 8, + ACTIONS(2359), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66653,82 +75811,90 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [51960] = 4, + [62424] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2123), 1, - anon_sym_COMMA, - STATE(976), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2121), 6, + ACTIONS(2108), 1, + anon_sym_and, + ACTIONS(2110), 1, + anon_sym_or, + ACTIONS(2361), 6, anon_sym_RPAREN, anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [51978] = 5, + [62442] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2017), 5, + ACTIONS(2163), 5, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_EQ, - sym__semicolon, - [51998] = 3, + anon_sym_SEMI, + [62462] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2127), 1, - anon_sym_PIPE, - ACTIONS(2125), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(2071), 1, anon_sym_if, + ACTIONS(2081), 1, + anon_sym_and, + ACTIONS(2083), 1, + anon_sym_or, + ACTIONS(2177), 5, + anon_sym_COMMA, anon_sym_COLON, - anon_sym_RBRACK, + anon_sym_async, + anon_sym_for, anon_sym_RBRACE, - [52014] = 6, + [62482] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, - anon_sym_DOT, - ACTIONS(1875), 1, - anon_sym_LPAREN, - ACTIONS(2129), 1, + ACTIONS(1597), 8, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_if, anon_sym_EQ, - STATE(902), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(1877), 4, + anon_sym_and, + anon_sym_or, + anon_sym_SEMI, + [62496] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2363), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, + anon_sym_if, + anon_sym_COLON, anon_sym_PIPE, - [52036] = 4, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62510] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2133), 1, - anon_sym_COMMA, - STATE(958), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2131), 6, + ACTIONS(2365), 8, anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, anon_sym_COLON, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [52054] = 2, + [62524] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2135), 8, + ACTIONS(2367), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66737,111 +75903,82 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [52068] = 4, + [62538] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(1919), 6, - sym__newline, - anon_sym_from, + ACTIONS(2371), 1, anon_sym_COMMA, + STATE(1162), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2369), 6, + anon_sym_RPAREN, anon_sym_if, - anon_sym_EQ, - sym__semicolon, - [52086] = 5, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62556] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(1915), 5, + ACTIONS(2155), 6, sym__newline, anon_sym_from, anon_sym_COMMA, + anon_sym_if, anon_sym_EQ, - sym__semicolon, - [52106] = 4, + anon_sym_SEMI, + [62574] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2137), 1, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2281), 5, anon_sym_COMMA, - STATE(958), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2131), 6, - anon_sym_RPAREN, - anon_sym_COLON, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, + anon_sym_COLON2, sym_type_conversion, - [52124] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2141), 1, - anon_sym_COMMA, - STATE(978), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2139), 6, - anon_sym_RPAREN, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [52142] = 4, + [62594] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2145), 1, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2199), 6, anon_sym_COMMA, - STATE(976), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2143), 6, - anon_sym_RPAREN, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, anon_sym_RBRACE, - [52160] = 8, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62612] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2147), 1, - anon_sym_from, - ACTIONS(2149), 1, - anon_sym_COMMA, - STATE(1082), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2151), 2, - sym__newline, - sym__semicolon, - [52186] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2153), 8, + ACTIONS(2301), 5, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [52200] = 2, + [62632] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2155), 8, + ACTIONS(2374), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66850,7412 +75987,8144 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [52214] = 5, + [62646] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2157), 4, - anon_sym_RPAREN, + ACTIONS(2050), 8, anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [52233] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2159), 1, anon_sym_if, - ACTIONS(2161), 1, + anon_sym_RBRACE, + anon_sym_EQ, anon_sym_and, - ACTIONS(2163), 1, anon_sym_or, - ACTIONS(1915), 4, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_COLON, - [52252] = 4, + anon_sym_COLON2, + sym_type_conversion, + [62660] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2163), 1, - anon_sym_or, - ACTIONS(1879), 5, - anon_sym_RPAREN, + ACTIONS(2376), 1, + sym_identifier, + ACTIONS(2378), 1, + anon_sym_LPAREN, + ACTIONS(2380), 1, + anon_sym_STAR, + STATE(1290), 1, + sym_dotted_name, + STATE(1368), 1, + sym_aliased_import, + STATE(1532), 1, + sym__import_list, + STATE(1533), 1, + sym_wildcard_import, + [62685] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2382), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - [52269] = 6, + ACTIONS(2384), 1, + anon_sym_RBRACE, + STATE(1100), 1, + sym_for_in_clause, + STATE(1491), 1, + aux_sym_dictionary_repeat1, + STATE(1650), 1, + sym__comprehension_clauses, + [62710] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2165), 1, + ACTIONS(2386), 1, anon_sym_except, - ACTIONS(2167), 1, + ACTIONS(2388), 1, anon_sym_finally, - STATE(549), 1, + STATE(553), 1, sym_finally_clause, - STATE(239), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - STATE(259), 2, + STATE(279), 2, sym_except_clause, aux_sym_try_statement_repeat1, - [52290] = 2, + STATE(283), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + [62731] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1515), 7, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2390), 4, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, anon_sym_COLON, - anon_sym_and, - anon_sym_or, - [52303] = 6, + anon_sym_EQ, + [62750] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2169), 1, + ACTIONS(2386), 1, anon_sym_except, - ACTIONS(2171), 1, + ACTIONS(2388), 1, anon_sym_finally, - STATE(478), 1, + STATE(562), 1, sym_finally_clause, - STATE(255), 2, + STATE(266), 2, sym_except_clause, aux_sym_try_statement_repeat1, - STATE(257), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - [52324] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2165), 1, - anon_sym_except, - ACTIONS(2167), 1, - anon_sym_finally, - STATE(469), 1, - sym_finally_clause, - STATE(260), 2, + STATE(267), 2, sym_except_group_clause, aux_sym_try_statement_repeat2, - STATE(261), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - [52345] = 6, + [62771] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, - anon_sym_if, ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2175), 1, - anon_sym_as, - ACTIONS(2173), 3, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2392), 4, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, - [52366] = 8, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62790] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, + ACTIONS(2259), 1, anon_sym_if, - ACTIONS(2161), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2177), 1, + ACTIONS(2394), 1, anon_sym_COMMA, - ACTIONS(2179), 1, - anon_sym_as, - ACTIONS(2181), 1, - anon_sym_COLON, - STATE(1178), 1, - aux_sym_exception_list_repeat1, - [52391] = 2, + STATE(1360), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2396), 2, + sym__newline, + anon_sym_SEMI, + [62813] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1891), 7, + ACTIONS(1597), 7, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_if, anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [52404] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2063), 1, anon_sym_and, - ACTIONS(2065), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2009), 4, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - sym__semicolon, - [52423] = 5, + [62826] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2259), 1, anon_sym_if, - ACTIONS(1958), 4, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - sym__semicolon, - [52442] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2183), 1, - sym_identifier, - ACTIONS(2185), 1, - anon_sym_STAR, - ACTIONS(2187), 1, - anon_sym_STAR_STAR, - STATE(1327), 4, - sym_typevar_parameter, - sym_typevartuple_parameter, - sym_paramspec_parameter, - sym__type_parameter, - [52461] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2063), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2149), 1, + ACTIONS(2398), 1, anon_sym_COMMA, - STATE(1082), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2189), 2, + STATE(1365), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2400), 2, sym__newline, - sym__semicolon, - [52484] = 8, + anon_sym_SEMI, + [62849] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1903), 1, - anon_sym_async, - ACTIONS(1905), 1, - anon_sym_for, - ACTIONS(2191), 1, + ACTIONS(2402), 7, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(2193), 1, - anon_sym_RBRACE, - STATE(936), 1, - sym_for_in_clause, - STATE(1207), 1, - aux_sym_dictionary_repeat1, - STATE(1404), 1, - sym__comprehension_clauses, - [52509] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1887), 1, - anon_sym_and, - ACTIONS(1889), 1, - anon_sym_or, - ACTIONS(1899), 1, anon_sym_if, - ACTIONS(2195), 4, - anon_sym_COMMA, anon_sym_async, anon_sym_for, + anon_sym_RBRACK, anon_sym_RBRACE, - [52528] = 7, + [62862] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2197), 1, + ACTIONS(2295), 1, anon_sym_COMMA, - STATE(1167), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2199), 2, + STATE(1260), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2404), 2, sym__newline, - sym__semicolon, - [52551] = 7, + anon_sym_SEMI, + [62885] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2197), 1, + ACTIONS(2295), 1, anon_sym_COMMA, - STATE(1134), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2201), 2, + STATE(1260), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2406), 2, sym__newline, - sym__semicolon, - [52574] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2009), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - sym_type_conversion, - [52587] = 6, + anon_sym_SEMI, + [62908] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2169), 1, + ACTIONS(2408), 1, anon_sym_except, - ACTIONS(2171), 1, + ACTIONS(2410), 1, anon_sym_finally, - STATE(551), 1, + STATE(535), 1, sym_finally_clause, - STATE(250), 2, + STATE(268), 2, sym_except_clause, aux_sym_try_statement_repeat1, - STATE(252), 2, + STATE(280), 2, sym_except_group_clause, aux_sym_try_statement_repeat2, - [52608] = 7, + [62929] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2203), 1, - anon_sym_COMMA, - STATE(1130), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2205), 2, - sym__newline, - sym__semicolon, - [52631] = 7, + ACTIONS(2412), 1, + sym_identifier, + ACTIONS(2414), 1, + anon_sym_STAR, + ACTIONS(2416), 1, + anon_sym_STAR_STAR, + STATE(1524), 4, + sym_typevar_parameter, + sym_typevartuple_parameter, + sym_paramspec_parameter, + sym__type_parameter, + [62948] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2207), 1, - sym_identifier, - ACTIONS(2209), 1, - anon_sym_DOT, - ACTIONS(2211), 1, - anon_sym___future__, - STATE(1171), 1, - aux_sym_import_prefix_repeat1, - STATE(1219), 1, - sym_import_prefix, - STATE(1420), 2, - sym_relative_import, - sym_dotted_name, - [52654] = 3, + ACTIONS(2234), 1, + anon_sym_if, + ACTIONS(2238), 1, + anon_sym_and, + ACTIONS(2240), 1, + anon_sym_or, + ACTIONS(2418), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62967] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2215), 1, + ACTIONS(2422), 1, anon_sym_as, - ACTIONS(2213), 6, + ACTIONS(2420), 6, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [52669] = 5, + [62982] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, + ACTIONS(2259), 1, anon_sym_if, - ACTIONS(2161), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(1909), 4, - anon_sym_RPAREN, + ACTIONS(2295), 1, + anon_sym_COMMA, + STATE(1260), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2424), 2, + sym__newline, + anon_sym_SEMI, + [63005] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2426), 1, anon_sym_COMMA, + ACTIONS(2428), 1, anon_sym_as, + ACTIONS(2430), 1, + anon_sym_if, + ACTIONS(2432), 1, anon_sym_COLON, - [52688] = 5, + ACTIONS(2434), 1, + anon_sym_and, + ACTIONS(2436), 1, + anon_sym_or, + STATE(1338), 1, + aux_sym_exception_list_repeat1, + [63030] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2183), 1, - sym_identifier, - ACTIONS(2185), 1, - anon_sym_STAR, - ACTIONS(2187), 1, - anon_sym_STAR_STAR, - STATE(1240), 4, - sym_typevar_parameter, - sym_typevartuple_parameter, - sym_paramspec_parameter, - sym__type_parameter, - [52707] = 8, + ACTIONS(2408), 1, + anon_sym_except, + ACTIONS(2410), 1, + anon_sym_finally, + STATE(607), 1, + sym_finally_clause, + STATE(275), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + STATE(287), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + [63051] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2434), 1, + anon_sym_and, + ACTIONS(2436), 1, + anon_sym_or, + ACTIONS(2199), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + [63068] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2418), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63087] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(2217), 1, + ACTIONS(2438), 1, anon_sym_COMMA, - ACTIONS(2219), 1, + ACTIONS(2440), 1, anon_sym_RBRACE, - STATE(936), 1, + STATE(1100), 1, sym_for_in_clause, - STATE(1246), 1, + STATE(1409), 1, aux_sym_dictionary_repeat1, - STATE(1445), 1, + STATE(1718), 1, sym__comprehension_clauses, - [52732] = 2, + [63112] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2221), 7, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2259), 1, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [52745] = 2, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2301), 4, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_SEMI, + [63131] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1864), 7, + ACTIONS(2430), 1, + anon_sym_if, + ACTIONS(2434), 1, + anon_sym_and, + ACTIONS(2436), 1, + anon_sym_or, + ACTIONS(2163), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - anon_sym_if, anon_sym_COLON, - anon_sym_and, - anon_sym_or, - [52758] = 2, + [63150] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2116), 7, + ACTIONS(2434), 1, + anon_sym_and, + ACTIONS(2436), 1, + anon_sym_or, + ACTIONS(2155), 5, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [52771] = 4, + anon_sym_COLON, + [63167] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(2163), 1, - anon_sym_or, - ACTIONS(1919), 5, + ACTIONS(2159), 6, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_if, anon_sym_COLON, - [52788] = 5, + anon_sym_or, + [63182] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2436), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2223), 4, + ACTIONS(2159), 5, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_if, anon_sym_COLON, - anon_sym_EQ, - [52807] = 2, + [63199] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2225), 7, + ACTIONS(2236), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [52820] = 3, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [63212] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(1923), 6, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(2259), 1, anon_sym_if, - anon_sym_COLON, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, anon_sym_or, - [52835] = 8, + ACTIONS(2398), 1, + anon_sym_COMMA, + STATE(1344), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2442), 2, + sym__newline, + anon_sym_SEMI, + [63235] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1903), 1, + ACTIONS(2075), 1, anon_sym_async, - ACTIONS(1905), 1, + ACTIONS(2077), 1, anon_sym_for, - ACTIONS(2227), 1, + ACTIONS(2444), 1, anon_sym_COMMA, - ACTIONS(2229), 1, + ACTIONS(2446), 1, anon_sym_RBRACE, - STATE(936), 1, + STATE(1100), 1, sym_for_in_clause, - STATE(1251), 1, + STATE(1427), 1, aux_sym_dictionary_repeat1, - STATE(1462), 1, + STATE(1631), 1, sym__comprehension_clauses, - [52860] = 7, + [63260] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2149), 1, - anon_sym_COMMA, - STATE(1082), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2231), 2, + ACTIONS(2281), 4, sym__newline, - sym__semicolon, - [52883] = 4, + anon_sym_from, + anon_sym_COMMA, + anon_sym_SEMI, + [63279] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2430), 1, + anon_sym_if, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2436), 1, anon_sym_or, - ACTIONS(1923), 5, + ACTIONS(2450), 1, + anon_sym_as, + ACTIONS(2448), 3, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, anon_sym_COLON, - [52900] = 8, + [63300] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2233), 1, + ACTIONS(2452), 1, sym_identifier, - ACTIONS(2235), 1, - anon_sym_LPAREN, - ACTIONS(2237), 1, - anon_sym_STAR, - STATE(1105), 1, + ACTIONS(2454), 1, + anon_sym_DOT, + ACTIONS(2456), 1, + anon_sym___future__, + STATE(1336), 1, + aux_sym_import_prefix_repeat1, + STATE(1402), 1, + sym_import_prefix, + STATE(1709), 2, + sym_relative_import, sym_dotted_name, - STATE(1159), 1, - sym_aliased_import, - STATE(1335), 1, - sym_wildcard_import, - STATE(1338), 1, - sym__import_list, - [52925] = 5, + [63323] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, + ACTIONS(2259), 1, anon_sym_if, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2163), 1, - anon_sym_or, - ACTIONS(1913), 4, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_COLON, - [52944] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2063), 1, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2149), 1, + ACTIONS(2295), 1, anon_sym_COMMA, - STATE(1082), 1, + STATE(1260), 1, aux_sym_expression_list_repeat1, - ACTIONS(1891), 2, + ACTIONS(2236), 2, sym__newline, - sym__semicolon, - [52967] = 7, + anon_sym_SEMI, + [63346] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2149), 1, + ACTIONS(2458), 7, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1082), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2239), 2, - sym__newline, - sym__semicolon, - [52990] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, anon_sym_if, - ACTIONS(2149), 1, - anon_sym_COMMA, - STATE(1082), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2241), 2, - sym__newline, - sym__semicolon, - [53013] = 8, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63359] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, + ACTIONS(2426), 1, + anon_sym_COMMA, + ACTIONS(2430), 1, anon_sym_if, - ACTIONS(2161), 1, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2436), 1, anon_sym_or, - ACTIONS(2177), 1, - anon_sym_COMMA, - ACTIONS(2243), 1, + ACTIONS(2460), 1, anon_sym_as, - ACTIONS(2245), 1, + ACTIONS(2462), 1, anon_sym_COLON, - STATE(1178), 1, + STATE(1338), 1, aux_sym_exception_list_repeat1, - [53038] = 8, + [63384] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, + ACTIONS(2426), 1, + anon_sym_COMMA, + ACTIONS(2430), 1, anon_sym_if, - ACTIONS(2161), 1, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2436), 1, anon_sym_or, - ACTIONS(2177), 1, - anon_sym_COMMA, - ACTIONS(2247), 1, + ACTIONS(2464), 1, anon_sym_as, - ACTIONS(2249), 1, + ACTIONS(2466), 1, anon_sym_COLON, - STATE(1178), 1, + STATE(1338), 1, aux_sym_exception_list_repeat1, - [53063] = 6, - ACTIONS(1948), 1, + [63409] = 5, + ACTIONS(3), 1, sym_comment, - ACTIONS(2251), 1, - anon_sym_LBRACE2, - ACTIONS(2256), 1, - sym__not_escape_sequence, - ACTIONS(2259), 1, - sym__string_end, - STATE(1035), 1, - aux_sym_string_content_repeat1, - ACTIONS(2253), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [53084] = 8, + ACTIONS(2412), 1, + sym_identifier, + ACTIONS(2414), 1, + anon_sym_STAR, + ACTIONS(2416), 1, + anon_sym_STAR_STAR, + STATE(1416), 4, + sym_typevar_parameter, + sym_typevartuple_parameter, + sym_paramspec_parameter, + sym__type_parameter, + [63428] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, + ACTIONS(2426), 1, + anon_sym_COMMA, + ACTIONS(2430), 1, anon_sym_if, - ACTIONS(2161), 1, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(2163), 1, + ACTIONS(2436), 1, anon_sym_or, - ACTIONS(2177), 1, - anon_sym_COMMA, - ACTIONS(2261), 1, + ACTIONS(2468), 1, anon_sym_as, - ACTIONS(2263), 1, + ACTIONS(2470), 1, anon_sym_COLON, - STATE(1178), 1, + STATE(1338), 1, aux_sym_exception_list_repeat1, - [53109] = 6, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(2265), 1, - anon_sym_LBRACE2, - ACTIONS(2269), 1, - sym__not_escape_sequence, - ACTIONS(2271), 1, - sym__string_end, - STATE(1035), 1, - aux_sym_string_content_repeat1, - ACTIONS(2267), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [53130] = 4, + [63453] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2273), 1, - anon_sym_DOT, - STATE(1038), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(1868), 4, - sym__newline, + ACTIONS(2430), 1, + anon_sym_if, + ACTIONS(2434), 1, + anon_sym_and, + ACTIONS(2436), 1, + anon_sym_or, + ACTIONS(2177), 4, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - sym__semicolon, - [53146] = 4, + anon_sym_COLON, + [63472] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, - anon_sym_DOT, - STATE(1051), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2276), 4, - anon_sym_import, + ACTIONS(2430), 1, + anon_sym_if, + ACTIONS(2434), 1, + anon_sym_and, + ACTIONS(2436), 1, + anon_sym_or, + ACTIONS(2181), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - [53162] = 7, + anon_sym_COLON, + [63491] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2050), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, anon_sym_and, - ACTIONS(1883), 1, anon_sym_or, - ACTIONS(1893), 1, + [63504] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2369), 7, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(1895), 1, anon_sym_if, - ACTIONS(2278), 1, - anon_sym_COLON, - STATE(982), 1, - aux_sym_expression_list_repeat1, - [53184] = 4, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63517] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2280), 1, - anon_sym_DOT, - STATE(1047), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2276), 4, - sym__newline, + ACTIONS(2075), 1, + anon_sym_async, + ACTIONS(2077), 1, + anon_sym_for, + ACTIONS(2472), 1, anon_sym_COMMA, - anon_sym_as, - sym__semicolon, - [53200] = 6, + ACTIONS(2474), 1, + anon_sym_RBRACE, + STATE(1100), 1, + sym_for_in_clause, + STATE(1433), 1, + aux_sym_dictionary_repeat1, + STATE(1721), 1, + sym__comprehension_clauses, + [63542] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2284), 1, - anon_sym_COLON, - ACTIONS(2282), 2, + ACTIONS(2295), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [53220] = 5, + STATE(1260), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2476), 2, + sym__newline, + anon_sym_SEMI, + [63565] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2106), 1, + anon_sym_if, + ACTIONS(2108), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2110), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2286), 3, + ACTIONS(2478), 4, anon_sym_COMMA, - anon_sym_RBRACK, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [63584] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2480), 1, + anon_sym_COMMA, + STATE(1221), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2482), 4, + anon_sym_RBRACE, anon_sym_EQ, - [53238] = 3, - ACTIONS(1948), 1, + anon_sym_COLON2, + sym_type_conversion, + [63600] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2091), 1, + anon_sym_DOT, + STATE(1241), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2484), 4, + anon_sym_import, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + [63616] = 3, + ACTIONS(2065), 1, sym_comment, - ACTIONS(2288), 2, + ACTIONS(2486), 2, anon_sym_LBRACE2, - sym__not_escape_sequence, - ACTIONS(2290), 4, + anon_sym_BSLASH, + ACTIONS(2488), 4, sym__string_content, sym__string_end, sym__escape_interpolation, sym_escape_sequence, - [53252] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2294), 1, - anon_sym_AT, - STATE(1045), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - ACTIONS(2292), 3, - anon_sym_async, - anon_sym_def, - anon_sym_class, - [53268] = 3, - ACTIONS(1948), 1, + [63630] = 3, + ACTIONS(2065), 1, sym_comment, - ACTIONS(2297), 2, + ACTIONS(2490), 2, anon_sym_LBRACE2, - sym__not_escape_sequence, - ACTIONS(2299), 4, + anon_sym_BSLASH, + ACTIONS(2492), 4, sym__string_content, sym__string_end, sym__escape_interpolation, sym_escape_sequence, - [53282] = 4, + [63644] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2280), 1, + ACTIONS(2494), 1, anon_sym_DOT, - STATE(1038), 1, + STATE(1233), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(2301), 4, + ACTIONS(2484), 4, sym__newline, anon_sym_COMMA, anon_sym_as, - sym__semicolon, - [53298] = 3, - ACTIONS(1948), 1, + anon_sym_SEMI, + [63660] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2498), 1, + anon_sym_COLON, + ACTIONS(2500), 1, + anon_sym_EQ, + STATE(1327), 1, + sym__type_bound, + STATE(1529), 1, + sym__type_param_default, + ACTIONS(2496), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [63680] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2502), 1, + anon_sym_COMMA, + STATE(1221), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2505), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [63696] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2507), 1, + anon_sym_COMMA, + STATE(1222), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2505), 4, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63712] = 3, + ACTIONS(2065), 1, sym_comment, - ACTIONS(2303), 2, + ACTIONS(2510), 2, anon_sym_LBRACE2, - sym__not_escape_sequence, - ACTIONS(2305), 4, + anon_sym_BSLASH, + ACTIONS(2512), 4, sym__string_content, sym__string_end, sym__escape_interpolation, sym_escape_sequence, - [53312] = 6, + [63726] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2309), 1, - anon_sym_COLON, - ACTIONS(2307), 2, + ACTIONS(2514), 3, + sym__newline, anon_sym_COMMA, - anon_sym_RBRACK, - [53332] = 7, + anon_sym_SEMI, + [63744] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1893), 1, + ACTIONS(2171), 1, + anon_sym_RPAREN, + ACTIONS(2173), 1, anon_sym_COMMA, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2311), 1, - anon_sym_COLON, - STATE(982), 1, - aux_sym_expression_list_repeat1, - [53354] = 4, + STATE(1451), 1, + aux_sym_argument_list_repeat1, + [63766] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, - anon_sym_DOT, - STATE(881), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2301), 4, - anon_sym_import, - anon_sym_RPAREN, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2516), 3, + sym__newline, anon_sym_COMMA, - anon_sym_as, - [53370] = 7, + anon_sym_SEMI, + [63784] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(1893), 1, + ACTIONS(2518), 3, + sym__newline, anon_sym_COMMA, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2313), 1, - anon_sym_COLON, - STATE(982), 1, - aux_sym_expression_list_repeat1, - [53392] = 5, + anon_sym_SEMI, + [63802] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2315), 3, - sym__newline, + ACTIONS(2520), 3, + anon_sym_RPAREN, anon_sym_COMMA, - sym__semicolon, - [53410] = 3, - ACTIONS(1948), 1, + anon_sym_COLON, + [63820] = 4, + ACTIONS(3), 1, sym_comment, - ACTIONS(2317), 2, - anon_sym_LBRACE2, - sym__not_escape_sequence, - ACTIONS(2319), 4, - sym__string_content, - sym__string_end, - sym__escape_interpolation, - sym_escape_sequence, - [53424] = 7, + ACTIONS(2522), 1, + anon_sym_COMMA, + STATE(1222), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2482), 4, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63836] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1893), 1, - anon_sym_COMMA, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2321), 1, + ACTIONS(2357), 1, + anon_sym_COMMA, + ACTIONS(2524), 1, anon_sym_COLON, - STATE(982), 1, + STATE(1232), 1, aux_sym_expression_list_repeat1, - [53446] = 3, - ACTIONS(1948), 1, + [63858] = 5, + ACTIONS(3), 1, sym_comment, - ACTIONS(2323), 2, - anon_sym_LBRACE2, - sym__not_escape_sequence, - ACTIONS(2325), 4, - sym__string_content, - sym__string_end, - sym__escape_interpolation, - sym_escape_sequence, - [53460] = 4, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2526), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + [63876] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2329), 1, + ACTIONS(2528), 1, anon_sym_COMMA, - STATE(1057), 1, - aux_sym_open_sequence_match_pattern_repeat1, - ACTIONS(2327), 4, + STATE(1222), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2482), 4, anon_sym_RPAREN, - anon_sym_if, anon_sym_COLON, anon_sym_RBRACK, - [53476] = 5, + anon_sym_RBRACE, + [63892] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2494), 1, + anon_sym_DOT, + STATE(1234), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2530), 4, + sym__newline, + anon_sym_COMMA, + anon_sym_as, + anon_sym_SEMI, + [63908] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2532), 1, + anon_sym_DOT, + STATE(1234), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2054), 4, + sym__newline, + anon_sym_COMMA, + anon_sym_as, + anon_sym_SEMI, + [63924] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2332), 3, - anon_sym_RPAREN, + ACTIONS(2357), 1, anon_sym_COMMA, + ACTIONS(2535), 1, anon_sym_COLON, - [53494] = 5, + STATE(1232), 1, + aux_sym_expression_list_repeat1, + [63946] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2334), 3, - anon_sym_RPAREN, + ACTIONS(2357), 1, anon_sym_COMMA, + ACTIONS(2537), 1, anon_sym_COLON, - [53512] = 7, + STATE(1232), 1, + aux_sym_expression_list_repeat1, + [63968] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(1960), 1, - anon_sym_RPAREN, - ACTIONS(1962), 1, + ACTIONS(2357), 1, anon_sym_COMMA, - STATE(1286), 1, - aux_sym_argument_list_repeat1, - [53534] = 2, + ACTIONS(2539), 1, + anon_sym_COLON, + STATE(1232), 1, + aux_sym_expression_list_repeat1, + [63990] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2336), 6, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, anon_sym_if, - anon_sym_COLON, + ACTIONS(2541), 3, + anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_RBRACE, - [53546] = 6, + anon_sym_EQ, + [64008] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2340), 1, - anon_sym_COLON, - ACTIONS(2342), 1, - anon_sym_EQ, - STATE(1176), 1, - sym__type_bound, - STATE(1364), 1, - sym__type_param_default, - ACTIONS(2338), 2, + ACTIONS(2095), 6, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, anon_sym_RBRACK, - [53566] = 5, + anon_sym_RBRACE, + [64020] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2223), 3, - sym__newline, - anon_sym_EQ, - sym__semicolon, - [53584] = 5, + ACTIONS(2357), 1, + anon_sym_COMMA, + ACTIONS(2543), 1, + anon_sym_COLON, + STATE(1232), 1, + aux_sym_expression_list_repeat1, + [64042] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2159), 1, - anon_sym_if, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2163), 1, - anon_sym_or, - ACTIONS(2344), 3, + ACTIONS(2091), 1, + anon_sym_DOT, + STATE(1032), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2530), 4, + anon_sym_import, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - anon_sym_COLON, - [53602] = 7, + [64058] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1893), 1, + ACTIONS(2547), 1, anon_sym_COMMA, - ACTIONS(1895), 1, + STATE(1242), 1, + aux_sym_open_sequence_match_pattern_repeat1, + ACTIONS(2545), 4, + anon_sym_RPAREN, anon_sym_if, - ACTIONS(2346), 1, anon_sym_COLON, - STATE(982), 1, - aux_sym_expression_list_repeat1, - [53624] = 7, + anon_sym_RBRACK, + [64074] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2430), 1, + anon_sym_if, + ACTIONS(2434), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2436), 1, anon_sym_or, - ACTIONS(1893), 1, + ACTIONS(2550), 3, + anon_sym_COMMA, + anon_sym_as, + anon_sym_COLON, + [64092] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2552), 6, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(1895), 1, anon_sym_if, - ACTIONS(2348), 1, anon_sym_COLON, - STATE(982), 1, - aux_sym_expression_list_repeat1, - [53646] = 3, - ACTIONS(1948), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + [64104] = 3, + ACTIONS(2065), 1, sym_comment, - ACTIONS(2350), 2, + ACTIONS(2554), 2, anon_sym_LBRACE2, - sym__not_escape_sequence, - ACTIONS(2352), 4, + anon_sym_BSLASH, + ACTIONS(2556), 4, sym__string_content, sym__string_end, sym__escape_interpolation, sym_escape_sequence, - [53660] = 5, + [64118] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2354), 3, - sym__newline, + ACTIONS(2560), 1, + anon_sym_COLON, + ACTIONS(2558), 2, anon_sym_COMMA, - sym__semicolon, - [53678] = 5, + anon_sym_RBRACK, + [64138] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2356), 3, - sym__newline, + ACTIONS(2564), 1, + anon_sym_COLON, + ACTIONS(2562), 2, anon_sym_COMMA, - sym__semicolon, - [53696] = 2, + anon_sym_RBRACK, + [64158] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1877), 6, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - [53708] = 6, + ACTIONS(2568), 1, + anon_sym_AT, + STATE(1248), 2, + sym_decorator, + aux_sym_decorated_definition_repeat1, + ACTIONS(2566), 3, + anon_sym_async, + anon_sym_def, + anon_sym_class, + [64174] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2360), 1, + ACTIONS(2573), 1, anon_sym_COLON, - ACTIONS(2358), 2, + ACTIONS(2571), 2, anon_sym_COMMA, anon_sym_RBRACK, - [53728] = 6, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(2362), 1, - anon_sym_RBRACE, - ACTIONS(2364), 1, - anon_sym_LBRACE2, - ACTIONS(2367), 1, - aux_sym_format_specifier_token1, - STATE(1072), 1, - aux_sym_format_specifier_repeat1, - STATE(1255), 1, - sym_interpolation, - [53747] = 5, + [64194] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2003), 2, + ACTIONS(2390), 3, sym__newline, - sym__semicolon, - [53764] = 6, + anon_sym_EQ, + anon_sym_SEMI, + [64212] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2233), 1, - sym_identifier, - ACTIONS(2370), 1, - anon_sym_LPAREN, - STATE(1105), 1, - sym_dotted_name, - STATE(1159), 1, - sym_aliased_import, - STATE(1343), 1, - sym__import_list, - [53783] = 5, + ACTIONS(2575), 1, + anon_sym_COMMA, + STATE(1221), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2482), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [64228] = 3, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2577), 2, + anon_sym_LBRACE2, + anon_sym_BSLASH, + ACTIONS(2579), 4, + sym__string_content, + sym__string_end, + sym__escape_interpolation, + sym_escape_sequence, + [64242] = 3, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2581), 2, + anon_sym_LBRACE2, + anon_sym_BSLASH, + ACTIONS(2583), 4, + sym__string_content, + sym__string_end, + sym__escape_interpolation, + sym_escape_sequence, + [64256] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2372), 2, + ACTIONS(2357), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [53800] = 6, + ACTIONS(2585), 1, + anon_sym_COLON, + STATE(1232), 1, + aux_sym_expression_list_repeat1, + [64278] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, - anon_sym_COLON, ACTIONS(2376), 1, - anon_sym_RBRACE, - ACTIONS(2378), 1, - anon_sym_EQ, - ACTIONS(2380), 1, - sym_type_conversion, - STATE(1460), 1, - sym_format_specifier, - [53819] = 4, + sym_identifier, + STATE(1306), 1, + sym_dotted_name, + STATE(1486), 1, + sym_aliased_import, + ACTIONS(2587), 2, + sym__newline, + anon_sym_SEMI, + [64295] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2384), 1, + ACTIONS(2589), 1, + anon_sym_LPAREN, + ACTIONS(2591), 1, + anon_sym_COLON, + ACTIONS(2593), 1, + anon_sym_LBRACK, + STATE(1453), 1, + sym_type_parameters, + STATE(1601), 1, + sym_argument_list, + [64314] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2069), 1, anon_sym_COMMA, - STATE(1099), 1, + STATE(1259), 1, aux_sym__collection_elements_repeat1, - ACTIONS(2382), 3, + ACTIONS(2079), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - [53834] = 4, + [64329] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2386), 1, - anon_sym_COMMA, - STATE(1096), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2131), 3, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2418), 2, sym__newline, - anon_sym_from, - sym__semicolon, - [53849] = 4, + anon_sym_SEMI, + [64346] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2388), 1, + ACTIONS(2597), 1, anon_sym_COMMA, - STATE(1099), 1, + STATE(1286), 1, aux_sym__collection_elements_repeat1, - ACTIONS(2382), 3, + ACTIONS(2595), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - [53864] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2233), 1, - sym_identifier, - STATE(1132), 1, - sym_dotted_name, - STATE(1289), 1, - sym_aliased_import, - ACTIONS(2390), 2, - sym__newline, - sym__semicolon, - [53881] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2392), 2, - sym__newline, - sym__semicolon, - [53898] = 4, + [64361] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2394), 1, + ACTIONS(2599), 1, anon_sym_COMMA, - STATE(1096), 1, + STATE(1280), 1, aux_sym_expression_list_repeat1, - ACTIONS(2131), 3, + ACTIONS(2482), 3, sym__newline, anon_sym_from, - sym__semicolon, - [53913] = 5, + anon_sym_SEMI, + [64376] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2195), 2, + ACTIONS(2601), 2, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACE, - [53930] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2396), 1, - anon_sym_LPAREN, - ACTIONS(2398), 1, - anon_sym_COLON, - ACTIONS(2400), 1, - anon_sym_LBRACK, - STATE(1210), 1, - sym_type_parameters, - STATE(1402), 1, - sym_argument_list, - [53949] = 5, + [64393] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2402), 2, + ACTIONS(2603), 2, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACK, - [53966] = 2, + [64410] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2404), 5, + ACTIONS(2605), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_RBRACK, - [53977] = 5, + [64421] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2406), 2, + ACTIONS(2607), 2, anon_sym_COMMA, anon_sym_RBRACK, - [53994] = 6, + [64438] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, - anon_sym_COLON, - ACTIONS(2408), 1, + ACTIONS(2609), 1, anon_sym_RBRACE, - ACTIONS(2410), 1, + ACTIONS(2611), 1, anon_sym_EQ, - ACTIONS(2412), 1, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(2615), 1, sym_type_conversion, - STATE(1470), 1, + STATE(1652), 1, sym_format_specifier, - [54013] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2327), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_RBRACK, - [54024] = 5, + [64457] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2414), 2, + ACTIONS(2617), 2, anon_sym_COMMA, anon_sym_RBRACK, - [54041] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2416), 2, - sym__newline, - sym__semicolon, - [54058] = 5, + [64474] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2418), 2, + ACTIONS(2281), 5, anon_sym_RPAREN, anon_sym_COMMA, - [54075] = 5, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [64485] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(2069), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2420), 2, - sym__newline, - sym__semicolon, - [54092] = 5, + ACTIONS(2619), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [64502] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, anon_sym_and, - ACTIONS(2065), 1, + ACTIONS(2263), 1, anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2422), 2, + ACTIONS(2621), 2, sym__newline, - sym__semicolon, - [54109] = 4, + anon_sym_SEMI, + [64519] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1897), 1, + ACTIONS(2623), 1, anon_sym_COMMA, - STATE(1077), 1, + STATE(1286), 1, aux_sym__collection_elements_repeat1, - ACTIONS(1907), 3, + ACTIONS(2595), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - [54124] = 4, + [64534] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2424), 1, - anon_sym_COMMA, - STATE(1096), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2075), 3, + ACTIONS(2376), 1, + sym_identifier, + STATE(1306), 1, + sym_dotted_name, + STATE(1486), 1, + sym_aliased_import, + ACTIONS(2625), 2, sym__newline, - anon_sym_from, - sym__semicolon, - [54139] = 5, + anon_sym_SEMI, + [64551] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2233), 1, + ACTIONS(2376), 1, sym_identifier, - STATE(1132), 1, + ACTIONS(2627), 1, + anon_sym_LPAREN, + STATE(1290), 1, sym_dotted_name, - STATE(1289), 1, + STATE(1368), 1, sym_aliased_import, - ACTIONS(2427), 2, - sym__newline, - sym__semicolon, - [54156] = 6, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(2429), 1, - anon_sym_RBRACE, - ACTIONS(2431), 1, - anon_sym_LBRACE2, - ACTIONS(2433), 1, - aux_sym_format_specifier_token1, - STATE(1104), 1, - aux_sym_format_specifier_repeat1, - STATE(1255), 1, - sym_interpolation, - [54175] = 4, + STATE(1527), 1, + sym__import_list, + [64570] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2437), 1, + ACTIONS(2281), 5, anon_sym_COMMA, - STATE(1099), 1, - aux_sym__collection_elements_repeat1, - ACTIONS(2435), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, anon_sym_RBRACE, - [54190] = 5, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [64581] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2440), 2, + ACTIONS(2629), 2, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACK, - [54207] = 5, + [64598] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2233), 1, + ACTIONS(2376), 1, sym_identifier, - STATE(1132), 1, + STATE(1306), 1, sym_dotted_name, - STATE(1289), 1, + STATE(1486), 1, sym_aliased_import, - ACTIONS(2427), 2, + ACTIONS(2625), 2, sym__newline, - sym__semicolon, - [54224] = 5, + anon_sym_SEMI, + [64615] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2442), 2, + ACTIONS(2631), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [64632] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2545), 5, anon_sym_RPAREN, anon_sym_COMMA, - [54241] = 6, + anon_sym_if, + anon_sym_COLON, + anon_sym_RBRACK, + [64643] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2633), 1, + anon_sym_COMMA, + STATE(1280), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2482), 3, + sym__newline, + anon_sym_from, + anon_sym_SEMI, + [64658] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2635), 2, + sym__newline, + anon_sym_SEMI, + [64675] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2637), 1, + anon_sym_COMMA, + STATE(1280), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2505), 3, + sym__newline, + anon_sym_from, + anon_sym_SEMI, + [64690] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2396), 1, + ACTIONS(2589), 1, anon_sym_LPAREN, - ACTIONS(2400), 1, + ACTIONS(2593), 1, anon_sym_LBRACK, - ACTIONS(2444), 1, + ACTIONS(2640), 1, anon_sym_COLON, - STATE(1239), 1, + STATE(1493), 1, sym_type_parameters, - STATE(1444), 1, + STATE(1710), 1, sym_argument_list, - [54260] = 6, - ACTIONS(1948), 1, + [64709] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2478), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [64726] = 6, + ACTIONS(2065), 1, sym_comment, - ACTIONS(2431), 1, + ACTIONS(2642), 1, + anon_sym_RBRACE, + ACTIONS(2644), 1, anon_sym_LBRACE2, - ACTIONS(2446), 1, + ACTIONS(2646), 1, + aux_sym_format_specifier_token1, + STATE(1288), 1, + aux_sym_format_specifier_repeat1, + STATE(1497), 1, + sym_interpolation, + [64745] = 6, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2648), 1, anon_sym_RBRACE, - ACTIONS(2448), 1, + ACTIONS(2650), 1, + anon_sym_LBRACE2, + ACTIONS(2653), 1, aux_sym_format_specifier_token1, - STATE(1072), 1, + STATE(1284), 1, aux_sym_format_specifier_repeat1, - STATE(1255), 1, + STATE(1497), 1, sym_interpolation, - [54279] = 5, + [64764] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2450), 1, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2656), 2, + sym__newline, + anon_sym_SEMI, + [64781] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2660), 1, + anon_sym_COMMA, + STATE(1286), 1, + aux_sym__collection_elements_repeat1, + ACTIONS(2658), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + [64796] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(2663), 1, + anon_sym_RBRACE, + ACTIONS(2665), 1, + anon_sym_EQ, + ACTIONS(2667), 1, + sym_type_conversion, + STATE(1587), 1, + sym_format_specifier, + [64815] = 6, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2644), 1, + anon_sym_LBRACE2, + ACTIONS(2669), 1, + anon_sym_RBRACE, + ACTIONS(2671), 1, + aux_sym_format_specifier_token1, + STATE(1284), 1, + aux_sym_format_specifier_repeat1, + STATE(1497), 1, + sym_interpolation, + [64834] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2054), 5, + sym__newline, + anon_sym_DOT, anon_sym_COMMA, - ACTIONS(2452), 1, anon_sym_as, - STATE(1145), 1, + anon_sym_SEMI, + [64845] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2673), 1, + anon_sym_COMMA, + ACTIONS(2675), 1, + anon_sym_as, + STATE(1359), 1, aux_sym__import_list_repeat1, - ACTIONS(2454), 2, + ACTIONS(2677), 2, sym__newline, - sym__semicolon, - [54296] = 5, + anon_sym_SEMI, + [64862] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2679), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [64879] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2681), 2, + sym__newline, + anon_sym_SEMI, + [64896] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2685), 1, + anon_sym_COMMA, + STATE(993), 1, + aux_sym__patterns_repeat1, + ACTIONS(2683), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + [64910] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2687), 1, + anon_sym_COMMA, + STATE(1242), 1, + aux_sym_open_sequence_match_pattern_repeat1, + ACTIONS(1859), 2, + anon_sym_if, + anon_sym_COLON, + [64924] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2689), 1, + anon_sym_COLON, + [64940] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2691), 1, + anon_sym_COLON, + [64956] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2456), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [54313] = 2, + ACTIONS(2693), 1, + anon_sym_else, + [64972] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1868), 5, - sym__newline, - anon_sym_DOT, + ACTIONS(2695), 1, + anon_sym_case, + STATE(610), 1, + sym_cases, + STATE(453), 2, + sym_case_block, + aux_sym_cases_repeat1, + [64986] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2697), 1, anon_sym_COMMA, - anon_sym_as, - sym__semicolon, - [54324] = 5, + STATE(1355), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2699), 2, + sym__newline, + anon_sym_SEMI, + [65000] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2701), 4, + anon_sym_async, + anon_sym_def, + anon_sym_class, + anon_sym_AT, + [65010] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2400), 1, + ACTIONS(2593), 1, anon_sym_LBRACK, - ACTIONS(2458), 1, + ACTIONS(2703), 1, anon_sym_LPAREN, - STATE(1359), 1, + STATE(1554), 1, sym_parameters, - STATE(1367), 1, + STATE(1557), 1, sym_type_parameters, - [54340] = 4, + [65026] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2460), 1, - anon_sym_COMMA, - STATE(1124), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2462), 2, - sym__newline, - sym__semicolon, - [54354] = 4, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(2705), 1, + anon_sym_RBRACE, + ACTIONS(2707), 1, + sym_type_conversion, + STATE(1692), 1, + sym_format_specifier, + [65042] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2464), 1, - anon_sym_COMMA, - STATE(1110), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2354), 2, + ACTIONS(562), 1, sym__newline, + ACTIONS(2709), 1, + anon_sym_SEMI, + STATE(129), 1, sym__semicolon, - [54368] = 4, + STATE(1357), 1, + aux_sym__simple_statements_repeat1, + [65058] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2467), 1, - anon_sym_COMMA, - STATE(1111), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2470), 2, + ACTIONS(2711), 1, + anon_sym_case, + STATE(555), 1, + sym_cases, + STATE(452), 2, + sym_case_block, + aux_sym_cases_repeat1, + [65072] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2711), 1, + anon_sym_case, + STATE(556), 1, + sym_cases, + STATE(452), 2, + sym_case_block, + aux_sym_cases_repeat1, + [65086] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2675), 1, + anon_sym_as, + ACTIONS(2713), 3, sym__newline, - sym__semicolon, - [54382] = 5, + anon_sym_COMMA, + anon_sym_SEMI, + [65098] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2472), 1, + ACTIONS(2715), 1, + anon_sym_else, + [65114] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2390), 4, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_COLON, - [54398] = 5, + anon_sym_EQ, + [65124] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2717), 1, + anon_sym_COMMA, + STATE(1309), 1, + aux_sym__import_list_repeat1, + ACTIONS(2720), 2, + sym__newline, + anon_sym_SEMI, + [65138] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(2722), 1, + anon_sym_RBRACE, + ACTIONS(2724), 1, + sym_type_conversion, + STATE(1641), 1, + sym_format_specifier, + [65154] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2233), 1, + ACTIONS(2726), 1, sym_identifier, - STATE(1105), 1, + STATE(1330), 1, sym_dotted_name, - STATE(1159), 1, + STATE(1395), 1, sym_aliased_import, - STATE(1352), 1, + STATE(1701), 1, sym__import_list, - [54414] = 4, + [65170] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2476), 1, - anon_sym_DOT, - STATE(1114), 1, - aux_sym_import_prefix_repeat1, - ACTIONS(2474), 2, - anon_sym_import, + ACTIONS(2726), 1, sym_identifier, - [54428] = 4, + STATE(1330), 1, + sym_dotted_name, + STATE(1395), 1, + sym_aliased_import, + STATE(1702), 1, + sym__import_list, + [65186] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2481), 1, - anon_sym_COMMA, - STATE(1115), 1, - aux_sym_with_clause_repeat1, - ACTIONS(2479), 2, + ACTIONS(2728), 4, anon_sym_RPAREN, - anon_sym_COLON, - [54442] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2486), 1, anon_sym_COMMA, - STATE(848), 1, - aux_sym__patterns_repeat1, - ACTIONS(2484), 2, - anon_sym_RPAREN, anon_sym_RBRACK, - [54456] = 2, + anon_sym_RBRACE, + [65196] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2223), 4, + ACTIONS(2730), 4, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_EQ, - [54466] = 2, + anon_sym_RBRACK, + anon_sym_RBRACE, + [65206] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2157), 4, + ACTIONS(2392), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [54476] = 4, + [65216] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(1917), 1, - anon_sym_COLON, - STATE(572), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - [54490] = 4, + ACTIONS(2732), 1, + anon_sym_COMMA, + STATE(1340), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2734), 2, + sym__newline, + anon_sym_SEMI, + [65230] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(310), 1, sym__string_start, - ACTIONS(1917), 1, + ACTIONS(2097), 1, anon_sym_COLON, - STATE(573), 2, + STATE(616), 2, sym_string, aux_sym_concatenated_string_repeat1, - [54504] = 3, + [65244] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2490), 1, - anon_sym_EQ, - ACTIONS(2488), 3, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(312), 1, + sym__template_string_start, + ACTIONS(2097), 1, anon_sym_COLON, - [54516] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2492), 4, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [54526] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2494), 4, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [54536] = 4, + STATE(617), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + [65258] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2496), 1, + ACTIONS(2736), 1, anon_sym_COMMA, - STATE(1111), 1, + STATE(1319), 1, aux_sym_print_statement_repeat1, - ACTIONS(2498), 2, + ACTIONS(2739), 2, sym__newline, - sym__semicolon, - [54550] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2500), 1, - anon_sym_COLON, - [54566] = 5, + anon_sym_SEMI, + [65272] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2502), 1, - anon_sym_COLON, - [54582] = 5, + ACTIONS(2741), 1, + anon_sym_COMMA, + STATE(1320), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2518), 2, + sym__newline, + anon_sym_SEMI, + [65286] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2504), 1, + ACTIONS(2376), 1, sym_identifier, - STATE(1172), 1, + STATE(1290), 1, sym_dotted_name, - STATE(1182), 1, + STATE(1368), 1, sym_aliased_import, - STATE(1447), 1, + STATE(1507), 1, sym__import_list, - [54598] = 5, + [65302] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2506), 1, + ACTIONS(2744), 1, anon_sym_COLON, - [54614] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2504), 1, - sym_identifier, - STATE(1172), 1, - sym_dotted_name, - STATE(1182), 1, - sym_aliased_import, - STATE(1386), 1, - sym__import_list, - [54630] = 4, + [65318] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2508), 1, - anon_sym_COMMA, - STATE(1111), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2510), 2, - sym__newline, - sym__semicolon, - [54644] = 4, + ACTIONS(2593), 1, + anon_sym_LBRACK, + ACTIONS(2703), 1, + anon_sym_LPAREN, + STATE(1511), 1, + sym_parameters, + STATE(1512), 1, + sym_type_parameters, + [65334] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2512), 1, - anon_sym_COMMA, - STATE(1131), 1, - aux_sym__import_list_repeat1, - ACTIONS(2515), 2, + ACTIONS(2259), 1, + anon_sym_if, + ACTIONS(2261), 1, + anon_sym_and, + ACTIONS(2263), 1, + anon_sym_or, + ACTIONS(2746), 1, sym__newline, - sym__semicolon, - [54658] = 3, + [65350] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2452), 1, - anon_sym_as, - ACTIONS(2517), 3, - sym__newline, + ACTIONS(2750), 1, anon_sym_COMMA, - sym__semicolon, - [54670] = 4, + STATE(1325), 1, + aux_sym_with_clause_repeat1, + ACTIONS(2748), 2, + anon_sym_RPAREN, + anon_sym_COLON, + [65364] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2519), 1, + ACTIONS(2697), 1, anon_sym_COMMA, - STATE(1131), 1, - aux_sym__import_list_repeat1, - ACTIONS(2521), 2, + STATE(1354), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2753), 2, sym__newline, - sym__semicolon, - [54684] = 4, + anon_sym_SEMI, + [65378] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2197), 1, + ACTIONS(2500), 1, + anon_sym_EQ, + STATE(1522), 1, + sym__type_param_default, + ACTIONS(2755), 2, anon_sym_COMMA, - STATE(1110), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2523), 2, - sym__newline, - sym__semicolon, - [54698] = 4, + anon_sym_RBRACK, + [65392] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2525), 1, - anon_sym_COMMA, - STATE(1135), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2528), 2, - sym__newline, - sym__semicolon, - [54712] = 5, + ACTIONS(2625), 1, + anon_sym_RPAREN, + ACTIONS(2726), 1, + sym_identifier, + STATE(1382), 1, + sym_dotted_name, + STATE(1540), 1, + sym_aliased_import, + [65408] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2400), 1, - anon_sym_LBRACK, - ACTIONS(2458), 1, - anon_sym_LPAREN, - STATE(1322), 1, - sym_type_parameters, - STATE(1355), 1, - sym_parameters, - [54728] = 4, + ACTIONS(2625), 1, + anon_sym_RPAREN, + ACTIONS(2726), 1, + sym_identifier, + STATE(1382), 1, + sym_dotted_name, + STATE(1540), 1, + sym_aliased_import, + [65424] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2530), 1, - anon_sym_case, - STATE(541), 1, - sym_cases, - STATE(414), 2, - sym_case_block, - aux_sym_cases_repeat1, - [54742] = 4, + ACTIONS(2677), 1, + anon_sym_RPAREN, + ACTIONS(2757), 1, + anon_sym_COMMA, + ACTIONS(2759), 1, + anon_sym_as, + STATE(1488), 1, + aux_sym__import_list_repeat1, + [65440] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2530), 1, - anon_sym_case, - STATE(484), 1, - sym_cases, - STATE(414), 2, - sym_case_block, - aux_sym_cases_repeat1, - [54756] = 5, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2761), 1, + anon_sym_COLON, + [65456] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, - anon_sym_COLON, - ACTIONS(2532), 1, - anon_sym_RBRACE, - ACTIONS(2534), 1, - sym_type_conversion, - STATE(1410), 1, - sym_format_specifier, - [54772] = 5, + ACTIONS(2763), 1, + anon_sym_SEMI, + ACTIONS(2765), 1, + sym__newline, + STATE(132), 1, + sym__semicolon, + STATE(1333), 1, + aux_sym__simple_statements_repeat1, + [65472] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 1, - anon_sym_and, - ACTIONS(2065), 1, - anon_sym_or, - ACTIONS(2069), 1, - anon_sym_if, - ACTIONS(2536), 1, + ACTIONS(566), 1, sym__newline, - [54788] = 4, + ACTIONS(2767), 1, + anon_sym_SEMI, + STATE(131), 1, + sym__semicolon, + STATE(1357), 1, + aux_sym__simple_statements_repeat1, + [65488] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2538), 1, - anon_sym_COMMA, - STATE(1057), 1, - aux_sym_open_sequence_match_pattern_repeat1, - ACTIONS(1723), 2, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, anon_sym_if, + ACTIONS(2769), 1, anon_sym_COLON, - [54802] = 5, + [65504] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2540), 1, + ACTIONS(2771), 1, anon_sym_else, - [54818] = 4, + [65520] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2542), 1, + ACTIONS(2775), 1, + anon_sym_DOT, + STATE(1362), 1, + aux_sym_import_prefix_repeat1, + ACTIONS(2773), 2, + anon_sym_import, + sym_identifier, + [65534] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2777), 1, anon_sym_COMMA, - STATE(1156), 1, + STATE(1337), 1, aux_sym_global_statement_repeat1, - ACTIONS(2544), 2, + ACTIONS(2780), 2, sym__newline, - sym__semicolon, - [54832] = 4, + anon_sym_SEMI, + [65548] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2542), 1, + ACTIONS(2426), 1, anon_sym_COMMA, - STATE(1155), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2546), 2, - sym__newline, - sym__semicolon, - [54846] = 4, + STATE(1364), 1, + aux_sym_exception_list_repeat1, + ACTIONS(2782), 2, + anon_sym_as, + anon_sym_COLON, + [65562] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2784), 1, + anon_sym_else, + [65578] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2548), 1, + ACTIONS(2786), 1, anon_sym_COMMA, - STATE(1131), 1, - aux_sym__import_list_repeat1, - ACTIONS(2521), 2, + STATE(1319), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2788), 2, sym__newline, - sym__semicolon, - [54860] = 5, + anon_sym_SEMI, + [65592] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2390), 1, + ACTIONS(2792), 1, + anon_sym_EQ, + ACTIONS(2790), 3, anon_sym_RPAREN, - ACTIONS(2504), 1, - sym_identifier, - STATE(1226), 1, - sym_dotted_name, - STATE(1358), 1, - sym_aliased_import, - [54876] = 4, + anon_sym_COMMA, + anon_sym_COLON, + [65604] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2550), 1, - anon_sym_case, - STATE(530), 1, - sym_cases, - STATE(390), 2, - sym_case_block, - aux_sym_cases_repeat1, - [54890] = 4, + ACTIONS(2796), 1, + anon_sym_COLON, + ACTIONS(2798), 1, + anon_sym_EQ, + ACTIONS(2794), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [65618] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2550), 1, - anon_sym_case, - STATE(529), 1, - sym_cases, - STATE(390), 2, - sym_case_block, - aux_sym_cases_repeat1, - [54904] = 5, + ACTIONS(556), 1, + sym__newline, + ACTIONS(2800), 1, + anon_sym_SEMI, + STATE(128), 1, + sym__semicolon, + STATE(1357), 1, + aux_sym__simple_statements_repeat1, + [65634] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2400), 1, - anon_sym_LBRACK, - ACTIONS(2458), 1, - anon_sym_LPAREN, - STATE(1317), 1, - sym_type_parameters, - STATE(1349), 1, - sym_parameters, - [54920] = 5, + ACTIONS(2398), 1, + anon_sym_COMMA, + STATE(1320), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2802), 2, + sym__newline, + anon_sym_SEMI, + [65648] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2552), 1, - anon_sym_COLON, - [54936] = 5, + ACTIONS(2804), 1, + anon_sym_else, + [65664] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2554), 1, - anon_sym_COLON, - [54952] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2556), 1, - anon_sym_COMMA, - STATE(1152), 1, - aux_sym_exception_list_repeat1, - ACTIONS(2559), 2, - anon_sym_as, + ACTIONS(2806), 1, anon_sym_COLON, - [54966] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2400), 1, - anon_sym_LBRACK, - ACTIONS(2458), 1, - anon_sym_LPAREN, - STATE(1319), 1, - sym_type_parameters, - STATE(1350), 1, - sym_parameters, - [54982] = 5, + [65680] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2561), 1, + ACTIONS(2808), 1, anon_sym_COLON, - [54998] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2542), 1, - anon_sym_COMMA, - STATE(1135), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2563), 2, - sym__newline, - sym__semicolon, - [55012] = 4, + [65696] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2542), 1, - anon_sym_COMMA, - STATE(1135), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2565), 2, + ACTIONS(2810), 1, + anon_sym_SEMI, + ACTIONS(2812), 1, sym__newline, + STATE(127), 1, sym__semicolon, - [55026] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2569), 1, - anon_sym_COLON, - ACTIONS(2571), 1, - anon_sym_EQ, - ACTIONS(2567), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [55040] = 5, + STATE(1343), 1, + aux_sym__simple_statements_repeat1, + [65712] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2573), 1, + ACTIONS(2814), 1, anon_sym_COLON, - [55056] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2450), 1, - anon_sym_COMMA, - STATE(1133), 1, - aux_sym__import_list_repeat1, - ACTIONS(2454), 2, - sym__newline, - sym__semicolon, - [55070] = 5, + [65728] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2575), 1, - anon_sym_else, - [55086] = 5, + ACTIONS(2816), 1, + anon_sym_COLON, + [65744] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2577), 1, + ACTIONS(2818), 1, anon_sym_COLON, - [55102] = 5, + [65760] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2579), 1, + ACTIONS(2820), 1, anon_sym_COLON, - [55118] = 5, + [65776] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2427), 1, - anon_sym_RPAREN, - ACTIONS(2504), 1, - sym_identifier, - STATE(1226), 1, - sym_dotted_name, - STATE(1358), 1, - sym_aliased_import, - [55134] = 5, + ACTIONS(2822), 1, + anon_sym_COMMA, + STATE(1309), 1, + aux_sym__import_list_repeat1, + ACTIONS(2824), 2, + sym__newline, + anon_sym_SEMI, + [65790] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2581), 1, - anon_sym_else, - [55150] = 5, + ACTIONS(2697), 1, + anon_sym_COMMA, + STATE(1337), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2826), 2, + sym__newline, + anon_sym_SEMI, + [65804] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2427), 1, - anon_sym_RPAREN, - ACTIONS(2504), 1, - sym_identifier, - STATE(1226), 1, - sym_dotted_name, - STATE(1358), 1, - sym_aliased_import, - [55166] = 5, + ACTIONS(2697), 1, + anon_sym_COMMA, + STATE(1337), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2828), 2, + sym__newline, + anon_sym_SEMI, + [65818] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2583), 1, - anon_sym_COLON, - [55182] = 4, + ACTIONS(2832), 1, + anon_sym_COMMA, + STATE(1293), 1, + aux_sym__patterns_repeat1, + ACTIONS(2830), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + [65832] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2197), 1, - anon_sym_COMMA, - STATE(1110), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2585), 2, + ACTIONS(2834), 1, + anon_sym_SEMI, + ACTIONS(2837), 1, sym__newline, + STATE(133), 1, sym__semicolon, - [55196] = 2, + STATE(1357), 1, + aux_sym__simple_statements_repeat1, + [65848] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2009), 4, + ACTIONS(2281), 4, sym__newline, anon_sym_from, anon_sym_COMMA, - sym__semicolon, - [55206] = 5, + anon_sym_SEMI, + [65858] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_and, - ACTIONS(1883), 1, - anon_sym_or, - ACTIONS(1895), 1, - anon_sym_if, - ACTIONS(2587), 1, - anon_sym_COLON, - [55222] = 5, + ACTIONS(2839), 1, + anon_sym_COMMA, + STATE(1309), 1, + aux_sym__import_list_repeat1, + ACTIONS(2824), 2, + sym__newline, + anon_sym_SEMI, + [65872] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, + ACTIONS(2841), 1, + anon_sym_COMMA, + STATE(1319), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2843), 2, + sym__newline, + anon_sym_SEMI, + [65886] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2161), 1, anon_sym_and, - ACTIONS(1883), 1, + ACTIONS(2167), 1, anon_sym_or, - ACTIONS(1895), 1, + ACTIONS(2179), 1, anon_sym_if, - ACTIONS(2589), 1, - anon_sym_else, - [55238] = 4, + ACTIONS(2845), 1, + anon_sym_COLON, + [65902] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2593), 1, + ACTIONS(2849), 1, anon_sym_DOT, - STATE(1114), 1, + STATE(1362), 1, aux_sym_import_prefix_repeat1, - ACTIONS(2591), 2, + ACTIONS(2847), 2, anon_sym_import, sym_identifier, - [55252] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2454), 1, - anon_sym_RPAREN, - ACTIONS(2595), 1, - anon_sym_COMMA, - ACTIONS(2597), 1, - anon_sym_as, - STATE(1305), 1, - aux_sym__import_list_repeat1, - [55268] = 2, + [65916] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2599), 4, - anon_sym_async, - anon_sym_def, - anon_sym_class, - anon_sym_AT, - [55278] = 4, + ACTIONS(2695), 1, + anon_sym_case, + STATE(609), 1, + sym_cases, + STATE(453), 2, + sym_case_block, + aux_sym_cases_repeat1, + [65930] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2342), 1, - anon_sym_EQ, - STATE(1321), 1, - sym__type_param_default, - ACTIONS(2601), 2, + ACTIONS(2852), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [55292] = 4, + STATE(1364), 1, + aux_sym_exception_list_repeat1, + ACTIONS(2855), 2, + anon_sym_as, + anon_sym_COLON, + [65944] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2342), 1, - anon_sym_EQ, - STATE(1323), 1, - sym__type_param_default, - ACTIONS(2603), 2, + ACTIONS(2398), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [55306] = 4, + STATE(1320), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2857), 2, + sym__newline, + anon_sym_SEMI, + [65958] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2342), 1, - anon_sym_EQ, - STATE(1325), 1, - sym__type_param_default, - ACTIONS(2605), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [55320] = 4, + ACTIONS(2161), 1, + anon_sym_and, + ACTIONS(2167), 1, + anon_sym_or, + ACTIONS(2179), 1, + anon_sym_if, + ACTIONS(2859), 1, + anon_sym_else, + [65974] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2609), 1, - anon_sym_COMMA, - STATE(1116), 1, - aux_sym__patterns_repeat1, - ACTIONS(2607), 2, + ACTIONS(2587), 1, anon_sym_RPAREN, - anon_sym_RBRACK, - [55334] = 4, + ACTIONS(2726), 1, + sym_identifier, + STATE(1382), 1, + sym_dotted_name, + STATE(1540), 1, + sym_aliased_import, + [65990] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2177), 1, + ACTIONS(2673), 1, anon_sym_COMMA, - STATE(1152), 1, - aux_sym_exception_list_repeat1, - ACTIONS(2611), 2, - anon_sym_as, - anon_sym_COLON, - [55348] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2374), 1, - anon_sym_COLON, - ACTIONS(2613), 1, - anon_sym_RBRACE, - ACTIONS(2615), 1, - sym_type_conversion, - STATE(1458), 1, - sym_format_specifier, - [55364] = 4, + STATE(1353), 1, + aux_sym__import_list_repeat1, + ACTIONS(2677), 2, + sym__newline, + anon_sym_SEMI, + [66004] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2617), 1, - anon_sym_COMMA, - ACTIONS(2620), 1, - anon_sym_RBRACE, - STATE(1180), 1, - aux_sym_dictionary_repeat1, - [55377] = 4, + ACTIONS(2593), 1, + anon_sym_LBRACK, + ACTIONS(2703), 1, + anon_sym_LPAREN, + STATE(1541), 1, + sym_parameters, + STATE(1576), 1, + sym_type_parameters, + [66020] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2622), 1, - sym__semicolon, - ACTIONS(2624), 1, - sym__newline, - STATE(1299), 1, - aux_sym__simple_statements_repeat1, - [55390] = 4, + ACTIONS(2593), 1, + anon_sym_LBRACK, + ACTIONS(2703), 1, + anon_sym_LPAREN, + STATE(1543), 1, + sym_parameters, + STATE(1578), 1, + sym_type_parameters, + [66036] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2454), 1, - anon_sym_RPAREN, - ACTIONS(2595), 1, + ACTIONS(2500), 1, + anon_sym_EQ, + STATE(1555), 1, + sym__type_param_default, + ACTIONS(2861), 2, anon_sym_COMMA, - STATE(1267), 1, - aux_sym__import_list_repeat1, - [55403] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2626), 1, - anon_sym_if, - ACTIONS(2628), 1, - anon_sym_COLON, - STATE(1506), 1, - sym_guard, - [55416] = 3, + anon_sym_RBRACK, + [66050] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2630), 1, + ACTIONS(2500), 1, + anon_sym_EQ, + STATE(1516), 1, + sym__type_param_default, + ACTIONS(2863), 2, anon_sym_COMMA, - ACTIONS(2632), 2, - anon_sym_if, - anon_sym_COLON, - [55427] = 2, + anon_sym_RBRACK, + [66064] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2223), 3, + ACTIONS(2865), 1, + anon_sym_SEMI, + ACTIONS(2867), 1, sym__newline, - anon_sym_EQ, + STATE(130), 1, sym__semicolon, - [55436] = 2, + STATE(1303), 1, + aux_sym__simple_statements_repeat1, + [66080] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2634), 3, - anon_sym_LPAREN, - anon_sym_COLON, - anon_sym_EQ, - [55445] = 4, + ACTIONS(2869), 1, + sym_identifier, + ACTIONS(2871), 1, + sym_match_wildcard_pattern, + STATE(1263), 1, + sym_match_capture_pattern, + [66093] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2636), 1, + ACTIONS(2873), 1, anon_sym_COMMA, - ACTIONS(2638), 1, + ACTIONS(2876), 1, anon_sym_RBRACK, - STATE(1248), 1, + STATE(1375), 1, aux_sym_type_parameters_repeat1, - [55458] = 4, + [66106] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2640), 1, + ACTIONS(2048), 1, anon_sym_RPAREN, - ACTIONS(2642), 1, + ACTIONS(2878), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [55471] = 4, + STATE(1443), 1, + aux_sym__parameters_repeat1, + [66119] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2644), 1, - anon_sym_RPAREN, - ACTIONS(2646), 1, + ACTIONS(2880), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [55484] = 4, + ACTIONS(2882), 1, + anon_sym_RBRACK, + STATE(1492), 1, + aux_sym_index_expression_list_repeat1, + [66132] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2504), 1, - sym_identifier, - STATE(1226), 1, - sym_dotted_name, - STATE(1358), 1, - sym_aliased_import, - [55497] = 3, - ACTIONS(1948), 1, + ACTIONS(2884), 1, + anon_sym_COMMA, + ACTIONS(2887), 1, + anon_sym_RBRACK, + STATE(1378), 1, + aux_sym_index_expression_list_repeat1, + [66145] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2889), 3, + anon_sym_LPAREN, + anon_sym_COLON, + anon_sym_EQ, + [66154] = 3, + ACTIONS(2065), 1, sym_comment, - ACTIONS(2288), 1, + ACTIONS(2510), 1, anon_sym_RBRACE, - ACTIONS(2290), 2, + ACTIONS(2512), 2, anon_sym_LBRACE2, aux_sym_format_specifier_token1, - [55508] = 4, + [66165] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2648), 1, + ACTIONS(2891), 1, anon_sym_RPAREN, - ACTIONS(2650), 1, + ACTIONS(2893), 1, anon_sym_COMMA, - STATE(1295), 1, + STATE(1413), 1, aux_sym_match_class_pattern_repeat2, - [55521] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2652), 1, - anon_sym_RPAREN, - ACTIONS(2654), 1, - anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [55534] = 4, + [66178] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2656), 1, + ACTIONS(2759), 1, + anon_sym_as, + ACTIONS(2713), 2, anon_sym_RPAREN, - ACTIONS(2658), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [55547] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1425), 3, - sym__newline, - anon_sym_in, - sym__semicolon, - [55556] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2661), 1, - sym__semicolon, - ACTIONS(2664), 1, - sym__newline, - STATE(1196), 1, - aux_sym__simple_statements_repeat1, - [55569] = 4, + [66189] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(2019), 1, + ACTIONS(2169), 1, anon_sym_RPAREN, - STATE(1293), 1, + STATE(1454), 1, aux_sym__collection_elements_repeat1, - [55582] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1862), 1, - anon_sym_COLON, - ACTIONS(2666), 1, - anon_sym_COMMA, - STATE(1284), 1, - aux_sym__parameters_repeat1, - [55595] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1417), 3, - sym__newline, - anon_sym_in, - sym__semicolon, - [55604] = 4, + [66202] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2648), 1, + ACTIONS(2720), 1, anon_sym_RPAREN, - ACTIONS(2668), 1, - anon_sym_COMMA, - STATE(1275), 1, - aux_sym_match_class_pattern_repeat1, - [55617] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2670), 1, + ACTIONS(2895), 1, anon_sym_COMMA, - ACTIONS(2673), 1, - anon_sym_RBRACK, - STATE(1201), 1, - aux_sym_index_expression_list_repeat1, - [55630] = 4, + STATE(1384), 1, + aux_sym__import_list_repeat1, + [66215] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2675), 1, + ACTIONS(2898), 1, anon_sym_COMMA, - ACTIONS(2678), 1, - anon_sym_RBRACE, - STATE(1202), 1, - aux_sym_match_mapping_pattern_repeat1, - [55643] = 4, + ACTIONS(2900), 1, + anon_sym_COLON, + STATE(1471), 1, + aux_sym__parameters_repeat1, + [66228] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2680), 1, + ACTIONS(2902), 1, anon_sym_COMMA, - ACTIONS(2682), 1, + ACTIONS(2904), 1, anon_sym_RBRACK, - STATE(1257), 1, - aux_sym_index_expression_list_repeat1, - [55656] = 4, + STATE(1375), 1, + aux_sym_type_parameters_repeat1, + [66241] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2684), 1, + ACTIONS(2195), 1, anon_sym_RPAREN, - ACTIONS(2686), 1, + ACTIONS(2197), 1, anon_sym_COMMA, - STATE(1189), 1, + STATE(1462), 1, aux_sym_argument_list_repeat1, - [55669] = 4, + [66254] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2013), 1, + ACTIONS(2906), 1, anon_sym_RPAREN, - ACTIONS(2015), 1, + ACTIONS(2908), 1, anon_sym_COMMA, - STATE(1193), 1, + STATE(1481), 1, aux_sym_argument_list_repeat1, - [55682] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2688), 1, - anon_sym_COMMA, - ACTIONS(2690), 1, - anon_sym_RBRACK, - STATE(1232), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [55695] = 4, + [66267] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2692), 1, + ACTIONS(2910), 1, anon_sym_COMMA, - ACTIONS(2694), 1, + ACTIONS(2912), 1, anon_sym_RBRACE, - STATE(1180), 1, + STATE(1401), 1, aux_sym_dictionary_repeat1, - [55708] = 4, + [66280] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2696), 1, - anon_sym_COMMA, - ACTIONS(2698), 1, - anon_sym_RBRACE, - STATE(1180), 1, - aux_sym_dictionary_repeat1, - [55721] = 2, + ACTIONS(2914), 1, + anon_sym_if, + ACTIONS(2916), 1, + anon_sym_COLON, + STATE(1689), 1, + sym_guard, + [66293] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1175), 3, - anon_sym_RPAREN, + ACTIONS(2918), 1, anon_sym_COMMA, + ACTIONS(2920), 2, + anon_sym_if, anon_sym_COLON, - [55730] = 4, + [66304] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2396), 1, - anon_sym_LPAREN, - ACTIONS(2700), 1, - anon_sym_COLON, - STATE(1413), 1, - sym_argument_list, - [55743] = 4, + ACTIONS(2922), 1, + anon_sym_RPAREN, + ACTIONS(2924), 1, + anon_sym_COMMA, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [66317] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(556), 1, + ACTIONS(2927), 1, + anon_sym_in, + ACTIONS(2929), 2, sym__newline, - ACTIONS(2702), 1, - sym__semicolon, - STATE(1196), 1, - aux_sym__simple_statements_repeat1, - [55756] = 4, + anon_sym_SEMI, + [66328] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2704), 1, - sym__semicolon, - ACTIONS(2706), 1, - sym__newline, - STATE(1231), 1, - aux_sym__simple_statements_repeat1, - [55769] = 4, + ACTIONS(2794), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + [66337] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1739), 1, + ACTIONS(2677), 1, anon_sym_RPAREN, - ACTIONS(2708), 1, + ACTIONS(2757), 1, anon_sym_COMMA, - STATE(1249), 1, - aux_sym_match_class_pattern_repeat2, - [55782] = 4, + STATE(1487), 1, + aux_sym__import_list_repeat1, + [66350] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2710), 1, + ACTIONS(1893), 1, + anon_sym_RPAREN, + ACTIONS(2931), 1, sym_identifier, - ACTIONS(2712), 1, - sym_match_wildcard_pattern, - STATE(1086), 1, - sym_match_capture_pattern, - [55795] = 4, + STATE(1558), 1, + sym_match_keyword_pattern, + [66363] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2191), 1, + ACTIONS(2171), 1, + anon_sym_RPAREN, + ACTIONS(2173), 1, anon_sym_COMMA, - ACTIONS(2193), 1, - anon_sym_RBRACE, - STATE(1208), 1, - aux_sym_dictionary_repeat1, - [55808] = 4, + STATE(1448), 1, + aux_sym_argument_list_repeat1, + [66376] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2515), 1, + ACTIONS(2933), 1, anon_sym_RPAREN, - ACTIONS(2714), 1, + ACTIONS(2935), 1, anon_sym_COMMA, - STATE(1216), 1, - aux_sym__import_list_repeat1, - [55821] = 3, + STATE(1450), 1, + aux_sym_argument_list_repeat1, + [66389] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2717), 1, - anon_sym_EQ, - ACTIONS(2719), 2, - sym__newline, - sym__semicolon, - [55832] = 4, + ACTIONS(1895), 1, + anon_sym_RPAREN, + ACTIONS(2937), 1, + anon_sym_COMMA, + STATE(1468), 1, + aux_sym_match_class_pattern_repeat1, + [66402] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(2007), 1, + ACTIONS(2099), 1, anon_sym_RPAREN, - STATE(1293), 1, + STATE(1454), 1, aux_sym__collection_elements_repeat1, - [55845] = 4, + [66415] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2207), 1, + ACTIONS(2939), 1, + anon_sym_COMMA, + ACTIONS(2942), 1, + anon_sym_RBRACE, + STATE(1401), 1, + aux_sym_dictionary_repeat1, + [66428] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2452), 1, sym_identifier, - ACTIONS(2721), 1, + ACTIONS(2944), 1, anon_sym_import, - STATE(1489), 1, + STATE(1654), 1, sym_dotted_name, - [55858] = 4, + [66441] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1897), 1, + ACTIONS(2438), 1, anon_sym_COMMA, - ACTIONS(1933), 1, - anon_sym_RPAREN, - STATE(1293), 1, - aux_sym__collection_elements_repeat1, - [55871] = 4, + ACTIONS(2440), 1, + anon_sym_RBRACE, + STATE(1408), 1, + aux_sym_dictionary_repeat1, + [66454] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2723), 1, - sym_identifier, - ACTIONS(2725), 1, - anon_sym_RPAREN, - STATE(1333), 1, - sym_match_keyword_pattern, - [55884] = 3, + ACTIONS(1525), 3, + sym__newline, + anon_sym_in, + anon_sym_SEMI, + [66463] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2727), 1, - anon_sym_COLON, - ACTIONS(2567), 2, + ACTIONS(1895), 1, anon_sym_RPAREN, - anon_sym_COMMA, - [55895] = 4, + ACTIONS(2931), 1, + sym_identifier, + STATE(1558), 1, + sym_match_keyword_pattern, + [66476] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1954), 1, - anon_sym_RPAREN, - ACTIONS(1956), 1, - anon_sym_COMMA, - STATE(1296), 1, - aux_sym_argument_list_repeat1, - [55908] = 4, + ACTIONS(2946), 1, + anon_sym_EQ, + ACTIONS(2948), 2, + sym__newline, + anon_sym_SEMI, + [66487] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, - anon_sym_DOT, - ACTIONS(1931), 1, - anon_sym_COLON, - STATE(881), 1, - aux_sym_match_value_pattern_repeat1, - [55921] = 4, + ACTIONS(2880), 1, + anon_sym_COMMA, + ACTIONS(2950), 1, + anon_sym_RBRACK, + STATE(1492), 1, + aux_sym_index_expression_list_repeat1, + [66500] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2227), 1, + ACTIONS(2952), 1, anon_sym_COMMA, - ACTIONS(2229), 1, + ACTIONS(2954), 1, anon_sym_RBRACE, - STATE(1247), 1, + STATE(1401), 1, aux_sym_dictionary_repeat1, - [55934] = 3, + [66513] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2597), 1, - anon_sym_as, - ACTIONS(2517), 2, - anon_sym_RPAREN, + ACTIONS(2956), 1, anon_sym_COMMA, - [55945] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2729), 1, - sym__semicolon, - ACTIONS(2731), 1, - sym__newline, - STATE(1211), 1, - aux_sym__simple_statements_repeat1, - [55958] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2147), 1, - anon_sym_from, - ACTIONS(2151), 2, - sym__newline, - sym__semicolon, - [55969] = 4, + ACTIONS(2958), 1, + anon_sym_RBRACE, + STATE(1401), 1, + aux_sym_dictionary_repeat1, + [66526] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2733), 1, - anon_sym_RPAREN, - ACTIONS(2735), 1, + ACTIONS(2382), 1, anon_sym_COMMA, - STATE(1253), 1, - aux_sym__parameters_repeat1, - [55982] = 4, + ACTIONS(2384), 1, + anon_sym_RBRACE, + STATE(1485), 1, + aux_sym_dictionary_repeat1, + [66539] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2737), 1, + ACTIONS(2191), 1, anon_sym_RPAREN, - ACTIONS(2739), 1, + ACTIONS(2193), 1, anon_sym_COMMA, - STATE(1265), 1, + STATE(1415), 1, aux_sym_argument_list_repeat1, - [55995] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(562), 1, - sym__newline, - ACTIONS(2741), 1, - sym__semicolon, - STATE(1196), 1, - aux_sym__simple_statements_repeat1, - [56008] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1727), 1, - anon_sym_RBRACK, - ACTIONS(2743), 1, - anon_sym_COMMA, - STATE(1057), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [56021] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1844), 1, - anon_sym_COMMA, - ACTIONS(2745), 1, - anon_sym_in, - STATE(861), 1, - aux_sym__patterns_repeat1, - [56034] = 4, + [66552] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1727), 1, + ACTIONS(2960), 1, anon_sym_RPAREN, - ACTIONS(2747), 1, + ACTIONS(2962), 1, anon_sym_COMMA, - STATE(1057), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [56047] = 4, + STATE(1417), 1, + aux_sym_argument_list_repeat1, + [66565] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2749), 1, + ACTIONS(1895), 1, anon_sym_RPAREN, - ACTIONS(2751), 1, + ACTIONS(2964), 1, anon_sym_COMMA, - STATE(1302), 1, + STATE(1422), 1, aux_sym_match_class_pattern_repeat2, - [56060] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2723), 1, - sym_identifier, - ACTIONS(2749), 1, - anon_sym_RPAREN, - STATE(1333), 1, - sym_match_keyword_pattern, - [56073] = 4, + [66578] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1844), 1, + ACTIONS(2880), 1, anon_sym_COMMA, - ACTIONS(2753), 1, - anon_sym_in, - STATE(861), 1, - aux_sym__patterns_repeat1, - [56086] = 4, + ACTIONS(2966), 1, + anon_sym_RBRACK, + STATE(1492), 1, + aux_sym_index_expression_list_repeat1, + [66591] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2755), 1, + ACTIONS(2968), 1, + anon_sym_RPAREN, + ACTIONS(2970), 1, anon_sym_COMMA, - ACTIONS(2757), 1, - anon_sym_COLON, - STATE(1272), 1, - aux_sym_with_clause_repeat1, - [56099] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2396), 1, - anon_sym_LPAREN, - ACTIONS(2759), 1, - anon_sym_COLON, - STATE(1451), 1, - sym_argument_list, - [56112] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [66604] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2636), 1, + ACTIONS(2902), 1, anon_sym_COMMA, - ACTIONS(2761), 1, + ACTIONS(2972), 1, anon_sym_RBRACK, - STATE(1187), 1, + STATE(1386), 1, aux_sym_type_parameters_repeat1, - [56125] = 3, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(2323), 1, - anon_sym_RBRACE, - ACTIONS(2325), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [56136] = 4, + [66617] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2763), 1, + ACTIONS(2974), 1, anon_sym_RPAREN, - ACTIONS(2765), 1, + ACTIONS(2976), 1, anon_sym_COMMA, - STATE(1235), 1, - aux_sym_match_class_pattern_repeat2, - [56149] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [66630] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2680), 1, + ACTIONS(2978), 1, + anon_sym_RPAREN, + ACTIONS(2980), 1, anon_sym_COMMA, - ACTIONS(2767), 1, - anon_sym_RBRACK, - STATE(1257), 1, - aux_sym_index_expression_list_repeat1, - [56162] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [66643] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2233), 1, - sym_identifier, - STATE(1132), 1, - sym_dotted_name, - STATE(1289), 1, - sym_aliased_import, - [56175] = 3, - ACTIONS(1948), 1, - sym_comment, - ACTIONS(2303), 1, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(2722), 1, anon_sym_RBRACE, - ACTIONS(2305), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [56186] = 4, + STATE(1641), 1, + sym_format_specifier, + [66656] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2769), 1, + ACTIONS(2780), 3, + sym__newline, anon_sym_COMMA, - ACTIONS(2771), 1, - anon_sym_RBRACE, - STATE(1180), 1, - aux_sym_dictionary_repeat1, - [56199] = 4, + anon_sym_SEMI, + [66665] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2773), 1, + ACTIONS(2982), 3, + sym__newline, anon_sym_COMMA, - ACTIONS(2775), 1, - anon_sym_RBRACE, - STATE(1180), 1, - aux_sym_dictionary_repeat1, - [56212] = 4, + anon_sym_SEMI, + [66674] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2777), 1, + ACTIONS(2984), 1, + anon_sym_RPAREN, + ACTIONS(2986), 1, anon_sym_COMMA, - ACTIONS(2780), 1, - anon_sym_RBRACK, - STATE(1248), 1, - aux_sym_type_parameters_repeat1, - [56225] = 4, + STATE(1422), 1, + aux_sym_match_class_pattern_repeat2, + [66687] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2763), 1, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(2187), 1, anon_sym_RPAREN, - ACTIONS(2765), 1, + STATE(1454), 1, + aux_sym__collection_elements_repeat1, + [66700] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1958), 1, + anon_sym_RBRACE, + ACTIONS(2989), 1, anon_sym_COMMA, - STATE(1302), 1, - aux_sym_match_class_pattern_repeat2, - [56238] = 4, + STATE(1480), 1, + aux_sym_match_mapping_pattern_repeat1, + [66713] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2723), 1, - sym_identifier, - ACTIONS(2763), 1, - anon_sym_RPAREN, - STATE(1333), 1, - sym_match_keyword_pattern, - [56251] = 4, + ACTIONS(2444), 1, + anon_sym_COMMA, + ACTIONS(2446), 1, + anon_sym_RBRACE, + STATE(1426), 1, + aux_sym_dictionary_repeat1, + [66726] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2782), 1, + ACTIONS(2991), 1, anon_sym_COMMA, - ACTIONS(2784), 1, + ACTIONS(2993), 1, anon_sym_RBRACE, - STATE(1180), 1, + STATE(1401), 1, aux_sym_dictionary_repeat1, - [56264] = 4, + [66739] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, - anon_sym_COLON, - ACTIONS(2786), 1, + ACTIONS(2995), 1, + anon_sym_COMMA, + ACTIONS(2997), 1, anon_sym_RBRACE, - STATE(1408), 1, - sym_format_specifier, - [56277] = 4, + STATE(1401), 1, + aux_sym_dictionary_repeat1, + [66752] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1862), 1, + ACTIONS(2900), 1, anon_sym_RPAREN, - ACTIONS(2788), 1, + ACTIONS(2999), 1, anon_sym_COMMA, - STATE(1281), 1, + STATE(1376), 1, aux_sym__parameters_repeat1, - [56290] = 3, - ACTIONS(1948), 1, + [66765] = 4, + ACTIONS(3), 1, sym_comment, - ACTIONS(2350), 1, - anon_sym_RBRACE, - ACTIONS(2352), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [56301] = 3, - ACTIONS(1948), 1, + ACTIONS(2205), 1, + anon_sym_RPAREN, + ACTIONS(2207), 1, + anon_sym_COMMA, + STATE(1435), 1, + aux_sym_argument_list_repeat1, + [66778] = 4, + ACTIONS(3), 1, sym_comment, - ACTIONS(2790), 1, - anon_sym_RBRACE, - ACTIONS(2792), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [56312] = 3, + ACTIONS(3001), 1, + anon_sym_RPAREN, + ACTIONS(3003), 1, + anon_sym_COMMA, + STATE(1436), 1, + aux_sym_argument_list_repeat1, + [66791] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2794), 1, - anon_sym_in, - ACTIONS(2796), 2, - sym__newline, - sym__semicolon, - [56323] = 4, + ACTIONS(2931), 1, + sym_identifier, + ACTIONS(3005), 1, + anon_sym_RPAREN, + STATE(1558), 1, + sym_match_keyword_pattern, + [66804] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2798), 1, + ACTIONS(2880), 1, anon_sym_COMMA, - ACTIONS(2800), 1, + ACTIONS(3007), 1, anon_sym_RBRACK, - STATE(1201), 1, + STATE(1492), 1, aux_sym_index_expression_list_repeat1, - [56336] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2400), 1, - anon_sym_LBRACK, - ACTIONS(2802), 1, - anon_sym_EQ, - STATE(1392), 1, - sym_type_parameters, - [56349] = 4, + [66817] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2217), 1, + ACTIONS(3009), 1, anon_sym_COMMA, - ACTIONS(2219), 1, + ACTIONS(3011), 1, anon_sym_RBRACE, - STATE(1269), 1, + STATE(1401), 1, aux_sym_dictionary_repeat1, - [56362] = 4, + [66830] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3013), 1, + anon_sym_COMMA, + ACTIONS(3015), 1, + anon_sym_COLON, + STATE(1452), 1, + aux_sym_with_clause_repeat1, + [66843] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1960), 1, + ACTIONS(3017), 1, anon_sym_RPAREN, - ACTIONS(1962), 1, + ACTIONS(3019), 1, anon_sym_COMMA, - STATE(1283), 1, + STATE(1392), 1, aux_sym_argument_list_repeat1, - [56375] = 4, + [66856] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2804), 1, + ACTIONS(3021), 1, anon_sym_RPAREN, - ACTIONS(2806), 1, + ACTIONS(3023), 1, anon_sym_COMMA, - STATE(1285), 1, + STATE(1392), 1, aux_sym_argument_list_repeat1, - [56388] = 2, + [66869] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2528), 3, - sym__newline, + ACTIONS(3025), 1, + anon_sym_RPAREN, + ACTIONS(3027), 1, anon_sym_COMMA, - sym__semicolon, - [56397] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [66882] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2680), 1, + ACTIONS(1893), 1, + anon_sym_RPAREN, + ACTIONS(3029), 1, anon_sym_COMMA, - ACTIONS(2808), 1, - anon_sym_RBRACK, - STATE(1257), 1, - aux_sym_index_expression_list_repeat1, - [56410] = 4, + STATE(1449), 1, + aux_sym_match_class_pattern_repeat2, + [66895] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2810), 1, + ACTIONS(3031), 1, anon_sym_RPAREN, - ACTIONS(2812), 1, + ACTIONS(3033), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [56423] = 4, + STATE(1495), 1, + aux_sym_with_clause_repeat1, + [66908] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2814), 1, + ACTIONS(2069), 1, + anon_sym_COMMA, + ACTIONS(3035), 1, anon_sym_RPAREN, - ACTIONS(2816), 1, + STATE(1441), 1, + aux_sym__collection_elements_repeat1, + [66921] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2595), 1, + anon_sym_RPAREN, + ACTIONS(3037), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [56436] = 4, + STATE(1286), 1, + aux_sym__collection_elements_repeat1, + [66934] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, + ACTIONS(3039), 1, anon_sym_COLON, - ACTIONS(2532), 1, - anon_sym_RBRACE, - STATE(1410), 1, - sym_format_specifier, - [56449] = 4, + ACTIONS(2794), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [66945] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2521), 1, + ACTIONS(3041), 1, anon_sym_RPAREN, - ACTIONS(2818), 1, + ACTIONS(3043), 1, anon_sym_COMMA, - STATE(1216), 1, - aux_sym__import_list_repeat1, - [56462] = 2, + STATE(1443), 1, + aux_sym__parameters_repeat1, + [66958] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2820), 3, + ACTIONS(3041), 3, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - [56471] = 4, + [66967] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2822), 1, + ACTIONS(3046), 3, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(2824), 1, - anon_sym_RBRACE, - STATE(1180), 1, - aux_sym_dictionary_repeat1, - [56484] = 4, + anon_sym_COLON, + [66976] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, + ACTIONS(3048), 3, + anon_sym_LPAREN, anon_sym_COLON, - ACTIONS(2613), 1, - anon_sym_RBRACE, - STATE(1458), 1, - sym_format_specifier, - [56497] = 3, + anon_sym_EQ, + [66985] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2571), 1, - anon_sym_EQ, - ACTIONS(2567), 2, + ACTIONS(2790), 3, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - [56508] = 4, + [66994] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2755), 1, + ACTIONS(3050), 1, + anon_sym_RPAREN, + ACTIONS(3052), 1, anon_sym_COMMA, - ACTIONS(2826), 1, - anon_sym_COLON, - STATE(1115), 1, - aux_sym_with_clause_repeat1, - [56521] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [67007] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2828), 1, + ACTIONS(3005), 1, + anon_sym_RPAREN, + ACTIONS(3054), 1, anon_sym_COMMA, - ACTIONS(2830), 1, - anon_sym_RBRACE, - STATE(1301), 1, - aux_sym_match_mapping_pattern_repeat1, - [56534] = 4, + STATE(1422), 1, + aux_sym_match_class_pattern_repeat2, + [67020] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2832), 1, + ACTIONS(3056), 1, anon_sym_RPAREN, - ACTIONS(2834), 1, + ACTIONS(3058), 1, anon_sym_COMMA, - STATE(1294), 1, - aux_sym_with_clause_repeat1, - [56547] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [67033] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1737), 1, + ACTIONS(3060), 1, anon_sym_RPAREN, - ACTIONS(2836), 1, + ACTIONS(3062), 1, anon_sym_COMMA, - STATE(1309), 1, - aux_sym_match_class_pattern_repeat1, - [56560] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [67046] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3013), 1, + anon_sym_COMMA, + ACTIONS(3064), 1, + anon_sym_COLON, + STATE(1325), 1, + aux_sym_with_clause_repeat1, + [67059] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2733), 1, + ACTIONS(2589), 1, + anon_sym_LPAREN, + ACTIONS(3066), 1, anon_sym_COLON, - ACTIONS(2838), 1, + STATE(1608), 1, + sym_argument_list, + [67072] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2595), 1, + anon_sym_RPAREN, + ACTIONS(3068), 1, anon_sym_COMMA, - STATE(1198), 1, - aux_sym__parameters_repeat1, - [56573] = 4, + STATE(1286), 1, + aux_sym__collection_elements_repeat1, + [67085] = 3, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2581), 1, + anon_sym_RBRACE, + ACTIONS(2583), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [67096] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2626), 1, + ACTIONS(2914), 1, anon_sym_if, - ACTIONS(2840), 1, + ACTIONS(3070), 1, anon_sym_COLON, - STATE(1464), 1, + STATE(1621), 1, sym_guard, - [56586] = 2, + [67109] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(3072), 1, + anon_sym_RBRACE, + STATE(1699), 1, + sym_format_specifier, + [67122] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2567), 3, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(2705), 1, + anon_sym_RBRACE, + STATE(1692), 1, + sym_format_specifier, + [67135] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3005), 1, anon_sym_RPAREN, + ACTIONS(3054), 1, anon_sym_COMMA, - anon_sym_COLON, - [56595] = 4, + STATE(1472), 1, + aux_sym_match_class_pattern_repeat2, + [67148] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1844), 1, - anon_sym_COMMA, - ACTIONS(2842), 1, - anon_sym_in, - STATE(861), 1, - aux_sym__patterns_repeat1, - [56608] = 4, + ACTIONS(2726), 1, + sym_identifier, + STATE(1382), 1, + sym_dotted_name, + STATE(1540), 1, + sym_aliased_import, + [67161] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1844), 1, + ACTIONS(2010), 1, anon_sym_COMMA, - ACTIONS(2844), 1, + ACTIONS(3074), 1, anon_sym_in, - STATE(861), 1, + STATE(1010), 1, aux_sym__patterns_repeat1, - [56621] = 4, + [67174] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2846), 1, + ACTIONS(3076), 1, anon_sym_RPAREN, - ACTIONS(2848), 1, + ACTIONS(3078), 1, anon_sym_COMMA, - STATE(1281), 1, - aux_sym__parameters_repeat1, - [56634] = 2, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [67187] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2390), 3, + sym__newline, + anon_sym_EQ, + anon_sym_SEMI, + [67196] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2488), 3, + ACTIONS(1274), 3, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - [56643] = 4, + [67205] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2851), 1, + ACTIONS(3080), 3, anon_sym_RPAREN, - ACTIONS(2853), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [56656] = 4, + anon_sym_COLON, + [67214] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2846), 1, - anon_sym_COLON, - ACTIONS(2855), 1, + ACTIONS(2891), 1, + anon_sym_RPAREN, + ACTIONS(3082), 1, anon_sym_COMMA, - STATE(1284), 1, - aux_sym__parameters_repeat1, - [56669] = 4, + STATE(1399), 1, + aux_sym_match_class_pattern_repeat1, + [67227] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2858), 1, + ACTIONS(2931), 1, + sym_identifier, + ACTIONS(3084), 1, anon_sym_RPAREN, - ACTIONS(2860), 1, - anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [56682] = 4, + STATE(1558), 1, + sym_match_keyword_pattern, + [67240] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2862), 1, + ACTIONS(3086), 1, anon_sym_RPAREN, - ACTIONS(2864), 1, + ACTIONS(3088), 1, anon_sym_COMMA, - STATE(1194), 1, - aux_sym_argument_list_repeat1, - [56695] = 4, + STATE(1468), 1, + aux_sym_match_class_pattern_repeat1, + [67253] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3091), 1, + anon_sym_COMMA, + ACTIONS(3093), 1, + anon_sym_RBRACK, + STATE(1503), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [67266] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1517), 3, + sym__newline, + anon_sym_in, + anon_sym_SEMI, + [67275] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 1, + ACTIONS(2048), 1, anon_sym_COLON, - ACTIONS(2866), 1, - anon_sym_RBRACE, - STATE(1497), 1, - sym_format_specifier, - [56708] = 2, + ACTIONS(3095), 1, + anon_sym_COMMA, + STATE(1506), 1, + aux_sym__parameters_repeat1, + [67288] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2846), 3, + ACTIONS(3084), 1, anon_sym_RPAREN, + ACTIONS(3097), 1, anon_sym_COMMA, - anon_sym_COLON, - [56717] = 2, + STATE(1422), 1, + aux_sym_match_class_pattern_repeat2, + [67301] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2517), 3, - sym__newline, + ACTIONS(2010), 1, anon_sym_COMMA, - sym__semicolon, - [56726] = 2, + ACTIONS(3099), 1, + anon_sym_in, + STATE(1010), 1, + aux_sym__patterns_repeat1, + [67314] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2868), 3, - sym__newline, + ACTIONS(2069), 1, anon_sym_COMMA, - sym__semicolon, - [56735] = 4, + ACTIONS(3101), 1, + anon_sym_RPAREN, + STATE(1259), 1, + aux_sym__collection_elements_repeat1, + [67327] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2293), 1, + anon_sym_from, + ACTIONS(2297), 2, + sym__newline, + anon_sym_SEMI, + [67338] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2931), 1, + sym_identifier, + ACTIONS(3103), 1, + anon_sym_RPAREN, + STATE(1558), 1, + sym_match_keyword_pattern, + [67351] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1844), 1, + ACTIONS(3105), 1, anon_sym_COMMA, - ACTIONS(2870), 1, - anon_sym_in, - STATE(861), 1, - aux_sym__patterns_repeat1, - [56748] = 2, + ACTIONS(3107), 1, + anon_sym_RBRACE, + STATE(1424), 1, + aux_sym_match_mapping_pattern_repeat1, + [67364] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2872), 3, - anon_sym_LPAREN, + ACTIONS(2091), 1, + anon_sym_DOT, + ACTIONS(2114), 1, anon_sym_COLON, - anon_sym_EQ, - [56757] = 4, + STATE(1032), 1, + aux_sym_match_value_pattern_repeat1, + [67377] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2382), 1, - anon_sym_RPAREN, - ACTIONS(2874), 1, + ACTIONS(2798), 1, + anon_sym_EQ, + ACTIONS(2794), 2, anon_sym_COMMA, - STATE(1099), 1, - aux_sym__collection_elements_repeat1, - [56770] = 4, + anon_sym_COLON, + [67388] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(923), 1, - anon_sym_RPAREN, - ACTIONS(2876), 1, + ACTIONS(3109), 1, anon_sym_COMMA, - STATE(1115), 1, - aux_sym_with_clause_repeat1, - [56783] = 4, + ACTIONS(3112), 1, + anon_sym_RBRACE, + STATE(1480), 1, + aux_sym_match_mapping_pattern_repeat1, + [67401] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1737), 1, + ACTIONS(3114), 1, anon_sym_RPAREN, - ACTIONS(2878), 1, + ACTIONS(3116), 1, anon_sym_COMMA, - STATE(1302), 1, - aux_sym_match_class_pattern_repeat2, - [56796] = 4, + STATE(1392), 1, + aux_sym_argument_list_repeat1, + [67414] = 3, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2490), 1, + anon_sym_RBRACE, + ACTIONS(2492), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [67425] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2880), 1, + ACTIONS(3118), 1, anon_sym_RPAREN, - ACTIONS(2882), 1, + ACTIONS(3120), 1, anon_sym_COMMA, - STATE(1194), 1, + STATE(1392), 1, aux_sym_argument_list_repeat1, - [56809] = 4, + [67438] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2382), 1, + ACTIONS(1889), 1, anon_sym_RPAREN, - ACTIONS(2884), 1, + ACTIONS(3122), 1, anon_sym_COMMA, - STATE(1099), 1, - aux_sym__collection_elements_repeat1, - [56822] = 2, + STATE(1242), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [67451] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2479), 3, - anon_sym_RPAREN, + ACTIONS(3124), 1, anon_sym_COMMA, - anon_sym_COLON, - [56831] = 4, + ACTIONS(3126), 1, + anon_sym_RBRACE, + STATE(1401), 1, + aux_sym_dictionary_repeat1, + [67464] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(558), 1, + ACTIONS(2713), 3, sym__newline, - ACTIONS(2886), 1, - sym__semicolon, - STATE(1196), 1, - aux_sym__simple_statements_repeat1, - [56844] = 4, + anon_sym_COMMA, + anon_sym_SEMI, + [67473] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1737), 1, + ACTIONS(2824), 1, anon_sym_RPAREN, - ACTIONS(2723), 1, - sym_identifier, - STATE(1333), 1, - sym_match_keyword_pattern, - [56857] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1792), 1, - anon_sym_RBRACE, - ACTIONS(2888), 1, + ACTIONS(3128), 1, anon_sym_COMMA, - STATE(1202), 1, - aux_sym_match_mapping_pattern_repeat1, - [56870] = 4, + STATE(1384), 1, + aux_sym__import_list_repeat1, + [67486] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2890), 1, + ACTIONS(2824), 1, anon_sym_RPAREN, - ACTIONS(2892), 1, + ACTIONS(3130), 1, anon_sym_COMMA, - STATE(1302), 1, - aux_sym_match_class_pattern_repeat2, - [56883] = 4, + STATE(1384), 1, + aux_sym__import_list_repeat1, + [67499] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1897), 1, + ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(2895), 1, + ACTIONS(2209), 1, anon_sym_RPAREN, - STATE(1297), 1, + STATE(1454), 1, aux_sym__collection_elements_repeat1, - [56896] = 4, + [67512] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1897), 1, + ACTIONS(2472), 1, anon_sym_COMMA, - ACTIONS(2897), 1, - anon_sym_RPAREN, - STATE(1077), 1, - aux_sym__collection_elements_repeat1, - [56909] = 4, + ACTIONS(2474), 1, + anon_sym_RBRACE, + STATE(1389), 1, + aux_sym_dictionary_repeat1, + [67525] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3132), 1, + anon_sym_COMMA, + ACTIONS(3134), 1, + anon_sym_RBRACE, + STATE(1401), 1, + aux_sym_dictionary_repeat1, + [67538] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3136), 1, + anon_sym_COMMA, + ACTIONS(3138), 1, + anon_sym_RBRACK, + STATE(1378), 1, + aux_sym_index_expression_list_repeat1, + [67551] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2589), 1, + anon_sym_LPAREN, + ACTIONS(3140), 1, + anon_sym_COLON, + STATE(1666), 1, + sym_argument_list, + [67564] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2521), 1, + ACTIONS(2613), 1, + anon_sym_COLON2, + ACTIONS(3142), 1, + anon_sym_RBRACE, + STATE(1644), 1, + sym_format_specifier, + [67577] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1017), 1, anon_sym_RPAREN, - ACTIONS(2899), 1, + ACTIONS(3144), 1, anon_sym_COMMA, - STATE(1216), 1, - aux_sym__import_list_repeat1, - [56922] = 4, + STATE(1325), 1, + aux_sym_with_clause_repeat1, + [67590] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1844), 1, + ACTIONS(2010), 1, anon_sym_COMMA, - ACTIONS(2901), 1, + ACTIONS(3146), 1, anon_sym_in, - STATE(861), 1, + STATE(1010), 1, aux_sym__patterns_repeat1, - [56935] = 2, + [67603] = 3, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(3148), 1, + anon_sym_RBRACE, + ACTIONS(3150), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [67614] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2903), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - [56944] = 4, + ACTIONS(2593), 1, + anon_sym_LBRACK, + ACTIONS(3152), 1, + anon_sym_EQ, + STATE(1647), 1, + sym_type_parameters, + [67627] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1739), 1, - anon_sym_RPAREN, - ACTIONS(2723), 1, + ACTIONS(2376), 1, sym_identifier, - STATE(1333), 1, - sym_match_keyword_pattern, - [56957] = 4, + STATE(1306), 1, + sym_dotted_name, + STATE(1486), 1, + sym_aliased_import, + [67640] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2905), 1, - anon_sym_RPAREN, - ACTIONS(2907), 1, + ACTIONS(2010), 1, anon_sym_COMMA, - STATE(1309), 1, - aux_sym_match_class_pattern_repeat1, - [56970] = 2, + ACTIONS(3154), 1, + anon_sym_in, + STATE(1010), 1, + aux_sym__patterns_repeat1, + [67653] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2442), 2, + ACTIONS(2748), 3, anon_sym_RPAREN, anon_sym_COMMA, - [56978] = 2, + anon_sym_COLON, + [67662] = 3, + ACTIONS(2065), 1, + sym_comment, + ACTIONS(2486), 1, + anon_sym_RBRACE, + ACTIONS(2488), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [67673] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2910), 2, - sym__newline, - sym__semicolon, - [56986] = 2, + ACTIONS(1889), 1, + anon_sym_RBRACK, + ACTIONS(3156), 1, + anon_sym_COMMA, + STATE(1242), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [67686] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(992), 2, - anon_sym_except, - anon_sym_finally, - [56994] = 3, + ACTIONS(2010), 1, + anon_sym_COMMA, + ACTIONS(3158), 1, + anon_sym_in, + STATE(1010), 1, + aux_sym__patterns_repeat1, + [67699] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2912), 1, + ACTIONS(2010), 1, anon_sym_COMMA, - ACTIONS(2914), 1, - anon_sym_RBRACE, - [57004] = 2, + ACTIONS(3160), 1, + anon_sym_in, + STATE(1010), 1, + aux_sym__patterns_repeat1, + [67712] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2916), 2, - sym__newline, - sym__semicolon, - [57012] = 2, + ACTIONS(3041), 1, + anon_sym_COLON, + ACTIONS(3162), 1, + anon_sym_COMMA, + STATE(1506), 1, + aux_sym__parameters_repeat1, + [67725] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2918), 2, + ACTIONS(3165), 2, sym__newline, - sym__semicolon, - [57020] = 2, + anon_sym_SEMI, + [67733] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2920), 2, - sym__newline, - sym__semicolon, - [57028] = 3, + ACTIONS(3167), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [67741] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2458), 1, - anon_sym_LPAREN, - STATE(1347), 1, - sym_parameters, - [57038] = 2, + ACTIONS(3169), 1, + anon_sym_COMMA, + STATE(1294), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [67751] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(964), 2, - anon_sym_except, - anon_sym_finally, - [57046] = 3, + ACTIONS(2357), 1, + anon_sym_COMMA, + STATE(1229), 1, + aux_sym_expression_list_repeat1, + [67761] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3171), 1, + anon_sym_COLON, + ACTIONS(3173), 1, + anon_sym_DASH_GT, + [67771] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2458), 1, + ACTIONS(2703), 1, anon_sym_LPAREN, - STATE(1348), 1, + STATE(1539), 1, sym_parameters, - [57056] = 3, + [67781] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2922), 1, + ACTIONS(3175), 1, anon_sym_COLON, - ACTIONS(2924), 1, + ACTIONS(3177), 1, anon_sym_DASH_GT, - [57066] = 2, + [67791] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2926), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [57074] = 3, + ACTIONS(3179), 2, + sym__newline, + anon_sym_SEMI, + [67799] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2458), 1, - anon_sym_LPAREN, - STATE(1353), 1, - sym_parameters, - [57084] = 2, + ACTIONS(1027), 2, + anon_sym_except, + anon_sym_finally, + [67807] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2928), 2, + ACTIONS(3181), 2, anon_sym_COMMA, anon_sym_RBRACK, - [57092] = 2, + [67815] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2372), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [57100] = 2, + ACTIONS(2837), 2, + sym__newline, + anon_sym_SEMI, + [67823] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2930), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [57108] = 2, + ACTIONS(3183), 2, + sym__newline, + anon_sym_SEMI, + [67831] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2932), 2, - anon_sym_RPAREN, + ACTIONS(2607), 2, anon_sym_COMMA, - [57116] = 2, + anon_sym_RBRACK, + [67839] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2934), 2, + ACTIONS(2794), 2, anon_sym_COMMA, - anon_sym_RBRACK, - [57124] = 3, + anon_sym_COLON, + [67847] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2149), 1, - anon_sym_COMMA, - STATE(1078), 1, - aux_sym_expression_list_repeat1, - [57134] = 2, + ACTIONS(1045), 2, + anon_sym_except, + anon_sym_finally, + [67855] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2241), 2, - sym__newline, - sym__semicolon, - [57142] = 2, + ACTIONS(3185), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [67863] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1891), 2, + ACTIONS(3187), 2, sym__newline, - sym__semicolon, - [57150] = 2, + anon_sym_SEMI, + [67871] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2567), 2, + ACTIONS(3189), 2, anon_sym_COMMA, - anon_sym_COLON, - [57158] = 2, + anon_sym_RBRACK, + [67879] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2905), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [57166] = 2, + ACTIONS(3191), 2, + sym__newline, + anon_sym_SEMI, + [67887] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2890), 2, + ACTIONS(3193), 2, anon_sym_RPAREN, - anon_sym_COMMA, - [57174] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2936), 2, - anon_sym_COLON, - anon_sym_DASH_GT, - [57182] = 2, + anon_sym_COMMA, + [67895] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2938), 2, + ACTIONS(3195), 2, sym__newline, - sym__semicolon, - [57190] = 3, + anon_sym_SEMI, + [67903] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2940), 1, - sym_integer, - ACTIONS(2942), 1, - sym_float, - [57200] = 3, + ACTIONS(3197), 2, + sym__newline, + anon_sym_SEMI, + [67911] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2830), 1, - anon_sym_RBRACE, - ACTIONS(2944), 1, + ACTIONS(3199), 2, anon_sym_COMMA, - [57210] = 2, + anon_sym_RBRACK, + [67919] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2946), 2, + ACTIONS(3201), 2, sym__newline, - sym__semicolon, - [57218] = 3, + anon_sym_SEMI, + [67927] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1808), 1, - anon_sym_RBRACE, - ACTIONS(2948), 1, - anon_sym_COMMA, - [57228] = 2, + ACTIONS(3203), 2, + sym__newline, + anon_sym_SEMI, + [67935] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2950), 2, + ACTIONS(3205), 2, sym__newline, - sym__semicolon, - [57236] = 3, + anon_sym_SEMI, + [67943] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1873), 1, - anon_sym_DOT, - STATE(1224), 1, - aux_sym_match_value_pattern_repeat1, - [57246] = 3, + ACTIONS(3207), 2, + sym__newline, + anon_sym_SEMI, + [67951] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2952), 1, - sym_identifier, - STATE(1370), 1, - sym_match_capture_pattern, - [57256] = 2, + ACTIONS(3086), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [67959] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2954), 2, + ACTIONS(3209), 2, sym__newline, - sym__semicolon, - [57264] = 2, + anon_sym_SEMI, + [67967] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2678), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [57272] = 3, + ACTIONS(1031), 2, + anon_sym_except, + anon_sym_finally, + [67975] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2243), 1, - anon_sym_as, - ACTIONS(2245), 1, - anon_sym_COLON, - [57282] = 3, + ACTIONS(2236), 2, + sym__newline, + anon_sym_SEMI, + [67983] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2247), 1, - anon_sym_as, - ACTIONS(2249), 1, - anon_sym_COLON, - [57292] = 3, + ACTIONS(1037), 2, + anon_sym_except, + anon_sym_finally, + [67991] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2956), 1, + ACTIONS(3211), 1, anon_sym_COLON, - ACTIONS(2958), 1, + ACTIONS(3213), 1, anon_sym_DASH_GT, - [57302] = 3, + [68001] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2960), 1, - anon_sym_COLON, - ACTIONS(2962), 1, - anon_sym_DASH_GT, - [57312] = 3, + ACTIONS(2713), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [68009] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2964), 1, + ACTIONS(3215), 1, anon_sym_COLON, - ACTIONS(2966), 1, + ACTIONS(3217), 1, anon_sym_DASH_GT, - [57322] = 3, + [68019] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2968), 1, + ACTIONS(3219), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [68027] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3221), 1, anon_sym_COLON, - ACTIONS(2970), 1, + ACTIONS(3223), 1, anon_sym_DASH_GT, - [57332] = 3, + [68037] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2723), 1, - sym_identifier, - STATE(1333), 1, - sym_match_keyword_pattern, - [57342] = 2, + ACTIONS(3225), 1, + anon_sym_COMMA, + ACTIONS(3227), 1, + anon_sym_RBRACE, + [68047] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2972), 2, - sym__newline, - sym__semicolon, - [57350] = 3, + ACTIONS(2982), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [68055] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2974), 1, + ACTIONS(3229), 1, anon_sym_COLON, - ACTIONS(2976), 1, + ACTIONS(3231), 1, anon_sym_DASH_GT, - [57360] = 3, + [68065] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2179), 1, + ACTIONS(3233), 2, + anon_sym_COLON, + anon_sym_DASH_GT, + [68073] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2460), 1, anon_sym_as, - ACTIONS(2181), 1, + ACTIONS(2462), 1, anon_sym_COLON, - [57370] = 3, + [68083] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2978), 1, + ACTIONS(2295), 1, + anon_sym_COMMA, + STATE(1278), 1, + aux_sym_expression_list_repeat1, + [68093] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2464), 1, + anon_sym_as, + ACTIONS(2466), 1, anon_sym_COLON, - ACTIONS(2980), 1, - anon_sym_DASH_GT, - [57380] = 2, + [68103] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2982), 2, + ACTIONS(2424), 2, sym__newline, - sym__semicolon, - [57388] = 2, + anon_sym_SEMI, + [68111] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2984), 2, - sym__newline, - sym__semicolon, - [57396] = 2, + ACTIONS(2468), 1, + anon_sym_as, + ACTIONS(2470), 1, + anon_sym_COLON, + [68121] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2517), 2, - anon_sym_RPAREN, + ACTIONS(2918), 1, anon_sym_COMMA, - [57404] = 3, + ACTIONS(3235), 1, + anon_sym_RPAREN, + [68131] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2986), 1, + ACTIONS(3237), 1, anon_sym_COLON, - ACTIONS(2988), 1, + ACTIONS(3239), 1, anon_sym_DASH_GT, - [57414] = 2, + [68141] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(960), 2, - anon_sym_except, - anon_sym_finally, - [57422] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2990), 1, - sym_integer, - ACTIONS(2992), 1, - sym_float, - [57432] = 3, + ACTIONS(3241), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [68149] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2994), 1, + ACTIONS(3243), 1, anon_sym_COMMA, - STATE(1141), 1, + STATE(1484), 1, aux_sym_open_sequence_match_pattern_repeat1, - [57442] = 2, + [68159] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2996), 2, - anon_sym_COLON, - anon_sym_DASH_GT, - [57450] = 2, + ACTIONS(2703), 1, + anon_sym_LPAREN, + STATE(1513), 1, + sym_parameters, + [68169] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2998), 2, + ACTIONS(2984), 2, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACK, - [57458] = 2, + [68177] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3000), 2, - sym__newline, - sym__semicolon, - [57466] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3002), 1, + ACTIONS(3245), 1, sym_integer, - ACTIONS(3004), 1, + ACTIONS(3247), 1, sym_float, - [57476] = 3, + [68187] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2458), 1, - anon_sym_LPAREN, - STATE(1320), 1, - sym_parameters, - [57486] = 2, + ACTIONS(2931), 1, + sym_identifier, + STATE(1558), 1, + sym_match_keyword_pattern, + [68197] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3006), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [57494] = 2, + ACTIONS(3249), 1, + sym_identifier, + STATE(1581), 1, + sym_match_capture_pattern, + [68207] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2664), 2, - sym__newline, - sym__semicolon, - [57502] = 2, + ACTIONS(2091), 1, + anon_sym_DOT, + STATE(1478), 1, + aux_sym_match_value_pattern_repeat1, + [68217] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3008), 2, + ACTIONS(3251), 2, anon_sym_COMMA, anon_sym_RBRACE, - [57510] = 2, + [68225] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3010), 2, + ACTIONS(3107), 1, + anon_sym_RBRACE, + ACTIONS(3253), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [57518] = 2, + [68235] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(956), 2, - anon_sym_except, - anon_sym_finally, - [57526] = 2, + ACTIONS(2428), 1, + anon_sym_as, + ACTIONS(2432), 1, + anon_sym_COLON, + [68245] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3012), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [57534] = 2, + ACTIONS(3255), 1, + sym_integer, + ACTIONS(3257), 1, + sym_float, + [68255] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2868), 2, - anon_sym_RPAREN, + ACTIONS(2232), 1, anon_sym_COMMA, - [57542] = 3, + STATE(1251), 1, + aux_sym_expression_list_repeat1, + [68265] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1893), 1, - anon_sym_COMMA, - STATE(986), 1, - aux_sym_expression_list_repeat1, - [57552] = 3, + ACTIONS(3259), 2, + sym__newline, + anon_sym_SEMI, + [68273] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2630), 1, + ACTIONS(1992), 1, + anon_sym_RBRACE, + ACTIONS(3261), 1, anon_sym_COMMA, - ACTIONS(3014), 1, + [68283] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2601), 2, anon_sym_RPAREN, - [57562] = 2, + anon_sym_COMMA, + [68291] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2239), 2, + ACTIONS(3263), 2, + anon_sym_COLON, + anon_sym_DASH_GT, + [68299] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2404), 2, sym__newline, - sym__semicolon, - [57570] = 2, + anon_sym_SEMI, + [68307] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3016), 2, + ACTIONS(3112), 2, anon_sym_COMMA, anon_sym_RBRACE, - [57578] = 3, + [68315] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2261), 1, - anon_sym_as, - ACTIONS(2263), 1, - anon_sym_COLON, - [57588] = 2, + ACTIONS(3265), 1, + sym_integer, + ACTIONS(3267), 1, + sym_float, + [68325] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2189), 2, - sym__newline, - sym__semicolon, - [57596] = 2, + ACTIONS(3269), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [68333] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3018), 2, - sym__newline, - sym__semicolon, - [57604] = 3, + ACTIONS(2703), 1, + anon_sym_LPAREN, + STATE(1546), 1, + sym_parameters, + [68343] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3020), 1, + ACTIONS(3271), 2, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1234), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [57614] = 2, + [68351] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2703), 1, + anon_sym_LPAREN, + STATE(1582), 1, + sym_parameters, + [68361] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2406), 2, + sym__newline, + anon_sym_SEMI, + [68369] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(986), 2, + ACTIONS(1081), 2, anon_sym_except, anon_sym_finally, - [57622] = 2, + [68377] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3022), 2, + ACTIONS(3273), 2, anon_sym_COMMA, anon_sym_RBRACE, - [57630] = 2, + [68385] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3275), 1, + anon_sym_COLON, + ACTIONS(3277), 1, + anon_sym_DASH_GT, + [68395] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3024), 1, + ACTIONS(3279), 1, anon_sym_COLON, - [57637] = 2, + [68402] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3026), 1, + ACTIONS(3281), 1, anon_sym_RPAREN, - [57644] = 2, + [68409] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3028), 1, - anon_sym_RBRACE, - [57651] = 2, + ACTIONS(3283), 1, + sym_identifier, + [68416] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1792), 1, - anon_sym_RBRACE, - [57658] = 2, + ACTIONS(3285), 1, + anon_sym_RPAREN, + [68423] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3030), 1, + ACTIONS(2705), 1, anon_sym_RBRACE, - [57665] = 2, + [68430] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3032), 1, - anon_sym_RBRACK, - [57672] = 2, + ACTIONS(3287), 1, + anon_sym_COLON, + [68437] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3034), 1, + ACTIONS(3289), 1, + anon_sym_COLON, + [68444] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3291), 1, + anon_sym_COLON, + [68451] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3293), 1, anon_sym_RPAREN, - [57679] = 2, + [68458] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3036), 1, - anon_sym_EQ, - [57686] = 2, + ACTIONS(3295), 1, + anon_sym_RPAREN, + [68465] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3038), 1, + ACTIONS(3297), 1, + anon_sym_COLON, + [68472] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3299), 1, anon_sym_RBRACK, - [57693] = 2, + [68479] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3301), 1, + anon_sym_for, + [68486] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3040), 1, + ACTIONS(3303), 1, anon_sym_RBRACE, - [57700] = 2, + [68493] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3305), 1, + anon_sym_COLON, + [68500] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3042), 1, + ACTIONS(3307), 1, anon_sym_COLON, - [57707] = 2, + [68507] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3309), 1, + sym_identifier, + [68514] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3044), 1, + ACTIONS(3311), 1, anon_sym_RBRACE, - [57714] = 2, + [68521] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3046), 1, + ACTIONS(3313), 1, anon_sym_COLON, - [57721] = 2, + [68528] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3048), 1, - sym_identifier, - [57728] = 2, + ACTIONS(3315), 1, + anon_sym_RBRACE, + [68535] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3050), 1, - anon_sym_in, - [57735] = 2, + ACTIONS(2535), 1, + anon_sym_COLON, + [68542] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3052), 1, - anon_sym_RPAREN, - [57742] = 2, + ACTIONS(3317), 1, + anon_sym_COLON, + [68549] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3054), 1, - anon_sym_RBRACK, - [57749] = 2, + ACTIONS(3319), 1, + sym_identifier, + [68556] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3056), 1, + ACTIONS(3321), 1, anon_sym_COLON, - [57756] = 2, + [68563] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3058), 1, - anon_sym_RBRACE, - [57763] = 2, + ACTIONS(3323), 1, + anon_sym_COLON, + [68570] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3060), 1, - anon_sym_RBRACE, - [57770] = 2, + ACTIONS(3325), 1, + anon_sym_COLON, + [68577] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3062), 1, - anon_sym_RPAREN, - [57777] = 2, + ACTIONS(3327), 1, + anon_sym_COLON, + [68584] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3064), 1, + ACTIONS(2537), 1, anon_sym_COLON, - [57784] = 2, + [68591] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2682), 1, - anon_sym_RBRACK, - [57791] = 2, + ACTIONS(963), 1, + anon_sym_STAR, + [68598] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3066), 1, - anon_sym_RBRACE, - [57798] = 2, + ACTIONS(3329), 1, + anon_sym_in, + [68605] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3068), 1, + ACTIONS(3331), 1, anon_sym_RPAREN, - [57805] = 2, + [68612] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2866), 1, - anon_sym_RBRACE, - [57812] = 2, + ACTIONS(3333), 1, + anon_sym_RBRACK, + [68619] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3070), 1, - sym_identifier, - [57819] = 2, + ACTIONS(3335), 1, + anon_sym_RPAREN, + [68626] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3072), 1, - sym_identifier, - [57826] = 2, + ACTIONS(3337), 1, + anon_sym_COLON, + [68633] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3074), 1, + ACTIONS(3339), 1, anon_sym_COLON, - [57833] = 2, + [68640] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3076), 1, + ACTIONS(3341), 1, + anon_sym_COLON, + [68647] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3343), 1, sym_identifier, - [57840] = 2, + [68654] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3078), 1, + ACTIONS(3345), 1, anon_sym_COLON, - [57847] = 2, + [68661] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3080), 1, - anon_sym_RPAREN, - [57854] = 2, + ACTIONS(3347), 1, + anon_sym_COLON, + [68668] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3082), 1, - anon_sym_in, - [57861] = 2, + ACTIONS(3349), 1, + anon_sym_COLON, + [68675] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3084), 1, - sym_identifier, - [57868] = 2, + ACTIONS(3227), 1, + anon_sym_RBRACE, + [68682] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3086), 1, - anon_sym_LPAREN, - [57875] = 2, + ACTIONS(3351), 1, + anon_sym_RBRACK, + [68689] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3088), 1, - anon_sym_import, - [57882] = 2, + ACTIONS(2543), 1, + anon_sym_COLON, + [68696] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3090), 1, - sym_identifier, - [57889] = 2, + ACTIONS(3353), 1, + anon_sym_RPAREN, + [68703] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2745), 1, - anon_sym_in, - [57896] = 2, + ACTIONS(3355), 1, + anon_sym_RBRACE, + [68710] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3092), 1, - anon_sym_COLON, - [57903] = 2, + ACTIONS(3357), 1, + anon_sym_RBRACK, + [68717] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3094), 1, - anon_sym_in, - [57910] = 2, + ACTIONS(3359), 1, + sym_identifier, + [68724] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3096), 1, + ACTIONS(3361), 1, anon_sym_COLON, - [57917] = 2, + [68731] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3098), 1, - anon_sym_RPAREN, - [57924] = 2, + ACTIONS(3363), 1, + anon_sym_RBRACE, + [68738] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3100), 1, - anon_sym_import, - [57931] = 2, + ACTIONS(3365), 1, + sym_identifier, + [68745] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2844), 1, + ACTIONS(3367), 1, + anon_sym_RBRACK, + [68752] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3369), 1, anon_sym_in, - [57938] = 2, + [68759] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(891), 1, - anon_sym_STAR, - [57945] = 2, + ACTIONS(3371), 1, + anon_sym_RPAREN, + [68766] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3102), 1, - anon_sym_COLON, - [57952] = 2, + ACTIONS(3373), 1, + sym_identifier, + [68773] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3104), 1, + ACTIONS(2539), 1, anon_sym_COLON, - [57959] = 2, + [68780] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3106), 1, + ACTIONS(3375), 1, + sym_identifier, + [68787] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3377), 1, anon_sym_COLON, - [57966] = 2, + [68794] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3108), 1, + ACTIONS(3379), 1, anon_sym_COLON, - [57973] = 2, + [68801] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3110), 1, - anon_sym_RBRACK, - [57980] = 2, + ACTIONS(3072), 1, + anon_sym_RBRACE, + [68808] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3112), 1, + ACTIONS(3381), 1, anon_sym_COLON, - [57987] = 2, + [68815] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3114), 1, + ACTIONS(3383), 1, anon_sym_RPAREN, - [57994] = 2, + [68822] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2311), 1, - anon_sym_COLON, - [58001] = 2, + ACTIONS(3385), 1, + anon_sym_RBRACE, + [68829] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3116), 1, - anon_sym_RBRACK, - [58008] = 2, + ACTIONS(3387), 1, + anon_sym_RBRACE, + [68836] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3118), 1, + ACTIONS(3389), 1, anon_sym_COLON, - [58015] = 2, + [68843] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3120), 1, - anon_sym_COLON, - [58022] = 2, + ACTIONS(3391), 1, + anon_sym_EQ, + [68850] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3122), 1, - anon_sym_RBRACK, - [58029] = 2, + ACTIONS(3393), 1, + sym_identifier, + [68857] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3124), 1, + ACTIONS(3395), 1, anon_sym_RBRACE, - [58036] = 2, + [68864] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2753), 1, - anon_sym_in, - [58043] = 2, + ACTIONS(3397), 1, + anon_sym_RBRACE, + [68871] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3126), 1, - anon_sym_COLON, - [58050] = 2, + ACTIONS(3399), 1, + sym_identifier, + [68878] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3128), 1, + ACTIONS(2722), 1, anon_sym_RBRACE, - [58057] = 2, + [68885] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2278), 1, - anon_sym_COLON, - [58064] = 2, + ACTIONS(3007), 1, + anon_sym_RBRACK, + [68892] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3130), 1, - anon_sym_RPAREN, - [58071] = 2, + ACTIONS(3401), 1, + anon_sym_import, + [68899] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3132), 1, - anon_sym_COLON, - [58078] = 2, + ACTIONS(3403), 1, + ts_builtin_sym_end, + [68906] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3134), 1, - anon_sym_COLON, - [58085] = 2, + ACTIONS(3405), 1, + anon_sym_RBRACK, + [68913] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3136), 1, - anon_sym_COLON, - [58092] = 2, + ACTIONS(3074), 1, + anon_sym_in, + [68920] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3138), 1, - anon_sym_COLON, - [58099] = 2, + ACTIONS(2337), 1, + anon_sym_EQ, + [68927] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3140), 1, - anon_sym_COLON, - [58106] = 2, + ACTIONS(3407), 1, + sym_identifier, + [68934] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2321), 1, - anon_sym_COLON, - [58113] = 2, + ACTIONS(2882), 1, + anon_sym_RBRACK, + [68941] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2767), 1, - anon_sym_RBRACK, - [58120] = 2, + ACTIONS(3146), 1, + anon_sym_in, + [68948] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3142), 1, + ACTIONS(1958), 1, anon_sym_RBRACE, - [58127] = 2, + [68955] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3144), 1, + ACTIONS(3409), 1, anon_sym_RBRACE, - [58134] = 2, + [68962] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3146), 1, - anon_sym_RBRACE, - [58141] = 2, + ACTIONS(3411), 1, + anon_sym_import, + [68969] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2786), 1, + ACTIONS(3413), 1, anon_sym_RBRACE, - [58148] = 2, + [68976] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3148), 1, + ACTIONS(3415), 1, anon_sym_COLON, - [58155] = 2, + [68983] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2613), 1, - anon_sym_RBRACE, - [58162] = 2, + ACTIONS(3417), 1, + sym_identifier, + [68990] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3150), 1, + ACTIONS(3419), 1, anon_sym_COLON, - [58169] = 2, + [68997] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3152), 1, - anon_sym_RBRACE, - [58176] = 2, + ACTIONS(2966), 1, + anon_sym_RBRACK, + [69004] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3154), 1, - anon_sym_RBRACE, - [58183] = 2, + ACTIONS(3421), 1, + anon_sym_COLON, + [69011] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3156), 1, - anon_sym_COLON, - [58190] = 2, + ACTIONS(3423), 1, + anon_sym_in, + [69018] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3158), 1, - anon_sym_COLON, - [58197] = 2, + ACTIONS(3099), 1, + anon_sym_in, + [69025] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3160), 1, + ACTIONS(3425), 1, anon_sym_COLON, - [58204] = 2, + [69032] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3162), 1, - anon_sym_RBRACK, - [58211] = 2, + ACTIONS(3427), 1, + anon_sym_in, + [69039] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3164), 1, + ACTIONS(3429), 1, anon_sym_RPAREN, - [58218] = 2, + [69046] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2808), 1, + ACTIONS(3431), 1, + anon_sym_COLON, + [69053] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3433), 1, anon_sym_RBRACK, - [58225] = 2, + [69060] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2532), 1, + ACTIONS(3435), 1, anon_sym_RBRACE, - [58232] = 2, + [69067] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3166), 1, - anon_sym_COLON, - [58239] = 2, + ACTIONS(3437), 1, + anon_sym_RBRACK, + [69074] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3168), 1, - anon_sym_COLON, - [58246] = 2, + ACTIONS(3439), 1, + anon_sym_LPAREN, + [69081] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3170), 1, - anon_sym_RPAREN, - [58253] = 2, + ACTIONS(3441), 1, + sym_identifier, + [69088] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3172), 1, + ACTIONS(3443), 1, anon_sym_COLON, - [58260] = 2, + [69095] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2129), 1, - anon_sym_EQ, - [58267] = 2, + ACTIONS(3445), 1, + anon_sym_RBRACE, + [69102] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2901), 1, - anon_sym_in, - [58274] = 2, + ACTIONS(3447), 1, + anon_sym_RPAREN, + [69109] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3174), 1, - sym_identifier, - [58281] = 2, + ACTIONS(1059), 1, + anon_sym_def, + [69116] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3176), 1, - anon_sym_COLON, - [58288] = 2, + ACTIONS(3449), 1, + anon_sym_RPAREN, + [69123] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3451), 1, + anon_sym_RBRACE, + [69130] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3178), 1, + ACTIONS(3453), 1, anon_sym_COLON, - [58295] = 2, + [69137] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3180), 1, - anon_sym_RPAREN, - [58302] = 2, + ACTIONS(3455), 1, + anon_sym_COLON, + [69144] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3182), 1, - sym_identifier, - [58309] = 2, + ACTIONS(3457), 1, + anon_sym_COLON, + [69151] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3184), 1, + ACTIONS(3459), 1, sym_identifier, - [58316] = 2, + [69158] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3186), 1, - anon_sym_in, - [58323] = 2, + ACTIONS(3142), 1, + anon_sym_RBRACE, + [69165] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3188), 1, - sym_identifier, - [58330] = 2, + ACTIONS(2950), 1, + anon_sym_RBRACK, + [69172] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(978), 1, - anon_sym_def, - [58337] = 2, + ACTIONS(3461), 1, + anon_sym_RPAREN, + [69179] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3190), 1, + ACTIONS(3463), 1, sym_identifier, - [58344] = 2, + [69186] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3192), 1, + ACTIONS(3465), 1, sym_identifier, - [58351] = 2, + [69193] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3194), 1, - ts_builtin_sym_end, - [58358] = 2, + ACTIONS(3467), 1, + anon_sym_COLON, + [69200] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3196), 1, - anon_sym_import, - [58365] = 2, + ACTIONS(3469), 1, + sym_identifier, + [69207] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2346), 1, - anon_sym_COLON, - [58372] = 2, + ACTIONS(3471), 1, + anon_sym_RBRACE, + [69214] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3198), 1, - sym_identifier, - [58379] = 2, + ACTIONS(3473), 1, + anon_sym_in, + [69221] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3200), 1, - sym_identifier, - [58386] = 2, + ACTIONS(3475), 1, + anon_sym_RPAREN, + [69228] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3202), 1, - sym_identifier, - [58393] = 2, + ACTIONS(3477), 1, + anon_sym_RPAREN, + [69235] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3204), 1, + ACTIONS(3479), 1, sym_identifier, - [58400] = 2, + [69242] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(903), 1, + ACTIONS(985), 1, anon_sym_STAR, - [58407] = 2, + [69249] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3206), 1, - anon_sym_COLON, - [58414] = 2, + ACTIONS(3481), 1, + anon_sym_RBRACE, + [69256] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3208), 1, - anon_sym_RBRACE, - [58421] = 2, + ACTIONS(3483), 1, + anon_sym_RPAREN, + [69263] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3210), 1, - anon_sym_for, - [58428] = 2, + ACTIONS(3154), 1, + anon_sym_in, + [69270] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3212), 1, - anon_sym_RPAREN, - [58435] = 2, + ACTIONS(3485), 1, + anon_sym_RBRACK, + [69277] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3214), 1, - sym_identifier, - [58442] = 2, + ACTIONS(3487), 1, + anon_sym_import, + [69284] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3489), 1, + anon_sym_COLON, + [69291] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3491), 1, + anon_sym_COLON, + [69298] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3493), 1, + anon_sym_COLON, + [69305] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3216), 1, + ACTIONS(3495), 1, sym_identifier, - [58449] = 2, + [69312] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3218), 1, + ACTIONS(3497), 1, sym_identifier, - [58456] = 2, + [69319] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3220), 1, - anon_sym_COLON, - [58463] = 2, + ACTIONS(3499), 1, + anon_sym_RBRACE, + [69326] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2842), 1, + ACTIONS(3158), 1, anon_sym_in, - [58470] = 2, + [69333] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(972), 1, + ACTIONS(1089), 1, anon_sym_def, - [58477] = 2, + [69340] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3222), 1, - anon_sym_COLON, - [58484] = 2, + ACTIONS(3501), 1, + anon_sym_RBRACE, + [69347] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2870), 1, + ACTIONS(3160), 1, anon_sym_in, - [58491] = 2, + [69354] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3224), 1, - anon_sym_COLON, - [58498] = 2, + ACTIONS(3503), 1, + anon_sym_in, + [69361] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2914), 1, + ACTIONS(3505), 1, anon_sym_RBRACE, + [69368] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3507), 1, + anon_sym_COLON, }; static const uint32_t ts_small_parse_table_map[] = { - [SMALL_STATE(152)] = 0, - [SMALL_STATE(153)] = 117, - [SMALL_STATE(154)] = 241, - [SMALL_STATE(155)] = 367, - [SMALL_STATE(156)] = 489, - [SMALL_STATE(157)] = 613, - [SMALL_STATE(158)] = 735, - [SMALL_STATE(159)] = 845, - [SMALL_STATE(160)] = 967, - [SMALL_STATE(161)] = 1077, - [SMALL_STATE(162)] = 1198, - [SMALL_STATE(163)] = 1309, - [SMALL_STATE(164)] = 1420, - [SMALL_STATE(165)] = 1541, - [SMALL_STATE(166)] = 1652, - [SMALL_STATE(167)] = 1773, - [SMALL_STATE(168)] = 1881, - [SMALL_STATE(169)] = 1993, - [SMALL_STATE(170)] = 2107, - [SMALL_STATE(171)] = 2215, - [SMALL_STATE(172)] = 2327, - [SMALL_STATE(173)] = 2437, - [SMALL_STATE(174)] = 2547, - [SMALL_STATE(175)] = 2659, - [SMALL_STATE(176)] = 2771, - [SMALL_STATE(177)] = 2879, - [SMALL_STATE(178)] = 2991, - [SMALL_STATE(179)] = 3103, - [SMALL_STATE(180)] = 3212, - [SMALL_STATE(181)] = 3321, - [SMALL_STATE(182)] = 3426, - [SMALL_STATE(183)] = 3535, - [SMALL_STATE(184)] = 3644, - [SMALL_STATE(185)] = 3753, - [SMALL_STATE(186)] = 3862, - [SMALL_STATE(187)] = 3971, - [SMALL_STATE(188)] = 4080, - [SMALL_STATE(189)] = 4189, - [SMALL_STATE(190)] = 4298, - [SMALL_STATE(191)] = 4407, - [SMALL_STATE(192)] = 4518, - [SMALL_STATE(193)] = 4623, - [SMALL_STATE(194)] = 4728, - [SMALL_STATE(195)] = 4837, - [SMALL_STATE(196)] = 4946, - [SMALL_STATE(197)] = 5051, - [SMALL_STATE(198)] = 5160, - [SMALL_STATE(199)] = 5269, - [SMALL_STATE(200)] = 5382, - [SMALL_STATE(201)] = 5491, - [SMALL_STATE(202)] = 5600, - [SMALL_STATE(203)] = 5711, - [SMALL_STATE(204)] = 5820, - [SMALL_STATE(205)] = 5929, - [SMALL_STATE(206)] = 6038, - [SMALL_STATE(207)] = 6149, - [SMALL_STATE(208)] = 6260, - [SMALL_STATE(209)] = 6373, - [SMALL_STATE(210)] = 6482, - [SMALL_STATE(211)] = 6591, - [SMALL_STATE(212)] = 6700, - [SMALL_STATE(213)] = 6806, - [SMALL_STATE(214)] = 6912, - [SMALL_STATE(215)] = 7018, - [SMALL_STATE(216)] = 7124, - [SMALL_STATE(217)] = 7218, - [SMALL_STATE(218)] = 7324, - [SMALL_STATE(219)] = 7430, - [SMALL_STATE(220)] = 7536, - [SMALL_STATE(221)] = 7642, - [SMALL_STATE(222)] = 7747, - [SMALL_STATE(223)] = 7852, - [SMALL_STATE(224)] = 7957, - [SMALL_STATE(225)] = 8060, - [SMALL_STATE(226)] = 8165, - [SMALL_STATE(227)] = 8268, - [SMALL_STATE(228)] = 8373, - [SMALL_STATE(229)] = 8475, - [SMALL_STATE(230)] = 8577, - [SMALL_STATE(231)] = 8679, - [SMALL_STATE(232)] = 8781, - [SMALL_STATE(233)] = 8883, - [SMALL_STATE(234)] = 8985, - [SMALL_STATE(235)] = 9087, - [SMALL_STATE(236)] = 9189, - [SMALL_STATE(237)] = 9291, - [SMALL_STATE(238)] = 9393, - [SMALL_STATE(239)] = 9495, - [SMALL_STATE(240)] = 9568, - [SMALL_STATE(241)] = 9669, - [SMALL_STATE(242)] = 9770, - [SMALL_STATE(243)] = 9871, - [SMALL_STATE(244)] = 9970, - [SMALL_STATE(245)] = 10031, - [SMALL_STATE(246)] = 10092, - [SMALL_STATE(247)] = 10191, - [SMALL_STATE(248)] = 10292, - [SMALL_STATE(249)] = 10393, - [SMALL_STATE(250)] = 10494, - [SMALL_STATE(251)] = 10567, - [SMALL_STATE(252)] = 10668, - [SMALL_STATE(253)] = 10741, - [SMALL_STATE(254)] = 10840, - [SMALL_STATE(255)] = 10941, - [SMALL_STATE(256)] = 11014, - [SMALL_STATE(257)] = 11115, - [SMALL_STATE(258)] = 11188, - [SMALL_STATE(259)] = 11289, - [SMALL_STATE(260)] = 11362, - [SMALL_STATE(261)] = 11435, - [SMALL_STATE(262)] = 11508, - [SMALL_STATE(263)] = 11609, - [SMALL_STATE(264)] = 11710, - [SMALL_STATE(265)] = 11811, - [SMALL_STATE(266)] = 11907, - [SMALL_STATE(267)] = 12003, - [SMALL_STATE(268)] = 12101, - [SMALL_STATE(269)] = 12197, - [SMALL_STATE(270)] = 12295, - [SMALL_STATE(271)] = 12391, - [SMALL_STATE(272)] = 12487, - [SMALL_STATE(273)] = 12583, - [SMALL_STATE(274)] = 12679, - [SMALL_STATE(275)] = 12775, - [SMALL_STATE(276)] = 12873, - [SMALL_STATE(277)] = 12971, - [SMALL_STATE(278)] = 13069, - [SMALL_STATE(279)] = 13167, - [SMALL_STATE(280)] = 13263, - [SMALL_STATE(281)] = 13359, - [SMALL_STATE(282)] = 13457, - [SMALL_STATE(283)] = 13553, - [SMALL_STATE(284)] = 13651, - [SMALL_STATE(285)] = 13747, - [SMALL_STATE(286)] = 13845, - [SMALL_STATE(287)] = 13941, - [SMALL_STATE(288)] = 14036, - [SMALL_STATE(289)] = 14131, - [SMALL_STATE(290)] = 14194, - [SMALL_STATE(291)] = 14263, - [SMALL_STATE(292)] = 14332, - [SMALL_STATE(293)] = 14395, - [SMALL_STATE(294)] = 14458, - [SMALL_STATE(295)] = 14517, - [SMALL_STATE(296)] = 14576, - [SMALL_STATE(297)] = 14635, - [SMALL_STATE(298)] = 14694, - [SMALL_STATE(299)] = 14767, - [SMALL_STATE(300)] = 14840, - [SMALL_STATE(301)] = 14909, - [SMALL_STATE(302)] = 14968, - [SMALL_STATE(303)] = 15037, - [SMALL_STATE(304)] = 15132, - [SMALL_STATE(305)] = 15201, - [SMALL_STATE(306)] = 15260, - [SMALL_STATE(307)] = 15319, - [SMALL_STATE(308)] = 15378, - [SMALL_STATE(309)] = 15441, - [SMALL_STATE(310)] = 15510, - [SMALL_STATE(311)] = 15579, - [SMALL_STATE(312)] = 15638, - [SMALL_STATE(313)] = 15707, - [SMALL_STATE(314)] = 15766, - [SMALL_STATE(315)] = 15858, - [SMALL_STATE(316)] = 15950, - [SMALL_STATE(317)] = 16042, - [SMALL_STATE(318)] = 16134, - [SMALL_STATE(319)] = 16226, - [SMALL_STATE(320)] = 16318, - [SMALL_STATE(321)] = 16410, - [SMALL_STATE(322)] = 16502, - [SMALL_STATE(323)] = 16594, - [SMALL_STATE(324)] = 16686, - [SMALL_STATE(325)] = 16778, - [SMALL_STATE(326)] = 16870, - [SMALL_STATE(327)] = 16962, - [SMALL_STATE(328)] = 17054, - [SMALL_STATE(329)] = 17146, - [SMALL_STATE(330)] = 17238, - [SMALL_STATE(331)] = 17330, - [SMALL_STATE(332)] = 17422, - [SMALL_STATE(333)] = 17514, - [SMALL_STATE(334)] = 17606, - [SMALL_STATE(335)] = 17698, - [SMALL_STATE(336)] = 17790, - [SMALL_STATE(337)] = 17882, - [SMALL_STATE(338)] = 17974, - [SMALL_STATE(339)] = 18066, - [SMALL_STATE(340)] = 18158, - [SMALL_STATE(341)] = 18250, - [SMALL_STATE(342)] = 18342, - [SMALL_STATE(343)] = 18434, - [SMALL_STATE(344)] = 18526, - [SMALL_STATE(345)] = 18618, - [SMALL_STATE(346)] = 18710, - [SMALL_STATE(347)] = 18802, - [SMALL_STATE(348)] = 18894, - [SMALL_STATE(349)] = 18986, - [SMALL_STATE(350)] = 19078, - [SMALL_STATE(351)] = 19170, - [SMALL_STATE(352)] = 19262, - [SMALL_STATE(353)] = 19354, - [SMALL_STATE(354)] = 19446, - [SMALL_STATE(355)] = 19538, - [SMALL_STATE(356)] = 19630, - [SMALL_STATE(357)] = 19722, - [SMALL_STATE(358)] = 19814, - [SMALL_STATE(359)] = 19906, - [SMALL_STATE(360)] = 19998, - [SMALL_STATE(361)] = 20090, - [SMALL_STATE(362)] = 20182, - [SMALL_STATE(363)] = 20274, - [SMALL_STATE(364)] = 20366, - [SMALL_STATE(365)] = 20458, - [SMALL_STATE(366)] = 20550, - [SMALL_STATE(367)] = 20642, - [SMALL_STATE(368)] = 20734, - [SMALL_STATE(369)] = 20826, - [SMALL_STATE(370)] = 20890, - [SMALL_STATE(371)] = 20982, - [SMALL_STATE(372)] = 21074, - [SMALL_STATE(373)] = 21166, - [SMALL_STATE(374)] = 21258, - [SMALL_STATE(375)] = 21350, - [SMALL_STATE(376)] = 21442, - [SMALL_STATE(377)] = 21534, - [SMALL_STATE(378)] = 21626, - [SMALL_STATE(379)] = 21718, - [SMALL_STATE(380)] = 21810, - [SMALL_STATE(381)] = 21902, - [SMALL_STATE(382)] = 21972, + [SMALL_STATE(156)] = 0, + [SMALL_STATE(157)] = 110, + [SMALL_STATE(158)] = 232, + [SMALL_STATE(159)] = 342, + [SMALL_STATE(160)] = 466, + [SMALL_STATE(161)] = 588, + [SMALL_STATE(162)] = 714, + [SMALL_STATE(163)] = 838, + [SMALL_STATE(164)] = 960, + [SMALL_STATE(165)] = 1081, + [SMALL_STATE(166)] = 1202, + [SMALL_STATE(167)] = 1323, + [SMALL_STATE(168)] = 1444, + [SMALL_STATE(169)] = 1558, + [SMALL_STATE(170)] = 1672, + [SMALL_STATE(171)] = 1781, + [SMALL_STATE(172)] = 1890, + [SMALL_STATE(173)] = 1999, + [SMALL_STATE(174)] = 2109, + [SMALL_STATE(175)] = 2221, + [SMALL_STATE(176)] = 2329, + [SMALL_STATE(177)] = 2441, + [SMALL_STATE(178)] = 2553, + [SMALL_STATE(179)] = 2661, + [SMALL_STATE(180)] = 2769, + [SMALL_STATE(181)] = 2877, + [SMALL_STATE(182)] = 2987, + [SMALL_STATE(183)] = 3099, + [SMALL_STATE(184)] = 3213, + [SMALL_STATE(185)] = 3325, + [SMALL_STATE(186)] = 3433, + [SMALL_STATE(187)] = 3541, + [SMALL_STATE(188)] = 3653, + [SMALL_STATE(189)] = 3765, + [SMALL_STATE(190)] = 3874, + [SMALL_STATE(191)] = 3979, + [SMALL_STATE(192)] = 4088, + [SMALL_STATE(193)] = 4193, + [SMALL_STATE(194)] = 4302, + [SMALL_STATE(195)] = 4413, + [SMALL_STATE(196)] = 4522, + [SMALL_STATE(197)] = 4631, + [SMALL_STATE(198)] = 4740, + [SMALL_STATE(199)] = 4849, + [SMALL_STATE(200)] = 4962, + [SMALL_STATE(201)] = 5071, + [SMALL_STATE(202)] = 5180, + [SMALL_STATE(203)] = 5289, + [SMALL_STATE(204)] = 5398, + [SMALL_STATE(205)] = 5503, + [SMALL_STATE(206)] = 5608, + [SMALL_STATE(207)] = 5719, + [SMALL_STATE(208)] = 5828, + [SMALL_STATE(209)] = 5939, + [SMALL_STATE(210)] = 6048, + [SMALL_STATE(211)] = 6161, + [SMALL_STATE(212)] = 6274, + [SMALL_STATE(213)] = 6383, + [SMALL_STATE(214)] = 6492, + [SMALL_STATE(215)] = 6601, + [SMALL_STATE(216)] = 6710, + [SMALL_STATE(217)] = 6819, + [SMALL_STATE(218)] = 6928, + [SMALL_STATE(219)] = 7039, + [SMALL_STATE(220)] = 7148, + [SMALL_STATE(221)] = 7257, + [SMALL_STATE(222)] = 7366, + [SMALL_STATE(223)] = 7475, + [SMALL_STATE(224)] = 7584, + [SMALL_STATE(225)] = 7693, + [SMALL_STATE(226)] = 7802, + [SMALL_STATE(227)] = 7913, + [SMALL_STATE(228)] = 8022, + [SMALL_STATE(229)] = 8131, + [SMALL_STATE(230)] = 8242, + [SMALL_STATE(231)] = 8351, + [SMALL_STATE(232)] = 8460, + [SMALL_STATE(233)] = 8566, + [SMALL_STATE(234)] = 8672, + [SMALL_STATE(235)] = 8778, + [SMALL_STATE(236)] = 8884, + [SMALL_STATE(237)] = 8990, + [SMALL_STATE(238)] = 9096, + [SMALL_STATE(239)] = 9202, + [SMALL_STATE(240)] = 9296, + [SMALL_STATE(241)] = 9402, + [SMALL_STATE(242)] = 9508, + [SMALL_STATE(243)] = 9611, + [SMALL_STATE(244)] = 9716, + [SMALL_STATE(245)] = 9821, + [SMALL_STATE(246)] = 9924, + [SMALL_STATE(247)] = 10029, + [SMALL_STATE(248)] = 10134, + [SMALL_STATE(249)] = 10239, + [SMALL_STATE(250)] = 10341, + [SMALL_STATE(251)] = 10443, + [SMALL_STATE(252)] = 10545, + [SMALL_STATE(253)] = 10647, + [SMALL_STATE(254)] = 10749, + [SMALL_STATE(255)] = 10851, + [SMALL_STATE(256)] = 10953, + [SMALL_STATE(257)] = 11055, + [SMALL_STATE(258)] = 11157, + [SMALL_STATE(259)] = 11259, + [SMALL_STATE(260)] = 11361, + [SMALL_STATE(261)] = 11463, + [SMALL_STATE(262)] = 11565, + [SMALL_STATE(263)] = 11667, + [SMALL_STATE(264)] = 11769, + [SMALL_STATE(265)] = 11870, + [SMALL_STATE(266)] = 11971, + [SMALL_STATE(267)] = 12044, + [SMALL_STATE(268)] = 12117, + [SMALL_STATE(269)] = 12190, + [SMALL_STATE(270)] = 12289, + [SMALL_STATE(271)] = 12390, + [SMALL_STATE(272)] = 12491, + [SMALL_STATE(273)] = 12592, + [SMALL_STATE(274)] = 12693, + [SMALL_STATE(275)] = 12792, + [SMALL_STATE(276)] = 12865, + [SMALL_STATE(277)] = 12966, + [SMALL_STATE(278)] = 13067, + [SMALL_STATE(279)] = 13168, + [SMALL_STATE(280)] = 13241, + [SMALL_STATE(281)] = 13314, + [SMALL_STATE(282)] = 13415, + [SMALL_STATE(283)] = 13514, + [SMALL_STATE(284)] = 13587, + [SMALL_STATE(285)] = 13688, + [SMALL_STATE(286)] = 13789, + [SMALL_STATE(287)] = 13890, + [SMALL_STATE(288)] = 13963, + [SMALL_STATE(289)] = 14061, + [SMALL_STATE(290)] = 14157, + [SMALL_STATE(291)] = 14253, + [SMALL_STATE(292)] = 14349, + [SMALL_STATE(293)] = 14445, + [SMALL_STATE(294)] = 14541, + [SMALL_STATE(295)] = 14601, + [SMALL_STATE(296)] = 14699, + [SMALL_STATE(297)] = 14795, + [SMALL_STATE(298)] = 14891, + [SMALL_STATE(299)] = 14989, + [SMALL_STATE(300)] = 15087, + [SMALL_STATE(301)] = 15183, + [SMALL_STATE(302)] = 15279, + [SMALL_STATE(303)] = 15375, + [SMALL_STATE(304)] = 15471, + [SMALL_STATE(305)] = 15569, + [SMALL_STATE(306)] = 15667, + [SMALL_STATE(307)] = 15763, + [SMALL_STATE(308)] = 15823, + [SMALL_STATE(309)] = 15921, + [SMALL_STATE(310)] = 16017, + [SMALL_STATE(311)] = 16115, + [SMALL_STATE(312)] = 16213, + [SMALL_STATE(313)] = 16282, + [SMALL_STATE(314)] = 16341, + [SMALL_STATE(315)] = 16400, + [SMALL_STATE(316)] = 16495, + [SMALL_STATE(317)] = 16564, + [SMALL_STATE(318)] = 16623, + [SMALL_STATE(319)] = 16682, + [SMALL_STATE(320)] = 16751, + [SMALL_STATE(321)] = 16810, + [SMALL_STATE(322)] = 16879, + [SMALL_STATE(323)] = 16948, + [SMALL_STATE(324)] = 17043, + [SMALL_STATE(325)] = 17116, + [SMALL_STATE(326)] = 17175, + [SMALL_STATE(327)] = 17244, + [SMALL_STATE(328)] = 17313, + [SMALL_STATE(329)] = 17376, + [SMALL_STATE(330)] = 17439, + [SMALL_STATE(331)] = 17502, + [SMALL_STATE(332)] = 17565, + [SMALL_STATE(333)] = 17624, + [SMALL_STATE(334)] = 17693, + [SMALL_STATE(335)] = 17752, + [SMALL_STATE(336)] = 17811, + [SMALL_STATE(337)] = 17870, + [SMALL_STATE(338)] = 17965, + [SMALL_STATE(339)] = 18038, + [SMALL_STATE(340)] = 18130, + [SMALL_STATE(341)] = 18222, + [SMALL_STATE(342)] = 18314, + [SMALL_STATE(343)] = 18406, + [SMALL_STATE(344)] = 18498, + [SMALL_STATE(345)] = 18590, + [SMALL_STATE(346)] = 18682, + [SMALL_STATE(347)] = 18774, + [SMALL_STATE(348)] = 18866, + [SMALL_STATE(349)] = 18958, + [SMALL_STATE(350)] = 19050, + [SMALL_STATE(351)] = 19142, + [SMALL_STATE(352)] = 19234, + [SMALL_STATE(353)] = 19326, + [SMALL_STATE(354)] = 19418, + [SMALL_STATE(355)] = 19482, + [SMALL_STATE(356)] = 19574, + [SMALL_STATE(357)] = 19666, + [SMALL_STATE(358)] = 19758, + [SMALL_STATE(359)] = 19850, + [SMALL_STATE(360)] = 19942, + [SMALL_STATE(361)] = 20034, + [SMALL_STATE(362)] = 20126, + [SMALL_STATE(363)] = 20218, + [SMALL_STATE(364)] = 20310, + [SMALL_STATE(365)] = 20402, + [SMALL_STATE(366)] = 20494, + [SMALL_STATE(367)] = 20586, + [SMALL_STATE(368)] = 20656, + [SMALL_STATE(369)] = 20748, + [SMALL_STATE(370)] = 20840, + [SMALL_STATE(371)] = 20932, + [SMALL_STATE(372)] = 21024, + [SMALL_STATE(373)] = 21116, + [SMALL_STATE(374)] = 21208, + [SMALL_STATE(375)] = 21300, + [SMALL_STATE(376)] = 21392, + [SMALL_STATE(377)] = 21484, + [SMALL_STATE(378)] = 21576, + [SMALL_STATE(379)] = 21668, + [SMALL_STATE(380)] = 21760, + [SMALL_STATE(381)] = 21852, + [SMALL_STATE(382)] = 21944, [SMALL_STATE(383)] = 22036, [SMALL_STATE(384)] = 22128, - [SMALL_STATE(385)] = 22220, - [SMALL_STATE(386)] = 22312, - [SMALL_STATE(387)] = 22404, - [SMALL_STATE(388)] = 22496, - [SMALL_STATE(389)] = 22588, + [SMALL_STATE(385)] = 22222, + [SMALL_STATE(386)] = 22314, + [SMALL_STATE(387)] = 22406, + [SMALL_STATE(388)] = 22498, + [SMALL_STATE(389)] = 22590, [SMALL_STATE(390)] = 22682, - [SMALL_STATE(391)] = 22743, - [SMALL_STATE(392)] = 22800, - [SMALL_STATE(393)] = 22857, - [SMALL_STATE(394)] = 22914, - [SMALL_STATE(395)] = 22971, - [SMALL_STATE(396)] = 23028, - [SMALL_STATE(397)] = 23085, - [SMALL_STATE(398)] = 23152, - [SMALL_STATE(399)] = 23209, - [SMALL_STATE(400)] = 23266, - [SMALL_STATE(401)] = 23323, - [SMALL_STATE(402)] = 23380, - [SMALL_STATE(403)] = 23437, - [SMALL_STATE(404)] = 23494, - [SMALL_STATE(405)] = 23551, - [SMALL_STATE(406)] = 23608, - [SMALL_STATE(407)] = 23665, - [SMALL_STATE(408)] = 23722, - [SMALL_STATE(409)] = 23779, - [SMALL_STATE(410)] = 23840, - [SMALL_STATE(411)] = 23897, - [SMALL_STATE(412)] = 23954, - [SMALL_STATE(413)] = 24015, - [SMALL_STATE(414)] = 24072, - [SMALL_STATE(415)] = 24133, - [SMALL_STATE(416)] = 24193, - [SMALL_STATE(417)] = 24257, - [SMALL_STATE(418)] = 24313, - [SMALL_STATE(419)] = 24373, - [SMALL_STATE(420)] = 24429, - [SMALL_STATE(421)] = 24489, - [SMALL_STATE(422)] = 24549, - [SMALL_STATE(423)] = 24605, - [SMALL_STATE(424)] = 24697, - [SMALL_STATE(425)] = 24757, - [SMALL_STATE(426)] = 24817, - [SMALL_STATE(427)] = 24877, - [SMALL_STATE(428)] = 24937, - [SMALL_STATE(429)] = 24993, - [SMALL_STATE(430)] = 25057, - [SMALL_STATE(431)] = 25117, - [SMALL_STATE(432)] = 25177, - [SMALL_STATE(433)] = 25237, - [SMALL_STATE(434)] = 25293, - [SMALL_STATE(435)] = 25385, - [SMALL_STATE(436)] = 25445, - [SMALL_STATE(437)] = 25505, - [SMALL_STATE(438)] = 25565, - [SMALL_STATE(439)] = 25625, - [SMALL_STATE(440)] = 25681, - [SMALL_STATE(441)] = 25745, - [SMALL_STATE(442)] = 25839, - [SMALL_STATE(443)] = 25903, - [SMALL_STATE(444)] = 25959, - [SMALL_STATE(445)] = 26015, - [SMALL_STATE(446)] = 26075, - [SMALL_STATE(447)] = 26136, - [SMALL_STATE(448)] = 26227, - [SMALL_STATE(449)] = 26318, - [SMALL_STATE(450)] = 26409, - [SMALL_STATE(451)] = 26464, - [SMALL_STATE(452)] = 26525, - [SMALL_STATE(453)] = 26586, - [SMALL_STATE(454)] = 26641, - [SMALL_STATE(455)] = 26696, - [SMALL_STATE(456)] = 26751, - [SMALL_STATE(457)] = 26842, - [SMALL_STATE(458)] = 26897, - [SMALL_STATE(459)] = 26988, - [SMALL_STATE(460)] = 27049, - [SMALL_STATE(461)] = 27104, - [SMALL_STATE(462)] = 27159, - [SMALL_STATE(463)] = 27214, - [SMALL_STATE(464)] = 27269, - [SMALL_STATE(465)] = 27324, - [SMALL_STATE(466)] = 27379, - [SMALL_STATE(467)] = 27434, - [SMALL_STATE(468)] = 27525, - [SMALL_STATE(469)] = 27579, - [SMALL_STATE(470)] = 27633, - [SMALL_STATE(471)] = 27687, - [SMALL_STATE(472)] = 27741, - [SMALL_STATE(473)] = 27795, - [SMALL_STATE(474)] = 27849, - [SMALL_STATE(475)] = 27903, - [SMALL_STATE(476)] = 27957, - [SMALL_STATE(477)] = 28011, - [SMALL_STATE(478)] = 28065, - [SMALL_STATE(479)] = 28119, - [SMALL_STATE(480)] = 28173, - [SMALL_STATE(481)] = 28227, - [SMALL_STATE(482)] = 28281, - [SMALL_STATE(483)] = 28369, - [SMALL_STATE(484)] = 28423, - [SMALL_STATE(485)] = 28477, - [SMALL_STATE(486)] = 28531, - [SMALL_STATE(487)] = 28585, - [SMALL_STATE(488)] = 28639, - [SMALL_STATE(489)] = 28693, - [SMALL_STATE(490)] = 28747, - [SMALL_STATE(491)] = 28801, - [SMALL_STATE(492)] = 28855, - [SMALL_STATE(493)] = 28909, - [SMALL_STATE(494)] = 28963, - [SMALL_STATE(495)] = 29017, - [SMALL_STATE(496)] = 29071, - [SMALL_STATE(497)] = 29125, - [SMALL_STATE(498)] = 29179, - [SMALL_STATE(499)] = 29233, - [SMALL_STATE(500)] = 29287, - [SMALL_STATE(501)] = 29341, - [SMALL_STATE(502)] = 29395, - [SMALL_STATE(503)] = 29449, - [SMALL_STATE(504)] = 29503, - [SMALL_STATE(505)] = 29591, - [SMALL_STATE(506)] = 29645, - [SMALL_STATE(507)] = 29699, - [SMALL_STATE(508)] = 29753, - [SMALL_STATE(509)] = 29807, - [SMALL_STATE(510)] = 29861, - [SMALL_STATE(511)] = 29915, - [SMALL_STATE(512)] = 29969, - [SMALL_STATE(513)] = 30023, - [SMALL_STATE(514)] = 30077, - [SMALL_STATE(515)] = 30131, - [SMALL_STATE(516)] = 30185, - [SMALL_STATE(517)] = 30239, - [SMALL_STATE(518)] = 30293, - [SMALL_STATE(519)] = 30347, - [SMALL_STATE(520)] = 30401, - [SMALL_STATE(521)] = 30455, - [SMALL_STATE(522)] = 30509, - [SMALL_STATE(523)] = 30563, - [SMALL_STATE(524)] = 30617, - [SMALL_STATE(525)] = 30671, - [SMALL_STATE(526)] = 30725, - [SMALL_STATE(527)] = 30779, - [SMALL_STATE(528)] = 30833, - [SMALL_STATE(529)] = 30887, - [SMALL_STATE(530)] = 30941, - [SMALL_STATE(531)] = 30995, - [SMALL_STATE(532)] = 31049, - [SMALL_STATE(533)] = 31103, - [SMALL_STATE(534)] = 31157, - [SMALL_STATE(535)] = 31211, - [SMALL_STATE(536)] = 31265, - [SMALL_STATE(537)] = 31319, - [SMALL_STATE(538)] = 31373, - [SMALL_STATE(539)] = 31427, - [SMALL_STATE(540)] = 31481, - [SMALL_STATE(541)] = 31535, - [SMALL_STATE(542)] = 31589, - [SMALL_STATE(543)] = 31643, - [SMALL_STATE(544)] = 31697, - [SMALL_STATE(545)] = 31751, - [SMALL_STATE(546)] = 31805, - [SMALL_STATE(547)] = 31859, - [SMALL_STATE(548)] = 31913, - [SMALL_STATE(549)] = 31967, - [SMALL_STATE(550)] = 32021, - [SMALL_STATE(551)] = 32075, - [SMALL_STATE(552)] = 32129, - [SMALL_STATE(553)] = 32183, - [SMALL_STATE(554)] = 32237, - [SMALL_STATE(555)] = 32291, - [SMALL_STATE(556)] = 32345, - [SMALL_STATE(557)] = 32399, - [SMALL_STATE(558)] = 32453, - [SMALL_STATE(559)] = 32507, - [SMALL_STATE(560)] = 32561, - [SMALL_STATE(561)] = 32615, - [SMALL_STATE(562)] = 32669, - [SMALL_STATE(563)] = 32723, - [SMALL_STATE(564)] = 32777, - [SMALL_STATE(565)] = 32831, - [SMALL_STATE(566)] = 32885, - [SMALL_STATE(567)] = 32939, - [SMALL_STATE(568)] = 32993, - [SMALL_STATE(569)] = 33075, - [SMALL_STATE(570)] = 33130, - [SMALL_STATE(571)] = 33185, - [SMALL_STATE(572)] = 33240, - [SMALL_STATE(573)] = 33295, - [SMALL_STATE(574)] = 33350, - [SMALL_STATE(575)] = 33405, - [SMALL_STATE(576)] = 33481, - [SMALL_STATE(577)] = 33557, - [SMALL_STATE(578)] = 33633, - [SMALL_STATE(579)] = 33709, - [SMALL_STATE(580)] = 33782, - [SMALL_STATE(581)] = 33831, - [SMALL_STATE(582)] = 33880, - [SMALL_STATE(583)] = 33953, - [SMALL_STATE(584)] = 34026, - [SMALL_STATE(585)] = 34075, - [SMALL_STATE(586)] = 34148, - [SMALL_STATE(587)] = 34221, - [SMALL_STATE(588)] = 34294, - [SMALL_STATE(589)] = 34367, - [SMALL_STATE(590)] = 34440, - [SMALL_STATE(591)] = 34513, - [SMALL_STATE(592)] = 34586, - [SMALL_STATE(593)] = 34659, - [SMALL_STATE(594)] = 34732, - [SMALL_STATE(595)] = 34805, - [SMALL_STATE(596)] = 34882, - [SMALL_STATE(597)] = 34955, - [SMALL_STATE(598)] = 35028, - [SMALL_STATE(599)] = 35101, - [SMALL_STATE(600)] = 35174, - [SMALL_STATE(601)] = 35247, - [SMALL_STATE(602)] = 35320, - [SMALL_STATE(603)] = 35393, - [SMALL_STATE(604)] = 35466, - [SMALL_STATE(605)] = 35539, - [SMALL_STATE(606)] = 35612, - [SMALL_STATE(607)] = 35685, - [SMALL_STATE(608)] = 35758, - [SMALL_STATE(609)] = 35831, - [SMALL_STATE(610)] = 35904, - [SMALL_STATE(611)] = 35977, - [SMALL_STATE(612)] = 36050, - [SMALL_STATE(613)] = 36123, - [SMALL_STATE(614)] = 36196, - [SMALL_STATE(615)] = 36269, - [SMALL_STATE(616)] = 36342, - [SMALL_STATE(617)] = 36415, - [SMALL_STATE(618)] = 36488, - [SMALL_STATE(619)] = 36561, - [SMALL_STATE(620)] = 36634, - [SMALL_STATE(621)] = 36707, - [SMALL_STATE(622)] = 36780, - [SMALL_STATE(623)] = 36853, - [SMALL_STATE(624)] = 36930, - [SMALL_STATE(625)] = 36979, - [SMALL_STATE(626)] = 37052, - [SMALL_STATE(627)] = 37125, - [SMALL_STATE(628)] = 37198, - [SMALL_STATE(629)] = 37271, - [SMALL_STATE(630)] = 37319, - [SMALL_STATE(631)] = 37367, - [SMALL_STATE(632)] = 37415, - [SMALL_STATE(633)] = 37463, - [SMALL_STATE(634)] = 37511, - [SMALL_STATE(635)] = 37559, - [SMALL_STATE(636)] = 37607, - [SMALL_STATE(637)] = 37655, - [SMALL_STATE(638)] = 37703, - [SMALL_STATE(639)] = 37751, - [SMALL_STATE(640)] = 37799, - [SMALL_STATE(641)] = 37847, - [SMALL_STATE(642)] = 37895, - [SMALL_STATE(643)] = 37943, - [SMALL_STATE(644)] = 37991, - [SMALL_STATE(645)] = 38039, - [SMALL_STATE(646)] = 38087, - [SMALL_STATE(647)] = 38135, - [SMALL_STATE(648)] = 38183, - [SMALL_STATE(649)] = 38231, - [SMALL_STATE(650)] = 38279, - [SMALL_STATE(651)] = 38327, - [SMALL_STATE(652)] = 38375, - [SMALL_STATE(653)] = 38457, - [SMALL_STATE(654)] = 38539, - [SMALL_STATE(655)] = 38587, - [SMALL_STATE(656)] = 38635, - [SMALL_STATE(657)] = 38683, - [SMALL_STATE(658)] = 38731, - [SMALL_STATE(659)] = 38779, - [SMALL_STATE(660)] = 38827, - [SMALL_STATE(661)] = 38875, - [SMALL_STATE(662)] = 38923, - [SMALL_STATE(663)] = 38980, - [SMALL_STATE(664)] = 39051, - [SMALL_STATE(665)] = 39122, - [SMALL_STATE(666)] = 39193, - [SMALL_STATE(667)] = 39264, - [SMALL_STATE(668)] = 39335, - [SMALL_STATE(669)] = 39400, - [SMALL_STATE(670)] = 39457, - [SMALL_STATE(671)] = 39514, - [SMALL_STATE(672)] = 39571, - [SMALL_STATE(673)] = 39628, - [SMALL_STATE(674)] = 39699, - [SMALL_STATE(675)] = 39768, - [SMALL_STATE(676)] = 39825, - [SMALL_STATE(677)] = 39882, - [SMALL_STATE(678)] = 39945, - [SMALL_STATE(679)] = 40008, - [SMALL_STATE(680)] = 40075, - [SMALL_STATE(681)] = 40140, - [SMALL_STATE(682)] = 40207, - [SMALL_STATE(683)] = 40276, - [SMALL_STATE(684)] = 40337, - [SMALL_STATE(685)] = 40394, - [SMALL_STATE(686)] = 40455, - [SMALL_STATE(687)] = 40505, - [SMALL_STATE(688)] = 40553, - [SMALL_STATE(689)] = 40603, - [SMALL_STATE(690)] = 40653, - [SMALL_STATE(691)] = 40699, - [SMALL_STATE(692)] = 40749, - [SMALL_STATE(693)] = 40797, - [SMALL_STATE(694)] = 40845, - [SMALL_STATE(695)] = 40893, - [SMALL_STATE(696)] = 40939, - [SMALL_STATE(697)] = 40988, - [SMALL_STATE(698)] = 41033, - [SMALL_STATE(699)] = 41082, - [SMALL_STATE(700)] = 41131, - [SMALL_STATE(701)] = 41180, - [SMALL_STATE(702)] = 41229, - [SMALL_STATE(703)] = 41308, - [SMALL_STATE(704)] = 41353, - [SMALL_STATE(705)] = 41402, - [SMALL_STATE(706)] = 41466, - [SMALL_STATE(707)] = 41534, - [SMALL_STATE(708)] = 41592, - [SMALL_STATE(709)] = 41646, - [SMALL_STATE(710)] = 41690, - [SMALL_STATE(711)] = 41752, - [SMALL_STATE(712)] = 41806, - [SMALL_STATE(713)] = 41860, - [SMALL_STATE(714)] = 41928, - [SMALL_STATE(715)] = 41994, - [SMALL_STATE(716)] = 42038, - [SMALL_STATE(717)] = 42082, - [SMALL_STATE(718)] = 42150, - [SMALL_STATE(719)] = 42226, - [SMALL_STATE(720)] = 42270, - [SMALL_STATE(721)] = 42318, - [SMALL_STATE(722)] = 42378, - [SMALL_STATE(723)] = 42426, - [SMALL_STATE(724)] = 42480, - [SMALL_STATE(725)] = 42525, - [SMALL_STATE(726)] = 42568, - [SMALL_STATE(727)] = 42611, - [SMALL_STATE(728)] = 42656, - [SMALL_STATE(729)] = 42737, - [SMALL_STATE(730)] = 42784, - [SMALL_STATE(731)] = 42829, - [SMALL_STATE(732)] = 42874, - [SMALL_STATE(733)] = 42919, - [SMALL_STATE(734)] = 43000, - [SMALL_STATE(735)] = 43067, - [SMALL_STATE(736)] = 43112, - [SMALL_STATE(737)] = 43179, - [SMALL_STATE(738)] = 43260, - [SMALL_STATE(739)] = 43305, - [SMALL_STATE(740)] = 43366, - [SMALL_STATE(741)] = 43411, - [SMALL_STATE(742)] = 43474, - [SMALL_STATE(743)] = 43527, - [SMALL_STATE(744)] = 43570, - [SMALL_STATE(745)] = 43627, - [SMALL_STATE(746)] = 43692, - [SMALL_STATE(747)] = 43745, - [SMALL_STATE(748)] = 43792, - [SMALL_STATE(749)] = 43845, - [SMALL_STATE(750)] = 43892, - [SMALL_STATE(751)] = 43973, - [SMALL_STATE(752)] = 44040, - [SMALL_STATE(753)] = 44099, - [SMALL_STATE(754)] = 44152, - [SMALL_STATE(755)] = 44199, - [SMALL_STATE(756)] = 44242, - [SMALL_STATE(757)] = 44286, - [SMALL_STATE(758)] = 44328, - [SMALL_STATE(759)] = 44370, - [SMALL_STATE(760)] = 44412, - [SMALL_STATE(761)] = 44454, - [SMALL_STATE(762)] = 44496, - [SMALL_STATE(763)] = 44540, - [SMALL_STATE(764)] = 44582, - [SMALL_STATE(765)] = 44624, - [SMALL_STATE(766)] = 44704, - [SMALL_STATE(767)] = 44782, - [SMALL_STATE(768)] = 44824, - [SMALL_STATE(769)] = 44902, - [SMALL_STATE(770)] = 44944, - [SMALL_STATE(771)] = 44988, - [SMALL_STATE(772)] = 45066, - [SMALL_STATE(773)] = 45108, - [SMALL_STATE(774)] = 45186, - [SMALL_STATE(775)] = 45264, - [SMALL_STATE(776)] = 45306, - [SMALL_STATE(777)] = 45348, - [SMALL_STATE(778)] = 45390, - [SMALL_STATE(779)] = 45434, - [SMALL_STATE(780)] = 45476, - [SMALL_STATE(781)] = 45518, - [SMALL_STATE(782)] = 45560, - [SMALL_STATE(783)] = 45602, - [SMALL_STATE(784)] = 45644, - [SMALL_STATE(785)] = 45686, - [SMALL_STATE(786)] = 45728, - [SMALL_STATE(787)] = 45770, - [SMALL_STATE(788)] = 45812, - [SMALL_STATE(789)] = 45854, - [SMALL_STATE(790)] = 45896, - [SMALL_STATE(791)] = 45938, - [SMALL_STATE(792)] = 45980, - [SMALL_STATE(793)] = 46022, - [SMALL_STATE(794)] = 46064, - [SMALL_STATE(795)] = 46106, - [SMALL_STATE(796)] = 46148, - [SMALL_STATE(797)] = 46192, - [SMALL_STATE(798)] = 46234, - [SMALL_STATE(799)] = 46276, - [SMALL_STATE(800)] = 46318, - [SMALL_STATE(801)] = 46359, - [SMALL_STATE(802)] = 46400, - [SMALL_STATE(803)] = 46441, - [SMALL_STATE(804)] = 46486, - [SMALL_STATE(805)] = 46565, - [SMALL_STATE(806)] = 46606, - [SMALL_STATE(807)] = 46647, - [SMALL_STATE(808)] = 46722, - [SMALL_STATE(809)] = 46763, - [SMALL_STATE(810)] = 46804, - [SMALL_STATE(811)] = 46883, - [SMALL_STATE(812)] = 46924, - [SMALL_STATE(813)] = 46965, - [SMALL_STATE(814)] = 47006, - [SMALL_STATE(815)] = 47047, - [SMALL_STATE(816)] = 47088, - [SMALL_STATE(817)] = 47129, - [SMALL_STATE(818)] = 47170, - [SMALL_STATE(819)] = 47211, - [SMALL_STATE(820)] = 47252, - [SMALL_STATE(821)] = 47293, - [SMALL_STATE(822)] = 47334, - [SMALL_STATE(823)] = 47375, - [SMALL_STATE(824)] = 47454, - [SMALL_STATE(825)] = 47495, - [SMALL_STATE(826)] = 47540, - [SMALL_STATE(827)] = 47581, - [SMALL_STATE(828)] = 47622, - [SMALL_STATE(829)] = 47663, - [SMALL_STATE(830)] = 47704, - [SMALL_STATE(831)] = 47745, - [SMALL_STATE(832)] = 47786, - [SMALL_STATE(833)] = 47827, - [SMALL_STATE(834)] = 47868, - [SMALL_STATE(835)] = 47909, - [SMALL_STATE(836)] = 47950, - [SMALL_STATE(837)] = 47991, - [SMALL_STATE(838)] = 48032, - [SMALL_STATE(839)] = 48073, - [SMALL_STATE(840)] = 48146, - [SMALL_STATE(841)] = 48216, - [SMALL_STATE(842)] = 48286, - [SMALL_STATE(843)] = 48348, - [SMALL_STATE(844)] = 48410, - [SMALL_STATE(845)] = 48450, - [SMALL_STATE(846)] = 48490, - [SMALL_STATE(847)] = 48530, - [SMALL_STATE(848)] = 48570, - [SMALL_STATE(849)] = 48600, - [SMALL_STATE(850)] = 48625, - [SMALL_STATE(851)] = 48662, - [SMALL_STATE(852)] = 48715, - [SMALL_STATE(853)] = 48744, - [SMALL_STATE(854)] = 48769, - [SMALL_STATE(855)] = 48794, - [SMALL_STATE(856)] = 48847, - [SMALL_STATE(857)] = 48884, - [SMALL_STATE(858)] = 48909, - [SMALL_STATE(859)] = 48962, - [SMALL_STATE(860)] = 48991, - [SMALL_STATE(861)] = 49025, - [SMALL_STATE(862)] = 49053, - [SMALL_STATE(863)] = 49099, - [SMALL_STATE(864)] = 49133, - [SMALL_STATE(865)] = 49176, - [SMALL_STATE(866)] = 49219, - [SMALL_STATE(867)] = 49262, - [SMALL_STATE(868)] = 49293, - [SMALL_STATE(869)] = 49336, - [SMALL_STATE(870)] = 49379, - [SMALL_STATE(871)] = 49423, - [SMALL_STATE(872)] = 49463, - [SMALL_STATE(873)] = 49500, - [SMALL_STATE(874)] = 49537, - [SMALL_STATE(875)] = 49562, - [SMALL_STATE(876)] = 49599, - [SMALL_STATE(877)] = 49636, - [SMALL_STATE(878)] = 49670, - [SMALL_STATE(879)] = 49704, - [SMALL_STATE(880)] = 49726, - [SMALL_STATE(881)] = 49748, - [SMALL_STATE(882)] = 49770, - [SMALL_STATE(883)] = 49793, - [SMALL_STATE(884)] = 49814, - [SMALL_STATE(885)] = 49837, - [SMALL_STATE(886)] = 49864, - [SMALL_STATE(887)] = 49901, - [SMALL_STATE(888)] = 49938, - [SMALL_STATE(889)] = 49963, - [SMALL_STATE(890)] = 49986, - [SMALL_STATE(891)] = 50009, - [SMALL_STATE(892)] = 50030, - [SMALL_STATE(893)] = 50051, - [SMALL_STATE(894)] = 50074, - [SMALL_STATE(895)] = 50091, - [SMALL_STATE(896)] = 50114, - [SMALL_STATE(897)] = 50135, - [SMALL_STATE(898)] = 50156, - [SMALL_STATE(899)] = 50181, - [SMALL_STATE(900)] = 50204, - [SMALL_STATE(901)] = 50223, - [SMALL_STATE(902)] = 50244, - [SMALL_STATE(903)] = 50267, - [SMALL_STATE(904)] = 50304, - [SMALL_STATE(905)] = 50329, - [SMALL_STATE(906)] = 50366, - [SMALL_STATE(907)] = 50396, - [SMALL_STATE(908)] = 50426, - [SMALL_STATE(909)] = 50460, - [SMALL_STATE(910)] = 50494, - [SMALL_STATE(911)] = 50516, - [SMALL_STATE(912)] = 50550, - [SMALL_STATE(913)] = 50584, - [SMALL_STATE(914)] = 50614, - [SMALL_STATE(915)] = 50644, - [SMALL_STATE(916)] = 50674, - [SMALL_STATE(917)] = 50704, - [SMALL_STATE(918)] = 50722, - [SMALL_STATE(919)] = 50752, - [SMALL_STATE(920)] = 50782, - [SMALL_STATE(921)] = 50812, - [SMALL_STATE(922)] = 50846, - [SMALL_STATE(923)] = 50876, - [SMALL_STATE(924)] = 50906, - [SMALL_STATE(925)] = 50924, - [SMALL_STATE(926)] = 50954, - [SMALL_STATE(927)] = 50984, - [SMALL_STATE(928)] = 51006, - [SMALL_STATE(929)] = 51040, - [SMALL_STATE(930)] = 51070, - [SMALL_STATE(931)] = 51104, - [SMALL_STATE(932)] = 51126, - [SMALL_STATE(933)] = 51156, - [SMALL_STATE(934)] = 51190, - [SMALL_STATE(935)] = 51212, - [SMALL_STATE(936)] = 51246, - [SMALL_STATE(937)] = 51269, - [SMALL_STATE(938)] = 51288, - [SMALL_STATE(939)] = 51307, - [SMALL_STATE(940)] = 51326, - [SMALL_STATE(941)] = 51351, - [SMALL_STATE(942)] = 51370, - [SMALL_STATE(943)] = 51393, - [SMALL_STATE(944)] = 51416, - [SMALL_STATE(945)] = 51435, - [SMALL_STATE(946)] = 51454, - [SMALL_STATE(947)] = 51468, - [SMALL_STATE(948)] = 51482, - [SMALL_STATE(949)] = 51496, - [SMALL_STATE(950)] = 51510, - [SMALL_STATE(951)] = 51524, - [SMALL_STATE(952)] = 51542, - [SMALL_STATE(953)] = 51556, - [SMALL_STATE(954)] = 51576, - [SMALL_STATE(955)] = 51590, - [SMALL_STATE(956)] = 51604, - [SMALL_STATE(957)] = 51618, - [SMALL_STATE(958)] = 51632, - [SMALL_STATE(959)] = 51650, - [SMALL_STATE(960)] = 51664, - [SMALL_STATE(961)] = 51688, - [SMALL_STATE(962)] = 51712, - [SMALL_STATE(963)] = 51726, - [SMALL_STATE(964)] = 51746, - [SMALL_STATE(965)] = 51760, - [SMALL_STATE(966)] = 51774, - [SMALL_STATE(967)] = 51788, - [SMALL_STATE(968)] = 51806, - [SMALL_STATE(969)] = 51820, - [SMALL_STATE(970)] = 51838, - [SMALL_STATE(971)] = 51854, - [SMALL_STATE(972)] = 51868, - [SMALL_STATE(973)] = 51882, - [SMALL_STATE(974)] = 51900, - [SMALL_STATE(975)] = 51914, - [SMALL_STATE(976)] = 51928, - [SMALL_STATE(977)] = 51946, - [SMALL_STATE(978)] = 51960, - [SMALL_STATE(979)] = 51978, - [SMALL_STATE(980)] = 51998, - [SMALL_STATE(981)] = 52014, - [SMALL_STATE(982)] = 52036, - [SMALL_STATE(983)] = 52054, - [SMALL_STATE(984)] = 52068, - [SMALL_STATE(985)] = 52086, - [SMALL_STATE(986)] = 52106, - [SMALL_STATE(987)] = 52124, - [SMALL_STATE(988)] = 52142, - [SMALL_STATE(989)] = 52160, - [SMALL_STATE(990)] = 52186, - [SMALL_STATE(991)] = 52200, - [SMALL_STATE(992)] = 52214, - [SMALL_STATE(993)] = 52233, - [SMALL_STATE(994)] = 52252, - [SMALL_STATE(995)] = 52269, - [SMALL_STATE(996)] = 52290, - [SMALL_STATE(997)] = 52303, - [SMALL_STATE(998)] = 52324, - [SMALL_STATE(999)] = 52345, - [SMALL_STATE(1000)] = 52366, - [SMALL_STATE(1001)] = 52391, - [SMALL_STATE(1002)] = 52404, - [SMALL_STATE(1003)] = 52423, - [SMALL_STATE(1004)] = 52442, - [SMALL_STATE(1005)] = 52461, - [SMALL_STATE(1006)] = 52484, - [SMALL_STATE(1007)] = 52509, - [SMALL_STATE(1008)] = 52528, - [SMALL_STATE(1009)] = 52551, - [SMALL_STATE(1010)] = 52574, - [SMALL_STATE(1011)] = 52587, - [SMALL_STATE(1012)] = 52608, - [SMALL_STATE(1013)] = 52631, - [SMALL_STATE(1014)] = 52654, - [SMALL_STATE(1015)] = 52669, - [SMALL_STATE(1016)] = 52688, - [SMALL_STATE(1017)] = 52707, - [SMALL_STATE(1018)] = 52732, - [SMALL_STATE(1019)] = 52745, - [SMALL_STATE(1020)] = 52758, - [SMALL_STATE(1021)] = 52771, - [SMALL_STATE(1022)] = 52788, - [SMALL_STATE(1023)] = 52807, - [SMALL_STATE(1024)] = 52820, - [SMALL_STATE(1025)] = 52835, - [SMALL_STATE(1026)] = 52860, - [SMALL_STATE(1027)] = 52883, - [SMALL_STATE(1028)] = 52900, - [SMALL_STATE(1029)] = 52925, - [SMALL_STATE(1030)] = 52944, - [SMALL_STATE(1031)] = 52967, - [SMALL_STATE(1032)] = 52990, - [SMALL_STATE(1033)] = 53013, - [SMALL_STATE(1034)] = 53038, - [SMALL_STATE(1035)] = 53063, - [SMALL_STATE(1036)] = 53084, - [SMALL_STATE(1037)] = 53109, - [SMALL_STATE(1038)] = 53130, - [SMALL_STATE(1039)] = 53146, - [SMALL_STATE(1040)] = 53162, - [SMALL_STATE(1041)] = 53184, - [SMALL_STATE(1042)] = 53200, - [SMALL_STATE(1043)] = 53220, - [SMALL_STATE(1044)] = 53238, - [SMALL_STATE(1045)] = 53252, - [SMALL_STATE(1046)] = 53268, - [SMALL_STATE(1047)] = 53282, - [SMALL_STATE(1048)] = 53298, - [SMALL_STATE(1049)] = 53312, - [SMALL_STATE(1050)] = 53332, - [SMALL_STATE(1051)] = 53354, - [SMALL_STATE(1052)] = 53370, - [SMALL_STATE(1053)] = 53392, - [SMALL_STATE(1054)] = 53410, - [SMALL_STATE(1055)] = 53424, - [SMALL_STATE(1056)] = 53446, - [SMALL_STATE(1057)] = 53460, - [SMALL_STATE(1058)] = 53476, - [SMALL_STATE(1059)] = 53494, - [SMALL_STATE(1060)] = 53512, - [SMALL_STATE(1061)] = 53534, - [SMALL_STATE(1062)] = 53546, - [SMALL_STATE(1063)] = 53566, - [SMALL_STATE(1064)] = 53584, - [SMALL_STATE(1065)] = 53602, - [SMALL_STATE(1066)] = 53624, - [SMALL_STATE(1067)] = 53646, - [SMALL_STATE(1068)] = 53660, - [SMALL_STATE(1069)] = 53678, - [SMALL_STATE(1070)] = 53696, - [SMALL_STATE(1071)] = 53708, - [SMALL_STATE(1072)] = 53728, - [SMALL_STATE(1073)] = 53747, - [SMALL_STATE(1074)] = 53764, - [SMALL_STATE(1075)] = 53783, - [SMALL_STATE(1076)] = 53800, - [SMALL_STATE(1077)] = 53819, - [SMALL_STATE(1078)] = 53834, - [SMALL_STATE(1079)] = 53849, - [SMALL_STATE(1080)] = 53864, - [SMALL_STATE(1081)] = 53881, - [SMALL_STATE(1082)] = 53898, - [SMALL_STATE(1083)] = 53913, - [SMALL_STATE(1084)] = 53930, - [SMALL_STATE(1085)] = 53949, - [SMALL_STATE(1086)] = 53966, - [SMALL_STATE(1087)] = 53977, - [SMALL_STATE(1088)] = 53994, - [SMALL_STATE(1089)] = 54013, - [SMALL_STATE(1090)] = 54024, - [SMALL_STATE(1091)] = 54041, - [SMALL_STATE(1092)] = 54058, - [SMALL_STATE(1093)] = 54075, - [SMALL_STATE(1094)] = 54092, - [SMALL_STATE(1095)] = 54109, - [SMALL_STATE(1096)] = 54124, - [SMALL_STATE(1097)] = 54139, - [SMALL_STATE(1098)] = 54156, - [SMALL_STATE(1099)] = 54175, - [SMALL_STATE(1100)] = 54190, - [SMALL_STATE(1101)] = 54207, - [SMALL_STATE(1102)] = 54224, - [SMALL_STATE(1103)] = 54241, - [SMALL_STATE(1104)] = 54260, - [SMALL_STATE(1105)] = 54279, - [SMALL_STATE(1106)] = 54296, - [SMALL_STATE(1107)] = 54313, - [SMALL_STATE(1108)] = 54324, - [SMALL_STATE(1109)] = 54340, - [SMALL_STATE(1110)] = 54354, - [SMALL_STATE(1111)] = 54368, - [SMALL_STATE(1112)] = 54382, - [SMALL_STATE(1113)] = 54398, - [SMALL_STATE(1114)] = 54414, - [SMALL_STATE(1115)] = 54428, - [SMALL_STATE(1116)] = 54442, - [SMALL_STATE(1117)] = 54456, - [SMALL_STATE(1118)] = 54466, - [SMALL_STATE(1119)] = 54476, - [SMALL_STATE(1120)] = 54490, - [SMALL_STATE(1121)] = 54504, - [SMALL_STATE(1122)] = 54516, - [SMALL_STATE(1123)] = 54526, - [SMALL_STATE(1124)] = 54536, - [SMALL_STATE(1125)] = 54550, - [SMALL_STATE(1126)] = 54566, - [SMALL_STATE(1127)] = 54582, - [SMALL_STATE(1128)] = 54598, - [SMALL_STATE(1129)] = 54614, - [SMALL_STATE(1130)] = 54630, - [SMALL_STATE(1131)] = 54644, - [SMALL_STATE(1132)] = 54658, - [SMALL_STATE(1133)] = 54670, - [SMALL_STATE(1134)] = 54684, - [SMALL_STATE(1135)] = 54698, - [SMALL_STATE(1136)] = 54712, - [SMALL_STATE(1137)] = 54728, - [SMALL_STATE(1138)] = 54742, - [SMALL_STATE(1139)] = 54756, - [SMALL_STATE(1140)] = 54772, - [SMALL_STATE(1141)] = 54788, - [SMALL_STATE(1142)] = 54802, - [SMALL_STATE(1143)] = 54818, - [SMALL_STATE(1144)] = 54832, - [SMALL_STATE(1145)] = 54846, - [SMALL_STATE(1146)] = 54860, - [SMALL_STATE(1147)] = 54876, - [SMALL_STATE(1148)] = 54890, - [SMALL_STATE(1149)] = 54904, - [SMALL_STATE(1150)] = 54920, - [SMALL_STATE(1151)] = 54936, - [SMALL_STATE(1152)] = 54952, - [SMALL_STATE(1153)] = 54966, - [SMALL_STATE(1154)] = 54982, - [SMALL_STATE(1155)] = 54998, - [SMALL_STATE(1156)] = 55012, - [SMALL_STATE(1157)] = 55026, - [SMALL_STATE(1158)] = 55040, - [SMALL_STATE(1159)] = 55056, - [SMALL_STATE(1160)] = 55070, - [SMALL_STATE(1161)] = 55086, - [SMALL_STATE(1162)] = 55102, - [SMALL_STATE(1163)] = 55118, - [SMALL_STATE(1164)] = 55134, - [SMALL_STATE(1165)] = 55150, - [SMALL_STATE(1166)] = 55166, - [SMALL_STATE(1167)] = 55182, - [SMALL_STATE(1168)] = 55196, - [SMALL_STATE(1169)] = 55206, - [SMALL_STATE(1170)] = 55222, - [SMALL_STATE(1171)] = 55238, - [SMALL_STATE(1172)] = 55252, - [SMALL_STATE(1173)] = 55268, - [SMALL_STATE(1174)] = 55278, - [SMALL_STATE(1175)] = 55292, - [SMALL_STATE(1176)] = 55306, - [SMALL_STATE(1177)] = 55320, - [SMALL_STATE(1178)] = 55334, - [SMALL_STATE(1179)] = 55348, - [SMALL_STATE(1180)] = 55364, - [SMALL_STATE(1181)] = 55377, - [SMALL_STATE(1182)] = 55390, - [SMALL_STATE(1183)] = 55403, - [SMALL_STATE(1184)] = 55416, - [SMALL_STATE(1185)] = 55427, - [SMALL_STATE(1186)] = 55436, - [SMALL_STATE(1187)] = 55445, - [SMALL_STATE(1188)] = 55458, - [SMALL_STATE(1189)] = 55471, - [SMALL_STATE(1190)] = 55484, - [SMALL_STATE(1191)] = 55497, - [SMALL_STATE(1192)] = 55508, - [SMALL_STATE(1193)] = 55521, - [SMALL_STATE(1194)] = 55534, - [SMALL_STATE(1195)] = 55547, - [SMALL_STATE(1196)] = 55556, - [SMALL_STATE(1197)] = 55569, - [SMALL_STATE(1198)] = 55582, - [SMALL_STATE(1199)] = 55595, - [SMALL_STATE(1200)] = 55604, - [SMALL_STATE(1201)] = 55617, - [SMALL_STATE(1202)] = 55630, - [SMALL_STATE(1203)] = 55643, - [SMALL_STATE(1204)] = 55656, - [SMALL_STATE(1205)] = 55669, - [SMALL_STATE(1206)] = 55682, - [SMALL_STATE(1207)] = 55695, - [SMALL_STATE(1208)] = 55708, - [SMALL_STATE(1209)] = 55721, - [SMALL_STATE(1210)] = 55730, - [SMALL_STATE(1211)] = 55743, - [SMALL_STATE(1212)] = 55756, - [SMALL_STATE(1213)] = 55769, - [SMALL_STATE(1214)] = 55782, - [SMALL_STATE(1215)] = 55795, - [SMALL_STATE(1216)] = 55808, - [SMALL_STATE(1217)] = 55821, - [SMALL_STATE(1218)] = 55832, - [SMALL_STATE(1219)] = 55845, - [SMALL_STATE(1220)] = 55858, - [SMALL_STATE(1221)] = 55871, - [SMALL_STATE(1222)] = 55884, - [SMALL_STATE(1223)] = 55895, - [SMALL_STATE(1224)] = 55908, - [SMALL_STATE(1225)] = 55921, - [SMALL_STATE(1226)] = 55934, - [SMALL_STATE(1227)] = 55945, - [SMALL_STATE(1228)] = 55958, - [SMALL_STATE(1229)] = 55969, - [SMALL_STATE(1230)] = 55982, - [SMALL_STATE(1231)] = 55995, - [SMALL_STATE(1232)] = 56008, - [SMALL_STATE(1233)] = 56021, - [SMALL_STATE(1234)] = 56034, - [SMALL_STATE(1235)] = 56047, - [SMALL_STATE(1236)] = 56060, - [SMALL_STATE(1237)] = 56073, - [SMALL_STATE(1238)] = 56086, - [SMALL_STATE(1239)] = 56099, - [SMALL_STATE(1240)] = 56112, - [SMALL_STATE(1241)] = 56125, - [SMALL_STATE(1242)] = 56136, - [SMALL_STATE(1243)] = 56149, - [SMALL_STATE(1244)] = 56162, - [SMALL_STATE(1245)] = 56175, - [SMALL_STATE(1246)] = 56186, - [SMALL_STATE(1247)] = 56199, - [SMALL_STATE(1248)] = 56212, - [SMALL_STATE(1249)] = 56225, - [SMALL_STATE(1250)] = 56238, - [SMALL_STATE(1251)] = 56251, - [SMALL_STATE(1252)] = 56264, - [SMALL_STATE(1253)] = 56277, - [SMALL_STATE(1254)] = 56290, - [SMALL_STATE(1255)] = 56301, - [SMALL_STATE(1256)] = 56312, - [SMALL_STATE(1257)] = 56323, - [SMALL_STATE(1258)] = 56336, - [SMALL_STATE(1259)] = 56349, - [SMALL_STATE(1260)] = 56362, - [SMALL_STATE(1261)] = 56375, - [SMALL_STATE(1262)] = 56388, - [SMALL_STATE(1263)] = 56397, - [SMALL_STATE(1264)] = 56410, - [SMALL_STATE(1265)] = 56423, - [SMALL_STATE(1266)] = 56436, - [SMALL_STATE(1267)] = 56449, - [SMALL_STATE(1268)] = 56462, - [SMALL_STATE(1269)] = 56471, - [SMALL_STATE(1270)] = 56484, - [SMALL_STATE(1271)] = 56497, - [SMALL_STATE(1272)] = 56508, - [SMALL_STATE(1273)] = 56521, - [SMALL_STATE(1274)] = 56534, - [SMALL_STATE(1275)] = 56547, - [SMALL_STATE(1276)] = 56560, - [SMALL_STATE(1277)] = 56573, - [SMALL_STATE(1278)] = 56586, - [SMALL_STATE(1279)] = 56595, - [SMALL_STATE(1280)] = 56608, - [SMALL_STATE(1281)] = 56621, - [SMALL_STATE(1282)] = 56634, - [SMALL_STATE(1283)] = 56643, - [SMALL_STATE(1284)] = 56656, - [SMALL_STATE(1285)] = 56669, - [SMALL_STATE(1286)] = 56682, - [SMALL_STATE(1287)] = 56695, - [SMALL_STATE(1288)] = 56708, - [SMALL_STATE(1289)] = 56717, - [SMALL_STATE(1290)] = 56726, - [SMALL_STATE(1291)] = 56735, - [SMALL_STATE(1292)] = 56748, - [SMALL_STATE(1293)] = 56757, - [SMALL_STATE(1294)] = 56770, - [SMALL_STATE(1295)] = 56783, - [SMALL_STATE(1296)] = 56796, - [SMALL_STATE(1297)] = 56809, - [SMALL_STATE(1298)] = 56822, - [SMALL_STATE(1299)] = 56831, - [SMALL_STATE(1300)] = 56844, - [SMALL_STATE(1301)] = 56857, - [SMALL_STATE(1302)] = 56870, - [SMALL_STATE(1303)] = 56883, - [SMALL_STATE(1304)] = 56896, - [SMALL_STATE(1305)] = 56909, - [SMALL_STATE(1306)] = 56922, - [SMALL_STATE(1307)] = 56935, - [SMALL_STATE(1308)] = 56944, - [SMALL_STATE(1309)] = 56957, - [SMALL_STATE(1310)] = 56970, - [SMALL_STATE(1311)] = 56978, - [SMALL_STATE(1312)] = 56986, - [SMALL_STATE(1313)] = 56994, - [SMALL_STATE(1314)] = 57004, - [SMALL_STATE(1315)] = 57012, - [SMALL_STATE(1316)] = 57020, - [SMALL_STATE(1317)] = 57028, - [SMALL_STATE(1318)] = 57038, - [SMALL_STATE(1319)] = 57046, - [SMALL_STATE(1320)] = 57056, - [SMALL_STATE(1321)] = 57066, - [SMALL_STATE(1322)] = 57074, - [SMALL_STATE(1323)] = 57084, - [SMALL_STATE(1324)] = 57092, - [SMALL_STATE(1325)] = 57100, - [SMALL_STATE(1326)] = 57108, - [SMALL_STATE(1327)] = 57116, - [SMALL_STATE(1328)] = 57124, - [SMALL_STATE(1329)] = 57134, - [SMALL_STATE(1330)] = 57142, - [SMALL_STATE(1331)] = 57150, - [SMALL_STATE(1332)] = 57158, - [SMALL_STATE(1333)] = 57166, - [SMALL_STATE(1334)] = 57174, - [SMALL_STATE(1335)] = 57182, - [SMALL_STATE(1336)] = 57190, - [SMALL_STATE(1337)] = 57200, - [SMALL_STATE(1338)] = 57210, - [SMALL_STATE(1339)] = 57218, - [SMALL_STATE(1340)] = 57228, - [SMALL_STATE(1341)] = 57236, - [SMALL_STATE(1342)] = 57246, - [SMALL_STATE(1343)] = 57256, - [SMALL_STATE(1344)] = 57264, - [SMALL_STATE(1345)] = 57272, - [SMALL_STATE(1346)] = 57282, - [SMALL_STATE(1347)] = 57292, - [SMALL_STATE(1348)] = 57302, - [SMALL_STATE(1349)] = 57312, - [SMALL_STATE(1350)] = 57322, - [SMALL_STATE(1351)] = 57332, - [SMALL_STATE(1352)] = 57342, - [SMALL_STATE(1353)] = 57350, - [SMALL_STATE(1354)] = 57360, - [SMALL_STATE(1355)] = 57370, - [SMALL_STATE(1356)] = 57380, - [SMALL_STATE(1357)] = 57388, - [SMALL_STATE(1358)] = 57396, - [SMALL_STATE(1359)] = 57404, - [SMALL_STATE(1360)] = 57414, - [SMALL_STATE(1361)] = 57422, - [SMALL_STATE(1362)] = 57432, - [SMALL_STATE(1363)] = 57442, - [SMALL_STATE(1364)] = 57450, - [SMALL_STATE(1365)] = 57458, - [SMALL_STATE(1366)] = 57466, - [SMALL_STATE(1367)] = 57476, - [SMALL_STATE(1368)] = 57486, - [SMALL_STATE(1369)] = 57494, - [SMALL_STATE(1370)] = 57502, - [SMALL_STATE(1371)] = 57510, - [SMALL_STATE(1372)] = 57518, - [SMALL_STATE(1373)] = 57526, - [SMALL_STATE(1374)] = 57534, - [SMALL_STATE(1375)] = 57542, - [SMALL_STATE(1376)] = 57552, - [SMALL_STATE(1377)] = 57562, - [SMALL_STATE(1378)] = 57570, - [SMALL_STATE(1379)] = 57578, - [SMALL_STATE(1380)] = 57588, - [SMALL_STATE(1381)] = 57596, - [SMALL_STATE(1382)] = 57604, - [SMALL_STATE(1383)] = 57614, - [SMALL_STATE(1384)] = 57622, - [SMALL_STATE(1385)] = 57630, - [SMALL_STATE(1386)] = 57637, - [SMALL_STATE(1387)] = 57644, - [SMALL_STATE(1388)] = 57651, - [SMALL_STATE(1389)] = 57658, - [SMALL_STATE(1390)] = 57665, - [SMALL_STATE(1391)] = 57672, - [SMALL_STATE(1392)] = 57679, - [SMALL_STATE(1393)] = 57686, - [SMALL_STATE(1394)] = 57693, - [SMALL_STATE(1395)] = 57700, - [SMALL_STATE(1396)] = 57707, - [SMALL_STATE(1397)] = 57714, - [SMALL_STATE(1398)] = 57721, - [SMALL_STATE(1399)] = 57728, - [SMALL_STATE(1400)] = 57735, - [SMALL_STATE(1401)] = 57742, - [SMALL_STATE(1402)] = 57749, - [SMALL_STATE(1403)] = 57756, - [SMALL_STATE(1404)] = 57763, - [SMALL_STATE(1405)] = 57770, - [SMALL_STATE(1406)] = 57777, - [SMALL_STATE(1407)] = 57784, - [SMALL_STATE(1408)] = 57791, - [SMALL_STATE(1409)] = 57798, - [SMALL_STATE(1410)] = 57805, - [SMALL_STATE(1411)] = 57812, - [SMALL_STATE(1412)] = 57819, - [SMALL_STATE(1413)] = 57826, - [SMALL_STATE(1414)] = 57833, - [SMALL_STATE(1415)] = 57840, - [SMALL_STATE(1416)] = 57847, - [SMALL_STATE(1417)] = 57854, - [SMALL_STATE(1418)] = 57861, - [SMALL_STATE(1419)] = 57868, - [SMALL_STATE(1420)] = 57875, - [SMALL_STATE(1421)] = 57882, - [SMALL_STATE(1422)] = 57889, - [SMALL_STATE(1423)] = 57896, - [SMALL_STATE(1424)] = 57903, - [SMALL_STATE(1425)] = 57910, - [SMALL_STATE(1426)] = 57917, - [SMALL_STATE(1427)] = 57924, - [SMALL_STATE(1428)] = 57931, - [SMALL_STATE(1429)] = 57938, - [SMALL_STATE(1430)] = 57945, - [SMALL_STATE(1431)] = 57952, - [SMALL_STATE(1432)] = 57959, - [SMALL_STATE(1433)] = 57966, - [SMALL_STATE(1434)] = 57973, - [SMALL_STATE(1435)] = 57980, - [SMALL_STATE(1436)] = 57987, - [SMALL_STATE(1437)] = 57994, - [SMALL_STATE(1438)] = 58001, - [SMALL_STATE(1439)] = 58008, - [SMALL_STATE(1440)] = 58015, - [SMALL_STATE(1441)] = 58022, - [SMALL_STATE(1442)] = 58029, - [SMALL_STATE(1443)] = 58036, - [SMALL_STATE(1444)] = 58043, - [SMALL_STATE(1445)] = 58050, - [SMALL_STATE(1446)] = 58057, - [SMALL_STATE(1447)] = 58064, - [SMALL_STATE(1448)] = 58071, - [SMALL_STATE(1449)] = 58078, - [SMALL_STATE(1450)] = 58085, - [SMALL_STATE(1451)] = 58092, - [SMALL_STATE(1452)] = 58099, - [SMALL_STATE(1453)] = 58106, - [SMALL_STATE(1454)] = 58113, - [SMALL_STATE(1455)] = 58120, - [SMALL_STATE(1456)] = 58127, - [SMALL_STATE(1457)] = 58134, - [SMALL_STATE(1458)] = 58141, - [SMALL_STATE(1459)] = 58148, - [SMALL_STATE(1460)] = 58155, - [SMALL_STATE(1461)] = 58162, - [SMALL_STATE(1462)] = 58169, - [SMALL_STATE(1463)] = 58176, - [SMALL_STATE(1464)] = 58183, - [SMALL_STATE(1465)] = 58190, - [SMALL_STATE(1466)] = 58197, - [SMALL_STATE(1467)] = 58204, - [SMALL_STATE(1468)] = 58211, - [SMALL_STATE(1469)] = 58218, - [SMALL_STATE(1470)] = 58225, - [SMALL_STATE(1471)] = 58232, - [SMALL_STATE(1472)] = 58239, - [SMALL_STATE(1473)] = 58246, - [SMALL_STATE(1474)] = 58253, - [SMALL_STATE(1475)] = 58260, - [SMALL_STATE(1476)] = 58267, - [SMALL_STATE(1477)] = 58274, - [SMALL_STATE(1478)] = 58281, - [SMALL_STATE(1479)] = 58288, - [SMALL_STATE(1480)] = 58295, - [SMALL_STATE(1481)] = 58302, - [SMALL_STATE(1482)] = 58309, - [SMALL_STATE(1483)] = 58316, - [SMALL_STATE(1484)] = 58323, - [SMALL_STATE(1485)] = 58330, - [SMALL_STATE(1486)] = 58337, - [SMALL_STATE(1487)] = 58344, - [SMALL_STATE(1488)] = 58351, - [SMALL_STATE(1489)] = 58358, - [SMALL_STATE(1490)] = 58365, - [SMALL_STATE(1491)] = 58372, - [SMALL_STATE(1492)] = 58379, - [SMALL_STATE(1493)] = 58386, - [SMALL_STATE(1494)] = 58393, - [SMALL_STATE(1495)] = 58400, - [SMALL_STATE(1496)] = 58407, - [SMALL_STATE(1497)] = 58414, - [SMALL_STATE(1498)] = 58421, - [SMALL_STATE(1499)] = 58428, - [SMALL_STATE(1500)] = 58435, - [SMALL_STATE(1501)] = 58442, - [SMALL_STATE(1502)] = 58449, - [SMALL_STATE(1503)] = 58456, - [SMALL_STATE(1504)] = 58463, - [SMALL_STATE(1505)] = 58470, - [SMALL_STATE(1506)] = 58477, - [SMALL_STATE(1507)] = 58484, - [SMALL_STATE(1508)] = 58491, - [SMALL_STATE(1509)] = 58498, + [SMALL_STATE(391)] = 22774, + [SMALL_STATE(392)] = 22866, + [SMALL_STATE(393)] = 22958, + [SMALL_STATE(394)] = 23050, + [SMALL_STATE(395)] = 23142, + [SMALL_STATE(396)] = 23234, + [SMALL_STATE(397)] = 23326, + [SMALL_STATE(398)] = 23418, + [SMALL_STATE(399)] = 23510, + [SMALL_STATE(400)] = 23574, + [SMALL_STATE(401)] = 23666, + [SMALL_STATE(402)] = 23758, + [SMALL_STATE(403)] = 23850, + [SMALL_STATE(404)] = 23942, + [SMALL_STATE(405)] = 24034, + [SMALL_STATE(406)] = 24126, + [SMALL_STATE(407)] = 24218, + [SMALL_STATE(408)] = 24310, + [SMALL_STATE(409)] = 24402, + [SMALL_STATE(410)] = 24494, + [SMALL_STATE(411)] = 24586, + [SMALL_STATE(412)] = 24678, + [SMALL_STATE(413)] = 24770, + [SMALL_STATE(414)] = 24862, + [SMALL_STATE(415)] = 24954, + [SMALL_STATE(416)] = 25046, + [SMALL_STATE(417)] = 25138, + [SMALL_STATE(418)] = 25230, + [SMALL_STATE(419)] = 25322, + [SMALL_STATE(420)] = 25414, + [SMALL_STATE(421)] = 25506, + [SMALL_STATE(422)] = 25598, + [SMALL_STATE(423)] = 25690, + [SMALL_STATE(424)] = 25782, + [SMALL_STATE(425)] = 25874, + [SMALL_STATE(426)] = 25966, + [SMALL_STATE(427)] = 26058, + [SMALL_STATE(428)] = 26150, + [SMALL_STATE(429)] = 26242, + [SMALL_STATE(430)] = 26334, + [SMALL_STATE(431)] = 26426, + [SMALL_STATE(432)] = 26518, + [SMALL_STATE(433)] = 26610, + [SMALL_STATE(434)] = 26702, + [SMALL_STATE(435)] = 26794, + [SMALL_STATE(436)] = 26886, + [SMALL_STATE(437)] = 26943, + [SMALL_STATE(438)] = 27000, + [SMALL_STATE(439)] = 27057, + [SMALL_STATE(440)] = 27114, + [SMALL_STATE(441)] = 27171, + [SMALL_STATE(442)] = 27228, + [SMALL_STATE(443)] = 27285, + [SMALL_STATE(444)] = 27342, + [SMALL_STATE(445)] = 27399, + [SMALL_STATE(446)] = 27456, + [SMALL_STATE(447)] = 27513, + [SMALL_STATE(448)] = 27570, + [SMALL_STATE(449)] = 27627, + [SMALL_STATE(450)] = 27684, + [SMALL_STATE(451)] = 27745, + [SMALL_STATE(452)] = 27802, + [SMALL_STATE(453)] = 27863, + [SMALL_STATE(454)] = 27924, + [SMALL_STATE(455)] = 27981, + [SMALL_STATE(456)] = 28038, + [SMALL_STATE(457)] = 28095, + [SMALL_STATE(458)] = 28152, + [SMALL_STATE(459)] = 28219, + [SMALL_STATE(460)] = 28276, + [SMALL_STATE(461)] = 28337, + [SMALL_STATE(462)] = 28429, + [SMALL_STATE(463)] = 28493, + [SMALL_STATE(464)] = 28549, + [SMALL_STATE(465)] = 28605, + [SMALL_STATE(466)] = 28669, + [SMALL_STATE(467)] = 28729, + [SMALL_STATE(468)] = 28821, + [SMALL_STATE(469)] = 28881, + [SMALL_STATE(470)] = 28941, + [SMALL_STATE(471)] = 29001, + [SMALL_STATE(472)] = 29057, + [SMALL_STATE(473)] = 29117, + [SMALL_STATE(474)] = 29173, + [SMALL_STATE(475)] = 29237, + [SMALL_STATE(476)] = 29293, + [SMALL_STATE(477)] = 29353, + [SMALL_STATE(478)] = 29413, + [SMALL_STATE(479)] = 29507, + [SMALL_STATE(480)] = 29567, + [SMALL_STATE(481)] = 29627, + [SMALL_STATE(482)] = 29687, + [SMALL_STATE(483)] = 29747, + [SMALL_STATE(484)] = 29803, + [SMALL_STATE(485)] = 29863, + [SMALL_STATE(486)] = 29923, + [SMALL_STATE(487)] = 29979, + [SMALL_STATE(488)] = 30043, + [SMALL_STATE(489)] = 30099, + [SMALL_STATE(490)] = 30159, + [SMALL_STATE(491)] = 30219, + [SMALL_STATE(492)] = 30279, + [SMALL_STATE(493)] = 30334, + [SMALL_STATE(494)] = 30425, + [SMALL_STATE(495)] = 30486, + [SMALL_STATE(496)] = 30541, + [SMALL_STATE(497)] = 30596, + [SMALL_STATE(498)] = 30687, + [SMALL_STATE(499)] = 30742, + [SMALL_STATE(500)] = 30797, + [SMALL_STATE(501)] = 30852, + [SMALL_STATE(502)] = 30907, + [SMALL_STATE(503)] = 30968, + [SMALL_STATE(504)] = 31023, + [SMALL_STATE(505)] = 31078, + [SMALL_STATE(506)] = 31133, + [SMALL_STATE(507)] = 31188, + [SMALL_STATE(508)] = 31243, + [SMALL_STATE(509)] = 31334, + [SMALL_STATE(510)] = 31395, + [SMALL_STATE(511)] = 31486, + [SMALL_STATE(512)] = 31577, + [SMALL_STATE(513)] = 31668, + [SMALL_STATE(514)] = 31729, + [SMALL_STATE(515)] = 31783, + [SMALL_STATE(516)] = 31837, + [SMALL_STATE(517)] = 31891, + [SMALL_STATE(518)] = 31945, + [SMALL_STATE(519)] = 31999, + [SMALL_STATE(520)] = 32053, + [SMALL_STATE(521)] = 32107, + [SMALL_STATE(522)] = 32161, + [SMALL_STATE(523)] = 32215, + [SMALL_STATE(524)] = 32269, + [SMALL_STATE(525)] = 32323, + [SMALL_STATE(526)] = 32377, + [SMALL_STATE(527)] = 32431, + [SMALL_STATE(528)] = 32485, + [SMALL_STATE(529)] = 32539, + [SMALL_STATE(530)] = 32593, + [SMALL_STATE(531)] = 32647, + [SMALL_STATE(532)] = 32701, + [SMALL_STATE(533)] = 32755, + [SMALL_STATE(534)] = 32809, + [SMALL_STATE(535)] = 32863, + [SMALL_STATE(536)] = 32917, + [SMALL_STATE(537)] = 32971, + [SMALL_STATE(538)] = 33025, + [SMALL_STATE(539)] = 33079, + [SMALL_STATE(540)] = 33133, + [SMALL_STATE(541)] = 33187, + [SMALL_STATE(542)] = 33241, + [SMALL_STATE(543)] = 33295, + [SMALL_STATE(544)] = 33349, + [SMALL_STATE(545)] = 33403, + [SMALL_STATE(546)] = 33457, + [SMALL_STATE(547)] = 33511, + [SMALL_STATE(548)] = 33565, + [SMALL_STATE(549)] = 33619, + [SMALL_STATE(550)] = 33673, + [SMALL_STATE(551)] = 33727, + [SMALL_STATE(552)] = 33815, + [SMALL_STATE(553)] = 33869, + [SMALL_STATE(554)] = 33923, + [SMALL_STATE(555)] = 33977, + [SMALL_STATE(556)] = 34031, + [SMALL_STATE(557)] = 34085, + [SMALL_STATE(558)] = 34139, + [SMALL_STATE(559)] = 34193, + [SMALL_STATE(560)] = 34247, + [SMALL_STATE(561)] = 34301, + [SMALL_STATE(562)] = 34355, + [SMALL_STATE(563)] = 34409, + [SMALL_STATE(564)] = 34463, + [SMALL_STATE(565)] = 34517, + [SMALL_STATE(566)] = 34571, + [SMALL_STATE(567)] = 34625, + [SMALL_STATE(568)] = 34679, + [SMALL_STATE(569)] = 34733, + [SMALL_STATE(570)] = 34787, + [SMALL_STATE(571)] = 34841, + [SMALL_STATE(572)] = 34895, + [SMALL_STATE(573)] = 34949, + [SMALL_STATE(574)] = 35003, + [SMALL_STATE(575)] = 35057, + [SMALL_STATE(576)] = 35111, + [SMALL_STATE(577)] = 35165, + [SMALL_STATE(578)] = 35219, + [SMALL_STATE(579)] = 35273, + [SMALL_STATE(580)] = 35327, + [SMALL_STATE(581)] = 35381, + [SMALL_STATE(582)] = 35435, + [SMALL_STATE(583)] = 35489, + [SMALL_STATE(584)] = 35543, + [SMALL_STATE(585)] = 35597, + [SMALL_STATE(586)] = 35651, + [SMALL_STATE(587)] = 35705, + [SMALL_STATE(588)] = 35759, + [SMALL_STATE(589)] = 35813, + [SMALL_STATE(590)] = 35867, + [SMALL_STATE(591)] = 35921, + [SMALL_STATE(592)] = 35975, + [SMALL_STATE(593)] = 36029, + [SMALL_STATE(594)] = 36083, + [SMALL_STATE(595)] = 36137, + [SMALL_STATE(596)] = 36191, + [SMALL_STATE(597)] = 36245, + [SMALL_STATE(598)] = 36299, + [SMALL_STATE(599)] = 36353, + [SMALL_STATE(600)] = 36407, + [SMALL_STATE(601)] = 36461, + [SMALL_STATE(602)] = 36515, + [SMALL_STATE(603)] = 36569, + [SMALL_STATE(604)] = 36623, + [SMALL_STATE(605)] = 36677, + [SMALL_STATE(606)] = 36731, + [SMALL_STATE(607)] = 36785, + [SMALL_STATE(608)] = 36839, + [SMALL_STATE(609)] = 36893, + [SMALL_STATE(610)] = 36947, + [SMALL_STATE(611)] = 37001, + [SMALL_STATE(612)] = 37055, + [SMALL_STATE(613)] = 37143, + [SMALL_STATE(614)] = 37197, + [SMALL_STATE(615)] = 37279, + [SMALL_STATE(616)] = 37355, + [SMALL_STATE(617)] = 37409, + [SMALL_STATE(618)] = 37463, + [SMALL_STATE(619)] = 37539, + [SMALL_STATE(620)] = 37593, + [SMALL_STATE(621)] = 37647, + [SMALL_STATE(622)] = 37701, + [SMALL_STATE(623)] = 37777, + [SMALL_STATE(624)] = 37853, + [SMALL_STATE(625)] = 37907, + [SMALL_STATE(626)] = 37983, + [SMALL_STATE(627)] = 38059, + [SMALL_STATE(628)] = 38132, + [SMALL_STATE(629)] = 38205, + [SMALL_STATE(630)] = 38278, + [SMALL_STATE(631)] = 38351, + [SMALL_STATE(632)] = 38424, + [SMALL_STATE(633)] = 38497, + [SMALL_STATE(634)] = 38570, + [SMALL_STATE(635)] = 38643, + [SMALL_STATE(636)] = 38716, + [SMALL_STATE(637)] = 38789, + [SMALL_STATE(638)] = 38862, + [SMALL_STATE(639)] = 38935, + [SMALL_STATE(640)] = 39008, + [SMALL_STATE(641)] = 39081, + [SMALL_STATE(642)] = 39154, + [SMALL_STATE(643)] = 39227, + [SMALL_STATE(644)] = 39300, + [SMALL_STATE(645)] = 39373, + [SMALL_STATE(646)] = 39446, + [SMALL_STATE(647)] = 39519, + [SMALL_STATE(648)] = 39592, + [SMALL_STATE(649)] = 39665, + [SMALL_STATE(650)] = 39738, + [SMALL_STATE(651)] = 39811, + [SMALL_STATE(652)] = 39884, + [SMALL_STATE(653)] = 39957, + [SMALL_STATE(654)] = 40030, + [SMALL_STATE(655)] = 40103, + [SMALL_STATE(656)] = 40176, + [SMALL_STATE(657)] = 40249, + [SMALL_STATE(658)] = 40322, + [SMALL_STATE(659)] = 40395, + [SMALL_STATE(660)] = 40468, + [SMALL_STATE(661)] = 40541, + [SMALL_STATE(662)] = 40614, + [SMALL_STATE(663)] = 40691, + [SMALL_STATE(664)] = 40764, + [SMALL_STATE(665)] = 40837, + [SMALL_STATE(666)] = 40910, + [SMALL_STATE(667)] = 40983, + [SMALL_STATE(668)] = 41056, + [SMALL_STATE(669)] = 41129, + [SMALL_STATE(670)] = 41202, + [SMALL_STATE(671)] = 41275, + [SMALL_STATE(672)] = 41348, + [SMALL_STATE(673)] = 41421, + [SMALL_STATE(674)] = 41494, + [SMALL_STATE(675)] = 41567, + [SMALL_STATE(676)] = 41640, + [SMALL_STATE(677)] = 41713, + [SMALL_STATE(678)] = 41786, + [SMALL_STATE(679)] = 41863, + [SMALL_STATE(680)] = 41936, + [SMALL_STATE(681)] = 42009, + [SMALL_STATE(682)] = 42082, + [SMALL_STATE(683)] = 42155, + [SMALL_STATE(684)] = 42228, + [SMALL_STATE(685)] = 42301, + [SMALL_STATE(686)] = 42374, + [SMALL_STATE(687)] = 42447, + [SMALL_STATE(688)] = 42520, + [SMALL_STATE(689)] = 42593, + [SMALL_STATE(690)] = 42666, + [SMALL_STATE(691)] = 42739, + [SMALL_STATE(692)] = 42812, + [SMALL_STATE(693)] = 42885, + [SMALL_STATE(694)] = 42958, + [SMALL_STATE(695)] = 43031, + [SMALL_STATE(696)] = 43079, + [SMALL_STATE(697)] = 43127, + [SMALL_STATE(698)] = 43175, + [SMALL_STATE(699)] = 43223, + [SMALL_STATE(700)] = 43270, + [SMALL_STATE(701)] = 43317, + [SMALL_STATE(702)] = 43364, + [SMALL_STATE(703)] = 43411, + [SMALL_STATE(704)] = 43458, + [SMALL_STATE(705)] = 43505, + [SMALL_STATE(706)] = 43552, + [SMALL_STATE(707)] = 43599, + [SMALL_STATE(708)] = 43646, + [SMALL_STATE(709)] = 43693, + [SMALL_STATE(710)] = 43740, + [SMALL_STATE(711)] = 43787, + [SMALL_STATE(712)] = 43834, + [SMALL_STATE(713)] = 43881, + [SMALL_STATE(714)] = 43928, + [SMALL_STATE(715)] = 43975, + [SMALL_STATE(716)] = 44022, + [SMALL_STATE(717)] = 44069, + [SMALL_STATE(718)] = 44116, + [SMALL_STATE(719)] = 44163, + [SMALL_STATE(720)] = 44244, + [SMALL_STATE(721)] = 44291, + [SMALL_STATE(722)] = 44338, + [SMALL_STATE(723)] = 44385, + [SMALL_STATE(724)] = 44432, + [SMALL_STATE(725)] = 44479, + [SMALL_STATE(726)] = 44560, + [SMALL_STATE(727)] = 44607, + [SMALL_STATE(728)] = 44654, + [SMALL_STATE(729)] = 44701, + [SMALL_STATE(730)] = 44748, + [SMALL_STATE(731)] = 44795, + [SMALL_STATE(732)] = 44842, + [SMALL_STATE(733)] = 44889, + [SMALL_STATE(734)] = 44936, + [SMALL_STATE(735)] = 44996, + [SMALL_STATE(736)] = 45052, + [SMALL_STATE(737)] = 45108, + [SMALL_STATE(738)] = 45170, + [SMALL_STATE(739)] = 45240, + [SMALL_STATE(740)] = 45308, + [SMALL_STATE(741)] = 45368, + [SMALL_STATE(742)] = 45424, + [SMALL_STATE(743)] = 45490, + [SMALL_STATE(744)] = 45554, + [SMALL_STATE(745)] = 45604, + [SMALL_STATE(746)] = 45654, + [SMALL_STATE(747)] = 45704, + [SMALL_STATE(748)] = 45754, + [SMALL_STATE(749)] = 45824, + [SMALL_STATE(750)] = 45894, + [SMALL_STATE(751)] = 45950, + [SMALL_STATE(752)] = 46012, + [SMALL_STATE(753)] = 46082, + [SMALL_STATE(754)] = 46150, + [SMALL_STATE(755)] = 46206, + [SMALL_STATE(756)] = 46272, + [SMALL_STATE(757)] = 46336, + [SMALL_STATE(758)] = 46406, + [SMALL_STATE(759)] = 46476, + [SMALL_STATE(760)] = 46532, + [SMALL_STATE(761)] = 46588, + [SMALL_STATE(762)] = 46644, + [SMALL_STATE(763)] = 46693, + [SMALL_STATE(764)] = 46742, + [SMALL_STATE(765)] = 46787, + [SMALL_STATE(766)] = 46836, + [SMALL_STATE(767)] = 46915, + [SMALL_STATE(768)] = 46964, + [SMALL_STATE(769)] = 47013, + [SMALL_STATE(770)] = 47062, + [SMALL_STATE(771)] = 47111, + [SMALL_STATE(772)] = 47160, + [SMALL_STATE(773)] = 47237, + [SMALL_STATE(774)] = 47284, + [SMALL_STATE(775)] = 47331, + [SMALL_STATE(776)] = 47380, + [SMALL_STATE(777)] = 47429, + [SMALL_STATE(778)] = 47474, + [SMALL_STATE(779)] = 47523, + [SMALL_STATE(780)] = 47602, + [SMALL_STATE(781)] = 47649, + [SMALL_STATE(782)] = 47696, + [SMALL_STATE(783)] = 47745, + [SMALL_STATE(784)] = 47803, + [SMALL_STATE(785)] = 47857, + [SMALL_STATE(786)] = 47911, + [SMALL_STATE(787)] = 47965, + [SMALL_STATE(788)] = 48025, + [SMALL_STATE(789)] = 48093, + [SMALL_STATE(790)] = 48159, + [SMALL_STATE(791)] = 48213, + [SMALL_STATE(792)] = 48267, + [SMALL_STATE(793)] = 48331, + [SMALL_STATE(794)] = 48393, + [SMALL_STATE(795)] = 48441, + [SMALL_STATE(796)] = 48489, + [SMALL_STATE(797)] = 48543, + [SMALL_STATE(798)] = 48611, + [SMALL_STATE(799)] = 48679, + [SMALL_STATE(800)] = 48739, + [SMALL_STATE(801)] = 48807, + [SMALL_STATE(802)] = 48873, + [SMALL_STATE(803)] = 48931, + [SMALL_STATE(804)] = 48985, + [SMALL_STATE(805)] = 49049, + [SMALL_STATE(806)] = 49111, + [SMALL_STATE(807)] = 49155, + [SMALL_STATE(808)] = 49199, + [SMALL_STATE(809)] = 49243, + [SMALL_STATE(810)] = 49287, + [SMALL_STATE(811)] = 49341, + [SMALL_STATE(812)] = 49395, + [SMALL_STATE(813)] = 49449, + [SMALL_STATE(814)] = 49509, + [SMALL_STATE(815)] = 49577, + [SMALL_STATE(816)] = 49643, + [SMALL_STATE(817)] = 49701, + [SMALL_STATE(818)] = 49755, + [SMALL_STATE(819)] = 49819, + [SMALL_STATE(820)] = 49881, + [SMALL_STATE(821)] = 49949, + [SMALL_STATE(822)] = 50017, + [SMALL_STATE(823)] = 50093, + [SMALL_STATE(824)] = 50161, + [SMALL_STATE(825)] = 50229, + [SMALL_STATE(826)] = 50283, + [SMALL_STATE(827)] = 50328, + [SMALL_STATE(828)] = 50371, + [SMALL_STATE(829)] = 50424, + [SMALL_STATE(830)] = 50483, + [SMALL_STATE(831)] = 50526, + [SMALL_STATE(832)] = 50593, + [SMALL_STATE(833)] = 50658, + [SMALL_STATE(834)] = 50715, + [SMALL_STATE(835)] = 50760, + [SMALL_STATE(836)] = 50813, + [SMALL_STATE(837)] = 50876, + [SMALL_STATE(838)] = 50937, + [SMALL_STATE(839)] = 50982, + [SMALL_STATE(840)] = 51029, + [SMALL_STATE(841)] = 51074, + [SMALL_STATE(842)] = 51117, + [SMALL_STATE(843)] = 51162, + [SMALL_STATE(844)] = 51229, + [SMALL_STATE(845)] = 51296, + [SMALL_STATE(846)] = 51349, + [SMALL_STATE(847)] = 51430, + [SMALL_STATE(848)] = 51473, + [SMALL_STATE(849)] = 51526, + [SMALL_STATE(850)] = 51571, + [SMALL_STATE(851)] = 51614, + [SMALL_STATE(852)] = 51657, + [SMALL_STATE(853)] = 51704, + [SMALL_STATE(854)] = 51749, + [SMALL_STATE(855)] = 51830, + [SMALL_STATE(856)] = 51875, + [SMALL_STATE(857)] = 51956, + [SMALL_STATE(858)] = 52001, + [SMALL_STATE(859)] = 52048, + [SMALL_STATE(860)] = 52091, + [SMALL_STATE(861)] = 52136, + [SMALL_STATE(862)] = 52179, + [SMALL_STATE(863)] = 52260, + [SMALL_STATE(864)] = 52305, + [SMALL_STATE(865)] = 52352, + [SMALL_STATE(866)] = 52397, + [SMALL_STATE(867)] = 52439, + [SMALL_STATE(868)] = 52481, + [SMALL_STATE(869)] = 52523, + [SMALL_STATE(870)] = 52565, + [SMALL_STATE(871)] = 52607, + [SMALL_STATE(872)] = 52649, + [SMALL_STATE(873)] = 52691, + [SMALL_STATE(874)] = 52733, + [SMALL_STATE(875)] = 52775, + [SMALL_STATE(876)] = 52817, + [SMALL_STATE(877)] = 52859, + [SMALL_STATE(878)] = 52901, + [SMALL_STATE(879)] = 52943, + [SMALL_STATE(880)] = 52985, + [SMALL_STATE(881)] = 53027, + [SMALL_STATE(882)] = 53069, + [SMALL_STATE(883)] = 53111, + [SMALL_STATE(884)] = 53153, + [SMALL_STATE(885)] = 53195, + [SMALL_STATE(886)] = 53237, + [SMALL_STATE(887)] = 53279, + [SMALL_STATE(888)] = 53321, + [SMALL_STATE(889)] = 53363, + [SMALL_STATE(890)] = 53405, + [SMALL_STATE(891)] = 53447, + [SMALL_STATE(892)] = 53489, + [SMALL_STATE(893)] = 53531, + [SMALL_STATE(894)] = 53573, + [SMALL_STATE(895)] = 53615, + [SMALL_STATE(896)] = 53657, + [SMALL_STATE(897)] = 53699, + [SMALL_STATE(898)] = 53741, + [SMALL_STATE(899)] = 53783, + [SMALL_STATE(900)] = 53825, + [SMALL_STATE(901)] = 53867, + [SMALL_STATE(902)] = 53909, + [SMALL_STATE(903)] = 53951, + [SMALL_STATE(904)] = 53993, + [SMALL_STATE(905)] = 54035, + [SMALL_STATE(906)] = 54077, + [SMALL_STATE(907)] = 54119, + [SMALL_STATE(908)] = 54161, + [SMALL_STATE(909)] = 54203, + [SMALL_STATE(910)] = 54245, + [SMALL_STATE(911)] = 54287, + [SMALL_STATE(912)] = 54331, + [SMALL_STATE(913)] = 54375, + [SMALL_STATE(914)] = 54417, + [SMALL_STATE(915)] = 54459, + [SMALL_STATE(916)] = 54503, + [SMALL_STATE(917)] = 54545, + [SMALL_STATE(918)] = 54587, + [SMALL_STATE(919)] = 54629, + [SMALL_STATE(920)] = 54673, + [SMALL_STATE(921)] = 54715, + [SMALL_STATE(922)] = 54757, + [SMALL_STATE(923)] = 54799, + [SMALL_STATE(924)] = 54841, + [SMALL_STATE(925)] = 54883, + [SMALL_STATE(926)] = 54927, + [SMALL_STATE(927)] = 54969, + [SMALL_STATE(928)] = 55047, + [SMALL_STATE(929)] = 55125, + [SMALL_STATE(930)] = 55167, + [SMALL_STATE(931)] = 55209, + [SMALL_STATE(932)] = 55251, + [SMALL_STATE(933)] = 55331, + [SMALL_STATE(934)] = 55409, + [SMALL_STATE(935)] = 55487, + [SMALL_STATE(936)] = 55565, + [SMALL_STATE(937)] = 55607, + [SMALL_STATE(938)] = 55649, + [SMALL_STATE(939)] = 55691, + [SMALL_STATE(940)] = 55733, + [SMALL_STATE(941)] = 55775, + [SMALL_STATE(942)] = 55817, + [SMALL_STATE(943)] = 55859, + [SMALL_STATE(944)] = 55901, + [SMALL_STATE(945)] = 55943, + [SMALL_STATE(946)] = 55984, + [SMALL_STATE(947)] = 56025, + [SMALL_STATE(948)] = 56066, + [SMALL_STATE(949)] = 56107, + [SMALL_STATE(950)] = 56148, + [SMALL_STATE(951)] = 56189, + [SMALL_STATE(952)] = 56230, + [SMALL_STATE(953)] = 56271, + [SMALL_STATE(954)] = 56312, + [SMALL_STATE(955)] = 56353, + [SMALL_STATE(956)] = 56394, + [SMALL_STATE(957)] = 56435, + [SMALL_STATE(958)] = 56476, + [SMALL_STATE(959)] = 56517, + [SMALL_STATE(960)] = 56558, + [SMALL_STATE(961)] = 56599, + [SMALL_STATE(962)] = 56640, + [SMALL_STATE(963)] = 56681, + [SMALL_STATE(964)] = 56722, + [SMALL_STATE(965)] = 56801, + [SMALL_STATE(966)] = 56842, + [SMALL_STATE(967)] = 56883, + [SMALL_STATE(968)] = 56924, + [SMALL_STATE(969)] = 56965, + [SMALL_STATE(970)] = 57006, + [SMALL_STATE(971)] = 57047, + [SMALL_STATE(972)] = 57088, + [SMALL_STATE(973)] = 57133, + [SMALL_STATE(974)] = 57178, + [SMALL_STATE(975)] = 57219, + [SMALL_STATE(976)] = 57260, + [SMALL_STATE(977)] = 57301, + [SMALL_STATE(978)] = 57342, + [SMALL_STATE(979)] = 57383, + [SMALL_STATE(980)] = 57458, + [SMALL_STATE(981)] = 57537, + [SMALL_STATE(982)] = 57578, + [SMALL_STATE(983)] = 57657, + [SMALL_STATE(984)] = 57698, + [SMALL_STATE(985)] = 57771, + [SMALL_STATE(986)] = 57841, + [SMALL_STATE(987)] = 57911, + [SMALL_STATE(988)] = 57973, + [SMALL_STATE(989)] = 58035, + [SMALL_STATE(990)] = 58074, + [SMALL_STATE(991)] = 58113, + [SMALL_STATE(992)] = 58152, + [SMALL_STATE(993)] = 58191, + [SMALL_STATE(994)] = 58221, + [SMALL_STATE(995)] = 58274, + [SMALL_STATE(996)] = 58311, + [SMALL_STATE(997)] = 58364, + [SMALL_STATE(998)] = 58399, + [SMALL_STATE(999)] = 58424, + [SMALL_STATE(1000)] = 58449, + [SMALL_STATE(1001)] = 58478, + [SMALL_STATE(1002)] = 58507, + [SMALL_STATE(1003)] = 58544, + [SMALL_STATE(1004)] = 58581, + [SMALL_STATE(1005)] = 58606, + [SMALL_STATE(1006)] = 58631, + [SMALL_STATE(1007)] = 58668, + [SMALL_STATE(1008)] = 58703, + [SMALL_STATE(1009)] = 58756, + [SMALL_STATE(1010)] = 58790, + [SMALL_STATE(1011)] = 58818, + [SMALL_STATE(1012)] = 58852, + [SMALL_STATE(1013)] = 58898, + [SMALL_STATE(1014)] = 58929, + [SMALL_STATE(1015)] = 58972, + [SMALL_STATE(1016)] = 59015, + [SMALL_STATE(1017)] = 59058, + [SMALL_STATE(1018)] = 59101, + [SMALL_STATE(1019)] = 59144, + [SMALL_STATE(1020)] = 59187, + [SMALL_STATE(1021)] = 59230, + [SMALL_STATE(1022)] = 59274, + [SMALL_STATE(1023)] = 59314, + [SMALL_STATE(1024)] = 59351, + [SMALL_STATE(1025)] = 59376, + [SMALL_STATE(1026)] = 59413, + [SMALL_STATE(1027)] = 59450, + [SMALL_STATE(1028)] = 59487, + [SMALL_STATE(1029)] = 59521, + [SMALL_STATE(1030)] = 59555, + [SMALL_STATE(1031)] = 59576, + [SMALL_STATE(1032)] = 59597, + [SMALL_STATE(1033)] = 59619, + [SMALL_STATE(1034)] = 59650, + [SMALL_STATE(1035)] = 59687, + [SMALL_STATE(1036)] = 59718, + [SMALL_STATE(1037)] = 59749, + [SMALL_STATE(1038)] = 59780, + [SMALL_STATE(1039)] = 59803, + [SMALL_STATE(1040)] = 59824, + [SMALL_STATE(1041)] = 59845, + [SMALL_STATE(1042)] = 59882, + [SMALL_STATE(1043)] = 59905, + [SMALL_STATE(1044)] = 59936, + [SMALL_STATE(1045)] = 59967, + [SMALL_STATE(1046)] = 59998, + [SMALL_STATE(1047)] = 60035, + [SMALL_STATE(1048)] = 60066, + [SMALL_STATE(1049)] = 60097, + [SMALL_STATE(1050)] = 60114, + [SMALL_STATE(1051)] = 60145, + [SMALL_STATE(1052)] = 60176, + [SMALL_STATE(1053)] = 60207, + [SMALL_STATE(1054)] = 60238, + [SMALL_STATE(1055)] = 60269, + [SMALL_STATE(1056)] = 60300, + [SMALL_STATE(1057)] = 60331, + [SMALL_STATE(1058)] = 60362, + [SMALL_STATE(1059)] = 60393, + [SMALL_STATE(1060)] = 60424, + [SMALL_STATE(1061)] = 60461, + [SMALL_STATE(1062)] = 60498, + [SMALL_STATE(1063)] = 60520, + [SMALL_STATE(1064)] = 60538, + [SMALL_STATE(1065)] = 60562, + [SMALL_STATE(1066)] = 60582, + [SMALL_STATE(1067)] = 60616, + [SMALL_STATE(1068)] = 60650, + [SMALL_STATE(1069)] = 60670, + [SMALL_STATE(1070)] = 60692, + [SMALL_STATE(1071)] = 60714, + [SMALL_STATE(1072)] = 60736, + [SMALL_STATE(1073)] = 60754, + [SMALL_STATE(1074)] = 60788, + [SMALL_STATE(1075)] = 60812, + [SMALL_STATE(1076)] = 60846, + [SMALL_STATE(1077)] = 60880, + [SMALL_STATE(1078)] = 60900, + [SMALL_STATE(1079)] = 60918, + [SMALL_STATE(1080)] = 60952, + [SMALL_STATE(1081)] = 60986, + [SMALL_STATE(1082)] = 61020, + [SMALL_STATE(1083)] = 61042, + [SMALL_STATE(1084)] = 61076, + [SMALL_STATE(1085)] = 61110, + [SMALL_STATE(1086)] = 61134, + [SMALL_STATE(1087)] = 61168, + [SMALL_STATE(1088)] = 61190, + [SMALL_STATE(1089)] = 61224, + [SMALL_STATE(1090)] = 61244, + [SMALL_STATE(1091)] = 61263, + [SMALL_STATE(1092)] = 61282, + [SMALL_STATE(1093)] = 61305, + [SMALL_STATE(1094)] = 61330, + [SMALL_STATE(1095)] = 61349, + [SMALL_STATE(1096)] = 61374, + [SMALL_STATE(1097)] = 61395, + [SMALL_STATE(1098)] = 61414, + [SMALL_STATE(1099)] = 61433, + [SMALL_STATE(1100)] = 61456, + [SMALL_STATE(1101)] = 61479, + [SMALL_STATE(1102)] = 61498, + [SMALL_STATE(1103)] = 61518, + [SMALL_STATE(1104)] = 61538, + [SMALL_STATE(1105)] = 61556, + [SMALL_STATE(1106)] = 61572, + [SMALL_STATE(1107)] = 61590, + [SMALL_STATE(1108)] = 61610, + [SMALL_STATE(1109)] = 61630, + [SMALL_STATE(1110)] = 61650, + [SMALL_STATE(1111)] = 61664, + [SMALL_STATE(1112)] = 61682, + [SMALL_STATE(1113)] = 61702, + [SMALL_STATE(1114)] = 61726, + [SMALL_STATE(1115)] = 61740, + [SMALL_STATE(1116)] = 61754, + [SMALL_STATE(1117)] = 61768, + [SMALL_STATE(1118)] = 61788, + [SMALL_STATE(1119)] = 61812, + [SMALL_STATE(1120)] = 61826, + [SMALL_STATE(1121)] = 61840, + [SMALL_STATE(1122)] = 61856, + [SMALL_STATE(1123)] = 61882, + [SMALL_STATE(1124)] = 61900, + [SMALL_STATE(1125)] = 61914, + [SMALL_STATE(1126)] = 61934, + [SMALL_STATE(1127)] = 61948, + [SMALL_STATE(1128)] = 61962, + [SMALL_STATE(1129)] = 61980, + [SMALL_STATE(1130)] = 61994, + [SMALL_STATE(1131)] = 62008, + [SMALL_STATE(1132)] = 62022, + [SMALL_STATE(1133)] = 62036, + [SMALL_STATE(1134)] = 62058, + [SMALL_STATE(1135)] = 62072, + [SMALL_STATE(1136)] = 62086, + [SMALL_STATE(1137)] = 62104, + [SMALL_STATE(1138)] = 62118, + [SMALL_STATE(1139)] = 62132, + [SMALL_STATE(1140)] = 62154, + [SMALL_STATE(1141)] = 62168, + [SMALL_STATE(1142)] = 62188, + [SMALL_STATE(1143)] = 62204, + [SMALL_STATE(1144)] = 62218, + [SMALL_STATE(1145)] = 62238, + [SMALL_STATE(1146)] = 62256, + [SMALL_STATE(1147)] = 62274, + [SMALL_STATE(1148)] = 62296, + [SMALL_STATE(1149)] = 62320, + [SMALL_STATE(1150)] = 62338, + [SMALL_STATE(1151)] = 62358, + [SMALL_STATE(1152)] = 62376, + [SMALL_STATE(1153)] = 62392, + [SMALL_STATE(1154)] = 62410, + [SMALL_STATE(1155)] = 62424, + [SMALL_STATE(1156)] = 62442, + [SMALL_STATE(1157)] = 62462, + [SMALL_STATE(1158)] = 62482, + [SMALL_STATE(1159)] = 62496, + [SMALL_STATE(1160)] = 62510, + [SMALL_STATE(1161)] = 62524, + [SMALL_STATE(1162)] = 62538, + [SMALL_STATE(1163)] = 62556, + [SMALL_STATE(1164)] = 62574, + [SMALL_STATE(1165)] = 62594, + [SMALL_STATE(1166)] = 62612, + [SMALL_STATE(1167)] = 62632, + [SMALL_STATE(1168)] = 62646, + [SMALL_STATE(1169)] = 62660, + [SMALL_STATE(1170)] = 62685, + [SMALL_STATE(1171)] = 62710, + [SMALL_STATE(1172)] = 62731, + [SMALL_STATE(1173)] = 62750, + [SMALL_STATE(1174)] = 62771, + [SMALL_STATE(1175)] = 62790, + [SMALL_STATE(1176)] = 62813, + [SMALL_STATE(1177)] = 62826, + [SMALL_STATE(1178)] = 62849, + [SMALL_STATE(1179)] = 62862, + [SMALL_STATE(1180)] = 62885, + [SMALL_STATE(1181)] = 62908, + [SMALL_STATE(1182)] = 62929, + [SMALL_STATE(1183)] = 62948, + [SMALL_STATE(1184)] = 62967, + [SMALL_STATE(1185)] = 62982, + [SMALL_STATE(1186)] = 63005, + [SMALL_STATE(1187)] = 63030, + [SMALL_STATE(1188)] = 63051, + [SMALL_STATE(1189)] = 63068, + [SMALL_STATE(1190)] = 63087, + [SMALL_STATE(1191)] = 63112, + [SMALL_STATE(1192)] = 63131, + [SMALL_STATE(1193)] = 63150, + [SMALL_STATE(1194)] = 63167, + [SMALL_STATE(1195)] = 63182, + [SMALL_STATE(1196)] = 63199, + [SMALL_STATE(1197)] = 63212, + [SMALL_STATE(1198)] = 63235, + [SMALL_STATE(1199)] = 63260, + [SMALL_STATE(1200)] = 63279, + [SMALL_STATE(1201)] = 63300, + [SMALL_STATE(1202)] = 63323, + [SMALL_STATE(1203)] = 63346, + [SMALL_STATE(1204)] = 63359, + [SMALL_STATE(1205)] = 63384, + [SMALL_STATE(1206)] = 63409, + [SMALL_STATE(1207)] = 63428, + [SMALL_STATE(1208)] = 63453, + [SMALL_STATE(1209)] = 63472, + [SMALL_STATE(1210)] = 63491, + [SMALL_STATE(1211)] = 63504, + [SMALL_STATE(1212)] = 63517, + [SMALL_STATE(1213)] = 63542, + [SMALL_STATE(1214)] = 63565, + [SMALL_STATE(1215)] = 63584, + [SMALL_STATE(1216)] = 63600, + [SMALL_STATE(1217)] = 63616, + [SMALL_STATE(1218)] = 63630, + [SMALL_STATE(1219)] = 63644, + [SMALL_STATE(1220)] = 63660, + [SMALL_STATE(1221)] = 63680, + [SMALL_STATE(1222)] = 63696, + [SMALL_STATE(1223)] = 63712, + [SMALL_STATE(1224)] = 63726, + [SMALL_STATE(1225)] = 63744, + [SMALL_STATE(1226)] = 63766, + [SMALL_STATE(1227)] = 63784, + [SMALL_STATE(1228)] = 63802, + [SMALL_STATE(1229)] = 63820, + [SMALL_STATE(1230)] = 63836, + [SMALL_STATE(1231)] = 63858, + [SMALL_STATE(1232)] = 63876, + [SMALL_STATE(1233)] = 63892, + [SMALL_STATE(1234)] = 63908, + [SMALL_STATE(1235)] = 63924, + [SMALL_STATE(1236)] = 63946, + [SMALL_STATE(1237)] = 63968, + [SMALL_STATE(1238)] = 63990, + [SMALL_STATE(1239)] = 64008, + [SMALL_STATE(1240)] = 64020, + [SMALL_STATE(1241)] = 64042, + [SMALL_STATE(1242)] = 64058, + [SMALL_STATE(1243)] = 64074, + [SMALL_STATE(1244)] = 64092, + [SMALL_STATE(1245)] = 64104, + [SMALL_STATE(1246)] = 64118, + [SMALL_STATE(1247)] = 64138, + [SMALL_STATE(1248)] = 64158, + [SMALL_STATE(1249)] = 64174, + [SMALL_STATE(1250)] = 64194, + [SMALL_STATE(1251)] = 64212, + [SMALL_STATE(1252)] = 64228, + [SMALL_STATE(1253)] = 64242, + [SMALL_STATE(1254)] = 64256, + [SMALL_STATE(1255)] = 64278, + [SMALL_STATE(1256)] = 64295, + [SMALL_STATE(1257)] = 64314, + [SMALL_STATE(1258)] = 64329, + [SMALL_STATE(1259)] = 64346, + [SMALL_STATE(1260)] = 64361, + [SMALL_STATE(1261)] = 64376, + [SMALL_STATE(1262)] = 64393, + [SMALL_STATE(1263)] = 64410, + [SMALL_STATE(1264)] = 64421, + [SMALL_STATE(1265)] = 64438, + [SMALL_STATE(1266)] = 64457, + [SMALL_STATE(1267)] = 64474, + [SMALL_STATE(1268)] = 64485, + [SMALL_STATE(1269)] = 64502, + [SMALL_STATE(1270)] = 64519, + [SMALL_STATE(1271)] = 64534, + [SMALL_STATE(1272)] = 64551, + [SMALL_STATE(1273)] = 64570, + [SMALL_STATE(1274)] = 64581, + [SMALL_STATE(1275)] = 64598, + [SMALL_STATE(1276)] = 64615, + [SMALL_STATE(1277)] = 64632, + [SMALL_STATE(1278)] = 64643, + [SMALL_STATE(1279)] = 64658, + [SMALL_STATE(1280)] = 64675, + [SMALL_STATE(1281)] = 64690, + [SMALL_STATE(1282)] = 64709, + [SMALL_STATE(1283)] = 64726, + [SMALL_STATE(1284)] = 64745, + [SMALL_STATE(1285)] = 64764, + [SMALL_STATE(1286)] = 64781, + [SMALL_STATE(1287)] = 64796, + [SMALL_STATE(1288)] = 64815, + [SMALL_STATE(1289)] = 64834, + [SMALL_STATE(1290)] = 64845, + [SMALL_STATE(1291)] = 64862, + [SMALL_STATE(1292)] = 64879, + [SMALL_STATE(1293)] = 64896, + [SMALL_STATE(1294)] = 64910, + [SMALL_STATE(1295)] = 64924, + [SMALL_STATE(1296)] = 64940, + [SMALL_STATE(1297)] = 64956, + [SMALL_STATE(1298)] = 64972, + [SMALL_STATE(1299)] = 64986, + [SMALL_STATE(1300)] = 65000, + [SMALL_STATE(1301)] = 65010, + [SMALL_STATE(1302)] = 65026, + [SMALL_STATE(1303)] = 65042, + [SMALL_STATE(1304)] = 65058, + [SMALL_STATE(1305)] = 65072, + [SMALL_STATE(1306)] = 65086, + [SMALL_STATE(1307)] = 65098, + [SMALL_STATE(1308)] = 65114, + [SMALL_STATE(1309)] = 65124, + [SMALL_STATE(1310)] = 65138, + [SMALL_STATE(1311)] = 65154, + [SMALL_STATE(1312)] = 65170, + [SMALL_STATE(1313)] = 65186, + [SMALL_STATE(1314)] = 65196, + [SMALL_STATE(1315)] = 65206, + [SMALL_STATE(1316)] = 65216, + [SMALL_STATE(1317)] = 65230, + [SMALL_STATE(1318)] = 65244, + [SMALL_STATE(1319)] = 65258, + [SMALL_STATE(1320)] = 65272, + [SMALL_STATE(1321)] = 65286, + [SMALL_STATE(1322)] = 65302, + [SMALL_STATE(1323)] = 65318, + [SMALL_STATE(1324)] = 65334, + [SMALL_STATE(1325)] = 65350, + [SMALL_STATE(1326)] = 65364, + [SMALL_STATE(1327)] = 65378, + [SMALL_STATE(1328)] = 65392, + [SMALL_STATE(1329)] = 65408, + [SMALL_STATE(1330)] = 65424, + [SMALL_STATE(1331)] = 65440, + [SMALL_STATE(1332)] = 65456, + [SMALL_STATE(1333)] = 65472, + [SMALL_STATE(1334)] = 65488, + [SMALL_STATE(1335)] = 65504, + [SMALL_STATE(1336)] = 65520, + [SMALL_STATE(1337)] = 65534, + [SMALL_STATE(1338)] = 65548, + [SMALL_STATE(1339)] = 65562, + [SMALL_STATE(1340)] = 65578, + [SMALL_STATE(1341)] = 65592, + [SMALL_STATE(1342)] = 65604, + [SMALL_STATE(1343)] = 65618, + [SMALL_STATE(1344)] = 65634, + [SMALL_STATE(1345)] = 65648, + [SMALL_STATE(1346)] = 65664, + [SMALL_STATE(1347)] = 65680, + [SMALL_STATE(1348)] = 65696, + [SMALL_STATE(1349)] = 65712, + [SMALL_STATE(1350)] = 65728, + [SMALL_STATE(1351)] = 65744, + [SMALL_STATE(1352)] = 65760, + [SMALL_STATE(1353)] = 65776, + [SMALL_STATE(1354)] = 65790, + [SMALL_STATE(1355)] = 65804, + [SMALL_STATE(1356)] = 65818, + [SMALL_STATE(1357)] = 65832, + [SMALL_STATE(1358)] = 65848, + [SMALL_STATE(1359)] = 65858, + [SMALL_STATE(1360)] = 65872, + [SMALL_STATE(1361)] = 65886, + [SMALL_STATE(1362)] = 65902, + [SMALL_STATE(1363)] = 65916, + [SMALL_STATE(1364)] = 65930, + [SMALL_STATE(1365)] = 65944, + [SMALL_STATE(1366)] = 65958, + [SMALL_STATE(1367)] = 65974, + [SMALL_STATE(1368)] = 65990, + [SMALL_STATE(1369)] = 66004, + [SMALL_STATE(1370)] = 66020, + [SMALL_STATE(1371)] = 66036, + [SMALL_STATE(1372)] = 66050, + [SMALL_STATE(1373)] = 66064, + [SMALL_STATE(1374)] = 66080, + [SMALL_STATE(1375)] = 66093, + [SMALL_STATE(1376)] = 66106, + [SMALL_STATE(1377)] = 66119, + [SMALL_STATE(1378)] = 66132, + [SMALL_STATE(1379)] = 66145, + [SMALL_STATE(1380)] = 66154, + [SMALL_STATE(1381)] = 66165, + [SMALL_STATE(1382)] = 66178, + [SMALL_STATE(1383)] = 66189, + [SMALL_STATE(1384)] = 66202, + [SMALL_STATE(1385)] = 66215, + [SMALL_STATE(1386)] = 66228, + [SMALL_STATE(1387)] = 66241, + [SMALL_STATE(1388)] = 66254, + [SMALL_STATE(1389)] = 66267, + [SMALL_STATE(1390)] = 66280, + [SMALL_STATE(1391)] = 66293, + [SMALL_STATE(1392)] = 66304, + [SMALL_STATE(1393)] = 66317, + [SMALL_STATE(1394)] = 66328, + [SMALL_STATE(1395)] = 66337, + [SMALL_STATE(1396)] = 66350, + [SMALL_STATE(1397)] = 66363, + [SMALL_STATE(1398)] = 66376, + [SMALL_STATE(1399)] = 66389, + [SMALL_STATE(1400)] = 66402, + [SMALL_STATE(1401)] = 66415, + [SMALL_STATE(1402)] = 66428, + [SMALL_STATE(1403)] = 66441, + [SMALL_STATE(1404)] = 66454, + [SMALL_STATE(1405)] = 66463, + [SMALL_STATE(1406)] = 66476, + [SMALL_STATE(1407)] = 66487, + [SMALL_STATE(1408)] = 66500, + [SMALL_STATE(1409)] = 66513, + [SMALL_STATE(1410)] = 66526, + [SMALL_STATE(1411)] = 66539, + [SMALL_STATE(1412)] = 66552, + [SMALL_STATE(1413)] = 66565, + [SMALL_STATE(1414)] = 66578, + [SMALL_STATE(1415)] = 66591, + [SMALL_STATE(1416)] = 66604, + [SMALL_STATE(1417)] = 66617, + [SMALL_STATE(1418)] = 66630, + [SMALL_STATE(1419)] = 66643, + [SMALL_STATE(1420)] = 66656, + [SMALL_STATE(1421)] = 66665, + [SMALL_STATE(1422)] = 66674, + [SMALL_STATE(1423)] = 66687, + [SMALL_STATE(1424)] = 66700, + [SMALL_STATE(1425)] = 66713, + [SMALL_STATE(1426)] = 66726, + [SMALL_STATE(1427)] = 66739, + [SMALL_STATE(1428)] = 66752, + [SMALL_STATE(1429)] = 66765, + [SMALL_STATE(1430)] = 66778, + [SMALL_STATE(1431)] = 66791, + [SMALL_STATE(1432)] = 66804, + [SMALL_STATE(1433)] = 66817, + [SMALL_STATE(1434)] = 66830, + [SMALL_STATE(1435)] = 66843, + [SMALL_STATE(1436)] = 66856, + [SMALL_STATE(1437)] = 66869, + [SMALL_STATE(1438)] = 66882, + [SMALL_STATE(1439)] = 66895, + [SMALL_STATE(1440)] = 66908, + [SMALL_STATE(1441)] = 66921, + [SMALL_STATE(1442)] = 66934, + [SMALL_STATE(1443)] = 66945, + [SMALL_STATE(1444)] = 66958, + [SMALL_STATE(1445)] = 66967, + [SMALL_STATE(1446)] = 66976, + [SMALL_STATE(1447)] = 66985, + [SMALL_STATE(1448)] = 66994, + [SMALL_STATE(1449)] = 67007, + [SMALL_STATE(1450)] = 67020, + [SMALL_STATE(1451)] = 67033, + [SMALL_STATE(1452)] = 67046, + [SMALL_STATE(1453)] = 67059, + [SMALL_STATE(1454)] = 67072, + [SMALL_STATE(1455)] = 67085, + [SMALL_STATE(1456)] = 67096, + [SMALL_STATE(1457)] = 67109, + [SMALL_STATE(1458)] = 67122, + [SMALL_STATE(1459)] = 67135, + [SMALL_STATE(1460)] = 67148, + [SMALL_STATE(1461)] = 67161, + [SMALL_STATE(1462)] = 67174, + [SMALL_STATE(1463)] = 67187, + [SMALL_STATE(1464)] = 67196, + [SMALL_STATE(1465)] = 67205, + [SMALL_STATE(1466)] = 67214, + [SMALL_STATE(1467)] = 67227, + [SMALL_STATE(1468)] = 67240, + [SMALL_STATE(1469)] = 67253, + [SMALL_STATE(1470)] = 67266, + [SMALL_STATE(1471)] = 67275, + [SMALL_STATE(1472)] = 67288, + [SMALL_STATE(1473)] = 67301, + [SMALL_STATE(1474)] = 67314, + [SMALL_STATE(1475)] = 67327, + [SMALL_STATE(1476)] = 67338, + [SMALL_STATE(1477)] = 67351, + [SMALL_STATE(1478)] = 67364, + [SMALL_STATE(1479)] = 67377, + [SMALL_STATE(1480)] = 67388, + [SMALL_STATE(1481)] = 67401, + [SMALL_STATE(1482)] = 67414, + [SMALL_STATE(1483)] = 67425, + [SMALL_STATE(1484)] = 67438, + [SMALL_STATE(1485)] = 67451, + [SMALL_STATE(1486)] = 67464, + [SMALL_STATE(1487)] = 67473, + [SMALL_STATE(1488)] = 67486, + [SMALL_STATE(1489)] = 67499, + [SMALL_STATE(1490)] = 67512, + [SMALL_STATE(1491)] = 67525, + [SMALL_STATE(1492)] = 67538, + [SMALL_STATE(1493)] = 67551, + [SMALL_STATE(1494)] = 67564, + [SMALL_STATE(1495)] = 67577, + [SMALL_STATE(1496)] = 67590, + [SMALL_STATE(1497)] = 67603, + [SMALL_STATE(1498)] = 67614, + [SMALL_STATE(1499)] = 67627, + [SMALL_STATE(1500)] = 67640, + [SMALL_STATE(1501)] = 67653, + [SMALL_STATE(1502)] = 67662, + [SMALL_STATE(1503)] = 67673, + [SMALL_STATE(1504)] = 67686, + [SMALL_STATE(1505)] = 67699, + [SMALL_STATE(1506)] = 67712, + [SMALL_STATE(1507)] = 67725, + [SMALL_STATE(1508)] = 67733, + [SMALL_STATE(1509)] = 67741, + [SMALL_STATE(1510)] = 67751, + [SMALL_STATE(1511)] = 67761, + [SMALL_STATE(1512)] = 67771, + [SMALL_STATE(1513)] = 67781, + [SMALL_STATE(1514)] = 67791, + [SMALL_STATE(1515)] = 67799, + [SMALL_STATE(1516)] = 67807, + [SMALL_STATE(1517)] = 67815, + [SMALL_STATE(1518)] = 67823, + [SMALL_STATE(1519)] = 67831, + [SMALL_STATE(1520)] = 67839, + [SMALL_STATE(1521)] = 67847, + [SMALL_STATE(1522)] = 67855, + [SMALL_STATE(1523)] = 67863, + [SMALL_STATE(1524)] = 67871, + [SMALL_STATE(1525)] = 67879, + [SMALL_STATE(1526)] = 67887, + [SMALL_STATE(1527)] = 67895, + [SMALL_STATE(1528)] = 67903, + [SMALL_STATE(1529)] = 67911, + [SMALL_STATE(1530)] = 67919, + [SMALL_STATE(1531)] = 67927, + [SMALL_STATE(1532)] = 67935, + [SMALL_STATE(1533)] = 67943, + [SMALL_STATE(1534)] = 67951, + [SMALL_STATE(1535)] = 67959, + [SMALL_STATE(1536)] = 67967, + [SMALL_STATE(1537)] = 67975, + [SMALL_STATE(1538)] = 67983, + [SMALL_STATE(1539)] = 67991, + [SMALL_STATE(1540)] = 68001, + [SMALL_STATE(1541)] = 68009, + [SMALL_STATE(1542)] = 68019, + [SMALL_STATE(1543)] = 68027, + [SMALL_STATE(1544)] = 68037, + [SMALL_STATE(1545)] = 68047, + [SMALL_STATE(1546)] = 68055, + [SMALL_STATE(1547)] = 68065, + [SMALL_STATE(1548)] = 68073, + [SMALL_STATE(1549)] = 68083, + [SMALL_STATE(1550)] = 68093, + [SMALL_STATE(1551)] = 68103, + [SMALL_STATE(1552)] = 68111, + [SMALL_STATE(1553)] = 68121, + [SMALL_STATE(1554)] = 68131, + [SMALL_STATE(1555)] = 68141, + [SMALL_STATE(1556)] = 68149, + [SMALL_STATE(1557)] = 68159, + [SMALL_STATE(1558)] = 68169, + [SMALL_STATE(1559)] = 68177, + [SMALL_STATE(1560)] = 68187, + [SMALL_STATE(1561)] = 68197, + [SMALL_STATE(1562)] = 68207, + [SMALL_STATE(1563)] = 68217, + [SMALL_STATE(1564)] = 68225, + [SMALL_STATE(1565)] = 68235, + [SMALL_STATE(1566)] = 68245, + [SMALL_STATE(1567)] = 68255, + [SMALL_STATE(1568)] = 68265, + [SMALL_STATE(1569)] = 68273, + [SMALL_STATE(1570)] = 68283, + [SMALL_STATE(1571)] = 68291, + [SMALL_STATE(1572)] = 68299, + [SMALL_STATE(1573)] = 68307, + [SMALL_STATE(1574)] = 68315, + [SMALL_STATE(1575)] = 68325, + [SMALL_STATE(1576)] = 68333, + [SMALL_STATE(1577)] = 68343, + [SMALL_STATE(1578)] = 68351, + [SMALL_STATE(1579)] = 68361, + [SMALL_STATE(1580)] = 68369, + [SMALL_STATE(1581)] = 68377, + [SMALL_STATE(1582)] = 68385, + [SMALL_STATE(1583)] = 68395, + [SMALL_STATE(1584)] = 68402, + [SMALL_STATE(1585)] = 68409, + [SMALL_STATE(1586)] = 68416, + [SMALL_STATE(1587)] = 68423, + [SMALL_STATE(1588)] = 68430, + [SMALL_STATE(1589)] = 68437, + [SMALL_STATE(1590)] = 68444, + [SMALL_STATE(1591)] = 68451, + [SMALL_STATE(1592)] = 68458, + [SMALL_STATE(1593)] = 68465, + [SMALL_STATE(1594)] = 68472, + [SMALL_STATE(1595)] = 68479, + [SMALL_STATE(1596)] = 68486, + [SMALL_STATE(1597)] = 68493, + [SMALL_STATE(1598)] = 68500, + [SMALL_STATE(1599)] = 68507, + [SMALL_STATE(1600)] = 68514, + [SMALL_STATE(1601)] = 68521, + [SMALL_STATE(1602)] = 68528, + [SMALL_STATE(1603)] = 68535, + [SMALL_STATE(1604)] = 68542, + [SMALL_STATE(1605)] = 68549, + [SMALL_STATE(1606)] = 68556, + [SMALL_STATE(1607)] = 68563, + [SMALL_STATE(1608)] = 68570, + [SMALL_STATE(1609)] = 68577, + [SMALL_STATE(1610)] = 68584, + [SMALL_STATE(1611)] = 68591, + [SMALL_STATE(1612)] = 68598, + [SMALL_STATE(1613)] = 68605, + [SMALL_STATE(1614)] = 68612, + [SMALL_STATE(1615)] = 68619, + [SMALL_STATE(1616)] = 68626, + [SMALL_STATE(1617)] = 68633, + [SMALL_STATE(1618)] = 68640, + [SMALL_STATE(1619)] = 68647, + [SMALL_STATE(1620)] = 68654, + [SMALL_STATE(1621)] = 68661, + [SMALL_STATE(1622)] = 68668, + [SMALL_STATE(1623)] = 68675, + [SMALL_STATE(1624)] = 68682, + [SMALL_STATE(1625)] = 68689, + [SMALL_STATE(1626)] = 68696, + [SMALL_STATE(1627)] = 68703, + [SMALL_STATE(1628)] = 68710, + [SMALL_STATE(1629)] = 68717, + [SMALL_STATE(1630)] = 68724, + [SMALL_STATE(1631)] = 68731, + [SMALL_STATE(1632)] = 68738, + [SMALL_STATE(1633)] = 68745, + [SMALL_STATE(1634)] = 68752, + [SMALL_STATE(1635)] = 68759, + [SMALL_STATE(1636)] = 68766, + [SMALL_STATE(1637)] = 68773, + [SMALL_STATE(1638)] = 68780, + [SMALL_STATE(1639)] = 68787, + [SMALL_STATE(1640)] = 68794, + [SMALL_STATE(1641)] = 68801, + [SMALL_STATE(1642)] = 68808, + [SMALL_STATE(1643)] = 68815, + [SMALL_STATE(1644)] = 68822, + [SMALL_STATE(1645)] = 68829, + [SMALL_STATE(1646)] = 68836, + [SMALL_STATE(1647)] = 68843, + [SMALL_STATE(1648)] = 68850, + [SMALL_STATE(1649)] = 68857, + [SMALL_STATE(1650)] = 68864, + [SMALL_STATE(1651)] = 68871, + [SMALL_STATE(1652)] = 68878, + [SMALL_STATE(1653)] = 68885, + [SMALL_STATE(1654)] = 68892, + [SMALL_STATE(1655)] = 68899, + [SMALL_STATE(1656)] = 68906, + [SMALL_STATE(1657)] = 68913, + [SMALL_STATE(1658)] = 68920, + [SMALL_STATE(1659)] = 68927, + [SMALL_STATE(1660)] = 68934, + [SMALL_STATE(1661)] = 68941, + [SMALL_STATE(1662)] = 68948, + [SMALL_STATE(1663)] = 68955, + [SMALL_STATE(1664)] = 68962, + [SMALL_STATE(1665)] = 68969, + [SMALL_STATE(1666)] = 68976, + [SMALL_STATE(1667)] = 68983, + [SMALL_STATE(1668)] = 68990, + [SMALL_STATE(1669)] = 68997, + [SMALL_STATE(1670)] = 69004, + [SMALL_STATE(1671)] = 69011, + [SMALL_STATE(1672)] = 69018, + [SMALL_STATE(1673)] = 69025, + [SMALL_STATE(1674)] = 69032, + [SMALL_STATE(1675)] = 69039, + [SMALL_STATE(1676)] = 69046, + [SMALL_STATE(1677)] = 69053, + [SMALL_STATE(1678)] = 69060, + [SMALL_STATE(1679)] = 69067, + [SMALL_STATE(1680)] = 69074, + [SMALL_STATE(1681)] = 69081, + [SMALL_STATE(1682)] = 69088, + [SMALL_STATE(1683)] = 69095, + [SMALL_STATE(1684)] = 69102, + [SMALL_STATE(1685)] = 69109, + [SMALL_STATE(1686)] = 69116, + [SMALL_STATE(1687)] = 69123, + [SMALL_STATE(1688)] = 69130, + [SMALL_STATE(1689)] = 69137, + [SMALL_STATE(1690)] = 69144, + [SMALL_STATE(1691)] = 69151, + [SMALL_STATE(1692)] = 69158, + [SMALL_STATE(1693)] = 69165, + [SMALL_STATE(1694)] = 69172, + [SMALL_STATE(1695)] = 69179, + [SMALL_STATE(1696)] = 69186, + [SMALL_STATE(1697)] = 69193, + [SMALL_STATE(1698)] = 69200, + [SMALL_STATE(1699)] = 69207, + [SMALL_STATE(1700)] = 69214, + [SMALL_STATE(1701)] = 69221, + [SMALL_STATE(1702)] = 69228, + [SMALL_STATE(1703)] = 69235, + [SMALL_STATE(1704)] = 69242, + [SMALL_STATE(1705)] = 69249, + [SMALL_STATE(1706)] = 69256, + [SMALL_STATE(1707)] = 69263, + [SMALL_STATE(1708)] = 69270, + [SMALL_STATE(1709)] = 69277, + [SMALL_STATE(1710)] = 69284, + [SMALL_STATE(1711)] = 69291, + [SMALL_STATE(1712)] = 69298, + [SMALL_STATE(1713)] = 69305, + [SMALL_STATE(1714)] = 69312, + [SMALL_STATE(1715)] = 69319, + [SMALL_STATE(1716)] = 69326, + [SMALL_STATE(1717)] = 69333, + [SMALL_STATE(1718)] = 69340, + [SMALL_STATE(1719)] = 69347, + [SMALL_STATE(1720)] = 69354, + [SMALL_STATE(1721)] = 69361, + [SMALL_STATE(1722)] = 69368, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), - [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 0), - [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(440), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1113), - [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1013), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(389), - [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(111), - [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(388), - [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(186), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(225), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(177), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1314), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1315), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1316), - [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(329), - [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(299), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(456), - [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(333), - [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1496), - [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(281), - [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), - [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(589), - [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), - [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), - [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1494), - [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1493), - [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1492), - [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(381), - [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(397), - [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1491), - [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), - [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(317), - [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(869), - [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(178), - [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(760), - [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(760), + [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 0, 0, 0), + [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(462), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1321), + [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1201), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(384), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(406), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(217), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(244), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(184), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1523), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1525), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1531), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(385), + [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(324), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(508), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(407), + [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1712), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(288), + [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), + [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676), + [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), + [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), + [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1619), + [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1585), + [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1648), + [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(367), + [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(458), + [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1629), + [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), + [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(343), + [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1016), + [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(174), + [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(908), + [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(908), [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(134), - [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(926), - [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(907), - [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(373), - [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(298), - [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(448), - [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(325), - [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1479), - [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(269), - [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), - [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1501), - [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1482), - [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), - [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), - [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1312), - [109] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(440), - [112] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1113), - [115] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1013), - [118] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(153), - [121] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(389), - [124] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(111), - [127] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(388), - [130] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(186), - [133] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(225), - [136] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(177), - [139] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1314), - [142] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1315), - [145] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1316), - [148] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(373), - [151] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(298), - [154] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(448), - [157] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(325), - [160] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1479), - [163] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(269), - [166] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(67), - [169] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(589), - [172] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(155), - [175] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(161), - [178] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(346), - [181] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1501), - [184] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1493), - [187] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1492), - [190] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(381), - [193] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(397), - [196] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1482), - [199] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(351), - [202] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(317), - [205] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(869), - [208] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(178), - [211] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(760), - [214] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(760), - [217] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(134), - [220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), - [222] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(926), - [225] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(907), - [228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1360), - [230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), - [232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), - [234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1), - [236] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(329), - [239] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(299), - [242] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(456), - [245] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(333), - [248] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1496), - [251] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(281), - [254] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(66), - [257] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1494), - [260] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1491), - [263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(687), - [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), - [267] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(191), - [270] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, .production_id = 1), REDUCE(sym_primary_expression, 1, .production_id = 1), - [273] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(337), - [276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(694), - [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), - [280] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, .production_id = 1), - [282] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(615), - [285] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(189), + [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1035), + [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1037), + [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(423), + [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(338), + [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(493), + [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(424), + [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1688), + [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(304), + [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), + [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1713), + [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1691), + [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1521), + [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), + [109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), + [111] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(462), + [114] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1321), + [117] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1201), + [120] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(162), + [123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(384), + [126] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(68), + [129] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(406), + [132] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(217), + [135] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(244), + [138] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(184), + [141] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1523), + [144] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1525), + [147] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1531), + [150] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(385), + [153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(324), + [156] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(508), + [159] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(407), + [162] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1712), + [165] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(288), + [168] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(67), + [171] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(676), + [174] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(157), + [177] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(164), + [180] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(378), + [183] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1619), + [186] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1585), + [189] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1648), + [192] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(367), + [195] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(458), + [198] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1629), + [201] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(342), + [204] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(343), + [207] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1016), + [210] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(174), + [213] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(908), + [216] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(908), + [219] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(134), + [222] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1035), + [225] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1037), + [228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1536), + [230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, 0, 0), + [232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), + [234] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(423), + [237] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(338), + [240] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(493), + [243] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(424), + [246] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1688), + [249] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(304), + [252] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(66), + [255] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1713), + [258] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1691), + [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), + [263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(774), + [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), + [267] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(194), + [270] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 1), REDUCE(sym_primary_expression, 1, 0, 1), + [273] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(370), + [276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(773), + [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), + [280] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 1), + [282] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(675), + [285] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(197), [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), - [290] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(346), - [293] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(338), - [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(615), - [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), - [300] = {.entry = {.count = 1, .reusable = false}}, SHIFT(868), - [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, .production_id = 1), - [304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), - [306] = {.entry = {.count = 1, .reusable = false}}, SHIFT(649), + [290] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(378), + [293] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(391), + [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(675), + [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), + [300] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1015), + [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 1), + [304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(724), + [306] = {.entry = {.count = 1, .reusable = false}}, SHIFT(724), [308] = {.entry = {.count = 1, .reusable = false}}, SHIFT(136), - [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(913), - [312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(916), - [314] = {.entry = {.count = 1, .reusable = false}}, SHIFT(429), - [316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(536), - [318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), - [322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(533), - [326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), - [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), - [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), - [338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), - [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), - [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), - [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), - [354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(455), - [358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(539), - [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(493), - [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(487), - [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), - [374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471), - [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550), - [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476), - [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), - [390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), - [394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), - [398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), - [402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(558), - [406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(391), - [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), - [414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), - [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), - [422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(394), - [426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(465), - [430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525), - [434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453), - [438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(547), - [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(567), - [446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(997), - [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(477), - [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472), - [458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), - [462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438), - [466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), - [470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), - [474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), - [478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509), - [482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(552), - [486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [488] = {.entry = {.count = 1, .reusable = false}}, SHIFT(730), - [490] = {.entry = {.count = 1, .reusable = false}}, SHIFT(727), - [492] = {.entry = {.count = 1, .reusable = false}}, SHIFT(323), - [494] = {.entry = {.count = 1, .reusable = false}}, SHIFT(140), - [496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501), - [498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), - [502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(995), - [506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), - [510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(561), - [514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), - [518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468), - [522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(564), - [526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(563), - [530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(515), - [534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(557), - [538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399), - [542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), - [546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508), - [550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(507), - [554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), - [558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), - [560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), - [562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1318), - [564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1383), - [566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), + [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1044), + [312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1045), + [314] = {.entry = {.count = 1, .reusable = false}}, SHIFT(853), + [316] = {.entry = {.count = 1, .reusable = false}}, SHIFT(826), + [318] = {.entry = {.count = 1, .reusable = false}}, SHIFT(365), + [320] = {.entry = {.count = 1, .reusable = false}}, SHIFT(140), + [322] = {.entry = {.count = 1, .reusable = false}}, SHIFT(465), + [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1171), + [326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), + [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550), + [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581), + [338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442), + [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(606), + [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), + [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(489), + [358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(554), + [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(557), + [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), + [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559), + [374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516), + [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520), + [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(564), + [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(566), + [390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(567), + [394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), + [398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(571), + [402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), + [406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), + [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(573), + [414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(546), + [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577), + [422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), + [426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(579), + [430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(541), + [434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(503), + [438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(480), + [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), + [446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), + [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527), + [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), + [458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), + [462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504), + [466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(589), + [470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), + [474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(488), + [478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(496), + [482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), + [486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(593), + [490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(608), + [494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), + [498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611), + [502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), + [506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506), + [510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(599), + [514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(537), + [518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602), + [522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), + [526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), + [530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613), + [534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), + [538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), + [542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1187), + [546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(543), + [550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(481), + [554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), + [558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), + [560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1515), + [562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1580), + [564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), + [566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), [568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), - [570] = {.entry = {.count = 1, .reusable = false}}, SHIFT(759), - [572] = {.entry = {.count = 1, .reusable = false}}, SHIFT(589), - [574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), - [576] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145), - [578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [580] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), REDUCE(sym_list_splat_pattern, 2, .production_id = 8), - [583] = {.entry = {.count = 1, .reusable = false}}, SHIFT(656), - [585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), - [587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, .production_id = 8), - [589] = {.entry = {.count = 1, .reusable = false}}, SHIFT(615), - [591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), - [593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, .production_id = 8), + [570] = {.entry = {.count = 1, .reusable = false}}, SHIFT(926), + [572] = {.entry = {.count = 1, .reusable = false}}, SHIFT(676), + [574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [576] = {.entry = {.count = 1, .reusable = false}}, SHIFT(149), + [578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [580] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), REDUCE(sym_list_splat_pattern, 2, 0, 8), + [583] = {.entry = {.count = 1, .reusable = false}}, SHIFT(723), + [585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), + [587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 8), + [589] = {.entry = {.count = 1, .reusable = false}}, SHIFT(675), + [591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), + [593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 8), [595] = {.entry = {.count = 1, .reusable = false}}, SHIFT(137), - [597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), - [599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), - [601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(600), - [603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), - [605] = {.entry = {.count = 1, .reusable = false}}, SHIFT(139), - [607] = {.entry = {.count = 1, .reusable = false}}, SHIFT(809), - [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), - [611] = {.entry = {.count = 1, .reusable = false}}, SHIFT(802), - [613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), - [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(617), - [617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), - [619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(809), - [623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147), - [625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(906), - [627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(915), - [629] = {.entry = {.count = 1, .reusable = false}}, SHIFT(332), - [631] = {.entry = {.count = 1, .reusable = false}}, SHIFT(386), - [633] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 1), - [635] = {.entry = {.count = 1, .reusable = false}}, SHIFT(337), - [637] = {.entry = {.count = 1, .reusable = false}}, SHIFT(338), - [639] = {.entry = {.count = 1, .reusable = false}}, SHIFT(754), - [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), - [645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), - [647] = {.entry = {.count = 1, .reusable = false}}, SHIFT(729), - [649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [651] = {.entry = {.count = 1, .reusable = false}}, SHIFT(371), - [653] = {.entry = {.count = 1, .reusable = false}}, SHIFT(864), - [655] = {.entry = {.count = 1, .reusable = false}}, SHIFT(152), - [657] = {.entry = {.count = 1, .reusable = false}}, SHIFT(146), - [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(756), - [661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), - [663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(738), - [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(796), - [667] = {.entry = {.count = 1, .reusable = false}}, SHIFT(735), - [669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [671] = {.entry = {.count = 1, .reusable = false}}, SHIFT(623), - [673] = {.entry = {.count = 1, .reusable = false}}, SHIFT(731), - [675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 3, .production_id = 16), - [677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 3, .production_id = 16), - [679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [681] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141), - [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(724), - [685] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, .production_id = 7), - [687] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 2, .production_id = 7), - [689] = {.entry = {.count = 1, .reusable = false}}, SHIFT(692), - [691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1442), - [695] = {.entry = {.count = 1, .reusable = false}}, SHIFT(693), - [697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(786), - [699] = {.entry = {.count = 1, .reusable = false}}, SHIFT(138), - [701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, .production_id = 7), - [703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 3, .production_id = 16), - [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1394), - [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(811), - [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1389), - [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), - [713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [715] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 3, .production_id = 50), - [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), - [719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(749), - [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), - [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1468), - [725] = {.entry = {.count = 1, .reusable = false}}, SHIFT(747), - [727] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), - [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), - [731] = {.entry = {.count = 1, .reusable = false}}, SHIFT(825), - [733] = {.entry = {.count = 1, .reusable = false}}, SHIFT(803), - [735] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148), - [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(838), - [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1405), - [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(757), - [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1436), - [745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, .production_id = 24), - [747] = {.entry = {.count = 1, .reusable = false}}, SHIFT(342), - [749] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 1), - [751] = {.entry = {.count = 1, .reusable = false}}, SHIFT(380), - [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(647), - [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(808), - [757] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 7, .production_id = 141), - [759] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 7, .production_id = 141), - [761] = {.entry = {.count = 1, .reusable = false}}, SHIFT(865), - [763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(644), - [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(793), - [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(790), - [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(767), - [771] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1), - [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641), - [775] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 3, .production_id = 16), - [777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(379), - [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), - [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(690), - [783] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, .production_id = 123), - [785] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, .production_id = 123), - [787] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, .production_id = 122), - [789] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, .production_id = 122), - [791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(818), - [793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(815), - [795] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, .production_id = 98), - [797] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 5, .production_id = 98), - [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(794), - [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(806), - [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703), - [805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(805), - [807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(779), - [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(782), - [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(697), - [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(784), - [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(648), - [817] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 2, .production_id = 7), - [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), - [821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), - [823] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 3, .production_id = 16), - [825] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, .production_id = 33), - [827] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, .production_id = 7), - [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646), - [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(834), - [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(776), - [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(645), - [837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(819), - [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(821), - [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(780), - [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634), - [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(775), - [847] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, .production_id = 56), - [849] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, .production_id = 56), - [851] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1439), - [853] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1429), - [855] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1503), - [857] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 1), - [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), - [861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 4, .production_id = 70), - [863] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 4, .production_id = 70), - [865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, .production_id = 40), - [867] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, .production_id = 40), - [869] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, .production_id = 69), - [871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), - [873] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, .production_id = 81), - [875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, .production_id = 81), - [877] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1452), - [879] = {.entry = {.count = 1, .reusable = false}}, SHIFT(277), - [881] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1449), - [883] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1495), - [885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), - [887] = {.entry = {.count = 1, .reusable = false}}, SHIFT(267), - [889] = {.entry = {.count = 1, .reusable = false}}, SHIFT(778), - [891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), - [893] = {.entry = {.count = 1, .reusable = false}}, SHIFT(762), - [895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [897] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370), - [899] = {.entry = {.count = 1, .reusable = false}}, SHIFT(866), - [901] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), - [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), - [905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, .production_id = 10), - [909] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, .production_id = 68), - [911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), - [913] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, .production_id = 29), - [915] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, .production_id = 28), - [917] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, .production_id = 69), - [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1395), - [921] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, .production_id = 95), - [923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1425), - [925] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2), - [927] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3), - [929] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2), - [931] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), - [933] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(267), - [936] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, .production_id = 76), - [938] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, .production_id = 76), - [940] = {.entry = {.count = 1, .reusable = false}}, SHIFT(318), - [942] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, .production_id = 77), - [944] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, .production_id = 77), - [946] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2), - [948] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2), - [950] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2), SHIFT_REPEAT(1495), - [953] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(277), - [956] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 2), - [958] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 2), - [960] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2), - [962] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2), - [964] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 3), - [966] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 3), - [968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458), - [970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), - [972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1502), - [974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(467), - [976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), - [978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1414), - [980] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, .production_id = 54), - [982] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, .production_id = 54), - [984] = {.entry = {.count = 1, .reusable = false}}, SHIFT(365), - [986] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 4), - [988] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 4), - [990] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 1), - [992] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 1), - [994] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2), SHIFT_REPEAT(1429), - [997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, .production_id = 102), - [999] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, .production_id = 102), - [1001] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, .production_id = 100), - [1003] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, .production_id = 100), - [1005] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, .production_id = 100), SHIFT_REPEAT(365), - [1008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(932), - [1010] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, .production_id = 100), SHIFT_REPEAT(318), - [1013] = {.entry = {.count = 1, .reusable = false}}, SHIFT(416), - [1015] = {.entry = {.count = 1, .reusable = false}}, SHIFT(442), - [1017] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), - [1019] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cases, 1), - [1021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cases, 1), - [1023] = {.entry = {.count = 1, .reusable = false}}, SHIFT(733), - [1025] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 7, .production_id = 163), - [1027] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 7, .production_id = 163), - [1029] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 7, .production_id = 164), - [1031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 7, .production_id = 164), - [1033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, .production_id = 130), - [1035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, .production_id = 130), - [1037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 5, .production_id = 148), - [1039] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 5, .production_id = 148), - [1041] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 5, .production_id = 147), - [1043] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 5, .production_id = 147), - [1045] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1258), - [1047] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 6, .production_id = 157), - [1049] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 6, .production_id = 157), - [1051] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 6, .production_id = 158), - [1053] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 6, .production_id = 158), - [1055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 8, .production_id = 165), - [1057] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 8, .production_id = 165), - [1059] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, .production_id = 81), - [1061] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, .production_id = 81), - [1063] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_cases_repeat1, 2), - [1065] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2), - [1067] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2), SHIFT_REPEAT(728), - [1070] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 3, .production_id = 56), - [1072] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 3, .production_id = 56), - [1074] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2), SHIFT_REPEAT(733), - [1077] = {.entry = {.count = 1, .reusable = false}}, SHIFT(728), - [1079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, .production_id = 81), - [1081] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, .production_id = 81), - [1083] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1), - [1085] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1), REDUCE(sym_list_splat_pattern, 2, .production_id = 9), - [1088] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1), - [1090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), - [1092] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, .production_id = 9), - [1094] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, .production_id = 9), - [1096] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 1, .production_id = 74), - [1098] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 1, .production_id = 74), - [1100] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 125), - [1102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 125), - [1104] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 5, .production_id = 77), - [1106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 5, .production_id = 77), - [1108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, .production_id = 55), - [1110] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, .production_id = 55), - [1112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 129), - [1114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 129), - [1116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 3, .production_id = 50), - [1118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(623), - [1120] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, .production_id = 105), - [1122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, .production_id = 105), - [1124] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, .production_id = 56), - [1126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, .production_id = 56), - [1128] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, .production_id = 80), - [1130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, .production_id = 80), - [1132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 4, .production_id = 54), - [1134] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 4, .production_id = 54), - [1136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 143), - [1138] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 143), - [1140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, .production_id = 24), - [1142] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1), REDUCE(sym_primary_expression, 1), - [1145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), - [1147] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1), - [1149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1), - [1151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1209), - [1153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2), - [1155] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_list_pattern, 2), REDUCE(sym_list, 2), - [1158] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2), - [1160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 2), - [1162] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 2), - [1164] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 6, .production_id = 159), - [1166] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 6, .production_id = 159), - [1168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 2), - [1170] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_tuple_pattern, 2), REDUCE(sym_tuple, 2), - [1173] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 2), - [1175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2), - [1177] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 2), - [1179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, .production_id = 151), - [1181] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, .production_id = 151), - [1183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, .production_id = 150), - [1185] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, .production_id = 150), - [1187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 4, .production_id = 81), - [1189] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 4, .production_id = 81), - [1191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 3, .production_id = 56), - [1193] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 3, .production_id = 56), - [1195] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 4, .production_id = 134), - [1197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 4, .production_id = 134), - [1199] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, .production_id = 90), - [1201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, .production_id = 90), - [1203] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 145), - [1205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 145), - [1207] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 144), - [1209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 144), - [1211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 3, .production_id = 56), - [1213] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 3, .production_id = 56), - [1215] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 142), - [1217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 142), - [1219] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 7, .production_id = 139), - [1221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 7, .production_id = 139), - [1223] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 138), - [1225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 138), - [1227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 4, .production_id = 64), - [1229] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 4, .production_id = 64), - [1231] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 137), - [1233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 137), - [1235] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 7, .production_id = 81), - [1237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 7, .production_id = 81), - [1239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 4, .production_id = 81), - [1241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 4, .production_id = 81), - [1243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 128), - [1245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 128), - [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, .production_id = 60), - [1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, .production_id = 60), - [1251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 10, .production_id = 162), - [1253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 10, .production_id = 162), - [1255] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 127), - [1257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 127), - [1259] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 126), - [1261] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 126), - [1263] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, .production_id = 124), - [1265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, .production_id = 124), - [1267] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, .production_id = 118), - [1269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, .production_id = 118), - [1271] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, .production_id = 117), - [1273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, .production_id = 117), - [1275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, .production_id = 116), - [1277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, .production_id = 116), - [1279] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, .production_id = 115), - [1281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, .production_id = 115), - [1283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, .production_id = 114), - [1285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, .production_id = 114), - [1287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, .production_id = 161), - [1289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, .production_id = 161), - [1291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, .production_id = 56), - [1293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, .production_id = 56), - [1295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, .production_id = 156), - [1297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, .production_id = 156), - [1299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, .production_id = 75), - [1301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, .production_id = 75), - [1303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, .production_id = 155), - [1305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, .production_id = 155), - [1307] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 6, .production_id = 106), - [1309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 6, .production_id = 106), - [1311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 152), - [1313] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 152), - [1315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, .production_id = 78), - [1317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, .production_id = 78), - [1319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 4, .production_id = 57), - [1321] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 4, .production_id = 57), - [1323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 153), - [1325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 153), - [1327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, .production_id = 104), - [1329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, .production_id = 104), - [1331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, .production_id = 79), - [1333] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, .production_id = 79), - [1335] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 6, .production_id = 103), - [1337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 6, .production_id = 103), - [1339] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, .production_id = 101), - [1341] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, .production_id = 101), - [1343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, .production_id = 99), - [1345] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, .production_id = 99), - [1347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorated_definition, 2, .production_id = 19), - [1349] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decorated_definition, 2, .production_id = 19), - [1351] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, .production_id = 82), - [1353] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, .production_id = 82), - [1355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, .production_id = 59), - [1357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, .production_id = 59), - [1359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 146), - [1361] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 146), - [1363] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, .production_id = 91), - [1365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, .production_id = 91), - [1367] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 9, .production_id = 154), - [1369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 9, .production_id = 154), - [1371] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, .production_id = 89), - [1373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, .production_id = 89), - [1375] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, .production_id = 87), - [1377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, .production_id = 87), - [1379] = {.entry = {.count = 1, .reusable = false}}, SHIFT(740), - [1381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_separator, 1), - [1383] = {.entry = {.count = 1, .reusable = false}}, SHIFT(732), - [1385] = {.entry = {.count = 1, .reusable = false}}, SHIFT(142), - [1387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2), - [1389] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2), - [1391] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2), SHIFT_REPEAT(916), - [1394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_template_string, 2), - [1396] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_template_string, 2), - [1398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_string, 2), - [1400] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_string, 2), - [1402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), - [1404] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), - [1406] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(913), - [1409] = {.entry = {.count = 1, .reusable = false}}, SHIFT(592), - [1411] = {.entry = {.count = 1, .reusable = false}}, SHIFT(588), - [1413] = {.entry = {.count = 1, .reusable = false}}, SHIFT(585), - [1415] = {.entry = {.count = 1, .reusable = false}}, SHIFT(625), - [1417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, .production_id = 20), - [1419] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3, .production_id = 20), - [1421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 3, .production_id = 20), - [1423] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 3, .production_id = 20), - [1425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, .production_id = 2), - [1427] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2, .production_id = 2), - [1429] = {.entry = {.count = 1, .reusable = false}}, SHIFT(859), - [1431] = {.entry = {.count = 1, .reusable = false}}, SHIFT(852), - [1433] = {.entry = {.count = 1, .reusable = false}}, SHIFT(216), - [1435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 2, .production_id = 2), - [1437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 2, .production_id = 2), - [1439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3), - [1441] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3), - [1443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3, .production_id = 25), - [1445] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 3, .production_id = 25), - [1447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, .production_id = 61), - [1449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, .production_id = 61), - [1451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, .production_id = 61), - [1453] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, .production_id = 61), - [1455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_comprehension, 4, .production_id = 51), - [1457] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_comprehension, 4, .production_id = 51), - [1459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, .production_id = 31), - [1461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, .production_id = 31), - [1463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, .production_id = 61), - [1465] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, .production_id = 61), - [1467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 4, .production_id = 51), - [1469] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 4, .production_id = 51), - [1471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_expression, 4, .production_id = 51), - [1473] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_expression, 4, .production_id = 51), - [1475] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_comprehension, 4, .production_id = 51), - [1477] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary_comprehension, 4, .production_id = 51), - [1479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, .production_id = 93), - [1481] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, .production_id = 93), - [1483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, .production_id = 67), - [1485] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, .production_id = 67), - [1487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 2, .production_id = 17), - [1489] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 2, .production_id = 17), - [1491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, .production_id = 31), - [1493] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, .production_id = 31), - [1495] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 5, .production_id = 61), - [1497] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 5, .production_id = 61), - [1499] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, .production_id = 93), - [1501] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, .production_id = 93), - [1503] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2), - [1505] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 2), - [1507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 2), - [1509] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 2), - [1511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1412), - [1513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), - [1515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), - [1517] = {.entry = {.count = 1, .reusable = false}}, SHIFT(579), - [1519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(606), - [1521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(596), - [1523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610), - [1525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613), - [1527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), - [1529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(614), - [1531] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), - [1533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(579), - [1535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1399), - [1537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(618), - [1539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), - [1541] = {.entry = {.count = 1, .reusable = false}}, SHIFT(596), - [1543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(578), - [1545] = {.entry = {.count = 1, .reusable = false}}, SHIFT(626), - [1547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(593), - [1549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(583), - [1551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(603), - [1553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(591), - [1555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(628), - [1557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626), - [1559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1417), - [1561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(621), - [1563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(605), - [1565] = {.entry = {.count = 1, .reusable = false}}, SHIFT(583), - [1567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), - [1569] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, .production_id = 67), - [1571] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, .production_id = 67), - [1573] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, .production_id = 31), - [1575] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, .production_id = 31), - [1577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3), - [1579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3), - [1581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 3, .production_id = 25), - [1583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 3, .production_id = 25), - [1585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, .production_id = 31), - [1587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, .production_id = 31), - [1589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, .production_id = 26), - [1591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, .production_id = 26), - [1593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3, .production_id = 25), - [1595] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3, .production_id = 25), - [1597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_operator, 3, .production_id = 39), - [1599] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_operator, 3, .production_id = 39), - [1601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 41), - [1603] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 41), - [1605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, .production_id = 71), - [1607] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, .production_id = 71), - [1609] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, .production_id = 72), - [1611] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, .production_id = 72), - [1613] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_await, 2), - [1615] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_await, 2), - [1617] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 2, .production_id = 13), - [1619] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 2, .production_id = 13), - [1621] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2), SHIFT_REPEAT(915), - [1624] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(906), - [1627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387), - [1629] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2), SHIFT_REPEAT(907), - [1632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1481), - [1634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [1636] = {.entry = {.count = 1, .reusable = false}}, SHIFT(602), - [1638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(604), - [1640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(607), - [1642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(609), - [1644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611), - [1646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), - [1648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(612), - [1650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602), - [1652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1483), - [1654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(616), - [1656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(619), - [1658] = {.entry = {.count = 1, .reusable = false}}, SHIFT(607), - [1660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577), - [1662] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(926), - [1665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1398), - [1667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [1669] = {.entry = {.count = 1, .reusable = false}}, SHIFT(601), - [1671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(599), - [1673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(598), - [1675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(597), - [1677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(620), - [1679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), - [1681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(608), - [1683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(601), - [1685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1424), - [1687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(594), - [1689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(587), - [1691] = {.entry = {.count = 1, .reusable = false}}, SHIFT(598), - [1693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(575), - [1695] = {.entry = {.count = 1, .reusable = false}}, SHIFT(882), - [1697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(765), - [1699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1214), - [1701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1361), - [1703] = {.entry = {.count = 1, .reusable = false}}, SHIFT(980), - [1705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(766), - [1707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(851), - [1709] = {.entry = {.count = 1, .reusable = false}}, SHIFT(917), - [1711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917), - [1713] = {.entry = {.count = 1, .reusable = false}}, SHIFT(977), - [1715] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 3), - [1717] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 3), - [1719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(331), - [1721] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 2), - [1723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 2), - [1725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965), - [1727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(949), - [1729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952), - [1731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), - [1733] = {.entry = {.count = 1, .reusable = false}}, SHIFT(981), - [1735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(946), - [1737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(957), - [1739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(966), - [1741] = {.entry = {.count = 1, .reusable = false}}, SHIFT(956), - [1743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(939), - [1745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), - [1747] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(596), - [1750] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), - [1752] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(1399), - [1755] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(596), - [1758] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(578), - [1761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison_operator, 2, .production_id = 18), - [1763] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison_operator, 2, .production_id = 18), - [1765] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(583), - [1768] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(1417), - [1771] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(583), - [1774] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(576), - [1777] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, .production_id = 36), - [1779] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, .production_id = 36), SHIFT_REPEAT(482), - [1782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3, .production_id = 25), - [1784] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1341), - [1786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(948), - [1788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1342), - [1790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, .production_id = 31), - [1792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(962), - [1794] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(607), - [1797] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(1483), - [1800] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(607), - [1803] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(577), - [1806] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 3, .production_id = 25), - [1808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(954), - [1810] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, .production_id = 34), - [1812] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(598), - [1815] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(1424), - [1818] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(598), - [1821] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 42), SHIFT_REPEAT(575), - [1824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [1826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, .production_id = 16), - [1828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1271), - [1830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(441), - [1832] = {.entry = {.count = 1, .reusable = false}}, SHIFT(568), - [1834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), - [1836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(595), - [1838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1268), - [1840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), - [1842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343), - [1844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [1846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), - [1848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), - [1850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), - [1852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), - [1854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), - [1856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1157), - [1858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1334), - [1860] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 3), - [1862] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 2), - [1864] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_not_operator, 2, .production_id = 10), - [1866] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_not_operator, 2, .production_id = 10), - [1868] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2), - [1870] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2), SHIFT_REPEAT(1418), - [1873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1418), - [1875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 1), - [1877] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_capture_pattern, 1), - [1879] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, .production_id = 27), - [1881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), - [1883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), - [1885] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, .production_id = 27), - [1887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), - [1889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), - [1891] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 2), - [1893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), - [1895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), - [1897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [1899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), - [1901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), - [1903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1498), - [1905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), - [1907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 1, .production_id = 7), - [1909] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 3, .production_id = 32), - [1911] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 3, .production_id = 32), - [1913] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 4, .production_id = 66), - [1915] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_expression, 5), - [1917] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1), - [1919] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, .production_id = 35), - [1921] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, .production_id = 35), - [1923] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_operator, 3, .production_id = 39), - [1925] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_operator, 3, .production_id = 39), - [1927] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_expression, 5), - [1929] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 2), - [1931] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_value_pattern, 2), - [1933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(817), - [1935] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_with_item, 1, .dynamic_precedence = -1, .production_id = 12), SHIFT(176), - [1938] = {.entry = {.count = 1, .reusable = false}}, SHIFT(504), - [1940] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 4, .production_id = 66), - [1942] = {.entry = {.count = 1, .reusable = false}}, SHIFT(172), - [1944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1037), - [1946] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1037), - [1948] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), - [1950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), - [1952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(725), - [1954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(763), - [1956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), - [1958] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat, 2, .production_id = 14), - [1960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(655), - [1962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), - [1964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), - [1966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), - [1968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(719), - [1970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(624), - [1972] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, .production_id = 83), - [1974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1336), - [1976] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, .production_id = 21), SHIFT_REPEAT(172), - [1979] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, .production_id = 21), SHIFT_REPEAT(1037), - [1982] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, .production_id = 21), SHIFT_REPEAT(1037), - [1985] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, .production_id = 21), - [1987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(716), - [1989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), - [1991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(580), - [1993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581), - [1995] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 2, .production_id = 107), - [1997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1366), - [1999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1199), - [2001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(755), - [2003] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3), - [2005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(743), - [2007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(660), - [2009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, .production_id = 31), - [2011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1195), - [2013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(801), - [2015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), - [2017] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat, 2), - [2019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(798), - [2021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 1), - [2023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), - [2025] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_within_for_in_clause, 1), - [2027] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 4), - [2029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(842), - [2031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 3), - [2033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__f_expression, 1), - [2035] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), - [2037] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(375), - [2040] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(1498), - [2043] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(449), - [2046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 2), - [2048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2), - [2050] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2), SHIFT_REPEAT(842), - [2053] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 3, .production_id = 136), - [2055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_group_pattern, 3, .production_id = 131), - [2057] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 2), - [2059] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 4), - [2061] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 4, .production_id = 136), - [2063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), - [2065] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), - [2067] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 5), - [2069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), - [2071] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 5), - [2073] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 5, .production_id = 136), - [2075] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, .production_id = 36), - [2077] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, .production_id = 36), SHIFT_REPEAT(235), - [2080] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 4, .production_id = 149), - [2082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1485), - [2084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1494), - [2086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1491), - [2088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1505), - [2090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1501), - [2092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1482), - [2094] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 4), - [2096] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 6), - [2098] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 2), - [2100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 6, .production_id = 136), - [2102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 2), - [2104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 7), - [2106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 7, .production_id = 136), - [2108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 4, .production_id = 98), - [2110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), - [2112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 8, .production_id = 136), - [2114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 9, .production_id = 136), - [2116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2), - [2118] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2), SHIFT_REPEAT(270), - [2121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, .production_id = 141), - [2123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), - [2125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_or_pattern, 1), - [2127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(843), - [2129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(841), - [2131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, .production_id = 16), - [2133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [2135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 3), - [2137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), - [2139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, .production_id = 122), - [2141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), - [2143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, .production_id = 123), - [2145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [2147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), - [2149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), - [2151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 2), - [2153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 3, .production_id = 132), - [2155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 3), - [2157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, .production_id = 31), - [2159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), - [2161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), - [2163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), - [2165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), - [2167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1503), - [2169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), - [2171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1449), - [2173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 1, .dynamic_precedence = -1, .production_id = 12), - [2175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504), - [2177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), - [2179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), - [2181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [2183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1062), - [2185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1477), - [2187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1484), - [2189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_statement, 2, .production_id = 11), - [2191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), - [2193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(829), - [2195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pair, 3, .production_id = 62), - [2197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), - [2199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 4, .production_id = 15), - [2201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 2), - [2203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), - [2205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, .production_id = 10), - [2207] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1039), - [2209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1171), - [2211] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1427), - [2213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_pattern, 1), - [2215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1500), - [2217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), - [2219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(789), - [2221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 3, .production_id = 32), - [2223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), - [2225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 4, .production_id = 66), - [2227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), - [2229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(659), - [2231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__right_hand_side, 1), - [2233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1041), - [2235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1127), - [2237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1340), - [2239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2), - [2241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1), - [2243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), - [2245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [2247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), - [2249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [2251] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2), - [2253] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2), SHIFT_REPEAT(1035), - [2256] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2), SHIFT_REPEAT(1035), - [2259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2), - [2261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), - [2263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [2265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_content, 1), - [2267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1035), - [2269] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1035), - [2271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_content, 1), - [2273] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2), SHIFT_REPEAT(1486), - [2276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 1), - [2278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [2280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1486), - [2282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__index_expression, 1), - [2284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), - [2286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_bound, 2, .production_id = 109), - [2288] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, .production_id = 43), - [2290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, .production_id = 43), - [2292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2), - [2294] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2), SHIFT_REPEAT(351), - [2297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, .production_id = 3), - [2299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, .production_id = 3), - [2301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 2), - [2303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, .production_id = 43), - [2305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, .production_id = 43), - [2307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, .production_id = 68), - [2309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), - [2311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), - [2313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1147), - [2315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_chevron, 2), - [2317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, .production_id = 4), - [2319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, .production_id = 4), - [2321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [2323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 3, .production_id = 43), - [2325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 3, .production_id = 43), - [2327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2), - [2329] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2), SHIFT_REPEAT(807), - [2332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_parameter, 3, .production_id = 35), - [2334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_default_parameter, 5, .production_id = 119), - [2336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_as_pattern, 3, .production_id = 135), - [2338] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 1, .production_id = 6), - [2340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), - [2342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), - [2344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, .production_id = 31), - [2346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [2348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1138), - [2350] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 6, .production_id = 43), - [2352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 6, .production_id = 43), - [2354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2), - [2356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, .production_id = 10), - [2358] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, .production_id = 95), - [2360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), - [2362] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 2), - [2364] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2), SHIFT_REPEAT(173), - [2367] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2), SHIFT_REPEAT(1072), - [2370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1129), - [2372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_param_default, 2, .production_id = 110), - [2374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1098), - [2376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), - [2378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1179), - [2380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1270), - [2382] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, .production_id = 16), - [2384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [2386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), - [2388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), - [2390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, .production_id = 6), - [2392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 3, .production_id = 30), - [2394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), - [2396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [2398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [2400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1016), - [2402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, .production_id = 120), - [2404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_star_pattern, 2, .production_id = 11), - [2406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, .production_id = 121), - [2408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1241), - [2410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1139), - [2412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1266), - [2414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, .production_id = 140), - [2416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 4, .production_id = 53), - [2418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, .production_id = 27), - [2420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 4, .production_id = 63), - [2422] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 5, .production_id = 88), - [2424] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, .production_id = 36), SHIFT_REPEAT(230), - [2427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, .production_id = 22), - [2429] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 1), - [2431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [2433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1104), - [2435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, .production_id = 36), - [2437] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, .production_id = 36), SHIFT_REPEAT(224), - [2440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, .production_id = 94), - [2442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, .production_id = 31), - [2444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [2446] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 2), - [2448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1072), - [2450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1080), - [2452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1487), - [2454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, .production_id = 6), - [2456] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, .production_id = 35), - [2458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(871), - [2460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), - [2462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2), - [2464] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2), SHIFT_REPEAT(356), - [2467] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, .production_id = 52), SHIFT_REPEAT(339), - [2470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, .production_id = 52), - [2472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), - [2474] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_import_prefix_repeat1, 2), - [2476] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_prefix_repeat1, 2), SHIFT_REPEAT(1114), - [2479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2), - [2481] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2), SHIFT_REPEAT(288), - [2484] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, .production_id = 16), - [2486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(423), - [2488] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_parameter, 3, .production_id = 65), - [2490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), - [2492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, .production_id = 49), - [2494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3), - [2496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), - [2498] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, .production_id = 28), - [2500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [2502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [2504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1039), - [2506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [2508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), - [2510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, .production_id = 29), - [2512] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 44), SHIFT_REPEAT(1244), - [2515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 44), - [2517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 23), - [2519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1101), - [2521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, .production_id = 22), - [2523] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 3), - [2525] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2), SHIFT_REPEAT(1411), - [2528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2), - [2530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(728), - [2532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1191), - [2534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1287), - [2536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1173), - [2538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(737), - [2540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), - [2542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1411), - [2544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 2), - [2546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 2), - [2548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1097), - [2550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(733), - [2552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [2554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [2556] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, .production_id = 36), SHIFT_REPEAT(340), - [2559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, .production_id = 36), - [2561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), - [2563] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 3), - [2565] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 3), - [2567] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1), - [2569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), - [2571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), - [2573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [2575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), - [2577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [2579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), - [2581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), - [2583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_guard, 2, .production_id = 133), - [2585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 5, .production_id = 15), - [2587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [2589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), - [2591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_prefix, 1), - [2593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1114), - [2595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1146), - [2597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1421), - [2599] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorator, 3), - [2601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 2, .production_id = 23), - [2603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 2, .production_id = 23), - [2605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, .production_id = 84), - [2607] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 1, .production_id = 7), - [2609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), - [2611] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exception_list, 2, .production_id = 16), - [2613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1044), - [2615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1252), - [2617] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, .production_id = 36), SHIFT_REPEAT(253), - [2620] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, .production_id = 36), - [2622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [2624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), - [2626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), - [2628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [2630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_maybe_star_pattern, 1), - [2632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_patterns, 1), - [2634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3, .production_id = 86), - [2636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1004), - [2638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1292), - [2640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(812), - [2642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [2644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(814), - [2646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), - [2648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), - [2650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1300), - [2652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(816), - [2654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), - [2656] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, .production_id = 36), - [2658] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, .production_id = 36), SHIFT_REPEAT(212), - [2661] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2), SHIFT_REPEAT(133), - [2664] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2), - [2666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(876), - [2668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(810), - [2670] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, .production_id = 36), SHIFT_REPEAT(226), - [2673] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, .production_id = 36), - [2675] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2), SHIFT_REPEAT(870), - [2678] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2), - [2680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), - [2682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(822), - [2684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(824), - [2686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), - [2688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(768), - [2690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(983), - [2692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [2694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(827), - [2696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [2698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(833), - [2700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [2702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [2704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), - [2706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1372), - [2708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1250), - [2710] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1070), - [2712] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1086), - [2714] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 44), SHIFT_REPEAT(1190), - [2717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [2719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 37), - [2721] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_relative_import, 1), - [2723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1475), - [2725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(975), - [2727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), - [2729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [2731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), - [2733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 1), - [2735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873), - [2737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(764), - [2739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), - [2741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [2743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(774), - [2745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), - [2747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(773), - [2749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), - [2751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1221), - [2753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), - [2755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), - [2757] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 1), - [2759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [2761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1186), - [2763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(971), - [2765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1236), - [2767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422), - [2769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), - [2771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(758), - [2773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), - [2775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(635), - [2777] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, .production_id = 113), SHIFT_REPEAT(1004), - [2780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, .production_id = 113), - [2782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), - [2784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639), - [2786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1048), - [2788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(872), - [2790] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 1, .production_id = 73), - [2792] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 1, .production_id = 73), - [2794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), - [2796] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 2, .production_id = 15), - [2798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), - [2800] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, .production_id = 16), - [2802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), - [2804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(654), - [2806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), - [2808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), - [2810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(795), - [2812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [2814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(783), - [2816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [2818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1163), - [2820] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_positional_separator, 1), - [2822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), - [2824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(772), - [2826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 2), - [2828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(855), - [2830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(991), - [2832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1508), - [2834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), - [2836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(823), - [2838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875), - [2840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [2842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), - [2844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), - [2846] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), - [2848] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(878), - [2851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(643), - [2853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), - [2855] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(877), - [2858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(640), - [2860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [2862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(632), - [2864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), - [2866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1245), - [2868] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aliased_import, 3, .production_id = 45), - [2870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), - [2872] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4, .production_id = 112), - [2874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), - [2876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), - [2878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1308), - [2880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(785), - [2882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), - [2884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), - [2886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [2888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(858), - [2890] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2), - [2892] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2), SHIFT_REPEAT(1351), - [2895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1122), - [2897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1123), - [2899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1165), - [2901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), - [2903] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 3, .dynamic_precedence = -1, .production_id = 58), - [2905] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2), - [2907] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2), SHIFT_REPEAT(839), - [2910] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 6, .production_id = 97), - [2912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1457), - [2914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964), - [2916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pass_statement, 1), - [2918] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1), - [2920] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 1), - [2922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [2924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), - [2926] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 3, .production_id = 108), - [2928] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 3, .production_id = 108), - [2930] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 3, .production_id = 111), - [2932] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_keyword_pattern, 3, .production_id = 160), - [2934] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, .production_id = 86), - [2936] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2), - [2938] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, .production_id = 48), - [2940] = {.entry = {.count = 1, .reusable = false}}, SHIFT(990), - [2942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(990), - [2944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1388), - [2946] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, .production_id = 47), - [2948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1509), - [2950] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_wildcard_import, 1), - [2952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1070), - [2954] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 4, .production_id = 46), - [2956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [2958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), - [2960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [2962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), - [2964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [2966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), - [2968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [2970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [2972] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 2, .production_id = 5), - [2974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [2976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), - [2978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [2980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), - [2982] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_augmented_assignment, 3, .production_id = 39), - [2984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 38), - [2986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [2988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), - [2990] = {.entry = {.count = 1, .reusable = false}}, SHIFT(924), - [2992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(924), - [2994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(750), - [2996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3), - [2998] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, .production_id = 85), - [3000] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 5, .production_id = 92), - [3002] = {.entry = {.count = 1, .reusable = false}}, SHIFT(959), - [3004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(959), - [3006] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, .production_id = 67), - [3008] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_double_star_pattern, 2, .production_id = 11), - [3010] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, .production_id = 31), - [3012] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_positional_pattern, 1), - [3014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(947), - [3016] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, .production_id = 31), - [3018] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 6, .production_id = 96), - [3020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(771), - [3022] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_key_value_pattern, 3, .production_id = 62), - [3024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), - [3026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1381), - [3028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(658), - [3030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629), - [3032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661), - [3034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(820), - [3036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), - [3038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(800), - [3040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(828), - [3042] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 5), - [3044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(831), - [3046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), - [3048] = {.entry = {.count = 1, .reusable = true}}, SHIFT(836), - [3050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(627), - [3052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(837), - [3054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(835), - [3056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [3058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(832), - [3060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(830), - [3062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(826), - [3064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [3066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1067), - [3068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(797), - [3070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1262), - [3072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), - [3074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [3076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1136), - [3078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [3080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(849), - [3082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(586), - [3084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), - [3086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(804), - [3088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1028), - [3090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1374), - [3092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), - [3094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(590), - [3096] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 4), - [3098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), - [3100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1074), - [3102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1137), - [3104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [3106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [3108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1148), - [3110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(857), - [3112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282), - [3114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(761), - [3116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(792), - [3118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [3120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [3122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(633), - [3124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(791), - [3126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [3128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(777), - [3130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1311), - [3132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), - [3134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [3136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [3138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [3140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [3142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636), - [3144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(787), - [3146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(968), - [3148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [3150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [3152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), - [3154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(769), - [3156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [3158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), - [3160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [3162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(799), - [3164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(657), - [3166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(840), - [3168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), - [3170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1363), - [3172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_parameters, 1), - [3174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1174), - [3176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [3178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [3180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), - [3182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443), - [3184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1103), - [3186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(582), - [3188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1175), - [3190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1107), - [3192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1290), - [3194] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [3196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relative_import, 2, .production_id = 23), - [3198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1084), - [3200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1143), - [3202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1144), - [3204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1108), - [3206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [3208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1254), - [3210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), - [3212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(781), - [3214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1061), - [3216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1153), - [3218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1149), - [3220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [3222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [3224] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 3), + [597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), + [599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), + [601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(657), + [603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [605] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), + [607] = {.entry = {.count = 1, .reusable = false}}, SHIFT(924), + [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), + [611] = {.entry = {.count = 1, .reusable = false}}, SHIFT(938), + [613] = {.entry = {.count = 1, .reusable = false}}, SHIFT(392), + [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(679), + [617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), + [619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(924), + [623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145), + [625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1059), + [627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), + [629] = {.entry = {.count = 1, .reusable = false}}, SHIFT(953), + [631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), + [633] = {.entry = {.count = 1, .reusable = false}}, SHIFT(963), + [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), + [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(677), + [639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(953), + [645] = {.entry = {.count = 1, .reusable = false}}, SHIFT(150), + [647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1050), + [649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1051), + [651] = {.entry = {.count = 1, .reusable = false}}, SHIFT(372), + [653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), + [655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), + [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(692), + [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [661] = {.entry = {.count = 1, .reusable = false}}, SHIFT(152), + [663] = {.entry = {.count = 1, .reusable = false}}, SHIFT(849), + [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [667] = {.entry = {.count = 1, .reusable = false}}, SHIFT(662), + [669] = {.entry = {.count = 1, .reusable = false}}, SHIFT(855), + [671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, 0, 7), + [673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 2, 0, 7), + [675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [677] = {.entry = {.count = 1, .reusable = false}}, SHIFT(142), + [679] = {.entry = {.count = 1, .reusable = false}}, SHIFT(858), + [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), + [685] = {.entry = {.count = 1, .reusable = false}}, SHIFT(864), + [687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), + [691] = {.entry = {.count = 1, .reusable = false}}, SHIFT(340), + [693] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1014), + [695] = {.entry = {.count = 1, .reusable = false}}, SHIFT(168), + [697] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148), + [699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 3, 0, 16), + [701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 3, 0, 16), + [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(838), + [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(925), + [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(919), + [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502), + [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(857), + [713] = {.entry = {.count = 1, .reusable = false}}, SHIFT(842), + [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1678), + [719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370), + [721] = {.entry = {.count = 1, .reusable = false}}, SHIFT(863), + [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(942), + [725] = {.entry = {.count = 1, .reusable = false}}, SHIFT(416), + [727] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1018), + [729] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147), + [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1683), + [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952), + [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1665), + [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), + [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1596), + [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(939), + [743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(362), + [745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 1, 0, 0), + [747] = {.entry = {.count = 1, .reusable = false}}, SHIFT(391), + [749] = {.entry = {.count = 1, .reusable = false}}, SHIFT(865), + [751] = {.entry = {.count = 1, .reusable = false}}, SHIFT(418), + [753] = {.entry = {.count = 1, .reusable = false}}, SHIFT(840), + [755] = {.entry = {.count = 1, .reusable = false}}, SHIFT(403), + [757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1020), + [759] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141), + [761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 7), + [763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 3, 0, 16), + [765] = {.entry = {.count = 1, .reusable = false}}, SHIFT(169), + [767] = {.entry = {.count = 1, .reusable = false}}, SHIFT(375), + [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), + [771] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 24), + [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), + [775] = {.entry = {.count = 1, .reusable = false}}, SHIFT(852), + [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), + [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(931), + [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1584), + [783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(839), + [785] = {.entry = {.count = 1, .reusable = false}}, SHIFT(146), + [787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(973), + [789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699), + [791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1694), + [793] = {.entry = {.count = 1, .reusable = false}}, SHIFT(972), + [795] = {.entry = {.count = 1, .reusable = false}}, SHIFT(151), + [797] = {.entry = {.count = 1, .reusable = false}}, SHIFT(341), + [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), + [801] = {.entry = {.count = 1, .reusable = false}}, SHIFT(781), + [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(777), + [805] = {.entry = {.count = 1, .reusable = false}}, SHIFT(780), + [807] = {.entry = {.count = 1, .reusable = false}}, SHIFT(138), + [809] = {.entry = {.count = 1, .reusable = false}}, SHIFT(383), + [811] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 1, 0, 0), + [813] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 3, 0, 50), + [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(949), + [817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1586), + [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(877), + [821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1635), + [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703), + [825] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 7, 0, 141), + [827] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 7, 0, 141), + [829] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1019), + [831] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 2, 0, 7), + [833] = {.entry = {.count = 1, .reusable = false}}, SHIFT(359), + [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), + [837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 98), + [839] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 5, 0, 98), + [841] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 3, 0, 16), + [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(716), + [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(720), + [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(764), + [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(701), + [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(870), + [853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(704), + [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(916), + [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(867), + [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(941), + [861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 122), + [863] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 122), + [865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 123), + [867] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 123), + [869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(905), + [871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(918), + [873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(712), + [875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(914), + [877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(956), + [879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(958), + [881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(961), + [883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(962), + [885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965), + [887] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1, 0, 0), + [889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(713), + [891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), + [893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(866), + [895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(898), + [897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(899), + [899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(900), + [901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917), + [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(871), + [905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), + [907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 3, 0, 16), + [909] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, 0, 7), + [911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 33), + [913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(714), + [915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(971), + [917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(954), + [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(955), + [921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(913), + [923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(881), + [925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892), + [927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893), + [929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(727), + [931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(940), + [933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(909), + [935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(717), + [937] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 81), + [939] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 81), + [941] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1609), + [943] = {.entry = {.count = 1, .reusable = false}}, SHIFT(311), + [945] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1606), + [947] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1704), + [949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1646), + [951] = {.entry = {.count = 1, .reusable = false}}, SHIFT(295), + [953] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1588), + [955] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 69), + [957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), + [961] = {.entry = {.count = 1, .reusable = false}}, SHIFT(912), + [963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), + [965] = {.entry = {.count = 1, .reusable = false}}, SHIFT(911), + [967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [969] = {.entry = {.count = 1, .reusable = false}}, SHIFT(401), + [971] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1017), + [973] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), + [975] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 1, 0, 0), + [977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), + [979] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, 0, 56), + [981] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, 0, 56), + [983] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1611), + [985] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), + [987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [991] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 10), + [993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 28), + [995] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 29), + [997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 0), + [999] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 40), + [1001] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, 0, 40), + [1003] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 68), + [1005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1620), + [1007] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 0), + [1009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 69), + [1011] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 95), + [1013] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 4, 0, 70), + [1015] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 4, 0, 70), + [1017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1630), + [1019] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 54), + [1021] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 54), + [1023] = {.entry = {.count = 1, .reusable = false}}, SHIFT(380), + [1025] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 4, 0, 0), + [1027] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 4, 0, 0), + [1029] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2, 0, 0), + [1031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2, 0, 0), + [1033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 102), + [1035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 102), + [1037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 2, 0, 0), + [1039] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 2, 0, 0), + [1041] = {.entry = {.count = 1, .reusable = false}}, SHIFT(429), + [1043] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 1, 0, 0), + [1045] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 1, 0, 0), + [1047] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 76), + [1049] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 76), + [1051] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 77), + [1053] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 77), + [1055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), + [1057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), + [1059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1599), + [1061] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), + [1063] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), + [1065] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(295), + [1068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), + [1070] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), + [1072] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(1611), + [1075] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(311), + [1078] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(1704), + [1081] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 3, 0, 0), + [1083] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 3, 0, 0), + [1085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512), + [1087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), + [1089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1714), + [1091] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 100), + [1093] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 100), + [1095] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 100), SHIFT_REPEAT(380), + [1098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1055), + [1100] = {.entry = {.count = 1, .reusable = false}}, SHIFT(474), + [1102] = {.entry = {.count = 1, .reusable = false}}, SHIFT(487), + [1104] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), + [1106] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 100), SHIFT_REPEAT(429), + [1109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 6, 0, 158), + [1111] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 6, 0, 158), + [1113] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 3, 0, 56), + [1115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 3, 0, 56), + [1117] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 81), + [1119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 81), + [1121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 130), + [1123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 130), + [1125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 5, 0, 147), + [1127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 5, 0, 147), + [1129] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 5, 0, 148), + [1131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 5, 0, 148), + [1133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 7, 0, 163), + [1135] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 7, 0, 163), + [1137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 6, 0, 157), + [1139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 6, 0, 157), + [1141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 7, 0, 164), + [1143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 7, 0, 164), + [1145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 8, 0, 165), + [1147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 8, 0, 165), + [1149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), + [1151] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), + [1153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), SHIFT_REPEAT(856), + [1156] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cases, 1, 0, 0), + [1158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cases, 1, 0, 0), + [1160] = {.entry = {.count = 1, .reusable = false}}, SHIFT(862), + [1162] = {.entry = {.count = 1, .reusable = false}}, SHIFT(856), + [1164] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1498), + [1166] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), SHIFT_REPEAT(862), + [1169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 3, 0, 50), + [1171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(662), + [1173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), + [1175] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), + [1178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), + [1180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(435), + [1182] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 0), + [1184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), + [1186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 74), + [1188] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 74), + [1190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 4, 0, 54), + [1192] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 4, 0, 54), + [1194] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 143), + [1196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 143), + [1198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 24), + [1200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 56), + [1202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 56), + [1204] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 129), + [1206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 129), + [1208] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 81), + [1210] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 81), + [1212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 5, 0, 77), + [1214] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 5, 0, 77), + [1216] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_list_splat_pattern, 2, 0, 9), + [1219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), + [1221] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 9), + [1223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 9), + [1225] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 80), + [1227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 80), + [1229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1464), + [1231] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 125), + [1233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 125), + [1235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 105), + [1237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 105), + [1239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, 0, 55), + [1241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, 0, 55), + [1243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 4, 0, 81), + [1245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 4, 0, 81), + [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 3, 0, 56), + [1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 3, 0, 56), + [1251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 4, 0, 134), + [1253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 4, 0, 134), + [1255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, 0, 150), + [1257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, 0, 150), + [1259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, 0, 151), + [1261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, 0, 151), + [1263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 6, 0, 159), + [1265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 6, 0, 159), + [1267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 2, 0, 0), + [1269] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), REDUCE(sym_tuple, 2, 0, 0), + [1272] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 2, 0, 0), + [1274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), + [1276] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 2, 0, 0), + [1278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2, 0, 0), + [1280] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), REDUCE(sym_list, 2, 0, 0), + [1283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2, 0, 0), + [1285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), + [1287] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 2, 0, 0), + [1289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 75), + [1291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 75), + [1293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 6, 0, 106), + [1295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 6, 0, 106), + [1297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 3, 0, 56), + [1299] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 3, 0, 56), + [1301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 56), + [1303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 56), + [1305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 114), + [1307] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 114), + [1309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 115), + [1311] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 115), + [1313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorated_definition, 2, 0, 19), + [1315] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decorated_definition, 2, 0, 19), + [1317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 116), + [1319] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 116), + [1321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 117), + [1323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 117), + [1325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 118), + [1327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 118), + [1329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 124), + [1331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 124), + [1333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 126), + [1335] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 126), + [1337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 127), + [1339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 127), + [1341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 128), + [1343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 128), + [1345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 4, 0, 81), + [1347] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 4, 0, 81), + [1349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 7, 0, 81), + [1351] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 7, 0, 81), + [1353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 137), + [1355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 137), + [1357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 138), + [1359] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 138), + [1361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 7, 0, 139), + [1363] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 7, 0, 139), + [1365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 142), + [1367] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 142), + [1369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 144), + [1371] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 144), + [1373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 145), + [1375] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 145), + [1377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 146), + [1379] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 146), + [1381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 82), + [1383] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 82), + [1385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 87), + [1387] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 87), + [1389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 152), + [1391] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 152), + [1393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 153), + [1395] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 153), + [1397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 9, 0, 154), + [1399] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 9, 0, 154), + [1401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 155), + [1403] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 155), + [1405] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 156), + [1407] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 156), + [1409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 89), + [1411] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 89), + [1413] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 161), + [1415] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 161), + [1417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 10, 0, 162), + [1419] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 10, 0, 162), + [1421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 90), + [1423] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 90), + [1425] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 4, 0, 57), + [1427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 4, 0, 57), + [1429] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 59), + [1431] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 59), + [1433] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 60), + [1435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 60), + [1437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 4, 0, 64), + [1439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 4, 0, 64), + [1441] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 78), + [1443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 78), + [1445] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 79), + [1447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 79), + [1449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 91), + [1451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 91), + [1453] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 99), + [1455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 99), + [1457] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 101), + [1459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 101), + [1461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 6, 0, 103), + [1463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 6, 0, 103), + [1465] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 104), + [1467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 104), + [1469] = {.entry = {.count = 1, .reusable = false}}, SHIFT(834), + [1471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_separator, 1, 0, 0), + [1473] = {.entry = {.count = 1, .reusable = false}}, SHIFT(860), + [1475] = {.entry = {.count = 1, .reusable = false}}, SHIFT(139), + [1477] = {.entry = {.count = 1, .reusable = false}}, SHIFT(632), + [1479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_string, 2, 0, 0), + [1481] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_string, 2, 0, 0), + [1483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_template_string, 2, 0, 0), + [1485] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_template_string, 2, 0, 0), + [1487] = {.entry = {.count = 1, .reusable = false}}, SHIFT(659), + [1489] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), + [1491] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), + [1493] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1044), + [1496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), + [1498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), + [1500] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1045), + [1503] = {.entry = {.count = 1, .reusable = false}}, SHIFT(645), + [1505] = {.entry = {.count = 1, .reusable = false}}, SHIFT(656), + [1507] = {.entry = {.count = 1, .reusable = false}}, SHIFT(674), + [1509] = {.entry = {.count = 1, .reusable = false}}, SHIFT(691), + [1511] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1000), + [1513] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1001), + [1515] = {.entry = {.count = 1, .reusable = false}}, SHIFT(239), + [1517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, 0, 2), + [1519] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2, 0, 2), + [1521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 2, 0, 2), + [1523] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 2, 0, 2), + [1525] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, 0, 20), + [1527] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3, 0, 20), + [1529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 3, 0, 20), + [1531] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 3, 0, 20), + [1533] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2, 0, 0), + [1535] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 2, 0, 0), + [1537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 31), + [1539] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 31), + [1541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 61), + [1543] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 61), + [1545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 67), + [1547] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 67), + [1549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 93), + [1551] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 93), + [1553] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3, 0, 25), + [1555] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 3, 0, 25), + [1557] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3, 0, 25), + [1559] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3, 0, 25), + [1561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 0), + [1563] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 0), + [1565] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 31), + [1567] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 31), + [1569] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 3, 0, 25), + [1571] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 3, 0, 25), + [1573] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 26), + [1575] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 26), + [1577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 61), + [1579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 61), + [1581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 5, 0, 61), + [1583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 5, 0, 61), + [1585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 2, 0, 0), + [1587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 2, 0, 0), + [1589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 31), + [1591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 31), + [1593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1651), + [1595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), + [1597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), + [1599] = {.entry = {.count = 1, .reusable = false}}, SHIFT(663), + [1601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), + [1603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665), + [1605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(666), + [1607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(667), + [1609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), + [1611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(668), + [1613] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1, 0, 0), + [1615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(663), + [1617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1700), + [1619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), + [1621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(670), + [1623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(665), + [1625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(625), + [1627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 67), + [1629] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 67), + [1631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_expression, 4, 0, 51), + [1633] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_expression, 4, 0, 51), + [1635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 0), + [1637] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 0), + [1639] = {.entry = {.count = 1, .reusable = false}}, SHIFT(628), + [1641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629), + [1643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), + [1645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(654), + [1647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(660), + [1649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(671), + [1651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(628), + [1653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1634), + [1655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689), + [1657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), + [1659] = {.entry = {.count = 1, .reusable = false}}, SHIFT(630), + [1661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(615), + [1663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_comprehension, 4, 0, 51), + [1665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_comprehension, 4, 0, 51), + [1667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 31), + [1669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 31), + [1671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 61), + [1673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 61), + [1675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 4, 0, 51), + [1677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 4, 0, 51), + [1679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_comprehension, 4, 0, 51), + [1681] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary_comprehension, 4, 0, 51), + [1683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 93), + [1685] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 93), + [1687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 2, 0, 17), + [1689] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 2, 0, 17), + [1691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_operator, 3, 0, 39), + [1693] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_operator, 3, 0, 39), + [1695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_await, 2, 0, 0), + [1697] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_await, 2, 0, 0), + [1699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 41), + [1701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 41), + [1703] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1050), + [1706] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1051), + [1709] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 71), + [1711] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 71), + [1713] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 72), + [1715] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 72), + [1717] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 2, 0, 13), + [1719] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 2, 0, 13), + [1721] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1056), + [1724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1605), + [1726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [1728] = {.entry = {.count = 1, .reusable = false}}, SHIFT(646), + [1730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(647), + [1732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(648), + [1734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), + [1736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(694), + [1738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), + [1740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), + [1742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646), + [1744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1720), + [1746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(652), + [1748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(653), + [1750] = {.entry = {.count = 1, .reusable = false}}, SHIFT(648), + [1752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(623), + [1754] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1059), + [1757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(681), + [1759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(682), + [1761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683), + [1763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(684), + [1765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(685), + [1767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(686), + [1769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(681), + [1771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1674), + [1773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(687), + [1775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(688), + [1777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(683), + [1779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626), + [1781] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1035), + [1784] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1037), + [1787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1632), + [1789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [1791] = {.entry = {.count = 1, .reusable = false}}, SHIFT(635), + [1793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636), + [1795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661), + [1797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672), + [1799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(680), + [1801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), + [1803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(693), + [1805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(635), + [1807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1671), + [1809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(633), + [1811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634), + [1813] = {.entry = {.count = 1, .reusable = false}}, SHIFT(661), + [1815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(618), + [1817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), + [1819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1695), + [1821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [1823] = {.entry = {.count = 1, .reusable = false}}, SHIFT(637), + [1825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), + [1827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639), + [1829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(640), + [1831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641), + [1833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), + [1835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(642), + [1837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), + [1839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1612), + [1841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(643), + [1843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(644), + [1845] = {.entry = {.count = 1, .reusable = false}}, SHIFT(639), + [1847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), + [1849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), + [1851] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1038), + [1853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(932), + [1855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1374), + [1857] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 2, 0, 0), + [1859] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 2, 0, 0), + [1861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1559), + [1863] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1142), + [1865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(933), + [1867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(994), + [1869] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1072), + [1871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1072), + [1873] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1140), + [1875] = {.entry = {.count = 1, .reusable = false}}, SHIFT(373), + [1877] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 3, 0, 0), + [1879] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 3, 0, 0), + [1881] = {.entry = {.count = 1, .reusable = false}}, SHIFT(394), + [1883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), + [1885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1114), + [1887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1154), + [1889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1120), + [1891] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1139), + [1893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1127), + [1895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1119), + [1897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1110), + [1899] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1116), + [1901] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1091), + [1903] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), + [1905] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(665), + [1908] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), + [1910] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1700), + [1913] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(665), + [1916] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(625), + [1919] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(630), + [1922] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1634), + [1925] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(630), + [1928] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(615), + [1931] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison_operator, 2, 0, 18), + [1933] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison_operator, 2, 0, 18), + [1935] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 36), + [1937] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 36), SHIFT_REPEAT(612), + [1940] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1562), + [1942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1161), + [1944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1561), + [1946] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(648), + [1949] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1720), + [1952] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(648), + [1955] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(623), + [1958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1137), + [1960] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 3, 0, 25), + [1962] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 34), + [1964] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(661), + [1967] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1671), + [1970] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(661), + [1973] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(618), + [1976] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3, 0, 25), + [1978] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 31), + [1980] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(683), + [1983] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1674), + [1986] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(683), + [1989] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(626), + [1992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1115), + [1994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [1996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, 0, 16), + [1998] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(639), + [2001] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1612), + [2004] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(639), + [2007] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(622), + [2010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [2012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), + [2014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [2016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [2018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1479), + [2020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478), + [2022] = {.entry = {.count = 1, .reusable = false}}, SHIFT(614), + [2024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), + [2026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(678), + [2028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1465), + [2030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(415), + [2032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), + [2034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), + [2036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), + [2038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), + [2040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), + [2042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1342), + [2044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1547), + [2046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 3, 0, 0), + [2048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 2, 0, 0), + [2050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_not_operator, 2, 0, 10), + [2052] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_not_operator, 2, 0, 10), + [2054] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), + [2056] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1667), + [2059] = {.entry = {.count = 1, .reusable = false}}, SHIFT(181), + [2061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1147), + [2063] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1147), + [2065] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), + [2067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(841), + [2069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [2071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421), + [2073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), + [2075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1595), + [2077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), + [2079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 1, 0, 7), + [2081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), + [2083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412), + [2085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(847), + [2087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(830), + [2089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(827), + [2091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1667), + [2093] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 1, 0, 0), + [2095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_capture_pattern, 1, 0, 0), + [2097] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, 0, 0), + [2099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(946), + [2101] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_with_item, 1, -1, 12), SHIFT(175), + [2104] = {.entry = {.count = 1, .reusable = false}}, SHIFT(551), + [2106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), + [2108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), + [2110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), + [2112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 2, 0, 0), + [2114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_value_pattern, 2, 0, 0), + [2116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(861), + [2118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), + [2120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(696), + [2122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(697), + [2124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(698), + [2126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(806), + [2128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(807), + [2130] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(181), + [2133] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(1147), + [2136] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(1147), + [2139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), + [2141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(808), + [2143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(809), + [2145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1470), + [2147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(859), + [2149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1404), + [2151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(851), + [2153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(850), + [2155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 35), + [2157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 35), + [2159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_operator, 3, 0, 39), + [2161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426), + [2163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 3, 0, 32), + [2165] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 3, 0, 32), + [2167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), + [2169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(710), + [2171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(700), + [2173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), + [2175] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_operator, 3, 0, 39), + [2177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 4, 0, 66), + [2179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), + [2181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_expression, 5, 0, 0), + [2183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, 0, 83), + [2185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1566), + [2187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(868), + [2189] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 4, 0, 66), + [2191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(983), + [2193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [2195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(930), + [2197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), + [2199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 27), + [2201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 2, 0, 107), + [2203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1574), + [2205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888), + [2207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), + [2209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(901), + [2211] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_expression, 5, 0, 0), + [2213] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 27), + [2215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_within_for_in_clause, 1, 0, 0), + [2217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 3, 0, 0), + [2219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(987), + [2221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), + [2223] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(346), + [2226] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(1595), + [2229] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(497), + [2232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), + [2234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422), + [2236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 2, 0, 0), + [2238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), + [2240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), + [2242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__f_expression, 1, 0, 0), + [2244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat, 2, 0, 0), + [2246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2, 0, 0), + [2248] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(987), + [2251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 2, 0, 0), + [2253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), + [2255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 1, 0, 0), + [2257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 4, 0, 0), + [2259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), + [2261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), + [2263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), + [2265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 3, 0, 136), + [2267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 4, 0, 98), + [2269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [2271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1717), + [2273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1713), + [2275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1691), + [2277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 5, 0, 0), + [2279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 5, 0, 0), + [2281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 31), + [2283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1685), + [2285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1619), + [2287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1629), + [2289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 5, 0, 136), + [2291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 4, 0, 0), + [2293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), + [2295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [2297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 2, 0, 0), + [2299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 4, 0, 149), + [2301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat, 2, 0, 14), + [2303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 6, 0, 0), + [2305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 6, 0, 136), + [2307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 122), + [2309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [2311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 7, 0, 0), + [2313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 7, 0, 136), + [2315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 8, 0, 136), + [2317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), + [2319] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1133), + [2322] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1133), + [2325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), + [2327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 9, 0, 136), + [2329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 123), + [2331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [2333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 4, 0, 0), + [2335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 3, 0, 132), + [2337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(986), + [2339] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_or_pattern, 1, 0, 0), + [2341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(988), + [2343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 4, 0, 136), + [2345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 141), + [2347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [2349] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_content, 1, 0, 0), + [2351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1133), + [2353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1133), + [2355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_content, 1, 0, 0), + [2357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), + [2359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 2, 0, 0), + [2361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 2, 0, 0), + [2363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 3, 0, 0), + [2365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_group_pattern, 3, 0, 131), + [2367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 2, 0, 0), + [2369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), + [2371] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(297), + [2374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 3, 0, 0), + [2376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1219), + [2378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1312), + [2380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1528), + [2382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), + [2384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(708), + [2386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), + [2388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1606), + [2390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1, 0, 0), + [2392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 31), + [2394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), + [2396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 10), + [2398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), + [2400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 2, 0, 0), + [2402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 4, 0, 66), + [2404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0), + [2406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_statement, 2, 0, 11), + [2408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), + [2410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1588), + [2412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1220), + [2414] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1696), + [2416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1659), + [2418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3, 0, 0), + [2420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_pattern, 1, 0, 0), + [2422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1703), + [2424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1, 0, 0), + [2426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), + [2428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(397), + [2430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(419), + [2432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [2434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [2436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), + [2438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), + [2440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(968), + [2442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 4, 0, 15), + [2444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), + [2446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(874), + [2448] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 1, -1, 12), + [2450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), + [2452] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1216), + [2454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1336), + [2456] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1664), + [2458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 3, 0, 32), + [2460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), + [2462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [2464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), + [2466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [2468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), + [2470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [2472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), + [2474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(902), + [2476] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__right_hand_side, 1, 0, 0), + [2478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pair, 3, 0, 62), + [2480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), + [2482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 16), + [2484] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 1, 0, 0), + [2486] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 6, 0, 43), + [2488] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 6, 0, 43), + [2490] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, 0, 43), + [2492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, 0, 43), + [2494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1698), + [2496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 1, 0, 6), + [2498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(425), + [2500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [2502] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 36), SHIFT_REPEAT(251), + [2505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 36), + [2507] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 36), SHIFT_REPEAT(263), + [2510] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 3, 0, 43), + [2512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 3, 0, 43), + [2514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 10), + [2516] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_chevron, 2, 0, 0), + [2518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), + [2520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_parameter, 3, 0, 35), + [2522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [2524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1298), + [2526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_default_parameter, 5, 0, 119), + [2528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [2530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 2, 0, 0), + [2532] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1698), + [2535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [2537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [2539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [2541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_bound, 2, 0, 109), + [2543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [2545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2, 0, 0), + [2547] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(979), + [2550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 31), + [2552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_as_pattern, 3, 0, 135), + [2554] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, 0, 4), + [2556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, 0, 4), + [2558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__index_expression, 1, 0, 0), + [2560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), + [2562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 95), + [2564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), + [2566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), + [2568] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(342), + [2571] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 68), + [2573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), + [2575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [2577] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, 0, 3), + [2579] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, 0, 3), + [2581] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, 0, 43), + [2583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, 0, 43), + [2585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1305), + [2587] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 6), + [2589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), + [2591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [2593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1206), + [2595] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 16), + [2597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [2599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [2601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 31), + [2603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 27), + [2605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_star_pattern, 2, 0, 11), + [2607] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_param_default, 2, 0, 110), + [2609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1380), + [2611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1310), + [2613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1283), + [2615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1419), + [2617] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 120), + [2619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 121), + [2621] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 3, 0, 30), + [2623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), + [2625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, 0, 22), + [2627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1311), + [2629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 35), + [2631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 94), + [2633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [2635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 4, 0, 53), + [2637] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 36), SHIFT_REPEAT(250), + [2640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [2642] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 1, 0, 0), + [2644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [2646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1288), + [2648] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), + [2650] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(173), + [2653] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(1284), + [2656] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 5, 0, 88), + [2658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 36), + [2660] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 36), SHIFT_REPEAT(242), + [2663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1223), + [2665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1302), + [2667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1458), + [2669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 2, 0, 0), + [2671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1284), + [2673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1255), + [2675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1636), + [2677] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, 0, 6), + [2679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, 0, 140), + [2681] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 4, 0, 63), + [2683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 16), + [2685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), + [2687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(854), + [2689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [2691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_guard, 2, 0, 133), + [2693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), + [2695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(856), + [2697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1638), + [2699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 2, 0, 0), + [2701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorator, 3, 0, 0), + [2703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1022), + [2705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1253), + [2707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1494), + [2709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [2711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(862), + [2713] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 23), + [2715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), + [2717] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 44), SHIFT_REPEAT(1499), + [2720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 44), + [2722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1455), + [2724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1457), + [2726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1216), + [2728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 0), + [2730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 49), + [2732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [2734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 0), + [2736] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 52), SHIFT_REPEAT(339), + [2739] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 52), + [2741] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(432), + [2744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [2746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1300), + [2748] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), + [2750] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(315), + [2753] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 2, 0, 0), + [2755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, 0, 84), + [2757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1367), + [2759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1681), + [2761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), + [2763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [2765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), + [2767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [2769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [2771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), + [2773] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_prefix, 1, 0, 0), + [2775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1362), + [2777] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1638), + [2780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), + [2782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exception_list, 2, 0, 16), + [2784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), + [2786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), + [2788] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 28), + [2790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_parameter, 3, 0, 65), + [2792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), + [2794] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, 0, 0), + [2796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), + [2798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), + [2800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), + [2802] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 5, 0, 15), + [2804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400), + [2806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [2808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [2810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [2812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), + [2814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [2816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [2818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [2820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [2822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1271), + [2824] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 22), + [2826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 3, 0, 0), + [2828] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 3, 0, 0), + [2830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 1, 0, 7), + [2832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(467), + [2834] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), SHIFT_REPEAT(133), + [2837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), + [2839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1275), + [2841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), + [2843] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 29), + [2845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [2847] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), + [2849] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), SHIFT_REPEAT(1362), + [2852] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 36), SHIFT_REPEAT(430), + [2855] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 36), + [2857] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 3, 0, 0), + [2859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414), + [2861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 2, 0, 23), + [2863] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 2, 0, 23), + [2865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), + [2867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1538), + [2869] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1239), + [2871] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1263), + [2873] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 113), SHIFT_REPEAT(1182), + [2876] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 113), + [2878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1027), + [2880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), + [2882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483), + [2884] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 36), SHIFT_REPEAT(245), + [2887] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 36), + [2889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3, 0, 86), + [2891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1143), + [2893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1405), + [2895] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 44), SHIFT_REPEAT(1460), + [2898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1025), + [2900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 1, 0, 0), + [2902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1182), + [2904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1446), + [2906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(936), + [2908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), + [2910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), + [2912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(920), + [2914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), + [2916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [2918] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_maybe_star_pattern, 1, 0, 0), + [2920] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_patterns, 1, 0, 0), + [2922] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 36), + [2924] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 36), SHIFT_REPEAT(233), + [2927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), + [2929] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 2, 0, 15), + [2931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1658), + [2933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(702), + [2935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [2937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964), + [2939] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 36), SHIFT_REPEAT(282), + [2942] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 36), + [2944] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_relative_import, 1, 0, 0), + [2946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [2948] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 37), + [2950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), + [2952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), + [2954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), + [2956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), + [2958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(981), + [2960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), + [2962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [2964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1396), + [2966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(951), + [2968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(957), + [2970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [2972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1379), + [2974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(959), + [2976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [2978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(960), + [2980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [2982] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aliased_import, 3, 0, 45), + [2984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2, 0, 0), + [2986] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2, 0, 0), SHIFT_REPEAT(1560), + [2989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1008), + [2991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), + [2993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(882), + [2995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), + [2997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(885), + [2999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1026), + [3001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(889), + [3003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), + [3005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1131), + [3007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(890), + [3009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), + [3011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(923), + [3013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), + [3015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 1, 0, 0), + [3017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(895), + [3019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), + [3021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(896), + [3023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), + [3025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(897), + [3027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [3029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1431), + [3031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1640), + [3033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), + [3035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1314), + [3037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), + [3039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), + [3041] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), + [3043] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1028), + [3046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 3, -1, 58), + [3048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4, 0, 112), + [3050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(718), + [3052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [3054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1467), + [3056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(732), + [3058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [3060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(711), + [3062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [3064] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 2, 0, 0), + [3066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [3068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), + [3070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [3072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1482), + [3074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), + [3076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(903), + [3078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [3080] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_positional_separator, 1, 0, 0), + [3082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(980), + [3084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1132), + [3086] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2, 0, 0), + [3088] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(984), + [3091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(935), + [3093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1167), + [3095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1023), + [3097] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1476), + [3099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), + [3101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1313), + [3103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1134), + [3105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(996), + [3107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1159), + [3109] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1021), + [3112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2, 0, 0), + [3114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(878), + [3116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), + [3118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(943), + [3120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), + [3122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(927), + [3124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), + [3126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(728), + [3128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1328), + [3130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1329), + [3132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), + [3134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(731), + [3136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), + [3138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, 0, 16), + [3140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [3142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1218), + [3144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), + [3146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), + [3148] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 73), + [3150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 73), + [3152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), + [3154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), + [3156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(928), + [3158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), + [3160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), + [3162] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1029), + [3165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 2, 0, 5), + [3167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 31), + [3169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(846), + [3171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [3173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), + [3175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [3177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), + [3179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 6, 0, 97), + [3181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 3, 0, 108), + [3183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 5, 0, 92), + [3185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 3, 0, 111), + [3187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pass_statement, 1, 0, 0), + [3189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 86), + [3191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1, 0, 0), + [3193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_positional_pattern, 1, 0, 0), + [3195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 4, 0, 46), + [3197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_wildcard_import, 1, 0, 0), + [3199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, 0, 85), + [3201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 38), + [3203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 1, 0, 0), + [3205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 47), + [3207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 48), + [3209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_augmented_assignment, 3, 0, 39), + [3211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [3213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), + [3215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [3217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), + [3219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_key_value_pattern, 3, 0, 62), + [3221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [3223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), + [3225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1663), + [3227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1126), + [3229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [3231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), + [3233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2, 0, 0), + [3235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1160), + [3237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [3239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), + [3241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 3, 0, 108), + [3243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(934), + [3245] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1078), + [3247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1078), + [3249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1239), + [3251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 31), + [3253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1662), + [3255] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1138), + [3257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1138), + [3259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 6, 0, 96), + [3261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1623), + [3263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3, 0, 0), + [3265] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1124), + [3267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1124), + [3269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_keyword_pattern, 3, 0, 160), + [3271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 67), + [3273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_double_star_pattern, 2, 0, 11), + [3275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [3277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), + [3279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [3281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(929), + [3283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1326), + [3285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(948), + [3287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [3289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [3291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1304), + [3293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(869), + [3295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(907), + [3297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), + [3299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(872), + [3301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), + [3303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873), + [3305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [3307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_parameters, 1, 0, 0), + [3309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1323), + [3311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), + [3313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [3315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875), + [3317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387), + [3319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(876), + [3321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), + [3323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [3325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [3327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [3329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(627), + [3331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(879), + [3333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(880), + [3335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(705), + [3337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [3339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [3341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [3343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1301), + [3345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 5, 0, 0), + [3347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [3349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [3351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), + [3353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(891), + [3355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(883), + [3357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(998), + [3359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1281), + [3361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 4, 0, 0), + [3363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(884), + [3365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), + [3367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(886), + [3369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), + [3371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(887), + [3373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1421), + [3375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1420), + [3377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [3379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 3, 0, 0), + [3381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [3383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1004), + [3385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1217), + [3387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(921), + [3389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [3391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), + [3393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1299), + [3395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(729), + [3397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730), + [3399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), + [3401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relative_import, 2, 0, 23), + [3403] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [3405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(706), + [3407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1372), + [3409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1130), + [3411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1272), + [3413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(707), + [3415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [3417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1049), + [3419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), + [3421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [3423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(658), + [3425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), + [3427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(690), + [3429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(969), + [3431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1363), + [3433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(910), + [3435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(937), + [3437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(945), + [3439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(982), + [3441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1545), + [3443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), + [3445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(966), + [3447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1571), + [3449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), + [3451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(975), + [3453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [3455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [3457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), + [3459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1256), + [3461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722), + [3463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(947), + [3465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1371), + [3467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [3469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1289), + [3471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1502), + [3473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(673), + [3475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1568), + [3477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1514), + [3479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1244), + [3481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(944), + [3483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(967), + [3485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(970), + [3487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1169), + [3489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [3491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), + [3493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [3495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1369), + [3497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1370), + [3499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(976), + [3501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(978), + [3503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(655), + [3505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(922), + [3507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(985), +}; + +enum ts_external_scanner_symbol_identifiers { + ts_external_token__newline = 0, + ts_external_token__indent = 1, + ts_external_token__dedent = 2, + ts_external_token__string_start = 3, + ts_external_token__string_content = 4, + ts_external_token__string_end = 5, + ts_external_token__template_string_start = 6, +}; + +static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { + [ts_external_token__newline] = sym__newline, + [ts_external_token__indent] = sym__indent, + [ts_external_token__dedent] = sym__dedent, + [ts_external_token__string_start] = sym__string_start, + [ts_external_token__string_content] = sym__string_content, + [ts_external_token__string_end] = sym__string_end, + [ts_external_token__template_string_start] = sym__template_string_start, +}; + +static const bool ts_external_scanner_states[12][EXTERNAL_TOKEN_COUNT] = { + [1] = { + [ts_external_token__newline] = true, + [ts_external_token__indent] = true, + [ts_external_token__dedent] = true, + [ts_external_token__string_start] = true, + [ts_external_token__string_content] = true, + [ts_external_token__string_end] = true, + [ts_external_token__template_string_start] = true, + }, + [2] = { + [ts_external_token__string_start] = true, + [ts_external_token__template_string_start] = true, + }, + [3] = { + [ts_external_token__dedent] = true, + [ts_external_token__string_start] = true, + [ts_external_token__template_string_start] = true, + }, + [4] = { + [ts_external_token__newline] = true, + [ts_external_token__string_start] = true, + [ts_external_token__template_string_start] = true, + }, + [5] = { + [ts_external_token__newline] = true, + [ts_external_token__indent] = true, + [ts_external_token__string_start] = true, + [ts_external_token__template_string_start] = true, + }, + [6] = { + [ts_external_token__newline] = true, + }, + [7] = { + [ts_external_token__newline] = true, + [ts_external_token__string_start] = true, + }, + [8] = { + [ts_external_token__string_start] = true, + }, + [9] = { + [ts_external_token__template_string_start] = true, + }, + [10] = { + [ts_external_token__newline] = true, + [ts_external_token__template_string_start] = true, + }, + [11] = { + [ts_external_token__string_content] = true, + [ts_external_token__string_end] = true, + }, }; #ifdef __cplusplus @@ -74267,13 +84136,17 @@ bool tree_sitter_python_external_scanner_scan(void *, TSLexer *, const bool *); unsigned tree_sitter_python_external_scanner_serialize(void *, char *); void tree_sitter_python_external_scanner_deserialize(void *, const char *, unsigned); -#ifdef _WIN32 -#define extern __declspec(dllexport) +#ifdef TREE_SITTER_HIDE_SYMBOLS +#define TS_PUBLIC +#elif defined(_WIN32) +#define TS_PUBLIC __declspec(dllexport) +#else +#define TS_PUBLIC __attribute__((visibility("default"))) #endif -extern const TSLanguage *tree_sitter_python(void) { +TS_PUBLIC const TSLanguage *tree_sitter_python(void) { static const TSLanguage language = { - .version = LANGUAGE_VERSION, + .abi_version = LANGUAGE_VERSION, .symbol_count = SYMBOL_COUNT, .alias_count = ALIAS_COUNT, .token_count = TOKEN_COUNT, @@ -74295,7 +84168,7 @@ extern const TSLanguage *tree_sitter_python(void) { .public_symbol_map = ts_symbol_map, .alias_map = ts_non_terminal_alias_map, .alias_sequences = &ts_alias_sequences[0][0], - .lex_modes = ts_lex_modes, + .lex_modes = (const void*)ts_lex_modes, .lex_fn = ts_lex, .keyword_lex_fn = ts_lex_keywords, .keyword_capture_token = sym_identifier, @@ -74308,6 +84181,7 @@ extern const TSLanguage *tree_sitter_python(void) { tree_sitter_python_external_scanner_serialize, tree_sitter_python_external_scanner_deserialize, }, + .primary_state_ids = ts_primary_state_ids, }; return &language; } diff --git a/python/extractor/tsg-python/tsp/src/tree_sitter/array.h b/python/extractor/tsg-python/tsp/src/tree_sitter/array.h index a17a574f04e0..e99918e5d85d 100644 --- a/python/extractor/tsg-python/tsp/src/tree_sitter/array.h +++ b/python/extractor/tsg-python/tsp/src/tree_sitter/array.h @@ -52,67 +52,91 @@ extern "C" { /// Reserve `new_capacity` elements of space in the array. If `new_capacity` is /// less than the array's current capacity, this function has no effect. -#define array_reserve(self, new_capacity) \ - _array__reserve((Array *)(self), array_elem_size(self), new_capacity) +#define array_reserve(self, new_capacity) \ + ((self)->contents = _array__reserve( \ + (void *)(self)->contents, &(self)->capacity, \ + array_elem_size(self), new_capacity) \ + ) /// Free any memory allocated for this array. Note that this does not free any /// memory allocated for the array's contents. -#define array_delete(self) _array__delete((Array *)(self)) +#define array_delete(self) _array__delete((self), (void *)(self)->contents, sizeof(*self)) /// Push a new `element` onto the end of the array. -#define array_push(self, element) \ - (_array__grow((Array *)(self), 1, array_elem_size(self)), \ - (self)->contents[(self)->size++] = (element)) +#define array_push(self, element) \ + do { \ + (self)->contents = _array__grow( \ + (void *)(self)->contents, (self)->size, &(self)->capacity, \ + 1, array_elem_size(self) \ + ); \ + (self)->contents[(self)->size++] = (element); \ + } while(0) /// Increase the array's size by `count` elements. /// New elements are zero-initialized. -#define array_grow_by(self, count) \ - do { \ - if ((count) == 0) break; \ - _array__grow((Array *)(self), count, array_elem_size(self)); \ +#define array_grow_by(self, count) \ + do { \ + if ((count) == 0) break; \ + (self)->contents = _array__grow( \ + (self)->contents, (self)->size, &(self)->capacity, \ + count, array_elem_size(self) \ + ); \ memset((self)->contents + (self)->size, 0, (count) * array_elem_size(self)); \ - (self)->size += (count); \ + (self)->size += (count); \ } while (0) /// Append all elements from one array to the end of another. -#define array_push_all(self, other) \ +#define array_push_all(self, other) \ array_extend((self), (other)->size, (other)->contents) /// Append `count` elements to the end of the array, reading their values from the /// `contents` pointer. -#define array_extend(self, count, contents) \ - _array__splice( \ - (Array *)(self), array_elem_size(self), (self)->size, \ - 0, count, contents \ +#define array_extend(self, count, other_contents) \ + (self)->contents = _array__splice( \ + (void*)(self)->contents, &(self)->size, &(self)->capacity, \ + array_elem_size(self), (self)->size, 0, count, other_contents \ ) /// Remove `old_count` elements from the array starting at the given `index`. At /// the same index, insert `new_count` new elements, reading their values from the /// `new_contents` pointer. -#define array_splice(self, _index, old_count, new_count, new_contents) \ - _array__splice( \ - (Array *)(self), array_elem_size(self), _index, \ - old_count, new_count, new_contents \ +#define array_splice(self, _index, old_count, new_count, new_contents) \ + (self)->contents = _array__splice( \ + (void *)(self)->contents, &(self)->size, &(self)->capacity, \ + array_elem_size(self), _index, old_count, new_count, new_contents \ ) /// Insert one `element` into the array at the given `index`. -#define array_insert(self, _index, element) \ - _array__splice((Array *)(self), array_elem_size(self), _index, 0, 1, &(element)) +#define array_insert(self, _index, element) \ + (self)->contents = _array__splice( \ + (void *)(self)->contents, &(self)->size, &(self)->capacity, \ + array_elem_size(self), _index, 0, 1, &(element) \ + ) /// Remove one element from the array at the given `index`. #define array_erase(self, _index) \ - _array__erase((Array *)(self), array_elem_size(self), _index) + _array__erase((void *)(self)->contents, &(self)->size, array_elem_size(self), _index) /// Pop the last element off the array, returning the element by value. #define array_pop(self) ((self)->contents[--(self)->size]) /// Assign the contents of one array to another, reallocating if necessary. -#define array_assign(self, other) \ - _array__assign((Array *)(self), (const Array *)(other), array_elem_size(self)) +#define array_assign(self, other) \ + (self)->contents = _array__assign( \ + (void *)(self)->contents, &(self)->size, &(self)->capacity, \ + (const void *)(other)->contents, (other)->size, array_elem_size(self) \ + ) /// Swap one array with another -#define array_swap(self, other) \ - _array__swap((Array *)(self), (Array *)(other)) +#define array_swap(self, other) \ + do { \ + struct Swap swapped_contents = _array__swap( \ + (void *)(self)->contents, &(self)->size, &(self)->capacity, \ + (void *)(other)->contents, &(other)->size, &(other)->capacity \ + ); \ + (self)->contents = swapped_contents.self_contents; \ + (other)->contents = swapped_contents.other_contents; \ + } while (0) /// Get the size of the array contents #define array_elem_size(self) (sizeof *(self)->contents) @@ -157,82 +181,112 @@ extern "C" { // Private -typedef Array(void) Array; +// Pointers to individual `Array` fields (rather than the entire `Array` itself) +// are passed to the various `_array__*` functions below to address strict aliasing +// violations that arises when the _entire_ `Array` struct is passed as `Array(void)*`. +// +// The `Array` type itself was not altered as a solution in order to avoid breakage +// with existing consumers (in particular, parsers with external scanners). /// This is not what you're looking for, see `array_delete`. -static inline void _array__delete(Array *self) { - if (self->contents) { - ts_free(self->contents); - self->contents = NULL; - self->size = 0; - self->capacity = 0; - } +static inline void _array__delete(void *self, void *contents, size_t self_size) { + if (contents) ts_free(contents); + if (self) memset(self, 0, self_size); } /// This is not what you're looking for, see `array_erase`. -static inline void _array__erase(Array *self, size_t element_size, - uint32_t index) { - assert(index < self->size); - char *contents = (char *)self->contents; +static inline void _array__erase(void* self_contents, uint32_t *size, + size_t element_size, uint32_t index) { + assert(index < *size); + char *contents = (char *)self_contents; memmove(contents + index * element_size, contents + (index + 1) * element_size, - (self->size - index - 1) * element_size); - self->size--; + (*size - index - 1) * element_size); + (*size)--; } /// This is not what you're looking for, see `array_reserve`. -static inline void _array__reserve(Array *self, size_t element_size, uint32_t new_capacity) { - if (new_capacity > self->capacity) { - if (self->contents) { - self->contents = ts_realloc(self->contents, new_capacity * element_size); +static inline void *_array__reserve(void *contents, uint32_t *capacity, + size_t element_size, uint32_t new_capacity) { + void *new_contents = contents; + if (new_capacity > *capacity) { + if (contents) { + new_contents = ts_realloc(contents, new_capacity * element_size); } else { - self->contents = ts_malloc(new_capacity * element_size); + new_contents = ts_malloc(new_capacity * element_size); } - self->capacity = new_capacity; + *capacity = new_capacity; } + return new_contents; } /// This is not what you're looking for, see `array_assign`. -static inline void _array__assign(Array *self, const Array *other, size_t element_size) { - _array__reserve(self, element_size, other->size); - self->size = other->size; - memcpy(self->contents, other->contents, self->size * element_size); +static inline void *_array__assign(void* self_contents, uint32_t *self_size, uint32_t *self_capacity, + const void *other_contents, uint32_t other_size, size_t element_size) { + void *new_contents = _array__reserve(self_contents, self_capacity, element_size, other_size); + *self_size = other_size; + memcpy(new_contents, other_contents, *self_size * element_size); + return new_contents; } +struct Swap { + void *self_contents; + void *other_contents; +}; + /// This is not what you're looking for, see `array_swap`. -static inline void _array__swap(Array *self, Array *other) { - Array swap = *other; - *other = *self; - *self = swap; +// static inline void _array__swap(Array *self, Array *other) { +static inline struct Swap _array__swap(void *self_contents, uint32_t *self_size, uint32_t *self_capacity, + void *other_contents, uint32_t *other_size, uint32_t *other_capacity) { + void *new_self_contents = other_contents; + uint32_t new_self_size = *other_size; + uint32_t new_self_capacity = *other_capacity; + + void *new_other_contents = self_contents; + *other_size = *self_size; + *other_capacity = *self_capacity; + + *self_size = new_self_size; + *self_capacity = new_self_capacity; + + struct Swap out = { + .self_contents = new_self_contents, + .other_contents = new_other_contents, + }; + return out; } /// This is not what you're looking for, see `array_push` or `array_grow_by`. -static inline void _array__grow(Array *self, uint32_t count, size_t element_size) { - uint32_t new_size = self->size + count; - if (new_size > self->capacity) { - uint32_t new_capacity = self->capacity * 2; +static inline void *_array__grow(void *contents, uint32_t size, uint32_t *capacity, + uint32_t count, size_t element_size) { + void *new_contents = contents; + uint32_t new_size = size + count; + if (new_size > *capacity) { + uint32_t new_capacity = *capacity * 2; if (new_capacity < 8) new_capacity = 8; if (new_capacity < new_size) new_capacity = new_size; - _array__reserve(self, element_size, new_capacity); + new_contents = _array__reserve(contents, capacity, element_size, new_capacity); } + return new_contents; } /// This is not what you're looking for, see `array_splice`. -static inline void _array__splice(Array *self, size_t element_size, +static inline void *_array__splice(void *self_contents, uint32_t *size, uint32_t *capacity, + size_t element_size, uint32_t index, uint32_t old_count, uint32_t new_count, const void *elements) { - uint32_t new_size = self->size + new_count - old_count; + uint32_t new_size = *size + new_count - old_count; uint32_t old_end = index + old_count; uint32_t new_end = index + new_count; - assert(old_end <= self->size); + assert(old_end <= *size); - _array__reserve(self, element_size, new_size); + void *new_contents = _array__reserve(self_contents, capacity, element_size, new_size); - char *contents = (char *)self->contents; - if (self->size > old_end) { + char *contents = (char *)new_contents; + if (*size > old_end) { memmove( contents + new_end * element_size, contents + old_end * element_size, - (self->size - old_end) * element_size + (*size - old_end) * element_size ); } if (new_count > 0) { @@ -250,7 +304,9 @@ static inline void _array__splice(Array *self, size_t element_size, ); } } - self->size += new_count - old_count; + *size += new_count - old_count; + + return new_contents; } /// A binary search routine, based on Rust's `std::slice::binary_search_by`. diff --git a/python/extractor/tsg-python/tsp/src/tree_sitter/parser.h b/python/extractor/tsg-python/tsp/src/tree_sitter/parser.h index cbbc7b4ee3c5..858107deb9e4 100644 --- a/python/extractor/tsg-python/tsp/src/tree_sitter/parser.h +++ b/python/extractor/tsg-python/tsp/src/tree_sitter/parser.h @@ -13,12 +13,16 @@ extern "C" { #define ts_builtin_sym_end 0 #define TREE_SITTER_SERIALIZATION_BUFFER_SIZE 1024 -typedef uint16_t TSStateId; - #ifndef TREE_SITTER_API_H_ +typedef uint16_t TSStateId; typedef uint16_t TSSymbol; typedef uint16_t TSFieldId; typedef struct TSLanguage TSLanguage; +typedef struct TSLanguageMetadata { + uint8_t major_version; + uint8_t minor_version; + uint8_t patch_version; +} TSLanguageMetadata; #endif typedef struct { @@ -27,10 +31,11 @@ typedef struct { bool inherited; } TSFieldMapEntry; +// Used to index the field and supertype maps. typedef struct { uint16_t index; uint16_t length; -} TSFieldMapSlice; +} TSMapSlice; typedef struct { bool visible; @@ -48,6 +53,7 @@ struct TSLexer { uint32_t (*get_column)(TSLexer *); bool (*is_at_included_range_start)(const TSLexer *); bool (*eof)(const TSLexer *); + void (*log)(const TSLexer *, const char *, ...); }; typedef enum { @@ -79,6 +85,12 @@ typedef struct { uint16_t external_lex_state; } TSLexMode; +typedef struct { + uint16_t lex_state; + uint16_t external_lex_state; + uint16_t reserved_word_set_id; +} TSLexerMode; + typedef union { TSParseAction action; struct { @@ -87,8 +99,13 @@ typedef union { } entry; } TSParseActionEntry; +typedef struct { + int32_t start; + int32_t end; +} TSCharacterRange; + struct TSLanguage { - uint32_t version; + uint32_t abi_version; uint32_t symbol_count; uint32_t alias_count; uint32_t token_count; @@ -104,13 +121,13 @@ struct TSLanguage { const TSParseActionEntry *parse_actions; const char * const *symbol_names; const char * const *field_names; - const TSFieldMapSlice *field_map_slices; + const TSMapSlice *field_map_slices; const TSFieldMapEntry *field_map_entries; const TSSymbolMetadata *symbol_metadata; const TSSymbol *public_symbol_map; const uint16_t *alias_map; const TSSymbol *alias_sequences; - const TSLexMode *lex_modes; + const TSLexerMode *lex_modes; bool (*lex_fn)(TSLexer *, TSStateId); bool (*keyword_lex_fn)(TSLexer *, TSStateId); TSSymbol keyword_capture_token; @@ -123,15 +140,49 @@ struct TSLanguage { unsigned (*serialize)(void *, char *); void (*deserialize)(void *, const char *, unsigned); } external_scanner; + const TSStateId *primary_state_ids; + const char *name; + const TSSymbol *reserved_words; + uint16_t max_reserved_word_set_size; + uint32_t supertype_count; + const TSSymbol *supertype_symbols; + const TSMapSlice *supertype_map_slices; + const TSSymbol *supertype_map_entries; + TSLanguageMetadata metadata; }; +static inline bool set_contains(const TSCharacterRange *ranges, uint32_t len, int32_t lookahead) { + uint32_t index = 0; + uint32_t size = len - index; + while (size > 1) { + uint32_t half_size = size / 2; + uint32_t mid_index = index + half_size; + const TSCharacterRange *range = &ranges[mid_index]; + if (lookahead >= range->start && lookahead <= range->end) { + return true; + } else if (lookahead > range->end) { + index = mid_index; + } + size -= half_size; + } + const TSCharacterRange *range = &ranges[index]; + return (lookahead >= range->start && lookahead <= range->end); +} + /* * Lexer Macros */ +#ifdef _MSC_VER +#define UNUSED __pragma(warning(suppress : 4101)) +#else +#define UNUSED __attribute__((unused)) +#endif + #define START_LEXER() \ bool result = false; \ bool skip = false; \ + UNUSED \ bool eof = false; \ int32_t lookahead; \ goto start; \ @@ -147,6 +198,17 @@ struct TSLanguage { goto next_state; \ } +#define ADVANCE_MAP(...) \ + { \ + static const uint16_t map[] = { __VA_ARGS__ }; \ + for (uint32_t i = 0; i < sizeof(map) / sizeof(map[0]); i += 2) { \ + if (map[i] == lookahead) { \ + state = map[i + 1]; \ + goto next_state; \ + } \ + } \ + } + #define SKIP(state_value) \ { \ skip = true; \ @@ -165,7 +227,7 @@ struct TSLanguage { * Parse Table Macros */ -#define SMALL_STATE(id) id - LARGE_STATE_COUNT +#define SMALL_STATE(id) ((id) - LARGE_STATE_COUNT) #define STATE(id) id @@ -175,7 +237,7 @@ struct TSLanguage { {{ \ .shift = { \ .type = TSParseActionTypeShift, \ - .state = state_value \ + .state = (state_value) \ } \ }} @@ -183,7 +245,7 @@ struct TSLanguage { {{ \ .shift = { \ .type = TSParseActionTypeShift, \ - .state = state_value, \ + .state = (state_value), \ .repetition = true \ } \ }} @@ -196,14 +258,15 @@ struct TSLanguage { } \ }} -#define REDUCE(symbol_val, child_count_val, ...) \ - {{ \ - .reduce = { \ - .type = TSParseActionTypeReduce, \ - .symbol = symbol_val, \ - .child_count = child_count_val, \ - __VA_ARGS__ \ - }, \ +#define REDUCE(symbol_name, children, precedence, prod_id) \ + {{ \ + .reduce = { \ + .type = TSParseActionTypeReduce, \ + .symbol = symbol_name, \ + .child_count = children, \ + .dynamic_precedence = precedence, \ + .production_id = prod_id \ + }, \ }} #define RECOVER() \ From 12ee93042b0e183b4a72ac521ed0190f1b673c03 Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 5 Feb 2026 13:47:24 +0000 Subject: [PATCH 313/433] Python: Add tests --- python/extractor/tests/parser/strings.py | 2 ++ .../parser/template_strings_new.expected | 22 ++++++++++++++++++- .../tests/parser/template_strings_new.py | 2 ++ 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/python/extractor/tests/parser/strings.py b/python/extractor/tests/parser/strings.py index c7b772a44aaf..3aa61185a348 100644 --- a/python/extractor/tests/parser/strings.py +++ b/python/extractor/tests/parser/strings.py @@ -86,3 +86,5 @@ if 39: r'a\ ' +if 40: + f"{x:=^20}" diff --git a/python/extractor/tests/parser/template_strings_new.expected b/python/extractor/tests/parser/template_strings_new.expected index 64df91aac772..ae8eff88dcea 100644 --- a/python/extractor/tests/parser/template_strings_new.expected +++ b/python/extractor/tests/parser/template_strings_new.expected @@ -1,4 +1,4 @@ -Module: [1, 0] - [18, 0] +Module: [1, 0] - [20, 0] body: [ Assign: [1, 0] - [1, 14] targets: [ @@ -191,4 +191,24 @@ Module: [1, 0] - [18, 0] ] ] orelse: None + If: [18, 0] - [18, 5] + test: + Num: [18, 3] - [18, 4] + n: 7 + text: '7' + body: [ + Expr: [19, 4] - [19, 43] + value: + TemplateString: [19, 4] - [19, 43] + prefix: 't"' + values: [ + TemplateStringPart: [19, 6] - [19, 31] + text: '"With a format specifier: "' + s: 'With a format specifier: ' + Name: [19, 32] - [19, 36] + variable: Variable('name', None) + ctx: Load + ] + ] + orelse: None ] diff --git a/python/extractor/tests/parser/template_strings_new.py b/python/extractor/tests/parser/template_strings_new.py index 4c56dca2c0c8..452473a9d78a 100644 --- a/python/extractor/tests/parser/template_strings_new.py +++ b/python/extractor/tests/parser/template_strings_new.py @@ -15,3 +15,5 @@ t"Multiple {first} and {second} placeholders." if 6: t"Implicit concatenation: " t"Hello, {name}!" t" How are you?" +if 7: + t"With a format specifier: {name:=^20}" From 8c2743762858a9a65b19a22a6fa33f3d4a1cf133 Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 5 Feb 2026 13:50:54 +0000 Subject: [PATCH 314/433] Python: Bump extractor version and add change note --- python/extractor/semmle/util.py | 2 +- .../2026-02-05-fix-format-fill-character-misparse.md | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 python/ql/lib/change-notes/2026-02-05-fix-format-fill-character-misparse.md diff --git a/python/extractor/semmle/util.py b/python/extractor/semmle/util.py index 202c2a941c26..00651ace8314 100644 --- a/python/extractor/semmle/util.py +++ b/python/extractor/semmle/util.py @@ -10,7 +10,7 @@ #Semantic version of extractor. #Update this if any changes are made -VERSION = "7.1.7" +VERSION = "7.1.8" PY_EXTENSIONS = ".py", ".pyw" diff --git a/python/ql/lib/change-notes/2026-02-05-fix-format-fill-character-misparse.md b/python/ql/lib/change-notes/2026-02-05-fix-format-fill-character-misparse.md new file mode 100644 index 000000000000..8c0bd18c4dc2 --- /dev/null +++ b/python/ql/lib/change-notes/2026-02-05-fix-format-fill-character-misparse.md @@ -0,0 +1,5 @@ +--- +category: fix +--- + +- Using `=` as a fill character in a format specifier (e.g `f"{x:=^20}"`) now no longer results in a syntax error during parsing. From ab505e3281c0b24161aa835411b2d266b48f4bc5 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 13:21:09 +0100 Subject: [PATCH 315/433] C#: Add class for making synthetic parameter entities. --- .../Entities/SyntheticExtensionParameter.cs | 94 +++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 csharp/extractor/Semmle.Extraction.CSharp/Entities/SyntheticExtensionParameter.cs diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/SyntheticExtensionParameter.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/SyntheticExtensionParameter.cs new file mode 100644 index 000000000000..d417af6eedcd --- /dev/null +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/SyntheticExtensionParameter.cs @@ -0,0 +1,94 @@ +using System.IO; +using System.Linq; +using Microsoft.CodeAnalysis; +using Microsoft.CodeAnalysis.CSharp.Syntax; + +namespace Semmle.Extraction.CSharp.Entities +{ + /// + /// Synthetic parameter for extension methods declared using the extension syntax. + /// That is, we add a synthetic parameter s to IsValid in the following example: + /// extension(string s) { + /// public bool IsValid() { ... } + /// } + /// + /// Note, that we use the characteristics of the parameter of the extension type + /// to populate the database. + /// + internal class SyntheticExtensionParameter : FreshEntity, IParameter + { + private Method ExtensionMethod { get; } + private IParameterSymbol ExtensionParameter { get; } + private SyntheticExtensionParameter Original { get; } + + private SyntheticExtensionParameter(Context cx, Method method, IParameterSymbol parameter, SyntheticExtensionParameter? original) : base(cx) + { + ExtensionMethod = method; + ExtensionParameter = parameter; + Original = original ?? this; + } + + private static int Ordinal => 0; + + private Parameter.Kind ParamKind + { + get + { + switch (ExtensionParameter.RefKind) + { + case RefKind.Ref: + return Parameter.Kind.Ref; + case RefKind.In: + return Parameter.Kind.In; + case RefKind.RefReadOnlyParameter: + return Parameter.Kind.RefReadOnly; + default: + return Parameter.Kind.None; + } + } + } + + private string Name => ExtensionParameter.Name; + + private bool IsSourceDeclaration => ExtensionMethod.Symbol.IsSourceDeclaration(); + + protected override void Populate(TextWriter trapFile) + { + PopulateNullability(trapFile, ExtensionParameter.GetAnnotatedType()); + PopulateRefKind(trapFile, ExtensionParameter.RefKind); + + var type = Type.Create(Context, ExtensionParameter.Type); + trapFile.@params(this, Name, type.TypeRef, Ordinal, ParamKind, ExtensionMethod, Original); + + if (Context.OnlyScaffold) + { + return; + } + + if (Context.ExtractLocation(ExtensionParameter)) + { + var locations = Context.GetLocations(ExtensionParameter); + WriteLocationsToTrap(trapFile.param_location, this, locations); + } + + if (IsSourceDeclaration) + { + foreach (var syntax in ExtensionParameter.DeclaringSyntaxReferences + .Select(d => d.GetSyntax()) + .OfType() + .Where(s => s.Type is not null)) + { + TypeMention.Create(Context, syntax.Type!, this, type); + } + } + } + + public static SyntheticExtensionParameter Create(Context cx, Method method, IParameterSymbol parameter, SyntheticExtensionParameter? original) + { + var p = new SyntheticExtensionParameter(cx, method, parameter, original); + p.TryPopulate(); + return p; + } + } + +} From edfdc9812fba4e722726e636f452e9c84ee65f8d Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 15:57:16 +0100 Subject: [PATCH 316/433] C#: Extract extension types and members. Replacing invocations to static generated methods with invocation of extension type member. --- .../SymbolExtensions.cs | 132 +++++++++++++++++- .../Entities/Expressions/Invocation.cs | 61 ++++++-- .../Entities/Method.cs | 27 +++- .../Entities/OrdinaryMethod.cs | 6 +- .../Entities/Types/NamedType.cs | 21 +++ .../Entities/Types/Type.cs | 3 +- .../Semmle.Extraction.CSharp/Trap/Tuples.cs | 3 + .../Semmle.Util/IEnumerableExtensions.cs | 23 +++ 8 files changed, 256 insertions(+), 20 deletions(-) diff --git a/csharp/extractor/Semmle.Extraction.CSharp/CodeAnalysisExtensions/SymbolExtensions.cs b/csharp/extractor/Semmle.Extraction.CSharp/CodeAnalysisExtensions/SymbolExtensions.cs index 72f78f160598..0c0c17df125e 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/CodeAnalysisExtensions/SymbolExtensions.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/CodeAnalysisExtensions/SymbolExtensions.cs @@ -4,6 +4,7 @@ using System.IO; using System.Linq; using Microsoft.CodeAnalysis; +using Semmle.Util; using Semmle.Extraction.CSharp.Entities; namespace Semmle.Extraction.CSharp @@ -164,6 +165,7 @@ public static void BuildTypeId(this ITypeSymbol type, Context cx, EscapingTextWr case TypeKind.Enum: case TypeKind.Delegate: case TypeKind.Error: + case TypeKind.Extension: var named = (INamedTypeSymbol)type; named.BuildNamedTypeId(cx, trapFile, symbolBeingDefined, constructUnderlyingTupleType); return; @@ -275,6 +277,20 @@ private static void BuildFunctionPointerTypeId(this IFunctionPointerTypeSymbol f public static IEnumerable GetTupleElementsMaybeNull(this INamedTypeSymbol type) => type.TupleElements; + private static void BuildExtensionTypeId(this INamedTypeSymbol named, Context cx, EscapingTextWriter trapFile) + { + trapFile.Write("extension("); + if (named.ExtensionMarkerName is not null) + { + trapFile.Write(named.ExtensionMarkerName); + } + else + { + trapFile.Write("unknown"); + } + trapFile.Write(")"); + } + private static void BuildQualifierAndName(INamedTypeSymbol named, Context cx, EscapingTextWriter trapFile, ISymbol symbolBeingDefined) { if (named.ContainingType is not null) @@ -289,8 +305,18 @@ private static void BuildQualifierAndName(INamedTypeSymbol named, Context cx, Es named.ContainingNamespace.BuildNamespace(cx, trapFile); } - var name = named.IsFileLocal ? named.MetadataName : named.Name; - trapFile.Write(name); + if (named.IsFileLocal) + { + trapFile.Write(named.MetadataName); + } + else if (named.IsExtension) + { + named.BuildExtensionTypeId(cx, trapFile); + } + else + { + trapFile.Write(named.Name); + } } private static void BuildTupleId(INamedTypeSymbol named, Context cx, EscapingTextWriter trapFile, ISymbol symbolBeingDefined) @@ -391,6 +417,7 @@ public static void BuildDisplayName(this ITypeSymbol type, Context cx, TextWrite case TypeKind.Enum: case TypeKind.Delegate: case TypeKind.Error: + case TypeKind.Extension: var named = (INamedTypeSymbol)type; named.BuildNamedTypeDisplayName(cx, trapFile, constructUnderlyingTupleType); return; @@ -465,6 +492,20 @@ public static void BuildFunctionPointerSignature(IFunctionPointerTypeSymbol funp private static void BuildFunctionPointerTypeDisplayName(this IFunctionPointerTypeSymbol funptr, Context cx, TextWriter trapFile) => BuildFunctionPointerSignature(funptr, trapFile, s => s.BuildDisplayName(cx, trapFile)); + private static void BuildExtensionTypeDisplayName(this INamedTypeSymbol named, Context cx, TextWriter trapFile) + { + trapFile.Write("extension("); + if (named.ExtensionParameter?.Type is ITypeSymbol type) + { + type.BuildDisplayName(cx, trapFile); + } + else + { + trapFile.Write("unknown"); + } + trapFile.Write(")"); + } + private static void BuildNamedTypeDisplayName(this INamedTypeSymbol namedType, Context cx, TextWriter trapFile, bool constructUnderlyingTupleType) { if (!constructUnderlyingTupleType && namedType.IsTupleType) @@ -484,6 +525,12 @@ private static void BuildNamedTypeDisplayName(this INamedTypeSymbol namedType, C return; } + if (namedType.IsExtension) + { + namedType.BuildExtensionTypeDisplayName(cx, trapFile); + return; + } + if (namedType.IsAnonymousType) { namedType.BuildAnonymousName(cx, trapFile); @@ -596,6 +643,87 @@ public static bool IsSourceDeclaration(this IParameterSymbol parameter) return true; } + /// + /// Return true if this method is a compiler-generated extension method. + /// + public static bool IsCompilerGeneratedExtensionMethod(this IMethodSymbol method) => + method.TryGetExtensionMethod(out _); + + /// + /// Returns true if this method is a compiler-generated extension method, + /// and outputs the original extension method declaration. + /// + public static bool TryGetExtensionMethod(this IMethodSymbol method, out IMethodSymbol? declaration) + { + declaration = null; + if (method.IsImplicitlyDeclared && method.ContainingSymbol is INamedTypeSymbol containingType) + { + // Extension types are declared within the same type as the generated + // extension method implementation. + var extensions = containingType.GetMembers() + .OfType() + .Where(t => t.IsExtension); + // Find the (possibly unbound) original extension method that maps to this implementation (if any). + var unboundDeclaration = extensions.SelectMany(e => e.GetMembers()) + .OfType() + .FirstOrDefault(m => SymbolEqualityComparer.Default.Equals(m.AssociatedExtensionImplementation, method.ConstructedFrom)); + + var isFullyConstructed = method.IsBoundGenericMethod(); + if (isFullyConstructed && unboundDeclaration?.ContainingType is INamedTypeSymbol extensionType) + { + try + { + // Use the type arguments from the constructed extension method to construct the extension type. + var arguments = method.TypeArguments.ToArray(); + var (extensionTypeArguments, extensionMethodArguments) = arguments.SplitAt(extensionType.TypeParameters.Length); + + // Construct the extension type. + var boundExtensionType = extensionType.IsUnboundGenericType() + ? extensionType.Construct(extensionTypeArguments.ToArray()) + : extensionType; + + // Find the extension method declaration within the constructed extension type. + var extensionDeclaration = boundExtensionType.GetMembers() + .OfType() + .First(c => SymbolEqualityComparer.Default.Equals(c.OriginalDefinition, unboundDeclaration)); + + // If the extension declaration is unbound apply the remaning type arguments and construct it. + declaration = extensionDeclaration.IsUnboundGenericMethod() + ? extensionDeclaration.Construct(extensionMethodArguments.ToArray()) + : extensionDeclaration; + } + catch + { + // If anything goes wrong, fall back to the unbound declaration. + declaration = unboundDeclaration; + } + } + else + { + declaration = unboundDeclaration; + } + + } + return declaration is not null; + } + + /// + /// Returns true if this method is an unbound generic method. + /// + public static bool IsUnboundGenericMethod(this IMethodSymbol method) => + method.IsGenericMethod && SymbolEqualityComparer.Default.Equals(method.ConstructedFrom, method); + + /// + /// Returns true if this method is a bound generic method. + /// + public static bool IsBoundGenericMethod(this IMethodSymbol method) => method.IsGenericMethod && !method.IsUnboundGenericMethod(); + + /// + /// Returns true if this type is an unbound generic type. + /// + public static bool IsUnboundGenericType(this INamedTypeSymbol type) => + type.IsGenericType && SymbolEqualityComparer.Default.Equals(type.ConstructedFrom, type); + /// /// Gets the base type of `symbol`. Unlike `symbol.BaseType`, this excludes effective base /// types of type parameters as well as `object` base types. diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Invocation.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Invocation.cs index a6272974c22b..26d64339ef06 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Invocation.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Invocation.cs @@ -24,6 +24,16 @@ private Invocation(ExpressionNodeInfo info) private bool IsExplicitDelegateInvokeCall() => Kind == ExprKind.DELEGATE_INVOCATION && Context.GetModel(Syntax.Expression).GetSymbolInfo(Syntax.Expression).Symbol is IMethodSymbol m && m.MethodKind == MethodKind.DelegateInvoke; + private bool IsOperatorCall() => Kind == ExprKind.OPERATOR_INVOCATION; + + private bool IsValidMemberAccessKind() + { + return Kind == ExprKind.METHOD_INVOCATION || + IsEventDelegateCall() || + IsExplicitDelegateInvokeCall() || + IsOperatorCall(); + } + protected override void PopulateExpression(TextWriter trapFile) { if (IsNameof(Syntax)) @@ -37,7 +47,7 @@ protected override void PopulateExpression(TextWriter trapFile) var target = TargetSymbol; switch (Syntax.Expression) { - case MemberAccessExpressionSyntax memberAccess when Kind == ExprKind.METHOD_INVOCATION || IsEventDelegateCall() || IsExplicitDelegateInvokeCall(): + case MemberAccessExpressionSyntax memberAccess when IsValidMemberAccessKind(): memberName = memberAccess.Name.Identifier.Text; if (Syntax.Expression.Kind() == SyntaxKind.SimpleMemberAccessExpression) // Qualified method call; `x.M()` @@ -113,14 +123,31 @@ private static bool IsDynamicCall(ExpressionNodeInfo info) public SymbolInfo SymbolInfo => info.SymbolInfo; + private static bool IsOperatorLikeCall(ExpressionNodeInfo info) + { + return info.SymbolInfo.Symbol is IMethodSymbol method && + method.TryGetExtensionMethod(out var original) && + original!.MethodKind == MethodKind.UserDefinedOperator; + } + public IMethodSymbol? TargetSymbol { get { var si = SymbolInfo; - if (si.Symbol is not null) - return si.Symbol as IMethodSymbol; + if (si.Symbol is ISymbol symbol) + { + var method = symbol as IMethodSymbol; + // Case for compiler-generated extension methods. + if (method is not null && + method.TryGetExtensionMethod(out var original)) + { + return original; + } + + return method; + } if (si.CandidateReason == CandidateReason.OverloadResolutionFailure) { @@ -196,15 +223,25 @@ private static bool IsLocalFunctionInvocation(ExpressionNodeInfo info) private static ExprKind GetKind(ExpressionNodeInfo info) { - return IsNameof((InvocationExpressionSyntax)info.Node) - ? ExprKind.NAMEOF - : IsDelegateLikeCall(info) - ? IsDelegateInvokeCall(info) - ? ExprKind.DELEGATE_INVOCATION - : ExprKind.FUNCTION_POINTER_INVOCATION - : IsLocalFunctionInvocation(info) - ? ExprKind.LOCAL_FUNCTION_INVOCATION - : ExprKind.METHOD_INVOCATION; + if (IsNameof((InvocationExpressionSyntax)info.Node)) + { + return ExprKind.NAMEOF; + } + if (IsDelegateLikeCall(info)) + { + return IsDelegateInvokeCall(info) + ? ExprKind.DELEGATE_INVOCATION + : ExprKind.FUNCTION_POINTER_INVOCATION; + } + if (IsLocalFunctionInvocation(info)) + { + return ExprKind.LOCAL_FUNCTION_INVOCATION; + } + if (IsOperatorLikeCall(info)) + { + return ExprKind.OPERATOR_INVOCATION; + } + return ExprKind.METHOD_INVOCATION; } private static bool IsNameof(InvocationExpressionSyntax syntax) diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs index c92c561f31b6..5a437c3d3585 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs @@ -14,9 +14,28 @@ internal abstract class Method : CachedSymbol, IExpressionParentE protected Method(Context cx, IMethodSymbol init) : base(cx, init) { } + private SyntheticExtensionParameter? SyntheticParameter { get; set; } + + private int SynthesizeExtensionParameter() + { + // Synthesize implicit parameter for extension methods declared using extension(...) syntax. + if (Symbol.ContainingSymbol is INamedTypeSymbol type && + type.IsExtension && type.ExtensionParameter is IParameterSymbol parameter && + !string.IsNullOrEmpty(parameter.Name) && !Symbol.IsStatic) + { + var originalSyntheticParam = OriginalDefinition.SyntheticParameter; + SyntheticParameter = SyntheticExtensionParameter.Create(Context, this, parameter, originalSyntheticParam); + return 1; + } + + return 0; + } + protected void PopulateParameters() { var originalMethod = OriginalDefinition; + var positionOffset = SynthesizeExtensionParameter(); + IEnumerable parameters = Symbol.Parameters; IEnumerable originalParameters = originalMethod.Symbol.Parameters; @@ -24,8 +43,8 @@ protected void PopulateParameters() { var original = SymbolEqualityComparer.Default.Equals(p.paramSymbol, p.originalParam) ? null - : Parameter.Create(Context, p.originalParam, originalMethod); - Parameter.Create(Context, p.paramSymbol, this, original); + : Parameter.Create(Context, p.originalParam, originalMethod, null, positionOffset); + Parameter.Create(Context, p.paramSymbol, this, original, positionOffset); } if (Symbol.IsVararg) @@ -302,9 +321,9 @@ public static void AddExplicitInterfaceQualifierToId(Context cx, EscapingTextWri /// /// Whether this method has unbound type parameters. /// - public bool IsUnboundGeneric => IsGeneric && SymbolEqualityComparer.Default.Equals(Symbol.ConstructedFrom, Symbol); + public bool IsUnboundGeneric => Symbol.IsUnboundGenericMethod(); - public bool IsBoundGeneric => IsGeneric && !IsUnboundGeneric; + public bool IsBoundGeneric => Symbol.IsBoundGenericMethod(); protected IMethodSymbol ConstructedFromSymbol => Symbol.ConstructedFrom; diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/OrdinaryMethod.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/OrdinaryMethod.cs index 22bcd1dce2c8..2fb148358e8c 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/OrdinaryMethod.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/OrdinaryMethod.cs @@ -23,7 +23,11 @@ protected OrdinaryMethod(Context cx, IMethodSymbol init) ? Symbol.ContainingType.GetSymbolLocation() : BodyDeclaringSymbol.GetSymbolLocation(); - public override bool NeedsPopulation => base.NeedsPopulation || IsCompilerGeneratedDelegate(); + public override bool NeedsPopulation => + (base.NeedsPopulation || IsCompilerGeneratedDelegate()) && + // Exclude compiler-generated extension methods. A call to such a method + // is replaced by a call to the defining extension method. + !Symbol.IsCompilerGeneratedExtensionMethod(); public override void Populate(TextWriter trapFile) { diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/NamedType.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/NamedType.cs index dcf2bffe095f..078ccf01c10e 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/NamedType.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/NamedType.cs @@ -20,6 +20,8 @@ private NamedType(Context cx, INamedTypeSymbol init, bool constructUnderlyingTup public static NamedType Create(Context cx, INamedTypeSymbol type) => NamedTypeFactory.Instance.CreateEntityFromSymbol(cx, type); + public NamedType OriginalDefinition => Create(Context, Symbol.OriginalDefinition); + /// /// Creates a named type entity from a tuple type. Unlike , this /// will create an entity for the underlying `System.ValueTuple` struct. @@ -90,6 +92,25 @@ public override void Populate(TextWriter trapFile) { trapFile.anonymous_types(this); } + + if (Symbol.IsExtension && Symbol.ExtensionParameter is IParameterSymbol parameter) + { + // For some reason an extension type has a receiver parameter with an empty name + // even when there is no parameter. + if (!string.IsNullOrEmpty(parameter.Name)) + { + var originalType = OriginalDefinition; + // In case this is a constructed generic, we also need to create the unbound parameter. + var originalParameter = SymbolEqualityComparer.Default.Equals(Symbol, originalType.Symbol.ExtensionParameter) || originalType.Symbol.ExtensionParameter is null + ? null + : Parameter.Create(Context, originalType.Symbol.ExtensionParameter, originalType); + Parameter.Create(Context, parameter, this, originalParameter); + } + + // Use the parameter type as the receiver type. + var receiverType = Type.Create(Context, parameter.Type).TypeRef; + trapFile.extension_receiver_type(this, receiverType); + } } private readonly Lazy typeArgumentsLazy; diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/Type.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/Type.cs index 3e79a8f81018..0f28a1153e22 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/Type.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Types/Type.cs @@ -105,6 +105,7 @@ public Kinds.TypeKind GetTypeKind(Context cx, bool constructUnderlyingTupleType) case TypeKind.Pointer: return Kinds.TypeKind.POINTER; case TypeKind.FunctionPointer: return Kinds.TypeKind.FUNCTION_POINTER; case TypeKind.Error: return Kinds.TypeKind.UNKNOWN; + case TypeKind.Extension: return Kinds.TypeKind.EXTENSION; default: cx.ModelError(Symbol, $"Unhandled type kind '{Symbol.TypeKind}'"); return Kinds.TypeKind.UNKNOWN; @@ -366,7 +367,7 @@ private class DelegateTypeParameter : Parameter private DelegateTypeParameter(Context cx, IParameterSymbol init, IEntity parent, Parameter? original) : base(cx, init, parent, original) { } - public static new DelegateTypeParameter Create(Context cx, IParameterSymbol param, IEntity parent, Parameter? original = null) => + public static DelegateTypeParameter Create(Context cx, IParameterSymbol param, IEntity parent, Parameter? original = null) => // We need to use a different cache key than `param` to avoid mixing up // `DelegateTypeParameter`s and `Parameter`s DelegateTypeParameterFactory.Instance.CreateEntity(cx, (typeof(DelegateTypeParameter), new SymbolEqualityWrapper(param)), (param, parent, original)); diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Trap/Tuples.cs b/csharp/extractor/Semmle.Extraction.CSharp/Trap/Tuples.cs index c1d082bbee2b..1a25da058bd8 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Trap/Tuples.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Trap/Tuples.cs @@ -202,6 +202,9 @@ internal static void exprorstmt_name(this TextWriter trapFile, IEntity expr, str internal static void extend(this TextWriter trapFile, Type type, Type super) => trapFile.WriteTuple("extend", type, super); + internal static void extension_receiver_type(this TextWriter trapFile, Type @extension, Type receiverType) => + trapFile.WriteTuple("extension_receiver_type", extension, receiverType); + internal static void anonymous_types(this TextWriter trapFile, Type type) => trapFile.WriteTuple("anonymous_types", type); diff --git a/csharp/extractor/Semmle.Util/IEnumerableExtensions.cs b/csharp/extractor/Semmle.Util/IEnumerableExtensions.cs index 1ca676f0ce6d..f4cc97a4d48c 100644 --- a/csharp/extractor/Semmle.Util/IEnumerableExtensions.cs +++ b/csharp/extractor/Semmle.Util/IEnumerableExtensions.cs @@ -119,5 +119,28 @@ public static int SequenceHash(this IEnumerable items) where T : notnull /// public static IEnumerable WhereNotNull(this IEnumerable items) where T : class => items.Where(i => i is not null)!; + + /// + /// Splits the sequence at the given index. + /// + public static (IEnumerable, IEnumerable) SplitAt(this IEnumerable items, int index) + { + var left = new List(); + var right = new List(); + var i = 0; + foreach (var item in items) + { + if (i < index) + { + left.Add(item); + } + else + { + right.Add(item); + } + i++; + } + return (left, right); + } } } From 9a4a6cfcb8e8a35b8e0c0abec2d57c897094159d Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 15:58:31 +0100 Subject: [PATCH 317/433] C#: Add ExtensionType to the QL library. --- csharp/ql/lib/semmle/code/csharp/Member.qll | 2 +- csharp/ql/lib/semmle/code/csharp/Type.qll | 35 ++++++++++++++++++++- 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/csharp/ql/lib/semmle/code/csharp/Member.qll b/csharp/ql/lib/semmle/code/csharp/Member.qll index a196d3b3fc70..529ce8b8b7ef 100644 --- a/csharp/ql/lib/semmle/code/csharp/Member.qll +++ b/csharp/ql/lib/semmle/code/csharp/Member.qll @@ -469,7 +469,7 @@ class Virtualizable extends Overridable, Member, @virtualizable { /** * A parameterizable declaration. Either a callable (`Callable`), a delegate - * type (`DelegateType`), or an indexer (`Indexer`). + * type (`DelegateType`), an indexer (`Indexer`), or an extension (`ExtensionType`). */ class Parameterizable extends Declaration, @parameterizable { /** Gets raw parameter `i`, including the `this` parameter at index 0. */ diff --git a/csharp/ql/lib/semmle/code/csharp/Type.qll b/csharp/ql/lib/semmle/code/csharp/Type.qll index 1efb1aa93bff..54bbe9a6219f 100644 --- a/csharp/ql/lib/semmle/code/csharp/Type.qll +++ b/csharp/ql/lib/semmle/code/csharp/Type.qll @@ -17,7 +17,8 @@ private import semmle.code.csharp.frameworks.system.runtime.CompilerServices * * Either a value or reference type (`ValueOrRefType`), the `void` type (`VoidType`), * a pointer type (`PointerType`), the arglist type (`ArglistType`), an unknown - * type (`UnknownType`), or a type parameter (`TypeParameter`). + * type (`UnknownType`), a type parameter (`TypeParameter`) or + * an extension type (`ExtensionType`). */ class Type extends Member, TypeContainer, @type { /** Gets the name of this type without additional syntax such as `[]` or `*`. */ @@ -1326,3 +1327,35 @@ class TypeMention extends @type_mention { /** Gets the location of this type mention. */ Location getLocation() { type_mention_location(this, result) } } + +/** + * A type extension declaration, for example `extension(string s) { ... }` in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { ... } + * ``` + */ +class ExtensionType extends Parameterizable, @extension_type { + /** + * Gets the receiver parameter of this extension type, if any. + */ + Parameter getReceiverParameter() { result = this.getParameter(0) } + + /** + * Holds if this extension type has a receiver parameter. + */ + predicate hasReceiverParameter() { exists(this.getReceiverParameter()) } + + /** + * Gets the type being extended by this extension type. + */ + Type getExtendedType() { + extension_receiver_type(this, result) + or + not extension_receiver_type(this, any(Type t)) and + extension_receiver_type(this, getTypeRef(result)) + } + + override string getAPrimaryQlClass() { result = "ExtensionType" } +} From b9f36f37b67259c684e388c2c30f501e2e0f0a36 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 16:17:54 +0100 Subject: [PATCH 318/433] C#: Add extension callable and accessor classes. --- csharp/ql/lib/semmle/code/csharp/Callable.qll | 75 ++++++++++++++++--- csharp/ql/lib/semmle/code/csharp/Property.qll | 31 ++++++++ 2 files changed, 97 insertions(+), 9 deletions(-) diff --git a/csharp/ql/lib/semmle/code/csharp/Callable.qll b/csharp/ql/lib/semmle/code/csharp/Callable.qll index 49a2271b27c8..1bdfb008144a 100644 --- a/csharp/ql/lib/semmle/code/csharp/Callable.qll +++ b/csharp/ql/lib/semmle/code/csharp/Callable.qll @@ -221,6 +221,23 @@ class Callable extends Parameterizable, ExprOrStmtParent, @callable { /** Gets a `Call` that has this callable as a target. */ Call getACall() { this = result.getTarget() } + + /** Holds if this callable is declared in an extension type. */ + predicate isInExtension() { this.getDeclaringType() instanceof ExtensionType } +} + +/** + * A callable that is declared as an extension. + * + * Either an extension method (`ExtensionMethod`), an extension operator + * (`ExtensionOperator`) or an extension accessor (`ExtensionAccessor`). + */ +abstract class ExtensionCallable extends Callable { + /** Gets the type being extended by this method. */ + pragma[noinline] + Type getExtendedType() { result = this.getDeclaringType().(ExtensionType).getExtendedType() } + + override string getAPrimaryQlClass() { result = "ExtensionCallable" } } /** @@ -267,8 +284,11 @@ class Method extends Callable, Virtualizable, Attributable, @method { override Location getALocation() { method_location(this.getUnboundDeclaration(), result) } + /** Holds if this method is a classic extension method. */ + predicate isClassicExtensionMethod() { this.getParameter(0).hasExtensionMethodModifier() } + /** Holds if this method is an extension method. */ - predicate isExtensionMethod() { this.getParameter(0).hasExtensionMethodModifier() } + predicate isExtensionMethod() { this.isClassicExtensionMethod() or this.isInExtension() } /** Gets the type of the `params` parameter of this method, if any. */ Type getParamsType() { @@ -296,7 +316,17 @@ class Method extends Callable, Virtualizable, Attributable, @method { } /** - * An extension method, for example + * An extension method. + * + * Either a classic extension method (`ClassicExtensionMethod`) or an extension + * type extension method (`ExtensionTypeExtensionMethod`). + */ +abstract class ExtensionMethod extends ExtensionCallable, Method { + override string getAPrimaryQlClass() { result = "ExtensionMethod" } +} + +/** + * An extension method, for example * * ```csharp * static bool IsDefined(this Widget w) { @@ -304,16 +334,28 @@ class Method extends Callable, Virtualizable, Attributable, @method { * } * ``` */ -class ExtensionMethod extends Method { - ExtensionMethod() { this.isExtensionMethod() } - - override predicate isStatic() { any() } +class ClassicExtensionMethod extends ExtensionMethod { + ClassicExtensionMethod() { this.isClassicExtensionMethod() } - /** Gets the type being extended by this method. */ pragma[noinline] - Type getExtendedType() { result = this.getParameter(0).getType() } + override Type getExtendedType() { result = this.getParameter(0).getType() } - override string getAPrimaryQlClass() { result = "ExtensionMethod" } + override predicate isStatic() { any() } +} + +/** + * An extension method declared in an extension type, for example `IsNullOrEmpty` in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public bool IsNullOrEmpty() { ... } + * } + * } + * ``` + */ +class ExtensionTypeExtensionMethod extends ExtensionMethod { + ExtensionTypeExtensionMethod() { this.isInExtension() } } /** @@ -536,6 +578,21 @@ class RecordCloneMethod extends Method { } } +/** + * An extension operator, for example `*` in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public static string operator *(int s1, string s2) { ... } + * } + * } + * ``` + */ +class ExtensionOperator extends ExtensionCallable, Operator { + ExtensionOperator() { this.isInExtension() } +} + /** * A user-defined unary operator - an operator taking one operand. * diff --git a/csharp/ql/lib/semmle/code/csharp/Property.qll b/csharp/ql/lib/semmle/code/csharp/Property.qll index e651639b6313..d3e65def6716 100644 --- a/csharp/ql/lib/semmle/code/csharp/Property.qll +++ b/csharp/ql/lib/semmle/code/csharp/Property.qll @@ -260,6 +260,21 @@ class Property extends DeclarationWithGetSetAccessors, @property { override string getAPrimaryQlClass() { result = "Property" } } +/** + * An extension property, for example `FirstChar` in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public char FirstChar { get { ... } } + * } + * } + * ``` + */ +class ExtensionProperty extends Property { + ExtensionProperty() { this.getDeclaringType() instanceof ExtensionType } +} + /** * An indexer, for example `string this[int i]` on line 2 in * @@ -413,6 +428,22 @@ class Accessor extends Callable, Modifiable, Attributable, Overridable, @callabl override string toString() { result = this.getName() } } +/** + * An extension accessor. Either a getter (`Getter`) or a setter (`Setter`) of an + * extension property, for example `get` in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public char FirstChar { get { ... } } + * } + * } + * ``` + */ +class ExtensionAccessor extends ExtensionCallable, Accessor { + ExtensionAccessor() { this.getDeclaringType() instanceof ExtensionType } +} + /** * A `get` accessor, for example `get { return p; }` in * From 5e02a86542cb5d6fe75c30c8cae221bcb6fdd341 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 16:21:47 +0100 Subject: [PATCH 319/433] C#: Add extension call classes. --- .../ql/lib/semmle/code/csharp/exprs/Call.qll | 88 ++++++++++++++++++- 1 file changed, 87 insertions(+), 1 deletion(-) diff --git a/csharp/ql/lib/semmle/code/csharp/exprs/Call.qll b/csharp/ql/lib/semmle/code/csharp/exprs/Call.qll index eecbc35900aa..f8b51a990ed1 100644 --- a/csharp/ql/lib/semmle/code/csharp/exprs/Call.qll +++ b/csharp/ql/lib/semmle/code/csharp/exprs/Call.qll @@ -267,9 +267,33 @@ class Call extends Expr, @call { class MethodCall extends Call, QualifiableExpr, LateBindableExpr, @method_invocation_expr { override Method getTarget() { expr_call(this, result) } + /** + * Gets the accessor that was used to generate this method, if any. For example, the + * method call `MyExtensions.get_FirstChar(s)` on line 9 is generated from the property + * accessor `get_FirstChar` on line 3 in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public char FirstChar { get { ... } } + * } + * } + * + * class A { + * char M(string s) { + * return MyExtensions.get_FirstChar(s); + * } + * } + */ + Accessor getTargetAccessor() { expr_call(this, result) } + override Method getQualifiedDeclaration() { result = this.getTarget() } - override string toString() { result = "call to method " + concat(this.getTarget().getName()) } + override string toString() { + if exists(this.getTargetAccessor()) + then result = "call to extension accessor " + concat(this.getTargetAccessor().getName()) + else result = "call to method " + concat(this.getTarget().getName()) + } override string getAPrimaryQlClass() { result = "MethodCall" } @@ -479,6 +503,30 @@ class OperatorCall extends Call, LateBindableExpr, @operator_invocation_expr { override string getAPrimaryQlClass() { result = "OperatorCall" } } +/** + * A call to an extension operator, for example `3 * s` on + * line 9 in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public static string operator *(int i, string s) { ... } + * } + * } + * + * class A { + * string M(string s) { + * return 3 * s; + * } + * } + * ``` + */ +class ExtensionOperatorCall extends OperatorCall { + ExtensionOperatorCall() { this.getTarget() instanceof ExtensionOperator } + + override string getAPrimaryQlClass() { result = "ExtensionOperatorCall" } +} + /** * A call to a user-defined mutator operator, for example `a++` on * line 7 in @@ -658,6 +706,44 @@ class IndexerCall extends AccessorCall, IndexerAccessExpr { override string getAPrimaryQlClass() { result = "IndexerCall" } } +/** + * A call to an extension property accessor (via the property), for example + * `s.FirstChar` on line 9 in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public char FirstChar { get { ... } } + * } + * } + * + * class A { + * char M(string s) { + * return s.FirstChar; + * } + * } + * ``` + */ +class ExtensionPropertyCall extends PropertyCall { + private ExtensionProperty prop; + + ExtensionPropertyCall() { this.getProperty() = prop } + + override Expr getArgument(int i) { + if prop.isStatic() + then result = super.getArgument(i) + else ( + // Shift arguments as the qualifier is an explicit argument in the getter/setter. + i = 0 and + result = this.getQualifier() + or + result = super.getArgument(i - 1) + ) + } + + override string getAPrimaryQlClass() { result = "ExtensionPropertyCall" } +} + /** * A call to an event accessor, for example the call to `add_Click` * (defined on line 5) on line 12 in From e831c80a236e0db18087b73c26560a7c6c3fdf1b Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 16:24:05 +0100 Subject: [PATCH 320/433] C#: Replace extension parameter access with the corresponding synthetic parameter. --- .../lib/semmle/code/csharp/exprs/Access.qll | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll b/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll index eafc4fac491f..71a25ace8d2a 100644 --- a/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll +++ b/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll @@ -223,6 +223,42 @@ class ParameterAccess extends LocalScopeVariableAccess, @parameter_access_expr { override string getAPrimaryQlClass() { result = "ParameterAccess" } } +/** + * An access to a synthetic parameter for an extension method, for example the + * access to `s` on line 3 in + * + * ```csharp + * static class MyExtensions { + * extension(string s) { + * public bool IsEmpty() { return s == string.Empty; } + * } + * } + * ``` + */ +class SyntheticExtensionParameterAccess extends ParameterAccess { + private Parameter p; + + SyntheticExtensionParameterAccess() { + exists(ExtensionType et | + p = et.getReceiverParameter() and + expr_access(this, p) + ) + } + + override Parameter getTarget() { + exists(ExtensionCallable c | + this.getEnclosingCallable+() = c and + result = c.getParameter(0) + ) + } + + override string toString() { + result = "access to extension synthetic parameter " + this.getTarget().getName() + } + + override string getAPrimaryQlClass() { result = "SyntheticExtensionParameterAccess" } +} + /** * An access to a parameter that reads the underlying value, for example * the access to `p` on line 2 in From 849823eff649bfcffb8aea7f5bdfb7d3b3fb296d Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 16:25:38 +0100 Subject: [PATCH 321/433] C#: Add dispatch logic for calling extensions accessors as methods. --- .../semmle/code/csharp/dispatch/Dispatch.qll | 35 +++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/csharp/ql/lib/semmle/code/csharp/dispatch/Dispatch.qll b/csharp/ql/lib/semmle/code/csharp/dispatch/Dispatch.qll index c61ad0f2a2a9..a83967441d74 100644 --- a/csharp/ql/lib/semmle/code/csharp/dispatch/Dispatch.qll +++ b/csharp/ql/lib/semmle/code/csharp/dispatch/Dispatch.qll @@ -87,7 +87,8 @@ private module Internal { newtype TDispatchCall = TDispatchMethodCall(MethodCall mc) { not isReflectionCall(mc, _, _, _, _) and - not mc.isLateBound() + not mc.isLateBound() and + not isExtensionAccessorCall(mc) } or TDispatchAccessorCall(AccessorCall ac) or TDispatchOperatorCall(OperatorCall oc) { not oc.isLateBound() } or @@ -110,7 +111,8 @@ private module Internal { c instanceof ConstructorInitializer or c instanceof LocalFunctionCall - } + } or + TDispatchExtensionAccessorCall(MethodCall mc) { isExtensionAccessorCall(mc) } cached Expr getCall(DispatchCall dc) { result = dc.(DispatchCallImpl).getCall() } @@ -142,6 +144,8 @@ private module Internal { import Cached + private predicate isExtensionAccessorCall(MethodCall mc) { exists(mc.getTargetAccessor()) } + /** * Holds if `mc` is a reflection call to a method named `name`, where * `object` is the object on which to invoke the method (`null` if a @@ -819,6 +823,33 @@ private module Internal { override Method getAStaticTarget() { result = this.getCall().getTarget() } } + /** + * A call to an extension accessor method. + */ + private class DispatchExtensionAccessorCall extends DispatchCallImpl, + TDispatchExtensionAccessorCall + { + override MethodCall getCall() { this = TDispatchExtensionAccessorCall(result) } + + private Expr getArgumentForParameter(Parameter p) { + this.getCall().getTargetAccessor().getAParameter() = p and + result = this.getCall().getArgument(p.getPosition()) + } + + override Expr getArgument(int i) { + exists(MethodCall call, Parameter p | call = this.getCall() | + p = call.getTargetAccessor().getParameter(i) and + result = this.getArgumentForParameter(p) + ) + } + + override Expr getQualifier() { result = this.getCall().getQualifier() } + + override Accessor getAStaticTarget() { result = this.getCall().getTargetAccessor() } + + override RuntimeCallable getADynamicTarget() { result = this.getAStaticTarget() } + } + /** * An ordinary operator call. * From c040daab9c110b0112779a7543a3b95ab7e4d0b6 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 16:31:27 +0100 Subject: [PATCH 322/433] C#: Add extensions test. --- .../library-tests/extension/extensionTypes.cs | 30 +++++ .../extension/extensionTypes.expected | 37 ++++++ .../library-tests/extension/extensionTypes.ql | 56 +++++++++ .../library-tests/extension/extensions.cs | 107 +++++++++++++++++ .../extension/extensions.expected | 111 ++++++++++++++++++ .../library-tests/extension/extensions.ql | 69 +++++++++++ .../ql/test/library-tests/extension/options | 2 + 7 files changed, 412 insertions(+) create mode 100644 csharp/ql/test/library-tests/extension/extensionTypes.cs create mode 100644 csharp/ql/test/library-tests/extension/extensionTypes.expected create mode 100644 csharp/ql/test/library-tests/extension/extensionTypes.ql create mode 100644 csharp/ql/test/library-tests/extension/extensions.cs create mode 100644 csharp/ql/test/library-tests/extension/extensions.expected create mode 100644 csharp/ql/test/library-tests/extension/extensions.ql create mode 100644 csharp/ql/test/library-tests/extension/options diff --git a/csharp/ql/test/library-tests/extension/extensionTypes.cs b/csharp/ql/test/library-tests/extension/extensionTypes.cs new file mode 100644 index 000000000000..06047af375af --- /dev/null +++ b/csharp/ql/test/library-tests/extension/extensionTypes.cs @@ -0,0 +1,30 @@ +using System; +using System.Diagnostics.CodeAnalysis; + +public static class MyExtensionTypes +{ + extension([NotNull] string s) + { + public void M11() { } + } + extension(ref readonly int i1) + { + public void M21() { } + } + extension(in int i2) + { + public void M31() { } + } + extension(ref int i3) + { + public void M41() { } + } + extension(string? s) + { + public void M51() { } + } + extension([NotNullWhen(true)] T1 t1) where T1 : class + { + public void M61(object o, T2 t2) { } + } +} diff --git a/csharp/ql/test/library-tests/extension/extensionTypes.expected b/csharp/ql/test/library-tests/extension/extensionTypes.expected new file mode 100644 index 000000000000..b27ff095a4be --- /dev/null +++ b/csharp/ql/test/library-tests/extension/extensionTypes.expected @@ -0,0 +1,37 @@ +extensionTypeReceiverParameter +| extensionTypes.cs:6:5:9:5 | extension(String) | extensionTypes.cs:6:32:6:32 | s | +| extensionTypes.cs:10:5:13:5 | extension(Int32) | extensionTypes.cs:10:32:10:33 | i1 | +| extensionTypes.cs:14:5:17:5 | extension(Int32) | extensionTypes.cs:14:22:14:23 | i2 | +| extensionTypes.cs:18:5:21:5 | extension(Int32) | extensionTypes.cs:18:23:18:24 | i3 | +| extensionTypes.cs:22:5:25:5 | extension(String) | extensionTypes.cs:22:23:22:23 | s | +| extensionTypes.cs:26:5:29:5 | extension(T1)`1 | extensionTypes.cs:26:42:26:43 | t1 | +| extensions.cs:6:5:17:5 | extension(String) | extensions.cs:6:22:6:22 | s | +| extensions.cs:26:5:35:5 | extension(Object) | extensions.cs:26:20:26:20 | t | +| extensions.cs:26:5:35:5 | extension(String) | extensions.cs:26:20:26:20 | t | +| extensions.cs:26:5:35:5 | extension(T)`1 | extensions.cs:26:20:26:20 | t | +extensionTypeExtendedType +| extensionTypes.cs:6:5:9:5 | extension(String) | string | +| extensionTypes.cs:10:5:13:5 | extension(Int32) | int | +| extensionTypes.cs:14:5:17:5 | extension(Int32) | int | +| extensionTypes.cs:18:5:21:5 | extension(Int32) | int | +| extensionTypes.cs:22:5:25:5 | extension(String) | string | +| extensionTypes.cs:26:5:29:5 | extension(T1)`1 | T1 | +| extensions.cs:6:5:17:5 | extension(String) | string | +| extensions.cs:19:5:24:5 | extension(Object) | object | +| extensions.cs:26:5:35:5 | extension(Object) | object | +| extensions.cs:26:5:35:5 | extension(String) | string | +| extensions.cs:26:5:35:5 | extension(T)`1 | T | +extensionTypeReceiverParameterAttribute +| extensionTypes.cs:6:5:9:5 | extension(String) | extensionTypes.cs:6:32:6:32 | s | extensionTypes.cs:6:16:6:22 | [NotNull(...)] | +| extensionTypes.cs:26:5:29:5 | extension(T1)`1 | extensionTypes.cs:26:42:26:43 | t1 | extensionTypes.cs:26:20:26:30 | [NotNullWhen(...)] | +extensionTypeReceiverParameterModifier +| extensionTypes.cs:10:5:13:5 | extension(Int32) | extensionTypes.cs:10:32:10:33 | i1 | ref readonly | +| extensionTypes.cs:14:5:17:5 | extension(Int32) | extensionTypes.cs:14:22:14:23 | i2 | in | +| extensionTypes.cs:18:5:21:5 | extension(Int32) | extensionTypes.cs:18:23:18:24 | i3 | ref | +extensionTypeParameterConstraints +| extensionTypes.cs:26:5:29:5 | extension(T1)`1 | extensionTypes.cs:26:15:26:16 | T1 | file://:0:0:0:0 | where T1: ... | +| extensions.cs:26:5:35:5 | extension(T)`1 | extensions.cs:26:15:26:15 | T | file://:0:0:0:0 | where T: ... | +syntheticParameterModifier +| extensionTypes.cs:10:5:13:5 | extension(Int32) | extensionTypes.cs:12:21:12:23 | M21 | extensionTypes.cs:10:32:10:33 | i1 | ref readonly | +| extensionTypes.cs:14:5:17:5 | extension(Int32) | extensionTypes.cs:16:21:16:23 | M31 | extensionTypes.cs:14:22:14:23 | i2 | in | +| extensionTypes.cs:18:5:21:5 | extension(Int32) | extensionTypes.cs:20:21:20:23 | M41 | extensionTypes.cs:18:23:18:24 | i3 | ref | diff --git a/csharp/ql/test/library-tests/extension/extensionTypes.ql b/csharp/ql/test/library-tests/extension/extensionTypes.ql new file mode 100644 index 000000000000..f4d3fe5bbd53 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/extensionTypes.ql @@ -0,0 +1,56 @@ +import csharp + +private predicate inTestFile(ExtensionType et) { + et.getFile().getBaseName() = ["extensions.cs", "extensionTypes.cs"] +} + +private string getModifier(Parameter p) { + p.isIn() and result = "in" + or + p.isRef() and result = "ref" + or + p.isReadonlyRef() and result = "ref readonly" +} + +query predicate extensionTypeReceiverParameter(ExtensionType et, Parameter p) { + inTestFile(et) and + p = et.getReceiverParameter() +} + +query predicate extensionTypeExtendedType(ExtensionType et, string t) { + inTestFile(et) and + t = et.getExtendedType().toStringWithTypes() +} + +query predicate extensionTypeReceiverParameterAttribute(ExtensionType et, Parameter p, Attribute a) { + inTestFile(et) and + et.getReceiverParameter() = p and + p.getAnAttribute() = a +} + +query predicate extensionTypeReceiverParameterModifier( + ExtensionType et, Parameter p, string modifier +) { + inTestFile(et) and + et.getReceiverParameter() = p and + modifier = getModifier(p) +} + +query predicate extensionTypeParameterConstraints( + UnboundGeneric ug, TypeParameter tp, TypeParameterConstraints c +) { + inTestFile(ug) and + ug instanceof ExtensionType and + tp = ug.getATypeParameter() and + tp.getConstraints() = c +} + +query predicate syntheticParameterModifier( + ExtensionType et, ExtensionMethod em, Parameter p, string modifier +) { + inTestFile(et) and + em.getDeclaringType() = et and + p = em.getParameter(0) and + not em.isStatic() and + modifier = getModifier(p) +} diff --git a/csharp/ql/test/library-tests/extension/extensions.cs b/csharp/ql/test/library-tests/extension/extensions.cs new file mode 100644 index 000000000000..1117a98f8a07 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/extensions.cs @@ -0,0 +1,107 @@ +using System; +using System.Collections.Generic; + +public static class MyExtensions +{ + extension(string s) + { + public bool Prop1 => s.Length > 0; + public bool Prop2 { get { return true; } set { } } + public static bool StaticProp1 { get { return false; } } + public bool M1() => s is not null; + public string M2(string other) { return s + other; } + public static int StaticM1() { return 0; } + public static int StaticM2(string x) { return x.Length; } + public static string operator *(int a, string b) { return ""; } + public T StringGenericM1(T t, object o) { return t; } + } + + extension(object) + { + public static int StaticObjectM1() { return 0; } + public static int StaticObjectM2(string s) { return s.Length; } + public static bool StaticProp => true; + } + + extension(T t) where T : class + { + public bool GenericProp1 => t is not null; + public bool GenericProp2 { get { return true; } set { } } + public bool GenericM1() => t is not null; + public void GenericM2(S other) { } + public void GenericStaticM1() { } + public static void GenericStaticM2(S other) { } + public static T operator +(T a, T b) { return null; } + } +} + +public static class ClassicExtensions +{ + public static bool M3(this string s) => s is not null; +} + +public class C +{ + public static void CallingExtensions() + { + var s = "Hello World."; + + // Calling the extensions properties + var x11 = s.Prop1; + var x12 = s.Prop2; + s.Prop2 = true; + var x13 = string.StaticProp1; + var x14 = object.StaticProp; + + // Calling the extensions methods. + var x21 = s.M1(); + var x22 = s.M2("!!!"); + var x23 = string.StaticM1(); + var x24 = string.StaticM2(s); + var x25 = object.StaticObjectM1(); + var x26 = object.StaticObjectM2(s); + + // Calling the extension operator. + var x30 = 3 * s; + + // Calling the classic extension method. + var y = s.M3(); + + // Calling the compiler generated static extension methods. + MyExtensions.M1(s); + MyExtensions.M2(s, "!!!"); + MyExtensions.StaticM1(); + MyExtensions.StaticM2(s); + MyExtensions.StaticObjectM1(); + MyExtensions.StaticObjectM2(s); + + // Calling the compiler generated operator method. + MyExtensions.op_Multiply(3, s); + + // Calling the compiler generated methods used by the extension property accessors. + MyExtensions.get_Prop1(s); + MyExtensions.get_Prop2(s); + MyExtensions.set_Prop2(s, false); + MyExtensions.get_StaticProp(); + } + + public static void CallingGenericExtensions() + { + var s = "Hello Generic World."; + var o = new object(); + + // Calling generic extension method + o.GenericM1(); + s.GenericM1(); + + // Calling the compiler generated static extension methods. + MyExtensions.GenericM1(o); + MyExtensions.GenericM1(s); + + o.GenericM2(42); + MyExtensions.GenericM2(o, 42); + + s.StringGenericM1(7, new object()); + MyExtensions.StringGenericM1(s, "test", new object()); + } +} diff --git a/csharp/ql/test/library-tests/extension/extensions.expected b/csharp/ql/test/library-tests/extension/extensions.expected new file mode 100644 index 000000000000..c892ff08947b --- /dev/null +++ b/csharp/ql/test/library-tests/extension/extensions.expected @@ -0,0 +1,111 @@ +extensionMethodCallArgument +| extensions.cs:57:19:57:24 | call to method M1 | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:22:6:22 | s | 0 | extensions.cs:57:19:57:19 | access to local variable s | +| extensions.cs:58:19:58:29 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:22:6:22 | s | 0 | extensions.cs:58:19:58:19 | access to local variable s | +| extensions.cs:58:19:58:29 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:12:33:12:37 | other | 1 | extensions.cs:58:24:58:28 | "!!!" | +| extensions.cs:60:19:60:36 | call to method StaticM2 | extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:14:43:14:43 | x | 0 | extensions.cs:60:35:60:35 | access to local variable s | +| extensions.cs:62:19:62:42 | call to method StaticObjectM2 | extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:22:49:22:49 | s | 0 | extensions.cs:62:41:62:41 | access to local variable s | +| extensions.cs:68:17:68:22 | call to method M3 | extensions.cs:40:24:40:25 | M3 | extensions.cs:40:39:40:39 | s | 0 | extensions.cs:68:17:68:17 | access to local variable s | +| extensions.cs:71:9:71:26 | call to method M1 | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:22:6:22 | s | 0 | extensions.cs:71:25:71:25 | access to local variable s | +| extensions.cs:72:9:72:33 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:22:6:22 | s | 0 | extensions.cs:72:25:72:25 | access to local variable s | +| extensions.cs:72:9:72:33 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:12:33:12:37 | other | 1 | extensions.cs:72:28:72:32 | "!!!" | +| extensions.cs:74:9:74:32 | call to method StaticM2 | extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:14:43:14:43 | x | 0 | extensions.cs:74:31:74:31 | access to local variable s | +| extensions.cs:76:9:76:38 | call to method StaticObjectM2 | extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:22:49:22:49 | s | 0 | extensions.cs:76:37:76:37 | access to local variable s | +| extensions.cs:94:9:94:21 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | extensions.cs:94:9:94:9 | access to local variable o | +| extensions.cs:95:9:95:21 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | extensions.cs:95:9:95:9 | access to local variable s | +| extensions.cs:98:9:98:33 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | extensions.cs:98:32:98:32 | access to local variable o | +| extensions.cs:99:9:99:33 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | extensions.cs:99:32:99:32 | access to local variable s | +| extensions.cs:101:9:101:23 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:20:26:20 | t | 0 | extensions.cs:101:9:101:9 | access to local variable o | +| extensions.cs:101:9:101:23 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:31:36:31:40 | other | 1 | extensions.cs:101:21:101:22 | 42 | +| extensions.cs:102:9:102:37 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:20:26:20 | t | 0 | extensions.cs:102:32:102:32 | access to local variable o | +| extensions.cs:102:9:102:37 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:31:36:31:40 | other | 1 | extensions.cs:102:35:102:36 | 42 | +| extensions.cs:104:9:104:47 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:22:6:22 | s | 0 | extensions.cs:104:9:104:9 | access to local variable s | +| extensions.cs:104:9:104:47 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:39:16:39 | t | 1 | extensions.cs:104:32:104:32 | 7 | +| extensions.cs:104:9:104:47 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:49:16:49 | o | 2 | extensions.cs:104:35:104:46 | object creation of type Object | +| extensions.cs:105:9:105:69 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:22:6:22 | s | 0 | extensions.cs:105:46:105:46 | access to local variable s | +| extensions.cs:105:9:105:69 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:39:16:39 | t | 1 | extensions.cs:105:49:105:54 | "test" | +| extensions.cs:105:9:105:69 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:49:16:49 | o | 2 | extensions.cs:105:57:105:68 | object creation of type Object | +extensionMethodCalls +| extensions.cs:57:19:57:24 | call to method M1 | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).M1 | +| extensions.cs:58:19:58:29 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).M2 | +| extensions.cs:59:19:59:35 | call to method StaticM1 | extensions.cs:13:27:13:34 | StaticM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StaticM1 | +| extensions.cs:60:19:60:36 | call to method StaticM2 | extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StaticM2 | +| extensions.cs:61:19:61:41 | call to method StaticObjectM1 | extensions.cs:21:27:21:40 | StaticObjectM1 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(Object).StaticObjectM1 | +| extensions.cs:62:19:62:42 | call to method StaticObjectM2 | extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(Object).StaticObjectM2 | +| extensions.cs:68:17:68:22 | call to method M3 | extensions.cs:40:24:40:25 | M3 | extensions.cs:38:21:38:37 | ClassicExtensions | ClassicExtensions.M3 | +| extensions.cs:71:9:71:26 | call to method M1 | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).M1 | +| extensions.cs:72:9:72:33 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).M2 | +| extensions.cs:73:9:73:31 | call to method StaticM1 | extensions.cs:13:27:13:34 | StaticM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StaticM1 | +| extensions.cs:74:9:74:32 | call to method StaticM2 | extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StaticM2 | +| extensions.cs:75:9:75:37 | call to method StaticObjectM1 | extensions.cs:21:27:21:40 | StaticObjectM1 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(Object).StaticObjectM1 | +| extensions.cs:76:9:76:38 | call to method StaticObjectM2 | extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(Object).StaticObjectM2 | +| extensions.cs:94:9:94:21 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(Object).GenericM1 | +| extensions.cs:95:9:95:21 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(String) | MyExtensions+extension(String).GenericM1 | +| extensions.cs:98:9:98:33 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(Object).GenericM1 | +| extensions.cs:99:9:99:33 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(String) | MyExtensions+extension(String).GenericM1 | +| extensions.cs:101:9:101:23 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(Object).GenericM2 | +| extensions.cs:102:9:102:37 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(Object).GenericM2 | +| extensions.cs:104:9:104:47 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StringGenericM1 | +| extensions.cs:105:9:105:69 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StringGenericM1 | +extensionParameter +| extensions.cs:11:21:11:22 | M1 | extensions.cs:6:22:6:22 | s | 0 | string | extensions.cs:6:22:6:22 | s | +| extensions.cs:12:23:12:24 | M2 | extensions.cs:6:22:6:22 | s | 0 | string | extensions.cs:6:22:6:22 | s | +| extensions.cs:12:23:12:24 | M2 | extensions.cs:12:33:12:37 | other | 1 | string | extensions.cs:12:33:12:37 | other | +| extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:14:43:14:43 | x | 0 | string | extensions.cs:14:43:14:43 | x | +| extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:22:6:22 | s | 0 | string | extensions.cs:6:22:6:22 | s | +| extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:39:16:39 | t | 1 | int | extensions.cs:16:39:16:39 | t | +| extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:49:16:49 | o | 2 | object | extensions.cs:16:49:16:49 | o | +| extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:22:6:22 | s | 0 | string | extensions.cs:6:22:6:22 | s | +| extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:39:16:39 | t | 1 | string | extensions.cs:16:39:16:39 | t | +| extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:49:16:49 | o | 2 | object | extensions.cs:16:49:16:49 | o | +| extensions.cs:16:18:16:35 | StringGenericM1`1 | extensions.cs:6:22:6:22 | s | 0 | string | extensions.cs:6:22:6:22 | s | +| extensions.cs:16:18:16:35 | StringGenericM1`1 | extensions.cs:16:39:16:39 | t | 1 | T | extensions.cs:16:39:16:39 | t | +| extensions.cs:16:18:16:35 | StringGenericM1`1 | extensions.cs:16:49:16:49 | o | 2 | object | extensions.cs:16:49:16:49 | o | +| extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:22:49:22:49 | s | 0 | string | extensions.cs:22:49:22:49 | s | +| extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | T | extensions.cs:26:20:26:20 | t | +| extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | object | extensions.cs:26:20:26:20 | t | +| extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:20:26:20 | t | 0 | string | extensions.cs:26:20:26:20 | t | +| extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:20:26:20 | t | 0 | object | extensions.cs:26:20:26:20 | t | +| extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:31:36:31:40 | other | 1 | int | extensions.cs:31:36:31:40 | other | +| extensions.cs:31:21:31:32 | GenericM2`1 | extensions.cs:26:20:26:20 | t | 0 | T | extensions.cs:26:20:26:20 | t | +| extensions.cs:31:21:31:32 | GenericM2`1 | extensions.cs:26:20:26:20 | t | 0 | object | extensions.cs:26:20:26:20 | t | +| extensions.cs:31:21:31:32 | GenericM2`1 | extensions.cs:26:20:26:20 | t | 0 | string | extensions.cs:26:20:26:20 | t | +| extensions.cs:31:21:31:32 | GenericM2`1 | extensions.cs:31:36:31:40 | other | 1 | S | extensions.cs:31:36:31:40 | other | +| extensions.cs:31:21:31:32 | GenericM2`1 | extensions.cs:31:36:31:40 | other | 1 | S | extensions.cs:31:36:31:40 | other | +| extensions.cs:31:21:31:32 | GenericM2`1 | extensions.cs:31:36:31:40 | other | 1 | S | extensions.cs:31:36:31:40 | other | +| extensions.cs:32:21:32:35 | GenericStaticM1 | extensions.cs:26:20:26:20 | t | 0 | T | extensions.cs:26:20:26:20 | t | +| extensions.cs:32:21:32:35 | GenericStaticM1 | extensions.cs:26:20:26:20 | t | 0 | object | extensions.cs:26:20:26:20 | t | +| extensions.cs:32:21:32:35 | GenericStaticM1 | extensions.cs:26:20:26:20 | t | 0 | string | extensions.cs:26:20:26:20 | t | +| extensions.cs:33:28:33:45 | GenericStaticM2`1 | extensions.cs:33:49:33:53 | other | 0 | S | extensions.cs:33:49:33:53 | other | +| extensions.cs:33:28:33:45 | GenericStaticM2`1 | extensions.cs:33:49:33:53 | other | 0 | S | extensions.cs:33:49:33:53 | other | +| extensions.cs:33:28:33:45 | GenericStaticM2`1 | extensions.cs:33:49:33:53 | other | 0 | S | extensions.cs:33:49:33:53 | other | +| extensions.cs:40:24:40:25 | M3 | extensions.cs:40:39:40:39 | s | 0 | string | extensions.cs:40:39:40:39 | s | +extensionOperatorCallArgument +| extensions.cs:15:39:15:39 | * | extensions.cs:65:19:65:23 | call to operator * | extensions.cs:15:45:15:45 | a | 0 | extensions.cs:65:19:65:19 | 3 | +| extensions.cs:15:39:15:39 | * | extensions.cs:65:19:65:23 | call to operator * | extensions.cs:15:55:15:55 | b | 1 | extensions.cs:65:23:65:23 | access to local variable s | +| extensions.cs:15:39:15:39 | * | extensions.cs:79:9:79:38 | call to operator * | extensions.cs:15:45:15:45 | a | 0 | extensions.cs:79:34:79:34 | 3 | +| extensions.cs:15:39:15:39 | * | extensions.cs:79:9:79:38 | call to operator * | extensions.cs:15:55:15:55 | b | 1 | extensions.cs:79:37:79:37 | access to local variable s | +extensionOperatorCalls +| extensions.cs:65:19:65:23 | call to operator * | extensions.cs:15:39:15:39 | * | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).op_Multiply | +| extensions.cs:79:9:79:38 | call to operator * | extensions.cs:15:39:15:39 | * | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).op_Multiply | +extensionProperty +| extensions.cs:8:21:8:25 | Prop1 | extensions.cs:6:5:17:5 | extension(String) | +| extensions.cs:9:21:9:25 | Prop2 | extensions.cs:6:5:17:5 | extension(String) | +| extensions.cs:10:28:10:38 | StaticProp1 | extensions.cs:6:5:17:5 | extension(String) | +| extensions.cs:23:28:23:37 | StaticProp | extensions.cs:19:5:24:5 | extension(Object) | +| extensions.cs:28:21:28:32 | GenericProp1 | extensions.cs:26:5:35:5 | extension(Object) | +| extensions.cs:28:21:28:32 | GenericProp1 | extensions.cs:26:5:35:5 | extension(String) | +| extensions.cs:28:21:28:32 | GenericProp1 | extensions.cs:26:5:35:5 | extension(T)`1 | +| extensions.cs:29:21:29:32 | GenericProp2 | extensions.cs:26:5:35:5 | extension(Object) | +| extensions.cs:29:21:29:32 | GenericProp2 | extensions.cs:26:5:35:5 | extension(String) | +| extensions.cs:29:21:29:32 | GenericProp2 | extensions.cs:26:5:35:5 | extension(T)`1 | +extensionPropertyCall +| extensions.cs:50:19:50:25 | access to property Prop1 | extensions.cs:8:21:8:25 | Prop1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).Prop1 | +| extensions.cs:51:19:51:25 | access to property Prop2 | extensions.cs:9:21:9:25 | Prop2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).Prop2 | +| extensions.cs:52:9:52:15 | access to property Prop2 | extensions.cs:9:21:9:25 | Prop2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).Prop2 | +| extensions.cs:53:19:53:36 | access to property StaticProp1 | extensions.cs:10:28:10:38 | StaticProp1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StaticProp1 | +| extensions.cs:54:19:54:35 | access to property StaticProp | extensions.cs:23:28:23:37 | StaticProp | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(Object).StaticProp | +extensionAccessorCall +| extensions.cs:82:9:82:33 | call to extension accessor get_Prop1 | extensions.cs:8:30:8:41 | get_Prop1 | extensions.cs:8:21:8:25 | Prop1 | MyExtensions+extension(String).get_Prop1 | +| extensions.cs:83:9:83:33 | call to extension accessor get_Prop2 | extensions.cs:9:29:9:31 | get_Prop2 | extensions.cs:9:21:9:25 | Prop2 | MyExtensions+extension(String).get_Prop2 | +| extensions.cs:84:9:84:40 | call to extension accessor set_Prop2 | extensions.cs:9:50:9:52 | set_Prop2 | extensions.cs:9:21:9:25 | Prop2 | MyExtensions+extension(String).set_Prop2 | +| extensions.cs:85:9:85:37 | call to extension accessor get_StaticProp | extensions.cs:23:42:23:45 | get_StaticProp | extensions.cs:23:28:23:37 | StaticProp | MyExtensions+extension(Object).get_StaticProp | diff --git a/csharp/ql/test/library-tests/extension/extensions.ql b/csharp/ql/test/library-tests/extension/extensions.ql new file mode 100644 index 000000000000..03830c5851d0 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/extensions.ql @@ -0,0 +1,69 @@ +import csharp + +query predicate extensionMethodCallArgument( + ExtensionMethodCall emc, ExtensionMethod em, Parameter p, int i, Expr e +) { + em.getFile().getBaseName() = "extensions.cs" and + emc.getTarget() = em and + em.getParameter(i) = p and + emc.getArgument(i) = e +} + +query predicate extensionMethodCalls( + ExtensionMethodCall emc, ExtensionMethod em, Type t, string type +) { + em.getFile().getBaseName() = "extensions.cs" and + emc.getTarget() = em and + em.getDeclaringType() = t and + em.getFullyQualifiedNameDebug() = type +} + +query predicate extensionParameter( + ExtensionMethod em, Parameter p, int i, string type, Parameter unbound +) { + em.getFile().getBaseName() = "extensions.cs" and + p = em.getParameter(i) and + type = p.getType().toStringWithTypes() and + unbound = p.getUnboundDeclaration() +} + +query predicate extensionOperatorCallArgument( + ExtensionOperator op, ExtensionOperatorCall opc, Parameter p, int pos, Expr e +) { + opc.getTarget() = op and + op.getFile().getBaseName() = "extensions.cs" and + p = op.getParameter(pos) and + e = opc.getArgument(pos) +} + +query predicate extensionOperatorCalls( + ExtensionOperatorCall opc, ExtensionOperator op, Type t, string type +) { + op.getFile().getBaseName() = "extensions.cs" and + opc.getTarget() = op and + op.getDeclaringType() = t and + op.getFullyQualifiedNameDebug() = type +} + +query predicate extensionProperty(ExtensionProperty p, Type t) { + p.getFile().getBaseName() = "extensions.cs" and + p.getDeclaringType() = t +} + +query predicate extensionPropertyCall( + ExtensionPropertyCall pc, ExtensionProperty p, Type t, string type +) { + p.getFile().getBaseName() = "extensions.cs" and + pc.getProperty() = p and + p.getDeclaringType() = t and + p.getFullyQualifiedNameDebug() = type +} + +query predicate extensionAccessorCall( + MethodCall m, ExtensionAccessor a, ExtensionProperty p, string type +) { + p.getFile().getBaseName() = "extensions.cs" and + (a.(Getter).getDeclaration() = p or a.(Setter).getDeclaration() = p) and + m.getTargetAccessor() = a and + a.getFullyQualifiedNameDebug() = type +} diff --git a/csharp/ql/test/library-tests/extension/options b/csharp/ql/test/library-tests/extension/options new file mode 100644 index 000000000000..77b22963f5c8 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/options @@ -0,0 +1,2 @@ +semmle-extractor-options: /nostdlib /noconfig +semmle-extractor-options: --load-sources-from-project:${testdir}/../../resources/stubs/_frameworks/Microsoft.NETCore.App/Microsoft.NETCore.App.csproj From 6cbe000d51603b59f375e5de8a053b246e64dc79 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 16:32:01 +0100 Subject: [PATCH 323/433] C#: Add PrintAst test for extensions. --- .../library-tests/extension/PrintAst.expected | 481 ++++++++++++++++++ .../library-tests/extension/PrintAst.qlref | 1 + 2 files changed, 482 insertions(+) create mode 100644 csharp/ql/test/library-tests/extension/PrintAst.expected create mode 100644 csharp/ql/test/library-tests/extension/PrintAst.qlref diff --git a/csharp/ql/test/library-tests/extension/PrintAst.expected b/csharp/ql/test/library-tests/extension/PrintAst.expected new file mode 100644 index 000000000000..5016665c08b2 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/PrintAst.expected @@ -0,0 +1,481 @@ +extensionTypes.cs: +# 4| [Class] MyExtensionTypes +# 6| 4: [ExtensionType] extension(String) +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +#-----| 0: (Attributes) +# 6| 1: [DefaultAttribute] [NotNull(...)] +# 6| 0: [TypeMention] NotNullAttribute +# 8| 4: [ExtensionMethod] M11 +# 8| -1: [TypeMention] Void +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 8| 4: [BlockStmt] {...} +# 10| 5: [ExtensionType] extension(Int32) +#-----| 2: (Parameters) +# 10| 0: [Parameter] i1 +# 10| -1: [TypeMention] int +# 12| 4: [ExtensionMethod] M21 +# 12| -1: [TypeMention] Void +#-----| 2: (Parameters) +# 10| 0: [Parameter] i1 +# 10| -1: [TypeMention] int +# 12| 4: [BlockStmt] {...} +# 14| 6: [ExtensionType] extension(Int32) +#-----| 2: (Parameters) +# 14| 0: [Parameter] i2 +# 14| -1: [TypeMention] int +# 16| 4: [ExtensionMethod] M31 +# 16| -1: [TypeMention] Void +#-----| 2: (Parameters) +# 14| 0: [Parameter] i2 +# 14| -1: [TypeMention] int +# 16| 4: [BlockStmt] {...} +# 18| 7: [ExtensionType] extension(Int32) +#-----| 2: (Parameters) +# 18| 0: [Parameter] i3 +# 18| -1: [TypeMention] int +# 20| 4: [ExtensionMethod] M41 +# 20| -1: [TypeMention] Void +#-----| 2: (Parameters) +# 18| 0: [Parameter] i3 +# 18| -1: [TypeMention] int +# 20| 4: [BlockStmt] {...} +# 22| 8: [ExtensionType] extension(String) +#-----| 2: (Parameters) +# 22| 0: [Parameter] s +# 22| -1: [TypeMention] string +# 24| 4: [ExtensionMethod] M51 +# 24| -1: [TypeMention] Void +#-----| 2: (Parameters) +# 22| 0: [Parameter] s +# 22| -1: [TypeMention] string +# 24| 4: [BlockStmt] {...} +# 26| 9: [ExtensionType] extension(T1)`1 +#-----| 1: (Type parameters) +# 26| 0: [TypeParameter] T1 +#-----| 2: (Parameters) +# 26| 0: [Parameter] t1 +# 26| -1: [TypeMention] T1 +#-----| 0: (Attributes) +# 26| 1: [DefaultAttribute] [NotNullWhen(...)] +# 26| -1: [TypeMention] NotNullWhenAttribute +# 26| 0: [BoolLiteral] true +# 28| 4: [ExtensionMethod] M61`1 +# 28| -1: [TypeMention] Void +#-----| 1: (Type parameters) +# 28| 0: [TypeParameter] T2 +#-----| 2: (Parameters) +# 26| 0: [Parameter] t1 +# 26| -1: [TypeMention] T1 +# 28| 1: [Parameter] o +# 28| -1: [TypeMention] object +# 28| 2: [Parameter] t2 +# 28| -1: [TypeMention] T2 +# 28| 4: [BlockStmt] {...} +extensions.cs: +# 4| [Class] MyExtensions +# 6| 4: [ExtensionType] extension(String) +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 8| 4: [Property] Prop1 +# 8| -1: [TypeMention] bool +# 8| 3: [ExtensionCallable,Getter] get_Prop1 +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 8| 4: [GTExpr] ... > ... +# 8| 0: [PropertyCall] access to property Length +# 8| -1: [SyntheticExtensionParameterAccess] access to extension synthetic parameter s +# 8| 1: [IntLiteral] 0 +# 9| 5: [Property] Prop2 +# 9| -1: [TypeMention] bool +# 9| 3: [ExtensionCallable,Getter] get_Prop2 +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 9| 4: [BlockStmt] {...} +# 9| 0: [ReturnStmt] return ...; +# 9| 0: [BoolLiteral] true +# 9| 4: [ExtensionCallable,Setter] set_Prop2 +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 9| 1: [Parameter] value +# 9| 4: [BlockStmt] {...} +# 10| 6: [Property] StaticProp1 +# 10| -1: [TypeMention] bool +# 10| 3: [ExtensionCallable,Getter] get_StaticProp1 +# 10| 4: [BlockStmt] {...} +# 10| 0: [ReturnStmt] return ...; +# 10| 0: [BoolLiteral] false +# 11| 7: [ExtensionMethod] M1 +# 11| -1: [TypeMention] bool +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 11| 4: [IsExpr] ... is ... +# 11| 0: [SyntheticExtensionParameterAccess] access to extension synthetic parameter s +# 11| 1: [NotPatternExpr] not ... +# 11| 0: [ConstantPatternExpr,NullLiteral] null +# 12| 8: [ExtensionMethod] M2 +# 12| -1: [TypeMention] string +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 12| 1: [Parameter] other +# 12| -1: [TypeMention] string +# 12| 4: [BlockStmt] {...} +# 12| 0: [ReturnStmt] return ...; +# 12| 0: [AddExpr] ... + ... +# 12| 0: [SyntheticExtensionParameterAccess] access to extension synthetic parameter s +# 12| 1: [ParameterAccess] access to parameter other +# 13| 9: [ExtensionMethod] StaticM1 +# 13| -1: [TypeMention] int +# 13| 4: [BlockStmt] {...} +# 13| 0: [ReturnStmt] return ...; +# 13| 0: [IntLiteral] 0 +# 14| 10: [ExtensionMethod] StaticM2 +# 14| -1: [TypeMention] int +#-----| 2: (Parameters) +# 14| 0: [Parameter] x +# 14| -1: [TypeMention] string +# 14| 4: [BlockStmt] {...} +# 14| 0: [ReturnStmt] return ...; +# 14| 0: [PropertyCall] access to property Length +# 14| -1: [ParameterAccess] access to parameter x +# 15| 11: [ExtensionCallable,MulOperator] * +# 15| -1: [TypeMention] string +#-----| 2: (Parameters) +# 15| 0: [Parameter] a +# 15| -1: [TypeMention] int +# 15| 1: [Parameter] b +# 15| -1: [TypeMention] string +# 15| 4: [BlockStmt] {...} +# 15| 0: [ReturnStmt] return ...; +# 15| 0: [StringLiteralUtf16] "" +# 16| 14: [ExtensionMethod] StringGenericM1`1 +# 16| -1: [TypeMention] T +#-----| 1: (Type parameters) +# 16| 0: [TypeParameter] T +#-----| 2: (Parameters) +# 6| 0: [Parameter] s +# 6| -1: [TypeMention] string +# 16| 1: [Parameter] t +# 16| -1: [TypeMention] T +# 16| 2: [Parameter] o +# 16| -1: [TypeMention] object +# 16| 4: [BlockStmt] {...} +# 16| 0: [ReturnStmt] return ...; +# 16| 0: [ParameterAccess] access to parameter t +# 19| 5: [ExtensionType] extension(Object) +# 21| 4: [ExtensionMethod] StaticObjectM1 +# 21| -1: [TypeMention] int +# 21| 4: [BlockStmt] {...} +# 21| 0: [ReturnStmt] return ...; +# 21| 0: [IntLiteral] 0 +# 22| 5: [ExtensionMethod] StaticObjectM2 +# 22| -1: [TypeMention] int +#-----| 2: (Parameters) +# 22| 0: [Parameter] s +# 22| -1: [TypeMention] string +# 22| 4: [BlockStmt] {...} +# 22| 0: [ReturnStmt] return ...; +# 22| 0: [PropertyCall] access to property Length +# 22| -1: [ParameterAccess] access to parameter s +# 23| 6: [Property] StaticProp +# 23| -1: [TypeMention] bool +# 23| 3: [ExtensionCallable,Getter] get_StaticProp +# 23| 4: [BoolLiteral] true +# 26| 8: [ExtensionType] extension(T)`1 +#-----| 1: (Type parameters) +# 26| 0: [TypeParameter] T +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 28| 4: [Property] GenericProp1 +# 28| -1: [TypeMention] bool +# 28| 3: [ExtensionCallable,Getter] get_GenericProp1 +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 28| 4: [IsExpr] ... is ... +# 28| 0: [SyntheticExtensionParameterAccess] access to extension synthetic parameter t +# 28| 1: [NotPatternExpr] not ... +# 28| 0: [ConstantPatternExpr,NullLiteral] null +# 29| 5: [Property] GenericProp2 +# 29| -1: [TypeMention] bool +# 29| 3: [ExtensionCallable,Getter] get_GenericProp2 +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 29| 4: [BlockStmt] {...} +# 29| 0: [ReturnStmt] return ...; +# 29| 0: [BoolLiteral] true +# 29| 4: [ExtensionCallable,Setter] set_GenericProp2 +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 29| 1: [Parameter] value +# 29| 4: [BlockStmt] {...} +# 30| 6: [ExtensionMethod] GenericM1 +# 30| -1: [TypeMention] bool +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 30| 4: [IsExpr] ... is ... +# 30| 0: [SyntheticExtensionParameterAccess] access to extension synthetic parameter t +# 30| 1: [NotPatternExpr] not ... +# 30| 0: [ConstantPatternExpr,NullLiteral] null +# 31| 7: [ExtensionMethod] GenericM2`1 +# 31| -1: [TypeMention] Void +#-----| 1: (Type parameters) +# 31| 0: [TypeParameter] S +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 31| 1: [Parameter] other +# 31| -1: [TypeMention] S +# 31| 4: [BlockStmt] {...} +# 32| 8: [ExtensionMethod] GenericStaticM1 +# 32| -1: [TypeMention] Void +#-----| 2: (Parameters) +# 26| 0: [Parameter] t +# 26| -1: [TypeMention] T +# 32| 4: [BlockStmt] {...} +# 33| 9: [ExtensionMethod] GenericStaticM2`1 +# 33| -1: [TypeMention] Void +#-----| 1: (Type parameters) +# 33| 0: [TypeParameter] S +#-----| 2: (Parameters) +# 33| 0: [Parameter] other +# 33| -1: [TypeMention] S +# 33| 4: [BlockStmt] {...} +# 34| 10: [AddOperator,ExtensionCallable] + +# 34| -1: [TypeMention] T +#-----| 2: (Parameters) +# 34| 0: [Parameter] a +# 34| -1: [TypeMention] T +# 34| 1: [Parameter] b +# 34| -1: [TypeMention] T +# 34| 4: [BlockStmt] {...} +# 34| 0: [ReturnStmt] return ...; +# 34| 0: [NullLiteral] null +# 38| [Class] ClassicExtensions +# 40| 4: [ExtensionMethod] M3 +# 40| -1: [TypeMention] bool +#-----| 2: (Parameters) +# 40| 0: [Parameter] s +# 40| -1: [TypeMention] string +# 40| 4: [IsExpr] ... is ... +# 40| 0: [ParameterAccess] access to parameter s +# 40| 1: [NotPatternExpr] not ... +# 40| 0: [ConstantPatternExpr,NullLiteral] null +# 43| [Class] C +# 45| 6: [Method] CallingExtensions +# 45| -1: [TypeMention] Void +# 46| 4: [BlockStmt] {...} +# 47| 0: [LocalVariableDeclStmt] ... ...; +# 47| 0: [LocalVariableDeclAndInitExpr] String s = ... +# 47| -1: [TypeMention] string +# 47| 0: [LocalVariableAccess] access to local variable s +# 47| 1: [StringLiteralUtf16] "Hello World." +# 50| 1: [LocalVariableDeclStmt] ... ...; +# 50| 0: [LocalVariableDeclAndInitExpr] Boolean x11 = ... +# 50| -1: [TypeMention] bool +# 50| 0: [LocalVariableAccess] access to local variable x11 +# 50| 1: [ExtensionPropertyCall] access to property Prop1 +# 50| -1: [LocalVariableAccess] access to local variable s +# 51| 2: [LocalVariableDeclStmt] ... ...; +# 51| 0: [LocalVariableDeclAndInitExpr] Boolean x12 = ... +# 51| -1: [TypeMention] bool +# 51| 0: [LocalVariableAccess] access to local variable x12 +# 51| 1: [ExtensionPropertyCall] access to property Prop2 +# 51| -1: [LocalVariableAccess] access to local variable s +# 52| 3: [ExprStmt] ...; +# 52| 0: [AssignExpr] ... = ... +# 52| 0: [ExtensionPropertyCall] access to property Prop2 +# 52| -1: [LocalVariableAccess] access to local variable s +# 52| 1: [BoolLiteral] true +# 53| 4: [LocalVariableDeclStmt] ... ...; +# 53| 0: [LocalVariableDeclAndInitExpr] Boolean x13 = ... +# 53| -1: [TypeMention] bool +# 53| 0: [LocalVariableAccess] access to local variable x13 +# 53| 1: [ExtensionPropertyCall] access to property StaticProp1 +# 53| -1: [TypeAccess] access to type String +# 53| 0: [TypeMention] string +# 54| 5: [LocalVariableDeclStmt] ... ...; +# 54| 0: [LocalVariableDeclAndInitExpr] Boolean x14 = ... +# 54| -1: [TypeMention] bool +# 54| 0: [LocalVariableAccess] access to local variable x14 +# 54| 1: [ExtensionPropertyCall] access to property StaticProp +# 54| -1: [TypeAccess] access to type Object +# 54| 0: [TypeMention] object +# 57| 6: [LocalVariableDeclStmt] ... ...; +# 57| 0: [LocalVariableDeclAndInitExpr] Boolean x21 = ... +# 57| -1: [TypeMention] bool +# 57| 0: [LocalVariableAccess] access to local variable x21 +# 57| 1: [MethodCall] call to method M1 +# 57| -1: [LocalVariableAccess] access to local variable s +# 58| 7: [LocalVariableDeclStmt] ... ...; +# 58| 0: [LocalVariableDeclAndInitExpr] String x22 = ... +# 58| -1: [TypeMention] string +# 58| 0: [LocalVariableAccess] access to local variable x22 +# 58| 1: [MethodCall] call to method M2 +# 58| -1: [LocalVariableAccess] access to local variable s +# 58| 0: [StringLiteralUtf16] "!!!" +# 59| 8: [LocalVariableDeclStmt] ... ...; +# 59| 0: [LocalVariableDeclAndInitExpr] Int32 x23 = ... +# 59| -1: [TypeMention] int +# 59| 0: [LocalVariableAccess] access to local variable x23 +# 59| 1: [MethodCall] call to method StaticM1 +# 59| -1: [TypeAccess] access to type String +# 59| 0: [TypeMention] string +# 60| 9: [LocalVariableDeclStmt] ... ...; +# 60| 0: [LocalVariableDeclAndInitExpr] Int32 x24 = ... +# 60| -1: [TypeMention] int +# 60| 0: [LocalVariableAccess] access to local variable x24 +# 60| 1: [MethodCall] call to method StaticM2 +# 60| -1: [TypeAccess] access to type String +# 60| 0: [TypeMention] string +# 60| 0: [LocalVariableAccess] access to local variable s +# 61| 10: [LocalVariableDeclStmt] ... ...; +# 61| 0: [LocalVariableDeclAndInitExpr] Int32 x25 = ... +# 61| -1: [TypeMention] int +# 61| 0: [LocalVariableAccess] access to local variable x25 +# 61| 1: [MethodCall] call to method StaticObjectM1 +# 61| -1: [TypeAccess] access to type Object +# 61| 0: [TypeMention] object +# 62| 11: [LocalVariableDeclStmt] ... ...; +# 62| 0: [LocalVariableDeclAndInitExpr] Int32 x26 = ... +# 62| -1: [TypeMention] int +# 62| 0: [LocalVariableAccess] access to local variable x26 +# 62| 1: [MethodCall] call to method StaticObjectM2 +# 62| -1: [TypeAccess] access to type Object +# 62| 0: [TypeMention] object +# 62| 0: [LocalVariableAccess] access to local variable s +# 65| 12: [LocalVariableDeclStmt] ... ...; +# 65| 0: [LocalVariableDeclAndInitExpr] String x30 = ... +# 65| -1: [TypeMention] string +# 65| 0: [LocalVariableAccess] access to local variable x30 +# 65| 1: [ExtensionOperatorCall] call to operator * +# 65| 0: [IntLiteral] 3 +# 65| 1: [LocalVariableAccess] access to local variable s +# 68| 13: [LocalVariableDeclStmt] ... ...; +# 68| 0: [LocalVariableDeclAndInitExpr] Boolean y = ... +# 68| -1: [TypeMention] bool +# 68| 0: [LocalVariableAccess] access to local variable y +# 68| 1: [MethodCall] call to method M3 +# 68| -1: [LocalVariableAccess] access to local variable s +# 71| 14: [ExprStmt] ...; +# 71| 0: [MethodCall] call to method M1 +# 71| -1: [TypeAccess] access to type MyExtensions +# 71| 0: [TypeMention] MyExtensions +# 71| 0: [LocalVariableAccess] access to local variable s +# 72| 15: [ExprStmt] ...; +# 72| 0: [MethodCall] call to method M2 +# 72| -1: [TypeAccess] access to type MyExtensions +# 72| 0: [TypeMention] MyExtensions +# 72| 0: [LocalVariableAccess] access to local variable s +# 72| 1: [StringLiteralUtf16] "!!!" +# 73| 16: [ExprStmt] ...; +# 73| 0: [MethodCall] call to method StaticM1 +# 73| -1: [TypeAccess] access to type MyExtensions +# 73| 0: [TypeMention] MyExtensions +# 74| 17: [ExprStmt] ...; +# 74| 0: [MethodCall] call to method StaticM2 +# 74| -1: [TypeAccess] access to type MyExtensions +# 74| 0: [TypeMention] MyExtensions +# 74| 0: [LocalVariableAccess] access to local variable s +# 75| 18: [ExprStmt] ...; +# 75| 0: [MethodCall] call to method StaticObjectM1 +# 75| -1: [TypeAccess] access to type MyExtensions +# 75| 0: [TypeMention] MyExtensions +# 76| 19: [ExprStmt] ...; +# 76| 0: [MethodCall] call to method StaticObjectM2 +# 76| -1: [TypeAccess] access to type MyExtensions +# 76| 0: [TypeMention] MyExtensions +# 76| 0: [LocalVariableAccess] access to local variable s +# 79| 20: [ExprStmt] ...; +# 79| 0: [ExtensionOperatorCall] call to operator * +# 79| -1: [TypeAccess] access to type MyExtensions +# 79| 0: [TypeMention] MyExtensions +# 79| 0: [IntLiteral] 3 +# 79| 1: [LocalVariableAccess] access to local variable s +# 82| 21: [ExprStmt] ...; +# 82| 0: [MethodCall] call to extension accessor get_Prop1 +# 82| -1: [TypeAccess] access to type MyExtensions +# 82| 0: [TypeMention] MyExtensions +# 82| 0: [LocalVariableAccess] access to local variable s +# 83| 22: [ExprStmt] ...; +# 83| 0: [MethodCall] call to extension accessor get_Prop2 +# 83| -1: [TypeAccess] access to type MyExtensions +# 83| 0: [TypeMention] MyExtensions +# 83| 0: [LocalVariableAccess] access to local variable s +# 84| 23: [ExprStmt] ...; +# 84| 0: [MethodCall] call to extension accessor set_Prop2 +# 84| -1: [TypeAccess] access to type MyExtensions +# 84| 0: [TypeMention] MyExtensions +# 84| 0: [LocalVariableAccess] access to local variable s +# 84| 1: [BoolLiteral] false +# 85| 24: [ExprStmt] ...; +# 85| 0: [MethodCall] call to extension accessor get_StaticProp +# 85| -1: [TypeAccess] access to type MyExtensions +# 85| 0: [TypeMention] MyExtensions +# 88| 7: [Method] CallingGenericExtensions +# 88| -1: [TypeMention] Void +# 89| 4: [BlockStmt] {...} +# 90| 0: [LocalVariableDeclStmt] ... ...; +# 90| 0: [LocalVariableDeclAndInitExpr] String s = ... +# 90| -1: [TypeMention] string +# 90| 0: [LocalVariableAccess] access to local variable s +# 90| 1: [StringLiteralUtf16] "Hello Generic World." +# 91| 1: [LocalVariableDeclStmt] ... ...; +# 91| 0: [LocalVariableDeclAndInitExpr] Object o = ... +# 91| -1: [TypeMention] object +# 91| 0: [LocalVariableAccess] access to local variable o +# 91| 1: [ObjectCreation] object creation of type Object +# 91| 0: [TypeMention] object +# 94| 2: [ExprStmt] ...; +# 94| 0: [MethodCall] call to method GenericM1 +# 94| -1: [LocalVariableAccess] access to local variable o +# 95| 3: [ExprStmt] ...; +# 95| 0: [MethodCall] call to method GenericM1 +# 95| -1: [LocalVariableAccess] access to local variable s +# 98| 4: [ExprStmt] ...; +# 98| 0: [MethodCall] call to method GenericM1 +# 98| -1: [TypeAccess] access to type MyExtensions +# 98| 0: [TypeMention] MyExtensions +# 98| 0: [LocalVariableAccess] access to local variable o +# 99| 5: [ExprStmt] ...; +# 99| 0: [MethodCall] call to method GenericM1 +# 99| -1: [TypeAccess] access to type MyExtensions +# 99| 0: [TypeMention] MyExtensions +# 99| 0: [LocalVariableAccess] access to local variable s +# 101| 6: [ExprStmt] ...; +# 101| 0: [MethodCall] call to method GenericM2 +# 101| -1: [LocalVariableAccess] access to local variable o +# 101| 0: [IntLiteral] 42 +# 102| 7: [ExprStmt] ...; +# 102| 0: [MethodCall] call to method GenericM2 +# 102| -1: [TypeAccess] access to type MyExtensions +# 102| 0: [TypeMention] MyExtensions +# 102| 0: [LocalVariableAccess] access to local variable o +# 102| 1: [IntLiteral] 42 +# 104| 8: [ExprStmt] ...; +# 104| 0: [MethodCall] call to method StringGenericM1 +# 104| -1: [LocalVariableAccess] access to local variable s +# 104| 0: [IntLiteral] 7 +# 104| 1: [ObjectCreation] object creation of type Object +# 104| 0: [TypeMention] object +# 105| 9: [ExprStmt] ...; +# 105| 0: [MethodCall] call to method StringGenericM1 +# 105| -1: [TypeAccess] access to type MyExtensions +# 105| 0: [TypeMention] MyExtensions +# 105| 0: [LocalVariableAccess] access to local variable s +# 105| 1: [StringLiteralUtf16] "test" +# 105| 2: [ObjectCreation] object creation of type Object +# 105| 0: [TypeMention] object diff --git a/csharp/ql/test/library-tests/extension/PrintAst.qlref b/csharp/ql/test/library-tests/extension/PrintAst.qlref new file mode 100644 index 000000000000..f867dd01f9f8 --- /dev/null +++ b/csharp/ql/test/library-tests/extension/PrintAst.qlref @@ -0,0 +1 @@ +shared/PrintAst.ql \ No newline at end of file From 4b6a53b5771b5f2dac623e73d7b35232cafcfed1 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 16:33:36 +0100 Subject: [PATCH 324/433] C#: Add extension data flow test. --- .../extensions/ExtensionFlow.expected | 502 ++++++++++++++++++ .../dataflow/extensions/ExtensionFlow.ql | 12 + .../dataflow/extensions/extensions.cs | 243 +++++++++ 3 files changed, 757 insertions(+) create mode 100644 csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.expected create mode 100644 csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.ql create mode 100644 csharp/ql/test/library-tests/dataflow/extensions/extensions.cs diff --git a/csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.expected b/csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.expected new file mode 100644 index 000000000000..35a30ac1ffc9 --- /dev/null +++ b/csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.expected @@ -0,0 +1,502 @@ +models +edges +| extensions.cs:5:22:5:24 | obj : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | provenance | | +| extensions.cs:5:22:5:24 | obj : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | provenance | | +| extensions.cs:5:22:5:24 | obj : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | provenance | | +| extensions.cs:5:22:5:24 | obj : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | provenance | | +| extensions.cs:5:22:5:24 | obj : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | provenance | | +| extensions.cs:5:22:5:24 | obj : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | provenance | | +| extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:108:18:108:26 | access to property Prop1 : B | provenance | | +| extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:108:18:108:26 | access to property Prop1 : B | provenance | | +| extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | provenance | | +| extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | provenance | | +| extensions.cs:13:13:13:15 | value : B | extensions.cs:15:24:15:28 | access to parameter value | provenance | | +| extensions.cs:13:13:13:15 | value : B | extensions.cs:15:24:15:28 | access to parameter value | provenance | | +| extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:194:18:194:35 | access to property StaticProp1 : B | provenance | | +| extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:194:18:194:35 | access to property StaticProp1 : B | provenance | | +| extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | provenance | | +| extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | provenance | | +| extensions.cs:38:13:38:15 | value : B | extensions.cs:40:24:40:28 | access to parameter value | provenance | | +| extensions.cs:38:13:38:15 | value : B | extensions.cs:40:24:40:28 | access to parameter value | provenance | | +| extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:127:18:127:25 | call to method M1 : B | provenance | | +| extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:127:18:127:25 | call to method M1 : B | provenance | | +| extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:130:18:130:37 | call to method M1 : B | provenance | | +| extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:130:18:130:37 | call to method M1 : B | provenance | | +| extensions.cs:59:48:59:48 | a : B | extensions.cs:61:20:61:20 | access to parameter a | provenance | | +| extensions.cs:59:48:59:48 | a : B | extensions.cs:61:20:61:20 | access to parameter a | provenance | | +| extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:185:18:185:24 | call to operator - : B | provenance | | +| extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:185:18:185:24 | call to operator - : B | provenance | | +| extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:188:18:188:52 | call to operator - : B | provenance | | +| extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:188:18:188:52 | call to operator - : B | provenance | | +| extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | provenance | | +| extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | provenance | | +| extensions.cs:76:17:76:17 | b : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | provenance | | +| extensions.cs:76:17:76:17 | b : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | provenance | | +| extensions.cs:89:20:89:20 | t : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | provenance | | +| extensions.cs:89:20:89:20 | t : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | provenance | | +| extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | provenance | | +| extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | provenance | | +| extensions.cs:108:13:108:14 | access to local variable b1 : B | extensions.cs:109:14:109:15 | access to local variable b1 | provenance | | +| extensions.cs:108:13:108:14 | access to local variable b1 : B | extensions.cs:109:14:109:15 | access to local variable b1 | provenance | | +| extensions.cs:108:18:108:26 | access to property Prop1 : B | extensions.cs:108:13:108:14 | access to local variable b1 : B | provenance | | +| extensions.cs:108:18:108:26 | access to property Prop1 : B | extensions.cs:108:13:108:14 | access to local variable b1 : B | provenance | | +| extensions.cs:111:13:111:14 | access to local variable b2 : B | extensions.cs:112:14:112:15 | access to local variable b2 | provenance | | +| extensions.cs:111:13:111:14 | access to local variable b2 : B | extensions.cs:112:14:112:15 | access to local variable b2 | provenance | | +| extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | extensions.cs:111:13:111:14 | access to local variable b2 : B | provenance | | +| extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | extensions.cs:111:13:111:14 | access to local variable b2 : B | provenance | | +| extensions.cs:118:21:118:32 | call to method Source : B | extensions.cs:13:13:13:15 | value : B | provenance | | +| extensions.cs:118:21:118:32 | call to method Source : B | extensions.cs:13:13:13:15 | value : B | provenance | | +| extensions.cs:120:13:120:13 | access to local variable b : B | extensions.cs:121:37:121:37 | access to local variable b : B | provenance | | +| extensions.cs:120:13:120:13 | access to local variable b : B | extensions.cs:121:37:121:37 | access to local variable b : B | provenance | | +| extensions.cs:120:17:120:30 | call to method Source : B | extensions.cs:120:13:120:13 | access to local variable b : B | provenance | | +| extensions.cs:120:17:120:30 | call to method Source : B | extensions.cs:120:13:120:13 | access to local variable b : B | provenance | | +| extensions.cs:121:37:121:37 | access to local variable b : B | extensions.cs:13:13:13:15 | value : B | provenance | | +| extensions.cs:121:37:121:37 | access to local variable b : B | extensions.cs:13:13:13:15 | value : B | provenance | | +| extensions.cs:127:13:127:14 | access to local variable b1 : B | extensions.cs:128:14:128:15 | access to local variable b1 | provenance | | +| extensions.cs:127:13:127:14 | access to local variable b1 : B | extensions.cs:128:14:128:15 | access to local variable b1 | provenance | | +| extensions.cs:127:18:127:25 | call to method M1 : B | extensions.cs:127:13:127:14 | access to local variable b1 : B | provenance | | +| extensions.cs:127:18:127:25 | call to method M1 : B | extensions.cs:127:13:127:14 | access to local variable b1 : B | provenance | | +| extensions.cs:130:13:130:14 | access to local variable b2 : B | extensions.cs:131:14:131:15 | access to local variable b2 | provenance | | +| extensions.cs:130:13:130:14 | access to local variable b2 : B | extensions.cs:131:14:131:15 | access to local variable b2 | provenance | | +| extensions.cs:130:18:130:37 | call to method M1 : B | extensions.cs:130:13:130:14 | access to local variable b2 : B | provenance | | +| extensions.cs:130:18:130:37 | call to method M1 : B | extensions.cs:130:13:130:14 | access to local variable b2 : B | provenance | | +| extensions.cs:136:13:136:14 | access to local variable b1 : B | extensions.cs:137:9:137:10 | access to local variable b1 : B | provenance | | +| extensions.cs:136:13:136:14 | access to local variable b1 : B | extensions.cs:137:9:137:10 | access to local variable b1 : B | provenance | | +| extensions.cs:136:18:136:29 | call to method Source : B | extensions.cs:136:13:136:14 | access to local variable b1 : B | provenance | | +| extensions.cs:136:18:136:29 | call to method Source : B | extensions.cs:136:13:136:14 | access to local variable b1 : B | provenance | | +| extensions.cs:137:9:137:10 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:137:9:137:10 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:139:13:139:14 | access to local variable b2 : B | extensions.cs:140:25:140:26 | access to local variable b2 : B | provenance | | +| extensions.cs:139:13:139:14 | access to local variable b2 : B | extensions.cs:140:25:140:26 | access to local variable b2 : B | provenance | | +| extensions.cs:139:18:139:31 | call to method Source : B | extensions.cs:139:13:139:14 | access to local variable b2 : B | provenance | | +| extensions.cs:139:18:139:31 | call to method Source : B | extensions.cs:139:13:139:14 | access to local variable b2 : B | provenance | | +| extensions.cs:140:25:140:26 | access to local variable b2 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:140:25:140:26 | access to local variable b2 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:145:13:145:14 | access to local variable b1 : B | extensions.cs:146:18:146:19 | access to local variable b1 : B | provenance | | +| extensions.cs:145:13:145:14 | access to local variable b1 : B | extensions.cs:146:18:146:19 | access to local variable b1 : B | provenance | | +| extensions.cs:145:13:145:14 | access to local variable b1 : B | extensions.cs:149:34:149:35 | access to local variable b1 : B | provenance | | +| extensions.cs:145:13:145:14 | access to local variable b1 : B | extensions.cs:149:34:149:35 | access to local variable b1 : B | provenance | | +| extensions.cs:145:18:145:29 | call to method Source : B | extensions.cs:145:13:145:14 | access to local variable b1 : B | provenance | | +| extensions.cs:145:18:145:29 | call to method Source : B | extensions.cs:145:13:145:14 | access to local variable b1 : B | provenance | | +| extensions.cs:146:13:146:14 | access to local variable b2 : B | extensions.cs:147:14:147:15 | access to local variable b2 | provenance | | +| extensions.cs:146:13:146:14 | access to local variable b2 : B | extensions.cs:147:14:147:15 | access to local variable b2 | provenance | | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:146:18:146:24 | call to method B1 : B | provenance | | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:146:18:146:24 | call to method B1 : B | provenance | | +| extensions.cs:146:18:146:24 | call to method B1 : B | extensions.cs:146:13:146:14 | access to local variable b2 : B | provenance | | +| extensions.cs:146:18:146:24 | call to method B1 : B | extensions.cs:146:13:146:14 | access to local variable b2 : B | provenance | | +| extensions.cs:149:13:149:14 | access to local variable b3 : B | extensions.cs:150:14:150:15 | access to local variable b3 | provenance | | +| extensions.cs:149:13:149:14 | access to local variable b3 : B | extensions.cs:150:14:150:15 | access to local variable b3 | provenance | | +| extensions.cs:149:18:149:36 | call to method B1 : B | extensions.cs:149:13:149:14 | access to local variable b3 : B | provenance | | +| extensions.cs:149:18:149:36 | call to method B1 : B | extensions.cs:149:13:149:14 | access to local variable b3 : B | provenance | | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:149:18:149:36 | call to method B1 : B | provenance | | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:149:18:149:36 | call to method B1 : B | provenance | | +| extensions.cs:155:13:155:14 | access to local variable b1 : B | extensions.cs:156:18:156:19 | access to local variable b1 : B | provenance | | +| extensions.cs:155:13:155:14 | access to local variable b1 : B | extensions.cs:156:18:156:19 | access to local variable b1 : B | provenance | | +| extensions.cs:155:18:155:29 | call to method Source : B | extensions.cs:155:13:155:14 | access to local variable b1 : B | provenance | | +| extensions.cs:155:18:155:29 | call to method Source : B | extensions.cs:155:13:155:14 | access to local variable b1 : B | provenance | | +| extensions.cs:156:18:156:19 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:156:18:156:19 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:158:13:158:14 | access to local variable b3 : B | extensions.cs:159:41:159:42 | access to local variable b3 : B | provenance | | +| extensions.cs:158:13:158:14 | access to local variable b3 : B | extensions.cs:159:41:159:42 | access to local variable b3 : B | provenance | | +| extensions.cs:158:18:158:31 | call to method Source : B | extensions.cs:158:13:158:14 | access to local variable b3 : B | provenance | | +| extensions.cs:158:18:158:31 | call to method Source : B | extensions.cs:158:13:158:14 | access to local variable b3 : B | provenance | | +| extensions.cs:159:41:159:42 | access to local variable b3 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:159:41:159:42 | access to local variable b3 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:164:13:164:14 | access to local variable b1 : B | extensions.cs:165:9:165:10 | access to local variable b1 : B | provenance | | +| extensions.cs:164:13:164:14 | access to local variable b1 : B | extensions.cs:165:9:165:10 | access to local variable b1 : B | provenance | | +| extensions.cs:164:18:164:29 | call to method Source : B | extensions.cs:164:13:164:14 | access to local variable b1 : B | provenance | | +| extensions.cs:164:18:164:29 | call to method Source : B | extensions.cs:164:13:164:14 | access to local variable b1 : B | provenance | | +| extensions.cs:165:9:165:10 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:165:9:165:10 | access to local variable b1 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:167:13:167:14 | access to local variable b2 : B | extensions.cs:168:32:168:33 | access to local variable b2 : B | provenance | | +| extensions.cs:167:13:167:14 | access to local variable b2 : B | extensions.cs:168:32:168:33 | access to local variable b2 : B | provenance | | +| extensions.cs:167:18:167:31 | call to method Source : B | extensions.cs:167:13:167:14 | access to local variable b2 : B | provenance | | +| extensions.cs:167:18:167:31 | call to method Source : B | extensions.cs:167:13:167:14 | access to local variable b2 : B | provenance | | +| extensions.cs:168:32:168:33 | access to local variable b2 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:168:32:168:33 | access to local variable b2 : B | extensions.cs:5:22:5:24 | obj : B | provenance | | +| extensions.cs:173:13:173:14 | access to local variable b1 : B | extensions.cs:175:18:175:19 | access to local variable b1 : B | provenance | | +| extensions.cs:173:13:173:14 | access to local variable b1 : B | extensions.cs:175:18:175:19 | access to local variable b1 : B | provenance | | +| extensions.cs:173:18:173:29 | call to method Source : B | extensions.cs:173:13:173:14 | access to local variable b1 : B | provenance | | +| extensions.cs:173:18:173:29 | call to method Source : B | extensions.cs:173:13:173:14 | access to local variable b1 : B | provenance | | +| extensions.cs:175:18:175:19 | access to local variable b1 : B | extensions.cs:59:48:59:48 | a : B | provenance | | +| extensions.cs:175:18:175:19 | access to local variable b1 : B | extensions.cs:59:48:59:48 | a : B | provenance | | +| extensions.cs:177:13:177:14 | access to local variable b4 : B | extensions.cs:178:43:178:44 | access to local variable b4 : B | provenance | | +| extensions.cs:177:13:177:14 | access to local variable b4 : B | extensions.cs:178:43:178:44 | access to local variable b4 : B | provenance | | +| extensions.cs:177:18:177:31 | call to method Source : B | extensions.cs:177:13:177:14 | access to local variable b4 : B | provenance | | +| extensions.cs:177:18:177:31 | call to method Source : B | extensions.cs:177:13:177:14 | access to local variable b4 : B | provenance | | +| extensions.cs:178:43:178:44 | access to local variable b4 : B | extensions.cs:59:48:59:48 | a : B | provenance | | +| extensions.cs:178:43:178:44 | access to local variable b4 : B | extensions.cs:59:48:59:48 | a : B | provenance | | +| extensions.cs:185:13:185:14 | access to local variable b3 : B | extensions.cs:186:14:186:15 | access to local variable b3 | provenance | | +| extensions.cs:185:13:185:14 | access to local variable b3 : B | extensions.cs:186:14:186:15 | access to local variable b3 | provenance | | +| extensions.cs:185:18:185:24 | call to operator - : B | extensions.cs:185:13:185:14 | access to local variable b3 : B | provenance | | +| extensions.cs:185:18:185:24 | call to operator - : B | extensions.cs:185:13:185:14 | access to local variable b3 : B | provenance | | +| extensions.cs:188:13:188:14 | access to local variable b4 : B | extensions.cs:189:14:189:15 | access to local variable b4 | provenance | | +| extensions.cs:188:13:188:14 | access to local variable b4 : B | extensions.cs:189:14:189:15 | access to local variable b4 | provenance | | +| extensions.cs:188:18:188:52 | call to operator - : B | extensions.cs:188:13:188:14 | access to local variable b4 : B | provenance | | +| extensions.cs:188:18:188:52 | call to operator - : B | extensions.cs:188:13:188:14 | access to local variable b4 : B | provenance | | +| extensions.cs:194:13:194:14 | access to local variable b1 : B | extensions.cs:195:14:195:15 | access to local variable b1 | provenance | | +| extensions.cs:194:13:194:14 | access to local variable b1 : B | extensions.cs:195:14:195:15 | access to local variable b1 | provenance | | +| extensions.cs:194:18:194:35 | access to property StaticProp1 : B | extensions.cs:194:13:194:14 | access to local variable b1 : B | provenance | | +| extensions.cs:194:18:194:35 | access to property StaticProp1 : B | extensions.cs:194:13:194:14 | access to local variable b1 : B | provenance | | +| extensions.cs:197:13:197:14 | access to local variable b2 : B | extensions.cs:198:14:198:15 | access to local variable b2 | provenance | | +| extensions.cs:197:13:197:14 | access to local variable b2 : B | extensions.cs:198:14:198:15 | access to local variable b2 | provenance | | +| extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | extensions.cs:197:13:197:14 | access to local variable b2 : B | provenance | | +| extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | extensions.cs:197:13:197:14 | access to local variable b2 : B | provenance | | +| extensions.cs:203:13:203:14 | access to local variable b1 : B | extensions.cs:204:30:204:31 | access to local variable b1 : B | provenance | | +| extensions.cs:203:13:203:14 | access to local variable b1 : B | extensions.cs:204:30:204:31 | access to local variable b1 : B | provenance | | +| extensions.cs:203:18:203:30 | call to method Source : B | extensions.cs:203:13:203:14 | access to local variable b1 : B | provenance | | +| extensions.cs:203:18:203:30 | call to method Source : B | extensions.cs:203:13:203:14 | access to local variable b1 : B | provenance | | +| extensions.cs:204:30:204:31 | access to local variable b1 : B | extensions.cs:38:13:38:15 | value : B | provenance | | +| extensions.cs:204:30:204:31 | access to local variable b1 : B | extensions.cs:38:13:38:15 | value : B | provenance | | +| extensions.cs:206:13:206:14 | access to local variable b2 : B | extensions.cs:207:38:207:39 | access to local variable b2 : B | provenance | | +| extensions.cs:206:13:206:14 | access to local variable b2 : B | extensions.cs:207:38:207:39 | access to local variable b2 : B | provenance | | +| extensions.cs:206:18:206:31 | call to method Source : B | extensions.cs:206:13:206:14 | access to local variable b2 : B | provenance | | +| extensions.cs:206:18:206:31 | call to method Source : B | extensions.cs:206:13:206:14 | access to local variable b2 : B | provenance | | +| extensions.cs:207:38:207:39 | access to local variable b2 : B | extensions.cs:38:13:38:15 | value : B | provenance | | +| extensions.cs:207:38:207:39 | access to local variable b2 : B | extensions.cs:38:13:38:15 | value : B | provenance | | +| extensions.cs:212:13:212:14 | access to local variable b1 : B | extensions.cs:213:9:213:10 | access to local variable b1 : B | provenance | | +| extensions.cs:212:13:212:14 | access to local variable b1 : B | extensions.cs:213:9:213:10 | access to local variable b1 : B | provenance | | +| extensions.cs:212:18:212:30 | call to method Source : B | extensions.cs:212:13:212:14 | access to local variable b1 : B | provenance | | +| extensions.cs:212:18:212:30 | call to method Source : B | extensions.cs:212:13:212:14 | access to local variable b1 : B | provenance | | +| extensions.cs:213:9:213:10 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:213:9:213:10 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:215:13:215:14 | access to local variable b2 : B | extensions.cs:216:25:216:26 | access to local variable b2 : B | provenance | | +| extensions.cs:215:13:215:14 | access to local variable b2 : B | extensions.cs:216:25:216:26 | access to local variable b2 : B | provenance | | +| extensions.cs:215:18:215:31 | call to method Source : B | extensions.cs:215:13:215:14 | access to local variable b2 : B | provenance | | +| extensions.cs:215:18:215:31 | call to method Source : B | extensions.cs:215:13:215:14 | access to local variable b2 : B | provenance | | +| extensions.cs:216:25:216:26 | access to local variable b2 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:216:25:216:26 | access to local variable b2 : B | extensions.cs:76:17:76:17 | b : B | provenance | | +| extensions.cs:221:13:221:14 | access to local variable b1 : B | extensions.cs:222:9:222:10 | access to local variable b1 : B | provenance | | +| extensions.cs:221:13:221:14 | access to local variable b1 : B | extensions.cs:222:9:222:10 | access to local variable b1 : B | provenance | | +| extensions.cs:221:18:221:30 | call to method Source : B | extensions.cs:221:13:221:14 | access to local variable b1 : B | provenance | | +| extensions.cs:221:18:221:30 | call to method Source : B | extensions.cs:221:13:221:14 | access to local variable b1 : B | provenance | | +| extensions.cs:222:9:222:10 | access to local variable b1 : B | extensions.cs:89:20:89:20 | t : B | provenance | | +| extensions.cs:222:9:222:10 | access to local variable b1 : B | extensions.cs:89:20:89:20 | t : B | provenance | | +| extensions.cs:224:13:224:14 | access to local variable b2 : B | extensions.cs:225:32:225:33 | access to local variable b2 : B | provenance | | +| extensions.cs:224:13:224:14 | access to local variable b2 : B | extensions.cs:225:32:225:33 | access to local variable b2 : B | provenance | | +| extensions.cs:224:18:224:31 | call to method Source : B | extensions.cs:224:13:224:14 | access to local variable b2 : B | provenance | | +| extensions.cs:224:18:224:31 | call to method Source : B | extensions.cs:224:13:224:14 | access to local variable b2 : B | provenance | | +| extensions.cs:225:32:225:33 | access to local variable b2 : B | extensions.cs:89:20:89:20 | t : B | provenance | | +| extensions.cs:225:32:225:33 | access to local variable b2 : B | extensions.cs:89:20:89:20 | t : B | provenance | | +| extensions.cs:231:13:231:14 | access to local variable b1 : B | extensions.cs:232:32:232:33 | access to local variable b1 : B | provenance | | +| extensions.cs:231:13:231:14 | access to local variable b1 : B | extensions.cs:232:32:232:33 | access to local variable b1 : B | provenance | | +| extensions.cs:231:13:231:14 | access to local variable b1 : B | extensions.cs:235:46:235:47 | access to local variable b1 : B | provenance | | +| extensions.cs:231:13:231:14 | access to local variable b1 : B | extensions.cs:235:46:235:47 | access to local variable b1 : B | provenance | | +| extensions.cs:231:18:231:30 | call to method Source : B | extensions.cs:231:13:231:14 | access to local variable b1 : B | provenance | | +| extensions.cs:231:18:231:30 | call to method Source : B | extensions.cs:231:13:231:14 | access to local variable b1 : B | provenance | | +| extensions.cs:232:13:232:14 | access to local variable b2 : B | extensions.cs:233:14:233:15 | access to local variable b2 | provenance | | +| extensions.cs:232:13:232:14 | access to local variable b2 : B | extensions.cs:233:14:233:15 | access to local variable b2 | provenance | | +| extensions.cs:232:18:232:34 | call to method GenericM2 : B | extensions.cs:232:13:232:14 | access to local variable b2 : B | provenance | | +| extensions.cs:232:18:232:34 | call to method GenericM2 : B | extensions.cs:232:13:232:14 | access to local variable b2 : B | provenance | | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | provenance | | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | provenance | | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:232:18:232:34 | call to method GenericM2 : B | provenance | | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:232:18:232:34 | call to method GenericM2 : B | provenance | | +| extensions.cs:235:13:235:14 | access to local variable b3 : B | extensions.cs:236:14:236:15 | access to local variable b3 | provenance | | +| extensions.cs:235:13:235:14 | access to local variable b3 : B | extensions.cs:236:14:236:15 | access to local variable b3 | provenance | | +| extensions.cs:235:18:235:48 | call to method GenericM2 : B | extensions.cs:235:13:235:14 | access to local variable b3 : B | provenance | | +| extensions.cs:235:18:235:48 | call to method GenericM2 : B | extensions.cs:235:13:235:14 | access to local variable b3 : B | provenance | | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | provenance | | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | provenance | | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:235:18:235:48 | call to method GenericM2 : B | provenance | | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:235:18:235:48 | call to method GenericM2 : B | provenance | | +nodes +| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B | +| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B | +| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B | +| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B | +| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B | +| extensions.cs:5:22:5:24 | obj : B | semmle.label | obj : B | +| extensions.cs:11:24:11:37 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:11:24:11:37 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:13:13:13:15 | value : B | semmle.label | value : B | +| extensions.cs:13:13:13:15 | value : B | semmle.label | value : B | +| extensions.cs:15:24:15:28 | access to parameter value | semmle.label | access to parameter value | +| extensions.cs:15:24:15:28 | access to parameter value | semmle.label | access to parameter value | +| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj | +| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj | +| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj | +| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj | +| extensions.cs:36:24:36:38 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:36:24:36:38 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:38:13:38:15 | value : B | semmle.label | value : B | +| extensions.cs:38:13:38:15 | value : B | semmle.label | value : B | +| extensions.cs:40:24:40:28 | access to parameter value | semmle.label | access to parameter value | +| extensions.cs:40:24:40:28 | access to parameter value | semmle.label | access to parameter value | +| extensions.cs:46:20:46:33 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:46:20:46:33 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj | +| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | semmle.label | access to extension synthetic parameter obj | +| extensions.cs:59:48:59:48 | a : B | semmle.label | a : B | +| extensions.cs:59:48:59:48 | a : B | semmle.label | a : B | +| extensions.cs:61:20:61:20 | access to parameter a | semmle.label | access to parameter a | +| extensions.cs:61:20:61:20 | access to parameter a | semmle.label | access to parameter a | +| extensions.cs:67:20:67:33 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:67:20:67:33 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:76:17:76:17 | b : B | semmle.label | b : B | +| extensions.cs:76:17:76:17 | b : B | semmle.label | b : B | +| extensions.cs:76:17:76:17 | b : B | semmle.label | b : B | +| extensions.cs:76:17:76:17 | b : B | semmle.label | b : B | +| extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | semmle.label | access to extension synthetic parameter b : B | +| extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | semmle.label | access to extension synthetic parameter b : B | +| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | semmle.label | access to extension synthetic parameter b | +| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | semmle.label | access to extension synthetic parameter b | +| extensions.cs:89:20:89:20 | t : B | semmle.label | t : B | +| extensions.cs:89:20:89:20 | t : B | semmle.label | t : B | +| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | semmle.label | access to extension synthetic parameter t | +| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | semmle.label | access to extension synthetic parameter t | +| extensions.cs:96:33:96:37 | other : B | semmle.label | other : B | +| extensions.cs:96:33:96:37 | other : B | semmle.label | other : B | +| extensions.cs:98:20:98:24 | access to parameter other : B | semmle.label | access to parameter other : B | +| extensions.cs:98:20:98:24 | access to parameter other : B | semmle.label | access to parameter other : B | +| extensions.cs:108:13:108:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:108:13:108:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:108:18:108:26 | access to property Prop1 : B | semmle.label | access to property Prop1 : B | +| extensions.cs:108:18:108:26 | access to property Prop1 : B | semmle.label | access to property Prop1 : B | +| extensions.cs:109:14:109:15 | access to local variable b1 | semmle.label | access to local variable b1 | +| extensions.cs:109:14:109:15 | access to local variable b1 | semmle.label | access to local variable b1 | +| extensions.cs:111:13:111:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:111:13:111:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | semmle.label | call to extension accessor get_Prop1 : B | +| extensions.cs:111:18:111:44 | call to extension accessor get_Prop1 : B | semmle.label | call to extension accessor get_Prop1 : B | +| extensions.cs:112:14:112:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:112:14:112:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:118:21:118:32 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:118:21:118:32 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:120:13:120:13 | access to local variable b : B | semmle.label | access to local variable b : B | +| extensions.cs:120:13:120:13 | access to local variable b : B | semmle.label | access to local variable b : B | +| extensions.cs:120:17:120:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:120:17:120:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:121:37:121:37 | access to local variable b : B | semmle.label | access to local variable b : B | +| extensions.cs:121:37:121:37 | access to local variable b : B | semmle.label | access to local variable b : B | +| extensions.cs:127:13:127:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:127:13:127:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:127:18:127:25 | call to method M1 : B | semmle.label | call to method M1 : B | +| extensions.cs:127:18:127:25 | call to method M1 : B | semmle.label | call to method M1 : B | +| extensions.cs:128:14:128:15 | access to local variable b1 | semmle.label | access to local variable b1 | +| extensions.cs:128:14:128:15 | access to local variable b1 | semmle.label | access to local variable b1 | +| extensions.cs:130:13:130:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:130:13:130:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:130:18:130:37 | call to method M1 : B | semmle.label | call to method M1 : B | +| extensions.cs:130:18:130:37 | call to method M1 : B | semmle.label | call to method M1 : B | +| extensions.cs:131:14:131:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:131:14:131:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:136:13:136:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:136:13:136:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:136:18:136:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:136:18:136:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:137:9:137:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:137:9:137:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:139:13:139:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:139:13:139:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:139:18:139:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:139:18:139:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:140:25:140:26 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:140:25:140:26 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:145:13:145:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:145:13:145:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:145:18:145:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:145:18:145:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:146:13:146:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:146:13:146:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:146:18:146:24 | call to method B1 : B | semmle.label | call to method B1 : B | +| extensions.cs:146:18:146:24 | call to method B1 : B | semmle.label | call to method B1 : B | +| extensions.cs:147:14:147:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:147:14:147:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:149:13:149:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:149:13:149:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:149:18:149:36 | call to method B1 : B | semmle.label | call to method B1 : B | +| extensions.cs:149:18:149:36 | call to method B1 : B | semmle.label | call to method B1 : B | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:150:14:150:15 | access to local variable b3 | semmle.label | access to local variable b3 | +| extensions.cs:150:14:150:15 | access to local variable b3 | semmle.label | access to local variable b3 | +| extensions.cs:155:13:155:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:155:13:155:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:155:18:155:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:155:18:155:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:156:18:156:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:156:18:156:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:158:13:158:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:158:13:158:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:158:18:158:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:158:18:158:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:159:41:159:42 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:159:41:159:42 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:164:13:164:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:164:13:164:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:164:18:164:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:164:18:164:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:165:9:165:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:165:9:165:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:167:13:167:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:167:13:167:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:167:18:167:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:167:18:167:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:168:32:168:33 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:168:32:168:33 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:173:13:173:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:173:13:173:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:173:18:173:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:173:18:173:29 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:175:18:175:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:175:18:175:19 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:177:13:177:14 | access to local variable b4 : B | semmle.label | access to local variable b4 : B | +| extensions.cs:177:13:177:14 | access to local variable b4 : B | semmle.label | access to local variable b4 : B | +| extensions.cs:177:18:177:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:177:18:177:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:178:43:178:44 | access to local variable b4 : B | semmle.label | access to local variable b4 : B | +| extensions.cs:178:43:178:44 | access to local variable b4 : B | semmle.label | access to local variable b4 : B | +| extensions.cs:185:13:185:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:185:13:185:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:185:18:185:24 | call to operator - : B | semmle.label | call to operator - : B | +| extensions.cs:185:18:185:24 | call to operator - : B | semmle.label | call to operator - : B | +| extensions.cs:186:14:186:15 | access to local variable b3 | semmle.label | access to local variable b3 | +| extensions.cs:186:14:186:15 | access to local variable b3 | semmle.label | access to local variable b3 | +| extensions.cs:188:13:188:14 | access to local variable b4 : B | semmle.label | access to local variable b4 : B | +| extensions.cs:188:13:188:14 | access to local variable b4 : B | semmle.label | access to local variable b4 : B | +| extensions.cs:188:18:188:52 | call to operator - : B | semmle.label | call to operator - : B | +| extensions.cs:188:18:188:52 | call to operator - : B | semmle.label | call to operator - : B | +| extensions.cs:189:14:189:15 | access to local variable b4 | semmle.label | access to local variable b4 | +| extensions.cs:189:14:189:15 | access to local variable b4 | semmle.label | access to local variable b4 | +| extensions.cs:194:13:194:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:194:13:194:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:194:18:194:35 | access to property StaticProp1 : B | semmle.label | access to property StaticProp1 : B | +| extensions.cs:194:18:194:35 | access to property StaticProp1 : B | semmle.label | access to property StaticProp1 : B | +| extensions.cs:195:14:195:15 | access to local variable b1 | semmle.label | access to local variable b1 | +| extensions.cs:195:14:195:15 | access to local variable b1 | semmle.label | access to local variable b1 | +| extensions.cs:197:13:197:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:197:13:197:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | semmle.label | call to extension accessor get_StaticProp1 : B | +| extensions.cs:197:18:197:47 | call to extension accessor get_StaticProp1 : B | semmle.label | call to extension accessor get_StaticProp1 : B | +| extensions.cs:198:14:198:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:198:14:198:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:203:13:203:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:203:13:203:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:203:18:203:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:203:18:203:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:204:30:204:31 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:204:30:204:31 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:206:13:206:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:206:13:206:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:206:18:206:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:206:18:206:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:207:38:207:39 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:207:38:207:39 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:212:13:212:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:212:13:212:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:212:18:212:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:212:18:212:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:213:9:213:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:213:9:213:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:215:13:215:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:215:13:215:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:215:18:215:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:215:18:215:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:216:25:216:26 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:216:25:216:26 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:221:13:221:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:221:13:221:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:221:18:221:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:221:18:221:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:222:9:222:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:222:9:222:10 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:224:13:224:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:224:13:224:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:224:18:224:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:224:18:224:31 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:225:32:225:33 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:225:32:225:33 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:231:13:231:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:231:13:231:14 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:231:18:231:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:231:18:231:30 | call to method Source : B | semmle.label | call to method Source : B | +| extensions.cs:232:13:232:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:232:13:232:14 | access to local variable b2 : B | semmle.label | access to local variable b2 : B | +| extensions.cs:232:18:232:34 | call to method GenericM2 : B | semmle.label | call to method GenericM2 : B | +| extensions.cs:232:18:232:34 | call to method GenericM2 : B | semmle.label | call to method GenericM2 : B | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:233:14:233:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:233:14:233:15 | access to local variable b2 | semmle.label | access to local variable b2 | +| extensions.cs:235:13:235:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:235:13:235:14 | access to local variable b3 : B | semmle.label | access to local variable b3 : B | +| extensions.cs:235:18:235:48 | call to method GenericM2 : B | semmle.label | call to method GenericM2 : B | +| extensions.cs:235:18:235:48 | call to method GenericM2 : B | semmle.label | call to method GenericM2 : B | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | semmle.label | access to local variable b1 : B | +| extensions.cs:236:14:236:15 | access to local variable b3 | semmle.label | access to local variable b3 | +| extensions.cs:236:14:236:15 | access to local variable b3 | semmle.label | access to local variable b3 | +subpaths +| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | extensions.cs:146:18:146:24 | call to method B1 : B | +| extensions.cs:146:18:146:19 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | extensions.cs:146:18:146:24 | call to method B1 : B | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | extensions.cs:149:18:149:36 | call to method B1 : B | +| extensions.cs:149:34:149:35 | access to local variable b1 : B | extensions.cs:76:17:76:17 | b : B | extensions.cs:80:20:80:20 | access to extension synthetic parameter b : B | extensions.cs:149:18:149:36 | call to method B1 : B | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | extensions.cs:232:18:232:34 | call to method GenericM2 : B | +| extensions.cs:232:32:232:33 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | extensions.cs:232:18:232:34 | call to method GenericM2 : B | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | extensions.cs:235:18:235:48 | call to method GenericM2 : B | +| extensions.cs:235:46:235:47 | access to local variable b1 : B | extensions.cs:96:33:96:37 | other : B | extensions.cs:98:20:98:24 | access to parameter other : B | extensions.cs:235:18:235:48 | call to method GenericM2 : B | +testFailures +#select +| extensions.cs:15:24:15:28 | access to parameter value | extensions.cs:118:21:118:32 | call to method Source : B | extensions.cs:15:24:15:28 | access to parameter value | $@ | extensions.cs:118:21:118:32 | call to method Source : B | call to method Source : B | +| extensions.cs:15:24:15:28 | access to parameter value | extensions.cs:118:21:118:32 | call to method Source : B | extensions.cs:15:24:15:28 | access to parameter value | $@ | extensions.cs:118:21:118:32 | call to method Source : B | call to method Source : B | +| extensions.cs:15:24:15:28 | access to parameter value | extensions.cs:120:17:120:30 | call to method Source : B | extensions.cs:15:24:15:28 | access to parameter value | $@ | extensions.cs:120:17:120:30 | call to method Source : B | call to method Source : B | +| extensions.cs:15:24:15:28 | access to parameter value | extensions.cs:120:17:120:30 | call to method Source : B | extensions.cs:15:24:15:28 | access to parameter value | $@ | extensions.cs:120:17:120:30 | call to method Source : B | call to method Source : B | +| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | extensions.cs:155:18:155:29 | call to method Source : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | $@ | extensions.cs:155:18:155:29 | call to method Source : B | call to method Source : B | +| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | extensions.cs:155:18:155:29 | call to method Source : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | $@ | extensions.cs:155:18:155:29 | call to method Source : B | call to method Source : B | +| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | extensions.cs:158:18:158:31 | call to method Source : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | $@ | extensions.cs:158:18:158:31 | call to method Source : B | call to method Source : B | +| extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | extensions.cs:158:18:158:31 | call to method Source : B | extensions.cs:23:24:23:26 | access to extension synthetic parameter obj | $@ | extensions.cs:158:18:158:31 | call to method Source : B | call to method Source : B | +| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | extensions.cs:164:18:164:29 | call to method Source : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | $@ | extensions.cs:164:18:164:29 | call to method Source : B | call to method Source : B | +| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | extensions.cs:164:18:164:29 | call to method Source : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | $@ | extensions.cs:164:18:164:29 | call to method Source : B | call to method Source : B | +| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | extensions.cs:167:18:167:31 | call to method Source : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | $@ | extensions.cs:167:18:167:31 | call to method Source : B | call to method Source : B | +| extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | extensions.cs:167:18:167:31 | call to method Source : B | extensions.cs:28:24:28:26 | access to extension synthetic parameter obj | $@ | extensions.cs:167:18:167:31 | call to method Source : B | call to method Source : B | +| extensions.cs:40:24:40:28 | access to parameter value | extensions.cs:203:18:203:30 | call to method Source : B | extensions.cs:40:24:40:28 | access to parameter value | $@ | extensions.cs:203:18:203:30 | call to method Source : B | call to method Source : B | +| extensions.cs:40:24:40:28 | access to parameter value | extensions.cs:203:18:203:30 | call to method Source : B | extensions.cs:40:24:40:28 | access to parameter value | $@ | extensions.cs:203:18:203:30 | call to method Source : B | call to method Source : B | +| extensions.cs:40:24:40:28 | access to parameter value | extensions.cs:206:18:206:31 | call to method Source : B | extensions.cs:40:24:40:28 | access to parameter value | $@ | extensions.cs:206:18:206:31 | call to method Source : B | call to method Source : B | +| extensions.cs:40:24:40:28 | access to parameter value | extensions.cs:206:18:206:31 | call to method Source : B | extensions.cs:40:24:40:28 | access to parameter value | $@ | extensions.cs:206:18:206:31 | call to method Source : B | call to method Source : B | +| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | extensions.cs:136:18:136:29 | call to method Source : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | $@ | extensions.cs:136:18:136:29 | call to method Source : B | call to method Source : B | +| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | extensions.cs:136:18:136:29 | call to method Source : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | $@ | extensions.cs:136:18:136:29 | call to method Source : B | call to method Source : B | +| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | extensions.cs:139:18:139:31 | call to method Source : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | $@ | extensions.cs:139:18:139:31 | call to method Source : B | call to method Source : B | +| extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | extensions.cs:139:18:139:31 | call to method Source : B | extensions.cs:51:20:51:22 | access to extension synthetic parameter obj | $@ | extensions.cs:139:18:139:31 | call to method Source : B | call to method Source : B | +| extensions.cs:61:20:61:20 | access to parameter a | extensions.cs:173:18:173:29 | call to method Source : B | extensions.cs:61:20:61:20 | access to parameter a | $@ | extensions.cs:173:18:173:29 | call to method Source : B | call to method Source : B | +| extensions.cs:61:20:61:20 | access to parameter a | extensions.cs:173:18:173:29 | call to method Source : B | extensions.cs:61:20:61:20 | access to parameter a | $@ | extensions.cs:173:18:173:29 | call to method Source : B | call to method Source : B | +| extensions.cs:61:20:61:20 | access to parameter a | extensions.cs:177:18:177:31 | call to method Source : B | extensions.cs:61:20:61:20 | access to parameter a | $@ | extensions.cs:177:18:177:31 | call to method Source : B | call to method Source : B | +| extensions.cs:61:20:61:20 | access to parameter a | extensions.cs:177:18:177:31 | call to method Source : B | extensions.cs:61:20:61:20 | access to parameter a | $@ | extensions.cs:177:18:177:31 | call to method Source : B | call to method Source : B | +| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | extensions.cs:212:18:212:30 | call to method Source : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | $@ | extensions.cs:212:18:212:30 | call to method Source : B | call to method Source : B | +| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | extensions.cs:212:18:212:30 | call to method Source : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | $@ | extensions.cs:212:18:212:30 | call to method Source : B | call to method Source : B | +| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | extensions.cs:215:18:215:31 | call to method Source : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | $@ | extensions.cs:215:18:215:31 | call to method Source : B | call to method Source : B | +| extensions.cs:85:20:85:20 | access to extension synthetic parameter b | extensions.cs:215:18:215:31 | call to method Source : B | extensions.cs:85:20:85:20 | access to extension synthetic parameter b | $@ | extensions.cs:215:18:215:31 | call to method Source : B | call to method Source : B | +| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | extensions.cs:221:18:221:30 | call to method Source : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | $@ | extensions.cs:221:18:221:30 | call to method Source : B | call to method Source : B | +| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | extensions.cs:221:18:221:30 | call to method Source : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | $@ | extensions.cs:221:18:221:30 | call to method Source : B | call to method Source : B | +| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | extensions.cs:224:18:224:31 | call to method Source : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | $@ | extensions.cs:224:18:224:31 | call to method Source : B | call to method Source : B | +| extensions.cs:93:20:93:20 | access to extension synthetic parameter t | extensions.cs:224:18:224:31 | call to method Source : B | extensions.cs:93:20:93:20 | access to extension synthetic parameter t | $@ | extensions.cs:224:18:224:31 | call to method Source : B | call to method Source : B | +| extensions.cs:109:14:109:15 | access to local variable b1 | extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:109:14:109:15 | access to local variable b1 | $@ | extensions.cs:11:24:11:37 | call to method Source : B | call to method Source : B | +| extensions.cs:109:14:109:15 | access to local variable b1 | extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:109:14:109:15 | access to local variable b1 | $@ | extensions.cs:11:24:11:37 | call to method Source : B | call to method Source : B | +| extensions.cs:112:14:112:15 | access to local variable b2 | extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:112:14:112:15 | access to local variable b2 | $@ | extensions.cs:11:24:11:37 | call to method Source : B | call to method Source : B | +| extensions.cs:112:14:112:15 | access to local variable b2 | extensions.cs:11:24:11:37 | call to method Source : B | extensions.cs:112:14:112:15 | access to local variable b2 | $@ | extensions.cs:11:24:11:37 | call to method Source : B | call to method Source : B | +| extensions.cs:128:14:128:15 | access to local variable b1 | extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:128:14:128:15 | access to local variable b1 | $@ | extensions.cs:46:20:46:33 | call to method Source : B | call to method Source : B | +| extensions.cs:128:14:128:15 | access to local variable b1 | extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:128:14:128:15 | access to local variable b1 | $@ | extensions.cs:46:20:46:33 | call to method Source : B | call to method Source : B | +| extensions.cs:131:14:131:15 | access to local variable b2 | extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:131:14:131:15 | access to local variable b2 | $@ | extensions.cs:46:20:46:33 | call to method Source : B | call to method Source : B | +| extensions.cs:131:14:131:15 | access to local variable b2 | extensions.cs:46:20:46:33 | call to method Source : B | extensions.cs:131:14:131:15 | access to local variable b2 | $@ | extensions.cs:46:20:46:33 | call to method Source : B | call to method Source : B | +| extensions.cs:147:14:147:15 | access to local variable b2 | extensions.cs:145:18:145:29 | call to method Source : B | extensions.cs:147:14:147:15 | access to local variable b2 | $@ | extensions.cs:145:18:145:29 | call to method Source : B | call to method Source : B | +| extensions.cs:147:14:147:15 | access to local variable b2 | extensions.cs:145:18:145:29 | call to method Source : B | extensions.cs:147:14:147:15 | access to local variable b2 | $@ | extensions.cs:145:18:145:29 | call to method Source : B | call to method Source : B | +| extensions.cs:150:14:150:15 | access to local variable b3 | extensions.cs:145:18:145:29 | call to method Source : B | extensions.cs:150:14:150:15 | access to local variable b3 | $@ | extensions.cs:145:18:145:29 | call to method Source : B | call to method Source : B | +| extensions.cs:150:14:150:15 | access to local variable b3 | extensions.cs:145:18:145:29 | call to method Source : B | extensions.cs:150:14:150:15 | access to local variable b3 | $@ | extensions.cs:145:18:145:29 | call to method Source : B | call to method Source : B | +| extensions.cs:186:14:186:15 | access to local variable b3 | extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:186:14:186:15 | access to local variable b3 | $@ | extensions.cs:67:20:67:33 | call to method Source : B | call to method Source : B | +| extensions.cs:186:14:186:15 | access to local variable b3 | extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:186:14:186:15 | access to local variable b3 | $@ | extensions.cs:67:20:67:33 | call to method Source : B | call to method Source : B | +| extensions.cs:189:14:189:15 | access to local variable b4 | extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:189:14:189:15 | access to local variable b4 | $@ | extensions.cs:67:20:67:33 | call to method Source : B | call to method Source : B | +| extensions.cs:189:14:189:15 | access to local variable b4 | extensions.cs:67:20:67:33 | call to method Source : B | extensions.cs:189:14:189:15 | access to local variable b4 | $@ | extensions.cs:67:20:67:33 | call to method Source : B | call to method Source : B | +| extensions.cs:195:14:195:15 | access to local variable b1 | extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:195:14:195:15 | access to local variable b1 | $@ | extensions.cs:36:24:36:38 | call to method Source : B | call to method Source : B | +| extensions.cs:195:14:195:15 | access to local variable b1 | extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:195:14:195:15 | access to local variable b1 | $@ | extensions.cs:36:24:36:38 | call to method Source : B | call to method Source : B | +| extensions.cs:198:14:198:15 | access to local variable b2 | extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:198:14:198:15 | access to local variable b2 | $@ | extensions.cs:36:24:36:38 | call to method Source : B | call to method Source : B | +| extensions.cs:198:14:198:15 | access to local variable b2 | extensions.cs:36:24:36:38 | call to method Source : B | extensions.cs:198:14:198:15 | access to local variable b2 | $@ | extensions.cs:36:24:36:38 | call to method Source : B | call to method Source : B | +| extensions.cs:233:14:233:15 | access to local variable b2 | extensions.cs:231:18:231:30 | call to method Source : B | extensions.cs:233:14:233:15 | access to local variable b2 | $@ | extensions.cs:231:18:231:30 | call to method Source : B | call to method Source : B | +| extensions.cs:233:14:233:15 | access to local variable b2 | extensions.cs:231:18:231:30 | call to method Source : B | extensions.cs:233:14:233:15 | access to local variable b2 | $@ | extensions.cs:231:18:231:30 | call to method Source : B | call to method Source : B | +| extensions.cs:236:14:236:15 | access to local variable b3 | extensions.cs:231:18:231:30 | call to method Source : B | extensions.cs:236:14:236:15 | access to local variable b3 | $@ | extensions.cs:231:18:231:30 | call to method Source : B | call to method Source : B | +| extensions.cs:236:14:236:15 | access to local variable b3 | extensions.cs:231:18:231:30 | call to method Source : B | extensions.cs:236:14:236:15 | access to local variable b3 | $@ | extensions.cs:231:18:231:30 | call to method Source : B | call to method Source : B | diff --git a/csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.ql b/csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.ql new file mode 100644 index 000000000000..9ab95f59caf3 --- /dev/null +++ b/csharp/ql/test/library-tests/dataflow/extensions/ExtensionFlow.ql @@ -0,0 +1,12 @@ +/** + * @kind path-problem + */ + +import csharp +import utils.test.InlineFlowTest +import DefaultFlowTest +import PathGraph + +from PathNode source, PathNode sink +where flowPath(source, sink) +select sink, source, sink, "$@", source, source.toString() diff --git a/csharp/ql/test/library-tests/dataflow/extensions/extensions.cs b/csharp/ql/test/library-tests/dataflow/extensions/extensions.cs new file mode 100644 index 000000000000..0e1c2226683d --- /dev/null +++ b/csharp/ql/test/library-tests/dataflow/extensions/extensions.cs @@ -0,0 +1,243 @@ +using System; + +public static class MyExtensions +{ + extension(object obj) + { + public B Prop1 + { + get + { + return A.Source(1); + } + set + { + A.Sink(value); // $ hasValueFlow=2 hasValueFlow=102 + } + } + + public B Prop2 + { + get + { + A.Sink(obj); // $ hasValueFlow=6 hasValueFlow=106 + return new B(); + } + set + { + A.Sink(obj); // $ hasValueFlow=7 hasValueFlow=107 + } + } + + public static B StaticProp1 + { + get + { + return A.Source(10); + } + set + { + A.Sink(value); // $ hasValueFlow=11 hasValueFlow=111 + } + } + + public B M1() + { + return A.Source(3); + } + + public void M2() + { + A.Sink(obj); // $ hasValueFlow=4 hasValueFlow=104 + } + + public static B M3(B b) + { + return b; + } + + public static object operator +(object a, object b) + { + A.Sink(a); // $ hasValueFlow=8 hasValueFlow=108 + return new object(); + } + + public static object operator -(object a, object b) + { + return A.Source(9); + } + + public T GenericMethod(T t) + { + return t; + } + } + + extension(B b) + { + public B B1() + { + return b; + } + + public void B2() + { + A.Sink(b); // $ hasValueFlow=12 hasValueFlow=112 + } + } + + extension(T t) where T : class + { + public void GenericM1() + { + A.Sink(t); // $ hasValueFlow=13 hasValueFlow=113 + } + + public S GenericM2(S other) + { + return other; + } + } +} + +public class A +{ + public void Test1() + { + var obj = new object(); + var b1 = obj.Prop1; + Sink(b1); // $ hasValueFlow=1 + + var b2 = MyExtensions.get_Prop1(obj); + Sink(b2); // $ hasValueFlow=1 + } + + public void Test2() + { + var obj = new object(); + obj.Prop1 = Source(2); + + var b = Source(102); + MyExtensions.set_Prop1(obj, b); + } + + public void Test3() + { + var obj = new object(); + var b1 = obj.M1(); + Sink(b1); // $ hasValueFlow=3 + + var b2 = MyExtensions.M1(obj); + Sink(b2); // $ hasValueFlow=3 + } + + public void Test4() + { + var b1 = Source(4); + b1.M2(); + + var b2 = Source(104); + MyExtensions.M2(b2); + } + + public void Test5() + { + var b1 = Source(5); + var b2 = b1.B1(); + Sink(b2); // $ hasValueFlow=5 + + var b3 = MyExtensions.B1(b1); + Sink(b3); // $ hasValueFlow=5 + } + + public void Test6() + { + var b1 = Source(6); + var b2 = b1.Prop2; + + var b3 = Source(106); + var b4 = MyExtensions.get_Prop2(b3); + } + + public void Test7() + { + var b1 = Source(7); + b1.Prop2 = new B(); + + var b2 = Source(107); + MyExtensions.set_Prop2(b2, new B()); + } + + public void Test8() + { + var b1 = Source(8); + var b2 = Source(1); + var b3 = b1 + b2; + + var b4 = Source(108); + var b5 = MyExtensions.op_Addition(b4, b2); + } + + public void Test9() + { + var b1 = Source(0); + var b2 = Source(1); + var b3 = b1 - b2; + Sink(b3); // $ hasValueFlow=9 + + var b4 = MyExtensions.op_Subtraction(b1, b2); + Sink(b4); // $ hasValueFlow=9 + } + + public void Test10() + { + var b1 = object.StaticProp1; + Sink(b1); // $ hasValueFlow=10 + + var b2 = MyExtensions.get_StaticProp1(); + Sink(b2); // $ hasValueFlow=10 + } + + public void Test11() + { + var b1 = Source(11); + object.StaticProp1 = b1; + + var b2 = Source(111); + MyExtensions.set_StaticProp1(b2); + } + + public void Test12() + { + var b1 = Source(12); + b1.B2(); + + var b2 = Source(112); + MyExtensions.B2(b2); + } + + public void Test13() + { + var b1 = Source(13); + b1.GenericM1(); + + var b2 = Source(113); + MyExtensions.GenericM1(b2); + } + + public void Test14() + { + var obj = new object(); + var b1 = Source(14); + var b2 = obj.GenericM2(b1); + Sink(b2); // $ hasValueFlow=14 + + var b3 = MyExtensions.GenericM2(obj, b1); + Sink(b3); // $ hasValueFlow=14 + } + + public static T Source(object source) => throw null; + public static void Sink(object o) { } +} + +public class B { } From bd3e4d3d7e2c5185fd22fc92acf00fdea88771a5 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 4 Feb 2026 16:34:31 +0100 Subject: [PATCH 325/433] C#: Add MaD tests for extensions. --- .../csharp/dataflow/internal/ExternalFlow.qll | 2 +- .../dataflow/external-models/ExternalFlow.cs | 94 ++++++++++ .../external-models/ExternalFlow.expected | 161 ++++++++++++++++++ .../external-models/ExternalFlow.ext.yml | 8 + 4 files changed, 264 insertions(+), 1 deletion(-) diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll index 61954f63e10b..d358c4aa441a 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll @@ -214,7 +214,7 @@ module ModelValidation { not namespace.regexpMatch("[a-zA-Z0-9_\\.]+") and result = "Dubious namespace \"" + namespace + "\" in " + pred + " model." or - not type.regexpMatch("[a-zA-Z0-9_<>,\\+]+") and + not type.regexpMatch("[a-zA-Z0-9_<>,\\(\\)\\+]+") and result = "Dubious type \"" + type + "\" in " + pred + " model." or not name.regexpMatch("[a-zA-Z0-9_<>,\\.]*") and diff --git a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.cs b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.cs index e28b8fdfcc92..1fa43ba456e5 100644 --- a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.cs +++ b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.cs @@ -348,4 +348,98 @@ public void M1() static void Sink(object o) { } } + // Test extensions + public static class TestExtensions + { + extension(object o) + { + public object Method1() => throw null; + public static object StaticMethod1(object s) => throw null; + public object Property1 { get { throw null; } set { throw null; } } + } + + extension(T t) where T : class + { + public T GenericMethod1() => throw null; + public static T GenericStaticMethod1(T t0) => throw null; + public T GenericProperty1 { get { throw null; } set { throw null; } } + } + } + + public class M + { + public void M1() + { + var obj = new object(); + var o1 = obj.Method1(); + Sink(o1); + + var o2 = TestExtensions.Method1(obj); + Sink(o2); + } + + public void M2() + { + var obj = new object(); + var o1 = object.StaticMethod1(obj); + Sink(o1); + + var o2 = TestExtensions.StaticMethod1(obj); + Sink(o2); + } + + public void M3(object o) + { + var obj = new object(); + o.Property1 = obj; + var o1 = o.Property1; + Sink(o1); + } + + public void M4(object o) + { + var obj = new object(); + TestExtensions.set_Property1(o, obj); + var o1 = TestExtensions.get_Property1(o); + Sink(o1); + } + + public void M5() + { + var obj = new object(); + var o1 = obj.GenericMethod1(); + Sink(o1); + + var o2 = TestExtensions.GenericMethod1(obj); + Sink(o2); + } + + public void M6() + { + var obj = new object(); + var o1 = object.GenericStaticMethod1(obj); + Sink(o1); + + var o2 = TestExtensions.GenericStaticMethod1(obj); + Sink(o2); + } + + public void M7(object o) + { + var obj = new object(); + o.GenericProperty1 = obj; + var o1 = o.GenericProperty1; + Sink(o1); + } + + public void M8(object o) + { + var obj = new object(); + TestExtensions.set_GenericProperty1(o, obj); + var o1 = TestExtensions.get_GenericProperty1(o); + Sink(o1); + } + + static void Sink(object o) { } + } } diff --git a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.expected b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.expected index 3099a3fec7e6..b5c0dd3b59c9 100644 --- a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.expected +++ b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.expected @@ -32,6 +32,14 @@ models | 31 | Summary: My.Qltest; Library; false; GetValue; (); ; Argument[this].SyntheticField[X]; ReturnValue; value; dfc-generated | | 32 | Summary: My.Qltest; Library; false; MixedFlowArgs; (System.Object,System.Object); ; Argument[1]; ReturnValue; value; manual | | 33 | Summary: My.Qltest; Library; false; SetValue; (System.Object); ; Argument[0]; Argument[this].SyntheticField[X]; value; dfc-generated | +| 34 | Summary: My.Qltest; TestExtensions+extension(Object); false; Method1; (System.Object); ; Argument[0]; ReturnValue; value; manual | +| 35 | Summary: My.Qltest; TestExtensions+extension(Object); false; StaticMethod1; (System.Object); ; Argument[0]; ReturnValue; value; manual | +| 36 | Summary: My.Qltest; TestExtensions+extension(Object); false; get_Property1; (System.Object); ; Argument[0].SyntheticField[TestExtensions.Property1]; ReturnValue; value; manual | +| 37 | Summary: My.Qltest; TestExtensions+extension(Object); false; set_Property1; (System.Object,System.Object); ; Argument[1]; Argument[0].SyntheticField[TestExtensions.Property1]; value; manual | +| 38 | Summary: My.Qltest; TestExtensions+extension(T); false; GenericMethod1; (T); ; Argument[0]; ReturnValue; value; manual | +| 39 | Summary: My.Qltest; TestExtensions+extension(T); false; GenericStaticMethod1; (T); ; Argument[0]; ReturnValue; value; manual | +| 40 | Summary: My.Qltest; TestExtensions+extension(T); false; get_GenericProperty1; (T); ; Argument[0].SyntheticField[TestExtensions.GenericProperty1]; ReturnValue; value; manual | +| 41 | Summary: My.Qltest; TestExtensions+extension(T); false; set_GenericProperty1; (T,T); ; Argument[1]; Argument[0].SyntheticField[TestExtensions.GenericProperty1]; value; manual | edges | ExternalFlow.cs:9:20:9:23 | access to local variable arg1 : Object | ExternalFlow.cs:10:29:10:32 | access to local variable arg1 : Object | provenance | | | ExternalFlow.cs:9:27:9:38 | object creation of type Object : Object | ExternalFlow.cs:9:20:9:23 | access to local variable arg1 : Object | provenance | | @@ -150,6 +158,73 @@ edges | ExternalFlow.cs:344:13:344:13 | [post] access to local variable l : Library [synthetic X] : Object | ExternalFlow.cs:345:18:345:18 | access to local variable l : Library [synthetic X] : Object | provenance | | | ExternalFlow.cs:344:24:344:24 | access to local variable o : Object | ExternalFlow.cs:344:13:344:13 | [post] access to local variable l : Library [synthetic X] : Object | provenance | MaD:33 | | ExternalFlow.cs:345:18:345:18 | access to local variable l : Library [synthetic X] : Object | ExternalFlow.cs:345:18:345:29 | call to method GetValue | provenance | MaD:31 | +| ExternalFlow.cs:373:17:373:19 | access to local variable obj : Object | ExternalFlow.cs:374:22:374:24 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:373:17:373:19 | access to local variable obj : Object | ExternalFlow.cs:377:45:377:47 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:373:23:373:34 | object creation of type Object : Object | ExternalFlow.cs:373:17:373:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:374:17:374:18 | access to local variable o1 : Object | ExternalFlow.cs:375:18:375:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:374:22:374:24 | access to local variable obj : Object | ExternalFlow.cs:374:22:374:34 | call to method Method1 : Object | provenance | MaD:34 | +| ExternalFlow.cs:374:22:374:34 | call to method Method1 : Object | ExternalFlow.cs:374:17:374:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:377:17:377:18 | access to local variable o2 : Object | ExternalFlow.cs:378:18:378:19 | access to local variable o2 | provenance | | +| ExternalFlow.cs:377:22:377:48 | call to method Method1 : Object | ExternalFlow.cs:377:17:377:18 | access to local variable o2 : Object | provenance | | +| ExternalFlow.cs:377:45:377:47 | access to local variable obj : Object | ExternalFlow.cs:377:22:377:48 | call to method Method1 : Object | provenance | MaD:34 | +| ExternalFlow.cs:383:17:383:19 | access to local variable obj : Object | ExternalFlow.cs:384:43:384:45 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:383:17:383:19 | access to local variable obj : Object | ExternalFlow.cs:387:51:387:53 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:383:23:383:34 | object creation of type Object : Object | ExternalFlow.cs:383:17:383:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:384:17:384:18 | access to local variable o1 : Object | ExternalFlow.cs:385:18:385:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:384:22:384:46 | call to method StaticMethod1 : Object | ExternalFlow.cs:384:17:384:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:384:43:384:45 | access to local variable obj : Object | ExternalFlow.cs:384:22:384:46 | call to method StaticMethod1 : Object | provenance | MaD:35 | +| ExternalFlow.cs:387:17:387:18 | access to local variable o2 : Object | ExternalFlow.cs:388:18:388:19 | access to local variable o2 | provenance | | +| ExternalFlow.cs:387:22:387:54 | call to method StaticMethod1 : Object | ExternalFlow.cs:387:17:387:18 | access to local variable o2 : Object | provenance | | +| ExternalFlow.cs:387:51:387:53 | access to local variable obj : Object | ExternalFlow.cs:387:22:387:54 | call to method StaticMethod1 : Object | provenance | MaD:35 | +| ExternalFlow.cs:393:17:393:19 | access to local variable obj : Object | ExternalFlow.cs:394:27:394:29 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:393:23:393:34 | object creation of type Object : Object | ExternalFlow.cs:393:17:393:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:394:13:394:13 | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | ExternalFlow.cs:395:22:395:22 | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | provenance | | +| ExternalFlow.cs:394:27:394:29 | access to local variable obj : Object | ExternalFlow.cs:394:13:394:13 | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | provenance | MaD:37 | +| ExternalFlow.cs:395:17:395:18 | access to local variable o1 : Object | ExternalFlow.cs:396:18:396:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:395:22:395:22 | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | ExternalFlow.cs:395:22:395:32 | access to property Property1 : Object | provenance | MaD:36 | +| ExternalFlow.cs:395:22:395:32 | access to property Property1 : Object | ExternalFlow.cs:395:17:395:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:401:17:401:19 | access to local variable obj : Object | ExternalFlow.cs:402:45:402:47 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:401:23:401:34 | object creation of type Object : Object | ExternalFlow.cs:401:17:401:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:402:42:402:42 | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | ExternalFlow.cs:403:51:403:51 | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | provenance | | +| ExternalFlow.cs:402:45:402:47 | access to local variable obj : Object | ExternalFlow.cs:402:42:402:42 | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | provenance | MaD:37 | +| ExternalFlow.cs:403:17:403:18 | access to local variable o1 : Object | ExternalFlow.cs:404:18:404:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:403:22:403:52 | call to extension accessor get_Property1 : Object | ExternalFlow.cs:403:17:403:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:403:51:403:51 | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | ExternalFlow.cs:403:22:403:52 | call to extension accessor get_Property1 : Object | provenance | MaD:36 | +| ExternalFlow.cs:409:17:409:19 | access to local variable obj : Object | ExternalFlow.cs:410:22:410:24 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:409:17:409:19 | access to local variable obj : Object | ExternalFlow.cs:413:52:413:54 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:409:23:409:34 | object creation of type Object : Object | ExternalFlow.cs:409:17:409:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:410:17:410:18 | access to local variable o1 : Object | ExternalFlow.cs:411:18:411:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:410:22:410:24 | access to local variable obj : Object | ExternalFlow.cs:410:22:410:41 | call to method GenericMethod1 : Object | provenance | MaD:38 | +| ExternalFlow.cs:410:22:410:41 | call to method GenericMethod1 : Object | ExternalFlow.cs:410:17:410:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:413:17:413:18 | access to local variable o2 : Object | ExternalFlow.cs:414:18:414:19 | access to local variable o2 | provenance | | +| ExternalFlow.cs:413:22:413:55 | call to method GenericMethod1 : Object | ExternalFlow.cs:413:17:413:18 | access to local variable o2 : Object | provenance | | +| ExternalFlow.cs:413:52:413:54 | access to local variable obj : Object | ExternalFlow.cs:413:22:413:55 | call to method GenericMethod1 : Object | provenance | MaD:38 | +| ExternalFlow.cs:419:17:419:19 | access to local variable obj : Object | ExternalFlow.cs:420:50:420:52 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:419:17:419:19 | access to local variable obj : Object | ExternalFlow.cs:423:58:423:60 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:419:23:419:34 | object creation of type Object : Object | ExternalFlow.cs:419:17:419:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:420:17:420:18 | access to local variable o1 : Object | ExternalFlow.cs:421:18:421:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:420:22:420:53 | call to method GenericStaticMethod1 : Object | ExternalFlow.cs:420:17:420:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:420:50:420:52 | access to local variable obj : Object | ExternalFlow.cs:420:22:420:53 | call to method GenericStaticMethod1 : Object | provenance | MaD:39 | +| ExternalFlow.cs:423:17:423:18 | access to local variable o2 : Object | ExternalFlow.cs:424:18:424:19 | access to local variable o2 | provenance | | +| ExternalFlow.cs:423:22:423:61 | call to method GenericStaticMethod1 : Object | ExternalFlow.cs:423:17:423:18 | access to local variable o2 : Object | provenance | | +| ExternalFlow.cs:423:58:423:60 | access to local variable obj : Object | ExternalFlow.cs:423:22:423:61 | call to method GenericStaticMethod1 : Object | provenance | MaD:39 | +| ExternalFlow.cs:429:17:429:19 | access to local variable obj : Object | ExternalFlow.cs:430:34:430:36 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:429:23:429:34 | object creation of type Object : Object | ExternalFlow.cs:429:17:429:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:430:13:430:13 | [post] access to parameter o : Object [property GenericProperty1] : Object | ExternalFlow.cs:431:22:431:22 | access to parameter o : Object [property GenericProperty1] : Object | provenance | | +| ExternalFlow.cs:430:13:430:13 | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | ExternalFlow.cs:431:22:431:22 | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | provenance | | +| ExternalFlow.cs:430:34:430:36 | access to local variable obj : Object | ExternalFlow.cs:430:13:430:13 | [post] access to parameter o : Object [property GenericProperty1] : Object | provenance | | +| ExternalFlow.cs:430:34:430:36 | access to local variable obj : Object | ExternalFlow.cs:430:13:430:13 | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | provenance | MaD:41 | +| ExternalFlow.cs:431:17:431:18 | access to local variable o1 : Object | ExternalFlow.cs:432:18:432:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:431:22:431:22 | access to parameter o : Object [property GenericProperty1] : Object | ExternalFlow.cs:431:22:431:39 | access to property GenericProperty1 : Object | provenance | | +| ExternalFlow.cs:431:22:431:22 | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | ExternalFlow.cs:431:22:431:39 | access to property GenericProperty1 : Object | provenance | MaD:40 | +| ExternalFlow.cs:431:22:431:39 | access to property GenericProperty1 : Object | ExternalFlow.cs:431:17:431:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:437:17:437:19 | access to local variable obj : Object | ExternalFlow.cs:438:52:438:54 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:437:23:437:34 | object creation of type Object : Object | ExternalFlow.cs:437:17:437:19 | access to local variable obj : Object | provenance | | +| ExternalFlow.cs:438:49:438:49 | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | ExternalFlow.cs:439:58:439:58 | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | provenance | | +| ExternalFlow.cs:438:52:438:54 | access to local variable obj : Object | ExternalFlow.cs:438:49:438:49 | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | provenance | MaD:41 | +| ExternalFlow.cs:439:17:439:18 | access to local variable o1 : Object | ExternalFlow.cs:440:18:440:19 | access to local variable o1 | provenance | | +| ExternalFlow.cs:439:22:439:59 | call to extension accessor get_GenericProperty1 : Object | ExternalFlow.cs:439:17:439:18 | access to local variable o1 : Object | provenance | | +| ExternalFlow.cs:439:58:439:58 | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | ExternalFlow.cs:439:22:439:59 | call to extension accessor get_GenericProperty1 : Object | provenance | MaD:40 | nodes | ExternalFlow.cs:9:20:9:23 | access to local variable arg1 : Object | semmle.label | access to local variable arg1 : Object | | ExternalFlow.cs:9:27:9:38 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | @@ -294,6 +369,80 @@ nodes | ExternalFlow.cs:344:24:344:24 | access to local variable o : Object | semmle.label | access to local variable o : Object | | ExternalFlow.cs:345:18:345:18 | access to local variable l : Library [synthetic X] : Object | semmle.label | access to local variable l : Library [synthetic X] : Object | | ExternalFlow.cs:345:18:345:29 | call to method GetValue | semmle.label | call to method GetValue | +| ExternalFlow.cs:373:17:373:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:373:23:373:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:374:17:374:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:374:22:374:24 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:374:22:374:34 | call to method Method1 : Object | semmle.label | call to method Method1 : Object | +| ExternalFlow.cs:375:18:375:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:377:17:377:18 | access to local variable o2 : Object | semmle.label | access to local variable o2 : Object | +| ExternalFlow.cs:377:22:377:48 | call to method Method1 : Object | semmle.label | call to method Method1 : Object | +| ExternalFlow.cs:377:45:377:47 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:378:18:378:19 | access to local variable o2 | semmle.label | access to local variable o2 | +| ExternalFlow.cs:383:17:383:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:383:23:383:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:384:17:384:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:384:22:384:46 | call to method StaticMethod1 : Object | semmle.label | call to method StaticMethod1 : Object | +| ExternalFlow.cs:384:43:384:45 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:385:18:385:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:387:17:387:18 | access to local variable o2 : Object | semmle.label | access to local variable o2 : Object | +| ExternalFlow.cs:387:22:387:54 | call to method StaticMethod1 : Object | semmle.label | call to method StaticMethod1 : Object | +| ExternalFlow.cs:387:51:387:53 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:388:18:388:19 | access to local variable o2 | semmle.label | access to local variable o2 | +| ExternalFlow.cs:393:17:393:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:393:23:393:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:394:13:394:13 | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | semmle.label | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | +| ExternalFlow.cs:394:27:394:29 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:395:17:395:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:395:22:395:22 | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | semmle.label | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | +| ExternalFlow.cs:395:22:395:32 | access to property Property1 : Object | semmle.label | access to property Property1 : Object | +| ExternalFlow.cs:396:18:396:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:401:17:401:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:401:23:401:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:402:42:402:42 | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | semmle.label | [post] access to parameter o : Object [synthetic TestExtensions.Property1] : Object | +| ExternalFlow.cs:402:45:402:47 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:403:17:403:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:403:22:403:52 | call to extension accessor get_Property1 : Object | semmle.label | call to extension accessor get_Property1 : Object | +| ExternalFlow.cs:403:51:403:51 | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | semmle.label | access to parameter o : Object [synthetic TestExtensions.Property1] : Object | +| ExternalFlow.cs:404:18:404:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:409:17:409:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:409:23:409:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:410:17:410:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:410:22:410:24 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:410:22:410:41 | call to method GenericMethod1 : Object | semmle.label | call to method GenericMethod1 : Object | +| ExternalFlow.cs:411:18:411:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:413:17:413:18 | access to local variable o2 : Object | semmle.label | access to local variable o2 : Object | +| ExternalFlow.cs:413:22:413:55 | call to method GenericMethod1 : Object | semmle.label | call to method GenericMethod1 : Object | +| ExternalFlow.cs:413:52:413:54 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:414:18:414:19 | access to local variable o2 | semmle.label | access to local variable o2 | +| ExternalFlow.cs:419:17:419:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:419:23:419:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:420:17:420:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:420:22:420:53 | call to method GenericStaticMethod1 : Object | semmle.label | call to method GenericStaticMethod1 : Object | +| ExternalFlow.cs:420:50:420:52 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:421:18:421:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:423:17:423:18 | access to local variable o2 : Object | semmle.label | access to local variable o2 : Object | +| ExternalFlow.cs:423:22:423:61 | call to method GenericStaticMethod1 : Object | semmle.label | call to method GenericStaticMethod1 : Object | +| ExternalFlow.cs:423:58:423:60 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:424:18:424:19 | access to local variable o2 | semmle.label | access to local variable o2 | +| ExternalFlow.cs:429:17:429:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:429:23:429:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:430:13:430:13 | [post] access to parameter o : Object [property GenericProperty1] : Object | semmle.label | [post] access to parameter o : Object [property GenericProperty1] : Object | +| ExternalFlow.cs:430:13:430:13 | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | semmle.label | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | +| ExternalFlow.cs:430:34:430:36 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:431:17:431:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:431:22:431:22 | access to parameter o : Object [property GenericProperty1] : Object | semmle.label | access to parameter o : Object [property GenericProperty1] : Object | +| ExternalFlow.cs:431:22:431:22 | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | semmle.label | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | +| ExternalFlow.cs:431:22:431:39 | access to property GenericProperty1 : Object | semmle.label | access to property GenericProperty1 : Object | +| ExternalFlow.cs:432:18:432:19 | access to local variable o1 | semmle.label | access to local variable o1 | +| ExternalFlow.cs:437:17:437:19 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:437:23:437:34 | object creation of type Object : Object | semmle.label | object creation of type Object : Object | +| ExternalFlow.cs:438:49:438:49 | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | semmle.label | [post] access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | +| ExternalFlow.cs:438:52:438:54 | access to local variable obj : Object | semmle.label | access to local variable obj : Object | +| ExternalFlow.cs:439:17:439:18 | access to local variable o1 : Object | semmle.label | access to local variable o1 : Object | +| ExternalFlow.cs:439:22:439:59 | call to extension accessor get_GenericProperty1 : Object | semmle.label | call to extension accessor get_GenericProperty1 : Object | +| ExternalFlow.cs:439:58:439:58 | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | semmle.label | access to parameter o : Object [synthetic TestExtensions.GenericProperty1] : Object | +| ExternalFlow.cs:440:18:440:19 | access to local variable o1 | semmle.label | access to local variable o1 | subpaths | ExternalFlow.cs:84:29:84:32 | access to local variable objs : null [element] : Object | ExternalFlow.cs:84:35:84:35 | o : Object | ExternalFlow.cs:84:40:84:40 | access to parameter o : Object | ExternalFlow.cs:84:25:84:41 | call to method Map : T[] [element] : Object | invalidModelRow @@ -328,3 +477,15 @@ invalidModelRow | ExternalFlow.cs:324:18:324:44 | call to method GetMyNestedSyntheticField | ExternalFlow.cs:322:21:322:32 | object creation of type Object : Object | ExternalFlow.cs:324:18:324:44 | call to method GetMyNestedSyntheticField | $@ | ExternalFlow.cs:322:21:322:32 | object creation of type Object : Object | object creation of type Object : Object | | ExternalFlow.cs:331:18:331:45 | call to method GetMyFieldOnSyntheticField | ExternalFlow.cs:329:21:329:32 | object creation of type Object : Object | ExternalFlow.cs:331:18:331:45 | call to method GetMyFieldOnSyntheticField | $@ | ExternalFlow.cs:329:21:329:32 | object creation of type Object : Object | object creation of type Object : Object | | ExternalFlow.cs:345:18:345:29 | call to method GetValue | ExternalFlow.cs:343:21:343:32 | object creation of type Object : Object | ExternalFlow.cs:345:18:345:29 | call to method GetValue | $@ | ExternalFlow.cs:343:21:343:32 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:375:18:375:19 | access to local variable o1 | ExternalFlow.cs:373:23:373:34 | object creation of type Object : Object | ExternalFlow.cs:375:18:375:19 | access to local variable o1 | $@ | ExternalFlow.cs:373:23:373:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:378:18:378:19 | access to local variable o2 | ExternalFlow.cs:373:23:373:34 | object creation of type Object : Object | ExternalFlow.cs:378:18:378:19 | access to local variable o2 | $@ | ExternalFlow.cs:373:23:373:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:385:18:385:19 | access to local variable o1 | ExternalFlow.cs:383:23:383:34 | object creation of type Object : Object | ExternalFlow.cs:385:18:385:19 | access to local variable o1 | $@ | ExternalFlow.cs:383:23:383:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:388:18:388:19 | access to local variable o2 | ExternalFlow.cs:383:23:383:34 | object creation of type Object : Object | ExternalFlow.cs:388:18:388:19 | access to local variable o2 | $@ | ExternalFlow.cs:383:23:383:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:396:18:396:19 | access to local variable o1 | ExternalFlow.cs:393:23:393:34 | object creation of type Object : Object | ExternalFlow.cs:396:18:396:19 | access to local variable o1 | $@ | ExternalFlow.cs:393:23:393:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:404:18:404:19 | access to local variable o1 | ExternalFlow.cs:401:23:401:34 | object creation of type Object : Object | ExternalFlow.cs:404:18:404:19 | access to local variable o1 | $@ | ExternalFlow.cs:401:23:401:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:411:18:411:19 | access to local variable o1 | ExternalFlow.cs:409:23:409:34 | object creation of type Object : Object | ExternalFlow.cs:411:18:411:19 | access to local variable o1 | $@ | ExternalFlow.cs:409:23:409:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:414:18:414:19 | access to local variable o2 | ExternalFlow.cs:409:23:409:34 | object creation of type Object : Object | ExternalFlow.cs:414:18:414:19 | access to local variable o2 | $@ | ExternalFlow.cs:409:23:409:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:421:18:421:19 | access to local variable o1 | ExternalFlow.cs:419:23:419:34 | object creation of type Object : Object | ExternalFlow.cs:421:18:421:19 | access to local variable o1 | $@ | ExternalFlow.cs:419:23:419:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:424:18:424:19 | access to local variable o2 | ExternalFlow.cs:419:23:419:34 | object creation of type Object : Object | ExternalFlow.cs:424:18:424:19 | access to local variable o2 | $@ | ExternalFlow.cs:419:23:419:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:432:18:432:19 | access to local variable o1 | ExternalFlow.cs:429:23:429:34 | object creation of type Object : Object | ExternalFlow.cs:432:18:432:19 | access to local variable o1 | $@ | ExternalFlow.cs:429:23:429:34 | object creation of type Object : Object | object creation of type Object : Object | +| ExternalFlow.cs:440:18:440:19 | access to local variable o1 | ExternalFlow.cs:437:23:437:34 | object creation of type Object : Object | ExternalFlow.cs:440:18:440:19 | access to local variable o1 | $@ | ExternalFlow.cs:437:23:437:34 | object creation of type Object : Object | object creation of type Object : Object | diff --git a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.ext.yml b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.ext.yml index a582a581cf12..3a4d5bcd91b8 100644 --- a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.ext.yml +++ b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.ext.yml @@ -45,6 +45,14 @@ extensions: - ["My.Qltest", "K", false, "GetMyFieldOnSyntheticField", "()", "", "Argument[this].SyntheticField[My.Qltest.K.MySyntheticField2].Field[My.Qltest.K.MyField]", "ReturnValue", "value", "manual"] - ["My.Qltest", "Library", false, "SetValue", "(System.Object)", "", "Argument[0]", "Argument[this].SyntheticField[X]", "value", "dfc-generated"] - ["My.Qltest", "Library", false, "GetValue", "()", "", "Argument[this].SyntheticField[X]", "ReturnValue", "value", "dfc-generated"] + - ["My.Qltest", "TestExtensions+extension(Object)", false, "Method1", "(System.Object)", "", "Argument[0]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(Object)", false, "StaticMethod1", "(System.Object)", "", "Argument[0]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(Object)", false, "get_Property1", "(System.Object)", "", "Argument[0].SyntheticField[TestExtensions.Property1]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(Object)", false, "set_Property1", "(System.Object,System.Object)", "", "Argument[1]", "Argument[0].SyntheticField[TestExtensions.Property1]", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(T)", false, "GenericMethod1", "(T)", "", "Argument[0]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(T)", false, "GenericStaticMethod1", "(T)", "", "Argument[0]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(T)", false, "get_GenericProperty1", "(T)", "", "Argument[0].SyntheticField[TestExtensions.GenericProperty1]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(T)", false, "set_GenericProperty1", "(T,T)", "", "Argument[1]", "Argument[0].SyntheticField[TestExtensions.GenericProperty1]", "value", "manual"] - addsTo: pack: codeql/csharp-all From 02e4a8b6f72cf55416074c90b86e2e52fe22bf60 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Thu, 5 Feb 2026 15:52:43 +0100 Subject: [PATCH 326/433] C#: Add change-note. --- csharp/ql/lib/change-notes/2026-02-05-extension-types.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 csharp/ql/lib/change-notes/2026-02-05-extension-types.md diff --git a/csharp/ql/lib/change-notes/2026-02-05-extension-types.md b/csharp/ql/lib/change-notes/2026-02-05-extension-types.md new file mode 100644 index 000000000000..c3f1a21a5eda --- /dev/null +++ b/csharp/ql/lib/change-notes/2026-02-05-extension-types.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* C# 14: Added support for `extension` members in the extractor, QL library, data flow, and Models as Data, covering extension methods, properties, and operators. From 2dc7576232e4419190d82493b3ad76c208fa5450 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 26 Jan 2026 14:47:25 +0100 Subject: [PATCH 327/433] Rust: Rework call disambiguation logic --- .../typeinference/FunctionOverloading.qll | 138 +++++-- .../internal/typeinference/FunctionType.qll | 138 ++++--- .../internal/typeinference/TypeInference.qll | 338 ++++++++++-------- .../internal/typeinference/TypeMention.qll | 31 +- .../PathResolutionConsistency.expected | 3 - .../library-tests/path-resolution/main.rs | 6 +- .../PathResolutionConsistency.expected | 7 +- .../test/library-tests/type-inference/main.rs | 6 +- .../type-inference/overloading.rs | 28 +- .../type-inference/type-inference.expected | 18 +- .../PathResolutionConsistency.expected | 2 +- .../typeinference/internal/TypeInference.qll | 7 +- shared/util/codeql/util/UnboundList.qll | 31 +- 13 files changed, 496 insertions(+), 257 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll index e1da3352d0cd..326a4cf09ef9 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll @@ -77,32 +77,23 @@ pragma[nomagic] private predicate implHasSibling(ImplItemNode impl, Trait trait) { implSiblings(trait, impl, _) } /** - * Holds if type parameter `tp` of `trait` occurs in the function `f` with the name - * `functionName` at position `pos` and path `path`. - * - * Note that `pos` can also be the special `return` position, which is sometimes - * needed to disambiguate associated function calls like `Default::default()` - * (in this case, `tp` is the special `Self` type parameter). + * Holds if `f` is a function declared inside `trait`, and the type of `f` at + * `pos` and `path` is `traitTp`, which is a type parameter of `trait`. */ -bindingset[trait] -pragma[inline_late] +pragma[nomagic] predicate traitTypeParameterOccurrence( TraitItemNode trait, Function f, string functionName, FunctionPosition pos, TypePath path, - TypeParameter tp + TypeParameter traitTp ) { - f = trait.getASuccessor(functionName) and - tp = getAssocFunctionTypeAt(f, trait, pos, path) and - tp = trait.(TraitTypeAbstraction).getATypeParameter() + f = trait.getAssocItem(functionName) and + traitTp = getAssocFunctionTypeInclNonMethodSelfAt(f, trait, pos, path) and + traitTp = trait.(TraitTypeAbstraction).getATypeParameter() } -/** - * Holds if resolving the function `f` in `impl` with the name `functionName` - * requires inspecting the type of applied _arguments_ at position `pos` in - * order to determine whether it is the correct resolution. - */ pragma[nomagic] -predicate functionResolutionDependsOnArgument( - ImplItemNode impl, Function f, FunctionPosition pos, TypePath path, Type type +private predicate functionResolutionDependsOnArgumentCand( + ImplItemNode impl, Function f, string functionName, TypeParameter traitTp, FunctionPosition pos, + TypePath path ) { /* * As seen in the example below, when an implementation has a sibling for a @@ -129,11 +120,114 @@ predicate functionResolutionDependsOnArgument( * method. In that case we will still resolve several methods. */ - exists(TraitItemNode trait, string functionName | + exists(TraitItemNode trait | implHasSibling(impl, trait) and - traitTypeParameterOccurrence(trait, _, functionName, pos, path, _) and - type = getAssocFunctionTypeAt(f, impl, pos, path) and + traitTypeParameterOccurrence(trait, _, functionName, pos, path, traitTp) and f = impl.getASuccessor(functionName) and + not pos.isSelf() + ) +} + +private predicate functionResolutionDependsOnPositionalArgumentCand( + ImplItemNode impl, Function f, string functionName, TypeParameter traitTp +) { + exists(FunctionPosition pos | + functionResolutionDependsOnArgumentCand(impl, f, functionName, traitTp, pos, _) and + pos.isPosition() + ) +} + +pragma[nomagic] +private Type getAssocFunctionNonTypeParameterTypeAt( + ImplItemNode impl, Function f, FunctionPosition pos, TypePath path +) { + result = getAssocFunctionTypeInclNonMethodSelfAt(f, impl, pos, path) and + not result instanceof TypeParameter +} + +/** + * Holds if `f` inside `impl` has a sibling implementation inside `sibling`, where + * those two implementations agree on the instantiation of `traitTp`, which occurs + * in a positional position inside `f`. + */ +pragma[nomagic] +private predicate hasEquivalentPositionalSibling( + ImplItemNode impl, ImplItemNode sibling, Function f, TypeParameter traitTp +) { + exists(string functionName, FunctionPosition pos, TypePath path | + functionResolutionDependsOnArgumentCand(impl, f, functionName, traitTp, pos, path) and pos.isPosition() + | + exists(Function f1 | + implSiblings(_, impl, sibling) and + f1 = sibling.getASuccessor(functionName) + | + forall(TypePath path0, Type t | + t = getAssocFunctionNonTypeParameterTypeAt(impl, f, pos, path0) and + path = path0.getAPrefixOrSelf() + | + t = getAssocFunctionNonTypeParameterTypeAt(sibling, f1, pos, path0) + ) and + forall(TypePath path0, Type t | + t = getAssocFunctionNonTypeParameterTypeAt(sibling, f1, pos, path0) and + path = path0.getAPrefixOrSelf() + | + t = getAssocFunctionNonTypeParameterTypeAt(impl, f, pos, path0) + ) + ) + ) +} + +/** + * Holds if resolving the function `f` in `impl` requires inspecting the type + * of applied _arguments_ or possibly knowing the return type. + * + * `traitTp` is a type parameter of the trait being implemented by `impl`, and + * we need to check that the type of `f` corresponding to `traitTp` is satisfied + * at any one of the positions `pos` in which that type occurs in `f`. + * + * Type parameters that only occur in return positions are only included when + * all other type parameters that occur in a positional position are insufficient + * to disambiguate. + * + * Example: + * + * ```rust + * trait Trait1 { + * fn f(self, x: T1) -> T1; + * } + * + * impl Trait1 for i32 { + * fn f(self, x: i32) -> i32 { 0 } // f1 + * } + * + * impl Trait1 for i32 { + * fn f(self, x: i64) -> i64 { 0 } // f2 + * } + * ``` + * + * The type for `T1` above occurs in both a positional position and a return position + * in `f`, so both may be used to disambiguate between `f1` and `f2`. That is, `f(0i32)` + * is sufficient to resolve to `f1`, and so is `let y: i64 = f(Default::default())`. + */ +pragma[nomagic] +predicate functionResolutionDependsOnArgument( + ImplItemNode impl, Function f, TypeParameter traitTp, FunctionPosition pos +) { + exists(string functionName | + functionResolutionDependsOnArgumentCand(impl, f, functionName, traitTp, pos, _) + | + if functionResolutionDependsOnPositionalArgumentCand(impl, f, functionName, traitTp) + then any() + else + // `traitTp` only occurs in return position; check that it is indeed needed for disambiguation + exists(ImplItemNode sibling | + implSiblings(_, impl, sibling) and + forall(TypeParameter otherTraitTp | + functionResolutionDependsOnPositionalArgumentCand(impl, f, functionName, otherTraitTp) + | + hasEquivalentPositionalSibling(impl, sibling, f, otherTraitTp) + ) + ) ) } diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll index 02c0b45c8e9b..aeb186c0cdcb 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll @@ -82,7 +82,9 @@ private newtype TAssocFunctionType = // through `i`. This ensures that `parent` is either a supertrait of `i` or // `i` in an `impl` block implementing `parent`. (parent = i or BaseTypes::rootTypesSatisfaction(_, TTrait(parent), i, _, _)) and - exists(pos.getTypeMention(f)) + // We always include the `self` position, even for non-methods, where it is used + // to match type qualifiers against the `impl` or trait type, such as in `Vec::new`. + (exists(pos.getTypeMention(f)) or pos.isSelf()) } bindingset[abs, constraint, tp] @@ -116,6 +118,22 @@ Type getAssocFunctionTypeAt(Function f, ImplOrTraitItemNode i, FunctionPosition ) } +/** + * Same as `getAssocFunctionTypeAt`, but also includes types at the `self` position + * for non-methods. + */ +pragma[nomagic] +Type getAssocFunctionTypeInclNonMethodSelfAt( + Function f, ImplOrTraitItemNode i, FunctionPosition pos, TypePath path +) { + result = getAssocFunctionTypeAt(f, i, pos, path) + or + f = i.getASuccessor(_) and + not f.hasSelfParam() and + pos.isSelf() and + result = resolveImplOrTraitType(i, path) +} + /** * The type of an associated function at a given position, when its implicit * `Self` type parameter is specialized to a given trait or `impl` block. @@ -174,7 +192,7 @@ class AssocFunctionType extends MkAssocFunctionType { Type getTypeAt(TypePath path) { exists(Function f, FunctionPosition pos, ImplOrTraitItemNode i, Type t | this.appliesTo(f, i, pos) and - t = getAssocFunctionTypeAt(f, i, pos, path) + t = getAssocFunctionTypeInclNonMethodSelfAt(f, i, pos, path) | not t instanceof SelfTypeParameter and result = t @@ -183,16 +201,19 @@ class AssocFunctionType extends MkAssocFunctionType { ) } - private TypeMention getTypeMention() { - exists(Function f, FunctionPosition pos | - this.appliesTo(f, _, pos) and + private AstNode getIdentifyingNode() { + exists(Function f, ImplOrTraitItemNode i, FunctionPosition pos | this.appliesTo(f, i, pos) | result = pos.getTypeMention(f) + or + pos.isSelf() and + not f.hasSelfParam() and + result = [i.(Impl).getSelfTy().(AstNode), i.(Trait).getName()] ) } - string toString() { result = this.getTypeMention().toString() } + string toString() { result = this.getIdentifyingNode().toString() } - Location getLocation() { result = this.getTypeMention().getLocation() } + Location getLocation() { result = this.getIdentifyingNode().getLocation() } } pragma[nomagic] @@ -294,10 +315,15 @@ module ArgIsInstantiationOf< */ signature module ArgsAreInstantiationsOfInputSig { /** - * Holds if types need to be matched against the type `t` at position `pos` of - * `f` inside `i`. + * Holds if `f` inside `i` needs to have the type corresponding to type parameter + * `tp` checked. + * + * If `i` is an inherent implementation, `tp` is a type parameter of the type being + * implemented, otherwise `tp` is a type parameter of the trait (being implemented). + * + * `pos` is one of the positions in `f` in which the relevant type occours. */ - predicate toCheck(ImplOrTraitItemNode i, Function f, FunctionPosition pos, AssocFunctionType t); + predicate toCheck(ImplOrTraitItemNode i, Function f, TypeParameter tp, FunctionPosition pos); /** A call whose argument types are to be checked. */ class Call { @@ -318,23 +344,27 @@ signature module ArgsAreInstantiationsOfInputSig { */ module ArgsAreInstantiationsOf { pragma[nomagic] - private predicate toCheckRanked(ImplOrTraitItemNode i, Function f, FunctionPosition pos, int rnk) { - Input::toCheck(i, f, pos, _) and - pos = - rank[rnk + 1](FunctionPosition pos0, int j | - Input::toCheck(i, f, pos0, _) and - ( - j = pos0.asPosition() - or - pos0.isSelf() and j = -1 - or - pos0.isReturn() and j = -2 - ) + private predicate toCheckRanked( + ImplOrTraitItemNode i, Function f, TypeParameter tp, FunctionPosition pos, int rnk + ) { + Input::toCheck(i, f, tp, pos) and + tp = + rank[rnk + 1](TypeParameter tp0, int j | + Input::toCheck(i, f, tp0, _) and + j = getTypeParameterId(tp0) | - pos0 order by j + tp0 order by j ) } + pragma[nomagic] + private predicate toCheck( + ImplOrTraitItemNode i, Function f, TypeParameter tp, FunctionPosition pos, AssocFunctionType t + ) { + Input::toCheck(i, f, tp, pos) and + t.appliesTo(f, i, pos) + } + private newtype TCallAndPos = MkCallAndPos(Input::Call call, FunctionPosition pos) { exists(call.getArgType(pos, _)) } @@ -356,26 +386,26 @@ module ArgsAreInstantiationsOf { string toString() { result = call.toString() + " [arg " + pos + "]" } } + pragma[nomagic] + private predicate potentialInstantiationOf0( + CallAndPos cp, Input::Call call, TypeParameter tp, FunctionPosition pos, Function f, + TypeAbstraction abs, AssocFunctionType constraint + ) { + cp = MkCallAndPos(call, pragma[only_bind_into](pos)) and + call.hasTargetCand(abs, f) and + toCheck(abs, f, tp, pragma[only_bind_into](pos), constraint) + } + private module ArgIsInstantiationOfToIndexInput implements IsInstantiationOfInputSig { - pragma[nomagic] - private predicate potentialInstantiationOf0( - CallAndPos cp, Input::Call call, FunctionPosition pos, int rnk, Function f, - TypeAbstraction abs, AssocFunctionType constraint - ) { - cp = MkCallAndPos(call, pragma[only_bind_into](pos)) and - call.hasTargetCand(abs, f) and - toCheckRanked(abs, f, pragma[only_bind_into](pos), rnk) and - Input::toCheck(abs, f, pragma[only_bind_into](pos), constraint) - } - pragma[nomagic] predicate potentialInstantiationOf( CallAndPos cp, TypeAbstraction abs, AssocFunctionType constraint ) { - exists(Input::Call call, int rnk, Function f | - potentialInstantiationOf0(cp, call, _, rnk, f, abs, constraint) + exists(Input::Call call, TypeParameter tp, FunctionPosition pos, int rnk, Function f | + potentialInstantiationOf0(cp, call, tp, pos, f, abs, constraint) and + toCheckRanked(abs, f, tp, pos, rnk) | rnk = 0 or @@ -383,9 +413,7 @@ module ArgsAreInstantiationsOf { ) } - predicate relevantConstraint(AssocFunctionType constraint) { - Input::toCheck(_, _, _, constraint) - } + predicate relevantConstraint(AssocFunctionType constraint) { toCheck(_, _, _, _, constraint) } } private module ArgIsInstantiationOfToIndex = @@ -398,39 +426,63 @@ module ArgsAreInstantiationsOf { exists(FunctionPosition pos | ArgIsInstantiationOfToIndex::argIsInstantiationOf(MkCallAndPos(call, pos), i, _) and call.hasTargetCand(i, f) and - toCheckRanked(i, f, pos, rnk) + toCheckRanked(i, f, _, pos, rnk) + | + rnk = 0 + or + argsAreInstantiationsOfToIndex(call, i, f, rnk - 1) ) } /** * Holds if all arguments of `call` have types that are instantiations of the * types of the corresponding parameters of `f` inside `i`. + * + * TODO: Check type parameter constraints as well. */ pragma[nomagic] predicate argsAreInstantiationsOf(Input::Call call, ImplOrTraitItemNode i, Function f) { exists(int rnk | argsAreInstantiationsOfToIndex(call, i, f, rnk) and - rnk = max(int r | toCheckRanked(i, f, _, r)) + rnk = max(int r | toCheckRanked(i, f, _, _, r)) ) } + private module ArgsAreNotInstantiationOfInput implements + IsInstantiationOfInputSig + { + pragma[nomagic] + predicate potentialInstantiationOf( + CallAndPos cp, TypeAbstraction abs, AssocFunctionType constraint + ) { + potentialInstantiationOf0(cp, _, _, _, _, abs, constraint) + } + + predicate relevantConstraint(AssocFunctionType constraint) { toCheck(_, _, _, _, constraint) } + } + + private module ArgsAreNotInstantiationOf = + ArgIsInstantiationOf; + pragma[nomagic] private predicate argsAreNotInstantiationsOf0( Input::Call call, FunctionPosition pos, ImplOrTraitItemNode i ) { - ArgIsInstantiationOfToIndex::argIsNotInstantiationOf(MkCallAndPos(call, pos), i, _, _) + ArgsAreNotInstantiationOf::argIsNotInstantiationOf(MkCallAndPos(call, pos), i, _, _) } /** * Holds if _some_ argument of `call` has a type that is not an instantiation of the * type of the corresponding parameter of `f` inside `i`. + * + * TODO: Check type parameter constraints as well. */ pragma[nomagic] predicate argsAreNotInstantiationsOf(Input::Call call, ImplOrTraitItemNode i, Function f) { exists(FunctionPosition pos | argsAreNotInstantiationsOf0(call, pos, i) and call.hasTargetCand(i, f) and - Input::toCheck(i, f, pos, _) + Input::toCheck(i, f, _, pos) ) } } diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index ca63c433feb8..3e9c823c570c 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -202,6 +202,8 @@ import M1 predicate getTypePathLimit = Input::getTypePathLimit/0; +predicate getTypeParameterId = Input::getTypeParameterId/1; + class TypePath = M1::TypePath; module TypePath = M1::TypePath; @@ -284,11 +286,13 @@ private class FunctionDeclaration extends Function { } pragma[nomagic] - Type getParameterType(ImplOrTraitItemNodeOption i, FunctionPosition pos, TypePath path) { + Type getParameterTypeInclNonMethodSelf( + ImplOrTraitItemNodeOption i, FunctionPosition pos, TypePath path + ) { i = parent and ( not pos.isReturn() and - result = getAssocFunctionTypeAt(this, i.asSome(), pos, path) + result = getAssocFunctionTypeInclNonMethodSelfAt(this, i.asSome(), pos, path) or i.isNone() and result = this.getParam(pos.asPosition()).getTypeRepr().(TypeMention).getTypeAt(path) @@ -320,13 +324,6 @@ private class FunctionDeclaration extends Function { else result = this.resolveRetType(i, path) } - Type getDeclaredType(ImplOrTraitItemNodeOption i, FunctionPosition pos, TypePath path) { - result = this.getParameterType(i, pos, path) - or - pos.isReturn() and - result = this.getReturnType(i, path) - } - string toStringExt(ImplOrTraitItemNode i) { i = parent.asSome() and if this = i.getAnAssocItem() @@ -1056,14 +1053,29 @@ private Path getCallExprPathQualifier(CallExpr ce) { * Gets the type qualifier of function call `ce`, if any. * * For example, the type qualifier of `Foo::::default()` is `Foo::`, - * but only when `Foo` is not a trait. + * but only when `Foo` is not a trait. The type qualifier of `::baz()` + * is `Foo`. + * + * `isDefaultTypeArg` indicates whether the returned type is a default type + * argument, for example in `Vec::new()` the default type for the type parameter + * `A` of `Vec` is `Global`. */ pragma[nomagic] -private Type getCallExprTypeQualifier(CallExpr ce, TypePath path) { - exists(TypeMention tm | - tm = getCallExprPathQualifier(ce) and +private Type getCallExprTypeQualifier(CallExpr ce, TypePath path, boolean isDefaultTypeArg) { + exists(Path p, TypeMention tm | + p = getCallExprPathQualifier(ce) and + tm = [p.(AstNode), p.getSegment().getTypeRepr()] + | result = tm.getTypeAt(path) and - not resolvePath(tm) instanceof Trait + not resolvePath(tm) instanceof Trait and + isDefaultTypeArg = false + or + exists(TypeParameter tp, TypePath suffix | + result = + tm.(NonAliasPathTypeMention).getDefaultTypeForTypeParameterInNonAnnotationAt(tp, suffix) and + path = TypePath::cons(tp, suffix) and + isDefaultTypeArg = true + ) ) } @@ -1146,7 +1158,7 @@ private module ContextTyping { ) and not ( tp instanceof TSelfTypeParameter and - exists(getCallExprTypeQualifier(this, _)) + exists(getCallExprTypeQualifier(this, _, _)) ) ) } @@ -1170,15 +1182,10 @@ private module ContextTyping { */ module CheckContextTyping { pragma[nomagic] - private Type inferCallTypeFromContextCand(AstNode n, TypePath path, TypePath prefix) { + private Type inferCallTypeFromContextCand(AstNode n, TypePath prefix, TypePath path) { result = inferCallType(n, false, path) and hasUnknownType(n) and - prefix = path - or - exists(TypePath mid | - result = inferCallTypeFromContextCand(n, path, mid) and - mid.isSnoc(prefix, _) - ) + prefix = path.getAPrefixOrSelf() } pragma[nomagic] @@ -1186,7 +1193,7 @@ private module ContextTyping { result = inferCallType(n, true, path) or exists(TypePath prefix | - result = inferCallTypeFromContextCand(n, path, prefix) and + result = inferCallTypeFromContextCand(n, prefix, path) and hasUnknownTypeAt(n, prefix) ) } @@ -1283,13 +1290,6 @@ private class BorrowKind extends TBorrowKind { } } -// for now, we do not handle ambiguous targets when one of the types is itself -// a constrained type parameter; we should be checking the constraints in this case -private predicate typeCanBeUsedForDisambiguation(Type t) { - not t instanceof TypeParameter or - t.(TypeParamTypeParameter).getTypeParam() = any(TypeParam tp | not tp.hasTypeBound()) -} - /** * Provides logic for resolving calls to methods. * @@ -1420,9 +1420,7 @@ private module MethodResolution { private module MethodTraitIsVisible = TraitIsVisible; - private predicate methodCallVisibleTraitCandidate(MethodCall mc, Trait trait) { - MethodTraitIsVisible::traitIsVisible(mc, trait) - } + private predicate methodCallVisibleTraitCandidate = MethodTraitIsVisible::traitIsVisible/2; bindingset[mc, impl] pragma[inline_late] @@ -1947,9 +1945,23 @@ private module MethodResolution { forall(ItemNode i | i = CallExprImpl::getResolvedFunction(this) | i instanceof Method) } + bindingset[this, f] + pragma[inline_late] + private predicate hasTypeQualifiedCandidateFilter(Function f, ImplItemNode impl) { + f = impl.getAnAssocItem() + or + exists(TraitItemNode trait | + f = trait.getAnAssocItem() and + methodCallVisibleTraitCandidate(this, trait) and + impl.resolveTraitTy() = trait + ) + } + /** * Holds if this call has a type qualifier, and we are able to resolve, - * using path resolution, the method to a member of `impl`. + * using path resolution, the method to a member of `impl` or the trait + * being implemented by `impl` (when this call os of the kind + * `::f()`). * * When this is the case, we still want to check that the type qualifier * is an instance of the type being implemented, which is done in @@ -1957,8 +1969,11 @@ private module MethodResolution { */ pragma[nomagic] predicate hasTypeQualifiedCandidate(ImplItemNode impl) { - exists(getCallExprTypeQualifier(this, _)) and - CallExprImpl::getResolvedFunction(this) = impl.getADescendant() + exists(Function f | + exists(getCallExprTypeQualifier(this, _, _)) and + f = CallExprImpl::getResolvedFunction(this) and + this.hasTypeQualifiedCandidateFilter(f, impl) + ) } pragma[nomagic] @@ -1976,7 +1991,13 @@ private module MethodResolution { // needed for `TypeQualifierIsInstantiationOfImplSelfInput` Type getTypeAt(TypePath path) { - result = substituteLookupTraits(getCallExprTypeQualifier(this, path)) + result = substituteLookupTraits(getCallExprTypeQualifier(this, path, _)) + } + + pragma[nomagic] + predicate hasNoInherentTarget() { + // `_` is fine below, because auto-deref/borrow is not supported + MkMethodCallCand(this, _, _).(MethodCallCand).hasNoInherentTarget() } override predicate supportsAutoDerefAndBorrow() { none() } @@ -2107,6 +2128,8 @@ private module MethodResolution { */ pragma[nomagic] predicate hasNoInherentTarget() { + mc_.hasTrait() + or exists(TypePath strippedTypePath, Type strippedType, string name, int arity | this.hasSignature(_, strippedTypePath, strippedType, name, arity) and forall(Impl i | @@ -2119,7 +2142,7 @@ private module MethodResolution { } pragma[nomagic] - private predicate typeQualifierIsInstantiationOf(ImplOrTraitItemNode i) { + private predicate typeQualifierIsInstantiationOf(ImplItemNode i) { TypeQualifierIsInstantiationOfImplSelf::isInstantiationOf(mc_, i, _) } @@ -2145,7 +2168,7 @@ private module MethodResolution { pragma[nomagic] Method resolveCallTarget(ImplOrTraitItemNode i) { result = this.resolveCallTargetCand(i) and - not FunctionOverloading::functionResolutionDependsOnArgument(i, _, _, _, _) + not FunctionOverloading::functionResolutionDependsOnArgument(i, result, _, _) or MethodArgsAreInstantiationsOf::argsAreInstantiationsOf(this, i, result) } @@ -2343,7 +2366,7 @@ private module MethodResolution { then // inherent methods take precedence over trait methods, so only allow // trait methods when there are no matching inherent methods - MkMethodCallCand(ce, _, _).(MethodCallCand).hasNoInherentTarget() + ce.hasNoInherentTarget() else any() } @@ -2379,16 +2402,15 @@ private module MethodResolution { * types of parameters, when needed to disambiguate the call. */ private module MethodArgsAreInstantiationsOfInput implements ArgsAreInstantiationsOfInputSig { - predicate toCheck(ImplOrTraitItemNode i, Function f, FunctionPosition pos, AssocFunctionType t) { - exists(TypePath path, Type t0 | - FunctionOverloading::functionResolutionDependsOnArgument(i, f, pos, path, t0) and - t.appliesTo(f, i, pos) and - typeCanBeUsedForDisambiguation(t0) - ) + predicate toCheck(ImplOrTraitItemNode i, Function f, TypeParameter traitTp, FunctionPosition pos) { + FunctionOverloading::functionResolutionDependsOnArgument(i, f, traitTp, pos) } class Call extends MethodCallCand { Type getArgType(FunctionPosition pos, TypePath path) { + result = mc_.getArgumentTypeAt(pos.asArgumentPosition(), path) + or + pos.isReturn() and result = inferType(mc_.getNodeAt(pos), path) } @@ -2433,7 +2455,10 @@ private module MethodCallMatchingInput implements MatchingWithEnvironmentInputSi } Type getDeclaredType(DeclarationPosition dpos, TypePath path) { - result = m.getDeclaredType(someParent, dpos, path) + result = m.getParameterTypeInclNonMethodSelf(someParent, dpos, path) + or + dpos.isReturn() and + result = m.getReturnType(someParent, path) } string toString() { result = m.toStringExt(parent) } @@ -2645,38 +2670,47 @@ private predicate inferMethodCallType = */ private module NonMethodResolution { /** - * Holds if the associated function `implFunction` at `impl` implements - * `traitFunction`, which belongs to `trait`, and resolving the function - * `implFunction` requires inspecting the type at position `pos` in order - * to determine whether it is the correct resolution. + * Holds if resolving the function `implFunction` in `impl` requires inspecting + * the type of applied _arguments_ or possibly knowing the return type. * - * `type` is the type at `pos` of `implFunction` which mathces a type parameter of - * `traitFunction` at `pos`. + * `traitTp` is a type parameter of the trait being implemented by `impl`, and + * we need to check that the type of `f` corresponding to `traitTp` is satisfied + * at any one of the positions `pos` in which that type occurs in `f` (at `path`). + * + * As for method resolution, we always check the type being implemented (corresponding + * to `traitTp` being the special `Self` type parameter). */ pragma[nomagic] - private predicate traitFunctionDependsOnPos( - TraitItemNode trait, NonMethodFunction traitFunction, FunctionPosition pos, Type type, - ImplItemNode impl, NonMethodFunction implFunction + private predicate traitFunctionResolutionDependsOnArgument( + TraitItemNode trait, NonMethodFunction traitFunction, FunctionPosition pos, ImplItemNode impl, + NonMethodFunction implFunction, TypePath path, TypeParameter traitTp ) { - exists(TypePath path | - type = getAssocFunctionTypeAt(implFunction, impl, pos, path) and - implFunction.implements(traitFunction) and - FunctionOverloading::traitTypeParameterOccurrence(trait, traitFunction, _, pos, path, _) - | - if pos.isReturn() - then - // We only check that the context of the call provides relevant type information - // when no argument can - not exists(FunctionPosition pos0 | - FunctionOverloading::traitTypeParameterOccurrence(trait, traitFunction, _, pos0, _, _) and - not pos0.isReturn() - or - FunctionOverloading::functionResolutionDependsOnArgument(impl, implFunction, pos0, _, _) - ) - else any() + implFunction = impl.getAnAssocItem() and + implFunction.implements(traitFunction) and + FunctionOverloading::traitTypeParameterOccurrence(trait, traitFunction, _, pos, path, traitTp) and + ( + traitTp = TSelfTypeParameter(trait) + or + FunctionOverloading::functionResolutionDependsOnArgument(impl, implFunction, traitTp, pos) ) } + pragma[nomagic] + private predicate functionResolutionDependsOnArgument( + ImplItemNode impl, NonMethodFunction f, FunctionPosition pos, TypeParameter tp + ) { + traitFunctionResolutionDependsOnArgument(_, _, pos, impl, f, _, tp) + or + // For inherent implementations of generic types, we also need to check the type being + // implemented. We arbitrarily choose the first type parameter of the type being implemented + // to represent this case. + f = impl.getASuccessor(_) and + not impl.(Impl).hasTrait() and + tp = TTypeParamTypeParameter(impl.resolveSelfTy().getTypeParam(0)) and + not f.hasSelfParam() and + pos.isSelf() + } + pragma[nomagic] private predicate functionInfoBlanketLikeRelevantPos( NonMethodFunction f, string name, int arity, ImplItemNode impl, Trait trait, @@ -2738,6 +2772,16 @@ private module NonMethodResolution { not result.(Function).hasSelfParam() } + /** + * Gets the associated function that this function call resolves to using path + * resolution, if any. + */ + pragma[nomagic] + NonMethodFunction getPathResolutionResolved(ImplOrTraitItemNode i) { + result = this.getPathResolutionResolved() and + result = i.getAnAssocItem() + } + /** * Gets the blanket function that this call may resolve to, if any. */ @@ -2756,14 +2800,6 @@ private module NonMethodResolution { /** Holds if this call targets a trait. */ predicate hasTrait() { exists(this.getTrait()) } - pragma[nomagic] - NonMethodFunction resolveCallTargetNonBlanketCand(ImplItemNode i) { - not this.hasTrait() and - result = this.getPathResolutionResolved() and - result = i.getASuccessor(_) and - FunctionOverloading::functionResolutionDependsOnArgument(_, result, _, _, _) - } - AstNode getNodeAt(FunctionPosition pos) { result = this.getSyntacticArgument(pos.asArgumentPosition()) or @@ -2775,7 +2811,16 @@ private module NonMethodResolution { } pragma[nomagic] - predicate resolveCallTargetBlanketLikeCandidate( + NonMethodFunction resolveCallTargetNonBlanketCand(ImplItemNode i) { + not this.hasTrait() and + result = this.getPathResolutionResolved() and + result = i.getASuccessor(_) and + not exists(this.resolveCallTargetViaPathResolution()) and + functionResolutionDependsOnArgument(i, result, _, _) + } + + pragma[nomagic] + predicate resolveCallTargetBlanketLikeCand( ImplItemNode impl, FunctionPosition pos, TypePath blanketPath, TypeParam blanketTypeParam ) { exists(string name, int arity, Trait trait, AssocFunctionType t | @@ -2784,6 +2829,10 @@ private module NonMethodResolution { functionInfoBlanketLikeRelevantPos(_, name, arity, impl, trait, pos, t, blanketPath, blanketTypeParam) and BlanketTraitIsVisible::traitIsVisible(this, trait) + | + not this.hasTrait() + or + trait = this.getTrait() ) } @@ -2799,7 +2848,7 @@ private module NonMethodResolution { */ pragma[nomagic] predicate hasNoCompatibleNonBlanketTarget() { - this.resolveCallTargetBlanketLikeCandidate(_, _, _, _) and + this.resolveCallTargetBlanketLikeCand(_, _, _, _) and not exists(this.resolveCallTargetViaPathResolution()) and forall(ImplOrTraitItemNode i, Function f | this.(NonMethodArgsAreInstantiationsOfNonBlanketInput::Call).hasTargetCand(i, f) @@ -2815,7 +2864,7 @@ private module NonMethodResolution { ItemNode resolveCallTargetViaPathResolution() { not this.hasTrait() and result = this.getPathResolutionResolved() and - not FunctionOverloading::functionResolutionDependsOnArgument(_, result, _, _, _) + not functionResolutionDependsOnArgument(_, result, _, _) } /** @@ -2824,24 +2873,17 @@ private module NonMethodResolution { pragma[nomagic] NonMethodFunction resolveCallTargetViaTypeInference(ImplOrTraitItemNode i) { result = this.resolveCallTargetBlanketCand(i) and - not FunctionOverloading::functionResolutionDependsOnArgument(_, result, _, _, _) + not FunctionOverloading::functionResolutionDependsOnArgument(_, result, _, _) or NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOf(this, i, result) or NonMethodArgsAreInstantiationsOfNonBlanket::argsAreInstantiationsOf(this, i, result) } - - pragma[nomagic] - NonMethodFunction resolveTraitFunctionViaPathResolution(TraitItemNode trait) { - this.hasTrait() and - result = this.getPathResolutionResolved() and - result = trait.getASuccessor(_) - } } private newtype TCallAndBlanketPos = MkCallAndBlanketPos(NonMethodCall fc, FunctionPosition pos) { - fc.resolveCallTargetBlanketLikeCandidate(_, pos, _, _) + fc.resolveCallTargetBlanketLikeCand(_, pos, _, _) } /** A call tagged with a position. */ @@ -2867,7 +2909,7 @@ private module NonMethodResolution { ) { exists(NonMethodCall fc, FunctionPosition pos | fcp = MkCallAndBlanketPos(fc, pos) and - fc.resolveCallTargetBlanketLikeCandidate(impl, pos, blanketPath, blanketTypeParam) and + fc.resolveCallTargetBlanketLikeCand(impl, pos, blanketPath, blanketTypeParam) and // Only apply blanket implementations when no other implementations are possible; // this is to account for codebases that use the (unstable) specialization feature // (https://rust-lang.github.io/rfcs/1210-impl-specialization.html), as well as @@ -2907,41 +2949,30 @@ private module NonMethodResolution { private module ArgIsInstantiationOfBlanketParam = ArgIsInstantiationOf; + private Type getArgType( + NonMethodCall call, FunctionPosition pos, TypePath path, boolean isDefaultTypeArg + ) { + result = inferType(call.getNodeAt(pos), path) and + isDefaultTypeArg = false + or + result = getCallExprTypeQualifier(call, path, isDefaultTypeArg) and + pos.isSelf() + } + private module NonMethodArgsAreInstantiationsOfBlanketInput implements ArgsAreInstantiationsOfInputSig { - predicate toCheck(ImplOrTraitItemNode i, Function f, FunctionPosition pos, AssocFunctionType t) { - t.appliesTo(f, i, pos) and - exists(Type t0 | typeCanBeUsedForDisambiguation(t0) | - FunctionOverloading::functionResolutionDependsOnArgument(i, f, pos, _, t0) - or - traitFunctionDependsOnPos(_, _, pos, t0, i, f) - ) + predicate toCheck(ImplOrTraitItemNode i, Function f, TypeParameter tp, FunctionPosition pos) { + functionResolutionDependsOnArgument(i, f, pos, tp) } final class Call extends NonMethodCall { Type getArgType(FunctionPosition pos, TypePath path) { - result = inferType(this.getNodeAt(pos), path) - } - - predicate hasTraitResolvedCand(ImplOrTraitItemNode i, Function f) { - exists(TraitItemNode trait, NonMethodFunction resolved, ImplItemNode i1, Function f1 | - this.hasTraitResolved(trait, resolved) and - traitFunctionDependsOnPos(trait, resolved, _, _, i1, f1) - | - f = f1 and - i = i1 - or - f = resolved and - i = trait - ) + result = getArgType(this, pos, path, false) } predicate hasTargetCand(ImplOrTraitItemNode i, Function f) { f = this.resolveCallTargetBlanketCand(i) - or - this.hasTraitResolvedCand(i, f) and - BlanketImplementation::isBlanketLike(i, _, _) } } } @@ -2952,23 +2983,43 @@ private module NonMethodResolution { private module NonMethodArgsAreInstantiationsOfNonBlanketInput implements ArgsAreInstantiationsOfInputSig { - predicate toCheck(ImplOrTraitItemNode i, Function f, FunctionPosition pos, AssocFunctionType t) { - NonMethodArgsAreInstantiationsOfBlanketInput::toCheck(i, f, pos, t) + predicate toCheck(ImplOrTraitItemNode i, Function f, TypeParameter traitTp, FunctionPosition pos) { + functionResolutionDependsOnArgument(i, f, pos, traitTp) or - // match against the trait function itself - t.appliesTo(f, i, pos) and - exists(Trait trait | - FunctionOverloading::traitTypeParameterOccurrence(trait, f, _, pos, _, - TSelfTypeParameter(trait)) - ) + // Also match against the trait function itself + FunctionOverloading::traitTypeParameterOccurrence(i, f, _, pos, _, traitTp) and + traitTp = TSelfTypeParameter(i) } - class Call extends NonMethodArgsAreInstantiationsOfBlanketInput::Call { + class Call extends NonMethodCall { + Type getArgType(FunctionPosition pos, TypePath path) { + result = getArgType(this, pos, path, _) + } + predicate hasTargetCand(ImplOrTraitItemNode i, Function f) { f = this.resolveCallTargetNonBlanketCand(i) or - this.hasTraitResolvedCand(i, f) and - not BlanketImplementation::isBlanketLike(i, _, _) + exists(TraitItemNode trait, NonMethodFunction resolved, ImplItemNode i1, Function f1 | + this.hasTraitResolved(trait, resolved) and + traitFunctionResolutionDependsOnArgument(trait, resolved, _, i1, f1, _, _) and + not BlanketImplementation::isBlanketLike(i, _, _) + | + f = resolved and + i = trait + or + f = f1 and + i = i1 and + // Exclude functions where we cannot resolve all relevant type mentions; this allows + // for blanket implementations to be applied in those cases + forall(TypeParameter traitTp | + traitFunctionResolutionDependsOnArgument(trait, resolved, _, i1, f1, _, traitTp) + | + exists(FunctionPosition pos, TypePath path | + traitFunctionResolutionDependsOnArgument(trait, resolved, pos, i1, f1, path, traitTp) and + exists(getAssocFunctionTypeInclNonMethodSelfAt(f, i, pos, path)) + ) + ) + ) } } } @@ -3074,26 +3125,7 @@ private module NonMethodCallMatchingInput implements MatchingInputSig { } override Type getParameterType(DeclarationPosition dpos, TypePath path) { - // For associated functions, we may also need to match type arguments against - // the `Self` type. For example, in - // - // ```rust - // struct Foo(T); - // - // impl Foo { - // fn default() -> Self { - // Foo(Default::default()) - // } - // } - // - // Foo::::default(); - // ``` - // - // we need to match `i32` against the type parameter `T` of the `impl` block. - dpos.isSelf() and - result = resolveImplOrTraitType(i.asSome(), path) - or - result = f.getParameterType(i, dpos, path) + result = f.getParameterTypeInclNonMethodSelf(i, dpos, path) } override Type getReturnType(TypePath path) { result = f.getReturnType(i, path) } @@ -3138,7 +3170,7 @@ private module NonMethodCallMatchingInput implements MatchingInputSig { pragma[nomagic] Type getInferredType(AccessPosition apos, TypePath path) { apos.isSelf() and - result = getCallExprTypeQualifier(this, path) + result = getCallExprTypeQualifier(this, path, false) or result = inferType(this.getNodeAt(apos), path) } @@ -3150,8 +3182,6 @@ private module NonMethodCallMatchingInput implements MatchingInputSig { | f = this.resolveCallTargetViaTypeInference(i.asSome()) // mutual recursion; resolving some associated function calls requires resolving types or - f = this.resolveTraitFunctionViaPathResolution(i.asSome()) - or f = this.resolveCallTargetViaPathResolution() and f.isDirectlyFor(i) ) @@ -3172,6 +3202,12 @@ private module NonMethodCallMatchingInput implements MatchingInputSig { this.hasUnknownTypeAt(i.asSome(), f, pos, path) ) or + forex(ImplOrTraitItemNode i, NonMethodFunctionDeclaration f | + f = this.getPathResolutionResolved(i) + | + this.hasUnknownTypeAt(i, f, pos, path) + ) + or // Tuple declarations, such as `Result::Ok(...)`, may also be context typed exists(TupleLikeConstructor tc, TypeParameter tp | tc = this.resolveCallTargetViaPathResolution() and diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index 4bff45ba0275..a1177e55cc9e 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -210,8 +210,6 @@ private module MkTypeMention:: // $ item=i32 - Assoc(); // $ item=S3i32AssocFunc $ SPURIOUS: item=S3boolAssocFunc + Assoc(); // $ item=S3i32AssocFunc $ SPURIOUS: item=S3boolAssocFunc (the spurious target is later filtered away by type inference) S3:::: // $ item=bool - f1(); // $ item=S3boolf1 $ SPURIOUS: item=S3i32f1 + f1(); // $ item=S3boolf1 $ SPURIOUS: item=S3i32f1 (the spurious target is later filtered away by type inference) S3:::: // $ item=i32 - f1(); // $ item=S3i32f1 $ SPURIOUS: item=S3boolf1 + f1(); // $ item=S3i32f1 $ SPURIOUS: item=S3boolf1 (the spurious target is later filtered away by type inference) } } diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected index 2ee1f7c16a6e..734601169687 100644 --- a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected @@ -1,7 +1,4 @@ multipleResolvedTargets +| main.rs:2223:9:2223:31 | ... .my_add(...) | +| main.rs:2225:9:2225:29 | ... .my_add(...) | | main.rs:2723:13:2723:17 | x.f() | -| overloading.rs:269:22:269:30 | x.g(...) | -| overloading.rs:315:9:315:25 | ...::Assoc(...) | -| overloading.rs:316:9:316:26 | ...::Assoc(...) | -| overloading.rs:319:9:319:26 | ...::f(...) | -| overloading.rs:320:9:320:22 | ...::f(...) | diff --git a/rust/ql/test/library-tests/type-inference/main.rs b/rust/ql/test/library-tests/type-inference/main.rs index d150efbe2986..842970a869c9 100644 --- a/rust/ql/test/library-tests/type-inference/main.rs +++ b/rust/ql/test/library-tests/type-inference/main.rs @@ -2220,9 +2220,9 @@ mod method_determined_by_argument_type { x.my_add(&5i64); // $ target=MyAdd<&i64>::my_add x.my_add(true); // $ target=MyAdd::my_add - S(1i64).my_add(S(2i64)); // $ target=S::my_add1 - S(1i64).my_add(3i64); // $ MISSING: target=S::my_add2 - S(1i64).my_add(&3i64); // $ target=S::my_add3 + S(1i64).my_add(S(2i64)); // $ target=S::my_add1 $ SPURIOUS: target=S::my_add2 -- we do not check the `T: MyAdd` constraint yet + S(1i64).my_add(3i64); // $ target=S::my_add2 + S(1i64).my_add(&3i64); // $ target=S::my_add3 $ SPURIOUS: target=S::my_add2 -- we do not check the `T: MyAdd` constraint yet let x = i64::my_from(73i64); // $ target=MyFrom::my_from let y = i64::my_from(true); // $ target=MyFrom::my_from diff --git a/rust/ql/test/library-tests/type-inference/overloading.rs b/rust/ql/test/library-tests/type-inference/overloading.rs index db2046b1314c..006a23f1c459 100644 --- a/rust/ql/test/library-tests/type-inference/overloading.rs +++ b/rust/ql/test/library-tests/type-inference/overloading.rs @@ -55,18 +55,18 @@ mod method_call_trait_path_disambig { let _b1 = FirstTrait::method(&s); // $ type=_b1:bool target=FirstTrait::method let _b2 = ::method(&s); // $ type=_b2:bool target=FirstTrait::method - let _b3 = ::method(&Default::default()); // $ type=_b3:bool $ MISSING: target=FirstTrait::method target=default + let _b3 = ::method(&Default::default()); // $ type=_b3:bool target=FirstTrait::method target=default let _b4 = ::method2(&s); // $ type=_b4:bool target=S::method2 - let _b5 = ::method2(&Default::default()); // $ type=_b5:bool $ MISSING: target=S::method2 target=default + let _b5 = ::method2(&Default::default()); // $ type=_b5:bool target=S::method2 target=default let _n1 = SecondTrait::method(&s); // $ type=_n1:i64 target=SecondTrait::method let _n2 = ::method(&s); // $ type=_n2:i64 target=SecondTrait::method - let _n3 = ::method(&Default::default()); // $ type=_n3:i64 $ MISSING: target=SecondTrait::method target=default + let _n3 = ::method(&Default::default()); // $ type=_n3:i64 target=SecondTrait::method target=default let _n4 = ::method2(&s); // $ type=_n4:i64 target=S::method2 - let _n5 = ::method2(&Default::default()); // $ type=_n5:i64 $ MISSING: target=S::method2 target=default + let _n5 = ::method2(&Default::default()); // $ type=_n5:i64 target=S::method2 target=default - ::function(); // $ MISSING: target=S::function - ::function(); // $ MISSING: target=S2::function + ::function(); // $ target=S::function + ::function(); // $ target=S2::function } } @@ -263,10 +263,10 @@ mod impl_overlap2 { fn f() { let x = 0; let y = x.f(0i32); // $ target=f1 - let z: i32 = x.f(Default::default()); // $ MISSING: target=f1 target=default + let z: i32 = x.f(Default::default()); // $ target=f1 target=default let z = x.f(0i64); // $ target=f2 - let z: i64 = x.f(Default::default()); // $ MISSING: target=f2 target=default - let z: i64 = x.g(0i32); // $ target=g4 $ SPURIOUS: target=g3 + let z: i64 = x.f(Default::default()); // $ target=f2 target=default + let z: i64 = x.g(0i32); // $ target=g4 } } @@ -312,12 +312,12 @@ mod impl_overlap3 { } fn f() { - S::::Assoc(); // $ target=S3i32AssocFunc $ SPURIOUS: target=S3boolAssocFunc - S::::Assoc(); // $ target=S3boolAssocFunc $ SPURIOUS: target=S3i32AssocFunc + S::::Assoc(); // $ target=S3i32AssocFunc + S::::Assoc(); // $ target=S3boolAssocFunc // `S::f(true)` results in "multiple applicable items in scope", even though the argument is actually enough to disambiguate - S::::f(true); // $ target=S3boolf $ SPURIOUS: target=S3i32f - S::::f(0); // $ target=S3i32f $ SPURIOUS: target=S3boolf + S::::f(true); // $ target=S3boolf + S::::f(0); // $ target=S3i32f } } @@ -350,7 +350,7 @@ mod default_type_args { type AssocType = S; fn g(self) -> S { - let x = S::f(S(Default::default())); // $ type=x:i64 $ MISSING: target=f target=default + let x = S::f(S(Default::default())); // $ target=f target=default type=x:i64 let x = Self::AssocType::f(S(Default::default())); // $ target=f target=default type=x:i64 let x = S::::g(S(Default::default())); // $ target=g target=default type=x:bool let x = S::::g(S(Default::default())); // $ target=g target=default type=x:i64 diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 8a998f5d211b..43df6b6eee36 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -10712,6 +10712,7 @@ inferType | main.rs:2223:26:2223:29 | 2i64 | | {EXTERNAL LOCATION} | i64 | | main.rs:2224:9:2224:15 | S(...) | | main.rs:2107:5:2107:19 | S | | main.rs:2224:9:2224:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2224:9:2224:28 | ... .my_add(...) | | main.rs:2107:5:2107:19 | S | | main.rs:2224:11:2224:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | | main.rs:2224:24:2224:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | | main.rs:2225:9:2225:15 | S(...) | | main.rs:2107:5:2107:19 | S | @@ -12079,6 +12080,8 @@ inferType | overloading.rs:58:13:58:15 | _b3 | | {EXTERNAL LOCATION} | bool | | overloading.rs:58:19:58:64 | ...::method(...) | | {EXTERNAL LOCATION} | bool | | overloading.rs:58:45:58:63 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:58:45:58:63 | &... | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:58:46:58:63 | ...::default(...) | | overloading.rs:20:5:21:13 | S | | overloading.rs:59:13:59:15 | _b4 | | {EXTERNAL LOCATION} | bool | | overloading.rs:59:19:59:48 | ...::method2(...) | | {EXTERNAL LOCATION} | bool | | overloading.rs:59:46:59:47 | &s | | {EXTERNAL LOCATION} | & | @@ -12087,6 +12090,8 @@ inferType | overloading.rs:60:13:60:15 | _b5 | | {EXTERNAL LOCATION} | bool | | overloading.rs:60:19:60:65 | ...::method2(...) | | {EXTERNAL LOCATION} | bool | | overloading.rs:60:46:60:64 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:60:46:60:64 | &... | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:60:47:60:64 | ...::default(...) | | overloading.rs:20:5:21:13 | S | | overloading.rs:62:13:62:15 | _n1 | | {EXTERNAL LOCATION} | i64 | | overloading.rs:62:19:62:41 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | | overloading.rs:62:39:62:40 | &s | | {EXTERNAL LOCATION} | & | @@ -12100,6 +12105,8 @@ inferType | overloading.rs:64:13:64:15 | _n3 | | {EXTERNAL LOCATION} | i64 | | overloading.rs:64:19:64:65 | ...::method(...) | | {EXTERNAL LOCATION} | i64 | | overloading.rs:64:46:64:64 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:64:46:64:64 | &... | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:64:47:64:64 | ...::default(...) | | overloading.rs:20:5:21:13 | S | | overloading.rs:65:13:65:15 | _n4 | | {EXTERNAL LOCATION} | i64 | | overloading.rs:65:19:65:49 | ...::method2(...) | | {EXTERNAL LOCATION} | i64 | | overloading.rs:65:47:65:48 | &s | | {EXTERNAL LOCATION} | & | @@ -12108,6 +12115,8 @@ inferType | overloading.rs:66:13:66:15 | _n5 | | {EXTERNAL LOCATION} | i64 | | overloading.rs:66:19:66:66 | ...::method2(...) | | {EXTERNAL LOCATION} | i64 | | overloading.rs:66:47:66:65 | &... | | {EXTERNAL LOCATION} | & | +| overloading.rs:66:47:66:65 | &... | TRef | overloading.rs:20:5:21:13 | S | +| overloading.rs:66:48:66:65 | ...::default(...) | | overloading.rs:20:5:21:13 | S | | overloading.rs:68:9:68:37 | ...::function(...) | | {EXTERNAL LOCATION} | bool | | overloading.rs:69:9:69:38 | ...::function(...) | | {EXTERNAL LOCATION} | bool | | overloading.rs:78:26:78:29 | SelfParam | | overloading.rs:77:5:81:5 | Self [trait OverlappingTrait] | @@ -12372,6 +12381,7 @@ inferType | overloading.rs:266:13:266:13 | z | | {EXTERNAL LOCATION} | i32 | | overloading.rs:266:22:266:22 | x | | {EXTERNAL LOCATION} | i32 | | overloading.rs:266:22:266:44 | x.f(...) | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:266:26:266:43 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | | overloading.rs:267:13:267:13 | z | | {EXTERNAL LOCATION} | i64 | | overloading.rs:267:17:267:17 | x | | {EXTERNAL LOCATION} | i32 | | overloading.rs:267:17:267:25 | x.f(...) | | {EXTERNAL LOCATION} | i64 | @@ -12379,9 +12389,9 @@ inferType | overloading.rs:268:13:268:13 | z | | {EXTERNAL LOCATION} | i64 | | overloading.rs:268:22:268:22 | x | | {EXTERNAL LOCATION} | i32 | | overloading.rs:268:22:268:44 | x.f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:268:26:268:43 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | | overloading.rs:269:13:269:13 | z | | {EXTERNAL LOCATION} | i64 | | overloading.rs:269:22:269:22 | x | | {EXTERNAL LOCATION} | i32 | -| overloading.rs:269:22:269:30 | x.g(...) | | {EXTERNAL LOCATION} | i32 | | overloading.rs:269:22:269:30 | x.g(...) | | {EXTERNAL LOCATION} | i64 | | overloading.rs:269:26:269:29 | 0i32 | | {EXTERNAL LOCATION} | i32 | | overloading.rs:286:35:288:9 | { ... } | | {EXTERNAL LOCATION} | i32 | @@ -12395,14 +12405,10 @@ inferType | overloading.rs:309:31:311:9 | { ... } | | {EXTERNAL LOCATION} | bool | | overloading.rs:310:13:310:16 | true | | {EXTERNAL LOCATION} | bool | | overloading.rs:314:12:321:5 | { ... } | | {EXTERNAL LOCATION} | () | -| overloading.rs:315:9:315:25 | ...::Assoc(...) | | {EXTERNAL LOCATION} | bool | | overloading.rs:315:9:315:25 | ...::Assoc(...) | | {EXTERNAL LOCATION} | i32 | | overloading.rs:316:9:316:26 | ...::Assoc(...) | | {EXTERNAL LOCATION} | bool | -| overloading.rs:316:9:316:26 | ...::Assoc(...) | | {EXTERNAL LOCATION} | i32 | | overloading.rs:319:9:319:26 | ...::f(...) | | {EXTERNAL LOCATION} | bool | -| overloading.rs:319:9:319:26 | ...::f(...) | | {EXTERNAL LOCATION} | i32 | | overloading.rs:319:22:319:25 | true | | {EXTERNAL LOCATION} | bool | -| overloading.rs:320:9:320:22 | ...::f(...) | | {EXTERNAL LOCATION} | bool | | overloading.rs:320:9:320:22 | ...::f(...) | | {EXTERNAL LOCATION} | i32 | | overloading.rs:320:21:320:21 | 0 | | {EXTERNAL LOCATION} | i32 | | overloading.rs:330:14:330:17 | SelfParam | | overloading.rs:327:5:331:5 | Self [trait MyTrait] | @@ -12431,6 +12437,8 @@ inferType | overloading.rs:353:17:353:17 | x | | {EXTERNAL LOCATION} | i64 | | overloading.rs:353:21:353:47 | ...::f(...) | | {EXTERNAL LOCATION} | i64 | | overloading.rs:353:26:353:46 | S(...) | | overloading.rs:325:5:325:25 | S | +| overloading.rs:353:26:353:46 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| overloading.rs:353:28:353:45 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | | overloading.rs:354:17:354:17 | x | | {EXTERNAL LOCATION} | i64 | | overloading.rs:354:21:354:61 | ...::f(...) | | {EXTERNAL LOCATION} | i64 | | overloading.rs:354:40:354:60 | S(...) | | overloading.rs:325:5:325:25 | S | diff --git a/rust/ql/test/query-tests/security/CWE-312/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/query-tests/security/CWE-312/CONSISTENCY/PathResolutionConsistency.expected index 580c9cd8202c..7ab983902e0b 100644 --- a/rust/ql/test/query-tests/security/CWE-312/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/query-tests/security/CWE-312/CONSISTENCY/PathResolutionConsistency.expected @@ -1,2 +1,2 @@ multipleResolvedTargets -| test_storage.rs:36:45:36:57 | text.as_ref() | +| test_storage.rs:40:5:40:31 | combined.extend(...) | diff --git a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll index 654102ce2167..c33c49e7a168 100644 --- a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll +++ b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll @@ -980,6 +980,11 @@ module Make1 Input1> { not t = abs.getATypeParameter() } + pragma[nomagic] + private predicate hasTypeConstraint(HasTypeTree term, Type constraint) { + hasTypeConstraint(term, constraint, constraint) + } + /** * Holds if the type tree at `tt` satisfies the constraint `constraint` * with the type `t` at `path`. @@ -994,7 +999,7 @@ module Make1 Input1> { path = prefix0.append(suffix) ) or - hasTypeConstraint(tt, constraint, constraint) and + hasTypeConstraint(tt, constraint) and t = getTypeAt(tt, path) } diff --git a/shared/util/codeql/util/UnboundList.qll b/shared/util/codeql/util/UnboundList.qll index 4ee447c5cfe3..5cd2362c14e0 100644 --- a/shared/util/codeql/util/UnboundList.qll +++ b/shared/util/codeql/util/UnboundList.qll @@ -115,7 +115,7 @@ module Make Input> { /** Holds if this list starts with `e`, followed by `suffix`. */ bindingset[this] predicate isCons(Element e, UnboundList suffix) { - exists(string regexp | regexp = "([0-9]+)\\.(.*)" | + exists(string regexp | regexp = "^([0-9]+)\\.(.*)$" | e = decode(this.regexpCapture(regexp, 1)) and suffix = this.regexpCapture(regexp, 2) ) @@ -124,7 +124,7 @@ module Make Input> { /** Holds if this list starts with `prefix`, followed by `e`. */ bindingset[this] predicate isSnoc(UnboundList prefix, Element e) { - exists(string regexp | regexp = "(|.+\\.)([0-9]+)\\." | + exists(string regexp | regexp = "^(|.+\\.)([0-9]+)\\.$" | prefix = this.regexpCapture(regexp, 1) and e = decode(this.regexpCapture(regexp, 2)) ) @@ -133,6 +133,33 @@ module Make Input> { /** Gets the head of this list, if any. */ bindingset[this] Element getHead() { result = this.getElement(0) } + + /** + * Gets the `i`th prefix of this list, if any. + * + * Only holds when this list is non-empty, and only returns proper prefixes. + */ + bindingset[this] + UnboundList getPrefix(int i) { + exists(string regexp, int occurrenceOffset | regexp = "[0-9]+\\." | + exists(this.regexpFind(regexp, i, occurrenceOffset)) and + result = this.prefix(occurrenceOffset) + ) + } + + /** + * Gets a prefix of this list, if any. + * + * Only holds when this list is non-empty, and only returns proper prefixes. + */ + bindingset[this] + UnboundList getAPrefix() { result = this.getPrefix(_) } + + /** + * Gets a prefix of this list, including the list itself. + */ + bindingset[this] + UnboundList getAPrefixOrSelf() { result = [this, this.getAPrefix()] } } /** Provides predicates for constructing `UnboundList`s. */ From 32aaac27ecf08273901b53f347bf68e296acfd84 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 26 Jan 2026 20:04:58 +0100 Subject: [PATCH 328/433] Rust: Add type inference regression test --- .../type-inference/overloading.rs | 41 +++++++++++++++++++ .../type-inference/type-inference.expected | 37 +++++++++++++++++ 2 files changed, 78 insertions(+) diff --git a/rust/ql/test/library-tests/type-inference/overloading.rs b/rust/ql/test/library-tests/type-inference/overloading.rs index 006a23f1c459..8fe25f08e14c 100644 --- a/rust/ql/test/library-tests/type-inference/overloading.rs +++ b/rust/ql/test/library-tests/type-inference/overloading.rs @@ -359,3 +359,44 @@ mod default_type_args { } } } + +mod from_default { + #[derive(Default)] + struct S; + + fn f() -> S { + let x = Default::default(); // $ target=default type=x:S + From::from(x) // $ target=from + } + + struct S1; + + struct S2; + + impl From for S1 { + // from1 + fn from(_: S) -> Self { + S1 + } + } + + impl From for S1 { + // from2 + fn from(_: S2) -> Self { + S1 + } + } + + impl From for S2 { + // from3 + fn from(_: S) -> Self { + S2 + } + } + + fn g(b: bool) -> S1 { + let s = if b { S } else { Default::default() }; // $ target=default type=s:S + let x = From::from(s); // $ target=from1 type=x:S1 + x + } +} diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 43df6b6eee36..1e8f76409fb8 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -3965,6 +3965,16 @@ inferCertainType | overloading.rs:353:21:353:47 | ...::f(...) | | {EXTERNAL LOCATION} | i64 | | overloading.rs:354:17:354:17 | x | | {EXTERNAL LOCATION} | i64 | | overloading.rs:354:21:354:61 | ...::f(...) | | {EXTERNAL LOCATION} | i64 | +| overloading.rs:367:17:370:5 | { ... } | | overloading.rs:364:5:365:13 | S | +| overloading.rs:378:17:378:17 | _ | | overloading.rs:364:5:365:13 | S | +| overloading.rs:378:31:380:9 | { ... } | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:385:17:385:17 | _ | | overloading.rs:374:5:374:14 | S2 | +| overloading.rs:385:32:387:9 | { ... } | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:392:17:392:17 | _ | | overloading.rs:364:5:365:13 | S | +| overloading.rs:392:31:394:9 | { ... } | | overloading.rs:374:5:374:14 | S2 | +| overloading.rs:397:10:397:10 | b | | {EXTERNAL LOCATION} | bool | +| overloading.rs:397:25:401:5 | { ... } | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:398:20:398:20 | b | | {EXTERNAL LOCATION} | bool | | pattern_matching.rs:13:26:133:1 | { ... } | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:13:26:133:1 | { ... } | T | {EXTERNAL LOCATION} | () | | pattern_matching.rs:15:5:18:5 | if ... {...} | | {EXTERNAL LOCATION} | () | @@ -12463,6 +12473,33 @@ inferType | overloading.rs:358:13:358:16 | S(...) | T | {EXTERNAL LOCATION} | i32 | | overloading.rs:358:13:358:16 | S(...) | T | {EXTERNAL LOCATION} | i64 | | overloading.rs:358:15:358:15 | 0 | | {EXTERNAL LOCATION} | i32 | +| overloading.rs:367:17:370:5 | { ... } | | overloading.rs:364:5:365:13 | S | +| overloading.rs:368:13:368:13 | x | | overloading.rs:364:5:365:13 | S | +| overloading.rs:368:17:368:34 | ...::default(...) | | overloading.rs:364:5:365:13 | S | +| overloading.rs:369:9:369:21 | ...::from(...) | | overloading.rs:364:5:365:13 | S | +| overloading.rs:369:20:369:20 | x | | overloading.rs:364:5:365:13 | S | +| overloading.rs:378:17:378:17 | _ | | overloading.rs:364:5:365:13 | S | +| overloading.rs:378:31:380:9 | { ... } | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:379:13:379:14 | S1 | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:385:17:385:17 | _ | | overloading.rs:374:5:374:14 | S2 | +| overloading.rs:385:32:387:9 | { ... } | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:386:13:386:14 | S1 | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:392:17:392:17 | _ | | overloading.rs:364:5:365:13 | S | +| overloading.rs:392:31:394:9 | { ... } | | overloading.rs:374:5:374:14 | S2 | +| overloading.rs:393:13:393:14 | S2 | | overloading.rs:374:5:374:14 | S2 | +| overloading.rs:397:10:397:10 | b | | {EXTERNAL LOCATION} | bool | +| overloading.rs:397:25:401:5 | { ... } | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:398:13:398:13 | s | | overloading.rs:364:5:365:13 | S | +| overloading.rs:398:17:398:54 | if b {...} else {...} | | overloading.rs:364:5:365:13 | S | +| overloading.rs:398:20:398:20 | b | | {EXTERNAL LOCATION} | bool | +| overloading.rs:398:22:398:26 | { ... } | | overloading.rs:364:5:365:13 | S | +| overloading.rs:398:24:398:24 | S | | overloading.rs:364:5:365:13 | S | +| overloading.rs:398:33:398:54 | { ... } | | overloading.rs:364:5:365:13 | S | +| overloading.rs:398:35:398:52 | ...::default(...) | | overloading.rs:364:5:365:13 | S | +| overloading.rs:399:13:399:13 | x | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:399:17:399:29 | ...::from(...) | | overloading.rs:372:5:372:14 | S1 | +| overloading.rs:399:28:399:28 | s | | overloading.rs:364:5:365:13 | S | +| overloading.rs:400:9:400:9 | x | | overloading.rs:372:5:372:14 | S1 | | pattern_matching.rs:13:26:133:1 | { ... } | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:13:26:133:1 | { ... } | T | {EXTERNAL LOCATION} | () | | pattern_matching.rs:14:9:14:13 | value | | {EXTERNAL LOCATION} | Option | From d57a42a7f77b5f85e9431ac3ed27ee5789899fc2 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Thu, 5 Feb 2026 20:23:45 +0000 Subject: [PATCH 329/433] C++: Make 'getChildCount' more robust by counting indexes instead of 'TranslatedDeclarationEntry's. --- .../code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll index 83f19062b907..7dfebc56fe18 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll @@ -390,7 +390,7 @@ class TranslatedDeclStmt extends TranslatedStmt { override TranslatedElement getLastChild() { result = this.getChild(this.getChildCount() - 1) } - private int getChildCount() { result = count(this.getDeclarationEntry(_)) } + private int getChildCount() { result = count(int i | exists(this.getDeclarationEntry(i))) } IRDeclarationEntry getIRDeclarationEntry(int index) { result.hasIndex(index) and From ac1987f264affb145437b75fafb01d706b1a2f41 Mon Sep 17 00:00:00 2001 From: Ben Rodes Date: Thu, 5 Feb 2026 15:44:44 -0500 Subject: [PATCH 330/433] Update python/ql/lib/change-notes/2025-09-30-azure_ssrf_models.md Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com> --- python/ql/lib/change-notes/2025-09-30-azure_ssrf_models.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python/ql/lib/change-notes/2025-09-30-azure_ssrf_models.md b/python/ql/lib/change-notes/2025-09-30-azure_ssrf_models.md index 573d5ea109df..283b703a4380 100644 --- a/python/ql/lib/change-notes/2025-09-30-azure_ssrf_models.md +++ b/python/ql/lib/change-notes/2025-09-30-azure_ssrf_models.md @@ -1,5 +1,5 @@ --- category: minorAnalysis --- -* Added `ssrf` MaD for the azure SDK -* Added MaD `ssrf` to `Http::Client::Request` \ No newline at end of file +* Added request forgery sink models for the Azure SDK. +* Made it so that models-as-data sinks with the kind `request-forgery` contribute to the class `Http::Client::Request` which represents HTTP client requests. \ No newline at end of file From 62a6b5985d14a4f501ec146bf1e3bdb325da36b5 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Fri, 6 Feb 2026 14:37:11 +0100 Subject: [PATCH 331/433] C#: Add test cases for lambda parameter modifiers. --- .../parameters/LambdaParameterModifiers.cs | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 csharp/ql/test/library-tests/parameters/LambdaParameterModifiers.cs diff --git a/csharp/ql/test/library-tests/parameters/LambdaParameterModifiers.cs b/csharp/ql/test/library-tests/parameters/LambdaParameterModifiers.cs new file mode 100644 index 000000000000..fa5bd7c7ce9a --- /dev/null +++ b/csharp/ql/test/library-tests/parameters/LambdaParameterModifiers.cs @@ -0,0 +1,30 @@ +using System; +using System.Collections.Generic; + +public class LambdaParameterModifiers +{ + delegate void MyRef(ref int i1); + delegate void MyOut(out int i2); + delegate void MyIn(in int i3); + delegate void MyRefReadonly(ref readonly int i4); + + delegate void MyScopedRef(scoped ref int i5); + + public void M() + { + // Explicitly typed lambda parameters with modifiers. + var l1 = (ref int x1) => x1; + var l2 = (out int x2) => x2 = 0; + var l3 = (in int x3) => x3; + var l4 = (ref readonly int x4) => x4; + var l5 = (scoped ref int x5) => x5; + var l6 = (params IEnumerable x6) => x6; + + // Implicitly typed lambda parameters with modifiers. + MyRef l7 = (ref i1) => { }; + MyOut l8 = (out i2) => i2 = 0; + MyIn l9 = (in i3) => { }; + MyRefReadonly l10 = (ref readonly i4) => { }; + MyScopedRef l11 = (scoped ref i5) => { }; + } +} From e550d4937c711e5710b7fe011acaa2b81406ea1a Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Fri, 6 Feb 2026 14:37:50 +0100 Subject: [PATCH 332/433] C#: Update parameter modifiers test to include lambda expression from the new test file. --- .../ql/test/library-tests/parameters/ParameterModifiers.ql | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/csharp/ql/test/library-tests/parameters/ParameterModifiers.ql b/csharp/ql/test/library-tests/parameters/ParameterModifiers.ql index b83eb2021611..72425994faec 100644 --- a/csharp/ql/test/library-tests/parameters/ParameterModifiers.ql +++ b/csharp/ql/test/library-tests/parameters/ParameterModifiers.ql @@ -1,7 +1,12 @@ import csharp class TestParameter extends Parameter { - TestParameter() { this.getFile().getBaseName() = "ParameterModifiers.cs" } + TestParameter() { + this.getFile().getBaseName() = "ParameterModifiers.cs" + or + this.getFile().getBaseName() = "LambdaParameterModifiers.cs" and + this.getCallable() instanceof LambdaExpr + } } query predicate parameterModifier(TestParameter p, int kind) { params(p, _, _, _, kind, _, _) } From 6c355a1bf87fbf36897f51c793d6e2dd6c57fb3b Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Fri, 6 Feb 2026 14:38:27 +0100 Subject: [PATCH 333/433] C#: Update test expected output. --- .../parameters/ParameterModifiers.expected | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/csharp/ql/test/library-tests/parameters/ParameterModifiers.expected b/csharp/ql/test/library-tests/parameters/ParameterModifiers.expected index c6b38eac9c8f..b8d1283d8d19 100644 --- a/csharp/ql/test/library-tests/parameters/ParameterModifiers.expected +++ b/csharp/ql/test/library-tests/parameters/ParameterModifiers.expected @@ -1,4 +1,15 @@ parameterModifier +| LambdaParameterModifiers.cs:16:27:16:28 | x1 | 1 | +| LambdaParameterModifiers.cs:17:27:17:28 | x2 | 2 | +| LambdaParameterModifiers.cs:18:26:18:27 | x3 | 5 | +| LambdaParameterModifiers.cs:19:36:19:37 | x4 | 6 | +| LambdaParameterModifiers.cs:20:34:20:35 | x5 | 1 | +| LambdaParameterModifiers.cs:21:43:21:44 | x6 | 3 | +| LambdaParameterModifiers.cs:24:25:24:26 | i1 | 1 | +| LambdaParameterModifiers.cs:25:25:25:26 | i2 | 2 | +| LambdaParameterModifiers.cs:26:23:26:24 | i3 | 5 | +| LambdaParameterModifiers.cs:27:43:27:44 | i4 | 6 | +| LambdaParameterModifiers.cs:28:39:28:40 | i5 | 1 | | ParameterModifiers.cs:6:27:6:28 | p1 | 0 | | ParameterModifiers.cs:7:30:7:31 | p2 | 5 | | ParameterModifiers.cs:9:31:9:32 | p3 | 2 | @@ -9,13 +20,24 @@ parameterModifier parameterIsValue | ParameterModifiers.cs:6:27:6:28 | p1 | parameterIsIn +| LambdaParameterModifiers.cs:18:26:18:27 | x3 | +| LambdaParameterModifiers.cs:26:23:26:24 | i3 | | ParameterModifiers.cs:7:30:7:31 | p2 | parameterIsOut +| LambdaParameterModifiers.cs:17:27:17:28 | x2 | +| LambdaParameterModifiers.cs:25:25:25:26 | i2 | | ParameterModifiers.cs:9:31:9:32 | p3 | parameterIsRef +| LambdaParameterModifiers.cs:16:27:16:28 | x1 | +| LambdaParameterModifiers.cs:20:34:20:35 | x5 | +| LambdaParameterModifiers.cs:24:25:24:26 | i1 | +| LambdaParameterModifiers.cs:28:39:28:40 | i5 | | ParameterModifiers.cs:14:31:14:32 | p4 | parameterIsParams +| LambdaParameterModifiers.cs:21:43:21:44 | x6 | | ParameterModifiers.cs:16:36:16:37 | p5 | | ParameterModifiers.cs:20:47:20:48 | p7 | parameterIsReadonlyRef +| LambdaParameterModifiers.cs:19:36:19:37 | x4 | +| LambdaParameterModifiers.cs:27:43:27:44 | i4 | | ParameterModifiers.cs:18:40:18:41 | p6 | From d5827b5ccac199cc55b21f6e40d289ef22285a87 Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Mon, 2 Feb 2026 14:05:23 +0100 Subject: [PATCH 334/433] Kotlin: Support Kotlin 2.3.10 --- java/kotlin-extractor/dev/wrapper.py | 2 +- .../diagnostics/kotlin-version-too-new/diagnostics.expected | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/java/kotlin-extractor/dev/wrapper.py b/java/kotlin-extractor/dev/wrapper.py index 7785c623f4fb..8aa5b55ee672 100755 --- a/java/kotlin-extractor/dev/wrapper.py +++ b/java/kotlin-extractor/dev/wrapper.py @@ -27,7 +27,7 @@ import io import os -DEFAULT_VERSION = "2.3.0" +DEFAULT_VERSION = "2.3.10" def options(): diff --git a/java/ql/integration-tests/kotlin/all-platforms/diagnostics/kotlin-version-too-new/diagnostics.expected b/java/ql/integration-tests/kotlin/all-platforms/diagnostics/kotlin-version-too-new/diagnostics.expected index 5ef0ef541962..bbc580f1e48b 100644 --- a/java/ql/integration-tests/kotlin/all-platforms/diagnostics/kotlin-version-too-new/diagnostics.expected +++ b/java/ql/integration-tests/kotlin/all-platforms/diagnostics/kotlin-version-too-new/diagnostics.expected @@ -1,5 +1,5 @@ { - "markdownMessage": "The Kotlin version installed (`999.999.999`) is too recent for this version of CodeQL. Install a version lower than 2.3.10.", + "markdownMessage": "The Kotlin version installed (`999.999.999`) is too recent for this version of CodeQL. Install a version lower than 2.3.20.", "severity": "error", "source": { "extractorName": "java", From 38830ddc5c576a23df9ff16cfc192971316992d9 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 6 Feb 2026 14:58:34 +0100 Subject: [PATCH 335/433] Bazel: fix Rust deps patching for semver build metadata Handle crate versions containing `+` build metadata (e.g., `0.9.11+spec-1.1.0`). Bazel repo names use `-` instead of `+`, so the generated labels need patching to reference the correct repo name. Also adds documentation for both patching issues handled by patch_defs.py. --- misc/bazel/3rdparty/patch_defs.py | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/misc/bazel/3rdparty/patch_defs.py b/misc/bazel/3rdparty/patch_defs.py index 512fb1667723..62cbf8075172 100644 --- a/misc/bazel/3rdparty/patch_defs.py +++ b/misc/bazel/3rdparty/patch_defs.py @@ -2,7 +2,23 @@ import re import pathlib -label_re = re.compile(r'"@(vendor.*)//:(.+)-([\d.]+)"') +# Problem number 1: +# https://github.com/bazelbuild/rules_rust/issues/3255 +# `crates_vendor` generates broken labels in `defs.bzl`: instead of +# "anyhow": Label("@vendor__anyhow-1.0.44//:anyhow") +# it produces +# "anyhow": Label("@vendor//:anyhow-1.0.44") +# which results in: ERROR: no such package '@@[unknown repo 'vendor' requested from @@]//' +# +# Problem number 2: +# Semver versions can contain `+` for build metadata (e.g., `0.9.11+spec-1.1.0`). +# Bazel repo names use `-` instead of `+`, so `vendor_ts__toml-0.9.11+spec-1.1.0` +# becomes `vendor_ts__toml-0.9.11-spec-1.1.0`. The generated labels reference the +# `+` version which doesn't exist, causing: +# ERROR: no such package '@@[unknown repo 'vendor_ts__toml-0.9.11+spec-1.1.0' +# requested from @@ (did you mean 'vendor_ts__toml-0.9.11-spec-1.1.0'?)]// + +label_re = re.compile(r'"@(vendor.*)//:([^+]+)-([\d.]+(?:\+.*)?)"') file = pathlib.Path(sys.argv[1]) temp = file.with_suffix(f'{file.suffix}.tmp') @@ -10,7 +26,7 @@ with open(file) as input, open(temp, "w") as output: for line in input: - line = label_re.sub(lambda m: f'"@{m[1]}__{m[2]}-{m[3]}//:{m[2].replace("-", "_")}"', line) + line = label_re.sub(lambda m: f'"@{m[1]}__{m[2]}-{m[3].replace("+", "-")}//:{m[2].replace("-", "_")}"', line) output.write(line) temp.rename(file) From c5179e40c66de6e3421de47604b727ef3c72634f Mon Sep 17 00:00:00 2001 From: Anders Fugmann Date: Fri, 6 Feb 2026 14:59:34 +0100 Subject: [PATCH 336/433] Kotlin: Add change note for supporting 2.3.10 --- java/ql/lib/change-notes/2026-02-06-kotlin-2.3.10.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 java/ql/lib/change-notes/2026-02-06-kotlin-2.3.10.md diff --git a/java/ql/lib/change-notes/2026-02-06-kotlin-2.3.10.md b/java/ql/lib/change-notes/2026-02-06-kotlin-2.3.10.md new file mode 100644 index 000000000000..49b62ea6bbda --- /dev/null +++ b/java/ql/lib/change-notes/2026-02-06-kotlin-2.3.10.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* Kotlin versions up to 2.3.10 are now supported. From 8459eec2394a23f4fc04aae8d21aab8b0b54a422 Mon Sep 17 00:00:00 2001 From: "REDMOND\\brodes" Date: Fri, 6 Feb 2026 09:26:49 -0500 Subject: [PATCH 337/433] Moving the SsrfSink concept into Concepts.qll, and renaming to HttpClientRequestFromModel as suggested in PR review. --- python/ql/lib/semmle/python/Concepts.qll | 29 +++++++++++++ python/ql/lib/semmle/python/Frameworks.qll | 1 - .../lib/semmle/python/frameworks/SSRFSink.qll | 42 ------------------- 3 files changed, 29 insertions(+), 43 deletions(-) delete mode 100644 python/ql/lib/semmle/python/frameworks/SSRFSink.qll diff --git a/python/ql/lib/semmle/python/Concepts.qll b/python/ql/lib/semmle/python/Concepts.qll index 1c018566cbf0..76e9f4bd13f9 100644 --- a/python/ql/lib/semmle/python/Concepts.qll +++ b/python/ql/lib/semmle/python/Concepts.qll @@ -15,6 +15,8 @@ private import semmle.python.security.internal.EncryptionKeySizes private import semmle.python.dataflow.new.SensitiveDataSources private import codeql.threatmodels.ThreatModels private import codeql.concepts.ConceptsShared +private import semmle.python.ApiGraphs +private import semmle.python.frameworks.data.ModelsAsData private module ConceptsShared = ConceptsMake; @@ -1656,8 +1658,35 @@ module Http { } import ConceptsShared::Http::Client as Client + // TODO: investigate whether we should treat responses to client requests as // remote-flow-sources in general. + /** + * An HTTP request modeled from `request-forgery` sinks, modeled using MaD. + */ + class HttpClientRequestFromModel extends Http::Client::Request::Range instanceof API::CallNode { + DataFlow::Node urlArg; + + HttpClientRequestFromModel() { + ( + this.getArg(_) = urlArg + or + this.getArgByName(_) = urlArg + ) and + ModelOutput::sinkNode(urlArg, "request-forgery") + } + + override DataFlow::Node getAUrlPart() { result = urlArg } + + override string getFramework() { result = "MaD" } + + override predicate disablesCertificateValidation( + DataFlow::Node disablingNode, DataFlow::Node argumentOrigin + ) { + // NOTE: if you need to define this, you have to special case it for every possible API in MaD + none() + } + } } /** diff --git a/python/ql/lib/semmle/python/Frameworks.qll b/python/ql/lib/semmle/python/Frameworks.qll index 532a720e80e3..1c2f0a6e6d41 100644 --- a/python/ql/lib/semmle/python/Frameworks.qll +++ b/python/ql/lib/semmle/python/Frameworks.qll @@ -80,7 +80,6 @@ private import semmle.python.frameworks.Setuptools private import semmle.python.frameworks.Simplejson private import semmle.python.frameworks.Socketio private import semmle.python.frameworks.SqlAlchemy -private import semmle.python.frameworks.SSRFSink private import semmle.python.frameworks.Starlette private import semmle.python.frameworks.Stdlib private import semmle.python.frameworks.Streamlit diff --git a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll b/python/ql/lib/semmle/python/frameworks/SSRFSink.qll deleted file mode 100644 index d732701c0845..000000000000 --- a/python/ql/lib/semmle/python/frameworks/SSRFSink.qll +++ /dev/null @@ -1,42 +0,0 @@ -/** - * Provides classes for SSRF sinks modeled using Models as Data (MaD). - */ - -private import python -private import semmle.python.Concepts -private import semmle.python.ApiGraphs -private import semmle.python.frameworks.data.ModelsAsData - -/** - * INTERNAL: Do not use. - * - * Sets up SSRF sinks as Http::Client::Request - */ -module SsrfMaDModel { - /** - * An HTTP request modeled from `request-forgery` sinks, modeled using MaD. - */ - class SsrfSink extends Http::Client::Request::Range instanceof API::CallNode { - DataFlow::Node urlArg; - - SsrfSink() { - ( - this.getArg(_) = urlArg - or - this.getArgByName(_) = urlArg - ) and - ModelOutput::sinkNode(urlArg, "request-forgery") - } - - override DataFlow::Node getAUrlPart() { result = urlArg } - - override string getFramework() { result = "MaD" } - - override predicate disablesCertificateValidation( - DataFlow::Node disablingNode, DataFlow::Node argumentOrigin - ) { - // NOTE: if you need to define this, you have to special case it for every possible API in MaD - none() - } - } -} From 353cd31ce6516ad6aa28e17f73846587ba0df7d0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 6 Feb 2026 18:09:49 +0000 Subject: [PATCH 338/433] update codeql documentation --- .../codeql-changelog/codeql-cli-2.19.1.rst | 2 +- .../codeql-changelog/codeql-cli-2.21.3.rst | 2 +- .../codeql-changelog/codeql-cli-2.22.3.rst | 2 +- .../codeql-changelog/codeql-cli-2.23.1.rst | 4 +- .../codeql-changelog/codeql-cli-2.24.1.rst | 132 ++++++++++++++++++ .../codeql-changelog/index.rst | 1 + 6 files changed, 138 insertions(+), 5 deletions(-) create mode 100644 docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.1.rst diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.19.1.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.19.1.rst index f2948d0db67c..39d4d36537cf 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.19.1.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.19.1.rst @@ -129,7 +129,7 @@ Java/Kotlin """"""""""" * The Java extractor and QL libraries now support Java 23. -* Kotlin versions up to 2.1.0\ *x* are now supported. +* Kotlin versions up to 2.1.0*x* are now supported. Python """""" diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.21.3.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.21.3.rst index 71a8e3a68240..fffe94c04b80 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.21.3.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.21.3.rst @@ -144,7 +144,7 @@ New Features Java/Kotlin """"""""""" -* Kotlin versions up to 2.2.0\ *x* are now supported. Support for the Kotlin 1.5.x series is dropped (so the minimum Kotlin version is now 1.6.0). +* Kotlin versions up to 2.2.0*x* are now supported. Support for the Kotlin 1.5.x series is dropped (so the minimum Kotlin version is now 1.6.0). Swift """"" diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.22.3.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.22.3.rst index 4f1d34ff2ddd..8e5a18a0c74a 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.22.3.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.22.3.rst @@ -98,4 +98,4 @@ C/C++ Java/Kotlin """"""""""" -* Kotlin versions up to 2.2.2\ *x* are now supported. +* Kotlin versions up to 2.2.2*x* are now supported. diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst index ff22a3f647cf..27f1eee84edc 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst @@ -88,7 +88,7 @@ JavaScript/TypeScript * Data flow is now tracked through the :code:`Promise.try` and :code:`Array.prototype.with` functions. * Query :code:`js/index-out-of-bounds` no longer produces a false-positive when a strictly-less-than check overrides a previous less-than-or-equal test. * The query :code:`js/remote-property-injection` now detects property injection vulnerabilities through object enumeration patterns such as :code:`Object.keys()`. -* The query "Permissive CORS configuration" (:code:`js/cors-permissive-configuration`) has been promoted from experimental and is now part of the default security suite. Thank you to @maikypedia who `submitted the original experimental query `__! +* The query "Permissive CORS configuration" (:code:`js/cors-permissive-configuration`) has been promoted from experimental and is now part of the default security suite. Thank you to @maikypedia who `submitted the original experimental query `__\ ! Python """""" @@ -126,7 +126,7 @@ Golang """""" * The second argument of the :code:`CreateTemp` function, from the :code:`os` package, is no longer a path-injection sink due to proper sanitization by Go. -* The query "Uncontrolled data used in path expression" (:code:`go/path-injection`) now detects sanitizing a path by adding :code:`os.PathSeparator` or ``\`` to the beginning. +* The query "Uncontrolled data used in path expression" (:code:`go/path-injection`) now detects sanitizing a path by adding :code:`os.PathSeparator` or :code:`\` to the beginning. Java/Kotlin """"""""""" diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.1.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.1.rst new file mode 100644 index 000000000000..71a2b3fb47ec --- /dev/null +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.24.1.rst @@ -0,0 +1,132 @@ +.. _codeql-cli-2.24.1: + +========================== +CodeQL 2.24.1 (2026-02-05) +========================== + +.. contents:: Contents + :depth: 2 + :local: + :backlinks: none + +This is an overview of changes in the CodeQL CLI and relevant CodeQL query and library packs. For additional updates on changes to the CodeQL code scanning experience, check out the `code scanning section on the GitHub blog `__, `relevant GitHub Changelog updates `__, `changes in the CodeQL extension for Visual Studio Code `__, and the `CodeQL Action changelog `__. + +Security Coverage +----------------- + +CodeQL 2.24.1 runs a total of 491 security queries when configured with the Default suite (covering 166 CWE). The Extended suite enables an additional 135 queries (covering 35 more CWE). + +CodeQL CLI +---------- + +Miscellaneous +~~~~~~~~~~~~~ + +* The vulnerable xwork-core 2.3.37 test dependency (CVE-2025-68493) has been removed. The CodeQL Java library has been updated to support both legacy Struts 2.x-6.x package names and Struts 7.x package names for analyzing user code. + +Language Libraries +------------------ + +Bug Fixes +~~~~~~~~~ + +C/C++ +""""" + +* Fixed a bug in the :code:`GuardCondition` library which sometimes prevented binary logical operators from being recognized as guard conditions. As a result, queries using :code:`GuardCondition` may see improved results. +* Fixed a bug which caused :code:`Node.asDefinition()` to not have a result for certain assignments. + +Java/Kotlin +""""""""""" + +* Kotlin: The Kotlin extractor now registers as the last IR generation extension, ensuring that code generated by other compiler plugins (such as kotlinx.serialization) is correctly captured. + +GitHub Actions +"""""""""""""" + +* Fixed a crash when analysing a :code:`${{ ... }}` expression over around 300 characters in length. + +Breaking Changes +~~~~~~~~~~~~~~~~ + +Java/Kotlin +""""""""""" + +* Support for Kotlin 1.6.x and 1.7.x series has been dropped + +Minor Analysis Improvements +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +C/C++ +""""" + +* The :code:`Buffer.qll` library will no longer report incorrect buffer sizes on certain malformed databases. As a result, the queries :code:`cpp/static-buffer-overflow`, :code:`cpp/overflow-buffer`, :code:`cpp/badly-bounded-write`, :code:`cpp/overrunning-write`, :code:`cpp/overrunning-write-with-float`, and :code:`cpp/very-likely-overrunning-write` will report fewer false positives on such databases. +* Added :code:`taint` summary models and :code:`sql-injection` barrier models for the MySQL :code:`mysql_real_escape_string` and :code:`mysql_real_escape_string_quote` escaping functions. +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. + +C# +"" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. +* C# 14: Support for null-conditional assignments (such as :code:`c?.Prop = p`). Furthermore, the :code:`MaybeNullExpr` class now takes null-conditional access (such as :code:`?.`) into account when modeling potential null values. + +Golang +"""""" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. + +Java/Kotlin +""""""""""" + +* Added support for Struts 7.x package names in the Struts framework library. The library now recognizes both the legacy :code:`com.opensymphony.xwork2` package names (Struts 2.x-6.x) and the new :code:`org.apache.struts2` package names (Struts 7.x+), maintaining backward compatibility while enabling analysis of code using the latest Struts versions. +* The query :code:`java/unreleased-lock` no longer applies to lock types with names ending in "Pool", as these typically manage a collection of resources and the :code:`lock` and :code:`unlock` methods typically only lock one resource at a time. This may lead to a reduction in false positives. +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. +* When Maven-compatible private package registries are configured for an organisation for Default Setup, CodeQL will now configure Maven to also use these as plugin repositories. CodeQL previously already configured Maven to use them as regular package repositories. This should now allow Maven plugins to be obtained from private registries. + +JavaScript/TypeScript +""""""""""""""""""""" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. + +Python +"""""" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. +* Added experimental query :code:`py/prompt-injection` to detect potential prompt injection vulnerabilities in code using LLMs. +* Added taint flow model and type model for :code:`agents` and :code:`openai` modules. +* Remote flow sources for the :code:`websockets` package have been modeled. + +Ruby +"""" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. + +Swift +""""" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. + +Rust +"""" + +* The predicate :code:`SummarizedCallable.propagatesFlow` has been extended with the columns :code:`Provenance p` and :code:`boolean isExact`, and as a consequence the predicates :code:`SummarizedCallable.hasProvenance` and :code:`SummarizedCallable.hasExactModel` have been removed. +* Added type inference support for the :code:`FnMut(..) -> ..` and :code:`Fn(..) -> ..` traits. They now work in type parameter bounds and are implemented by closures. + +New Features +~~~~~~~~~~~~ + +C/C++ +""""" + +* Added a subclass :code:`Embed` of :code:`PreprocessorDirective` for C23 and C++26 :code:`#embed` preprocessor directives. +* Added modules :code:`DataFlow::ParameterizedBarrierGuard` and :code:`DataFlow::ParameterizedInstructionBarrierGuard`. These modules provide the same features as :code:`DataFlow::BarrierGuard` and :code:`DataFlow::InstructionBarrierGuard`, but allow for an additional parameter to support properly using them in dataflow configurations that uses flow states. + +Java/Kotlin +""""""""""" + +* Kotlin versions up to 2.3.0 are now supported. + +Python +"""""" + +* It is now possible to refer to list elements in the Python models-as-data language, via the :code:`ListElement` path. diff --git a/docs/codeql/codeql-overview/codeql-changelog/index.rst b/docs/codeql/codeql-overview/codeql-changelog/index.rst index fbdaac4a7d8f..318366d1e69d 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/index.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/index.rst @@ -11,6 +11,7 @@ A list of queries for each suite and language `is available here Date: Fri, 6 Feb 2026 12:11:49 -0600 Subject: [PATCH 339/433] Update codeql-cli-2.19.1.rst --- .../codeql-overview/codeql-changelog/codeql-cli-2.19.1.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.19.1.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.19.1.rst index 39d4d36537cf..f2948d0db67c 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.19.1.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.19.1.rst @@ -129,7 +129,7 @@ Java/Kotlin """"""""""" * The Java extractor and QL libraries now support Java 23. -* Kotlin versions up to 2.1.0*x* are now supported. +* Kotlin versions up to 2.1.0\ *x* are now supported. Python """""" From 79ad064a93cb2af28cb73ef49f9dcde0efdcbc96 Mon Sep 17 00:00:00 2001 From: Jon Janego Date: Fri, 6 Feb 2026 12:12:16 -0600 Subject: [PATCH 340/433] Fix formatting in Kotlin version support note --- .../codeql-overview/codeql-changelog/codeql-cli-2.21.3.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.21.3.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.21.3.rst index fffe94c04b80..71a8e3a68240 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.21.3.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.21.3.rst @@ -144,7 +144,7 @@ New Features Java/Kotlin """"""""""" -* Kotlin versions up to 2.2.0*x* are now supported. Support for the Kotlin 1.5.x series is dropped (so the minimum Kotlin version is now 1.6.0). +* Kotlin versions up to 2.2.0\ *x* are now supported. Support for the Kotlin 1.5.x series is dropped (so the minimum Kotlin version is now 1.6.0). Swift """"" From bf6568b9280203c40ba3f203881eeea90cd6a635 Mon Sep 17 00:00:00 2001 From: Jon Janego Date: Fri, 6 Feb 2026 12:12:55 -0600 Subject: [PATCH 341/433] Fix formatting for Kotlin version support note --- .../codeql-overview/codeql-changelog/codeql-cli-2.22.3.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.22.3.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.22.3.rst index 8e5a18a0c74a..4f1d34ff2ddd 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.22.3.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.22.3.rst @@ -98,4 +98,4 @@ C/C++ Java/Kotlin """"""""""" -* Kotlin versions up to 2.2.2*x* are now supported. +* Kotlin versions up to 2.2.2\ *x* are now supported. From c40d784a4d981ab7f9266d1c3fd73697640bbef5 Mon Sep 17 00:00:00 2001 From: Jon Janego Date: Fri, 6 Feb 2026 12:13:34 -0600 Subject: [PATCH 342/433] Update codeql-cli-2.23.1.rst --- .../codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst index 27f1eee84edc..241b1a8f9d8b 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst @@ -88,7 +88,7 @@ JavaScript/TypeScript * Data flow is now tracked through the :code:`Promise.try` and :code:`Array.prototype.with` functions. * Query :code:`js/index-out-of-bounds` no longer produces a false-positive when a strictly-less-than check overrides a previous less-than-or-equal test. * The query :code:`js/remote-property-injection` now detects property injection vulnerabilities through object enumeration patterns such as :code:`Object.keys()`. -* The query "Permissive CORS configuration" (:code:`js/cors-permissive-configuration`) has been promoted from experimental and is now part of the default security suite. Thank you to @maikypedia who `submitted the original experimental query `__\ ! +* The query "Permissive CORS configuration" (:code:`js/cors-permissive-configuration`) has been promoted from experimental and is now part of the default security suite. Thank you to @maikypedia who `submitted the original experimental query `__! Python """""" From 5bf2d9442e0550e6d11a2dc6e0f42490fcc020ba Mon Sep 17 00:00:00 2001 From: Jon Janego Date: Fri, 6 Feb 2026 12:14:03 -0600 Subject: [PATCH 343/433] Fix formatting in changelog for Go path injection query --- .../codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst index 241b1a8f9d8b..ff22a3f647cf 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.23.1.rst @@ -126,7 +126,7 @@ Golang """""" * The second argument of the :code:`CreateTemp` function, from the :code:`os` package, is no longer a path-injection sink due to proper sanitization by Go. -* The query "Uncontrolled data used in path expression" (:code:`go/path-injection`) now detects sanitizing a path by adding :code:`os.PathSeparator` or :code:`\` to the beginning. +* The query "Uncontrolled data used in path expression" (:code:`go/path-injection`) now detects sanitizing a path by adding :code:`os.PathSeparator` or ``\`` to the beginning. Java/Kotlin """"""""""" From fe94b3b68ba4bc870d626b71f5a4e40bee7c52b8 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Mon, 9 Feb 2026 11:46:53 +0100 Subject: [PATCH 344/433] C#: Address review comments. --- .../SymbolExtensions.cs | 47 +++++++++++++++---- .../Entities/Expressions/Invocation.cs | 11 +---- .../Entities/Parameter.cs | 33 +------------ .../Entities/SyntheticExtensionParameter.cs | 23 ++------- csharp/ql/lib/semmle/code/csharp/Callable.qll | 34 +++----------- csharp/ql/lib/semmle/code/csharp/Member.qll | 3 ++ csharp/ql/lib/semmle/code/csharp/Property.qll | 7 +-- .../lib/semmle/code/csharp/exprs/Access.qll | 4 +- .../semmle/code/csharp/internal/Callable.qll | 33 +++++++++++++ csharp/ql/lib/semmlecode.csharp.dbscheme | 2 +- 10 files changed, 92 insertions(+), 105 deletions(-) create mode 100644 csharp/ql/lib/semmle/code/csharp/internal/Callable.qll diff --git a/csharp/extractor/Semmle.Extraction.CSharp/CodeAnalysisExtensions/SymbolExtensions.cs b/csharp/extractor/Semmle.Extraction.CSharp/CodeAnalysisExtensions/SymbolExtensions.cs index 0c0c17df125e..c108a18f136a 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/CodeAnalysisExtensions/SymbolExtensions.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/CodeAnalysisExtensions/SymbolExtensions.cs @@ -647,15 +647,13 @@ public static bool IsSourceDeclaration(this IParameterSymbol parameter) /// Return true if this method is a compiler-generated extension method. /// public static bool IsCompilerGeneratedExtensionMethod(this IMethodSymbol method) => - method.TryGetExtensionMethod(out _); + method.TryGetExtensionMethod() is not null; /// - /// Returns true if this method is a compiler-generated extension method, - /// and outputs the original extension method declaration. + /// Returns the extension method corresponding to this compiler-generated extension method, if it exists. /// - public static bool TryGetExtensionMethod(this IMethodSymbol method, out IMethodSymbol? declaration) + public static IMethodSymbol? TryGetExtensionMethod(this IMethodSymbol method) { - declaration = null; if (method.IsImplicitlyDeclared && method.ContainingSymbol is INamedTypeSymbol containingType) { // Extension types are declared within the same type as the generated @@ -688,23 +686,22 @@ public static bool TryGetExtensionMethod(this IMethodSymbol method, out IMethodS .First(c => SymbolEqualityComparer.Default.Equals(c.OriginalDefinition, unboundDeclaration)); // If the extension declaration is unbound apply the remaning type arguments and construct it. - declaration = extensionDeclaration.IsUnboundGenericMethod() + return extensionDeclaration.IsUnboundGenericMethod() ? extensionDeclaration.Construct(extensionMethodArguments.ToArray()) : extensionDeclaration; } catch { // If anything goes wrong, fall back to the unbound declaration. - declaration = unboundDeclaration; + return unboundDeclaration; } } else { - declaration = unboundDeclaration; + return unboundDeclaration; } - } - return declaration is not null; + return null; } /// @@ -820,5 +817,35 @@ public static bool ShouldExtractSymbol(this ISymbol symbol) /// public static IEnumerable ExtractionCandidates(this IEnumerable symbols) where T : ISymbol => symbols.Where(symbol => symbol.ShouldExtractSymbol()); + + /// + /// Returns the parameter kind for this parameter symbol, e.g. `ref`, `out`, `params`, etc. + /// + public static Parameter.Kind GetParameterKind(this IParameterSymbol parameter) + { + switch (parameter.RefKind) + { + case RefKind.Out: + return Parameter.Kind.Out; + case RefKind.Ref: + return Parameter.Kind.Ref; + case RefKind.In: + return Parameter.Kind.In; + case RefKind.RefReadOnlyParameter: + return Parameter.Kind.RefReadOnly; + default: + if (parameter.IsParams) + return Parameter.Kind.Params; + + if (parameter.Ordinal == 0) + { + if (parameter.ContainingSymbol is IMethodSymbol method && method.IsExtensionMethod) + { + return Parameter.Kind.This; + } + } + return Parameter.Kind.None; + } + } } } diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Invocation.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Invocation.cs index 26d64339ef06..2ed7aec9955c 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Invocation.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Invocation.cs @@ -126,8 +126,7 @@ private static bool IsDynamicCall(ExpressionNodeInfo info) private static bool IsOperatorLikeCall(ExpressionNodeInfo info) { return info.SymbolInfo.Symbol is IMethodSymbol method && - method.TryGetExtensionMethod(out var original) && - original!.MethodKind == MethodKind.UserDefinedOperator; + method.TryGetExtensionMethod()?.MethodKind == MethodKind.UserDefinedOperator; } public IMethodSymbol? TargetSymbol @@ -140,13 +139,7 @@ public IMethodSymbol? TargetSymbol { var method = symbol as IMethodSymbol; // Case for compiler-generated extension methods. - if (method is not null && - method.TryGetExtensionMethod(out var original)) - { - return original; - } - - return method; + return method?.TryGetExtensionMethod() ?? method; } if (si.CandidateReason == CandidateReason.OverloadResolutionFailure) diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Parameter.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Parameter.cs index 9cca0683f004..dbb410382f95 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Parameter.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Parameter.cs @@ -41,36 +41,6 @@ public enum Kind protected virtual int Ordinal => Symbol.Ordinal + PositionOffset; - private Kind ParamKind - { - get - { - switch (Symbol.RefKind) - { - case RefKind.Out: - return Kind.Out; - case RefKind.Ref: - return Kind.Ref; - case RefKind.In: - return Kind.In; - case RefKind.RefReadOnlyParameter: - return Kind.RefReadOnly; - default: - if (Symbol.IsParams) - return Kind.Params; - - if (Ordinal == 0) - { - if (Symbol.ContainingSymbol is IMethodSymbol method && method.IsExtensionMethod) - { - return Kind.This; - } - } - return Kind.None; - } - } - } - public static Parameter Create(Context cx, IParameterSymbol param, IEntity parent, Parameter? original = null, int positionOffset = 0) { var cachedSymbol = cx.GetPossiblyCachedParameterSymbol(param); @@ -125,7 +95,8 @@ public override void Populate(TextWriter trapFile) Context.ModelError(Symbol, "Inconsistent parameter declaration"); var type = Type.Create(Context, Symbol.Type); - trapFile.@params(this, Name, type.TypeRef, Ordinal, ParamKind, Parent!, Original); + var kind = Symbol.GetParameterKind(); + trapFile.@params(this, Name, type.TypeRef, Ordinal, kind, Parent!, Original); if (Context.OnlyScaffold) { diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/SyntheticExtensionParameter.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/SyntheticExtensionParameter.cs index d417af6eedcd..81d58507a108 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/SyntheticExtensionParameter.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/SyntheticExtensionParameter.cs @@ -7,7 +7,7 @@ namespace Semmle.Extraction.CSharp.Entities { /// /// Synthetic parameter for extension methods declared using the extension syntax. - /// That is, we add a synthetic parameter s to IsValid in the following example: + /// That is, we add a synthetic parameter `s` to `IsValid` in the following example: /// extension(string s) { /// public bool IsValid() { ... } /// } @@ -30,24 +30,6 @@ private SyntheticExtensionParameter(Context cx, Method method, IParameterSymbol private static int Ordinal => 0; - private Parameter.Kind ParamKind - { - get - { - switch (ExtensionParameter.RefKind) - { - case RefKind.Ref: - return Parameter.Kind.Ref; - case RefKind.In: - return Parameter.Kind.In; - case RefKind.RefReadOnlyParameter: - return Parameter.Kind.RefReadOnly; - default: - return Parameter.Kind.None; - } - } - } - private string Name => ExtensionParameter.Name; private bool IsSourceDeclaration => ExtensionMethod.Symbol.IsSourceDeclaration(); @@ -58,7 +40,8 @@ protected override void Populate(TextWriter trapFile) PopulateRefKind(trapFile, ExtensionParameter.RefKind); var type = Type.Create(Context, ExtensionParameter.Type); - trapFile.@params(this, Name, type.TypeRef, Ordinal, ParamKind, ExtensionMethod, Original); + var kind = ExtensionParameter.GetParameterKind(); + trapFile.@params(this, Name, type.TypeRef, Ordinal, kind, ExtensionMethod, Original); if (Context.OnlyScaffold) { diff --git a/csharp/ql/lib/semmle/code/csharp/Callable.qll b/csharp/ql/lib/semmle/code/csharp/Callable.qll index 1bdfb008144a..f8346cfe01e2 100644 --- a/csharp/ql/lib/semmle/code/csharp/Callable.qll +++ b/csharp/ql/lib/semmle/code/csharp/Callable.qll @@ -10,6 +10,7 @@ import exprs.Call private import commons.QualifiedName private import commons.Collections private import semmle.code.csharp.ExprOrStmtParent +private import semmle.code.csharp.internal.Callable private import semmle.code.csharp.metrics.Complexity private import TypeRef @@ -221,24 +222,9 @@ class Callable extends Parameterizable, ExprOrStmtParent, @callable { /** Gets a `Call` that has this callable as a target. */ Call getACall() { this = result.getTarget() } - - /** Holds if this callable is declared in an extension type. */ - predicate isInExtension() { this.getDeclaringType() instanceof ExtensionType } } -/** - * A callable that is declared as an extension. - * - * Either an extension method (`ExtensionMethod`), an extension operator - * (`ExtensionOperator`) or an extension accessor (`ExtensionAccessor`). - */ -abstract class ExtensionCallable extends Callable { - /** Gets the type being extended by this method. */ - pragma[noinline] - Type getExtendedType() { result = this.getDeclaringType().(ExtensionType).getExtendedType() } - - override string getAPrimaryQlClass() { result = "ExtensionCallable" } -} +final class ExtensionCallable = ExtensionCallableImpl; /** * A method, for example @@ -315,15 +301,7 @@ class Method extends Callable, Virtualizable, Attributable, @method { override string getAPrimaryQlClass() { result = "Method" } } -/** - * An extension method. - * - * Either a classic extension method (`ClassicExtensionMethod`) or an extension - * type extension method (`ExtensionTypeExtensionMethod`). - */ -abstract class ExtensionMethod extends ExtensionCallable, Method { - override string getAPrimaryQlClass() { result = "ExtensionMethod" } -} +final class ExtensionMethod = ExtensionMethodImpl; /** * An extension method, for example @@ -334,7 +312,7 @@ abstract class ExtensionMethod extends ExtensionCallable, Method { * } * ``` */ -class ClassicExtensionMethod extends ExtensionMethod { +class ClassicExtensionMethod extends ExtensionMethodImpl { ClassicExtensionMethod() { this.isClassicExtensionMethod() } pragma[noinline] @@ -354,7 +332,7 @@ class ClassicExtensionMethod extends ExtensionMethod { * } * ``` */ -class ExtensionTypeExtensionMethod extends ExtensionMethod { +class ExtensionTypeExtensionMethod extends ExtensionMethodImpl { ExtensionTypeExtensionMethod() { this.isInExtension() } } @@ -589,7 +567,7 @@ class RecordCloneMethod extends Method { * } * ``` */ -class ExtensionOperator extends ExtensionCallable, Operator { +class ExtensionOperator extends ExtensionCallableImpl, Operator { ExtensionOperator() { this.isInExtension() } } diff --git a/csharp/ql/lib/semmle/code/csharp/Member.qll b/csharp/ql/lib/semmle/code/csharp/Member.qll index 529ce8b8b7ef..b64f408af64c 100644 --- a/csharp/ql/lib/semmle/code/csharp/Member.qll +++ b/csharp/ql/lib/semmle/code/csharp/Member.qll @@ -102,6 +102,9 @@ class Declaration extends NamedElement, @declaration { * implicit constructors or accessors. */ predicate isCompilerGenerated() { compiler_generated(this) } + + /** Holds if this declaration is in an extension type. */ + predicate isInExtension() { this.getDeclaringType() instanceof ExtensionType } } /** A declaration that can have a modifier. */ diff --git a/csharp/ql/lib/semmle/code/csharp/Property.qll b/csharp/ql/lib/semmle/code/csharp/Property.qll index d3e65def6716..88665280d5b9 100644 --- a/csharp/ql/lib/semmle/code/csharp/Property.qll +++ b/csharp/ql/lib/semmle/code/csharp/Property.qll @@ -6,6 +6,7 @@ import Member import Stmt import Type private import semmle.code.csharp.ExprOrStmtParent +private import semmle.code.csharp.internal.Callable private import TypeRef /** @@ -272,7 +273,7 @@ class Property extends DeclarationWithGetSetAccessors, @property { * ``` */ class ExtensionProperty extends Property { - ExtensionProperty() { this.getDeclaringType() instanceof ExtensionType } + ExtensionProperty() { this.isInExtension() } } /** @@ -440,8 +441,8 @@ class Accessor extends Callable, Modifiable, Attributable, Overridable, @callabl * } * ``` */ -class ExtensionAccessor extends ExtensionCallable, Accessor { - ExtensionAccessor() { this.getDeclaringType() instanceof ExtensionType } +class ExtensionAccessor extends ExtensionCallableImpl, Accessor { + ExtensionAccessor() { this.isInExtension() } } /** diff --git a/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll b/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll index 71a25ace8d2a..84375bc70130 100644 --- a/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll +++ b/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll @@ -236,10 +236,8 @@ class ParameterAccess extends LocalScopeVariableAccess, @parameter_access_expr { * ``` */ class SyntheticExtensionParameterAccess extends ParameterAccess { - private Parameter p; - SyntheticExtensionParameterAccess() { - exists(ExtensionType et | + exists(ExtensionType et, Parameter p | p = et.getReceiverParameter() and expr_access(this, p) ) diff --git a/csharp/ql/lib/semmle/code/csharp/internal/Callable.qll b/csharp/ql/lib/semmle/code/csharp/internal/Callable.qll new file mode 100644 index 000000000000..533bf31c0741 --- /dev/null +++ b/csharp/ql/lib/semmle/code/csharp/internal/Callable.qll @@ -0,0 +1,33 @@ +/** + * INTERNAL: Do not use. + * + * Provides `Callable` classes, which are things that can be called + * such as methods and operators. + */ + +private import semmle.code.csharp.Callable +private import semmle.code.csharp.Property + +/** + * A callable that is declared as an extension. + * + * Either an extension method (`ExtensionMethod`), an extension operator + * (`ExtensionOperator`) or an extension accessor (`ExtensionAccessor`). + */ +abstract class ExtensionCallableImpl extends Callable { + /** Gets the type being extended by this method. */ + pragma[noinline] + Type getExtendedType() { result = this.getDeclaringType().(ExtensionType).getExtendedType() } + + override string getAPrimaryQlClass() { result = "ExtensionCallable" } +} + +/** + * An extension method. + * + * Either a classic extension method (`ClassicExtensionMethod`) or an extension + * type extension method (`ExtensionTypeExtensionMethod`). + */ +abstract class ExtensionMethodImpl extends ExtensionCallableImpl, Method { + override string getAPrimaryQlClass() { result = "ExtensionMethod" } +} diff --git a/csharp/ql/lib/semmlecode.csharp.dbscheme b/csharp/ql/lib/semmlecode.csharp.dbscheme index a39a96d1f33b..178a7e6cf335 100644 --- a/csharp/ql/lib/semmlecode.csharp.dbscheme +++ b/csharp/ql/lib/semmlecode.csharp.dbscheme @@ -222,7 +222,7 @@ overlayChangedFiles( | @using_directive | @type_parameter_constraints | @externalDataElement | @xmllocatable | @asp_element | @namespace | @preprocessor_directive; -@declaration = @callable | @generic | @assignable | @namespace | @extension_type; +@declaration = @callable | @generic | @assignable | @namespace; @named_element = @namespace | @declaration; From bcdbd6e283c18bb3d5b604eb33fa404127e9a3ba Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Mon, 9 Feb 2026 13:27:32 +0100 Subject: [PATCH 345/433] C#: Use the fully qualified name for the extension type when printing extension types. --- .../code/csharp/commons/QualifiedName.qll | 18 ++++++++++++------ .../csharp/dataflow/internal/ExternalFlow.qll | 2 +- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/csharp/ql/lib/semmle/code/csharp/commons/QualifiedName.qll b/csharp/ql/lib/semmle/code/csharp/commons/QualifiedName.qll index 2af02f3e85f2..6fef9cc24571 100644 --- a/csharp/ql/lib/semmle/code/csharp/commons/QualifiedName.qll +++ b/csharp/ql/lib/semmle/code/csharp/commons/QualifiedName.qll @@ -67,6 +67,12 @@ module QualifiedName { ) } + private string getName(ValueOrRefType t) { + not t instanceof ExtensionType and result = t.getUndecoratedName() + or + result = "extension(" + getFullName(t.(ExtensionType).getExtendedType()) + ")" + } + /** Holds if declaration `d` has the qualified name `qualifier`.`name`. */ predicate hasQualifiedName(Declaration d, string qualifier, string name) { d = @@ -86,12 +92,12 @@ module QualifiedName { exists(string name0 | name = name0 + Input::getUnboundGenericSuffix(ugt) | exists(string enclosing | hasQualifiedName(ugt.getDeclaringType(), qualifier, enclosing) and - name0 = enclosing + "+" + ugt.getUndecoratedName() + name0 = enclosing + "+" + getName(ugt) ) or not exists(ugt.getDeclaringType()) and qualifier = ugt.getNamespace().getFullName() and - name0 = ugt.getUndecoratedName() + name0 = getName(ugt) ) ) or @@ -100,12 +106,12 @@ module QualifiedName { exists(string name0 | name = name0 + "<" + getTypeArgumentsQualifiedNames(ct) + ">" | exists(string enclosing | hasQualifiedName(ct.getDeclaringType(), qualifier, enclosing) and - name0 = enclosing + "+" + ct.getUndecoratedName() + name0 = enclosing + "+" + getName(ct) ) or not exists(ct.getDeclaringType()) and qualifier = ct.getNamespace().getFullName() and - name0 = ct.getUndecoratedName() + name0 = getName(ct) ) ) or @@ -116,12 +122,12 @@ module QualifiedName { ( exists(string enclosing | hasQualifiedName(vort.getDeclaringType(), qualifier, enclosing) and - name = enclosing + "+" + vort.getUndecoratedName() + name = enclosing + "+" + getName(vort) ) or not exists(vort.getDeclaringType()) and qualifier = vort.getNamespace().getFullName() and - name = vort.getUndecoratedName() + name = getName(vort) ) ) or diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll index d358c4aa441a..edfaae018e98 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll @@ -214,7 +214,7 @@ module ModelValidation { not namespace.regexpMatch("[a-zA-Z0-9_\\.]+") and result = "Dubious namespace \"" + namespace + "\" in " + pred + " model." or - not type.regexpMatch("[a-zA-Z0-9_<>,\\(\\)\\+]+") and + not type.regexpMatch("[a-zA-Z0-9_<>,\\(\\)\\+\\.]+") and result = "Dubious type \"" + type + "\" in " + pred + " model." or not name.regexpMatch("[a-zA-Z0-9_<>,\\.]*") and From d9fea156f670a85e709447145345de0a63de99af Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Mon, 9 Feb 2026 13:28:11 +0100 Subject: [PATCH 346/433] C#: Update MaD models for extension members. --- .../dataflow/external-models/ExternalFlow.ext.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.ext.yml b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.ext.yml index 3a4d5bcd91b8..21e66b840669 100644 --- a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.ext.yml +++ b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.ext.yml @@ -45,10 +45,10 @@ extensions: - ["My.Qltest", "K", false, "GetMyFieldOnSyntheticField", "()", "", "Argument[this].SyntheticField[My.Qltest.K.MySyntheticField2].Field[My.Qltest.K.MyField]", "ReturnValue", "value", "manual"] - ["My.Qltest", "Library", false, "SetValue", "(System.Object)", "", "Argument[0]", "Argument[this].SyntheticField[X]", "value", "dfc-generated"] - ["My.Qltest", "Library", false, "GetValue", "()", "", "Argument[this].SyntheticField[X]", "ReturnValue", "value", "dfc-generated"] - - ["My.Qltest", "TestExtensions+extension(Object)", false, "Method1", "(System.Object)", "", "Argument[0]", "ReturnValue", "value", "manual"] - - ["My.Qltest", "TestExtensions+extension(Object)", false, "StaticMethod1", "(System.Object)", "", "Argument[0]", "ReturnValue", "value", "manual"] - - ["My.Qltest", "TestExtensions+extension(Object)", false, "get_Property1", "(System.Object)", "", "Argument[0].SyntheticField[TestExtensions.Property1]", "ReturnValue", "value", "manual"] - - ["My.Qltest", "TestExtensions+extension(Object)", false, "set_Property1", "(System.Object,System.Object)", "", "Argument[1]", "Argument[0].SyntheticField[TestExtensions.Property1]", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(System.Object)", false, "Method1", "(System.Object)", "", "Argument[0]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(System.Object)", false, "StaticMethod1", "(System.Object)", "", "Argument[0]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(System.Object)", false, "get_Property1", "(System.Object)", "", "Argument[0].SyntheticField[TestExtensions.Property1]", "ReturnValue", "value", "manual"] + - ["My.Qltest", "TestExtensions+extension(System.Object)", false, "set_Property1", "(System.Object,System.Object)", "", "Argument[1]", "Argument[0].SyntheticField[TestExtensions.Property1]", "value", "manual"] - ["My.Qltest", "TestExtensions+extension(T)", false, "GenericMethod1", "(T)", "", "Argument[0]", "ReturnValue", "value", "manual"] - ["My.Qltest", "TestExtensions+extension(T)", false, "GenericStaticMethod1", "(T)", "", "Argument[0]", "ReturnValue", "value", "manual"] - ["My.Qltest", "TestExtensions+extension(T)", false, "get_GenericProperty1", "(T)", "", "Argument[0].SyntheticField[TestExtensions.GenericProperty1]", "ReturnValue", "value", "manual"] From eff9f99f44a1a5d0654f66c300e77b00ab10f300 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Mon, 9 Feb 2026 13:30:14 +0100 Subject: [PATCH 347/433] C#: Update test expected output. --- .../external-models/ExternalFlow.expected | 8 +-- .../extension/extensions.expected | 62 +++++++++---------- 2 files changed, 35 insertions(+), 35 deletions(-) diff --git a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.expected b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.expected index b5c0dd3b59c9..b0256d6c41d8 100644 --- a/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.expected +++ b/csharp/ql/test/library-tests/dataflow/external-models/ExternalFlow.expected @@ -32,10 +32,10 @@ models | 31 | Summary: My.Qltest; Library; false; GetValue; (); ; Argument[this].SyntheticField[X]; ReturnValue; value; dfc-generated | | 32 | Summary: My.Qltest; Library; false; MixedFlowArgs; (System.Object,System.Object); ; Argument[1]; ReturnValue; value; manual | | 33 | Summary: My.Qltest; Library; false; SetValue; (System.Object); ; Argument[0]; Argument[this].SyntheticField[X]; value; dfc-generated | -| 34 | Summary: My.Qltest; TestExtensions+extension(Object); false; Method1; (System.Object); ; Argument[0]; ReturnValue; value; manual | -| 35 | Summary: My.Qltest; TestExtensions+extension(Object); false; StaticMethod1; (System.Object); ; Argument[0]; ReturnValue; value; manual | -| 36 | Summary: My.Qltest; TestExtensions+extension(Object); false; get_Property1; (System.Object); ; Argument[0].SyntheticField[TestExtensions.Property1]; ReturnValue; value; manual | -| 37 | Summary: My.Qltest; TestExtensions+extension(Object); false; set_Property1; (System.Object,System.Object); ; Argument[1]; Argument[0].SyntheticField[TestExtensions.Property1]; value; manual | +| 34 | Summary: My.Qltest; TestExtensions+extension(System.Object); false; Method1; (System.Object); ; Argument[0]; ReturnValue; value; manual | +| 35 | Summary: My.Qltest; TestExtensions+extension(System.Object); false; StaticMethod1; (System.Object); ; Argument[0]; ReturnValue; value; manual | +| 36 | Summary: My.Qltest; TestExtensions+extension(System.Object); false; get_Property1; (System.Object); ; Argument[0].SyntheticField[TestExtensions.Property1]; ReturnValue; value; manual | +| 37 | Summary: My.Qltest; TestExtensions+extension(System.Object); false; set_Property1; (System.Object,System.Object); ; Argument[1]; Argument[0].SyntheticField[TestExtensions.Property1]; value; manual | | 38 | Summary: My.Qltest; TestExtensions+extension(T); false; GenericMethod1; (T); ; Argument[0]; ReturnValue; value; manual | | 39 | Summary: My.Qltest; TestExtensions+extension(T); false; GenericStaticMethod1; (T); ; Argument[0]; ReturnValue; value; manual | | 40 | Summary: My.Qltest; TestExtensions+extension(T); false; get_GenericProperty1; (T); ; Argument[0].SyntheticField[TestExtensions.GenericProperty1]; ReturnValue; value; manual | diff --git a/csharp/ql/test/library-tests/extension/extensions.expected b/csharp/ql/test/library-tests/extension/extensions.expected index c892ff08947b..45b557a96352 100644 --- a/csharp/ql/test/library-tests/extension/extensions.expected +++ b/csharp/ql/test/library-tests/extension/extensions.expected @@ -25,27 +25,27 @@ extensionMethodCallArgument | extensions.cs:105:9:105:69 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:39:16:39 | t | 1 | extensions.cs:105:49:105:54 | "test" | | extensions.cs:105:9:105:69 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:16:49:16:49 | o | 2 | extensions.cs:105:57:105:68 | object creation of type Object | extensionMethodCalls -| extensions.cs:57:19:57:24 | call to method M1 | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).M1 | -| extensions.cs:58:19:58:29 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).M2 | -| extensions.cs:59:19:59:35 | call to method StaticM1 | extensions.cs:13:27:13:34 | StaticM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StaticM1 | -| extensions.cs:60:19:60:36 | call to method StaticM2 | extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StaticM2 | -| extensions.cs:61:19:61:41 | call to method StaticObjectM1 | extensions.cs:21:27:21:40 | StaticObjectM1 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(Object).StaticObjectM1 | -| extensions.cs:62:19:62:42 | call to method StaticObjectM2 | extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(Object).StaticObjectM2 | +| extensions.cs:57:19:57:24 | call to method M1 | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).M1 | +| extensions.cs:58:19:58:29 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).M2 | +| extensions.cs:59:19:59:35 | call to method StaticM1 | extensions.cs:13:27:13:34 | StaticM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StaticM1 | +| extensions.cs:60:19:60:36 | call to method StaticM2 | extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StaticM2 | +| extensions.cs:61:19:61:41 | call to method StaticObjectM1 | extensions.cs:21:27:21:40 | StaticObjectM1 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(System.Object).StaticObjectM1 | +| extensions.cs:62:19:62:42 | call to method StaticObjectM2 | extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(System.Object).StaticObjectM2 | | extensions.cs:68:17:68:22 | call to method M3 | extensions.cs:40:24:40:25 | M3 | extensions.cs:38:21:38:37 | ClassicExtensions | ClassicExtensions.M3 | -| extensions.cs:71:9:71:26 | call to method M1 | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).M1 | -| extensions.cs:72:9:72:33 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).M2 | -| extensions.cs:73:9:73:31 | call to method StaticM1 | extensions.cs:13:27:13:34 | StaticM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StaticM1 | -| extensions.cs:74:9:74:32 | call to method StaticM2 | extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StaticM2 | -| extensions.cs:75:9:75:37 | call to method StaticObjectM1 | extensions.cs:21:27:21:40 | StaticObjectM1 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(Object).StaticObjectM1 | -| extensions.cs:76:9:76:38 | call to method StaticObjectM2 | extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(Object).StaticObjectM2 | -| extensions.cs:94:9:94:21 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(Object).GenericM1 | -| extensions.cs:95:9:95:21 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(String) | MyExtensions+extension(String).GenericM1 | -| extensions.cs:98:9:98:33 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(Object).GenericM1 | -| extensions.cs:99:9:99:33 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(String) | MyExtensions+extension(String).GenericM1 | -| extensions.cs:101:9:101:23 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(Object).GenericM2 | -| extensions.cs:102:9:102:37 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(Object).GenericM2 | -| extensions.cs:104:9:104:47 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StringGenericM1 | -| extensions.cs:105:9:105:69 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StringGenericM1 | +| extensions.cs:71:9:71:26 | call to method M1 | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).M1 | +| extensions.cs:72:9:72:33 | call to method M2 | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).M2 | +| extensions.cs:73:9:73:31 | call to method StaticM1 | extensions.cs:13:27:13:34 | StaticM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StaticM1 | +| extensions.cs:74:9:74:32 | call to method StaticM2 | extensions.cs:14:27:14:34 | StaticM2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StaticM2 | +| extensions.cs:75:9:75:37 | call to method StaticObjectM1 | extensions.cs:21:27:21:40 | StaticObjectM1 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(System.Object).StaticObjectM1 | +| extensions.cs:76:9:76:38 | call to method StaticObjectM2 | extensions.cs:22:27:22:40 | StaticObjectM2 | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(System.Object).StaticObjectM2 | +| extensions.cs:94:9:94:21 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(System.Object).GenericM1 | +| extensions.cs:95:9:95:21 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(String) | MyExtensions+extension(System.String).GenericM1 | +| extensions.cs:98:9:98:33 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(System.Object).GenericM1 | +| extensions.cs:99:9:99:33 | call to method GenericM1 | extensions.cs:30:21:30:29 | GenericM1 | extensions.cs:26:5:35:5 | extension(String) | MyExtensions+extension(System.String).GenericM1 | +| extensions.cs:101:9:101:23 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(System.Object).GenericM2 | +| extensions.cs:102:9:102:37 | call to method GenericM2 | extensions.cs:31:21:31:32 | GenericM2 | extensions.cs:26:5:35:5 | extension(Object) | MyExtensions+extension(System.Object).GenericM2 | +| extensions.cs:104:9:104:47 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StringGenericM1 | +| extensions.cs:105:9:105:69 | call to method StringGenericM1 | extensions.cs:16:18:16:35 | StringGenericM1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StringGenericM1 | extensionParameter | extensions.cs:11:21:11:22 | M1 | extensions.cs:6:22:6:22 | s | 0 | string | extensions.cs:6:22:6:22 | s | | extensions.cs:12:23:12:24 | M2 | extensions.cs:6:22:6:22 | s | 0 | string | extensions.cs:6:22:6:22 | s | @@ -85,8 +85,8 @@ extensionOperatorCallArgument | extensions.cs:15:39:15:39 | * | extensions.cs:79:9:79:38 | call to operator * | extensions.cs:15:45:15:45 | a | 0 | extensions.cs:79:34:79:34 | 3 | | extensions.cs:15:39:15:39 | * | extensions.cs:79:9:79:38 | call to operator * | extensions.cs:15:55:15:55 | b | 1 | extensions.cs:79:37:79:37 | access to local variable s | extensionOperatorCalls -| extensions.cs:65:19:65:23 | call to operator * | extensions.cs:15:39:15:39 | * | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).op_Multiply | -| extensions.cs:79:9:79:38 | call to operator * | extensions.cs:15:39:15:39 | * | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).op_Multiply | +| extensions.cs:65:19:65:23 | call to operator * | extensions.cs:15:39:15:39 | * | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).op_Multiply | +| extensions.cs:79:9:79:38 | call to operator * | extensions.cs:15:39:15:39 | * | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).op_Multiply | extensionProperty | extensions.cs:8:21:8:25 | Prop1 | extensions.cs:6:5:17:5 | extension(String) | | extensions.cs:9:21:9:25 | Prop2 | extensions.cs:6:5:17:5 | extension(String) | @@ -99,13 +99,13 @@ extensionProperty | extensions.cs:29:21:29:32 | GenericProp2 | extensions.cs:26:5:35:5 | extension(String) | | extensions.cs:29:21:29:32 | GenericProp2 | extensions.cs:26:5:35:5 | extension(T)`1 | extensionPropertyCall -| extensions.cs:50:19:50:25 | access to property Prop1 | extensions.cs:8:21:8:25 | Prop1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).Prop1 | -| extensions.cs:51:19:51:25 | access to property Prop2 | extensions.cs:9:21:9:25 | Prop2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).Prop2 | -| extensions.cs:52:9:52:15 | access to property Prop2 | extensions.cs:9:21:9:25 | Prop2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).Prop2 | -| extensions.cs:53:19:53:36 | access to property StaticProp1 | extensions.cs:10:28:10:38 | StaticProp1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(String).StaticProp1 | -| extensions.cs:54:19:54:35 | access to property StaticProp | extensions.cs:23:28:23:37 | StaticProp | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(Object).StaticProp | +| extensions.cs:50:19:50:25 | access to property Prop1 | extensions.cs:8:21:8:25 | Prop1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).Prop1 | +| extensions.cs:51:19:51:25 | access to property Prop2 | extensions.cs:9:21:9:25 | Prop2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).Prop2 | +| extensions.cs:52:9:52:15 | access to property Prop2 | extensions.cs:9:21:9:25 | Prop2 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).Prop2 | +| extensions.cs:53:19:53:36 | access to property StaticProp1 | extensions.cs:10:28:10:38 | StaticProp1 | extensions.cs:6:5:17:5 | extension(String) | MyExtensions+extension(System.String).StaticProp1 | +| extensions.cs:54:19:54:35 | access to property StaticProp | extensions.cs:23:28:23:37 | StaticProp | extensions.cs:19:5:24:5 | extension(Object) | MyExtensions+extension(System.Object).StaticProp | extensionAccessorCall -| extensions.cs:82:9:82:33 | call to extension accessor get_Prop1 | extensions.cs:8:30:8:41 | get_Prop1 | extensions.cs:8:21:8:25 | Prop1 | MyExtensions+extension(String).get_Prop1 | -| extensions.cs:83:9:83:33 | call to extension accessor get_Prop2 | extensions.cs:9:29:9:31 | get_Prop2 | extensions.cs:9:21:9:25 | Prop2 | MyExtensions+extension(String).get_Prop2 | -| extensions.cs:84:9:84:40 | call to extension accessor set_Prop2 | extensions.cs:9:50:9:52 | set_Prop2 | extensions.cs:9:21:9:25 | Prop2 | MyExtensions+extension(String).set_Prop2 | -| extensions.cs:85:9:85:37 | call to extension accessor get_StaticProp | extensions.cs:23:42:23:45 | get_StaticProp | extensions.cs:23:28:23:37 | StaticProp | MyExtensions+extension(Object).get_StaticProp | +| extensions.cs:82:9:82:33 | call to extension accessor get_Prop1 | extensions.cs:8:30:8:41 | get_Prop1 | extensions.cs:8:21:8:25 | Prop1 | MyExtensions+extension(System.String).get_Prop1 | +| extensions.cs:83:9:83:33 | call to extension accessor get_Prop2 | extensions.cs:9:29:9:31 | get_Prop2 | extensions.cs:9:21:9:25 | Prop2 | MyExtensions+extension(System.String).get_Prop2 | +| extensions.cs:84:9:84:40 | call to extension accessor set_Prop2 | extensions.cs:9:50:9:52 | set_Prop2 | extensions.cs:9:21:9:25 | Prop2 | MyExtensions+extension(System.String).set_Prop2 | +| extensions.cs:85:9:85:37 | call to extension accessor get_StaticProp | extensions.cs:23:42:23:45 | get_StaticProp | extensions.cs:23:28:23:37 | StaticProp | MyExtensions+extension(System.Object).get_StaticProp | From 109d802607cd156266029b38f3b773de61f46f4d Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 9 Feb 2026 14:15:05 +0100 Subject: [PATCH 348/433] Rust: Fix bug in `inferMethodCallTypeSelf` --- .../codeql/rust/internal/typeinference/DerefChain.qll | 9 ++++----- .../codeql/rust/internal/typeinference/TypeInference.qll | 2 +- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll b/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll index 6b8c57812486..03272fe922f9 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll @@ -20,13 +20,12 @@ class DerefImplItemNode extends ImplItemNode { Type resolveSelfTypeAt(TypePath path) { result = resolveImplSelfTypeAt(this, path) } /** - * Holds if the target type of the dereference implemention mentions a type - * parameter at `path`. + * Holds if the target type of the dereference implemention mentions type + * parameter `tp` at `path`. */ pragma[nomagic] - predicate targetHasTypeParameterAt(TypePath path) { - this.getAssocItem("Target").(TypeAlias).getTypeRepr().(TypeMention).getTypeAt(path) instanceof - TypeParameter + predicate targetHasTypeParameterAt(TypePath path, TypeParameter tp) { + tp = this.getAssocItem("Target").(TypeAlias).getTypeRepr().(TypeMention).getTypeAt(path) } /** Gets the first type parameter of the type being implemented, if any. */ diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index e8b5c9c7a19a..ca8153f877af 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -2619,7 +2619,7 @@ private Type inferMethodCallTypeSelf( not result instanceof TypeParameter or exists(TypePath pathToTypeParam, TypePath suffix | - impl.targetHasTypeParameterAt(pathToTypeParam) and + impl.targetHasTypeParameterAt(pathToTypeParam, selfParamType) and path0 = pathToTypeParam.appendInverse(suffix) and result = t0 and path = selfPath.append(suffix) From 42d2de848dc747f8032e4854722806636d37de8d Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Mon, 9 Feb 2026 16:24:00 +0100 Subject: [PATCH 349/433] C#: Add DB upgrade script. --- .../old.dbscheme | 1484 ++++++++++++++++ .../semmlecode.csharp.dbscheme | 1489 +++++++++++++++++ .../upgrade.properties | 2 + 3 files changed, 2975 insertions(+) create mode 100644 csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/old.dbscheme create mode 100644 csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/semmlecode.csharp.dbscheme create mode 100644 csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/upgrade.properties diff --git a/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/old.dbscheme b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/old.dbscheme new file mode 100644 index 000000000000..68b5aec54e50 --- /dev/null +++ b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/old.dbscheme @@ -0,0 +1,1484 @@ +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2021-07-14 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * csc f1.cs f2.cs f3.cs + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + unique int id : @compilation, + string cwd : string ref +); + +compilation_info( + int id : @compilation ref, + string info_key: string ref, + string info_value: string ref +) + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | --compiler + * 1 | *path to compiler* + * 2 | f1.cs + * 3 | f2.cs + * 4 | f3.cs + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile.rsp` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.cs + * 1 | f2.cs + * 2 | f3.cs + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The references used by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs /r:ref1.dll /r:ref2.dll /r:ref3.dll + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | ref1.dll + * 1 | ref2.dll + * 2 | ref3.dll + */ +#keyset[id, num] +compilation_referencing_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + unique int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location ref +); + +extractor_messages( + unique int id: @extractor_message, + int severity: int ref, + string origin : string ref, + string text : string ref, + string entity : string ref, + int location: @location ref, + string stack_trace : string ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +compilation_assembly( + unique int id : @compilation ref, + int assembly: @assembly ref +) + +// Populated by the CSV extractor +externalData( + int id: @externalDataElement, + string path: string ref, + int column: int ref, + string value: string ref); + +sourceLocationPrefix( + string prefix: string ref); + +/* + * Overlay support + */ + +/** + * The CLI will automatically emit the tuple `databaseMetadata("isOverlay", "true")`, + * along with an `overlayChangedFiles` tuple for each new/modified/deleted file, + * when building an overlay database, and these can be used by the discard predicates. + */ +databaseMetadata( + string metadataKey : string ref, + string value : string ref +); + +overlayChangedFiles( + string path : string ref +); + +/* + * C# dbscheme + */ + +/** ELEMENTS **/ + +@element = @declaration | @stmt | @expr | @modifier | @attribute | @namespace_declaration + | @using_directive | @type_parameter_constraints | @externalDataElement + | @xmllocatable | @asp_element | @namespace | @preprocessor_directive; + +@declaration = @callable | @generic | @assignable | @namespace; + +@named_element = @namespace | @declaration; + +@declaration_with_accessors = @property | @indexer | @event; + +@assignable = @variable | @assignable_with_accessors | @event; + +@assignable_with_accessors = @property | @indexer; + +@attributable = @assembly | @field | @parameter | @operator | @method | @constructor + | @destructor | @callable_accessor | @value_or_ref_type | @declaration_with_accessors + | @local_function | @lambda_expr; + +/** LOCATIONS, ASEMMBLIES, MODULES, FILES and FOLDERS **/ + +@location = @location_default | @assembly; + +@locatable = @declaration_with_accessors | @callable_accessor | @declaration_or_directive + | @diagnostic | @extractor_message | @preprocessor_directive | @attribute | @type_mention | @type_parameter_constraints + | @declaration_with_accessors | @callable_accessor | @operator | @method + | @constructor | @destructor | @field | @local_variable | @parameter | @stmt | @expr + | @xmllocatable | @commentline | @commentblock | @asp_element + +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +locations_mapped( + unique int id: @location_default ref, + int mapped_to: @location_default ref); + +@sourceline = @file | @callable | @xmllocatable; + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref); + +assemblies( + unique int id: @assembly, + int file: @file ref, + string fullname: string ref, + string name: string ref, + string version: string ref); + +files( + unique int id: @file, + string name: string ref); + +folders( + unique int id: @folder, + string name: string ref); + +@container = @folder | @file ; + +containerparent( + int parent: @container ref, + unique int child: @container ref); + +file_extraction_mode( + unique int file: @file ref, + int mode: int ref + /* 0 = normal, 1 = standalone extractor */ + ); + +/** NAMESPACES **/ + +@type_container = @namespace | @type; + +namespaces( + unique int id: @namespace, + string name: string ref); + +namespace_declarations( + unique int id: @namespace_declaration, + int namespace_id: @namespace ref); + +namespace_declaration_location( + unique int id: @namespace_declaration ref, + int loc: @location ref); + +parent_namespace( + unique int child_id: @type_container ref, + int namespace_id: @namespace ref); + +@declaration_or_directive = @namespace_declaration | @type | @using_directive; + +parent_namespace_declaration( + int child_id: @declaration_or_directive ref, // cannot be unique because of partial classes + int namespace_id: @namespace_declaration ref); + +@using_directive = @using_namespace_directive | @using_static_directive; + +using_global( + unique int id: @using_directive ref +); + +using_namespace_directives( + unique int id: @using_namespace_directive, + int namespace_id: @namespace ref); + +using_static_directives( + unique int id: @using_static_directive, + int type_id: @type_or_ref ref); + +using_directive_location( + unique int id: @using_directive ref, + int loc: @location ref); + +@preprocessor_directive = @pragma_warning | @pragma_checksum | @directive_define | @directive_undefine | @directive_warning + | @directive_error | @directive_nullable | @directive_line | @directive_region | @directive_endregion | @directive_if + | @directive_elif | @directive_else | @directive_endif; + +@conditional_directive = @directive_if | @directive_elif; +@branch_directive = @directive_if | @directive_elif | @directive_else; + +directive_ifs( + unique int id: @directive_if, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref); /* 0: false, 1: true */ + +directive_elifs( + unique int id: @directive_elif, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +directive_elses( + unique int id: @directive_else, + int branchTaken: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +#keyset[id, start] +directive_endifs( + unique int id: @directive_endif, + unique int start: @directive_if ref); + +directive_define_symbols( + unique int id: @define_symbol_expr ref, + string name: string ref); + +directive_regions( + unique int id: @directive_region, + string name: string ref); + +#keyset[id, start] +directive_endregions( + unique int id: @directive_endregion, + unique int start: @directive_region ref); + +directive_lines( + unique int id: @directive_line, + int kind: int ref); /* 0: default, 1: hidden, 2: numeric, 3: span */ + +directive_line_value( + unique int id: @directive_line ref, + int line: int ref); + +directive_line_file( + unique int id: @directive_line ref, + int file: @file ref); + +directive_line_offset( + unique int id: @directive_line ref, + int offset: int ref); + +directive_line_span( + unique int id: @directive_line ref, + int startLine: int ref, + int startColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +directive_nullables( + unique int id: @directive_nullable, + int setting: int ref, /* 0: disable, 1: enable, 2: restore */ + int target: int ref); /* 0: none, 1: annotations, 2: warnings */ + +directive_warnings( + unique int id: @directive_warning, + string message: string ref); + +directive_errors( + unique int id: @directive_error, + string message: string ref); + +directive_undefines( + unique int id: @directive_undefine, + string name: string ref); + +directive_defines( + unique int id: @directive_define, + string name: string ref); + +pragma_checksums( + unique int id: @pragma_checksum, + int file: @file ref, + string guid: string ref, + string bytes: string ref); + +pragma_warnings( + unique int id: @pragma_warning, + int kind: int ref /* 0 = disable, 1 = restore */); + +#keyset[id, index] +pragma_warning_error_codes( + int id: @pragma_warning ref, + string errorCode: string ref, + int index: int ref); + +preprocessor_directive_location( + unique int id: @preprocessor_directive ref, + int loc: @location ref); + +preprocessor_directive_compilation( + int id: @preprocessor_directive ref, + int compilation: @compilation ref); + +preprocessor_directive_active( + unique int id: @preprocessor_directive ref, + int active: int ref); /* 0: false, 1: true */ + +/** TYPES **/ + +types( + unique int id: @type, + int kind: int ref, + string name: string ref); + +case @type.kind of + 1 = @bool_type +| 2 = @char_type +| 3 = @decimal_type +| 4 = @sbyte_type +| 5 = @short_type +| 6 = @int_type +| 7 = @long_type +| 8 = @byte_type +| 9 = @ushort_type +| 10 = @uint_type +| 11 = @ulong_type +| 12 = @float_type +| 13 = @double_type +| 14 = @enum_type +| 15 = @struct_type +| 17 = @class_type +| 19 = @interface_type +| 20 = @delegate_type +| 21 = @null_type +| 22 = @type_parameter +| 23 = @pointer_type +| 24 = @nullable_type +| 25 = @array_type +| 26 = @void_type +| 27 = @int_ptr_type +| 28 = @uint_ptr_type +| 29 = @dynamic_type +| 30 = @arglist_type +| 31 = @unknown_type +| 32 = @tuple_type +| 33 = @function_pointer_type +| 34 = @inline_array_type + ; + +@simple_type = @bool_type | @char_type | @integral_type | @floating_point_type | @decimal_type; +@integral_type = @signed_integral_type | @unsigned_integral_type; +@signed_integral_type = @sbyte_type | @short_type | @int_type | @long_type; +@unsigned_integral_type = @byte_type | @ushort_type | @uint_type | @ulong_type; +@floating_point_type = @float_type | @double_type; +@value_type = @simple_type | @enum_type | @struct_type | @nullable_type | @int_ptr_type + | @uint_ptr_type | @tuple_type | @void_type | @inline_array_type; +@ref_type = @class_type | @interface_type | @array_type | @delegate_type | @null_type + | @dynamic_type; +@value_or_ref_type = @value_type | @ref_type; + +typerefs( + unique int id: @typeref, + string name: string ref); + +typeref_type( + int id: @typeref ref, + unique int typeId: @type ref); + +@type_or_ref = @type | @typeref; + +array_element_type( + unique int array: @array_type ref, + int dimension: int ref, + int rank: int ref, + int element: @type_or_ref ref); + +nullable_underlying_type( + unique int nullable: @nullable_type ref, + int underlying: @type_or_ref ref); + +pointer_referent_type( + unique int pointer: @pointer_type ref, + int referent: @type_or_ref ref); + +enum_underlying_type( + unique int enum_id: @enum_type ref, + int underlying_type_id: @type_or_ref ref); + +delegate_return_type( + unique int delegate_id: @delegate_type ref, + int return_type_id: @type_or_ref ref); + +function_pointer_return_type( + unique int function_pointer_id: @function_pointer_type ref, + int return_type_id: @type_or_ref ref); + +extend( + int sub: @type ref, + int super: @type_or_ref ref); + +anonymous_types( + unique int id: @type ref); + +@interface_or_ref = @interface_type | @typeref; + +implement( + int sub: @type ref, + int super: @type_or_ref ref); + +type_location( + int id: @type ref, + int loc: @location ref); + +tuple_underlying_type( + unique int tuple: @tuple_type ref, + int struct: @type_or_ref ref); + +#keyset[tuple, index] +tuple_element( + int tuple: @tuple_type ref, + int index: int ref, + unique int field: @field ref); + +attributes( + unique int id: @attribute, + int kind: int ref, + int type_id: @type_or_ref ref, + int target: @attributable ref); + +case @attribute.kind of + 0 = @attribute_default +| 1 = @attribute_return +| 2 = @attribute_assembly +| 3 = @attribute_module +; + +attribute_location( + int id: @attribute ref, + int loc: @location ref); + +@type_mention_parent = @element | @type_mention; + +type_mention( + unique int id: @type_mention, + int type_id: @type_or_ref ref, + int parent: @type_mention_parent ref); + +type_mention_location( + unique int id: @type_mention ref, + int loc: @location ref); + +@has_type_annotation = @assignable | @type_parameter | @callable | @expr | @delegate_type | @generic | @function_pointer_type; + +/** + * A direct annotation on an entity, for example `string? x;`. + * + * Annotations: + * 2 = reftype is not annotated "!" + * 3 = reftype is annotated "?" + * 4 = readonly ref type / in parameter + * 5 = ref type parameter, return or local variable + * 6 = out parameter + * + * Note that the annotation depends on the element it annotates. + * @assignable: The annotation is on the type of the assignable, for example the variable type. + * @type_parameter: The annotation is on the reftype constraint + * @callable: The annotation is on the return type + * @array_type: The annotation is on the element type + */ +type_annotation(int id: @has_type_annotation ref, int annotation: int ref); + +nullability(unique int nullability: @nullability, int kind: int ref); + +case @nullability.kind of + 0 = @oblivious +| 1 = @not_annotated +| 2 = @annotated +; + +#keyset[parent, index] +nullability_parent(int nullability: @nullability ref, int index: int ref, int parent: @nullability ref) + +type_nullability(int id: @has_type_annotation ref, int nullability: @nullability ref); + +/** + * The nullable flow state of an expression, as determined by Roslyn. + * 0 = none (default, not populated) + * 1 = not null + * 2 = maybe null + */ +expr_flowstate(unique int id: @expr ref, int state: int ref); + +/** GENERICS **/ + +@generic = @type | @method | @local_function; + +type_parameters( + unique int id: @type_parameter ref, + int index: int ref, + int generic_id: @generic ref, + int variance: int ref /* none = 0, out = 1, in = 2 */); + +#keyset[constructed_id, index] +type_arguments( + int id: @type_or_ref ref, + int index: int ref, + int constructed_id: @generic_or_ref ref); + +@generic_or_ref = @generic | @typeref; + +constructed_generic( + unique int constructed: @generic ref, + int generic: @generic_or_ref ref); + +type_parameter_constraints( + unique int id: @type_parameter_constraints, + int param_id: @type_parameter ref); + +type_parameter_constraints_location( + int id: @type_parameter_constraints ref, + int loc: @location ref); + +general_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int kind: int ref /* class = 1, struct = 2, new = 3 */); + +specific_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref); + +specific_type_parameter_nullability( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref, + int nullability: @nullability ref); + +/** FUNCTION POINTERS */ + +function_pointer_calling_conventions( + int id: @function_pointer_type ref, + int kind: int ref); + +#keyset[id, index] +has_unmanaged_calling_conventions( + int id: @function_pointer_type ref, + int index: int ref, + int conv_id: @type_or_ref ref); + +/** MODIFIERS */ + +@modifiable = @modifiable_direct | @event_accessor; + +@modifiable_direct = @member | @accessor | @local_function | @anonymous_function_expr; + +modifiers( + unique int id: @modifier, + string name: string ref); + +has_modifiers( + int id: @modifiable_direct ref, + int mod_id: @modifier ref); + +/** MEMBERS **/ + +@member = @method | @constructor | @destructor | @field | @property | @event | @operator | @indexer | @type; + +@named_exprorstmt = @goto_stmt | @labeled_stmt | @expr; + +@virtualizable = @method | @property | @indexer | @event | @operator; + +exprorstmt_name( + unique int parent_id: @named_exprorstmt ref, + string name: string ref); + +nested_types( + unique int id: @type ref, + int declaring_type_id: @type ref, + int unbound_id: @type ref); + +properties( + unique int id: @property, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @property ref); + +property_location( + int id: @property ref, + int loc: @location ref); + +indexers( + unique int id: @indexer, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @indexer ref); + +indexer_location( + int id: @indexer ref, + int loc: @location ref); + +accessors( + unique int id: @accessor, + int kind: int ref, + string name: string ref, + int declaring_member_id: @member ref, + int unbound_id: @accessor ref); + +case @accessor.kind of + 1 = @getter +| 2 = @setter + ; + +init_only_accessors( + unique int id: @accessor ref); + +accessor_location( + int id: @accessor ref, + int loc: @location ref); + +events( + unique int id: @event, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @event ref); + +event_location( + int id: @event ref, + int loc: @location ref); + +event_accessors( + unique int id: @event_accessor, + int kind: int ref, + string name: string ref, + int declaring_event_id: @event ref, + int unbound_id: @event_accessor ref); + +case @event_accessor.kind of + 1 = @add_event_accessor +| 2 = @remove_event_accessor + ; + +event_accessor_location( + int id: @event_accessor ref, + int loc: @location ref); + +operators( + unique int id: @operator, + string name: string ref, + string symbol: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @operator ref); + +operator_location( + int id: @operator ref, + int loc: @location ref); + +constant_value( + int id: @variable ref, + string value: string ref); + +/** CALLABLES **/ + +@callable = @method | @constructor | @destructor | @operator | @callable_accessor | @anonymous_function_expr | @local_function; + +@callable_accessor = @accessor | @event_accessor; + +methods( + unique int id: @method, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @method ref); + +method_location( + int id: @method ref, + int loc: @location ref); + +constructors( + unique int id: @constructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @constructor ref); + +constructor_location( + int id: @constructor ref, + int loc: @location ref); + +destructors( + unique int id: @destructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @destructor ref); + +destructor_location( + int id: @destructor ref, + int loc: @location ref); + +overrides( + int id: @callable ref, + int base_id: @callable ref); + +explicitly_implements( + int id: @member ref, + int interface_id: @interface_or_ref ref); + +local_functions( + unique int id: @local_function, + string name: string ref, + int return_type: @type ref, + int unbound_id: @local_function ref); + +local_function_stmts( + unique int fn: @local_function_stmt ref, + int stmt: @local_function ref); + +/** VARIABLES **/ + +@variable = @local_scope_variable | @field; + +@local_scope_variable = @local_variable | @parameter; + +fields( + unique int id: @field, + int kind: int ref, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @field ref); + +case @field.kind of + 1 = @addressable_field +| 2 = @constant + ; + +field_location( + int id: @field ref, + int loc: @location ref); + +localvars( + unique int id: @local_variable, + int kind: int ref, + string name: string ref, + int implicitly_typed: int ref /* 0 = no, 1 = yes */, + int type_id: @type_or_ref ref, + int parent_id: @local_var_decl_expr ref); + +case @local_variable.kind of + 1 = @addressable_local_variable +| 2 = @local_constant +| 3 = @local_variable_ref + ; + +localvar_location( + unique int id: @local_variable ref, + int loc: @location ref); + +@parameterizable = @callable | @delegate_type | @indexer | @function_pointer_type; + +#keyset[name, parent_id] +#keyset[index, parent_id] +params( + unique int id: @parameter, + string name: string ref, + int type_id: @type_or_ref ref, + int index: int ref, + int mode: int ref, /* value = 0, ref = 1, out = 2, params/array = 3, this = 4, in = 5, ref readonly = 6 */ + int parent_id: @parameterizable ref, + int unbound_id: @parameter ref); + +param_location( + int id: @parameter ref, + int loc: @location ref); + +@has_scoped_annotation = @local_scope_variable + +scoped_annotation( + int id: @has_scoped_annotation ref, + int kind: int ref // scoped ref = 1, scoped value = 2 + ); + +/** STATEMENTS **/ + +@exprorstmt_parent = @control_flow_element | @top_level_exprorstmt_parent; + +statements( + unique int id: @stmt, + int kind: int ref); + +#keyset[index, parent] +stmt_parent( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_stmt_parent = @callable; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +stmt_parent_top_level( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @top_level_stmt_parent ref); + +case @stmt.kind of + 1 = @block_stmt +| 2 = @expr_stmt +| 3 = @if_stmt +| 4 = @switch_stmt +| 5 = @while_stmt +| 6 = @do_stmt +| 7 = @for_stmt +| 8 = @foreach_stmt +| 9 = @break_stmt +| 10 = @continue_stmt +| 11 = @goto_stmt +| 12 = @goto_case_stmt +| 13 = @goto_default_stmt +| 14 = @throw_stmt +| 15 = @return_stmt +| 16 = @yield_stmt +| 17 = @try_stmt +| 18 = @checked_stmt +| 19 = @unchecked_stmt +| 20 = @lock_stmt +| 21 = @using_block_stmt +| 22 = @var_decl_stmt +| 23 = @const_decl_stmt +| 24 = @empty_stmt +| 25 = @unsafe_stmt +| 26 = @fixed_stmt +| 27 = @label_stmt +| 28 = @catch +| 29 = @case_stmt +| 30 = @local_function_stmt +| 31 = @using_decl_stmt + ; + +@using_stmt = @using_block_stmt | @using_decl_stmt; + +@labeled_stmt = @label_stmt | @case; + +@decl_stmt = @var_decl_stmt | @const_decl_stmt | @using_decl_stmt; + +@cond_stmt = @if_stmt | @switch_stmt; + +@loop_stmt = @while_stmt | @do_stmt | @for_stmt | @foreach_stmt; + +@jump_stmt = @break_stmt | @goto_any_stmt | @continue_stmt | @throw_stmt | @return_stmt + | @yield_stmt; + +@goto_any_stmt = @goto_default_stmt | @goto_case_stmt | @goto_stmt; + + +stmt_location( + unique int id: @stmt ref, + int loc: @location ref); + +catch_type( + unique int catch_id: @catch ref, + int type_id: @type_or_ref ref, + int kind: int ref /* explicit = 1, implicit = 2 */); + +foreach_stmt_info( + unique int id: @foreach_stmt ref, + int kind: int ref /* non-async = 1, async = 2 */); + +@foreach_symbol = @method | @property | @type_or_ref; + +#keyset[id, kind] +foreach_stmt_desugar( + int id: @foreach_stmt ref, + int symbol: @foreach_symbol ref, + int kind: int ref /* GetEnumeratorMethod = 1, CurrentProperty = 2, MoveNextMethod = 3, DisposeMethod = 4, ElementType = 5 */); + +/** EXPRESSIONS **/ + +expressions( + unique int id: @expr, + int kind: int ref, + int type_id: @type_or_ref ref); + +#keyset[index, parent] +expr_parent( + unique int expr: @expr ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_expr_parent = @attribute | @field | @property | @indexer | @parameter | @directive_if | @directive_elif; + +@top_level_exprorstmt_parent = @top_level_expr_parent | @top_level_stmt_parent; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +expr_parent_top_level( + unique int expr: @expr ref, + int index: int ref, + int parent: @top_level_exprorstmt_parent ref); + +case @expr.kind of +/* literal */ + 1 = @bool_literal_expr +| 2 = @char_literal_expr +| 3 = @decimal_literal_expr +| 4 = @int_literal_expr +| 5 = @long_literal_expr +| 6 = @uint_literal_expr +| 7 = @ulong_literal_expr +| 8 = @float_literal_expr +| 9 = @double_literal_expr +| 10 = @utf16_string_literal_expr +| 11 = @null_literal_expr +/* primary & unary */ +| 12 = @this_access_expr +| 13 = @base_access_expr +| 14 = @local_variable_access_expr +| 15 = @parameter_access_expr +| 16 = @field_access_expr +| 17 = @property_access_expr +| 18 = @method_access_expr +| 19 = @event_access_expr +| 20 = @indexer_access_expr +| 21 = @array_access_expr +| 22 = @type_access_expr +| 23 = @typeof_expr +| 24 = @method_invocation_expr +| 25 = @delegate_invocation_expr +| 26 = @operator_invocation_expr +| 27 = @cast_expr +| 28 = @object_creation_expr +| 29 = @explicit_delegate_creation_expr +| 30 = @implicit_delegate_creation_expr +| 31 = @array_creation_expr +| 32 = @default_expr +| 33 = @plus_expr +| 34 = @minus_expr +| 35 = @bit_not_expr +| 36 = @log_not_expr +| 37 = @post_incr_expr +| 38 = @post_decr_expr +| 39 = @pre_incr_expr +| 40 = @pre_decr_expr +/* multiplicative */ +| 41 = @mul_expr +| 42 = @div_expr +| 43 = @rem_expr +/* additive */ +| 44 = @add_expr +| 45 = @sub_expr +/* shift */ +| 46 = @lshift_expr +| 47 = @rshift_expr +/* relational */ +| 48 = @lt_expr +| 49 = @gt_expr +| 50 = @le_expr +| 51 = @ge_expr +/* equality */ +| 52 = @eq_expr +| 53 = @ne_expr +/* logical */ +| 54 = @bit_and_expr +| 55 = @bit_xor_expr +| 56 = @bit_or_expr +| 57 = @log_and_expr +| 58 = @log_or_expr +/* type testing */ +| 59 = @is_expr +| 60 = @as_expr +/* null coalescing */ +| 61 = @null_coalescing_expr +/* conditional */ +| 62 = @conditional_expr +/* assignment */ +| 63 = @simple_assign_expr +| 64 = @assign_add_expr +| 65 = @assign_sub_expr +| 66 = @assign_mul_expr +| 67 = @assign_div_expr +| 68 = @assign_rem_expr +| 69 = @assign_and_expr +| 70 = @assign_xor_expr +| 71 = @assign_or_expr +| 72 = @assign_lshift_expr +| 73 = @assign_rshift_expr +/* more */ +| 74 = @object_init_expr +| 75 = @collection_init_expr +| 76 = @array_init_expr +| 77 = @checked_expr +| 78 = @unchecked_expr +| 79 = @constructor_init_expr +| 80 = @add_event_expr +| 81 = @remove_event_expr +| 82 = @par_expr +| 83 = @local_var_decl_expr +| 84 = @lambda_expr +| 85 = @anonymous_method_expr +| 86 = @namespace_expr +/* dynamic */ +| 92 = @dynamic_element_access_expr +| 93 = @dynamic_member_access_expr +/* unsafe */ +| 100 = @pointer_indirection_expr +| 101 = @address_of_expr +| 102 = @sizeof_expr +/* async */ +| 103 = @await_expr +/* C# 6.0 */ +| 104 = @nameof_expr +| 105 = @interpolated_string_expr +| 106 = @unknown_expr +/* C# 7.0 */ +| 107 = @throw_expr +| 108 = @tuple_expr +| 109 = @local_function_invocation_expr +| 110 = @ref_expr +| 111 = @discard_expr +/* C# 8.0 */ +| 112 = @range_expr +| 113 = @index_expr +| 114 = @switch_expr +| 115 = @recursive_pattern_expr +| 116 = @property_pattern_expr +| 117 = @positional_pattern_expr +| 118 = @switch_case_expr +| 119 = @assign_coalesce_expr +| 120 = @suppress_nullable_warning_expr +| 121 = @namespace_access_expr +/* C# 9.0 */ +| 122 = @lt_pattern_expr +| 123 = @gt_pattern_expr +| 124 = @le_pattern_expr +| 125 = @ge_pattern_expr +| 126 = @not_pattern_expr +| 127 = @and_pattern_expr +| 128 = @or_pattern_expr +| 129 = @function_pointer_invocation_expr +| 130 = @with_expr +/* C# 11.0 */ +| 131 = @list_pattern_expr +| 132 = @slice_pattern_expr +| 133 = @urshift_expr +| 134 = @assign_urshift_expr +| 135 = @utf8_string_literal_expr +/* C# 12.0 */ +| 136 = @collection_expr +| 137 = @spread_element_expr +| 138 = @interpolated_string_insert_expr +/* Preprocessor */ +| 999 = @define_symbol_expr +; + +@switch = @switch_stmt | @switch_expr; +@case = @case_stmt | @switch_case_expr; +@pattern_match = @case | @is_expr; +@unary_pattern_expr = @not_pattern_expr; +@relational_pattern_expr = @gt_pattern_expr | @lt_pattern_expr | @ge_pattern_expr | @le_pattern_expr; +@binary_pattern_expr = @and_pattern_expr | @or_pattern_expr; + +@integer_literal_expr = @int_literal_expr | @long_literal_expr | @uint_literal_expr | @ulong_literal_expr; +@real_literal_expr = @float_literal_expr | @double_literal_expr | @decimal_literal_expr; +@string_literal_expr = @utf16_string_literal_expr | @utf8_string_literal_expr; +@literal_expr = @bool_literal_expr | @char_literal_expr | @integer_literal_expr | @real_literal_expr + | @string_literal_expr | @null_literal_expr; + +@assign_expr = @simple_assign_expr | @assign_op_expr | @local_var_decl_expr; +@assign_op_expr = @assign_arith_expr | @assign_bitwise_expr | @assign_event_expr | @assign_coalesce_expr; +@assign_event_expr = @add_event_expr | @remove_event_expr; + +@assign_arith_expr = @assign_add_expr | @assign_sub_expr | @assign_mul_expr | @assign_div_expr + | @assign_rem_expr +@assign_bitwise_expr = @assign_and_expr | @assign_or_expr | @assign_xor_expr + | @assign_lshift_expr | @assign_rshift_expr | @assign_urshift_expr; + +@member_access_expr = @field_access_expr | @property_access_expr | @indexer_access_expr | @event_access_expr + | @method_access_expr | @type_access_expr | @dynamic_member_access_expr; +@access_expr = @member_access_expr | @this_access_expr | @base_access_expr | @assignable_access_expr | @namespace_access_expr; +@element_access_expr = @indexer_access_expr | @array_access_expr | @dynamic_element_access_expr; + +@local_variable_access = @local_variable_access_expr | @local_var_decl_expr; +@local_scope_variable_access_expr = @parameter_access_expr | @local_variable_access; +@variable_access_expr = @local_scope_variable_access_expr | @field_access_expr; + +@assignable_access_expr = @variable_access_expr | @property_access_expr | @element_access_expr + | @event_access_expr | @dynamic_member_access_expr; + +@objectorcollection_init_expr = @object_init_expr | @collection_init_expr; + +@delegate_creation_expr = @explicit_delegate_creation_expr | @implicit_delegate_creation_expr; + +@bin_arith_op_expr = @mul_expr | @div_expr | @rem_expr | @add_expr | @sub_expr; +@incr_op_expr = @pre_incr_expr | @post_incr_expr; +@decr_op_expr = @pre_decr_expr | @post_decr_expr; +@mut_op_expr = @incr_op_expr | @decr_op_expr; +@un_arith_op_expr = @plus_expr | @minus_expr | @mut_op_expr; +@arith_op_expr = @bin_arith_op_expr | @un_arith_op_expr; + +@ternary_log_op_expr = @conditional_expr; +@bin_log_op_expr = @log_and_expr | @log_or_expr | @null_coalescing_expr; +@un_log_op_expr = @log_not_expr; +@log_expr = @un_log_op_expr | @bin_log_op_expr | @ternary_log_op_expr; + +@bin_bit_op_expr = @bit_and_expr | @bit_or_expr | @bit_xor_expr | @lshift_expr + | @rshift_expr | @urshift_expr; +@un_bit_op_expr = @bit_not_expr; +@bit_expr = @un_bit_op_expr | @bin_bit_op_expr; + +@equality_op_expr = @eq_expr | @ne_expr; +@rel_op_expr = @gt_expr | @lt_expr| @ge_expr | @le_expr; +@comp_expr = @equality_op_expr | @rel_op_expr; + +@op_expr = @assign_expr | @un_op | @bin_op | @ternary_op; + +@ternary_op = @ternary_log_op_expr; +@bin_op = @bin_arith_op_expr | @bin_log_op_expr | @bin_bit_op_expr | @comp_expr; +@un_op = @un_arith_op_expr | @un_log_op_expr | @un_bit_op_expr | @sizeof_expr + | @pointer_indirection_expr | @address_of_expr; + +@anonymous_function_expr = @lambda_expr | @anonymous_method_expr; + +@call = @method_invocation_expr | @constructor_init_expr | @operator_invocation_expr + | @delegate_invocation_expr | @object_creation_expr | @call_access_expr + | @local_function_invocation_expr | @function_pointer_invocation_expr; + +@call_access_expr = @property_access_expr | @event_access_expr | @indexer_access_expr; + +@late_bindable_expr = @dynamic_element_access_expr | @dynamic_member_access_expr + | @object_creation_expr | @method_invocation_expr | @operator_invocation_expr; + +@throw_element = @throw_expr | @throw_stmt; + +@implicitly_typeable_object_creation_expr = @object_creation_expr | @explicit_delegate_creation_expr; + +implicitly_typed_array_creation( + unique int id: @array_creation_expr ref); + +explicitly_sized_array_creation( + unique int id: @array_creation_expr ref); + +stackalloc_array_creation( + unique int id: @array_creation_expr ref); + +implicitly_typed_object_creation( + unique int id: @implicitly_typeable_object_creation_expr ref); + +mutator_invocation_mode( + unique int id: @operator_invocation_expr ref, + int mode: int ref /* prefix = 1, postfix = 2*/); + +expr_value( + unique int id: @expr ref, + string value: string ref); + +expr_call( + unique int caller_id: @expr ref, + int target_id: @callable ref); + +expr_access( + unique int accesser_id: @access_expr ref, + int target_id: @accessible ref); + +@accessible = @method | @assignable | @local_function | @namespace; + +expr_location( + unique int id: @expr ref, + int loc: @location ref); + +dynamic_member_name( + unique int id: @late_bindable_expr ref, + string name: string ref); + +@qualifiable_expr = @member_access_expr + | @method_invocation_expr + | @element_access_expr; + +conditional_access( + unique int id: @qualifiable_expr ref); + +expr_argument( + unique int id: @expr ref, + int mode: int ref); + /* mode is the same as params: value = 0, ref = 1, out = 2 */ + +expr_argument_name( + unique int id: @expr ref, + string name: string ref); + +lambda_expr_return_type( + unique int id: @lambda_expr ref, + int type_id: @type_or_ref ref); + +/* Compiler generated */ + +compiler_generated(unique int id: @element ref); + +/** CONTROL/DATA FLOW **/ + +@control_flow_element = @stmt | @expr; + +/* XML Files */ + +xmlEncoding ( + unique int id: @file ref, + string encoding: string ref); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/* Comments */ + +commentline( + unique int id: @commentline, + int kind: int ref, + string text: string ref, + string rawtext: string ref); + +case @commentline.kind of + 0 = @singlelinecomment +| 1 = @xmldoccomment +| 2 = @multilinecomment; + +commentline_location( + unique int id: @commentline ref, + int loc: @location ref); + +commentblock( + unique int id : @commentblock); + +commentblock_location( + unique int id: @commentblock ref, + int loc: @location ref); + +commentblock_binding( + int id: @commentblock ref, + int entity: @element ref, + int bindtype: int ref); /* 0: Parent, 1: Best, 2: Before, 3: After */ + +commentblock_child( + int id: @commentblock ref, + int commentline: @commentline ref, + int index: int ref); + +/* ASP.NET */ + +case @asp_element.kind of + 0=@asp_close_tag +| 1=@asp_code +| 2=@asp_comment +| 3=@asp_data_binding +| 4=@asp_directive +| 5=@asp_open_tag +| 6=@asp_quoted_string +| 7=@asp_text +| 8=@asp_xml_directive; + +@asp_attribute = @asp_code | @asp_data_binding | @asp_quoted_string; + +asp_elements( + unique int id: @asp_element, + int kind: int ref, + int loc: @location ref); + +asp_comment_server(unique int comment: @asp_comment ref); +asp_code_inline(unique int code: @asp_code ref); +asp_directive_attribute( + int directive: @asp_directive ref, + int index: int ref, + string name: string ref, + int value: @asp_quoted_string ref); +asp_directive_name( + unique int directive: @asp_directive ref, + string name: string ref); +asp_element_body( + unique int element: @asp_element ref, + string body: string ref); +asp_tag_attribute( + int tag: @asp_open_tag ref, + int index: int ref, + string name: string ref, + int attribute: @asp_attribute ref); +asp_tag_name( + unique int tag: @asp_open_tag ref, + string name: string ref); +asp_tag_isempty(int tag: @asp_open_tag ref); diff --git a/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/semmlecode.csharp.dbscheme b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/semmlecode.csharp.dbscheme new file mode 100644 index 000000000000..178a7e6cf335 --- /dev/null +++ b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/semmlecode.csharp.dbscheme @@ -0,0 +1,1489 @@ +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2021-07-14 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * csc f1.cs f2.cs f3.cs + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + unique int id : @compilation, + string cwd : string ref +); + +compilation_info( + int id : @compilation ref, + string info_key: string ref, + string info_value: string ref +) + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | --compiler + * 1 | *path to compiler* + * 2 | f1.cs + * 3 | f2.cs + * 4 | f3.cs + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile.rsp` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.cs + * 1 | f2.cs + * 2 | f3.cs + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The references used by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs /r:ref1.dll /r:ref2.dll /r:ref3.dll + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | ref1.dll + * 1 | ref2.dll + * 2 | ref3.dll + */ +#keyset[id, num] +compilation_referencing_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + unique int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location ref +); + +extractor_messages( + unique int id: @extractor_message, + int severity: int ref, + string origin : string ref, + string text : string ref, + string entity : string ref, + int location: @location ref, + string stack_trace : string ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +compilation_assembly( + unique int id : @compilation ref, + int assembly: @assembly ref +) + +// Populated by the CSV extractor +externalData( + int id: @externalDataElement, + string path: string ref, + int column: int ref, + string value: string ref); + +sourceLocationPrefix( + string prefix: string ref); + +/* + * Overlay support + */ + +/** + * The CLI will automatically emit the tuple `databaseMetadata("isOverlay", "true")`, + * along with an `overlayChangedFiles` tuple for each new/modified/deleted file, + * when building an overlay database, and these can be used by the discard predicates. + */ +databaseMetadata( + string metadataKey : string ref, + string value : string ref +); + +overlayChangedFiles( + string path : string ref +); + +/* + * C# dbscheme + */ + +/** ELEMENTS **/ + +@element = @declaration | @stmt | @expr | @modifier | @attribute | @namespace_declaration + | @using_directive | @type_parameter_constraints | @externalDataElement + | @xmllocatable | @asp_element | @namespace | @preprocessor_directive; + +@declaration = @callable | @generic | @assignable | @namespace; + +@named_element = @namespace | @declaration; + +@declaration_with_accessors = @property | @indexer | @event; + +@assignable = @variable | @assignable_with_accessors | @event; + +@assignable_with_accessors = @property | @indexer; + +@attributable = @assembly | @field | @parameter | @operator | @method | @constructor + | @destructor | @callable_accessor | @value_or_ref_type | @declaration_with_accessors + | @local_function | @lambda_expr; + +/** LOCATIONS, ASEMMBLIES, MODULES, FILES and FOLDERS **/ + +@location = @location_default | @assembly; + +@locatable = @declaration_with_accessors | @callable_accessor | @declaration_or_directive + | @diagnostic | @extractor_message | @preprocessor_directive | @attribute | @type_mention | @type_parameter_constraints + | @declaration_with_accessors | @callable_accessor | @operator | @method + | @constructor | @destructor | @field | @local_variable | @parameter | @stmt | @expr + | @xmllocatable | @commentline | @commentblock | @asp_element + +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +locations_mapped( + unique int id: @location_default ref, + int mapped_to: @location_default ref); + +@sourceline = @file | @callable | @xmllocatable; + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref); + +assemblies( + unique int id: @assembly, + int file: @file ref, + string fullname: string ref, + string name: string ref, + string version: string ref); + +files( + unique int id: @file, + string name: string ref); + +folders( + unique int id: @folder, + string name: string ref); + +@container = @folder | @file ; + +containerparent( + int parent: @container ref, + unique int child: @container ref); + +file_extraction_mode( + unique int file: @file ref, + int mode: int ref + /* 0 = normal, 1 = standalone extractor */ + ); + +/** NAMESPACES **/ + +@type_container = @namespace | @type; + +namespaces( + unique int id: @namespace, + string name: string ref); + +namespace_declarations( + unique int id: @namespace_declaration, + int namespace_id: @namespace ref); + +namespace_declaration_location( + unique int id: @namespace_declaration ref, + int loc: @location ref); + +parent_namespace( + unique int child_id: @type_container ref, + int namespace_id: @namespace ref); + +@declaration_or_directive = @namespace_declaration | @type | @using_directive; + +parent_namespace_declaration( + int child_id: @declaration_or_directive ref, // cannot be unique because of partial classes + int namespace_id: @namespace_declaration ref); + +@using_directive = @using_namespace_directive | @using_static_directive; + +using_global( + unique int id: @using_directive ref +); + +using_namespace_directives( + unique int id: @using_namespace_directive, + int namespace_id: @namespace ref); + +using_static_directives( + unique int id: @using_static_directive, + int type_id: @type_or_ref ref); + +using_directive_location( + unique int id: @using_directive ref, + int loc: @location ref); + +@preprocessor_directive = @pragma_warning | @pragma_checksum | @directive_define | @directive_undefine | @directive_warning + | @directive_error | @directive_nullable | @directive_line | @directive_region | @directive_endregion | @directive_if + | @directive_elif | @directive_else | @directive_endif; + +@conditional_directive = @directive_if | @directive_elif; +@branch_directive = @directive_if | @directive_elif | @directive_else; + +directive_ifs( + unique int id: @directive_if, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref); /* 0: false, 1: true */ + +directive_elifs( + unique int id: @directive_elif, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +directive_elses( + unique int id: @directive_else, + int branchTaken: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +#keyset[id, start] +directive_endifs( + unique int id: @directive_endif, + unique int start: @directive_if ref); + +directive_define_symbols( + unique int id: @define_symbol_expr ref, + string name: string ref); + +directive_regions( + unique int id: @directive_region, + string name: string ref); + +#keyset[id, start] +directive_endregions( + unique int id: @directive_endregion, + unique int start: @directive_region ref); + +directive_lines( + unique int id: @directive_line, + int kind: int ref); /* 0: default, 1: hidden, 2: numeric, 3: span */ + +directive_line_value( + unique int id: @directive_line ref, + int line: int ref); + +directive_line_file( + unique int id: @directive_line ref, + int file: @file ref); + +directive_line_offset( + unique int id: @directive_line ref, + int offset: int ref); + +directive_line_span( + unique int id: @directive_line ref, + int startLine: int ref, + int startColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +directive_nullables( + unique int id: @directive_nullable, + int setting: int ref, /* 0: disable, 1: enable, 2: restore */ + int target: int ref); /* 0: none, 1: annotations, 2: warnings */ + +directive_warnings( + unique int id: @directive_warning, + string message: string ref); + +directive_errors( + unique int id: @directive_error, + string message: string ref); + +directive_undefines( + unique int id: @directive_undefine, + string name: string ref); + +directive_defines( + unique int id: @directive_define, + string name: string ref); + +pragma_checksums( + unique int id: @pragma_checksum, + int file: @file ref, + string guid: string ref, + string bytes: string ref); + +pragma_warnings( + unique int id: @pragma_warning, + int kind: int ref /* 0 = disable, 1 = restore */); + +#keyset[id, index] +pragma_warning_error_codes( + int id: @pragma_warning ref, + string errorCode: string ref, + int index: int ref); + +preprocessor_directive_location( + unique int id: @preprocessor_directive ref, + int loc: @location ref); + +preprocessor_directive_compilation( + int id: @preprocessor_directive ref, + int compilation: @compilation ref); + +preprocessor_directive_active( + unique int id: @preprocessor_directive ref, + int active: int ref); /* 0: false, 1: true */ + +/** TYPES **/ + +types( + unique int id: @type, + int kind: int ref, + string name: string ref); + +case @type.kind of + 1 = @bool_type +| 2 = @char_type +| 3 = @decimal_type +| 4 = @sbyte_type +| 5 = @short_type +| 6 = @int_type +| 7 = @long_type +| 8 = @byte_type +| 9 = @ushort_type +| 10 = @uint_type +| 11 = @ulong_type +| 12 = @float_type +| 13 = @double_type +| 14 = @enum_type +| 15 = @struct_type +| 17 = @class_type +| 19 = @interface_type +| 20 = @delegate_type +| 21 = @null_type +| 22 = @type_parameter +| 23 = @pointer_type +| 24 = @nullable_type +| 25 = @array_type +| 26 = @void_type +| 27 = @int_ptr_type +| 28 = @uint_ptr_type +| 29 = @dynamic_type +| 30 = @arglist_type +| 31 = @unknown_type +| 32 = @tuple_type +| 33 = @function_pointer_type +| 34 = @inline_array_type +| 35 = @extension_type + ; + +@simple_type = @bool_type | @char_type | @integral_type | @floating_point_type | @decimal_type; +@integral_type = @signed_integral_type | @unsigned_integral_type; +@signed_integral_type = @sbyte_type | @short_type | @int_type | @long_type; +@unsigned_integral_type = @byte_type | @ushort_type | @uint_type | @ulong_type; +@floating_point_type = @float_type | @double_type; +@value_type = @simple_type | @enum_type | @struct_type | @nullable_type | @int_ptr_type + | @uint_ptr_type | @tuple_type | @void_type | @inline_array_type; +@ref_type = @class_type | @interface_type | @array_type | @delegate_type | @null_type + | @dynamic_type | @extension_type; +@value_or_ref_type = @value_type | @ref_type; + +typerefs( + unique int id: @typeref, + string name: string ref); + +typeref_type( + int id: @typeref ref, + unique int typeId: @type ref); + +@type_or_ref = @type | @typeref; + +array_element_type( + unique int array: @array_type ref, + int dimension: int ref, + int rank: int ref, + int element: @type_or_ref ref); + +nullable_underlying_type( + unique int nullable: @nullable_type ref, + int underlying: @type_or_ref ref); + +pointer_referent_type( + unique int pointer: @pointer_type ref, + int referent: @type_or_ref ref); + +enum_underlying_type( + unique int enum_id: @enum_type ref, + int underlying_type_id: @type_or_ref ref); + +delegate_return_type( + unique int delegate_id: @delegate_type ref, + int return_type_id: @type_or_ref ref); + +function_pointer_return_type( + unique int function_pointer_id: @function_pointer_type ref, + int return_type_id: @type_or_ref ref); + +extension_receiver_type( + unique int extension: @extension_type ref, + int receiver_type_id: @type_or_ref ref); + +extend( + int sub: @type ref, + int super: @type_or_ref ref); + +anonymous_types( + unique int id: @type ref); + +@interface_or_ref = @interface_type | @typeref; + +implement( + int sub: @type ref, + int super: @type_or_ref ref); + +type_location( + int id: @type ref, + int loc: @location ref); + +tuple_underlying_type( + unique int tuple: @tuple_type ref, + int struct: @type_or_ref ref); + +#keyset[tuple, index] +tuple_element( + int tuple: @tuple_type ref, + int index: int ref, + unique int field: @field ref); + +attributes( + unique int id: @attribute, + int kind: int ref, + int type_id: @type_or_ref ref, + int target: @attributable ref); + +case @attribute.kind of + 0 = @attribute_default +| 1 = @attribute_return +| 2 = @attribute_assembly +| 3 = @attribute_module +; + +attribute_location( + int id: @attribute ref, + int loc: @location ref); + +@type_mention_parent = @element | @type_mention; + +type_mention( + unique int id: @type_mention, + int type_id: @type_or_ref ref, + int parent: @type_mention_parent ref); + +type_mention_location( + unique int id: @type_mention ref, + int loc: @location ref); + +@has_type_annotation = @assignable | @type_parameter | @callable | @expr | @delegate_type | @generic | @function_pointer_type; + +/** + * A direct annotation on an entity, for example `string? x;`. + * + * Annotations: + * 2 = reftype is not annotated "!" + * 3 = reftype is annotated "?" + * 4 = readonly ref type / in parameter + * 5 = ref type parameter, return or local variable + * 6 = out parameter + * + * Note that the annotation depends on the element it annotates. + * @assignable: The annotation is on the type of the assignable, for example the variable type. + * @type_parameter: The annotation is on the reftype constraint + * @callable: The annotation is on the return type + * @array_type: The annotation is on the element type + */ +type_annotation(int id: @has_type_annotation ref, int annotation: int ref); + +nullability(unique int nullability: @nullability, int kind: int ref); + +case @nullability.kind of + 0 = @oblivious +| 1 = @not_annotated +| 2 = @annotated +; + +#keyset[parent, index] +nullability_parent(int nullability: @nullability ref, int index: int ref, int parent: @nullability ref) + +type_nullability(int id: @has_type_annotation ref, int nullability: @nullability ref); + +/** + * The nullable flow state of an expression, as determined by Roslyn. + * 0 = none (default, not populated) + * 1 = not null + * 2 = maybe null + */ +expr_flowstate(unique int id: @expr ref, int state: int ref); + +/** GENERICS **/ + +@generic = @type | @method | @local_function; + +type_parameters( + unique int id: @type_parameter ref, + int index: int ref, + int generic_id: @generic ref, + int variance: int ref /* none = 0, out = 1, in = 2 */); + +#keyset[constructed_id, index] +type_arguments( + int id: @type_or_ref ref, + int index: int ref, + int constructed_id: @generic_or_ref ref); + +@generic_or_ref = @generic | @typeref; + +constructed_generic( + unique int constructed: @generic ref, + int generic: @generic_or_ref ref); + +type_parameter_constraints( + unique int id: @type_parameter_constraints, + int param_id: @type_parameter ref); + +type_parameter_constraints_location( + int id: @type_parameter_constraints ref, + int loc: @location ref); + +general_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int kind: int ref /* class = 1, struct = 2, new = 3 */); + +specific_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref); + +specific_type_parameter_nullability( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref, + int nullability: @nullability ref); + +/** FUNCTION POINTERS */ + +function_pointer_calling_conventions( + int id: @function_pointer_type ref, + int kind: int ref); + +#keyset[id, index] +has_unmanaged_calling_conventions( + int id: @function_pointer_type ref, + int index: int ref, + int conv_id: @type_or_ref ref); + +/** MODIFIERS */ + +@modifiable = @modifiable_direct | @event_accessor; + +@modifiable_direct = @member | @accessor | @local_function | @anonymous_function_expr; + +modifiers( + unique int id: @modifier, + string name: string ref); + +has_modifiers( + int id: @modifiable_direct ref, + int mod_id: @modifier ref); + +/** MEMBERS **/ + +@member = @method | @constructor | @destructor | @field | @property | @event | @operator | @indexer | @type; + +@named_exprorstmt = @goto_stmt | @labeled_stmt | @expr; + +@virtualizable = @method | @property | @indexer | @event | @operator; + +exprorstmt_name( + unique int parent_id: @named_exprorstmt ref, + string name: string ref); + +nested_types( + unique int id: @type ref, + int declaring_type_id: @type ref, + int unbound_id: @type ref); + +properties( + unique int id: @property, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @property ref); + +property_location( + int id: @property ref, + int loc: @location ref); + +indexers( + unique int id: @indexer, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @indexer ref); + +indexer_location( + int id: @indexer ref, + int loc: @location ref); + +accessors( + unique int id: @accessor, + int kind: int ref, + string name: string ref, + int declaring_member_id: @member ref, + int unbound_id: @accessor ref); + +case @accessor.kind of + 1 = @getter +| 2 = @setter + ; + +init_only_accessors( + unique int id: @accessor ref); + +accessor_location( + int id: @accessor ref, + int loc: @location ref); + +events( + unique int id: @event, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @event ref); + +event_location( + int id: @event ref, + int loc: @location ref); + +event_accessors( + unique int id: @event_accessor, + int kind: int ref, + string name: string ref, + int declaring_event_id: @event ref, + int unbound_id: @event_accessor ref); + +case @event_accessor.kind of + 1 = @add_event_accessor +| 2 = @remove_event_accessor + ; + +event_accessor_location( + int id: @event_accessor ref, + int loc: @location ref); + +operators( + unique int id: @operator, + string name: string ref, + string symbol: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @operator ref); + +operator_location( + int id: @operator ref, + int loc: @location ref); + +constant_value( + int id: @variable ref, + string value: string ref); + +/** CALLABLES **/ + +@callable = @method | @constructor | @destructor | @operator | @callable_accessor | @anonymous_function_expr | @local_function; + +@callable_accessor = @accessor | @event_accessor; + +methods( + unique int id: @method, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @method ref); + +method_location( + int id: @method ref, + int loc: @location ref); + +constructors( + unique int id: @constructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @constructor ref); + +constructor_location( + int id: @constructor ref, + int loc: @location ref); + +destructors( + unique int id: @destructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @destructor ref); + +destructor_location( + int id: @destructor ref, + int loc: @location ref); + +overrides( + int id: @callable ref, + int base_id: @callable ref); + +explicitly_implements( + int id: @member ref, + int interface_id: @interface_or_ref ref); + +local_functions( + unique int id: @local_function, + string name: string ref, + int return_type: @type ref, + int unbound_id: @local_function ref); + +local_function_stmts( + unique int fn: @local_function_stmt ref, + int stmt: @local_function ref); + +/** VARIABLES **/ + +@variable = @local_scope_variable | @field; + +@local_scope_variable = @local_variable | @parameter; + +fields( + unique int id: @field, + int kind: int ref, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @field ref); + +case @field.kind of + 1 = @addressable_field +| 2 = @constant + ; + +field_location( + int id: @field ref, + int loc: @location ref); + +localvars( + unique int id: @local_variable, + int kind: int ref, + string name: string ref, + int implicitly_typed: int ref /* 0 = no, 1 = yes */, + int type_id: @type_or_ref ref, + int parent_id: @local_var_decl_expr ref); + +case @local_variable.kind of + 1 = @addressable_local_variable +| 2 = @local_constant +| 3 = @local_variable_ref + ; + +localvar_location( + unique int id: @local_variable ref, + int loc: @location ref); + +@parameterizable = @callable | @delegate_type | @indexer | @function_pointer_type | @extension_type; + +#keyset[name, parent_id] +#keyset[index, parent_id] +params( + unique int id: @parameter, + string name: string ref, + int type_id: @type_or_ref ref, + int index: int ref, + int mode: int ref, /* value = 0, ref = 1, out = 2, params/array = 3, this = 4, in = 5, ref readonly = 6 */ + int parent_id: @parameterizable ref, + int unbound_id: @parameter ref); + +param_location( + int id: @parameter ref, + int loc: @location ref); + +@has_scoped_annotation = @local_scope_variable + +scoped_annotation( + int id: @has_scoped_annotation ref, + int kind: int ref // scoped ref = 1, scoped value = 2 + ); + +/** STATEMENTS **/ + +@exprorstmt_parent = @control_flow_element | @top_level_exprorstmt_parent; + +statements( + unique int id: @stmt, + int kind: int ref); + +#keyset[index, parent] +stmt_parent( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_stmt_parent = @callable; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +stmt_parent_top_level( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @top_level_stmt_parent ref); + +case @stmt.kind of + 1 = @block_stmt +| 2 = @expr_stmt +| 3 = @if_stmt +| 4 = @switch_stmt +| 5 = @while_stmt +| 6 = @do_stmt +| 7 = @for_stmt +| 8 = @foreach_stmt +| 9 = @break_stmt +| 10 = @continue_stmt +| 11 = @goto_stmt +| 12 = @goto_case_stmt +| 13 = @goto_default_stmt +| 14 = @throw_stmt +| 15 = @return_stmt +| 16 = @yield_stmt +| 17 = @try_stmt +| 18 = @checked_stmt +| 19 = @unchecked_stmt +| 20 = @lock_stmt +| 21 = @using_block_stmt +| 22 = @var_decl_stmt +| 23 = @const_decl_stmt +| 24 = @empty_stmt +| 25 = @unsafe_stmt +| 26 = @fixed_stmt +| 27 = @label_stmt +| 28 = @catch +| 29 = @case_stmt +| 30 = @local_function_stmt +| 31 = @using_decl_stmt + ; + +@using_stmt = @using_block_stmt | @using_decl_stmt; + +@labeled_stmt = @label_stmt | @case; + +@decl_stmt = @var_decl_stmt | @const_decl_stmt | @using_decl_stmt; + +@cond_stmt = @if_stmt | @switch_stmt; + +@loop_stmt = @while_stmt | @do_stmt | @for_stmt | @foreach_stmt; + +@jump_stmt = @break_stmt | @goto_any_stmt | @continue_stmt | @throw_stmt | @return_stmt + | @yield_stmt; + +@goto_any_stmt = @goto_default_stmt | @goto_case_stmt | @goto_stmt; + + +stmt_location( + unique int id: @stmt ref, + int loc: @location ref); + +catch_type( + unique int catch_id: @catch ref, + int type_id: @type_or_ref ref, + int kind: int ref /* explicit = 1, implicit = 2 */); + +foreach_stmt_info( + unique int id: @foreach_stmt ref, + int kind: int ref /* non-async = 1, async = 2 */); + +@foreach_symbol = @method | @property | @type_or_ref; + +#keyset[id, kind] +foreach_stmt_desugar( + int id: @foreach_stmt ref, + int symbol: @foreach_symbol ref, + int kind: int ref /* GetEnumeratorMethod = 1, CurrentProperty = 2, MoveNextMethod = 3, DisposeMethod = 4, ElementType = 5 */); + +/** EXPRESSIONS **/ + +expressions( + unique int id: @expr, + int kind: int ref, + int type_id: @type_or_ref ref); + +#keyset[index, parent] +expr_parent( + unique int expr: @expr ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_expr_parent = @attribute | @field | @property | @indexer | @parameter | @directive_if | @directive_elif; + +@top_level_exprorstmt_parent = @top_level_expr_parent | @top_level_stmt_parent; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +expr_parent_top_level( + unique int expr: @expr ref, + int index: int ref, + int parent: @top_level_exprorstmt_parent ref); + +case @expr.kind of +/* literal */ + 1 = @bool_literal_expr +| 2 = @char_literal_expr +| 3 = @decimal_literal_expr +| 4 = @int_literal_expr +| 5 = @long_literal_expr +| 6 = @uint_literal_expr +| 7 = @ulong_literal_expr +| 8 = @float_literal_expr +| 9 = @double_literal_expr +| 10 = @utf16_string_literal_expr +| 11 = @null_literal_expr +/* primary & unary */ +| 12 = @this_access_expr +| 13 = @base_access_expr +| 14 = @local_variable_access_expr +| 15 = @parameter_access_expr +| 16 = @field_access_expr +| 17 = @property_access_expr +| 18 = @method_access_expr +| 19 = @event_access_expr +| 20 = @indexer_access_expr +| 21 = @array_access_expr +| 22 = @type_access_expr +| 23 = @typeof_expr +| 24 = @method_invocation_expr +| 25 = @delegate_invocation_expr +| 26 = @operator_invocation_expr +| 27 = @cast_expr +| 28 = @object_creation_expr +| 29 = @explicit_delegate_creation_expr +| 30 = @implicit_delegate_creation_expr +| 31 = @array_creation_expr +| 32 = @default_expr +| 33 = @plus_expr +| 34 = @minus_expr +| 35 = @bit_not_expr +| 36 = @log_not_expr +| 37 = @post_incr_expr +| 38 = @post_decr_expr +| 39 = @pre_incr_expr +| 40 = @pre_decr_expr +/* multiplicative */ +| 41 = @mul_expr +| 42 = @div_expr +| 43 = @rem_expr +/* additive */ +| 44 = @add_expr +| 45 = @sub_expr +/* shift */ +| 46 = @lshift_expr +| 47 = @rshift_expr +/* relational */ +| 48 = @lt_expr +| 49 = @gt_expr +| 50 = @le_expr +| 51 = @ge_expr +/* equality */ +| 52 = @eq_expr +| 53 = @ne_expr +/* logical */ +| 54 = @bit_and_expr +| 55 = @bit_xor_expr +| 56 = @bit_or_expr +| 57 = @log_and_expr +| 58 = @log_or_expr +/* type testing */ +| 59 = @is_expr +| 60 = @as_expr +/* null coalescing */ +| 61 = @null_coalescing_expr +/* conditional */ +| 62 = @conditional_expr +/* assignment */ +| 63 = @simple_assign_expr +| 64 = @assign_add_expr +| 65 = @assign_sub_expr +| 66 = @assign_mul_expr +| 67 = @assign_div_expr +| 68 = @assign_rem_expr +| 69 = @assign_and_expr +| 70 = @assign_xor_expr +| 71 = @assign_or_expr +| 72 = @assign_lshift_expr +| 73 = @assign_rshift_expr +/* more */ +| 74 = @object_init_expr +| 75 = @collection_init_expr +| 76 = @array_init_expr +| 77 = @checked_expr +| 78 = @unchecked_expr +| 79 = @constructor_init_expr +| 80 = @add_event_expr +| 81 = @remove_event_expr +| 82 = @par_expr +| 83 = @local_var_decl_expr +| 84 = @lambda_expr +| 85 = @anonymous_method_expr +| 86 = @namespace_expr +/* dynamic */ +| 92 = @dynamic_element_access_expr +| 93 = @dynamic_member_access_expr +/* unsafe */ +| 100 = @pointer_indirection_expr +| 101 = @address_of_expr +| 102 = @sizeof_expr +/* async */ +| 103 = @await_expr +/* C# 6.0 */ +| 104 = @nameof_expr +| 105 = @interpolated_string_expr +| 106 = @unknown_expr +/* C# 7.0 */ +| 107 = @throw_expr +| 108 = @tuple_expr +| 109 = @local_function_invocation_expr +| 110 = @ref_expr +| 111 = @discard_expr +/* C# 8.0 */ +| 112 = @range_expr +| 113 = @index_expr +| 114 = @switch_expr +| 115 = @recursive_pattern_expr +| 116 = @property_pattern_expr +| 117 = @positional_pattern_expr +| 118 = @switch_case_expr +| 119 = @assign_coalesce_expr +| 120 = @suppress_nullable_warning_expr +| 121 = @namespace_access_expr +/* C# 9.0 */ +| 122 = @lt_pattern_expr +| 123 = @gt_pattern_expr +| 124 = @le_pattern_expr +| 125 = @ge_pattern_expr +| 126 = @not_pattern_expr +| 127 = @and_pattern_expr +| 128 = @or_pattern_expr +| 129 = @function_pointer_invocation_expr +| 130 = @with_expr +/* C# 11.0 */ +| 131 = @list_pattern_expr +| 132 = @slice_pattern_expr +| 133 = @urshift_expr +| 134 = @assign_urshift_expr +| 135 = @utf8_string_literal_expr +/* C# 12.0 */ +| 136 = @collection_expr +| 137 = @spread_element_expr +| 138 = @interpolated_string_insert_expr +/* Preprocessor */ +| 999 = @define_symbol_expr +; + +@switch = @switch_stmt | @switch_expr; +@case = @case_stmt | @switch_case_expr; +@pattern_match = @case | @is_expr; +@unary_pattern_expr = @not_pattern_expr; +@relational_pattern_expr = @gt_pattern_expr | @lt_pattern_expr | @ge_pattern_expr | @le_pattern_expr; +@binary_pattern_expr = @and_pattern_expr | @or_pattern_expr; + +@integer_literal_expr = @int_literal_expr | @long_literal_expr | @uint_literal_expr | @ulong_literal_expr; +@real_literal_expr = @float_literal_expr | @double_literal_expr | @decimal_literal_expr; +@string_literal_expr = @utf16_string_literal_expr | @utf8_string_literal_expr; +@literal_expr = @bool_literal_expr | @char_literal_expr | @integer_literal_expr | @real_literal_expr + | @string_literal_expr | @null_literal_expr; + +@assign_expr = @simple_assign_expr | @assign_op_expr | @local_var_decl_expr; +@assign_op_expr = @assign_arith_expr | @assign_bitwise_expr | @assign_event_expr | @assign_coalesce_expr; +@assign_event_expr = @add_event_expr | @remove_event_expr; + +@assign_arith_expr = @assign_add_expr | @assign_sub_expr | @assign_mul_expr | @assign_div_expr + | @assign_rem_expr +@assign_bitwise_expr = @assign_and_expr | @assign_or_expr | @assign_xor_expr + | @assign_lshift_expr | @assign_rshift_expr | @assign_urshift_expr; + +@member_access_expr = @field_access_expr | @property_access_expr | @indexer_access_expr | @event_access_expr + | @method_access_expr | @type_access_expr | @dynamic_member_access_expr; +@access_expr = @member_access_expr | @this_access_expr | @base_access_expr | @assignable_access_expr | @namespace_access_expr; +@element_access_expr = @indexer_access_expr | @array_access_expr | @dynamic_element_access_expr; + +@local_variable_access = @local_variable_access_expr | @local_var_decl_expr; +@local_scope_variable_access_expr = @parameter_access_expr | @local_variable_access; +@variable_access_expr = @local_scope_variable_access_expr | @field_access_expr; + +@assignable_access_expr = @variable_access_expr | @property_access_expr | @element_access_expr + | @event_access_expr | @dynamic_member_access_expr; + +@objectorcollection_init_expr = @object_init_expr | @collection_init_expr; + +@delegate_creation_expr = @explicit_delegate_creation_expr | @implicit_delegate_creation_expr; + +@bin_arith_op_expr = @mul_expr | @div_expr | @rem_expr | @add_expr | @sub_expr; +@incr_op_expr = @pre_incr_expr | @post_incr_expr; +@decr_op_expr = @pre_decr_expr | @post_decr_expr; +@mut_op_expr = @incr_op_expr | @decr_op_expr; +@un_arith_op_expr = @plus_expr | @minus_expr | @mut_op_expr; +@arith_op_expr = @bin_arith_op_expr | @un_arith_op_expr; + +@ternary_log_op_expr = @conditional_expr; +@bin_log_op_expr = @log_and_expr | @log_or_expr | @null_coalescing_expr; +@un_log_op_expr = @log_not_expr; +@log_expr = @un_log_op_expr | @bin_log_op_expr | @ternary_log_op_expr; + +@bin_bit_op_expr = @bit_and_expr | @bit_or_expr | @bit_xor_expr | @lshift_expr + | @rshift_expr | @urshift_expr; +@un_bit_op_expr = @bit_not_expr; +@bit_expr = @un_bit_op_expr | @bin_bit_op_expr; + +@equality_op_expr = @eq_expr | @ne_expr; +@rel_op_expr = @gt_expr | @lt_expr| @ge_expr | @le_expr; +@comp_expr = @equality_op_expr | @rel_op_expr; + +@op_expr = @assign_expr | @un_op | @bin_op | @ternary_op; + +@ternary_op = @ternary_log_op_expr; +@bin_op = @bin_arith_op_expr | @bin_log_op_expr | @bin_bit_op_expr | @comp_expr; +@un_op = @un_arith_op_expr | @un_log_op_expr | @un_bit_op_expr | @sizeof_expr + | @pointer_indirection_expr | @address_of_expr; + +@anonymous_function_expr = @lambda_expr | @anonymous_method_expr; + +@call = @method_invocation_expr | @constructor_init_expr | @operator_invocation_expr + | @delegate_invocation_expr | @object_creation_expr | @call_access_expr + | @local_function_invocation_expr | @function_pointer_invocation_expr; + +@call_access_expr = @property_access_expr | @event_access_expr | @indexer_access_expr; + +@late_bindable_expr = @dynamic_element_access_expr | @dynamic_member_access_expr + | @object_creation_expr | @method_invocation_expr | @operator_invocation_expr; + +@throw_element = @throw_expr | @throw_stmt; + +@implicitly_typeable_object_creation_expr = @object_creation_expr | @explicit_delegate_creation_expr; + +implicitly_typed_array_creation( + unique int id: @array_creation_expr ref); + +explicitly_sized_array_creation( + unique int id: @array_creation_expr ref); + +stackalloc_array_creation( + unique int id: @array_creation_expr ref); + +implicitly_typed_object_creation( + unique int id: @implicitly_typeable_object_creation_expr ref); + +mutator_invocation_mode( + unique int id: @operator_invocation_expr ref, + int mode: int ref /* prefix = 1, postfix = 2*/); + +expr_value( + unique int id: @expr ref, + string value: string ref); + +expr_call( + unique int caller_id: @expr ref, + int target_id: @callable ref); + +expr_access( + unique int accesser_id: @access_expr ref, + int target_id: @accessible ref); + +@accessible = @method | @assignable | @local_function | @namespace; + +expr_location( + unique int id: @expr ref, + int loc: @location ref); + +dynamic_member_name( + unique int id: @late_bindable_expr ref, + string name: string ref); + +@qualifiable_expr = @member_access_expr + | @method_invocation_expr + | @element_access_expr; + +conditional_access( + unique int id: @qualifiable_expr ref); + +expr_argument( + unique int id: @expr ref, + int mode: int ref); + /* mode is the same as params: value = 0, ref = 1, out = 2 */ + +expr_argument_name( + unique int id: @expr ref, + string name: string ref); + +lambda_expr_return_type( + unique int id: @lambda_expr ref, + int type_id: @type_or_ref ref); + +/* Compiler generated */ + +compiler_generated(unique int id: @element ref); + +/** CONTROL/DATA FLOW **/ + +@control_flow_element = @stmt | @expr; + +/* XML Files */ + +xmlEncoding ( + unique int id: @file ref, + string encoding: string ref); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/* Comments */ + +commentline( + unique int id: @commentline, + int kind: int ref, + string text: string ref, + string rawtext: string ref); + +case @commentline.kind of + 0 = @singlelinecomment +| 1 = @xmldoccomment +| 2 = @multilinecomment; + +commentline_location( + unique int id: @commentline ref, + int loc: @location ref); + +commentblock( + unique int id : @commentblock); + +commentblock_location( + unique int id: @commentblock ref, + int loc: @location ref); + +commentblock_binding( + int id: @commentblock ref, + int entity: @element ref, + int bindtype: int ref); /* 0: Parent, 1: Best, 2: Before, 3: After */ + +commentblock_child( + int id: @commentblock ref, + int commentline: @commentline ref, + int index: int ref); + +/* ASP.NET */ + +case @asp_element.kind of + 0=@asp_close_tag +| 1=@asp_code +| 2=@asp_comment +| 3=@asp_data_binding +| 4=@asp_directive +| 5=@asp_open_tag +| 6=@asp_quoted_string +| 7=@asp_text +| 8=@asp_xml_directive; + +@asp_attribute = @asp_code | @asp_data_binding | @asp_quoted_string; + +asp_elements( + unique int id: @asp_element, + int kind: int ref, + int loc: @location ref); + +asp_comment_server(unique int comment: @asp_comment ref); +asp_code_inline(unique int code: @asp_code ref); +asp_directive_attribute( + int directive: @asp_directive ref, + int index: int ref, + string name: string ref, + int value: @asp_quoted_string ref); +asp_directive_name( + unique int directive: @asp_directive ref, + string name: string ref); +asp_element_body( + unique int element: @asp_element ref, + string body: string ref); +asp_tag_attribute( + int tag: @asp_open_tag ref, + int index: int ref, + string name: string ref, + int attribute: @asp_attribute ref); +asp_tag_name( + unique int tag: @asp_open_tag ref, + string name: string ref); +asp_tag_isempty(int tag: @asp_open_tag ref); diff --git a/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/upgrade.properties b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/upgrade.properties new file mode 100644 index 000000000000..96953ab23532 --- /dev/null +++ b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/upgrade.properties @@ -0,0 +1,2 @@ +description: Add the elation extension_receiver_type and add the extension_type type kind. +compatibility: full From 3e914f7ff1caa7f92a0ed3b928951ba01e79e60d Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Mon, 9 Feb 2026 16:24:19 +0100 Subject: [PATCH 350/433] C#: Add DB downgrade script. --- .../old.dbscheme | 1489 +++++++++++++++++ .../semmlecode.csharp.dbscheme | 1484 ++++++++++++++++ .../upgrade.properties | 3 + 3 files changed, 2976 insertions(+) create mode 100644 csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/old.dbscheme create mode 100644 csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/semmlecode.csharp.dbscheme create mode 100644 csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/upgrade.properties diff --git a/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/old.dbscheme b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/old.dbscheme new file mode 100644 index 000000000000..178a7e6cf335 --- /dev/null +++ b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/old.dbscheme @@ -0,0 +1,1489 @@ +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2021-07-14 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * csc f1.cs f2.cs f3.cs + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + unique int id : @compilation, + string cwd : string ref +); + +compilation_info( + int id : @compilation ref, + string info_key: string ref, + string info_value: string ref +) + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | --compiler + * 1 | *path to compiler* + * 2 | f1.cs + * 3 | f2.cs + * 4 | f3.cs + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile.rsp` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.cs + * 1 | f2.cs + * 2 | f3.cs + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The references used by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs /r:ref1.dll /r:ref2.dll /r:ref3.dll + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | ref1.dll + * 1 | ref2.dll + * 2 | ref3.dll + */ +#keyset[id, num] +compilation_referencing_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + unique int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location ref +); + +extractor_messages( + unique int id: @extractor_message, + int severity: int ref, + string origin : string ref, + string text : string ref, + string entity : string ref, + int location: @location ref, + string stack_trace : string ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +compilation_assembly( + unique int id : @compilation ref, + int assembly: @assembly ref +) + +// Populated by the CSV extractor +externalData( + int id: @externalDataElement, + string path: string ref, + int column: int ref, + string value: string ref); + +sourceLocationPrefix( + string prefix: string ref); + +/* + * Overlay support + */ + +/** + * The CLI will automatically emit the tuple `databaseMetadata("isOverlay", "true")`, + * along with an `overlayChangedFiles` tuple for each new/modified/deleted file, + * when building an overlay database, and these can be used by the discard predicates. + */ +databaseMetadata( + string metadataKey : string ref, + string value : string ref +); + +overlayChangedFiles( + string path : string ref +); + +/* + * C# dbscheme + */ + +/** ELEMENTS **/ + +@element = @declaration | @stmt | @expr | @modifier | @attribute | @namespace_declaration + | @using_directive | @type_parameter_constraints | @externalDataElement + | @xmllocatable | @asp_element | @namespace | @preprocessor_directive; + +@declaration = @callable | @generic | @assignable | @namespace; + +@named_element = @namespace | @declaration; + +@declaration_with_accessors = @property | @indexer | @event; + +@assignable = @variable | @assignable_with_accessors | @event; + +@assignable_with_accessors = @property | @indexer; + +@attributable = @assembly | @field | @parameter | @operator | @method | @constructor + | @destructor | @callable_accessor | @value_or_ref_type | @declaration_with_accessors + | @local_function | @lambda_expr; + +/** LOCATIONS, ASEMMBLIES, MODULES, FILES and FOLDERS **/ + +@location = @location_default | @assembly; + +@locatable = @declaration_with_accessors | @callable_accessor | @declaration_or_directive + | @diagnostic | @extractor_message | @preprocessor_directive | @attribute | @type_mention | @type_parameter_constraints + | @declaration_with_accessors | @callable_accessor | @operator | @method + | @constructor | @destructor | @field | @local_variable | @parameter | @stmt | @expr + | @xmllocatable | @commentline | @commentblock | @asp_element + +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +locations_mapped( + unique int id: @location_default ref, + int mapped_to: @location_default ref); + +@sourceline = @file | @callable | @xmllocatable; + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref); + +assemblies( + unique int id: @assembly, + int file: @file ref, + string fullname: string ref, + string name: string ref, + string version: string ref); + +files( + unique int id: @file, + string name: string ref); + +folders( + unique int id: @folder, + string name: string ref); + +@container = @folder | @file ; + +containerparent( + int parent: @container ref, + unique int child: @container ref); + +file_extraction_mode( + unique int file: @file ref, + int mode: int ref + /* 0 = normal, 1 = standalone extractor */ + ); + +/** NAMESPACES **/ + +@type_container = @namespace | @type; + +namespaces( + unique int id: @namespace, + string name: string ref); + +namespace_declarations( + unique int id: @namespace_declaration, + int namespace_id: @namespace ref); + +namespace_declaration_location( + unique int id: @namespace_declaration ref, + int loc: @location ref); + +parent_namespace( + unique int child_id: @type_container ref, + int namespace_id: @namespace ref); + +@declaration_or_directive = @namespace_declaration | @type | @using_directive; + +parent_namespace_declaration( + int child_id: @declaration_or_directive ref, // cannot be unique because of partial classes + int namespace_id: @namespace_declaration ref); + +@using_directive = @using_namespace_directive | @using_static_directive; + +using_global( + unique int id: @using_directive ref +); + +using_namespace_directives( + unique int id: @using_namespace_directive, + int namespace_id: @namespace ref); + +using_static_directives( + unique int id: @using_static_directive, + int type_id: @type_or_ref ref); + +using_directive_location( + unique int id: @using_directive ref, + int loc: @location ref); + +@preprocessor_directive = @pragma_warning | @pragma_checksum | @directive_define | @directive_undefine | @directive_warning + | @directive_error | @directive_nullable | @directive_line | @directive_region | @directive_endregion | @directive_if + | @directive_elif | @directive_else | @directive_endif; + +@conditional_directive = @directive_if | @directive_elif; +@branch_directive = @directive_if | @directive_elif | @directive_else; + +directive_ifs( + unique int id: @directive_if, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref); /* 0: false, 1: true */ + +directive_elifs( + unique int id: @directive_elif, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +directive_elses( + unique int id: @directive_else, + int branchTaken: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +#keyset[id, start] +directive_endifs( + unique int id: @directive_endif, + unique int start: @directive_if ref); + +directive_define_symbols( + unique int id: @define_symbol_expr ref, + string name: string ref); + +directive_regions( + unique int id: @directive_region, + string name: string ref); + +#keyset[id, start] +directive_endregions( + unique int id: @directive_endregion, + unique int start: @directive_region ref); + +directive_lines( + unique int id: @directive_line, + int kind: int ref); /* 0: default, 1: hidden, 2: numeric, 3: span */ + +directive_line_value( + unique int id: @directive_line ref, + int line: int ref); + +directive_line_file( + unique int id: @directive_line ref, + int file: @file ref); + +directive_line_offset( + unique int id: @directive_line ref, + int offset: int ref); + +directive_line_span( + unique int id: @directive_line ref, + int startLine: int ref, + int startColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +directive_nullables( + unique int id: @directive_nullable, + int setting: int ref, /* 0: disable, 1: enable, 2: restore */ + int target: int ref); /* 0: none, 1: annotations, 2: warnings */ + +directive_warnings( + unique int id: @directive_warning, + string message: string ref); + +directive_errors( + unique int id: @directive_error, + string message: string ref); + +directive_undefines( + unique int id: @directive_undefine, + string name: string ref); + +directive_defines( + unique int id: @directive_define, + string name: string ref); + +pragma_checksums( + unique int id: @pragma_checksum, + int file: @file ref, + string guid: string ref, + string bytes: string ref); + +pragma_warnings( + unique int id: @pragma_warning, + int kind: int ref /* 0 = disable, 1 = restore */); + +#keyset[id, index] +pragma_warning_error_codes( + int id: @pragma_warning ref, + string errorCode: string ref, + int index: int ref); + +preprocessor_directive_location( + unique int id: @preprocessor_directive ref, + int loc: @location ref); + +preprocessor_directive_compilation( + int id: @preprocessor_directive ref, + int compilation: @compilation ref); + +preprocessor_directive_active( + unique int id: @preprocessor_directive ref, + int active: int ref); /* 0: false, 1: true */ + +/** TYPES **/ + +types( + unique int id: @type, + int kind: int ref, + string name: string ref); + +case @type.kind of + 1 = @bool_type +| 2 = @char_type +| 3 = @decimal_type +| 4 = @sbyte_type +| 5 = @short_type +| 6 = @int_type +| 7 = @long_type +| 8 = @byte_type +| 9 = @ushort_type +| 10 = @uint_type +| 11 = @ulong_type +| 12 = @float_type +| 13 = @double_type +| 14 = @enum_type +| 15 = @struct_type +| 17 = @class_type +| 19 = @interface_type +| 20 = @delegate_type +| 21 = @null_type +| 22 = @type_parameter +| 23 = @pointer_type +| 24 = @nullable_type +| 25 = @array_type +| 26 = @void_type +| 27 = @int_ptr_type +| 28 = @uint_ptr_type +| 29 = @dynamic_type +| 30 = @arglist_type +| 31 = @unknown_type +| 32 = @tuple_type +| 33 = @function_pointer_type +| 34 = @inline_array_type +| 35 = @extension_type + ; + +@simple_type = @bool_type | @char_type | @integral_type | @floating_point_type | @decimal_type; +@integral_type = @signed_integral_type | @unsigned_integral_type; +@signed_integral_type = @sbyte_type | @short_type | @int_type | @long_type; +@unsigned_integral_type = @byte_type | @ushort_type | @uint_type | @ulong_type; +@floating_point_type = @float_type | @double_type; +@value_type = @simple_type | @enum_type | @struct_type | @nullable_type | @int_ptr_type + | @uint_ptr_type | @tuple_type | @void_type | @inline_array_type; +@ref_type = @class_type | @interface_type | @array_type | @delegate_type | @null_type + | @dynamic_type | @extension_type; +@value_or_ref_type = @value_type | @ref_type; + +typerefs( + unique int id: @typeref, + string name: string ref); + +typeref_type( + int id: @typeref ref, + unique int typeId: @type ref); + +@type_or_ref = @type | @typeref; + +array_element_type( + unique int array: @array_type ref, + int dimension: int ref, + int rank: int ref, + int element: @type_or_ref ref); + +nullable_underlying_type( + unique int nullable: @nullable_type ref, + int underlying: @type_or_ref ref); + +pointer_referent_type( + unique int pointer: @pointer_type ref, + int referent: @type_or_ref ref); + +enum_underlying_type( + unique int enum_id: @enum_type ref, + int underlying_type_id: @type_or_ref ref); + +delegate_return_type( + unique int delegate_id: @delegate_type ref, + int return_type_id: @type_or_ref ref); + +function_pointer_return_type( + unique int function_pointer_id: @function_pointer_type ref, + int return_type_id: @type_or_ref ref); + +extension_receiver_type( + unique int extension: @extension_type ref, + int receiver_type_id: @type_or_ref ref); + +extend( + int sub: @type ref, + int super: @type_or_ref ref); + +anonymous_types( + unique int id: @type ref); + +@interface_or_ref = @interface_type | @typeref; + +implement( + int sub: @type ref, + int super: @type_or_ref ref); + +type_location( + int id: @type ref, + int loc: @location ref); + +tuple_underlying_type( + unique int tuple: @tuple_type ref, + int struct: @type_or_ref ref); + +#keyset[tuple, index] +tuple_element( + int tuple: @tuple_type ref, + int index: int ref, + unique int field: @field ref); + +attributes( + unique int id: @attribute, + int kind: int ref, + int type_id: @type_or_ref ref, + int target: @attributable ref); + +case @attribute.kind of + 0 = @attribute_default +| 1 = @attribute_return +| 2 = @attribute_assembly +| 3 = @attribute_module +; + +attribute_location( + int id: @attribute ref, + int loc: @location ref); + +@type_mention_parent = @element | @type_mention; + +type_mention( + unique int id: @type_mention, + int type_id: @type_or_ref ref, + int parent: @type_mention_parent ref); + +type_mention_location( + unique int id: @type_mention ref, + int loc: @location ref); + +@has_type_annotation = @assignable | @type_parameter | @callable | @expr | @delegate_type | @generic | @function_pointer_type; + +/** + * A direct annotation on an entity, for example `string? x;`. + * + * Annotations: + * 2 = reftype is not annotated "!" + * 3 = reftype is annotated "?" + * 4 = readonly ref type / in parameter + * 5 = ref type parameter, return or local variable + * 6 = out parameter + * + * Note that the annotation depends on the element it annotates. + * @assignable: The annotation is on the type of the assignable, for example the variable type. + * @type_parameter: The annotation is on the reftype constraint + * @callable: The annotation is on the return type + * @array_type: The annotation is on the element type + */ +type_annotation(int id: @has_type_annotation ref, int annotation: int ref); + +nullability(unique int nullability: @nullability, int kind: int ref); + +case @nullability.kind of + 0 = @oblivious +| 1 = @not_annotated +| 2 = @annotated +; + +#keyset[parent, index] +nullability_parent(int nullability: @nullability ref, int index: int ref, int parent: @nullability ref) + +type_nullability(int id: @has_type_annotation ref, int nullability: @nullability ref); + +/** + * The nullable flow state of an expression, as determined by Roslyn. + * 0 = none (default, not populated) + * 1 = not null + * 2 = maybe null + */ +expr_flowstate(unique int id: @expr ref, int state: int ref); + +/** GENERICS **/ + +@generic = @type | @method | @local_function; + +type_parameters( + unique int id: @type_parameter ref, + int index: int ref, + int generic_id: @generic ref, + int variance: int ref /* none = 0, out = 1, in = 2 */); + +#keyset[constructed_id, index] +type_arguments( + int id: @type_or_ref ref, + int index: int ref, + int constructed_id: @generic_or_ref ref); + +@generic_or_ref = @generic | @typeref; + +constructed_generic( + unique int constructed: @generic ref, + int generic: @generic_or_ref ref); + +type_parameter_constraints( + unique int id: @type_parameter_constraints, + int param_id: @type_parameter ref); + +type_parameter_constraints_location( + int id: @type_parameter_constraints ref, + int loc: @location ref); + +general_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int kind: int ref /* class = 1, struct = 2, new = 3 */); + +specific_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref); + +specific_type_parameter_nullability( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref, + int nullability: @nullability ref); + +/** FUNCTION POINTERS */ + +function_pointer_calling_conventions( + int id: @function_pointer_type ref, + int kind: int ref); + +#keyset[id, index] +has_unmanaged_calling_conventions( + int id: @function_pointer_type ref, + int index: int ref, + int conv_id: @type_or_ref ref); + +/** MODIFIERS */ + +@modifiable = @modifiable_direct | @event_accessor; + +@modifiable_direct = @member | @accessor | @local_function | @anonymous_function_expr; + +modifiers( + unique int id: @modifier, + string name: string ref); + +has_modifiers( + int id: @modifiable_direct ref, + int mod_id: @modifier ref); + +/** MEMBERS **/ + +@member = @method | @constructor | @destructor | @field | @property | @event | @operator | @indexer | @type; + +@named_exprorstmt = @goto_stmt | @labeled_stmt | @expr; + +@virtualizable = @method | @property | @indexer | @event | @operator; + +exprorstmt_name( + unique int parent_id: @named_exprorstmt ref, + string name: string ref); + +nested_types( + unique int id: @type ref, + int declaring_type_id: @type ref, + int unbound_id: @type ref); + +properties( + unique int id: @property, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @property ref); + +property_location( + int id: @property ref, + int loc: @location ref); + +indexers( + unique int id: @indexer, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @indexer ref); + +indexer_location( + int id: @indexer ref, + int loc: @location ref); + +accessors( + unique int id: @accessor, + int kind: int ref, + string name: string ref, + int declaring_member_id: @member ref, + int unbound_id: @accessor ref); + +case @accessor.kind of + 1 = @getter +| 2 = @setter + ; + +init_only_accessors( + unique int id: @accessor ref); + +accessor_location( + int id: @accessor ref, + int loc: @location ref); + +events( + unique int id: @event, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @event ref); + +event_location( + int id: @event ref, + int loc: @location ref); + +event_accessors( + unique int id: @event_accessor, + int kind: int ref, + string name: string ref, + int declaring_event_id: @event ref, + int unbound_id: @event_accessor ref); + +case @event_accessor.kind of + 1 = @add_event_accessor +| 2 = @remove_event_accessor + ; + +event_accessor_location( + int id: @event_accessor ref, + int loc: @location ref); + +operators( + unique int id: @operator, + string name: string ref, + string symbol: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @operator ref); + +operator_location( + int id: @operator ref, + int loc: @location ref); + +constant_value( + int id: @variable ref, + string value: string ref); + +/** CALLABLES **/ + +@callable = @method | @constructor | @destructor | @operator | @callable_accessor | @anonymous_function_expr | @local_function; + +@callable_accessor = @accessor | @event_accessor; + +methods( + unique int id: @method, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @method ref); + +method_location( + int id: @method ref, + int loc: @location ref); + +constructors( + unique int id: @constructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @constructor ref); + +constructor_location( + int id: @constructor ref, + int loc: @location ref); + +destructors( + unique int id: @destructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @destructor ref); + +destructor_location( + int id: @destructor ref, + int loc: @location ref); + +overrides( + int id: @callable ref, + int base_id: @callable ref); + +explicitly_implements( + int id: @member ref, + int interface_id: @interface_or_ref ref); + +local_functions( + unique int id: @local_function, + string name: string ref, + int return_type: @type ref, + int unbound_id: @local_function ref); + +local_function_stmts( + unique int fn: @local_function_stmt ref, + int stmt: @local_function ref); + +/** VARIABLES **/ + +@variable = @local_scope_variable | @field; + +@local_scope_variable = @local_variable | @parameter; + +fields( + unique int id: @field, + int kind: int ref, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @field ref); + +case @field.kind of + 1 = @addressable_field +| 2 = @constant + ; + +field_location( + int id: @field ref, + int loc: @location ref); + +localvars( + unique int id: @local_variable, + int kind: int ref, + string name: string ref, + int implicitly_typed: int ref /* 0 = no, 1 = yes */, + int type_id: @type_or_ref ref, + int parent_id: @local_var_decl_expr ref); + +case @local_variable.kind of + 1 = @addressable_local_variable +| 2 = @local_constant +| 3 = @local_variable_ref + ; + +localvar_location( + unique int id: @local_variable ref, + int loc: @location ref); + +@parameterizable = @callable | @delegate_type | @indexer | @function_pointer_type | @extension_type; + +#keyset[name, parent_id] +#keyset[index, parent_id] +params( + unique int id: @parameter, + string name: string ref, + int type_id: @type_or_ref ref, + int index: int ref, + int mode: int ref, /* value = 0, ref = 1, out = 2, params/array = 3, this = 4, in = 5, ref readonly = 6 */ + int parent_id: @parameterizable ref, + int unbound_id: @parameter ref); + +param_location( + int id: @parameter ref, + int loc: @location ref); + +@has_scoped_annotation = @local_scope_variable + +scoped_annotation( + int id: @has_scoped_annotation ref, + int kind: int ref // scoped ref = 1, scoped value = 2 + ); + +/** STATEMENTS **/ + +@exprorstmt_parent = @control_flow_element | @top_level_exprorstmt_parent; + +statements( + unique int id: @stmt, + int kind: int ref); + +#keyset[index, parent] +stmt_parent( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_stmt_parent = @callable; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +stmt_parent_top_level( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @top_level_stmt_parent ref); + +case @stmt.kind of + 1 = @block_stmt +| 2 = @expr_stmt +| 3 = @if_stmt +| 4 = @switch_stmt +| 5 = @while_stmt +| 6 = @do_stmt +| 7 = @for_stmt +| 8 = @foreach_stmt +| 9 = @break_stmt +| 10 = @continue_stmt +| 11 = @goto_stmt +| 12 = @goto_case_stmt +| 13 = @goto_default_stmt +| 14 = @throw_stmt +| 15 = @return_stmt +| 16 = @yield_stmt +| 17 = @try_stmt +| 18 = @checked_stmt +| 19 = @unchecked_stmt +| 20 = @lock_stmt +| 21 = @using_block_stmt +| 22 = @var_decl_stmt +| 23 = @const_decl_stmt +| 24 = @empty_stmt +| 25 = @unsafe_stmt +| 26 = @fixed_stmt +| 27 = @label_stmt +| 28 = @catch +| 29 = @case_stmt +| 30 = @local_function_stmt +| 31 = @using_decl_stmt + ; + +@using_stmt = @using_block_stmt | @using_decl_stmt; + +@labeled_stmt = @label_stmt | @case; + +@decl_stmt = @var_decl_stmt | @const_decl_stmt | @using_decl_stmt; + +@cond_stmt = @if_stmt | @switch_stmt; + +@loop_stmt = @while_stmt | @do_stmt | @for_stmt | @foreach_stmt; + +@jump_stmt = @break_stmt | @goto_any_stmt | @continue_stmt | @throw_stmt | @return_stmt + | @yield_stmt; + +@goto_any_stmt = @goto_default_stmt | @goto_case_stmt | @goto_stmt; + + +stmt_location( + unique int id: @stmt ref, + int loc: @location ref); + +catch_type( + unique int catch_id: @catch ref, + int type_id: @type_or_ref ref, + int kind: int ref /* explicit = 1, implicit = 2 */); + +foreach_stmt_info( + unique int id: @foreach_stmt ref, + int kind: int ref /* non-async = 1, async = 2 */); + +@foreach_symbol = @method | @property | @type_or_ref; + +#keyset[id, kind] +foreach_stmt_desugar( + int id: @foreach_stmt ref, + int symbol: @foreach_symbol ref, + int kind: int ref /* GetEnumeratorMethod = 1, CurrentProperty = 2, MoveNextMethod = 3, DisposeMethod = 4, ElementType = 5 */); + +/** EXPRESSIONS **/ + +expressions( + unique int id: @expr, + int kind: int ref, + int type_id: @type_or_ref ref); + +#keyset[index, parent] +expr_parent( + unique int expr: @expr ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_expr_parent = @attribute | @field | @property | @indexer | @parameter | @directive_if | @directive_elif; + +@top_level_exprorstmt_parent = @top_level_expr_parent | @top_level_stmt_parent; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +expr_parent_top_level( + unique int expr: @expr ref, + int index: int ref, + int parent: @top_level_exprorstmt_parent ref); + +case @expr.kind of +/* literal */ + 1 = @bool_literal_expr +| 2 = @char_literal_expr +| 3 = @decimal_literal_expr +| 4 = @int_literal_expr +| 5 = @long_literal_expr +| 6 = @uint_literal_expr +| 7 = @ulong_literal_expr +| 8 = @float_literal_expr +| 9 = @double_literal_expr +| 10 = @utf16_string_literal_expr +| 11 = @null_literal_expr +/* primary & unary */ +| 12 = @this_access_expr +| 13 = @base_access_expr +| 14 = @local_variable_access_expr +| 15 = @parameter_access_expr +| 16 = @field_access_expr +| 17 = @property_access_expr +| 18 = @method_access_expr +| 19 = @event_access_expr +| 20 = @indexer_access_expr +| 21 = @array_access_expr +| 22 = @type_access_expr +| 23 = @typeof_expr +| 24 = @method_invocation_expr +| 25 = @delegate_invocation_expr +| 26 = @operator_invocation_expr +| 27 = @cast_expr +| 28 = @object_creation_expr +| 29 = @explicit_delegate_creation_expr +| 30 = @implicit_delegate_creation_expr +| 31 = @array_creation_expr +| 32 = @default_expr +| 33 = @plus_expr +| 34 = @minus_expr +| 35 = @bit_not_expr +| 36 = @log_not_expr +| 37 = @post_incr_expr +| 38 = @post_decr_expr +| 39 = @pre_incr_expr +| 40 = @pre_decr_expr +/* multiplicative */ +| 41 = @mul_expr +| 42 = @div_expr +| 43 = @rem_expr +/* additive */ +| 44 = @add_expr +| 45 = @sub_expr +/* shift */ +| 46 = @lshift_expr +| 47 = @rshift_expr +/* relational */ +| 48 = @lt_expr +| 49 = @gt_expr +| 50 = @le_expr +| 51 = @ge_expr +/* equality */ +| 52 = @eq_expr +| 53 = @ne_expr +/* logical */ +| 54 = @bit_and_expr +| 55 = @bit_xor_expr +| 56 = @bit_or_expr +| 57 = @log_and_expr +| 58 = @log_or_expr +/* type testing */ +| 59 = @is_expr +| 60 = @as_expr +/* null coalescing */ +| 61 = @null_coalescing_expr +/* conditional */ +| 62 = @conditional_expr +/* assignment */ +| 63 = @simple_assign_expr +| 64 = @assign_add_expr +| 65 = @assign_sub_expr +| 66 = @assign_mul_expr +| 67 = @assign_div_expr +| 68 = @assign_rem_expr +| 69 = @assign_and_expr +| 70 = @assign_xor_expr +| 71 = @assign_or_expr +| 72 = @assign_lshift_expr +| 73 = @assign_rshift_expr +/* more */ +| 74 = @object_init_expr +| 75 = @collection_init_expr +| 76 = @array_init_expr +| 77 = @checked_expr +| 78 = @unchecked_expr +| 79 = @constructor_init_expr +| 80 = @add_event_expr +| 81 = @remove_event_expr +| 82 = @par_expr +| 83 = @local_var_decl_expr +| 84 = @lambda_expr +| 85 = @anonymous_method_expr +| 86 = @namespace_expr +/* dynamic */ +| 92 = @dynamic_element_access_expr +| 93 = @dynamic_member_access_expr +/* unsafe */ +| 100 = @pointer_indirection_expr +| 101 = @address_of_expr +| 102 = @sizeof_expr +/* async */ +| 103 = @await_expr +/* C# 6.0 */ +| 104 = @nameof_expr +| 105 = @interpolated_string_expr +| 106 = @unknown_expr +/* C# 7.0 */ +| 107 = @throw_expr +| 108 = @tuple_expr +| 109 = @local_function_invocation_expr +| 110 = @ref_expr +| 111 = @discard_expr +/* C# 8.0 */ +| 112 = @range_expr +| 113 = @index_expr +| 114 = @switch_expr +| 115 = @recursive_pattern_expr +| 116 = @property_pattern_expr +| 117 = @positional_pattern_expr +| 118 = @switch_case_expr +| 119 = @assign_coalesce_expr +| 120 = @suppress_nullable_warning_expr +| 121 = @namespace_access_expr +/* C# 9.0 */ +| 122 = @lt_pattern_expr +| 123 = @gt_pattern_expr +| 124 = @le_pattern_expr +| 125 = @ge_pattern_expr +| 126 = @not_pattern_expr +| 127 = @and_pattern_expr +| 128 = @or_pattern_expr +| 129 = @function_pointer_invocation_expr +| 130 = @with_expr +/* C# 11.0 */ +| 131 = @list_pattern_expr +| 132 = @slice_pattern_expr +| 133 = @urshift_expr +| 134 = @assign_urshift_expr +| 135 = @utf8_string_literal_expr +/* C# 12.0 */ +| 136 = @collection_expr +| 137 = @spread_element_expr +| 138 = @interpolated_string_insert_expr +/* Preprocessor */ +| 999 = @define_symbol_expr +; + +@switch = @switch_stmt | @switch_expr; +@case = @case_stmt | @switch_case_expr; +@pattern_match = @case | @is_expr; +@unary_pattern_expr = @not_pattern_expr; +@relational_pattern_expr = @gt_pattern_expr | @lt_pattern_expr | @ge_pattern_expr | @le_pattern_expr; +@binary_pattern_expr = @and_pattern_expr | @or_pattern_expr; + +@integer_literal_expr = @int_literal_expr | @long_literal_expr | @uint_literal_expr | @ulong_literal_expr; +@real_literal_expr = @float_literal_expr | @double_literal_expr | @decimal_literal_expr; +@string_literal_expr = @utf16_string_literal_expr | @utf8_string_literal_expr; +@literal_expr = @bool_literal_expr | @char_literal_expr | @integer_literal_expr | @real_literal_expr + | @string_literal_expr | @null_literal_expr; + +@assign_expr = @simple_assign_expr | @assign_op_expr | @local_var_decl_expr; +@assign_op_expr = @assign_arith_expr | @assign_bitwise_expr | @assign_event_expr | @assign_coalesce_expr; +@assign_event_expr = @add_event_expr | @remove_event_expr; + +@assign_arith_expr = @assign_add_expr | @assign_sub_expr | @assign_mul_expr | @assign_div_expr + | @assign_rem_expr +@assign_bitwise_expr = @assign_and_expr | @assign_or_expr | @assign_xor_expr + | @assign_lshift_expr | @assign_rshift_expr | @assign_urshift_expr; + +@member_access_expr = @field_access_expr | @property_access_expr | @indexer_access_expr | @event_access_expr + | @method_access_expr | @type_access_expr | @dynamic_member_access_expr; +@access_expr = @member_access_expr | @this_access_expr | @base_access_expr | @assignable_access_expr | @namespace_access_expr; +@element_access_expr = @indexer_access_expr | @array_access_expr | @dynamic_element_access_expr; + +@local_variable_access = @local_variable_access_expr | @local_var_decl_expr; +@local_scope_variable_access_expr = @parameter_access_expr | @local_variable_access; +@variable_access_expr = @local_scope_variable_access_expr | @field_access_expr; + +@assignable_access_expr = @variable_access_expr | @property_access_expr | @element_access_expr + | @event_access_expr | @dynamic_member_access_expr; + +@objectorcollection_init_expr = @object_init_expr | @collection_init_expr; + +@delegate_creation_expr = @explicit_delegate_creation_expr | @implicit_delegate_creation_expr; + +@bin_arith_op_expr = @mul_expr | @div_expr | @rem_expr | @add_expr | @sub_expr; +@incr_op_expr = @pre_incr_expr | @post_incr_expr; +@decr_op_expr = @pre_decr_expr | @post_decr_expr; +@mut_op_expr = @incr_op_expr | @decr_op_expr; +@un_arith_op_expr = @plus_expr | @minus_expr | @mut_op_expr; +@arith_op_expr = @bin_arith_op_expr | @un_arith_op_expr; + +@ternary_log_op_expr = @conditional_expr; +@bin_log_op_expr = @log_and_expr | @log_or_expr | @null_coalescing_expr; +@un_log_op_expr = @log_not_expr; +@log_expr = @un_log_op_expr | @bin_log_op_expr | @ternary_log_op_expr; + +@bin_bit_op_expr = @bit_and_expr | @bit_or_expr | @bit_xor_expr | @lshift_expr + | @rshift_expr | @urshift_expr; +@un_bit_op_expr = @bit_not_expr; +@bit_expr = @un_bit_op_expr | @bin_bit_op_expr; + +@equality_op_expr = @eq_expr | @ne_expr; +@rel_op_expr = @gt_expr | @lt_expr| @ge_expr | @le_expr; +@comp_expr = @equality_op_expr | @rel_op_expr; + +@op_expr = @assign_expr | @un_op | @bin_op | @ternary_op; + +@ternary_op = @ternary_log_op_expr; +@bin_op = @bin_arith_op_expr | @bin_log_op_expr | @bin_bit_op_expr | @comp_expr; +@un_op = @un_arith_op_expr | @un_log_op_expr | @un_bit_op_expr | @sizeof_expr + | @pointer_indirection_expr | @address_of_expr; + +@anonymous_function_expr = @lambda_expr | @anonymous_method_expr; + +@call = @method_invocation_expr | @constructor_init_expr | @operator_invocation_expr + | @delegate_invocation_expr | @object_creation_expr | @call_access_expr + | @local_function_invocation_expr | @function_pointer_invocation_expr; + +@call_access_expr = @property_access_expr | @event_access_expr | @indexer_access_expr; + +@late_bindable_expr = @dynamic_element_access_expr | @dynamic_member_access_expr + | @object_creation_expr | @method_invocation_expr | @operator_invocation_expr; + +@throw_element = @throw_expr | @throw_stmt; + +@implicitly_typeable_object_creation_expr = @object_creation_expr | @explicit_delegate_creation_expr; + +implicitly_typed_array_creation( + unique int id: @array_creation_expr ref); + +explicitly_sized_array_creation( + unique int id: @array_creation_expr ref); + +stackalloc_array_creation( + unique int id: @array_creation_expr ref); + +implicitly_typed_object_creation( + unique int id: @implicitly_typeable_object_creation_expr ref); + +mutator_invocation_mode( + unique int id: @operator_invocation_expr ref, + int mode: int ref /* prefix = 1, postfix = 2*/); + +expr_value( + unique int id: @expr ref, + string value: string ref); + +expr_call( + unique int caller_id: @expr ref, + int target_id: @callable ref); + +expr_access( + unique int accesser_id: @access_expr ref, + int target_id: @accessible ref); + +@accessible = @method | @assignable | @local_function | @namespace; + +expr_location( + unique int id: @expr ref, + int loc: @location ref); + +dynamic_member_name( + unique int id: @late_bindable_expr ref, + string name: string ref); + +@qualifiable_expr = @member_access_expr + | @method_invocation_expr + | @element_access_expr; + +conditional_access( + unique int id: @qualifiable_expr ref); + +expr_argument( + unique int id: @expr ref, + int mode: int ref); + /* mode is the same as params: value = 0, ref = 1, out = 2 */ + +expr_argument_name( + unique int id: @expr ref, + string name: string ref); + +lambda_expr_return_type( + unique int id: @lambda_expr ref, + int type_id: @type_or_ref ref); + +/* Compiler generated */ + +compiler_generated(unique int id: @element ref); + +/** CONTROL/DATA FLOW **/ + +@control_flow_element = @stmt | @expr; + +/* XML Files */ + +xmlEncoding ( + unique int id: @file ref, + string encoding: string ref); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/* Comments */ + +commentline( + unique int id: @commentline, + int kind: int ref, + string text: string ref, + string rawtext: string ref); + +case @commentline.kind of + 0 = @singlelinecomment +| 1 = @xmldoccomment +| 2 = @multilinecomment; + +commentline_location( + unique int id: @commentline ref, + int loc: @location ref); + +commentblock( + unique int id : @commentblock); + +commentblock_location( + unique int id: @commentblock ref, + int loc: @location ref); + +commentblock_binding( + int id: @commentblock ref, + int entity: @element ref, + int bindtype: int ref); /* 0: Parent, 1: Best, 2: Before, 3: After */ + +commentblock_child( + int id: @commentblock ref, + int commentline: @commentline ref, + int index: int ref); + +/* ASP.NET */ + +case @asp_element.kind of + 0=@asp_close_tag +| 1=@asp_code +| 2=@asp_comment +| 3=@asp_data_binding +| 4=@asp_directive +| 5=@asp_open_tag +| 6=@asp_quoted_string +| 7=@asp_text +| 8=@asp_xml_directive; + +@asp_attribute = @asp_code | @asp_data_binding | @asp_quoted_string; + +asp_elements( + unique int id: @asp_element, + int kind: int ref, + int loc: @location ref); + +asp_comment_server(unique int comment: @asp_comment ref); +asp_code_inline(unique int code: @asp_code ref); +asp_directive_attribute( + int directive: @asp_directive ref, + int index: int ref, + string name: string ref, + int value: @asp_quoted_string ref); +asp_directive_name( + unique int directive: @asp_directive ref, + string name: string ref); +asp_element_body( + unique int element: @asp_element ref, + string body: string ref); +asp_tag_attribute( + int tag: @asp_open_tag ref, + int index: int ref, + string name: string ref, + int attribute: @asp_attribute ref); +asp_tag_name( + unique int tag: @asp_open_tag ref, + string name: string ref); +asp_tag_isempty(int tag: @asp_open_tag ref); diff --git a/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/semmlecode.csharp.dbscheme b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/semmlecode.csharp.dbscheme new file mode 100644 index 000000000000..68b5aec54e50 --- /dev/null +++ b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/semmlecode.csharp.dbscheme @@ -0,0 +1,1484 @@ +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2021-07-14 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * csc f1.cs f2.cs f3.cs + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + unique int id : @compilation, + string cwd : string ref +); + +compilation_info( + int id : @compilation ref, + string info_key: string ref, + string info_value: string ref +) + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | --compiler + * 1 | *path to compiler* + * 2 | f1.cs + * 3 | f2.cs + * 4 | f3.cs + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile.rsp` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.cs + * 1 | f2.cs + * 2 | f3.cs + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The references used by a compiler invocation. + * If `id` is for the compiler invocation + * + * csc f1.cs f2.cs f3.cs /r:ref1.dll /r:ref2.dll /r:ref3.dll + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | ref1.dll + * 1 | ref2.dll + * 2 | ref3.dll + */ +#keyset[id, num] +compilation_referencing_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + unique int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location ref +); + +extractor_messages( + unique int id: @extractor_message, + int severity: int ref, + string origin : string ref, + string text : string ref, + string entity : string ref, + int location: @location ref, + string stack_trace : string ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +compilation_assembly( + unique int id : @compilation ref, + int assembly: @assembly ref +) + +// Populated by the CSV extractor +externalData( + int id: @externalDataElement, + string path: string ref, + int column: int ref, + string value: string ref); + +sourceLocationPrefix( + string prefix: string ref); + +/* + * Overlay support + */ + +/** + * The CLI will automatically emit the tuple `databaseMetadata("isOverlay", "true")`, + * along with an `overlayChangedFiles` tuple for each new/modified/deleted file, + * when building an overlay database, and these can be used by the discard predicates. + */ +databaseMetadata( + string metadataKey : string ref, + string value : string ref +); + +overlayChangedFiles( + string path : string ref +); + +/* + * C# dbscheme + */ + +/** ELEMENTS **/ + +@element = @declaration | @stmt | @expr | @modifier | @attribute | @namespace_declaration + | @using_directive | @type_parameter_constraints | @externalDataElement + | @xmllocatable | @asp_element | @namespace | @preprocessor_directive; + +@declaration = @callable | @generic | @assignable | @namespace; + +@named_element = @namespace | @declaration; + +@declaration_with_accessors = @property | @indexer | @event; + +@assignable = @variable | @assignable_with_accessors | @event; + +@assignable_with_accessors = @property | @indexer; + +@attributable = @assembly | @field | @parameter | @operator | @method | @constructor + | @destructor | @callable_accessor | @value_or_ref_type | @declaration_with_accessors + | @local_function | @lambda_expr; + +/** LOCATIONS, ASEMMBLIES, MODULES, FILES and FOLDERS **/ + +@location = @location_default | @assembly; + +@locatable = @declaration_with_accessors | @callable_accessor | @declaration_or_directive + | @diagnostic | @extractor_message | @preprocessor_directive | @attribute | @type_mention | @type_parameter_constraints + | @declaration_with_accessors | @callable_accessor | @operator | @method + | @constructor | @destructor | @field | @local_variable | @parameter | @stmt | @expr + | @xmllocatable | @commentline | @commentblock | @asp_element + +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +locations_mapped( + unique int id: @location_default ref, + int mapped_to: @location_default ref); + +@sourceline = @file | @callable | @xmllocatable; + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref); + +assemblies( + unique int id: @assembly, + int file: @file ref, + string fullname: string ref, + string name: string ref, + string version: string ref); + +files( + unique int id: @file, + string name: string ref); + +folders( + unique int id: @folder, + string name: string ref); + +@container = @folder | @file ; + +containerparent( + int parent: @container ref, + unique int child: @container ref); + +file_extraction_mode( + unique int file: @file ref, + int mode: int ref + /* 0 = normal, 1 = standalone extractor */ + ); + +/** NAMESPACES **/ + +@type_container = @namespace | @type; + +namespaces( + unique int id: @namespace, + string name: string ref); + +namespace_declarations( + unique int id: @namespace_declaration, + int namespace_id: @namespace ref); + +namespace_declaration_location( + unique int id: @namespace_declaration ref, + int loc: @location ref); + +parent_namespace( + unique int child_id: @type_container ref, + int namespace_id: @namespace ref); + +@declaration_or_directive = @namespace_declaration | @type | @using_directive; + +parent_namespace_declaration( + int child_id: @declaration_or_directive ref, // cannot be unique because of partial classes + int namespace_id: @namespace_declaration ref); + +@using_directive = @using_namespace_directive | @using_static_directive; + +using_global( + unique int id: @using_directive ref +); + +using_namespace_directives( + unique int id: @using_namespace_directive, + int namespace_id: @namespace ref); + +using_static_directives( + unique int id: @using_static_directive, + int type_id: @type_or_ref ref); + +using_directive_location( + unique int id: @using_directive ref, + int loc: @location ref); + +@preprocessor_directive = @pragma_warning | @pragma_checksum | @directive_define | @directive_undefine | @directive_warning + | @directive_error | @directive_nullable | @directive_line | @directive_region | @directive_endregion | @directive_if + | @directive_elif | @directive_else | @directive_endif; + +@conditional_directive = @directive_if | @directive_elif; +@branch_directive = @directive_if | @directive_elif | @directive_else; + +directive_ifs( + unique int id: @directive_if, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref); /* 0: false, 1: true */ + +directive_elifs( + unique int id: @directive_elif, + int branchTaken: int ref, /* 0: false, 1: true */ + int conditionValue: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +directive_elses( + unique int id: @directive_else, + int branchTaken: int ref, /* 0: false, 1: true */ + int parent: @directive_if ref, + int index: int ref); + +#keyset[id, start] +directive_endifs( + unique int id: @directive_endif, + unique int start: @directive_if ref); + +directive_define_symbols( + unique int id: @define_symbol_expr ref, + string name: string ref); + +directive_regions( + unique int id: @directive_region, + string name: string ref); + +#keyset[id, start] +directive_endregions( + unique int id: @directive_endregion, + unique int start: @directive_region ref); + +directive_lines( + unique int id: @directive_line, + int kind: int ref); /* 0: default, 1: hidden, 2: numeric, 3: span */ + +directive_line_value( + unique int id: @directive_line ref, + int line: int ref); + +directive_line_file( + unique int id: @directive_line ref, + int file: @file ref); + +directive_line_offset( + unique int id: @directive_line ref, + int offset: int ref); + +directive_line_span( + unique int id: @directive_line ref, + int startLine: int ref, + int startColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +directive_nullables( + unique int id: @directive_nullable, + int setting: int ref, /* 0: disable, 1: enable, 2: restore */ + int target: int ref); /* 0: none, 1: annotations, 2: warnings */ + +directive_warnings( + unique int id: @directive_warning, + string message: string ref); + +directive_errors( + unique int id: @directive_error, + string message: string ref); + +directive_undefines( + unique int id: @directive_undefine, + string name: string ref); + +directive_defines( + unique int id: @directive_define, + string name: string ref); + +pragma_checksums( + unique int id: @pragma_checksum, + int file: @file ref, + string guid: string ref, + string bytes: string ref); + +pragma_warnings( + unique int id: @pragma_warning, + int kind: int ref /* 0 = disable, 1 = restore */); + +#keyset[id, index] +pragma_warning_error_codes( + int id: @pragma_warning ref, + string errorCode: string ref, + int index: int ref); + +preprocessor_directive_location( + unique int id: @preprocessor_directive ref, + int loc: @location ref); + +preprocessor_directive_compilation( + int id: @preprocessor_directive ref, + int compilation: @compilation ref); + +preprocessor_directive_active( + unique int id: @preprocessor_directive ref, + int active: int ref); /* 0: false, 1: true */ + +/** TYPES **/ + +types( + unique int id: @type, + int kind: int ref, + string name: string ref); + +case @type.kind of + 1 = @bool_type +| 2 = @char_type +| 3 = @decimal_type +| 4 = @sbyte_type +| 5 = @short_type +| 6 = @int_type +| 7 = @long_type +| 8 = @byte_type +| 9 = @ushort_type +| 10 = @uint_type +| 11 = @ulong_type +| 12 = @float_type +| 13 = @double_type +| 14 = @enum_type +| 15 = @struct_type +| 17 = @class_type +| 19 = @interface_type +| 20 = @delegate_type +| 21 = @null_type +| 22 = @type_parameter +| 23 = @pointer_type +| 24 = @nullable_type +| 25 = @array_type +| 26 = @void_type +| 27 = @int_ptr_type +| 28 = @uint_ptr_type +| 29 = @dynamic_type +| 30 = @arglist_type +| 31 = @unknown_type +| 32 = @tuple_type +| 33 = @function_pointer_type +| 34 = @inline_array_type + ; + +@simple_type = @bool_type | @char_type | @integral_type | @floating_point_type | @decimal_type; +@integral_type = @signed_integral_type | @unsigned_integral_type; +@signed_integral_type = @sbyte_type | @short_type | @int_type | @long_type; +@unsigned_integral_type = @byte_type | @ushort_type | @uint_type | @ulong_type; +@floating_point_type = @float_type | @double_type; +@value_type = @simple_type | @enum_type | @struct_type | @nullable_type | @int_ptr_type + | @uint_ptr_type | @tuple_type | @void_type | @inline_array_type; +@ref_type = @class_type | @interface_type | @array_type | @delegate_type | @null_type + | @dynamic_type; +@value_or_ref_type = @value_type | @ref_type; + +typerefs( + unique int id: @typeref, + string name: string ref); + +typeref_type( + int id: @typeref ref, + unique int typeId: @type ref); + +@type_or_ref = @type | @typeref; + +array_element_type( + unique int array: @array_type ref, + int dimension: int ref, + int rank: int ref, + int element: @type_or_ref ref); + +nullable_underlying_type( + unique int nullable: @nullable_type ref, + int underlying: @type_or_ref ref); + +pointer_referent_type( + unique int pointer: @pointer_type ref, + int referent: @type_or_ref ref); + +enum_underlying_type( + unique int enum_id: @enum_type ref, + int underlying_type_id: @type_or_ref ref); + +delegate_return_type( + unique int delegate_id: @delegate_type ref, + int return_type_id: @type_or_ref ref); + +function_pointer_return_type( + unique int function_pointer_id: @function_pointer_type ref, + int return_type_id: @type_or_ref ref); + +extend( + int sub: @type ref, + int super: @type_or_ref ref); + +anonymous_types( + unique int id: @type ref); + +@interface_or_ref = @interface_type | @typeref; + +implement( + int sub: @type ref, + int super: @type_or_ref ref); + +type_location( + int id: @type ref, + int loc: @location ref); + +tuple_underlying_type( + unique int tuple: @tuple_type ref, + int struct: @type_or_ref ref); + +#keyset[tuple, index] +tuple_element( + int tuple: @tuple_type ref, + int index: int ref, + unique int field: @field ref); + +attributes( + unique int id: @attribute, + int kind: int ref, + int type_id: @type_or_ref ref, + int target: @attributable ref); + +case @attribute.kind of + 0 = @attribute_default +| 1 = @attribute_return +| 2 = @attribute_assembly +| 3 = @attribute_module +; + +attribute_location( + int id: @attribute ref, + int loc: @location ref); + +@type_mention_parent = @element | @type_mention; + +type_mention( + unique int id: @type_mention, + int type_id: @type_or_ref ref, + int parent: @type_mention_parent ref); + +type_mention_location( + unique int id: @type_mention ref, + int loc: @location ref); + +@has_type_annotation = @assignable | @type_parameter | @callable | @expr | @delegate_type | @generic | @function_pointer_type; + +/** + * A direct annotation on an entity, for example `string? x;`. + * + * Annotations: + * 2 = reftype is not annotated "!" + * 3 = reftype is annotated "?" + * 4 = readonly ref type / in parameter + * 5 = ref type parameter, return or local variable + * 6 = out parameter + * + * Note that the annotation depends on the element it annotates. + * @assignable: The annotation is on the type of the assignable, for example the variable type. + * @type_parameter: The annotation is on the reftype constraint + * @callable: The annotation is on the return type + * @array_type: The annotation is on the element type + */ +type_annotation(int id: @has_type_annotation ref, int annotation: int ref); + +nullability(unique int nullability: @nullability, int kind: int ref); + +case @nullability.kind of + 0 = @oblivious +| 1 = @not_annotated +| 2 = @annotated +; + +#keyset[parent, index] +nullability_parent(int nullability: @nullability ref, int index: int ref, int parent: @nullability ref) + +type_nullability(int id: @has_type_annotation ref, int nullability: @nullability ref); + +/** + * The nullable flow state of an expression, as determined by Roslyn. + * 0 = none (default, not populated) + * 1 = not null + * 2 = maybe null + */ +expr_flowstate(unique int id: @expr ref, int state: int ref); + +/** GENERICS **/ + +@generic = @type | @method | @local_function; + +type_parameters( + unique int id: @type_parameter ref, + int index: int ref, + int generic_id: @generic ref, + int variance: int ref /* none = 0, out = 1, in = 2 */); + +#keyset[constructed_id, index] +type_arguments( + int id: @type_or_ref ref, + int index: int ref, + int constructed_id: @generic_or_ref ref); + +@generic_or_ref = @generic | @typeref; + +constructed_generic( + unique int constructed: @generic ref, + int generic: @generic_or_ref ref); + +type_parameter_constraints( + unique int id: @type_parameter_constraints, + int param_id: @type_parameter ref); + +type_parameter_constraints_location( + int id: @type_parameter_constraints ref, + int loc: @location ref); + +general_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int kind: int ref /* class = 1, struct = 2, new = 3 */); + +specific_type_parameter_constraints( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref); + +specific_type_parameter_nullability( + int id: @type_parameter_constraints ref, + int base_id: @type_or_ref ref, + int nullability: @nullability ref); + +/** FUNCTION POINTERS */ + +function_pointer_calling_conventions( + int id: @function_pointer_type ref, + int kind: int ref); + +#keyset[id, index] +has_unmanaged_calling_conventions( + int id: @function_pointer_type ref, + int index: int ref, + int conv_id: @type_or_ref ref); + +/** MODIFIERS */ + +@modifiable = @modifiable_direct | @event_accessor; + +@modifiable_direct = @member | @accessor | @local_function | @anonymous_function_expr; + +modifiers( + unique int id: @modifier, + string name: string ref); + +has_modifiers( + int id: @modifiable_direct ref, + int mod_id: @modifier ref); + +/** MEMBERS **/ + +@member = @method | @constructor | @destructor | @field | @property | @event | @operator | @indexer | @type; + +@named_exprorstmt = @goto_stmt | @labeled_stmt | @expr; + +@virtualizable = @method | @property | @indexer | @event | @operator; + +exprorstmt_name( + unique int parent_id: @named_exprorstmt ref, + string name: string ref); + +nested_types( + unique int id: @type ref, + int declaring_type_id: @type ref, + int unbound_id: @type ref); + +properties( + unique int id: @property, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @property ref); + +property_location( + int id: @property ref, + int loc: @location ref); + +indexers( + unique int id: @indexer, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @indexer ref); + +indexer_location( + int id: @indexer ref, + int loc: @location ref); + +accessors( + unique int id: @accessor, + int kind: int ref, + string name: string ref, + int declaring_member_id: @member ref, + int unbound_id: @accessor ref); + +case @accessor.kind of + 1 = @getter +| 2 = @setter + ; + +init_only_accessors( + unique int id: @accessor ref); + +accessor_location( + int id: @accessor ref, + int loc: @location ref); + +events( + unique int id: @event, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @event ref); + +event_location( + int id: @event ref, + int loc: @location ref); + +event_accessors( + unique int id: @event_accessor, + int kind: int ref, + string name: string ref, + int declaring_event_id: @event ref, + int unbound_id: @event_accessor ref); + +case @event_accessor.kind of + 1 = @add_event_accessor +| 2 = @remove_event_accessor + ; + +event_accessor_location( + int id: @event_accessor ref, + int loc: @location ref); + +operators( + unique int id: @operator, + string name: string ref, + string symbol: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @operator ref); + +operator_location( + int id: @operator ref, + int loc: @location ref); + +constant_value( + int id: @variable ref, + string value: string ref); + +/** CALLABLES **/ + +@callable = @method | @constructor | @destructor | @operator | @callable_accessor | @anonymous_function_expr | @local_function; + +@callable_accessor = @accessor | @event_accessor; + +methods( + unique int id: @method, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @method ref); + +method_location( + int id: @method ref, + int loc: @location ref); + +constructors( + unique int id: @constructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @constructor ref); + +constructor_location( + int id: @constructor ref, + int loc: @location ref); + +destructors( + unique int id: @destructor, + string name: string ref, + int declaring_type_id: @type ref, + int unbound_id: @destructor ref); + +destructor_location( + int id: @destructor ref, + int loc: @location ref); + +overrides( + int id: @callable ref, + int base_id: @callable ref); + +explicitly_implements( + int id: @member ref, + int interface_id: @interface_or_ref ref); + +local_functions( + unique int id: @local_function, + string name: string ref, + int return_type: @type ref, + int unbound_id: @local_function ref); + +local_function_stmts( + unique int fn: @local_function_stmt ref, + int stmt: @local_function ref); + +/** VARIABLES **/ + +@variable = @local_scope_variable | @field; + +@local_scope_variable = @local_variable | @parameter; + +fields( + unique int id: @field, + int kind: int ref, + string name: string ref, + int declaring_type_id: @type ref, + int type_id: @type_or_ref ref, + int unbound_id: @field ref); + +case @field.kind of + 1 = @addressable_field +| 2 = @constant + ; + +field_location( + int id: @field ref, + int loc: @location ref); + +localvars( + unique int id: @local_variable, + int kind: int ref, + string name: string ref, + int implicitly_typed: int ref /* 0 = no, 1 = yes */, + int type_id: @type_or_ref ref, + int parent_id: @local_var_decl_expr ref); + +case @local_variable.kind of + 1 = @addressable_local_variable +| 2 = @local_constant +| 3 = @local_variable_ref + ; + +localvar_location( + unique int id: @local_variable ref, + int loc: @location ref); + +@parameterizable = @callable | @delegate_type | @indexer | @function_pointer_type; + +#keyset[name, parent_id] +#keyset[index, parent_id] +params( + unique int id: @parameter, + string name: string ref, + int type_id: @type_or_ref ref, + int index: int ref, + int mode: int ref, /* value = 0, ref = 1, out = 2, params/array = 3, this = 4, in = 5, ref readonly = 6 */ + int parent_id: @parameterizable ref, + int unbound_id: @parameter ref); + +param_location( + int id: @parameter ref, + int loc: @location ref); + +@has_scoped_annotation = @local_scope_variable + +scoped_annotation( + int id: @has_scoped_annotation ref, + int kind: int ref // scoped ref = 1, scoped value = 2 + ); + +/** STATEMENTS **/ + +@exprorstmt_parent = @control_flow_element | @top_level_exprorstmt_parent; + +statements( + unique int id: @stmt, + int kind: int ref); + +#keyset[index, parent] +stmt_parent( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_stmt_parent = @callable; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +stmt_parent_top_level( + unique int stmt: @stmt ref, + int index: int ref, + int parent: @top_level_stmt_parent ref); + +case @stmt.kind of + 1 = @block_stmt +| 2 = @expr_stmt +| 3 = @if_stmt +| 4 = @switch_stmt +| 5 = @while_stmt +| 6 = @do_stmt +| 7 = @for_stmt +| 8 = @foreach_stmt +| 9 = @break_stmt +| 10 = @continue_stmt +| 11 = @goto_stmt +| 12 = @goto_case_stmt +| 13 = @goto_default_stmt +| 14 = @throw_stmt +| 15 = @return_stmt +| 16 = @yield_stmt +| 17 = @try_stmt +| 18 = @checked_stmt +| 19 = @unchecked_stmt +| 20 = @lock_stmt +| 21 = @using_block_stmt +| 22 = @var_decl_stmt +| 23 = @const_decl_stmt +| 24 = @empty_stmt +| 25 = @unsafe_stmt +| 26 = @fixed_stmt +| 27 = @label_stmt +| 28 = @catch +| 29 = @case_stmt +| 30 = @local_function_stmt +| 31 = @using_decl_stmt + ; + +@using_stmt = @using_block_stmt | @using_decl_stmt; + +@labeled_stmt = @label_stmt | @case; + +@decl_stmt = @var_decl_stmt | @const_decl_stmt | @using_decl_stmt; + +@cond_stmt = @if_stmt | @switch_stmt; + +@loop_stmt = @while_stmt | @do_stmt | @for_stmt | @foreach_stmt; + +@jump_stmt = @break_stmt | @goto_any_stmt | @continue_stmt | @throw_stmt | @return_stmt + | @yield_stmt; + +@goto_any_stmt = @goto_default_stmt | @goto_case_stmt | @goto_stmt; + + +stmt_location( + unique int id: @stmt ref, + int loc: @location ref); + +catch_type( + unique int catch_id: @catch ref, + int type_id: @type_or_ref ref, + int kind: int ref /* explicit = 1, implicit = 2 */); + +foreach_stmt_info( + unique int id: @foreach_stmt ref, + int kind: int ref /* non-async = 1, async = 2 */); + +@foreach_symbol = @method | @property | @type_or_ref; + +#keyset[id, kind] +foreach_stmt_desugar( + int id: @foreach_stmt ref, + int symbol: @foreach_symbol ref, + int kind: int ref /* GetEnumeratorMethod = 1, CurrentProperty = 2, MoveNextMethod = 3, DisposeMethod = 4, ElementType = 5 */); + +/** EXPRESSIONS **/ + +expressions( + unique int id: @expr, + int kind: int ref, + int type_id: @type_or_ref ref); + +#keyset[index, parent] +expr_parent( + unique int expr: @expr ref, + int index: int ref, + int parent: @control_flow_element ref); + +@top_level_expr_parent = @attribute | @field | @property | @indexer | @parameter | @directive_if | @directive_elif; + +@top_level_exprorstmt_parent = @top_level_expr_parent | @top_level_stmt_parent; + +// [index, parent] is not a keyset because the same parent may be compiled multiple times +expr_parent_top_level( + unique int expr: @expr ref, + int index: int ref, + int parent: @top_level_exprorstmt_parent ref); + +case @expr.kind of +/* literal */ + 1 = @bool_literal_expr +| 2 = @char_literal_expr +| 3 = @decimal_literal_expr +| 4 = @int_literal_expr +| 5 = @long_literal_expr +| 6 = @uint_literal_expr +| 7 = @ulong_literal_expr +| 8 = @float_literal_expr +| 9 = @double_literal_expr +| 10 = @utf16_string_literal_expr +| 11 = @null_literal_expr +/* primary & unary */ +| 12 = @this_access_expr +| 13 = @base_access_expr +| 14 = @local_variable_access_expr +| 15 = @parameter_access_expr +| 16 = @field_access_expr +| 17 = @property_access_expr +| 18 = @method_access_expr +| 19 = @event_access_expr +| 20 = @indexer_access_expr +| 21 = @array_access_expr +| 22 = @type_access_expr +| 23 = @typeof_expr +| 24 = @method_invocation_expr +| 25 = @delegate_invocation_expr +| 26 = @operator_invocation_expr +| 27 = @cast_expr +| 28 = @object_creation_expr +| 29 = @explicit_delegate_creation_expr +| 30 = @implicit_delegate_creation_expr +| 31 = @array_creation_expr +| 32 = @default_expr +| 33 = @plus_expr +| 34 = @minus_expr +| 35 = @bit_not_expr +| 36 = @log_not_expr +| 37 = @post_incr_expr +| 38 = @post_decr_expr +| 39 = @pre_incr_expr +| 40 = @pre_decr_expr +/* multiplicative */ +| 41 = @mul_expr +| 42 = @div_expr +| 43 = @rem_expr +/* additive */ +| 44 = @add_expr +| 45 = @sub_expr +/* shift */ +| 46 = @lshift_expr +| 47 = @rshift_expr +/* relational */ +| 48 = @lt_expr +| 49 = @gt_expr +| 50 = @le_expr +| 51 = @ge_expr +/* equality */ +| 52 = @eq_expr +| 53 = @ne_expr +/* logical */ +| 54 = @bit_and_expr +| 55 = @bit_xor_expr +| 56 = @bit_or_expr +| 57 = @log_and_expr +| 58 = @log_or_expr +/* type testing */ +| 59 = @is_expr +| 60 = @as_expr +/* null coalescing */ +| 61 = @null_coalescing_expr +/* conditional */ +| 62 = @conditional_expr +/* assignment */ +| 63 = @simple_assign_expr +| 64 = @assign_add_expr +| 65 = @assign_sub_expr +| 66 = @assign_mul_expr +| 67 = @assign_div_expr +| 68 = @assign_rem_expr +| 69 = @assign_and_expr +| 70 = @assign_xor_expr +| 71 = @assign_or_expr +| 72 = @assign_lshift_expr +| 73 = @assign_rshift_expr +/* more */ +| 74 = @object_init_expr +| 75 = @collection_init_expr +| 76 = @array_init_expr +| 77 = @checked_expr +| 78 = @unchecked_expr +| 79 = @constructor_init_expr +| 80 = @add_event_expr +| 81 = @remove_event_expr +| 82 = @par_expr +| 83 = @local_var_decl_expr +| 84 = @lambda_expr +| 85 = @anonymous_method_expr +| 86 = @namespace_expr +/* dynamic */ +| 92 = @dynamic_element_access_expr +| 93 = @dynamic_member_access_expr +/* unsafe */ +| 100 = @pointer_indirection_expr +| 101 = @address_of_expr +| 102 = @sizeof_expr +/* async */ +| 103 = @await_expr +/* C# 6.0 */ +| 104 = @nameof_expr +| 105 = @interpolated_string_expr +| 106 = @unknown_expr +/* C# 7.0 */ +| 107 = @throw_expr +| 108 = @tuple_expr +| 109 = @local_function_invocation_expr +| 110 = @ref_expr +| 111 = @discard_expr +/* C# 8.0 */ +| 112 = @range_expr +| 113 = @index_expr +| 114 = @switch_expr +| 115 = @recursive_pattern_expr +| 116 = @property_pattern_expr +| 117 = @positional_pattern_expr +| 118 = @switch_case_expr +| 119 = @assign_coalesce_expr +| 120 = @suppress_nullable_warning_expr +| 121 = @namespace_access_expr +/* C# 9.0 */ +| 122 = @lt_pattern_expr +| 123 = @gt_pattern_expr +| 124 = @le_pattern_expr +| 125 = @ge_pattern_expr +| 126 = @not_pattern_expr +| 127 = @and_pattern_expr +| 128 = @or_pattern_expr +| 129 = @function_pointer_invocation_expr +| 130 = @with_expr +/* C# 11.0 */ +| 131 = @list_pattern_expr +| 132 = @slice_pattern_expr +| 133 = @urshift_expr +| 134 = @assign_urshift_expr +| 135 = @utf8_string_literal_expr +/* C# 12.0 */ +| 136 = @collection_expr +| 137 = @spread_element_expr +| 138 = @interpolated_string_insert_expr +/* Preprocessor */ +| 999 = @define_symbol_expr +; + +@switch = @switch_stmt | @switch_expr; +@case = @case_stmt | @switch_case_expr; +@pattern_match = @case | @is_expr; +@unary_pattern_expr = @not_pattern_expr; +@relational_pattern_expr = @gt_pattern_expr | @lt_pattern_expr | @ge_pattern_expr | @le_pattern_expr; +@binary_pattern_expr = @and_pattern_expr | @or_pattern_expr; + +@integer_literal_expr = @int_literal_expr | @long_literal_expr | @uint_literal_expr | @ulong_literal_expr; +@real_literal_expr = @float_literal_expr | @double_literal_expr | @decimal_literal_expr; +@string_literal_expr = @utf16_string_literal_expr | @utf8_string_literal_expr; +@literal_expr = @bool_literal_expr | @char_literal_expr | @integer_literal_expr | @real_literal_expr + | @string_literal_expr | @null_literal_expr; + +@assign_expr = @simple_assign_expr | @assign_op_expr | @local_var_decl_expr; +@assign_op_expr = @assign_arith_expr | @assign_bitwise_expr | @assign_event_expr | @assign_coalesce_expr; +@assign_event_expr = @add_event_expr | @remove_event_expr; + +@assign_arith_expr = @assign_add_expr | @assign_sub_expr | @assign_mul_expr | @assign_div_expr + | @assign_rem_expr +@assign_bitwise_expr = @assign_and_expr | @assign_or_expr | @assign_xor_expr + | @assign_lshift_expr | @assign_rshift_expr | @assign_urshift_expr; + +@member_access_expr = @field_access_expr | @property_access_expr | @indexer_access_expr | @event_access_expr + | @method_access_expr | @type_access_expr | @dynamic_member_access_expr; +@access_expr = @member_access_expr | @this_access_expr | @base_access_expr | @assignable_access_expr | @namespace_access_expr; +@element_access_expr = @indexer_access_expr | @array_access_expr | @dynamic_element_access_expr; + +@local_variable_access = @local_variable_access_expr | @local_var_decl_expr; +@local_scope_variable_access_expr = @parameter_access_expr | @local_variable_access; +@variable_access_expr = @local_scope_variable_access_expr | @field_access_expr; + +@assignable_access_expr = @variable_access_expr | @property_access_expr | @element_access_expr + | @event_access_expr | @dynamic_member_access_expr; + +@objectorcollection_init_expr = @object_init_expr | @collection_init_expr; + +@delegate_creation_expr = @explicit_delegate_creation_expr | @implicit_delegate_creation_expr; + +@bin_arith_op_expr = @mul_expr | @div_expr | @rem_expr | @add_expr | @sub_expr; +@incr_op_expr = @pre_incr_expr | @post_incr_expr; +@decr_op_expr = @pre_decr_expr | @post_decr_expr; +@mut_op_expr = @incr_op_expr | @decr_op_expr; +@un_arith_op_expr = @plus_expr | @minus_expr | @mut_op_expr; +@arith_op_expr = @bin_arith_op_expr | @un_arith_op_expr; + +@ternary_log_op_expr = @conditional_expr; +@bin_log_op_expr = @log_and_expr | @log_or_expr | @null_coalescing_expr; +@un_log_op_expr = @log_not_expr; +@log_expr = @un_log_op_expr | @bin_log_op_expr | @ternary_log_op_expr; + +@bin_bit_op_expr = @bit_and_expr | @bit_or_expr | @bit_xor_expr | @lshift_expr + | @rshift_expr | @urshift_expr; +@un_bit_op_expr = @bit_not_expr; +@bit_expr = @un_bit_op_expr | @bin_bit_op_expr; + +@equality_op_expr = @eq_expr | @ne_expr; +@rel_op_expr = @gt_expr | @lt_expr| @ge_expr | @le_expr; +@comp_expr = @equality_op_expr | @rel_op_expr; + +@op_expr = @assign_expr | @un_op | @bin_op | @ternary_op; + +@ternary_op = @ternary_log_op_expr; +@bin_op = @bin_arith_op_expr | @bin_log_op_expr | @bin_bit_op_expr | @comp_expr; +@un_op = @un_arith_op_expr | @un_log_op_expr | @un_bit_op_expr | @sizeof_expr + | @pointer_indirection_expr | @address_of_expr; + +@anonymous_function_expr = @lambda_expr | @anonymous_method_expr; + +@call = @method_invocation_expr | @constructor_init_expr | @operator_invocation_expr + | @delegate_invocation_expr | @object_creation_expr | @call_access_expr + | @local_function_invocation_expr | @function_pointer_invocation_expr; + +@call_access_expr = @property_access_expr | @event_access_expr | @indexer_access_expr; + +@late_bindable_expr = @dynamic_element_access_expr | @dynamic_member_access_expr + | @object_creation_expr | @method_invocation_expr | @operator_invocation_expr; + +@throw_element = @throw_expr | @throw_stmt; + +@implicitly_typeable_object_creation_expr = @object_creation_expr | @explicit_delegate_creation_expr; + +implicitly_typed_array_creation( + unique int id: @array_creation_expr ref); + +explicitly_sized_array_creation( + unique int id: @array_creation_expr ref); + +stackalloc_array_creation( + unique int id: @array_creation_expr ref); + +implicitly_typed_object_creation( + unique int id: @implicitly_typeable_object_creation_expr ref); + +mutator_invocation_mode( + unique int id: @operator_invocation_expr ref, + int mode: int ref /* prefix = 1, postfix = 2*/); + +expr_value( + unique int id: @expr ref, + string value: string ref); + +expr_call( + unique int caller_id: @expr ref, + int target_id: @callable ref); + +expr_access( + unique int accesser_id: @access_expr ref, + int target_id: @accessible ref); + +@accessible = @method | @assignable | @local_function | @namespace; + +expr_location( + unique int id: @expr ref, + int loc: @location ref); + +dynamic_member_name( + unique int id: @late_bindable_expr ref, + string name: string ref); + +@qualifiable_expr = @member_access_expr + | @method_invocation_expr + | @element_access_expr; + +conditional_access( + unique int id: @qualifiable_expr ref); + +expr_argument( + unique int id: @expr ref, + int mode: int ref); + /* mode is the same as params: value = 0, ref = 1, out = 2 */ + +expr_argument_name( + unique int id: @expr ref, + string name: string ref); + +lambda_expr_return_type( + unique int id: @lambda_expr ref, + int type_id: @type_or_ref ref); + +/* Compiler generated */ + +compiler_generated(unique int id: @element ref); + +/** CONTROL/DATA FLOW **/ + +@control_flow_element = @stmt | @expr; + +/* XML Files */ + +xmlEncoding ( + unique int id: @file ref, + string encoding: string ref); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/* Comments */ + +commentline( + unique int id: @commentline, + int kind: int ref, + string text: string ref, + string rawtext: string ref); + +case @commentline.kind of + 0 = @singlelinecomment +| 1 = @xmldoccomment +| 2 = @multilinecomment; + +commentline_location( + unique int id: @commentline ref, + int loc: @location ref); + +commentblock( + unique int id : @commentblock); + +commentblock_location( + unique int id: @commentblock ref, + int loc: @location ref); + +commentblock_binding( + int id: @commentblock ref, + int entity: @element ref, + int bindtype: int ref); /* 0: Parent, 1: Best, 2: Before, 3: After */ + +commentblock_child( + int id: @commentblock ref, + int commentline: @commentline ref, + int index: int ref); + +/* ASP.NET */ + +case @asp_element.kind of + 0=@asp_close_tag +| 1=@asp_code +| 2=@asp_comment +| 3=@asp_data_binding +| 4=@asp_directive +| 5=@asp_open_tag +| 6=@asp_quoted_string +| 7=@asp_text +| 8=@asp_xml_directive; + +@asp_attribute = @asp_code | @asp_data_binding | @asp_quoted_string; + +asp_elements( + unique int id: @asp_element, + int kind: int ref, + int loc: @location ref); + +asp_comment_server(unique int comment: @asp_comment ref); +asp_code_inline(unique int code: @asp_code ref); +asp_directive_attribute( + int directive: @asp_directive ref, + int index: int ref, + string name: string ref, + int value: @asp_quoted_string ref); +asp_directive_name( + unique int directive: @asp_directive ref, + string name: string ref); +asp_element_body( + unique int element: @asp_element ref, + string body: string ref); +asp_tag_attribute( + int tag: @asp_open_tag ref, + int index: int ref, + string name: string ref, + int attribute: @asp_attribute ref); +asp_tag_name( + unique int tag: @asp_open_tag ref, + string name: string ref); +asp_tag_isempty(int tag: @asp_open_tag ref); diff --git a/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/upgrade.properties b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/upgrade.properties new file mode 100644 index 000000000000..89034aaf132e --- /dev/null +++ b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/upgrade.properties @@ -0,0 +1,3 @@ +description: Remove the relation extension_receiver_type and remove the extension_type type kind. +compatibility: backwards +extension_receiver_type.rel: delete From bee17184694a32a12c75e3265a46b9a00af955fd Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Mon, 9 Feb 2026 16:53:43 +0100 Subject: [PATCH 351/433] QL4QL: Allow Impl classes to implement getAPrimaryQLClass with non Impl suffix. --- ql/ql/src/queries/style/GetAPrimaryQlClassConsistency.ql | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ql/ql/src/queries/style/GetAPrimaryQlClassConsistency.ql b/ql/ql/src/queries/style/GetAPrimaryQlClassConsistency.ql index 00ea044ad55e..2d3ab7c7d2c0 100644 --- a/ql/ql/src/queries/style/GetAPrimaryQlClassConsistency.ql +++ b/ql/ql/src/queries/style/GetAPrimaryQlClassConsistency.ql @@ -16,11 +16,13 @@ import ql * * For most languages this is just the name of `c`, but QL for Swift implements * the `getAPrimaryQlClass` predicate for a class `Foo` in another class `FooBase`. + * We also allow `Impl` classes (e.g., `FooImpl`) to return `Foo`. This pattern is used + * to avoid exposing abstract classes. */ string getAnAllowedResultForClass(Class c) { result = c.getName() or - c.getName() = result + "Base" + c.getName() = result + ["Base", "Impl"] } from ClassPredicate pred, String constant, Class c From c5f6820b5da175ba6086449d4cacffd433eb3c4d Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Thu, 5 Feb 2026 16:05:15 +0000 Subject: [PATCH 352/433] C++ overlay: Add trap_filename, source_file_uses_trap, in_trap --- cpp/ql/lib/semmlecode.cpp.dbscheme | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/cpp/ql/lib/semmlecode.cpp.dbscheme b/cpp/ql/lib/semmlecode.cpp.dbscheme index 9439176c1d13..7e7c2f55670f 100644 --- a/cpp/ql/lib/semmlecode.cpp.dbscheme +++ b/cpp/ql/lib/semmlecode.cpp.dbscheme @@ -236,6 +236,34 @@ extractor_version( string frontend_version: string ref ) +/** + * Gives the TRAP filename that `trap` is associated with. + * For debugging only. + */ +trap_filename( + int trap: @trap, + string filename: string ref +); + +/** + * In `build-mode: none` overlay mode, indicates that `source_file` + * (`/path/to/foo.c`) uses the TRAP file `trap_file`; i.e. it is the + * TRAP file corresponding to `foo.c`, something it transitively + * includes, or a template instantiation it transitively uses. + */ +source_file_uses_trap( + string source_file: string ref, + int trap_file: @trap ref +); + +/** + * Holds if there is a definition of `element` in TRAP file `trap_file`. + */ +in_trap( + int element: @element ref, + int trap_file: @trap ref +); + pch_uses( int pch: @pch ref, int compilation: @compilation ref, From 9a5128f9150f84c82cacfc8174ed3bbf1c236091 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Fri, 6 Feb 2026 12:08:12 +0000 Subject: [PATCH 353/433] C++: Add up/downgrade scripts --- .../old.dbscheme | 2517 +++++++++++++++++ .../semmlecode.dbscheme | 2489 ++++++++++++++++ .../upgrade.properties | 5 + .../old.dbscheme | 2489 ++++++++++++++++ .../semmlecode.cpp.dbscheme | 2517 +++++++++++++++++ .../upgrade.properties | 2 + 6 files changed, 10019 insertions(+) create mode 100644 cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/old.dbscheme create mode 100644 cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/semmlecode.dbscheme create mode 100644 cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/upgrade.properties create mode 100644 cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/old.dbscheme create mode 100644 cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/semmlecode.cpp.dbscheme create mode 100644 cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/upgrade.properties diff --git a/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/old.dbscheme b/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/old.dbscheme new file mode 100644 index 000000000000..7e7c2f55670f --- /dev/null +++ b/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/old.dbscheme @@ -0,0 +1,2517 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +/** + * Gives the TRAP filename that `trap` is associated with. + * For debugging only. + */ +trap_filename( + int trap: @trap, + string filename: string ref +); + +/** + * In `build-mode: none` overlay mode, indicates that `source_file` + * (`/path/to/foo.c`) uses the TRAP file `trap_file`; i.e. it is the + * TRAP file corresponding to `foo.c`, something it transitively + * includes, or a template instantiation it transitively uses. + */ +source_file_uses_trap( + string source_file: string ref, + int trap_file: @trap ref +); + +/** + * Holds if there is a definition of `element` in TRAP file `trap_file`. + */ +in_trap( + int element: @element ref, + int trap_file: @trap ref +); + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 17 = @ppd_embed +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +embeds( + unique int id: @ppd_embed ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/semmlecode.dbscheme b/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/semmlecode.dbscheme new file mode 100644 index 000000000000..9439176c1d13 --- /dev/null +++ b/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/semmlecode.dbscheme @@ -0,0 +1,2489 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 17 = @ppd_embed +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +embeds( + unique int id: @ppd_embed ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/upgrade.properties b/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/upgrade.properties new file mode 100644 index 000000000000..2f526418ae81 --- /dev/null +++ b/cpp/downgrades/7e7c2f55670f8123d514cf542ccb1938118ac561/upgrade.properties @@ -0,0 +1,5 @@ +description: Add trap_filename, source_file_uses_trap and in_trap relations +compatibility: full +trap_filename.rel: delete +source_file_uses_trap.rel: delete +in_trap.rel: delete diff --git a/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/old.dbscheme b/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/old.dbscheme new file mode 100644 index 000000000000..9439176c1d13 --- /dev/null +++ b/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/old.dbscheme @@ -0,0 +1,2489 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 17 = @ppd_embed +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +embeds( + unique int id: @ppd_embed ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/semmlecode.cpp.dbscheme b/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/semmlecode.cpp.dbscheme new file mode 100644 index 000000000000..7e7c2f55670f --- /dev/null +++ b/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/semmlecode.cpp.dbscheme @@ -0,0 +1,2517 @@ + +/*- Compilations -*/ + +/** + * An invocation of the compiler. Note that more than one file may be + * compiled per invocation. For example, this command compiles three + * source files: + * + * gcc -c f1.c f2.c f3.c + * + * The `id` simply identifies the invocation, while `cwd` is the working + * directory from which the compiler was invoked. + */ +compilations( + /** + * An invocation of the compiler. Note that more than one file may + * be compiled per invocation. For example, this command compiles + * three source files: + * + * gcc -c f1.c f2.c f3.c + */ + unique int id : @compilation, + string cwd : string ref +); + +/** + * The arguments that were passed to the extractor for a compiler + * invocation. If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then typically there will be rows for + * + * num | arg + * --- | --- + * 0 | *path to extractor* + * 1 | `--mimic` + * 2 | `/usr/bin/gcc` + * 3 | `-c` + * 4 | f1.c + * 5 | f2.c + * 6 | f3.c + */ +#keyset[id, num] +compilation_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * The expanded arguments that were passed to the extractor for a + * compiler invocation. This is similar to `compilation_args`, but + * for a `@someFile` argument, it includes the arguments from that + * file, rather than just taking the argument literally. + */ +#keyset[id, num] +compilation_expanded_args( + int id : @compilation ref, + int num : int ref, + string arg : string ref +); + +/** + * Optionally, record the build mode for each compilation. + */ +compilation_build_mode( + unique int id : @compilation ref, + int mode : int ref +); + +/* +case @compilation_build_mode.mode of + 0 = @build_mode_none +| 1 = @build_mode_manual +| 2 = @build_mode_auto +; +*/ + +/** + * The source files that are compiled by a compiler invocation. + * If `id` is for the compiler invocation + * + * gcc -c f1.c f2.c f3.c + * + * then there will be rows for + * + * num | arg + * --- | --- + * 0 | f1.c + * 1 | f2.c + * 2 | f3.c + * + * Note that even if those files `#include` headers, those headers + * do not appear as rows. + */ +#keyset[id, num] +compilation_compiling_files( + int id : @compilation ref, + int num : int ref, + int file : @file ref +); + +/** + * The time taken by the extractor for a compiler invocation. + * + * For each file `num`, there will be rows for + * + * kind | seconds + * ---- | --- + * 1 | CPU seconds used by the extractor frontend + * 2 | Elapsed seconds during the extractor frontend + * 3 | CPU seconds used by the extractor backend + * 4 | Elapsed seconds during the extractor backend + */ +#keyset[id, num, kind] +compilation_time( + int id : @compilation ref, + int num : int ref, + /* kind: + 1 = frontend_cpu_seconds + 2 = frontend_elapsed_seconds + 3 = extractor_cpu_seconds + 4 = extractor_elapsed_seconds + */ + int kind : int ref, + float seconds : float ref +); + +/** + * An error or warning generated by the extractor. + * The diagnostic message `diagnostic` was generated during compiler + * invocation `compilation`, and is the `file_number_diagnostic_number`th + * message generated while extracting the `file_number`th file of that + * invocation. + */ +#keyset[compilation, file_number, file_number_diagnostic_number] +diagnostic_for( + int diagnostic : @diagnostic ref, + int compilation : @compilation ref, + int file_number : int ref, + int file_number_diagnostic_number : int ref +); + +/** + * If extraction was successful, then `cpu_seconds` and + * `elapsed_seconds` are the CPU time and elapsed time (respectively) + * that extraction took for compiler invocation `id`. + */ +compilation_finished( + unique int id : @compilation ref, + float cpu_seconds : float ref, + float elapsed_seconds : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Diagnostic messages -*/ + +diagnostics( + unique int id: @diagnostic, + int severity: int ref, + string error_tag: string ref, + string error_message: string ref, + string full_error_message: string ref, + int location: @location_default ref +); + +/*- C++ dbscheme -*/ + +extractor_version( + string codeql_version: string ref, + string frontend_version: string ref +) + +/** + * Gives the TRAP filename that `trap` is associated with. + * For debugging only. + */ +trap_filename( + int trap: @trap, + string filename: string ref +); + +/** + * In `build-mode: none` overlay mode, indicates that `source_file` + * (`/path/to/foo.c`) uses the TRAP file `trap_file`; i.e. it is the + * TRAP file corresponding to `foo.c`, something it transitively + * includes, or a template instantiation it transitively uses. + */ +source_file_uses_trap( + string source_file: string ref, + int trap_file: @trap ref +); + +/** + * Holds if there is a definition of `element` in TRAP file `trap_file`. + */ +in_trap( + int element: @element ref, + int trap_file: @trap ref +); + +pch_uses( + int pch: @pch ref, + int compilation: @compilation ref, + int id: @file ref +) + +#keyset[pch, compilation] +pch_creations( + int pch: @pch, + int compilation: @compilation ref, + int from: @file ref +) + +/** An element for which line-count information is available. */ +@sourceline = @file | @function | @variable | @enumconstant | @xmllocatable; + +fileannotations( + int id: @file ref, + int kind: int ref, + string name: string ref, + string value: string ref +); + +inmacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +affectedbymacroexpansion( + int id: @element ref, + int inv: @macroinvocation ref +); + +case @macroinvocation.kind of + 1 = @macro_expansion +| 2 = @other_macro_reference +; + +macroinvocations( + unique int id: @macroinvocation, + int macro_id: @ppd_define ref, + int location: @location_default ref, + int kind: int ref +); + +macroparent( + unique int id: @macroinvocation ref, + int parent_id: @macroinvocation ref +); + +// a macroinvocation may be part of another location +// the way to find a constant expression that uses a macro +// is thus to find a constant expression that has a location +// to which a macro invocation is bound +macrolocationbind( + int id: @macroinvocation ref, + int location: @location_default ref +); + +#keyset[invocation, argument_index] +macro_argument_unexpanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +#keyset[invocation, argument_index] +macro_argument_expanded( + int invocation: @macroinvocation ref, + int argument_index: int ref, + string text: string ref +); + +case @function.kind of + 0 = @unknown_function +| 1 = @normal_function +| 2 = @constructor +| 3 = @destructor +| 4 = @conversion_function +| 5 = @operator +// ... 6 = @builtin_function deprecated // GCC built-in functions, e.g. __builtin___memcpy_chk +| 7 = @user_defined_literal +| 8 = @deduction_guide +; + +functions( + unique int id: @function, + string name: string ref, + int kind: int ref +); + +builtin_functions( + int id: @function ref +) + +function_entry_point( + int id: @function ref, + unique int entry_point: @stmt ref +); + +function_return_type( + int id: @function ref, + int return_type: @type ref +); + +/** + * If `function` is a coroutine, then this gives the `std::experimental::resumable_traits` + * instance associated with it, and the variables representing the `handle` and `promise` + * for it. + */ +coroutine( + unique int function: @function ref, + int traits: @type ref +); + +/* +case @coroutine_placeholder_variable.kind of + 1 = @handle +| 2 = @promise +| 3 = @init_await_resume +; +*/ + +coroutine_placeholder_variable( + unique int placeholder_variable: @variable ref, + int kind: int ref, + int function: @function ref +) + +/** The `new` function used for allocating the coroutine state, if any. */ +coroutine_new( + unique int function: @function ref, + int new: @function ref +); + +/** The `delete` function used for deallocating the coroutine state, if any. */ +coroutine_delete( + unique int function: @function ref, + int delete: @function ref +); + +purefunctions(unique int id: @function ref); + +function_deleted(unique int id: @function ref); + +function_defaulted(unique int id: @function ref); + +function_prototyped(unique int id: @function ref) + +deduction_guide_for_class( + int id: @function ref, + int class_template: @usertype ref +) + +member_function_this_type( + unique int id: @function ref, + int this_type: @type ref +); + +#keyset[id, type_id] +fun_decls( + int id: @fun_decl, + int function: @function ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +fun_def(unique int id: @fun_decl ref); +fun_specialized(unique int id: @fun_decl ref); +fun_implicit(unique int id: @fun_decl ref); +fun_decl_specifiers( + int id: @fun_decl ref, + string name: string ref +) +#keyset[fun_decl, index] +fun_decl_throws( + int fun_decl: @fun_decl ref, + int index: int ref, + int type_id: @type ref +); +/* an empty throw specification is different from none */ +fun_decl_empty_throws(unique int fun_decl: @fun_decl ref); +fun_decl_noexcept( + int fun_decl: @fun_decl ref, + int constant: @expr ref +); +fun_decl_empty_noexcept(int fun_decl: @fun_decl ref); +fun_decl_typedef_type( + unique int fun_decl: @fun_decl ref, + int typedeftype_id: @usertype ref +); + +/* +case @fun_requires.kind of + 1 = @template_attached +| 2 = @function_attached +; +*/ + +fun_requires( + int id: @fun_decl ref, + int kind: int ref, + int constraint: @expr ref +); + +param_decl_bind( + unique int id: @var_decl ref, + int index: int ref, + int fun_decl: @fun_decl ref +); + +#keyset[id, type_id] +var_decls( + int id: @var_decl, + int variable: @variable ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); +var_def(unique int id: @var_decl ref); +var_specialized(int id: @var_decl ref); +var_decl_specifiers( + int id: @var_decl ref, + string name: string ref +) +is_structured_binding(unique int id: @variable ref); +var_requires( + int id: @var_decl ref, + int constraint: @expr ref +); + +type_decls( + unique int id: @type_decl, + int type_id: @type ref, + int location: @location_default ref +); +type_def(unique int id: @type_decl ref); +type_decl_top( + unique int type_decl: @type_decl ref +); +type_requires( + int id: @type_decl ref, + int constraint: @expr ref +); + +namespace_decls( + unique int id: @namespace_decl, + int namespace_id: @namespace ref, + int location: @location_default ref, + int bodylocation: @location_default ref +); + +case @using.kind of + 1 = @using_declaration +| 2 = @using_directive +| 3 = @using_enum_declaration +; + +usings( + unique int id: @using, + int element_id: @element ref, + int location: @location_default ref, + int kind: int ref +); + +/** The element which contains the `using` declaration. */ +using_container( + int parent: @element ref, + int child: @using ref +); + +static_asserts( + unique int id: @static_assert, + int condition : @expr ref, + string message : string ref, + int location: @location_default ref, + int enclosing : @element ref +); + +// each function has an ordered list of parameters +#keyset[id, type_id] +#keyset[function, index, type_id] +params( + int id: @parameter, + int function: @parameterized_element ref, + int index: int ref, + int type_id: @type ref +); + +overrides( + int new: @function ref, + int old: @function ref +); + +#keyset[id, type_id] +membervariables( + int id: @membervariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +globalvariables( + int id: @globalvariable, + int type_id: @type ref, + string name: string ref +); + +#keyset[id, type_id] +localvariables( + int id: @localvariable, + int type_id: @type ref, + string name: string ref +); + +autoderivation( + unique int var: @variable ref, + int derivation_type: @type ref +); + +orphaned_variables( + int var: @localvariable ref, + int function: @function ref +) + +enumconstants( + unique int id: @enumconstant, + int parent: @usertype ref, + int index: int ref, + int type_id: @type ref, + string name: string ref, + int location: @location_default ref +); + +@variable = @localscopevariable | @globalvariable | @membervariable; + +@localscopevariable = @localvariable | @parameter; + +/** + * Built-in types are the fundamental types, e.g., integral, floating, and void. + */ +case @builtintype.kind of + 1 = @errortype +| 2 = @unknowntype +| 3 = @void +| 4 = @boolean +| 5 = @char +| 6 = @unsigned_char +| 7 = @signed_char +| 8 = @short +| 9 = @unsigned_short +| 10 = @signed_short +| 11 = @int +| 12 = @unsigned_int +| 13 = @signed_int +| 14 = @long +| 15 = @unsigned_long +| 16 = @signed_long +| 17 = @long_long +| 18 = @unsigned_long_long +| 19 = @signed_long_long +// ... 20 Microsoft-specific __int8 +// ... 21 Microsoft-specific __int16 +// ... 22 Microsoft-specific __int32 +// ... 23 Microsoft-specific __int64 +| 24 = @float +| 25 = @double +| 26 = @long_double +| 27 = @complex_float // C99-specific _Complex float +| 28 = @complex_double // C99-specific _Complex double +| 29 = @complex_long_double // C99-specific _Complex long double +| 30 = @imaginary_float // C99-specific _Imaginary float +| 31 = @imaginary_double // C99-specific _Imaginary double +| 32 = @imaginary_long_double // C99-specific _Imaginary long double +| 33 = @wchar_t // Microsoft-specific +| 34 = @decltype_nullptr // C++11 +| 35 = @int128 // __int128 +| 36 = @unsigned_int128 // unsigned __int128 +| 37 = @signed_int128 // signed __int128 +| 38 = @float128 // __float128 +| 39 = @complex_float128 // _Complex __float128 +// ... 40 _Decimal32 +// ... 41 _Decimal64 +// ... 42 _Decimal128 +| 43 = @char16_t +| 44 = @char32_t +| 45 = @std_float32 // _Float32 +| 46 = @float32x // _Float32x +| 47 = @std_float64 // _Float64 +| 48 = @float64x // _Float64x +| 49 = @std_float128 // _Float128 +// ... 50 _Float128x +| 51 = @char8_t +| 52 = @float16 // _Float16 +| 53 = @complex_float16 // _Complex _Float16 +| 54 = @fp16 // __fp16 +| 55 = @std_bfloat16 // __bf16 +| 56 = @std_float16 // std::float16_t +| 57 = @complex_std_float32 // _Complex _Float32 +| 58 = @complex_float32x // _Complex _Float32x +| 59 = @complex_std_float64 // _Complex _Float64 +| 60 = @complex_float64x // _Complex _Float64x +| 61 = @complex_std_float128 // _Complex _Float128 +| 62 = @mfp8 // __mfp8 +| 63 = @scalable_vector_count // __SVCount_t +| 64 = @complex_fp16 // _Complex __fp16 +| 65 = @complex_std_bfloat16 // _Complex __bf16 +| 66 = @complex_std_float16 // _Complex std::float16_t +; + +builtintypes( + unique int id: @builtintype, + string name: string ref, + int kind: int ref, + int size: int ref, + int sign: int ref, + int alignment: int ref +); + +/** + * Derived types are types that are directly derived from existing types and + * point to, refer to, transform type data to return a new type. + */ +case @derivedtype.kind of + 1 = @pointer +| 2 = @reference +| 3 = @type_with_specifiers +| 4 = @array +| 5 = @gnu_vector +| 6 = @routineptr +| 7 = @routinereference +| 8 = @rvalue_reference // C++11 +// ... 9 type_conforming_to_protocols deprecated +| 10 = @block +| 11 = @scalable_vector // Arm SVE +; + +derivedtypes( + unique int id: @derivedtype, + string name: string ref, + int kind: int ref, + int type_id: @type ref +); + +pointerishsize(unique int id: @derivedtype ref, + int size: int ref, + int alignment: int ref); + +arraysizes( + unique int id: @derivedtype ref, + int num_elements: int ref, + int bytesize: int ref, + int alignment: int ref +); + +tupleelements( + unique int id: @derivedtype ref, + int num_elements: int ref +); + +typedefbase( + unique int id: @usertype ref, + int type_id: @type ref +); + +/** + * An instance of the C++11 `decltype` operator or C23 `typeof`/`typeof_unqual` + * operator taking an expression as its argument. For example: + * ``` + * int a; + * decltype(1+a) b; + * typeof(1+a) c; + * ``` + * Here `expr` is `1+a`. + * + * Sometimes an additional pair of parentheses around the expression + * changes the semantics of the decltype, e.g. + * ``` + * struct A { double x; }; + * const A* a = new A(); + * decltype( a->x ); // type is double + * decltype((a->x)); // type is const double& + * ``` + * (Please consult the C++11 standard for more details). + * `parentheses_would_change_meaning` is `true` iff that is the case. + */ + +/* +case @decltype.kind of +| 0 = @decltype +| 1 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +; +*/ + +#keyset[id, expr] +decltypes( + int id: @decltype, + int expr: @expr ref, + int kind: int ref, + int base_type: @type ref, + boolean parentheses_would_change_meaning: boolean ref +); + +case @type_operator.kind of + 0 = @typeof // The frontend does not differentiate between typeof and typeof_unqual +| 1 = @underlying_type +| 2 = @bases +| 3 = @direct_bases +| 4 = @add_lvalue_reference +| 5 = @add_pointer +| 6 = @add_rvalue_reference +| 7 = @decay +| 8 = @make_signed +| 9 = @make_unsigned +| 10 = @remove_all_extents +| 11 = @remove_const +| 12 = @remove_cv +| 13 = @remove_cvref +| 14 = @remove_extent +| 15 = @remove_pointer +| 16 = @remove_reference_t +| 17 = @remove_restrict +| 18 = @remove_volatile +| 19 = @remove_reference +; + +type_operators( + unique int id: @type_operator, + int arg_type: @type ref, + int kind: int ref, + int base_type: @type ref +) + +case @usertype.kind of + 0 = @unknown_usertype +| 1 = @struct +| 2 = @class +| 3 = @union +| 4 = @enum +// ... 5 = @typedef deprecated // classic C: typedef typedef type name +// ... 6 = @template deprecated +| 7 = @template_parameter +| 8 = @template_template_parameter +| 9 = @proxy_class // a proxy class associated with a template parameter +// ... 10 objc_class deprecated +// ... 11 objc_protocol deprecated +// ... 12 objc_category deprecated +| 13 = @scoped_enum +// ... 14 = @using_alias deprecated // a using name = type style typedef +| 15 = @template_struct +| 16 = @template_class +| 17 = @template_union +| 18 = @alias +; + +usertypes( + unique int id: @usertype, + string name: string ref, + int kind: int ref +); + +usertypesize( + unique int id: @usertype ref, + int size: int ref, + int alignment: int ref +); + +usertype_final(unique int id: @usertype ref); + +usertype_uuid( + unique int id: @usertype ref, + string uuid: string ref +); + +/* +case @usertype.alias_kind of +| 0 = @typedef +| 1 = @alias +*/ + +usertype_alias_kind( + int id: @usertype ref, + int alias_kind: int ref +) + +nontype_template_parameters( + int id: @expr ref +); + +type_template_type_constraint( + int id: @usertype ref, + int constraint: @expr ref +); + +mangled_name( + unique int id: @declaration ref, + int mangled_name : @mangledname, + boolean is_complete: boolean ref +); + +is_pod_class(unique int id: @usertype ref); +is_standard_layout_class(unique int id: @usertype ref); + +is_complete(unique int id: @usertype ref); + +is_class_template(unique int id: @usertype ref); +class_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +class_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +class_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@user_or_decltype = @usertype | @decltype; + +is_proxy_class_for( + unique int id: @usertype ref, + int templ_param_id: @user_or_decltype ref +); + +type_mentions( + unique int id: @type_mention, + int type_id: @type ref, + int location: @location_default ref, + // a_symbol_reference_kind from the frontend. + int kind: int ref +); + +is_function_template(unique int id: @function ref); +function_instantiation( + unique int to: @function ref, + int from: @function ref +); +function_template_argument( + int function_id: @function ref, + int index: int ref, + int arg_type: @type ref +); +function_template_argument_value( + int function_id: @function ref, + int index: int ref, + int arg_value: @expr ref +); + +is_variable_template(unique int id: @variable ref); +variable_instantiation( + unique int to: @variable ref, + int from: @variable ref +); +variable_template_argument( + int variable_id: @variable ref, + int index: int ref, + int arg_type: @type ref +); +variable_template_argument_value( + int variable_id: @variable ref, + int index: int ref, + int arg_value: @expr ref +); + +template_template_instantiation( + int to: @usertype ref, + int from: @usertype ref +); +template_template_argument( + int type_id: @usertype ref, + int index: int ref, + int arg_type: @type ref +); +template_template_argument_value( + int type_id: @usertype ref, + int index: int ref, + int arg_value: @expr ref +); + +@concept = @concept_template | @concept_id; + +concept_templates( + unique int concept_id: @concept_template, + string name: string ref, + int location: @location_default ref +); +concept_instantiation( + unique int to: @concept_id ref, + int from: @concept_template ref +); +is_type_constraint(int concept_id: @concept_id ref); +concept_template_argument( + int concept_id: @concept ref, + int index: int ref, + int arg_type: @type ref +); +concept_template_argument_value( + int concept_id: @concept ref, + int index: int ref, + int arg_value: @expr ref +); + +routinetypes( + unique int id: @routinetype, + int return_type: @type ref +); + +routinetypeargs( + int routine: @routinetype ref, + int index: int ref, + int type_id: @type ref +); + +ptrtomembers( + unique int id: @ptrtomember, + int type_id: @type ref, + int class_id: @type ref +); + +/* + specifiers for types, functions, and variables + + "public", + "protected", + "private", + + "const", + "volatile", + "static", + + "pure", + "virtual", + "sealed", // Microsoft + "__interface", // Microsoft + "inline", + "explicit", + + "near", // near far extension + "far", // near far extension + "__ptr32", // Microsoft + "__ptr64", // Microsoft + "__sptr", // Microsoft + "__uptr", // Microsoft + "dllimport", // Microsoft + "dllexport", // Microsoft + "thread", // Microsoft + "naked", // Microsoft + "microsoft_inline", // Microsoft + "forceinline", // Microsoft + "selectany", // Microsoft + "nothrow", // Microsoft + "novtable", // Microsoft + "noreturn", // Microsoft + "noinline", // Microsoft + "noalias", // Microsoft + "restrict", // Microsoft +*/ + +specifiers( + unique int id: @specifier, + unique string str: string ref +); + +typespecifiers( + int type_id: @type ref, + int spec_id: @specifier ref +); + +funspecifiers( + int func_id: @function ref, + int spec_id: @specifier ref +); + +varspecifiers( + int var_id: @accessible ref, + int spec_id: @specifier ref +); + +explicit_specifier_exprs( + unique int func_id: @function ref, + int constant: @expr ref +) + +attributes( + unique int id: @attribute, + int kind: int ref, + string name: string ref, + string name_space: string ref, + int location: @location_default ref +); + +case @attribute.kind of + 0 = @gnuattribute +| 1 = @stdattribute +| 2 = @declspec +| 3 = @msattribute +| 4 = @alignas +// ... 5 @objc_propertyattribute deprecated +; + +attribute_args( + unique int id: @attribute_arg, + int kind: int ref, + int attribute: @attribute ref, + int index: int ref, + int location: @location_default ref +); + +case @attribute_arg.kind of + 0 = @attribute_arg_empty +| 1 = @attribute_arg_token +| 2 = @attribute_arg_constant +| 3 = @attribute_arg_type +| 4 = @attribute_arg_constant_expr +| 5 = @attribute_arg_expr +; + +attribute_arg_value( + unique int arg: @attribute_arg ref, + string value: string ref +); +attribute_arg_type( + unique int arg: @attribute_arg ref, + int type_id: @type ref +); +attribute_arg_constant( + unique int arg: @attribute_arg ref, + int constant: @expr ref +) +attribute_arg_expr( + unique int arg: @attribute_arg ref, + int expr: @expr ref +) +attribute_arg_name( + unique int arg: @attribute_arg ref, + string name: string ref +); + +typeattributes( + int type_id: @type ref, + int spec_id: @attribute ref +); + +funcattributes( + int func_id: @function ref, + int spec_id: @attribute ref +); + +varattributes( + int var_id: @accessible ref, + int spec_id: @attribute ref +); + +namespaceattributes( + int namespace_id: @namespace ref, + int spec_id: @attribute ref +); + +stmtattributes( + int stmt_id: @stmt ref, + int spec_id: @attribute ref +); + +@type = @builtintype + | @derivedtype + | @usertype + | @routinetype + | @ptrtomember + | @decltype + | @type_operator; + +unspecifiedtype( + unique int type_id: @type ref, + int unspecified_type_id: @type ref +); + +member( + int parent: @type ref, + int index: int ref, + int child: @member ref +); + +@enclosingfunction_child = @usertype | @variable | @namespace + +enclosingfunction( + unique int child: @enclosingfunction_child ref, + int parent: @function ref +); + +derivations( + unique int derivation: @derivation, + int sub: @type ref, + int index: int ref, + int super: @type ref, + int location: @location_default ref +); + +derspecifiers( + int der_id: @derivation ref, + int spec_id: @specifier ref +); + +/** + * Contains the byte offset of the base class subobject within the derived + * class. Only holds for non-virtual base classes, but see table + * `virtual_base_offsets` for offsets of virtual base class subobjects. + */ +direct_base_offsets( + unique int der_id: @derivation ref, + int offset: int ref +); + +/** + * Contains the byte offset of the virtual base class subobject for class + * `super` within a most-derived object of class `sub`. `super` can be either a + * direct or indirect base class. + */ +#keyset[sub, super] +virtual_base_offsets( + int sub: @usertype ref, + int super: @usertype ref, + int offset: int ref +); + +frienddecls( + unique int id: @frienddecl, + int type_id: @type ref, + int decl_id: @declaration ref, + int location: @location_default ref +); + +@declaredtype = @usertype ; + +@declaration = @function + | @declaredtype + | @variable + | @enumconstant + | @frienddecl + | @concept_template; + +@member = @membervariable + | @function + | @declaredtype + | @enumconstant; + +@locatable = @diagnostic + | @declaration + | @ppd_include + | @ppd_define + | @macroinvocation + /*| @funcall*/ + | @xmllocatable + | @attribute + | @attribute_arg; + +@namedscope = @namespace | @usertype; + +@element = @locatable + | @file + | @folder + | @specifier + | @type + | @expr + | @namespace + | @initialiser + | @stmt + | @derivation + | @comment + | @preprocdirect + | @fun_decl + | @var_decl + | @type_decl + | @namespace_decl + | @using + | @namequalifier + | @specialnamequalifyingelement + | @static_assert + | @type_mention + | @lambdacapture; + +@exprparent = @element; + +comments( + unique int id: @comment, + string contents: string ref, + int location: @location_default ref +); + +commentbinding( + int id: @comment ref, + int element: @element ref +); + +exprconv( + int converted: @expr ref, + unique int conversion: @expr ref +); + +compgenerated(unique int id: @element ref); + +/** + * `destructor_call` destructs the `i`'th entity that should be + * destructed following `element`. Note that entities should be + * destructed in reverse construction order, so for a given `element` + * these should be called from highest to lowest `i`. + */ +#keyset[element, destructor_call] +#keyset[element, i] +synthetic_destructor_call( + int element: @element ref, + int i: int ref, + int destructor_call: @routineexpr ref +); + +namespaces( + unique int id: @namespace, + string name: string ref +); + +namespace_inline( + unique int id: @namespace ref +); + +namespacembrs( + int parentid: @namespace ref, + unique int memberid: @namespacembr ref +); + +@namespacembr = @declaration | @namespace; + +exprparents( + int expr_id: @expr ref, + int child_index: int ref, + int parent_id: @exprparent ref +); + +expr_isload(unique int expr_id: @expr ref); + +@cast = @c_style_cast + | @const_cast + | @dynamic_cast + | @reinterpret_cast + | @static_cast + ; + +/* +case @conversion.kind of + 0 = @simple_conversion // a numeric conversion, qualification conversion, or a reinterpret_cast +| 1 = @bool_conversion // conversion to 'bool' +| 2 = @base_class_conversion // a derived-to-base conversion +| 3 = @derived_class_conversion // a base-to-derived conversion +| 4 = @pm_base_class_conversion // a derived-to-base conversion of a pointer to member +| 5 = @pm_derived_class_conversion // a base-to-derived conversion of a pointer to member +| 6 = @glvalue_adjust // an adjustment of the type of a glvalue +| 7 = @prvalue_adjust // an adjustment of the type of a prvalue +; +*/ +/** + * Describes the semantics represented by a cast expression. This is largely + * independent of the source syntax of the cast, so it is separate from the + * regular expression kind. + */ +conversionkinds( + unique int expr_id: @cast ref, + int kind: int ref +); + +@conversion = @cast + | @array_to_pointer + | @parexpr + | @reference_to + | @ref_indirect + | @temp_init + | @c11_generic + ; + +/* +case @funbindexpr.kind of + 0 = @normal_call // a normal call +| 1 = @virtual_call // a virtual call +| 2 = @adl_call // a call whose target is only found by ADL +; +*/ +iscall( + unique int caller: @funbindexpr ref, + int kind: int ref +); + +numtemplatearguments( + unique int expr_id: @expr ref, + int num: int ref +); + +specialnamequalifyingelements( + unique int id: @specialnamequalifyingelement, + unique string name: string ref +); + +@namequalifiableelement = @expr | @namequalifier; +@namequalifyingelement = @namespace + | @specialnamequalifyingelement + | @usertype + | @decltype; + +namequalifiers( + unique int id: @namequalifier, + unique int qualifiableelement: @namequalifiableelement ref, + int qualifyingelement: @namequalifyingelement ref, + int location: @location_default ref +); + +varbind( + int expr: @varbindexpr ref, + int var: @accessible ref +); + +funbind( + int expr: @funbindexpr ref, + int fun: @function ref +); + +@any_new_expr = @new_expr + | @new_array_expr; + +@new_or_delete_expr = @any_new_expr + | @delete_expr + | @delete_array_expr; + +@prefix_crement_expr = @preincrexpr | @predecrexpr; + +@postfix_crement_expr = @postincrexpr | @postdecrexpr; + +@increment_expr = @preincrexpr | @postincrexpr; + +@decrement_expr = @predecrexpr | @postdecrexpr; + +@crement_expr = @increment_expr | @decrement_expr; + +@un_arith_op_expr = @arithnegexpr + | @unaryplusexpr + | @conjugation + | @realpartexpr + | @imagpartexpr + | @crement_expr + ; + +@un_bitwise_op_expr = @complementexpr; + +@un_log_op_expr = @notexpr; + +@un_op_expr = @address_of + | @indirect + | @un_arith_op_expr + | @un_bitwise_op_expr + | @builtinaddressof + | @vec_fill + | @un_log_op_expr + | @co_await + | @co_yield + ; + +@bin_log_op_expr = @andlogicalexpr | @orlogicalexpr; + +@cmp_op_expr = @eq_op_expr | @rel_op_expr; + +@eq_op_expr = @eqexpr | @neexpr; + +@rel_op_expr = @gtexpr + | @ltexpr + | @geexpr + | @leexpr + | @spaceshipexpr + ; + +@bin_bitwise_op_expr = @lshiftexpr + | @rshiftexpr + | @andexpr + | @orexpr + | @xorexpr + ; + +@p_arith_op_expr = @paddexpr + | @psubexpr + | @pdiffexpr + ; + +@bin_arith_op_expr = @addexpr + | @subexpr + | @mulexpr + | @divexpr + | @remexpr + | @jmulexpr + | @jdivexpr + | @fjaddexpr + | @jfaddexpr + | @fjsubexpr + | @jfsubexpr + | @minexpr + | @maxexpr + | @p_arith_op_expr + ; + +@bin_op_expr = @bin_arith_op_expr + | @bin_bitwise_op_expr + | @cmp_op_expr + | @bin_log_op_expr + ; + +@op_expr = @un_op_expr + | @bin_op_expr + | @assign_expr + | @conditionalexpr + ; + +@assign_arith_expr = @assignaddexpr + | @assignsubexpr + | @assignmulexpr + | @assigndivexpr + | @assignremexpr + ; + +@assign_bitwise_expr = @assignandexpr + | @assignorexpr + | @assignxorexpr + | @assignlshiftexpr + | @assignrshiftexpr + ; + +@assign_pointer_expr = @assignpaddexpr + | @assignpsubexpr + ; + +@assign_op_expr = @assign_arith_expr + | @assign_bitwise_expr + | @assign_pointer_expr + ; + +@assign_expr = @assignexpr | @assign_op_expr | @blockassignexpr + +/* + Binary encoding of the allocator form. + + case @allocator.form of + 0 = plain + | 1 = alignment + ; +*/ + +/** + * The allocator function associated with a `new` or `new[]` expression. + * The `form` column specified whether the allocation call contains an alignment + * argument. + */ +expr_allocator( + unique int expr: @any_new_expr ref, + int func: @function ref, + int form: int ref +); + +/* + Binary encoding of the deallocator form. + + case @deallocator.form of + 0 = plain + | 1 = size + | 2 = alignment + | 4 = destroying_delete + ; +*/ + +/** + * The deallocator function associated with a `delete`, `delete[]`, `new`, or + * `new[]` expression. For a `new` or `new[]` expression, the deallocator is the + * one used to free memory if the initialization throws an exception. + * The `form` column specifies whether the deallocation call contains a size + * argument, and alignment argument, or both. + */ +expr_deallocator( + unique int expr: @new_or_delete_expr ref, + int func: @function ref, + int form: int ref +); + +/** + * Holds if the `@conditionalexpr` is of the two operand form + * `guard ? : false`. + */ +expr_cond_two_operand( + unique int cond: @conditionalexpr ref +); + +/** + * The guard of `@conditionalexpr` `guard ? true : false` + */ +expr_cond_guard( + unique int cond: @conditionalexpr ref, + int guard: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` holds. For the two operand form + * `guard ?: false` consider using `expr_cond_guard` instead. + */ +expr_cond_true( + unique int cond: @conditionalexpr ref, + int true: @expr ref +); + +/** + * The expression used when the guard of `@conditionalexpr` + * `guard ? true : false` does not hold. + */ +expr_cond_false( + unique int cond: @conditionalexpr ref, + int false: @expr ref +); + +/** A string representation of the value. */ +values( + unique int id: @value, + string str: string ref +); + +/** The actual text in the source code for the value, if any. */ +valuetext( + unique int id: @value ref, + string text: string ref +); + +valuebind( + int val: @value ref, + unique int expr: @expr ref +); + +fieldoffsets( + unique int id: @variable ref, + int byteoffset: int ref, + int bitoffset: int ref +); + +bitfield( + unique int id: @variable ref, + int bits: int ref, + int declared_bits: int ref +); + +/* TODO +memberprefix( + int member: @expr ref, + int prefix: @expr ref +); +*/ + +/* + kind(1) = mbrcallexpr + kind(2) = mbrptrcallexpr + kind(3) = mbrptrmbrcallexpr + kind(4) = ptrmbrptrmbrcallexpr + kind(5) = mbrreadexpr // x.y + kind(6) = mbrptrreadexpr // p->y + kind(7) = mbrptrmbrreadexpr // x.*pm + kind(8) = mbrptrmbrptrreadexpr // x->*pm + kind(9) = staticmbrreadexpr // static x.y + kind(10) = staticmbrptrreadexpr // static p->y +*/ +/* TODO +memberaccess( + int member: @expr ref, + int kind: int ref +); +*/ + +initialisers( + unique int init: @initialiser, + int var: @accessible ref, + unique int expr: @expr ref, + int location: @location_default ref +); + +braced_initialisers( + int init: @initialiser ref +); + +/** + * An ancestor for the expression, for cases in which we cannot + * otherwise find the expression's parent. + */ +expr_ancestor( + int exp: @expr ref, + int ancestor: @element ref +); + +exprs( + unique int id: @expr, + int kind: int ref, + int location: @location_default ref +); + +expr_reuse( + int reuse: @expr ref, + int original: @expr ref, + int value_category: int ref +) + +/* + case @value.category of + 1 = prval + | 2 = xval + | 3 = lval + ; +*/ +expr_types( + int id: @expr ref, + int typeid: @type ref, + int value_category: int ref +); + +case @expr.kind of + 1 = @errorexpr +| 2 = @address_of // & AddressOfExpr +| 3 = @reference_to // ReferenceToExpr (implicit?) +| 4 = @indirect // * PointerDereferenceExpr +| 5 = @ref_indirect // ReferenceDereferenceExpr (implicit?) +// ... +| 8 = @array_to_pointer // (???) +| 9 = @vacuous_destructor_call // VacuousDestructorCall +// ... +| 11 = @assume // Microsoft +| 12 = @parexpr +| 13 = @arithnegexpr +| 14 = @unaryplusexpr +| 15 = @complementexpr +| 16 = @notexpr +| 17 = @conjugation // GNU ~ operator +| 18 = @realpartexpr // GNU __real +| 19 = @imagpartexpr // GNU __imag +| 20 = @postincrexpr +| 21 = @postdecrexpr +| 22 = @preincrexpr +| 23 = @predecrexpr +| 24 = @conditionalexpr +| 25 = @addexpr +| 26 = @subexpr +| 27 = @mulexpr +| 28 = @divexpr +| 29 = @remexpr +| 30 = @jmulexpr // C99 mul imaginary +| 31 = @jdivexpr // C99 div imaginary +| 32 = @fjaddexpr // C99 add real + imaginary +| 33 = @jfaddexpr // C99 add imaginary + real +| 34 = @fjsubexpr // C99 sub real - imaginary +| 35 = @jfsubexpr // C99 sub imaginary - real +| 36 = @paddexpr // pointer add (pointer + int or int + pointer) +| 37 = @psubexpr // pointer sub (pointer - integer) +| 38 = @pdiffexpr // difference between two pointers +| 39 = @lshiftexpr +| 40 = @rshiftexpr +| 41 = @andexpr +| 42 = @orexpr +| 43 = @xorexpr +| 44 = @eqexpr +| 45 = @neexpr +| 46 = @gtexpr +| 47 = @ltexpr +| 48 = @geexpr +| 49 = @leexpr +| 50 = @minexpr // GNU minimum +| 51 = @maxexpr // GNU maximum +| 52 = @assignexpr +| 53 = @assignaddexpr +| 54 = @assignsubexpr +| 55 = @assignmulexpr +| 56 = @assigndivexpr +| 57 = @assignremexpr +| 58 = @assignlshiftexpr +| 59 = @assignrshiftexpr +| 60 = @assignandexpr +| 61 = @assignorexpr +| 62 = @assignxorexpr +| 63 = @assignpaddexpr // assign pointer add +| 64 = @assignpsubexpr // assign pointer sub +| 65 = @andlogicalexpr +| 66 = @orlogicalexpr +| 67 = @commaexpr +| 68 = @subscriptexpr // access to member of an array, e.g., a[5] +// ... 69 @objc_subscriptexpr deprecated +// ... 70 @cmdaccess deprecated +// ... +| 73 = @virtfunptrexpr +| 74 = @callexpr +// ... 75 @msgexpr_normal deprecated +// ... 76 @msgexpr_super deprecated +// ... 77 @atselectorexpr deprecated +// ... 78 @atprotocolexpr deprecated +| 79 = @vastartexpr +| 80 = @vaargexpr +| 81 = @vaendexpr +| 82 = @vacopyexpr +// ... 83 @atencodeexpr deprecated +| 84 = @varaccess +| 85 = @thisaccess +// ... 86 @objc_box_expr deprecated +| 87 = @new_expr +| 88 = @delete_expr +| 89 = @throw_expr +| 90 = @condition_decl // a variable declared in a condition, e.g., if(int x = y > 2) +| 91 = @braced_init_list +| 92 = @type_id +| 93 = @runtime_sizeof +| 94 = @runtime_alignof +| 95 = @sizeof_pack +| 96 = @expr_stmt // GNU extension +| 97 = @routineexpr +| 98 = @type_operand // used to access a type in certain contexts (haven't found any examples yet....) +| 99 = @offsetofexpr // offsetof ::= type and field +| 100 = @hasassignexpr // __has_assign ::= type +| 101 = @hascopyexpr // __has_copy ::= type +| 102 = @hasnothrowassign // __has_nothrow_assign ::= type +| 103 = @hasnothrowconstr // __has_nothrow_constructor ::= type +| 104 = @hasnothrowcopy // __has_nothrow_copy ::= type +| 105 = @hastrivialassign // __has_trivial_assign ::= type +| 106 = @hastrivialconstr // __has_trivial_constructor ::= type +| 107 = @hastrivialcopy // __has_trivial_copy ::= type +| 108 = @hasuserdestr // __has_user_destructor ::= type +| 109 = @hasvirtualdestr // __has_virtual_destructor ::= type +| 110 = @isabstractexpr // __is_abstract ::= type +| 111 = @isbaseofexpr // __is_base_of ::= type type +| 112 = @isclassexpr // __is_class ::= type +| 113 = @isconvtoexpr // __is_convertible_to ::= type type +| 114 = @isemptyexpr // __is_empty ::= type +| 115 = @isenumexpr // __is_enum ::= type +| 116 = @ispodexpr // __is_pod ::= type +| 117 = @ispolyexpr // __is_polymorphic ::= type +| 118 = @isunionexpr // __is_union ::= type +| 119 = @typescompexpr // GNU __builtin_types_compatible ::= type type +| 120 = @intaddrexpr // frontend internal builtin, used to implement offsetof +// ... +| 122 = @hastrivialdestructor // __has_trivial_destructor ::= type +| 123 = @literal +| 124 = @uuidof +| 127 = @aggregateliteral +| 128 = @delete_array_expr +| 129 = @new_array_expr +// ... 130 @objc_array_literal deprecated +// ... 131 @objc_dictionary_literal deprecated +| 132 = @foldexpr +// ... +| 200 = @ctordirectinit +| 201 = @ctorvirtualinit +| 202 = @ctorfieldinit +| 203 = @ctordelegatinginit +| 204 = @dtordirectdestruct +| 205 = @dtorvirtualdestruct +| 206 = @dtorfielddestruct +// ... +| 210 = @static_cast +| 211 = @reinterpret_cast +| 212 = @const_cast +| 213 = @dynamic_cast +| 214 = @c_style_cast +| 215 = @lambdaexpr +| 216 = @param_ref +| 217 = @noopexpr +// ... +| 294 = @istriviallyconstructibleexpr +| 295 = @isdestructibleexpr +| 296 = @isnothrowdestructibleexpr +| 297 = @istriviallydestructibleexpr +| 298 = @istriviallyassignableexpr +| 299 = @isnothrowassignableexpr +| 300 = @istrivialexpr +| 301 = @isstandardlayoutexpr +| 302 = @istriviallycopyableexpr +| 303 = @isliteraltypeexpr +| 304 = @hastrivialmoveconstructorexpr +| 305 = @hastrivialmoveassignexpr +| 306 = @hasnothrowmoveassignexpr +| 307 = @isconstructibleexpr +| 308 = @isnothrowconstructibleexpr +| 309 = @hasfinalizerexpr +| 310 = @isdelegateexpr +| 311 = @isinterfaceclassexpr +| 312 = @isrefarrayexpr +| 313 = @isrefclassexpr +| 314 = @issealedexpr +| 315 = @issimplevalueclassexpr +| 316 = @isvalueclassexpr +| 317 = @isfinalexpr +| 319 = @noexceptexpr +| 320 = @builtinshufflevector +| 321 = @builtinchooseexpr +| 322 = @builtinaddressof +| 323 = @vec_fill +| 324 = @builtinconvertvector +| 325 = @builtincomplex +| 326 = @spaceshipexpr +| 327 = @co_await +| 328 = @co_yield +| 329 = @temp_init +| 330 = @isassignable +| 331 = @isaggregate +| 332 = @hasuniqueobjectrepresentations +| 333 = @builtinbitcast +| 334 = @builtinshuffle +| 335 = @blockassignexpr +| 336 = @issame +| 337 = @isfunction +| 338 = @islayoutcompatible +| 339 = @ispointerinterconvertiblebaseof +| 340 = @isarray +| 341 = @arrayrank +| 342 = @arrayextent +| 343 = @isarithmetic +| 344 = @iscompletetype +| 345 = @iscompound +| 346 = @isconst +| 347 = @isfloatingpoint +| 348 = @isfundamental +| 349 = @isintegral +| 350 = @islvaluereference +| 351 = @ismemberfunctionpointer +| 352 = @ismemberobjectpointer +| 353 = @ismemberpointer +| 354 = @isobject +| 355 = @ispointer +| 356 = @isreference +| 357 = @isrvaluereference +| 358 = @isscalar +| 359 = @issigned +| 360 = @isunsigned +| 361 = @isvoid +| 362 = @isvolatile +| 363 = @reuseexpr +| 364 = @istriviallycopyassignable +| 365 = @isassignablenopreconditioncheck +| 366 = @referencebindstotemporary +| 367 = @issameas +| 368 = @builtinhasattribute +| 369 = @ispointerinterconvertiblewithclass +| 370 = @builtinispointerinterconvertiblewithclass +| 371 = @iscorrespondingmember +| 372 = @builtiniscorrespondingmember +| 373 = @isboundedarray +| 374 = @isunboundedarray +| 375 = @isreferenceable +| 378 = @isnothrowconvertible +| 379 = @referenceconstructsfromtemporary +| 380 = @referenceconvertsfromtemporary +| 381 = @isconvertible +| 382 = @isvalidwinrttype +| 383 = @iswinclass +| 384 = @iswininterface +| 385 = @istriviallyequalitycomparable +| 386 = @isscopedenum +| 387 = @istriviallyrelocatable +| 388 = @datasizeof +| 389 = @c11_generic +| 390 = @requires_expr +| 391 = @nested_requirement +| 392 = @compound_requirement +| 393 = @concept_id +| 394 = @isinvocable +| 395 = @isnothrowinvocable +| 396 = @isbitwisecloneable +; + +@var_args_expr = @vastartexpr + | @vaendexpr + | @vaargexpr + | @vacopyexpr + ; + +@builtin_op = @var_args_expr + | @noopexpr + | @offsetofexpr + | @intaddrexpr + | @hasassignexpr + | @hascopyexpr + | @hasnothrowassign + | @hasnothrowconstr + | @hasnothrowcopy + | @hastrivialassign + | @hastrivialconstr + | @hastrivialcopy + | @hastrivialdestructor + | @hasuserdestr + | @hasvirtualdestr + | @isabstractexpr + | @isbaseofexpr + | @isclassexpr + | @isconvtoexpr + | @isemptyexpr + | @isenumexpr + | @ispodexpr + | @ispolyexpr + | @isunionexpr + | @typescompexpr + | @builtinshufflevector + | @builtinconvertvector + | @builtinaddressof + | @istriviallyconstructibleexpr + | @isdestructibleexpr + | @isnothrowdestructibleexpr + | @istriviallydestructibleexpr + | @istriviallyassignableexpr + | @isnothrowassignableexpr + | @istrivialexpr + | @isstandardlayoutexpr + | @istriviallycopyableexpr + | @isliteraltypeexpr + | @hastrivialmoveconstructorexpr + | @hastrivialmoveassignexpr + | @hasnothrowmoveassignexpr + | @isconstructibleexpr + | @isnothrowconstructibleexpr + | @hasfinalizerexpr + | @isdelegateexpr + | @isinterfaceclassexpr + | @isrefarrayexpr + | @isrefclassexpr + | @issealedexpr + | @issimplevalueclassexpr + | @isvalueclassexpr + | @isfinalexpr + | @builtinchooseexpr + | @builtincomplex + | @isassignable + | @isaggregate + | @hasuniqueobjectrepresentations + | @builtinbitcast + | @builtinshuffle + | @issame + | @isfunction + | @islayoutcompatible + | @ispointerinterconvertiblebaseof + | @isarray + | @arrayrank + | @arrayextent + | @isarithmetic + | @iscompletetype + | @iscompound + | @isconst + | @isfloatingpoint + | @isfundamental + | @isintegral + | @islvaluereference + | @ismemberfunctionpointer + | @ismemberobjectpointer + | @ismemberpointer + | @isobject + | @ispointer + | @isreference + | @isrvaluereference + | @isscalar + | @issigned + | @isunsigned + | @isvoid + | @isvolatile + | @istriviallycopyassignable + | @isassignablenopreconditioncheck + | @referencebindstotemporary + | @issameas + | @builtinhasattribute + | @ispointerinterconvertiblewithclass + | @builtinispointerinterconvertiblewithclass + | @iscorrespondingmember + | @builtiniscorrespondingmember + | @isboundedarray + | @isunboundedarray + | @isreferenceable + | @isnothrowconvertible + | @referenceconstructsfromtemporary + | @referenceconvertsfromtemporary + | @isconvertible + | @isvalidwinrttype + | @iswinclass + | @iswininterface + | @istriviallyequalitycomparable + | @isscopedenum + | @istriviallyrelocatable + | @isinvocable + | @isnothrowinvocable + | @isbitwisecloneable + ; + +compound_requirement_is_noexcept( + int expr: @compound_requirement ref +); + +new_allocated_type( + unique int expr: @new_expr ref, + int type_id: @type ref +); + +new_array_allocated_type( + unique int expr: @new_array_expr ref, + int type_id: @type ref +); + +param_ref_to_this( + int expr: @param_ref ref +) + +/** + * The field being initialized by an initializer expression within an aggregate + * initializer for a class/struct/union. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_field_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int field: @membervariable ref, + int position: int ref, + boolean is_designated: boolean ref +); + +/** + * The index of the element being initialized by an initializer expression + * within an aggregate initializer for an array. Position is used to sort repeated initializers. + */ +#keyset[aggregate, position] +aggregate_array_init( + int aggregate: @aggregateliteral ref, + int initializer: @expr ref, + int element_index: int ref, + int position: int ref, + boolean is_designated: boolean ref +); + +@ctorinit = @ctordirectinit + | @ctorvirtualinit + | @ctorfieldinit + | @ctordelegatinginit; +@dtordestruct = @dtordirectdestruct + | @dtorvirtualdestruct + | @dtorfielddestruct; + + +condition_decl_bind( + unique int expr: @condition_decl ref, + unique int decl: @declaration ref +); + +typeid_bind( + unique int expr: @type_id ref, + int type_id: @type ref +); + +uuidof_bind( + unique int expr: @uuidof ref, + int type_id: @type ref +); + +@sizeof_or_alignof = @runtime_sizeof | @runtime_alignof | @datasizeof | @sizeof_pack; + +sizeof_bind( + unique int expr: @sizeof_or_alignof ref, + int type_id: @type ref +); + +code_block( + unique int block: @literal ref, + unique int routine: @function ref +); + +lambdas( + unique int expr: @lambdaexpr ref, + string default_capture: string ref, + boolean has_explicit_return_type: boolean ref, + boolean has_explicit_parameter_list: boolean ref +); + +lambda_capture( + unique int id: @lambdacapture, + int lambda: @lambdaexpr ref, + int index: int ref, + int field: @membervariable ref, + boolean captured_by_reference: boolean ref, + boolean is_implicit: boolean ref, + int location: @location_default ref +); + +@funbindexpr = @routineexpr + | @new_expr + | @delete_expr + | @delete_array_expr + | @ctordirectinit + | @ctorvirtualinit + | @ctordelegatinginit + | @dtordirectdestruct + | @dtorvirtualdestruct; + +@varbindexpr = @varaccess | @ctorfieldinit | @dtorfielddestruct; +@addressable = @function | @variable ; +@accessible = @addressable | @enumconstant ; + +@access = @varaccess | @routineexpr ; + +fold( + int expr: @foldexpr ref, + string operator: string ref, + boolean is_left_fold: boolean ref +); + +stmts( + unique int id: @stmt, + int kind: int ref, + int location: @location_default ref +); + +case @stmt.kind of + 1 = @stmt_expr +| 2 = @stmt_if +| 3 = @stmt_while +| 4 = @stmt_goto +| 5 = @stmt_label +| 6 = @stmt_return +| 7 = @stmt_block +| 8 = @stmt_end_test_while // do { ... } while ( ... ) +| 9 = @stmt_for +| 10 = @stmt_switch_case +| 11 = @stmt_switch +| 13 = @stmt_asm // "asm" statement or the body of an asm function +| 15 = @stmt_try_block +| 16 = @stmt_microsoft_try // Microsoft +| 17 = @stmt_decl +| 18 = @stmt_set_vla_size // C99 +| 19 = @stmt_vla_decl // C99 +| 25 = @stmt_assigned_goto // GNU +| 26 = @stmt_empty +| 27 = @stmt_continue +| 28 = @stmt_break +| 29 = @stmt_range_based_for // C++11 +// ... 30 @stmt_at_autoreleasepool_block deprecated +// ... 31 @stmt_objc_for_in deprecated +// ... 32 @stmt_at_synchronized deprecated +| 33 = @stmt_handler +// ... 34 @stmt_finally_end deprecated +| 35 = @stmt_constexpr_if +| 37 = @stmt_co_return +| 38 = @stmt_consteval_if +| 39 = @stmt_not_consteval_if +| 40 = @stmt_leave +; + +type_vla( + int type_id: @type ref, + int decl: @stmt_vla_decl ref +); + +variable_vla( + int var: @variable ref, + int decl: @stmt_vla_decl ref +); + +type_is_vla(unique int type_id: @derivedtype ref) + +if_initialization( + unique int if_stmt: @stmt_if ref, + int init_id: @stmt ref +); + +if_then( + unique int if_stmt: @stmt_if ref, + int then_id: @stmt ref +); + +if_else( + unique int if_stmt: @stmt_if ref, + int else_id: @stmt ref +); + +constexpr_if_initialization( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int init_id: @stmt ref +); + +constexpr_if_then( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int then_id: @stmt ref +); + +constexpr_if_else( + unique int constexpr_if_stmt: @stmt_constexpr_if ref, + int else_id: @stmt ref +); + +@stmt_consteval_or_not_consteval_if = @stmt_consteval_if | @stmt_not_consteval_if; + +consteval_if_then( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int then_id: @stmt ref +); + +consteval_if_else( + unique int constexpr_if_stmt: @stmt_consteval_or_not_consteval_if ref, + int else_id: @stmt ref +); + +while_body( + unique int while_stmt: @stmt_while ref, + int body_id: @stmt ref +); + +do_body( + unique int do_stmt: @stmt_end_test_while ref, + int body_id: @stmt ref +); + +switch_initialization( + unique int switch_stmt: @stmt_switch ref, + int init_id: @stmt ref +); + +#keyset[switch_stmt, index] +switch_case( + int switch_stmt: @stmt_switch ref, + int index: int ref, + int case_id: @stmt_switch_case ref +); + +switch_body( + unique int switch_stmt: @stmt_switch ref, + int body_id: @stmt ref +); + +@stmt_for_or_range_based_for = @stmt_for + | @stmt_range_based_for; + +for_initialization( + unique int for_stmt: @stmt_for_or_range_based_for ref, + int init_id: @stmt ref +); + +for_condition( + unique int for_stmt: @stmt_for ref, + int condition_id: @expr ref +); + +for_update( + unique int for_stmt: @stmt_for ref, + int update_id: @expr ref +); + +for_body( + unique int for_stmt: @stmt_for ref, + int body_id: @stmt ref +); + +@stmtparent = @stmt | @expr_stmt ; +stmtparents( + unique int id: @stmt ref, + int index: int ref, + int parent: @stmtparent ref +); + +ishandler(unique int block: @stmt_block ref); + +@cfgnode = @stmt | @expr | @function | @initialiser ; + +stmt_decl_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl: @declaration ref +); + +stmt_decl_entry_bind( + int stmt: @stmt_decl ref, + int num: int ref, + int decl_entry: @element ref +); + +@parameterized_element = @function | @stmt_block | @requires_expr; + +blockscope( + unique int block: @stmt_block ref, + int enclosing: @parameterized_element ref +); + +@jump = @stmt_goto | @stmt_break | @stmt_continue | @stmt_leave; + +@jumporlabel = @jump | @stmt_label | @literal; + +jumpinfo( + unique int id: @jumporlabel ref, + string str: string ref, + int target: @stmt ref +); + +preprocdirects( + unique int id: @preprocdirect, + int kind: int ref, + int location: @location_default ref +); +case @preprocdirect.kind of + 0 = @ppd_if +| 1 = @ppd_ifdef +| 2 = @ppd_ifndef +| 3 = @ppd_elif +| 4 = @ppd_else +| 5 = @ppd_endif +| 6 = @ppd_plain_include +| 7 = @ppd_define +| 8 = @ppd_undef +| 9 = @ppd_line +| 10 = @ppd_error +| 11 = @ppd_pragma +| 12 = @ppd_objc_import +| 13 = @ppd_include_next +| 14 = @ppd_ms_import +| 15 = @ppd_elifdef +| 16 = @ppd_elifndef +| 17 = @ppd_embed +| 18 = @ppd_warning +; + +@ppd_include = @ppd_plain_include | @ppd_objc_import | @ppd_include_next | @ppd_ms_import; + +@ppd_branch = @ppd_if | @ppd_ifdef | @ppd_ifndef | @ppd_elif | @ppd_elifdef | @ppd_elifndef; + +preprocpair( + int begin : @ppd_branch ref, + int elseelifend : @preprocdirect ref +); + +preproctrue(int branch : @ppd_branch ref); +preprocfalse(int branch : @ppd_branch ref); + +preproctext( + unique int id: @preprocdirect ref, + string head: string ref, + string body: string ref +); + +includes( + unique int id: @ppd_include ref, + int included: @file ref +); + +embeds( + unique int id: @ppd_embed ref, + int included: @file ref +); + +link_targets( + int id: @link_target, + int binary: @file ref +); + +link_parent( + int element : @element ref, + int link_target : @link_target ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; diff --git a/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/upgrade.properties b/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/upgrade.properties new file mode 100644 index 000000000000..a50cc3b23134 --- /dev/null +++ b/cpp/ql/lib/upgrades/9439176c1d1312787926458dd54d65a849069118/upgrade.properties @@ -0,0 +1,2 @@ +description: Add trap_filename, source_file_uses_trap and in_trap relations +compatibility: full From 6235edaa21a75d0afb25a46f95e79c4139feca29 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Fri, 6 Feb 2026 13:36:31 +0000 Subject: [PATCH 354/433] C++: Update stats --- cpp/ql/lib/semmlecode.cpp.dbscheme.stats | 2358 +++++++++++----------- 1 file changed, 1223 insertions(+), 1135 deletions(-) diff --git a/cpp/ql/lib/semmlecode.cpp.dbscheme.stats b/cpp/ql/lib/semmlecode.cpp.dbscheme.stats index ee25206a25d1..1c53061ef50a 100644 --- a/cpp/ql/lib/semmlecode.cpp.dbscheme.stats +++ b/cpp/ql/lib/semmlecode.cpp.dbscheme.stats @@ -2,7 +2,7 @@ @compilation - 12591 + 12592 @externalDataElement @@ -10,19 +10,23 @@ @file - 64946 + 64952 @folder - 12339 + 12340 @diagnostic 357 + + @trap + 1 + @location_default - 46837407 + 46837429 @pch @@ -30,7 +34,7 @@ @macro_expansion - 40306104 + 40306124 @other_macro_reference @@ -38,7 +42,7 @@ @normal_function - 2734629 + 2734381 @unknown_function @@ -46,7 +50,7 @@ @constructor - 694334 + 694333 @destructor @@ -70,15 +74,15 @@ @fun_decl - 4193289 + 4193664 @var_decl - 9367854 + 9368481 @type_decl - 1629527 + 1629528 @namespace_decl @@ -86,7 +90,7 @@ @using_declaration - 266844 + 266868 @using_directive @@ -98,11 +102,11 @@ @static_assert - 172749 + 172750 @parameter - 7011797 + 7010805 @membervariable @@ -110,11 +114,11 @@ @globalvariable - 492566 + 492567 @localvariable - 724695 + 724674 @enumconstant @@ -354,11 +358,11 @@ @pointer - 451498 + 451499 @type_with_specifiers - 691559 + 691560 @array @@ -366,7 +370,7 @@ @routineptr - 679848 + 679846 @reference @@ -392,10 +396,6 @@ @scalable_vector 1 - - @decltype - 101757 - @typeof 811 @@ -474,11 +474,15 @@ @remove_reference - 5706 + 5705 + + + @decltype + 101757 @struct - 976596 + 976682 @union @@ -490,11 +494,11 @@ @template_parameter - 864417 + 864494 @alias - 1755743 + 1755899 @unknown_usertype @@ -506,11 +510,11 @@ @template_template_parameter - 6090 + 6091 @proxy_class - 48241 + 48246 @scoped_enum @@ -518,7 +522,7 @@ @template_struct - 211176 + 211194 @template_class @@ -530,11 +534,11 @@ @mangledname - 6349607 + 6349610 @type_mention - 5911106 + 5911109 @concept_template @@ -542,11 +546,11 @@ @routinetype - 600578 + 600577 @ptrtomember - 9677 + 9678 @specifier @@ -578,7 +582,7 @@ @attribute_arg_constant_expr - 71584 + 71632 @attribute_arg_expr @@ -598,19 +602,19 @@ @derivation - 473788 + 473787 @frienddecl - 767816 + 767814 @comment - 11208571 + 11208576 @namespace - 8615 + 8616 @specialnamequalifyingelement @@ -618,15 +622,15 @@ @namequalifier - 3042586 + 3042541 @value - 13541557 + 13541563 @initialiser - 2244826 + 2244830 @address_of @@ -634,15 +638,15 @@ @indirect - 402173 + 402174 @array_to_pointer - 1953950 + 1953951 @parexpr - 4915709 + 4915711 @arithnegexpr @@ -654,7 +658,7 @@ @complementexpr - 38187 + 38188 @notexpr @@ -662,7 +666,7 @@ @postincrexpr - 84578 + 84579 @postdecrexpr @@ -678,11 +682,11 @@ @conditionalexpr - 897971 + 897972 @addexpr - 580446 + 580447 @subexpr @@ -698,7 +702,7 @@ @remexpr - 15908 + 15907 @paddexpr @@ -734,7 +738,7 @@ @eqexpr - 643439 + 643440 @neexpr @@ -814,7 +818,7 @@ @orlogicalexpr - 1103651 + 1103652 @commaexpr @@ -826,7 +830,7 @@ @callexpr - 238857 + 238856 @vastartexpr @@ -846,7 +850,7 @@ @varaccess - 8255498 + 8255502 @runtime_sizeof @@ -862,7 +866,7 @@ @routineexpr - 5726204 + 5726119 @type_operand @@ -878,7 +882,7 @@ @literal - 7985020 + 7985002 @aggregateliteral @@ -886,11 +890,11 @@ @c_style_cast - 6027719 + 6027721 @temp_init - 980662 + 980663 @errorexpr @@ -898,11 +902,11 @@ @reference_to - 1880186 + 1880187 @ref_indirect - 2094072 + 2094067 @vacuous_destructor_call @@ -962,7 +966,7 @@ @thisaccess - 1553672 + 1553675 @new_expr @@ -978,7 +982,7 @@ @condition_decl - 407684 + 407678 @braced_init_list @@ -1118,7 +1122,7 @@ @dtorfielddestruct - 39567 + 39566 @static_cast @@ -1134,7 +1138,7 @@ @dynamic_cast - 788 + 789 @lambdaexpr @@ -1418,7 +1422,7 @@ @reuseexpr - 844478 + 844466 @istriviallycopyassignable @@ -1530,7 +1534,7 @@ @concept_id - 90160 + 90159 @isinvocable @@ -1550,11 +1554,11 @@ @stmt_expr - 2031827 + 2031828 @stmt_if - 990318 + 990319 @stmt_while @@ -1562,19 +1566,19 @@ @stmt_goto - 157264 + 157278 @stmt_label - 77727 + 77734 @stmt_return - 1238149 + 1238238 @stmt_block - 1724481 + 1724482 @stmt_end_test_while @@ -1586,11 +1590,11 @@ @stmt_switch_case - 833624 + 833612 @stmt_switch - 410623 + 410617 @stmt_asm @@ -1598,11 +1602,11 @@ @stmt_decl - 770029 + 770031 @stmt_empty - 428127 + 428121 @stmt_continue @@ -1610,7 +1614,7 @@ @stmt_break - 137506 + 137507 @stmt_try_block @@ -1674,7 +1678,7 @@ @ppd_elif - 21827 + 21829 @ppd_else @@ -1686,15 +1690,15 @@ @ppd_plain_include - 317263 + 317291 @ppd_define - 2743340 + 2743342 @ppd_undef - 100180 + 100181 @ppd_pragma @@ -1768,11 +1772,11 @@ compilations - 12591 + 12592 id - 12591 + 12592 cwd @@ -1790,7 +1794,7 @@ 1 2 - 12591 + 12592 @@ -1816,11 +1820,11 @@ compilation_args - 1008080 + 1008169 id - 12591 + 12592 num @@ -1828,7 +1832,7 @@ arg - 29149 + 29151 @@ -1887,7 +1891,7 @@ 98 99 - 1335 + 1336 100 @@ -2156,12 +2160,12 @@ 1 2 - 13349 + 13350 2 3 - 12633 + 12634 3 @@ -2187,12 +2191,12 @@ 1 2 - 19303 + 19304 2 3 - 8688 + 8689 3 @@ -2207,11 +2211,11 @@ compilation_expanded_args - 1008080 + 1008169 id - 12591 + 12592 num @@ -2219,7 +2223,7 @@ arg - 29149 + 29151 @@ -2278,7 +2282,7 @@ 98 99 - 1335 + 1336 100 @@ -2547,12 +2551,12 @@ 1 2 - 13349 + 13350 2 3 - 12633 + 12634 3 @@ -2578,12 +2582,12 @@ 1 2 - 19303 + 19304 2 3 - 8688 + 8689 3 @@ -2908,7 +2912,7 @@ seconds - 18516 + 15412 @@ -2989,12 +2993,12 @@ 3 4 - 980 + 1034 4 5 - 381 + 326 5 @@ -3003,8 +3007,8 @@ 8 - 10 - 217 + 9 + 163 10 @@ -3013,28 +3017,23 @@ 11 - 15 + 13 217 - 16 - 18 - 108 - - - 18 - 19 + 14 + 17 217 - 20 - 54 + 17 + 21 217 - 133 - 134 - 54 + 24 + 94 + 217 @@ -3102,47 +3101,47 @@ 3 4 - 1797 + 1143 4 5 - 599 + 1252 5 6 - 217 + 163 6 7 - 544 + 653 7 - 8 + 9 217 - 8 - 9 - 326 + 9 + 10 + 217 - 9 - 18 + 10 + 15 381 - 22 - 49 + 16 + 45 381 - 94 - 95 - 54 + 50 + 94 + 108 @@ -3198,13 +3197,13 @@ 54 - 187 - 188 + 148 + 149 54 - 197 - 198 + 160 + 161 54 @@ -3221,22 +3220,22 @@ 1 2 - 12362 + 9421 2 3 - 3757 + 3104 3 4 - 1688 + 1797 4 - 39 - 708 + 44 + 1089 @@ -3252,27 +3251,32 @@ 1 2 - 11273 + 8604 2 3 - 4302 + 2668 3 4 - 1470 + 1851 4 - 44 - 1416 + 5 + 925 - 63 - 64 - 54 + 5 + 15 + 1198 + + + 43 + 73 + 163 @@ -3288,12 +3292,12 @@ 1 2 - 15630 + 13560 2 3 - 2886 + 1851 @@ -3569,19 +3573,19 @@ compilation_finished - 12591 + 12592 id - 12591 + 12592 cpu_seconds - 9656 + 9489 elapsed_seconds - 210 + 231 @@ -3595,7 +3599,7 @@ 1 2 - 12591 + 12592 @@ -3611,7 +3615,7 @@ 1 2 - 12591 + 12592 @@ -3627,17 +3631,17 @@ 1 2 - 8394 + 7953 2 3 - 809 + 1052 3 - 32 - 452 + 29 + 483 @@ -3653,12 +3657,12 @@ 1 2 - 9046 + 8847 2 3 - 610 + 641 @@ -3674,76 +3678,46 @@ 1 2 - 42 + 73 2 - 3 - 10 - - - 3 - 4 - 10 + 5 + 21 5 - 6 - 10 - - - 7 - 8 + 9 21 10 11 - 10 - - - 11 - 12 21 - 15 - 16 - 10 - - - 20 - 21 - 10 - - - 31 - 32 - 10 - - - 61 - 62 - 10 + 12 + 14 + 21 - 172 - 173 - 10 + 19 + 33 + 21 - 231 - 232 - 10 + 60 + 179 + 21 - 286 - 287 - 10 + 233 + 293 + 21 - 321 - 322 + 312 + 313 10 @@ -3760,76 +3734,46 @@ 1 2 - 42 + 73 2 - 3 - 10 - - - 3 - 4 - 10 + 5 + 21 5 - 6 - 10 - - - 7 - 8 + 9 21 10 11 - 10 - - - 11 - 12 21 - 15 - 16 - 10 - - - 20 - 21 - 10 + 12 + 14 + 21 - 31 + 18 32 - 10 - - - 61 - 62 - 10 + 21 - 165 - 166 - 10 + 59 + 154 + 21 168 - 169 - 10 - - - 216 - 217 - 10 + 219 + 21 - 240 - 241 + 245 + 246 10 @@ -4067,11 +4011,11 @@ locations_default - 46837407 + 46837429 id - 46837407 + 46837429 file @@ -4079,7 +4023,7 @@ beginLine - 7483207 + 7483211 beginColumn @@ -4087,7 +4031,7 @@ endLine - 7484203 + 7484207 endColumn @@ -4105,7 +4049,7 @@ 1 2 - 46837407 + 46837429 @@ -4121,7 +4065,7 @@ 1 2 - 46837407 + 46837429 @@ -4137,7 +4081,7 @@ 1 2 - 46837407 + 46837429 @@ -4153,7 +4097,7 @@ 1 2 - 46837407 + 46837429 @@ -4169,7 +4113,7 @@ 1 2 - 46837407 + 46837429 @@ -4570,12 +4514,12 @@ 1 2 - 4945829 + 4945831 2 3 - 778673 + 778674 3 @@ -4590,7 +4534,7 @@ 12 96 - 561386 + 561387 96 @@ -4611,12 +4555,12 @@ 1 2 - 5008053 + 5008055 2 3 - 1216856 + 1216857 3 @@ -4647,7 +4591,7 @@ 1 2 - 5629548 + 5629551 2 @@ -4662,7 +4606,7 @@ 7 25 - 564995 + 564996 25 @@ -4683,7 +4627,7 @@ 1 2 - 7018144 + 7018147 2 @@ -4704,7 +4648,7 @@ 1 2 - 5014275 + 5014278 2 @@ -5125,17 +5069,17 @@ 1 2 - 4943589 + 4943591 2 3 - 782033 + 782034 3 4 - 541972 + 541973 4 @@ -5166,17 +5110,17 @@ 1 2 - 5005066 + 5005068 2 3 - 1220465 + 1220466 3 6 - 631077 + 631078 6 @@ -5202,7 +5146,7 @@ 1 2 - 7035318 + 7035321 2 @@ -5223,7 +5167,7 @@ 1 2 - 5628179 + 5628182 2 @@ -5238,12 +5182,12 @@ 7 25 - 568355 + 568356 25 89 - 224504 + 224505 @@ -5259,7 +5203,7 @@ 1 2 - 5012782 + 5012784 2 @@ -5599,15 +5543,15 @@ files - 64946 + 64952 id - 64946 + 64952 name - 64946 + 64952 @@ -5621,7 +5565,7 @@ 1 2 - 64946 + 64952 @@ -5637,7 +5581,7 @@ 1 2 - 64946 + 64952 @@ -5647,15 +5591,15 @@ folders - 12339 + 12340 id - 12339 + 12340 name - 12339 + 12340 @@ -5669,7 +5613,7 @@ 1 2 - 12339 + 12340 @@ -5685,7 +5629,7 @@ 1 2 - 12339 + 12340 @@ -5695,15 +5639,15 @@ containerparent - 77264 + 77271 parent - 12339 + 12340 child - 77264 + 77271 @@ -5717,7 +5661,7 @@ 1 2 - 6006 + 6007 2 @@ -5752,7 +5696,7 @@ 44 151 - 262 + 263 @@ -5768,7 +5712,7 @@ 1 2 - 77264 + 77271 @@ -5778,11 +5722,11 @@ numlines - 805927 + 805928 element_id - 804807 + 804808 num_lines @@ -5808,7 +5752,7 @@ 1 2 - 803687 + 803688 2 @@ -5829,7 +5773,7 @@ 1 2 - 803687 + 803688 2 @@ -6872,6 +6816,150 @@ + + trap_filename + 1 + + + trap + 1 + + + filename + 1 + + + + + trap + filename + + + 12 + + + 1 + 2 + 1 + + + + + + + filename + trap + + + 12 + + + 1 + 2 + 1 + + + + + + + + + source_file_uses_trap + 1 + + + source_file + 1 + + + trap_file + 1 + + + + + source_file + trap_file + + + 12 + + + 1 + 2 + 1 + + + + + + + trap_file + source_file + + + 12 + + + 1 + 2 + 1 + + + + + + + + + in_trap + 1 + + + element + 1 + + + trap_file + 1 + + + + + element + trap_file + + + 12 + + + 1 + 2 + 1 + + + + + + + trap_file + element + + + 12 + + + 1 + 2 + 1 + + + + + + + pch_uses 4121 @@ -7256,11 +7344,11 @@ fileannotations - 4183401 + 4183771 id - 5743 + 5744 kind @@ -7268,11 +7356,11 @@ name - 58477 + 58482 value - 39352 + 39356 @@ -7291,7 +7379,7 @@ 2 3 - 5543 + 5544 @@ -7517,7 +7605,7 @@ 1 2 - 10982 + 10983 2 @@ -7527,7 +7615,7 @@ 3 5 - 5038 + 5039 5 @@ -7537,12 +7625,12 @@ 7 9 - 4575 + 4576 9 16 - 4312 + 4313 16 @@ -7557,7 +7645,7 @@ 27 47 - 4817 + 4818 47 @@ -7588,7 +7676,7 @@ 1 2 - 58477 + 58482 @@ -7604,7 +7692,7 @@ 1 2 - 11539 + 11540 2 @@ -7619,7 +7707,7 @@ 4 6 - 4049 + 4050 6 @@ -7649,7 +7737,7 @@ 41 95 - 4449 + 4450 95 @@ -7680,7 +7768,7 @@ 4 5 - 3176 + 3177 5 @@ -7690,7 +7778,7 @@ 8 14 - 2955 + 2956 14 @@ -7705,7 +7793,7 @@ 24 51 - 3523 + 3524 51 @@ -7751,7 +7839,7 @@ 1 2 - 39342 + 39345 2 @@ -7797,7 +7885,7 @@ 14 18 - 3439 + 3440 18 @@ -7807,7 +7895,7 @@ 28 34 - 3134 + 3135 34 @@ -7817,7 +7905,7 @@ 41 66 - 2976 + 2977 66 @@ -7827,7 +7915,7 @@ 92 113 - 2976 + 2977 113 @@ -7847,15 +7935,15 @@ inmacroexpansion - 150011348 + 150011419 id - 24673488 + 24673500 inv - 3705719 + 3705721 @@ -7869,32 +7957,32 @@ 1 3 - 2209721 + 2209722 3 5 - 1475128 + 1475129 5 6 - 1620534 + 1620535 6 7 - 6583216 + 6583219 7 8 - 8719889 + 8719893 8 9 - 3557411 + 3557413 9 @@ -7920,7 +8008,7 @@ 2 3 - 743308 + 743309 3 @@ -7955,7 +8043,7 @@ 11 337 - 307829 + 307830 339 @@ -7975,15 +8063,15 @@ affectedbymacroexpansion - 48740809 + 48740832 id - 7045460 + 7045463 inv - 3803509 + 3803511 @@ -7997,7 +8085,7 @@ 1 2 - 3847103 + 3847105 2 @@ -8017,7 +8105,7 @@ 5 12 - 535214 + 535215 12 @@ -8048,7 +8136,7 @@ 4 7 - 316639 + 316640 7 @@ -8113,11 +8201,11 @@ macroinvocations - 40387470 + 40387489 id - 40387470 + 40387489 macro_id @@ -8125,7 +8213,7 @@ location - 5925539 + 5925541 kind @@ -8143,7 +8231,7 @@ 1 2 - 40387470 + 40387489 @@ -8159,7 +8247,7 @@ 1 2 - 40387470 + 40387489 @@ -8175,7 +8263,7 @@ 1 2 - 40387470 + 40387489 @@ -8191,7 +8279,7 @@ 1 2 - 61105 + 61106 2 @@ -8319,7 +8407,7 @@ 1 2 - 5261596 + 5261599 2 @@ -8345,7 +8433,7 @@ 1 2 - 5903373 + 5903376 2 @@ -8366,7 +8454,7 @@ 1 2 - 5925539 + 5925541 @@ -8439,15 +8527,15 @@ macroparent - 33684436 + 33684452 id - 33684436 + 33684452 parent_id - 15941258 + 15941266 @@ -8461,7 +8549,7 @@ 1 2 - 33684436 + 33684452 @@ -8477,22 +8565,22 @@ 1 2 - 7815086 + 7815090 2 3 - 1595835 + 1595836 3 4 - 4707394 + 4707397 4 5 - 1296895 + 1296896 5 @@ -8507,15 +8595,15 @@ macrolocationbind - 6022277 + 6022573 id - 4208236 + 4208559 location - 2272393 + 2272360 @@ -8529,22 +8617,22 @@ 1 2 - 3284816 + 3285153 2 3 - 489028 + 489021 3 4 - 8602 + 8601 4 5 - 412639 + 412633 5 @@ -8565,12 +8653,12 @@ 1 2 - 1332220 + 1332200 2 3 - 481413 + 481406 3 @@ -8580,12 +8668,12 @@ 4 5 - 426926 + 426920 5 522 - 24047 + 24046 @@ -8595,11 +8683,11 @@ macro_argument_unexpanded - 82169662 + 82174179 invocation - 26182114 + 26181675 argument_index @@ -8607,7 +8695,7 @@ text - 341868 + 341898 @@ -8621,22 +8709,22 @@ 1 2 - 9643579 + 9641676 2 3 - 9733520 + 9734381 3 4 - 4982515 + 4982956 4 67 - 1822499 + 1822661 @@ -8652,22 +8740,22 @@ 1 2 - 9825469 + 9823583 2 3 - 9751034 + 9751897 3 4 - 4826449 + 4826877 4 67 - 1779160 + 1779317 @@ -8692,7 +8780,7 @@ 646904 - 2488947 + 2488685 31 @@ -8735,52 +8823,52 @@ 1 2 - 39542 + 39545 2 3 - 62074 + 62080 3 4 - 20933 + 20935 4 5 - 34440 + 34443 5 6 - 39089 + 39093 6 9 - 30748 + 30750 9 15 - 28875 + 28878 15 26 - 25772 + 25774 26 57 - 27024 + 27026 57 517 - 25909 + 25911 518 @@ -8801,17 +8889,17 @@ 1 2 - 242187 + 242208 2 3 - 89509 + 89517 3 9 - 10172 + 10173 @@ -8821,11 +8909,11 @@ macro_argument_expanded - 82169662 + 82174179 invocation - 26182114 + 26181675 argument_index @@ -8833,7 +8921,7 @@ text - 207052 + 207070 @@ -8847,22 +8935,22 @@ 1 2 - 9643579 + 9641676 2 3 - 9733520 + 9734381 3 4 - 4982515 + 4982956 4 67 - 1822499 + 1822661 @@ -8878,22 +8966,22 @@ 1 2 - 12591345 + 12589703 2 3 - 8396151 + 8396895 3 4 - 4208269 + 4208641 4 9 - 986347 + 986434 @@ -8918,7 +9006,7 @@ 646904 - 2488947 + 2488685 31 @@ -8961,22 +9049,22 @@ 1 2 - 21743 + 21745 2 3 - 26750 + 26753 3 4 - 43297 + 43301 4 5 - 15842 + 15843 5 @@ -8986,32 +9074,32 @@ 6 7 - 18324 + 18326 7 10 - 18882 + 18883 10 19 - 18251 + 18252 19 51 - 15694 + 15696 51 251 - 15547 + 15548 251 - 1169678 - 9467 + 1169416 + 9468 @@ -9027,17 +9115,17 @@ 1 2 - 104625 + 104634 2 3 - 88551 + 88559 3 66 - 13875 + 13876 @@ -9047,15 +9135,15 @@ functions - 4043204 + 4042957 id - 4043204 + 4042957 name - 1689262 + 1689263 kind @@ -9073,7 +9161,7 @@ 1 2 - 4043204 + 4042957 @@ -9089,7 +9177,7 @@ 1 2 - 4043204 + 4042957 @@ -9105,12 +9193,12 @@ 1 2 - 1441361 + 1441611 2 4 - 140377 + 140128 4 @@ -9131,7 +9219,7 @@ 1 2 - 1686400 + 1686401 2 @@ -9180,8 +9268,8 @@ 124 - 21974 - 21975 + 21972 + 21973 124 @@ -9238,26 +9326,26 @@ builtin_functions - 30800 + 30803 id - 30800 + 30803 function_entry_point - 1134648 + 1134646 id - 1130925 + 1130923 entry_point - 1134648 + 1134646 @@ -9271,7 +9359,7 @@ 1 2 - 1127744 + 1127741 2 @@ -9292,7 +9380,7 @@ 1 2 - 1134648 + 1134646 @@ -9302,15 +9390,15 @@ function_return_type - 4060503 + 4060256 id - 4043204 + 4042957 return_type - 617761 + 617762 @@ -9324,7 +9412,7 @@ 1 2 - 4025906 + 4025659 2 @@ -9656,33 +9744,33 @@ function_deleted - 87800 + 87799 id - 87800 + 87799 function_defaulted - 51526 + 51525 id - 51526 + 51525 function_prototyped - 4041711 + 4041464 id - 4041711 + 4041464 @@ -9840,15 +9928,15 @@ fun_decls - 4199263 + 4199638 id - 4193289 + 4193664 function - 4018688 + 4018441 type_id @@ -9856,11 +9944,11 @@ name - 1687769 + 1687770 location - 2806436 + 2806437 @@ -9874,7 +9962,7 @@ 1 2 - 4193289 + 4193664 @@ -9890,7 +9978,7 @@ 1 2 - 4187316 + 4187691 2 @@ -9911,7 +9999,7 @@ 1 2 - 4193289 + 4193664 @@ -9927,7 +10015,7 @@ 1 2 - 4193289 + 4193664 @@ -9943,12 +10031,12 @@ 1 2 - 3858647 + 3857778 2 5 - 160040 + 160662 @@ -9964,7 +10052,7 @@ 1 2 - 4000394 + 4000147 2 @@ -9985,7 +10073,7 @@ 1 2 - 4018688 + 4018441 @@ -10001,12 +10089,12 @@ 1 2 - 3878435 + 3877814 2 4 - 140253 + 140626 @@ -10022,7 +10110,7 @@ 1 2 - 294444 + 294445 2 @@ -10032,7 +10120,7 @@ 3 5 - 48285 + 48286 5 @@ -10041,7 +10129,7 @@ 364 - 10295 + 10296 1244 @@ -10076,7 +10164,7 @@ 45797 - 1485 + 1483 9907 248 @@ -10094,7 +10182,7 @@ 1 2 - 490326 + 490327 2 @@ -10156,7 +10244,7 @@ 1 2 - 1328362 + 1328363 2 @@ -10166,12 +10254,12 @@ 3 11 - 129550 + 129426 11 - 3167 - 36463 + 3169 + 36587 @@ -10187,12 +10275,12 @@ 1 2 - 1440863 + 1441113 2 4 - 140875 + 140626 4 @@ -10213,7 +10301,7 @@ 1 2 - 1598166 + 1598167 2 @@ -10234,7 +10322,7 @@ 1 2 - 1363954 + 1363955 2 @@ -10260,12 +10348,12 @@ 1 2 - 2413303 + 2413180 2 3 - 252008 + 252132 3 @@ -10286,12 +10374,12 @@ 1 2 - 2431971 + 2431847 2 3 - 233838 + 233963 3 @@ -10312,7 +10400,7 @@ 1 2 - 2692317 + 2692318 2 @@ -10333,7 +10421,7 @@ 1 2 - 2767359 + 2767360 2 @@ -10348,11 +10436,11 @@ fun_def - 1418836 + 1418837 id - 1418836 + 1418837 @@ -10381,7 +10469,7 @@ fun_decl_specifiers - 4269576 + 4269578 id @@ -10413,7 +10501,7 @@ 3 4 - 1097510 + 1097511 4 @@ -10679,11 +10767,11 @@ fun_decl_empty_noexcept - 1160854 + 1160979 fun_decl - 1160854 + 1160979 @@ -10949,11 +11037,11 @@ param_decl_bind - 7294544 + 7295169 id - 7294544 + 7295169 index @@ -10961,7 +11049,7 @@ fun_decl - 3523881 + 3524256 @@ -10975,7 +11063,7 @@ 1 2 - 7294544 + 7295169 @@ -10991,7 +11079,7 @@ 1 2 - 7294544 + 7295169 @@ -11026,12 +11114,12 @@ 343 - 16218 + 16219 622 - 28316 - 28317 + 28319 + 28320 124 @@ -11067,12 +11155,12 @@ 343 - 16218 + 16219 622 - 28316 - 28317 + 28319 + 28320 124 @@ -11089,7 +11177,7 @@ 1 2 - 1505701 + 1505951 2 @@ -11099,7 +11187,7 @@ 3 4 - 600712 + 600837 4 @@ -11125,7 +11213,7 @@ 1 2 - 1505701 + 1505951 2 @@ -11135,7 +11223,7 @@ 3 4 - 600712 + 600837 4 @@ -11155,19 +11243,19 @@ var_decls - 9374326 + 9374952 id - 9367854 + 9368481 variable - 9027363 + 9026372 type_id - 1452935 + 1452936 name @@ -11175,7 +11263,7 @@ location - 6259506 + 6259509 @@ -11189,7 +11277,7 @@ 1 2 - 9367854 + 9368481 @@ -11205,7 +11293,7 @@ 1 2 - 9361383 + 9362010 2 @@ -11226,7 +11314,7 @@ 1 2 - 9367854 + 9368481 @@ -11242,7 +11330,7 @@ 1 2 - 9367854 + 9368481 @@ -11258,12 +11346,12 @@ 1 2 - 8704295 + 8701686 2 5 - 323068 + 324686 @@ -11279,7 +11367,7 @@ 1 2 - 8974348 + 8973357 2 @@ -11300,7 +11388,7 @@ 1 2 - 8922205 + 8921213 2 @@ -11321,12 +11409,12 @@ 1 2 - 8783071 + 8780711 2 4 - 244292 + 245661 @@ -11397,7 +11485,7 @@ 11 - 2872 + 2870 80891 @@ -11505,7 +11593,7 @@ 25 - 27136 + 27138 31236 @@ -11522,12 +11610,12 @@ 1 2 - 475766 + 476015 2 3 - 164894 + 164769 3 @@ -11537,7 +11625,7 @@ 4 8 - 72180 + 72055 8 @@ -11630,16 +11718,16 @@ 1 2 - 5758601 + 5758231 2 20 - 470788 + 471161 20 - 2940 + 2942 30116 @@ -11656,12 +11744,12 @@ 1 2 - 5839244 + 5838873 2 2935 - 420262 + 420635 @@ -11677,7 +11765,7 @@ 1 2 - 5961701 + 5961704 2 @@ -11698,7 +11786,7 @@ 1 2 - 6247186 + 6247189 2 @@ -11713,11 +11801,11 @@ var_def - 3763195 + 3763197 id - 3763195 + 3763197 @@ -11735,11 +11823,11 @@ var_decl_specifiers - 488708 + 488709 id - 488708 + 488709 name @@ -11757,7 +11845,7 @@ 1 2 - 488708 + 488709 @@ -11867,15 +11955,15 @@ type_decls - 1629527 + 1629528 id - 1629527 + 1629528 type_id - 1610611 + 1610612 location @@ -11893,7 +11981,7 @@ 1 2 - 1629527 + 1629528 @@ -11909,7 +11997,7 @@ 1 2 - 1629527 + 1629528 @@ -11925,7 +12013,7 @@ 1 2 - 1594308 + 1594309 2 @@ -11967,7 +12055,7 @@ 1 2 - 1521630 + 1521631 2 @@ -11988,7 +12076,7 @@ 1 2 - 1521755 + 1521756 2 @@ -12464,19 +12552,19 @@ usings - 270978 + 271002 id - 270978 + 271002 element_id - 58813 + 58818 location - 26740 + 26742 kind @@ -12494,7 +12582,7 @@ 1 2 - 270978 + 271002 @@ -12510,7 +12598,7 @@ 1 2 - 270978 + 271002 @@ -12526,7 +12614,7 @@ 1 2 - 270978 + 271002 @@ -12542,12 +12630,12 @@ 1 2 - 51113 + 51118 2 5 - 5364 + 5365 5 @@ -12568,12 +12656,12 @@ 1 2 - 51113 + 51118 2 5 - 5364 + 5365 5 @@ -12594,7 +12682,7 @@ 1 2 - 58813 + 58818 @@ -12610,7 +12698,7 @@ 1 2 - 21091 + 21093 2 @@ -12641,7 +12729,7 @@ 1 2 - 21091 + 21093 2 @@ -12672,7 +12760,7 @@ 1 2 - 26740 + 26742 @@ -12745,15 +12833,15 @@ using_container - 577796 + 577847 parent - 21806 + 21808 child - 270978 + 271002 @@ -12797,7 +12885,7 @@ 145 146 - 2608 + 2609 146 @@ -12818,27 +12906,27 @@ 1 2 - 96210 + 96218 2 3 - 119794 + 119805 3 4 - 20018 + 20020 4 5 - 26603 + 26605 5 65 - 8352 + 8353 @@ -12848,15 +12936,15 @@ static_asserts - 172749 + 172750 id - 172749 + 172750 condition - 172749 + 172750 message @@ -12882,7 +12970,7 @@ 1 2 - 172749 + 172750 @@ -12898,7 +12986,7 @@ 1 2 - 172749 + 172750 @@ -12914,7 +13002,7 @@ 1 2 - 172749 + 172750 @@ -12930,7 +13018,7 @@ 1 2 - 172749 + 172750 @@ -12946,7 +13034,7 @@ 1 2 - 172749 + 172750 @@ -12962,7 +13050,7 @@ 1 2 - 172749 + 172750 @@ -12978,7 +13066,7 @@ 1 2 - 172749 + 172750 @@ -12994,7 +13082,7 @@ 1 2 - 172749 + 172750 @@ -13456,15 +13544,15 @@ params - 7052243 + 7051250 id - 7011797 + 7010805 function - 3400304 + 3400056 index @@ -13472,7 +13560,7 @@ type_id - 1217354 + 1217355 @@ -13486,7 +13574,7 @@ 1 2 - 7011797 + 7010805 @@ -13502,7 +13590,7 @@ 1 2 - 7011797 + 7010805 @@ -13518,7 +13606,7 @@ 1 2 - 6971351 + 6970359 2 @@ -13539,12 +13627,12 @@ 1 2 - 1470855 + 1470856 2 3 - 924776 + 924652 3 @@ -13559,7 +13647,7 @@ 5 65 - 145977 + 145853 @@ -13575,12 +13663,12 @@ 1 2 - 1470855 + 1470856 2 3 - 924776 + 924652 3 @@ -13595,7 +13683,7 @@ 5 65 - 145977 + 145853 @@ -13611,12 +13699,12 @@ 1 2 - 1778616 + 1778617 2 3 - 1029312 + 1029188 3 @@ -13626,7 +13714,7 @@ 4 11 - 154938 + 154813 @@ -13660,13 +13748,13 @@ 622 - 322 - 15505 + 321 + 15503 622 - 27323 - 27324 + 27321 + 27322 124 @@ -13701,13 +13789,13 @@ 622 - 322 - 15505 + 321 + 15503 622 - 27323 - 27324 + 27321 + 27322 124 @@ -13801,7 +13889,7 @@ 1 2 - 817501 + 817502 2 @@ -13861,7 +13949,7 @@ new - 150382 + 150383 old @@ -13935,7 +14023,7 @@ membervariables - 1502978 + 1502979 id @@ -14111,11 +14199,11 @@ globalvariables - 492566 + 492567 id - 492566 + 492567 type_id @@ -14137,7 +14225,7 @@ 1 2 - 492566 + 492567 @@ -14153,7 +14241,7 @@ 1 2 - 492566 + 492567 @@ -14297,19 +14385,19 @@ localvariables - 724695 + 724674 id - 724695 + 724674 type_id - 53298 + 53296 name - 101409 + 101406 @@ -14323,7 +14411,7 @@ 1 2 - 724695 + 724674 @@ -14339,7 +14427,7 @@ 1 2 - 724695 + 724674 @@ -14355,7 +14443,7 @@ 1 2 - 28789 + 28788 2 @@ -14401,12 +14489,12 @@ 1 2 - 38248 + 38247 2 3 - 6704 + 6703 3 @@ -14432,7 +14520,7 @@ 1 2 - 62402 + 62400 2 @@ -14473,12 +14561,12 @@ 1 2 - 84399 + 84396 2 3 - 8393 + 8392 3 @@ -16213,15 +16301,15 @@ derivedtypes - 3023723 + 3023724 id - 3023723 + 3023724 name - 1457166 + 1457167 kind @@ -16243,7 +16331,7 @@ 1 2 - 3023723 + 3023724 @@ -16259,7 +16347,7 @@ 1 2 - 3023723 + 3023724 @@ -16275,7 +16363,7 @@ 1 2 - 3023723 + 3023724 @@ -16291,7 +16379,7 @@ 1 2 - 1340931 + 1340932 2 @@ -16317,7 +16405,7 @@ 1 2 - 1457166 + 1457167 @@ -16513,7 +16601,7 @@ 1 2 - 1315917 + 1315918 2 @@ -16544,7 +16632,7 @@ 1 2 - 1316290 + 1316291 2 @@ -16569,11 +16657,11 @@ pointerishsize - 2242062 + 2242063 id - 2242062 + 2242063 size @@ -16595,7 +16683,7 @@ 1 2 - 2242062 + 2242063 @@ -16611,7 +16699,7 @@ 1 2 - 2242062 + 2242063 @@ -17134,15 +17222,15 @@ typedefbase - 1755743 + 1755899 id - 1755743 + 1755899 type_id - 834216 + 834290 @@ -17156,7 +17244,7 @@ 1 2 - 1755743 + 1755899 @@ -17172,22 +17260,22 @@ 1 2 - 659332 + 659390 2 3 - 80757 + 80764 3 6 - 63915 + 63921 6 4525 - 30211 + 30214 @@ -17197,7 +17285,7 @@ decltypes - 814570 + 814571 id @@ -17205,7 +17293,7 @@ expr - 814570 + 814571 kind @@ -17335,7 +17423,7 @@ 1 2 - 814570 + 814571 @@ -17351,7 +17439,7 @@ 1 2 - 814570 + 814571 @@ -17367,7 +17455,7 @@ 1 2 - 814570 + 814571 @@ -17383,7 +17471,7 @@ 1 2 - 814570 + 814571 @@ -17645,11 +17733,11 @@ type_operators - 7937 + 7936 id - 7937 + 7936 arg_type @@ -17675,7 +17763,7 @@ 1 2 - 7937 + 7936 @@ -17691,7 +17779,7 @@ 1 2 - 7937 + 7936 @@ -17707,7 +17795,7 @@ 1 2 - 7937 + 7936 @@ -17961,15 +18049,15 @@ usertypes - 4137505 + 4137871 id - 4137505 + 4137871 name - 915352 + 915412 kind @@ -17987,7 +18075,7 @@ 1 2 - 4137505 + 4137871 @@ -18003,7 +18091,7 @@ 1 2 - 4137505 + 4137871 @@ -18019,22 +18107,22 @@ 1 2 - 652073 + 652110 2 3 - 158105 + 158098 3 8 - 70321 + 70349 8 32667 - 34850 + 34853 @@ -18050,12 +18138,12 @@ 1 2 - 863818 + 863873 2 10 - 51534 + 51538 @@ -18190,8 +18278,8 @@ 10 - 12189 - 12190 + 12187 + 12188 10 @@ -18207,11 +18295,11 @@ usertypesize - 1359595 + 1359715 id - 1359595 + 1359715 size @@ -18233,7 +18321,7 @@ 1 2 - 1359595 + 1359715 @@ -18249,7 +18337,7 @@ 1 2 - 1359595 + 1359715 @@ -18507,11 +18595,11 @@ usertype_alias_kind - 1755743 + 1755899 id - 1755743 + 1755899 alias_kind @@ -18529,7 +18617,7 @@ 1 2 - 1755743 + 1755899 @@ -18560,11 +18648,11 @@ nontype_template_parameters - 761283 + 761282 id - 761283 + 761282 @@ -18644,15 +18732,15 @@ mangled_name - 7910439 + 7910194 id - 7910439 + 7910194 mangled_name - 6349607 + 6349610 is_complete @@ -18670,7 +18758,7 @@ 1 2 - 7910439 + 7910194 @@ -18686,7 +18774,7 @@ 1 2 - 7910439 + 7910194 @@ -18702,12 +18790,12 @@ 1 2 - 6016209 + 6016461 2 1120 - 333397 + 333148 @@ -18723,7 +18811,7 @@ 1 2 - 6349607 + 6349610 @@ -18742,8 +18830,8 @@ 124 - 63558 - 63559 + 63556 + 63557 124 @@ -18775,59 +18863,59 @@ is_pod_class - 590966 + 590965 id - 590966 + 590965 is_standard_layout_class - 1120532 + 1120631 id - 1120532 + 1120631 is_complete - 1341502 + 1341620 id - 1341502 + 1341620 is_class_template - 231183 + 231204 id - 231183 + 231204 class_instantiation - 1122152 + 1122283 to - 1119154 + 1119253 from - 71521 + 71527 @@ -18841,12 +18929,12 @@ 1 2 - 1117061 + 1117128 2 8 - 2093 + 2125 @@ -18862,12 +18950,12 @@ 1 2 - 20386 + 20388 2 3 - 12833 + 12834 3 @@ -18892,17 +18980,17 @@ 10 17 - 5901 + 5891 17 - 52 - 5396 + 51 + 5365 - 52 + 51 4223 - 3513 + 3555 @@ -18912,11 +19000,11 @@ class_template_argument - 2887353 + 2887609 type_id - 1362193 + 1362314 index @@ -18924,7 +19012,7 @@ arg_type - 818753 + 818825 @@ -18938,27 +19026,27 @@ 1 2 - 577723 + 577774 2 3 - 408634 + 408671 3 4 - 249939 + 249962 4 7 - 102679 + 102688 7 113 - 23216 + 23218 @@ -18974,22 +19062,22 @@ 1 2 - 606156 + 606210 2 3 - 422573 + 422610 3 4 - 250770 + 250793 4 113 - 82692 + 82699 @@ -19097,22 +19185,22 @@ 1 2 - 511556 + 511601 2 3 - 166889 + 166904 3 5 - 74918 + 74925 5 46 - 61412 + 61417 46 @@ -19133,17 +19221,17 @@ 1 2 - 720870 + 720934 2 3 - 79589 + 79596 3 22 - 18293 + 18294 @@ -19153,7 +19241,7 @@ class_template_argument_value - 506789 + 506788 type_id @@ -19165,7 +19253,7 @@ arg_value - 506653 + 506652 @@ -19184,7 +19272,7 @@ 2 3 - 43087 + 43086 3 @@ -19348,7 +19436,7 @@ 1 2 - 506518 + 506517 2 @@ -19369,7 +19457,7 @@ 1 2 - 506653 + 506652 @@ -19379,15 +19467,15 @@ is_proxy_class_for - 48241 + 48246 id - 48241 + 48246 templ_param_id - 45580 + 45584 @@ -19401,7 +19489,7 @@ 1 2 - 48241 + 48246 @@ -19417,7 +19505,7 @@ 1 2 - 44865 + 44869 2 @@ -19432,11 +19520,11 @@ type_mentions - 5911106 + 5911109 id - 5911106 + 5911109 type_id @@ -19444,7 +19532,7 @@ location - 5854793 + 5854796 kind @@ -19462,7 +19550,7 @@ 1 2 - 5911106 + 5911109 @@ -19478,7 +19566,7 @@ 1 2 - 5911106 + 5911109 @@ -19494,7 +19582,7 @@ 1 2 - 5911106 + 5911109 @@ -19628,7 +19716,7 @@ 1 2 - 5809100 + 5809102 2 @@ -19649,7 +19737,7 @@ 1 2 - 5809100 + 5809102 2 @@ -19670,7 +19758,7 @@ 1 2 - 5854793 + 5854796 @@ -19728,22 +19816,22 @@ is_function_template - 1328113 + 1328114 id - 1328113 + 1328114 function_instantiation - 967580 + 967578 to - 967580 + 967578 from @@ -19761,7 +19849,7 @@ 1 2 - 967580 + 967578 @@ -19777,7 +19865,7 @@ 1 2 - 109833 + 109832 2 @@ -19807,11 +19895,11 @@ function_template_argument - 2468689 + 2468684 function_id - 1443873 + 1443870 index @@ -19819,7 +19907,7 @@ arg_type - 296058 + 296057 @@ -19833,7 +19921,7 @@ 1 2 - 777936 + 777934 2 @@ -19864,12 +19952,12 @@ 1 2 - 796958 + 796956 2 3 - 408599 + 408598 3 @@ -20083,7 +20171,7 @@ function_template_argument_value - 449825 + 449824 function_id @@ -20095,7 +20183,7 @@ arg_value - 447151 + 447150 @@ -20288,7 +20376,7 @@ 1 2 - 444477 + 444476 2 @@ -20309,7 +20397,7 @@ 1 2 - 447151 + 447150 @@ -20330,11 +20418,11 @@ variable_instantiation - 427355 + 427356 to - 427355 + 427356 from @@ -20352,7 +20440,7 @@ 1 2 - 427355 + 427356 @@ -20449,7 +20537,7 @@ 2 3 - 189534 + 189535 3 @@ -20480,7 +20568,7 @@ 2 3 - 179827 + 179828 3 @@ -20888,11 +20976,11 @@ template_template_argument - 9635 + 9636 type_id - 6090 + 6091 index @@ -20900,7 +20988,7 @@ arg_type - 9046 + 9047 @@ -20914,7 +21002,7 @@ 1 2 - 4996 + 4997 2 @@ -20945,7 +21033,7 @@ 1 2 - 5017 + 5018 2 @@ -21119,7 +21207,7 @@ 1 2 - 9025 + 9026 2 @@ -21366,11 +21454,11 @@ concept_instantiation - 90160 + 90159 to - 90160 + 90159 from @@ -21388,7 +21476,7 @@ 1 2 - 90160 + 90159 @@ -21484,22 +21572,22 @@ is_type_constraint - 36789 + 36788 concept_id - 36789 + 36788 concept_template_argument - 112705 + 112704 concept_id - 76152 + 76151 index @@ -21521,7 +21609,7 @@ 1 2 - 46335 + 46334 2 @@ -21655,7 +21743,7 @@ 1 2 - 10361 + 10360 2 @@ -21857,15 +21945,15 @@ routinetypes - 600578 + 600577 id - 600578 + 600577 return_type - 282012 + 282011 @@ -21879,7 +21967,7 @@ 1 2 - 600578 + 600577 @@ -22281,11 +22369,11 @@ ptrtomembers - 9677 + 9678 id - 9677 + 9678 type_id @@ -22307,7 +22395,7 @@ 1 2 - 9677 + 9678 @@ -22323,7 +22411,7 @@ 1 2 - 9677 + 9678 @@ -22339,7 +22427,7 @@ 1 2 - 7731 + 7732 2 @@ -22360,7 +22448,7 @@ 1 2 - 7731 + 7732 2 @@ -22598,11 +22686,11 @@ funspecifiers - 9694656 + 9693167 func_id - 4002634 + 4002387 spec_id @@ -22620,17 +22708,17 @@ 1 2 - 1526110 + 1527356 2 3 - 506256 + 504514 3 4 - 1033917 + 1034166 4 @@ -22734,8 +22822,8 @@ 124 - 15137 - 15138 + 15135 + 15136 124 @@ -22744,8 +22832,8 @@ 124 - 22777 - 22778 + 22767 + 22768 124 @@ -22756,11 +22844,11 @@ varspecifiers - 3078853 + 3078855 var_id - 2314865 + 2314866 spec_id @@ -22778,7 +22866,7 @@ 1 2 - 1654292 + 1654293 2 @@ -23424,7 +23512,7 @@ 1 2 - 641033 + 641034 2 @@ -24154,15 +24242,15 @@ attribute_arg_constant - 71584 + 71632 arg - 71584 + 71632 constant - 71584 + 71632 @@ -24176,7 +24264,7 @@ 1 2 - 71584 + 71632 @@ -24192,7 +24280,7 @@ 1 2 - 71584 + 71632 @@ -24374,7 +24462,7 @@ spec_id - 615272 + 615273 @@ -24613,15 +24701,15 @@ unspecifiedtype - 7228462 + 7228465 type_id - 7228462 + 7228465 unspecified_type_id - 3955717 + 3955719 @@ -24635,7 +24723,7 @@ 1 2 - 7228462 + 7228465 @@ -24651,12 +24739,12 @@ 1 2 - 2475279 + 2475280 2 3 - 1114435 + 1114436 3 @@ -24676,11 +24764,11 @@ member - 4182338 + 4182091 parent - 541972 + 541973 index @@ -24688,7 +24776,7 @@ child - 4177733 + 4177486 @@ -24773,7 +24861,7 @@ 2 3 - 83255 + 83256 3 @@ -24966,7 +25054,7 @@ 1 2 - 4177733 + 4177486 @@ -24982,7 +25070,7 @@ 1 2 - 4173128 + 4172881 2 @@ -24997,15 +25085,15 @@ enclosingfunction - 114976 + 114986 child - 114976 + 114986 parent - 69091 + 69097 @@ -25019,7 +25107,7 @@ 1 2 - 114976 + 114986 @@ -25035,12 +25123,12 @@ 1 2 - 37469 + 37473 2 3 - 24478 + 24480 3 @@ -25060,15 +25148,15 @@ derivations - 473788 + 473787 derivation - 473788 + 473787 sub - 452194 + 452193 index @@ -25076,7 +25164,7 @@ super - 234017 + 234016 location @@ -25094,7 +25182,7 @@ 1 2 - 473788 + 473787 @@ -25110,7 +25198,7 @@ 1 2 - 473788 + 473787 @@ -25126,7 +25214,7 @@ 1 2 - 473788 + 473787 @@ -25142,7 +25230,7 @@ 1 2 - 473788 + 473787 @@ -25158,7 +25246,7 @@ 1 2 - 435778 + 435777 2 @@ -25179,7 +25267,7 @@ 1 2 - 435778 + 435777 2 @@ -25200,7 +25288,7 @@ 1 2 - 435778 + 435777 2 @@ -25221,7 +25309,7 @@ 1 2 - 435778 + 435777 2 @@ -25381,7 +25469,7 @@ 1 2 - 224269 + 224268 2 @@ -25402,7 +25490,7 @@ 1 2 - 224269 + 224268 2 @@ -25423,7 +25511,7 @@ 1 2 - 233577 + 233576 2 @@ -25444,7 +25532,7 @@ 1 2 - 228703 + 228702 2 @@ -25578,11 +25666,11 @@ derspecifiers - 475548 + 475547 der_id - 473348 + 473347 spec_id @@ -25600,7 +25688,7 @@ 1 2 - 471148 + 471147 2 @@ -25646,11 +25734,11 @@ direct_base_offsets - 447049 + 447048 der_id - 447049 + 447048 offset @@ -25668,7 +25756,7 @@ 1 2 - 447049 + 447048 @@ -25865,19 +25953,19 @@ frienddecls - 767816 + 767814 id - 767816 + 767814 type_id - 54358 + 54357 decl_id - 100626 + 100728 location @@ -25895,7 +25983,7 @@ 1 2 - 767816 + 767814 @@ -25911,7 +25999,7 @@ 1 2 - 767816 + 767814 @@ -25927,7 +26015,7 @@ 1 2 - 767816 + 767814 @@ -26066,12 +26154,12 @@ 1 2 - 67287 + 67490 2 3 - 8258 + 8157 3 @@ -26085,13 +26173,13 @@ 24 - 127 - 7547 + 136 + 7649 - 135 + 136 191 - 710 + 609 @@ -26107,12 +26195,12 @@ 1 2 - 67287 + 67490 2 3 - 8258 + 8157 3 @@ -26126,13 +26214,13 @@ 24 - 127 - 7547 + 136 + 7649 - 135 + 136 191 - 710 + 609 @@ -26148,7 +26236,7 @@ 1 2 - 99408 + 99509 2 @@ -26215,7 +26303,7 @@ 2 - 2841 + 2844 338 @@ -26226,19 +26314,19 @@ comments - 11208571 + 11208576 id - 11208571 + 11208576 contents - 4294963 + 4294965 location - 11208571 + 11208576 @@ -26252,7 +26340,7 @@ 1 2 - 11208571 + 11208576 @@ -26268,7 +26356,7 @@ 1 2 - 11208571 + 11208576 @@ -26284,7 +26372,7 @@ 1 2 - 3920498 + 3920500 2 @@ -26310,7 +26398,7 @@ 1 2 - 3920498 + 3920500 2 @@ -26336,7 +26424,7 @@ 1 2 - 11208571 + 11208576 @@ -26352,7 +26440,7 @@ 1 2 - 11208571 + 11208576 @@ -26362,15 +26450,15 @@ commentbinding - 3905315 + 3905317 id - 3342684 + 3342686 element - 3740172 + 3740174 @@ -26384,7 +26472,7 @@ 1 2 - 3281207 + 3281208 2 @@ -26405,7 +26493,7 @@ 1 2 - 3575029 + 3575031 2 @@ -26420,15 +26508,15 @@ exprconv - 9634070 + 9634074 converted - 9633964 + 9633969 conversion - 9634070 + 9634074 @@ -26442,7 +26530,7 @@ 1 2 - 9633859 + 9633863 2 @@ -26463,7 +26551,7 @@ 1 2 - 9634070 + 9634074 @@ -26473,22 +26561,22 @@ compgenerated - 9923433 + 9923438 id - 9923433 + 9923438 synthetic_destructor_call - 1666648 + 1666623 element - 1241201 + 1241183 i @@ -26496,7 +26584,7 @@ destructor_call - 1666648 + 1666623 @@ -26510,12 +26598,12 @@ 1 2 - 826180 + 826168 2 3 - 408242 + 408236 3 @@ -26536,12 +26624,12 @@ 1 2 - 826180 + 826168 2 3 - 408242 + 408236 3 @@ -26694,7 +26782,7 @@ 1 2 - 1666648 + 1666623 @@ -26710,7 +26798,7 @@ 1 2 - 1666648 + 1666623 @@ -26720,15 +26808,15 @@ namespaces - 8615 + 8616 id - 8615 + 8616 name - 4554 + 4555 @@ -26742,7 +26830,7 @@ 1 2 - 8615 + 8616 @@ -26758,12 +26846,12 @@ 1 2 - 3723 + 3724 2 3 - 525 + 526 3 @@ -26789,7 +26877,7 @@ namespacembrs - 2110396 + 2110397 parentid @@ -26797,7 +26885,7 @@ memberid - 2110396 + 2110397 @@ -26887,7 +26975,7 @@ 1 2 - 2110396 + 2110397 @@ -26897,11 +26985,11 @@ exprparents - 19456287 + 19456296 expr_id - 19456287 + 19456296 child_index @@ -26909,7 +26997,7 @@ parent_id - 12941374 + 12941380 @@ -26923,7 +27011,7 @@ 1 2 - 19456287 + 19456296 @@ -26939,7 +27027,7 @@ 1 2 - 19456287 + 19456296 @@ -27057,12 +27145,12 @@ 1 2 - 7395561 + 7395565 2 3 - 5083213 + 5083216 3 @@ -27083,12 +27171,12 @@ 1 2 - 7395561 + 7395565 2 3 - 5083213 + 5083216 3 @@ -27103,22 +27191,22 @@ expr_isload - 6898013 + 6898025 expr_id - 6898013 + 6898025 conversionkinds - 6051175 + 6051177 expr_id - 6051175 + 6051177 kind @@ -27136,7 +27224,7 @@ 1 2 - 6051175 + 6051177 @@ -27180,8 +27268,8 @@ 1 - 5832065 - 5832066 + 5832067 + 5832068 1 @@ -27192,11 +27280,11 @@ iscall - 5790816 + 5790730 caller - 5790816 + 5790730 kind @@ -27214,7 +27302,7 @@ 1 2 - 5790816 + 5790730 @@ -27376,23 +27464,23 @@ namequalifiers - 3042586 + 3042541 id - 3042586 + 3042541 qualifiableelement - 3042586 + 3042541 qualifyingelement - 47729 + 47728 location - 554605 + 554597 @@ -27406,7 +27494,7 @@ 1 2 - 3042586 + 3042541 @@ -27422,7 +27510,7 @@ 1 2 - 3042586 + 3042541 @@ -27438,7 +27526,7 @@ 1 2 - 3042586 + 3042541 @@ -27454,7 +27542,7 @@ 1 2 - 3042586 + 3042541 @@ -27470,7 +27558,7 @@ 1 2 - 3042586 + 3042541 @@ -27486,7 +27574,7 @@ 1 2 - 3042586 + 3042541 @@ -27605,17 +27693,17 @@ 1 2 - 79413 + 79412 2 6 - 41015 + 41014 6 7 - 397795 + 397789 7 @@ -27636,17 +27724,17 @@ 1 2 - 79413 + 79412 2 6 - 41015 + 41014 6 7 - 397795 + 397789 7 @@ -27667,7 +27755,7 @@ 1 2 - 114958 + 114956 2 @@ -27677,7 +27765,7 @@ 4 5 - 414055 + 414049 5 @@ -27692,11 +27780,11 @@ varbind - 8255498 + 8255502 expr - 8255498 + 8255502 var @@ -27714,7 +27802,7 @@ 1 2 - 8255498 + 8255502 @@ -27730,7 +27818,7 @@ 1 2 - 171553 + 171554 2 @@ -27760,7 +27848,7 @@ 7 9 - 80823 + 80824 9 @@ -27785,15 +27873,15 @@ funbind - 5806089 + 5806003 expr - 5803622 + 5803536 fun - 275286 + 275282 @@ -27807,7 +27895,7 @@ 1 2 - 5801155 + 5801069 2 @@ -27828,12 +27916,12 @@ 1 2 - 181071 + 181068 2 3 - 38312 + 38311 3 @@ -27848,7 +27936,7 @@ 8 37798 - 16067 + 16066 @@ -27984,11 +28072,11 @@ expr_deallocator - 53478 + 53477 expr - 53478 + 53477 func @@ -28010,7 +28098,7 @@ 1 2 - 53478 + 53477 @@ -28026,7 +28114,7 @@ 1 2 - 53478 + 53477 @@ -28131,15 +28219,15 @@ expr_cond_guard - 897971 + 897972 cond - 897971 + 897972 guard - 897971 + 897972 @@ -28153,7 +28241,7 @@ 1 2 - 897971 + 897972 @@ -28169,7 +28257,7 @@ 1 2 - 897971 + 897972 @@ -28179,15 +28267,15 @@ expr_cond_true - 897967 + 897968 cond - 897967 + 897968 true - 897967 + 897968 @@ -28201,7 +28289,7 @@ 1 2 - 897967 + 897968 @@ -28217,7 +28305,7 @@ 1 2 - 897967 + 897968 @@ -28227,15 +28315,15 @@ expr_cond_false - 897971 + 897972 cond - 897971 + 897972 false - 897971 + 897972 @@ -28249,7 +28337,7 @@ 1 2 - 897971 + 897972 @@ -28265,7 +28353,7 @@ 1 2 - 897971 + 897972 @@ -28275,11 +28363,11 @@ values - 13541557 + 13541563 id - 13541557 + 13541563 str @@ -28297,7 +28385,7 @@ 1 2 - 13541557 + 13541563 @@ -28343,11 +28431,11 @@ valuetext - 6637698 + 6637568 id - 6637698 + 6637568 text @@ -28365,7 +28453,7 @@ 1 2 - 6637698 + 6637568 @@ -28395,7 +28483,7 @@ 7 - 593717 + 593723 27872 @@ -28406,15 +28494,15 @@ valuebind - 13649707 + 13649714 val - 13541557 + 13541563 expr - 13649707 + 13649714 @@ -28428,7 +28516,7 @@ 1 2 - 13451399 + 13451406 2 @@ -28449,7 +28537,7 @@ 1 2 - 13649707 + 13649714 @@ -28851,23 +28939,23 @@ initialisers - 2244826 + 2244830 init - 2244826 + 2244830 var - 978848 + 978850 expr - 2244826 + 2244830 location - 515723 + 515724 @@ -28881,7 +28969,7 @@ 1 2 - 2244826 + 2244830 @@ -28897,7 +28985,7 @@ 1 2 - 2244826 + 2244830 @@ -28913,7 +29001,7 @@ 1 2 - 2244826 + 2244830 @@ -28929,7 +29017,7 @@ 1 2 - 868819 + 868820 2 @@ -28955,7 +29043,7 @@ 1 2 - 868819 + 868820 2 @@ -28981,7 +29069,7 @@ 1 2 - 978840 + 978842 2 @@ -29002,7 +29090,7 @@ 1 2 - 2244826 + 2244830 @@ -29018,7 +29106,7 @@ 1 2 - 2244826 + 2244830 @@ -29034,7 +29122,7 @@ 1 2 - 2244826 + 2244830 @@ -29050,7 +29138,7 @@ 1 2 - 414196 + 414197 2 @@ -29081,7 +29169,7 @@ 1 2 - 443422 + 443423 2 @@ -29107,7 +29195,7 @@ 1 2 - 414196 + 414197 2 @@ -29143,15 +29231,15 @@ expr_ancestor - 1672611 + 1672586 exp - 1672611 + 1672586 ancestor - 837120 + 837108 @@ -29165,7 +29253,7 @@ 1 2 - 1672611 + 1672586 @@ -29186,7 +29274,7 @@ 2 3 - 810049 + 810037 3 @@ -29201,11 +29289,11 @@ exprs - 25213250 + 25213262 id - 25213250 + 25213262 kind @@ -29213,7 +29301,7 @@ location - 10586806 + 10586811 @@ -29227,7 +29315,7 @@ 1 2 - 25213250 + 25213262 @@ -29243,7 +29331,7 @@ 1 2 - 25213250 + 25213262 @@ -29421,7 +29509,7 @@ 1 2 - 8904640 + 8904644 2 @@ -29452,7 +29540,7 @@ 1 2 - 9044058 + 9044063 2 @@ -29462,7 +29550,7 @@ 3 32 - 768383 + 768384 @@ -29472,15 +29560,15 @@ expr_reuse - 844478 + 844466 reuse - 844478 + 844466 original - 844478 + 844466 value_category @@ -29498,7 +29586,7 @@ 1 2 - 844478 + 844466 @@ -29514,7 +29602,7 @@ 1 2 - 844478 + 844466 @@ -29530,7 +29618,7 @@ 1 2 - 844478 + 844466 @@ -29546,7 +29634,7 @@ 1 2 - 844478 + 844466 @@ -29598,11 +29686,11 @@ expr_types - 25213250 + 25213262 id - 25213250 + 25213262 typeid @@ -29624,7 +29712,7 @@ 1 2 - 25213250 + 25213262 @@ -29640,7 +29728,7 @@ 1 2 - 25213250 + 25213262 @@ -29906,11 +29994,11 @@ param_ref_to_this - 24952 + 24951 expr - 24952 + 24951 @@ -31253,15 +31341,15 @@ condition_decl_bind - 407684 + 407678 expr - 407684 + 407678 decl - 407684 + 407678 @@ -31275,7 +31363,7 @@ 1 2 - 407684 + 407678 @@ -31291,7 +31379,7 @@ 1 2 - 407684 + 407678 @@ -33133,11 +33221,11 @@ stmts - 6349654 + 6349665 id - 6349654 + 6349665 kind @@ -33145,7 +33233,7 @@ location - 2676166 + 2676171 @@ -33159,7 +33247,7 @@ 1 2 - 6349654 + 6349665 @@ -33175,7 +33263,7 @@ 1 2 - 6349654 + 6349665 @@ -33413,7 +33501,7 @@ 1 2 - 2218094 + 2218098 2 @@ -33444,7 +33532,7 @@ 1 2 - 2593460 + 2593464 2 @@ -33614,15 +33702,15 @@ if_then - 990318 + 990319 if_stmt - 990318 + 990319 then_id - 990318 + 990319 @@ -33636,7 +33724,7 @@ 1 2 - 990318 + 990319 @@ -33652,7 +33740,7 @@ 1 2 - 990318 + 990319 @@ -33662,15 +33750,15 @@ if_else - 435785 + 435779 if_stmt - 435785 + 435779 else_id - 435785 + 435779 @@ -33684,7 +33772,7 @@ 1 2 - 435785 + 435779 @@ -33700,7 +33788,7 @@ 1 2 - 435785 + 435779 @@ -34094,11 +34182,11 @@ switch_case - 833624 + 833612 switch_stmt - 410623 + 410617 index @@ -34106,7 +34194,7 @@ case_id - 833624 + 833612 @@ -34125,12 +34213,12 @@ 2 3 - 407748 + 407742 3 19 - 2853 + 2852 @@ -34151,12 +34239,12 @@ 2 3 - 407748 + 407742 3 19 - 2853 + 2852 @@ -34314,7 +34402,7 @@ 1 2 - 833624 + 833612 @@ -34330,7 +34418,7 @@ 1 2 - 833624 + 833612 @@ -34340,15 +34428,15 @@ switch_body - 410623 + 410617 switch_stmt - 410623 + 410617 body_id - 410623 + 410617 @@ -34362,7 +34450,7 @@ 1 2 - 410623 + 410617 @@ -34378,7 +34466,7 @@ 1 2 - 410623 + 410617 @@ -34580,11 +34668,11 @@ stmtparents - 5611093 + 5611103 id - 5611093 + 5611103 index @@ -34592,7 +34680,7 @@ parent - 2374340 + 2374344 @@ -34606,7 +34694,7 @@ 1 2 - 5611093 + 5611103 @@ -34622,7 +34710,7 @@ 1 2 - 5611093 + 5611103 @@ -34760,22 +34848,22 @@ 1 2 - 1355057 + 1355059 2 3 - 515763 + 515764 3 4 - 151046 + 151047 4 6 - 155241 + 155242 6 @@ -34801,22 +34889,22 @@ 1 2 - 1355057 + 1355059 2 3 - 515763 + 515764 3 4 - 151046 + 151047 4 6 - 155241 + 155242 6 @@ -34847,11 +34935,11 @@ stmt_decl_bind - 723619 + 723620 stmt - 713083 + 713084 num @@ -34859,7 +34947,7 @@ decl - 723619 + 723620 @@ -34873,7 +34961,7 @@ 1 2 - 705641 + 705642 2 @@ -34894,7 +34982,7 @@ 1 2 - 705641 + 705642 2 @@ -35027,7 +35115,7 @@ 1 2 - 723619 + 723620 @@ -35043,7 +35131,7 @@ 1 2 - 723619 + 723620 @@ -35053,11 +35141,11 @@ stmt_decl_entry_bind - 723619 + 723620 stmt - 713083 + 713084 num @@ -35065,7 +35153,7 @@ decl_entry - 723619 + 723620 @@ -35079,7 +35167,7 @@ 1 2 - 705641 + 705642 2 @@ -35100,7 +35188,7 @@ 1 2 - 705641 + 705642 2 @@ -35233,7 +35321,7 @@ 1 2 - 723619 + 723620 @@ -35249,7 +35337,7 @@ 1 2 - 723619 + 723620 @@ -35259,15 +35347,15 @@ blockscope - 1640354 + 1640355 block - 1640354 + 1640355 enclosing - 1423689 + 1423690 @@ -35281,7 +35369,7 @@ 1 2 - 1640354 + 1640355 @@ -35498,11 +35586,11 @@ preprocdirects - 5395212 + 5395214 id - 5395212 + 5395214 kind @@ -35510,7 +35598,7 @@ location - 5392101 + 5392103 @@ -35524,7 +35612,7 @@ 1 2 - 5395212 + 5395214 @@ -35540,7 +35628,7 @@ 1 2 - 5395212 + 5395214 @@ -35688,7 +35776,7 @@ 1 2 - 5391976 + 5391979 26 @@ -35709,7 +35797,7 @@ 1 2 - 5392101 + 5392103 @@ -35741,7 +35829,7 @@ 1 2 - 648002 + 648003 2 @@ -35777,11 +35865,11 @@ preproctrue - 438182 + 438183 branch - 438182 + 438183 @@ -35799,19 +35887,19 @@ preproctext - 4341756 + 4341758 id - 4341756 + 4341758 head - 2947934 + 2947935 body - 1679306 + 1679307 @@ -35825,7 +35913,7 @@ 1 2 - 4341756 + 4341758 @@ -35841,7 +35929,7 @@ 1 2 - 4341756 + 4341758 @@ -35857,7 +35945,7 @@ 1 2 - 2749812 + 2749813 2 @@ -35878,7 +35966,7 @@ 1 2 - 2866918 + 2866919 2 @@ -35925,7 +36013,7 @@ 1 2 - 1535693 + 1535694 2 @@ -35945,15 +36033,15 @@ includes - 317337 + 317365 id - 317337 + 317365 included - 58456 + 58461 @@ -35967,7 +36055,7 @@ 1 2 - 317337 + 317365 @@ -35983,17 +36071,17 @@ 1 2 - 28928 + 28930 2 3 - 9404 + 9405 3 4 - 4933 + 4934 4 @@ -36119,11 +36207,11 @@ link_parent - 30224787 + 30224721 element - 3843719 + 3843710 link_target @@ -36141,7 +36229,7 @@ 1 2 - 527063 + 527062 2 @@ -36151,7 +36239,7 @@ 9 10 - 3289882 + 3289875 From 16539b4667a08f53724065062f7908dfdbccb453 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 9 Feb 2026 19:30:58 +0100 Subject: [PATCH 355/433] Address review comments --- .../typeinference/FunctionOverloading.qll | 4 ++-- .../internal/typeinference/TypeInference.qll | 8 +++---- .../internal/typeinference/TypeMention.qll | 24 ++++++++++++------- .../type-inference/overloading.rs | 12 +++++----- shared/util/codeql/util/UnboundList.qll | 6 ++--- 5 files changed, 29 insertions(+), 25 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll index 326a4cf09ef9..d96fd892c73e 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll @@ -164,13 +164,13 @@ private predicate hasEquivalentPositionalSibling( | forall(TypePath path0, Type t | t = getAssocFunctionNonTypeParameterTypeAt(impl, f, pos, path0) and - path = path0.getAPrefixOrSelf() + path = path0.getAPrefix() | t = getAssocFunctionNonTypeParameterTypeAt(sibling, f1, pos, path0) ) and forall(TypePath path0, Type t | t = getAssocFunctionNonTypeParameterTypeAt(sibling, f1, pos, path0) and - path = path0.getAPrefixOrSelf() + path = path0.getAPrefix() | t = getAssocFunctionNonTypeParameterTypeAt(impl, f, pos, path0) ) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index 3e9c823c570c..e7e4bbb717cb 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -1185,7 +1185,7 @@ private module ContextTyping { private Type inferCallTypeFromContextCand(AstNode n, TypePath prefix, TypePath path) { result = inferCallType(n, false, path) and hasUnknownType(n) and - prefix = path.getAPrefixOrSelf() + prefix = path.getAPrefix() } pragma[nomagic] @@ -2704,10 +2704,9 @@ private module NonMethodResolution { // For inherent implementations of generic types, we also need to check the type being // implemented. We arbitrarily choose the first type parameter of the type being implemented // to represent this case. - f = impl.getASuccessor(_) and + f = impl.getAnAssocItem() and not impl.(Impl).hasTrait() and tp = TTypeParamTypeParameter(impl.resolveSelfTy().getTypeParam(0)) and - not f.hasSelfParam() and pos.isSelf() } @@ -2813,8 +2812,7 @@ private module NonMethodResolution { pragma[nomagic] NonMethodFunction resolveCallTargetNonBlanketCand(ImplItemNode i) { not this.hasTrait() and - result = this.getPathResolutionResolved() and - result = i.getASuccessor(_) and + result = this.getPathResolutionResolved(i) and not exists(this.resolveCallTargetViaPathResolution()) and functionResolutionDependsOnArgument(i, result, _, _) } diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index a1177e55cc9e..4865dd82ef83 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -206,6 +206,7 @@ private module MkTypeMention bool { true } @@ -31,7 +31,7 @@ mod method_call_trait_path_disambig { } } impl SecondTrait for S { - // S::method2 + // S_as_SecondTrait::method2 fn method2(&self) -> i64 { 1 } @@ -56,14 +56,14 @@ mod method_call_trait_path_disambig { let _b1 = FirstTrait::method(&s); // $ type=_b1:bool target=FirstTrait::method let _b2 = ::method(&s); // $ type=_b2:bool target=FirstTrait::method let _b3 = ::method(&Default::default()); // $ type=_b3:bool target=FirstTrait::method target=default - let _b4 = ::method2(&s); // $ type=_b4:bool target=S::method2 - let _b5 = ::method2(&Default::default()); // $ type=_b5:bool target=S::method2 target=default + let _b4 = ::method2(&s); // $ type=_b4:bool target=S_as_FirstTrait::method2 + let _b5 = ::method2(&Default::default()); // $ type=_b5:bool target=S_as_FirstTrait::method2 target=default let _n1 = SecondTrait::method(&s); // $ type=_n1:i64 target=SecondTrait::method let _n2 = ::method(&s); // $ type=_n2:i64 target=SecondTrait::method let _n3 = ::method(&Default::default()); // $ type=_n3:i64 target=SecondTrait::method target=default - let _n4 = ::method2(&s); // $ type=_n4:i64 target=S::method2 - let _n5 = ::method2(&Default::default()); // $ type=_n5:i64 target=S::method2 target=default + let _n4 = ::method2(&s); // $ type=_n4:i64 target=S_as_SecondTrait::method2 + let _n5 = ::method2(&Default::default()); // $ type=_n5:i64 target=S_as_SecondTrait::method2 target=default ::function(); // $ target=S::function ::function(); // $ target=S2::function diff --git a/shared/util/codeql/util/UnboundList.qll b/shared/util/codeql/util/UnboundList.qll index 5cd2362c14e0..5cfe06d02ee3 100644 --- a/shared/util/codeql/util/UnboundList.qll +++ b/shared/util/codeql/util/UnboundList.qll @@ -140,7 +140,7 @@ module Make Input> { * Only holds when this list is non-empty, and only returns proper prefixes. */ bindingset[this] - UnboundList getPrefix(int i) { + UnboundList getProperPrefix(int i) { exists(string regexp, int occurrenceOffset | regexp = "[0-9]+\\." | exists(this.regexpFind(regexp, i, occurrenceOffset)) and result = this.prefix(occurrenceOffset) @@ -153,13 +153,13 @@ module Make Input> { * Only holds when this list is non-empty, and only returns proper prefixes. */ bindingset[this] - UnboundList getAPrefix() { result = this.getPrefix(_) } + UnboundList getAProperPrefix() { result = this.getProperPrefix(_) } /** * Gets a prefix of this list, including the list itself. */ bindingset[this] - UnboundList getAPrefixOrSelf() { result = [this, this.getAPrefix()] } + UnboundList getAPrefix() { result = [this, this.getAProperPrefix()] } } /** Provides predicates for constructing `UnboundList`s. */ From 66119783682cf0f0c55a717278d963dd641ee452 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 9 Feb 2026 19:38:49 +0100 Subject: [PATCH 356/433] Update rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll b/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll index 03272fe922f9..5c40f623f170 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/DerefChain.qll @@ -20,7 +20,7 @@ class DerefImplItemNode extends ImplItemNode { Type resolveSelfTypeAt(TypePath path) { result = resolveImplSelfTypeAt(this, path) } /** - * Holds if the target type of the dereference implemention mentions type + * Holds if the target type of the dereference implementation mentions type * parameter `tp` at `path`. */ pragma[nomagic] From ba3fc0a769e53ba971ea4795fc01f09322d210b0 Mon Sep 17 00:00:00 2001 From: Lindsay Simpkins Date: Mon, 9 Feb 2026 16:09:37 -0500 Subject: [PATCH 357/433] update csharp MaD for System.Web.HttpUtility for tainted URIs --- csharp/ql/lib/ext/System.Web.model.yml | 4 ++++ .../library-tests/dataflow/library/FlowSummaries.expected | 4 ++++ .../dataflow/library/FlowSummariesFiltered.expected | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/csharp/ql/lib/ext/System.Web.model.yml b/csharp/ql/lib/ext/System.Web.model.yml index 6d05cdae75b5..63c539fbe5ec 100644 --- a/csharp/ql/lib/ext/System.Web.model.yml +++ b/csharp/ql/lib/ext/System.Web.model.yml @@ -29,6 +29,10 @@ extensions: - ["System.Web", "HttpUtility", False, "JavaScriptStringEncode", "(System.String)", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["System.Web", "HttpUtility", False, "JavaScriptStringEncode", "(System.String,System.Boolean)", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["System.Web", "HttpUtility", False, "ParseQueryString", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["System.Web", "HttpUtility", False, "UrlDecode", "(System.Byte[],System.Int32,System.Int32,System.Text.Encoding)", "", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["System.Web", "HttpUtility", False, "UrlDecode", "(System.Byte[],System.Text.Encoding)", "", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["System.Web", "HttpUtility", False, "UrlDecode", "(System.String)", "", "Argument[0]", "ReturnValue", "taint", "manual"] + - ["System.Web", "HttpUtility", False, "UrlDecode", "(System.String,System.Text.Encoding)", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["System.Web", "HttpUtility", False, "UrlEncode", "(System.Byte[])", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["System.Web", "HttpUtility", False, "UrlEncode", "(System.Byte[],System.Int32,System.Int32)", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["System.Web", "HttpUtility", False, "UrlEncode", "(System.String)", "", "Argument[0]", "ReturnValue", "taint", "manual"] diff --git a/csharp/ql/test/library-tests/dataflow/library/FlowSummaries.expected b/csharp/ql/test/library-tests/dataflow/library/FlowSummaries.expected index be6a2302cc35..b7ae291bf0fb 100644 --- a/csharp/ql/test/library-tests/dataflow/library/FlowSummaries.expected +++ b/csharp/ql/test/library-tests/dataflow/library/FlowSummaries.expected @@ -18591,6 +18591,10 @@ summary | System.Web;HttpUtility;JavaScriptStringEncode;(System.String,System.Boolean);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;ParseQueryString;(System.String);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;ParseQueryString;(System.String,System.Text.Encoding);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.Byte[],System.Int32,System.Int32,System.Text.Encoding);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.Byte[],System.Text.Encoding);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.String);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.String,System.Text.Encoding);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;UrlEncode;(System.Byte[]);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;UrlEncode;(System.Byte[],System.Int32,System.Int32);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;UrlEncode;(System.String);Argument[0];ReturnValue;taint;manual | diff --git a/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.expected b/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.expected index c88c901bd75b..8aff8d0e1788 100644 --- a/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.expected +++ b/csharp/ql/test/library-tests/dataflow/library/FlowSummariesFiltered.expected @@ -14340,6 +14340,10 @@ | System.Web;HttpUtility;JavaScriptStringEncode;(System.String,System.Boolean);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;ParseQueryString;(System.String);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;ParseQueryString;(System.String,System.Text.Encoding);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.Byte[],System.Int32,System.Int32,System.Text.Encoding);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.Byte[],System.Text.Encoding);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.String);Argument[0];ReturnValue;taint;manual | +| System.Web;HttpUtility;UrlDecode;(System.String,System.Text.Encoding);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;UrlEncode;(System.Byte[]);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;UrlEncode;(System.Byte[],System.Int32,System.Int32);Argument[0];ReturnValue;taint;manual | | System.Web;HttpUtility;UrlEncode;(System.String);Argument[0];ReturnValue;taint;manual | From fe10fb37e95c1bbe205158a7b3b83897c2a45062 Mon Sep 17 00:00:00 2001 From: Lindsay Simpkins Date: Mon, 9 Feb 2026 16:12:20 -0500 Subject: [PATCH 358/433] add changenote --- .../2026-02-09-update-system.web.httputility-model.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 csharp/ql/lib/change-notes/2026-02-09-update-system.web.httputility-model.md diff --git a/csharp/ql/lib/change-notes/2026-02-09-update-system.web.httputility-model.md b/csharp/ql/lib/change-notes/2026-02-09-update-system.web.httputility-model.md new file mode 100644 index 000000000000..e2efaaf6efeb --- /dev/null +++ b/csharp/ql/lib/change-notes/2026-02-09-update-system.web.httputility-model.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The model for `System.Net.HttpUtility` has been modified to better model the flow of tainted URIs. \ No newline at end of file From 677949e409f90eb6c64da50e59bba2f25b2d68d5 Mon Sep 17 00:00:00 2001 From: Lindsay Simpkins Date: Mon, 9 Feb 2026 17:16:10 -0500 Subject: [PATCH 359/433] Fix typo in change note Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../2026-02-09-update-system.web.httputility-model.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/csharp/ql/lib/change-notes/2026-02-09-update-system.web.httputility-model.md b/csharp/ql/lib/change-notes/2026-02-09-update-system.web.httputility-model.md index e2efaaf6efeb..750761fdf377 100644 --- a/csharp/ql/lib/change-notes/2026-02-09-update-system.web.httputility-model.md +++ b/csharp/ql/lib/change-notes/2026-02-09-update-system.web.httputility-model.md @@ -1,4 +1,4 @@ --- category: minorAnalysis --- -* The model for `System.Net.HttpUtility` has been modified to better model the flow of tainted URIs. \ No newline at end of file +* The model for `System.Web.HttpUtility` has been modified to better model the flow of tainted URIs. \ No newline at end of file From e172cb3f7a846a57f20f71847bd701133f756f70 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Feb 2026 03:15:54 +0000 Subject: [PATCH 360/433] Bump the extractor-dependencies group in /go/extractor with 2 updates Bumps the extractor-dependencies group in /go/extractor with 2 updates: [golang.org/x/mod](https://github.com/golang/mod) and [golang.org/x/tools](https://github.com/golang/tools). Updates `golang.org/x/mod` from 0.32.0 to 0.33.0 - [Commits](https://github.com/golang/mod/compare/v0.32.0...v0.33.0) Updates `golang.org/x/tools` from 0.41.0 to 0.42.0 - [Release notes](https://github.com/golang/tools/releases) - [Commits](https://github.com/golang/tools/compare/v0.41.0...v0.42.0) --- updated-dependencies: - dependency-name: golang.org/x/mod dependency-version: 0.33.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: extractor-dependencies - dependency-name: golang.org/x/tools dependency-version: 0.42.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: extractor-dependencies ... Signed-off-by: dependabot[bot] --- go/extractor/go.mod | 7 ++++--- go/extractor/go.sum | 9 +++++---- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/go/extractor/go.mod b/go/extractor/go.mod index c88573bb8c2b..a94af1a7e9ba 100644 --- a/go/extractor/go.mod +++ b/go/extractor/go.mod @@ -9,14 +9,15 @@ toolchain go1.25.0 // when adding or removing dependencies, run // bazel mod tidy require ( - golang.org/x/mod v0.32.0 - golang.org/x/tools v0.41.0 + golang.org/x/mod v0.33.0 + golang.org/x/tools v0.42.0 ) +require github.com/stretchr/testify v1.11.1 + require ( github.com/davecgh/go-spew v1.1.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/stretchr/testify v1.11.1 // indirect golang.org/x/sync v0.19.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go/extractor/go.sum b/go/extractor/go.sum index 838db152fd67..ade080a41ad3 100644 --- a/go/extractor/go.sum +++ b/go/extractor/go.sum @@ -6,12 +6,13 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= -golang.org/x/mod v0.32.0 h1:9F4d3PHLljb6x//jOyokMv3eX+YDeepZSEo3mFJy93c= -golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU= +golang.org/x/mod v0.33.0 h1:tHFzIWbBifEmbwtGz65eaWyGiGZatSrT9prnU8DbVL8= +golang.org/x/mod v0.33.0/go.mod h1:swjeQEj+6r7fODbD2cqrnje9PnziFuw4bmLbBZFrQ5w= golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4= golang.org/x/sync v0.19.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= -golang.org/x/tools v0.41.0 h1:a9b8iMweWG+S0OBnlU36rzLp20z1Rp10w+IY2czHTQc= -golang.org/x/tools v0.41.0/go.mod h1:XSY6eDqxVNiYgezAVqqCeihT4j1U2CCsqvH3WhQpnlg= +golang.org/x/tools v0.42.0 h1:uNgphsn75Tdz5Ji2q36v/nsFSfR/9BRFvqhGBaJGd5k= +golang.org/x/tools v0.42.0/go.mod h1:Ma6lCIwGZvHK6XtgbswSoWroEkhugApmsXyrUmBhfr0= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= From 0cd5366034a989cb1d364f1715539ee5bcbf154c Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Thu, 5 Feb 2026 13:15:22 +0100 Subject: [PATCH 361/433] Rust: Add type inference test for associated type acces on a type parameter of an impl block --- .../type-inference/associated_types.rs | 13 + .../type-inference/type-inference.expected | 1010 +++++++++-------- 2 files changed, 528 insertions(+), 495 deletions(-) diff --git a/rust/ql/test/library-tests/type-inference/associated_types.rs b/rust/ql/test/library-tests/type-inference/associated_types.rs index 1d8657b29a0e..567d4449150e 100644 --- a/rust/ql/test/library-tests/type-inference/associated_types.rs +++ b/rust/ql/test/library-tests/type-inference/associated_types.rs @@ -260,6 +260,16 @@ mod type_param_access_associated_type { ) } + // Associated type accessed on a type parameter of an impl block + impl Wrapper + where + TI: GetSet, + { + fn extract(&self) -> TI::Output { + self.0.get() // $ fieldof=Wrapper target=GetSet::get + } + } + pub fn test() { let _o1 = tp_with_as(S); // $ target=tp_with_as MISSING: type=_o1:S3 let _o2 = tp_without_as(S); // $ target=tp_without_as MISSING: type=_o2:S3 @@ -267,6 +277,9 @@ mod type_param_access_associated_type { _o3, // $ MISSING: type=_o3:S3 _o4, // $ MISSING: type=_o4:bool ) = tp_assoc_from_supertrait(S); // $ target=tp_assoc_from_supertrait + + let w = Wrapper(S); + let _extracted = w.extract(); // $ target=extract MISSING: type=_extracted:S3 } } diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 1e8f76409fb8..f4bfb48031c2 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -119,189 +119,195 @@ inferCertainType | associated_types.rs:257:9:260:9 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | | associated_types.rs:258:13:258:17 | thing | | associated_types.rs:256:33:256:45 | T | | associated_types.rs:259:13:259:17 | thing | | associated_types.rs:256:33:256:45 | T | -| associated_types.rs:263:19:270:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:266:13:269:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:269:13:269:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:277:26:277:26 | x | | associated_types.rs:277:23:277:23 | T | -| associated_types.rs:280:5:282:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:281:18:281:18 | x | | associated_types.rs:277:23:277:23 | T | -| associated_types.rs:285:24:285:24 | x | | associated_types.rs:285:21:285:21 | T | -| associated_types.rs:288:5:292:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:289:19:289:19 | x | | associated_types.rs:285:21:285:21 | T | -| associated_types.rs:290:23:290:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:290:24:290:24 | x | | associated_types.rs:285:21:285:21 | T | -| associated_types.rs:291:18:291:18 | x | | associated_types.rs:285:21:285:21 | T | -| associated_types.rs:295:23:295:23 | x | | associated_types.rs:295:20:295:20 | T | -| associated_types.rs:299:5:303:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:300:19:300:19 | x | | associated_types.rs:295:20:295:20 | T | -| associated_types.rs:301:23:301:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:301:24:301:24 | x | | associated_types.rs:295:20:295:20 | T | -| associated_types.rs:302:18:302:18 | x | | associated_types.rs:295:20:295:20 | T | -| associated_types.rs:309:17:309:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:309:17:309:21 | SelfParam | TRef | associated_types.rs:305:5:310:5 | Self [trait AssocNameClash] | -| associated_types.rs:312:34:312:34 | x | | associated_types.rs:312:31:312:31 | T | -| associated_types.rs:316:5:319:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:317:18:317:18 | x | | associated_types.rs:312:31:312:31 | T | -| associated_types.rs:318:18:318:18 | x | | associated_types.rs:312:31:312:31 | T | -| associated_types.rs:329:19:329:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:329:19:329:23 | SelfParam | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:329:26:329:26 | a | | associated_types.rs:329:16:329:16 | A | -| associated_types.rs:332:23:332:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:332:23:332:27 | SelfParam | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:332:30:332:30 | a | | associated_types.rs:332:20:332:20 | A | -| associated_types.rs:332:36:332:36 | b | | associated_types.rs:332:20:332:20 | A | -| associated_types.rs:332:76:335:9 | { ... } | | associated_types.rs:326:9:326:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:333:13:333:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:333:13:333:16 | self | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:333:22:333:22 | a | | associated_types.rs:332:20:332:20 | A | -| associated_types.rs:334:13:334:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:334:13:334:16 | self | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:334:22:334:22 | b | | associated_types.rs:332:20:332:20 | A | -| associated_types.rs:343:19:343:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:343:19:343:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:343:26:343:26 | a | | associated_types.rs:343:16:343:16 | A | -| associated_types.rs:343:46:345:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:343:46:345:9 | { ... } | A | associated_types.rs:343:16:343:16 | A | -| associated_types.rs:344:21:344:21 | a | | associated_types.rs:343:16:343:16 | A | -| associated_types.rs:348:19:355:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:351:25:351:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:354:29:354:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:354:35:354:39 | false | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:366:21:366:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:366:21:366:25 | SelfParam | TRef | associated_types.rs:361:5:371:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:368:20:368:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:368:20:368:24 | SelfParam | TRef | associated_types.rs:361:5:371:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:370:20:370:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:370:20:370:24 | SelfParam | TRef | associated_types.rs:361:5:371:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:377:21:377:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:377:21:377:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:377:34:379:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:268:20:268:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:268:20:268:24 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:268:20:268:24 | SelfParam | TRef.A | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:269:13:269:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:269:13:269:16 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:269:13:269:16 | self | TRef.A | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:273:19:283:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:276:13:279:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:279:13:279:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:290:26:290:26 | x | | associated_types.rs:290:23:290:23 | T | +| associated_types.rs:293:5:295:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:294:18:294:18 | x | | associated_types.rs:290:23:290:23 | T | +| associated_types.rs:298:24:298:24 | x | | associated_types.rs:298:21:298:21 | T | +| associated_types.rs:301:5:305:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:302:19:302:19 | x | | associated_types.rs:298:21:298:21 | T | +| associated_types.rs:303:23:303:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:303:24:303:24 | x | | associated_types.rs:298:21:298:21 | T | +| associated_types.rs:304:18:304:18 | x | | associated_types.rs:298:21:298:21 | T | +| associated_types.rs:308:23:308:23 | x | | associated_types.rs:308:20:308:20 | T | +| associated_types.rs:312:5:316:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:313:19:313:19 | x | | associated_types.rs:308:20:308:20 | T | +| associated_types.rs:314:23:314:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:314:24:314:24 | x | | associated_types.rs:308:20:308:20 | T | +| associated_types.rs:315:18:315:18 | x | | associated_types.rs:308:20:308:20 | T | +| associated_types.rs:322:17:322:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:322:17:322:21 | SelfParam | TRef | associated_types.rs:318:5:323:5 | Self [trait AssocNameClash] | +| associated_types.rs:325:34:325:34 | x | | associated_types.rs:325:31:325:31 | T | +| associated_types.rs:329:5:332:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:330:18:330:18 | x | | associated_types.rs:325:31:325:31 | T | +| associated_types.rs:331:18:331:18 | x | | associated_types.rs:325:31:325:31 | T | +| associated_types.rs:342:19:342:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:342:19:342:23 | SelfParam | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:342:26:342:26 | a | | associated_types.rs:342:16:342:16 | A | +| associated_types.rs:345:23:345:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:345:23:345:27 | SelfParam | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:345:30:345:30 | a | | associated_types.rs:345:20:345:20 | A | +| associated_types.rs:345:36:345:36 | b | | associated_types.rs:345:20:345:20 | A | +| associated_types.rs:345:76:348:9 | { ... } | | associated_types.rs:339:9:339:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:346:13:346:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:346:13:346:16 | self | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:346:22:346:22 | a | | associated_types.rs:345:20:345:20 | A | +| associated_types.rs:347:13:347:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:347:13:347:16 | self | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:347:22:347:22 | b | | associated_types.rs:345:20:345:20 | A | +| associated_types.rs:356:19:356:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:356:19:356:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:356:26:356:26 | a | | associated_types.rs:356:16:356:16 | A | +| associated_types.rs:356:46:358:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:356:46:358:9 | { ... } | A | associated_types.rs:356:16:356:16 | A | +| associated_types.rs:357:21:357:21 | a | | associated_types.rs:356:16:356:16 | A | +| associated_types.rs:361:19:368:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:364:25:364:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:367:29:367:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:367:35:367:39 | false | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:379:21:379:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:379:21:379:25 | SelfParam | TRef | associated_types.rs:374:5:384:5 | Self [trait TraitMultipleAssoc] | | associated_types.rs:381:20:381:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:381:20:381:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:381:43:383:9 | { ... } | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:385:20:385:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:385:20:385:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:385:43:387:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:390:19:394:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:402:24:402:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:402:24:402:28 | SelfParam | TRef | associated_types.rs:400:5:403:5 | Self [trait Subtrait] | -| associated_types.rs:411:23:411:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:411:23:411:27 | SelfParam | TRef | associated_types.rs:405:5:415:5 | Self [trait Subtrait2] | -| associated_types.rs:411:30:411:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:411:48:411:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:411:66:414:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:412:13:412:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:412:13:412:16 | self | TRef | associated_types.rs:405:5:415:5 | Self [trait Subtrait2] | -| associated_types.rs:412:22:412:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:413:13:413:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:413:13:413:16 | self | TRef | associated_types.rs:405:5:415:5 | Self [trait Subtrait2] | -| associated_types.rs:413:22:413:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:422:16:422:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:422:16:422:20 | SelfParam | TRef | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:422:16:422:20 | SelfParam | TRef.T | associated_types.rs:419:10:419:16 | T | -| associated_types.rs:422:39:424:9 | { ... } | | associated_types.rs:419:10:419:16 | T | -| associated_types.rs:423:13:423:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:423:13:423:16 | self | TRef | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:423:13:423:16 | self | TRef.T | associated_types.rs:419:10:419:16 | T | -| associated_types.rs:426:16:426:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:426:16:426:20 | SelfParam | TRef | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:426:16:426:20 | SelfParam | TRef.T | associated_types.rs:419:10:419:16 | T | -| associated_types.rs:426:23:426:30 | _content | | associated_types.rs:419:10:419:16 | T | -| associated_types.rs:426:47:428:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:427:22:427:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:427:22:427:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:427:22:427:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:427:22:427:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:433:24:433:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:433:24:433:28 | SelfParam | TRef | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:433:24:433:28 | SelfParam | TRef.T | associated_types.rs:431:10:431:16 | T | -| associated_types.rs:433:47:435:9 | { ... } | | associated_types.rs:431:10:431:16 | T | -| associated_types.rs:434:15:434:18 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:434:15:434:18 | self | TRef | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:434:15:434:18 | self | TRef.T | associated_types.rs:431:10:431:16 | T | -| associated_types.rs:440:24:440:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:440:24:440:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:440:24:440:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:440:47:443:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:448:24:448:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:448:24:448:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:448:24:448:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | -| associated_types.rs:448:47:450:9 | { ... } | | {EXTERNAL LOCATION} | char | -| associated_types.rs:453:33:453:36 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:453:33:453:36 | item | TRef | associated_types.rs:453:20:453:30 | T | -| associated_types.rs:454:9:454:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:454:9:454:12 | item | TRef | associated_types.rs:453:20:453:30 | T | -| associated_types.rs:457:35:457:38 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:457:35:457:38 | item | TRef | associated_types.rs:457:21:457:32 | T | -| associated_types.rs:457:90:460:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:458:9:458:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:458:9:458:12 | item | TRef | associated_types.rs:457:21:457:32 | T | -| associated_types.rs:459:9:459:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:459:9:459:12 | item | TRef | associated_types.rs:457:21:457:32 | T | -| associated_types.rs:462:19:471:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:463:28:463:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:466:28:466:31 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:467:37:467:42 | &item2 | | {EXTERNAL LOCATION} | & | -| associated_types.rs:469:29:469:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:470:29:470:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:484:16:484:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:484:16:484:20 | SelfParam | TRef | associated_types.rs:477:5:477:20 | ST | -| associated_types.rs:484:16:484:20 | SelfParam | TRef.T | associated_types.rs:479:10:479:21 | Output | -| associated_types.rs:484:39:486:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:484:39:486:9 | { ... } | E | associated_types.rs:479:10:479:21 | Output | -| associated_types.rs:484:39:486:9 | { ... } | T | associated_types.rs:479:10:479:21 | Output | -| associated_types.rs:485:16:485:19 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:485:16:485:19 | self | TRef | associated_types.rs:477:5:477:20 | ST | -| associated_types.rs:485:16:485:19 | self | TRef.T | associated_types.rs:479:10:479:21 | Output | -| associated_types.rs:489:19:491:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:490:21:490:24 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:498:31:498:31 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:498:31:498:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:498:31:498:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:498:61:506:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:500:21:500:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:500:21:500:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:500:21:500:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:503:19:503:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:503:19:503:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:503:19:503:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:505:23:505:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:505:23:505:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:505:23:505:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:508:36:508:36 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:508:36:508:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:508:36:508:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:508:36:508:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:508:92:514:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:509:21:509:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:509:21:509:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:509:21:509:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:509:21:509:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:510:19:510:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:510:19:510:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:510:19:510:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:510:19:510:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:511:23:511:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:511:23:511:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:511:23:511:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:511:23:511:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:512:21:512:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:512:21:512:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:512:21:512:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:512:21:512:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:513:19:513:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:513:19:513:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:513:19:513:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:513:19:513:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:517:15:526:1 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:518:5:518:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:519:5:519:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:520:5:520:59 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:521:5:521:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:522:5:522:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:523:5:523:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:524:5:524:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:525:5:525:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:381:20:381:24 | SelfParam | TRef | associated_types.rs:374:5:384:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:383:20:383:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:383:20:383:24 | SelfParam | TRef | associated_types.rs:374:5:384:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:390:21:390:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:390:21:390:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:390:34:392:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:394:20:394:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:394:20:394:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:394:43:396:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:398:20:398:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:398:20:398:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:398:43:400:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:403:19:407:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:415:24:415:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:415:24:415:28 | SelfParam | TRef | associated_types.rs:413:5:416:5 | Self [trait Subtrait] | +| associated_types.rs:424:23:424:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:424:23:424:27 | SelfParam | TRef | associated_types.rs:418:5:428:5 | Self [trait Subtrait2] | +| associated_types.rs:424:30:424:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:424:48:424:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:424:66:427:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:425:13:425:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:425:13:425:16 | self | TRef | associated_types.rs:418:5:428:5 | Self [trait Subtrait2] | +| associated_types.rs:425:22:425:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:426:13:426:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:426:13:426:16 | self | TRef | associated_types.rs:418:5:428:5 | Self [trait Subtrait2] | +| associated_types.rs:426:22:426:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:435:16:435:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:435:16:435:20 | SelfParam | TRef | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:435:16:435:20 | SelfParam | TRef.T | associated_types.rs:432:10:432:16 | T | +| associated_types.rs:435:39:437:9 | { ... } | | associated_types.rs:432:10:432:16 | T | +| associated_types.rs:436:13:436:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:436:13:436:16 | self | TRef | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:436:13:436:16 | self | TRef.T | associated_types.rs:432:10:432:16 | T | +| associated_types.rs:439:16:439:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:439:16:439:20 | SelfParam | TRef | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:439:16:439:20 | SelfParam | TRef.T | associated_types.rs:432:10:432:16 | T | +| associated_types.rs:439:23:439:30 | _content | | associated_types.rs:432:10:432:16 | T | +| associated_types.rs:439:47:441:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:440:22:440:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:440:22:440:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:440:22:440:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:440:22:440:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:446:24:446:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:446:24:446:28 | SelfParam | TRef | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:446:24:446:28 | SelfParam | TRef.T | associated_types.rs:444:10:444:16 | T | +| associated_types.rs:446:47:448:9 | { ... } | | associated_types.rs:444:10:444:16 | T | +| associated_types.rs:447:15:447:18 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:447:15:447:18 | self | TRef | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:447:15:447:18 | self | TRef.T | associated_types.rs:444:10:444:16 | T | +| associated_types.rs:453:24:453:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:453:24:453:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:453:24:453:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:453:47:456:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:461:24:461:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:461:24:461:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:461:24:461:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:461:47:463:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:466:33:466:36 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:466:33:466:36 | item | TRef | associated_types.rs:466:20:466:30 | T | +| associated_types.rs:467:9:467:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:467:9:467:12 | item | TRef | associated_types.rs:466:20:466:30 | T | +| associated_types.rs:470:35:470:38 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:470:35:470:38 | item | TRef | associated_types.rs:470:21:470:32 | T | +| associated_types.rs:470:90:473:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:471:9:471:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:471:9:471:12 | item | TRef | associated_types.rs:470:21:470:32 | T | +| associated_types.rs:472:9:472:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:472:9:472:12 | item | TRef | associated_types.rs:470:21:470:32 | T | +| associated_types.rs:475:19:484:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:476:28:476:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:479:28:479:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:480:37:480:42 | &item2 | | {EXTERNAL LOCATION} | & | +| associated_types.rs:482:29:482:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:483:29:483:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:497:16:497:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:497:16:497:20 | SelfParam | TRef | associated_types.rs:490:5:490:20 | ST | +| associated_types.rs:497:16:497:20 | SelfParam | TRef.T | associated_types.rs:492:10:492:21 | Output | +| associated_types.rs:497:39:499:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:497:39:499:9 | { ... } | E | associated_types.rs:492:10:492:21 | Output | +| associated_types.rs:497:39:499:9 | { ... } | T | associated_types.rs:492:10:492:21 | Output | +| associated_types.rs:498:16:498:19 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:498:16:498:19 | self | TRef | associated_types.rs:490:5:490:20 | ST | +| associated_types.rs:498:16:498:19 | self | TRef.T | associated_types.rs:492:10:492:21 | Output | +| associated_types.rs:502:19:504:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:503:21:503:24 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:511:31:511:31 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:511:31:511:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:511:31:511:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:511:61:519:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:513:21:513:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:513:21:513:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:513:21:513:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:516:19:516:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:516:19:516:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:516:19:516:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:518:23:518:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:518:23:518:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:518:23:518:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:521:36:521:36 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:521:36:521:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:521:36:521:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:521:36:521:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:521:92:527:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:522:21:522:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:522:21:522:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:522:21:522:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:522:21:522:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:523:19:523:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:523:19:523:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:523:19:523:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:523:19:523:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:524:23:524:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:524:23:524:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:524:23:524:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:524:23:524:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:525:21:525:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:525:21:525:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:525:21:525:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:525:21:525:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:526:19:526:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:526:19:526:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:526:19:526:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:526:19:526:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:530:15:539:1 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:531:5:531:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:532:5:532:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:533:5:533:59 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:534:5:534:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:535:5:535:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:536:5:536:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:537:5:537:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:538:5:538:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:15:18:15:22 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:15:18:15:22 | SelfParam | TRef | blanket_impl.rs:9:5:10:14 | S2 | | blanket_impl.rs:15:42:17:9 | { ... } | | {EXTERNAL LOCATION} | & | @@ -5080,320 +5086,334 @@ inferType | associated_types.rs:257:9:260:9 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | | associated_types.rs:258:13:258:17 | thing | | associated_types.rs:256:33:256:45 | T | | associated_types.rs:259:13:259:17 | thing | | associated_types.rs:256:33:256:45 | T | -| associated_types.rs:263:19:270:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:264:30:264:30 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:265:33:265:33 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:266:13:269:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:269:13:269:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:269:38:269:38 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:277:26:277:26 | x | | associated_types.rs:277:23:277:23 | T | -| associated_types.rs:280:5:282:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:281:13:281:14 | _a | | {EXTERNAL LOCATION} | char | -| associated_types.rs:281:18:281:18 | x | | associated_types.rs:277:23:277:23 | T | -| associated_types.rs:281:18:281:24 | x.get() | | {EXTERNAL LOCATION} | char | -| associated_types.rs:285:24:285:24 | x | | associated_types.rs:285:21:285:21 | T | -| associated_types.rs:288:5:292:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:289:13:289:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:289:19:289:19 | x | | associated_types.rs:285:21:285:21 | T | -| associated_types.rs:289:19:289:25 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:290:13:290:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:290:19:290:25 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:290:23:290:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:290:23:290:24 | &x | TRef | associated_types.rs:285:21:285:21 | T | -| associated_types.rs:290:24:290:24 | x | | associated_types.rs:285:21:285:21 | T | -| associated_types.rs:291:13:291:14 | _b | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:291:18:291:18 | x | | associated_types.rs:285:21:285:21 | T | -| associated_types.rs:291:18:291:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:295:23:295:23 | x | | associated_types.rs:295:20:295:20 | T | -| associated_types.rs:299:5:303:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:300:13:300:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:300:19:300:19 | x | | associated_types.rs:295:20:295:20 | T | -| associated_types.rs:300:19:300:25 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:301:13:301:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:301:19:301:25 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:301:23:301:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:301:23:301:24 | &x | TRef | associated_types.rs:295:20:295:20 | T | -| associated_types.rs:301:24:301:24 | x | | associated_types.rs:295:20:295:20 | T | -| associated_types.rs:302:13:302:14 | _b | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:302:18:302:18 | x | | associated_types.rs:295:20:295:20 | T | -| associated_types.rs:302:18:302:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:309:17:309:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:309:17:309:21 | SelfParam | TRef | associated_types.rs:305:5:310:5 | Self [trait AssocNameClash] | -| associated_types.rs:312:34:312:34 | x | | associated_types.rs:312:31:312:31 | T | -| associated_types.rs:316:5:319:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:317:13:317:14 | _a | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:317:18:317:18 | x | | associated_types.rs:312:31:312:31 | T | -| associated_types.rs:317:18:317:24 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:318:13:318:14 | _b | | {EXTERNAL LOCATION} | char | -| associated_types.rs:318:18:318:18 | x | | associated_types.rs:312:31:312:31 | T | -| associated_types.rs:318:18:318:25 | x.get2() | | {EXTERNAL LOCATION} | char | -| associated_types.rs:329:19:329:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:329:19:329:23 | SelfParam | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:329:26:329:26 | a | | associated_types.rs:329:16:329:16 | A | -| associated_types.rs:332:23:332:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:332:23:332:27 | SelfParam | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:332:30:332:30 | a | | associated_types.rs:332:20:332:20 | A | -| associated_types.rs:332:36:332:36 | b | | associated_types.rs:332:20:332:20 | A | -| associated_types.rs:332:76:335:9 | { ... } | | associated_types.rs:326:9:326:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:333:13:333:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:333:13:333:16 | self | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:333:13:333:23 | self.put(...) | | associated_types.rs:326:9:326:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:333:22:333:22 | a | | associated_types.rs:332:20:332:20 | A | -| associated_types.rs:334:13:334:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:334:13:334:16 | self | TRef | associated_types.rs:325:5:336:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:334:13:334:23 | self.put(...) | | associated_types.rs:326:9:326:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:334:22:334:22 | b | | associated_types.rs:332:20:332:20 | A | -| associated_types.rs:343:19:343:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:343:19:343:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:343:26:343:26 | a | | associated_types.rs:343:16:343:16 | A | -| associated_types.rs:343:46:345:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:343:46:345:9 | { ... } | A | associated_types.rs:343:16:343:16 | A | -| associated_types.rs:344:13:344:22 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:344:13:344:22 | Wrapper(...) | A | associated_types.rs:343:16:343:16 | A | -| associated_types.rs:344:21:344:21 | a | | associated_types.rs:343:16:343:16 | A | -| associated_types.rs:348:19:355:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:349:13:349:13 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:349:17:349:17 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:351:13:351:15 | _g1 | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:351:13:351:15 | _g1 | A | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:351:19:351:19 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:351:19:351:29 | s.put(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:351:19:351:29 | s.put(...) | A | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:351:25:351:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:354:13:354:15 | _g2 | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:354:19:354:19 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:354:19:354:40 | s.put_two(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:354:29:354:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:354:35:354:39 | false | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:366:21:366:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:366:21:366:25 | SelfParam | TRef | associated_types.rs:361:5:371:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:368:20:368:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:368:20:368:24 | SelfParam | TRef | associated_types.rs:361:5:371:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:370:20:370:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:370:20:370:24 | SelfParam | TRef | associated_types.rs:361:5:371:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:377:21:377:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:377:21:377:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:377:34:379:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:378:13:378:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:268:20:268:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:268:20:268:24 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:268:20:268:24 | SelfParam | TRef.A | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:269:13:269:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:269:13:269:16 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:269:13:269:16 | self | TRef.A | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:269:13:269:18 | self.0 | | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:273:19:283:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:274:30:274:30 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:275:33:275:33 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:276:13:279:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:279:13:279:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:279:38:279:38 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:281:13:281:13 | w | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:281:13:281:13 | w | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:281:17:281:26 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:281:17:281:26 | Wrapper(...) | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:281:25:281:25 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:282:26:282:26 | w | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:282:26:282:26 | w | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:290:26:290:26 | x | | associated_types.rs:290:23:290:23 | T | +| associated_types.rs:293:5:295:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:294:13:294:14 | _a | | {EXTERNAL LOCATION} | char | +| associated_types.rs:294:18:294:18 | x | | associated_types.rs:290:23:290:23 | T | +| associated_types.rs:294:18:294:24 | x.get() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:298:24:298:24 | x | | associated_types.rs:298:21:298:21 | T | +| associated_types.rs:301:5:305:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:302:13:302:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:302:19:302:19 | x | | associated_types.rs:298:21:298:21 | T | +| associated_types.rs:302:19:302:25 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:303:13:303:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:303:19:303:25 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:303:23:303:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:303:23:303:24 | &x | TRef | associated_types.rs:298:21:298:21 | T | +| associated_types.rs:303:24:303:24 | x | | associated_types.rs:298:21:298:21 | T | +| associated_types.rs:304:13:304:14 | _b | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:304:18:304:18 | x | | associated_types.rs:298:21:298:21 | T | +| associated_types.rs:304:18:304:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:308:23:308:23 | x | | associated_types.rs:308:20:308:20 | T | +| associated_types.rs:312:5:316:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:313:13:313:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:313:19:313:19 | x | | associated_types.rs:308:20:308:20 | T | +| associated_types.rs:313:19:313:25 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:314:13:314:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:314:19:314:25 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:314:23:314:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:314:23:314:24 | &x | TRef | associated_types.rs:308:20:308:20 | T | +| associated_types.rs:314:24:314:24 | x | | associated_types.rs:308:20:308:20 | T | +| associated_types.rs:315:13:315:14 | _b | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:315:18:315:18 | x | | associated_types.rs:308:20:308:20 | T | +| associated_types.rs:315:18:315:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:322:17:322:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:322:17:322:21 | SelfParam | TRef | associated_types.rs:318:5:323:5 | Self [trait AssocNameClash] | +| associated_types.rs:325:34:325:34 | x | | associated_types.rs:325:31:325:31 | T | +| associated_types.rs:329:5:332:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:330:13:330:14 | _a | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:330:18:330:18 | x | | associated_types.rs:325:31:325:31 | T | +| associated_types.rs:330:18:330:24 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:331:13:331:14 | _b | | {EXTERNAL LOCATION} | char | +| associated_types.rs:331:18:331:18 | x | | associated_types.rs:325:31:325:31 | T | +| associated_types.rs:331:18:331:25 | x.get2() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:342:19:342:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:342:19:342:23 | SelfParam | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:342:26:342:26 | a | | associated_types.rs:342:16:342:16 | A | +| associated_types.rs:345:23:345:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:345:23:345:27 | SelfParam | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:345:30:345:30 | a | | associated_types.rs:345:20:345:20 | A | +| associated_types.rs:345:36:345:36 | b | | associated_types.rs:345:20:345:20 | A | +| associated_types.rs:345:76:348:9 | { ... } | | associated_types.rs:339:9:339:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:346:13:346:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:346:13:346:16 | self | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:346:13:346:23 | self.put(...) | | associated_types.rs:339:9:339:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:346:22:346:22 | a | | associated_types.rs:345:20:345:20 | A | +| associated_types.rs:347:13:347:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:347:13:347:16 | self | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:347:13:347:23 | self.put(...) | | associated_types.rs:339:9:339:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:347:22:347:22 | b | | associated_types.rs:345:20:345:20 | A | +| associated_types.rs:356:19:356:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:356:19:356:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:356:26:356:26 | a | | associated_types.rs:356:16:356:16 | A | +| associated_types.rs:356:46:358:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:356:46:358:9 | { ... } | A | associated_types.rs:356:16:356:16 | A | +| associated_types.rs:357:13:357:22 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:357:13:357:22 | Wrapper(...) | A | associated_types.rs:356:16:356:16 | A | +| associated_types.rs:357:21:357:21 | a | | associated_types.rs:356:16:356:16 | A | +| associated_types.rs:361:19:368:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:362:13:362:13 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:362:17:362:17 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:364:13:364:15 | _g1 | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:364:13:364:15 | _g1 | A | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:364:19:364:19 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:364:19:364:29 | s.put(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:364:19:364:29 | s.put(...) | A | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:364:25:364:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:367:13:367:15 | _g2 | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:367:19:367:19 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:367:19:367:40 | s.put_two(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:367:29:367:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:367:35:367:39 | false | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:379:21:379:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:379:21:379:25 | SelfParam | TRef | associated_types.rs:374:5:384:5 | Self [trait TraitMultipleAssoc] | | associated_types.rs:381:20:381:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:381:20:381:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:381:43:383:9 | { ... } | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:382:13:382:13 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:385:20:385:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:385:20:385:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:385:43:387:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:386:13:386:14 | S2 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:390:19:394:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:391:13:391:23 | _assoc_zero | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:391:27:391:28 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:391:27:391:39 | S3.get_zero() | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:392:13:392:22 | _assoc_one | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:392:26:392:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:392:26:392:37 | S3.get_one() | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:393:13:393:22 | _assoc_two | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:393:26:393:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:393:26:393:37 | S3.get_two() | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:402:24:402:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:402:24:402:28 | SelfParam | TRef | associated_types.rs:400:5:403:5 | Self [trait Subtrait] | -| associated_types.rs:411:23:411:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:411:23:411:27 | SelfParam | TRef | associated_types.rs:405:5:415:5 | Self [trait Subtrait2] | -| associated_types.rs:411:30:411:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:411:48:411:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:411:66:414:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:412:13:412:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:412:13:412:16 | self | TRef | associated_types.rs:405:5:415:5 | Self [trait Subtrait2] | -| associated_types.rs:412:13:412:24 | self.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:412:22:412:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:413:13:413:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:413:13:413:16 | self | TRef | associated_types.rs:405:5:415:5 | Self [trait Subtrait2] | -| associated_types.rs:413:13:413:24 | self.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:413:22:413:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:422:16:422:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:422:16:422:20 | SelfParam | TRef | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:422:16:422:20 | SelfParam | TRef.T | associated_types.rs:419:10:419:16 | T | -| associated_types.rs:422:39:424:9 | { ... } | | associated_types.rs:419:10:419:16 | T | -| associated_types.rs:423:13:423:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:423:13:423:16 | self | TRef | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:423:13:423:16 | self | TRef.T | associated_types.rs:419:10:419:16 | T | -| associated_types.rs:423:13:423:18 | self.0 | | associated_types.rs:419:10:419:16 | T | -| associated_types.rs:426:16:426:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:426:16:426:20 | SelfParam | TRef | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:426:16:426:20 | SelfParam | TRef.T | associated_types.rs:419:10:419:16 | T | -| associated_types.rs:426:23:426:30 | _content | | associated_types.rs:419:10:419:16 | T | -| associated_types.rs:426:47:428:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:427:13:427:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:427:22:427:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:427:22:427:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:427:22:427:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:427:22:427:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:427:22:427:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:433:24:433:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:433:24:433:28 | SelfParam | TRef | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:433:24:433:28 | SelfParam | TRef.T | associated_types.rs:431:10:431:16 | T | -| associated_types.rs:433:47:435:9 | { ... } | | associated_types.rs:431:10:431:16 | T | -| associated_types.rs:434:13:434:19 | (...) | | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:434:13:434:19 | (...) | T | associated_types.rs:431:10:431:16 | T | -| associated_types.rs:434:13:434:21 | ... .0 | | associated_types.rs:431:10:431:16 | T | -| associated_types.rs:434:14:434:18 | * ... | | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:434:14:434:18 | * ... | T | associated_types.rs:431:10:431:16 | T | -| associated_types.rs:434:15:434:18 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:434:15:434:18 | self | TRef | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:434:15:434:18 | self | TRef.T | associated_types.rs:431:10:431:16 | T | -| associated_types.rs:440:24:440:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:440:24:440:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:440:24:440:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:440:47:443:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:442:13:442:30 | ...::default(...) | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:448:24:448:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:448:24:448:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:448:24:448:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | -| associated_types.rs:448:47:450:9 | { ... } | | {EXTERNAL LOCATION} | char | -| associated_types.rs:449:13:449:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | -| associated_types.rs:453:33:453:36 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:453:33:453:36 | item | TRef | associated_types.rs:453:20:453:30 | T | -| associated_types.rs:454:9:454:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:454:9:454:12 | item | TRef | associated_types.rs:453:20:453:30 | T | -| associated_types.rs:457:35:457:38 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:457:35:457:38 | item | TRef | associated_types.rs:457:21:457:32 | T | -| associated_types.rs:457:90:460:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:458:9:458:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:458:9:458:12 | item | TRef | associated_types.rs:457:21:457:32 | T | -| associated_types.rs:458:9:458:20 | item.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:459:9:459:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:459:9:459:12 | item | TRef | associated_types.rs:457:21:457:32 | T | -| associated_types.rs:459:9:459:31 | item.insert_two(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:462:19:471:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:463:13:463:17 | item1 | | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:463:13:463:17 | item1 | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:463:21:463:33 | MyType(...) | | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:463:21:463:33 | MyType(...) | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:463:28:463:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:464:13:464:21 | _content1 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:464:25:464:29 | item1 | | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:464:25:464:29 | item1 | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:464:25:464:43 | item1.get_content() | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:466:13:466:17 | item2 | | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:466:13:466:17 | item2 | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:466:21:466:32 | MyType(...) | | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:466:21:466:32 | MyType(...) | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:466:28:466:31 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:467:37:467:42 | &item2 | | {EXTERNAL LOCATION} | & | -| associated_types.rs:467:37:467:42 | &item2 | TRef | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:467:37:467:42 | &item2 | TRef.T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:467:38:467:42 | item2 | | associated_types.rs:417:5:417:24 | MyType | -| associated_types.rs:467:38:467:42 | item2 | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:469:13:469:21 | _content3 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:469:25:469:34 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:469:25:469:34 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:469:25:469:48 | ... .get_content() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:469:29:469:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:470:13:470:21 | _content4 | | {EXTERNAL LOCATION} | char | -| associated_types.rs:470:25:470:33 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:470:25:470:33 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | -| associated_types.rs:470:25:470:47 | ... .get_content() | | {EXTERNAL LOCATION} | char | -| associated_types.rs:470:29:470:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:484:16:484:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:484:16:484:20 | SelfParam | TRef | associated_types.rs:477:5:477:20 | ST | -| associated_types.rs:484:16:484:20 | SelfParam | TRef.T | associated_types.rs:479:10:479:21 | Output | -| associated_types.rs:484:39:486:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:484:39:486:9 | { ... } | E | associated_types.rs:479:10:479:21 | Output | -| associated_types.rs:484:39:486:9 | { ... } | T | associated_types.rs:479:10:479:21 | Output | -| associated_types.rs:485:13:485:22 | Ok(...) | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:485:13:485:22 | Ok(...) | E | associated_types.rs:479:10:479:21 | Output | -| associated_types.rs:485:13:485:22 | Ok(...) | T | associated_types.rs:479:10:479:21 | Output | -| associated_types.rs:485:16:485:19 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:485:16:485:19 | self | TRef | associated_types.rs:477:5:477:20 | ST | -| associated_types.rs:485:16:485:19 | self | TRef.T | associated_types.rs:479:10:479:21 | Output | -| associated_types.rs:485:16:485:21 | self.0 | | associated_types.rs:479:10:479:21 | Output | -| associated_types.rs:489:19:491:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:490:13:490:14 | _y | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:490:13:490:14 | _y | E | {EXTERNAL LOCATION} | bool | -| associated_types.rs:490:13:490:14 | _y | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:490:18:490:25 | ST(...) | | associated_types.rs:477:5:477:20 | ST | -| associated_types.rs:490:18:490:25 | ST(...) | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:490:18:490:31 | ... .get() | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:490:18:490:31 | ... .get() | E | {EXTERNAL LOCATION} | bool | -| associated_types.rs:490:18:490:31 | ... .get() | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:490:21:490:24 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:498:31:498:31 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:498:31:498:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:498:31:498:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:498:61:506:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:500:13:500:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:500:19:500:22 | (...) | | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:500:19:500:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:500:19:500:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:500:20:500:21 | * ... | | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:500:20:500:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:500:21:500:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:500:21:500:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:500:21:500:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:503:13:503:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:503:19:503:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:503:19:503:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:503:19:503:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:503:19:503:25 | t.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:505:13:505:15 | _a3 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:505:19:505:24 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:505:23:505:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:505:23:505:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:505:23:505:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:508:36:508:36 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:508:36:508:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:508:36:508:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:508:36:508:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:508:92:514:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:509:13:509:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:509:19:509:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:509:19:509:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:509:19:509:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:509:19:509:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:509:20:509:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:509:20:509:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:509:20:509:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:509:21:509:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:509:21:509:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:509:21:509:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:509:21:509:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:510:13:510:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:510:19:510:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:510:19:510:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:510:19:510:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:510:19:510:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:510:19:510:25 | t.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:511:13:511:15 | _a3 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:511:19:511:24 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:511:23:511:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:511:23:511:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:511:23:511:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:511:23:511:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:512:13:512:15 | _b1 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:512:19:512:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:512:19:512:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:512:19:512:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:512:19:512:36 | ... .get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:512:20:512:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:512:20:512:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:512:20:512:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:512:21:512:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:512:21:512:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:512:21:512:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:512:21:512:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:513:13:513:15 | _b2 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:513:19:513:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:513:19:513:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:513:19:513:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:513:19:513:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:513:19:513:33 | t.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:517:15:526:1 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:518:5:518:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:519:5:519:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:520:5:520:59 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:521:5:521:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:522:5:522:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:523:5:523:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:524:5:524:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:525:5:525:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:381:20:381:24 | SelfParam | TRef | associated_types.rs:374:5:384:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:383:20:383:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:383:20:383:24 | SelfParam | TRef | associated_types.rs:374:5:384:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:390:21:390:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:390:21:390:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:390:34:392:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:391:13:391:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:394:20:394:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:394:20:394:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:394:43:396:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:395:13:395:13 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:398:20:398:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:398:20:398:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:398:43:400:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:399:13:399:14 | S2 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:403:19:407:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:404:13:404:23 | _assoc_zero | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:404:27:404:28 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:404:27:404:39 | S3.get_zero() | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:405:13:405:22 | _assoc_one | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:405:26:405:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:405:26:405:37 | S3.get_one() | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:406:13:406:22 | _assoc_two | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:406:26:406:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:406:26:406:37 | S3.get_two() | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:415:24:415:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:415:24:415:28 | SelfParam | TRef | associated_types.rs:413:5:416:5 | Self [trait Subtrait] | +| associated_types.rs:424:23:424:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:424:23:424:27 | SelfParam | TRef | associated_types.rs:418:5:428:5 | Self [trait Subtrait2] | +| associated_types.rs:424:30:424:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:424:48:424:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:424:66:427:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:425:13:425:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:425:13:425:16 | self | TRef | associated_types.rs:418:5:428:5 | Self [trait Subtrait2] | +| associated_types.rs:425:13:425:24 | self.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:425:22:425:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:426:13:426:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:426:13:426:16 | self | TRef | associated_types.rs:418:5:428:5 | Self [trait Subtrait2] | +| associated_types.rs:426:13:426:24 | self.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:426:22:426:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:435:16:435:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:435:16:435:20 | SelfParam | TRef | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:435:16:435:20 | SelfParam | TRef.T | associated_types.rs:432:10:432:16 | T | +| associated_types.rs:435:39:437:9 | { ... } | | associated_types.rs:432:10:432:16 | T | +| associated_types.rs:436:13:436:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:436:13:436:16 | self | TRef | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:436:13:436:16 | self | TRef.T | associated_types.rs:432:10:432:16 | T | +| associated_types.rs:436:13:436:18 | self.0 | | associated_types.rs:432:10:432:16 | T | +| associated_types.rs:439:16:439:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:439:16:439:20 | SelfParam | TRef | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:439:16:439:20 | SelfParam | TRef.T | associated_types.rs:432:10:432:16 | T | +| associated_types.rs:439:23:439:30 | _content | | associated_types.rs:432:10:432:16 | T | +| associated_types.rs:439:47:441:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:440:13:440:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:440:22:440:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:440:22:440:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:440:22:440:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:440:22:440:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:440:22:440:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:446:24:446:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:446:24:446:28 | SelfParam | TRef | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:446:24:446:28 | SelfParam | TRef.T | associated_types.rs:444:10:444:16 | T | +| associated_types.rs:446:47:448:9 | { ... } | | associated_types.rs:444:10:444:16 | T | +| associated_types.rs:447:13:447:19 | (...) | | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:447:13:447:19 | (...) | T | associated_types.rs:444:10:444:16 | T | +| associated_types.rs:447:13:447:21 | ... .0 | | associated_types.rs:444:10:444:16 | T | +| associated_types.rs:447:14:447:18 | * ... | | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:447:14:447:18 | * ... | T | associated_types.rs:444:10:444:16 | T | +| associated_types.rs:447:15:447:18 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:447:15:447:18 | self | TRef | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:447:15:447:18 | self | TRef.T | associated_types.rs:444:10:444:16 | T | +| associated_types.rs:453:24:453:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:453:24:453:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:453:24:453:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:453:47:456:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:455:13:455:30 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:461:24:461:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:461:24:461:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:461:24:461:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:461:47:463:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:462:13:462:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | +| associated_types.rs:466:33:466:36 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:466:33:466:36 | item | TRef | associated_types.rs:466:20:466:30 | T | +| associated_types.rs:467:9:467:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:467:9:467:12 | item | TRef | associated_types.rs:466:20:466:30 | T | +| associated_types.rs:470:35:470:38 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:470:35:470:38 | item | TRef | associated_types.rs:470:21:470:32 | T | +| associated_types.rs:470:90:473:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:471:9:471:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:471:9:471:12 | item | TRef | associated_types.rs:470:21:470:32 | T | +| associated_types.rs:471:9:471:20 | item.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:472:9:472:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:472:9:472:12 | item | TRef | associated_types.rs:470:21:470:32 | T | +| associated_types.rs:472:9:472:31 | item.insert_two(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:475:19:484:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:476:13:476:17 | item1 | | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:476:13:476:17 | item1 | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:476:21:476:33 | MyType(...) | | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:476:21:476:33 | MyType(...) | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:476:28:476:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:477:13:477:21 | _content1 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:477:25:477:29 | item1 | | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:477:25:477:29 | item1 | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:477:25:477:43 | item1.get_content() | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:479:13:479:17 | item2 | | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:479:13:479:17 | item2 | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:479:21:479:32 | MyType(...) | | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:479:21:479:32 | MyType(...) | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:479:28:479:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:480:37:480:42 | &item2 | | {EXTERNAL LOCATION} | & | +| associated_types.rs:480:37:480:42 | &item2 | TRef | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:480:37:480:42 | &item2 | TRef.T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:480:38:480:42 | item2 | | associated_types.rs:430:5:430:24 | MyType | +| associated_types.rs:480:38:480:42 | item2 | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:482:13:482:21 | _content3 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:482:25:482:34 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:482:25:482:34 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:482:25:482:48 | ... .get_content() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:482:29:482:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:483:13:483:21 | _content4 | | {EXTERNAL LOCATION} | char | +| associated_types.rs:483:25:483:33 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:483:25:483:33 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:483:25:483:47 | ... .get_content() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:483:29:483:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:497:16:497:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:497:16:497:20 | SelfParam | TRef | associated_types.rs:490:5:490:20 | ST | +| associated_types.rs:497:16:497:20 | SelfParam | TRef.T | associated_types.rs:492:10:492:21 | Output | +| associated_types.rs:497:39:499:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:497:39:499:9 | { ... } | E | associated_types.rs:492:10:492:21 | Output | +| associated_types.rs:497:39:499:9 | { ... } | T | associated_types.rs:492:10:492:21 | Output | +| associated_types.rs:498:13:498:22 | Ok(...) | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:498:13:498:22 | Ok(...) | E | associated_types.rs:492:10:492:21 | Output | +| associated_types.rs:498:13:498:22 | Ok(...) | T | associated_types.rs:492:10:492:21 | Output | +| associated_types.rs:498:16:498:19 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:498:16:498:19 | self | TRef | associated_types.rs:490:5:490:20 | ST | +| associated_types.rs:498:16:498:19 | self | TRef.T | associated_types.rs:492:10:492:21 | Output | +| associated_types.rs:498:16:498:21 | self.0 | | associated_types.rs:492:10:492:21 | Output | +| associated_types.rs:502:19:504:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:503:13:503:14 | _y | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:503:13:503:14 | _y | E | {EXTERNAL LOCATION} | bool | +| associated_types.rs:503:13:503:14 | _y | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:503:18:503:25 | ST(...) | | associated_types.rs:490:5:490:20 | ST | +| associated_types.rs:503:18:503:25 | ST(...) | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:503:18:503:31 | ... .get() | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:503:18:503:31 | ... .get() | E | {EXTERNAL LOCATION} | bool | +| associated_types.rs:503:18:503:31 | ... .get() | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:503:21:503:24 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:511:31:511:31 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:511:31:511:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:511:31:511:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:511:61:519:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:513:13:513:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:513:19:513:22 | (...) | | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:513:19:513:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:513:19:513:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:513:20:513:21 | * ... | | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:513:20:513:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:513:21:513:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:513:21:513:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:513:21:513:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:516:13:516:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:516:19:516:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:516:19:516:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:516:19:516:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:516:19:516:25 | t.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:518:13:518:15 | _a3 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:518:19:518:24 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:518:23:518:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:518:23:518:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:518:23:518:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:521:36:521:36 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:521:36:521:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:521:36:521:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:521:36:521:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:521:92:527:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:522:13:522:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:522:19:522:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:522:19:522:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:522:19:522:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:522:19:522:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:522:20:522:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:522:20:522:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:522:20:522:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:522:21:522:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:522:21:522:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:522:21:522:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:522:21:522:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:523:13:523:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:523:19:523:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:523:19:523:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:523:19:523:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:523:19:523:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:523:19:523:25 | t.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:524:13:524:15 | _a3 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:524:19:524:24 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:524:23:524:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:524:23:524:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:524:23:524:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:524:23:524:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:525:13:525:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:525:19:525:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:525:19:525:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:525:19:525:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:525:19:525:36 | ... .get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:525:20:525:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:525:20:525:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:525:20:525:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:525:21:525:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:525:21:525:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:525:21:525:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:525:21:525:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:526:13:526:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:526:19:526:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:526:19:526:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:526:19:526:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:526:19:526:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:526:19:526:33 | t.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:530:15:539:1 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:531:5:531:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:532:5:532:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:533:5:533:59 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:534:5:534:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:535:5:535:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:536:5:536:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:537:5:537:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:538:5:538:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:15:18:15:22 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:15:18:15:22 | SelfParam | TRef | blanket_impl.rs:9:5:10:14 | S2 | | blanket_impl.rs:15:42:17:9 | { ... } | | {EXTERNAL LOCATION} | & | From 624ee1898af66fb08fdf0ee04b18ad74d7d5a6f6 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Thu, 5 Feb 2026 13:25:05 +0100 Subject: [PATCH 362/433] Rust: Implement support for associated types accessed on type parameters --- .../typeinference/AssociatedTypes.qll | 65 ++++++++++++++++ .../rust/internal/typeinference/Type.qll | 61 +++++++++++++-- .../internal/typeinference/TypeInference.qll | 17 +++- .../internal/typeinference/TypeMention.qll | 28 +++++-- .../type-inference/associated_types.rs | 8 +- .../test/library-tests/type-inference/main.rs | 4 +- .../type-inference/type-inference.expected | 77 +++++++++++++++++++ 7 files changed, 238 insertions(+), 22 deletions(-) create mode 100644 rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll b/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll new file mode 100644 index 000000000000..a31b2730def7 --- /dev/null +++ b/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll @@ -0,0 +1,65 @@ +/** + * Provides classes and helper predicates for associated types. + */ + +private import rust +private import codeql.rust.internal.PathResolution +private import TypeMention +private import Type +private import TypeInference + +/** An associated type, that is, a type alias in a trait block. */ +final class AssocType extends TypeAlias { + Trait trait; + + AssocType() { this = trait.getAssocItemList().getAnAssocItem() } + + Trait getTrait() { result = trait } + + string getText() { result = this.getName().getText() } +} + +/** Gets an associated type of `trait` or of a supertrait of `trait`. */ +AssocType getTraitAssocType(Trait trait) { + result = trait.getSupertrait*().getAssocItemList().getAnAssocItem() +} + +/** Holds if `path` is of the form `::name` */ +predicate asTraitPath(Path path, TypeRepr typeRepr, Path traitPath, string name) { + exists(PathSegment segment | + segment = path.getQualifier().getSegment() and + typeRepr = segment.getTypeRepr() and + traitPath = segment.getTraitTypeRepr().getPath() and + name = path.getText() + ) +} + +/** + * Holds if `assoc` is accessed on `tp` in `path`. + * + * That is this is the case when `path` is of the form `::AssocType` or `tp::AssocType`; and `AssocType` resolves to `assoc`. + */ +predicate tpAssociatedType(TypeParam tp, AssocType assoc, Path path) { + resolvePath(path.getQualifier()) = tp and + resolvePath(path) = assoc + or + exists(TypeRepr typeRepr, Path traitPath, string name | + asTraitPath(path, typeRepr, traitPath, name) and + tp = resolvePath(typeRepr.(PathTypeRepr).getPath()) and + assoc = resolvePath(traitPath).(TraitItemNode).getAssocItem(name) + ) +} + +/** + * Holds if `bound` is a type bound for `tp` that gives rise to `assoc` being + * present for `tp`. + */ +predicate tpBoundAssociatedType( + TypeParam tp, TypeBound bound, Path path, TraitItemNode trait, AssocType assoc +) { + bound = tp.getATypeBound() and + path = bound.getTypeRepr().(PathTypeRepr).getPath() and + trait = resolvePath(path) and + assoc = getTraitAssocType(trait) +} diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll b/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll index 983e9a75ee5a..f9cebef35232 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll @@ -8,11 +8,7 @@ private import codeql.rust.elements.internal.generated.Raw private import codeql.rust.elements.internal.generated.Synth private import codeql.rust.frameworks.stdlib.Stdlib private import codeql.rust.frameworks.stdlib.Builtins as Builtins - -/** Gets a type alias of `trait` or of a supertrait of `trait`. */ -private TypeAlias getTraitTypeAlias(Trait trait) { - result = trait.getSupertrait*().getAssocItemList().getAnAssocItem() -} +private import AssociatedTypes /** * Holds if a dyn trait type for the trait `trait` should have a type parameter @@ -31,7 +27,7 @@ private TypeAlias getTraitTypeAlias(Trait trait) { */ private predicate dynTraitTypeParameter(Trait trait, AstNode n) { trait = any(DynTraitTypeRepr dt).getTrait() and - n = [trait.getGenericParamList().getATypeParam().(AstNode), getTraitTypeAlias(trait)] + n = [trait.getGenericParamList().getATypeParam().(AstNode), getTraitAssocType(trait)] } cached @@ -43,8 +39,11 @@ newtype TType = TNeverType() or TUnknownType() or TTypeParamTypeParameter(TypeParam t) or - TAssociatedTypeTypeParameter(Trait trait, TypeAlias typeAlias) { - getTraitTypeAlias(trait) = typeAlias + TAssociatedTypeTypeParameter(Trait trait, AssocType typeAlias) { + getTraitAssocType(trait) = typeAlias + } or + TTypeParamAssociatedTypeTypeParameter(TypeParam tp, AssocType assoc) { + tpAssociatedType(tp, assoc, _) } or TDynTraitTypeParameter(Trait trait, AstNode n) { dynTraitTypeParameter(trait, n) } or TImplTraitTypeParameter(ImplTraitTypeRepr implTrait, TypeParam tp) { @@ -464,6 +463,52 @@ class AssociatedTypeTypeParameter extends TypeParameter, TAssociatedTypeTypePara override Location getLocation() { result = typeAlias.getLocation() } } +/** + * A type parameter corresponding to an associated type accessed on a type + * parameter, for example `T::AssociatedType` where `T` is a type parameter. + * + * These type parameters are created when a function signature accesses an + * associated type on a type parameter. For example, in + * ```rust + * fn foo(arg: T::Assoc) { } + * ``` + * we create a `TypeParamAssociatedTypeTypeParameter` for `Assoc` on `T` and the + * mention `T::Assoc` resolves to this type parameter. If denoting the type + * parameter by `T_Assoc` then the above function is treated as if it was + * ```rust + * fn foo, T_Assoc>(arg: T_Assoc) { } + * ``` + */ +class TypeParamAssociatedTypeTypeParameter extends TypeParameter, + TTypeParamAssociatedTypeTypeParameter +{ + private TypeParam typeParam; + private AssocType assoc; + + TypeParamAssociatedTypeTypeParameter() { + this = TTypeParamAssociatedTypeTypeParameter(typeParam, assoc) + } + + /** Gets the type parameter that this associated type is accessed on. */ + TypeParam getTypeParam() { result = typeParam } + + /** Gets the associated type alias. */ + AssocType getTypeAlias() { result = assoc } + + /** Gets a path that accesses this type parameter. */ + Path getPath() { tpAssociatedType(typeParam, assoc, result) } + + override ItemNode getDeclaringItem() { result.getTypeParam(_) = typeParam } + + override string toString() { + result = + typeParam.toString() + "::" + assoc.getName().getText() + "[" + + assoc.getTrait().getName().getText() + "]" + } + + override Location getLocation() { result = typeParam.getLocation() } +} + /** Gets the associated type type-parameter corresponding directly to `typeAlias`. */ AssociatedTypeTypeParameter getAssociatedTypeTypeParameter(TypeAlias typeAlias) { result.isDirect() and result.getTypeAlias() = typeAlias diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index e026f532eb0e..74ee0b220e03 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -108,6 +108,10 @@ private module Input implements InputSig1, InputSig2 { id2 = idOfTypeParameterAstNode(tp0.(AssociatedTypeTypeParameter).getTypeAlias()) or kind = 4 and + id1 = idOfTypeParameterAstNode(tp0.(TypeParamAssociatedTypeTypeParameter).getTypeParam()) and + id2 = idOfTypeParameterAstNode(tp0.(TypeParamAssociatedTypeTypeParameter).getTypeAlias()) + or + kind = 5 and id1 = 0 and exists(AstNode node | id2 = idOfTypeParameterAstNode(node) | node = tp0.(TypeParamTypeParameter).getTypeParam() or @@ -273,9 +277,16 @@ private class FunctionDeclaration extends Function { TypeParameter getTypeParameter(ImplOrTraitItemNodeOption i, TypeParameterPosition ppos) { i = parent and ( - typeParamMatchPosition(this.getGenericParamList().getATypeParam(), result, ppos) - or - typeParamMatchPosition(i.asSome().getTypeParam(_), result, ppos) + exists(TypeParam tp | + tp = [this.getGenericParamList().getATypeParam(), i.asSome().getTypeParam(_)] + | + typeParamMatchPosition(tp, result, ppos) + or + // If `tp` is a type parameter for this function, then any associated + // types accessed on `tp` are also type parameters. + ppos.isImplicit() and + result.(TypeParamAssociatedTypeTypeParameter).getTypeParam() = tp + ) or ppos.isImplicit() and result = TSelfTypeParameter(i.asSome()) or diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index 4865dd82ef83..0c71b03c6377 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -6,6 +6,7 @@ private import codeql.rust.frameworks.stdlib.Stdlib private import Type private import TypeAbstraction private import TypeInference +private import AssociatedTypes bindingset[trait, name] pragma[inline_late] @@ -319,6 +320,22 @@ private module MkTypeMention, T_Assoc>(arg: T_Assoc) { } + // ^^^^^^^^^ ^^^^^ ^^^^^^^ + // this path result + // ``` + exists(TypeParam typeParam, Trait trait, AssocType assoc | + tpBoundAssociatedType(typeParam, _, this, trait, assoc) and + tp = TAssociatedTypeTypeParameter(resolved, assoc) and + result = TTypeParamAssociatedTypeTypeParameter(typeParam, assoc) and + path.isEmpty() + ) } bindingset[name] @@ -372,6 +389,8 @@ private module MkTypeMention::AssocType` // ^^^ tm ^^^^^^^^^ name - exists(string name | - name = path.getText() and - trait = resolvePath(qualifier.getSegment().getTraitTypeRepr().getPath()) and - getTraitAssocType(trait, name) = alias and - tm = qualifier.getSegment().getTypeRepr() + exists(string name, Path traitPath | + asTraitPath(path, tm, traitPath, name) and + trait = resolvePath(traitPath) and + getTraitAssocType(trait, name) = alias ) or // path of the form `Self::AssocType` within an `impl` block diff --git a/rust/ql/test/library-tests/type-inference/associated_types.rs b/rust/ql/test/library-tests/type-inference/associated_types.rs index 567d4449150e..573404ebaf6f 100644 --- a/rust/ql/test/library-tests/type-inference/associated_types.rs +++ b/rust/ql/test/library-tests/type-inference/associated_types.rs @@ -271,15 +271,15 @@ mod type_param_access_associated_type { } pub fn test() { - let _o1 = tp_with_as(S); // $ target=tp_with_as MISSING: type=_o1:S3 - let _o2 = tp_without_as(S); // $ target=tp_without_as MISSING: type=_o2:S3 + let _o1 = tp_with_as(S); // $ target=tp_with_as type=_o1:S3 + let _o2 = tp_without_as(S); // $ target=tp_without_as type=_o2:S3 let ( _o3, // $ MISSING: type=_o3:S3 - _o4, // $ MISSING: type=_o4:bool + _o4, // $ type=_o4:bool ) = tp_assoc_from_supertrait(S); // $ target=tp_assoc_from_supertrait let w = Wrapper(S); - let _extracted = w.extract(); // $ target=extract MISSING: type=_extracted:S3 + let _extracted = w.extract(); // $ target=extract type=_extracted:S3 } } diff --git a/rust/ql/test/library-tests/type-inference/main.rs b/rust/ql/test/library-tests/type-inference/main.rs index 842970a869c9..204bd7e55cb5 100644 --- a/rust/ql/test/library-tests/type-inference/main.rs +++ b/rust/ql/test/library-tests/type-inference/main.rs @@ -1748,7 +1748,7 @@ mod overloadable_operators { let i64_mul = 17i64 * 18i64; // $ type=i64_mul:i64 target=mul let i64_div = 19i64 / 20i64; // $ type=i64_div:i64 target=div let i64_rem = 21i64 % 22i64; // $ type=i64_rem:i64 target=rem - let i64_param_add = param_add(1i64, 2i64); // $ target=param_add $ MISSING: type=i64_param_add:i64 + let i64_param_add = param_add(1i64, 2i64); // $ target=param_add $ type=i64_param_add:i64 // Arithmetic assignment operators let mut i64_add_assign = 23i64; @@ -2053,7 +2053,7 @@ mod indexers { let xs: [S; 1] = [S]; let x = xs[0].foo(); // $ target=foo type=x:S target=index - let y = param_index(vec, 0); // $ target=param_index $ MISSING: type=y:S + let y = param_index(vec, 0); // $ target=param_index $ type=y:S analyze_slice(&xs); // $ target=analyze_slice } diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index f4bfb48031c2..94888602713a 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -111,17 +111,22 @@ inferCertainType | associated_types.rs:237:19:241:5 | { ... } | | {EXTERNAL LOCATION} | () | | associated_types.rs:239:28:239:31 | true | | {EXTERNAL LOCATION} | bool | | associated_types.rs:248:30:248:34 | thing | | associated_types.rs:248:19:248:27 | T | +| associated_types.rs:248:65:250:5 | { ... } | | associated_types.rs:248:19:248:27 | T::Output[GetSet] | | associated_types.rs:249:9:249:13 | thing | | associated_types.rs:248:19:248:27 | T | | associated_types.rs:252:33:252:37 | thing | | associated_types.rs:252:22:252:30 | T | +| associated_types.rs:252:56:254:5 | { ... } | | associated_types.rs:252:22:252:30 | T::Output[GetSet] | | associated_types.rs:253:9:253:13 | thing | | associated_types.rs:252:22:252:30 | T | | associated_types.rs:256:48:256:52 | thing | | associated_types.rs:256:33:256:45 | T | | associated_types.rs:256:91:261:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:256:91:261:5 | { ... } | T0 | associated_types.rs:256:33:256:45 | T::Output[GetSet] | +| associated_types.rs:256:91:261:5 | { ... } | T1 | associated_types.rs:256:33:256:45 | T::AnotherOutput[AnotherGet] | | associated_types.rs:257:9:260:9 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | | associated_types.rs:258:13:258:17 | thing | | associated_types.rs:256:33:256:45 | T | | associated_types.rs:259:13:259:17 | thing | | associated_types.rs:256:33:256:45 | T | | associated_types.rs:268:20:268:24 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:268:20:268:24 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | | associated_types.rs:268:20:268:24 | SelfParam | TRef.A | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:268:41:270:9 | { ... } | | associated_types.rs:264:10:264:11 | TI::Output[GetSet] | | associated_types.rs:269:13:269:16 | self | | {EXTERNAL LOCATION} | & | | associated_types.rs:269:13:269:16 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | | associated_types.rs:269:13:269:16 | self | TRef.A | associated_types.rs:264:10:264:11 | TI | @@ -235,15 +240,22 @@ inferCertainType | associated_types.rs:461:47:463:9 | { ... } | | {EXTERNAL LOCATION} | char | | associated_types.rs:466:33:466:36 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:466:33:466:36 | item | TRef | associated_types.rs:466:20:466:30 | T | +| associated_types.rs:466:56:468:5 | { ... } | | associated_types.rs:466:20:466:30 | T::Output[GetSet] | | associated_types.rs:467:9:467:12 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:467:9:467:12 | item | TRef | associated_types.rs:466:20:466:30 | T | | associated_types.rs:470:35:470:38 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:470:35:470:38 | item | TRef | associated_types.rs:470:21:470:32 | T | +| associated_types.rs:470:45:470:46 | c1 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | +| associated_types.rs:470:60:470:61 | c2 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | +| associated_types.rs:470:75:470:76 | c3 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | | associated_types.rs:470:90:473:5 | { ... } | | {EXTERNAL LOCATION} | () | | associated_types.rs:471:9:471:12 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:471:9:471:12 | item | TRef | associated_types.rs:470:21:470:32 | T | +| associated_types.rs:471:18:471:19 | c1 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | | associated_types.rs:472:9:472:12 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:472:9:472:12 | item | TRef | associated_types.rs:470:21:470:32 | T | +| associated_types.rs:472:25:472:26 | c2 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | +| associated_types.rs:472:29:472:30 | c3 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | | associated_types.rs:475:19:484:5 | { ... } | | {EXTERNAL LOCATION} | () | | associated_types.rs:476:28:476:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | | associated_types.rs:479:28:479:31 | true | | {EXTERNAL LOCATION} | bool | @@ -2719,6 +2731,7 @@ inferCertainType | main.rs:1726:44:1726:48 | other | TRef | main.rs:1493:5:1498:5 | Vec2 | | main.rs:1730:26:1730:26 | a | | main.rs:1730:18:1730:23 | T | | main.rs:1730:32:1730:32 | b | | main.rs:1730:18:1730:23 | T | +| main.rs:1730:51:1732:5 | { ... } | | main.rs:1730:18:1730:23 | T::Output[Add] | | main.rs:1731:9:1731:9 | a | | main.rs:1730:18:1730:23 | T | | main.rs:1731:13:1731:13 | b | | main.rs:1730:18:1730:23 | T | | main.rs:1734:16:1865:5 | { ... } | | {EXTERNAL LOCATION} | () | @@ -3002,6 +3015,7 @@ inferCertainType | main.rs:2038:17:2038:21 | slice | TRef.TSlice | main.rs:2004:5:2005:13 | S | | main.rs:2041:37:2041:37 | a | | main.rs:2041:20:2041:34 | T | | main.rs:2041:43:2041:43 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2044:5:2046:5 | { ... } | | main.rs:2041:20:2041:34 | T::Output[Index] | | main.rs:2045:9:2045:9 | a | | main.rs:2041:20:2041:34 | T | | main.rs:2045:11:2045:11 | b | | {EXTERNAL LOCATION} | usize | | main.rs:2048:16:2059:5 | { ... } | | {EXTERNAL LOCATION} | () | @@ -3046,6 +3060,7 @@ inferCertainType | main.rs:2113:25:2113:29 | other | | main.rs:2107:5:2107:19 | S | | main.rs:2113:25:2113:29 | other | T | main.rs:2109:10:2109:17 | T | | main.rs:2113:54:2115:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2113:54:2115:9 | { ... } | T | main.rs:2109:10:2109:17 | T::Output[MyAdd] | | main.rs:2114:16:2114:19 | self | | main.rs:2107:5:2107:19 | S | | main.rs:2114:16:2114:19 | self | T | main.rs:2109:10:2109:17 | T | | main.rs:2114:31:2114:35 | other | | main.rs:2107:5:2107:19 | S | @@ -3054,6 +3069,7 @@ inferCertainType | main.rs:2122:19:2122:22 | SelfParam | T | main.rs:2118:10:2118:17 | T | | main.rs:2122:25:2122:29 | other | | main.rs:2118:10:2118:17 | T | | main.rs:2122:51:2124:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2122:51:2124:9 | { ... } | T | main.rs:2118:10:2118:17 | T::Output[MyAdd] | | main.rs:2123:16:2123:19 | self | | main.rs:2107:5:2107:19 | S | | main.rs:2123:16:2123:19 | self | T | main.rs:2118:10:2118:17 | T | | main.rs:2123:31:2123:35 | other | | main.rs:2118:10:2118:17 | T | @@ -3062,6 +3078,7 @@ inferCertainType | main.rs:2134:25:2134:29 | other | | {EXTERNAL LOCATION} | & | | main.rs:2134:25:2134:29 | other | TRef | main.rs:2127:14:2127:14 | T | | main.rs:2134:55:2136:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2134:55:2136:9 | { ... } | T | main.rs:2127:14:2127:14 | T::Output[MyAdd] | | main.rs:2135:16:2135:19 | self | | main.rs:2107:5:2107:19 | S | | main.rs:2135:16:2135:19 | self | T | main.rs:2127:14:2127:14 | T | | main.rs:2135:31:2135:35 | other | | {EXTERNAL LOCATION} | & | @@ -5078,34 +5095,55 @@ inferType | associated_types.rs:240:18:240:30 | s.convert(...) | | {EXTERNAL LOCATION} | i32 | | associated_types.rs:240:28:240:29 | 42 | | {EXTERNAL LOCATION} | i32 | | associated_types.rs:248:30:248:34 | thing | | associated_types.rs:248:19:248:27 | T | +| associated_types.rs:248:65:250:5 | { ... } | | associated_types.rs:248:19:248:27 | T::Output[GetSet] | | associated_types.rs:249:9:249:13 | thing | | associated_types.rs:248:19:248:27 | T | +| associated_types.rs:249:9:249:19 | thing.get() | | associated_types.rs:248:19:248:27 | T::Output[GetSet] | | associated_types.rs:252:33:252:37 | thing | | associated_types.rs:252:22:252:30 | T | +| associated_types.rs:252:56:254:5 | { ... } | | associated_types.rs:252:22:252:30 | T::Output[GetSet] | | associated_types.rs:253:9:253:13 | thing | | associated_types.rs:252:22:252:30 | T | +| associated_types.rs:253:9:253:19 | thing.get() | | associated_types.rs:252:22:252:30 | T::Output[GetSet] | | associated_types.rs:256:48:256:52 | thing | | associated_types.rs:256:33:256:45 | T | | associated_types.rs:256:91:261:5 | { ... } | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:256:91:261:5 | { ... } | T0 | associated_types.rs:256:33:256:45 | T::Output[GetSet] | +| associated_types.rs:256:91:261:5 | { ... } | T1 | associated_types.rs:256:33:256:45 | T::AnotherOutput[AnotherGet] | | associated_types.rs:257:9:260:9 | TupleExpr | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:257:9:260:9 | TupleExpr | T0 | associated_types.rs:256:33:256:45 | T::Output[GetSet] | +| associated_types.rs:257:9:260:9 | TupleExpr | T1 | associated_types.rs:256:33:256:45 | T::AnotherOutput[AnotherGet] | | associated_types.rs:258:13:258:17 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:258:13:258:23 | thing.get() | | associated_types.rs:256:33:256:45 | T::Output[GetSet] | | associated_types.rs:259:13:259:17 | thing | | associated_types.rs:256:33:256:45 | T | +| associated_types.rs:259:13:259:31 | thing.get_another() | | associated_types.rs:256:33:256:45 | T::AnotherOutput[AnotherGet] | | associated_types.rs:268:20:268:24 | SelfParam | | {EXTERNAL LOCATION} | & | | associated_types.rs:268:20:268:24 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | | associated_types.rs:268:20:268:24 | SelfParam | TRef.A | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:268:41:270:9 | { ... } | | associated_types.rs:264:10:264:11 | TI::Output[GetSet] | | associated_types.rs:269:13:269:16 | self | | {EXTERNAL LOCATION} | & | | associated_types.rs:269:13:269:16 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | | associated_types.rs:269:13:269:16 | self | TRef.A | associated_types.rs:264:10:264:11 | TI | | associated_types.rs:269:13:269:18 | self.0 | | associated_types.rs:264:10:264:11 | TI | +| associated_types.rs:269:13:269:24 | ... .get() | | associated_types.rs:264:10:264:11 | TI::Output[GetSet] | | associated_types.rs:273:19:283:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:274:13:274:15 | _o1 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:274:19:274:31 | tp_with_as(...) | | associated_types.rs:16:1:17:10 | S3 | | associated_types.rs:274:30:274:30 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:275:13:275:15 | _o2 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:275:19:275:34 | tp_without_as(...) | | associated_types.rs:16:1:17:10 | S3 | | associated_types.rs:275:33:275:33 | S | | associated_types.rs:10:1:11:9 | S | | associated_types.rs:276:13:279:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:276:13:279:9 | TuplePat | T1 | {EXTERNAL LOCATION} | bool | +| associated_types.rs:278:13:278:15 | _o4 | | {EXTERNAL LOCATION} | bool | | associated_types.rs:279:13:279:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:279:13:279:39 | tp_assoc_from_supertrait(...) | T1 | {EXTERNAL LOCATION} | bool | | associated_types.rs:279:38:279:38 | S | | associated_types.rs:10:1:11:9 | S | | associated_types.rs:281:13:281:13 | w | | associated_types.rs:1:1:2:21 | Wrapper | | associated_types.rs:281:13:281:13 | w | A | associated_types.rs:10:1:11:9 | S | | associated_types.rs:281:17:281:26 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | | associated_types.rs:281:17:281:26 | Wrapper(...) | A | associated_types.rs:10:1:11:9 | S | | associated_types.rs:281:25:281:25 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:282:13:282:22 | _extracted | | associated_types.rs:16:1:17:10 | S3 | | associated_types.rs:282:26:282:26 | w | | associated_types.rs:1:1:2:21 | Wrapper | | associated_types.rs:282:26:282:26 | w | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:282:26:282:36 | w.extract() | | associated_types.rs:16:1:17:10 | S3 | | associated_types.rs:290:26:290:26 | x | | associated_types.rs:290:23:290:23 | T | | associated_types.rs:293:5:295:5 | { ... } | | {EXTERNAL LOCATION} | () | | associated_types.rs:294:13:294:14 | _a | | {EXTERNAL LOCATION} | char | @@ -5271,17 +5309,25 @@ inferType | associated_types.rs:462:13:462:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | | associated_types.rs:466:33:466:36 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:466:33:466:36 | item | TRef | associated_types.rs:466:20:466:30 | T | +| associated_types.rs:466:56:468:5 | { ... } | | associated_types.rs:466:20:466:30 | T::Output[GetSet] | | associated_types.rs:467:9:467:12 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:467:9:467:12 | item | TRef | associated_types.rs:466:20:466:30 | T | +| associated_types.rs:467:9:467:26 | item.get_content() | | associated_types.rs:466:20:466:30 | T::Output[GetSet] | | associated_types.rs:470:35:470:38 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:470:35:470:38 | item | TRef | associated_types.rs:470:21:470:32 | T | +| associated_types.rs:470:45:470:46 | c1 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | +| associated_types.rs:470:60:470:61 | c2 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | +| associated_types.rs:470:75:470:76 | c3 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | | associated_types.rs:470:90:473:5 | { ... } | | {EXTERNAL LOCATION} | () | | associated_types.rs:471:9:471:12 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:471:9:471:12 | item | TRef | associated_types.rs:470:21:470:32 | T | | associated_types.rs:471:9:471:20 | item.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:471:18:471:19 | c1 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | | associated_types.rs:472:9:472:12 | item | | {EXTERNAL LOCATION} | & | | associated_types.rs:472:9:472:12 | item | TRef | associated_types.rs:470:21:470:32 | T | | associated_types.rs:472:9:472:31 | item.insert_two(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:472:25:472:26 | c2 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | +| associated_types.rs:472:29:472:30 | c3 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | | associated_types.rs:475:19:484:5 | { ... } | | {EXTERNAL LOCATION} | () | | associated_types.rs:476:13:476:17 | item1 | | associated_types.rs:430:5:430:24 | MyType | | associated_types.rs:476:13:476:17 | item1 | T | {EXTERNAL LOCATION} | i64 | @@ -6110,6 +6156,7 @@ inferType | closure.rs:147:9:147:9 | f | A | {EXTERNAL LOCATION} | Global | | closure.rs:147:9:147:9 | f | T | closure.rs:146:26:146:51 | F | | closure.rs:147:9:147:14 | f(...) | | closure.rs:146:23:146:23 | B | +| closure.rs:147:9:147:14 | f(...) | | {EXTERNAL LOCATION} | F::Output[FnOnce] | | closure.rs:147:11:147:13 | arg | | closure.rs:146:20:146:20 | A | | closure.rs:150:30:150:30 | f | | {EXTERNAL LOCATION} | Box | | closure.rs:150:30:150:30 | f | A | {EXTERNAL LOCATION} | Global | @@ -8952,9 +8999,11 @@ inferType | main.rs:1198:26:1198:32 | "Hello" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1198:26:1198:44 | "Hello".to_string() | | {EXTERNAL LOCATION} | String | | main.rs:1202:13:1202:13 | u | | {EXTERNAL LOCATION} | Result | +| main.rs:1202:13:1202:13 | u | E | {EXTERNAL LOCATION} | ParseIntError | | main.rs:1202:13:1202:13 | u | T | {EXTERNAL LOCATION} | u32 | | main.rs:1202:17:1202:18 | x9 | | {EXTERNAL LOCATION} | String | | main.rs:1202:17:1202:33 | x9.parse() | | {EXTERNAL LOCATION} | Result | +| main.rs:1202:17:1202:33 | x9.parse() | E | {EXTERNAL LOCATION} | ParseIntError | | main.rs:1202:17:1202:33 | x9.parse() | T | {EXTERNAL LOCATION} | u32 | | main.rs:1204:13:1204:20 | my_thing | | {EXTERNAL LOCATION} | & | | main.rs:1204:13:1204:20 | my_thing | TRef | main.rs:1126:5:1129:5 | MyInt | @@ -9404,6 +9453,7 @@ inferType | main.rs:1412:17:1412:20 | self | TRef.TSlice | main.rs:1410:14:1410:23 | T | | main.rs:1412:17:1412:27 | self.get(...) | | {EXTERNAL LOCATION} | Option | | main.rs:1412:17:1412:27 | self.get(...) | T | {EXTERNAL LOCATION} | & | +| main.rs:1412:17:1412:27 | self.get(...) | T.TRef | main.rs:1410:14:1410:23 | T | | main.rs:1412:17:1412:36 | ... .unwrap() | | {EXTERNAL LOCATION} | & | | main.rs:1412:17:1412:36 | ... .unwrap() | TRef | main.rs:1410:14:1410:23 | T | | main.rs:1412:26:1412:26 | 0 | | {EXTERNAL LOCATION} | i32 | @@ -10049,7 +10099,9 @@ inferType | main.rs:1726:44:1726:50 | other.y | | {EXTERNAL LOCATION} | i64 | | main.rs:1730:26:1730:26 | a | | main.rs:1730:18:1730:23 | T | | main.rs:1730:32:1730:32 | b | | main.rs:1730:18:1730:23 | T | +| main.rs:1730:51:1732:5 | { ... } | | main.rs:1730:18:1730:23 | T::Output[Add] | | main.rs:1731:9:1731:9 | a | | main.rs:1730:18:1730:23 | T | +| main.rs:1731:9:1731:13 | ... + ... | | main.rs:1730:18:1730:23 | T::Output[Add] | | main.rs:1731:13:1731:13 | b | | main.rs:1730:18:1730:23 | T | | main.rs:1734:16:1865:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1738:13:1738:18 | i64_eq | | {EXTERNAL LOCATION} | bool | @@ -10102,6 +10154,8 @@ inferType | main.rs:1750:23:1750:27 | 21i64 | | {EXTERNAL LOCATION} | i64 | | main.rs:1750:23:1750:35 | ... % ... | | {EXTERNAL LOCATION} | i64 | | main.rs:1750:31:1750:35 | 22i64 | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:13:1751:25 | i64_param_add | | {EXTERNAL LOCATION} | i64 | +| main.rs:1751:29:1751:49 | param_add(...) | | {EXTERNAL LOCATION} | i64 | | main.rs:1751:39:1751:42 | 1i64 | | {EXTERNAL LOCATION} | i64 | | main.rs:1751:45:1751:48 | 2i64 | | {EXTERNAL LOCATION} | i64 | | main.rs:1754:17:1754:30 | i64_add_assign | | {EXTERNAL LOCATION} | i64 | @@ -10536,6 +10590,7 @@ inferType | main.rs:2032:56:2034:9 | { ... } | | {EXTERNAL LOCATION} | & | | main.rs:2032:56:2034:9 | { ... } | TRef | main.rs:2028:10:2028:10 | T | | main.rs:2033:13:2033:29 | &... | | {EXTERNAL LOCATION} | & | +| main.rs:2033:13:2033:29 | &... | TRef | {EXTERNAL LOCATION} | u8 | | main.rs:2033:13:2033:29 | &... | TRef | main.rs:2028:10:2028:10 | T | | main.rs:2033:14:2033:17 | self | | {EXTERNAL LOCATION} | & | | main.rs:2033:14:2033:17 | self | TRef | main.rs:2013:5:2016:5 | MyVec | @@ -10543,6 +10598,7 @@ inferType | main.rs:2033:14:2033:22 | self.data | | {EXTERNAL LOCATION} | Vec | | main.rs:2033:14:2033:22 | self.data | A | {EXTERNAL LOCATION} | Global | | main.rs:2033:14:2033:22 | self.data | T | main.rs:2028:10:2028:10 | T | +| main.rs:2033:14:2033:29 | ...[index] | | {EXTERNAL LOCATION} | u8 | | main.rs:2033:14:2033:29 | ...[index] | | main.rs:2028:10:2028:10 | T | | main.rs:2033:24:2033:28 | index | | {EXTERNAL LOCATION} | usize | | main.rs:2037:22:2037:26 | slice | | {EXTERNAL LOCATION} | & | @@ -10558,7 +10614,9 @@ inferType | main.rs:2038:23:2038:23 | 0 | | {EXTERNAL LOCATION} | i32 | | main.rs:2041:37:2041:37 | a | | main.rs:2041:20:2041:34 | T | | main.rs:2041:43:2041:43 | b | | {EXTERNAL LOCATION} | usize | +| main.rs:2044:5:2046:5 | { ... } | | main.rs:2041:20:2041:34 | T::Output[Index] | | main.rs:2045:9:2045:9 | a | | main.rs:2041:20:2041:34 | T | +| main.rs:2045:9:2045:12 | a[b] | | main.rs:2041:20:2041:34 | T::Output[Index] | | main.rs:2045:11:2045:11 | b | | {EXTERNAL LOCATION} | usize | | main.rs:2048:16:2059:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2049:17:2049:19 | vec | | main.rs:2013:5:2016:5 | MyVec | @@ -10586,6 +10644,8 @@ inferType | main.rs:2054:17:2054:21 | xs[0] | | main.rs:2004:5:2005:13 | S | | main.rs:2054:17:2054:27 | ... .foo() | | main.rs:2004:5:2005:13 | S | | main.rs:2054:20:2054:20 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2056:13:2056:13 | y | | main.rs:2004:5:2005:13 | S | +| main.rs:2056:17:2056:35 | param_index(...) | | main.rs:2004:5:2005:13 | S | | main.rs:2056:29:2056:31 | vec | | main.rs:2013:5:2016:5 | MyVec | | main.rs:2056:29:2056:31 | vec | T | main.rs:2004:5:2005:13 | S | | main.rs:2056:34:2056:34 | 0 | | {EXTERNAL LOCATION} | i32 | @@ -10637,8 +10697,11 @@ inferType | main.rs:2113:25:2113:29 | other | | main.rs:2107:5:2107:19 | S | | main.rs:2113:25:2113:29 | other | T | main.rs:2109:10:2109:17 | T | | main.rs:2113:54:2115:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2113:54:2115:9 | { ... } | T | main.rs:2109:10:2109:17 | T::Output[MyAdd] | | main.rs:2114:13:2114:39 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2114:13:2114:39 | S(...) | T | main.rs:2109:10:2109:17 | T::Output[MyAdd] | | main.rs:2114:15:2114:22 | (...) | | main.rs:2109:10:2109:17 | T | +| main.rs:2114:15:2114:38 | ... .my_add(...) | | main.rs:2109:10:2109:17 | T::Output[MyAdd] | | main.rs:2114:16:2114:19 | self | | main.rs:2107:5:2107:19 | S | | main.rs:2114:16:2114:19 | self | T | main.rs:2109:10:2109:17 | T | | main.rs:2114:16:2114:21 | self.0 | | main.rs:2109:10:2109:17 | T | @@ -10649,8 +10712,11 @@ inferType | main.rs:2122:19:2122:22 | SelfParam | T | main.rs:2118:10:2118:17 | T | | main.rs:2122:25:2122:29 | other | | main.rs:2118:10:2118:17 | T | | main.rs:2122:51:2124:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2122:51:2124:9 | { ... } | T | main.rs:2118:10:2118:17 | T::Output[MyAdd] | | main.rs:2123:13:2123:37 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2123:13:2123:37 | S(...) | T | main.rs:2118:10:2118:17 | T::Output[MyAdd] | | main.rs:2123:15:2123:22 | (...) | | main.rs:2118:10:2118:17 | T | +| main.rs:2123:15:2123:36 | ... .my_add(...) | | main.rs:2118:10:2118:17 | T::Output[MyAdd] | | main.rs:2123:16:2123:19 | self | | main.rs:2107:5:2107:19 | S | | main.rs:2123:16:2123:19 | self | T | main.rs:2118:10:2118:17 | T | | main.rs:2123:16:2123:21 | self.0 | | main.rs:2118:10:2118:17 | T | @@ -10660,8 +10726,11 @@ inferType | main.rs:2134:25:2134:29 | other | | {EXTERNAL LOCATION} | & | | main.rs:2134:25:2134:29 | other | TRef | main.rs:2127:14:2127:14 | T | | main.rs:2134:55:2136:9 | { ... } | | main.rs:2107:5:2107:19 | S | +| main.rs:2134:55:2136:9 | { ... } | T | main.rs:2127:14:2127:14 | T::Output[MyAdd] | | main.rs:2135:13:2135:37 | S(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2135:13:2135:37 | S(...) | T | main.rs:2127:14:2127:14 | T::Output[MyAdd] | | main.rs:2135:15:2135:22 | (...) | | main.rs:2127:14:2127:14 | T | +| main.rs:2135:15:2135:36 | ... .my_add(...) | | main.rs:2127:14:2127:14 | T::Output[MyAdd] | | main.rs:2135:16:2135:19 | self | | main.rs:2107:5:2107:19 | S | | main.rs:2135:16:2135:19 | self | T | main.rs:2127:14:2127:14 | T | | main.rs:2135:16:2135:21 | self.0 | | main.rs:2127:14:2127:14 | T | @@ -10736,6 +10805,11 @@ inferType | main.rs:2223:9:2223:15 | S(...) | | main.rs:2107:5:2107:19 | S | | main.rs:2223:9:2223:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | | main.rs:2223:9:2223:31 | ... .my_add(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2223:9:2223:31 | ... .my_add(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2223:9:2223:31 | ... .my_add(...) | T | main.rs:2107:5:2107:19 | S | +| main.rs:2223:9:2223:31 | ... .my_add(...) | T.T | main.rs:2109:10:2109:17 | T::Output[MyAdd] | +| main.rs:2223:9:2223:31 | ... .my_add(...) | T.T | main.rs:2118:10:2118:17 | T::Output[MyAdd] | +| main.rs:2223:9:2223:31 | ... .my_add(...) | T.T | main.rs:2127:14:2127:14 | T::Output[MyAdd] | | main.rs:2223:11:2223:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | | main.rs:2223:24:2223:30 | S(...) | | main.rs:2107:5:2107:19 | S | | main.rs:2223:24:2223:30 | S(...) | T | {EXTERNAL LOCATION} | i64 | @@ -10743,11 +10817,13 @@ inferType | main.rs:2224:9:2224:15 | S(...) | | main.rs:2107:5:2107:19 | S | | main.rs:2224:9:2224:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | | main.rs:2224:9:2224:28 | ... .my_add(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2224:9:2224:28 | ... .my_add(...) | T | {EXTERNAL LOCATION} | i64 | | main.rs:2224:11:2224:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | | main.rs:2224:24:2224:27 | 3i64 | | {EXTERNAL LOCATION} | i64 | | main.rs:2225:9:2225:15 | S(...) | | main.rs:2107:5:2107:19 | S | | main.rs:2225:9:2225:15 | S(...) | T | {EXTERNAL LOCATION} | i64 | | main.rs:2225:9:2225:29 | ... .my_add(...) | | main.rs:2107:5:2107:19 | S | +| main.rs:2225:9:2225:29 | ... .my_add(...) | T | {EXTERNAL LOCATION} | i64 | | main.rs:2225:11:2225:14 | 1i64 | | {EXTERNAL LOCATION} | i64 | | main.rs:2225:24:2225:28 | &3i64 | | {EXTERNAL LOCATION} | & | | main.rs:2225:24:2225:28 | &3i64 | TRef | {EXTERNAL LOCATION} | i64 | @@ -10908,6 +10984,7 @@ inferType | main.rs:2278:19:2278:26 | strings1 | TArray.TRef | {EXTERNAL LOCATION} | str | | main.rs:2278:28:2278:29 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2279:9:2279:33 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2279:13:2279:13 | s | | {EXTERNAL LOCATION} | I::Item[Iterator] | | main.rs:2279:13:2279:13 | s | | {EXTERNAL LOCATION} | &mut | | main.rs:2279:13:2279:13 | s | TRefMut | {EXTERNAL LOCATION} | & | | main.rs:2279:13:2279:13 | s | TRefMut.TRef | {EXTERNAL LOCATION} | str | From a033057d90f7b4d729e860a4c0bc39a5c884b998 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Mon, 9 Feb 2026 14:57:42 +0100 Subject: [PATCH 363/433] Rust: Fix a bad join --- .../internal/typeinference/TypeInference.qll | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index 74ee0b220e03..aca32d05260c 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -274,20 +274,21 @@ private class FunctionDeclaration extends Function { this = i.asSome().getAnAssocItem() } + TypeParam getTypeParam(ImplOrTraitItemNodeOption i) { + i = parent and + result = [this.getGenericParamList().getATypeParam(), i.asSome().getTypeParam(_)] + } + TypeParameter getTypeParameter(ImplOrTraitItemNodeOption i, TypeParameterPosition ppos) { + typeParamMatchPosition(this.getTypeParam(i), result, ppos) + or + // For every `TypeParam` of this function, any associated types accessed on + // the type parameter are also type parameters. + ppos.isImplicit() and + result.(TypeParamAssociatedTypeTypeParameter).getTypeParam() = this.getTypeParam(i) + or i = parent and ( - exists(TypeParam tp | - tp = [this.getGenericParamList().getATypeParam(), i.asSome().getTypeParam(_)] - | - typeParamMatchPosition(tp, result, ppos) - or - // If `tp` is a type parameter for this function, then any associated - // types accessed on `tp` are also type parameters. - ppos.isImplicit() and - result.(TypeParamAssociatedTypeTypeParameter).getTypeParam() = tp - ) - or ppos.isImplicit() and result = TSelfTypeParameter(i.asSome()) or ppos.isImplicit() and result.(AssociatedTypeTypeParameter).getTrait() = i.asSome() From 5634395a3205f77b213e71a63ae7d05c512cc475 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 10 Feb 2026 10:38:16 +0100 Subject: [PATCH 364/433] Rust: Speedup type inference for `Trait::function()` calls --- .../internal/typeinference/TypeInference.qll | 118 +++++++++++++----- 1 file changed, 90 insertions(+), 28 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index e7e4bbb717cb..4c905e89aea0 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -2669,6 +2669,21 @@ private predicate inferMethodCallType = * "calls" to tuple variants and tuple structs. */ private module NonMethodResolution { + pragma[nomagic] + private predicate traitFunctionResolutionDependsOnArgument0( + TraitItemNode trait, NonMethodFunction traitFunction, FunctionPosition pos, ImplItemNode impl, + NonMethodFunction implFunction, TypePath path, TypeParameter traitTp + ) { + implFunction = impl.getAnAssocItem() and + implFunction.implements(traitFunction) and + FunctionOverloading::traitTypeParameterOccurrence(trait, traitFunction, _, pos, path, traitTp) and + ( + traitTp = TSelfTypeParameter(trait) + or + FunctionOverloading::functionResolutionDependsOnArgument(impl, implFunction, traitTp, pos) + ) + } + /** * Holds if resolving the function `implFunction` in `impl` requires inspecting * the type of applied _arguments_ or possibly knowing the return type. @@ -2685,13 +2700,44 @@ private module NonMethodResolution { TraitItemNode trait, NonMethodFunction traitFunction, FunctionPosition pos, ImplItemNode impl, NonMethodFunction implFunction, TypePath path, TypeParameter traitTp ) { - implFunction = impl.getAnAssocItem() and - implFunction.implements(traitFunction) and - FunctionOverloading::traitTypeParameterOccurrence(trait, traitFunction, _, pos, path, traitTp) and - ( - traitTp = TSelfTypeParameter(trait) + traitFunctionResolutionDependsOnArgument0(trait, traitFunction, pos, impl, implFunction, path, + traitTp) and + // Exclude functions where we cannot resolve all relevant type mentions; this allows + // for blanket implementations to be applied in those cases + forall(TypeParameter traitTp0 | + traitFunctionResolutionDependsOnArgument0(trait, traitFunction, _, impl, implFunction, _, + traitTp0) + | + exists(FunctionPosition pos0, TypePath path0 | + traitFunctionResolutionDependsOnArgument0(trait, traitFunction, pos0, impl, implFunction, + path0, traitTp0) and + exists(getAssocFunctionTypeInclNonMethodSelfAt(implFunction, impl, pos0, path0)) + ) + ) + } + + /** + * Holds if `f` inside `i` either implements trait function `traitFunction` inside `trait` + * or is equal to `traitFunction`, and the type of `f` at `pos` and `path` is `t`, which + * corresponds to the `Self` type parameter of `trait`. + */ + pragma[nomagic] + private predicate traitFunctionHasSelfType( + TraitItemNode trait, NonMethodFunction traitFunction, FunctionPosition pos, TypePath path, + Type t, ImplOrTraitItemNode i, NonMethodFunction f + ) { + exists(ImplItemNode impl, NonMethodFunction implFunction, AssocFunctionType aft | + traitFunctionResolutionDependsOnArgument(trait, traitFunction, pos, impl, implFunction, path, + TSelfTypeParameter(trait)) and + aft.appliesTo(f, i, pos) and + t = aft.getTypeAt(path) + | + i = trait and + f = traitFunction or - FunctionOverloading::functionResolutionDependsOnArgument(impl, implFunction, traitTp, pos) + i = impl and + f = implFunction and + not BlanketImplementation::isBlanketLike(i, _, _) ) } @@ -2848,10 +2894,25 @@ private module NonMethodResolution { predicate hasNoCompatibleNonBlanketTarget() { this.resolveCallTargetBlanketLikeCand(_, _, _, _) and not exists(this.resolveCallTargetViaPathResolution()) and - forall(ImplOrTraitItemNode i, Function f | - this.(NonMethodArgsAreInstantiationsOfNonBlanketInput::Call).hasTargetCand(i, f) - | + forall(ImplOrTraitItemNode i, Function f | f = this.resolveCallTargetNonBlanketCand(i) | NonMethodArgsAreInstantiationsOfNonBlanket::argsAreNotInstantiationsOf(this, i, f) + ) and + ( + not this.hasTraitResolved(_, _) + or + exists( + TraitItemNode trait, NonMethodFunction resolved, FunctionPosition pos, TypePath path, + Type t + | + this.(NonMethodArgsAreInstantiationsOfNonBlanketInput::Call) + .hasTraitResolvedSelfType(trait, resolved, pos, path, t) + | + forall(ImplOrTraitItemNode i, Function f | + traitFunctionHasSelfType(trait, resolved, pos, path, t, i, f) + | + NonMethodArgsAreInstantiationsOfNonBlanket::argsAreNotInstantiationsOf(this, i, f) + ) + ) ) } @@ -2994,29 +3055,30 @@ private module NonMethodResolution { result = getArgType(this, pos, path, _) } + /** + * Holds if this call is of the form `Trait::function(args)`, and the type at `pos` and + * `path` matches the `Self` type parameter of `Trait`. + */ + pragma[nomagic] + predicate hasTraitResolvedSelfType( + TraitItemNode trait, NonMethodFunction function, FunctionPosition pos, TypePath path, Type t + ) { + this.hasTraitResolved(trait, function) and + FunctionOverloading::traitTypeParameterOccurrence(trait, function, _, pos, path, + TSelfTypeParameter(trait)) and + t = substituteLookupTraits(this.getArgType(pos, path)) and + t != TUnknownType() + } + predicate hasTargetCand(ImplOrTraitItemNode i, Function f) { f = this.resolveCallTargetNonBlanketCand(i) or - exists(TraitItemNode trait, NonMethodFunction resolved, ImplItemNode i1, Function f1 | - this.hasTraitResolved(trait, resolved) and - traitFunctionResolutionDependsOnArgument(trait, resolved, _, i1, f1, _, _) and - not BlanketImplementation::isBlanketLike(i, _, _) + exists( + TraitItemNode trait, NonMethodFunction resolved, FunctionPosition pos, TypePath path, + Type t | - f = resolved and - i = trait - or - f = f1 and - i = i1 and - // Exclude functions where we cannot resolve all relevant type mentions; this allows - // for blanket implementations to be applied in those cases - forall(TypeParameter traitTp | - traitFunctionResolutionDependsOnArgument(trait, resolved, _, i1, f1, _, traitTp) - | - exists(FunctionPosition pos, TypePath path | - traitFunctionResolutionDependsOnArgument(trait, resolved, pos, i1, f1, path, traitTp) and - exists(getAssocFunctionTypeInclNonMethodSelfAt(f, i, pos, path)) - ) - ) + this.hasTraitResolvedSelfType(trait, resolved, pos, path, t) and + traitFunctionHasSelfType(trait, resolved, pos, path, t, i, f) ) } } From 518fb44a9289ba5a3aeb2b5e84e4cb39be2883ea Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Tue, 10 Feb 2026 10:01:38 +0000 Subject: [PATCH 365/433] Go: Bump toolchain to `1.25.7` --- MODULE.bazel | 4 ++-- go/actions/test/action.yml | 2 +- go/extractor/go.mod | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index b24546d4a3c1..4d1ba916ec11 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -254,11 +254,11 @@ use_repo( ) go_sdk = use_extension("@rules_go//go:extensions.bzl", "go_sdk") -go_sdk.download(version = "1.25.0") +go_sdk.download(version = "1.25.7") go_deps = use_extension("@gazelle//:extensions.bzl", "go_deps") go_deps.from_file(go_mod = "//go/extractor:go.mod") -use_repo(go_deps, "org_golang_x_mod", "org_golang_x_tools") +use_repo(go_deps, "com_github_stretchr_testify", "org_golang_x_mod", "org_golang_x_tools") ripunzip_archive = use_repo_rule("//misc/ripunzip:ripunzip.bzl", "ripunzip_archive") diff --git a/go/actions/test/action.yml b/go/actions/test/action.yml index d64142115f01..bc9535cda108 100644 --- a/go/actions/test/action.yml +++ b/go/actions/test/action.yml @@ -4,7 +4,7 @@ inputs: go-test-version: description: Which Go version to use for running the tests required: false - default: "~1.25.0" + default: "~1.25.7" run-code-checks: description: Whether to run formatting, code and qhelp generation checks required: false diff --git a/go/extractor/go.mod b/go/extractor/go.mod index a94af1a7e9ba..49636d046a62 100644 --- a/go/extractor/go.mod +++ b/go/extractor/go.mod @@ -2,7 +2,7 @@ module github.com/github/codeql-go/extractor go 1.25 -toolchain go1.25.0 +toolchain go1.25.7 // when updating this, run // bazel run @rules_go//go -- mod tidy From 55e5bc4970461e0b4dd6bef4da3eefe38917dad8 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 10 Feb 2026 11:25:42 +0100 Subject: [PATCH 366/433] Rust: Add `telemtry` tags to queries --- rust/ql/src/queries/summary/NodesWithTypeAtLengthLimit.ql | 2 +- rust/ql/src/queries/summary/QuerySinkCounts.ql | 2 +- rust/ql/src/queries/summary/SummaryStats.ql | 2 +- rust/ql/src/queries/summary/SummaryStatsReduced.ql | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/rust/ql/src/queries/summary/NodesWithTypeAtLengthLimit.ql b/rust/ql/src/queries/summary/NodesWithTypeAtLengthLimit.ql index 135bb8098ca1..d8f772b01a64 100644 --- a/rust/ql/src/queries/summary/NodesWithTypeAtLengthLimit.ql +++ b/rust/ql/src/queries/summary/NodesWithTypeAtLengthLimit.ql @@ -3,7 +3,7 @@ * @description Counts the number of AST nodes with a type at the type path length limit. * @kind metric * @id rust/summary/nodes-at-type-path-length-limit - * @tags summary + * @tags summary telemetry */ import rust diff --git a/rust/ql/src/queries/summary/QuerySinkCounts.ql b/rust/ql/src/queries/summary/QuerySinkCounts.ql index ed1c6bee3900..2072dcb342d4 100644 --- a/rust/ql/src/queries/summary/QuerySinkCounts.ql +++ b/rust/ql/src/queries/summary/QuerySinkCounts.ql @@ -5,7 +5,7 @@ * operations are excluded. * @kind metric * @id rust/summary/query-sink-counts - * @tags summary + * @tags summary telemetry */ import rust diff --git a/rust/ql/src/queries/summary/SummaryStats.ql b/rust/ql/src/queries/summary/SummaryStats.ql index 515c78c7268c..47a2c91a9eda 100644 --- a/rust/ql/src/queries/summary/SummaryStats.ql +++ b/rust/ql/src/queries/summary/SummaryStats.ql @@ -3,7 +3,7 @@ * @description A table of summary statistics about a database. * @kind metric * @id rust/summary/summary-statistics - * @tags summary + * @tags summary telemetry */ import rust diff --git a/rust/ql/src/queries/summary/SummaryStatsReduced.ql b/rust/ql/src/queries/summary/SummaryStatsReduced.ql index 47669f9da589..19b36b9224b7 100644 --- a/rust/ql/src/queries/summary/SummaryStatsReduced.ql +++ b/rust/ql/src/queries/summary/SummaryStatsReduced.ql @@ -4,7 +4,7 @@ * has been found to be noisy on tests removed. * @kind metric * @id rust/summary/reduced-summary-statistics - * @tags summary + * @tags summary telemetry */ import rust From 25b836b1b5cfc579edca54e322bf729564731c9c Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Tue, 10 Feb 2026 13:12:53 +0100 Subject: [PATCH 367/433] C#: Apply suggestions from code review Co-authored-by: Tom Hvitved --- .../178a7e6cf335486d33d4e49543148e3f57f04a9a/upgrade.properties | 2 +- .../68b5aec54e50fe7e375df3777b756a746ca3a37c/upgrade.properties | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/upgrade.properties b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/upgrade.properties index 89034aaf132e..50b000605102 100644 --- a/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/upgrade.properties +++ b/csharp/downgrades/178a7e6cf335486d33d4e49543148e3f57f04a9a/upgrade.properties @@ -1,3 +1,3 @@ -description: Remove the relation extension_receiver_type and remove the extension_type type kind. +description: Remove the relation `extension_receiver_type` and remove the `extension_type` type kind. compatibility: backwards extension_receiver_type.rel: delete diff --git a/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/upgrade.properties b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/upgrade.properties index 96953ab23532..2d18dccf06cd 100644 --- a/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/upgrade.properties +++ b/csharp/ql/lib/upgrades/68b5aec54e50fe7e375df3777b756a746ca3a37c/upgrade.properties @@ -1,2 +1,2 @@ -description: Add the elation extension_receiver_type and add the extension_type type kind. +description: Add the relation `extension_receiver_type` and add the `extension_type` type kind. compatibility: full From 5116b0c1e5710057b4e8694c3e858e29494f3e23 Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Tue, 10 Feb 2026 14:02:48 +0100 Subject: [PATCH 368/433] Java: Add delayed deprecation annotation. --- java/ql/lib/semmle/code/java/Statement.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/ql/lib/semmle/code/java/Statement.qll b/java/ql/lib/semmle/code/java/Statement.qll index 942f5283039e..4366334dfbdc 100644 --- a/java/ql/lib/semmle/code/java/Statement.qll +++ b/java/ql/lib/semmle/code/java/Statement.qll @@ -646,7 +646,7 @@ class ReturnStmt extends Stmt, @returnstmt { * * Gets the expression returned by this `return` statement, if any. */ - Expr getResult() { result.getParent() = this } + deprecated Expr getResult() { result.getParent() = this } /** Gets the expression returned by this `return` statement, if any. */ Expr getExpr() { result.getParent() = this } From 564a3bd4440b01e271d07ce513309c4dd0100833 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 10 Feb 2026 15:30:56 +0100 Subject: [PATCH 369/433] Rust: Simplify `inferMethodCallTypeSelf` --- .../internal/typeinference/TypeInference.qll | 36 ++++++++++--------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index e7e4bbb717cb..4ed15a2683ef 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -2604,27 +2604,30 @@ private Type inferMethodCallTypeNonSelf(AstNode n, boolean isReturn, TypePath pa } /** - * Gets the type of `n` at `path` after applying `derefChain` and `borrow`, - * where `n` is the `self` argument of a method call. + * Gets the type of `n` at `path` after applying `derefChain`, where `n` is the + * `self` argument of a method call. * * The predicate recursively pops the head of `derefChain` until it becomes * empty, at which point the inferred type can be applied back to `n`. */ pragma[nomagic] -private Type inferMethodCallTypeSelf( - AstNode n, DerefChain derefChain, BorrowKind borrow, TypePath path -) { - exists(MethodCallMatchingInput::AccessPosition apos, string derefChainBorrow | - result = inferMethodCallType0(_, apos, n, derefChainBorrow, path) and +private Type inferMethodCallTypeSelf(AstNode n, DerefChain derefChain, TypePath path) { + exists( + MethodCallMatchingInput::AccessPosition apos, string derefChainBorrow, BorrowKind borrow, + TypePath path0 + | + result = inferMethodCallType0(_, apos, n, derefChainBorrow, path0) and apos.isSelf() and MethodCallMatchingInput::decodeDerefChainBorrow(derefChainBorrow, derefChain, borrow) - ) - or - // adjust for implicit borrow - exists(TypePath path0, BorrowKind borrow0 | - result = inferMethodCallTypeSelf(n, derefChain, borrow0, path0) and - path0.isCons(borrow0.getRefType().getPositionalTypeParameter(0), path) and - borrow.isNoBorrow() + | + borrow.isNoBorrow() and + path = path0 + or + // adjust for implicit borrow + exists(TypePath prefix | + prefix = TypePath::singleton(borrow.getRefType().getPositionalTypeParameter(0)) and + path0 = prefix.appendInverse(path) + ) ) or // adjust for implicit deref @@ -2632,9 +2635,8 @@ private Type inferMethodCallTypeSelf( DerefChain derefChain0, Type t0, TypePath path0, DerefImplItemNode impl, Type selfParamType, TypePath selfPath | - t0 = inferMethodCallTypeSelf(n, derefChain0, borrow, path0) and + t0 = inferMethodCallTypeSelf(n, derefChain0, path0) and derefChain0.isCons(impl, derefChain) and - borrow.isNoBorrow() and selfParamType = impl.resolveSelfTypeAt(selfPath) | result = selfParamType and @@ -2653,7 +2655,7 @@ private Type inferMethodCallTypeSelf( private Type inferMethodCallTypePreCheck(AstNode n, boolean isReturn, TypePath path) { result = inferMethodCallTypeNonSelf(n, isReturn, path) or - result = inferMethodCallTypeSelf(n, DerefChain::nil(), TNoBorrowKind(), path) and + result = inferMethodCallTypeSelf(n, DerefChain::nil(), path) and isReturn = false } From 49f24ca8ecff1c81b0a90b11e75fe2cc3d3526f2 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 10 Feb 2026 15:33:03 +0100 Subject: [PATCH 370/433] Rust: Avoid using `regexpCapture` with multiple capture groups --- .../internal/typeinference/TypeInference.qll | 8 +++---- shared/util/codeql/util/UnboundList.qll | 21 ++++++++++++------- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index 4ed15a2683ef..9a8f99a49b6e 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -2477,10 +2477,10 @@ private module MethodCallMatchingInput implements MatchingWithEnvironmentInputSi additional predicate decodeDerefChainBorrow( string derefChainBorrow, DerefChain derefChain, BorrowKind borrow ) { - exists(string regexp | - regexp = "^(.*);(.*)$" and - derefChain = derefChainBorrow.regexpCapture(regexp, 1) and - borrow.toString() = derefChainBorrow.regexpCapture(regexp, 2) + exists(int i | + i = derefChainBorrow.indexOf(";") and + derefChain = derefChainBorrow.prefix(i) and + borrow.toString() = derefChainBorrow.suffix(i + 1) ) } diff --git a/shared/util/codeql/util/UnboundList.qll b/shared/util/codeql/util/UnboundList.qll index 5cfe06d02ee3..79fac6506d6a 100644 --- a/shared/util/codeql/util/UnboundList.qll +++ b/shared/util/codeql/util/UnboundList.qll @@ -78,6 +78,9 @@ module Make Input> { /** Holds if this list is empty. */ predicate isEmpty() { this = "" } + bindingset[this] + private int stringLength() { result = super.length() } + /** Gets the length of this list. */ bindingset[this] pragma[inline_late] @@ -115,19 +118,23 @@ module Make Input> { /** Holds if this list starts with `e`, followed by `suffix`. */ bindingset[this] predicate isCons(Element e, UnboundList suffix) { - exists(string regexp | regexp = "^([0-9]+)\\.(.*)$" | - e = decode(this.regexpCapture(regexp, 1)) and - suffix = this.regexpCapture(regexp, 2) + exists(string elem | + // it is more efficient to not create a capture group for the suffix, since + // `regexpCapture` will then always join in both groups, only to afterwards filter + // based on the requested group (the group number is not part of the binding set + // of `regexpCapture`) + elem = this.regexpCapture("^([0-9]+)\\..*$", 1) and + e = decode(elem) and + suffix = this.suffix(elem.length() + 1) ) } /** Holds if this list starts with `prefix`, followed by `e`. */ bindingset[this] predicate isSnoc(UnboundList prefix, Element e) { - exists(string regexp | regexp = "^(|.+\\.)([0-9]+)\\.$" | - prefix = this.regexpCapture(regexp, 1) and - e = decode(this.regexpCapture(regexp, 2)) - ) + // same remark as above about not using multiple capture groups + prefix = this.regexpCapture("^(|.+\\.)[0-9]+\\.$", 1) and + e = decode(this.substring(prefix.stringLength(), this.stringLength() - 1)) } /** Gets the head of this list, if any. */ From f60d759a6593b30375fb9f39a643ff6615046400 Mon Sep 17 00:00:00 2001 From: Philip Ginsbach Date: Tue, 10 Feb 2026 14:52:57 +0000 Subject: [PATCH 371/433] Avoid non-trivially shadowing string.toString() Prepare libraries for a possible deprecation warning on shadowing string.toString(). These instanceof classes were using this.(Type).method() to call supertype methods, but super.method() is clearer and equivalent for instanceof supertypes. --- .../regex/nfa/ExponentialBackTracking.qll | 2 +- shared/regex/codeql/regex/nfa/NfaUtils.qll | 24 +++++++++---------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/shared/regex/codeql/regex/nfa/ExponentialBackTracking.qll b/shared/regex/codeql/regex/nfa/ExponentialBackTracking.qll index 23f764973715..116029c56a94 100644 --- a/shared/regex/codeql/regex/nfa/ExponentialBackTracking.qll +++ b/shared/regex/codeql/regex/nfa/ExponentialBackTracking.qll @@ -95,7 +95,7 @@ module Make { ) } - string toString() { result = this.(InfiniteRepetitionQuantifier).toString() } + string toString() { result = super.toString() } } /** diff --git a/shared/regex/codeql/regex/nfa/NfaUtils.qll b/shared/regex/codeql/regex/nfa/NfaUtils.qll index e1be49796e00..468cf7a3e963 100644 --- a/shared/regex/codeql/regex/nfa/NfaUtils.qll +++ b/shared/regex/codeql/regex/nfa/NfaUtils.qll @@ -104,11 +104,11 @@ module Make { private class RegexpCharacterConstant instanceof RegExpConstant { RegexpCharacterConstant() { this.isCharacter() } - string toString() { result = this.(RegExpConstant).toString() } + string toString() { result = super.toString() } - RegExpTerm getRootTerm() { result = this.(RegExpConstant).getRootTerm() } + RegExpTerm getRootTerm() { result = super.getRootTerm() } - string getValue() { result = this.(RegExpConstant).getValue() } + string getValue() { result = super.getValue() } } /** @@ -578,11 +578,11 @@ module Make { ) } - string toString() { result = this.(RegExpTerm).toString() } + string toString() { result = super.toString() } - RegExpTerm getAChild() { result = this.(RegExpTerm).getChild(_) } + RegExpTerm getAChild() { result = super.getChild(_) } - RegExpTerm getChild(int i) { result = this.(RegExpTerm).getChild(i) } + RegExpTerm getChild(int i) { result = super.getChild(i) } } /** @@ -601,11 +601,11 @@ module Make { ) } - string toString() { result = this.(RegExpTerm).toString() } + string toString() { result = super.toString() } - RegExpTerm getAChild() { result = this.(RegExpTerm).getAChild() } + RegExpTerm getAChild() { result = super.getAChild() } - RegExpTerm getChild(int i) { result = this.(RegExpTerm).getChild(i) } + RegExpTerm getChild(int i) { result = super.getChild(i) } } /** @@ -621,11 +621,11 @@ module Make { ) } - string toString() { result = this.(RegExpTerm).toString() } + string toString() { result = super.toString() } - RegExpTerm getAChild() { result = this.(RegExpTerm).getAChild() } + RegExpTerm getAChild() { result = super.getAChild() } - RegExpTerm getChild(int i) { result = this.(RegExpTerm).getChild(i) } + RegExpTerm getChild(int i) { result = super.getChild(i) } } /** From e00e3a87fff784fb8ca8f022e1758e7bf6b93eef Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Mon, 12 Jan 2026 13:24:07 +0100 Subject: [PATCH 372/433] Update Go version in tests to 1.26.0 --- MODULE.bazel | 2 +- go/actions/test/action.yml | 2 +- go/extractor/go.mod | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index 4d1ba916ec11..6ca3f10403ef 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -254,7 +254,7 @@ use_repo( ) go_sdk = use_extension("@rules_go//go:extensions.bzl", "go_sdk") -go_sdk.download(version = "1.25.7") +go_sdk.download(version = "1.26rc2") go_deps = use_extension("@gazelle//:extensions.bzl", "go_deps") go_deps.from_file(go_mod = "//go/extractor:go.mod") diff --git a/go/actions/test/action.yml b/go/actions/test/action.yml index bc9535cda108..211f2a2e24fd 100644 --- a/go/actions/test/action.yml +++ b/go/actions/test/action.yml @@ -4,7 +4,7 @@ inputs: go-test-version: description: Which Go version to use for running the tests required: false - default: "~1.25.7" + default: "1.26.0-rc.2" run-code-checks: description: Whether to run formatting, code and qhelp generation checks required: false diff --git a/go/extractor/go.mod b/go/extractor/go.mod index 49636d046a62..23b9fef81a4d 100644 --- a/go/extractor/go.mod +++ b/go/extractor/go.mod @@ -1,8 +1,8 @@ module github.com/github/codeql-go/extractor -go 1.25 +go 1.26 -toolchain go1.25.7 +toolchain go1.26rc2 // when updating this, run // bazel run @rules_go//go -- mod tidy From 50ed0af9daab1bcb05273a1b6333bf98f5595103 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Tue, 20 Jan 2026 21:01:43 +0100 Subject: [PATCH 373/433] Go: Bump `maxGoVersion` to 1.26 --- go/extractor/autobuilder/build-environment.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/extractor/autobuilder/build-environment.go b/go/extractor/autobuilder/build-environment.go index 0a4c7e2983b4..c660373205b2 100644 --- a/go/extractor/autobuilder/build-environment.go +++ b/go/extractor/autobuilder/build-environment.go @@ -12,7 +12,7 @@ import ( ) var minGoVersion = util.NewSemVer("1.11") -var maxGoVersion = util.NewSemVer("1.25") +var maxGoVersion = util.NewSemVer("1.26") type versionInfo struct { goModVersion util.SemVer // The version of Go found in the go directive in the `go.mod` file. From 22e9b42808f7aea4ce6dea1c92e71816b4c08a0a Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Tue, 20 Jan 2026 21:05:56 +0100 Subject: [PATCH 374/433] Go: Add change note --- go/ql/lib/change-notes/2026-01-20-go-version-1-26.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 go/ql/lib/change-notes/2026-01-20-go-version-1-26.md diff --git a/go/ql/lib/change-notes/2026-01-20-go-version-1-26.md b/go/ql/lib/change-notes/2026-01-20-go-version-1-26.md new file mode 100644 index 000000000000..97f022480c4c --- /dev/null +++ b/go/ql/lib/change-notes/2026-01-20-go-version-1-26.md @@ -0,0 +1,4 @@ +--- +category: majorAnalysis +--- +* Go 1.26 is now supported. From 700543b30bc5b5a3d8eacf713650bdc54ddded3e Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Tue, 20 Jan 2026 21:06:53 +0100 Subject: [PATCH 375/433] Go: Update supported versions to include 1.26 --- docs/codeql/reusables/supported-versions-compilers.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/codeql/reusables/supported-versions-compilers.rst b/docs/codeql/reusables/supported-versions-compilers.rst index fd937fe4ac02..6216bae08df3 100644 --- a/docs/codeql/reusables/supported-versions-compilers.rst +++ b/docs/codeql/reusables/supported-versions-compilers.rst @@ -17,7 +17,7 @@ .NET 5, .NET 6, .NET 7, .NET 8, .NET 9","``.sln``, ``.slnx``, ``.csproj``, ``.cs``, ``.cshtml``, ``.xaml``" GitHub Actions,"Not applicable",Not applicable,"``.github/workflows/*.yml``, ``.github/workflows/*.yaml``, ``**/action.yml``, ``**/action.yaml``" - Go (aka Golang), "Go up to 1.25", "Go 1.11 or more recent", ``.go`` + Go (aka Golang), "Go up to 1.26", "Go 1.11 or more recent", ``.go`` Java,"Java 7 to 25 [6]_","javac (OpenJDK and Oracle JDK), Eclipse compiler for Java (ECJ) [7]_",``.java`` From 26ef33212de6699a2f559cf3de87aac7a2f9e1f5 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Wed, 21 Jan 2026 12:07:59 +0000 Subject: [PATCH 376/433] Test builtins like standard library --- .../go/frameworks/StdlibTaintFlow/Builtin.go | 104 ++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Builtin.go diff --git a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Builtin.go b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Builtin.go new file mode 100644 index 000000000000..ca1ea9c932e0 --- /dev/null +++ b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Builtin.go @@ -0,0 +1,104 @@ +package main + +// Also tested in go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow +// and go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow. + +func TaintStepTest_Append1(sourceCQL interface{}) interface{} { + from := sourceCQL.([]byte) + var intoInterface interface{} + intoInterface = append(from, "a string"...) + return intoInterface +} + +func TaintStepTest_Append2(sourceCQL interface{}) interface{} { + from := sourceCQL.(int) + slice := []int{from} + var intoInterface []int + intoInterface = append(slice, 0) + return intoInterface[0] +} + +func TaintStepTest_Append3(sourceCQL interface{}) interface{} { + from := sourceCQL.(string) + var intoInterface interface{} + intoInterface = append([]byte{}, from...) + return intoInterface +} + +func TaintStepTest_Append4(sourceCQL interface{}) interface{} { + from := sourceCQL.(int) + var intoInterface []int + intoInterface = append([]int{}, 0, from, 1) + return intoInterface[0] +} + +func TaintStepTest_Copy1(sourceCQL interface{}) interface{} { + from := sourceCQL.(string) + var intoInterface []byte + copy(intoInterface, from) + return intoInterface +} + +func TaintStepTest_Copy2(sourceCQL interface{}) interface{} { + from := []int{sourceCQL.(int)} + var intoInterface []int + copy(intoInterface, from) + return intoInterface[0] +} + +func TaintStepTest_Max(sourceCQL interface{}) interface{} { + from := sourceCQL.(int) + var intoInterface int + intoInterface = max(0, 1, from, 2, 3) + return intoInterface +} + +func TaintStepTest_Min(sourceCQL interface{}) interface{} { + from := sourceCQL.(int) + var intoInterface int + intoInterface = min(0, 1, from, 2, 3) + return intoInterface +} + +func RunAllTaints_Builtin() { + { + source := newSource(0) + out := TaintStepTest_Append1(source) + sink(0, out) + } + { + source := newSource(1) + out := TaintStepTest_Append2(source) + sink(1, out) + } + { + source := newSource(2) + out := TaintStepTest_Append3(source) + sink(2, out) + } + { + source := newSource(3) + out := TaintStepTest_Append4(source) + sink(3, out) + } + { + source := newSource(4) + out := TaintStepTest_Copy1(source) + sink(4, out) + } + { + source := newSource(5) + out := TaintStepTest_Copy2(source) + sink(5, out) + } + { + source := newSource(3) + out := TaintStepTest_Max(source) + sink(3, out) + } + { + source := newSource(4) + out := TaintStepTest_Min(source) + sink(4, out) + } +} From 22e9c212d6709471b19c3a01b268796b9a870cc6 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Wed, 21 Jan 2026 14:33:34 +0000 Subject: [PATCH 377/433] Add failing tests for newly added functions --- .../dataflow/ExternalTaintFlow/completetest.expected | 2 ++ .../semmle/go/dataflow/ExternalTaintFlow/go.mod | 2 +- .../go/dataflow/ExternalTaintFlow/sinks.expected | 4 +++- .../go/dataflow/ExternalTaintFlow/srcs.expected | 2 +- .../semmle/go/dataflow/ExternalTaintFlow/test.go | 3 +++ .../dataflow/ExternalValueFlow/completetest.expected | 1 + .../semmle/go/dataflow/ExternalValueFlow/go.mod | 2 +- .../go/dataflow/ExternalValueFlow/sinks.expected | 4 +++- .../go/dataflow/ExternalValueFlow/srcs.expected | 2 +- .../semmle/go/dataflow/ExternalValueFlow/test.go | 3 +++ .../semmle/go/frameworks/StdlibTaintFlow/Builtin.go | 12 ++++++++++++ .../semmle/go/frameworks/StdlibTaintFlow/Bytes.go | 11 +++++++++++ .../semmle/go/frameworks/StdlibTaintFlow/Errors.go | 12 ++++++++++++ .../StdlibTaintFlow/StdlibTaintFlow.expected | 3 +++ .../semmle/go/frameworks/StdlibTaintFlow/go.mod | 2 +- 15 files changed, 58 insertions(+), 7 deletions(-) diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/completetest.expected b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/completetest.expected index 42831abaf155..3bac7ade44fc 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/completetest.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/completetest.expected @@ -1,2 +1,4 @@ invalidModelRow testFailures +| test.go:204:21:204:51 | comment | Missing result: hasTaintFlow="call to new" | +| test.go:205:21:205:55 | comment | Missing result: hasTaintFlow="star expression" | diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/go.mod b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/go.mod index f5b1162fa7a7..d5f2af3e7879 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/go.mod +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/go.mod @@ -1,5 +1,5 @@ module semmle.go.Packages -go 1.13 +go 1.26 require github.com/nonexistent/test v0.0.0-20200203000000-0000000000000 diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/sinks.expected b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/sinks.expected index b39135f827e3..e5966200370e 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/sinks.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/sinks.expected @@ -44,4 +44,6 @@ invalidModelRow | test.go:199:23:199:26 | arg2 | qltest | | test.go:199:29:199:32 | arg3 | qltest | | test.go:202:22:202:25 | temp | qltest | -| test.go:206:10:206:12 | src | qltest | +| test.go:204:10:204:17 | call to new | qltest | +| test.go:205:10:205:18 | star expression | qltest | +| test.go:209:10:209:12 | src | qltest | diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/srcs.expected b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/srcs.expected index f99ee92a4928..e04fcf753095 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/srcs.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/srcs.expected @@ -22,4 +22,4 @@ invalidModelRow | test.go:187:24:187:31 | call to Src1 | qltest | | test.go:191:24:191:31 | call to Src1 | qltest | | test.go:201:10:201:28 | selection of SourceVariable | qltest | -| test.go:205:15:205:17 | definition of src | qltest | +| test.go:208:15:208:17 | definition of src | qltest | diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/test.go b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/test.go index c9d732e74002..d244bc676aab 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/test.go +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/test.go @@ -200,6 +200,9 @@ func simpleflow() { temp := test.SourceVariable test.SinkVariable = temp // $ hasTaintFlow="temp" + + b.Sink1(new(src)) // $ hasTaintFlow="call to new" + b.Sink1(*new(src)) // $ hasTaintFlow="star expression" } func srcParam(src string, b test.B) { diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/completetest.expected b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/completetest.expected index 42831abaf155..98a43158672c 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/completetest.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/completetest.expected @@ -1,2 +1,3 @@ invalidModelRow testFailures +| test.go:213:21:213:55 | comment | Missing result: hasValueFlow="star expression" | diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/go.mod b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/go.mod index 57813acac558..d5f2af3e7879 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/go.mod +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/go.mod @@ -1,5 +1,5 @@ module semmle.go.Packages -go 1.21 +go 1.26 require github.com/nonexistent/test v0.0.0-20200203000000-0000000000000 diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/sinks.expected b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/sinks.expected index e7421a9ad147..f3fef94dfa6e 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/sinks.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/sinks.expected @@ -50,4 +50,6 @@ invalidModelRow | test.go:206:10:206:26 | call to min | qltest | | test.go:207:10:207:26 | call to min | qltest | | test.go:210:22:210:25 | temp | qltest | -| test.go:214:10:214:12 | src | qltest | +| test.go:212:10:212:17 | call to new | qltest | +| test.go:213:10:213:18 | star expression | qltest | +| test.go:217:10:217:12 | src | qltest | diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/srcs.expected b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/srcs.expected index 009238baa4d8..f5768d49d1b5 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/srcs.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/srcs.expected @@ -22,4 +22,4 @@ invalidModelRow | test.go:187:24:187:31 | call to Src1 | qltest | | test.go:191:24:191:31 | call to Src1 | qltest | | test.go:209:10:209:28 | selection of SourceVariable | qltest | -| test.go:213:15:213:17 | definition of src | qltest | +| test.go:216:15:216:17 | definition of src | qltest | diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/test.go b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/test.go index 3c172e6082d2..4e4b0527787c 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/test.go +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/test.go @@ -208,6 +208,9 @@ func simpleflow() { temp := test.SourceVariable test.SinkVariable = temp // $ hasValueFlow="temp" + + b.Sink1(new(src)) + b.Sink1(*new(src)) // $ hasValueFlow="star expression" } func srcParam(src string, b test.B) { diff --git a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Builtin.go b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Builtin.go index ca1ea9c932e0..f83dfa4ee23f 100644 --- a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Builtin.go +++ b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Builtin.go @@ -60,6 +60,13 @@ func TaintStepTest_Min(sourceCQL interface{}) interface{} { return intoInterface } +func TaintStepTest_New(sourceCQL interface{}) interface{} { + from := sourceCQL.(int) + var intoInterface *int + intoInterface = new(from) + return *intoInterface +} + func RunAllTaints_Builtin() { { source := newSource(0) @@ -101,4 +108,9 @@ func RunAllTaints_Builtin() { out := TaintStepTest_Min(source) sink(4, out) } + { + source := newSource(5) + out := TaintStepTest_New(source) + sink(5, out) + } } diff --git a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Bytes.go b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Bytes.go index 8e31c32aba4f..ac528c46267d 100644 --- a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Bytes.go +++ b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Bytes.go @@ -349,6 +349,12 @@ func TaintStepTest_CutSuffix(sourceCQL interface{}) interface{} { return result } +func TaintStepTest_BytesBufferPeek(sourceCQL interface{}) interface{} { + fromBuffer := sourceCQL.(bytes.Buffer) + intoByte, _ := fromBuffer.Peek(128) + return intoByte +} + func RunAllTaints_Bytes() { { source := newSource(0) @@ -625,4 +631,9 @@ func RunAllTaints_Bytes() { out := TaintStepTest_Clone(source) sink(54, out) } + { + source := newSource(55) + out := TaintStepTest_BytesBufferPeek(source) + sink(55, out) + } } diff --git a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Errors.go b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Errors.go index 324f1e36ae70..71b7f9441f81 100644 --- a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Errors.go +++ b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Errors.go @@ -35,6 +35,13 @@ func TaintStepTest_ErrorsJoin2(sourceCQL interface{}) interface{} { return intoError957 } +func TaintStepTest_ErrorsAsType(sourceCQL interface{}) interface{} { + fromError := sourceCQL.(error) + var intoInterface interface{} + intoInterface, _ = errors.AsType[error](fromError) + return intoInterface +} + func RunAllTaints_Errors() { { source := newSource(0) @@ -61,4 +68,9 @@ func RunAllTaints_Errors() { out := TaintStepTest_ErrorsJoin2(source) sink(4, out) } + { + source := newSource(5) + out := TaintStepTest_ErrorsAsType(source) + sink(5, out) + } } diff --git a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/StdlibTaintFlow.expected b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/StdlibTaintFlow.expected index e69de29bb2d1..cb7841d7c7be 100644 --- a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/StdlibTaintFlow.expected +++ b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/StdlibTaintFlow.expected @@ -0,0 +1,3 @@ +| Builtin.go:112:13:112:24 | call to newSource | No flow to its sink | +| Bytes.go:635:13:635:25 | call to newSource | No flow to its sink | +| Errors.go:72:13:72:24 | call to newSource | No flow to its sink | diff --git a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/go.mod b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/go.mod index 5ba39421f3b8..1a8220297f27 100644 --- a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/go.mod +++ b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/go.mod @@ -1,6 +1,6 @@ module example.com/m -go 1.24 +go 1.26 require ( golang.org/x/net v0.0.0-20201010224723-4f7140c49acb From e1bddd93651b4be0c2e3186db88777f93a0a2774 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Wed, 21 Jan 2026 14:35:10 +0000 Subject: [PATCH 378/433] Model newly added functions --- go/ql/lib/ext/builtin.model.yml | 1 + go/ql/lib/ext/bytes.model.yml | 1 + go/ql/lib/ext/errors.model.yml | 1 + .../semmle/go/dataflow/ExternalTaintFlow/completetest.expected | 2 -- .../semmle/go/dataflow/ExternalValueFlow/completetest.expected | 1 - .../go/frameworks/StdlibTaintFlow/StdlibTaintFlow.expected | 3 --- 6 files changed, 3 insertions(+), 6 deletions(-) diff --git a/go/ql/lib/ext/builtin.model.yml b/go/ql/lib/ext/builtin.model.yml index 816c89008a84..616e6bc23b01 100644 --- a/go/ql/lib/ext/builtin.model.yml +++ b/go/ql/lib/ext/builtin.model.yml @@ -11,3 +11,4 @@ extensions: - ["", "", False, "copy", "", "", "Argument[1].ArrayElement", "Argument[0].ArrayElement", "value", "manual"] - ["", "", False, "max", "", "", "Argument[0..1000]", "ReturnValue", "value", "manual"] - ["", "", False, "min", "", "", "Argument[0..1000]", "ReturnValue", "value", "manual"] + - ["", "", False, "new", "", "", "Argument[0]", "ReturnValue.Dereference", "value", "manual"] diff --git a/go/ql/lib/ext/bytes.model.yml b/go/ql/lib/ext/bytes.model.yml index 762d0ca16ee6..b55749f828bf 100644 --- a/go/ql/lib/ext/bytes.model.yml +++ b/go/ql/lib/ext/bytes.model.yml @@ -43,6 +43,7 @@ extensions: - ["bytes", "", False, "TrimSuffix", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["bytes", "Buffer", True, "Bytes", "", "", "Argument[receiver]", "ReturnValue", "taint", "manual"] - ["bytes", "Buffer", True, "Next", "", "", "Argument[receiver]", "ReturnValue", "taint", "manual"] + - ["bytes", "Buffer", True, "Peek", "", "", "Argument[receiver]", "ReturnValue[0]", "taint", "manual"] - ["bytes", "Buffer", True, "ReadBytes", "", "", "Argument[receiver]", "ReturnValue[0]", "taint", "manual"] - ["bytes", "Buffer", True, "ReadString", "", "", "Argument[receiver]", "ReturnValue[0]", "taint", "manual"] - ["bytes", "Reader", True, "Reset", "", "", "Argument[0]", "Argument[receiver]", "taint", "manual"] diff --git a/go/ql/lib/ext/errors.model.yml b/go/ql/lib/ext/errors.model.yml index a94c8e558ff4..36b17a49ee02 100644 --- a/go/ql/lib/ext/errors.model.yml +++ b/go/ql/lib/ext/errors.model.yml @@ -4,5 +4,6 @@ extensions: extensible: summaryModel data: - ["errors", "", False, "As", "", "", "Argument[0]", "Argument[1]", "taint", "manual"] + - ["errors", "", False, "AsType", "", "", "Argument[0]", "ReturnValue[0]", "taint", "manual"] - ["errors", "", False, "New", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] - ["errors", "", False, "Unwrap", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/completetest.expected b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/completetest.expected index 3bac7ade44fc..42831abaf155 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/completetest.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/completetest.expected @@ -1,4 +1,2 @@ invalidModelRow testFailures -| test.go:204:21:204:51 | comment | Missing result: hasTaintFlow="call to new" | -| test.go:205:21:205:55 | comment | Missing result: hasTaintFlow="star expression" | diff --git a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/completetest.expected b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/completetest.expected index 98a43158672c..42831abaf155 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/completetest.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/completetest.expected @@ -1,3 +1,2 @@ invalidModelRow testFailures -| test.go:213:21:213:55 | comment | Missing result: hasValueFlow="star expression" | diff --git a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/StdlibTaintFlow.expected b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/StdlibTaintFlow.expected index cb7841d7c7be..e69de29bb2d1 100644 --- a/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/StdlibTaintFlow.expected +++ b/go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/StdlibTaintFlow.expected @@ -1,3 +0,0 @@ -| Builtin.go:112:13:112:24 | call to newSource | No flow to its sink | -| Bytes.go:635:13:635:25 | call to newSource | No flow to its sink | -| Errors.go:72:13:72:24 | call to newSource | No flow to its sink | From 936c4cc79fb0ded9f272e37e92a9ac1220470c1f Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 22 Jan 2026 22:12:30 +0000 Subject: [PATCH 379/433] Fix edge case in MaD validation If the db contains no pointer types then we were getting spurious model validation errors. --- go/ql/lib/semmle/go/dataflow/ExternalFlow.qll | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll index 7467d6c1d6c0..388921224ad8 100644 --- a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll +++ b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll @@ -153,7 +153,10 @@ module ModelValidation { not part = "" and not (part = "Argument" and pred = "sink") and not parseArg(part, _) and - not part.getName() = "Field" + // If the database does not contain any fields/pointer types then no + // FieldContent/PointerContent exists, so we spuriously think that + // these spec components are invalid. + not part.getName() = ["Field", "Dereference"] or part = input.getToken(0) and parseParam(part, _) @@ -176,7 +179,10 @@ module ModelValidation { invalidSpecComponent(output, part) and not part = "" and not (part = ["Argument", "Parameter"] and pred = "source") and - not part.getName() = "Field" + // If the database does not contain any fields/pointer types then no + // FieldContent/PointerContent exists, so we spuriously think that + // these spec components are invalid. + not part.getName() = ["Field", "Dereference"] or invalidIndexComponent(output, part) ) and From f01d5840b0f963e606e767ebf186199cc1166eda Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com> Date: Tue, 10 Feb 2026 20:57:53 +0000 Subject: [PATCH 380/433] Update to 1.26.0 --- MODULE.bazel | 2 +- go/actions/test/action.yml | 2 +- go/extractor/go.mod | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index 6ca3f10403ef..9b326127ce7b 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -254,7 +254,7 @@ use_repo( ) go_sdk = use_extension("@rules_go//go:extensions.bzl", "go_sdk") -go_sdk.download(version = "1.26rc2") +go_sdk.download(version = "1.26.0") go_deps = use_extension("@gazelle//:extensions.bzl", "go_deps") go_deps.from_file(go_mod = "//go/extractor:go.mod") diff --git a/go/actions/test/action.yml b/go/actions/test/action.yml index 211f2a2e24fd..8e03b520df1a 100644 --- a/go/actions/test/action.yml +++ b/go/actions/test/action.yml @@ -4,7 +4,7 @@ inputs: go-test-version: description: Which Go version to use for running the tests required: false - default: "1.26.0-rc.2" + default: "1.26.0" run-code-checks: description: Whether to run formatting, code and qhelp generation checks required: false diff --git a/go/extractor/go.mod b/go/extractor/go.mod index 23b9fef81a4d..46d189d005e5 100644 --- a/go/extractor/go.mod +++ b/go/extractor/go.mod @@ -2,7 +2,7 @@ module github.com/github/codeql-go/extractor go 1.26 -toolchain go1.26rc2 +toolchain go1.26.0 // when updating this, run // bazel run @rules_go//go -- mod tidy From 542d4631d7654d29b90dedee130591850e66544e Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Tue, 10 Feb 2026 21:58:58 +0000 Subject: [PATCH 381/433] restore ~ in action.yml version --- go/actions/test/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/actions/test/action.yml b/go/actions/test/action.yml index 8e03b520df1a..bec48ef4bffe 100644 --- a/go/actions/test/action.yml +++ b/go/actions/test/action.yml @@ -4,7 +4,7 @@ inputs: go-test-version: description: Which Go version to use for running the tests required: false - default: "1.26.0" + default: "~1.26.0" run-code-checks: description: Whether to run formatting, code and qhelp generation checks required: false From 2b10c8aef378447886854913a11af6de441bd879 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Wed, 11 Feb 2026 09:09:34 +0100 Subject: [PATCH 382/433] Rust: Fix gramar in qldoc --- .../lib/codeql/rust/internal/typeinference/AssociatedTypes.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll b/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll index a31b2730def7..546bdad61698 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll @@ -37,7 +37,7 @@ predicate asTraitPath(Path path, TypeRepr typeRepr, Path traitPath, string name) /** * Holds if `assoc` is accessed on `tp` in `path`. * - * That is this is the case when `path` is of the form `::AssocType` or `tp::AssocType`; and `AssocType` resolves to `assoc`. */ predicate tpAssociatedType(TypeParam tp, AssocType assoc, Path path) { From 2fa71f0c17c38eb2c8a91b844ad6ced7715ea976 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Wed, 11 Feb 2026 09:10:21 +0100 Subject: [PATCH 383/433] Rust: Add examples with associated type accessed on associated type --- .../type-inference/associated_types.rs | 41 +- .../type-inference/type-inference.expected | 1091 +++++++++-------- 2 files changed, 603 insertions(+), 529 deletions(-) diff --git a/rust/ql/test/library-tests/type-inference/associated_types.rs b/rust/ql/test/library-tests/type-inference/associated_types.rs index 573404ebaf6f..ea050377c216 100644 --- a/rust/ql/test/library-tests/type-inference/associated_types.rs +++ b/rust/ql/test/library-tests/type-inference/associated_types.rs @@ -7,7 +7,7 @@ impl Wrapper { } } -#[derive(Debug, Default)] +#[derive(Debug, Default, Clone, Copy)] struct S; #[derive(Debug, Default)] @@ -270,6 +270,41 @@ mod type_param_access_associated_type { } } + // Associated type accessed on another associated type + + fn tp_nested_assoc_type(thing: T) -> <::Output as GetSet>::Output + where + ::Output: GetSet, + { + thing.get().get() // $ target=GetSet::get target=GetSet::get + } + + pub trait GetSetWrap { + type Assoc: GetSet; + + // GetSetWrap::get_wrap + fn get_wrap(&self) -> Self::Assoc; + } + + impl GetSetWrap for S { + type Assoc = S; + + // S::get_wrap + fn get_wrap(&self) -> Self::Assoc { + S + } + } + + // Nested associated type accessed on a type parameter of an impl block + impl Wrapper + where + TI: GetSetWrap, + { + fn extract2(&self) -> <::Assoc as GetSet>::Output { + self.0.get_wrap().get() // $ fieldof=Wrapper target=GetSetWrap::get_wrap $ MISSING: target=GetSet::get + } + } + pub fn test() { let _o1 = tp_with_as(S); // $ target=tp_with_as type=_o1:S3 let _o2 = tp_without_as(S); // $ target=tp_without_as type=_o2:S3 @@ -278,8 +313,12 @@ mod type_param_access_associated_type { _o4, // $ type=_o4:bool ) = tp_assoc_from_supertrait(S); // $ target=tp_assoc_from_supertrait + let _o5 = tp_nested_assoc_type(Wrapper(S)); // $ target=tp_nested_assoc_type MISSING: type=_o5:S3 + let w = Wrapper(S); let _extracted = w.extract(); // $ target=extract type=_extracted:S3 + + let _extracted2 = w.extract2(); // $ target=extract2 MISSING: type=_extracted2:S3 } } diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 94888602713a..1b750fab4586 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -130,196 +130,209 @@ inferCertainType | associated_types.rs:269:13:269:16 | self | | {EXTERNAL LOCATION} | & | | associated_types.rs:269:13:269:16 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | | associated_types.rs:269:13:269:16 | self | TRef.A | associated_types.rs:264:10:264:11 | TI | -| associated_types.rs:273:19:283:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:276:13:279:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:279:13:279:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:290:26:290:26 | x | | associated_types.rs:290:23:290:23 | T | -| associated_types.rs:293:5:295:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:294:18:294:18 | x | | associated_types.rs:290:23:290:23 | T | -| associated_types.rs:298:24:298:24 | x | | associated_types.rs:298:21:298:21 | T | -| associated_types.rs:301:5:305:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:302:19:302:19 | x | | associated_types.rs:298:21:298:21 | T | -| associated_types.rs:303:23:303:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:303:24:303:24 | x | | associated_types.rs:298:21:298:21 | T | -| associated_types.rs:304:18:304:18 | x | | associated_types.rs:298:21:298:21 | T | -| associated_types.rs:308:23:308:23 | x | | associated_types.rs:308:20:308:20 | T | -| associated_types.rs:312:5:316:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:313:19:313:19 | x | | associated_types.rs:308:20:308:20 | T | -| associated_types.rs:314:23:314:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:314:24:314:24 | x | | associated_types.rs:308:20:308:20 | T | -| associated_types.rs:315:18:315:18 | x | | associated_types.rs:308:20:308:20 | T | -| associated_types.rs:322:17:322:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:322:17:322:21 | SelfParam | TRef | associated_types.rs:318:5:323:5 | Self [trait AssocNameClash] | -| associated_types.rs:325:34:325:34 | x | | associated_types.rs:325:31:325:31 | T | -| associated_types.rs:329:5:332:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:330:18:330:18 | x | | associated_types.rs:325:31:325:31 | T | -| associated_types.rs:331:18:331:18 | x | | associated_types.rs:325:31:325:31 | T | -| associated_types.rs:342:19:342:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:342:19:342:23 | SelfParam | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:342:26:342:26 | a | | associated_types.rs:342:16:342:16 | A | -| associated_types.rs:345:23:345:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:345:23:345:27 | SelfParam | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:345:30:345:30 | a | | associated_types.rs:345:20:345:20 | A | -| associated_types.rs:345:36:345:36 | b | | associated_types.rs:345:20:345:20 | A | -| associated_types.rs:345:76:348:9 | { ... } | | associated_types.rs:339:9:339:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:346:13:346:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:346:13:346:16 | self | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:346:22:346:22 | a | | associated_types.rs:345:20:345:20 | A | -| associated_types.rs:347:13:347:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:347:13:347:16 | self | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:347:22:347:22 | b | | associated_types.rs:345:20:345:20 | A | -| associated_types.rs:356:19:356:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:356:19:356:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:356:26:356:26 | a | | associated_types.rs:356:16:356:16 | A | -| associated_types.rs:356:46:358:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:356:46:358:9 | { ... } | A | associated_types.rs:356:16:356:16 | A | -| associated_types.rs:357:21:357:21 | a | | associated_types.rs:356:16:356:16 | A | -| associated_types.rs:361:19:368:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:364:25:364:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:367:29:367:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:367:35:367:39 | false | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:379:21:379:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:379:21:379:25 | SelfParam | TRef | associated_types.rs:374:5:384:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:381:20:381:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:381:20:381:24 | SelfParam | TRef | associated_types.rs:374:5:384:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:383:20:383:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:383:20:383:24 | SelfParam | TRef | associated_types.rs:374:5:384:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:390:21:390:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:390:21:390:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:390:34:392:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:394:20:394:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:394:20:394:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:394:43:396:9 | { ... } | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:398:20:398:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:398:20:398:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:398:43:400:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:403:19:407:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:415:24:415:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:415:24:415:28 | SelfParam | TRef | associated_types.rs:413:5:416:5 | Self [trait Subtrait] | -| associated_types.rs:424:23:424:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:424:23:424:27 | SelfParam | TRef | associated_types.rs:418:5:428:5 | Self [trait Subtrait2] | -| associated_types.rs:424:30:424:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:424:48:424:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:424:66:427:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:425:13:425:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:425:13:425:16 | self | TRef | associated_types.rs:418:5:428:5 | Self [trait Subtrait2] | -| associated_types.rs:425:22:425:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:426:13:426:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:426:13:426:16 | self | TRef | associated_types.rs:418:5:428:5 | Self [trait Subtrait2] | -| associated_types.rs:426:22:426:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:435:16:435:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:435:16:435:20 | SelfParam | TRef | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:435:16:435:20 | SelfParam | TRef.T | associated_types.rs:432:10:432:16 | T | -| associated_types.rs:435:39:437:9 | { ... } | | associated_types.rs:432:10:432:16 | T | -| associated_types.rs:436:13:436:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:436:13:436:16 | self | TRef | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:436:13:436:16 | self | TRef.T | associated_types.rs:432:10:432:16 | T | -| associated_types.rs:439:16:439:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:439:16:439:20 | SelfParam | TRef | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:439:16:439:20 | SelfParam | TRef.T | associated_types.rs:432:10:432:16 | T | -| associated_types.rs:439:23:439:30 | _content | | associated_types.rs:432:10:432:16 | T | -| associated_types.rs:439:47:441:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:440:22:440:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:440:22:440:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:440:22:440:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:440:22:440:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:446:24:446:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:446:24:446:28 | SelfParam | TRef | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:446:24:446:28 | SelfParam | TRef.T | associated_types.rs:444:10:444:16 | T | -| associated_types.rs:446:47:448:9 | { ... } | | associated_types.rs:444:10:444:16 | T | -| associated_types.rs:447:15:447:18 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:447:15:447:18 | self | TRef | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:447:15:447:18 | self | TRef.T | associated_types.rs:444:10:444:16 | T | -| associated_types.rs:453:24:453:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:453:24:453:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:453:24:453:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:453:47:456:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:461:24:461:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:461:24:461:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:461:24:461:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | -| associated_types.rs:461:47:463:9 | { ... } | | {EXTERNAL LOCATION} | char | -| associated_types.rs:466:33:466:36 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:466:33:466:36 | item | TRef | associated_types.rs:466:20:466:30 | T | -| associated_types.rs:466:56:468:5 | { ... } | | associated_types.rs:466:20:466:30 | T::Output[GetSet] | -| associated_types.rs:467:9:467:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:467:9:467:12 | item | TRef | associated_types.rs:466:20:466:30 | T | -| associated_types.rs:470:35:470:38 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:470:35:470:38 | item | TRef | associated_types.rs:470:21:470:32 | T | -| associated_types.rs:470:45:470:46 | c1 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | -| associated_types.rs:470:60:470:61 | c2 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | -| associated_types.rs:470:75:470:76 | c3 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | -| associated_types.rs:470:90:473:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:471:9:471:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:471:9:471:12 | item | TRef | associated_types.rs:470:21:470:32 | T | -| associated_types.rs:471:18:471:19 | c1 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | -| associated_types.rs:472:9:472:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:472:9:472:12 | item | TRef | associated_types.rs:470:21:470:32 | T | -| associated_types.rs:472:25:472:26 | c2 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | -| associated_types.rs:472:29:472:30 | c3 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | -| associated_types.rs:475:19:484:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:476:28:476:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:479:28:479:31 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:480:37:480:42 | &item2 | | {EXTERNAL LOCATION} | & | -| associated_types.rs:482:29:482:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:483:29:483:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:497:16:497:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:497:16:497:20 | SelfParam | TRef | associated_types.rs:490:5:490:20 | ST | -| associated_types.rs:497:16:497:20 | SelfParam | TRef.T | associated_types.rs:492:10:492:21 | Output | -| associated_types.rs:497:39:499:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:497:39:499:9 | { ... } | E | associated_types.rs:492:10:492:21 | Output | -| associated_types.rs:497:39:499:9 | { ... } | T | associated_types.rs:492:10:492:21 | Output | -| associated_types.rs:498:16:498:19 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:498:16:498:19 | self | TRef | associated_types.rs:490:5:490:20 | ST | -| associated_types.rs:498:16:498:19 | self | TRef.T | associated_types.rs:492:10:492:21 | Output | -| associated_types.rs:502:19:504:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:503:21:503:24 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:511:31:511:31 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:511:31:511:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:511:31:511:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:511:61:519:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:513:21:513:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:513:21:513:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:513:21:513:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:516:19:516:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:516:19:516:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:516:19:516:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:518:23:518:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:518:23:518:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:518:23:518:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:521:36:521:36 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:521:36:521:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:521:36:521:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:521:36:521:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:521:92:527:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:522:21:522:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:522:21:522:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:522:21:522:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:522:21:522:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:523:19:523:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:523:19:523:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:523:19:523:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:523:19:523:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:524:23:524:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:524:23:524:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:524:23:524:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:524:23:524:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:525:21:525:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:525:21:525:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:525:21:525:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:525:21:525:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:526:19:526:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:526:19:526:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:526:19:526:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:526:19:526:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:530:15:539:1 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:531:5:531:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:532:5:532:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:533:5:533:59 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:534:5:534:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:535:5:535:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:536:5:536:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:537:5:537:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:538:5:538:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:275:40:275:44 | thing | | associated_types.rs:275:29:275:37 | T | +| associated_types.rs:279:9:279:13 | thing | | associated_types.rs:275:29:275:37 | T | +| associated_types.rs:286:21:286:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:286:21:286:25 | SelfParam | TRef | associated_types.rs:282:5:287:5 | Self [trait GetSetWrap] | +| associated_types.rs:293:21:293:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:293:21:293:25 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:293:43:295:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:303:21:303:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:303:21:303:25 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:303:21:303:25 | SelfParam | TRef.A | associated_types.rs:299:10:299:11 | TI | +| associated_types.rs:304:13:304:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:304:13:304:16 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:304:13:304:16 | self | TRef.A | associated_types.rs:299:10:299:11 | TI | +| associated_types.rs:308:19:322:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:311:13:314:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:314:13:314:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:329:26:329:26 | x | | associated_types.rs:329:23:329:23 | T | +| associated_types.rs:332:5:334:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:333:18:333:18 | x | | associated_types.rs:329:23:329:23 | T | +| associated_types.rs:337:24:337:24 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:340:5:344:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:341:19:341:19 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:342:23:342:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:342:24:342:24 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:343:18:343:18 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:347:23:347:23 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:351:5:355:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:352:19:352:19 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:353:23:353:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:353:24:353:24 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:354:18:354:18 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:361:17:361:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:361:17:361:21 | SelfParam | TRef | associated_types.rs:357:5:362:5 | Self [trait AssocNameClash] | +| associated_types.rs:364:34:364:34 | x | | associated_types.rs:364:31:364:31 | T | +| associated_types.rs:368:5:371:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:369:18:369:18 | x | | associated_types.rs:364:31:364:31 | T | +| associated_types.rs:370:18:370:18 | x | | associated_types.rs:364:31:364:31 | T | +| associated_types.rs:381:19:381:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:381:19:381:23 | SelfParam | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:381:26:381:26 | a | | associated_types.rs:381:16:381:16 | A | +| associated_types.rs:384:23:384:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:384:23:384:27 | SelfParam | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:384:30:384:30 | a | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:384:36:384:36 | b | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:384:76:387:9 | { ... } | | associated_types.rs:378:9:378:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:385:13:385:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:385:13:385:16 | self | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:385:22:385:22 | a | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:386:13:386:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:386:13:386:16 | self | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:386:22:386:22 | b | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:395:19:395:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:395:19:395:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:395:26:395:26 | a | | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:395:46:397:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:395:46:397:9 | { ... } | A | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:396:21:396:21 | a | | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:400:19:407:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:403:25:403:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:406:29:406:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:406:35:406:39 | false | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:418:21:418:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:418:21:418:25 | SelfParam | TRef | associated_types.rs:413:5:423:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:420:20:420:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:420:20:420:24 | SelfParam | TRef | associated_types.rs:413:5:423:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:422:20:422:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:422:20:422:24 | SelfParam | TRef | associated_types.rs:413:5:423:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:429:21:429:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:429:21:429:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:429:34:431:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:433:20:433:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:433:20:433:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:433:43:435:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:437:20:437:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:437:20:437:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:437:43:439:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:442:19:446:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:454:24:454:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:454:24:454:28 | SelfParam | TRef | associated_types.rs:452:5:455:5 | Self [trait Subtrait] | +| associated_types.rs:463:23:463:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:463:23:463:27 | SelfParam | TRef | associated_types.rs:457:5:467:5 | Self [trait Subtrait2] | +| associated_types.rs:463:30:463:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:463:48:463:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:463:66:466:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:464:13:464:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:464:13:464:16 | self | TRef | associated_types.rs:457:5:467:5 | Self [trait Subtrait2] | +| associated_types.rs:464:22:464:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:465:13:465:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:465:13:465:16 | self | TRef | associated_types.rs:457:5:467:5 | Self [trait Subtrait2] | +| associated_types.rs:465:22:465:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:474:16:474:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:474:16:474:20 | SelfParam | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:474:16:474:20 | SelfParam | TRef.T | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:474:39:476:9 | { ... } | | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:475:13:475:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:475:13:475:16 | self | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:475:13:475:16 | self | TRef.T | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:478:16:478:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:478:16:478:20 | SelfParam | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:478:16:478:20 | SelfParam | TRef.T | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:478:23:478:30 | _content | | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:478:47:480:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:479:22:479:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:479:22:479:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:479:22:479:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:479:22:479:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:485:24:485:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:485:24:485:28 | SelfParam | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:485:24:485:28 | SelfParam | TRef.T | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:485:47:487:9 | { ... } | | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:486:15:486:18 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:486:15:486:18 | self | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:486:15:486:18 | self | TRef.T | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:492:24:492:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:492:24:492:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:492:24:492:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:492:47:495:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:500:24:500:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:500:24:500:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:500:24:500:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:500:47:502:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:505:33:505:36 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:505:33:505:36 | item | TRef | associated_types.rs:505:20:505:30 | T | +| associated_types.rs:505:56:507:5 | { ... } | | associated_types.rs:505:20:505:30 | T::Output[GetSet] | +| associated_types.rs:506:9:506:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:506:9:506:12 | item | TRef | associated_types.rs:505:20:505:30 | T | +| associated_types.rs:509:35:509:38 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:509:35:509:38 | item | TRef | associated_types.rs:509:21:509:32 | T | +| associated_types.rs:509:45:509:46 | c1 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:509:60:509:61 | c2 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:509:75:509:76 | c3 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:509:90:512:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:510:9:510:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:510:9:510:12 | item | TRef | associated_types.rs:509:21:509:32 | T | +| associated_types.rs:510:18:510:19 | c1 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:511:9:511:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:511:9:511:12 | item | TRef | associated_types.rs:509:21:509:32 | T | +| associated_types.rs:511:25:511:26 | c2 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:511:29:511:30 | c3 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:514:19:523:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:515:28:515:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:518:28:518:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:519:37:519:42 | &item2 | | {EXTERNAL LOCATION} | & | +| associated_types.rs:521:29:521:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:522:29:522:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:536:16:536:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:536:16:536:20 | SelfParam | TRef | associated_types.rs:529:5:529:20 | ST | +| associated_types.rs:536:16:536:20 | SelfParam | TRef.T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:536:39:538:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:536:39:538:9 | { ... } | E | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:536:39:538:9 | { ... } | T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:537:16:537:19 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:537:16:537:19 | self | TRef | associated_types.rs:529:5:529:20 | ST | +| associated_types.rs:537:16:537:19 | self | TRef.T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:541:19:543:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:542:21:542:24 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:550:31:550:31 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:550:31:550:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:550:31:550:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:550:61:558:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:552:21:552:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:552:21:552:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:552:21:552:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:555:19:555:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:555:19:555:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:555:19:555:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:557:23:557:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:557:23:557:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:557:23:557:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:560:36:560:36 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:560:36:560:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:560:36:560:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:560:36:560:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:560:92:566:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:561:21:561:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:561:21:561:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:561:21:561:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:561:21:561:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:562:19:562:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:562:19:562:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:562:19:562:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:562:19:562:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:563:23:563:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:563:23:563:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:563:23:563:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:563:23:563:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:564:21:564:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:564:21:564:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:564:21:564:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:564:21:564:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:565:19:565:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:565:19:565:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:565:19:565:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:565:19:565:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:569:15:578:1 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:570:5:570:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:571:5:571:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:572:5:572:59 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:573:5:573:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:574:5:574:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:575:5:575:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:576:5:576:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:577:5:577:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:15:18:15:22 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:15:18:15:22 | SelfParam | TRef | blanket_impl.rs:9:5:10:14 | S2 | | blanket_impl.rs:15:42:17:9 | { ... } | | {EXTERNAL LOCATION} | & | @@ -5122,344 +5135,366 @@ inferType | associated_types.rs:269:13:269:16 | self | TRef.A | associated_types.rs:264:10:264:11 | TI | | associated_types.rs:269:13:269:18 | self.0 | | associated_types.rs:264:10:264:11 | TI | | associated_types.rs:269:13:269:24 | ... .get() | | associated_types.rs:264:10:264:11 | TI::Output[GetSet] | -| associated_types.rs:273:19:283:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:274:13:274:15 | _o1 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:274:19:274:31 | tp_with_as(...) | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:274:30:274:30 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:275:13:275:15 | _o2 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:275:19:275:34 | tp_without_as(...) | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:275:33:275:33 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:276:13:279:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:276:13:279:9 | TuplePat | T1 | {EXTERNAL LOCATION} | bool | -| associated_types.rs:278:13:278:15 | _o4 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:279:13:279:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | -| associated_types.rs:279:13:279:39 | tp_assoc_from_supertrait(...) | T1 | {EXTERNAL LOCATION} | bool | -| associated_types.rs:279:38:279:38 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:281:13:281:13 | w | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:281:13:281:13 | w | A | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:281:17:281:26 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:281:17:281:26 | Wrapper(...) | A | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:281:25:281:25 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:282:13:282:22 | _extracted | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:282:26:282:26 | w | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:282:26:282:26 | w | A | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:282:26:282:36 | w.extract() | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:290:26:290:26 | x | | associated_types.rs:290:23:290:23 | T | -| associated_types.rs:293:5:295:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:294:13:294:14 | _a | | {EXTERNAL LOCATION} | char | -| associated_types.rs:294:18:294:18 | x | | associated_types.rs:290:23:290:23 | T | -| associated_types.rs:294:18:294:24 | x.get() | | {EXTERNAL LOCATION} | char | -| associated_types.rs:298:24:298:24 | x | | associated_types.rs:298:21:298:21 | T | -| associated_types.rs:301:5:305:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:302:13:302:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:302:19:302:19 | x | | associated_types.rs:298:21:298:21 | T | -| associated_types.rs:302:19:302:25 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:303:13:303:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:303:19:303:25 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:303:23:303:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:303:23:303:24 | &x | TRef | associated_types.rs:298:21:298:21 | T | -| associated_types.rs:303:24:303:24 | x | | associated_types.rs:298:21:298:21 | T | -| associated_types.rs:304:13:304:14 | _b | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:304:18:304:18 | x | | associated_types.rs:298:21:298:21 | T | -| associated_types.rs:304:18:304:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:308:23:308:23 | x | | associated_types.rs:308:20:308:20 | T | -| associated_types.rs:312:5:316:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:313:13:313:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:313:19:313:19 | x | | associated_types.rs:308:20:308:20 | T | -| associated_types.rs:313:19:313:25 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:314:13:314:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:314:19:314:25 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:314:23:314:24 | &x | | {EXTERNAL LOCATION} | & | -| associated_types.rs:314:23:314:24 | &x | TRef | associated_types.rs:308:20:308:20 | T | -| associated_types.rs:314:24:314:24 | x | | associated_types.rs:308:20:308:20 | T | -| associated_types.rs:315:13:315:14 | _b | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:315:18:315:18 | x | | associated_types.rs:308:20:308:20 | T | -| associated_types.rs:315:18:315:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:322:17:322:21 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:322:17:322:21 | SelfParam | TRef | associated_types.rs:318:5:323:5 | Self [trait AssocNameClash] | -| associated_types.rs:325:34:325:34 | x | | associated_types.rs:325:31:325:31 | T | -| associated_types.rs:329:5:332:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:330:13:330:14 | _a | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:330:18:330:18 | x | | associated_types.rs:325:31:325:31 | T | -| associated_types.rs:330:18:330:24 | x.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:331:13:331:14 | _b | | {EXTERNAL LOCATION} | char | -| associated_types.rs:331:18:331:18 | x | | associated_types.rs:325:31:325:31 | T | -| associated_types.rs:331:18:331:25 | x.get2() | | {EXTERNAL LOCATION} | char | -| associated_types.rs:342:19:342:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:342:19:342:23 | SelfParam | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:342:26:342:26 | a | | associated_types.rs:342:16:342:16 | A | -| associated_types.rs:345:23:345:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:345:23:345:27 | SelfParam | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:345:30:345:30 | a | | associated_types.rs:345:20:345:20 | A | -| associated_types.rs:345:36:345:36 | b | | associated_types.rs:345:20:345:20 | A | -| associated_types.rs:345:76:348:9 | { ... } | | associated_types.rs:339:9:339:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:346:13:346:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:346:13:346:16 | self | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:346:13:346:23 | self.put(...) | | associated_types.rs:339:9:339:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:346:22:346:22 | a | | associated_types.rs:345:20:345:20 | A | -| associated_types.rs:347:13:347:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:347:13:347:16 | self | TRef | associated_types.rs:338:5:349:5 | Self [trait MyTraitAssoc2] | -| associated_types.rs:347:13:347:23 | self.put(...) | | associated_types.rs:339:9:339:52 | GenericAssociatedType[MyTraitAssoc2] | -| associated_types.rs:347:22:347:22 | b | | associated_types.rs:345:20:345:20 | A | -| associated_types.rs:356:19:356:23 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:356:19:356:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:356:26:356:26 | a | | associated_types.rs:356:16:356:16 | A | -| associated_types.rs:356:46:358:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:356:46:358:9 | { ... } | A | associated_types.rs:356:16:356:16 | A | -| associated_types.rs:357:13:357:22 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:357:13:357:22 | Wrapper(...) | A | associated_types.rs:356:16:356:16 | A | -| associated_types.rs:357:21:357:21 | a | | associated_types.rs:356:16:356:16 | A | -| associated_types.rs:361:19:368:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:362:13:362:13 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:362:17:362:17 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:364:13:364:15 | _g1 | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:364:13:364:15 | _g1 | A | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:364:19:364:19 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:364:19:364:29 | s.put(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:364:19:364:29 | s.put(...) | A | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:364:25:364:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:367:13:367:15 | _g2 | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:367:19:367:19 | s | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:367:19:367:40 | s.put_two(...) | | associated_types.rs:1:1:2:21 | Wrapper | -| associated_types.rs:367:29:367:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:367:35:367:39 | false | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:379:21:379:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:379:21:379:25 | SelfParam | TRef | associated_types.rs:374:5:384:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:381:20:381:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:381:20:381:24 | SelfParam | TRef | associated_types.rs:374:5:384:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:383:20:383:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:383:20:383:24 | SelfParam | TRef | associated_types.rs:374:5:384:5 | Self [trait TraitMultipleAssoc] | -| associated_types.rs:390:21:390:25 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:390:21:390:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:390:34:392:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:391:13:391:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:394:20:394:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:394:20:394:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:394:43:396:9 | { ... } | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:395:13:395:13 | S | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:398:20:398:24 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:398:20:398:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:398:43:400:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:399:13:399:14 | S2 | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:403:19:407:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:404:13:404:23 | _assoc_zero | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:404:27:404:28 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:404:27:404:39 | S3.get_zero() | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:405:13:405:22 | _assoc_one | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:405:26:405:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:405:26:405:37 | S3.get_one() | | associated_types.rs:10:1:11:9 | S | -| associated_types.rs:406:13:406:22 | _assoc_two | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:406:26:406:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | -| associated_types.rs:406:26:406:37 | S3.get_two() | | associated_types.rs:13:1:14:10 | S2 | -| associated_types.rs:415:24:415:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:415:24:415:28 | SelfParam | TRef | associated_types.rs:413:5:416:5 | Self [trait Subtrait] | -| associated_types.rs:424:23:424:27 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:424:23:424:27 | SelfParam | TRef | associated_types.rs:418:5:428:5 | Self [trait Subtrait2] | -| associated_types.rs:424:30:424:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:424:48:424:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:424:66:427:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:425:13:425:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:425:13:425:16 | self | TRef | associated_types.rs:418:5:428:5 | Self [trait Subtrait2] | -| associated_types.rs:425:13:425:24 | self.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:425:22:425:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:426:13:426:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:426:13:426:16 | self | TRef | associated_types.rs:418:5:428:5 | Self [trait Subtrait2] | -| associated_types.rs:426:13:426:24 | self.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:426:22:426:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | -| associated_types.rs:435:16:435:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:435:16:435:20 | SelfParam | TRef | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:435:16:435:20 | SelfParam | TRef.T | associated_types.rs:432:10:432:16 | T | -| associated_types.rs:435:39:437:9 | { ... } | | associated_types.rs:432:10:432:16 | T | -| associated_types.rs:436:13:436:16 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:436:13:436:16 | self | TRef | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:436:13:436:16 | self | TRef.T | associated_types.rs:432:10:432:16 | T | -| associated_types.rs:436:13:436:18 | self.0 | | associated_types.rs:432:10:432:16 | T | -| associated_types.rs:439:16:439:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:439:16:439:20 | SelfParam | TRef | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:439:16:439:20 | SelfParam | TRef.T | associated_types.rs:432:10:432:16 | T | -| associated_types.rs:439:23:439:30 | _content | | associated_types.rs:432:10:432:16 | T | -| associated_types.rs:439:47:441:9 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:440:13:440:43 | MacroExpr | | {EXTERNAL LOCATION} | () | -| associated_types.rs:440:22:440:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | -| associated_types.rs:440:22:440:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | -| associated_types.rs:440:22:440:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:440:22:440:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:440:22:440:42 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:446:24:446:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:446:24:446:28 | SelfParam | TRef | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:446:24:446:28 | SelfParam | TRef.T | associated_types.rs:444:10:444:16 | T | -| associated_types.rs:446:47:448:9 | { ... } | | associated_types.rs:444:10:444:16 | T | -| associated_types.rs:447:13:447:19 | (...) | | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:447:13:447:19 | (...) | T | associated_types.rs:444:10:444:16 | T | -| associated_types.rs:447:13:447:21 | ... .0 | | associated_types.rs:444:10:444:16 | T | -| associated_types.rs:447:14:447:18 | * ... | | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:447:14:447:18 | * ... | T | associated_types.rs:444:10:444:16 | T | -| associated_types.rs:447:15:447:18 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:447:15:447:18 | self | TRef | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:447:15:447:18 | self | TRef.T | associated_types.rs:444:10:444:16 | T | -| associated_types.rs:453:24:453:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:453:24:453:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:453:24:453:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:453:47:456:9 | { ... } | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:455:13:455:30 | ...::default(...) | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:461:24:461:28 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:461:24:461:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:461:24:461:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | -| associated_types.rs:461:47:463:9 | { ... } | | {EXTERNAL LOCATION} | char | -| associated_types.rs:462:13:462:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | -| associated_types.rs:466:33:466:36 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:466:33:466:36 | item | TRef | associated_types.rs:466:20:466:30 | T | -| associated_types.rs:466:56:468:5 | { ... } | | associated_types.rs:466:20:466:30 | T::Output[GetSet] | -| associated_types.rs:467:9:467:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:467:9:467:12 | item | TRef | associated_types.rs:466:20:466:30 | T | -| associated_types.rs:467:9:467:26 | item.get_content() | | associated_types.rs:466:20:466:30 | T::Output[GetSet] | -| associated_types.rs:470:35:470:38 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:470:35:470:38 | item | TRef | associated_types.rs:470:21:470:32 | T | -| associated_types.rs:470:45:470:46 | c1 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | -| associated_types.rs:470:60:470:61 | c2 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | -| associated_types.rs:470:75:470:76 | c3 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | -| associated_types.rs:470:90:473:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:471:9:471:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:471:9:471:12 | item | TRef | associated_types.rs:470:21:470:32 | T | -| associated_types.rs:471:9:471:20 | item.set(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:471:18:471:19 | c1 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | -| associated_types.rs:472:9:472:12 | item | | {EXTERNAL LOCATION} | & | -| associated_types.rs:472:9:472:12 | item | TRef | associated_types.rs:470:21:470:32 | T | -| associated_types.rs:472:9:472:31 | item.insert_two(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:472:25:472:26 | c2 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | -| associated_types.rs:472:29:472:30 | c3 | | associated_types.rs:470:21:470:32 | T::Output[GetSet] | -| associated_types.rs:475:19:484:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:476:13:476:17 | item1 | | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:476:13:476:17 | item1 | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:476:21:476:33 | MyType(...) | | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:476:21:476:33 | MyType(...) | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:476:28:476:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:477:13:477:21 | _content1 | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:477:25:477:29 | item1 | | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:477:25:477:29 | item1 | T | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:477:25:477:43 | item1.get_content() | | {EXTERNAL LOCATION} | i64 | -| associated_types.rs:479:13:479:17 | item2 | | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:479:13:479:17 | item2 | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:479:21:479:32 | MyType(...) | | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:479:21:479:32 | MyType(...) | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:479:28:479:31 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:480:37:480:42 | &item2 | | {EXTERNAL LOCATION} | & | -| associated_types.rs:480:37:480:42 | &item2 | TRef | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:480:37:480:42 | &item2 | TRef.T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:480:38:480:42 | item2 | | associated_types.rs:430:5:430:24 | MyType | -| associated_types.rs:480:38:480:42 | item2 | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:482:13:482:21 | _content3 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:482:25:482:34 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:482:25:482:34 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:482:25:482:48 | ... .get_content() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:482:29:482:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:483:13:483:21 | _content4 | | {EXTERNAL LOCATION} | char | -| associated_types.rs:483:25:483:33 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | -| associated_types.rs:483:25:483:33 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | -| associated_types.rs:483:25:483:47 | ... .get_content() | | {EXTERNAL LOCATION} | char | -| associated_types.rs:483:29:483:32 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:497:16:497:20 | SelfParam | | {EXTERNAL LOCATION} | & | -| associated_types.rs:497:16:497:20 | SelfParam | TRef | associated_types.rs:490:5:490:20 | ST | -| associated_types.rs:497:16:497:20 | SelfParam | TRef.T | associated_types.rs:492:10:492:21 | Output | -| associated_types.rs:497:39:499:9 | { ... } | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:497:39:499:9 | { ... } | E | associated_types.rs:492:10:492:21 | Output | -| associated_types.rs:497:39:499:9 | { ... } | T | associated_types.rs:492:10:492:21 | Output | -| associated_types.rs:498:13:498:22 | Ok(...) | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:498:13:498:22 | Ok(...) | E | associated_types.rs:492:10:492:21 | Output | -| associated_types.rs:498:13:498:22 | Ok(...) | T | associated_types.rs:492:10:492:21 | Output | -| associated_types.rs:498:16:498:19 | self | | {EXTERNAL LOCATION} | & | -| associated_types.rs:498:16:498:19 | self | TRef | associated_types.rs:490:5:490:20 | ST | -| associated_types.rs:498:16:498:19 | self | TRef.T | associated_types.rs:492:10:492:21 | Output | -| associated_types.rs:498:16:498:21 | self.0 | | associated_types.rs:492:10:492:21 | Output | -| associated_types.rs:502:19:504:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:503:13:503:14 | _y | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:503:13:503:14 | _y | E | {EXTERNAL LOCATION} | bool | -| associated_types.rs:503:13:503:14 | _y | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:503:18:503:25 | ST(...) | | associated_types.rs:490:5:490:20 | ST | -| associated_types.rs:503:18:503:25 | ST(...) | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:503:18:503:31 | ... .get() | | {EXTERNAL LOCATION} | Result | -| associated_types.rs:503:18:503:31 | ... .get() | E | {EXTERNAL LOCATION} | bool | -| associated_types.rs:503:18:503:31 | ... .get() | T | {EXTERNAL LOCATION} | bool | -| associated_types.rs:503:21:503:24 | true | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:511:31:511:31 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:511:31:511:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:511:31:511:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:511:61:519:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:513:13:513:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:513:19:513:22 | (...) | | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:513:19:513:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:513:19:513:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:513:20:513:21 | * ... | | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:513:20:513:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:513:21:513:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:513:21:513:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:513:21:513:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:516:13:516:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:516:19:516:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:516:19:516:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:516:19:516:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:516:19:516:25 | t.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:518:13:518:15 | _a3 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:518:19:518:24 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:518:23:518:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:518:23:518:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | -| associated_types.rs:518:23:518:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:521:36:521:36 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:521:36:521:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:521:36:521:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:521:36:521:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:521:92:527:5 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:522:13:522:15 | _a1 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:522:19:522:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:522:19:522:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:522:19:522:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:522:19:522:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:522:20:522:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:522:20:522:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:522:20:522:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:522:21:522:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:522:21:522:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:522:21:522:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:522:21:522:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:523:13:523:15 | _a2 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:523:19:523:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:523:19:523:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:523:19:523:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:523:19:523:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:523:19:523:25 | t.get() | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:524:13:524:15 | _a3 | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:524:19:524:24 | get(...) | | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:524:23:524:23 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:524:23:524:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:524:23:524:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:524:23:524:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:525:13:525:15 | _b1 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:525:19:525:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:525:19:525:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:525:19:525:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:525:19:525:36 | ... .get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:525:20:525:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:525:20:525:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:525:20:525:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:525:21:525:21 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:525:21:525:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:525:21:525:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:525:21:525:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:526:13:526:15 | _b2 | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:526:19:526:19 | t | | {EXTERNAL LOCATION} | & | -| associated_types.rs:526:19:526:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | -| associated_types.rs:526:19:526:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | -| associated_types.rs:526:19:526:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| associated_types.rs:526:19:526:33 | t.get_another() | | {EXTERNAL LOCATION} | bool | -| associated_types.rs:530:15:539:1 | { ... } | | {EXTERNAL LOCATION} | () | -| associated_types.rs:531:5:531:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:532:5:532:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:533:5:533:59 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:534:5:534:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:535:5:535:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:536:5:536:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:537:5:537:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| associated_types.rs:538:5:538:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:275:40:275:44 | thing | | associated_types.rs:275:29:275:37 | T | +| associated_types.rs:279:9:279:13 | thing | | associated_types.rs:275:29:275:37 | T | +| associated_types.rs:279:9:279:19 | thing.get() | | associated_types.rs:275:29:275:37 | T::Output[GetSet] | +| associated_types.rs:286:21:286:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:286:21:286:25 | SelfParam | TRef | associated_types.rs:282:5:287:5 | Self [trait GetSetWrap] | +| associated_types.rs:293:21:293:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:293:21:293:25 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:293:43:295:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:294:13:294:13 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:303:21:303:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:303:21:303:25 | SelfParam | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:303:21:303:25 | SelfParam | TRef.A | associated_types.rs:299:10:299:11 | TI | +| associated_types.rs:304:13:304:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:304:13:304:16 | self | TRef | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:304:13:304:16 | self | TRef.A | associated_types.rs:299:10:299:11 | TI | +| associated_types.rs:304:13:304:18 | self.0 | | associated_types.rs:299:10:299:11 | TI | +| associated_types.rs:304:13:304:29 | ... .get_wrap() | | associated_types.rs:299:10:299:11 | TI::Assoc[GetSetWrap] | +| associated_types.rs:308:19:322:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:309:13:309:15 | _o1 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:309:19:309:31 | tp_with_as(...) | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:309:30:309:30 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:310:13:310:15 | _o2 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:310:19:310:34 | tp_without_as(...) | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:310:33:310:33 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:311:13:314:9 | TuplePat | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:311:13:314:9 | TuplePat | T1 | {EXTERNAL LOCATION} | bool | +| associated_types.rs:313:13:313:15 | _o4 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:314:13:314:39 | tp_assoc_from_supertrait(...) | | {EXTERNAL LOCATION} | (T_2) | +| associated_types.rs:314:13:314:39 | tp_assoc_from_supertrait(...) | T1 | {EXTERNAL LOCATION} | bool | +| associated_types.rs:314:38:314:38 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:316:40:316:49 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:316:40:316:49 | Wrapper(...) | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:316:48:316:48 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:318:13:318:13 | w | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:318:13:318:13 | w | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:318:17:318:26 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:318:17:318:26 | Wrapper(...) | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:318:25:318:25 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:319:13:319:22 | _extracted | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:319:26:319:26 | w | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:319:26:319:26 | w | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:319:26:319:36 | w.extract() | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:321:27:321:27 | w | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:321:27:321:27 | w | A | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:329:26:329:26 | x | | associated_types.rs:329:23:329:23 | T | +| associated_types.rs:332:5:334:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:333:13:333:14 | _a | | {EXTERNAL LOCATION} | char | +| associated_types.rs:333:18:333:18 | x | | associated_types.rs:329:23:329:23 | T | +| associated_types.rs:333:18:333:24 | x.get() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:337:24:337:24 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:340:5:344:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:341:13:341:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:341:19:341:19 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:341:19:341:25 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:342:13:342:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:342:19:342:25 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:342:23:342:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:342:23:342:24 | &x | TRef | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:342:24:342:24 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:343:13:343:14 | _b | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:343:18:343:18 | x | | associated_types.rs:337:21:337:21 | T | +| associated_types.rs:343:18:343:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:347:23:347:23 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:351:5:355:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:352:13:352:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:352:19:352:19 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:352:19:352:25 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:353:13:353:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:353:19:353:25 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:353:23:353:24 | &x | | {EXTERNAL LOCATION} | & | +| associated_types.rs:353:23:353:24 | &x | TRef | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:353:24:353:24 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:354:13:354:14 | _b | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:354:18:354:18 | x | | associated_types.rs:347:20:347:20 | T | +| associated_types.rs:354:18:354:32 | x.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:361:17:361:21 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:361:17:361:21 | SelfParam | TRef | associated_types.rs:357:5:362:5 | Self [trait AssocNameClash] | +| associated_types.rs:364:34:364:34 | x | | associated_types.rs:364:31:364:31 | T | +| associated_types.rs:368:5:371:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:369:13:369:14 | _a | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:369:18:369:18 | x | | associated_types.rs:364:31:364:31 | T | +| associated_types.rs:369:18:369:24 | x.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:370:13:370:14 | _b | | {EXTERNAL LOCATION} | char | +| associated_types.rs:370:18:370:18 | x | | associated_types.rs:364:31:364:31 | T | +| associated_types.rs:370:18:370:25 | x.get2() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:381:19:381:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:381:19:381:23 | SelfParam | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:381:26:381:26 | a | | associated_types.rs:381:16:381:16 | A | +| associated_types.rs:384:23:384:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:384:23:384:27 | SelfParam | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:384:30:384:30 | a | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:384:36:384:36 | b | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:384:76:387:9 | { ... } | | associated_types.rs:378:9:378:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:385:13:385:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:385:13:385:16 | self | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:385:13:385:23 | self.put(...) | | associated_types.rs:378:9:378:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:385:22:385:22 | a | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:386:13:386:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:386:13:386:16 | self | TRef | associated_types.rs:377:5:388:5 | Self [trait MyTraitAssoc2] | +| associated_types.rs:386:13:386:23 | self.put(...) | | associated_types.rs:378:9:378:52 | GenericAssociatedType[MyTraitAssoc2] | +| associated_types.rs:386:22:386:22 | b | | associated_types.rs:384:20:384:20 | A | +| associated_types.rs:395:19:395:23 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:395:19:395:23 | SelfParam | TRef | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:395:26:395:26 | a | | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:395:46:397:9 | { ... } | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:395:46:397:9 | { ... } | A | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:396:13:396:22 | Wrapper(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:396:13:396:22 | Wrapper(...) | A | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:396:21:396:21 | a | | associated_types.rs:395:16:395:16 | A | +| associated_types.rs:400:19:407:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:401:13:401:13 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:401:17:401:17 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:403:13:403:15 | _g1 | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:403:13:403:15 | _g1 | A | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:403:19:403:19 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:403:19:403:29 | s.put(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:403:19:403:29 | s.put(...) | A | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:403:25:403:28 | 1i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:406:13:406:15 | _g2 | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:406:19:406:19 | s | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:406:19:406:40 | s.put_two(...) | | associated_types.rs:1:1:2:21 | Wrapper | +| associated_types.rs:406:29:406:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:406:35:406:39 | false | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:418:21:418:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:418:21:418:25 | SelfParam | TRef | associated_types.rs:413:5:423:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:420:20:420:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:420:20:420:24 | SelfParam | TRef | associated_types.rs:413:5:423:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:422:20:422:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:422:20:422:24 | SelfParam | TRef | associated_types.rs:413:5:423:5 | Self [trait TraitMultipleAssoc] | +| associated_types.rs:429:21:429:25 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:429:21:429:25 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:429:34:431:9 | { ... } | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:430:13:430:14 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:433:20:433:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:433:20:433:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:433:43:435:9 | { ... } | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:434:13:434:13 | S | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:437:20:437:24 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:437:20:437:24 | SelfParam | TRef | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:437:43:439:9 | { ... } | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:438:13:438:14 | S2 | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:442:19:446:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:443:13:443:23 | _assoc_zero | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:443:27:443:28 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:443:27:443:39 | S3.get_zero() | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:444:13:444:22 | _assoc_one | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:444:26:444:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:444:26:444:37 | S3.get_one() | | associated_types.rs:10:1:11:9 | S | +| associated_types.rs:445:13:445:22 | _assoc_two | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:445:26:445:27 | S3 | | associated_types.rs:16:1:17:10 | S3 | +| associated_types.rs:445:26:445:37 | S3.get_two() | | associated_types.rs:13:1:14:10 | S2 | +| associated_types.rs:454:24:454:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:454:24:454:28 | SelfParam | TRef | associated_types.rs:452:5:455:5 | Self [trait Subtrait] | +| associated_types.rs:463:23:463:27 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:463:23:463:27 | SelfParam | TRef | associated_types.rs:457:5:467:5 | Self [trait Subtrait2] | +| associated_types.rs:463:30:463:31 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:463:48:463:49 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:463:66:466:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:464:13:464:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:464:13:464:16 | self | TRef | associated_types.rs:457:5:467:5 | Self [trait Subtrait2] | +| associated_types.rs:464:13:464:24 | self.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:464:22:464:23 | c1 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:465:13:465:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:465:13:465:16 | self | TRef | associated_types.rs:457:5:467:5 | Self [trait Subtrait2] | +| associated_types.rs:465:13:465:24 | self.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:465:22:465:23 | c2 | | associated_types.rs:20:5:20:16 | Output[Subtrait2] | +| associated_types.rs:474:16:474:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:474:16:474:20 | SelfParam | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:474:16:474:20 | SelfParam | TRef.T | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:474:39:476:9 | { ... } | | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:475:13:475:16 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:475:13:475:16 | self | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:475:13:475:16 | self | TRef.T | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:475:13:475:18 | self.0 | | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:478:16:478:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:478:16:478:20 | SelfParam | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:478:16:478:20 | SelfParam | TRef.T | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:478:23:478:30 | _content | | associated_types.rs:471:10:471:16 | T | +| associated_types.rs:478:47:480:9 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:479:13:479:43 | MacroExpr | | {EXTERNAL LOCATION} | () | +| associated_types.rs:479:22:479:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | +| associated_types.rs:479:22:479:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | +| associated_types.rs:479:22:479:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:479:22:479:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:479:22:479:42 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:485:24:485:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:485:24:485:28 | SelfParam | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:485:24:485:28 | SelfParam | TRef.T | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:485:47:487:9 | { ... } | | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:486:13:486:19 | (...) | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:486:13:486:19 | (...) | T | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:486:13:486:21 | ... .0 | | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:486:14:486:18 | * ... | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:486:14:486:18 | * ... | T | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:486:15:486:18 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:486:15:486:18 | self | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:486:15:486:18 | self | TRef.T | associated_types.rs:483:10:483:16 | T | +| associated_types.rs:492:24:492:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:492:24:492:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:492:24:492:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:492:47:495:9 | { ... } | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:494:13:494:30 | ...::default(...) | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:500:24:500:28 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:500:24:500:28 | SelfParam | TRef | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:500:24:500:28 | SelfParam | TRef.OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:500:47:502:9 | { ... } | | {EXTERNAL LOCATION} | char | +| associated_types.rs:501:13:501:30 | ...::default(...) | | {EXTERNAL LOCATION} | char | +| associated_types.rs:505:33:505:36 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:505:33:505:36 | item | TRef | associated_types.rs:505:20:505:30 | T | +| associated_types.rs:505:56:507:5 | { ... } | | associated_types.rs:505:20:505:30 | T::Output[GetSet] | +| associated_types.rs:506:9:506:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:506:9:506:12 | item | TRef | associated_types.rs:505:20:505:30 | T | +| associated_types.rs:506:9:506:26 | item.get_content() | | associated_types.rs:505:20:505:30 | T::Output[GetSet] | +| associated_types.rs:509:35:509:38 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:509:35:509:38 | item | TRef | associated_types.rs:509:21:509:32 | T | +| associated_types.rs:509:45:509:46 | c1 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:509:60:509:61 | c2 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:509:75:509:76 | c3 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:509:90:512:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:510:9:510:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:510:9:510:12 | item | TRef | associated_types.rs:509:21:509:32 | T | +| associated_types.rs:510:9:510:20 | item.set(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:510:18:510:19 | c1 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:511:9:511:12 | item | | {EXTERNAL LOCATION} | & | +| associated_types.rs:511:9:511:12 | item | TRef | associated_types.rs:509:21:509:32 | T | +| associated_types.rs:511:9:511:31 | item.insert_two(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:511:25:511:26 | c2 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:511:29:511:30 | c3 | | associated_types.rs:509:21:509:32 | T::Output[GetSet] | +| associated_types.rs:514:19:523:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:515:13:515:17 | item1 | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:515:13:515:17 | item1 | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:515:21:515:33 | MyType(...) | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:515:21:515:33 | MyType(...) | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:515:28:515:32 | 42i64 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:516:13:516:21 | _content1 | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:516:25:516:29 | item1 | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:516:25:516:29 | item1 | T | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:516:25:516:43 | item1.get_content() | | {EXTERNAL LOCATION} | i64 | +| associated_types.rs:518:13:518:17 | item2 | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:518:13:518:17 | item2 | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:518:21:518:32 | MyType(...) | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:518:21:518:32 | MyType(...) | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:518:28:518:31 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:519:37:519:42 | &item2 | | {EXTERNAL LOCATION} | & | +| associated_types.rs:519:37:519:42 | &item2 | TRef | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:519:37:519:42 | &item2 | TRef.T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:519:38:519:42 | item2 | | associated_types.rs:469:5:469:24 | MyType | +| associated_types.rs:519:38:519:42 | item2 | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:521:13:521:21 | _content3 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:521:25:521:34 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:521:25:521:34 | Odd(...) | OddT | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:521:25:521:48 | ... .get_content() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:521:29:521:33 | 42i32 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:522:13:522:21 | _content4 | | {EXTERNAL LOCATION} | char | +| associated_types.rs:522:25:522:33 | Odd(...) | | associated_types.rs:67:1:67:23 | Odd | +| associated_types.rs:522:25:522:33 | Odd(...) | OddT | {EXTERNAL LOCATION} | bool | +| associated_types.rs:522:25:522:47 | ... .get_content() | | {EXTERNAL LOCATION} | char | +| associated_types.rs:522:29:522:32 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:536:16:536:20 | SelfParam | | {EXTERNAL LOCATION} | & | +| associated_types.rs:536:16:536:20 | SelfParam | TRef | associated_types.rs:529:5:529:20 | ST | +| associated_types.rs:536:16:536:20 | SelfParam | TRef.T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:536:39:538:9 | { ... } | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:536:39:538:9 | { ... } | E | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:536:39:538:9 | { ... } | T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:537:13:537:22 | Ok(...) | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:537:13:537:22 | Ok(...) | E | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:537:13:537:22 | Ok(...) | T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:537:16:537:19 | self | | {EXTERNAL LOCATION} | & | +| associated_types.rs:537:16:537:19 | self | TRef | associated_types.rs:529:5:529:20 | ST | +| associated_types.rs:537:16:537:19 | self | TRef.T | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:537:16:537:21 | self.0 | | associated_types.rs:531:10:531:21 | Output | +| associated_types.rs:541:19:543:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:542:13:542:14 | _y | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:542:13:542:14 | _y | E | {EXTERNAL LOCATION} | bool | +| associated_types.rs:542:13:542:14 | _y | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:542:18:542:25 | ST(...) | | associated_types.rs:529:5:529:20 | ST | +| associated_types.rs:542:18:542:25 | ST(...) | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:542:18:542:31 | ... .get() | | {EXTERNAL LOCATION} | Result | +| associated_types.rs:542:18:542:31 | ... .get() | E | {EXTERNAL LOCATION} | bool | +| associated_types.rs:542:18:542:31 | ... .get() | T | {EXTERNAL LOCATION} | bool | +| associated_types.rs:542:21:542:24 | true | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:550:31:550:31 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:550:31:550:31 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:550:31:550:31 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:550:61:558:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:552:13:552:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:552:19:552:22 | (...) | | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:552:19:552:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:552:19:552:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:552:20:552:21 | * ... | | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:552:20:552:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:552:21:552:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:552:21:552:21 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:552:21:552:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:555:13:555:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:555:19:555:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:555:19:555:19 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:555:19:555:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:555:19:555:25 | t.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:557:13:557:15 | _a3 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:557:19:557:24 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:557:23:557:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:557:23:557:23 | t | TRef | associated_types.rs:19:1:27:1 | dyn GetSet | +| associated_types.rs:557:23:557:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:560:36:560:36 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:560:36:560:36 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:560:36:560:36 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:560:36:560:36 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:560:92:566:5 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:561:13:561:15 | _a1 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:561:19:561:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:561:19:561:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:561:19:561:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:561:19:561:28 | ... .get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:561:20:561:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:561:20:561:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:561:20:561:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:561:21:561:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:561:21:561:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:561:21:561:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:561:21:561:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:562:13:562:15 | _a2 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:562:19:562:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:562:19:562:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:562:19:562:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:562:19:562:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:562:19:562:25 | t.get() | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:563:13:563:15 | _a3 | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:563:19:563:24 | get(...) | | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:563:23:563:23 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:563:23:563:23 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:563:23:563:23 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:563:23:563:23 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:564:13:564:15 | _b1 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:564:19:564:22 | (...) | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:564:19:564:22 | (...) | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:564:19:564:22 | (...) | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:564:19:564:36 | ... .get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:564:20:564:21 | * ... | | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:564:20:564:21 | * ... | dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:564:20:564:21 | * ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:564:21:564:21 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:564:21:564:21 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:564:21:564:21 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:564:21:564:21 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:565:13:565:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:565:19:565:19 | t | | {EXTERNAL LOCATION} | & | +| associated_types.rs:565:19:565:19 | t | TRef | associated_types.rs:33:1:38:1 | dyn AnotherGet | +| associated_types.rs:565:19:565:19 | t | TRef.dyn(AnotherOutput) | {EXTERNAL LOCATION} | bool | +| associated_types.rs:565:19:565:19 | t | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| associated_types.rs:565:19:565:33 | t.get_another() | | {EXTERNAL LOCATION} | bool | +| associated_types.rs:569:15:578:1 | { ... } | | {EXTERNAL LOCATION} | () | +| associated_types.rs:570:5:570:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:571:5:571:48 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:572:5:572:59 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:573:5:573:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:574:5:574:35 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:575:5:575:37 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:576:5:576:41 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| associated_types.rs:577:5:577:46 | ...::test(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:15:18:15:22 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:15:18:15:22 | SelfParam | TRef | blanket_impl.rs:9:5:10:14 | S2 | | blanket_impl.rs:15:42:17:9 | { ... } | | {EXTERNAL LOCATION} | & | From 89e9a253eb142a25da6462cd23b87ac54df93ad3 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Fri, 6 Feb 2026 10:57:56 +0100 Subject: [PATCH 384/433] Rust: Distinguish path resolution expectations from type inference expectations --- .../PathResolutionInlineExpectationsTest.qll | 28 +++++++-- .../library-tests/path-resolution/main.rs | 62 +++++++++---------- .../test/library-tests/path-resolution/my.rs | 2 +- 3 files changed, 55 insertions(+), 37 deletions(-) diff --git a/rust/ql/lib/utils/test/PathResolutionInlineExpectationsTest.qll b/rust/ql/lib/utils/test/PathResolutionInlineExpectationsTest.qll index bde96ace1a4a..f4544cafacc1 100644 --- a/rust/ql/lib/utils/test/PathResolutionInlineExpectationsTest.qll +++ b/rust/ql/lib/utils/test/PathResolutionInlineExpectationsTest.qll @@ -8,7 +8,7 @@ private import codeql.rust.internal.typeinference.TypeInference private import utils.test.InlineExpectationsTest private module ResolveTest implements TestSig { - string getARelevantTag() { result = "item" } + string getARelevantTag() { result = ["item", "target", "item_not_target"] } private predicate itemAt(ItemNode i, string filepath, int line) { i.getLocation().hasLocationInfo(filepath, _, _, line, _) @@ -36,19 +36,37 @@ private module ResolveTest implements TestSig { ) } + private Item getCallExprTarget(Path p) { + exists(CallExpr ce | + p = ce.getFunction().(PathExpr).getPath() and + result = ce.getResolvedTarget() + ) + } + predicate hasActualResult(Location location, string element, string tag, string value) { - exists(AstNode n | + exists(AstNode n, ItemNode i | not n = any(Path parent).getQualifier() and location = n.getLocation() and n.fromSource() and not location.getFile().getAbsolutePath().matches("%proc_macro.rs") and not n.isFromMacroExpansion() and element = n.toString() and - tag = "item" + item(i, value) | - item(resolvePath(n), value) + i = resolvePath(n) and + ( + if exists(getCallExprTarget(n)) and not i = getCallExprTarget(n) + then tag = "item_not_target" + else tag = "item" + ) or - item(n.(MethodCallExpr).getStaticTarget(), value) + tag = "target" and + ( + i = n.(MethodCallExpr).getStaticTarget() + or + i = getCallExprTarget(n) and + not i = resolvePath(n) + ) ) } } diff --git a/rust/ql/test/library-tests/path-resolution/main.rs b/rust/ql/test/library-tests/path-resolution/main.rs index 773b082cd02a..c96f9ef30f0a 100644 --- a/rust/ql/test/library-tests/path-resolution/main.rs +++ b/rust/ql/test/library-tests/path-resolution/main.rs @@ -189,18 +189,18 @@ mod m8 { #[rustfmt::skip] pub fn g() { let x = MyStruct {}; // $ item=I50 - MyTrait::f(&x); // $ item=I48 + MyTrait::f(&x); // $ item_not_target=I48 target=I53 MyStruct::f(&x); // $ item=I53 // $ MISSING: item=52 - ::f(&x); // $ item=I48 + ::f(&x); // $ item_not_target=I48 target=I53 let x = MyStruct {}; // $ item=I50 - x.f(); // $ item=I53 + x.f(); // $ target=I53 let x = MyStruct {}; // $ item=I50 - x.g(); // $ item=I54 + x.g(); // $ target=I54 MyStruct::h(&x); // $ item=I74 - x.h(); // $ item=I74 + x.h(); // $ target=I74 } // I55 } // I46 @@ -316,7 +316,7 @@ mod m15 { fn f(&self) { println!("m15::Trait2::f"); // $ item=println Self::g(self); // $ item=I80 - self.g(); // $ item=I80 + self.g(); // $ target=I80 } // Trait2::f } // I82 @@ -331,7 +331,7 @@ mod m15 { fn f(&self, tt: TT) { // $ item=ITT Self::g(self); // $ item=I80 TT::g(&tt); // $ item=I80 - self.g(); // $ item=I80 + self.g(); // $ target=I80 } } // ITrait3 @@ -343,7 +343,7 @@ mod m15 { fn f(&self) { println!("m15::::f"); // $ item=println Self::g(self); // $ item=I77 - self.g(); // $ item=I77 + self.g(); // $ target=I77 } // I76 fn g(&self) { @@ -365,12 +365,12 @@ mod m15 { let x = S; // $ item=I81 ::f(&x); // $ item=Trait1::f + >::f(&x); // $ item_not_target=Trait1::f target=I76 ::f(&x); // $ item=Trait2::f + >::f(&x); // $ item_not_target=Trait2::f target=I78 S::g(&x); // $ item=I77 - x.g(); // $ item=I77 + x.g(); // $ target=I77 } // I75 } @@ -383,12 +383,12 @@ mod m16 { ; // Trait1::f fn g(&self) -> T {// $ item=I84 - self.f() // $ item=Trait1::f + self.f() // $ target=Trait1::f } // I85 fn h(&self) -> T { // $ item=I84 Self::g(&self); // $ item=I85 - self.g() // $ item=I85 + self.g() // $ target=I85 } // I96 const c: T // $ item=I84 @@ -405,7 +405,7 @@ mod m16 { fn f(&self) -> T { // $ item=I87 println!("m16::Trait2::f"); // $ item=println Self::g(self); // $ item=I85 - self.g(); // $ item=I85 + self.g(); // $ target=I85 Self::c // $ item=I94 } // Trait2::f } // I89 @@ -420,7 +420,7 @@ mod m16 { fn f(&self) -> S { // $ item=I90 println!("m16::>::f"); // $ item=println Self::g(self); // $ item=I92 - self.g() // $ item=I92 + self.g() // $ target=I92 } // I91 fn g(&self) -> S { // $ item=I90 @@ -452,16 +452,16 @@ mod m16 { as Trait1< S // $ item=I90 > // $ item=I86 - >::f(&x); // $ item=Trait1::f + >::f(&x); // $ item_not_target=Trait1::f target=I91 // $ item=I89 - >::f(&x); // $ item=Trait2::f + >::f(&x); // $ item_not_target=Trait2::f target=I93 S::g(&x); // $ item=I92 - x.g(); // $ item=I92 + x.g(); // $ target=I92 S::h(&x); // $ item=I96 - x.h(); // $ item=I96 + x.h(); // $ target=I96 S::c; // $ item=I95 :: // $ item=i32 - Assoc(); // $ item=S3i32AssocFunc $ SPURIOUS: item=S3boolAssocFunc (the spurious target is later filtered away by type inference) + Assoc(); // $ item=S3i32AssocFunc item_not_target=S3boolAssocFunc S3:::: // $ item=bool - f1(); // $ item=S3boolf1 $ SPURIOUS: item=S3i32f1 (the spurious target is later filtered away by type inference) + f1(); // $ item=S3boolf1 item_not_target=S3i32f1 S3:::: // $ item=i32 - f1(); // $ item=S3i32f1 $ SPURIOUS: item=S3boolf1 (the spurious target is later filtered away by type inference) + f1(); // $ item=S3i32f1 item_not_target=S3boolf1 } } @@ -628,7 +628,7 @@ mod trait_visibility { { // The `Bar` trait is not visible, but we can refer to its method // with a full path. - m::Bar::a_method(&x); // $ item=Bar::a_method + m::Bar::a_method(&x); // $ item_not_target=Bar::a_method target=X_Bar::a_method } } // trait_visibility::f } @@ -652,7 +652,7 @@ mod m17 { fn g(x: T) { // $ item=I5 - x.f(); // $ item=I1 + x.f(); // $ target=I1 T::f(&x); // $ item=I1 MyTrait::f(&x); // $ item=I1 } // I6 @@ -735,7 +735,7 @@ mod m23 { #[rustfmt::skip] pub fn f() { let x = S; // $ item=I4 - x.f(); // $ item=I5 + x.f(); // $ target=I5 } // I108 } @@ -760,7 +760,7 @@ mod m24 { T: TraitA // $ item=I111 item=I1151 { fn call_trait_a(&self) { - self.data.trait_a_method(); // $ item=I110 + self.data.trait_a_method(); // $ target=I110 } // I116 } @@ -772,8 +772,8 @@ mod m24 { T: TraitA, // $ item=I111 item=I1161 { fn call_both(&self) { - self.data.trait_a_method(); // $ item=I110 - self.data.trait_b_method(); // $ item=I112 + self.data.trait_a_method(); // $ target=I110 + self.data.trait_b_method(); // $ target=I112 } // I117 } @@ -798,8 +798,8 @@ mod m24 { let impl_obj = Implementor; // $ item=I118 let generic = GenericStruct { data: impl_obj }; // $ item=I115 - generic.call_trait_a(); // $ item=I116 - generic.call_both(); // $ item=I117 + generic.call_trait_a(); // $ target=I116 + generic.call_both(); // $ target=I117 // Access through where clause type parameter constraint GenericStruct::::call_trait_a(&generic); // $ item=I116 item=I118 @@ -1132,7 +1132,7 @@ fn main() { zelf::h(); // $ item=I25 z_changed(); // $ item=I122 AStruct::z_on_type(); // $ item=I124 - AStruct {}.z_on_instance(); // $ item=I123 item=I125 + AStruct {}.z_on_instance(); // $ item=I123 target=I125 impl_with_attribute_macro::test(); // $ item=impl_with_attribute_macro::test patterns::test(); // $ item=patterns::test } diff --git a/rust/ql/test/library-tests/path-resolution/my.rs b/rust/ql/test/library-tests/path-resolution/my.rs index 612e40d493f9..c506ba3c196a 100644 --- a/rust/ql/test/library-tests/path-resolution/my.rs +++ b/rust/ql/test/library-tests/path-resolution/my.rs @@ -30,7 +30,7 @@ fn int_div( ) -> Result // $ item=my::Result $ item=i32 { if y == 0 { - return Err("Div by zero".to_string()); // $ item=Err item=to_string + return Err("Div by zero".to_string()); // $ item=Err target=to_string } Ok(x / y) // $ item=Ok } From 287a8717a883b63ca699c81cce9eabfdda7e096d Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Wed, 11 Feb 2026 12:19:22 +0100 Subject: [PATCH 385/433] Rust: Apply suggestions from code review Co-authored-by: Tom Hvitved --- .../codeql/rust/internal/typeinference/AssociatedTypes.qll | 4 ++-- rust/ql/lib/codeql/rust/internal/typeinference/Type.qll | 2 +- .../ql/lib/codeql/rust/internal/typeinference/TypeMention.qll | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll b/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll index 546bdad61698..b53f6177ab9e 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll @@ -21,7 +21,7 @@ final class AssocType extends TypeAlias { /** Gets an associated type of `trait` or of a supertrait of `trait`. */ AssocType getTraitAssocType(Trait trait) { - result = trait.getSupertrait*().getAssocItemList().getAnAssocItem() + result.getTrait() = trait.getSupertrait*() } /** Holds if `path` is of the form `::name` */ @@ -44,7 +44,7 @@ predicate tpAssociatedType(TypeParam tp, AssocType assoc, Path path) { resolvePath(path.getQualifier()) = tp and resolvePath(path) = assoc or - exists(TypeRepr typeRepr, Path traitPath, string name | + exists(PathTypeRepr typeRepr, Path traitPath, string name | asTraitPath(path, typeRepr, traitPath, name) and tp = resolvePath(typeRepr.(PathTypeRepr).getPath()) and assoc = resolvePath(traitPath).(TraitItemNode).getAssocItem(name) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll b/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll index f9cebef35232..4a4f00d7ebaf 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll @@ -496,7 +496,7 @@ class TypeParamAssociatedTypeTypeParameter extends TypeParameter, AssocType getTypeAlias() { result = assoc } /** Gets a path that accesses this type parameter. */ - Path getPath() { tpAssociatedType(typeParam, assoc, result) } + Path getAPath() { tpAssociatedType(typeParam, assoc, result) } override ItemNode getDeclaringItem() { result.getTypeParam(_) = typeParam } diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index 0c71b03c6377..70e1b0d7e912 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -322,7 +322,7 @@ private module MkTypeMention Date: Wed, 11 Feb 2026 12:24:16 +0100 Subject: [PATCH 386/433] Rust: Minor tweaks in type inference --- .../{AssociatedTypes.qll => AssociatedType.qll} | 11 +++++------ .../lib/codeql/rust/internal/typeinference/Type.qll | 2 +- .../rust/internal/typeinference/TypeMention.qll | 6 +++--- 3 files changed, 9 insertions(+), 10 deletions(-) rename rust/ql/lib/codeql/rust/internal/typeinference/{AssociatedTypes.qll => AssociatedType.qll} (85%) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll b/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedType.qll similarity index 85% rename from rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll rename to rust/ql/lib/codeql/rust/internal/typeinference/AssociatedType.qll index b53f6177ab9e..6bd0db33158c 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedTypes.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/AssociatedType.qll @@ -20,12 +20,11 @@ final class AssocType extends TypeAlias { } /** Gets an associated type of `trait` or of a supertrait of `trait`. */ -AssocType getTraitAssocType(Trait trait) { - result.getTrait() = trait.getSupertrait*() -} +AssocType getTraitAssocType(Trait trait) { result.getTrait() = trait.getSupertrait*() } /** Holds if `path` is of the form `::name` */ -predicate asTraitPath(Path path, TypeRepr typeRepr, Path traitPath, string name) { +pragma[nomagic] +predicate pathTypeAsTraitAssoc(Path path, TypeRepr typeRepr, Path traitPath, string name) { exists(PathSegment segment | segment = path.getQualifier().getSegment() and typeRepr = segment.getTypeRepr() and @@ -45,8 +44,8 @@ predicate tpAssociatedType(TypeParam tp, AssocType assoc, Path path) { resolvePath(path) = assoc or exists(PathTypeRepr typeRepr, Path traitPath, string name | - asTraitPath(path, typeRepr, traitPath, name) and - tp = resolvePath(typeRepr.(PathTypeRepr).getPath()) and + pathTypeAsTraitAssoc(path, typeRepr, traitPath, name) and + tp = resolvePath(typeRepr.getPath()) and assoc = resolvePath(traitPath).(TraitItemNode).getAssocItem(name) ) } diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll b/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll index 4a4f00d7ebaf..05b6557522af 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/Type.qll @@ -8,7 +8,7 @@ private import codeql.rust.elements.internal.generated.Raw private import codeql.rust.elements.internal.generated.Synth private import codeql.rust.frameworks.stdlib.Stdlib private import codeql.rust.frameworks.stdlib.Builtins as Builtins -private import AssociatedTypes +private import AssociatedType /** * Holds if a dyn trait type for the trait `trait` should have a type parameter diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index 70e1b0d7e912..ef54fe18bb92 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -6,7 +6,7 @@ private import codeql.rust.frameworks.stdlib.Stdlib private import Type private import TypeAbstraction private import TypeInference -private import AssociatedTypes +private import AssociatedType bindingset[trait, name] pragma[inline_late] @@ -390,7 +390,7 @@ private module MkTypeMention::AssocType` // ^^^ tm ^^^^^^^^^ name exists(string name, Path traitPath | - asTraitPath(path, tm, traitPath, name) and + pathTypeAsTraitAssoc(path, tm, traitPath, name) and trait = resolvePath(traitPath) and getTraitAssocType(trait, name) = alias ) From bed1ec89816dacf1fddc92afb1d09b38fd4a1363 Mon Sep 17 00:00:00 2001 From: Chris Smowton Date: Wed, 11 Feb 2026 12:10:08 +0000 Subject: [PATCH 387/433] Enhance path validation recommendations Expanded recommendations for validating user input when constructing file paths, including normalization and using allowlists. --- .../src/Security/CWE-022/PathInjection.qhelp | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/python/ql/src/Security/CWE-022/PathInjection.qhelp b/python/ql/src/Security/CWE-022/PathInjection.qhelp index ed12b74b6d97..ebe267a462ce 100644 --- a/python/ql/src/Security/CWE-022/PathInjection.qhelp +++ b/python/ql/src/Security/CWE-022/PathInjection.qhelp @@ -13,21 +13,26 @@ attacker being able to influence behavior by modifying unexpected files.

-Validate user input before using it to construct a file path, either using an off-the-shelf library function -like werkzeug.utils.secure_filename, or by performing custom validation. +Validate paths constructed from untrusted user input before using them to access files.

-Ideally, follow these rules: +The choice of validation depends on the use case.

-
    -
  • Do not allow more than a single "." character.
  • -
  • Do not allow directory separators such as "/" or "\" (depending on the file system).
  • -
  • Do not rely on simply replacing problematic sequences such as "../". For example, after -applying this filter to ".../...//", the resulting string would still be "../".
  • -
  • Use an allowlist of known good patterns.
  • -
+

+If you want to allow paths spanning multiple folders, a common strategy is to make sure that the constructed +file path is contained within a safe root folder. First, normalize the path using os.path.normpath or +os.path.realpath to remove any ".." segments. Then check that the normalized path starts with the +root folder. Note that the normalization step is important, since otherwise even a path that starts with the root +folder could be used to access files outside the root folder. +

+ +

+More restrictive options include using a library function like werkzeug.utils.secure_filename to eliminate +any special characters from the file path, or restricting the path to an allow list of safe paths. These options are +safe, but can only be used in particular circumstances. +

From e6dbd525c318e5ac55edfbafc283fd3ef59e3330 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Mon, 9 Feb 2026 16:12:43 +0000 Subject: [PATCH 388/433] Add `RegexExecution` in `Concepts.qll` --- java/ql/lib/java.qll | 1 + java/ql/lib/semmle/code/java/Concepts.qll | 88 +++++++++++++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 java/ql/lib/semmle/code/java/Concepts.qll diff --git a/java/ql/lib/java.qll b/java/ql/lib/java.qll index 9644343e93b6..7d0f0b7546db 100644 --- a/java/ql/lib/java.qll +++ b/java/ql/lib/java.qll @@ -9,6 +9,7 @@ import semmle.code.Unit import semmle.code.java.Annotation import semmle.code.java.Compilation import semmle.code.java.CompilationUnit +import semmle.code.java.Concepts import semmle.code.java.ControlFlowGraph import semmle.code.java.Dependency import semmle.code.java.Element diff --git a/java/ql/lib/semmle/code/java/Concepts.qll b/java/ql/lib/semmle/code/java/Concepts.qll new file mode 100644 index 000000000000..3024455792c8 --- /dev/null +++ b/java/ql/lib/semmle/code/java/Concepts.qll @@ -0,0 +1,88 @@ +/** + * Provides abstract classes representing generic concepts such as file system + * access or system command execution, for which individual framework libraries + * provide concrete subclasses. + */ +overlay[local?] +module; + +import java +private import semmle.code.java.dataflow.DataFlow + +/** + * A data-flow node that executes a regular expression. + * + * Extend this class to refine existing API models. If you want to model new APIs, + * extend `RegexExecution::Range` instead. + */ +class RegexExecution extends DataFlow::Node instanceof RegexExecution::Range { + /** Gets the data flow node for the regex being executed by this node. */ + DataFlow::Node getRegex() { result = super.getRegex() } + + /** Gets a dataflow node for the string to be searched or matched against. */ + DataFlow::Node getString() { result = super.getString() } + + /** + * Gets the name of this regex execution, typically the name of an executing method. + * This is used for nice alert messages and should include the module if possible. + */ + string getName() { result = super.getName() } +} + +/** Provides classes for modeling new regular-expression execution APIs. */ +module RegexExecution { + /** + * A data flow node that executes a regular expression. + * + * Extend this class to model new APIs. If you want to refine existing API models, + * extend `RegexExecution` instead. + */ + abstract class Range extends DataFlow::Node { + /** Gets the data flow node for the regex being executed by this node. */ + abstract DataFlow::Node getRegex(); + + /** Gets a data flow node for the string to be searched or matched against. */ + abstract DataFlow::Node getString(); + + /** + * Gets the name of this regex execution, typically the name of an executing method. + * This is used for nice alert messages and should include the module if possible. + */ + abstract string getName(); + } + + private class RangeFromExpr extends Range { + private RegexExecutionExpr::Range ree; + + RangeFromExpr() { this.asExpr() = ree } + + override DataFlow::Node getRegex() { result.asExpr() = ree.getRegex() } + + override DataFlow::Node getString() { result.asExpr() = ree.getString() } + + override string getName() { result = ree.getName() } + } +} + +/** Provides classes for modeling new regular-expression execution APIs. */ +module RegexExecutionExpr { + /** + * An expression that executes a regular expression. + * + * Extend this class to model new APIs. If you want to refine existing API models, + * extend `RegexExecution` instead. + */ + abstract class Range extends Expr { + /** Gets the expression for the regex being executed by this node. */ + abstract Expr getRegex(); + + /** Gets a expression for the string to be searched or matched against. */ + abstract Expr getString(); + + /** + * Gets the name of this regex execution, typically the name of an executing method. + * This is used for nice alert messages and should include the module if possible. + */ + abstract string getName(); + } +} From 44eeee57570e6fd960defb342ec13bd65ad3aa51 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Tue, 10 Feb 2026 14:49:53 +0000 Subject: [PATCH 389/433] Add and improve classes for regex-related methods --- java/ql/lib/semmle/code/java/JDK.qll | 8 ++- .../lib/semmle/code/java/frameworks/Regex.qll | 51 +++++++++++++++++++ 2 files changed, 58 insertions(+), 1 deletion(-) diff --git a/java/ql/lib/semmle/code/java/JDK.qll b/java/ql/lib/semmle/code/java/JDK.qll index f965fbfe6ba6..fcb1980a33b6 100644 --- a/java/ql/lib/semmle/code/java/JDK.qll +++ b/java/ql/lib/semmle/code/java/JDK.qll @@ -48,13 +48,19 @@ class StringContainsMethod extends Method { } /** A call to the `java.lang.String.matches` method. */ -class StringMatchesCall extends MethodCall { +class StringMatchesCall extends MethodCall, RegexExecutionExpr::Range { StringMatchesCall() { exists(Method m | m = this.getMethod() | m.getDeclaringType() instanceof TypeString and m.hasName("matches") ) } + + override Expr getRegex() { result = this.getArgument(0) } + + override Expr getString() { result = this.getQualifier() } + + override string getName() { result = "String.matches" } } /** A call to the `java.lang.String.replaceAll` method. */ diff --git a/java/ql/lib/semmle/code/java/frameworks/Regex.qll b/java/ql/lib/semmle/code/java/frameworks/Regex.qll index 56be77eae825..e1a89e3239dc 100644 --- a/java/ql/lib/semmle/code/java/frameworks/Regex.qll +++ b/java/ql/lib/semmle/code/java/frameworks/Regex.qll @@ -3,6 +3,7 @@ overlay[local?] module; import java +private import semmle.code.java.dataflow.DataFlow /** The class `java.util.regex.Matcher`. */ class TypeRegexMatcher extends Class { @@ -24,6 +25,16 @@ class TypeRegexPattern extends Class { TypeRegexPattern() { this.hasQualifiedName("java.util.regex", "Pattern") } } +/** + * The `compile` method of `java.util.regex.Pattern`. + */ +class PatternCompileMethod extends Method { + PatternCompileMethod() { + this.getDeclaringType() instanceof TypeRegexPattern and + this.hasName("compile") + } +} + /** * The `matches` method of `java.util.regex.Pattern`. */ @@ -59,3 +70,43 @@ class PatternLiteralField extends Field { this.hasName("LITERAL") } } + +/** A call to the `compile` method of `java.util.regex.Pattern` */ +class PatternCompileCall extends MethodCall { + PatternCompileCall() { this.getMethod() instanceof PatternCompileMethod } +} + +/** A call to the `matcher` method of `java.util.regex.Pattern` */ +class PatternMatcherCall extends MethodCall { + PatternMatcherCall() { this.getMethod() instanceof PatternMatcherMethod } +} + +/** A call to the `matches` method of `java.util.regex.Pattern` */ +class PatternMatchesCall extends MethodCall, RegexExecutionExpr::Range { + PatternMatchesCall() { this.getMethod() instanceof PatternMatchesMethod } + + override Expr getRegex() { result = this.getArgument(0) } + + override Expr getString() { result = this.getArgument(1) } + + override string getName() { result = "Pattern.matches" } +} + +/** A call to the `matches` method of `java.util.regex.Matcher` */ +class MatcherMatchesCall extends MethodCall, RegexExecutionExpr::Range { + MatcherMatchesCall() { this.getMethod() instanceof MatcherMatchesMethod } + + PatternMatcherCall getPatternMatcherCall() { + DataFlow::localExprFlow(result, this.getQualifier()) + } + + PatternCompileCall getPatternCompileCall() { + DataFlow::localExprFlow(result, this.getPatternMatcherCall()) + } + + override Expr getRegex() { result = this.getPatternCompileCall().getArgument(0) } + + override Expr getString() { result = this.getPatternMatcherCall().getArgument(0) } + + override string getName() { result = "Matcher.matches" } +} From fa3fba4a00a86bc047a2fd3384748b27555fcb09 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Tue, 10 Feb 2026 14:51:08 +0000 Subject: [PATCH 390/433] Use new regex-related classes (no functional change) --- .../java/security/regexp/RegexInjection.qll | 8 ++- .../CWE/CWE-625/PermissiveDotRegexQuery.qll | 34 ++++--------- .../Security/CWE/CWE-625/Regex.qll | 51 ------------------- 3 files changed, 13 insertions(+), 80 deletions(-) delete mode 100644 java/ql/src/experimental/Security/CWE/CWE-625/Regex.qll diff --git a/java/ql/lib/semmle/code/java/security/regexp/RegexInjection.qll b/java/ql/lib/semmle/code/java/security/regexp/RegexInjection.qll index 944ffca803ae..a14a07e04463 100644 --- a/java/ql/lib/semmle/code/java/security/regexp/RegexInjection.qll +++ b/java/ql/lib/semmle/code/java/security/regexp/RegexInjection.qll @@ -31,11 +31,9 @@ private class ExternalRegexInjectionSanitizer extends RegexInjectionSanitizer { */ private class PatternLiteralFlag extends RegexInjectionSanitizer { PatternLiteralFlag() { - exists(MethodCall ma, Method m, PatternLiteralField field | m = ma.getMethod() | - ma.getArgument(0) = this.asExpr() and - m.getDeclaringType() instanceof TypeRegexPattern and - m.hasName("compile") and - ma.getArgument(1) = field.getAnAccess() + exists(PatternCompileCall pcc, PatternLiteralField field | + pcc.getArgument(0) = this.asExpr() and + pcc.getArgument(1) = field.getAnAccess() ) } } diff --git a/java/ql/src/experimental/Security/CWE/CWE-625/PermissiveDotRegexQuery.qll b/java/ql/src/experimental/Security/CWE/CWE-625/PermissiveDotRegexQuery.qll index f8e328902504..027e4f931cbd 100644 --- a/java/ql/src/experimental/Security/CWE/CWE-625/PermissiveDotRegexQuery.qll +++ b/java/ql/src/experimental/Security/CWE/CWE-625/PermissiveDotRegexQuery.qll @@ -7,7 +7,7 @@ private import semmle.code.java.dataflow.FlowSources import experimental.semmle.code.java.security.SpringUrlRedirect import semmle.code.java.controlflow.Guards import semmle.code.java.security.UrlRedirect -import Regex +private import semmle.code.java.frameworks.Regex overlay[local?] private class ActivateModels extends ActiveExperimentalModels { @@ -81,11 +81,11 @@ private class CompileRegexSink extends DataFlow::ExprNode { ( ma.getArgument(0) = this.asExpr() and ( - m instanceof StringMatchMethod // input.matches(regexPattern) + ma instanceof StringMatchesCall // input.matches(regexPattern) or - m instanceof PatternCompileMethod // p = Pattern.compile(regexPattern) + ma instanceof PatternCompileCall // p = Pattern.compile(regexPattern) or - m instanceof PatternMatchMethod // p = Pattern.matches(regexPattern, input) + ma instanceof PatternMatchesCall // p = Pattern.matches(regexPattern, input) ) ) ) @@ -107,7 +107,7 @@ private module PermissiveDotRegexConfig implements DataFlow::ConfigSig { ma.getMethod() instanceof PatternCompileMethod and ma.getArgument(1) = f.getAnAccess() and f.hasName("DOTALL") and - f.getDeclaringType() instanceof Pattern and + f.getDeclaringType() instanceof TypeRegexPattern and node.asExpr() = ma.getArgument(0) ) } @@ -147,11 +147,11 @@ module MatchRegexConfig implements DataFlow::ConfigSig { ) and exists(MethodCall ma | PermissiveDotRegexFlow::flowToExpr(ma.getArgument(0)) | // input.matches(regexPattern) - ma.getMethod() instanceof StringMatchMethod and + ma instanceof StringMatchesCall and ma.getQualifier() = sink.asExpr() or // p = Pattern.compile(regexPattern); p.matcher(input) - ma.getMethod() instanceof PatternCompileMethod and + ma instanceof PatternCompileCall and exists(MethodCall pma | pma.getMethod() instanceof PatternMatcherMethod and sink.asExpr() = pma.getArgument(0) and @@ -159,7 +159,7 @@ module MatchRegexConfig implements DataFlow::ConfigSig { ) or // p = Pattern.matches(regexPattern, input) - ma.getMethod() instanceof PatternMatchMethod and + ma instanceof PatternMatchesCall and sink.asExpr() = ma.getArgument(1) ) } @@ -176,28 +176,14 @@ abstract class MatchRegexSink extends DataFlow::ExprNode { } * A string being matched against a regular expression. */ private class StringMatchRegexSink extends MatchRegexSink { - StringMatchRegexSink() { - exists(MethodCall ma, Method m | m = ma.getMethod() | - ( - m instanceof StringMatchMethod and - ma.getQualifier() = this.asExpr() - ) - ) - } + StringMatchRegexSink() { any(StringMatchesCall mc).getQualifier() = this.asExpr() } } /** * A string being matched against a regular expression using a pattern. */ private class PatternMatchRegexSink extends MatchRegexSink { - PatternMatchRegexSink() { - exists(MethodCall ma, Method m | m = ma.getMethod() | - ( - m instanceof PatternMatchMethod and - ma.getArgument(1) = this.asExpr() - ) - ) - } + PatternMatchRegexSink() { any(PatternMatchesCall mc).getArgument(1) = this.asExpr() } } /** diff --git a/java/ql/src/experimental/Security/CWE/CWE-625/Regex.qll b/java/ql/src/experimental/Security/CWE/CWE-625/Regex.qll deleted file mode 100644 index e605f31a0b35..000000000000 --- a/java/ql/src/experimental/Security/CWE/CWE-625/Regex.qll +++ /dev/null @@ -1,51 +0,0 @@ -/** Provides methods related to regular expression matching. */ -deprecated module; - -import java - -/** - * The class `java.util.regex.Pattern`. - */ -class Pattern extends RefType { - Pattern() { this.hasQualifiedName("java.util.regex", "Pattern") } -} - -/** - * The method `compile` of `java.util.regex.Pattern`. - */ -class PatternCompileMethod extends Method { - PatternCompileMethod() { - this.getDeclaringType().getASupertype*() instanceof Pattern and - this.hasName("compile") - } -} - -/** - * The method `matches` of `java.util.regex.Pattern`. - */ -class PatternMatchMethod extends Method { - PatternMatchMethod() { - this.getDeclaringType().getASupertype*() instanceof Pattern and - this.hasName("matches") - } -} - -/** - * The method `matcher` of `java.util.regex.Pattern`. - */ -class PatternMatcherMethod extends Method { - PatternMatcherMethod() { - this.getDeclaringType().getASupertype*() instanceof Pattern and - this.hasName("matcher") - } -} - -/** - * The method `matches` of `java.lang.String`. - */ -class StringMatchMethod extends Method { - StringMatchMethod() { - this.getDeclaringType().getASupertype*() instanceof TypeString and - this.hasName("matches") - } -} From a22fd39230ddd590a01d5a505fd194ce1c87033e Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Tue, 10 Feb 2026 14:54:54 +0000 Subject: [PATCH 391/433] Use RegexExecution in sanitizer definitions (expands scope) --- .../semmle/code/java/security/PathSanitizer.qll | 13 +++++-------- .../lib/semmle/code/java/security/Sanitizers.qll | 14 +++----------- 2 files changed, 8 insertions(+), 19 deletions(-) diff --git a/java/ql/lib/semmle/code/java/security/PathSanitizer.qll b/java/ql/lib/semmle/code/java/security/PathSanitizer.qll index 4685f5e48f71..ffd506550016 100644 --- a/java/ql/lib/semmle/code/java/security/PathSanitizer.qll +++ b/java/ql/lib/semmle/code/java/security/PathSanitizer.qll @@ -427,20 +427,17 @@ private class ReplaceDirectoryCharactersSanitizer extends StringReplaceOrReplace } } -/** Holds if `target` is the first argument of `matchesCall`. */ -private predicate isMatchesTarget(StringMatchesCall matchesCall, CompileTimeConstantExpr target) { - target = matchesCall.getArgument(0) -} - /** * Holds if `matchesCall` confirms that `checkedExpr` does not contain any directory characters * on the given `branch`. */ -private predicate isMatchesCall(StringMatchesCall matchesCall, Expr checkedExpr, boolean branch) { +private predicate isMatchesCall( + RegexExecutionExpr::Range regexMatch, Expr checkedExpr, boolean branch +) { exists(CompileTimeConstantExpr target, string targetValue | - isMatchesTarget(matchesCall, target) and + target = regexMatch.getRegex() and target.getStringValue() = targetValue and - checkedExpr = matchesCall.getQualifier() + checkedExpr = regexMatch.getString() | ( // Allow anything except `.`, '/', '\' diff --git a/java/ql/lib/semmle/code/java/security/Sanitizers.qll b/java/ql/lib/semmle/code/java/security/Sanitizers.qll index 3f909864d2cd..ddac010391e9 100644 --- a/java/ql/lib/semmle/code/java/security/Sanitizers.qll +++ b/java/ql/lib/semmle/code/java/security/Sanitizers.qll @@ -46,19 +46,11 @@ predicate regexpMatchGuardChecks(Guard guard, Expr e, boolean branch) { guard = mc and branch = true | - // `String.matches` and other `matches` methods. + e = mc.(RegexExecutionExpr::Range).getString() + or + // Other `matches` methods. method.getName() = "matches" and e = mc.getQualifier() - or - method instanceof PatternMatchesMethod and - e = mc.getArgument(1) - or - method instanceof MatcherMatchesMethod and - exists(MethodCall matcherCall | - matcherCall.getMethod() instanceof PatternMatcherMethod and - e = matcherCall.getArgument(0) and - DataFlow::localExprFlow(matcherCall, mc.getQualifier()) - ) ) } From 1ee57283113b29ba569ada3167fe7cbf7b40589f Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Wed, 11 Feb 2026 13:40:20 +0000 Subject: [PATCH 392/433] Add missing QLDoc --- java/ql/lib/semmle/code/java/frameworks/Regex.qll | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/java/ql/lib/semmle/code/java/frameworks/Regex.qll b/java/ql/lib/semmle/code/java/frameworks/Regex.qll index e1a89e3239dc..28b7dd6a31a6 100644 --- a/java/ql/lib/semmle/code/java/frameworks/Regex.qll +++ b/java/ql/lib/semmle/code/java/frameworks/Regex.qll @@ -96,10 +96,20 @@ class PatternMatchesCall extends MethodCall, RegexExecutionExpr::Range { class MatcherMatchesCall extends MethodCall, RegexExecutionExpr::Range { MatcherMatchesCall() { this.getMethod() instanceof MatcherMatchesMethod } + /** + * Get the call to `java.util.regex.Pattern.matcher` which returned the + * qualifier of this call. This is needed to determine the string being + * matched. + */ PatternMatcherCall getPatternMatcherCall() { DataFlow::localExprFlow(result, this.getQualifier()) } + /** + * Get the call to `java.util.regex.Pattern.compile` which returned the + * `Pattern` used by this matcher. This is needed to determine the regular + * expression being used. + */ PatternCompileCall getPatternCompileCall() { DataFlow::localExprFlow(result, this.getPatternMatcherCall()) } From 6a8204d28c6199135753bac75d397eba88822841 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Wed, 11 Feb 2026 13:41:14 +0000 Subject: [PATCH 393/433] "dataflow" -> "data flow" in QLDoc --- java/ql/lib/semmle/code/java/Concepts.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/ql/lib/semmle/code/java/Concepts.qll b/java/ql/lib/semmle/code/java/Concepts.qll index 3024455792c8..ebe37bc2bc4d 100644 --- a/java/ql/lib/semmle/code/java/Concepts.qll +++ b/java/ql/lib/semmle/code/java/Concepts.qll @@ -19,7 +19,7 @@ class RegexExecution extends DataFlow::Node instanceof RegexExecution::Range { /** Gets the data flow node for the regex being executed by this node. */ DataFlow::Node getRegex() { result = super.getRegex() } - /** Gets a dataflow node for the string to be searched or matched against. */ + /** Gets a data flow node for the string to be searched or matched against. */ DataFlow::Node getString() { result = super.getString() } /** From 9f5b8141f01c961f82f83b1c04ea030b8d1722e9 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Wed, 11 Feb 2026 16:11:30 +0100 Subject: [PATCH 394/433] Rust: Fix bad join Before ``` Pipeline standard for TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOfToIndex/4#f6ff35dc@be110b6w was evaluated in 512 iterations totaling 114ms (delta sizes total: 10942). 8395 ~0% {5} r1 = JOIN `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOfToIndex/4#f6ff35dc#prev_delta` WITH `TypeInference::NonMethodResolution::NonMethodCall.resolveCallTargetBlanketCand/1#dispred#f8b86f2d#prev` ON FIRST 3 OUTPUT Lhs.1, Lhs.2, _, Lhs.0, Lhs.3 8395 ~0% {4} | REWRITE WITH Tmp.2 := 1, Out.2 := (Tmp.2 + In.4) KEEPING 4 8448 ~0% {5} | JOIN WITH `project#TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::toCheckRanked/5#52f6d5e0#2_0132#join_rhs` ON FIRST 3 OUTPUT Lhs.3, Rhs.3, Lhs.0, Lhs.1, Lhs.2 7440 ~0% {5} | JOIN WITH TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::MkCallAndPos#53e3fb94#prev ON FIRST 2 OUTPUT Rhs.2, Lhs.2, Lhs.0, Lhs.3, Lhs.4 0 ~0% {4} | JOIN WITH `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::ArgIsInstantiationOfToIndex::ArgSubstIsInstantiationOf::isInstantiationOf/3#5154f0d6#prev` ON FIRST 2 OUTPUT Lhs.2, Lhs.1, Lhs.3, Lhs.4 2937 ~0% {5} r2 = JOIN TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::MkCallAndPos#53e3fb94#prev_delta WITH `TypeInference::NonMethodResolution::NonMethodCall.resolveCallTargetBlanketCand/1#dispred#f8b86f2d#prev` ON FIRST 1 OUTPUT Lhs.2, Rhs.1, Lhs.0, Lhs.1, Rhs.2 0 ~0% {4} | JOIN WITH `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::ArgIsInstantiationOfToIndex::ArgSubstIsInstantiationOf::isInstantiationOf/3#5154f0d6#prev` ON FIRST 2 OUTPUT Lhs.1, Lhs.4, Lhs.3, Lhs.2 0 ~0% {6} r3 = JOIN r2 WITH `project#TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::toCheckRanked/5#52f6d5e0#2` ON FIRST 3 OUTPUT Lhs.3, Lhs.2, Lhs.0, Lhs.1, Rhs.3, _ {5} | REWRITE WITH Tmp.5 := 0, TEST InOut.4 = Tmp.5 KEEPING 5 0 ~0% {5} | SCAN OUTPUT In.2, In.3, In.1, _, In.0 0 ~0% {5} | REWRITE WITH Out.3 := 0 0 ~0% {4} | JOIN WITH `project#TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::toCheckRanked/5#52f6d5e0#2` ON FIRST 4 OUTPUT Lhs.4, Lhs.0, Lhs.1, _ 0 ~0% {4} | REWRITE WITH Out.3 := 0 12463 ~0% {2} r4 = SCAN `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::ArgIsInstantiationOfToIndex::ArgSubstIsInstantiationOf::isInstantiationOf/3#5154f0d6#prev_delta` OUTPUT In.1, In.0 22532135 ~0% {4} | JOIN WITH `TypeInference::NonMethodResolution::NonMethodCall.resolveCallTargetBlanketCand/1#dispred#f8b86f2d#reorder_1_0_2#prev` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0, Rhs.2 12463 ~0% {4} | JOIN WITH TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::MkCallAndPos#53e3fb94#reorder_0_2_1#prev ON FIRST 2 OUTPUT Lhs.2, Lhs.3, Rhs.2, Lhs.0 12463 ~2% {6} r5 = JOIN r4 WITH `project#TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::toCheckRanked/5#52f6d5e0#2` ON FIRST 3 OUTPUT Lhs.0, Lhs.3, Lhs.1, Lhs.2, Rhs.3, _ {5} | REWRITE WITH Tmp.5 := 0, TEST InOut.4 = Tmp.5 KEEPING 5 4285 ~0% {5} | SCAN OUTPUT In.0, In.2, In.3, _, In.1 4285 ~0% {5} | REWRITE WITH Out.3 := 0 4285 ~1% {4} | JOIN WITH `project#TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::toCheckRanked/5#52f6d5e0#2` ON FIRST 4 OUTPUT Lhs.4, Lhs.0, Lhs.1, _ 4285 ~1% {4} | REWRITE WITH Out.3 := 0 0 ~0% {4} r6 = JOIN r2 WITH `project#TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::toCheckRanked/5#52f6d5e0#2` ON FIRST 3 OUTPUT Lhs.3, Lhs.0, Lhs.1, Rhs.3 0 ~0% {6} | JOIN WITH `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOfToIndex/4#f6ff35dc#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3, Rhs.3, _ {6} | REWRITE WITH Tmp.5 := 1, Out.5 := (InOut.3 - Tmp.5), TEST Out.5 = InOut.4 0 ~0% {4} | SCAN OUTPUT In.0, In.1, In.2, In.3 12463 ~45% {4} r7 = JOIN r4 WITH `project#TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::toCheckRanked/5#52f6d5e0#2` ON FIRST 3 OUTPUT Lhs.3, Lhs.0, Lhs.1, Rhs.3 8178 ~50% {6} | JOIN WITH `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOfToIndex/4#f6ff35dc#prev` ON FIRST 3 OUTPUT Lhs.1, Lhs.0, Lhs.2, Lhs.3, Rhs.3, _ {6} | REWRITE WITH Tmp.5 := 1, Out.5 := (InOut.3 - Tmp.5), TEST Out.5 = InOut.4 7428 ~58% {4} | SCAN OUTPUT In.1, In.0, In.2, In.3 4264 ~0% {3} r8 = SCAN `TypeInference::NonMethodResolution::NonMethodCall.resolveCallTargetBlanketCand/1#dispred#f8b86f2d#prev_delta` OUTPUT In.1, In.2, In.0 4312 ~0% {5} r9 = JOIN r8 WITH `_project#TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::toCheckRanked/__#join_rhs#1` ON FIRST 2 OUTPUT Lhs.0, Lhs.1, Rhs.2, _, Lhs.2 4312 ~0% {5} | REWRITE WITH Out.3 := 0 4312 ~0% {5} | JOIN WITH `project#TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::toCheckRanked/5#52f6d5e0#2` ON FIRST 4 OUTPUT Lhs.4, Lhs.2, Lhs.0, Lhs.1, _ 4312 ~0% {5} | REWRITE WITH Out.4 := 0 12760 ~0% {5} r10 = JOIN r8 WITH `project#TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::toCheckRanked/5#52f6d5e0#2` ON FIRST 2 OUTPUT Lhs.2, Lhs.0, Lhs.1, Rhs.2, Rhs.3 0 ~0% {7} | JOIN WITH `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOfToIndex/4#f6ff35dc#prev` ON FIRST 3 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.4, Lhs.0, Rhs.3, _ {7} | REWRITE WITH Tmp.6 := 1, Out.6 := (InOut.3 - Tmp.6), TEST Out.6 = InOut.5 0 ~0% {5} | SCAN OUTPUT In.4, In.2, In.0, In.1, In.3 4312 ~0% {5} r11 = r9 UNION r10 4288 ~0% {5} | JOIN WITH TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::MkCallAndPos#53e3fb94#prev ON FIRST 2 OUTPUT Rhs.2, Lhs.2, Lhs.3, Lhs.4, Lhs.0 0 ~0% {4} | JOIN WITH `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::ArgIsInstantiationOfToIndex::ArgSubstIsInstantiationOf::isInstantiationOf/3#5154f0d6#prev` ON FIRST 2 OUTPUT Lhs.4, Lhs.1, Lhs.2, Lhs.3 11713 ~36% {4} r12 = r1 UNION r3 UNION r5 UNION r6 UNION r7 UNION r11 10942 ~39% {4} | AND NOT `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOfToIndex/4#f6ff35dc#prev`(FIRST 4) return r12 ``` After ``` Pipeline standard for TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOfToIndex/4#f6ff35dc@07309ry7 was evaluated in 168 iterations totaling 145ms (delta sizes total: 8395). 12517 ~0% {6} r1 = SCAN `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argIsInstantiationOf/5#efdc1fbb#reorder_0_2_3_4_1#prev_delta` OUTPUT In.0, In.1, In.2, In.3, In.4, _ 4337 ~0% {5} | REWRITE WITH Tmp.5 := 0, TEST InOut.3 = Tmp.5 KEEPING 5 4285 ~1% {4} | JOIN WITH `TypeInference::NonMethodResolution::NonMethodCall.resolveCallTargetBlanketCand/1#dispred#f8b86f2d#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.1, Lhs.2, _ 4285 ~1% {4} | REWRITE WITH Out.3 := 0 0 ~0% {4} r2 = JOIN `TypeInference::NonMethodResolution::NonMethodCall.resolveCallTargetBlanketCand/1#dispred#f8b86f2d#prev_delta` WITH `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argIsInstantiationOf/5#efdc1fbb#reorder_0_2_3_4_1#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.1, Lhs.2, Rhs.3 0 ~0% {5} r3 = SCAN r2 OUTPUT In.0, In.1, In.2, In.3, _ {4} | REWRITE WITH Tmp.4 := 0, TEST InOut.3 = Tmp.4 KEEPING 4 0 ~0% {4} | SCAN OUTPUT In.0, In.1, In.2, _ 0 ~0% {4} | REWRITE WITH Out.3 := 0 8395 ~0% {5} r4 = JOIN `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOfToIndex/4#f6ff35dc#prev_delta` WITH `TypeInference::NonMethodResolution::NonMethodCall.resolveCallTargetBlanketCand/1#dispred#f8b86f2d#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.1, Lhs.2, _, Lhs.3 8395 ~0% {4} | REWRITE WITH Tmp.3 := 1, Out.3 := (Tmp.3 + In.4) KEEPING 4 0 ~0% {4} | JOIN WITH `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argIsInstantiationOf/5#efdc1fbb#reorder_0_2_3_4_1#prev` ON FIRST 4 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3 0 ~0% {6} r5 = JOIN r2 WITH `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOfToIndex/4#f6ff35dc#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3, Rhs.3, _ {6} | REWRITE WITH Tmp.5 := 1, Out.5 := (InOut.3 - Tmp.5), TEST Out.5 = InOut.4 0 ~0% {4} | SCAN OUTPUT In.0, In.1, In.2, In.3 12517 ~18% {4} r6 = SCAN `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argIsInstantiationOf/5#efdc1fbb#reorder_0_2_3_4_1#prev_delta` OUTPUT In.0, In.1, In.2, In.3 11759 ~12% {4} | JOIN WITH `TypeInference::NonMethodResolution::NonMethodCall.resolveCallTargetBlanketCand/1#dispred#f8b86f2d#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3 9874 ~12% {6} | JOIN WITH `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOfToIndex/4#f6ff35dc#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3, Rhs.3, _ {6} | REWRITE WITH Tmp.5 := 1, Out.5 := (InOut.3 - Tmp.5), TEST Out.5 = InOut.4 7476 ~18% {4} | SCAN OUTPUT In.0, In.1, In.2, In.3 11761 ~12% {4} r7 = r1 UNION r3 UNION r4 UNION r5 UNION r6 8395 ~0% {4} | AND NOT `TypeInference::NonMethodResolution::NonMethodArgsAreInstantiationsOfBlanket::argsAreInstantiationsOfToIndex/4#f6ff35dc#prev`(FIRST 4) return r7 ``` --- .../rust/internal/typeinference/FunctionType.qll | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll index aeb186c0cdcb..74d8385bdf20 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll @@ -419,14 +419,21 @@ module ArgsAreInstantiationsOf { private module ArgIsInstantiationOfToIndex = ArgIsInstantiationOf; + pragma[nomagic] + private predicate argIsInstantiationOf( + Input::Call call, FunctionPosition pos, ImplOrTraitItemNode i, Function f, int rnk + ) { + ArgIsInstantiationOfToIndex::argIsInstantiationOf(MkCallAndPos(call, pos), i, _) and + toCheckRanked(i, f, _, pos, rnk) + } + pragma[nomagic] private predicate argsAreInstantiationsOfToIndex( Input::Call call, ImplOrTraitItemNode i, Function f, int rnk ) { exists(FunctionPosition pos | - ArgIsInstantiationOfToIndex::argIsInstantiationOf(MkCallAndPos(call, pos), i, _) and - call.hasTargetCand(i, f) and - toCheckRanked(i, f, _, pos, rnk) + argIsInstantiationOf(call, pos, i, f, rnk) and + call.hasTargetCand(i, f) | rnk = 0 or From b14ece72becf72326a2d31c07458d8df432ad706 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Wed, 11 Feb 2026 16:45:57 +0000 Subject: [PATCH 395/433] C++: Add range analysis test demonstrating missing measuring bounds. --- .../SimpleRangeAnalysis/lowerBound.expected | 15 ++++ .../SimpleRangeAnalysis/missing_bounds.cpp | 73 +++++++++++++++++++ .../SimpleRangeAnalysis/nrOfBounds.expected | 30 ++++++++ .../SimpleRangeAnalysis/nrOfBounds.ql | 3 + .../SimpleRangeAnalysis/upperBound.expected | 15 ++++ 5 files changed, 136 insertions(+) create mode 100644 cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected index 0c520190c8b0..8853777d339f 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected @@ -17,6 +17,21 @@ | minmax.c:26:37:26:37 | x | 1 | | minmax.c:26:40:26:40 | y | 2 | | minmax.c:26:43:26:43 | z | 0 | +| missing_bounds.cpp:40:5:40:20 | x | 0 | +| missing_bounds.cpp:40:5:40:20 | x | 0 | +| missing_bounds.cpp:41:5:41:20 | x | 0 | +| missing_bounds.cpp:41:5:41:20 | x | 0 | +| missing_bounds.cpp:42:5:42:20 | x | 0 | +| missing_bounds.cpp:42:5:42:20 | x | 0 | +| missing_bounds.cpp:43:5:43:20 | x | 0 | +| missing_bounds.cpp:43:5:43:20 | x | 0 | +| missing_bounds.cpp:44:5:44:20 | x | 0 | +| missing_bounds.cpp:44:5:44:20 | x | 0 | +| missing_bounds.cpp:45:5:45:20 | x | 0 | +| missing_bounds.cpp:45:5:45:20 | x | 0 | +| missing_bounds.cpp:46:5:46:20 | x | 0 | +| missing_bounds.cpp:46:5:46:20 | x | 0 | +| missing_bounds.cpp:72:12:72:12 | x | 0 | | test.c:8:5:8:9 | count | -2147483648 | | test.c:8:13:8:17 | count | -2147483648 | | test.c:10:10:10:14 | count | -2147483648 | diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp new file mode 100644 index 000000000000..cdb332e9387e --- /dev/null +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp @@ -0,0 +1,73 @@ +enum MY_ENUM { + A = 0x1, // $ nonFunctionalNrOfBounds + B = 0x2, // $ nonFunctionalNrOfBounds + C = 0x4, // $ nonFunctionalNrOfBounds + D = 0x8, // $ nonFunctionalNrOfBounds + E = 0x10, // $ nonFunctionalNrOfBounds + F = 0x20, // $ nonFunctionalNrOfBounds + G = 0x40, // $ nonFunctionalNrOfBounds + H = 0x80, // $ nonFunctionalNrOfBounds + I = 0x100, // $ nonFunctionalNrOfBounds + J = 0x200, // $ nonFunctionalNrOfBounds + L = 0x400, // $ nonFunctionalNrOfBounds + M = 0x800, // $ nonFunctionalNrOfBounds + N = 0x1000, // $ nonFunctionalNrOfBounds + O = 0x2000, // $ nonFunctionalNrOfBounds + P = 0x4000, // $ nonFunctionalNrOfBounds + Q = 0x8000, // $ nonFunctionalNrOfBounds + R = 0x10000, // $ nonFunctionalNrOfBounds + S = 0x20000, // $ nonFunctionalNrOfBounds + T = 0x40000, // $ nonFunctionalNrOfBounds + U = 0x80000, // $ nonFunctionalNrOfBounds + V = 0x100000, // $ nonFunctionalNrOfBounds + W = 0x200000, // $ nonFunctionalNrOfBounds + X = 0x400000, // $ nonFunctionalNrOfBounds + Y = 0x800000, // $ nonFunctionalNrOfBounds + Z = 0x1000000, // $ nonFunctionalNrOfBounds + AA = 0x2000000, // $ nonFunctionalNrOfBounds + AB = 0x4000000, // $ nonFunctionalNrOfBounds + AC = 0x8000000, // $ nonFunctionalNrOfBounds + AD = 0x10000000, // $ nonFunctionalNrOfBounds + AE = 0x20000000 // $ nonFunctionalNrOfBounds +}; + +typedef unsigned int MY_ENUM_FLAGS; + +MY_ENUM_FLAGS check_and_subs(MY_ENUM_FLAGS x) +{ + + #define CHECK_AND_SUB(flag) if ((x & flag) == flag) { x -= flag; } + CHECK_AND_SUB(A); // $ nonFunctionalNrOfBounds + CHECK_AND_SUB(B); // $ nonFunctionalNrOfBounds + CHECK_AND_SUB(C); // $ nonFunctionalNrOfBounds + CHECK_AND_SUB(D); // $ nonFunctionalNrOfBounds + CHECK_AND_SUB(E); // $ nonFunctionalNrOfBounds + CHECK_AND_SUB(F); // $ nonFunctionalNrOfBounds + CHECK_AND_SUB(G); // $ nonFunctionalNrOfBounds + // CHECK_AND_SUB(H); + // CHECK_AND_SUB(I); + // CHECK_AND_SUB(J); + // CHECK_AND_SUB(L); + // CHECK_AND_SUB(M); + // CHECK_AND_SUB(N); + // CHECK_AND_SUB(O); + // CHECK_AND_SUB(P); + // CHECK_AND_SUB(Q); + // CHECK_AND_SUB(R); + // CHECK_AND_SUB(S); + // CHECK_AND_SUB(T); + // CHECK_AND_SUB(U); + // CHECK_AND_SUB(V); + // CHECK_AND_SUB(W); + // CHECK_AND_SUB(X); + // CHECK_AND_SUB(Y); + // CHECK_AND_SUB(Z); + // CHECK_AND_SUB(AA); + // CHECK_AND_SUB(AB); + // CHECK_AND_SUB(AC); + // CHECK_AND_SUB(AD); + // CHECK_AND_SUB(AE); + #undef CHECK_AND_SUB + + return x; // $ nonFunctionalNrOfBounds +} \ No newline at end of file diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected index 7d583e47f5bb..98189dd2d07e 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected @@ -37,6 +37,36 @@ estimateNrOfBounds | minmax.c:26:37:26:37 | x | 1.0 | | minmax.c:26:40:26:40 | y | 1.0 | | minmax.c:26:43:26:43 | z | 2.0 | +| missing_bounds.cpp:40:5:40:19 | ... == ... | 1.0 | +| missing_bounds.cpp:40:5:40:20 | x | 1.0 | +| missing_bounds.cpp:40:5:40:20 | x | 1.0 | +| missing_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:41:5:41:19 | ... == ... | 1.0 | +| missing_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:42:5:42:19 | ... == ... | 1.0 | +| missing_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:43:5:43:19 | ... == ... | 1.0 | +| missing_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:44:5:44:19 | ... == ... | 1.0 | +| missing_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:45:5:45:19 | ... == ... | 1.0 | +| missing_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:46:5:46:19 | ... == ... | 1.0 | +| missing_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | | test.c:6:14:6:15 | 0 | 1.0 | | test.c:8:5:8:9 | count | 1.0 | | test.c:8:5:8:19 | ... = ... | 13.0 | diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.ql b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.ql index efafcf6e684b..c39ab92ae710 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.ql +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.ql @@ -12,6 +12,9 @@ query predicate estimateNrOfBounds(Expr e, float nrOfBounds) { */ private predicate nonFunctionalNrOfBounds(Expr e) { strictcount(SimpleRangeAnalysisInternal::estimateNrOfBounds(e)) > 1 + or + e.getFile().getBaseName() = "missing_bounds.cpp" and + count(SimpleRangeAnalysisInternal::estimateNrOfBounds(e)) != 1 } module FunctionalityTest implements TestSig { diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected index dd7fc398f0ca..7c68f4177932 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected @@ -17,6 +17,21 @@ | minmax.c:26:37:26:37 | x | 1 | | minmax.c:26:40:26:40 | y | 2 | | minmax.c:26:43:26:43 | z | 1 | +| missing_bounds.cpp:40:5:40:20 | x | 4294967295 | +| missing_bounds.cpp:40:5:40:20 | x | 4294967295 | +| missing_bounds.cpp:41:5:41:20 | x | 4294967295 | +| missing_bounds.cpp:41:5:41:20 | x | 4294967295 | +| missing_bounds.cpp:42:5:42:20 | x | 4294967295 | +| missing_bounds.cpp:42:5:42:20 | x | 4294967295 | +| missing_bounds.cpp:43:5:43:20 | x | 4294967295 | +| missing_bounds.cpp:43:5:43:20 | x | 4294967295 | +| missing_bounds.cpp:44:5:44:20 | x | 4294967295 | +| missing_bounds.cpp:44:5:44:20 | x | 4294967295 | +| missing_bounds.cpp:45:5:45:20 | x | 4294967295 | +| missing_bounds.cpp:45:5:45:20 | x | 4294967295 | +| missing_bounds.cpp:46:5:46:20 | x | 4294967295 | +| missing_bounds.cpp:46:5:46:20 | x | 4294967295 | +| missing_bounds.cpp:72:12:72:12 | x | 4294967295 | | test.c:8:5:8:9 | count | 2147483647 | | test.c:8:13:8:17 | count | 2147483647 | | test.c:10:10:10:14 | count | 2147483647 | From 9596b7b921d11f14f02f4768ad004468a2a58245 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Wed, 11 Feb 2026 20:18:03 +0000 Subject: [PATCH 396/433] C++: No need to compute this TC. --- .../lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll index c66c76e60d78..9bc3a80e3e0c 100644 --- a/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll +++ b/cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll @@ -1726,9 +1726,7 @@ private module Cached { SsaImpl::ssaFlow(n, succ) and bb1 = n.getBasicBlock() and bb2 = succ.getBasicBlock() and - bb1 != bb2 and - bb2.dominates(bb1) and - bb1.getASuccessor+() = bb2 + bb2.strictlyDominates(bb1) ) } From fea07ebfcba2f4fc125ffe6329b914f781fb2734 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 12 Feb 2026 00:32:08 +0000 Subject: [PATCH 397/433] Add changed framework coverage reports --- csharp/documentation/library-coverage/coverage.csv | 2 +- csharp/documentation/library-coverage/coverage.rst | 4 ++-- go/documentation/library-coverage/coverage.csv | 6 +++--- go/documentation/library-coverage/coverage.rst | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/csharp/documentation/library-coverage/coverage.csv b/csharp/documentation/library-coverage/coverage.csv index c75661cc3dda..5dbefc4c8167 100644 --- a/csharp/documentation/library-coverage/coverage.csv +++ b/csharp/documentation/library-coverage/coverage.csv @@ -44,5 +44,5 @@ NHibernate,3,,,,,,,,,,,,3,,,,,,,,,, Newtonsoft.Json,,,91,,,,,,,,,,,,,,,,,,,73,18 ServiceStack,194,,7,27,,,,,75,,,,92,,,,,,,,,7, SourceGenerators,,,5,,,,,,,,,,,,,,,,,,,,5 -System,59,47,12491,,6,5,12,,,4,1,,31,2,,6,15,17,4,3,,6378,6113 +System,59,47,12495,,6,5,12,,,4,1,,31,2,,6,15,17,4,3,,6382,6113 Windows.Security.Cryptography.Core,1,,,,,,,1,,,,,,,,,,,,,,, diff --git a/csharp/documentation/library-coverage/coverage.rst b/csharp/documentation/library-coverage/coverage.rst index 3f67bec413dc..4061f675b859 100644 --- a/csharp/documentation/library-coverage/coverage.rst +++ b/csharp/documentation/library-coverage/coverage.rst @@ -8,7 +8,7 @@ C# framework & library support Framework / library,Package,Flow sources,Taint & value steps,Sinks (total),`CWE-079` :sub:`Cross-site scripting` `ServiceStack `_,"``ServiceStack.*``, ``ServiceStack``",,7,194, - System,"``System.*``, ``System``",47,12491,59,5 + System,"``System.*``, ``System``",47,12495,59,5 Others,"``Amazon.Lambda.APIGatewayEvents``, ``Amazon.Lambda.Core``, ``Dapper``, ``ILCompiler``, ``ILLink.RoslynAnalyzer``, ``ILLink.Shared``, ``ILLink.Tasks``, ``Internal.IL``, ``Internal.Pgo``, ``Internal.TypeSystem``, ``Microsoft.ApplicationBlocks.Data``, ``Microsoft.AspNetCore.Components``, ``Microsoft.AspNetCore.Http``, ``Microsoft.AspNetCore.Mvc``, ``Microsoft.AspNetCore.WebUtilities``, ``Microsoft.CSharp``, ``Microsoft.Data.SqlClient``, ``Microsoft.Diagnostics.Tools.Pgo``, ``Microsoft.DotNet.Build.Tasks``, ``Microsoft.DotNet.PlatformAbstractions``, ``Microsoft.EntityFrameworkCore``, ``Microsoft.Extensions.Caching.Distributed``, ``Microsoft.Extensions.Caching.Memory``, ``Microsoft.Extensions.Configuration``, ``Microsoft.Extensions.DependencyInjection``, ``Microsoft.Extensions.DependencyModel``, ``Microsoft.Extensions.Diagnostics.Metrics``, ``Microsoft.Extensions.FileProviders``, ``Microsoft.Extensions.FileSystemGlobbing``, ``Microsoft.Extensions.Hosting``, ``Microsoft.Extensions.Http``, ``Microsoft.Extensions.Logging``, ``Microsoft.Extensions.Options``, ``Microsoft.Extensions.Primitives``, ``Microsoft.Interop``, ``Microsoft.JSInterop``, ``Microsoft.NET.Build.Tasks``, ``Microsoft.VisualBasic``, ``Microsoft.Win32``, ``Mono.Linker``, ``MySql.Data.MySqlClient``, ``NHibernate``, ``Newtonsoft.Json``, ``SourceGenerators``, ``Windows.Security.Cryptography.Core``",60,2406,162,4 - Totals,,107,14904,415,9 + Totals,,107,14908,415,9 diff --git a/go/documentation/library-coverage/coverage.csv b/go/documentation/library-coverage/coverage.csv index 2826d79047d0..2c76dcf11555 100644 --- a/go/documentation/library-coverage/coverage.csv +++ b/go/documentation/library-coverage/coverage.csv @@ -1,9 +1,9 @@ package,sink,source,summary,sink:command-injection,sink:credentials-key,sink:jwt,sink:log-injection,sink:nosql-injection,sink:path-injection,sink:regex-use[0],sink:regex-use[1],sink:regex-use[c],sink:request-forgery,sink:request-forgery[TCP Addr + Port],sink:sql-injection,sink:url-redirection,sink:url-redirection[0],sink:url-redirection[receiver],sink:xpath-injection,source:commandargs,source:database,source:environment,source:file,source:remote,source:stdin,summary:taint,summary:value -,,,8,,,,,,,,,,,,,,,,,,,,,,,3,5 +,,,9,,,,,,,,,,,,,,,,,,,,,,,3,6 archive/tar,,,5,,,,,,,,,,,,,,,,,,,,,,,5, archive/zip,,,6,,,,,,,,,,,,,,,,,,,,,,,6, bufio,,,17,,,,,,,,,,,,,,,,,,,,,,,17, -bytes,,,43,,,,,,,,,,,,,,,,,,,,,,,43, +bytes,,,44,,,,,,,,,,,,,,,,,,,,,,,44, clevergo.tech/clevergo,1,,,,,,,,,,,,,,,,,1,,,,,,,,, cloud.google.com/go/bigquery,1,,,,,,,,,,,,,,1,,,,,,,,,,,, compress/bzip2,,,1,,,,,,,,,,,,,,,,,,,,,,,1, @@ -18,7 +18,7 @@ context,,,5,,,,,,,,,,,,,,,,,,,,,,,5, crypto,,,10,,,,,,,,,,,,,,,,,,,,,,,10, database/sql,30,18,12,,,,,,,,,,,,30,,,,,,18,,,,,12, encoding,,,81,,,,,,,,,,,,,,,,,,,,,,,81, -errors,,,3,,,,,,,,,,,,,,,,,,,,,,,3, +errors,,,4,,,,,,,,,,,,,,,,,,,,,,,4, expvar,,,6,,,,,,,,,,,,,,,,,,,,,,,6, fmt,3,,16,,,,3,,,,,,,,,,,,,,,,,,,16, github.com/ChrisTrenkamp/goxpath,3,,,,,,,,,,,,,,,,,,3,,,,,,,, diff --git a/go/documentation/library-coverage/coverage.rst b/go/documentation/library-coverage/coverage.rst index b54a425300f5..80330c3715e4 100644 --- a/go/documentation/library-coverage/coverage.rst +++ b/go/documentation/library-coverage/coverage.rst @@ -32,7 +32,7 @@ Go framework & library support `Revel `_,"``github.com/revel/revel*``, ``github.com/robfig/revel*``",46,20,4 `SendGrid `_,``github.com/sendgrid/sendgrid-go*``,,1, `Squirrel `_,"``github.com/Masterminds/squirrel*``, ``github.com/lann/squirrel*``, ``gopkg.in/Masterminds/squirrel``",81,,96 - `Standard library `_,"````, ``archive/*``, ``bufio``, ``bytes``, ``cmp``, ``compress/*``, ``container/*``, ``context``, ``crypto``, ``crypto/*``, ``database/*``, ``debug/*``, ``embed``, ``encoding``, ``encoding/*``, ``errors``, ``expvar``, ``flag``, ``fmt``, ``go/*``, ``hash``, ``hash/*``, ``html``, ``html/*``, ``image``, ``image/*``, ``index/*``, ``io``, ``io/*``, ``log``, ``log/*``, ``maps``, ``math``, ``math/*``, ``mime``, ``mime/*``, ``net``, ``net/*``, ``os``, ``os/*``, ``path``, ``path/*``, ``plugin``, ``reflect``, ``reflect/*``, ``regexp``, ``regexp/*``, ``slices``, ``sort``, ``strconv``, ``strings``, ``sync``, ``sync/*``, ``syscall``, ``syscall/*``, ``testing``, ``testing/*``, ``text/*``, ``time``, ``time/*``, ``unicode``, ``unicode/*``, ``unsafe``, ``weak``",52,609,104 + `Standard library `_,"````, ``archive/*``, ``bufio``, ``bytes``, ``cmp``, ``compress/*``, ``container/*``, ``context``, ``crypto``, ``crypto/*``, ``database/*``, ``debug/*``, ``embed``, ``encoding``, ``encoding/*``, ``errors``, ``expvar``, ``flag``, ``fmt``, ``go/*``, ``hash``, ``hash/*``, ``html``, ``html/*``, ``image``, ``image/*``, ``index/*``, ``io``, ``io/*``, ``log``, ``log/*``, ``maps``, ``math``, ``math/*``, ``mime``, ``mime/*``, ``net``, ``net/*``, ``os``, ``os/*``, ``path``, ``path/*``, ``plugin``, ``reflect``, ``reflect/*``, ``regexp``, ``regexp/*``, ``slices``, ``sort``, ``strconv``, ``strings``, ``sync``, ``sync/*``, ``syscall``, ``syscall/*``, ``testing``, ``testing/*``, ``text/*``, ``time``, ``time/*``, ``unicode``, ``unicode/*``, ``unsafe``, ``weak``",52,612,104 `XORM `_,"``github.com/go-xorm/xorm*``, ``xorm.io/xorm*``",,,68 `XPath `_,``github.com/antchfx/xpath*``,,,4 `appleboy/gin-jwt `_,``github.com/appleboy/gin-jwt*``,,,1 @@ -74,5 +74,5 @@ Go framework & library support `xpathparser `_,``github.com/santhosh-tekuri/xpathparser*``,,,2 `yaml `_,``gopkg.in/yaml*``,,9, `zap `_,``go.uber.org/zap*``,,11,33 - Totals,,688,1069,1557 + Totals,,688,1072,1557 From a27d20dbcdfacb8a63aafd327638cab7c4ca01b4 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Thu, 12 Feb 2026 09:01:27 +0100 Subject: [PATCH 398/433] Rust: Add test cases for binary operator at start of line --- ruby/ql/test/library-tests/ast/Ast.expected | 18 ++++++++++ .../library-tests/ast/TreeSitter.expected | 33 +++++++++++++++++++ .../test/library-tests/ast/ValueText.expected | 12 +++++++ .../ast/control/ConditionalExpr.expected | 6 ++++ .../ast/control/ControlExpr.expected | 3 ++ .../library-tests/ast/control/conditionals.rb | 19 +++++++++++ 6 files changed, 91 insertions(+) diff --git a/ruby/ql/test/library-tests/ast/Ast.expected b/ruby/ql/test/library-tests/ast/Ast.expected index 6263cb8919b5..bdc67bd794df 100644 --- a/ruby/ql/test/library-tests/ast/Ast.expected +++ b/ruby/ql/test/library-tests/ast/Ast.expected @@ -1458,6 +1458,24 @@ control/conditionals.rb: # 67| getBranch/getThen: [StmtSequence] then ... # 68| getBranch/getElse: [StmtSequence] else ... # 69| getStmt: [LocalVariableAccess] c +# 73| getStmt: [IfExpr] if ... +# 73| getCondition: [LogicalAndExpr] ... && ... +# 73| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 73| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 73| getBranch/getThen: [StmtSequence] then ... +# 74| getStmt: [LocalVariableAccess] c +# 78| getStmt: [IfExpr] if ... +# 78| getCondition: [LogicalAndExpr] ... && ... +# 78| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 79| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 79| getBranch/getThen: [StmtSequence] then ... +# 81| getStmt: [LocalVariableAccess] c +# 85| getStmt: [IfExpr] if ... +# 85| getCondition: [LogicalAndExpr] ... && ... +# 85| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 86| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 86| getBranch/getThen: [StmtSequence] then ... +# 88| getStmt: [LocalVariableAccess] c constants/constants.rb: # 1| [Toplevel] constants.rb # 1| getStmt: [ModuleDeclaration] ModuleA diff --git a/ruby/ql/test/library-tests/ast/TreeSitter.expected b/ruby/ql/test/library-tests/ast/TreeSitter.expected index 04a66cce8472..a2ae9813a795 100644 --- a/ruby/ql/test/library-tests/ast/TreeSitter.expected +++ b/ruby/ql/test/library-tests/ast/TreeSitter.expected @@ -2962,6 +2962,36 @@ control/conditionals.rb: # 68| 0: [ReservedWord] else # 69| 1: [Identifier] c # 70| 4: [ReservedWord] end +# 73| 17: [If] If +# 73| 0: [ReservedWord] if +# 73| 1: [Binary] Binary +# 73| 0: [Identifier] a +# 73| 1: [ReservedWord] && +# 73| 2: [Identifier] b +# 73| 2: [Then] Then +# 73| 0: [ReservedWord] then +# 74| 1: [Identifier] c +# 75| 3: [ReservedWord] end +# 78| 18: [If] If +# 78| 0: [ReservedWord] if +# 78| 1: [Binary] Binary +# 78| 0: [Identifier] a +# 79| 1: [ReservedWord] && +# 79| 2: [Identifier] b +# 79| 2: [Then] Then +# 80| 0: [ReservedWord] then +# 81| 1: [Identifier] c +# 82| 3: [ReservedWord] end +# 85| 19: [If] If +# 85| 0: [ReservedWord] if +# 85| 1: [Binary] Binary +# 85| 0: [Identifier] a +# 85| 1: [ReservedWord] && +# 86| 2: [Identifier] b +# 86| 2: [Then] Then +# 87| 0: [ReservedWord] then +# 88| 1: [Identifier] c +# 89| 3: [ReservedWord] end # 1| [Comment] # Define some variables used below # 9| [Comment] # If expr with no else # 14| [Comment] # If expr with single else @@ -2974,6 +3004,9 @@ control/conditionals.rb: # 57| [Comment] # Ternary if expr # 60| [Comment] # If expr with empty else (treated as no else) # 66| [Comment] # If expr with empty then (treated as no then) +# 72| [Comment] # If expr with && on same line as condition and then +# 77| [Comment] # If expr with && at the start of a separate line before then +# 84| [Comment] # If expr with && at end of line control/loops.rb: # 1| [Program] Program # 2| 0: [Assignment] Assignment diff --git a/ruby/ql/test/library-tests/ast/ValueText.expected b/ruby/ql/test/library-tests/ast/ValueText.expected index 283eef73d25b..c2204cf60d42 100644 --- a/ruby/ql/test/library-tests/ast/ValueText.expected +++ b/ruby/ql/test/library-tests/ast/ValueText.expected @@ -336,6 +336,12 @@ exprValue | control/conditionals.rb:62:5:62:5 | c | 0 | int | | control/conditionals.rb:67:8:67:8 | b | 0 | int | | control/conditionals.rb:69:5:69:5 | c | 0 | int | +| control/conditionals.rb:73:9:73:9 | b | 0 | int | +| control/conditionals.rb:74:5:74:5 | c | 0 | int | +| control/conditionals.rb:79:8:79:8 | b | 0 | int | +| control/conditionals.rb:81:5:81:5 | c | 0 | int | +| control/conditionals.rb:86:5:86:5 | b | 0 | int | +| control/conditionals.rb:88:5:88:5 | c | 0 | int | | control/loops.rb:2:7:2:7 | 0 | 0 | int | | control/loops.rb:3:7:3:7 | 0 | 0 | int | | control/loops.rb:4:5:4:5 | 0 | 0 | int | @@ -1257,6 +1263,12 @@ exprCfgNodeValue | control/conditionals.rb:62:5:62:5 | c | 0 | int | | control/conditionals.rb:67:8:67:8 | b | 0 | int | | control/conditionals.rb:69:5:69:5 | c | 0 | int | +| control/conditionals.rb:73:9:73:9 | b | 0 | int | +| control/conditionals.rb:74:5:74:5 | c | 0 | int | +| control/conditionals.rb:79:8:79:8 | b | 0 | int | +| control/conditionals.rb:81:5:81:5 | c | 0 | int | +| control/conditionals.rb:86:5:86:5 | b | 0 | int | +| control/conditionals.rb:88:5:88:5 | c | 0 | int | | control/loops.rb:2:7:2:7 | 0 | 0 | int | | control/loops.rb:3:7:3:7 | 0 | 0 | int | | control/loops.rb:4:5:4:5 | 0 | 0 | int | diff --git a/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected b/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected index db7cd1957fb0..f9b619c2ea05 100644 --- a/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected +++ b/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected @@ -22,6 +22,9 @@ conditionalExprs | conditionals.rb:61:1:64:3 | if ... | IfExpr | conditionals.rb:61:4:61:8 | ... > ... | conditionals.rb:63:1:63:4 | else ... | false | | conditionals.rb:67:1:70:3 | if ... | IfExpr | conditionals.rb:67:4:67:8 | ... > ... | conditionals.rb:67:10:67:13 | then ... | true | | conditionals.rb:67:1:70:3 | if ... | IfExpr | conditionals.rb:67:4:67:8 | ... > ... | conditionals.rb:68:1:69:5 | else ... | false | +| conditionals.rb:73:1:75:3 | if ... | IfExpr | conditionals.rb:73:4:73:9 | ... && ... | conditionals.rb:73:11:74:5 | then ... | true | +| conditionals.rb:78:1:82:3 | if ... | IfExpr | conditionals.rb:78:4:79:8 | ... && ... | conditionals.rb:79:9:81:5 | then ... | true | +| conditionals.rb:85:1:89:3 | if ... | IfExpr | conditionals.rb:85:4:86:5 | ... && ... | conditionals.rb:86:6:88:5 | then ... | true | | loops.rb:9:5:9:5 | if ... | IfExpr | loops.rb:9:5:9:5 | ! ... | loops.rb:9:5:9:5 | ... = ... | true | | loops.rb:16:5:16:5 | if ... | IfExpr | loops.rb:16:5:16:5 | ! ... | loops.rb:16:5:16:5 | ... = ... | true | | loops.rb:22:5:22:7 | if ... | IfExpr | loops.rb:22:5:22:7 | ! ... | loops.rb:22:5:22:7 | ... = ... | true | @@ -38,6 +41,9 @@ ifExprs | conditionals.rb:35:1:36:5 | elsif ... | IfExpr | conditionals.rb:35:7:35:12 | ... == ... | conditionals.rb:35:13:36:5 | then ... | (none) | true | | conditionals.rb:61:1:64:3 | if ... | IfExpr | conditionals.rb:61:4:61:8 | ... > ... | conditionals.rb:61:10:62:5 | then ... | else ... | false | | conditionals.rb:67:1:70:3 | if ... | IfExpr | conditionals.rb:67:4:67:8 | ... > ... | conditionals.rb:67:10:67:13 | then ... | else ... | false | +| conditionals.rb:73:1:75:3 | if ... | IfExpr | conditionals.rb:73:4:73:9 | ... && ... | conditionals.rb:73:11:74:5 | then ... | (none) | false | +| conditionals.rb:78:1:82:3 | if ... | IfExpr | conditionals.rb:78:4:79:8 | ... && ... | conditionals.rb:79:9:81:5 | then ... | (none) | false | +| conditionals.rb:85:1:89:3 | if ... | IfExpr | conditionals.rb:85:4:86:5 | ... && ... | conditionals.rb:86:6:88:5 | then ... | (none) | false | unlessExprs | conditionals.rb:40:1:42:3 | unless ... | UnlessExpr | conditionals.rb:40:8:40:12 | ... > ... | conditionals.rb:40:14:41:5 | then ... | (none) | | conditionals.rb:45:1:49:3 | unless ... | UnlessExpr | conditionals.rb:45:8:45:13 | ... == ... | conditionals.rb:45:14:46:5 | then ... | else ... | diff --git a/ruby/ql/test/library-tests/ast/control/ControlExpr.expected b/ruby/ql/test/library-tests/ast/control/ControlExpr.expected index aaa72ac80277..726c9be5c909 100644 --- a/ruby/ql/test/library-tests/ast/control/ControlExpr.expected +++ b/ruby/ql/test/library-tests/ast/control/ControlExpr.expected @@ -28,6 +28,9 @@ | conditionals.rb:58:5:58:25 | ... ? ... : ... | TernaryIfExpr | | conditionals.rb:61:1:64:3 | if ... | IfExpr | | conditionals.rb:67:1:70:3 | if ... | IfExpr | +| conditionals.rb:73:1:75:3 | if ... | IfExpr | +| conditionals.rb:78:1:82:3 | if ... | IfExpr | +| conditionals.rb:85:1:89:3 | if ... | IfExpr | | loops.rb:9:1:12:3 | for ... in ... | ForExpr | | loops.rb:9:5:9:5 | if ... | IfExpr | | loops.rb:16:1:19:3 | for ... in ... | ForExpr | diff --git a/ruby/ql/test/library-tests/ast/control/conditionals.rb b/ruby/ql/test/library-tests/ast/control/conditionals.rb index 85e008f5c1d5..9e3494a2709e 100644 --- a/ruby/ql/test/library-tests/ast/control/conditionals.rb +++ b/ruby/ql/test/library-tests/ast/control/conditionals.rb @@ -67,4 +67,23 @@ if a > b then else c +end + +# If expr with && on same line as condition and then +if a && b then + c +end + +# If expr with && at the start of a separate line before then +if a + && b +then + c +end + +# If expr with && at end of line +if a && + b +then + c end \ No newline at end of file From a4dd4f91d43d9a5e0e678554293eb84aaf284845 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Wed, 11 Feb 2026 17:01:41 +0000 Subject: [PATCH 399/433] C++: Also compute type bounds for accesses of an enum type. --- .../cpp/rangeanalysis/RangeAnalysisUtils.qll | 38 ++++++++- .../SimpleRangeAnalysis/missing_bounds.cpp | 76 ++++++++--------- .../SimpleRangeAnalysis/nrOfBounds.expected | 85 +++++++++++++++++++ 3 files changed, 160 insertions(+), 39 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/RangeAnalysisUtils.qll b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/RangeAnalysisUtils.qll index 2423a3a71a0a..03dbc56dc99c 100644 --- a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/RangeAnalysisUtils.qll +++ b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/RangeAnalysisUtils.qll @@ -404,7 +404,7 @@ predicate cmpWithLinearBound( * For example, if `t` is a signed 32-bit type then holds if `lb` is * `-2^31` and `ub` is `2^31 - 1`. */ -private predicate typeBounds(ArithmeticType t, float lb, float ub) { +private predicate typeBounds0(ArithmeticType t, float lb, float ub) { exists(IntegralType integralType, float limit | integralType = t and limit = 2.pow(8 * integralType.getSize()) | @@ -423,6 +423,42 @@ private predicate typeBounds(ArithmeticType t, float lb, float ub) { t instanceof FloatingPointType and lb = -(1.0 / 0.0) and ub = 1.0 / 0.0 } +/** + * Gets the underlying type for an enumeration `e`. + * + * If the enumeration does not have an explicit type we approximate it using + * the following rules: + * - The result type is always `signed`, and + * - if the largest value fits in an `int` the result is `int`. Otherwise, the + * result is `long`. + */ +private IntegralType getUnderlyingTypeForEnum(Enum e) { + result = e.getExplicitUnderlyingType() + or + not e.hasExplicitUnderlyingType() and + result.isSigned() and + exists(IntType intType | + if max(e.getAnEnumConstant().getValue().toFloat()) >= 2.pow(8 * intType.getSize() - 1) + then result instanceof LongType + else result = intType + ) +} + +/** + * Holds if `lb` and `ub` are the lower and upper bounds of the unspecified + * type `t`. + * + * For example, if `t` is a signed 32-bit type then holds if `lb` is + * `-2^31` and `ub` is `2^31 - 1`. + * + * Unlike `typeBounds0`, this predicate also handles `Enum` types. + */ +private predicate typeBounds(Type t, float lb, float ub) { + typeBounds0(t, lb, ub) + or + typeBounds0(getUnderlyingTypeForEnum(t), lb, ub) +} + private Type stripReference(Type t) { if t instanceof ReferenceType then result = t.(ReferenceType).getBaseType() else result = t } diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp index cdb332e9387e..a6f642e8870d 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp @@ -1,34 +1,34 @@ enum MY_ENUM { - A = 0x1, // $ nonFunctionalNrOfBounds - B = 0x2, // $ nonFunctionalNrOfBounds - C = 0x4, // $ nonFunctionalNrOfBounds - D = 0x8, // $ nonFunctionalNrOfBounds - E = 0x10, // $ nonFunctionalNrOfBounds - F = 0x20, // $ nonFunctionalNrOfBounds - G = 0x40, // $ nonFunctionalNrOfBounds - H = 0x80, // $ nonFunctionalNrOfBounds - I = 0x100, // $ nonFunctionalNrOfBounds - J = 0x200, // $ nonFunctionalNrOfBounds - L = 0x400, // $ nonFunctionalNrOfBounds - M = 0x800, // $ nonFunctionalNrOfBounds - N = 0x1000, // $ nonFunctionalNrOfBounds - O = 0x2000, // $ nonFunctionalNrOfBounds - P = 0x4000, // $ nonFunctionalNrOfBounds - Q = 0x8000, // $ nonFunctionalNrOfBounds - R = 0x10000, // $ nonFunctionalNrOfBounds - S = 0x20000, // $ nonFunctionalNrOfBounds - T = 0x40000, // $ nonFunctionalNrOfBounds - U = 0x80000, // $ nonFunctionalNrOfBounds - V = 0x100000, // $ nonFunctionalNrOfBounds - W = 0x200000, // $ nonFunctionalNrOfBounds - X = 0x400000, // $ nonFunctionalNrOfBounds - Y = 0x800000, // $ nonFunctionalNrOfBounds - Z = 0x1000000, // $ nonFunctionalNrOfBounds - AA = 0x2000000, // $ nonFunctionalNrOfBounds - AB = 0x4000000, // $ nonFunctionalNrOfBounds - AC = 0x8000000, // $ nonFunctionalNrOfBounds - AD = 0x10000000, // $ nonFunctionalNrOfBounds - AE = 0x20000000 // $ nonFunctionalNrOfBounds + A = 0x1, + B = 0x2, + C = 0x4, + D = 0x8, + E = 0x10, + F = 0x20, + G = 0x40, + H = 0x80, + I = 0x100, + J = 0x200, + L = 0x400, + M = 0x800, + N = 0x1000, + O = 0x2000, + P = 0x4000, + Q = 0x8000, + R = 0x10000, + S = 0x20000, + T = 0x40000, + U = 0x80000, + V = 0x100000, + W = 0x200000, + X = 0x400000, + Y = 0x800000, + Z = 0x1000000, + AA = 0x2000000, + AB = 0x4000000, + AC = 0x8000000, + AD = 0x10000000, + AE = 0x20000000 }; typedef unsigned int MY_ENUM_FLAGS; @@ -37,13 +37,13 @@ MY_ENUM_FLAGS check_and_subs(MY_ENUM_FLAGS x) { #define CHECK_AND_SUB(flag) if ((x & flag) == flag) { x -= flag; } - CHECK_AND_SUB(A); // $ nonFunctionalNrOfBounds - CHECK_AND_SUB(B); // $ nonFunctionalNrOfBounds - CHECK_AND_SUB(C); // $ nonFunctionalNrOfBounds - CHECK_AND_SUB(D); // $ nonFunctionalNrOfBounds - CHECK_AND_SUB(E); // $ nonFunctionalNrOfBounds - CHECK_AND_SUB(F); // $ nonFunctionalNrOfBounds - CHECK_AND_SUB(G); // $ nonFunctionalNrOfBounds + CHECK_AND_SUB(A); + CHECK_AND_SUB(B); + CHECK_AND_SUB(C); + CHECK_AND_SUB(D); + CHECK_AND_SUB(E); + CHECK_AND_SUB(F); + CHECK_AND_SUB(G); // CHECK_AND_SUB(H); // CHECK_AND_SUB(I); // CHECK_AND_SUB(J); @@ -69,5 +69,5 @@ MY_ENUM_FLAGS check_and_subs(MY_ENUM_FLAGS x) // CHECK_AND_SUB(AE); #undef CHECK_AND_SUB - return x; // $ nonFunctionalNrOfBounds + return x; } \ No newline at end of file diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected index 98189dd2d07e..08b2995845a7 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected @@ -37,36 +37,121 @@ estimateNrOfBounds | minmax.c:26:37:26:37 | x | 1.0 | | minmax.c:26:40:26:40 | y | 1.0 | | minmax.c:26:43:26:43 | z | 2.0 | +| missing_bounds.cpp:2:9:2:11 | 1 | 1.0 | +| missing_bounds.cpp:3:9:3:11 | 2 | 1.0 | +| missing_bounds.cpp:4:9:4:11 | 4 | 1.0 | +| missing_bounds.cpp:5:9:5:11 | 8 | 1.0 | +| missing_bounds.cpp:6:9:6:12 | 16 | 1.0 | +| missing_bounds.cpp:7:9:7:12 | 32 | 1.0 | +| missing_bounds.cpp:8:9:8:12 | 64 | 1.0 | +| missing_bounds.cpp:9:9:9:12 | 128 | 1.0 | +| missing_bounds.cpp:10:9:10:13 | 256 | 1.0 | +| missing_bounds.cpp:11:9:11:13 | 512 | 1.0 | +| missing_bounds.cpp:12:9:12:13 | 1024 | 1.0 | +| missing_bounds.cpp:13:9:13:13 | 2048 | 1.0 | +| missing_bounds.cpp:14:9:14:14 | 4096 | 1.0 | +| missing_bounds.cpp:15:9:15:14 | 8192 | 1.0 | +| missing_bounds.cpp:16:9:16:14 | 16384 | 1.0 | +| missing_bounds.cpp:17:9:17:14 | 32768 | 1.0 | +| missing_bounds.cpp:18:9:18:15 | 65536 | 1.0 | +| missing_bounds.cpp:19:9:19:15 | 131072 | 1.0 | +| missing_bounds.cpp:20:9:20:15 | 262144 | 1.0 | +| missing_bounds.cpp:21:9:21:15 | 524288 | 1.0 | +| missing_bounds.cpp:22:9:22:16 | 1048576 | 1.0 | +| missing_bounds.cpp:23:9:23:16 | 2097152 | 1.0 | +| missing_bounds.cpp:24:9:24:16 | 4194304 | 1.0 | +| missing_bounds.cpp:25:9:25:16 | 8388608 | 1.0 | +| missing_bounds.cpp:26:9:26:17 | 16777216 | 1.0 | +| missing_bounds.cpp:27:10:27:18 | 33554432 | 1.0 | +| missing_bounds.cpp:28:10:28:18 | 67108864 | 1.0 | +| missing_bounds.cpp:29:10:29:18 | 134217728 | 1.0 | +| missing_bounds.cpp:30:10:30:19 | 268435456 | 1.0 | +| missing_bounds.cpp:31:10:31:19 | 536870912 | 1.0 | +| missing_bounds.cpp:40:5:40:19 | ... & ... | 1.0 | +| missing_bounds.cpp:40:5:40:19 | ... -= ... | 1.0 | | missing_bounds.cpp:40:5:40:19 | ... == ... | 1.0 | +| missing_bounds.cpp:40:5:40:20 | (...) | 1.0 | | missing_bounds.cpp:40:5:40:20 | x | 1.0 | | missing_bounds.cpp:40:5:40:20 | x | 1.0 | | missing_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:40:19:40:19 | A | 1.0 | +| missing_bounds.cpp:40:19:40:19 | A | 1.0 | +| missing_bounds.cpp:40:19:40:19 | A | 1.0 | +| missing_bounds.cpp:41:5:41:19 | ... & ... | 2.0 | +| missing_bounds.cpp:41:5:41:19 | ... -= ... | 2.0 | | missing_bounds.cpp:41:5:41:19 | ... == ... | 1.0 | +| missing_bounds.cpp:41:5:41:20 | (...) | 2.0 | +| missing_bounds.cpp:41:5:41:20 | x | 2.0 | +| missing_bounds.cpp:41:5:41:20 | x | 2.0 | | missing_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:41:19:41:19 | B | 1.0 | +| missing_bounds.cpp:41:19:41:19 | B | 1.0 | +| missing_bounds.cpp:41:19:41:19 | B | 1.0 | +| missing_bounds.cpp:42:5:42:19 | ... & ... | 4.0 | +| missing_bounds.cpp:42:5:42:19 | ... -= ... | 4.0 | | missing_bounds.cpp:42:5:42:19 | ... == ... | 1.0 | +| missing_bounds.cpp:42:5:42:20 | (...) | 4.0 | +| missing_bounds.cpp:42:5:42:20 | x | 4.0 | +| missing_bounds.cpp:42:5:42:20 | x | 4.0 | | missing_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:42:19:42:19 | C | 1.0 | +| missing_bounds.cpp:42:19:42:19 | C | 1.0 | +| missing_bounds.cpp:42:19:42:19 | C | 1.0 | +| missing_bounds.cpp:43:5:43:19 | ... & ... | 8.0 | +| missing_bounds.cpp:43:5:43:19 | ... -= ... | 8.0 | | missing_bounds.cpp:43:5:43:19 | ... == ... | 1.0 | +| missing_bounds.cpp:43:5:43:20 | (...) | 8.0 | +| missing_bounds.cpp:43:5:43:20 | x | 8.0 | +| missing_bounds.cpp:43:5:43:20 | x | 8.0 | | missing_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:43:19:43:19 | D | 1.0 | +| missing_bounds.cpp:43:19:43:19 | D | 1.0 | +| missing_bounds.cpp:43:19:43:19 | D | 1.0 | +| missing_bounds.cpp:44:5:44:19 | ... & ... | 16.0 | +| missing_bounds.cpp:44:5:44:19 | ... -= ... | 16.0 | | missing_bounds.cpp:44:5:44:19 | ... == ... | 1.0 | +| missing_bounds.cpp:44:5:44:20 | (...) | 16.0 | +| missing_bounds.cpp:44:5:44:20 | x | 16.0 | +| missing_bounds.cpp:44:5:44:20 | x | 16.0 | | missing_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:44:19:44:19 | E | 1.0 | +| missing_bounds.cpp:44:19:44:19 | E | 1.0 | +| missing_bounds.cpp:44:19:44:19 | E | 1.0 | +| missing_bounds.cpp:45:5:45:19 | ... & ... | 32.0 | +| missing_bounds.cpp:45:5:45:19 | ... -= ... | 32.0 | | missing_bounds.cpp:45:5:45:19 | ... == ... | 1.0 | +| missing_bounds.cpp:45:5:45:20 | (...) | 32.0 | +| missing_bounds.cpp:45:5:45:20 | x | 32.0 | +| missing_bounds.cpp:45:5:45:20 | x | 32.0 | | missing_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:45:19:45:19 | F | 1.0 | +| missing_bounds.cpp:45:19:45:19 | F | 1.0 | +| missing_bounds.cpp:45:19:45:19 | F | 1.0 | +| missing_bounds.cpp:46:5:46:19 | ... & ... | 64.0 | +| missing_bounds.cpp:46:5:46:19 | ... -= ... | 64.0 | | missing_bounds.cpp:46:5:46:19 | ... == ... | 1.0 | +| missing_bounds.cpp:46:5:46:20 | (...) | 64.0 | +| missing_bounds.cpp:46:5:46:20 | x | 64.0 | +| missing_bounds.cpp:46:5:46:20 | x | 64.0 | | missing_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | | missing_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:46:19:46:19 | G | 1.0 | +| missing_bounds.cpp:46:19:46:19 | G | 1.0 | +| missing_bounds.cpp:46:19:46:19 | G | 1.0 | +| missing_bounds.cpp:72:12:72:12 | x | 128.0 | | test.c:6:14:6:15 | 0 | 1.0 | | test.c:8:5:8:9 | count | 1.0 | | test.c:8:5:8:19 | ... = ... | 13.0 | From 6dd6bddff342dc7761e48ade26f85c3120965923 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Wed, 11 Feb 2026 17:08:42 +0000 Subject: [PATCH 400/433] C++: Add more terms to make range analysis test timeout. --- .../SimpleRangeAnalysis/lowerBound.expected | 1111 +---------------- .../SimpleRangeAnalysis/missing_bounds.cpp | 46 +- .../SimpleRangeAnalysis/nrOfBounds.expected | 278 ++++- .../SimpleRangeAnalysis/ternaryLower.expected | 154 +-- .../SimpleRangeAnalysis/ternaryUpper.expected | 154 +-- .../SimpleRangeAnalysis/upperBound.expected | 1111 +---------------- 6 files changed, 304 insertions(+), 2550 deletions(-) diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected index 8853777d339f..5673f0fdd303 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected @@ -1,1110 +1 @@ -| inline_assembly.c:10:3:10:3 | y | 0 | -| inline_assembly.c:12:29:12:29 | x | 0 | -| inline_assembly.c:12:32:12:32 | y | 1 | -| inline_assembly.c:16:25:16:25 | x | 0 | -| inline_assembly.c:16:35:16:35 | y | 1 | -| inline_assembly.c:21:29:21:29 | x | 0 | -| inline_assembly.c:21:32:21:32 | y | 0 | -| minmax.c:18:37:18:37 | x | 1 | -| minmax.c:18:40:18:40 | y | 2 | -| minmax.c:18:43:18:43 | z | 3 | -| minmax.c:20:2:20:2 | z | -2147483648 | -| minmax.c:22:8:22:8 | x | 1 | -| minmax.c:22:14:22:14 | y | 2 | -| minmax.c:22:18:22:18 | t | -2147483648 | -| minmax.c:22:22:22:22 | x | 1 | -| minmax.c:23:3:23:3 | t | 0 | -| minmax.c:26:37:26:37 | x | 1 | -| minmax.c:26:40:26:40 | y | 2 | -| minmax.c:26:43:26:43 | z | 0 | -| missing_bounds.cpp:40:5:40:20 | x | 0 | -| missing_bounds.cpp:40:5:40:20 | x | 0 | -| missing_bounds.cpp:41:5:41:20 | x | 0 | -| missing_bounds.cpp:41:5:41:20 | x | 0 | -| missing_bounds.cpp:42:5:42:20 | x | 0 | -| missing_bounds.cpp:42:5:42:20 | x | 0 | -| missing_bounds.cpp:43:5:43:20 | x | 0 | -| missing_bounds.cpp:43:5:43:20 | x | 0 | -| missing_bounds.cpp:44:5:44:20 | x | 0 | -| missing_bounds.cpp:44:5:44:20 | x | 0 | -| missing_bounds.cpp:45:5:45:20 | x | 0 | -| missing_bounds.cpp:45:5:45:20 | x | 0 | -| missing_bounds.cpp:46:5:46:20 | x | 0 | -| missing_bounds.cpp:46:5:46:20 | x | 0 | -| missing_bounds.cpp:72:12:72:12 | x | 0 | -| test.c:8:5:8:9 | count | -2147483648 | -| test.c:8:13:8:17 | count | -2147483648 | -| test.c:10:10:10:14 | count | -2147483648 | -| test.c:16:5:16:9 | count | -2147483648 | -| test.c:16:14:16:18 | count | 0 | -| test.c:18:10:18:14 | count | 0 | -| test.c:24:5:24:9 | count | 0 | -| test.c:25:5:25:9 | count | -2147483648 | -| test.c:25:13:25:17 | count | 1 | -| test.c:27:10:27:14 | count | 0 | -| test.c:33:8:33:8 | i | -2147483648 | -| test.c:33:15:33:15 | i | 0 | -| test.c:33:22:33:22 | i | -2147483648 | -| test.c:33:26:33:26 | i | 0 | -| test.c:34:5:34:9 | total | -2147483648 | -| test.c:34:14:34:14 | i | 0 | -| test.c:36:10:36:14 | total | -2147483648 | -| test.c:36:18:36:18 | i | 2 | -| test.c:42:8:42:8 | i | -2147483648 | -| test.c:42:15:42:15 | i | 0 | -| test.c:42:22:42:22 | i | 0 | -| test.c:43:5:43:9 | total | -2147483648 | -| test.c:43:14:43:14 | i | 0 | -| test.c:45:10:45:14 | total | -2147483648 | -| test.c:45:18:45:18 | i | 2 | -| test.c:51:8:51:8 | i | -2147483648 | -| test.c:51:15:51:15 | i | 0 | -| test.c:51:24:51:24 | i | -2147483648 | -| test.c:51:28:51:28 | i | 0 | -| test.c:52:5:52:9 | total | -2147483648 | -| test.c:52:14:52:14 | i | 0 | -| test.c:54:10:54:14 | total | -2147483648 | -| test.c:54:18:54:18 | i | 2 | -| test.c:58:7:58:7 | i | -2147483648 | -| test.c:59:9:59:9 | i | -2147483648 | -| test.c:60:14:60:14 | i | -2147483648 | -| test.c:67:15:67:15 | y | -2147483648 | -| test.c:67:20:67:20 | y | -999 | -| test.c:68:9:68:9 | x | -2147483648 | -| test.c:68:13:68:13 | y | -999 | -| test.c:69:14:69:14 | x | -2147483648 | -| test.c:72:10:72:10 | y | -2147483648 | -| test.c:76:7:76:7 | y | -2147483648 | -| test.c:77:9:77:9 | x | -2147483648 | -| test.c:81:9:81:9 | x | -2147483648 | -| test.c:85:10:85:10 | x | 4 | -| test.c:89:7:89:7 | y | -2147483648 | -| test.c:90:9:90:9 | x | -2147483648 | -| test.c:90:13:90:13 | y | 8 | -| test.c:93:12:93:12 | x | 8 | -| test.c:100:3:100:3 | c | -128 | -| test.c:101:7:101:7 | c | -128 | -| test.c:104:7:104:7 | c | -128 | -| test.c:105:5:105:5 | c | -128 | -| test.c:106:9:106:9 | c | -128 | -| test.c:109:9:109:9 | c | -128 | -| test.c:119:10:119:10 | n | 0 | -| test.c:124:11:124:15 | Start | 0 | -| test.c:127:6:127:10 | Start | 0 | -| test.c:127:15:127:20 | Length | 0 | -| test.c:135:22:135:22 | c | -128 | -| test.c:137:20:137:20 | x | 0 | -| test.c:138:11:138:11 | i | -2147483648 | -| test.c:139:19:139:19 | c | -128 | -| test.c:139:23:139:23 | i | -2147483648 | -| test.c:139:27:139:28 | uc | 0 | -| test.c:139:32:139:32 | x | 0 | -| test.c:139:36:139:36 | y | 0 | -| test.c:139:40:139:40 | z | -2147483648 | -| test.c:144:23:144:23 | x | -2147483648 | -| test.c:145:32:145:32 | x | -2147483648 | -| test.c:146:33:146:33 | x | -2147483648 | -| test.c:147:31:147:31 | x | -2147483648 | -| test.c:148:13:148:13 | x | -2147483648 | -| test.c:149:23:149:23 | x | -2147483648 | -| test.c:150:10:150:11 | x0 | -128 | -| test.c:150:15:150:16 | x1 | 0 | -| test.c:150:20:150:21 | x2 | 0 | -| test.c:150:25:150:26 | x3 | -2147483648 | -| test.c:150:30:150:31 | c0 | -128 | -| test.c:150:35:150:36 | s0 | 0 | -| test.c:154:11:154:11 | x | -9223372036854775808 | -| test.c:154:20:154:20 | x | 1 | -| test.c:154:30:154:30 | x | 1 | -| test.c:154:35:154:35 | x | 1 | -| test.c:161:12:161:12 | a | -2147483648 | -| test.c:161:17:161:17 | a | 3 | -| test.c:162:14:162:14 | a | 3 | -| test.c:163:14:163:14 | a | 3 | -| test.c:164:5:164:9 | total | 0 | -| test.c:164:14:164:14 | b | 3 | -| test.c:164:16:164:16 | c | -11 | -| test.c:166:12:166:12 | a | -2147483648 | -| test.c:166:17:166:17 | a | 0 | -| test.c:167:14:167:14 | a | 0 | -| test.c:168:14:168:14 | a | 0 | -| test.c:169:5:169:9 | total | -8 | -| test.c:169:14:169:14 | b | 0 | -| test.c:169:16:169:16 | c | -11 | -| test.c:171:13:171:13 | a | -2147483648 | -| test.c:171:18:171:18 | a | -7 | -| test.c:172:14:172:14 | a | -7 | -| test.c:173:14:173:14 | a | -7 | -| test.c:174:5:174:9 | total | -19 | -| test.c:174:14:174:14 | b | -7 | -| test.c:174:16:174:16 | c | -11 | -| test.c:176:13:176:13 | a | -2147483648 | -| test.c:176:18:176:18 | a | -7 | -| test.c:177:14:177:14 | a | -7 | -| test.c:178:14:178:14 | a | -7 | -| test.c:179:5:179:9 | total | -37 | -| test.c:179:14:179:14 | b | -7 | -| test.c:179:16:179:16 | c | -1 | -| test.c:181:13:181:13 | a | -2147483648 | -| test.c:181:18:181:18 | a | -7 | -| test.c:182:14:182:14 | a | -7 | -| test.c:183:14:183:14 | a | -7 | -| test.c:184:5:184:9 | total | -45 | -| test.c:184:14:184:14 | b | -7 | -| test.c:184:16:184:16 | c | 0 | -| test.c:186:13:186:13 | a | -2147483648 | -| test.c:186:18:186:18 | a | -7 | -| test.c:187:14:187:14 | a | -7 | -| test.c:188:14:188:14 | a | -7 | -| test.c:189:5:189:9 | total | -52 | -| test.c:189:14:189:14 | b | -7 | -| test.c:189:16:189:16 | c | 2 | -| test.c:192:10:192:14 | total | -57 | -| test.c:200:12:200:12 | a | -2147483648 | -| test.c:200:17:200:17 | a | 3 | -| test.c:200:33:200:33 | b | -2147483648 | -| test.c:200:38:200:38 | b | 5 | -| test.c:201:13:201:13 | a | 3 | -| test.c:201:15:201:15 | b | 5 | -| test.c:202:5:202:9 | total | 0 | -| test.c:202:14:202:14 | r | -2147483648 | -| test.c:204:12:204:12 | a | -2147483648 | -| test.c:204:17:204:17 | a | 3 | -| test.c:204:33:204:33 | b | -2147483648 | -| test.c:204:38:204:38 | b | 0 | -| test.c:205:13:205:13 | a | 3 | -| test.c:205:15:205:15 | b | 0 | -| test.c:206:5:206:9 | total | -2147483648 | -| test.c:206:14:206:14 | r | -2147483648 | -| test.c:208:12:208:12 | a | -2147483648 | -| test.c:208:17:208:17 | a | 3 | -| test.c:208:35:208:35 | b | -2147483648 | -| test.c:208:40:208:40 | b | -13 | -| test.c:209:13:209:13 | a | 3 | -| test.c:209:15:209:15 | b | -13 | -| test.c:210:5:210:9 | total | -2147483648 | -| test.c:210:14:210:14 | r | -2147483648 | -| test.c:212:12:212:12 | a | -2147483648 | -| test.c:212:17:212:17 | a | 3 | -| test.c:212:35:212:35 | b | -2147483648 | -| test.c:212:40:212:40 | b | -13 | -| test.c:213:13:213:13 | a | 3 | -| test.c:213:15:213:15 | b | -13 | -| test.c:214:5:214:9 | total | -2147483648 | -| test.c:214:14:214:14 | r | -2147483648 | -| test.c:216:12:216:12 | a | -2147483648 | -| test.c:216:17:216:17 | a | 3 | -| test.c:216:35:216:35 | b | -2147483648 | -| test.c:216:40:216:40 | b | -13 | -| test.c:217:13:217:13 | a | 3 | -| test.c:217:15:217:15 | b | -13 | -| test.c:218:5:218:9 | total | -2147483648 | -| test.c:218:14:218:14 | r | -2147483648 | -| test.c:221:10:221:14 | total | -2147483648 | -| test.c:228:12:228:12 | a | -2147483648 | -| test.c:228:17:228:17 | a | 0 | -| test.c:228:33:228:33 | b | -2147483648 | -| test.c:228:38:228:38 | b | 5 | -| test.c:229:13:229:13 | a | 0 | -| test.c:229:15:229:15 | b | 5 | -| test.c:230:5:230:9 | total | 0 | -| test.c:230:14:230:14 | r | -2147483648 | -| test.c:232:12:232:12 | a | -2147483648 | -| test.c:232:17:232:17 | a | 0 | -| test.c:232:33:232:33 | b | -2147483648 | -| test.c:232:38:232:38 | b | 0 | -| test.c:233:13:233:13 | a | 0 | -| test.c:233:15:233:15 | b | 0 | -| test.c:234:5:234:9 | total | -2147483648 | -| test.c:234:14:234:14 | r | -2147483648 | -| test.c:236:12:236:12 | a | -2147483648 | -| test.c:236:17:236:17 | a | 0 | -| test.c:236:35:236:35 | b | -2147483648 | -| test.c:236:40:236:40 | b | -13 | -| test.c:237:13:237:13 | a | 0 | -| test.c:237:15:237:15 | b | -13 | -| test.c:238:5:238:9 | total | -2147483648 | -| test.c:238:14:238:14 | r | -2147483648 | -| test.c:240:12:240:12 | a | -2147483648 | -| test.c:240:17:240:17 | a | 0 | -| test.c:240:35:240:35 | b | -2147483648 | -| test.c:240:40:240:40 | b | -13 | -| test.c:241:13:241:13 | a | 0 | -| test.c:241:15:241:15 | b | -13 | -| test.c:242:5:242:9 | total | -2147483648 | -| test.c:242:14:242:14 | r | -2147483648 | -| test.c:244:12:244:12 | a | -2147483648 | -| test.c:244:17:244:17 | a | 0 | -| test.c:244:35:244:35 | b | -2147483648 | -| test.c:244:40:244:40 | b | -13 | -| test.c:245:13:245:13 | a | 0 | -| test.c:245:15:245:15 | b | -13 | -| test.c:246:5:246:9 | total | -2147483648 | -| test.c:246:14:246:14 | r | -2147483648 | -| test.c:249:10:249:14 | total | -2147483648 | -| test.c:256:14:256:14 | a | -2147483648 | -| test.c:256:19:256:19 | a | -17 | -| test.c:256:35:256:35 | b | -2147483648 | -| test.c:256:40:256:40 | b | 5 | -| test.c:257:13:257:13 | a | -17 | -| test.c:257:15:257:15 | b | 5 | -| test.c:258:5:258:9 | total | 0 | -| test.c:258:14:258:14 | r | -2147483648 | -| test.c:260:14:260:14 | a | -2147483648 | -| test.c:260:19:260:19 | a | -17 | -| test.c:260:35:260:35 | b | -2147483648 | -| test.c:260:40:260:40 | b | 0 | -| test.c:261:13:261:13 | a | -17 | -| test.c:261:15:261:15 | b | 0 | -| test.c:262:5:262:9 | total | -2147483648 | -| test.c:262:14:262:14 | r | -2147483648 | -| test.c:264:14:264:14 | a | -2147483648 | -| test.c:264:19:264:19 | a | -17 | -| test.c:264:37:264:37 | b | -2147483648 | -| test.c:264:42:264:42 | b | -13 | -| test.c:265:13:265:13 | a | -17 | -| test.c:265:15:265:15 | b | -13 | -| test.c:266:5:266:9 | total | -2147483648 | -| test.c:266:14:266:14 | r | -2147483648 | -| test.c:268:14:268:14 | a | -2147483648 | -| test.c:268:19:268:19 | a | -17 | -| test.c:268:37:268:37 | b | -2147483648 | -| test.c:268:42:268:42 | b | -13 | -| test.c:269:13:269:13 | a | -17 | -| test.c:269:15:269:15 | b | -13 | -| test.c:270:5:270:9 | total | -2147483648 | -| test.c:270:14:270:14 | r | -2147483648 | -| test.c:272:14:272:14 | a | -2147483648 | -| test.c:272:19:272:19 | a | -17 | -| test.c:272:37:272:37 | b | -2147483648 | -| test.c:272:42:272:42 | b | -13 | -| test.c:273:13:273:13 | a | -17 | -| test.c:273:15:273:15 | b | -13 | -| test.c:274:5:274:9 | total | -2147483648 | -| test.c:274:14:274:14 | r | -2147483648 | -| test.c:277:10:277:14 | total | -2147483648 | -| test.c:284:14:284:14 | a | -2147483648 | -| test.c:284:19:284:19 | a | -17 | -| test.c:284:34:284:34 | b | -2147483648 | -| test.c:284:39:284:39 | b | 5 | -| test.c:285:13:285:13 | a | -17 | -| test.c:285:15:285:15 | b | 5 | -| test.c:286:5:286:9 | total | 0 | -| test.c:286:14:286:14 | r | -2147483648 | -| test.c:288:14:288:14 | a | -2147483648 | -| test.c:288:19:288:19 | a | -17 | -| test.c:288:34:288:34 | b | -2147483648 | -| test.c:288:39:288:39 | b | 0 | -| test.c:289:13:289:13 | a | -17 | -| test.c:289:15:289:15 | b | 0 | -| test.c:290:5:290:9 | total | -2147483648 | -| test.c:290:14:290:14 | r | -2147483648 | -| test.c:292:14:292:14 | a | -2147483648 | -| test.c:292:19:292:19 | a | -17 | -| test.c:292:36:292:36 | b | -2147483648 | -| test.c:292:41:292:41 | b | -13 | -| test.c:293:13:293:13 | a | -17 | -| test.c:293:15:293:15 | b | -13 | -| test.c:294:5:294:9 | total | -2147483648 | -| test.c:294:14:294:14 | r | -2147483648 | -| test.c:296:14:296:14 | a | -2147483648 | -| test.c:296:19:296:19 | a | -17 | -| test.c:296:36:296:36 | b | -2147483648 | -| test.c:296:41:296:41 | b | -13 | -| test.c:297:13:297:13 | a | -17 | -| test.c:297:15:297:15 | b | -13 | -| test.c:298:5:298:9 | total | -2147483648 | -| test.c:298:14:298:14 | r | -2147483648 | -| test.c:300:14:300:14 | a | -2147483648 | -| test.c:300:19:300:19 | a | -17 | -| test.c:300:36:300:36 | b | -2147483648 | -| test.c:300:41:300:41 | b | -13 | -| test.c:301:13:301:13 | a | -17 | -| test.c:301:15:301:15 | b | -13 | -| test.c:302:5:302:9 | total | -2147483648 | -| test.c:302:14:302:14 | r | -2147483648 | -| test.c:305:10:305:14 | total | -2147483648 | -| test.c:312:14:312:14 | a | -2147483648 | -| test.c:312:19:312:19 | a | -17 | -| test.c:312:35:312:35 | b | -2147483648 | -| test.c:312:40:312:40 | b | 5 | -| test.c:313:13:313:13 | a | -17 | -| test.c:313:15:313:15 | b | 5 | -| test.c:314:5:314:9 | total | 0 | -| test.c:314:14:314:14 | r | -2147483648 | -| test.c:316:14:316:14 | a | -2147483648 | -| test.c:316:19:316:19 | a | -17 | -| test.c:316:35:316:35 | b | -2147483648 | -| test.c:316:40:316:40 | b | 0 | -| test.c:317:13:317:13 | a | -17 | -| test.c:317:15:317:15 | b | 0 | -| test.c:318:5:318:9 | total | -2147483648 | -| test.c:318:14:318:14 | r | -2147483648 | -| test.c:320:14:320:14 | a | -2147483648 | -| test.c:320:19:320:19 | a | -17 | -| test.c:320:37:320:37 | b | -2147483648 | -| test.c:320:42:320:42 | b | -13 | -| test.c:321:13:321:13 | a | -17 | -| test.c:321:15:321:15 | b | -13 | -| test.c:322:5:322:9 | total | -2147483648 | -| test.c:322:14:322:14 | r | -2147483648 | -| test.c:324:14:324:14 | a | -2147483648 | -| test.c:324:19:324:19 | a | -17 | -| test.c:324:37:324:37 | b | -2147483648 | -| test.c:324:42:324:42 | b | -13 | -| test.c:325:13:325:13 | a | -17 | -| test.c:325:15:325:15 | b | -13 | -| test.c:326:5:326:9 | total | -2147483648 | -| test.c:326:14:326:14 | r | -2147483648 | -| test.c:328:14:328:14 | a | -2147483648 | -| test.c:328:19:328:19 | a | -17 | -| test.c:328:37:328:37 | b | -2147483648 | -| test.c:328:42:328:42 | b | -13 | -| test.c:329:13:329:13 | a | -17 | -| test.c:329:15:329:15 | b | -13 | -| test.c:330:5:330:9 | total | -2147483648 | -| test.c:330:14:330:14 | r | -2147483648 | -| test.c:333:10:333:14 | total | -2147483648 | -| test.c:341:32:341:34 | odd | 9007199254740991 | -| test.c:343:10:343:16 | shifted | 4503599627370495 | -| test.c:348:27:348:27 | e | 0 | -| test.c:348:40:348:40 | e | 0 | -| test.c:349:25:349:25 | e | 0 | -| test.c:349:39:349:39 | e | 0 | -| test.c:350:27:350:27 | e | 0 | -| test.c:350:40:350:40 | e | 0 | -| test.c:351:27:351:27 | e | 0 | -| test.c:351:40:351:40 | e | 0 | -| test.c:352:27:352:27 | e | 0 | -| test.c:352:41:352:41 | e | 8 | -| test.c:354:10:354:12 | bi1 | 0 | -| test.c:354:16:354:18 | bi2 | 0 | -| test.c:354:22:354:24 | bi3 | 0 | -| test.c:354:28:354:30 | bi4 | 0 | -| test.c:354:34:354:36 | bi5 | 2 | -| test.c:359:7:359:7 | x | -2147483648 | -| test.c:363:10:363:10 | i | 0 | -| test.c:364:5:364:5 | i | 0 | -| test.c:366:3:366:3 | d | -2147483648 | -| test.c:366:7:366:7 | i | 3 | -| test.c:367:7:367:7 | x | 0 | -| test.c:368:9:368:9 | d | 3 | -| test.c:368:14:368:14 | x | 0 | -| test.c:378:3:378:4 | y1 | 0 | -| test.c:378:8:378:8 | x | 0 | -| test.c:378:18:378:18 | x | 0 | -| test.c:379:3:379:4 | y2 | 0 | -| test.c:379:8:379:8 | x | 0 | -| test.c:379:24:379:24 | x | 0 | -| test.c:380:3:380:4 | y3 | 0 | -| test.c:381:3:381:4 | y4 | 0 | -| test.c:382:3:382:4 | y5 | 0 | -| test.c:383:3:383:4 | y6 | 0 | -| test.c:384:3:384:4 | y7 | 0 | -| test.c:385:3:385:4 | y8 | 0 | -| test.c:386:7:386:7 | x | 0 | -| test.c:387:5:387:6 | y3 | 0 | -| test.c:387:10:387:10 | x | 0 | -| test.c:388:5:388:6 | y4 | 0 | -| test.c:388:10:388:10 | x | 0 | -| test.c:389:5:389:6 | y5 | 0 | -| test.c:389:11:389:11 | x | 0 | -| test.c:390:5:390:6 | y6 | 0 | -| test.c:390:27:390:27 | x | 0 | -| test.c:391:5:391:6 | y7 | 0 | -| test.c:391:27:391:27 | x | 0 | -| test.c:392:5:392:6 | y8 | 0 | -| test.c:392:28:392:28 | x | 0 | -| test.c:394:10:394:11 | y1 | 0 | -| test.c:394:15:394:16 | y2 | 0 | -| test.c:394:20:394:21 | y3 | 0 | -| test.c:394:25:394:26 | y4 | 0 | -| test.c:394:30:394:31 | y5 | 0 | -| test.c:394:35:394:36 | y6 | 0 | -| test.c:394:40:394:41 | y7 | 0 | -| test.c:394:45:394:46 | y8 | 0 | -| test.c:400:3:400:4 | y1 | 0 | -| test.c:400:8:400:8 | x | 0 | -| test.c:400:18:400:18 | x | 101 | -| test.c:401:3:401:4 | y2 | 0 | -| test.c:401:8:401:8 | x | 0 | -| test.c:401:25:401:25 | x | 101 | -| test.c:402:3:402:4 | y3 | 0 | -| test.c:403:3:403:4 | y4 | 0 | -| test.c:404:3:404:4 | y5 | 0 | -| test.c:405:7:405:7 | x | 0 | -| test.c:406:5:406:6 | y3 | 0 | -| test.c:406:11:406:11 | x | 300 | -| test.c:407:5:407:6 | y4 | 0 | -| test.c:407:11:407:11 | x | 300 | -| test.c:408:5:408:6 | y5 | 0 | -| test.c:408:27:408:27 | x | 300 | -| test.c:410:10:410:11 | y1 | 101 | -| test.c:410:15:410:16 | y2 | 101 | -| test.c:410:20:410:21 | y3 | 0 | -| test.c:410:25:410:26 | y4 | 100 | -| test.c:410:30:410:31 | y5 | 0 | -| test.c:415:14:415:14 | m | -Infinity | -| test.c:415:18:415:18 | n | -Infinity | -| test.c:415:22:415:22 | o | -Infinity | -| test.c:415:26:415:26 | p | -Infinity | -| test.c:415:30:415:30 | q | -Infinity | -| test.c:416:14:416:14 | m | -Infinity | -| test.c:416:18:416:18 | n | -Infinity | -| test.c:416:22:416:22 | o | -Infinity | -| test.c:416:26:416:26 | p | -Infinity | -| test.c:416:30:416:30 | q | -Infinity | -| test.c:417:14:417:14 | m | -Infinity | -| test.c:417:18:417:18 | n | -Infinity | -| test.c:417:22:417:22 | o | -Infinity | -| test.c:417:26:417:26 | p | -Infinity | -| test.c:417:30:417:30 | q | -Infinity | -| test.c:418:14:418:14 | m | -Infinity | -| test.c:418:18:418:18 | n | -Infinity | -| test.c:418:22:418:22 | o | -Infinity | -| test.c:418:26:418:26 | p | -Infinity | -| test.c:418:30:418:30 | q | -Infinity | -| test.c:419:14:419:14 | m | -Infinity | -| test.c:419:18:419:18 | n | -Infinity | -| test.c:419:22:419:22 | o | -Infinity | -| test.c:419:26:419:26 | p | -Infinity | -| test.c:419:30:419:30 | q | -Infinity | -| test.c:420:14:420:14 | m | -Infinity | -| test.c:420:18:420:18 | n | -Infinity | -| test.c:420:22:420:22 | o | -Infinity | -| test.c:420:26:420:26 | p | -Infinity | -| test.c:420:30:420:30 | q | -Infinity | -| test.c:421:14:421:14 | m | -Infinity | -| test.c:421:18:421:18 | n | -Infinity | -| test.c:421:22:421:22 | o | -Infinity | -| test.c:421:26:421:26 | p | -Infinity | -| test.c:421:30:421:30 | q | -Infinity | -| test.c:422:14:422:14 | m | -Infinity | -| test.c:422:18:422:18 | n | -Infinity | -| test.c:422:22:422:22 | o | -Infinity | -| test.c:422:26:422:26 | p | -Infinity | -| test.c:422:30:422:30 | q | -Infinity | -| test.c:423:14:423:14 | m | -Infinity | -| test.c:423:18:423:18 | n | -Infinity | -| test.c:423:22:423:22 | o | -Infinity | -| test.c:423:26:423:26 | p | -Infinity | -| test.c:423:30:423:30 | q | -Infinity | -| test.c:424:14:424:14 | m | -Infinity | -| test.c:424:18:424:18 | n | -Infinity | -| test.c:424:22:424:22 | o | -Infinity | -| test.c:424:26:424:26 | p | -Infinity | -| test.c:424:30:424:30 | q | -Infinity | -| test.c:425:14:425:14 | m | -Infinity | -| test.c:425:18:425:18 | n | -Infinity | -| test.c:425:22:425:22 | o | -Infinity | -| test.c:425:26:425:26 | p | -Infinity | -| test.c:425:30:425:30 | q | -Infinity | -| test.c:426:14:426:14 | m | -Infinity | -| test.c:426:18:426:18 | n | -Infinity | -| test.c:426:22:426:22 | o | -Infinity | -| test.c:426:26:426:26 | p | -Infinity | -| test.c:426:30:426:30 | q | -Infinity | -| test.c:432:19:432:19 | a | 0.143339 | -| test.c:432:23:432:23 | b | 0.222479 | -| test.c:432:27:432:27 | c | 0.051213 | -| test.c:432:31:432:31 | d | 0.369769 | -| test.c:432:35:432:35 | e | 0.105977 | -| test.c:432:39:432:39 | f | 0.107867 | -| test.c:432:43:432:43 | g | 0.025243 | -| test.c:432:47:432:47 | h | 0.149635 | -| test.c:432:51:432:51 | i | 0.053282 | -| test.c:432:55:432:55 | j | 0.276432 | -| test.c:432:59:432:59 | k | 0.205191 | -| test.c:432:63:432:63 | l | 0.132041 | -| test.c:434:10:434:15 | output | 1.842468 | -| test.c:441:7:441:9 | rhs | 0 | -| test.c:441:19:441:21 | rhs | 0 | -| test.c:442:7:442:9 | rhs | 0 | -| test.c:442:19:442:21 | rhs | 0 | -| test.c:443:7:443:9 | rhs | 0 | -| test.c:443:19:443:21 | rhs | 0 | -| test.c:444:7:444:9 | rhs | 0 | -| test.c:444:19:444:21 | rhs | 0 | -| test.c:445:7:445:9 | rhs | 0 | -| test.c:445:19:445:21 | rhs | 0 | -| test.c:446:10:446:12 | rhs | 0 | -| test.c:450:7:450:7 | a | -2147483648 | -| test.c:451:9:451:9 | b | -2147483648 | -| test.c:452:7:452:7 | a | 17 | -| test.c:452:12:452:12 | b | 23 | -| test.c:454:9:454:9 | a | 17 | -| test.c:455:7:455:7 | b | -2147483648 | -| test.c:460:11:460:11 | a | -2147483648 | -| test.c:460:15:460:15 | b | -2147483648 | -| test.c:461:10:461:10 | a | -2147483648 | -| test.c:461:14:461:14 | b | -2147483648 | -| test.c:468:10:468:11 | ip | 0 | -| test.c:468:20:468:21 | ip | 0 | -| test.c:468:40:468:41 | ip | 0 | -| test.c:469:14:469:15 | ip | 1 | -| test.c:470:14:470:15 | ip | 0 | -| test.c:470:34:470:35 | ip | 0 | -| test.c:471:11:471:12 | ip | 0 | -| test.c:472:13:472:14 | ip | 0 | -| test.c:473:14:473:15 | ip | 0 | -| test.c:474:14:474:15 | ip | 0 | -| test.c:475:15:475:16 | ip | 0 | -| test.c:475:41:475:42 | ip | 0 | -| test.c:475:52:475:53 | ip | 0 | -| test.c:475:67:475:68 | ip | 0 | -| test.c:475:78:475:79 | ip | 0 | -| test.c:476:18:476:19 | ip | 0 | -| test.c:477:23:477:24 | ip | 0 | -| test.c:477:34:477:35 | ip | 0 | -| test.c:478:25:478:26 | ip | 0 | -| test.c:479:20:479:21 | ip | 0 | -| test.c:480:11:480:12 | ip | 0 | -| test.c:480:26:480:27 | ip | 0 | -| test.c:481:16:481:17 | ip | 0 | -| test.c:482:16:482:17 | ip | 0 | -| test.c:483:16:483:17 | ip | 0 | -| test.c:484:17:484:18 | ip | 0 | -| test.c:485:22:485:23 | ip | 0 | -| test.c:485:33:485:34 | ip | 0 | -| test.c:485:48:485:49 | ip | 0 | -| test.c:485:59:485:60 | ip | 0 | -| test.c:486:20:486:21 | ip | 0 | -| test.c:487:25:487:26 | ip | 0 | -| test.c:487:36:487:37 | ip | 0 | -| test.c:488:27:488:28 | ip | 0 | -| test.c:489:22:489:23 | ip | 0 | -| test.c:490:15:490:16 | ip | 0 | -| test.c:490:30:490:31 | ip | 0 | -| test.c:491:11:491:12 | ip | 0 | -| test.c:492:12:492:13 | ip | 0 | -| test.c:493:12:493:13 | ip | 0 | -| test.c:494:13:494:14 | ip | 0 | -| test.c:494:39:494:40 | ip | 0 | -| test.c:494:50:494:51 | ip | 0 | -| test.c:494:65:494:66 | ip | 0 | -| test.c:494:76:494:77 | ip | 0 | -| test.c:495:16:495:17 | ip | 0 | -| test.c:496:21:496:22 | ip | 0 | -| test.c:496:32:496:33 | ip | 0 | -| test.c:497:23:497:24 | ip | 0 | -| test.c:498:18:498:19 | ip | 0 | -| test.c:499:11:499:12 | ip | 0 | -| test.c:499:17:499:18 | ip | 0 | -| test.c:499:37:499:38 | ip | 0 | -| test.c:499:43:499:44 | ip | 0 | -| test.c:500:14:500:15 | ip | 0 | -| test.c:501:14:501:15 | ip | 0 | -| test.c:502:14:502:15 | ip | 0 | -| test.c:503:15:503:16 | ip | 0 | -| test.c:503:41:503:42 | ip | 0 | -| test.c:503:52:503:53 | ip | 0 | -| test.c:503:67:503:68 | ip | 0 | -| test.c:503:78:503:79 | ip | 0 | -| test.c:504:18:504:19 | ip | 0 | -| test.c:505:23:505:24 | ip | 0 | -| test.c:505:34:505:35 | ip | 0 | -| test.c:506:25:506:26 | ip | 0 | -| test.c:507:20:507:21 | ip | 0 | -| test.c:508:14:508:15 | ip | 0 | -| test.c:508:20:508:21 | ip | 0 | -| test.c:509:16:509:17 | ip | 0 | -| test.c:510:12:510:13 | ip | 0 | -| test.c:511:14:511:15 | ip | 0 | -| test.c:512:15:512:16 | ip | 0 | -| test.c:513:16:513:17 | ip | 0 | -| test.c:514:16:514:17 | ip | 0 | -| test.c:515:17:515:18 | ip | 0 | -| test.c:516:22:516:23 | ip | 0 | -| test.c:516:33:516:34 | ip | 0 | -| test.c:516:48:516:49 | ip | 0 | -| test.c:516:59:516:60 | ip | 0 | -| test.c:517:20:517:21 | ip | 0 | -| test.c:518:25:518:26 | ip | 0 | -| test.c:518:36:518:37 | ip | 0 | -| test.c:519:27:519:28 | ip | 0 | -| test.c:520:22:520:23 | ip | 0 | -| test.c:521:13:521:14 | ip | 0 | -| test.c:521:28:521:29 | ip | 0 | -| test.c:522:18:522:19 | ip | 0 | -| test.c:523:18:523:19 | ip | 0 | -| test.c:524:18:524:19 | ip | 0 | -| test.c:525:19:525:20 | ip | 0 | -| test.c:526:24:526:25 | ip | 0 | -| test.c:526:35:526:36 | ip | 0 | -| test.c:526:50:526:51 | ip | 0 | -| test.c:526:61:526:62 | ip | 0 | -| test.c:527:22:527:23 | ip | 0 | -| test.c:528:27:528:28 | ip | 0 | -| test.c:528:38:528:39 | ip | 0 | -| test.c:529:29:529:30 | ip | 0 | -| test.c:530:24:530:25 | ip | 0 | -| test.c:531:17:531:18 | ip | 0 | -| test.c:531:32:531:33 | ip | 0 | -| test.c:532:14:532:15 | ip | 0 | -| test.c:533:18:533:19 | ip | 0 | -| test.c:534:18:534:19 | ip | 0 | -| test.c:535:19:535:20 | ip | 0 | -| test.c:536:24:536:25 | ip | 0 | -| test.c:536:35:536:36 | ip | 0 | -| test.c:536:50:536:51 | ip | 0 | -| test.c:536:61:536:62 | ip | 0 | -| test.c:537:22:537:23 | ip | 0 | -| test.c:538:27:538:28 | ip | 0 | -| test.c:538:38:538:39 | ip | 0 | -| test.c:539:29:539:30 | ip | 0 | -| test.c:540:24:540:25 | ip | 0 | -| test.c:541:17:541:18 | ip | 0 | -| test.c:541:23:541:24 | ip | 0 | -| test.c:541:43:541:44 | ip | 0 | -| test.c:541:49:541:50 | ip | 0 | -| test.c:542:16:542:17 | ip | 0 | -| test.c:543:16:543:17 | ip | 0 | -| test.c:544:16:544:17 | ip | 0 | -| test.c:545:17:545:18 | ip | 0 | -| test.c:546:22:546:23 | ip | 0 | -| test.c:546:33:546:34 | ip | 0 | -| test.c:546:48:546:49 | ip | 0 | -| test.c:546:59:546:60 | ip | 0 | -| test.c:547:20:547:21 | ip | 0 | -| test.c:548:25:548:26 | ip | 0 | -| test.c:548:36:548:37 | ip | 0 | -| test.c:549:27:549:28 | ip | 0 | -| test.c:550:22:550:23 | ip | 0 | -| test.c:551:16:551:17 | ip | 0 | -| test.c:551:22:551:23 | ip | 0 | -| test.c:552:18:552:19 | ip | 0 | -| test.c:553:14:553:15 | ip | 0 | -| test.c:554:14:554:15 | ip | 0 | -| test.c:554:24:554:25 | ip | 0 | -| test.c:554:44:554:45 | ip | 0 | -| test.c:555:16:555:17 | ip | 1 | -| test.c:556:16:556:17 | ip | 0 | -| test.c:556:36:556:37 | ip | 0 | -| test.c:557:14:557:15 | ip | 0 | -| test.c:558:19:558:20 | ip | 0 | -| test.c:559:20:559:21 | ip | 0 | -| test.c:560:20:560:21 | ip | 0 | -| test.c:561:21:561:22 | ip | 0 | -| test.c:562:26:562:27 | ip | 0 | -| test.c:562:37:562:38 | ip | 0 | -| test.c:562:52:562:53 | ip | 0 | -| test.c:562:63:562:64 | ip | 0 | -| test.c:563:24:563:25 | ip | 0 | -| test.c:564:29:564:30 | ip | 0 | -| test.c:564:40:564:41 | ip | 0 | -| test.c:565:31:565:32 | ip | 0 | -| test.c:566:26:566:27 | ip | 0 | -| test.c:567:17:567:18 | ip | 0 | -| test.c:567:32:567:33 | ip | 0 | -| test.c:568:22:568:23 | ip | 0 | -| test.c:569:22:569:23 | ip | 0 | -| test.c:570:22:570:23 | ip | 0 | -| test.c:571:23:571:24 | ip | 0 | -| test.c:572:28:572:29 | ip | 0 | -| test.c:572:39:572:40 | ip | 0 | -| test.c:572:54:572:55 | ip | 0 | -| test.c:572:65:572:66 | ip | 0 | -| test.c:573:26:573:27 | ip | 0 | -| test.c:574:31:574:32 | ip | 0 | -| test.c:574:42:574:43 | ip | 0 | -| test.c:575:33:575:34 | ip | 0 | -| test.c:576:28:576:29 | ip | 0 | -| test.c:577:21:577:22 | ip | 0 | -| test.c:577:36:577:37 | ip | 0 | -| test.c:578:17:578:18 | ip | 0 | -| test.c:579:18:579:19 | ip | 0 | -| test.c:580:18:580:19 | ip | 0 | -| test.c:581:19:581:20 | ip | 0 | -| test.c:582:24:582:25 | ip | 0 | -| test.c:582:35:582:36 | ip | 0 | -| test.c:582:50:582:51 | ip | 0 | -| test.c:582:61:582:62 | ip | 0 | -| test.c:583:22:583:23 | ip | 0 | -| test.c:584:27:584:28 | ip | 0 | -| test.c:584:38:584:39 | ip | 0 | -| test.c:585:29:585:30 | ip | 0 | -| test.c:586:24:586:25 | ip | 0 | -| test.c:587:17:587:18 | ip | 0 | -| test.c:587:23:587:24 | ip | 0 | -| test.c:587:43:587:44 | ip | 0 | -| test.c:587:49:587:50 | ip | 0 | -| test.c:588:20:588:21 | ip | 0 | -| test.c:589:20:589:21 | ip | 0 | -| test.c:590:20:590:21 | ip | 0 | -| test.c:591:21:591:22 | ip | 0 | -| test.c:592:26:592:27 | ip | 0 | -| test.c:592:37:592:38 | ip | 0 | -| test.c:592:52:592:53 | ip | 0 | -| test.c:592:63:592:64 | ip | 0 | -| test.c:593:24:593:25 | ip | 0 | -| test.c:594:29:594:30 | ip | 0 | -| test.c:594:40:594:41 | ip | 0 | -| test.c:595:31:595:32 | ip | 0 | -| test.c:596:26:596:27 | ip | 0 | -| test.c:597:20:597:21 | ip | 0 | -| test.c:597:26:597:27 | ip | 0 | -| test.c:598:22:598:23 | ip | 0 | -| test.c:599:18:599:19 | ip | 0 | -| test.c:600:16:600:17 | ip | 0 | -| test.c:601:17:601:18 | ip | 0 | -| test.c:602:18:602:19 | ip | 0 | -| test.c:603:18:603:19 | ip | 0 | -| test.c:604:19:604:20 | ip | 0 | -| test.c:605:24:605:25 | ip | 0 | -| test.c:605:35:605:36 | ip | 0 | -| test.c:605:50:605:51 | ip | 0 | -| test.c:605:61:605:62 | ip | 0 | -| test.c:606:22:606:23 | ip | 0 | -| test.c:607:27:607:28 | ip | 0 | -| test.c:607:38:607:39 | ip | 0 | -| test.c:608:29:608:30 | ip | 0 | -| test.c:609:24:609:25 | ip | 0 | -| test.c:610:15:610:16 | ip | 0 | -| test.c:610:30:610:31 | ip | 0 | -| test.c:611:20:611:21 | ip | 0 | -| test.c:612:20:612:21 | ip | 0 | -| test.c:613:20:613:21 | ip | 0 | -| test.c:614:21:614:22 | ip | 0 | -| test.c:615:26:615:27 | ip | 0 | -| test.c:615:37:615:38 | ip | 0 | -| test.c:615:52:615:53 | ip | 0 | -| test.c:615:63:615:64 | ip | 0 | -| test.c:616:24:616:25 | ip | 0 | -| test.c:617:29:617:30 | ip | 0 | -| test.c:617:40:617:41 | ip | 0 | -| test.c:618:31:618:32 | ip | 0 | -| test.c:619:26:619:27 | ip | 0 | -| test.c:620:19:620:20 | ip | 0 | -| test.c:620:34:620:35 | ip | 0 | -| test.c:621:16:621:17 | ip | 0 | -| test.c:622:20:622:21 | ip | 0 | -| test.c:623:20:623:21 | ip | 0 | -| test.c:624:21:624:22 | ip | 0 | -| test.c:625:26:625:27 | ip | 0 | -| test.c:625:37:625:38 | ip | 0 | -| test.c:625:52:625:53 | ip | 0 | -| test.c:625:63:625:64 | ip | 0 | -| test.c:626:24:626:25 | ip | 0 | -| test.c:627:29:627:30 | ip | 0 | -| test.c:627:40:627:41 | ip | 0 | -| test.c:628:31:628:32 | ip | 0 | -| test.c:629:26:629:27 | ip | 0 | -| test.c:630:19:630:20 | ip | 0 | -| test.c:630:25:630:26 | ip | 0 | -| test.c:630:45:630:46 | ip | 0 | -| test.c:630:51:630:52 | ip | 0 | -| test.c:631:18:631:19 | ip | 0 | -| test.c:632:18:632:19 | ip | 0 | -| test.c:633:18:633:19 | ip | 0 | -| test.c:634:19:634:20 | ip | 0 | -| test.c:635:24:635:25 | ip | 0 | -| test.c:635:35:635:36 | ip | 0 | -| test.c:635:50:635:51 | ip | 0 | -| test.c:635:61:635:62 | ip | 0 | -| test.c:636:22:636:23 | ip | 0 | -| test.c:637:27:637:28 | ip | 0 | -| test.c:637:38:637:39 | ip | 0 | -| test.c:638:29:638:30 | ip | 0 | -| test.c:639:24:639:25 | ip | 0 | -| test.c:640:18:640:19 | ip | 0 | -| test.c:640:24:640:25 | ip | 0 | -| test.c:641:20:641:21 | ip | 0 | -| test.c:642:16:642:17 | ip | 0 | -| test.c:643:10:643:23 | special_number | 0 | -| test.c:651:7:651:8 | c1 | -2147483648 | -| test.c:651:13:651:13 | x | 0 | -| test.c:652:7:652:8 | c2 | -2147483648 | -| test.c:652:13:652:13 | x | 0 | -| test.c:653:7:653:8 | c3 | -2147483648 | -| test.c:653:13:653:13 | x | 0 | -| test.c:654:7:654:8 | c4 | -2147483648 | -| test.c:654:13:654:13 | x | 0 | -| test.c:655:7:655:8 | c5 | -2147483648 | -| test.c:655:13:655:13 | x | 0 | -| test.c:656:7:656:8 | c1 | -2147483648 | -| test.c:656:13:656:14 | c2 | -2147483648 | -| test.c:656:19:656:19 | x | 0 | -| test.c:657:7:657:8 | c1 | -2147483648 | -| test.c:657:13:657:14 | c3 | -2147483648 | -| test.c:657:19:657:19 | x | 0 | -| test.c:658:7:658:8 | c1 | -2147483648 | -| test.c:658:13:658:14 | c4 | -2147483648 | -| test.c:658:19:658:19 | x | 0 | -| test.c:659:7:659:8 | c1 | -2147483648 | -| test.c:659:13:659:14 | c5 | -2147483648 | -| test.c:659:19:659:19 | x | 0 | -| test.c:660:7:660:8 | c2 | -2147483648 | -| test.c:660:13:660:14 | c3 | -2147483648 | -| test.c:660:19:660:19 | x | 0 | -| test.c:662:11:662:11 | x | 0 | -| test.c:662:15:662:15 | x | 0 | -| test.c:662:19:662:19 | x | 0 | -| test.c:662:23:662:23 | x | 0 | -| test.c:662:27:662:27 | x | 0 | -| test.c:662:31:662:31 | x | 0 | -| test.c:662:35:662:35 | x | 0 | -| test.c:662:39:662:39 | x | 0 | -| test.c:662:43:662:43 | x | 0 | -| test.c:662:47:662:47 | x | 0 | -| test.c:662:51:662:51 | x | 0 | -| test.c:662:55:662:55 | x | 0 | -| test.c:663:10:663:10 | y | -2147483648 | -| test.c:668:20:668:20 | x | 0 | -| test.c:668:30:668:30 | x | 0 | -| test.c:671:3:671:4 | y1 | 0 | -| test.c:671:11:671:11 | y | 0 | -| test.c:671:14:671:14 | y | 1 | -| test.c:672:3:672:4 | y2 | 0 | -| test.c:672:9:672:9 | y | 1 | -| test.c:672:14:672:14 | y | 2 | -| test.c:672:22:672:22 | y | 5 | -| test.c:673:10:673:11 | y1 | 1 | -| test.c:673:15:673:16 | y2 | 5 | -| test.c:681:3:681:3 | i | -2147483648 | -| test.c:682:7:682:7 | i | 10 | -| test.c:684:3:684:3 | i | -2147483648 | -| test.c:685:3:685:3 | i | 10 | -| test.c:686:7:686:7 | i | 20 | -| test.c:688:3:688:3 | i | -2147483648 | -| test.c:689:3:689:3 | i | 40 | -| test.c:690:7:690:7 | i | 30 | -| test.c:692:3:692:3 | i | -2147483648 | -| test.c:692:7:692:7 | j | -2147483648 | -| test.c:693:7:693:7 | i | 40 | -| test.c:695:3:695:3 | i | -2147483648 | -| test.c:695:8:695:8 | j | 40 | -| test.c:696:7:696:7 | i | 50 | -| test.c:698:3:698:3 | i | -2147483648 | -| test.c:698:13:698:13 | j | 50 | -| test.c:699:7:699:7 | i | 60 | -| test.c:706:12:706:12 | a | 0 | -| test.c:706:17:706:17 | a | 3 | -| test.c:706:33:706:33 | b | 0 | -| test.c:706:38:706:38 | b | 5 | -| test.c:707:13:707:13 | a | 3 | -| test.c:707:15:707:15 | b | 5 | -| test.c:708:5:708:9 | total | 0 | -| test.c:708:14:708:14 | r | 15 | -| test.c:710:12:710:12 | a | 0 | -| test.c:710:17:710:17 | a | 3 | -| test.c:710:33:710:33 | b | 0 | -| test.c:710:38:710:38 | b | 0 | -| test.c:711:13:711:13 | a | 3 | -| test.c:711:15:711:15 | b | 0 | -| test.c:712:5:712:9 | total | 0 | -| test.c:712:14:712:14 | r | 0 | -| test.c:714:12:714:12 | a | 0 | -| test.c:714:17:714:17 | a | 3 | -| test.c:714:34:714:34 | b | 0 | -| test.c:714:39:714:39 | b | 13 | -| test.c:715:13:715:13 | a | 3 | -| test.c:715:15:715:15 | b | 13 | -| test.c:716:5:716:9 | total | 0 | -| test.c:716:14:716:14 | r | 39 | -| test.c:719:10:719:14 | total | 0 | -| test.c:725:12:725:12 | b | 0 | -| test.c:725:17:725:17 | b | 5 | -| test.c:726:16:726:16 | b | 5 | -| test.c:727:5:727:9 | total | 0 | -| test.c:727:14:727:14 | r | 55 | -| test.c:729:12:729:12 | b | 0 | -| test.c:729:17:729:17 | b | 0 | -| test.c:730:16:730:16 | b | 0 | -| test.c:731:5:731:9 | total | 0 | -| test.c:731:14:731:14 | r | 0 | -| test.c:733:13:733:13 | b | 0 | -| test.c:733:18:733:18 | b | 13 | -| test.c:734:16:734:16 | b | 13 | -| test.c:735:5:735:9 | total | 0 | -| test.c:735:14:735:14 | r | 143 | -| test.c:738:10:738:14 | total | 0 | -| test.c:743:3:743:3 | x | 0 | -| test.c:743:7:743:7 | y | 0 | -| test.c:744:3:744:4 | xy | 0 | -| test.c:744:8:744:8 | x | 1000000003 | -| test.c:744:12:744:12 | y | 1000000003 | -| test.c:745:10:745:11 | xy | 1000000006000000000 | -| test.c:750:3:750:3 | x | 0 | -| test.c:751:3:751:3 | y | 0 | -| test.c:752:3:752:4 | xy | 0 | -| test.c:752:8:752:8 | x | 274177 | -| test.c:752:12:752:12 | y | 67280421310721 | -| test.c:753:10:753:11 | xy | 18446744073709551616 | -| test.c:757:7:757:8 | ui | 0 | -| test.c:758:43:758:44 | ui | 10 | -| test.c:758:48:758:49 | ui | 10 | -| test.c:759:12:759:17 | result | 100 | -| test.c:761:7:761:8 | ul | 0 | -| test.c:762:28:762:29 | ul | 10 | -| test.c:762:33:762:34 | ul | 10 | -| test.c:763:12:763:17 | result | 0 | -| test.c:769:7:769:8 | ui | 0 | -| test.c:769:19:769:20 | ui | 0 | -| test.c:770:5:770:6 | ui | 2 | -| test.c:770:11:770:12 | ui | 2 | -| test.c:771:12:771:13 | ui | 4 | -| test.c:775:3:775:9 | uiconst | 10 | -| test.c:778:3:778:9 | ulconst | 10 | -| test.c:779:10:779:16 | uiconst | 40 | -| test.c:779:20:779:26 | ulconst | 40 | -| test.c:783:7:783:7 | i | -2147483648 | -| test.c:783:18:783:18 | i | -1 | -| test.c:784:5:784:5 | i | -2147483648 | -| test.c:784:13:784:13 | i | -1 | -| test.c:785:9:785:9 | i | -5 | -| test.c:787:5:787:5 | i | -2147483648 | -| test.c:787:9:787:9 | i | -5 | -| test.c:788:9:788:9 | i | -30 | -| test.c:790:5:790:5 | i | -30 | -| test.c:791:9:791:9 | i | -210 | -| test.c:793:5:793:5 | i | -210 | -| test.c:794:9:794:9 | i | -1155 | -| test.c:796:7:796:7 | i | -2147483648 | -| test.c:797:5:797:5 | i | -2147483648 | -| test.c:797:9:797:9 | i | -1 | -| test.c:798:9:798:9 | i | 1 | -| test.c:800:3:800:3 | i | -2147483648 | -| test.c:800:7:800:7 | i | -2147483648 | -| test.c:801:10:801:10 | i | -2147483648 | -| test.c:804:3:804:3 | i | -2147483648 | -| test.c:804:10:804:11 | sc | 1 | -| test.c:806:7:806:7 | i | -128 | -| test.c:813:7:813:7 | n | 0 | -| test.c:815:7:815:7 | n | 0 | -| test.c:816:9:816:9 | n | 1 | -| test.c:819:7:819:7 | n | 0 | -| test.c:820:9:820:9 | n | 1 | -| test.c:822:9:822:9 | n | 0 | -| test.c:825:8:825:8 | n | 0 | -| test.c:826:9:826:9 | n | 0 | -| test.c:828:9:828:9 | n | 1 | -| test.c:831:10:831:10 | n | 0 | -| test.c:832:5:832:5 | n | 1 | -| test.c:835:7:835:7 | n | 0 | -| test.c:839:7:839:7 | n | -32768 | -| test.c:842:7:842:7 | n | 0 | -| test.c:843:9:843:9 | n | 0 | -| test.c:845:9:845:9 | n | 1 | -| test.c:848:7:848:7 | n | 0 | -| test.c:849:9:849:9 | n | 1 | -| test.c:851:9:851:9 | n | 0 | -| test.c:854:10:854:10 | n | 0 | -| test.c:855:5:855:5 | n | 1 | -| test.c:858:7:858:7 | n | 0 | -| test.c:862:7:862:7 | n | -32768 | -| test.c:863:9:863:9 | n | -32768 | -| test.c:864:11:864:11 | n | 0 | -| test.c:868:7:868:7 | n | -32768 | -| test.c:869:13:869:13 | n | 5 | -| test.c:872:9:872:9 | n | 6 | -| test.c:875:7:875:7 | n | -32768 | -| test.c:875:22:875:22 | n | -32767 | -| test.c:876:9:876:9 | n | -32766 | -| test.c:879:7:879:7 | n | -32768 | -| test.c:880:5:880:5 | n | 0 | -| test.c:880:10:880:10 | n | 1 | -| test.c:880:14:880:14 | n | 0 | -| test.c:881:6:881:6 | n | 0 | -| test.c:881:10:881:10 | n | 0 | -| test.c:881:14:881:14 | n | 1 | -| test.c:892:7:892:8 | ss | -32768 | -| test.c:893:9:893:10 | ss | 0 | -| test.c:896:7:896:8 | ss | -32768 | -| test.c:897:9:897:10 | ss | -32768 | -| test.c:900:14:900:15 | us | 0 | -| test.c:901:9:901:10 | us | 0 | -| test.c:904:14:904:15 | us | 0 | -| test.c:905:9:905:10 | us | 0 | -| test.c:908:7:908:8 | ss | -32768 | -| test.c:909:9:909:10 | ss | -32768 | -| test.c:912:7:912:8 | ss | -32768 | -| test.c:913:9:913:10 | ss | -1 | -| test.c:919:8:919:8 | s | -2147483648 | -| test.c:919:15:919:15 | s | 0 | -| test.c:919:23:919:23 | s | 0 | -| test.c:920:18:920:18 | s | 0 | -| test.c:920:22:920:22 | s | 0 | -| test.c:921:9:921:14 | result | 0 | -| test.c:927:7:927:7 | i | 0 | -| test.c:928:9:928:9 | i | -2147483648 | -| test.c:932:7:932:7 | u | 0 | -| test.c:933:9:933:9 | u | 0 | -| test.c:938:12:938:12 | s | -2147483648 | -| test.c:939:7:939:8 | s2 | -4 | -| test.c:944:7:944:7 | x | -2147483648 | -| test.c:945:9:945:9 | y | -2147483648 | -| test.c:949:7:949:7 | y | -2147483648 | -| test.c:958:7:958:7 | x | -2147483648 | -| test.c:963:7:963:7 | x | -2147483648 | -| test.c:970:8:970:8 | x | 2147483647 | -| test.c:970:12:970:12 | y | 256 | -| test.c:971:9:971:9 | x | 2147483647 | -| test.c:972:9:972:9 | y | 256 | -| test.cpp:10:7:10:7 | b | -2147483648 | -| test.cpp:11:5:11:5 | x | -2147483648 | -| test.cpp:13:10:13:10 | x | -2147483648 | -| test.cpp:18:30:18:30 | x | -2147483648 | -| test.cpp:19:10:19:11 | x0 | -128 | -| test.cpp:27:7:27:7 | y | -2147483648 | -| test.cpp:28:5:28:5 | x | -2147483648 | -| test.cpp:30:7:30:7 | y | -2147483648 | -| test.cpp:31:5:31:5 | x | -2147483648 | -| test.cpp:33:7:33:7 | y | -2147483648 | -| test.cpp:34:5:34:5 | x | -2147483648 | -| test.cpp:36:7:36:7 | y | -2147483648 | -| test.cpp:37:5:37:5 | x | -2147483648 | -| test.cpp:39:7:39:7 | y | -2147483648 | -| test.cpp:40:5:40:5 | x | -2147483648 | -| test.cpp:42:7:42:7 | y | -2147483648 | -| test.cpp:43:5:43:5 | x | -2147483648 | -| test.cpp:45:7:45:7 | y | -2147483648 | -| test.cpp:46:5:46:5 | x | -2147483648 | -| test.cpp:51:7:51:7 | x | -2147483648 | -| test.cpp:52:21:52:21 | x | 0 | -| test.cpp:53:5:53:5 | t | 0 | -| test.cpp:53:15:53:16 | xb | 0 | -| test.cpp:56:7:56:7 | x | -2147483648 | -| test.cpp:57:21:57:21 | x | 1 | -| test.cpp:58:5:58:5 | t | 0 | -| test.cpp:58:15:58:16 | xb | 1 | -| test.cpp:61:7:61:7 | x | -2147483648 | -| test.cpp:62:21:62:21 | x | -2147483648 | -| test.cpp:63:5:63:5 | t | 0 | -| test.cpp:63:15:63:16 | xb | 1 | -| test.cpp:66:19:66:19 | x | -2147483648 | -| test.cpp:67:3:67:3 | t | 0 | -| test.cpp:67:13:67:14 | xb | 0 | -| test.cpp:69:10:69:10 | b | 0 | -| test.cpp:69:21:69:21 | t | 0 | -| test.cpp:74:30:74:30 | c | 0 | -| test.cpp:74:34:74:34 | c | 0 | -| test.cpp:75:22:75:30 | c_times_2 | 0 | -| test.cpp:77:5:77:13 | c_times_2 | 0 | -| test.cpp:79:3:79:11 | c_times_2 | 0 | -| test.cpp:83:16:83:22 | aliased | -2147483648 | -| test.cpp:85:7:85:7 | i | -2147483648 | -| test.cpp:86:12:86:12 | i | 2 | -| test.cpp:88:7:88:8 | ci | -2147483648 | -| test.cpp:89:12:89:13 | ci | 2 | -| test.cpp:91:7:91:13 | aliased | -2147483648 | -| test.cpp:92:12:92:18 | aliased | -2147483648 | -| test.cpp:94:7:94:11 | alias | -2147483648 | -| test.cpp:95:12:95:16 | alias | -2147483648 | -| test.cpp:97:10:97:10 | i | -2147483648 | -| test.cpp:97:22:97:22 | i | -2147483648 | -| test.cpp:98:5:98:5 | i | -2147483648 | -| test.cpp:98:9:98:9 | i | -2147483648 | -| test.cpp:99:5:99:5 | i | -2147483648 | -| test.cpp:106:7:106:7 | n | -32768 | -| test.cpp:109:7:109:7 | n | 0 | -| test.cpp:110:5:110:5 | n | 1 | -| test.cpp:112:5:112:5 | n | 0 | -| test.cpp:115:8:115:8 | n | 0 | -| test.cpp:116:5:116:5 | n | 0 | -| test.cpp:118:5:118:5 | n | 1 | -| test.cpp:121:3:121:3 | n | 0 | -| test.cpp:121:8:121:8 | n | 1 | -| test.cpp:121:12:121:12 | n | 0 | -| test.cpp:122:4:122:4 | n | 0 | -| test.cpp:122:8:122:8 | n | 0 | -| test.cpp:122:12:122:12 | n | 1 | +Timeout (5m0s) in SimpleRangeAnalysis::getBounds/2#ad6ae182 etc diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp index a6f642e8870d..4c78d719053f 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp @@ -44,29 +44,29 @@ MY_ENUM_FLAGS check_and_subs(MY_ENUM_FLAGS x) CHECK_AND_SUB(E); CHECK_AND_SUB(F); CHECK_AND_SUB(G); - // CHECK_AND_SUB(H); - // CHECK_AND_SUB(I); - // CHECK_AND_SUB(J); - // CHECK_AND_SUB(L); - // CHECK_AND_SUB(M); - // CHECK_AND_SUB(N); - // CHECK_AND_SUB(O); - // CHECK_AND_SUB(P); - // CHECK_AND_SUB(Q); - // CHECK_AND_SUB(R); - // CHECK_AND_SUB(S); - // CHECK_AND_SUB(T); - // CHECK_AND_SUB(U); - // CHECK_AND_SUB(V); - // CHECK_AND_SUB(W); - // CHECK_AND_SUB(X); - // CHECK_AND_SUB(Y); - // CHECK_AND_SUB(Z); - // CHECK_AND_SUB(AA); - // CHECK_AND_SUB(AB); - // CHECK_AND_SUB(AC); - // CHECK_AND_SUB(AD); - // CHECK_AND_SUB(AE); + CHECK_AND_SUB(H); + CHECK_AND_SUB(I); + CHECK_AND_SUB(J); + CHECK_AND_SUB(L); + CHECK_AND_SUB(M); + CHECK_AND_SUB(N); + CHECK_AND_SUB(O); + CHECK_AND_SUB(P); + CHECK_AND_SUB(Q); + CHECK_AND_SUB(R); + CHECK_AND_SUB(S); + CHECK_AND_SUB(T); + CHECK_AND_SUB(U); + CHECK_AND_SUB(V); + CHECK_AND_SUB(W); + CHECK_AND_SUB(X); + CHECK_AND_SUB(Y); + CHECK_AND_SUB(Z); + CHECK_AND_SUB(AA); + CHECK_AND_SUB(AB); + CHECK_AND_SUB(AC); + CHECK_AND_SUB(AD); + CHECK_AND_SUB(AE); #undef CHECK_AND_SUB return x; diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected index 08b2995845a7..8a02673e988a 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected @@ -151,7 +151,283 @@ estimateNrOfBounds | missing_bounds.cpp:46:19:46:19 | G | 1.0 | | missing_bounds.cpp:46:19:46:19 | G | 1.0 | | missing_bounds.cpp:46:19:46:19 | G | 1.0 | -| missing_bounds.cpp:72:12:72:12 | x | 128.0 | +| missing_bounds.cpp:47:5:47:19 | ... & ... | 128.0 | +| missing_bounds.cpp:47:5:47:19 | ... -= ... | 128.0 | +| missing_bounds.cpp:47:5:47:19 | ... == ... | 1.0 | +| missing_bounds.cpp:47:5:47:20 | (...) | 128.0 | +| missing_bounds.cpp:47:5:47:20 | x | 128.0 | +| missing_bounds.cpp:47:5:47:20 | x | 128.0 | +| missing_bounds.cpp:47:19:47:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:47:19:47:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:47:19:47:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:47:19:47:19 | H | 1.0 | +| missing_bounds.cpp:47:19:47:19 | H | 1.0 | +| missing_bounds.cpp:47:19:47:19 | H | 1.0 | +| missing_bounds.cpp:48:5:48:19 | ... & ... | 256.0 | +| missing_bounds.cpp:48:5:48:19 | ... -= ... | 256.0 | +| missing_bounds.cpp:48:5:48:19 | ... == ... | 1.0 | +| missing_bounds.cpp:48:5:48:20 | (...) | 256.0 | +| missing_bounds.cpp:48:5:48:20 | x | 256.0 | +| missing_bounds.cpp:48:5:48:20 | x | 256.0 | +| missing_bounds.cpp:48:19:48:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:48:19:48:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:48:19:48:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:48:19:48:19 | I | 1.0 | +| missing_bounds.cpp:48:19:48:19 | I | 1.0 | +| missing_bounds.cpp:48:19:48:19 | I | 1.0 | +| missing_bounds.cpp:49:5:49:19 | ... & ... | 512.0 | +| missing_bounds.cpp:49:5:49:19 | ... -= ... | 512.0 | +| missing_bounds.cpp:49:5:49:19 | ... == ... | 1.0 | +| missing_bounds.cpp:49:5:49:20 | (...) | 512.0 | +| missing_bounds.cpp:49:5:49:20 | x | 512.0 | +| missing_bounds.cpp:49:5:49:20 | x | 512.0 | +| missing_bounds.cpp:49:19:49:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:49:19:49:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:49:19:49:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:49:19:49:19 | J | 1.0 | +| missing_bounds.cpp:49:19:49:19 | J | 1.0 | +| missing_bounds.cpp:49:19:49:19 | J | 1.0 | +| missing_bounds.cpp:50:5:50:19 | ... & ... | 1024.0 | +| missing_bounds.cpp:50:5:50:19 | ... -= ... | 1024.0 | +| missing_bounds.cpp:50:5:50:19 | ... == ... | 1.0 | +| missing_bounds.cpp:50:5:50:20 | (...) | 1024.0 | +| missing_bounds.cpp:50:5:50:20 | x | 1024.0 | +| missing_bounds.cpp:50:5:50:20 | x | 1024.0 | +| missing_bounds.cpp:50:19:50:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:50:19:50:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:50:19:50:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:50:19:50:19 | L | 1.0 | +| missing_bounds.cpp:50:19:50:19 | L | 1.0 | +| missing_bounds.cpp:50:19:50:19 | L | 1.0 | +| missing_bounds.cpp:51:5:51:19 | ... & ... | 2048.0 | +| missing_bounds.cpp:51:5:51:19 | ... -= ... | 2048.0 | +| missing_bounds.cpp:51:5:51:19 | ... == ... | 1.0 | +| missing_bounds.cpp:51:5:51:20 | (...) | 2048.0 | +| missing_bounds.cpp:51:5:51:20 | x | 2048.0 | +| missing_bounds.cpp:51:5:51:20 | x | 2048.0 | +| missing_bounds.cpp:51:19:51:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:51:19:51:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:51:19:51:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:51:19:51:19 | M | 1.0 | +| missing_bounds.cpp:51:19:51:19 | M | 1.0 | +| missing_bounds.cpp:51:19:51:19 | M | 1.0 | +| missing_bounds.cpp:52:5:52:19 | ... & ... | 4096.0 | +| missing_bounds.cpp:52:5:52:19 | ... -= ... | 4096.0 | +| missing_bounds.cpp:52:5:52:19 | ... == ... | 1.0 | +| missing_bounds.cpp:52:5:52:20 | (...) | 4096.0 | +| missing_bounds.cpp:52:5:52:20 | x | 4096.0 | +| missing_bounds.cpp:52:5:52:20 | x | 4096.0 | +| missing_bounds.cpp:52:19:52:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:52:19:52:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:52:19:52:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:52:19:52:19 | N | 1.0 | +| missing_bounds.cpp:52:19:52:19 | N | 1.0 | +| missing_bounds.cpp:52:19:52:19 | N | 1.0 | +| missing_bounds.cpp:53:5:53:19 | ... & ... | 8192.0 | +| missing_bounds.cpp:53:5:53:19 | ... -= ... | 8192.0 | +| missing_bounds.cpp:53:5:53:19 | ... == ... | 1.0 | +| missing_bounds.cpp:53:5:53:20 | (...) | 8192.0 | +| missing_bounds.cpp:53:5:53:20 | x | 8192.0 | +| missing_bounds.cpp:53:5:53:20 | x | 8192.0 | +| missing_bounds.cpp:53:19:53:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:53:19:53:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:53:19:53:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:53:19:53:19 | O | 1.0 | +| missing_bounds.cpp:53:19:53:19 | O | 1.0 | +| missing_bounds.cpp:53:19:53:19 | O | 1.0 | +| missing_bounds.cpp:54:5:54:19 | ... & ... | 16384.0 | +| missing_bounds.cpp:54:5:54:19 | ... -= ... | 16384.0 | +| missing_bounds.cpp:54:5:54:19 | ... == ... | 1.0 | +| missing_bounds.cpp:54:5:54:20 | (...) | 16384.0 | +| missing_bounds.cpp:54:5:54:20 | x | 16384.0 | +| missing_bounds.cpp:54:5:54:20 | x | 16384.0 | +| missing_bounds.cpp:54:19:54:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:54:19:54:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:54:19:54:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:54:19:54:19 | P | 1.0 | +| missing_bounds.cpp:54:19:54:19 | P | 1.0 | +| missing_bounds.cpp:54:19:54:19 | P | 1.0 | +| missing_bounds.cpp:55:5:55:19 | ... & ... | 32768.0 | +| missing_bounds.cpp:55:5:55:19 | ... -= ... | 32768.0 | +| missing_bounds.cpp:55:5:55:19 | ... == ... | 1.0 | +| missing_bounds.cpp:55:5:55:20 | (...) | 32768.0 | +| missing_bounds.cpp:55:5:55:20 | x | 32768.0 | +| missing_bounds.cpp:55:5:55:20 | x | 32768.0 | +| missing_bounds.cpp:55:19:55:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:55:19:55:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:55:19:55:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:55:19:55:19 | Q | 1.0 | +| missing_bounds.cpp:55:19:55:19 | Q | 1.0 | +| missing_bounds.cpp:55:19:55:19 | Q | 1.0 | +| missing_bounds.cpp:56:5:56:19 | ... & ... | 65536.0 | +| missing_bounds.cpp:56:5:56:19 | ... -= ... | 65536.0 | +| missing_bounds.cpp:56:5:56:19 | ... == ... | 1.0 | +| missing_bounds.cpp:56:5:56:20 | (...) | 65536.0 | +| missing_bounds.cpp:56:5:56:20 | x | 65536.0 | +| missing_bounds.cpp:56:5:56:20 | x | 65536.0 | +| missing_bounds.cpp:56:19:56:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:56:19:56:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:56:19:56:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:56:19:56:19 | R | 1.0 | +| missing_bounds.cpp:56:19:56:19 | R | 1.0 | +| missing_bounds.cpp:56:19:56:19 | R | 1.0 | +| missing_bounds.cpp:57:5:57:19 | ... & ... | 131072.0 | +| missing_bounds.cpp:57:5:57:19 | ... -= ... | 131072.0 | +| missing_bounds.cpp:57:5:57:19 | ... == ... | 1.0 | +| missing_bounds.cpp:57:5:57:20 | (...) | 131072.0 | +| missing_bounds.cpp:57:5:57:20 | x | 131072.0 | +| missing_bounds.cpp:57:5:57:20 | x | 131072.0 | +| missing_bounds.cpp:57:19:57:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:57:19:57:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:57:19:57:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:57:19:57:19 | S | 1.0 | +| missing_bounds.cpp:57:19:57:19 | S | 1.0 | +| missing_bounds.cpp:57:19:57:19 | S | 1.0 | +| missing_bounds.cpp:58:5:58:19 | ... & ... | 262144.0 | +| missing_bounds.cpp:58:5:58:19 | ... -= ... | 262144.0 | +| missing_bounds.cpp:58:5:58:19 | ... == ... | 1.0 | +| missing_bounds.cpp:58:5:58:20 | (...) | 262144.0 | +| missing_bounds.cpp:58:5:58:20 | x | 262144.0 | +| missing_bounds.cpp:58:5:58:20 | x | 262144.0 | +| missing_bounds.cpp:58:19:58:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:58:19:58:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:58:19:58:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:58:19:58:19 | T | 1.0 | +| missing_bounds.cpp:58:19:58:19 | T | 1.0 | +| missing_bounds.cpp:58:19:58:19 | T | 1.0 | +| missing_bounds.cpp:59:5:59:19 | ... & ... | 524288.0 | +| missing_bounds.cpp:59:5:59:19 | ... -= ... | 524288.0 | +| missing_bounds.cpp:59:5:59:19 | ... == ... | 1.0 | +| missing_bounds.cpp:59:5:59:20 | (...) | 524288.0 | +| missing_bounds.cpp:59:5:59:20 | x | 524288.0 | +| missing_bounds.cpp:59:5:59:20 | x | 524288.0 | +| missing_bounds.cpp:59:19:59:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:59:19:59:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:59:19:59:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:59:19:59:19 | U | 1.0 | +| missing_bounds.cpp:59:19:59:19 | U | 1.0 | +| missing_bounds.cpp:59:19:59:19 | U | 1.0 | +| missing_bounds.cpp:60:5:60:19 | ... & ... | 1048576.0 | +| missing_bounds.cpp:60:5:60:19 | ... -= ... | 1048576.0 | +| missing_bounds.cpp:60:5:60:19 | ... == ... | 1.0 | +| missing_bounds.cpp:60:5:60:20 | (...) | 1048576.0 | +| missing_bounds.cpp:60:5:60:20 | x | 1048576.0 | +| missing_bounds.cpp:60:5:60:20 | x | 1048576.0 | +| missing_bounds.cpp:60:19:60:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:60:19:60:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:60:19:60:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:60:19:60:19 | V | 1.0 | +| missing_bounds.cpp:60:19:60:19 | V | 1.0 | +| missing_bounds.cpp:60:19:60:19 | V | 1.0 | +| missing_bounds.cpp:61:5:61:19 | ... & ... | 2097152.0 | +| missing_bounds.cpp:61:5:61:19 | ... -= ... | 2097152.0 | +| missing_bounds.cpp:61:5:61:19 | ... == ... | 1.0 | +| missing_bounds.cpp:61:5:61:20 | (...) | 2097152.0 | +| missing_bounds.cpp:61:5:61:20 | x | 2097152.0 | +| missing_bounds.cpp:61:5:61:20 | x | 2097152.0 | +| missing_bounds.cpp:61:19:61:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:61:19:61:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:61:19:61:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:61:19:61:19 | W | 1.0 | +| missing_bounds.cpp:61:19:61:19 | W | 1.0 | +| missing_bounds.cpp:61:19:61:19 | W | 1.0 | +| missing_bounds.cpp:62:5:62:19 | ... & ... | 4194304.0 | +| missing_bounds.cpp:62:5:62:19 | ... -= ... | 4194304.0 | +| missing_bounds.cpp:62:5:62:19 | ... == ... | 1.0 | +| missing_bounds.cpp:62:5:62:20 | (...) | 4194304.0 | +| missing_bounds.cpp:62:5:62:20 | x | 4194304.0 | +| missing_bounds.cpp:62:5:62:20 | x | 4194304.0 | +| missing_bounds.cpp:62:19:62:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:62:19:62:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:62:19:62:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:62:19:62:19 | X | 1.0 | +| missing_bounds.cpp:62:19:62:19 | X | 1.0 | +| missing_bounds.cpp:62:19:62:19 | X | 1.0 | +| missing_bounds.cpp:63:5:63:19 | ... & ... | 8388608.0 | +| missing_bounds.cpp:63:5:63:19 | ... -= ... | 8388608.0 | +| missing_bounds.cpp:63:5:63:19 | ... == ... | 1.0 | +| missing_bounds.cpp:63:5:63:20 | (...) | 8388608.0 | +| missing_bounds.cpp:63:5:63:20 | x | 8388608.0 | +| missing_bounds.cpp:63:5:63:20 | x | 8388608.0 | +| missing_bounds.cpp:63:19:63:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:63:19:63:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:63:19:63:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:63:19:63:19 | Y | 1.0 | +| missing_bounds.cpp:63:19:63:19 | Y | 1.0 | +| missing_bounds.cpp:63:19:63:19 | Y | 1.0 | +| missing_bounds.cpp:64:5:64:19 | ... & ... | 1.6777216E7 | +| missing_bounds.cpp:64:5:64:19 | ... -= ... | 1.6777216E7 | +| missing_bounds.cpp:64:5:64:19 | ... == ... | 1.0 | +| missing_bounds.cpp:64:5:64:20 | (...) | 1.6777216E7 | +| missing_bounds.cpp:64:5:64:20 | x | 1.6777216E7 | +| missing_bounds.cpp:64:5:64:20 | x | 1.6777216E7 | +| missing_bounds.cpp:64:19:64:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:64:19:64:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:64:19:64:19 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:64:19:64:19 | Z | 1.0 | +| missing_bounds.cpp:64:19:64:19 | Z | 1.0 | +| missing_bounds.cpp:64:19:64:19 | Z | 1.0 | +| missing_bounds.cpp:65:5:65:20 | ... & ... | 3.3554432E7 | +| missing_bounds.cpp:65:5:65:20 | ... -= ... | 3.3554432E7 | +| missing_bounds.cpp:65:5:65:20 | ... == ... | 1.0 | +| missing_bounds.cpp:65:5:65:21 | (...) | 3.3554432E7 | +| missing_bounds.cpp:65:5:65:21 | x | 3.3554432E7 | +| missing_bounds.cpp:65:5:65:21 | x | 3.3554432E7 | +| missing_bounds.cpp:65:19:65:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:65:19:65:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:65:19:65:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:65:19:65:20 | AA | 1.0 | +| missing_bounds.cpp:65:19:65:20 | AA | 1.0 | +| missing_bounds.cpp:65:19:65:20 | AA | 1.0 | +| missing_bounds.cpp:66:5:66:20 | ... & ... | 6.7108864E7 | +| missing_bounds.cpp:66:5:66:20 | ... -= ... | 6.7108864E7 | +| missing_bounds.cpp:66:5:66:20 | ... == ... | 1.0 | +| missing_bounds.cpp:66:5:66:21 | (...) | 6.7108864E7 | +| missing_bounds.cpp:66:5:66:21 | x | 6.7108864E7 | +| missing_bounds.cpp:66:5:66:21 | x | 6.7108864E7 | +| missing_bounds.cpp:66:19:66:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:66:19:66:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:66:19:66:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:66:19:66:20 | AB | 1.0 | +| missing_bounds.cpp:66:19:66:20 | AB | 1.0 | +| missing_bounds.cpp:66:19:66:20 | AB | 1.0 | +| missing_bounds.cpp:67:5:67:20 | ... & ... | 1.34217728E8 | +| missing_bounds.cpp:67:5:67:20 | ... -= ... | 1.34217728E8 | +| missing_bounds.cpp:67:5:67:20 | ... == ... | 1.0 | +| missing_bounds.cpp:67:5:67:21 | (...) | 1.34217728E8 | +| missing_bounds.cpp:67:5:67:21 | x | 1.34217728E8 | +| missing_bounds.cpp:67:5:67:21 | x | 1.34217728E8 | +| missing_bounds.cpp:67:19:67:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:67:19:67:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:67:19:67:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:67:19:67:20 | AC | 1.0 | +| missing_bounds.cpp:67:19:67:20 | AC | 1.0 | +| missing_bounds.cpp:67:19:67:20 | AC | 1.0 | +| missing_bounds.cpp:68:5:68:20 | ... & ... | 2.68435456E8 | +| missing_bounds.cpp:68:5:68:20 | ... -= ... | 2.68435456E8 | +| missing_bounds.cpp:68:5:68:20 | ... == ... | 1.0 | +| missing_bounds.cpp:68:5:68:21 | (...) | 2.68435456E8 | +| missing_bounds.cpp:68:5:68:21 | x | 2.68435456E8 | +| missing_bounds.cpp:68:5:68:21 | x | 2.68435456E8 | +| missing_bounds.cpp:68:19:68:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:68:19:68:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:68:19:68:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:68:19:68:20 | AD | 1.0 | +| missing_bounds.cpp:68:19:68:20 | AD | 1.0 | +| missing_bounds.cpp:68:19:68:20 | AD | 1.0 | +| missing_bounds.cpp:69:5:69:20 | ... & ... | 5.36870912E8 | +| missing_bounds.cpp:69:5:69:20 | ... -= ... | 5.36870912E8 | +| missing_bounds.cpp:69:5:69:20 | ... == ... | 1.0 | +| missing_bounds.cpp:69:5:69:21 | (...) | 5.36870912E8 | +| missing_bounds.cpp:69:5:69:21 | x | 5.36870912E8 | +| missing_bounds.cpp:69:5:69:21 | x | 5.36870912E8 | +| missing_bounds.cpp:69:19:69:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:69:19:69:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:69:19:69:20 | (unsigned int)... | 1.0 | +| missing_bounds.cpp:69:19:69:20 | AE | 1.0 | +| missing_bounds.cpp:69:19:69:20 | AE | 1.0 | +| missing_bounds.cpp:69:19:69:20 | AE | 1.0 | +| missing_bounds.cpp:72:12:72:12 | x | 1.073741824E9 | | test.c:6:14:6:15 | 0 | 1.0 | | test.c:8:5:8:9 | count | 1.0 | | test.c:8:5:8:19 | ... = ... | 13.0 | diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryLower.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryLower.expected index 50b65d84bf32..5673f0fdd303 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryLower.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryLower.expected @@ -1,153 +1 @@ -| test.c:154:10:154:40 | ... ? ... : ... | -1.0 | 1.0 | -1.0 | -| test.c:348:22:348:44 | ... ? ... : ... | 0.0 | 0.0 | 2.0 | -| test.c:349:20:349:43 | ... ? ... : ... | 0.0 | 0.0 | 2.0 | -| test.c:350:22:350:44 | ... ? ... : ... | 0.0 | 0.0 | 2.0 | -| test.c:351:22:351:44 | ... ? ... : ... | 0.0 | 0.0 | 2.0 | -| test.c:352:22:352:45 | ... ? ... : ... | 2.0 | 8.0 | 2.0 | -| test.c:378:8:378:23 | ... ? ... : ... | 0.0 | 0.0 | 10.0 | -| test.c:379:8:379:24 | ... ? ... : ... | 0.0 | 10.0 | 0.0 | -| test.c:387:10:387:15 | ... ? ... : ... | 0.0 | 0.0 | 5.0 | -| test.c:388:10:388:17 | ... ? ... : ... | 0.0 | 0.0 | 500.0 | -| test.c:389:10:389:21 | ... ? ... : ... | 1.0 | 1.0 | 500.0 | -| test.c:390:10:390:36 | ... ? ... : ... | 0.0 | 1.0 | 5.0 | -| test.c:391:10:391:38 | ... ? ... : ... | 0.0 | 1.0 | 500.0 | -| test.c:392:10:392:39 | ... ? ... : ... | 1.0 | 1.0 | 500.0 | -| test.c:400:8:400:24 | ... ? ... : ... | 101.0 | 101.0 | 110.0 | -| test.c:401:8:401:25 | ... ? ... : ... | 101.0 | 110.0 | 101.0 | -| test.c:406:10:406:21 | ... ? ... : ... | 0.0 | 0.0 | 5.0 | -| test.c:407:10:407:21 | ... ? ... : ... | 100.0 | 100.0 | 5.0 | -| test.c:408:10:408:38 | ... ? ... : ... | 0.0 | 100.0 | 5.0 | -| test.c:415:14:415:108 | ... ? ... : ... | 0.14333887 | 0.14333887 | 0.40496805 | -| test.c:415:18:415:95 | ... ? ... : ... | 0.14333887 | 0.14333887 | 0.21540225 | -| test.c:415:22:415:82 | ... ? ... : ... | 0.14333887 | 0.14333887 | 0.39206458 | -| test.c:415:26:415:69 | ... ? ... : ... | 0.14333887 | 0.14333887 | 0.35279203 | -| test.c:415:30:415:56 | ... ? ... : ... | 0.14333887 | 0.47438827 | 0.14333887 | -| test.c:416:14:416:108 | ... ? ... : ... | 0.22247853 | 0.22247853 | 0.5297741 | -| test.c:416:18:416:95 | ... ? ... : ... | 0.22247853 | 0.22247853 | 0.59270465 | -| test.c:416:22:416:82 | ... ? ... : ... | 0.22247853 | 0.22247853 | 0.32661893 | -| test.c:416:26:416:69 | ... ? ... : ... | 0.22247853 | 0.34183348 | 0.22247853 | -| test.c:416:30:416:56 | ... ? ... : ... | 0.34183348 | 0.34183348 | 0.3533464 | -| test.c:417:14:417:108 | ... ? ... : ... | 0.05121256 | 0.05121256 | 0.67981451 | -| test.c:417:18:417:95 | ... ? ... : ... | 0.05121256 | 0.05121256 | 0.79310745 | -| test.c:417:22:417:82 | ... ? ... : ... | 0.05121256 | 0.31235514 | 0.05121256 | -| test.c:417:26:417:69 | ... ? ... : ... | 0.31235514 | 0.31478084 | 0.31235514 | -| test.c:417:30:417:56 | ... ? ... : ... | 0.31478084 | 0.77429603 | 0.31478084 | -| test.c:418:14:418:108 | ... ? ... : ... | 0.36976948 | 0.36976948 | 0.83866835 | -| test.c:418:18:418:95 | ... ? ... : ... | 0.36976948 | 0.44729556 | 0.36976948 | -| test.c:418:22:418:82 | ... ? ... : ... | 0.44729556 | 0.44729556 | 0.59952732 | -| test.c:418:26:418:69 | ... ? ... : ... | 0.44729556 | 0.44729556 | 0.98997262 | -| test.c:418:30:418:56 | ... ? ... : ... | 0.44729556 | 0.44729556 | 0.80599202 | -| test.c:419:14:419:108 | ... ? ... : ... | 0.10597712 | 0.10597712 | 0.68734874 | -| test.c:419:18:419:95 | ... ? ... : ... | 0.10597712 | 0.10597712 | 0.72485966 | -| test.c:419:22:419:82 | ... ? ... : ... | 0.10597712 | 0.10597712 | 0.21778426 | -| test.c:419:26:419:69 | ... ? ... : ... | 0.10597712 | 0.49311828 | 0.10597712 | -| test.c:419:30:419:56 | ... ? ... : ... | 0.49311828 | 0.49311828 | 0.90389911 | -| test.c:420:14:420:108 | ... ? ... : ... | 0.1078665 | 0.1078665 | 0.58440865 | -| test.c:420:18:420:95 | ... ? ... : ... | 0.1078665 | 0.1078665 | 0.34808892 | -| test.c:420:22:420:82 | ... ? ... : ... | 0.1078665 | 0.1078665 | 0.76164052 | -| test.c:420:26:420:69 | ... ? ... : ... | 0.1078665 | 0.1078665 | 0.11884576 | -| test.c:420:30:420:56 | ... ? ... : ... | 0.1078665 | 0.47452848 | 0.1078665 | -| test.c:421:14:421:108 | ... ? ... : ... | 0.02524326 | 0.02524326 | 0.36232384 | -| test.c:421:18:421:95 | ... ? ... : ... | 0.02524326 | 0.02524326 | 0.85235179 | -| test.c:421:22:421:82 | ... ? ... : ... | 0.02524326 | 0.02524326 | 0.12516558 | -| test.c:421:26:421:69 | ... ? ... : ... | 0.02524326 | 0.02524326 | 0.95823075 | -| test.c:421:30:421:56 | ... ? ... : ... | 0.02524326 | 0.02524326 | 0.82905046 | -| test.c:422:14:422:108 | ... ? ... : ... | 0.14963485 | 0.14963485 | 0.84331272 | -| test.c:422:18:422:95 | ... ? ... : ... | 0.14963485 | 0.14963485 | 0.48640909 | -| test.c:422:22:422:82 | ... ? ... : ... | 0.14963485 | 0.14963485 | 0.45041108 | -| test.c:422:26:422:69 | ... ? ... : ... | 0.14963485 | 0.32876044 | 0.14963485 | -| test.c:422:30:422:56 | ... ? ... : ... | 0.32876044 | 0.38708626 | 0.32876044 | -| test.c:423:14:423:108 | ... ? ... : ... | 0.05328182 | 0.14800508 | 0.05328182 | -| test.c:423:18:423:95 | ... ? ... : ... | 0.14800508 | 0.14800508 | 0.37428143 | -| test.c:423:22:423:82 | ... ? ... : ... | 0.14800508 | 0.15755063 | 0.14800508 | -| test.c:423:26:423:69 | ... ? ... : ... | 0.15755063 | 0.15755063 | 0.26428481 | -| test.c:423:30:423:56 | ... ? ... : ... | 0.15755063 | 0.15755063 | 0.77086833 | -| test.c:424:14:424:108 | ... ? ... : ... | 0.27643238 | 0.27643238 | 0.69072144 | -| test.c:424:18:424:95 | ... ? ... : ... | 0.27643238 | 0.27643238 | 0.39468857 | -| test.c:424:22:424:82 | ... ? ... : ... | 0.27643238 | 0.27643238 | 0.55679274 | -| test.c:424:26:424:69 | ... ? ... : ... | 0.27643238 | 0.41736536 | 0.27643238 | -| test.c:424:30:424:56 | ... ? ... : ... | 0.41736536 | 0.41736536 | 0.76826628 | -| test.c:425:14:425:108 | ... ? ... : ... | 0.2051911 | 0.2051911 | 0.81372798 | -| test.c:425:18:425:95 | ... ? ... : ... | 0.2051911 | 0.2051911 | 0.88745559 | -| test.c:425:22:425:82 | ... ? ... : ... | 0.2051911 | 0.29904824 | 0.2051911 | -| test.c:425:26:425:69 | ... ? ... : ... | 0.29904824 | 0.29904824 | 0.76242583 | -| test.c:425:30:425:56 | ... ? ... : ... | 0.29904824 | 0.88955345 | 0.29904824 | -| test.c:426:14:426:108 | ... ? ... : ... | 0.13204114 | 0.13204114 | 0.42762647 | -| test.c:426:18:426:95 | ... ? ... : ... | 0.13204114 | 0.13204114 | 0.52031241 | -| test.c:426:22:426:82 | ... ? ... : ... | 0.13204114 | 0.42186276 | 0.13204114 | -| test.c:426:26:426:69 | ... ? ... : ... | 0.42186276 | 0.42186276 | 0.44996679 | -| test.c:426:30:426:56 | ... ? ... : ... | 0.42186276 | 0.42186276 | 0.53843358 | -| test.c:468:4:642:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:468:5:470:49 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:471:6:553:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:472:8:490:41 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:475:10:479:21 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:475:31:475:79 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:477:13:479:21 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:484:12:489:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:485:12:485:60 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:487:15:489:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:491:6:510:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:494:8:498:19 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:494:29:494:77 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:496:11:498:19 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:499:6:499:54 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:503:10:507:21 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:503:31:503:79 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:505:13:507:21 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:508:9:510:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:512:10:531:43 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:515:12:520:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:516:12:516:60 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:518:15:520:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:525:14:530:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:526:14:526:62 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:528:17:530:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:532:9:553:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:535:14:540:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:536:14:536:62 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:538:17:540:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:541:12:541:60 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:545:12:550:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:546:12:546:60 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:548:15:550:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:551:11:553:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:554:9:556:51 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:557:9:642:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:558:14:577:47 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:561:16:566:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:562:16:562:64 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:564:19:566:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:571:18:576:29 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:572:18:572:66 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:574:21:576:29 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:578:12:599:29 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:581:14:586:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:582:14:582:62 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:584:17:586:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:587:12:587:60 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:591:16:596:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:592:16:592:64 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:594:19:596:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:597:15:599:29 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:601:12:620:45 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:604:14:609:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:605:14:605:62 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:607:17:609:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:614:16:619:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:615:16:615:64 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:617:19:619:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:621:11:642:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:624:16:629:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:625:16:625:64 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:627:19:629:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:630:14:630:62 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:634:14:639:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:635:14:635:62 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:637:17:639:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:640:13:642:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | -| test.c:668:20:668:36 | ... ? ... : ... | 0.0 | 0.0 | 100.0 | -| test.c:880:5:880:14 | ... ? ... : ... | 0.0 | 1.0 | 0.0 | -| test.c:881:5:881:14 | ... ? ... : ... | 0.0 | 0.0 | 1.0 | -| test.cpp:121:3:121:12 | ... ? ... : ... | 0.0 | 1.0 | 0.0 | -| test.cpp:122:3:122:12 | ... ? ... : ... | 0.0 | 0.0 | 1.0 | +Timeout (5m0s) in SimpleRangeAnalysis::getBounds/2#ad6ae182 etc diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryUpper.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryUpper.expected index 3b3a00df6b9c..5673f0fdd303 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryUpper.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryUpper.expected @@ -1,153 +1 @@ -| test.c:154:10:154:40 | ... ? ... : ... | 2.147483647E9 | 2.147483647E9 | -1.0 | -| test.c:348:22:348:44 | ... ? ... : ... | 2.147483647E9 | 2.147483647E9 | 2.0 | -| test.c:349:20:349:43 | ... ? ... : ... | 2.147483647E9 | 2.147483647E9 | 2.0 | -| test.c:350:22:350:44 | ... ? ... : ... | 1.431655764E9 | 1.431655764E9 | 2.0 | -| test.c:351:22:351:44 | ... ? ... : ... | 2.147483647E9 | 2.147483647E9 | 2.0 | -| test.c:352:22:352:45 | ... ? ... : ... | 2.147483647E9 | 2.147483647E9 | 2.0 | -| test.c:378:8:378:23 | ... ? ... : ... | 99.0 | 99.0 | 10.0 | -| test.c:379:8:379:24 | ... ? ... : ... | 99.0 | 10.0 | 99.0 | -| test.c:387:10:387:15 | ... ? ... : ... | 299.0 | 299.0 | 5.0 | -| test.c:388:10:388:17 | ... ? ... : ... | 500.0 | 299.0 | 500.0 | -| test.c:389:10:389:21 | ... ? ... : ... | 300.0 | 300.0 | 500.0 | -| test.c:390:10:390:36 | ... ? ... : ... | 255.0 | 300.0 | 5.0 | -| test.c:391:10:391:38 | ... ? ... : ... | 500.0 | 300.0 | 500.0 | -| test.c:392:10:392:39 | ... ? ... : ... | 300.0 | 300.0 | 500.0 | -| test.c:400:8:400:24 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 110.0 | -| test.c:401:8:401:25 | ... ? ... : ... | 4.294967295E9 | 110.0 | 4.294967295E9 | -| test.c:406:10:406:21 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 5.0 | -| test.c:407:10:407:21 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 5.0 | -| test.c:408:10:408:38 | ... ? ... : ... | 255.0 | 4.294967295E9 | 5.0 | -| test.c:415:14:415:108 | ... ? ... : ... | 0.47438827 | 0.47438827 | 0.40496805 | -| test.c:415:18:415:95 | ... ? ... : ... | 0.47438827 | 0.47438827 | 0.21540225 | -| test.c:415:22:415:82 | ... ? ... : ... | 0.47438827 | 0.47438827 | 0.39206458 | -| test.c:415:26:415:69 | ... ? ... : ... | 0.47438827 | 0.47438827 | 0.35279203 | -| test.c:415:30:415:56 | ... ? ... : ... | 0.47438827 | 0.47438827 | 0.14333887 | -| test.c:416:14:416:108 | ... ? ... : ... | 0.59270465 | 0.59270465 | 0.5297741 | -| test.c:416:18:416:95 | ... ? ... : ... | 0.59270465 | 0.3533464 | 0.59270465 | -| test.c:416:22:416:82 | ... ? ... : ... | 0.3533464 | 0.3533464 | 0.32661893 | -| test.c:416:26:416:69 | ... ? ... : ... | 0.3533464 | 0.3533464 | 0.22247853 | -| test.c:416:30:416:56 | ... ? ... : ... | 0.3533464 | 0.34183348 | 0.3533464 | -| test.c:417:14:417:108 | ... ? ... : ... | 0.79310745 | 0.79310745 | 0.67981451 | -| test.c:417:18:417:95 | ... ? ... : ... | 0.79310745 | 0.77429603 | 0.79310745 | -| test.c:417:22:417:82 | ... ? ... : ... | 0.77429603 | 0.77429603 | 0.05121256 | -| test.c:417:26:417:69 | ... ? ... : ... | 0.77429603 | 0.77429603 | 0.31235514 | -| test.c:417:30:417:56 | ... ? ... : ... | 0.77429603 | 0.77429603 | 0.31478084 | -| test.c:418:14:418:108 | ... ? ... : ... | 0.98997262 | 0.98997262 | 0.83866835 | -| test.c:418:18:418:95 | ... ? ... : ... | 0.98997262 | 0.98997262 | 0.36976948 | -| test.c:418:22:418:82 | ... ? ... : ... | 0.98997262 | 0.98997262 | 0.59952732 | -| test.c:418:26:418:69 | ... ? ... : ... | 0.98997262 | 0.80599202 | 0.98997262 | -| test.c:418:30:418:56 | ... ? ... : ... | 0.80599202 | 0.44729556 | 0.80599202 | -| test.c:419:14:419:108 | ... ? ... : ... | 0.90389911 | 0.90389911 | 0.68734874 | -| test.c:419:18:419:95 | ... ? ... : ... | 0.90389911 | 0.90389911 | 0.72485966 | -| test.c:419:22:419:82 | ... ? ... : ... | 0.90389911 | 0.90389911 | 0.21778426 | -| test.c:419:26:419:69 | ... ? ... : ... | 0.90389911 | 0.90389911 | 0.10597712 | -| test.c:419:30:419:56 | ... ? ... : ... | 0.90389911 | 0.49311828 | 0.90389911 | -| test.c:420:14:420:108 | ... ? ... : ... | 0.76164052 | 0.76164052 | 0.58440865 | -| test.c:420:18:420:95 | ... ? ... : ... | 0.76164052 | 0.76164052 | 0.34808892 | -| test.c:420:22:420:82 | ... ? ... : ... | 0.76164052 | 0.47452848 | 0.76164052 | -| test.c:420:26:420:69 | ... ? ... : ... | 0.47452848 | 0.47452848 | 0.11884576 | -| test.c:420:30:420:56 | ... ? ... : ... | 0.47452848 | 0.47452848 | 0.1078665 | -| test.c:421:14:421:108 | ... ? ... : ... | 0.95823075 | 0.95823075 | 0.36232384 | -| test.c:421:18:421:95 | ... ? ... : ... | 0.95823075 | 0.95823075 | 0.85235179 | -| test.c:421:22:421:82 | ... ? ... : ... | 0.95823075 | 0.95823075 | 0.12516558 | -| test.c:421:26:421:69 | ... ? ... : ... | 0.95823075 | 0.82905046 | 0.95823075 | -| test.c:421:30:421:56 | ... ? ... : ... | 0.82905046 | 0.02524326 | 0.82905046 | -| test.c:422:14:422:108 | ... ? ... : ... | 0.84331272 | 0.48640909 | 0.84331272 | -| test.c:422:18:422:95 | ... ? ... : ... | 0.48640909 | 0.45041108 | 0.48640909 | -| test.c:422:22:422:82 | ... ? ... : ... | 0.45041108 | 0.38708626 | 0.45041108 | -| test.c:422:26:422:69 | ... ? ... : ... | 0.38708626 | 0.38708626 | 0.14963485 | -| test.c:422:30:422:56 | ... ? ... : ... | 0.38708626 | 0.38708626 | 0.32876044 | -| test.c:423:14:423:108 | ... ? ... : ... | 0.77086833 | 0.77086833 | 0.05328182 | -| test.c:423:18:423:95 | ... ? ... : ... | 0.77086833 | 0.77086833 | 0.37428143 | -| test.c:423:22:423:82 | ... ? ... : ... | 0.77086833 | 0.77086833 | 0.14800508 | -| test.c:423:26:423:69 | ... ? ... : ... | 0.77086833 | 0.77086833 | 0.26428481 | -| test.c:423:30:423:56 | ... ? ... : ... | 0.77086833 | 0.15755063 | 0.77086833 | -| test.c:424:14:424:108 | ... ? ... : ... | 0.76826628 | 0.76826628 | 0.69072144 | -| test.c:424:18:424:95 | ... ? ... : ... | 0.76826628 | 0.76826628 | 0.39468857 | -| test.c:424:22:424:82 | ... ? ... : ... | 0.76826628 | 0.76826628 | 0.55679274 | -| test.c:424:26:424:69 | ... ? ... : ... | 0.76826628 | 0.76826628 | 0.27643238 | -| test.c:424:30:424:56 | ... ? ... : ... | 0.76826628 | 0.41736536 | 0.76826628 | -| test.c:425:14:425:108 | ... ? ... : ... | 0.88955345 | 0.88955345 | 0.81372798 | -| test.c:425:18:425:95 | ... ? ... : ... | 0.88955345 | 0.88955345 | 0.88745559 | -| test.c:425:22:425:82 | ... ? ... : ... | 0.88955345 | 0.88955345 | 0.2051911 | -| test.c:425:26:425:69 | ... ? ... : ... | 0.88955345 | 0.88955345 | 0.76242583 | -| test.c:425:30:425:56 | ... ? ... : ... | 0.88955345 | 0.88955345 | 0.29904824 | -| test.c:426:14:426:108 | ... ? ... : ... | 0.53843358 | 0.53843358 | 0.42762647 | -| test.c:426:18:426:95 | ... ? ... : ... | 0.53843358 | 0.53843358 | 0.52031241 | -| test.c:426:22:426:82 | ... ? ... : ... | 0.53843358 | 0.53843358 | 0.13204114 | -| test.c:426:26:426:69 | ... ? ... : ... | 0.53843358 | 0.53843358 | 0.44996679 | -| test.c:426:30:426:56 | ... ? ... : ... | 0.53843358 | 0.42186276 | 0.53843358 | -| test.c:468:4:642:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:468:5:470:49 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:471:6:553:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:472:8:490:41 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:475:10:479:21 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:475:31:475:79 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:477:13:479:21 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:484:12:489:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:485:12:485:60 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:487:15:489:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:491:6:510:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:494:8:498:19 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:494:29:494:77 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:496:11:498:19 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:499:6:499:54 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:503:10:507:21 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:503:31:503:79 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:505:13:507:21 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:508:9:510:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:512:10:531:43 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:515:12:520:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:516:12:516:60 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:518:15:520:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:525:14:530:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:526:14:526:62 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:528:17:530:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:532:9:553:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:535:14:540:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:536:14:536:62 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:538:17:540:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:541:12:541:60 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:545:12:550:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:546:12:546:60 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:548:15:550:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:551:11:553:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:554:9:556:51 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:557:9:642:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:558:14:577:47 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:561:16:566:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:562:16:562:64 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:564:19:566:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:571:18:576:29 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:572:18:572:66 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:574:21:576:29 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:578:12:599:29 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:581:14:586:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:582:14:582:62 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:584:17:586:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:587:12:587:60 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:591:16:596:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:592:16:592:64 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:594:19:596:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:597:15:599:29 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:601:12:620:45 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:604:14:609:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:605:14:605:62 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:607:17:609:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:614:16:619:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:615:16:615:64 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:617:19:619:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:621:11:642:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:624:16:629:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:625:16:625:64 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:627:19:629:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:630:14:630:62 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:634:14:639:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:635:14:635:62 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:637:17:639:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:640:13:642:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | -| test.c:668:20:668:36 | ... ? ... : ... | 100.0 | 99.0 | 100.0 | -| test.c:880:5:880:14 | ... ? ... : ... | 32767.0 | 32767.0 | 0.0 | -| test.c:881:5:881:14 | ... ? ... : ... | 32767.0 | 0.0 | 32767.0 | -| test.cpp:121:3:121:12 | ... ? ... : ... | 32767.0 | 32767.0 | 0.0 | -| test.cpp:122:3:122:12 | ... ? ... : ... | 32767.0 | 0.0 | 32767.0 | +Timeout (5m0s) in SimpleRangeAnalysis::getBounds/2#ad6ae182 etc diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected index 7c68f4177932..5673f0fdd303 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected @@ -1,1110 +1 @@ -| inline_assembly.c:10:3:10:3 | y | 4294967295 | -| inline_assembly.c:12:29:12:29 | x | 0 | -| inline_assembly.c:12:32:12:32 | y | 1 | -| inline_assembly.c:16:25:16:25 | x | 0 | -| inline_assembly.c:16:35:16:35 | y | 1 | -| inline_assembly.c:21:29:21:29 | x | 4294967295 | -| inline_assembly.c:21:32:21:32 | y | 4294967295 | -| minmax.c:18:37:18:37 | x | 1 | -| minmax.c:18:40:18:40 | y | 2 | -| minmax.c:18:43:18:43 | z | 3 | -| minmax.c:20:2:20:2 | z | 2147483647 | -| minmax.c:22:8:22:8 | x | 1 | -| minmax.c:22:14:22:14 | y | 2 | -| minmax.c:22:18:22:18 | t | 2147483647 | -| minmax.c:22:22:22:22 | x | 1 | -| minmax.c:23:3:23:3 | t | 1 | -| minmax.c:26:37:26:37 | x | 1 | -| minmax.c:26:40:26:40 | y | 2 | -| minmax.c:26:43:26:43 | z | 1 | -| missing_bounds.cpp:40:5:40:20 | x | 4294967295 | -| missing_bounds.cpp:40:5:40:20 | x | 4294967295 | -| missing_bounds.cpp:41:5:41:20 | x | 4294967295 | -| missing_bounds.cpp:41:5:41:20 | x | 4294967295 | -| missing_bounds.cpp:42:5:42:20 | x | 4294967295 | -| missing_bounds.cpp:42:5:42:20 | x | 4294967295 | -| missing_bounds.cpp:43:5:43:20 | x | 4294967295 | -| missing_bounds.cpp:43:5:43:20 | x | 4294967295 | -| missing_bounds.cpp:44:5:44:20 | x | 4294967295 | -| missing_bounds.cpp:44:5:44:20 | x | 4294967295 | -| missing_bounds.cpp:45:5:45:20 | x | 4294967295 | -| missing_bounds.cpp:45:5:45:20 | x | 4294967295 | -| missing_bounds.cpp:46:5:46:20 | x | 4294967295 | -| missing_bounds.cpp:46:5:46:20 | x | 4294967295 | -| missing_bounds.cpp:72:12:72:12 | x | 4294967295 | -| test.c:8:5:8:9 | count | 2147483647 | -| test.c:8:13:8:17 | count | 2147483647 | -| test.c:10:10:10:14 | count | 2147483647 | -| test.c:16:5:16:9 | count | 2147483647 | -| test.c:16:14:16:18 | count | 15 | -| test.c:18:10:18:14 | count | 15 | -| test.c:24:5:24:9 | count | 15 | -| test.c:25:5:25:9 | count | 2147483647 | -| test.c:25:13:25:17 | count | 127 | -| test.c:27:10:27:14 | count | 15 | -| test.c:33:8:33:8 | i | 2147483647 | -| test.c:33:15:33:15 | i | 2 | -| test.c:33:22:33:22 | i | 2147483647 | -| test.c:33:26:33:26 | i | 1 | -| test.c:34:5:34:9 | total | 2147483647 | -| test.c:34:14:34:14 | i | 1 | -| test.c:36:10:36:14 | total | 2147483647 | -| test.c:36:18:36:18 | i | 2 | -| test.c:42:8:42:8 | i | 2147483647 | -| test.c:42:15:42:15 | i | 2 | -| test.c:42:22:42:22 | i | 1 | -| test.c:43:5:43:9 | total | 2147483647 | -| test.c:43:14:43:14 | i | 1 | -| test.c:45:10:45:14 | total | 2147483647 | -| test.c:45:18:45:18 | i | 2 | -| test.c:51:8:51:8 | i | 2147483647 | -| test.c:51:15:51:15 | i | 2 | -| test.c:51:24:51:24 | i | 2147483647 | -| test.c:51:28:51:28 | i | 1 | -| test.c:52:5:52:9 | total | 2147483647 | -| test.c:52:14:52:14 | i | 1 | -| test.c:54:10:54:14 | total | 2147483647 | -| test.c:54:18:54:18 | i | 2 | -| test.c:58:7:58:7 | i | 2147483647 | -| test.c:59:9:59:9 | i | 3 | -| test.c:60:14:60:14 | i | 3 | -| test.c:67:15:67:15 | y | 2147483647 | -| test.c:67:20:67:20 | y | 2147483647 | -| test.c:68:9:68:9 | x | 2147483647 | -| test.c:68:13:68:13 | y | 9 | -| test.c:69:14:69:14 | x | 6 | -| test.c:72:10:72:10 | y | 2147483647 | -| test.c:76:7:76:7 | y | 2147483647 | -| test.c:77:9:77:9 | x | 2147483647 | -| test.c:81:9:81:9 | x | 2147483647 | -| test.c:85:10:85:10 | x | 2147483647 | -| test.c:89:7:89:7 | y | 2147483647 | -| test.c:90:9:90:9 | x | 2147483647 | -| test.c:90:13:90:13 | y | 2147483647 | -| test.c:93:12:93:12 | x | 2147483647 | -| test.c:100:3:100:3 | c | 127 | -| test.c:101:7:101:7 | c | 127 | -| test.c:104:7:104:7 | c | 127 | -| test.c:105:5:105:5 | c | 127 | -| test.c:106:9:106:9 | c | 127 | -| test.c:109:9:109:9 | c | 127 | -| test.c:119:10:119:10 | n | 18446744073709551616 | -| test.c:124:11:124:15 | Start | 18446744073709551616 | -| test.c:127:6:127:10 | Start | 18446744073709551616 | -| test.c:127:15:127:20 | Length | 18446744073709551616 | -| test.c:135:22:135:22 | c | 127 | -| test.c:137:20:137:20 | x | 0 | -| test.c:138:11:138:11 | i | 2147483647 | -| test.c:139:19:139:19 | c | 127 | -| test.c:139:23:139:23 | i | 2147483647 | -| test.c:139:27:139:28 | uc | 255 | -| test.c:139:32:139:32 | x | 0 | -| test.c:139:36:139:36 | y | 4294967295 | -| test.c:139:40:139:40 | z | 2147483647 | -| test.c:144:23:144:23 | x | 2147483647 | -| test.c:145:32:145:32 | x | 2147483647 | -| test.c:146:33:146:33 | x | 2147483647 | -| test.c:147:31:147:31 | x | 2147483647 | -| test.c:148:13:148:13 | x | 2147483647 | -| test.c:149:23:149:23 | x | 2147483647 | -| test.c:150:10:150:11 | x0 | 127 | -| test.c:150:15:150:16 | x1 | 255 | -| test.c:150:20:150:21 | x2 | 65535 | -| test.c:150:25:150:26 | x3 | 2147483647 | -| test.c:150:30:150:31 | c0 | 127 | -| test.c:150:35:150:36 | s0 | 65535 | -| test.c:154:11:154:11 | x | 9223372036854775808 | -| test.c:154:20:154:20 | x | 9223372036854775808 | -| test.c:154:30:154:30 | x | 9223372036854775808 | -| test.c:154:35:154:35 | x | 2147483647 | -| test.c:161:12:161:12 | a | 2147483647 | -| test.c:161:17:161:17 | a | 2147483647 | -| test.c:162:14:162:14 | a | 11 | -| test.c:163:14:163:14 | a | 11 | -| test.c:164:5:164:9 | total | 0 | -| test.c:164:14:164:14 | b | 11 | -| test.c:164:16:164:16 | c | -3 | -| test.c:166:12:166:12 | a | 2147483647 | -| test.c:166:17:166:17 | a | 2147483647 | -| test.c:167:14:167:14 | a | 11 | -| test.c:168:14:168:14 | a | 11 | -| test.c:169:5:169:9 | total | 8 | -| test.c:169:14:169:14 | b | 11 | -| test.c:169:16:169:16 | c | 0 | -| test.c:171:13:171:13 | a | 2147483647 | -| test.c:171:18:171:18 | a | 2147483647 | -| test.c:172:14:172:14 | a | 11 | -| test.c:173:14:173:14 | a | 11 | -| test.c:174:5:174:9 | total | 19 | -| test.c:174:14:174:14 | b | 11 | -| test.c:174:16:174:16 | c | 7 | -| test.c:176:13:176:13 | a | 2147483647 | -| test.c:176:18:176:18 | a | 2147483647 | -| test.c:177:14:177:14 | a | 1 | -| test.c:178:14:178:14 | a | 1 | -| test.c:179:5:179:9 | total | 37 | -| test.c:179:14:179:14 | b | 1 | -| test.c:179:16:179:16 | c | 7 | -| test.c:181:13:181:13 | a | 2147483647 | -| test.c:181:18:181:18 | a | 2147483647 | -| test.c:182:14:182:14 | a | 0 | -| test.c:183:14:183:14 | a | 0 | -| test.c:184:5:184:9 | total | 45 | -| test.c:184:14:184:14 | b | 0 | -| test.c:184:16:184:16 | c | 7 | -| test.c:186:13:186:13 | a | 2147483647 | -| test.c:186:18:186:18 | a | 2147483647 | -| test.c:187:14:187:14 | a | -2 | -| test.c:188:14:188:14 | a | -2 | -| test.c:189:5:189:9 | total | 52 | -| test.c:189:14:189:14 | b | -2 | -| test.c:189:16:189:16 | c | 7 | -| test.c:192:10:192:14 | total | 57 | -| test.c:200:12:200:12 | a | 2147483647 | -| test.c:200:17:200:17 | a | 2147483647 | -| test.c:200:33:200:33 | b | 2147483647 | -| test.c:200:38:200:38 | b | 2147483647 | -| test.c:201:13:201:13 | a | 11 | -| test.c:201:15:201:15 | b | 23 | -| test.c:202:5:202:9 | total | 0 | -| test.c:202:14:202:14 | r | 2147483647 | -| test.c:204:12:204:12 | a | 2147483647 | -| test.c:204:17:204:17 | a | 2147483647 | -| test.c:204:33:204:33 | b | 2147483647 | -| test.c:204:38:204:38 | b | 2147483647 | -| test.c:205:13:205:13 | a | 11 | -| test.c:205:15:205:15 | b | 23 | -| test.c:206:5:206:9 | total | 2147483647 | -| test.c:206:14:206:14 | r | 2147483647 | -| test.c:208:12:208:12 | a | 2147483647 | -| test.c:208:17:208:17 | a | 2147483647 | -| test.c:208:35:208:35 | b | 2147483647 | -| test.c:208:40:208:40 | b | 2147483647 | -| test.c:209:13:209:13 | a | 11 | -| test.c:209:15:209:15 | b | 23 | -| test.c:210:5:210:9 | total | 2147483647 | -| test.c:210:14:210:14 | r | 2147483647 | -| test.c:212:12:212:12 | a | 2147483647 | -| test.c:212:17:212:17 | a | 2147483647 | -| test.c:212:35:212:35 | b | 2147483647 | -| test.c:212:40:212:40 | b | 2147483647 | -| test.c:213:13:213:13 | a | 11 | -| test.c:213:15:213:15 | b | 0 | -| test.c:214:5:214:9 | total | 2147483647 | -| test.c:214:14:214:14 | r | 2147483647 | -| test.c:216:12:216:12 | a | 2147483647 | -| test.c:216:17:216:17 | a | 2147483647 | -| test.c:216:35:216:35 | b | 2147483647 | -| test.c:216:40:216:40 | b | 2147483647 | -| test.c:217:13:217:13 | a | 11 | -| test.c:217:15:217:15 | b | -7 | -| test.c:218:5:218:9 | total | 2147483647 | -| test.c:218:14:218:14 | r | 2147483647 | -| test.c:221:10:221:14 | total | 2147483647 | -| test.c:228:12:228:12 | a | 2147483647 | -| test.c:228:17:228:17 | a | 2147483647 | -| test.c:228:33:228:33 | b | 2147483647 | -| test.c:228:38:228:38 | b | 2147483647 | -| test.c:229:13:229:13 | a | 11 | -| test.c:229:15:229:15 | b | 23 | -| test.c:230:5:230:9 | total | 0 | -| test.c:230:14:230:14 | r | 2147483647 | -| test.c:232:12:232:12 | a | 2147483647 | -| test.c:232:17:232:17 | a | 2147483647 | -| test.c:232:33:232:33 | b | 2147483647 | -| test.c:232:38:232:38 | b | 2147483647 | -| test.c:233:13:233:13 | a | 11 | -| test.c:233:15:233:15 | b | 23 | -| test.c:234:5:234:9 | total | 2147483647 | -| test.c:234:14:234:14 | r | 2147483647 | -| test.c:236:12:236:12 | a | 2147483647 | -| test.c:236:17:236:17 | a | 2147483647 | -| test.c:236:35:236:35 | b | 2147483647 | -| test.c:236:40:236:40 | b | 2147483647 | -| test.c:237:13:237:13 | a | 11 | -| test.c:237:15:237:15 | b | 23 | -| test.c:238:5:238:9 | total | 2147483647 | -| test.c:238:14:238:14 | r | 2147483647 | -| test.c:240:12:240:12 | a | 2147483647 | -| test.c:240:17:240:17 | a | 2147483647 | -| test.c:240:35:240:35 | b | 2147483647 | -| test.c:240:40:240:40 | b | 2147483647 | -| test.c:241:13:241:13 | a | 11 | -| test.c:241:15:241:15 | b | 0 | -| test.c:242:5:242:9 | total | 2147483647 | -| test.c:242:14:242:14 | r | 2147483647 | -| test.c:244:12:244:12 | a | 2147483647 | -| test.c:244:17:244:17 | a | 2147483647 | -| test.c:244:35:244:35 | b | 2147483647 | -| test.c:244:40:244:40 | b | 2147483647 | -| test.c:245:13:245:13 | a | 11 | -| test.c:245:15:245:15 | b | -7 | -| test.c:246:5:246:9 | total | 2147483647 | -| test.c:246:14:246:14 | r | 2147483647 | -| test.c:249:10:249:14 | total | 2147483647 | -| test.c:256:14:256:14 | a | 2147483647 | -| test.c:256:19:256:19 | a | 2147483647 | -| test.c:256:35:256:35 | b | 2147483647 | -| test.c:256:40:256:40 | b | 2147483647 | -| test.c:257:13:257:13 | a | 11 | -| test.c:257:15:257:15 | b | 23 | -| test.c:258:5:258:9 | total | 0 | -| test.c:258:14:258:14 | r | 2147483647 | -| test.c:260:14:260:14 | a | 2147483647 | -| test.c:260:19:260:19 | a | 2147483647 | -| test.c:260:35:260:35 | b | 2147483647 | -| test.c:260:40:260:40 | b | 2147483647 | -| test.c:261:13:261:13 | a | 11 | -| test.c:261:15:261:15 | b | 23 | -| test.c:262:5:262:9 | total | 2147483647 | -| test.c:262:14:262:14 | r | 2147483647 | -| test.c:264:14:264:14 | a | 2147483647 | -| test.c:264:19:264:19 | a | 2147483647 | -| test.c:264:37:264:37 | b | 2147483647 | -| test.c:264:42:264:42 | b | 2147483647 | -| test.c:265:13:265:13 | a | 11 | -| test.c:265:15:265:15 | b | 23 | -| test.c:266:5:266:9 | total | 2147483647 | -| test.c:266:14:266:14 | r | 2147483647 | -| test.c:268:14:268:14 | a | 2147483647 | -| test.c:268:19:268:19 | a | 2147483647 | -| test.c:268:37:268:37 | b | 2147483647 | -| test.c:268:42:268:42 | b | 2147483647 | -| test.c:269:13:269:13 | a | 11 | -| test.c:269:15:269:15 | b | 0 | -| test.c:270:5:270:9 | total | 2147483647 | -| test.c:270:14:270:14 | r | 2147483647 | -| test.c:272:14:272:14 | a | 2147483647 | -| test.c:272:19:272:19 | a | 2147483647 | -| test.c:272:37:272:37 | b | 2147483647 | -| test.c:272:42:272:42 | b | 2147483647 | -| test.c:273:13:273:13 | a | 11 | -| test.c:273:15:273:15 | b | -7 | -| test.c:274:5:274:9 | total | 2147483647 | -| test.c:274:14:274:14 | r | 2147483647 | -| test.c:277:10:277:14 | total | 2147483647 | -| test.c:284:14:284:14 | a | 2147483647 | -| test.c:284:19:284:19 | a | 2147483647 | -| test.c:284:34:284:34 | b | 2147483647 | -| test.c:284:39:284:39 | b | 2147483647 | -| test.c:285:13:285:13 | a | 0 | -| test.c:285:15:285:15 | b | 23 | -| test.c:286:5:286:9 | total | 0 | -| test.c:286:14:286:14 | r | 2147483647 | -| test.c:288:14:288:14 | a | 2147483647 | -| test.c:288:19:288:19 | a | 2147483647 | -| test.c:288:34:288:34 | b | 2147483647 | -| test.c:288:39:288:39 | b | 2147483647 | -| test.c:289:13:289:13 | a | 0 | -| test.c:289:15:289:15 | b | 23 | -| test.c:290:5:290:9 | total | 2147483647 | -| test.c:290:14:290:14 | r | 2147483647 | -| test.c:292:14:292:14 | a | 2147483647 | -| test.c:292:19:292:19 | a | 2147483647 | -| test.c:292:36:292:36 | b | 2147483647 | -| test.c:292:41:292:41 | b | 2147483647 | -| test.c:293:13:293:13 | a | 0 | -| test.c:293:15:293:15 | b | 23 | -| test.c:294:5:294:9 | total | 2147483647 | -| test.c:294:14:294:14 | r | 2147483647 | -| test.c:296:14:296:14 | a | 2147483647 | -| test.c:296:19:296:19 | a | 2147483647 | -| test.c:296:36:296:36 | b | 2147483647 | -| test.c:296:41:296:41 | b | 2147483647 | -| test.c:297:13:297:13 | a | 0 | -| test.c:297:15:297:15 | b | 0 | -| test.c:298:5:298:9 | total | 2147483647 | -| test.c:298:14:298:14 | r | 2147483647 | -| test.c:300:14:300:14 | a | 2147483647 | -| test.c:300:19:300:19 | a | 2147483647 | -| test.c:300:36:300:36 | b | 2147483647 | -| test.c:300:41:300:41 | b | 2147483647 | -| test.c:301:13:301:13 | a | 0 | -| test.c:301:15:301:15 | b | -7 | -| test.c:302:5:302:9 | total | 2147483647 | -| test.c:302:14:302:14 | r | 2147483647 | -| test.c:305:10:305:14 | total | 2147483647 | -| test.c:312:14:312:14 | a | 2147483647 | -| test.c:312:19:312:19 | a | 2147483647 | -| test.c:312:35:312:35 | b | 2147483647 | -| test.c:312:40:312:40 | b | 2147483647 | -| test.c:313:13:313:13 | a | -2 | -| test.c:313:15:313:15 | b | 23 | -| test.c:314:5:314:9 | total | 0 | -| test.c:314:14:314:14 | r | 2147483647 | -| test.c:316:14:316:14 | a | 2147483647 | -| test.c:316:19:316:19 | a | 2147483647 | -| test.c:316:35:316:35 | b | 2147483647 | -| test.c:316:40:316:40 | b | 2147483647 | -| test.c:317:13:317:13 | a | -2 | -| test.c:317:15:317:15 | b | 23 | -| test.c:318:5:318:9 | total | 2147483647 | -| test.c:318:14:318:14 | r | 2147483647 | -| test.c:320:14:320:14 | a | 2147483647 | -| test.c:320:19:320:19 | a | 2147483647 | -| test.c:320:37:320:37 | b | 2147483647 | -| test.c:320:42:320:42 | b | 2147483647 | -| test.c:321:13:321:13 | a | -2 | -| test.c:321:15:321:15 | b | 23 | -| test.c:322:5:322:9 | total | 2147483647 | -| test.c:322:14:322:14 | r | 2147483647 | -| test.c:324:14:324:14 | a | 2147483647 | -| test.c:324:19:324:19 | a | 2147483647 | -| test.c:324:37:324:37 | b | 2147483647 | -| test.c:324:42:324:42 | b | 2147483647 | -| test.c:325:13:325:13 | a | -2 | -| test.c:325:15:325:15 | b | 0 | -| test.c:326:5:326:9 | total | 2147483647 | -| test.c:326:14:326:14 | r | 2147483647 | -| test.c:328:14:328:14 | a | 2147483647 | -| test.c:328:19:328:19 | a | 2147483647 | -| test.c:328:37:328:37 | b | 2147483647 | -| test.c:328:42:328:42 | b | 2147483647 | -| test.c:329:13:329:13 | a | -2 | -| test.c:329:15:329:15 | b | -7 | -| test.c:330:5:330:9 | total | 2147483647 | -| test.c:330:14:330:14 | r | 2147483647 | -| test.c:333:10:333:14 | total | 2147483647 | -| test.c:341:32:341:34 | odd | 9007199254740991 | -| test.c:343:10:343:16 | shifted | 4503599627370495 | -| test.c:348:27:348:27 | e | 4294967295 | -| test.c:348:40:348:40 | e | 2147483647 | -| test.c:349:25:349:25 | e | 4294967295 | -| test.c:349:39:349:39 | e | 2147483647 | -| test.c:350:27:350:27 | e | 4294967295 | -| test.c:350:40:350:40 | e | 1431655764 | -| test.c:351:27:351:27 | e | 4294967295 | -| test.c:351:40:351:40 | e | 2147483647 | -| test.c:352:27:352:27 | e | 4294967295 | -| test.c:352:41:352:41 | e | 2147483647 | -| test.c:354:10:354:12 | bi1 | 2147483647 | -| test.c:354:16:354:18 | bi2 | 2147483647 | -| test.c:354:22:354:24 | bi3 | 1431655764 | -| test.c:354:28:354:30 | bi4 | 2147483647 | -| test.c:354:34:354:36 | bi5 | 2147483647 | -| test.c:359:7:359:7 | x | 2147483647 | -| test.c:363:10:363:10 | i | 7 | -| test.c:364:5:364:5 | i | 2 | -| test.c:366:3:366:3 | d | 2147483647 | -| test.c:366:7:366:7 | i | 7 | -| test.c:367:7:367:7 | x | 2147483647 | -| test.c:368:9:368:9 | d | 7 | -| test.c:368:14:368:14 | x | -1 | -| test.c:378:3:378:4 | y1 | 4294967295 | -| test.c:378:8:378:8 | x | 4294967295 | -| test.c:378:18:378:18 | x | 99 | -| test.c:379:3:379:4 | y2 | 4294967295 | -| test.c:379:8:379:8 | x | 4294967295 | -| test.c:379:24:379:24 | x | 99 | -| test.c:380:3:380:4 | y3 | 4294967295 | -| test.c:381:3:381:4 | y4 | 4294967295 | -| test.c:382:3:382:4 | y5 | 4294967295 | -| test.c:383:3:383:4 | y6 | 4294967295 | -| test.c:384:3:384:4 | y7 | 4294967295 | -| test.c:385:3:385:4 | y8 | 4294967295 | -| test.c:386:7:386:7 | x | 4294967295 | -| test.c:387:5:387:6 | y3 | 4294967295 | -| test.c:387:10:387:10 | x | 299 | -| test.c:388:5:388:6 | y4 | 4294967295 | -| test.c:388:10:388:10 | x | 299 | -| test.c:389:5:389:6 | y5 | 4294967295 | -| test.c:389:11:389:11 | x | 299 | -| test.c:390:5:390:6 | y6 | 4294967295 | -| test.c:390:27:390:27 | x | 299 | -| test.c:391:5:391:6 | y7 | 4294967295 | -| test.c:391:27:391:27 | x | 299 | -| test.c:392:5:392:6 | y8 | 4294967295 | -| test.c:392:28:392:28 | x | 299 | -| test.c:394:10:394:11 | y1 | 99 | -| test.c:394:15:394:16 | y2 | 99 | -| test.c:394:20:394:21 | y3 | 299 | -| test.c:394:25:394:26 | y4 | 500 | -| test.c:394:30:394:31 | y5 | 300 | -| test.c:394:35:394:36 | y6 | 255 | -| test.c:394:40:394:41 | y7 | 500 | -| test.c:394:45:394:46 | y8 | 300 | -| test.c:400:3:400:4 | y1 | 4294967295 | -| test.c:400:8:400:8 | x | 4294967295 | -| test.c:400:18:400:18 | x | 4294967295 | -| test.c:401:3:401:4 | y2 | 4294967295 | -| test.c:401:8:401:8 | x | 4294967295 | -| test.c:401:25:401:25 | x | 4294967295 | -| test.c:402:3:402:4 | y3 | 4294967295 | -| test.c:403:3:403:4 | y4 | 4294967295 | -| test.c:404:3:404:4 | y5 | 4294967295 | -| test.c:405:7:405:7 | x | 4294967295 | -| test.c:406:5:406:6 | y3 | 4294967295 | -| test.c:406:11:406:11 | x | 4294967295 | -| test.c:407:5:407:6 | y4 | 4294967295 | -| test.c:407:11:407:11 | x | 4294967295 | -| test.c:408:5:408:6 | y5 | 4294967295 | -| test.c:408:27:408:27 | x | 4294967295 | -| test.c:410:10:410:11 | y1 | 4294967295 | -| test.c:410:15:410:16 | y2 | 4294967295 | -| test.c:410:20:410:21 | y3 | 4294967295 | -| test.c:410:25:410:26 | y4 | 4294967295 | -| test.c:410:30:410:31 | y5 | 1000 | -| test.c:415:14:415:14 | m | Infinity | -| test.c:415:18:415:18 | n | Infinity | -| test.c:415:22:415:22 | o | Infinity | -| test.c:415:26:415:26 | p | Infinity | -| test.c:415:30:415:30 | q | Infinity | -| test.c:416:14:416:14 | m | Infinity | -| test.c:416:18:416:18 | n | Infinity | -| test.c:416:22:416:22 | o | Infinity | -| test.c:416:26:416:26 | p | Infinity | -| test.c:416:30:416:30 | q | Infinity | -| test.c:417:14:417:14 | m | Infinity | -| test.c:417:18:417:18 | n | Infinity | -| test.c:417:22:417:22 | o | Infinity | -| test.c:417:26:417:26 | p | Infinity | -| test.c:417:30:417:30 | q | Infinity | -| test.c:418:14:418:14 | m | Infinity | -| test.c:418:18:418:18 | n | Infinity | -| test.c:418:22:418:22 | o | Infinity | -| test.c:418:26:418:26 | p | Infinity | -| test.c:418:30:418:30 | q | Infinity | -| test.c:419:14:419:14 | m | Infinity | -| test.c:419:18:419:18 | n | Infinity | -| test.c:419:22:419:22 | o | Infinity | -| test.c:419:26:419:26 | p | Infinity | -| test.c:419:30:419:30 | q | Infinity | -| test.c:420:14:420:14 | m | Infinity | -| test.c:420:18:420:18 | n | Infinity | -| test.c:420:22:420:22 | o | Infinity | -| test.c:420:26:420:26 | p | Infinity | -| test.c:420:30:420:30 | q | Infinity | -| test.c:421:14:421:14 | m | Infinity | -| test.c:421:18:421:18 | n | Infinity | -| test.c:421:22:421:22 | o | Infinity | -| test.c:421:26:421:26 | p | Infinity | -| test.c:421:30:421:30 | q | Infinity | -| test.c:422:14:422:14 | m | Infinity | -| test.c:422:18:422:18 | n | Infinity | -| test.c:422:22:422:22 | o | Infinity | -| test.c:422:26:422:26 | p | Infinity | -| test.c:422:30:422:30 | q | Infinity | -| test.c:423:14:423:14 | m | Infinity | -| test.c:423:18:423:18 | n | Infinity | -| test.c:423:22:423:22 | o | Infinity | -| test.c:423:26:423:26 | p | Infinity | -| test.c:423:30:423:30 | q | Infinity | -| test.c:424:14:424:14 | m | Infinity | -| test.c:424:18:424:18 | n | Infinity | -| test.c:424:22:424:22 | o | Infinity | -| test.c:424:26:424:26 | p | Infinity | -| test.c:424:30:424:30 | q | Infinity | -| test.c:425:14:425:14 | m | Infinity | -| test.c:425:18:425:18 | n | Infinity | -| test.c:425:22:425:22 | o | Infinity | -| test.c:425:26:425:26 | p | Infinity | -| test.c:425:30:425:30 | q | Infinity | -| test.c:426:14:426:14 | m | Infinity | -| test.c:426:18:426:18 | n | Infinity | -| test.c:426:22:426:22 | o | Infinity | -| test.c:426:26:426:26 | p | Infinity | -| test.c:426:30:426:30 | q | Infinity | -| test.c:432:19:432:19 | a | 0.474388 | -| test.c:432:23:432:23 | b | 0.592705 | -| test.c:432:27:432:27 | c | 0.793107 | -| test.c:432:31:432:31 | d | 0.989973 | -| test.c:432:35:432:35 | e | 0.903899 | -| test.c:432:39:432:39 | f | 0.761641 | -| test.c:432:43:432:43 | g | 0.958231 | -| test.c:432:47:432:47 | h | 0.843313 | -| test.c:432:51:432:51 | i | 0.770868 | -| test.c:432:55:432:55 | j | 0.768266 | -| test.c:432:59:432:59 | k | 0.889553 | -| test.c:432:63:432:63 | l | 0.538434 | -| test.c:434:10:434:15 | output | 9.284378 | -| test.c:441:7:441:9 | rhs | 4294967295 | -| test.c:441:19:441:21 | rhs | 11 | -| test.c:442:7:442:9 | rhs | 4294967295 | -| test.c:442:19:442:21 | rhs | 12 | -| test.c:443:7:443:9 | rhs | 4294967295 | -| test.c:443:19:443:21 | rhs | 13 | -| test.c:444:7:444:9 | rhs | 4294967295 | -| test.c:444:19:444:21 | rhs | 14 | -| test.c:445:7:445:9 | rhs | 4294967295 | -| test.c:445:19:445:21 | rhs | 15 | -| test.c:446:10:446:12 | rhs | 4294967295 | -| test.c:450:7:450:7 | a | 2147483647 | -| test.c:451:9:451:9 | b | 2147483647 | -| test.c:452:7:452:7 | a | 17 | -| test.c:452:12:452:12 | b | 23 | -| test.c:454:9:454:9 | a | 40 | -| test.c:455:7:455:7 | b | 2147483647 | -| test.c:460:11:460:11 | a | 2147483647 | -| test.c:460:15:460:15 | b | 2147483647 | -| test.c:461:10:461:10 | a | 2147483647 | -| test.c:461:14:461:14 | b | 2147483647 | -| test.c:468:10:468:11 | ip | 4294967295 | -| test.c:468:20:468:21 | ip | 4294967295 | -| test.c:468:40:468:41 | ip | 4294967295 | -| test.c:469:14:469:15 | ip | 4294967295 | -| test.c:470:14:470:15 | ip | 4294967295 | -| test.c:470:34:470:35 | ip | 4294967295 | -| test.c:471:11:471:12 | ip | 4294967295 | -| test.c:472:13:472:14 | ip | 4294967295 | -| test.c:473:14:473:15 | ip | 4294967295 | -| test.c:474:14:474:15 | ip | 4294967295 | -| test.c:475:15:475:16 | ip | 4294967295 | -| test.c:475:41:475:42 | ip | 4294967295 | -| test.c:475:52:475:53 | ip | 4294967295 | -| test.c:475:67:475:68 | ip | 4294967295 | -| test.c:475:78:475:79 | ip | 4294967295 | -| test.c:476:18:476:19 | ip | 4294967295 | -| test.c:477:23:477:24 | ip | 4294967295 | -| test.c:477:34:477:35 | ip | 4294967295 | -| test.c:478:25:478:26 | ip | 4294967295 | -| test.c:479:20:479:21 | ip | 4294967295 | -| test.c:480:11:480:12 | ip | 4294967295 | -| test.c:480:26:480:27 | ip | 4294967295 | -| test.c:481:16:481:17 | ip | 4294967295 | -| test.c:482:16:482:17 | ip | 4294967295 | -| test.c:483:16:483:17 | ip | 4294967295 | -| test.c:484:17:484:18 | ip | 4294967295 | -| test.c:485:22:485:23 | ip | 4294967295 | -| test.c:485:33:485:34 | ip | 4294967295 | -| test.c:485:48:485:49 | ip | 4294967295 | -| test.c:485:59:485:60 | ip | 4294967295 | -| test.c:486:20:486:21 | ip | 4294967295 | -| test.c:487:25:487:26 | ip | 4294967295 | -| test.c:487:36:487:37 | ip | 4294967295 | -| test.c:488:27:488:28 | ip | 4294967295 | -| test.c:489:22:489:23 | ip | 4294967295 | -| test.c:490:15:490:16 | ip | 4294967295 | -| test.c:490:30:490:31 | ip | 4294967295 | -| test.c:491:11:491:12 | ip | 4294967295 | -| test.c:492:12:492:13 | ip | 4294967295 | -| test.c:493:12:493:13 | ip | 4294967295 | -| test.c:494:13:494:14 | ip | 4294967295 | -| test.c:494:39:494:40 | ip | 4294967295 | -| test.c:494:50:494:51 | ip | 4294967295 | -| test.c:494:65:494:66 | ip | 4294967295 | -| test.c:494:76:494:77 | ip | 4294967295 | -| test.c:495:16:495:17 | ip | 4294967295 | -| test.c:496:21:496:22 | ip | 4294967295 | -| test.c:496:32:496:33 | ip | 4294967295 | -| test.c:497:23:497:24 | ip | 4294967295 | -| test.c:498:18:498:19 | ip | 4294967295 | -| test.c:499:11:499:12 | ip | 4294967295 | -| test.c:499:17:499:18 | ip | 4294967295 | -| test.c:499:37:499:38 | ip | 4294967295 | -| test.c:499:43:499:44 | ip | 4294967295 | -| test.c:500:14:500:15 | ip | 4294967295 | -| test.c:501:14:501:15 | ip | 4294967295 | -| test.c:502:14:502:15 | ip | 4294967295 | -| test.c:503:15:503:16 | ip | 4294967295 | -| test.c:503:41:503:42 | ip | 4294967295 | -| test.c:503:52:503:53 | ip | 4294967295 | -| test.c:503:67:503:68 | ip | 4294967295 | -| test.c:503:78:503:79 | ip | 4294967295 | -| test.c:504:18:504:19 | ip | 4294967295 | -| test.c:505:23:505:24 | ip | 4294967295 | -| test.c:505:34:505:35 | ip | 4294967295 | -| test.c:506:25:506:26 | ip | 4294967295 | -| test.c:507:20:507:21 | ip | 4294967295 | -| test.c:508:14:508:15 | ip | 4294967295 | -| test.c:508:20:508:21 | ip | 4294967295 | -| test.c:509:16:509:17 | ip | 4294967295 | -| test.c:510:12:510:13 | ip | 4294967295 | -| test.c:511:14:511:15 | ip | 4294967295 | -| test.c:512:15:512:16 | ip | 4294967295 | -| test.c:513:16:513:17 | ip | 4294967295 | -| test.c:514:16:514:17 | ip | 4294967295 | -| test.c:515:17:515:18 | ip | 4294967295 | -| test.c:516:22:516:23 | ip | 4294967295 | -| test.c:516:33:516:34 | ip | 4294967295 | -| test.c:516:48:516:49 | ip | 4294967295 | -| test.c:516:59:516:60 | ip | 4294967295 | -| test.c:517:20:517:21 | ip | 4294967295 | -| test.c:518:25:518:26 | ip | 4294967295 | -| test.c:518:36:518:37 | ip | 4294967295 | -| test.c:519:27:519:28 | ip | 4294967295 | -| test.c:520:22:520:23 | ip | 4294967295 | -| test.c:521:13:521:14 | ip | 4294967295 | -| test.c:521:28:521:29 | ip | 4294967295 | -| test.c:522:18:522:19 | ip | 4294967295 | -| test.c:523:18:523:19 | ip | 4294967295 | -| test.c:524:18:524:19 | ip | 4294967295 | -| test.c:525:19:525:20 | ip | 4294967295 | -| test.c:526:24:526:25 | ip | 4294967295 | -| test.c:526:35:526:36 | ip | 4294967295 | -| test.c:526:50:526:51 | ip | 4294967295 | -| test.c:526:61:526:62 | ip | 4294967295 | -| test.c:527:22:527:23 | ip | 4294967295 | -| test.c:528:27:528:28 | ip | 4294967295 | -| test.c:528:38:528:39 | ip | 4294967295 | -| test.c:529:29:529:30 | ip | 4294967295 | -| test.c:530:24:530:25 | ip | 4294967295 | -| test.c:531:17:531:18 | ip | 4294967295 | -| test.c:531:32:531:33 | ip | 4294967295 | -| test.c:532:14:532:15 | ip | 4294967295 | -| test.c:533:18:533:19 | ip | 4294967295 | -| test.c:534:18:534:19 | ip | 4294967295 | -| test.c:535:19:535:20 | ip | 4294967295 | -| test.c:536:24:536:25 | ip | 4294967295 | -| test.c:536:35:536:36 | ip | 4294967295 | -| test.c:536:50:536:51 | ip | 4294967295 | -| test.c:536:61:536:62 | ip | 4294967295 | -| test.c:537:22:537:23 | ip | 4294967295 | -| test.c:538:27:538:28 | ip | 4294967295 | -| test.c:538:38:538:39 | ip | 4294967295 | -| test.c:539:29:539:30 | ip | 4294967295 | -| test.c:540:24:540:25 | ip | 4294967295 | -| test.c:541:17:541:18 | ip | 4294967295 | -| test.c:541:23:541:24 | ip | 4294967295 | -| test.c:541:43:541:44 | ip | 4294967295 | -| test.c:541:49:541:50 | ip | 4294967295 | -| test.c:542:16:542:17 | ip | 4294967295 | -| test.c:543:16:543:17 | ip | 4294967295 | -| test.c:544:16:544:17 | ip | 4294967295 | -| test.c:545:17:545:18 | ip | 4294967295 | -| test.c:546:22:546:23 | ip | 4294967295 | -| test.c:546:33:546:34 | ip | 4294967295 | -| test.c:546:48:546:49 | ip | 4294967295 | -| test.c:546:59:546:60 | ip | 4294967295 | -| test.c:547:20:547:21 | ip | 4294967295 | -| test.c:548:25:548:26 | ip | 4294967295 | -| test.c:548:36:548:37 | ip | 4294967295 | -| test.c:549:27:549:28 | ip | 4294967295 | -| test.c:550:22:550:23 | ip | 4294967295 | -| test.c:551:16:551:17 | ip | 4294967295 | -| test.c:551:22:551:23 | ip | 4294967295 | -| test.c:552:18:552:19 | ip | 4294967295 | -| test.c:553:14:553:15 | ip | 4294967295 | -| test.c:554:14:554:15 | ip | 4294967295 | -| test.c:554:24:554:25 | ip | 4294967295 | -| test.c:554:44:554:45 | ip | 4294967295 | -| test.c:555:16:555:17 | ip | 4294967295 | -| test.c:556:16:556:17 | ip | 4294967295 | -| test.c:556:36:556:37 | ip | 4294967295 | -| test.c:557:14:557:15 | ip | 4294967295 | -| test.c:558:19:558:20 | ip | 4294967295 | -| test.c:559:20:559:21 | ip | 4294967295 | -| test.c:560:20:560:21 | ip | 4294967295 | -| test.c:561:21:561:22 | ip | 4294967295 | -| test.c:562:26:562:27 | ip | 4294967295 | -| test.c:562:37:562:38 | ip | 4294967295 | -| test.c:562:52:562:53 | ip | 4294967295 | -| test.c:562:63:562:64 | ip | 4294967295 | -| test.c:563:24:563:25 | ip | 4294967295 | -| test.c:564:29:564:30 | ip | 4294967295 | -| test.c:564:40:564:41 | ip | 4294967295 | -| test.c:565:31:565:32 | ip | 4294967295 | -| test.c:566:26:566:27 | ip | 4294967295 | -| test.c:567:17:567:18 | ip | 4294967295 | -| test.c:567:32:567:33 | ip | 4294967295 | -| test.c:568:22:568:23 | ip | 4294967295 | -| test.c:569:22:569:23 | ip | 4294967295 | -| test.c:570:22:570:23 | ip | 4294967295 | -| test.c:571:23:571:24 | ip | 4294967295 | -| test.c:572:28:572:29 | ip | 4294967295 | -| test.c:572:39:572:40 | ip | 4294967295 | -| test.c:572:54:572:55 | ip | 4294967295 | -| test.c:572:65:572:66 | ip | 4294967295 | -| test.c:573:26:573:27 | ip | 4294967295 | -| test.c:574:31:574:32 | ip | 4294967295 | -| test.c:574:42:574:43 | ip | 4294967295 | -| test.c:575:33:575:34 | ip | 4294967295 | -| test.c:576:28:576:29 | ip | 4294967295 | -| test.c:577:21:577:22 | ip | 4294967295 | -| test.c:577:36:577:37 | ip | 4294967295 | -| test.c:578:17:578:18 | ip | 4294967295 | -| test.c:579:18:579:19 | ip | 4294967295 | -| test.c:580:18:580:19 | ip | 4294967295 | -| test.c:581:19:581:20 | ip | 4294967295 | -| test.c:582:24:582:25 | ip | 4294967295 | -| test.c:582:35:582:36 | ip | 4294967295 | -| test.c:582:50:582:51 | ip | 4294967295 | -| test.c:582:61:582:62 | ip | 4294967295 | -| test.c:583:22:583:23 | ip | 4294967295 | -| test.c:584:27:584:28 | ip | 4294967295 | -| test.c:584:38:584:39 | ip | 4294967295 | -| test.c:585:29:585:30 | ip | 4294967295 | -| test.c:586:24:586:25 | ip | 4294967295 | -| test.c:587:17:587:18 | ip | 4294967295 | -| test.c:587:23:587:24 | ip | 4294967295 | -| test.c:587:43:587:44 | ip | 4294967295 | -| test.c:587:49:587:50 | ip | 4294967295 | -| test.c:588:20:588:21 | ip | 4294967295 | -| test.c:589:20:589:21 | ip | 4294967295 | -| test.c:590:20:590:21 | ip | 4294967295 | -| test.c:591:21:591:22 | ip | 4294967295 | -| test.c:592:26:592:27 | ip | 4294967295 | -| test.c:592:37:592:38 | ip | 4294967295 | -| test.c:592:52:592:53 | ip | 4294967295 | -| test.c:592:63:592:64 | ip | 4294967295 | -| test.c:593:24:593:25 | ip | 4294967295 | -| test.c:594:29:594:30 | ip | 4294967295 | -| test.c:594:40:594:41 | ip | 4294967295 | -| test.c:595:31:595:32 | ip | 4294967295 | -| test.c:596:26:596:27 | ip | 4294967295 | -| test.c:597:20:597:21 | ip | 4294967295 | -| test.c:597:26:597:27 | ip | 4294967295 | -| test.c:598:22:598:23 | ip | 4294967295 | -| test.c:599:18:599:19 | ip | 4294967295 | -| test.c:600:16:600:17 | ip | 4294967295 | -| test.c:601:17:601:18 | ip | 4294967295 | -| test.c:602:18:602:19 | ip | 4294967295 | -| test.c:603:18:603:19 | ip | 4294967295 | -| test.c:604:19:604:20 | ip | 4294967295 | -| test.c:605:24:605:25 | ip | 4294967295 | -| test.c:605:35:605:36 | ip | 4294967295 | -| test.c:605:50:605:51 | ip | 4294967295 | -| test.c:605:61:605:62 | ip | 4294967295 | -| test.c:606:22:606:23 | ip | 4294967295 | -| test.c:607:27:607:28 | ip | 4294967295 | -| test.c:607:38:607:39 | ip | 4294967295 | -| test.c:608:29:608:30 | ip | 4294967295 | -| test.c:609:24:609:25 | ip | 4294967295 | -| test.c:610:15:610:16 | ip | 4294967295 | -| test.c:610:30:610:31 | ip | 4294967295 | -| test.c:611:20:611:21 | ip | 4294967295 | -| test.c:612:20:612:21 | ip | 4294967295 | -| test.c:613:20:613:21 | ip | 4294967295 | -| test.c:614:21:614:22 | ip | 4294967295 | -| test.c:615:26:615:27 | ip | 4294967295 | -| test.c:615:37:615:38 | ip | 4294967295 | -| test.c:615:52:615:53 | ip | 4294967295 | -| test.c:615:63:615:64 | ip | 4294967295 | -| test.c:616:24:616:25 | ip | 4294967295 | -| test.c:617:29:617:30 | ip | 4294967295 | -| test.c:617:40:617:41 | ip | 4294967295 | -| test.c:618:31:618:32 | ip | 4294967295 | -| test.c:619:26:619:27 | ip | 4294967295 | -| test.c:620:19:620:20 | ip | 4294967295 | -| test.c:620:34:620:35 | ip | 4294967295 | -| test.c:621:16:621:17 | ip | 4294967295 | -| test.c:622:20:622:21 | ip | 4294967295 | -| test.c:623:20:623:21 | ip | 4294967295 | -| test.c:624:21:624:22 | ip | 4294967295 | -| test.c:625:26:625:27 | ip | 4294967295 | -| test.c:625:37:625:38 | ip | 4294967295 | -| test.c:625:52:625:53 | ip | 4294967295 | -| test.c:625:63:625:64 | ip | 4294967295 | -| test.c:626:24:626:25 | ip | 4294967295 | -| test.c:627:29:627:30 | ip | 4294967295 | -| test.c:627:40:627:41 | ip | 4294967295 | -| test.c:628:31:628:32 | ip | 4294967295 | -| test.c:629:26:629:27 | ip | 4294967295 | -| test.c:630:19:630:20 | ip | 4294967295 | -| test.c:630:25:630:26 | ip | 4294967295 | -| test.c:630:45:630:46 | ip | 4294967295 | -| test.c:630:51:630:52 | ip | 4294967295 | -| test.c:631:18:631:19 | ip | 4294967295 | -| test.c:632:18:632:19 | ip | 4294967295 | -| test.c:633:18:633:19 | ip | 4294967295 | -| test.c:634:19:634:20 | ip | 4294967295 | -| test.c:635:24:635:25 | ip | 4294967295 | -| test.c:635:35:635:36 | ip | 4294967295 | -| test.c:635:50:635:51 | ip | 4294967295 | -| test.c:635:61:635:62 | ip | 4294967295 | -| test.c:636:22:636:23 | ip | 4294967295 | -| test.c:637:27:637:28 | ip | 4294967295 | -| test.c:637:38:637:39 | ip | 4294967295 | -| test.c:638:29:638:30 | ip | 4294967295 | -| test.c:639:24:639:25 | ip | 4294967295 | -| test.c:640:18:640:19 | ip | 4294967295 | -| test.c:640:24:640:25 | ip | 4294967295 | -| test.c:641:20:641:21 | ip | 4294967295 | -| test.c:642:16:642:17 | ip | 4294967295 | -| test.c:643:10:643:23 | special_number | 4294967295 | -| test.c:651:7:651:8 | c1 | 2147483647 | -| test.c:651:13:651:13 | x | 0 | -| test.c:652:7:652:8 | c2 | 2147483647 | -| test.c:652:13:652:13 | x | 748596 | -| test.c:653:7:653:8 | c3 | 2147483647 | -| test.c:653:13:653:13 | x | 85400991 | -| test.c:654:7:654:8 | c4 | 2147483647 | -| test.c:654:13:654:13 | x | 89076886 | -| test.c:655:7:655:8 | c5 | 2147483647 | -| test.c:655:13:655:13 | x | 89175520 | -| test.c:656:7:656:8 | c1 | 2147483647 | -| test.c:656:13:656:14 | c2 | 2147483647 | -| test.c:656:19:656:19 | x | 97010505 | -| test.c:657:7:657:8 | c1 | 2147483647 | -| test.c:657:13:657:14 | c3 | 2147483647 | -| test.c:657:19:657:19 | x | 1035467903 | -| test.c:658:7:658:8 | c1 | 2147483647 | -| test.c:658:13:658:14 | c4 | 2147483647 | -| test.c:658:19:658:19 | x | 1109363551 | -| test.c:659:7:659:8 | c1 | 2147483647 | -| test.c:659:13:659:14 | c5 | 2147483647 | -| test.c:659:19:659:19 | x | 1121708983 | -| test.c:660:7:660:8 | c2 | 2147483647 | -| test.c:660:13:660:14 | c3 | 2147483647 | -| test.c:660:19:660:19 | x | 1121747830 | -| test.c:662:11:662:11 | x | 2147483647 | -| test.c:662:15:662:15 | x | 2147483647 | -| test.c:662:19:662:19 | x | 2147483647 | -| test.c:662:23:662:23 | x | 2147483647 | -| test.c:662:27:662:27 | x | 2147483647 | -| test.c:662:31:662:31 | x | 2147483647 | -| test.c:662:35:662:35 | x | 2147483647 | -| test.c:662:39:662:39 | x | 2147483647 | -| test.c:662:43:662:43 | x | 2147483647 | -| test.c:662:47:662:47 | x | 2147483647 | -| test.c:662:51:662:51 | x | 2147483647 | -| test.c:662:55:662:55 | x | 2147483647 | -| test.c:663:10:663:10 | y | 2147483647 | -| test.c:668:20:668:20 | x | 4294967295 | -| test.c:668:30:668:30 | x | 99 | -| test.c:671:3:671:4 | y1 | 4294967295 | -| test.c:671:11:671:11 | y | 100 | -| test.c:671:14:671:14 | y | 101 | -| test.c:672:3:672:4 | y2 | 4294967295 | -| test.c:672:9:672:9 | y | 101 | -| test.c:672:14:672:14 | y | 102 | -| test.c:672:22:672:22 | y | 105 | -| test.c:673:10:673:11 | y1 | 101 | -| test.c:673:15:673:16 | y2 | 105 | -| test.c:681:3:681:3 | i | 2147483647 | -| test.c:682:7:682:7 | i | 10 | -| test.c:684:3:684:3 | i | 2147483647 | -| test.c:685:3:685:3 | i | 10 | -| test.c:686:7:686:7 | i | 20 | -| test.c:688:3:688:3 | i | 2147483647 | -| test.c:689:3:689:3 | i | 40 | -| test.c:690:7:690:7 | i | 30 | -| test.c:692:3:692:3 | i | 2147483647 | -| test.c:692:7:692:7 | j | 2147483647 | -| test.c:693:7:693:7 | i | 40 | -| test.c:695:3:695:3 | i | 2147483647 | -| test.c:695:8:695:8 | j | 40 | -| test.c:696:7:696:7 | i | 50 | -| test.c:698:3:698:3 | i | 2147483647 | -| test.c:698:13:698:13 | j | 50 | -| test.c:699:7:699:7 | i | 60 | -| test.c:706:12:706:12 | a | 4294967295 | -| test.c:706:17:706:17 | a | 4294967295 | -| test.c:706:33:706:33 | b | 4294967295 | -| test.c:706:38:706:38 | b | 4294967295 | -| test.c:707:13:707:13 | a | 11 | -| test.c:707:15:707:15 | b | 23 | -| test.c:708:5:708:9 | total | 0 | -| test.c:708:14:708:14 | r | 253 | -| test.c:710:12:710:12 | a | 4294967295 | -| test.c:710:17:710:17 | a | 4294967295 | -| test.c:710:33:710:33 | b | 4294967295 | -| test.c:710:38:710:38 | b | 4294967295 | -| test.c:711:13:711:13 | a | 11 | -| test.c:711:15:711:15 | b | 23 | -| test.c:712:5:712:9 | total | 253 | -| test.c:712:14:712:14 | r | 253 | -| test.c:714:12:714:12 | a | 4294967295 | -| test.c:714:17:714:17 | a | 4294967295 | -| test.c:714:34:714:34 | b | 4294967295 | -| test.c:714:39:714:39 | b | 4294967295 | -| test.c:715:13:715:13 | a | 11 | -| test.c:715:15:715:15 | b | 23 | -| test.c:716:5:716:9 | total | 506 | -| test.c:716:14:716:14 | r | 253 | -| test.c:719:10:719:14 | total | 759 | -| test.c:725:12:725:12 | b | 4294967295 | -| test.c:725:17:725:17 | b | 4294967295 | -| test.c:726:16:726:16 | b | 23 | -| test.c:727:5:727:9 | total | 0 | -| test.c:727:14:727:14 | r | 253 | -| test.c:729:12:729:12 | b | 4294967295 | -| test.c:729:17:729:17 | b | 4294967295 | -| test.c:730:16:730:16 | b | 23 | -| test.c:731:5:731:9 | total | 253 | -| test.c:731:14:731:14 | r | 253 | -| test.c:733:13:733:13 | b | 4294967295 | -| test.c:733:18:733:18 | b | 4294967295 | -| test.c:734:16:734:16 | b | 23 | -| test.c:735:5:735:9 | total | 506 | -| test.c:735:14:735:14 | r | 253 | -| test.c:738:10:738:14 | total | 759 | -| test.c:743:3:743:3 | x | 18446744073709551616 | -| test.c:743:7:743:7 | y | 18446744073709551616 | -| test.c:744:3:744:4 | xy | 18446744073709551616 | -| test.c:744:8:744:8 | x | 1000000003 | -| test.c:744:12:744:12 | y | 1000000003 | -| test.c:745:10:745:11 | xy | 1000000006000000000 | -| test.c:750:3:750:3 | x | 18446744073709551616 | -| test.c:751:3:751:3 | y | 18446744073709551616 | -| test.c:752:3:752:4 | xy | 18446744073709551616 | -| test.c:752:8:752:8 | x | 274177 | -| test.c:752:12:752:12 | y | 67280421310721 | -| test.c:753:10:753:11 | xy | 18446744073709551616 | -| test.c:757:7:757:8 | ui | 4294967295 | -| test.c:758:43:758:44 | ui | 4294967295 | -| test.c:758:48:758:49 | ui | 4294967295 | -| test.c:759:12:759:17 | result | 18446744065119617024 | -| test.c:761:7:761:8 | ul | 18446744073709551616 | -| test.c:762:28:762:29 | ul | 18446744073709551616 | -| test.c:762:33:762:34 | ul | 18446744073709551616 | -| test.c:763:12:763:17 | result | 18446744073709551616 | -| test.c:769:7:769:8 | ui | 4294967295 | -| test.c:769:19:769:20 | ui | 10 | -| test.c:770:5:770:6 | ui | 10 | -| test.c:770:11:770:12 | ui | 10 | -| test.c:771:12:771:13 | ui | 100 | -| test.c:775:3:775:9 | uiconst | 10 | -| test.c:778:3:778:9 | ulconst | 10 | -| test.c:779:10:779:16 | uiconst | 40 | -| test.c:779:20:779:26 | ulconst | 40 | -| test.c:783:7:783:7 | i | 2147483647 | -| test.c:783:18:783:18 | i | 2147483647 | -| test.c:784:5:784:5 | i | 2147483647 | -| test.c:784:13:784:13 | i | 2 | -| test.c:785:9:785:9 | i | 10 | -| test.c:787:5:787:5 | i | 2147483647 | -| test.c:787:9:787:9 | i | 10 | -| test.c:788:9:788:9 | i | 15 | -| test.c:790:5:790:5 | i | 15 | -| test.c:791:9:791:9 | i | 105 | -| test.c:793:5:793:5 | i | 105 | -| test.c:794:9:794:9 | i | 2310 | -| test.c:796:7:796:7 | i | 2147483647 | -| test.c:797:5:797:5 | i | 2147483647 | -| test.c:797:9:797:9 | i | -1 | -| test.c:798:9:798:9 | i | 1 | -| test.c:800:3:800:3 | i | 2147483647 | -| test.c:800:7:800:7 | i | 2147483647 | -| test.c:801:10:801:10 | i | 2147483647 | -| test.c:804:3:804:3 | i | 2147483647 | -| test.c:804:10:804:11 | sc | 1 | -| test.c:806:7:806:7 | i | 127 | -| test.c:813:7:813:7 | n | 4294967295 | -| test.c:815:7:815:7 | n | 4294967295 | -| test.c:816:9:816:9 | n | 4294967295 | -| test.c:819:7:819:7 | n | 4294967295 | -| test.c:820:9:820:9 | n | 4294967295 | -| test.c:822:9:822:9 | n | 0 | -| test.c:825:8:825:8 | n | 4294967295 | -| test.c:826:9:826:9 | n | 0 | -| test.c:828:9:828:9 | n | 4294967295 | -| test.c:831:10:831:10 | n | 4294967295 | -| test.c:832:5:832:5 | n | 4294967295 | -| test.c:835:7:835:7 | n | 0 | -| test.c:839:7:839:7 | n | 32767 | -| test.c:842:7:842:7 | n | 32767 | -| test.c:843:9:843:9 | n | 0 | -| test.c:845:9:845:9 | n | 32767 | -| test.c:848:7:848:7 | n | 32767 | -| test.c:849:9:849:9 | n | 32767 | -| test.c:851:9:851:9 | n | 0 | -| test.c:854:10:854:10 | n | 32767 | -| test.c:855:5:855:5 | n | 32767 | -| test.c:858:7:858:7 | n | 0 | -| test.c:862:7:862:7 | n | 32767 | -| test.c:863:9:863:9 | n | 32767 | -| test.c:864:11:864:11 | n | 32767 | -| test.c:868:7:868:7 | n | 32767 | -| test.c:869:13:869:13 | n | 32767 | -| test.c:872:9:872:9 | n | 32767 | -| test.c:875:7:875:7 | n | 32767 | -| test.c:875:22:875:22 | n | 32767 | -| test.c:876:9:876:9 | n | 32767 | -| test.c:879:7:879:7 | n | 32767 | -| test.c:880:5:880:5 | n | 32767 | -| test.c:880:10:880:10 | n | 32767 | -| test.c:880:14:880:14 | n | 0 | -| test.c:881:6:881:6 | n | 32767 | -| test.c:881:10:881:10 | n | 0 | -| test.c:881:14:881:14 | n | 32767 | -| test.c:892:7:892:8 | ss | 32767 | -| test.c:893:9:893:10 | ss | 3 | -| test.c:896:7:896:8 | ss | 32767 | -| test.c:897:9:897:10 | ss | 32767 | -| test.c:900:14:900:15 | us | 65535 | -| test.c:901:9:901:10 | us | 32767 | -| test.c:904:14:904:15 | us | 65535 | -| test.c:905:9:905:10 | us | 65535 | -| test.c:908:7:908:8 | ss | 32767 | -| test.c:909:9:909:10 | ss | 32767 | -| test.c:912:7:912:8 | ss | 32767 | -| test.c:913:9:913:10 | ss | 2 | -| test.c:919:8:919:8 | s | 2147483647 | -| test.c:919:15:919:15 | s | 127 | -| test.c:919:23:919:23 | s | 9 | -| test.c:920:18:920:18 | s | 9 | -| test.c:920:22:920:22 | s | 9 | -| test.c:921:9:921:14 | result | 127 | -| test.c:927:7:927:7 | i | 0 | -| test.c:928:9:928:9 | i | 2147483647 | -| test.c:932:7:932:7 | u | 0 | -| test.c:933:9:933:9 | u | 4294967295 | -| test.c:938:12:938:12 | s | 2147483647 | -| test.c:939:7:939:8 | s2 | 4 | -| test.c:944:7:944:7 | x | 2147483647 | -| test.c:945:9:945:9 | y | 2147483647 | -| test.c:949:7:949:7 | y | 2147483647 | -| test.c:958:7:958:7 | x | 2147483647 | -| test.c:963:7:963:7 | x | 15 | -| test.c:970:8:970:8 | x | 2147483647 | -| test.c:970:12:970:12 | y | 256 | -| test.c:971:9:971:9 | x | 2147483647 | -| test.c:972:9:972:9 | y | 256 | -| test.cpp:10:7:10:7 | b | 2147483647 | -| test.cpp:11:5:11:5 | x | 2147483647 | -| test.cpp:13:10:13:10 | x | 2147483647 | -| test.cpp:18:30:18:30 | x | 2147483647 | -| test.cpp:19:10:19:11 | x0 | 127 | -| test.cpp:27:7:27:7 | y | 2147483647 | -| test.cpp:28:5:28:5 | x | 2147483647 | -| test.cpp:30:7:30:7 | y | 2147483647 | -| test.cpp:31:5:31:5 | x | 2147483647 | -| test.cpp:33:7:33:7 | y | 2147483647 | -| test.cpp:34:5:34:5 | x | 2147483647 | -| test.cpp:36:7:36:7 | y | 2147483647 | -| test.cpp:37:5:37:5 | x | 2147483647 | -| test.cpp:39:7:39:7 | y | 2147483647 | -| test.cpp:40:5:40:5 | x | 2147483647 | -| test.cpp:42:7:42:7 | y | 2147483647 | -| test.cpp:43:5:43:5 | x | 2147483647 | -| test.cpp:45:7:45:7 | y | 2147483647 | -| test.cpp:46:5:46:5 | x | 2147483647 | -| test.cpp:51:7:51:7 | x | 2147483647 | -| test.cpp:52:21:52:21 | x | 0 | -| test.cpp:53:5:53:5 | t | 0 | -| test.cpp:53:15:53:16 | xb | 0 | -| test.cpp:56:7:56:7 | x | 2147483647 | -| test.cpp:57:21:57:21 | x | 2147483647 | -| test.cpp:58:5:58:5 | t | 0 | -| test.cpp:58:15:58:16 | xb | 1 | -| test.cpp:61:7:61:7 | x | 2147483647 | -| test.cpp:62:21:62:21 | x | -1 | -| test.cpp:63:5:63:5 | t | 1 | -| test.cpp:63:15:63:16 | xb | 1 | -| test.cpp:66:19:66:19 | x | 2147483647 | -| test.cpp:67:3:67:3 | t | 2 | -| test.cpp:67:13:67:14 | xb | 1 | -| test.cpp:69:10:69:10 | b | 1 | -| test.cpp:69:21:69:21 | t | 3 | -| test.cpp:74:30:74:30 | c | 255 | -| test.cpp:74:34:74:34 | c | 255 | -| test.cpp:75:22:75:30 | c_times_2 | 510 | -| test.cpp:77:5:77:13 | c_times_2 | 510 | -| test.cpp:79:3:79:11 | c_times_2 | 510 | -| test.cpp:83:16:83:22 | aliased | 2147483647 | -| test.cpp:85:7:85:7 | i | 2147483647 | -| test.cpp:86:12:86:12 | i | 2147483647 | -| test.cpp:88:7:88:8 | ci | 2147483647 | -| test.cpp:89:12:89:13 | ci | 2147483647 | -| test.cpp:91:7:91:13 | aliased | 2147483647 | -| test.cpp:92:12:92:18 | aliased | 2147483647 | -| test.cpp:94:7:94:11 | alias | 2147483647 | -| test.cpp:95:12:95:16 | alias | 2147483647 | -| test.cpp:97:10:97:10 | i | 65535 | -| test.cpp:97:22:97:22 | i | 32767 | -| test.cpp:98:5:98:5 | i | 2147483647 | -| test.cpp:98:9:98:9 | i | 12345 | -| test.cpp:99:5:99:5 | i | 32767 | -| test.cpp:106:7:106:7 | n | 32767 | -| test.cpp:109:7:109:7 | n | 32767 | -| test.cpp:110:5:110:5 | n | 32767 | -| test.cpp:112:5:112:5 | n | 0 | -| test.cpp:115:8:115:8 | n | 32767 | -| test.cpp:116:5:116:5 | n | 0 | -| test.cpp:118:5:118:5 | n | 32767 | -| test.cpp:121:3:121:3 | n | 32767 | -| test.cpp:121:8:121:8 | n | 32767 | -| test.cpp:121:12:121:12 | n | 0 | -| test.cpp:122:4:122:4 | n | 32767 | -| test.cpp:122:8:122:8 | n | 0 | -| test.cpp:122:12:122:12 | n | 32767 | +Timeout (5m0s) in SimpleRangeAnalysis::getBounds/2#ad6ae182 etc From 2dc91a56eb0c8869737e4c615dbc58f5098a3ec1 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Wed, 11 Feb 2026 17:10:20 +0000 Subject: [PATCH 401/433] C++: Lower the treshold for max number of bounds to 2^29. --- .../cpp/rangeanalysis/SimpleRangeAnalysis.qll | 2 +- .../SimpleRangeAnalysis/lowerBound.expected | 1157 ++++++++++++++++- .../SimpleRangeAnalysis/ternaryLower.expected | 154 ++- .../SimpleRangeAnalysis/ternaryUpper.expected | 154 ++- .../SimpleRangeAnalysis/upperBound.expected | 1157 ++++++++++++++++- 5 files changed, 2619 insertions(+), 5 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll index c3c3c2dd3e7e..19bed4c97229 100644 --- a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll +++ b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll @@ -513,7 +513,7 @@ private module BoundsEstimate { float getBoundsLimit() { // This limit is arbitrary, but low enough that it prevents timeouts on // specific observed customer databases (and the in the tests). - result = 2.0.pow(40) + result = 2.0.pow(29) } /** Gets the maximum number of bounds possible for `t` when widening is used. */ diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected index 5673f0fdd303..d1daa65e0f02 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected @@ -1 +1,1156 @@ -Timeout (5m0s) in SimpleRangeAnalysis::getBounds/2#ad6ae182 etc +| inline_assembly.c:10:3:10:3 | y | 0 | +| inline_assembly.c:12:29:12:29 | x | 0 | +| inline_assembly.c:12:32:12:32 | y | 1 | +| inline_assembly.c:16:25:16:25 | x | 0 | +| inline_assembly.c:16:35:16:35 | y | 1 | +| inline_assembly.c:21:29:21:29 | x | 0 | +| inline_assembly.c:21:32:21:32 | y | 0 | +| minmax.c:18:37:18:37 | x | 1 | +| minmax.c:18:40:18:40 | y | 2 | +| minmax.c:18:43:18:43 | z | 3 | +| minmax.c:20:2:20:2 | z | -2147483648 | +| minmax.c:22:8:22:8 | x | 1 | +| minmax.c:22:14:22:14 | y | 2 | +| minmax.c:22:18:22:18 | t | -2147483648 | +| minmax.c:22:22:22:22 | x | 1 | +| minmax.c:23:3:23:3 | t | 0 | +| minmax.c:26:37:26:37 | x | 1 | +| minmax.c:26:40:26:40 | y | 2 | +| minmax.c:26:43:26:43 | z | 0 | +| missing_bounds.cpp:40:5:40:20 | x | 0 | +| missing_bounds.cpp:40:5:40:20 | x | 0 | +| missing_bounds.cpp:41:5:41:20 | x | 0 | +| missing_bounds.cpp:41:5:41:20 | x | 0 | +| missing_bounds.cpp:42:5:42:20 | x | 0 | +| missing_bounds.cpp:42:5:42:20 | x | 0 | +| missing_bounds.cpp:43:5:43:20 | x | 0 | +| missing_bounds.cpp:43:5:43:20 | x | 0 | +| missing_bounds.cpp:44:5:44:20 | x | 0 | +| missing_bounds.cpp:44:5:44:20 | x | 0 | +| missing_bounds.cpp:45:5:45:20 | x | 0 | +| missing_bounds.cpp:45:5:45:20 | x | 0 | +| missing_bounds.cpp:46:5:46:20 | x | 0 | +| missing_bounds.cpp:46:5:46:20 | x | 0 | +| missing_bounds.cpp:47:5:47:20 | x | 0 | +| missing_bounds.cpp:47:5:47:20 | x | 0 | +| missing_bounds.cpp:48:5:48:20 | x | 0 | +| missing_bounds.cpp:48:5:48:20 | x | 0 | +| missing_bounds.cpp:49:5:49:20 | x | 0 | +| missing_bounds.cpp:49:5:49:20 | x | 0 | +| missing_bounds.cpp:50:5:50:20 | x | 0 | +| missing_bounds.cpp:50:5:50:20 | x | 0 | +| missing_bounds.cpp:51:5:51:20 | x | 0 | +| missing_bounds.cpp:51:5:51:20 | x | 0 | +| missing_bounds.cpp:52:5:52:20 | x | 0 | +| missing_bounds.cpp:52:5:52:20 | x | 0 | +| missing_bounds.cpp:53:5:53:20 | x | 0 | +| missing_bounds.cpp:53:5:53:20 | x | 0 | +| missing_bounds.cpp:54:5:54:20 | x | 0 | +| missing_bounds.cpp:54:5:54:20 | x | 0 | +| missing_bounds.cpp:55:5:55:20 | x | 0 | +| missing_bounds.cpp:55:5:55:20 | x | 0 | +| missing_bounds.cpp:56:5:56:20 | x | 0 | +| missing_bounds.cpp:56:5:56:20 | x | 0 | +| missing_bounds.cpp:57:5:57:20 | x | 0 | +| missing_bounds.cpp:57:5:57:20 | x | 0 | +| missing_bounds.cpp:58:5:58:20 | x | 0 | +| missing_bounds.cpp:58:5:58:20 | x | 0 | +| missing_bounds.cpp:59:5:59:20 | x | 0 | +| missing_bounds.cpp:59:5:59:20 | x | 0 | +| missing_bounds.cpp:60:5:60:20 | x | 0 | +| missing_bounds.cpp:60:5:60:20 | x | 0 | +| missing_bounds.cpp:61:5:61:20 | x | 0 | +| missing_bounds.cpp:61:5:61:20 | x | 0 | +| missing_bounds.cpp:62:5:62:20 | x | 0 | +| missing_bounds.cpp:62:5:62:20 | x | 0 | +| missing_bounds.cpp:63:5:63:20 | x | 0 | +| missing_bounds.cpp:63:5:63:20 | x | 0 | +| missing_bounds.cpp:64:5:64:20 | x | 0 | +| missing_bounds.cpp:64:5:64:20 | x | 0 | +| missing_bounds.cpp:65:5:65:21 | x | 0 | +| missing_bounds.cpp:65:5:65:21 | x | 0 | +| missing_bounds.cpp:66:5:66:21 | x | 0 | +| missing_bounds.cpp:66:5:66:21 | x | 0 | +| missing_bounds.cpp:67:5:67:21 | x | 0 | +| missing_bounds.cpp:67:5:67:21 | x | 0 | +| missing_bounds.cpp:68:5:68:21 | x | 0 | +| missing_bounds.cpp:68:5:68:21 | x | 0 | +| missing_bounds.cpp:69:5:69:21 | x | 0 | +| missing_bounds.cpp:69:5:69:21 | x | 0 | +| missing_bounds.cpp:72:12:72:12 | x | 0 | +| test.c:8:5:8:9 | count | -2147483648 | +| test.c:8:13:8:17 | count | -2147483648 | +| test.c:10:10:10:14 | count | -2147483648 | +| test.c:16:5:16:9 | count | -2147483648 | +| test.c:16:14:16:18 | count | 0 | +| test.c:18:10:18:14 | count | 0 | +| test.c:24:5:24:9 | count | 0 | +| test.c:25:5:25:9 | count | -2147483648 | +| test.c:25:13:25:17 | count | 1 | +| test.c:27:10:27:14 | count | 0 | +| test.c:33:8:33:8 | i | -2147483648 | +| test.c:33:15:33:15 | i | 0 | +| test.c:33:22:33:22 | i | -2147483648 | +| test.c:33:26:33:26 | i | 0 | +| test.c:34:5:34:9 | total | -2147483648 | +| test.c:34:14:34:14 | i | 0 | +| test.c:36:10:36:14 | total | -2147483648 | +| test.c:36:18:36:18 | i | 2 | +| test.c:42:8:42:8 | i | -2147483648 | +| test.c:42:15:42:15 | i | 0 | +| test.c:42:22:42:22 | i | 0 | +| test.c:43:5:43:9 | total | -2147483648 | +| test.c:43:14:43:14 | i | 0 | +| test.c:45:10:45:14 | total | -2147483648 | +| test.c:45:18:45:18 | i | 2 | +| test.c:51:8:51:8 | i | -2147483648 | +| test.c:51:15:51:15 | i | 0 | +| test.c:51:24:51:24 | i | -2147483648 | +| test.c:51:28:51:28 | i | 0 | +| test.c:52:5:52:9 | total | -2147483648 | +| test.c:52:14:52:14 | i | 0 | +| test.c:54:10:54:14 | total | -2147483648 | +| test.c:54:18:54:18 | i | 2 | +| test.c:58:7:58:7 | i | -2147483648 | +| test.c:59:9:59:9 | i | -2147483648 | +| test.c:60:14:60:14 | i | -2147483648 | +| test.c:67:15:67:15 | y | -2147483648 | +| test.c:67:20:67:20 | y | -999 | +| test.c:68:9:68:9 | x | -2147483648 | +| test.c:68:13:68:13 | y | -999 | +| test.c:69:14:69:14 | x | -2147483648 | +| test.c:72:10:72:10 | y | -2147483648 | +| test.c:76:7:76:7 | y | -2147483648 | +| test.c:77:9:77:9 | x | -2147483648 | +| test.c:81:9:81:9 | x | -2147483648 | +| test.c:85:10:85:10 | x | 4 | +| test.c:89:7:89:7 | y | -2147483648 | +| test.c:90:9:90:9 | x | -2147483648 | +| test.c:90:13:90:13 | y | 8 | +| test.c:93:12:93:12 | x | 8 | +| test.c:100:3:100:3 | c | -128 | +| test.c:101:7:101:7 | c | -128 | +| test.c:104:7:104:7 | c | -128 | +| test.c:105:5:105:5 | c | -128 | +| test.c:106:9:106:9 | c | -128 | +| test.c:109:9:109:9 | c | -128 | +| test.c:119:10:119:10 | n | 0 | +| test.c:124:11:124:15 | Start | 0 | +| test.c:127:6:127:10 | Start | 0 | +| test.c:127:15:127:20 | Length | 0 | +| test.c:135:22:135:22 | c | -128 | +| test.c:137:20:137:20 | x | 0 | +| test.c:138:11:138:11 | i | -2147483648 | +| test.c:139:19:139:19 | c | -128 | +| test.c:139:23:139:23 | i | -2147483648 | +| test.c:139:27:139:28 | uc | 0 | +| test.c:139:32:139:32 | x | 0 | +| test.c:139:36:139:36 | y | 0 | +| test.c:139:40:139:40 | z | -2147483648 | +| test.c:144:23:144:23 | x | -2147483648 | +| test.c:145:32:145:32 | x | -2147483648 | +| test.c:146:33:146:33 | x | -2147483648 | +| test.c:147:31:147:31 | x | -2147483648 | +| test.c:148:13:148:13 | x | -2147483648 | +| test.c:149:23:149:23 | x | -2147483648 | +| test.c:150:10:150:11 | x0 | -128 | +| test.c:150:15:150:16 | x1 | 0 | +| test.c:150:20:150:21 | x2 | 0 | +| test.c:150:25:150:26 | x3 | -2147483648 | +| test.c:150:30:150:31 | c0 | -128 | +| test.c:150:35:150:36 | s0 | 0 | +| test.c:154:11:154:11 | x | -9223372036854775808 | +| test.c:154:20:154:20 | x | 1 | +| test.c:154:30:154:30 | x | 1 | +| test.c:154:35:154:35 | x | 1 | +| test.c:161:12:161:12 | a | -2147483648 | +| test.c:161:17:161:17 | a | 3 | +| test.c:162:14:162:14 | a | 3 | +| test.c:163:14:163:14 | a | 3 | +| test.c:164:5:164:9 | total | 0 | +| test.c:164:14:164:14 | b | 3 | +| test.c:164:16:164:16 | c | -11 | +| test.c:166:12:166:12 | a | -2147483648 | +| test.c:166:17:166:17 | a | 0 | +| test.c:167:14:167:14 | a | 0 | +| test.c:168:14:168:14 | a | 0 | +| test.c:169:5:169:9 | total | -8 | +| test.c:169:14:169:14 | b | 0 | +| test.c:169:16:169:16 | c | -11 | +| test.c:171:13:171:13 | a | -2147483648 | +| test.c:171:18:171:18 | a | -7 | +| test.c:172:14:172:14 | a | -7 | +| test.c:173:14:173:14 | a | -7 | +| test.c:174:5:174:9 | total | -19 | +| test.c:174:14:174:14 | b | -7 | +| test.c:174:16:174:16 | c | -11 | +| test.c:176:13:176:13 | a | -2147483648 | +| test.c:176:18:176:18 | a | -7 | +| test.c:177:14:177:14 | a | -7 | +| test.c:178:14:178:14 | a | -7 | +| test.c:179:5:179:9 | total | -37 | +| test.c:179:14:179:14 | b | -7 | +| test.c:179:16:179:16 | c | -1 | +| test.c:181:13:181:13 | a | -2147483648 | +| test.c:181:18:181:18 | a | -7 | +| test.c:182:14:182:14 | a | -7 | +| test.c:183:14:183:14 | a | -7 | +| test.c:184:5:184:9 | total | -45 | +| test.c:184:14:184:14 | b | -7 | +| test.c:184:16:184:16 | c | 0 | +| test.c:186:13:186:13 | a | -2147483648 | +| test.c:186:18:186:18 | a | -7 | +| test.c:187:14:187:14 | a | -7 | +| test.c:188:14:188:14 | a | -7 | +| test.c:189:5:189:9 | total | -52 | +| test.c:189:14:189:14 | b | -7 | +| test.c:189:16:189:16 | c | 2 | +| test.c:192:10:192:14 | total | -57 | +| test.c:200:12:200:12 | a | -2147483648 | +| test.c:200:17:200:17 | a | 3 | +| test.c:200:33:200:33 | b | -2147483648 | +| test.c:200:38:200:38 | b | 5 | +| test.c:201:13:201:13 | a | 3 | +| test.c:201:15:201:15 | b | 5 | +| test.c:202:5:202:9 | total | 0 | +| test.c:202:14:202:14 | r | -2147483648 | +| test.c:204:12:204:12 | a | -2147483648 | +| test.c:204:17:204:17 | a | 3 | +| test.c:204:33:204:33 | b | -2147483648 | +| test.c:204:38:204:38 | b | 0 | +| test.c:205:13:205:13 | a | 3 | +| test.c:205:15:205:15 | b | 0 | +| test.c:206:5:206:9 | total | -2147483648 | +| test.c:206:14:206:14 | r | -2147483648 | +| test.c:208:12:208:12 | a | -2147483648 | +| test.c:208:17:208:17 | a | 3 | +| test.c:208:35:208:35 | b | -2147483648 | +| test.c:208:40:208:40 | b | -13 | +| test.c:209:13:209:13 | a | 3 | +| test.c:209:15:209:15 | b | -13 | +| test.c:210:5:210:9 | total | -2147483648 | +| test.c:210:14:210:14 | r | -2147483648 | +| test.c:212:12:212:12 | a | -2147483648 | +| test.c:212:17:212:17 | a | 3 | +| test.c:212:35:212:35 | b | -2147483648 | +| test.c:212:40:212:40 | b | -13 | +| test.c:213:13:213:13 | a | 3 | +| test.c:213:15:213:15 | b | -13 | +| test.c:214:5:214:9 | total | -2147483648 | +| test.c:214:14:214:14 | r | -2147483648 | +| test.c:216:12:216:12 | a | -2147483648 | +| test.c:216:17:216:17 | a | 3 | +| test.c:216:35:216:35 | b | -2147483648 | +| test.c:216:40:216:40 | b | -13 | +| test.c:217:13:217:13 | a | 3 | +| test.c:217:15:217:15 | b | -13 | +| test.c:218:5:218:9 | total | -2147483648 | +| test.c:218:14:218:14 | r | -2147483648 | +| test.c:221:10:221:14 | total | -2147483648 | +| test.c:228:12:228:12 | a | -2147483648 | +| test.c:228:17:228:17 | a | 0 | +| test.c:228:33:228:33 | b | -2147483648 | +| test.c:228:38:228:38 | b | 5 | +| test.c:229:13:229:13 | a | 0 | +| test.c:229:15:229:15 | b | 5 | +| test.c:230:5:230:9 | total | 0 | +| test.c:230:14:230:14 | r | -2147483648 | +| test.c:232:12:232:12 | a | -2147483648 | +| test.c:232:17:232:17 | a | 0 | +| test.c:232:33:232:33 | b | -2147483648 | +| test.c:232:38:232:38 | b | 0 | +| test.c:233:13:233:13 | a | 0 | +| test.c:233:15:233:15 | b | 0 | +| test.c:234:5:234:9 | total | -2147483648 | +| test.c:234:14:234:14 | r | -2147483648 | +| test.c:236:12:236:12 | a | -2147483648 | +| test.c:236:17:236:17 | a | 0 | +| test.c:236:35:236:35 | b | -2147483648 | +| test.c:236:40:236:40 | b | -13 | +| test.c:237:13:237:13 | a | 0 | +| test.c:237:15:237:15 | b | -13 | +| test.c:238:5:238:9 | total | -2147483648 | +| test.c:238:14:238:14 | r | -2147483648 | +| test.c:240:12:240:12 | a | -2147483648 | +| test.c:240:17:240:17 | a | 0 | +| test.c:240:35:240:35 | b | -2147483648 | +| test.c:240:40:240:40 | b | -13 | +| test.c:241:13:241:13 | a | 0 | +| test.c:241:15:241:15 | b | -13 | +| test.c:242:5:242:9 | total | -2147483648 | +| test.c:242:14:242:14 | r | -2147483648 | +| test.c:244:12:244:12 | a | -2147483648 | +| test.c:244:17:244:17 | a | 0 | +| test.c:244:35:244:35 | b | -2147483648 | +| test.c:244:40:244:40 | b | -13 | +| test.c:245:13:245:13 | a | 0 | +| test.c:245:15:245:15 | b | -13 | +| test.c:246:5:246:9 | total | -2147483648 | +| test.c:246:14:246:14 | r | -2147483648 | +| test.c:249:10:249:14 | total | -2147483648 | +| test.c:256:14:256:14 | a | -2147483648 | +| test.c:256:19:256:19 | a | -17 | +| test.c:256:35:256:35 | b | -2147483648 | +| test.c:256:40:256:40 | b | 5 | +| test.c:257:13:257:13 | a | -17 | +| test.c:257:15:257:15 | b | 5 | +| test.c:258:5:258:9 | total | 0 | +| test.c:258:14:258:14 | r | -2147483648 | +| test.c:260:14:260:14 | a | -2147483648 | +| test.c:260:19:260:19 | a | -17 | +| test.c:260:35:260:35 | b | -2147483648 | +| test.c:260:40:260:40 | b | 0 | +| test.c:261:13:261:13 | a | -17 | +| test.c:261:15:261:15 | b | 0 | +| test.c:262:5:262:9 | total | -2147483648 | +| test.c:262:14:262:14 | r | -2147483648 | +| test.c:264:14:264:14 | a | -2147483648 | +| test.c:264:19:264:19 | a | -17 | +| test.c:264:37:264:37 | b | -2147483648 | +| test.c:264:42:264:42 | b | -13 | +| test.c:265:13:265:13 | a | -17 | +| test.c:265:15:265:15 | b | -13 | +| test.c:266:5:266:9 | total | -2147483648 | +| test.c:266:14:266:14 | r | -2147483648 | +| test.c:268:14:268:14 | a | -2147483648 | +| test.c:268:19:268:19 | a | -17 | +| test.c:268:37:268:37 | b | -2147483648 | +| test.c:268:42:268:42 | b | -13 | +| test.c:269:13:269:13 | a | -17 | +| test.c:269:15:269:15 | b | -13 | +| test.c:270:5:270:9 | total | -2147483648 | +| test.c:270:14:270:14 | r | -2147483648 | +| test.c:272:14:272:14 | a | -2147483648 | +| test.c:272:19:272:19 | a | -17 | +| test.c:272:37:272:37 | b | -2147483648 | +| test.c:272:42:272:42 | b | -13 | +| test.c:273:13:273:13 | a | -17 | +| test.c:273:15:273:15 | b | -13 | +| test.c:274:5:274:9 | total | -2147483648 | +| test.c:274:14:274:14 | r | -2147483648 | +| test.c:277:10:277:14 | total | -2147483648 | +| test.c:284:14:284:14 | a | -2147483648 | +| test.c:284:19:284:19 | a | -17 | +| test.c:284:34:284:34 | b | -2147483648 | +| test.c:284:39:284:39 | b | 5 | +| test.c:285:13:285:13 | a | -17 | +| test.c:285:15:285:15 | b | 5 | +| test.c:286:5:286:9 | total | 0 | +| test.c:286:14:286:14 | r | -2147483648 | +| test.c:288:14:288:14 | a | -2147483648 | +| test.c:288:19:288:19 | a | -17 | +| test.c:288:34:288:34 | b | -2147483648 | +| test.c:288:39:288:39 | b | 0 | +| test.c:289:13:289:13 | a | -17 | +| test.c:289:15:289:15 | b | 0 | +| test.c:290:5:290:9 | total | -2147483648 | +| test.c:290:14:290:14 | r | -2147483648 | +| test.c:292:14:292:14 | a | -2147483648 | +| test.c:292:19:292:19 | a | -17 | +| test.c:292:36:292:36 | b | -2147483648 | +| test.c:292:41:292:41 | b | -13 | +| test.c:293:13:293:13 | a | -17 | +| test.c:293:15:293:15 | b | -13 | +| test.c:294:5:294:9 | total | -2147483648 | +| test.c:294:14:294:14 | r | -2147483648 | +| test.c:296:14:296:14 | a | -2147483648 | +| test.c:296:19:296:19 | a | -17 | +| test.c:296:36:296:36 | b | -2147483648 | +| test.c:296:41:296:41 | b | -13 | +| test.c:297:13:297:13 | a | -17 | +| test.c:297:15:297:15 | b | -13 | +| test.c:298:5:298:9 | total | -2147483648 | +| test.c:298:14:298:14 | r | -2147483648 | +| test.c:300:14:300:14 | a | -2147483648 | +| test.c:300:19:300:19 | a | -17 | +| test.c:300:36:300:36 | b | -2147483648 | +| test.c:300:41:300:41 | b | -13 | +| test.c:301:13:301:13 | a | -17 | +| test.c:301:15:301:15 | b | -13 | +| test.c:302:5:302:9 | total | -2147483648 | +| test.c:302:14:302:14 | r | -2147483648 | +| test.c:305:10:305:14 | total | -2147483648 | +| test.c:312:14:312:14 | a | -2147483648 | +| test.c:312:19:312:19 | a | -17 | +| test.c:312:35:312:35 | b | -2147483648 | +| test.c:312:40:312:40 | b | 5 | +| test.c:313:13:313:13 | a | -17 | +| test.c:313:15:313:15 | b | 5 | +| test.c:314:5:314:9 | total | 0 | +| test.c:314:14:314:14 | r | -2147483648 | +| test.c:316:14:316:14 | a | -2147483648 | +| test.c:316:19:316:19 | a | -17 | +| test.c:316:35:316:35 | b | -2147483648 | +| test.c:316:40:316:40 | b | 0 | +| test.c:317:13:317:13 | a | -17 | +| test.c:317:15:317:15 | b | 0 | +| test.c:318:5:318:9 | total | -2147483648 | +| test.c:318:14:318:14 | r | -2147483648 | +| test.c:320:14:320:14 | a | -2147483648 | +| test.c:320:19:320:19 | a | -17 | +| test.c:320:37:320:37 | b | -2147483648 | +| test.c:320:42:320:42 | b | -13 | +| test.c:321:13:321:13 | a | -17 | +| test.c:321:15:321:15 | b | -13 | +| test.c:322:5:322:9 | total | -2147483648 | +| test.c:322:14:322:14 | r | -2147483648 | +| test.c:324:14:324:14 | a | -2147483648 | +| test.c:324:19:324:19 | a | -17 | +| test.c:324:37:324:37 | b | -2147483648 | +| test.c:324:42:324:42 | b | -13 | +| test.c:325:13:325:13 | a | -17 | +| test.c:325:15:325:15 | b | -13 | +| test.c:326:5:326:9 | total | -2147483648 | +| test.c:326:14:326:14 | r | -2147483648 | +| test.c:328:14:328:14 | a | -2147483648 | +| test.c:328:19:328:19 | a | -17 | +| test.c:328:37:328:37 | b | -2147483648 | +| test.c:328:42:328:42 | b | -13 | +| test.c:329:13:329:13 | a | -17 | +| test.c:329:15:329:15 | b | -13 | +| test.c:330:5:330:9 | total | -2147483648 | +| test.c:330:14:330:14 | r | -2147483648 | +| test.c:333:10:333:14 | total | -2147483648 | +| test.c:341:32:341:34 | odd | 9007199254740991 | +| test.c:343:10:343:16 | shifted | 4503599627370495 | +| test.c:348:27:348:27 | e | 0 | +| test.c:348:40:348:40 | e | 0 | +| test.c:349:25:349:25 | e | 0 | +| test.c:349:39:349:39 | e | 0 | +| test.c:350:27:350:27 | e | 0 | +| test.c:350:40:350:40 | e | 0 | +| test.c:351:27:351:27 | e | 0 | +| test.c:351:40:351:40 | e | 0 | +| test.c:352:27:352:27 | e | 0 | +| test.c:352:41:352:41 | e | 8 | +| test.c:354:10:354:12 | bi1 | 0 | +| test.c:354:16:354:18 | bi2 | 0 | +| test.c:354:22:354:24 | bi3 | 0 | +| test.c:354:28:354:30 | bi4 | 0 | +| test.c:354:34:354:36 | bi5 | 2 | +| test.c:359:7:359:7 | x | -2147483648 | +| test.c:363:10:363:10 | i | 0 | +| test.c:364:5:364:5 | i | 0 | +| test.c:366:3:366:3 | d | -2147483648 | +| test.c:366:7:366:7 | i | 3 | +| test.c:367:7:367:7 | x | 0 | +| test.c:368:9:368:9 | d | 3 | +| test.c:368:14:368:14 | x | 0 | +| test.c:378:3:378:4 | y1 | 0 | +| test.c:378:8:378:8 | x | 0 | +| test.c:378:18:378:18 | x | 0 | +| test.c:379:3:379:4 | y2 | 0 | +| test.c:379:8:379:8 | x | 0 | +| test.c:379:24:379:24 | x | 0 | +| test.c:380:3:380:4 | y3 | 0 | +| test.c:381:3:381:4 | y4 | 0 | +| test.c:382:3:382:4 | y5 | 0 | +| test.c:383:3:383:4 | y6 | 0 | +| test.c:384:3:384:4 | y7 | 0 | +| test.c:385:3:385:4 | y8 | 0 | +| test.c:386:7:386:7 | x | 0 | +| test.c:387:5:387:6 | y3 | 0 | +| test.c:387:10:387:10 | x | 0 | +| test.c:388:5:388:6 | y4 | 0 | +| test.c:388:10:388:10 | x | 0 | +| test.c:389:5:389:6 | y5 | 0 | +| test.c:389:11:389:11 | x | 0 | +| test.c:390:5:390:6 | y6 | 0 | +| test.c:390:27:390:27 | x | 0 | +| test.c:391:5:391:6 | y7 | 0 | +| test.c:391:27:391:27 | x | 0 | +| test.c:392:5:392:6 | y8 | 0 | +| test.c:392:28:392:28 | x | 0 | +| test.c:394:10:394:11 | y1 | 0 | +| test.c:394:15:394:16 | y2 | 0 | +| test.c:394:20:394:21 | y3 | 0 | +| test.c:394:25:394:26 | y4 | 0 | +| test.c:394:30:394:31 | y5 | 0 | +| test.c:394:35:394:36 | y6 | 0 | +| test.c:394:40:394:41 | y7 | 0 | +| test.c:394:45:394:46 | y8 | 0 | +| test.c:400:3:400:4 | y1 | 0 | +| test.c:400:8:400:8 | x | 0 | +| test.c:400:18:400:18 | x | 101 | +| test.c:401:3:401:4 | y2 | 0 | +| test.c:401:8:401:8 | x | 0 | +| test.c:401:25:401:25 | x | 101 | +| test.c:402:3:402:4 | y3 | 0 | +| test.c:403:3:403:4 | y4 | 0 | +| test.c:404:3:404:4 | y5 | 0 | +| test.c:405:7:405:7 | x | 0 | +| test.c:406:5:406:6 | y3 | 0 | +| test.c:406:11:406:11 | x | 300 | +| test.c:407:5:407:6 | y4 | 0 | +| test.c:407:11:407:11 | x | 300 | +| test.c:408:5:408:6 | y5 | 0 | +| test.c:408:27:408:27 | x | 300 | +| test.c:410:10:410:11 | y1 | 101 | +| test.c:410:15:410:16 | y2 | 101 | +| test.c:410:20:410:21 | y3 | 0 | +| test.c:410:25:410:26 | y4 | 100 | +| test.c:410:30:410:31 | y5 | 0 | +| test.c:415:14:415:14 | m | -Infinity | +| test.c:415:18:415:18 | n | -Infinity | +| test.c:415:22:415:22 | o | -Infinity | +| test.c:415:26:415:26 | p | -Infinity | +| test.c:415:30:415:30 | q | -Infinity | +| test.c:416:14:416:14 | m | -Infinity | +| test.c:416:18:416:18 | n | -Infinity | +| test.c:416:22:416:22 | o | -Infinity | +| test.c:416:26:416:26 | p | -Infinity | +| test.c:416:30:416:30 | q | -Infinity | +| test.c:417:14:417:14 | m | -Infinity | +| test.c:417:18:417:18 | n | -Infinity | +| test.c:417:22:417:22 | o | -Infinity | +| test.c:417:26:417:26 | p | -Infinity | +| test.c:417:30:417:30 | q | -Infinity | +| test.c:418:14:418:14 | m | -Infinity | +| test.c:418:18:418:18 | n | -Infinity | +| test.c:418:22:418:22 | o | -Infinity | +| test.c:418:26:418:26 | p | -Infinity | +| test.c:418:30:418:30 | q | -Infinity | +| test.c:419:14:419:14 | m | -Infinity | +| test.c:419:18:419:18 | n | -Infinity | +| test.c:419:22:419:22 | o | -Infinity | +| test.c:419:26:419:26 | p | -Infinity | +| test.c:419:30:419:30 | q | -Infinity | +| test.c:420:14:420:14 | m | -Infinity | +| test.c:420:18:420:18 | n | -Infinity | +| test.c:420:22:420:22 | o | -Infinity | +| test.c:420:26:420:26 | p | -Infinity | +| test.c:420:30:420:30 | q | -Infinity | +| test.c:421:14:421:14 | m | -Infinity | +| test.c:421:18:421:18 | n | -Infinity | +| test.c:421:22:421:22 | o | -Infinity | +| test.c:421:26:421:26 | p | -Infinity | +| test.c:421:30:421:30 | q | -Infinity | +| test.c:422:14:422:14 | m | -Infinity | +| test.c:422:18:422:18 | n | -Infinity | +| test.c:422:22:422:22 | o | -Infinity | +| test.c:422:26:422:26 | p | -Infinity | +| test.c:422:30:422:30 | q | -Infinity | +| test.c:423:14:423:14 | m | -Infinity | +| test.c:423:18:423:18 | n | -Infinity | +| test.c:423:22:423:22 | o | -Infinity | +| test.c:423:26:423:26 | p | -Infinity | +| test.c:423:30:423:30 | q | -Infinity | +| test.c:424:14:424:14 | m | -Infinity | +| test.c:424:18:424:18 | n | -Infinity | +| test.c:424:22:424:22 | o | -Infinity | +| test.c:424:26:424:26 | p | -Infinity | +| test.c:424:30:424:30 | q | -Infinity | +| test.c:425:14:425:14 | m | -Infinity | +| test.c:425:18:425:18 | n | -Infinity | +| test.c:425:22:425:22 | o | -Infinity | +| test.c:425:26:425:26 | p | -Infinity | +| test.c:425:30:425:30 | q | -Infinity | +| test.c:426:14:426:14 | m | -Infinity | +| test.c:426:18:426:18 | n | -Infinity | +| test.c:426:22:426:22 | o | -Infinity | +| test.c:426:26:426:26 | p | -Infinity | +| test.c:426:30:426:30 | q | -Infinity | +| test.c:432:19:432:19 | a | 0.143339 | +| test.c:432:23:432:23 | b | 0.222479 | +| test.c:432:27:432:27 | c | 0.051213 | +| test.c:432:31:432:31 | d | 0.369769 | +| test.c:432:35:432:35 | e | 0.105977 | +| test.c:432:39:432:39 | f | 0.107867 | +| test.c:432:43:432:43 | g | 0.025243 | +| test.c:432:47:432:47 | h | 0.149635 | +| test.c:432:51:432:51 | i | 0.053282 | +| test.c:432:55:432:55 | j | 0.276432 | +| test.c:432:59:432:59 | k | 0.205191 | +| test.c:432:63:432:63 | l | 0.132041 | +| test.c:434:10:434:15 | output | 1.842468 | +| test.c:441:7:441:9 | rhs | 0 | +| test.c:441:19:441:21 | rhs | 0 | +| test.c:442:7:442:9 | rhs | 0 | +| test.c:442:19:442:21 | rhs | 0 | +| test.c:443:7:443:9 | rhs | 0 | +| test.c:443:19:443:21 | rhs | 0 | +| test.c:444:7:444:9 | rhs | 0 | +| test.c:444:19:444:21 | rhs | 0 | +| test.c:445:7:445:9 | rhs | 0 | +| test.c:445:19:445:21 | rhs | 0 | +| test.c:446:10:446:12 | rhs | 0 | +| test.c:450:7:450:7 | a | -2147483648 | +| test.c:451:9:451:9 | b | -2147483648 | +| test.c:452:7:452:7 | a | 17 | +| test.c:452:12:452:12 | b | 23 | +| test.c:454:9:454:9 | a | 17 | +| test.c:455:7:455:7 | b | -2147483648 | +| test.c:460:11:460:11 | a | -2147483648 | +| test.c:460:15:460:15 | b | -2147483648 | +| test.c:461:10:461:10 | a | -2147483648 | +| test.c:461:14:461:14 | b | -2147483648 | +| test.c:468:10:468:11 | ip | 0 | +| test.c:468:20:468:21 | ip | 0 | +| test.c:468:40:468:41 | ip | 0 | +| test.c:469:14:469:15 | ip | 1 | +| test.c:470:14:470:15 | ip | 0 | +| test.c:470:34:470:35 | ip | 0 | +| test.c:471:11:471:12 | ip | 0 | +| test.c:472:13:472:14 | ip | 0 | +| test.c:473:14:473:15 | ip | 0 | +| test.c:474:14:474:15 | ip | 0 | +| test.c:475:15:475:16 | ip | 0 | +| test.c:475:41:475:42 | ip | 0 | +| test.c:475:52:475:53 | ip | 0 | +| test.c:475:67:475:68 | ip | 0 | +| test.c:475:78:475:79 | ip | 0 | +| test.c:476:18:476:19 | ip | 0 | +| test.c:477:23:477:24 | ip | 0 | +| test.c:477:34:477:35 | ip | 0 | +| test.c:478:25:478:26 | ip | 0 | +| test.c:479:20:479:21 | ip | 0 | +| test.c:480:11:480:12 | ip | 0 | +| test.c:480:26:480:27 | ip | 0 | +| test.c:481:16:481:17 | ip | 0 | +| test.c:482:16:482:17 | ip | 0 | +| test.c:483:16:483:17 | ip | 0 | +| test.c:484:17:484:18 | ip | 0 | +| test.c:485:22:485:23 | ip | 0 | +| test.c:485:33:485:34 | ip | 0 | +| test.c:485:48:485:49 | ip | 0 | +| test.c:485:59:485:60 | ip | 0 | +| test.c:486:20:486:21 | ip | 0 | +| test.c:487:25:487:26 | ip | 0 | +| test.c:487:36:487:37 | ip | 0 | +| test.c:488:27:488:28 | ip | 0 | +| test.c:489:22:489:23 | ip | 0 | +| test.c:490:15:490:16 | ip | 0 | +| test.c:490:30:490:31 | ip | 0 | +| test.c:491:11:491:12 | ip | 0 | +| test.c:492:12:492:13 | ip | 0 | +| test.c:493:12:493:13 | ip | 0 | +| test.c:494:13:494:14 | ip | 0 | +| test.c:494:39:494:40 | ip | 0 | +| test.c:494:50:494:51 | ip | 0 | +| test.c:494:65:494:66 | ip | 0 | +| test.c:494:76:494:77 | ip | 0 | +| test.c:495:16:495:17 | ip | 0 | +| test.c:496:21:496:22 | ip | 0 | +| test.c:496:32:496:33 | ip | 0 | +| test.c:497:23:497:24 | ip | 0 | +| test.c:498:18:498:19 | ip | 0 | +| test.c:499:11:499:12 | ip | 0 | +| test.c:499:17:499:18 | ip | 0 | +| test.c:499:37:499:38 | ip | 0 | +| test.c:499:43:499:44 | ip | 0 | +| test.c:500:14:500:15 | ip | 0 | +| test.c:501:14:501:15 | ip | 0 | +| test.c:502:14:502:15 | ip | 0 | +| test.c:503:15:503:16 | ip | 0 | +| test.c:503:41:503:42 | ip | 0 | +| test.c:503:52:503:53 | ip | 0 | +| test.c:503:67:503:68 | ip | 0 | +| test.c:503:78:503:79 | ip | 0 | +| test.c:504:18:504:19 | ip | 0 | +| test.c:505:23:505:24 | ip | 0 | +| test.c:505:34:505:35 | ip | 0 | +| test.c:506:25:506:26 | ip | 0 | +| test.c:507:20:507:21 | ip | 0 | +| test.c:508:14:508:15 | ip | 0 | +| test.c:508:20:508:21 | ip | 0 | +| test.c:509:16:509:17 | ip | 0 | +| test.c:510:12:510:13 | ip | 0 | +| test.c:511:14:511:15 | ip | 0 | +| test.c:512:15:512:16 | ip | 0 | +| test.c:513:16:513:17 | ip | 0 | +| test.c:514:16:514:17 | ip | 0 | +| test.c:515:17:515:18 | ip | 0 | +| test.c:516:22:516:23 | ip | 0 | +| test.c:516:33:516:34 | ip | 0 | +| test.c:516:48:516:49 | ip | 0 | +| test.c:516:59:516:60 | ip | 0 | +| test.c:517:20:517:21 | ip | 0 | +| test.c:518:25:518:26 | ip | 0 | +| test.c:518:36:518:37 | ip | 0 | +| test.c:519:27:519:28 | ip | 0 | +| test.c:520:22:520:23 | ip | 0 | +| test.c:521:13:521:14 | ip | 0 | +| test.c:521:28:521:29 | ip | 0 | +| test.c:522:18:522:19 | ip | 0 | +| test.c:523:18:523:19 | ip | 0 | +| test.c:524:18:524:19 | ip | 0 | +| test.c:525:19:525:20 | ip | 0 | +| test.c:526:24:526:25 | ip | 0 | +| test.c:526:35:526:36 | ip | 0 | +| test.c:526:50:526:51 | ip | 0 | +| test.c:526:61:526:62 | ip | 0 | +| test.c:527:22:527:23 | ip | 0 | +| test.c:528:27:528:28 | ip | 0 | +| test.c:528:38:528:39 | ip | 0 | +| test.c:529:29:529:30 | ip | 0 | +| test.c:530:24:530:25 | ip | 0 | +| test.c:531:17:531:18 | ip | 0 | +| test.c:531:32:531:33 | ip | 0 | +| test.c:532:14:532:15 | ip | 0 | +| test.c:533:18:533:19 | ip | 0 | +| test.c:534:18:534:19 | ip | 0 | +| test.c:535:19:535:20 | ip | 0 | +| test.c:536:24:536:25 | ip | 0 | +| test.c:536:35:536:36 | ip | 0 | +| test.c:536:50:536:51 | ip | 0 | +| test.c:536:61:536:62 | ip | 0 | +| test.c:537:22:537:23 | ip | 0 | +| test.c:538:27:538:28 | ip | 0 | +| test.c:538:38:538:39 | ip | 0 | +| test.c:539:29:539:30 | ip | 0 | +| test.c:540:24:540:25 | ip | 0 | +| test.c:541:17:541:18 | ip | 0 | +| test.c:541:23:541:24 | ip | 0 | +| test.c:541:43:541:44 | ip | 0 | +| test.c:541:49:541:50 | ip | 0 | +| test.c:542:16:542:17 | ip | 0 | +| test.c:543:16:543:17 | ip | 0 | +| test.c:544:16:544:17 | ip | 0 | +| test.c:545:17:545:18 | ip | 0 | +| test.c:546:22:546:23 | ip | 0 | +| test.c:546:33:546:34 | ip | 0 | +| test.c:546:48:546:49 | ip | 0 | +| test.c:546:59:546:60 | ip | 0 | +| test.c:547:20:547:21 | ip | 0 | +| test.c:548:25:548:26 | ip | 0 | +| test.c:548:36:548:37 | ip | 0 | +| test.c:549:27:549:28 | ip | 0 | +| test.c:550:22:550:23 | ip | 0 | +| test.c:551:16:551:17 | ip | 0 | +| test.c:551:22:551:23 | ip | 0 | +| test.c:552:18:552:19 | ip | 0 | +| test.c:553:14:553:15 | ip | 0 | +| test.c:554:14:554:15 | ip | 0 | +| test.c:554:24:554:25 | ip | 0 | +| test.c:554:44:554:45 | ip | 0 | +| test.c:555:16:555:17 | ip | 1 | +| test.c:556:16:556:17 | ip | 0 | +| test.c:556:36:556:37 | ip | 0 | +| test.c:557:14:557:15 | ip | 0 | +| test.c:558:19:558:20 | ip | 0 | +| test.c:559:20:559:21 | ip | 0 | +| test.c:560:20:560:21 | ip | 0 | +| test.c:561:21:561:22 | ip | 0 | +| test.c:562:26:562:27 | ip | 0 | +| test.c:562:37:562:38 | ip | 0 | +| test.c:562:52:562:53 | ip | 0 | +| test.c:562:63:562:64 | ip | 0 | +| test.c:563:24:563:25 | ip | 0 | +| test.c:564:29:564:30 | ip | 0 | +| test.c:564:40:564:41 | ip | 0 | +| test.c:565:31:565:32 | ip | 0 | +| test.c:566:26:566:27 | ip | 0 | +| test.c:567:17:567:18 | ip | 0 | +| test.c:567:32:567:33 | ip | 0 | +| test.c:568:22:568:23 | ip | 0 | +| test.c:569:22:569:23 | ip | 0 | +| test.c:570:22:570:23 | ip | 0 | +| test.c:571:23:571:24 | ip | 0 | +| test.c:572:28:572:29 | ip | 0 | +| test.c:572:39:572:40 | ip | 0 | +| test.c:572:54:572:55 | ip | 0 | +| test.c:572:65:572:66 | ip | 0 | +| test.c:573:26:573:27 | ip | 0 | +| test.c:574:31:574:32 | ip | 0 | +| test.c:574:42:574:43 | ip | 0 | +| test.c:575:33:575:34 | ip | 0 | +| test.c:576:28:576:29 | ip | 0 | +| test.c:577:21:577:22 | ip | 0 | +| test.c:577:36:577:37 | ip | 0 | +| test.c:578:17:578:18 | ip | 0 | +| test.c:579:18:579:19 | ip | 0 | +| test.c:580:18:580:19 | ip | 0 | +| test.c:581:19:581:20 | ip | 0 | +| test.c:582:24:582:25 | ip | 0 | +| test.c:582:35:582:36 | ip | 0 | +| test.c:582:50:582:51 | ip | 0 | +| test.c:582:61:582:62 | ip | 0 | +| test.c:583:22:583:23 | ip | 0 | +| test.c:584:27:584:28 | ip | 0 | +| test.c:584:38:584:39 | ip | 0 | +| test.c:585:29:585:30 | ip | 0 | +| test.c:586:24:586:25 | ip | 0 | +| test.c:587:17:587:18 | ip | 0 | +| test.c:587:23:587:24 | ip | 0 | +| test.c:587:43:587:44 | ip | 0 | +| test.c:587:49:587:50 | ip | 0 | +| test.c:588:20:588:21 | ip | 0 | +| test.c:589:20:589:21 | ip | 0 | +| test.c:590:20:590:21 | ip | 0 | +| test.c:591:21:591:22 | ip | 0 | +| test.c:592:26:592:27 | ip | 0 | +| test.c:592:37:592:38 | ip | 0 | +| test.c:592:52:592:53 | ip | 0 | +| test.c:592:63:592:64 | ip | 0 | +| test.c:593:24:593:25 | ip | 0 | +| test.c:594:29:594:30 | ip | 0 | +| test.c:594:40:594:41 | ip | 0 | +| test.c:595:31:595:32 | ip | 0 | +| test.c:596:26:596:27 | ip | 0 | +| test.c:597:20:597:21 | ip | 0 | +| test.c:597:26:597:27 | ip | 0 | +| test.c:598:22:598:23 | ip | 0 | +| test.c:599:18:599:19 | ip | 0 | +| test.c:600:16:600:17 | ip | 0 | +| test.c:601:17:601:18 | ip | 0 | +| test.c:602:18:602:19 | ip | 0 | +| test.c:603:18:603:19 | ip | 0 | +| test.c:604:19:604:20 | ip | 0 | +| test.c:605:24:605:25 | ip | 0 | +| test.c:605:35:605:36 | ip | 0 | +| test.c:605:50:605:51 | ip | 0 | +| test.c:605:61:605:62 | ip | 0 | +| test.c:606:22:606:23 | ip | 0 | +| test.c:607:27:607:28 | ip | 0 | +| test.c:607:38:607:39 | ip | 0 | +| test.c:608:29:608:30 | ip | 0 | +| test.c:609:24:609:25 | ip | 0 | +| test.c:610:15:610:16 | ip | 0 | +| test.c:610:30:610:31 | ip | 0 | +| test.c:611:20:611:21 | ip | 0 | +| test.c:612:20:612:21 | ip | 0 | +| test.c:613:20:613:21 | ip | 0 | +| test.c:614:21:614:22 | ip | 0 | +| test.c:615:26:615:27 | ip | 0 | +| test.c:615:37:615:38 | ip | 0 | +| test.c:615:52:615:53 | ip | 0 | +| test.c:615:63:615:64 | ip | 0 | +| test.c:616:24:616:25 | ip | 0 | +| test.c:617:29:617:30 | ip | 0 | +| test.c:617:40:617:41 | ip | 0 | +| test.c:618:31:618:32 | ip | 0 | +| test.c:619:26:619:27 | ip | 0 | +| test.c:620:19:620:20 | ip | 0 | +| test.c:620:34:620:35 | ip | 0 | +| test.c:621:16:621:17 | ip | 0 | +| test.c:622:20:622:21 | ip | 0 | +| test.c:623:20:623:21 | ip | 0 | +| test.c:624:21:624:22 | ip | 0 | +| test.c:625:26:625:27 | ip | 0 | +| test.c:625:37:625:38 | ip | 0 | +| test.c:625:52:625:53 | ip | 0 | +| test.c:625:63:625:64 | ip | 0 | +| test.c:626:24:626:25 | ip | 0 | +| test.c:627:29:627:30 | ip | 0 | +| test.c:627:40:627:41 | ip | 0 | +| test.c:628:31:628:32 | ip | 0 | +| test.c:629:26:629:27 | ip | 0 | +| test.c:630:19:630:20 | ip | 0 | +| test.c:630:25:630:26 | ip | 0 | +| test.c:630:45:630:46 | ip | 0 | +| test.c:630:51:630:52 | ip | 0 | +| test.c:631:18:631:19 | ip | 0 | +| test.c:632:18:632:19 | ip | 0 | +| test.c:633:18:633:19 | ip | 0 | +| test.c:634:19:634:20 | ip | 0 | +| test.c:635:24:635:25 | ip | 0 | +| test.c:635:35:635:36 | ip | 0 | +| test.c:635:50:635:51 | ip | 0 | +| test.c:635:61:635:62 | ip | 0 | +| test.c:636:22:636:23 | ip | 0 | +| test.c:637:27:637:28 | ip | 0 | +| test.c:637:38:637:39 | ip | 0 | +| test.c:638:29:638:30 | ip | 0 | +| test.c:639:24:639:25 | ip | 0 | +| test.c:640:18:640:19 | ip | 0 | +| test.c:640:24:640:25 | ip | 0 | +| test.c:641:20:641:21 | ip | 0 | +| test.c:642:16:642:17 | ip | 0 | +| test.c:643:10:643:23 | special_number | 0 | +| test.c:651:7:651:8 | c1 | -2147483648 | +| test.c:651:13:651:13 | x | 0 | +| test.c:652:7:652:8 | c2 | -2147483648 | +| test.c:652:13:652:13 | x | 0 | +| test.c:653:7:653:8 | c3 | -2147483648 | +| test.c:653:13:653:13 | x | 0 | +| test.c:654:7:654:8 | c4 | -2147483648 | +| test.c:654:13:654:13 | x | 0 | +| test.c:655:7:655:8 | c5 | -2147483648 | +| test.c:655:13:655:13 | x | 0 | +| test.c:656:7:656:8 | c1 | -2147483648 | +| test.c:656:13:656:14 | c2 | -2147483648 | +| test.c:656:19:656:19 | x | 0 | +| test.c:657:7:657:8 | c1 | -2147483648 | +| test.c:657:13:657:14 | c3 | -2147483648 | +| test.c:657:19:657:19 | x | 0 | +| test.c:658:7:658:8 | c1 | -2147483648 | +| test.c:658:13:658:14 | c4 | -2147483648 | +| test.c:658:19:658:19 | x | 0 | +| test.c:659:7:659:8 | c1 | -2147483648 | +| test.c:659:13:659:14 | c5 | -2147483648 | +| test.c:659:19:659:19 | x | 0 | +| test.c:660:7:660:8 | c2 | -2147483648 | +| test.c:660:13:660:14 | c3 | -2147483648 | +| test.c:660:19:660:19 | x | 0 | +| test.c:662:11:662:11 | x | 0 | +| test.c:662:15:662:15 | x | 0 | +| test.c:662:19:662:19 | x | 0 | +| test.c:662:23:662:23 | x | 0 | +| test.c:662:27:662:27 | x | 0 | +| test.c:662:31:662:31 | x | 0 | +| test.c:662:35:662:35 | x | 0 | +| test.c:662:39:662:39 | x | 0 | +| test.c:662:43:662:43 | x | 0 | +| test.c:662:47:662:47 | x | 0 | +| test.c:662:51:662:51 | x | 0 | +| test.c:662:55:662:55 | x | 0 | +| test.c:663:10:663:10 | y | -2147483648 | +| test.c:668:20:668:20 | x | 0 | +| test.c:668:30:668:30 | x | 0 | +| test.c:671:3:671:4 | y1 | 0 | +| test.c:671:11:671:11 | y | 0 | +| test.c:671:14:671:14 | y | 1 | +| test.c:672:3:672:4 | y2 | 0 | +| test.c:672:9:672:9 | y | 1 | +| test.c:672:14:672:14 | y | 2 | +| test.c:672:22:672:22 | y | 5 | +| test.c:673:10:673:11 | y1 | 1 | +| test.c:673:15:673:16 | y2 | 5 | +| test.c:681:3:681:3 | i | -2147483648 | +| test.c:682:7:682:7 | i | 10 | +| test.c:684:3:684:3 | i | -2147483648 | +| test.c:685:3:685:3 | i | 10 | +| test.c:686:7:686:7 | i | 20 | +| test.c:688:3:688:3 | i | -2147483648 | +| test.c:689:3:689:3 | i | 40 | +| test.c:690:7:690:7 | i | 30 | +| test.c:692:3:692:3 | i | -2147483648 | +| test.c:692:7:692:7 | j | -2147483648 | +| test.c:693:7:693:7 | i | 40 | +| test.c:695:3:695:3 | i | -2147483648 | +| test.c:695:8:695:8 | j | 40 | +| test.c:696:7:696:7 | i | 50 | +| test.c:698:3:698:3 | i | -2147483648 | +| test.c:698:13:698:13 | j | 50 | +| test.c:699:7:699:7 | i | 60 | +| test.c:706:12:706:12 | a | 0 | +| test.c:706:17:706:17 | a | 3 | +| test.c:706:33:706:33 | b | 0 | +| test.c:706:38:706:38 | b | 5 | +| test.c:707:13:707:13 | a | 3 | +| test.c:707:15:707:15 | b | 5 | +| test.c:708:5:708:9 | total | 0 | +| test.c:708:14:708:14 | r | 15 | +| test.c:710:12:710:12 | a | 0 | +| test.c:710:17:710:17 | a | 3 | +| test.c:710:33:710:33 | b | 0 | +| test.c:710:38:710:38 | b | 0 | +| test.c:711:13:711:13 | a | 3 | +| test.c:711:15:711:15 | b | 0 | +| test.c:712:5:712:9 | total | 0 | +| test.c:712:14:712:14 | r | 0 | +| test.c:714:12:714:12 | a | 0 | +| test.c:714:17:714:17 | a | 3 | +| test.c:714:34:714:34 | b | 0 | +| test.c:714:39:714:39 | b | 13 | +| test.c:715:13:715:13 | a | 3 | +| test.c:715:15:715:15 | b | 13 | +| test.c:716:5:716:9 | total | 0 | +| test.c:716:14:716:14 | r | 39 | +| test.c:719:10:719:14 | total | 0 | +| test.c:725:12:725:12 | b | 0 | +| test.c:725:17:725:17 | b | 5 | +| test.c:726:16:726:16 | b | 5 | +| test.c:727:5:727:9 | total | 0 | +| test.c:727:14:727:14 | r | 55 | +| test.c:729:12:729:12 | b | 0 | +| test.c:729:17:729:17 | b | 0 | +| test.c:730:16:730:16 | b | 0 | +| test.c:731:5:731:9 | total | 0 | +| test.c:731:14:731:14 | r | 0 | +| test.c:733:13:733:13 | b | 0 | +| test.c:733:18:733:18 | b | 13 | +| test.c:734:16:734:16 | b | 13 | +| test.c:735:5:735:9 | total | 0 | +| test.c:735:14:735:14 | r | 143 | +| test.c:738:10:738:14 | total | 0 | +| test.c:743:3:743:3 | x | 0 | +| test.c:743:7:743:7 | y | 0 | +| test.c:744:3:744:4 | xy | 0 | +| test.c:744:8:744:8 | x | 1000000003 | +| test.c:744:12:744:12 | y | 1000000003 | +| test.c:745:10:745:11 | xy | 1000000006000000000 | +| test.c:750:3:750:3 | x | 0 | +| test.c:751:3:751:3 | y | 0 | +| test.c:752:3:752:4 | xy | 0 | +| test.c:752:8:752:8 | x | 274177 | +| test.c:752:12:752:12 | y | 67280421310721 | +| test.c:753:10:753:11 | xy | 18446744073709551616 | +| test.c:757:7:757:8 | ui | 0 | +| test.c:758:43:758:44 | ui | 10 | +| test.c:758:48:758:49 | ui | 10 | +| test.c:759:12:759:17 | result | 100 | +| test.c:761:7:761:8 | ul | 0 | +| test.c:762:28:762:29 | ul | 10 | +| test.c:762:33:762:34 | ul | 10 | +| test.c:763:12:763:17 | result | 0 | +| test.c:769:7:769:8 | ui | 0 | +| test.c:769:19:769:20 | ui | 0 | +| test.c:770:5:770:6 | ui | 2 | +| test.c:770:11:770:12 | ui | 2 | +| test.c:771:12:771:13 | ui | 4 | +| test.c:775:3:775:9 | uiconst | 10 | +| test.c:778:3:778:9 | ulconst | 10 | +| test.c:779:10:779:16 | uiconst | 40 | +| test.c:779:20:779:26 | ulconst | 40 | +| test.c:783:7:783:7 | i | -2147483648 | +| test.c:783:18:783:18 | i | -1 | +| test.c:784:5:784:5 | i | -2147483648 | +| test.c:784:13:784:13 | i | -1 | +| test.c:785:9:785:9 | i | -5 | +| test.c:787:5:787:5 | i | -2147483648 | +| test.c:787:9:787:9 | i | -5 | +| test.c:788:9:788:9 | i | -30 | +| test.c:790:5:790:5 | i | -30 | +| test.c:791:9:791:9 | i | -210 | +| test.c:793:5:793:5 | i | -210 | +| test.c:794:9:794:9 | i | -1155 | +| test.c:796:7:796:7 | i | -2147483648 | +| test.c:797:5:797:5 | i | -2147483648 | +| test.c:797:9:797:9 | i | -1 | +| test.c:798:9:798:9 | i | 1 | +| test.c:800:3:800:3 | i | -2147483648 | +| test.c:800:7:800:7 | i | -2147483648 | +| test.c:801:10:801:10 | i | -2147483648 | +| test.c:804:3:804:3 | i | -2147483648 | +| test.c:804:10:804:11 | sc | 1 | +| test.c:806:7:806:7 | i | -128 | +| test.c:813:7:813:7 | n | 0 | +| test.c:815:7:815:7 | n | 0 | +| test.c:816:9:816:9 | n | 1 | +| test.c:819:7:819:7 | n | 0 | +| test.c:820:9:820:9 | n | 1 | +| test.c:822:9:822:9 | n | 0 | +| test.c:825:8:825:8 | n | 0 | +| test.c:826:9:826:9 | n | 0 | +| test.c:828:9:828:9 | n | 1 | +| test.c:831:10:831:10 | n | 0 | +| test.c:832:5:832:5 | n | 1 | +| test.c:835:7:835:7 | n | 0 | +| test.c:839:7:839:7 | n | -32768 | +| test.c:842:7:842:7 | n | 0 | +| test.c:843:9:843:9 | n | 0 | +| test.c:845:9:845:9 | n | 1 | +| test.c:848:7:848:7 | n | 0 | +| test.c:849:9:849:9 | n | 1 | +| test.c:851:9:851:9 | n | 0 | +| test.c:854:10:854:10 | n | 0 | +| test.c:855:5:855:5 | n | 1 | +| test.c:858:7:858:7 | n | 0 | +| test.c:862:7:862:7 | n | -32768 | +| test.c:863:9:863:9 | n | -32768 | +| test.c:864:11:864:11 | n | 0 | +| test.c:868:7:868:7 | n | -32768 | +| test.c:869:13:869:13 | n | 5 | +| test.c:872:9:872:9 | n | 6 | +| test.c:875:7:875:7 | n | -32768 | +| test.c:875:22:875:22 | n | -32767 | +| test.c:876:9:876:9 | n | -32766 | +| test.c:879:7:879:7 | n | -32768 | +| test.c:880:5:880:5 | n | 0 | +| test.c:880:10:880:10 | n | 1 | +| test.c:880:14:880:14 | n | 0 | +| test.c:881:6:881:6 | n | 0 | +| test.c:881:10:881:10 | n | 0 | +| test.c:881:14:881:14 | n | 1 | +| test.c:892:7:892:8 | ss | -32768 | +| test.c:893:9:893:10 | ss | 0 | +| test.c:896:7:896:8 | ss | -32768 | +| test.c:897:9:897:10 | ss | -32768 | +| test.c:900:14:900:15 | us | 0 | +| test.c:901:9:901:10 | us | 0 | +| test.c:904:14:904:15 | us | 0 | +| test.c:905:9:905:10 | us | 0 | +| test.c:908:7:908:8 | ss | -32768 | +| test.c:909:9:909:10 | ss | -32768 | +| test.c:912:7:912:8 | ss | -32768 | +| test.c:913:9:913:10 | ss | -1 | +| test.c:919:8:919:8 | s | -2147483648 | +| test.c:919:15:919:15 | s | 0 | +| test.c:919:23:919:23 | s | 0 | +| test.c:920:18:920:18 | s | 0 | +| test.c:920:22:920:22 | s | 0 | +| test.c:921:9:921:14 | result | 0 | +| test.c:927:7:927:7 | i | 0 | +| test.c:928:9:928:9 | i | -2147483648 | +| test.c:932:7:932:7 | u | 0 | +| test.c:933:9:933:9 | u | 0 | +| test.c:938:12:938:12 | s | -2147483648 | +| test.c:939:7:939:8 | s2 | -4 | +| test.c:944:7:944:7 | x | -2147483648 | +| test.c:945:9:945:9 | y | -2147483648 | +| test.c:949:7:949:7 | y | -2147483648 | +| test.c:958:7:958:7 | x | -2147483648 | +| test.c:963:7:963:7 | x | -2147483648 | +| test.c:970:8:970:8 | x | 2147483647 | +| test.c:970:12:970:12 | y | 256 | +| test.c:971:9:971:9 | x | 2147483647 | +| test.c:972:9:972:9 | y | 256 | +| test.cpp:10:7:10:7 | b | -2147483648 | +| test.cpp:11:5:11:5 | x | -2147483648 | +| test.cpp:13:10:13:10 | x | -2147483648 | +| test.cpp:18:30:18:30 | x | -2147483648 | +| test.cpp:19:10:19:11 | x0 | -128 | +| test.cpp:27:7:27:7 | y | -2147483648 | +| test.cpp:28:5:28:5 | x | -2147483648 | +| test.cpp:30:7:30:7 | y | -2147483648 | +| test.cpp:31:5:31:5 | x | -2147483648 | +| test.cpp:33:7:33:7 | y | -2147483648 | +| test.cpp:34:5:34:5 | x | -2147483648 | +| test.cpp:36:7:36:7 | y | -2147483648 | +| test.cpp:37:5:37:5 | x | -2147483648 | +| test.cpp:39:7:39:7 | y | -2147483648 | +| test.cpp:40:5:40:5 | x | -2147483648 | +| test.cpp:42:7:42:7 | y | -2147483648 | +| test.cpp:43:5:43:5 | x | -2147483648 | +| test.cpp:45:7:45:7 | y | -2147483648 | +| test.cpp:46:5:46:5 | x | -2147483648 | +| test.cpp:51:7:51:7 | x | -2147483648 | +| test.cpp:52:21:52:21 | x | 0 | +| test.cpp:53:5:53:5 | t | 0 | +| test.cpp:53:15:53:16 | xb | 0 | +| test.cpp:56:7:56:7 | x | -2147483648 | +| test.cpp:57:21:57:21 | x | 1 | +| test.cpp:58:5:58:5 | t | 0 | +| test.cpp:58:15:58:16 | xb | 1 | +| test.cpp:61:7:61:7 | x | -2147483648 | +| test.cpp:62:21:62:21 | x | -2147483648 | +| test.cpp:63:5:63:5 | t | 0 | +| test.cpp:63:15:63:16 | xb | 1 | +| test.cpp:66:19:66:19 | x | -2147483648 | +| test.cpp:67:3:67:3 | t | 0 | +| test.cpp:67:13:67:14 | xb | 0 | +| test.cpp:69:10:69:10 | b | 0 | +| test.cpp:69:21:69:21 | t | 0 | +| test.cpp:74:30:74:30 | c | 0 | +| test.cpp:74:34:74:34 | c | 0 | +| test.cpp:75:22:75:30 | c_times_2 | 0 | +| test.cpp:77:5:77:13 | c_times_2 | 0 | +| test.cpp:79:3:79:11 | c_times_2 | 0 | +| test.cpp:83:16:83:22 | aliased | -2147483648 | +| test.cpp:85:7:85:7 | i | -2147483648 | +| test.cpp:86:12:86:12 | i | 2 | +| test.cpp:88:7:88:8 | ci | -2147483648 | +| test.cpp:89:12:89:13 | ci | 2 | +| test.cpp:91:7:91:13 | aliased | -2147483648 | +| test.cpp:92:12:92:18 | aliased | -2147483648 | +| test.cpp:94:7:94:11 | alias | -2147483648 | +| test.cpp:95:12:95:16 | alias | -2147483648 | +| test.cpp:97:10:97:10 | i | -2147483648 | +| test.cpp:97:22:97:22 | i | -2147483648 | +| test.cpp:98:5:98:5 | i | -2147483648 | +| test.cpp:98:9:98:9 | i | -2147483648 | +| test.cpp:99:5:99:5 | i | -2147483648 | +| test.cpp:106:7:106:7 | n | -32768 | +| test.cpp:109:7:109:7 | n | 0 | +| test.cpp:110:5:110:5 | n | 1 | +| test.cpp:112:5:112:5 | n | 0 | +| test.cpp:115:8:115:8 | n | 0 | +| test.cpp:116:5:116:5 | n | 0 | +| test.cpp:118:5:118:5 | n | 1 | +| test.cpp:121:3:121:3 | n | 0 | +| test.cpp:121:8:121:8 | n | 1 | +| test.cpp:121:12:121:12 | n | 0 | +| test.cpp:122:4:122:4 | n | 0 | +| test.cpp:122:8:122:8 | n | 0 | +| test.cpp:122:12:122:12 | n | 1 | diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryLower.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryLower.expected index 5673f0fdd303..50b65d84bf32 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryLower.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryLower.expected @@ -1 +1,153 @@ -Timeout (5m0s) in SimpleRangeAnalysis::getBounds/2#ad6ae182 etc +| test.c:154:10:154:40 | ... ? ... : ... | -1.0 | 1.0 | -1.0 | +| test.c:348:22:348:44 | ... ? ... : ... | 0.0 | 0.0 | 2.0 | +| test.c:349:20:349:43 | ... ? ... : ... | 0.0 | 0.0 | 2.0 | +| test.c:350:22:350:44 | ... ? ... : ... | 0.0 | 0.0 | 2.0 | +| test.c:351:22:351:44 | ... ? ... : ... | 0.0 | 0.0 | 2.0 | +| test.c:352:22:352:45 | ... ? ... : ... | 2.0 | 8.0 | 2.0 | +| test.c:378:8:378:23 | ... ? ... : ... | 0.0 | 0.0 | 10.0 | +| test.c:379:8:379:24 | ... ? ... : ... | 0.0 | 10.0 | 0.0 | +| test.c:387:10:387:15 | ... ? ... : ... | 0.0 | 0.0 | 5.0 | +| test.c:388:10:388:17 | ... ? ... : ... | 0.0 | 0.0 | 500.0 | +| test.c:389:10:389:21 | ... ? ... : ... | 1.0 | 1.0 | 500.0 | +| test.c:390:10:390:36 | ... ? ... : ... | 0.0 | 1.0 | 5.0 | +| test.c:391:10:391:38 | ... ? ... : ... | 0.0 | 1.0 | 500.0 | +| test.c:392:10:392:39 | ... ? ... : ... | 1.0 | 1.0 | 500.0 | +| test.c:400:8:400:24 | ... ? ... : ... | 101.0 | 101.0 | 110.0 | +| test.c:401:8:401:25 | ... ? ... : ... | 101.0 | 110.0 | 101.0 | +| test.c:406:10:406:21 | ... ? ... : ... | 0.0 | 0.0 | 5.0 | +| test.c:407:10:407:21 | ... ? ... : ... | 100.0 | 100.0 | 5.0 | +| test.c:408:10:408:38 | ... ? ... : ... | 0.0 | 100.0 | 5.0 | +| test.c:415:14:415:108 | ... ? ... : ... | 0.14333887 | 0.14333887 | 0.40496805 | +| test.c:415:18:415:95 | ... ? ... : ... | 0.14333887 | 0.14333887 | 0.21540225 | +| test.c:415:22:415:82 | ... ? ... : ... | 0.14333887 | 0.14333887 | 0.39206458 | +| test.c:415:26:415:69 | ... ? ... : ... | 0.14333887 | 0.14333887 | 0.35279203 | +| test.c:415:30:415:56 | ... ? ... : ... | 0.14333887 | 0.47438827 | 0.14333887 | +| test.c:416:14:416:108 | ... ? ... : ... | 0.22247853 | 0.22247853 | 0.5297741 | +| test.c:416:18:416:95 | ... ? ... : ... | 0.22247853 | 0.22247853 | 0.59270465 | +| test.c:416:22:416:82 | ... ? ... : ... | 0.22247853 | 0.22247853 | 0.32661893 | +| test.c:416:26:416:69 | ... ? ... : ... | 0.22247853 | 0.34183348 | 0.22247853 | +| test.c:416:30:416:56 | ... ? ... : ... | 0.34183348 | 0.34183348 | 0.3533464 | +| test.c:417:14:417:108 | ... ? ... : ... | 0.05121256 | 0.05121256 | 0.67981451 | +| test.c:417:18:417:95 | ... ? ... : ... | 0.05121256 | 0.05121256 | 0.79310745 | +| test.c:417:22:417:82 | ... ? ... : ... | 0.05121256 | 0.31235514 | 0.05121256 | +| test.c:417:26:417:69 | ... ? ... : ... | 0.31235514 | 0.31478084 | 0.31235514 | +| test.c:417:30:417:56 | ... ? ... : ... | 0.31478084 | 0.77429603 | 0.31478084 | +| test.c:418:14:418:108 | ... ? ... : ... | 0.36976948 | 0.36976948 | 0.83866835 | +| test.c:418:18:418:95 | ... ? ... : ... | 0.36976948 | 0.44729556 | 0.36976948 | +| test.c:418:22:418:82 | ... ? ... : ... | 0.44729556 | 0.44729556 | 0.59952732 | +| test.c:418:26:418:69 | ... ? ... : ... | 0.44729556 | 0.44729556 | 0.98997262 | +| test.c:418:30:418:56 | ... ? ... : ... | 0.44729556 | 0.44729556 | 0.80599202 | +| test.c:419:14:419:108 | ... ? ... : ... | 0.10597712 | 0.10597712 | 0.68734874 | +| test.c:419:18:419:95 | ... ? ... : ... | 0.10597712 | 0.10597712 | 0.72485966 | +| test.c:419:22:419:82 | ... ? ... : ... | 0.10597712 | 0.10597712 | 0.21778426 | +| test.c:419:26:419:69 | ... ? ... : ... | 0.10597712 | 0.49311828 | 0.10597712 | +| test.c:419:30:419:56 | ... ? ... : ... | 0.49311828 | 0.49311828 | 0.90389911 | +| test.c:420:14:420:108 | ... ? ... : ... | 0.1078665 | 0.1078665 | 0.58440865 | +| test.c:420:18:420:95 | ... ? ... : ... | 0.1078665 | 0.1078665 | 0.34808892 | +| test.c:420:22:420:82 | ... ? ... : ... | 0.1078665 | 0.1078665 | 0.76164052 | +| test.c:420:26:420:69 | ... ? ... : ... | 0.1078665 | 0.1078665 | 0.11884576 | +| test.c:420:30:420:56 | ... ? ... : ... | 0.1078665 | 0.47452848 | 0.1078665 | +| test.c:421:14:421:108 | ... ? ... : ... | 0.02524326 | 0.02524326 | 0.36232384 | +| test.c:421:18:421:95 | ... ? ... : ... | 0.02524326 | 0.02524326 | 0.85235179 | +| test.c:421:22:421:82 | ... ? ... : ... | 0.02524326 | 0.02524326 | 0.12516558 | +| test.c:421:26:421:69 | ... ? ... : ... | 0.02524326 | 0.02524326 | 0.95823075 | +| test.c:421:30:421:56 | ... ? ... : ... | 0.02524326 | 0.02524326 | 0.82905046 | +| test.c:422:14:422:108 | ... ? ... : ... | 0.14963485 | 0.14963485 | 0.84331272 | +| test.c:422:18:422:95 | ... ? ... : ... | 0.14963485 | 0.14963485 | 0.48640909 | +| test.c:422:22:422:82 | ... ? ... : ... | 0.14963485 | 0.14963485 | 0.45041108 | +| test.c:422:26:422:69 | ... ? ... : ... | 0.14963485 | 0.32876044 | 0.14963485 | +| test.c:422:30:422:56 | ... ? ... : ... | 0.32876044 | 0.38708626 | 0.32876044 | +| test.c:423:14:423:108 | ... ? ... : ... | 0.05328182 | 0.14800508 | 0.05328182 | +| test.c:423:18:423:95 | ... ? ... : ... | 0.14800508 | 0.14800508 | 0.37428143 | +| test.c:423:22:423:82 | ... ? ... : ... | 0.14800508 | 0.15755063 | 0.14800508 | +| test.c:423:26:423:69 | ... ? ... : ... | 0.15755063 | 0.15755063 | 0.26428481 | +| test.c:423:30:423:56 | ... ? ... : ... | 0.15755063 | 0.15755063 | 0.77086833 | +| test.c:424:14:424:108 | ... ? ... : ... | 0.27643238 | 0.27643238 | 0.69072144 | +| test.c:424:18:424:95 | ... ? ... : ... | 0.27643238 | 0.27643238 | 0.39468857 | +| test.c:424:22:424:82 | ... ? ... : ... | 0.27643238 | 0.27643238 | 0.55679274 | +| test.c:424:26:424:69 | ... ? ... : ... | 0.27643238 | 0.41736536 | 0.27643238 | +| test.c:424:30:424:56 | ... ? ... : ... | 0.41736536 | 0.41736536 | 0.76826628 | +| test.c:425:14:425:108 | ... ? ... : ... | 0.2051911 | 0.2051911 | 0.81372798 | +| test.c:425:18:425:95 | ... ? ... : ... | 0.2051911 | 0.2051911 | 0.88745559 | +| test.c:425:22:425:82 | ... ? ... : ... | 0.2051911 | 0.29904824 | 0.2051911 | +| test.c:425:26:425:69 | ... ? ... : ... | 0.29904824 | 0.29904824 | 0.76242583 | +| test.c:425:30:425:56 | ... ? ... : ... | 0.29904824 | 0.88955345 | 0.29904824 | +| test.c:426:14:426:108 | ... ? ... : ... | 0.13204114 | 0.13204114 | 0.42762647 | +| test.c:426:18:426:95 | ... ? ... : ... | 0.13204114 | 0.13204114 | 0.52031241 | +| test.c:426:22:426:82 | ... ? ... : ... | 0.13204114 | 0.42186276 | 0.13204114 | +| test.c:426:26:426:69 | ... ? ... : ... | 0.42186276 | 0.42186276 | 0.44996679 | +| test.c:426:30:426:56 | ... ? ... : ... | 0.42186276 | 0.42186276 | 0.53843358 | +| test.c:468:4:642:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:468:5:470:49 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:471:6:553:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:472:8:490:41 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:475:10:479:21 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:475:31:475:79 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:477:13:479:21 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:484:12:489:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:485:12:485:60 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:487:15:489:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:491:6:510:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:494:8:498:19 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:494:29:494:77 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:496:11:498:19 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:499:6:499:54 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:503:10:507:21 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:503:31:503:79 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:505:13:507:21 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:508:9:510:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:512:10:531:43 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:515:12:520:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:516:12:516:60 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:518:15:520:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:525:14:530:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:526:14:526:62 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:528:17:530:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:532:9:553:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:535:14:540:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:536:14:536:62 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:538:17:540:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:541:12:541:60 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:545:12:550:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:546:12:546:60 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:548:15:550:23 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:551:11:553:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:554:9:556:51 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:557:9:642:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:558:14:577:47 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:561:16:566:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:562:16:562:64 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:564:19:566:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:571:18:576:29 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:572:18:572:66 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:574:21:576:29 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:578:12:599:29 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:581:14:586:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:582:14:582:62 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:584:17:586:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:587:12:587:60 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:591:16:596:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:592:16:592:64 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:594:19:596:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:597:15:599:29 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:601:12:620:45 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:604:14:609:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:605:14:605:62 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:607:17:609:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:614:16:619:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:615:16:615:64 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:617:19:619:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:621:11:642:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:624:16:629:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:625:16:625:64 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:627:19:629:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:630:14:630:62 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:634:14:639:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:635:14:635:62 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:637:17:639:25 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:640:13:642:27 | ... ? ... : ... | 0.0 | 0.0 | 0.0 | +| test.c:668:20:668:36 | ... ? ... : ... | 0.0 | 0.0 | 100.0 | +| test.c:880:5:880:14 | ... ? ... : ... | 0.0 | 1.0 | 0.0 | +| test.c:881:5:881:14 | ... ? ... : ... | 0.0 | 0.0 | 1.0 | +| test.cpp:121:3:121:12 | ... ? ... : ... | 0.0 | 1.0 | 0.0 | +| test.cpp:122:3:122:12 | ... ? ... : ... | 0.0 | 0.0 | 1.0 | diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryUpper.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryUpper.expected index 5673f0fdd303..3b3a00df6b9c 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryUpper.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/ternaryUpper.expected @@ -1 +1,153 @@ -Timeout (5m0s) in SimpleRangeAnalysis::getBounds/2#ad6ae182 etc +| test.c:154:10:154:40 | ... ? ... : ... | 2.147483647E9 | 2.147483647E9 | -1.0 | +| test.c:348:22:348:44 | ... ? ... : ... | 2.147483647E9 | 2.147483647E9 | 2.0 | +| test.c:349:20:349:43 | ... ? ... : ... | 2.147483647E9 | 2.147483647E9 | 2.0 | +| test.c:350:22:350:44 | ... ? ... : ... | 1.431655764E9 | 1.431655764E9 | 2.0 | +| test.c:351:22:351:44 | ... ? ... : ... | 2.147483647E9 | 2.147483647E9 | 2.0 | +| test.c:352:22:352:45 | ... ? ... : ... | 2.147483647E9 | 2.147483647E9 | 2.0 | +| test.c:378:8:378:23 | ... ? ... : ... | 99.0 | 99.0 | 10.0 | +| test.c:379:8:379:24 | ... ? ... : ... | 99.0 | 10.0 | 99.0 | +| test.c:387:10:387:15 | ... ? ... : ... | 299.0 | 299.0 | 5.0 | +| test.c:388:10:388:17 | ... ? ... : ... | 500.0 | 299.0 | 500.0 | +| test.c:389:10:389:21 | ... ? ... : ... | 300.0 | 300.0 | 500.0 | +| test.c:390:10:390:36 | ... ? ... : ... | 255.0 | 300.0 | 5.0 | +| test.c:391:10:391:38 | ... ? ... : ... | 500.0 | 300.0 | 500.0 | +| test.c:392:10:392:39 | ... ? ... : ... | 300.0 | 300.0 | 500.0 | +| test.c:400:8:400:24 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 110.0 | +| test.c:401:8:401:25 | ... ? ... : ... | 4.294967295E9 | 110.0 | 4.294967295E9 | +| test.c:406:10:406:21 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 5.0 | +| test.c:407:10:407:21 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 5.0 | +| test.c:408:10:408:38 | ... ? ... : ... | 255.0 | 4.294967295E9 | 5.0 | +| test.c:415:14:415:108 | ... ? ... : ... | 0.47438827 | 0.47438827 | 0.40496805 | +| test.c:415:18:415:95 | ... ? ... : ... | 0.47438827 | 0.47438827 | 0.21540225 | +| test.c:415:22:415:82 | ... ? ... : ... | 0.47438827 | 0.47438827 | 0.39206458 | +| test.c:415:26:415:69 | ... ? ... : ... | 0.47438827 | 0.47438827 | 0.35279203 | +| test.c:415:30:415:56 | ... ? ... : ... | 0.47438827 | 0.47438827 | 0.14333887 | +| test.c:416:14:416:108 | ... ? ... : ... | 0.59270465 | 0.59270465 | 0.5297741 | +| test.c:416:18:416:95 | ... ? ... : ... | 0.59270465 | 0.3533464 | 0.59270465 | +| test.c:416:22:416:82 | ... ? ... : ... | 0.3533464 | 0.3533464 | 0.32661893 | +| test.c:416:26:416:69 | ... ? ... : ... | 0.3533464 | 0.3533464 | 0.22247853 | +| test.c:416:30:416:56 | ... ? ... : ... | 0.3533464 | 0.34183348 | 0.3533464 | +| test.c:417:14:417:108 | ... ? ... : ... | 0.79310745 | 0.79310745 | 0.67981451 | +| test.c:417:18:417:95 | ... ? ... : ... | 0.79310745 | 0.77429603 | 0.79310745 | +| test.c:417:22:417:82 | ... ? ... : ... | 0.77429603 | 0.77429603 | 0.05121256 | +| test.c:417:26:417:69 | ... ? ... : ... | 0.77429603 | 0.77429603 | 0.31235514 | +| test.c:417:30:417:56 | ... ? ... : ... | 0.77429603 | 0.77429603 | 0.31478084 | +| test.c:418:14:418:108 | ... ? ... : ... | 0.98997262 | 0.98997262 | 0.83866835 | +| test.c:418:18:418:95 | ... ? ... : ... | 0.98997262 | 0.98997262 | 0.36976948 | +| test.c:418:22:418:82 | ... ? ... : ... | 0.98997262 | 0.98997262 | 0.59952732 | +| test.c:418:26:418:69 | ... ? ... : ... | 0.98997262 | 0.80599202 | 0.98997262 | +| test.c:418:30:418:56 | ... ? ... : ... | 0.80599202 | 0.44729556 | 0.80599202 | +| test.c:419:14:419:108 | ... ? ... : ... | 0.90389911 | 0.90389911 | 0.68734874 | +| test.c:419:18:419:95 | ... ? ... : ... | 0.90389911 | 0.90389911 | 0.72485966 | +| test.c:419:22:419:82 | ... ? ... : ... | 0.90389911 | 0.90389911 | 0.21778426 | +| test.c:419:26:419:69 | ... ? ... : ... | 0.90389911 | 0.90389911 | 0.10597712 | +| test.c:419:30:419:56 | ... ? ... : ... | 0.90389911 | 0.49311828 | 0.90389911 | +| test.c:420:14:420:108 | ... ? ... : ... | 0.76164052 | 0.76164052 | 0.58440865 | +| test.c:420:18:420:95 | ... ? ... : ... | 0.76164052 | 0.76164052 | 0.34808892 | +| test.c:420:22:420:82 | ... ? ... : ... | 0.76164052 | 0.47452848 | 0.76164052 | +| test.c:420:26:420:69 | ... ? ... : ... | 0.47452848 | 0.47452848 | 0.11884576 | +| test.c:420:30:420:56 | ... ? ... : ... | 0.47452848 | 0.47452848 | 0.1078665 | +| test.c:421:14:421:108 | ... ? ... : ... | 0.95823075 | 0.95823075 | 0.36232384 | +| test.c:421:18:421:95 | ... ? ... : ... | 0.95823075 | 0.95823075 | 0.85235179 | +| test.c:421:22:421:82 | ... ? ... : ... | 0.95823075 | 0.95823075 | 0.12516558 | +| test.c:421:26:421:69 | ... ? ... : ... | 0.95823075 | 0.82905046 | 0.95823075 | +| test.c:421:30:421:56 | ... ? ... : ... | 0.82905046 | 0.02524326 | 0.82905046 | +| test.c:422:14:422:108 | ... ? ... : ... | 0.84331272 | 0.48640909 | 0.84331272 | +| test.c:422:18:422:95 | ... ? ... : ... | 0.48640909 | 0.45041108 | 0.48640909 | +| test.c:422:22:422:82 | ... ? ... : ... | 0.45041108 | 0.38708626 | 0.45041108 | +| test.c:422:26:422:69 | ... ? ... : ... | 0.38708626 | 0.38708626 | 0.14963485 | +| test.c:422:30:422:56 | ... ? ... : ... | 0.38708626 | 0.38708626 | 0.32876044 | +| test.c:423:14:423:108 | ... ? ... : ... | 0.77086833 | 0.77086833 | 0.05328182 | +| test.c:423:18:423:95 | ... ? ... : ... | 0.77086833 | 0.77086833 | 0.37428143 | +| test.c:423:22:423:82 | ... ? ... : ... | 0.77086833 | 0.77086833 | 0.14800508 | +| test.c:423:26:423:69 | ... ? ... : ... | 0.77086833 | 0.77086833 | 0.26428481 | +| test.c:423:30:423:56 | ... ? ... : ... | 0.77086833 | 0.15755063 | 0.77086833 | +| test.c:424:14:424:108 | ... ? ... : ... | 0.76826628 | 0.76826628 | 0.69072144 | +| test.c:424:18:424:95 | ... ? ... : ... | 0.76826628 | 0.76826628 | 0.39468857 | +| test.c:424:22:424:82 | ... ? ... : ... | 0.76826628 | 0.76826628 | 0.55679274 | +| test.c:424:26:424:69 | ... ? ... : ... | 0.76826628 | 0.76826628 | 0.27643238 | +| test.c:424:30:424:56 | ... ? ... : ... | 0.76826628 | 0.41736536 | 0.76826628 | +| test.c:425:14:425:108 | ... ? ... : ... | 0.88955345 | 0.88955345 | 0.81372798 | +| test.c:425:18:425:95 | ... ? ... : ... | 0.88955345 | 0.88955345 | 0.88745559 | +| test.c:425:22:425:82 | ... ? ... : ... | 0.88955345 | 0.88955345 | 0.2051911 | +| test.c:425:26:425:69 | ... ? ... : ... | 0.88955345 | 0.88955345 | 0.76242583 | +| test.c:425:30:425:56 | ... ? ... : ... | 0.88955345 | 0.88955345 | 0.29904824 | +| test.c:426:14:426:108 | ... ? ... : ... | 0.53843358 | 0.53843358 | 0.42762647 | +| test.c:426:18:426:95 | ... ? ... : ... | 0.53843358 | 0.53843358 | 0.52031241 | +| test.c:426:22:426:82 | ... ? ... : ... | 0.53843358 | 0.53843358 | 0.13204114 | +| test.c:426:26:426:69 | ... ? ... : ... | 0.53843358 | 0.53843358 | 0.44996679 | +| test.c:426:30:426:56 | ... ? ... : ... | 0.53843358 | 0.42186276 | 0.53843358 | +| test.c:468:4:642:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:468:5:470:49 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:471:6:553:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:472:8:490:41 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:475:10:479:21 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:475:31:475:79 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:477:13:479:21 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:484:12:489:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:485:12:485:60 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:487:15:489:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:491:6:510:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:494:8:498:19 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:494:29:494:77 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:496:11:498:19 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:499:6:499:54 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:503:10:507:21 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:503:31:503:79 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:505:13:507:21 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:508:9:510:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:512:10:531:43 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:515:12:520:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:516:12:516:60 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:518:15:520:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:525:14:530:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:526:14:526:62 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:528:17:530:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:532:9:553:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:535:14:540:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:536:14:536:62 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:538:17:540:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:541:12:541:60 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:545:12:550:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:546:12:546:60 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:548:15:550:23 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:551:11:553:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:554:9:556:51 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:557:9:642:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:558:14:577:47 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:561:16:566:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:562:16:562:64 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:564:19:566:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:571:18:576:29 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:572:18:572:66 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:574:21:576:29 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:578:12:599:29 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:581:14:586:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:582:14:582:62 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:584:17:586:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:587:12:587:60 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:591:16:596:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:592:16:592:64 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:594:19:596:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:597:15:599:29 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:601:12:620:45 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:604:14:609:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:605:14:605:62 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:607:17:609:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:614:16:619:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:615:16:615:64 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:617:19:619:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:621:11:642:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:624:16:629:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:625:16:625:64 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:627:19:629:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:630:14:630:62 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:634:14:639:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:635:14:635:62 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:637:17:639:25 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:640:13:642:27 | ... ? ... : ... | 4.294967295E9 | 4.294967295E9 | 4.294967295E9 | +| test.c:668:20:668:36 | ... ? ... : ... | 100.0 | 99.0 | 100.0 | +| test.c:880:5:880:14 | ... ? ... : ... | 32767.0 | 32767.0 | 0.0 | +| test.c:881:5:881:14 | ... ? ... : ... | 32767.0 | 0.0 | 32767.0 | +| test.cpp:121:3:121:12 | ... ? ... : ... | 32767.0 | 32767.0 | 0.0 | +| test.cpp:122:3:122:12 | ... ? ... : ... | 32767.0 | 0.0 | 32767.0 | diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected index 5673f0fdd303..a483f2cba939 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected @@ -1 +1,1156 @@ -Timeout (5m0s) in SimpleRangeAnalysis::getBounds/2#ad6ae182 etc +| inline_assembly.c:10:3:10:3 | y | 4294967295 | +| inline_assembly.c:12:29:12:29 | x | 0 | +| inline_assembly.c:12:32:12:32 | y | 1 | +| inline_assembly.c:16:25:16:25 | x | 0 | +| inline_assembly.c:16:35:16:35 | y | 1 | +| inline_assembly.c:21:29:21:29 | x | 4294967295 | +| inline_assembly.c:21:32:21:32 | y | 4294967295 | +| minmax.c:18:37:18:37 | x | 1 | +| minmax.c:18:40:18:40 | y | 2 | +| minmax.c:18:43:18:43 | z | 3 | +| minmax.c:20:2:20:2 | z | 2147483647 | +| minmax.c:22:8:22:8 | x | 1 | +| minmax.c:22:14:22:14 | y | 2 | +| minmax.c:22:18:22:18 | t | 2147483647 | +| minmax.c:22:22:22:22 | x | 1 | +| minmax.c:23:3:23:3 | t | 1 | +| minmax.c:26:37:26:37 | x | 1 | +| minmax.c:26:40:26:40 | y | 2 | +| minmax.c:26:43:26:43 | z | 1 | +| missing_bounds.cpp:40:5:40:20 | x | 4294967295 | +| missing_bounds.cpp:40:5:40:20 | x | 4294967295 | +| missing_bounds.cpp:41:5:41:20 | x | 4294967295 | +| missing_bounds.cpp:41:5:41:20 | x | 4294967295 | +| missing_bounds.cpp:42:5:42:20 | x | 4294967295 | +| missing_bounds.cpp:42:5:42:20 | x | 4294967295 | +| missing_bounds.cpp:43:5:43:20 | x | 4294967295 | +| missing_bounds.cpp:43:5:43:20 | x | 4294967295 | +| missing_bounds.cpp:44:5:44:20 | x | 4294967295 | +| missing_bounds.cpp:44:5:44:20 | x | 4294967295 | +| missing_bounds.cpp:45:5:45:20 | x | 4294967295 | +| missing_bounds.cpp:45:5:45:20 | x | 4294967295 | +| missing_bounds.cpp:46:5:46:20 | x | 4294967295 | +| missing_bounds.cpp:46:5:46:20 | x | 4294967295 | +| missing_bounds.cpp:47:5:47:20 | x | 4294967295 | +| missing_bounds.cpp:47:5:47:20 | x | 4294967295 | +| missing_bounds.cpp:48:5:48:20 | x | 4294967295 | +| missing_bounds.cpp:48:5:48:20 | x | 4294967295 | +| missing_bounds.cpp:49:5:49:20 | x | 4294967295 | +| missing_bounds.cpp:49:5:49:20 | x | 4294967295 | +| missing_bounds.cpp:50:5:50:20 | x | 4294967295 | +| missing_bounds.cpp:50:5:50:20 | x | 4294967295 | +| missing_bounds.cpp:51:5:51:20 | x | 4294967295 | +| missing_bounds.cpp:51:5:51:20 | x | 4294967295 | +| missing_bounds.cpp:52:5:52:20 | x | 4294967295 | +| missing_bounds.cpp:52:5:52:20 | x | 4294967295 | +| missing_bounds.cpp:53:5:53:20 | x | 4294967295 | +| missing_bounds.cpp:53:5:53:20 | x | 4294967295 | +| missing_bounds.cpp:54:5:54:20 | x | 4294967295 | +| missing_bounds.cpp:54:5:54:20 | x | 4294967295 | +| missing_bounds.cpp:55:5:55:20 | x | 4294967295 | +| missing_bounds.cpp:55:5:55:20 | x | 4294967295 | +| missing_bounds.cpp:56:5:56:20 | x | 4294967295 | +| missing_bounds.cpp:56:5:56:20 | x | 4294967295 | +| missing_bounds.cpp:57:5:57:20 | x | 4294967295 | +| missing_bounds.cpp:57:5:57:20 | x | 4294967295 | +| missing_bounds.cpp:58:5:58:20 | x | 4294967295 | +| missing_bounds.cpp:58:5:58:20 | x | 4294967295 | +| missing_bounds.cpp:59:5:59:20 | x | 4294967295 | +| missing_bounds.cpp:59:5:59:20 | x | 4294967295 | +| missing_bounds.cpp:60:5:60:20 | x | 4294967295 | +| missing_bounds.cpp:60:5:60:20 | x | 4294967295 | +| missing_bounds.cpp:61:5:61:20 | x | 4294967295 | +| missing_bounds.cpp:61:5:61:20 | x | 4294967295 | +| missing_bounds.cpp:62:5:62:20 | x | 4294967295 | +| missing_bounds.cpp:62:5:62:20 | x | 4294967295 | +| missing_bounds.cpp:63:5:63:20 | x | 4294967295 | +| missing_bounds.cpp:63:5:63:20 | x | 4294967295 | +| missing_bounds.cpp:64:5:64:20 | x | 4294967295 | +| missing_bounds.cpp:64:5:64:20 | x | 4294967295 | +| missing_bounds.cpp:65:5:65:21 | x | 4294967295 | +| missing_bounds.cpp:65:5:65:21 | x | 4294967295 | +| missing_bounds.cpp:66:5:66:21 | x | 4294967295 | +| missing_bounds.cpp:66:5:66:21 | x | 4294967295 | +| missing_bounds.cpp:67:5:67:21 | x | 4294967295 | +| missing_bounds.cpp:67:5:67:21 | x | 4294967295 | +| missing_bounds.cpp:68:5:68:21 | x | 4294967295 | +| missing_bounds.cpp:68:5:68:21 | x | 4294967295 | +| missing_bounds.cpp:69:5:69:21 | x | 4294967295 | +| missing_bounds.cpp:69:5:69:21 | x | 4294967295 | +| missing_bounds.cpp:72:12:72:12 | x | 4294967295 | +| test.c:8:5:8:9 | count | 2147483647 | +| test.c:8:13:8:17 | count | 2147483647 | +| test.c:10:10:10:14 | count | 2147483647 | +| test.c:16:5:16:9 | count | 2147483647 | +| test.c:16:14:16:18 | count | 15 | +| test.c:18:10:18:14 | count | 15 | +| test.c:24:5:24:9 | count | 15 | +| test.c:25:5:25:9 | count | 2147483647 | +| test.c:25:13:25:17 | count | 127 | +| test.c:27:10:27:14 | count | 15 | +| test.c:33:8:33:8 | i | 2147483647 | +| test.c:33:15:33:15 | i | 2 | +| test.c:33:22:33:22 | i | 2147483647 | +| test.c:33:26:33:26 | i | 1 | +| test.c:34:5:34:9 | total | 2147483647 | +| test.c:34:14:34:14 | i | 1 | +| test.c:36:10:36:14 | total | 2147483647 | +| test.c:36:18:36:18 | i | 2 | +| test.c:42:8:42:8 | i | 2147483647 | +| test.c:42:15:42:15 | i | 2 | +| test.c:42:22:42:22 | i | 1 | +| test.c:43:5:43:9 | total | 2147483647 | +| test.c:43:14:43:14 | i | 1 | +| test.c:45:10:45:14 | total | 2147483647 | +| test.c:45:18:45:18 | i | 2 | +| test.c:51:8:51:8 | i | 2147483647 | +| test.c:51:15:51:15 | i | 2 | +| test.c:51:24:51:24 | i | 2147483647 | +| test.c:51:28:51:28 | i | 1 | +| test.c:52:5:52:9 | total | 2147483647 | +| test.c:52:14:52:14 | i | 1 | +| test.c:54:10:54:14 | total | 2147483647 | +| test.c:54:18:54:18 | i | 2 | +| test.c:58:7:58:7 | i | 2147483647 | +| test.c:59:9:59:9 | i | 3 | +| test.c:60:14:60:14 | i | 3 | +| test.c:67:15:67:15 | y | 2147483647 | +| test.c:67:20:67:20 | y | 2147483647 | +| test.c:68:9:68:9 | x | 2147483647 | +| test.c:68:13:68:13 | y | 9 | +| test.c:69:14:69:14 | x | 6 | +| test.c:72:10:72:10 | y | 2147483647 | +| test.c:76:7:76:7 | y | 2147483647 | +| test.c:77:9:77:9 | x | 2147483647 | +| test.c:81:9:81:9 | x | 2147483647 | +| test.c:85:10:85:10 | x | 2147483647 | +| test.c:89:7:89:7 | y | 2147483647 | +| test.c:90:9:90:9 | x | 2147483647 | +| test.c:90:13:90:13 | y | 2147483647 | +| test.c:93:12:93:12 | x | 2147483647 | +| test.c:100:3:100:3 | c | 127 | +| test.c:101:7:101:7 | c | 127 | +| test.c:104:7:104:7 | c | 127 | +| test.c:105:5:105:5 | c | 127 | +| test.c:106:9:106:9 | c | 127 | +| test.c:109:9:109:9 | c | 127 | +| test.c:119:10:119:10 | n | 18446744073709551616 | +| test.c:124:11:124:15 | Start | 18446744073709551616 | +| test.c:127:6:127:10 | Start | 18446744073709551616 | +| test.c:127:15:127:20 | Length | 18446744073709551616 | +| test.c:135:22:135:22 | c | 127 | +| test.c:137:20:137:20 | x | 0 | +| test.c:138:11:138:11 | i | 2147483647 | +| test.c:139:19:139:19 | c | 127 | +| test.c:139:23:139:23 | i | 2147483647 | +| test.c:139:27:139:28 | uc | 255 | +| test.c:139:32:139:32 | x | 0 | +| test.c:139:36:139:36 | y | 4294967295 | +| test.c:139:40:139:40 | z | 2147483647 | +| test.c:144:23:144:23 | x | 2147483647 | +| test.c:145:32:145:32 | x | 2147483647 | +| test.c:146:33:146:33 | x | 2147483647 | +| test.c:147:31:147:31 | x | 2147483647 | +| test.c:148:13:148:13 | x | 2147483647 | +| test.c:149:23:149:23 | x | 2147483647 | +| test.c:150:10:150:11 | x0 | 127 | +| test.c:150:15:150:16 | x1 | 255 | +| test.c:150:20:150:21 | x2 | 65535 | +| test.c:150:25:150:26 | x3 | 2147483647 | +| test.c:150:30:150:31 | c0 | 127 | +| test.c:150:35:150:36 | s0 | 65535 | +| test.c:154:11:154:11 | x | 9223372036854775808 | +| test.c:154:20:154:20 | x | 9223372036854775808 | +| test.c:154:30:154:30 | x | 9223372036854775808 | +| test.c:154:35:154:35 | x | 2147483647 | +| test.c:161:12:161:12 | a | 2147483647 | +| test.c:161:17:161:17 | a | 2147483647 | +| test.c:162:14:162:14 | a | 11 | +| test.c:163:14:163:14 | a | 11 | +| test.c:164:5:164:9 | total | 0 | +| test.c:164:14:164:14 | b | 11 | +| test.c:164:16:164:16 | c | -3 | +| test.c:166:12:166:12 | a | 2147483647 | +| test.c:166:17:166:17 | a | 2147483647 | +| test.c:167:14:167:14 | a | 11 | +| test.c:168:14:168:14 | a | 11 | +| test.c:169:5:169:9 | total | 8 | +| test.c:169:14:169:14 | b | 11 | +| test.c:169:16:169:16 | c | 0 | +| test.c:171:13:171:13 | a | 2147483647 | +| test.c:171:18:171:18 | a | 2147483647 | +| test.c:172:14:172:14 | a | 11 | +| test.c:173:14:173:14 | a | 11 | +| test.c:174:5:174:9 | total | 19 | +| test.c:174:14:174:14 | b | 11 | +| test.c:174:16:174:16 | c | 7 | +| test.c:176:13:176:13 | a | 2147483647 | +| test.c:176:18:176:18 | a | 2147483647 | +| test.c:177:14:177:14 | a | 1 | +| test.c:178:14:178:14 | a | 1 | +| test.c:179:5:179:9 | total | 37 | +| test.c:179:14:179:14 | b | 1 | +| test.c:179:16:179:16 | c | 7 | +| test.c:181:13:181:13 | a | 2147483647 | +| test.c:181:18:181:18 | a | 2147483647 | +| test.c:182:14:182:14 | a | 0 | +| test.c:183:14:183:14 | a | 0 | +| test.c:184:5:184:9 | total | 45 | +| test.c:184:14:184:14 | b | 0 | +| test.c:184:16:184:16 | c | 7 | +| test.c:186:13:186:13 | a | 2147483647 | +| test.c:186:18:186:18 | a | 2147483647 | +| test.c:187:14:187:14 | a | -2 | +| test.c:188:14:188:14 | a | -2 | +| test.c:189:5:189:9 | total | 52 | +| test.c:189:14:189:14 | b | -2 | +| test.c:189:16:189:16 | c | 7 | +| test.c:192:10:192:14 | total | 57 | +| test.c:200:12:200:12 | a | 2147483647 | +| test.c:200:17:200:17 | a | 2147483647 | +| test.c:200:33:200:33 | b | 2147483647 | +| test.c:200:38:200:38 | b | 2147483647 | +| test.c:201:13:201:13 | a | 11 | +| test.c:201:15:201:15 | b | 23 | +| test.c:202:5:202:9 | total | 0 | +| test.c:202:14:202:14 | r | 2147483647 | +| test.c:204:12:204:12 | a | 2147483647 | +| test.c:204:17:204:17 | a | 2147483647 | +| test.c:204:33:204:33 | b | 2147483647 | +| test.c:204:38:204:38 | b | 2147483647 | +| test.c:205:13:205:13 | a | 11 | +| test.c:205:15:205:15 | b | 23 | +| test.c:206:5:206:9 | total | 2147483647 | +| test.c:206:14:206:14 | r | 2147483647 | +| test.c:208:12:208:12 | a | 2147483647 | +| test.c:208:17:208:17 | a | 2147483647 | +| test.c:208:35:208:35 | b | 2147483647 | +| test.c:208:40:208:40 | b | 2147483647 | +| test.c:209:13:209:13 | a | 11 | +| test.c:209:15:209:15 | b | 23 | +| test.c:210:5:210:9 | total | 2147483647 | +| test.c:210:14:210:14 | r | 2147483647 | +| test.c:212:12:212:12 | a | 2147483647 | +| test.c:212:17:212:17 | a | 2147483647 | +| test.c:212:35:212:35 | b | 2147483647 | +| test.c:212:40:212:40 | b | 2147483647 | +| test.c:213:13:213:13 | a | 11 | +| test.c:213:15:213:15 | b | 0 | +| test.c:214:5:214:9 | total | 2147483647 | +| test.c:214:14:214:14 | r | 2147483647 | +| test.c:216:12:216:12 | a | 2147483647 | +| test.c:216:17:216:17 | a | 2147483647 | +| test.c:216:35:216:35 | b | 2147483647 | +| test.c:216:40:216:40 | b | 2147483647 | +| test.c:217:13:217:13 | a | 11 | +| test.c:217:15:217:15 | b | -7 | +| test.c:218:5:218:9 | total | 2147483647 | +| test.c:218:14:218:14 | r | 2147483647 | +| test.c:221:10:221:14 | total | 2147483647 | +| test.c:228:12:228:12 | a | 2147483647 | +| test.c:228:17:228:17 | a | 2147483647 | +| test.c:228:33:228:33 | b | 2147483647 | +| test.c:228:38:228:38 | b | 2147483647 | +| test.c:229:13:229:13 | a | 11 | +| test.c:229:15:229:15 | b | 23 | +| test.c:230:5:230:9 | total | 0 | +| test.c:230:14:230:14 | r | 2147483647 | +| test.c:232:12:232:12 | a | 2147483647 | +| test.c:232:17:232:17 | a | 2147483647 | +| test.c:232:33:232:33 | b | 2147483647 | +| test.c:232:38:232:38 | b | 2147483647 | +| test.c:233:13:233:13 | a | 11 | +| test.c:233:15:233:15 | b | 23 | +| test.c:234:5:234:9 | total | 2147483647 | +| test.c:234:14:234:14 | r | 2147483647 | +| test.c:236:12:236:12 | a | 2147483647 | +| test.c:236:17:236:17 | a | 2147483647 | +| test.c:236:35:236:35 | b | 2147483647 | +| test.c:236:40:236:40 | b | 2147483647 | +| test.c:237:13:237:13 | a | 11 | +| test.c:237:15:237:15 | b | 23 | +| test.c:238:5:238:9 | total | 2147483647 | +| test.c:238:14:238:14 | r | 2147483647 | +| test.c:240:12:240:12 | a | 2147483647 | +| test.c:240:17:240:17 | a | 2147483647 | +| test.c:240:35:240:35 | b | 2147483647 | +| test.c:240:40:240:40 | b | 2147483647 | +| test.c:241:13:241:13 | a | 11 | +| test.c:241:15:241:15 | b | 0 | +| test.c:242:5:242:9 | total | 2147483647 | +| test.c:242:14:242:14 | r | 2147483647 | +| test.c:244:12:244:12 | a | 2147483647 | +| test.c:244:17:244:17 | a | 2147483647 | +| test.c:244:35:244:35 | b | 2147483647 | +| test.c:244:40:244:40 | b | 2147483647 | +| test.c:245:13:245:13 | a | 11 | +| test.c:245:15:245:15 | b | -7 | +| test.c:246:5:246:9 | total | 2147483647 | +| test.c:246:14:246:14 | r | 2147483647 | +| test.c:249:10:249:14 | total | 2147483647 | +| test.c:256:14:256:14 | a | 2147483647 | +| test.c:256:19:256:19 | a | 2147483647 | +| test.c:256:35:256:35 | b | 2147483647 | +| test.c:256:40:256:40 | b | 2147483647 | +| test.c:257:13:257:13 | a | 11 | +| test.c:257:15:257:15 | b | 23 | +| test.c:258:5:258:9 | total | 0 | +| test.c:258:14:258:14 | r | 2147483647 | +| test.c:260:14:260:14 | a | 2147483647 | +| test.c:260:19:260:19 | a | 2147483647 | +| test.c:260:35:260:35 | b | 2147483647 | +| test.c:260:40:260:40 | b | 2147483647 | +| test.c:261:13:261:13 | a | 11 | +| test.c:261:15:261:15 | b | 23 | +| test.c:262:5:262:9 | total | 2147483647 | +| test.c:262:14:262:14 | r | 2147483647 | +| test.c:264:14:264:14 | a | 2147483647 | +| test.c:264:19:264:19 | a | 2147483647 | +| test.c:264:37:264:37 | b | 2147483647 | +| test.c:264:42:264:42 | b | 2147483647 | +| test.c:265:13:265:13 | a | 11 | +| test.c:265:15:265:15 | b | 23 | +| test.c:266:5:266:9 | total | 2147483647 | +| test.c:266:14:266:14 | r | 2147483647 | +| test.c:268:14:268:14 | a | 2147483647 | +| test.c:268:19:268:19 | a | 2147483647 | +| test.c:268:37:268:37 | b | 2147483647 | +| test.c:268:42:268:42 | b | 2147483647 | +| test.c:269:13:269:13 | a | 11 | +| test.c:269:15:269:15 | b | 0 | +| test.c:270:5:270:9 | total | 2147483647 | +| test.c:270:14:270:14 | r | 2147483647 | +| test.c:272:14:272:14 | a | 2147483647 | +| test.c:272:19:272:19 | a | 2147483647 | +| test.c:272:37:272:37 | b | 2147483647 | +| test.c:272:42:272:42 | b | 2147483647 | +| test.c:273:13:273:13 | a | 11 | +| test.c:273:15:273:15 | b | -7 | +| test.c:274:5:274:9 | total | 2147483647 | +| test.c:274:14:274:14 | r | 2147483647 | +| test.c:277:10:277:14 | total | 2147483647 | +| test.c:284:14:284:14 | a | 2147483647 | +| test.c:284:19:284:19 | a | 2147483647 | +| test.c:284:34:284:34 | b | 2147483647 | +| test.c:284:39:284:39 | b | 2147483647 | +| test.c:285:13:285:13 | a | 0 | +| test.c:285:15:285:15 | b | 23 | +| test.c:286:5:286:9 | total | 0 | +| test.c:286:14:286:14 | r | 2147483647 | +| test.c:288:14:288:14 | a | 2147483647 | +| test.c:288:19:288:19 | a | 2147483647 | +| test.c:288:34:288:34 | b | 2147483647 | +| test.c:288:39:288:39 | b | 2147483647 | +| test.c:289:13:289:13 | a | 0 | +| test.c:289:15:289:15 | b | 23 | +| test.c:290:5:290:9 | total | 2147483647 | +| test.c:290:14:290:14 | r | 2147483647 | +| test.c:292:14:292:14 | a | 2147483647 | +| test.c:292:19:292:19 | a | 2147483647 | +| test.c:292:36:292:36 | b | 2147483647 | +| test.c:292:41:292:41 | b | 2147483647 | +| test.c:293:13:293:13 | a | 0 | +| test.c:293:15:293:15 | b | 23 | +| test.c:294:5:294:9 | total | 2147483647 | +| test.c:294:14:294:14 | r | 2147483647 | +| test.c:296:14:296:14 | a | 2147483647 | +| test.c:296:19:296:19 | a | 2147483647 | +| test.c:296:36:296:36 | b | 2147483647 | +| test.c:296:41:296:41 | b | 2147483647 | +| test.c:297:13:297:13 | a | 0 | +| test.c:297:15:297:15 | b | 0 | +| test.c:298:5:298:9 | total | 2147483647 | +| test.c:298:14:298:14 | r | 2147483647 | +| test.c:300:14:300:14 | a | 2147483647 | +| test.c:300:19:300:19 | a | 2147483647 | +| test.c:300:36:300:36 | b | 2147483647 | +| test.c:300:41:300:41 | b | 2147483647 | +| test.c:301:13:301:13 | a | 0 | +| test.c:301:15:301:15 | b | -7 | +| test.c:302:5:302:9 | total | 2147483647 | +| test.c:302:14:302:14 | r | 2147483647 | +| test.c:305:10:305:14 | total | 2147483647 | +| test.c:312:14:312:14 | a | 2147483647 | +| test.c:312:19:312:19 | a | 2147483647 | +| test.c:312:35:312:35 | b | 2147483647 | +| test.c:312:40:312:40 | b | 2147483647 | +| test.c:313:13:313:13 | a | -2 | +| test.c:313:15:313:15 | b | 23 | +| test.c:314:5:314:9 | total | 0 | +| test.c:314:14:314:14 | r | 2147483647 | +| test.c:316:14:316:14 | a | 2147483647 | +| test.c:316:19:316:19 | a | 2147483647 | +| test.c:316:35:316:35 | b | 2147483647 | +| test.c:316:40:316:40 | b | 2147483647 | +| test.c:317:13:317:13 | a | -2 | +| test.c:317:15:317:15 | b | 23 | +| test.c:318:5:318:9 | total | 2147483647 | +| test.c:318:14:318:14 | r | 2147483647 | +| test.c:320:14:320:14 | a | 2147483647 | +| test.c:320:19:320:19 | a | 2147483647 | +| test.c:320:37:320:37 | b | 2147483647 | +| test.c:320:42:320:42 | b | 2147483647 | +| test.c:321:13:321:13 | a | -2 | +| test.c:321:15:321:15 | b | 23 | +| test.c:322:5:322:9 | total | 2147483647 | +| test.c:322:14:322:14 | r | 2147483647 | +| test.c:324:14:324:14 | a | 2147483647 | +| test.c:324:19:324:19 | a | 2147483647 | +| test.c:324:37:324:37 | b | 2147483647 | +| test.c:324:42:324:42 | b | 2147483647 | +| test.c:325:13:325:13 | a | -2 | +| test.c:325:15:325:15 | b | 0 | +| test.c:326:5:326:9 | total | 2147483647 | +| test.c:326:14:326:14 | r | 2147483647 | +| test.c:328:14:328:14 | a | 2147483647 | +| test.c:328:19:328:19 | a | 2147483647 | +| test.c:328:37:328:37 | b | 2147483647 | +| test.c:328:42:328:42 | b | 2147483647 | +| test.c:329:13:329:13 | a | -2 | +| test.c:329:15:329:15 | b | -7 | +| test.c:330:5:330:9 | total | 2147483647 | +| test.c:330:14:330:14 | r | 2147483647 | +| test.c:333:10:333:14 | total | 2147483647 | +| test.c:341:32:341:34 | odd | 9007199254740991 | +| test.c:343:10:343:16 | shifted | 4503599627370495 | +| test.c:348:27:348:27 | e | 4294967295 | +| test.c:348:40:348:40 | e | 2147483647 | +| test.c:349:25:349:25 | e | 4294967295 | +| test.c:349:39:349:39 | e | 2147483647 | +| test.c:350:27:350:27 | e | 4294967295 | +| test.c:350:40:350:40 | e | 1431655764 | +| test.c:351:27:351:27 | e | 4294967295 | +| test.c:351:40:351:40 | e | 2147483647 | +| test.c:352:27:352:27 | e | 4294967295 | +| test.c:352:41:352:41 | e | 2147483647 | +| test.c:354:10:354:12 | bi1 | 2147483647 | +| test.c:354:16:354:18 | bi2 | 2147483647 | +| test.c:354:22:354:24 | bi3 | 1431655764 | +| test.c:354:28:354:30 | bi4 | 2147483647 | +| test.c:354:34:354:36 | bi5 | 2147483647 | +| test.c:359:7:359:7 | x | 2147483647 | +| test.c:363:10:363:10 | i | 7 | +| test.c:364:5:364:5 | i | 2 | +| test.c:366:3:366:3 | d | 2147483647 | +| test.c:366:7:366:7 | i | 7 | +| test.c:367:7:367:7 | x | 2147483647 | +| test.c:368:9:368:9 | d | 7 | +| test.c:368:14:368:14 | x | -1 | +| test.c:378:3:378:4 | y1 | 4294967295 | +| test.c:378:8:378:8 | x | 4294967295 | +| test.c:378:18:378:18 | x | 99 | +| test.c:379:3:379:4 | y2 | 4294967295 | +| test.c:379:8:379:8 | x | 4294967295 | +| test.c:379:24:379:24 | x | 99 | +| test.c:380:3:380:4 | y3 | 4294967295 | +| test.c:381:3:381:4 | y4 | 4294967295 | +| test.c:382:3:382:4 | y5 | 4294967295 | +| test.c:383:3:383:4 | y6 | 4294967295 | +| test.c:384:3:384:4 | y7 | 4294967295 | +| test.c:385:3:385:4 | y8 | 4294967295 | +| test.c:386:7:386:7 | x | 4294967295 | +| test.c:387:5:387:6 | y3 | 4294967295 | +| test.c:387:10:387:10 | x | 299 | +| test.c:388:5:388:6 | y4 | 4294967295 | +| test.c:388:10:388:10 | x | 299 | +| test.c:389:5:389:6 | y5 | 4294967295 | +| test.c:389:11:389:11 | x | 299 | +| test.c:390:5:390:6 | y6 | 4294967295 | +| test.c:390:27:390:27 | x | 299 | +| test.c:391:5:391:6 | y7 | 4294967295 | +| test.c:391:27:391:27 | x | 299 | +| test.c:392:5:392:6 | y8 | 4294967295 | +| test.c:392:28:392:28 | x | 299 | +| test.c:394:10:394:11 | y1 | 99 | +| test.c:394:15:394:16 | y2 | 99 | +| test.c:394:20:394:21 | y3 | 299 | +| test.c:394:25:394:26 | y4 | 500 | +| test.c:394:30:394:31 | y5 | 300 | +| test.c:394:35:394:36 | y6 | 255 | +| test.c:394:40:394:41 | y7 | 500 | +| test.c:394:45:394:46 | y8 | 300 | +| test.c:400:3:400:4 | y1 | 4294967295 | +| test.c:400:8:400:8 | x | 4294967295 | +| test.c:400:18:400:18 | x | 4294967295 | +| test.c:401:3:401:4 | y2 | 4294967295 | +| test.c:401:8:401:8 | x | 4294967295 | +| test.c:401:25:401:25 | x | 4294967295 | +| test.c:402:3:402:4 | y3 | 4294967295 | +| test.c:403:3:403:4 | y4 | 4294967295 | +| test.c:404:3:404:4 | y5 | 4294967295 | +| test.c:405:7:405:7 | x | 4294967295 | +| test.c:406:5:406:6 | y3 | 4294967295 | +| test.c:406:11:406:11 | x | 4294967295 | +| test.c:407:5:407:6 | y4 | 4294967295 | +| test.c:407:11:407:11 | x | 4294967295 | +| test.c:408:5:408:6 | y5 | 4294967295 | +| test.c:408:27:408:27 | x | 4294967295 | +| test.c:410:10:410:11 | y1 | 4294967295 | +| test.c:410:15:410:16 | y2 | 4294967295 | +| test.c:410:20:410:21 | y3 | 4294967295 | +| test.c:410:25:410:26 | y4 | 4294967295 | +| test.c:410:30:410:31 | y5 | 1000 | +| test.c:415:14:415:14 | m | Infinity | +| test.c:415:18:415:18 | n | Infinity | +| test.c:415:22:415:22 | o | Infinity | +| test.c:415:26:415:26 | p | Infinity | +| test.c:415:30:415:30 | q | Infinity | +| test.c:416:14:416:14 | m | Infinity | +| test.c:416:18:416:18 | n | Infinity | +| test.c:416:22:416:22 | o | Infinity | +| test.c:416:26:416:26 | p | Infinity | +| test.c:416:30:416:30 | q | Infinity | +| test.c:417:14:417:14 | m | Infinity | +| test.c:417:18:417:18 | n | Infinity | +| test.c:417:22:417:22 | o | Infinity | +| test.c:417:26:417:26 | p | Infinity | +| test.c:417:30:417:30 | q | Infinity | +| test.c:418:14:418:14 | m | Infinity | +| test.c:418:18:418:18 | n | Infinity | +| test.c:418:22:418:22 | o | Infinity | +| test.c:418:26:418:26 | p | Infinity | +| test.c:418:30:418:30 | q | Infinity | +| test.c:419:14:419:14 | m | Infinity | +| test.c:419:18:419:18 | n | Infinity | +| test.c:419:22:419:22 | o | Infinity | +| test.c:419:26:419:26 | p | Infinity | +| test.c:419:30:419:30 | q | Infinity | +| test.c:420:14:420:14 | m | Infinity | +| test.c:420:18:420:18 | n | Infinity | +| test.c:420:22:420:22 | o | Infinity | +| test.c:420:26:420:26 | p | Infinity | +| test.c:420:30:420:30 | q | Infinity | +| test.c:421:14:421:14 | m | Infinity | +| test.c:421:18:421:18 | n | Infinity | +| test.c:421:22:421:22 | o | Infinity | +| test.c:421:26:421:26 | p | Infinity | +| test.c:421:30:421:30 | q | Infinity | +| test.c:422:14:422:14 | m | Infinity | +| test.c:422:18:422:18 | n | Infinity | +| test.c:422:22:422:22 | o | Infinity | +| test.c:422:26:422:26 | p | Infinity | +| test.c:422:30:422:30 | q | Infinity | +| test.c:423:14:423:14 | m | Infinity | +| test.c:423:18:423:18 | n | Infinity | +| test.c:423:22:423:22 | o | Infinity | +| test.c:423:26:423:26 | p | Infinity | +| test.c:423:30:423:30 | q | Infinity | +| test.c:424:14:424:14 | m | Infinity | +| test.c:424:18:424:18 | n | Infinity | +| test.c:424:22:424:22 | o | Infinity | +| test.c:424:26:424:26 | p | Infinity | +| test.c:424:30:424:30 | q | Infinity | +| test.c:425:14:425:14 | m | Infinity | +| test.c:425:18:425:18 | n | Infinity | +| test.c:425:22:425:22 | o | Infinity | +| test.c:425:26:425:26 | p | Infinity | +| test.c:425:30:425:30 | q | Infinity | +| test.c:426:14:426:14 | m | Infinity | +| test.c:426:18:426:18 | n | Infinity | +| test.c:426:22:426:22 | o | Infinity | +| test.c:426:26:426:26 | p | Infinity | +| test.c:426:30:426:30 | q | Infinity | +| test.c:432:19:432:19 | a | 0.474388 | +| test.c:432:23:432:23 | b | 0.592705 | +| test.c:432:27:432:27 | c | 0.793107 | +| test.c:432:31:432:31 | d | 0.989973 | +| test.c:432:35:432:35 | e | 0.903899 | +| test.c:432:39:432:39 | f | 0.761641 | +| test.c:432:43:432:43 | g | 0.958231 | +| test.c:432:47:432:47 | h | 0.843313 | +| test.c:432:51:432:51 | i | 0.770868 | +| test.c:432:55:432:55 | j | 0.768266 | +| test.c:432:59:432:59 | k | 0.889553 | +| test.c:432:63:432:63 | l | 0.538434 | +| test.c:434:10:434:15 | output | 9.284378 | +| test.c:441:7:441:9 | rhs | 4294967295 | +| test.c:441:19:441:21 | rhs | 11 | +| test.c:442:7:442:9 | rhs | 4294967295 | +| test.c:442:19:442:21 | rhs | 12 | +| test.c:443:7:443:9 | rhs | 4294967295 | +| test.c:443:19:443:21 | rhs | 13 | +| test.c:444:7:444:9 | rhs | 4294967295 | +| test.c:444:19:444:21 | rhs | 14 | +| test.c:445:7:445:9 | rhs | 4294967295 | +| test.c:445:19:445:21 | rhs | 15 | +| test.c:446:10:446:12 | rhs | 4294967295 | +| test.c:450:7:450:7 | a | 2147483647 | +| test.c:451:9:451:9 | b | 2147483647 | +| test.c:452:7:452:7 | a | 17 | +| test.c:452:12:452:12 | b | 23 | +| test.c:454:9:454:9 | a | 40 | +| test.c:455:7:455:7 | b | 2147483647 | +| test.c:460:11:460:11 | a | 2147483647 | +| test.c:460:15:460:15 | b | 2147483647 | +| test.c:461:10:461:10 | a | 2147483647 | +| test.c:461:14:461:14 | b | 2147483647 | +| test.c:468:10:468:11 | ip | 4294967295 | +| test.c:468:20:468:21 | ip | 4294967295 | +| test.c:468:40:468:41 | ip | 4294967295 | +| test.c:469:14:469:15 | ip | 4294967295 | +| test.c:470:14:470:15 | ip | 4294967295 | +| test.c:470:34:470:35 | ip | 4294967295 | +| test.c:471:11:471:12 | ip | 4294967295 | +| test.c:472:13:472:14 | ip | 4294967295 | +| test.c:473:14:473:15 | ip | 4294967295 | +| test.c:474:14:474:15 | ip | 4294967295 | +| test.c:475:15:475:16 | ip | 4294967295 | +| test.c:475:41:475:42 | ip | 4294967295 | +| test.c:475:52:475:53 | ip | 4294967295 | +| test.c:475:67:475:68 | ip | 4294967295 | +| test.c:475:78:475:79 | ip | 4294967295 | +| test.c:476:18:476:19 | ip | 4294967295 | +| test.c:477:23:477:24 | ip | 4294967295 | +| test.c:477:34:477:35 | ip | 4294967295 | +| test.c:478:25:478:26 | ip | 4294967295 | +| test.c:479:20:479:21 | ip | 4294967295 | +| test.c:480:11:480:12 | ip | 4294967295 | +| test.c:480:26:480:27 | ip | 4294967295 | +| test.c:481:16:481:17 | ip | 4294967295 | +| test.c:482:16:482:17 | ip | 4294967295 | +| test.c:483:16:483:17 | ip | 4294967295 | +| test.c:484:17:484:18 | ip | 4294967295 | +| test.c:485:22:485:23 | ip | 4294967295 | +| test.c:485:33:485:34 | ip | 4294967295 | +| test.c:485:48:485:49 | ip | 4294967295 | +| test.c:485:59:485:60 | ip | 4294967295 | +| test.c:486:20:486:21 | ip | 4294967295 | +| test.c:487:25:487:26 | ip | 4294967295 | +| test.c:487:36:487:37 | ip | 4294967295 | +| test.c:488:27:488:28 | ip | 4294967295 | +| test.c:489:22:489:23 | ip | 4294967295 | +| test.c:490:15:490:16 | ip | 4294967295 | +| test.c:490:30:490:31 | ip | 4294967295 | +| test.c:491:11:491:12 | ip | 4294967295 | +| test.c:492:12:492:13 | ip | 4294967295 | +| test.c:493:12:493:13 | ip | 4294967295 | +| test.c:494:13:494:14 | ip | 4294967295 | +| test.c:494:39:494:40 | ip | 4294967295 | +| test.c:494:50:494:51 | ip | 4294967295 | +| test.c:494:65:494:66 | ip | 4294967295 | +| test.c:494:76:494:77 | ip | 4294967295 | +| test.c:495:16:495:17 | ip | 4294967295 | +| test.c:496:21:496:22 | ip | 4294967295 | +| test.c:496:32:496:33 | ip | 4294967295 | +| test.c:497:23:497:24 | ip | 4294967295 | +| test.c:498:18:498:19 | ip | 4294967295 | +| test.c:499:11:499:12 | ip | 4294967295 | +| test.c:499:17:499:18 | ip | 4294967295 | +| test.c:499:37:499:38 | ip | 4294967295 | +| test.c:499:43:499:44 | ip | 4294967295 | +| test.c:500:14:500:15 | ip | 4294967295 | +| test.c:501:14:501:15 | ip | 4294967295 | +| test.c:502:14:502:15 | ip | 4294967295 | +| test.c:503:15:503:16 | ip | 4294967295 | +| test.c:503:41:503:42 | ip | 4294967295 | +| test.c:503:52:503:53 | ip | 4294967295 | +| test.c:503:67:503:68 | ip | 4294967295 | +| test.c:503:78:503:79 | ip | 4294967295 | +| test.c:504:18:504:19 | ip | 4294967295 | +| test.c:505:23:505:24 | ip | 4294967295 | +| test.c:505:34:505:35 | ip | 4294967295 | +| test.c:506:25:506:26 | ip | 4294967295 | +| test.c:507:20:507:21 | ip | 4294967295 | +| test.c:508:14:508:15 | ip | 4294967295 | +| test.c:508:20:508:21 | ip | 4294967295 | +| test.c:509:16:509:17 | ip | 4294967295 | +| test.c:510:12:510:13 | ip | 4294967295 | +| test.c:511:14:511:15 | ip | 4294967295 | +| test.c:512:15:512:16 | ip | 4294967295 | +| test.c:513:16:513:17 | ip | 4294967295 | +| test.c:514:16:514:17 | ip | 4294967295 | +| test.c:515:17:515:18 | ip | 4294967295 | +| test.c:516:22:516:23 | ip | 4294967295 | +| test.c:516:33:516:34 | ip | 4294967295 | +| test.c:516:48:516:49 | ip | 4294967295 | +| test.c:516:59:516:60 | ip | 4294967295 | +| test.c:517:20:517:21 | ip | 4294967295 | +| test.c:518:25:518:26 | ip | 4294967295 | +| test.c:518:36:518:37 | ip | 4294967295 | +| test.c:519:27:519:28 | ip | 4294967295 | +| test.c:520:22:520:23 | ip | 4294967295 | +| test.c:521:13:521:14 | ip | 4294967295 | +| test.c:521:28:521:29 | ip | 4294967295 | +| test.c:522:18:522:19 | ip | 4294967295 | +| test.c:523:18:523:19 | ip | 4294967295 | +| test.c:524:18:524:19 | ip | 4294967295 | +| test.c:525:19:525:20 | ip | 4294967295 | +| test.c:526:24:526:25 | ip | 4294967295 | +| test.c:526:35:526:36 | ip | 4294967295 | +| test.c:526:50:526:51 | ip | 4294967295 | +| test.c:526:61:526:62 | ip | 4294967295 | +| test.c:527:22:527:23 | ip | 4294967295 | +| test.c:528:27:528:28 | ip | 4294967295 | +| test.c:528:38:528:39 | ip | 4294967295 | +| test.c:529:29:529:30 | ip | 4294967295 | +| test.c:530:24:530:25 | ip | 4294967295 | +| test.c:531:17:531:18 | ip | 4294967295 | +| test.c:531:32:531:33 | ip | 4294967295 | +| test.c:532:14:532:15 | ip | 4294967295 | +| test.c:533:18:533:19 | ip | 4294967295 | +| test.c:534:18:534:19 | ip | 4294967295 | +| test.c:535:19:535:20 | ip | 4294967295 | +| test.c:536:24:536:25 | ip | 4294967295 | +| test.c:536:35:536:36 | ip | 4294967295 | +| test.c:536:50:536:51 | ip | 4294967295 | +| test.c:536:61:536:62 | ip | 4294967295 | +| test.c:537:22:537:23 | ip | 4294967295 | +| test.c:538:27:538:28 | ip | 4294967295 | +| test.c:538:38:538:39 | ip | 4294967295 | +| test.c:539:29:539:30 | ip | 4294967295 | +| test.c:540:24:540:25 | ip | 4294967295 | +| test.c:541:17:541:18 | ip | 4294967295 | +| test.c:541:23:541:24 | ip | 4294967295 | +| test.c:541:43:541:44 | ip | 4294967295 | +| test.c:541:49:541:50 | ip | 4294967295 | +| test.c:542:16:542:17 | ip | 4294967295 | +| test.c:543:16:543:17 | ip | 4294967295 | +| test.c:544:16:544:17 | ip | 4294967295 | +| test.c:545:17:545:18 | ip | 4294967295 | +| test.c:546:22:546:23 | ip | 4294967295 | +| test.c:546:33:546:34 | ip | 4294967295 | +| test.c:546:48:546:49 | ip | 4294967295 | +| test.c:546:59:546:60 | ip | 4294967295 | +| test.c:547:20:547:21 | ip | 4294967295 | +| test.c:548:25:548:26 | ip | 4294967295 | +| test.c:548:36:548:37 | ip | 4294967295 | +| test.c:549:27:549:28 | ip | 4294967295 | +| test.c:550:22:550:23 | ip | 4294967295 | +| test.c:551:16:551:17 | ip | 4294967295 | +| test.c:551:22:551:23 | ip | 4294967295 | +| test.c:552:18:552:19 | ip | 4294967295 | +| test.c:553:14:553:15 | ip | 4294967295 | +| test.c:554:14:554:15 | ip | 4294967295 | +| test.c:554:24:554:25 | ip | 4294967295 | +| test.c:554:44:554:45 | ip | 4294967295 | +| test.c:555:16:555:17 | ip | 4294967295 | +| test.c:556:16:556:17 | ip | 4294967295 | +| test.c:556:36:556:37 | ip | 4294967295 | +| test.c:557:14:557:15 | ip | 4294967295 | +| test.c:558:19:558:20 | ip | 4294967295 | +| test.c:559:20:559:21 | ip | 4294967295 | +| test.c:560:20:560:21 | ip | 4294967295 | +| test.c:561:21:561:22 | ip | 4294967295 | +| test.c:562:26:562:27 | ip | 4294967295 | +| test.c:562:37:562:38 | ip | 4294967295 | +| test.c:562:52:562:53 | ip | 4294967295 | +| test.c:562:63:562:64 | ip | 4294967295 | +| test.c:563:24:563:25 | ip | 4294967295 | +| test.c:564:29:564:30 | ip | 4294967295 | +| test.c:564:40:564:41 | ip | 4294967295 | +| test.c:565:31:565:32 | ip | 4294967295 | +| test.c:566:26:566:27 | ip | 4294967295 | +| test.c:567:17:567:18 | ip | 4294967295 | +| test.c:567:32:567:33 | ip | 4294967295 | +| test.c:568:22:568:23 | ip | 4294967295 | +| test.c:569:22:569:23 | ip | 4294967295 | +| test.c:570:22:570:23 | ip | 4294967295 | +| test.c:571:23:571:24 | ip | 4294967295 | +| test.c:572:28:572:29 | ip | 4294967295 | +| test.c:572:39:572:40 | ip | 4294967295 | +| test.c:572:54:572:55 | ip | 4294967295 | +| test.c:572:65:572:66 | ip | 4294967295 | +| test.c:573:26:573:27 | ip | 4294967295 | +| test.c:574:31:574:32 | ip | 4294967295 | +| test.c:574:42:574:43 | ip | 4294967295 | +| test.c:575:33:575:34 | ip | 4294967295 | +| test.c:576:28:576:29 | ip | 4294967295 | +| test.c:577:21:577:22 | ip | 4294967295 | +| test.c:577:36:577:37 | ip | 4294967295 | +| test.c:578:17:578:18 | ip | 4294967295 | +| test.c:579:18:579:19 | ip | 4294967295 | +| test.c:580:18:580:19 | ip | 4294967295 | +| test.c:581:19:581:20 | ip | 4294967295 | +| test.c:582:24:582:25 | ip | 4294967295 | +| test.c:582:35:582:36 | ip | 4294967295 | +| test.c:582:50:582:51 | ip | 4294967295 | +| test.c:582:61:582:62 | ip | 4294967295 | +| test.c:583:22:583:23 | ip | 4294967295 | +| test.c:584:27:584:28 | ip | 4294967295 | +| test.c:584:38:584:39 | ip | 4294967295 | +| test.c:585:29:585:30 | ip | 4294967295 | +| test.c:586:24:586:25 | ip | 4294967295 | +| test.c:587:17:587:18 | ip | 4294967295 | +| test.c:587:23:587:24 | ip | 4294967295 | +| test.c:587:43:587:44 | ip | 4294967295 | +| test.c:587:49:587:50 | ip | 4294967295 | +| test.c:588:20:588:21 | ip | 4294967295 | +| test.c:589:20:589:21 | ip | 4294967295 | +| test.c:590:20:590:21 | ip | 4294967295 | +| test.c:591:21:591:22 | ip | 4294967295 | +| test.c:592:26:592:27 | ip | 4294967295 | +| test.c:592:37:592:38 | ip | 4294967295 | +| test.c:592:52:592:53 | ip | 4294967295 | +| test.c:592:63:592:64 | ip | 4294967295 | +| test.c:593:24:593:25 | ip | 4294967295 | +| test.c:594:29:594:30 | ip | 4294967295 | +| test.c:594:40:594:41 | ip | 4294967295 | +| test.c:595:31:595:32 | ip | 4294967295 | +| test.c:596:26:596:27 | ip | 4294967295 | +| test.c:597:20:597:21 | ip | 4294967295 | +| test.c:597:26:597:27 | ip | 4294967295 | +| test.c:598:22:598:23 | ip | 4294967295 | +| test.c:599:18:599:19 | ip | 4294967295 | +| test.c:600:16:600:17 | ip | 4294967295 | +| test.c:601:17:601:18 | ip | 4294967295 | +| test.c:602:18:602:19 | ip | 4294967295 | +| test.c:603:18:603:19 | ip | 4294967295 | +| test.c:604:19:604:20 | ip | 4294967295 | +| test.c:605:24:605:25 | ip | 4294967295 | +| test.c:605:35:605:36 | ip | 4294967295 | +| test.c:605:50:605:51 | ip | 4294967295 | +| test.c:605:61:605:62 | ip | 4294967295 | +| test.c:606:22:606:23 | ip | 4294967295 | +| test.c:607:27:607:28 | ip | 4294967295 | +| test.c:607:38:607:39 | ip | 4294967295 | +| test.c:608:29:608:30 | ip | 4294967295 | +| test.c:609:24:609:25 | ip | 4294967295 | +| test.c:610:15:610:16 | ip | 4294967295 | +| test.c:610:30:610:31 | ip | 4294967295 | +| test.c:611:20:611:21 | ip | 4294967295 | +| test.c:612:20:612:21 | ip | 4294967295 | +| test.c:613:20:613:21 | ip | 4294967295 | +| test.c:614:21:614:22 | ip | 4294967295 | +| test.c:615:26:615:27 | ip | 4294967295 | +| test.c:615:37:615:38 | ip | 4294967295 | +| test.c:615:52:615:53 | ip | 4294967295 | +| test.c:615:63:615:64 | ip | 4294967295 | +| test.c:616:24:616:25 | ip | 4294967295 | +| test.c:617:29:617:30 | ip | 4294967295 | +| test.c:617:40:617:41 | ip | 4294967295 | +| test.c:618:31:618:32 | ip | 4294967295 | +| test.c:619:26:619:27 | ip | 4294967295 | +| test.c:620:19:620:20 | ip | 4294967295 | +| test.c:620:34:620:35 | ip | 4294967295 | +| test.c:621:16:621:17 | ip | 4294967295 | +| test.c:622:20:622:21 | ip | 4294967295 | +| test.c:623:20:623:21 | ip | 4294967295 | +| test.c:624:21:624:22 | ip | 4294967295 | +| test.c:625:26:625:27 | ip | 4294967295 | +| test.c:625:37:625:38 | ip | 4294967295 | +| test.c:625:52:625:53 | ip | 4294967295 | +| test.c:625:63:625:64 | ip | 4294967295 | +| test.c:626:24:626:25 | ip | 4294967295 | +| test.c:627:29:627:30 | ip | 4294967295 | +| test.c:627:40:627:41 | ip | 4294967295 | +| test.c:628:31:628:32 | ip | 4294967295 | +| test.c:629:26:629:27 | ip | 4294967295 | +| test.c:630:19:630:20 | ip | 4294967295 | +| test.c:630:25:630:26 | ip | 4294967295 | +| test.c:630:45:630:46 | ip | 4294967295 | +| test.c:630:51:630:52 | ip | 4294967295 | +| test.c:631:18:631:19 | ip | 4294967295 | +| test.c:632:18:632:19 | ip | 4294967295 | +| test.c:633:18:633:19 | ip | 4294967295 | +| test.c:634:19:634:20 | ip | 4294967295 | +| test.c:635:24:635:25 | ip | 4294967295 | +| test.c:635:35:635:36 | ip | 4294967295 | +| test.c:635:50:635:51 | ip | 4294967295 | +| test.c:635:61:635:62 | ip | 4294967295 | +| test.c:636:22:636:23 | ip | 4294967295 | +| test.c:637:27:637:28 | ip | 4294967295 | +| test.c:637:38:637:39 | ip | 4294967295 | +| test.c:638:29:638:30 | ip | 4294967295 | +| test.c:639:24:639:25 | ip | 4294967295 | +| test.c:640:18:640:19 | ip | 4294967295 | +| test.c:640:24:640:25 | ip | 4294967295 | +| test.c:641:20:641:21 | ip | 4294967295 | +| test.c:642:16:642:17 | ip | 4294967295 | +| test.c:643:10:643:23 | special_number | 4294967295 | +| test.c:651:7:651:8 | c1 | 2147483647 | +| test.c:651:13:651:13 | x | 0 | +| test.c:652:7:652:8 | c2 | 2147483647 | +| test.c:652:13:652:13 | x | 748596 | +| test.c:653:7:653:8 | c3 | 2147483647 | +| test.c:653:13:653:13 | x | 85400991 | +| test.c:654:7:654:8 | c4 | 2147483647 | +| test.c:654:13:654:13 | x | 89076886 | +| test.c:655:7:655:8 | c5 | 2147483647 | +| test.c:655:13:655:13 | x | 89175520 | +| test.c:656:7:656:8 | c1 | 2147483647 | +| test.c:656:13:656:14 | c2 | 2147483647 | +| test.c:656:19:656:19 | x | 97010505 | +| test.c:657:7:657:8 | c1 | 2147483647 | +| test.c:657:13:657:14 | c3 | 2147483647 | +| test.c:657:19:657:19 | x | 1035467903 | +| test.c:658:7:658:8 | c1 | 2147483647 | +| test.c:658:13:658:14 | c4 | 2147483647 | +| test.c:658:19:658:19 | x | 1109363551 | +| test.c:659:7:659:8 | c1 | 2147483647 | +| test.c:659:13:659:14 | c5 | 2147483647 | +| test.c:659:19:659:19 | x | 1121708983 | +| test.c:660:7:660:8 | c2 | 2147483647 | +| test.c:660:13:660:14 | c3 | 2147483647 | +| test.c:660:19:660:19 | x | 1121747830 | +| test.c:662:11:662:11 | x | 2147483647 | +| test.c:662:15:662:15 | x | 2147483647 | +| test.c:662:19:662:19 | x | 2147483647 | +| test.c:662:23:662:23 | x | 2147483647 | +| test.c:662:27:662:27 | x | 2147483647 | +| test.c:662:31:662:31 | x | 2147483647 | +| test.c:662:35:662:35 | x | 2147483647 | +| test.c:662:39:662:39 | x | 2147483647 | +| test.c:662:43:662:43 | x | 2147483647 | +| test.c:662:47:662:47 | x | 2147483647 | +| test.c:662:51:662:51 | x | 2147483647 | +| test.c:662:55:662:55 | x | 2147483647 | +| test.c:663:10:663:10 | y | 2147483647 | +| test.c:668:20:668:20 | x | 4294967295 | +| test.c:668:30:668:30 | x | 99 | +| test.c:671:3:671:4 | y1 | 4294967295 | +| test.c:671:11:671:11 | y | 100 | +| test.c:671:14:671:14 | y | 101 | +| test.c:672:3:672:4 | y2 | 4294967295 | +| test.c:672:9:672:9 | y | 101 | +| test.c:672:14:672:14 | y | 102 | +| test.c:672:22:672:22 | y | 105 | +| test.c:673:10:673:11 | y1 | 101 | +| test.c:673:15:673:16 | y2 | 105 | +| test.c:681:3:681:3 | i | 2147483647 | +| test.c:682:7:682:7 | i | 10 | +| test.c:684:3:684:3 | i | 2147483647 | +| test.c:685:3:685:3 | i | 10 | +| test.c:686:7:686:7 | i | 20 | +| test.c:688:3:688:3 | i | 2147483647 | +| test.c:689:3:689:3 | i | 40 | +| test.c:690:7:690:7 | i | 30 | +| test.c:692:3:692:3 | i | 2147483647 | +| test.c:692:7:692:7 | j | 2147483647 | +| test.c:693:7:693:7 | i | 40 | +| test.c:695:3:695:3 | i | 2147483647 | +| test.c:695:8:695:8 | j | 40 | +| test.c:696:7:696:7 | i | 50 | +| test.c:698:3:698:3 | i | 2147483647 | +| test.c:698:13:698:13 | j | 50 | +| test.c:699:7:699:7 | i | 60 | +| test.c:706:12:706:12 | a | 4294967295 | +| test.c:706:17:706:17 | a | 4294967295 | +| test.c:706:33:706:33 | b | 4294967295 | +| test.c:706:38:706:38 | b | 4294967295 | +| test.c:707:13:707:13 | a | 11 | +| test.c:707:15:707:15 | b | 23 | +| test.c:708:5:708:9 | total | 0 | +| test.c:708:14:708:14 | r | 253 | +| test.c:710:12:710:12 | a | 4294967295 | +| test.c:710:17:710:17 | a | 4294967295 | +| test.c:710:33:710:33 | b | 4294967295 | +| test.c:710:38:710:38 | b | 4294967295 | +| test.c:711:13:711:13 | a | 11 | +| test.c:711:15:711:15 | b | 23 | +| test.c:712:5:712:9 | total | 253 | +| test.c:712:14:712:14 | r | 253 | +| test.c:714:12:714:12 | a | 4294967295 | +| test.c:714:17:714:17 | a | 4294967295 | +| test.c:714:34:714:34 | b | 4294967295 | +| test.c:714:39:714:39 | b | 4294967295 | +| test.c:715:13:715:13 | a | 11 | +| test.c:715:15:715:15 | b | 23 | +| test.c:716:5:716:9 | total | 506 | +| test.c:716:14:716:14 | r | 253 | +| test.c:719:10:719:14 | total | 759 | +| test.c:725:12:725:12 | b | 4294967295 | +| test.c:725:17:725:17 | b | 4294967295 | +| test.c:726:16:726:16 | b | 23 | +| test.c:727:5:727:9 | total | 0 | +| test.c:727:14:727:14 | r | 253 | +| test.c:729:12:729:12 | b | 4294967295 | +| test.c:729:17:729:17 | b | 4294967295 | +| test.c:730:16:730:16 | b | 23 | +| test.c:731:5:731:9 | total | 253 | +| test.c:731:14:731:14 | r | 253 | +| test.c:733:13:733:13 | b | 4294967295 | +| test.c:733:18:733:18 | b | 4294967295 | +| test.c:734:16:734:16 | b | 23 | +| test.c:735:5:735:9 | total | 506 | +| test.c:735:14:735:14 | r | 253 | +| test.c:738:10:738:14 | total | 759 | +| test.c:743:3:743:3 | x | 18446744073709551616 | +| test.c:743:7:743:7 | y | 18446744073709551616 | +| test.c:744:3:744:4 | xy | 18446744073709551616 | +| test.c:744:8:744:8 | x | 1000000003 | +| test.c:744:12:744:12 | y | 1000000003 | +| test.c:745:10:745:11 | xy | 1000000006000000000 | +| test.c:750:3:750:3 | x | 18446744073709551616 | +| test.c:751:3:751:3 | y | 18446744073709551616 | +| test.c:752:3:752:4 | xy | 18446744073709551616 | +| test.c:752:8:752:8 | x | 274177 | +| test.c:752:12:752:12 | y | 67280421310721 | +| test.c:753:10:753:11 | xy | 18446744073709551616 | +| test.c:757:7:757:8 | ui | 4294967295 | +| test.c:758:43:758:44 | ui | 4294967295 | +| test.c:758:48:758:49 | ui | 4294967295 | +| test.c:759:12:759:17 | result | 18446744065119617024 | +| test.c:761:7:761:8 | ul | 18446744073709551616 | +| test.c:762:28:762:29 | ul | 18446744073709551616 | +| test.c:762:33:762:34 | ul | 18446744073709551616 | +| test.c:763:12:763:17 | result | 18446744073709551616 | +| test.c:769:7:769:8 | ui | 4294967295 | +| test.c:769:19:769:20 | ui | 10 | +| test.c:770:5:770:6 | ui | 10 | +| test.c:770:11:770:12 | ui | 10 | +| test.c:771:12:771:13 | ui | 100 | +| test.c:775:3:775:9 | uiconst | 10 | +| test.c:778:3:778:9 | ulconst | 10 | +| test.c:779:10:779:16 | uiconst | 40 | +| test.c:779:20:779:26 | ulconst | 40 | +| test.c:783:7:783:7 | i | 2147483647 | +| test.c:783:18:783:18 | i | 2147483647 | +| test.c:784:5:784:5 | i | 2147483647 | +| test.c:784:13:784:13 | i | 2 | +| test.c:785:9:785:9 | i | 10 | +| test.c:787:5:787:5 | i | 2147483647 | +| test.c:787:9:787:9 | i | 10 | +| test.c:788:9:788:9 | i | 15 | +| test.c:790:5:790:5 | i | 15 | +| test.c:791:9:791:9 | i | 105 | +| test.c:793:5:793:5 | i | 105 | +| test.c:794:9:794:9 | i | 2310 | +| test.c:796:7:796:7 | i | 2147483647 | +| test.c:797:5:797:5 | i | 2147483647 | +| test.c:797:9:797:9 | i | -1 | +| test.c:798:9:798:9 | i | 1 | +| test.c:800:3:800:3 | i | 2147483647 | +| test.c:800:7:800:7 | i | 2147483647 | +| test.c:801:10:801:10 | i | 2147483647 | +| test.c:804:3:804:3 | i | 2147483647 | +| test.c:804:10:804:11 | sc | 1 | +| test.c:806:7:806:7 | i | 127 | +| test.c:813:7:813:7 | n | 4294967295 | +| test.c:815:7:815:7 | n | 4294967295 | +| test.c:816:9:816:9 | n | 4294967295 | +| test.c:819:7:819:7 | n | 4294967295 | +| test.c:820:9:820:9 | n | 4294967295 | +| test.c:822:9:822:9 | n | 0 | +| test.c:825:8:825:8 | n | 4294967295 | +| test.c:826:9:826:9 | n | 0 | +| test.c:828:9:828:9 | n | 4294967295 | +| test.c:831:10:831:10 | n | 4294967295 | +| test.c:832:5:832:5 | n | 4294967295 | +| test.c:835:7:835:7 | n | 0 | +| test.c:839:7:839:7 | n | 32767 | +| test.c:842:7:842:7 | n | 32767 | +| test.c:843:9:843:9 | n | 0 | +| test.c:845:9:845:9 | n | 32767 | +| test.c:848:7:848:7 | n | 32767 | +| test.c:849:9:849:9 | n | 32767 | +| test.c:851:9:851:9 | n | 0 | +| test.c:854:10:854:10 | n | 32767 | +| test.c:855:5:855:5 | n | 32767 | +| test.c:858:7:858:7 | n | 0 | +| test.c:862:7:862:7 | n | 32767 | +| test.c:863:9:863:9 | n | 32767 | +| test.c:864:11:864:11 | n | 32767 | +| test.c:868:7:868:7 | n | 32767 | +| test.c:869:13:869:13 | n | 32767 | +| test.c:872:9:872:9 | n | 32767 | +| test.c:875:7:875:7 | n | 32767 | +| test.c:875:22:875:22 | n | 32767 | +| test.c:876:9:876:9 | n | 32767 | +| test.c:879:7:879:7 | n | 32767 | +| test.c:880:5:880:5 | n | 32767 | +| test.c:880:10:880:10 | n | 32767 | +| test.c:880:14:880:14 | n | 0 | +| test.c:881:6:881:6 | n | 32767 | +| test.c:881:10:881:10 | n | 0 | +| test.c:881:14:881:14 | n | 32767 | +| test.c:892:7:892:8 | ss | 32767 | +| test.c:893:9:893:10 | ss | 3 | +| test.c:896:7:896:8 | ss | 32767 | +| test.c:897:9:897:10 | ss | 32767 | +| test.c:900:14:900:15 | us | 65535 | +| test.c:901:9:901:10 | us | 32767 | +| test.c:904:14:904:15 | us | 65535 | +| test.c:905:9:905:10 | us | 65535 | +| test.c:908:7:908:8 | ss | 32767 | +| test.c:909:9:909:10 | ss | 32767 | +| test.c:912:7:912:8 | ss | 32767 | +| test.c:913:9:913:10 | ss | 2 | +| test.c:919:8:919:8 | s | 2147483647 | +| test.c:919:15:919:15 | s | 127 | +| test.c:919:23:919:23 | s | 9 | +| test.c:920:18:920:18 | s | 9 | +| test.c:920:22:920:22 | s | 9 | +| test.c:921:9:921:14 | result | 127 | +| test.c:927:7:927:7 | i | 0 | +| test.c:928:9:928:9 | i | 2147483647 | +| test.c:932:7:932:7 | u | 0 | +| test.c:933:9:933:9 | u | 4294967295 | +| test.c:938:12:938:12 | s | 2147483647 | +| test.c:939:7:939:8 | s2 | 4 | +| test.c:944:7:944:7 | x | 2147483647 | +| test.c:945:9:945:9 | y | 2147483647 | +| test.c:949:7:949:7 | y | 2147483647 | +| test.c:958:7:958:7 | x | 2147483647 | +| test.c:963:7:963:7 | x | 15 | +| test.c:970:8:970:8 | x | 2147483647 | +| test.c:970:12:970:12 | y | 256 | +| test.c:971:9:971:9 | x | 2147483647 | +| test.c:972:9:972:9 | y | 256 | +| test.cpp:10:7:10:7 | b | 2147483647 | +| test.cpp:11:5:11:5 | x | 2147483647 | +| test.cpp:13:10:13:10 | x | 2147483647 | +| test.cpp:18:30:18:30 | x | 2147483647 | +| test.cpp:19:10:19:11 | x0 | 127 | +| test.cpp:27:7:27:7 | y | 2147483647 | +| test.cpp:28:5:28:5 | x | 2147483647 | +| test.cpp:30:7:30:7 | y | 2147483647 | +| test.cpp:31:5:31:5 | x | 2147483647 | +| test.cpp:33:7:33:7 | y | 2147483647 | +| test.cpp:34:5:34:5 | x | 2147483647 | +| test.cpp:36:7:36:7 | y | 2147483647 | +| test.cpp:37:5:37:5 | x | 2147483647 | +| test.cpp:39:7:39:7 | y | 2147483647 | +| test.cpp:40:5:40:5 | x | 2147483647 | +| test.cpp:42:7:42:7 | y | 2147483647 | +| test.cpp:43:5:43:5 | x | 2147483647 | +| test.cpp:45:7:45:7 | y | 2147483647 | +| test.cpp:46:5:46:5 | x | 2147483647 | +| test.cpp:51:7:51:7 | x | 2147483647 | +| test.cpp:52:21:52:21 | x | 0 | +| test.cpp:53:5:53:5 | t | 0 | +| test.cpp:53:15:53:16 | xb | 0 | +| test.cpp:56:7:56:7 | x | 2147483647 | +| test.cpp:57:21:57:21 | x | 2147483647 | +| test.cpp:58:5:58:5 | t | 0 | +| test.cpp:58:15:58:16 | xb | 1 | +| test.cpp:61:7:61:7 | x | 2147483647 | +| test.cpp:62:21:62:21 | x | -1 | +| test.cpp:63:5:63:5 | t | 1 | +| test.cpp:63:15:63:16 | xb | 1 | +| test.cpp:66:19:66:19 | x | 2147483647 | +| test.cpp:67:3:67:3 | t | 2 | +| test.cpp:67:13:67:14 | xb | 1 | +| test.cpp:69:10:69:10 | b | 1 | +| test.cpp:69:21:69:21 | t | 3 | +| test.cpp:74:30:74:30 | c | 255 | +| test.cpp:74:34:74:34 | c | 255 | +| test.cpp:75:22:75:30 | c_times_2 | 510 | +| test.cpp:77:5:77:13 | c_times_2 | 510 | +| test.cpp:79:3:79:11 | c_times_2 | 510 | +| test.cpp:83:16:83:22 | aliased | 2147483647 | +| test.cpp:85:7:85:7 | i | 2147483647 | +| test.cpp:86:12:86:12 | i | 2147483647 | +| test.cpp:88:7:88:8 | ci | 2147483647 | +| test.cpp:89:12:89:13 | ci | 2147483647 | +| test.cpp:91:7:91:13 | aliased | 2147483647 | +| test.cpp:92:12:92:18 | aliased | 2147483647 | +| test.cpp:94:7:94:11 | alias | 2147483647 | +| test.cpp:95:12:95:16 | alias | 2147483647 | +| test.cpp:97:10:97:10 | i | 65535 | +| test.cpp:97:22:97:22 | i | 32767 | +| test.cpp:98:5:98:5 | i | 2147483647 | +| test.cpp:98:9:98:9 | i | 12345 | +| test.cpp:99:5:99:5 | i | 32767 | +| test.cpp:106:7:106:7 | n | 32767 | +| test.cpp:109:7:109:7 | n | 32767 | +| test.cpp:110:5:110:5 | n | 32767 | +| test.cpp:112:5:112:5 | n | 0 | +| test.cpp:115:8:115:8 | n | 32767 | +| test.cpp:116:5:116:5 | n | 0 | +| test.cpp:118:5:118:5 | n | 32767 | +| test.cpp:121:3:121:3 | n | 32767 | +| test.cpp:121:8:121:8 | n | 32767 | +| test.cpp:121:12:121:12 | n | 0 | +| test.cpp:122:4:122:4 | n | 32767 | +| test.cpp:122:8:122:8 | n | 0 | +| test.cpp:122:12:122:12 | n | 32767 | From 5c53677051ab4c8c194371406200002a7061e007 Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Thu, 12 Feb 2026 11:02:54 +0100 Subject: [PATCH 402/433] Java: Deprecate UnreachableBlocks. --- .../2026-02-12-deprecate-unreachableblocks.md | 4 +++ .../java/controlflow/UnreachableBlocks.qll | 4 ++- .../ExcludeDebuggingProfilingLogging.qll | 5 ++- .../UnreachableBlocks.expected | 12 ------- .../unreachableblocks/UnreachableBlocks.ql | 5 --- .../unreachableblocks/Unreachable.java | 35 ------------------- 6 files changed, 11 insertions(+), 54 deletions(-) create mode 100644 java/ql/lib/change-notes/2026-02-12-deprecate-unreachableblocks.md delete mode 100644 java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.expected delete mode 100644 java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.ql delete mode 100644 java/ql/test/library-tests/unreachableblocks/unreachableblocks/Unreachable.java diff --git a/java/ql/lib/change-notes/2026-02-12-deprecate-unreachableblocks.md b/java/ql/lib/change-notes/2026-02-12-deprecate-unreachableblocks.md new file mode 100644 index 000000000000..24748cbb09ec --- /dev/null +++ b/java/ql/lib/change-notes/2026-02-12-deprecate-unreachableblocks.md @@ -0,0 +1,4 @@ +--- +category: deprecated +--- +* The `UnreachableBlocks.qll` library has been deprecated. diff --git a/java/ql/lib/semmle/code/java/controlflow/UnreachableBlocks.qll b/java/ql/lib/semmle/code/java/controlflow/UnreachableBlocks.qll index dfc9fc2833bd..6ac7668266ea 100644 --- a/java/ql/lib/semmle/code/java/controlflow/UnreachableBlocks.qll +++ b/java/ql/lib/semmle/code/java/controlflow/UnreachableBlocks.qll @@ -1,8 +1,10 @@ /** + * DEPRECATED: This module is no longer maintained, and will be removed in a future release. + * * Provides classes and predicates for identifying unreachable blocks under a "closed-world" assumption. */ overlay[local?] -module; +deprecated module; import java import semmle.code.java.controlflow.Guards diff --git a/java/ql/lib/semmle/code/java/controlflow/unreachableblocks/ExcludeDebuggingProfilingLogging.qll b/java/ql/lib/semmle/code/java/controlflow/unreachableblocks/ExcludeDebuggingProfilingLogging.qll index bda7f9bee740..8958ceedb324 100644 --- a/java/ql/lib/semmle/code/java/controlflow/unreachableblocks/ExcludeDebuggingProfilingLogging.qll +++ b/java/ql/lib/semmle/code/java/controlflow/unreachableblocks/ExcludeDebuggingProfilingLogging.qll @@ -1,5 +1,8 @@ +/** + * DEPRECATED: This module is no longer maintained, and will be removed in a future release. + */ overlay[local?] -module; +deprecated module; import java import semmle.code.java.controlflow.UnreachableBlocks diff --git a/java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.expected b/java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.expected deleted file mode 100644 index acf240ae3136..000000000000 --- a/java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.expected +++ /dev/null @@ -1,12 +0,0 @@ -| unreachableblocks/Unreachable.java:3:14:3:24 | Exceptional Exit | -| unreachableblocks/Unreachable.java:3:14:3:24 | Exceptional Exit | -| unreachableblocks/Unreachable.java:5:14:5:19 | Exceptional Exit | -| unreachableblocks/Unreachable.java:6:14:8:3 | { ... } | -| unreachableblocks/Unreachable.java:9:21:11:3 | { ... } | -| unreachableblocks/Unreachable.java:12:22:14:3 | { ... } | -| unreachableblocks/Unreachable.java:17:3:17:9 | case ... | -| unreachableblocks/Unreachable.java:19:3:19:9 | case ... | -| unreachableblocks/Unreachable.java:24:3:24:9 | case ... | -| unreachableblocks/Unreachable.java:26:3:26:10 | case ... | -| unreachableblocks/Unreachable.java:27:3:27:10 | default | -| unreachableblocks/Unreachable.java:32:18:32:28 | Exceptional Exit | diff --git a/java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.ql b/java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.ql deleted file mode 100644 index b7229c059f36..000000000000 --- a/java/ql/test/library-tests/unreachableblocks/UnreachableBlocks.ql +++ /dev/null @@ -1,5 +0,0 @@ -import default -import semmle.code.java.controlflow.UnreachableBlocks - -from UnreachableBasicBlock unreachableBasicBlock -select unreachableBasicBlock diff --git a/java/ql/test/library-tests/unreachableblocks/unreachableblocks/Unreachable.java b/java/ql/test/library-tests/unreachableblocks/unreachableblocks/Unreachable.java deleted file mode 100644 index a8dc419975bf..000000000000 --- a/java/ql/test/library-tests/unreachableblocks/unreachableblocks/Unreachable.java +++ /dev/null @@ -1,35 +0,0 @@ -package unreachableblocks; - -public class Unreachable { - private boolean privateFalse = false; - public void method() { - if (false) { - // unreachable - } - if (privateFalse) { - // unreachable - } - if (methodFalse()) { - // unreachable - } - - switch (7) { - case 5: // unreachable - break; - case 6: // unreachable - System.out.println("dead"); // unreachable - case 7: - case 8: // reachable from 7 - break; // reachable - case 9: //unreachable - break; - case 10: // unreachable - default: - break; //unreachable - } - } - - private boolean methodFalse() { - return privateFalse; - } -} \ No newline at end of file From 218585b52adb056b5eee16e64449762d84e9afa7 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Thu, 12 Feb 2026 12:30:12 +0100 Subject: [PATCH 403/433] Ruby: Add additonal tests with operators at the start of lines --- ruby/ql/test/library-tests/ast/Ast.expected | 205 +++++++--- .../library-tests/ast/AstDesugar.expected | 190 ++++----- .../library-tests/ast/TreeSitter.expected | 364 +++++++++++++----- .../test/library-tests/ast/ValueText.expected | 90 ++--- .../ast/control/ConditionalExpr.expected | 18 +- .../ast/control/ControlExpr.expected | 9 +- .../library-tests/ast/control/conditionals.rb | 63 ++- .../ast/operations/assignment.expected | 90 ++--- .../ast/operations/binary.expected | 40 +- .../ast/operations/operation.expected | 158 ++++---- .../ast/operations/operations.rb | 20 + .../ast/operations/unary.expected | 2 +- 12 files changed, 799 insertions(+), 450 deletions(-) diff --git a/ruby/ql/test/library-tests/ast/Ast.expected b/ruby/ql/test/library-tests/ast/Ast.expected index bdc67bd794df..e88a3880f1a0 100644 --- a/ruby/ql/test/library-tests/ast/Ast.expected +++ b/ruby/ql/test/library-tests/ast/Ast.expected @@ -1470,12 +1470,69 @@ control/conditionals.rb: # 79| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b # 79| getBranch/getThen: [StmtSequence] then ... # 81| getStmt: [LocalVariableAccess] c -# 85| getStmt: [IfExpr] if ... -# 85| getCondition: [LogicalAndExpr] ... && ... -# 85| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a -# 86| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 86| getStmt: [IfExpr] if ... +# 86| getCondition: [LocalVariableAccess] a # 86| getBranch/getThen: [StmtSequence] then ... -# 88| getStmt: [LocalVariableAccess] c +# 87| getStmt: [MethodCall] call to and +# 87| getReceiver: [SelfVariableAccess] self +# 87| getArgument: [LocalVariableAccess] b +# 88| getStmt: [MethodCall] call to then +# 88| getReceiver: [SelfVariableAccess] self +# 89| getStmt: [LocalVariableAccess] c +# 94| getStmt: [IfExpr] if ... +# 94| getCondition: [LocalVariableAccess] a +# 94| getBranch/getThen: [StmtSequence] then ... +# 96| getStmt: [MethodCall] call to then +# 96| getReceiver: [SelfVariableAccess] self +# 97| getStmt: [LocalVariableAccess] c +# 102| getStmt: [IfExpr] if ... +# 102| getCondition: [LocalVariableAccess] a +# 102| getBranch/getThen: [StmtSequence] then ... +# 103| getStmt: [MethodCall] call to or +# 103| getReceiver: [SelfVariableAccess] self +# 103| getArgument: [LocalVariableAccess] b +# 104| getStmt: [MethodCall] call to then +# 104| getReceiver: [SelfVariableAccess] self +# 105| getStmt: [LocalVariableAccess] c +# 109| getStmt: [IfExpr] if ... +# 109| getCondition: [LogicalAndExpr] ... && ... +# 109| getAnOperand/getLeftOperand/getReceiver: [LogicalAndExpr] ... && ... +# 109| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 110| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 111| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] c +# 111| getBranch/getThen: [StmtSequence] then ... +# 113| getStmt: [LocalVariableAccess] d +# 118| getStmt: [IfExpr] if ... +# 118| getCondition: [LogicalAndExpr] ... && ... +# 118| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 119| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 119| getBranch/getThen: [StmtSequence] then ... +# 121| getStmt: [MethodCall] call to then +# 121| getReceiver: [SelfVariableAccess] self +# 122| getStmt: [LocalVariableAccess] d +# 127| getStmt: [IfExpr] if ... +# 127| getCondition: [LogicalAndExpr] ... && ... +# 127| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 128| getAnOperand/getArgument/getRightOperand: [ParenthesizedExpr] ( ... ) +# 128| getStmt: [LocalVariableAccess] b +# 129| getBranch/getThen: [StmtSequence] then ... +# 131| getStmt: [LocalVariableAccess] d +# 136| getStmt: [IfExpr] if ... +# 136| getCondition: [LocalVariableAccess] a +# 136| getBranch/getThen: [StmtSequence] then ... +# 139| getStmt: [MethodCall] call to then +# 139| getReceiver: [SelfVariableAccess] self +# 140| getStmt: [LocalVariableAccess] d +# 144| getStmt: [IfExpr] if ... +# 144| getCondition: [LogicalAndExpr] ... && ... +# 144| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 145| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 145| getBranch/getThen: [StmtSequence] then ... +# 147| getStmt: [LocalVariableAccess] c +# 137| [ParenthesizedExpr] ( ... ) +# 137| getStmt: [LogicalAndExpr] ... && ... +# 137| getAnOperand/getLeftOperand/getReceiver: [MethodCall] call to b +# 138| getAnOperand/getArgument/getRightOperand: [MethodCall] call to c constants/constants.rb: # 1| [Toplevel] constants.rb # 1| getStmt: [ModuleDeclaration] ModuleA @@ -2863,63 +2920,87 @@ operations/operations.rb: # 85| getStmt: [AssignBitwiseXorExpr] ... ^= ... # 85| getAnOperand/getLeftOperand: [LocalVariableAccess] baz # 85| getAnOperand/getRightOperand: [LocalVariableAccess] qux -# 87| getStmt: [ClassDeclaration] X -# 88| getStmt: [AssignExpr] ... = ... -# 88| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x -# 88| getReceiver: [SelfVariableAccess] self -# 88| getAnOperand/getRightOperand: [IntegerLiteral] 1 -# 89| getStmt: [AssignAddExpr] ... += ... -# 89| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x -# 89| getReceiver: [SelfVariableAccess] self -# 89| getAnOperand/getRightOperand: [IntegerLiteral] 2 -# 91| getStmt: [AssignExpr] ... = ... -# 91| getAnOperand/getLeftOperand: [ClassVariableAccess] @@y -# 91| getAnOperand/getRightOperand: [IntegerLiteral] 3 -# 92| getStmt: [AssignDivExpr] ... /= ... -# 92| getAnOperand/getLeftOperand: [ClassVariableAccess] @@y -# 92| getAnOperand/getRightOperand: [IntegerLiteral] 4 -# 95| getStmt: [AssignExpr] ... = ... -# 95| getAnOperand/getLeftOperand: [GlobalVariableAccess] $global_var -# 95| getAnOperand/getRightOperand: [IntegerLiteral] 5 -# 96| getStmt: [AssignMulExpr] ... *= ... -# 96| getAnOperand/getLeftOperand: [GlobalVariableAccess] $global_var -# 96| getAnOperand/getRightOperand: [IntegerLiteral] 6 -# 98| getStmt: [AssignExpr] ... = ... -# 98| getAnOperand/getLeftOperand: [ConstantAssignment] CONSTANT1 -# 98| getAnOperand/getRightOperand: [IntegerLiteral] 5 -# 99| getStmt: [AssignAddExpr] ... += ... -# 99| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT2 -# 99| getAnOperand/getRightOperand: [IntegerLiteral] 6 -# 100| getStmt: [AssignLogicalOrExpr] ... ||= ... -# 100| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT3 -# 100| getAnOperand/getRightOperand: [IntegerLiteral] 7 -# 101| getStmt: [AssignLogicalOrExpr] ... ||= ... -# 101| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] MemberConstant -# 101| getScopeExpr: [ConstantReadAccess] Foo -# 101| getAnOperand/getRightOperand: [IntegerLiteral] 8 -# 102| getStmt: [AssignLogicalOrExpr] ... ||= ... -# 102| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] OtherConstant -# 102| getScopeExpr: [MethodCall] call to bar -# 102| getReceiver: [MethodCall] call to foo -# 102| getReceiver: [SelfVariableAccess] self -# 102| getArgument: [IntegerLiteral] 1 -# 102| getAnOperand/getRightOperand: [IntegerLiteral] 7 -# 103| getStmt: [AssignLogicalOrExpr] ... ||= ... -# 103| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT4 -# 103| getAnOperand/getRightOperand: [IntegerLiteral] 7 -# 104| getStmt: [AssignExpr] ... = ... -# 104| getAnOperand/getLeftOperand: [DestructuredLhsExpr] (..., ...) -# 104| getElement: [ConstantAssignment] FOO -# 104| getElement: [ConstantAssignment] BAR -# 104| getElement: [ConstantAssignment] FOO -# 104| getScopeExpr: [LocalVariableAccess] foo -# 104| getAnOperand/getRightOperand: [ArrayLiteral] [...] -# 104| getElement: [IntegerLiteral] 1 -# 104| getElement: [IntegerLiteral] 2 -# 104| getElement: [IntegerLiteral] 3 -# 106| getStmt: [DivExpr] ... / ... -# 106| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] foo -# 107| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 5 +# 88| getStmt: [AssignExpr] ... = ... +# 88| getAnOperand/getLeftOperand: [LocalVariableAccess] foo +# 88| getAnOperand/getRightOperand: [LogicalAndExpr] ... && ... +# 88| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 89| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 91| getStmt: [AssignExpr] ... = ... +# 91| getAnOperand/getLeftOperand: [LocalVariableAccess] bar +# 91| getAnOperand/getRightOperand: [LocalVariableAccess] a +# 95| getStmt: [Method] foo +# 95| getParameter: [SimpleParameter] a +# 95| getDefiningAccess: [LocalVariableAccess] a +# 95| getParameter: [SimpleParameter] b +# 95| getDefiningAccess: [LocalVariableAccess] b +# 96| getStmt: [ReturnStmt] return +# 96| getValue: [LogicalAndExpr] ... && ... +# 96| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a +# 97| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b +# 102| getStmt: [Method] bar +# 102| getParameter: [SimpleParameter] a +# 102| getDefiningAccess: [LocalVariableAccess] a +# 102| getParameter: [SimpleParameter] b +# 102| getDefiningAccess: [LocalVariableAccess] b +# 103| getStmt: [ReturnStmt] return +# 103| getValue: [LocalVariableAccess] a +# 107| getStmt: [ClassDeclaration] X +# 108| getStmt: [AssignExpr] ... = ... +# 108| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x +# 108| getReceiver: [SelfVariableAccess] self +# 108| getAnOperand/getRightOperand: [IntegerLiteral] 1 +# 109| getStmt: [AssignAddExpr] ... += ... +# 109| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x +# 109| getReceiver: [SelfVariableAccess] self +# 109| getAnOperand/getRightOperand: [IntegerLiteral] 2 +# 111| getStmt: [AssignExpr] ... = ... +# 111| getAnOperand/getLeftOperand: [ClassVariableAccess] @@y +# 111| getAnOperand/getRightOperand: [IntegerLiteral] 3 +# 112| getStmt: [AssignDivExpr] ... /= ... +# 112| getAnOperand/getLeftOperand: [ClassVariableAccess] @@y +# 112| getAnOperand/getRightOperand: [IntegerLiteral] 4 +# 115| getStmt: [AssignExpr] ... = ... +# 115| getAnOperand/getLeftOperand: [GlobalVariableAccess] $global_var +# 115| getAnOperand/getRightOperand: [IntegerLiteral] 5 +# 116| getStmt: [AssignMulExpr] ... *= ... +# 116| getAnOperand/getLeftOperand: [GlobalVariableAccess] $global_var +# 116| getAnOperand/getRightOperand: [IntegerLiteral] 6 +# 118| getStmt: [AssignExpr] ... = ... +# 118| getAnOperand/getLeftOperand: [ConstantAssignment] CONSTANT1 +# 118| getAnOperand/getRightOperand: [IntegerLiteral] 5 +# 119| getStmt: [AssignAddExpr] ... += ... +# 119| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT2 +# 119| getAnOperand/getRightOperand: [IntegerLiteral] 6 +# 120| getStmt: [AssignLogicalOrExpr] ... ||= ... +# 120| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT3 +# 120| getAnOperand/getRightOperand: [IntegerLiteral] 7 +# 121| getStmt: [AssignLogicalOrExpr] ... ||= ... +# 121| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] MemberConstant +# 121| getScopeExpr: [ConstantReadAccess] Foo +# 121| getAnOperand/getRightOperand: [IntegerLiteral] 8 +# 122| getStmt: [AssignLogicalOrExpr] ... ||= ... +# 122| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] OtherConstant +# 122| getScopeExpr: [MethodCall] call to bar +# 122| getReceiver: [MethodCall] call to foo +# 122| getReceiver: [SelfVariableAccess] self +# 122| getArgument: [IntegerLiteral] 1 +# 122| getAnOperand/getRightOperand: [IntegerLiteral] 7 +# 123| getStmt: [AssignLogicalOrExpr] ... ||= ... +# 123| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT4 +# 123| getAnOperand/getRightOperand: [IntegerLiteral] 7 +# 124| getStmt: [AssignExpr] ... = ... +# 124| getAnOperand/getLeftOperand: [DestructuredLhsExpr] (..., ...) +# 124| getElement: [ConstantAssignment] FOO +# 124| getElement: [ConstantAssignment] BAR +# 124| getElement: [ConstantAssignment] FOO +# 124| getScopeExpr: [LocalVariableAccess] foo +# 124| getAnOperand/getRightOperand: [ArrayLiteral] [...] +# 124| getElement: [IntegerLiteral] 1 +# 124| getElement: [IntegerLiteral] 2 +# 124| getElement: [IntegerLiteral] 3 +# 126| getStmt: [DivExpr] ... / ... +# 126| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] foo +# 127| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 5 params/params.rb: # 1| [Toplevel] params.rb # 4| getStmt: [Method] identifier_method_params diff --git a/ruby/ql/test/library-tests/ast/AstDesugar.expected b/ruby/ql/test/library-tests/ast/AstDesugar.expected index 0a1f43b03d58..294438607496 100644 --- a/ruby/ql/test/library-tests/ast/AstDesugar.expected +++ b/ruby/ql/test/library-tests/ast/AstDesugar.expected @@ -965,101 +965,101 @@ operations/operations.rb: # 85| getAnOperand/getRightOperand: [BitwiseXorExpr] ... ^ ... # 85| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] baz # 85| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] qux -# 89| [AssignAddExpr] ... += ... -# 89| getDesugared: [AssignExpr] ... = ... -# 89| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x -# 89| getReceiver: [SelfVariableAccess] self -# 89| getAnOperand/getRightOperand: [AddExpr] ... + ... -# 89| getAnOperand/getLeftOperand/getReceiver: [InstanceVariableAccess] @x -# 89| getReceiver: [SelfVariableAccess] self -# 89| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 2 -# 92| [AssignDivExpr] ... /= ... -# 92| getDesugared: [AssignExpr] ... = ... -# 92| getAnOperand/getLeftOperand: [ClassVariableAccess] @@y -# 92| getAnOperand/getRightOperand: [DivExpr] ... / ... -# 92| getAnOperand/getLeftOperand/getReceiver: [ClassVariableAccess] @@y -# 92| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 4 -# 96| [AssignMulExpr] ... *= ... -# 96| getDesugared: [AssignExpr] ... = ... -# 96| getAnOperand/getLeftOperand: [GlobalVariableAccess] $global_var -# 96| getAnOperand/getRightOperand: [MulExpr] ... * ... -# 96| getAnOperand/getLeftOperand/getReceiver: [GlobalVariableAccess] $global_var -# 96| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 6 -# 99| [AssignAddExpr] ... += ... -# 99| getDesugared: [AssignExpr] ... = ... -# 99| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT2 -# 99| getAnOperand/getRightOperand: [AddExpr] ... + ... -# 99| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] CONSTANT2 -# 99| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 6 -# 100| [AssignLogicalOrExpr] ... ||= ... -# 100| getDesugared: [AssignExpr] ... = ... -# 100| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT3 -# 100| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... -# 100| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] CONSTANT3 -# 100| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 7 -# 101| [AssignLogicalOrExpr] ... ||= ... -# 101| getDesugared: [StmtSequence] ... -# 101| getStmt: [AssignExpr] ... = ... -# 101| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__0 -# 101| getAnOperand/getRightOperand: [ConstantReadAccess] Foo -# 101| getStmt: [AssignExpr] ... = ... -# 101| getAnOperand/getLeftOperand: [ConstantAssignment] MemberConstant -# 101| getScopeExpr: [LocalVariableAccess] __synth__0 -# 101| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... -# 101| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] MemberConstant -# 101| getScopeExpr: [LocalVariableAccess] __synth__0 -# 101| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 8 -# 102| [AssignLogicalOrExpr] ... ||= ... -# 102| getDesugared: [StmtSequence] ... -# 102| getStmt: [AssignExpr] ... = ... -# 102| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__0 -# 102| getAnOperand/getRightOperand: [MethodCall] call to bar -# 102| getReceiver: [MethodCall] call to foo -# 102| getReceiver: [SelfVariableAccess] self -# 102| getArgument: [IntegerLiteral] 1 -# 102| getStmt: [AssignExpr] ... = ... -# 102| getAnOperand/getLeftOperand: [ConstantAssignment] OtherConstant -# 102| getScopeExpr: [LocalVariableAccess] __synth__0 -# 102| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... -# 102| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] OtherConstant -# 102| getScopeExpr: [LocalVariableAccess] __synth__0 -# 102| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 7 -# 103| [AssignLogicalOrExpr] ... ||= ... -# 103| getDesugared: [AssignExpr] ... = ... -# 103| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT4 -# 103| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... -# 103| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] CONSTANT4 -# 103| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 7 -# 104| [AssignExpr] ... = ... -# 104| getDesugared: [StmtSequence] ... -# 104| getStmt: [AssignExpr] ... = ... -# 104| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__2 -# 104| getAnOperand/getRightOperand: [LocalVariableAccess] foo -# 104| getStmt: [AssignExpr] ... = ... -# 104| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__3 -# 104| getAnOperand/getRightOperand: [SplatExpr] * ... -# 104| getAnOperand/getOperand/getReceiver: [ArrayLiteral] [...] -# 104| getDesugared: [MethodCall] call to [] -# 104| getReceiver: [ConstantReadAccess] Array -# 104| getArgument: [IntegerLiteral] 1 -# 104| getArgument: [IntegerLiteral] 2 -# 104| getArgument: [IntegerLiteral] 3 -# 104| getStmt: [AssignExpr] ... = ... -# 104| getAnOperand/getLeftOperand: [ConstantAssignment] FOO -# 104| getAnOperand/getRightOperand: [MethodCall] call to [] -# 104| getReceiver: [LocalVariableAccess] __synth__3 -# 104| getArgument: [IntegerLiteral] 0 -# 104| getStmt: [AssignExpr] ... = ... -# 104| getAnOperand/getLeftOperand: [ConstantAssignment] BAR -# 104| getAnOperand/getRightOperand: [MethodCall] call to [] -# 104| getReceiver: [LocalVariableAccess] __synth__3 -# 104| getArgument: [IntegerLiteral] 1 -# 104| getStmt: [AssignExpr] ... = ... -# 104| getAnOperand/getLeftOperand: [ConstantAssignment] FOO -# 104| getScopeExpr: [LocalVariableAccess] __synth__2 -# 104| getAnOperand/getRightOperand: [MethodCall] call to [] -# 104| getReceiver: [LocalVariableAccess] __synth__3 -# 104| getArgument: [IntegerLiteral] 2 +# 109| [AssignAddExpr] ... += ... +# 109| getDesugared: [AssignExpr] ... = ... +# 109| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x +# 109| getReceiver: [SelfVariableAccess] self +# 109| getAnOperand/getRightOperand: [AddExpr] ... + ... +# 109| getAnOperand/getLeftOperand/getReceiver: [InstanceVariableAccess] @x +# 109| getReceiver: [SelfVariableAccess] self +# 109| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 2 +# 112| [AssignDivExpr] ... /= ... +# 112| getDesugared: [AssignExpr] ... = ... +# 112| getAnOperand/getLeftOperand: [ClassVariableAccess] @@y +# 112| getAnOperand/getRightOperand: [DivExpr] ... / ... +# 112| getAnOperand/getLeftOperand/getReceiver: [ClassVariableAccess] @@y +# 112| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 4 +# 116| [AssignMulExpr] ... *= ... +# 116| getDesugared: [AssignExpr] ... = ... +# 116| getAnOperand/getLeftOperand: [GlobalVariableAccess] $global_var +# 116| getAnOperand/getRightOperand: [MulExpr] ... * ... +# 116| getAnOperand/getLeftOperand/getReceiver: [GlobalVariableAccess] $global_var +# 116| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 6 +# 119| [AssignAddExpr] ... += ... +# 119| getDesugared: [AssignExpr] ... = ... +# 119| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT2 +# 119| getAnOperand/getRightOperand: [AddExpr] ... + ... +# 119| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] CONSTANT2 +# 119| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 6 +# 120| [AssignLogicalOrExpr] ... ||= ... +# 120| getDesugared: [AssignExpr] ... = ... +# 120| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT3 +# 120| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... +# 120| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] CONSTANT3 +# 120| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 7 +# 121| [AssignLogicalOrExpr] ... ||= ... +# 121| getDesugared: [StmtSequence] ... +# 121| getStmt: [AssignExpr] ... = ... +# 121| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__0 +# 121| getAnOperand/getRightOperand: [ConstantReadAccess] Foo +# 121| getStmt: [AssignExpr] ... = ... +# 121| getAnOperand/getLeftOperand: [ConstantAssignment] MemberConstant +# 121| getScopeExpr: [LocalVariableAccess] __synth__0 +# 121| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... +# 121| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] MemberConstant +# 121| getScopeExpr: [LocalVariableAccess] __synth__0 +# 121| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 8 +# 122| [AssignLogicalOrExpr] ... ||= ... +# 122| getDesugared: [StmtSequence] ... +# 122| getStmt: [AssignExpr] ... = ... +# 122| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__0 +# 122| getAnOperand/getRightOperand: [MethodCall] call to bar +# 122| getReceiver: [MethodCall] call to foo +# 122| getReceiver: [SelfVariableAccess] self +# 122| getArgument: [IntegerLiteral] 1 +# 122| getStmt: [AssignExpr] ... = ... +# 122| getAnOperand/getLeftOperand: [ConstantAssignment] OtherConstant +# 122| getScopeExpr: [LocalVariableAccess] __synth__0 +# 122| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... +# 122| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] OtherConstant +# 122| getScopeExpr: [LocalVariableAccess] __synth__0 +# 122| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 7 +# 123| [AssignLogicalOrExpr] ... ||= ... +# 123| getDesugared: [AssignExpr] ... = ... +# 123| getAnOperand/getLeftOperand: [ConstantAssignment, ConstantReadAccess] CONSTANT4 +# 123| getAnOperand/getRightOperand: [LogicalOrExpr] ... || ... +# 123| getAnOperand/getLeftOperand/getReceiver: [ConstantReadAccess] CONSTANT4 +# 123| getAnOperand/getArgument/getRightOperand: [IntegerLiteral] 7 +# 124| [AssignExpr] ... = ... +# 124| getDesugared: [StmtSequence] ... +# 124| getStmt: [AssignExpr] ... = ... +# 124| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__2 +# 124| getAnOperand/getRightOperand: [LocalVariableAccess] foo +# 124| getStmt: [AssignExpr] ... = ... +# 124| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__3 +# 124| getAnOperand/getRightOperand: [SplatExpr] * ... +# 124| getAnOperand/getOperand/getReceiver: [ArrayLiteral] [...] +# 124| getDesugared: [MethodCall] call to [] +# 124| getReceiver: [ConstantReadAccess] Array +# 124| getArgument: [IntegerLiteral] 1 +# 124| getArgument: [IntegerLiteral] 2 +# 124| getArgument: [IntegerLiteral] 3 +# 124| getStmt: [AssignExpr] ... = ... +# 124| getAnOperand/getLeftOperand: [ConstantAssignment] FOO +# 124| getAnOperand/getRightOperand: [MethodCall] call to [] +# 124| getReceiver: [LocalVariableAccess] __synth__3 +# 124| getArgument: [IntegerLiteral] 0 +# 124| getStmt: [AssignExpr] ... = ... +# 124| getAnOperand/getLeftOperand: [ConstantAssignment] BAR +# 124| getAnOperand/getRightOperand: [MethodCall] call to [] +# 124| getReceiver: [LocalVariableAccess] __synth__3 +# 124| getArgument: [IntegerLiteral] 1 +# 124| getStmt: [AssignExpr] ... = ... +# 124| getAnOperand/getLeftOperand: [ConstantAssignment] FOO +# 124| getScopeExpr: [LocalVariableAccess] __synth__2 +# 124| getAnOperand/getRightOperand: [MethodCall] call to [] +# 124| getReceiver: [LocalVariableAccess] __synth__3 +# 124| getArgument: [IntegerLiteral] 2 params/params.rb: # 8| [HashLiteral] {...} # 8| getDesugared: [MethodCall] call to [] diff --git a/ruby/ql/test/library-tests/ast/TreeSitter.expected b/ruby/ql/test/library-tests/ast/TreeSitter.expected index a2ae9813a795..854b5e1f10b7 100644 --- a/ruby/ql/test/library-tests/ast/TreeSitter.expected +++ b/ruby/ql/test/library-tests/ast/TreeSitter.expected @@ -2982,16 +2982,88 @@ control/conditionals.rb: # 80| 0: [ReservedWord] then # 81| 1: [Identifier] c # 82| 3: [ReservedWord] end -# 85| 19: [If] If -# 85| 0: [ReservedWord] if -# 85| 1: [Binary] Binary -# 85| 0: [Identifier] a -# 85| 1: [ReservedWord] && -# 86| 2: [Identifier] b +# 86| 19: [If] If +# 86| 0: [ReservedWord] if +# 86| 1: [Identifier] a # 86| 2: [Then] Then -# 87| 0: [ReservedWord] then -# 88| 1: [Identifier] c -# 89| 3: [ReservedWord] end +# 87| 0: [Call] Call +# 87| 0: [Identifier] and +# 87| 1: [ArgumentList] ArgumentList +# 87| 0: [Identifier] b +# 88| 1: [Identifier] then +# 89| 2: [Identifier] c +# 90| 3: [ReservedWord] end +# 94| 20: [If] If +# 94| 0: [ReservedWord] if +# 94| 1: [Identifier] a +# 94| 2: [Then] Then +# 96| 1: [Identifier] then +# 97| 2: [Identifier] c +# 98| 3: [ReservedWord] end +# 102| 21: [If] If +# 102| 0: [ReservedWord] if +# 102| 1: [Identifier] a +# 102| 2: [Then] Then +# 103| 0: [Call] Call +# 103| 0: [Identifier] or +# 103| 1: [ArgumentList] ArgumentList +# 103| 0: [Identifier] b +# 104| 1: [Identifier] then +# 105| 2: [Identifier] c +# 106| 3: [ReservedWord] end +# 109| 22: [If] If +# 109| 0: [ReservedWord] if +# 109| 1: [Binary] Binary +# 109| 0: [Binary] Binary +# 109| 0: [Identifier] a +# 110| 1: [ReservedWord] && +# 110| 2: [Identifier] b +# 111| 1: [ReservedWord] && +# 111| 2: [Identifier] c +# 111| 2: [Then] Then +# 112| 0: [ReservedWord] then +# 113| 1: [Identifier] d +# 114| 3: [ReservedWord] end +# 118| 23: [If] If +# 118| 0: [ReservedWord] if +# 118| 1: [Binary] Binary +# 118| 0: [Identifier] a +# 119| 1: [ReservedWord] && +# 119| 2: [Identifier] b +# 119| 2: [Then] Then +# 121| 1: [Identifier] then +# 122| 2: [Identifier] d +# 123| 3: [ReservedWord] end +# 127| 24: [If] If +# 127| 0: [ReservedWord] if +# 127| 1: [Binary] Binary +# 127| 0: [Identifier] a +# 128| 1: [ReservedWord] && +# 128| 2: [ParenthesizedStatements] ParenthesizedStatements +# 128| 0: [ReservedWord] ( +# 128| 1: [Identifier] b +# 129| 3: [ReservedWord] ) +# 129| 2: [Then] Then +# 130| 0: [ReservedWord] then +# 131| 1: [Identifier] d +# 132| 3: [ReservedWord] end +# 136| 25: [If] If +# 136| 0: [ReservedWord] if +# 136| 1: [Identifier] a +# 136| 2: [Then] Then +# 139| 1: [Identifier] then +# 140| 2: [Identifier] d +# 141| 3: [ReservedWord] end +# 144| 26: [If] If +# 144| 0: [ReservedWord] if +# 144| 1: [Binary] Binary +# 144| 0: [Identifier] a +# 144| 1: [ReservedWord] && +# 145| 2: [Identifier] b +# 145| 2: [Then] Then +# 146| 0: [ReservedWord] then +# 147| 1: [Identifier] c +# 148| 3: [ReservedWord] end # 1| [Comment] # Define some variables used below # 9| [Comment] # If expr with no else # 14| [Comment] # If expr with single else @@ -3004,9 +3076,36 @@ control/conditionals.rb: # 57| [Comment] # Ternary if expr # 60| [Comment] # If expr with empty else (treated as no else) # 66| [Comment] # If expr with empty then (treated as no then) -# 72| [Comment] # If expr with && on same line as condition and then -# 77| [Comment] # If expr with && at the start of a separate line before then -# 84| [Comment] # If expr with && at end of line +# 72| [Comment] # If expr with `&&` on same line as condition and then +# 77| [Comment] # If expr with `&&` at the start of a separate line before then +# 84| [Comment] # If expr with `and` at the start of a separate line before then +# 85| [Comment] # NOTE: This is not parsed correctly, `and b` is parsed as a call +# 92| [Comment] # If expr with `||` at the start of a separate line before then +# 93| [Comment] # NOTE: This is not parsed correctly due to the leading `||` +# 95| [ReservedWord] || +# 95| [Identifier] b +# 100| [Comment] # If expr with `or` at the start of a separate line before then +# 101| [Comment] # NOTE: This is not parsed correctly, `or b` is parsed as a call +# 108| [Comment] # If expr with repeated && at the start of a separate line before then +# 116| [Comment] # If expr with alternating && and || at the start of lines +# 117| [Comment] # NOTE: This is not parsed correctly due to the leading `||` +# 120| [ReservedWord] || +# 120| [Identifier] c +# 125| [Comment] # If expr with operator at start of line and parentheses +# 126| [Comment] # NOTE: This is not parsed correctly due to the leading `||` +# 129| [ReservedWord] || +# 129| [Identifier] c +# 134| [Comment] # If expr with operator at start of line and parentheses +# 135| [Comment] # NOTE: This is not parsed correctly due to the leading `||` +# 137| [ReservedWord] || +# 137| [ParenthesizedStatements] ParenthesizedStatements +# 137| 0: [ReservedWord] ( +# 137| 1: [Binary] Binary +# 137| 0: [Identifier] b +# 138| 1: [ReservedWord] && +# 138| 2: [Identifier] c +# 138| 2: [ReservedWord] ) +# 143| [Comment] # If expr with && at end of line control/loops.rb: # 1| [Program] Program # 2| 0: [Assignment] Assignment @@ -5597,100 +5696,144 @@ operations/operations.rb: # 85| 0: [Identifier] baz # 85| 1: [ReservedWord] ^= # 85| 2: [Identifier] qux -# 87| 63: [Class] Class -# 87| 0: [ReservedWord] class -# 87| 1: [Constant] X -# 88| 2: [BodyStatement] BodyStatement -# 88| 0: [Assignment] Assignment -# 88| 0: [InstanceVariable] @x -# 88| 1: [ReservedWord] = -# 88| 2: [Integer] 1 -# 89| 1: [OperatorAssignment] OperatorAssignment -# 89| 0: [InstanceVariable] @x -# 89| 1: [ReservedWord] += -# 89| 2: [Integer] 2 -# 91| 2: [Assignment] Assignment -# 91| 0: [ClassVariable] @@y -# 91| 1: [ReservedWord] = -# 91| 2: [Integer] 3 -# 92| 3: [OperatorAssignment] OperatorAssignment -# 92| 0: [ClassVariable] @@y -# 92| 1: [ReservedWord] /= -# 92| 2: [Integer] 4 -# 93| 3: [ReservedWord] end -# 95| 64: [Assignment] Assignment -# 95| 0: [GlobalVariable] $global_var -# 95| 1: [ReservedWord] = -# 95| 2: [Integer] 5 -# 96| 65: [OperatorAssignment] OperatorAssignment -# 96| 0: [GlobalVariable] $global_var -# 96| 1: [ReservedWord] *= -# 96| 2: [Integer] 6 -# 98| 66: [Assignment] Assignment -# 98| 0: [Constant] CONSTANT1 -# 98| 1: [ReservedWord] = -# 98| 2: [Integer] 5 -# 99| 67: [OperatorAssignment] OperatorAssignment -# 99| 0: [Constant] CONSTANT2 -# 99| 1: [ReservedWord] += -# 99| 2: [Integer] 6 -# 100| 68: [OperatorAssignment] OperatorAssignment -# 100| 0: [Constant] CONSTANT3 -# 100| 1: [ReservedWord] ||= -# 100| 2: [Integer] 7 -# 101| 69: [OperatorAssignment] OperatorAssignment -# 101| 0: [ScopeResolution] ScopeResolution -# 101| 0: [Constant] Foo -# 101| 1: [ReservedWord] :: -# 101| 2: [Constant] MemberConstant -# 101| 1: [ReservedWord] ||= -# 101| 2: [Integer] 8 -# 102| 70: [OperatorAssignment] OperatorAssignment -# 102| 0: [ScopeResolution] ScopeResolution -# 102| 0: [Call] Call -# 102| 0: [Call] Call -# 102| 0: [Identifier] foo -# 102| 1: [ArgumentList] ArgumentList -# 102| 0: [ReservedWord] ( -# 102| 1: [Integer] 1 -# 102| 2: [ReservedWord] ) -# 102| 1: [ReservedWord] . -# 102| 2: [Identifier] bar -# 102| 1: [ReservedWord] :: -# 102| 2: [Constant] OtherConstant -# 102| 1: [ReservedWord] ||= -# 102| 2: [Integer] 7 -# 103| 71: [OperatorAssignment] OperatorAssignment -# 103| 0: [ScopeResolution] ScopeResolution -# 103| 0: [ReservedWord] :: -# 103| 1: [Constant] CONSTANT4 -# 103| 1: [ReservedWord] ||= -# 103| 2: [Integer] 7 -# 104| 72: [Assignment] Assignment -# 104| 0: [LeftAssignmentList] LeftAssignmentList -# 104| 0: [Constant] FOO -# 104| 1: [ReservedWord] , -# 104| 2: [ScopeResolution] ScopeResolution -# 104| 0: [ReservedWord] :: -# 104| 1: [Constant] BAR -# 104| 3: [ReservedWord] , -# 104| 4: [ScopeResolution] ScopeResolution -# 104| 0: [Identifier] foo -# 104| 1: [ReservedWord] :: -# 104| 2: [Constant] FOO -# 104| 1: [ReservedWord] = -# 104| 2: [Array] Array -# 104| 0: [ReservedWord] [ -# 104| 1: [Integer] 1 -# 104| 2: [ReservedWord] , -# 104| 3: [Integer] 2 -# 104| 4: [ReservedWord] , -# 104| 5: [Integer] 3 -# 104| 6: [ReservedWord] ] -# 106| 73: [Binary] Binary -# 106| 0: [Identifier] foo -# 106| 1: [ReservedWord] / -# 107| 2: [Integer] 5 +# 88| 63: [Assignment] Assignment +# 88| 0: [Identifier] foo +# 88| 1: [ReservedWord] = +# 88| 2: [Binary] Binary +# 88| 0: [Identifier] a +# 89| 1: [ReservedWord] && +# 89| 2: [Identifier] b +# 91| 64: [Assignment] Assignment +# 91| 0: [Identifier] bar +# 91| 1: [ReservedWord] = +# 91| 2: [Identifier] a +# 95| 66: [Method] Method +# 95| 0: [ReservedWord] def +# 95| 1: [Identifier] foo +# 95| 2: [MethodParameters] MethodParameters +# 95| 0: [ReservedWord] ( +# 95| 1: [Identifier] a +# 95| 2: [ReservedWord] , +# 95| 3: [Identifier] b +# 95| 4: [ReservedWord] ) +# 96| 3: [BodyStatement] BodyStatement +# 96| 0: [Return] Return +# 96| 0: [ReservedWord] return +# 96| 1: [ArgumentList] ArgumentList +# 96| 0: [Binary] Binary +# 96| 0: [Identifier] a +# 97| 1: [ReservedWord] && +# 97| 2: [Identifier] b +# 98| 4: [ReservedWord] end +# 102| 67: [Method] Method +# 102| 0: [ReservedWord] def +# 102| 1: [Identifier] bar +# 102| 2: [MethodParameters] MethodParameters +# 102| 0: [ReservedWord] ( +# 102| 1: [Identifier] a +# 102| 2: [ReservedWord] , +# 102| 3: [Identifier] b +# 102| 4: [ReservedWord] ) +# 103| 3: [BodyStatement] BodyStatement +# 103| 0: [Return] Return +# 103| 0: [ReservedWord] return +# 103| 1: [ArgumentList] ArgumentList +# 103| 0: [Identifier] a +# 105| 4: [ReservedWord] end +# 107| 68: [Class] Class +# 107| 0: [ReservedWord] class +# 107| 1: [Constant] X +# 108| 2: [BodyStatement] BodyStatement +# 108| 0: [Assignment] Assignment +# 108| 0: [InstanceVariable] @x +# 108| 1: [ReservedWord] = +# 108| 2: [Integer] 1 +# 109| 1: [OperatorAssignment] OperatorAssignment +# 109| 0: [InstanceVariable] @x +# 109| 1: [ReservedWord] += +# 109| 2: [Integer] 2 +# 111| 2: [Assignment] Assignment +# 111| 0: [ClassVariable] @@y +# 111| 1: [ReservedWord] = +# 111| 2: [Integer] 3 +# 112| 3: [OperatorAssignment] OperatorAssignment +# 112| 0: [ClassVariable] @@y +# 112| 1: [ReservedWord] /= +# 112| 2: [Integer] 4 +# 113| 3: [ReservedWord] end +# 115| 69: [Assignment] Assignment +# 115| 0: [GlobalVariable] $global_var +# 115| 1: [ReservedWord] = +# 115| 2: [Integer] 5 +# 116| 70: [OperatorAssignment] OperatorAssignment +# 116| 0: [GlobalVariable] $global_var +# 116| 1: [ReservedWord] *= +# 116| 2: [Integer] 6 +# 118| 71: [Assignment] Assignment +# 118| 0: [Constant] CONSTANT1 +# 118| 1: [ReservedWord] = +# 118| 2: [Integer] 5 +# 119| 72: [OperatorAssignment] OperatorAssignment +# 119| 0: [Constant] CONSTANT2 +# 119| 1: [ReservedWord] += +# 119| 2: [Integer] 6 +# 120| 73: [OperatorAssignment] OperatorAssignment +# 120| 0: [Constant] CONSTANT3 +# 120| 1: [ReservedWord] ||= +# 120| 2: [Integer] 7 +# 121| 74: [OperatorAssignment] OperatorAssignment +# 121| 0: [ScopeResolution] ScopeResolution +# 121| 0: [Constant] Foo +# 121| 1: [ReservedWord] :: +# 121| 2: [Constant] MemberConstant +# 121| 1: [ReservedWord] ||= +# 121| 2: [Integer] 8 +# 122| 75: [OperatorAssignment] OperatorAssignment +# 122| 0: [ScopeResolution] ScopeResolution +# 122| 0: [Call] Call +# 122| 0: [Call] Call +# 122| 0: [Identifier] foo +# 122| 1: [ArgumentList] ArgumentList +# 122| 0: [ReservedWord] ( +# 122| 1: [Integer] 1 +# 122| 2: [ReservedWord] ) +# 122| 1: [ReservedWord] . +# 122| 2: [Identifier] bar +# 122| 1: [ReservedWord] :: +# 122| 2: [Constant] OtherConstant +# 122| 1: [ReservedWord] ||= +# 122| 2: [Integer] 7 +# 123| 76: [OperatorAssignment] OperatorAssignment +# 123| 0: [ScopeResolution] ScopeResolution +# 123| 0: [ReservedWord] :: +# 123| 1: [Constant] CONSTANT4 +# 123| 1: [ReservedWord] ||= +# 123| 2: [Integer] 7 +# 124| 77: [Assignment] Assignment +# 124| 0: [LeftAssignmentList] LeftAssignmentList +# 124| 0: [Constant] FOO +# 124| 1: [ReservedWord] , +# 124| 2: [ScopeResolution] ScopeResolution +# 124| 0: [ReservedWord] :: +# 124| 1: [Constant] BAR +# 124| 3: [ReservedWord] , +# 124| 4: [ScopeResolution] ScopeResolution +# 124| 0: [Identifier] foo +# 124| 1: [ReservedWord] :: +# 124| 2: [Constant] FOO +# 124| 1: [ReservedWord] = +# 124| 2: [Array] Array +# 124| 0: [ReservedWord] [ +# 124| 1: [Integer] 1 +# 124| 2: [ReservedWord] , +# 124| 3: [Integer] 2 +# 124| 4: [ReservedWord] , +# 124| 5: [Integer] 3 +# 124| 6: [ReservedWord] ] +# 126| 78: [Binary] Binary +# 126| 0: [Identifier] foo +# 126| 1: [ReservedWord] / +# 127| 2: [Integer] 5 # 1| [Comment] # Start with assignments to all the identifiers used below, so that they are # 2| [Comment] # interpreted as variables. # 22| [Comment] # Unary operations @@ -5703,6 +5846,15 @@ operations/operations.rb: # 68| [Comment] # Arithmetic assign operations # 76| [Comment] # Logical assign operations # 80| [Comment] # Bitwise assign operations +# 87| [Comment] # Assignments with operation at start of line +# 90| [Comment] # NOTE: This is not parsed correctly, `|| b` is dropped +# 92| [ReservedWord] || +# 92| [Identifier] b +# 94| [Comment] # Return with `&&` at start of line +# 100| [Comment] # Return with `||` at start of line +# 101| [Comment] # NOTE: This is not parsed correctly, `|| b` is dropped +# 104| [ReservedWord] || +# 104| [Identifier] b params/params.rb: # 1| [Program] Program # 4| 0: [Method] Method diff --git a/ruby/ql/test/library-tests/ast/ValueText.expected b/ruby/ql/test/library-tests/ast/ValueText.expected index c2204cf60d42..49122cb6ed0c 100644 --- a/ruby/ql/test/library-tests/ast/ValueText.expected +++ b/ruby/ql/test/library-tests/ast/ValueText.expected @@ -340,8 +340,18 @@ exprValue | control/conditionals.rb:74:5:74:5 | c | 0 | int | | control/conditionals.rb:79:8:79:8 | b | 0 | int | | control/conditionals.rb:81:5:81:5 | c | 0 | int | -| control/conditionals.rb:86:5:86:5 | b | 0 | int | -| control/conditionals.rb:88:5:88:5 | c | 0 | int | +| control/conditionals.rb:87:9:87:9 | b | 0 | int | +| control/conditionals.rb:89:5:89:5 | c | 0 | int | +| control/conditionals.rb:103:8:103:8 | b | 0 | int | +| control/conditionals.rb:105:5:105:5 | c | 0 | int | +| control/conditionals.rb:110:8:110:8 | b | 0 | int | +| control/conditionals.rb:111:8:111:8 | c | 0 | int | +| control/conditionals.rb:113:5:113:5 | d | 0 | int | +| control/conditionals.rb:119:6:119:6 | b | 0 | int | +| control/conditionals.rb:128:7:128:7 | b | 0 | int | +| control/conditionals.rb:131:5:131:5 | d | 0 | int | +| control/conditionals.rb:145:5:145:5 | b | 0 | int | +| control/conditionals.rb:147:5:147:5 | c | 0 | int | | control/loops.rb:2:7:2:7 | 0 | 0 | int | | control/loops.rb:3:7:3:7 | 0 | 0 | int | | control/loops.rb:4:5:4:5 | 0 | 0 | int | @@ -914,26 +924,27 @@ exprValue | operations/operations.rb:84:9:84:12 | 0x01 | 1 | int | | operations/operations.rb:85:2:85:4 | baz | 0 | int | | operations/operations.rb:85:9:85:11 | qux | 0 | int | -| operations/operations.rb:88:8:88:8 | 1 | 1 | int | -| operations/operations.rb:89:9:89:9 | 2 | 2 | int | -| operations/operations.rb:91:9:91:9 | 3 | 3 | int | -| operations/operations.rb:92:10:92:10 | 4 | 4 | int | -| operations/operations.rb:95:15:95:15 | 5 | 5 | int | -| operations/operations.rb:96:16:96:16 | 6 | 6 | int | -| operations/operations.rb:98:13:98:13 | 5 | 5 | int | -| operations/operations.rb:99:14:99:14 | 6 | 6 | int | -| operations/operations.rb:100:15:100:15 | 7 | 7 | int | -| operations/operations.rb:101:25:101:25 | 8 | 8 | int | -| operations/operations.rb:102:5:102:5 | 1 | 1 | int | -| operations/operations.rb:102:31:102:31 | 7 | 7 | int | -| operations/operations.rb:103:17:103:17 | 7 | 7 | int | -| operations/operations.rb:104:1:104:3 | 0 | 0 | int | -| operations/operations.rb:104:6:104:10 | 1 | 1 | int | -| operations/operations.rb:104:13:104:20 | 2 | 2 | int | -| operations/operations.rb:104:25:104:25 | 1 | 1 | int | -| operations/operations.rb:104:28:104:28 | 2 | 2 | int | -| operations/operations.rb:104:31:104:31 | 3 | 3 | int | -| operations/operations.rb:107:1:107:1 | 5 | 5 | int | +| operations/operations.rb:89:6:89:6 | b | 0 | int | +| operations/operations.rb:108:8:108:8 | 1 | 1 | int | +| operations/operations.rb:109:9:109:9 | 2 | 2 | int | +| operations/operations.rb:111:9:111:9 | 3 | 3 | int | +| operations/operations.rb:112:10:112:10 | 4 | 4 | int | +| operations/operations.rb:115:15:115:15 | 5 | 5 | int | +| operations/operations.rb:116:16:116:16 | 6 | 6 | int | +| operations/operations.rb:118:13:118:13 | 5 | 5 | int | +| operations/operations.rb:119:14:119:14 | 6 | 6 | int | +| operations/operations.rb:120:15:120:15 | 7 | 7 | int | +| operations/operations.rb:121:25:121:25 | 8 | 8 | int | +| operations/operations.rb:122:5:122:5 | 1 | 1 | int | +| operations/operations.rb:122:31:122:31 | 7 | 7 | int | +| operations/operations.rb:123:17:123:17 | 7 | 7 | int | +| operations/operations.rb:124:1:124:3 | 0 | 0 | int | +| operations/operations.rb:124:6:124:10 | 1 | 1 | int | +| operations/operations.rb:124:13:124:20 | 2 | 2 | int | +| operations/operations.rb:124:25:124:25 | 1 | 1 | int | +| operations/operations.rb:124:28:124:28 | 2 | 2 | int | +| operations/operations.rb:124:31:124:31 | 3 | 3 | int | +| operations/operations.rb:127:1:127:1 | 5 | 5 | int | | params/params.rb:41:46:41:46 | 7 | 7 | int | | params/params.rb:47:19:47:21 | :bar | :bar | symbol | | params/params.rb:47:24:47:24 | 2 | 2 | int | @@ -1267,8 +1278,18 @@ exprCfgNodeValue | control/conditionals.rb:74:5:74:5 | c | 0 | int | | control/conditionals.rb:79:8:79:8 | b | 0 | int | | control/conditionals.rb:81:5:81:5 | c | 0 | int | -| control/conditionals.rb:86:5:86:5 | b | 0 | int | -| control/conditionals.rb:88:5:88:5 | c | 0 | int | +| control/conditionals.rb:87:9:87:9 | b | 0 | int | +| control/conditionals.rb:89:5:89:5 | c | 0 | int | +| control/conditionals.rb:103:8:103:8 | b | 0 | int | +| control/conditionals.rb:105:5:105:5 | c | 0 | int | +| control/conditionals.rb:110:8:110:8 | b | 0 | int | +| control/conditionals.rb:111:8:111:8 | c | 0 | int | +| control/conditionals.rb:113:5:113:5 | d | 0 | int | +| control/conditionals.rb:119:6:119:6 | b | 0 | int | +| control/conditionals.rb:128:7:128:7 | b | 0 | int | +| control/conditionals.rb:131:5:131:5 | d | 0 | int | +| control/conditionals.rb:145:5:145:5 | b | 0 | int | +| control/conditionals.rb:147:5:147:5 | c | 0 | int | | control/loops.rb:2:7:2:7 | 0 | 0 | int | | control/loops.rb:3:7:3:7 | 0 | 0 | int | | control/loops.rb:4:5:4:5 | 0 | 0 | int | @@ -1840,26 +1861,7 @@ exprCfgNodeValue | operations/operations.rb:84:9:84:12 | 0x01 | 1 | int | | operations/operations.rb:85:2:85:4 | baz | 0 | int | | operations/operations.rb:85:9:85:11 | qux | 0 | int | -| operations/operations.rb:88:8:88:8 | 1 | 1 | int | -| operations/operations.rb:89:9:89:9 | 2 | 2 | int | -| operations/operations.rb:91:9:91:9 | 3 | 3 | int | -| operations/operations.rb:92:10:92:10 | 4 | 4 | int | -| operations/operations.rb:95:15:95:15 | 5 | 5 | int | -| operations/operations.rb:96:16:96:16 | 6 | 6 | int | -| operations/operations.rb:98:13:98:13 | 5 | 5 | int | -| operations/operations.rb:99:14:99:14 | 6 | 6 | int | -| operations/operations.rb:100:15:100:15 | 7 | 7 | int | -| operations/operations.rb:101:25:101:25 | 8 | 8 | int | -| operations/operations.rb:102:5:102:5 | 1 | 1 | int | -| operations/operations.rb:102:31:102:31 | 7 | 7 | int | -| operations/operations.rb:103:17:103:17 | 7 | 7 | int | -| operations/operations.rb:104:1:104:3 | 0 | 0 | int | -| operations/operations.rb:104:6:104:10 | 1 | 1 | int | -| operations/operations.rb:104:13:104:20 | 2 | 2 | int | -| operations/operations.rb:104:25:104:25 | 1 | 1 | int | -| operations/operations.rb:104:28:104:28 | 2 | 2 | int | -| operations/operations.rb:104:31:104:31 | 3 | 3 | int | -| operations/operations.rb:107:1:107:1 | 5 | 5 | int | +| operations/operations.rb:89:6:89:6 | b | 0 | int | | params/params.rb:41:46:41:46 | 7 | 7 | int | | params/params.rb:47:19:47:21 | :bar | :bar | symbol | | params/params.rb:47:24:47:24 | 2 | 2 | int | diff --git a/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected b/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected index f9b619c2ea05..da3cb1a95197 100644 --- a/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected +++ b/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected @@ -24,7 +24,14 @@ conditionalExprs | conditionals.rb:67:1:70:3 | if ... | IfExpr | conditionals.rb:67:4:67:8 | ... > ... | conditionals.rb:68:1:69:5 | else ... | false | | conditionals.rb:73:1:75:3 | if ... | IfExpr | conditionals.rb:73:4:73:9 | ... && ... | conditionals.rb:73:11:74:5 | then ... | true | | conditionals.rb:78:1:82:3 | if ... | IfExpr | conditionals.rb:78:4:79:8 | ... && ... | conditionals.rb:79:9:81:5 | then ... | true | -| conditionals.rb:85:1:89:3 | if ... | IfExpr | conditionals.rb:85:4:86:5 | ... && ... | conditionals.rb:86:6:88:5 | then ... | true | +| conditionals.rb:86:1:90:3 | if ... | IfExpr | conditionals.rb:86:4:86:4 | a | conditionals.rb:86:5:89:5 | then ... | true | +| conditionals.rb:94:1:98:3 | if ... | IfExpr | conditionals.rb:94:4:94:4 | a | conditionals.rb:94:5:97:5 | then ... | true | +| conditionals.rb:102:1:106:3 | if ... | IfExpr | conditionals.rb:102:4:102:4 | a | conditionals.rb:102:5:105:5 | then ... | true | +| conditionals.rb:109:1:114:3 | if ... | IfExpr | conditionals.rb:109:4:111:8 | ... && ... | conditionals.rb:111:9:113:5 | then ... | true | +| conditionals.rb:118:1:123:3 | if ... | IfExpr | conditionals.rb:118:4:119:6 | ... && ... | conditionals.rb:119:7:122:5 | then ... | true | +| conditionals.rb:127:1:132:3 | if ... | IfExpr | conditionals.rb:127:4:129:7 | ... && ... | conditionals.rb:129:8:131:5 | then ... | true | +| conditionals.rb:136:1:141:3 | if ... | IfExpr | conditionals.rb:136:4:136:4 | a | conditionals.rb:136:5:140:5 | then ... | true | +| conditionals.rb:144:1:148:3 | if ... | IfExpr | conditionals.rb:144:4:145:5 | ... && ... | conditionals.rb:145:6:147:5 | then ... | true | | loops.rb:9:5:9:5 | if ... | IfExpr | loops.rb:9:5:9:5 | ! ... | loops.rb:9:5:9:5 | ... = ... | true | | loops.rb:16:5:16:5 | if ... | IfExpr | loops.rb:16:5:16:5 | ! ... | loops.rb:16:5:16:5 | ... = ... | true | | loops.rb:22:5:22:7 | if ... | IfExpr | loops.rb:22:5:22:7 | ! ... | loops.rb:22:5:22:7 | ... = ... | true | @@ -43,7 +50,14 @@ ifExprs | conditionals.rb:67:1:70:3 | if ... | IfExpr | conditionals.rb:67:4:67:8 | ... > ... | conditionals.rb:67:10:67:13 | then ... | else ... | false | | conditionals.rb:73:1:75:3 | if ... | IfExpr | conditionals.rb:73:4:73:9 | ... && ... | conditionals.rb:73:11:74:5 | then ... | (none) | false | | conditionals.rb:78:1:82:3 | if ... | IfExpr | conditionals.rb:78:4:79:8 | ... && ... | conditionals.rb:79:9:81:5 | then ... | (none) | false | -| conditionals.rb:85:1:89:3 | if ... | IfExpr | conditionals.rb:85:4:86:5 | ... && ... | conditionals.rb:86:6:88:5 | then ... | (none) | false | +| conditionals.rb:86:1:90:3 | if ... | IfExpr | conditionals.rb:86:4:86:4 | a | conditionals.rb:86:5:89:5 | then ... | (none) | false | +| conditionals.rb:94:1:98:3 | if ... | IfExpr | conditionals.rb:94:4:94:4 | a | conditionals.rb:94:5:97:5 | then ... | (none) | false | +| conditionals.rb:102:1:106:3 | if ... | IfExpr | conditionals.rb:102:4:102:4 | a | conditionals.rb:102:5:105:5 | then ... | (none) | false | +| conditionals.rb:109:1:114:3 | if ... | IfExpr | conditionals.rb:109:4:111:8 | ... && ... | conditionals.rb:111:9:113:5 | then ... | (none) | false | +| conditionals.rb:118:1:123:3 | if ... | IfExpr | conditionals.rb:118:4:119:6 | ... && ... | conditionals.rb:119:7:122:5 | then ... | (none) | false | +| conditionals.rb:127:1:132:3 | if ... | IfExpr | conditionals.rb:127:4:129:7 | ... && ... | conditionals.rb:129:8:131:5 | then ... | (none) | false | +| conditionals.rb:136:1:141:3 | if ... | IfExpr | conditionals.rb:136:4:136:4 | a | conditionals.rb:136:5:140:5 | then ... | (none) | false | +| conditionals.rb:144:1:148:3 | if ... | IfExpr | conditionals.rb:144:4:145:5 | ... && ... | conditionals.rb:145:6:147:5 | then ... | (none) | false | unlessExprs | conditionals.rb:40:1:42:3 | unless ... | UnlessExpr | conditionals.rb:40:8:40:12 | ... > ... | conditionals.rb:40:14:41:5 | then ... | (none) | | conditionals.rb:45:1:49:3 | unless ... | UnlessExpr | conditionals.rb:45:8:45:13 | ... == ... | conditionals.rb:45:14:46:5 | then ... | else ... | diff --git a/ruby/ql/test/library-tests/ast/control/ControlExpr.expected b/ruby/ql/test/library-tests/ast/control/ControlExpr.expected index 726c9be5c909..1c57fb080eed 100644 --- a/ruby/ql/test/library-tests/ast/control/ControlExpr.expected +++ b/ruby/ql/test/library-tests/ast/control/ControlExpr.expected @@ -30,7 +30,14 @@ | conditionals.rb:67:1:70:3 | if ... | IfExpr | | conditionals.rb:73:1:75:3 | if ... | IfExpr | | conditionals.rb:78:1:82:3 | if ... | IfExpr | -| conditionals.rb:85:1:89:3 | if ... | IfExpr | +| conditionals.rb:86:1:90:3 | if ... | IfExpr | +| conditionals.rb:94:1:98:3 | if ... | IfExpr | +| conditionals.rb:102:1:106:3 | if ... | IfExpr | +| conditionals.rb:109:1:114:3 | if ... | IfExpr | +| conditionals.rb:118:1:123:3 | if ... | IfExpr | +| conditionals.rb:127:1:132:3 | if ... | IfExpr | +| conditionals.rb:136:1:141:3 | if ... | IfExpr | +| conditionals.rb:144:1:148:3 | if ... | IfExpr | | loops.rb:9:1:12:3 | for ... in ... | ForExpr | | loops.rb:9:5:9:5 | if ... | IfExpr | | loops.rb:16:1:19:3 | for ... in ... | ForExpr | diff --git a/ruby/ql/test/library-tests/ast/control/conditionals.rb b/ruby/ql/test/library-tests/ast/control/conditionals.rb index 9e3494a2709e..4cbaf25b71cc 100644 --- a/ruby/ql/test/library-tests/ast/control/conditionals.rb +++ b/ruby/ql/test/library-tests/ast/control/conditionals.rb @@ -69,18 +69,77 @@ c end -# If expr with && on same line as condition and then +# If expr with `&&` on same line as condition and then if a && b then c end -# If expr with && at the start of a separate line before then +# If expr with `&&` at the start of a separate line before then if a && b then c end +# If expr with `and` at the start of a separate line before then +# NOTE: This is not parsed correctly, `and b` is parsed as a call +if a + and b +then + c +end + +# If expr with `||` at the start of a separate line before then +# NOTE: This is not parsed correctly due to the leading `||` +if a + || b +then + c +end + +# If expr with `or` at the start of a separate line before then +# NOTE: This is not parsed correctly, `or b` is parsed as a call +if a + or b +then + c +end + +# If expr with repeated && at the start of a separate line before then +if a + && b + && c +then + d +end + +# If expr with alternating && and || at the start of lines +# NOTE: This is not parsed correctly due to the leading `||` +if a + && b + || c +then + d +end + +# If expr with operator at start of line and parentheses +# NOTE: This is not parsed correctly due to the leading `||` +if a + && (b + || c) +then + d +end + +# If expr with operator at start of line and parentheses +# NOTE: This is not parsed correctly due to the leading `||` +if a + || (b + && c) +then + d +end + # If expr with && at end of line if a && b diff --git a/ruby/ql/test/library-tests/ast/operations/assignment.expected b/ruby/ql/test/library-tests/ast/operations/assignment.expected index 5349ebf5cef6..e03066597b25 100644 --- a/ruby/ql/test/library-tests/ast/operations/assignment.expected +++ b/ruby/ql/test/library-tests/ast/operations/assignment.expected @@ -43,34 +43,36 @@ assignments | operations.rb:84:2:84:12 | ... \|= ... | \|= | operations.rb:84:2:84:4 | bar | operations.rb:84:9:84:12 | 0x01 | AssignBitwiseOrExpr | | operations.rb:85:2:85:11 | ... = ... | = | operations.rb:85:2:85:4 | baz | operations.rb:85:6:85:7 | ... ^ ... | AssignExpr | | operations.rb:85:2:85:11 | ... ^= ... | ^= | operations.rb:85:2:85:4 | baz | operations.rb:85:9:85:11 | qux | AssignBitwiseXorExpr | -| operations.rb:88:3:88:8 | ... = ... | = | operations.rb:88:3:88:4 | @x | operations.rb:88:8:88:8 | 1 | AssignExpr | -| operations.rb:89:3:89:9 | ... += ... | += | operations.rb:89:3:89:4 | @x | operations.rb:89:9:89:9 | 2 | AssignAddExpr | -| operations.rb:89:3:89:9 | ... = ... | = | operations.rb:89:3:89:4 | @x | operations.rb:89:6:89:7 | ... + ... | AssignExpr | -| operations.rb:91:3:91:9 | ... = ... | = | operations.rb:91:3:91:5 | @@y | operations.rb:91:9:91:9 | 3 | AssignExpr | -| operations.rb:92:3:92:10 | ... /= ... | /= | operations.rb:92:3:92:5 | @@y | operations.rb:92:10:92:10 | 4 | AssignDivExpr | -| operations.rb:92:3:92:10 | ... = ... | = | operations.rb:92:3:92:5 | @@y | operations.rb:92:7:92:8 | ... / ... | AssignExpr | -| operations.rb:95:1:95:15 | ... = ... | = | operations.rb:95:1:95:11 | $global_var | operations.rb:95:15:95:15 | 5 | AssignExpr | -| operations.rb:96:1:96:16 | ... *= ... | *= | operations.rb:96:1:96:11 | $global_var | operations.rb:96:16:96:16 | 6 | AssignMulExpr | -| operations.rb:96:1:96:16 | ... = ... | = | operations.rb:96:1:96:11 | $global_var | operations.rb:96:13:96:14 | ... * ... | AssignExpr | -| operations.rb:98:1:98:13 | ... = ... | = | operations.rb:98:1:98:9 | CONSTANT1 | operations.rb:98:13:98:13 | 5 | AssignExpr | -| operations.rb:99:1:99:14 | ... += ... | += | operations.rb:99:1:99:9 | CONSTANT2 | operations.rb:99:14:99:14 | 6 | AssignAddExpr | -| operations.rb:99:1:99:14 | ... = ... | = | operations.rb:99:1:99:9 | CONSTANT2 | operations.rb:99:11:99:12 | ... + ... | AssignExpr | -| operations.rb:100:1:100:15 | ... = ... | = | operations.rb:100:1:100:9 | CONSTANT3 | operations.rb:100:11:100:13 | ... \|\| ... | AssignExpr | -| operations.rb:100:1:100:15 | ... \|\|= ... | \|\|= | operations.rb:100:1:100:9 | CONSTANT3 | operations.rb:100:15:100:15 | 7 | AssignLogicalOrExpr | -| operations.rb:101:1:101:3 | ... = ... | = | operations.rb:101:1:101:3 | __synth__0 | operations.rb:101:1:101:3 | Foo | AssignExpr | -| operations.rb:101:1:101:25 | ... = ... | = | operations.rb:101:1:101:19 | MemberConstant | operations.rb:101:21:101:23 | ... \|\| ... | AssignExpr | -| operations.rb:101:1:101:25 | ... \|\|= ... | \|\|= | operations.rb:101:1:101:19 | MemberConstant | operations.rb:101:25:101:25 | 8 | AssignLogicalOrExpr | -| operations.rb:102:1:102:10 | ... = ... | = | operations.rb:102:1:102:10 | __synth__0 | operations.rb:102:1:102:10 | call to bar | AssignExpr | -| operations.rb:102:1:102:31 | ... = ... | = | operations.rb:102:1:102:25 | OtherConstant | operations.rb:102:27:102:29 | ... \|\| ... | AssignExpr | -| operations.rb:102:1:102:31 | ... \|\|= ... | \|\|= | operations.rb:102:1:102:25 | OtherConstant | operations.rb:102:31:102:31 | 7 | AssignLogicalOrExpr | -| operations.rb:103:1:103:17 | ... = ... | = | operations.rb:103:1:103:11 | CONSTANT4 | operations.rb:103:13:103:15 | ... \|\| ... | AssignExpr | -| operations.rb:103:1:103:17 | ... \|\|= ... | \|\|= | operations.rb:103:1:103:11 | CONSTANT4 | operations.rb:103:17:103:17 | 7 | AssignLogicalOrExpr | -| operations.rb:104:1:104:3 | ... = ... | = | operations.rb:104:1:104:3 | FOO | operations.rb:104:1:104:3 | call to [] | AssignExpr | -| operations.rb:104:1:104:32 | ... = ... | = | operations.rb:104:1:104:20 | (..., ...) | operations.rb:104:24:104:32 | [...] | AssignExpr | -| operations.rb:104:6:104:10 | ... = ... | = | operations.rb:104:6:104:10 | BAR | operations.rb:104:6:104:10 | call to [] | AssignExpr | -| operations.rb:104:13:104:15 | ... = ... | = | operations.rb:104:13:104:15 | __synth__2 | operations.rb:104:13:104:15 | foo | AssignExpr | -| operations.rb:104:13:104:20 | ... = ... | = | operations.rb:104:13:104:20 | FOO | operations.rb:104:13:104:20 | call to [] | AssignExpr | -| operations.rb:104:24:104:32 | ... = ... | = | operations.rb:104:24:104:32 | __synth__3 | operations.rb:104:24:104:32 | * ... | AssignExpr | +| operations.rb:88:1:89:6 | ... = ... | = | operations.rb:88:1:88:3 | foo | operations.rb:88:7:89:6 | ... && ... | AssignExpr | +| operations.rb:91:1:91:7 | ... = ... | = | operations.rb:91:1:91:3 | bar | operations.rb:91:7:91:7 | a | AssignExpr | +| operations.rb:108:3:108:8 | ... = ... | = | operations.rb:108:3:108:4 | @x | operations.rb:108:8:108:8 | 1 | AssignExpr | +| operations.rb:109:3:109:9 | ... += ... | += | operations.rb:109:3:109:4 | @x | operations.rb:109:9:109:9 | 2 | AssignAddExpr | +| operations.rb:109:3:109:9 | ... = ... | = | operations.rb:109:3:109:4 | @x | operations.rb:109:6:109:7 | ... + ... | AssignExpr | +| operations.rb:111:3:111:9 | ... = ... | = | operations.rb:111:3:111:5 | @@y | operations.rb:111:9:111:9 | 3 | AssignExpr | +| operations.rb:112:3:112:10 | ... /= ... | /= | operations.rb:112:3:112:5 | @@y | operations.rb:112:10:112:10 | 4 | AssignDivExpr | +| operations.rb:112:3:112:10 | ... = ... | = | operations.rb:112:3:112:5 | @@y | operations.rb:112:7:112:8 | ... / ... | AssignExpr | +| operations.rb:115:1:115:15 | ... = ... | = | operations.rb:115:1:115:11 | $global_var | operations.rb:115:15:115:15 | 5 | AssignExpr | +| operations.rb:116:1:116:16 | ... *= ... | *= | operations.rb:116:1:116:11 | $global_var | operations.rb:116:16:116:16 | 6 | AssignMulExpr | +| operations.rb:116:1:116:16 | ... = ... | = | operations.rb:116:1:116:11 | $global_var | operations.rb:116:13:116:14 | ... * ... | AssignExpr | +| operations.rb:118:1:118:13 | ... = ... | = | operations.rb:118:1:118:9 | CONSTANT1 | operations.rb:118:13:118:13 | 5 | AssignExpr | +| operations.rb:119:1:119:14 | ... += ... | += | operations.rb:119:1:119:9 | CONSTANT2 | operations.rb:119:14:119:14 | 6 | AssignAddExpr | +| operations.rb:119:1:119:14 | ... = ... | = | operations.rb:119:1:119:9 | CONSTANT2 | operations.rb:119:11:119:12 | ... + ... | AssignExpr | +| operations.rb:120:1:120:15 | ... = ... | = | operations.rb:120:1:120:9 | CONSTANT3 | operations.rb:120:11:120:13 | ... \|\| ... | AssignExpr | +| operations.rb:120:1:120:15 | ... \|\|= ... | \|\|= | operations.rb:120:1:120:9 | CONSTANT3 | operations.rb:120:15:120:15 | 7 | AssignLogicalOrExpr | +| operations.rb:121:1:121:3 | ... = ... | = | operations.rb:121:1:121:3 | __synth__0 | operations.rb:121:1:121:3 | Foo | AssignExpr | +| operations.rb:121:1:121:25 | ... = ... | = | operations.rb:121:1:121:19 | MemberConstant | operations.rb:121:21:121:23 | ... \|\| ... | AssignExpr | +| operations.rb:121:1:121:25 | ... \|\|= ... | \|\|= | operations.rb:121:1:121:19 | MemberConstant | operations.rb:121:25:121:25 | 8 | AssignLogicalOrExpr | +| operations.rb:122:1:122:10 | ... = ... | = | operations.rb:122:1:122:10 | __synth__0 | operations.rb:122:1:122:10 | call to bar | AssignExpr | +| operations.rb:122:1:122:31 | ... = ... | = | operations.rb:122:1:122:25 | OtherConstant | operations.rb:122:27:122:29 | ... \|\| ... | AssignExpr | +| operations.rb:122:1:122:31 | ... \|\|= ... | \|\|= | operations.rb:122:1:122:25 | OtherConstant | operations.rb:122:31:122:31 | 7 | AssignLogicalOrExpr | +| operations.rb:123:1:123:17 | ... = ... | = | operations.rb:123:1:123:11 | CONSTANT4 | operations.rb:123:13:123:15 | ... \|\| ... | AssignExpr | +| operations.rb:123:1:123:17 | ... \|\|= ... | \|\|= | operations.rb:123:1:123:11 | CONSTANT4 | operations.rb:123:17:123:17 | 7 | AssignLogicalOrExpr | +| operations.rb:124:1:124:3 | ... = ... | = | operations.rb:124:1:124:3 | FOO | operations.rb:124:1:124:3 | call to [] | AssignExpr | +| operations.rb:124:1:124:32 | ... = ... | = | operations.rb:124:1:124:20 | (..., ...) | operations.rb:124:24:124:32 | [...] | AssignExpr | +| operations.rb:124:6:124:10 | ... = ... | = | operations.rb:124:6:124:10 | BAR | operations.rb:124:6:124:10 | call to [] | AssignExpr | +| operations.rb:124:13:124:15 | ... = ... | = | operations.rb:124:13:124:15 | __synth__2 | operations.rb:124:13:124:15 | foo | AssignExpr | +| operations.rb:124:13:124:20 | ... = ... | = | operations.rb:124:13:124:20 | FOO | operations.rb:124:13:124:20 | call to [] | AssignExpr | +| operations.rb:124:24:124:32 | ... = ... | = | operations.rb:124:24:124:32 | __synth__3 | operations.rb:124:24:124:32 | * ... | AssignExpr | assignOperations | operations.rb:69:1:69:8 | ... += ... | += | operations.rb:69:1:69:1 | x | operations.rb:69:6:69:8 | 128 | AssignAddExpr | | operations.rb:70:1:70:7 | ... -= ... | -= | operations.rb:70:1:70:1 | y | operations.rb:70:6:70:7 | 32 | AssignSubExpr | @@ -85,14 +87,14 @@ assignOperations | operations.rb:83:2:83:12 | ... &= ... | &= | operations.rb:83:2:83:4 | foo | operations.rb:83:9:83:12 | mask | AssignBitwiseAndExpr | | operations.rb:84:2:84:12 | ... \|= ... | \|= | operations.rb:84:2:84:4 | bar | operations.rb:84:9:84:12 | 0x01 | AssignBitwiseOrExpr | | operations.rb:85:2:85:11 | ... ^= ... | ^= | operations.rb:85:2:85:4 | baz | operations.rb:85:9:85:11 | qux | AssignBitwiseXorExpr | -| operations.rb:89:3:89:9 | ... += ... | += | operations.rb:89:3:89:4 | @x | operations.rb:89:9:89:9 | 2 | AssignAddExpr | -| operations.rb:92:3:92:10 | ... /= ... | /= | operations.rb:92:3:92:5 | @@y | operations.rb:92:10:92:10 | 4 | AssignDivExpr | -| operations.rb:96:1:96:16 | ... *= ... | *= | operations.rb:96:1:96:11 | $global_var | operations.rb:96:16:96:16 | 6 | AssignMulExpr | -| operations.rb:99:1:99:14 | ... += ... | += | operations.rb:99:1:99:9 | CONSTANT2 | operations.rb:99:14:99:14 | 6 | AssignAddExpr | -| operations.rb:100:1:100:15 | ... \|\|= ... | \|\|= | operations.rb:100:1:100:9 | CONSTANT3 | operations.rb:100:15:100:15 | 7 | AssignLogicalOrExpr | -| operations.rb:101:1:101:25 | ... \|\|= ... | \|\|= | operations.rb:101:1:101:19 | MemberConstant | operations.rb:101:25:101:25 | 8 | AssignLogicalOrExpr | -| operations.rb:102:1:102:31 | ... \|\|= ... | \|\|= | operations.rb:102:1:102:25 | OtherConstant | operations.rb:102:31:102:31 | 7 | AssignLogicalOrExpr | -| operations.rb:103:1:103:17 | ... \|\|= ... | \|\|= | operations.rb:103:1:103:11 | CONSTANT4 | operations.rb:103:17:103:17 | 7 | AssignLogicalOrExpr | +| operations.rb:109:3:109:9 | ... += ... | += | operations.rb:109:3:109:4 | @x | operations.rb:109:9:109:9 | 2 | AssignAddExpr | +| operations.rb:112:3:112:10 | ... /= ... | /= | operations.rb:112:3:112:5 | @@y | operations.rb:112:10:112:10 | 4 | AssignDivExpr | +| operations.rb:116:1:116:16 | ... *= ... | *= | operations.rb:116:1:116:11 | $global_var | operations.rb:116:16:116:16 | 6 | AssignMulExpr | +| operations.rb:119:1:119:14 | ... += ... | += | operations.rb:119:1:119:9 | CONSTANT2 | operations.rb:119:14:119:14 | 6 | AssignAddExpr | +| operations.rb:120:1:120:15 | ... \|\|= ... | \|\|= | operations.rb:120:1:120:9 | CONSTANT3 | operations.rb:120:15:120:15 | 7 | AssignLogicalOrExpr | +| operations.rb:121:1:121:25 | ... \|\|= ... | \|\|= | operations.rb:121:1:121:19 | MemberConstant | operations.rb:121:25:121:25 | 8 | AssignLogicalOrExpr | +| operations.rb:122:1:122:31 | ... \|\|= ... | \|\|= | operations.rb:122:1:122:25 | OtherConstant | operations.rb:122:31:122:31 | 7 | AssignLogicalOrExpr | +| operations.rb:123:1:123:17 | ... \|\|= ... | \|\|= | operations.rb:123:1:123:11 | CONSTANT4 | operations.rb:123:17:123:17 | 7 | AssignLogicalOrExpr | assignArithmeticOperations | operations.rb:69:1:69:8 | ... += ... | += | operations.rb:69:1:69:1 | x | operations.rb:69:6:69:8 | 128 | AssignAddExpr | | operations.rb:70:1:70:7 | ... -= ... | -= | operations.rb:70:1:70:1 | y | operations.rb:70:6:70:7 | 32 | AssignSubExpr | @@ -100,17 +102,17 @@ assignArithmeticOperations | operations.rb:72:1:72:6 | ... /= ... | /= | operations.rb:72:1:72:1 | b | operations.rb:72:6:72:6 | 4 | AssignDivExpr | | operations.rb:73:1:73:6 | ... %= ... | %= | operations.rb:73:1:73:1 | z | operations.rb:73:6:73:6 | 2 | AssignModuloExpr | | operations.rb:74:1:74:11 | ... **= ... | **= | operations.rb:74:1:74:3 | foo | operations.rb:74:9:74:11 | bar | AssignExponentExpr | -| operations.rb:89:3:89:9 | ... += ... | += | operations.rb:89:3:89:4 | @x | operations.rb:89:9:89:9 | 2 | AssignAddExpr | -| operations.rb:92:3:92:10 | ... /= ... | /= | operations.rb:92:3:92:5 | @@y | operations.rb:92:10:92:10 | 4 | AssignDivExpr | -| operations.rb:96:1:96:16 | ... *= ... | *= | operations.rb:96:1:96:11 | $global_var | operations.rb:96:16:96:16 | 6 | AssignMulExpr | -| operations.rb:99:1:99:14 | ... += ... | += | operations.rb:99:1:99:9 | CONSTANT2 | operations.rb:99:14:99:14 | 6 | AssignAddExpr | +| operations.rb:109:3:109:9 | ... += ... | += | operations.rb:109:3:109:4 | @x | operations.rb:109:9:109:9 | 2 | AssignAddExpr | +| operations.rb:112:3:112:10 | ... /= ... | /= | operations.rb:112:3:112:5 | @@y | operations.rb:112:10:112:10 | 4 | AssignDivExpr | +| operations.rb:116:1:116:16 | ... *= ... | *= | operations.rb:116:1:116:11 | $global_var | operations.rb:116:16:116:16 | 6 | AssignMulExpr | +| operations.rb:119:1:119:14 | ... += ... | += | operations.rb:119:1:119:9 | CONSTANT2 | operations.rb:119:14:119:14 | 6 | AssignAddExpr | assignLogicalOperations | operations.rb:77:2:77:8 | ... &&= ... | &&= | operations.rb:77:2:77:2 | x | operations.rb:77:8:77:8 | y | AssignLogicalAndExpr | | operations.rb:78:2:78:8 | ... \|\|= ... | \|\|= | operations.rb:78:2:78:2 | a | operations.rb:78:8:78:8 | b | AssignLogicalOrExpr | -| operations.rb:100:1:100:15 | ... \|\|= ... | \|\|= | operations.rb:100:1:100:9 | CONSTANT3 | operations.rb:100:15:100:15 | 7 | AssignLogicalOrExpr | -| operations.rb:101:1:101:25 | ... \|\|= ... | \|\|= | operations.rb:101:1:101:19 | MemberConstant | operations.rb:101:25:101:25 | 8 | AssignLogicalOrExpr | -| operations.rb:102:1:102:31 | ... \|\|= ... | \|\|= | operations.rb:102:1:102:25 | OtherConstant | operations.rb:102:31:102:31 | 7 | AssignLogicalOrExpr | -| operations.rb:103:1:103:17 | ... \|\|= ... | \|\|= | operations.rb:103:1:103:11 | CONSTANT4 | operations.rb:103:17:103:17 | 7 | AssignLogicalOrExpr | +| operations.rb:120:1:120:15 | ... \|\|= ... | \|\|= | operations.rb:120:1:120:9 | CONSTANT3 | operations.rb:120:15:120:15 | 7 | AssignLogicalOrExpr | +| operations.rb:121:1:121:25 | ... \|\|= ... | \|\|= | operations.rb:121:1:121:19 | MemberConstant | operations.rb:121:25:121:25 | 8 | AssignLogicalOrExpr | +| operations.rb:122:1:122:31 | ... \|\|= ... | \|\|= | operations.rb:122:1:122:25 | OtherConstant | operations.rb:122:31:122:31 | 7 | AssignLogicalOrExpr | +| operations.rb:123:1:123:17 | ... \|\|= ... | \|\|= | operations.rb:123:1:123:11 | CONSTANT4 | operations.rb:123:17:123:17 | 7 | AssignLogicalOrExpr | assignBitwiseOperations | operations.rb:81:2:81:8 | ... <<= ... | <<= | operations.rb:81:2:81:2 | x | operations.rb:81:8:81:8 | 2 | AssignLShiftExpr | | operations.rb:82:2:82:8 | ... >>= ... | >>= | operations.rb:82:2:82:2 | y | operations.rb:82:8:82:8 | 3 | AssignRShiftExpr | diff --git a/ruby/ql/test/library-tests/ast/operations/binary.expected b/ruby/ql/test/library-tests/ast/operations/binary.expected index 2b632384663d..3f29a82a2c49 100644 --- a/ruby/ql/test/library-tests/ast/operations/binary.expected +++ b/ruby/ql/test/library-tests/ast/operations/binary.expected @@ -37,15 +37,17 @@ binaryOperations | operations.rb:83:6:83:7 | ... & ... | & | operations.rb:83:2:83:4 | foo | operations.rb:83:9:83:12 | mask | BitwiseAndExpr | | operations.rb:84:6:84:7 | ... \| ... | \| | operations.rb:84:2:84:4 | bar | operations.rb:84:9:84:12 | 0x01 | BitwiseOrExpr | | operations.rb:85:6:85:7 | ... ^ ... | ^ | operations.rb:85:2:85:4 | baz | operations.rb:85:9:85:11 | qux | BitwiseXorExpr | -| operations.rb:89:6:89:7 | ... + ... | + | operations.rb:89:3:89:4 | @x | operations.rb:89:9:89:9 | 2 | AddExpr | -| operations.rb:92:7:92:8 | ... / ... | / | operations.rb:92:3:92:5 | @@y | operations.rb:92:10:92:10 | 4 | DivExpr | -| operations.rb:96:13:96:14 | ... * ... | * | operations.rb:96:1:96:11 | $global_var | operations.rb:96:16:96:16 | 6 | MulExpr | -| operations.rb:99:11:99:12 | ... + ... | + | operations.rb:99:1:99:9 | CONSTANT2 | operations.rb:99:14:99:14 | 6 | AddExpr | -| operations.rb:100:11:100:13 | ... \|\| ... | \|\| | operations.rb:100:1:100:9 | CONSTANT3 | operations.rb:100:15:100:15 | 7 | LogicalOrExpr | -| operations.rb:101:21:101:23 | ... \|\| ... | \|\| | operations.rb:101:1:101:19 | MemberConstant | operations.rb:101:25:101:25 | 8 | LogicalOrExpr | -| operations.rb:102:27:102:29 | ... \|\| ... | \|\| | operations.rb:102:1:102:25 | OtherConstant | operations.rb:102:31:102:31 | 7 | LogicalOrExpr | -| operations.rb:103:13:103:15 | ... \|\| ... | \|\| | operations.rb:103:1:103:11 | CONSTANT4 | operations.rb:103:17:103:17 | 7 | LogicalOrExpr | -| operations.rb:106:1:107:1 | ... / ... | / | operations.rb:106:1:106:3 | foo | operations.rb:107:1:107:1 | 5 | DivExpr | +| operations.rb:88:7:89:6 | ... && ... | && | operations.rb:88:7:88:7 | a | operations.rb:89:6:89:6 | b | LogicalAndExpr | +| operations.rb:96:10:97:8 | ... && ... | && | operations.rb:96:10:96:10 | a | operations.rb:97:8:97:8 | b | LogicalAndExpr | +| operations.rb:109:6:109:7 | ... + ... | + | operations.rb:109:3:109:4 | @x | operations.rb:109:9:109:9 | 2 | AddExpr | +| operations.rb:112:7:112:8 | ... / ... | / | operations.rb:112:3:112:5 | @@y | operations.rb:112:10:112:10 | 4 | DivExpr | +| operations.rb:116:13:116:14 | ... * ... | * | operations.rb:116:1:116:11 | $global_var | operations.rb:116:16:116:16 | 6 | MulExpr | +| operations.rb:119:11:119:12 | ... + ... | + | operations.rb:119:1:119:9 | CONSTANT2 | operations.rb:119:14:119:14 | 6 | AddExpr | +| operations.rb:120:11:120:13 | ... \|\| ... | \|\| | operations.rb:120:1:120:9 | CONSTANT3 | operations.rb:120:15:120:15 | 7 | LogicalOrExpr | +| operations.rb:121:21:121:23 | ... \|\| ... | \|\| | operations.rb:121:1:121:19 | MemberConstant | operations.rb:121:25:121:25 | 8 | LogicalOrExpr | +| operations.rb:122:27:122:29 | ... \|\| ... | \|\| | operations.rb:122:1:122:25 | OtherConstant | operations.rb:122:31:122:31 | 7 | LogicalOrExpr | +| operations.rb:123:13:123:15 | ... \|\| ... | \|\| | operations.rb:123:1:123:11 | CONSTANT4 | operations.rb:123:17:123:17 | 7 | LogicalOrExpr | +| operations.rb:126:1:127:1 | ... / ... | / | operations.rb:126:1:126:3 | foo | operations.rb:127:1:127:1 | 5 | DivExpr | binaryArithmeticOperations | operations.rb:32:1:32:7 | ... + ... | + | operations.rb:32:1:32:1 | w | operations.rb:32:5:32:7 | 234 | AddExpr | | operations.rb:33:1:33:6 | ... - ... | - | operations.rb:33:1:33:1 | x | operations.rb:33:5:33:6 | 17 | SubExpr | @@ -59,11 +61,11 @@ binaryArithmeticOperations | operations.rb:72:3:72:4 | ... / ... | / | operations.rb:72:1:72:1 | b | operations.rb:72:6:72:6 | 4 | DivExpr | | operations.rb:73:3:73:4 | ... % ... | % | operations.rb:73:1:73:1 | z | operations.rb:73:6:73:6 | 2 | ModuloExpr | | operations.rb:74:5:74:7 | ... ** ... | ** | operations.rb:74:1:74:3 | foo | operations.rb:74:9:74:11 | bar | ExponentExpr | -| operations.rb:89:6:89:7 | ... + ... | + | operations.rb:89:3:89:4 | @x | operations.rb:89:9:89:9 | 2 | AddExpr | -| operations.rb:92:7:92:8 | ... / ... | / | operations.rb:92:3:92:5 | @@y | operations.rb:92:10:92:10 | 4 | DivExpr | -| operations.rb:96:13:96:14 | ... * ... | * | operations.rb:96:1:96:11 | $global_var | operations.rb:96:16:96:16 | 6 | MulExpr | -| operations.rb:99:11:99:12 | ... + ... | + | operations.rb:99:1:99:9 | CONSTANT2 | operations.rb:99:14:99:14 | 6 | AddExpr | -| operations.rb:106:1:107:1 | ... / ... | / | operations.rb:106:1:106:3 | foo | operations.rb:107:1:107:1 | 5 | DivExpr | +| operations.rb:109:6:109:7 | ... + ... | + | operations.rb:109:3:109:4 | @x | operations.rb:109:9:109:9 | 2 | AddExpr | +| operations.rb:112:7:112:8 | ... / ... | / | operations.rb:112:3:112:5 | @@y | operations.rb:112:10:112:10 | 4 | DivExpr | +| operations.rb:116:13:116:14 | ... * ... | * | operations.rb:116:1:116:11 | $global_var | operations.rb:116:16:116:16 | 6 | MulExpr | +| operations.rb:119:11:119:12 | ... + ... | + | operations.rb:119:1:119:9 | CONSTANT2 | operations.rb:119:14:119:14 | 6 | AddExpr | +| operations.rb:126:1:127:1 | ... / ... | / | operations.rb:126:1:126:3 | foo | operations.rb:127:1:127:1 | 5 | DivExpr | binaryLogicalOperations | operations.rb:40:1:40:10 | ... && ... | && | operations.rb:40:1:40:3 | foo | operations.rb:40:8:40:10 | bar | LogicalAndExpr | | operations.rb:41:1:41:11 | ... and ... | and | operations.rb:41:1:41:3 | baz | operations.rb:41:9:41:11 | qux | LogicalAndExpr | @@ -71,10 +73,12 @@ binaryLogicalOperations | operations.rb:43:1:43:6 | ... \|\| ... | \|\| | operations.rb:43:1:43:1 | x | operations.rb:43:6:43:6 | y | LogicalOrExpr | | operations.rb:77:4:77:6 | ... && ... | && | operations.rb:77:2:77:2 | x | operations.rb:77:8:77:8 | y | LogicalAndExpr | | operations.rb:78:4:78:6 | ... \|\| ... | \|\| | operations.rb:78:2:78:2 | a | operations.rb:78:8:78:8 | b | LogicalOrExpr | -| operations.rb:100:11:100:13 | ... \|\| ... | \|\| | operations.rb:100:1:100:9 | CONSTANT3 | operations.rb:100:15:100:15 | 7 | LogicalOrExpr | -| operations.rb:101:21:101:23 | ... \|\| ... | \|\| | operations.rb:101:1:101:19 | MemberConstant | operations.rb:101:25:101:25 | 8 | LogicalOrExpr | -| operations.rb:102:27:102:29 | ... \|\| ... | \|\| | operations.rb:102:1:102:25 | OtherConstant | operations.rb:102:31:102:31 | 7 | LogicalOrExpr | -| operations.rb:103:13:103:15 | ... \|\| ... | \|\| | operations.rb:103:1:103:11 | CONSTANT4 | operations.rb:103:17:103:17 | 7 | LogicalOrExpr | +| operations.rb:88:7:89:6 | ... && ... | && | operations.rb:88:7:88:7 | a | operations.rb:89:6:89:6 | b | LogicalAndExpr | +| operations.rb:96:10:97:8 | ... && ... | && | operations.rb:96:10:96:10 | a | operations.rb:97:8:97:8 | b | LogicalAndExpr | +| operations.rb:120:11:120:13 | ... \|\| ... | \|\| | operations.rb:120:1:120:9 | CONSTANT3 | operations.rb:120:15:120:15 | 7 | LogicalOrExpr | +| operations.rb:121:21:121:23 | ... \|\| ... | \|\| | operations.rb:121:1:121:19 | MemberConstant | operations.rb:121:25:121:25 | 8 | LogicalOrExpr | +| operations.rb:122:27:122:29 | ... \|\| ... | \|\| | operations.rb:122:1:122:25 | OtherConstant | operations.rb:122:31:122:31 | 7 | LogicalOrExpr | +| operations.rb:123:13:123:15 | ... \|\| ... | \|\| | operations.rb:123:1:123:11 | CONSTANT4 | operations.rb:123:17:123:17 | 7 | LogicalOrExpr | binaryBitwiseOperations | operations.rb:46:1:46:6 | ... << ... | << | operations.rb:46:1:46:1 | x | operations.rb:46:6:46:6 | 3 | LShiftExpr | | operations.rb:47:1:47:7 | ... >> ... | >> | operations.rb:47:1:47:1 | y | operations.rb:47:6:47:7 | 16 | RShiftExpr | diff --git a/ruby/ql/test/library-tests/ast/operations/operation.expected b/ruby/ql/test/library-tests/ast/operations/operation.expected index 29abf236af69..ffc123b79071 100644 --- a/ruby/ql/test/library-tests/ast/operations/operation.expected +++ b/ruby/ql/test/library-tests/ast/operations/operation.expected @@ -170,78 +170,86 @@ | operations.rb:85:2:85:11 | ... ^= ... | ^= | operations.rb:85:9:85:11 | qux | AssignBitwiseXorExpr | | operations.rb:85:6:85:7 | ... ^ ... | ^ | operations.rb:85:2:85:4 | baz | BitwiseXorExpr | | operations.rb:85:6:85:7 | ... ^ ... | ^ | operations.rb:85:9:85:11 | qux | BitwiseXorExpr | -| operations.rb:88:3:88:8 | ... = ... | = | operations.rb:88:3:88:4 | @x | AssignExpr | -| operations.rb:88:3:88:8 | ... = ... | = | operations.rb:88:8:88:8 | 1 | AssignExpr | -| operations.rb:89:3:89:9 | ... += ... | += | operations.rb:89:3:89:4 | @x | AssignAddExpr | -| operations.rb:89:3:89:9 | ... += ... | += | operations.rb:89:9:89:9 | 2 | AssignAddExpr | -| operations.rb:89:3:89:9 | ... = ... | = | operations.rb:89:3:89:4 | @x | AssignExpr | -| operations.rb:89:3:89:9 | ... = ... | = | operations.rb:89:6:89:7 | ... + ... | AssignExpr | -| operations.rb:89:6:89:7 | ... + ... | + | operations.rb:89:3:89:4 | @x | AddExpr | -| operations.rb:89:6:89:7 | ... + ... | + | operations.rb:89:9:89:9 | 2 | AddExpr | -| operations.rb:91:3:91:9 | ... = ... | = | operations.rb:91:3:91:5 | @@y | AssignExpr | -| operations.rb:91:3:91:9 | ... = ... | = | operations.rb:91:9:91:9 | 3 | AssignExpr | -| operations.rb:92:3:92:10 | ... /= ... | /= | operations.rb:92:3:92:5 | @@y | AssignDivExpr | -| operations.rb:92:3:92:10 | ... /= ... | /= | operations.rb:92:10:92:10 | 4 | AssignDivExpr | -| operations.rb:92:3:92:10 | ... = ... | = | operations.rb:92:3:92:5 | @@y | AssignExpr | -| operations.rb:92:3:92:10 | ... = ... | = | operations.rb:92:7:92:8 | ... / ... | AssignExpr | -| operations.rb:92:7:92:8 | ... / ... | / | operations.rb:92:3:92:5 | @@y | DivExpr | -| operations.rb:92:7:92:8 | ... / ... | / | operations.rb:92:10:92:10 | 4 | DivExpr | -| operations.rb:95:1:95:15 | ... = ... | = | operations.rb:95:1:95:11 | $global_var | AssignExpr | -| operations.rb:95:1:95:15 | ... = ... | = | operations.rb:95:15:95:15 | 5 | AssignExpr | -| operations.rb:96:1:96:16 | ... *= ... | *= | operations.rb:96:1:96:11 | $global_var | AssignMulExpr | -| operations.rb:96:1:96:16 | ... *= ... | *= | operations.rb:96:16:96:16 | 6 | AssignMulExpr | -| operations.rb:96:1:96:16 | ... = ... | = | operations.rb:96:1:96:11 | $global_var | AssignExpr | -| operations.rb:96:1:96:16 | ... = ... | = | operations.rb:96:13:96:14 | ... * ... | AssignExpr | -| operations.rb:96:13:96:14 | ... * ... | * | operations.rb:96:1:96:11 | $global_var | MulExpr | -| operations.rb:96:13:96:14 | ... * ... | * | operations.rb:96:16:96:16 | 6 | MulExpr | -| operations.rb:98:1:98:13 | ... = ... | = | operations.rb:98:1:98:9 | CONSTANT1 | AssignExpr | -| operations.rb:98:1:98:13 | ... = ... | = | operations.rb:98:13:98:13 | 5 | AssignExpr | -| operations.rb:99:1:99:14 | ... += ... | += | operations.rb:99:1:99:9 | CONSTANT2 | AssignAddExpr | -| operations.rb:99:1:99:14 | ... += ... | += | operations.rb:99:14:99:14 | 6 | AssignAddExpr | -| operations.rb:99:1:99:14 | ... = ... | = | operations.rb:99:1:99:9 | CONSTANT2 | AssignExpr | -| operations.rb:99:1:99:14 | ... = ... | = | operations.rb:99:11:99:12 | ... + ... | AssignExpr | -| operations.rb:99:11:99:12 | ... + ... | + | operations.rb:99:1:99:9 | CONSTANT2 | AddExpr | -| operations.rb:99:11:99:12 | ... + ... | + | operations.rb:99:14:99:14 | 6 | AddExpr | -| operations.rb:100:1:100:15 | ... = ... | = | operations.rb:100:1:100:9 | CONSTANT3 | AssignExpr | -| operations.rb:100:1:100:15 | ... = ... | = | operations.rb:100:11:100:13 | ... \|\| ... | AssignExpr | -| operations.rb:100:1:100:15 | ... \|\|= ... | \|\|= | operations.rb:100:1:100:9 | CONSTANT3 | AssignLogicalOrExpr | -| operations.rb:100:1:100:15 | ... \|\|= ... | \|\|= | operations.rb:100:15:100:15 | 7 | AssignLogicalOrExpr | -| operations.rb:100:11:100:13 | ... \|\| ... | \|\| | operations.rb:100:1:100:9 | CONSTANT3 | LogicalOrExpr | -| operations.rb:100:11:100:13 | ... \|\| ... | \|\| | operations.rb:100:15:100:15 | 7 | LogicalOrExpr | -| operations.rb:101:1:101:3 | ... = ... | = | operations.rb:101:1:101:3 | Foo | AssignExpr | -| operations.rb:101:1:101:3 | ... = ... | = | operations.rb:101:1:101:3 | __synth__0 | AssignExpr | -| operations.rb:101:1:101:25 | ... = ... | = | operations.rb:101:1:101:19 | MemberConstant | AssignExpr | -| operations.rb:101:1:101:25 | ... = ... | = | operations.rb:101:21:101:23 | ... \|\| ... | AssignExpr | -| operations.rb:101:1:101:25 | ... \|\|= ... | \|\|= | operations.rb:101:1:101:19 | MemberConstant | AssignLogicalOrExpr | -| operations.rb:101:1:101:25 | ... \|\|= ... | \|\|= | operations.rb:101:25:101:25 | 8 | AssignLogicalOrExpr | -| operations.rb:101:21:101:23 | ... \|\| ... | \|\| | operations.rb:101:1:101:19 | MemberConstant | LogicalOrExpr | -| operations.rb:101:21:101:23 | ... \|\| ... | \|\| | operations.rb:101:25:101:25 | 8 | LogicalOrExpr | -| operations.rb:102:1:102:10 | ... = ... | = | operations.rb:102:1:102:10 | __synth__0 | AssignExpr | -| operations.rb:102:1:102:10 | ... = ... | = | operations.rb:102:1:102:10 | call to bar | AssignExpr | -| operations.rb:102:1:102:31 | ... = ... | = | operations.rb:102:1:102:25 | OtherConstant | AssignExpr | -| operations.rb:102:1:102:31 | ... = ... | = | operations.rb:102:27:102:29 | ... \|\| ... | AssignExpr | -| operations.rb:102:1:102:31 | ... \|\|= ... | \|\|= | operations.rb:102:1:102:25 | OtherConstant | AssignLogicalOrExpr | -| operations.rb:102:1:102:31 | ... \|\|= ... | \|\|= | operations.rb:102:31:102:31 | 7 | AssignLogicalOrExpr | -| operations.rb:102:27:102:29 | ... \|\| ... | \|\| | operations.rb:102:1:102:25 | OtherConstant | LogicalOrExpr | -| operations.rb:102:27:102:29 | ... \|\| ... | \|\| | operations.rb:102:31:102:31 | 7 | LogicalOrExpr | -| operations.rb:103:1:103:17 | ... = ... | = | operations.rb:103:1:103:11 | CONSTANT4 | AssignExpr | -| operations.rb:103:1:103:17 | ... = ... | = | operations.rb:103:13:103:15 | ... \|\| ... | AssignExpr | -| operations.rb:103:1:103:17 | ... \|\|= ... | \|\|= | operations.rb:103:1:103:11 | CONSTANT4 | AssignLogicalOrExpr | -| operations.rb:103:1:103:17 | ... \|\|= ... | \|\|= | operations.rb:103:17:103:17 | 7 | AssignLogicalOrExpr | -| operations.rb:103:13:103:15 | ... \|\| ... | \|\| | operations.rb:103:1:103:11 | CONSTANT4 | LogicalOrExpr | -| operations.rb:103:13:103:15 | ... \|\| ... | \|\| | operations.rb:103:17:103:17 | 7 | LogicalOrExpr | -| operations.rb:104:1:104:3 | ... = ... | = | operations.rb:104:1:104:3 | FOO | AssignExpr | -| operations.rb:104:1:104:3 | ... = ... | = | operations.rb:104:1:104:3 | call to [] | AssignExpr | -| operations.rb:104:1:104:32 | ... = ... | = | operations.rb:104:1:104:20 | (..., ...) | AssignExpr | -| operations.rb:104:1:104:32 | ... = ... | = | operations.rb:104:24:104:32 | [...] | AssignExpr | -| operations.rb:104:6:104:10 | ... = ... | = | operations.rb:104:6:104:10 | BAR | AssignExpr | -| operations.rb:104:6:104:10 | ... = ... | = | operations.rb:104:6:104:10 | call to [] | AssignExpr | -| operations.rb:104:13:104:15 | ... = ... | = | operations.rb:104:13:104:15 | __synth__2 | AssignExpr | -| operations.rb:104:13:104:15 | ... = ... | = | operations.rb:104:13:104:15 | foo | AssignExpr | -| operations.rb:104:13:104:20 | ... = ... | = | operations.rb:104:13:104:20 | FOO | AssignExpr | -| operations.rb:104:13:104:20 | ... = ... | = | operations.rb:104:13:104:20 | call to [] | AssignExpr | -| operations.rb:104:24:104:32 | * ... | * | operations.rb:104:24:104:32 | [...] | SplatExpr | -| operations.rb:104:24:104:32 | ... = ... | = | operations.rb:104:24:104:32 | * ... | AssignExpr | -| operations.rb:104:24:104:32 | ... = ... | = | operations.rb:104:24:104:32 | __synth__3 | AssignExpr | -| operations.rb:106:1:107:1 | ... / ... | / | operations.rb:106:1:106:3 | foo | DivExpr | -| operations.rb:106:1:107:1 | ... / ... | / | operations.rb:107:1:107:1 | 5 | DivExpr | +| operations.rb:88:1:89:6 | ... = ... | = | operations.rb:88:1:88:3 | foo | AssignExpr | +| operations.rb:88:1:89:6 | ... = ... | = | operations.rb:88:7:89:6 | ... && ... | AssignExpr | +| operations.rb:88:7:89:6 | ... && ... | && | operations.rb:88:7:88:7 | a | LogicalAndExpr | +| operations.rb:88:7:89:6 | ... && ... | && | operations.rb:89:6:89:6 | b | LogicalAndExpr | +| operations.rb:91:1:91:7 | ... = ... | = | operations.rb:91:1:91:3 | bar | AssignExpr | +| operations.rb:91:1:91:7 | ... = ... | = | operations.rb:91:7:91:7 | a | AssignExpr | +| operations.rb:96:10:97:8 | ... && ... | && | operations.rb:96:10:96:10 | a | LogicalAndExpr | +| operations.rb:96:10:97:8 | ... && ... | && | operations.rb:97:8:97:8 | b | LogicalAndExpr | +| operations.rb:108:3:108:8 | ... = ... | = | operations.rb:108:3:108:4 | @x | AssignExpr | +| operations.rb:108:3:108:8 | ... = ... | = | operations.rb:108:8:108:8 | 1 | AssignExpr | +| operations.rb:109:3:109:9 | ... += ... | += | operations.rb:109:3:109:4 | @x | AssignAddExpr | +| operations.rb:109:3:109:9 | ... += ... | += | operations.rb:109:9:109:9 | 2 | AssignAddExpr | +| operations.rb:109:3:109:9 | ... = ... | = | operations.rb:109:3:109:4 | @x | AssignExpr | +| operations.rb:109:3:109:9 | ... = ... | = | operations.rb:109:6:109:7 | ... + ... | AssignExpr | +| operations.rb:109:6:109:7 | ... + ... | + | operations.rb:109:3:109:4 | @x | AddExpr | +| operations.rb:109:6:109:7 | ... + ... | + | operations.rb:109:9:109:9 | 2 | AddExpr | +| operations.rb:111:3:111:9 | ... = ... | = | operations.rb:111:3:111:5 | @@y | AssignExpr | +| operations.rb:111:3:111:9 | ... = ... | = | operations.rb:111:9:111:9 | 3 | AssignExpr | +| operations.rb:112:3:112:10 | ... /= ... | /= | operations.rb:112:3:112:5 | @@y | AssignDivExpr | +| operations.rb:112:3:112:10 | ... /= ... | /= | operations.rb:112:10:112:10 | 4 | AssignDivExpr | +| operations.rb:112:3:112:10 | ... = ... | = | operations.rb:112:3:112:5 | @@y | AssignExpr | +| operations.rb:112:3:112:10 | ... = ... | = | operations.rb:112:7:112:8 | ... / ... | AssignExpr | +| operations.rb:112:7:112:8 | ... / ... | / | operations.rb:112:3:112:5 | @@y | DivExpr | +| operations.rb:112:7:112:8 | ... / ... | / | operations.rb:112:10:112:10 | 4 | DivExpr | +| operations.rb:115:1:115:15 | ... = ... | = | operations.rb:115:1:115:11 | $global_var | AssignExpr | +| operations.rb:115:1:115:15 | ... = ... | = | operations.rb:115:15:115:15 | 5 | AssignExpr | +| operations.rb:116:1:116:16 | ... *= ... | *= | operations.rb:116:1:116:11 | $global_var | AssignMulExpr | +| operations.rb:116:1:116:16 | ... *= ... | *= | operations.rb:116:16:116:16 | 6 | AssignMulExpr | +| operations.rb:116:1:116:16 | ... = ... | = | operations.rb:116:1:116:11 | $global_var | AssignExpr | +| operations.rb:116:1:116:16 | ... = ... | = | operations.rb:116:13:116:14 | ... * ... | AssignExpr | +| operations.rb:116:13:116:14 | ... * ... | * | operations.rb:116:1:116:11 | $global_var | MulExpr | +| operations.rb:116:13:116:14 | ... * ... | * | operations.rb:116:16:116:16 | 6 | MulExpr | +| operations.rb:118:1:118:13 | ... = ... | = | operations.rb:118:1:118:9 | CONSTANT1 | AssignExpr | +| operations.rb:118:1:118:13 | ... = ... | = | operations.rb:118:13:118:13 | 5 | AssignExpr | +| operations.rb:119:1:119:14 | ... += ... | += | operations.rb:119:1:119:9 | CONSTANT2 | AssignAddExpr | +| operations.rb:119:1:119:14 | ... += ... | += | operations.rb:119:14:119:14 | 6 | AssignAddExpr | +| operations.rb:119:1:119:14 | ... = ... | = | operations.rb:119:1:119:9 | CONSTANT2 | AssignExpr | +| operations.rb:119:1:119:14 | ... = ... | = | operations.rb:119:11:119:12 | ... + ... | AssignExpr | +| operations.rb:119:11:119:12 | ... + ... | + | operations.rb:119:1:119:9 | CONSTANT2 | AddExpr | +| operations.rb:119:11:119:12 | ... + ... | + | operations.rb:119:14:119:14 | 6 | AddExpr | +| operations.rb:120:1:120:15 | ... = ... | = | operations.rb:120:1:120:9 | CONSTANT3 | AssignExpr | +| operations.rb:120:1:120:15 | ... = ... | = | operations.rb:120:11:120:13 | ... \|\| ... | AssignExpr | +| operations.rb:120:1:120:15 | ... \|\|= ... | \|\|= | operations.rb:120:1:120:9 | CONSTANT3 | AssignLogicalOrExpr | +| operations.rb:120:1:120:15 | ... \|\|= ... | \|\|= | operations.rb:120:15:120:15 | 7 | AssignLogicalOrExpr | +| operations.rb:120:11:120:13 | ... \|\| ... | \|\| | operations.rb:120:1:120:9 | CONSTANT3 | LogicalOrExpr | +| operations.rb:120:11:120:13 | ... \|\| ... | \|\| | operations.rb:120:15:120:15 | 7 | LogicalOrExpr | +| operations.rb:121:1:121:3 | ... = ... | = | operations.rb:121:1:121:3 | Foo | AssignExpr | +| operations.rb:121:1:121:3 | ... = ... | = | operations.rb:121:1:121:3 | __synth__0 | AssignExpr | +| operations.rb:121:1:121:25 | ... = ... | = | operations.rb:121:1:121:19 | MemberConstant | AssignExpr | +| operations.rb:121:1:121:25 | ... = ... | = | operations.rb:121:21:121:23 | ... \|\| ... | AssignExpr | +| operations.rb:121:1:121:25 | ... \|\|= ... | \|\|= | operations.rb:121:1:121:19 | MemberConstant | AssignLogicalOrExpr | +| operations.rb:121:1:121:25 | ... \|\|= ... | \|\|= | operations.rb:121:25:121:25 | 8 | AssignLogicalOrExpr | +| operations.rb:121:21:121:23 | ... \|\| ... | \|\| | operations.rb:121:1:121:19 | MemberConstant | LogicalOrExpr | +| operations.rb:121:21:121:23 | ... \|\| ... | \|\| | operations.rb:121:25:121:25 | 8 | LogicalOrExpr | +| operations.rb:122:1:122:10 | ... = ... | = | operations.rb:122:1:122:10 | __synth__0 | AssignExpr | +| operations.rb:122:1:122:10 | ... = ... | = | operations.rb:122:1:122:10 | call to bar | AssignExpr | +| operations.rb:122:1:122:31 | ... = ... | = | operations.rb:122:1:122:25 | OtherConstant | AssignExpr | +| operations.rb:122:1:122:31 | ... = ... | = | operations.rb:122:27:122:29 | ... \|\| ... | AssignExpr | +| operations.rb:122:1:122:31 | ... \|\|= ... | \|\|= | operations.rb:122:1:122:25 | OtherConstant | AssignLogicalOrExpr | +| operations.rb:122:1:122:31 | ... \|\|= ... | \|\|= | operations.rb:122:31:122:31 | 7 | AssignLogicalOrExpr | +| operations.rb:122:27:122:29 | ... \|\| ... | \|\| | operations.rb:122:1:122:25 | OtherConstant | LogicalOrExpr | +| operations.rb:122:27:122:29 | ... \|\| ... | \|\| | operations.rb:122:31:122:31 | 7 | LogicalOrExpr | +| operations.rb:123:1:123:17 | ... = ... | = | operations.rb:123:1:123:11 | CONSTANT4 | AssignExpr | +| operations.rb:123:1:123:17 | ... = ... | = | operations.rb:123:13:123:15 | ... \|\| ... | AssignExpr | +| operations.rb:123:1:123:17 | ... \|\|= ... | \|\|= | operations.rb:123:1:123:11 | CONSTANT4 | AssignLogicalOrExpr | +| operations.rb:123:1:123:17 | ... \|\|= ... | \|\|= | operations.rb:123:17:123:17 | 7 | AssignLogicalOrExpr | +| operations.rb:123:13:123:15 | ... \|\| ... | \|\| | operations.rb:123:1:123:11 | CONSTANT4 | LogicalOrExpr | +| operations.rb:123:13:123:15 | ... \|\| ... | \|\| | operations.rb:123:17:123:17 | 7 | LogicalOrExpr | +| operations.rb:124:1:124:3 | ... = ... | = | operations.rb:124:1:124:3 | FOO | AssignExpr | +| operations.rb:124:1:124:3 | ... = ... | = | operations.rb:124:1:124:3 | call to [] | AssignExpr | +| operations.rb:124:1:124:32 | ... = ... | = | operations.rb:124:1:124:20 | (..., ...) | AssignExpr | +| operations.rb:124:1:124:32 | ... = ... | = | operations.rb:124:24:124:32 | [...] | AssignExpr | +| operations.rb:124:6:124:10 | ... = ... | = | operations.rb:124:6:124:10 | BAR | AssignExpr | +| operations.rb:124:6:124:10 | ... = ... | = | operations.rb:124:6:124:10 | call to [] | AssignExpr | +| operations.rb:124:13:124:15 | ... = ... | = | operations.rb:124:13:124:15 | __synth__2 | AssignExpr | +| operations.rb:124:13:124:15 | ... = ... | = | operations.rb:124:13:124:15 | foo | AssignExpr | +| operations.rb:124:13:124:20 | ... = ... | = | operations.rb:124:13:124:20 | FOO | AssignExpr | +| operations.rb:124:13:124:20 | ... = ... | = | operations.rb:124:13:124:20 | call to [] | AssignExpr | +| operations.rb:124:24:124:32 | * ... | * | operations.rb:124:24:124:32 | [...] | SplatExpr | +| operations.rb:124:24:124:32 | ... = ... | = | operations.rb:124:24:124:32 | * ... | AssignExpr | +| operations.rb:124:24:124:32 | ... = ... | = | operations.rb:124:24:124:32 | __synth__3 | AssignExpr | +| operations.rb:126:1:127:1 | ... / ... | / | operations.rb:126:1:126:3 | foo | DivExpr | +| operations.rb:126:1:127:1 | ... / ... | / | operations.rb:127:1:127:1 | 5 | DivExpr | diff --git a/ruby/ql/test/library-tests/ast/operations/operations.rb b/ruby/ql/test/library-tests/ast/operations/operations.rb index cee2acedc707..fa7cb985251e 100644 --- a/ruby/ql/test/library-tests/ast/operations/operations.rb +++ b/ruby/ql/test/library-tests/ast/operations/operations.rb @@ -84,6 +84,26 @@ def foo; return 1, *[2], a:3, **{b:4, c:5} end bar |= 0x01 baz ^= qux +# Assignments with operation at start of line +foo = a + && b +# NOTE: This is not parsed correctly, `|| b` is dropped +bar = a + || b + +# Return with `&&` at start of line +def foo(a, b) + return a + && b +end + +# Return with `||` at start of line +# NOTE: This is not parsed correctly, `|| b` is dropped +def bar(a, b) + return a + || b +end + class X @x = 1 @x += 2 diff --git a/ruby/ql/test/library-tests/ast/operations/unary.expected b/ruby/ql/test/library-tests/ast/operations/unary.expected index 43c23fff0312..2ea6dcf07681 100644 --- a/ruby/ql/test/library-tests/ast/operations/unary.expected +++ b/ruby/ql/test/library-tests/ast/operations/unary.expected @@ -7,7 +7,7 @@ unaryOperations | operations.rb:28:1:28:12 | defined? ... | defined? | operations.rb:28:10:28:12 | foo | DefinedExpr | | operations.rb:29:20:29:23 | * ... | * | operations.rb:29:21:29:23 | [...] | SplatExpr | | operations.rb:29:31:29:42 | ** ... | ** | operations.rb:29:33:29:42 | {...} | HashSplatExpr | -| operations.rb:104:24:104:32 | * ... | * | operations.rb:104:24:104:32 | [...] | SplatExpr | +| operations.rb:124:24:124:32 | * ... | * | operations.rb:124:24:124:32 | [...] | SplatExpr | unaryLogicalOperations | operations.rb:23:1:23:2 | ! ... | ! | operations.rb:23:2:23:2 | a | NotExpr | | operations.rb:24:1:24:5 | not ... | not | operations.rb:24:5:24:5 | b | NotExpr | From 5f970d9f2fc9de4a41cca594bf06ba494e2527e9 Mon Sep 17 00:00:00 2001 From: Chris Smowton Date: Thu, 12 Feb 2026 12:01:33 +0000 Subject: [PATCH 404/433] Rewordings per copilot --- python/ql/src/Security/CWE-022/PathInjection.qhelp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/python/ql/src/Security/CWE-022/PathInjection.qhelp b/python/ql/src/Security/CWE-022/PathInjection.qhelp index ebe267a462ce..53653abb12e6 100644 --- a/python/ql/src/Security/CWE-022/PathInjection.qhelp +++ b/python/ql/src/Security/CWE-022/PathInjection.qhelp @@ -23,14 +23,15 @@ The choice of validation depends on the use case.

If you want to allow paths spanning multiple folders, a common strategy is to make sure that the constructed file path is contained within a safe root folder. First, normalize the path using os.path.normpath or -os.path.realpath to remove any ".." segments. Then check that the normalized path starts with the +os.path.realpath (make sure to use the latter if symlinks are a consideration) +to remove any internal ".." segments and/or follow links. Then check that the normalized path starts with the root folder. Note that the normalization step is important, since otherwise even a path that starts with the root folder could be used to access files outside the root folder.

More restrictive options include using a library function like werkzeug.utils.secure_filename to eliminate -any special characters from the file path, or restricting the path to an allow list of safe paths. These options are +any special characters from the file path, or restricting the path to a known list of safe paths. These options are safe, but can only be used in particular circumstances.

From bf02e478fd057e4c6e17d2418581a0bc80bb1589 Mon Sep 17 00:00:00 2001 From: Simon Friis Vindum Date: Thu, 12 Feb 2026 12:45:06 +0100 Subject: [PATCH 405/433] Rust: Comment out tests with parse errors --- ruby/ql/test/library-tests/ast/Ast.expected | 41 ------ .../library-tests/ast/TreeSitter.expected | 133 ++++++------------ .../test/library-tests/ast/ValueText.expected | 26 +++- .../ast/control/ConditionalExpr.expected | 8 -- .../ast/control/ControlExpr.expected | 4 - .../library-tests/ast/control/conditionals.rb | 46 +++--- .../ast/operations/assignment.expected | 1 - .../ast/operations/operation.expected | 2 - .../ast/operations/operations.rb | 12 +- 9 files changed, 93 insertions(+), 180 deletions(-) diff --git a/ruby/ql/test/library-tests/ast/Ast.expected b/ruby/ql/test/library-tests/ast/Ast.expected index e88a3880f1a0..0bece506bfb4 100644 --- a/ruby/ql/test/library-tests/ast/Ast.expected +++ b/ruby/ql/test/library-tests/ast/Ast.expected @@ -1479,12 +1479,6 @@ control/conditionals.rb: # 88| getStmt: [MethodCall] call to then # 88| getReceiver: [SelfVariableAccess] self # 89| getStmt: [LocalVariableAccess] c -# 94| getStmt: [IfExpr] if ... -# 94| getCondition: [LocalVariableAccess] a -# 94| getBranch/getThen: [StmtSequence] then ... -# 96| getStmt: [MethodCall] call to then -# 96| getReceiver: [SelfVariableAccess] self -# 97| getStmt: [LocalVariableAccess] c # 102| getStmt: [IfExpr] if ... # 102| getCondition: [LocalVariableAccess] a # 102| getBranch/getThen: [StmtSequence] then ... @@ -1502,37 +1496,12 @@ control/conditionals.rb: # 111| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] c # 111| getBranch/getThen: [StmtSequence] then ... # 113| getStmt: [LocalVariableAccess] d -# 118| getStmt: [IfExpr] if ... -# 118| getCondition: [LogicalAndExpr] ... && ... -# 118| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a -# 119| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b -# 119| getBranch/getThen: [StmtSequence] then ... -# 121| getStmt: [MethodCall] call to then -# 121| getReceiver: [SelfVariableAccess] self -# 122| getStmt: [LocalVariableAccess] d -# 127| getStmt: [IfExpr] if ... -# 127| getCondition: [LogicalAndExpr] ... && ... -# 127| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a -# 128| getAnOperand/getArgument/getRightOperand: [ParenthesizedExpr] ( ... ) -# 128| getStmt: [LocalVariableAccess] b -# 129| getBranch/getThen: [StmtSequence] then ... -# 131| getStmt: [LocalVariableAccess] d -# 136| getStmt: [IfExpr] if ... -# 136| getCondition: [LocalVariableAccess] a -# 136| getBranch/getThen: [StmtSequence] then ... -# 139| getStmt: [MethodCall] call to then -# 139| getReceiver: [SelfVariableAccess] self -# 140| getStmt: [LocalVariableAccess] d # 144| getStmt: [IfExpr] if ... # 144| getCondition: [LogicalAndExpr] ... && ... # 144| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a # 145| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b # 145| getBranch/getThen: [StmtSequence] then ... # 147| getStmt: [LocalVariableAccess] c -# 137| [ParenthesizedExpr] ( ... ) -# 137| getStmt: [LogicalAndExpr] ... && ... -# 137| getAnOperand/getLeftOperand/getReceiver: [MethodCall] call to b -# 138| getAnOperand/getArgument/getRightOperand: [MethodCall] call to c constants/constants.rb: # 1| [Toplevel] constants.rb # 1| getStmt: [ModuleDeclaration] ModuleA @@ -2925,9 +2894,6 @@ operations/operations.rb: # 88| getAnOperand/getRightOperand: [LogicalAndExpr] ... && ... # 88| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a # 89| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b -# 91| getStmt: [AssignExpr] ... = ... -# 91| getAnOperand/getLeftOperand: [LocalVariableAccess] bar -# 91| getAnOperand/getRightOperand: [LocalVariableAccess] a # 95| getStmt: [Method] foo # 95| getParameter: [SimpleParameter] a # 95| getDefiningAccess: [LocalVariableAccess] a @@ -2937,13 +2903,6 @@ operations/operations.rb: # 96| getValue: [LogicalAndExpr] ... && ... # 96| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] a # 97| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] b -# 102| getStmt: [Method] bar -# 102| getParameter: [SimpleParameter] a -# 102| getDefiningAccess: [LocalVariableAccess] a -# 102| getParameter: [SimpleParameter] b -# 102| getDefiningAccess: [LocalVariableAccess] b -# 103| getStmt: [ReturnStmt] return -# 103| getValue: [LocalVariableAccess] a # 107| getStmt: [ClassDeclaration] X # 108| getStmt: [AssignExpr] ... = ... # 108| getAnOperand/getLeftOperand: [InstanceVariableAccess] @x diff --git a/ruby/ql/test/library-tests/ast/TreeSitter.expected b/ruby/ql/test/library-tests/ast/TreeSitter.expected index 854b5e1f10b7..ab7937969d10 100644 --- a/ruby/ql/test/library-tests/ast/TreeSitter.expected +++ b/ruby/ql/test/library-tests/ast/TreeSitter.expected @@ -2993,14 +2993,7 @@ control/conditionals.rb: # 88| 1: [Identifier] then # 89| 2: [Identifier] c # 90| 3: [ReservedWord] end -# 94| 20: [If] If -# 94| 0: [ReservedWord] if -# 94| 1: [Identifier] a -# 94| 2: [Then] Then -# 96| 1: [Identifier] then -# 97| 2: [Identifier] c -# 98| 3: [ReservedWord] end -# 102| 21: [If] If +# 102| 20: [If] If # 102| 0: [ReservedWord] if # 102| 1: [Identifier] a # 102| 2: [Then] Then @@ -3011,7 +3004,7 @@ control/conditionals.rb: # 104| 1: [Identifier] then # 105| 2: [Identifier] c # 106| 3: [ReservedWord] end -# 109| 22: [If] If +# 109| 21: [If] If # 109| 0: [ReservedWord] if # 109| 1: [Binary] Binary # 109| 0: [Binary] Binary @@ -3024,37 +3017,7 @@ control/conditionals.rb: # 112| 0: [ReservedWord] then # 113| 1: [Identifier] d # 114| 3: [ReservedWord] end -# 118| 23: [If] If -# 118| 0: [ReservedWord] if -# 118| 1: [Binary] Binary -# 118| 0: [Identifier] a -# 119| 1: [ReservedWord] && -# 119| 2: [Identifier] b -# 119| 2: [Then] Then -# 121| 1: [Identifier] then -# 122| 2: [Identifier] d -# 123| 3: [ReservedWord] end -# 127| 24: [If] If -# 127| 0: [ReservedWord] if -# 127| 1: [Binary] Binary -# 127| 0: [Identifier] a -# 128| 1: [ReservedWord] && -# 128| 2: [ParenthesizedStatements] ParenthesizedStatements -# 128| 0: [ReservedWord] ( -# 128| 1: [Identifier] b -# 129| 3: [ReservedWord] ) -# 129| 2: [Then] Then -# 130| 0: [ReservedWord] then -# 131| 1: [Identifier] d -# 132| 3: [ReservedWord] end -# 136| 25: [If] If -# 136| 0: [ReservedWord] if -# 136| 1: [Identifier] a -# 136| 2: [Then] Then -# 139| 1: [Identifier] then -# 140| 2: [Identifier] d -# 141| 3: [ReservedWord] end -# 144| 26: [If] If +# 144| 22: [If] If # 144| 0: [ReservedWord] if # 144| 1: [Binary] Binary # 144| 0: [Identifier] a @@ -3082,29 +3045,38 @@ control/conditionals.rb: # 85| [Comment] # NOTE: This is not parsed correctly, `and b` is parsed as a call # 92| [Comment] # If expr with `||` at the start of a separate line before then # 93| [Comment] # NOTE: This is not parsed correctly due to the leading `||` -# 95| [ReservedWord] || -# 95| [Identifier] b +# 94| [Comment] # if a +# 95| [Comment] # || b +# 96| [Comment] # then +# 97| [Comment] # c +# 98| [Comment] # end # 100| [Comment] # If expr with `or` at the start of a separate line before then # 101| [Comment] # NOTE: This is not parsed correctly, `or b` is parsed as a call # 108| [Comment] # If expr with repeated && at the start of a separate line before then # 116| [Comment] # If expr with alternating && and || at the start of lines # 117| [Comment] # NOTE: This is not parsed correctly due to the leading `||` -# 120| [ReservedWord] || -# 120| [Identifier] c +# 118| [Comment] # if a +# 119| [Comment] # && b +# 120| [Comment] # || c +# 121| [Comment] # then +# 122| [Comment] # d +# 123| [Comment] # end # 125| [Comment] # If expr with operator at start of line and parentheses # 126| [Comment] # NOTE: This is not parsed correctly due to the leading `||` -# 129| [ReservedWord] || -# 129| [Identifier] c +# 127| [Comment] # if a +# 128| [Comment] # && (b +# 129| [Comment] # || c) +# 130| [Comment] # then +# 131| [Comment] # d +# 132| [Comment] # end # 134| [Comment] # If expr with operator at start of line and parentheses # 135| [Comment] # NOTE: This is not parsed correctly due to the leading `||` -# 137| [ReservedWord] || -# 137| [ParenthesizedStatements] ParenthesizedStatements -# 137| 0: [ReservedWord] ( -# 137| 1: [Binary] Binary -# 137| 0: [Identifier] b -# 138| 1: [ReservedWord] && -# 138| 2: [Identifier] c -# 138| 2: [ReservedWord] ) +# 136| [Comment] # if a +# 137| [Comment] # || (b +# 138| [Comment] # && c) +# 139| [Comment] # then +# 140| [Comment] # d +# 141| [Comment] # end # 143| [Comment] # If expr with && at end of line control/loops.rb: # 1| [Program] Program @@ -5703,11 +5675,7 @@ operations/operations.rb: # 88| 0: [Identifier] a # 89| 1: [ReservedWord] && # 89| 2: [Identifier] b -# 91| 64: [Assignment] Assignment -# 91| 0: [Identifier] bar -# 91| 1: [ReservedWord] = -# 91| 2: [Identifier] a -# 95| 66: [Method] Method +# 95| 64: [Method] Method # 95| 0: [ReservedWord] def # 95| 1: [Identifier] foo # 95| 2: [MethodParameters] MethodParameters @@ -5725,22 +5693,7 @@ operations/operations.rb: # 97| 1: [ReservedWord] && # 97| 2: [Identifier] b # 98| 4: [ReservedWord] end -# 102| 67: [Method] Method -# 102| 0: [ReservedWord] def -# 102| 1: [Identifier] bar -# 102| 2: [MethodParameters] MethodParameters -# 102| 0: [ReservedWord] ( -# 102| 1: [Identifier] a -# 102| 2: [ReservedWord] , -# 102| 3: [Identifier] b -# 102| 4: [ReservedWord] ) -# 103| 3: [BodyStatement] BodyStatement -# 103| 0: [Return] Return -# 103| 0: [ReservedWord] return -# 103| 1: [ArgumentList] ArgumentList -# 103| 0: [Identifier] a -# 105| 4: [ReservedWord] end -# 107| 68: [Class] Class +# 107| 65: [Class] Class # 107| 0: [ReservedWord] class # 107| 1: [Constant] X # 108| 2: [BodyStatement] BodyStatement @@ -5761,34 +5714,34 @@ operations/operations.rb: # 112| 1: [ReservedWord] /= # 112| 2: [Integer] 4 # 113| 3: [ReservedWord] end -# 115| 69: [Assignment] Assignment +# 115| 66: [Assignment] Assignment # 115| 0: [GlobalVariable] $global_var # 115| 1: [ReservedWord] = # 115| 2: [Integer] 5 -# 116| 70: [OperatorAssignment] OperatorAssignment +# 116| 67: [OperatorAssignment] OperatorAssignment # 116| 0: [GlobalVariable] $global_var # 116| 1: [ReservedWord] *= # 116| 2: [Integer] 6 -# 118| 71: [Assignment] Assignment +# 118| 68: [Assignment] Assignment # 118| 0: [Constant] CONSTANT1 # 118| 1: [ReservedWord] = # 118| 2: [Integer] 5 -# 119| 72: [OperatorAssignment] OperatorAssignment +# 119| 69: [OperatorAssignment] OperatorAssignment # 119| 0: [Constant] CONSTANT2 # 119| 1: [ReservedWord] += # 119| 2: [Integer] 6 -# 120| 73: [OperatorAssignment] OperatorAssignment +# 120| 70: [OperatorAssignment] OperatorAssignment # 120| 0: [Constant] CONSTANT3 # 120| 1: [ReservedWord] ||= # 120| 2: [Integer] 7 -# 121| 74: [OperatorAssignment] OperatorAssignment +# 121| 71: [OperatorAssignment] OperatorAssignment # 121| 0: [ScopeResolution] ScopeResolution # 121| 0: [Constant] Foo # 121| 1: [ReservedWord] :: # 121| 2: [Constant] MemberConstant # 121| 1: [ReservedWord] ||= # 121| 2: [Integer] 8 -# 122| 75: [OperatorAssignment] OperatorAssignment +# 122| 72: [OperatorAssignment] OperatorAssignment # 122| 0: [ScopeResolution] ScopeResolution # 122| 0: [Call] Call # 122| 0: [Call] Call @@ -5803,13 +5756,13 @@ operations/operations.rb: # 122| 2: [Constant] OtherConstant # 122| 1: [ReservedWord] ||= # 122| 2: [Integer] 7 -# 123| 76: [OperatorAssignment] OperatorAssignment +# 123| 73: [OperatorAssignment] OperatorAssignment # 123| 0: [ScopeResolution] ScopeResolution # 123| 0: [ReservedWord] :: # 123| 1: [Constant] CONSTANT4 # 123| 1: [ReservedWord] ||= # 123| 2: [Integer] 7 -# 124| 77: [Assignment] Assignment +# 124| 74: [Assignment] Assignment # 124| 0: [LeftAssignmentList] LeftAssignmentList # 124| 0: [Constant] FOO # 124| 1: [ReservedWord] , @@ -5830,7 +5783,7 @@ operations/operations.rb: # 124| 4: [ReservedWord] , # 124| 5: [Integer] 3 # 124| 6: [ReservedWord] ] -# 126| 78: [Binary] Binary +# 126| 75: [Binary] Binary # 126| 0: [Identifier] foo # 126| 1: [ReservedWord] / # 127| 2: [Integer] 5 @@ -5848,13 +5801,15 @@ operations/operations.rb: # 80| [Comment] # Bitwise assign operations # 87| [Comment] # Assignments with operation at start of line # 90| [Comment] # NOTE: This is not parsed correctly, `|| b` is dropped -# 92| [ReservedWord] || -# 92| [Identifier] b +# 91| [Comment] # bar = a +# 92| [Comment] # || b # 94| [Comment] # Return with `&&` at start of line # 100| [Comment] # Return with `||` at start of line # 101| [Comment] # NOTE: This is not parsed correctly, `|| b` is dropped -# 104| [ReservedWord] || -# 104| [Identifier] b +# 102| [Comment] # def bar(a, b) +# 103| [Comment] # return a +# 104| [Comment] # || b +# 105| [Comment] # end params/params.rb: # 1| [Program] Program # 4| 0: [Method] Method diff --git a/ruby/ql/test/library-tests/ast/ValueText.expected b/ruby/ql/test/library-tests/ast/ValueText.expected index 49122cb6ed0c..e0ad853ba83f 100644 --- a/ruby/ql/test/library-tests/ast/ValueText.expected +++ b/ruby/ql/test/library-tests/ast/ValueText.expected @@ -347,9 +347,6 @@ exprValue | control/conditionals.rb:110:8:110:8 | b | 0 | int | | control/conditionals.rb:111:8:111:8 | c | 0 | int | | control/conditionals.rb:113:5:113:5 | d | 0 | int | -| control/conditionals.rb:119:6:119:6 | b | 0 | int | -| control/conditionals.rb:128:7:128:7 | b | 0 | int | -| control/conditionals.rb:131:5:131:5 | d | 0 | int | | control/conditionals.rb:145:5:145:5 | b | 0 | int | | control/conditionals.rb:147:5:147:5 | c | 0 | int | | control/loops.rb:2:7:2:7 | 0 | 0 | int | @@ -1285,9 +1282,6 @@ exprCfgNodeValue | control/conditionals.rb:110:8:110:8 | b | 0 | int | | control/conditionals.rb:111:8:111:8 | c | 0 | int | | control/conditionals.rb:113:5:113:5 | d | 0 | int | -| control/conditionals.rb:119:6:119:6 | b | 0 | int | -| control/conditionals.rb:128:7:128:7 | b | 0 | int | -| control/conditionals.rb:131:5:131:5 | d | 0 | int | | control/conditionals.rb:145:5:145:5 | b | 0 | int | | control/conditionals.rb:147:5:147:5 | c | 0 | int | | control/loops.rb:2:7:2:7 | 0 | 0 | int | @@ -1862,6 +1856,26 @@ exprCfgNodeValue | operations/operations.rb:85:2:85:4 | baz | 0 | int | | operations/operations.rb:85:9:85:11 | qux | 0 | int | | operations/operations.rb:89:6:89:6 | b | 0 | int | +| operations/operations.rb:108:8:108:8 | 1 | 1 | int | +| operations/operations.rb:109:9:109:9 | 2 | 2 | int | +| operations/operations.rb:111:9:111:9 | 3 | 3 | int | +| operations/operations.rb:112:10:112:10 | 4 | 4 | int | +| operations/operations.rb:115:15:115:15 | 5 | 5 | int | +| operations/operations.rb:116:16:116:16 | 6 | 6 | int | +| operations/operations.rb:118:13:118:13 | 5 | 5 | int | +| operations/operations.rb:119:14:119:14 | 6 | 6 | int | +| operations/operations.rb:120:15:120:15 | 7 | 7 | int | +| operations/operations.rb:121:25:121:25 | 8 | 8 | int | +| operations/operations.rb:122:5:122:5 | 1 | 1 | int | +| operations/operations.rb:122:31:122:31 | 7 | 7 | int | +| operations/operations.rb:123:17:123:17 | 7 | 7 | int | +| operations/operations.rb:124:1:124:3 | 0 | 0 | int | +| operations/operations.rb:124:6:124:10 | 1 | 1 | int | +| operations/operations.rb:124:13:124:20 | 2 | 2 | int | +| operations/operations.rb:124:25:124:25 | 1 | 1 | int | +| operations/operations.rb:124:28:124:28 | 2 | 2 | int | +| operations/operations.rb:124:31:124:31 | 3 | 3 | int | +| operations/operations.rb:127:1:127:1 | 5 | 5 | int | | params/params.rb:41:46:41:46 | 7 | 7 | int | | params/params.rb:47:19:47:21 | :bar | :bar | symbol | | params/params.rb:47:24:47:24 | 2 | 2 | int | diff --git a/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected b/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected index da3cb1a95197..b2817b6feda4 100644 --- a/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected +++ b/ruby/ql/test/library-tests/ast/control/ConditionalExpr.expected @@ -25,12 +25,8 @@ conditionalExprs | conditionals.rb:73:1:75:3 | if ... | IfExpr | conditionals.rb:73:4:73:9 | ... && ... | conditionals.rb:73:11:74:5 | then ... | true | | conditionals.rb:78:1:82:3 | if ... | IfExpr | conditionals.rb:78:4:79:8 | ... && ... | conditionals.rb:79:9:81:5 | then ... | true | | conditionals.rb:86:1:90:3 | if ... | IfExpr | conditionals.rb:86:4:86:4 | a | conditionals.rb:86:5:89:5 | then ... | true | -| conditionals.rb:94:1:98:3 | if ... | IfExpr | conditionals.rb:94:4:94:4 | a | conditionals.rb:94:5:97:5 | then ... | true | | conditionals.rb:102:1:106:3 | if ... | IfExpr | conditionals.rb:102:4:102:4 | a | conditionals.rb:102:5:105:5 | then ... | true | | conditionals.rb:109:1:114:3 | if ... | IfExpr | conditionals.rb:109:4:111:8 | ... && ... | conditionals.rb:111:9:113:5 | then ... | true | -| conditionals.rb:118:1:123:3 | if ... | IfExpr | conditionals.rb:118:4:119:6 | ... && ... | conditionals.rb:119:7:122:5 | then ... | true | -| conditionals.rb:127:1:132:3 | if ... | IfExpr | conditionals.rb:127:4:129:7 | ... && ... | conditionals.rb:129:8:131:5 | then ... | true | -| conditionals.rb:136:1:141:3 | if ... | IfExpr | conditionals.rb:136:4:136:4 | a | conditionals.rb:136:5:140:5 | then ... | true | | conditionals.rb:144:1:148:3 | if ... | IfExpr | conditionals.rb:144:4:145:5 | ... && ... | conditionals.rb:145:6:147:5 | then ... | true | | loops.rb:9:5:9:5 | if ... | IfExpr | loops.rb:9:5:9:5 | ! ... | loops.rb:9:5:9:5 | ... = ... | true | | loops.rb:16:5:16:5 | if ... | IfExpr | loops.rb:16:5:16:5 | ! ... | loops.rb:16:5:16:5 | ... = ... | true | @@ -51,12 +47,8 @@ ifExprs | conditionals.rb:73:1:75:3 | if ... | IfExpr | conditionals.rb:73:4:73:9 | ... && ... | conditionals.rb:73:11:74:5 | then ... | (none) | false | | conditionals.rb:78:1:82:3 | if ... | IfExpr | conditionals.rb:78:4:79:8 | ... && ... | conditionals.rb:79:9:81:5 | then ... | (none) | false | | conditionals.rb:86:1:90:3 | if ... | IfExpr | conditionals.rb:86:4:86:4 | a | conditionals.rb:86:5:89:5 | then ... | (none) | false | -| conditionals.rb:94:1:98:3 | if ... | IfExpr | conditionals.rb:94:4:94:4 | a | conditionals.rb:94:5:97:5 | then ... | (none) | false | | conditionals.rb:102:1:106:3 | if ... | IfExpr | conditionals.rb:102:4:102:4 | a | conditionals.rb:102:5:105:5 | then ... | (none) | false | | conditionals.rb:109:1:114:3 | if ... | IfExpr | conditionals.rb:109:4:111:8 | ... && ... | conditionals.rb:111:9:113:5 | then ... | (none) | false | -| conditionals.rb:118:1:123:3 | if ... | IfExpr | conditionals.rb:118:4:119:6 | ... && ... | conditionals.rb:119:7:122:5 | then ... | (none) | false | -| conditionals.rb:127:1:132:3 | if ... | IfExpr | conditionals.rb:127:4:129:7 | ... && ... | conditionals.rb:129:8:131:5 | then ... | (none) | false | -| conditionals.rb:136:1:141:3 | if ... | IfExpr | conditionals.rb:136:4:136:4 | a | conditionals.rb:136:5:140:5 | then ... | (none) | false | | conditionals.rb:144:1:148:3 | if ... | IfExpr | conditionals.rb:144:4:145:5 | ... && ... | conditionals.rb:145:6:147:5 | then ... | (none) | false | unlessExprs | conditionals.rb:40:1:42:3 | unless ... | UnlessExpr | conditionals.rb:40:8:40:12 | ... > ... | conditionals.rb:40:14:41:5 | then ... | (none) | diff --git a/ruby/ql/test/library-tests/ast/control/ControlExpr.expected b/ruby/ql/test/library-tests/ast/control/ControlExpr.expected index 1c57fb080eed..e84d2608249f 100644 --- a/ruby/ql/test/library-tests/ast/control/ControlExpr.expected +++ b/ruby/ql/test/library-tests/ast/control/ControlExpr.expected @@ -31,12 +31,8 @@ | conditionals.rb:73:1:75:3 | if ... | IfExpr | | conditionals.rb:78:1:82:3 | if ... | IfExpr | | conditionals.rb:86:1:90:3 | if ... | IfExpr | -| conditionals.rb:94:1:98:3 | if ... | IfExpr | | conditionals.rb:102:1:106:3 | if ... | IfExpr | | conditionals.rb:109:1:114:3 | if ... | IfExpr | -| conditionals.rb:118:1:123:3 | if ... | IfExpr | -| conditionals.rb:127:1:132:3 | if ... | IfExpr | -| conditionals.rb:136:1:141:3 | if ... | IfExpr | | conditionals.rb:144:1:148:3 | if ... | IfExpr | | loops.rb:9:1:12:3 | for ... in ... | ForExpr | | loops.rb:9:5:9:5 | if ... | IfExpr | diff --git a/ruby/ql/test/library-tests/ast/control/conditionals.rb b/ruby/ql/test/library-tests/ast/control/conditionals.rb index 4cbaf25b71cc..b5c63afbc81c 100644 --- a/ruby/ql/test/library-tests/ast/control/conditionals.rb +++ b/ruby/ql/test/library-tests/ast/control/conditionals.rb @@ -91,11 +91,11 @@ # If expr with `||` at the start of a separate line before then # NOTE: This is not parsed correctly due to the leading `||` -if a - || b -then - c -end +# if a +# || b +# then +# c +# end # If expr with `or` at the start of a separate line before then # NOTE: This is not parsed correctly, `or b` is parsed as a call @@ -115,30 +115,30 @@ # If expr with alternating && and || at the start of lines # NOTE: This is not parsed correctly due to the leading `||` -if a - && b - || c -then - d -end +# if a +# && b +# || c +# then +# d +# end # If expr with operator at start of line and parentheses # NOTE: This is not parsed correctly due to the leading `||` -if a - && (b - || c) -then - d -end +# if a +# && (b +# || c) +# then +# d +# end # If expr with operator at start of line and parentheses # NOTE: This is not parsed correctly due to the leading `||` -if a - || (b - && c) -then - d -end +# if a +# || (b +# && c) +# then +# d +# end # If expr with && at end of line if a && diff --git a/ruby/ql/test/library-tests/ast/operations/assignment.expected b/ruby/ql/test/library-tests/ast/operations/assignment.expected index e03066597b25..54f6a0c00fa5 100644 --- a/ruby/ql/test/library-tests/ast/operations/assignment.expected +++ b/ruby/ql/test/library-tests/ast/operations/assignment.expected @@ -44,7 +44,6 @@ assignments | operations.rb:85:2:85:11 | ... = ... | = | operations.rb:85:2:85:4 | baz | operations.rb:85:6:85:7 | ... ^ ... | AssignExpr | | operations.rb:85:2:85:11 | ... ^= ... | ^= | operations.rb:85:2:85:4 | baz | operations.rb:85:9:85:11 | qux | AssignBitwiseXorExpr | | operations.rb:88:1:89:6 | ... = ... | = | operations.rb:88:1:88:3 | foo | operations.rb:88:7:89:6 | ... && ... | AssignExpr | -| operations.rb:91:1:91:7 | ... = ... | = | operations.rb:91:1:91:3 | bar | operations.rb:91:7:91:7 | a | AssignExpr | | operations.rb:108:3:108:8 | ... = ... | = | operations.rb:108:3:108:4 | @x | operations.rb:108:8:108:8 | 1 | AssignExpr | | operations.rb:109:3:109:9 | ... += ... | += | operations.rb:109:3:109:4 | @x | operations.rb:109:9:109:9 | 2 | AssignAddExpr | | operations.rb:109:3:109:9 | ... = ... | = | operations.rb:109:3:109:4 | @x | operations.rb:109:6:109:7 | ... + ... | AssignExpr | diff --git a/ruby/ql/test/library-tests/ast/operations/operation.expected b/ruby/ql/test/library-tests/ast/operations/operation.expected index ffc123b79071..7f7833f707dd 100644 --- a/ruby/ql/test/library-tests/ast/operations/operation.expected +++ b/ruby/ql/test/library-tests/ast/operations/operation.expected @@ -174,8 +174,6 @@ | operations.rb:88:1:89:6 | ... = ... | = | operations.rb:88:7:89:6 | ... && ... | AssignExpr | | operations.rb:88:7:89:6 | ... && ... | && | operations.rb:88:7:88:7 | a | LogicalAndExpr | | operations.rb:88:7:89:6 | ... && ... | && | operations.rb:89:6:89:6 | b | LogicalAndExpr | -| operations.rb:91:1:91:7 | ... = ... | = | operations.rb:91:1:91:3 | bar | AssignExpr | -| operations.rb:91:1:91:7 | ... = ... | = | operations.rb:91:7:91:7 | a | AssignExpr | | operations.rb:96:10:97:8 | ... && ... | && | operations.rb:96:10:96:10 | a | LogicalAndExpr | | operations.rb:96:10:97:8 | ... && ... | && | operations.rb:97:8:97:8 | b | LogicalAndExpr | | operations.rb:108:3:108:8 | ... = ... | = | operations.rb:108:3:108:4 | @x | AssignExpr | diff --git a/ruby/ql/test/library-tests/ast/operations/operations.rb b/ruby/ql/test/library-tests/ast/operations/operations.rb index fa7cb985251e..93ddc39d6384 100644 --- a/ruby/ql/test/library-tests/ast/operations/operations.rb +++ b/ruby/ql/test/library-tests/ast/operations/operations.rb @@ -88,8 +88,8 @@ def foo; return 1, *[2], a:3, **{b:4, c:5} end foo = a && b # NOTE: This is not parsed correctly, `|| b` is dropped -bar = a - || b +# bar = a +# || b # Return with `&&` at start of line def foo(a, b) @@ -99,10 +99,10 @@ def foo(a, b) # Return with `||` at start of line # NOTE: This is not parsed correctly, `|| b` is dropped -def bar(a, b) - return a - || b -end +# def bar(a, b) +# return a +# || b +# end class X @x = 1 From d0999e3abdbe162c2bbd4b46f5aa21712772cf2c Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 12 Feb 2026 16:57:04 +0000 Subject: [PATCH 406/433] Add failing test for @Pattern validation --- .../security/CWE-918/RequestForgery.expected | 747 +++++++++++------- .../security/CWE-918/SanitizationTests.java | 69 +- .../test/query-tests/security/CWE-918/options | 2 +- .../javax/validation/Constraint.java | 88 +++ .../javax/validation/Payload.java | 23 + .../javax/validation/constraints/Pattern.java | 148 ++++ 6 files changed, 802 insertions(+), 275 deletions(-) create mode 100644 java/ql/test/stubs/javax-validation-constraints/javax/validation/Constraint.java create mode 100644 java/ql/test/stubs/javax-validation-constraints/javax/validation/Payload.java create mode 100644 java/ql/test/stubs/javax-validation-constraints/javax/validation/constraints/Pattern.java diff --git a/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected b/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected index 3fdd2395fcb7..f1e7c9e2b86d 100644 --- a/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected +++ b/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected @@ -228,30 +228,44 @@ | JdbcUrlSSRF.java:88:19:88:25 | jdbcUrl | JdbcUrlSSRF.java:80:26:80:56 | getParameter(...) : String | JdbcUrlSSRF.java:88:19:88:25 | jdbcUrl | Potential server-side request forgery due to a $@. | JdbcUrlSSRF.java:80:26:80:56 | getParameter(...) | user-provided value | | ReactiveWebClientSSRF.java:16:52:16:54 | url | ReactiveWebClientSSRF.java:15:26:15:52 | getParameter(...) : String | ReactiveWebClientSSRF.java:16:52:16:54 | url | Potential server-side request forgery due to a $@. | ReactiveWebClientSSRF.java:15:26:15:52 | getParameter(...) | user-provided value | | ReactiveWebClientSSRF.java:35:30:35:32 | url | ReactiveWebClientSSRF.java:32:26:32:52 | getParameter(...) : String | ReactiveWebClientSSRF.java:35:30:35:32 | url | Potential server-side request forgery due to a $@. | ReactiveWebClientSSRF.java:32:26:32:52 | getParameter(...) | user-provided value | -| SanitizationTests.java:24:52:24:54 | uri | SanitizationTests.java:21:31:21:57 | getParameter(...) : String | SanitizationTests.java:24:52:24:54 | uri | Potential server-side request forgery due to a $@. | SanitizationTests.java:21:31:21:57 | getParameter(...) | user-provided value | -| SanitizationTests.java:25:25:25:25 | r | SanitizationTests.java:21:31:21:57 | getParameter(...) : String | SanitizationTests.java:25:25:25:25 | r | Potential server-side request forgery due to a $@. | SanitizationTests.java:21:31:21:57 | getParameter(...) | user-provided value | -| SanitizationTests.java:78:59:78:77 | new URI(...) | SanitizationTests.java:77:33:77:63 | getParameter(...) : String | SanitizationTests.java:78:59:78:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:77:33:77:63 | getParameter(...) | user-provided value | -| SanitizationTests.java:79:25:79:32 | unsafer3 | SanitizationTests.java:77:33:77:63 | getParameter(...) : String | SanitizationTests.java:79:25:79:32 | unsafer3 | Potential server-side request forgery due to a $@. | SanitizationTests.java:77:33:77:63 | getParameter(...) | user-provided value | -| SanitizationTests.java:82:59:82:77 | new URI(...) | SanitizationTests.java:81:49:81:79 | getParameter(...) : String | SanitizationTests.java:82:59:82:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:81:49:81:79 | getParameter(...) | user-provided value | -| SanitizationTests.java:83:25:83:32 | unsafer4 | SanitizationTests.java:81:49:81:79 | getParameter(...) : String | SanitizationTests.java:83:25:83:32 | unsafer4 | Potential server-side request forgery due to a $@. | SanitizationTests.java:81:49:81:79 | getParameter(...) | user-provided value | -| SanitizationTests.java:87:59:87:88 | new URI(...) | SanitizationTests.java:86:31:86:61 | getParameter(...) : String | SanitizationTests.java:87:59:87:88 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:86:31:86:61 | getParameter(...) | user-provided value | -| SanitizationTests.java:88:25:88:32 | unsafer5 | SanitizationTests.java:86:31:86:61 | getParameter(...) : String | SanitizationTests.java:88:25:88:32 | unsafer5 | Potential server-side request forgery due to a $@. | SanitizationTests.java:86:31:86:61 | getParameter(...) | user-provided value | -| SanitizationTests.java:92:60:92:89 | new URI(...) | SanitizationTests.java:90:58:90:86 | getParameter(...) : String | SanitizationTests.java:92:60:92:89 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:90:58:90:86 | getParameter(...) | user-provided value | -| SanitizationTests.java:93:25:93:33 | unsafer5a | SanitizationTests.java:90:58:90:86 | getParameter(...) : String | SanitizationTests.java:93:25:93:33 | unsafer5a | Potential server-side request forgery due to a $@. | SanitizationTests.java:90:58:90:86 | getParameter(...) | user-provided value | -| SanitizationTests.java:97:60:97:90 | new URI(...) | SanitizationTests.java:95:60:95:88 | getParameter(...) : String | SanitizationTests.java:97:60:97:90 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:95:60:95:88 | getParameter(...) | user-provided value | -| SanitizationTests.java:98:25:98:33 | unsafer5b | SanitizationTests.java:95:60:95:88 | getParameter(...) : String | SanitizationTests.java:98:25:98:33 | unsafer5b | Potential server-side request forgery due to a $@. | SanitizationTests.java:95:60:95:88 | getParameter(...) | user-provided value | -| SanitizationTests.java:102:60:102:90 | new URI(...) | SanitizationTests.java:100:77:100:105 | getParameter(...) : String | SanitizationTests.java:102:60:102:90 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:100:77:100:105 | getParameter(...) | user-provided value | -| SanitizationTests.java:103:25:103:33 | unsafer5c | SanitizationTests.java:100:77:100:105 | getParameter(...) : String | SanitizationTests.java:103:25:103:33 | unsafer5c | Potential server-side request forgery due to a $@. | SanitizationTests.java:100:77:100:105 | getParameter(...) | user-provided value | -| SanitizationTests.java:106:59:106:77 | new URI(...) | SanitizationTests.java:105:73:105:103 | getParameter(...) : String | SanitizationTests.java:106:59:106:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:105:73:105:103 | getParameter(...) | user-provided value | -| SanitizationTests.java:107:25:107:32 | unsafer6 | SanitizationTests.java:105:73:105:103 | getParameter(...) : String | SanitizationTests.java:107:25:107:32 | unsafer6 | Potential server-side request forgery due to a $@. | SanitizationTests.java:105:73:105:103 | getParameter(...) | user-provided value | -| SanitizationTests.java:110:59:110:77 | new URI(...) | SanitizationTests.java:109:56:109:86 | getParameter(...) : String | SanitizationTests.java:110:59:110:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:109:56:109:86 | getParameter(...) | user-provided value | -| SanitizationTests.java:111:25:111:32 | unsafer7 | SanitizationTests.java:109:56:109:86 | getParameter(...) : String | SanitizationTests.java:111:25:111:32 | unsafer7 | Potential server-side request forgery due to a $@. | SanitizationTests.java:109:56:109:86 | getParameter(...) | user-provided value | -| SanitizationTests.java:114:59:114:77 | new URI(...) | SanitizationTests.java:113:55:113:85 | getParameter(...) : String | SanitizationTests.java:114:59:114:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:113:55:113:85 | getParameter(...) | user-provided value | -| SanitizationTests.java:115:25:115:32 | unsafer8 | SanitizationTests.java:113:55:113:85 | getParameter(...) : String | SanitizationTests.java:115:25:115:32 | unsafer8 | Potential server-side request forgery due to a $@. | SanitizationTests.java:113:55:113:85 | getParameter(...) | user-provided value | -| SanitizationTests.java:118:59:118:77 | new URI(...) | SanitizationTests.java:117:33:117:63 | getParameter(...) : String | SanitizationTests.java:118:59:118:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:117:33:117:63 | getParameter(...) | user-provided value | -| SanitizationTests.java:119:25:119:32 | unsafer9 | SanitizationTests.java:117:33:117:63 | getParameter(...) : String | SanitizationTests.java:119:25:119:32 | unsafer9 | Potential server-side request forgery due to a $@. | SanitizationTests.java:117:33:117:63 | getParameter(...) | user-provided value | -| SanitizationTests.java:122:60:122:79 | new URI(...) | SanitizationTests.java:121:94:121:125 | getParameter(...) : String | SanitizationTests.java:122:60:122:79 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:121:94:121:125 | getParameter(...) | user-provided value | -| SanitizationTests.java:123:25:123:33 | unsafer10 | SanitizationTests.java:121:94:121:125 | getParameter(...) : String | SanitizationTests.java:123:25:123:33 | unsafer10 | Potential server-side request forgery due to a $@. | SanitizationTests.java:121:94:121:125 | getParameter(...) | user-provided value | +| SanitizationTests.java:25:52:25:54 | uri | SanitizationTests.java:22:31:22:57 | getParameter(...) : String | SanitizationTests.java:25:52:25:54 | uri | Potential server-side request forgery due to a $@. | SanitizationTests.java:22:31:22:57 | getParameter(...) | user-provided value | +| SanitizationTests.java:26:25:26:25 | r | SanitizationTests.java:22:31:22:57 | getParameter(...) : String | SanitizationTests.java:26:25:26:25 | r | Potential server-side request forgery due to a $@. | SanitizationTests.java:22:31:22:57 | getParameter(...) | user-provided value | +| SanitizationTests.java:79:59:79:77 | new URI(...) | SanitizationTests.java:78:33:78:63 | getParameter(...) : String | SanitizationTests.java:79:59:79:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:78:33:78:63 | getParameter(...) | user-provided value | +| SanitizationTests.java:80:25:80:32 | unsafer3 | SanitizationTests.java:78:33:78:63 | getParameter(...) : String | SanitizationTests.java:80:25:80:32 | unsafer3 | Potential server-side request forgery due to a $@. | SanitizationTests.java:78:33:78:63 | getParameter(...) | user-provided value | +| SanitizationTests.java:83:59:83:77 | new URI(...) | SanitizationTests.java:82:49:82:79 | getParameter(...) : String | SanitizationTests.java:83:59:83:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:82:49:82:79 | getParameter(...) | user-provided value | +| SanitizationTests.java:84:25:84:32 | unsafer4 | SanitizationTests.java:82:49:82:79 | getParameter(...) : String | SanitizationTests.java:84:25:84:32 | unsafer4 | Potential server-side request forgery due to a $@. | SanitizationTests.java:82:49:82:79 | getParameter(...) | user-provided value | +| SanitizationTests.java:88:59:88:88 | new URI(...) | SanitizationTests.java:87:31:87:61 | getParameter(...) : String | SanitizationTests.java:88:59:88:88 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:87:31:87:61 | getParameter(...) | user-provided value | +| SanitizationTests.java:89:25:89:32 | unsafer5 | SanitizationTests.java:87:31:87:61 | getParameter(...) : String | SanitizationTests.java:89:25:89:32 | unsafer5 | Potential server-side request forgery due to a $@. | SanitizationTests.java:87:31:87:61 | getParameter(...) | user-provided value | +| SanitizationTests.java:93:60:93:89 | new URI(...) | SanitizationTests.java:91:58:91:86 | getParameter(...) : String | SanitizationTests.java:93:60:93:89 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:91:58:91:86 | getParameter(...) | user-provided value | +| SanitizationTests.java:94:25:94:33 | unsafer5a | SanitizationTests.java:91:58:91:86 | getParameter(...) : String | SanitizationTests.java:94:25:94:33 | unsafer5a | Potential server-side request forgery due to a $@. | SanitizationTests.java:91:58:91:86 | getParameter(...) | user-provided value | +| SanitizationTests.java:98:60:98:90 | new URI(...) | SanitizationTests.java:96:60:96:88 | getParameter(...) : String | SanitizationTests.java:98:60:98:90 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:96:60:96:88 | getParameter(...) | user-provided value | +| SanitizationTests.java:99:25:99:33 | unsafer5b | SanitizationTests.java:96:60:96:88 | getParameter(...) : String | SanitizationTests.java:99:25:99:33 | unsafer5b | Potential server-side request forgery due to a $@. | SanitizationTests.java:96:60:96:88 | getParameter(...) | user-provided value | +| SanitizationTests.java:103:60:103:90 | new URI(...) | SanitizationTests.java:101:77:101:105 | getParameter(...) : String | SanitizationTests.java:103:60:103:90 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:101:77:101:105 | getParameter(...) | user-provided value | +| SanitizationTests.java:104:25:104:33 | unsafer5c | SanitizationTests.java:101:77:101:105 | getParameter(...) : String | SanitizationTests.java:104:25:104:33 | unsafer5c | Potential server-side request forgery due to a $@. | SanitizationTests.java:101:77:101:105 | getParameter(...) | user-provided value | +| SanitizationTests.java:107:59:107:77 | new URI(...) | SanitizationTests.java:106:73:106:103 | getParameter(...) : String | SanitizationTests.java:107:59:107:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:106:73:106:103 | getParameter(...) | user-provided value | +| SanitizationTests.java:108:25:108:32 | unsafer6 | SanitizationTests.java:106:73:106:103 | getParameter(...) : String | SanitizationTests.java:108:25:108:32 | unsafer6 | Potential server-side request forgery due to a $@. | SanitizationTests.java:106:73:106:103 | getParameter(...) | user-provided value | +| SanitizationTests.java:111:59:111:77 | new URI(...) | SanitizationTests.java:110:56:110:86 | getParameter(...) : String | SanitizationTests.java:111:59:111:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:110:56:110:86 | getParameter(...) | user-provided value | +| SanitizationTests.java:112:25:112:32 | unsafer7 | SanitizationTests.java:110:56:110:86 | getParameter(...) : String | SanitizationTests.java:112:25:112:32 | unsafer7 | Potential server-side request forgery due to a $@. | SanitizationTests.java:110:56:110:86 | getParameter(...) | user-provided value | +| SanitizationTests.java:115:59:115:77 | new URI(...) | SanitizationTests.java:114:55:114:85 | getParameter(...) : String | SanitizationTests.java:115:59:115:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:114:55:114:85 | getParameter(...) | user-provided value | +| SanitizationTests.java:116:25:116:32 | unsafer8 | SanitizationTests.java:114:55:114:85 | getParameter(...) : String | SanitizationTests.java:116:25:116:32 | unsafer8 | Potential server-side request forgery due to a $@. | SanitizationTests.java:114:55:114:85 | getParameter(...) | user-provided value | +| SanitizationTests.java:119:59:119:77 | new URI(...) | SanitizationTests.java:118:33:118:63 | getParameter(...) : String | SanitizationTests.java:119:59:119:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:118:33:118:63 | getParameter(...) | user-provided value | +| SanitizationTests.java:120:25:120:32 | unsafer9 | SanitizationTests.java:118:33:118:63 | getParameter(...) : String | SanitizationTests.java:120:25:120:32 | unsafer9 | Potential server-side request forgery due to a $@. | SanitizationTests.java:118:33:118:63 | getParameter(...) | user-provided value | +| SanitizationTests.java:123:60:123:79 | new URI(...) | SanitizationTests.java:122:94:122:125 | getParameter(...) : String | SanitizationTests.java:123:60:123:79 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:122:94:122:125 | getParameter(...) | user-provided value | +| SanitizationTests.java:124:25:124:33 | unsafer10 | SanitizationTests.java:122:94:122:125 | getParameter(...) : String | SanitizationTests.java:124:25:124:33 | unsafer10 | Potential server-side request forgery due to a $@. | SanitizationTests.java:122:94:122:125 | getParameter(...) | user-provided value | +| SanitizationTests.java:154:55:154:72 | new URI(...) | SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:154:55:154:72 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:153:67:153:95 | getParameter(...) | user-provided value | +| SanitizationTests.java:155:25:155:28 | r14a | SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:155:25:155:28 | r14a | Potential server-side request forgery due to a $@. | SanitizationTests.java:153:67:153:95 | getParameter(...) | user-provided value | +| SanitizationTests.java:156:55:156:77 | new URI(...) | SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:156:55:156:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:153:67:153:95 | getParameter(...) | user-provided value | +| SanitizationTests.java:157:25:157:28 | r14b | SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:157:25:157:28 | r14b | Potential server-side request forgery due to a $@. | SanitizationTests.java:153:67:153:95 | getParameter(...) | user-provided value | +| SanitizationTests.java:161:55:161:72 | new URI(...) | SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:161:55:161:72 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:160:75:160:103 | getParameter(...) | user-provided value | +| SanitizationTests.java:162:25:162:28 | r15a | SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:162:25:162:28 | r15a | Potential server-side request forgery due to a $@. | SanitizationTests.java:160:75:160:103 | getParameter(...) | user-provided value | +| SanitizationTests.java:163:55:163:77 | new URI(...) | SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:163:55:163:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:160:75:160:103 | getParameter(...) | user-provided value | +| SanitizationTests.java:164:25:164:28 | r15b | SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:164:25:164:28 | r15b | Potential server-side request forgery due to a $@. | SanitizationTests.java:160:75:160:103 | getParameter(...) | user-provided value | +| SanitizationTests.java:167:54:167:102 | new URI(...) | SanitizationTests.java:167:72:167:100 | getParameter(...) : String | SanitizationTests.java:167:54:167:102 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:167:72:167:100 | getParameter(...) | user-provided value | +| SanitizationTests.java:168:25:168:27 | r16 | SanitizationTests.java:167:72:167:100 | getParameter(...) : String | SanitizationTests.java:168:25:168:27 | r16 | Potential server-side request forgery due to a $@. | SanitizationTests.java:167:72:167:100 | getParameter(...) | user-provided value | +| SanitizationTests.java:171:54:171:102 | new URI(...) | SanitizationTests.java:171:72:171:100 | getParameter(...) : String | SanitizationTests.java:171:54:171:102 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:171:72:171:100 | getParameter(...) | user-provided value | +| SanitizationTests.java:172:25:172:27 | r17 | SanitizationTests.java:171:72:171:100 | getParameter(...) : String | SanitizationTests.java:172:25:172:27 | r17 | Potential server-side request forgery due to a $@. | SanitizationTests.java:171:72:171:100 | getParameter(...) | user-provided value | +| SanitizationTests.java:175:54:175:113 | new URI(...) | SanitizationTests.java:175:82:175:110 | getParameter(...) : String | SanitizationTests.java:175:54:175:113 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:175:82:175:110 | getParameter(...) | user-provided value | +| SanitizationTests.java:176:25:176:27 | r18 | SanitizationTests.java:175:82:175:110 | getParameter(...) : String | SanitizationTests.java:176:25:176:27 | r18 | Potential server-side request forgery due to a $@. | SanitizationTests.java:175:82:175:110 | getParameter(...) | user-provided value | | SpringSSRF.java:32:39:32:59 | ... + ... | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:32:39:32:59 | ... + ... | Potential server-side request forgery due to a $@. | SpringSSRF.java:28:33:28:60 | getParameter(...) | user-provided value | | SpringSSRF.java:33:69:33:82 | fooResourceUrl | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:33:69:33:82 | fooResourceUrl | Potential server-side request forgery due to a $@. | SpringSSRF.java:28:33:28:60 | getParameter(...) | user-provided value | | SpringSSRF.java:34:73:34:86 | fooResourceUrl | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:34:73:34:86 | fooResourceUrl | Potential server-side request forgery due to a $@. | SpringSSRF.java:28:33:28:60 | getParameter(...) | user-provided value | @@ -403,11 +417,11 @@ edges | ApacheHttpSSRF.java:28:31:28:34 | sink : String | ApacheHttpSSRF.java:28:23:28:35 | new URI(...) : URI | provenance | Config | | ApacheHttpSSRF.java:28:31:28:34 | sink : String | ApacheHttpSSRF.java:28:23:28:35 | new URI(...) : URI | provenance | MaD:285 | | ApacheHttpSSRF.java:42:62:42:64 | uri : URI | ApacheHttpSSRF.java:42:62:42:75 | toString(...) : String | provenance | MaD:286 | -| ApacheHttpSSRF.java:42:62:42:75 | toString(...) : String | ApacheHttpSSRF.java:42:34:42:82 | new BasicRequestLine(...) | provenance | MaD:293 Sink:MaD:231 | +| ApacheHttpSSRF.java:42:62:42:75 | toString(...) : String | ApacheHttpSSRF.java:42:34:42:82 | new BasicRequestLine(...) | provenance | MaD:295 Sink:MaD:231 | | ApacheHttpSSRF.java:43:41:43:43 | uri : URI | ApacheHttpSSRF.java:43:41:43:54 | toString(...) | provenance | MaD:286 Sink:MaD:232 | | ApacheHttpSSRF.java:44:41:44:43 | uri : URI | ApacheHttpSSRF.java:44:41:44:54 | toString(...) | provenance | MaD:286 Sink:MaD:233 | | ApacheHttpSSRF.java:46:77:46:79 | uri : URI | ApacheHttpSSRF.java:46:77:46:90 | toString(...) : String | provenance | MaD:286 | -| ApacheHttpSSRF.java:46:77:46:90 | toString(...) : String | ApacheHttpSSRF.java:46:49:46:97 | new BasicRequestLine(...) | provenance | MaD:293 Sink:MaD:228 | +| ApacheHttpSSRF.java:46:77:46:90 | toString(...) : String | ApacheHttpSSRF.java:46:49:46:97 | new BasicRequestLine(...) | provenance | MaD:295 Sink:MaD:228 | | ApacheHttpSSRF.java:47:56:47:58 | uri : URI | ApacheHttpSSRF.java:47:56:47:69 | toString(...) | provenance | MaD:286 Sink:MaD:229 | | ApacheHttpSSRF.java:48:56:48:58 | uri : URI | ApacheHttpSSRF.java:48:56:48:69 | toString(...) | provenance | MaD:286 Sink:MaD:230 | | ApacheHttpSSRFVersion5.java:41:30:41:56 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:42:31:42:37 | uriSink : String | provenance | Src:MaD:277 | @@ -501,7 +515,7 @@ edges | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:132:36:132:39 | host | provenance | Sink:MaD:100 | | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:136:38:136:41 | host | provenance | Sink:MaD:103 | | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:162:52:162:55 | host | provenance | Sink:MaD:204 | -| ApacheHttpSSRFVersion5.java:45:42:45:49 | hostSink : String | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | provenance | MaD:292 | +| ApacheHttpSSRFVersion5.java:45:42:45:49 | hostSink : String | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | | ApacheHttpSSRFVersion5.java:49:54:49:56 | uri : URI | ApacheHttpSSRFVersion5.java:49:54:49:67 | toString(...) | provenance | MaD:286 Sink:MaD:39 | | ApacheHttpSSRFVersion5.java:51:48:51:50 | uri : URI | ApacheHttpSSRFVersion5.java:51:48:51:61 | toString(...) | provenance | MaD:286 Sink:MaD:41 | | ApacheHttpSSRFVersion5.java:55:38:55:40 | uri : URI | ApacheHttpSSRFVersion5.java:55:38:55:51 | toString(...) | provenance | MaD:286 Sink:MaD:44 | @@ -631,7 +645,7 @@ edges | ApacheHttpSSRFVersion5.java:298:31:298:58 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:299:42:299:49 | hostSink : String | provenance | Src:MaD:277 | | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:303:34:303:37 | host | provenance | Sink:MaD:178 | | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:304:34:304:37 | host | provenance | Sink:MaD:179 | -| ApacheHttpSSRFVersion5.java:299:42:299:49 | hostSink : String | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | provenance | MaD:292 | +| ApacheHttpSSRFVersion5.java:299:42:299:49 | hostSink : String | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | | ApacheHttpSSRFVersion5.java:308:60:308:62 | uri : URI | ApacheHttpSSRFVersion5.java:308:60:308:73 | toString(...) | provenance | MaD:286 Sink:MaD:208 | | ApacheHttpSSRFVersion5.java:313:53:313:55 | uri : URI | ApacheHttpSSRFVersion5.java:313:53:313:66 | toString(...) | provenance | MaD:286 Sink:MaD:208 | | ApacheHttpSSRFVersion5.java:326:30:326:56 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:327:31:327:37 | uriSink : String | provenance | Src:MaD:277 | @@ -657,7 +671,7 @@ edges | ApacheHttpSSRFVersion5.java:327:31:327:37 | uriSink : String | ApacheHttpSSRFVersion5.java:327:23:327:38 | new URI(...) : URI | provenance | MaD:285 | | ApacheHttpSSRFVersion5.java:329:31:329:58 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:330:42:330:49 | hostSink : String | provenance | Src:MaD:277 | | ApacheHttpSSRFVersion5.java:330:29:330:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:354:53:354:56 | host | provenance | Sink:MaD:204 | -| ApacheHttpSSRFVersion5.java:330:42:330:49 | hostSink : String | ApacheHttpSSRFVersion5.java:330:29:330:50 | new HttpHost(...) : HttpHost | provenance | MaD:292 | +| ApacheHttpSSRFVersion5.java:330:42:330:49 | hostSink : String | ApacheHttpSSRFVersion5.java:330:29:330:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | | ApacheHttpSSRFVersion5.java:333:42:333:44 | uri : URI | ApacheHttpSSRFVersion5.java:333:42:333:55 | toString(...) | provenance | MaD:286 Sink:MaD:180 | | ApacheHttpSSRFVersion5.java:336:39:336:41 | uri : URI | ApacheHttpSSRFVersion5.java:336:39:336:52 | toString(...) | provenance | MaD:286 Sink:MaD:182 | | ApacheHttpSSRFVersion5.java:339:40:339:42 | uri : URI | ApacheHttpSSRFVersion5.java:339:40:339:53 | toString(...) | provenance | MaD:286 Sink:MaD:184 | @@ -681,7 +695,7 @@ edges | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:381:51:381:54 | host | provenance | Sink:MaD:198 | | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:385:50:385:53 | host | provenance | Sink:MaD:200 | | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:387:44:387:47 | host | provenance | Sink:MaD:202 | -| ApacheHttpSSRFVersion5.java:376:42:376:49 | hostSink : String | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | provenance | MaD:292 | +| ApacheHttpSSRFVersion5.java:376:42:376:49 | hostSink : String | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | | JakartaWsSSRF.java:14:22:14:48 | getParameter(...) : String | JakartaWsSSRF.java:15:23:15:25 | url | provenance | Src:MaD:277 Sink:MaD:3 | | JavaNetHttpSSRF.java:25:27:25:53 | getParameter(...) : String | JavaNetHttpSSRF.java:26:31:26:34 | sink : String | provenance | Src:MaD:277 | | JavaNetHttpSSRF.java:26:23:26:35 | new URI(...) : URI | JavaNetHttpSSRF.java:39:59:39:61 | uri | provenance | Sink:MaD:6 | @@ -708,7 +722,7 @@ edges | JdbcUrlSSRF.java:52:9:52:13 | props : Properties | JdbcUrlSSRF.java:54:49:54:53 | props | provenance | Sink:MaD:1 | | JdbcUrlSSRF.java:52:9:52:13 | props [post update] : Properties [] : String | JdbcUrlSSRF.java:54:49:54:53 | props | provenance | Sink:MaD:1 | | JdbcUrlSSRF.java:52:38:52:44 | jdbcUrl : String | JdbcUrlSSRF.java:52:9:52:13 | props : Properties | provenance | Config | -| JdbcUrlSSRF.java:52:38:52:44 | jdbcUrl : String | JdbcUrlSSRF.java:52:9:52:13 | props [post update] : Properties [] : String | provenance | MaD:291 | +| JdbcUrlSSRF.java:52:38:52:44 | jdbcUrl : String | JdbcUrlSSRF.java:52:9:52:13 | props [post update] : Properties [] : String | provenance | MaD:293 | | JdbcUrlSSRF.java:60:26:60:56 | getParameter(...) : String | JdbcUrlSSRF.java:65:27:65:33 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:257 | | JdbcUrlSSRF.java:60:26:60:56 | getParameter(...) : String | JdbcUrlSSRF.java:67:75:67:81 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:258 | | JdbcUrlSSRF.java:60:26:60:56 | getParameter(...) : String | JdbcUrlSSRF.java:70:75:70:81 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:260 | @@ -721,118 +735,202 @@ edges | JdbcUrlSSRF.java:80:26:80:56 | getParameter(...) : String | JdbcUrlSSRF.java:88:19:88:25 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:240 | | ReactiveWebClientSSRF.java:15:26:15:52 | getParameter(...) : String | ReactiveWebClientSSRF.java:16:52:16:54 | url | provenance | Src:MaD:277 Sink:MaD:274 | | ReactiveWebClientSSRF.java:32:26:32:52 | getParameter(...) : String | ReactiveWebClientSSRF.java:35:30:35:32 | url | provenance | Src:MaD:277 Sink:MaD:273 | -| SanitizationTests.java:21:23:21:58 | new URI(...) : URI | SanitizationTests.java:24:52:24:54 | uri | provenance | Sink:MaD:6 | -| SanitizationTests.java:21:23:21:58 | new URI(...) : URI | SanitizationTests.java:24:52:24:54 | uri : URI | provenance | | -| SanitizationTests.java:21:31:21:57 | getParameter(...) : String | SanitizationTests.java:21:23:21:58 | new URI(...) : URI | provenance | Src:MaD:277 Config | -| SanitizationTests.java:21:31:21:57 | getParameter(...) : String | SanitizationTests.java:21:23:21:58 | new URI(...) : URI | provenance | Src:MaD:277 MaD:285 | -| SanitizationTests.java:24:29:24:55 | newBuilder(...) : Builder | SanitizationTests.java:24:29:24:63 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:24:29:24:63 | build(...) : HttpRequest | SanitizationTests.java:25:25:25:25 | r | provenance | Sink:MaD:4 | -| SanitizationTests.java:24:52:24:54 | uri : URI | SanitizationTests.java:24:29:24:55 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:77:33:77:63 | getParameter(...) : String | SanitizationTests.java:78:67:78:76 | unsafeUri3 : String | provenance | Src:MaD:277 | -| SanitizationTests.java:78:36:78:78 | newBuilder(...) : Builder | SanitizationTests.java:78:36:78:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:78:36:78:86 | build(...) : HttpRequest | SanitizationTests.java:79:25:79:32 | unsafer3 | provenance | Sink:MaD:4 | -| SanitizationTests.java:78:59:78:77 | new URI(...) : URI | SanitizationTests.java:78:36:78:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:78:67:78:76 | unsafeUri3 : String | SanitizationTests.java:78:59:78:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:78:67:78:76 | unsafeUri3 : String | SanitizationTests.java:78:59:78:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:78:67:78:76 | unsafeUri3 : String | SanitizationTests.java:78:59:78:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:78:67:78:76 | unsafeUri3 : String | SanitizationTests.java:78:59:78:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:81:49:81:79 | getParameter(...) : String | SanitizationTests.java:82:67:82:76 | unsafeUri4 : String | provenance | Src:MaD:277 | -| SanitizationTests.java:82:36:82:78 | newBuilder(...) : Builder | SanitizationTests.java:82:36:82:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:82:36:82:86 | build(...) : HttpRequest | SanitizationTests.java:83:25:83:32 | unsafer4 | provenance | Sink:MaD:4 | -| SanitizationTests.java:82:59:82:77 | new URI(...) : URI | SanitizationTests.java:82:36:82:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:82:67:82:76 | unsafeUri4 : String | SanitizationTests.java:82:59:82:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:82:67:82:76 | unsafeUri4 : String | SanitizationTests.java:82:59:82:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:82:67:82:76 | unsafeUri4 : String | SanitizationTests.java:82:59:82:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:82:67:82:76 | unsafeUri4 : String | SanitizationTests.java:82:59:82:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:86:13:86:22 | unsafeUri5 [post update] : StringBuilder | SanitizationTests.java:87:67:87:76 | unsafeUri5 : StringBuilder | provenance | | -| SanitizationTests.java:86:31:86:61 | getParameter(...) : String | SanitizationTests.java:86:13:86:22 | unsafeUri5 [post update] : StringBuilder | provenance | Src:MaD:277 MaD:278 | -| SanitizationTests.java:87:36:87:89 | newBuilder(...) : Builder | SanitizationTests.java:87:36:87:97 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:87:36:87:97 | build(...) : HttpRequest | SanitizationTests.java:88:25:88:32 | unsafer5 | provenance | Sink:MaD:4 | -| SanitizationTests.java:87:59:87:88 | new URI(...) : URI | SanitizationTests.java:87:36:87:89 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:87:67:87:76 | unsafeUri5 : StringBuilder | SanitizationTests.java:87:67:87:87 | toString(...) : String | provenance | MaD:280 | -| SanitizationTests.java:87:67:87:87 | toString(...) : String | SanitizationTests.java:87:59:87:88 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:87:67:87:87 | toString(...) : String | SanitizationTests.java:87:59:87:88 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:87:67:87:87 | toString(...) : String | SanitizationTests.java:87:59:87:88 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:87:67:87:87 | toString(...) : String | SanitizationTests.java:87:59:87:88 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:90:40:90:87 | new StringBuilder(...) : StringBuilder | SanitizationTests.java:92:68:92:77 | unafeUri5a : StringBuilder | provenance | | -| SanitizationTests.java:90:58:90:86 | getParameter(...) : String | SanitizationTests.java:90:40:90:87 | new StringBuilder(...) : StringBuilder | provenance | Src:MaD:277 MaD:282 | -| SanitizationTests.java:92:37:92:90 | newBuilder(...) : Builder | SanitizationTests.java:92:37:92:98 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:92:37:92:98 | build(...) : HttpRequest | SanitizationTests.java:93:25:93:33 | unsafer5a | provenance | Sink:MaD:4 | -| SanitizationTests.java:92:60:92:89 | new URI(...) : URI | SanitizationTests.java:92:37:92:90 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:92:68:92:77 | unafeUri5a : StringBuilder | SanitizationTests.java:92:68:92:88 | toString(...) : String | provenance | MaD:280 | -| SanitizationTests.java:92:68:92:88 | toString(...) : String | SanitizationTests.java:92:60:92:89 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:92:68:92:88 | toString(...) : String | SanitizationTests.java:92:60:92:89 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:92:68:92:88 | toString(...) : String | SanitizationTests.java:92:60:92:89 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:92:68:92:88 | toString(...) : String | SanitizationTests.java:92:60:92:89 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:95:41:95:105 | append(...) : StringBuilder | SanitizationTests.java:97:68:97:78 | unsafeUri5b : StringBuilder | provenance | | -| SanitizationTests.java:95:42:95:89 | new StringBuilder(...) : StringBuilder | SanitizationTests.java:95:41:95:105 | append(...) : StringBuilder | provenance | MaD:279 | -| SanitizationTests.java:95:60:95:88 | getParameter(...) : String | SanitizationTests.java:95:42:95:89 | new StringBuilder(...) : StringBuilder | provenance | Src:MaD:277 MaD:282 | -| SanitizationTests.java:97:37:97:91 | newBuilder(...) : Builder | SanitizationTests.java:97:37:97:99 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:97:37:97:99 | build(...) : HttpRequest | SanitizationTests.java:98:25:98:33 | unsafer5b | provenance | Sink:MaD:4 | -| SanitizationTests.java:97:60:97:90 | new URI(...) : URI | SanitizationTests.java:97:37:97:91 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:97:68:97:78 | unsafeUri5b : StringBuilder | SanitizationTests.java:97:68:97:89 | toString(...) : String | provenance | MaD:280 | -| SanitizationTests.java:97:68:97:89 | toString(...) : String | SanitizationTests.java:97:60:97:90 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:97:68:97:89 | toString(...) : String | SanitizationTests.java:97:60:97:90 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:97:68:97:89 | toString(...) : String | SanitizationTests.java:97:60:97:90 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:97:68:97:89 | toString(...) : String | SanitizationTests.java:97:60:97:90 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:100:41:100:106 | append(...) : StringBuilder | SanitizationTests.java:102:68:102:78 | unsafeUri5c : StringBuilder | provenance | | -| SanitizationTests.java:100:77:100:105 | getParameter(...) : String | SanitizationTests.java:100:41:100:106 | append(...) : StringBuilder | provenance | Src:MaD:277 MaD:278+MaD:279 | -| SanitizationTests.java:102:37:102:91 | newBuilder(...) : Builder | SanitizationTests.java:102:37:102:99 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:102:37:102:99 | build(...) : HttpRequest | SanitizationTests.java:103:25:103:33 | unsafer5c | provenance | Sink:MaD:4 | -| SanitizationTests.java:102:60:102:90 | new URI(...) : URI | SanitizationTests.java:102:37:102:91 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:102:68:102:78 | unsafeUri5c : StringBuilder | SanitizationTests.java:102:68:102:89 | toString(...) : String | provenance | MaD:280 | -| SanitizationTests.java:102:68:102:89 | toString(...) : String | SanitizationTests.java:102:60:102:90 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:102:68:102:89 | toString(...) : String | SanitizationTests.java:102:60:102:90 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:102:68:102:89 | toString(...) : String | SanitizationTests.java:102:60:102:90 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:102:68:102:89 | toString(...) : String | SanitizationTests.java:102:60:102:90 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:105:33:105:104 | format(...) : String | SanitizationTests.java:106:67:106:76 | unsafeUri6 : String | provenance | | -| SanitizationTests.java:105:33:105:104 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:105:33:105:104 | format(...) : String | provenance | MaD:281 | -| SanitizationTests.java:105:73:105:103 | getParameter(...) : String | SanitizationTests.java:105:33:105:104 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | -| SanitizationTests.java:106:36:106:78 | newBuilder(...) : Builder | SanitizationTests.java:106:36:106:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:106:36:106:86 | build(...) : HttpRequest | SanitizationTests.java:107:25:107:32 | unsafer6 | provenance | Sink:MaD:4 | -| SanitizationTests.java:106:59:106:77 | new URI(...) : URI | SanitizationTests.java:106:36:106:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:106:67:106:76 | unsafeUri6 : String | SanitizationTests.java:106:59:106:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:106:67:106:76 | unsafeUri6 : String | SanitizationTests.java:106:59:106:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:106:67:106:76 | unsafeUri6 : String | SanitizationTests.java:106:59:106:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:106:67:106:76 | unsafeUri6 : String | SanitizationTests.java:106:59:106:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:109:33:109:110 | format(...) : String | SanitizationTests.java:110:67:110:76 | unsafeUri7 : String | provenance | | -| SanitizationTests.java:109:33:109:110 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:109:33:109:110 | format(...) : String | provenance | MaD:281 | -| SanitizationTests.java:109:56:109:86 | getParameter(...) : String | SanitizationTests.java:109:33:109:110 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | -| SanitizationTests.java:110:36:110:78 | newBuilder(...) : Builder | SanitizationTests.java:110:36:110:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:110:36:110:86 | build(...) : HttpRequest | SanitizationTests.java:111:25:111:32 | unsafer7 | provenance | Sink:MaD:4 | -| SanitizationTests.java:110:59:110:77 | new URI(...) : URI | SanitizationTests.java:110:36:110:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:110:67:110:76 | unsafeUri7 : String | SanitizationTests.java:110:59:110:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:110:67:110:76 | unsafeUri7 : String | SanitizationTests.java:110:59:110:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:110:67:110:76 | unsafeUri7 : String | SanitizationTests.java:110:59:110:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:110:67:110:76 | unsafeUri7 : String | SanitizationTests.java:110:59:110:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:113:33:113:110 | format(...) : String | SanitizationTests.java:114:67:114:76 | unsafeUri8 : String | provenance | | -| SanitizationTests.java:113:33:113:110 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:113:33:113:110 | format(...) : String | provenance | MaD:281 | -| SanitizationTests.java:113:55:113:85 | getParameter(...) : String | SanitizationTests.java:113:33:113:110 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | -| SanitizationTests.java:114:36:114:78 | newBuilder(...) : Builder | SanitizationTests.java:114:36:114:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:114:36:114:86 | build(...) : HttpRequest | SanitizationTests.java:115:25:115:32 | unsafer8 | provenance | Sink:MaD:4 | -| SanitizationTests.java:114:59:114:77 | new URI(...) : URI | SanitizationTests.java:114:36:114:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:114:67:114:76 | unsafeUri8 : String | SanitizationTests.java:114:59:114:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:114:67:114:76 | unsafeUri8 : String | SanitizationTests.java:114:59:114:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:114:67:114:76 | unsafeUri8 : String | SanitizationTests.java:114:59:114:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:114:67:114:76 | unsafeUri8 : String | SanitizationTests.java:114:59:114:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:117:33:117:63 | getParameter(...) : String | SanitizationTests.java:118:67:118:76 | unsafeUri9 : String | provenance | Src:MaD:277 | -| SanitizationTests.java:118:36:118:78 | newBuilder(...) : Builder | SanitizationTests.java:118:36:118:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:118:36:118:86 | build(...) : HttpRequest | SanitizationTests.java:119:25:119:32 | unsafer9 | provenance | Sink:MaD:4 | -| SanitizationTests.java:118:59:118:77 | new URI(...) : URI | SanitizationTests.java:118:36:118:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:118:67:118:76 | unsafeUri9 : String | SanitizationTests.java:118:59:118:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:118:67:118:76 | unsafeUri9 : String | SanitizationTests.java:118:59:118:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:118:67:118:76 | unsafeUri9 : String | SanitizationTests.java:118:59:118:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:118:67:118:76 | unsafeUri9 : String | SanitizationTests.java:118:59:118:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:121:34:121:126 | format(...) : String | SanitizationTests.java:122:68:122:78 | unsafeUri10 : String | provenance | | -| SanitizationTests.java:121:34:121:126 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:121:34:121:126 | format(...) : String | provenance | MaD:281 | -| SanitizationTests.java:121:94:121:125 | getParameter(...) : String | SanitizationTests.java:121:34:121:126 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | -| SanitizationTests.java:122:37:122:80 | newBuilder(...) : Builder | SanitizationTests.java:122:37:122:88 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:122:37:122:88 | build(...) : HttpRequest | SanitizationTests.java:123:25:123:33 | unsafer10 | provenance | Sink:MaD:4 | -| SanitizationTests.java:122:60:122:79 | new URI(...) : URI | SanitizationTests.java:122:37:122:80 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:122:68:122:78 | unsafeUri10 : String | SanitizationTests.java:122:60:122:79 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:122:68:122:78 | unsafeUri10 : String | SanitizationTests.java:122:60:122:79 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:122:68:122:78 | unsafeUri10 : String | SanitizationTests.java:122:60:122:79 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:122:68:122:78 | unsafeUri10 : String | SanitizationTests.java:122:60:122:79 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:22:23:22:58 | new URI(...) : URI | SanitizationTests.java:25:52:25:54 | uri | provenance | Sink:MaD:6 | +| SanitizationTests.java:22:23:22:58 | new URI(...) : URI | SanitizationTests.java:25:52:25:54 | uri : URI | provenance | | +| SanitizationTests.java:22:31:22:57 | getParameter(...) : String | SanitizationTests.java:22:23:22:58 | new URI(...) : URI | provenance | Src:MaD:277 Config | +| SanitizationTests.java:22:31:22:57 | getParameter(...) : String | SanitizationTests.java:22:23:22:58 | new URI(...) : URI | provenance | Src:MaD:277 MaD:285 | +| SanitizationTests.java:25:29:25:55 | newBuilder(...) : Builder | SanitizationTests.java:25:29:25:63 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:25:29:25:63 | build(...) : HttpRequest | SanitizationTests.java:26:25:26:25 | r | provenance | Sink:MaD:4 | +| SanitizationTests.java:25:52:25:54 | uri : URI | SanitizationTests.java:25:29:25:55 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:78:33:78:63 | getParameter(...) : String | SanitizationTests.java:79:67:79:76 | unsafeUri3 : String | provenance | Src:MaD:277 | +| SanitizationTests.java:79:36:79:78 | newBuilder(...) : Builder | SanitizationTests.java:79:36:79:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:79:36:79:86 | build(...) : HttpRequest | SanitizationTests.java:80:25:80:32 | unsafer3 | provenance | Sink:MaD:4 | +| SanitizationTests.java:79:59:79:77 | new URI(...) : URI | SanitizationTests.java:79:36:79:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:79:67:79:76 | unsafeUri3 : String | SanitizationTests.java:79:59:79:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:79:67:79:76 | unsafeUri3 : String | SanitizationTests.java:79:59:79:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:79:67:79:76 | unsafeUri3 : String | SanitizationTests.java:79:59:79:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:79:67:79:76 | unsafeUri3 : String | SanitizationTests.java:79:59:79:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:82:49:82:79 | getParameter(...) : String | SanitizationTests.java:83:67:83:76 | unsafeUri4 : String | provenance | Src:MaD:277 | +| SanitizationTests.java:83:36:83:78 | newBuilder(...) : Builder | SanitizationTests.java:83:36:83:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:83:36:83:86 | build(...) : HttpRequest | SanitizationTests.java:84:25:84:32 | unsafer4 | provenance | Sink:MaD:4 | +| SanitizationTests.java:83:59:83:77 | new URI(...) : URI | SanitizationTests.java:83:36:83:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:83:67:83:76 | unsafeUri4 : String | SanitizationTests.java:83:59:83:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:83:67:83:76 | unsafeUri4 : String | SanitizationTests.java:83:59:83:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:83:67:83:76 | unsafeUri4 : String | SanitizationTests.java:83:59:83:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:83:67:83:76 | unsafeUri4 : String | SanitizationTests.java:83:59:83:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:87:13:87:22 | unsafeUri5 [post update] : StringBuilder | SanitizationTests.java:88:67:88:76 | unsafeUri5 : StringBuilder | provenance | | +| SanitizationTests.java:87:31:87:61 | getParameter(...) : String | SanitizationTests.java:87:13:87:22 | unsafeUri5 [post update] : StringBuilder | provenance | Src:MaD:277 MaD:278 | +| SanitizationTests.java:88:36:88:89 | newBuilder(...) : Builder | SanitizationTests.java:88:36:88:97 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:88:36:88:97 | build(...) : HttpRequest | SanitizationTests.java:89:25:89:32 | unsafer5 | provenance | Sink:MaD:4 | +| SanitizationTests.java:88:59:88:88 | new URI(...) : URI | SanitizationTests.java:88:36:88:89 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:88:67:88:76 | unsafeUri5 : StringBuilder | SanitizationTests.java:88:67:88:87 | toString(...) : String | provenance | MaD:280 | +| SanitizationTests.java:88:67:88:87 | toString(...) : String | SanitizationTests.java:88:59:88:88 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:88:67:88:87 | toString(...) : String | SanitizationTests.java:88:59:88:88 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:88:67:88:87 | toString(...) : String | SanitizationTests.java:88:59:88:88 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:88:67:88:87 | toString(...) : String | SanitizationTests.java:88:59:88:88 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:91:40:91:87 | new StringBuilder(...) : StringBuilder | SanitizationTests.java:93:68:93:77 | unafeUri5a : StringBuilder | provenance | | +| SanitizationTests.java:91:58:91:86 | getParameter(...) : String | SanitizationTests.java:91:40:91:87 | new StringBuilder(...) : StringBuilder | provenance | Src:MaD:277 MaD:282 | +| SanitizationTests.java:93:37:93:90 | newBuilder(...) : Builder | SanitizationTests.java:93:37:93:98 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:93:37:93:98 | build(...) : HttpRequest | SanitizationTests.java:94:25:94:33 | unsafer5a | provenance | Sink:MaD:4 | +| SanitizationTests.java:93:60:93:89 | new URI(...) : URI | SanitizationTests.java:93:37:93:90 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:93:68:93:77 | unafeUri5a : StringBuilder | SanitizationTests.java:93:68:93:88 | toString(...) : String | provenance | MaD:280 | +| SanitizationTests.java:93:68:93:88 | toString(...) : String | SanitizationTests.java:93:60:93:89 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:93:68:93:88 | toString(...) : String | SanitizationTests.java:93:60:93:89 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:93:68:93:88 | toString(...) : String | SanitizationTests.java:93:60:93:89 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:93:68:93:88 | toString(...) : String | SanitizationTests.java:93:60:93:89 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:96:41:96:105 | append(...) : StringBuilder | SanitizationTests.java:98:68:98:78 | unsafeUri5b : StringBuilder | provenance | | +| SanitizationTests.java:96:42:96:89 | new StringBuilder(...) : StringBuilder | SanitizationTests.java:96:41:96:105 | append(...) : StringBuilder | provenance | MaD:279 | +| SanitizationTests.java:96:60:96:88 | getParameter(...) : String | SanitizationTests.java:96:42:96:89 | new StringBuilder(...) : StringBuilder | provenance | Src:MaD:277 MaD:282 | +| SanitizationTests.java:98:37:98:91 | newBuilder(...) : Builder | SanitizationTests.java:98:37:98:99 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:98:37:98:99 | build(...) : HttpRequest | SanitizationTests.java:99:25:99:33 | unsafer5b | provenance | Sink:MaD:4 | +| SanitizationTests.java:98:60:98:90 | new URI(...) : URI | SanitizationTests.java:98:37:98:91 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:98:68:98:78 | unsafeUri5b : StringBuilder | SanitizationTests.java:98:68:98:89 | toString(...) : String | provenance | MaD:280 | +| SanitizationTests.java:98:68:98:89 | toString(...) : String | SanitizationTests.java:98:60:98:90 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:98:68:98:89 | toString(...) : String | SanitizationTests.java:98:60:98:90 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:98:68:98:89 | toString(...) : String | SanitizationTests.java:98:60:98:90 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:98:68:98:89 | toString(...) : String | SanitizationTests.java:98:60:98:90 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:101:41:101:106 | append(...) : StringBuilder | SanitizationTests.java:103:68:103:78 | unsafeUri5c : StringBuilder | provenance | | +| SanitizationTests.java:101:77:101:105 | getParameter(...) : String | SanitizationTests.java:101:41:101:106 | append(...) : StringBuilder | provenance | Src:MaD:277 MaD:278+MaD:279 | +| SanitizationTests.java:103:37:103:91 | newBuilder(...) : Builder | SanitizationTests.java:103:37:103:99 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:103:37:103:99 | build(...) : HttpRequest | SanitizationTests.java:104:25:104:33 | unsafer5c | provenance | Sink:MaD:4 | +| SanitizationTests.java:103:60:103:90 | new URI(...) : URI | SanitizationTests.java:103:37:103:91 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:103:68:103:78 | unsafeUri5c : StringBuilder | SanitizationTests.java:103:68:103:89 | toString(...) : String | provenance | MaD:280 | +| SanitizationTests.java:103:68:103:89 | toString(...) : String | SanitizationTests.java:103:60:103:90 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:103:68:103:89 | toString(...) : String | SanitizationTests.java:103:60:103:90 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:103:68:103:89 | toString(...) : String | SanitizationTests.java:103:60:103:90 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:103:68:103:89 | toString(...) : String | SanitizationTests.java:103:60:103:90 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:106:33:106:104 | format(...) : String | SanitizationTests.java:107:67:107:76 | unsafeUri6 : String | provenance | | +| SanitizationTests.java:106:33:106:104 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:106:33:106:104 | format(...) : String | provenance | MaD:281 | +| SanitizationTests.java:106:73:106:103 | getParameter(...) : String | SanitizationTests.java:106:33:106:104 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | +| SanitizationTests.java:107:36:107:78 | newBuilder(...) : Builder | SanitizationTests.java:107:36:107:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:107:36:107:86 | build(...) : HttpRequest | SanitizationTests.java:108:25:108:32 | unsafer6 | provenance | Sink:MaD:4 | +| SanitizationTests.java:107:59:107:77 | new URI(...) : URI | SanitizationTests.java:107:36:107:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:107:67:107:76 | unsafeUri6 : String | SanitizationTests.java:107:59:107:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:107:67:107:76 | unsafeUri6 : String | SanitizationTests.java:107:59:107:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:107:67:107:76 | unsafeUri6 : String | SanitizationTests.java:107:59:107:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:107:67:107:76 | unsafeUri6 : String | SanitizationTests.java:107:59:107:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:110:33:110:110 | format(...) : String | SanitizationTests.java:111:67:111:76 | unsafeUri7 : String | provenance | | +| SanitizationTests.java:110:33:110:110 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:110:33:110:110 | format(...) : String | provenance | MaD:281 | +| SanitizationTests.java:110:56:110:86 | getParameter(...) : String | SanitizationTests.java:110:33:110:110 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | +| SanitizationTests.java:111:36:111:78 | newBuilder(...) : Builder | SanitizationTests.java:111:36:111:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:111:36:111:86 | build(...) : HttpRequest | SanitizationTests.java:112:25:112:32 | unsafer7 | provenance | Sink:MaD:4 | +| SanitizationTests.java:111:59:111:77 | new URI(...) : URI | SanitizationTests.java:111:36:111:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:111:67:111:76 | unsafeUri7 : String | SanitizationTests.java:111:59:111:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:111:67:111:76 | unsafeUri7 : String | SanitizationTests.java:111:59:111:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:111:67:111:76 | unsafeUri7 : String | SanitizationTests.java:111:59:111:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:111:67:111:76 | unsafeUri7 : String | SanitizationTests.java:111:59:111:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:114:33:114:110 | format(...) : String | SanitizationTests.java:115:67:115:76 | unsafeUri8 : String | provenance | | +| SanitizationTests.java:114:33:114:110 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:114:33:114:110 | format(...) : String | provenance | MaD:281 | +| SanitizationTests.java:114:55:114:85 | getParameter(...) : String | SanitizationTests.java:114:33:114:110 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | +| SanitizationTests.java:115:36:115:78 | newBuilder(...) : Builder | SanitizationTests.java:115:36:115:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:115:36:115:86 | build(...) : HttpRequest | SanitizationTests.java:116:25:116:32 | unsafer8 | provenance | Sink:MaD:4 | +| SanitizationTests.java:115:59:115:77 | new URI(...) : URI | SanitizationTests.java:115:36:115:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:115:67:115:76 | unsafeUri8 : String | SanitizationTests.java:115:59:115:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:115:67:115:76 | unsafeUri8 : String | SanitizationTests.java:115:59:115:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:115:67:115:76 | unsafeUri8 : String | SanitizationTests.java:115:59:115:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:115:67:115:76 | unsafeUri8 : String | SanitizationTests.java:115:59:115:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:118:33:118:63 | getParameter(...) : String | SanitizationTests.java:119:67:119:76 | unsafeUri9 : String | provenance | Src:MaD:277 | +| SanitizationTests.java:119:36:119:78 | newBuilder(...) : Builder | SanitizationTests.java:119:36:119:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:119:36:119:86 | build(...) : HttpRequest | SanitizationTests.java:120:25:120:32 | unsafer9 | provenance | Sink:MaD:4 | +| SanitizationTests.java:119:59:119:77 | new URI(...) : URI | SanitizationTests.java:119:36:119:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:119:67:119:76 | unsafeUri9 : String | SanitizationTests.java:119:59:119:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:119:67:119:76 | unsafeUri9 : String | SanitizationTests.java:119:59:119:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:119:67:119:76 | unsafeUri9 : String | SanitizationTests.java:119:59:119:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:119:67:119:76 | unsafeUri9 : String | SanitizationTests.java:119:59:119:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:122:34:122:126 | format(...) : String | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | provenance | | +| SanitizationTests.java:122:34:122:126 | new ..[] { .. } : Object[] [[]] : String | SanitizationTests.java:122:34:122:126 | format(...) : String | provenance | MaD:281 | +| SanitizationTests.java:122:94:122:125 | getParameter(...) : String | SanitizationTests.java:122:34:122:126 | new ..[] { .. } : Object[] [[]] : String | provenance | Src:MaD:277 | +| SanitizationTests.java:123:37:123:80 | newBuilder(...) : Builder | SanitizationTests.java:123:37:123:88 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:123:37:123:88 | build(...) : HttpRequest | SanitizationTests.java:124:25:124:33 | unsafer10 | provenance | Sink:MaD:4 | +| SanitizationTests.java:123:60:123:79 | new URI(...) : URI | SanitizationTests.java:123:37:123:80 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:153:42:153:96 | new AnnotatedFieldObject(...) : AnnotatedFieldObject [uri] : String | SanitizationTests.java:154:63:154:67 | obj14 : AnnotatedFieldObject [uri] : String | provenance | | +| SanitizationTests.java:153:42:153:96 | new AnnotatedFieldObject(...) : AnnotatedFieldObject [uri] : String | SanitizationTests.java:156:63:156:67 | obj14 : AnnotatedFieldObject [uri] : String | provenance | | +| SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:153:42:153:96 | new AnnotatedFieldObject(...) : AnnotatedFieldObject [uri] : String | provenance | Src:MaD:277 | +| SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:207:37:207:46 | uri : String | provenance | Src:MaD:277 | +| SanitizationTests.java:154:32:154:73 | newBuilder(...) : Builder | SanitizationTests.java:154:32:154:81 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:154:32:154:81 | build(...) : HttpRequest | SanitizationTests.java:155:25:155:28 | r14a | provenance | Sink:MaD:4 | +| SanitizationTests.java:154:55:154:72 | new URI(...) : URI | SanitizationTests.java:154:32:154:73 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:154:63:154:67 | obj14 : AnnotatedFieldObject [uri] : String | SanitizationTests.java:154:63:154:71 | obj14.uri : String | provenance | | +| SanitizationTests.java:154:63:154:71 | obj14.uri : String | SanitizationTests.java:154:55:154:72 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:154:63:154:71 | obj14.uri : String | SanitizationTests.java:154:55:154:72 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:154:63:154:71 | obj14.uri : String | SanitizationTests.java:154:55:154:72 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:154:63:154:71 | obj14.uri : String | SanitizationTests.java:154:55:154:72 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:156:32:156:78 | newBuilder(...) : Builder | SanitizationTests.java:156:32:156:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:156:32:156:86 | build(...) : HttpRequest | SanitizationTests.java:157:25:157:28 | r14b | provenance | Sink:MaD:4 | +| SanitizationTests.java:156:55:156:77 | new URI(...) : URI | SanitizationTests.java:156:32:156:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:156:63:156:67 | obj14 : AnnotatedFieldObject [uri] : String | SanitizationTests.java:156:63:156:76 | getUri(...) : String | provenance | | +| SanitizationTests.java:156:63:156:67 | obj14 : AnnotatedFieldObject [uri] : String | SanitizationTests.java:211:23:211:28 | parameter this : AnnotatedFieldObject [uri] : String | provenance | | +| SanitizationTests.java:156:63:156:76 | getUri(...) : String | SanitizationTests.java:156:55:156:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:156:63:156:76 | getUri(...) : String | SanitizationTests.java:156:55:156:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:156:63:156:76 | getUri(...) : String | SanitizationTests.java:156:55:156:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:156:63:156:76 | getUri(...) : String | SanitizationTests.java:156:55:156:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:160:46:160:104 | new AnnotatedParameterObject(...) : AnnotatedParameterObject [uri] : String | SanitizationTests.java:161:63:161:67 | obj15 : AnnotatedParameterObject [uri] : String | provenance | | +| SanitizationTests.java:160:46:160:104 | new AnnotatedParameterObject(...) : AnnotatedParameterObject [uri] : String | SanitizationTests.java:163:63:163:67 | obj15 : AnnotatedParameterObject [uri] : String | provenance | | +| SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:160:46:160:104 | new AnnotatedParameterObject(...) : AnnotatedParameterObject [uri] : String | provenance | Src:MaD:277 | +| SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:219:41:219:115 | uri : String | provenance | Src:MaD:277 | +| SanitizationTests.java:161:32:161:73 | newBuilder(...) : Builder | SanitizationTests.java:161:32:161:81 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:161:32:161:81 | build(...) : HttpRequest | SanitizationTests.java:162:25:162:28 | r15a | provenance | Sink:MaD:4 | +| SanitizationTests.java:161:55:161:72 | new URI(...) : URI | SanitizationTests.java:161:32:161:73 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:161:63:161:67 | obj15 : AnnotatedParameterObject [uri] : String | SanitizationTests.java:161:63:161:71 | obj15.uri : String | provenance | | +| SanitizationTests.java:161:63:161:71 | obj15.uri : String | SanitizationTests.java:161:55:161:72 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:161:63:161:71 | obj15.uri : String | SanitizationTests.java:161:55:161:72 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:161:63:161:71 | obj15.uri : String | SanitizationTests.java:161:55:161:72 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:161:63:161:71 | obj15.uri : String | SanitizationTests.java:161:55:161:72 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:163:32:163:78 | newBuilder(...) : Builder | SanitizationTests.java:163:32:163:86 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:163:32:163:86 | build(...) : HttpRequest | SanitizationTests.java:164:25:164:28 | r15b | provenance | Sink:MaD:4 | +| SanitizationTests.java:163:55:163:77 | new URI(...) : URI | SanitizationTests.java:163:32:163:78 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:163:63:163:67 | obj15 : AnnotatedParameterObject [uri] : String | SanitizationTests.java:163:63:163:76 | getUri(...) : String | provenance | | +| SanitizationTests.java:163:63:163:67 | obj15 : AnnotatedParameterObject [uri] : String | SanitizationTests.java:223:23:223:28 | parameter this : AnnotatedParameterObject [uri] : String | provenance | | +| SanitizationTests.java:163:63:163:76 | getUri(...) : String | SanitizationTests.java:163:55:163:77 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:163:63:163:76 | getUri(...) : String | SanitizationTests.java:163:55:163:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:163:63:163:76 | getUri(...) : String | SanitizationTests.java:163:55:163:77 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:163:63:163:76 | getUri(...) : String | SanitizationTests.java:163:55:163:77 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:167:31:167:103 | newBuilder(...) : Builder | SanitizationTests.java:167:31:167:111 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:167:31:167:111 | build(...) : HttpRequest | SanitizationTests.java:168:25:168:27 | r16 | provenance | Sink:MaD:4 | +| SanitizationTests.java:167:54:167:102 | new URI(...) : URI | SanitizationTests.java:167:31:167:103 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:167:62:167:101 | identity1(...) : String | SanitizationTests.java:167:54:167:102 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:167:62:167:101 | identity1(...) : String | SanitizationTests.java:167:54:167:102 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:167:62:167:101 | identity1(...) : String | SanitizationTests.java:167:54:167:102 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:167:62:167:101 | identity1(...) : String | SanitizationTests.java:167:54:167:102 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:167:72:167:100 | getParameter(...) : String | SanitizationTests.java:167:62:167:101 | identity1(...) : String | provenance | Src:MaD:277 | +| SanitizationTests.java:167:72:167:100 | getParameter(...) : String | SanitizationTests.java:188:29:188:103 | uri : String | provenance | Src:MaD:277 | +| SanitizationTests.java:171:31:171:103 | newBuilder(...) : Builder | SanitizationTests.java:171:31:171:111 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:171:31:171:111 | build(...) : HttpRequest | SanitizationTests.java:172:25:172:27 | r17 | provenance | Sink:MaD:4 | +| SanitizationTests.java:171:54:171:102 | new URI(...) : URI | SanitizationTests.java:171:31:171:103 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:171:62:171:101 | identity2(...) : String | SanitizationTests.java:171:54:171:102 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:171:62:171:101 | identity2(...) : String | SanitizationTests.java:171:54:171:102 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:171:62:171:101 | identity2(...) : String | SanitizationTests.java:171:54:171:102 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:171:62:171:101 | identity2(...) : String | SanitizationTests.java:171:54:171:102 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:171:72:171:100 | getParameter(...) : String | SanitizationTests.java:171:62:171:101 | identity2(...) : String | provenance | Src:MaD:277 | +| SanitizationTests.java:171:72:171:100 | getParameter(...) : String | SanitizationTests.java:193:29:193:38 | uri : String | provenance | Src:MaD:277 | +| SanitizationTests.java:175:31:175:114 | newBuilder(...) : Builder | SanitizationTests.java:175:31:175:122 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:175:31:175:122 | build(...) : HttpRequest | SanitizationTests.java:176:25:176:27 | r18 | provenance | Sink:MaD:4 | +| SanitizationTests.java:175:54:175:113 | new URI(...) : URI | SanitizationTests.java:175:31:175:114 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:175:62:175:112 | getFromList(...) : String | SanitizationTests.java:175:54:175:113 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:175:62:175:112 | getFromList(...) : String | SanitizationTests.java:175:54:175:113 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:175:62:175:112 | getFromList(...) : String | SanitizationTests.java:175:54:175:113 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:175:62:175:112 | getFromList(...) : String | SanitizationTests.java:175:54:175:113 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | SanitizationTests.java:175:62:175:112 | getFromList(...) : String | provenance | MaD:290 | +| SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | SanitizationTests.java:197:31:197:112 | list : List [] : String | provenance | | +| SanitizationTests.java:175:82:175:110 | getParameter(...) : String | SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | provenance | Src:MaD:277 MaD:289 | +| SanitizationTests.java:188:29:188:103 | uri : String | SanitizationTests.java:189:16:189:18 | uri : String | provenance | | +| SanitizationTests.java:193:29:193:38 | uri : String | SanitizationTests.java:194:16:194:18 | uri : String | provenance | | +| SanitizationTests.java:197:31:197:112 | list : List [] : String | SanitizationTests.java:198:16:198:19 | list : List [] : String | provenance | | +| SanitizationTests.java:198:16:198:19 | list : List [] : String | SanitizationTests.java:198:16:198:26 | get(...) : String | provenance | MaD:290 | +| SanitizationTests.java:207:37:207:46 | uri : String | SanitizationTests.java:208:24:208:26 | uri : String | provenance | | +| SanitizationTests.java:208:13:208:16 | this [post update] : AnnotatedFieldObject [uri] : String | SanitizationTests.java:207:16:207:35 | parameter this [Return] : AnnotatedFieldObject [uri] : String | provenance | | +| SanitizationTests.java:208:24:208:26 | uri : String | SanitizationTests.java:208:13:208:16 | this [post update] : AnnotatedFieldObject [uri] : String | provenance | | +| SanitizationTests.java:211:23:211:28 | parameter this : AnnotatedFieldObject [uri] : String | SanitizationTests.java:212:20:212:22 | this <.field> : AnnotatedFieldObject [uri] : String | provenance | | +| SanitizationTests.java:212:20:212:22 | this <.field> : AnnotatedFieldObject [uri] : String | SanitizationTests.java:212:20:212:22 | uri : String | provenance | | +| SanitizationTests.java:219:41:219:115 | uri : String | SanitizationTests.java:220:24:220:26 | uri : String | provenance | | +| SanitizationTests.java:220:13:220:16 | this [post update] : AnnotatedParameterObject [uri] : String | SanitizationTests.java:219:16:219:39 | parameter this [Return] : AnnotatedParameterObject [uri] : String | provenance | | +| SanitizationTests.java:220:24:220:26 | uri : String | SanitizationTests.java:220:13:220:16 | this [post update] : AnnotatedParameterObject [uri] : String | provenance | | +| SanitizationTests.java:223:23:223:28 | parameter this : AnnotatedParameterObject [uri] : String | SanitizationTests.java:224:20:224:22 | this <.field> : AnnotatedParameterObject [uri] : String | provenance | | +| SanitizationTests.java:224:20:224:22 | this <.field> : AnnotatedParameterObject [uri] : String | SanitizationTests.java:224:20:224:22 | uri : String | provenance | | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:32:39:32:59 | ... + ... | provenance | Src:MaD:277 Sink:MaD:264 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:33:69:33:82 | fooResourceUrl | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:34:73:34:86 | fooResourceUrl | provenance | Src:MaD:277 | @@ -864,16 +962,16 @@ edges | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:82:107:82:120 | fooResourceUrl : String | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:84:129:84:142 | fooResourceUrl : String | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | provenance | Src:MaD:277 | -| SpringSSRF.java:38:83:38:96 | fooResourceUrl : String | SpringSSRF.java:38:69:38:97 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:40:105:40:118 | fooResourceUrl : String | SpringSSRF.java:40:69:40:119 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:49:105:49:118 | fooResourceUrl : String | SpringSSRF.java:49:91:49:119 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:51:127:51:140 | fooResourceUrl : String | SpringSSRF.java:51:91:51:141 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:60:93:60:106 | fooResourceUrl : String | SpringSSRF.java:60:79:60:107 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:62:115:62:128 | fooResourceUrl : String | SpringSSRF.java:62:79:62:129 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:71:83:71:96 | fooResourceUrl : String | SpringSSRF.java:71:69:71:97 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:73:105:73:118 | fooResourceUrl : String | SpringSSRF.java:73:69:73:119 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:82:107:82:120 | fooResourceUrl : String | SpringSSRF.java:82:93:82:121 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:84:129:84:142 | fooResourceUrl : String | SpringSSRF.java:84:93:84:143 | of(...) | provenance | MaD:290 | +| SpringSSRF.java:38:83:38:96 | fooResourceUrl : String | SpringSSRF.java:38:69:38:97 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:40:105:40:118 | fooResourceUrl : String | SpringSSRF.java:40:69:40:119 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:49:105:49:118 | fooResourceUrl : String | SpringSSRF.java:49:91:49:119 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:51:127:51:140 | fooResourceUrl : String | SpringSSRF.java:51:91:51:141 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:60:93:60:106 | fooResourceUrl : String | SpringSSRF.java:60:79:60:107 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:62:115:62:128 | fooResourceUrl : String | SpringSSRF.java:62:79:62:129 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:71:83:71:96 | fooResourceUrl : String | SpringSSRF.java:71:69:71:97 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:73:105:73:118 | fooResourceUrl : String | SpringSSRF.java:73:69:73:119 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:82:107:82:120 | fooResourceUrl : String | SpringSSRF.java:82:93:82:121 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:84:129:84:142 | fooResourceUrl : String | SpringSSRF.java:84:93:84:143 | of(...) | provenance | MaD:292 | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:87:40:87:62 | new URI(...) | provenance | Config Sink:MaD:269 | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:87:40:87:62 | new URI(...) | provenance | MaD:285 Sink:MaD:269 | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:88:92:88:105 | fooResourceUrl | provenance | | @@ -918,20 +1016,20 @@ edges | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:159:72:159:85 | fooResourceUrl : String | provenance | | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:161:94:161:107 | fooResourceUrl : String | provenance | | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:166:35:166:48 | fooResourceUrl : String | provenance | | -| SpringSSRF.java:93:106:93:119 | fooResourceUrl : String | SpringSSRF.java:93:92:93:120 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:95:128:95:141 | fooResourceUrl : String | SpringSSRF.java:95:92:95:142 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:104:94:104:107 | fooResourceUrl : String | SpringSSRF.java:104:80:104:108 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:106:116:106:129 | fooResourceUrl : String | SpringSSRF.java:106:80:106:130 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:115:106:115:119 | fooResourceUrl : String | SpringSSRF.java:115:92:115:120 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:117:128:117:141 | fooResourceUrl : String | SpringSSRF.java:117:92:117:142 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:126:82:126:95 | fooResourceUrl : String | SpringSSRF.java:126:68:126:96 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:128:104:128:117 | fooResourceUrl : String | SpringSSRF.java:128:68:128:118 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:137:63:137:76 | fooResourceUrl : String | SpringSSRF.java:137:49:137:77 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:139:85:139:98 | fooResourceUrl : String | SpringSSRF.java:139:49:139:99 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:148:71:148:84 | fooResourceUrl : String | SpringSSRF.java:148:57:148:85 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:150:93:150:106 | fooResourceUrl : String | SpringSSRF.java:150:57:150:107 | of(...) | provenance | MaD:290 | -| SpringSSRF.java:159:72:159:85 | fooResourceUrl : String | SpringSSRF.java:159:58:159:86 | of(...) | provenance | MaD:289 | -| SpringSSRF.java:161:94:161:107 | fooResourceUrl : String | SpringSSRF.java:161:58:161:108 | of(...) | provenance | MaD:290 | +| SpringSSRF.java:93:106:93:119 | fooResourceUrl : String | SpringSSRF.java:93:92:93:120 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:95:128:95:141 | fooResourceUrl : String | SpringSSRF.java:95:92:95:142 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:104:94:104:107 | fooResourceUrl : String | SpringSSRF.java:104:80:104:108 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:106:116:106:129 | fooResourceUrl : String | SpringSSRF.java:106:80:106:130 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:115:106:115:119 | fooResourceUrl : String | SpringSSRF.java:115:92:115:120 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:117:128:117:141 | fooResourceUrl : String | SpringSSRF.java:117:92:117:142 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:126:82:126:95 | fooResourceUrl : String | SpringSSRF.java:126:68:126:96 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:128:104:128:117 | fooResourceUrl : String | SpringSSRF.java:128:68:128:118 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:137:63:137:76 | fooResourceUrl : String | SpringSSRF.java:137:49:137:77 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:139:85:139:98 | fooResourceUrl : String | SpringSSRF.java:139:49:139:99 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:148:71:148:84 | fooResourceUrl : String | SpringSSRF.java:148:57:148:85 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:150:93:150:106 | fooResourceUrl : String | SpringSSRF.java:150:57:150:107 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:159:72:159:85 | fooResourceUrl : String | SpringSSRF.java:159:58:159:86 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:161:94:161:107 | fooResourceUrl : String | SpringSSRF.java:161:58:161:108 | of(...) | provenance | MaD:292 | | SpringSSRF.java:166:27:166:49 | new URI(...) : URI | SpringSSRF.java:168:44:168:46 | uri | provenance | Sink:MaD:255 | | SpringSSRF.java:166:27:166:49 | new URI(...) : URI | SpringSSRF.java:170:35:170:37 | uri | provenance | Sink:MaD:250 | | SpringSSRF.java:166:27:166:49 | new URI(...) : URI | SpringSSRF.java:171:35:171:37 | uri | provenance | Sink:MaD:256 | @@ -1352,11 +1450,13 @@ models | 286 | Summary: java.net; URI; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | | 287 | Summary: java.net; URI; false; toURL; ; ; Argument[this]; ReturnValue; taint; manual | | 288 | Summary: java.net; URL; false; URL; (String); ; Argument[0]; Argument[this]; taint; manual | -| 289 | Summary: java.util; Map; false; of; ; ; Argument[1]; ReturnValue.MapValue; value; manual | -| 290 | Summary: java.util; Map; false; of; ; ; Argument[3]; ReturnValue.MapValue; value; manual | -| 291 | Summary: java.util; Properties; true; setProperty; (String,String); ; Argument[1]; Argument[this].MapValue; value; manual | -| 292 | Summary: org.apache.hc.core5.http; HttpHost; true; HttpHost; (String); ; Argument[0]; Argument[this]; taint; hq-manual | -| 293 | Summary: org.apache.http.message; BasicRequestLine; false; BasicRequestLine; ; ; Argument[1]; Argument[this]; taint; manual | +| 289 | Summary: java.util; List; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | +| 290 | Summary: java.util; List; true; get; (int); ; Argument[this].Element; ReturnValue; value; manual | +| 291 | Summary: java.util; Map; false; of; ; ; Argument[1]; ReturnValue.MapValue; value; manual | +| 292 | Summary: java.util; Map; false; of; ; ; Argument[3]; ReturnValue.MapValue; value; manual | +| 293 | Summary: java.util; Properties; true; setProperty; (String,String); ; Argument[1]; Argument[this].MapValue; value; manual | +| 294 | Summary: org.apache.hc.core5.http; HttpHost; true; HttpHost; (String); ; Argument[0]; Argument[this]; taint; hq-manual | +| 295 | Summary: org.apache.http.message; BasicRequestLine; false; BasicRequestLine; ; ; Argument[1]; Argument[this]; taint; manual | nodes | ApacheHttpSSRF.java:27:27:27:53 | getParameter(...) : String | semmle.label | getParameter(...) : String | | ApacheHttpSSRF.java:28:23:28:35 | new URI(...) : URI | semmle.label | new URI(...) : URI | @@ -1714,107 +1814,182 @@ nodes | ReactiveWebClientSSRF.java:16:52:16:54 | url | semmle.label | url | | ReactiveWebClientSSRF.java:32:26:32:52 | getParameter(...) : String | semmle.label | getParameter(...) : String | | ReactiveWebClientSSRF.java:35:30:35:32 | url | semmle.label | url | -| SanitizationTests.java:21:23:21:58 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:21:31:21:57 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:24:29:24:55 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:24:29:24:63 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:24:52:24:54 | uri | semmle.label | uri | -| SanitizationTests.java:24:52:24:54 | uri : URI | semmle.label | uri : URI | -| SanitizationTests.java:25:25:25:25 | r | semmle.label | r | -| SanitizationTests.java:77:33:77:63 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:78:36:78:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:78:36:78:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:78:59:78:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:78:59:78:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:78:67:78:76 | unsafeUri3 : String | semmle.label | unsafeUri3 : String | -| SanitizationTests.java:79:25:79:32 | unsafer3 | semmle.label | unsafer3 | -| SanitizationTests.java:81:49:81:79 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:82:36:82:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:82:36:82:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:82:59:82:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:82:59:82:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:82:67:82:76 | unsafeUri4 : String | semmle.label | unsafeUri4 : String | -| SanitizationTests.java:83:25:83:32 | unsafer4 | semmle.label | unsafer4 | -| SanitizationTests.java:86:13:86:22 | unsafeUri5 [post update] : StringBuilder | semmle.label | unsafeUri5 [post update] : StringBuilder | -| SanitizationTests.java:86:31:86:61 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:87:36:87:89 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:87:36:87:97 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:87:59:87:88 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:87:59:87:88 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:87:67:87:76 | unsafeUri5 : StringBuilder | semmle.label | unsafeUri5 : StringBuilder | -| SanitizationTests.java:87:67:87:87 | toString(...) : String | semmle.label | toString(...) : String | -| SanitizationTests.java:88:25:88:32 | unsafer5 | semmle.label | unsafer5 | -| SanitizationTests.java:90:40:90:87 | new StringBuilder(...) : StringBuilder | semmle.label | new StringBuilder(...) : StringBuilder | -| SanitizationTests.java:90:58:90:86 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:92:37:92:90 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:92:37:92:98 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:92:60:92:89 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:92:60:92:89 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:92:68:92:77 | unafeUri5a : StringBuilder | semmle.label | unafeUri5a : StringBuilder | -| SanitizationTests.java:92:68:92:88 | toString(...) : String | semmle.label | toString(...) : String | -| SanitizationTests.java:93:25:93:33 | unsafer5a | semmle.label | unsafer5a | -| SanitizationTests.java:95:41:95:105 | append(...) : StringBuilder | semmle.label | append(...) : StringBuilder | -| SanitizationTests.java:95:42:95:89 | new StringBuilder(...) : StringBuilder | semmle.label | new StringBuilder(...) : StringBuilder | -| SanitizationTests.java:95:60:95:88 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:97:37:97:91 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:97:37:97:99 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:97:60:97:90 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:97:60:97:90 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:97:68:97:78 | unsafeUri5b : StringBuilder | semmle.label | unsafeUri5b : StringBuilder | -| SanitizationTests.java:97:68:97:89 | toString(...) : String | semmle.label | toString(...) : String | -| SanitizationTests.java:98:25:98:33 | unsafer5b | semmle.label | unsafer5b | -| SanitizationTests.java:100:41:100:106 | append(...) : StringBuilder | semmle.label | append(...) : StringBuilder | -| SanitizationTests.java:100:77:100:105 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:102:37:102:91 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:102:37:102:99 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:102:60:102:90 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:102:60:102:90 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:102:68:102:78 | unsafeUri5c : StringBuilder | semmle.label | unsafeUri5c : StringBuilder | -| SanitizationTests.java:102:68:102:89 | toString(...) : String | semmle.label | toString(...) : String | -| SanitizationTests.java:103:25:103:33 | unsafer5c | semmle.label | unsafer5c | -| SanitizationTests.java:105:33:105:104 | format(...) : String | semmle.label | format(...) : String | -| SanitizationTests.java:105:33:105:104 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | -| SanitizationTests.java:105:73:105:103 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:106:36:106:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:106:36:106:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:106:59:106:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:106:59:106:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:106:67:106:76 | unsafeUri6 : String | semmle.label | unsafeUri6 : String | -| SanitizationTests.java:107:25:107:32 | unsafer6 | semmle.label | unsafer6 | -| SanitizationTests.java:109:33:109:110 | format(...) : String | semmle.label | format(...) : String | -| SanitizationTests.java:109:33:109:110 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | -| SanitizationTests.java:109:56:109:86 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:110:36:110:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:110:36:110:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:110:59:110:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:110:59:110:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:110:67:110:76 | unsafeUri7 : String | semmle.label | unsafeUri7 : String | -| SanitizationTests.java:111:25:111:32 | unsafer7 | semmle.label | unsafer7 | -| SanitizationTests.java:113:33:113:110 | format(...) : String | semmle.label | format(...) : String | -| SanitizationTests.java:113:33:113:110 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | -| SanitizationTests.java:113:55:113:85 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:114:36:114:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:114:36:114:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:114:59:114:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:114:59:114:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:114:67:114:76 | unsafeUri8 : String | semmle.label | unsafeUri8 : String | -| SanitizationTests.java:115:25:115:32 | unsafer8 | semmle.label | unsafer8 | -| SanitizationTests.java:117:33:117:63 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:118:36:118:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:118:36:118:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:118:59:118:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:118:59:118:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:118:67:118:76 | unsafeUri9 : String | semmle.label | unsafeUri9 : String | -| SanitizationTests.java:119:25:119:32 | unsafer9 | semmle.label | unsafer9 | -| SanitizationTests.java:121:34:121:126 | format(...) : String | semmle.label | format(...) : String | -| SanitizationTests.java:121:34:121:126 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | -| SanitizationTests.java:121:94:121:125 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:122:37:122:80 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:122:37:122:88 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:122:60:122:79 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:122:60:122:79 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:122:68:122:78 | unsafeUri10 : String | semmle.label | unsafeUri10 : String | -| SanitizationTests.java:123:25:123:33 | unsafer10 | semmle.label | unsafer10 | +| SanitizationTests.java:22:23:22:58 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:22:31:22:57 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:25:29:25:55 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:25:29:25:63 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:25:52:25:54 | uri | semmle.label | uri | +| SanitizationTests.java:25:52:25:54 | uri : URI | semmle.label | uri : URI | +| SanitizationTests.java:26:25:26:25 | r | semmle.label | r | +| SanitizationTests.java:78:33:78:63 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:79:36:79:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:79:36:79:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:79:59:79:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:79:59:79:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:79:67:79:76 | unsafeUri3 : String | semmle.label | unsafeUri3 : String | +| SanitizationTests.java:80:25:80:32 | unsafer3 | semmle.label | unsafer3 | +| SanitizationTests.java:82:49:82:79 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:83:36:83:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:83:36:83:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:83:59:83:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:83:59:83:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:83:67:83:76 | unsafeUri4 : String | semmle.label | unsafeUri4 : String | +| SanitizationTests.java:84:25:84:32 | unsafer4 | semmle.label | unsafer4 | +| SanitizationTests.java:87:13:87:22 | unsafeUri5 [post update] : StringBuilder | semmle.label | unsafeUri5 [post update] : StringBuilder | +| SanitizationTests.java:87:31:87:61 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:88:36:88:89 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:88:36:88:97 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:88:59:88:88 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:88:59:88:88 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:88:67:88:76 | unsafeUri5 : StringBuilder | semmle.label | unsafeUri5 : StringBuilder | +| SanitizationTests.java:88:67:88:87 | toString(...) : String | semmle.label | toString(...) : String | +| SanitizationTests.java:89:25:89:32 | unsafer5 | semmle.label | unsafer5 | +| SanitizationTests.java:91:40:91:87 | new StringBuilder(...) : StringBuilder | semmle.label | new StringBuilder(...) : StringBuilder | +| SanitizationTests.java:91:58:91:86 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:93:37:93:90 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:93:37:93:98 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:93:60:93:89 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:93:60:93:89 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:93:68:93:77 | unafeUri5a : StringBuilder | semmle.label | unafeUri5a : StringBuilder | +| SanitizationTests.java:93:68:93:88 | toString(...) : String | semmle.label | toString(...) : String | +| SanitizationTests.java:94:25:94:33 | unsafer5a | semmle.label | unsafer5a | +| SanitizationTests.java:96:41:96:105 | append(...) : StringBuilder | semmle.label | append(...) : StringBuilder | +| SanitizationTests.java:96:42:96:89 | new StringBuilder(...) : StringBuilder | semmle.label | new StringBuilder(...) : StringBuilder | +| SanitizationTests.java:96:60:96:88 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:98:37:98:91 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:98:37:98:99 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:98:60:98:90 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:98:60:98:90 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:98:68:98:78 | unsafeUri5b : StringBuilder | semmle.label | unsafeUri5b : StringBuilder | +| SanitizationTests.java:98:68:98:89 | toString(...) : String | semmle.label | toString(...) : String | +| SanitizationTests.java:99:25:99:33 | unsafer5b | semmle.label | unsafer5b | +| SanitizationTests.java:101:41:101:106 | append(...) : StringBuilder | semmle.label | append(...) : StringBuilder | +| SanitizationTests.java:101:77:101:105 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:103:37:103:91 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:103:37:103:99 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:103:60:103:90 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:103:60:103:90 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:103:68:103:78 | unsafeUri5c : StringBuilder | semmle.label | unsafeUri5c : StringBuilder | +| SanitizationTests.java:103:68:103:89 | toString(...) : String | semmle.label | toString(...) : String | +| SanitizationTests.java:104:25:104:33 | unsafer5c | semmle.label | unsafer5c | +| SanitizationTests.java:106:33:106:104 | format(...) : String | semmle.label | format(...) : String | +| SanitizationTests.java:106:33:106:104 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | +| SanitizationTests.java:106:73:106:103 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:107:36:107:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:107:36:107:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:107:59:107:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:107:59:107:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:107:67:107:76 | unsafeUri6 : String | semmle.label | unsafeUri6 : String | +| SanitizationTests.java:108:25:108:32 | unsafer6 | semmle.label | unsafer6 | +| SanitizationTests.java:110:33:110:110 | format(...) : String | semmle.label | format(...) : String | +| SanitizationTests.java:110:33:110:110 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | +| SanitizationTests.java:110:56:110:86 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:111:36:111:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:111:36:111:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:111:59:111:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:111:59:111:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:111:67:111:76 | unsafeUri7 : String | semmle.label | unsafeUri7 : String | +| SanitizationTests.java:112:25:112:32 | unsafer7 | semmle.label | unsafer7 | +| SanitizationTests.java:114:33:114:110 | format(...) : String | semmle.label | format(...) : String | +| SanitizationTests.java:114:33:114:110 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | +| SanitizationTests.java:114:55:114:85 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:115:36:115:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:115:36:115:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:115:59:115:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:115:59:115:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:115:67:115:76 | unsafeUri8 : String | semmle.label | unsafeUri8 : String | +| SanitizationTests.java:116:25:116:32 | unsafer8 | semmle.label | unsafer8 | +| SanitizationTests.java:118:33:118:63 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:119:36:119:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:119:36:119:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:119:59:119:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:119:59:119:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:119:67:119:76 | unsafeUri9 : String | semmle.label | unsafeUri9 : String | +| SanitizationTests.java:120:25:120:32 | unsafer9 | semmle.label | unsafer9 | +| SanitizationTests.java:122:34:122:126 | format(...) : String | semmle.label | format(...) : String | +| SanitizationTests.java:122:34:122:126 | new ..[] { .. } : Object[] [[]] : String | semmle.label | new ..[] { .. } : Object[] [[]] : String | +| SanitizationTests.java:122:94:122:125 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:123:37:123:80 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:123:37:123:88 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:123:60:123:79 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:123:60:123:79 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | semmle.label | unsafeUri10 : String | +| SanitizationTests.java:124:25:124:33 | unsafer10 | semmle.label | unsafer10 | +| SanitizationTests.java:153:42:153:96 | new AnnotatedFieldObject(...) : AnnotatedFieldObject [uri] : String | semmle.label | new AnnotatedFieldObject(...) : AnnotatedFieldObject [uri] : String | +| SanitizationTests.java:153:67:153:95 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:154:32:154:73 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:154:32:154:81 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:154:55:154:72 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:154:55:154:72 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:154:63:154:67 | obj14 : AnnotatedFieldObject [uri] : String | semmle.label | obj14 : AnnotatedFieldObject [uri] : String | +| SanitizationTests.java:154:63:154:71 | obj14.uri : String | semmle.label | obj14.uri : String | +| SanitizationTests.java:155:25:155:28 | r14a | semmle.label | r14a | +| SanitizationTests.java:156:32:156:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:156:32:156:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:156:55:156:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:156:55:156:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:156:63:156:67 | obj14 : AnnotatedFieldObject [uri] : String | semmle.label | obj14 : AnnotatedFieldObject [uri] : String | +| SanitizationTests.java:156:63:156:76 | getUri(...) : String | semmle.label | getUri(...) : String | +| SanitizationTests.java:157:25:157:28 | r14b | semmle.label | r14b | +| SanitizationTests.java:160:46:160:104 | new AnnotatedParameterObject(...) : AnnotatedParameterObject [uri] : String | semmle.label | new AnnotatedParameterObject(...) : AnnotatedParameterObject [uri] : String | +| SanitizationTests.java:160:75:160:103 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:161:32:161:73 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:161:32:161:81 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:161:55:161:72 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:161:55:161:72 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:161:63:161:67 | obj15 : AnnotatedParameterObject [uri] : String | semmle.label | obj15 : AnnotatedParameterObject [uri] : String | +| SanitizationTests.java:161:63:161:71 | obj15.uri : String | semmle.label | obj15.uri : String | +| SanitizationTests.java:162:25:162:28 | r15a | semmle.label | r15a | +| SanitizationTests.java:163:32:163:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:163:32:163:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:163:55:163:77 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:163:55:163:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:163:63:163:67 | obj15 : AnnotatedParameterObject [uri] : String | semmle.label | obj15 : AnnotatedParameterObject [uri] : String | +| SanitizationTests.java:163:63:163:76 | getUri(...) : String | semmle.label | getUri(...) : String | +| SanitizationTests.java:164:25:164:28 | r15b | semmle.label | r15b | +| SanitizationTests.java:167:31:167:103 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:167:31:167:111 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:167:54:167:102 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:167:54:167:102 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:167:62:167:101 | identity1(...) : String | semmle.label | identity1(...) : String | +| SanitizationTests.java:167:72:167:100 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:168:25:168:27 | r16 | semmle.label | r16 | +| SanitizationTests.java:171:31:171:103 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:171:31:171:111 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:171:54:171:102 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:171:54:171:102 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:171:62:171:101 | identity2(...) : String | semmle.label | identity2(...) : String | +| SanitizationTests.java:171:72:171:100 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:172:25:172:27 | r17 | semmle.label | r17 | +| SanitizationTests.java:175:31:175:114 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:175:31:175:122 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:175:54:175:113 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:175:54:175:113 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:175:62:175:112 | getFromList(...) : String | semmle.label | getFromList(...) : String | +| SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| SanitizationTests.java:175:82:175:110 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:176:25:176:27 | r18 | semmle.label | r18 | +| SanitizationTests.java:188:29:188:103 | uri : String | semmle.label | uri : String | +| SanitizationTests.java:189:16:189:18 | uri : String | semmle.label | uri : String | +| SanitizationTests.java:193:29:193:38 | uri : String | semmle.label | uri : String | +| SanitizationTests.java:194:16:194:18 | uri : String | semmle.label | uri : String | +| SanitizationTests.java:197:31:197:112 | list : List [] : String | semmle.label | list : List [] : String | +| SanitizationTests.java:198:16:198:19 | list : List [] : String | semmle.label | list : List [] : String | +| SanitizationTests.java:198:16:198:26 | get(...) : String | semmle.label | get(...) : String | +| SanitizationTests.java:207:16:207:35 | parameter this [Return] : AnnotatedFieldObject [uri] : String | semmle.label | parameter this [Return] : AnnotatedFieldObject [uri] : String | +| SanitizationTests.java:207:37:207:46 | uri : String | semmle.label | uri : String | +| SanitizationTests.java:208:13:208:16 | this [post update] : AnnotatedFieldObject [uri] : String | semmle.label | this [post update] : AnnotatedFieldObject [uri] : String | +| SanitizationTests.java:208:24:208:26 | uri : String | semmle.label | uri : String | +| SanitizationTests.java:211:23:211:28 | parameter this : AnnotatedFieldObject [uri] : String | semmle.label | parameter this : AnnotatedFieldObject [uri] : String | +| SanitizationTests.java:212:20:212:22 | this <.field> : AnnotatedFieldObject [uri] : String | semmle.label | this <.field> : AnnotatedFieldObject [uri] : String | +| SanitizationTests.java:212:20:212:22 | uri : String | semmle.label | uri : String | +| SanitizationTests.java:219:16:219:39 | parameter this [Return] : AnnotatedParameterObject [uri] : String | semmle.label | parameter this [Return] : AnnotatedParameterObject [uri] : String | +| SanitizationTests.java:219:41:219:115 | uri : String | semmle.label | uri : String | +| SanitizationTests.java:220:13:220:16 | this [post update] : AnnotatedParameterObject [uri] : String | semmle.label | this [post update] : AnnotatedParameterObject [uri] : String | +| SanitizationTests.java:220:24:220:26 | uri : String | semmle.label | uri : String | +| SanitizationTests.java:223:23:223:28 | parameter this : AnnotatedParameterObject [uri] : String | semmle.label | parameter this : AnnotatedParameterObject [uri] : String | +| SanitizationTests.java:224:20:224:22 | this <.field> : AnnotatedParameterObject [uri] : String | semmle.label | this <.field> : AnnotatedParameterObject [uri] : String | +| SanitizationTests.java:224:20:224:22 | uri : String | semmle.label | uri : String | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | semmle.label | getParameter(...) : String | | SpringSSRF.java:32:39:32:59 | ... + ... | semmle.label | ... + ... | | SpringSSRF.java:33:69:33:82 | fooResourceUrl | semmle.label | fooResourceUrl | @@ -2035,3 +2210,29 @@ nodes | mad/Test.java:112:15:112:31 | (...)... | semmle.label | (...)... | | mad/Test.java:112:24:112:31 | source(...) : String | semmle.label | source(...) : String | subpaths +| SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:207:37:207:46 | uri : String | SanitizationTests.java:207:16:207:35 | parameter this [Return] : AnnotatedFieldObject [uri] : String | SanitizationTests.java:153:42:153:96 | new AnnotatedFieldObject(...) : AnnotatedFieldObject [uri] : String | +| SanitizationTests.java:156:63:156:67 | obj14 : AnnotatedFieldObject [uri] : String | SanitizationTests.java:211:23:211:28 | parameter this : AnnotatedFieldObject [uri] : String | SanitizationTests.java:212:20:212:22 | uri : String | SanitizationTests.java:156:63:156:76 | getUri(...) : String | +| SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:219:41:219:115 | uri : String | SanitizationTests.java:219:16:219:39 | parameter this [Return] : AnnotatedParameterObject [uri] : String | SanitizationTests.java:160:46:160:104 | new AnnotatedParameterObject(...) : AnnotatedParameterObject [uri] : String | +| SanitizationTests.java:163:63:163:67 | obj15 : AnnotatedParameterObject [uri] : String | SanitizationTests.java:223:23:223:28 | parameter this : AnnotatedParameterObject [uri] : String | SanitizationTests.java:224:20:224:22 | uri : String | SanitizationTests.java:163:63:163:76 | getUri(...) : String | +| SanitizationTests.java:167:72:167:100 | getParameter(...) : String | SanitizationTests.java:188:29:188:103 | uri : String | SanitizationTests.java:189:16:189:18 | uri : String | SanitizationTests.java:167:62:167:101 | identity1(...) : String | +| SanitizationTests.java:171:72:171:100 | getParameter(...) : String | SanitizationTests.java:193:29:193:38 | uri : String | SanitizationTests.java:194:16:194:18 | uri : String | SanitizationTests.java:171:62:171:101 | identity2(...) : String | +| SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | SanitizationTests.java:197:31:197:112 | list : List [] : String | SanitizationTests.java:198:16:198:26 | get(...) : String | SanitizationTests.java:175:62:175:112 | getFromList(...) : String | +testFailures +| SanitizationTests.java:153:67:153:95 | getParameter(...) : String | Unexpected result: Source | +| SanitizationTests.java:154:55:154:72 | new URI(...) | Unexpected result: Alert | +| SanitizationTests.java:155:25:155:28 | r14a | Unexpected result: Alert | +| SanitizationTests.java:156:55:156:77 | new URI(...) | Unexpected result: Alert | +| SanitizationTests.java:157:25:157:28 | r14b | Unexpected result: Alert | +| SanitizationTests.java:160:75:160:103 | getParameter(...) : String | Unexpected result: Source | +| SanitizationTests.java:161:55:161:72 | new URI(...) | Unexpected result: Alert | +| SanitizationTests.java:162:25:162:28 | r15a | Unexpected result: Alert | +| SanitizationTests.java:163:55:163:77 | new URI(...) | Unexpected result: Alert | +| SanitizationTests.java:164:25:164:28 | r15b | Unexpected result: Alert | +| SanitizationTests.java:167:54:167:102 | new URI(...) | Unexpected result: Alert | +| SanitizationTests.java:167:72:167:100 | getParameter(...) : String | Unexpected result: Alert | +| SanitizationTests.java:167:72:167:100 | getParameter(...) : String | Unexpected result: Source | +| SanitizationTests.java:168:25:168:27 | r16 | Unexpected result: Alert | +| SanitizationTests.java:171:54:171:102 | new URI(...) | Unexpected result: Alert | +| SanitizationTests.java:171:72:171:100 | getParameter(...) : String | Unexpected result: Alert | +| SanitizationTests.java:171:72:171:100 | getParameter(...) : String | Unexpected result: Source | +| SanitizationTests.java:172:25:172:27 | r17 | Unexpected result: Alert | diff --git a/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java b/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java index 4da70e8dd751..167875086591 100644 --- a/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java +++ b/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java @@ -2,8 +2,9 @@ import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; -import java.util.regex.Pattern; import java.util.regex.Matcher; +import java.util.regex.Pattern; +import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; @@ -147,6 +148,32 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response) HttpRequest r13 = HttpRequest.newBuilder(new URI(param13)).build(); client.send(r13, null); } + + // GOOD: sanitisation by @Pattern annotation on a field + AnnotatedFieldObject obj14 = new AnnotatedFieldObject(request.getParameter("uri14")); + HttpRequest r14a = HttpRequest.newBuilder(new URI(obj14.uri)).build(); + client.send(r14a, null); + HttpRequest r14b = HttpRequest.newBuilder(new URI(obj14.getUri())).build(); + client.send(r14b, null); + + // GOOD: sanitisation by @Pattern annotation on a parameter of a constructor + AnnotatedParameterObject obj15 = new AnnotatedParameterObject(request.getParameter("uri15")); + HttpRequest r15a = HttpRequest.newBuilder(new URI(obj15.uri)).build(); + client.send(r15a, null); + HttpRequest r15b = HttpRequest.newBuilder(new URI(obj15.getUri())).build(); + client.send(r15b, null); + + // GOOD: sanitisation by @Pattern annotation on a parameter of a method + HttpRequest r16 = HttpRequest.newBuilder(new URI(identity1(request.getParameter("uri16")))).build(); + client.send(r16, null); + + // GOOD: sanitisation by @Pattern annotation on a method (which constrains the return value) + HttpRequest r17 = HttpRequest.newBuilder(new URI(identity2(request.getParameter("uri17")))).build(); + client.send(r17, null); + + // GOOD: sanitisation by @Pattern annotation on a type (we do not recognise this, so we get an FP) + HttpRequest r18 = HttpRequest.newBuilder(new URI(getFromList(List.of(request.getParameter("uri18"))))).build(); // $ SPURIOUS: Source Alert + client.send(r18, null); // $ SPURIOUS: Alert } catch (Exception e) { // TODO: handle exception } @@ -157,4 +184,44 @@ private void validate(String s) { throw new IllegalArgumentException("Invalid ID"); } } + + public String identity1(@javax.validation.constraints.Pattern(regexp = "[a-zA-Z0-9_-]+") String uri) { + return uri; + } + + @javax.validation.constraints.Pattern(regexp = "[a-zA-Z0-9_-]+") + public String identity2(String uri) { + return uri; + } + + public String getFromList(List<@javax.validation.constraints.Pattern(regexp = "[a-zA-Z0-9_-]+") String> list) { + return list.get(0); + } + + public class AnnotatedFieldObject { + @javax.validation.constraints.Pattern(regexp = "[a-zA-Z0-9_-]+") + String uri; + + String otherField; + + public AnnotatedFieldObject(String uri) { + this.uri = uri; + } + + public String getUri() { + return uri; + } + } + + public class AnnotatedParameterObject { + String uri; + + public AnnotatedParameterObject(@javax.validation.constraints.Pattern(regexp = "[a-zA-Z0-9_-]+") String uri) { + this.uri = uri; + } + + public String getUri() { + return uri; + } + } } diff --git a/java/ql/test/query-tests/security/CWE-918/options b/java/ql/test/query-tests/security/CWE-918/options index 78a6c15024ae..6b6efaeca544 100644 --- a/java/ql/test/query-tests/security/CWE-918/options +++ b/java/ql/test/query-tests/security/CWE-918/options @@ -1 +1 @@ -//semmle-extractor-options: --javac-args -source 11 -target 11 -cp ${testdir}/../../../stubs/springframework-5.8.x:${testdir}/../../../stubs/javax-ws-rs-api-2.1.1:${testdir}/../../../stubs/javax-ws-rs-api-3.0.0:${testdir}/../../../stubs/apache-http-4.4.13/:${testdir}/../../../stubs/projectreactor-3.4.3/:${testdir}/../../../stubs/postgresql-42.3.3/:${testdir}/../../../stubs/HikariCP-3.4.5/:${testdir}/../../../stubs/spring-jdbc-5.3.8/:${testdir}/../../../stubs/jdbi3-core-3.27.2/:${testdir}/../../../stubs/cargo:${testdir}/../../../stubs/javafx-web:${testdir}/../../../stubs/apache-commons-jelly-1.0.1:${testdir}/../../../stubs/dom4j-2.1.1:${testdir}/../../../stubs/jaxen-1.2.0:${testdir}/../../../stubs/stapler-1.263:${testdir}/../../../stubs/javax-servlet-2.5:${testdir}/../../../stubs/apache-commons-fileupload-1.4:${testdir}/../../../stubs/saxon-xqj-9.x:${testdir}/../../../stubs/apache-commons-beanutils:${testdir}/../../../stubs/apache-commons-lang:${testdir}/../../../stubs/apache-http-5:${testdir}/../../../stubs/playframework-2.6.x:${testdir}/../../../stubs/jaxws-api-2.0:${testdir}/../../../stubs/apache-cxf +//semmle-extractor-options: --javac-args -source 11 -target 11 -cp ${testdir}/../../../stubs/javax-validation-constraints:${testdir}/../../../stubs/springframework-5.8.x:${testdir}/../../../stubs/javax-ws-rs-api-2.1.1:${testdir}/../../../stubs/javax-ws-rs-api-3.0.0:${testdir}/../../../stubs/apache-http-4.4.13/:${testdir}/../../../stubs/projectreactor-3.4.3/:${testdir}/../../../stubs/postgresql-42.3.3/:${testdir}/../../../stubs/HikariCP-3.4.5/:${testdir}/../../../stubs/spring-jdbc-5.3.8/:${testdir}/../../../stubs/jdbi3-core-3.27.2/:${testdir}/../../../stubs/cargo:${testdir}/../../../stubs/javafx-web:${testdir}/../../../stubs/apache-commons-jelly-1.0.1:${testdir}/../../../stubs/dom4j-2.1.1:${testdir}/../../../stubs/jaxen-1.2.0:${testdir}/../../../stubs/stapler-1.263:${testdir}/../../../stubs/javax-servlet-2.5:${testdir}/../../../stubs/apache-commons-fileupload-1.4:${testdir}/../../../stubs/saxon-xqj-9.x:${testdir}/../../../stubs/apache-commons-beanutils:${testdir}/../../../stubs/apache-commons-lang:${testdir}/../../../stubs/apache-http-5:${testdir}/../../../stubs/playframework-2.6.x:${testdir}/../../../stubs/jaxws-api-2.0:${testdir}/../../../stubs/apache-cxf diff --git a/java/ql/test/stubs/javax-validation-constraints/javax/validation/Constraint.java b/java/ql/test/stubs/javax-validation-constraints/javax/validation/Constraint.java new file mode 100644 index 000000000000..5ad2617b19cd --- /dev/null +++ b/java/ql/test/stubs/javax-validation-constraints/javax/validation/Constraint.java @@ -0,0 +1,88 @@ +/* + * Bean Validation API + * + * License: Apache License, Version 2.0 + * See the license.txt file in the root directory or . + */ +package javax.validation; + +import static java.lang.annotation.ElementType.ANNOTATION_TYPE; +import static java.lang.annotation.RetentionPolicy.RUNTIME; + +import java.lang.annotation.Documented; +import java.lang.annotation.Retention; +import java.lang.annotation.Target; + +/** + * Marks an annotation as being a Bean Validation constraint. + *

+ * A given constraint annotation must be annotated by a {@code @Constraint} + * annotation which refers to its list of constraint validation implementations. + *

+ * Each constraint annotation must host the following attributes: + *

    + *
  • {@code String message() default [...];} which should default to an error + * message key made of the fully-qualified class name of the constraint followed by + * {@code .message}. For example {@code "{com.acme.constraints.NotSafe.message}"}
  • + *
  • {@code Class[] groups() default {};} for user to customize the targeted + * groups
  • + *
  • {@code Class[] payload() default {};} for + * extensibility purposes
  • + *
+ *

+ * When building a constraint that is both generic and cross-parameter, the constraint + * annotation must host the {@code validationAppliesTo()} property. + * A constraint is generic if it targets the annotated element and is cross-parameter if + * it targets the array of parameters of a method or constructor. + *

+ *     ConstraintTarget validationAppliesTo() default ConstraintTarget.IMPLICIT;
+ * 
+ * This property allows the constraint user to choose whether the constraint + * targets the return type of the executable or its array of parameters. + * + * A constraint is both generic and cross-parameter if + *
    + *
  • two kinds of {@code ConstraintValidator}s are attached to the + * constraint, one targeting {@link ValidationTarget#ANNOTATED_ELEMENT} + * and one targeting {@link ValidationTarget#PARAMETERS},
  • + *
  • or if a {@code ConstraintValidator} targets both + * {@code ANNOTATED_ELEMENT} and {@code PARAMETERS}.
  • + *
+ * + * Such dual constraints are rare. See {@link SupportedValidationTarget} for more info. + *

+ * Here is an example of constraint definition: + *

+ * @Documented
+ * @Constraint(validatedBy = OrderNumberValidator.class)
+ * @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
+ * @Retention(RUNTIME)
+ * public @interface OrderNumber {
+ *     String message() default "{com.acme.constraint.OrderNumber.message}";
+ *     Class<?>[] groups() default {};
+ *     Class<? extends Payload>[] payload() default {};
+ * }
+ * 
+ * + * @author Emmanuel Bernard + * @author Gavin King + * @author Hardy Ferentschik + */ +@Documented +@Target({ ANNOTATION_TYPE }) +@Retention(RUNTIME) +public @interface Constraint { + + /** + * {@link ConstraintValidator} classes implementing the constraint. The given classes + * must reference distinct target types for a given {@link ValidationTarget}. If two + * {@code ConstraintValidator}s refer to the same type, an exception will occur. + *

+ * At most one {@code ConstraintValidator} targeting the array of parameters of + * methods or constructors (aka cross-parameter) is accepted. If two or more + * are present, an exception will occur. + * + * @return array of {@code ConstraintValidator} classes implementing the constraint + */ + Class[] validatedBy(); +} diff --git a/java/ql/test/stubs/javax-validation-constraints/javax/validation/Payload.java b/java/ql/test/stubs/javax-validation-constraints/javax/validation/Payload.java new file mode 100644 index 000000000000..12c2760d34d4 --- /dev/null +++ b/java/ql/test/stubs/javax-validation-constraints/javax/validation/Payload.java @@ -0,0 +1,23 @@ +/* + * Bean Validation API + * + * License: Apache License, Version 2.0 + * See the license.txt file in the root directory or . + */ +package javax.validation; + +/** + * Payload type that can be attached to a given + * constraint declaration. + *

+ * Payloads are typically used to carry on metadata information + * consumed by a validation client. + *

+ * With the exception of the {@link Unwrapping} payload types, the use of payloads is not + * considered portable. + * + * @author Emmanuel Bernard + * @author Gerhard Petracek + */ +public interface Payload { +} diff --git a/java/ql/test/stubs/javax-validation-constraints/javax/validation/constraints/Pattern.java b/java/ql/test/stubs/javax-validation-constraints/javax/validation/constraints/Pattern.java new file mode 100644 index 000000000000..0f3191fe0d95 --- /dev/null +++ b/java/ql/test/stubs/javax-validation-constraints/javax/validation/constraints/Pattern.java @@ -0,0 +1,148 @@ +/* + * Bean Validation API + * + * License: Apache License, Version 2.0 + * See the license.txt file in the root directory or . + */ +package javax.validation.constraints; + +import static java.lang.annotation.ElementType.ANNOTATION_TYPE; +import static java.lang.annotation.ElementType.CONSTRUCTOR; +import static java.lang.annotation.ElementType.FIELD; +import static java.lang.annotation.ElementType.METHOD; +import static java.lang.annotation.ElementType.PARAMETER; +import static java.lang.annotation.ElementType.TYPE_USE; +import static java.lang.annotation.RetentionPolicy.RUNTIME; + +import java.lang.annotation.Documented; +import java.lang.annotation.Repeatable; +import java.lang.annotation.Retention; +import java.lang.annotation.Target; + +import javax.validation.Constraint; +import javax.validation.Payload; +import javax.validation.constraints.Pattern.List; + +/** + * The annotated {@code CharSequence} must match the specified regular expression. + * The regular expression follows the Java regular expression conventions + * see {@link java.util.regex.Pattern}. + *

+ * Accepts {@code CharSequence}. {@code null} elements are considered valid. + * + * @author Emmanuel Bernard + */ +@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE }) +@Retention(RUNTIME) +@Repeatable(List.class) +@Documented +@Constraint(validatedBy = { }) +public @interface Pattern { + + /** + * @return the regular expression to match + */ + String regexp(); + + /** + * @return array of {@code Flag}s considered when resolving the regular expression + */ + Flag[] flags() default { }; + + /** + * @return the error message template + */ + String message() default "{javax.validation.constraints.Pattern.message}"; + + /** + * @return the groups the constraint belongs to + */ + Class[] groups() default { }; + + /** + * @return the payload associated to the constraint + */ + Class[] payload() default { }; + + /** + * Possible Regexp flags. + */ + public static enum Flag { + + /** + * Enables Unix lines mode. + * + * @see java.util.regex.Pattern#UNIX_LINES + */ + UNIX_LINES( java.util.regex.Pattern.UNIX_LINES ), + + /** + * Enables case-insensitive matching. + * + * @see java.util.regex.Pattern#CASE_INSENSITIVE + */ + CASE_INSENSITIVE( java.util.regex.Pattern.CASE_INSENSITIVE ), + + /** + * Permits whitespace and comments in pattern. + * + * @see java.util.regex.Pattern#COMMENTS + */ + COMMENTS( java.util.regex.Pattern.COMMENTS ), + + /** + * Enables multiline mode. + * + * @see java.util.regex.Pattern#MULTILINE + */ + MULTILINE( java.util.regex.Pattern.MULTILINE ), + + /** + * Enables dotall mode. + * + * @see java.util.regex.Pattern#DOTALL + */ + DOTALL( java.util.regex.Pattern.DOTALL ), + + /** + * Enables Unicode-aware case folding. + * + * @see java.util.regex.Pattern#UNICODE_CASE + */ + UNICODE_CASE( java.util.regex.Pattern.UNICODE_CASE ), + + /** + * Enables canonical equivalence. + * + * @see java.util.regex.Pattern#CANON_EQ + */ + CANON_EQ( java.util.regex.Pattern.CANON_EQ ); + + //JDK flag value + private final int value; + + private Flag(int value) { + this.value = value; + } + + /** + * @return flag value as defined in {@link java.util.regex.Pattern} + */ + public int getValue() { + return value; + } + } + + /** + * Defines several {@link Pattern} annotations on the same element. + * + * @see Pattern + */ + @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE }) + @Retention(RUNTIME) + @Documented + @interface List { + + Pattern[] value(); + } +} From bfe26c198981b1ed7e4007cd06792de090b9af64 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 12 Feb 2026 16:08:29 +0000 Subject: [PATCH 407/433] Add @Pattern as RegexExecution => SSRF sanitizer --- java/ql/lib/semmle/code/java/Concepts.qll | 1 + .../code/java/frameworks/JavaxAnnotations.qll | 35 ++++ .../semmle/code/java/security/Sanitizers.qll | 23 +-- .../security/CWE-918/RequestForgery.expected | 173 ------------------ 4 files changed, 48 insertions(+), 184 deletions(-) diff --git a/java/ql/lib/semmle/code/java/Concepts.qll b/java/ql/lib/semmle/code/java/Concepts.qll index ebe37bc2bc4d..eceb77d62acc 100644 --- a/java/ql/lib/semmle/code/java/Concepts.qll +++ b/java/ql/lib/semmle/code/java/Concepts.qll @@ -8,6 +8,7 @@ module; import java private import semmle.code.java.dataflow.DataFlow +private import semmle.code.java.frameworks.JavaxAnnotations /** * A data-flow node that executes a regular expression. diff --git a/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll b/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll index 22f33d346df0..922179384729 100644 --- a/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll +++ b/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll @@ -163,3 +163,38 @@ class WebServiceAnnotation extends Annotation { class WebServiceRefAnnotation extends Annotation { WebServiceRefAnnotation() { this.getType().hasQualifiedName("javax.xml.ws", "WebServiceRef") } } + +/* + * Annotations in the package `javax.validation.constraints`. + */ + +/** + * A `@javax.validation.constraints.Pattern` annotation. + */ +class PatternAnnotation extends Annotation, RegexExecutionExpr::Range { + PatternAnnotation() { + this.getType() + .hasQualifiedName(["javax.validation.constraints", "jakarta.validation.constraints"], + "Pattern") + } + + override Expr getRegex() { result = this.getValue("regexp") } + + override Expr getString() { + // Annotation on field accessed by direct read - value of field will match regexp + result = this.getAnnotatedElement().(Field).getAnAccess() + or + // Annotation on field accessed by getter - value of field will match regexp + result.(MethodCall).getMethod().(GetterMethod).getField() = this.getAnnotatedElement() + or + // Annotation on parameter - value of parameter will match regexp + result = this.getAnnotatedElement().(Parameter).getAnAccess().(VarRead) + or + // Annotation on method - return value of method will match regexp + result.(Call).getCallee() = this.getAnnotatedElement() + // TODO - we could also consider the case where the annotation is on a type + // but this harder to model and not very common. + } + + override string getName() { result = "@javax.validation.constraints.Pattern annotation" } +} diff --git a/java/ql/lib/semmle/code/java/security/Sanitizers.qll b/java/ql/lib/semmle/code/java/security/Sanitizers.qll index ddac010391e9..b08d2e43c01d 100644 --- a/java/ql/lib/semmle/code/java/security/Sanitizers.qll +++ b/java/ql/lib/semmle/code/java/security/Sanitizers.qll @@ -41,17 +41,11 @@ class SimpleTypeSanitizer extends DataFlow::Node { * make the type recursive. Otherwise use `RegexpCheckBarrier`. */ predicate regexpMatchGuardChecks(Guard guard, Expr e, boolean branch) { - exists(Method method, MethodCall mc | - method = mc.getMethod() and - guard = mc and - branch = true - | - e = mc.(RegexExecutionExpr::Range).getString() - or - // Other `matches` methods. - method.getName() = "matches" and - e = mc.getQualifier() - ) + exists(RegexExecutionExpr::Range ree | not ree instanceof Annotation | + guard = ree and + e = ree.getString() + ) and + branch = true } /** @@ -62,5 +56,12 @@ predicate regexpMatchGuardChecks(Guard guard, Expr e, boolean branch) { class RegexpCheckBarrier extends DataFlow::Node { RegexpCheckBarrier() { this = DataFlow::BarrierGuard::getABarrierNode() + or + // Annotations don't fit into the model of barrier guards because the + // annotation doesn't dominate the sanitized expression, so we instead + // treat them as barriers directly. + exists(RegexExecutionExpr::Range ree | ree instanceof Annotation | + this.asExpr() = ree.getString() + ) } } diff --git a/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected b/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected index f1e7c9e2b86d..1b1553da7ebe 100644 --- a/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected +++ b/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected @@ -252,18 +252,6 @@ | SanitizationTests.java:120:25:120:32 | unsafer9 | SanitizationTests.java:118:33:118:63 | getParameter(...) : String | SanitizationTests.java:120:25:120:32 | unsafer9 | Potential server-side request forgery due to a $@. | SanitizationTests.java:118:33:118:63 | getParameter(...) | user-provided value | | SanitizationTests.java:123:60:123:79 | new URI(...) | SanitizationTests.java:122:94:122:125 | getParameter(...) : String | SanitizationTests.java:123:60:123:79 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:122:94:122:125 | getParameter(...) | user-provided value | | SanitizationTests.java:124:25:124:33 | unsafer10 | SanitizationTests.java:122:94:122:125 | getParameter(...) : String | SanitizationTests.java:124:25:124:33 | unsafer10 | Potential server-side request forgery due to a $@. | SanitizationTests.java:122:94:122:125 | getParameter(...) | user-provided value | -| SanitizationTests.java:154:55:154:72 | new URI(...) | SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:154:55:154:72 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:153:67:153:95 | getParameter(...) | user-provided value | -| SanitizationTests.java:155:25:155:28 | r14a | SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:155:25:155:28 | r14a | Potential server-side request forgery due to a $@. | SanitizationTests.java:153:67:153:95 | getParameter(...) | user-provided value | -| SanitizationTests.java:156:55:156:77 | new URI(...) | SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:156:55:156:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:153:67:153:95 | getParameter(...) | user-provided value | -| SanitizationTests.java:157:25:157:28 | r14b | SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:157:25:157:28 | r14b | Potential server-side request forgery due to a $@. | SanitizationTests.java:153:67:153:95 | getParameter(...) | user-provided value | -| SanitizationTests.java:161:55:161:72 | new URI(...) | SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:161:55:161:72 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:160:75:160:103 | getParameter(...) | user-provided value | -| SanitizationTests.java:162:25:162:28 | r15a | SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:162:25:162:28 | r15a | Potential server-side request forgery due to a $@. | SanitizationTests.java:160:75:160:103 | getParameter(...) | user-provided value | -| SanitizationTests.java:163:55:163:77 | new URI(...) | SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:163:55:163:77 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:160:75:160:103 | getParameter(...) | user-provided value | -| SanitizationTests.java:164:25:164:28 | r15b | SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:164:25:164:28 | r15b | Potential server-side request forgery due to a $@. | SanitizationTests.java:160:75:160:103 | getParameter(...) | user-provided value | -| SanitizationTests.java:167:54:167:102 | new URI(...) | SanitizationTests.java:167:72:167:100 | getParameter(...) : String | SanitizationTests.java:167:54:167:102 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:167:72:167:100 | getParameter(...) | user-provided value | -| SanitizationTests.java:168:25:168:27 | r16 | SanitizationTests.java:167:72:167:100 | getParameter(...) : String | SanitizationTests.java:168:25:168:27 | r16 | Potential server-side request forgery due to a $@. | SanitizationTests.java:167:72:167:100 | getParameter(...) | user-provided value | -| SanitizationTests.java:171:54:171:102 | new URI(...) | SanitizationTests.java:171:72:171:100 | getParameter(...) : String | SanitizationTests.java:171:54:171:102 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:171:72:171:100 | getParameter(...) | user-provided value | -| SanitizationTests.java:172:25:172:27 | r17 | SanitizationTests.java:171:72:171:100 | getParameter(...) : String | SanitizationTests.java:172:25:172:27 | r17 | Potential server-side request forgery due to a $@. | SanitizationTests.java:171:72:171:100 | getParameter(...) | user-provided value | | SanitizationTests.java:175:54:175:113 | new URI(...) | SanitizationTests.java:175:82:175:110 | getParameter(...) : String | SanitizationTests.java:175:54:175:113 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:175:82:175:110 | getParameter(...) | user-provided value | | SanitizationTests.java:176:25:176:27 | r18 | SanitizationTests.java:175:82:175:110 | getParameter(...) : String | SanitizationTests.java:176:25:176:27 | r18 | Potential server-side request forgery due to a $@. | SanitizationTests.java:175:82:175:110 | getParameter(...) | user-provided value | | SpringSSRF.java:32:39:32:59 | ... + ... | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:32:39:32:59 | ... + ... | Potential server-side request forgery due to a $@. | SpringSSRF.java:28:33:28:60 | getParameter(...) | user-provided value | @@ -847,66 +835,6 @@ edges | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | provenance | Config | | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:153:42:153:96 | new AnnotatedFieldObject(...) : AnnotatedFieldObject [uri] : String | SanitizationTests.java:154:63:154:67 | obj14 : AnnotatedFieldObject [uri] : String | provenance | | -| SanitizationTests.java:153:42:153:96 | new AnnotatedFieldObject(...) : AnnotatedFieldObject [uri] : String | SanitizationTests.java:156:63:156:67 | obj14 : AnnotatedFieldObject [uri] : String | provenance | | -| SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:153:42:153:96 | new AnnotatedFieldObject(...) : AnnotatedFieldObject [uri] : String | provenance | Src:MaD:277 | -| SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:207:37:207:46 | uri : String | provenance | Src:MaD:277 | -| SanitizationTests.java:154:32:154:73 | newBuilder(...) : Builder | SanitizationTests.java:154:32:154:81 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:154:32:154:81 | build(...) : HttpRequest | SanitizationTests.java:155:25:155:28 | r14a | provenance | Sink:MaD:4 | -| SanitizationTests.java:154:55:154:72 | new URI(...) : URI | SanitizationTests.java:154:32:154:73 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:154:63:154:67 | obj14 : AnnotatedFieldObject [uri] : String | SanitizationTests.java:154:63:154:71 | obj14.uri : String | provenance | | -| SanitizationTests.java:154:63:154:71 | obj14.uri : String | SanitizationTests.java:154:55:154:72 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:154:63:154:71 | obj14.uri : String | SanitizationTests.java:154:55:154:72 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:154:63:154:71 | obj14.uri : String | SanitizationTests.java:154:55:154:72 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:154:63:154:71 | obj14.uri : String | SanitizationTests.java:154:55:154:72 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:156:32:156:78 | newBuilder(...) : Builder | SanitizationTests.java:156:32:156:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:156:32:156:86 | build(...) : HttpRequest | SanitizationTests.java:157:25:157:28 | r14b | provenance | Sink:MaD:4 | -| SanitizationTests.java:156:55:156:77 | new URI(...) : URI | SanitizationTests.java:156:32:156:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:156:63:156:67 | obj14 : AnnotatedFieldObject [uri] : String | SanitizationTests.java:156:63:156:76 | getUri(...) : String | provenance | | -| SanitizationTests.java:156:63:156:67 | obj14 : AnnotatedFieldObject [uri] : String | SanitizationTests.java:211:23:211:28 | parameter this : AnnotatedFieldObject [uri] : String | provenance | | -| SanitizationTests.java:156:63:156:76 | getUri(...) : String | SanitizationTests.java:156:55:156:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:156:63:156:76 | getUri(...) : String | SanitizationTests.java:156:55:156:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:156:63:156:76 | getUri(...) : String | SanitizationTests.java:156:55:156:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:156:63:156:76 | getUri(...) : String | SanitizationTests.java:156:55:156:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:160:46:160:104 | new AnnotatedParameterObject(...) : AnnotatedParameterObject [uri] : String | SanitizationTests.java:161:63:161:67 | obj15 : AnnotatedParameterObject [uri] : String | provenance | | -| SanitizationTests.java:160:46:160:104 | new AnnotatedParameterObject(...) : AnnotatedParameterObject [uri] : String | SanitizationTests.java:163:63:163:67 | obj15 : AnnotatedParameterObject [uri] : String | provenance | | -| SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:160:46:160:104 | new AnnotatedParameterObject(...) : AnnotatedParameterObject [uri] : String | provenance | Src:MaD:277 | -| SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:219:41:219:115 | uri : String | provenance | Src:MaD:277 | -| SanitizationTests.java:161:32:161:73 | newBuilder(...) : Builder | SanitizationTests.java:161:32:161:81 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:161:32:161:81 | build(...) : HttpRequest | SanitizationTests.java:162:25:162:28 | r15a | provenance | Sink:MaD:4 | -| SanitizationTests.java:161:55:161:72 | new URI(...) : URI | SanitizationTests.java:161:32:161:73 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:161:63:161:67 | obj15 : AnnotatedParameterObject [uri] : String | SanitizationTests.java:161:63:161:71 | obj15.uri : String | provenance | | -| SanitizationTests.java:161:63:161:71 | obj15.uri : String | SanitizationTests.java:161:55:161:72 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:161:63:161:71 | obj15.uri : String | SanitizationTests.java:161:55:161:72 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:161:63:161:71 | obj15.uri : String | SanitizationTests.java:161:55:161:72 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:161:63:161:71 | obj15.uri : String | SanitizationTests.java:161:55:161:72 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:163:32:163:78 | newBuilder(...) : Builder | SanitizationTests.java:163:32:163:86 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:163:32:163:86 | build(...) : HttpRequest | SanitizationTests.java:164:25:164:28 | r15b | provenance | Sink:MaD:4 | -| SanitizationTests.java:163:55:163:77 | new URI(...) : URI | SanitizationTests.java:163:32:163:78 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:163:63:163:67 | obj15 : AnnotatedParameterObject [uri] : String | SanitizationTests.java:163:63:163:76 | getUri(...) : String | provenance | | -| SanitizationTests.java:163:63:163:67 | obj15 : AnnotatedParameterObject [uri] : String | SanitizationTests.java:223:23:223:28 | parameter this : AnnotatedParameterObject [uri] : String | provenance | | -| SanitizationTests.java:163:63:163:76 | getUri(...) : String | SanitizationTests.java:163:55:163:77 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:163:63:163:76 | getUri(...) : String | SanitizationTests.java:163:55:163:77 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:163:63:163:76 | getUri(...) : String | SanitizationTests.java:163:55:163:77 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:163:63:163:76 | getUri(...) : String | SanitizationTests.java:163:55:163:77 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:167:31:167:103 | newBuilder(...) : Builder | SanitizationTests.java:167:31:167:111 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:167:31:167:111 | build(...) : HttpRequest | SanitizationTests.java:168:25:168:27 | r16 | provenance | Sink:MaD:4 | -| SanitizationTests.java:167:54:167:102 | new URI(...) : URI | SanitizationTests.java:167:31:167:103 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:167:62:167:101 | identity1(...) : String | SanitizationTests.java:167:54:167:102 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:167:62:167:101 | identity1(...) : String | SanitizationTests.java:167:54:167:102 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:167:62:167:101 | identity1(...) : String | SanitizationTests.java:167:54:167:102 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:167:62:167:101 | identity1(...) : String | SanitizationTests.java:167:54:167:102 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:167:72:167:100 | getParameter(...) : String | SanitizationTests.java:167:62:167:101 | identity1(...) : String | provenance | Src:MaD:277 | -| SanitizationTests.java:167:72:167:100 | getParameter(...) : String | SanitizationTests.java:188:29:188:103 | uri : String | provenance | Src:MaD:277 | -| SanitizationTests.java:171:31:171:103 | newBuilder(...) : Builder | SanitizationTests.java:171:31:171:111 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:171:31:171:111 | build(...) : HttpRequest | SanitizationTests.java:172:25:172:27 | r17 | provenance | Sink:MaD:4 | -| SanitizationTests.java:171:54:171:102 | new URI(...) : URI | SanitizationTests.java:171:31:171:103 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:171:62:171:101 | identity2(...) : String | SanitizationTests.java:171:54:171:102 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:171:62:171:101 | identity2(...) : String | SanitizationTests.java:171:54:171:102 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:171:62:171:101 | identity2(...) : String | SanitizationTests.java:171:54:171:102 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:171:62:171:101 | identity2(...) : String | SanitizationTests.java:171:54:171:102 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:171:72:171:100 | getParameter(...) : String | SanitizationTests.java:171:62:171:101 | identity2(...) : String | provenance | Src:MaD:277 | -| SanitizationTests.java:171:72:171:100 | getParameter(...) : String | SanitizationTests.java:193:29:193:38 | uri : String | provenance | Src:MaD:277 | | SanitizationTests.java:175:31:175:114 | newBuilder(...) : Builder | SanitizationTests.java:175:31:175:122 | build(...) : HttpRequest | provenance | MaD:283 | | SanitizationTests.java:175:31:175:122 | build(...) : HttpRequest | SanitizationTests.java:176:25:176:27 | r18 | provenance | Sink:MaD:4 | | SanitizationTests.java:175:54:175:113 | new URI(...) : URI | SanitizationTests.java:175:31:175:114 | newBuilder(...) : Builder | provenance | MaD:284 | @@ -917,20 +845,8 @@ edges | SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | SanitizationTests.java:175:62:175:112 | getFromList(...) : String | provenance | MaD:290 | | SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | SanitizationTests.java:197:31:197:112 | list : List [] : String | provenance | | | SanitizationTests.java:175:82:175:110 | getParameter(...) : String | SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | provenance | Src:MaD:277 MaD:289 | -| SanitizationTests.java:188:29:188:103 | uri : String | SanitizationTests.java:189:16:189:18 | uri : String | provenance | | -| SanitizationTests.java:193:29:193:38 | uri : String | SanitizationTests.java:194:16:194:18 | uri : String | provenance | | | SanitizationTests.java:197:31:197:112 | list : List [] : String | SanitizationTests.java:198:16:198:19 | list : List [] : String | provenance | | | SanitizationTests.java:198:16:198:19 | list : List [] : String | SanitizationTests.java:198:16:198:26 | get(...) : String | provenance | MaD:290 | -| SanitizationTests.java:207:37:207:46 | uri : String | SanitizationTests.java:208:24:208:26 | uri : String | provenance | | -| SanitizationTests.java:208:13:208:16 | this [post update] : AnnotatedFieldObject [uri] : String | SanitizationTests.java:207:16:207:35 | parameter this [Return] : AnnotatedFieldObject [uri] : String | provenance | | -| SanitizationTests.java:208:24:208:26 | uri : String | SanitizationTests.java:208:13:208:16 | this [post update] : AnnotatedFieldObject [uri] : String | provenance | | -| SanitizationTests.java:211:23:211:28 | parameter this : AnnotatedFieldObject [uri] : String | SanitizationTests.java:212:20:212:22 | this <.field> : AnnotatedFieldObject [uri] : String | provenance | | -| SanitizationTests.java:212:20:212:22 | this <.field> : AnnotatedFieldObject [uri] : String | SanitizationTests.java:212:20:212:22 | uri : String | provenance | | -| SanitizationTests.java:219:41:219:115 | uri : String | SanitizationTests.java:220:24:220:26 | uri : String | provenance | | -| SanitizationTests.java:220:13:220:16 | this [post update] : AnnotatedParameterObject [uri] : String | SanitizationTests.java:219:16:219:39 | parameter this [Return] : AnnotatedParameterObject [uri] : String | provenance | | -| SanitizationTests.java:220:24:220:26 | uri : String | SanitizationTests.java:220:13:220:16 | this [post update] : AnnotatedParameterObject [uri] : String | provenance | | -| SanitizationTests.java:223:23:223:28 | parameter this : AnnotatedParameterObject [uri] : String | SanitizationTests.java:224:20:224:22 | this <.field> : AnnotatedParameterObject [uri] : String | provenance | | -| SanitizationTests.java:224:20:224:22 | this <.field> : AnnotatedParameterObject [uri] : String | SanitizationTests.java:224:20:224:22 | uri : String | provenance | | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:32:39:32:59 | ... + ... | provenance | Src:MaD:277 Sink:MaD:264 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:33:69:33:82 | fooResourceUrl | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:34:73:34:86 | fooResourceUrl | provenance | Src:MaD:277 | @@ -1915,52 +1831,6 @@ nodes | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | semmle.label | new URI(...) : URI | | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | semmle.label | unsafeUri10 : String | | SanitizationTests.java:124:25:124:33 | unsafer10 | semmle.label | unsafer10 | -| SanitizationTests.java:153:42:153:96 | new AnnotatedFieldObject(...) : AnnotatedFieldObject [uri] : String | semmle.label | new AnnotatedFieldObject(...) : AnnotatedFieldObject [uri] : String | -| SanitizationTests.java:153:67:153:95 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:154:32:154:73 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:154:32:154:81 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:154:55:154:72 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:154:55:154:72 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:154:63:154:67 | obj14 : AnnotatedFieldObject [uri] : String | semmle.label | obj14 : AnnotatedFieldObject [uri] : String | -| SanitizationTests.java:154:63:154:71 | obj14.uri : String | semmle.label | obj14.uri : String | -| SanitizationTests.java:155:25:155:28 | r14a | semmle.label | r14a | -| SanitizationTests.java:156:32:156:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:156:32:156:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:156:55:156:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:156:55:156:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:156:63:156:67 | obj14 : AnnotatedFieldObject [uri] : String | semmle.label | obj14 : AnnotatedFieldObject [uri] : String | -| SanitizationTests.java:156:63:156:76 | getUri(...) : String | semmle.label | getUri(...) : String | -| SanitizationTests.java:157:25:157:28 | r14b | semmle.label | r14b | -| SanitizationTests.java:160:46:160:104 | new AnnotatedParameterObject(...) : AnnotatedParameterObject [uri] : String | semmle.label | new AnnotatedParameterObject(...) : AnnotatedParameterObject [uri] : String | -| SanitizationTests.java:160:75:160:103 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:161:32:161:73 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:161:32:161:81 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:161:55:161:72 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:161:55:161:72 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:161:63:161:67 | obj15 : AnnotatedParameterObject [uri] : String | semmle.label | obj15 : AnnotatedParameterObject [uri] : String | -| SanitizationTests.java:161:63:161:71 | obj15.uri : String | semmle.label | obj15.uri : String | -| SanitizationTests.java:162:25:162:28 | r15a | semmle.label | r15a | -| SanitizationTests.java:163:32:163:78 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:163:32:163:86 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:163:55:163:77 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:163:55:163:77 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:163:63:163:67 | obj15 : AnnotatedParameterObject [uri] : String | semmle.label | obj15 : AnnotatedParameterObject [uri] : String | -| SanitizationTests.java:163:63:163:76 | getUri(...) : String | semmle.label | getUri(...) : String | -| SanitizationTests.java:164:25:164:28 | r15b | semmle.label | r15b | -| SanitizationTests.java:167:31:167:103 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:167:31:167:111 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:167:54:167:102 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:167:54:167:102 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:167:62:167:101 | identity1(...) : String | semmle.label | identity1(...) : String | -| SanitizationTests.java:167:72:167:100 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:168:25:168:27 | r16 | semmle.label | r16 | -| SanitizationTests.java:171:31:171:103 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:171:31:171:111 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:171:54:171:102 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:171:54:171:102 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:171:62:171:101 | identity2(...) : String | semmle.label | identity2(...) : String | -| SanitizationTests.java:171:72:171:100 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:172:25:172:27 | r17 | semmle.label | r17 | | SanitizationTests.java:175:31:175:114 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | | SanitizationTests.java:175:31:175:122 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | | SanitizationTests.java:175:54:175:113 | new URI(...) | semmle.label | new URI(...) | @@ -1969,27 +1839,9 @@ nodes | SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | | SanitizationTests.java:175:82:175:110 | getParameter(...) : String | semmle.label | getParameter(...) : String | | SanitizationTests.java:176:25:176:27 | r18 | semmle.label | r18 | -| SanitizationTests.java:188:29:188:103 | uri : String | semmle.label | uri : String | -| SanitizationTests.java:189:16:189:18 | uri : String | semmle.label | uri : String | -| SanitizationTests.java:193:29:193:38 | uri : String | semmle.label | uri : String | -| SanitizationTests.java:194:16:194:18 | uri : String | semmle.label | uri : String | | SanitizationTests.java:197:31:197:112 | list : List [] : String | semmle.label | list : List [] : String | | SanitizationTests.java:198:16:198:19 | list : List [] : String | semmle.label | list : List [] : String | | SanitizationTests.java:198:16:198:26 | get(...) : String | semmle.label | get(...) : String | -| SanitizationTests.java:207:16:207:35 | parameter this [Return] : AnnotatedFieldObject [uri] : String | semmle.label | parameter this [Return] : AnnotatedFieldObject [uri] : String | -| SanitizationTests.java:207:37:207:46 | uri : String | semmle.label | uri : String | -| SanitizationTests.java:208:13:208:16 | this [post update] : AnnotatedFieldObject [uri] : String | semmle.label | this [post update] : AnnotatedFieldObject [uri] : String | -| SanitizationTests.java:208:24:208:26 | uri : String | semmle.label | uri : String | -| SanitizationTests.java:211:23:211:28 | parameter this : AnnotatedFieldObject [uri] : String | semmle.label | parameter this : AnnotatedFieldObject [uri] : String | -| SanitizationTests.java:212:20:212:22 | this <.field> : AnnotatedFieldObject [uri] : String | semmle.label | this <.field> : AnnotatedFieldObject [uri] : String | -| SanitizationTests.java:212:20:212:22 | uri : String | semmle.label | uri : String | -| SanitizationTests.java:219:16:219:39 | parameter this [Return] : AnnotatedParameterObject [uri] : String | semmle.label | parameter this [Return] : AnnotatedParameterObject [uri] : String | -| SanitizationTests.java:219:41:219:115 | uri : String | semmle.label | uri : String | -| SanitizationTests.java:220:13:220:16 | this [post update] : AnnotatedParameterObject [uri] : String | semmle.label | this [post update] : AnnotatedParameterObject [uri] : String | -| SanitizationTests.java:220:24:220:26 | uri : String | semmle.label | uri : String | -| SanitizationTests.java:223:23:223:28 | parameter this : AnnotatedParameterObject [uri] : String | semmle.label | parameter this : AnnotatedParameterObject [uri] : String | -| SanitizationTests.java:224:20:224:22 | this <.field> : AnnotatedParameterObject [uri] : String | semmle.label | this <.field> : AnnotatedParameterObject [uri] : String | -| SanitizationTests.java:224:20:224:22 | uri : String | semmle.label | uri : String | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | semmle.label | getParameter(...) : String | | SpringSSRF.java:32:39:32:59 | ... + ... | semmle.label | ... + ... | | SpringSSRF.java:33:69:33:82 | fooResourceUrl | semmle.label | fooResourceUrl | @@ -2210,29 +2062,4 @@ nodes | mad/Test.java:112:15:112:31 | (...)... | semmle.label | (...)... | | mad/Test.java:112:24:112:31 | source(...) : String | semmle.label | source(...) : String | subpaths -| SanitizationTests.java:153:67:153:95 | getParameter(...) : String | SanitizationTests.java:207:37:207:46 | uri : String | SanitizationTests.java:207:16:207:35 | parameter this [Return] : AnnotatedFieldObject [uri] : String | SanitizationTests.java:153:42:153:96 | new AnnotatedFieldObject(...) : AnnotatedFieldObject [uri] : String | -| SanitizationTests.java:156:63:156:67 | obj14 : AnnotatedFieldObject [uri] : String | SanitizationTests.java:211:23:211:28 | parameter this : AnnotatedFieldObject [uri] : String | SanitizationTests.java:212:20:212:22 | uri : String | SanitizationTests.java:156:63:156:76 | getUri(...) : String | -| SanitizationTests.java:160:75:160:103 | getParameter(...) : String | SanitizationTests.java:219:41:219:115 | uri : String | SanitizationTests.java:219:16:219:39 | parameter this [Return] : AnnotatedParameterObject [uri] : String | SanitizationTests.java:160:46:160:104 | new AnnotatedParameterObject(...) : AnnotatedParameterObject [uri] : String | -| SanitizationTests.java:163:63:163:67 | obj15 : AnnotatedParameterObject [uri] : String | SanitizationTests.java:223:23:223:28 | parameter this : AnnotatedParameterObject [uri] : String | SanitizationTests.java:224:20:224:22 | uri : String | SanitizationTests.java:163:63:163:76 | getUri(...) : String | -| SanitizationTests.java:167:72:167:100 | getParameter(...) : String | SanitizationTests.java:188:29:188:103 | uri : String | SanitizationTests.java:189:16:189:18 | uri : String | SanitizationTests.java:167:62:167:101 | identity1(...) : String | -| SanitizationTests.java:171:72:171:100 | getParameter(...) : String | SanitizationTests.java:193:29:193:38 | uri : String | SanitizationTests.java:194:16:194:18 | uri : String | SanitizationTests.java:171:62:171:101 | identity2(...) : String | | SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | SanitizationTests.java:197:31:197:112 | list : List [] : String | SanitizationTests.java:198:16:198:26 | get(...) : String | SanitizationTests.java:175:62:175:112 | getFromList(...) : String | -testFailures -| SanitizationTests.java:153:67:153:95 | getParameter(...) : String | Unexpected result: Source | -| SanitizationTests.java:154:55:154:72 | new URI(...) | Unexpected result: Alert | -| SanitizationTests.java:155:25:155:28 | r14a | Unexpected result: Alert | -| SanitizationTests.java:156:55:156:77 | new URI(...) | Unexpected result: Alert | -| SanitizationTests.java:157:25:157:28 | r14b | Unexpected result: Alert | -| SanitizationTests.java:160:75:160:103 | getParameter(...) : String | Unexpected result: Source | -| SanitizationTests.java:161:55:161:72 | new URI(...) | Unexpected result: Alert | -| SanitizationTests.java:162:25:162:28 | r15a | Unexpected result: Alert | -| SanitizationTests.java:163:55:163:77 | new URI(...) | Unexpected result: Alert | -| SanitizationTests.java:164:25:164:28 | r15b | Unexpected result: Alert | -| SanitizationTests.java:167:54:167:102 | new URI(...) | Unexpected result: Alert | -| SanitizationTests.java:167:72:167:100 | getParameter(...) : String | Unexpected result: Alert | -| SanitizationTests.java:167:72:167:100 | getParameter(...) : String | Unexpected result: Source | -| SanitizationTests.java:168:25:168:27 | r16 | Unexpected result: Alert | -| SanitizationTests.java:171:54:171:102 | new URI(...) | Unexpected result: Alert | -| SanitizationTests.java:171:72:171:100 | getParameter(...) : String | Unexpected result: Alert | -| SanitizationTests.java:171:72:171:100 | getParameter(...) : String | Unexpected result: Source | -| SanitizationTests.java:172:25:172:27 | r17 | Unexpected result: Alert | From c539c2f4fd1c85ff86053149315e92e7ffafc58d Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 12 Feb 2026 16:24:30 +0000 Subject: [PATCH 408/433] Add change note --- .../2026-02-12-pattern-annotation-ssrf-sanitizer.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 java/ql/lib/change-notes/2026-02-12-pattern-annotation-ssrf-sanitizer.md diff --git a/java/ql/lib/change-notes/2026-02-12-pattern-annotation-ssrf-sanitizer.md b/java/ql/lib/change-notes/2026-02-12-pattern-annotation-ssrf-sanitizer.md new file mode 100644 index 000000000000..20d3d08b3009 --- /dev/null +++ b/java/ql/lib/change-notes/2026-02-12-pattern-annotation-ssrf-sanitizer.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* More ways of checking that a string matches a regular expression are now considered as sanitizers for various queries, including `java/ssrf` and `java/path-injection`. In particular, being annotated with `@javax.validation.constraints.Pattern` is now recognised as a sanitizer for those queries. From 5bdf550317f72b47e3b754c54297466ce568dda0 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 12 Feb 2026 16:32:06 +0000 Subject: [PATCH 409/433] Fix QLDocs --- java/ql/lib/semmle/code/java/Concepts.qll | 2 +- java/ql/lib/semmle/code/java/frameworks/Regex.qll | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/java/ql/lib/semmle/code/java/Concepts.qll b/java/ql/lib/semmle/code/java/Concepts.qll index eceb77d62acc..327c9a2c4593 100644 --- a/java/ql/lib/semmle/code/java/Concepts.qll +++ b/java/ql/lib/semmle/code/java/Concepts.qll @@ -77,7 +77,7 @@ module RegexExecutionExpr { /** Gets the expression for the regex being executed by this node. */ abstract Expr getRegex(); - /** Gets a expression for the string to be searched or matched against. */ + /** Gets an expression for the string to be searched or matched against. */ abstract Expr getString(); /** diff --git a/java/ql/lib/semmle/code/java/frameworks/Regex.qll b/java/ql/lib/semmle/code/java/frameworks/Regex.qll index 28b7dd6a31a6..2578b4d24dbf 100644 --- a/java/ql/lib/semmle/code/java/frameworks/Regex.qll +++ b/java/ql/lib/semmle/code/java/frameworks/Regex.qll @@ -71,17 +71,17 @@ class PatternLiteralField extends Field { } } -/** A call to the `compile` method of `java.util.regex.Pattern` */ +/** A call to the `compile` method of `java.util.regex.Pattern`. */ class PatternCompileCall extends MethodCall { PatternCompileCall() { this.getMethod() instanceof PatternCompileMethod } } -/** A call to the `matcher` method of `java.util.regex.Pattern` */ +/** A call to the `matcher` method of `java.util.regex.Pattern`. */ class PatternMatcherCall extends MethodCall { PatternMatcherCall() { this.getMethod() instanceof PatternMatcherMethod } } -/** A call to the `matches` method of `java.util.regex.Pattern` */ +/** A call to the `matches` method of `java.util.regex.Pattern`. */ class PatternMatchesCall extends MethodCall, RegexExecutionExpr::Range { PatternMatchesCall() { this.getMethod() instanceof PatternMatchesMethod } @@ -92,7 +92,7 @@ class PatternMatchesCall extends MethodCall, RegexExecutionExpr::Range { override string getName() { result = "Pattern.matches" } } -/** A call to the `matches` method of `java.util.regex.Matcher` */ +/** A call to the `matches` method of `java.util.regex.Matcher`. */ class MatcherMatchesCall extends MethodCall, RegexExecutionExpr::Range { MatcherMatchesCall() { this.getMethod() instanceof MatcherMatchesMethod } From 106254b220e9f3d69aab5a1c2e6cd6f8531e13d7 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 13 Feb 2026 22:40:36 +0000 Subject: [PATCH 410/433] Improve QLDocs --- java/ql/lib/semmle/code/java/frameworks/Regex.qll | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/java/ql/lib/semmle/code/java/frameworks/Regex.qll b/java/ql/lib/semmle/code/java/frameworks/Regex.qll index 2578b4d24dbf..8e240b094277 100644 --- a/java/ql/lib/semmle/code/java/frameworks/Regex.qll +++ b/java/ql/lib/semmle/code/java/frameworks/Regex.qll @@ -97,7 +97,7 @@ class MatcherMatchesCall extends MethodCall, RegexExecutionExpr::Range { MatcherMatchesCall() { this.getMethod() instanceof MatcherMatchesMethod } /** - * Get the call to `java.util.regex.Pattern.matcher` which returned the + * Gets the call to `java.util.regex.Pattern.matcher` that returned the * qualifier of this call. This is needed to determine the string being * matched. */ @@ -106,7 +106,7 @@ class MatcherMatchesCall extends MethodCall, RegexExecutionExpr::Range { } /** - * Get the call to `java.util.regex.Pattern.compile` which returned the + * Gets the call to `java.util.regex.Pattern.compile` that returned the * `Pattern` used by this matcher. This is needed to determine the regular * expression being used. */ From 953ff9f0d07227725deecf08596febcc1e28a9ce Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 13 Feb 2026 22:41:20 +0000 Subject: [PATCH 411/433] PatternAnnotation.getString() should only be field reads --- java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll b/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll index 922179384729..e1dacb6ed088 100644 --- a/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll +++ b/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll @@ -182,7 +182,7 @@ class PatternAnnotation extends Annotation, RegexExecutionExpr::Range { override Expr getString() { // Annotation on field accessed by direct read - value of field will match regexp - result = this.getAnnotatedElement().(Field).getAnAccess() + result.(FieldRead).getField() = this.getAnnotatedElement() or // Annotation on field accessed by getter - value of field will match regexp result.(MethodCall).getMethod().(GetterMethod).getField() = this.getAnnotatedElement() From 1fefa989d76202654ba357cfdec1a4eeace945fa Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 13 Feb 2026 22:45:23 +0000 Subject: [PATCH 412/433] Rename `RegexMatch` and only include expressions --- java/ql/lib/semmle/code/java/Concepts.qll | 60 ++++--------------- java/ql/lib/semmle/code/java/JDK.qll | 2 +- .../code/java/frameworks/JavaxAnnotations.qll | 2 +- .../lib/semmle/code/java/frameworks/Regex.qll | 4 +- .../code/java/security/PathSanitizer.qll | 4 +- .../semmle/code/java/security/Sanitizers.qll | 10 ++-- 6 files changed, 21 insertions(+), 61 deletions(-) diff --git a/java/ql/lib/semmle/code/java/Concepts.qll b/java/ql/lib/semmle/code/java/Concepts.qll index 327c9a2c4593..6ba7c01e3e35 100644 --- a/java/ql/lib/semmle/code/java/Concepts.qll +++ b/java/ql/lib/semmle/code/java/Concepts.qll @@ -7,71 +7,35 @@ overlay[local?] module; import java -private import semmle.code.java.dataflow.DataFlow private import semmle.code.java.frameworks.JavaxAnnotations /** - * A data-flow node that executes a regular expression. + * An expression that represents a regular expression match. * * Extend this class to refine existing API models. If you want to model new APIs, - * extend `RegexExecution::Range` instead. + * extend `RegexMatch::Range` instead. */ -class RegexExecution extends DataFlow::Node instanceof RegexExecution::Range { - /** Gets the data flow node for the regex being executed by this node. */ - DataFlow::Node getRegex() { result = super.getRegex() } +class RegexMatch extends Expr instanceof RegexMatch::Range { + /** Gets the expression for the regex being executed by this node. */ + Expr getRegex() { result = super.getRegex() } - /** Gets a data flow node for the string to be searched or matched against. */ - DataFlow::Node getString() { result = super.getString() } + /** Gets an expression for the string to be searched or matched against. */ + Expr getString() { result = super.getString() } /** - * Gets the name of this regex execution, typically the name of an executing method. + * Gets the name of this regex match, typically the name of an executing method. * This is used for nice alert messages and should include the module if possible. */ string getName() { result = super.getName() } } -/** Provides classes for modeling new regular-expression execution APIs. */ -module RegexExecution { - /** - * A data flow node that executes a regular expression. - * - * Extend this class to model new APIs. If you want to refine existing API models, - * extend `RegexExecution` instead. - */ - abstract class Range extends DataFlow::Node { - /** Gets the data flow node for the regex being executed by this node. */ - abstract DataFlow::Node getRegex(); - - /** Gets a data flow node for the string to be searched or matched against. */ - abstract DataFlow::Node getString(); - - /** - * Gets the name of this regex execution, typically the name of an executing method. - * This is used for nice alert messages and should include the module if possible. - */ - abstract string getName(); - } - - private class RangeFromExpr extends Range { - private RegexExecutionExpr::Range ree; - - RangeFromExpr() { this.asExpr() = ree } - - override DataFlow::Node getRegex() { result.asExpr() = ree.getRegex() } - - override DataFlow::Node getString() { result.asExpr() = ree.getString() } - - override string getName() { result = ree.getName() } - } -} - -/** Provides classes for modeling new regular-expression execution APIs. */ -module RegexExecutionExpr { +/** Provides classes for modeling regular-expression execution APIs. */ +module RegexMatch { /** * An expression that executes a regular expression. * * Extend this class to model new APIs. If you want to refine existing API models, - * extend `RegexExecution` instead. + * extend `RegexMatch` instead. */ abstract class Range extends Expr { /** Gets the expression for the regex being executed by this node. */ @@ -81,7 +45,7 @@ module RegexExecutionExpr { abstract Expr getString(); /** - * Gets the name of this regex execution, typically the name of an executing method. + * Gets the name of this regex match, typically the name of an executing method. * This is used for nice alert messages and should include the module if possible. */ abstract string getName(); diff --git a/java/ql/lib/semmle/code/java/JDK.qll b/java/ql/lib/semmle/code/java/JDK.qll index fcb1980a33b6..93562c7c3d80 100644 --- a/java/ql/lib/semmle/code/java/JDK.qll +++ b/java/ql/lib/semmle/code/java/JDK.qll @@ -48,7 +48,7 @@ class StringContainsMethod extends Method { } /** A call to the `java.lang.String.matches` method. */ -class StringMatchesCall extends MethodCall, RegexExecutionExpr::Range { +class StringMatchesCall extends MethodCall, RegexMatch::Range { StringMatchesCall() { exists(Method m | m = this.getMethod() | m.getDeclaringType() instanceof TypeString and diff --git a/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll b/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll index e1dacb6ed088..b71776ba0150 100644 --- a/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll +++ b/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll @@ -171,7 +171,7 @@ class WebServiceRefAnnotation extends Annotation { /** * A `@javax.validation.constraints.Pattern` annotation. */ -class PatternAnnotation extends Annotation, RegexExecutionExpr::Range { +class PatternAnnotation extends Annotation, RegexMatch::Range { PatternAnnotation() { this.getType() .hasQualifiedName(["javax.validation.constraints", "jakarta.validation.constraints"], diff --git a/java/ql/lib/semmle/code/java/frameworks/Regex.qll b/java/ql/lib/semmle/code/java/frameworks/Regex.qll index 8e240b094277..2d689da1fcfe 100644 --- a/java/ql/lib/semmle/code/java/frameworks/Regex.qll +++ b/java/ql/lib/semmle/code/java/frameworks/Regex.qll @@ -82,7 +82,7 @@ class PatternMatcherCall extends MethodCall { } /** A call to the `matches` method of `java.util.regex.Pattern`. */ -class PatternMatchesCall extends MethodCall, RegexExecutionExpr::Range { +class PatternMatchesCall extends MethodCall, RegexMatch::Range { PatternMatchesCall() { this.getMethod() instanceof PatternMatchesMethod } override Expr getRegex() { result = this.getArgument(0) } @@ -93,7 +93,7 @@ class PatternMatchesCall extends MethodCall, RegexExecutionExpr::Range { } /** A call to the `matches` method of `java.util.regex.Matcher`. */ -class MatcherMatchesCall extends MethodCall, RegexExecutionExpr::Range { +class MatcherMatchesCall extends MethodCall, RegexMatch::Range { MatcherMatchesCall() { this.getMethod() instanceof MatcherMatchesMethod } /** diff --git a/java/ql/lib/semmle/code/java/security/PathSanitizer.qll b/java/ql/lib/semmle/code/java/security/PathSanitizer.qll index ffd506550016..788cd5429397 100644 --- a/java/ql/lib/semmle/code/java/security/PathSanitizer.qll +++ b/java/ql/lib/semmle/code/java/security/PathSanitizer.qll @@ -431,9 +431,7 @@ private class ReplaceDirectoryCharactersSanitizer extends StringReplaceOrReplace * Holds if `matchesCall` confirms that `checkedExpr` does not contain any directory characters * on the given `branch`. */ -private predicate isMatchesCall( - RegexExecutionExpr::Range regexMatch, Expr checkedExpr, boolean branch -) { +private predicate isMatchesCall(RegexMatch regexMatch, Expr checkedExpr, boolean branch) { exists(CompileTimeConstantExpr target, string targetValue | target = regexMatch.getRegex() and target.getStringValue() = targetValue and diff --git a/java/ql/lib/semmle/code/java/security/Sanitizers.qll b/java/ql/lib/semmle/code/java/security/Sanitizers.qll index b08d2e43c01d..9eb45f3a5985 100644 --- a/java/ql/lib/semmle/code/java/security/Sanitizers.qll +++ b/java/ql/lib/semmle/code/java/security/Sanitizers.qll @@ -41,9 +41,9 @@ class SimpleTypeSanitizer extends DataFlow::Node { * make the type recursive. Otherwise use `RegexpCheckBarrier`. */ predicate regexpMatchGuardChecks(Guard guard, Expr e, boolean branch) { - exists(RegexExecutionExpr::Range ree | not ree instanceof Annotation | - guard = ree and - e = ree.getString() + exists(RegexMatch rm | not rm instanceof Annotation | + guard = rm and + e = rm.getString() ) and branch = true } @@ -60,8 +60,6 @@ class RegexpCheckBarrier extends DataFlow::Node { // Annotations don't fit into the model of barrier guards because the // annotation doesn't dominate the sanitized expression, so we instead // treat them as barriers directly. - exists(RegexExecutionExpr::Range ree | ree instanceof Annotation | - this.asExpr() = ree.getString() - ) + exists(RegexMatch rm | rm instanceof Annotation | this.asExpr() = rm.getString()) } } From 3c161f9c93d01b8e6d9f61ef2d34310f4b2a4117 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 13 Feb 2026 22:47:44 +0000 Subject: [PATCH 413/433] Make contract of RegexMatch clear --- java/ql/lib/semmle/code/java/Concepts.qll | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/java/ql/lib/semmle/code/java/Concepts.qll b/java/ql/lib/semmle/code/java/Concepts.qll index 6ba7c01e3e35..d7d2be4d75d0 100644 --- a/java/ql/lib/semmle/code/java/Concepts.qll +++ b/java/ql/lib/semmle/code/java/Concepts.qll @@ -14,6 +14,9 @@ private import semmle.code.java.frameworks.JavaxAnnotations * * Extend this class to refine existing API models. If you want to model new APIs, * extend `RegexMatch::Range` instead. + * + * These are either method calls, which return `true` when there is a match, or + * annotations, which are considered to match if they are present. */ class RegexMatch extends Expr instanceof RegexMatch::Range { /** Gets the expression for the regex being executed by this node. */ @@ -36,6 +39,9 @@ module RegexMatch { * * Extend this class to model new APIs. If you want to refine existing API models, * extend `RegexMatch` instead. + * + * These are either method calls, which return `true` when there is a match, or + * annotations, which are considered to match if they are present. */ abstract class Range extends Expr { /** Gets the expression for the regex being executed by this node. */ From c7099584b44f0c4d7acb95ee1719df3aad054350 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 13 Feb 2026 22:51:53 +0000 Subject: [PATCH 414/433] Put imports implementing abstract classes in private module --- java/ql/lib/semmle/code/java/Concepts.qll | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/java/ql/lib/semmle/code/java/Concepts.qll b/java/ql/lib/semmle/code/java/Concepts.qll index d7d2be4d75d0..4fcb89918b6d 100644 --- a/java/ql/lib/semmle/code/java/Concepts.qll +++ b/java/ql/lib/semmle/code/java/Concepts.qll @@ -7,7 +7,15 @@ overlay[local?] module; import java -private import semmle.code.java.frameworks.JavaxAnnotations + +/** + * A module importing the frameworks that implement `RegexMatch`es, + * ensuring that they are visible to the concepts library. + */ +private module Frameworks { + private import semmle.code.java.JDK + private import semmle.code.java.frameworks.JavaxAnnotations +} /** * An expression that represents a regular expression match. From 2e0f2443765753b1e3a6cc936173d62c0f7e4bb5 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 13 Feb 2026 22:55:01 +0000 Subject: [PATCH 415/433] Improve QLDoc on `RegexMatch.getName()` --- java/ql/lib/semmle/code/java/Concepts.qll | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/java/ql/lib/semmle/code/java/Concepts.qll b/java/ql/lib/semmle/code/java/Concepts.qll index 4fcb89918b6d..8f1d5e4fa69c 100644 --- a/java/ql/lib/semmle/code/java/Concepts.qll +++ b/java/ql/lib/semmle/code/java/Concepts.qll @@ -34,8 +34,9 @@ class RegexMatch extends Expr instanceof RegexMatch::Range { Expr getString() { result = super.getString() } /** - * Gets the name of this regex match, typically the name of an executing method. - * This is used for nice alert messages and should include the module if possible. + * Gets the name of this regex match, typically the name of an executing + * method. This is used for nice alert messages and should include the + * type-qualified name if possible. */ string getName() { result = super.getName() } } @@ -59,8 +60,9 @@ module RegexMatch { abstract Expr getString(); /** - * Gets the name of this regex match, typically the name of an executing method. - * This is used for nice alert messages and should include the module if possible. + * Gets the name of this regex match, typically the name of an executing + * method. This is used for nice alert messages and should include the + * type-qualified name if possible. */ abstract string getName(); } From ca4c988e97bcb2fc3fbdee7aa2f0d7bacfb1da51 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 13 Feb 2026 22:58:09 +0000 Subject: [PATCH 416/433] Remove redundant variable --- .../CWE/CWE-625/PermissiveDotRegexQuery.qll | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/java/ql/src/experimental/Security/CWE/CWE-625/PermissiveDotRegexQuery.qll b/java/ql/src/experimental/Security/CWE/CWE-625/PermissiveDotRegexQuery.qll index 027e4f931cbd..2c372d1778c6 100644 --- a/java/ql/src/experimental/Security/CWE/CWE-625/PermissiveDotRegexQuery.qll +++ b/java/ql/src/experimental/Security/CWE/CWE-625/PermissiveDotRegexQuery.qll @@ -77,17 +77,12 @@ private class SpringUriInputParameterSource extends DataFlow::Node { */ private class CompileRegexSink extends DataFlow::ExprNode { CompileRegexSink() { - exists(MethodCall ma, Method m | m = ma.getMethod() | - ( - ma.getArgument(0) = this.asExpr() and - ( - ma instanceof StringMatchesCall // input.matches(regexPattern) - or - ma instanceof PatternCompileCall // p = Pattern.compile(regexPattern) - or - ma instanceof PatternMatchesCall // p = Pattern.matches(regexPattern, input) - ) - ) + exists(MethodCall ma | ma.getArgument(0) = this.asExpr() | + ma instanceof StringMatchesCall // input.matches(regexPattern) + or + ma instanceof PatternCompileCall // p = Pattern.compile(regexPattern) + or + ma instanceof PatternMatchesCall // p = Pattern.matches(regexPattern, input) ) } } From 90befa0c00b95db802fea881a4c7454226e2fc52 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 14 Feb 2026 00:24:44 +0000 Subject: [PATCH 417/433] Add failing test for Matcher.matches() edge case --- .../security/CWE-918/RequestForgery.expected | 153 ++++++++++-------- .../security/CWE-918/SanitizationTests.java | 10 +- 2 files changed, 95 insertions(+), 68 deletions(-) diff --git a/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected b/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected index 1b1553da7ebe..452c0337f024 100644 --- a/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected +++ b/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected @@ -252,8 +252,10 @@ | SanitizationTests.java:120:25:120:32 | unsafer9 | SanitizationTests.java:118:33:118:63 | getParameter(...) : String | SanitizationTests.java:120:25:120:32 | unsafer9 | Potential server-side request forgery due to a $@. | SanitizationTests.java:118:33:118:63 | getParameter(...) | user-provided value | | SanitizationTests.java:123:60:123:79 | new URI(...) | SanitizationTests.java:122:94:122:125 | getParameter(...) : String | SanitizationTests.java:123:60:123:79 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:122:94:122:125 | getParameter(...) | user-provided value | | SanitizationTests.java:124:25:124:33 | unsafer10 | SanitizationTests.java:122:94:122:125 | getParameter(...) : String | SanitizationTests.java:124:25:124:33 | unsafer10 | Potential server-side request forgery due to a $@. | SanitizationTests.java:122:94:122:125 | getParameter(...) | user-provided value | -| SanitizationTests.java:175:54:175:113 | new URI(...) | SanitizationTests.java:175:82:175:110 | getParameter(...) : String | SanitizationTests.java:175:54:175:113 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:175:82:175:110 | getParameter(...) | user-provided value | -| SanitizationTests.java:176:25:176:27 | r18 | SanitizationTests.java:175:82:175:110 | getParameter(...) : String | SanitizationTests.java:176:25:176:27 | r18 | Potential server-side request forgery due to a $@. | SanitizationTests.java:175:82:175:110 | getParameter(...) | user-provided value | +| SanitizationTests.java:150:59:150:83 | new URI(...) | SanitizationTests.java:145:30:145:58 | getParameter(...) : String | SanitizationTests.java:150:59:150:83 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:145:30:145:58 | getParameter(...) | user-provided value | +| SanitizationTests.java:151:29:151:32 | r13b | SanitizationTests.java:145:30:145:58 | getParameter(...) : String | SanitizationTests.java:151:29:151:32 | r13b | Potential server-side request forgery due to a $@. | SanitizationTests.java:145:30:145:58 | getParameter(...) | user-provided value | +| SanitizationTests.java:177:54:177:113 | new URI(...) | SanitizationTests.java:177:82:177:110 | getParameter(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:177:82:177:110 | getParameter(...) | user-provided value | +| SanitizationTests.java:178:25:178:27 | r18 | SanitizationTests.java:177:82:177:110 | getParameter(...) : String | SanitizationTests.java:178:25:178:27 | r18 | Potential server-side request forgery due to a $@. | SanitizationTests.java:177:82:177:110 | getParameter(...) | user-provided value | | SpringSSRF.java:32:39:32:59 | ... + ... | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:32:39:32:59 | ... + ... | Potential server-side request forgery due to a $@. | SpringSSRF.java:28:33:28:60 | getParameter(...) | user-provided value | | SpringSSRF.java:33:69:33:82 | fooResourceUrl | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:33:69:33:82 | fooResourceUrl | Potential server-side request forgery due to a $@. | SpringSSRF.java:28:33:28:60 | getParameter(...) | user-provided value | | SpringSSRF.java:34:73:34:86 | fooResourceUrl | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:34:73:34:86 | fooResourceUrl | Potential server-side request forgery due to a $@. | SpringSSRF.java:28:33:28:60 | getParameter(...) | user-provided value | @@ -405,11 +407,11 @@ edges | ApacheHttpSSRF.java:28:31:28:34 | sink : String | ApacheHttpSSRF.java:28:23:28:35 | new URI(...) : URI | provenance | Config | | ApacheHttpSSRF.java:28:31:28:34 | sink : String | ApacheHttpSSRF.java:28:23:28:35 | new URI(...) : URI | provenance | MaD:285 | | ApacheHttpSSRF.java:42:62:42:64 | uri : URI | ApacheHttpSSRF.java:42:62:42:75 | toString(...) : String | provenance | MaD:286 | -| ApacheHttpSSRF.java:42:62:42:75 | toString(...) : String | ApacheHttpSSRF.java:42:34:42:82 | new BasicRequestLine(...) | provenance | MaD:295 Sink:MaD:231 | +| ApacheHttpSSRF.java:42:62:42:75 | toString(...) : String | ApacheHttpSSRF.java:42:34:42:82 | new BasicRequestLine(...) | provenance | MaD:297 Sink:MaD:231 | | ApacheHttpSSRF.java:43:41:43:43 | uri : URI | ApacheHttpSSRF.java:43:41:43:54 | toString(...) | provenance | MaD:286 Sink:MaD:232 | | ApacheHttpSSRF.java:44:41:44:43 | uri : URI | ApacheHttpSSRF.java:44:41:44:54 | toString(...) | provenance | MaD:286 Sink:MaD:233 | | ApacheHttpSSRF.java:46:77:46:79 | uri : URI | ApacheHttpSSRF.java:46:77:46:90 | toString(...) : String | provenance | MaD:286 | -| ApacheHttpSSRF.java:46:77:46:90 | toString(...) : String | ApacheHttpSSRF.java:46:49:46:97 | new BasicRequestLine(...) | provenance | MaD:295 Sink:MaD:228 | +| ApacheHttpSSRF.java:46:77:46:90 | toString(...) : String | ApacheHttpSSRF.java:46:49:46:97 | new BasicRequestLine(...) | provenance | MaD:297 Sink:MaD:228 | | ApacheHttpSSRF.java:47:56:47:58 | uri : URI | ApacheHttpSSRF.java:47:56:47:69 | toString(...) | provenance | MaD:286 Sink:MaD:229 | | ApacheHttpSSRF.java:48:56:48:58 | uri : URI | ApacheHttpSSRF.java:48:56:48:69 | toString(...) | provenance | MaD:286 Sink:MaD:230 | | ApacheHttpSSRFVersion5.java:41:30:41:56 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:42:31:42:37 | uriSink : String | provenance | Src:MaD:277 | @@ -503,7 +505,7 @@ edges | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:132:36:132:39 | host | provenance | Sink:MaD:100 | | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:136:38:136:41 | host | provenance | Sink:MaD:103 | | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:162:52:162:55 | host | provenance | Sink:MaD:204 | -| ApacheHttpSSRFVersion5.java:45:42:45:49 | hostSink : String | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | +| ApacheHttpSSRFVersion5.java:45:42:45:49 | hostSink : String | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | provenance | MaD:296 | | ApacheHttpSSRFVersion5.java:49:54:49:56 | uri : URI | ApacheHttpSSRFVersion5.java:49:54:49:67 | toString(...) | provenance | MaD:286 Sink:MaD:39 | | ApacheHttpSSRFVersion5.java:51:48:51:50 | uri : URI | ApacheHttpSSRFVersion5.java:51:48:51:61 | toString(...) | provenance | MaD:286 Sink:MaD:41 | | ApacheHttpSSRFVersion5.java:55:38:55:40 | uri : URI | ApacheHttpSSRFVersion5.java:55:38:55:51 | toString(...) | provenance | MaD:286 Sink:MaD:44 | @@ -633,7 +635,7 @@ edges | ApacheHttpSSRFVersion5.java:298:31:298:58 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:299:42:299:49 | hostSink : String | provenance | Src:MaD:277 | | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:303:34:303:37 | host | provenance | Sink:MaD:178 | | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:304:34:304:37 | host | provenance | Sink:MaD:179 | -| ApacheHttpSSRFVersion5.java:299:42:299:49 | hostSink : String | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | +| ApacheHttpSSRFVersion5.java:299:42:299:49 | hostSink : String | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | provenance | MaD:296 | | ApacheHttpSSRFVersion5.java:308:60:308:62 | uri : URI | ApacheHttpSSRFVersion5.java:308:60:308:73 | toString(...) | provenance | MaD:286 Sink:MaD:208 | | ApacheHttpSSRFVersion5.java:313:53:313:55 | uri : URI | ApacheHttpSSRFVersion5.java:313:53:313:66 | toString(...) | provenance | MaD:286 Sink:MaD:208 | | ApacheHttpSSRFVersion5.java:326:30:326:56 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:327:31:327:37 | uriSink : String | provenance | Src:MaD:277 | @@ -659,7 +661,7 @@ edges | ApacheHttpSSRFVersion5.java:327:31:327:37 | uriSink : String | ApacheHttpSSRFVersion5.java:327:23:327:38 | new URI(...) : URI | provenance | MaD:285 | | ApacheHttpSSRFVersion5.java:329:31:329:58 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:330:42:330:49 | hostSink : String | provenance | Src:MaD:277 | | ApacheHttpSSRFVersion5.java:330:29:330:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:354:53:354:56 | host | provenance | Sink:MaD:204 | -| ApacheHttpSSRFVersion5.java:330:42:330:49 | hostSink : String | ApacheHttpSSRFVersion5.java:330:29:330:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | +| ApacheHttpSSRFVersion5.java:330:42:330:49 | hostSink : String | ApacheHttpSSRFVersion5.java:330:29:330:50 | new HttpHost(...) : HttpHost | provenance | MaD:296 | | ApacheHttpSSRFVersion5.java:333:42:333:44 | uri : URI | ApacheHttpSSRFVersion5.java:333:42:333:55 | toString(...) | provenance | MaD:286 Sink:MaD:180 | | ApacheHttpSSRFVersion5.java:336:39:336:41 | uri : URI | ApacheHttpSSRFVersion5.java:336:39:336:52 | toString(...) | provenance | MaD:286 Sink:MaD:182 | | ApacheHttpSSRFVersion5.java:339:40:339:42 | uri : URI | ApacheHttpSSRFVersion5.java:339:40:339:53 | toString(...) | provenance | MaD:286 Sink:MaD:184 | @@ -683,7 +685,7 @@ edges | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:381:51:381:54 | host | provenance | Sink:MaD:198 | | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:385:50:385:53 | host | provenance | Sink:MaD:200 | | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:387:44:387:47 | host | provenance | Sink:MaD:202 | -| ApacheHttpSSRFVersion5.java:376:42:376:49 | hostSink : String | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | +| ApacheHttpSSRFVersion5.java:376:42:376:49 | hostSink : String | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | provenance | MaD:296 | | JakartaWsSSRF.java:14:22:14:48 | getParameter(...) : String | JakartaWsSSRF.java:15:23:15:25 | url | provenance | Src:MaD:277 Sink:MaD:3 | | JavaNetHttpSSRF.java:25:27:25:53 | getParameter(...) : String | JavaNetHttpSSRF.java:26:31:26:34 | sink : String | provenance | Src:MaD:277 | | JavaNetHttpSSRF.java:26:23:26:35 | new URI(...) : URI | JavaNetHttpSSRF.java:39:59:39:61 | uri | provenance | Sink:MaD:6 | @@ -710,7 +712,7 @@ edges | JdbcUrlSSRF.java:52:9:52:13 | props : Properties | JdbcUrlSSRF.java:54:49:54:53 | props | provenance | Sink:MaD:1 | | JdbcUrlSSRF.java:52:9:52:13 | props [post update] : Properties [] : String | JdbcUrlSSRF.java:54:49:54:53 | props | provenance | Sink:MaD:1 | | JdbcUrlSSRF.java:52:38:52:44 | jdbcUrl : String | JdbcUrlSSRF.java:52:9:52:13 | props : Properties | provenance | Config | -| JdbcUrlSSRF.java:52:38:52:44 | jdbcUrl : String | JdbcUrlSSRF.java:52:9:52:13 | props [post update] : Properties [] : String | provenance | MaD:293 | +| JdbcUrlSSRF.java:52:38:52:44 | jdbcUrl : String | JdbcUrlSSRF.java:52:9:52:13 | props [post update] : Properties [] : String | provenance | MaD:295 | | JdbcUrlSSRF.java:60:26:60:56 | getParameter(...) : String | JdbcUrlSSRF.java:65:27:65:33 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:257 | | JdbcUrlSSRF.java:60:26:60:56 | getParameter(...) : String | JdbcUrlSSRF.java:67:75:67:81 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:258 | | JdbcUrlSSRF.java:60:26:60:56 | getParameter(...) : String | JdbcUrlSSRF.java:70:75:70:81 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:260 | @@ -835,18 +837,29 @@ edges | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | provenance | Config | | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:175:31:175:114 | newBuilder(...) : Builder | SanitizationTests.java:175:31:175:122 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:175:31:175:122 | build(...) : HttpRequest | SanitizationTests.java:176:25:176:27 | r18 | provenance | Sink:MaD:4 | -| SanitizationTests.java:175:54:175:113 | new URI(...) : URI | SanitizationTests.java:175:31:175:114 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:175:62:175:112 | getFromList(...) : String | SanitizationTests.java:175:54:175:113 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:175:62:175:112 | getFromList(...) : String | SanitizationTests.java:175:54:175:113 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:175:62:175:112 | getFromList(...) : String | SanitizationTests.java:175:54:175:113 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:175:62:175:112 | getFromList(...) : String | SanitizationTests.java:175:54:175:113 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | SanitizationTests.java:175:62:175:112 | getFromList(...) : String | provenance | MaD:290 | -| SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | SanitizationTests.java:197:31:197:112 | list : List [] : String | provenance | | -| SanitizationTests.java:175:82:175:110 | getParameter(...) : String | SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | provenance | Src:MaD:277 MaD:289 | -| SanitizationTests.java:197:31:197:112 | list : List [] : String | SanitizationTests.java:198:16:198:19 | list : List [] : String | provenance | | -| SanitizationTests.java:198:16:198:19 | list : List [] : String | SanitizationTests.java:198:16:198:26 | get(...) : String | provenance | MaD:290 | +| SanitizationTests.java:145:30:145:58 | getParameter(...) : String | SanitizationTests.java:146:47:146:53 | param13 : String | provenance | Src:MaD:277 | +| SanitizationTests.java:146:31:146:54 | matcher(...) : Matcher | SanitizationTests.java:150:67:150:73 | matcher : Matcher | provenance | | +| SanitizationTests.java:146:47:146:53 | param13 : String | SanitizationTests.java:146:31:146:54 | matcher(...) : Matcher | provenance | MaD:290 | +| SanitizationTests.java:150:36:150:84 | newBuilder(...) : Builder | SanitizationTests.java:150:36:150:92 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:150:36:150:92 | build(...) : HttpRequest | SanitizationTests.java:151:29:151:32 | r13b | provenance | Sink:MaD:4 | +| SanitizationTests.java:150:59:150:83 | new URI(...) : URI | SanitizationTests.java:150:36:150:84 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:150:67:150:73 | matcher : Matcher | SanitizationTests.java:150:67:150:82 | group(...) : String | provenance | MaD:289 | +| SanitizationTests.java:150:67:150:82 | group(...) : String | SanitizationTests.java:150:59:150:83 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:150:67:150:82 | group(...) : String | SanitizationTests.java:150:59:150:83 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:150:67:150:82 | group(...) : String | SanitizationTests.java:150:59:150:83 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:150:67:150:82 | group(...) : String | SanitizationTests.java:150:59:150:83 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:177:31:177:114 | newBuilder(...) : Builder | SanitizationTests.java:177:31:177:122 | build(...) : HttpRequest | provenance | MaD:283 | +| SanitizationTests.java:177:31:177:122 | build(...) : HttpRequest | SanitizationTests.java:178:25:178:27 | r18 | provenance | Sink:MaD:4 | +| SanitizationTests.java:177:54:177:113 | new URI(...) : URI | SanitizationTests.java:177:31:177:114 | newBuilder(...) : Builder | provenance | MaD:284 | +| SanitizationTests.java:177:62:177:112 | getFromList(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) | provenance | Config Sink:MaD:6 | +| SanitizationTests.java:177:62:177:112 | getFromList(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | +| SanitizationTests.java:177:62:177:112 | getFromList(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) : URI | provenance | Config | +| SanitizationTests.java:177:62:177:112 | getFromList(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) : URI | provenance | MaD:285 | +| SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | SanitizationTests.java:177:62:177:112 | getFromList(...) : String | provenance | MaD:292 | +| SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | SanitizationTests.java:199:31:199:112 | list : List [] : String | provenance | | +| SanitizationTests.java:177:82:177:110 | getParameter(...) : String | SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | provenance | Src:MaD:277 MaD:291 | +| SanitizationTests.java:199:31:199:112 | list : List [] : String | SanitizationTests.java:200:16:200:19 | list : List [] : String | provenance | | +| SanitizationTests.java:200:16:200:19 | list : List [] : String | SanitizationTests.java:200:16:200:26 | get(...) : String | provenance | MaD:292 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:32:39:32:59 | ... + ... | provenance | Src:MaD:277 Sink:MaD:264 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:33:69:33:82 | fooResourceUrl | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:34:73:34:86 | fooResourceUrl | provenance | Src:MaD:277 | @@ -878,16 +891,16 @@ edges | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:82:107:82:120 | fooResourceUrl : String | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:84:129:84:142 | fooResourceUrl : String | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | provenance | Src:MaD:277 | -| SpringSSRF.java:38:83:38:96 | fooResourceUrl : String | SpringSSRF.java:38:69:38:97 | of(...) | provenance | MaD:291 | -| SpringSSRF.java:40:105:40:118 | fooResourceUrl : String | SpringSSRF.java:40:69:40:119 | of(...) | provenance | MaD:292 | -| SpringSSRF.java:49:105:49:118 | fooResourceUrl : String | SpringSSRF.java:49:91:49:119 | of(...) | provenance | MaD:291 | -| SpringSSRF.java:51:127:51:140 | fooResourceUrl : String | SpringSSRF.java:51:91:51:141 | of(...) | provenance | MaD:292 | -| SpringSSRF.java:60:93:60:106 | fooResourceUrl : String | SpringSSRF.java:60:79:60:107 | of(...) | provenance | MaD:291 | -| SpringSSRF.java:62:115:62:128 | fooResourceUrl : String | SpringSSRF.java:62:79:62:129 | of(...) | provenance | MaD:292 | -| SpringSSRF.java:71:83:71:96 | fooResourceUrl : String | SpringSSRF.java:71:69:71:97 | of(...) | provenance | MaD:291 | -| SpringSSRF.java:73:105:73:118 | fooResourceUrl : String | SpringSSRF.java:73:69:73:119 | of(...) | provenance | MaD:292 | -| SpringSSRF.java:82:107:82:120 | fooResourceUrl : String | SpringSSRF.java:82:93:82:121 | of(...) | provenance | MaD:291 | -| SpringSSRF.java:84:129:84:142 | fooResourceUrl : String | SpringSSRF.java:84:93:84:143 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:38:83:38:96 | fooResourceUrl : String | SpringSSRF.java:38:69:38:97 | of(...) | provenance | MaD:293 | +| SpringSSRF.java:40:105:40:118 | fooResourceUrl : String | SpringSSRF.java:40:69:40:119 | of(...) | provenance | MaD:294 | +| SpringSSRF.java:49:105:49:118 | fooResourceUrl : String | SpringSSRF.java:49:91:49:119 | of(...) | provenance | MaD:293 | +| SpringSSRF.java:51:127:51:140 | fooResourceUrl : String | SpringSSRF.java:51:91:51:141 | of(...) | provenance | MaD:294 | +| SpringSSRF.java:60:93:60:106 | fooResourceUrl : String | SpringSSRF.java:60:79:60:107 | of(...) | provenance | MaD:293 | +| SpringSSRF.java:62:115:62:128 | fooResourceUrl : String | SpringSSRF.java:62:79:62:129 | of(...) | provenance | MaD:294 | +| SpringSSRF.java:71:83:71:96 | fooResourceUrl : String | SpringSSRF.java:71:69:71:97 | of(...) | provenance | MaD:293 | +| SpringSSRF.java:73:105:73:118 | fooResourceUrl : String | SpringSSRF.java:73:69:73:119 | of(...) | provenance | MaD:294 | +| SpringSSRF.java:82:107:82:120 | fooResourceUrl : String | SpringSSRF.java:82:93:82:121 | of(...) | provenance | MaD:293 | +| SpringSSRF.java:84:129:84:142 | fooResourceUrl : String | SpringSSRF.java:84:93:84:143 | of(...) | provenance | MaD:294 | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:87:40:87:62 | new URI(...) | provenance | Config Sink:MaD:269 | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:87:40:87:62 | new URI(...) | provenance | MaD:285 Sink:MaD:269 | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:88:92:88:105 | fooResourceUrl | provenance | | @@ -932,20 +945,20 @@ edges | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:159:72:159:85 | fooResourceUrl : String | provenance | | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:161:94:161:107 | fooResourceUrl : String | provenance | | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:166:35:166:48 | fooResourceUrl : String | provenance | | -| SpringSSRF.java:93:106:93:119 | fooResourceUrl : String | SpringSSRF.java:93:92:93:120 | of(...) | provenance | MaD:291 | -| SpringSSRF.java:95:128:95:141 | fooResourceUrl : String | SpringSSRF.java:95:92:95:142 | of(...) | provenance | MaD:292 | -| SpringSSRF.java:104:94:104:107 | fooResourceUrl : String | SpringSSRF.java:104:80:104:108 | of(...) | provenance | MaD:291 | -| SpringSSRF.java:106:116:106:129 | fooResourceUrl : String | SpringSSRF.java:106:80:106:130 | of(...) | provenance | MaD:292 | -| SpringSSRF.java:115:106:115:119 | fooResourceUrl : String | SpringSSRF.java:115:92:115:120 | of(...) | provenance | MaD:291 | -| SpringSSRF.java:117:128:117:141 | fooResourceUrl : String | SpringSSRF.java:117:92:117:142 | of(...) | provenance | MaD:292 | -| SpringSSRF.java:126:82:126:95 | fooResourceUrl : String | SpringSSRF.java:126:68:126:96 | of(...) | provenance | MaD:291 | -| SpringSSRF.java:128:104:128:117 | fooResourceUrl : String | SpringSSRF.java:128:68:128:118 | of(...) | provenance | MaD:292 | -| SpringSSRF.java:137:63:137:76 | fooResourceUrl : String | SpringSSRF.java:137:49:137:77 | of(...) | provenance | MaD:291 | -| SpringSSRF.java:139:85:139:98 | fooResourceUrl : String | SpringSSRF.java:139:49:139:99 | of(...) | provenance | MaD:292 | -| SpringSSRF.java:148:71:148:84 | fooResourceUrl : String | SpringSSRF.java:148:57:148:85 | of(...) | provenance | MaD:291 | -| SpringSSRF.java:150:93:150:106 | fooResourceUrl : String | SpringSSRF.java:150:57:150:107 | of(...) | provenance | MaD:292 | -| SpringSSRF.java:159:72:159:85 | fooResourceUrl : String | SpringSSRF.java:159:58:159:86 | of(...) | provenance | MaD:291 | -| SpringSSRF.java:161:94:161:107 | fooResourceUrl : String | SpringSSRF.java:161:58:161:108 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:93:106:93:119 | fooResourceUrl : String | SpringSSRF.java:93:92:93:120 | of(...) | provenance | MaD:293 | +| SpringSSRF.java:95:128:95:141 | fooResourceUrl : String | SpringSSRF.java:95:92:95:142 | of(...) | provenance | MaD:294 | +| SpringSSRF.java:104:94:104:107 | fooResourceUrl : String | SpringSSRF.java:104:80:104:108 | of(...) | provenance | MaD:293 | +| SpringSSRF.java:106:116:106:129 | fooResourceUrl : String | SpringSSRF.java:106:80:106:130 | of(...) | provenance | MaD:294 | +| SpringSSRF.java:115:106:115:119 | fooResourceUrl : String | SpringSSRF.java:115:92:115:120 | of(...) | provenance | MaD:293 | +| SpringSSRF.java:117:128:117:141 | fooResourceUrl : String | SpringSSRF.java:117:92:117:142 | of(...) | provenance | MaD:294 | +| SpringSSRF.java:126:82:126:95 | fooResourceUrl : String | SpringSSRF.java:126:68:126:96 | of(...) | provenance | MaD:293 | +| SpringSSRF.java:128:104:128:117 | fooResourceUrl : String | SpringSSRF.java:128:68:128:118 | of(...) | provenance | MaD:294 | +| SpringSSRF.java:137:63:137:76 | fooResourceUrl : String | SpringSSRF.java:137:49:137:77 | of(...) | provenance | MaD:293 | +| SpringSSRF.java:139:85:139:98 | fooResourceUrl : String | SpringSSRF.java:139:49:139:99 | of(...) | provenance | MaD:294 | +| SpringSSRF.java:148:71:148:84 | fooResourceUrl : String | SpringSSRF.java:148:57:148:85 | of(...) | provenance | MaD:293 | +| SpringSSRF.java:150:93:150:106 | fooResourceUrl : String | SpringSSRF.java:150:57:150:107 | of(...) | provenance | MaD:294 | +| SpringSSRF.java:159:72:159:85 | fooResourceUrl : String | SpringSSRF.java:159:58:159:86 | of(...) | provenance | MaD:293 | +| SpringSSRF.java:161:94:161:107 | fooResourceUrl : String | SpringSSRF.java:161:58:161:108 | of(...) | provenance | MaD:294 | | SpringSSRF.java:166:27:166:49 | new URI(...) : URI | SpringSSRF.java:168:44:168:46 | uri | provenance | Sink:MaD:255 | | SpringSSRF.java:166:27:166:49 | new URI(...) : URI | SpringSSRF.java:170:35:170:37 | uri | provenance | Sink:MaD:250 | | SpringSSRF.java:166:27:166:49 | new URI(...) : URI | SpringSSRF.java:171:35:171:37 | uri | provenance | Sink:MaD:256 | @@ -1366,13 +1379,15 @@ models | 286 | Summary: java.net; URI; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | | 287 | Summary: java.net; URI; false; toURL; ; ; Argument[this]; ReturnValue; taint; manual | | 288 | Summary: java.net; URL; false; URL; (String); ; Argument[0]; Argument[this]; taint; manual | -| 289 | Summary: java.util; List; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | -| 290 | Summary: java.util; List; true; get; (int); ; Argument[this].Element; ReturnValue; value; manual | -| 291 | Summary: java.util; Map; false; of; ; ; Argument[1]; ReturnValue.MapValue; value; manual | -| 292 | Summary: java.util; Map; false; of; ; ; Argument[3]; ReturnValue.MapValue; value; manual | -| 293 | Summary: java.util; Properties; true; setProperty; (String,String); ; Argument[1]; Argument[this].MapValue; value; manual | -| 294 | Summary: org.apache.hc.core5.http; HttpHost; true; HttpHost; (String); ; Argument[0]; Argument[this]; taint; hq-manual | -| 295 | Summary: org.apache.http.message; BasicRequestLine; false; BasicRequestLine; ; ; Argument[1]; Argument[this]; taint; manual | +| 289 | Summary: java.util.regex; Matcher; false; group; ; ; Argument[this]; ReturnValue; taint; manual | +| 290 | Summary: java.util.regex; Pattern; false; matcher; ; ; Argument[0]; ReturnValue; taint; manual | +| 291 | Summary: java.util; List; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | +| 292 | Summary: java.util; List; true; get; (int); ; Argument[this].Element; ReturnValue; value; manual | +| 293 | Summary: java.util; Map; false; of; ; ; Argument[1]; ReturnValue.MapValue; value; manual | +| 294 | Summary: java.util; Map; false; of; ; ; Argument[3]; ReturnValue.MapValue; value; manual | +| 295 | Summary: java.util; Properties; true; setProperty; (String,String); ; Argument[1]; Argument[this].MapValue; value; manual | +| 296 | Summary: org.apache.hc.core5.http; HttpHost; true; HttpHost; (String); ; Argument[0]; Argument[this]; taint; hq-manual | +| 297 | Summary: org.apache.http.message; BasicRequestLine; false; BasicRequestLine; ; ; Argument[1]; Argument[this]; taint; manual | nodes | ApacheHttpSSRF.java:27:27:27:53 | getParameter(...) : String | semmle.label | getParameter(...) : String | | ApacheHttpSSRF.java:28:23:28:35 | new URI(...) : URI | semmle.label | new URI(...) : URI | @@ -1831,17 +1846,27 @@ nodes | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | semmle.label | new URI(...) : URI | | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | semmle.label | unsafeUri10 : String | | SanitizationTests.java:124:25:124:33 | unsafer10 | semmle.label | unsafer10 | -| SanitizationTests.java:175:31:175:114 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:175:31:175:122 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:175:54:175:113 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:175:54:175:113 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:175:62:175:112 | getFromList(...) : String | semmle.label | getFromList(...) : String | -| SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | -| SanitizationTests.java:175:82:175:110 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:176:25:176:27 | r18 | semmle.label | r18 | -| SanitizationTests.java:197:31:197:112 | list : List [] : String | semmle.label | list : List [] : String | -| SanitizationTests.java:198:16:198:19 | list : List [] : String | semmle.label | list : List [] : String | -| SanitizationTests.java:198:16:198:26 | get(...) : String | semmle.label | get(...) : String | +| SanitizationTests.java:145:30:145:58 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:146:31:146:54 | matcher(...) : Matcher | semmle.label | matcher(...) : Matcher | +| SanitizationTests.java:146:47:146:53 | param13 : String | semmle.label | param13 : String | +| SanitizationTests.java:150:36:150:84 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:150:36:150:92 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:150:59:150:83 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:150:59:150:83 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:150:67:150:73 | matcher : Matcher | semmle.label | matcher : Matcher | +| SanitizationTests.java:150:67:150:82 | group(...) : String | semmle.label | group(...) : String | +| SanitizationTests.java:151:29:151:32 | r13b | semmle.label | r13b | +| SanitizationTests.java:177:31:177:114 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | +| SanitizationTests.java:177:31:177:122 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | +| SanitizationTests.java:177:54:177:113 | new URI(...) | semmle.label | new URI(...) | +| SanitizationTests.java:177:54:177:113 | new URI(...) : URI | semmle.label | new URI(...) : URI | +| SanitizationTests.java:177:62:177:112 | getFromList(...) : String | semmle.label | getFromList(...) : String | +| SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | semmle.label | of(...) : List [] : String | +| SanitizationTests.java:177:82:177:110 | getParameter(...) : String | semmle.label | getParameter(...) : String | +| SanitizationTests.java:178:25:178:27 | r18 | semmle.label | r18 | +| SanitizationTests.java:199:31:199:112 | list : List [] : String | semmle.label | list : List [] : String | +| SanitizationTests.java:200:16:200:19 | list : List [] : String | semmle.label | list : List [] : String | +| SanitizationTests.java:200:16:200:26 | get(...) : String | semmle.label | get(...) : String | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | semmle.label | getParameter(...) : String | | SpringSSRF.java:32:39:32:59 | ... + ... | semmle.label | ... + ... | | SpringSSRF.java:33:69:33:82 | fooResourceUrl | semmle.label | fooResourceUrl | @@ -2062,4 +2087,4 @@ nodes | mad/Test.java:112:15:112:31 | (...)... | semmle.label | (...)... | | mad/Test.java:112:24:112:31 | source(...) : String | semmle.label | source(...) : String | subpaths -| SanitizationTests.java:175:74:175:111 | of(...) : List [] : String | SanitizationTests.java:197:31:197:112 | list : List [] : String | SanitizationTests.java:198:16:198:26 | get(...) : String | SanitizationTests.java:175:62:175:112 | getFromList(...) : String | +| SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | SanitizationTests.java:199:31:199:112 | list : List [] : String | SanitizationTests.java:200:16:200:26 | get(...) : String | SanitizationTests.java:177:62:177:112 | getFromList(...) : String | diff --git a/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java b/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java index 167875086591..55049c834e7d 100644 --- a/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java +++ b/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java @@ -141,12 +141,14 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response) client.send(r12, null); } - Pattern pattern = Pattern.compile("[a-zA-Z0-9_-]+"); - String param13 = request.getParameter("uri13"); + Pattern pattern = Pattern.compile("([a-zA-Z0-9_-]+)"); + String param13 = request.getParameter("uri13"); // $ SPURIOUS: Source Matcher matcher = pattern.matcher(param13); if (matcher.matches()) { - HttpRequest r13 = HttpRequest.newBuilder(new URI(param13)).build(); - client.send(r13, null); + HttpRequest r13a = HttpRequest.newBuilder(new URI(param13)).build(); + client.send(r13a, null); + HttpRequest r13b = HttpRequest.newBuilder(new URI(matcher.group(1))).build(); // $ SPURIOUS: Alert + client.send(r13b, null); // $ SPURIOUS: Alert } // GOOD: sanitisation by @Pattern annotation on a field From 8f8f4c2d522ec8938a4a7f63f0aad49a9f967f2d Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 14 Feb 2026 00:17:11 +0000 Subject: [PATCH 418/433] Fix Matcher.matches edge case --- .../semmle/code/java/security/Sanitizers.qll | 15 ++- .../security/CWE-918/RequestForgery.expected | 107 +++++++----------- .../security/CWE-918/SanitizationTests.java | 6 +- 3 files changed, 58 insertions(+), 70 deletions(-) diff --git a/java/ql/lib/semmle/code/java/security/Sanitizers.qll b/java/ql/lib/semmle/code/java/security/Sanitizers.qll index 9eb45f3a5985..8bbd8863010d 100644 --- a/java/ql/lib/semmle/code/java/security/Sanitizers.qll +++ b/java/ql/lib/semmle/code/java/security/Sanitizers.qll @@ -43,7 +43,20 @@ class SimpleTypeSanitizer extends DataFlow::Node { predicate regexpMatchGuardChecks(Guard guard, Expr e, boolean branch) { exists(RegexMatch rm | not rm instanceof Annotation | guard = rm and - e = rm.getString() + ( + e = rm.getString() + or + // Special case for MatcherMatchesCall. Consider the following code: + // + // Matcher matcher = Pattern.compile(regexp).matcher(taintedInput); + // if (matcher.matches()) { + // sink(matcher.group(1)); + // } + // + // Even though the string is `taintedInput`, we also want to sanitize + // `matcher` as it can be used to get substrings of `taintedInput`. + e = rm.(MatcherMatchesCall).getQualifier() + ) ) and branch = true } diff --git a/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected b/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected index 452c0337f024..a0bbc205a39f 100644 --- a/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected +++ b/java/ql/test/query-tests/security/CWE-918/RequestForgery.expected @@ -252,8 +252,6 @@ | SanitizationTests.java:120:25:120:32 | unsafer9 | SanitizationTests.java:118:33:118:63 | getParameter(...) : String | SanitizationTests.java:120:25:120:32 | unsafer9 | Potential server-side request forgery due to a $@. | SanitizationTests.java:118:33:118:63 | getParameter(...) | user-provided value | | SanitizationTests.java:123:60:123:79 | new URI(...) | SanitizationTests.java:122:94:122:125 | getParameter(...) : String | SanitizationTests.java:123:60:123:79 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:122:94:122:125 | getParameter(...) | user-provided value | | SanitizationTests.java:124:25:124:33 | unsafer10 | SanitizationTests.java:122:94:122:125 | getParameter(...) : String | SanitizationTests.java:124:25:124:33 | unsafer10 | Potential server-side request forgery due to a $@. | SanitizationTests.java:122:94:122:125 | getParameter(...) | user-provided value | -| SanitizationTests.java:150:59:150:83 | new URI(...) | SanitizationTests.java:145:30:145:58 | getParameter(...) : String | SanitizationTests.java:150:59:150:83 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:145:30:145:58 | getParameter(...) | user-provided value | -| SanitizationTests.java:151:29:151:32 | r13b | SanitizationTests.java:145:30:145:58 | getParameter(...) : String | SanitizationTests.java:151:29:151:32 | r13b | Potential server-side request forgery due to a $@. | SanitizationTests.java:145:30:145:58 | getParameter(...) | user-provided value | | SanitizationTests.java:177:54:177:113 | new URI(...) | SanitizationTests.java:177:82:177:110 | getParameter(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) | Potential server-side request forgery due to a $@. | SanitizationTests.java:177:82:177:110 | getParameter(...) | user-provided value | | SanitizationTests.java:178:25:178:27 | r18 | SanitizationTests.java:177:82:177:110 | getParameter(...) : String | SanitizationTests.java:178:25:178:27 | r18 | Potential server-side request forgery due to a $@. | SanitizationTests.java:177:82:177:110 | getParameter(...) | user-provided value | | SpringSSRF.java:32:39:32:59 | ... + ... | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:32:39:32:59 | ... + ... | Potential server-side request forgery due to a $@. | SpringSSRF.java:28:33:28:60 | getParameter(...) | user-provided value | @@ -407,11 +405,11 @@ edges | ApacheHttpSSRF.java:28:31:28:34 | sink : String | ApacheHttpSSRF.java:28:23:28:35 | new URI(...) : URI | provenance | Config | | ApacheHttpSSRF.java:28:31:28:34 | sink : String | ApacheHttpSSRF.java:28:23:28:35 | new URI(...) : URI | provenance | MaD:285 | | ApacheHttpSSRF.java:42:62:42:64 | uri : URI | ApacheHttpSSRF.java:42:62:42:75 | toString(...) : String | provenance | MaD:286 | -| ApacheHttpSSRF.java:42:62:42:75 | toString(...) : String | ApacheHttpSSRF.java:42:34:42:82 | new BasicRequestLine(...) | provenance | MaD:297 Sink:MaD:231 | +| ApacheHttpSSRF.java:42:62:42:75 | toString(...) : String | ApacheHttpSSRF.java:42:34:42:82 | new BasicRequestLine(...) | provenance | MaD:295 Sink:MaD:231 | | ApacheHttpSSRF.java:43:41:43:43 | uri : URI | ApacheHttpSSRF.java:43:41:43:54 | toString(...) | provenance | MaD:286 Sink:MaD:232 | | ApacheHttpSSRF.java:44:41:44:43 | uri : URI | ApacheHttpSSRF.java:44:41:44:54 | toString(...) | provenance | MaD:286 Sink:MaD:233 | | ApacheHttpSSRF.java:46:77:46:79 | uri : URI | ApacheHttpSSRF.java:46:77:46:90 | toString(...) : String | provenance | MaD:286 | -| ApacheHttpSSRF.java:46:77:46:90 | toString(...) : String | ApacheHttpSSRF.java:46:49:46:97 | new BasicRequestLine(...) | provenance | MaD:297 Sink:MaD:228 | +| ApacheHttpSSRF.java:46:77:46:90 | toString(...) : String | ApacheHttpSSRF.java:46:49:46:97 | new BasicRequestLine(...) | provenance | MaD:295 Sink:MaD:228 | | ApacheHttpSSRF.java:47:56:47:58 | uri : URI | ApacheHttpSSRF.java:47:56:47:69 | toString(...) | provenance | MaD:286 Sink:MaD:229 | | ApacheHttpSSRF.java:48:56:48:58 | uri : URI | ApacheHttpSSRF.java:48:56:48:69 | toString(...) | provenance | MaD:286 Sink:MaD:230 | | ApacheHttpSSRFVersion5.java:41:30:41:56 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:42:31:42:37 | uriSink : String | provenance | Src:MaD:277 | @@ -505,7 +503,7 @@ edges | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:132:36:132:39 | host | provenance | Sink:MaD:100 | | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:136:38:136:41 | host | provenance | Sink:MaD:103 | | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:162:52:162:55 | host | provenance | Sink:MaD:204 | -| ApacheHttpSSRFVersion5.java:45:42:45:49 | hostSink : String | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | provenance | MaD:296 | +| ApacheHttpSSRFVersion5.java:45:42:45:49 | hostSink : String | ApacheHttpSSRFVersion5.java:45:29:45:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | | ApacheHttpSSRFVersion5.java:49:54:49:56 | uri : URI | ApacheHttpSSRFVersion5.java:49:54:49:67 | toString(...) | provenance | MaD:286 Sink:MaD:39 | | ApacheHttpSSRFVersion5.java:51:48:51:50 | uri : URI | ApacheHttpSSRFVersion5.java:51:48:51:61 | toString(...) | provenance | MaD:286 Sink:MaD:41 | | ApacheHttpSSRFVersion5.java:55:38:55:40 | uri : URI | ApacheHttpSSRFVersion5.java:55:38:55:51 | toString(...) | provenance | MaD:286 Sink:MaD:44 | @@ -635,7 +633,7 @@ edges | ApacheHttpSSRFVersion5.java:298:31:298:58 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:299:42:299:49 | hostSink : String | provenance | Src:MaD:277 | | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:303:34:303:37 | host | provenance | Sink:MaD:178 | | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:304:34:304:37 | host | provenance | Sink:MaD:179 | -| ApacheHttpSSRFVersion5.java:299:42:299:49 | hostSink : String | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | provenance | MaD:296 | +| ApacheHttpSSRFVersion5.java:299:42:299:49 | hostSink : String | ApacheHttpSSRFVersion5.java:299:29:299:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | | ApacheHttpSSRFVersion5.java:308:60:308:62 | uri : URI | ApacheHttpSSRFVersion5.java:308:60:308:73 | toString(...) | provenance | MaD:286 Sink:MaD:208 | | ApacheHttpSSRFVersion5.java:313:53:313:55 | uri : URI | ApacheHttpSSRFVersion5.java:313:53:313:66 | toString(...) | provenance | MaD:286 Sink:MaD:208 | | ApacheHttpSSRFVersion5.java:326:30:326:56 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:327:31:327:37 | uriSink : String | provenance | Src:MaD:277 | @@ -661,7 +659,7 @@ edges | ApacheHttpSSRFVersion5.java:327:31:327:37 | uriSink : String | ApacheHttpSSRFVersion5.java:327:23:327:38 | new URI(...) : URI | provenance | MaD:285 | | ApacheHttpSSRFVersion5.java:329:31:329:58 | getParameter(...) : String | ApacheHttpSSRFVersion5.java:330:42:330:49 | hostSink : String | provenance | Src:MaD:277 | | ApacheHttpSSRFVersion5.java:330:29:330:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:354:53:354:56 | host | provenance | Sink:MaD:204 | -| ApacheHttpSSRFVersion5.java:330:42:330:49 | hostSink : String | ApacheHttpSSRFVersion5.java:330:29:330:50 | new HttpHost(...) : HttpHost | provenance | MaD:296 | +| ApacheHttpSSRFVersion5.java:330:42:330:49 | hostSink : String | ApacheHttpSSRFVersion5.java:330:29:330:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | | ApacheHttpSSRFVersion5.java:333:42:333:44 | uri : URI | ApacheHttpSSRFVersion5.java:333:42:333:55 | toString(...) | provenance | MaD:286 Sink:MaD:180 | | ApacheHttpSSRFVersion5.java:336:39:336:41 | uri : URI | ApacheHttpSSRFVersion5.java:336:39:336:52 | toString(...) | provenance | MaD:286 Sink:MaD:182 | | ApacheHttpSSRFVersion5.java:339:40:339:42 | uri : URI | ApacheHttpSSRFVersion5.java:339:40:339:53 | toString(...) | provenance | MaD:286 Sink:MaD:184 | @@ -685,7 +683,7 @@ edges | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:381:51:381:54 | host | provenance | Sink:MaD:198 | | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:385:50:385:53 | host | provenance | Sink:MaD:200 | | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | ApacheHttpSSRFVersion5.java:387:44:387:47 | host | provenance | Sink:MaD:202 | -| ApacheHttpSSRFVersion5.java:376:42:376:49 | hostSink : String | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | provenance | MaD:296 | +| ApacheHttpSSRFVersion5.java:376:42:376:49 | hostSink : String | ApacheHttpSSRFVersion5.java:376:29:376:50 | new HttpHost(...) : HttpHost | provenance | MaD:294 | | JakartaWsSSRF.java:14:22:14:48 | getParameter(...) : String | JakartaWsSSRF.java:15:23:15:25 | url | provenance | Src:MaD:277 Sink:MaD:3 | | JavaNetHttpSSRF.java:25:27:25:53 | getParameter(...) : String | JavaNetHttpSSRF.java:26:31:26:34 | sink : String | provenance | Src:MaD:277 | | JavaNetHttpSSRF.java:26:23:26:35 | new URI(...) : URI | JavaNetHttpSSRF.java:39:59:39:61 | uri | provenance | Sink:MaD:6 | @@ -712,7 +710,7 @@ edges | JdbcUrlSSRF.java:52:9:52:13 | props : Properties | JdbcUrlSSRF.java:54:49:54:53 | props | provenance | Sink:MaD:1 | | JdbcUrlSSRF.java:52:9:52:13 | props [post update] : Properties [] : String | JdbcUrlSSRF.java:54:49:54:53 | props | provenance | Sink:MaD:1 | | JdbcUrlSSRF.java:52:38:52:44 | jdbcUrl : String | JdbcUrlSSRF.java:52:9:52:13 | props : Properties | provenance | Config | -| JdbcUrlSSRF.java:52:38:52:44 | jdbcUrl : String | JdbcUrlSSRF.java:52:9:52:13 | props [post update] : Properties [] : String | provenance | MaD:295 | +| JdbcUrlSSRF.java:52:38:52:44 | jdbcUrl : String | JdbcUrlSSRF.java:52:9:52:13 | props [post update] : Properties [] : String | provenance | MaD:293 | | JdbcUrlSSRF.java:60:26:60:56 | getParameter(...) : String | JdbcUrlSSRF.java:65:27:65:33 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:257 | | JdbcUrlSSRF.java:60:26:60:56 | getParameter(...) : String | JdbcUrlSSRF.java:67:75:67:81 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:258 | | JdbcUrlSSRF.java:60:26:60:56 | getParameter(...) : String | JdbcUrlSSRF.java:70:75:70:81 | jdbcUrl | provenance | Src:MaD:277 Sink:MaD:260 | @@ -837,17 +835,6 @@ edges | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | provenance | Config | | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:145:30:145:58 | getParameter(...) : String | SanitizationTests.java:146:47:146:53 | param13 : String | provenance | Src:MaD:277 | -| SanitizationTests.java:146:31:146:54 | matcher(...) : Matcher | SanitizationTests.java:150:67:150:73 | matcher : Matcher | provenance | | -| SanitizationTests.java:146:47:146:53 | param13 : String | SanitizationTests.java:146:31:146:54 | matcher(...) : Matcher | provenance | MaD:290 | -| SanitizationTests.java:150:36:150:84 | newBuilder(...) : Builder | SanitizationTests.java:150:36:150:92 | build(...) : HttpRequest | provenance | MaD:283 | -| SanitizationTests.java:150:36:150:92 | build(...) : HttpRequest | SanitizationTests.java:151:29:151:32 | r13b | provenance | Sink:MaD:4 | -| SanitizationTests.java:150:59:150:83 | new URI(...) : URI | SanitizationTests.java:150:36:150:84 | newBuilder(...) : Builder | provenance | MaD:284 | -| SanitizationTests.java:150:67:150:73 | matcher : Matcher | SanitizationTests.java:150:67:150:82 | group(...) : String | provenance | MaD:289 | -| SanitizationTests.java:150:67:150:82 | group(...) : String | SanitizationTests.java:150:59:150:83 | new URI(...) | provenance | Config Sink:MaD:6 | -| SanitizationTests.java:150:67:150:82 | group(...) : String | SanitizationTests.java:150:59:150:83 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | -| SanitizationTests.java:150:67:150:82 | group(...) : String | SanitizationTests.java:150:59:150:83 | new URI(...) : URI | provenance | Config | -| SanitizationTests.java:150:67:150:82 | group(...) : String | SanitizationTests.java:150:59:150:83 | new URI(...) : URI | provenance | MaD:285 | | SanitizationTests.java:177:31:177:114 | newBuilder(...) : Builder | SanitizationTests.java:177:31:177:122 | build(...) : HttpRequest | provenance | MaD:283 | | SanitizationTests.java:177:31:177:122 | build(...) : HttpRequest | SanitizationTests.java:178:25:178:27 | r18 | provenance | Sink:MaD:4 | | SanitizationTests.java:177:54:177:113 | new URI(...) : URI | SanitizationTests.java:177:31:177:114 | newBuilder(...) : Builder | provenance | MaD:284 | @@ -855,11 +842,11 @@ edges | SanitizationTests.java:177:62:177:112 | getFromList(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) | provenance | MaD:285 Sink:MaD:6 | | SanitizationTests.java:177:62:177:112 | getFromList(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) : URI | provenance | Config | | SanitizationTests.java:177:62:177:112 | getFromList(...) : String | SanitizationTests.java:177:54:177:113 | new URI(...) : URI | provenance | MaD:285 | -| SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | SanitizationTests.java:177:62:177:112 | getFromList(...) : String | provenance | MaD:292 | +| SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | SanitizationTests.java:177:62:177:112 | getFromList(...) : String | provenance | MaD:290 | | SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | SanitizationTests.java:199:31:199:112 | list : List [] : String | provenance | | -| SanitizationTests.java:177:82:177:110 | getParameter(...) : String | SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | provenance | Src:MaD:277 MaD:291 | +| SanitizationTests.java:177:82:177:110 | getParameter(...) : String | SanitizationTests.java:177:74:177:111 | of(...) : List [] : String | provenance | Src:MaD:277 MaD:289 | | SanitizationTests.java:199:31:199:112 | list : List [] : String | SanitizationTests.java:200:16:200:19 | list : List [] : String | provenance | | -| SanitizationTests.java:200:16:200:19 | list : List [] : String | SanitizationTests.java:200:16:200:26 | get(...) : String | provenance | MaD:292 | +| SanitizationTests.java:200:16:200:19 | list : List [] : String | SanitizationTests.java:200:16:200:26 | get(...) : String | provenance | MaD:290 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:32:39:32:59 | ... + ... | provenance | Src:MaD:277 Sink:MaD:264 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:33:69:33:82 | fooResourceUrl | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:34:73:34:86 | fooResourceUrl | provenance | Src:MaD:277 | @@ -891,16 +878,16 @@ edges | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:82:107:82:120 | fooResourceUrl : String | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:84:129:84:142 | fooResourceUrl : String | provenance | Src:MaD:277 | | SpringSSRF.java:28:33:28:60 | getParameter(...) : String | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | provenance | Src:MaD:277 | -| SpringSSRF.java:38:83:38:96 | fooResourceUrl : String | SpringSSRF.java:38:69:38:97 | of(...) | provenance | MaD:293 | -| SpringSSRF.java:40:105:40:118 | fooResourceUrl : String | SpringSSRF.java:40:69:40:119 | of(...) | provenance | MaD:294 | -| SpringSSRF.java:49:105:49:118 | fooResourceUrl : String | SpringSSRF.java:49:91:49:119 | of(...) | provenance | MaD:293 | -| SpringSSRF.java:51:127:51:140 | fooResourceUrl : String | SpringSSRF.java:51:91:51:141 | of(...) | provenance | MaD:294 | -| SpringSSRF.java:60:93:60:106 | fooResourceUrl : String | SpringSSRF.java:60:79:60:107 | of(...) | provenance | MaD:293 | -| SpringSSRF.java:62:115:62:128 | fooResourceUrl : String | SpringSSRF.java:62:79:62:129 | of(...) | provenance | MaD:294 | -| SpringSSRF.java:71:83:71:96 | fooResourceUrl : String | SpringSSRF.java:71:69:71:97 | of(...) | provenance | MaD:293 | -| SpringSSRF.java:73:105:73:118 | fooResourceUrl : String | SpringSSRF.java:73:69:73:119 | of(...) | provenance | MaD:294 | -| SpringSSRF.java:82:107:82:120 | fooResourceUrl : String | SpringSSRF.java:82:93:82:121 | of(...) | provenance | MaD:293 | -| SpringSSRF.java:84:129:84:142 | fooResourceUrl : String | SpringSSRF.java:84:93:84:143 | of(...) | provenance | MaD:294 | +| SpringSSRF.java:38:83:38:96 | fooResourceUrl : String | SpringSSRF.java:38:69:38:97 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:40:105:40:118 | fooResourceUrl : String | SpringSSRF.java:40:69:40:119 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:49:105:49:118 | fooResourceUrl : String | SpringSSRF.java:49:91:49:119 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:51:127:51:140 | fooResourceUrl : String | SpringSSRF.java:51:91:51:141 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:60:93:60:106 | fooResourceUrl : String | SpringSSRF.java:60:79:60:107 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:62:115:62:128 | fooResourceUrl : String | SpringSSRF.java:62:79:62:129 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:71:83:71:96 | fooResourceUrl : String | SpringSSRF.java:71:69:71:97 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:73:105:73:118 | fooResourceUrl : String | SpringSSRF.java:73:69:73:119 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:82:107:82:120 | fooResourceUrl : String | SpringSSRF.java:82:93:82:121 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:84:129:84:142 | fooResourceUrl : String | SpringSSRF.java:84:93:84:143 | of(...) | provenance | MaD:292 | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:87:40:87:62 | new URI(...) | provenance | Config Sink:MaD:269 | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:87:40:87:62 | new URI(...) | provenance | MaD:285 Sink:MaD:269 | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:88:92:88:105 | fooResourceUrl | provenance | | @@ -945,20 +932,20 @@ edges | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:159:72:159:85 | fooResourceUrl : String | provenance | | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:161:94:161:107 | fooResourceUrl : String | provenance | | | SpringSSRF.java:87:48:87:61 | fooResourceUrl : String | SpringSSRF.java:166:35:166:48 | fooResourceUrl : String | provenance | | -| SpringSSRF.java:93:106:93:119 | fooResourceUrl : String | SpringSSRF.java:93:92:93:120 | of(...) | provenance | MaD:293 | -| SpringSSRF.java:95:128:95:141 | fooResourceUrl : String | SpringSSRF.java:95:92:95:142 | of(...) | provenance | MaD:294 | -| SpringSSRF.java:104:94:104:107 | fooResourceUrl : String | SpringSSRF.java:104:80:104:108 | of(...) | provenance | MaD:293 | -| SpringSSRF.java:106:116:106:129 | fooResourceUrl : String | SpringSSRF.java:106:80:106:130 | of(...) | provenance | MaD:294 | -| SpringSSRF.java:115:106:115:119 | fooResourceUrl : String | SpringSSRF.java:115:92:115:120 | of(...) | provenance | MaD:293 | -| SpringSSRF.java:117:128:117:141 | fooResourceUrl : String | SpringSSRF.java:117:92:117:142 | of(...) | provenance | MaD:294 | -| SpringSSRF.java:126:82:126:95 | fooResourceUrl : String | SpringSSRF.java:126:68:126:96 | of(...) | provenance | MaD:293 | -| SpringSSRF.java:128:104:128:117 | fooResourceUrl : String | SpringSSRF.java:128:68:128:118 | of(...) | provenance | MaD:294 | -| SpringSSRF.java:137:63:137:76 | fooResourceUrl : String | SpringSSRF.java:137:49:137:77 | of(...) | provenance | MaD:293 | -| SpringSSRF.java:139:85:139:98 | fooResourceUrl : String | SpringSSRF.java:139:49:139:99 | of(...) | provenance | MaD:294 | -| SpringSSRF.java:148:71:148:84 | fooResourceUrl : String | SpringSSRF.java:148:57:148:85 | of(...) | provenance | MaD:293 | -| SpringSSRF.java:150:93:150:106 | fooResourceUrl : String | SpringSSRF.java:150:57:150:107 | of(...) | provenance | MaD:294 | -| SpringSSRF.java:159:72:159:85 | fooResourceUrl : String | SpringSSRF.java:159:58:159:86 | of(...) | provenance | MaD:293 | -| SpringSSRF.java:161:94:161:107 | fooResourceUrl : String | SpringSSRF.java:161:58:161:108 | of(...) | provenance | MaD:294 | +| SpringSSRF.java:93:106:93:119 | fooResourceUrl : String | SpringSSRF.java:93:92:93:120 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:95:128:95:141 | fooResourceUrl : String | SpringSSRF.java:95:92:95:142 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:104:94:104:107 | fooResourceUrl : String | SpringSSRF.java:104:80:104:108 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:106:116:106:129 | fooResourceUrl : String | SpringSSRF.java:106:80:106:130 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:115:106:115:119 | fooResourceUrl : String | SpringSSRF.java:115:92:115:120 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:117:128:117:141 | fooResourceUrl : String | SpringSSRF.java:117:92:117:142 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:126:82:126:95 | fooResourceUrl : String | SpringSSRF.java:126:68:126:96 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:128:104:128:117 | fooResourceUrl : String | SpringSSRF.java:128:68:128:118 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:137:63:137:76 | fooResourceUrl : String | SpringSSRF.java:137:49:137:77 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:139:85:139:98 | fooResourceUrl : String | SpringSSRF.java:139:49:139:99 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:148:71:148:84 | fooResourceUrl : String | SpringSSRF.java:148:57:148:85 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:150:93:150:106 | fooResourceUrl : String | SpringSSRF.java:150:57:150:107 | of(...) | provenance | MaD:292 | +| SpringSSRF.java:159:72:159:85 | fooResourceUrl : String | SpringSSRF.java:159:58:159:86 | of(...) | provenance | MaD:291 | +| SpringSSRF.java:161:94:161:107 | fooResourceUrl : String | SpringSSRF.java:161:58:161:108 | of(...) | provenance | MaD:292 | | SpringSSRF.java:166:27:166:49 | new URI(...) : URI | SpringSSRF.java:168:44:168:46 | uri | provenance | Sink:MaD:255 | | SpringSSRF.java:166:27:166:49 | new URI(...) : URI | SpringSSRF.java:170:35:170:37 | uri | provenance | Sink:MaD:250 | | SpringSSRF.java:166:27:166:49 | new URI(...) : URI | SpringSSRF.java:171:35:171:37 | uri | provenance | Sink:MaD:256 | @@ -1379,15 +1366,13 @@ models | 286 | Summary: java.net; URI; false; toString; ; ; Argument[this]; ReturnValue; taint; manual | | 287 | Summary: java.net; URI; false; toURL; ; ; Argument[this]; ReturnValue; taint; manual | | 288 | Summary: java.net; URL; false; URL; (String); ; Argument[0]; Argument[this]; taint; manual | -| 289 | Summary: java.util.regex; Matcher; false; group; ; ; Argument[this]; ReturnValue; taint; manual | -| 290 | Summary: java.util.regex; Pattern; false; matcher; ; ; Argument[0]; ReturnValue; taint; manual | -| 291 | Summary: java.util; List; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | -| 292 | Summary: java.util; List; true; get; (int); ; Argument[this].Element; ReturnValue; value; manual | -| 293 | Summary: java.util; Map; false; of; ; ; Argument[1]; ReturnValue.MapValue; value; manual | -| 294 | Summary: java.util; Map; false; of; ; ; Argument[3]; ReturnValue.MapValue; value; manual | -| 295 | Summary: java.util; Properties; true; setProperty; (String,String); ; Argument[1]; Argument[this].MapValue; value; manual | -| 296 | Summary: org.apache.hc.core5.http; HttpHost; true; HttpHost; (String); ; Argument[0]; Argument[this]; taint; hq-manual | -| 297 | Summary: org.apache.http.message; BasicRequestLine; false; BasicRequestLine; ; ; Argument[1]; Argument[this]; taint; manual | +| 289 | Summary: java.util; List; false; of; (Object); ; Argument[0]; ReturnValue.Element; value; manual | +| 290 | Summary: java.util; List; true; get; (int); ; Argument[this].Element; ReturnValue; value; manual | +| 291 | Summary: java.util; Map; false; of; ; ; Argument[1]; ReturnValue.MapValue; value; manual | +| 292 | Summary: java.util; Map; false; of; ; ; Argument[3]; ReturnValue.MapValue; value; manual | +| 293 | Summary: java.util; Properties; true; setProperty; (String,String); ; Argument[1]; Argument[this].MapValue; value; manual | +| 294 | Summary: org.apache.hc.core5.http; HttpHost; true; HttpHost; (String); ; Argument[0]; Argument[this]; taint; hq-manual | +| 295 | Summary: org.apache.http.message; BasicRequestLine; false; BasicRequestLine; ; ; Argument[1]; Argument[this]; taint; manual | nodes | ApacheHttpSSRF.java:27:27:27:53 | getParameter(...) : String | semmle.label | getParameter(...) : String | | ApacheHttpSSRF.java:28:23:28:35 | new URI(...) : URI | semmle.label | new URI(...) : URI | @@ -1846,16 +1831,6 @@ nodes | SanitizationTests.java:123:60:123:79 | new URI(...) : URI | semmle.label | new URI(...) : URI | | SanitizationTests.java:123:68:123:78 | unsafeUri10 : String | semmle.label | unsafeUri10 : String | | SanitizationTests.java:124:25:124:33 | unsafer10 | semmle.label | unsafer10 | -| SanitizationTests.java:145:30:145:58 | getParameter(...) : String | semmle.label | getParameter(...) : String | -| SanitizationTests.java:146:31:146:54 | matcher(...) : Matcher | semmle.label | matcher(...) : Matcher | -| SanitizationTests.java:146:47:146:53 | param13 : String | semmle.label | param13 : String | -| SanitizationTests.java:150:36:150:84 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | -| SanitizationTests.java:150:36:150:92 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | -| SanitizationTests.java:150:59:150:83 | new URI(...) | semmle.label | new URI(...) | -| SanitizationTests.java:150:59:150:83 | new URI(...) : URI | semmle.label | new URI(...) : URI | -| SanitizationTests.java:150:67:150:73 | matcher : Matcher | semmle.label | matcher : Matcher | -| SanitizationTests.java:150:67:150:82 | group(...) : String | semmle.label | group(...) : String | -| SanitizationTests.java:151:29:151:32 | r13b | semmle.label | r13b | | SanitizationTests.java:177:31:177:114 | newBuilder(...) : Builder | semmle.label | newBuilder(...) : Builder | | SanitizationTests.java:177:31:177:122 | build(...) : HttpRequest | semmle.label | build(...) : HttpRequest | | SanitizationTests.java:177:54:177:113 | new URI(...) | semmle.label | new URI(...) | diff --git a/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java b/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java index 55049c834e7d..f14158de0d1a 100644 --- a/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java +++ b/java/ql/test/query-tests/security/CWE-918/SanitizationTests.java @@ -142,13 +142,13 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response) } Pattern pattern = Pattern.compile("([a-zA-Z0-9_-]+)"); - String param13 = request.getParameter("uri13"); // $ SPURIOUS: Source + String param13 = request.getParameter("uri13"); Matcher matcher = pattern.matcher(param13); if (matcher.matches()) { HttpRequest r13a = HttpRequest.newBuilder(new URI(param13)).build(); client.send(r13a, null); - HttpRequest r13b = HttpRequest.newBuilder(new URI(matcher.group(1))).build(); // $ SPURIOUS: Alert - client.send(r13b, null); // $ SPURIOUS: Alert + HttpRequest r13b = HttpRequest.newBuilder(new URI(matcher.group(1))).build(); + client.send(r13b, null); } // GOOD: sanitisation by @Pattern annotation on a field From d6b71a346e498ec07621dbcbe420405d5109bb48 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sun, 15 Feb 2026 14:37:16 +0000 Subject: [PATCH 419/433] Extend RegexMatch framework to allow for MatcherMatchesCall edge case --- java/ql/lib/semmle/code/java/Concepts.qll | 6 ++++++ .../lib/semmle/code/java/frameworks/Regex.qll | 13 +++++++++++++ .../semmle/code/java/security/Sanitizers.qll | 19 +++---------------- 3 files changed, 22 insertions(+), 16 deletions(-) diff --git a/java/ql/lib/semmle/code/java/Concepts.qll b/java/ql/lib/semmle/code/java/Concepts.qll index 8f1d5e4fa69c..7ed61223ea83 100644 --- a/java/ql/lib/semmle/code/java/Concepts.qll +++ b/java/ql/lib/semmle/code/java/Concepts.qll @@ -33,6 +33,9 @@ class RegexMatch extends Expr instanceof RegexMatch::Range { /** Gets an expression for the string to be searched or matched against. */ Expr getString() { result = super.getString() } + /** Gets an expression to be sanitized. */ + Expr getASanitizedExpr() { result = [this.getString(), super.getAdditionalSanitizedExpr()] } + /** * Gets the name of this regex match, typically the name of an executing * method. This is used for nice alert messages and should include the @@ -59,6 +62,9 @@ module RegexMatch { /** Gets an expression for the string to be searched or matched against. */ abstract Expr getString(); + /** Gets an additional expression to be sanitized, if any. */ + Expr getAdditionalSanitizedExpr() { none() } + /** * Gets the name of this regex match, typically the name of an executing * method. This is used for nice alert messages and should include the diff --git a/java/ql/lib/semmle/code/java/frameworks/Regex.qll b/java/ql/lib/semmle/code/java/frameworks/Regex.qll index 2d689da1fcfe..83d7336a341a 100644 --- a/java/ql/lib/semmle/code/java/frameworks/Regex.qll +++ b/java/ql/lib/semmle/code/java/frameworks/Regex.qll @@ -118,5 +118,18 @@ class MatcherMatchesCall extends MethodCall, RegexMatch::Range { override Expr getString() { result = this.getPatternMatcherCall().getArgument(0) } + override Expr getAdditionalSanitizedExpr() { + // Special case for MatcherMatchesCall. Consider the following code: + // + // Matcher matcher = Pattern.compile(regexp).matcher(taintedInput); + // if (matcher.matches()) { + // sink(matcher.group(1)); + // } + // + // Even though the string is `taintedInput`, we also want to sanitize + // `matcher` as it can be used to get substrings of `taintedInput`. + result = this.getQualifier() + } + override string getName() { result = "Matcher.matches" } } diff --git a/java/ql/lib/semmle/code/java/security/Sanitizers.qll b/java/ql/lib/semmle/code/java/security/Sanitizers.qll index 8bbd8863010d..e00071da2d8c 100644 --- a/java/ql/lib/semmle/code/java/security/Sanitizers.qll +++ b/java/ql/lib/semmle/code/java/security/Sanitizers.qll @@ -43,22 +43,9 @@ class SimpleTypeSanitizer extends DataFlow::Node { predicate regexpMatchGuardChecks(Guard guard, Expr e, boolean branch) { exists(RegexMatch rm | not rm instanceof Annotation | guard = rm and - ( - e = rm.getString() - or - // Special case for MatcherMatchesCall. Consider the following code: - // - // Matcher matcher = Pattern.compile(regexp).matcher(taintedInput); - // if (matcher.matches()) { - // sink(matcher.group(1)); - // } - // - // Even though the string is `taintedInput`, we also want to sanitize - // `matcher` as it can be used to get substrings of `taintedInput`. - e = rm.(MatcherMatchesCall).getQualifier() - ) - ) and - branch = true + e = rm.getASanitizedExpr() and + branch = true + ) } /** From 16ddb5658fab4029f9b837493d14d0af03ee3c39 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 14 Feb 2026 15:19:09 +0000 Subject: [PATCH 420/433] Small refactor for stylistic consistency --- java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll b/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll index b71776ba0150..517f55fcc868 100644 --- a/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll +++ b/java/ql/lib/semmle/code/java/frameworks/JavaxAnnotations.qll @@ -188,7 +188,7 @@ class PatternAnnotation extends Annotation, RegexMatch::Range { result.(MethodCall).getMethod().(GetterMethod).getField() = this.getAnnotatedElement() or // Annotation on parameter - value of parameter will match regexp - result = this.getAnnotatedElement().(Parameter).getAnAccess().(VarRead) + result.(VarRead).getVariable().(Parameter) = this.getAnnotatedElement() or // Annotation on method - return value of method will match regexp result.(Call).getCallee() = this.getAnnotatedElement() From 84be8517bbdbf16ac2089fd6f206f120875a0ff5 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 16 Feb 2026 09:30:56 +0000 Subject: [PATCH 421/433] Update cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll index 19bed4c97229..90f6a8272558 100644 --- a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll +++ b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll @@ -512,7 +512,7 @@ private module BoundsEstimate { */ float getBoundsLimit() { // This limit is arbitrary, but low enough that it prevents timeouts on - // specific observed customer databases (and the in the tests). + // specific observed customer databases (and in the tests). result = 2.0.pow(29) } From bfbb2eef6c75e426d25f3a998986ae4484addb67 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 16 Feb 2026 09:38:15 +0000 Subject: [PATCH 422/433] C++: Add a test showing that we infer a lower and upper bound for parameters of enum types. --- .../SimpleRangeAnalysis/lowerBound.expected | 1 + .../SimpleRangeAnalysis/nrOfBounds.expected | 7 +++++++ .../rangeanalysis/SimpleRangeAnalysis/test.c | 12 ++++++++++++ .../SimpleRangeAnalysis/upperBound.expected | 1 + 4 files changed, 21 insertions(+) diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected index d1daa65e0f02..b5aec1e8328d 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected @@ -1086,6 +1086,7 @@ | test.c:970:12:970:12 | y | 256 | | test.c:971:9:971:9 | x | 2147483647 | | test.c:972:9:972:9 | y | 256 | +| test.c:985:7:985:7 | e | -2147483648 | | test.cpp:10:7:10:7 | b | -2147483648 | | test.cpp:11:5:11:5 | x | -2147483648 | | test.cpp:13:10:13:10 | x | -2147483648 | diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected index 8a02673e988a..050b67f3350c 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected @@ -4937,6 +4937,13 @@ estimateNrOfBounds | test.c:970:18:970:20 | 512 | 1.0 | | test.c:971:9:971:9 | x | 1.0 | | test.c:972:9:972:9 | y | 1.0 | +| test.c:977:9:977:11 | 1 | 1.0 | +| test.c:978:9:978:11 | 2 | 1.0 | +| test.c:979:9:979:11 | 4 | 1.0 | +| test.c:980:9:980:11 | 8 | 1.0 | +| test.c:981:9:981:12 | 16 | 1.0 | +| test.c:985:7:985:7 | (int)... | 1.0 | +| test.c:985:7:985:7 | e | 1.0 | | test.cpp:9:11:9:12 | - ... | 1.0 | | test.cpp:9:12:9:12 | 1 | 1.0 | | test.cpp:10:7:10:7 | (bool)... | 1.0 | diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test.c b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test.c index d394eb637ab1..71f28e8f605c 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test.c +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test.c @@ -972,3 +972,15 @@ void test_overflow() { out(y); } } + +enum MY_ENUM_2 { + A = 0x1, + B = 0x2, + C = 0x4, + D = 0x8, + E = 0x10 +}; + +void test_enum(enum MY_ENUM_2 e) { + out(e); +} \ No newline at end of file diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected index a483f2cba939..e414265ca391 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected @@ -1086,6 +1086,7 @@ | test.c:970:12:970:12 | y | 256 | | test.c:971:9:971:9 | x | 2147483647 | | test.c:972:9:972:9 | y | 256 | +| test.c:985:7:985:7 | e | 2147483647 | | test.cpp:10:7:10:7 | b | 2147483647 | | test.cpp:11:5:11:5 | x | 2147483647 | | test.cpp:13:10:13:10 | x | 2147483647 | From 5ccd61ac97b222039c1053ab99a46d2c00ef4427 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Mon, 16 Feb 2026 09:49:31 +0000 Subject: [PATCH 423/433] C++: Respond to review comments. --- .../SimpleRangeAnalysis/lowerBound.expected | 122 +-- .../SimpleRangeAnalysis/nrOfBounds.expected | 782 +++++++++--------- .../SimpleRangeAnalysis/nrOfBounds.ql | 19 +- ...ssing_bounds.cpp => test_nr_of_bounds.cpp} | 0 .../SimpleRangeAnalysis/upperBound.expected | 122 +-- 5 files changed, 528 insertions(+), 517 deletions(-) rename cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/{missing_bounds.cpp => test_nr_of_bounds.cpp} (100%) diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected index b5aec1e8328d..6bb1f192e1df 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/lowerBound.expected @@ -17,67 +17,6 @@ | minmax.c:26:37:26:37 | x | 1 | | minmax.c:26:40:26:40 | y | 2 | | minmax.c:26:43:26:43 | z | 0 | -| missing_bounds.cpp:40:5:40:20 | x | 0 | -| missing_bounds.cpp:40:5:40:20 | x | 0 | -| missing_bounds.cpp:41:5:41:20 | x | 0 | -| missing_bounds.cpp:41:5:41:20 | x | 0 | -| missing_bounds.cpp:42:5:42:20 | x | 0 | -| missing_bounds.cpp:42:5:42:20 | x | 0 | -| missing_bounds.cpp:43:5:43:20 | x | 0 | -| missing_bounds.cpp:43:5:43:20 | x | 0 | -| missing_bounds.cpp:44:5:44:20 | x | 0 | -| missing_bounds.cpp:44:5:44:20 | x | 0 | -| missing_bounds.cpp:45:5:45:20 | x | 0 | -| missing_bounds.cpp:45:5:45:20 | x | 0 | -| missing_bounds.cpp:46:5:46:20 | x | 0 | -| missing_bounds.cpp:46:5:46:20 | x | 0 | -| missing_bounds.cpp:47:5:47:20 | x | 0 | -| missing_bounds.cpp:47:5:47:20 | x | 0 | -| missing_bounds.cpp:48:5:48:20 | x | 0 | -| missing_bounds.cpp:48:5:48:20 | x | 0 | -| missing_bounds.cpp:49:5:49:20 | x | 0 | -| missing_bounds.cpp:49:5:49:20 | x | 0 | -| missing_bounds.cpp:50:5:50:20 | x | 0 | -| missing_bounds.cpp:50:5:50:20 | x | 0 | -| missing_bounds.cpp:51:5:51:20 | x | 0 | -| missing_bounds.cpp:51:5:51:20 | x | 0 | -| missing_bounds.cpp:52:5:52:20 | x | 0 | -| missing_bounds.cpp:52:5:52:20 | x | 0 | -| missing_bounds.cpp:53:5:53:20 | x | 0 | -| missing_bounds.cpp:53:5:53:20 | x | 0 | -| missing_bounds.cpp:54:5:54:20 | x | 0 | -| missing_bounds.cpp:54:5:54:20 | x | 0 | -| missing_bounds.cpp:55:5:55:20 | x | 0 | -| missing_bounds.cpp:55:5:55:20 | x | 0 | -| missing_bounds.cpp:56:5:56:20 | x | 0 | -| missing_bounds.cpp:56:5:56:20 | x | 0 | -| missing_bounds.cpp:57:5:57:20 | x | 0 | -| missing_bounds.cpp:57:5:57:20 | x | 0 | -| missing_bounds.cpp:58:5:58:20 | x | 0 | -| missing_bounds.cpp:58:5:58:20 | x | 0 | -| missing_bounds.cpp:59:5:59:20 | x | 0 | -| missing_bounds.cpp:59:5:59:20 | x | 0 | -| missing_bounds.cpp:60:5:60:20 | x | 0 | -| missing_bounds.cpp:60:5:60:20 | x | 0 | -| missing_bounds.cpp:61:5:61:20 | x | 0 | -| missing_bounds.cpp:61:5:61:20 | x | 0 | -| missing_bounds.cpp:62:5:62:20 | x | 0 | -| missing_bounds.cpp:62:5:62:20 | x | 0 | -| missing_bounds.cpp:63:5:63:20 | x | 0 | -| missing_bounds.cpp:63:5:63:20 | x | 0 | -| missing_bounds.cpp:64:5:64:20 | x | 0 | -| missing_bounds.cpp:64:5:64:20 | x | 0 | -| missing_bounds.cpp:65:5:65:21 | x | 0 | -| missing_bounds.cpp:65:5:65:21 | x | 0 | -| missing_bounds.cpp:66:5:66:21 | x | 0 | -| missing_bounds.cpp:66:5:66:21 | x | 0 | -| missing_bounds.cpp:67:5:67:21 | x | 0 | -| missing_bounds.cpp:67:5:67:21 | x | 0 | -| missing_bounds.cpp:68:5:68:21 | x | 0 | -| missing_bounds.cpp:68:5:68:21 | x | 0 | -| missing_bounds.cpp:69:5:69:21 | x | 0 | -| missing_bounds.cpp:69:5:69:21 | x | 0 | -| missing_bounds.cpp:72:12:72:12 | x | 0 | | test.c:8:5:8:9 | count | -2147483648 | | test.c:8:13:8:17 | count | -2147483648 | | test.c:10:10:10:14 | count | -2147483648 | @@ -1155,3 +1094,64 @@ | test.cpp:122:4:122:4 | n | 0 | | test.cpp:122:8:122:8 | n | 0 | | test.cpp:122:12:122:12 | n | 1 | +| test_nr_of_bounds.cpp:40:5:40:20 | x | 0 | +| test_nr_of_bounds.cpp:40:5:40:20 | x | 0 | +| test_nr_of_bounds.cpp:41:5:41:20 | x | 0 | +| test_nr_of_bounds.cpp:41:5:41:20 | x | 0 | +| test_nr_of_bounds.cpp:42:5:42:20 | x | 0 | +| test_nr_of_bounds.cpp:42:5:42:20 | x | 0 | +| test_nr_of_bounds.cpp:43:5:43:20 | x | 0 | +| test_nr_of_bounds.cpp:43:5:43:20 | x | 0 | +| test_nr_of_bounds.cpp:44:5:44:20 | x | 0 | +| test_nr_of_bounds.cpp:44:5:44:20 | x | 0 | +| test_nr_of_bounds.cpp:45:5:45:20 | x | 0 | +| test_nr_of_bounds.cpp:45:5:45:20 | x | 0 | +| test_nr_of_bounds.cpp:46:5:46:20 | x | 0 | +| test_nr_of_bounds.cpp:46:5:46:20 | x | 0 | +| test_nr_of_bounds.cpp:47:5:47:20 | x | 0 | +| test_nr_of_bounds.cpp:47:5:47:20 | x | 0 | +| test_nr_of_bounds.cpp:48:5:48:20 | x | 0 | +| test_nr_of_bounds.cpp:48:5:48:20 | x | 0 | +| test_nr_of_bounds.cpp:49:5:49:20 | x | 0 | +| test_nr_of_bounds.cpp:49:5:49:20 | x | 0 | +| test_nr_of_bounds.cpp:50:5:50:20 | x | 0 | +| test_nr_of_bounds.cpp:50:5:50:20 | x | 0 | +| test_nr_of_bounds.cpp:51:5:51:20 | x | 0 | +| test_nr_of_bounds.cpp:51:5:51:20 | x | 0 | +| test_nr_of_bounds.cpp:52:5:52:20 | x | 0 | +| test_nr_of_bounds.cpp:52:5:52:20 | x | 0 | +| test_nr_of_bounds.cpp:53:5:53:20 | x | 0 | +| test_nr_of_bounds.cpp:53:5:53:20 | x | 0 | +| test_nr_of_bounds.cpp:54:5:54:20 | x | 0 | +| test_nr_of_bounds.cpp:54:5:54:20 | x | 0 | +| test_nr_of_bounds.cpp:55:5:55:20 | x | 0 | +| test_nr_of_bounds.cpp:55:5:55:20 | x | 0 | +| test_nr_of_bounds.cpp:56:5:56:20 | x | 0 | +| test_nr_of_bounds.cpp:56:5:56:20 | x | 0 | +| test_nr_of_bounds.cpp:57:5:57:20 | x | 0 | +| test_nr_of_bounds.cpp:57:5:57:20 | x | 0 | +| test_nr_of_bounds.cpp:58:5:58:20 | x | 0 | +| test_nr_of_bounds.cpp:58:5:58:20 | x | 0 | +| test_nr_of_bounds.cpp:59:5:59:20 | x | 0 | +| test_nr_of_bounds.cpp:59:5:59:20 | x | 0 | +| test_nr_of_bounds.cpp:60:5:60:20 | x | 0 | +| test_nr_of_bounds.cpp:60:5:60:20 | x | 0 | +| test_nr_of_bounds.cpp:61:5:61:20 | x | 0 | +| test_nr_of_bounds.cpp:61:5:61:20 | x | 0 | +| test_nr_of_bounds.cpp:62:5:62:20 | x | 0 | +| test_nr_of_bounds.cpp:62:5:62:20 | x | 0 | +| test_nr_of_bounds.cpp:63:5:63:20 | x | 0 | +| test_nr_of_bounds.cpp:63:5:63:20 | x | 0 | +| test_nr_of_bounds.cpp:64:5:64:20 | x | 0 | +| test_nr_of_bounds.cpp:64:5:64:20 | x | 0 | +| test_nr_of_bounds.cpp:65:5:65:21 | x | 0 | +| test_nr_of_bounds.cpp:65:5:65:21 | x | 0 | +| test_nr_of_bounds.cpp:66:5:66:21 | x | 0 | +| test_nr_of_bounds.cpp:66:5:66:21 | x | 0 | +| test_nr_of_bounds.cpp:67:5:67:21 | x | 0 | +| test_nr_of_bounds.cpp:67:5:67:21 | x | 0 | +| test_nr_of_bounds.cpp:68:5:68:21 | x | 0 | +| test_nr_of_bounds.cpp:68:5:68:21 | x | 0 | +| test_nr_of_bounds.cpp:69:5:69:21 | x | 0 | +| test_nr_of_bounds.cpp:69:5:69:21 | x | 0 | +| test_nr_of_bounds.cpp:72:12:72:12 | x | 0 | diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected index 050b67f3350c..b46aebbbf646 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.expected @@ -37,397 +37,6 @@ estimateNrOfBounds | minmax.c:26:37:26:37 | x | 1.0 | | minmax.c:26:40:26:40 | y | 1.0 | | minmax.c:26:43:26:43 | z | 2.0 | -| missing_bounds.cpp:2:9:2:11 | 1 | 1.0 | -| missing_bounds.cpp:3:9:3:11 | 2 | 1.0 | -| missing_bounds.cpp:4:9:4:11 | 4 | 1.0 | -| missing_bounds.cpp:5:9:5:11 | 8 | 1.0 | -| missing_bounds.cpp:6:9:6:12 | 16 | 1.0 | -| missing_bounds.cpp:7:9:7:12 | 32 | 1.0 | -| missing_bounds.cpp:8:9:8:12 | 64 | 1.0 | -| missing_bounds.cpp:9:9:9:12 | 128 | 1.0 | -| missing_bounds.cpp:10:9:10:13 | 256 | 1.0 | -| missing_bounds.cpp:11:9:11:13 | 512 | 1.0 | -| missing_bounds.cpp:12:9:12:13 | 1024 | 1.0 | -| missing_bounds.cpp:13:9:13:13 | 2048 | 1.0 | -| missing_bounds.cpp:14:9:14:14 | 4096 | 1.0 | -| missing_bounds.cpp:15:9:15:14 | 8192 | 1.0 | -| missing_bounds.cpp:16:9:16:14 | 16384 | 1.0 | -| missing_bounds.cpp:17:9:17:14 | 32768 | 1.0 | -| missing_bounds.cpp:18:9:18:15 | 65536 | 1.0 | -| missing_bounds.cpp:19:9:19:15 | 131072 | 1.0 | -| missing_bounds.cpp:20:9:20:15 | 262144 | 1.0 | -| missing_bounds.cpp:21:9:21:15 | 524288 | 1.0 | -| missing_bounds.cpp:22:9:22:16 | 1048576 | 1.0 | -| missing_bounds.cpp:23:9:23:16 | 2097152 | 1.0 | -| missing_bounds.cpp:24:9:24:16 | 4194304 | 1.0 | -| missing_bounds.cpp:25:9:25:16 | 8388608 | 1.0 | -| missing_bounds.cpp:26:9:26:17 | 16777216 | 1.0 | -| missing_bounds.cpp:27:10:27:18 | 33554432 | 1.0 | -| missing_bounds.cpp:28:10:28:18 | 67108864 | 1.0 | -| missing_bounds.cpp:29:10:29:18 | 134217728 | 1.0 | -| missing_bounds.cpp:30:10:30:19 | 268435456 | 1.0 | -| missing_bounds.cpp:31:10:31:19 | 536870912 | 1.0 | -| missing_bounds.cpp:40:5:40:19 | ... & ... | 1.0 | -| missing_bounds.cpp:40:5:40:19 | ... -= ... | 1.0 | -| missing_bounds.cpp:40:5:40:19 | ... == ... | 1.0 | -| missing_bounds.cpp:40:5:40:20 | (...) | 1.0 | -| missing_bounds.cpp:40:5:40:20 | x | 1.0 | -| missing_bounds.cpp:40:5:40:20 | x | 1.0 | -| missing_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:40:19:40:19 | A | 1.0 | -| missing_bounds.cpp:40:19:40:19 | A | 1.0 | -| missing_bounds.cpp:40:19:40:19 | A | 1.0 | -| missing_bounds.cpp:41:5:41:19 | ... & ... | 2.0 | -| missing_bounds.cpp:41:5:41:19 | ... -= ... | 2.0 | -| missing_bounds.cpp:41:5:41:19 | ... == ... | 1.0 | -| missing_bounds.cpp:41:5:41:20 | (...) | 2.0 | -| missing_bounds.cpp:41:5:41:20 | x | 2.0 | -| missing_bounds.cpp:41:5:41:20 | x | 2.0 | -| missing_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:41:19:41:19 | B | 1.0 | -| missing_bounds.cpp:41:19:41:19 | B | 1.0 | -| missing_bounds.cpp:41:19:41:19 | B | 1.0 | -| missing_bounds.cpp:42:5:42:19 | ... & ... | 4.0 | -| missing_bounds.cpp:42:5:42:19 | ... -= ... | 4.0 | -| missing_bounds.cpp:42:5:42:19 | ... == ... | 1.0 | -| missing_bounds.cpp:42:5:42:20 | (...) | 4.0 | -| missing_bounds.cpp:42:5:42:20 | x | 4.0 | -| missing_bounds.cpp:42:5:42:20 | x | 4.0 | -| missing_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:42:19:42:19 | C | 1.0 | -| missing_bounds.cpp:42:19:42:19 | C | 1.0 | -| missing_bounds.cpp:42:19:42:19 | C | 1.0 | -| missing_bounds.cpp:43:5:43:19 | ... & ... | 8.0 | -| missing_bounds.cpp:43:5:43:19 | ... -= ... | 8.0 | -| missing_bounds.cpp:43:5:43:19 | ... == ... | 1.0 | -| missing_bounds.cpp:43:5:43:20 | (...) | 8.0 | -| missing_bounds.cpp:43:5:43:20 | x | 8.0 | -| missing_bounds.cpp:43:5:43:20 | x | 8.0 | -| missing_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:43:19:43:19 | D | 1.0 | -| missing_bounds.cpp:43:19:43:19 | D | 1.0 | -| missing_bounds.cpp:43:19:43:19 | D | 1.0 | -| missing_bounds.cpp:44:5:44:19 | ... & ... | 16.0 | -| missing_bounds.cpp:44:5:44:19 | ... -= ... | 16.0 | -| missing_bounds.cpp:44:5:44:19 | ... == ... | 1.0 | -| missing_bounds.cpp:44:5:44:20 | (...) | 16.0 | -| missing_bounds.cpp:44:5:44:20 | x | 16.0 | -| missing_bounds.cpp:44:5:44:20 | x | 16.0 | -| missing_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:44:19:44:19 | E | 1.0 | -| missing_bounds.cpp:44:19:44:19 | E | 1.0 | -| missing_bounds.cpp:44:19:44:19 | E | 1.0 | -| missing_bounds.cpp:45:5:45:19 | ... & ... | 32.0 | -| missing_bounds.cpp:45:5:45:19 | ... -= ... | 32.0 | -| missing_bounds.cpp:45:5:45:19 | ... == ... | 1.0 | -| missing_bounds.cpp:45:5:45:20 | (...) | 32.0 | -| missing_bounds.cpp:45:5:45:20 | x | 32.0 | -| missing_bounds.cpp:45:5:45:20 | x | 32.0 | -| missing_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:45:19:45:19 | F | 1.0 | -| missing_bounds.cpp:45:19:45:19 | F | 1.0 | -| missing_bounds.cpp:45:19:45:19 | F | 1.0 | -| missing_bounds.cpp:46:5:46:19 | ... & ... | 64.0 | -| missing_bounds.cpp:46:5:46:19 | ... -= ... | 64.0 | -| missing_bounds.cpp:46:5:46:19 | ... == ... | 1.0 | -| missing_bounds.cpp:46:5:46:20 | (...) | 64.0 | -| missing_bounds.cpp:46:5:46:20 | x | 64.0 | -| missing_bounds.cpp:46:5:46:20 | x | 64.0 | -| missing_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:46:19:46:19 | G | 1.0 | -| missing_bounds.cpp:46:19:46:19 | G | 1.0 | -| missing_bounds.cpp:46:19:46:19 | G | 1.0 | -| missing_bounds.cpp:47:5:47:19 | ... & ... | 128.0 | -| missing_bounds.cpp:47:5:47:19 | ... -= ... | 128.0 | -| missing_bounds.cpp:47:5:47:19 | ... == ... | 1.0 | -| missing_bounds.cpp:47:5:47:20 | (...) | 128.0 | -| missing_bounds.cpp:47:5:47:20 | x | 128.0 | -| missing_bounds.cpp:47:5:47:20 | x | 128.0 | -| missing_bounds.cpp:47:19:47:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:47:19:47:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:47:19:47:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:47:19:47:19 | H | 1.0 | -| missing_bounds.cpp:47:19:47:19 | H | 1.0 | -| missing_bounds.cpp:47:19:47:19 | H | 1.0 | -| missing_bounds.cpp:48:5:48:19 | ... & ... | 256.0 | -| missing_bounds.cpp:48:5:48:19 | ... -= ... | 256.0 | -| missing_bounds.cpp:48:5:48:19 | ... == ... | 1.0 | -| missing_bounds.cpp:48:5:48:20 | (...) | 256.0 | -| missing_bounds.cpp:48:5:48:20 | x | 256.0 | -| missing_bounds.cpp:48:5:48:20 | x | 256.0 | -| missing_bounds.cpp:48:19:48:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:48:19:48:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:48:19:48:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:48:19:48:19 | I | 1.0 | -| missing_bounds.cpp:48:19:48:19 | I | 1.0 | -| missing_bounds.cpp:48:19:48:19 | I | 1.0 | -| missing_bounds.cpp:49:5:49:19 | ... & ... | 512.0 | -| missing_bounds.cpp:49:5:49:19 | ... -= ... | 512.0 | -| missing_bounds.cpp:49:5:49:19 | ... == ... | 1.0 | -| missing_bounds.cpp:49:5:49:20 | (...) | 512.0 | -| missing_bounds.cpp:49:5:49:20 | x | 512.0 | -| missing_bounds.cpp:49:5:49:20 | x | 512.0 | -| missing_bounds.cpp:49:19:49:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:49:19:49:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:49:19:49:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:49:19:49:19 | J | 1.0 | -| missing_bounds.cpp:49:19:49:19 | J | 1.0 | -| missing_bounds.cpp:49:19:49:19 | J | 1.0 | -| missing_bounds.cpp:50:5:50:19 | ... & ... | 1024.0 | -| missing_bounds.cpp:50:5:50:19 | ... -= ... | 1024.0 | -| missing_bounds.cpp:50:5:50:19 | ... == ... | 1.0 | -| missing_bounds.cpp:50:5:50:20 | (...) | 1024.0 | -| missing_bounds.cpp:50:5:50:20 | x | 1024.0 | -| missing_bounds.cpp:50:5:50:20 | x | 1024.0 | -| missing_bounds.cpp:50:19:50:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:50:19:50:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:50:19:50:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:50:19:50:19 | L | 1.0 | -| missing_bounds.cpp:50:19:50:19 | L | 1.0 | -| missing_bounds.cpp:50:19:50:19 | L | 1.0 | -| missing_bounds.cpp:51:5:51:19 | ... & ... | 2048.0 | -| missing_bounds.cpp:51:5:51:19 | ... -= ... | 2048.0 | -| missing_bounds.cpp:51:5:51:19 | ... == ... | 1.0 | -| missing_bounds.cpp:51:5:51:20 | (...) | 2048.0 | -| missing_bounds.cpp:51:5:51:20 | x | 2048.0 | -| missing_bounds.cpp:51:5:51:20 | x | 2048.0 | -| missing_bounds.cpp:51:19:51:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:51:19:51:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:51:19:51:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:51:19:51:19 | M | 1.0 | -| missing_bounds.cpp:51:19:51:19 | M | 1.0 | -| missing_bounds.cpp:51:19:51:19 | M | 1.0 | -| missing_bounds.cpp:52:5:52:19 | ... & ... | 4096.0 | -| missing_bounds.cpp:52:5:52:19 | ... -= ... | 4096.0 | -| missing_bounds.cpp:52:5:52:19 | ... == ... | 1.0 | -| missing_bounds.cpp:52:5:52:20 | (...) | 4096.0 | -| missing_bounds.cpp:52:5:52:20 | x | 4096.0 | -| missing_bounds.cpp:52:5:52:20 | x | 4096.0 | -| missing_bounds.cpp:52:19:52:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:52:19:52:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:52:19:52:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:52:19:52:19 | N | 1.0 | -| missing_bounds.cpp:52:19:52:19 | N | 1.0 | -| missing_bounds.cpp:52:19:52:19 | N | 1.0 | -| missing_bounds.cpp:53:5:53:19 | ... & ... | 8192.0 | -| missing_bounds.cpp:53:5:53:19 | ... -= ... | 8192.0 | -| missing_bounds.cpp:53:5:53:19 | ... == ... | 1.0 | -| missing_bounds.cpp:53:5:53:20 | (...) | 8192.0 | -| missing_bounds.cpp:53:5:53:20 | x | 8192.0 | -| missing_bounds.cpp:53:5:53:20 | x | 8192.0 | -| missing_bounds.cpp:53:19:53:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:53:19:53:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:53:19:53:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:53:19:53:19 | O | 1.0 | -| missing_bounds.cpp:53:19:53:19 | O | 1.0 | -| missing_bounds.cpp:53:19:53:19 | O | 1.0 | -| missing_bounds.cpp:54:5:54:19 | ... & ... | 16384.0 | -| missing_bounds.cpp:54:5:54:19 | ... -= ... | 16384.0 | -| missing_bounds.cpp:54:5:54:19 | ... == ... | 1.0 | -| missing_bounds.cpp:54:5:54:20 | (...) | 16384.0 | -| missing_bounds.cpp:54:5:54:20 | x | 16384.0 | -| missing_bounds.cpp:54:5:54:20 | x | 16384.0 | -| missing_bounds.cpp:54:19:54:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:54:19:54:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:54:19:54:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:54:19:54:19 | P | 1.0 | -| missing_bounds.cpp:54:19:54:19 | P | 1.0 | -| missing_bounds.cpp:54:19:54:19 | P | 1.0 | -| missing_bounds.cpp:55:5:55:19 | ... & ... | 32768.0 | -| missing_bounds.cpp:55:5:55:19 | ... -= ... | 32768.0 | -| missing_bounds.cpp:55:5:55:19 | ... == ... | 1.0 | -| missing_bounds.cpp:55:5:55:20 | (...) | 32768.0 | -| missing_bounds.cpp:55:5:55:20 | x | 32768.0 | -| missing_bounds.cpp:55:5:55:20 | x | 32768.0 | -| missing_bounds.cpp:55:19:55:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:55:19:55:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:55:19:55:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:55:19:55:19 | Q | 1.0 | -| missing_bounds.cpp:55:19:55:19 | Q | 1.0 | -| missing_bounds.cpp:55:19:55:19 | Q | 1.0 | -| missing_bounds.cpp:56:5:56:19 | ... & ... | 65536.0 | -| missing_bounds.cpp:56:5:56:19 | ... -= ... | 65536.0 | -| missing_bounds.cpp:56:5:56:19 | ... == ... | 1.0 | -| missing_bounds.cpp:56:5:56:20 | (...) | 65536.0 | -| missing_bounds.cpp:56:5:56:20 | x | 65536.0 | -| missing_bounds.cpp:56:5:56:20 | x | 65536.0 | -| missing_bounds.cpp:56:19:56:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:56:19:56:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:56:19:56:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:56:19:56:19 | R | 1.0 | -| missing_bounds.cpp:56:19:56:19 | R | 1.0 | -| missing_bounds.cpp:56:19:56:19 | R | 1.0 | -| missing_bounds.cpp:57:5:57:19 | ... & ... | 131072.0 | -| missing_bounds.cpp:57:5:57:19 | ... -= ... | 131072.0 | -| missing_bounds.cpp:57:5:57:19 | ... == ... | 1.0 | -| missing_bounds.cpp:57:5:57:20 | (...) | 131072.0 | -| missing_bounds.cpp:57:5:57:20 | x | 131072.0 | -| missing_bounds.cpp:57:5:57:20 | x | 131072.0 | -| missing_bounds.cpp:57:19:57:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:57:19:57:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:57:19:57:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:57:19:57:19 | S | 1.0 | -| missing_bounds.cpp:57:19:57:19 | S | 1.0 | -| missing_bounds.cpp:57:19:57:19 | S | 1.0 | -| missing_bounds.cpp:58:5:58:19 | ... & ... | 262144.0 | -| missing_bounds.cpp:58:5:58:19 | ... -= ... | 262144.0 | -| missing_bounds.cpp:58:5:58:19 | ... == ... | 1.0 | -| missing_bounds.cpp:58:5:58:20 | (...) | 262144.0 | -| missing_bounds.cpp:58:5:58:20 | x | 262144.0 | -| missing_bounds.cpp:58:5:58:20 | x | 262144.0 | -| missing_bounds.cpp:58:19:58:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:58:19:58:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:58:19:58:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:58:19:58:19 | T | 1.0 | -| missing_bounds.cpp:58:19:58:19 | T | 1.0 | -| missing_bounds.cpp:58:19:58:19 | T | 1.0 | -| missing_bounds.cpp:59:5:59:19 | ... & ... | 524288.0 | -| missing_bounds.cpp:59:5:59:19 | ... -= ... | 524288.0 | -| missing_bounds.cpp:59:5:59:19 | ... == ... | 1.0 | -| missing_bounds.cpp:59:5:59:20 | (...) | 524288.0 | -| missing_bounds.cpp:59:5:59:20 | x | 524288.0 | -| missing_bounds.cpp:59:5:59:20 | x | 524288.0 | -| missing_bounds.cpp:59:19:59:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:59:19:59:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:59:19:59:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:59:19:59:19 | U | 1.0 | -| missing_bounds.cpp:59:19:59:19 | U | 1.0 | -| missing_bounds.cpp:59:19:59:19 | U | 1.0 | -| missing_bounds.cpp:60:5:60:19 | ... & ... | 1048576.0 | -| missing_bounds.cpp:60:5:60:19 | ... -= ... | 1048576.0 | -| missing_bounds.cpp:60:5:60:19 | ... == ... | 1.0 | -| missing_bounds.cpp:60:5:60:20 | (...) | 1048576.0 | -| missing_bounds.cpp:60:5:60:20 | x | 1048576.0 | -| missing_bounds.cpp:60:5:60:20 | x | 1048576.0 | -| missing_bounds.cpp:60:19:60:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:60:19:60:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:60:19:60:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:60:19:60:19 | V | 1.0 | -| missing_bounds.cpp:60:19:60:19 | V | 1.0 | -| missing_bounds.cpp:60:19:60:19 | V | 1.0 | -| missing_bounds.cpp:61:5:61:19 | ... & ... | 2097152.0 | -| missing_bounds.cpp:61:5:61:19 | ... -= ... | 2097152.0 | -| missing_bounds.cpp:61:5:61:19 | ... == ... | 1.0 | -| missing_bounds.cpp:61:5:61:20 | (...) | 2097152.0 | -| missing_bounds.cpp:61:5:61:20 | x | 2097152.0 | -| missing_bounds.cpp:61:5:61:20 | x | 2097152.0 | -| missing_bounds.cpp:61:19:61:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:61:19:61:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:61:19:61:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:61:19:61:19 | W | 1.0 | -| missing_bounds.cpp:61:19:61:19 | W | 1.0 | -| missing_bounds.cpp:61:19:61:19 | W | 1.0 | -| missing_bounds.cpp:62:5:62:19 | ... & ... | 4194304.0 | -| missing_bounds.cpp:62:5:62:19 | ... -= ... | 4194304.0 | -| missing_bounds.cpp:62:5:62:19 | ... == ... | 1.0 | -| missing_bounds.cpp:62:5:62:20 | (...) | 4194304.0 | -| missing_bounds.cpp:62:5:62:20 | x | 4194304.0 | -| missing_bounds.cpp:62:5:62:20 | x | 4194304.0 | -| missing_bounds.cpp:62:19:62:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:62:19:62:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:62:19:62:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:62:19:62:19 | X | 1.0 | -| missing_bounds.cpp:62:19:62:19 | X | 1.0 | -| missing_bounds.cpp:62:19:62:19 | X | 1.0 | -| missing_bounds.cpp:63:5:63:19 | ... & ... | 8388608.0 | -| missing_bounds.cpp:63:5:63:19 | ... -= ... | 8388608.0 | -| missing_bounds.cpp:63:5:63:19 | ... == ... | 1.0 | -| missing_bounds.cpp:63:5:63:20 | (...) | 8388608.0 | -| missing_bounds.cpp:63:5:63:20 | x | 8388608.0 | -| missing_bounds.cpp:63:5:63:20 | x | 8388608.0 | -| missing_bounds.cpp:63:19:63:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:63:19:63:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:63:19:63:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:63:19:63:19 | Y | 1.0 | -| missing_bounds.cpp:63:19:63:19 | Y | 1.0 | -| missing_bounds.cpp:63:19:63:19 | Y | 1.0 | -| missing_bounds.cpp:64:5:64:19 | ... & ... | 1.6777216E7 | -| missing_bounds.cpp:64:5:64:19 | ... -= ... | 1.6777216E7 | -| missing_bounds.cpp:64:5:64:19 | ... == ... | 1.0 | -| missing_bounds.cpp:64:5:64:20 | (...) | 1.6777216E7 | -| missing_bounds.cpp:64:5:64:20 | x | 1.6777216E7 | -| missing_bounds.cpp:64:5:64:20 | x | 1.6777216E7 | -| missing_bounds.cpp:64:19:64:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:64:19:64:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:64:19:64:19 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:64:19:64:19 | Z | 1.0 | -| missing_bounds.cpp:64:19:64:19 | Z | 1.0 | -| missing_bounds.cpp:64:19:64:19 | Z | 1.0 | -| missing_bounds.cpp:65:5:65:20 | ... & ... | 3.3554432E7 | -| missing_bounds.cpp:65:5:65:20 | ... -= ... | 3.3554432E7 | -| missing_bounds.cpp:65:5:65:20 | ... == ... | 1.0 | -| missing_bounds.cpp:65:5:65:21 | (...) | 3.3554432E7 | -| missing_bounds.cpp:65:5:65:21 | x | 3.3554432E7 | -| missing_bounds.cpp:65:5:65:21 | x | 3.3554432E7 | -| missing_bounds.cpp:65:19:65:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:65:19:65:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:65:19:65:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:65:19:65:20 | AA | 1.0 | -| missing_bounds.cpp:65:19:65:20 | AA | 1.0 | -| missing_bounds.cpp:65:19:65:20 | AA | 1.0 | -| missing_bounds.cpp:66:5:66:20 | ... & ... | 6.7108864E7 | -| missing_bounds.cpp:66:5:66:20 | ... -= ... | 6.7108864E7 | -| missing_bounds.cpp:66:5:66:20 | ... == ... | 1.0 | -| missing_bounds.cpp:66:5:66:21 | (...) | 6.7108864E7 | -| missing_bounds.cpp:66:5:66:21 | x | 6.7108864E7 | -| missing_bounds.cpp:66:5:66:21 | x | 6.7108864E7 | -| missing_bounds.cpp:66:19:66:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:66:19:66:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:66:19:66:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:66:19:66:20 | AB | 1.0 | -| missing_bounds.cpp:66:19:66:20 | AB | 1.0 | -| missing_bounds.cpp:66:19:66:20 | AB | 1.0 | -| missing_bounds.cpp:67:5:67:20 | ... & ... | 1.34217728E8 | -| missing_bounds.cpp:67:5:67:20 | ... -= ... | 1.34217728E8 | -| missing_bounds.cpp:67:5:67:20 | ... == ... | 1.0 | -| missing_bounds.cpp:67:5:67:21 | (...) | 1.34217728E8 | -| missing_bounds.cpp:67:5:67:21 | x | 1.34217728E8 | -| missing_bounds.cpp:67:5:67:21 | x | 1.34217728E8 | -| missing_bounds.cpp:67:19:67:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:67:19:67:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:67:19:67:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:67:19:67:20 | AC | 1.0 | -| missing_bounds.cpp:67:19:67:20 | AC | 1.0 | -| missing_bounds.cpp:67:19:67:20 | AC | 1.0 | -| missing_bounds.cpp:68:5:68:20 | ... & ... | 2.68435456E8 | -| missing_bounds.cpp:68:5:68:20 | ... -= ... | 2.68435456E8 | -| missing_bounds.cpp:68:5:68:20 | ... == ... | 1.0 | -| missing_bounds.cpp:68:5:68:21 | (...) | 2.68435456E8 | -| missing_bounds.cpp:68:5:68:21 | x | 2.68435456E8 | -| missing_bounds.cpp:68:5:68:21 | x | 2.68435456E8 | -| missing_bounds.cpp:68:19:68:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:68:19:68:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:68:19:68:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:68:19:68:20 | AD | 1.0 | -| missing_bounds.cpp:68:19:68:20 | AD | 1.0 | -| missing_bounds.cpp:68:19:68:20 | AD | 1.0 | -| missing_bounds.cpp:69:5:69:20 | ... & ... | 5.36870912E8 | -| missing_bounds.cpp:69:5:69:20 | ... -= ... | 5.36870912E8 | -| missing_bounds.cpp:69:5:69:20 | ... == ... | 1.0 | -| missing_bounds.cpp:69:5:69:21 | (...) | 5.36870912E8 | -| missing_bounds.cpp:69:5:69:21 | x | 5.36870912E8 | -| missing_bounds.cpp:69:5:69:21 | x | 5.36870912E8 | -| missing_bounds.cpp:69:19:69:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:69:19:69:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:69:19:69:20 | (unsigned int)... | 1.0 | -| missing_bounds.cpp:69:19:69:20 | AE | 1.0 | -| missing_bounds.cpp:69:19:69:20 | AE | 1.0 | -| missing_bounds.cpp:69:19:69:20 | AE | 1.0 | -| missing_bounds.cpp:72:12:72:12 | x | 1.073741824E9 | | test.c:6:14:6:15 | 0 | 1.0 | | test.c:8:5:8:9 | count | 1.0 | | test.c:8:5:8:19 | ... = ... | 13.0 | @@ -5119,3 +4728,394 @@ estimateNrOfBounds | test.cpp:122:4:122:4 | n | 8.0 | | test.cpp:122:8:122:8 | n | 8.0 | | test.cpp:122:12:122:12 | n | 8.0 | +| test_nr_of_bounds.cpp:2:9:2:11 | 1 | 1.0 | +| test_nr_of_bounds.cpp:3:9:3:11 | 2 | 1.0 | +| test_nr_of_bounds.cpp:4:9:4:11 | 4 | 1.0 | +| test_nr_of_bounds.cpp:5:9:5:11 | 8 | 1.0 | +| test_nr_of_bounds.cpp:6:9:6:12 | 16 | 1.0 | +| test_nr_of_bounds.cpp:7:9:7:12 | 32 | 1.0 | +| test_nr_of_bounds.cpp:8:9:8:12 | 64 | 1.0 | +| test_nr_of_bounds.cpp:9:9:9:12 | 128 | 1.0 | +| test_nr_of_bounds.cpp:10:9:10:13 | 256 | 1.0 | +| test_nr_of_bounds.cpp:11:9:11:13 | 512 | 1.0 | +| test_nr_of_bounds.cpp:12:9:12:13 | 1024 | 1.0 | +| test_nr_of_bounds.cpp:13:9:13:13 | 2048 | 1.0 | +| test_nr_of_bounds.cpp:14:9:14:14 | 4096 | 1.0 | +| test_nr_of_bounds.cpp:15:9:15:14 | 8192 | 1.0 | +| test_nr_of_bounds.cpp:16:9:16:14 | 16384 | 1.0 | +| test_nr_of_bounds.cpp:17:9:17:14 | 32768 | 1.0 | +| test_nr_of_bounds.cpp:18:9:18:15 | 65536 | 1.0 | +| test_nr_of_bounds.cpp:19:9:19:15 | 131072 | 1.0 | +| test_nr_of_bounds.cpp:20:9:20:15 | 262144 | 1.0 | +| test_nr_of_bounds.cpp:21:9:21:15 | 524288 | 1.0 | +| test_nr_of_bounds.cpp:22:9:22:16 | 1048576 | 1.0 | +| test_nr_of_bounds.cpp:23:9:23:16 | 2097152 | 1.0 | +| test_nr_of_bounds.cpp:24:9:24:16 | 4194304 | 1.0 | +| test_nr_of_bounds.cpp:25:9:25:16 | 8388608 | 1.0 | +| test_nr_of_bounds.cpp:26:9:26:17 | 16777216 | 1.0 | +| test_nr_of_bounds.cpp:27:10:27:18 | 33554432 | 1.0 | +| test_nr_of_bounds.cpp:28:10:28:18 | 67108864 | 1.0 | +| test_nr_of_bounds.cpp:29:10:29:18 | 134217728 | 1.0 | +| test_nr_of_bounds.cpp:30:10:30:19 | 268435456 | 1.0 | +| test_nr_of_bounds.cpp:31:10:31:19 | 536870912 | 1.0 | +| test_nr_of_bounds.cpp:40:5:40:19 | ... & ... | 1.0 | +| test_nr_of_bounds.cpp:40:5:40:19 | ... -= ... | 1.0 | +| test_nr_of_bounds.cpp:40:5:40:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:40:5:40:20 | (...) | 1.0 | +| test_nr_of_bounds.cpp:40:5:40:20 | x | 1.0 | +| test_nr_of_bounds.cpp:40:5:40:20 | x | 1.0 | +| test_nr_of_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:40:19:40:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:40:19:40:19 | A | 1.0 | +| test_nr_of_bounds.cpp:40:19:40:19 | A | 1.0 | +| test_nr_of_bounds.cpp:40:19:40:19 | A | 1.0 | +| test_nr_of_bounds.cpp:41:5:41:19 | ... & ... | 2.0 | +| test_nr_of_bounds.cpp:41:5:41:19 | ... -= ... | 2.0 | +| test_nr_of_bounds.cpp:41:5:41:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:41:5:41:20 | (...) | 2.0 | +| test_nr_of_bounds.cpp:41:5:41:20 | x | 2.0 | +| test_nr_of_bounds.cpp:41:5:41:20 | x | 2.0 | +| test_nr_of_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:41:19:41:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:41:19:41:19 | B | 1.0 | +| test_nr_of_bounds.cpp:41:19:41:19 | B | 1.0 | +| test_nr_of_bounds.cpp:41:19:41:19 | B | 1.0 | +| test_nr_of_bounds.cpp:42:5:42:19 | ... & ... | 4.0 | +| test_nr_of_bounds.cpp:42:5:42:19 | ... -= ... | 4.0 | +| test_nr_of_bounds.cpp:42:5:42:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:42:5:42:20 | (...) | 4.0 | +| test_nr_of_bounds.cpp:42:5:42:20 | x | 4.0 | +| test_nr_of_bounds.cpp:42:5:42:20 | x | 4.0 | +| test_nr_of_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:42:19:42:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:42:19:42:19 | C | 1.0 | +| test_nr_of_bounds.cpp:42:19:42:19 | C | 1.0 | +| test_nr_of_bounds.cpp:42:19:42:19 | C | 1.0 | +| test_nr_of_bounds.cpp:43:5:43:19 | ... & ... | 8.0 | +| test_nr_of_bounds.cpp:43:5:43:19 | ... -= ... | 8.0 | +| test_nr_of_bounds.cpp:43:5:43:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:43:5:43:20 | (...) | 8.0 | +| test_nr_of_bounds.cpp:43:5:43:20 | x | 8.0 | +| test_nr_of_bounds.cpp:43:5:43:20 | x | 8.0 | +| test_nr_of_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:43:19:43:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:43:19:43:19 | D | 1.0 | +| test_nr_of_bounds.cpp:43:19:43:19 | D | 1.0 | +| test_nr_of_bounds.cpp:43:19:43:19 | D | 1.0 | +| test_nr_of_bounds.cpp:44:5:44:19 | ... & ... | 16.0 | +| test_nr_of_bounds.cpp:44:5:44:19 | ... -= ... | 16.0 | +| test_nr_of_bounds.cpp:44:5:44:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:44:5:44:20 | (...) | 16.0 | +| test_nr_of_bounds.cpp:44:5:44:20 | x | 16.0 | +| test_nr_of_bounds.cpp:44:5:44:20 | x | 16.0 | +| test_nr_of_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:44:19:44:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:44:19:44:19 | E | 1.0 | +| test_nr_of_bounds.cpp:44:19:44:19 | E | 1.0 | +| test_nr_of_bounds.cpp:44:19:44:19 | E | 1.0 | +| test_nr_of_bounds.cpp:45:5:45:19 | ... & ... | 32.0 | +| test_nr_of_bounds.cpp:45:5:45:19 | ... -= ... | 32.0 | +| test_nr_of_bounds.cpp:45:5:45:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:45:5:45:20 | (...) | 32.0 | +| test_nr_of_bounds.cpp:45:5:45:20 | x | 32.0 | +| test_nr_of_bounds.cpp:45:5:45:20 | x | 32.0 | +| test_nr_of_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:45:19:45:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:45:19:45:19 | F | 1.0 | +| test_nr_of_bounds.cpp:45:19:45:19 | F | 1.0 | +| test_nr_of_bounds.cpp:45:19:45:19 | F | 1.0 | +| test_nr_of_bounds.cpp:46:5:46:19 | ... & ... | 64.0 | +| test_nr_of_bounds.cpp:46:5:46:19 | ... -= ... | 64.0 | +| test_nr_of_bounds.cpp:46:5:46:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:46:5:46:20 | (...) | 64.0 | +| test_nr_of_bounds.cpp:46:5:46:20 | x | 64.0 | +| test_nr_of_bounds.cpp:46:5:46:20 | x | 64.0 | +| test_nr_of_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:46:19:46:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:46:19:46:19 | G | 1.0 | +| test_nr_of_bounds.cpp:46:19:46:19 | G | 1.0 | +| test_nr_of_bounds.cpp:46:19:46:19 | G | 1.0 | +| test_nr_of_bounds.cpp:47:5:47:19 | ... & ... | 128.0 | +| test_nr_of_bounds.cpp:47:5:47:19 | ... -= ... | 128.0 | +| test_nr_of_bounds.cpp:47:5:47:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:47:5:47:20 | (...) | 128.0 | +| test_nr_of_bounds.cpp:47:5:47:20 | x | 128.0 | +| test_nr_of_bounds.cpp:47:5:47:20 | x | 128.0 | +| test_nr_of_bounds.cpp:47:19:47:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:47:19:47:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:47:19:47:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:47:19:47:19 | H | 1.0 | +| test_nr_of_bounds.cpp:47:19:47:19 | H | 1.0 | +| test_nr_of_bounds.cpp:47:19:47:19 | H | 1.0 | +| test_nr_of_bounds.cpp:48:5:48:19 | ... & ... | 256.0 | +| test_nr_of_bounds.cpp:48:5:48:19 | ... -= ... | 256.0 | +| test_nr_of_bounds.cpp:48:5:48:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:48:5:48:20 | (...) | 256.0 | +| test_nr_of_bounds.cpp:48:5:48:20 | x | 256.0 | +| test_nr_of_bounds.cpp:48:5:48:20 | x | 256.0 | +| test_nr_of_bounds.cpp:48:19:48:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:48:19:48:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:48:19:48:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:48:19:48:19 | I | 1.0 | +| test_nr_of_bounds.cpp:48:19:48:19 | I | 1.0 | +| test_nr_of_bounds.cpp:48:19:48:19 | I | 1.0 | +| test_nr_of_bounds.cpp:49:5:49:19 | ... & ... | 512.0 | +| test_nr_of_bounds.cpp:49:5:49:19 | ... -= ... | 512.0 | +| test_nr_of_bounds.cpp:49:5:49:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:49:5:49:20 | (...) | 512.0 | +| test_nr_of_bounds.cpp:49:5:49:20 | x | 512.0 | +| test_nr_of_bounds.cpp:49:5:49:20 | x | 512.0 | +| test_nr_of_bounds.cpp:49:19:49:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:49:19:49:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:49:19:49:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:49:19:49:19 | J | 1.0 | +| test_nr_of_bounds.cpp:49:19:49:19 | J | 1.0 | +| test_nr_of_bounds.cpp:49:19:49:19 | J | 1.0 | +| test_nr_of_bounds.cpp:50:5:50:19 | ... & ... | 1024.0 | +| test_nr_of_bounds.cpp:50:5:50:19 | ... -= ... | 1024.0 | +| test_nr_of_bounds.cpp:50:5:50:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:50:5:50:20 | (...) | 1024.0 | +| test_nr_of_bounds.cpp:50:5:50:20 | x | 1024.0 | +| test_nr_of_bounds.cpp:50:5:50:20 | x | 1024.0 | +| test_nr_of_bounds.cpp:50:19:50:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:50:19:50:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:50:19:50:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:50:19:50:19 | L | 1.0 | +| test_nr_of_bounds.cpp:50:19:50:19 | L | 1.0 | +| test_nr_of_bounds.cpp:50:19:50:19 | L | 1.0 | +| test_nr_of_bounds.cpp:51:5:51:19 | ... & ... | 2048.0 | +| test_nr_of_bounds.cpp:51:5:51:19 | ... -= ... | 2048.0 | +| test_nr_of_bounds.cpp:51:5:51:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:51:5:51:20 | (...) | 2048.0 | +| test_nr_of_bounds.cpp:51:5:51:20 | x | 2048.0 | +| test_nr_of_bounds.cpp:51:5:51:20 | x | 2048.0 | +| test_nr_of_bounds.cpp:51:19:51:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:51:19:51:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:51:19:51:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:51:19:51:19 | M | 1.0 | +| test_nr_of_bounds.cpp:51:19:51:19 | M | 1.0 | +| test_nr_of_bounds.cpp:51:19:51:19 | M | 1.0 | +| test_nr_of_bounds.cpp:52:5:52:19 | ... & ... | 4096.0 | +| test_nr_of_bounds.cpp:52:5:52:19 | ... -= ... | 4096.0 | +| test_nr_of_bounds.cpp:52:5:52:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:52:5:52:20 | (...) | 4096.0 | +| test_nr_of_bounds.cpp:52:5:52:20 | x | 4096.0 | +| test_nr_of_bounds.cpp:52:5:52:20 | x | 4096.0 | +| test_nr_of_bounds.cpp:52:19:52:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:52:19:52:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:52:19:52:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:52:19:52:19 | N | 1.0 | +| test_nr_of_bounds.cpp:52:19:52:19 | N | 1.0 | +| test_nr_of_bounds.cpp:52:19:52:19 | N | 1.0 | +| test_nr_of_bounds.cpp:53:5:53:19 | ... & ... | 8192.0 | +| test_nr_of_bounds.cpp:53:5:53:19 | ... -= ... | 8192.0 | +| test_nr_of_bounds.cpp:53:5:53:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:53:5:53:20 | (...) | 8192.0 | +| test_nr_of_bounds.cpp:53:5:53:20 | x | 8192.0 | +| test_nr_of_bounds.cpp:53:5:53:20 | x | 8192.0 | +| test_nr_of_bounds.cpp:53:19:53:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:53:19:53:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:53:19:53:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:53:19:53:19 | O | 1.0 | +| test_nr_of_bounds.cpp:53:19:53:19 | O | 1.0 | +| test_nr_of_bounds.cpp:53:19:53:19 | O | 1.0 | +| test_nr_of_bounds.cpp:54:5:54:19 | ... & ... | 16384.0 | +| test_nr_of_bounds.cpp:54:5:54:19 | ... -= ... | 16384.0 | +| test_nr_of_bounds.cpp:54:5:54:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:54:5:54:20 | (...) | 16384.0 | +| test_nr_of_bounds.cpp:54:5:54:20 | x | 16384.0 | +| test_nr_of_bounds.cpp:54:5:54:20 | x | 16384.0 | +| test_nr_of_bounds.cpp:54:19:54:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:54:19:54:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:54:19:54:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:54:19:54:19 | P | 1.0 | +| test_nr_of_bounds.cpp:54:19:54:19 | P | 1.0 | +| test_nr_of_bounds.cpp:54:19:54:19 | P | 1.0 | +| test_nr_of_bounds.cpp:55:5:55:19 | ... & ... | 32768.0 | +| test_nr_of_bounds.cpp:55:5:55:19 | ... -= ... | 32768.0 | +| test_nr_of_bounds.cpp:55:5:55:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:55:5:55:20 | (...) | 32768.0 | +| test_nr_of_bounds.cpp:55:5:55:20 | x | 32768.0 | +| test_nr_of_bounds.cpp:55:5:55:20 | x | 32768.0 | +| test_nr_of_bounds.cpp:55:19:55:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:55:19:55:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:55:19:55:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:55:19:55:19 | Q | 1.0 | +| test_nr_of_bounds.cpp:55:19:55:19 | Q | 1.0 | +| test_nr_of_bounds.cpp:55:19:55:19 | Q | 1.0 | +| test_nr_of_bounds.cpp:56:5:56:19 | ... & ... | 65536.0 | +| test_nr_of_bounds.cpp:56:5:56:19 | ... -= ... | 65536.0 | +| test_nr_of_bounds.cpp:56:5:56:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:56:5:56:20 | (...) | 65536.0 | +| test_nr_of_bounds.cpp:56:5:56:20 | x | 65536.0 | +| test_nr_of_bounds.cpp:56:5:56:20 | x | 65536.0 | +| test_nr_of_bounds.cpp:56:19:56:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:56:19:56:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:56:19:56:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:56:19:56:19 | R | 1.0 | +| test_nr_of_bounds.cpp:56:19:56:19 | R | 1.0 | +| test_nr_of_bounds.cpp:56:19:56:19 | R | 1.0 | +| test_nr_of_bounds.cpp:57:5:57:19 | ... & ... | 131072.0 | +| test_nr_of_bounds.cpp:57:5:57:19 | ... -= ... | 131072.0 | +| test_nr_of_bounds.cpp:57:5:57:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:57:5:57:20 | (...) | 131072.0 | +| test_nr_of_bounds.cpp:57:5:57:20 | x | 131072.0 | +| test_nr_of_bounds.cpp:57:5:57:20 | x | 131072.0 | +| test_nr_of_bounds.cpp:57:19:57:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:57:19:57:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:57:19:57:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:57:19:57:19 | S | 1.0 | +| test_nr_of_bounds.cpp:57:19:57:19 | S | 1.0 | +| test_nr_of_bounds.cpp:57:19:57:19 | S | 1.0 | +| test_nr_of_bounds.cpp:58:5:58:19 | ... & ... | 262144.0 | +| test_nr_of_bounds.cpp:58:5:58:19 | ... -= ... | 262144.0 | +| test_nr_of_bounds.cpp:58:5:58:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:58:5:58:20 | (...) | 262144.0 | +| test_nr_of_bounds.cpp:58:5:58:20 | x | 262144.0 | +| test_nr_of_bounds.cpp:58:5:58:20 | x | 262144.0 | +| test_nr_of_bounds.cpp:58:19:58:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:58:19:58:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:58:19:58:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:58:19:58:19 | T | 1.0 | +| test_nr_of_bounds.cpp:58:19:58:19 | T | 1.0 | +| test_nr_of_bounds.cpp:58:19:58:19 | T | 1.0 | +| test_nr_of_bounds.cpp:59:5:59:19 | ... & ... | 524288.0 | +| test_nr_of_bounds.cpp:59:5:59:19 | ... -= ... | 524288.0 | +| test_nr_of_bounds.cpp:59:5:59:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:59:5:59:20 | (...) | 524288.0 | +| test_nr_of_bounds.cpp:59:5:59:20 | x | 524288.0 | +| test_nr_of_bounds.cpp:59:5:59:20 | x | 524288.0 | +| test_nr_of_bounds.cpp:59:19:59:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:59:19:59:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:59:19:59:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:59:19:59:19 | U | 1.0 | +| test_nr_of_bounds.cpp:59:19:59:19 | U | 1.0 | +| test_nr_of_bounds.cpp:59:19:59:19 | U | 1.0 | +| test_nr_of_bounds.cpp:60:5:60:19 | ... & ... | 1048576.0 | +| test_nr_of_bounds.cpp:60:5:60:19 | ... -= ... | 1048576.0 | +| test_nr_of_bounds.cpp:60:5:60:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:60:5:60:20 | (...) | 1048576.0 | +| test_nr_of_bounds.cpp:60:5:60:20 | x | 1048576.0 | +| test_nr_of_bounds.cpp:60:5:60:20 | x | 1048576.0 | +| test_nr_of_bounds.cpp:60:19:60:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:60:19:60:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:60:19:60:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:60:19:60:19 | V | 1.0 | +| test_nr_of_bounds.cpp:60:19:60:19 | V | 1.0 | +| test_nr_of_bounds.cpp:60:19:60:19 | V | 1.0 | +| test_nr_of_bounds.cpp:61:5:61:19 | ... & ... | 2097152.0 | +| test_nr_of_bounds.cpp:61:5:61:19 | ... -= ... | 2097152.0 | +| test_nr_of_bounds.cpp:61:5:61:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:61:5:61:20 | (...) | 2097152.0 | +| test_nr_of_bounds.cpp:61:5:61:20 | x | 2097152.0 | +| test_nr_of_bounds.cpp:61:5:61:20 | x | 2097152.0 | +| test_nr_of_bounds.cpp:61:19:61:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:61:19:61:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:61:19:61:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:61:19:61:19 | W | 1.0 | +| test_nr_of_bounds.cpp:61:19:61:19 | W | 1.0 | +| test_nr_of_bounds.cpp:61:19:61:19 | W | 1.0 | +| test_nr_of_bounds.cpp:62:5:62:19 | ... & ... | 4194304.0 | +| test_nr_of_bounds.cpp:62:5:62:19 | ... -= ... | 4194304.0 | +| test_nr_of_bounds.cpp:62:5:62:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:62:5:62:20 | (...) | 4194304.0 | +| test_nr_of_bounds.cpp:62:5:62:20 | x | 4194304.0 | +| test_nr_of_bounds.cpp:62:5:62:20 | x | 4194304.0 | +| test_nr_of_bounds.cpp:62:19:62:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:62:19:62:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:62:19:62:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:62:19:62:19 | X | 1.0 | +| test_nr_of_bounds.cpp:62:19:62:19 | X | 1.0 | +| test_nr_of_bounds.cpp:62:19:62:19 | X | 1.0 | +| test_nr_of_bounds.cpp:63:5:63:19 | ... & ... | 8388608.0 | +| test_nr_of_bounds.cpp:63:5:63:19 | ... -= ... | 8388608.0 | +| test_nr_of_bounds.cpp:63:5:63:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:63:5:63:20 | (...) | 8388608.0 | +| test_nr_of_bounds.cpp:63:5:63:20 | x | 8388608.0 | +| test_nr_of_bounds.cpp:63:5:63:20 | x | 8388608.0 | +| test_nr_of_bounds.cpp:63:19:63:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:63:19:63:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:63:19:63:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:63:19:63:19 | Y | 1.0 | +| test_nr_of_bounds.cpp:63:19:63:19 | Y | 1.0 | +| test_nr_of_bounds.cpp:63:19:63:19 | Y | 1.0 | +| test_nr_of_bounds.cpp:64:5:64:19 | ... & ... | 1.6777216E7 | +| test_nr_of_bounds.cpp:64:5:64:19 | ... -= ... | 1.6777216E7 | +| test_nr_of_bounds.cpp:64:5:64:19 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:64:5:64:20 | (...) | 1.6777216E7 | +| test_nr_of_bounds.cpp:64:5:64:20 | x | 1.6777216E7 | +| test_nr_of_bounds.cpp:64:5:64:20 | x | 1.6777216E7 | +| test_nr_of_bounds.cpp:64:19:64:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:64:19:64:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:64:19:64:19 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:64:19:64:19 | Z | 1.0 | +| test_nr_of_bounds.cpp:64:19:64:19 | Z | 1.0 | +| test_nr_of_bounds.cpp:64:19:64:19 | Z | 1.0 | +| test_nr_of_bounds.cpp:65:5:65:20 | ... & ... | 3.3554432E7 | +| test_nr_of_bounds.cpp:65:5:65:20 | ... -= ... | 3.3554432E7 | +| test_nr_of_bounds.cpp:65:5:65:20 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:65:5:65:21 | (...) | 3.3554432E7 | +| test_nr_of_bounds.cpp:65:5:65:21 | x | 3.3554432E7 | +| test_nr_of_bounds.cpp:65:5:65:21 | x | 3.3554432E7 | +| test_nr_of_bounds.cpp:65:19:65:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:65:19:65:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:65:19:65:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:65:19:65:20 | AA | 1.0 | +| test_nr_of_bounds.cpp:65:19:65:20 | AA | 1.0 | +| test_nr_of_bounds.cpp:65:19:65:20 | AA | 1.0 | +| test_nr_of_bounds.cpp:66:5:66:20 | ... & ... | 6.7108864E7 | +| test_nr_of_bounds.cpp:66:5:66:20 | ... -= ... | 6.7108864E7 | +| test_nr_of_bounds.cpp:66:5:66:20 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:66:5:66:21 | (...) | 6.7108864E7 | +| test_nr_of_bounds.cpp:66:5:66:21 | x | 6.7108864E7 | +| test_nr_of_bounds.cpp:66:5:66:21 | x | 6.7108864E7 | +| test_nr_of_bounds.cpp:66:19:66:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:66:19:66:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:66:19:66:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:66:19:66:20 | AB | 1.0 | +| test_nr_of_bounds.cpp:66:19:66:20 | AB | 1.0 | +| test_nr_of_bounds.cpp:66:19:66:20 | AB | 1.0 | +| test_nr_of_bounds.cpp:67:5:67:20 | ... & ... | 1.34217728E8 | +| test_nr_of_bounds.cpp:67:5:67:20 | ... -= ... | 1.34217728E8 | +| test_nr_of_bounds.cpp:67:5:67:20 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:67:5:67:21 | (...) | 1.34217728E8 | +| test_nr_of_bounds.cpp:67:5:67:21 | x | 1.34217728E8 | +| test_nr_of_bounds.cpp:67:5:67:21 | x | 1.34217728E8 | +| test_nr_of_bounds.cpp:67:19:67:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:67:19:67:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:67:19:67:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:67:19:67:20 | AC | 1.0 | +| test_nr_of_bounds.cpp:67:19:67:20 | AC | 1.0 | +| test_nr_of_bounds.cpp:67:19:67:20 | AC | 1.0 | +| test_nr_of_bounds.cpp:68:5:68:20 | ... & ... | 2.68435456E8 | +| test_nr_of_bounds.cpp:68:5:68:20 | ... -= ... | 2.68435456E8 | +| test_nr_of_bounds.cpp:68:5:68:20 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:68:5:68:21 | (...) | 2.68435456E8 | +| test_nr_of_bounds.cpp:68:5:68:21 | x | 2.68435456E8 | +| test_nr_of_bounds.cpp:68:5:68:21 | x | 2.68435456E8 | +| test_nr_of_bounds.cpp:68:19:68:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:68:19:68:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:68:19:68:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:68:19:68:20 | AD | 1.0 | +| test_nr_of_bounds.cpp:68:19:68:20 | AD | 1.0 | +| test_nr_of_bounds.cpp:68:19:68:20 | AD | 1.0 | +| test_nr_of_bounds.cpp:69:5:69:20 | ... & ... | 5.36870912E8 | +| test_nr_of_bounds.cpp:69:5:69:20 | ... -= ... | 5.36870912E8 | +| test_nr_of_bounds.cpp:69:5:69:20 | ... == ... | 1.0 | +| test_nr_of_bounds.cpp:69:5:69:21 | (...) | 5.36870912E8 | +| test_nr_of_bounds.cpp:69:5:69:21 | x | 5.36870912E8 | +| test_nr_of_bounds.cpp:69:5:69:21 | x | 5.36870912E8 | +| test_nr_of_bounds.cpp:69:19:69:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:69:19:69:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:69:19:69:20 | (unsigned int)... | 1.0 | +| test_nr_of_bounds.cpp:69:19:69:20 | AE | 1.0 | +| test_nr_of_bounds.cpp:69:19:69:20 | AE | 1.0 | +| test_nr_of_bounds.cpp:69:19:69:20 | AE | 1.0 | +| test_nr_of_bounds.cpp:72:12:72:12 | x | 1.073741824E9 | diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.ql b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.ql index c39ab92ae710..5539dc0720ba 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.ql +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/nrOfBounds.ql @@ -12,13 +12,16 @@ query predicate estimateNrOfBounds(Expr e, float nrOfBounds) { */ private predicate nonFunctionalNrOfBounds(Expr e) { strictcount(SimpleRangeAnalysisInternal::estimateNrOfBounds(e)) > 1 - or - e.getFile().getBaseName() = "missing_bounds.cpp" and - count(SimpleRangeAnalysisInternal::estimateNrOfBounds(e)) != 1 +} + +private predicate nrOfBoundsNotEq1(Expr e, int n) { + e.getFile().getBaseName() = "test_nr_of_bounds.cpp" and + n = count(SimpleRangeAnalysisInternal::estimateNrOfBounds(e)) and + n != 1 } module FunctionalityTest implements TestSig { - string getARelevantTag() { result = "nonFunctionalNrOfBounds" } + string getARelevantTag() { result = ["nonFunctionalNrOfBounds", "bounds"] } predicate hasActualResult(Location location, string element, string tag, string value) { exists(Expr e | @@ -28,6 +31,14 @@ module FunctionalityTest implements TestSig { tag = "nonFunctionalNrOfBounds" and value = "" ) + or + exists(Expr e, int n | + nrOfBoundsNotEq1(e, n) and + location = e.getLocation() and + element = e.toString() and + tag = "bounds" and + value = n.toString() + ) } } diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test_nr_of_bounds.cpp similarity index 100% rename from cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/missing_bounds.cpp rename to cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/test_nr_of_bounds.cpp diff --git a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected index e414265ca391..a4aee501a940 100644 --- a/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected +++ b/cpp/ql/test/library-tests/rangeanalysis/SimpleRangeAnalysis/upperBound.expected @@ -17,67 +17,6 @@ | minmax.c:26:37:26:37 | x | 1 | | minmax.c:26:40:26:40 | y | 2 | | minmax.c:26:43:26:43 | z | 1 | -| missing_bounds.cpp:40:5:40:20 | x | 4294967295 | -| missing_bounds.cpp:40:5:40:20 | x | 4294967295 | -| missing_bounds.cpp:41:5:41:20 | x | 4294967295 | -| missing_bounds.cpp:41:5:41:20 | x | 4294967295 | -| missing_bounds.cpp:42:5:42:20 | x | 4294967295 | -| missing_bounds.cpp:42:5:42:20 | x | 4294967295 | -| missing_bounds.cpp:43:5:43:20 | x | 4294967295 | -| missing_bounds.cpp:43:5:43:20 | x | 4294967295 | -| missing_bounds.cpp:44:5:44:20 | x | 4294967295 | -| missing_bounds.cpp:44:5:44:20 | x | 4294967295 | -| missing_bounds.cpp:45:5:45:20 | x | 4294967295 | -| missing_bounds.cpp:45:5:45:20 | x | 4294967295 | -| missing_bounds.cpp:46:5:46:20 | x | 4294967295 | -| missing_bounds.cpp:46:5:46:20 | x | 4294967295 | -| missing_bounds.cpp:47:5:47:20 | x | 4294967295 | -| missing_bounds.cpp:47:5:47:20 | x | 4294967295 | -| missing_bounds.cpp:48:5:48:20 | x | 4294967295 | -| missing_bounds.cpp:48:5:48:20 | x | 4294967295 | -| missing_bounds.cpp:49:5:49:20 | x | 4294967295 | -| missing_bounds.cpp:49:5:49:20 | x | 4294967295 | -| missing_bounds.cpp:50:5:50:20 | x | 4294967295 | -| missing_bounds.cpp:50:5:50:20 | x | 4294967295 | -| missing_bounds.cpp:51:5:51:20 | x | 4294967295 | -| missing_bounds.cpp:51:5:51:20 | x | 4294967295 | -| missing_bounds.cpp:52:5:52:20 | x | 4294967295 | -| missing_bounds.cpp:52:5:52:20 | x | 4294967295 | -| missing_bounds.cpp:53:5:53:20 | x | 4294967295 | -| missing_bounds.cpp:53:5:53:20 | x | 4294967295 | -| missing_bounds.cpp:54:5:54:20 | x | 4294967295 | -| missing_bounds.cpp:54:5:54:20 | x | 4294967295 | -| missing_bounds.cpp:55:5:55:20 | x | 4294967295 | -| missing_bounds.cpp:55:5:55:20 | x | 4294967295 | -| missing_bounds.cpp:56:5:56:20 | x | 4294967295 | -| missing_bounds.cpp:56:5:56:20 | x | 4294967295 | -| missing_bounds.cpp:57:5:57:20 | x | 4294967295 | -| missing_bounds.cpp:57:5:57:20 | x | 4294967295 | -| missing_bounds.cpp:58:5:58:20 | x | 4294967295 | -| missing_bounds.cpp:58:5:58:20 | x | 4294967295 | -| missing_bounds.cpp:59:5:59:20 | x | 4294967295 | -| missing_bounds.cpp:59:5:59:20 | x | 4294967295 | -| missing_bounds.cpp:60:5:60:20 | x | 4294967295 | -| missing_bounds.cpp:60:5:60:20 | x | 4294967295 | -| missing_bounds.cpp:61:5:61:20 | x | 4294967295 | -| missing_bounds.cpp:61:5:61:20 | x | 4294967295 | -| missing_bounds.cpp:62:5:62:20 | x | 4294967295 | -| missing_bounds.cpp:62:5:62:20 | x | 4294967295 | -| missing_bounds.cpp:63:5:63:20 | x | 4294967295 | -| missing_bounds.cpp:63:5:63:20 | x | 4294967295 | -| missing_bounds.cpp:64:5:64:20 | x | 4294967295 | -| missing_bounds.cpp:64:5:64:20 | x | 4294967295 | -| missing_bounds.cpp:65:5:65:21 | x | 4294967295 | -| missing_bounds.cpp:65:5:65:21 | x | 4294967295 | -| missing_bounds.cpp:66:5:66:21 | x | 4294967295 | -| missing_bounds.cpp:66:5:66:21 | x | 4294967295 | -| missing_bounds.cpp:67:5:67:21 | x | 4294967295 | -| missing_bounds.cpp:67:5:67:21 | x | 4294967295 | -| missing_bounds.cpp:68:5:68:21 | x | 4294967295 | -| missing_bounds.cpp:68:5:68:21 | x | 4294967295 | -| missing_bounds.cpp:69:5:69:21 | x | 4294967295 | -| missing_bounds.cpp:69:5:69:21 | x | 4294967295 | -| missing_bounds.cpp:72:12:72:12 | x | 4294967295 | | test.c:8:5:8:9 | count | 2147483647 | | test.c:8:13:8:17 | count | 2147483647 | | test.c:10:10:10:14 | count | 2147483647 | @@ -1155,3 +1094,64 @@ | test.cpp:122:4:122:4 | n | 32767 | | test.cpp:122:8:122:8 | n | 0 | | test.cpp:122:12:122:12 | n | 32767 | +| test_nr_of_bounds.cpp:40:5:40:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:40:5:40:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:41:5:41:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:41:5:41:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:42:5:42:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:42:5:42:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:43:5:43:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:43:5:43:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:44:5:44:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:44:5:44:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:45:5:45:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:45:5:45:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:46:5:46:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:46:5:46:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:47:5:47:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:47:5:47:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:48:5:48:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:48:5:48:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:49:5:49:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:49:5:49:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:50:5:50:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:50:5:50:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:51:5:51:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:51:5:51:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:52:5:52:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:52:5:52:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:53:5:53:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:53:5:53:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:54:5:54:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:54:5:54:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:55:5:55:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:55:5:55:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:56:5:56:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:56:5:56:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:57:5:57:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:57:5:57:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:58:5:58:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:58:5:58:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:59:5:59:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:59:5:59:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:60:5:60:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:60:5:60:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:61:5:61:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:61:5:61:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:62:5:62:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:62:5:62:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:63:5:63:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:63:5:63:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:64:5:64:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:64:5:64:20 | x | 4294967295 | +| test_nr_of_bounds.cpp:65:5:65:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:65:5:65:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:66:5:66:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:66:5:66:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:67:5:67:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:67:5:67:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:68:5:68:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:68:5:68:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:69:5:69:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:69:5:69:21 | x | 4294967295 | +| test_nr_of_bounds.cpp:72:12:72:12 | x | 4294967295 | From 146fc7a8c0325f6ec22aceb86d37f1e7c9b583f9 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 14 Feb 2026 01:50:34 +0000 Subject: [PATCH 424/433] Add failing log injection test for @Pattern validation --- .../CWE-117/LogInjectionTest.expected | 13278 ++++++++-------- .../security/CWE-117/LogInjectionTest.ext.yml | 2 + .../security/CWE-117/LogInjectionTest.java | 10 + .../test/query-tests/security/CWE-117/options | 2 +- 4 files changed, 6654 insertions(+), 6638 deletions(-) diff --git a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected index 39e2f04f0e03..9fb5121bd1ae 100644 --- a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected +++ b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected @@ -1,123 +1,115 @@ #select -| LogInjectionTest.java:30:22:30:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:30:22:30:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:31:22:31:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:31:22:31:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:33:22:33:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:33:22:33:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:34:22:34:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:34:22:34:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:35:22:35:57 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:35:22:35:57 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:37:22:37:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:37:22:37:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:38:22:38:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:38:22:38:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:40:22:40:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:40:22:40:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:41:22:41:47 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:41:22:41:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:42:22:42:45 | replace(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:42:22:42:45 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:44:22:44:50 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:44:22:44:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:45:22:45:50 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:45:22:45:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:47:22:47:50 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:47:22:47:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:48:22:48:50 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:48:22:48:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:50:22:50:51 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:50:22:50:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:51:22:51:51 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:51:22:51:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:53:22:53:51 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:53:22:53:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:54:22:54:51 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:54:22:54:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:56:22:56:51 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:56:22:56:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:57:22:57:51 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:57:22:57:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:59:22:59:57 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:59:22:59:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:60:22:60:57 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:60:22:60:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:61:22:61:57 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:61:22:61:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:62:22:62:57 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:62:22:62:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:63:22:63:58 | replaceAll(...) | LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:63:22:63:58 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:27:34:27:41 | source(...) | user-provided value | -| LogInjectionTest.java:71:26:71:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:71:26:71:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:77:26:77:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:77:26:77:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:83:26:83:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:83:26:83:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:89:26:89:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:89:26:89:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:95:26:95:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:95:26:95:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:101:26:101:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:101:26:101:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:107:26:107:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:107:26:107:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:113:26:113:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:113:26:113:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:119:26:119:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:119:26:119:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:125:26:125:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:125:26:125:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:133:26:133:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:133:26:133:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:139:26:139:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:139:26:139:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:145:26:145:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:145:26:145:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:151:26:151:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:151:26:151:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:157:26:157:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:157:26:157:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:163:26:163:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:163:26:163:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:167:26:167:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:167:26:167:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:169:26:169:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:169:26:169:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:173:26:173:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:173:26:173:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:175:26:175:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:175:26:175:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:179:26:179:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:179:26:179:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:185:26:185:31 | source | LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:185:26:185:31 | source | This log entry depends on a $@. | LogInjectionTest.java:67:34:67:41 | source(...) | user-provided value | -| LogInjectionTest.java:195:39:195:55 | (...)... | LogInjectionTest.java:195:48:195:55 | source(...) : Object | LogInjectionTest.java:195:39:195:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:195:48:195:55 | source(...) | user-provided value | -| LogInjectionTest.java:196:28:196:35 | source(...) | LogInjectionTest.java:196:28:196:35 | source(...) | LogInjectionTest.java:196:28:196:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:196:28:196:35 | source(...) | user-provided value | -| LogInjectionTest.java:197:28:197:35 | source(...) | LogInjectionTest.java:197:28:197:35 | source(...) | LogInjectionTest.java:197:28:197:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:197:28:197:35 | source(...) | user-provided value | -| LogInjectionTest.java:198:28:198:35 | source(...) | LogInjectionTest.java:198:28:198:35 | source(...) | LogInjectionTest.java:198:28:198:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:198:28:198:35 | source(...) | user-provided value | -| LogInjectionTest.java:199:28:199:35 | source(...) | LogInjectionTest.java:199:28:199:35 | source(...) | LogInjectionTest.java:199:28:199:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:199:28:199:35 | source(...) | user-provided value | -| LogInjectionTest.java:200:28:200:35 | source(...) | LogInjectionTest.java:200:28:200:35 | source(...) | LogInjectionTest.java:200:28:200:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:200:28:200:35 | source(...) | user-provided value | -| LogInjectionTest.java:201:28:201:35 | source(...) | LogInjectionTest.java:201:28:201:35 | source(...) | LogInjectionTest.java:201:28:201:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:201:28:201:35 | source(...) | user-provided value | -| LogInjectionTest.java:202:44:202:51 | source(...) | LogInjectionTest.java:202:44:202:51 | source(...) | LogInjectionTest.java:202:44:202:51 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:202:44:202:51 | source(...) | user-provided value | -| LogInjectionTest.java:203:27:203:34 | source(...) | LogInjectionTest.java:203:27:203:34 | source(...) | LogInjectionTest.java:203:27:203:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:203:27:203:34 | source(...) | user-provided value | -| LogInjectionTest.java:204:27:204:34 | source(...) | LogInjectionTest.java:204:27:204:34 | source(...) | LogInjectionTest.java:204:27:204:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:204:27:204:34 | source(...) | user-provided value | -| LogInjectionTest.java:205:41:205:63 | new Object[] | LogInjectionTest.java:205:55:205:62 | source(...) : Object | LogInjectionTest.java:205:41:205:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:205:55:205:62 | source(...) | user-provided value | -| LogInjectionTest.java:206:32:206:39 | source(...) | LogInjectionTest.java:206:32:206:39 | source(...) | LogInjectionTest.java:206:32:206:39 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:206:32:206:39 | source(...) | user-provided value | -| LogInjectionTest.java:207:32:207:39 | source(...) | LogInjectionTest.java:207:32:207:39 | source(...) | LogInjectionTest.java:207:32:207:39 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:207:32:207:39 | source(...) | user-provided value | -| LogInjectionTest.java:208:38:208:45 | source(...) | LogInjectionTest.java:208:38:208:45 | source(...) | LogInjectionTest.java:208:38:208:45 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:208:38:208:45 | source(...) | user-provided value | -| LogInjectionTest.java:209:27:209:34 | source(...) | LogInjectionTest.java:209:27:209:34 | source(...) | LogInjectionTest.java:209:27:209:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:209:27:209:34 | source(...) | user-provided value | -| LogInjectionTest.java:210:27:210:34 | source(...) | LogInjectionTest.java:210:27:210:34 | source(...) | LogInjectionTest.java:210:27:210:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:210:27:210:34 | source(...) | user-provided value | -| LogInjectionTest.java:215:26:215:48 | (...)... | LogInjectionTest.java:215:41:215:48 | source(...) : Object | LogInjectionTest.java:215:26:215:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:215:41:215:48 | source(...) | user-provided value | -| LogInjectionTest.java:216:26:216:48 | (...)... | LogInjectionTest.java:216:41:216:48 | source(...) : Object | LogInjectionTest.java:216:26:216:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:216:41:216:48 | source(...) | user-provided value | -| LogInjectionTest.java:217:41:217:63 | (...)... | LogInjectionTest.java:217:56:217:63 | source(...) : Object | LogInjectionTest.java:217:41:217:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:217:56:217:63 | source(...) | user-provided value | -| LogInjectionTest.java:218:41:218:63 | (...)... | LogInjectionTest.java:218:56:218:63 | source(...) : Object | LogInjectionTest.java:218:41:218:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:218:56:218:63 | source(...) | user-provided value | -| LogInjectionTest.java:219:41:219:58 | (...)... | LogInjectionTest.java:219:51:219:58 | source(...) : Object | LogInjectionTest.java:219:41:219:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:219:51:219:58 | source(...) | user-provided value | -| LogInjectionTest.java:220:41:220:66 | (...)... | LogInjectionTest.java:220:59:220:66 | source(...) : Object | LogInjectionTest.java:220:41:220:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:220:59:220:66 | source(...) | user-provided value | -| LogInjectionTest.java:221:41:221:66 | (...)... | LogInjectionTest.java:221:59:221:66 | source(...) : Object | LogInjectionTest.java:221:41:221:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:221:59:221:66 | source(...) | user-provided value | -| LogInjectionTest.java:222:41:222:48 | source(...) | LogInjectionTest.java:222:41:222:48 | source(...) | LogInjectionTest.java:222:41:222:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:222:41:222:48 | source(...) | user-provided value | -| LogInjectionTest.java:223:41:223:57 | (...)... | LogInjectionTest.java:223:50:223:57 | source(...) : Object | LogInjectionTest.java:223:41:223:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:223:50:223:57 | source(...) | user-provided value | -| LogInjectionTest.java:224:41:224:57 | (...)... | LogInjectionTest.java:224:50:224:57 | source(...) : Object | LogInjectionTest.java:224:41:224:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:224:50:224:57 | source(...) | user-provided value | -| LogInjectionTest.java:225:56:225:78 | new Object[] | LogInjectionTest.java:225:70:225:77 | source(...) : Object | LogInjectionTest.java:225:56:225:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:225:70:225:77 | source(...) | user-provided value | -| LogInjectionTest.java:226:56:226:72 | (...)... | LogInjectionTest.java:226:65:226:72 | source(...) : Object | LogInjectionTest.java:226:56:226:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:226:65:226:72 | source(...) | user-provided value | -| LogInjectionTest.java:227:41:227:57 | (...)... | LogInjectionTest.java:227:50:227:57 | source(...) : Object | LogInjectionTest.java:227:41:227:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:227:50:227:57 | source(...) | user-provided value | -| LogInjectionTest.java:228:71:228:87 | (...)... | LogInjectionTest.java:228:80:228:87 | source(...) : Object | LogInjectionTest.java:228:71:228:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:228:80:228:87 | source(...) | user-provided value | -| LogInjectionTest.java:229:56:229:72 | (...)... | LogInjectionTest.java:229:65:229:72 | source(...) : Object | LogInjectionTest.java:229:56:229:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:229:65:229:72 | source(...) | user-provided value | -| LogInjectionTest.java:230:41:230:57 | (...)... | LogInjectionTest.java:230:50:230:57 | source(...) : Object | LogInjectionTest.java:230:41:230:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:230:50:230:57 | source(...) | user-provided value | -| LogInjectionTest.java:231:86:231:102 | (...)... | LogInjectionTest.java:231:95:231:102 | source(...) : Object | LogInjectionTest.java:231:86:231:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:231:95:231:102 | source(...) | user-provided value | -| LogInjectionTest.java:232:71:232:87 | (...)... | LogInjectionTest.java:232:80:232:87 | source(...) : Object | LogInjectionTest.java:232:71:232:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:232:80:232:87 | source(...) | user-provided value | -| LogInjectionTest.java:233:56:233:72 | (...)... | LogInjectionTest.java:233:65:233:72 | source(...) : Object | LogInjectionTest.java:233:56:233:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:233:65:233:72 | source(...) | user-provided value | +| LogInjectionTest.java:38:22:38:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:38:22:38:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:39:22:39:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:39:22:39:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:41:22:41:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:41:22:41:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:42:22:42:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:42:22:42:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:43:22:43:57 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:43:22:43:57 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:45:22:45:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:45:22:45:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:46:22:46:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:46:22:46:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:48:22:48:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:48:22:48:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:49:22:49:47 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:49:22:49:47 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:50:22:50:45 | replace(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:50:22:50:45 | replace(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:52:22:52:50 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:52:22:52:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:53:22:53:50 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:53:22:53:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:55:22:55:50 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:55:22:55:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:56:22:56:50 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:56:22:56:50 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:58:22:58:51 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:58:22:58:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:59:22:59:51 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:59:22:59:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:61:22:61:51 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:61:22:61:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:62:22:62:51 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:62:22:62:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:64:22:64:51 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:64:22:64:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:65:22:65:51 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:65:22:65:51 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:67:22:67:57 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:67:22:67:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:68:22:68:57 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:68:22:68:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:69:22:69:57 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:69:22:69:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:70:22:70:57 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:70:22:70:57 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:71:22:71:58 | replaceAll(...) | LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:71:22:71:58 | replaceAll(...) | This log entry depends on a $@. | LogInjectionTest.java:35:34:35:41 | source(...) | user-provided value | +| LogInjectionTest.java:79:26:79:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:79:26:79:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:85:26:85:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:85:26:85:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:91:26:91:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:91:26:91:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:97:26:97:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:97:26:97:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:103:26:103:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:103:26:103:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:109:26:109:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:109:26:109:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:115:26:115:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:115:26:115:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:121:26:121:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:121:26:121:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:127:26:127:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:127:26:127:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:133:26:133:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:133:26:133:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:141:26:141:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:141:26:141:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:147:26:147:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:147:26:147:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:153:26:153:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:153:26:153:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:159:26:159:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:159:26:159:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:165:26:165:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:165:26:165:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:171:26:171:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:171:26:171:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:175:26:175:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:175:26:175:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:177:26:177:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:177:26:177:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:181:26:181:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:181:26:181:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:183:26:183:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:183:26:183:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:187:26:187:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:187:26:187:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:193:26:193:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:193:26:193:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | +| LogInjectionTest.java:198:22:198:40 | validatedInputField | LogInjectionTest.java:198:22:198:40 | validatedInputField | LogInjectionTest.java:198:22:198:40 | validatedInputField | This log entry depends on a $@. | LogInjectionTest.java:198:22:198:40 | validatedInputField | user-provided value | +| LogInjectionTest.java:199:22:199:37 | validatedInput(...) | LogInjectionTest.java:199:22:199:37 | validatedInput(...) | LogInjectionTest.java:199:22:199:37 | validatedInput(...) | This log entry depends on a $@. | LogInjectionTest.java:199:22:199:37 | validatedInput(...) | user-provided value | +| LogInjectionTest.java:205:39:205:55 | (...)... | LogInjectionTest.java:205:48:205:55 | source(...) : Object | LogInjectionTest.java:205:39:205:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:205:48:205:55 | source(...) | user-provided value | +| LogInjectionTest.java:206:28:206:35 | source(...) | LogInjectionTest.java:206:28:206:35 | source(...) | LogInjectionTest.java:206:28:206:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:206:28:206:35 | source(...) | user-provided value | +| LogInjectionTest.java:207:28:207:35 | source(...) | LogInjectionTest.java:207:28:207:35 | source(...) | LogInjectionTest.java:207:28:207:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:207:28:207:35 | source(...) | user-provided value | +| LogInjectionTest.java:208:28:208:35 | source(...) | LogInjectionTest.java:208:28:208:35 | source(...) | LogInjectionTest.java:208:28:208:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:208:28:208:35 | source(...) | user-provided value | +| LogInjectionTest.java:209:28:209:35 | source(...) | LogInjectionTest.java:209:28:209:35 | source(...) | LogInjectionTest.java:209:28:209:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:209:28:209:35 | source(...) | user-provided value | +| LogInjectionTest.java:210:28:210:35 | source(...) | LogInjectionTest.java:210:28:210:35 | source(...) | LogInjectionTest.java:210:28:210:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:210:28:210:35 | source(...) | user-provided value | +| LogInjectionTest.java:211:28:211:35 | source(...) | LogInjectionTest.java:211:28:211:35 | source(...) | LogInjectionTest.java:211:28:211:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:211:28:211:35 | source(...) | user-provided value | +| LogInjectionTest.java:212:44:212:51 | source(...) | LogInjectionTest.java:212:44:212:51 | source(...) | LogInjectionTest.java:212:44:212:51 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:212:44:212:51 | source(...) | user-provided value | +| LogInjectionTest.java:213:27:213:34 | source(...) | LogInjectionTest.java:213:27:213:34 | source(...) | LogInjectionTest.java:213:27:213:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:213:27:213:34 | source(...) | user-provided value | +| LogInjectionTest.java:214:27:214:34 | source(...) | LogInjectionTest.java:214:27:214:34 | source(...) | LogInjectionTest.java:214:27:214:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:214:27:214:34 | source(...) | user-provided value | +| LogInjectionTest.java:215:41:215:63 | new Object[] | LogInjectionTest.java:215:55:215:62 | source(...) : Object | LogInjectionTest.java:215:41:215:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:215:55:215:62 | source(...) | user-provided value | +| LogInjectionTest.java:216:32:216:39 | source(...) | LogInjectionTest.java:216:32:216:39 | source(...) | LogInjectionTest.java:216:32:216:39 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:216:32:216:39 | source(...) | user-provided value | +| LogInjectionTest.java:217:32:217:39 | source(...) | LogInjectionTest.java:217:32:217:39 | source(...) | LogInjectionTest.java:217:32:217:39 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:217:32:217:39 | source(...) | user-provided value | +| LogInjectionTest.java:218:38:218:45 | source(...) | LogInjectionTest.java:218:38:218:45 | source(...) | LogInjectionTest.java:218:38:218:45 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:218:38:218:45 | source(...) | user-provided value | +| LogInjectionTest.java:219:27:219:34 | source(...) | LogInjectionTest.java:219:27:219:34 | source(...) | LogInjectionTest.java:219:27:219:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:219:27:219:34 | source(...) | user-provided value | +| LogInjectionTest.java:220:27:220:34 | source(...) | LogInjectionTest.java:220:27:220:34 | source(...) | LogInjectionTest.java:220:27:220:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:220:27:220:34 | source(...) | user-provided value | +| LogInjectionTest.java:225:26:225:48 | (...)... | LogInjectionTest.java:225:41:225:48 | source(...) : Object | LogInjectionTest.java:225:26:225:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:225:41:225:48 | source(...) | user-provided value | +| LogInjectionTest.java:226:26:226:48 | (...)... | LogInjectionTest.java:226:41:226:48 | source(...) : Object | LogInjectionTest.java:226:26:226:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:226:41:226:48 | source(...) | user-provided value | +| LogInjectionTest.java:227:41:227:63 | (...)... | LogInjectionTest.java:227:56:227:63 | source(...) : Object | LogInjectionTest.java:227:41:227:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:227:56:227:63 | source(...) | user-provided value | +| LogInjectionTest.java:228:41:228:63 | (...)... | LogInjectionTest.java:228:56:228:63 | source(...) : Object | LogInjectionTest.java:228:41:228:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:228:56:228:63 | source(...) | user-provided value | +| LogInjectionTest.java:229:41:229:58 | (...)... | LogInjectionTest.java:229:51:229:58 | source(...) : Object | LogInjectionTest.java:229:41:229:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:229:51:229:58 | source(...) | user-provided value | +| LogInjectionTest.java:230:41:230:66 | (...)... | LogInjectionTest.java:230:59:230:66 | source(...) : Object | LogInjectionTest.java:230:41:230:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:230:59:230:66 | source(...) | user-provided value | +| LogInjectionTest.java:231:41:231:66 | (...)... | LogInjectionTest.java:231:59:231:66 | source(...) : Object | LogInjectionTest.java:231:41:231:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:231:59:231:66 | source(...) | user-provided value | +| LogInjectionTest.java:232:41:232:48 | source(...) | LogInjectionTest.java:232:41:232:48 | source(...) | LogInjectionTest.java:232:41:232:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:232:41:232:48 | source(...) | user-provided value | +| LogInjectionTest.java:233:41:233:57 | (...)... | LogInjectionTest.java:233:50:233:57 | source(...) : Object | LogInjectionTest.java:233:41:233:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:233:50:233:57 | source(...) | user-provided value | | LogInjectionTest.java:234:41:234:57 | (...)... | LogInjectionTest.java:234:50:234:57 | source(...) : Object | LogInjectionTest.java:234:41:234:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:234:50:234:57 | source(...) | user-provided value | -| LogInjectionTest.java:235:101:235:117 | (...)... | LogInjectionTest.java:235:110:235:117 | source(...) : Object | LogInjectionTest.java:235:101:235:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:235:110:235:117 | source(...) | user-provided value | -| LogInjectionTest.java:236:86:236:102 | (...)... | LogInjectionTest.java:236:95:236:102 | source(...) : Object | LogInjectionTest.java:236:86:236:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:236:95:236:102 | source(...) | user-provided value | -| LogInjectionTest.java:237:71:237:87 | (...)... | LogInjectionTest.java:237:80:237:87 | source(...) : Object | LogInjectionTest.java:237:71:237:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:237:80:237:87 | source(...) | user-provided value | -| LogInjectionTest.java:238:56:238:72 | (...)... | LogInjectionTest.java:238:65:238:72 | source(...) : Object | LogInjectionTest.java:238:56:238:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:238:65:238:72 | source(...) | user-provided value | -| LogInjectionTest.java:239:41:239:57 | (...)... | LogInjectionTest.java:239:50:239:57 | source(...) : Object | LogInjectionTest.java:239:41:239:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:239:50:239:57 | source(...) | user-provided value | -| LogInjectionTest.java:240:116:240:132 | (...)... | LogInjectionTest.java:240:125:240:132 | source(...) : Object | LogInjectionTest.java:240:116:240:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:240:125:240:132 | source(...) | user-provided value | -| LogInjectionTest.java:241:101:241:117 | (...)... | LogInjectionTest.java:241:110:241:117 | source(...) : Object | LogInjectionTest.java:241:101:241:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:241:110:241:117 | source(...) | user-provided value | -| LogInjectionTest.java:242:86:242:102 | (...)... | LogInjectionTest.java:242:95:242:102 | source(...) : Object | LogInjectionTest.java:242:86:242:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:242:95:242:102 | source(...) | user-provided value | -| LogInjectionTest.java:243:71:243:87 | (...)... | LogInjectionTest.java:243:80:243:87 | source(...) : Object | LogInjectionTest.java:243:71:243:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:243:80:243:87 | source(...) | user-provided value | -| LogInjectionTest.java:244:56:244:72 | (...)... | LogInjectionTest.java:244:65:244:72 | source(...) : Object | LogInjectionTest.java:244:56:244:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:244:65:244:72 | source(...) | user-provided value | -| LogInjectionTest.java:245:41:245:57 | (...)... | LogInjectionTest.java:245:50:245:57 | source(...) : Object | LogInjectionTest.java:245:41:245:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:245:50:245:57 | source(...) | user-provided value | -| LogInjectionTest.java:246:131:246:147 | (...)... | LogInjectionTest.java:246:140:246:147 | source(...) : Object | LogInjectionTest.java:246:131:246:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:246:140:246:147 | source(...) | user-provided value | -| LogInjectionTest.java:247:116:247:132 | (...)... | LogInjectionTest.java:247:125:247:132 | source(...) : Object | LogInjectionTest.java:247:116:247:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:247:125:247:132 | source(...) | user-provided value | -| LogInjectionTest.java:248:101:248:117 | (...)... | LogInjectionTest.java:248:110:248:117 | source(...) : Object | LogInjectionTest.java:248:101:248:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:248:110:248:117 | source(...) | user-provided value | -| LogInjectionTest.java:249:86:249:102 | (...)... | LogInjectionTest.java:249:95:249:102 | source(...) : Object | LogInjectionTest.java:249:86:249:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:249:95:249:102 | source(...) | user-provided value | -| LogInjectionTest.java:250:71:250:87 | (...)... | LogInjectionTest.java:250:80:250:87 | source(...) : Object | LogInjectionTest.java:250:71:250:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:250:80:250:87 | source(...) | user-provided value | -| LogInjectionTest.java:251:56:251:72 | (...)... | LogInjectionTest.java:251:65:251:72 | source(...) : Object | LogInjectionTest.java:251:56:251:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:251:65:251:72 | source(...) | user-provided value | -| LogInjectionTest.java:252:41:252:57 | (...)... | LogInjectionTest.java:252:50:252:57 | source(...) : Object | LogInjectionTest.java:252:41:252:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:252:50:252:57 | source(...) | user-provided value | -| LogInjectionTest.java:253:146:253:162 | (...)... | LogInjectionTest.java:253:155:253:162 | source(...) : Object | LogInjectionTest.java:253:146:253:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:253:155:253:162 | source(...) | user-provided value | -| LogInjectionTest.java:254:131:254:147 | (...)... | LogInjectionTest.java:254:140:254:147 | source(...) : Object | LogInjectionTest.java:254:131:254:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:254:140:254:147 | source(...) | user-provided value | -| LogInjectionTest.java:255:116:255:132 | (...)... | LogInjectionTest.java:255:125:255:132 | source(...) : Object | LogInjectionTest.java:255:116:255:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:255:125:255:132 | source(...) | user-provided value | -| LogInjectionTest.java:256:101:256:117 | (...)... | LogInjectionTest.java:256:110:256:117 | source(...) : Object | LogInjectionTest.java:256:101:256:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:256:110:256:117 | source(...) | user-provided value | -| LogInjectionTest.java:257:86:257:102 | (...)... | LogInjectionTest.java:257:95:257:102 | source(...) : Object | LogInjectionTest.java:257:86:257:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:257:95:257:102 | source(...) | user-provided value | -| LogInjectionTest.java:258:71:258:87 | (...)... | LogInjectionTest.java:258:80:258:87 | source(...) : Object | LogInjectionTest.java:258:71:258:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:258:80:258:87 | source(...) | user-provided value | -| LogInjectionTest.java:259:56:259:72 | (...)... | LogInjectionTest.java:259:65:259:72 | source(...) : Object | LogInjectionTest.java:259:56:259:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:259:65:259:72 | source(...) | user-provided value | -| LogInjectionTest.java:260:41:260:57 | (...)... | LogInjectionTest.java:260:50:260:57 | source(...) : Object | LogInjectionTest.java:260:41:260:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:260:50:260:57 | source(...) | user-provided value | -| LogInjectionTest.java:261:161:261:177 | (...)... | LogInjectionTest.java:261:170:261:177 | source(...) : Object | LogInjectionTest.java:261:161:261:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:261:170:261:177 | source(...) | user-provided value | -| LogInjectionTest.java:262:146:262:162 | (...)... | LogInjectionTest.java:262:155:262:162 | source(...) : Object | LogInjectionTest.java:262:146:262:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:262:155:262:162 | source(...) | user-provided value | -| LogInjectionTest.java:263:131:263:147 | (...)... | LogInjectionTest.java:263:140:263:147 | source(...) : Object | LogInjectionTest.java:263:131:263:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:263:140:263:147 | source(...) | user-provided value | -| LogInjectionTest.java:264:116:264:132 | (...)... | LogInjectionTest.java:264:125:264:132 | source(...) : Object | LogInjectionTest.java:264:116:264:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:264:125:264:132 | source(...) | user-provided value | -| LogInjectionTest.java:265:101:265:117 | (...)... | LogInjectionTest.java:265:110:265:117 | source(...) : Object | LogInjectionTest.java:265:101:265:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:265:110:265:117 | source(...) | user-provided value | -| LogInjectionTest.java:266:86:266:102 | (...)... | LogInjectionTest.java:266:95:266:102 | source(...) : Object | LogInjectionTest.java:266:86:266:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:266:95:266:102 | source(...) | user-provided value | -| LogInjectionTest.java:267:71:267:87 | (...)... | LogInjectionTest.java:267:80:267:87 | source(...) : Object | LogInjectionTest.java:267:71:267:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:267:80:267:87 | source(...) | user-provided value | -| LogInjectionTest.java:268:56:268:72 | (...)... | LogInjectionTest.java:268:65:268:72 | source(...) : Object | LogInjectionTest.java:268:56:268:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:268:65:268:72 | source(...) | user-provided value | -| LogInjectionTest.java:269:41:269:57 | (...)... | LogInjectionTest.java:269:50:269:57 | source(...) : Object | LogInjectionTest.java:269:41:269:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:269:50:269:57 | source(...) | user-provided value | -| LogInjectionTest.java:270:176:270:192 | (...)... | LogInjectionTest.java:270:185:270:192 | source(...) : Object | LogInjectionTest.java:270:176:270:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:270:185:270:192 | source(...) | user-provided value | +| LogInjectionTest.java:235:56:235:78 | new Object[] | LogInjectionTest.java:235:70:235:77 | source(...) : Object | LogInjectionTest.java:235:56:235:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:235:70:235:77 | source(...) | user-provided value | +| LogInjectionTest.java:236:56:236:72 | (...)... | LogInjectionTest.java:236:65:236:72 | source(...) : Object | LogInjectionTest.java:236:56:236:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:236:65:236:72 | source(...) | user-provided value | +| LogInjectionTest.java:237:41:237:57 | (...)... | LogInjectionTest.java:237:50:237:57 | source(...) : Object | LogInjectionTest.java:237:41:237:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:237:50:237:57 | source(...) | user-provided value | +| LogInjectionTest.java:238:71:238:87 | (...)... | LogInjectionTest.java:238:80:238:87 | source(...) : Object | LogInjectionTest.java:238:71:238:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:238:80:238:87 | source(...) | user-provided value | +| LogInjectionTest.java:239:56:239:72 | (...)... | LogInjectionTest.java:239:65:239:72 | source(...) : Object | LogInjectionTest.java:239:56:239:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:239:65:239:72 | source(...) | user-provided value | +| LogInjectionTest.java:240:41:240:57 | (...)... | LogInjectionTest.java:240:50:240:57 | source(...) : Object | LogInjectionTest.java:240:41:240:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:240:50:240:57 | source(...) | user-provided value | +| LogInjectionTest.java:241:86:241:102 | (...)... | LogInjectionTest.java:241:95:241:102 | source(...) : Object | LogInjectionTest.java:241:86:241:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:241:95:241:102 | source(...) | user-provided value | +| LogInjectionTest.java:242:71:242:87 | (...)... | LogInjectionTest.java:242:80:242:87 | source(...) : Object | LogInjectionTest.java:242:71:242:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:242:80:242:87 | source(...) | user-provided value | +| LogInjectionTest.java:243:56:243:72 | (...)... | LogInjectionTest.java:243:65:243:72 | source(...) : Object | LogInjectionTest.java:243:56:243:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:243:65:243:72 | source(...) | user-provided value | +| LogInjectionTest.java:244:41:244:57 | (...)... | LogInjectionTest.java:244:50:244:57 | source(...) : Object | LogInjectionTest.java:244:41:244:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:244:50:244:57 | source(...) | user-provided value | +| LogInjectionTest.java:245:101:245:117 | (...)... | LogInjectionTest.java:245:110:245:117 | source(...) : Object | LogInjectionTest.java:245:101:245:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:245:110:245:117 | source(...) | user-provided value | +| LogInjectionTest.java:246:86:246:102 | (...)... | LogInjectionTest.java:246:95:246:102 | source(...) : Object | LogInjectionTest.java:246:86:246:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:246:95:246:102 | source(...) | user-provided value | +| LogInjectionTest.java:247:71:247:87 | (...)... | LogInjectionTest.java:247:80:247:87 | source(...) : Object | LogInjectionTest.java:247:71:247:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:247:80:247:87 | source(...) | user-provided value | +| LogInjectionTest.java:248:56:248:72 | (...)... | LogInjectionTest.java:248:65:248:72 | source(...) : Object | LogInjectionTest.java:248:56:248:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:248:65:248:72 | source(...) | user-provided value | +| LogInjectionTest.java:249:41:249:57 | (...)... | LogInjectionTest.java:249:50:249:57 | source(...) : Object | LogInjectionTest.java:249:41:249:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:249:50:249:57 | source(...) | user-provided value | +| LogInjectionTest.java:250:116:250:132 | (...)... | LogInjectionTest.java:250:125:250:132 | source(...) : Object | LogInjectionTest.java:250:116:250:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:250:125:250:132 | source(...) | user-provided value | +| LogInjectionTest.java:251:101:251:117 | (...)... | LogInjectionTest.java:251:110:251:117 | source(...) : Object | LogInjectionTest.java:251:101:251:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:251:110:251:117 | source(...) | user-provided value | +| LogInjectionTest.java:252:86:252:102 | (...)... | LogInjectionTest.java:252:95:252:102 | source(...) : Object | LogInjectionTest.java:252:86:252:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:252:95:252:102 | source(...) | user-provided value | +| LogInjectionTest.java:253:71:253:87 | (...)... | LogInjectionTest.java:253:80:253:87 | source(...) : Object | LogInjectionTest.java:253:71:253:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:253:80:253:87 | source(...) | user-provided value | +| LogInjectionTest.java:254:56:254:72 | (...)... | LogInjectionTest.java:254:65:254:72 | source(...) : Object | LogInjectionTest.java:254:56:254:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:254:65:254:72 | source(...) | user-provided value | +| LogInjectionTest.java:255:41:255:57 | (...)... | LogInjectionTest.java:255:50:255:57 | source(...) : Object | LogInjectionTest.java:255:41:255:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:255:50:255:57 | source(...) | user-provided value | +| LogInjectionTest.java:256:131:256:147 | (...)... | LogInjectionTest.java:256:140:256:147 | source(...) : Object | LogInjectionTest.java:256:131:256:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:256:140:256:147 | source(...) | user-provided value | +| LogInjectionTest.java:257:116:257:132 | (...)... | LogInjectionTest.java:257:125:257:132 | source(...) : Object | LogInjectionTest.java:257:116:257:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:257:125:257:132 | source(...) | user-provided value | +| LogInjectionTest.java:258:101:258:117 | (...)... | LogInjectionTest.java:258:110:258:117 | source(...) : Object | LogInjectionTest.java:258:101:258:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:258:110:258:117 | source(...) | user-provided value | +| LogInjectionTest.java:259:86:259:102 | (...)... | LogInjectionTest.java:259:95:259:102 | source(...) : Object | LogInjectionTest.java:259:86:259:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:259:95:259:102 | source(...) | user-provided value | +| LogInjectionTest.java:260:71:260:87 | (...)... | LogInjectionTest.java:260:80:260:87 | source(...) : Object | LogInjectionTest.java:260:71:260:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:260:80:260:87 | source(...) | user-provided value | +| LogInjectionTest.java:261:56:261:72 | (...)... | LogInjectionTest.java:261:65:261:72 | source(...) : Object | LogInjectionTest.java:261:56:261:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:261:65:261:72 | source(...) | user-provided value | +| LogInjectionTest.java:262:41:262:57 | (...)... | LogInjectionTest.java:262:50:262:57 | source(...) : Object | LogInjectionTest.java:262:41:262:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:262:50:262:57 | source(...) | user-provided value | +| LogInjectionTest.java:263:146:263:162 | (...)... | LogInjectionTest.java:263:155:263:162 | source(...) : Object | LogInjectionTest.java:263:146:263:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:263:155:263:162 | source(...) | user-provided value | +| LogInjectionTest.java:264:131:264:147 | (...)... | LogInjectionTest.java:264:140:264:147 | source(...) : Object | LogInjectionTest.java:264:131:264:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:264:140:264:147 | source(...) | user-provided value | +| LogInjectionTest.java:265:116:265:132 | (...)... | LogInjectionTest.java:265:125:265:132 | source(...) : Object | LogInjectionTest.java:265:116:265:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:265:125:265:132 | source(...) | user-provided value | +| LogInjectionTest.java:266:101:266:117 | (...)... | LogInjectionTest.java:266:110:266:117 | source(...) : Object | LogInjectionTest.java:266:101:266:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:266:110:266:117 | source(...) | user-provided value | +| LogInjectionTest.java:267:86:267:102 | (...)... | LogInjectionTest.java:267:95:267:102 | source(...) : Object | LogInjectionTest.java:267:86:267:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:267:95:267:102 | source(...) | user-provided value | +| LogInjectionTest.java:268:71:268:87 | (...)... | LogInjectionTest.java:268:80:268:87 | source(...) : Object | LogInjectionTest.java:268:71:268:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:268:80:268:87 | source(...) | user-provided value | +| LogInjectionTest.java:269:56:269:72 | (...)... | LogInjectionTest.java:269:65:269:72 | source(...) : Object | LogInjectionTest.java:269:56:269:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:269:65:269:72 | source(...) | user-provided value | +| LogInjectionTest.java:270:41:270:57 | (...)... | LogInjectionTest.java:270:50:270:57 | source(...) : Object | LogInjectionTest.java:270:41:270:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:270:50:270:57 | source(...) | user-provided value | | LogInjectionTest.java:271:161:271:177 | (...)... | LogInjectionTest.java:271:170:271:177 | source(...) : Object | LogInjectionTest.java:271:161:271:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:271:170:271:177 | source(...) | user-provided value | | LogInjectionTest.java:272:146:272:162 | (...)... | LogInjectionTest.java:272:155:272:162 | source(...) : Object | LogInjectionTest.java:272:146:272:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:272:155:272:162 | source(...) | user-provided value | | LogInjectionTest.java:273:131:273:147 | (...)... | LogInjectionTest.java:273:140:273:147 | source(...) : Object | LogInjectionTest.java:273:131:273:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:273:140:273:147 | source(...) | user-provided value | @@ -127,65 +119,65 @@ | LogInjectionTest.java:277:71:277:87 | (...)... | LogInjectionTest.java:277:80:277:87 | source(...) : Object | LogInjectionTest.java:277:71:277:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:277:80:277:87 | source(...) | user-provided value | | LogInjectionTest.java:278:56:278:72 | (...)... | LogInjectionTest.java:278:65:278:72 | source(...) : Object | LogInjectionTest.java:278:56:278:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:278:65:278:72 | source(...) | user-provided value | | LogInjectionTest.java:279:41:279:57 | (...)... | LogInjectionTest.java:279:50:279:57 | source(...) : Object | LogInjectionTest.java:279:41:279:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:279:50:279:57 | source(...) | user-provided value | -| LogInjectionTest.java:280:41:280:57 | (...)... | LogInjectionTest.java:280:50:280:57 | source(...) : Object | LogInjectionTest.java:280:41:280:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:280:50:280:57 | source(...) | user-provided value | -| LogInjectionTest.java:281:56:281:77 | (...)... | LogInjectionTest.java:281:70:281:77 | source(...) : Object | LogInjectionTest.java:281:56:281:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:281:70:281:77 | source(...) | user-provided value | -| LogInjectionTest.java:282:41:282:57 | (...)... | LogInjectionTest.java:282:50:282:57 | source(...) : Object | LogInjectionTest.java:282:41:282:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:282:50:282:57 | source(...) | user-provided value | -| LogInjectionTest.java:283:41:283:62 | (...)... | LogInjectionTest.java:283:55:283:62 | source(...) : Object | LogInjectionTest.java:283:41:283:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:283:55:283:62 | source(...) | user-provided value | -| LogInjectionTest.java:284:41:284:62 | (...)... | LogInjectionTest.java:284:55:284:62 | source(...) : Object | LogInjectionTest.java:284:41:284:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:284:55:284:62 | source(...) | user-provided value | -| LogInjectionTest.java:285:26:285:51 | (...)... | LogInjectionTest.java:285:44:285:51 | source(...) : Object | LogInjectionTest.java:285:26:285:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:285:44:285:51 | source(...) | user-provided value | -| LogInjectionTest.java:286:26:286:51 | (...)... | LogInjectionTest.java:286:44:286:51 | source(...) : Object | LogInjectionTest.java:286:26:286:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:286:44:286:51 | source(...) | user-provided value | -| LogInjectionTest.java:287:26:287:43 | (...)... | LogInjectionTest.java:287:36:287:43 | source(...) : Object | LogInjectionTest.java:287:26:287:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:287:36:287:43 | source(...) | user-provided value | -| LogInjectionTest.java:288:26:288:43 | (...)... | LogInjectionTest.java:288:36:288:43 | source(...) : Object | LogInjectionTest.java:288:26:288:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:288:36:288:43 | source(...) | user-provided value | -| LogInjectionTest.java:289:26:289:33 | source(...) | LogInjectionTest.java:289:26:289:33 | source(...) | LogInjectionTest.java:289:26:289:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:289:26:289:33 | source(...) | user-provided value | -| LogInjectionTest.java:290:26:290:33 | source(...) | LogInjectionTest.java:290:26:290:33 | source(...) | LogInjectionTest.java:290:26:290:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:290:26:290:33 | source(...) | user-provided value | -| LogInjectionTest.java:291:26:291:42 | (...)... | LogInjectionTest.java:291:35:291:42 | source(...) : Object | LogInjectionTest.java:291:26:291:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:291:35:291:42 | source(...) | user-provided value | -| LogInjectionTest.java:292:26:292:42 | (...)... | LogInjectionTest.java:292:35:292:42 | source(...) : Object | LogInjectionTest.java:292:26:292:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:292:35:292:42 | source(...) | user-provided value | -| LogInjectionTest.java:293:41:293:63 | new Object[] | LogInjectionTest.java:293:55:293:62 | source(...) : Object | LogInjectionTest.java:293:41:293:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:293:55:293:62 | source(...) | user-provided value | -| LogInjectionTest.java:294:41:294:57 | (...)... | LogInjectionTest.java:294:50:294:57 | source(...) : Object | LogInjectionTest.java:294:41:294:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:294:50:294:57 | source(...) | user-provided value | -| LogInjectionTest.java:295:26:295:42 | (...)... | LogInjectionTest.java:295:35:295:42 | source(...) : Object | LogInjectionTest.java:295:26:295:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:295:35:295:42 | source(...) | user-provided value | -| LogInjectionTest.java:296:56:296:72 | (...)... | LogInjectionTest.java:296:65:296:72 | source(...) : Object | LogInjectionTest.java:296:56:296:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:296:65:296:72 | source(...) | user-provided value | -| LogInjectionTest.java:297:41:297:57 | (...)... | LogInjectionTest.java:297:50:297:57 | source(...) : Object | LogInjectionTest.java:297:41:297:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:297:50:297:57 | source(...) | user-provided value | -| LogInjectionTest.java:298:26:298:42 | (...)... | LogInjectionTest.java:298:35:298:42 | source(...) : Object | LogInjectionTest.java:298:26:298:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:298:35:298:42 | source(...) | user-provided value | -| LogInjectionTest.java:299:71:299:87 | (...)... | LogInjectionTest.java:299:80:299:87 | source(...) : Object | LogInjectionTest.java:299:71:299:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:299:80:299:87 | source(...) | user-provided value | -| LogInjectionTest.java:300:56:300:72 | (...)... | LogInjectionTest.java:300:65:300:72 | source(...) : Object | LogInjectionTest.java:300:56:300:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:300:65:300:72 | source(...) | user-provided value | -| LogInjectionTest.java:301:41:301:57 | (...)... | LogInjectionTest.java:301:50:301:57 | source(...) : Object | LogInjectionTest.java:301:41:301:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:301:50:301:57 | source(...) | user-provided value | +| LogInjectionTest.java:280:176:280:192 | (...)... | LogInjectionTest.java:280:185:280:192 | source(...) : Object | LogInjectionTest.java:280:176:280:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:280:185:280:192 | source(...) | user-provided value | +| LogInjectionTest.java:281:161:281:177 | (...)... | LogInjectionTest.java:281:170:281:177 | source(...) : Object | LogInjectionTest.java:281:161:281:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:281:170:281:177 | source(...) | user-provided value | +| LogInjectionTest.java:282:146:282:162 | (...)... | LogInjectionTest.java:282:155:282:162 | source(...) : Object | LogInjectionTest.java:282:146:282:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:282:155:282:162 | source(...) | user-provided value | +| LogInjectionTest.java:283:131:283:147 | (...)... | LogInjectionTest.java:283:140:283:147 | source(...) : Object | LogInjectionTest.java:283:131:283:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:283:140:283:147 | source(...) | user-provided value | +| LogInjectionTest.java:284:116:284:132 | (...)... | LogInjectionTest.java:284:125:284:132 | source(...) : Object | LogInjectionTest.java:284:116:284:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:284:125:284:132 | source(...) | user-provided value | +| LogInjectionTest.java:285:101:285:117 | (...)... | LogInjectionTest.java:285:110:285:117 | source(...) : Object | LogInjectionTest.java:285:101:285:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:285:110:285:117 | source(...) | user-provided value | +| LogInjectionTest.java:286:86:286:102 | (...)... | LogInjectionTest.java:286:95:286:102 | source(...) : Object | LogInjectionTest.java:286:86:286:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:286:95:286:102 | source(...) | user-provided value | +| LogInjectionTest.java:287:71:287:87 | (...)... | LogInjectionTest.java:287:80:287:87 | source(...) : Object | LogInjectionTest.java:287:71:287:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:287:80:287:87 | source(...) | user-provided value | +| LogInjectionTest.java:288:56:288:72 | (...)... | LogInjectionTest.java:288:65:288:72 | source(...) : Object | LogInjectionTest.java:288:56:288:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:288:65:288:72 | source(...) | user-provided value | +| LogInjectionTest.java:289:41:289:57 | (...)... | LogInjectionTest.java:289:50:289:57 | source(...) : Object | LogInjectionTest.java:289:41:289:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:289:50:289:57 | source(...) | user-provided value | +| LogInjectionTest.java:290:41:290:57 | (...)... | LogInjectionTest.java:290:50:290:57 | source(...) : Object | LogInjectionTest.java:290:41:290:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:290:50:290:57 | source(...) | user-provided value | +| LogInjectionTest.java:291:56:291:77 | (...)... | LogInjectionTest.java:291:70:291:77 | source(...) : Object | LogInjectionTest.java:291:56:291:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:291:70:291:77 | source(...) | user-provided value | +| LogInjectionTest.java:292:41:292:57 | (...)... | LogInjectionTest.java:292:50:292:57 | source(...) : Object | LogInjectionTest.java:292:41:292:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:292:50:292:57 | source(...) | user-provided value | +| LogInjectionTest.java:293:41:293:62 | (...)... | LogInjectionTest.java:293:55:293:62 | source(...) : Object | LogInjectionTest.java:293:41:293:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:293:55:293:62 | source(...) | user-provided value | +| LogInjectionTest.java:294:41:294:62 | (...)... | LogInjectionTest.java:294:55:294:62 | source(...) : Object | LogInjectionTest.java:294:41:294:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:294:55:294:62 | source(...) | user-provided value | +| LogInjectionTest.java:295:26:295:51 | (...)... | LogInjectionTest.java:295:44:295:51 | source(...) : Object | LogInjectionTest.java:295:26:295:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:295:44:295:51 | source(...) | user-provided value | +| LogInjectionTest.java:296:26:296:51 | (...)... | LogInjectionTest.java:296:44:296:51 | source(...) : Object | LogInjectionTest.java:296:26:296:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:296:44:296:51 | source(...) | user-provided value | +| LogInjectionTest.java:297:26:297:43 | (...)... | LogInjectionTest.java:297:36:297:43 | source(...) : Object | LogInjectionTest.java:297:26:297:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:297:36:297:43 | source(...) | user-provided value | +| LogInjectionTest.java:298:26:298:43 | (...)... | LogInjectionTest.java:298:36:298:43 | source(...) : Object | LogInjectionTest.java:298:26:298:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:298:36:298:43 | source(...) | user-provided value | +| LogInjectionTest.java:299:26:299:33 | source(...) | LogInjectionTest.java:299:26:299:33 | source(...) | LogInjectionTest.java:299:26:299:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:299:26:299:33 | source(...) | user-provided value | +| LogInjectionTest.java:300:26:300:33 | source(...) | LogInjectionTest.java:300:26:300:33 | source(...) | LogInjectionTest.java:300:26:300:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:300:26:300:33 | source(...) | user-provided value | +| LogInjectionTest.java:301:26:301:42 | (...)... | LogInjectionTest.java:301:35:301:42 | source(...) : Object | LogInjectionTest.java:301:26:301:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:301:35:301:42 | source(...) | user-provided value | | LogInjectionTest.java:302:26:302:42 | (...)... | LogInjectionTest.java:302:35:302:42 | source(...) : Object | LogInjectionTest.java:302:26:302:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:302:35:302:42 | source(...) | user-provided value | -| LogInjectionTest.java:303:86:303:102 | (...)... | LogInjectionTest.java:303:95:303:102 | source(...) : Object | LogInjectionTest.java:303:86:303:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:303:95:303:102 | source(...) | user-provided value | -| LogInjectionTest.java:304:71:304:87 | (...)... | LogInjectionTest.java:304:80:304:87 | source(...) : Object | LogInjectionTest.java:304:71:304:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:304:80:304:87 | source(...) | user-provided value | -| LogInjectionTest.java:305:56:305:72 | (...)... | LogInjectionTest.java:305:65:305:72 | source(...) : Object | LogInjectionTest.java:305:56:305:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:305:65:305:72 | source(...) | user-provided value | -| LogInjectionTest.java:306:41:306:57 | (...)... | LogInjectionTest.java:306:50:306:57 | source(...) : Object | LogInjectionTest.java:306:41:306:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:306:50:306:57 | source(...) | user-provided value | -| LogInjectionTest.java:307:26:307:42 | (...)... | LogInjectionTest.java:307:35:307:42 | source(...) : Object | LogInjectionTest.java:307:26:307:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:307:35:307:42 | source(...) | user-provided value | -| LogInjectionTest.java:308:101:308:117 | (...)... | LogInjectionTest.java:308:110:308:117 | source(...) : Object | LogInjectionTest.java:308:101:308:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:308:110:308:117 | source(...) | user-provided value | -| LogInjectionTest.java:309:86:309:102 | (...)... | LogInjectionTest.java:309:95:309:102 | source(...) : Object | LogInjectionTest.java:309:86:309:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:309:95:309:102 | source(...) | user-provided value | -| LogInjectionTest.java:310:71:310:87 | (...)... | LogInjectionTest.java:310:80:310:87 | source(...) : Object | LogInjectionTest.java:310:71:310:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:310:80:310:87 | source(...) | user-provided value | -| LogInjectionTest.java:311:56:311:72 | (...)... | LogInjectionTest.java:311:65:311:72 | source(...) : Object | LogInjectionTest.java:311:56:311:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:311:65:311:72 | source(...) | user-provided value | -| LogInjectionTest.java:312:41:312:57 | (...)... | LogInjectionTest.java:312:50:312:57 | source(...) : Object | LogInjectionTest.java:312:41:312:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:312:50:312:57 | source(...) | user-provided value | -| LogInjectionTest.java:313:26:313:42 | (...)... | LogInjectionTest.java:313:35:313:42 | source(...) : Object | LogInjectionTest.java:313:26:313:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:313:35:313:42 | source(...) | user-provided value | -| LogInjectionTest.java:314:116:314:132 | (...)... | LogInjectionTest.java:314:125:314:132 | source(...) : Object | LogInjectionTest.java:314:116:314:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:314:125:314:132 | source(...) | user-provided value | -| LogInjectionTest.java:315:101:315:117 | (...)... | LogInjectionTest.java:315:110:315:117 | source(...) : Object | LogInjectionTest.java:315:101:315:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:315:110:315:117 | source(...) | user-provided value | -| LogInjectionTest.java:316:86:316:102 | (...)... | LogInjectionTest.java:316:95:316:102 | source(...) : Object | LogInjectionTest.java:316:86:316:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:316:95:316:102 | source(...) | user-provided value | -| LogInjectionTest.java:317:71:317:87 | (...)... | LogInjectionTest.java:317:80:317:87 | source(...) : Object | LogInjectionTest.java:317:71:317:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:317:80:317:87 | source(...) | user-provided value | -| LogInjectionTest.java:318:56:318:72 | (...)... | LogInjectionTest.java:318:65:318:72 | source(...) : Object | LogInjectionTest.java:318:56:318:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:318:65:318:72 | source(...) | user-provided value | -| LogInjectionTest.java:319:41:319:57 | (...)... | LogInjectionTest.java:319:50:319:57 | source(...) : Object | LogInjectionTest.java:319:41:319:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:319:50:319:57 | source(...) | user-provided value | -| LogInjectionTest.java:320:26:320:42 | (...)... | LogInjectionTest.java:320:35:320:42 | source(...) : Object | LogInjectionTest.java:320:26:320:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:320:35:320:42 | source(...) | user-provided value | -| LogInjectionTest.java:321:131:321:147 | (...)... | LogInjectionTest.java:321:140:321:147 | source(...) : Object | LogInjectionTest.java:321:131:321:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:321:140:321:147 | source(...) | user-provided value | -| LogInjectionTest.java:322:116:322:132 | (...)... | LogInjectionTest.java:322:125:322:132 | source(...) : Object | LogInjectionTest.java:322:116:322:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:322:125:322:132 | source(...) | user-provided value | -| LogInjectionTest.java:323:101:323:117 | (...)... | LogInjectionTest.java:323:110:323:117 | source(...) : Object | LogInjectionTest.java:323:101:323:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:323:110:323:117 | source(...) | user-provided value | -| LogInjectionTest.java:324:86:324:102 | (...)... | LogInjectionTest.java:324:95:324:102 | source(...) : Object | LogInjectionTest.java:324:86:324:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:324:95:324:102 | source(...) | user-provided value | -| LogInjectionTest.java:325:71:325:87 | (...)... | LogInjectionTest.java:325:80:325:87 | source(...) : Object | LogInjectionTest.java:325:71:325:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:325:80:325:87 | source(...) | user-provided value | -| LogInjectionTest.java:326:56:326:72 | (...)... | LogInjectionTest.java:326:65:326:72 | source(...) : Object | LogInjectionTest.java:326:56:326:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:326:65:326:72 | source(...) | user-provided value | -| LogInjectionTest.java:327:41:327:57 | (...)... | LogInjectionTest.java:327:50:327:57 | source(...) : Object | LogInjectionTest.java:327:41:327:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:327:50:327:57 | source(...) | user-provided value | -| LogInjectionTest.java:328:26:328:42 | (...)... | LogInjectionTest.java:328:35:328:42 | source(...) : Object | LogInjectionTest.java:328:26:328:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:328:35:328:42 | source(...) | user-provided value | -| LogInjectionTest.java:329:146:329:162 | (...)... | LogInjectionTest.java:329:155:329:162 | source(...) : Object | LogInjectionTest.java:329:146:329:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:329:155:329:162 | source(...) | user-provided value | -| LogInjectionTest.java:330:131:330:147 | (...)... | LogInjectionTest.java:330:140:330:147 | source(...) : Object | LogInjectionTest.java:330:131:330:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:330:140:330:147 | source(...) | user-provided value | -| LogInjectionTest.java:331:116:331:132 | (...)... | LogInjectionTest.java:331:125:331:132 | source(...) : Object | LogInjectionTest.java:331:116:331:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:331:125:331:132 | source(...) | user-provided value | -| LogInjectionTest.java:332:101:332:117 | (...)... | LogInjectionTest.java:332:110:332:117 | source(...) : Object | LogInjectionTest.java:332:101:332:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:332:110:332:117 | source(...) | user-provided value | -| LogInjectionTest.java:333:86:333:102 | (...)... | LogInjectionTest.java:333:95:333:102 | source(...) : Object | LogInjectionTest.java:333:86:333:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:333:95:333:102 | source(...) | user-provided value | -| LogInjectionTest.java:334:71:334:87 | (...)... | LogInjectionTest.java:334:80:334:87 | source(...) : Object | LogInjectionTest.java:334:71:334:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:334:80:334:87 | source(...) | user-provided value | -| LogInjectionTest.java:335:56:335:72 | (...)... | LogInjectionTest.java:335:65:335:72 | source(...) : Object | LogInjectionTest.java:335:56:335:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:335:65:335:72 | source(...) | user-provided value | -| LogInjectionTest.java:336:41:336:57 | (...)... | LogInjectionTest.java:336:50:336:57 | source(...) : Object | LogInjectionTest.java:336:41:336:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:336:50:336:57 | source(...) | user-provided value | -| LogInjectionTest.java:337:26:337:42 | (...)... | LogInjectionTest.java:337:35:337:42 | source(...) : Object | LogInjectionTest.java:337:26:337:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:337:35:337:42 | source(...) | user-provided value | -| LogInjectionTest.java:338:161:338:177 | (...)... | LogInjectionTest.java:338:170:338:177 | source(...) : Object | LogInjectionTest.java:338:161:338:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:338:170:338:177 | source(...) | user-provided value | +| LogInjectionTest.java:303:41:303:63 | new Object[] | LogInjectionTest.java:303:55:303:62 | source(...) : Object | LogInjectionTest.java:303:41:303:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:303:55:303:62 | source(...) | user-provided value | +| LogInjectionTest.java:304:41:304:57 | (...)... | LogInjectionTest.java:304:50:304:57 | source(...) : Object | LogInjectionTest.java:304:41:304:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:304:50:304:57 | source(...) | user-provided value | +| LogInjectionTest.java:305:26:305:42 | (...)... | LogInjectionTest.java:305:35:305:42 | source(...) : Object | LogInjectionTest.java:305:26:305:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:305:35:305:42 | source(...) | user-provided value | +| LogInjectionTest.java:306:56:306:72 | (...)... | LogInjectionTest.java:306:65:306:72 | source(...) : Object | LogInjectionTest.java:306:56:306:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:306:65:306:72 | source(...) | user-provided value | +| LogInjectionTest.java:307:41:307:57 | (...)... | LogInjectionTest.java:307:50:307:57 | source(...) : Object | LogInjectionTest.java:307:41:307:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:307:50:307:57 | source(...) | user-provided value | +| LogInjectionTest.java:308:26:308:42 | (...)... | LogInjectionTest.java:308:35:308:42 | source(...) : Object | LogInjectionTest.java:308:26:308:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:308:35:308:42 | source(...) | user-provided value | +| LogInjectionTest.java:309:71:309:87 | (...)... | LogInjectionTest.java:309:80:309:87 | source(...) : Object | LogInjectionTest.java:309:71:309:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:309:80:309:87 | source(...) | user-provided value | +| LogInjectionTest.java:310:56:310:72 | (...)... | LogInjectionTest.java:310:65:310:72 | source(...) : Object | LogInjectionTest.java:310:56:310:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:310:65:310:72 | source(...) | user-provided value | +| LogInjectionTest.java:311:41:311:57 | (...)... | LogInjectionTest.java:311:50:311:57 | source(...) : Object | LogInjectionTest.java:311:41:311:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:311:50:311:57 | source(...) | user-provided value | +| LogInjectionTest.java:312:26:312:42 | (...)... | LogInjectionTest.java:312:35:312:42 | source(...) : Object | LogInjectionTest.java:312:26:312:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:312:35:312:42 | source(...) | user-provided value | +| LogInjectionTest.java:313:86:313:102 | (...)... | LogInjectionTest.java:313:95:313:102 | source(...) : Object | LogInjectionTest.java:313:86:313:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:313:95:313:102 | source(...) | user-provided value | +| LogInjectionTest.java:314:71:314:87 | (...)... | LogInjectionTest.java:314:80:314:87 | source(...) : Object | LogInjectionTest.java:314:71:314:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:314:80:314:87 | source(...) | user-provided value | +| LogInjectionTest.java:315:56:315:72 | (...)... | LogInjectionTest.java:315:65:315:72 | source(...) : Object | LogInjectionTest.java:315:56:315:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:315:65:315:72 | source(...) | user-provided value | +| LogInjectionTest.java:316:41:316:57 | (...)... | LogInjectionTest.java:316:50:316:57 | source(...) : Object | LogInjectionTest.java:316:41:316:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:316:50:316:57 | source(...) | user-provided value | +| LogInjectionTest.java:317:26:317:42 | (...)... | LogInjectionTest.java:317:35:317:42 | source(...) : Object | LogInjectionTest.java:317:26:317:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:317:35:317:42 | source(...) | user-provided value | +| LogInjectionTest.java:318:101:318:117 | (...)... | LogInjectionTest.java:318:110:318:117 | source(...) : Object | LogInjectionTest.java:318:101:318:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:318:110:318:117 | source(...) | user-provided value | +| LogInjectionTest.java:319:86:319:102 | (...)... | LogInjectionTest.java:319:95:319:102 | source(...) : Object | LogInjectionTest.java:319:86:319:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:319:95:319:102 | source(...) | user-provided value | +| LogInjectionTest.java:320:71:320:87 | (...)... | LogInjectionTest.java:320:80:320:87 | source(...) : Object | LogInjectionTest.java:320:71:320:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:320:80:320:87 | source(...) | user-provided value | +| LogInjectionTest.java:321:56:321:72 | (...)... | LogInjectionTest.java:321:65:321:72 | source(...) : Object | LogInjectionTest.java:321:56:321:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:321:65:321:72 | source(...) | user-provided value | +| LogInjectionTest.java:322:41:322:57 | (...)... | LogInjectionTest.java:322:50:322:57 | source(...) : Object | LogInjectionTest.java:322:41:322:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:322:50:322:57 | source(...) | user-provided value | +| LogInjectionTest.java:323:26:323:42 | (...)... | LogInjectionTest.java:323:35:323:42 | source(...) : Object | LogInjectionTest.java:323:26:323:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:323:35:323:42 | source(...) | user-provided value | +| LogInjectionTest.java:324:116:324:132 | (...)... | LogInjectionTest.java:324:125:324:132 | source(...) : Object | LogInjectionTest.java:324:116:324:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:324:125:324:132 | source(...) | user-provided value | +| LogInjectionTest.java:325:101:325:117 | (...)... | LogInjectionTest.java:325:110:325:117 | source(...) : Object | LogInjectionTest.java:325:101:325:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:325:110:325:117 | source(...) | user-provided value | +| LogInjectionTest.java:326:86:326:102 | (...)... | LogInjectionTest.java:326:95:326:102 | source(...) : Object | LogInjectionTest.java:326:86:326:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:326:95:326:102 | source(...) | user-provided value | +| LogInjectionTest.java:327:71:327:87 | (...)... | LogInjectionTest.java:327:80:327:87 | source(...) : Object | LogInjectionTest.java:327:71:327:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:327:80:327:87 | source(...) | user-provided value | +| LogInjectionTest.java:328:56:328:72 | (...)... | LogInjectionTest.java:328:65:328:72 | source(...) : Object | LogInjectionTest.java:328:56:328:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:328:65:328:72 | source(...) | user-provided value | +| LogInjectionTest.java:329:41:329:57 | (...)... | LogInjectionTest.java:329:50:329:57 | source(...) : Object | LogInjectionTest.java:329:41:329:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:329:50:329:57 | source(...) | user-provided value | +| LogInjectionTest.java:330:26:330:42 | (...)... | LogInjectionTest.java:330:35:330:42 | source(...) : Object | LogInjectionTest.java:330:26:330:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:330:35:330:42 | source(...) | user-provided value | +| LogInjectionTest.java:331:131:331:147 | (...)... | LogInjectionTest.java:331:140:331:147 | source(...) : Object | LogInjectionTest.java:331:131:331:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:331:140:331:147 | source(...) | user-provided value | +| LogInjectionTest.java:332:116:332:132 | (...)... | LogInjectionTest.java:332:125:332:132 | source(...) : Object | LogInjectionTest.java:332:116:332:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:332:125:332:132 | source(...) | user-provided value | +| LogInjectionTest.java:333:101:333:117 | (...)... | LogInjectionTest.java:333:110:333:117 | source(...) : Object | LogInjectionTest.java:333:101:333:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:333:110:333:117 | source(...) | user-provided value | +| LogInjectionTest.java:334:86:334:102 | (...)... | LogInjectionTest.java:334:95:334:102 | source(...) : Object | LogInjectionTest.java:334:86:334:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:334:95:334:102 | source(...) | user-provided value | +| LogInjectionTest.java:335:71:335:87 | (...)... | LogInjectionTest.java:335:80:335:87 | source(...) : Object | LogInjectionTest.java:335:71:335:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:335:80:335:87 | source(...) | user-provided value | +| LogInjectionTest.java:336:56:336:72 | (...)... | LogInjectionTest.java:336:65:336:72 | source(...) : Object | LogInjectionTest.java:336:56:336:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:336:65:336:72 | source(...) | user-provided value | +| LogInjectionTest.java:337:41:337:57 | (...)... | LogInjectionTest.java:337:50:337:57 | source(...) : Object | LogInjectionTest.java:337:41:337:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:337:50:337:57 | source(...) | user-provided value | +| LogInjectionTest.java:338:26:338:42 | (...)... | LogInjectionTest.java:338:35:338:42 | source(...) : Object | LogInjectionTest.java:338:26:338:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:338:35:338:42 | source(...) | user-provided value | | LogInjectionTest.java:339:146:339:162 | (...)... | LogInjectionTest.java:339:155:339:162 | source(...) : Object | LogInjectionTest.java:339:146:339:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:339:155:339:162 | source(...) | user-provided value | | LogInjectionTest.java:340:131:340:147 | (...)... | LogInjectionTest.java:340:140:340:147 | source(...) : Object | LogInjectionTest.java:340:131:340:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:340:140:340:147 | source(...) | user-provided value | | LogInjectionTest.java:341:116:341:132 | (...)... | LogInjectionTest.java:341:125:341:132 | source(...) : Object | LogInjectionTest.java:341:116:341:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:341:125:341:132 | source(...) | user-provided value | @@ -195,67 +187,67 @@ | LogInjectionTest.java:345:56:345:72 | (...)... | LogInjectionTest.java:345:65:345:72 | source(...) : Object | LogInjectionTest.java:345:56:345:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:345:65:345:72 | source(...) | user-provided value | | LogInjectionTest.java:346:41:346:57 | (...)... | LogInjectionTest.java:346:50:346:57 | source(...) : Object | LogInjectionTest.java:346:41:346:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:346:50:346:57 | source(...) | user-provided value | | LogInjectionTest.java:347:26:347:42 | (...)... | LogInjectionTest.java:347:35:347:42 | source(...) : Object | LogInjectionTest.java:347:26:347:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:347:35:347:42 | source(...) | user-provided value | -| LogInjectionTest.java:348:26:348:42 | (...)... | LogInjectionTest.java:348:35:348:42 | source(...) : Object | LogInjectionTest.java:348:26:348:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:348:35:348:42 | source(...) | user-provided value | -| LogInjectionTest.java:349:41:349:62 | (...)... | LogInjectionTest.java:349:55:349:62 | source(...) : Object | LogInjectionTest.java:349:41:349:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:349:55:349:62 | source(...) | user-provided value | -| LogInjectionTest.java:350:26:350:42 | (...)... | LogInjectionTest.java:350:35:350:42 | source(...) : Object | LogInjectionTest.java:350:26:350:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:350:35:350:42 | source(...) | user-provided value | -| LogInjectionTest.java:351:26:351:47 | (...)... | LogInjectionTest.java:351:40:351:47 | source(...) : Object | LogInjectionTest.java:351:26:351:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:351:40:351:47 | source(...) | user-provided value | -| LogInjectionTest.java:352:26:352:47 | (...)... | LogInjectionTest.java:352:40:352:47 | source(...) : Object | LogInjectionTest.java:352:26:352:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:352:40:352:47 | source(...) | user-provided value | -| LogInjectionTest.java:353:26:353:48 | (...)... | LogInjectionTest.java:353:41:353:48 | source(...) : Object | LogInjectionTest.java:353:26:353:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:353:41:353:48 | source(...) | user-provided value | -| LogInjectionTest.java:354:26:354:48 | (...)... | LogInjectionTest.java:354:41:354:48 | source(...) : Object | LogInjectionTest.java:354:26:354:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:354:41:354:48 | source(...) | user-provided value | -| LogInjectionTest.java:355:41:355:63 | (...)... | LogInjectionTest.java:355:56:355:63 | source(...) : Object | LogInjectionTest.java:355:41:355:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:355:56:355:63 | source(...) | user-provided value | -| LogInjectionTest.java:356:41:356:63 | (...)... | LogInjectionTest.java:356:56:356:63 | source(...) : Object | LogInjectionTest.java:356:41:356:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:356:56:356:63 | source(...) | user-provided value | -| LogInjectionTest.java:357:41:357:58 | (...)... | LogInjectionTest.java:357:51:357:58 | source(...) : Object | LogInjectionTest.java:357:41:357:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:357:51:357:58 | source(...) | user-provided value | -| LogInjectionTest.java:358:41:358:66 | (...)... | LogInjectionTest.java:358:59:358:66 | source(...) : Object | LogInjectionTest.java:358:41:358:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:358:59:358:66 | source(...) | user-provided value | -| LogInjectionTest.java:359:41:359:66 | (...)... | LogInjectionTest.java:359:59:359:66 | source(...) : Object | LogInjectionTest.java:359:41:359:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:359:59:359:66 | source(...) | user-provided value | -| LogInjectionTest.java:360:41:360:48 | source(...) | LogInjectionTest.java:360:41:360:48 | source(...) | LogInjectionTest.java:360:41:360:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:360:41:360:48 | source(...) | user-provided value | -| LogInjectionTest.java:361:41:361:57 | (...)... | LogInjectionTest.java:361:50:361:57 | source(...) : Object | LogInjectionTest.java:361:41:361:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:361:50:361:57 | source(...) | user-provided value | -| LogInjectionTest.java:362:41:362:57 | (...)... | LogInjectionTest.java:362:50:362:57 | source(...) : Object | LogInjectionTest.java:362:41:362:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:362:50:362:57 | source(...) | user-provided value | -| LogInjectionTest.java:363:56:363:78 | new Object[] | LogInjectionTest.java:363:70:363:77 | source(...) : Object | LogInjectionTest.java:363:56:363:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:363:70:363:77 | source(...) | user-provided value | -| LogInjectionTest.java:364:56:364:72 | (...)... | LogInjectionTest.java:364:65:364:72 | source(...) : Object | LogInjectionTest.java:364:56:364:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:364:65:364:72 | source(...) | user-provided value | -| LogInjectionTest.java:365:41:365:57 | (...)... | LogInjectionTest.java:365:50:365:57 | source(...) : Object | LogInjectionTest.java:365:41:365:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:365:50:365:57 | source(...) | user-provided value | -| LogInjectionTest.java:366:71:366:87 | (...)... | LogInjectionTest.java:366:80:366:87 | source(...) : Object | LogInjectionTest.java:366:71:366:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:366:80:366:87 | source(...) | user-provided value | -| LogInjectionTest.java:367:56:367:72 | (...)... | LogInjectionTest.java:367:65:367:72 | source(...) : Object | LogInjectionTest.java:367:56:367:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:367:65:367:72 | source(...) | user-provided value | -| LogInjectionTest.java:368:41:368:57 | (...)... | LogInjectionTest.java:368:50:368:57 | source(...) : Object | LogInjectionTest.java:368:41:368:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:368:50:368:57 | source(...) | user-provided value | -| LogInjectionTest.java:369:86:369:102 | (...)... | LogInjectionTest.java:369:95:369:102 | source(...) : Object | LogInjectionTest.java:369:86:369:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:369:95:369:102 | source(...) | user-provided value | -| LogInjectionTest.java:370:71:370:87 | (...)... | LogInjectionTest.java:370:80:370:87 | source(...) : Object | LogInjectionTest.java:370:71:370:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:370:80:370:87 | source(...) | user-provided value | -| LogInjectionTest.java:371:56:371:72 | (...)... | LogInjectionTest.java:371:65:371:72 | source(...) : Object | LogInjectionTest.java:371:56:371:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:371:65:371:72 | source(...) | user-provided value | +| LogInjectionTest.java:348:161:348:177 | (...)... | LogInjectionTest.java:348:170:348:177 | source(...) : Object | LogInjectionTest.java:348:161:348:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:348:170:348:177 | source(...) | user-provided value | +| LogInjectionTest.java:349:146:349:162 | (...)... | LogInjectionTest.java:349:155:349:162 | source(...) : Object | LogInjectionTest.java:349:146:349:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:349:155:349:162 | source(...) | user-provided value | +| LogInjectionTest.java:350:131:350:147 | (...)... | LogInjectionTest.java:350:140:350:147 | source(...) : Object | LogInjectionTest.java:350:131:350:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:350:140:350:147 | source(...) | user-provided value | +| LogInjectionTest.java:351:116:351:132 | (...)... | LogInjectionTest.java:351:125:351:132 | source(...) : Object | LogInjectionTest.java:351:116:351:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:351:125:351:132 | source(...) | user-provided value | +| LogInjectionTest.java:352:101:352:117 | (...)... | LogInjectionTest.java:352:110:352:117 | source(...) : Object | LogInjectionTest.java:352:101:352:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:352:110:352:117 | source(...) | user-provided value | +| LogInjectionTest.java:353:86:353:102 | (...)... | LogInjectionTest.java:353:95:353:102 | source(...) : Object | LogInjectionTest.java:353:86:353:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:353:95:353:102 | source(...) | user-provided value | +| LogInjectionTest.java:354:71:354:87 | (...)... | LogInjectionTest.java:354:80:354:87 | source(...) : Object | LogInjectionTest.java:354:71:354:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:354:80:354:87 | source(...) | user-provided value | +| LogInjectionTest.java:355:56:355:72 | (...)... | LogInjectionTest.java:355:65:355:72 | source(...) : Object | LogInjectionTest.java:355:56:355:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:355:65:355:72 | source(...) | user-provided value | +| LogInjectionTest.java:356:41:356:57 | (...)... | LogInjectionTest.java:356:50:356:57 | source(...) : Object | LogInjectionTest.java:356:41:356:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:356:50:356:57 | source(...) | user-provided value | +| LogInjectionTest.java:357:26:357:42 | (...)... | LogInjectionTest.java:357:35:357:42 | source(...) : Object | LogInjectionTest.java:357:26:357:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:357:35:357:42 | source(...) | user-provided value | +| LogInjectionTest.java:358:26:358:42 | (...)... | LogInjectionTest.java:358:35:358:42 | source(...) : Object | LogInjectionTest.java:358:26:358:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:358:35:358:42 | source(...) | user-provided value | +| LogInjectionTest.java:359:41:359:62 | (...)... | LogInjectionTest.java:359:55:359:62 | source(...) : Object | LogInjectionTest.java:359:41:359:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:359:55:359:62 | source(...) | user-provided value | +| LogInjectionTest.java:360:26:360:42 | (...)... | LogInjectionTest.java:360:35:360:42 | source(...) : Object | LogInjectionTest.java:360:26:360:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:360:35:360:42 | source(...) | user-provided value | +| LogInjectionTest.java:361:26:361:47 | (...)... | LogInjectionTest.java:361:40:361:47 | source(...) : Object | LogInjectionTest.java:361:26:361:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:361:40:361:47 | source(...) | user-provided value | +| LogInjectionTest.java:362:26:362:47 | (...)... | LogInjectionTest.java:362:40:362:47 | source(...) : Object | LogInjectionTest.java:362:26:362:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:362:40:362:47 | source(...) | user-provided value | +| LogInjectionTest.java:363:26:363:48 | (...)... | LogInjectionTest.java:363:41:363:48 | source(...) : Object | LogInjectionTest.java:363:26:363:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:363:41:363:48 | source(...) | user-provided value | +| LogInjectionTest.java:364:26:364:48 | (...)... | LogInjectionTest.java:364:41:364:48 | source(...) : Object | LogInjectionTest.java:364:26:364:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:364:41:364:48 | source(...) | user-provided value | +| LogInjectionTest.java:365:41:365:63 | (...)... | LogInjectionTest.java:365:56:365:63 | source(...) : Object | LogInjectionTest.java:365:41:365:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:365:56:365:63 | source(...) | user-provided value | +| LogInjectionTest.java:366:41:366:63 | (...)... | LogInjectionTest.java:366:56:366:63 | source(...) : Object | LogInjectionTest.java:366:41:366:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:366:56:366:63 | source(...) | user-provided value | +| LogInjectionTest.java:367:41:367:58 | (...)... | LogInjectionTest.java:367:51:367:58 | source(...) : Object | LogInjectionTest.java:367:41:367:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:367:51:367:58 | source(...) | user-provided value | +| LogInjectionTest.java:368:41:368:66 | (...)... | LogInjectionTest.java:368:59:368:66 | source(...) : Object | LogInjectionTest.java:368:41:368:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:368:59:368:66 | source(...) | user-provided value | +| LogInjectionTest.java:369:41:369:66 | (...)... | LogInjectionTest.java:369:59:369:66 | source(...) : Object | LogInjectionTest.java:369:41:369:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:369:59:369:66 | source(...) | user-provided value | +| LogInjectionTest.java:370:41:370:48 | source(...) | LogInjectionTest.java:370:41:370:48 | source(...) | LogInjectionTest.java:370:41:370:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:370:41:370:48 | source(...) | user-provided value | +| LogInjectionTest.java:371:41:371:57 | (...)... | LogInjectionTest.java:371:50:371:57 | source(...) : Object | LogInjectionTest.java:371:41:371:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:371:50:371:57 | source(...) | user-provided value | | LogInjectionTest.java:372:41:372:57 | (...)... | LogInjectionTest.java:372:50:372:57 | source(...) : Object | LogInjectionTest.java:372:41:372:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:372:50:372:57 | source(...) | user-provided value | -| LogInjectionTest.java:373:101:373:117 | (...)... | LogInjectionTest.java:373:110:373:117 | source(...) : Object | LogInjectionTest.java:373:101:373:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:373:110:373:117 | source(...) | user-provided value | -| LogInjectionTest.java:374:86:374:102 | (...)... | LogInjectionTest.java:374:95:374:102 | source(...) : Object | LogInjectionTest.java:374:86:374:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:374:95:374:102 | source(...) | user-provided value | -| LogInjectionTest.java:375:71:375:87 | (...)... | LogInjectionTest.java:375:80:375:87 | source(...) : Object | LogInjectionTest.java:375:71:375:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:375:80:375:87 | source(...) | user-provided value | -| LogInjectionTest.java:376:56:376:72 | (...)... | LogInjectionTest.java:376:65:376:72 | source(...) : Object | LogInjectionTest.java:376:56:376:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:376:65:376:72 | source(...) | user-provided value | -| LogInjectionTest.java:377:41:377:57 | (...)... | LogInjectionTest.java:377:50:377:57 | source(...) : Object | LogInjectionTest.java:377:41:377:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:377:50:377:57 | source(...) | user-provided value | -| LogInjectionTest.java:378:116:378:132 | (...)... | LogInjectionTest.java:378:125:378:132 | source(...) : Object | LogInjectionTest.java:378:116:378:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:378:125:378:132 | source(...) | user-provided value | -| LogInjectionTest.java:379:101:379:117 | (...)... | LogInjectionTest.java:379:110:379:117 | source(...) : Object | LogInjectionTest.java:379:101:379:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:379:110:379:117 | source(...) | user-provided value | -| LogInjectionTest.java:380:86:380:102 | (...)... | LogInjectionTest.java:380:95:380:102 | source(...) : Object | LogInjectionTest.java:380:86:380:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:380:95:380:102 | source(...) | user-provided value | -| LogInjectionTest.java:381:71:381:87 | (...)... | LogInjectionTest.java:381:80:381:87 | source(...) : Object | LogInjectionTest.java:381:71:381:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:381:80:381:87 | source(...) | user-provided value | -| LogInjectionTest.java:382:56:382:72 | (...)... | LogInjectionTest.java:382:65:382:72 | source(...) : Object | LogInjectionTest.java:382:56:382:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:382:65:382:72 | source(...) | user-provided value | -| LogInjectionTest.java:383:41:383:57 | (...)... | LogInjectionTest.java:383:50:383:57 | source(...) : Object | LogInjectionTest.java:383:41:383:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:383:50:383:57 | source(...) | user-provided value | -| LogInjectionTest.java:384:131:384:147 | (...)... | LogInjectionTest.java:384:140:384:147 | source(...) : Object | LogInjectionTest.java:384:131:384:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:384:140:384:147 | source(...) | user-provided value | -| LogInjectionTest.java:385:116:385:132 | (...)... | LogInjectionTest.java:385:125:385:132 | source(...) : Object | LogInjectionTest.java:385:116:385:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:385:125:385:132 | source(...) | user-provided value | -| LogInjectionTest.java:386:101:386:117 | (...)... | LogInjectionTest.java:386:110:386:117 | source(...) : Object | LogInjectionTest.java:386:101:386:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:386:110:386:117 | source(...) | user-provided value | -| LogInjectionTest.java:387:86:387:102 | (...)... | LogInjectionTest.java:387:95:387:102 | source(...) : Object | LogInjectionTest.java:387:86:387:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:387:95:387:102 | source(...) | user-provided value | -| LogInjectionTest.java:388:71:388:87 | (...)... | LogInjectionTest.java:388:80:388:87 | source(...) : Object | LogInjectionTest.java:388:71:388:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:388:80:388:87 | source(...) | user-provided value | -| LogInjectionTest.java:389:56:389:72 | (...)... | LogInjectionTest.java:389:65:389:72 | source(...) : Object | LogInjectionTest.java:389:56:389:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:389:65:389:72 | source(...) | user-provided value | -| LogInjectionTest.java:390:41:390:57 | (...)... | LogInjectionTest.java:390:50:390:57 | source(...) : Object | LogInjectionTest.java:390:41:390:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:390:50:390:57 | source(...) | user-provided value | -| LogInjectionTest.java:391:146:391:162 | (...)... | LogInjectionTest.java:391:155:391:162 | source(...) : Object | LogInjectionTest.java:391:146:391:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:391:155:391:162 | source(...) | user-provided value | -| LogInjectionTest.java:392:131:392:147 | (...)... | LogInjectionTest.java:392:140:392:147 | source(...) : Object | LogInjectionTest.java:392:131:392:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:392:140:392:147 | source(...) | user-provided value | -| LogInjectionTest.java:393:116:393:132 | (...)... | LogInjectionTest.java:393:125:393:132 | source(...) : Object | LogInjectionTest.java:393:116:393:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:393:125:393:132 | source(...) | user-provided value | -| LogInjectionTest.java:394:101:394:117 | (...)... | LogInjectionTest.java:394:110:394:117 | source(...) : Object | LogInjectionTest.java:394:101:394:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:394:110:394:117 | source(...) | user-provided value | -| LogInjectionTest.java:395:86:395:102 | (...)... | LogInjectionTest.java:395:95:395:102 | source(...) : Object | LogInjectionTest.java:395:86:395:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:395:95:395:102 | source(...) | user-provided value | -| LogInjectionTest.java:396:71:396:87 | (...)... | LogInjectionTest.java:396:80:396:87 | source(...) : Object | LogInjectionTest.java:396:71:396:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:396:80:396:87 | source(...) | user-provided value | -| LogInjectionTest.java:397:56:397:72 | (...)... | LogInjectionTest.java:397:65:397:72 | source(...) : Object | LogInjectionTest.java:397:56:397:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:397:65:397:72 | source(...) | user-provided value | -| LogInjectionTest.java:398:41:398:57 | (...)... | LogInjectionTest.java:398:50:398:57 | source(...) : Object | LogInjectionTest.java:398:41:398:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:398:50:398:57 | source(...) | user-provided value | -| LogInjectionTest.java:399:161:399:177 | (...)... | LogInjectionTest.java:399:170:399:177 | source(...) : Object | LogInjectionTest.java:399:161:399:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:399:170:399:177 | source(...) | user-provided value | -| LogInjectionTest.java:400:146:400:162 | (...)... | LogInjectionTest.java:400:155:400:162 | source(...) : Object | LogInjectionTest.java:400:146:400:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:400:155:400:162 | source(...) | user-provided value | -| LogInjectionTest.java:401:131:401:147 | (...)... | LogInjectionTest.java:401:140:401:147 | source(...) : Object | LogInjectionTest.java:401:131:401:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:401:140:401:147 | source(...) | user-provided value | -| LogInjectionTest.java:402:116:402:132 | (...)... | LogInjectionTest.java:402:125:402:132 | source(...) : Object | LogInjectionTest.java:402:116:402:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:402:125:402:132 | source(...) | user-provided value | -| LogInjectionTest.java:403:101:403:117 | (...)... | LogInjectionTest.java:403:110:403:117 | source(...) : Object | LogInjectionTest.java:403:101:403:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:403:110:403:117 | source(...) | user-provided value | -| LogInjectionTest.java:404:86:404:102 | (...)... | LogInjectionTest.java:404:95:404:102 | source(...) : Object | LogInjectionTest.java:404:86:404:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:404:95:404:102 | source(...) | user-provided value | -| LogInjectionTest.java:405:71:405:87 | (...)... | LogInjectionTest.java:405:80:405:87 | source(...) : Object | LogInjectionTest.java:405:71:405:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:405:80:405:87 | source(...) | user-provided value | -| LogInjectionTest.java:406:56:406:72 | (...)... | LogInjectionTest.java:406:65:406:72 | source(...) : Object | LogInjectionTest.java:406:56:406:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:406:65:406:72 | source(...) | user-provided value | -| LogInjectionTest.java:407:41:407:57 | (...)... | LogInjectionTest.java:407:50:407:57 | source(...) : Object | LogInjectionTest.java:407:41:407:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:407:50:407:57 | source(...) | user-provided value | -| LogInjectionTest.java:408:176:408:192 | (...)... | LogInjectionTest.java:408:185:408:192 | source(...) : Object | LogInjectionTest.java:408:176:408:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:408:185:408:192 | source(...) | user-provided value | +| LogInjectionTest.java:373:56:373:78 | new Object[] | LogInjectionTest.java:373:70:373:77 | source(...) : Object | LogInjectionTest.java:373:56:373:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:373:70:373:77 | source(...) | user-provided value | +| LogInjectionTest.java:374:56:374:72 | (...)... | LogInjectionTest.java:374:65:374:72 | source(...) : Object | LogInjectionTest.java:374:56:374:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:374:65:374:72 | source(...) | user-provided value | +| LogInjectionTest.java:375:41:375:57 | (...)... | LogInjectionTest.java:375:50:375:57 | source(...) : Object | LogInjectionTest.java:375:41:375:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:375:50:375:57 | source(...) | user-provided value | +| LogInjectionTest.java:376:71:376:87 | (...)... | LogInjectionTest.java:376:80:376:87 | source(...) : Object | LogInjectionTest.java:376:71:376:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:376:80:376:87 | source(...) | user-provided value | +| LogInjectionTest.java:377:56:377:72 | (...)... | LogInjectionTest.java:377:65:377:72 | source(...) : Object | LogInjectionTest.java:377:56:377:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:377:65:377:72 | source(...) | user-provided value | +| LogInjectionTest.java:378:41:378:57 | (...)... | LogInjectionTest.java:378:50:378:57 | source(...) : Object | LogInjectionTest.java:378:41:378:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:378:50:378:57 | source(...) | user-provided value | +| LogInjectionTest.java:379:86:379:102 | (...)... | LogInjectionTest.java:379:95:379:102 | source(...) : Object | LogInjectionTest.java:379:86:379:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:379:95:379:102 | source(...) | user-provided value | +| LogInjectionTest.java:380:71:380:87 | (...)... | LogInjectionTest.java:380:80:380:87 | source(...) : Object | LogInjectionTest.java:380:71:380:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:380:80:380:87 | source(...) | user-provided value | +| LogInjectionTest.java:381:56:381:72 | (...)... | LogInjectionTest.java:381:65:381:72 | source(...) : Object | LogInjectionTest.java:381:56:381:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:381:65:381:72 | source(...) | user-provided value | +| LogInjectionTest.java:382:41:382:57 | (...)... | LogInjectionTest.java:382:50:382:57 | source(...) : Object | LogInjectionTest.java:382:41:382:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:382:50:382:57 | source(...) | user-provided value | +| LogInjectionTest.java:383:101:383:117 | (...)... | LogInjectionTest.java:383:110:383:117 | source(...) : Object | LogInjectionTest.java:383:101:383:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:383:110:383:117 | source(...) | user-provided value | +| LogInjectionTest.java:384:86:384:102 | (...)... | LogInjectionTest.java:384:95:384:102 | source(...) : Object | LogInjectionTest.java:384:86:384:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:384:95:384:102 | source(...) | user-provided value | +| LogInjectionTest.java:385:71:385:87 | (...)... | LogInjectionTest.java:385:80:385:87 | source(...) : Object | LogInjectionTest.java:385:71:385:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:385:80:385:87 | source(...) | user-provided value | +| LogInjectionTest.java:386:56:386:72 | (...)... | LogInjectionTest.java:386:65:386:72 | source(...) : Object | LogInjectionTest.java:386:56:386:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:386:65:386:72 | source(...) | user-provided value | +| LogInjectionTest.java:387:41:387:57 | (...)... | LogInjectionTest.java:387:50:387:57 | source(...) : Object | LogInjectionTest.java:387:41:387:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:387:50:387:57 | source(...) | user-provided value | +| LogInjectionTest.java:388:116:388:132 | (...)... | LogInjectionTest.java:388:125:388:132 | source(...) : Object | LogInjectionTest.java:388:116:388:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:388:125:388:132 | source(...) | user-provided value | +| LogInjectionTest.java:389:101:389:117 | (...)... | LogInjectionTest.java:389:110:389:117 | source(...) : Object | LogInjectionTest.java:389:101:389:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:389:110:389:117 | source(...) | user-provided value | +| LogInjectionTest.java:390:86:390:102 | (...)... | LogInjectionTest.java:390:95:390:102 | source(...) : Object | LogInjectionTest.java:390:86:390:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:390:95:390:102 | source(...) | user-provided value | +| LogInjectionTest.java:391:71:391:87 | (...)... | LogInjectionTest.java:391:80:391:87 | source(...) : Object | LogInjectionTest.java:391:71:391:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:391:80:391:87 | source(...) | user-provided value | +| LogInjectionTest.java:392:56:392:72 | (...)... | LogInjectionTest.java:392:65:392:72 | source(...) : Object | LogInjectionTest.java:392:56:392:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:392:65:392:72 | source(...) | user-provided value | +| LogInjectionTest.java:393:41:393:57 | (...)... | LogInjectionTest.java:393:50:393:57 | source(...) : Object | LogInjectionTest.java:393:41:393:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:393:50:393:57 | source(...) | user-provided value | +| LogInjectionTest.java:394:131:394:147 | (...)... | LogInjectionTest.java:394:140:394:147 | source(...) : Object | LogInjectionTest.java:394:131:394:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:394:140:394:147 | source(...) | user-provided value | +| LogInjectionTest.java:395:116:395:132 | (...)... | LogInjectionTest.java:395:125:395:132 | source(...) : Object | LogInjectionTest.java:395:116:395:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:395:125:395:132 | source(...) | user-provided value | +| LogInjectionTest.java:396:101:396:117 | (...)... | LogInjectionTest.java:396:110:396:117 | source(...) : Object | LogInjectionTest.java:396:101:396:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:396:110:396:117 | source(...) | user-provided value | +| LogInjectionTest.java:397:86:397:102 | (...)... | LogInjectionTest.java:397:95:397:102 | source(...) : Object | LogInjectionTest.java:397:86:397:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:397:95:397:102 | source(...) | user-provided value | +| LogInjectionTest.java:398:71:398:87 | (...)... | LogInjectionTest.java:398:80:398:87 | source(...) : Object | LogInjectionTest.java:398:71:398:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:398:80:398:87 | source(...) | user-provided value | +| LogInjectionTest.java:399:56:399:72 | (...)... | LogInjectionTest.java:399:65:399:72 | source(...) : Object | LogInjectionTest.java:399:56:399:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:399:65:399:72 | source(...) | user-provided value | +| LogInjectionTest.java:400:41:400:57 | (...)... | LogInjectionTest.java:400:50:400:57 | source(...) : Object | LogInjectionTest.java:400:41:400:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:400:50:400:57 | source(...) | user-provided value | +| LogInjectionTest.java:401:146:401:162 | (...)... | LogInjectionTest.java:401:155:401:162 | source(...) : Object | LogInjectionTest.java:401:146:401:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:401:155:401:162 | source(...) | user-provided value | +| LogInjectionTest.java:402:131:402:147 | (...)... | LogInjectionTest.java:402:140:402:147 | source(...) : Object | LogInjectionTest.java:402:131:402:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:402:140:402:147 | source(...) | user-provided value | +| LogInjectionTest.java:403:116:403:132 | (...)... | LogInjectionTest.java:403:125:403:132 | source(...) : Object | LogInjectionTest.java:403:116:403:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:403:125:403:132 | source(...) | user-provided value | +| LogInjectionTest.java:404:101:404:117 | (...)... | LogInjectionTest.java:404:110:404:117 | source(...) : Object | LogInjectionTest.java:404:101:404:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:404:110:404:117 | source(...) | user-provided value | +| LogInjectionTest.java:405:86:405:102 | (...)... | LogInjectionTest.java:405:95:405:102 | source(...) : Object | LogInjectionTest.java:405:86:405:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:405:95:405:102 | source(...) | user-provided value | +| LogInjectionTest.java:406:71:406:87 | (...)... | LogInjectionTest.java:406:80:406:87 | source(...) : Object | LogInjectionTest.java:406:71:406:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:406:80:406:87 | source(...) | user-provided value | +| LogInjectionTest.java:407:56:407:72 | (...)... | LogInjectionTest.java:407:65:407:72 | source(...) : Object | LogInjectionTest.java:407:56:407:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:407:65:407:72 | source(...) | user-provided value | +| LogInjectionTest.java:408:41:408:57 | (...)... | LogInjectionTest.java:408:50:408:57 | source(...) : Object | LogInjectionTest.java:408:41:408:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:408:50:408:57 | source(...) | user-provided value | | LogInjectionTest.java:409:161:409:177 | (...)... | LogInjectionTest.java:409:170:409:177 | source(...) : Object | LogInjectionTest.java:409:161:409:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:409:170:409:177 | source(...) | user-provided value | | LogInjectionTest.java:410:146:410:162 | (...)... | LogInjectionTest.java:410:155:410:162 | source(...) : Object | LogInjectionTest.java:410:146:410:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:410:155:410:162 | source(...) | user-provided value | | LogInjectionTest.java:411:131:411:147 | (...)... | LogInjectionTest.java:411:140:411:147 | source(...) : Object | LogInjectionTest.java:411:131:411:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:411:140:411:147 | source(...) | user-provided value | @@ -265,65 +257,65 @@ | LogInjectionTest.java:415:71:415:87 | (...)... | LogInjectionTest.java:415:80:415:87 | source(...) : Object | LogInjectionTest.java:415:71:415:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:415:80:415:87 | source(...) | user-provided value | | LogInjectionTest.java:416:56:416:72 | (...)... | LogInjectionTest.java:416:65:416:72 | source(...) : Object | LogInjectionTest.java:416:56:416:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:416:65:416:72 | source(...) | user-provided value | | LogInjectionTest.java:417:41:417:57 | (...)... | LogInjectionTest.java:417:50:417:57 | source(...) : Object | LogInjectionTest.java:417:41:417:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:417:50:417:57 | source(...) | user-provided value | -| LogInjectionTest.java:418:41:418:57 | (...)... | LogInjectionTest.java:418:50:418:57 | source(...) : Object | LogInjectionTest.java:418:41:418:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:418:50:418:57 | source(...) | user-provided value | -| LogInjectionTest.java:419:56:419:77 | (...)... | LogInjectionTest.java:419:70:419:77 | source(...) : Object | LogInjectionTest.java:419:56:419:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:419:70:419:77 | source(...) | user-provided value | -| LogInjectionTest.java:420:41:420:57 | (...)... | LogInjectionTest.java:420:50:420:57 | source(...) : Object | LogInjectionTest.java:420:41:420:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:420:50:420:57 | source(...) | user-provided value | -| LogInjectionTest.java:421:41:421:62 | (...)... | LogInjectionTest.java:421:55:421:62 | source(...) : Object | LogInjectionTest.java:421:41:421:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:421:55:421:62 | source(...) | user-provided value | -| LogInjectionTest.java:422:41:422:62 | (...)... | LogInjectionTest.java:422:55:422:62 | source(...) : Object | LogInjectionTest.java:422:41:422:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:422:55:422:62 | source(...) | user-provided value | -| LogInjectionTest.java:423:26:423:51 | (...)... | LogInjectionTest.java:423:44:423:51 | source(...) : Object | LogInjectionTest.java:423:26:423:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:423:44:423:51 | source(...) | user-provided value | -| LogInjectionTest.java:424:26:424:51 | (...)... | LogInjectionTest.java:424:44:424:51 | source(...) : Object | LogInjectionTest.java:424:26:424:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:424:44:424:51 | source(...) | user-provided value | -| LogInjectionTest.java:425:26:425:43 | (...)... | LogInjectionTest.java:425:36:425:43 | source(...) : Object | LogInjectionTest.java:425:26:425:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:425:36:425:43 | source(...) | user-provided value | -| LogInjectionTest.java:426:26:426:43 | (...)... | LogInjectionTest.java:426:36:426:43 | source(...) : Object | LogInjectionTest.java:426:26:426:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:426:36:426:43 | source(...) | user-provided value | -| LogInjectionTest.java:427:26:427:33 | source(...) | LogInjectionTest.java:427:26:427:33 | source(...) | LogInjectionTest.java:427:26:427:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:427:26:427:33 | source(...) | user-provided value | -| LogInjectionTest.java:428:26:428:33 | source(...) | LogInjectionTest.java:428:26:428:33 | source(...) | LogInjectionTest.java:428:26:428:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:428:26:428:33 | source(...) | user-provided value | -| LogInjectionTest.java:429:26:429:42 | (...)... | LogInjectionTest.java:429:35:429:42 | source(...) : Object | LogInjectionTest.java:429:26:429:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:429:35:429:42 | source(...) | user-provided value | -| LogInjectionTest.java:430:26:430:42 | (...)... | LogInjectionTest.java:430:35:430:42 | source(...) : Object | LogInjectionTest.java:430:26:430:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:430:35:430:42 | source(...) | user-provided value | -| LogInjectionTest.java:431:41:431:63 | new Object[] | LogInjectionTest.java:431:55:431:62 | source(...) : Object | LogInjectionTest.java:431:41:431:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:431:55:431:62 | source(...) | user-provided value | -| LogInjectionTest.java:432:41:432:57 | (...)... | LogInjectionTest.java:432:50:432:57 | source(...) : Object | LogInjectionTest.java:432:41:432:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:432:50:432:57 | source(...) | user-provided value | -| LogInjectionTest.java:433:26:433:42 | (...)... | LogInjectionTest.java:433:35:433:42 | source(...) : Object | LogInjectionTest.java:433:26:433:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:433:35:433:42 | source(...) | user-provided value | -| LogInjectionTest.java:434:56:434:72 | (...)... | LogInjectionTest.java:434:65:434:72 | source(...) : Object | LogInjectionTest.java:434:56:434:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:434:65:434:72 | source(...) | user-provided value | -| LogInjectionTest.java:435:41:435:57 | (...)... | LogInjectionTest.java:435:50:435:57 | source(...) : Object | LogInjectionTest.java:435:41:435:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:435:50:435:57 | source(...) | user-provided value | -| LogInjectionTest.java:436:26:436:42 | (...)... | LogInjectionTest.java:436:35:436:42 | source(...) : Object | LogInjectionTest.java:436:26:436:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:436:35:436:42 | source(...) | user-provided value | -| LogInjectionTest.java:437:71:437:87 | (...)... | LogInjectionTest.java:437:80:437:87 | source(...) : Object | LogInjectionTest.java:437:71:437:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:437:80:437:87 | source(...) | user-provided value | -| LogInjectionTest.java:438:56:438:72 | (...)... | LogInjectionTest.java:438:65:438:72 | source(...) : Object | LogInjectionTest.java:438:56:438:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:438:65:438:72 | source(...) | user-provided value | -| LogInjectionTest.java:439:41:439:57 | (...)... | LogInjectionTest.java:439:50:439:57 | source(...) : Object | LogInjectionTest.java:439:41:439:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:439:50:439:57 | source(...) | user-provided value | +| LogInjectionTest.java:418:176:418:192 | (...)... | LogInjectionTest.java:418:185:418:192 | source(...) : Object | LogInjectionTest.java:418:176:418:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:418:185:418:192 | source(...) | user-provided value | +| LogInjectionTest.java:419:161:419:177 | (...)... | LogInjectionTest.java:419:170:419:177 | source(...) : Object | LogInjectionTest.java:419:161:419:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:419:170:419:177 | source(...) | user-provided value | +| LogInjectionTest.java:420:146:420:162 | (...)... | LogInjectionTest.java:420:155:420:162 | source(...) : Object | LogInjectionTest.java:420:146:420:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:420:155:420:162 | source(...) | user-provided value | +| LogInjectionTest.java:421:131:421:147 | (...)... | LogInjectionTest.java:421:140:421:147 | source(...) : Object | LogInjectionTest.java:421:131:421:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:421:140:421:147 | source(...) | user-provided value | +| LogInjectionTest.java:422:116:422:132 | (...)... | LogInjectionTest.java:422:125:422:132 | source(...) : Object | LogInjectionTest.java:422:116:422:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:422:125:422:132 | source(...) | user-provided value | +| LogInjectionTest.java:423:101:423:117 | (...)... | LogInjectionTest.java:423:110:423:117 | source(...) : Object | LogInjectionTest.java:423:101:423:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:423:110:423:117 | source(...) | user-provided value | +| LogInjectionTest.java:424:86:424:102 | (...)... | LogInjectionTest.java:424:95:424:102 | source(...) : Object | LogInjectionTest.java:424:86:424:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:424:95:424:102 | source(...) | user-provided value | +| LogInjectionTest.java:425:71:425:87 | (...)... | LogInjectionTest.java:425:80:425:87 | source(...) : Object | LogInjectionTest.java:425:71:425:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:425:80:425:87 | source(...) | user-provided value | +| LogInjectionTest.java:426:56:426:72 | (...)... | LogInjectionTest.java:426:65:426:72 | source(...) : Object | LogInjectionTest.java:426:56:426:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:426:65:426:72 | source(...) | user-provided value | +| LogInjectionTest.java:427:41:427:57 | (...)... | LogInjectionTest.java:427:50:427:57 | source(...) : Object | LogInjectionTest.java:427:41:427:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:427:50:427:57 | source(...) | user-provided value | +| LogInjectionTest.java:428:41:428:57 | (...)... | LogInjectionTest.java:428:50:428:57 | source(...) : Object | LogInjectionTest.java:428:41:428:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:428:50:428:57 | source(...) | user-provided value | +| LogInjectionTest.java:429:56:429:77 | (...)... | LogInjectionTest.java:429:70:429:77 | source(...) : Object | LogInjectionTest.java:429:56:429:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:429:70:429:77 | source(...) | user-provided value | +| LogInjectionTest.java:430:41:430:57 | (...)... | LogInjectionTest.java:430:50:430:57 | source(...) : Object | LogInjectionTest.java:430:41:430:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:430:50:430:57 | source(...) | user-provided value | +| LogInjectionTest.java:431:41:431:62 | (...)... | LogInjectionTest.java:431:55:431:62 | source(...) : Object | LogInjectionTest.java:431:41:431:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:431:55:431:62 | source(...) | user-provided value | +| LogInjectionTest.java:432:41:432:62 | (...)... | LogInjectionTest.java:432:55:432:62 | source(...) : Object | LogInjectionTest.java:432:41:432:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:432:55:432:62 | source(...) | user-provided value | +| LogInjectionTest.java:433:26:433:51 | (...)... | LogInjectionTest.java:433:44:433:51 | source(...) : Object | LogInjectionTest.java:433:26:433:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:433:44:433:51 | source(...) | user-provided value | +| LogInjectionTest.java:434:26:434:51 | (...)... | LogInjectionTest.java:434:44:434:51 | source(...) : Object | LogInjectionTest.java:434:26:434:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:434:44:434:51 | source(...) | user-provided value | +| LogInjectionTest.java:435:26:435:43 | (...)... | LogInjectionTest.java:435:36:435:43 | source(...) : Object | LogInjectionTest.java:435:26:435:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:435:36:435:43 | source(...) | user-provided value | +| LogInjectionTest.java:436:26:436:43 | (...)... | LogInjectionTest.java:436:36:436:43 | source(...) : Object | LogInjectionTest.java:436:26:436:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:436:36:436:43 | source(...) | user-provided value | +| LogInjectionTest.java:437:26:437:33 | source(...) | LogInjectionTest.java:437:26:437:33 | source(...) | LogInjectionTest.java:437:26:437:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:437:26:437:33 | source(...) | user-provided value | +| LogInjectionTest.java:438:26:438:33 | source(...) | LogInjectionTest.java:438:26:438:33 | source(...) | LogInjectionTest.java:438:26:438:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:438:26:438:33 | source(...) | user-provided value | +| LogInjectionTest.java:439:26:439:42 | (...)... | LogInjectionTest.java:439:35:439:42 | source(...) : Object | LogInjectionTest.java:439:26:439:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:439:35:439:42 | source(...) | user-provided value | | LogInjectionTest.java:440:26:440:42 | (...)... | LogInjectionTest.java:440:35:440:42 | source(...) : Object | LogInjectionTest.java:440:26:440:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:440:35:440:42 | source(...) | user-provided value | -| LogInjectionTest.java:441:86:441:102 | (...)... | LogInjectionTest.java:441:95:441:102 | source(...) : Object | LogInjectionTest.java:441:86:441:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:441:95:441:102 | source(...) | user-provided value | -| LogInjectionTest.java:442:71:442:87 | (...)... | LogInjectionTest.java:442:80:442:87 | source(...) : Object | LogInjectionTest.java:442:71:442:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:442:80:442:87 | source(...) | user-provided value | -| LogInjectionTest.java:443:56:443:72 | (...)... | LogInjectionTest.java:443:65:443:72 | source(...) : Object | LogInjectionTest.java:443:56:443:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:443:65:443:72 | source(...) | user-provided value | -| LogInjectionTest.java:444:41:444:57 | (...)... | LogInjectionTest.java:444:50:444:57 | source(...) : Object | LogInjectionTest.java:444:41:444:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:444:50:444:57 | source(...) | user-provided value | -| LogInjectionTest.java:445:26:445:42 | (...)... | LogInjectionTest.java:445:35:445:42 | source(...) : Object | LogInjectionTest.java:445:26:445:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:445:35:445:42 | source(...) | user-provided value | -| LogInjectionTest.java:446:101:446:117 | (...)... | LogInjectionTest.java:446:110:446:117 | source(...) : Object | LogInjectionTest.java:446:101:446:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:446:110:446:117 | source(...) | user-provided value | -| LogInjectionTest.java:447:86:447:102 | (...)... | LogInjectionTest.java:447:95:447:102 | source(...) : Object | LogInjectionTest.java:447:86:447:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:447:95:447:102 | source(...) | user-provided value | -| LogInjectionTest.java:448:71:448:87 | (...)... | LogInjectionTest.java:448:80:448:87 | source(...) : Object | LogInjectionTest.java:448:71:448:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:448:80:448:87 | source(...) | user-provided value | -| LogInjectionTest.java:449:56:449:72 | (...)... | LogInjectionTest.java:449:65:449:72 | source(...) : Object | LogInjectionTest.java:449:56:449:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:449:65:449:72 | source(...) | user-provided value | -| LogInjectionTest.java:450:41:450:57 | (...)... | LogInjectionTest.java:450:50:450:57 | source(...) : Object | LogInjectionTest.java:450:41:450:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:450:50:450:57 | source(...) | user-provided value | -| LogInjectionTest.java:451:26:451:42 | (...)... | LogInjectionTest.java:451:35:451:42 | source(...) : Object | LogInjectionTest.java:451:26:451:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:451:35:451:42 | source(...) | user-provided value | -| LogInjectionTest.java:452:116:452:132 | (...)... | LogInjectionTest.java:452:125:452:132 | source(...) : Object | LogInjectionTest.java:452:116:452:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:452:125:452:132 | source(...) | user-provided value | -| LogInjectionTest.java:453:101:453:117 | (...)... | LogInjectionTest.java:453:110:453:117 | source(...) : Object | LogInjectionTest.java:453:101:453:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:453:110:453:117 | source(...) | user-provided value | -| LogInjectionTest.java:454:86:454:102 | (...)... | LogInjectionTest.java:454:95:454:102 | source(...) : Object | LogInjectionTest.java:454:86:454:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:454:95:454:102 | source(...) | user-provided value | -| LogInjectionTest.java:455:71:455:87 | (...)... | LogInjectionTest.java:455:80:455:87 | source(...) : Object | LogInjectionTest.java:455:71:455:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:455:80:455:87 | source(...) | user-provided value | -| LogInjectionTest.java:456:56:456:72 | (...)... | LogInjectionTest.java:456:65:456:72 | source(...) : Object | LogInjectionTest.java:456:56:456:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:456:65:456:72 | source(...) | user-provided value | -| LogInjectionTest.java:457:41:457:57 | (...)... | LogInjectionTest.java:457:50:457:57 | source(...) : Object | LogInjectionTest.java:457:41:457:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:457:50:457:57 | source(...) | user-provided value | -| LogInjectionTest.java:458:26:458:42 | (...)... | LogInjectionTest.java:458:35:458:42 | source(...) : Object | LogInjectionTest.java:458:26:458:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:458:35:458:42 | source(...) | user-provided value | -| LogInjectionTest.java:459:131:459:147 | (...)... | LogInjectionTest.java:459:140:459:147 | source(...) : Object | LogInjectionTest.java:459:131:459:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:459:140:459:147 | source(...) | user-provided value | -| LogInjectionTest.java:460:116:460:132 | (...)... | LogInjectionTest.java:460:125:460:132 | source(...) : Object | LogInjectionTest.java:460:116:460:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:460:125:460:132 | source(...) | user-provided value | -| LogInjectionTest.java:461:101:461:117 | (...)... | LogInjectionTest.java:461:110:461:117 | source(...) : Object | LogInjectionTest.java:461:101:461:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:461:110:461:117 | source(...) | user-provided value | -| LogInjectionTest.java:462:86:462:102 | (...)... | LogInjectionTest.java:462:95:462:102 | source(...) : Object | LogInjectionTest.java:462:86:462:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:462:95:462:102 | source(...) | user-provided value | -| LogInjectionTest.java:463:71:463:87 | (...)... | LogInjectionTest.java:463:80:463:87 | source(...) : Object | LogInjectionTest.java:463:71:463:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:463:80:463:87 | source(...) | user-provided value | -| LogInjectionTest.java:464:56:464:72 | (...)... | LogInjectionTest.java:464:65:464:72 | source(...) : Object | LogInjectionTest.java:464:56:464:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:464:65:464:72 | source(...) | user-provided value | -| LogInjectionTest.java:465:41:465:57 | (...)... | LogInjectionTest.java:465:50:465:57 | source(...) : Object | LogInjectionTest.java:465:41:465:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:465:50:465:57 | source(...) | user-provided value | -| LogInjectionTest.java:466:26:466:42 | (...)... | LogInjectionTest.java:466:35:466:42 | source(...) : Object | LogInjectionTest.java:466:26:466:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:466:35:466:42 | source(...) | user-provided value | -| LogInjectionTest.java:467:146:467:162 | (...)... | LogInjectionTest.java:467:155:467:162 | source(...) : Object | LogInjectionTest.java:467:146:467:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:467:155:467:162 | source(...) | user-provided value | -| LogInjectionTest.java:468:131:468:147 | (...)... | LogInjectionTest.java:468:140:468:147 | source(...) : Object | LogInjectionTest.java:468:131:468:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:468:140:468:147 | source(...) | user-provided value | -| LogInjectionTest.java:469:116:469:132 | (...)... | LogInjectionTest.java:469:125:469:132 | source(...) : Object | LogInjectionTest.java:469:116:469:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:469:125:469:132 | source(...) | user-provided value | -| LogInjectionTest.java:470:101:470:117 | (...)... | LogInjectionTest.java:470:110:470:117 | source(...) : Object | LogInjectionTest.java:470:101:470:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:470:110:470:117 | source(...) | user-provided value | -| LogInjectionTest.java:471:86:471:102 | (...)... | LogInjectionTest.java:471:95:471:102 | source(...) : Object | LogInjectionTest.java:471:86:471:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:471:95:471:102 | source(...) | user-provided value | -| LogInjectionTest.java:472:71:472:87 | (...)... | LogInjectionTest.java:472:80:472:87 | source(...) : Object | LogInjectionTest.java:472:71:472:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:472:80:472:87 | source(...) | user-provided value | -| LogInjectionTest.java:473:56:473:72 | (...)... | LogInjectionTest.java:473:65:473:72 | source(...) : Object | LogInjectionTest.java:473:56:473:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:473:65:473:72 | source(...) | user-provided value | -| LogInjectionTest.java:474:41:474:57 | (...)... | LogInjectionTest.java:474:50:474:57 | source(...) : Object | LogInjectionTest.java:474:41:474:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:474:50:474:57 | source(...) | user-provided value | -| LogInjectionTest.java:475:26:475:42 | (...)... | LogInjectionTest.java:475:35:475:42 | source(...) : Object | LogInjectionTest.java:475:26:475:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:475:35:475:42 | source(...) | user-provided value | -| LogInjectionTest.java:476:161:476:177 | (...)... | LogInjectionTest.java:476:170:476:177 | source(...) : Object | LogInjectionTest.java:476:161:476:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:476:170:476:177 | source(...) | user-provided value | +| LogInjectionTest.java:441:41:441:63 | new Object[] | LogInjectionTest.java:441:55:441:62 | source(...) : Object | LogInjectionTest.java:441:41:441:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:441:55:441:62 | source(...) | user-provided value | +| LogInjectionTest.java:442:41:442:57 | (...)... | LogInjectionTest.java:442:50:442:57 | source(...) : Object | LogInjectionTest.java:442:41:442:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:442:50:442:57 | source(...) | user-provided value | +| LogInjectionTest.java:443:26:443:42 | (...)... | LogInjectionTest.java:443:35:443:42 | source(...) : Object | LogInjectionTest.java:443:26:443:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:443:35:443:42 | source(...) | user-provided value | +| LogInjectionTest.java:444:56:444:72 | (...)... | LogInjectionTest.java:444:65:444:72 | source(...) : Object | LogInjectionTest.java:444:56:444:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:444:65:444:72 | source(...) | user-provided value | +| LogInjectionTest.java:445:41:445:57 | (...)... | LogInjectionTest.java:445:50:445:57 | source(...) : Object | LogInjectionTest.java:445:41:445:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:445:50:445:57 | source(...) | user-provided value | +| LogInjectionTest.java:446:26:446:42 | (...)... | LogInjectionTest.java:446:35:446:42 | source(...) : Object | LogInjectionTest.java:446:26:446:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:446:35:446:42 | source(...) | user-provided value | +| LogInjectionTest.java:447:71:447:87 | (...)... | LogInjectionTest.java:447:80:447:87 | source(...) : Object | LogInjectionTest.java:447:71:447:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:447:80:447:87 | source(...) | user-provided value | +| LogInjectionTest.java:448:56:448:72 | (...)... | LogInjectionTest.java:448:65:448:72 | source(...) : Object | LogInjectionTest.java:448:56:448:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:448:65:448:72 | source(...) | user-provided value | +| LogInjectionTest.java:449:41:449:57 | (...)... | LogInjectionTest.java:449:50:449:57 | source(...) : Object | LogInjectionTest.java:449:41:449:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:449:50:449:57 | source(...) | user-provided value | +| LogInjectionTest.java:450:26:450:42 | (...)... | LogInjectionTest.java:450:35:450:42 | source(...) : Object | LogInjectionTest.java:450:26:450:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:450:35:450:42 | source(...) | user-provided value | +| LogInjectionTest.java:451:86:451:102 | (...)... | LogInjectionTest.java:451:95:451:102 | source(...) : Object | LogInjectionTest.java:451:86:451:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:451:95:451:102 | source(...) | user-provided value | +| LogInjectionTest.java:452:71:452:87 | (...)... | LogInjectionTest.java:452:80:452:87 | source(...) : Object | LogInjectionTest.java:452:71:452:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:452:80:452:87 | source(...) | user-provided value | +| LogInjectionTest.java:453:56:453:72 | (...)... | LogInjectionTest.java:453:65:453:72 | source(...) : Object | LogInjectionTest.java:453:56:453:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:453:65:453:72 | source(...) | user-provided value | +| LogInjectionTest.java:454:41:454:57 | (...)... | LogInjectionTest.java:454:50:454:57 | source(...) : Object | LogInjectionTest.java:454:41:454:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:454:50:454:57 | source(...) | user-provided value | +| LogInjectionTest.java:455:26:455:42 | (...)... | LogInjectionTest.java:455:35:455:42 | source(...) : Object | LogInjectionTest.java:455:26:455:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:455:35:455:42 | source(...) | user-provided value | +| LogInjectionTest.java:456:101:456:117 | (...)... | LogInjectionTest.java:456:110:456:117 | source(...) : Object | LogInjectionTest.java:456:101:456:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:456:110:456:117 | source(...) | user-provided value | +| LogInjectionTest.java:457:86:457:102 | (...)... | LogInjectionTest.java:457:95:457:102 | source(...) : Object | LogInjectionTest.java:457:86:457:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:457:95:457:102 | source(...) | user-provided value | +| LogInjectionTest.java:458:71:458:87 | (...)... | LogInjectionTest.java:458:80:458:87 | source(...) : Object | LogInjectionTest.java:458:71:458:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:458:80:458:87 | source(...) | user-provided value | +| LogInjectionTest.java:459:56:459:72 | (...)... | LogInjectionTest.java:459:65:459:72 | source(...) : Object | LogInjectionTest.java:459:56:459:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:459:65:459:72 | source(...) | user-provided value | +| LogInjectionTest.java:460:41:460:57 | (...)... | LogInjectionTest.java:460:50:460:57 | source(...) : Object | LogInjectionTest.java:460:41:460:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:460:50:460:57 | source(...) | user-provided value | +| LogInjectionTest.java:461:26:461:42 | (...)... | LogInjectionTest.java:461:35:461:42 | source(...) : Object | LogInjectionTest.java:461:26:461:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:461:35:461:42 | source(...) | user-provided value | +| LogInjectionTest.java:462:116:462:132 | (...)... | LogInjectionTest.java:462:125:462:132 | source(...) : Object | LogInjectionTest.java:462:116:462:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:462:125:462:132 | source(...) | user-provided value | +| LogInjectionTest.java:463:101:463:117 | (...)... | LogInjectionTest.java:463:110:463:117 | source(...) : Object | LogInjectionTest.java:463:101:463:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:463:110:463:117 | source(...) | user-provided value | +| LogInjectionTest.java:464:86:464:102 | (...)... | LogInjectionTest.java:464:95:464:102 | source(...) : Object | LogInjectionTest.java:464:86:464:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:464:95:464:102 | source(...) | user-provided value | +| LogInjectionTest.java:465:71:465:87 | (...)... | LogInjectionTest.java:465:80:465:87 | source(...) : Object | LogInjectionTest.java:465:71:465:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:465:80:465:87 | source(...) | user-provided value | +| LogInjectionTest.java:466:56:466:72 | (...)... | LogInjectionTest.java:466:65:466:72 | source(...) : Object | LogInjectionTest.java:466:56:466:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:466:65:466:72 | source(...) | user-provided value | +| LogInjectionTest.java:467:41:467:57 | (...)... | LogInjectionTest.java:467:50:467:57 | source(...) : Object | LogInjectionTest.java:467:41:467:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:467:50:467:57 | source(...) | user-provided value | +| LogInjectionTest.java:468:26:468:42 | (...)... | LogInjectionTest.java:468:35:468:42 | source(...) : Object | LogInjectionTest.java:468:26:468:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:468:35:468:42 | source(...) | user-provided value | +| LogInjectionTest.java:469:131:469:147 | (...)... | LogInjectionTest.java:469:140:469:147 | source(...) : Object | LogInjectionTest.java:469:131:469:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:469:140:469:147 | source(...) | user-provided value | +| LogInjectionTest.java:470:116:470:132 | (...)... | LogInjectionTest.java:470:125:470:132 | source(...) : Object | LogInjectionTest.java:470:116:470:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:470:125:470:132 | source(...) | user-provided value | +| LogInjectionTest.java:471:101:471:117 | (...)... | LogInjectionTest.java:471:110:471:117 | source(...) : Object | LogInjectionTest.java:471:101:471:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:471:110:471:117 | source(...) | user-provided value | +| LogInjectionTest.java:472:86:472:102 | (...)... | LogInjectionTest.java:472:95:472:102 | source(...) : Object | LogInjectionTest.java:472:86:472:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:472:95:472:102 | source(...) | user-provided value | +| LogInjectionTest.java:473:71:473:87 | (...)... | LogInjectionTest.java:473:80:473:87 | source(...) : Object | LogInjectionTest.java:473:71:473:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:473:80:473:87 | source(...) | user-provided value | +| LogInjectionTest.java:474:56:474:72 | (...)... | LogInjectionTest.java:474:65:474:72 | source(...) : Object | LogInjectionTest.java:474:56:474:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:474:65:474:72 | source(...) | user-provided value | +| LogInjectionTest.java:475:41:475:57 | (...)... | LogInjectionTest.java:475:50:475:57 | source(...) : Object | LogInjectionTest.java:475:41:475:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:475:50:475:57 | source(...) | user-provided value | +| LogInjectionTest.java:476:26:476:42 | (...)... | LogInjectionTest.java:476:35:476:42 | source(...) : Object | LogInjectionTest.java:476:26:476:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:476:35:476:42 | source(...) | user-provided value | | LogInjectionTest.java:477:146:477:162 | (...)... | LogInjectionTest.java:477:155:477:162 | source(...) : Object | LogInjectionTest.java:477:146:477:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:477:155:477:162 | source(...) | user-provided value | | LogInjectionTest.java:478:131:478:147 | (...)... | LogInjectionTest.java:478:140:478:147 | source(...) : Object | LogInjectionTest.java:478:131:478:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:478:140:478:147 | source(...) | user-provided value | | LogInjectionTest.java:479:116:479:132 | (...)... | LogInjectionTest.java:479:125:479:132 | source(...) : Object | LogInjectionTest.java:479:116:479:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:479:125:479:132 | source(...) | user-provided value | @@ -333,67 +325,67 @@ | LogInjectionTest.java:483:56:483:72 | (...)... | LogInjectionTest.java:483:65:483:72 | source(...) : Object | LogInjectionTest.java:483:56:483:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:483:65:483:72 | source(...) | user-provided value | | LogInjectionTest.java:484:41:484:57 | (...)... | LogInjectionTest.java:484:50:484:57 | source(...) : Object | LogInjectionTest.java:484:41:484:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:484:50:484:57 | source(...) | user-provided value | | LogInjectionTest.java:485:26:485:42 | (...)... | LogInjectionTest.java:485:35:485:42 | source(...) : Object | LogInjectionTest.java:485:26:485:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:485:35:485:42 | source(...) | user-provided value | -| LogInjectionTest.java:486:26:486:42 | (...)... | LogInjectionTest.java:486:35:486:42 | source(...) : Object | LogInjectionTest.java:486:26:486:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:486:35:486:42 | source(...) | user-provided value | -| LogInjectionTest.java:487:41:487:62 | (...)... | LogInjectionTest.java:487:55:487:62 | source(...) : Object | LogInjectionTest.java:487:41:487:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:487:55:487:62 | source(...) | user-provided value | -| LogInjectionTest.java:488:26:488:42 | (...)... | LogInjectionTest.java:488:35:488:42 | source(...) : Object | LogInjectionTest.java:488:26:488:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:488:35:488:42 | source(...) | user-provided value | -| LogInjectionTest.java:489:26:489:47 | (...)... | LogInjectionTest.java:489:40:489:47 | source(...) : Object | LogInjectionTest.java:489:26:489:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:489:40:489:47 | source(...) | user-provided value | -| LogInjectionTest.java:490:26:490:47 | (...)... | LogInjectionTest.java:490:40:490:47 | source(...) : Object | LogInjectionTest.java:490:26:490:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:490:40:490:47 | source(...) | user-provided value | -| LogInjectionTest.java:491:26:491:48 | (...)... | LogInjectionTest.java:491:41:491:48 | source(...) : Object | LogInjectionTest.java:491:26:491:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:491:41:491:48 | source(...) | user-provided value | -| LogInjectionTest.java:492:26:492:48 | (...)... | LogInjectionTest.java:492:41:492:48 | source(...) : Object | LogInjectionTest.java:492:26:492:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:492:41:492:48 | source(...) | user-provided value | -| LogInjectionTest.java:493:41:493:63 | (...)... | LogInjectionTest.java:493:56:493:63 | source(...) : Object | LogInjectionTest.java:493:41:493:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:493:56:493:63 | source(...) | user-provided value | -| LogInjectionTest.java:494:41:494:63 | (...)... | LogInjectionTest.java:494:56:494:63 | source(...) : Object | LogInjectionTest.java:494:41:494:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:494:56:494:63 | source(...) | user-provided value | -| LogInjectionTest.java:495:41:495:58 | (...)... | LogInjectionTest.java:495:51:495:58 | source(...) : Object | LogInjectionTest.java:495:41:495:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:495:51:495:58 | source(...) | user-provided value | -| LogInjectionTest.java:496:41:496:66 | (...)... | LogInjectionTest.java:496:59:496:66 | source(...) : Object | LogInjectionTest.java:496:41:496:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:496:59:496:66 | source(...) | user-provided value | -| LogInjectionTest.java:497:41:497:66 | (...)... | LogInjectionTest.java:497:59:497:66 | source(...) : Object | LogInjectionTest.java:497:41:497:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:497:59:497:66 | source(...) | user-provided value | -| LogInjectionTest.java:498:41:498:48 | source(...) | LogInjectionTest.java:498:41:498:48 | source(...) | LogInjectionTest.java:498:41:498:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:498:41:498:48 | source(...) | user-provided value | -| LogInjectionTest.java:499:41:499:57 | (...)... | LogInjectionTest.java:499:50:499:57 | source(...) : Object | LogInjectionTest.java:499:41:499:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:499:50:499:57 | source(...) | user-provided value | -| LogInjectionTest.java:500:41:500:57 | (...)... | LogInjectionTest.java:500:50:500:57 | source(...) : Object | LogInjectionTest.java:500:41:500:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:500:50:500:57 | source(...) | user-provided value | -| LogInjectionTest.java:501:56:501:78 | new Object[] | LogInjectionTest.java:501:70:501:77 | source(...) : Object | LogInjectionTest.java:501:56:501:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:501:70:501:77 | source(...) | user-provided value | -| LogInjectionTest.java:502:56:502:72 | (...)... | LogInjectionTest.java:502:65:502:72 | source(...) : Object | LogInjectionTest.java:502:56:502:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:502:65:502:72 | source(...) | user-provided value | -| LogInjectionTest.java:503:41:503:57 | (...)... | LogInjectionTest.java:503:50:503:57 | source(...) : Object | LogInjectionTest.java:503:41:503:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:503:50:503:57 | source(...) | user-provided value | -| LogInjectionTest.java:504:71:504:87 | (...)... | LogInjectionTest.java:504:80:504:87 | source(...) : Object | LogInjectionTest.java:504:71:504:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:504:80:504:87 | source(...) | user-provided value | -| LogInjectionTest.java:505:56:505:72 | (...)... | LogInjectionTest.java:505:65:505:72 | source(...) : Object | LogInjectionTest.java:505:56:505:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:505:65:505:72 | source(...) | user-provided value | -| LogInjectionTest.java:506:41:506:57 | (...)... | LogInjectionTest.java:506:50:506:57 | source(...) : Object | LogInjectionTest.java:506:41:506:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:506:50:506:57 | source(...) | user-provided value | -| LogInjectionTest.java:507:86:507:102 | (...)... | LogInjectionTest.java:507:95:507:102 | source(...) : Object | LogInjectionTest.java:507:86:507:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:507:95:507:102 | source(...) | user-provided value | -| LogInjectionTest.java:508:71:508:87 | (...)... | LogInjectionTest.java:508:80:508:87 | source(...) : Object | LogInjectionTest.java:508:71:508:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:508:80:508:87 | source(...) | user-provided value | -| LogInjectionTest.java:509:56:509:72 | (...)... | LogInjectionTest.java:509:65:509:72 | source(...) : Object | LogInjectionTest.java:509:56:509:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:509:65:509:72 | source(...) | user-provided value | +| LogInjectionTest.java:486:161:486:177 | (...)... | LogInjectionTest.java:486:170:486:177 | source(...) : Object | LogInjectionTest.java:486:161:486:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:486:170:486:177 | source(...) | user-provided value | +| LogInjectionTest.java:487:146:487:162 | (...)... | LogInjectionTest.java:487:155:487:162 | source(...) : Object | LogInjectionTest.java:487:146:487:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:487:155:487:162 | source(...) | user-provided value | +| LogInjectionTest.java:488:131:488:147 | (...)... | LogInjectionTest.java:488:140:488:147 | source(...) : Object | LogInjectionTest.java:488:131:488:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:488:140:488:147 | source(...) | user-provided value | +| LogInjectionTest.java:489:116:489:132 | (...)... | LogInjectionTest.java:489:125:489:132 | source(...) : Object | LogInjectionTest.java:489:116:489:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:489:125:489:132 | source(...) | user-provided value | +| LogInjectionTest.java:490:101:490:117 | (...)... | LogInjectionTest.java:490:110:490:117 | source(...) : Object | LogInjectionTest.java:490:101:490:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:490:110:490:117 | source(...) | user-provided value | +| LogInjectionTest.java:491:86:491:102 | (...)... | LogInjectionTest.java:491:95:491:102 | source(...) : Object | LogInjectionTest.java:491:86:491:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:491:95:491:102 | source(...) | user-provided value | +| LogInjectionTest.java:492:71:492:87 | (...)... | LogInjectionTest.java:492:80:492:87 | source(...) : Object | LogInjectionTest.java:492:71:492:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:492:80:492:87 | source(...) | user-provided value | +| LogInjectionTest.java:493:56:493:72 | (...)... | LogInjectionTest.java:493:65:493:72 | source(...) : Object | LogInjectionTest.java:493:56:493:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:493:65:493:72 | source(...) | user-provided value | +| LogInjectionTest.java:494:41:494:57 | (...)... | LogInjectionTest.java:494:50:494:57 | source(...) : Object | LogInjectionTest.java:494:41:494:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:494:50:494:57 | source(...) | user-provided value | +| LogInjectionTest.java:495:26:495:42 | (...)... | LogInjectionTest.java:495:35:495:42 | source(...) : Object | LogInjectionTest.java:495:26:495:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:495:35:495:42 | source(...) | user-provided value | +| LogInjectionTest.java:496:26:496:42 | (...)... | LogInjectionTest.java:496:35:496:42 | source(...) : Object | LogInjectionTest.java:496:26:496:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:496:35:496:42 | source(...) | user-provided value | +| LogInjectionTest.java:497:41:497:62 | (...)... | LogInjectionTest.java:497:55:497:62 | source(...) : Object | LogInjectionTest.java:497:41:497:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:497:55:497:62 | source(...) | user-provided value | +| LogInjectionTest.java:498:26:498:42 | (...)... | LogInjectionTest.java:498:35:498:42 | source(...) : Object | LogInjectionTest.java:498:26:498:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:498:35:498:42 | source(...) | user-provided value | +| LogInjectionTest.java:499:26:499:47 | (...)... | LogInjectionTest.java:499:40:499:47 | source(...) : Object | LogInjectionTest.java:499:26:499:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:499:40:499:47 | source(...) | user-provided value | +| LogInjectionTest.java:500:26:500:47 | (...)... | LogInjectionTest.java:500:40:500:47 | source(...) : Object | LogInjectionTest.java:500:26:500:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:500:40:500:47 | source(...) | user-provided value | +| LogInjectionTest.java:501:26:501:48 | (...)... | LogInjectionTest.java:501:41:501:48 | source(...) : Object | LogInjectionTest.java:501:26:501:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:501:41:501:48 | source(...) | user-provided value | +| LogInjectionTest.java:502:26:502:48 | (...)... | LogInjectionTest.java:502:41:502:48 | source(...) : Object | LogInjectionTest.java:502:26:502:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:502:41:502:48 | source(...) | user-provided value | +| LogInjectionTest.java:503:41:503:63 | (...)... | LogInjectionTest.java:503:56:503:63 | source(...) : Object | LogInjectionTest.java:503:41:503:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:503:56:503:63 | source(...) | user-provided value | +| LogInjectionTest.java:504:41:504:63 | (...)... | LogInjectionTest.java:504:56:504:63 | source(...) : Object | LogInjectionTest.java:504:41:504:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:504:56:504:63 | source(...) | user-provided value | +| LogInjectionTest.java:505:41:505:58 | (...)... | LogInjectionTest.java:505:51:505:58 | source(...) : Object | LogInjectionTest.java:505:41:505:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:505:51:505:58 | source(...) | user-provided value | +| LogInjectionTest.java:506:41:506:66 | (...)... | LogInjectionTest.java:506:59:506:66 | source(...) : Object | LogInjectionTest.java:506:41:506:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:506:59:506:66 | source(...) | user-provided value | +| LogInjectionTest.java:507:41:507:66 | (...)... | LogInjectionTest.java:507:59:507:66 | source(...) : Object | LogInjectionTest.java:507:41:507:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:507:59:507:66 | source(...) | user-provided value | +| LogInjectionTest.java:508:41:508:48 | source(...) | LogInjectionTest.java:508:41:508:48 | source(...) | LogInjectionTest.java:508:41:508:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:508:41:508:48 | source(...) | user-provided value | +| LogInjectionTest.java:509:41:509:57 | (...)... | LogInjectionTest.java:509:50:509:57 | source(...) : Object | LogInjectionTest.java:509:41:509:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:509:50:509:57 | source(...) | user-provided value | | LogInjectionTest.java:510:41:510:57 | (...)... | LogInjectionTest.java:510:50:510:57 | source(...) : Object | LogInjectionTest.java:510:41:510:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:510:50:510:57 | source(...) | user-provided value | -| LogInjectionTest.java:511:101:511:117 | (...)... | LogInjectionTest.java:511:110:511:117 | source(...) : Object | LogInjectionTest.java:511:101:511:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:511:110:511:117 | source(...) | user-provided value | -| LogInjectionTest.java:512:86:512:102 | (...)... | LogInjectionTest.java:512:95:512:102 | source(...) : Object | LogInjectionTest.java:512:86:512:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:512:95:512:102 | source(...) | user-provided value | -| LogInjectionTest.java:513:71:513:87 | (...)... | LogInjectionTest.java:513:80:513:87 | source(...) : Object | LogInjectionTest.java:513:71:513:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:513:80:513:87 | source(...) | user-provided value | -| LogInjectionTest.java:514:56:514:72 | (...)... | LogInjectionTest.java:514:65:514:72 | source(...) : Object | LogInjectionTest.java:514:56:514:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:514:65:514:72 | source(...) | user-provided value | -| LogInjectionTest.java:515:41:515:57 | (...)... | LogInjectionTest.java:515:50:515:57 | source(...) : Object | LogInjectionTest.java:515:41:515:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:515:50:515:57 | source(...) | user-provided value | -| LogInjectionTest.java:516:116:516:132 | (...)... | LogInjectionTest.java:516:125:516:132 | source(...) : Object | LogInjectionTest.java:516:116:516:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:516:125:516:132 | source(...) | user-provided value | -| LogInjectionTest.java:517:101:517:117 | (...)... | LogInjectionTest.java:517:110:517:117 | source(...) : Object | LogInjectionTest.java:517:101:517:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:517:110:517:117 | source(...) | user-provided value | -| LogInjectionTest.java:518:86:518:102 | (...)... | LogInjectionTest.java:518:95:518:102 | source(...) : Object | LogInjectionTest.java:518:86:518:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:518:95:518:102 | source(...) | user-provided value | -| LogInjectionTest.java:519:71:519:87 | (...)... | LogInjectionTest.java:519:80:519:87 | source(...) : Object | LogInjectionTest.java:519:71:519:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:519:80:519:87 | source(...) | user-provided value | -| LogInjectionTest.java:520:56:520:72 | (...)... | LogInjectionTest.java:520:65:520:72 | source(...) : Object | LogInjectionTest.java:520:56:520:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:520:65:520:72 | source(...) | user-provided value | -| LogInjectionTest.java:521:41:521:57 | (...)... | LogInjectionTest.java:521:50:521:57 | source(...) : Object | LogInjectionTest.java:521:41:521:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:521:50:521:57 | source(...) | user-provided value | -| LogInjectionTest.java:522:131:522:147 | (...)... | LogInjectionTest.java:522:140:522:147 | source(...) : Object | LogInjectionTest.java:522:131:522:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:522:140:522:147 | source(...) | user-provided value | -| LogInjectionTest.java:523:116:523:132 | (...)... | LogInjectionTest.java:523:125:523:132 | source(...) : Object | LogInjectionTest.java:523:116:523:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:523:125:523:132 | source(...) | user-provided value | -| LogInjectionTest.java:524:101:524:117 | (...)... | LogInjectionTest.java:524:110:524:117 | source(...) : Object | LogInjectionTest.java:524:101:524:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:524:110:524:117 | source(...) | user-provided value | -| LogInjectionTest.java:525:86:525:102 | (...)... | LogInjectionTest.java:525:95:525:102 | source(...) : Object | LogInjectionTest.java:525:86:525:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:525:95:525:102 | source(...) | user-provided value | -| LogInjectionTest.java:526:71:526:87 | (...)... | LogInjectionTest.java:526:80:526:87 | source(...) : Object | LogInjectionTest.java:526:71:526:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:526:80:526:87 | source(...) | user-provided value | -| LogInjectionTest.java:527:56:527:72 | (...)... | LogInjectionTest.java:527:65:527:72 | source(...) : Object | LogInjectionTest.java:527:56:527:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:527:65:527:72 | source(...) | user-provided value | -| LogInjectionTest.java:528:41:528:57 | (...)... | LogInjectionTest.java:528:50:528:57 | source(...) : Object | LogInjectionTest.java:528:41:528:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:528:50:528:57 | source(...) | user-provided value | -| LogInjectionTest.java:529:146:529:162 | (...)... | LogInjectionTest.java:529:155:529:162 | source(...) : Object | LogInjectionTest.java:529:146:529:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:529:155:529:162 | source(...) | user-provided value | -| LogInjectionTest.java:530:131:530:147 | (...)... | LogInjectionTest.java:530:140:530:147 | source(...) : Object | LogInjectionTest.java:530:131:530:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:530:140:530:147 | source(...) | user-provided value | -| LogInjectionTest.java:531:116:531:132 | (...)... | LogInjectionTest.java:531:125:531:132 | source(...) : Object | LogInjectionTest.java:531:116:531:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:531:125:531:132 | source(...) | user-provided value | -| LogInjectionTest.java:532:101:532:117 | (...)... | LogInjectionTest.java:532:110:532:117 | source(...) : Object | LogInjectionTest.java:532:101:532:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:532:110:532:117 | source(...) | user-provided value | -| LogInjectionTest.java:533:86:533:102 | (...)... | LogInjectionTest.java:533:95:533:102 | source(...) : Object | LogInjectionTest.java:533:86:533:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:533:95:533:102 | source(...) | user-provided value | -| LogInjectionTest.java:534:71:534:87 | (...)... | LogInjectionTest.java:534:80:534:87 | source(...) : Object | LogInjectionTest.java:534:71:534:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:534:80:534:87 | source(...) | user-provided value | -| LogInjectionTest.java:535:56:535:72 | (...)... | LogInjectionTest.java:535:65:535:72 | source(...) : Object | LogInjectionTest.java:535:56:535:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:535:65:535:72 | source(...) | user-provided value | -| LogInjectionTest.java:536:41:536:57 | (...)... | LogInjectionTest.java:536:50:536:57 | source(...) : Object | LogInjectionTest.java:536:41:536:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:536:50:536:57 | source(...) | user-provided value | -| LogInjectionTest.java:537:161:537:177 | (...)... | LogInjectionTest.java:537:170:537:177 | source(...) : Object | LogInjectionTest.java:537:161:537:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:537:170:537:177 | source(...) | user-provided value | -| LogInjectionTest.java:538:146:538:162 | (...)... | LogInjectionTest.java:538:155:538:162 | source(...) : Object | LogInjectionTest.java:538:146:538:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:538:155:538:162 | source(...) | user-provided value | -| LogInjectionTest.java:539:131:539:147 | (...)... | LogInjectionTest.java:539:140:539:147 | source(...) : Object | LogInjectionTest.java:539:131:539:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:539:140:539:147 | source(...) | user-provided value | -| LogInjectionTest.java:540:116:540:132 | (...)... | LogInjectionTest.java:540:125:540:132 | source(...) : Object | LogInjectionTest.java:540:116:540:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:540:125:540:132 | source(...) | user-provided value | -| LogInjectionTest.java:541:101:541:117 | (...)... | LogInjectionTest.java:541:110:541:117 | source(...) : Object | LogInjectionTest.java:541:101:541:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:541:110:541:117 | source(...) | user-provided value | -| LogInjectionTest.java:542:86:542:102 | (...)... | LogInjectionTest.java:542:95:542:102 | source(...) : Object | LogInjectionTest.java:542:86:542:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:542:95:542:102 | source(...) | user-provided value | -| LogInjectionTest.java:543:71:543:87 | (...)... | LogInjectionTest.java:543:80:543:87 | source(...) : Object | LogInjectionTest.java:543:71:543:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:543:80:543:87 | source(...) | user-provided value | -| LogInjectionTest.java:544:56:544:72 | (...)... | LogInjectionTest.java:544:65:544:72 | source(...) : Object | LogInjectionTest.java:544:56:544:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:544:65:544:72 | source(...) | user-provided value | -| LogInjectionTest.java:545:41:545:57 | (...)... | LogInjectionTest.java:545:50:545:57 | source(...) : Object | LogInjectionTest.java:545:41:545:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:545:50:545:57 | source(...) | user-provided value | -| LogInjectionTest.java:546:176:546:192 | (...)... | LogInjectionTest.java:546:185:546:192 | source(...) : Object | LogInjectionTest.java:546:176:546:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:546:185:546:192 | source(...) | user-provided value | +| LogInjectionTest.java:511:56:511:78 | new Object[] | LogInjectionTest.java:511:70:511:77 | source(...) : Object | LogInjectionTest.java:511:56:511:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:511:70:511:77 | source(...) | user-provided value | +| LogInjectionTest.java:512:56:512:72 | (...)... | LogInjectionTest.java:512:65:512:72 | source(...) : Object | LogInjectionTest.java:512:56:512:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:512:65:512:72 | source(...) | user-provided value | +| LogInjectionTest.java:513:41:513:57 | (...)... | LogInjectionTest.java:513:50:513:57 | source(...) : Object | LogInjectionTest.java:513:41:513:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:513:50:513:57 | source(...) | user-provided value | +| LogInjectionTest.java:514:71:514:87 | (...)... | LogInjectionTest.java:514:80:514:87 | source(...) : Object | LogInjectionTest.java:514:71:514:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:514:80:514:87 | source(...) | user-provided value | +| LogInjectionTest.java:515:56:515:72 | (...)... | LogInjectionTest.java:515:65:515:72 | source(...) : Object | LogInjectionTest.java:515:56:515:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:515:65:515:72 | source(...) | user-provided value | +| LogInjectionTest.java:516:41:516:57 | (...)... | LogInjectionTest.java:516:50:516:57 | source(...) : Object | LogInjectionTest.java:516:41:516:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:516:50:516:57 | source(...) | user-provided value | +| LogInjectionTest.java:517:86:517:102 | (...)... | LogInjectionTest.java:517:95:517:102 | source(...) : Object | LogInjectionTest.java:517:86:517:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:517:95:517:102 | source(...) | user-provided value | +| LogInjectionTest.java:518:71:518:87 | (...)... | LogInjectionTest.java:518:80:518:87 | source(...) : Object | LogInjectionTest.java:518:71:518:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:518:80:518:87 | source(...) | user-provided value | +| LogInjectionTest.java:519:56:519:72 | (...)... | LogInjectionTest.java:519:65:519:72 | source(...) : Object | LogInjectionTest.java:519:56:519:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:519:65:519:72 | source(...) | user-provided value | +| LogInjectionTest.java:520:41:520:57 | (...)... | LogInjectionTest.java:520:50:520:57 | source(...) : Object | LogInjectionTest.java:520:41:520:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:520:50:520:57 | source(...) | user-provided value | +| LogInjectionTest.java:521:101:521:117 | (...)... | LogInjectionTest.java:521:110:521:117 | source(...) : Object | LogInjectionTest.java:521:101:521:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:521:110:521:117 | source(...) | user-provided value | +| LogInjectionTest.java:522:86:522:102 | (...)... | LogInjectionTest.java:522:95:522:102 | source(...) : Object | LogInjectionTest.java:522:86:522:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:522:95:522:102 | source(...) | user-provided value | +| LogInjectionTest.java:523:71:523:87 | (...)... | LogInjectionTest.java:523:80:523:87 | source(...) : Object | LogInjectionTest.java:523:71:523:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:523:80:523:87 | source(...) | user-provided value | +| LogInjectionTest.java:524:56:524:72 | (...)... | LogInjectionTest.java:524:65:524:72 | source(...) : Object | LogInjectionTest.java:524:56:524:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:524:65:524:72 | source(...) | user-provided value | +| LogInjectionTest.java:525:41:525:57 | (...)... | LogInjectionTest.java:525:50:525:57 | source(...) : Object | LogInjectionTest.java:525:41:525:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:525:50:525:57 | source(...) | user-provided value | +| LogInjectionTest.java:526:116:526:132 | (...)... | LogInjectionTest.java:526:125:526:132 | source(...) : Object | LogInjectionTest.java:526:116:526:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:526:125:526:132 | source(...) | user-provided value | +| LogInjectionTest.java:527:101:527:117 | (...)... | LogInjectionTest.java:527:110:527:117 | source(...) : Object | LogInjectionTest.java:527:101:527:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:527:110:527:117 | source(...) | user-provided value | +| LogInjectionTest.java:528:86:528:102 | (...)... | LogInjectionTest.java:528:95:528:102 | source(...) : Object | LogInjectionTest.java:528:86:528:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:528:95:528:102 | source(...) | user-provided value | +| LogInjectionTest.java:529:71:529:87 | (...)... | LogInjectionTest.java:529:80:529:87 | source(...) : Object | LogInjectionTest.java:529:71:529:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:529:80:529:87 | source(...) | user-provided value | +| LogInjectionTest.java:530:56:530:72 | (...)... | LogInjectionTest.java:530:65:530:72 | source(...) : Object | LogInjectionTest.java:530:56:530:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:530:65:530:72 | source(...) | user-provided value | +| LogInjectionTest.java:531:41:531:57 | (...)... | LogInjectionTest.java:531:50:531:57 | source(...) : Object | LogInjectionTest.java:531:41:531:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:531:50:531:57 | source(...) | user-provided value | +| LogInjectionTest.java:532:131:532:147 | (...)... | LogInjectionTest.java:532:140:532:147 | source(...) : Object | LogInjectionTest.java:532:131:532:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:532:140:532:147 | source(...) | user-provided value | +| LogInjectionTest.java:533:116:533:132 | (...)... | LogInjectionTest.java:533:125:533:132 | source(...) : Object | LogInjectionTest.java:533:116:533:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:533:125:533:132 | source(...) | user-provided value | +| LogInjectionTest.java:534:101:534:117 | (...)... | LogInjectionTest.java:534:110:534:117 | source(...) : Object | LogInjectionTest.java:534:101:534:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:534:110:534:117 | source(...) | user-provided value | +| LogInjectionTest.java:535:86:535:102 | (...)... | LogInjectionTest.java:535:95:535:102 | source(...) : Object | LogInjectionTest.java:535:86:535:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:535:95:535:102 | source(...) | user-provided value | +| LogInjectionTest.java:536:71:536:87 | (...)... | LogInjectionTest.java:536:80:536:87 | source(...) : Object | LogInjectionTest.java:536:71:536:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:536:80:536:87 | source(...) | user-provided value | +| LogInjectionTest.java:537:56:537:72 | (...)... | LogInjectionTest.java:537:65:537:72 | source(...) : Object | LogInjectionTest.java:537:56:537:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:537:65:537:72 | source(...) | user-provided value | +| LogInjectionTest.java:538:41:538:57 | (...)... | LogInjectionTest.java:538:50:538:57 | source(...) : Object | LogInjectionTest.java:538:41:538:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:538:50:538:57 | source(...) | user-provided value | +| LogInjectionTest.java:539:146:539:162 | (...)... | LogInjectionTest.java:539:155:539:162 | source(...) : Object | LogInjectionTest.java:539:146:539:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:539:155:539:162 | source(...) | user-provided value | +| LogInjectionTest.java:540:131:540:147 | (...)... | LogInjectionTest.java:540:140:540:147 | source(...) : Object | LogInjectionTest.java:540:131:540:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:540:140:540:147 | source(...) | user-provided value | +| LogInjectionTest.java:541:116:541:132 | (...)... | LogInjectionTest.java:541:125:541:132 | source(...) : Object | LogInjectionTest.java:541:116:541:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:541:125:541:132 | source(...) | user-provided value | +| LogInjectionTest.java:542:101:542:117 | (...)... | LogInjectionTest.java:542:110:542:117 | source(...) : Object | LogInjectionTest.java:542:101:542:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:542:110:542:117 | source(...) | user-provided value | +| LogInjectionTest.java:543:86:543:102 | (...)... | LogInjectionTest.java:543:95:543:102 | source(...) : Object | LogInjectionTest.java:543:86:543:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:543:95:543:102 | source(...) | user-provided value | +| LogInjectionTest.java:544:71:544:87 | (...)... | LogInjectionTest.java:544:80:544:87 | source(...) : Object | LogInjectionTest.java:544:71:544:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:544:80:544:87 | source(...) | user-provided value | +| LogInjectionTest.java:545:56:545:72 | (...)... | LogInjectionTest.java:545:65:545:72 | source(...) : Object | LogInjectionTest.java:545:56:545:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:545:65:545:72 | source(...) | user-provided value | +| LogInjectionTest.java:546:41:546:57 | (...)... | LogInjectionTest.java:546:50:546:57 | source(...) : Object | LogInjectionTest.java:546:41:546:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:546:50:546:57 | source(...) | user-provided value | | LogInjectionTest.java:547:161:547:177 | (...)... | LogInjectionTest.java:547:170:547:177 | source(...) : Object | LogInjectionTest.java:547:161:547:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:547:170:547:177 | source(...) | user-provided value | | LogInjectionTest.java:548:146:548:162 | (...)... | LogInjectionTest.java:548:155:548:162 | source(...) : Object | LogInjectionTest.java:548:146:548:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:548:155:548:162 | source(...) | user-provided value | | LogInjectionTest.java:549:131:549:147 | (...)... | LogInjectionTest.java:549:140:549:147 | source(...) : Object | LogInjectionTest.java:549:131:549:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:549:140:549:147 | source(...) | user-provided value | @@ -403,65 +395,65 @@ | LogInjectionTest.java:553:71:553:87 | (...)... | LogInjectionTest.java:553:80:553:87 | source(...) : Object | LogInjectionTest.java:553:71:553:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:553:80:553:87 | source(...) | user-provided value | | LogInjectionTest.java:554:56:554:72 | (...)... | LogInjectionTest.java:554:65:554:72 | source(...) : Object | LogInjectionTest.java:554:56:554:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:554:65:554:72 | source(...) | user-provided value | | LogInjectionTest.java:555:41:555:57 | (...)... | LogInjectionTest.java:555:50:555:57 | source(...) : Object | LogInjectionTest.java:555:41:555:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:555:50:555:57 | source(...) | user-provided value | -| LogInjectionTest.java:556:41:556:57 | (...)... | LogInjectionTest.java:556:50:556:57 | source(...) : Object | LogInjectionTest.java:556:41:556:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:556:50:556:57 | source(...) | user-provided value | -| LogInjectionTest.java:557:56:557:77 | (...)... | LogInjectionTest.java:557:70:557:77 | source(...) : Object | LogInjectionTest.java:557:56:557:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:557:70:557:77 | source(...) | user-provided value | -| LogInjectionTest.java:558:41:558:57 | (...)... | LogInjectionTest.java:558:50:558:57 | source(...) : Object | LogInjectionTest.java:558:41:558:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:558:50:558:57 | source(...) | user-provided value | -| LogInjectionTest.java:559:41:559:62 | (...)... | LogInjectionTest.java:559:55:559:62 | source(...) : Object | LogInjectionTest.java:559:41:559:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:559:55:559:62 | source(...) | user-provided value | -| LogInjectionTest.java:560:41:560:62 | (...)... | LogInjectionTest.java:560:55:560:62 | source(...) : Object | LogInjectionTest.java:560:41:560:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:560:55:560:62 | source(...) | user-provided value | -| LogInjectionTest.java:561:26:561:51 | (...)... | LogInjectionTest.java:561:44:561:51 | source(...) : Object | LogInjectionTest.java:561:26:561:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:561:44:561:51 | source(...) | user-provided value | -| LogInjectionTest.java:562:26:562:51 | (...)... | LogInjectionTest.java:562:44:562:51 | source(...) : Object | LogInjectionTest.java:562:26:562:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:562:44:562:51 | source(...) | user-provided value | -| LogInjectionTest.java:563:26:563:43 | (...)... | LogInjectionTest.java:563:36:563:43 | source(...) : Object | LogInjectionTest.java:563:26:563:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:563:36:563:43 | source(...) | user-provided value | -| LogInjectionTest.java:564:26:564:43 | (...)... | LogInjectionTest.java:564:36:564:43 | source(...) : Object | LogInjectionTest.java:564:26:564:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:564:36:564:43 | source(...) | user-provided value | -| LogInjectionTest.java:565:26:565:33 | source(...) | LogInjectionTest.java:565:26:565:33 | source(...) | LogInjectionTest.java:565:26:565:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:565:26:565:33 | source(...) | user-provided value | -| LogInjectionTest.java:566:26:566:33 | source(...) | LogInjectionTest.java:566:26:566:33 | source(...) | LogInjectionTest.java:566:26:566:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:566:26:566:33 | source(...) | user-provided value | -| LogInjectionTest.java:567:26:567:42 | (...)... | LogInjectionTest.java:567:35:567:42 | source(...) : Object | LogInjectionTest.java:567:26:567:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:567:35:567:42 | source(...) | user-provided value | -| LogInjectionTest.java:568:26:568:42 | (...)... | LogInjectionTest.java:568:35:568:42 | source(...) : Object | LogInjectionTest.java:568:26:568:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:568:35:568:42 | source(...) | user-provided value | -| LogInjectionTest.java:569:41:569:63 | new Object[] | LogInjectionTest.java:569:55:569:62 | source(...) : Object | LogInjectionTest.java:569:41:569:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:569:55:569:62 | source(...) | user-provided value | -| LogInjectionTest.java:570:41:570:57 | (...)... | LogInjectionTest.java:570:50:570:57 | source(...) : Object | LogInjectionTest.java:570:41:570:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:570:50:570:57 | source(...) | user-provided value | -| LogInjectionTest.java:571:26:571:42 | (...)... | LogInjectionTest.java:571:35:571:42 | source(...) : Object | LogInjectionTest.java:571:26:571:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:571:35:571:42 | source(...) | user-provided value | -| LogInjectionTest.java:572:56:572:72 | (...)... | LogInjectionTest.java:572:65:572:72 | source(...) : Object | LogInjectionTest.java:572:56:572:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:572:65:572:72 | source(...) | user-provided value | -| LogInjectionTest.java:573:41:573:57 | (...)... | LogInjectionTest.java:573:50:573:57 | source(...) : Object | LogInjectionTest.java:573:41:573:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:573:50:573:57 | source(...) | user-provided value | -| LogInjectionTest.java:574:26:574:42 | (...)... | LogInjectionTest.java:574:35:574:42 | source(...) : Object | LogInjectionTest.java:574:26:574:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:574:35:574:42 | source(...) | user-provided value | -| LogInjectionTest.java:575:71:575:87 | (...)... | LogInjectionTest.java:575:80:575:87 | source(...) : Object | LogInjectionTest.java:575:71:575:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:575:80:575:87 | source(...) | user-provided value | -| LogInjectionTest.java:576:56:576:72 | (...)... | LogInjectionTest.java:576:65:576:72 | source(...) : Object | LogInjectionTest.java:576:56:576:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:576:65:576:72 | source(...) | user-provided value | -| LogInjectionTest.java:577:41:577:57 | (...)... | LogInjectionTest.java:577:50:577:57 | source(...) : Object | LogInjectionTest.java:577:41:577:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:577:50:577:57 | source(...) | user-provided value | +| LogInjectionTest.java:556:176:556:192 | (...)... | LogInjectionTest.java:556:185:556:192 | source(...) : Object | LogInjectionTest.java:556:176:556:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:556:185:556:192 | source(...) | user-provided value | +| LogInjectionTest.java:557:161:557:177 | (...)... | LogInjectionTest.java:557:170:557:177 | source(...) : Object | LogInjectionTest.java:557:161:557:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:557:170:557:177 | source(...) | user-provided value | +| LogInjectionTest.java:558:146:558:162 | (...)... | LogInjectionTest.java:558:155:558:162 | source(...) : Object | LogInjectionTest.java:558:146:558:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:558:155:558:162 | source(...) | user-provided value | +| LogInjectionTest.java:559:131:559:147 | (...)... | LogInjectionTest.java:559:140:559:147 | source(...) : Object | LogInjectionTest.java:559:131:559:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:559:140:559:147 | source(...) | user-provided value | +| LogInjectionTest.java:560:116:560:132 | (...)... | LogInjectionTest.java:560:125:560:132 | source(...) : Object | LogInjectionTest.java:560:116:560:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:560:125:560:132 | source(...) | user-provided value | +| LogInjectionTest.java:561:101:561:117 | (...)... | LogInjectionTest.java:561:110:561:117 | source(...) : Object | LogInjectionTest.java:561:101:561:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:561:110:561:117 | source(...) | user-provided value | +| LogInjectionTest.java:562:86:562:102 | (...)... | LogInjectionTest.java:562:95:562:102 | source(...) : Object | LogInjectionTest.java:562:86:562:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:562:95:562:102 | source(...) | user-provided value | +| LogInjectionTest.java:563:71:563:87 | (...)... | LogInjectionTest.java:563:80:563:87 | source(...) : Object | LogInjectionTest.java:563:71:563:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:563:80:563:87 | source(...) | user-provided value | +| LogInjectionTest.java:564:56:564:72 | (...)... | LogInjectionTest.java:564:65:564:72 | source(...) : Object | LogInjectionTest.java:564:56:564:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:564:65:564:72 | source(...) | user-provided value | +| LogInjectionTest.java:565:41:565:57 | (...)... | LogInjectionTest.java:565:50:565:57 | source(...) : Object | LogInjectionTest.java:565:41:565:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:565:50:565:57 | source(...) | user-provided value | +| LogInjectionTest.java:566:41:566:57 | (...)... | LogInjectionTest.java:566:50:566:57 | source(...) : Object | LogInjectionTest.java:566:41:566:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:566:50:566:57 | source(...) | user-provided value | +| LogInjectionTest.java:567:56:567:77 | (...)... | LogInjectionTest.java:567:70:567:77 | source(...) : Object | LogInjectionTest.java:567:56:567:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:567:70:567:77 | source(...) | user-provided value | +| LogInjectionTest.java:568:41:568:57 | (...)... | LogInjectionTest.java:568:50:568:57 | source(...) : Object | LogInjectionTest.java:568:41:568:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:568:50:568:57 | source(...) | user-provided value | +| LogInjectionTest.java:569:41:569:62 | (...)... | LogInjectionTest.java:569:55:569:62 | source(...) : Object | LogInjectionTest.java:569:41:569:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:569:55:569:62 | source(...) | user-provided value | +| LogInjectionTest.java:570:41:570:62 | (...)... | LogInjectionTest.java:570:55:570:62 | source(...) : Object | LogInjectionTest.java:570:41:570:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:570:55:570:62 | source(...) | user-provided value | +| LogInjectionTest.java:571:26:571:51 | (...)... | LogInjectionTest.java:571:44:571:51 | source(...) : Object | LogInjectionTest.java:571:26:571:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:571:44:571:51 | source(...) | user-provided value | +| LogInjectionTest.java:572:26:572:51 | (...)... | LogInjectionTest.java:572:44:572:51 | source(...) : Object | LogInjectionTest.java:572:26:572:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:572:44:572:51 | source(...) | user-provided value | +| LogInjectionTest.java:573:26:573:43 | (...)... | LogInjectionTest.java:573:36:573:43 | source(...) : Object | LogInjectionTest.java:573:26:573:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:573:36:573:43 | source(...) | user-provided value | +| LogInjectionTest.java:574:26:574:43 | (...)... | LogInjectionTest.java:574:36:574:43 | source(...) : Object | LogInjectionTest.java:574:26:574:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:574:36:574:43 | source(...) | user-provided value | +| LogInjectionTest.java:575:26:575:33 | source(...) | LogInjectionTest.java:575:26:575:33 | source(...) | LogInjectionTest.java:575:26:575:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:575:26:575:33 | source(...) | user-provided value | +| LogInjectionTest.java:576:26:576:33 | source(...) | LogInjectionTest.java:576:26:576:33 | source(...) | LogInjectionTest.java:576:26:576:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:576:26:576:33 | source(...) | user-provided value | +| LogInjectionTest.java:577:26:577:42 | (...)... | LogInjectionTest.java:577:35:577:42 | source(...) : Object | LogInjectionTest.java:577:26:577:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:577:35:577:42 | source(...) | user-provided value | | LogInjectionTest.java:578:26:578:42 | (...)... | LogInjectionTest.java:578:35:578:42 | source(...) : Object | LogInjectionTest.java:578:26:578:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:578:35:578:42 | source(...) | user-provided value | -| LogInjectionTest.java:579:86:579:102 | (...)... | LogInjectionTest.java:579:95:579:102 | source(...) : Object | LogInjectionTest.java:579:86:579:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:579:95:579:102 | source(...) | user-provided value | -| LogInjectionTest.java:580:71:580:87 | (...)... | LogInjectionTest.java:580:80:580:87 | source(...) : Object | LogInjectionTest.java:580:71:580:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:580:80:580:87 | source(...) | user-provided value | -| LogInjectionTest.java:581:56:581:72 | (...)... | LogInjectionTest.java:581:65:581:72 | source(...) : Object | LogInjectionTest.java:581:56:581:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:581:65:581:72 | source(...) | user-provided value | -| LogInjectionTest.java:582:41:582:57 | (...)... | LogInjectionTest.java:582:50:582:57 | source(...) : Object | LogInjectionTest.java:582:41:582:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:582:50:582:57 | source(...) | user-provided value | -| LogInjectionTest.java:583:26:583:42 | (...)... | LogInjectionTest.java:583:35:583:42 | source(...) : Object | LogInjectionTest.java:583:26:583:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:583:35:583:42 | source(...) | user-provided value | -| LogInjectionTest.java:584:101:584:117 | (...)... | LogInjectionTest.java:584:110:584:117 | source(...) : Object | LogInjectionTest.java:584:101:584:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:584:110:584:117 | source(...) | user-provided value | -| LogInjectionTest.java:585:86:585:102 | (...)... | LogInjectionTest.java:585:95:585:102 | source(...) : Object | LogInjectionTest.java:585:86:585:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:585:95:585:102 | source(...) | user-provided value | -| LogInjectionTest.java:586:71:586:87 | (...)... | LogInjectionTest.java:586:80:586:87 | source(...) : Object | LogInjectionTest.java:586:71:586:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:586:80:586:87 | source(...) | user-provided value | -| LogInjectionTest.java:587:56:587:72 | (...)... | LogInjectionTest.java:587:65:587:72 | source(...) : Object | LogInjectionTest.java:587:56:587:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:587:65:587:72 | source(...) | user-provided value | -| LogInjectionTest.java:588:41:588:57 | (...)... | LogInjectionTest.java:588:50:588:57 | source(...) : Object | LogInjectionTest.java:588:41:588:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:588:50:588:57 | source(...) | user-provided value | -| LogInjectionTest.java:589:26:589:42 | (...)... | LogInjectionTest.java:589:35:589:42 | source(...) : Object | LogInjectionTest.java:589:26:589:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:589:35:589:42 | source(...) | user-provided value | -| LogInjectionTest.java:590:116:590:132 | (...)... | LogInjectionTest.java:590:125:590:132 | source(...) : Object | LogInjectionTest.java:590:116:590:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:590:125:590:132 | source(...) | user-provided value | -| LogInjectionTest.java:591:101:591:117 | (...)... | LogInjectionTest.java:591:110:591:117 | source(...) : Object | LogInjectionTest.java:591:101:591:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:591:110:591:117 | source(...) | user-provided value | -| LogInjectionTest.java:592:86:592:102 | (...)... | LogInjectionTest.java:592:95:592:102 | source(...) : Object | LogInjectionTest.java:592:86:592:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:592:95:592:102 | source(...) | user-provided value | -| LogInjectionTest.java:593:71:593:87 | (...)... | LogInjectionTest.java:593:80:593:87 | source(...) : Object | LogInjectionTest.java:593:71:593:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:593:80:593:87 | source(...) | user-provided value | -| LogInjectionTest.java:594:56:594:72 | (...)... | LogInjectionTest.java:594:65:594:72 | source(...) : Object | LogInjectionTest.java:594:56:594:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:594:65:594:72 | source(...) | user-provided value | -| LogInjectionTest.java:595:41:595:57 | (...)... | LogInjectionTest.java:595:50:595:57 | source(...) : Object | LogInjectionTest.java:595:41:595:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:595:50:595:57 | source(...) | user-provided value | -| LogInjectionTest.java:596:26:596:42 | (...)... | LogInjectionTest.java:596:35:596:42 | source(...) : Object | LogInjectionTest.java:596:26:596:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:596:35:596:42 | source(...) | user-provided value | -| LogInjectionTest.java:597:131:597:147 | (...)... | LogInjectionTest.java:597:140:597:147 | source(...) : Object | LogInjectionTest.java:597:131:597:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:597:140:597:147 | source(...) | user-provided value | -| LogInjectionTest.java:598:116:598:132 | (...)... | LogInjectionTest.java:598:125:598:132 | source(...) : Object | LogInjectionTest.java:598:116:598:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:598:125:598:132 | source(...) | user-provided value | -| LogInjectionTest.java:599:101:599:117 | (...)... | LogInjectionTest.java:599:110:599:117 | source(...) : Object | LogInjectionTest.java:599:101:599:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:599:110:599:117 | source(...) | user-provided value | -| LogInjectionTest.java:600:86:600:102 | (...)... | LogInjectionTest.java:600:95:600:102 | source(...) : Object | LogInjectionTest.java:600:86:600:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:600:95:600:102 | source(...) | user-provided value | -| LogInjectionTest.java:601:71:601:87 | (...)... | LogInjectionTest.java:601:80:601:87 | source(...) : Object | LogInjectionTest.java:601:71:601:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:601:80:601:87 | source(...) | user-provided value | -| LogInjectionTest.java:602:56:602:72 | (...)... | LogInjectionTest.java:602:65:602:72 | source(...) : Object | LogInjectionTest.java:602:56:602:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:602:65:602:72 | source(...) | user-provided value | -| LogInjectionTest.java:603:41:603:57 | (...)... | LogInjectionTest.java:603:50:603:57 | source(...) : Object | LogInjectionTest.java:603:41:603:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:603:50:603:57 | source(...) | user-provided value | -| LogInjectionTest.java:604:26:604:42 | (...)... | LogInjectionTest.java:604:35:604:42 | source(...) : Object | LogInjectionTest.java:604:26:604:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:604:35:604:42 | source(...) | user-provided value | -| LogInjectionTest.java:605:146:605:162 | (...)... | LogInjectionTest.java:605:155:605:162 | source(...) : Object | LogInjectionTest.java:605:146:605:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:605:155:605:162 | source(...) | user-provided value | -| LogInjectionTest.java:606:131:606:147 | (...)... | LogInjectionTest.java:606:140:606:147 | source(...) : Object | LogInjectionTest.java:606:131:606:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:606:140:606:147 | source(...) | user-provided value | -| LogInjectionTest.java:607:116:607:132 | (...)... | LogInjectionTest.java:607:125:607:132 | source(...) : Object | LogInjectionTest.java:607:116:607:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:607:125:607:132 | source(...) | user-provided value | -| LogInjectionTest.java:608:101:608:117 | (...)... | LogInjectionTest.java:608:110:608:117 | source(...) : Object | LogInjectionTest.java:608:101:608:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:608:110:608:117 | source(...) | user-provided value | -| LogInjectionTest.java:609:86:609:102 | (...)... | LogInjectionTest.java:609:95:609:102 | source(...) : Object | LogInjectionTest.java:609:86:609:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:609:95:609:102 | source(...) | user-provided value | -| LogInjectionTest.java:610:71:610:87 | (...)... | LogInjectionTest.java:610:80:610:87 | source(...) : Object | LogInjectionTest.java:610:71:610:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:610:80:610:87 | source(...) | user-provided value | -| LogInjectionTest.java:611:56:611:72 | (...)... | LogInjectionTest.java:611:65:611:72 | source(...) : Object | LogInjectionTest.java:611:56:611:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:611:65:611:72 | source(...) | user-provided value | -| LogInjectionTest.java:612:41:612:57 | (...)... | LogInjectionTest.java:612:50:612:57 | source(...) : Object | LogInjectionTest.java:612:41:612:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:612:50:612:57 | source(...) | user-provided value | -| LogInjectionTest.java:613:26:613:42 | (...)... | LogInjectionTest.java:613:35:613:42 | source(...) : Object | LogInjectionTest.java:613:26:613:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:613:35:613:42 | source(...) | user-provided value | -| LogInjectionTest.java:614:161:614:177 | (...)... | LogInjectionTest.java:614:170:614:177 | source(...) : Object | LogInjectionTest.java:614:161:614:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:614:170:614:177 | source(...) | user-provided value | +| LogInjectionTest.java:579:41:579:63 | new Object[] | LogInjectionTest.java:579:55:579:62 | source(...) : Object | LogInjectionTest.java:579:41:579:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:579:55:579:62 | source(...) | user-provided value | +| LogInjectionTest.java:580:41:580:57 | (...)... | LogInjectionTest.java:580:50:580:57 | source(...) : Object | LogInjectionTest.java:580:41:580:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:580:50:580:57 | source(...) | user-provided value | +| LogInjectionTest.java:581:26:581:42 | (...)... | LogInjectionTest.java:581:35:581:42 | source(...) : Object | LogInjectionTest.java:581:26:581:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:581:35:581:42 | source(...) | user-provided value | +| LogInjectionTest.java:582:56:582:72 | (...)... | LogInjectionTest.java:582:65:582:72 | source(...) : Object | LogInjectionTest.java:582:56:582:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:582:65:582:72 | source(...) | user-provided value | +| LogInjectionTest.java:583:41:583:57 | (...)... | LogInjectionTest.java:583:50:583:57 | source(...) : Object | LogInjectionTest.java:583:41:583:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:583:50:583:57 | source(...) | user-provided value | +| LogInjectionTest.java:584:26:584:42 | (...)... | LogInjectionTest.java:584:35:584:42 | source(...) : Object | LogInjectionTest.java:584:26:584:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:584:35:584:42 | source(...) | user-provided value | +| LogInjectionTest.java:585:71:585:87 | (...)... | LogInjectionTest.java:585:80:585:87 | source(...) : Object | LogInjectionTest.java:585:71:585:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:585:80:585:87 | source(...) | user-provided value | +| LogInjectionTest.java:586:56:586:72 | (...)... | LogInjectionTest.java:586:65:586:72 | source(...) : Object | LogInjectionTest.java:586:56:586:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:586:65:586:72 | source(...) | user-provided value | +| LogInjectionTest.java:587:41:587:57 | (...)... | LogInjectionTest.java:587:50:587:57 | source(...) : Object | LogInjectionTest.java:587:41:587:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:587:50:587:57 | source(...) | user-provided value | +| LogInjectionTest.java:588:26:588:42 | (...)... | LogInjectionTest.java:588:35:588:42 | source(...) : Object | LogInjectionTest.java:588:26:588:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:588:35:588:42 | source(...) | user-provided value | +| LogInjectionTest.java:589:86:589:102 | (...)... | LogInjectionTest.java:589:95:589:102 | source(...) : Object | LogInjectionTest.java:589:86:589:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:589:95:589:102 | source(...) | user-provided value | +| LogInjectionTest.java:590:71:590:87 | (...)... | LogInjectionTest.java:590:80:590:87 | source(...) : Object | LogInjectionTest.java:590:71:590:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:590:80:590:87 | source(...) | user-provided value | +| LogInjectionTest.java:591:56:591:72 | (...)... | LogInjectionTest.java:591:65:591:72 | source(...) : Object | LogInjectionTest.java:591:56:591:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:591:65:591:72 | source(...) | user-provided value | +| LogInjectionTest.java:592:41:592:57 | (...)... | LogInjectionTest.java:592:50:592:57 | source(...) : Object | LogInjectionTest.java:592:41:592:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:592:50:592:57 | source(...) | user-provided value | +| LogInjectionTest.java:593:26:593:42 | (...)... | LogInjectionTest.java:593:35:593:42 | source(...) : Object | LogInjectionTest.java:593:26:593:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:593:35:593:42 | source(...) | user-provided value | +| LogInjectionTest.java:594:101:594:117 | (...)... | LogInjectionTest.java:594:110:594:117 | source(...) : Object | LogInjectionTest.java:594:101:594:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:594:110:594:117 | source(...) | user-provided value | +| LogInjectionTest.java:595:86:595:102 | (...)... | LogInjectionTest.java:595:95:595:102 | source(...) : Object | LogInjectionTest.java:595:86:595:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:595:95:595:102 | source(...) | user-provided value | +| LogInjectionTest.java:596:71:596:87 | (...)... | LogInjectionTest.java:596:80:596:87 | source(...) : Object | LogInjectionTest.java:596:71:596:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:596:80:596:87 | source(...) | user-provided value | +| LogInjectionTest.java:597:56:597:72 | (...)... | LogInjectionTest.java:597:65:597:72 | source(...) : Object | LogInjectionTest.java:597:56:597:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:597:65:597:72 | source(...) | user-provided value | +| LogInjectionTest.java:598:41:598:57 | (...)... | LogInjectionTest.java:598:50:598:57 | source(...) : Object | LogInjectionTest.java:598:41:598:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:598:50:598:57 | source(...) | user-provided value | +| LogInjectionTest.java:599:26:599:42 | (...)... | LogInjectionTest.java:599:35:599:42 | source(...) : Object | LogInjectionTest.java:599:26:599:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:599:35:599:42 | source(...) | user-provided value | +| LogInjectionTest.java:600:116:600:132 | (...)... | LogInjectionTest.java:600:125:600:132 | source(...) : Object | LogInjectionTest.java:600:116:600:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:600:125:600:132 | source(...) | user-provided value | +| LogInjectionTest.java:601:101:601:117 | (...)... | LogInjectionTest.java:601:110:601:117 | source(...) : Object | LogInjectionTest.java:601:101:601:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:601:110:601:117 | source(...) | user-provided value | +| LogInjectionTest.java:602:86:602:102 | (...)... | LogInjectionTest.java:602:95:602:102 | source(...) : Object | LogInjectionTest.java:602:86:602:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:602:95:602:102 | source(...) | user-provided value | +| LogInjectionTest.java:603:71:603:87 | (...)... | LogInjectionTest.java:603:80:603:87 | source(...) : Object | LogInjectionTest.java:603:71:603:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:603:80:603:87 | source(...) | user-provided value | +| LogInjectionTest.java:604:56:604:72 | (...)... | LogInjectionTest.java:604:65:604:72 | source(...) : Object | LogInjectionTest.java:604:56:604:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:604:65:604:72 | source(...) | user-provided value | +| LogInjectionTest.java:605:41:605:57 | (...)... | LogInjectionTest.java:605:50:605:57 | source(...) : Object | LogInjectionTest.java:605:41:605:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:605:50:605:57 | source(...) | user-provided value | +| LogInjectionTest.java:606:26:606:42 | (...)... | LogInjectionTest.java:606:35:606:42 | source(...) : Object | LogInjectionTest.java:606:26:606:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:606:35:606:42 | source(...) | user-provided value | +| LogInjectionTest.java:607:131:607:147 | (...)... | LogInjectionTest.java:607:140:607:147 | source(...) : Object | LogInjectionTest.java:607:131:607:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:607:140:607:147 | source(...) | user-provided value | +| LogInjectionTest.java:608:116:608:132 | (...)... | LogInjectionTest.java:608:125:608:132 | source(...) : Object | LogInjectionTest.java:608:116:608:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:608:125:608:132 | source(...) | user-provided value | +| LogInjectionTest.java:609:101:609:117 | (...)... | LogInjectionTest.java:609:110:609:117 | source(...) : Object | LogInjectionTest.java:609:101:609:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:609:110:609:117 | source(...) | user-provided value | +| LogInjectionTest.java:610:86:610:102 | (...)... | LogInjectionTest.java:610:95:610:102 | source(...) : Object | LogInjectionTest.java:610:86:610:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:610:95:610:102 | source(...) | user-provided value | +| LogInjectionTest.java:611:71:611:87 | (...)... | LogInjectionTest.java:611:80:611:87 | source(...) : Object | LogInjectionTest.java:611:71:611:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:611:80:611:87 | source(...) | user-provided value | +| LogInjectionTest.java:612:56:612:72 | (...)... | LogInjectionTest.java:612:65:612:72 | source(...) : Object | LogInjectionTest.java:612:56:612:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:612:65:612:72 | source(...) | user-provided value | +| LogInjectionTest.java:613:41:613:57 | (...)... | LogInjectionTest.java:613:50:613:57 | source(...) : Object | LogInjectionTest.java:613:41:613:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:613:50:613:57 | source(...) | user-provided value | +| LogInjectionTest.java:614:26:614:42 | (...)... | LogInjectionTest.java:614:35:614:42 | source(...) : Object | LogInjectionTest.java:614:26:614:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:614:35:614:42 | source(...) | user-provided value | | LogInjectionTest.java:615:146:615:162 | (...)... | LogInjectionTest.java:615:155:615:162 | source(...) : Object | LogInjectionTest.java:615:146:615:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:615:155:615:162 | source(...) | user-provided value | | LogInjectionTest.java:616:131:616:147 | (...)... | LogInjectionTest.java:616:140:616:147 | source(...) : Object | LogInjectionTest.java:616:131:616:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:616:140:616:147 | source(...) | user-provided value | | LogInjectionTest.java:617:116:617:132 | (...)... | LogInjectionTest.java:617:125:617:132 | source(...) : Object | LogInjectionTest.java:617:116:617:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:617:125:617:132 | source(...) | user-provided value | @@ -471,67 +463,67 @@ | LogInjectionTest.java:621:56:621:72 | (...)... | LogInjectionTest.java:621:65:621:72 | source(...) : Object | LogInjectionTest.java:621:56:621:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:621:65:621:72 | source(...) | user-provided value | | LogInjectionTest.java:622:41:622:57 | (...)... | LogInjectionTest.java:622:50:622:57 | source(...) : Object | LogInjectionTest.java:622:41:622:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:622:50:622:57 | source(...) | user-provided value | | LogInjectionTest.java:623:26:623:42 | (...)... | LogInjectionTest.java:623:35:623:42 | source(...) : Object | LogInjectionTest.java:623:26:623:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:623:35:623:42 | source(...) | user-provided value | -| LogInjectionTest.java:624:26:624:42 | (...)... | LogInjectionTest.java:624:35:624:42 | source(...) : Object | LogInjectionTest.java:624:26:624:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:624:35:624:42 | source(...) | user-provided value | -| LogInjectionTest.java:625:41:625:62 | (...)... | LogInjectionTest.java:625:55:625:62 | source(...) : Object | LogInjectionTest.java:625:41:625:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:625:55:625:62 | source(...) | user-provided value | -| LogInjectionTest.java:626:26:626:42 | (...)... | LogInjectionTest.java:626:35:626:42 | source(...) : Object | LogInjectionTest.java:626:26:626:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:626:35:626:42 | source(...) | user-provided value | -| LogInjectionTest.java:627:26:627:47 | (...)... | LogInjectionTest.java:627:40:627:47 | source(...) : Object | LogInjectionTest.java:627:26:627:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:627:40:627:47 | source(...) | user-provided value | -| LogInjectionTest.java:628:26:628:47 | (...)... | LogInjectionTest.java:628:40:628:47 | source(...) : Object | LogInjectionTest.java:628:26:628:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:628:40:628:47 | source(...) | user-provided value | -| LogInjectionTest.java:629:25:629:47 | (...)... | LogInjectionTest.java:629:40:629:47 | source(...) : Object | LogInjectionTest.java:629:25:629:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:629:40:629:47 | source(...) | user-provided value | -| LogInjectionTest.java:630:25:630:47 | (...)... | LogInjectionTest.java:630:40:630:47 | source(...) : Object | LogInjectionTest.java:630:25:630:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:630:40:630:47 | source(...) | user-provided value | -| LogInjectionTest.java:631:40:631:62 | (...)... | LogInjectionTest.java:631:55:631:62 | source(...) : Object | LogInjectionTest.java:631:40:631:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:631:55:631:62 | source(...) | user-provided value | -| LogInjectionTest.java:632:40:632:62 | (...)... | LogInjectionTest.java:632:55:632:62 | source(...) : Object | LogInjectionTest.java:632:40:632:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:632:55:632:62 | source(...) | user-provided value | -| LogInjectionTest.java:633:40:633:57 | (...)... | LogInjectionTest.java:633:50:633:57 | source(...) : Object | LogInjectionTest.java:633:40:633:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:633:50:633:57 | source(...) | user-provided value | -| LogInjectionTest.java:634:40:634:65 | (...)... | LogInjectionTest.java:634:58:634:65 | source(...) : Object | LogInjectionTest.java:634:40:634:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:634:58:634:65 | source(...) | user-provided value | -| LogInjectionTest.java:635:40:635:65 | (...)... | LogInjectionTest.java:635:58:635:65 | source(...) : Object | LogInjectionTest.java:635:40:635:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:635:58:635:65 | source(...) | user-provided value | -| LogInjectionTest.java:636:40:636:47 | source(...) | LogInjectionTest.java:636:40:636:47 | source(...) | LogInjectionTest.java:636:40:636:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:636:40:636:47 | source(...) | user-provided value | -| LogInjectionTest.java:637:40:637:56 | (...)... | LogInjectionTest.java:637:49:637:56 | source(...) : Object | LogInjectionTest.java:637:40:637:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:637:49:637:56 | source(...) | user-provided value | -| LogInjectionTest.java:638:40:638:56 | (...)... | LogInjectionTest.java:638:49:638:56 | source(...) : Object | LogInjectionTest.java:638:40:638:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:638:49:638:56 | source(...) | user-provided value | -| LogInjectionTest.java:639:55:639:77 | new Object[] | LogInjectionTest.java:639:69:639:76 | source(...) : Object | LogInjectionTest.java:639:55:639:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:639:69:639:76 | source(...) | user-provided value | -| LogInjectionTest.java:640:55:640:71 | (...)... | LogInjectionTest.java:640:64:640:71 | source(...) : Object | LogInjectionTest.java:640:55:640:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:640:64:640:71 | source(...) | user-provided value | -| LogInjectionTest.java:641:40:641:56 | (...)... | LogInjectionTest.java:641:49:641:56 | source(...) : Object | LogInjectionTest.java:641:40:641:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:641:49:641:56 | source(...) | user-provided value | -| LogInjectionTest.java:642:70:642:86 | (...)... | LogInjectionTest.java:642:79:642:86 | source(...) : Object | LogInjectionTest.java:642:70:642:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:642:79:642:86 | source(...) | user-provided value | -| LogInjectionTest.java:643:55:643:71 | (...)... | LogInjectionTest.java:643:64:643:71 | source(...) : Object | LogInjectionTest.java:643:55:643:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:643:64:643:71 | source(...) | user-provided value | -| LogInjectionTest.java:644:40:644:56 | (...)... | LogInjectionTest.java:644:49:644:56 | source(...) : Object | LogInjectionTest.java:644:40:644:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:644:49:644:56 | source(...) | user-provided value | -| LogInjectionTest.java:645:85:645:101 | (...)... | LogInjectionTest.java:645:94:645:101 | source(...) : Object | LogInjectionTest.java:645:85:645:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:645:94:645:101 | source(...) | user-provided value | -| LogInjectionTest.java:646:70:646:86 | (...)... | LogInjectionTest.java:646:79:646:86 | source(...) : Object | LogInjectionTest.java:646:70:646:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:646:79:646:86 | source(...) | user-provided value | -| LogInjectionTest.java:647:55:647:71 | (...)... | LogInjectionTest.java:647:64:647:71 | source(...) : Object | LogInjectionTest.java:647:55:647:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:647:64:647:71 | source(...) | user-provided value | +| LogInjectionTest.java:624:161:624:177 | (...)... | LogInjectionTest.java:624:170:624:177 | source(...) : Object | LogInjectionTest.java:624:161:624:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:624:170:624:177 | source(...) | user-provided value | +| LogInjectionTest.java:625:146:625:162 | (...)... | LogInjectionTest.java:625:155:625:162 | source(...) : Object | LogInjectionTest.java:625:146:625:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:625:155:625:162 | source(...) | user-provided value | +| LogInjectionTest.java:626:131:626:147 | (...)... | LogInjectionTest.java:626:140:626:147 | source(...) : Object | LogInjectionTest.java:626:131:626:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:626:140:626:147 | source(...) | user-provided value | +| LogInjectionTest.java:627:116:627:132 | (...)... | LogInjectionTest.java:627:125:627:132 | source(...) : Object | LogInjectionTest.java:627:116:627:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:627:125:627:132 | source(...) | user-provided value | +| LogInjectionTest.java:628:101:628:117 | (...)... | LogInjectionTest.java:628:110:628:117 | source(...) : Object | LogInjectionTest.java:628:101:628:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:628:110:628:117 | source(...) | user-provided value | +| LogInjectionTest.java:629:86:629:102 | (...)... | LogInjectionTest.java:629:95:629:102 | source(...) : Object | LogInjectionTest.java:629:86:629:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:629:95:629:102 | source(...) | user-provided value | +| LogInjectionTest.java:630:71:630:87 | (...)... | LogInjectionTest.java:630:80:630:87 | source(...) : Object | LogInjectionTest.java:630:71:630:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:630:80:630:87 | source(...) | user-provided value | +| LogInjectionTest.java:631:56:631:72 | (...)... | LogInjectionTest.java:631:65:631:72 | source(...) : Object | LogInjectionTest.java:631:56:631:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:631:65:631:72 | source(...) | user-provided value | +| LogInjectionTest.java:632:41:632:57 | (...)... | LogInjectionTest.java:632:50:632:57 | source(...) : Object | LogInjectionTest.java:632:41:632:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:632:50:632:57 | source(...) | user-provided value | +| LogInjectionTest.java:633:26:633:42 | (...)... | LogInjectionTest.java:633:35:633:42 | source(...) : Object | LogInjectionTest.java:633:26:633:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:633:35:633:42 | source(...) | user-provided value | +| LogInjectionTest.java:634:26:634:42 | (...)... | LogInjectionTest.java:634:35:634:42 | source(...) : Object | LogInjectionTest.java:634:26:634:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:634:35:634:42 | source(...) | user-provided value | +| LogInjectionTest.java:635:41:635:62 | (...)... | LogInjectionTest.java:635:55:635:62 | source(...) : Object | LogInjectionTest.java:635:41:635:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:635:55:635:62 | source(...) | user-provided value | +| LogInjectionTest.java:636:26:636:42 | (...)... | LogInjectionTest.java:636:35:636:42 | source(...) : Object | LogInjectionTest.java:636:26:636:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:636:35:636:42 | source(...) | user-provided value | +| LogInjectionTest.java:637:26:637:47 | (...)... | LogInjectionTest.java:637:40:637:47 | source(...) : Object | LogInjectionTest.java:637:26:637:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:637:40:637:47 | source(...) | user-provided value | +| LogInjectionTest.java:638:26:638:47 | (...)... | LogInjectionTest.java:638:40:638:47 | source(...) : Object | LogInjectionTest.java:638:26:638:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:638:40:638:47 | source(...) | user-provided value | +| LogInjectionTest.java:639:25:639:47 | (...)... | LogInjectionTest.java:639:40:639:47 | source(...) : Object | LogInjectionTest.java:639:25:639:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:639:40:639:47 | source(...) | user-provided value | +| LogInjectionTest.java:640:25:640:47 | (...)... | LogInjectionTest.java:640:40:640:47 | source(...) : Object | LogInjectionTest.java:640:25:640:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:640:40:640:47 | source(...) | user-provided value | +| LogInjectionTest.java:641:40:641:62 | (...)... | LogInjectionTest.java:641:55:641:62 | source(...) : Object | LogInjectionTest.java:641:40:641:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:641:55:641:62 | source(...) | user-provided value | +| LogInjectionTest.java:642:40:642:62 | (...)... | LogInjectionTest.java:642:55:642:62 | source(...) : Object | LogInjectionTest.java:642:40:642:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:642:55:642:62 | source(...) | user-provided value | +| LogInjectionTest.java:643:40:643:57 | (...)... | LogInjectionTest.java:643:50:643:57 | source(...) : Object | LogInjectionTest.java:643:40:643:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:643:50:643:57 | source(...) | user-provided value | +| LogInjectionTest.java:644:40:644:65 | (...)... | LogInjectionTest.java:644:58:644:65 | source(...) : Object | LogInjectionTest.java:644:40:644:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:644:58:644:65 | source(...) | user-provided value | +| LogInjectionTest.java:645:40:645:65 | (...)... | LogInjectionTest.java:645:58:645:65 | source(...) : Object | LogInjectionTest.java:645:40:645:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:645:58:645:65 | source(...) | user-provided value | +| LogInjectionTest.java:646:40:646:47 | source(...) | LogInjectionTest.java:646:40:646:47 | source(...) | LogInjectionTest.java:646:40:646:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:646:40:646:47 | source(...) | user-provided value | +| LogInjectionTest.java:647:40:647:56 | (...)... | LogInjectionTest.java:647:49:647:56 | source(...) : Object | LogInjectionTest.java:647:40:647:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:647:49:647:56 | source(...) | user-provided value | | LogInjectionTest.java:648:40:648:56 | (...)... | LogInjectionTest.java:648:49:648:56 | source(...) : Object | LogInjectionTest.java:648:40:648:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:648:49:648:56 | source(...) | user-provided value | -| LogInjectionTest.java:649:100:649:116 | (...)... | LogInjectionTest.java:649:109:649:116 | source(...) : Object | LogInjectionTest.java:649:100:649:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:649:109:649:116 | source(...) | user-provided value | -| LogInjectionTest.java:650:85:650:101 | (...)... | LogInjectionTest.java:650:94:650:101 | source(...) : Object | LogInjectionTest.java:650:85:650:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:650:94:650:101 | source(...) | user-provided value | -| LogInjectionTest.java:651:70:651:86 | (...)... | LogInjectionTest.java:651:79:651:86 | source(...) : Object | LogInjectionTest.java:651:70:651:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:651:79:651:86 | source(...) | user-provided value | -| LogInjectionTest.java:652:55:652:71 | (...)... | LogInjectionTest.java:652:64:652:71 | source(...) : Object | LogInjectionTest.java:652:55:652:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:652:64:652:71 | source(...) | user-provided value | -| LogInjectionTest.java:653:40:653:56 | (...)... | LogInjectionTest.java:653:49:653:56 | source(...) : Object | LogInjectionTest.java:653:40:653:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:653:49:653:56 | source(...) | user-provided value | -| LogInjectionTest.java:654:115:654:131 | (...)... | LogInjectionTest.java:654:124:654:131 | source(...) : Object | LogInjectionTest.java:654:115:654:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:654:124:654:131 | source(...) | user-provided value | -| LogInjectionTest.java:655:100:655:116 | (...)... | LogInjectionTest.java:655:109:655:116 | source(...) : Object | LogInjectionTest.java:655:100:655:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:655:109:655:116 | source(...) | user-provided value | -| LogInjectionTest.java:656:85:656:101 | (...)... | LogInjectionTest.java:656:94:656:101 | source(...) : Object | LogInjectionTest.java:656:85:656:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:656:94:656:101 | source(...) | user-provided value | -| LogInjectionTest.java:657:70:657:86 | (...)... | LogInjectionTest.java:657:79:657:86 | source(...) : Object | LogInjectionTest.java:657:70:657:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:657:79:657:86 | source(...) | user-provided value | -| LogInjectionTest.java:658:55:658:71 | (...)... | LogInjectionTest.java:658:64:658:71 | source(...) : Object | LogInjectionTest.java:658:55:658:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:658:64:658:71 | source(...) | user-provided value | -| LogInjectionTest.java:659:40:659:56 | (...)... | LogInjectionTest.java:659:49:659:56 | source(...) : Object | LogInjectionTest.java:659:40:659:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:659:49:659:56 | source(...) | user-provided value | -| LogInjectionTest.java:660:130:660:146 | (...)... | LogInjectionTest.java:660:139:660:146 | source(...) : Object | LogInjectionTest.java:660:130:660:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:660:139:660:146 | source(...) | user-provided value | -| LogInjectionTest.java:661:115:661:131 | (...)... | LogInjectionTest.java:661:124:661:131 | source(...) : Object | LogInjectionTest.java:661:115:661:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:661:124:661:131 | source(...) | user-provided value | -| LogInjectionTest.java:662:100:662:116 | (...)... | LogInjectionTest.java:662:109:662:116 | source(...) : Object | LogInjectionTest.java:662:100:662:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:662:109:662:116 | source(...) | user-provided value | -| LogInjectionTest.java:663:85:663:101 | (...)... | LogInjectionTest.java:663:94:663:101 | source(...) : Object | LogInjectionTest.java:663:85:663:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:663:94:663:101 | source(...) | user-provided value | -| LogInjectionTest.java:664:70:664:86 | (...)... | LogInjectionTest.java:664:79:664:86 | source(...) : Object | LogInjectionTest.java:664:70:664:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:664:79:664:86 | source(...) | user-provided value | -| LogInjectionTest.java:665:55:665:71 | (...)... | LogInjectionTest.java:665:64:665:71 | source(...) : Object | LogInjectionTest.java:665:55:665:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:665:64:665:71 | source(...) | user-provided value | -| LogInjectionTest.java:666:40:666:56 | (...)... | LogInjectionTest.java:666:49:666:56 | source(...) : Object | LogInjectionTest.java:666:40:666:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:666:49:666:56 | source(...) | user-provided value | -| LogInjectionTest.java:667:145:667:161 | (...)... | LogInjectionTest.java:667:154:667:161 | source(...) : Object | LogInjectionTest.java:667:145:667:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:667:154:667:161 | source(...) | user-provided value | -| LogInjectionTest.java:668:130:668:146 | (...)... | LogInjectionTest.java:668:139:668:146 | source(...) : Object | LogInjectionTest.java:668:130:668:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:668:139:668:146 | source(...) | user-provided value | -| LogInjectionTest.java:669:115:669:131 | (...)... | LogInjectionTest.java:669:124:669:131 | source(...) : Object | LogInjectionTest.java:669:115:669:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:669:124:669:131 | source(...) | user-provided value | -| LogInjectionTest.java:670:100:670:116 | (...)... | LogInjectionTest.java:670:109:670:116 | source(...) : Object | LogInjectionTest.java:670:100:670:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:670:109:670:116 | source(...) | user-provided value | -| LogInjectionTest.java:671:85:671:101 | (...)... | LogInjectionTest.java:671:94:671:101 | source(...) : Object | LogInjectionTest.java:671:85:671:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:671:94:671:101 | source(...) | user-provided value | -| LogInjectionTest.java:672:70:672:86 | (...)... | LogInjectionTest.java:672:79:672:86 | source(...) : Object | LogInjectionTest.java:672:70:672:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:672:79:672:86 | source(...) | user-provided value | -| LogInjectionTest.java:673:55:673:71 | (...)... | LogInjectionTest.java:673:64:673:71 | source(...) : Object | LogInjectionTest.java:673:55:673:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:673:64:673:71 | source(...) | user-provided value | -| LogInjectionTest.java:674:40:674:56 | (...)... | LogInjectionTest.java:674:49:674:56 | source(...) : Object | LogInjectionTest.java:674:40:674:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:674:49:674:56 | source(...) | user-provided value | -| LogInjectionTest.java:675:160:675:176 | (...)... | LogInjectionTest.java:675:169:675:176 | source(...) : Object | LogInjectionTest.java:675:160:675:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:675:169:675:176 | source(...) | user-provided value | -| LogInjectionTest.java:676:145:676:161 | (...)... | LogInjectionTest.java:676:154:676:161 | source(...) : Object | LogInjectionTest.java:676:145:676:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:676:154:676:161 | source(...) | user-provided value | -| LogInjectionTest.java:677:130:677:146 | (...)... | LogInjectionTest.java:677:139:677:146 | source(...) : Object | LogInjectionTest.java:677:130:677:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:677:139:677:146 | source(...) | user-provided value | -| LogInjectionTest.java:678:115:678:131 | (...)... | LogInjectionTest.java:678:124:678:131 | source(...) : Object | LogInjectionTest.java:678:115:678:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:678:124:678:131 | source(...) | user-provided value | -| LogInjectionTest.java:679:100:679:116 | (...)... | LogInjectionTest.java:679:109:679:116 | source(...) : Object | LogInjectionTest.java:679:100:679:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:679:109:679:116 | source(...) | user-provided value | -| LogInjectionTest.java:680:85:680:101 | (...)... | LogInjectionTest.java:680:94:680:101 | source(...) : Object | LogInjectionTest.java:680:85:680:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:680:94:680:101 | source(...) | user-provided value | -| LogInjectionTest.java:681:70:681:86 | (...)... | LogInjectionTest.java:681:79:681:86 | source(...) : Object | LogInjectionTest.java:681:70:681:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:681:79:681:86 | source(...) | user-provided value | -| LogInjectionTest.java:682:55:682:71 | (...)... | LogInjectionTest.java:682:64:682:71 | source(...) : Object | LogInjectionTest.java:682:55:682:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:682:64:682:71 | source(...) | user-provided value | -| LogInjectionTest.java:683:40:683:56 | (...)... | LogInjectionTest.java:683:49:683:56 | source(...) : Object | LogInjectionTest.java:683:40:683:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:683:49:683:56 | source(...) | user-provided value | -| LogInjectionTest.java:684:175:684:191 | (...)... | LogInjectionTest.java:684:184:684:191 | source(...) : Object | LogInjectionTest.java:684:175:684:191 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:684:184:684:191 | source(...) | user-provided value | +| LogInjectionTest.java:649:55:649:77 | new Object[] | LogInjectionTest.java:649:69:649:76 | source(...) : Object | LogInjectionTest.java:649:55:649:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:649:69:649:76 | source(...) | user-provided value | +| LogInjectionTest.java:650:55:650:71 | (...)... | LogInjectionTest.java:650:64:650:71 | source(...) : Object | LogInjectionTest.java:650:55:650:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:650:64:650:71 | source(...) | user-provided value | +| LogInjectionTest.java:651:40:651:56 | (...)... | LogInjectionTest.java:651:49:651:56 | source(...) : Object | LogInjectionTest.java:651:40:651:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:651:49:651:56 | source(...) | user-provided value | +| LogInjectionTest.java:652:70:652:86 | (...)... | LogInjectionTest.java:652:79:652:86 | source(...) : Object | LogInjectionTest.java:652:70:652:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:652:79:652:86 | source(...) | user-provided value | +| LogInjectionTest.java:653:55:653:71 | (...)... | LogInjectionTest.java:653:64:653:71 | source(...) : Object | LogInjectionTest.java:653:55:653:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:653:64:653:71 | source(...) | user-provided value | +| LogInjectionTest.java:654:40:654:56 | (...)... | LogInjectionTest.java:654:49:654:56 | source(...) : Object | LogInjectionTest.java:654:40:654:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:654:49:654:56 | source(...) | user-provided value | +| LogInjectionTest.java:655:85:655:101 | (...)... | LogInjectionTest.java:655:94:655:101 | source(...) : Object | LogInjectionTest.java:655:85:655:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:655:94:655:101 | source(...) | user-provided value | +| LogInjectionTest.java:656:70:656:86 | (...)... | LogInjectionTest.java:656:79:656:86 | source(...) : Object | LogInjectionTest.java:656:70:656:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:656:79:656:86 | source(...) | user-provided value | +| LogInjectionTest.java:657:55:657:71 | (...)... | LogInjectionTest.java:657:64:657:71 | source(...) : Object | LogInjectionTest.java:657:55:657:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:657:64:657:71 | source(...) | user-provided value | +| LogInjectionTest.java:658:40:658:56 | (...)... | LogInjectionTest.java:658:49:658:56 | source(...) : Object | LogInjectionTest.java:658:40:658:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:658:49:658:56 | source(...) | user-provided value | +| LogInjectionTest.java:659:100:659:116 | (...)... | LogInjectionTest.java:659:109:659:116 | source(...) : Object | LogInjectionTest.java:659:100:659:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:659:109:659:116 | source(...) | user-provided value | +| LogInjectionTest.java:660:85:660:101 | (...)... | LogInjectionTest.java:660:94:660:101 | source(...) : Object | LogInjectionTest.java:660:85:660:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:660:94:660:101 | source(...) | user-provided value | +| LogInjectionTest.java:661:70:661:86 | (...)... | LogInjectionTest.java:661:79:661:86 | source(...) : Object | LogInjectionTest.java:661:70:661:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:661:79:661:86 | source(...) | user-provided value | +| LogInjectionTest.java:662:55:662:71 | (...)... | LogInjectionTest.java:662:64:662:71 | source(...) : Object | LogInjectionTest.java:662:55:662:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:662:64:662:71 | source(...) | user-provided value | +| LogInjectionTest.java:663:40:663:56 | (...)... | LogInjectionTest.java:663:49:663:56 | source(...) : Object | LogInjectionTest.java:663:40:663:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:663:49:663:56 | source(...) | user-provided value | +| LogInjectionTest.java:664:115:664:131 | (...)... | LogInjectionTest.java:664:124:664:131 | source(...) : Object | LogInjectionTest.java:664:115:664:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:664:124:664:131 | source(...) | user-provided value | +| LogInjectionTest.java:665:100:665:116 | (...)... | LogInjectionTest.java:665:109:665:116 | source(...) : Object | LogInjectionTest.java:665:100:665:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:665:109:665:116 | source(...) | user-provided value | +| LogInjectionTest.java:666:85:666:101 | (...)... | LogInjectionTest.java:666:94:666:101 | source(...) : Object | LogInjectionTest.java:666:85:666:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:666:94:666:101 | source(...) | user-provided value | +| LogInjectionTest.java:667:70:667:86 | (...)... | LogInjectionTest.java:667:79:667:86 | source(...) : Object | LogInjectionTest.java:667:70:667:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:667:79:667:86 | source(...) | user-provided value | +| LogInjectionTest.java:668:55:668:71 | (...)... | LogInjectionTest.java:668:64:668:71 | source(...) : Object | LogInjectionTest.java:668:55:668:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:668:64:668:71 | source(...) | user-provided value | +| LogInjectionTest.java:669:40:669:56 | (...)... | LogInjectionTest.java:669:49:669:56 | source(...) : Object | LogInjectionTest.java:669:40:669:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:669:49:669:56 | source(...) | user-provided value | +| LogInjectionTest.java:670:130:670:146 | (...)... | LogInjectionTest.java:670:139:670:146 | source(...) : Object | LogInjectionTest.java:670:130:670:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:670:139:670:146 | source(...) | user-provided value | +| LogInjectionTest.java:671:115:671:131 | (...)... | LogInjectionTest.java:671:124:671:131 | source(...) : Object | LogInjectionTest.java:671:115:671:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:671:124:671:131 | source(...) | user-provided value | +| LogInjectionTest.java:672:100:672:116 | (...)... | LogInjectionTest.java:672:109:672:116 | source(...) : Object | LogInjectionTest.java:672:100:672:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:672:109:672:116 | source(...) | user-provided value | +| LogInjectionTest.java:673:85:673:101 | (...)... | LogInjectionTest.java:673:94:673:101 | source(...) : Object | LogInjectionTest.java:673:85:673:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:673:94:673:101 | source(...) | user-provided value | +| LogInjectionTest.java:674:70:674:86 | (...)... | LogInjectionTest.java:674:79:674:86 | source(...) : Object | LogInjectionTest.java:674:70:674:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:674:79:674:86 | source(...) | user-provided value | +| LogInjectionTest.java:675:55:675:71 | (...)... | LogInjectionTest.java:675:64:675:71 | source(...) : Object | LogInjectionTest.java:675:55:675:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:675:64:675:71 | source(...) | user-provided value | +| LogInjectionTest.java:676:40:676:56 | (...)... | LogInjectionTest.java:676:49:676:56 | source(...) : Object | LogInjectionTest.java:676:40:676:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:676:49:676:56 | source(...) | user-provided value | +| LogInjectionTest.java:677:145:677:161 | (...)... | LogInjectionTest.java:677:154:677:161 | source(...) : Object | LogInjectionTest.java:677:145:677:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:677:154:677:161 | source(...) | user-provided value | +| LogInjectionTest.java:678:130:678:146 | (...)... | LogInjectionTest.java:678:139:678:146 | source(...) : Object | LogInjectionTest.java:678:130:678:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:678:139:678:146 | source(...) | user-provided value | +| LogInjectionTest.java:679:115:679:131 | (...)... | LogInjectionTest.java:679:124:679:131 | source(...) : Object | LogInjectionTest.java:679:115:679:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:679:124:679:131 | source(...) | user-provided value | +| LogInjectionTest.java:680:100:680:116 | (...)... | LogInjectionTest.java:680:109:680:116 | source(...) : Object | LogInjectionTest.java:680:100:680:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:680:109:680:116 | source(...) | user-provided value | +| LogInjectionTest.java:681:85:681:101 | (...)... | LogInjectionTest.java:681:94:681:101 | source(...) : Object | LogInjectionTest.java:681:85:681:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:681:94:681:101 | source(...) | user-provided value | +| LogInjectionTest.java:682:70:682:86 | (...)... | LogInjectionTest.java:682:79:682:86 | source(...) : Object | LogInjectionTest.java:682:70:682:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:682:79:682:86 | source(...) | user-provided value | +| LogInjectionTest.java:683:55:683:71 | (...)... | LogInjectionTest.java:683:64:683:71 | source(...) : Object | LogInjectionTest.java:683:55:683:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:683:64:683:71 | source(...) | user-provided value | +| LogInjectionTest.java:684:40:684:56 | (...)... | LogInjectionTest.java:684:49:684:56 | source(...) : Object | LogInjectionTest.java:684:40:684:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:684:49:684:56 | source(...) | user-provided value | | LogInjectionTest.java:685:160:685:176 | (...)... | LogInjectionTest.java:685:169:685:176 | source(...) : Object | LogInjectionTest.java:685:160:685:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:685:169:685:176 | source(...) | user-provided value | | LogInjectionTest.java:686:145:686:161 | (...)... | LogInjectionTest.java:686:154:686:161 | source(...) : Object | LogInjectionTest.java:686:145:686:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:686:154:686:161 | source(...) | user-provided value | | LogInjectionTest.java:687:130:687:146 | (...)... | LogInjectionTest.java:687:139:687:146 | source(...) : Object | LogInjectionTest.java:687:130:687:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:687:139:687:146 | source(...) | user-provided value | @@ -541,65 +533,65 @@ | LogInjectionTest.java:691:70:691:86 | (...)... | LogInjectionTest.java:691:79:691:86 | source(...) : Object | LogInjectionTest.java:691:70:691:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:691:79:691:86 | source(...) | user-provided value | | LogInjectionTest.java:692:55:692:71 | (...)... | LogInjectionTest.java:692:64:692:71 | source(...) : Object | LogInjectionTest.java:692:55:692:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:692:64:692:71 | source(...) | user-provided value | | LogInjectionTest.java:693:40:693:56 | (...)... | LogInjectionTest.java:693:49:693:56 | source(...) : Object | LogInjectionTest.java:693:40:693:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:693:49:693:56 | source(...) | user-provided value | -| LogInjectionTest.java:694:40:694:56 | (...)... | LogInjectionTest.java:694:49:694:56 | source(...) : Object | LogInjectionTest.java:694:40:694:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:694:49:694:56 | source(...) | user-provided value | -| LogInjectionTest.java:695:55:695:76 | (...)... | LogInjectionTest.java:695:69:695:76 | source(...) : Object | LogInjectionTest.java:695:55:695:76 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:695:69:695:76 | source(...) | user-provided value | -| LogInjectionTest.java:696:40:696:56 | (...)... | LogInjectionTest.java:696:49:696:56 | source(...) : Object | LogInjectionTest.java:696:40:696:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:696:49:696:56 | source(...) | user-provided value | -| LogInjectionTest.java:697:40:697:61 | (...)... | LogInjectionTest.java:697:54:697:61 | source(...) : Object | LogInjectionTest.java:697:40:697:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:697:54:697:61 | source(...) | user-provided value | -| LogInjectionTest.java:698:40:698:61 | (...)... | LogInjectionTest.java:698:54:698:61 | source(...) : Object | LogInjectionTest.java:698:40:698:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:698:54:698:61 | source(...) | user-provided value | -| LogInjectionTest.java:699:25:699:50 | (...)... | LogInjectionTest.java:699:43:699:50 | source(...) : Object | LogInjectionTest.java:699:25:699:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:699:43:699:50 | source(...) | user-provided value | -| LogInjectionTest.java:700:25:700:50 | (...)... | LogInjectionTest.java:700:43:700:50 | source(...) : Object | LogInjectionTest.java:700:25:700:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:700:43:700:50 | source(...) | user-provided value | -| LogInjectionTest.java:701:25:701:42 | (...)... | LogInjectionTest.java:701:35:701:42 | source(...) : Object | LogInjectionTest.java:701:25:701:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:701:35:701:42 | source(...) | user-provided value | -| LogInjectionTest.java:702:25:702:42 | (...)... | LogInjectionTest.java:702:35:702:42 | source(...) : Object | LogInjectionTest.java:702:25:702:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:702:35:702:42 | source(...) | user-provided value | -| LogInjectionTest.java:703:25:703:32 | source(...) | LogInjectionTest.java:703:25:703:32 | source(...) | LogInjectionTest.java:703:25:703:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:703:25:703:32 | source(...) | user-provided value | -| LogInjectionTest.java:704:25:704:32 | source(...) | LogInjectionTest.java:704:25:704:32 | source(...) | LogInjectionTest.java:704:25:704:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:704:25:704:32 | source(...) | user-provided value | -| LogInjectionTest.java:705:25:705:41 | (...)... | LogInjectionTest.java:705:34:705:41 | source(...) : Object | LogInjectionTest.java:705:25:705:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:705:34:705:41 | source(...) | user-provided value | -| LogInjectionTest.java:706:25:706:41 | (...)... | LogInjectionTest.java:706:34:706:41 | source(...) : Object | LogInjectionTest.java:706:25:706:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:706:34:706:41 | source(...) | user-provided value | -| LogInjectionTest.java:707:40:707:62 | new Object[] | LogInjectionTest.java:707:54:707:61 | source(...) : Object | LogInjectionTest.java:707:40:707:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:707:54:707:61 | source(...) | user-provided value | -| LogInjectionTest.java:708:40:708:56 | (...)... | LogInjectionTest.java:708:49:708:56 | source(...) : Object | LogInjectionTest.java:708:40:708:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:708:49:708:56 | source(...) | user-provided value | -| LogInjectionTest.java:709:25:709:41 | (...)... | LogInjectionTest.java:709:34:709:41 | source(...) : Object | LogInjectionTest.java:709:25:709:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:709:34:709:41 | source(...) | user-provided value | -| LogInjectionTest.java:710:55:710:71 | (...)... | LogInjectionTest.java:710:64:710:71 | source(...) : Object | LogInjectionTest.java:710:55:710:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:710:64:710:71 | source(...) | user-provided value | -| LogInjectionTest.java:711:40:711:56 | (...)... | LogInjectionTest.java:711:49:711:56 | source(...) : Object | LogInjectionTest.java:711:40:711:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:711:49:711:56 | source(...) | user-provided value | -| LogInjectionTest.java:712:25:712:41 | (...)... | LogInjectionTest.java:712:34:712:41 | source(...) : Object | LogInjectionTest.java:712:25:712:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:712:34:712:41 | source(...) | user-provided value | -| LogInjectionTest.java:713:70:713:86 | (...)... | LogInjectionTest.java:713:79:713:86 | source(...) : Object | LogInjectionTest.java:713:70:713:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:713:79:713:86 | source(...) | user-provided value | -| LogInjectionTest.java:714:55:714:71 | (...)... | LogInjectionTest.java:714:64:714:71 | source(...) : Object | LogInjectionTest.java:714:55:714:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:714:64:714:71 | source(...) | user-provided value | -| LogInjectionTest.java:715:40:715:56 | (...)... | LogInjectionTest.java:715:49:715:56 | source(...) : Object | LogInjectionTest.java:715:40:715:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:715:49:715:56 | source(...) | user-provided value | +| LogInjectionTest.java:694:175:694:191 | (...)... | LogInjectionTest.java:694:184:694:191 | source(...) : Object | LogInjectionTest.java:694:175:694:191 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:694:184:694:191 | source(...) | user-provided value | +| LogInjectionTest.java:695:160:695:176 | (...)... | LogInjectionTest.java:695:169:695:176 | source(...) : Object | LogInjectionTest.java:695:160:695:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:695:169:695:176 | source(...) | user-provided value | +| LogInjectionTest.java:696:145:696:161 | (...)... | LogInjectionTest.java:696:154:696:161 | source(...) : Object | LogInjectionTest.java:696:145:696:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:696:154:696:161 | source(...) | user-provided value | +| LogInjectionTest.java:697:130:697:146 | (...)... | LogInjectionTest.java:697:139:697:146 | source(...) : Object | LogInjectionTest.java:697:130:697:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:697:139:697:146 | source(...) | user-provided value | +| LogInjectionTest.java:698:115:698:131 | (...)... | LogInjectionTest.java:698:124:698:131 | source(...) : Object | LogInjectionTest.java:698:115:698:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:698:124:698:131 | source(...) | user-provided value | +| LogInjectionTest.java:699:100:699:116 | (...)... | LogInjectionTest.java:699:109:699:116 | source(...) : Object | LogInjectionTest.java:699:100:699:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:699:109:699:116 | source(...) | user-provided value | +| LogInjectionTest.java:700:85:700:101 | (...)... | LogInjectionTest.java:700:94:700:101 | source(...) : Object | LogInjectionTest.java:700:85:700:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:700:94:700:101 | source(...) | user-provided value | +| LogInjectionTest.java:701:70:701:86 | (...)... | LogInjectionTest.java:701:79:701:86 | source(...) : Object | LogInjectionTest.java:701:70:701:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:701:79:701:86 | source(...) | user-provided value | +| LogInjectionTest.java:702:55:702:71 | (...)... | LogInjectionTest.java:702:64:702:71 | source(...) : Object | LogInjectionTest.java:702:55:702:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:702:64:702:71 | source(...) | user-provided value | +| LogInjectionTest.java:703:40:703:56 | (...)... | LogInjectionTest.java:703:49:703:56 | source(...) : Object | LogInjectionTest.java:703:40:703:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:703:49:703:56 | source(...) | user-provided value | +| LogInjectionTest.java:704:40:704:56 | (...)... | LogInjectionTest.java:704:49:704:56 | source(...) : Object | LogInjectionTest.java:704:40:704:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:704:49:704:56 | source(...) | user-provided value | +| LogInjectionTest.java:705:55:705:76 | (...)... | LogInjectionTest.java:705:69:705:76 | source(...) : Object | LogInjectionTest.java:705:55:705:76 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:705:69:705:76 | source(...) | user-provided value | +| LogInjectionTest.java:706:40:706:56 | (...)... | LogInjectionTest.java:706:49:706:56 | source(...) : Object | LogInjectionTest.java:706:40:706:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:706:49:706:56 | source(...) | user-provided value | +| LogInjectionTest.java:707:40:707:61 | (...)... | LogInjectionTest.java:707:54:707:61 | source(...) : Object | LogInjectionTest.java:707:40:707:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:707:54:707:61 | source(...) | user-provided value | +| LogInjectionTest.java:708:40:708:61 | (...)... | LogInjectionTest.java:708:54:708:61 | source(...) : Object | LogInjectionTest.java:708:40:708:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:708:54:708:61 | source(...) | user-provided value | +| LogInjectionTest.java:709:25:709:50 | (...)... | LogInjectionTest.java:709:43:709:50 | source(...) : Object | LogInjectionTest.java:709:25:709:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:709:43:709:50 | source(...) | user-provided value | +| LogInjectionTest.java:710:25:710:50 | (...)... | LogInjectionTest.java:710:43:710:50 | source(...) : Object | LogInjectionTest.java:710:25:710:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:710:43:710:50 | source(...) | user-provided value | +| LogInjectionTest.java:711:25:711:42 | (...)... | LogInjectionTest.java:711:35:711:42 | source(...) : Object | LogInjectionTest.java:711:25:711:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:711:35:711:42 | source(...) | user-provided value | +| LogInjectionTest.java:712:25:712:42 | (...)... | LogInjectionTest.java:712:35:712:42 | source(...) : Object | LogInjectionTest.java:712:25:712:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:712:35:712:42 | source(...) | user-provided value | +| LogInjectionTest.java:713:25:713:32 | source(...) | LogInjectionTest.java:713:25:713:32 | source(...) | LogInjectionTest.java:713:25:713:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:713:25:713:32 | source(...) | user-provided value | +| LogInjectionTest.java:714:25:714:32 | source(...) | LogInjectionTest.java:714:25:714:32 | source(...) | LogInjectionTest.java:714:25:714:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:714:25:714:32 | source(...) | user-provided value | +| LogInjectionTest.java:715:25:715:41 | (...)... | LogInjectionTest.java:715:34:715:41 | source(...) : Object | LogInjectionTest.java:715:25:715:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:715:34:715:41 | source(...) | user-provided value | | LogInjectionTest.java:716:25:716:41 | (...)... | LogInjectionTest.java:716:34:716:41 | source(...) : Object | LogInjectionTest.java:716:25:716:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:716:34:716:41 | source(...) | user-provided value | -| LogInjectionTest.java:717:85:717:101 | (...)... | LogInjectionTest.java:717:94:717:101 | source(...) : Object | LogInjectionTest.java:717:85:717:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:717:94:717:101 | source(...) | user-provided value | -| LogInjectionTest.java:718:70:718:86 | (...)... | LogInjectionTest.java:718:79:718:86 | source(...) : Object | LogInjectionTest.java:718:70:718:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:718:79:718:86 | source(...) | user-provided value | -| LogInjectionTest.java:719:55:719:71 | (...)... | LogInjectionTest.java:719:64:719:71 | source(...) : Object | LogInjectionTest.java:719:55:719:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:719:64:719:71 | source(...) | user-provided value | -| LogInjectionTest.java:720:40:720:56 | (...)... | LogInjectionTest.java:720:49:720:56 | source(...) : Object | LogInjectionTest.java:720:40:720:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:720:49:720:56 | source(...) | user-provided value | -| LogInjectionTest.java:721:25:721:41 | (...)... | LogInjectionTest.java:721:34:721:41 | source(...) : Object | LogInjectionTest.java:721:25:721:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:721:34:721:41 | source(...) | user-provided value | -| LogInjectionTest.java:722:100:722:116 | (...)... | LogInjectionTest.java:722:109:722:116 | source(...) : Object | LogInjectionTest.java:722:100:722:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:722:109:722:116 | source(...) | user-provided value | -| LogInjectionTest.java:723:85:723:101 | (...)... | LogInjectionTest.java:723:94:723:101 | source(...) : Object | LogInjectionTest.java:723:85:723:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:723:94:723:101 | source(...) | user-provided value | -| LogInjectionTest.java:724:70:724:86 | (...)... | LogInjectionTest.java:724:79:724:86 | source(...) : Object | LogInjectionTest.java:724:70:724:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:724:79:724:86 | source(...) | user-provided value | -| LogInjectionTest.java:725:55:725:71 | (...)... | LogInjectionTest.java:725:64:725:71 | source(...) : Object | LogInjectionTest.java:725:55:725:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:725:64:725:71 | source(...) | user-provided value | -| LogInjectionTest.java:726:40:726:56 | (...)... | LogInjectionTest.java:726:49:726:56 | source(...) : Object | LogInjectionTest.java:726:40:726:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:726:49:726:56 | source(...) | user-provided value | -| LogInjectionTest.java:727:25:727:41 | (...)... | LogInjectionTest.java:727:34:727:41 | source(...) : Object | LogInjectionTest.java:727:25:727:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:727:34:727:41 | source(...) | user-provided value | -| LogInjectionTest.java:728:115:728:131 | (...)... | LogInjectionTest.java:728:124:728:131 | source(...) : Object | LogInjectionTest.java:728:115:728:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:728:124:728:131 | source(...) | user-provided value | -| LogInjectionTest.java:729:100:729:116 | (...)... | LogInjectionTest.java:729:109:729:116 | source(...) : Object | LogInjectionTest.java:729:100:729:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:729:109:729:116 | source(...) | user-provided value | -| LogInjectionTest.java:730:85:730:101 | (...)... | LogInjectionTest.java:730:94:730:101 | source(...) : Object | LogInjectionTest.java:730:85:730:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:730:94:730:101 | source(...) | user-provided value | -| LogInjectionTest.java:731:70:731:86 | (...)... | LogInjectionTest.java:731:79:731:86 | source(...) : Object | LogInjectionTest.java:731:70:731:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:731:79:731:86 | source(...) | user-provided value | -| LogInjectionTest.java:732:55:732:71 | (...)... | LogInjectionTest.java:732:64:732:71 | source(...) : Object | LogInjectionTest.java:732:55:732:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:732:64:732:71 | source(...) | user-provided value | -| LogInjectionTest.java:733:40:733:56 | (...)... | LogInjectionTest.java:733:49:733:56 | source(...) : Object | LogInjectionTest.java:733:40:733:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:733:49:733:56 | source(...) | user-provided value | -| LogInjectionTest.java:734:25:734:41 | (...)... | LogInjectionTest.java:734:34:734:41 | source(...) : Object | LogInjectionTest.java:734:25:734:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:734:34:734:41 | source(...) | user-provided value | -| LogInjectionTest.java:735:130:735:146 | (...)... | LogInjectionTest.java:735:139:735:146 | source(...) : Object | LogInjectionTest.java:735:130:735:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:735:139:735:146 | source(...) | user-provided value | -| LogInjectionTest.java:736:115:736:131 | (...)... | LogInjectionTest.java:736:124:736:131 | source(...) : Object | LogInjectionTest.java:736:115:736:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:736:124:736:131 | source(...) | user-provided value | -| LogInjectionTest.java:737:100:737:116 | (...)... | LogInjectionTest.java:737:109:737:116 | source(...) : Object | LogInjectionTest.java:737:100:737:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:737:109:737:116 | source(...) | user-provided value | -| LogInjectionTest.java:738:85:738:101 | (...)... | LogInjectionTest.java:738:94:738:101 | source(...) : Object | LogInjectionTest.java:738:85:738:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:738:94:738:101 | source(...) | user-provided value | -| LogInjectionTest.java:739:70:739:86 | (...)... | LogInjectionTest.java:739:79:739:86 | source(...) : Object | LogInjectionTest.java:739:70:739:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:739:79:739:86 | source(...) | user-provided value | -| LogInjectionTest.java:740:55:740:71 | (...)... | LogInjectionTest.java:740:64:740:71 | source(...) : Object | LogInjectionTest.java:740:55:740:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:740:64:740:71 | source(...) | user-provided value | -| LogInjectionTest.java:741:40:741:56 | (...)... | LogInjectionTest.java:741:49:741:56 | source(...) : Object | LogInjectionTest.java:741:40:741:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:741:49:741:56 | source(...) | user-provided value | -| LogInjectionTest.java:742:25:742:41 | (...)... | LogInjectionTest.java:742:34:742:41 | source(...) : Object | LogInjectionTest.java:742:25:742:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:742:34:742:41 | source(...) | user-provided value | -| LogInjectionTest.java:743:145:743:161 | (...)... | LogInjectionTest.java:743:154:743:161 | source(...) : Object | LogInjectionTest.java:743:145:743:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:743:154:743:161 | source(...) | user-provided value | -| LogInjectionTest.java:744:130:744:146 | (...)... | LogInjectionTest.java:744:139:744:146 | source(...) : Object | LogInjectionTest.java:744:130:744:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:744:139:744:146 | source(...) | user-provided value | -| LogInjectionTest.java:745:115:745:131 | (...)... | LogInjectionTest.java:745:124:745:131 | source(...) : Object | LogInjectionTest.java:745:115:745:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:745:124:745:131 | source(...) | user-provided value | -| LogInjectionTest.java:746:100:746:116 | (...)... | LogInjectionTest.java:746:109:746:116 | source(...) : Object | LogInjectionTest.java:746:100:746:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:746:109:746:116 | source(...) | user-provided value | -| LogInjectionTest.java:747:85:747:101 | (...)... | LogInjectionTest.java:747:94:747:101 | source(...) : Object | LogInjectionTest.java:747:85:747:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:747:94:747:101 | source(...) | user-provided value | -| LogInjectionTest.java:748:70:748:86 | (...)... | LogInjectionTest.java:748:79:748:86 | source(...) : Object | LogInjectionTest.java:748:70:748:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:748:79:748:86 | source(...) | user-provided value | -| LogInjectionTest.java:749:55:749:71 | (...)... | LogInjectionTest.java:749:64:749:71 | source(...) : Object | LogInjectionTest.java:749:55:749:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:749:64:749:71 | source(...) | user-provided value | -| LogInjectionTest.java:750:40:750:56 | (...)... | LogInjectionTest.java:750:49:750:56 | source(...) : Object | LogInjectionTest.java:750:40:750:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:750:49:750:56 | source(...) | user-provided value | -| LogInjectionTest.java:751:25:751:41 | (...)... | LogInjectionTest.java:751:34:751:41 | source(...) : Object | LogInjectionTest.java:751:25:751:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:751:34:751:41 | source(...) | user-provided value | -| LogInjectionTest.java:752:160:752:176 | (...)... | LogInjectionTest.java:752:169:752:176 | source(...) : Object | LogInjectionTest.java:752:160:752:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:752:169:752:176 | source(...) | user-provided value | +| LogInjectionTest.java:717:40:717:62 | new Object[] | LogInjectionTest.java:717:54:717:61 | source(...) : Object | LogInjectionTest.java:717:40:717:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:717:54:717:61 | source(...) | user-provided value | +| LogInjectionTest.java:718:40:718:56 | (...)... | LogInjectionTest.java:718:49:718:56 | source(...) : Object | LogInjectionTest.java:718:40:718:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:718:49:718:56 | source(...) | user-provided value | +| LogInjectionTest.java:719:25:719:41 | (...)... | LogInjectionTest.java:719:34:719:41 | source(...) : Object | LogInjectionTest.java:719:25:719:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:719:34:719:41 | source(...) | user-provided value | +| LogInjectionTest.java:720:55:720:71 | (...)... | LogInjectionTest.java:720:64:720:71 | source(...) : Object | LogInjectionTest.java:720:55:720:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:720:64:720:71 | source(...) | user-provided value | +| LogInjectionTest.java:721:40:721:56 | (...)... | LogInjectionTest.java:721:49:721:56 | source(...) : Object | LogInjectionTest.java:721:40:721:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:721:49:721:56 | source(...) | user-provided value | +| LogInjectionTest.java:722:25:722:41 | (...)... | LogInjectionTest.java:722:34:722:41 | source(...) : Object | LogInjectionTest.java:722:25:722:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:722:34:722:41 | source(...) | user-provided value | +| LogInjectionTest.java:723:70:723:86 | (...)... | LogInjectionTest.java:723:79:723:86 | source(...) : Object | LogInjectionTest.java:723:70:723:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:723:79:723:86 | source(...) | user-provided value | +| LogInjectionTest.java:724:55:724:71 | (...)... | LogInjectionTest.java:724:64:724:71 | source(...) : Object | LogInjectionTest.java:724:55:724:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:724:64:724:71 | source(...) | user-provided value | +| LogInjectionTest.java:725:40:725:56 | (...)... | LogInjectionTest.java:725:49:725:56 | source(...) : Object | LogInjectionTest.java:725:40:725:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:725:49:725:56 | source(...) | user-provided value | +| LogInjectionTest.java:726:25:726:41 | (...)... | LogInjectionTest.java:726:34:726:41 | source(...) : Object | LogInjectionTest.java:726:25:726:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:726:34:726:41 | source(...) | user-provided value | +| LogInjectionTest.java:727:85:727:101 | (...)... | LogInjectionTest.java:727:94:727:101 | source(...) : Object | LogInjectionTest.java:727:85:727:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:727:94:727:101 | source(...) | user-provided value | +| LogInjectionTest.java:728:70:728:86 | (...)... | LogInjectionTest.java:728:79:728:86 | source(...) : Object | LogInjectionTest.java:728:70:728:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:728:79:728:86 | source(...) | user-provided value | +| LogInjectionTest.java:729:55:729:71 | (...)... | LogInjectionTest.java:729:64:729:71 | source(...) : Object | LogInjectionTest.java:729:55:729:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:729:64:729:71 | source(...) | user-provided value | +| LogInjectionTest.java:730:40:730:56 | (...)... | LogInjectionTest.java:730:49:730:56 | source(...) : Object | LogInjectionTest.java:730:40:730:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:730:49:730:56 | source(...) | user-provided value | +| LogInjectionTest.java:731:25:731:41 | (...)... | LogInjectionTest.java:731:34:731:41 | source(...) : Object | LogInjectionTest.java:731:25:731:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:731:34:731:41 | source(...) | user-provided value | +| LogInjectionTest.java:732:100:732:116 | (...)... | LogInjectionTest.java:732:109:732:116 | source(...) : Object | LogInjectionTest.java:732:100:732:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:732:109:732:116 | source(...) | user-provided value | +| LogInjectionTest.java:733:85:733:101 | (...)... | LogInjectionTest.java:733:94:733:101 | source(...) : Object | LogInjectionTest.java:733:85:733:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:733:94:733:101 | source(...) | user-provided value | +| LogInjectionTest.java:734:70:734:86 | (...)... | LogInjectionTest.java:734:79:734:86 | source(...) : Object | LogInjectionTest.java:734:70:734:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:734:79:734:86 | source(...) | user-provided value | +| LogInjectionTest.java:735:55:735:71 | (...)... | LogInjectionTest.java:735:64:735:71 | source(...) : Object | LogInjectionTest.java:735:55:735:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:735:64:735:71 | source(...) | user-provided value | +| LogInjectionTest.java:736:40:736:56 | (...)... | LogInjectionTest.java:736:49:736:56 | source(...) : Object | LogInjectionTest.java:736:40:736:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:736:49:736:56 | source(...) | user-provided value | +| LogInjectionTest.java:737:25:737:41 | (...)... | LogInjectionTest.java:737:34:737:41 | source(...) : Object | LogInjectionTest.java:737:25:737:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:737:34:737:41 | source(...) | user-provided value | +| LogInjectionTest.java:738:115:738:131 | (...)... | LogInjectionTest.java:738:124:738:131 | source(...) : Object | LogInjectionTest.java:738:115:738:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:738:124:738:131 | source(...) | user-provided value | +| LogInjectionTest.java:739:100:739:116 | (...)... | LogInjectionTest.java:739:109:739:116 | source(...) : Object | LogInjectionTest.java:739:100:739:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:739:109:739:116 | source(...) | user-provided value | +| LogInjectionTest.java:740:85:740:101 | (...)... | LogInjectionTest.java:740:94:740:101 | source(...) : Object | LogInjectionTest.java:740:85:740:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:740:94:740:101 | source(...) | user-provided value | +| LogInjectionTest.java:741:70:741:86 | (...)... | LogInjectionTest.java:741:79:741:86 | source(...) : Object | LogInjectionTest.java:741:70:741:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:741:79:741:86 | source(...) | user-provided value | +| LogInjectionTest.java:742:55:742:71 | (...)... | LogInjectionTest.java:742:64:742:71 | source(...) : Object | LogInjectionTest.java:742:55:742:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:742:64:742:71 | source(...) | user-provided value | +| LogInjectionTest.java:743:40:743:56 | (...)... | LogInjectionTest.java:743:49:743:56 | source(...) : Object | LogInjectionTest.java:743:40:743:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:743:49:743:56 | source(...) | user-provided value | +| LogInjectionTest.java:744:25:744:41 | (...)... | LogInjectionTest.java:744:34:744:41 | source(...) : Object | LogInjectionTest.java:744:25:744:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:744:34:744:41 | source(...) | user-provided value | +| LogInjectionTest.java:745:130:745:146 | (...)... | LogInjectionTest.java:745:139:745:146 | source(...) : Object | LogInjectionTest.java:745:130:745:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:745:139:745:146 | source(...) | user-provided value | +| LogInjectionTest.java:746:115:746:131 | (...)... | LogInjectionTest.java:746:124:746:131 | source(...) : Object | LogInjectionTest.java:746:115:746:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:746:124:746:131 | source(...) | user-provided value | +| LogInjectionTest.java:747:100:747:116 | (...)... | LogInjectionTest.java:747:109:747:116 | source(...) : Object | LogInjectionTest.java:747:100:747:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:747:109:747:116 | source(...) | user-provided value | +| LogInjectionTest.java:748:85:748:101 | (...)... | LogInjectionTest.java:748:94:748:101 | source(...) : Object | LogInjectionTest.java:748:85:748:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:748:94:748:101 | source(...) | user-provided value | +| LogInjectionTest.java:749:70:749:86 | (...)... | LogInjectionTest.java:749:79:749:86 | source(...) : Object | LogInjectionTest.java:749:70:749:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:749:79:749:86 | source(...) | user-provided value | +| LogInjectionTest.java:750:55:750:71 | (...)... | LogInjectionTest.java:750:64:750:71 | source(...) : Object | LogInjectionTest.java:750:55:750:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:750:64:750:71 | source(...) | user-provided value | +| LogInjectionTest.java:751:40:751:56 | (...)... | LogInjectionTest.java:751:49:751:56 | source(...) : Object | LogInjectionTest.java:751:40:751:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:751:49:751:56 | source(...) | user-provided value | +| LogInjectionTest.java:752:25:752:41 | (...)... | LogInjectionTest.java:752:34:752:41 | source(...) : Object | LogInjectionTest.java:752:25:752:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:752:34:752:41 | source(...) | user-provided value | | LogInjectionTest.java:753:145:753:161 | (...)... | LogInjectionTest.java:753:154:753:161 | source(...) : Object | LogInjectionTest.java:753:145:753:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:753:154:753:161 | source(...) | user-provided value | | LogInjectionTest.java:754:130:754:146 | (...)... | LogInjectionTest.java:754:139:754:146 | source(...) : Object | LogInjectionTest.java:754:130:754:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:754:139:754:146 | source(...) | user-provided value | | LogInjectionTest.java:755:115:755:131 | (...)... | LogInjectionTest.java:755:124:755:131 | source(...) : Object | LogInjectionTest.java:755:115:755:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:755:124:755:131 | source(...) | user-provided value | @@ -609,67 +601,67 @@ | LogInjectionTest.java:759:55:759:71 | (...)... | LogInjectionTest.java:759:64:759:71 | source(...) : Object | LogInjectionTest.java:759:55:759:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:759:64:759:71 | source(...) | user-provided value | | LogInjectionTest.java:760:40:760:56 | (...)... | LogInjectionTest.java:760:49:760:56 | source(...) : Object | LogInjectionTest.java:760:40:760:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:760:49:760:56 | source(...) | user-provided value | | LogInjectionTest.java:761:25:761:41 | (...)... | LogInjectionTest.java:761:34:761:41 | source(...) : Object | LogInjectionTest.java:761:25:761:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:761:34:761:41 | source(...) | user-provided value | -| LogInjectionTest.java:762:25:762:41 | (...)... | LogInjectionTest.java:762:34:762:41 | source(...) : Object | LogInjectionTest.java:762:25:762:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:762:34:762:41 | source(...) | user-provided value | -| LogInjectionTest.java:763:40:763:61 | (...)... | LogInjectionTest.java:763:54:763:61 | source(...) : Object | LogInjectionTest.java:763:40:763:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:763:54:763:61 | source(...) | user-provided value | -| LogInjectionTest.java:764:25:764:41 | (...)... | LogInjectionTest.java:764:34:764:41 | source(...) : Object | LogInjectionTest.java:764:25:764:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:764:34:764:41 | source(...) | user-provided value | -| LogInjectionTest.java:765:25:765:46 | (...)... | LogInjectionTest.java:765:39:765:46 | source(...) : Object | LogInjectionTest.java:765:25:765:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:765:39:765:46 | source(...) | user-provided value | -| LogInjectionTest.java:766:25:766:46 | (...)... | LogInjectionTest.java:766:39:766:46 | source(...) : Object | LogInjectionTest.java:766:25:766:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:766:39:766:46 | source(...) | user-provided value | -| LogInjectionTest.java:767:38:767:60 | (...)... | LogInjectionTest.java:767:53:767:60 | source(...) : Object | LogInjectionTest.java:767:38:767:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:767:53:767:60 | source(...) | user-provided value | -| LogInjectionTest.java:768:38:768:60 | (...)... | LogInjectionTest.java:768:53:768:60 | source(...) : Object | LogInjectionTest.java:768:38:768:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:768:53:768:60 | source(...) | user-provided value | -| LogInjectionTest.java:769:53:769:75 | (...)... | LogInjectionTest.java:769:68:769:75 | source(...) : Object | LogInjectionTest.java:769:53:769:75 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:769:68:769:75 | source(...) | user-provided value | -| LogInjectionTest.java:770:53:770:75 | (...)... | LogInjectionTest.java:770:68:770:75 | source(...) : Object | LogInjectionTest.java:770:53:770:75 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:770:68:770:75 | source(...) | user-provided value | -| LogInjectionTest.java:771:53:771:70 | (...)... | LogInjectionTest.java:771:63:771:70 | source(...) : Object | LogInjectionTest.java:771:53:771:70 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:771:63:771:70 | source(...) | user-provided value | -| LogInjectionTest.java:772:53:772:78 | (...)... | LogInjectionTest.java:772:71:772:78 | source(...) : Object | LogInjectionTest.java:772:53:772:78 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:772:71:772:78 | source(...) | user-provided value | -| LogInjectionTest.java:773:53:773:78 | (...)... | LogInjectionTest.java:773:71:773:78 | source(...) : Object | LogInjectionTest.java:773:53:773:78 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:773:71:773:78 | source(...) | user-provided value | -| LogInjectionTest.java:774:53:774:60 | source(...) | LogInjectionTest.java:774:53:774:60 | source(...) | LogInjectionTest.java:774:53:774:60 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:774:53:774:60 | source(...) | user-provided value | -| LogInjectionTest.java:775:53:775:69 | (...)... | LogInjectionTest.java:775:62:775:69 | source(...) : Object | LogInjectionTest.java:775:53:775:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:775:62:775:69 | source(...) | user-provided value | -| LogInjectionTest.java:776:53:776:69 | (...)... | LogInjectionTest.java:776:62:776:69 | source(...) : Object | LogInjectionTest.java:776:53:776:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:776:62:776:69 | source(...) | user-provided value | -| LogInjectionTest.java:777:68:777:90 | new Object[] | LogInjectionTest.java:777:82:777:89 | source(...) : Object | LogInjectionTest.java:777:68:777:90 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:777:82:777:89 | source(...) | user-provided value | -| LogInjectionTest.java:778:68:778:84 | (...)... | LogInjectionTest.java:778:77:778:84 | source(...) : Object | LogInjectionTest.java:778:68:778:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:778:77:778:84 | source(...) | user-provided value | -| LogInjectionTest.java:779:53:779:69 | (...)... | LogInjectionTest.java:779:62:779:69 | source(...) : Object | LogInjectionTest.java:779:53:779:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:779:62:779:69 | source(...) | user-provided value | -| LogInjectionTest.java:780:83:780:99 | (...)... | LogInjectionTest.java:780:92:780:99 | source(...) : Object | LogInjectionTest.java:780:83:780:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:780:92:780:99 | source(...) | user-provided value | -| LogInjectionTest.java:781:68:781:84 | (...)... | LogInjectionTest.java:781:77:781:84 | source(...) : Object | LogInjectionTest.java:781:68:781:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:781:77:781:84 | source(...) | user-provided value | -| LogInjectionTest.java:782:53:782:69 | (...)... | LogInjectionTest.java:782:62:782:69 | source(...) : Object | LogInjectionTest.java:782:53:782:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:782:62:782:69 | source(...) | user-provided value | -| LogInjectionTest.java:783:98:783:114 | (...)... | LogInjectionTest.java:783:107:783:114 | source(...) : Object | LogInjectionTest.java:783:98:783:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:783:107:783:114 | source(...) | user-provided value | -| LogInjectionTest.java:784:83:784:99 | (...)... | LogInjectionTest.java:784:92:784:99 | source(...) : Object | LogInjectionTest.java:784:83:784:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:784:92:784:99 | source(...) | user-provided value | -| LogInjectionTest.java:785:68:785:84 | (...)... | LogInjectionTest.java:785:77:785:84 | source(...) : Object | LogInjectionTest.java:785:68:785:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:785:77:785:84 | source(...) | user-provided value | +| LogInjectionTest.java:762:160:762:176 | (...)... | LogInjectionTest.java:762:169:762:176 | source(...) : Object | LogInjectionTest.java:762:160:762:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:762:169:762:176 | source(...) | user-provided value | +| LogInjectionTest.java:763:145:763:161 | (...)... | LogInjectionTest.java:763:154:763:161 | source(...) : Object | LogInjectionTest.java:763:145:763:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:763:154:763:161 | source(...) | user-provided value | +| LogInjectionTest.java:764:130:764:146 | (...)... | LogInjectionTest.java:764:139:764:146 | source(...) : Object | LogInjectionTest.java:764:130:764:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:764:139:764:146 | source(...) | user-provided value | +| LogInjectionTest.java:765:115:765:131 | (...)... | LogInjectionTest.java:765:124:765:131 | source(...) : Object | LogInjectionTest.java:765:115:765:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:765:124:765:131 | source(...) | user-provided value | +| LogInjectionTest.java:766:100:766:116 | (...)... | LogInjectionTest.java:766:109:766:116 | source(...) : Object | LogInjectionTest.java:766:100:766:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:766:109:766:116 | source(...) | user-provided value | +| LogInjectionTest.java:767:85:767:101 | (...)... | LogInjectionTest.java:767:94:767:101 | source(...) : Object | LogInjectionTest.java:767:85:767:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:767:94:767:101 | source(...) | user-provided value | +| LogInjectionTest.java:768:70:768:86 | (...)... | LogInjectionTest.java:768:79:768:86 | source(...) : Object | LogInjectionTest.java:768:70:768:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:768:79:768:86 | source(...) | user-provided value | +| LogInjectionTest.java:769:55:769:71 | (...)... | LogInjectionTest.java:769:64:769:71 | source(...) : Object | LogInjectionTest.java:769:55:769:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:769:64:769:71 | source(...) | user-provided value | +| LogInjectionTest.java:770:40:770:56 | (...)... | LogInjectionTest.java:770:49:770:56 | source(...) : Object | LogInjectionTest.java:770:40:770:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:770:49:770:56 | source(...) | user-provided value | +| LogInjectionTest.java:771:25:771:41 | (...)... | LogInjectionTest.java:771:34:771:41 | source(...) : Object | LogInjectionTest.java:771:25:771:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:771:34:771:41 | source(...) | user-provided value | +| LogInjectionTest.java:772:25:772:41 | (...)... | LogInjectionTest.java:772:34:772:41 | source(...) : Object | LogInjectionTest.java:772:25:772:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:772:34:772:41 | source(...) | user-provided value | +| LogInjectionTest.java:773:40:773:61 | (...)... | LogInjectionTest.java:773:54:773:61 | source(...) : Object | LogInjectionTest.java:773:40:773:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:773:54:773:61 | source(...) | user-provided value | +| LogInjectionTest.java:774:25:774:41 | (...)... | LogInjectionTest.java:774:34:774:41 | source(...) : Object | LogInjectionTest.java:774:25:774:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:774:34:774:41 | source(...) | user-provided value | +| LogInjectionTest.java:775:25:775:46 | (...)... | LogInjectionTest.java:775:39:775:46 | source(...) : Object | LogInjectionTest.java:775:25:775:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:775:39:775:46 | source(...) | user-provided value | +| LogInjectionTest.java:776:25:776:46 | (...)... | LogInjectionTest.java:776:39:776:46 | source(...) : Object | LogInjectionTest.java:776:25:776:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:776:39:776:46 | source(...) | user-provided value | +| LogInjectionTest.java:777:38:777:60 | (...)... | LogInjectionTest.java:777:53:777:60 | source(...) : Object | LogInjectionTest.java:777:38:777:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:777:53:777:60 | source(...) | user-provided value | +| LogInjectionTest.java:778:38:778:60 | (...)... | LogInjectionTest.java:778:53:778:60 | source(...) : Object | LogInjectionTest.java:778:38:778:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:778:53:778:60 | source(...) | user-provided value | +| LogInjectionTest.java:779:53:779:75 | (...)... | LogInjectionTest.java:779:68:779:75 | source(...) : Object | LogInjectionTest.java:779:53:779:75 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:779:68:779:75 | source(...) | user-provided value | +| LogInjectionTest.java:780:53:780:75 | (...)... | LogInjectionTest.java:780:68:780:75 | source(...) : Object | LogInjectionTest.java:780:53:780:75 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:780:68:780:75 | source(...) | user-provided value | +| LogInjectionTest.java:781:53:781:70 | (...)... | LogInjectionTest.java:781:63:781:70 | source(...) : Object | LogInjectionTest.java:781:53:781:70 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:781:63:781:70 | source(...) | user-provided value | +| LogInjectionTest.java:782:53:782:78 | (...)... | LogInjectionTest.java:782:71:782:78 | source(...) : Object | LogInjectionTest.java:782:53:782:78 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:782:71:782:78 | source(...) | user-provided value | +| LogInjectionTest.java:783:53:783:78 | (...)... | LogInjectionTest.java:783:71:783:78 | source(...) : Object | LogInjectionTest.java:783:53:783:78 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:783:71:783:78 | source(...) | user-provided value | +| LogInjectionTest.java:784:53:784:60 | source(...) | LogInjectionTest.java:784:53:784:60 | source(...) | LogInjectionTest.java:784:53:784:60 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:784:53:784:60 | source(...) | user-provided value | +| LogInjectionTest.java:785:53:785:69 | (...)... | LogInjectionTest.java:785:62:785:69 | source(...) : Object | LogInjectionTest.java:785:53:785:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:785:62:785:69 | source(...) | user-provided value | | LogInjectionTest.java:786:53:786:69 | (...)... | LogInjectionTest.java:786:62:786:69 | source(...) : Object | LogInjectionTest.java:786:53:786:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:786:62:786:69 | source(...) | user-provided value | -| LogInjectionTest.java:787:113:787:129 | (...)... | LogInjectionTest.java:787:122:787:129 | source(...) : Object | LogInjectionTest.java:787:113:787:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:787:122:787:129 | source(...) | user-provided value | -| LogInjectionTest.java:788:98:788:114 | (...)... | LogInjectionTest.java:788:107:788:114 | source(...) : Object | LogInjectionTest.java:788:98:788:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:788:107:788:114 | source(...) | user-provided value | -| LogInjectionTest.java:789:83:789:99 | (...)... | LogInjectionTest.java:789:92:789:99 | source(...) : Object | LogInjectionTest.java:789:83:789:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:789:92:789:99 | source(...) | user-provided value | -| LogInjectionTest.java:790:68:790:84 | (...)... | LogInjectionTest.java:790:77:790:84 | source(...) : Object | LogInjectionTest.java:790:68:790:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:790:77:790:84 | source(...) | user-provided value | -| LogInjectionTest.java:791:53:791:69 | (...)... | LogInjectionTest.java:791:62:791:69 | source(...) : Object | LogInjectionTest.java:791:53:791:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:791:62:791:69 | source(...) | user-provided value | -| LogInjectionTest.java:792:128:792:144 | (...)... | LogInjectionTest.java:792:137:792:144 | source(...) : Object | LogInjectionTest.java:792:128:792:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:792:137:792:144 | source(...) | user-provided value | -| LogInjectionTest.java:793:113:793:129 | (...)... | LogInjectionTest.java:793:122:793:129 | source(...) : Object | LogInjectionTest.java:793:113:793:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:793:122:793:129 | source(...) | user-provided value | -| LogInjectionTest.java:794:98:794:114 | (...)... | LogInjectionTest.java:794:107:794:114 | source(...) : Object | LogInjectionTest.java:794:98:794:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:794:107:794:114 | source(...) | user-provided value | -| LogInjectionTest.java:795:83:795:99 | (...)... | LogInjectionTest.java:795:92:795:99 | source(...) : Object | LogInjectionTest.java:795:83:795:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:795:92:795:99 | source(...) | user-provided value | -| LogInjectionTest.java:796:68:796:84 | (...)... | LogInjectionTest.java:796:77:796:84 | source(...) : Object | LogInjectionTest.java:796:68:796:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:796:77:796:84 | source(...) | user-provided value | -| LogInjectionTest.java:797:53:797:69 | (...)... | LogInjectionTest.java:797:62:797:69 | source(...) : Object | LogInjectionTest.java:797:53:797:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:797:62:797:69 | source(...) | user-provided value | -| LogInjectionTest.java:798:143:798:159 | (...)... | LogInjectionTest.java:798:152:798:159 | source(...) : Object | LogInjectionTest.java:798:143:798:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:798:152:798:159 | source(...) | user-provided value | -| LogInjectionTest.java:799:128:799:144 | (...)... | LogInjectionTest.java:799:137:799:144 | source(...) : Object | LogInjectionTest.java:799:128:799:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:799:137:799:144 | source(...) | user-provided value | -| LogInjectionTest.java:800:113:800:129 | (...)... | LogInjectionTest.java:800:122:800:129 | source(...) : Object | LogInjectionTest.java:800:113:800:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:800:122:800:129 | source(...) | user-provided value | -| LogInjectionTest.java:801:98:801:114 | (...)... | LogInjectionTest.java:801:107:801:114 | source(...) : Object | LogInjectionTest.java:801:98:801:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:801:107:801:114 | source(...) | user-provided value | -| LogInjectionTest.java:802:83:802:99 | (...)... | LogInjectionTest.java:802:92:802:99 | source(...) : Object | LogInjectionTest.java:802:83:802:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:802:92:802:99 | source(...) | user-provided value | -| LogInjectionTest.java:803:68:803:84 | (...)... | LogInjectionTest.java:803:77:803:84 | source(...) : Object | LogInjectionTest.java:803:68:803:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:803:77:803:84 | source(...) | user-provided value | -| LogInjectionTest.java:804:53:804:69 | (...)... | LogInjectionTest.java:804:62:804:69 | source(...) : Object | LogInjectionTest.java:804:53:804:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:804:62:804:69 | source(...) | user-provided value | -| LogInjectionTest.java:805:158:805:174 | (...)... | LogInjectionTest.java:805:167:805:174 | source(...) : Object | LogInjectionTest.java:805:158:805:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:805:167:805:174 | source(...) | user-provided value | -| LogInjectionTest.java:806:143:806:159 | (...)... | LogInjectionTest.java:806:152:806:159 | source(...) : Object | LogInjectionTest.java:806:143:806:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:806:152:806:159 | source(...) | user-provided value | -| LogInjectionTest.java:807:128:807:144 | (...)... | LogInjectionTest.java:807:137:807:144 | source(...) : Object | LogInjectionTest.java:807:128:807:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:807:137:807:144 | source(...) | user-provided value | -| LogInjectionTest.java:808:113:808:129 | (...)... | LogInjectionTest.java:808:122:808:129 | source(...) : Object | LogInjectionTest.java:808:113:808:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:808:122:808:129 | source(...) | user-provided value | -| LogInjectionTest.java:809:98:809:114 | (...)... | LogInjectionTest.java:809:107:809:114 | source(...) : Object | LogInjectionTest.java:809:98:809:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:809:107:809:114 | source(...) | user-provided value | -| LogInjectionTest.java:810:83:810:99 | (...)... | LogInjectionTest.java:810:92:810:99 | source(...) : Object | LogInjectionTest.java:810:83:810:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:810:92:810:99 | source(...) | user-provided value | -| LogInjectionTest.java:811:68:811:84 | (...)... | LogInjectionTest.java:811:77:811:84 | source(...) : Object | LogInjectionTest.java:811:68:811:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:811:77:811:84 | source(...) | user-provided value | -| LogInjectionTest.java:812:53:812:69 | (...)... | LogInjectionTest.java:812:62:812:69 | source(...) : Object | LogInjectionTest.java:812:53:812:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:812:62:812:69 | source(...) | user-provided value | -| LogInjectionTest.java:813:173:813:189 | (...)... | LogInjectionTest.java:813:182:813:189 | source(...) : Object | LogInjectionTest.java:813:173:813:189 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:813:182:813:189 | source(...) | user-provided value | -| LogInjectionTest.java:814:158:814:174 | (...)... | LogInjectionTest.java:814:167:814:174 | source(...) : Object | LogInjectionTest.java:814:158:814:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:814:167:814:174 | source(...) | user-provided value | -| LogInjectionTest.java:815:143:815:159 | (...)... | LogInjectionTest.java:815:152:815:159 | source(...) : Object | LogInjectionTest.java:815:143:815:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:815:152:815:159 | source(...) | user-provided value | -| LogInjectionTest.java:816:128:816:144 | (...)... | LogInjectionTest.java:816:137:816:144 | source(...) : Object | LogInjectionTest.java:816:128:816:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:816:137:816:144 | source(...) | user-provided value | -| LogInjectionTest.java:817:113:817:129 | (...)... | LogInjectionTest.java:817:122:817:129 | source(...) : Object | LogInjectionTest.java:817:113:817:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:817:122:817:129 | source(...) | user-provided value | -| LogInjectionTest.java:818:98:818:114 | (...)... | LogInjectionTest.java:818:107:818:114 | source(...) : Object | LogInjectionTest.java:818:98:818:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:818:107:818:114 | source(...) | user-provided value | -| LogInjectionTest.java:819:83:819:99 | (...)... | LogInjectionTest.java:819:92:819:99 | source(...) : Object | LogInjectionTest.java:819:83:819:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:819:92:819:99 | source(...) | user-provided value | -| LogInjectionTest.java:820:68:820:84 | (...)... | LogInjectionTest.java:820:77:820:84 | source(...) : Object | LogInjectionTest.java:820:68:820:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:820:77:820:84 | source(...) | user-provided value | -| LogInjectionTest.java:821:53:821:69 | (...)... | LogInjectionTest.java:821:62:821:69 | source(...) : Object | LogInjectionTest.java:821:53:821:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:821:62:821:69 | source(...) | user-provided value | -| LogInjectionTest.java:822:188:822:204 | (...)... | LogInjectionTest.java:822:197:822:204 | source(...) : Object | LogInjectionTest.java:822:188:822:204 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:822:197:822:204 | source(...) | user-provided value | +| LogInjectionTest.java:787:68:787:90 | new Object[] | LogInjectionTest.java:787:82:787:89 | source(...) : Object | LogInjectionTest.java:787:68:787:90 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:787:82:787:89 | source(...) | user-provided value | +| LogInjectionTest.java:788:68:788:84 | (...)... | LogInjectionTest.java:788:77:788:84 | source(...) : Object | LogInjectionTest.java:788:68:788:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:788:77:788:84 | source(...) | user-provided value | +| LogInjectionTest.java:789:53:789:69 | (...)... | LogInjectionTest.java:789:62:789:69 | source(...) : Object | LogInjectionTest.java:789:53:789:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:789:62:789:69 | source(...) | user-provided value | +| LogInjectionTest.java:790:83:790:99 | (...)... | LogInjectionTest.java:790:92:790:99 | source(...) : Object | LogInjectionTest.java:790:83:790:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:790:92:790:99 | source(...) | user-provided value | +| LogInjectionTest.java:791:68:791:84 | (...)... | LogInjectionTest.java:791:77:791:84 | source(...) : Object | LogInjectionTest.java:791:68:791:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:791:77:791:84 | source(...) | user-provided value | +| LogInjectionTest.java:792:53:792:69 | (...)... | LogInjectionTest.java:792:62:792:69 | source(...) : Object | LogInjectionTest.java:792:53:792:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:792:62:792:69 | source(...) | user-provided value | +| LogInjectionTest.java:793:98:793:114 | (...)... | LogInjectionTest.java:793:107:793:114 | source(...) : Object | LogInjectionTest.java:793:98:793:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:793:107:793:114 | source(...) | user-provided value | +| LogInjectionTest.java:794:83:794:99 | (...)... | LogInjectionTest.java:794:92:794:99 | source(...) : Object | LogInjectionTest.java:794:83:794:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:794:92:794:99 | source(...) | user-provided value | +| LogInjectionTest.java:795:68:795:84 | (...)... | LogInjectionTest.java:795:77:795:84 | source(...) : Object | LogInjectionTest.java:795:68:795:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:795:77:795:84 | source(...) | user-provided value | +| LogInjectionTest.java:796:53:796:69 | (...)... | LogInjectionTest.java:796:62:796:69 | source(...) : Object | LogInjectionTest.java:796:53:796:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:796:62:796:69 | source(...) | user-provided value | +| LogInjectionTest.java:797:113:797:129 | (...)... | LogInjectionTest.java:797:122:797:129 | source(...) : Object | LogInjectionTest.java:797:113:797:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:797:122:797:129 | source(...) | user-provided value | +| LogInjectionTest.java:798:98:798:114 | (...)... | LogInjectionTest.java:798:107:798:114 | source(...) : Object | LogInjectionTest.java:798:98:798:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:798:107:798:114 | source(...) | user-provided value | +| LogInjectionTest.java:799:83:799:99 | (...)... | LogInjectionTest.java:799:92:799:99 | source(...) : Object | LogInjectionTest.java:799:83:799:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:799:92:799:99 | source(...) | user-provided value | +| LogInjectionTest.java:800:68:800:84 | (...)... | LogInjectionTest.java:800:77:800:84 | source(...) : Object | LogInjectionTest.java:800:68:800:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:800:77:800:84 | source(...) | user-provided value | +| LogInjectionTest.java:801:53:801:69 | (...)... | LogInjectionTest.java:801:62:801:69 | source(...) : Object | LogInjectionTest.java:801:53:801:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:801:62:801:69 | source(...) | user-provided value | +| LogInjectionTest.java:802:128:802:144 | (...)... | LogInjectionTest.java:802:137:802:144 | source(...) : Object | LogInjectionTest.java:802:128:802:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:802:137:802:144 | source(...) | user-provided value | +| LogInjectionTest.java:803:113:803:129 | (...)... | LogInjectionTest.java:803:122:803:129 | source(...) : Object | LogInjectionTest.java:803:113:803:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:803:122:803:129 | source(...) | user-provided value | +| LogInjectionTest.java:804:98:804:114 | (...)... | LogInjectionTest.java:804:107:804:114 | source(...) : Object | LogInjectionTest.java:804:98:804:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:804:107:804:114 | source(...) | user-provided value | +| LogInjectionTest.java:805:83:805:99 | (...)... | LogInjectionTest.java:805:92:805:99 | source(...) : Object | LogInjectionTest.java:805:83:805:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:805:92:805:99 | source(...) | user-provided value | +| LogInjectionTest.java:806:68:806:84 | (...)... | LogInjectionTest.java:806:77:806:84 | source(...) : Object | LogInjectionTest.java:806:68:806:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:806:77:806:84 | source(...) | user-provided value | +| LogInjectionTest.java:807:53:807:69 | (...)... | LogInjectionTest.java:807:62:807:69 | source(...) : Object | LogInjectionTest.java:807:53:807:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:807:62:807:69 | source(...) | user-provided value | +| LogInjectionTest.java:808:143:808:159 | (...)... | LogInjectionTest.java:808:152:808:159 | source(...) : Object | LogInjectionTest.java:808:143:808:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:808:152:808:159 | source(...) | user-provided value | +| LogInjectionTest.java:809:128:809:144 | (...)... | LogInjectionTest.java:809:137:809:144 | source(...) : Object | LogInjectionTest.java:809:128:809:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:809:137:809:144 | source(...) | user-provided value | +| LogInjectionTest.java:810:113:810:129 | (...)... | LogInjectionTest.java:810:122:810:129 | source(...) : Object | LogInjectionTest.java:810:113:810:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:810:122:810:129 | source(...) | user-provided value | +| LogInjectionTest.java:811:98:811:114 | (...)... | LogInjectionTest.java:811:107:811:114 | source(...) : Object | LogInjectionTest.java:811:98:811:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:811:107:811:114 | source(...) | user-provided value | +| LogInjectionTest.java:812:83:812:99 | (...)... | LogInjectionTest.java:812:92:812:99 | source(...) : Object | LogInjectionTest.java:812:83:812:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:812:92:812:99 | source(...) | user-provided value | +| LogInjectionTest.java:813:68:813:84 | (...)... | LogInjectionTest.java:813:77:813:84 | source(...) : Object | LogInjectionTest.java:813:68:813:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:813:77:813:84 | source(...) | user-provided value | +| LogInjectionTest.java:814:53:814:69 | (...)... | LogInjectionTest.java:814:62:814:69 | source(...) : Object | LogInjectionTest.java:814:53:814:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:814:62:814:69 | source(...) | user-provided value | +| LogInjectionTest.java:815:158:815:174 | (...)... | LogInjectionTest.java:815:167:815:174 | source(...) : Object | LogInjectionTest.java:815:158:815:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:815:167:815:174 | source(...) | user-provided value | +| LogInjectionTest.java:816:143:816:159 | (...)... | LogInjectionTest.java:816:152:816:159 | source(...) : Object | LogInjectionTest.java:816:143:816:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:816:152:816:159 | source(...) | user-provided value | +| LogInjectionTest.java:817:128:817:144 | (...)... | LogInjectionTest.java:817:137:817:144 | source(...) : Object | LogInjectionTest.java:817:128:817:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:817:137:817:144 | source(...) | user-provided value | +| LogInjectionTest.java:818:113:818:129 | (...)... | LogInjectionTest.java:818:122:818:129 | source(...) : Object | LogInjectionTest.java:818:113:818:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:818:122:818:129 | source(...) | user-provided value | +| LogInjectionTest.java:819:98:819:114 | (...)... | LogInjectionTest.java:819:107:819:114 | source(...) : Object | LogInjectionTest.java:819:98:819:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:819:107:819:114 | source(...) | user-provided value | +| LogInjectionTest.java:820:83:820:99 | (...)... | LogInjectionTest.java:820:92:820:99 | source(...) : Object | LogInjectionTest.java:820:83:820:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:820:92:820:99 | source(...) | user-provided value | +| LogInjectionTest.java:821:68:821:84 | (...)... | LogInjectionTest.java:821:77:821:84 | source(...) : Object | LogInjectionTest.java:821:68:821:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:821:77:821:84 | source(...) | user-provided value | +| LogInjectionTest.java:822:53:822:69 | (...)... | LogInjectionTest.java:822:62:822:69 | source(...) : Object | LogInjectionTest.java:822:53:822:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:822:62:822:69 | source(...) | user-provided value | | LogInjectionTest.java:823:173:823:189 | (...)... | LogInjectionTest.java:823:182:823:189 | source(...) : Object | LogInjectionTest.java:823:173:823:189 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:823:182:823:189 | source(...) | user-provided value | | LogInjectionTest.java:824:158:824:174 | (...)... | LogInjectionTest.java:824:167:824:174 | source(...) : Object | LogInjectionTest.java:824:158:824:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:824:167:824:174 | source(...) | user-provided value | | LogInjectionTest.java:825:143:825:159 | (...)... | LogInjectionTest.java:825:152:825:159 | source(...) : Object | LogInjectionTest.java:825:143:825:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:825:152:825:159 | source(...) | user-provided value | @@ -679,65 +671,65 @@ | LogInjectionTest.java:829:83:829:99 | (...)... | LogInjectionTest.java:829:92:829:99 | source(...) : Object | LogInjectionTest.java:829:83:829:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:829:92:829:99 | source(...) | user-provided value | | LogInjectionTest.java:830:68:830:84 | (...)... | LogInjectionTest.java:830:77:830:84 | source(...) : Object | LogInjectionTest.java:830:68:830:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:830:77:830:84 | source(...) | user-provided value | | LogInjectionTest.java:831:53:831:69 | (...)... | LogInjectionTest.java:831:62:831:69 | source(...) : Object | LogInjectionTest.java:831:53:831:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:831:62:831:69 | source(...) | user-provided value | -| LogInjectionTest.java:832:53:832:69 | (...)... | LogInjectionTest.java:832:62:832:69 | source(...) : Object | LogInjectionTest.java:832:53:832:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:832:62:832:69 | source(...) | user-provided value | -| LogInjectionTest.java:833:68:833:89 | (...)... | LogInjectionTest.java:833:82:833:89 | source(...) : Object | LogInjectionTest.java:833:68:833:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:833:82:833:89 | source(...) | user-provided value | -| LogInjectionTest.java:834:53:834:69 | (...)... | LogInjectionTest.java:834:62:834:69 | source(...) : Object | LogInjectionTest.java:834:53:834:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:834:62:834:69 | source(...) | user-provided value | -| LogInjectionTest.java:835:53:835:74 | (...)... | LogInjectionTest.java:835:67:835:74 | source(...) : Object | LogInjectionTest.java:835:53:835:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:835:67:835:74 | source(...) | user-provided value | -| LogInjectionTest.java:836:53:836:74 | (...)... | LogInjectionTest.java:836:67:836:74 | source(...) : Object | LogInjectionTest.java:836:53:836:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:836:67:836:74 | source(...) | user-provided value | -| LogInjectionTest.java:837:38:837:63 | (...)... | LogInjectionTest.java:837:56:837:63 | source(...) : Object | LogInjectionTest.java:837:38:837:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:837:56:837:63 | source(...) | user-provided value | -| LogInjectionTest.java:838:38:838:63 | (...)... | LogInjectionTest.java:838:56:838:63 | source(...) : Object | LogInjectionTest.java:838:38:838:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:838:56:838:63 | source(...) | user-provided value | -| LogInjectionTest.java:839:38:839:55 | (...)... | LogInjectionTest.java:839:48:839:55 | source(...) : Object | LogInjectionTest.java:839:38:839:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:839:48:839:55 | source(...) | user-provided value | -| LogInjectionTest.java:840:38:840:55 | (...)... | LogInjectionTest.java:840:48:840:55 | source(...) : Object | LogInjectionTest.java:840:38:840:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:840:48:840:55 | source(...) | user-provided value | -| LogInjectionTest.java:841:38:841:45 | source(...) | LogInjectionTest.java:841:38:841:45 | source(...) | LogInjectionTest.java:841:38:841:45 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:841:38:841:45 | source(...) | user-provided value | -| LogInjectionTest.java:842:38:842:45 | source(...) | LogInjectionTest.java:842:38:842:45 | source(...) | LogInjectionTest.java:842:38:842:45 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:842:38:842:45 | source(...) | user-provided value | -| LogInjectionTest.java:843:38:843:54 | (...)... | LogInjectionTest.java:843:47:843:54 | source(...) : Object | LogInjectionTest.java:843:38:843:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:843:47:843:54 | source(...) | user-provided value | -| LogInjectionTest.java:844:38:844:54 | (...)... | LogInjectionTest.java:844:47:844:54 | source(...) : Object | LogInjectionTest.java:844:38:844:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:844:47:844:54 | source(...) | user-provided value | -| LogInjectionTest.java:845:53:845:75 | new Object[] | LogInjectionTest.java:845:67:845:74 | source(...) : Object | LogInjectionTest.java:845:53:845:75 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:845:67:845:74 | source(...) | user-provided value | -| LogInjectionTest.java:846:53:846:69 | (...)... | LogInjectionTest.java:846:62:846:69 | source(...) : Object | LogInjectionTest.java:846:53:846:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:846:62:846:69 | source(...) | user-provided value | -| LogInjectionTest.java:847:38:847:54 | (...)... | LogInjectionTest.java:847:47:847:54 | source(...) : Object | LogInjectionTest.java:847:38:847:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:847:47:847:54 | source(...) | user-provided value | -| LogInjectionTest.java:848:68:848:84 | (...)... | LogInjectionTest.java:848:77:848:84 | source(...) : Object | LogInjectionTest.java:848:68:848:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:848:77:848:84 | source(...) | user-provided value | -| LogInjectionTest.java:849:53:849:69 | (...)... | LogInjectionTest.java:849:62:849:69 | source(...) : Object | LogInjectionTest.java:849:53:849:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:849:62:849:69 | source(...) | user-provided value | -| LogInjectionTest.java:850:38:850:54 | (...)... | LogInjectionTest.java:850:47:850:54 | source(...) : Object | LogInjectionTest.java:850:38:850:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:850:47:850:54 | source(...) | user-provided value | -| LogInjectionTest.java:851:83:851:99 | (...)... | LogInjectionTest.java:851:92:851:99 | source(...) : Object | LogInjectionTest.java:851:83:851:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:851:92:851:99 | source(...) | user-provided value | -| LogInjectionTest.java:852:68:852:84 | (...)... | LogInjectionTest.java:852:77:852:84 | source(...) : Object | LogInjectionTest.java:852:68:852:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:852:77:852:84 | source(...) | user-provided value | -| LogInjectionTest.java:853:53:853:69 | (...)... | LogInjectionTest.java:853:62:853:69 | source(...) : Object | LogInjectionTest.java:853:53:853:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:853:62:853:69 | source(...) | user-provided value | +| LogInjectionTest.java:832:188:832:204 | (...)... | LogInjectionTest.java:832:197:832:204 | source(...) : Object | LogInjectionTest.java:832:188:832:204 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:832:197:832:204 | source(...) | user-provided value | +| LogInjectionTest.java:833:173:833:189 | (...)... | LogInjectionTest.java:833:182:833:189 | source(...) : Object | LogInjectionTest.java:833:173:833:189 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:833:182:833:189 | source(...) | user-provided value | +| LogInjectionTest.java:834:158:834:174 | (...)... | LogInjectionTest.java:834:167:834:174 | source(...) : Object | LogInjectionTest.java:834:158:834:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:834:167:834:174 | source(...) | user-provided value | +| LogInjectionTest.java:835:143:835:159 | (...)... | LogInjectionTest.java:835:152:835:159 | source(...) : Object | LogInjectionTest.java:835:143:835:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:835:152:835:159 | source(...) | user-provided value | +| LogInjectionTest.java:836:128:836:144 | (...)... | LogInjectionTest.java:836:137:836:144 | source(...) : Object | LogInjectionTest.java:836:128:836:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:836:137:836:144 | source(...) | user-provided value | +| LogInjectionTest.java:837:113:837:129 | (...)... | LogInjectionTest.java:837:122:837:129 | source(...) : Object | LogInjectionTest.java:837:113:837:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:837:122:837:129 | source(...) | user-provided value | +| LogInjectionTest.java:838:98:838:114 | (...)... | LogInjectionTest.java:838:107:838:114 | source(...) : Object | LogInjectionTest.java:838:98:838:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:838:107:838:114 | source(...) | user-provided value | +| LogInjectionTest.java:839:83:839:99 | (...)... | LogInjectionTest.java:839:92:839:99 | source(...) : Object | LogInjectionTest.java:839:83:839:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:839:92:839:99 | source(...) | user-provided value | +| LogInjectionTest.java:840:68:840:84 | (...)... | LogInjectionTest.java:840:77:840:84 | source(...) : Object | LogInjectionTest.java:840:68:840:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:840:77:840:84 | source(...) | user-provided value | +| LogInjectionTest.java:841:53:841:69 | (...)... | LogInjectionTest.java:841:62:841:69 | source(...) : Object | LogInjectionTest.java:841:53:841:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:841:62:841:69 | source(...) | user-provided value | +| LogInjectionTest.java:842:53:842:69 | (...)... | LogInjectionTest.java:842:62:842:69 | source(...) : Object | LogInjectionTest.java:842:53:842:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:842:62:842:69 | source(...) | user-provided value | +| LogInjectionTest.java:843:68:843:89 | (...)... | LogInjectionTest.java:843:82:843:89 | source(...) : Object | LogInjectionTest.java:843:68:843:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:843:82:843:89 | source(...) | user-provided value | +| LogInjectionTest.java:844:53:844:69 | (...)... | LogInjectionTest.java:844:62:844:69 | source(...) : Object | LogInjectionTest.java:844:53:844:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:844:62:844:69 | source(...) | user-provided value | +| LogInjectionTest.java:845:53:845:74 | (...)... | LogInjectionTest.java:845:67:845:74 | source(...) : Object | LogInjectionTest.java:845:53:845:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:845:67:845:74 | source(...) | user-provided value | +| LogInjectionTest.java:846:53:846:74 | (...)... | LogInjectionTest.java:846:67:846:74 | source(...) : Object | LogInjectionTest.java:846:53:846:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:846:67:846:74 | source(...) | user-provided value | +| LogInjectionTest.java:847:38:847:63 | (...)... | LogInjectionTest.java:847:56:847:63 | source(...) : Object | LogInjectionTest.java:847:38:847:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:847:56:847:63 | source(...) | user-provided value | +| LogInjectionTest.java:848:38:848:63 | (...)... | LogInjectionTest.java:848:56:848:63 | source(...) : Object | LogInjectionTest.java:848:38:848:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:848:56:848:63 | source(...) | user-provided value | +| LogInjectionTest.java:849:38:849:55 | (...)... | LogInjectionTest.java:849:48:849:55 | source(...) : Object | LogInjectionTest.java:849:38:849:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:849:48:849:55 | source(...) | user-provided value | +| LogInjectionTest.java:850:38:850:55 | (...)... | LogInjectionTest.java:850:48:850:55 | source(...) : Object | LogInjectionTest.java:850:38:850:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:850:48:850:55 | source(...) | user-provided value | +| LogInjectionTest.java:851:38:851:45 | source(...) | LogInjectionTest.java:851:38:851:45 | source(...) | LogInjectionTest.java:851:38:851:45 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:851:38:851:45 | source(...) | user-provided value | +| LogInjectionTest.java:852:38:852:45 | source(...) | LogInjectionTest.java:852:38:852:45 | source(...) | LogInjectionTest.java:852:38:852:45 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:852:38:852:45 | source(...) | user-provided value | +| LogInjectionTest.java:853:38:853:54 | (...)... | LogInjectionTest.java:853:47:853:54 | source(...) : Object | LogInjectionTest.java:853:38:853:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:853:47:853:54 | source(...) | user-provided value | | LogInjectionTest.java:854:38:854:54 | (...)... | LogInjectionTest.java:854:47:854:54 | source(...) : Object | LogInjectionTest.java:854:38:854:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:854:47:854:54 | source(...) | user-provided value | -| LogInjectionTest.java:855:98:855:114 | (...)... | LogInjectionTest.java:855:107:855:114 | source(...) : Object | LogInjectionTest.java:855:98:855:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:855:107:855:114 | source(...) | user-provided value | -| LogInjectionTest.java:856:83:856:99 | (...)... | LogInjectionTest.java:856:92:856:99 | source(...) : Object | LogInjectionTest.java:856:83:856:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:856:92:856:99 | source(...) | user-provided value | -| LogInjectionTest.java:857:68:857:84 | (...)... | LogInjectionTest.java:857:77:857:84 | source(...) : Object | LogInjectionTest.java:857:68:857:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:857:77:857:84 | source(...) | user-provided value | -| LogInjectionTest.java:858:53:858:69 | (...)... | LogInjectionTest.java:858:62:858:69 | source(...) : Object | LogInjectionTest.java:858:53:858:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:858:62:858:69 | source(...) | user-provided value | -| LogInjectionTest.java:859:38:859:54 | (...)... | LogInjectionTest.java:859:47:859:54 | source(...) : Object | LogInjectionTest.java:859:38:859:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:859:47:859:54 | source(...) | user-provided value | -| LogInjectionTest.java:860:113:860:129 | (...)... | LogInjectionTest.java:860:122:860:129 | source(...) : Object | LogInjectionTest.java:860:113:860:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:860:122:860:129 | source(...) | user-provided value | -| LogInjectionTest.java:861:98:861:114 | (...)... | LogInjectionTest.java:861:107:861:114 | source(...) : Object | LogInjectionTest.java:861:98:861:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:861:107:861:114 | source(...) | user-provided value | -| LogInjectionTest.java:862:83:862:99 | (...)... | LogInjectionTest.java:862:92:862:99 | source(...) : Object | LogInjectionTest.java:862:83:862:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:862:92:862:99 | source(...) | user-provided value | -| LogInjectionTest.java:863:68:863:84 | (...)... | LogInjectionTest.java:863:77:863:84 | source(...) : Object | LogInjectionTest.java:863:68:863:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:863:77:863:84 | source(...) | user-provided value | -| LogInjectionTest.java:864:53:864:69 | (...)... | LogInjectionTest.java:864:62:864:69 | source(...) : Object | LogInjectionTest.java:864:53:864:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:864:62:864:69 | source(...) | user-provided value | -| LogInjectionTest.java:865:38:865:54 | (...)... | LogInjectionTest.java:865:47:865:54 | source(...) : Object | LogInjectionTest.java:865:38:865:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:865:47:865:54 | source(...) | user-provided value | -| LogInjectionTest.java:866:128:866:144 | (...)... | LogInjectionTest.java:866:137:866:144 | source(...) : Object | LogInjectionTest.java:866:128:866:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:866:137:866:144 | source(...) | user-provided value | -| LogInjectionTest.java:867:113:867:129 | (...)... | LogInjectionTest.java:867:122:867:129 | source(...) : Object | LogInjectionTest.java:867:113:867:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:867:122:867:129 | source(...) | user-provided value | -| LogInjectionTest.java:868:98:868:114 | (...)... | LogInjectionTest.java:868:107:868:114 | source(...) : Object | LogInjectionTest.java:868:98:868:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:868:107:868:114 | source(...) | user-provided value | -| LogInjectionTest.java:869:83:869:99 | (...)... | LogInjectionTest.java:869:92:869:99 | source(...) : Object | LogInjectionTest.java:869:83:869:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:869:92:869:99 | source(...) | user-provided value | -| LogInjectionTest.java:870:68:870:84 | (...)... | LogInjectionTest.java:870:77:870:84 | source(...) : Object | LogInjectionTest.java:870:68:870:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:870:77:870:84 | source(...) | user-provided value | -| LogInjectionTest.java:871:53:871:69 | (...)... | LogInjectionTest.java:871:62:871:69 | source(...) : Object | LogInjectionTest.java:871:53:871:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:871:62:871:69 | source(...) | user-provided value | -| LogInjectionTest.java:872:38:872:54 | (...)... | LogInjectionTest.java:872:47:872:54 | source(...) : Object | LogInjectionTest.java:872:38:872:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:872:47:872:54 | source(...) | user-provided value | -| LogInjectionTest.java:873:143:873:159 | (...)... | LogInjectionTest.java:873:152:873:159 | source(...) : Object | LogInjectionTest.java:873:143:873:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:873:152:873:159 | source(...) | user-provided value | -| LogInjectionTest.java:874:128:874:144 | (...)... | LogInjectionTest.java:874:137:874:144 | source(...) : Object | LogInjectionTest.java:874:128:874:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:874:137:874:144 | source(...) | user-provided value | -| LogInjectionTest.java:875:113:875:129 | (...)... | LogInjectionTest.java:875:122:875:129 | source(...) : Object | LogInjectionTest.java:875:113:875:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:875:122:875:129 | source(...) | user-provided value | -| LogInjectionTest.java:876:98:876:114 | (...)... | LogInjectionTest.java:876:107:876:114 | source(...) : Object | LogInjectionTest.java:876:98:876:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:876:107:876:114 | source(...) | user-provided value | -| LogInjectionTest.java:877:83:877:99 | (...)... | LogInjectionTest.java:877:92:877:99 | source(...) : Object | LogInjectionTest.java:877:83:877:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:877:92:877:99 | source(...) | user-provided value | -| LogInjectionTest.java:878:68:878:84 | (...)... | LogInjectionTest.java:878:77:878:84 | source(...) : Object | LogInjectionTest.java:878:68:878:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:878:77:878:84 | source(...) | user-provided value | -| LogInjectionTest.java:879:53:879:69 | (...)... | LogInjectionTest.java:879:62:879:69 | source(...) : Object | LogInjectionTest.java:879:53:879:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:879:62:879:69 | source(...) | user-provided value | -| LogInjectionTest.java:880:38:880:54 | (...)... | LogInjectionTest.java:880:47:880:54 | source(...) : Object | LogInjectionTest.java:880:38:880:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:880:47:880:54 | source(...) | user-provided value | -| LogInjectionTest.java:881:158:881:174 | (...)... | LogInjectionTest.java:881:167:881:174 | source(...) : Object | LogInjectionTest.java:881:158:881:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:881:167:881:174 | source(...) | user-provided value | -| LogInjectionTest.java:882:143:882:159 | (...)... | LogInjectionTest.java:882:152:882:159 | source(...) : Object | LogInjectionTest.java:882:143:882:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:882:152:882:159 | source(...) | user-provided value | -| LogInjectionTest.java:883:128:883:144 | (...)... | LogInjectionTest.java:883:137:883:144 | source(...) : Object | LogInjectionTest.java:883:128:883:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:883:137:883:144 | source(...) | user-provided value | -| LogInjectionTest.java:884:113:884:129 | (...)... | LogInjectionTest.java:884:122:884:129 | source(...) : Object | LogInjectionTest.java:884:113:884:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:884:122:884:129 | source(...) | user-provided value | -| LogInjectionTest.java:885:98:885:114 | (...)... | LogInjectionTest.java:885:107:885:114 | source(...) : Object | LogInjectionTest.java:885:98:885:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:885:107:885:114 | source(...) | user-provided value | -| LogInjectionTest.java:886:83:886:99 | (...)... | LogInjectionTest.java:886:92:886:99 | source(...) : Object | LogInjectionTest.java:886:83:886:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:886:92:886:99 | source(...) | user-provided value | -| LogInjectionTest.java:887:68:887:84 | (...)... | LogInjectionTest.java:887:77:887:84 | source(...) : Object | LogInjectionTest.java:887:68:887:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:887:77:887:84 | source(...) | user-provided value | -| LogInjectionTest.java:888:53:888:69 | (...)... | LogInjectionTest.java:888:62:888:69 | source(...) : Object | LogInjectionTest.java:888:53:888:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:888:62:888:69 | source(...) | user-provided value | -| LogInjectionTest.java:889:38:889:54 | (...)... | LogInjectionTest.java:889:47:889:54 | source(...) : Object | LogInjectionTest.java:889:38:889:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:889:47:889:54 | source(...) | user-provided value | -| LogInjectionTest.java:890:173:890:189 | (...)... | LogInjectionTest.java:890:182:890:189 | source(...) : Object | LogInjectionTest.java:890:173:890:189 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:890:182:890:189 | source(...) | user-provided value | +| LogInjectionTest.java:855:53:855:75 | new Object[] | LogInjectionTest.java:855:67:855:74 | source(...) : Object | LogInjectionTest.java:855:53:855:75 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:855:67:855:74 | source(...) | user-provided value | +| LogInjectionTest.java:856:53:856:69 | (...)... | LogInjectionTest.java:856:62:856:69 | source(...) : Object | LogInjectionTest.java:856:53:856:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:856:62:856:69 | source(...) | user-provided value | +| LogInjectionTest.java:857:38:857:54 | (...)... | LogInjectionTest.java:857:47:857:54 | source(...) : Object | LogInjectionTest.java:857:38:857:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:857:47:857:54 | source(...) | user-provided value | +| LogInjectionTest.java:858:68:858:84 | (...)... | LogInjectionTest.java:858:77:858:84 | source(...) : Object | LogInjectionTest.java:858:68:858:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:858:77:858:84 | source(...) | user-provided value | +| LogInjectionTest.java:859:53:859:69 | (...)... | LogInjectionTest.java:859:62:859:69 | source(...) : Object | LogInjectionTest.java:859:53:859:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:859:62:859:69 | source(...) | user-provided value | +| LogInjectionTest.java:860:38:860:54 | (...)... | LogInjectionTest.java:860:47:860:54 | source(...) : Object | LogInjectionTest.java:860:38:860:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:860:47:860:54 | source(...) | user-provided value | +| LogInjectionTest.java:861:83:861:99 | (...)... | LogInjectionTest.java:861:92:861:99 | source(...) : Object | LogInjectionTest.java:861:83:861:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:861:92:861:99 | source(...) | user-provided value | +| LogInjectionTest.java:862:68:862:84 | (...)... | LogInjectionTest.java:862:77:862:84 | source(...) : Object | LogInjectionTest.java:862:68:862:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:862:77:862:84 | source(...) | user-provided value | +| LogInjectionTest.java:863:53:863:69 | (...)... | LogInjectionTest.java:863:62:863:69 | source(...) : Object | LogInjectionTest.java:863:53:863:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:863:62:863:69 | source(...) | user-provided value | +| LogInjectionTest.java:864:38:864:54 | (...)... | LogInjectionTest.java:864:47:864:54 | source(...) : Object | LogInjectionTest.java:864:38:864:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:864:47:864:54 | source(...) | user-provided value | +| LogInjectionTest.java:865:98:865:114 | (...)... | LogInjectionTest.java:865:107:865:114 | source(...) : Object | LogInjectionTest.java:865:98:865:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:865:107:865:114 | source(...) | user-provided value | +| LogInjectionTest.java:866:83:866:99 | (...)... | LogInjectionTest.java:866:92:866:99 | source(...) : Object | LogInjectionTest.java:866:83:866:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:866:92:866:99 | source(...) | user-provided value | +| LogInjectionTest.java:867:68:867:84 | (...)... | LogInjectionTest.java:867:77:867:84 | source(...) : Object | LogInjectionTest.java:867:68:867:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:867:77:867:84 | source(...) | user-provided value | +| LogInjectionTest.java:868:53:868:69 | (...)... | LogInjectionTest.java:868:62:868:69 | source(...) : Object | LogInjectionTest.java:868:53:868:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:868:62:868:69 | source(...) | user-provided value | +| LogInjectionTest.java:869:38:869:54 | (...)... | LogInjectionTest.java:869:47:869:54 | source(...) : Object | LogInjectionTest.java:869:38:869:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:869:47:869:54 | source(...) | user-provided value | +| LogInjectionTest.java:870:113:870:129 | (...)... | LogInjectionTest.java:870:122:870:129 | source(...) : Object | LogInjectionTest.java:870:113:870:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:870:122:870:129 | source(...) | user-provided value | +| LogInjectionTest.java:871:98:871:114 | (...)... | LogInjectionTest.java:871:107:871:114 | source(...) : Object | LogInjectionTest.java:871:98:871:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:871:107:871:114 | source(...) | user-provided value | +| LogInjectionTest.java:872:83:872:99 | (...)... | LogInjectionTest.java:872:92:872:99 | source(...) : Object | LogInjectionTest.java:872:83:872:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:872:92:872:99 | source(...) | user-provided value | +| LogInjectionTest.java:873:68:873:84 | (...)... | LogInjectionTest.java:873:77:873:84 | source(...) : Object | LogInjectionTest.java:873:68:873:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:873:77:873:84 | source(...) | user-provided value | +| LogInjectionTest.java:874:53:874:69 | (...)... | LogInjectionTest.java:874:62:874:69 | source(...) : Object | LogInjectionTest.java:874:53:874:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:874:62:874:69 | source(...) | user-provided value | +| LogInjectionTest.java:875:38:875:54 | (...)... | LogInjectionTest.java:875:47:875:54 | source(...) : Object | LogInjectionTest.java:875:38:875:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:875:47:875:54 | source(...) | user-provided value | +| LogInjectionTest.java:876:128:876:144 | (...)... | LogInjectionTest.java:876:137:876:144 | source(...) : Object | LogInjectionTest.java:876:128:876:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:876:137:876:144 | source(...) | user-provided value | +| LogInjectionTest.java:877:113:877:129 | (...)... | LogInjectionTest.java:877:122:877:129 | source(...) : Object | LogInjectionTest.java:877:113:877:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:877:122:877:129 | source(...) | user-provided value | +| LogInjectionTest.java:878:98:878:114 | (...)... | LogInjectionTest.java:878:107:878:114 | source(...) : Object | LogInjectionTest.java:878:98:878:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:878:107:878:114 | source(...) | user-provided value | +| LogInjectionTest.java:879:83:879:99 | (...)... | LogInjectionTest.java:879:92:879:99 | source(...) : Object | LogInjectionTest.java:879:83:879:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:879:92:879:99 | source(...) | user-provided value | +| LogInjectionTest.java:880:68:880:84 | (...)... | LogInjectionTest.java:880:77:880:84 | source(...) : Object | LogInjectionTest.java:880:68:880:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:880:77:880:84 | source(...) | user-provided value | +| LogInjectionTest.java:881:53:881:69 | (...)... | LogInjectionTest.java:881:62:881:69 | source(...) : Object | LogInjectionTest.java:881:53:881:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:881:62:881:69 | source(...) | user-provided value | +| LogInjectionTest.java:882:38:882:54 | (...)... | LogInjectionTest.java:882:47:882:54 | source(...) : Object | LogInjectionTest.java:882:38:882:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:882:47:882:54 | source(...) | user-provided value | +| LogInjectionTest.java:883:143:883:159 | (...)... | LogInjectionTest.java:883:152:883:159 | source(...) : Object | LogInjectionTest.java:883:143:883:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:883:152:883:159 | source(...) | user-provided value | +| LogInjectionTest.java:884:128:884:144 | (...)... | LogInjectionTest.java:884:137:884:144 | source(...) : Object | LogInjectionTest.java:884:128:884:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:884:137:884:144 | source(...) | user-provided value | +| LogInjectionTest.java:885:113:885:129 | (...)... | LogInjectionTest.java:885:122:885:129 | source(...) : Object | LogInjectionTest.java:885:113:885:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:885:122:885:129 | source(...) | user-provided value | +| LogInjectionTest.java:886:98:886:114 | (...)... | LogInjectionTest.java:886:107:886:114 | source(...) : Object | LogInjectionTest.java:886:98:886:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:886:107:886:114 | source(...) | user-provided value | +| LogInjectionTest.java:887:83:887:99 | (...)... | LogInjectionTest.java:887:92:887:99 | source(...) : Object | LogInjectionTest.java:887:83:887:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:887:92:887:99 | source(...) | user-provided value | +| LogInjectionTest.java:888:68:888:84 | (...)... | LogInjectionTest.java:888:77:888:84 | source(...) : Object | LogInjectionTest.java:888:68:888:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:888:77:888:84 | source(...) | user-provided value | +| LogInjectionTest.java:889:53:889:69 | (...)... | LogInjectionTest.java:889:62:889:69 | source(...) : Object | LogInjectionTest.java:889:53:889:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:889:62:889:69 | source(...) | user-provided value | +| LogInjectionTest.java:890:38:890:54 | (...)... | LogInjectionTest.java:890:47:890:54 | source(...) : Object | LogInjectionTest.java:890:38:890:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:890:47:890:54 | source(...) | user-provided value | | LogInjectionTest.java:891:158:891:174 | (...)... | LogInjectionTest.java:891:167:891:174 | source(...) : Object | LogInjectionTest.java:891:158:891:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:891:167:891:174 | source(...) | user-provided value | | LogInjectionTest.java:892:143:892:159 | (...)... | LogInjectionTest.java:892:152:892:159 | source(...) : Object | LogInjectionTest.java:892:143:892:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:892:152:892:159 | source(...) | user-provided value | | LogInjectionTest.java:893:128:893:144 | (...)... | LogInjectionTest.java:893:137:893:144 | source(...) : Object | LogInjectionTest.java:893:128:893:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:893:137:893:144 | source(...) | user-provided value | @@ -747,67 +739,67 @@ | LogInjectionTest.java:897:68:897:84 | (...)... | LogInjectionTest.java:897:77:897:84 | source(...) : Object | LogInjectionTest.java:897:68:897:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:897:77:897:84 | source(...) | user-provided value | | LogInjectionTest.java:898:53:898:69 | (...)... | LogInjectionTest.java:898:62:898:69 | source(...) : Object | LogInjectionTest.java:898:53:898:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:898:62:898:69 | source(...) | user-provided value | | LogInjectionTest.java:899:38:899:54 | (...)... | LogInjectionTest.java:899:47:899:54 | source(...) : Object | LogInjectionTest.java:899:38:899:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:899:47:899:54 | source(...) | user-provided value | -| LogInjectionTest.java:900:38:900:54 | (...)... | LogInjectionTest.java:900:47:900:54 | source(...) : Object | LogInjectionTest.java:900:38:900:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:900:47:900:54 | source(...) | user-provided value | -| LogInjectionTest.java:901:53:901:74 | (...)... | LogInjectionTest.java:901:67:901:74 | source(...) : Object | LogInjectionTest.java:901:53:901:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:901:67:901:74 | source(...) | user-provided value | -| LogInjectionTest.java:902:38:902:54 | (...)... | LogInjectionTest.java:902:47:902:54 | source(...) : Object | LogInjectionTest.java:902:38:902:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:902:47:902:54 | source(...) | user-provided value | -| LogInjectionTest.java:903:38:903:59 | (...)... | LogInjectionTest.java:903:52:903:59 | source(...) : Object | LogInjectionTest.java:903:38:903:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:903:52:903:59 | source(...) | user-provided value | -| LogInjectionTest.java:904:38:904:59 | (...)... | LogInjectionTest.java:904:52:904:59 | source(...) : Object | LogInjectionTest.java:904:38:904:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:904:52:904:59 | source(...) | user-provided value | -| LogInjectionTest.java:905:26:905:48 | (...)... | LogInjectionTest.java:905:41:905:48 | source(...) : Object | LogInjectionTest.java:905:26:905:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:905:41:905:48 | source(...) | user-provided value | -| LogInjectionTest.java:906:26:906:48 | (...)... | LogInjectionTest.java:906:41:906:48 | source(...) : Object | LogInjectionTest.java:906:26:906:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:906:41:906:48 | source(...) | user-provided value | -| LogInjectionTest.java:907:41:907:63 | (...)... | LogInjectionTest.java:907:56:907:63 | source(...) : Object | LogInjectionTest.java:907:41:907:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:907:56:907:63 | source(...) | user-provided value | -| LogInjectionTest.java:908:41:908:63 | (...)... | LogInjectionTest.java:908:56:908:63 | source(...) : Object | LogInjectionTest.java:908:41:908:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:908:56:908:63 | source(...) | user-provided value | -| LogInjectionTest.java:909:41:909:58 | (...)... | LogInjectionTest.java:909:51:909:58 | source(...) : Object | LogInjectionTest.java:909:41:909:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:909:51:909:58 | source(...) | user-provided value | -| LogInjectionTest.java:910:41:910:66 | (...)... | LogInjectionTest.java:910:59:910:66 | source(...) : Object | LogInjectionTest.java:910:41:910:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:910:59:910:66 | source(...) | user-provided value | -| LogInjectionTest.java:911:41:911:66 | (...)... | LogInjectionTest.java:911:59:911:66 | source(...) : Object | LogInjectionTest.java:911:41:911:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:911:59:911:66 | source(...) | user-provided value | -| LogInjectionTest.java:912:41:912:48 | source(...) | LogInjectionTest.java:912:41:912:48 | source(...) | LogInjectionTest.java:912:41:912:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:912:41:912:48 | source(...) | user-provided value | -| LogInjectionTest.java:913:41:913:57 | (...)... | LogInjectionTest.java:913:50:913:57 | source(...) : Object | LogInjectionTest.java:913:41:913:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:913:50:913:57 | source(...) | user-provided value | -| LogInjectionTest.java:914:41:914:57 | (...)... | LogInjectionTest.java:914:50:914:57 | source(...) : Object | LogInjectionTest.java:914:41:914:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:914:50:914:57 | source(...) | user-provided value | -| LogInjectionTest.java:915:56:915:78 | new Object[] | LogInjectionTest.java:915:70:915:77 | source(...) : Object | LogInjectionTest.java:915:56:915:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:915:70:915:77 | source(...) | user-provided value | -| LogInjectionTest.java:916:56:916:72 | (...)... | LogInjectionTest.java:916:65:916:72 | source(...) : Object | LogInjectionTest.java:916:56:916:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:916:65:916:72 | source(...) | user-provided value | -| LogInjectionTest.java:917:41:917:57 | (...)... | LogInjectionTest.java:917:50:917:57 | source(...) : Object | LogInjectionTest.java:917:41:917:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:917:50:917:57 | source(...) | user-provided value | -| LogInjectionTest.java:918:71:918:87 | (...)... | LogInjectionTest.java:918:80:918:87 | source(...) : Object | LogInjectionTest.java:918:71:918:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:918:80:918:87 | source(...) | user-provided value | -| LogInjectionTest.java:919:56:919:72 | (...)... | LogInjectionTest.java:919:65:919:72 | source(...) : Object | LogInjectionTest.java:919:56:919:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:919:65:919:72 | source(...) | user-provided value | -| LogInjectionTest.java:920:41:920:57 | (...)... | LogInjectionTest.java:920:50:920:57 | source(...) : Object | LogInjectionTest.java:920:41:920:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:920:50:920:57 | source(...) | user-provided value | -| LogInjectionTest.java:921:86:921:102 | (...)... | LogInjectionTest.java:921:95:921:102 | source(...) : Object | LogInjectionTest.java:921:86:921:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:921:95:921:102 | source(...) | user-provided value | -| LogInjectionTest.java:922:71:922:87 | (...)... | LogInjectionTest.java:922:80:922:87 | source(...) : Object | LogInjectionTest.java:922:71:922:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:922:80:922:87 | source(...) | user-provided value | -| LogInjectionTest.java:923:56:923:72 | (...)... | LogInjectionTest.java:923:65:923:72 | source(...) : Object | LogInjectionTest.java:923:56:923:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:923:65:923:72 | source(...) | user-provided value | +| LogInjectionTest.java:900:173:900:189 | (...)... | LogInjectionTest.java:900:182:900:189 | source(...) : Object | LogInjectionTest.java:900:173:900:189 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:900:182:900:189 | source(...) | user-provided value | +| LogInjectionTest.java:901:158:901:174 | (...)... | LogInjectionTest.java:901:167:901:174 | source(...) : Object | LogInjectionTest.java:901:158:901:174 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:901:167:901:174 | source(...) | user-provided value | +| LogInjectionTest.java:902:143:902:159 | (...)... | LogInjectionTest.java:902:152:902:159 | source(...) : Object | LogInjectionTest.java:902:143:902:159 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:902:152:902:159 | source(...) | user-provided value | +| LogInjectionTest.java:903:128:903:144 | (...)... | LogInjectionTest.java:903:137:903:144 | source(...) : Object | LogInjectionTest.java:903:128:903:144 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:903:137:903:144 | source(...) | user-provided value | +| LogInjectionTest.java:904:113:904:129 | (...)... | LogInjectionTest.java:904:122:904:129 | source(...) : Object | LogInjectionTest.java:904:113:904:129 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:904:122:904:129 | source(...) | user-provided value | +| LogInjectionTest.java:905:98:905:114 | (...)... | LogInjectionTest.java:905:107:905:114 | source(...) : Object | LogInjectionTest.java:905:98:905:114 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:905:107:905:114 | source(...) | user-provided value | +| LogInjectionTest.java:906:83:906:99 | (...)... | LogInjectionTest.java:906:92:906:99 | source(...) : Object | LogInjectionTest.java:906:83:906:99 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:906:92:906:99 | source(...) | user-provided value | +| LogInjectionTest.java:907:68:907:84 | (...)... | LogInjectionTest.java:907:77:907:84 | source(...) : Object | LogInjectionTest.java:907:68:907:84 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:907:77:907:84 | source(...) | user-provided value | +| LogInjectionTest.java:908:53:908:69 | (...)... | LogInjectionTest.java:908:62:908:69 | source(...) : Object | LogInjectionTest.java:908:53:908:69 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:908:62:908:69 | source(...) | user-provided value | +| LogInjectionTest.java:909:38:909:54 | (...)... | LogInjectionTest.java:909:47:909:54 | source(...) : Object | LogInjectionTest.java:909:38:909:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:909:47:909:54 | source(...) | user-provided value | +| LogInjectionTest.java:910:38:910:54 | (...)... | LogInjectionTest.java:910:47:910:54 | source(...) : Object | LogInjectionTest.java:910:38:910:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:910:47:910:54 | source(...) | user-provided value | +| LogInjectionTest.java:911:53:911:74 | (...)... | LogInjectionTest.java:911:67:911:74 | source(...) : Object | LogInjectionTest.java:911:53:911:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:911:67:911:74 | source(...) | user-provided value | +| LogInjectionTest.java:912:38:912:54 | (...)... | LogInjectionTest.java:912:47:912:54 | source(...) : Object | LogInjectionTest.java:912:38:912:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:912:47:912:54 | source(...) | user-provided value | +| LogInjectionTest.java:913:38:913:59 | (...)... | LogInjectionTest.java:913:52:913:59 | source(...) : Object | LogInjectionTest.java:913:38:913:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:913:52:913:59 | source(...) | user-provided value | +| LogInjectionTest.java:914:38:914:59 | (...)... | LogInjectionTest.java:914:52:914:59 | source(...) : Object | LogInjectionTest.java:914:38:914:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:914:52:914:59 | source(...) | user-provided value | +| LogInjectionTest.java:915:26:915:48 | (...)... | LogInjectionTest.java:915:41:915:48 | source(...) : Object | LogInjectionTest.java:915:26:915:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:915:41:915:48 | source(...) | user-provided value | +| LogInjectionTest.java:916:26:916:48 | (...)... | LogInjectionTest.java:916:41:916:48 | source(...) : Object | LogInjectionTest.java:916:26:916:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:916:41:916:48 | source(...) | user-provided value | +| LogInjectionTest.java:917:41:917:63 | (...)... | LogInjectionTest.java:917:56:917:63 | source(...) : Object | LogInjectionTest.java:917:41:917:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:917:56:917:63 | source(...) | user-provided value | +| LogInjectionTest.java:918:41:918:63 | (...)... | LogInjectionTest.java:918:56:918:63 | source(...) : Object | LogInjectionTest.java:918:41:918:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:918:56:918:63 | source(...) | user-provided value | +| LogInjectionTest.java:919:41:919:58 | (...)... | LogInjectionTest.java:919:51:919:58 | source(...) : Object | LogInjectionTest.java:919:41:919:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:919:51:919:58 | source(...) | user-provided value | +| LogInjectionTest.java:920:41:920:66 | (...)... | LogInjectionTest.java:920:59:920:66 | source(...) : Object | LogInjectionTest.java:920:41:920:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:920:59:920:66 | source(...) | user-provided value | +| LogInjectionTest.java:921:41:921:66 | (...)... | LogInjectionTest.java:921:59:921:66 | source(...) : Object | LogInjectionTest.java:921:41:921:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:921:59:921:66 | source(...) | user-provided value | +| LogInjectionTest.java:922:41:922:48 | source(...) | LogInjectionTest.java:922:41:922:48 | source(...) | LogInjectionTest.java:922:41:922:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:922:41:922:48 | source(...) | user-provided value | +| LogInjectionTest.java:923:41:923:57 | (...)... | LogInjectionTest.java:923:50:923:57 | source(...) : Object | LogInjectionTest.java:923:41:923:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:923:50:923:57 | source(...) | user-provided value | | LogInjectionTest.java:924:41:924:57 | (...)... | LogInjectionTest.java:924:50:924:57 | source(...) : Object | LogInjectionTest.java:924:41:924:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:924:50:924:57 | source(...) | user-provided value | -| LogInjectionTest.java:925:101:925:117 | (...)... | LogInjectionTest.java:925:110:925:117 | source(...) : Object | LogInjectionTest.java:925:101:925:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:925:110:925:117 | source(...) | user-provided value | -| LogInjectionTest.java:926:86:926:102 | (...)... | LogInjectionTest.java:926:95:926:102 | source(...) : Object | LogInjectionTest.java:926:86:926:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:926:95:926:102 | source(...) | user-provided value | -| LogInjectionTest.java:927:71:927:87 | (...)... | LogInjectionTest.java:927:80:927:87 | source(...) : Object | LogInjectionTest.java:927:71:927:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:927:80:927:87 | source(...) | user-provided value | -| LogInjectionTest.java:928:56:928:72 | (...)... | LogInjectionTest.java:928:65:928:72 | source(...) : Object | LogInjectionTest.java:928:56:928:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:928:65:928:72 | source(...) | user-provided value | -| LogInjectionTest.java:929:41:929:57 | (...)... | LogInjectionTest.java:929:50:929:57 | source(...) : Object | LogInjectionTest.java:929:41:929:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:929:50:929:57 | source(...) | user-provided value | -| LogInjectionTest.java:930:116:930:132 | (...)... | LogInjectionTest.java:930:125:930:132 | source(...) : Object | LogInjectionTest.java:930:116:930:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:930:125:930:132 | source(...) | user-provided value | -| LogInjectionTest.java:931:101:931:117 | (...)... | LogInjectionTest.java:931:110:931:117 | source(...) : Object | LogInjectionTest.java:931:101:931:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:931:110:931:117 | source(...) | user-provided value | -| LogInjectionTest.java:932:86:932:102 | (...)... | LogInjectionTest.java:932:95:932:102 | source(...) : Object | LogInjectionTest.java:932:86:932:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:932:95:932:102 | source(...) | user-provided value | -| LogInjectionTest.java:933:71:933:87 | (...)... | LogInjectionTest.java:933:80:933:87 | source(...) : Object | LogInjectionTest.java:933:71:933:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:933:80:933:87 | source(...) | user-provided value | -| LogInjectionTest.java:934:56:934:72 | (...)... | LogInjectionTest.java:934:65:934:72 | source(...) : Object | LogInjectionTest.java:934:56:934:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:934:65:934:72 | source(...) | user-provided value | -| LogInjectionTest.java:935:41:935:57 | (...)... | LogInjectionTest.java:935:50:935:57 | source(...) : Object | LogInjectionTest.java:935:41:935:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:935:50:935:57 | source(...) | user-provided value | -| LogInjectionTest.java:936:131:936:147 | (...)... | LogInjectionTest.java:936:140:936:147 | source(...) : Object | LogInjectionTest.java:936:131:936:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:936:140:936:147 | source(...) | user-provided value | -| LogInjectionTest.java:937:116:937:132 | (...)... | LogInjectionTest.java:937:125:937:132 | source(...) : Object | LogInjectionTest.java:937:116:937:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:937:125:937:132 | source(...) | user-provided value | -| LogInjectionTest.java:938:101:938:117 | (...)... | LogInjectionTest.java:938:110:938:117 | source(...) : Object | LogInjectionTest.java:938:101:938:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:938:110:938:117 | source(...) | user-provided value | -| LogInjectionTest.java:939:86:939:102 | (...)... | LogInjectionTest.java:939:95:939:102 | source(...) : Object | LogInjectionTest.java:939:86:939:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:939:95:939:102 | source(...) | user-provided value | -| LogInjectionTest.java:940:71:940:87 | (...)... | LogInjectionTest.java:940:80:940:87 | source(...) : Object | LogInjectionTest.java:940:71:940:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:940:80:940:87 | source(...) | user-provided value | -| LogInjectionTest.java:941:56:941:72 | (...)... | LogInjectionTest.java:941:65:941:72 | source(...) : Object | LogInjectionTest.java:941:56:941:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:941:65:941:72 | source(...) | user-provided value | -| LogInjectionTest.java:942:41:942:57 | (...)... | LogInjectionTest.java:942:50:942:57 | source(...) : Object | LogInjectionTest.java:942:41:942:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:942:50:942:57 | source(...) | user-provided value | -| LogInjectionTest.java:943:146:943:162 | (...)... | LogInjectionTest.java:943:155:943:162 | source(...) : Object | LogInjectionTest.java:943:146:943:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:943:155:943:162 | source(...) | user-provided value | -| LogInjectionTest.java:944:131:944:147 | (...)... | LogInjectionTest.java:944:140:944:147 | source(...) : Object | LogInjectionTest.java:944:131:944:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:944:140:944:147 | source(...) | user-provided value | -| LogInjectionTest.java:945:116:945:132 | (...)... | LogInjectionTest.java:945:125:945:132 | source(...) : Object | LogInjectionTest.java:945:116:945:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:945:125:945:132 | source(...) | user-provided value | -| LogInjectionTest.java:946:101:946:117 | (...)... | LogInjectionTest.java:946:110:946:117 | source(...) : Object | LogInjectionTest.java:946:101:946:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:946:110:946:117 | source(...) | user-provided value | -| LogInjectionTest.java:947:86:947:102 | (...)... | LogInjectionTest.java:947:95:947:102 | source(...) : Object | LogInjectionTest.java:947:86:947:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:947:95:947:102 | source(...) | user-provided value | -| LogInjectionTest.java:948:71:948:87 | (...)... | LogInjectionTest.java:948:80:948:87 | source(...) : Object | LogInjectionTest.java:948:71:948:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:948:80:948:87 | source(...) | user-provided value | -| LogInjectionTest.java:949:56:949:72 | (...)... | LogInjectionTest.java:949:65:949:72 | source(...) : Object | LogInjectionTest.java:949:56:949:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:949:65:949:72 | source(...) | user-provided value | -| LogInjectionTest.java:950:41:950:57 | (...)... | LogInjectionTest.java:950:50:950:57 | source(...) : Object | LogInjectionTest.java:950:41:950:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:950:50:950:57 | source(...) | user-provided value | -| LogInjectionTest.java:951:161:951:177 | (...)... | LogInjectionTest.java:951:170:951:177 | source(...) : Object | LogInjectionTest.java:951:161:951:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:951:170:951:177 | source(...) | user-provided value | -| LogInjectionTest.java:952:146:952:162 | (...)... | LogInjectionTest.java:952:155:952:162 | source(...) : Object | LogInjectionTest.java:952:146:952:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:952:155:952:162 | source(...) | user-provided value | -| LogInjectionTest.java:953:131:953:147 | (...)... | LogInjectionTest.java:953:140:953:147 | source(...) : Object | LogInjectionTest.java:953:131:953:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:953:140:953:147 | source(...) | user-provided value | -| LogInjectionTest.java:954:116:954:132 | (...)... | LogInjectionTest.java:954:125:954:132 | source(...) : Object | LogInjectionTest.java:954:116:954:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:954:125:954:132 | source(...) | user-provided value | -| LogInjectionTest.java:955:101:955:117 | (...)... | LogInjectionTest.java:955:110:955:117 | source(...) : Object | LogInjectionTest.java:955:101:955:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:955:110:955:117 | source(...) | user-provided value | -| LogInjectionTest.java:956:86:956:102 | (...)... | LogInjectionTest.java:956:95:956:102 | source(...) : Object | LogInjectionTest.java:956:86:956:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:956:95:956:102 | source(...) | user-provided value | -| LogInjectionTest.java:957:71:957:87 | (...)... | LogInjectionTest.java:957:80:957:87 | source(...) : Object | LogInjectionTest.java:957:71:957:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:957:80:957:87 | source(...) | user-provided value | -| LogInjectionTest.java:958:56:958:72 | (...)... | LogInjectionTest.java:958:65:958:72 | source(...) : Object | LogInjectionTest.java:958:56:958:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:958:65:958:72 | source(...) | user-provided value | -| LogInjectionTest.java:959:41:959:57 | (...)... | LogInjectionTest.java:959:50:959:57 | source(...) : Object | LogInjectionTest.java:959:41:959:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:959:50:959:57 | source(...) | user-provided value | -| LogInjectionTest.java:960:176:960:192 | (...)... | LogInjectionTest.java:960:185:960:192 | source(...) : Object | LogInjectionTest.java:960:176:960:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:960:185:960:192 | source(...) | user-provided value | +| LogInjectionTest.java:925:56:925:78 | new Object[] | LogInjectionTest.java:925:70:925:77 | source(...) : Object | LogInjectionTest.java:925:56:925:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:925:70:925:77 | source(...) | user-provided value | +| LogInjectionTest.java:926:56:926:72 | (...)... | LogInjectionTest.java:926:65:926:72 | source(...) : Object | LogInjectionTest.java:926:56:926:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:926:65:926:72 | source(...) | user-provided value | +| LogInjectionTest.java:927:41:927:57 | (...)... | LogInjectionTest.java:927:50:927:57 | source(...) : Object | LogInjectionTest.java:927:41:927:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:927:50:927:57 | source(...) | user-provided value | +| LogInjectionTest.java:928:71:928:87 | (...)... | LogInjectionTest.java:928:80:928:87 | source(...) : Object | LogInjectionTest.java:928:71:928:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:928:80:928:87 | source(...) | user-provided value | +| LogInjectionTest.java:929:56:929:72 | (...)... | LogInjectionTest.java:929:65:929:72 | source(...) : Object | LogInjectionTest.java:929:56:929:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:929:65:929:72 | source(...) | user-provided value | +| LogInjectionTest.java:930:41:930:57 | (...)... | LogInjectionTest.java:930:50:930:57 | source(...) : Object | LogInjectionTest.java:930:41:930:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:930:50:930:57 | source(...) | user-provided value | +| LogInjectionTest.java:931:86:931:102 | (...)... | LogInjectionTest.java:931:95:931:102 | source(...) : Object | LogInjectionTest.java:931:86:931:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:931:95:931:102 | source(...) | user-provided value | +| LogInjectionTest.java:932:71:932:87 | (...)... | LogInjectionTest.java:932:80:932:87 | source(...) : Object | LogInjectionTest.java:932:71:932:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:932:80:932:87 | source(...) | user-provided value | +| LogInjectionTest.java:933:56:933:72 | (...)... | LogInjectionTest.java:933:65:933:72 | source(...) : Object | LogInjectionTest.java:933:56:933:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:933:65:933:72 | source(...) | user-provided value | +| LogInjectionTest.java:934:41:934:57 | (...)... | LogInjectionTest.java:934:50:934:57 | source(...) : Object | LogInjectionTest.java:934:41:934:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:934:50:934:57 | source(...) | user-provided value | +| LogInjectionTest.java:935:101:935:117 | (...)... | LogInjectionTest.java:935:110:935:117 | source(...) : Object | LogInjectionTest.java:935:101:935:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:935:110:935:117 | source(...) | user-provided value | +| LogInjectionTest.java:936:86:936:102 | (...)... | LogInjectionTest.java:936:95:936:102 | source(...) : Object | LogInjectionTest.java:936:86:936:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:936:95:936:102 | source(...) | user-provided value | +| LogInjectionTest.java:937:71:937:87 | (...)... | LogInjectionTest.java:937:80:937:87 | source(...) : Object | LogInjectionTest.java:937:71:937:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:937:80:937:87 | source(...) | user-provided value | +| LogInjectionTest.java:938:56:938:72 | (...)... | LogInjectionTest.java:938:65:938:72 | source(...) : Object | LogInjectionTest.java:938:56:938:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:938:65:938:72 | source(...) | user-provided value | +| LogInjectionTest.java:939:41:939:57 | (...)... | LogInjectionTest.java:939:50:939:57 | source(...) : Object | LogInjectionTest.java:939:41:939:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:939:50:939:57 | source(...) | user-provided value | +| LogInjectionTest.java:940:116:940:132 | (...)... | LogInjectionTest.java:940:125:940:132 | source(...) : Object | LogInjectionTest.java:940:116:940:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:940:125:940:132 | source(...) | user-provided value | +| LogInjectionTest.java:941:101:941:117 | (...)... | LogInjectionTest.java:941:110:941:117 | source(...) : Object | LogInjectionTest.java:941:101:941:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:941:110:941:117 | source(...) | user-provided value | +| LogInjectionTest.java:942:86:942:102 | (...)... | LogInjectionTest.java:942:95:942:102 | source(...) : Object | LogInjectionTest.java:942:86:942:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:942:95:942:102 | source(...) | user-provided value | +| LogInjectionTest.java:943:71:943:87 | (...)... | LogInjectionTest.java:943:80:943:87 | source(...) : Object | LogInjectionTest.java:943:71:943:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:943:80:943:87 | source(...) | user-provided value | +| LogInjectionTest.java:944:56:944:72 | (...)... | LogInjectionTest.java:944:65:944:72 | source(...) : Object | LogInjectionTest.java:944:56:944:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:944:65:944:72 | source(...) | user-provided value | +| LogInjectionTest.java:945:41:945:57 | (...)... | LogInjectionTest.java:945:50:945:57 | source(...) : Object | LogInjectionTest.java:945:41:945:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:945:50:945:57 | source(...) | user-provided value | +| LogInjectionTest.java:946:131:946:147 | (...)... | LogInjectionTest.java:946:140:946:147 | source(...) : Object | LogInjectionTest.java:946:131:946:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:946:140:946:147 | source(...) | user-provided value | +| LogInjectionTest.java:947:116:947:132 | (...)... | LogInjectionTest.java:947:125:947:132 | source(...) : Object | LogInjectionTest.java:947:116:947:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:947:125:947:132 | source(...) | user-provided value | +| LogInjectionTest.java:948:101:948:117 | (...)... | LogInjectionTest.java:948:110:948:117 | source(...) : Object | LogInjectionTest.java:948:101:948:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:948:110:948:117 | source(...) | user-provided value | +| LogInjectionTest.java:949:86:949:102 | (...)... | LogInjectionTest.java:949:95:949:102 | source(...) : Object | LogInjectionTest.java:949:86:949:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:949:95:949:102 | source(...) | user-provided value | +| LogInjectionTest.java:950:71:950:87 | (...)... | LogInjectionTest.java:950:80:950:87 | source(...) : Object | LogInjectionTest.java:950:71:950:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:950:80:950:87 | source(...) | user-provided value | +| LogInjectionTest.java:951:56:951:72 | (...)... | LogInjectionTest.java:951:65:951:72 | source(...) : Object | LogInjectionTest.java:951:56:951:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:951:65:951:72 | source(...) | user-provided value | +| LogInjectionTest.java:952:41:952:57 | (...)... | LogInjectionTest.java:952:50:952:57 | source(...) : Object | LogInjectionTest.java:952:41:952:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:952:50:952:57 | source(...) | user-provided value | +| LogInjectionTest.java:953:146:953:162 | (...)... | LogInjectionTest.java:953:155:953:162 | source(...) : Object | LogInjectionTest.java:953:146:953:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:953:155:953:162 | source(...) | user-provided value | +| LogInjectionTest.java:954:131:954:147 | (...)... | LogInjectionTest.java:954:140:954:147 | source(...) : Object | LogInjectionTest.java:954:131:954:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:954:140:954:147 | source(...) | user-provided value | +| LogInjectionTest.java:955:116:955:132 | (...)... | LogInjectionTest.java:955:125:955:132 | source(...) : Object | LogInjectionTest.java:955:116:955:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:955:125:955:132 | source(...) | user-provided value | +| LogInjectionTest.java:956:101:956:117 | (...)... | LogInjectionTest.java:956:110:956:117 | source(...) : Object | LogInjectionTest.java:956:101:956:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:956:110:956:117 | source(...) | user-provided value | +| LogInjectionTest.java:957:86:957:102 | (...)... | LogInjectionTest.java:957:95:957:102 | source(...) : Object | LogInjectionTest.java:957:86:957:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:957:95:957:102 | source(...) | user-provided value | +| LogInjectionTest.java:958:71:958:87 | (...)... | LogInjectionTest.java:958:80:958:87 | source(...) : Object | LogInjectionTest.java:958:71:958:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:958:80:958:87 | source(...) | user-provided value | +| LogInjectionTest.java:959:56:959:72 | (...)... | LogInjectionTest.java:959:65:959:72 | source(...) : Object | LogInjectionTest.java:959:56:959:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:959:65:959:72 | source(...) | user-provided value | +| LogInjectionTest.java:960:41:960:57 | (...)... | LogInjectionTest.java:960:50:960:57 | source(...) : Object | LogInjectionTest.java:960:41:960:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:960:50:960:57 | source(...) | user-provided value | | LogInjectionTest.java:961:161:961:177 | (...)... | LogInjectionTest.java:961:170:961:177 | source(...) : Object | LogInjectionTest.java:961:161:961:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:961:170:961:177 | source(...) | user-provided value | | LogInjectionTest.java:962:146:962:162 | (...)... | LogInjectionTest.java:962:155:962:162 | source(...) : Object | LogInjectionTest.java:962:146:962:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:962:155:962:162 | source(...) | user-provided value | | LogInjectionTest.java:963:131:963:147 | (...)... | LogInjectionTest.java:963:140:963:147 | source(...) : Object | LogInjectionTest.java:963:131:963:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:963:140:963:147 | source(...) | user-provided value | @@ -817,65 +809,65 @@ | LogInjectionTest.java:967:71:967:87 | (...)... | LogInjectionTest.java:967:80:967:87 | source(...) : Object | LogInjectionTest.java:967:71:967:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:967:80:967:87 | source(...) | user-provided value | | LogInjectionTest.java:968:56:968:72 | (...)... | LogInjectionTest.java:968:65:968:72 | source(...) : Object | LogInjectionTest.java:968:56:968:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:968:65:968:72 | source(...) | user-provided value | | LogInjectionTest.java:969:41:969:57 | (...)... | LogInjectionTest.java:969:50:969:57 | source(...) : Object | LogInjectionTest.java:969:41:969:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:969:50:969:57 | source(...) | user-provided value | -| LogInjectionTest.java:970:41:970:57 | (...)... | LogInjectionTest.java:970:50:970:57 | source(...) : Object | LogInjectionTest.java:970:41:970:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:970:50:970:57 | source(...) | user-provided value | -| LogInjectionTest.java:971:56:971:77 | (...)... | LogInjectionTest.java:971:70:971:77 | source(...) : Object | LogInjectionTest.java:971:56:971:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:971:70:971:77 | source(...) | user-provided value | -| LogInjectionTest.java:972:41:972:57 | (...)... | LogInjectionTest.java:972:50:972:57 | source(...) : Object | LogInjectionTest.java:972:41:972:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:972:50:972:57 | source(...) | user-provided value | -| LogInjectionTest.java:973:41:973:62 | (...)... | LogInjectionTest.java:973:55:973:62 | source(...) : Object | LogInjectionTest.java:973:41:973:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:973:55:973:62 | source(...) | user-provided value | -| LogInjectionTest.java:974:41:974:62 | (...)... | LogInjectionTest.java:974:55:974:62 | source(...) : Object | LogInjectionTest.java:974:41:974:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:974:55:974:62 | source(...) | user-provided value | -| LogInjectionTest.java:975:26:975:51 | (...)... | LogInjectionTest.java:975:44:975:51 | source(...) : Object | LogInjectionTest.java:975:26:975:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:975:44:975:51 | source(...) | user-provided value | -| LogInjectionTest.java:976:26:976:51 | (...)... | LogInjectionTest.java:976:44:976:51 | source(...) : Object | LogInjectionTest.java:976:26:976:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:976:44:976:51 | source(...) | user-provided value | -| LogInjectionTest.java:977:26:977:43 | (...)... | LogInjectionTest.java:977:36:977:43 | source(...) : Object | LogInjectionTest.java:977:26:977:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:977:36:977:43 | source(...) | user-provided value | -| LogInjectionTest.java:978:26:978:43 | (...)... | LogInjectionTest.java:978:36:978:43 | source(...) : Object | LogInjectionTest.java:978:26:978:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:978:36:978:43 | source(...) | user-provided value | -| LogInjectionTest.java:979:26:979:33 | source(...) | LogInjectionTest.java:979:26:979:33 | source(...) | LogInjectionTest.java:979:26:979:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:979:26:979:33 | source(...) | user-provided value | -| LogInjectionTest.java:980:26:980:33 | source(...) | LogInjectionTest.java:980:26:980:33 | source(...) | LogInjectionTest.java:980:26:980:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:980:26:980:33 | source(...) | user-provided value | -| LogInjectionTest.java:981:26:981:42 | (...)... | LogInjectionTest.java:981:35:981:42 | source(...) : Object | LogInjectionTest.java:981:26:981:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:981:35:981:42 | source(...) | user-provided value | -| LogInjectionTest.java:982:26:982:42 | (...)... | LogInjectionTest.java:982:35:982:42 | source(...) : Object | LogInjectionTest.java:982:26:982:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:982:35:982:42 | source(...) | user-provided value | -| LogInjectionTest.java:983:41:983:63 | new Object[] | LogInjectionTest.java:983:55:983:62 | source(...) : Object | LogInjectionTest.java:983:41:983:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:983:55:983:62 | source(...) | user-provided value | -| LogInjectionTest.java:984:41:984:57 | (...)... | LogInjectionTest.java:984:50:984:57 | source(...) : Object | LogInjectionTest.java:984:41:984:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:984:50:984:57 | source(...) | user-provided value | -| LogInjectionTest.java:985:26:985:42 | (...)... | LogInjectionTest.java:985:35:985:42 | source(...) : Object | LogInjectionTest.java:985:26:985:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:985:35:985:42 | source(...) | user-provided value | -| LogInjectionTest.java:986:56:986:72 | (...)... | LogInjectionTest.java:986:65:986:72 | source(...) : Object | LogInjectionTest.java:986:56:986:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:986:65:986:72 | source(...) | user-provided value | -| LogInjectionTest.java:987:41:987:57 | (...)... | LogInjectionTest.java:987:50:987:57 | source(...) : Object | LogInjectionTest.java:987:41:987:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:987:50:987:57 | source(...) | user-provided value | -| LogInjectionTest.java:988:26:988:42 | (...)... | LogInjectionTest.java:988:35:988:42 | source(...) : Object | LogInjectionTest.java:988:26:988:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:988:35:988:42 | source(...) | user-provided value | -| LogInjectionTest.java:989:71:989:87 | (...)... | LogInjectionTest.java:989:80:989:87 | source(...) : Object | LogInjectionTest.java:989:71:989:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:989:80:989:87 | source(...) | user-provided value | -| LogInjectionTest.java:990:56:990:72 | (...)... | LogInjectionTest.java:990:65:990:72 | source(...) : Object | LogInjectionTest.java:990:56:990:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:990:65:990:72 | source(...) | user-provided value | -| LogInjectionTest.java:991:41:991:57 | (...)... | LogInjectionTest.java:991:50:991:57 | source(...) : Object | LogInjectionTest.java:991:41:991:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:991:50:991:57 | source(...) | user-provided value | +| LogInjectionTest.java:970:176:970:192 | (...)... | LogInjectionTest.java:970:185:970:192 | source(...) : Object | LogInjectionTest.java:970:176:970:192 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:970:185:970:192 | source(...) | user-provided value | +| LogInjectionTest.java:971:161:971:177 | (...)... | LogInjectionTest.java:971:170:971:177 | source(...) : Object | LogInjectionTest.java:971:161:971:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:971:170:971:177 | source(...) | user-provided value | +| LogInjectionTest.java:972:146:972:162 | (...)... | LogInjectionTest.java:972:155:972:162 | source(...) : Object | LogInjectionTest.java:972:146:972:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:972:155:972:162 | source(...) | user-provided value | +| LogInjectionTest.java:973:131:973:147 | (...)... | LogInjectionTest.java:973:140:973:147 | source(...) : Object | LogInjectionTest.java:973:131:973:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:973:140:973:147 | source(...) | user-provided value | +| LogInjectionTest.java:974:116:974:132 | (...)... | LogInjectionTest.java:974:125:974:132 | source(...) : Object | LogInjectionTest.java:974:116:974:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:974:125:974:132 | source(...) | user-provided value | +| LogInjectionTest.java:975:101:975:117 | (...)... | LogInjectionTest.java:975:110:975:117 | source(...) : Object | LogInjectionTest.java:975:101:975:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:975:110:975:117 | source(...) | user-provided value | +| LogInjectionTest.java:976:86:976:102 | (...)... | LogInjectionTest.java:976:95:976:102 | source(...) : Object | LogInjectionTest.java:976:86:976:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:976:95:976:102 | source(...) | user-provided value | +| LogInjectionTest.java:977:71:977:87 | (...)... | LogInjectionTest.java:977:80:977:87 | source(...) : Object | LogInjectionTest.java:977:71:977:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:977:80:977:87 | source(...) | user-provided value | +| LogInjectionTest.java:978:56:978:72 | (...)... | LogInjectionTest.java:978:65:978:72 | source(...) : Object | LogInjectionTest.java:978:56:978:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:978:65:978:72 | source(...) | user-provided value | +| LogInjectionTest.java:979:41:979:57 | (...)... | LogInjectionTest.java:979:50:979:57 | source(...) : Object | LogInjectionTest.java:979:41:979:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:979:50:979:57 | source(...) | user-provided value | +| LogInjectionTest.java:980:41:980:57 | (...)... | LogInjectionTest.java:980:50:980:57 | source(...) : Object | LogInjectionTest.java:980:41:980:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:980:50:980:57 | source(...) | user-provided value | +| LogInjectionTest.java:981:56:981:77 | (...)... | LogInjectionTest.java:981:70:981:77 | source(...) : Object | LogInjectionTest.java:981:56:981:77 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:981:70:981:77 | source(...) | user-provided value | +| LogInjectionTest.java:982:41:982:57 | (...)... | LogInjectionTest.java:982:50:982:57 | source(...) : Object | LogInjectionTest.java:982:41:982:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:982:50:982:57 | source(...) | user-provided value | +| LogInjectionTest.java:983:41:983:62 | (...)... | LogInjectionTest.java:983:55:983:62 | source(...) : Object | LogInjectionTest.java:983:41:983:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:983:55:983:62 | source(...) | user-provided value | +| LogInjectionTest.java:984:41:984:62 | (...)... | LogInjectionTest.java:984:55:984:62 | source(...) : Object | LogInjectionTest.java:984:41:984:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:984:55:984:62 | source(...) | user-provided value | +| LogInjectionTest.java:985:26:985:51 | (...)... | LogInjectionTest.java:985:44:985:51 | source(...) : Object | LogInjectionTest.java:985:26:985:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:985:44:985:51 | source(...) | user-provided value | +| LogInjectionTest.java:986:26:986:51 | (...)... | LogInjectionTest.java:986:44:986:51 | source(...) : Object | LogInjectionTest.java:986:26:986:51 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:986:44:986:51 | source(...) | user-provided value | +| LogInjectionTest.java:987:26:987:43 | (...)... | LogInjectionTest.java:987:36:987:43 | source(...) : Object | LogInjectionTest.java:987:26:987:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:987:36:987:43 | source(...) | user-provided value | +| LogInjectionTest.java:988:26:988:43 | (...)... | LogInjectionTest.java:988:36:988:43 | source(...) : Object | LogInjectionTest.java:988:26:988:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:988:36:988:43 | source(...) | user-provided value | +| LogInjectionTest.java:989:26:989:33 | source(...) | LogInjectionTest.java:989:26:989:33 | source(...) | LogInjectionTest.java:989:26:989:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:989:26:989:33 | source(...) | user-provided value | +| LogInjectionTest.java:990:26:990:33 | source(...) | LogInjectionTest.java:990:26:990:33 | source(...) | LogInjectionTest.java:990:26:990:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:990:26:990:33 | source(...) | user-provided value | +| LogInjectionTest.java:991:26:991:42 | (...)... | LogInjectionTest.java:991:35:991:42 | source(...) : Object | LogInjectionTest.java:991:26:991:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:991:35:991:42 | source(...) | user-provided value | | LogInjectionTest.java:992:26:992:42 | (...)... | LogInjectionTest.java:992:35:992:42 | source(...) : Object | LogInjectionTest.java:992:26:992:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:992:35:992:42 | source(...) | user-provided value | -| LogInjectionTest.java:993:86:993:102 | (...)... | LogInjectionTest.java:993:95:993:102 | source(...) : Object | LogInjectionTest.java:993:86:993:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:993:95:993:102 | source(...) | user-provided value | -| LogInjectionTest.java:994:71:994:87 | (...)... | LogInjectionTest.java:994:80:994:87 | source(...) : Object | LogInjectionTest.java:994:71:994:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:994:80:994:87 | source(...) | user-provided value | -| LogInjectionTest.java:995:56:995:72 | (...)... | LogInjectionTest.java:995:65:995:72 | source(...) : Object | LogInjectionTest.java:995:56:995:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:995:65:995:72 | source(...) | user-provided value | -| LogInjectionTest.java:996:41:996:57 | (...)... | LogInjectionTest.java:996:50:996:57 | source(...) : Object | LogInjectionTest.java:996:41:996:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:996:50:996:57 | source(...) | user-provided value | -| LogInjectionTest.java:997:26:997:42 | (...)... | LogInjectionTest.java:997:35:997:42 | source(...) : Object | LogInjectionTest.java:997:26:997:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:997:35:997:42 | source(...) | user-provided value | -| LogInjectionTest.java:998:101:998:117 | (...)... | LogInjectionTest.java:998:110:998:117 | source(...) : Object | LogInjectionTest.java:998:101:998:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:998:110:998:117 | source(...) | user-provided value | -| LogInjectionTest.java:999:86:999:102 | (...)... | LogInjectionTest.java:999:95:999:102 | source(...) : Object | LogInjectionTest.java:999:86:999:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:999:95:999:102 | source(...) | user-provided value | -| LogInjectionTest.java:1000:71:1000:87 | (...)... | LogInjectionTest.java:1000:80:1000:87 | source(...) : Object | LogInjectionTest.java:1000:71:1000:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1000:80:1000:87 | source(...) | user-provided value | -| LogInjectionTest.java:1001:56:1001:72 | (...)... | LogInjectionTest.java:1001:65:1001:72 | source(...) : Object | LogInjectionTest.java:1001:56:1001:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1001:65:1001:72 | source(...) | user-provided value | -| LogInjectionTest.java:1002:41:1002:57 | (...)... | LogInjectionTest.java:1002:50:1002:57 | source(...) : Object | LogInjectionTest.java:1002:41:1002:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1002:50:1002:57 | source(...) | user-provided value | -| LogInjectionTest.java:1003:26:1003:42 | (...)... | LogInjectionTest.java:1003:35:1003:42 | source(...) : Object | LogInjectionTest.java:1003:26:1003:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1003:35:1003:42 | source(...) | user-provided value | -| LogInjectionTest.java:1004:116:1004:132 | (...)... | LogInjectionTest.java:1004:125:1004:132 | source(...) : Object | LogInjectionTest.java:1004:116:1004:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1004:125:1004:132 | source(...) | user-provided value | -| LogInjectionTest.java:1005:101:1005:117 | (...)... | LogInjectionTest.java:1005:110:1005:117 | source(...) : Object | LogInjectionTest.java:1005:101:1005:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1005:110:1005:117 | source(...) | user-provided value | -| LogInjectionTest.java:1006:86:1006:102 | (...)... | LogInjectionTest.java:1006:95:1006:102 | source(...) : Object | LogInjectionTest.java:1006:86:1006:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1006:95:1006:102 | source(...) | user-provided value | -| LogInjectionTest.java:1007:71:1007:87 | (...)... | LogInjectionTest.java:1007:80:1007:87 | source(...) : Object | LogInjectionTest.java:1007:71:1007:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1007:80:1007:87 | source(...) | user-provided value | -| LogInjectionTest.java:1008:56:1008:72 | (...)... | LogInjectionTest.java:1008:65:1008:72 | source(...) : Object | LogInjectionTest.java:1008:56:1008:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1008:65:1008:72 | source(...) | user-provided value | -| LogInjectionTest.java:1009:41:1009:57 | (...)... | LogInjectionTest.java:1009:50:1009:57 | source(...) : Object | LogInjectionTest.java:1009:41:1009:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1009:50:1009:57 | source(...) | user-provided value | -| LogInjectionTest.java:1010:26:1010:42 | (...)... | LogInjectionTest.java:1010:35:1010:42 | source(...) : Object | LogInjectionTest.java:1010:26:1010:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1010:35:1010:42 | source(...) | user-provided value | -| LogInjectionTest.java:1011:131:1011:147 | (...)... | LogInjectionTest.java:1011:140:1011:147 | source(...) : Object | LogInjectionTest.java:1011:131:1011:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1011:140:1011:147 | source(...) | user-provided value | -| LogInjectionTest.java:1012:116:1012:132 | (...)... | LogInjectionTest.java:1012:125:1012:132 | source(...) : Object | LogInjectionTest.java:1012:116:1012:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1012:125:1012:132 | source(...) | user-provided value | -| LogInjectionTest.java:1013:101:1013:117 | (...)... | LogInjectionTest.java:1013:110:1013:117 | source(...) : Object | LogInjectionTest.java:1013:101:1013:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1013:110:1013:117 | source(...) | user-provided value | -| LogInjectionTest.java:1014:86:1014:102 | (...)... | LogInjectionTest.java:1014:95:1014:102 | source(...) : Object | LogInjectionTest.java:1014:86:1014:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1014:95:1014:102 | source(...) | user-provided value | -| LogInjectionTest.java:1015:71:1015:87 | (...)... | LogInjectionTest.java:1015:80:1015:87 | source(...) : Object | LogInjectionTest.java:1015:71:1015:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1015:80:1015:87 | source(...) | user-provided value | -| LogInjectionTest.java:1016:56:1016:72 | (...)... | LogInjectionTest.java:1016:65:1016:72 | source(...) : Object | LogInjectionTest.java:1016:56:1016:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1016:65:1016:72 | source(...) | user-provided value | -| LogInjectionTest.java:1017:41:1017:57 | (...)... | LogInjectionTest.java:1017:50:1017:57 | source(...) : Object | LogInjectionTest.java:1017:41:1017:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1017:50:1017:57 | source(...) | user-provided value | -| LogInjectionTest.java:1018:26:1018:42 | (...)... | LogInjectionTest.java:1018:35:1018:42 | source(...) : Object | LogInjectionTest.java:1018:26:1018:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1018:35:1018:42 | source(...) | user-provided value | -| LogInjectionTest.java:1019:146:1019:162 | (...)... | LogInjectionTest.java:1019:155:1019:162 | source(...) : Object | LogInjectionTest.java:1019:146:1019:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1019:155:1019:162 | source(...) | user-provided value | -| LogInjectionTest.java:1020:131:1020:147 | (...)... | LogInjectionTest.java:1020:140:1020:147 | source(...) : Object | LogInjectionTest.java:1020:131:1020:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1020:140:1020:147 | source(...) | user-provided value | -| LogInjectionTest.java:1021:116:1021:132 | (...)... | LogInjectionTest.java:1021:125:1021:132 | source(...) : Object | LogInjectionTest.java:1021:116:1021:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1021:125:1021:132 | source(...) | user-provided value | -| LogInjectionTest.java:1022:101:1022:117 | (...)... | LogInjectionTest.java:1022:110:1022:117 | source(...) : Object | LogInjectionTest.java:1022:101:1022:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1022:110:1022:117 | source(...) | user-provided value | -| LogInjectionTest.java:1023:86:1023:102 | (...)... | LogInjectionTest.java:1023:95:1023:102 | source(...) : Object | LogInjectionTest.java:1023:86:1023:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1023:95:1023:102 | source(...) | user-provided value | -| LogInjectionTest.java:1024:71:1024:87 | (...)... | LogInjectionTest.java:1024:80:1024:87 | source(...) : Object | LogInjectionTest.java:1024:71:1024:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1024:80:1024:87 | source(...) | user-provided value | -| LogInjectionTest.java:1025:56:1025:72 | (...)... | LogInjectionTest.java:1025:65:1025:72 | source(...) : Object | LogInjectionTest.java:1025:56:1025:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1025:65:1025:72 | source(...) | user-provided value | -| LogInjectionTest.java:1026:41:1026:57 | (...)... | LogInjectionTest.java:1026:50:1026:57 | source(...) : Object | LogInjectionTest.java:1026:41:1026:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1026:50:1026:57 | source(...) | user-provided value | -| LogInjectionTest.java:1027:26:1027:42 | (...)... | LogInjectionTest.java:1027:35:1027:42 | source(...) : Object | LogInjectionTest.java:1027:26:1027:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1027:35:1027:42 | source(...) | user-provided value | -| LogInjectionTest.java:1028:161:1028:177 | (...)... | LogInjectionTest.java:1028:170:1028:177 | source(...) : Object | LogInjectionTest.java:1028:161:1028:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1028:170:1028:177 | source(...) | user-provided value | +| LogInjectionTest.java:993:41:993:63 | new Object[] | LogInjectionTest.java:993:55:993:62 | source(...) : Object | LogInjectionTest.java:993:41:993:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:993:55:993:62 | source(...) | user-provided value | +| LogInjectionTest.java:994:41:994:57 | (...)... | LogInjectionTest.java:994:50:994:57 | source(...) : Object | LogInjectionTest.java:994:41:994:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:994:50:994:57 | source(...) | user-provided value | +| LogInjectionTest.java:995:26:995:42 | (...)... | LogInjectionTest.java:995:35:995:42 | source(...) : Object | LogInjectionTest.java:995:26:995:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:995:35:995:42 | source(...) | user-provided value | +| LogInjectionTest.java:996:56:996:72 | (...)... | LogInjectionTest.java:996:65:996:72 | source(...) : Object | LogInjectionTest.java:996:56:996:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:996:65:996:72 | source(...) | user-provided value | +| LogInjectionTest.java:997:41:997:57 | (...)... | LogInjectionTest.java:997:50:997:57 | source(...) : Object | LogInjectionTest.java:997:41:997:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:997:50:997:57 | source(...) | user-provided value | +| LogInjectionTest.java:998:26:998:42 | (...)... | LogInjectionTest.java:998:35:998:42 | source(...) : Object | LogInjectionTest.java:998:26:998:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:998:35:998:42 | source(...) | user-provided value | +| LogInjectionTest.java:999:71:999:87 | (...)... | LogInjectionTest.java:999:80:999:87 | source(...) : Object | LogInjectionTest.java:999:71:999:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:999:80:999:87 | source(...) | user-provided value | +| LogInjectionTest.java:1000:56:1000:72 | (...)... | LogInjectionTest.java:1000:65:1000:72 | source(...) : Object | LogInjectionTest.java:1000:56:1000:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1000:65:1000:72 | source(...) | user-provided value | +| LogInjectionTest.java:1001:41:1001:57 | (...)... | LogInjectionTest.java:1001:50:1001:57 | source(...) : Object | LogInjectionTest.java:1001:41:1001:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1001:50:1001:57 | source(...) | user-provided value | +| LogInjectionTest.java:1002:26:1002:42 | (...)... | LogInjectionTest.java:1002:35:1002:42 | source(...) : Object | LogInjectionTest.java:1002:26:1002:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1002:35:1002:42 | source(...) | user-provided value | +| LogInjectionTest.java:1003:86:1003:102 | (...)... | LogInjectionTest.java:1003:95:1003:102 | source(...) : Object | LogInjectionTest.java:1003:86:1003:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1003:95:1003:102 | source(...) | user-provided value | +| LogInjectionTest.java:1004:71:1004:87 | (...)... | LogInjectionTest.java:1004:80:1004:87 | source(...) : Object | LogInjectionTest.java:1004:71:1004:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1004:80:1004:87 | source(...) | user-provided value | +| LogInjectionTest.java:1005:56:1005:72 | (...)... | LogInjectionTest.java:1005:65:1005:72 | source(...) : Object | LogInjectionTest.java:1005:56:1005:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1005:65:1005:72 | source(...) | user-provided value | +| LogInjectionTest.java:1006:41:1006:57 | (...)... | LogInjectionTest.java:1006:50:1006:57 | source(...) : Object | LogInjectionTest.java:1006:41:1006:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1006:50:1006:57 | source(...) | user-provided value | +| LogInjectionTest.java:1007:26:1007:42 | (...)... | LogInjectionTest.java:1007:35:1007:42 | source(...) : Object | LogInjectionTest.java:1007:26:1007:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1007:35:1007:42 | source(...) | user-provided value | +| LogInjectionTest.java:1008:101:1008:117 | (...)... | LogInjectionTest.java:1008:110:1008:117 | source(...) : Object | LogInjectionTest.java:1008:101:1008:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1008:110:1008:117 | source(...) | user-provided value | +| LogInjectionTest.java:1009:86:1009:102 | (...)... | LogInjectionTest.java:1009:95:1009:102 | source(...) : Object | LogInjectionTest.java:1009:86:1009:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1009:95:1009:102 | source(...) | user-provided value | +| LogInjectionTest.java:1010:71:1010:87 | (...)... | LogInjectionTest.java:1010:80:1010:87 | source(...) : Object | LogInjectionTest.java:1010:71:1010:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1010:80:1010:87 | source(...) | user-provided value | +| LogInjectionTest.java:1011:56:1011:72 | (...)... | LogInjectionTest.java:1011:65:1011:72 | source(...) : Object | LogInjectionTest.java:1011:56:1011:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1011:65:1011:72 | source(...) | user-provided value | +| LogInjectionTest.java:1012:41:1012:57 | (...)... | LogInjectionTest.java:1012:50:1012:57 | source(...) : Object | LogInjectionTest.java:1012:41:1012:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1012:50:1012:57 | source(...) | user-provided value | +| LogInjectionTest.java:1013:26:1013:42 | (...)... | LogInjectionTest.java:1013:35:1013:42 | source(...) : Object | LogInjectionTest.java:1013:26:1013:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1013:35:1013:42 | source(...) | user-provided value | +| LogInjectionTest.java:1014:116:1014:132 | (...)... | LogInjectionTest.java:1014:125:1014:132 | source(...) : Object | LogInjectionTest.java:1014:116:1014:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1014:125:1014:132 | source(...) | user-provided value | +| LogInjectionTest.java:1015:101:1015:117 | (...)... | LogInjectionTest.java:1015:110:1015:117 | source(...) : Object | LogInjectionTest.java:1015:101:1015:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1015:110:1015:117 | source(...) | user-provided value | +| LogInjectionTest.java:1016:86:1016:102 | (...)... | LogInjectionTest.java:1016:95:1016:102 | source(...) : Object | LogInjectionTest.java:1016:86:1016:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1016:95:1016:102 | source(...) | user-provided value | +| LogInjectionTest.java:1017:71:1017:87 | (...)... | LogInjectionTest.java:1017:80:1017:87 | source(...) : Object | LogInjectionTest.java:1017:71:1017:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1017:80:1017:87 | source(...) | user-provided value | +| LogInjectionTest.java:1018:56:1018:72 | (...)... | LogInjectionTest.java:1018:65:1018:72 | source(...) : Object | LogInjectionTest.java:1018:56:1018:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1018:65:1018:72 | source(...) | user-provided value | +| LogInjectionTest.java:1019:41:1019:57 | (...)... | LogInjectionTest.java:1019:50:1019:57 | source(...) : Object | LogInjectionTest.java:1019:41:1019:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1019:50:1019:57 | source(...) | user-provided value | +| LogInjectionTest.java:1020:26:1020:42 | (...)... | LogInjectionTest.java:1020:35:1020:42 | source(...) : Object | LogInjectionTest.java:1020:26:1020:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1020:35:1020:42 | source(...) | user-provided value | +| LogInjectionTest.java:1021:131:1021:147 | (...)... | LogInjectionTest.java:1021:140:1021:147 | source(...) : Object | LogInjectionTest.java:1021:131:1021:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1021:140:1021:147 | source(...) | user-provided value | +| LogInjectionTest.java:1022:116:1022:132 | (...)... | LogInjectionTest.java:1022:125:1022:132 | source(...) : Object | LogInjectionTest.java:1022:116:1022:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1022:125:1022:132 | source(...) | user-provided value | +| LogInjectionTest.java:1023:101:1023:117 | (...)... | LogInjectionTest.java:1023:110:1023:117 | source(...) : Object | LogInjectionTest.java:1023:101:1023:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1023:110:1023:117 | source(...) | user-provided value | +| LogInjectionTest.java:1024:86:1024:102 | (...)... | LogInjectionTest.java:1024:95:1024:102 | source(...) : Object | LogInjectionTest.java:1024:86:1024:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1024:95:1024:102 | source(...) | user-provided value | +| LogInjectionTest.java:1025:71:1025:87 | (...)... | LogInjectionTest.java:1025:80:1025:87 | source(...) : Object | LogInjectionTest.java:1025:71:1025:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1025:80:1025:87 | source(...) | user-provided value | +| LogInjectionTest.java:1026:56:1026:72 | (...)... | LogInjectionTest.java:1026:65:1026:72 | source(...) : Object | LogInjectionTest.java:1026:56:1026:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1026:65:1026:72 | source(...) | user-provided value | +| LogInjectionTest.java:1027:41:1027:57 | (...)... | LogInjectionTest.java:1027:50:1027:57 | source(...) : Object | LogInjectionTest.java:1027:41:1027:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1027:50:1027:57 | source(...) | user-provided value | +| LogInjectionTest.java:1028:26:1028:42 | (...)... | LogInjectionTest.java:1028:35:1028:42 | source(...) : Object | LogInjectionTest.java:1028:26:1028:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1028:35:1028:42 | source(...) | user-provided value | | LogInjectionTest.java:1029:146:1029:162 | (...)... | LogInjectionTest.java:1029:155:1029:162 | source(...) : Object | LogInjectionTest.java:1029:146:1029:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1029:155:1029:162 | source(...) | user-provided value | | LogInjectionTest.java:1030:131:1030:147 | (...)... | LogInjectionTest.java:1030:140:1030:147 | source(...) : Object | LogInjectionTest.java:1030:131:1030:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1030:140:1030:147 | source(...) | user-provided value | | LogInjectionTest.java:1031:116:1031:132 | (...)... | LogInjectionTest.java:1031:125:1031:132 | source(...) : Object | LogInjectionTest.java:1031:116:1031:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1031:125:1031:132 | source(...) | user-provided value | @@ -885,67 +877,67 @@ | LogInjectionTest.java:1035:56:1035:72 | (...)... | LogInjectionTest.java:1035:65:1035:72 | source(...) : Object | LogInjectionTest.java:1035:56:1035:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1035:65:1035:72 | source(...) | user-provided value | | LogInjectionTest.java:1036:41:1036:57 | (...)... | LogInjectionTest.java:1036:50:1036:57 | source(...) : Object | LogInjectionTest.java:1036:41:1036:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1036:50:1036:57 | source(...) | user-provided value | | LogInjectionTest.java:1037:26:1037:42 | (...)... | LogInjectionTest.java:1037:35:1037:42 | source(...) : Object | LogInjectionTest.java:1037:26:1037:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1037:35:1037:42 | source(...) | user-provided value | -| LogInjectionTest.java:1038:26:1038:42 | (...)... | LogInjectionTest.java:1038:35:1038:42 | source(...) : Object | LogInjectionTest.java:1038:26:1038:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1038:35:1038:42 | source(...) | user-provided value | -| LogInjectionTest.java:1039:41:1039:62 | (...)... | LogInjectionTest.java:1039:55:1039:62 | source(...) : Object | LogInjectionTest.java:1039:41:1039:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1039:55:1039:62 | source(...) | user-provided value | -| LogInjectionTest.java:1040:26:1040:42 | (...)... | LogInjectionTest.java:1040:35:1040:42 | source(...) : Object | LogInjectionTest.java:1040:26:1040:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1040:35:1040:42 | source(...) | user-provided value | -| LogInjectionTest.java:1041:26:1041:47 | (...)... | LogInjectionTest.java:1041:40:1041:47 | source(...) : Object | LogInjectionTest.java:1041:26:1041:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1041:40:1041:47 | source(...) | user-provided value | -| LogInjectionTest.java:1042:26:1042:47 | (...)... | LogInjectionTest.java:1042:40:1042:47 | source(...) : Object | LogInjectionTest.java:1042:26:1042:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1042:40:1042:47 | source(...) | user-provided value | -| LogInjectionTest.java:1043:25:1043:47 | (...)... | LogInjectionTest.java:1043:40:1043:47 | source(...) : Object | LogInjectionTest.java:1043:25:1043:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1043:40:1043:47 | source(...) | user-provided value | -| LogInjectionTest.java:1044:25:1044:47 | (...)... | LogInjectionTest.java:1044:40:1044:47 | source(...) : Object | LogInjectionTest.java:1044:25:1044:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1044:40:1044:47 | source(...) | user-provided value | -| LogInjectionTest.java:1045:40:1045:62 | (...)... | LogInjectionTest.java:1045:55:1045:62 | source(...) : Object | LogInjectionTest.java:1045:40:1045:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1045:55:1045:62 | source(...) | user-provided value | -| LogInjectionTest.java:1046:40:1046:62 | (...)... | LogInjectionTest.java:1046:55:1046:62 | source(...) : Object | LogInjectionTest.java:1046:40:1046:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1046:55:1046:62 | source(...) | user-provided value | -| LogInjectionTest.java:1047:40:1047:57 | (...)... | LogInjectionTest.java:1047:50:1047:57 | source(...) : Object | LogInjectionTest.java:1047:40:1047:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1047:50:1047:57 | source(...) | user-provided value | -| LogInjectionTest.java:1048:40:1048:65 | (...)... | LogInjectionTest.java:1048:58:1048:65 | source(...) : Object | LogInjectionTest.java:1048:40:1048:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1048:58:1048:65 | source(...) | user-provided value | -| LogInjectionTest.java:1049:40:1049:65 | (...)... | LogInjectionTest.java:1049:58:1049:65 | source(...) : Object | LogInjectionTest.java:1049:40:1049:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1049:58:1049:65 | source(...) | user-provided value | -| LogInjectionTest.java:1050:40:1050:47 | source(...) | LogInjectionTest.java:1050:40:1050:47 | source(...) | LogInjectionTest.java:1050:40:1050:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1050:40:1050:47 | source(...) | user-provided value | -| LogInjectionTest.java:1051:40:1051:56 | (...)... | LogInjectionTest.java:1051:49:1051:56 | source(...) : Object | LogInjectionTest.java:1051:40:1051:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1051:49:1051:56 | source(...) | user-provided value | -| LogInjectionTest.java:1052:40:1052:56 | (...)... | LogInjectionTest.java:1052:49:1052:56 | source(...) : Object | LogInjectionTest.java:1052:40:1052:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1052:49:1052:56 | source(...) | user-provided value | -| LogInjectionTest.java:1053:55:1053:77 | new Object[] | LogInjectionTest.java:1053:69:1053:76 | source(...) : Object | LogInjectionTest.java:1053:55:1053:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1053:69:1053:76 | source(...) | user-provided value | -| LogInjectionTest.java:1054:55:1054:71 | (...)... | LogInjectionTest.java:1054:64:1054:71 | source(...) : Object | LogInjectionTest.java:1054:55:1054:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1054:64:1054:71 | source(...) | user-provided value | -| LogInjectionTest.java:1055:40:1055:56 | (...)... | LogInjectionTest.java:1055:49:1055:56 | source(...) : Object | LogInjectionTest.java:1055:40:1055:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1055:49:1055:56 | source(...) | user-provided value | -| LogInjectionTest.java:1056:70:1056:86 | (...)... | LogInjectionTest.java:1056:79:1056:86 | source(...) : Object | LogInjectionTest.java:1056:70:1056:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1056:79:1056:86 | source(...) | user-provided value | -| LogInjectionTest.java:1057:55:1057:71 | (...)... | LogInjectionTest.java:1057:64:1057:71 | source(...) : Object | LogInjectionTest.java:1057:55:1057:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1057:64:1057:71 | source(...) | user-provided value | -| LogInjectionTest.java:1058:40:1058:56 | (...)... | LogInjectionTest.java:1058:49:1058:56 | source(...) : Object | LogInjectionTest.java:1058:40:1058:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1058:49:1058:56 | source(...) | user-provided value | -| LogInjectionTest.java:1059:85:1059:101 | (...)... | LogInjectionTest.java:1059:94:1059:101 | source(...) : Object | LogInjectionTest.java:1059:85:1059:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1059:94:1059:101 | source(...) | user-provided value | -| LogInjectionTest.java:1060:70:1060:86 | (...)... | LogInjectionTest.java:1060:79:1060:86 | source(...) : Object | LogInjectionTest.java:1060:70:1060:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1060:79:1060:86 | source(...) | user-provided value | -| LogInjectionTest.java:1061:55:1061:71 | (...)... | LogInjectionTest.java:1061:64:1061:71 | source(...) : Object | LogInjectionTest.java:1061:55:1061:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1061:64:1061:71 | source(...) | user-provided value | +| LogInjectionTest.java:1038:161:1038:177 | (...)... | LogInjectionTest.java:1038:170:1038:177 | source(...) : Object | LogInjectionTest.java:1038:161:1038:177 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1038:170:1038:177 | source(...) | user-provided value | +| LogInjectionTest.java:1039:146:1039:162 | (...)... | LogInjectionTest.java:1039:155:1039:162 | source(...) : Object | LogInjectionTest.java:1039:146:1039:162 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1039:155:1039:162 | source(...) | user-provided value | +| LogInjectionTest.java:1040:131:1040:147 | (...)... | LogInjectionTest.java:1040:140:1040:147 | source(...) : Object | LogInjectionTest.java:1040:131:1040:147 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1040:140:1040:147 | source(...) | user-provided value | +| LogInjectionTest.java:1041:116:1041:132 | (...)... | LogInjectionTest.java:1041:125:1041:132 | source(...) : Object | LogInjectionTest.java:1041:116:1041:132 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1041:125:1041:132 | source(...) | user-provided value | +| LogInjectionTest.java:1042:101:1042:117 | (...)... | LogInjectionTest.java:1042:110:1042:117 | source(...) : Object | LogInjectionTest.java:1042:101:1042:117 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1042:110:1042:117 | source(...) | user-provided value | +| LogInjectionTest.java:1043:86:1043:102 | (...)... | LogInjectionTest.java:1043:95:1043:102 | source(...) : Object | LogInjectionTest.java:1043:86:1043:102 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1043:95:1043:102 | source(...) | user-provided value | +| LogInjectionTest.java:1044:71:1044:87 | (...)... | LogInjectionTest.java:1044:80:1044:87 | source(...) : Object | LogInjectionTest.java:1044:71:1044:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1044:80:1044:87 | source(...) | user-provided value | +| LogInjectionTest.java:1045:56:1045:72 | (...)... | LogInjectionTest.java:1045:65:1045:72 | source(...) : Object | LogInjectionTest.java:1045:56:1045:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1045:65:1045:72 | source(...) | user-provided value | +| LogInjectionTest.java:1046:41:1046:57 | (...)... | LogInjectionTest.java:1046:50:1046:57 | source(...) : Object | LogInjectionTest.java:1046:41:1046:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1046:50:1046:57 | source(...) | user-provided value | +| LogInjectionTest.java:1047:26:1047:42 | (...)... | LogInjectionTest.java:1047:35:1047:42 | source(...) : Object | LogInjectionTest.java:1047:26:1047:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1047:35:1047:42 | source(...) | user-provided value | +| LogInjectionTest.java:1048:26:1048:42 | (...)... | LogInjectionTest.java:1048:35:1048:42 | source(...) : Object | LogInjectionTest.java:1048:26:1048:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1048:35:1048:42 | source(...) | user-provided value | +| LogInjectionTest.java:1049:41:1049:62 | (...)... | LogInjectionTest.java:1049:55:1049:62 | source(...) : Object | LogInjectionTest.java:1049:41:1049:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1049:55:1049:62 | source(...) | user-provided value | +| LogInjectionTest.java:1050:26:1050:42 | (...)... | LogInjectionTest.java:1050:35:1050:42 | source(...) : Object | LogInjectionTest.java:1050:26:1050:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1050:35:1050:42 | source(...) | user-provided value | +| LogInjectionTest.java:1051:26:1051:47 | (...)... | LogInjectionTest.java:1051:40:1051:47 | source(...) : Object | LogInjectionTest.java:1051:26:1051:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1051:40:1051:47 | source(...) | user-provided value | +| LogInjectionTest.java:1052:26:1052:47 | (...)... | LogInjectionTest.java:1052:40:1052:47 | source(...) : Object | LogInjectionTest.java:1052:26:1052:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1052:40:1052:47 | source(...) | user-provided value | +| LogInjectionTest.java:1053:25:1053:47 | (...)... | LogInjectionTest.java:1053:40:1053:47 | source(...) : Object | LogInjectionTest.java:1053:25:1053:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1053:40:1053:47 | source(...) | user-provided value | +| LogInjectionTest.java:1054:25:1054:47 | (...)... | LogInjectionTest.java:1054:40:1054:47 | source(...) : Object | LogInjectionTest.java:1054:25:1054:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1054:40:1054:47 | source(...) | user-provided value | +| LogInjectionTest.java:1055:40:1055:62 | (...)... | LogInjectionTest.java:1055:55:1055:62 | source(...) : Object | LogInjectionTest.java:1055:40:1055:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1055:55:1055:62 | source(...) | user-provided value | +| LogInjectionTest.java:1056:40:1056:62 | (...)... | LogInjectionTest.java:1056:55:1056:62 | source(...) : Object | LogInjectionTest.java:1056:40:1056:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1056:55:1056:62 | source(...) | user-provided value | +| LogInjectionTest.java:1057:40:1057:57 | (...)... | LogInjectionTest.java:1057:50:1057:57 | source(...) : Object | LogInjectionTest.java:1057:40:1057:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1057:50:1057:57 | source(...) | user-provided value | +| LogInjectionTest.java:1058:40:1058:65 | (...)... | LogInjectionTest.java:1058:58:1058:65 | source(...) : Object | LogInjectionTest.java:1058:40:1058:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1058:58:1058:65 | source(...) | user-provided value | +| LogInjectionTest.java:1059:40:1059:65 | (...)... | LogInjectionTest.java:1059:58:1059:65 | source(...) : Object | LogInjectionTest.java:1059:40:1059:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1059:58:1059:65 | source(...) | user-provided value | +| LogInjectionTest.java:1060:40:1060:47 | source(...) | LogInjectionTest.java:1060:40:1060:47 | source(...) | LogInjectionTest.java:1060:40:1060:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1060:40:1060:47 | source(...) | user-provided value | +| LogInjectionTest.java:1061:40:1061:56 | (...)... | LogInjectionTest.java:1061:49:1061:56 | source(...) : Object | LogInjectionTest.java:1061:40:1061:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1061:49:1061:56 | source(...) | user-provided value | | LogInjectionTest.java:1062:40:1062:56 | (...)... | LogInjectionTest.java:1062:49:1062:56 | source(...) : Object | LogInjectionTest.java:1062:40:1062:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1062:49:1062:56 | source(...) | user-provided value | -| LogInjectionTest.java:1063:100:1063:116 | (...)... | LogInjectionTest.java:1063:109:1063:116 | source(...) : Object | LogInjectionTest.java:1063:100:1063:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1063:109:1063:116 | source(...) | user-provided value | -| LogInjectionTest.java:1064:85:1064:101 | (...)... | LogInjectionTest.java:1064:94:1064:101 | source(...) : Object | LogInjectionTest.java:1064:85:1064:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1064:94:1064:101 | source(...) | user-provided value | -| LogInjectionTest.java:1065:70:1065:86 | (...)... | LogInjectionTest.java:1065:79:1065:86 | source(...) : Object | LogInjectionTest.java:1065:70:1065:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1065:79:1065:86 | source(...) | user-provided value | -| LogInjectionTest.java:1066:55:1066:71 | (...)... | LogInjectionTest.java:1066:64:1066:71 | source(...) : Object | LogInjectionTest.java:1066:55:1066:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1066:64:1066:71 | source(...) | user-provided value | -| LogInjectionTest.java:1067:40:1067:56 | (...)... | LogInjectionTest.java:1067:49:1067:56 | source(...) : Object | LogInjectionTest.java:1067:40:1067:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1067:49:1067:56 | source(...) | user-provided value | -| LogInjectionTest.java:1068:115:1068:131 | (...)... | LogInjectionTest.java:1068:124:1068:131 | source(...) : Object | LogInjectionTest.java:1068:115:1068:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1068:124:1068:131 | source(...) | user-provided value | -| LogInjectionTest.java:1069:100:1069:116 | (...)... | LogInjectionTest.java:1069:109:1069:116 | source(...) : Object | LogInjectionTest.java:1069:100:1069:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1069:109:1069:116 | source(...) | user-provided value | -| LogInjectionTest.java:1070:85:1070:101 | (...)... | LogInjectionTest.java:1070:94:1070:101 | source(...) : Object | LogInjectionTest.java:1070:85:1070:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1070:94:1070:101 | source(...) | user-provided value | -| LogInjectionTest.java:1071:70:1071:86 | (...)... | LogInjectionTest.java:1071:79:1071:86 | source(...) : Object | LogInjectionTest.java:1071:70:1071:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1071:79:1071:86 | source(...) | user-provided value | -| LogInjectionTest.java:1072:55:1072:71 | (...)... | LogInjectionTest.java:1072:64:1072:71 | source(...) : Object | LogInjectionTest.java:1072:55:1072:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1072:64:1072:71 | source(...) | user-provided value | -| LogInjectionTest.java:1073:40:1073:56 | (...)... | LogInjectionTest.java:1073:49:1073:56 | source(...) : Object | LogInjectionTest.java:1073:40:1073:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1073:49:1073:56 | source(...) | user-provided value | -| LogInjectionTest.java:1074:130:1074:146 | (...)... | LogInjectionTest.java:1074:139:1074:146 | source(...) : Object | LogInjectionTest.java:1074:130:1074:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1074:139:1074:146 | source(...) | user-provided value | -| LogInjectionTest.java:1075:115:1075:131 | (...)... | LogInjectionTest.java:1075:124:1075:131 | source(...) : Object | LogInjectionTest.java:1075:115:1075:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1075:124:1075:131 | source(...) | user-provided value | -| LogInjectionTest.java:1076:100:1076:116 | (...)... | LogInjectionTest.java:1076:109:1076:116 | source(...) : Object | LogInjectionTest.java:1076:100:1076:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1076:109:1076:116 | source(...) | user-provided value | -| LogInjectionTest.java:1077:85:1077:101 | (...)... | LogInjectionTest.java:1077:94:1077:101 | source(...) : Object | LogInjectionTest.java:1077:85:1077:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1077:94:1077:101 | source(...) | user-provided value | -| LogInjectionTest.java:1078:70:1078:86 | (...)... | LogInjectionTest.java:1078:79:1078:86 | source(...) : Object | LogInjectionTest.java:1078:70:1078:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1078:79:1078:86 | source(...) | user-provided value | -| LogInjectionTest.java:1079:55:1079:71 | (...)... | LogInjectionTest.java:1079:64:1079:71 | source(...) : Object | LogInjectionTest.java:1079:55:1079:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1079:64:1079:71 | source(...) | user-provided value | -| LogInjectionTest.java:1080:40:1080:56 | (...)... | LogInjectionTest.java:1080:49:1080:56 | source(...) : Object | LogInjectionTest.java:1080:40:1080:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1080:49:1080:56 | source(...) | user-provided value | -| LogInjectionTest.java:1081:145:1081:161 | (...)... | LogInjectionTest.java:1081:154:1081:161 | source(...) : Object | LogInjectionTest.java:1081:145:1081:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1081:154:1081:161 | source(...) | user-provided value | -| LogInjectionTest.java:1082:130:1082:146 | (...)... | LogInjectionTest.java:1082:139:1082:146 | source(...) : Object | LogInjectionTest.java:1082:130:1082:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1082:139:1082:146 | source(...) | user-provided value | -| LogInjectionTest.java:1083:115:1083:131 | (...)... | LogInjectionTest.java:1083:124:1083:131 | source(...) : Object | LogInjectionTest.java:1083:115:1083:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1083:124:1083:131 | source(...) | user-provided value | -| LogInjectionTest.java:1084:100:1084:116 | (...)... | LogInjectionTest.java:1084:109:1084:116 | source(...) : Object | LogInjectionTest.java:1084:100:1084:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1084:109:1084:116 | source(...) | user-provided value | -| LogInjectionTest.java:1085:85:1085:101 | (...)... | LogInjectionTest.java:1085:94:1085:101 | source(...) : Object | LogInjectionTest.java:1085:85:1085:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1085:94:1085:101 | source(...) | user-provided value | -| LogInjectionTest.java:1086:70:1086:86 | (...)... | LogInjectionTest.java:1086:79:1086:86 | source(...) : Object | LogInjectionTest.java:1086:70:1086:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1086:79:1086:86 | source(...) | user-provided value | -| LogInjectionTest.java:1087:55:1087:71 | (...)... | LogInjectionTest.java:1087:64:1087:71 | source(...) : Object | LogInjectionTest.java:1087:55:1087:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1087:64:1087:71 | source(...) | user-provided value | -| LogInjectionTest.java:1088:40:1088:56 | (...)... | LogInjectionTest.java:1088:49:1088:56 | source(...) : Object | LogInjectionTest.java:1088:40:1088:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1088:49:1088:56 | source(...) | user-provided value | -| LogInjectionTest.java:1089:160:1089:176 | (...)... | LogInjectionTest.java:1089:169:1089:176 | source(...) : Object | LogInjectionTest.java:1089:160:1089:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1089:169:1089:176 | source(...) | user-provided value | -| LogInjectionTest.java:1090:145:1090:161 | (...)... | LogInjectionTest.java:1090:154:1090:161 | source(...) : Object | LogInjectionTest.java:1090:145:1090:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1090:154:1090:161 | source(...) | user-provided value | -| LogInjectionTest.java:1091:130:1091:146 | (...)... | LogInjectionTest.java:1091:139:1091:146 | source(...) : Object | LogInjectionTest.java:1091:130:1091:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1091:139:1091:146 | source(...) | user-provided value | -| LogInjectionTest.java:1092:115:1092:131 | (...)... | LogInjectionTest.java:1092:124:1092:131 | source(...) : Object | LogInjectionTest.java:1092:115:1092:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1092:124:1092:131 | source(...) | user-provided value | -| LogInjectionTest.java:1093:100:1093:116 | (...)... | LogInjectionTest.java:1093:109:1093:116 | source(...) : Object | LogInjectionTest.java:1093:100:1093:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1093:109:1093:116 | source(...) | user-provided value | -| LogInjectionTest.java:1094:85:1094:101 | (...)... | LogInjectionTest.java:1094:94:1094:101 | source(...) : Object | LogInjectionTest.java:1094:85:1094:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1094:94:1094:101 | source(...) | user-provided value | -| LogInjectionTest.java:1095:70:1095:86 | (...)... | LogInjectionTest.java:1095:79:1095:86 | source(...) : Object | LogInjectionTest.java:1095:70:1095:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1095:79:1095:86 | source(...) | user-provided value | -| LogInjectionTest.java:1096:55:1096:71 | (...)... | LogInjectionTest.java:1096:64:1096:71 | source(...) : Object | LogInjectionTest.java:1096:55:1096:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1096:64:1096:71 | source(...) | user-provided value | -| LogInjectionTest.java:1097:40:1097:56 | (...)... | LogInjectionTest.java:1097:49:1097:56 | source(...) : Object | LogInjectionTest.java:1097:40:1097:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1097:49:1097:56 | source(...) | user-provided value | -| LogInjectionTest.java:1098:175:1098:191 | (...)... | LogInjectionTest.java:1098:184:1098:191 | source(...) : Object | LogInjectionTest.java:1098:175:1098:191 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1098:184:1098:191 | source(...) | user-provided value | +| LogInjectionTest.java:1063:55:1063:77 | new Object[] | LogInjectionTest.java:1063:69:1063:76 | source(...) : Object | LogInjectionTest.java:1063:55:1063:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1063:69:1063:76 | source(...) | user-provided value | +| LogInjectionTest.java:1064:55:1064:71 | (...)... | LogInjectionTest.java:1064:64:1064:71 | source(...) : Object | LogInjectionTest.java:1064:55:1064:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1064:64:1064:71 | source(...) | user-provided value | +| LogInjectionTest.java:1065:40:1065:56 | (...)... | LogInjectionTest.java:1065:49:1065:56 | source(...) : Object | LogInjectionTest.java:1065:40:1065:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1065:49:1065:56 | source(...) | user-provided value | +| LogInjectionTest.java:1066:70:1066:86 | (...)... | LogInjectionTest.java:1066:79:1066:86 | source(...) : Object | LogInjectionTest.java:1066:70:1066:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1066:79:1066:86 | source(...) | user-provided value | +| LogInjectionTest.java:1067:55:1067:71 | (...)... | LogInjectionTest.java:1067:64:1067:71 | source(...) : Object | LogInjectionTest.java:1067:55:1067:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1067:64:1067:71 | source(...) | user-provided value | +| LogInjectionTest.java:1068:40:1068:56 | (...)... | LogInjectionTest.java:1068:49:1068:56 | source(...) : Object | LogInjectionTest.java:1068:40:1068:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1068:49:1068:56 | source(...) | user-provided value | +| LogInjectionTest.java:1069:85:1069:101 | (...)... | LogInjectionTest.java:1069:94:1069:101 | source(...) : Object | LogInjectionTest.java:1069:85:1069:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1069:94:1069:101 | source(...) | user-provided value | +| LogInjectionTest.java:1070:70:1070:86 | (...)... | LogInjectionTest.java:1070:79:1070:86 | source(...) : Object | LogInjectionTest.java:1070:70:1070:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1070:79:1070:86 | source(...) | user-provided value | +| LogInjectionTest.java:1071:55:1071:71 | (...)... | LogInjectionTest.java:1071:64:1071:71 | source(...) : Object | LogInjectionTest.java:1071:55:1071:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1071:64:1071:71 | source(...) | user-provided value | +| LogInjectionTest.java:1072:40:1072:56 | (...)... | LogInjectionTest.java:1072:49:1072:56 | source(...) : Object | LogInjectionTest.java:1072:40:1072:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1072:49:1072:56 | source(...) | user-provided value | +| LogInjectionTest.java:1073:100:1073:116 | (...)... | LogInjectionTest.java:1073:109:1073:116 | source(...) : Object | LogInjectionTest.java:1073:100:1073:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1073:109:1073:116 | source(...) | user-provided value | +| LogInjectionTest.java:1074:85:1074:101 | (...)... | LogInjectionTest.java:1074:94:1074:101 | source(...) : Object | LogInjectionTest.java:1074:85:1074:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1074:94:1074:101 | source(...) | user-provided value | +| LogInjectionTest.java:1075:70:1075:86 | (...)... | LogInjectionTest.java:1075:79:1075:86 | source(...) : Object | LogInjectionTest.java:1075:70:1075:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1075:79:1075:86 | source(...) | user-provided value | +| LogInjectionTest.java:1076:55:1076:71 | (...)... | LogInjectionTest.java:1076:64:1076:71 | source(...) : Object | LogInjectionTest.java:1076:55:1076:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1076:64:1076:71 | source(...) | user-provided value | +| LogInjectionTest.java:1077:40:1077:56 | (...)... | LogInjectionTest.java:1077:49:1077:56 | source(...) : Object | LogInjectionTest.java:1077:40:1077:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1077:49:1077:56 | source(...) | user-provided value | +| LogInjectionTest.java:1078:115:1078:131 | (...)... | LogInjectionTest.java:1078:124:1078:131 | source(...) : Object | LogInjectionTest.java:1078:115:1078:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1078:124:1078:131 | source(...) | user-provided value | +| LogInjectionTest.java:1079:100:1079:116 | (...)... | LogInjectionTest.java:1079:109:1079:116 | source(...) : Object | LogInjectionTest.java:1079:100:1079:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1079:109:1079:116 | source(...) | user-provided value | +| LogInjectionTest.java:1080:85:1080:101 | (...)... | LogInjectionTest.java:1080:94:1080:101 | source(...) : Object | LogInjectionTest.java:1080:85:1080:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1080:94:1080:101 | source(...) | user-provided value | +| LogInjectionTest.java:1081:70:1081:86 | (...)... | LogInjectionTest.java:1081:79:1081:86 | source(...) : Object | LogInjectionTest.java:1081:70:1081:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1081:79:1081:86 | source(...) | user-provided value | +| LogInjectionTest.java:1082:55:1082:71 | (...)... | LogInjectionTest.java:1082:64:1082:71 | source(...) : Object | LogInjectionTest.java:1082:55:1082:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1082:64:1082:71 | source(...) | user-provided value | +| LogInjectionTest.java:1083:40:1083:56 | (...)... | LogInjectionTest.java:1083:49:1083:56 | source(...) : Object | LogInjectionTest.java:1083:40:1083:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1083:49:1083:56 | source(...) | user-provided value | +| LogInjectionTest.java:1084:130:1084:146 | (...)... | LogInjectionTest.java:1084:139:1084:146 | source(...) : Object | LogInjectionTest.java:1084:130:1084:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1084:139:1084:146 | source(...) | user-provided value | +| LogInjectionTest.java:1085:115:1085:131 | (...)... | LogInjectionTest.java:1085:124:1085:131 | source(...) : Object | LogInjectionTest.java:1085:115:1085:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1085:124:1085:131 | source(...) | user-provided value | +| LogInjectionTest.java:1086:100:1086:116 | (...)... | LogInjectionTest.java:1086:109:1086:116 | source(...) : Object | LogInjectionTest.java:1086:100:1086:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1086:109:1086:116 | source(...) | user-provided value | +| LogInjectionTest.java:1087:85:1087:101 | (...)... | LogInjectionTest.java:1087:94:1087:101 | source(...) : Object | LogInjectionTest.java:1087:85:1087:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1087:94:1087:101 | source(...) | user-provided value | +| LogInjectionTest.java:1088:70:1088:86 | (...)... | LogInjectionTest.java:1088:79:1088:86 | source(...) : Object | LogInjectionTest.java:1088:70:1088:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1088:79:1088:86 | source(...) | user-provided value | +| LogInjectionTest.java:1089:55:1089:71 | (...)... | LogInjectionTest.java:1089:64:1089:71 | source(...) : Object | LogInjectionTest.java:1089:55:1089:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1089:64:1089:71 | source(...) | user-provided value | +| LogInjectionTest.java:1090:40:1090:56 | (...)... | LogInjectionTest.java:1090:49:1090:56 | source(...) : Object | LogInjectionTest.java:1090:40:1090:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1090:49:1090:56 | source(...) | user-provided value | +| LogInjectionTest.java:1091:145:1091:161 | (...)... | LogInjectionTest.java:1091:154:1091:161 | source(...) : Object | LogInjectionTest.java:1091:145:1091:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1091:154:1091:161 | source(...) | user-provided value | +| LogInjectionTest.java:1092:130:1092:146 | (...)... | LogInjectionTest.java:1092:139:1092:146 | source(...) : Object | LogInjectionTest.java:1092:130:1092:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1092:139:1092:146 | source(...) | user-provided value | +| LogInjectionTest.java:1093:115:1093:131 | (...)... | LogInjectionTest.java:1093:124:1093:131 | source(...) : Object | LogInjectionTest.java:1093:115:1093:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1093:124:1093:131 | source(...) | user-provided value | +| LogInjectionTest.java:1094:100:1094:116 | (...)... | LogInjectionTest.java:1094:109:1094:116 | source(...) : Object | LogInjectionTest.java:1094:100:1094:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1094:109:1094:116 | source(...) | user-provided value | +| LogInjectionTest.java:1095:85:1095:101 | (...)... | LogInjectionTest.java:1095:94:1095:101 | source(...) : Object | LogInjectionTest.java:1095:85:1095:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1095:94:1095:101 | source(...) | user-provided value | +| LogInjectionTest.java:1096:70:1096:86 | (...)... | LogInjectionTest.java:1096:79:1096:86 | source(...) : Object | LogInjectionTest.java:1096:70:1096:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1096:79:1096:86 | source(...) | user-provided value | +| LogInjectionTest.java:1097:55:1097:71 | (...)... | LogInjectionTest.java:1097:64:1097:71 | source(...) : Object | LogInjectionTest.java:1097:55:1097:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1097:64:1097:71 | source(...) | user-provided value | +| LogInjectionTest.java:1098:40:1098:56 | (...)... | LogInjectionTest.java:1098:49:1098:56 | source(...) : Object | LogInjectionTest.java:1098:40:1098:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1098:49:1098:56 | source(...) | user-provided value | | LogInjectionTest.java:1099:160:1099:176 | (...)... | LogInjectionTest.java:1099:169:1099:176 | source(...) : Object | LogInjectionTest.java:1099:160:1099:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1099:169:1099:176 | source(...) | user-provided value | | LogInjectionTest.java:1100:145:1100:161 | (...)... | LogInjectionTest.java:1100:154:1100:161 | source(...) : Object | LogInjectionTest.java:1100:145:1100:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1100:154:1100:161 | source(...) | user-provided value | | LogInjectionTest.java:1101:130:1101:146 | (...)... | LogInjectionTest.java:1101:139:1101:146 | source(...) : Object | LogInjectionTest.java:1101:130:1101:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1101:139:1101:146 | source(...) | user-provided value | @@ -955,65 +947,65 @@ | LogInjectionTest.java:1105:70:1105:86 | (...)... | LogInjectionTest.java:1105:79:1105:86 | source(...) : Object | LogInjectionTest.java:1105:70:1105:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1105:79:1105:86 | source(...) | user-provided value | | LogInjectionTest.java:1106:55:1106:71 | (...)... | LogInjectionTest.java:1106:64:1106:71 | source(...) : Object | LogInjectionTest.java:1106:55:1106:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1106:64:1106:71 | source(...) | user-provided value | | LogInjectionTest.java:1107:40:1107:56 | (...)... | LogInjectionTest.java:1107:49:1107:56 | source(...) : Object | LogInjectionTest.java:1107:40:1107:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1107:49:1107:56 | source(...) | user-provided value | -| LogInjectionTest.java:1108:40:1108:56 | (...)... | LogInjectionTest.java:1108:49:1108:56 | source(...) : Object | LogInjectionTest.java:1108:40:1108:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1108:49:1108:56 | source(...) | user-provided value | -| LogInjectionTest.java:1109:55:1109:76 | (...)... | LogInjectionTest.java:1109:69:1109:76 | source(...) : Object | LogInjectionTest.java:1109:55:1109:76 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1109:69:1109:76 | source(...) | user-provided value | -| LogInjectionTest.java:1110:40:1110:56 | (...)... | LogInjectionTest.java:1110:49:1110:56 | source(...) : Object | LogInjectionTest.java:1110:40:1110:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1110:49:1110:56 | source(...) | user-provided value | -| LogInjectionTest.java:1111:40:1111:61 | (...)... | LogInjectionTest.java:1111:54:1111:61 | source(...) : Object | LogInjectionTest.java:1111:40:1111:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1111:54:1111:61 | source(...) | user-provided value | -| LogInjectionTest.java:1112:40:1112:61 | (...)... | LogInjectionTest.java:1112:54:1112:61 | source(...) : Object | LogInjectionTest.java:1112:40:1112:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1112:54:1112:61 | source(...) | user-provided value | -| LogInjectionTest.java:1113:25:1113:50 | (...)... | LogInjectionTest.java:1113:43:1113:50 | source(...) : Object | LogInjectionTest.java:1113:25:1113:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1113:43:1113:50 | source(...) | user-provided value | -| LogInjectionTest.java:1114:25:1114:50 | (...)... | LogInjectionTest.java:1114:43:1114:50 | source(...) : Object | LogInjectionTest.java:1114:25:1114:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1114:43:1114:50 | source(...) | user-provided value | -| LogInjectionTest.java:1115:25:1115:42 | (...)... | LogInjectionTest.java:1115:35:1115:42 | source(...) : Object | LogInjectionTest.java:1115:25:1115:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1115:35:1115:42 | source(...) | user-provided value | -| LogInjectionTest.java:1116:25:1116:42 | (...)... | LogInjectionTest.java:1116:35:1116:42 | source(...) : Object | LogInjectionTest.java:1116:25:1116:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1116:35:1116:42 | source(...) | user-provided value | -| LogInjectionTest.java:1117:25:1117:32 | source(...) | LogInjectionTest.java:1117:25:1117:32 | source(...) | LogInjectionTest.java:1117:25:1117:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1117:25:1117:32 | source(...) | user-provided value | -| LogInjectionTest.java:1118:25:1118:32 | source(...) | LogInjectionTest.java:1118:25:1118:32 | source(...) | LogInjectionTest.java:1118:25:1118:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1118:25:1118:32 | source(...) | user-provided value | -| LogInjectionTest.java:1119:25:1119:41 | (...)... | LogInjectionTest.java:1119:34:1119:41 | source(...) : Object | LogInjectionTest.java:1119:25:1119:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1119:34:1119:41 | source(...) | user-provided value | -| LogInjectionTest.java:1120:25:1120:41 | (...)... | LogInjectionTest.java:1120:34:1120:41 | source(...) : Object | LogInjectionTest.java:1120:25:1120:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1120:34:1120:41 | source(...) | user-provided value | -| LogInjectionTest.java:1121:40:1121:62 | new Object[] | LogInjectionTest.java:1121:54:1121:61 | source(...) : Object | LogInjectionTest.java:1121:40:1121:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1121:54:1121:61 | source(...) | user-provided value | -| LogInjectionTest.java:1122:40:1122:56 | (...)... | LogInjectionTest.java:1122:49:1122:56 | source(...) : Object | LogInjectionTest.java:1122:40:1122:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1122:49:1122:56 | source(...) | user-provided value | -| LogInjectionTest.java:1123:25:1123:41 | (...)... | LogInjectionTest.java:1123:34:1123:41 | source(...) : Object | LogInjectionTest.java:1123:25:1123:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1123:34:1123:41 | source(...) | user-provided value | -| LogInjectionTest.java:1124:55:1124:71 | (...)... | LogInjectionTest.java:1124:64:1124:71 | source(...) : Object | LogInjectionTest.java:1124:55:1124:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1124:64:1124:71 | source(...) | user-provided value | -| LogInjectionTest.java:1125:40:1125:56 | (...)... | LogInjectionTest.java:1125:49:1125:56 | source(...) : Object | LogInjectionTest.java:1125:40:1125:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1125:49:1125:56 | source(...) | user-provided value | -| LogInjectionTest.java:1126:25:1126:41 | (...)... | LogInjectionTest.java:1126:34:1126:41 | source(...) : Object | LogInjectionTest.java:1126:25:1126:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1126:34:1126:41 | source(...) | user-provided value | -| LogInjectionTest.java:1127:70:1127:86 | (...)... | LogInjectionTest.java:1127:79:1127:86 | source(...) : Object | LogInjectionTest.java:1127:70:1127:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1127:79:1127:86 | source(...) | user-provided value | -| LogInjectionTest.java:1128:55:1128:71 | (...)... | LogInjectionTest.java:1128:64:1128:71 | source(...) : Object | LogInjectionTest.java:1128:55:1128:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1128:64:1128:71 | source(...) | user-provided value | -| LogInjectionTest.java:1129:40:1129:56 | (...)... | LogInjectionTest.java:1129:49:1129:56 | source(...) : Object | LogInjectionTest.java:1129:40:1129:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1129:49:1129:56 | source(...) | user-provided value | +| LogInjectionTest.java:1108:175:1108:191 | (...)... | LogInjectionTest.java:1108:184:1108:191 | source(...) : Object | LogInjectionTest.java:1108:175:1108:191 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1108:184:1108:191 | source(...) | user-provided value | +| LogInjectionTest.java:1109:160:1109:176 | (...)... | LogInjectionTest.java:1109:169:1109:176 | source(...) : Object | LogInjectionTest.java:1109:160:1109:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1109:169:1109:176 | source(...) | user-provided value | +| LogInjectionTest.java:1110:145:1110:161 | (...)... | LogInjectionTest.java:1110:154:1110:161 | source(...) : Object | LogInjectionTest.java:1110:145:1110:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1110:154:1110:161 | source(...) | user-provided value | +| LogInjectionTest.java:1111:130:1111:146 | (...)... | LogInjectionTest.java:1111:139:1111:146 | source(...) : Object | LogInjectionTest.java:1111:130:1111:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1111:139:1111:146 | source(...) | user-provided value | +| LogInjectionTest.java:1112:115:1112:131 | (...)... | LogInjectionTest.java:1112:124:1112:131 | source(...) : Object | LogInjectionTest.java:1112:115:1112:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1112:124:1112:131 | source(...) | user-provided value | +| LogInjectionTest.java:1113:100:1113:116 | (...)... | LogInjectionTest.java:1113:109:1113:116 | source(...) : Object | LogInjectionTest.java:1113:100:1113:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1113:109:1113:116 | source(...) | user-provided value | +| LogInjectionTest.java:1114:85:1114:101 | (...)... | LogInjectionTest.java:1114:94:1114:101 | source(...) : Object | LogInjectionTest.java:1114:85:1114:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1114:94:1114:101 | source(...) | user-provided value | +| LogInjectionTest.java:1115:70:1115:86 | (...)... | LogInjectionTest.java:1115:79:1115:86 | source(...) : Object | LogInjectionTest.java:1115:70:1115:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1115:79:1115:86 | source(...) | user-provided value | +| LogInjectionTest.java:1116:55:1116:71 | (...)... | LogInjectionTest.java:1116:64:1116:71 | source(...) : Object | LogInjectionTest.java:1116:55:1116:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1116:64:1116:71 | source(...) | user-provided value | +| LogInjectionTest.java:1117:40:1117:56 | (...)... | LogInjectionTest.java:1117:49:1117:56 | source(...) : Object | LogInjectionTest.java:1117:40:1117:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1117:49:1117:56 | source(...) | user-provided value | +| LogInjectionTest.java:1118:40:1118:56 | (...)... | LogInjectionTest.java:1118:49:1118:56 | source(...) : Object | LogInjectionTest.java:1118:40:1118:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1118:49:1118:56 | source(...) | user-provided value | +| LogInjectionTest.java:1119:55:1119:76 | (...)... | LogInjectionTest.java:1119:69:1119:76 | source(...) : Object | LogInjectionTest.java:1119:55:1119:76 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1119:69:1119:76 | source(...) | user-provided value | +| LogInjectionTest.java:1120:40:1120:56 | (...)... | LogInjectionTest.java:1120:49:1120:56 | source(...) : Object | LogInjectionTest.java:1120:40:1120:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1120:49:1120:56 | source(...) | user-provided value | +| LogInjectionTest.java:1121:40:1121:61 | (...)... | LogInjectionTest.java:1121:54:1121:61 | source(...) : Object | LogInjectionTest.java:1121:40:1121:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1121:54:1121:61 | source(...) | user-provided value | +| LogInjectionTest.java:1122:40:1122:61 | (...)... | LogInjectionTest.java:1122:54:1122:61 | source(...) : Object | LogInjectionTest.java:1122:40:1122:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1122:54:1122:61 | source(...) | user-provided value | +| LogInjectionTest.java:1123:25:1123:50 | (...)... | LogInjectionTest.java:1123:43:1123:50 | source(...) : Object | LogInjectionTest.java:1123:25:1123:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1123:43:1123:50 | source(...) | user-provided value | +| LogInjectionTest.java:1124:25:1124:50 | (...)... | LogInjectionTest.java:1124:43:1124:50 | source(...) : Object | LogInjectionTest.java:1124:25:1124:50 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1124:43:1124:50 | source(...) | user-provided value | +| LogInjectionTest.java:1125:25:1125:42 | (...)... | LogInjectionTest.java:1125:35:1125:42 | source(...) : Object | LogInjectionTest.java:1125:25:1125:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1125:35:1125:42 | source(...) | user-provided value | +| LogInjectionTest.java:1126:25:1126:42 | (...)... | LogInjectionTest.java:1126:35:1126:42 | source(...) : Object | LogInjectionTest.java:1126:25:1126:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1126:35:1126:42 | source(...) | user-provided value | +| LogInjectionTest.java:1127:25:1127:32 | source(...) | LogInjectionTest.java:1127:25:1127:32 | source(...) | LogInjectionTest.java:1127:25:1127:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1127:25:1127:32 | source(...) | user-provided value | +| LogInjectionTest.java:1128:25:1128:32 | source(...) | LogInjectionTest.java:1128:25:1128:32 | source(...) | LogInjectionTest.java:1128:25:1128:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1128:25:1128:32 | source(...) | user-provided value | +| LogInjectionTest.java:1129:25:1129:41 | (...)... | LogInjectionTest.java:1129:34:1129:41 | source(...) : Object | LogInjectionTest.java:1129:25:1129:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1129:34:1129:41 | source(...) | user-provided value | | LogInjectionTest.java:1130:25:1130:41 | (...)... | LogInjectionTest.java:1130:34:1130:41 | source(...) : Object | LogInjectionTest.java:1130:25:1130:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1130:34:1130:41 | source(...) | user-provided value | -| LogInjectionTest.java:1131:85:1131:101 | (...)... | LogInjectionTest.java:1131:94:1131:101 | source(...) : Object | LogInjectionTest.java:1131:85:1131:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1131:94:1131:101 | source(...) | user-provided value | -| LogInjectionTest.java:1132:70:1132:86 | (...)... | LogInjectionTest.java:1132:79:1132:86 | source(...) : Object | LogInjectionTest.java:1132:70:1132:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1132:79:1132:86 | source(...) | user-provided value | -| LogInjectionTest.java:1133:55:1133:71 | (...)... | LogInjectionTest.java:1133:64:1133:71 | source(...) : Object | LogInjectionTest.java:1133:55:1133:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1133:64:1133:71 | source(...) | user-provided value | -| LogInjectionTest.java:1134:40:1134:56 | (...)... | LogInjectionTest.java:1134:49:1134:56 | source(...) : Object | LogInjectionTest.java:1134:40:1134:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1134:49:1134:56 | source(...) | user-provided value | -| LogInjectionTest.java:1135:25:1135:41 | (...)... | LogInjectionTest.java:1135:34:1135:41 | source(...) : Object | LogInjectionTest.java:1135:25:1135:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1135:34:1135:41 | source(...) | user-provided value | -| LogInjectionTest.java:1136:100:1136:116 | (...)... | LogInjectionTest.java:1136:109:1136:116 | source(...) : Object | LogInjectionTest.java:1136:100:1136:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1136:109:1136:116 | source(...) | user-provided value | -| LogInjectionTest.java:1137:85:1137:101 | (...)... | LogInjectionTest.java:1137:94:1137:101 | source(...) : Object | LogInjectionTest.java:1137:85:1137:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1137:94:1137:101 | source(...) | user-provided value | -| LogInjectionTest.java:1138:70:1138:86 | (...)... | LogInjectionTest.java:1138:79:1138:86 | source(...) : Object | LogInjectionTest.java:1138:70:1138:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1138:79:1138:86 | source(...) | user-provided value | -| LogInjectionTest.java:1139:55:1139:71 | (...)... | LogInjectionTest.java:1139:64:1139:71 | source(...) : Object | LogInjectionTest.java:1139:55:1139:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1139:64:1139:71 | source(...) | user-provided value | -| LogInjectionTest.java:1140:40:1140:56 | (...)... | LogInjectionTest.java:1140:49:1140:56 | source(...) : Object | LogInjectionTest.java:1140:40:1140:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1140:49:1140:56 | source(...) | user-provided value | -| LogInjectionTest.java:1141:25:1141:41 | (...)... | LogInjectionTest.java:1141:34:1141:41 | source(...) : Object | LogInjectionTest.java:1141:25:1141:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1141:34:1141:41 | source(...) | user-provided value | -| LogInjectionTest.java:1142:115:1142:131 | (...)... | LogInjectionTest.java:1142:124:1142:131 | source(...) : Object | LogInjectionTest.java:1142:115:1142:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1142:124:1142:131 | source(...) | user-provided value | -| LogInjectionTest.java:1143:100:1143:116 | (...)... | LogInjectionTest.java:1143:109:1143:116 | source(...) : Object | LogInjectionTest.java:1143:100:1143:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1143:109:1143:116 | source(...) | user-provided value | -| LogInjectionTest.java:1144:85:1144:101 | (...)... | LogInjectionTest.java:1144:94:1144:101 | source(...) : Object | LogInjectionTest.java:1144:85:1144:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1144:94:1144:101 | source(...) | user-provided value | -| LogInjectionTest.java:1145:70:1145:86 | (...)... | LogInjectionTest.java:1145:79:1145:86 | source(...) : Object | LogInjectionTest.java:1145:70:1145:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1145:79:1145:86 | source(...) | user-provided value | -| LogInjectionTest.java:1146:55:1146:71 | (...)... | LogInjectionTest.java:1146:64:1146:71 | source(...) : Object | LogInjectionTest.java:1146:55:1146:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1146:64:1146:71 | source(...) | user-provided value | -| LogInjectionTest.java:1147:40:1147:56 | (...)... | LogInjectionTest.java:1147:49:1147:56 | source(...) : Object | LogInjectionTest.java:1147:40:1147:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1147:49:1147:56 | source(...) | user-provided value | -| LogInjectionTest.java:1148:25:1148:41 | (...)... | LogInjectionTest.java:1148:34:1148:41 | source(...) : Object | LogInjectionTest.java:1148:25:1148:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1148:34:1148:41 | source(...) | user-provided value | -| LogInjectionTest.java:1149:130:1149:146 | (...)... | LogInjectionTest.java:1149:139:1149:146 | source(...) : Object | LogInjectionTest.java:1149:130:1149:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1149:139:1149:146 | source(...) | user-provided value | -| LogInjectionTest.java:1150:115:1150:131 | (...)... | LogInjectionTest.java:1150:124:1150:131 | source(...) : Object | LogInjectionTest.java:1150:115:1150:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1150:124:1150:131 | source(...) | user-provided value | -| LogInjectionTest.java:1151:100:1151:116 | (...)... | LogInjectionTest.java:1151:109:1151:116 | source(...) : Object | LogInjectionTest.java:1151:100:1151:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1151:109:1151:116 | source(...) | user-provided value | -| LogInjectionTest.java:1152:85:1152:101 | (...)... | LogInjectionTest.java:1152:94:1152:101 | source(...) : Object | LogInjectionTest.java:1152:85:1152:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1152:94:1152:101 | source(...) | user-provided value | -| LogInjectionTest.java:1153:70:1153:86 | (...)... | LogInjectionTest.java:1153:79:1153:86 | source(...) : Object | LogInjectionTest.java:1153:70:1153:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1153:79:1153:86 | source(...) | user-provided value | -| LogInjectionTest.java:1154:55:1154:71 | (...)... | LogInjectionTest.java:1154:64:1154:71 | source(...) : Object | LogInjectionTest.java:1154:55:1154:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1154:64:1154:71 | source(...) | user-provided value | -| LogInjectionTest.java:1155:40:1155:56 | (...)... | LogInjectionTest.java:1155:49:1155:56 | source(...) : Object | LogInjectionTest.java:1155:40:1155:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1155:49:1155:56 | source(...) | user-provided value | -| LogInjectionTest.java:1156:25:1156:41 | (...)... | LogInjectionTest.java:1156:34:1156:41 | source(...) : Object | LogInjectionTest.java:1156:25:1156:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1156:34:1156:41 | source(...) | user-provided value | -| LogInjectionTest.java:1157:145:1157:161 | (...)... | LogInjectionTest.java:1157:154:1157:161 | source(...) : Object | LogInjectionTest.java:1157:145:1157:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1157:154:1157:161 | source(...) | user-provided value | -| LogInjectionTest.java:1158:130:1158:146 | (...)... | LogInjectionTest.java:1158:139:1158:146 | source(...) : Object | LogInjectionTest.java:1158:130:1158:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1158:139:1158:146 | source(...) | user-provided value | -| LogInjectionTest.java:1159:115:1159:131 | (...)... | LogInjectionTest.java:1159:124:1159:131 | source(...) : Object | LogInjectionTest.java:1159:115:1159:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1159:124:1159:131 | source(...) | user-provided value | -| LogInjectionTest.java:1160:100:1160:116 | (...)... | LogInjectionTest.java:1160:109:1160:116 | source(...) : Object | LogInjectionTest.java:1160:100:1160:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1160:109:1160:116 | source(...) | user-provided value | -| LogInjectionTest.java:1161:85:1161:101 | (...)... | LogInjectionTest.java:1161:94:1161:101 | source(...) : Object | LogInjectionTest.java:1161:85:1161:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1161:94:1161:101 | source(...) | user-provided value | -| LogInjectionTest.java:1162:70:1162:86 | (...)... | LogInjectionTest.java:1162:79:1162:86 | source(...) : Object | LogInjectionTest.java:1162:70:1162:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1162:79:1162:86 | source(...) | user-provided value | -| LogInjectionTest.java:1163:55:1163:71 | (...)... | LogInjectionTest.java:1163:64:1163:71 | source(...) : Object | LogInjectionTest.java:1163:55:1163:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1163:64:1163:71 | source(...) | user-provided value | -| LogInjectionTest.java:1164:40:1164:56 | (...)... | LogInjectionTest.java:1164:49:1164:56 | source(...) : Object | LogInjectionTest.java:1164:40:1164:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1164:49:1164:56 | source(...) | user-provided value | -| LogInjectionTest.java:1165:25:1165:41 | (...)... | LogInjectionTest.java:1165:34:1165:41 | source(...) : Object | LogInjectionTest.java:1165:25:1165:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1165:34:1165:41 | source(...) | user-provided value | -| LogInjectionTest.java:1166:160:1166:176 | (...)... | LogInjectionTest.java:1166:169:1166:176 | source(...) : Object | LogInjectionTest.java:1166:160:1166:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1166:169:1166:176 | source(...) | user-provided value | +| LogInjectionTest.java:1131:40:1131:62 | new Object[] | LogInjectionTest.java:1131:54:1131:61 | source(...) : Object | LogInjectionTest.java:1131:40:1131:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1131:54:1131:61 | source(...) | user-provided value | +| LogInjectionTest.java:1132:40:1132:56 | (...)... | LogInjectionTest.java:1132:49:1132:56 | source(...) : Object | LogInjectionTest.java:1132:40:1132:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1132:49:1132:56 | source(...) | user-provided value | +| LogInjectionTest.java:1133:25:1133:41 | (...)... | LogInjectionTest.java:1133:34:1133:41 | source(...) : Object | LogInjectionTest.java:1133:25:1133:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1133:34:1133:41 | source(...) | user-provided value | +| LogInjectionTest.java:1134:55:1134:71 | (...)... | LogInjectionTest.java:1134:64:1134:71 | source(...) : Object | LogInjectionTest.java:1134:55:1134:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1134:64:1134:71 | source(...) | user-provided value | +| LogInjectionTest.java:1135:40:1135:56 | (...)... | LogInjectionTest.java:1135:49:1135:56 | source(...) : Object | LogInjectionTest.java:1135:40:1135:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1135:49:1135:56 | source(...) | user-provided value | +| LogInjectionTest.java:1136:25:1136:41 | (...)... | LogInjectionTest.java:1136:34:1136:41 | source(...) : Object | LogInjectionTest.java:1136:25:1136:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1136:34:1136:41 | source(...) | user-provided value | +| LogInjectionTest.java:1137:70:1137:86 | (...)... | LogInjectionTest.java:1137:79:1137:86 | source(...) : Object | LogInjectionTest.java:1137:70:1137:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1137:79:1137:86 | source(...) | user-provided value | +| LogInjectionTest.java:1138:55:1138:71 | (...)... | LogInjectionTest.java:1138:64:1138:71 | source(...) : Object | LogInjectionTest.java:1138:55:1138:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1138:64:1138:71 | source(...) | user-provided value | +| LogInjectionTest.java:1139:40:1139:56 | (...)... | LogInjectionTest.java:1139:49:1139:56 | source(...) : Object | LogInjectionTest.java:1139:40:1139:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1139:49:1139:56 | source(...) | user-provided value | +| LogInjectionTest.java:1140:25:1140:41 | (...)... | LogInjectionTest.java:1140:34:1140:41 | source(...) : Object | LogInjectionTest.java:1140:25:1140:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1140:34:1140:41 | source(...) | user-provided value | +| LogInjectionTest.java:1141:85:1141:101 | (...)... | LogInjectionTest.java:1141:94:1141:101 | source(...) : Object | LogInjectionTest.java:1141:85:1141:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1141:94:1141:101 | source(...) | user-provided value | +| LogInjectionTest.java:1142:70:1142:86 | (...)... | LogInjectionTest.java:1142:79:1142:86 | source(...) : Object | LogInjectionTest.java:1142:70:1142:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1142:79:1142:86 | source(...) | user-provided value | +| LogInjectionTest.java:1143:55:1143:71 | (...)... | LogInjectionTest.java:1143:64:1143:71 | source(...) : Object | LogInjectionTest.java:1143:55:1143:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1143:64:1143:71 | source(...) | user-provided value | +| LogInjectionTest.java:1144:40:1144:56 | (...)... | LogInjectionTest.java:1144:49:1144:56 | source(...) : Object | LogInjectionTest.java:1144:40:1144:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1144:49:1144:56 | source(...) | user-provided value | +| LogInjectionTest.java:1145:25:1145:41 | (...)... | LogInjectionTest.java:1145:34:1145:41 | source(...) : Object | LogInjectionTest.java:1145:25:1145:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1145:34:1145:41 | source(...) | user-provided value | +| LogInjectionTest.java:1146:100:1146:116 | (...)... | LogInjectionTest.java:1146:109:1146:116 | source(...) : Object | LogInjectionTest.java:1146:100:1146:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1146:109:1146:116 | source(...) | user-provided value | +| LogInjectionTest.java:1147:85:1147:101 | (...)... | LogInjectionTest.java:1147:94:1147:101 | source(...) : Object | LogInjectionTest.java:1147:85:1147:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1147:94:1147:101 | source(...) | user-provided value | +| LogInjectionTest.java:1148:70:1148:86 | (...)... | LogInjectionTest.java:1148:79:1148:86 | source(...) : Object | LogInjectionTest.java:1148:70:1148:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1148:79:1148:86 | source(...) | user-provided value | +| LogInjectionTest.java:1149:55:1149:71 | (...)... | LogInjectionTest.java:1149:64:1149:71 | source(...) : Object | LogInjectionTest.java:1149:55:1149:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1149:64:1149:71 | source(...) | user-provided value | +| LogInjectionTest.java:1150:40:1150:56 | (...)... | LogInjectionTest.java:1150:49:1150:56 | source(...) : Object | LogInjectionTest.java:1150:40:1150:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1150:49:1150:56 | source(...) | user-provided value | +| LogInjectionTest.java:1151:25:1151:41 | (...)... | LogInjectionTest.java:1151:34:1151:41 | source(...) : Object | LogInjectionTest.java:1151:25:1151:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1151:34:1151:41 | source(...) | user-provided value | +| LogInjectionTest.java:1152:115:1152:131 | (...)... | LogInjectionTest.java:1152:124:1152:131 | source(...) : Object | LogInjectionTest.java:1152:115:1152:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1152:124:1152:131 | source(...) | user-provided value | +| LogInjectionTest.java:1153:100:1153:116 | (...)... | LogInjectionTest.java:1153:109:1153:116 | source(...) : Object | LogInjectionTest.java:1153:100:1153:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1153:109:1153:116 | source(...) | user-provided value | +| LogInjectionTest.java:1154:85:1154:101 | (...)... | LogInjectionTest.java:1154:94:1154:101 | source(...) : Object | LogInjectionTest.java:1154:85:1154:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1154:94:1154:101 | source(...) | user-provided value | +| LogInjectionTest.java:1155:70:1155:86 | (...)... | LogInjectionTest.java:1155:79:1155:86 | source(...) : Object | LogInjectionTest.java:1155:70:1155:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1155:79:1155:86 | source(...) | user-provided value | +| LogInjectionTest.java:1156:55:1156:71 | (...)... | LogInjectionTest.java:1156:64:1156:71 | source(...) : Object | LogInjectionTest.java:1156:55:1156:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1156:64:1156:71 | source(...) | user-provided value | +| LogInjectionTest.java:1157:40:1157:56 | (...)... | LogInjectionTest.java:1157:49:1157:56 | source(...) : Object | LogInjectionTest.java:1157:40:1157:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1157:49:1157:56 | source(...) | user-provided value | +| LogInjectionTest.java:1158:25:1158:41 | (...)... | LogInjectionTest.java:1158:34:1158:41 | source(...) : Object | LogInjectionTest.java:1158:25:1158:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1158:34:1158:41 | source(...) | user-provided value | +| LogInjectionTest.java:1159:130:1159:146 | (...)... | LogInjectionTest.java:1159:139:1159:146 | source(...) : Object | LogInjectionTest.java:1159:130:1159:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1159:139:1159:146 | source(...) | user-provided value | +| LogInjectionTest.java:1160:115:1160:131 | (...)... | LogInjectionTest.java:1160:124:1160:131 | source(...) : Object | LogInjectionTest.java:1160:115:1160:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1160:124:1160:131 | source(...) | user-provided value | +| LogInjectionTest.java:1161:100:1161:116 | (...)... | LogInjectionTest.java:1161:109:1161:116 | source(...) : Object | LogInjectionTest.java:1161:100:1161:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1161:109:1161:116 | source(...) | user-provided value | +| LogInjectionTest.java:1162:85:1162:101 | (...)... | LogInjectionTest.java:1162:94:1162:101 | source(...) : Object | LogInjectionTest.java:1162:85:1162:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1162:94:1162:101 | source(...) | user-provided value | +| LogInjectionTest.java:1163:70:1163:86 | (...)... | LogInjectionTest.java:1163:79:1163:86 | source(...) : Object | LogInjectionTest.java:1163:70:1163:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1163:79:1163:86 | source(...) | user-provided value | +| LogInjectionTest.java:1164:55:1164:71 | (...)... | LogInjectionTest.java:1164:64:1164:71 | source(...) : Object | LogInjectionTest.java:1164:55:1164:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1164:64:1164:71 | source(...) | user-provided value | +| LogInjectionTest.java:1165:40:1165:56 | (...)... | LogInjectionTest.java:1165:49:1165:56 | source(...) : Object | LogInjectionTest.java:1165:40:1165:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1165:49:1165:56 | source(...) | user-provided value | +| LogInjectionTest.java:1166:25:1166:41 | (...)... | LogInjectionTest.java:1166:34:1166:41 | source(...) : Object | LogInjectionTest.java:1166:25:1166:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1166:34:1166:41 | source(...) | user-provided value | | LogInjectionTest.java:1167:145:1167:161 | (...)... | LogInjectionTest.java:1167:154:1167:161 | source(...) : Object | LogInjectionTest.java:1167:145:1167:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1167:154:1167:161 | source(...) | user-provided value | | LogInjectionTest.java:1168:130:1168:146 | (...)... | LogInjectionTest.java:1168:139:1168:146 | source(...) : Object | LogInjectionTest.java:1168:130:1168:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1168:139:1168:146 | source(...) | user-provided value | | LogInjectionTest.java:1169:115:1169:131 | (...)... | LogInjectionTest.java:1169:124:1169:131 | source(...) : Object | LogInjectionTest.java:1169:115:1169:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1169:124:1169:131 | source(...) | user-provided value | @@ -1023,82 +1015,82 @@ | LogInjectionTest.java:1173:55:1173:71 | (...)... | LogInjectionTest.java:1173:64:1173:71 | source(...) : Object | LogInjectionTest.java:1173:55:1173:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1173:64:1173:71 | source(...) | user-provided value | | LogInjectionTest.java:1174:40:1174:56 | (...)... | LogInjectionTest.java:1174:49:1174:56 | source(...) : Object | LogInjectionTest.java:1174:40:1174:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1174:49:1174:56 | source(...) | user-provided value | | LogInjectionTest.java:1175:25:1175:41 | (...)... | LogInjectionTest.java:1175:34:1175:41 | source(...) : Object | LogInjectionTest.java:1175:25:1175:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1175:34:1175:41 | source(...) | user-provided value | -| LogInjectionTest.java:1176:25:1176:41 | (...)... | LogInjectionTest.java:1176:34:1176:41 | source(...) : Object | LogInjectionTest.java:1176:25:1176:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1176:34:1176:41 | source(...) | user-provided value | -| LogInjectionTest.java:1177:40:1177:61 | (...)... | LogInjectionTest.java:1177:54:1177:61 | source(...) : Object | LogInjectionTest.java:1177:40:1177:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1177:54:1177:61 | source(...) | user-provided value | -| LogInjectionTest.java:1178:25:1178:41 | (...)... | LogInjectionTest.java:1178:34:1178:41 | source(...) : Object | LogInjectionTest.java:1178:25:1178:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1178:34:1178:41 | source(...) | user-provided value | -| LogInjectionTest.java:1179:25:1179:46 | (...)... | LogInjectionTest.java:1179:39:1179:46 | source(...) : Object | LogInjectionTest.java:1179:25:1179:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1179:39:1179:46 | source(...) | user-provided value | -| LogInjectionTest.java:1180:25:1180:46 | (...)... | LogInjectionTest.java:1180:39:1180:46 | source(...) : Object | LogInjectionTest.java:1180:25:1180:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1180:39:1180:46 | source(...) | user-provided value | -| LogInjectionTest.java:1182:55:1182:72 | (...)... | LogInjectionTest.java:1182:65:1182:72 | source(...) : Object | LogInjectionTest.java:1182:55:1182:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1182:65:1182:72 | source(...) | user-provided value | -| LogInjectionTest.java:1183:39:1183:55 | (...)... | LogInjectionTest.java:1183:48:1183:55 | source(...) : Object | LogInjectionTest.java:1183:39:1183:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1183:48:1183:55 | source(...) | user-provided value | -| LogInjectionTest.java:1184:45:1184:67 | new Object[] | LogInjectionTest.java:1184:59:1184:66 | source(...) : Object | LogInjectionTest.java:1184:45:1184:67 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1184:59:1184:66 | source(...) | user-provided value | -| LogInjectionTest.java:1185:33:1185:49 | (...)... | LogInjectionTest.java:1185:42:1185:49 | source(...) : Object | LogInjectionTest.java:1185:33:1185:49 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1185:42:1185:49 | source(...) | user-provided value | -| LogInjectionTest.java:1186:39:1186:61 | new Object[] | LogInjectionTest.java:1186:53:1186:60 | source(...) : Object | LogInjectionTest.java:1186:39:1186:61 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1186:53:1186:60 | source(...) | user-provided value | -| LogInjectionTest.java:1187:31:1187:48 | (...)... | LogInjectionTest.java:1187:41:1187:48 | source(...) : Object | LogInjectionTest.java:1187:31:1187:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1187:41:1187:48 | source(...) | user-provided value | -| LogInjectionTest.java:1188:31:1188:47 | (...)... | LogInjectionTest.java:1188:40:1188:47 | source(...) : Object | LogInjectionTest.java:1188:31:1188:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1188:40:1188:47 | source(...) | user-provided value | -| LogInjectionTest.java:1189:46:1189:68 | new Object[] | LogInjectionTest.java:1189:60:1189:67 | source(...) : Object | LogInjectionTest.java:1189:46:1189:68 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1189:60:1189:67 | source(...) | user-provided value | -| LogInjectionTest.java:1190:31:1190:47 | (...)... | LogInjectionTest.java:1190:40:1190:47 | source(...) : Object | LogInjectionTest.java:1190:31:1190:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1190:40:1190:47 | source(...) | user-provided value | -| LogInjectionTest.java:1191:13:1191:68 | new ..[] { .. } | LogInjectionTest.java:1191:60:1191:67 | source(...) : Object | LogInjectionTest.java:1191:13:1191:68 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1191:60:1191:67 | source(...) | user-provided value | -| LogInjectionTest.java:1192:13:1192:53 | new ..[] { .. } | LogInjectionTest.java:1192:45:1192:52 | source(...) : Object | LogInjectionTest.java:1192:13:1192:53 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1192:45:1192:52 | source(...) | user-provided value | -| LogInjectionTest.java:1193:30:1193:52 | (...)... | LogInjectionTest.java:1193:45:1193:52 | source(...) : Object | LogInjectionTest.java:1193:30:1193:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1193:45:1193:52 | source(...) | user-provided value | -| LogInjectionTest.java:1194:30:1194:52 | (...)... | LogInjectionTest.java:1194:45:1194:52 | source(...) : Object | LogInjectionTest.java:1194:30:1194:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1194:45:1194:52 | source(...) | user-provided value | -| LogInjectionTest.java:1195:51:1195:58 | source(...) | LogInjectionTest.java:1195:51:1195:58 | source(...) | LogInjectionTest.java:1195:51:1195:58 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1195:51:1195:58 | source(...) | user-provided value | -| LogInjectionTest.java:1196:30:1196:47 | (...)... | LogInjectionTest.java:1196:40:1196:47 | source(...) : Object | LogInjectionTest.java:1196:30:1196:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1196:40:1196:47 | source(...) | user-provided value | -| LogInjectionTest.java:1197:46:1197:53 | source(...) | LogInjectionTest.java:1197:46:1197:53 | source(...) | LogInjectionTest.java:1197:46:1197:53 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1197:46:1197:53 | source(...) | user-provided value | -| LogInjectionTest.java:1198:30:1198:37 | source(...) | LogInjectionTest.java:1198:30:1198:37 | source(...) | LogInjectionTest.java:1198:30:1198:37 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1198:30:1198:37 | source(...) | user-provided value | -| LogInjectionTest.java:1199:30:1199:46 | (...)... | LogInjectionTest.java:1199:39:1199:46 | source(...) : Object | LogInjectionTest.java:1199:30:1199:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1199:39:1199:46 | source(...) | user-provided value | -| LogInjectionTest.java:1200:45:1200:52 | source(...) | LogInjectionTest.java:1200:45:1200:52 | source(...) | LogInjectionTest.java:1200:45:1200:52 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1200:45:1200:52 | source(...) | user-provided value | -| LogInjectionTest.java:1204:25:1204:47 | (...)... | LogInjectionTest.java:1204:40:1204:47 | source(...) : Object | LogInjectionTest.java:1204:25:1204:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1204:40:1204:47 | source(...) | user-provided value | -| LogInjectionTest.java:1205:25:1205:42 | (...)... | LogInjectionTest.java:1205:35:1205:42 | source(...) : Object | LogInjectionTest.java:1205:25:1205:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1205:35:1205:42 | source(...) | user-provided value | -| LogInjectionTest.java:1206:25:1206:32 | source(...) | LogInjectionTest.java:1206:25:1206:32 | source(...) | LogInjectionTest.java:1206:25:1206:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1206:25:1206:32 | source(...) | user-provided value | -| LogInjectionTest.java:1207:25:1207:41 | (...)... | LogInjectionTest.java:1207:34:1207:41 | source(...) : Object | LogInjectionTest.java:1207:25:1207:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1207:34:1207:41 | source(...) | user-provided value | -| LogInjectionTest.java:1208:25:1208:41 | (...)... | LogInjectionTest.java:1208:34:1208:41 | source(...) : Object | LogInjectionTest.java:1208:25:1208:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1208:34:1208:41 | source(...) | user-provided value | -| LogInjectionTest.java:1209:40:1209:62 | new Object[] | LogInjectionTest.java:1209:54:1209:61 | source(...) : Object | LogInjectionTest.java:1209:40:1209:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1209:54:1209:61 | source(...) | user-provided value | -| LogInjectionTest.java:1210:40:1210:47 | source(...) | LogInjectionTest.java:1210:40:1210:47 | source(...) | LogInjectionTest.java:1210:40:1210:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1210:40:1210:47 | source(...) | user-provided value | -| LogInjectionTest.java:1212:40:1212:56 | (...)... | LogInjectionTest.java:1212:49:1212:56 | source(...) : Object | LogInjectionTest.java:1212:40:1212:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1212:49:1212:56 | source(...) | user-provided value | -| LogInjectionTest.java:1213:25:1213:41 | (...)... | LogInjectionTest.java:1213:34:1213:41 | source(...) : Object | LogInjectionTest.java:1213:25:1213:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1213:34:1213:41 | source(...) | user-provided value | -| LogInjectionTest.java:1214:55:1214:71 | (...)... | LogInjectionTest.java:1214:64:1214:71 | source(...) : Object | LogInjectionTest.java:1214:55:1214:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1214:64:1214:71 | source(...) | user-provided value | -| LogInjectionTest.java:1215:40:1215:56 | (...)... | LogInjectionTest.java:1215:49:1215:56 | source(...) : Object | LogInjectionTest.java:1215:40:1215:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1215:49:1215:56 | source(...) | user-provided value | -| LogInjectionTest.java:1216:25:1216:41 | (...)... | LogInjectionTest.java:1216:34:1216:41 | source(...) : Object | LogInjectionTest.java:1216:25:1216:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1216:34:1216:41 | source(...) | user-provided value | -| LogInjectionTest.java:1217:70:1217:86 | (...)... | LogInjectionTest.java:1217:79:1217:86 | source(...) : Object | LogInjectionTest.java:1217:70:1217:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1217:79:1217:86 | source(...) | user-provided value | -| LogInjectionTest.java:1218:55:1218:71 | (...)... | LogInjectionTest.java:1218:64:1218:71 | source(...) : Object | LogInjectionTest.java:1218:55:1218:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1218:64:1218:71 | source(...) | user-provided value | -| LogInjectionTest.java:1219:40:1219:56 | (...)... | LogInjectionTest.java:1219:49:1219:56 | source(...) : Object | LogInjectionTest.java:1219:40:1219:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1219:49:1219:56 | source(...) | user-provided value | -| LogInjectionTest.java:1220:25:1220:41 | (...)... | LogInjectionTest.java:1220:34:1220:41 | source(...) : Object | LogInjectionTest.java:1220:25:1220:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1220:34:1220:41 | source(...) | user-provided value | -| LogInjectionTest.java:1221:85:1221:101 | (...)... | LogInjectionTest.java:1221:94:1221:101 | source(...) : Object | LogInjectionTest.java:1221:85:1221:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1221:94:1221:101 | source(...) | user-provided value | -| LogInjectionTest.java:1222:70:1222:86 | (...)... | LogInjectionTest.java:1222:79:1222:86 | source(...) : Object | LogInjectionTest.java:1222:70:1222:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1222:79:1222:86 | source(...) | user-provided value | -| LogInjectionTest.java:1223:55:1223:71 | (...)... | LogInjectionTest.java:1223:64:1223:71 | source(...) : Object | LogInjectionTest.java:1223:55:1223:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1223:64:1223:71 | source(...) | user-provided value | -| LogInjectionTest.java:1224:40:1224:56 | (...)... | LogInjectionTest.java:1224:49:1224:56 | source(...) : Object | LogInjectionTest.java:1224:40:1224:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1224:49:1224:56 | source(...) | user-provided value | -| LogInjectionTest.java:1225:25:1225:41 | (...)... | LogInjectionTest.java:1225:34:1225:41 | source(...) : Object | LogInjectionTest.java:1225:25:1225:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1225:34:1225:41 | source(...) | user-provided value | -| LogInjectionTest.java:1226:100:1226:116 | (...)... | LogInjectionTest.java:1226:109:1226:116 | source(...) : Object | LogInjectionTest.java:1226:100:1226:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1226:109:1226:116 | source(...) | user-provided value | -| LogInjectionTest.java:1227:85:1227:101 | (...)... | LogInjectionTest.java:1227:94:1227:101 | source(...) : Object | LogInjectionTest.java:1227:85:1227:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1227:94:1227:101 | source(...) | user-provided value | -| LogInjectionTest.java:1228:70:1228:86 | (...)... | LogInjectionTest.java:1228:79:1228:86 | source(...) : Object | LogInjectionTest.java:1228:70:1228:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1228:79:1228:86 | source(...) | user-provided value | -| LogInjectionTest.java:1229:55:1229:71 | (...)... | LogInjectionTest.java:1229:64:1229:71 | source(...) : Object | LogInjectionTest.java:1229:55:1229:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1229:64:1229:71 | source(...) | user-provided value | -| LogInjectionTest.java:1230:40:1230:56 | (...)... | LogInjectionTest.java:1230:49:1230:56 | source(...) : Object | LogInjectionTest.java:1230:40:1230:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1230:49:1230:56 | source(...) | user-provided value | -| LogInjectionTest.java:1231:25:1231:41 | (...)... | LogInjectionTest.java:1231:34:1231:41 | source(...) : Object | LogInjectionTest.java:1231:25:1231:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1231:34:1231:41 | source(...) | user-provided value | -| LogInjectionTest.java:1232:115:1232:131 | (...)... | LogInjectionTest.java:1232:124:1232:131 | source(...) : Object | LogInjectionTest.java:1232:115:1232:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1232:124:1232:131 | source(...) | user-provided value | -| LogInjectionTest.java:1233:100:1233:116 | (...)... | LogInjectionTest.java:1233:109:1233:116 | source(...) : Object | LogInjectionTest.java:1233:100:1233:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1233:109:1233:116 | source(...) | user-provided value | -| LogInjectionTest.java:1234:85:1234:101 | (...)... | LogInjectionTest.java:1234:94:1234:101 | source(...) : Object | LogInjectionTest.java:1234:85:1234:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1234:94:1234:101 | source(...) | user-provided value | -| LogInjectionTest.java:1235:70:1235:86 | (...)... | LogInjectionTest.java:1235:79:1235:86 | source(...) : Object | LogInjectionTest.java:1235:70:1235:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1235:79:1235:86 | source(...) | user-provided value | -| LogInjectionTest.java:1236:55:1236:71 | (...)... | LogInjectionTest.java:1236:64:1236:71 | source(...) : Object | LogInjectionTest.java:1236:55:1236:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1236:64:1236:71 | source(...) | user-provided value | -| LogInjectionTest.java:1237:40:1237:56 | (...)... | LogInjectionTest.java:1237:49:1237:56 | source(...) : Object | LogInjectionTest.java:1237:40:1237:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1237:49:1237:56 | source(...) | user-provided value | -| LogInjectionTest.java:1238:25:1238:41 | (...)... | LogInjectionTest.java:1238:34:1238:41 | source(...) : Object | LogInjectionTest.java:1238:25:1238:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1238:34:1238:41 | source(...) | user-provided value | -| LogInjectionTest.java:1239:130:1239:146 | (...)... | LogInjectionTest.java:1239:139:1239:146 | source(...) : Object | LogInjectionTest.java:1239:130:1239:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1239:139:1239:146 | source(...) | user-provided value | -| LogInjectionTest.java:1240:115:1240:131 | (...)... | LogInjectionTest.java:1240:124:1240:131 | source(...) : Object | LogInjectionTest.java:1240:115:1240:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1240:124:1240:131 | source(...) | user-provided value | -| LogInjectionTest.java:1241:100:1241:116 | (...)... | LogInjectionTest.java:1241:109:1241:116 | source(...) : Object | LogInjectionTest.java:1241:100:1241:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1241:109:1241:116 | source(...) | user-provided value | -| LogInjectionTest.java:1242:85:1242:101 | (...)... | LogInjectionTest.java:1242:94:1242:101 | source(...) : Object | LogInjectionTest.java:1242:85:1242:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1242:94:1242:101 | source(...) | user-provided value | -| LogInjectionTest.java:1243:70:1243:86 | (...)... | LogInjectionTest.java:1243:79:1243:86 | source(...) : Object | LogInjectionTest.java:1243:70:1243:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1243:79:1243:86 | source(...) | user-provided value | -| LogInjectionTest.java:1244:55:1244:71 | (...)... | LogInjectionTest.java:1244:64:1244:71 | source(...) : Object | LogInjectionTest.java:1244:55:1244:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1244:64:1244:71 | source(...) | user-provided value | -| LogInjectionTest.java:1245:40:1245:56 | (...)... | LogInjectionTest.java:1245:49:1245:56 | source(...) : Object | LogInjectionTest.java:1245:40:1245:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1245:49:1245:56 | source(...) | user-provided value | -| LogInjectionTest.java:1246:25:1246:41 | (...)... | LogInjectionTest.java:1246:34:1246:41 | source(...) : Object | LogInjectionTest.java:1246:25:1246:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1246:34:1246:41 | source(...) | user-provided value | -| LogInjectionTest.java:1247:145:1247:161 | (...)... | LogInjectionTest.java:1247:154:1247:161 | source(...) : Object | LogInjectionTest.java:1247:145:1247:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1247:154:1247:161 | source(...) | user-provided value | -| LogInjectionTest.java:1248:130:1248:146 | (...)... | LogInjectionTest.java:1248:139:1248:146 | source(...) : Object | LogInjectionTest.java:1248:130:1248:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1248:139:1248:146 | source(...) | user-provided value | -| LogInjectionTest.java:1249:115:1249:131 | (...)... | LogInjectionTest.java:1249:124:1249:131 | source(...) : Object | LogInjectionTest.java:1249:115:1249:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1249:124:1249:131 | source(...) | user-provided value | -| LogInjectionTest.java:1250:100:1250:116 | (...)... | LogInjectionTest.java:1250:109:1250:116 | source(...) : Object | LogInjectionTest.java:1250:100:1250:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1250:109:1250:116 | source(...) | user-provided value | -| LogInjectionTest.java:1251:85:1251:101 | (...)... | LogInjectionTest.java:1251:94:1251:101 | source(...) : Object | LogInjectionTest.java:1251:85:1251:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1251:94:1251:101 | source(...) | user-provided value | -| LogInjectionTest.java:1252:70:1252:86 | (...)... | LogInjectionTest.java:1252:79:1252:86 | source(...) : Object | LogInjectionTest.java:1252:70:1252:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1252:79:1252:86 | source(...) | user-provided value | -| LogInjectionTest.java:1253:55:1253:71 | (...)... | LogInjectionTest.java:1253:64:1253:71 | source(...) : Object | LogInjectionTest.java:1253:55:1253:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1253:64:1253:71 | source(...) | user-provided value | -| LogInjectionTest.java:1254:40:1254:56 | (...)... | LogInjectionTest.java:1254:49:1254:56 | source(...) : Object | LogInjectionTest.java:1254:40:1254:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1254:49:1254:56 | source(...) | user-provided value | -| LogInjectionTest.java:1255:25:1255:41 | (...)... | LogInjectionTest.java:1255:34:1255:41 | source(...) : Object | LogInjectionTest.java:1255:25:1255:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1255:34:1255:41 | source(...) | user-provided value | -| LogInjectionTest.java:1256:160:1256:176 | (...)... | LogInjectionTest.java:1256:169:1256:176 | source(...) : Object | LogInjectionTest.java:1256:160:1256:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1256:169:1256:176 | source(...) | user-provided value | +| LogInjectionTest.java:1176:160:1176:176 | (...)... | LogInjectionTest.java:1176:169:1176:176 | source(...) : Object | LogInjectionTest.java:1176:160:1176:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1176:169:1176:176 | source(...) | user-provided value | +| LogInjectionTest.java:1177:145:1177:161 | (...)... | LogInjectionTest.java:1177:154:1177:161 | source(...) : Object | LogInjectionTest.java:1177:145:1177:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1177:154:1177:161 | source(...) | user-provided value | +| LogInjectionTest.java:1178:130:1178:146 | (...)... | LogInjectionTest.java:1178:139:1178:146 | source(...) : Object | LogInjectionTest.java:1178:130:1178:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1178:139:1178:146 | source(...) | user-provided value | +| LogInjectionTest.java:1179:115:1179:131 | (...)... | LogInjectionTest.java:1179:124:1179:131 | source(...) : Object | LogInjectionTest.java:1179:115:1179:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1179:124:1179:131 | source(...) | user-provided value | +| LogInjectionTest.java:1180:100:1180:116 | (...)... | LogInjectionTest.java:1180:109:1180:116 | source(...) : Object | LogInjectionTest.java:1180:100:1180:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1180:109:1180:116 | source(...) | user-provided value | +| LogInjectionTest.java:1181:85:1181:101 | (...)... | LogInjectionTest.java:1181:94:1181:101 | source(...) : Object | LogInjectionTest.java:1181:85:1181:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1181:94:1181:101 | source(...) | user-provided value | +| LogInjectionTest.java:1182:70:1182:86 | (...)... | LogInjectionTest.java:1182:79:1182:86 | source(...) : Object | LogInjectionTest.java:1182:70:1182:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1182:79:1182:86 | source(...) | user-provided value | +| LogInjectionTest.java:1183:55:1183:71 | (...)... | LogInjectionTest.java:1183:64:1183:71 | source(...) : Object | LogInjectionTest.java:1183:55:1183:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1183:64:1183:71 | source(...) | user-provided value | +| LogInjectionTest.java:1184:40:1184:56 | (...)... | LogInjectionTest.java:1184:49:1184:56 | source(...) : Object | LogInjectionTest.java:1184:40:1184:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1184:49:1184:56 | source(...) | user-provided value | +| LogInjectionTest.java:1185:25:1185:41 | (...)... | LogInjectionTest.java:1185:34:1185:41 | source(...) : Object | LogInjectionTest.java:1185:25:1185:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1185:34:1185:41 | source(...) | user-provided value | +| LogInjectionTest.java:1186:25:1186:41 | (...)... | LogInjectionTest.java:1186:34:1186:41 | source(...) : Object | LogInjectionTest.java:1186:25:1186:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1186:34:1186:41 | source(...) | user-provided value | +| LogInjectionTest.java:1187:40:1187:61 | (...)... | LogInjectionTest.java:1187:54:1187:61 | source(...) : Object | LogInjectionTest.java:1187:40:1187:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1187:54:1187:61 | source(...) | user-provided value | +| LogInjectionTest.java:1188:25:1188:41 | (...)... | LogInjectionTest.java:1188:34:1188:41 | source(...) : Object | LogInjectionTest.java:1188:25:1188:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1188:34:1188:41 | source(...) | user-provided value | +| LogInjectionTest.java:1189:25:1189:46 | (...)... | LogInjectionTest.java:1189:39:1189:46 | source(...) : Object | LogInjectionTest.java:1189:25:1189:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1189:39:1189:46 | source(...) | user-provided value | +| LogInjectionTest.java:1190:25:1190:46 | (...)... | LogInjectionTest.java:1190:39:1190:46 | source(...) : Object | LogInjectionTest.java:1190:25:1190:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1190:39:1190:46 | source(...) | user-provided value | +| LogInjectionTest.java:1192:55:1192:72 | (...)... | LogInjectionTest.java:1192:65:1192:72 | source(...) : Object | LogInjectionTest.java:1192:55:1192:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1192:65:1192:72 | source(...) | user-provided value | +| LogInjectionTest.java:1193:39:1193:55 | (...)... | LogInjectionTest.java:1193:48:1193:55 | source(...) : Object | LogInjectionTest.java:1193:39:1193:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1193:48:1193:55 | source(...) | user-provided value | +| LogInjectionTest.java:1194:45:1194:67 | new Object[] | LogInjectionTest.java:1194:59:1194:66 | source(...) : Object | LogInjectionTest.java:1194:45:1194:67 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1194:59:1194:66 | source(...) | user-provided value | +| LogInjectionTest.java:1195:33:1195:49 | (...)... | LogInjectionTest.java:1195:42:1195:49 | source(...) : Object | LogInjectionTest.java:1195:33:1195:49 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1195:42:1195:49 | source(...) | user-provided value | +| LogInjectionTest.java:1196:39:1196:61 | new Object[] | LogInjectionTest.java:1196:53:1196:60 | source(...) : Object | LogInjectionTest.java:1196:39:1196:61 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1196:53:1196:60 | source(...) | user-provided value | +| LogInjectionTest.java:1197:31:1197:48 | (...)... | LogInjectionTest.java:1197:41:1197:48 | source(...) : Object | LogInjectionTest.java:1197:31:1197:48 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1197:41:1197:48 | source(...) | user-provided value | +| LogInjectionTest.java:1198:31:1198:47 | (...)... | LogInjectionTest.java:1198:40:1198:47 | source(...) : Object | LogInjectionTest.java:1198:31:1198:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1198:40:1198:47 | source(...) | user-provided value | +| LogInjectionTest.java:1199:46:1199:68 | new Object[] | LogInjectionTest.java:1199:60:1199:67 | source(...) : Object | LogInjectionTest.java:1199:46:1199:68 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1199:60:1199:67 | source(...) | user-provided value | +| LogInjectionTest.java:1200:31:1200:47 | (...)... | LogInjectionTest.java:1200:40:1200:47 | source(...) : Object | LogInjectionTest.java:1200:31:1200:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1200:40:1200:47 | source(...) | user-provided value | +| LogInjectionTest.java:1201:13:1201:68 | new ..[] { .. } | LogInjectionTest.java:1201:60:1201:67 | source(...) : Object | LogInjectionTest.java:1201:13:1201:68 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1201:60:1201:67 | source(...) | user-provided value | +| LogInjectionTest.java:1202:13:1202:53 | new ..[] { .. } | LogInjectionTest.java:1202:45:1202:52 | source(...) : Object | LogInjectionTest.java:1202:13:1202:53 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1202:45:1202:52 | source(...) | user-provided value | +| LogInjectionTest.java:1203:30:1203:52 | (...)... | LogInjectionTest.java:1203:45:1203:52 | source(...) : Object | LogInjectionTest.java:1203:30:1203:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1203:45:1203:52 | source(...) | user-provided value | +| LogInjectionTest.java:1204:30:1204:52 | (...)... | LogInjectionTest.java:1204:45:1204:52 | source(...) : Object | LogInjectionTest.java:1204:30:1204:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1204:45:1204:52 | source(...) | user-provided value | +| LogInjectionTest.java:1205:51:1205:58 | source(...) | LogInjectionTest.java:1205:51:1205:58 | source(...) | LogInjectionTest.java:1205:51:1205:58 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1205:51:1205:58 | source(...) | user-provided value | +| LogInjectionTest.java:1206:30:1206:47 | (...)... | LogInjectionTest.java:1206:40:1206:47 | source(...) : Object | LogInjectionTest.java:1206:30:1206:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1206:40:1206:47 | source(...) | user-provided value | +| LogInjectionTest.java:1207:46:1207:53 | source(...) | LogInjectionTest.java:1207:46:1207:53 | source(...) | LogInjectionTest.java:1207:46:1207:53 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1207:46:1207:53 | source(...) | user-provided value | +| LogInjectionTest.java:1208:30:1208:37 | source(...) | LogInjectionTest.java:1208:30:1208:37 | source(...) | LogInjectionTest.java:1208:30:1208:37 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1208:30:1208:37 | source(...) | user-provided value | +| LogInjectionTest.java:1209:30:1209:46 | (...)... | LogInjectionTest.java:1209:39:1209:46 | source(...) : Object | LogInjectionTest.java:1209:30:1209:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1209:39:1209:46 | source(...) | user-provided value | +| LogInjectionTest.java:1210:45:1210:52 | source(...) | LogInjectionTest.java:1210:45:1210:52 | source(...) | LogInjectionTest.java:1210:45:1210:52 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1210:45:1210:52 | source(...) | user-provided value | +| LogInjectionTest.java:1214:25:1214:47 | (...)... | LogInjectionTest.java:1214:40:1214:47 | source(...) : Object | LogInjectionTest.java:1214:25:1214:47 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1214:40:1214:47 | source(...) | user-provided value | +| LogInjectionTest.java:1215:25:1215:42 | (...)... | LogInjectionTest.java:1215:35:1215:42 | source(...) : Object | LogInjectionTest.java:1215:25:1215:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1215:35:1215:42 | source(...) | user-provided value | +| LogInjectionTest.java:1216:25:1216:32 | source(...) | LogInjectionTest.java:1216:25:1216:32 | source(...) | LogInjectionTest.java:1216:25:1216:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1216:25:1216:32 | source(...) | user-provided value | +| LogInjectionTest.java:1217:25:1217:41 | (...)... | LogInjectionTest.java:1217:34:1217:41 | source(...) : Object | LogInjectionTest.java:1217:25:1217:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1217:34:1217:41 | source(...) | user-provided value | +| LogInjectionTest.java:1218:25:1218:41 | (...)... | LogInjectionTest.java:1218:34:1218:41 | source(...) : Object | LogInjectionTest.java:1218:25:1218:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1218:34:1218:41 | source(...) | user-provided value | +| LogInjectionTest.java:1219:40:1219:62 | new Object[] | LogInjectionTest.java:1219:54:1219:61 | source(...) : Object | LogInjectionTest.java:1219:40:1219:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1219:54:1219:61 | source(...) | user-provided value | +| LogInjectionTest.java:1220:40:1220:47 | source(...) | LogInjectionTest.java:1220:40:1220:47 | source(...) | LogInjectionTest.java:1220:40:1220:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1220:40:1220:47 | source(...) | user-provided value | +| LogInjectionTest.java:1222:40:1222:56 | (...)... | LogInjectionTest.java:1222:49:1222:56 | source(...) : Object | LogInjectionTest.java:1222:40:1222:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1222:49:1222:56 | source(...) | user-provided value | +| LogInjectionTest.java:1223:25:1223:41 | (...)... | LogInjectionTest.java:1223:34:1223:41 | source(...) : Object | LogInjectionTest.java:1223:25:1223:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1223:34:1223:41 | source(...) | user-provided value | +| LogInjectionTest.java:1224:55:1224:71 | (...)... | LogInjectionTest.java:1224:64:1224:71 | source(...) : Object | LogInjectionTest.java:1224:55:1224:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1224:64:1224:71 | source(...) | user-provided value | +| LogInjectionTest.java:1225:40:1225:56 | (...)... | LogInjectionTest.java:1225:49:1225:56 | source(...) : Object | LogInjectionTest.java:1225:40:1225:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1225:49:1225:56 | source(...) | user-provided value | +| LogInjectionTest.java:1226:25:1226:41 | (...)... | LogInjectionTest.java:1226:34:1226:41 | source(...) : Object | LogInjectionTest.java:1226:25:1226:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1226:34:1226:41 | source(...) | user-provided value | +| LogInjectionTest.java:1227:70:1227:86 | (...)... | LogInjectionTest.java:1227:79:1227:86 | source(...) : Object | LogInjectionTest.java:1227:70:1227:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1227:79:1227:86 | source(...) | user-provided value | +| LogInjectionTest.java:1228:55:1228:71 | (...)... | LogInjectionTest.java:1228:64:1228:71 | source(...) : Object | LogInjectionTest.java:1228:55:1228:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1228:64:1228:71 | source(...) | user-provided value | +| LogInjectionTest.java:1229:40:1229:56 | (...)... | LogInjectionTest.java:1229:49:1229:56 | source(...) : Object | LogInjectionTest.java:1229:40:1229:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1229:49:1229:56 | source(...) | user-provided value | +| LogInjectionTest.java:1230:25:1230:41 | (...)... | LogInjectionTest.java:1230:34:1230:41 | source(...) : Object | LogInjectionTest.java:1230:25:1230:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1230:34:1230:41 | source(...) | user-provided value | +| LogInjectionTest.java:1231:85:1231:101 | (...)... | LogInjectionTest.java:1231:94:1231:101 | source(...) : Object | LogInjectionTest.java:1231:85:1231:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1231:94:1231:101 | source(...) | user-provided value | +| LogInjectionTest.java:1232:70:1232:86 | (...)... | LogInjectionTest.java:1232:79:1232:86 | source(...) : Object | LogInjectionTest.java:1232:70:1232:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1232:79:1232:86 | source(...) | user-provided value | +| LogInjectionTest.java:1233:55:1233:71 | (...)... | LogInjectionTest.java:1233:64:1233:71 | source(...) : Object | LogInjectionTest.java:1233:55:1233:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1233:64:1233:71 | source(...) | user-provided value | +| LogInjectionTest.java:1234:40:1234:56 | (...)... | LogInjectionTest.java:1234:49:1234:56 | source(...) : Object | LogInjectionTest.java:1234:40:1234:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1234:49:1234:56 | source(...) | user-provided value | +| LogInjectionTest.java:1235:25:1235:41 | (...)... | LogInjectionTest.java:1235:34:1235:41 | source(...) : Object | LogInjectionTest.java:1235:25:1235:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1235:34:1235:41 | source(...) | user-provided value | +| LogInjectionTest.java:1236:100:1236:116 | (...)... | LogInjectionTest.java:1236:109:1236:116 | source(...) : Object | LogInjectionTest.java:1236:100:1236:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1236:109:1236:116 | source(...) | user-provided value | +| LogInjectionTest.java:1237:85:1237:101 | (...)... | LogInjectionTest.java:1237:94:1237:101 | source(...) : Object | LogInjectionTest.java:1237:85:1237:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1237:94:1237:101 | source(...) | user-provided value | +| LogInjectionTest.java:1238:70:1238:86 | (...)... | LogInjectionTest.java:1238:79:1238:86 | source(...) : Object | LogInjectionTest.java:1238:70:1238:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1238:79:1238:86 | source(...) | user-provided value | +| LogInjectionTest.java:1239:55:1239:71 | (...)... | LogInjectionTest.java:1239:64:1239:71 | source(...) : Object | LogInjectionTest.java:1239:55:1239:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1239:64:1239:71 | source(...) | user-provided value | +| LogInjectionTest.java:1240:40:1240:56 | (...)... | LogInjectionTest.java:1240:49:1240:56 | source(...) : Object | LogInjectionTest.java:1240:40:1240:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1240:49:1240:56 | source(...) | user-provided value | +| LogInjectionTest.java:1241:25:1241:41 | (...)... | LogInjectionTest.java:1241:34:1241:41 | source(...) : Object | LogInjectionTest.java:1241:25:1241:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1241:34:1241:41 | source(...) | user-provided value | +| LogInjectionTest.java:1242:115:1242:131 | (...)... | LogInjectionTest.java:1242:124:1242:131 | source(...) : Object | LogInjectionTest.java:1242:115:1242:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1242:124:1242:131 | source(...) | user-provided value | +| LogInjectionTest.java:1243:100:1243:116 | (...)... | LogInjectionTest.java:1243:109:1243:116 | source(...) : Object | LogInjectionTest.java:1243:100:1243:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1243:109:1243:116 | source(...) | user-provided value | +| LogInjectionTest.java:1244:85:1244:101 | (...)... | LogInjectionTest.java:1244:94:1244:101 | source(...) : Object | LogInjectionTest.java:1244:85:1244:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1244:94:1244:101 | source(...) | user-provided value | +| LogInjectionTest.java:1245:70:1245:86 | (...)... | LogInjectionTest.java:1245:79:1245:86 | source(...) : Object | LogInjectionTest.java:1245:70:1245:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1245:79:1245:86 | source(...) | user-provided value | +| LogInjectionTest.java:1246:55:1246:71 | (...)... | LogInjectionTest.java:1246:64:1246:71 | source(...) : Object | LogInjectionTest.java:1246:55:1246:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1246:64:1246:71 | source(...) | user-provided value | +| LogInjectionTest.java:1247:40:1247:56 | (...)... | LogInjectionTest.java:1247:49:1247:56 | source(...) : Object | LogInjectionTest.java:1247:40:1247:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1247:49:1247:56 | source(...) | user-provided value | +| LogInjectionTest.java:1248:25:1248:41 | (...)... | LogInjectionTest.java:1248:34:1248:41 | source(...) : Object | LogInjectionTest.java:1248:25:1248:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1248:34:1248:41 | source(...) | user-provided value | +| LogInjectionTest.java:1249:130:1249:146 | (...)... | LogInjectionTest.java:1249:139:1249:146 | source(...) : Object | LogInjectionTest.java:1249:130:1249:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1249:139:1249:146 | source(...) | user-provided value | +| LogInjectionTest.java:1250:115:1250:131 | (...)... | LogInjectionTest.java:1250:124:1250:131 | source(...) : Object | LogInjectionTest.java:1250:115:1250:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1250:124:1250:131 | source(...) | user-provided value | +| LogInjectionTest.java:1251:100:1251:116 | (...)... | LogInjectionTest.java:1251:109:1251:116 | source(...) : Object | LogInjectionTest.java:1251:100:1251:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1251:109:1251:116 | source(...) | user-provided value | +| LogInjectionTest.java:1252:85:1252:101 | (...)... | LogInjectionTest.java:1252:94:1252:101 | source(...) : Object | LogInjectionTest.java:1252:85:1252:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1252:94:1252:101 | source(...) | user-provided value | +| LogInjectionTest.java:1253:70:1253:86 | (...)... | LogInjectionTest.java:1253:79:1253:86 | source(...) : Object | LogInjectionTest.java:1253:70:1253:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1253:79:1253:86 | source(...) | user-provided value | +| LogInjectionTest.java:1254:55:1254:71 | (...)... | LogInjectionTest.java:1254:64:1254:71 | source(...) : Object | LogInjectionTest.java:1254:55:1254:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1254:64:1254:71 | source(...) | user-provided value | +| LogInjectionTest.java:1255:40:1255:56 | (...)... | LogInjectionTest.java:1255:49:1255:56 | source(...) : Object | LogInjectionTest.java:1255:40:1255:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1255:49:1255:56 | source(...) | user-provided value | +| LogInjectionTest.java:1256:25:1256:41 | (...)... | LogInjectionTest.java:1256:34:1256:41 | source(...) : Object | LogInjectionTest.java:1256:25:1256:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1256:34:1256:41 | source(...) | user-provided value | | LogInjectionTest.java:1257:145:1257:161 | (...)... | LogInjectionTest.java:1257:154:1257:161 | source(...) : Object | LogInjectionTest.java:1257:145:1257:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1257:154:1257:161 | source(...) | user-provided value | | LogInjectionTest.java:1258:130:1258:146 | (...)... | LogInjectionTest.java:1258:139:1258:146 | source(...) : Object | LogInjectionTest.java:1258:130:1258:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1258:139:1258:146 | source(...) | user-provided value | | LogInjectionTest.java:1259:115:1259:131 | (...)... | LogInjectionTest.java:1259:124:1259:131 | source(...) : Object | LogInjectionTest.java:1259:115:1259:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1259:124:1259:131 | source(...) | user-provided value | @@ -1108,568 +1100,568 @@ | LogInjectionTest.java:1263:55:1263:71 | (...)... | LogInjectionTest.java:1263:64:1263:71 | source(...) : Object | LogInjectionTest.java:1263:55:1263:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1263:64:1263:71 | source(...) | user-provided value | | LogInjectionTest.java:1264:40:1264:56 | (...)... | LogInjectionTest.java:1264:49:1264:56 | source(...) : Object | LogInjectionTest.java:1264:40:1264:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1264:49:1264:56 | source(...) | user-provided value | | LogInjectionTest.java:1265:25:1265:41 | (...)... | LogInjectionTest.java:1265:34:1265:41 | source(...) : Object | LogInjectionTest.java:1265:25:1265:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1265:34:1265:41 | source(...) | user-provided value | -| LogInjectionTest.java:1267:25:1267:41 | (...)... | LogInjectionTest.java:1267:34:1267:41 | source(...) : Object | LogInjectionTest.java:1267:25:1267:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1267:34:1267:41 | source(...) | user-provided value | -| LogInjectionTest.java:1268:40:1268:61 | (...)... | LogInjectionTest.java:1268:54:1268:61 | source(...) : Object | LogInjectionTest.java:1268:40:1268:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1268:54:1268:61 | source(...) | user-provided value | -| LogInjectionTest.java:1269:25:1269:46 | (...)... | LogInjectionTest.java:1269:39:1269:46 | source(...) : Object | LogInjectionTest.java:1269:25:1269:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1269:39:1269:46 | source(...) | user-provided value | -| LogInjectionTest.java:1273:23:1273:30 | source(...) | LogInjectionTest.java:1273:23:1273:30 | source(...) | LogInjectionTest.java:1273:23:1273:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1273:23:1273:30 | source(...) | user-provided value | -| LogInjectionTest.java:1274:23:1274:30 | source(...) | LogInjectionTest.java:1274:23:1274:30 | source(...) | LogInjectionTest.java:1274:23:1274:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1274:23:1274:30 | source(...) | user-provided value | -| LogInjectionTest.java:1275:23:1275:30 | source(...) | LogInjectionTest.java:1275:23:1275:30 | source(...) | LogInjectionTest.java:1275:23:1275:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1275:23:1275:30 | source(...) | user-provided value | -| LogInjectionTest.java:1276:22:1276:29 | source(...) | LogInjectionTest.java:1276:22:1276:29 | source(...) | LogInjectionTest.java:1276:22:1276:29 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1276:22:1276:29 | source(...) | user-provided value | -| LogInjectionTest.java:1277:23:1277:30 | source(...) | LogInjectionTest.java:1277:23:1277:30 | source(...) | LogInjectionTest.java:1277:23:1277:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1277:23:1277:30 | source(...) | user-provided value | -| LogInjectionTest.java:1278:22:1278:29 | source(...) | LogInjectionTest.java:1278:22:1278:29 | source(...) | LogInjectionTest.java:1278:22:1278:29 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1278:22:1278:29 | source(...) | user-provided value | -| LogInjectionTest.java:1283:27:1283:34 | source(...) | LogInjectionTest.java:1283:27:1283:34 | source(...) | LogInjectionTest.java:1283:27:1283:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1283:27:1283:34 | source(...) | user-provided value | -| LogInjectionTest.java:1284:27:1284:34 | source(...) | LogInjectionTest.java:1284:27:1284:34 | source(...) | LogInjectionTest.java:1284:27:1284:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1284:27:1284:34 | source(...) | user-provided value | -| LogInjectionTest.java:1288:42:1288:49 | source(...) | LogInjectionTest.java:1288:42:1288:49 | source(...) | LogInjectionTest.java:1288:42:1288:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1288:42:1288:49 | source(...) | user-provided value | -| LogInjectionTest.java:1289:57:1289:79 | new Object[] | LogInjectionTest.java:1289:71:1289:78 | source(...) : Object | LogInjectionTest.java:1289:57:1289:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1289:71:1289:78 | source(...) | user-provided value | -| LogInjectionTest.java:1290:42:1290:49 | source(...) | LogInjectionTest.java:1290:42:1290:49 | source(...) | LogInjectionTest.java:1290:42:1290:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1290:42:1290:49 | source(...) | user-provided value | -| LogInjectionTest.java:1291:27:1291:34 | source(...) | LogInjectionTest.java:1291:27:1291:34 | source(...) | LogInjectionTest.java:1291:27:1291:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1291:27:1291:34 | source(...) | user-provided value | -| LogInjectionTest.java:1292:27:1292:34 | source(...) | LogInjectionTest.java:1292:27:1292:34 | source(...) | LogInjectionTest.java:1292:27:1292:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1292:27:1292:34 | source(...) | user-provided value | -| LogInjectionTest.java:1296:42:1296:49 | source(...) | LogInjectionTest.java:1296:42:1296:49 | source(...) | LogInjectionTest.java:1296:42:1296:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1296:42:1296:49 | source(...) | user-provided value | -| LogInjectionTest.java:1297:57:1297:79 | new Object[] | LogInjectionTest.java:1297:71:1297:78 | source(...) : Object | LogInjectionTest.java:1297:57:1297:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1297:71:1297:78 | source(...) | user-provided value | +| LogInjectionTest.java:1266:160:1266:176 | (...)... | LogInjectionTest.java:1266:169:1266:176 | source(...) : Object | LogInjectionTest.java:1266:160:1266:176 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1266:169:1266:176 | source(...) | user-provided value | +| LogInjectionTest.java:1267:145:1267:161 | (...)... | LogInjectionTest.java:1267:154:1267:161 | source(...) : Object | LogInjectionTest.java:1267:145:1267:161 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1267:154:1267:161 | source(...) | user-provided value | +| LogInjectionTest.java:1268:130:1268:146 | (...)... | LogInjectionTest.java:1268:139:1268:146 | source(...) : Object | LogInjectionTest.java:1268:130:1268:146 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1268:139:1268:146 | source(...) | user-provided value | +| LogInjectionTest.java:1269:115:1269:131 | (...)... | LogInjectionTest.java:1269:124:1269:131 | source(...) : Object | LogInjectionTest.java:1269:115:1269:131 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1269:124:1269:131 | source(...) | user-provided value | +| LogInjectionTest.java:1270:100:1270:116 | (...)... | LogInjectionTest.java:1270:109:1270:116 | source(...) : Object | LogInjectionTest.java:1270:100:1270:116 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1270:109:1270:116 | source(...) | user-provided value | +| LogInjectionTest.java:1271:85:1271:101 | (...)... | LogInjectionTest.java:1271:94:1271:101 | source(...) : Object | LogInjectionTest.java:1271:85:1271:101 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1271:94:1271:101 | source(...) | user-provided value | +| LogInjectionTest.java:1272:70:1272:86 | (...)... | LogInjectionTest.java:1272:79:1272:86 | source(...) : Object | LogInjectionTest.java:1272:70:1272:86 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1272:79:1272:86 | source(...) | user-provided value | +| LogInjectionTest.java:1273:55:1273:71 | (...)... | LogInjectionTest.java:1273:64:1273:71 | source(...) : Object | LogInjectionTest.java:1273:55:1273:71 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1273:64:1273:71 | source(...) | user-provided value | +| LogInjectionTest.java:1274:40:1274:56 | (...)... | LogInjectionTest.java:1274:49:1274:56 | source(...) : Object | LogInjectionTest.java:1274:40:1274:56 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1274:49:1274:56 | source(...) | user-provided value | +| LogInjectionTest.java:1275:25:1275:41 | (...)... | LogInjectionTest.java:1275:34:1275:41 | source(...) : Object | LogInjectionTest.java:1275:25:1275:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1275:34:1275:41 | source(...) | user-provided value | +| LogInjectionTest.java:1277:25:1277:41 | (...)... | LogInjectionTest.java:1277:34:1277:41 | source(...) : Object | LogInjectionTest.java:1277:25:1277:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1277:34:1277:41 | source(...) | user-provided value | +| LogInjectionTest.java:1278:40:1278:61 | (...)... | LogInjectionTest.java:1278:54:1278:61 | source(...) : Object | LogInjectionTest.java:1278:40:1278:61 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1278:54:1278:61 | source(...) | user-provided value | +| LogInjectionTest.java:1279:25:1279:46 | (...)... | LogInjectionTest.java:1279:39:1279:46 | source(...) : Object | LogInjectionTest.java:1279:25:1279:46 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1279:39:1279:46 | source(...) | user-provided value | +| LogInjectionTest.java:1283:23:1283:30 | source(...) | LogInjectionTest.java:1283:23:1283:30 | source(...) | LogInjectionTest.java:1283:23:1283:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1283:23:1283:30 | source(...) | user-provided value | +| LogInjectionTest.java:1284:23:1284:30 | source(...) | LogInjectionTest.java:1284:23:1284:30 | source(...) | LogInjectionTest.java:1284:23:1284:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1284:23:1284:30 | source(...) | user-provided value | +| LogInjectionTest.java:1285:23:1285:30 | source(...) | LogInjectionTest.java:1285:23:1285:30 | source(...) | LogInjectionTest.java:1285:23:1285:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1285:23:1285:30 | source(...) | user-provided value | +| LogInjectionTest.java:1286:22:1286:29 | source(...) | LogInjectionTest.java:1286:22:1286:29 | source(...) | LogInjectionTest.java:1286:22:1286:29 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1286:22:1286:29 | source(...) | user-provided value | +| LogInjectionTest.java:1287:23:1287:30 | source(...) | LogInjectionTest.java:1287:23:1287:30 | source(...) | LogInjectionTest.java:1287:23:1287:30 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1287:23:1287:30 | source(...) | user-provided value | +| LogInjectionTest.java:1288:22:1288:29 | source(...) | LogInjectionTest.java:1288:22:1288:29 | source(...) | LogInjectionTest.java:1288:22:1288:29 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1288:22:1288:29 | source(...) | user-provided value | +| LogInjectionTest.java:1293:27:1293:34 | source(...) | LogInjectionTest.java:1293:27:1293:34 | source(...) | LogInjectionTest.java:1293:27:1293:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1293:27:1293:34 | source(...) | user-provided value | +| LogInjectionTest.java:1294:27:1294:34 | source(...) | LogInjectionTest.java:1294:27:1294:34 | source(...) | LogInjectionTest.java:1294:27:1294:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1294:27:1294:34 | source(...) | user-provided value | | LogInjectionTest.java:1298:42:1298:49 | source(...) | LogInjectionTest.java:1298:42:1298:49 | source(...) | LogInjectionTest.java:1298:42:1298:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1298:42:1298:49 | source(...) | user-provided value | -| LogInjectionTest.java:1299:27:1299:34 | source(...) | LogInjectionTest.java:1299:27:1299:34 | source(...) | LogInjectionTest.java:1299:27:1299:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1299:27:1299:34 | source(...) | user-provided value | -| LogInjectionTest.java:1300:27:1300:34 | source(...) | LogInjectionTest.java:1300:27:1300:34 | source(...) | LogInjectionTest.java:1300:27:1300:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1300:27:1300:34 | source(...) | user-provided value | -| LogInjectionTest.java:1304:42:1304:49 | source(...) | LogInjectionTest.java:1304:42:1304:49 | source(...) | LogInjectionTest.java:1304:42:1304:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1304:42:1304:49 | source(...) | user-provided value | -| LogInjectionTest.java:1305:57:1305:79 | new Object[] | LogInjectionTest.java:1305:71:1305:78 | source(...) : Object | LogInjectionTest.java:1305:57:1305:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1305:71:1305:78 | source(...) | user-provided value | +| LogInjectionTest.java:1299:57:1299:79 | new Object[] | LogInjectionTest.java:1299:71:1299:78 | source(...) : Object | LogInjectionTest.java:1299:57:1299:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1299:71:1299:78 | source(...) | user-provided value | +| LogInjectionTest.java:1300:42:1300:49 | source(...) | LogInjectionTest.java:1300:42:1300:49 | source(...) | LogInjectionTest.java:1300:42:1300:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1300:42:1300:49 | source(...) | user-provided value | +| LogInjectionTest.java:1301:27:1301:34 | source(...) | LogInjectionTest.java:1301:27:1301:34 | source(...) | LogInjectionTest.java:1301:27:1301:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1301:27:1301:34 | source(...) | user-provided value | +| LogInjectionTest.java:1302:27:1302:34 | source(...) | LogInjectionTest.java:1302:27:1302:34 | source(...) | LogInjectionTest.java:1302:27:1302:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1302:27:1302:34 | source(...) | user-provided value | | LogInjectionTest.java:1306:42:1306:49 | source(...) | LogInjectionTest.java:1306:42:1306:49 | source(...) | LogInjectionTest.java:1306:42:1306:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1306:42:1306:49 | source(...) | user-provided value | -| LogInjectionTest.java:1307:26:1307:33 | source(...) | LogInjectionTest.java:1307:26:1307:33 | source(...) | LogInjectionTest.java:1307:26:1307:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1307:26:1307:33 | source(...) | user-provided value | -| LogInjectionTest.java:1308:26:1308:33 | source(...) | LogInjectionTest.java:1308:26:1308:33 | source(...) | LogInjectionTest.java:1308:26:1308:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1308:26:1308:33 | source(...) | user-provided value | -| LogInjectionTest.java:1312:41:1312:48 | source(...) | LogInjectionTest.java:1312:41:1312:48 | source(...) | LogInjectionTest.java:1312:41:1312:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1312:41:1312:48 | source(...) | user-provided value | -| LogInjectionTest.java:1313:56:1313:78 | new Object[] | LogInjectionTest.java:1313:70:1313:77 | source(...) : Object | LogInjectionTest.java:1313:56:1313:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1313:70:1313:77 | source(...) | user-provided value | -| LogInjectionTest.java:1314:41:1314:48 | source(...) | LogInjectionTest.java:1314:41:1314:48 | source(...) | LogInjectionTest.java:1314:41:1314:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1314:41:1314:48 | source(...) | user-provided value | -| LogInjectionTest.java:1315:27:1315:34 | source(...) | LogInjectionTest.java:1315:27:1315:34 | source(...) | LogInjectionTest.java:1315:27:1315:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1315:27:1315:34 | source(...) | user-provided value | -| LogInjectionTest.java:1316:27:1316:34 | source(...) | LogInjectionTest.java:1316:27:1316:34 | source(...) | LogInjectionTest.java:1316:27:1316:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1316:27:1316:34 | source(...) | user-provided value | -| LogInjectionTest.java:1320:42:1320:49 | source(...) | LogInjectionTest.java:1320:42:1320:49 | source(...) | LogInjectionTest.java:1320:42:1320:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1320:42:1320:49 | source(...) | user-provided value | -| LogInjectionTest.java:1321:57:1321:79 | new Object[] | LogInjectionTest.java:1321:71:1321:78 | source(...) : Object | LogInjectionTest.java:1321:57:1321:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1321:71:1321:78 | source(...) | user-provided value | -| LogInjectionTest.java:1322:42:1322:49 | source(...) | LogInjectionTest.java:1322:42:1322:49 | source(...) | LogInjectionTest.java:1322:42:1322:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1322:42:1322:49 | source(...) | user-provided value | -| LogInjectionTest.java:1323:26:1323:33 | source(...) | LogInjectionTest.java:1323:26:1323:33 | source(...) | LogInjectionTest.java:1323:26:1323:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1323:26:1323:33 | source(...) | user-provided value | -| LogInjectionTest.java:1324:26:1324:33 | source(...) | LogInjectionTest.java:1324:26:1324:33 | source(...) | LogInjectionTest.java:1324:26:1324:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1324:26:1324:33 | source(...) | user-provided value | -| LogInjectionTest.java:1328:41:1328:48 | source(...) | LogInjectionTest.java:1328:41:1328:48 | source(...) | LogInjectionTest.java:1328:41:1328:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1328:41:1328:48 | source(...) | user-provided value | -| LogInjectionTest.java:1329:56:1329:78 | new Object[] | LogInjectionTest.java:1329:70:1329:77 | source(...) : Object | LogInjectionTest.java:1329:56:1329:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1329:70:1329:77 | source(...) | user-provided value | -| LogInjectionTest.java:1330:41:1330:48 | source(...) | LogInjectionTest.java:1330:41:1330:48 | source(...) | LogInjectionTest.java:1330:41:1330:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1330:41:1330:48 | source(...) | user-provided value | -| LogInjectionTest.java:1331:64:1331:71 | source(...) | LogInjectionTest.java:1331:64:1331:71 | source(...) | LogInjectionTest.java:1331:64:1331:71 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1331:64:1331:71 | source(...) | user-provided value | -| LogInjectionTest.java:1332:64:1332:71 | source(...) | LogInjectionTest.java:1332:64:1332:71 | source(...) | LogInjectionTest.java:1332:64:1332:71 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1332:64:1332:71 | source(...) | user-provided value | -| LogInjectionTest.java:1336:79:1336:86 | source(...) | LogInjectionTest.java:1336:79:1336:86 | source(...) | LogInjectionTest.java:1336:79:1336:86 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1336:79:1336:86 | source(...) | user-provided value | -| LogInjectionTest.java:1337:79:1337:86 | source(...) | LogInjectionTest.java:1337:79:1337:86 | source(...) | LogInjectionTest.java:1337:79:1337:86 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1337:79:1337:86 | source(...) | user-provided value | -| LogInjectionTest.java:1338:94:1338:116 | new Object[] | LogInjectionTest.java:1338:108:1338:115 | source(...) : Object | LogInjectionTest.java:1338:94:1338:116 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1338:108:1338:115 | source(...) | user-provided value | -| LogInjectionTest.java:1339:43:1339:59 | (...)... | LogInjectionTest.java:1339:52:1339:59 | source(...) : Object | LogInjectionTest.java:1339:43:1339:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1339:52:1339:59 | source(...) | user-provided value | -| LogInjectionTest.java:1340:28:1340:44 | (...)... | LogInjectionTest.java:1340:37:1340:44 | source(...) : Object | LogInjectionTest.java:1340:28:1340:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1340:37:1340:44 | source(...) | user-provided value | -| LogInjectionTest.java:1341:43:1341:59 | (...)... | LogInjectionTest.java:1341:52:1341:59 | source(...) : Object | LogInjectionTest.java:1341:43:1341:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1341:52:1341:59 | source(...) | user-provided value | -| LogInjectionTest.java:1342:28:1342:44 | (...)... | LogInjectionTest.java:1342:37:1342:44 | source(...) : Object | LogInjectionTest.java:1342:28:1342:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1342:37:1342:44 | source(...) | user-provided value | -| LogInjectionTest.java:1343:28:1343:44 | (...)... | LogInjectionTest.java:1343:37:1343:44 | source(...) : Object | LogInjectionTest.java:1343:28:1343:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1343:37:1343:44 | source(...) | user-provided value | -| LogInjectionTest.java:1344:28:1344:44 | (...)... | LogInjectionTest.java:1344:37:1344:44 | source(...) : Object | LogInjectionTest.java:1344:28:1344:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1344:37:1344:44 | source(...) | user-provided value | -| LogInjectionTest.java:1345:43:1345:65 | new Object[] | LogInjectionTest.java:1345:57:1345:64 | source(...) : Object | LogInjectionTest.java:1345:43:1345:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1345:57:1345:64 | source(...) | user-provided value | -| LogInjectionTest.java:1346:43:1346:65 | new Object[] | LogInjectionTest.java:1346:57:1346:64 | source(...) : Object | LogInjectionTest.java:1346:43:1346:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1346:57:1346:64 | source(...) | user-provided value | -| LogInjectionTest.java:1347:58:1347:74 | (...)... | LogInjectionTest.java:1347:67:1347:74 | source(...) : Object | LogInjectionTest.java:1347:58:1347:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1347:67:1347:74 | source(...) | user-provided value | -| LogInjectionTest.java:1348:43:1348:59 | (...)... | LogInjectionTest.java:1348:52:1348:59 | source(...) : Object | LogInjectionTest.java:1348:43:1348:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1348:52:1348:59 | source(...) | user-provided value | -| LogInjectionTest.java:1349:28:1349:44 | (...)... | LogInjectionTest.java:1349:37:1349:44 | source(...) : Object | LogInjectionTest.java:1349:28:1349:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1349:37:1349:44 | source(...) | user-provided value | -| LogInjectionTest.java:1350:58:1350:74 | (...)... | LogInjectionTest.java:1350:67:1350:74 | source(...) : Object | LogInjectionTest.java:1350:58:1350:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1350:67:1350:74 | source(...) | user-provided value | +| LogInjectionTest.java:1307:57:1307:79 | new Object[] | LogInjectionTest.java:1307:71:1307:78 | source(...) : Object | LogInjectionTest.java:1307:57:1307:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1307:71:1307:78 | source(...) | user-provided value | +| LogInjectionTest.java:1308:42:1308:49 | source(...) | LogInjectionTest.java:1308:42:1308:49 | source(...) | LogInjectionTest.java:1308:42:1308:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1308:42:1308:49 | source(...) | user-provided value | +| LogInjectionTest.java:1309:27:1309:34 | source(...) | LogInjectionTest.java:1309:27:1309:34 | source(...) | LogInjectionTest.java:1309:27:1309:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1309:27:1309:34 | source(...) | user-provided value | +| LogInjectionTest.java:1310:27:1310:34 | source(...) | LogInjectionTest.java:1310:27:1310:34 | source(...) | LogInjectionTest.java:1310:27:1310:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1310:27:1310:34 | source(...) | user-provided value | +| LogInjectionTest.java:1314:42:1314:49 | source(...) | LogInjectionTest.java:1314:42:1314:49 | source(...) | LogInjectionTest.java:1314:42:1314:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1314:42:1314:49 | source(...) | user-provided value | +| LogInjectionTest.java:1315:57:1315:79 | new Object[] | LogInjectionTest.java:1315:71:1315:78 | source(...) : Object | LogInjectionTest.java:1315:57:1315:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1315:71:1315:78 | source(...) | user-provided value | +| LogInjectionTest.java:1316:42:1316:49 | source(...) | LogInjectionTest.java:1316:42:1316:49 | source(...) | LogInjectionTest.java:1316:42:1316:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1316:42:1316:49 | source(...) | user-provided value | +| LogInjectionTest.java:1317:26:1317:33 | source(...) | LogInjectionTest.java:1317:26:1317:33 | source(...) | LogInjectionTest.java:1317:26:1317:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1317:26:1317:33 | source(...) | user-provided value | +| LogInjectionTest.java:1318:26:1318:33 | source(...) | LogInjectionTest.java:1318:26:1318:33 | source(...) | LogInjectionTest.java:1318:26:1318:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1318:26:1318:33 | source(...) | user-provided value | +| LogInjectionTest.java:1322:41:1322:48 | source(...) | LogInjectionTest.java:1322:41:1322:48 | source(...) | LogInjectionTest.java:1322:41:1322:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1322:41:1322:48 | source(...) | user-provided value | +| LogInjectionTest.java:1323:56:1323:78 | new Object[] | LogInjectionTest.java:1323:70:1323:77 | source(...) : Object | LogInjectionTest.java:1323:56:1323:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1323:70:1323:77 | source(...) | user-provided value | +| LogInjectionTest.java:1324:41:1324:48 | source(...) | LogInjectionTest.java:1324:41:1324:48 | source(...) | LogInjectionTest.java:1324:41:1324:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1324:41:1324:48 | source(...) | user-provided value | +| LogInjectionTest.java:1325:27:1325:34 | source(...) | LogInjectionTest.java:1325:27:1325:34 | source(...) | LogInjectionTest.java:1325:27:1325:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1325:27:1325:34 | source(...) | user-provided value | +| LogInjectionTest.java:1326:27:1326:34 | source(...) | LogInjectionTest.java:1326:27:1326:34 | source(...) | LogInjectionTest.java:1326:27:1326:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1326:27:1326:34 | source(...) | user-provided value | +| LogInjectionTest.java:1330:42:1330:49 | source(...) | LogInjectionTest.java:1330:42:1330:49 | source(...) | LogInjectionTest.java:1330:42:1330:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1330:42:1330:49 | source(...) | user-provided value | +| LogInjectionTest.java:1331:57:1331:79 | new Object[] | LogInjectionTest.java:1331:71:1331:78 | source(...) : Object | LogInjectionTest.java:1331:57:1331:79 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1331:71:1331:78 | source(...) | user-provided value | +| LogInjectionTest.java:1332:42:1332:49 | source(...) | LogInjectionTest.java:1332:42:1332:49 | source(...) | LogInjectionTest.java:1332:42:1332:49 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1332:42:1332:49 | source(...) | user-provided value | +| LogInjectionTest.java:1333:26:1333:33 | source(...) | LogInjectionTest.java:1333:26:1333:33 | source(...) | LogInjectionTest.java:1333:26:1333:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1333:26:1333:33 | source(...) | user-provided value | +| LogInjectionTest.java:1334:26:1334:33 | source(...) | LogInjectionTest.java:1334:26:1334:33 | source(...) | LogInjectionTest.java:1334:26:1334:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1334:26:1334:33 | source(...) | user-provided value | +| LogInjectionTest.java:1338:41:1338:48 | source(...) | LogInjectionTest.java:1338:41:1338:48 | source(...) | LogInjectionTest.java:1338:41:1338:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1338:41:1338:48 | source(...) | user-provided value | +| LogInjectionTest.java:1339:56:1339:78 | new Object[] | LogInjectionTest.java:1339:70:1339:77 | source(...) : Object | LogInjectionTest.java:1339:56:1339:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1339:70:1339:77 | source(...) | user-provided value | +| LogInjectionTest.java:1340:41:1340:48 | source(...) | LogInjectionTest.java:1340:41:1340:48 | source(...) | LogInjectionTest.java:1340:41:1340:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1340:41:1340:48 | source(...) | user-provided value | +| LogInjectionTest.java:1341:64:1341:71 | source(...) | LogInjectionTest.java:1341:64:1341:71 | source(...) | LogInjectionTest.java:1341:64:1341:71 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1341:64:1341:71 | source(...) | user-provided value | +| LogInjectionTest.java:1342:64:1342:71 | source(...) | LogInjectionTest.java:1342:64:1342:71 | source(...) | LogInjectionTest.java:1342:64:1342:71 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1342:64:1342:71 | source(...) | user-provided value | +| LogInjectionTest.java:1346:79:1346:86 | source(...) | LogInjectionTest.java:1346:79:1346:86 | source(...) | LogInjectionTest.java:1346:79:1346:86 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1346:79:1346:86 | source(...) | user-provided value | +| LogInjectionTest.java:1347:79:1347:86 | source(...) | LogInjectionTest.java:1347:79:1347:86 | source(...) | LogInjectionTest.java:1347:79:1347:86 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1347:79:1347:86 | source(...) | user-provided value | +| LogInjectionTest.java:1348:94:1348:116 | new Object[] | LogInjectionTest.java:1348:108:1348:115 | source(...) : Object | LogInjectionTest.java:1348:94:1348:116 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1348:108:1348:115 | source(...) | user-provided value | +| LogInjectionTest.java:1349:43:1349:59 | (...)... | LogInjectionTest.java:1349:52:1349:59 | source(...) : Object | LogInjectionTest.java:1349:43:1349:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1349:52:1349:59 | source(...) | user-provided value | +| LogInjectionTest.java:1350:28:1350:44 | (...)... | LogInjectionTest.java:1350:37:1350:44 | source(...) : Object | LogInjectionTest.java:1350:28:1350:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1350:37:1350:44 | source(...) | user-provided value | | LogInjectionTest.java:1351:43:1351:59 | (...)... | LogInjectionTest.java:1351:52:1351:59 | source(...) : Object | LogInjectionTest.java:1351:43:1351:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1351:52:1351:59 | source(...) | user-provided value | | LogInjectionTest.java:1352:28:1352:44 | (...)... | LogInjectionTest.java:1352:37:1352:44 | source(...) : Object | LogInjectionTest.java:1352:28:1352:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1352:37:1352:44 | source(...) | user-provided value | -| LogInjectionTest.java:1353:73:1353:89 | (...)... | LogInjectionTest.java:1353:82:1353:89 | source(...) : Object | LogInjectionTest.java:1353:73:1353:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1353:82:1353:89 | source(...) | user-provided value | -| LogInjectionTest.java:1354:58:1354:74 | (...)... | LogInjectionTest.java:1354:67:1354:74 | source(...) : Object | LogInjectionTest.java:1354:58:1354:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1354:67:1354:74 | source(...) | user-provided value | -| LogInjectionTest.java:1355:43:1355:59 | (...)... | LogInjectionTest.java:1355:52:1355:59 | source(...) : Object | LogInjectionTest.java:1355:43:1355:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1355:52:1355:59 | source(...) | user-provided value | -| LogInjectionTest.java:1356:28:1356:44 | (...)... | LogInjectionTest.java:1356:37:1356:44 | source(...) : Object | LogInjectionTest.java:1356:28:1356:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1356:37:1356:44 | source(...) | user-provided value | -| LogInjectionTest.java:1357:73:1357:89 | (...)... | LogInjectionTest.java:1357:82:1357:89 | source(...) : Object | LogInjectionTest.java:1357:73:1357:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1357:82:1357:89 | source(...) | user-provided value | -| LogInjectionTest.java:1358:58:1358:74 | (...)... | LogInjectionTest.java:1358:67:1358:74 | source(...) : Object | LogInjectionTest.java:1358:58:1358:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1358:67:1358:74 | source(...) | user-provided value | -| LogInjectionTest.java:1359:43:1359:59 | (...)... | LogInjectionTest.java:1359:52:1359:59 | source(...) : Object | LogInjectionTest.java:1359:43:1359:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1359:52:1359:59 | source(...) | user-provided value | -| LogInjectionTest.java:1360:28:1360:44 | (...)... | LogInjectionTest.java:1360:37:1360:44 | source(...) : Object | LogInjectionTest.java:1360:28:1360:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1360:37:1360:44 | source(...) | user-provided value | +| LogInjectionTest.java:1353:28:1353:44 | (...)... | LogInjectionTest.java:1353:37:1353:44 | source(...) : Object | LogInjectionTest.java:1353:28:1353:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1353:37:1353:44 | source(...) | user-provided value | +| LogInjectionTest.java:1354:28:1354:44 | (...)... | LogInjectionTest.java:1354:37:1354:44 | source(...) : Object | LogInjectionTest.java:1354:28:1354:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1354:37:1354:44 | source(...) | user-provided value | +| LogInjectionTest.java:1355:43:1355:65 | new Object[] | LogInjectionTest.java:1355:57:1355:64 | source(...) : Object | LogInjectionTest.java:1355:43:1355:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1355:57:1355:64 | source(...) | user-provided value | +| LogInjectionTest.java:1356:43:1356:65 | new Object[] | LogInjectionTest.java:1356:57:1356:64 | source(...) : Object | LogInjectionTest.java:1356:43:1356:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1356:57:1356:64 | source(...) | user-provided value | +| LogInjectionTest.java:1357:58:1357:74 | (...)... | LogInjectionTest.java:1357:67:1357:74 | source(...) : Object | LogInjectionTest.java:1357:58:1357:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1357:67:1357:74 | source(...) | user-provided value | +| LogInjectionTest.java:1358:43:1358:59 | (...)... | LogInjectionTest.java:1358:52:1358:59 | source(...) : Object | LogInjectionTest.java:1358:43:1358:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1358:52:1358:59 | source(...) | user-provided value | +| LogInjectionTest.java:1359:28:1359:44 | (...)... | LogInjectionTest.java:1359:37:1359:44 | source(...) : Object | LogInjectionTest.java:1359:28:1359:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1359:37:1359:44 | source(...) | user-provided value | +| LogInjectionTest.java:1360:58:1360:74 | (...)... | LogInjectionTest.java:1360:67:1360:74 | source(...) : Object | LogInjectionTest.java:1360:58:1360:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1360:67:1360:74 | source(...) | user-provided value | | LogInjectionTest.java:1361:43:1361:59 | (...)... | LogInjectionTest.java:1361:52:1361:59 | source(...) : Object | LogInjectionTest.java:1361:43:1361:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1361:52:1361:59 | source(...) | user-provided value | | LogInjectionTest.java:1362:28:1362:44 | (...)... | LogInjectionTest.java:1362:37:1362:44 | source(...) : Object | LogInjectionTest.java:1362:28:1362:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1362:37:1362:44 | source(...) | user-provided value | -| LogInjectionTest.java:1363:43:1363:59 | (...)... | LogInjectionTest.java:1363:52:1363:59 | source(...) : Object | LogInjectionTest.java:1363:43:1363:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1363:52:1363:59 | source(...) | user-provided value | -| LogInjectionTest.java:1364:28:1364:44 | (...)... | LogInjectionTest.java:1364:37:1364:44 | source(...) : Object | LogInjectionTest.java:1364:28:1364:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1364:37:1364:44 | source(...) | user-provided value | -| LogInjectionTest.java:1365:28:1365:44 | (...)... | LogInjectionTest.java:1365:37:1365:44 | source(...) : Object | LogInjectionTest.java:1365:28:1365:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1365:37:1365:44 | source(...) | user-provided value | +| LogInjectionTest.java:1363:73:1363:89 | (...)... | LogInjectionTest.java:1363:82:1363:89 | source(...) : Object | LogInjectionTest.java:1363:73:1363:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1363:82:1363:89 | source(...) | user-provided value | +| LogInjectionTest.java:1364:58:1364:74 | (...)... | LogInjectionTest.java:1364:67:1364:74 | source(...) : Object | LogInjectionTest.java:1364:58:1364:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1364:67:1364:74 | source(...) | user-provided value | +| LogInjectionTest.java:1365:43:1365:59 | (...)... | LogInjectionTest.java:1365:52:1365:59 | source(...) : Object | LogInjectionTest.java:1365:43:1365:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1365:52:1365:59 | source(...) | user-provided value | | LogInjectionTest.java:1366:28:1366:44 | (...)... | LogInjectionTest.java:1366:37:1366:44 | source(...) : Object | LogInjectionTest.java:1366:28:1366:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1366:37:1366:44 | source(...) | user-provided value | -| LogInjectionTest.java:1367:43:1367:65 | new Object[] | LogInjectionTest.java:1367:57:1367:64 | source(...) : Object | LogInjectionTest.java:1367:43:1367:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1367:57:1367:64 | source(...) | user-provided value | -| LogInjectionTest.java:1368:43:1368:65 | new Object[] | LogInjectionTest.java:1368:57:1368:64 | source(...) : Object | LogInjectionTest.java:1368:43:1368:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1368:57:1368:64 | source(...) | user-provided value | -| LogInjectionTest.java:1369:58:1369:74 | (...)... | LogInjectionTest.java:1369:67:1369:74 | source(...) : Object | LogInjectionTest.java:1369:58:1369:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1369:67:1369:74 | source(...) | user-provided value | -| LogInjectionTest.java:1370:43:1370:59 | (...)... | LogInjectionTest.java:1370:52:1370:59 | source(...) : Object | LogInjectionTest.java:1370:43:1370:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1370:52:1370:59 | source(...) | user-provided value | -| LogInjectionTest.java:1371:28:1371:44 | (...)... | LogInjectionTest.java:1371:37:1371:44 | source(...) : Object | LogInjectionTest.java:1371:28:1371:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1371:37:1371:44 | source(...) | user-provided value | -| LogInjectionTest.java:1372:58:1372:74 | (...)... | LogInjectionTest.java:1372:67:1372:74 | source(...) : Object | LogInjectionTest.java:1372:58:1372:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1372:67:1372:74 | source(...) | user-provided value | +| LogInjectionTest.java:1367:73:1367:89 | (...)... | LogInjectionTest.java:1367:82:1367:89 | source(...) : Object | LogInjectionTest.java:1367:73:1367:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1367:82:1367:89 | source(...) | user-provided value | +| LogInjectionTest.java:1368:58:1368:74 | (...)... | LogInjectionTest.java:1368:67:1368:74 | source(...) : Object | LogInjectionTest.java:1368:58:1368:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1368:67:1368:74 | source(...) | user-provided value | +| LogInjectionTest.java:1369:43:1369:59 | (...)... | LogInjectionTest.java:1369:52:1369:59 | source(...) : Object | LogInjectionTest.java:1369:43:1369:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1369:52:1369:59 | source(...) | user-provided value | +| LogInjectionTest.java:1370:28:1370:44 | (...)... | LogInjectionTest.java:1370:37:1370:44 | source(...) : Object | LogInjectionTest.java:1370:28:1370:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1370:37:1370:44 | source(...) | user-provided value | +| LogInjectionTest.java:1371:43:1371:59 | (...)... | LogInjectionTest.java:1371:52:1371:59 | source(...) : Object | LogInjectionTest.java:1371:43:1371:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1371:52:1371:59 | source(...) | user-provided value | +| LogInjectionTest.java:1372:28:1372:44 | (...)... | LogInjectionTest.java:1372:37:1372:44 | source(...) : Object | LogInjectionTest.java:1372:28:1372:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1372:37:1372:44 | source(...) | user-provided value | | LogInjectionTest.java:1373:43:1373:59 | (...)... | LogInjectionTest.java:1373:52:1373:59 | source(...) : Object | LogInjectionTest.java:1373:43:1373:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1373:52:1373:59 | source(...) | user-provided value | | LogInjectionTest.java:1374:28:1374:44 | (...)... | LogInjectionTest.java:1374:37:1374:44 | source(...) : Object | LogInjectionTest.java:1374:28:1374:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1374:37:1374:44 | source(...) | user-provided value | -| LogInjectionTest.java:1375:73:1375:89 | (...)... | LogInjectionTest.java:1375:82:1375:89 | source(...) : Object | LogInjectionTest.java:1375:73:1375:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1375:82:1375:89 | source(...) | user-provided value | -| LogInjectionTest.java:1376:58:1376:74 | (...)... | LogInjectionTest.java:1376:67:1376:74 | source(...) : Object | LogInjectionTest.java:1376:58:1376:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1376:67:1376:74 | source(...) | user-provided value | -| LogInjectionTest.java:1377:43:1377:59 | (...)... | LogInjectionTest.java:1377:52:1377:59 | source(...) : Object | LogInjectionTest.java:1377:43:1377:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1377:52:1377:59 | source(...) | user-provided value | -| LogInjectionTest.java:1378:28:1378:44 | (...)... | LogInjectionTest.java:1378:37:1378:44 | source(...) : Object | LogInjectionTest.java:1378:28:1378:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1378:37:1378:44 | source(...) | user-provided value | -| LogInjectionTest.java:1379:73:1379:89 | (...)... | LogInjectionTest.java:1379:82:1379:89 | source(...) : Object | LogInjectionTest.java:1379:73:1379:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1379:82:1379:89 | source(...) | user-provided value | -| LogInjectionTest.java:1380:58:1380:74 | (...)... | LogInjectionTest.java:1380:67:1380:74 | source(...) : Object | LogInjectionTest.java:1380:58:1380:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1380:67:1380:74 | source(...) | user-provided value | -| LogInjectionTest.java:1381:43:1381:59 | (...)... | LogInjectionTest.java:1381:52:1381:59 | source(...) : Object | LogInjectionTest.java:1381:43:1381:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1381:52:1381:59 | source(...) | user-provided value | -| LogInjectionTest.java:1382:28:1382:44 | (...)... | LogInjectionTest.java:1382:37:1382:44 | source(...) : Object | LogInjectionTest.java:1382:28:1382:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1382:37:1382:44 | source(...) | user-provided value | +| LogInjectionTest.java:1375:28:1375:44 | (...)... | LogInjectionTest.java:1375:37:1375:44 | source(...) : Object | LogInjectionTest.java:1375:28:1375:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1375:37:1375:44 | source(...) | user-provided value | +| LogInjectionTest.java:1376:28:1376:44 | (...)... | LogInjectionTest.java:1376:37:1376:44 | source(...) : Object | LogInjectionTest.java:1376:28:1376:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1376:37:1376:44 | source(...) | user-provided value | +| LogInjectionTest.java:1377:43:1377:65 | new Object[] | LogInjectionTest.java:1377:57:1377:64 | source(...) : Object | LogInjectionTest.java:1377:43:1377:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1377:57:1377:64 | source(...) | user-provided value | +| LogInjectionTest.java:1378:43:1378:65 | new Object[] | LogInjectionTest.java:1378:57:1378:64 | source(...) : Object | LogInjectionTest.java:1378:43:1378:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1378:57:1378:64 | source(...) | user-provided value | +| LogInjectionTest.java:1379:58:1379:74 | (...)... | LogInjectionTest.java:1379:67:1379:74 | source(...) : Object | LogInjectionTest.java:1379:58:1379:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1379:67:1379:74 | source(...) | user-provided value | +| LogInjectionTest.java:1380:43:1380:59 | (...)... | LogInjectionTest.java:1380:52:1380:59 | source(...) : Object | LogInjectionTest.java:1380:43:1380:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1380:52:1380:59 | source(...) | user-provided value | +| LogInjectionTest.java:1381:28:1381:44 | (...)... | LogInjectionTest.java:1381:37:1381:44 | source(...) : Object | LogInjectionTest.java:1381:28:1381:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1381:37:1381:44 | source(...) | user-provided value | +| LogInjectionTest.java:1382:58:1382:74 | (...)... | LogInjectionTest.java:1382:67:1382:74 | source(...) : Object | LogInjectionTest.java:1382:58:1382:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1382:67:1382:74 | source(...) | user-provided value | | LogInjectionTest.java:1383:43:1383:59 | (...)... | LogInjectionTest.java:1383:52:1383:59 | source(...) : Object | LogInjectionTest.java:1383:43:1383:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1383:52:1383:59 | source(...) | user-provided value | | LogInjectionTest.java:1384:28:1384:44 | (...)... | LogInjectionTest.java:1384:37:1384:44 | source(...) : Object | LogInjectionTest.java:1384:28:1384:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1384:37:1384:44 | source(...) | user-provided value | -| LogInjectionTest.java:1385:43:1385:59 | (...)... | LogInjectionTest.java:1385:52:1385:59 | source(...) : Object | LogInjectionTest.java:1385:43:1385:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1385:52:1385:59 | source(...) | user-provided value | -| LogInjectionTest.java:1386:28:1386:44 | (...)... | LogInjectionTest.java:1386:37:1386:44 | source(...) : Object | LogInjectionTest.java:1386:28:1386:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1386:37:1386:44 | source(...) | user-provided value | -| LogInjectionTest.java:1387:28:1387:44 | (...)... | LogInjectionTest.java:1387:37:1387:44 | source(...) : Object | LogInjectionTest.java:1387:28:1387:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1387:37:1387:44 | source(...) | user-provided value | +| LogInjectionTest.java:1385:73:1385:89 | (...)... | LogInjectionTest.java:1385:82:1385:89 | source(...) : Object | LogInjectionTest.java:1385:73:1385:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1385:82:1385:89 | source(...) | user-provided value | +| LogInjectionTest.java:1386:58:1386:74 | (...)... | LogInjectionTest.java:1386:67:1386:74 | source(...) : Object | LogInjectionTest.java:1386:58:1386:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1386:67:1386:74 | source(...) | user-provided value | +| LogInjectionTest.java:1387:43:1387:59 | (...)... | LogInjectionTest.java:1387:52:1387:59 | source(...) : Object | LogInjectionTest.java:1387:43:1387:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1387:52:1387:59 | source(...) | user-provided value | | LogInjectionTest.java:1388:28:1388:44 | (...)... | LogInjectionTest.java:1388:37:1388:44 | source(...) : Object | LogInjectionTest.java:1388:28:1388:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1388:37:1388:44 | source(...) | user-provided value | -| LogInjectionTest.java:1389:43:1389:65 | new Object[] | LogInjectionTest.java:1389:57:1389:64 | source(...) : Object | LogInjectionTest.java:1389:43:1389:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1389:57:1389:64 | source(...) | user-provided value | -| LogInjectionTest.java:1390:43:1390:65 | new Object[] | LogInjectionTest.java:1390:57:1390:64 | source(...) : Object | LogInjectionTest.java:1390:43:1390:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1390:57:1390:64 | source(...) | user-provided value | -| LogInjectionTest.java:1391:58:1391:74 | (...)... | LogInjectionTest.java:1391:67:1391:74 | source(...) : Object | LogInjectionTest.java:1391:58:1391:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1391:67:1391:74 | source(...) | user-provided value | -| LogInjectionTest.java:1392:43:1392:59 | (...)... | LogInjectionTest.java:1392:52:1392:59 | source(...) : Object | LogInjectionTest.java:1392:43:1392:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1392:52:1392:59 | source(...) | user-provided value | -| LogInjectionTest.java:1393:28:1393:44 | (...)... | LogInjectionTest.java:1393:37:1393:44 | source(...) : Object | LogInjectionTest.java:1393:28:1393:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1393:37:1393:44 | source(...) | user-provided value | -| LogInjectionTest.java:1394:58:1394:74 | (...)... | LogInjectionTest.java:1394:67:1394:74 | source(...) : Object | LogInjectionTest.java:1394:58:1394:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1394:67:1394:74 | source(...) | user-provided value | +| LogInjectionTest.java:1389:73:1389:89 | (...)... | LogInjectionTest.java:1389:82:1389:89 | source(...) : Object | LogInjectionTest.java:1389:73:1389:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1389:82:1389:89 | source(...) | user-provided value | +| LogInjectionTest.java:1390:58:1390:74 | (...)... | LogInjectionTest.java:1390:67:1390:74 | source(...) : Object | LogInjectionTest.java:1390:58:1390:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1390:67:1390:74 | source(...) | user-provided value | +| LogInjectionTest.java:1391:43:1391:59 | (...)... | LogInjectionTest.java:1391:52:1391:59 | source(...) : Object | LogInjectionTest.java:1391:43:1391:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1391:52:1391:59 | source(...) | user-provided value | +| LogInjectionTest.java:1392:28:1392:44 | (...)... | LogInjectionTest.java:1392:37:1392:44 | source(...) : Object | LogInjectionTest.java:1392:28:1392:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1392:37:1392:44 | source(...) | user-provided value | +| LogInjectionTest.java:1393:43:1393:59 | (...)... | LogInjectionTest.java:1393:52:1393:59 | source(...) : Object | LogInjectionTest.java:1393:43:1393:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1393:52:1393:59 | source(...) | user-provided value | +| LogInjectionTest.java:1394:28:1394:44 | (...)... | LogInjectionTest.java:1394:37:1394:44 | source(...) : Object | LogInjectionTest.java:1394:28:1394:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1394:37:1394:44 | source(...) | user-provided value | | LogInjectionTest.java:1395:43:1395:59 | (...)... | LogInjectionTest.java:1395:52:1395:59 | source(...) : Object | LogInjectionTest.java:1395:43:1395:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1395:52:1395:59 | source(...) | user-provided value | | LogInjectionTest.java:1396:28:1396:44 | (...)... | LogInjectionTest.java:1396:37:1396:44 | source(...) : Object | LogInjectionTest.java:1396:28:1396:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1396:37:1396:44 | source(...) | user-provided value | -| LogInjectionTest.java:1397:73:1397:89 | (...)... | LogInjectionTest.java:1397:82:1397:89 | source(...) : Object | LogInjectionTest.java:1397:73:1397:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1397:82:1397:89 | source(...) | user-provided value | -| LogInjectionTest.java:1398:58:1398:74 | (...)... | LogInjectionTest.java:1398:67:1398:74 | source(...) : Object | LogInjectionTest.java:1398:58:1398:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1398:67:1398:74 | source(...) | user-provided value | -| LogInjectionTest.java:1399:43:1399:59 | (...)... | LogInjectionTest.java:1399:52:1399:59 | source(...) : Object | LogInjectionTest.java:1399:43:1399:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1399:52:1399:59 | source(...) | user-provided value | -| LogInjectionTest.java:1400:28:1400:44 | (...)... | LogInjectionTest.java:1400:37:1400:44 | source(...) : Object | LogInjectionTest.java:1400:28:1400:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1400:37:1400:44 | source(...) | user-provided value | -| LogInjectionTest.java:1401:73:1401:89 | (...)... | LogInjectionTest.java:1401:82:1401:89 | source(...) : Object | LogInjectionTest.java:1401:73:1401:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1401:82:1401:89 | source(...) | user-provided value | -| LogInjectionTest.java:1402:58:1402:74 | (...)... | LogInjectionTest.java:1402:67:1402:74 | source(...) : Object | LogInjectionTest.java:1402:58:1402:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1402:67:1402:74 | source(...) | user-provided value | -| LogInjectionTest.java:1403:43:1403:59 | (...)... | LogInjectionTest.java:1403:52:1403:59 | source(...) : Object | LogInjectionTest.java:1403:43:1403:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1403:52:1403:59 | source(...) | user-provided value | -| LogInjectionTest.java:1404:28:1404:44 | (...)... | LogInjectionTest.java:1404:37:1404:44 | source(...) : Object | LogInjectionTest.java:1404:28:1404:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1404:37:1404:44 | source(...) | user-provided value | -| LogInjectionTest.java:1405:42:1405:58 | (...)... | LogInjectionTest.java:1405:51:1405:58 | source(...) : Object | LogInjectionTest.java:1405:42:1405:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1405:51:1405:58 | source(...) | user-provided value | -| LogInjectionTest.java:1406:27:1406:43 | (...)... | LogInjectionTest.java:1406:36:1406:43 | source(...) : Object | LogInjectionTest.java:1406:27:1406:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1406:36:1406:43 | source(...) | user-provided value | -| LogInjectionTest.java:1407:42:1407:58 | (...)... | LogInjectionTest.java:1407:51:1407:58 | source(...) : Object | LogInjectionTest.java:1407:42:1407:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1407:51:1407:58 | source(...) | user-provided value | -| LogInjectionTest.java:1408:27:1408:43 | (...)... | LogInjectionTest.java:1408:36:1408:43 | source(...) : Object | LogInjectionTest.java:1408:27:1408:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1408:36:1408:43 | source(...) | user-provided value | -| LogInjectionTest.java:1409:27:1409:43 | (...)... | LogInjectionTest.java:1409:36:1409:43 | source(...) : Object | LogInjectionTest.java:1409:27:1409:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1409:36:1409:43 | source(...) | user-provided value | -| LogInjectionTest.java:1410:27:1410:43 | (...)... | LogInjectionTest.java:1410:36:1410:43 | source(...) : Object | LogInjectionTest.java:1410:27:1410:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1410:36:1410:43 | source(...) | user-provided value | -| LogInjectionTest.java:1411:42:1411:64 | new Object[] | LogInjectionTest.java:1411:56:1411:63 | source(...) : Object | LogInjectionTest.java:1411:42:1411:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1411:56:1411:63 | source(...) | user-provided value | -| LogInjectionTest.java:1412:42:1412:64 | new Object[] | LogInjectionTest.java:1412:56:1412:63 | source(...) : Object | LogInjectionTest.java:1412:42:1412:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1412:56:1412:63 | source(...) | user-provided value | -| LogInjectionTest.java:1413:57:1413:73 | (...)... | LogInjectionTest.java:1413:66:1413:73 | source(...) : Object | LogInjectionTest.java:1413:57:1413:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1413:66:1413:73 | source(...) | user-provided value | -| LogInjectionTest.java:1414:42:1414:58 | (...)... | LogInjectionTest.java:1414:51:1414:58 | source(...) : Object | LogInjectionTest.java:1414:42:1414:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1414:51:1414:58 | source(...) | user-provided value | -| LogInjectionTest.java:1415:27:1415:43 | (...)... | LogInjectionTest.java:1415:36:1415:43 | source(...) : Object | LogInjectionTest.java:1415:27:1415:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1415:36:1415:43 | source(...) | user-provided value | -| LogInjectionTest.java:1416:57:1416:73 | (...)... | LogInjectionTest.java:1416:66:1416:73 | source(...) : Object | LogInjectionTest.java:1416:57:1416:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1416:66:1416:73 | source(...) | user-provided value | +| LogInjectionTest.java:1397:28:1397:44 | (...)... | LogInjectionTest.java:1397:37:1397:44 | source(...) : Object | LogInjectionTest.java:1397:28:1397:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1397:37:1397:44 | source(...) | user-provided value | +| LogInjectionTest.java:1398:28:1398:44 | (...)... | LogInjectionTest.java:1398:37:1398:44 | source(...) : Object | LogInjectionTest.java:1398:28:1398:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1398:37:1398:44 | source(...) | user-provided value | +| LogInjectionTest.java:1399:43:1399:65 | new Object[] | LogInjectionTest.java:1399:57:1399:64 | source(...) : Object | LogInjectionTest.java:1399:43:1399:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1399:57:1399:64 | source(...) | user-provided value | +| LogInjectionTest.java:1400:43:1400:65 | new Object[] | LogInjectionTest.java:1400:57:1400:64 | source(...) : Object | LogInjectionTest.java:1400:43:1400:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1400:57:1400:64 | source(...) | user-provided value | +| LogInjectionTest.java:1401:58:1401:74 | (...)... | LogInjectionTest.java:1401:67:1401:74 | source(...) : Object | LogInjectionTest.java:1401:58:1401:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1401:67:1401:74 | source(...) | user-provided value | +| LogInjectionTest.java:1402:43:1402:59 | (...)... | LogInjectionTest.java:1402:52:1402:59 | source(...) : Object | LogInjectionTest.java:1402:43:1402:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1402:52:1402:59 | source(...) | user-provided value | +| LogInjectionTest.java:1403:28:1403:44 | (...)... | LogInjectionTest.java:1403:37:1403:44 | source(...) : Object | LogInjectionTest.java:1403:28:1403:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1403:37:1403:44 | source(...) | user-provided value | +| LogInjectionTest.java:1404:58:1404:74 | (...)... | LogInjectionTest.java:1404:67:1404:74 | source(...) : Object | LogInjectionTest.java:1404:58:1404:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1404:67:1404:74 | source(...) | user-provided value | +| LogInjectionTest.java:1405:43:1405:59 | (...)... | LogInjectionTest.java:1405:52:1405:59 | source(...) : Object | LogInjectionTest.java:1405:43:1405:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1405:52:1405:59 | source(...) | user-provided value | +| LogInjectionTest.java:1406:28:1406:44 | (...)... | LogInjectionTest.java:1406:37:1406:44 | source(...) : Object | LogInjectionTest.java:1406:28:1406:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1406:37:1406:44 | source(...) | user-provided value | +| LogInjectionTest.java:1407:73:1407:89 | (...)... | LogInjectionTest.java:1407:82:1407:89 | source(...) : Object | LogInjectionTest.java:1407:73:1407:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1407:82:1407:89 | source(...) | user-provided value | +| LogInjectionTest.java:1408:58:1408:74 | (...)... | LogInjectionTest.java:1408:67:1408:74 | source(...) : Object | LogInjectionTest.java:1408:58:1408:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1408:67:1408:74 | source(...) | user-provided value | +| LogInjectionTest.java:1409:43:1409:59 | (...)... | LogInjectionTest.java:1409:52:1409:59 | source(...) : Object | LogInjectionTest.java:1409:43:1409:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1409:52:1409:59 | source(...) | user-provided value | +| LogInjectionTest.java:1410:28:1410:44 | (...)... | LogInjectionTest.java:1410:37:1410:44 | source(...) : Object | LogInjectionTest.java:1410:28:1410:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1410:37:1410:44 | source(...) | user-provided value | +| LogInjectionTest.java:1411:73:1411:89 | (...)... | LogInjectionTest.java:1411:82:1411:89 | source(...) : Object | LogInjectionTest.java:1411:73:1411:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1411:82:1411:89 | source(...) | user-provided value | +| LogInjectionTest.java:1412:58:1412:74 | (...)... | LogInjectionTest.java:1412:67:1412:74 | source(...) : Object | LogInjectionTest.java:1412:58:1412:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1412:67:1412:74 | source(...) | user-provided value | +| LogInjectionTest.java:1413:43:1413:59 | (...)... | LogInjectionTest.java:1413:52:1413:59 | source(...) : Object | LogInjectionTest.java:1413:43:1413:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1413:52:1413:59 | source(...) | user-provided value | +| LogInjectionTest.java:1414:28:1414:44 | (...)... | LogInjectionTest.java:1414:37:1414:44 | source(...) : Object | LogInjectionTest.java:1414:28:1414:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1414:37:1414:44 | source(...) | user-provided value | +| LogInjectionTest.java:1415:42:1415:58 | (...)... | LogInjectionTest.java:1415:51:1415:58 | source(...) : Object | LogInjectionTest.java:1415:42:1415:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1415:51:1415:58 | source(...) | user-provided value | +| LogInjectionTest.java:1416:27:1416:43 | (...)... | LogInjectionTest.java:1416:36:1416:43 | source(...) : Object | LogInjectionTest.java:1416:27:1416:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1416:36:1416:43 | source(...) | user-provided value | | LogInjectionTest.java:1417:42:1417:58 | (...)... | LogInjectionTest.java:1417:51:1417:58 | source(...) : Object | LogInjectionTest.java:1417:42:1417:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1417:51:1417:58 | source(...) | user-provided value | | LogInjectionTest.java:1418:27:1418:43 | (...)... | LogInjectionTest.java:1418:36:1418:43 | source(...) : Object | LogInjectionTest.java:1418:27:1418:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1418:36:1418:43 | source(...) | user-provided value | -| LogInjectionTest.java:1419:72:1419:88 | (...)... | LogInjectionTest.java:1419:81:1419:88 | source(...) : Object | LogInjectionTest.java:1419:72:1419:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1419:81:1419:88 | source(...) | user-provided value | -| LogInjectionTest.java:1420:57:1420:73 | (...)... | LogInjectionTest.java:1420:66:1420:73 | source(...) : Object | LogInjectionTest.java:1420:57:1420:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1420:66:1420:73 | source(...) | user-provided value | -| LogInjectionTest.java:1421:42:1421:58 | (...)... | LogInjectionTest.java:1421:51:1421:58 | source(...) : Object | LogInjectionTest.java:1421:42:1421:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1421:51:1421:58 | source(...) | user-provided value | -| LogInjectionTest.java:1422:27:1422:43 | (...)... | LogInjectionTest.java:1422:36:1422:43 | source(...) : Object | LogInjectionTest.java:1422:27:1422:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1422:36:1422:43 | source(...) | user-provided value | -| LogInjectionTest.java:1423:72:1423:88 | (...)... | LogInjectionTest.java:1423:81:1423:88 | source(...) : Object | LogInjectionTest.java:1423:72:1423:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1423:81:1423:88 | source(...) | user-provided value | -| LogInjectionTest.java:1424:57:1424:73 | (...)... | LogInjectionTest.java:1424:66:1424:73 | source(...) : Object | LogInjectionTest.java:1424:57:1424:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1424:66:1424:73 | source(...) | user-provided value | -| LogInjectionTest.java:1425:42:1425:58 | (...)... | LogInjectionTest.java:1425:51:1425:58 | source(...) : Object | LogInjectionTest.java:1425:42:1425:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1425:51:1425:58 | source(...) | user-provided value | -| LogInjectionTest.java:1426:27:1426:43 | (...)... | LogInjectionTest.java:1426:36:1426:43 | source(...) : Object | LogInjectionTest.java:1426:27:1426:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1426:36:1426:43 | source(...) | user-provided value | -| LogInjectionTest.java:1427:80:1427:96 | (...)... | LogInjectionTest.java:1427:89:1427:96 | source(...) : Object | LogInjectionTest.java:1427:80:1427:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1427:89:1427:96 | source(...) | user-provided value | -| LogInjectionTest.java:1428:65:1428:81 | (...)... | LogInjectionTest.java:1428:74:1428:81 | source(...) : Object | LogInjectionTest.java:1428:65:1428:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1428:74:1428:81 | source(...) | user-provided value | -| LogInjectionTest.java:1429:80:1429:96 | (...)... | LogInjectionTest.java:1429:89:1429:96 | source(...) : Object | LogInjectionTest.java:1429:80:1429:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1429:89:1429:96 | source(...) | user-provided value | -| LogInjectionTest.java:1430:65:1430:81 | (...)... | LogInjectionTest.java:1430:74:1430:81 | source(...) : Object | LogInjectionTest.java:1430:65:1430:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1430:74:1430:81 | source(...) | user-provided value | -| LogInjectionTest.java:1431:65:1431:81 | (...)... | LogInjectionTest.java:1431:74:1431:81 | source(...) : Object | LogInjectionTest.java:1431:65:1431:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1431:74:1431:81 | source(...) | user-provided value | -| LogInjectionTest.java:1432:65:1432:81 | (...)... | LogInjectionTest.java:1432:74:1432:81 | source(...) : Object | LogInjectionTest.java:1432:65:1432:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1432:74:1432:81 | source(...) | user-provided value | -| LogInjectionTest.java:1433:80:1433:102 | new Object[] | LogInjectionTest.java:1433:94:1433:101 | source(...) : Object | LogInjectionTest.java:1433:80:1433:102 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1433:94:1433:101 | source(...) | user-provided value | -| LogInjectionTest.java:1434:80:1434:102 | new Object[] | LogInjectionTest.java:1434:94:1434:101 | source(...) : Object | LogInjectionTest.java:1434:80:1434:102 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1434:94:1434:101 | source(...) | user-provided value | -| LogInjectionTest.java:1435:95:1435:111 | (...)... | LogInjectionTest.java:1435:104:1435:111 | source(...) : Object | LogInjectionTest.java:1435:95:1435:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1435:104:1435:111 | source(...) | user-provided value | -| LogInjectionTest.java:1436:80:1436:96 | (...)... | LogInjectionTest.java:1436:89:1436:96 | source(...) : Object | LogInjectionTest.java:1436:80:1436:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1436:89:1436:96 | source(...) | user-provided value | -| LogInjectionTest.java:1437:65:1437:81 | (...)... | LogInjectionTest.java:1437:74:1437:81 | source(...) : Object | LogInjectionTest.java:1437:65:1437:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1437:74:1437:81 | source(...) | user-provided value | -| LogInjectionTest.java:1438:95:1438:111 | (...)... | LogInjectionTest.java:1438:104:1438:111 | source(...) : Object | LogInjectionTest.java:1438:95:1438:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1438:104:1438:111 | source(...) | user-provided value | +| LogInjectionTest.java:1419:27:1419:43 | (...)... | LogInjectionTest.java:1419:36:1419:43 | source(...) : Object | LogInjectionTest.java:1419:27:1419:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1419:36:1419:43 | source(...) | user-provided value | +| LogInjectionTest.java:1420:27:1420:43 | (...)... | LogInjectionTest.java:1420:36:1420:43 | source(...) : Object | LogInjectionTest.java:1420:27:1420:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1420:36:1420:43 | source(...) | user-provided value | +| LogInjectionTest.java:1421:42:1421:64 | new Object[] | LogInjectionTest.java:1421:56:1421:63 | source(...) : Object | LogInjectionTest.java:1421:42:1421:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1421:56:1421:63 | source(...) | user-provided value | +| LogInjectionTest.java:1422:42:1422:64 | new Object[] | LogInjectionTest.java:1422:56:1422:63 | source(...) : Object | LogInjectionTest.java:1422:42:1422:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1422:56:1422:63 | source(...) | user-provided value | +| LogInjectionTest.java:1423:57:1423:73 | (...)... | LogInjectionTest.java:1423:66:1423:73 | source(...) : Object | LogInjectionTest.java:1423:57:1423:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1423:66:1423:73 | source(...) | user-provided value | +| LogInjectionTest.java:1424:42:1424:58 | (...)... | LogInjectionTest.java:1424:51:1424:58 | source(...) : Object | LogInjectionTest.java:1424:42:1424:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1424:51:1424:58 | source(...) | user-provided value | +| LogInjectionTest.java:1425:27:1425:43 | (...)... | LogInjectionTest.java:1425:36:1425:43 | source(...) : Object | LogInjectionTest.java:1425:27:1425:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1425:36:1425:43 | source(...) | user-provided value | +| LogInjectionTest.java:1426:57:1426:73 | (...)... | LogInjectionTest.java:1426:66:1426:73 | source(...) : Object | LogInjectionTest.java:1426:57:1426:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1426:66:1426:73 | source(...) | user-provided value | +| LogInjectionTest.java:1427:42:1427:58 | (...)... | LogInjectionTest.java:1427:51:1427:58 | source(...) : Object | LogInjectionTest.java:1427:42:1427:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1427:51:1427:58 | source(...) | user-provided value | +| LogInjectionTest.java:1428:27:1428:43 | (...)... | LogInjectionTest.java:1428:36:1428:43 | source(...) : Object | LogInjectionTest.java:1428:27:1428:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1428:36:1428:43 | source(...) | user-provided value | +| LogInjectionTest.java:1429:72:1429:88 | (...)... | LogInjectionTest.java:1429:81:1429:88 | source(...) : Object | LogInjectionTest.java:1429:72:1429:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1429:81:1429:88 | source(...) | user-provided value | +| LogInjectionTest.java:1430:57:1430:73 | (...)... | LogInjectionTest.java:1430:66:1430:73 | source(...) : Object | LogInjectionTest.java:1430:57:1430:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1430:66:1430:73 | source(...) | user-provided value | +| LogInjectionTest.java:1431:42:1431:58 | (...)... | LogInjectionTest.java:1431:51:1431:58 | source(...) : Object | LogInjectionTest.java:1431:42:1431:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1431:51:1431:58 | source(...) | user-provided value | +| LogInjectionTest.java:1432:27:1432:43 | (...)... | LogInjectionTest.java:1432:36:1432:43 | source(...) : Object | LogInjectionTest.java:1432:27:1432:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1432:36:1432:43 | source(...) | user-provided value | +| LogInjectionTest.java:1433:72:1433:88 | (...)... | LogInjectionTest.java:1433:81:1433:88 | source(...) : Object | LogInjectionTest.java:1433:72:1433:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1433:81:1433:88 | source(...) | user-provided value | +| LogInjectionTest.java:1434:57:1434:73 | (...)... | LogInjectionTest.java:1434:66:1434:73 | source(...) : Object | LogInjectionTest.java:1434:57:1434:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1434:66:1434:73 | source(...) | user-provided value | +| LogInjectionTest.java:1435:42:1435:58 | (...)... | LogInjectionTest.java:1435:51:1435:58 | source(...) : Object | LogInjectionTest.java:1435:42:1435:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1435:51:1435:58 | source(...) | user-provided value | +| LogInjectionTest.java:1436:27:1436:43 | (...)... | LogInjectionTest.java:1436:36:1436:43 | source(...) : Object | LogInjectionTest.java:1436:27:1436:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1436:36:1436:43 | source(...) | user-provided value | +| LogInjectionTest.java:1437:80:1437:96 | (...)... | LogInjectionTest.java:1437:89:1437:96 | source(...) : Object | LogInjectionTest.java:1437:80:1437:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1437:89:1437:96 | source(...) | user-provided value | +| LogInjectionTest.java:1438:65:1438:81 | (...)... | LogInjectionTest.java:1438:74:1438:81 | source(...) : Object | LogInjectionTest.java:1438:65:1438:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1438:74:1438:81 | source(...) | user-provided value | | LogInjectionTest.java:1439:80:1439:96 | (...)... | LogInjectionTest.java:1439:89:1439:96 | source(...) : Object | LogInjectionTest.java:1439:80:1439:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1439:89:1439:96 | source(...) | user-provided value | | LogInjectionTest.java:1440:65:1440:81 | (...)... | LogInjectionTest.java:1440:74:1440:81 | source(...) : Object | LogInjectionTest.java:1440:65:1440:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1440:74:1440:81 | source(...) | user-provided value | -| LogInjectionTest.java:1441:110:1441:126 | (...)... | LogInjectionTest.java:1441:119:1441:126 | source(...) : Object | LogInjectionTest.java:1441:110:1441:126 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1441:119:1441:126 | source(...) | user-provided value | -| LogInjectionTest.java:1442:95:1442:111 | (...)... | LogInjectionTest.java:1442:104:1442:111 | source(...) : Object | LogInjectionTest.java:1442:95:1442:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1442:104:1442:111 | source(...) | user-provided value | -| LogInjectionTest.java:1443:80:1443:96 | (...)... | LogInjectionTest.java:1443:89:1443:96 | source(...) : Object | LogInjectionTest.java:1443:80:1443:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1443:89:1443:96 | source(...) | user-provided value | -| LogInjectionTest.java:1444:65:1444:81 | (...)... | LogInjectionTest.java:1444:74:1444:81 | source(...) : Object | LogInjectionTest.java:1444:65:1444:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1444:74:1444:81 | source(...) | user-provided value | -| LogInjectionTest.java:1445:110:1445:126 | (...)... | LogInjectionTest.java:1445:119:1445:126 | source(...) : Object | LogInjectionTest.java:1445:110:1445:126 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1445:119:1445:126 | source(...) | user-provided value | -| LogInjectionTest.java:1446:95:1446:111 | (...)... | LogInjectionTest.java:1446:104:1446:111 | source(...) : Object | LogInjectionTest.java:1446:95:1446:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1446:104:1446:111 | source(...) | user-provided value | -| LogInjectionTest.java:1447:80:1447:96 | (...)... | LogInjectionTest.java:1447:89:1447:96 | source(...) : Object | LogInjectionTest.java:1447:80:1447:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1447:89:1447:96 | source(...) | user-provided value | -| LogInjectionTest.java:1448:65:1448:81 | (...)... | LogInjectionTest.java:1448:74:1448:81 | source(...) : Object | LogInjectionTest.java:1448:65:1448:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1448:74:1448:81 | source(...) | user-provided value | -| LogInjectionTest.java:1449:43:1449:59 | (...)... | LogInjectionTest.java:1449:52:1449:59 | source(...) : Object | LogInjectionTest.java:1449:43:1449:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1449:52:1449:59 | source(...) | user-provided value | -| LogInjectionTest.java:1450:28:1450:44 | (...)... | LogInjectionTest.java:1450:37:1450:44 | source(...) : Object | LogInjectionTest.java:1450:28:1450:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1450:37:1450:44 | source(...) | user-provided value | -| LogInjectionTest.java:1451:43:1451:59 | (...)... | LogInjectionTest.java:1451:52:1451:59 | source(...) : Object | LogInjectionTest.java:1451:43:1451:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1451:52:1451:59 | source(...) | user-provided value | -| LogInjectionTest.java:1452:28:1452:44 | (...)... | LogInjectionTest.java:1452:37:1452:44 | source(...) : Object | LogInjectionTest.java:1452:28:1452:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1452:37:1452:44 | source(...) | user-provided value | -| LogInjectionTest.java:1453:28:1453:44 | (...)... | LogInjectionTest.java:1453:37:1453:44 | source(...) : Object | LogInjectionTest.java:1453:28:1453:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1453:37:1453:44 | source(...) | user-provided value | -| LogInjectionTest.java:1454:28:1454:44 | (...)... | LogInjectionTest.java:1454:37:1454:44 | source(...) : Object | LogInjectionTest.java:1454:28:1454:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1454:37:1454:44 | source(...) | user-provided value | -| LogInjectionTest.java:1455:43:1455:65 | new Object[] | LogInjectionTest.java:1455:57:1455:64 | source(...) : Object | LogInjectionTest.java:1455:43:1455:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1455:57:1455:64 | source(...) | user-provided value | -| LogInjectionTest.java:1456:43:1456:65 | new Object[] | LogInjectionTest.java:1456:57:1456:64 | source(...) : Object | LogInjectionTest.java:1456:43:1456:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1456:57:1456:64 | source(...) | user-provided value | -| LogInjectionTest.java:1457:58:1457:74 | (...)... | LogInjectionTest.java:1457:67:1457:74 | source(...) : Object | LogInjectionTest.java:1457:58:1457:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1457:67:1457:74 | source(...) | user-provided value | -| LogInjectionTest.java:1458:43:1458:59 | (...)... | LogInjectionTest.java:1458:52:1458:59 | source(...) : Object | LogInjectionTest.java:1458:43:1458:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1458:52:1458:59 | source(...) | user-provided value | -| LogInjectionTest.java:1459:28:1459:44 | (...)... | LogInjectionTest.java:1459:37:1459:44 | source(...) : Object | LogInjectionTest.java:1459:28:1459:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1459:37:1459:44 | source(...) | user-provided value | -| LogInjectionTest.java:1460:58:1460:74 | (...)... | LogInjectionTest.java:1460:67:1460:74 | source(...) : Object | LogInjectionTest.java:1460:58:1460:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1460:67:1460:74 | source(...) | user-provided value | +| LogInjectionTest.java:1441:65:1441:81 | (...)... | LogInjectionTest.java:1441:74:1441:81 | source(...) : Object | LogInjectionTest.java:1441:65:1441:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1441:74:1441:81 | source(...) | user-provided value | +| LogInjectionTest.java:1442:65:1442:81 | (...)... | LogInjectionTest.java:1442:74:1442:81 | source(...) : Object | LogInjectionTest.java:1442:65:1442:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1442:74:1442:81 | source(...) | user-provided value | +| LogInjectionTest.java:1443:80:1443:102 | new Object[] | LogInjectionTest.java:1443:94:1443:101 | source(...) : Object | LogInjectionTest.java:1443:80:1443:102 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1443:94:1443:101 | source(...) | user-provided value | +| LogInjectionTest.java:1444:80:1444:102 | new Object[] | LogInjectionTest.java:1444:94:1444:101 | source(...) : Object | LogInjectionTest.java:1444:80:1444:102 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1444:94:1444:101 | source(...) | user-provided value | +| LogInjectionTest.java:1445:95:1445:111 | (...)... | LogInjectionTest.java:1445:104:1445:111 | source(...) : Object | LogInjectionTest.java:1445:95:1445:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1445:104:1445:111 | source(...) | user-provided value | +| LogInjectionTest.java:1446:80:1446:96 | (...)... | LogInjectionTest.java:1446:89:1446:96 | source(...) : Object | LogInjectionTest.java:1446:80:1446:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1446:89:1446:96 | source(...) | user-provided value | +| LogInjectionTest.java:1447:65:1447:81 | (...)... | LogInjectionTest.java:1447:74:1447:81 | source(...) : Object | LogInjectionTest.java:1447:65:1447:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1447:74:1447:81 | source(...) | user-provided value | +| LogInjectionTest.java:1448:95:1448:111 | (...)... | LogInjectionTest.java:1448:104:1448:111 | source(...) : Object | LogInjectionTest.java:1448:95:1448:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1448:104:1448:111 | source(...) | user-provided value | +| LogInjectionTest.java:1449:80:1449:96 | (...)... | LogInjectionTest.java:1449:89:1449:96 | source(...) : Object | LogInjectionTest.java:1449:80:1449:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1449:89:1449:96 | source(...) | user-provided value | +| LogInjectionTest.java:1450:65:1450:81 | (...)... | LogInjectionTest.java:1450:74:1450:81 | source(...) : Object | LogInjectionTest.java:1450:65:1450:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1450:74:1450:81 | source(...) | user-provided value | +| LogInjectionTest.java:1451:110:1451:126 | (...)... | LogInjectionTest.java:1451:119:1451:126 | source(...) : Object | LogInjectionTest.java:1451:110:1451:126 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1451:119:1451:126 | source(...) | user-provided value | +| LogInjectionTest.java:1452:95:1452:111 | (...)... | LogInjectionTest.java:1452:104:1452:111 | source(...) : Object | LogInjectionTest.java:1452:95:1452:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1452:104:1452:111 | source(...) | user-provided value | +| LogInjectionTest.java:1453:80:1453:96 | (...)... | LogInjectionTest.java:1453:89:1453:96 | source(...) : Object | LogInjectionTest.java:1453:80:1453:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1453:89:1453:96 | source(...) | user-provided value | +| LogInjectionTest.java:1454:65:1454:81 | (...)... | LogInjectionTest.java:1454:74:1454:81 | source(...) : Object | LogInjectionTest.java:1454:65:1454:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1454:74:1454:81 | source(...) | user-provided value | +| LogInjectionTest.java:1455:110:1455:126 | (...)... | LogInjectionTest.java:1455:119:1455:126 | source(...) : Object | LogInjectionTest.java:1455:110:1455:126 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1455:119:1455:126 | source(...) | user-provided value | +| LogInjectionTest.java:1456:95:1456:111 | (...)... | LogInjectionTest.java:1456:104:1456:111 | source(...) : Object | LogInjectionTest.java:1456:95:1456:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1456:104:1456:111 | source(...) | user-provided value | +| LogInjectionTest.java:1457:80:1457:96 | (...)... | LogInjectionTest.java:1457:89:1457:96 | source(...) : Object | LogInjectionTest.java:1457:80:1457:96 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1457:89:1457:96 | source(...) | user-provided value | +| LogInjectionTest.java:1458:65:1458:81 | (...)... | LogInjectionTest.java:1458:74:1458:81 | source(...) : Object | LogInjectionTest.java:1458:65:1458:81 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1458:74:1458:81 | source(...) | user-provided value | +| LogInjectionTest.java:1459:43:1459:59 | (...)... | LogInjectionTest.java:1459:52:1459:59 | source(...) : Object | LogInjectionTest.java:1459:43:1459:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1459:52:1459:59 | source(...) | user-provided value | +| LogInjectionTest.java:1460:28:1460:44 | (...)... | LogInjectionTest.java:1460:37:1460:44 | source(...) : Object | LogInjectionTest.java:1460:28:1460:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1460:37:1460:44 | source(...) | user-provided value | | LogInjectionTest.java:1461:43:1461:59 | (...)... | LogInjectionTest.java:1461:52:1461:59 | source(...) : Object | LogInjectionTest.java:1461:43:1461:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1461:52:1461:59 | source(...) | user-provided value | | LogInjectionTest.java:1462:28:1462:44 | (...)... | LogInjectionTest.java:1462:37:1462:44 | source(...) : Object | LogInjectionTest.java:1462:28:1462:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1462:37:1462:44 | source(...) | user-provided value | -| LogInjectionTest.java:1463:73:1463:89 | (...)... | LogInjectionTest.java:1463:82:1463:89 | source(...) : Object | LogInjectionTest.java:1463:73:1463:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1463:82:1463:89 | source(...) | user-provided value | -| LogInjectionTest.java:1464:58:1464:74 | (...)... | LogInjectionTest.java:1464:67:1464:74 | source(...) : Object | LogInjectionTest.java:1464:58:1464:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1464:67:1464:74 | source(...) | user-provided value | -| LogInjectionTest.java:1465:43:1465:59 | (...)... | LogInjectionTest.java:1465:52:1465:59 | source(...) : Object | LogInjectionTest.java:1465:43:1465:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1465:52:1465:59 | source(...) | user-provided value | -| LogInjectionTest.java:1466:28:1466:44 | (...)... | LogInjectionTest.java:1466:37:1466:44 | source(...) : Object | LogInjectionTest.java:1466:28:1466:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1466:37:1466:44 | source(...) | user-provided value | -| LogInjectionTest.java:1467:73:1467:89 | (...)... | LogInjectionTest.java:1467:82:1467:89 | source(...) : Object | LogInjectionTest.java:1467:73:1467:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1467:82:1467:89 | source(...) | user-provided value | -| LogInjectionTest.java:1468:58:1468:74 | (...)... | LogInjectionTest.java:1468:67:1468:74 | source(...) : Object | LogInjectionTest.java:1468:58:1468:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1468:67:1468:74 | source(...) | user-provided value | -| LogInjectionTest.java:1469:43:1469:59 | (...)... | LogInjectionTest.java:1469:52:1469:59 | source(...) : Object | LogInjectionTest.java:1469:43:1469:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1469:52:1469:59 | source(...) | user-provided value | -| LogInjectionTest.java:1470:28:1470:44 | (...)... | LogInjectionTest.java:1470:37:1470:44 | source(...) : Object | LogInjectionTest.java:1470:28:1470:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1470:37:1470:44 | source(...) | user-provided value | -| LogInjectionTest.java:1471:42:1471:58 | (...)... | LogInjectionTest.java:1471:51:1471:58 | source(...) : Object | LogInjectionTest.java:1471:42:1471:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1471:51:1471:58 | source(...) | user-provided value | -| LogInjectionTest.java:1472:27:1472:43 | (...)... | LogInjectionTest.java:1472:36:1472:43 | source(...) : Object | LogInjectionTest.java:1472:27:1472:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1472:36:1472:43 | source(...) | user-provided value | -| LogInjectionTest.java:1473:42:1473:58 | (...)... | LogInjectionTest.java:1473:51:1473:58 | source(...) : Object | LogInjectionTest.java:1473:42:1473:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1473:51:1473:58 | source(...) | user-provided value | -| LogInjectionTest.java:1474:27:1474:43 | (...)... | LogInjectionTest.java:1474:36:1474:43 | source(...) : Object | LogInjectionTest.java:1474:27:1474:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1474:36:1474:43 | source(...) | user-provided value | -| LogInjectionTest.java:1475:27:1475:43 | (...)... | LogInjectionTest.java:1475:36:1475:43 | source(...) : Object | LogInjectionTest.java:1475:27:1475:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1475:36:1475:43 | source(...) | user-provided value | -| LogInjectionTest.java:1476:27:1476:43 | (...)... | LogInjectionTest.java:1476:36:1476:43 | source(...) : Object | LogInjectionTest.java:1476:27:1476:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1476:36:1476:43 | source(...) | user-provided value | -| LogInjectionTest.java:1477:42:1477:64 | new Object[] | LogInjectionTest.java:1477:56:1477:63 | source(...) : Object | LogInjectionTest.java:1477:42:1477:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1477:56:1477:63 | source(...) | user-provided value | -| LogInjectionTest.java:1478:42:1478:64 | new Object[] | LogInjectionTest.java:1478:56:1478:63 | source(...) : Object | LogInjectionTest.java:1478:42:1478:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1478:56:1478:63 | source(...) | user-provided value | -| LogInjectionTest.java:1479:57:1479:73 | (...)... | LogInjectionTest.java:1479:66:1479:73 | source(...) : Object | LogInjectionTest.java:1479:57:1479:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1479:66:1479:73 | source(...) | user-provided value | -| LogInjectionTest.java:1480:42:1480:58 | (...)... | LogInjectionTest.java:1480:51:1480:58 | source(...) : Object | LogInjectionTest.java:1480:42:1480:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1480:51:1480:58 | source(...) | user-provided value | -| LogInjectionTest.java:1481:27:1481:43 | (...)... | LogInjectionTest.java:1481:36:1481:43 | source(...) : Object | LogInjectionTest.java:1481:27:1481:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1481:36:1481:43 | source(...) | user-provided value | -| LogInjectionTest.java:1482:57:1482:73 | (...)... | LogInjectionTest.java:1482:66:1482:73 | source(...) : Object | LogInjectionTest.java:1482:57:1482:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1482:66:1482:73 | source(...) | user-provided value | +| LogInjectionTest.java:1463:28:1463:44 | (...)... | LogInjectionTest.java:1463:37:1463:44 | source(...) : Object | LogInjectionTest.java:1463:28:1463:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1463:37:1463:44 | source(...) | user-provided value | +| LogInjectionTest.java:1464:28:1464:44 | (...)... | LogInjectionTest.java:1464:37:1464:44 | source(...) : Object | LogInjectionTest.java:1464:28:1464:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1464:37:1464:44 | source(...) | user-provided value | +| LogInjectionTest.java:1465:43:1465:65 | new Object[] | LogInjectionTest.java:1465:57:1465:64 | source(...) : Object | LogInjectionTest.java:1465:43:1465:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1465:57:1465:64 | source(...) | user-provided value | +| LogInjectionTest.java:1466:43:1466:65 | new Object[] | LogInjectionTest.java:1466:57:1466:64 | source(...) : Object | LogInjectionTest.java:1466:43:1466:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1466:57:1466:64 | source(...) | user-provided value | +| LogInjectionTest.java:1467:58:1467:74 | (...)... | LogInjectionTest.java:1467:67:1467:74 | source(...) : Object | LogInjectionTest.java:1467:58:1467:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1467:67:1467:74 | source(...) | user-provided value | +| LogInjectionTest.java:1468:43:1468:59 | (...)... | LogInjectionTest.java:1468:52:1468:59 | source(...) : Object | LogInjectionTest.java:1468:43:1468:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1468:52:1468:59 | source(...) | user-provided value | +| LogInjectionTest.java:1469:28:1469:44 | (...)... | LogInjectionTest.java:1469:37:1469:44 | source(...) : Object | LogInjectionTest.java:1469:28:1469:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1469:37:1469:44 | source(...) | user-provided value | +| LogInjectionTest.java:1470:58:1470:74 | (...)... | LogInjectionTest.java:1470:67:1470:74 | source(...) : Object | LogInjectionTest.java:1470:58:1470:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1470:67:1470:74 | source(...) | user-provided value | +| LogInjectionTest.java:1471:43:1471:59 | (...)... | LogInjectionTest.java:1471:52:1471:59 | source(...) : Object | LogInjectionTest.java:1471:43:1471:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1471:52:1471:59 | source(...) | user-provided value | +| LogInjectionTest.java:1472:28:1472:44 | (...)... | LogInjectionTest.java:1472:37:1472:44 | source(...) : Object | LogInjectionTest.java:1472:28:1472:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1472:37:1472:44 | source(...) | user-provided value | +| LogInjectionTest.java:1473:73:1473:89 | (...)... | LogInjectionTest.java:1473:82:1473:89 | source(...) : Object | LogInjectionTest.java:1473:73:1473:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1473:82:1473:89 | source(...) | user-provided value | +| LogInjectionTest.java:1474:58:1474:74 | (...)... | LogInjectionTest.java:1474:67:1474:74 | source(...) : Object | LogInjectionTest.java:1474:58:1474:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1474:67:1474:74 | source(...) | user-provided value | +| LogInjectionTest.java:1475:43:1475:59 | (...)... | LogInjectionTest.java:1475:52:1475:59 | source(...) : Object | LogInjectionTest.java:1475:43:1475:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1475:52:1475:59 | source(...) | user-provided value | +| LogInjectionTest.java:1476:28:1476:44 | (...)... | LogInjectionTest.java:1476:37:1476:44 | source(...) : Object | LogInjectionTest.java:1476:28:1476:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1476:37:1476:44 | source(...) | user-provided value | +| LogInjectionTest.java:1477:73:1477:89 | (...)... | LogInjectionTest.java:1477:82:1477:89 | source(...) : Object | LogInjectionTest.java:1477:73:1477:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1477:82:1477:89 | source(...) | user-provided value | +| LogInjectionTest.java:1478:58:1478:74 | (...)... | LogInjectionTest.java:1478:67:1478:74 | source(...) : Object | LogInjectionTest.java:1478:58:1478:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1478:67:1478:74 | source(...) | user-provided value | +| LogInjectionTest.java:1479:43:1479:59 | (...)... | LogInjectionTest.java:1479:52:1479:59 | source(...) : Object | LogInjectionTest.java:1479:43:1479:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1479:52:1479:59 | source(...) | user-provided value | +| LogInjectionTest.java:1480:28:1480:44 | (...)... | LogInjectionTest.java:1480:37:1480:44 | source(...) : Object | LogInjectionTest.java:1480:28:1480:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1480:37:1480:44 | source(...) | user-provided value | +| LogInjectionTest.java:1481:42:1481:58 | (...)... | LogInjectionTest.java:1481:51:1481:58 | source(...) : Object | LogInjectionTest.java:1481:42:1481:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1481:51:1481:58 | source(...) | user-provided value | +| LogInjectionTest.java:1482:27:1482:43 | (...)... | LogInjectionTest.java:1482:36:1482:43 | source(...) : Object | LogInjectionTest.java:1482:27:1482:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1482:36:1482:43 | source(...) | user-provided value | | LogInjectionTest.java:1483:42:1483:58 | (...)... | LogInjectionTest.java:1483:51:1483:58 | source(...) : Object | LogInjectionTest.java:1483:42:1483:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1483:51:1483:58 | source(...) | user-provided value | | LogInjectionTest.java:1484:27:1484:43 | (...)... | LogInjectionTest.java:1484:36:1484:43 | source(...) : Object | LogInjectionTest.java:1484:27:1484:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1484:36:1484:43 | source(...) | user-provided value | -| LogInjectionTest.java:1485:72:1485:88 | (...)... | LogInjectionTest.java:1485:81:1485:88 | source(...) : Object | LogInjectionTest.java:1485:72:1485:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1485:81:1485:88 | source(...) | user-provided value | -| LogInjectionTest.java:1486:57:1486:73 | (...)... | LogInjectionTest.java:1486:66:1486:73 | source(...) : Object | LogInjectionTest.java:1486:57:1486:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1486:66:1486:73 | source(...) | user-provided value | -| LogInjectionTest.java:1487:42:1487:58 | (...)... | LogInjectionTest.java:1487:51:1487:58 | source(...) : Object | LogInjectionTest.java:1487:42:1487:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1487:51:1487:58 | source(...) | user-provided value | -| LogInjectionTest.java:1488:27:1488:43 | (...)... | LogInjectionTest.java:1488:36:1488:43 | source(...) : Object | LogInjectionTest.java:1488:27:1488:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1488:36:1488:43 | source(...) | user-provided value | -| LogInjectionTest.java:1489:72:1489:88 | (...)... | LogInjectionTest.java:1489:81:1489:88 | source(...) : Object | LogInjectionTest.java:1489:72:1489:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1489:81:1489:88 | source(...) | user-provided value | -| LogInjectionTest.java:1490:57:1490:73 | (...)... | LogInjectionTest.java:1490:66:1490:73 | source(...) : Object | LogInjectionTest.java:1490:57:1490:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1490:66:1490:73 | source(...) | user-provided value | -| LogInjectionTest.java:1491:42:1491:58 | (...)... | LogInjectionTest.java:1491:51:1491:58 | source(...) : Object | LogInjectionTest.java:1491:42:1491:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1491:51:1491:58 | source(...) | user-provided value | -| LogInjectionTest.java:1492:27:1492:43 | (...)... | LogInjectionTest.java:1492:36:1492:43 | source(...) : Object | LogInjectionTest.java:1492:27:1492:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1492:36:1492:43 | source(...) | user-provided value | -| LogInjectionTest.java:1498:26:1498:33 | source(...) | LogInjectionTest.java:1498:26:1498:33 | source(...) | LogInjectionTest.java:1498:26:1498:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1498:26:1498:33 | source(...) | user-provided value | -| LogInjectionTest.java:1499:26:1499:33 | source(...) | LogInjectionTest.java:1499:26:1499:33 | source(...) | LogInjectionTest.java:1499:26:1499:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1499:26:1499:33 | source(...) | user-provided value | -| LogInjectionTest.java:1503:41:1503:48 | source(...) | LogInjectionTest.java:1503:41:1503:48 | source(...) | LogInjectionTest.java:1503:41:1503:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1503:41:1503:48 | source(...) | user-provided value | -| LogInjectionTest.java:1504:56:1504:78 | new Object[] | LogInjectionTest.java:1504:70:1504:77 | source(...) : Object | LogInjectionTest.java:1504:56:1504:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1504:70:1504:77 | source(...) | user-provided value | -| LogInjectionTest.java:1505:41:1505:48 | source(...) | LogInjectionTest.java:1505:41:1505:48 | source(...) | LogInjectionTest.java:1505:41:1505:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1505:41:1505:48 | source(...) | user-provided value | -| LogInjectionTest.java:1506:26:1506:33 | source(...) | LogInjectionTest.java:1506:26:1506:33 | source(...) | LogInjectionTest.java:1506:26:1506:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1506:26:1506:33 | source(...) | user-provided value | -| LogInjectionTest.java:1507:26:1507:33 | source(...) | LogInjectionTest.java:1507:26:1507:33 | source(...) | LogInjectionTest.java:1507:26:1507:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1507:26:1507:33 | source(...) | user-provided value | -| LogInjectionTest.java:1511:41:1511:48 | source(...) | LogInjectionTest.java:1511:41:1511:48 | source(...) | LogInjectionTest.java:1511:41:1511:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1511:41:1511:48 | source(...) | user-provided value | -| LogInjectionTest.java:1512:56:1512:78 | new Object[] | LogInjectionTest.java:1512:70:1512:77 | source(...) : Object | LogInjectionTest.java:1512:56:1512:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1512:70:1512:77 | source(...) | user-provided value | +| LogInjectionTest.java:1485:27:1485:43 | (...)... | LogInjectionTest.java:1485:36:1485:43 | source(...) : Object | LogInjectionTest.java:1485:27:1485:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1485:36:1485:43 | source(...) | user-provided value | +| LogInjectionTest.java:1486:27:1486:43 | (...)... | LogInjectionTest.java:1486:36:1486:43 | source(...) : Object | LogInjectionTest.java:1486:27:1486:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1486:36:1486:43 | source(...) | user-provided value | +| LogInjectionTest.java:1487:42:1487:64 | new Object[] | LogInjectionTest.java:1487:56:1487:63 | source(...) : Object | LogInjectionTest.java:1487:42:1487:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1487:56:1487:63 | source(...) | user-provided value | +| LogInjectionTest.java:1488:42:1488:64 | new Object[] | LogInjectionTest.java:1488:56:1488:63 | source(...) : Object | LogInjectionTest.java:1488:42:1488:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1488:56:1488:63 | source(...) | user-provided value | +| LogInjectionTest.java:1489:57:1489:73 | (...)... | LogInjectionTest.java:1489:66:1489:73 | source(...) : Object | LogInjectionTest.java:1489:57:1489:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1489:66:1489:73 | source(...) | user-provided value | +| LogInjectionTest.java:1490:42:1490:58 | (...)... | LogInjectionTest.java:1490:51:1490:58 | source(...) : Object | LogInjectionTest.java:1490:42:1490:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1490:51:1490:58 | source(...) | user-provided value | +| LogInjectionTest.java:1491:27:1491:43 | (...)... | LogInjectionTest.java:1491:36:1491:43 | source(...) : Object | LogInjectionTest.java:1491:27:1491:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1491:36:1491:43 | source(...) | user-provided value | +| LogInjectionTest.java:1492:57:1492:73 | (...)... | LogInjectionTest.java:1492:66:1492:73 | source(...) : Object | LogInjectionTest.java:1492:57:1492:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1492:66:1492:73 | source(...) | user-provided value | +| LogInjectionTest.java:1493:42:1493:58 | (...)... | LogInjectionTest.java:1493:51:1493:58 | source(...) : Object | LogInjectionTest.java:1493:42:1493:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1493:51:1493:58 | source(...) | user-provided value | +| LogInjectionTest.java:1494:27:1494:43 | (...)... | LogInjectionTest.java:1494:36:1494:43 | source(...) : Object | LogInjectionTest.java:1494:27:1494:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1494:36:1494:43 | source(...) | user-provided value | +| LogInjectionTest.java:1495:72:1495:88 | (...)... | LogInjectionTest.java:1495:81:1495:88 | source(...) : Object | LogInjectionTest.java:1495:72:1495:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1495:81:1495:88 | source(...) | user-provided value | +| LogInjectionTest.java:1496:57:1496:73 | (...)... | LogInjectionTest.java:1496:66:1496:73 | source(...) : Object | LogInjectionTest.java:1496:57:1496:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1496:66:1496:73 | source(...) | user-provided value | +| LogInjectionTest.java:1497:42:1497:58 | (...)... | LogInjectionTest.java:1497:51:1497:58 | source(...) : Object | LogInjectionTest.java:1497:42:1497:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1497:51:1497:58 | source(...) | user-provided value | +| LogInjectionTest.java:1498:27:1498:43 | (...)... | LogInjectionTest.java:1498:36:1498:43 | source(...) : Object | LogInjectionTest.java:1498:27:1498:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1498:36:1498:43 | source(...) | user-provided value | +| LogInjectionTest.java:1499:72:1499:88 | (...)... | LogInjectionTest.java:1499:81:1499:88 | source(...) : Object | LogInjectionTest.java:1499:72:1499:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1499:81:1499:88 | source(...) | user-provided value | +| LogInjectionTest.java:1500:57:1500:73 | (...)... | LogInjectionTest.java:1500:66:1500:73 | source(...) : Object | LogInjectionTest.java:1500:57:1500:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1500:66:1500:73 | source(...) | user-provided value | +| LogInjectionTest.java:1501:42:1501:58 | (...)... | LogInjectionTest.java:1501:51:1501:58 | source(...) : Object | LogInjectionTest.java:1501:42:1501:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1501:51:1501:58 | source(...) | user-provided value | +| LogInjectionTest.java:1502:27:1502:43 | (...)... | LogInjectionTest.java:1502:36:1502:43 | source(...) : Object | LogInjectionTest.java:1502:27:1502:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1502:36:1502:43 | source(...) | user-provided value | +| LogInjectionTest.java:1508:26:1508:33 | source(...) | LogInjectionTest.java:1508:26:1508:33 | source(...) | LogInjectionTest.java:1508:26:1508:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1508:26:1508:33 | source(...) | user-provided value | +| LogInjectionTest.java:1509:26:1509:33 | source(...) | LogInjectionTest.java:1509:26:1509:33 | source(...) | LogInjectionTest.java:1509:26:1509:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1509:26:1509:33 | source(...) | user-provided value | | LogInjectionTest.java:1513:41:1513:48 | source(...) | LogInjectionTest.java:1513:41:1513:48 | source(...) | LogInjectionTest.java:1513:41:1513:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1513:41:1513:48 | source(...) | user-provided value | -| LogInjectionTest.java:1514:26:1514:33 | source(...) | LogInjectionTest.java:1514:26:1514:33 | source(...) | LogInjectionTest.java:1514:26:1514:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1514:26:1514:33 | source(...) | user-provided value | -| LogInjectionTest.java:1515:26:1515:33 | source(...) | LogInjectionTest.java:1515:26:1515:33 | source(...) | LogInjectionTest.java:1515:26:1515:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1515:26:1515:33 | source(...) | user-provided value | -| LogInjectionTest.java:1519:41:1519:48 | source(...) | LogInjectionTest.java:1519:41:1519:48 | source(...) | LogInjectionTest.java:1519:41:1519:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1519:41:1519:48 | source(...) | user-provided value | -| LogInjectionTest.java:1520:56:1520:78 | new Object[] | LogInjectionTest.java:1520:70:1520:77 | source(...) : Object | LogInjectionTest.java:1520:56:1520:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1520:70:1520:77 | source(...) | user-provided value | +| LogInjectionTest.java:1514:56:1514:78 | new Object[] | LogInjectionTest.java:1514:70:1514:77 | source(...) : Object | LogInjectionTest.java:1514:56:1514:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1514:70:1514:77 | source(...) | user-provided value | +| LogInjectionTest.java:1515:41:1515:48 | source(...) | LogInjectionTest.java:1515:41:1515:48 | source(...) | LogInjectionTest.java:1515:41:1515:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1515:41:1515:48 | source(...) | user-provided value | +| LogInjectionTest.java:1516:26:1516:33 | source(...) | LogInjectionTest.java:1516:26:1516:33 | source(...) | LogInjectionTest.java:1516:26:1516:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1516:26:1516:33 | source(...) | user-provided value | +| LogInjectionTest.java:1517:26:1517:33 | source(...) | LogInjectionTest.java:1517:26:1517:33 | source(...) | LogInjectionTest.java:1517:26:1517:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1517:26:1517:33 | source(...) | user-provided value | | LogInjectionTest.java:1521:41:1521:48 | source(...) | LogInjectionTest.java:1521:41:1521:48 | source(...) | LogInjectionTest.java:1521:41:1521:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1521:41:1521:48 | source(...) | user-provided value | -| LogInjectionTest.java:1522:25:1522:32 | source(...) | LogInjectionTest.java:1522:25:1522:32 | source(...) | LogInjectionTest.java:1522:25:1522:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1522:25:1522:32 | source(...) | user-provided value | -| LogInjectionTest.java:1523:25:1523:32 | source(...) | LogInjectionTest.java:1523:25:1523:32 | source(...) | LogInjectionTest.java:1523:25:1523:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1523:25:1523:32 | source(...) | user-provided value | -| LogInjectionTest.java:1527:40:1527:47 | source(...) | LogInjectionTest.java:1527:40:1527:47 | source(...) | LogInjectionTest.java:1527:40:1527:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1527:40:1527:47 | source(...) | user-provided value | -| LogInjectionTest.java:1528:55:1528:77 | new Object[] | LogInjectionTest.java:1528:69:1528:76 | source(...) : Object | LogInjectionTest.java:1528:55:1528:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1528:69:1528:76 | source(...) | user-provided value | -| LogInjectionTest.java:1529:40:1529:47 | source(...) | LogInjectionTest.java:1529:40:1529:47 | source(...) | LogInjectionTest.java:1529:40:1529:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1529:40:1529:47 | source(...) | user-provided value | -| LogInjectionTest.java:1530:26:1530:33 | source(...) | LogInjectionTest.java:1530:26:1530:33 | source(...) | LogInjectionTest.java:1530:26:1530:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1530:26:1530:33 | source(...) | user-provided value | -| LogInjectionTest.java:1531:26:1531:33 | source(...) | LogInjectionTest.java:1531:26:1531:33 | source(...) | LogInjectionTest.java:1531:26:1531:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1531:26:1531:33 | source(...) | user-provided value | -| LogInjectionTest.java:1535:41:1535:48 | source(...) | LogInjectionTest.java:1535:41:1535:48 | source(...) | LogInjectionTest.java:1535:41:1535:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1535:41:1535:48 | source(...) | user-provided value | -| LogInjectionTest.java:1536:56:1536:78 | new Object[] | LogInjectionTest.java:1536:70:1536:77 | source(...) : Object | LogInjectionTest.java:1536:56:1536:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1536:70:1536:77 | source(...) | user-provided value | -| LogInjectionTest.java:1537:41:1537:48 | source(...) | LogInjectionTest.java:1537:41:1537:48 | source(...) | LogInjectionTest.java:1537:41:1537:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1537:41:1537:48 | source(...) | user-provided value | -| LogInjectionTest.java:1538:25:1538:32 | source(...) | LogInjectionTest.java:1538:25:1538:32 | source(...) | LogInjectionTest.java:1538:25:1538:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1538:25:1538:32 | source(...) | user-provided value | -| LogInjectionTest.java:1539:25:1539:32 | source(...) | LogInjectionTest.java:1539:25:1539:32 | source(...) | LogInjectionTest.java:1539:25:1539:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1539:25:1539:32 | source(...) | user-provided value | -| LogInjectionTest.java:1543:40:1543:47 | source(...) | LogInjectionTest.java:1543:40:1543:47 | source(...) | LogInjectionTest.java:1543:40:1543:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1543:40:1543:47 | source(...) | user-provided value | -| LogInjectionTest.java:1544:55:1544:77 | new Object[] | LogInjectionTest.java:1544:69:1544:76 | source(...) : Object | LogInjectionTest.java:1544:55:1544:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1544:69:1544:76 | source(...) | user-provided value | -| LogInjectionTest.java:1545:40:1545:47 | source(...) | LogInjectionTest.java:1545:40:1545:47 | source(...) | LogInjectionTest.java:1545:40:1545:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1545:40:1545:47 | source(...) | user-provided value | -| LogInjectionTest.java:1546:63:1546:70 | source(...) | LogInjectionTest.java:1546:63:1546:70 | source(...) | LogInjectionTest.java:1546:63:1546:70 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1546:63:1546:70 | source(...) | user-provided value | -| LogInjectionTest.java:1547:63:1547:70 | source(...) | LogInjectionTest.java:1547:63:1547:70 | source(...) | LogInjectionTest.java:1547:63:1547:70 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1547:63:1547:70 | source(...) | user-provided value | -| LogInjectionTest.java:1551:78:1551:85 | source(...) | LogInjectionTest.java:1551:78:1551:85 | source(...) | LogInjectionTest.java:1551:78:1551:85 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1551:78:1551:85 | source(...) | user-provided value | -| LogInjectionTest.java:1552:78:1552:85 | source(...) | LogInjectionTest.java:1552:78:1552:85 | source(...) | LogInjectionTest.java:1552:78:1552:85 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1552:78:1552:85 | source(...) | user-provided value | -| LogInjectionTest.java:1553:93:1553:115 | new Object[] | LogInjectionTest.java:1553:107:1553:114 | source(...) : Object | LogInjectionTest.java:1553:93:1553:115 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1553:107:1553:114 | source(...) | user-provided value | -| LogInjectionTest.java:1554:42:1554:58 | (...)... | LogInjectionTest.java:1554:51:1554:58 | source(...) : Object | LogInjectionTest.java:1554:42:1554:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1554:51:1554:58 | source(...) | user-provided value | -| LogInjectionTest.java:1555:27:1555:43 | (...)... | LogInjectionTest.java:1555:36:1555:43 | source(...) : Object | LogInjectionTest.java:1555:27:1555:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1555:36:1555:43 | source(...) | user-provided value | -| LogInjectionTest.java:1556:42:1556:58 | (...)... | LogInjectionTest.java:1556:51:1556:58 | source(...) : Object | LogInjectionTest.java:1556:42:1556:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1556:51:1556:58 | source(...) | user-provided value | -| LogInjectionTest.java:1557:27:1557:43 | (...)... | LogInjectionTest.java:1557:36:1557:43 | source(...) : Object | LogInjectionTest.java:1557:27:1557:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1557:36:1557:43 | source(...) | user-provided value | -| LogInjectionTest.java:1558:27:1558:43 | (...)... | LogInjectionTest.java:1558:36:1558:43 | source(...) : Object | LogInjectionTest.java:1558:27:1558:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1558:36:1558:43 | source(...) | user-provided value | -| LogInjectionTest.java:1559:27:1559:43 | (...)... | LogInjectionTest.java:1559:36:1559:43 | source(...) : Object | LogInjectionTest.java:1559:27:1559:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1559:36:1559:43 | source(...) | user-provided value | -| LogInjectionTest.java:1560:42:1560:64 | new Object[] | LogInjectionTest.java:1560:56:1560:63 | source(...) : Object | LogInjectionTest.java:1560:42:1560:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1560:56:1560:63 | source(...) | user-provided value | -| LogInjectionTest.java:1561:42:1561:64 | new Object[] | LogInjectionTest.java:1561:56:1561:63 | source(...) : Object | LogInjectionTest.java:1561:42:1561:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1561:56:1561:63 | source(...) | user-provided value | -| LogInjectionTest.java:1562:57:1562:73 | (...)... | LogInjectionTest.java:1562:66:1562:73 | source(...) : Object | LogInjectionTest.java:1562:57:1562:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1562:66:1562:73 | source(...) | user-provided value | -| LogInjectionTest.java:1563:42:1563:58 | (...)... | LogInjectionTest.java:1563:51:1563:58 | source(...) : Object | LogInjectionTest.java:1563:42:1563:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1563:51:1563:58 | source(...) | user-provided value | -| LogInjectionTest.java:1564:27:1564:43 | (...)... | LogInjectionTest.java:1564:36:1564:43 | source(...) : Object | LogInjectionTest.java:1564:27:1564:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1564:36:1564:43 | source(...) | user-provided value | -| LogInjectionTest.java:1565:57:1565:73 | (...)... | LogInjectionTest.java:1565:66:1565:73 | source(...) : Object | LogInjectionTest.java:1565:57:1565:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1565:66:1565:73 | source(...) | user-provided value | +| LogInjectionTest.java:1522:56:1522:78 | new Object[] | LogInjectionTest.java:1522:70:1522:77 | source(...) : Object | LogInjectionTest.java:1522:56:1522:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1522:70:1522:77 | source(...) | user-provided value | +| LogInjectionTest.java:1523:41:1523:48 | source(...) | LogInjectionTest.java:1523:41:1523:48 | source(...) | LogInjectionTest.java:1523:41:1523:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1523:41:1523:48 | source(...) | user-provided value | +| LogInjectionTest.java:1524:26:1524:33 | source(...) | LogInjectionTest.java:1524:26:1524:33 | source(...) | LogInjectionTest.java:1524:26:1524:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1524:26:1524:33 | source(...) | user-provided value | +| LogInjectionTest.java:1525:26:1525:33 | source(...) | LogInjectionTest.java:1525:26:1525:33 | source(...) | LogInjectionTest.java:1525:26:1525:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1525:26:1525:33 | source(...) | user-provided value | +| LogInjectionTest.java:1529:41:1529:48 | source(...) | LogInjectionTest.java:1529:41:1529:48 | source(...) | LogInjectionTest.java:1529:41:1529:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1529:41:1529:48 | source(...) | user-provided value | +| LogInjectionTest.java:1530:56:1530:78 | new Object[] | LogInjectionTest.java:1530:70:1530:77 | source(...) : Object | LogInjectionTest.java:1530:56:1530:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1530:70:1530:77 | source(...) | user-provided value | +| LogInjectionTest.java:1531:41:1531:48 | source(...) | LogInjectionTest.java:1531:41:1531:48 | source(...) | LogInjectionTest.java:1531:41:1531:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1531:41:1531:48 | source(...) | user-provided value | +| LogInjectionTest.java:1532:25:1532:32 | source(...) | LogInjectionTest.java:1532:25:1532:32 | source(...) | LogInjectionTest.java:1532:25:1532:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1532:25:1532:32 | source(...) | user-provided value | +| LogInjectionTest.java:1533:25:1533:32 | source(...) | LogInjectionTest.java:1533:25:1533:32 | source(...) | LogInjectionTest.java:1533:25:1533:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1533:25:1533:32 | source(...) | user-provided value | +| LogInjectionTest.java:1537:40:1537:47 | source(...) | LogInjectionTest.java:1537:40:1537:47 | source(...) | LogInjectionTest.java:1537:40:1537:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1537:40:1537:47 | source(...) | user-provided value | +| LogInjectionTest.java:1538:55:1538:77 | new Object[] | LogInjectionTest.java:1538:69:1538:76 | source(...) : Object | LogInjectionTest.java:1538:55:1538:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1538:69:1538:76 | source(...) | user-provided value | +| LogInjectionTest.java:1539:40:1539:47 | source(...) | LogInjectionTest.java:1539:40:1539:47 | source(...) | LogInjectionTest.java:1539:40:1539:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1539:40:1539:47 | source(...) | user-provided value | +| LogInjectionTest.java:1540:26:1540:33 | source(...) | LogInjectionTest.java:1540:26:1540:33 | source(...) | LogInjectionTest.java:1540:26:1540:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1540:26:1540:33 | source(...) | user-provided value | +| LogInjectionTest.java:1541:26:1541:33 | source(...) | LogInjectionTest.java:1541:26:1541:33 | source(...) | LogInjectionTest.java:1541:26:1541:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1541:26:1541:33 | source(...) | user-provided value | +| LogInjectionTest.java:1545:41:1545:48 | source(...) | LogInjectionTest.java:1545:41:1545:48 | source(...) | LogInjectionTest.java:1545:41:1545:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1545:41:1545:48 | source(...) | user-provided value | +| LogInjectionTest.java:1546:56:1546:78 | new Object[] | LogInjectionTest.java:1546:70:1546:77 | source(...) : Object | LogInjectionTest.java:1546:56:1546:78 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1546:70:1546:77 | source(...) | user-provided value | +| LogInjectionTest.java:1547:41:1547:48 | source(...) | LogInjectionTest.java:1547:41:1547:48 | source(...) | LogInjectionTest.java:1547:41:1547:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1547:41:1547:48 | source(...) | user-provided value | +| LogInjectionTest.java:1548:25:1548:32 | source(...) | LogInjectionTest.java:1548:25:1548:32 | source(...) | LogInjectionTest.java:1548:25:1548:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1548:25:1548:32 | source(...) | user-provided value | +| LogInjectionTest.java:1549:25:1549:32 | source(...) | LogInjectionTest.java:1549:25:1549:32 | source(...) | LogInjectionTest.java:1549:25:1549:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1549:25:1549:32 | source(...) | user-provided value | +| LogInjectionTest.java:1553:40:1553:47 | source(...) | LogInjectionTest.java:1553:40:1553:47 | source(...) | LogInjectionTest.java:1553:40:1553:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1553:40:1553:47 | source(...) | user-provided value | +| LogInjectionTest.java:1554:55:1554:77 | new Object[] | LogInjectionTest.java:1554:69:1554:76 | source(...) : Object | LogInjectionTest.java:1554:55:1554:77 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1554:69:1554:76 | source(...) | user-provided value | +| LogInjectionTest.java:1555:40:1555:47 | source(...) | LogInjectionTest.java:1555:40:1555:47 | source(...) | LogInjectionTest.java:1555:40:1555:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1555:40:1555:47 | source(...) | user-provided value | +| LogInjectionTest.java:1556:63:1556:70 | source(...) | LogInjectionTest.java:1556:63:1556:70 | source(...) | LogInjectionTest.java:1556:63:1556:70 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1556:63:1556:70 | source(...) | user-provided value | +| LogInjectionTest.java:1557:63:1557:70 | source(...) | LogInjectionTest.java:1557:63:1557:70 | source(...) | LogInjectionTest.java:1557:63:1557:70 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1557:63:1557:70 | source(...) | user-provided value | +| LogInjectionTest.java:1561:78:1561:85 | source(...) | LogInjectionTest.java:1561:78:1561:85 | source(...) | LogInjectionTest.java:1561:78:1561:85 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1561:78:1561:85 | source(...) | user-provided value | +| LogInjectionTest.java:1562:78:1562:85 | source(...) | LogInjectionTest.java:1562:78:1562:85 | source(...) | LogInjectionTest.java:1562:78:1562:85 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1562:78:1562:85 | source(...) | user-provided value | +| LogInjectionTest.java:1563:93:1563:115 | new Object[] | LogInjectionTest.java:1563:107:1563:114 | source(...) : Object | LogInjectionTest.java:1563:93:1563:115 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1563:107:1563:114 | source(...) | user-provided value | +| LogInjectionTest.java:1564:42:1564:58 | (...)... | LogInjectionTest.java:1564:51:1564:58 | source(...) : Object | LogInjectionTest.java:1564:42:1564:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1564:51:1564:58 | source(...) | user-provided value | +| LogInjectionTest.java:1565:27:1565:43 | (...)... | LogInjectionTest.java:1565:36:1565:43 | source(...) : Object | LogInjectionTest.java:1565:27:1565:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1565:36:1565:43 | source(...) | user-provided value | | LogInjectionTest.java:1566:42:1566:58 | (...)... | LogInjectionTest.java:1566:51:1566:58 | source(...) : Object | LogInjectionTest.java:1566:42:1566:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1566:51:1566:58 | source(...) | user-provided value | | LogInjectionTest.java:1567:27:1567:43 | (...)... | LogInjectionTest.java:1567:36:1567:43 | source(...) : Object | LogInjectionTest.java:1567:27:1567:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1567:36:1567:43 | source(...) | user-provided value | -| LogInjectionTest.java:1568:72:1568:88 | (...)... | LogInjectionTest.java:1568:81:1568:88 | source(...) : Object | LogInjectionTest.java:1568:72:1568:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1568:81:1568:88 | source(...) | user-provided value | -| LogInjectionTest.java:1569:57:1569:73 | (...)... | LogInjectionTest.java:1569:66:1569:73 | source(...) : Object | LogInjectionTest.java:1569:57:1569:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1569:66:1569:73 | source(...) | user-provided value | -| LogInjectionTest.java:1570:42:1570:58 | (...)... | LogInjectionTest.java:1570:51:1570:58 | source(...) : Object | LogInjectionTest.java:1570:42:1570:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1570:51:1570:58 | source(...) | user-provided value | -| LogInjectionTest.java:1571:27:1571:43 | (...)... | LogInjectionTest.java:1571:36:1571:43 | source(...) : Object | LogInjectionTest.java:1571:27:1571:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1571:36:1571:43 | source(...) | user-provided value | -| LogInjectionTest.java:1572:72:1572:88 | (...)... | LogInjectionTest.java:1572:81:1572:88 | source(...) : Object | LogInjectionTest.java:1572:72:1572:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1572:81:1572:88 | source(...) | user-provided value | -| LogInjectionTest.java:1573:57:1573:73 | (...)... | LogInjectionTest.java:1573:66:1573:73 | source(...) : Object | LogInjectionTest.java:1573:57:1573:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1573:66:1573:73 | source(...) | user-provided value | -| LogInjectionTest.java:1574:42:1574:58 | (...)... | LogInjectionTest.java:1574:51:1574:58 | source(...) : Object | LogInjectionTest.java:1574:42:1574:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1574:51:1574:58 | source(...) | user-provided value | -| LogInjectionTest.java:1575:27:1575:43 | (...)... | LogInjectionTest.java:1575:36:1575:43 | source(...) : Object | LogInjectionTest.java:1575:27:1575:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1575:36:1575:43 | source(...) | user-provided value | +| LogInjectionTest.java:1568:27:1568:43 | (...)... | LogInjectionTest.java:1568:36:1568:43 | source(...) : Object | LogInjectionTest.java:1568:27:1568:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1568:36:1568:43 | source(...) | user-provided value | +| LogInjectionTest.java:1569:27:1569:43 | (...)... | LogInjectionTest.java:1569:36:1569:43 | source(...) : Object | LogInjectionTest.java:1569:27:1569:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1569:36:1569:43 | source(...) | user-provided value | +| LogInjectionTest.java:1570:42:1570:64 | new Object[] | LogInjectionTest.java:1570:56:1570:63 | source(...) : Object | LogInjectionTest.java:1570:42:1570:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1570:56:1570:63 | source(...) | user-provided value | +| LogInjectionTest.java:1571:42:1571:64 | new Object[] | LogInjectionTest.java:1571:56:1571:63 | source(...) : Object | LogInjectionTest.java:1571:42:1571:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1571:56:1571:63 | source(...) | user-provided value | +| LogInjectionTest.java:1572:57:1572:73 | (...)... | LogInjectionTest.java:1572:66:1572:73 | source(...) : Object | LogInjectionTest.java:1572:57:1572:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1572:66:1572:73 | source(...) | user-provided value | +| LogInjectionTest.java:1573:42:1573:58 | (...)... | LogInjectionTest.java:1573:51:1573:58 | source(...) : Object | LogInjectionTest.java:1573:42:1573:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1573:51:1573:58 | source(...) | user-provided value | +| LogInjectionTest.java:1574:27:1574:43 | (...)... | LogInjectionTest.java:1574:36:1574:43 | source(...) : Object | LogInjectionTest.java:1574:27:1574:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1574:36:1574:43 | source(...) | user-provided value | +| LogInjectionTest.java:1575:57:1575:73 | (...)... | LogInjectionTest.java:1575:66:1575:73 | source(...) : Object | LogInjectionTest.java:1575:57:1575:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1575:66:1575:73 | source(...) | user-provided value | | LogInjectionTest.java:1576:42:1576:58 | (...)... | LogInjectionTest.java:1576:51:1576:58 | source(...) : Object | LogInjectionTest.java:1576:42:1576:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1576:51:1576:58 | source(...) | user-provided value | | LogInjectionTest.java:1577:27:1577:43 | (...)... | LogInjectionTest.java:1577:36:1577:43 | source(...) : Object | LogInjectionTest.java:1577:27:1577:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1577:36:1577:43 | source(...) | user-provided value | -| LogInjectionTest.java:1578:42:1578:58 | (...)... | LogInjectionTest.java:1578:51:1578:58 | source(...) : Object | LogInjectionTest.java:1578:42:1578:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1578:51:1578:58 | source(...) | user-provided value | -| LogInjectionTest.java:1579:27:1579:43 | (...)... | LogInjectionTest.java:1579:36:1579:43 | source(...) : Object | LogInjectionTest.java:1579:27:1579:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1579:36:1579:43 | source(...) | user-provided value | -| LogInjectionTest.java:1580:27:1580:43 | (...)... | LogInjectionTest.java:1580:36:1580:43 | source(...) : Object | LogInjectionTest.java:1580:27:1580:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1580:36:1580:43 | source(...) | user-provided value | +| LogInjectionTest.java:1578:72:1578:88 | (...)... | LogInjectionTest.java:1578:81:1578:88 | source(...) : Object | LogInjectionTest.java:1578:72:1578:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1578:81:1578:88 | source(...) | user-provided value | +| LogInjectionTest.java:1579:57:1579:73 | (...)... | LogInjectionTest.java:1579:66:1579:73 | source(...) : Object | LogInjectionTest.java:1579:57:1579:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1579:66:1579:73 | source(...) | user-provided value | +| LogInjectionTest.java:1580:42:1580:58 | (...)... | LogInjectionTest.java:1580:51:1580:58 | source(...) : Object | LogInjectionTest.java:1580:42:1580:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1580:51:1580:58 | source(...) | user-provided value | | LogInjectionTest.java:1581:27:1581:43 | (...)... | LogInjectionTest.java:1581:36:1581:43 | source(...) : Object | LogInjectionTest.java:1581:27:1581:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1581:36:1581:43 | source(...) | user-provided value | -| LogInjectionTest.java:1582:42:1582:64 | new Object[] | LogInjectionTest.java:1582:56:1582:63 | source(...) : Object | LogInjectionTest.java:1582:42:1582:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1582:56:1582:63 | source(...) | user-provided value | -| LogInjectionTest.java:1583:42:1583:64 | new Object[] | LogInjectionTest.java:1583:56:1583:63 | source(...) : Object | LogInjectionTest.java:1583:42:1583:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1583:56:1583:63 | source(...) | user-provided value | -| LogInjectionTest.java:1584:57:1584:73 | (...)... | LogInjectionTest.java:1584:66:1584:73 | source(...) : Object | LogInjectionTest.java:1584:57:1584:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1584:66:1584:73 | source(...) | user-provided value | -| LogInjectionTest.java:1585:42:1585:58 | (...)... | LogInjectionTest.java:1585:51:1585:58 | source(...) : Object | LogInjectionTest.java:1585:42:1585:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1585:51:1585:58 | source(...) | user-provided value | -| LogInjectionTest.java:1586:27:1586:43 | (...)... | LogInjectionTest.java:1586:36:1586:43 | source(...) : Object | LogInjectionTest.java:1586:27:1586:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1586:36:1586:43 | source(...) | user-provided value | -| LogInjectionTest.java:1587:57:1587:73 | (...)... | LogInjectionTest.java:1587:66:1587:73 | source(...) : Object | LogInjectionTest.java:1587:57:1587:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1587:66:1587:73 | source(...) | user-provided value | +| LogInjectionTest.java:1582:72:1582:88 | (...)... | LogInjectionTest.java:1582:81:1582:88 | source(...) : Object | LogInjectionTest.java:1582:72:1582:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1582:81:1582:88 | source(...) | user-provided value | +| LogInjectionTest.java:1583:57:1583:73 | (...)... | LogInjectionTest.java:1583:66:1583:73 | source(...) : Object | LogInjectionTest.java:1583:57:1583:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1583:66:1583:73 | source(...) | user-provided value | +| LogInjectionTest.java:1584:42:1584:58 | (...)... | LogInjectionTest.java:1584:51:1584:58 | source(...) : Object | LogInjectionTest.java:1584:42:1584:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1584:51:1584:58 | source(...) | user-provided value | +| LogInjectionTest.java:1585:27:1585:43 | (...)... | LogInjectionTest.java:1585:36:1585:43 | source(...) : Object | LogInjectionTest.java:1585:27:1585:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1585:36:1585:43 | source(...) | user-provided value | +| LogInjectionTest.java:1586:42:1586:58 | (...)... | LogInjectionTest.java:1586:51:1586:58 | source(...) : Object | LogInjectionTest.java:1586:42:1586:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1586:51:1586:58 | source(...) | user-provided value | +| LogInjectionTest.java:1587:27:1587:43 | (...)... | LogInjectionTest.java:1587:36:1587:43 | source(...) : Object | LogInjectionTest.java:1587:27:1587:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1587:36:1587:43 | source(...) | user-provided value | | LogInjectionTest.java:1588:42:1588:58 | (...)... | LogInjectionTest.java:1588:51:1588:58 | source(...) : Object | LogInjectionTest.java:1588:42:1588:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1588:51:1588:58 | source(...) | user-provided value | | LogInjectionTest.java:1589:27:1589:43 | (...)... | LogInjectionTest.java:1589:36:1589:43 | source(...) : Object | LogInjectionTest.java:1589:27:1589:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1589:36:1589:43 | source(...) | user-provided value | -| LogInjectionTest.java:1590:72:1590:88 | (...)... | LogInjectionTest.java:1590:81:1590:88 | source(...) : Object | LogInjectionTest.java:1590:72:1590:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1590:81:1590:88 | source(...) | user-provided value | -| LogInjectionTest.java:1591:57:1591:73 | (...)... | LogInjectionTest.java:1591:66:1591:73 | source(...) : Object | LogInjectionTest.java:1591:57:1591:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1591:66:1591:73 | source(...) | user-provided value | -| LogInjectionTest.java:1592:42:1592:58 | (...)... | LogInjectionTest.java:1592:51:1592:58 | source(...) : Object | LogInjectionTest.java:1592:42:1592:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1592:51:1592:58 | source(...) | user-provided value | -| LogInjectionTest.java:1593:27:1593:43 | (...)... | LogInjectionTest.java:1593:36:1593:43 | source(...) : Object | LogInjectionTest.java:1593:27:1593:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1593:36:1593:43 | source(...) | user-provided value | -| LogInjectionTest.java:1594:72:1594:88 | (...)... | LogInjectionTest.java:1594:81:1594:88 | source(...) : Object | LogInjectionTest.java:1594:72:1594:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1594:81:1594:88 | source(...) | user-provided value | -| LogInjectionTest.java:1595:57:1595:73 | (...)... | LogInjectionTest.java:1595:66:1595:73 | source(...) : Object | LogInjectionTest.java:1595:57:1595:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1595:66:1595:73 | source(...) | user-provided value | -| LogInjectionTest.java:1596:42:1596:58 | (...)... | LogInjectionTest.java:1596:51:1596:58 | source(...) : Object | LogInjectionTest.java:1596:42:1596:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1596:51:1596:58 | source(...) | user-provided value | -| LogInjectionTest.java:1597:27:1597:43 | (...)... | LogInjectionTest.java:1597:36:1597:43 | source(...) : Object | LogInjectionTest.java:1597:27:1597:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1597:36:1597:43 | source(...) | user-provided value | +| LogInjectionTest.java:1590:27:1590:43 | (...)... | LogInjectionTest.java:1590:36:1590:43 | source(...) : Object | LogInjectionTest.java:1590:27:1590:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1590:36:1590:43 | source(...) | user-provided value | +| LogInjectionTest.java:1591:27:1591:43 | (...)... | LogInjectionTest.java:1591:36:1591:43 | source(...) : Object | LogInjectionTest.java:1591:27:1591:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1591:36:1591:43 | source(...) | user-provided value | +| LogInjectionTest.java:1592:42:1592:64 | new Object[] | LogInjectionTest.java:1592:56:1592:63 | source(...) : Object | LogInjectionTest.java:1592:42:1592:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1592:56:1592:63 | source(...) | user-provided value | +| LogInjectionTest.java:1593:42:1593:64 | new Object[] | LogInjectionTest.java:1593:56:1593:63 | source(...) : Object | LogInjectionTest.java:1593:42:1593:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1593:56:1593:63 | source(...) | user-provided value | +| LogInjectionTest.java:1594:57:1594:73 | (...)... | LogInjectionTest.java:1594:66:1594:73 | source(...) : Object | LogInjectionTest.java:1594:57:1594:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1594:66:1594:73 | source(...) | user-provided value | +| LogInjectionTest.java:1595:42:1595:58 | (...)... | LogInjectionTest.java:1595:51:1595:58 | source(...) : Object | LogInjectionTest.java:1595:42:1595:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1595:51:1595:58 | source(...) | user-provided value | +| LogInjectionTest.java:1596:27:1596:43 | (...)... | LogInjectionTest.java:1596:36:1596:43 | source(...) : Object | LogInjectionTest.java:1596:27:1596:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1596:36:1596:43 | source(...) | user-provided value | +| LogInjectionTest.java:1597:57:1597:73 | (...)... | LogInjectionTest.java:1597:66:1597:73 | source(...) : Object | LogInjectionTest.java:1597:57:1597:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1597:66:1597:73 | source(...) | user-provided value | | LogInjectionTest.java:1598:42:1598:58 | (...)... | LogInjectionTest.java:1598:51:1598:58 | source(...) : Object | LogInjectionTest.java:1598:42:1598:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1598:51:1598:58 | source(...) | user-provided value | | LogInjectionTest.java:1599:27:1599:43 | (...)... | LogInjectionTest.java:1599:36:1599:43 | source(...) : Object | LogInjectionTest.java:1599:27:1599:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1599:36:1599:43 | source(...) | user-provided value | -| LogInjectionTest.java:1600:42:1600:58 | (...)... | LogInjectionTest.java:1600:51:1600:58 | source(...) : Object | LogInjectionTest.java:1600:42:1600:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1600:51:1600:58 | source(...) | user-provided value | -| LogInjectionTest.java:1601:27:1601:43 | (...)... | LogInjectionTest.java:1601:36:1601:43 | source(...) : Object | LogInjectionTest.java:1601:27:1601:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1601:36:1601:43 | source(...) | user-provided value | -| LogInjectionTest.java:1602:27:1602:43 | (...)... | LogInjectionTest.java:1602:36:1602:43 | source(...) : Object | LogInjectionTest.java:1602:27:1602:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1602:36:1602:43 | source(...) | user-provided value | +| LogInjectionTest.java:1600:72:1600:88 | (...)... | LogInjectionTest.java:1600:81:1600:88 | source(...) : Object | LogInjectionTest.java:1600:72:1600:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1600:81:1600:88 | source(...) | user-provided value | +| LogInjectionTest.java:1601:57:1601:73 | (...)... | LogInjectionTest.java:1601:66:1601:73 | source(...) : Object | LogInjectionTest.java:1601:57:1601:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1601:66:1601:73 | source(...) | user-provided value | +| LogInjectionTest.java:1602:42:1602:58 | (...)... | LogInjectionTest.java:1602:51:1602:58 | source(...) : Object | LogInjectionTest.java:1602:42:1602:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1602:51:1602:58 | source(...) | user-provided value | | LogInjectionTest.java:1603:27:1603:43 | (...)... | LogInjectionTest.java:1603:36:1603:43 | source(...) : Object | LogInjectionTest.java:1603:27:1603:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1603:36:1603:43 | source(...) | user-provided value | -| LogInjectionTest.java:1604:42:1604:64 | new Object[] | LogInjectionTest.java:1604:56:1604:63 | source(...) : Object | LogInjectionTest.java:1604:42:1604:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1604:56:1604:63 | source(...) | user-provided value | -| LogInjectionTest.java:1605:42:1605:64 | new Object[] | LogInjectionTest.java:1605:56:1605:63 | source(...) : Object | LogInjectionTest.java:1605:42:1605:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1605:56:1605:63 | source(...) | user-provided value | -| LogInjectionTest.java:1606:57:1606:73 | (...)... | LogInjectionTest.java:1606:66:1606:73 | source(...) : Object | LogInjectionTest.java:1606:57:1606:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1606:66:1606:73 | source(...) | user-provided value | -| LogInjectionTest.java:1607:42:1607:58 | (...)... | LogInjectionTest.java:1607:51:1607:58 | source(...) : Object | LogInjectionTest.java:1607:42:1607:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1607:51:1607:58 | source(...) | user-provided value | -| LogInjectionTest.java:1608:27:1608:43 | (...)... | LogInjectionTest.java:1608:36:1608:43 | source(...) : Object | LogInjectionTest.java:1608:27:1608:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1608:36:1608:43 | source(...) | user-provided value | -| LogInjectionTest.java:1609:57:1609:73 | (...)... | LogInjectionTest.java:1609:66:1609:73 | source(...) : Object | LogInjectionTest.java:1609:57:1609:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1609:66:1609:73 | source(...) | user-provided value | +| LogInjectionTest.java:1604:72:1604:88 | (...)... | LogInjectionTest.java:1604:81:1604:88 | source(...) : Object | LogInjectionTest.java:1604:72:1604:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1604:81:1604:88 | source(...) | user-provided value | +| LogInjectionTest.java:1605:57:1605:73 | (...)... | LogInjectionTest.java:1605:66:1605:73 | source(...) : Object | LogInjectionTest.java:1605:57:1605:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1605:66:1605:73 | source(...) | user-provided value | +| LogInjectionTest.java:1606:42:1606:58 | (...)... | LogInjectionTest.java:1606:51:1606:58 | source(...) : Object | LogInjectionTest.java:1606:42:1606:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1606:51:1606:58 | source(...) | user-provided value | +| LogInjectionTest.java:1607:27:1607:43 | (...)... | LogInjectionTest.java:1607:36:1607:43 | source(...) : Object | LogInjectionTest.java:1607:27:1607:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1607:36:1607:43 | source(...) | user-provided value | +| LogInjectionTest.java:1608:42:1608:58 | (...)... | LogInjectionTest.java:1608:51:1608:58 | source(...) : Object | LogInjectionTest.java:1608:42:1608:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1608:51:1608:58 | source(...) | user-provided value | +| LogInjectionTest.java:1609:27:1609:43 | (...)... | LogInjectionTest.java:1609:36:1609:43 | source(...) : Object | LogInjectionTest.java:1609:27:1609:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1609:36:1609:43 | source(...) | user-provided value | | LogInjectionTest.java:1610:42:1610:58 | (...)... | LogInjectionTest.java:1610:51:1610:58 | source(...) : Object | LogInjectionTest.java:1610:42:1610:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1610:51:1610:58 | source(...) | user-provided value | | LogInjectionTest.java:1611:27:1611:43 | (...)... | LogInjectionTest.java:1611:36:1611:43 | source(...) : Object | LogInjectionTest.java:1611:27:1611:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1611:36:1611:43 | source(...) | user-provided value | -| LogInjectionTest.java:1612:72:1612:88 | (...)... | LogInjectionTest.java:1612:81:1612:88 | source(...) : Object | LogInjectionTest.java:1612:72:1612:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1612:81:1612:88 | source(...) | user-provided value | -| LogInjectionTest.java:1613:57:1613:73 | (...)... | LogInjectionTest.java:1613:66:1613:73 | source(...) : Object | LogInjectionTest.java:1613:57:1613:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1613:66:1613:73 | source(...) | user-provided value | -| LogInjectionTest.java:1614:42:1614:58 | (...)... | LogInjectionTest.java:1614:51:1614:58 | source(...) : Object | LogInjectionTest.java:1614:42:1614:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1614:51:1614:58 | source(...) | user-provided value | -| LogInjectionTest.java:1615:27:1615:43 | (...)... | LogInjectionTest.java:1615:36:1615:43 | source(...) : Object | LogInjectionTest.java:1615:27:1615:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1615:36:1615:43 | source(...) | user-provided value | -| LogInjectionTest.java:1616:72:1616:88 | (...)... | LogInjectionTest.java:1616:81:1616:88 | source(...) : Object | LogInjectionTest.java:1616:72:1616:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1616:81:1616:88 | source(...) | user-provided value | -| LogInjectionTest.java:1617:57:1617:73 | (...)... | LogInjectionTest.java:1617:66:1617:73 | source(...) : Object | LogInjectionTest.java:1617:57:1617:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1617:66:1617:73 | source(...) | user-provided value | -| LogInjectionTest.java:1618:42:1618:58 | (...)... | LogInjectionTest.java:1618:51:1618:58 | source(...) : Object | LogInjectionTest.java:1618:42:1618:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1618:51:1618:58 | source(...) | user-provided value | -| LogInjectionTest.java:1619:27:1619:43 | (...)... | LogInjectionTest.java:1619:36:1619:43 | source(...) : Object | LogInjectionTest.java:1619:27:1619:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1619:36:1619:43 | source(...) | user-provided value | -| LogInjectionTest.java:1620:41:1620:57 | (...)... | LogInjectionTest.java:1620:50:1620:57 | source(...) : Object | LogInjectionTest.java:1620:41:1620:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1620:50:1620:57 | source(...) | user-provided value | -| LogInjectionTest.java:1621:26:1621:42 | (...)... | LogInjectionTest.java:1621:35:1621:42 | source(...) : Object | LogInjectionTest.java:1621:26:1621:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1621:35:1621:42 | source(...) | user-provided value | -| LogInjectionTest.java:1622:41:1622:57 | (...)... | LogInjectionTest.java:1622:50:1622:57 | source(...) : Object | LogInjectionTest.java:1622:41:1622:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1622:50:1622:57 | source(...) | user-provided value | -| LogInjectionTest.java:1623:26:1623:42 | (...)... | LogInjectionTest.java:1623:35:1623:42 | source(...) : Object | LogInjectionTest.java:1623:26:1623:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1623:35:1623:42 | source(...) | user-provided value | -| LogInjectionTest.java:1624:26:1624:42 | (...)... | LogInjectionTest.java:1624:35:1624:42 | source(...) : Object | LogInjectionTest.java:1624:26:1624:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1624:35:1624:42 | source(...) | user-provided value | -| LogInjectionTest.java:1625:26:1625:42 | (...)... | LogInjectionTest.java:1625:35:1625:42 | source(...) : Object | LogInjectionTest.java:1625:26:1625:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1625:35:1625:42 | source(...) | user-provided value | -| LogInjectionTest.java:1626:41:1626:63 | new Object[] | LogInjectionTest.java:1626:55:1626:62 | source(...) : Object | LogInjectionTest.java:1626:41:1626:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1626:55:1626:62 | source(...) | user-provided value | -| LogInjectionTest.java:1627:41:1627:63 | new Object[] | LogInjectionTest.java:1627:55:1627:62 | source(...) : Object | LogInjectionTest.java:1627:41:1627:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1627:55:1627:62 | source(...) | user-provided value | -| LogInjectionTest.java:1628:56:1628:72 | (...)... | LogInjectionTest.java:1628:65:1628:72 | source(...) : Object | LogInjectionTest.java:1628:56:1628:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1628:65:1628:72 | source(...) | user-provided value | -| LogInjectionTest.java:1629:41:1629:57 | (...)... | LogInjectionTest.java:1629:50:1629:57 | source(...) : Object | LogInjectionTest.java:1629:41:1629:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1629:50:1629:57 | source(...) | user-provided value | -| LogInjectionTest.java:1630:26:1630:42 | (...)... | LogInjectionTest.java:1630:35:1630:42 | source(...) : Object | LogInjectionTest.java:1630:26:1630:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1630:35:1630:42 | source(...) | user-provided value | -| LogInjectionTest.java:1631:56:1631:72 | (...)... | LogInjectionTest.java:1631:65:1631:72 | source(...) : Object | LogInjectionTest.java:1631:56:1631:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1631:65:1631:72 | source(...) | user-provided value | +| LogInjectionTest.java:1612:27:1612:43 | (...)... | LogInjectionTest.java:1612:36:1612:43 | source(...) : Object | LogInjectionTest.java:1612:27:1612:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1612:36:1612:43 | source(...) | user-provided value | +| LogInjectionTest.java:1613:27:1613:43 | (...)... | LogInjectionTest.java:1613:36:1613:43 | source(...) : Object | LogInjectionTest.java:1613:27:1613:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1613:36:1613:43 | source(...) | user-provided value | +| LogInjectionTest.java:1614:42:1614:64 | new Object[] | LogInjectionTest.java:1614:56:1614:63 | source(...) : Object | LogInjectionTest.java:1614:42:1614:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1614:56:1614:63 | source(...) | user-provided value | +| LogInjectionTest.java:1615:42:1615:64 | new Object[] | LogInjectionTest.java:1615:56:1615:63 | source(...) : Object | LogInjectionTest.java:1615:42:1615:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1615:56:1615:63 | source(...) | user-provided value | +| LogInjectionTest.java:1616:57:1616:73 | (...)... | LogInjectionTest.java:1616:66:1616:73 | source(...) : Object | LogInjectionTest.java:1616:57:1616:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1616:66:1616:73 | source(...) | user-provided value | +| LogInjectionTest.java:1617:42:1617:58 | (...)... | LogInjectionTest.java:1617:51:1617:58 | source(...) : Object | LogInjectionTest.java:1617:42:1617:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1617:51:1617:58 | source(...) | user-provided value | +| LogInjectionTest.java:1618:27:1618:43 | (...)... | LogInjectionTest.java:1618:36:1618:43 | source(...) : Object | LogInjectionTest.java:1618:27:1618:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1618:36:1618:43 | source(...) | user-provided value | +| LogInjectionTest.java:1619:57:1619:73 | (...)... | LogInjectionTest.java:1619:66:1619:73 | source(...) : Object | LogInjectionTest.java:1619:57:1619:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1619:66:1619:73 | source(...) | user-provided value | +| LogInjectionTest.java:1620:42:1620:58 | (...)... | LogInjectionTest.java:1620:51:1620:58 | source(...) : Object | LogInjectionTest.java:1620:42:1620:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1620:51:1620:58 | source(...) | user-provided value | +| LogInjectionTest.java:1621:27:1621:43 | (...)... | LogInjectionTest.java:1621:36:1621:43 | source(...) : Object | LogInjectionTest.java:1621:27:1621:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1621:36:1621:43 | source(...) | user-provided value | +| LogInjectionTest.java:1622:72:1622:88 | (...)... | LogInjectionTest.java:1622:81:1622:88 | source(...) : Object | LogInjectionTest.java:1622:72:1622:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1622:81:1622:88 | source(...) | user-provided value | +| LogInjectionTest.java:1623:57:1623:73 | (...)... | LogInjectionTest.java:1623:66:1623:73 | source(...) : Object | LogInjectionTest.java:1623:57:1623:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1623:66:1623:73 | source(...) | user-provided value | +| LogInjectionTest.java:1624:42:1624:58 | (...)... | LogInjectionTest.java:1624:51:1624:58 | source(...) : Object | LogInjectionTest.java:1624:42:1624:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1624:51:1624:58 | source(...) | user-provided value | +| LogInjectionTest.java:1625:27:1625:43 | (...)... | LogInjectionTest.java:1625:36:1625:43 | source(...) : Object | LogInjectionTest.java:1625:27:1625:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1625:36:1625:43 | source(...) | user-provided value | +| LogInjectionTest.java:1626:72:1626:88 | (...)... | LogInjectionTest.java:1626:81:1626:88 | source(...) : Object | LogInjectionTest.java:1626:72:1626:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1626:81:1626:88 | source(...) | user-provided value | +| LogInjectionTest.java:1627:57:1627:73 | (...)... | LogInjectionTest.java:1627:66:1627:73 | source(...) : Object | LogInjectionTest.java:1627:57:1627:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1627:66:1627:73 | source(...) | user-provided value | +| LogInjectionTest.java:1628:42:1628:58 | (...)... | LogInjectionTest.java:1628:51:1628:58 | source(...) : Object | LogInjectionTest.java:1628:42:1628:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1628:51:1628:58 | source(...) | user-provided value | +| LogInjectionTest.java:1629:27:1629:43 | (...)... | LogInjectionTest.java:1629:36:1629:43 | source(...) : Object | LogInjectionTest.java:1629:27:1629:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1629:36:1629:43 | source(...) | user-provided value | +| LogInjectionTest.java:1630:41:1630:57 | (...)... | LogInjectionTest.java:1630:50:1630:57 | source(...) : Object | LogInjectionTest.java:1630:41:1630:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1630:50:1630:57 | source(...) | user-provided value | +| LogInjectionTest.java:1631:26:1631:42 | (...)... | LogInjectionTest.java:1631:35:1631:42 | source(...) : Object | LogInjectionTest.java:1631:26:1631:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1631:35:1631:42 | source(...) | user-provided value | | LogInjectionTest.java:1632:41:1632:57 | (...)... | LogInjectionTest.java:1632:50:1632:57 | source(...) : Object | LogInjectionTest.java:1632:41:1632:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1632:50:1632:57 | source(...) | user-provided value | | LogInjectionTest.java:1633:26:1633:42 | (...)... | LogInjectionTest.java:1633:35:1633:42 | source(...) : Object | LogInjectionTest.java:1633:26:1633:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1633:35:1633:42 | source(...) | user-provided value | -| LogInjectionTest.java:1634:71:1634:87 | (...)... | LogInjectionTest.java:1634:80:1634:87 | source(...) : Object | LogInjectionTest.java:1634:71:1634:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1634:80:1634:87 | source(...) | user-provided value | -| LogInjectionTest.java:1635:56:1635:72 | (...)... | LogInjectionTest.java:1635:65:1635:72 | source(...) : Object | LogInjectionTest.java:1635:56:1635:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1635:65:1635:72 | source(...) | user-provided value | -| LogInjectionTest.java:1636:41:1636:57 | (...)... | LogInjectionTest.java:1636:50:1636:57 | source(...) : Object | LogInjectionTest.java:1636:41:1636:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1636:50:1636:57 | source(...) | user-provided value | -| LogInjectionTest.java:1637:26:1637:42 | (...)... | LogInjectionTest.java:1637:35:1637:42 | source(...) : Object | LogInjectionTest.java:1637:26:1637:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1637:35:1637:42 | source(...) | user-provided value | -| LogInjectionTest.java:1638:71:1638:87 | (...)... | LogInjectionTest.java:1638:80:1638:87 | source(...) : Object | LogInjectionTest.java:1638:71:1638:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1638:80:1638:87 | source(...) | user-provided value | -| LogInjectionTest.java:1639:56:1639:72 | (...)... | LogInjectionTest.java:1639:65:1639:72 | source(...) : Object | LogInjectionTest.java:1639:56:1639:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1639:65:1639:72 | source(...) | user-provided value | -| LogInjectionTest.java:1640:41:1640:57 | (...)... | LogInjectionTest.java:1640:50:1640:57 | source(...) : Object | LogInjectionTest.java:1640:41:1640:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1640:50:1640:57 | source(...) | user-provided value | -| LogInjectionTest.java:1641:26:1641:42 | (...)... | LogInjectionTest.java:1641:35:1641:42 | source(...) : Object | LogInjectionTest.java:1641:26:1641:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1641:35:1641:42 | source(...) | user-provided value | -| LogInjectionTest.java:1642:79:1642:95 | (...)... | LogInjectionTest.java:1642:88:1642:95 | source(...) : Object | LogInjectionTest.java:1642:79:1642:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1642:88:1642:95 | source(...) | user-provided value | -| LogInjectionTest.java:1643:64:1643:80 | (...)... | LogInjectionTest.java:1643:73:1643:80 | source(...) : Object | LogInjectionTest.java:1643:64:1643:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1643:73:1643:80 | source(...) | user-provided value | -| LogInjectionTest.java:1644:79:1644:95 | (...)... | LogInjectionTest.java:1644:88:1644:95 | source(...) : Object | LogInjectionTest.java:1644:79:1644:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1644:88:1644:95 | source(...) | user-provided value | -| LogInjectionTest.java:1645:64:1645:80 | (...)... | LogInjectionTest.java:1645:73:1645:80 | source(...) : Object | LogInjectionTest.java:1645:64:1645:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1645:73:1645:80 | source(...) | user-provided value | -| LogInjectionTest.java:1646:64:1646:80 | (...)... | LogInjectionTest.java:1646:73:1646:80 | source(...) : Object | LogInjectionTest.java:1646:64:1646:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1646:73:1646:80 | source(...) | user-provided value | -| LogInjectionTest.java:1647:64:1647:80 | (...)... | LogInjectionTest.java:1647:73:1647:80 | source(...) : Object | LogInjectionTest.java:1647:64:1647:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1647:73:1647:80 | source(...) | user-provided value | -| LogInjectionTest.java:1648:79:1648:101 | new Object[] | LogInjectionTest.java:1648:93:1648:100 | source(...) : Object | LogInjectionTest.java:1648:79:1648:101 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1648:93:1648:100 | source(...) | user-provided value | -| LogInjectionTest.java:1649:79:1649:101 | new Object[] | LogInjectionTest.java:1649:93:1649:100 | source(...) : Object | LogInjectionTest.java:1649:79:1649:101 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1649:93:1649:100 | source(...) | user-provided value | -| LogInjectionTest.java:1650:94:1650:110 | (...)... | LogInjectionTest.java:1650:103:1650:110 | source(...) : Object | LogInjectionTest.java:1650:94:1650:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1650:103:1650:110 | source(...) | user-provided value | -| LogInjectionTest.java:1651:79:1651:95 | (...)... | LogInjectionTest.java:1651:88:1651:95 | source(...) : Object | LogInjectionTest.java:1651:79:1651:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1651:88:1651:95 | source(...) | user-provided value | -| LogInjectionTest.java:1652:64:1652:80 | (...)... | LogInjectionTest.java:1652:73:1652:80 | source(...) : Object | LogInjectionTest.java:1652:64:1652:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1652:73:1652:80 | source(...) | user-provided value | -| LogInjectionTest.java:1653:94:1653:110 | (...)... | LogInjectionTest.java:1653:103:1653:110 | source(...) : Object | LogInjectionTest.java:1653:94:1653:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1653:103:1653:110 | source(...) | user-provided value | +| LogInjectionTest.java:1634:26:1634:42 | (...)... | LogInjectionTest.java:1634:35:1634:42 | source(...) : Object | LogInjectionTest.java:1634:26:1634:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1634:35:1634:42 | source(...) | user-provided value | +| LogInjectionTest.java:1635:26:1635:42 | (...)... | LogInjectionTest.java:1635:35:1635:42 | source(...) : Object | LogInjectionTest.java:1635:26:1635:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1635:35:1635:42 | source(...) | user-provided value | +| LogInjectionTest.java:1636:41:1636:63 | new Object[] | LogInjectionTest.java:1636:55:1636:62 | source(...) : Object | LogInjectionTest.java:1636:41:1636:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1636:55:1636:62 | source(...) | user-provided value | +| LogInjectionTest.java:1637:41:1637:63 | new Object[] | LogInjectionTest.java:1637:55:1637:62 | source(...) : Object | LogInjectionTest.java:1637:41:1637:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1637:55:1637:62 | source(...) | user-provided value | +| LogInjectionTest.java:1638:56:1638:72 | (...)... | LogInjectionTest.java:1638:65:1638:72 | source(...) : Object | LogInjectionTest.java:1638:56:1638:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1638:65:1638:72 | source(...) | user-provided value | +| LogInjectionTest.java:1639:41:1639:57 | (...)... | LogInjectionTest.java:1639:50:1639:57 | source(...) : Object | LogInjectionTest.java:1639:41:1639:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1639:50:1639:57 | source(...) | user-provided value | +| LogInjectionTest.java:1640:26:1640:42 | (...)... | LogInjectionTest.java:1640:35:1640:42 | source(...) : Object | LogInjectionTest.java:1640:26:1640:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1640:35:1640:42 | source(...) | user-provided value | +| LogInjectionTest.java:1641:56:1641:72 | (...)... | LogInjectionTest.java:1641:65:1641:72 | source(...) : Object | LogInjectionTest.java:1641:56:1641:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1641:65:1641:72 | source(...) | user-provided value | +| LogInjectionTest.java:1642:41:1642:57 | (...)... | LogInjectionTest.java:1642:50:1642:57 | source(...) : Object | LogInjectionTest.java:1642:41:1642:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1642:50:1642:57 | source(...) | user-provided value | +| LogInjectionTest.java:1643:26:1643:42 | (...)... | LogInjectionTest.java:1643:35:1643:42 | source(...) : Object | LogInjectionTest.java:1643:26:1643:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1643:35:1643:42 | source(...) | user-provided value | +| LogInjectionTest.java:1644:71:1644:87 | (...)... | LogInjectionTest.java:1644:80:1644:87 | source(...) : Object | LogInjectionTest.java:1644:71:1644:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1644:80:1644:87 | source(...) | user-provided value | +| LogInjectionTest.java:1645:56:1645:72 | (...)... | LogInjectionTest.java:1645:65:1645:72 | source(...) : Object | LogInjectionTest.java:1645:56:1645:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1645:65:1645:72 | source(...) | user-provided value | +| LogInjectionTest.java:1646:41:1646:57 | (...)... | LogInjectionTest.java:1646:50:1646:57 | source(...) : Object | LogInjectionTest.java:1646:41:1646:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1646:50:1646:57 | source(...) | user-provided value | +| LogInjectionTest.java:1647:26:1647:42 | (...)... | LogInjectionTest.java:1647:35:1647:42 | source(...) : Object | LogInjectionTest.java:1647:26:1647:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1647:35:1647:42 | source(...) | user-provided value | +| LogInjectionTest.java:1648:71:1648:87 | (...)... | LogInjectionTest.java:1648:80:1648:87 | source(...) : Object | LogInjectionTest.java:1648:71:1648:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1648:80:1648:87 | source(...) | user-provided value | +| LogInjectionTest.java:1649:56:1649:72 | (...)... | LogInjectionTest.java:1649:65:1649:72 | source(...) : Object | LogInjectionTest.java:1649:56:1649:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1649:65:1649:72 | source(...) | user-provided value | +| LogInjectionTest.java:1650:41:1650:57 | (...)... | LogInjectionTest.java:1650:50:1650:57 | source(...) : Object | LogInjectionTest.java:1650:41:1650:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1650:50:1650:57 | source(...) | user-provided value | +| LogInjectionTest.java:1651:26:1651:42 | (...)... | LogInjectionTest.java:1651:35:1651:42 | source(...) : Object | LogInjectionTest.java:1651:26:1651:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1651:35:1651:42 | source(...) | user-provided value | +| LogInjectionTest.java:1652:79:1652:95 | (...)... | LogInjectionTest.java:1652:88:1652:95 | source(...) : Object | LogInjectionTest.java:1652:79:1652:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1652:88:1652:95 | source(...) | user-provided value | +| LogInjectionTest.java:1653:64:1653:80 | (...)... | LogInjectionTest.java:1653:73:1653:80 | source(...) : Object | LogInjectionTest.java:1653:64:1653:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1653:73:1653:80 | source(...) | user-provided value | | LogInjectionTest.java:1654:79:1654:95 | (...)... | LogInjectionTest.java:1654:88:1654:95 | source(...) : Object | LogInjectionTest.java:1654:79:1654:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1654:88:1654:95 | source(...) | user-provided value | | LogInjectionTest.java:1655:64:1655:80 | (...)... | LogInjectionTest.java:1655:73:1655:80 | source(...) : Object | LogInjectionTest.java:1655:64:1655:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1655:73:1655:80 | source(...) | user-provided value | -| LogInjectionTest.java:1656:109:1656:125 | (...)... | LogInjectionTest.java:1656:118:1656:125 | source(...) : Object | LogInjectionTest.java:1656:109:1656:125 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1656:118:1656:125 | source(...) | user-provided value | -| LogInjectionTest.java:1657:94:1657:110 | (...)... | LogInjectionTest.java:1657:103:1657:110 | source(...) : Object | LogInjectionTest.java:1657:94:1657:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1657:103:1657:110 | source(...) | user-provided value | -| LogInjectionTest.java:1658:79:1658:95 | (...)... | LogInjectionTest.java:1658:88:1658:95 | source(...) : Object | LogInjectionTest.java:1658:79:1658:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1658:88:1658:95 | source(...) | user-provided value | -| LogInjectionTest.java:1659:64:1659:80 | (...)... | LogInjectionTest.java:1659:73:1659:80 | source(...) : Object | LogInjectionTest.java:1659:64:1659:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1659:73:1659:80 | source(...) | user-provided value | -| LogInjectionTest.java:1660:109:1660:125 | (...)... | LogInjectionTest.java:1660:118:1660:125 | source(...) : Object | LogInjectionTest.java:1660:109:1660:125 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1660:118:1660:125 | source(...) | user-provided value | -| LogInjectionTest.java:1661:94:1661:110 | (...)... | LogInjectionTest.java:1661:103:1661:110 | source(...) : Object | LogInjectionTest.java:1661:94:1661:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1661:103:1661:110 | source(...) | user-provided value | -| LogInjectionTest.java:1662:79:1662:95 | (...)... | LogInjectionTest.java:1662:88:1662:95 | source(...) : Object | LogInjectionTest.java:1662:79:1662:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1662:88:1662:95 | source(...) | user-provided value | -| LogInjectionTest.java:1663:64:1663:80 | (...)... | LogInjectionTest.java:1663:73:1663:80 | source(...) : Object | LogInjectionTest.java:1663:64:1663:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1663:73:1663:80 | source(...) | user-provided value | -| LogInjectionTest.java:1664:42:1664:58 | (...)... | LogInjectionTest.java:1664:51:1664:58 | source(...) : Object | LogInjectionTest.java:1664:42:1664:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1664:51:1664:58 | source(...) | user-provided value | -| LogInjectionTest.java:1665:27:1665:43 | (...)... | LogInjectionTest.java:1665:36:1665:43 | source(...) : Object | LogInjectionTest.java:1665:27:1665:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1665:36:1665:43 | source(...) | user-provided value | -| LogInjectionTest.java:1666:42:1666:58 | (...)... | LogInjectionTest.java:1666:51:1666:58 | source(...) : Object | LogInjectionTest.java:1666:42:1666:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1666:51:1666:58 | source(...) | user-provided value | -| LogInjectionTest.java:1667:27:1667:43 | (...)... | LogInjectionTest.java:1667:36:1667:43 | source(...) : Object | LogInjectionTest.java:1667:27:1667:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1667:36:1667:43 | source(...) | user-provided value | -| LogInjectionTest.java:1668:27:1668:43 | (...)... | LogInjectionTest.java:1668:36:1668:43 | source(...) : Object | LogInjectionTest.java:1668:27:1668:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1668:36:1668:43 | source(...) | user-provided value | -| LogInjectionTest.java:1669:27:1669:43 | (...)... | LogInjectionTest.java:1669:36:1669:43 | source(...) : Object | LogInjectionTest.java:1669:27:1669:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1669:36:1669:43 | source(...) | user-provided value | -| LogInjectionTest.java:1670:42:1670:64 | new Object[] | LogInjectionTest.java:1670:56:1670:63 | source(...) : Object | LogInjectionTest.java:1670:42:1670:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1670:56:1670:63 | source(...) | user-provided value | -| LogInjectionTest.java:1671:42:1671:64 | new Object[] | LogInjectionTest.java:1671:56:1671:63 | source(...) : Object | LogInjectionTest.java:1671:42:1671:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1671:56:1671:63 | source(...) | user-provided value | -| LogInjectionTest.java:1672:57:1672:73 | (...)... | LogInjectionTest.java:1672:66:1672:73 | source(...) : Object | LogInjectionTest.java:1672:57:1672:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1672:66:1672:73 | source(...) | user-provided value | -| LogInjectionTest.java:1673:42:1673:58 | (...)... | LogInjectionTest.java:1673:51:1673:58 | source(...) : Object | LogInjectionTest.java:1673:42:1673:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1673:51:1673:58 | source(...) | user-provided value | -| LogInjectionTest.java:1674:27:1674:43 | (...)... | LogInjectionTest.java:1674:36:1674:43 | source(...) : Object | LogInjectionTest.java:1674:27:1674:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1674:36:1674:43 | source(...) | user-provided value | -| LogInjectionTest.java:1675:57:1675:73 | (...)... | LogInjectionTest.java:1675:66:1675:73 | source(...) : Object | LogInjectionTest.java:1675:57:1675:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1675:66:1675:73 | source(...) | user-provided value | +| LogInjectionTest.java:1656:64:1656:80 | (...)... | LogInjectionTest.java:1656:73:1656:80 | source(...) : Object | LogInjectionTest.java:1656:64:1656:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1656:73:1656:80 | source(...) | user-provided value | +| LogInjectionTest.java:1657:64:1657:80 | (...)... | LogInjectionTest.java:1657:73:1657:80 | source(...) : Object | LogInjectionTest.java:1657:64:1657:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1657:73:1657:80 | source(...) | user-provided value | +| LogInjectionTest.java:1658:79:1658:101 | new Object[] | LogInjectionTest.java:1658:93:1658:100 | source(...) : Object | LogInjectionTest.java:1658:79:1658:101 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1658:93:1658:100 | source(...) | user-provided value | +| LogInjectionTest.java:1659:79:1659:101 | new Object[] | LogInjectionTest.java:1659:93:1659:100 | source(...) : Object | LogInjectionTest.java:1659:79:1659:101 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1659:93:1659:100 | source(...) | user-provided value | +| LogInjectionTest.java:1660:94:1660:110 | (...)... | LogInjectionTest.java:1660:103:1660:110 | source(...) : Object | LogInjectionTest.java:1660:94:1660:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1660:103:1660:110 | source(...) | user-provided value | +| LogInjectionTest.java:1661:79:1661:95 | (...)... | LogInjectionTest.java:1661:88:1661:95 | source(...) : Object | LogInjectionTest.java:1661:79:1661:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1661:88:1661:95 | source(...) | user-provided value | +| LogInjectionTest.java:1662:64:1662:80 | (...)... | LogInjectionTest.java:1662:73:1662:80 | source(...) : Object | LogInjectionTest.java:1662:64:1662:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1662:73:1662:80 | source(...) | user-provided value | +| LogInjectionTest.java:1663:94:1663:110 | (...)... | LogInjectionTest.java:1663:103:1663:110 | source(...) : Object | LogInjectionTest.java:1663:94:1663:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1663:103:1663:110 | source(...) | user-provided value | +| LogInjectionTest.java:1664:79:1664:95 | (...)... | LogInjectionTest.java:1664:88:1664:95 | source(...) : Object | LogInjectionTest.java:1664:79:1664:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1664:88:1664:95 | source(...) | user-provided value | +| LogInjectionTest.java:1665:64:1665:80 | (...)... | LogInjectionTest.java:1665:73:1665:80 | source(...) : Object | LogInjectionTest.java:1665:64:1665:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1665:73:1665:80 | source(...) | user-provided value | +| LogInjectionTest.java:1666:109:1666:125 | (...)... | LogInjectionTest.java:1666:118:1666:125 | source(...) : Object | LogInjectionTest.java:1666:109:1666:125 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1666:118:1666:125 | source(...) | user-provided value | +| LogInjectionTest.java:1667:94:1667:110 | (...)... | LogInjectionTest.java:1667:103:1667:110 | source(...) : Object | LogInjectionTest.java:1667:94:1667:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1667:103:1667:110 | source(...) | user-provided value | +| LogInjectionTest.java:1668:79:1668:95 | (...)... | LogInjectionTest.java:1668:88:1668:95 | source(...) : Object | LogInjectionTest.java:1668:79:1668:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1668:88:1668:95 | source(...) | user-provided value | +| LogInjectionTest.java:1669:64:1669:80 | (...)... | LogInjectionTest.java:1669:73:1669:80 | source(...) : Object | LogInjectionTest.java:1669:64:1669:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1669:73:1669:80 | source(...) | user-provided value | +| LogInjectionTest.java:1670:109:1670:125 | (...)... | LogInjectionTest.java:1670:118:1670:125 | source(...) : Object | LogInjectionTest.java:1670:109:1670:125 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1670:118:1670:125 | source(...) | user-provided value | +| LogInjectionTest.java:1671:94:1671:110 | (...)... | LogInjectionTest.java:1671:103:1671:110 | source(...) : Object | LogInjectionTest.java:1671:94:1671:110 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1671:103:1671:110 | source(...) | user-provided value | +| LogInjectionTest.java:1672:79:1672:95 | (...)... | LogInjectionTest.java:1672:88:1672:95 | source(...) : Object | LogInjectionTest.java:1672:79:1672:95 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1672:88:1672:95 | source(...) | user-provided value | +| LogInjectionTest.java:1673:64:1673:80 | (...)... | LogInjectionTest.java:1673:73:1673:80 | source(...) : Object | LogInjectionTest.java:1673:64:1673:80 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1673:73:1673:80 | source(...) | user-provided value | +| LogInjectionTest.java:1674:42:1674:58 | (...)... | LogInjectionTest.java:1674:51:1674:58 | source(...) : Object | LogInjectionTest.java:1674:42:1674:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1674:51:1674:58 | source(...) | user-provided value | +| LogInjectionTest.java:1675:27:1675:43 | (...)... | LogInjectionTest.java:1675:36:1675:43 | source(...) : Object | LogInjectionTest.java:1675:27:1675:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1675:36:1675:43 | source(...) | user-provided value | | LogInjectionTest.java:1676:42:1676:58 | (...)... | LogInjectionTest.java:1676:51:1676:58 | source(...) : Object | LogInjectionTest.java:1676:42:1676:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1676:51:1676:58 | source(...) | user-provided value | | LogInjectionTest.java:1677:27:1677:43 | (...)... | LogInjectionTest.java:1677:36:1677:43 | source(...) : Object | LogInjectionTest.java:1677:27:1677:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1677:36:1677:43 | source(...) | user-provided value | -| LogInjectionTest.java:1678:72:1678:88 | (...)... | LogInjectionTest.java:1678:81:1678:88 | source(...) : Object | LogInjectionTest.java:1678:72:1678:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1678:81:1678:88 | source(...) | user-provided value | -| LogInjectionTest.java:1679:57:1679:73 | (...)... | LogInjectionTest.java:1679:66:1679:73 | source(...) : Object | LogInjectionTest.java:1679:57:1679:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1679:66:1679:73 | source(...) | user-provided value | -| LogInjectionTest.java:1680:42:1680:58 | (...)... | LogInjectionTest.java:1680:51:1680:58 | source(...) : Object | LogInjectionTest.java:1680:42:1680:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1680:51:1680:58 | source(...) | user-provided value | -| LogInjectionTest.java:1681:27:1681:43 | (...)... | LogInjectionTest.java:1681:36:1681:43 | source(...) : Object | LogInjectionTest.java:1681:27:1681:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1681:36:1681:43 | source(...) | user-provided value | -| LogInjectionTest.java:1682:72:1682:88 | (...)... | LogInjectionTest.java:1682:81:1682:88 | source(...) : Object | LogInjectionTest.java:1682:72:1682:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1682:81:1682:88 | source(...) | user-provided value | -| LogInjectionTest.java:1683:57:1683:73 | (...)... | LogInjectionTest.java:1683:66:1683:73 | source(...) : Object | LogInjectionTest.java:1683:57:1683:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1683:66:1683:73 | source(...) | user-provided value | -| LogInjectionTest.java:1684:42:1684:58 | (...)... | LogInjectionTest.java:1684:51:1684:58 | source(...) : Object | LogInjectionTest.java:1684:42:1684:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1684:51:1684:58 | source(...) | user-provided value | -| LogInjectionTest.java:1685:27:1685:43 | (...)... | LogInjectionTest.java:1685:36:1685:43 | source(...) : Object | LogInjectionTest.java:1685:27:1685:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1685:36:1685:43 | source(...) | user-provided value | -| LogInjectionTest.java:1686:41:1686:57 | (...)... | LogInjectionTest.java:1686:50:1686:57 | source(...) : Object | LogInjectionTest.java:1686:41:1686:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1686:50:1686:57 | source(...) | user-provided value | -| LogInjectionTest.java:1687:26:1687:42 | (...)... | LogInjectionTest.java:1687:35:1687:42 | source(...) : Object | LogInjectionTest.java:1687:26:1687:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1687:35:1687:42 | source(...) | user-provided value | -| LogInjectionTest.java:1688:41:1688:57 | (...)... | LogInjectionTest.java:1688:50:1688:57 | source(...) : Object | LogInjectionTest.java:1688:41:1688:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1688:50:1688:57 | source(...) | user-provided value | -| LogInjectionTest.java:1689:26:1689:42 | (...)... | LogInjectionTest.java:1689:35:1689:42 | source(...) : Object | LogInjectionTest.java:1689:26:1689:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1689:35:1689:42 | source(...) | user-provided value | -| LogInjectionTest.java:1690:26:1690:42 | (...)... | LogInjectionTest.java:1690:35:1690:42 | source(...) : Object | LogInjectionTest.java:1690:26:1690:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1690:35:1690:42 | source(...) | user-provided value | -| LogInjectionTest.java:1691:26:1691:42 | (...)... | LogInjectionTest.java:1691:35:1691:42 | source(...) : Object | LogInjectionTest.java:1691:26:1691:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1691:35:1691:42 | source(...) | user-provided value | -| LogInjectionTest.java:1692:41:1692:63 | new Object[] | LogInjectionTest.java:1692:55:1692:62 | source(...) : Object | LogInjectionTest.java:1692:41:1692:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1692:55:1692:62 | source(...) | user-provided value | -| LogInjectionTest.java:1693:41:1693:63 | new Object[] | LogInjectionTest.java:1693:55:1693:62 | source(...) : Object | LogInjectionTest.java:1693:41:1693:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1693:55:1693:62 | source(...) | user-provided value | -| LogInjectionTest.java:1694:56:1694:72 | (...)... | LogInjectionTest.java:1694:65:1694:72 | source(...) : Object | LogInjectionTest.java:1694:56:1694:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1694:65:1694:72 | source(...) | user-provided value | -| LogInjectionTest.java:1695:41:1695:57 | (...)... | LogInjectionTest.java:1695:50:1695:57 | source(...) : Object | LogInjectionTest.java:1695:41:1695:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1695:50:1695:57 | source(...) | user-provided value | -| LogInjectionTest.java:1696:26:1696:42 | (...)... | LogInjectionTest.java:1696:35:1696:42 | source(...) : Object | LogInjectionTest.java:1696:26:1696:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1696:35:1696:42 | source(...) | user-provided value | -| LogInjectionTest.java:1697:56:1697:72 | (...)... | LogInjectionTest.java:1697:65:1697:72 | source(...) : Object | LogInjectionTest.java:1697:56:1697:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1697:65:1697:72 | source(...) | user-provided value | +| LogInjectionTest.java:1678:27:1678:43 | (...)... | LogInjectionTest.java:1678:36:1678:43 | source(...) : Object | LogInjectionTest.java:1678:27:1678:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1678:36:1678:43 | source(...) | user-provided value | +| LogInjectionTest.java:1679:27:1679:43 | (...)... | LogInjectionTest.java:1679:36:1679:43 | source(...) : Object | LogInjectionTest.java:1679:27:1679:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1679:36:1679:43 | source(...) | user-provided value | +| LogInjectionTest.java:1680:42:1680:64 | new Object[] | LogInjectionTest.java:1680:56:1680:63 | source(...) : Object | LogInjectionTest.java:1680:42:1680:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1680:56:1680:63 | source(...) | user-provided value | +| LogInjectionTest.java:1681:42:1681:64 | new Object[] | LogInjectionTest.java:1681:56:1681:63 | source(...) : Object | LogInjectionTest.java:1681:42:1681:64 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1681:56:1681:63 | source(...) | user-provided value | +| LogInjectionTest.java:1682:57:1682:73 | (...)... | LogInjectionTest.java:1682:66:1682:73 | source(...) : Object | LogInjectionTest.java:1682:57:1682:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1682:66:1682:73 | source(...) | user-provided value | +| LogInjectionTest.java:1683:42:1683:58 | (...)... | LogInjectionTest.java:1683:51:1683:58 | source(...) : Object | LogInjectionTest.java:1683:42:1683:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1683:51:1683:58 | source(...) | user-provided value | +| LogInjectionTest.java:1684:27:1684:43 | (...)... | LogInjectionTest.java:1684:36:1684:43 | source(...) : Object | LogInjectionTest.java:1684:27:1684:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1684:36:1684:43 | source(...) | user-provided value | +| LogInjectionTest.java:1685:57:1685:73 | (...)... | LogInjectionTest.java:1685:66:1685:73 | source(...) : Object | LogInjectionTest.java:1685:57:1685:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1685:66:1685:73 | source(...) | user-provided value | +| LogInjectionTest.java:1686:42:1686:58 | (...)... | LogInjectionTest.java:1686:51:1686:58 | source(...) : Object | LogInjectionTest.java:1686:42:1686:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1686:51:1686:58 | source(...) | user-provided value | +| LogInjectionTest.java:1687:27:1687:43 | (...)... | LogInjectionTest.java:1687:36:1687:43 | source(...) : Object | LogInjectionTest.java:1687:27:1687:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1687:36:1687:43 | source(...) | user-provided value | +| LogInjectionTest.java:1688:72:1688:88 | (...)... | LogInjectionTest.java:1688:81:1688:88 | source(...) : Object | LogInjectionTest.java:1688:72:1688:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1688:81:1688:88 | source(...) | user-provided value | +| LogInjectionTest.java:1689:57:1689:73 | (...)... | LogInjectionTest.java:1689:66:1689:73 | source(...) : Object | LogInjectionTest.java:1689:57:1689:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1689:66:1689:73 | source(...) | user-provided value | +| LogInjectionTest.java:1690:42:1690:58 | (...)... | LogInjectionTest.java:1690:51:1690:58 | source(...) : Object | LogInjectionTest.java:1690:42:1690:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1690:51:1690:58 | source(...) | user-provided value | +| LogInjectionTest.java:1691:27:1691:43 | (...)... | LogInjectionTest.java:1691:36:1691:43 | source(...) : Object | LogInjectionTest.java:1691:27:1691:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1691:36:1691:43 | source(...) | user-provided value | +| LogInjectionTest.java:1692:72:1692:88 | (...)... | LogInjectionTest.java:1692:81:1692:88 | source(...) : Object | LogInjectionTest.java:1692:72:1692:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1692:81:1692:88 | source(...) | user-provided value | +| LogInjectionTest.java:1693:57:1693:73 | (...)... | LogInjectionTest.java:1693:66:1693:73 | source(...) : Object | LogInjectionTest.java:1693:57:1693:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1693:66:1693:73 | source(...) | user-provided value | +| LogInjectionTest.java:1694:42:1694:58 | (...)... | LogInjectionTest.java:1694:51:1694:58 | source(...) : Object | LogInjectionTest.java:1694:42:1694:58 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1694:51:1694:58 | source(...) | user-provided value | +| LogInjectionTest.java:1695:27:1695:43 | (...)... | LogInjectionTest.java:1695:36:1695:43 | source(...) : Object | LogInjectionTest.java:1695:27:1695:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1695:36:1695:43 | source(...) | user-provided value | +| LogInjectionTest.java:1696:41:1696:57 | (...)... | LogInjectionTest.java:1696:50:1696:57 | source(...) : Object | LogInjectionTest.java:1696:41:1696:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1696:50:1696:57 | source(...) | user-provided value | +| LogInjectionTest.java:1697:26:1697:42 | (...)... | LogInjectionTest.java:1697:35:1697:42 | source(...) : Object | LogInjectionTest.java:1697:26:1697:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1697:35:1697:42 | source(...) | user-provided value | | LogInjectionTest.java:1698:41:1698:57 | (...)... | LogInjectionTest.java:1698:50:1698:57 | source(...) : Object | LogInjectionTest.java:1698:41:1698:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1698:50:1698:57 | source(...) | user-provided value | | LogInjectionTest.java:1699:26:1699:42 | (...)... | LogInjectionTest.java:1699:35:1699:42 | source(...) : Object | LogInjectionTest.java:1699:26:1699:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1699:35:1699:42 | source(...) | user-provided value | -| LogInjectionTest.java:1700:71:1700:87 | (...)... | LogInjectionTest.java:1700:80:1700:87 | source(...) : Object | LogInjectionTest.java:1700:71:1700:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1700:80:1700:87 | source(...) | user-provided value | -| LogInjectionTest.java:1701:56:1701:72 | (...)... | LogInjectionTest.java:1701:65:1701:72 | source(...) : Object | LogInjectionTest.java:1701:56:1701:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1701:65:1701:72 | source(...) | user-provided value | -| LogInjectionTest.java:1702:41:1702:57 | (...)... | LogInjectionTest.java:1702:50:1702:57 | source(...) : Object | LogInjectionTest.java:1702:41:1702:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1702:50:1702:57 | source(...) | user-provided value | -| LogInjectionTest.java:1703:26:1703:42 | (...)... | LogInjectionTest.java:1703:35:1703:42 | source(...) : Object | LogInjectionTest.java:1703:26:1703:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1703:35:1703:42 | source(...) | user-provided value | -| LogInjectionTest.java:1704:71:1704:87 | (...)... | LogInjectionTest.java:1704:80:1704:87 | source(...) : Object | LogInjectionTest.java:1704:71:1704:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1704:80:1704:87 | source(...) | user-provided value | -| LogInjectionTest.java:1705:56:1705:72 | (...)... | LogInjectionTest.java:1705:65:1705:72 | source(...) : Object | LogInjectionTest.java:1705:56:1705:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1705:65:1705:72 | source(...) | user-provided value | -| LogInjectionTest.java:1706:41:1706:57 | (...)... | LogInjectionTest.java:1706:50:1706:57 | source(...) : Object | LogInjectionTest.java:1706:41:1706:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1706:50:1706:57 | source(...) | user-provided value | -| LogInjectionTest.java:1707:26:1707:42 | (...)... | LogInjectionTest.java:1707:35:1707:42 | source(...) : Object | LogInjectionTest.java:1707:26:1707:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1707:35:1707:42 | source(...) | user-provided value | -| LogInjectionTest.java:1712:25:1712:41 | (...)... | LogInjectionTest.java:1712:34:1712:41 | source(...) : Object | LogInjectionTest.java:1712:25:1712:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1712:34:1712:41 | source(...) | user-provided value | -| LogInjectionTest.java:1713:25:1713:41 | (...)... | LogInjectionTest.java:1713:34:1713:41 | source(...) : Object | LogInjectionTest.java:1713:25:1713:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1713:34:1713:41 | source(...) | user-provided value | -| LogInjectionTest.java:1714:40:1714:47 | source(...) | LogInjectionTest.java:1714:40:1714:47 | source(...) | LogInjectionTest.java:1714:40:1714:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1714:40:1714:47 | source(...) | user-provided value | -| LogInjectionTest.java:1715:25:1715:41 | (...)... | LogInjectionTest.java:1715:34:1715:41 | source(...) : Object | LogInjectionTest.java:1715:25:1715:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1715:34:1715:41 | source(...) | user-provided value | -| LogInjectionTest.java:1716:40:1716:62 | new Object[] | LogInjectionTest.java:1716:54:1716:61 | source(...) : Object | LogInjectionTest.java:1716:40:1716:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1716:54:1716:61 | source(...) | user-provided value | -| LogInjectionTest.java:1717:25:1717:41 | (...)... | LogInjectionTest.java:1717:34:1717:41 | source(...) : Object | LogInjectionTest.java:1717:25:1717:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1717:34:1717:41 | source(...) | user-provided value | -| LogInjectionTest.java:1718:40:1718:47 | source(...) | LogInjectionTest.java:1718:40:1718:47 | source(...) | LogInjectionTest.java:1718:40:1718:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1718:40:1718:47 | source(...) | user-provided value | -| LogInjectionTest.java:1719:55:1719:62 | source(...) | LogInjectionTest.java:1719:55:1719:62 | source(...) | LogInjectionTest.java:1719:55:1719:62 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1719:55:1719:62 | source(...) | user-provided value | -| LogInjectionTest.java:1720:25:1720:62 | (...)... | LogInjectionTest.java:1720:55:1720:62 | source(...) : Object | LogInjectionTest.java:1720:25:1720:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1720:55:1720:62 | source(...) | user-provided value | -| LogInjectionTest.java:1725:26:1725:42 | (...)... | LogInjectionTest.java:1725:35:1725:42 | source(...) : Object | LogInjectionTest.java:1725:26:1725:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1725:35:1725:42 | source(...) | user-provided value | -| LogInjectionTest.java:1726:26:1726:42 | (...)... | LogInjectionTest.java:1726:35:1726:42 | source(...) : Object | LogInjectionTest.java:1726:26:1726:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1726:35:1726:42 | source(...) | user-provided value | -| LogInjectionTest.java:1727:41:1727:48 | source(...) | LogInjectionTest.java:1727:41:1727:48 | source(...) | LogInjectionTest.java:1727:41:1727:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1727:41:1727:48 | source(...) | user-provided value | -| LogInjectionTest.java:1728:26:1728:42 | (...)... | LogInjectionTest.java:1728:35:1728:42 | source(...) : Object | LogInjectionTest.java:1728:26:1728:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1728:35:1728:42 | source(...) | user-provided value | -| LogInjectionTest.java:1729:41:1729:63 | new Object[] | LogInjectionTest.java:1729:55:1729:62 | source(...) : Object | LogInjectionTest.java:1729:41:1729:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1729:55:1729:62 | source(...) | user-provided value | -| LogInjectionTest.java:1730:26:1730:42 | (...)... | LogInjectionTest.java:1730:35:1730:42 | source(...) : Object | LogInjectionTest.java:1730:26:1730:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1730:35:1730:42 | source(...) | user-provided value | -| LogInjectionTest.java:1731:41:1731:48 | source(...) | LogInjectionTest.java:1731:41:1731:48 | source(...) | LogInjectionTest.java:1731:41:1731:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1731:41:1731:48 | source(...) | user-provided value | -| LogInjectionTest.java:1732:56:1732:63 | source(...) | LogInjectionTest.java:1732:56:1732:63 | source(...) | LogInjectionTest.java:1732:56:1732:63 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1732:56:1732:63 | source(...) | user-provided value | -| LogInjectionTest.java:1733:26:1733:42 | (...)... | LogInjectionTest.java:1733:35:1733:42 | source(...) : Object | LogInjectionTest.java:1733:26:1733:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1733:35:1733:42 | source(...) | user-provided value | -| LogInjectionTest.java:1734:51:1734:67 | (...)... | LogInjectionTest.java:1734:60:1734:67 | source(...) : Object | LogInjectionTest.java:1734:51:1734:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1734:60:1734:67 | source(...) | user-provided value | -| LogInjectionTest.java:1735:51:1735:67 | (...)... | LogInjectionTest.java:1735:60:1735:67 | source(...) : Object | LogInjectionTest.java:1735:51:1735:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1735:60:1735:67 | source(...) | user-provided value | -| LogInjectionTest.java:1736:66:1736:73 | source(...) | LogInjectionTest.java:1736:66:1736:73 | source(...) | LogInjectionTest.java:1736:66:1736:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1736:66:1736:73 | source(...) | user-provided value | -| LogInjectionTest.java:1737:51:1737:67 | (...)... | LogInjectionTest.java:1737:60:1737:67 | source(...) : Object | LogInjectionTest.java:1737:51:1737:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1737:60:1737:67 | source(...) | user-provided value | -| LogInjectionTest.java:1738:66:1738:88 | new Object[] | LogInjectionTest.java:1738:80:1738:87 | source(...) : Object | LogInjectionTest.java:1738:66:1738:88 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1738:80:1738:87 | source(...) | user-provided value | -| LogInjectionTest.java:1739:51:1739:67 | (...)... | LogInjectionTest.java:1739:60:1739:67 | source(...) : Object | LogInjectionTest.java:1739:51:1739:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1739:60:1739:67 | source(...) | user-provided value | -| LogInjectionTest.java:1740:66:1740:73 | source(...) | LogInjectionTest.java:1740:66:1740:73 | source(...) | LogInjectionTest.java:1740:66:1740:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1740:66:1740:73 | source(...) | user-provided value | -| LogInjectionTest.java:1741:81:1741:88 | source(...) | LogInjectionTest.java:1741:81:1741:88 | source(...) | LogInjectionTest.java:1741:81:1741:88 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1741:81:1741:88 | source(...) | user-provided value | -| LogInjectionTest.java:1742:51:1742:67 | (...)... | LogInjectionTest.java:1742:60:1742:67 | source(...) : Object | LogInjectionTest.java:1742:51:1742:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1742:60:1742:67 | source(...) | user-provided value | -| LogInjectionTest.java:1743:13:1743:104 | new ..[] { .. } | LogInjectionTest.java:1743:66:1743:73 | source(...) : Object | LogInjectionTest.java:1743:13:1743:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1743:66:1743:73 | source(...) | user-provided value | -| LogInjectionTest.java:1744:13:1744:104 | new ..[] { .. } | LogInjectionTest.java:1744:81:1744:88 | source(...) : Object | LogInjectionTest.java:1744:13:1744:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1744:81:1744:88 | source(...) | user-provided value | -| LogInjectionTest.java:1745:13:1745:104 | new ..[] { .. } | LogInjectionTest.java:1745:96:1745:103 | source(...) : Object | LogInjectionTest.java:1745:13:1745:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1745:96:1745:103 | source(...) | user-provided value | -| LogInjectionTest.java:1746:26:1746:42 | (...)... | LogInjectionTest.java:1746:35:1746:42 | source(...) : Object | LogInjectionTest.java:1746:26:1746:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1746:35:1746:42 | source(...) | user-provided value | -| LogInjectionTest.java:1747:26:1747:42 | (...)... | LogInjectionTest.java:1747:35:1747:42 | source(...) : Object | LogInjectionTest.java:1747:26:1747:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1747:35:1747:42 | source(...) | user-provided value | -| LogInjectionTest.java:1748:41:1748:48 | source(...) | LogInjectionTest.java:1748:41:1748:48 | source(...) | LogInjectionTest.java:1748:41:1748:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1748:41:1748:48 | source(...) | user-provided value | -| LogInjectionTest.java:1749:26:1749:42 | (...)... | LogInjectionTest.java:1749:35:1749:42 | source(...) : Object | LogInjectionTest.java:1749:26:1749:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1749:35:1749:42 | source(...) | user-provided value | -| LogInjectionTest.java:1750:41:1750:63 | new Object[] | LogInjectionTest.java:1750:55:1750:62 | source(...) : Object | LogInjectionTest.java:1750:41:1750:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1750:55:1750:62 | source(...) | user-provided value | -| LogInjectionTest.java:1751:26:1751:42 | (...)... | LogInjectionTest.java:1751:35:1751:42 | source(...) : Object | LogInjectionTest.java:1751:26:1751:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1751:35:1751:42 | source(...) | user-provided value | -| LogInjectionTest.java:1752:41:1752:48 | source(...) | LogInjectionTest.java:1752:41:1752:48 | source(...) | LogInjectionTest.java:1752:41:1752:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1752:41:1752:48 | source(...) | user-provided value | -| LogInjectionTest.java:1753:56:1753:63 | source(...) | LogInjectionTest.java:1753:56:1753:63 | source(...) | LogInjectionTest.java:1753:56:1753:63 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1753:56:1753:63 | source(...) | user-provided value | -| LogInjectionTest.java:1754:26:1754:42 | (...)... | LogInjectionTest.java:1754:35:1754:42 | source(...) : Object | LogInjectionTest.java:1754:26:1754:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1754:35:1754:42 | source(...) | user-provided value | -| LogInjectionTest.java:1755:51:1755:67 | (...)... | LogInjectionTest.java:1755:60:1755:67 | source(...) : Object | LogInjectionTest.java:1755:51:1755:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1755:60:1755:67 | source(...) | user-provided value | -| LogInjectionTest.java:1756:51:1756:67 | (...)... | LogInjectionTest.java:1756:60:1756:67 | source(...) : Object | LogInjectionTest.java:1756:51:1756:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1756:60:1756:67 | source(...) | user-provided value | -| LogInjectionTest.java:1757:66:1757:73 | source(...) | LogInjectionTest.java:1757:66:1757:73 | source(...) | LogInjectionTest.java:1757:66:1757:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1757:66:1757:73 | source(...) | user-provided value | -| LogInjectionTest.java:1758:51:1758:67 | (...)... | LogInjectionTest.java:1758:60:1758:67 | source(...) : Object | LogInjectionTest.java:1758:51:1758:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1758:60:1758:67 | source(...) | user-provided value | -| LogInjectionTest.java:1759:66:1759:88 | new Object[] | LogInjectionTest.java:1759:80:1759:87 | source(...) : Object | LogInjectionTest.java:1759:66:1759:88 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1759:80:1759:87 | source(...) | user-provided value | -| LogInjectionTest.java:1760:51:1760:67 | (...)... | LogInjectionTest.java:1760:60:1760:67 | source(...) : Object | LogInjectionTest.java:1760:51:1760:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1760:60:1760:67 | source(...) | user-provided value | -| LogInjectionTest.java:1761:66:1761:73 | source(...) | LogInjectionTest.java:1761:66:1761:73 | source(...) | LogInjectionTest.java:1761:66:1761:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1761:66:1761:73 | source(...) | user-provided value | -| LogInjectionTest.java:1762:81:1762:88 | source(...) | LogInjectionTest.java:1762:81:1762:88 | source(...) | LogInjectionTest.java:1762:81:1762:88 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1762:81:1762:88 | source(...) | user-provided value | -| LogInjectionTest.java:1763:51:1763:67 | (...)... | LogInjectionTest.java:1763:60:1763:67 | source(...) : Object | LogInjectionTest.java:1763:51:1763:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1763:60:1763:67 | source(...) | user-provided value | -| LogInjectionTest.java:1764:13:1764:104 | new ..[] { .. } | LogInjectionTest.java:1764:66:1764:73 | source(...) : Object | LogInjectionTest.java:1764:13:1764:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1764:66:1764:73 | source(...) | user-provided value | -| LogInjectionTest.java:1765:13:1765:104 | new ..[] { .. } | LogInjectionTest.java:1765:81:1765:88 | source(...) : Object | LogInjectionTest.java:1765:13:1765:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1765:81:1765:88 | source(...) | user-provided value | -| LogInjectionTest.java:1766:13:1766:104 | new ..[] { .. } | LogInjectionTest.java:1766:96:1766:103 | source(...) : Object | LogInjectionTest.java:1766:13:1766:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1766:96:1766:103 | source(...) | user-provided value | -| LogInjectionTest.java:1767:25:1767:41 | (...)... | LogInjectionTest.java:1767:34:1767:41 | source(...) : Object | LogInjectionTest.java:1767:25:1767:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1767:34:1767:41 | source(...) | user-provided value | -| LogInjectionTest.java:1768:25:1768:41 | (...)... | LogInjectionTest.java:1768:34:1768:41 | source(...) : Object | LogInjectionTest.java:1768:25:1768:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1768:34:1768:41 | source(...) | user-provided value | -| LogInjectionTest.java:1769:40:1769:47 | source(...) | LogInjectionTest.java:1769:40:1769:47 | source(...) | LogInjectionTest.java:1769:40:1769:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1769:40:1769:47 | source(...) | user-provided value | -| LogInjectionTest.java:1770:25:1770:41 | (...)... | LogInjectionTest.java:1770:34:1770:41 | source(...) : Object | LogInjectionTest.java:1770:25:1770:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1770:34:1770:41 | source(...) | user-provided value | -| LogInjectionTest.java:1771:40:1771:62 | new Object[] | LogInjectionTest.java:1771:54:1771:61 | source(...) : Object | LogInjectionTest.java:1771:40:1771:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1771:54:1771:61 | source(...) | user-provided value | -| LogInjectionTest.java:1772:25:1772:41 | (...)... | LogInjectionTest.java:1772:34:1772:41 | source(...) : Object | LogInjectionTest.java:1772:25:1772:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1772:34:1772:41 | source(...) | user-provided value | -| LogInjectionTest.java:1773:40:1773:47 | source(...) | LogInjectionTest.java:1773:40:1773:47 | source(...) | LogInjectionTest.java:1773:40:1773:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1773:40:1773:47 | source(...) | user-provided value | -| LogInjectionTest.java:1774:55:1774:62 | source(...) | LogInjectionTest.java:1774:55:1774:62 | source(...) | LogInjectionTest.java:1774:55:1774:62 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1774:55:1774:62 | source(...) | user-provided value | -| LogInjectionTest.java:1775:25:1775:41 | (...)... | LogInjectionTest.java:1775:34:1775:41 | source(...) : Object | LogInjectionTest.java:1775:25:1775:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1775:34:1775:41 | source(...) | user-provided value | -| LogInjectionTest.java:1776:50:1776:66 | (...)... | LogInjectionTest.java:1776:59:1776:66 | source(...) : Object | LogInjectionTest.java:1776:50:1776:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1776:59:1776:66 | source(...) | user-provided value | -| LogInjectionTest.java:1777:50:1777:66 | (...)... | LogInjectionTest.java:1777:59:1777:66 | source(...) : Object | LogInjectionTest.java:1777:50:1777:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1777:59:1777:66 | source(...) | user-provided value | -| LogInjectionTest.java:1778:65:1778:72 | source(...) | LogInjectionTest.java:1778:65:1778:72 | source(...) | LogInjectionTest.java:1778:65:1778:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1778:65:1778:72 | source(...) | user-provided value | -| LogInjectionTest.java:1779:50:1779:66 | (...)... | LogInjectionTest.java:1779:59:1779:66 | source(...) : Object | LogInjectionTest.java:1779:50:1779:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1779:59:1779:66 | source(...) | user-provided value | -| LogInjectionTest.java:1780:65:1780:87 | new Object[] | LogInjectionTest.java:1780:79:1780:86 | source(...) : Object | LogInjectionTest.java:1780:65:1780:87 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1780:79:1780:86 | source(...) | user-provided value | -| LogInjectionTest.java:1781:50:1781:66 | (...)... | LogInjectionTest.java:1781:59:1781:66 | source(...) : Object | LogInjectionTest.java:1781:50:1781:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1781:59:1781:66 | source(...) | user-provided value | -| LogInjectionTest.java:1782:65:1782:72 | source(...) | LogInjectionTest.java:1782:65:1782:72 | source(...) | LogInjectionTest.java:1782:65:1782:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1782:65:1782:72 | source(...) | user-provided value | -| LogInjectionTest.java:1783:80:1783:87 | source(...) | LogInjectionTest.java:1783:80:1783:87 | source(...) | LogInjectionTest.java:1783:80:1783:87 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1783:80:1783:87 | source(...) | user-provided value | -| LogInjectionTest.java:1784:50:1784:66 | (...)... | LogInjectionTest.java:1784:59:1784:66 | source(...) : Object | LogInjectionTest.java:1784:50:1784:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1784:59:1784:66 | source(...) | user-provided value | -| LogInjectionTest.java:1785:13:1785:103 | new ..[] { .. } | LogInjectionTest.java:1785:65:1785:72 | source(...) : Object | LogInjectionTest.java:1785:13:1785:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1785:65:1785:72 | source(...) | user-provided value | -| LogInjectionTest.java:1786:13:1786:103 | new ..[] { .. } | LogInjectionTest.java:1786:80:1786:87 | source(...) : Object | LogInjectionTest.java:1786:13:1786:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1786:80:1786:87 | source(...) | user-provided value | -| LogInjectionTest.java:1787:13:1787:103 | new ..[] { .. } | LogInjectionTest.java:1787:95:1787:102 | source(...) : Object | LogInjectionTest.java:1787:13:1787:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1787:95:1787:102 | source(...) | user-provided value | -| LogInjectionTest.java:1788:26:1788:42 | (...)... | LogInjectionTest.java:1788:35:1788:42 | source(...) : Object | LogInjectionTest.java:1788:26:1788:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1788:35:1788:42 | source(...) | user-provided value | -| LogInjectionTest.java:1789:26:1789:42 | (...)... | LogInjectionTest.java:1789:35:1789:42 | source(...) : Object | LogInjectionTest.java:1789:26:1789:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1789:35:1789:42 | source(...) | user-provided value | -| LogInjectionTest.java:1790:41:1790:48 | source(...) | LogInjectionTest.java:1790:41:1790:48 | source(...) | LogInjectionTest.java:1790:41:1790:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1790:41:1790:48 | source(...) | user-provided value | -| LogInjectionTest.java:1791:26:1791:42 | (...)... | LogInjectionTest.java:1791:35:1791:42 | source(...) : Object | LogInjectionTest.java:1791:26:1791:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1791:35:1791:42 | source(...) | user-provided value | -| LogInjectionTest.java:1792:41:1792:63 | new Object[] | LogInjectionTest.java:1792:55:1792:62 | source(...) : Object | LogInjectionTest.java:1792:41:1792:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1792:55:1792:62 | source(...) | user-provided value | -| LogInjectionTest.java:1793:26:1793:42 | (...)... | LogInjectionTest.java:1793:35:1793:42 | source(...) : Object | LogInjectionTest.java:1793:26:1793:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1793:35:1793:42 | source(...) | user-provided value | -| LogInjectionTest.java:1794:41:1794:48 | source(...) | LogInjectionTest.java:1794:41:1794:48 | source(...) | LogInjectionTest.java:1794:41:1794:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1794:41:1794:48 | source(...) | user-provided value | -| LogInjectionTest.java:1795:56:1795:63 | source(...) | LogInjectionTest.java:1795:56:1795:63 | source(...) | LogInjectionTest.java:1795:56:1795:63 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1795:56:1795:63 | source(...) | user-provided value | -| LogInjectionTest.java:1796:26:1796:42 | (...)... | LogInjectionTest.java:1796:35:1796:42 | source(...) : Object | LogInjectionTest.java:1796:26:1796:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1796:35:1796:42 | source(...) | user-provided value | -| LogInjectionTest.java:1797:51:1797:67 | (...)... | LogInjectionTest.java:1797:60:1797:67 | source(...) : Object | LogInjectionTest.java:1797:51:1797:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1797:60:1797:67 | source(...) | user-provided value | -| LogInjectionTest.java:1798:51:1798:67 | (...)... | LogInjectionTest.java:1798:60:1798:67 | source(...) : Object | LogInjectionTest.java:1798:51:1798:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1798:60:1798:67 | source(...) | user-provided value | -| LogInjectionTest.java:1799:66:1799:73 | source(...) | LogInjectionTest.java:1799:66:1799:73 | source(...) | LogInjectionTest.java:1799:66:1799:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1799:66:1799:73 | source(...) | user-provided value | -| LogInjectionTest.java:1800:51:1800:67 | (...)... | LogInjectionTest.java:1800:60:1800:67 | source(...) : Object | LogInjectionTest.java:1800:51:1800:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1800:60:1800:67 | source(...) | user-provided value | -| LogInjectionTest.java:1801:66:1801:88 | new Object[] | LogInjectionTest.java:1801:80:1801:87 | source(...) : Object | LogInjectionTest.java:1801:66:1801:88 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1801:80:1801:87 | source(...) | user-provided value | -| LogInjectionTest.java:1802:51:1802:67 | (...)... | LogInjectionTest.java:1802:60:1802:67 | source(...) : Object | LogInjectionTest.java:1802:51:1802:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1802:60:1802:67 | source(...) | user-provided value | -| LogInjectionTest.java:1803:66:1803:73 | source(...) | LogInjectionTest.java:1803:66:1803:73 | source(...) | LogInjectionTest.java:1803:66:1803:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1803:66:1803:73 | source(...) | user-provided value | -| LogInjectionTest.java:1804:81:1804:88 | source(...) | LogInjectionTest.java:1804:81:1804:88 | source(...) | LogInjectionTest.java:1804:81:1804:88 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1804:81:1804:88 | source(...) | user-provided value | -| LogInjectionTest.java:1805:51:1805:67 | (...)... | LogInjectionTest.java:1805:60:1805:67 | source(...) : Object | LogInjectionTest.java:1805:51:1805:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1805:60:1805:67 | source(...) | user-provided value | -| LogInjectionTest.java:1806:13:1806:104 | new ..[] { .. } | LogInjectionTest.java:1806:66:1806:73 | source(...) : Object | LogInjectionTest.java:1806:13:1806:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1806:66:1806:73 | source(...) | user-provided value | -| LogInjectionTest.java:1807:13:1807:104 | new ..[] { .. } | LogInjectionTest.java:1807:81:1807:88 | source(...) : Object | LogInjectionTest.java:1807:13:1807:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1807:81:1807:88 | source(...) | user-provided value | -| LogInjectionTest.java:1808:13:1808:104 | new ..[] { .. } | LogInjectionTest.java:1808:96:1808:103 | source(...) : Object | LogInjectionTest.java:1808:13:1808:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1808:96:1808:103 | source(...) | user-provided value | -| LogInjectionTest.java:1809:25:1809:41 | (...)... | LogInjectionTest.java:1809:34:1809:41 | source(...) : Object | LogInjectionTest.java:1809:25:1809:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1809:34:1809:41 | source(...) | user-provided value | -| LogInjectionTest.java:1810:25:1810:41 | (...)... | LogInjectionTest.java:1810:34:1810:41 | source(...) : Object | LogInjectionTest.java:1810:25:1810:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1810:34:1810:41 | source(...) | user-provided value | -| LogInjectionTest.java:1811:40:1811:47 | source(...) | LogInjectionTest.java:1811:40:1811:47 | source(...) | LogInjectionTest.java:1811:40:1811:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1811:40:1811:47 | source(...) | user-provided value | -| LogInjectionTest.java:1812:25:1812:41 | (...)... | LogInjectionTest.java:1812:34:1812:41 | source(...) : Object | LogInjectionTest.java:1812:25:1812:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1812:34:1812:41 | source(...) | user-provided value | -| LogInjectionTest.java:1813:40:1813:62 | new Object[] | LogInjectionTest.java:1813:54:1813:61 | source(...) : Object | LogInjectionTest.java:1813:40:1813:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1813:54:1813:61 | source(...) | user-provided value | -| LogInjectionTest.java:1814:25:1814:41 | (...)... | LogInjectionTest.java:1814:34:1814:41 | source(...) : Object | LogInjectionTest.java:1814:25:1814:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1814:34:1814:41 | source(...) | user-provided value | -| LogInjectionTest.java:1815:40:1815:47 | source(...) | LogInjectionTest.java:1815:40:1815:47 | source(...) | LogInjectionTest.java:1815:40:1815:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1815:40:1815:47 | source(...) | user-provided value | -| LogInjectionTest.java:1816:55:1816:62 | source(...) | LogInjectionTest.java:1816:55:1816:62 | source(...) | LogInjectionTest.java:1816:55:1816:62 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1816:55:1816:62 | source(...) | user-provided value | -| LogInjectionTest.java:1817:25:1817:41 | (...)... | LogInjectionTest.java:1817:34:1817:41 | source(...) : Object | LogInjectionTest.java:1817:25:1817:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1817:34:1817:41 | source(...) | user-provided value | -| LogInjectionTest.java:1818:50:1818:66 | (...)... | LogInjectionTest.java:1818:59:1818:66 | source(...) : Object | LogInjectionTest.java:1818:50:1818:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1818:59:1818:66 | source(...) | user-provided value | -| LogInjectionTest.java:1819:50:1819:66 | (...)... | LogInjectionTest.java:1819:59:1819:66 | source(...) : Object | LogInjectionTest.java:1819:50:1819:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1819:59:1819:66 | source(...) | user-provided value | -| LogInjectionTest.java:1820:65:1820:72 | source(...) | LogInjectionTest.java:1820:65:1820:72 | source(...) | LogInjectionTest.java:1820:65:1820:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1820:65:1820:72 | source(...) | user-provided value | -| LogInjectionTest.java:1821:50:1821:66 | (...)... | LogInjectionTest.java:1821:59:1821:66 | source(...) : Object | LogInjectionTest.java:1821:50:1821:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1821:59:1821:66 | source(...) | user-provided value | -| LogInjectionTest.java:1822:65:1822:87 | new Object[] | LogInjectionTest.java:1822:79:1822:86 | source(...) : Object | LogInjectionTest.java:1822:65:1822:87 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1822:79:1822:86 | source(...) | user-provided value | -| LogInjectionTest.java:1823:50:1823:66 | (...)... | LogInjectionTest.java:1823:59:1823:66 | source(...) : Object | LogInjectionTest.java:1823:50:1823:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1823:59:1823:66 | source(...) | user-provided value | -| LogInjectionTest.java:1824:65:1824:72 | source(...) | LogInjectionTest.java:1824:65:1824:72 | source(...) | LogInjectionTest.java:1824:65:1824:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1824:65:1824:72 | source(...) | user-provided value | -| LogInjectionTest.java:1825:80:1825:87 | source(...) | LogInjectionTest.java:1825:80:1825:87 | source(...) | LogInjectionTest.java:1825:80:1825:87 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1825:80:1825:87 | source(...) | user-provided value | -| LogInjectionTest.java:1826:50:1826:66 | (...)... | LogInjectionTest.java:1826:59:1826:66 | source(...) : Object | LogInjectionTest.java:1826:50:1826:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1826:59:1826:66 | source(...) | user-provided value | -| LogInjectionTest.java:1827:13:1827:103 | new ..[] { .. } | LogInjectionTest.java:1827:65:1827:72 | source(...) : Object | LogInjectionTest.java:1827:13:1827:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1827:65:1827:72 | source(...) | user-provided value | -| LogInjectionTest.java:1828:13:1828:103 | new ..[] { .. } | LogInjectionTest.java:1828:80:1828:87 | source(...) : Object | LogInjectionTest.java:1828:13:1828:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1828:80:1828:87 | source(...) | user-provided value | -| LogInjectionTest.java:1829:13:1829:103 | new ..[] { .. } | LogInjectionTest.java:1829:95:1829:102 | source(...) : Object | LogInjectionTest.java:1829:13:1829:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1829:95:1829:102 | source(...) | user-provided value | -| LogInjectionTest.java:1834:33:1834:40 | source(...) | LogInjectionTest.java:1834:33:1834:40 | source(...) | LogInjectionTest.java:1834:33:1834:40 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1834:33:1834:40 | source(...) | user-provided value | -| LogInjectionTest.java:1835:26:1835:33 | source(...) | LogInjectionTest.java:1835:26:1835:33 | source(...) | LogInjectionTest.java:1835:26:1835:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1835:26:1835:33 | source(...) | user-provided value | -| LogInjectionTest.java:1836:26:1836:33 | source(...) | LogInjectionTest.java:1836:26:1836:33 | source(...) | LogInjectionTest.java:1836:26:1836:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1836:26:1836:33 | source(...) | user-provided value | -| LogInjectionTest.java:1837:26:1837:33 | source(...) | LogInjectionTest.java:1837:26:1837:33 | source(...) | LogInjectionTest.java:1837:26:1837:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1837:26:1837:33 | source(...) | user-provided value | -| LogInjectionTest.java:1838:26:1838:33 | source(...) | LogInjectionTest.java:1838:26:1838:33 | source(...) | LogInjectionTest.java:1838:26:1838:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1838:26:1838:33 | source(...) | user-provided value | -| LogInjectionTest.java:1839:25:1839:32 | source(...) | LogInjectionTest.java:1839:25:1839:32 | source(...) | LogInjectionTest.java:1839:25:1839:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1839:25:1839:32 | source(...) | user-provided value | -| LogInjectionTest.java:1840:25:1840:32 | source(...) | LogInjectionTest.java:1840:25:1840:32 | source(...) | LogInjectionTest.java:1840:25:1840:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1840:25:1840:32 | source(...) | user-provided value | -| LogInjectionTest.java:1841:26:1841:33 | source(...) | LogInjectionTest.java:1841:26:1841:33 | source(...) | LogInjectionTest.java:1841:26:1841:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1841:26:1841:33 | source(...) | user-provided value | -| LogInjectionTest.java:1842:26:1842:33 | source(...) | LogInjectionTest.java:1842:26:1842:33 | source(...) | LogInjectionTest.java:1842:26:1842:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1842:26:1842:33 | source(...) | user-provided value | -| LogInjectionTest.java:1843:25:1843:32 | source(...) | LogInjectionTest.java:1843:25:1843:32 | source(...) | LogInjectionTest.java:1843:25:1843:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1843:25:1843:32 | source(...) | user-provided value | -| LogInjectionTest.java:1844:25:1844:32 | source(...) | LogInjectionTest.java:1844:25:1844:32 | source(...) | LogInjectionTest.java:1844:25:1844:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1844:25:1844:32 | source(...) | user-provided value | -| LogInjectionTest.java:1845:27:1845:34 | source(...) | LogInjectionTest.java:1845:27:1845:34 | source(...) | LogInjectionTest.java:1845:27:1845:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1845:27:1845:34 | source(...) | user-provided value | -| LogInjectionTest.java:1846:27:1846:34 | source(...) | LogInjectionTest.java:1846:27:1846:34 | source(...) | LogInjectionTest.java:1846:27:1846:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1846:27:1846:34 | source(...) | user-provided value | -| LogInjectionTest.java:1850:28:1850:44 | (...)... | LogInjectionTest.java:1850:37:1850:44 | source(...) : Object | LogInjectionTest.java:1850:28:1850:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1850:37:1850:44 | source(...) | user-provided value | -| LogInjectionTest.java:1851:43:1851:65 | new Object[] | LogInjectionTest.java:1851:57:1851:64 | source(...) : Object | LogInjectionTest.java:1851:43:1851:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1851:57:1851:64 | source(...) | user-provided value | -| LogInjectionTest.java:1853:21:1853:37 | (...)... | LogInjectionTest.java:1853:30:1853:37 | source(...) : Object | LogInjectionTest.java:1853:21:1853:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1853:30:1853:37 | source(...) | user-provided value | -| LogInjectionTest.java:1854:36:1854:52 | (...)... | LogInjectionTest.java:1854:45:1854:52 | source(...) : Object | LogInjectionTest.java:1854:36:1854:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1854:45:1854:52 | source(...) | user-provided value | -| LogInjectionTest.java:1855:21:1855:37 | (...)... | LogInjectionTest.java:1855:30:1855:37 | source(...) : Object | LogInjectionTest.java:1855:21:1855:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1855:30:1855:37 | source(...) | user-provided value | -| LogInjectionTest.java:1856:51:1856:67 | (...)... | LogInjectionTest.java:1856:60:1856:67 | source(...) : Object | LogInjectionTest.java:1856:51:1856:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1856:60:1856:67 | source(...) | user-provided value | -| LogInjectionTest.java:1857:36:1857:52 | (...)... | LogInjectionTest.java:1857:45:1857:52 | source(...) : Object | LogInjectionTest.java:1857:36:1857:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1857:45:1857:52 | source(...) | user-provided value | -| LogInjectionTest.java:1858:21:1858:37 | (...)... | LogInjectionTest.java:1858:30:1858:37 | source(...) : Object | LogInjectionTest.java:1858:21:1858:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1858:30:1858:37 | source(...) | user-provided value | -| LogInjectionTest.java:1859:66:1859:82 | (...)... | LogInjectionTest.java:1859:75:1859:82 | source(...) : Object | LogInjectionTest.java:1859:66:1859:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1859:75:1859:82 | source(...) | user-provided value | -| LogInjectionTest.java:1860:51:1860:67 | (...)... | LogInjectionTest.java:1860:60:1860:67 | source(...) : Object | LogInjectionTest.java:1860:51:1860:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1860:60:1860:67 | source(...) | user-provided value | -| LogInjectionTest.java:1861:36:1861:52 | (...)... | LogInjectionTest.java:1861:45:1861:52 | source(...) : Object | LogInjectionTest.java:1861:36:1861:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1861:45:1861:52 | source(...) | user-provided value | -| LogInjectionTest.java:1862:21:1862:37 | (...)... | LogInjectionTest.java:1862:30:1862:37 | source(...) : Object | LogInjectionTest.java:1862:21:1862:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1862:30:1862:37 | source(...) | user-provided value | -| LogInjectionTest.java:1863:81:1863:97 | (...)... | LogInjectionTest.java:1863:90:1863:97 | source(...) : Object | LogInjectionTest.java:1863:81:1863:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1863:90:1863:97 | source(...) | user-provided value | -| LogInjectionTest.java:1864:66:1864:82 | (...)... | LogInjectionTest.java:1864:75:1864:82 | source(...) : Object | LogInjectionTest.java:1864:66:1864:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1864:75:1864:82 | source(...) | user-provided value | -| LogInjectionTest.java:1865:51:1865:67 | (...)... | LogInjectionTest.java:1865:60:1865:67 | source(...) : Object | LogInjectionTest.java:1865:51:1865:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1865:60:1865:67 | source(...) | user-provided value | -| LogInjectionTest.java:1866:36:1866:52 | (...)... | LogInjectionTest.java:1866:45:1866:52 | source(...) : Object | LogInjectionTest.java:1866:36:1866:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1866:45:1866:52 | source(...) | user-provided value | -| LogInjectionTest.java:1867:21:1867:37 | (...)... | LogInjectionTest.java:1867:30:1867:37 | source(...) : Object | LogInjectionTest.java:1867:21:1867:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1867:30:1867:37 | source(...) | user-provided value | -| LogInjectionTest.java:1868:96:1868:112 | (...)... | LogInjectionTest.java:1868:105:1868:112 | source(...) : Object | LogInjectionTest.java:1868:96:1868:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1868:105:1868:112 | source(...) | user-provided value | -| LogInjectionTest.java:1869:81:1869:97 | (...)... | LogInjectionTest.java:1869:90:1869:97 | source(...) : Object | LogInjectionTest.java:1869:81:1869:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1869:90:1869:97 | source(...) | user-provided value | -| LogInjectionTest.java:1870:66:1870:82 | (...)... | LogInjectionTest.java:1870:75:1870:82 | source(...) : Object | LogInjectionTest.java:1870:66:1870:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1870:75:1870:82 | source(...) | user-provided value | -| LogInjectionTest.java:1871:51:1871:67 | (...)... | LogInjectionTest.java:1871:60:1871:67 | source(...) : Object | LogInjectionTest.java:1871:51:1871:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1871:60:1871:67 | source(...) | user-provided value | -| LogInjectionTest.java:1872:36:1872:52 | (...)... | LogInjectionTest.java:1872:45:1872:52 | source(...) : Object | LogInjectionTest.java:1872:36:1872:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1872:45:1872:52 | source(...) | user-provided value | -| LogInjectionTest.java:1873:21:1873:37 | (...)... | LogInjectionTest.java:1873:30:1873:37 | source(...) : Object | LogInjectionTest.java:1873:21:1873:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1873:30:1873:37 | source(...) | user-provided value | -| LogInjectionTest.java:1874:111:1874:127 | (...)... | LogInjectionTest.java:1874:120:1874:127 | source(...) : Object | LogInjectionTest.java:1874:111:1874:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1874:120:1874:127 | source(...) | user-provided value | -| LogInjectionTest.java:1875:96:1875:112 | (...)... | LogInjectionTest.java:1875:105:1875:112 | source(...) : Object | LogInjectionTest.java:1875:96:1875:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1875:105:1875:112 | source(...) | user-provided value | -| LogInjectionTest.java:1876:81:1876:97 | (...)... | LogInjectionTest.java:1876:90:1876:97 | source(...) : Object | LogInjectionTest.java:1876:81:1876:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1876:90:1876:97 | source(...) | user-provided value | -| LogInjectionTest.java:1877:66:1877:82 | (...)... | LogInjectionTest.java:1877:75:1877:82 | source(...) : Object | LogInjectionTest.java:1877:66:1877:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1877:75:1877:82 | source(...) | user-provided value | -| LogInjectionTest.java:1878:51:1878:67 | (...)... | LogInjectionTest.java:1878:60:1878:67 | source(...) : Object | LogInjectionTest.java:1878:51:1878:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1878:60:1878:67 | source(...) | user-provided value | -| LogInjectionTest.java:1879:36:1879:52 | (...)... | LogInjectionTest.java:1879:45:1879:52 | source(...) : Object | LogInjectionTest.java:1879:36:1879:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1879:45:1879:52 | source(...) | user-provided value | -| LogInjectionTest.java:1880:21:1880:37 | (...)... | LogInjectionTest.java:1880:30:1880:37 | source(...) : Object | LogInjectionTest.java:1880:21:1880:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1880:30:1880:37 | source(...) | user-provided value | -| LogInjectionTest.java:1881:126:1881:142 | (...)... | LogInjectionTest.java:1881:135:1881:142 | source(...) : Object | LogInjectionTest.java:1881:126:1881:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1881:135:1881:142 | source(...) | user-provided value | -| LogInjectionTest.java:1882:111:1882:127 | (...)... | LogInjectionTest.java:1882:120:1882:127 | source(...) : Object | LogInjectionTest.java:1882:111:1882:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1882:120:1882:127 | source(...) | user-provided value | -| LogInjectionTest.java:1883:96:1883:112 | (...)... | LogInjectionTest.java:1883:105:1883:112 | source(...) : Object | LogInjectionTest.java:1883:96:1883:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1883:105:1883:112 | source(...) | user-provided value | -| LogInjectionTest.java:1884:81:1884:97 | (...)... | LogInjectionTest.java:1884:90:1884:97 | source(...) : Object | LogInjectionTest.java:1884:81:1884:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1884:90:1884:97 | source(...) | user-provided value | -| LogInjectionTest.java:1885:66:1885:82 | (...)... | LogInjectionTest.java:1885:75:1885:82 | source(...) : Object | LogInjectionTest.java:1885:66:1885:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1885:75:1885:82 | source(...) | user-provided value | -| LogInjectionTest.java:1886:51:1886:67 | (...)... | LogInjectionTest.java:1886:60:1886:67 | source(...) : Object | LogInjectionTest.java:1886:51:1886:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1886:60:1886:67 | source(...) | user-provided value | -| LogInjectionTest.java:1887:36:1887:52 | (...)... | LogInjectionTest.java:1887:45:1887:52 | source(...) : Object | LogInjectionTest.java:1887:36:1887:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1887:45:1887:52 | source(...) | user-provided value | -| LogInjectionTest.java:1888:21:1888:37 | (...)... | LogInjectionTest.java:1888:30:1888:37 | source(...) : Object | LogInjectionTest.java:1888:21:1888:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1888:30:1888:37 | source(...) | user-provided value | -| LogInjectionTest.java:1889:141:1889:157 | (...)... | LogInjectionTest.java:1889:150:1889:157 | source(...) : Object | LogInjectionTest.java:1889:141:1889:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1889:150:1889:157 | source(...) | user-provided value | -| LogInjectionTest.java:1890:126:1890:142 | (...)... | LogInjectionTest.java:1890:135:1890:142 | source(...) : Object | LogInjectionTest.java:1890:126:1890:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1890:135:1890:142 | source(...) | user-provided value | -| LogInjectionTest.java:1891:111:1891:127 | (...)... | LogInjectionTest.java:1891:120:1891:127 | source(...) : Object | LogInjectionTest.java:1891:111:1891:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1891:120:1891:127 | source(...) | user-provided value | -| LogInjectionTest.java:1892:96:1892:112 | (...)... | LogInjectionTest.java:1892:105:1892:112 | source(...) : Object | LogInjectionTest.java:1892:96:1892:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1892:105:1892:112 | source(...) | user-provided value | -| LogInjectionTest.java:1893:81:1893:97 | (...)... | LogInjectionTest.java:1893:90:1893:97 | source(...) : Object | LogInjectionTest.java:1893:81:1893:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1893:90:1893:97 | source(...) | user-provided value | -| LogInjectionTest.java:1894:66:1894:82 | (...)... | LogInjectionTest.java:1894:75:1894:82 | source(...) : Object | LogInjectionTest.java:1894:66:1894:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1894:75:1894:82 | source(...) | user-provided value | -| LogInjectionTest.java:1895:51:1895:67 | (...)... | LogInjectionTest.java:1895:60:1895:67 | source(...) : Object | LogInjectionTest.java:1895:51:1895:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1895:60:1895:67 | source(...) | user-provided value | -| LogInjectionTest.java:1896:36:1896:52 | (...)... | LogInjectionTest.java:1896:45:1896:52 | source(...) : Object | LogInjectionTest.java:1896:36:1896:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1896:45:1896:52 | source(...) | user-provided value | -| LogInjectionTest.java:1897:21:1897:37 | (...)... | LogInjectionTest.java:1897:30:1897:37 | source(...) : Object | LogInjectionTest.java:1897:21:1897:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1897:30:1897:37 | source(...) | user-provided value | -| LogInjectionTest.java:1898:156:1898:172 | (...)... | LogInjectionTest.java:1898:165:1898:172 | source(...) : Object | LogInjectionTest.java:1898:156:1898:172 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1898:165:1898:172 | source(...) | user-provided value | +| LogInjectionTest.java:1700:26:1700:42 | (...)... | LogInjectionTest.java:1700:35:1700:42 | source(...) : Object | LogInjectionTest.java:1700:26:1700:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1700:35:1700:42 | source(...) | user-provided value | +| LogInjectionTest.java:1701:26:1701:42 | (...)... | LogInjectionTest.java:1701:35:1701:42 | source(...) : Object | LogInjectionTest.java:1701:26:1701:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1701:35:1701:42 | source(...) | user-provided value | +| LogInjectionTest.java:1702:41:1702:63 | new Object[] | LogInjectionTest.java:1702:55:1702:62 | source(...) : Object | LogInjectionTest.java:1702:41:1702:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1702:55:1702:62 | source(...) | user-provided value | +| LogInjectionTest.java:1703:41:1703:63 | new Object[] | LogInjectionTest.java:1703:55:1703:62 | source(...) : Object | LogInjectionTest.java:1703:41:1703:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1703:55:1703:62 | source(...) | user-provided value | +| LogInjectionTest.java:1704:56:1704:72 | (...)... | LogInjectionTest.java:1704:65:1704:72 | source(...) : Object | LogInjectionTest.java:1704:56:1704:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1704:65:1704:72 | source(...) | user-provided value | +| LogInjectionTest.java:1705:41:1705:57 | (...)... | LogInjectionTest.java:1705:50:1705:57 | source(...) : Object | LogInjectionTest.java:1705:41:1705:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1705:50:1705:57 | source(...) | user-provided value | +| LogInjectionTest.java:1706:26:1706:42 | (...)... | LogInjectionTest.java:1706:35:1706:42 | source(...) : Object | LogInjectionTest.java:1706:26:1706:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1706:35:1706:42 | source(...) | user-provided value | +| LogInjectionTest.java:1707:56:1707:72 | (...)... | LogInjectionTest.java:1707:65:1707:72 | source(...) : Object | LogInjectionTest.java:1707:56:1707:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1707:65:1707:72 | source(...) | user-provided value | +| LogInjectionTest.java:1708:41:1708:57 | (...)... | LogInjectionTest.java:1708:50:1708:57 | source(...) : Object | LogInjectionTest.java:1708:41:1708:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1708:50:1708:57 | source(...) | user-provided value | +| LogInjectionTest.java:1709:26:1709:42 | (...)... | LogInjectionTest.java:1709:35:1709:42 | source(...) : Object | LogInjectionTest.java:1709:26:1709:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1709:35:1709:42 | source(...) | user-provided value | +| LogInjectionTest.java:1710:71:1710:87 | (...)... | LogInjectionTest.java:1710:80:1710:87 | source(...) : Object | LogInjectionTest.java:1710:71:1710:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1710:80:1710:87 | source(...) | user-provided value | +| LogInjectionTest.java:1711:56:1711:72 | (...)... | LogInjectionTest.java:1711:65:1711:72 | source(...) : Object | LogInjectionTest.java:1711:56:1711:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1711:65:1711:72 | source(...) | user-provided value | +| LogInjectionTest.java:1712:41:1712:57 | (...)... | LogInjectionTest.java:1712:50:1712:57 | source(...) : Object | LogInjectionTest.java:1712:41:1712:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1712:50:1712:57 | source(...) | user-provided value | +| LogInjectionTest.java:1713:26:1713:42 | (...)... | LogInjectionTest.java:1713:35:1713:42 | source(...) : Object | LogInjectionTest.java:1713:26:1713:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1713:35:1713:42 | source(...) | user-provided value | +| LogInjectionTest.java:1714:71:1714:87 | (...)... | LogInjectionTest.java:1714:80:1714:87 | source(...) : Object | LogInjectionTest.java:1714:71:1714:87 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1714:80:1714:87 | source(...) | user-provided value | +| LogInjectionTest.java:1715:56:1715:72 | (...)... | LogInjectionTest.java:1715:65:1715:72 | source(...) : Object | LogInjectionTest.java:1715:56:1715:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1715:65:1715:72 | source(...) | user-provided value | +| LogInjectionTest.java:1716:41:1716:57 | (...)... | LogInjectionTest.java:1716:50:1716:57 | source(...) : Object | LogInjectionTest.java:1716:41:1716:57 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1716:50:1716:57 | source(...) | user-provided value | +| LogInjectionTest.java:1717:26:1717:42 | (...)... | LogInjectionTest.java:1717:35:1717:42 | source(...) : Object | LogInjectionTest.java:1717:26:1717:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1717:35:1717:42 | source(...) | user-provided value | +| LogInjectionTest.java:1722:25:1722:41 | (...)... | LogInjectionTest.java:1722:34:1722:41 | source(...) : Object | LogInjectionTest.java:1722:25:1722:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1722:34:1722:41 | source(...) | user-provided value | +| LogInjectionTest.java:1723:25:1723:41 | (...)... | LogInjectionTest.java:1723:34:1723:41 | source(...) : Object | LogInjectionTest.java:1723:25:1723:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1723:34:1723:41 | source(...) | user-provided value | +| LogInjectionTest.java:1724:40:1724:47 | source(...) | LogInjectionTest.java:1724:40:1724:47 | source(...) | LogInjectionTest.java:1724:40:1724:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1724:40:1724:47 | source(...) | user-provided value | +| LogInjectionTest.java:1725:25:1725:41 | (...)... | LogInjectionTest.java:1725:34:1725:41 | source(...) : Object | LogInjectionTest.java:1725:25:1725:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1725:34:1725:41 | source(...) | user-provided value | +| LogInjectionTest.java:1726:40:1726:62 | new Object[] | LogInjectionTest.java:1726:54:1726:61 | source(...) : Object | LogInjectionTest.java:1726:40:1726:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1726:54:1726:61 | source(...) | user-provided value | +| LogInjectionTest.java:1727:25:1727:41 | (...)... | LogInjectionTest.java:1727:34:1727:41 | source(...) : Object | LogInjectionTest.java:1727:25:1727:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1727:34:1727:41 | source(...) | user-provided value | +| LogInjectionTest.java:1728:40:1728:47 | source(...) | LogInjectionTest.java:1728:40:1728:47 | source(...) | LogInjectionTest.java:1728:40:1728:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1728:40:1728:47 | source(...) | user-provided value | +| LogInjectionTest.java:1729:55:1729:62 | source(...) | LogInjectionTest.java:1729:55:1729:62 | source(...) | LogInjectionTest.java:1729:55:1729:62 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1729:55:1729:62 | source(...) | user-provided value | +| LogInjectionTest.java:1730:25:1730:62 | (...)... | LogInjectionTest.java:1730:55:1730:62 | source(...) : Object | LogInjectionTest.java:1730:25:1730:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1730:55:1730:62 | source(...) | user-provided value | +| LogInjectionTest.java:1735:26:1735:42 | (...)... | LogInjectionTest.java:1735:35:1735:42 | source(...) : Object | LogInjectionTest.java:1735:26:1735:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1735:35:1735:42 | source(...) | user-provided value | +| LogInjectionTest.java:1736:26:1736:42 | (...)... | LogInjectionTest.java:1736:35:1736:42 | source(...) : Object | LogInjectionTest.java:1736:26:1736:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1736:35:1736:42 | source(...) | user-provided value | +| LogInjectionTest.java:1737:41:1737:48 | source(...) | LogInjectionTest.java:1737:41:1737:48 | source(...) | LogInjectionTest.java:1737:41:1737:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1737:41:1737:48 | source(...) | user-provided value | +| LogInjectionTest.java:1738:26:1738:42 | (...)... | LogInjectionTest.java:1738:35:1738:42 | source(...) : Object | LogInjectionTest.java:1738:26:1738:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1738:35:1738:42 | source(...) | user-provided value | +| LogInjectionTest.java:1739:41:1739:63 | new Object[] | LogInjectionTest.java:1739:55:1739:62 | source(...) : Object | LogInjectionTest.java:1739:41:1739:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1739:55:1739:62 | source(...) | user-provided value | +| LogInjectionTest.java:1740:26:1740:42 | (...)... | LogInjectionTest.java:1740:35:1740:42 | source(...) : Object | LogInjectionTest.java:1740:26:1740:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1740:35:1740:42 | source(...) | user-provided value | +| LogInjectionTest.java:1741:41:1741:48 | source(...) | LogInjectionTest.java:1741:41:1741:48 | source(...) | LogInjectionTest.java:1741:41:1741:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1741:41:1741:48 | source(...) | user-provided value | +| LogInjectionTest.java:1742:56:1742:63 | source(...) | LogInjectionTest.java:1742:56:1742:63 | source(...) | LogInjectionTest.java:1742:56:1742:63 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1742:56:1742:63 | source(...) | user-provided value | +| LogInjectionTest.java:1743:26:1743:42 | (...)... | LogInjectionTest.java:1743:35:1743:42 | source(...) : Object | LogInjectionTest.java:1743:26:1743:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1743:35:1743:42 | source(...) | user-provided value | +| LogInjectionTest.java:1744:51:1744:67 | (...)... | LogInjectionTest.java:1744:60:1744:67 | source(...) : Object | LogInjectionTest.java:1744:51:1744:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1744:60:1744:67 | source(...) | user-provided value | +| LogInjectionTest.java:1745:51:1745:67 | (...)... | LogInjectionTest.java:1745:60:1745:67 | source(...) : Object | LogInjectionTest.java:1745:51:1745:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1745:60:1745:67 | source(...) | user-provided value | +| LogInjectionTest.java:1746:66:1746:73 | source(...) | LogInjectionTest.java:1746:66:1746:73 | source(...) | LogInjectionTest.java:1746:66:1746:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1746:66:1746:73 | source(...) | user-provided value | +| LogInjectionTest.java:1747:51:1747:67 | (...)... | LogInjectionTest.java:1747:60:1747:67 | source(...) : Object | LogInjectionTest.java:1747:51:1747:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1747:60:1747:67 | source(...) | user-provided value | +| LogInjectionTest.java:1748:66:1748:88 | new Object[] | LogInjectionTest.java:1748:80:1748:87 | source(...) : Object | LogInjectionTest.java:1748:66:1748:88 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1748:80:1748:87 | source(...) | user-provided value | +| LogInjectionTest.java:1749:51:1749:67 | (...)... | LogInjectionTest.java:1749:60:1749:67 | source(...) : Object | LogInjectionTest.java:1749:51:1749:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1749:60:1749:67 | source(...) | user-provided value | +| LogInjectionTest.java:1750:66:1750:73 | source(...) | LogInjectionTest.java:1750:66:1750:73 | source(...) | LogInjectionTest.java:1750:66:1750:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1750:66:1750:73 | source(...) | user-provided value | +| LogInjectionTest.java:1751:81:1751:88 | source(...) | LogInjectionTest.java:1751:81:1751:88 | source(...) | LogInjectionTest.java:1751:81:1751:88 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1751:81:1751:88 | source(...) | user-provided value | +| LogInjectionTest.java:1752:51:1752:67 | (...)... | LogInjectionTest.java:1752:60:1752:67 | source(...) : Object | LogInjectionTest.java:1752:51:1752:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1752:60:1752:67 | source(...) | user-provided value | +| LogInjectionTest.java:1753:13:1753:104 | new ..[] { .. } | LogInjectionTest.java:1753:66:1753:73 | source(...) : Object | LogInjectionTest.java:1753:13:1753:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1753:66:1753:73 | source(...) | user-provided value | +| LogInjectionTest.java:1754:13:1754:104 | new ..[] { .. } | LogInjectionTest.java:1754:81:1754:88 | source(...) : Object | LogInjectionTest.java:1754:13:1754:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1754:81:1754:88 | source(...) | user-provided value | +| LogInjectionTest.java:1755:13:1755:104 | new ..[] { .. } | LogInjectionTest.java:1755:96:1755:103 | source(...) : Object | LogInjectionTest.java:1755:13:1755:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1755:96:1755:103 | source(...) | user-provided value | +| LogInjectionTest.java:1756:26:1756:42 | (...)... | LogInjectionTest.java:1756:35:1756:42 | source(...) : Object | LogInjectionTest.java:1756:26:1756:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1756:35:1756:42 | source(...) | user-provided value | +| LogInjectionTest.java:1757:26:1757:42 | (...)... | LogInjectionTest.java:1757:35:1757:42 | source(...) : Object | LogInjectionTest.java:1757:26:1757:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1757:35:1757:42 | source(...) | user-provided value | +| LogInjectionTest.java:1758:41:1758:48 | source(...) | LogInjectionTest.java:1758:41:1758:48 | source(...) | LogInjectionTest.java:1758:41:1758:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1758:41:1758:48 | source(...) | user-provided value | +| LogInjectionTest.java:1759:26:1759:42 | (...)... | LogInjectionTest.java:1759:35:1759:42 | source(...) : Object | LogInjectionTest.java:1759:26:1759:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1759:35:1759:42 | source(...) | user-provided value | +| LogInjectionTest.java:1760:41:1760:63 | new Object[] | LogInjectionTest.java:1760:55:1760:62 | source(...) : Object | LogInjectionTest.java:1760:41:1760:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1760:55:1760:62 | source(...) | user-provided value | +| LogInjectionTest.java:1761:26:1761:42 | (...)... | LogInjectionTest.java:1761:35:1761:42 | source(...) : Object | LogInjectionTest.java:1761:26:1761:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1761:35:1761:42 | source(...) | user-provided value | +| LogInjectionTest.java:1762:41:1762:48 | source(...) | LogInjectionTest.java:1762:41:1762:48 | source(...) | LogInjectionTest.java:1762:41:1762:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1762:41:1762:48 | source(...) | user-provided value | +| LogInjectionTest.java:1763:56:1763:63 | source(...) | LogInjectionTest.java:1763:56:1763:63 | source(...) | LogInjectionTest.java:1763:56:1763:63 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1763:56:1763:63 | source(...) | user-provided value | +| LogInjectionTest.java:1764:26:1764:42 | (...)... | LogInjectionTest.java:1764:35:1764:42 | source(...) : Object | LogInjectionTest.java:1764:26:1764:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1764:35:1764:42 | source(...) | user-provided value | +| LogInjectionTest.java:1765:51:1765:67 | (...)... | LogInjectionTest.java:1765:60:1765:67 | source(...) : Object | LogInjectionTest.java:1765:51:1765:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1765:60:1765:67 | source(...) | user-provided value | +| LogInjectionTest.java:1766:51:1766:67 | (...)... | LogInjectionTest.java:1766:60:1766:67 | source(...) : Object | LogInjectionTest.java:1766:51:1766:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1766:60:1766:67 | source(...) | user-provided value | +| LogInjectionTest.java:1767:66:1767:73 | source(...) | LogInjectionTest.java:1767:66:1767:73 | source(...) | LogInjectionTest.java:1767:66:1767:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1767:66:1767:73 | source(...) | user-provided value | +| LogInjectionTest.java:1768:51:1768:67 | (...)... | LogInjectionTest.java:1768:60:1768:67 | source(...) : Object | LogInjectionTest.java:1768:51:1768:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1768:60:1768:67 | source(...) | user-provided value | +| LogInjectionTest.java:1769:66:1769:88 | new Object[] | LogInjectionTest.java:1769:80:1769:87 | source(...) : Object | LogInjectionTest.java:1769:66:1769:88 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1769:80:1769:87 | source(...) | user-provided value | +| LogInjectionTest.java:1770:51:1770:67 | (...)... | LogInjectionTest.java:1770:60:1770:67 | source(...) : Object | LogInjectionTest.java:1770:51:1770:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1770:60:1770:67 | source(...) | user-provided value | +| LogInjectionTest.java:1771:66:1771:73 | source(...) | LogInjectionTest.java:1771:66:1771:73 | source(...) | LogInjectionTest.java:1771:66:1771:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1771:66:1771:73 | source(...) | user-provided value | +| LogInjectionTest.java:1772:81:1772:88 | source(...) | LogInjectionTest.java:1772:81:1772:88 | source(...) | LogInjectionTest.java:1772:81:1772:88 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1772:81:1772:88 | source(...) | user-provided value | +| LogInjectionTest.java:1773:51:1773:67 | (...)... | LogInjectionTest.java:1773:60:1773:67 | source(...) : Object | LogInjectionTest.java:1773:51:1773:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1773:60:1773:67 | source(...) | user-provided value | +| LogInjectionTest.java:1774:13:1774:104 | new ..[] { .. } | LogInjectionTest.java:1774:66:1774:73 | source(...) : Object | LogInjectionTest.java:1774:13:1774:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1774:66:1774:73 | source(...) | user-provided value | +| LogInjectionTest.java:1775:13:1775:104 | new ..[] { .. } | LogInjectionTest.java:1775:81:1775:88 | source(...) : Object | LogInjectionTest.java:1775:13:1775:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1775:81:1775:88 | source(...) | user-provided value | +| LogInjectionTest.java:1776:13:1776:104 | new ..[] { .. } | LogInjectionTest.java:1776:96:1776:103 | source(...) : Object | LogInjectionTest.java:1776:13:1776:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1776:96:1776:103 | source(...) | user-provided value | +| LogInjectionTest.java:1777:25:1777:41 | (...)... | LogInjectionTest.java:1777:34:1777:41 | source(...) : Object | LogInjectionTest.java:1777:25:1777:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1777:34:1777:41 | source(...) | user-provided value | +| LogInjectionTest.java:1778:25:1778:41 | (...)... | LogInjectionTest.java:1778:34:1778:41 | source(...) : Object | LogInjectionTest.java:1778:25:1778:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1778:34:1778:41 | source(...) | user-provided value | +| LogInjectionTest.java:1779:40:1779:47 | source(...) | LogInjectionTest.java:1779:40:1779:47 | source(...) | LogInjectionTest.java:1779:40:1779:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1779:40:1779:47 | source(...) | user-provided value | +| LogInjectionTest.java:1780:25:1780:41 | (...)... | LogInjectionTest.java:1780:34:1780:41 | source(...) : Object | LogInjectionTest.java:1780:25:1780:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1780:34:1780:41 | source(...) | user-provided value | +| LogInjectionTest.java:1781:40:1781:62 | new Object[] | LogInjectionTest.java:1781:54:1781:61 | source(...) : Object | LogInjectionTest.java:1781:40:1781:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1781:54:1781:61 | source(...) | user-provided value | +| LogInjectionTest.java:1782:25:1782:41 | (...)... | LogInjectionTest.java:1782:34:1782:41 | source(...) : Object | LogInjectionTest.java:1782:25:1782:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1782:34:1782:41 | source(...) | user-provided value | +| LogInjectionTest.java:1783:40:1783:47 | source(...) | LogInjectionTest.java:1783:40:1783:47 | source(...) | LogInjectionTest.java:1783:40:1783:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1783:40:1783:47 | source(...) | user-provided value | +| LogInjectionTest.java:1784:55:1784:62 | source(...) | LogInjectionTest.java:1784:55:1784:62 | source(...) | LogInjectionTest.java:1784:55:1784:62 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1784:55:1784:62 | source(...) | user-provided value | +| LogInjectionTest.java:1785:25:1785:41 | (...)... | LogInjectionTest.java:1785:34:1785:41 | source(...) : Object | LogInjectionTest.java:1785:25:1785:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1785:34:1785:41 | source(...) | user-provided value | +| LogInjectionTest.java:1786:50:1786:66 | (...)... | LogInjectionTest.java:1786:59:1786:66 | source(...) : Object | LogInjectionTest.java:1786:50:1786:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1786:59:1786:66 | source(...) | user-provided value | +| LogInjectionTest.java:1787:50:1787:66 | (...)... | LogInjectionTest.java:1787:59:1787:66 | source(...) : Object | LogInjectionTest.java:1787:50:1787:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1787:59:1787:66 | source(...) | user-provided value | +| LogInjectionTest.java:1788:65:1788:72 | source(...) | LogInjectionTest.java:1788:65:1788:72 | source(...) | LogInjectionTest.java:1788:65:1788:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1788:65:1788:72 | source(...) | user-provided value | +| LogInjectionTest.java:1789:50:1789:66 | (...)... | LogInjectionTest.java:1789:59:1789:66 | source(...) : Object | LogInjectionTest.java:1789:50:1789:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1789:59:1789:66 | source(...) | user-provided value | +| LogInjectionTest.java:1790:65:1790:87 | new Object[] | LogInjectionTest.java:1790:79:1790:86 | source(...) : Object | LogInjectionTest.java:1790:65:1790:87 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1790:79:1790:86 | source(...) | user-provided value | +| LogInjectionTest.java:1791:50:1791:66 | (...)... | LogInjectionTest.java:1791:59:1791:66 | source(...) : Object | LogInjectionTest.java:1791:50:1791:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1791:59:1791:66 | source(...) | user-provided value | +| LogInjectionTest.java:1792:65:1792:72 | source(...) | LogInjectionTest.java:1792:65:1792:72 | source(...) | LogInjectionTest.java:1792:65:1792:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1792:65:1792:72 | source(...) | user-provided value | +| LogInjectionTest.java:1793:80:1793:87 | source(...) | LogInjectionTest.java:1793:80:1793:87 | source(...) | LogInjectionTest.java:1793:80:1793:87 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1793:80:1793:87 | source(...) | user-provided value | +| LogInjectionTest.java:1794:50:1794:66 | (...)... | LogInjectionTest.java:1794:59:1794:66 | source(...) : Object | LogInjectionTest.java:1794:50:1794:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1794:59:1794:66 | source(...) | user-provided value | +| LogInjectionTest.java:1795:13:1795:103 | new ..[] { .. } | LogInjectionTest.java:1795:65:1795:72 | source(...) : Object | LogInjectionTest.java:1795:13:1795:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1795:65:1795:72 | source(...) | user-provided value | +| LogInjectionTest.java:1796:13:1796:103 | new ..[] { .. } | LogInjectionTest.java:1796:80:1796:87 | source(...) : Object | LogInjectionTest.java:1796:13:1796:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1796:80:1796:87 | source(...) | user-provided value | +| LogInjectionTest.java:1797:13:1797:103 | new ..[] { .. } | LogInjectionTest.java:1797:95:1797:102 | source(...) : Object | LogInjectionTest.java:1797:13:1797:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1797:95:1797:102 | source(...) | user-provided value | +| LogInjectionTest.java:1798:26:1798:42 | (...)... | LogInjectionTest.java:1798:35:1798:42 | source(...) : Object | LogInjectionTest.java:1798:26:1798:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1798:35:1798:42 | source(...) | user-provided value | +| LogInjectionTest.java:1799:26:1799:42 | (...)... | LogInjectionTest.java:1799:35:1799:42 | source(...) : Object | LogInjectionTest.java:1799:26:1799:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1799:35:1799:42 | source(...) | user-provided value | +| LogInjectionTest.java:1800:41:1800:48 | source(...) | LogInjectionTest.java:1800:41:1800:48 | source(...) | LogInjectionTest.java:1800:41:1800:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1800:41:1800:48 | source(...) | user-provided value | +| LogInjectionTest.java:1801:26:1801:42 | (...)... | LogInjectionTest.java:1801:35:1801:42 | source(...) : Object | LogInjectionTest.java:1801:26:1801:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1801:35:1801:42 | source(...) | user-provided value | +| LogInjectionTest.java:1802:41:1802:63 | new Object[] | LogInjectionTest.java:1802:55:1802:62 | source(...) : Object | LogInjectionTest.java:1802:41:1802:63 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1802:55:1802:62 | source(...) | user-provided value | +| LogInjectionTest.java:1803:26:1803:42 | (...)... | LogInjectionTest.java:1803:35:1803:42 | source(...) : Object | LogInjectionTest.java:1803:26:1803:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1803:35:1803:42 | source(...) | user-provided value | +| LogInjectionTest.java:1804:41:1804:48 | source(...) | LogInjectionTest.java:1804:41:1804:48 | source(...) | LogInjectionTest.java:1804:41:1804:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1804:41:1804:48 | source(...) | user-provided value | +| LogInjectionTest.java:1805:56:1805:63 | source(...) | LogInjectionTest.java:1805:56:1805:63 | source(...) | LogInjectionTest.java:1805:56:1805:63 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1805:56:1805:63 | source(...) | user-provided value | +| LogInjectionTest.java:1806:26:1806:42 | (...)... | LogInjectionTest.java:1806:35:1806:42 | source(...) : Object | LogInjectionTest.java:1806:26:1806:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1806:35:1806:42 | source(...) | user-provided value | +| LogInjectionTest.java:1807:51:1807:67 | (...)... | LogInjectionTest.java:1807:60:1807:67 | source(...) : Object | LogInjectionTest.java:1807:51:1807:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1807:60:1807:67 | source(...) | user-provided value | +| LogInjectionTest.java:1808:51:1808:67 | (...)... | LogInjectionTest.java:1808:60:1808:67 | source(...) : Object | LogInjectionTest.java:1808:51:1808:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1808:60:1808:67 | source(...) | user-provided value | +| LogInjectionTest.java:1809:66:1809:73 | source(...) | LogInjectionTest.java:1809:66:1809:73 | source(...) | LogInjectionTest.java:1809:66:1809:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1809:66:1809:73 | source(...) | user-provided value | +| LogInjectionTest.java:1810:51:1810:67 | (...)... | LogInjectionTest.java:1810:60:1810:67 | source(...) : Object | LogInjectionTest.java:1810:51:1810:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1810:60:1810:67 | source(...) | user-provided value | +| LogInjectionTest.java:1811:66:1811:88 | new Object[] | LogInjectionTest.java:1811:80:1811:87 | source(...) : Object | LogInjectionTest.java:1811:66:1811:88 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1811:80:1811:87 | source(...) | user-provided value | +| LogInjectionTest.java:1812:51:1812:67 | (...)... | LogInjectionTest.java:1812:60:1812:67 | source(...) : Object | LogInjectionTest.java:1812:51:1812:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1812:60:1812:67 | source(...) | user-provided value | +| LogInjectionTest.java:1813:66:1813:73 | source(...) | LogInjectionTest.java:1813:66:1813:73 | source(...) | LogInjectionTest.java:1813:66:1813:73 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1813:66:1813:73 | source(...) | user-provided value | +| LogInjectionTest.java:1814:81:1814:88 | source(...) | LogInjectionTest.java:1814:81:1814:88 | source(...) | LogInjectionTest.java:1814:81:1814:88 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1814:81:1814:88 | source(...) | user-provided value | +| LogInjectionTest.java:1815:51:1815:67 | (...)... | LogInjectionTest.java:1815:60:1815:67 | source(...) : Object | LogInjectionTest.java:1815:51:1815:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1815:60:1815:67 | source(...) | user-provided value | +| LogInjectionTest.java:1816:13:1816:104 | new ..[] { .. } | LogInjectionTest.java:1816:66:1816:73 | source(...) : Object | LogInjectionTest.java:1816:13:1816:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1816:66:1816:73 | source(...) | user-provided value | +| LogInjectionTest.java:1817:13:1817:104 | new ..[] { .. } | LogInjectionTest.java:1817:81:1817:88 | source(...) : Object | LogInjectionTest.java:1817:13:1817:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1817:81:1817:88 | source(...) | user-provided value | +| LogInjectionTest.java:1818:13:1818:104 | new ..[] { .. } | LogInjectionTest.java:1818:96:1818:103 | source(...) : Object | LogInjectionTest.java:1818:13:1818:104 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1818:96:1818:103 | source(...) | user-provided value | +| LogInjectionTest.java:1819:25:1819:41 | (...)... | LogInjectionTest.java:1819:34:1819:41 | source(...) : Object | LogInjectionTest.java:1819:25:1819:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1819:34:1819:41 | source(...) | user-provided value | +| LogInjectionTest.java:1820:25:1820:41 | (...)... | LogInjectionTest.java:1820:34:1820:41 | source(...) : Object | LogInjectionTest.java:1820:25:1820:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1820:34:1820:41 | source(...) | user-provided value | +| LogInjectionTest.java:1821:40:1821:47 | source(...) | LogInjectionTest.java:1821:40:1821:47 | source(...) | LogInjectionTest.java:1821:40:1821:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1821:40:1821:47 | source(...) | user-provided value | +| LogInjectionTest.java:1822:25:1822:41 | (...)... | LogInjectionTest.java:1822:34:1822:41 | source(...) : Object | LogInjectionTest.java:1822:25:1822:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1822:34:1822:41 | source(...) | user-provided value | +| LogInjectionTest.java:1823:40:1823:62 | new Object[] | LogInjectionTest.java:1823:54:1823:61 | source(...) : Object | LogInjectionTest.java:1823:40:1823:62 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1823:54:1823:61 | source(...) | user-provided value | +| LogInjectionTest.java:1824:25:1824:41 | (...)... | LogInjectionTest.java:1824:34:1824:41 | source(...) : Object | LogInjectionTest.java:1824:25:1824:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1824:34:1824:41 | source(...) | user-provided value | +| LogInjectionTest.java:1825:40:1825:47 | source(...) | LogInjectionTest.java:1825:40:1825:47 | source(...) | LogInjectionTest.java:1825:40:1825:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1825:40:1825:47 | source(...) | user-provided value | +| LogInjectionTest.java:1826:55:1826:62 | source(...) | LogInjectionTest.java:1826:55:1826:62 | source(...) | LogInjectionTest.java:1826:55:1826:62 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1826:55:1826:62 | source(...) | user-provided value | +| LogInjectionTest.java:1827:25:1827:41 | (...)... | LogInjectionTest.java:1827:34:1827:41 | source(...) : Object | LogInjectionTest.java:1827:25:1827:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1827:34:1827:41 | source(...) | user-provided value | +| LogInjectionTest.java:1828:50:1828:66 | (...)... | LogInjectionTest.java:1828:59:1828:66 | source(...) : Object | LogInjectionTest.java:1828:50:1828:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1828:59:1828:66 | source(...) | user-provided value | +| LogInjectionTest.java:1829:50:1829:66 | (...)... | LogInjectionTest.java:1829:59:1829:66 | source(...) : Object | LogInjectionTest.java:1829:50:1829:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1829:59:1829:66 | source(...) | user-provided value | +| LogInjectionTest.java:1830:65:1830:72 | source(...) | LogInjectionTest.java:1830:65:1830:72 | source(...) | LogInjectionTest.java:1830:65:1830:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1830:65:1830:72 | source(...) | user-provided value | +| LogInjectionTest.java:1831:50:1831:66 | (...)... | LogInjectionTest.java:1831:59:1831:66 | source(...) : Object | LogInjectionTest.java:1831:50:1831:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1831:59:1831:66 | source(...) | user-provided value | +| LogInjectionTest.java:1832:65:1832:87 | new Object[] | LogInjectionTest.java:1832:79:1832:86 | source(...) : Object | LogInjectionTest.java:1832:65:1832:87 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1832:79:1832:86 | source(...) | user-provided value | +| LogInjectionTest.java:1833:50:1833:66 | (...)... | LogInjectionTest.java:1833:59:1833:66 | source(...) : Object | LogInjectionTest.java:1833:50:1833:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1833:59:1833:66 | source(...) | user-provided value | +| LogInjectionTest.java:1834:65:1834:72 | source(...) | LogInjectionTest.java:1834:65:1834:72 | source(...) | LogInjectionTest.java:1834:65:1834:72 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1834:65:1834:72 | source(...) | user-provided value | +| LogInjectionTest.java:1835:80:1835:87 | source(...) | LogInjectionTest.java:1835:80:1835:87 | source(...) | LogInjectionTest.java:1835:80:1835:87 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1835:80:1835:87 | source(...) | user-provided value | +| LogInjectionTest.java:1836:50:1836:66 | (...)... | LogInjectionTest.java:1836:59:1836:66 | source(...) : Object | LogInjectionTest.java:1836:50:1836:66 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1836:59:1836:66 | source(...) | user-provided value | +| LogInjectionTest.java:1837:13:1837:103 | new ..[] { .. } | LogInjectionTest.java:1837:65:1837:72 | source(...) : Object | LogInjectionTest.java:1837:13:1837:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1837:65:1837:72 | source(...) | user-provided value | +| LogInjectionTest.java:1838:13:1838:103 | new ..[] { .. } | LogInjectionTest.java:1838:80:1838:87 | source(...) : Object | LogInjectionTest.java:1838:13:1838:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1838:80:1838:87 | source(...) | user-provided value | +| LogInjectionTest.java:1839:13:1839:103 | new ..[] { .. } | LogInjectionTest.java:1839:95:1839:102 | source(...) : Object | LogInjectionTest.java:1839:13:1839:103 | new ..[] { .. } | This log entry depends on a $@. | LogInjectionTest.java:1839:95:1839:102 | source(...) | user-provided value | +| LogInjectionTest.java:1844:33:1844:40 | source(...) | LogInjectionTest.java:1844:33:1844:40 | source(...) | LogInjectionTest.java:1844:33:1844:40 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1844:33:1844:40 | source(...) | user-provided value | +| LogInjectionTest.java:1845:26:1845:33 | source(...) | LogInjectionTest.java:1845:26:1845:33 | source(...) | LogInjectionTest.java:1845:26:1845:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1845:26:1845:33 | source(...) | user-provided value | +| LogInjectionTest.java:1846:26:1846:33 | source(...) | LogInjectionTest.java:1846:26:1846:33 | source(...) | LogInjectionTest.java:1846:26:1846:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1846:26:1846:33 | source(...) | user-provided value | +| LogInjectionTest.java:1847:26:1847:33 | source(...) | LogInjectionTest.java:1847:26:1847:33 | source(...) | LogInjectionTest.java:1847:26:1847:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1847:26:1847:33 | source(...) | user-provided value | +| LogInjectionTest.java:1848:26:1848:33 | source(...) | LogInjectionTest.java:1848:26:1848:33 | source(...) | LogInjectionTest.java:1848:26:1848:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1848:26:1848:33 | source(...) | user-provided value | +| LogInjectionTest.java:1849:25:1849:32 | source(...) | LogInjectionTest.java:1849:25:1849:32 | source(...) | LogInjectionTest.java:1849:25:1849:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1849:25:1849:32 | source(...) | user-provided value | +| LogInjectionTest.java:1850:25:1850:32 | source(...) | LogInjectionTest.java:1850:25:1850:32 | source(...) | LogInjectionTest.java:1850:25:1850:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1850:25:1850:32 | source(...) | user-provided value | +| LogInjectionTest.java:1851:26:1851:33 | source(...) | LogInjectionTest.java:1851:26:1851:33 | source(...) | LogInjectionTest.java:1851:26:1851:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1851:26:1851:33 | source(...) | user-provided value | +| LogInjectionTest.java:1852:26:1852:33 | source(...) | LogInjectionTest.java:1852:26:1852:33 | source(...) | LogInjectionTest.java:1852:26:1852:33 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1852:26:1852:33 | source(...) | user-provided value | +| LogInjectionTest.java:1853:25:1853:32 | source(...) | LogInjectionTest.java:1853:25:1853:32 | source(...) | LogInjectionTest.java:1853:25:1853:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1853:25:1853:32 | source(...) | user-provided value | +| LogInjectionTest.java:1854:25:1854:32 | source(...) | LogInjectionTest.java:1854:25:1854:32 | source(...) | LogInjectionTest.java:1854:25:1854:32 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1854:25:1854:32 | source(...) | user-provided value | +| LogInjectionTest.java:1855:27:1855:34 | source(...) | LogInjectionTest.java:1855:27:1855:34 | source(...) | LogInjectionTest.java:1855:27:1855:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1855:27:1855:34 | source(...) | user-provided value | +| LogInjectionTest.java:1856:27:1856:34 | source(...) | LogInjectionTest.java:1856:27:1856:34 | source(...) | LogInjectionTest.java:1856:27:1856:34 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1856:27:1856:34 | source(...) | user-provided value | +| LogInjectionTest.java:1860:28:1860:44 | (...)... | LogInjectionTest.java:1860:37:1860:44 | source(...) : Object | LogInjectionTest.java:1860:28:1860:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1860:37:1860:44 | source(...) | user-provided value | +| LogInjectionTest.java:1861:43:1861:65 | new Object[] | LogInjectionTest.java:1861:57:1861:64 | source(...) : Object | LogInjectionTest.java:1861:43:1861:65 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1861:57:1861:64 | source(...) | user-provided value | +| LogInjectionTest.java:1863:21:1863:37 | (...)... | LogInjectionTest.java:1863:30:1863:37 | source(...) : Object | LogInjectionTest.java:1863:21:1863:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1863:30:1863:37 | source(...) | user-provided value | +| LogInjectionTest.java:1864:36:1864:52 | (...)... | LogInjectionTest.java:1864:45:1864:52 | source(...) : Object | LogInjectionTest.java:1864:36:1864:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1864:45:1864:52 | source(...) | user-provided value | +| LogInjectionTest.java:1865:21:1865:37 | (...)... | LogInjectionTest.java:1865:30:1865:37 | source(...) : Object | LogInjectionTest.java:1865:21:1865:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1865:30:1865:37 | source(...) | user-provided value | +| LogInjectionTest.java:1866:51:1866:67 | (...)... | LogInjectionTest.java:1866:60:1866:67 | source(...) : Object | LogInjectionTest.java:1866:51:1866:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1866:60:1866:67 | source(...) | user-provided value | +| LogInjectionTest.java:1867:36:1867:52 | (...)... | LogInjectionTest.java:1867:45:1867:52 | source(...) : Object | LogInjectionTest.java:1867:36:1867:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1867:45:1867:52 | source(...) | user-provided value | +| LogInjectionTest.java:1868:21:1868:37 | (...)... | LogInjectionTest.java:1868:30:1868:37 | source(...) : Object | LogInjectionTest.java:1868:21:1868:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1868:30:1868:37 | source(...) | user-provided value | +| LogInjectionTest.java:1869:66:1869:82 | (...)... | LogInjectionTest.java:1869:75:1869:82 | source(...) : Object | LogInjectionTest.java:1869:66:1869:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1869:75:1869:82 | source(...) | user-provided value | +| LogInjectionTest.java:1870:51:1870:67 | (...)... | LogInjectionTest.java:1870:60:1870:67 | source(...) : Object | LogInjectionTest.java:1870:51:1870:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1870:60:1870:67 | source(...) | user-provided value | +| LogInjectionTest.java:1871:36:1871:52 | (...)... | LogInjectionTest.java:1871:45:1871:52 | source(...) : Object | LogInjectionTest.java:1871:36:1871:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1871:45:1871:52 | source(...) | user-provided value | +| LogInjectionTest.java:1872:21:1872:37 | (...)... | LogInjectionTest.java:1872:30:1872:37 | source(...) : Object | LogInjectionTest.java:1872:21:1872:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1872:30:1872:37 | source(...) | user-provided value | +| LogInjectionTest.java:1873:81:1873:97 | (...)... | LogInjectionTest.java:1873:90:1873:97 | source(...) : Object | LogInjectionTest.java:1873:81:1873:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1873:90:1873:97 | source(...) | user-provided value | +| LogInjectionTest.java:1874:66:1874:82 | (...)... | LogInjectionTest.java:1874:75:1874:82 | source(...) : Object | LogInjectionTest.java:1874:66:1874:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1874:75:1874:82 | source(...) | user-provided value | +| LogInjectionTest.java:1875:51:1875:67 | (...)... | LogInjectionTest.java:1875:60:1875:67 | source(...) : Object | LogInjectionTest.java:1875:51:1875:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1875:60:1875:67 | source(...) | user-provided value | +| LogInjectionTest.java:1876:36:1876:52 | (...)... | LogInjectionTest.java:1876:45:1876:52 | source(...) : Object | LogInjectionTest.java:1876:36:1876:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1876:45:1876:52 | source(...) | user-provided value | +| LogInjectionTest.java:1877:21:1877:37 | (...)... | LogInjectionTest.java:1877:30:1877:37 | source(...) : Object | LogInjectionTest.java:1877:21:1877:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1877:30:1877:37 | source(...) | user-provided value | +| LogInjectionTest.java:1878:96:1878:112 | (...)... | LogInjectionTest.java:1878:105:1878:112 | source(...) : Object | LogInjectionTest.java:1878:96:1878:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1878:105:1878:112 | source(...) | user-provided value | +| LogInjectionTest.java:1879:81:1879:97 | (...)... | LogInjectionTest.java:1879:90:1879:97 | source(...) : Object | LogInjectionTest.java:1879:81:1879:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1879:90:1879:97 | source(...) | user-provided value | +| LogInjectionTest.java:1880:66:1880:82 | (...)... | LogInjectionTest.java:1880:75:1880:82 | source(...) : Object | LogInjectionTest.java:1880:66:1880:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1880:75:1880:82 | source(...) | user-provided value | +| LogInjectionTest.java:1881:51:1881:67 | (...)... | LogInjectionTest.java:1881:60:1881:67 | source(...) : Object | LogInjectionTest.java:1881:51:1881:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1881:60:1881:67 | source(...) | user-provided value | +| LogInjectionTest.java:1882:36:1882:52 | (...)... | LogInjectionTest.java:1882:45:1882:52 | source(...) : Object | LogInjectionTest.java:1882:36:1882:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1882:45:1882:52 | source(...) | user-provided value | +| LogInjectionTest.java:1883:21:1883:37 | (...)... | LogInjectionTest.java:1883:30:1883:37 | source(...) : Object | LogInjectionTest.java:1883:21:1883:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1883:30:1883:37 | source(...) | user-provided value | +| LogInjectionTest.java:1884:111:1884:127 | (...)... | LogInjectionTest.java:1884:120:1884:127 | source(...) : Object | LogInjectionTest.java:1884:111:1884:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1884:120:1884:127 | source(...) | user-provided value | +| LogInjectionTest.java:1885:96:1885:112 | (...)... | LogInjectionTest.java:1885:105:1885:112 | source(...) : Object | LogInjectionTest.java:1885:96:1885:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1885:105:1885:112 | source(...) | user-provided value | +| LogInjectionTest.java:1886:81:1886:97 | (...)... | LogInjectionTest.java:1886:90:1886:97 | source(...) : Object | LogInjectionTest.java:1886:81:1886:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1886:90:1886:97 | source(...) | user-provided value | +| LogInjectionTest.java:1887:66:1887:82 | (...)... | LogInjectionTest.java:1887:75:1887:82 | source(...) : Object | LogInjectionTest.java:1887:66:1887:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1887:75:1887:82 | source(...) | user-provided value | +| LogInjectionTest.java:1888:51:1888:67 | (...)... | LogInjectionTest.java:1888:60:1888:67 | source(...) : Object | LogInjectionTest.java:1888:51:1888:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1888:60:1888:67 | source(...) | user-provided value | +| LogInjectionTest.java:1889:36:1889:52 | (...)... | LogInjectionTest.java:1889:45:1889:52 | source(...) : Object | LogInjectionTest.java:1889:36:1889:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1889:45:1889:52 | source(...) | user-provided value | +| LogInjectionTest.java:1890:21:1890:37 | (...)... | LogInjectionTest.java:1890:30:1890:37 | source(...) : Object | LogInjectionTest.java:1890:21:1890:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1890:30:1890:37 | source(...) | user-provided value | +| LogInjectionTest.java:1891:126:1891:142 | (...)... | LogInjectionTest.java:1891:135:1891:142 | source(...) : Object | LogInjectionTest.java:1891:126:1891:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1891:135:1891:142 | source(...) | user-provided value | +| LogInjectionTest.java:1892:111:1892:127 | (...)... | LogInjectionTest.java:1892:120:1892:127 | source(...) : Object | LogInjectionTest.java:1892:111:1892:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1892:120:1892:127 | source(...) | user-provided value | +| LogInjectionTest.java:1893:96:1893:112 | (...)... | LogInjectionTest.java:1893:105:1893:112 | source(...) : Object | LogInjectionTest.java:1893:96:1893:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1893:105:1893:112 | source(...) | user-provided value | +| LogInjectionTest.java:1894:81:1894:97 | (...)... | LogInjectionTest.java:1894:90:1894:97 | source(...) : Object | LogInjectionTest.java:1894:81:1894:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1894:90:1894:97 | source(...) | user-provided value | +| LogInjectionTest.java:1895:66:1895:82 | (...)... | LogInjectionTest.java:1895:75:1895:82 | source(...) : Object | LogInjectionTest.java:1895:66:1895:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1895:75:1895:82 | source(...) | user-provided value | +| LogInjectionTest.java:1896:51:1896:67 | (...)... | LogInjectionTest.java:1896:60:1896:67 | source(...) : Object | LogInjectionTest.java:1896:51:1896:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1896:60:1896:67 | source(...) | user-provided value | +| LogInjectionTest.java:1897:36:1897:52 | (...)... | LogInjectionTest.java:1897:45:1897:52 | source(...) : Object | LogInjectionTest.java:1897:36:1897:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1897:45:1897:52 | source(...) | user-provided value | +| LogInjectionTest.java:1898:21:1898:37 | (...)... | LogInjectionTest.java:1898:30:1898:37 | source(...) : Object | LogInjectionTest.java:1898:21:1898:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1898:30:1898:37 | source(...) | user-provided value | | LogInjectionTest.java:1899:141:1899:157 | (...)... | LogInjectionTest.java:1899:150:1899:157 | source(...) : Object | LogInjectionTest.java:1899:141:1899:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1899:150:1899:157 | source(...) | user-provided value | | LogInjectionTest.java:1900:126:1900:142 | (...)... | LogInjectionTest.java:1900:135:1900:142 | source(...) : Object | LogInjectionTest.java:1900:126:1900:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1900:135:1900:142 | source(...) | user-provided value | | LogInjectionTest.java:1901:111:1901:127 | (...)... | LogInjectionTest.java:1901:120:1901:127 | source(...) : Object | LogInjectionTest.java:1901:111:1901:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1901:120:1901:127 | source(...) | user-provided value | @@ -1679,44 +1671,44 @@ | LogInjectionTest.java:1905:51:1905:67 | (...)... | LogInjectionTest.java:1905:60:1905:67 | source(...) : Object | LogInjectionTest.java:1905:51:1905:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1905:60:1905:67 | source(...) | user-provided value | | LogInjectionTest.java:1906:36:1906:52 | (...)... | LogInjectionTest.java:1906:45:1906:52 | source(...) : Object | LogInjectionTest.java:1906:36:1906:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1906:45:1906:52 | source(...) | user-provided value | | LogInjectionTest.java:1907:21:1907:37 | (...)... | LogInjectionTest.java:1907:30:1907:37 | source(...) : Object | LogInjectionTest.java:1907:21:1907:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1907:30:1907:37 | source(...) | user-provided value | -| LogInjectionTest.java:1908:171:1908:187 | (...)... | LogInjectionTest.java:1908:180:1908:187 | source(...) : Object | LogInjectionTest.java:1908:171:1908:187 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1908:180:1908:187 | source(...) | user-provided value | -| LogInjectionTest.java:1909:156:1909:172 | (...)... | LogInjectionTest.java:1909:165:1909:172 | source(...) : Object | LogInjectionTest.java:1909:156:1909:172 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1909:165:1909:172 | source(...) | user-provided value | -| LogInjectionTest.java:1910:141:1910:157 | (...)... | LogInjectionTest.java:1910:150:1910:157 | source(...) : Object | LogInjectionTest.java:1910:141:1910:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1910:150:1910:157 | source(...) | user-provided value | -| LogInjectionTest.java:1911:126:1911:142 | (...)... | LogInjectionTest.java:1911:135:1911:142 | source(...) : Object | LogInjectionTest.java:1911:126:1911:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1911:135:1911:142 | source(...) | user-provided value | -| LogInjectionTest.java:1912:111:1912:127 | (...)... | LogInjectionTest.java:1912:120:1912:127 | source(...) : Object | LogInjectionTest.java:1912:111:1912:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1912:120:1912:127 | source(...) | user-provided value | -| LogInjectionTest.java:1913:96:1913:112 | (...)... | LogInjectionTest.java:1913:105:1913:112 | source(...) : Object | LogInjectionTest.java:1913:96:1913:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1913:105:1913:112 | source(...) | user-provided value | -| LogInjectionTest.java:1914:81:1914:97 | (...)... | LogInjectionTest.java:1914:90:1914:97 | source(...) : Object | LogInjectionTest.java:1914:81:1914:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1914:90:1914:97 | source(...) | user-provided value | -| LogInjectionTest.java:1915:66:1915:82 | (...)... | LogInjectionTest.java:1915:75:1915:82 | source(...) : Object | LogInjectionTest.java:1915:66:1915:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1915:75:1915:82 | source(...) | user-provided value | -| LogInjectionTest.java:1916:51:1916:67 | (...)... | LogInjectionTest.java:1916:60:1916:67 | source(...) : Object | LogInjectionTest.java:1916:51:1916:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1916:60:1916:67 | source(...) | user-provided value | -| LogInjectionTest.java:1917:36:1917:52 | (...)... | LogInjectionTest.java:1917:45:1917:52 | source(...) : Object | LogInjectionTest.java:1917:36:1917:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1917:45:1917:52 | source(...) | user-provided value | -| LogInjectionTest.java:1918:21:1918:37 | (...)... | LogInjectionTest.java:1918:30:1918:37 | source(...) : Object | LogInjectionTest.java:1918:21:1918:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1918:30:1918:37 | source(...) | user-provided value | -| LogInjectionTest.java:1919:186:1919:207 | new Object[] | LogInjectionTest.java:1919:199:1919:206 | source(...) : Object | LogInjectionTest.java:1919:186:1919:207 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1919:199:1919:206 | source(...) | user-provided value | -| LogInjectionTest.java:1920:171:1920:187 | (...)... | LogInjectionTest.java:1920:180:1920:187 | source(...) : Object | LogInjectionTest.java:1920:171:1920:187 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1920:180:1920:187 | source(...) | user-provided value | -| LogInjectionTest.java:1921:156:1921:172 | (...)... | LogInjectionTest.java:1921:165:1921:172 | source(...) : Object | LogInjectionTest.java:1921:156:1921:172 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1921:165:1921:172 | source(...) | user-provided value | -| LogInjectionTest.java:1922:141:1922:157 | (...)... | LogInjectionTest.java:1922:150:1922:157 | source(...) : Object | LogInjectionTest.java:1922:141:1922:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1922:150:1922:157 | source(...) | user-provided value | -| LogInjectionTest.java:1923:126:1923:142 | (...)... | LogInjectionTest.java:1923:135:1923:142 | source(...) : Object | LogInjectionTest.java:1923:126:1923:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1923:135:1923:142 | source(...) | user-provided value | -| LogInjectionTest.java:1924:111:1924:127 | (...)... | LogInjectionTest.java:1924:120:1924:127 | source(...) : Object | LogInjectionTest.java:1924:111:1924:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1924:120:1924:127 | source(...) | user-provided value | -| LogInjectionTest.java:1925:96:1925:112 | (...)... | LogInjectionTest.java:1925:105:1925:112 | source(...) : Object | LogInjectionTest.java:1925:96:1925:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1925:105:1925:112 | source(...) | user-provided value | -| LogInjectionTest.java:1926:81:1926:97 | (...)... | LogInjectionTest.java:1926:90:1926:97 | source(...) : Object | LogInjectionTest.java:1926:81:1926:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1926:90:1926:97 | source(...) | user-provided value | -| LogInjectionTest.java:1927:66:1927:82 | (...)... | LogInjectionTest.java:1927:75:1927:82 | source(...) : Object | LogInjectionTest.java:1927:66:1927:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1927:75:1927:82 | source(...) | user-provided value | -| LogInjectionTest.java:1928:51:1928:67 | (...)... | LogInjectionTest.java:1928:60:1928:67 | source(...) : Object | LogInjectionTest.java:1928:51:1928:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1928:60:1928:67 | source(...) | user-provided value | -| LogInjectionTest.java:1929:36:1929:52 | (...)... | LogInjectionTest.java:1929:45:1929:52 | source(...) : Object | LogInjectionTest.java:1929:36:1929:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1929:45:1929:52 | source(...) | user-provided value | -| LogInjectionTest.java:1930:21:1930:37 | (...)... | LogInjectionTest.java:1930:30:1930:37 | source(...) : Object | LogInjectionTest.java:1930:21:1930:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1930:30:1930:37 | source(...) | user-provided value | -| LogInjectionTest.java:1932:21:1932:37 | (...)... | LogInjectionTest.java:1932:30:1932:37 | source(...) : Object | LogInjectionTest.java:1932:21:1932:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1932:30:1932:37 | source(...) | user-provided value | -| LogInjectionTest.java:1933:21:1933:37 | (...)... | LogInjectionTest.java:1933:30:1933:37 | source(...) : Object | LogInjectionTest.java:1933:21:1933:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1933:30:1933:37 | source(...) | user-provided value | -| LogInjectionTest.java:1934:21:1934:37 | (...)... | LogInjectionTest.java:1934:30:1934:37 | source(...) : Object | LogInjectionTest.java:1934:21:1934:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1934:30:1934:37 | source(...) | user-provided value | -| LogInjectionTest.java:1935:21:1935:37 | (...)... | LogInjectionTest.java:1935:30:1935:37 | source(...) : Object | LogInjectionTest.java:1935:21:1935:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1935:30:1935:37 | source(...) | user-provided value | -| LogInjectionTest.java:1936:21:1936:37 | (...)... | LogInjectionTest.java:1936:30:1936:37 | source(...) : Object | LogInjectionTest.java:1936:21:1936:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1936:30:1936:37 | source(...) | user-provided value | -| LogInjectionTest.java:1937:21:1937:37 | (...)... | LogInjectionTest.java:1937:30:1937:37 | source(...) : Object | LogInjectionTest.java:1937:21:1937:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1937:30:1937:37 | source(...) | user-provided value | -| LogInjectionTest.java:1938:36:1938:43 | source(...) | LogInjectionTest.java:1938:36:1938:43 | source(...) | LogInjectionTest.java:1938:36:1938:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1938:36:1938:43 | source(...) | user-provided value | -| LogInjectionTest.java:1939:21:1939:37 | (...)... | LogInjectionTest.java:1939:30:1939:37 | source(...) : Object | LogInjectionTest.java:1939:21:1939:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1939:30:1939:37 | source(...) | user-provided value | -| LogInjectionTest.java:1940:36:1940:43 | source(...) | LogInjectionTest.java:1940:36:1940:43 | source(...) | LogInjectionTest.java:1940:36:1940:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1940:36:1940:43 | source(...) | user-provided value | -| LogInjectionTest.java:1941:21:1941:37 | (...)... | LogInjectionTest.java:1941:30:1941:37 | source(...) : Object | LogInjectionTest.java:1941:21:1941:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1941:30:1941:37 | source(...) | user-provided value | -| LogInjectionTest.java:1942:36:1942:43 | source(...) | LogInjectionTest.java:1942:36:1942:43 | source(...) | LogInjectionTest.java:1942:36:1942:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1942:36:1942:43 | source(...) | user-provided value | +| LogInjectionTest.java:1908:156:1908:172 | (...)... | LogInjectionTest.java:1908:165:1908:172 | source(...) : Object | LogInjectionTest.java:1908:156:1908:172 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1908:165:1908:172 | source(...) | user-provided value | +| LogInjectionTest.java:1909:141:1909:157 | (...)... | LogInjectionTest.java:1909:150:1909:157 | source(...) : Object | LogInjectionTest.java:1909:141:1909:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1909:150:1909:157 | source(...) | user-provided value | +| LogInjectionTest.java:1910:126:1910:142 | (...)... | LogInjectionTest.java:1910:135:1910:142 | source(...) : Object | LogInjectionTest.java:1910:126:1910:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1910:135:1910:142 | source(...) | user-provided value | +| LogInjectionTest.java:1911:111:1911:127 | (...)... | LogInjectionTest.java:1911:120:1911:127 | source(...) : Object | LogInjectionTest.java:1911:111:1911:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1911:120:1911:127 | source(...) | user-provided value | +| LogInjectionTest.java:1912:96:1912:112 | (...)... | LogInjectionTest.java:1912:105:1912:112 | source(...) : Object | LogInjectionTest.java:1912:96:1912:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1912:105:1912:112 | source(...) | user-provided value | +| LogInjectionTest.java:1913:81:1913:97 | (...)... | LogInjectionTest.java:1913:90:1913:97 | source(...) : Object | LogInjectionTest.java:1913:81:1913:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1913:90:1913:97 | source(...) | user-provided value | +| LogInjectionTest.java:1914:66:1914:82 | (...)... | LogInjectionTest.java:1914:75:1914:82 | source(...) : Object | LogInjectionTest.java:1914:66:1914:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1914:75:1914:82 | source(...) | user-provided value | +| LogInjectionTest.java:1915:51:1915:67 | (...)... | LogInjectionTest.java:1915:60:1915:67 | source(...) : Object | LogInjectionTest.java:1915:51:1915:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1915:60:1915:67 | source(...) | user-provided value | +| LogInjectionTest.java:1916:36:1916:52 | (...)... | LogInjectionTest.java:1916:45:1916:52 | source(...) : Object | LogInjectionTest.java:1916:36:1916:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1916:45:1916:52 | source(...) | user-provided value | +| LogInjectionTest.java:1917:21:1917:37 | (...)... | LogInjectionTest.java:1917:30:1917:37 | source(...) : Object | LogInjectionTest.java:1917:21:1917:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1917:30:1917:37 | source(...) | user-provided value | +| LogInjectionTest.java:1918:171:1918:187 | (...)... | LogInjectionTest.java:1918:180:1918:187 | source(...) : Object | LogInjectionTest.java:1918:171:1918:187 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1918:180:1918:187 | source(...) | user-provided value | +| LogInjectionTest.java:1919:156:1919:172 | (...)... | LogInjectionTest.java:1919:165:1919:172 | source(...) : Object | LogInjectionTest.java:1919:156:1919:172 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1919:165:1919:172 | source(...) | user-provided value | +| LogInjectionTest.java:1920:141:1920:157 | (...)... | LogInjectionTest.java:1920:150:1920:157 | source(...) : Object | LogInjectionTest.java:1920:141:1920:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1920:150:1920:157 | source(...) | user-provided value | +| LogInjectionTest.java:1921:126:1921:142 | (...)... | LogInjectionTest.java:1921:135:1921:142 | source(...) : Object | LogInjectionTest.java:1921:126:1921:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1921:135:1921:142 | source(...) | user-provided value | +| LogInjectionTest.java:1922:111:1922:127 | (...)... | LogInjectionTest.java:1922:120:1922:127 | source(...) : Object | LogInjectionTest.java:1922:111:1922:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1922:120:1922:127 | source(...) | user-provided value | +| LogInjectionTest.java:1923:96:1923:112 | (...)... | LogInjectionTest.java:1923:105:1923:112 | source(...) : Object | LogInjectionTest.java:1923:96:1923:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1923:105:1923:112 | source(...) | user-provided value | +| LogInjectionTest.java:1924:81:1924:97 | (...)... | LogInjectionTest.java:1924:90:1924:97 | source(...) : Object | LogInjectionTest.java:1924:81:1924:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1924:90:1924:97 | source(...) | user-provided value | +| LogInjectionTest.java:1925:66:1925:82 | (...)... | LogInjectionTest.java:1925:75:1925:82 | source(...) : Object | LogInjectionTest.java:1925:66:1925:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1925:75:1925:82 | source(...) | user-provided value | +| LogInjectionTest.java:1926:51:1926:67 | (...)... | LogInjectionTest.java:1926:60:1926:67 | source(...) : Object | LogInjectionTest.java:1926:51:1926:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1926:60:1926:67 | source(...) | user-provided value | +| LogInjectionTest.java:1927:36:1927:52 | (...)... | LogInjectionTest.java:1927:45:1927:52 | source(...) : Object | LogInjectionTest.java:1927:36:1927:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1927:45:1927:52 | source(...) | user-provided value | +| LogInjectionTest.java:1928:21:1928:37 | (...)... | LogInjectionTest.java:1928:30:1928:37 | source(...) : Object | LogInjectionTest.java:1928:21:1928:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1928:30:1928:37 | source(...) | user-provided value | +| LogInjectionTest.java:1929:186:1929:207 | new Object[] | LogInjectionTest.java:1929:199:1929:206 | source(...) : Object | LogInjectionTest.java:1929:186:1929:207 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:1929:199:1929:206 | source(...) | user-provided value | +| LogInjectionTest.java:1930:171:1930:187 | (...)... | LogInjectionTest.java:1930:180:1930:187 | source(...) : Object | LogInjectionTest.java:1930:171:1930:187 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1930:180:1930:187 | source(...) | user-provided value | +| LogInjectionTest.java:1931:156:1931:172 | (...)... | LogInjectionTest.java:1931:165:1931:172 | source(...) : Object | LogInjectionTest.java:1931:156:1931:172 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1931:165:1931:172 | source(...) | user-provided value | +| LogInjectionTest.java:1932:141:1932:157 | (...)... | LogInjectionTest.java:1932:150:1932:157 | source(...) : Object | LogInjectionTest.java:1932:141:1932:157 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1932:150:1932:157 | source(...) | user-provided value | +| LogInjectionTest.java:1933:126:1933:142 | (...)... | LogInjectionTest.java:1933:135:1933:142 | source(...) : Object | LogInjectionTest.java:1933:126:1933:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1933:135:1933:142 | source(...) | user-provided value | +| LogInjectionTest.java:1934:111:1934:127 | (...)... | LogInjectionTest.java:1934:120:1934:127 | source(...) : Object | LogInjectionTest.java:1934:111:1934:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1934:120:1934:127 | source(...) | user-provided value | +| LogInjectionTest.java:1935:96:1935:112 | (...)... | LogInjectionTest.java:1935:105:1935:112 | source(...) : Object | LogInjectionTest.java:1935:96:1935:112 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1935:105:1935:112 | source(...) | user-provided value | +| LogInjectionTest.java:1936:81:1936:97 | (...)... | LogInjectionTest.java:1936:90:1936:97 | source(...) : Object | LogInjectionTest.java:1936:81:1936:97 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1936:90:1936:97 | source(...) | user-provided value | +| LogInjectionTest.java:1937:66:1937:82 | (...)... | LogInjectionTest.java:1937:75:1937:82 | source(...) : Object | LogInjectionTest.java:1937:66:1937:82 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1937:75:1937:82 | source(...) | user-provided value | +| LogInjectionTest.java:1938:51:1938:67 | (...)... | LogInjectionTest.java:1938:60:1938:67 | source(...) : Object | LogInjectionTest.java:1938:51:1938:67 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1938:60:1938:67 | source(...) | user-provided value | +| LogInjectionTest.java:1939:36:1939:52 | (...)... | LogInjectionTest.java:1939:45:1939:52 | source(...) : Object | LogInjectionTest.java:1939:36:1939:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1939:45:1939:52 | source(...) | user-provided value | +| LogInjectionTest.java:1940:21:1940:37 | (...)... | LogInjectionTest.java:1940:30:1940:37 | source(...) : Object | LogInjectionTest.java:1940:21:1940:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1940:30:1940:37 | source(...) | user-provided value | +| LogInjectionTest.java:1942:21:1942:37 | (...)... | LogInjectionTest.java:1942:30:1942:37 | source(...) : Object | LogInjectionTest.java:1942:21:1942:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1942:30:1942:37 | source(...) | user-provided value | | LogInjectionTest.java:1943:21:1943:37 | (...)... | LogInjectionTest.java:1943:30:1943:37 | source(...) : Object | LogInjectionTest.java:1943:21:1943:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1943:30:1943:37 | source(...) | user-provided value | -| LogInjectionTest.java:1944:36:1944:43 | source(...) | LogInjectionTest.java:1944:36:1944:43 | source(...) | LogInjectionTest.java:1944:36:1944:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1944:36:1944:43 | source(...) | user-provided value | +| LogInjectionTest.java:1944:21:1944:37 | (...)... | LogInjectionTest.java:1944:30:1944:37 | source(...) : Object | LogInjectionTest.java:1944:21:1944:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1944:30:1944:37 | source(...) | user-provided value | | LogInjectionTest.java:1945:21:1945:37 | (...)... | LogInjectionTest.java:1945:30:1945:37 | source(...) : Object | LogInjectionTest.java:1945:21:1945:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1945:30:1945:37 | source(...) | user-provided value | -| LogInjectionTest.java:1946:36:1946:43 | source(...) | LogInjectionTest.java:1946:36:1946:43 | source(...) | LogInjectionTest.java:1946:36:1946:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1946:36:1946:43 | source(...) | user-provided value | +| LogInjectionTest.java:1946:21:1946:37 | (...)... | LogInjectionTest.java:1946:30:1946:37 | source(...) : Object | LogInjectionTest.java:1946:21:1946:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1946:30:1946:37 | source(...) | user-provided value | | LogInjectionTest.java:1947:21:1947:37 | (...)... | LogInjectionTest.java:1947:30:1947:37 | source(...) : Object | LogInjectionTest.java:1947:21:1947:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1947:30:1947:37 | source(...) | user-provided value | | LogInjectionTest.java:1948:36:1948:43 | source(...) | LogInjectionTest.java:1948:36:1948:43 | source(...) | LogInjectionTest.java:1948:36:1948:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1948:36:1948:43 | source(...) | user-provided value | | LogInjectionTest.java:1949:21:1949:37 | (...)... | LogInjectionTest.java:1949:30:1949:37 | source(...) : Object | LogInjectionTest.java:1949:21:1949:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1949:30:1949:37 | source(...) | user-provided value | @@ -1724,31 +1716,31 @@ | LogInjectionTest.java:1951:21:1951:37 | (...)... | LogInjectionTest.java:1951:30:1951:37 | source(...) : Object | LogInjectionTest.java:1951:21:1951:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1951:30:1951:37 | source(...) | user-provided value | | LogInjectionTest.java:1952:36:1952:43 | source(...) | LogInjectionTest.java:1952:36:1952:43 | source(...) | LogInjectionTest.java:1952:36:1952:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1952:36:1952:43 | source(...) | user-provided value | | LogInjectionTest.java:1953:21:1953:37 | (...)... | LogInjectionTest.java:1953:30:1953:37 | source(...) : Object | LogInjectionTest.java:1953:21:1953:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1953:30:1953:37 | source(...) | user-provided value | -| LogInjectionTest.java:1954:43:1954:50 | source(...) | LogInjectionTest.java:1954:43:1954:50 | source(...) | LogInjectionTest.java:1954:43:1954:50 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1954:43:1954:50 | source(...) | user-provided value | +| LogInjectionTest.java:1954:36:1954:43 | source(...) | LogInjectionTest.java:1954:36:1954:43 | source(...) | LogInjectionTest.java:1954:36:1954:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1954:36:1954:43 | source(...) | user-provided value | | LogInjectionTest.java:1955:21:1955:37 | (...)... | LogInjectionTest.java:1955:30:1955:37 | source(...) : Object | LogInjectionTest.java:1955:21:1955:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1955:30:1955:37 | source(...) | user-provided value | -| LogInjectionTest.java:1956:41:1956:48 | source(...) | LogInjectionTest.java:1956:41:1956:48 | source(...) | LogInjectionTest.java:1956:41:1956:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1956:41:1956:48 | source(...) | user-provided value | +| LogInjectionTest.java:1956:36:1956:43 | source(...) | LogInjectionTest.java:1956:36:1956:43 | source(...) | LogInjectionTest.java:1956:36:1956:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1956:36:1956:43 | source(...) | user-provided value | | LogInjectionTest.java:1957:21:1957:37 | (...)... | LogInjectionTest.java:1957:30:1957:37 | source(...) : Object | LogInjectionTest.java:1957:21:1957:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1957:30:1957:37 | source(...) | user-provided value | -| LogInjectionTest.java:1958:46:1958:53 | source(...) | LogInjectionTest.java:1958:46:1958:53 | source(...) | LogInjectionTest.java:1958:46:1958:53 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1958:46:1958:53 | source(...) | user-provided value | +| LogInjectionTest.java:1958:36:1958:43 | source(...) | LogInjectionTest.java:1958:36:1958:43 | source(...) | LogInjectionTest.java:1958:36:1958:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1958:36:1958:43 | source(...) | user-provided value | | LogInjectionTest.java:1959:21:1959:37 | (...)... | LogInjectionTest.java:1959:30:1959:37 | source(...) : Object | LogInjectionTest.java:1959:21:1959:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1959:30:1959:37 | source(...) | user-provided value | -| LogInjectionTest.java:1960:47:1960:54 | source(...) | LogInjectionTest.java:1960:47:1960:54 | source(...) | LogInjectionTest.java:1960:47:1960:54 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1960:47:1960:54 | source(...) | user-provided value | +| LogInjectionTest.java:1960:36:1960:43 | source(...) | LogInjectionTest.java:1960:36:1960:43 | source(...) | LogInjectionTest.java:1960:36:1960:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1960:36:1960:43 | source(...) | user-provided value | | LogInjectionTest.java:1961:21:1961:37 | (...)... | LogInjectionTest.java:1961:30:1961:37 | source(...) : Object | LogInjectionTest.java:1961:21:1961:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1961:30:1961:37 | source(...) | user-provided value | -| LogInjectionTest.java:1962:39:1962:46 | source(...) | LogInjectionTest.java:1962:39:1962:46 | source(...) | LogInjectionTest.java:1962:39:1962:46 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1962:39:1962:46 | source(...) | user-provided value | +| LogInjectionTest.java:1962:36:1962:43 | source(...) | LogInjectionTest.java:1962:36:1962:43 | source(...) | LogInjectionTest.java:1962:36:1962:43 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1962:36:1962:43 | source(...) | user-provided value | | LogInjectionTest.java:1963:21:1963:37 | (...)... | LogInjectionTest.java:1963:30:1963:37 | source(...) : Object | LogInjectionTest.java:1963:21:1963:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1963:30:1963:37 | source(...) | user-provided value | -| LogInjectionTest.java:1964:40:1964:47 | source(...) | LogInjectionTest.java:1964:40:1964:47 | source(...) | LogInjectionTest.java:1964:40:1964:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1964:40:1964:47 | source(...) | user-provided value | +| LogInjectionTest.java:1964:43:1964:50 | source(...) | LogInjectionTest.java:1964:43:1964:50 | source(...) | LogInjectionTest.java:1964:43:1964:50 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1964:43:1964:50 | source(...) | user-provided value | | LogInjectionTest.java:1965:21:1965:37 | (...)... | LogInjectionTest.java:1965:30:1965:37 | source(...) : Object | LogInjectionTest.java:1965:21:1965:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1965:30:1965:37 | source(...) | user-provided value | -| LogInjectionTest.java:1966:47:1966:54 | source(...) | LogInjectionTest.java:1966:47:1966:54 | source(...) | LogInjectionTest.java:1966:47:1966:54 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1966:47:1966:54 | source(...) | user-provided value | +| LogInjectionTest.java:1966:41:1966:48 | source(...) | LogInjectionTest.java:1966:41:1966:48 | source(...) | LogInjectionTest.java:1966:41:1966:48 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1966:41:1966:48 | source(...) | user-provided value | | LogInjectionTest.java:1967:21:1967:37 | (...)... | LogInjectionTest.java:1967:30:1967:37 | source(...) : Object | LogInjectionTest.java:1967:21:1967:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1967:30:1967:37 | source(...) | user-provided value | -| LogInjectionTest.java:1968:48:1968:55 | source(...) | LogInjectionTest.java:1968:48:1968:55 | source(...) | LogInjectionTest.java:1968:48:1968:55 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1968:48:1968:55 | source(...) | user-provided value | +| LogInjectionTest.java:1968:46:1968:53 | source(...) | LogInjectionTest.java:1968:46:1968:53 | source(...) | LogInjectionTest.java:1968:46:1968:53 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1968:46:1968:53 | source(...) | user-provided value | | LogInjectionTest.java:1969:21:1969:37 | (...)... | LogInjectionTest.java:1969:30:1969:37 | source(...) : Object | LogInjectionTest.java:1969:21:1969:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1969:30:1969:37 | source(...) | user-provided value | -| LogInjectionTest.java:1970:21:1970:37 | (...)... | LogInjectionTest.java:1970:30:1970:37 | source(...) : Object | LogInjectionTest.java:1970:21:1970:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1970:30:1970:37 | source(...) | user-provided value | +| LogInjectionTest.java:1970:47:1970:54 | source(...) | LogInjectionTest.java:1970:47:1970:54 | source(...) | LogInjectionTest.java:1970:47:1970:54 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1970:47:1970:54 | source(...) | user-provided value | | LogInjectionTest.java:1971:21:1971:37 | (...)... | LogInjectionTest.java:1971:30:1971:37 | source(...) : Object | LogInjectionTest.java:1971:21:1971:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1971:30:1971:37 | source(...) | user-provided value | -| LogInjectionTest.java:1972:21:1972:37 | (...)... | LogInjectionTest.java:1972:30:1972:37 | source(...) : Object | LogInjectionTest.java:1972:21:1972:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1972:30:1972:37 | source(...) | user-provided value | +| LogInjectionTest.java:1972:39:1972:46 | source(...) | LogInjectionTest.java:1972:39:1972:46 | source(...) | LogInjectionTest.java:1972:39:1972:46 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1972:39:1972:46 | source(...) | user-provided value | | LogInjectionTest.java:1973:21:1973:37 | (...)... | LogInjectionTest.java:1973:30:1973:37 | source(...) : Object | LogInjectionTest.java:1973:21:1973:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1973:30:1973:37 | source(...) | user-provided value | -| LogInjectionTest.java:1974:21:1974:37 | (...)... | LogInjectionTest.java:1974:30:1974:37 | source(...) : Object | LogInjectionTest.java:1974:21:1974:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1974:30:1974:37 | source(...) | user-provided value | +| LogInjectionTest.java:1974:40:1974:47 | source(...) | LogInjectionTest.java:1974:40:1974:47 | source(...) | LogInjectionTest.java:1974:40:1974:47 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1974:40:1974:47 | source(...) | user-provided value | | LogInjectionTest.java:1975:21:1975:37 | (...)... | LogInjectionTest.java:1975:30:1975:37 | source(...) : Object | LogInjectionTest.java:1975:21:1975:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1975:30:1975:37 | source(...) | user-provided value | -| LogInjectionTest.java:1976:21:1976:37 | (...)... | LogInjectionTest.java:1976:30:1976:37 | source(...) : Object | LogInjectionTest.java:1976:21:1976:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1976:30:1976:37 | source(...) | user-provided value | +| LogInjectionTest.java:1976:47:1976:54 | source(...) | LogInjectionTest.java:1976:47:1976:54 | source(...) | LogInjectionTest.java:1976:47:1976:54 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1976:47:1976:54 | source(...) | user-provided value | | LogInjectionTest.java:1977:21:1977:37 | (...)... | LogInjectionTest.java:1977:30:1977:37 | source(...) : Object | LogInjectionTest.java:1977:21:1977:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1977:30:1977:37 | source(...) | user-provided value | -| LogInjectionTest.java:1978:21:1978:37 | (...)... | LogInjectionTest.java:1978:30:1978:37 | source(...) : Object | LogInjectionTest.java:1978:21:1978:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1978:30:1978:37 | source(...) | user-provided value | +| LogInjectionTest.java:1978:48:1978:55 | source(...) | LogInjectionTest.java:1978:48:1978:55 | source(...) | LogInjectionTest.java:1978:48:1978:55 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:1978:48:1978:55 | source(...) | user-provided value | | LogInjectionTest.java:1979:21:1979:37 | (...)... | LogInjectionTest.java:1979:30:1979:37 | source(...) : Object | LogInjectionTest.java:1979:21:1979:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1979:30:1979:37 | source(...) | user-provided value | | LogInjectionTest.java:1980:21:1980:37 | (...)... | LogInjectionTest.java:1980:30:1980:37 | source(...) : Object | LogInjectionTest.java:1980:21:1980:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1980:30:1980:37 | source(...) | user-provided value | | LogInjectionTest.java:1981:21:1981:37 | (...)... | LogInjectionTest.java:1981:30:1981:37 | source(...) : Object | LogInjectionTest.java:1981:21:1981:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:1981:30:1981:37 | source(...) | user-provided value | @@ -1803,1932 +1795,1937 @@ | LogInjectionTest.java:2030:21:2030:37 | (...)... | LogInjectionTest.java:2030:30:2030:37 | source(...) : Object | LogInjectionTest.java:2030:21:2030:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2030:30:2030:37 | source(...) | user-provided value | | LogInjectionTest.java:2031:21:2031:37 | (...)... | LogInjectionTest.java:2031:30:2031:37 | source(...) : Object | LogInjectionTest.java:2031:21:2031:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2031:30:2031:37 | source(...) | user-provided value | | LogInjectionTest.java:2032:21:2032:37 | (...)... | LogInjectionTest.java:2032:30:2032:37 | source(...) : Object | LogInjectionTest.java:2032:21:2032:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2032:30:2032:37 | source(...) | user-provided value | -| LogInjectionTest.java:2037:27:2037:43 | (...)... | LogInjectionTest.java:2037:36:2037:43 | source(...) : Object | LogInjectionTest.java:2037:27:2037:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2037:36:2037:43 | source(...) | user-provided value | -| LogInjectionTest.java:2038:27:2038:64 | (...)... | LogInjectionTest.java:2038:57:2038:64 | source(...) : Object | LogInjectionTest.java:2038:27:2038:64 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2038:57:2038:64 | source(...) | user-provided value | -| LogInjectionTest.java:2039:25:2039:41 | (...)... | LogInjectionTest.java:2039:34:2039:41 | source(...) : Object | LogInjectionTest.java:2039:25:2039:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2039:34:2039:41 | source(...) | user-provided value | -| LogInjectionTest.java:2040:25:2040:62 | (...)... | LogInjectionTest.java:2040:55:2040:62 | source(...) : Object | LogInjectionTest.java:2040:25:2040:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2040:55:2040:62 | source(...) | user-provided value | -| LogInjectionTest.java:2041:26:2041:42 | (...)... | LogInjectionTest.java:2041:35:2041:42 | source(...) : Object | LogInjectionTest.java:2041:26:2041:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2041:35:2041:42 | source(...) | user-provided value | -| LogInjectionTest.java:2042:26:2042:63 | (...)... | LogInjectionTest.java:2042:56:2042:63 | source(...) : Object | LogInjectionTest.java:2042:26:2042:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2042:56:2042:63 | source(...) | user-provided value | -| LogInjectionTest.java:2043:27:2043:43 | (...)... | LogInjectionTest.java:2043:36:2043:43 | source(...) : Object | LogInjectionTest.java:2043:27:2043:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2043:36:2043:43 | source(...) | user-provided value | -| LogInjectionTest.java:2044:27:2044:64 | (...)... | LogInjectionTest.java:2044:57:2044:64 | source(...) : Object | LogInjectionTest.java:2044:27:2044:64 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2044:57:2044:64 | source(...) | user-provided value | -| LogInjectionTest.java:2045:25:2045:41 | (...)... | LogInjectionTest.java:2045:34:2045:41 | source(...) : Object | LogInjectionTest.java:2045:25:2045:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2045:34:2045:41 | source(...) | user-provided value | -| LogInjectionTest.java:2046:25:2046:62 | (...)... | LogInjectionTest.java:2046:55:2046:62 | source(...) : Object | LogInjectionTest.java:2046:25:2046:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2046:55:2046:62 | source(...) | user-provided value | +| LogInjectionTest.java:2033:21:2033:37 | (...)... | LogInjectionTest.java:2033:30:2033:37 | source(...) : Object | LogInjectionTest.java:2033:21:2033:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2033:30:2033:37 | source(...) | user-provided value | +| LogInjectionTest.java:2034:21:2034:37 | (...)... | LogInjectionTest.java:2034:30:2034:37 | source(...) : Object | LogInjectionTest.java:2034:21:2034:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2034:30:2034:37 | source(...) | user-provided value | +| LogInjectionTest.java:2035:21:2035:37 | (...)... | LogInjectionTest.java:2035:30:2035:37 | source(...) : Object | LogInjectionTest.java:2035:21:2035:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2035:30:2035:37 | source(...) | user-provided value | +| LogInjectionTest.java:2036:21:2036:37 | (...)... | LogInjectionTest.java:2036:30:2036:37 | source(...) : Object | LogInjectionTest.java:2036:21:2036:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2036:30:2036:37 | source(...) | user-provided value | +| LogInjectionTest.java:2037:21:2037:37 | (...)... | LogInjectionTest.java:2037:30:2037:37 | source(...) : Object | LogInjectionTest.java:2037:21:2037:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2037:30:2037:37 | source(...) | user-provided value | +| LogInjectionTest.java:2038:21:2038:37 | (...)... | LogInjectionTest.java:2038:30:2038:37 | source(...) : Object | LogInjectionTest.java:2038:21:2038:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2038:30:2038:37 | source(...) | user-provided value | +| LogInjectionTest.java:2039:21:2039:37 | (...)... | LogInjectionTest.java:2039:30:2039:37 | source(...) : Object | LogInjectionTest.java:2039:21:2039:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2039:30:2039:37 | source(...) | user-provided value | +| LogInjectionTest.java:2040:21:2040:37 | (...)... | LogInjectionTest.java:2040:30:2040:37 | source(...) : Object | LogInjectionTest.java:2040:21:2040:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2040:30:2040:37 | source(...) | user-provided value | +| LogInjectionTest.java:2041:21:2041:37 | (...)... | LogInjectionTest.java:2041:30:2041:37 | source(...) : Object | LogInjectionTest.java:2041:21:2041:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2041:30:2041:37 | source(...) | user-provided value | +| LogInjectionTest.java:2042:21:2042:37 | (...)... | LogInjectionTest.java:2042:30:2042:37 | source(...) : Object | LogInjectionTest.java:2042:21:2042:37 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2042:30:2042:37 | source(...) | user-provided value | | LogInjectionTest.java:2047:27:2047:43 | (...)... | LogInjectionTest.java:2047:36:2047:43 | source(...) : Object | LogInjectionTest.java:2047:27:2047:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2047:36:2047:43 | source(...) | user-provided value | | LogInjectionTest.java:2048:27:2048:64 | (...)... | LogInjectionTest.java:2048:57:2048:64 | source(...) : Object | LogInjectionTest.java:2048:27:2048:64 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2048:57:2048:64 | source(...) | user-provided value | -| LogInjectionTest.java:2049:28:2049:44 | (...)... | LogInjectionTest.java:2049:37:2049:44 | source(...) : Object | LogInjectionTest.java:2049:28:2049:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2049:37:2049:44 | source(...) | user-provided value | -| LogInjectionTest.java:2050:28:2050:65 | (...)... | LogInjectionTest.java:2050:58:2050:65 | source(...) : Object | LogInjectionTest.java:2050:28:2050:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2050:58:2050:65 | source(...) | user-provided value | -| LogInjectionTest.java:2051:29:2051:45 | (...)... | LogInjectionTest.java:2051:38:2051:45 | source(...) : Object | LogInjectionTest.java:2051:29:2051:45 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2051:38:2051:45 | source(...) | user-provided value | -| LogInjectionTest.java:2052:44:2052:60 | (...)... | LogInjectionTest.java:2052:53:2052:60 | source(...) : Object | LogInjectionTest.java:2052:44:2052:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2052:53:2052:60 | source(...) | user-provided value | -| LogInjectionTest.java:2053:29:2053:45 | (...)... | LogInjectionTest.java:2053:38:2053:45 | source(...) : Object | LogInjectionTest.java:2053:29:2053:45 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2053:38:2053:45 | source(...) | user-provided value | -| LogInjectionTest.java:2054:44:2054:60 | (...)... | LogInjectionTest.java:2054:53:2054:60 | source(...) : Object | LogInjectionTest.java:2054:44:2054:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2054:53:2054:60 | source(...) | user-provided value | -| LogInjectionTest.java:2055:59:2055:75 | (...)... | LogInjectionTest.java:2055:68:2055:75 | source(...) : Object | LogInjectionTest.java:2055:59:2055:75 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2055:68:2055:75 | source(...) | user-provided value | -| LogInjectionTest.java:2056:29:2056:45 | (...)... | LogInjectionTest.java:2056:38:2056:45 | source(...) : Object | LogInjectionTest.java:2056:29:2056:45 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2056:38:2056:45 | source(...) | user-provided value | -| LogInjectionTest.java:2057:44:2057:60 | (...)... | LogInjectionTest.java:2057:53:2057:60 | source(...) : Object | LogInjectionTest.java:2057:44:2057:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2057:53:2057:60 | source(...) | user-provided value | -| LogInjectionTest.java:2058:59:2058:81 | new Object[] | LogInjectionTest.java:2058:73:2058:80 | source(...) : Object | LogInjectionTest.java:2058:59:2058:81 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2058:73:2058:80 | source(...) | user-provided value | +| LogInjectionTest.java:2049:25:2049:41 | (...)... | LogInjectionTest.java:2049:34:2049:41 | source(...) : Object | LogInjectionTest.java:2049:25:2049:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2049:34:2049:41 | source(...) | user-provided value | +| LogInjectionTest.java:2050:25:2050:62 | (...)... | LogInjectionTest.java:2050:55:2050:62 | source(...) : Object | LogInjectionTest.java:2050:25:2050:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2050:55:2050:62 | source(...) | user-provided value | +| LogInjectionTest.java:2051:26:2051:42 | (...)... | LogInjectionTest.java:2051:35:2051:42 | source(...) : Object | LogInjectionTest.java:2051:26:2051:42 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2051:35:2051:42 | source(...) | user-provided value | +| LogInjectionTest.java:2052:26:2052:63 | (...)... | LogInjectionTest.java:2052:56:2052:63 | source(...) : Object | LogInjectionTest.java:2052:26:2052:63 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2052:56:2052:63 | source(...) | user-provided value | +| LogInjectionTest.java:2053:27:2053:43 | (...)... | LogInjectionTest.java:2053:36:2053:43 | source(...) : Object | LogInjectionTest.java:2053:27:2053:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2053:36:2053:43 | source(...) | user-provided value | +| LogInjectionTest.java:2054:27:2054:64 | (...)... | LogInjectionTest.java:2054:57:2054:64 | source(...) : Object | LogInjectionTest.java:2054:27:2054:64 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2054:57:2054:64 | source(...) | user-provided value | +| LogInjectionTest.java:2055:25:2055:41 | (...)... | LogInjectionTest.java:2055:34:2055:41 | source(...) : Object | LogInjectionTest.java:2055:25:2055:41 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2055:34:2055:41 | source(...) | user-provided value | +| LogInjectionTest.java:2056:25:2056:62 | (...)... | LogInjectionTest.java:2056:55:2056:62 | source(...) : Object | LogInjectionTest.java:2056:25:2056:62 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2056:55:2056:62 | source(...) | user-provided value | +| LogInjectionTest.java:2057:27:2057:43 | (...)... | LogInjectionTest.java:2057:36:2057:43 | source(...) : Object | LogInjectionTest.java:2057:27:2057:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2057:36:2057:43 | source(...) | user-provided value | +| LogInjectionTest.java:2058:27:2058:64 | (...)... | LogInjectionTest.java:2058:57:2058:64 | source(...) : Object | LogInjectionTest.java:2058:27:2058:64 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2058:57:2058:64 | source(...) | user-provided value | | LogInjectionTest.java:2059:28:2059:44 | (...)... | LogInjectionTest.java:2059:37:2059:44 | source(...) : Object | LogInjectionTest.java:2059:28:2059:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2059:37:2059:44 | source(...) | user-provided value | -| LogInjectionTest.java:2060:43:2060:59 | (...)... | LogInjectionTest.java:2060:52:2060:59 | source(...) : Object | LogInjectionTest.java:2060:43:2060:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2060:52:2060:59 | source(...) | user-provided value | -| LogInjectionTest.java:2061:28:2061:44 | (...)... | LogInjectionTest.java:2061:37:2061:44 | source(...) : Object | LogInjectionTest.java:2061:28:2061:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2061:37:2061:44 | source(...) | user-provided value | -| LogInjectionTest.java:2062:43:2062:59 | (...)... | LogInjectionTest.java:2062:52:2062:59 | source(...) : Object | LogInjectionTest.java:2062:43:2062:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2062:52:2062:59 | source(...) | user-provided value | -| LogInjectionTest.java:2063:58:2063:74 | (...)... | LogInjectionTest.java:2063:67:2063:74 | source(...) : Object | LogInjectionTest.java:2063:58:2063:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2063:67:2063:74 | source(...) | user-provided value | -| LogInjectionTest.java:2064:56:2064:72 | (...)... | LogInjectionTest.java:2064:65:2064:72 | source(...) : Object | LogInjectionTest.java:2064:56:2064:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2064:65:2064:72 | source(...) | user-provided value | -| LogInjectionTest.java:2065:56:2065:72 | (...)... | LogInjectionTest.java:2065:65:2065:72 | source(...) : Object | LogInjectionTest.java:2065:56:2065:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2065:65:2065:72 | source(...) | user-provided value | -| LogInjectionTest.java:2066:71:2066:78 | source(...) | LogInjectionTest.java:2066:71:2066:78 | source(...) | LogInjectionTest.java:2066:71:2066:78 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:2066:71:2066:78 | source(...) | user-provided value | -| LogInjectionTest.java:2067:56:2067:72 | (...)... | LogInjectionTest.java:2067:65:2067:72 | source(...) : Object | LogInjectionTest.java:2067:56:2067:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2067:65:2067:72 | source(...) | user-provided value | -| LogInjectionTest.java:2068:71:2068:92 | new Object[] | LogInjectionTest.java:2068:84:2068:91 | source(...) : Object | LogInjectionTest.java:2068:71:2068:92 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2068:84:2068:91 | source(...) | user-provided value | -| LogInjectionTest.java:2069:56:2069:72 | (...)... | LogInjectionTest.java:2069:65:2069:72 | source(...) : Object | LogInjectionTest.java:2069:56:2069:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2069:65:2069:72 | source(...) | user-provided value | -| LogInjectionTest.java:2070:56:2070:93 | (...)... | LogInjectionTest.java:2070:86:2070:93 | source(...) : Object | LogInjectionTest.java:2070:56:2070:93 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2070:86:2070:93 | source(...) | user-provided value | -| LogInjectionTest.java:2071:74:2071:111 | (...)... | LogInjectionTest.java:2071:104:2071:111 | source(...) : Object | LogInjectionTest.java:2071:74:2071:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2071:104:2071:111 | source(...) | user-provided value | -| LogInjectionTest.java:2072:24:2072:43 | (...)... | LogInjectionTest.java:2072:36:2072:43 | source(...) : Object | LogInjectionTest.java:2072:24:2072:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2072:36:2072:43 | source(...) | user-provided value | -| LogInjectionTest.java:2073:57:2073:73 | (...)... | LogInjectionTest.java:2073:66:2073:73 | source(...) : Object | LogInjectionTest.java:2073:57:2073:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2073:66:2073:73 | source(...) | user-provided value | -| LogInjectionTest.java:2074:72:2074:88 | (...)... | LogInjectionTest.java:2074:81:2074:88 | source(...) : Object | LogInjectionTest.java:2074:72:2074:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2074:81:2074:88 | source(...) | user-provided value | -| LogInjectionTest.java:2075:87:2075:103 | (...)... | LogInjectionTest.java:2075:96:2075:103 | source(...) : Object | LogInjectionTest.java:2075:87:2075:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2075:96:2075:103 | source(...) | user-provided value | -| LogInjectionTest.java:2076:57:2076:73 | (...)... | LogInjectionTest.java:2076:66:2076:73 | source(...) : Object | LogInjectionTest.java:2076:57:2076:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2076:66:2076:73 | source(...) | user-provided value | -| LogInjectionTest.java:2077:72:2077:88 | (...)... | LogInjectionTest.java:2077:81:2077:88 | source(...) : Object | LogInjectionTest.java:2077:72:2077:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2077:81:2077:88 | source(...) | user-provided value | -| LogInjectionTest.java:2078:87:2078:103 | (...)... | LogInjectionTest.java:2078:96:2078:103 | source(...) : Object | LogInjectionTest.java:2078:87:2078:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2078:96:2078:103 | source(...) | user-provided value | -| LogInjectionTest.java:2079:102:2079:109 | source(...) | LogInjectionTest.java:2079:102:2079:109 | source(...) | LogInjectionTest.java:2079:102:2079:109 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:2079:102:2079:109 | source(...) | user-provided value | -| LogInjectionTest.java:2080:57:2080:73 | (...)... | LogInjectionTest.java:2080:66:2080:73 | source(...) : Object | LogInjectionTest.java:2080:57:2080:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2080:66:2080:73 | source(...) | user-provided value | -| LogInjectionTest.java:2081:72:2081:88 | (...)... | LogInjectionTest.java:2081:81:2081:88 | source(...) : Object | LogInjectionTest.java:2081:72:2081:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2081:81:2081:88 | source(...) | user-provided value | -| LogInjectionTest.java:2082:87:2082:103 | (...)... | LogInjectionTest.java:2082:96:2082:103 | source(...) : Object | LogInjectionTest.java:2082:87:2082:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2082:96:2082:103 | source(...) | user-provided value | -| LogInjectionTest.java:2083:102:2083:124 | new Object[] | LogInjectionTest.java:2083:116:2083:123 | source(...) : Object | LogInjectionTest.java:2083:102:2083:124 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2083:116:2083:123 | source(...) | user-provided value | -| LogInjectionTest.java:2084:57:2084:73 | (...)... | LogInjectionTest.java:2084:66:2084:73 | source(...) : Object | LogInjectionTest.java:2084:57:2084:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2084:66:2084:73 | source(...) | user-provided value | -| LogInjectionTest.java:2085:72:2085:88 | (...)... | LogInjectionTest.java:2085:81:2085:88 | source(...) : Object | LogInjectionTest.java:2085:72:2085:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2085:81:2085:88 | source(...) | user-provided value | -| LogInjectionTest.java:2086:87:2086:103 | (...)... | LogInjectionTest.java:2086:96:2086:103 | source(...) : Object | LogInjectionTest.java:2086:87:2086:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2086:96:2086:103 | source(...) | user-provided value | -| LogInjectionTest.java:2087:57:2087:73 | (...)... | LogInjectionTest.java:2087:66:2087:73 | source(...) : Object | LogInjectionTest.java:2087:57:2087:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2087:66:2087:73 | source(...) | user-provided value | -| LogInjectionTest.java:2088:72:2088:88 | (...)... | LogInjectionTest.java:2088:81:2088:88 | source(...) : Object | LogInjectionTest.java:2088:72:2088:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2088:81:2088:88 | source(...) | user-provided value | -| LogInjectionTest.java:2089:87:2089:124 | (...)... | LogInjectionTest.java:2089:117:2089:124 | source(...) : Object | LogInjectionTest.java:2089:87:2089:124 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2089:117:2089:124 | source(...) | user-provided value | +| LogInjectionTest.java:2060:28:2060:65 | (...)... | LogInjectionTest.java:2060:58:2060:65 | source(...) : Object | LogInjectionTest.java:2060:28:2060:65 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2060:58:2060:65 | source(...) | user-provided value | +| LogInjectionTest.java:2061:29:2061:45 | (...)... | LogInjectionTest.java:2061:38:2061:45 | source(...) : Object | LogInjectionTest.java:2061:29:2061:45 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2061:38:2061:45 | source(...) | user-provided value | +| LogInjectionTest.java:2062:44:2062:60 | (...)... | LogInjectionTest.java:2062:53:2062:60 | source(...) : Object | LogInjectionTest.java:2062:44:2062:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2062:53:2062:60 | source(...) | user-provided value | +| LogInjectionTest.java:2063:29:2063:45 | (...)... | LogInjectionTest.java:2063:38:2063:45 | source(...) : Object | LogInjectionTest.java:2063:29:2063:45 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2063:38:2063:45 | source(...) | user-provided value | +| LogInjectionTest.java:2064:44:2064:60 | (...)... | LogInjectionTest.java:2064:53:2064:60 | source(...) : Object | LogInjectionTest.java:2064:44:2064:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2064:53:2064:60 | source(...) | user-provided value | +| LogInjectionTest.java:2065:59:2065:75 | (...)... | LogInjectionTest.java:2065:68:2065:75 | source(...) : Object | LogInjectionTest.java:2065:59:2065:75 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2065:68:2065:75 | source(...) | user-provided value | +| LogInjectionTest.java:2066:29:2066:45 | (...)... | LogInjectionTest.java:2066:38:2066:45 | source(...) : Object | LogInjectionTest.java:2066:29:2066:45 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2066:38:2066:45 | source(...) | user-provided value | +| LogInjectionTest.java:2067:44:2067:60 | (...)... | LogInjectionTest.java:2067:53:2067:60 | source(...) : Object | LogInjectionTest.java:2067:44:2067:60 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2067:53:2067:60 | source(...) | user-provided value | +| LogInjectionTest.java:2068:59:2068:81 | new Object[] | LogInjectionTest.java:2068:73:2068:80 | source(...) : Object | LogInjectionTest.java:2068:59:2068:81 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2068:73:2068:80 | source(...) | user-provided value | +| LogInjectionTest.java:2069:28:2069:44 | (...)... | LogInjectionTest.java:2069:37:2069:44 | source(...) : Object | LogInjectionTest.java:2069:28:2069:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2069:37:2069:44 | source(...) | user-provided value | +| LogInjectionTest.java:2070:43:2070:59 | (...)... | LogInjectionTest.java:2070:52:2070:59 | source(...) : Object | LogInjectionTest.java:2070:43:2070:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2070:52:2070:59 | source(...) | user-provided value | +| LogInjectionTest.java:2071:28:2071:44 | (...)... | LogInjectionTest.java:2071:37:2071:44 | source(...) : Object | LogInjectionTest.java:2071:28:2071:44 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2071:37:2071:44 | source(...) | user-provided value | +| LogInjectionTest.java:2072:43:2072:59 | (...)... | LogInjectionTest.java:2072:52:2072:59 | source(...) : Object | LogInjectionTest.java:2072:43:2072:59 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2072:52:2072:59 | source(...) | user-provided value | +| LogInjectionTest.java:2073:58:2073:74 | (...)... | LogInjectionTest.java:2073:67:2073:74 | source(...) : Object | LogInjectionTest.java:2073:58:2073:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2073:67:2073:74 | source(...) | user-provided value | +| LogInjectionTest.java:2074:56:2074:72 | (...)... | LogInjectionTest.java:2074:65:2074:72 | source(...) : Object | LogInjectionTest.java:2074:56:2074:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2074:65:2074:72 | source(...) | user-provided value | +| LogInjectionTest.java:2075:56:2075:72 | (...)... | LogInjectionTest.java:2075:65:2075:72 | source(...) : Object | LogInjectionTest.java:2075:56:2075:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2075:65:2075:72 | source(...) | user-provided value | +| LogInjectionTest.java:2076:71:2076:78 | source(...) | LogInjectionTest.java:2076:71:2076:78 | source(...) | LogInjectionTest.java:2076:71:2076:78 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:2076:71:2076:78 | source(...) | user-provided value | +| LogInjectionTest.java:2077:56:2077:72 | (...)... | LogInjectionTest.java:2077:65:2077:72 | source(...) : Object | LogInjectionTest.java:2077:56:2077:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2077:65:2077:72 | source(...) | user-provided value | +| LogInjectionTest.java:2078:71:2078:92 | new Object[] | LogInjectionTest.java:2078:84:2078:91 | source(...) : Object | LogInjectionTest.java:2078:71:2078:92 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2078:84:2078:91 | source(...) | user-provided value | +| LogInjectionTest.java:2079:56:2079:72 | (...)... | LogInjectionTest.java:2079:65:2079:72 | source(...) : Object | LogInjectionTest.java:2079:56:2079:72 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2079:65:2079:72 | source(...) | user-provided value | +| LogInjectionTest.java:2080:56:2080:93 | (...)... | LogInjectionTest.java:2080:86:2080:93 | source(...) : Object | LogInjectionTest.java:2080:56:2080:93 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2080:86:2080:93 | source(...) | user-provided value | +| LogInjectionTest.java:2081:74:2081:111 | (...)... | LogInjectionTest.java:2081:104:2081:111 | source(...) : Object | LogInjectionTest.java:2081:74:2081:111 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2081:104:2081:111 | source(...) | user-provided value | +| LogInjectionTest.java:2082:24:2082:43 | (...)... | LogInjectionTest.java:2082:36:2082:43 | source(...) : Object | LogInjectionTest.java:2082:24:2082:43 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2082:36:2082:43 | source(...) | user-provided value | +| LogInjectionTest.java:2083:57:2083:73 | (...)... | LogInjectionTest.java:2083:66:2083:73 | source(...) : Object | LogInjectionTest.java:2083:57:2083:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2083:66:2083:73 | source(...) | user-provided value | +| LogInjectionTest.java:2084:72:2084:88 | (...)... | LogInjectionTest.java:2084:81:2084:88 | source(...) : Object | LogInjectionTest.java:2084:72:2084:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2084:81:2084:88 | source(...) | user-provided value | +| LogInjectionTest.java:2085:87:2085:103 | (...)... | LogInjectionTest.java:2085:96:2085:103 | source(...) : Object | LogInjectionTest.java:2085:87:2085:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2085:96:2085:103 | source(...) | user-provided value | +| LogInjectionTest.java:2086:57:2086:73 | (...)... | LogInjectionTest.java:2086:66:2086:73 | source(...) : Object | LogInjectionTest.java:2086:57:2086:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2086:66:2086:73 | source(...) | user-provided value | +| LogInjectionTest.java:2087:72:2087:88 | (...)... | LogInjectionTest.java:2087:81:2087:88 | source(...) : Object | LogInjectionTest.java:2087:72:2087:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2087:81:2087:88 | source(...) | user-provided value | +| LogInjectionTest.java:2088:87:2088:103 | (...)... | LogInjectionTest.java:2088:96:2088:103 | source(...) : Object | LogInjectionTest.java:2088:87:2088:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2088:96:2088:103 | source(...) | user-provided value | +| LogInjectionTest.java:2089:102:2089:109 | source(...) | LogInjectionTest.java:2089:102:2089:109 | source(...) | LogInjectionTest.java:2089:102:2089:109 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:2089:102:2089:109 | source(...) | user-provided value | | LogInjectionTest.java:2090:57:2090:73 | (...)... | LogInjectionTest.java:2090:66:2090:73 | source(...) : Object | LogInjectionTest.java:2090:57:2090:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2090:66:2090:73 | source(...) | user-provided value | | LogInjectionTest.java:2091:72:2091:88 | (...)... | LogInjectionTest.java:2091:81:2091:88 | source(...) : Object | LogInjectionTest.java:2091:72:2091:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2091:81:2091:88 | source(...) | user-provided value | -| LogInjectionTest.java:2092:105:2092:142 | (...)... | LogInjectionTest.java:2092:135:2092:142 | source(...) : Object | LogInjectionTest.java:2092:105:2092:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2092:135:2092:142 | source(...) | user-provided value | -| LogInjectionTest.java:2093:58:2093:74 | (...)... | LogInjectionTest.java:2093:67:2093:74 | source(...) : Object | LogInjectionTest.java:2093:58:2093:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2093:67:2093:74 | source(...) | user-provided value | -| LogInjectionTest.java:2094:73:2094:89 | (...)... | LogInjectionTest.java:2094:82:2094:89 | source(...) : Object | LogInjectionTest.java:2094:73:2094:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2094:82:2094:89 | source(...) | user-provided value | -| LogInjectionTest.java:2095:111:2095:127 | (...)... | LogInjectionTest.java:2095:120:2095:127 | source(...) : Object | LogInjectionTest.java:2095:111:2095:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2095:120:2095:127 | source(...) | user-provided value | -| LogInjectionTest.java:2096:126:2096:148 | new Object[] | LogInjectionTest.java:2096:140:2096:147 | source(...) : Object | LogInjectionTest.java:2096:126:2096:148 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2096:140:2096:147 | source(...) | user-provided value | -| LogInjectionTest.java:2097:58:2097:74 | (...)... | LogInjectionTest.java:2097:67:2097:74 | source(...) : Object | LogInjectionTest.java:2097:58:2097:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2097:67:2097:74 | source(...) | user-provided value | -| LogInjectionTest.java:2098:73:2098:89 | (...)... | LogInjectionTest.java:2098:82:2098:89 | source(...) : Object | LogInjectionTest.java:2098:73:2098:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2098:82:2098:89 | source(...) | user-provided value | -| LogInjectionTest.java:2099:111:2099:127 | (...)... | LogInjectionTest.java:2099:120:2099:127 | source(...) : Object | LogInjectionTest.java:2099:111:2099:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2099:120:2099:127 | source(...) | user-provided value | -| LogInjectionTest.java:2100:58:2100:74 | (...)... | LogInjectionTest.java:2100:67:2100:74 | source(...) : Object | LogInjectionTest.java:2100:58:2100:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2100:67:2100:74 | source(...) | user-provided value | -| LogInjectionTest.java:2101:73:2101:89 | (...)... | LogInjectionTest.java:2101:82:2101:89 | source(...) : Object | LogInjectionTest.java:2101:73:2101:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2101:82:2101:89 | source(...) | user-provided value | -| LogInjectionTest.java:2102:88:2102:104 | (...)... | LogInjectionTest.java:2102:97:2102:104 | source(...) : Object | LogInjectionTest.java:2102:88:2102:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2102:97:2102:104 | source(...) | user-provided value | -| LogInjectionTest.java:2103:103:2103:119 | (...)... | LogInjectionTest.java:2103:112:2103:119 | source(...) : Object | LogInjectionTest.java:2103:103:2103:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2103:112:2103:119 | source(...) | user-provided value | -| LogInjectionTest.java:2104:58:2104:74 | (...)... | LogInjectionTest.java:2104:67:2104:74 | source(...) : Object | LogInjectionTest.java:2104:58:2104:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2104:67:2104:74 | source(...) | user-provided value | -| LogInjectionTest.java:2105:73:2105:89 | (...)... | LogInjectionTest.java:2105:82:2105:89 | source(...) : Object | LogInjectionTest.java:2105:73:2105:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2105:82:2105:89 | source(...) | user-provided value | -| LogInjectionTest.java:2106:88:2106:104 | (...)... | LogInjectionTest.java:2106:97:2106:104 | source(...) : Object | LogInjectionTest.java:2106:88:2106:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2106:97:2106:104 | source(...) | user-provided value | -| LogInjectionTest.java:2107:103:2107:119 | (...)... | LogInjectionTest.java:2107:112:2107:119 | source(...) : Object | LogInjectionTest.java:2107:103:2107:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2107:112:2107:119 | source(...) | user-provided value | -| LogInjectionTest.java:2108:118:2108:125 | source(...) | LogInjectionTest.java:2108:118:2108:125 | source(...) | LogInjectionTest.java:2108:118:2108:125 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:2108:118:2108:125 | source(...) | user-provided value | -| LogInjectionTest.java:2109:58:2109:74 | (...)... | LogInjectionTest.java:2109:67:2109:74 | source(...) : Object | LogInjectionTest.java:2109:58:2109:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2109:67:2109:74 | source(...) | user-provided value | -| LogInjectionTest.java:2110:73:2110:89 | (...)... | LogInjectionTest.java:2110:82:2110:89 | source(...) : Object | LogInjectionTest.java:2110:73:2110:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2110:82:2110:89 | source(...) | user-provided value | -| LogInjectionTest.java:2111:88:2111:104 | (...)... | LogInjectionTest.java:2111:97:2111:104 | source(...) : Object | LogInjectionTest.java:2111:88:2111:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2111:97:2111:104 | source(...) | user-provided value | -| LogInjectionTest.java:2112:103:2112:119 | (...)... | LogInjectionTest.java:2112:112:2112:119 | source(...) : Object | LogInjectionTest.java:2112:103:2112:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2112:112:2112:119 | source(...) | user-provided value | -| LogInjectionTest.java:2113:118:2113:140 | new Object[] | LogInjectionTest.java:2113:132:2113:139 | source(...) : Object | LogInjectionTest.java:2113:118:2113:140 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2113:132:2113:139 | source(...) | user-provided value | +| LogInjectionTest.java:2092:87:2092:103 | (...)... | LogInjectionTest.java:2092:96:2092:103 | source(...) : Object | LogInjectionTest.java:2092:87:2092:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2092:96:2092:103 | source(...) | user-provided value | +| LogInjectionTest.java:2093:102:2093:124 | new Object[] | LogInjectionTest.java:2093:116:2093:123 | source(...) : Object | LogInjectionTest.java:2093:102:2093:124 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2093:116:2093:123 | source(...) | user-provided value | +| LogInjectionTest.java:2094:57:2094:73 | (...)... | LogInjectionTest.java:2094:66:2094:73 | source(...) : Object | LogInjectionTest.java:2094:57:2094:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2094:66:2094:73 | source(...) | user-provided value | +| LogInjectionTest.java:2095:72:2095:88 | (...)... | LogInjectionTest.java:2095:81:2095:88 | source(...) : Object | LogInjectionTest.java:2095:72:2095:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2095:81:2095:88 | source(...) | user-provided value | +| LogInjectionTest.java:2096:87:2096:103 | (...)... | LogInjectionTest.java:2096:96:2096:103 | source(...) : Object | LogInjectionTest.java:2096:87:2096:103 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2096:96:2096:103 | source(...) | user-provided value | +| LogInjectionTest.java:2097:57:2097:73 | (...)... | LogInjectionTest.java:2097:66:2097:73 | source(...) : Object | LogInjectionTest.java:2097:57:2097:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2097:66:2097:73 | source(...) | user-provided value | +| LogInjectionTest.java:2098:72:2098:88 | (...)... | LogInjectionTest.java:2098:81:2098:88 | source(...) : Object | LogInjectionTest.java:2098:72:2098:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2098:81:2098:88 | source(...) | user-provided value | +| LogInjectionTest.java:2099:87:2099:124 | (...)... | LogInjectionTest.java:2099:117:2099:124 | source(...) : Object | LogInjectionTest.java:2099:87:2099:124 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2099:117:2099:124 | source(...) | user-provided value | +| LogInjectionTest.java:2100:57:2100:73 | (...)... | LogInjectionTest.java:2100:66:2100:73 | source(...) : Object | LogInjectionTest.java:2100:57:2100:73 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2100:66:2100:73 | source(...) | user-provided value | +| LogInjectionTest.java:2101:72:2101:88 | (...)... | LogInjectionTest.java:2101:81:2101:88 | source(...) : Object | LogInjectionTest.java:2101:72:2101:88 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2101:81:2101:88 | source(...) | user-provided value | +| LogInjectionTest.java:2102:105:2102:142 | (...)... | LogInjectionTest.java:2102:135:2102:142 | source(...) : Object | LogInjectionTest.java:2102:105:2102:142 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2102:135:2102:142 | source(...) | user-provided value | +| LogInjectionTest.java:2103:58:2103:74 | (...)... | LogInjectionTest.java:2103:67:2103:74 | source(...) : Object | LogInjectionTest.java:2103:58:2103:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2103:67:2103:74 | source(...) | user-provided value | +| LogInjectionTest.java:2104:73:2104:89 | (...)... | LogInjectionTest.java:2104:82:2104:89 | source(...) : Object | LogInjectionTest.java:2104:73:2104:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2104:82:2104:89 | source(...) | user-provided value | +| LogInjectionTest.java:2105:111:2105:127 | (...)... | LogInjectionTest.java:2105:120:2105:127 | source(...) : Object | LogInjectionTest.java:2105:111:2105:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2105:120:2105:127 | source(...) | user-provided value | +| LogInjectionTest.java:2106:126:2106:148 | new Object[] | LogInjectionTest.java:2106:140:2106:147 | source(...) : Object | LogInjectionTest.java:2106:126:2106:148 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2106:140:2106:147 | source(...) | user-provided value | +| LogInjectionTest.java:2107:58:2107:74 | (...)... | LogInjectionTest.java:2107:67:2107:74 | source(...) : Object | LogInjectionTest.java:2107:58:2107:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2107:67:2107:74 | source(...) | user-provided value | +| LogInjectionTest.java:2108:73:2108:89 | (...)... | LogInjectionTest.java:2108:82:2108:89 | source(...) : Object | LogInjectionTest.java:2108:73:2108:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2108:82:2108:89 | source(...) | user-provided value | +| LogInjectionTest.java:2109:111:2109:127 | (...)... | LogInjectionTest.java:2109:120:2109:127 | source(...) : Object | LogInjectionTest.java:2109:111:2109:127 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2109:120:2109:127 | source(...) | user-provided value | +| LogInjectionTest.java:2110:58:2110:74 | (...)... | LogInjectionTest.java:2110:67:2110:74 | source(...) : Object | LogInjectionTest.java:2110:58:2110:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2110:67:2110:74 | source(...) | user-provided value | +| LogInjectionTest.java:2111:73:2111:89 | (...)... | LogInjectionTest.java:2111:82:2111:89 | source(...) : Object | LogInjectionTest.java:2111:73:2111:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2111:82:2111:89 | source(...) | user-provided value | +| LogInjectionTest.java:2112:88:2112:104 | (...)... | LogInjectionTest.java:2112:97:2112:104 | source(...) : Object | LogInjectionTest.java:2112:88:2112:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2112:97:2112:104 | source(...) | user-provided value | +| LogInjectionTest.java:2113:103:2113:119 | (...)... | LogInjectionTest.java:2113:112:2113:119 | source(...) : Object | LogInjectionTest.java:2113:103:2113:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2113:112:2113:119 | source(...) | user-provided value | | LogInjectionTest.java:2114:58:2114:74 | (...)... | LogInjectionTest.java:2114:67:2114:74 | source(...) : Object | LogInjectionTest.java:2114:58:2114:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2114:67:2114:74 | source(...) | user-provided value | | LogInjectionTest.java:2115:73:2115:89 | (...)... | LogInjectionTest.java:2115:82:2115:89 | source(...) : Object | LogInjectionTest.java:2115:73:2115:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2115:82:2115:89 | source(...) | user-provided value | | LogInjectionTest.java:2116:88:2116:104 | (...)... | LogInjectionTest.java:2116:97:2116:104 | source(...) : Object | LogInjectionTest.java:2116:88:2116:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2116:97:2116:104 | source(...) | user-provided value | | LogInjectionTest.java:2117:103:2117:119 | (...)... | LogInjectionTest.java:2117:112:2117:119 | source(...) : Object | LogInjectionTest.java:2117:103:2117:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2117:112:2117:119 | source(...) | user-provided value | -| LogInjectionTest.java:2121:36:2121:52 | (...)... | LogInjectionTest.java:2121:45:2121:52 | source(...) : Object | LogInjectionTest.java:2121:36:2121:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2121:45:2121:52 | source(...) | user-provided value | -| LogInjectionTest.java:2122:36:2122:52 | (...)... | LogInjectionTest.java:2122:45:2122:52 | source(...) : Object | LogInjectionTest.java:2122:36:2122:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2122:45:2122:52 | source(...) | user-provided value | -| LogInjectionTest.java:2123:36:2123:52 | (...)... | LogInjectionTest.java:2123:45:2123:52 | source(...) : Object | LogInjectionTest.java:2123:36:2123:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2123:45:2123:52 | source(...) | user-provided value | -| LogInjectionTest.java:2124:36:2124:52 | (...)... | LogInjectionTest.java:2124:45:2124:52 | source(...) : Object | LogInjectionTest.java:2124:36:2124:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2124:45:2124:52 | source(...) | user-provided value | -| LogInjectionTest.java:2125:36:2125:52 | (...)... | LogInjectionTest.java:2125:45:2125:52 | source(...) : Object | LogInjectionTest.java:2125:36:2125:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2125:45:2125:52 | source(...) | user-provided value | -| LogInjectionTest.java:2126:38:2126:54 | (...)... | LogInjectionTest.java:2126:47:2126:54 | source(...) : Object | LogInjectionTest.java:2126:38:2126:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2126:47:2126:54 | source(...) | user-provided value | -| LogInjectionTest.java:2131:38:2131:54 | (...)... | LogInjectionTest.java:2131:47:2131:54 | source(...) : Object | LogInjectionTest.java:2131:38:2131:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2131:47:2131:54 | source(...) | user-provided value | -| LogInjectionTest.java:2133:38:2133:54 | (...)... | LogInjectionTest.java:2133:47:2133:54 | source(...) : Object | LogInjectionTest.java:2133:38:2133:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2133:47:2133:54 | source(...) | user-provided value | -| LogInjectionTest.java:2135:38:2135:54 | (...)... | LogInjectionTest.java:2135:47:2135:54 | source(...) : Object | LogInjectionTest.java:2135:38:2135:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2135:47:2135:54 | source(...) | user-provided value | -| LogInjectionTest.java:2137:38:2137:54 | (...)... | LogInjectionTest.java:2137:47:2137:54 | source(...) : Object | LogInjectionTest.java:2137:38:2137:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2137:47:2137:54 | source(...) | user-provided value | -| LogInjectionTest.java:2139:38:2139:54 | (...)... | LogInjectionTest.java:2139:47:2139:54 | source(...) : Object | LogInjectionTest.java:2139:38:2139:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2139:47:2139:54 | source(...) | user-provided value | +| LogInjectionTest.java:2118:118:2118:125 | source(...) | LogInjectionTest.java:2118:118:2118:125 | source(...) | LogInjectionTest.java:2118:118:2118:125 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:2118:118:2118:125 | source(...) | user-provided value | +| LogInjectionTest.java:2119:58:2119:74 | (...)... | LogInjectionTest.java:2119:67:2119:74 | source(...) : Object | LogInjectionTest.java:2119:58:2119:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2119:67:2119:74 | source(...) | user-provided value | +| LogInjectionTest.java:2120:73:2120:89 | (...)... | LogInjectionTest.java:2120:82:2120:89 | source(...) : Object | LogInjectionTest.java:2120:73:2120:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2120:82:2120:89 | source(...) | user-provided value | +| LogInjectionTest.java:2121:88:2121:104 | (...)... | LogInjectionTest.java:2121:97:2121:104 | source(...) : Object | LogInjectionTest.java:2121:88:2121:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2121:97:2121:104 | source(...) | user-provided value | +| LogInjectionTest.java:2122:103:2122:119 | (...)... | LogInjectionTest.java:2122:112:2122:119 | source(...) : Object | LogInjectionTest.java:2122:103:2122:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2122:112:2122:119 | source(...) | user-provided value | +| LogInjectionTest.java:2123:118:2123:140 | new Object[] | LogInjectionTest.java:2123:132:2123:139 | source(...) : Object | LogInjectionTest.java:2123:118:2123:140 | new Object[] | This log entry depends on a $@. | LogInjectionTest.java:2123:132:2123:139 | source(...) | user-provided value | +| LogInjectionTest.java:2124:58:2124:74 | (...)... | LogInjectionTest.java:2124:67:2124:74 | source(...) : Object | LogInjectionTest.java:2124:58:2124:74 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2124:67:2124:74 | source(...) | user-provided value | +| LogInjectionTest.java:2125:73:2125:89 | (...)... | LogInjectionTest.java:2125:82:2125:89 | source(...) : Object | LogInjectionTest.java:2125:73:2125:89 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2125:82:2125:89 | source(...) | user-provided value | +| LogInjectionTest.java:2126:88:2126:104 | (...)... | LogInjectionTest.java:2126:97:2126:104 | source(...) : Object | LogInjectionTest.java:2126:88:2126:104 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2126:97:2126:104 | source(...) | user-provided value | +| LogInjectionTest.java:2127:103:2127:119 | (...)... | LogInjectionTest.java:2127:112:2127:119 | source(...) : Object | LogInjectionTest.java:2127:103:2127:119 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2127:112:2127:119 | source(...) | user-provided value | +| LogInjectionTest.java:2131:36:2131:52 | (...)... | LogInjectionTest.java:2131:45:2131:52 | source(...) : Object | LogInjectionTest.java:2131:36:2131:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2131:45:2131:52 | source(...) | user-provided value | +| LogInjectionTest.java:2132:36:2132:52 | (...)... | LogInjectionTest.java:2132:45:2132:52 | source(...) : Object | LogInjectionTest.java:2132:36:2132:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2132:45:2132:52 | source(...) | user-provided value | +| LogInjectionTest.java:2133:36:2133:52 | (...)... | LogInjectionTest.java:2133:45:2133:52 | source(...) : Object | LogInjectionTest.java:2133:36:2133:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2133:45:2133:52 | source(...) | user-provided value | +| LogInjectionTest.java:2134:36:2134:52 | (...)... | LogInjectionTest.java:2134:45:2134:52 | source(...) : Object | LogInjectionTest.java:2134:36:2134:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2134:45:2134:52 | source(...) | user-provided value | +| LogInjectionTest.java:2135:36:2135:52 | (...)... | LogInjectionTest.java:2135:45:2135:52 | source(...) : Object | LogInjectionTest.java:2135:36:2135:52 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2135:45:2135:52 | source(...) | user-provided value | +| LogInjectionTest.java:2136:38:2136:54 | (...)... | LogInjectionTest.java:2136:47:2136:54 | source(...) : Object | LogInjectionTest.java:2136:38:2136:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2136:47:2136:54 | source(...) | user-provided value | | LogInjectionTest.java:2141:38:2141:54 | (...)... | LogInjectionTest.java:2141:47:2141:54 | source(...) : Object | LogInjectionTest.java:2141:38:2141:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2141:47:2141:54 | source(...) | user-provided value | +| LogInjectionTest.java:2143:38:2143:54 | (...)... | LogInjectionTest.java:2143:47:2143:54 | source(...) : Object | LogInjectionTest.java:2143:38:2143:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2143:47:2143:54 | source(...) | user-provided value | +| LogInjectionTest.java:2145:38:2145:54 | (...)... | LogInjectionTest.java:2145:47:2145:54 | source(...) : Object | LogInjectionTest.java:2145:38:2145:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2145:47:2145:54 | source(...) | user-provided value | +| LogInjectionTest.java:2147:38:2147:54 | (...)... | LogInjectionTest.java:2147:47:2147:54 | source(...) : Object | LogInjectionTest.java:2147:38:2147:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2147:47:2147:54 | source(...) | user-provided value | +| LogInjectionTest.java:2149:38:2149:54 | (...)... | LogInjectionTest.java:2149:47:2149:54 | source(...) : Object | LogInjectionTest.java:2149:38:2149:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2149:47:2149:54 | source(...) | user-provided value | +| LogInjectionTest.java:2151:38:2151:54 | (...)... | LogInjectionTest.java:2151:47:2151:54 | source(...) : Object | LogInjectionTest.java:2151:38:2151:54 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:2151:47:2151:54 | source(...) | user-provided value | edges -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:30:22:30:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:31:22:31:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:33:22:33:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:34:22:34:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:35:22:35:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:37:22:37:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:38:22:38:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:40:22:40:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:41:22:41:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:42:22:42:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:44:22:44:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:45:22:45:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:47:22:47:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:48:22:48:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:50:22:50:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:51:22:51:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:53:22:53:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:54:22:54:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:56:22:56:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:57:22:57:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:59:22:59:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:60:22:60:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:61:22:61:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:62:22:62:27 | source : String | provenance | | -| LogInjectionTest.java:27:25:27:41 | (...)... : String | LogInjectionTest.java:63:22:63:27 | source : String | provenance | | -| LogInjectionTest.java:27:34:27:41 | source(...) : Object | LogInjectionTest.java:27:25:27:41 | (...)... : String | provenance | Src:MaD:536 | -| LogInjectionTest.java:30:22:30:27 | source : String | LogInjectionTest.java:30:22:30:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:31:22:31:27 | source : String | LogInjectionTest.java:31:22:31:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:33:22:33:27 | source : String | LogInjectionTest.java:33:22:33:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:34:22:34:27 | source : String | LogInjectionTest.java:34:22:34:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:35:22:35:27 | source : String | LogInjectionTest.java:35:22:35:57 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:37:22:37:27 | source : String | LogInjectionTest.java:37:22:37:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:38:22:38:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:39:22:39:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:41:22:41:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:42:22:42:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:43:22:43:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:45:22:45:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:46:22:46:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:48:22:48:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:49:22:49:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:50:22:50:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:52:22:52:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:53:22:53:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:55:22:55:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:56:22:56:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:58:22:58:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:59:22:59:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:61:22:61:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:62:22:62:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:64:22:64:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:65:22:65:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:67:22:67:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:68:22:68:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:69:22:69:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:70:22:70:27 | source : String | provenance | | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | LogInjectionTest.java:71:22:71:27 | source : String | provenance | | +| LogInjectionTest.java:35:34:35:41 | source(...) : Object | LogInjectionTest.java:35:25:35:41 | (...)... : String | provenance | Src:MaD:536 | | LogInjectionTest.java:38:22:38:27 | source : String | LogInjectionTest.java:38:22:38:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:40:22:40:27 | source : String | LogInjectionTest.java:40:22:40:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:39:22:39:27 | source : String | LogInjectionTest.java:39:22:39:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | | LogInjectionTest.java:41:22:41:27 | source : String | LogInjectionTest.java:41:22:41:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:42:22:42:27 | source : String | LogInjectionTest.java:42:22:42:45 | replace(...) | provenance | MaD:537 Sink:MaD:101 | -| LogInjectionTest.java:44:22:44:27 | source : String | LogInjectionTest.java:44:22:44:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:45:22:45:27 | source : String | LogInjectionTest.java:45:22:45:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:47:22:47:27 | source : String | LogInjectionTest.java:47:22:47:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:48:22:48:27 | source : String | LogInjectionTest.java:48:22:48:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:50:22:50:27 | source : String | LogInjectionTest.java:50:22:50:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:51:22:51:27 | source : String | LogInjectionTest.java:51:22:51:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:53:22:53:27 | source : String | LogInjectionTest.java:53:22:53:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:54:22:54:27 | source : String | LogInjectionTest.java:54:22:54:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:56:22:56:27 | source : String | LogInjectionTest.java:56:22:56:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:57:22:57:27 | source : String | LogInjectionTest.java:57:22:57:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:59:22:59:27 | source : String | LogInjectionTest.java:59:22:59:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:60:22:60:27 | source : String | LogInjectionTest.java:60:22:60:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:61:22:61:27 | source : String | LogInjectionTest.java:61:22:61:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:62:22:62:27 | source : String | LogInjectionTest.java:62:22:62:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:63:22:63:27 | source : String | LogInjectionTest.java:63:22:63:58 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:71:26:71:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:77:26:77:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:83:26:83:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:89:26:89:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:95:26:95:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:101:26:101:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:107:26:107:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:113:26:113:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:119:26:119:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:125:26:125:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:133:26:133:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:139:26:139:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:145:26:145:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:151:26:151:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:157:26:157:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:163:26:163:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:167:26:167:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:169:26:169:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:173:26:173:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:175:26:175:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:179:26:179:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | LogInjectionTest.java:185:26:185:31 | source | provenance | Sink:MaD:101 | -| LogInjectionTest.java:67:34:67:41 | source(...) : Object | LogInjectionTest.java:67:25:67:41 | (...)... : String | provenance | Src:MaD:536 | -| LogInjectionTest.java:195:48:195:55 | source(...) : Object | LogInjectionTest.java:195:39:195:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:60 | -| LogInjectionTest.java:205:41:205:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:205:41:205:63 | new Object[] | provenance | Sink:MaD:61 | -| LogInjectionTest.java:205:55:205:62 | source(...) : Object | LogInjectionTest.java:205:41:205:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:215:41:215:48 | source(...) : Object | LogInjectionTest.java:215:26:215:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:76 | -| LogInjectionTest.java:216:41:216:48 | source(...) : Object | LogInjectionTest.java:216:26:216:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:77 | -| LogInjectionTest.java:217:56:217:63 | source(...) : Object | LogInjectionTest.java:217:41:217:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:78 | -| LogInjectionTest.java:218:56:218:63 | source(...) : Object | LogInjectionTest.java:218:41:218:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:79 | -| LogInjectionTest.java:219:51:219:58 | source(...) : Object | LogInjectionTest.java:219:41:219:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:80 | -| LogInjectionTest.java:220:59:220:66 | source(...) : Object | LogInjectionTest.java:220:41:220:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:81 | -| LogInjectionTest.java:221:59:221:66 | source(...) : Object | LogInjectionTest.java:221:41:221:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:82 | -| LogInjectionTest.java:223:50:223:57 | source(...) : Object | LogInjectionTest.java:223:41:223:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:83 | -| LogInjectionTest.java:224:50:224:57 | source(...) : Object | LogInjectionTest.java:224:41:224:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:93 | -| LogInjectionTest.java:225:56:225:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:225:56:225:78 | new Object[] | provenance | Sink:MaD:93 | -| LogInjectionTest.java:225:70:225:77 | source(...) : Object | LogInjectionTest.java:225:56:225:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:226:65:226:72 | source(...) : Object | LogInjectionTest.java:226:56:226:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | -| LogInjectionTest.java:227:50:227:57 | source(...) : Object | LogInjectionTest.java:227:41:227:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | -| LogInjectionTest.java:228:80:228:87 | source(...) : Object | LogInjectionTest.java:228:71:228:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:85 | -| LogInjectionTest.java:229:65:229:72 | source(...) : Object | LogInjectionTest.java:229:56:229:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:85 | -| LogInjectionTest.java:230:50:230:57 | source(...) : Object | LogInjectionTest.java:230:41:230:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:85 | -| LogInjectionTest.java:231:95:231:102 | source(...) : Object | LogInjectionTest.java:231:86:231:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | -| LogInjectionTest.java:232:80:232:87 | source(...) : Object | LogInjectionTest.java:232:71:232:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | -| LogInjectionTest.java:233:65:233:72 | source(...) : Object | LogInjectionTest.java:233:56:233:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | -| LogInjectionTest.java:234:50:234:57 | source(...) : Object | LogInjectionTest.java:234:41:234:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | -| LogInjectionTest.java:235:110:235:117 | source(...) : Object | LogInjectionTest.java:235:101:235:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | -| LogInjectionTest.java:236:95:236:102 | source(...) : Object | LogInjectionTest.java:236:86:236:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | -| LogInjectionTest.java:237:80:237:87 | source(...) : Object | LogInjectionTest.java:237:71:237:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | -| LogInjectionTest.java:238:65:238:72 | source(...) : Object | LogInjectionTest.java:238:56:238:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | -| LogInjectionTest.java:239:50:239:57 | source(...) : Object | LogInjectionTest.java:239:41:239:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | -| LogInjectionTest.java:240:125:240:132 | source(...) : Object | LogInjectionTest.java:240:116:240:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | -| LogInjectionTest.java:241:110:241:117 | source(...) : Object | LogInjectionTest.java:241:101:241:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | -| LogInjectionTest.java:242:95:242:102 | source(...) : Object | LogInjectionTest.java:242:86:242:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | -| LogInjectionTest.java:243:80:243:87 | source(...) : Object | LogInjectionTest.java:243:71:243:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | -| LogInjectionTest.java:244:65:244:72 | source(...) : Object | LogInjectionTest.java:244:56:244:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | -| LogInjectionTest.java:245:50:245:57 | source(...) : Object | LogInjectionTest.java:245:41:245:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | -| LogInjectionTest.java:246:140:246:147 | source(...) : Object | LogInjectionTest.java:246:131:246:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:247:125:247:132 | source(...) : Object | LogInjectionTest.java:247:116:247:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:248:110:248:117 | source(...) : Object | LogInjectionTest.java:248:101:248:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:249:95:249:102 | source(...) : Object | LogInjectionTest.java:249:86:249:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:250:80:250:87 | source(...) : Object | LogInjectionTest.java:250:71:250:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:251:65:251:72 | source(...) : Object | LogInjectionTest.java:251:56:251:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:252:50:252:57 | source(...) : Object | LogInjectionTest.java:252:41:252:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | -| LogInjectionTest.java:253:155:253:162 | source(...) : Object | LogInjectionTest.java:253:146:253:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:254:140:254:147 | source(...) : Object | LogInjectionTest.java:254:131:254:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:255:125:255:132 | source(...) : Object | LogInjectionTest.java:255:116:255:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:256:110:256:117 | source(...) : Object | LogInjectionTest.java:256:101:256:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:257:95:257:102 | source(...) : Object | LogInjectionTest.java:257:86:257:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:258:80:258:87 | source(...) : Object | LogInjectionTest.java:258:71:258:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:259:65:259:72 | source(...) : Object | LogInjectionTest.java:259:56:259:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:260:50:260:57 | source(...) : Object | LogInjectionTest.java:260:41:260:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | -| LogInjectionTest.java:261:170:261:177 | source(...) : Object | LogInjectionTest.java:261:161:261:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:262:155:262:162 | source(...) : Object | LogInjectionTest.java:262:146:262:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:263:140:263:147 | source(...) : Object | LogInjectionTest.java:263:131:263:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:264:125:264:132 | source(...) : Object | LogInjectionTest.java:264:116:264:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:265:110:265:117 | source(...) : Object | LogInjectionTest.java:265:101:265:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:266:95:266:102 | source(...) : Object | LogInjectionTest.java:266:86:266:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:267:80:267:87 | source(...) : Object | LogInjectionTest.java:267:71:267:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:268:65:268:72 | source(...) : Object | LogInjectionTest.java:268:56:268:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:269:50:269:57 | source(...) : Object | LogInjectionTest.java:269:41:269:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | -| LogInjectionTest.java:270:185:270:192 | source(...) : Object | LogInjectionTest.java:270:176:270:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:271:170:271:177 | source(...) : Object | LogInjectionTest.java:271:161:271:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:272:155:272:162 | source(...) : Object | LogInjectionTest.java:272:146:272:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:273:140:273:147 | source(...) : Object | LogInjectionTest.java:273:131:273:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:274:125:274:132 | source(...) : Object | LogInjectionTest.java:274:116:274:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:275:110:275:117 | source(...) : Object | LogInjectionTest.java:275:101:275:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:276:95:276:102 | source(...) : Object | LogInjectionTest.java:276:86:276:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:277:80:277:87 | source(...) : Object | LogInjectionTest.java:277:71:277:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:278:65:278:72 | source(...) : Object | LogInjectionTest.java:278:56:278:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:279:50:279:57 | source(...) : Object | LogInjectionTest.java:279:41:279:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | -| LogInjectionTest.java:280:50:280:57 | source(...) : Object | LogInjectionTest.java:280:41:280:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | -| LogInjectionTest.java:281:70:281:77 | source(...) : Object | LogInjectionTest.java:281:56:281:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | -| LogInjectionTest.java:282:50:282:57 | source(...) : Object | LogInjectionTest.java:282:41:282:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:94 | -| LogInjectionTest.java:283:55:283:62 | source(...) : Object | LogInjectionTest.java:283:41:283:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:95 | -| LogInjectionTest.java:284:55:284:62 | source(...) : Object | LogInjectionTest.java:284:41:284:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:96 | -| LogInjectionTest.java:285:44:285:51 | source(...) : Object | LogInjectionTest.java:285:26:285:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:99 | -| LogInjectionTest.java:286:44:286:51 | source(...) : Object | LogInjectionTest.java:286:26:286:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:100 | -| LogInjectionTest.java:287:36:287:43 | source(...) : Object | LogInjectionTest.java:287:26:287:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:97 | -| LogInjectionTest.java:288:36:288:43 | source(...) : Object | LogInjectionTest.java:288:26:288:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:98 | -| LogInjectionTest.java:291:35:291:42 | source(...) : Object | LogInjectionTest.java:291:26:291:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:101 | -| LogInjectionTest.java:292:35:292:42 | source(...) : Object | LogInjectionTest.java:292:26:292:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:111 | -| LogInjectionTest.java:293:41:293:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:293:41:293:63 | new Object[] | provenance | Sink:MaD:111 | -| LogInjectionTest.java:293:55:293:62 | source(...) : Object | LogInjectionTest.java:293:41:293:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:294:50:294:57 | source(...) : Object | LogInjectionTest.java:294:41:294:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | -| LogInjectionTest.java:295:35:295:42 | source(...) : Object | LogInjectionTest.java:295:26:295:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | -| LogInjectionTest.java:296:65:296:72 | source(...) : Object | LogInjectionTest.java:296:56:296:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:103 | -| LogInjectionTest.java:297:50:297:57 | source(...) : Object | LogInjectionTest.java:297:41:297:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:103 | -| LogInjectionTest.java:298:35:298:42 | source(...) : Object | LogInjectionTest.java:298:26:298:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:103 | -| LogInjectionTest.java:299:80:299:87 | source(...) : Object | LogInjectionTest.java:299:71:299:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | -| LogInjectionTest.java:300:65:300:72 | source(...) : Object | LogInjectionTest.java:300:56:300:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | -| LogInjectionTest.java:301:50:301:57 | source(...) : Object | LogInjectionTest.java:301:41:301:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | -| LogInjectionTest.java:302:35:302:42 | source(...) : Object | LogInjectionTest.java:302:26:302:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | -| LogInjectionTest.java:303:95:303:102 | source(...) : Object | LogInjectionTest.java:303:86:303:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | -| LogInjectionTest.java:304:80:304:87 | source(...) : Object | LogInjectionTest.java:304:71:304:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | -| LogInjectionTest.java:305:65:305:72 | source(...) : Object | LogInjectionTest.java:305:56:305:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | -| LogInjectionTest.java:306:50:306:57 | source(...) : Object | LogInjectionTest.java:306:41:306:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | -| LogInjectionTest.java:307:35:307:42 | source(...) : Object | LogInjectionTest.java:307:26:307:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | -| LogInjectionTest.java:308:110:308:117 | source(...) : Object | LogInjectionTest.java:308:101:308:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | -| LogInjectionTest.java:309:95:309:102 | source(...) : Object | LogInjectionTest.java:309:86:309:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | -| LogInjectionTest.java:310:80:310:87 | source(...) : Object | LogInjectionTest.java:310:71:310:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | -| LogInjectionTest.java:311:65:311:72 | source(...) : Object | LogInjectionTest.java:311:56:311:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | -| LogInjectionTest.java:312:50:312:57 | source(...) : Object | LogInjectionTest.java:312:41:312:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | -| LogInjectionTest.java:313:35:313:42 | source(...) : Object | LogInjectionTest.java:313:26:313:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | -| LogInjectionTest.java:314:125:314:132 | source(...) : Object | LogInjectionTest.java:314:116:314:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:315:110:315:117 | source(...) : Object | LogInjectionTest.java:315:101:315:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:316:95:316:102 | source(...) : Object | LogInjectionTest.java:316:86:316:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:317:80:317:87 | source(...) : Object | LogInjectionTest.java:317:71:317:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:318:65:318:72 | source(...) : Object | LogInjectionTest.java:318:56:318:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:319:50:319:57 | source(...) : Object | LogInjectionTest.java:319:41:319:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:320:35:320:42 | source(...) : Object | LogInjectionTest.java:320:26:320:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | -| LogInjectionTest.java:321:140:321:147 | source(...) : Object | LogInjectionTest.java:321:131:321:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:322:125:322:132 | source(...) : Object | LogInjectionTest.java:322:116:322:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:323:110:323:117 | source(...) : Object | LogInjectionTest.java:323:101:323:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:324:95:324:102 | source(...) : Object | LogInjectionTest.java:324:86:324:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:325:80:325:87 | source(...) : Object | LogInjectionTest.java:325:71:325:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:326:65:326:72 | source(...) : Object | LogInjectionTest.java:326:56:326:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:327:50:327:57 | source(...) : Object | LogInjectionTest.java:327:41:327:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:328:35:328:42 | source(...) : Object | LogInjectionTest.java:328:26:328:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | -| LogInjectionTest.java:329:155:329:162 | source(...) : Object | LogInjectionTest.java:329:146:329:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:330:140:330:147 | source(...) : Object | LogInjectionTest.java:330:131:330:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:331:125:331:132 | source(...) : Object | LogInjectionTest.java:331:116:331:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:332:110:332:117 | source(...) : Object | LogInjectionTest.java:332:101:332:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:333:95:333:102 | source(...) : Object | LogInjectionTest.java:333:86:333:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:334:80:334:87 | source(...) : Object | LogInjectionTest.java:334:71:334:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:335:65:335:72 | source(...) : Object | LogInjectionTest.java:335:56:335:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:336:50:336:57 | source(...) : Object | LogInjectionTest.java:336:41:336:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:337:35:337:42 | source(...) : Object | LogInjectionTest.java:337:26:337:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | -| LogInjectionTest.java:338:170:338:177 | source(...) : Object | LogInjectionTest.java:338:161:338:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:339:155:339:162 | source(...) : Object | LogInjectionTest.java:339:146:339:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:340:140:340:147 | source(...) : Object | LogInjectionTest.java:340:131:340:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:341:125:341:132 | source(...) : Object | LogInjectionTest.java:341:116:341:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:342:110:342:117 | source(...) : Object | LogInjectionTest.java:342:101:342:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:343:95:343:102 | source(...) : Object | LogInjectionTest.java:343:86:343:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:344:80:344:87 | source(...) : Object | LogInjectionTest.java:344:71:344:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:345:65:345:72 | source(...) : Object | LogInjectionTest.java:345:56:345:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:346:50:346:57 | source(...) : Object | LogInjectionTest.java:346:41:346:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:347:35:347:42 | source(...) : Object | LogInjectionTest.java:347:26:347:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | -| LogInjectionTest.java:348:35:348:42 | source(...) : Object | LogInjectionTest.java:348:26:348:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | -| LogInjectionTest.java:349:55:349:62 | source(...) : Object | LogInjectionTest.java:349:41:349:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | -| LogInjectionTest.java:350:35:350:42 | source(...) : Object | LogInjectionTest.java:350:26:350:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:112 | -| LogInjectionTest.java:351:40:351:47 | source(...) : Object | LogInjectionTest.java:351:26:351:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:113 | -| LogInjectionTest.java:352:40:352:47 | source(...) : Object | LogInjectionTest.java:352:26:352:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:114 | -| LogInjectionTest.java:353:41:353:48 | source(...) : Object | LogInjectionTest.java:353:26:353:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:115 | -| LogInjectionTest.java:354:41:354:48 | source(...) : Object | LogInjectionTest.java:354:26:354:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:116 | -| LogInjectionTest.java:355:56:355:63 | source(...) : Object | LogInjectionTest.java:355:41:355:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:117 | -| LogInjectionTest.java:356:56:356:63 | source(...) : Object | LogInjectionTest.java:356:41:356:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:118 | -| LogInjectionTest.java:357:51:357:58 | source(...) : Object | LogInjectionTest.java:357:41:357:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:119 | -| LogInjectionTest.java:358:59:358:66 | source(...) : Object | LogInjectionTest.java:358:41:358:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:120 | -| LogInjectionTest.java:359:59:359:66 | source(...) : Object | LogInjectionTest.java:359:41:359:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:121 | -| LogInjectionTest.java:361:50:361:57 | source(...) : Object | LogInjectionTest.java:361:41:361:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:122 | -| LogInjectionTest.java:362:50:362:57 | source(...) : Object | LogInjectionTest.java:362:41:362:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:132 | -| LogInjectionTest.java:363:56:363:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:363:56:363:78 | new Object[] | provenance | Sink:MaD:132 | -| LogInjectionTest.java:363:70:363:77 | source(...) : Object | LogInjectionTest.java:363:56:363:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:364:65:364:72 | source(...) : Object | LogInjectionTest.java:364:56:364:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | -| LogInjectionTest.java:365:50:365:57 | source(...) : Object | LogInjectionTest.java:365:41:365:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | -| LogInjectionTest.java:366:80:366:87 | source(...) : Object | LogInjectionTest.java:366:71:366:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:124 | -| LogInjectionTest.java:367:65:367:72 | source(...) : Object | LogInjectionTest.java:367:56:367:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:124 | -| LogInjectionTest.java:368:50:368:57 | source(...) : Object | LogInjectionTest.java:368:41:368:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:124 | -| LogInjectionTest.java:369:95:369:102 | source(...) : Object | LogInjectionTest.java:369:86:369:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | -| LogInjectionTest.java:370:80:370:87 | source(...) : Object | LogInjectionTest.java:370:71:370:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | -| LogInjectionTest.java:371:65:371:72 | source(...) : Object | LogInjectionTest.java:371:56:371:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | -| LogInjectionTest.java:372:50:372:57 | source(...) : Object | LogInjectionTest.java:372:41:372:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | -| LogInjectionTest.java:373:110:373:117 | source(...) : Object | LogInjectionTest.java:373:101:373:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | -| LogInjectionTest.java:374:95:374:102 | source(...) : Object | LogInjectionTest.java:374:86:374:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | -| LogInjectionTest.java:375:80:375:87 | source(...) : Object | LogInjectionTest.java:375:71:375:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | -| LogInjectionTest.java:376:65:376:72 | source(...) : Object | LogInjectionTest.java:376:56:376:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | -| LogInjectionTest.java:377:50:377:57 | source(...) : Object | LogInjectionTest.java:377:41:377:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | -| LogInjectionTest.java:378:125:378:132 | source(...) : Object | LogInjectionTest.java:378:116:378:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | -| LogInjectionTest.java:379:110:379:117 | source(...) : Object | LogInjectionTest.java:379:101:379:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | -| LogInjectionTest.java:380:95:380:102 | source(...) : Object | LogInjectionTest.java:380:86:380:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | -| LogInjectionTest.java:381:80:381:87 | source(...) : Object | LogInjectionTest.java:381:71:381:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | -| LogInjectionTest.java:382:65:382:72 | source(...) : Object | LogInjectionTest.java:382:56:382:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | -| LogInjectionTest.java:383:50:383:57 | source(...) : Object | LogInjectionTest.java:383:41:383:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | -| LogInjectionTest.java:384:140:384:147 | source(...) : Object | LogInjectionTest.java:384:131:384:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:385:125:385:132 | source(...) : Object | LogInjectionTest.java:385:116:385:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:386:110:386:117 | source(...) : Object | LogInjectionTest.java:386:101:386:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:387:95:387:102 | source(...) : Object | LogInjectionTest.java:387:86:387:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:388:80:388:87 | source(...) : Object | LogInjectionTest.java:388:71:388:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:389:65:389:72 | source(...) : Object | LogInjectionTest.java:389:56:389:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:390:50:390:57 | source(...) : Object | LogInjectionTest.java:390:41:390:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | -| LogInjectionTest.java:391:155:391:162 | source(...) : Object | LogInjectionTest.java:391:146:391:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:392:140:392:147 | source(...) : Object | LogInjectionTest.java:392:131:392:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:393:125:393:132 | source(...) : Object | LogInjectionTest.java:393:116:393:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:394:110:394:117 | source(...) : Object | LogInjectionTest.java:394:101:394:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:395:95:395:102 | source(...) : Object | LogInjectionTest.java:395:86:395:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:396:80:396:87 | source(...) : Object | LogInjectionTest.java:396:71:396:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:397:65:397:72 | source(...) : Object | LogInjectionTest.java:397:56:397:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:398:50:398:57 | source(...) : Object | LogInjectionTest.java:398:41:398:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | -| LogInjectionTest.java:399:170:399:177 | source(...) : Object | LogInjectionTest.java:399:161:399:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:400:155:400:162 | source(...) : Object | LogInjectionTest.java:400:146:400:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:401:140:401:147 | source(...) : Object | LogInjectionTest.java:401:131:401:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:402:125:402:132 | source(...) : Object | LogInjectionTest.java:402:116:402:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:403:110:403:117 | source(...) : Object | LogInjectionTest.java:403:101:403:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:404:95:404:102 | source(...) : Object | LogInjectionTest.java:404:86:404:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:405:80:405:87 | source(...) : Object | LogInjectionTest.java:405:71:405:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:406:65:406:72 | source(...) : Object | LogInjectionTest.java:406:56:406:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:407:50:407:57 | source(...) : Object | LogInjectionTest.java:407:41:407:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | -| LogInjectionTest.java:408:185:408:192 | source(...) : Object | LogInjectionTest.java:408:176:408:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:409:170:409:177 | source(...) : Object | LogInjectionTest.java:409:161:409:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:410:155:410:162 | source(...) : Object | LogInjectionTest.java:410:146:410:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:411:140:411:147 | source(...) : Object | LogInjectionTest.java:411:131:411:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:412:125:412:132 | source(...) : Object | LogInjectionTest.java:412:116:412:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:413:110:413:117 | source(...) : Object | LogInjectionTest.java:413:101:413:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:414:95:414:102 | source(...) : Object | LogInjectionTest.java:414:86:414:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:415:80:415:87 | source(...) : Object | LogInjectionTest.java:415:71:415:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:416:65:416:72 | source(...) : Object | LogInjectionTest.java:416:56:416:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:417:50:417:57 | source(...) : Object | LogInjectionTest.java:417:41:417:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | -| LogInjectionTest.java:418:50:418:57 | source(...) : Object | LogInjectionTest.java:418:41:418:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | -| LogInjectionTest.java:419:70:419:77 | source(...) : Object | LogInjectionTest.java:419:56:419:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | -| LogInjectionTest.java:420:50:420:57 | source(...) : Object | LogInjectionTest.java:420:41:420:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:133 | -| LogInjectionTest.java:421:55:421:62 | source(...) : Object | LogInjectionTest.java:421:41:421:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:134 | -| LogInjectionTest.java:422:55:422:62 | source(...) : Object | LogInjectionTest.java:422:41:422:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:135 | -| LogInjectionTest.java:423:44:423:51 | source(...) : Object | LogInjectionTest.java:423:26:423:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:138 | -| LogInjectionTest.java:424:44:424:51 | source(...) : Object | LogInjectionTest.java:424:26:424:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:139 | -| LogInjectionTest.java:425:36:425:43 | source(...) : Object | LogInjectionTest.java:425:26:425:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:136 | -| LogInjectionTest.java:426:36:426:43 | source(...) : Object | LogInjectionTest.java:426:26:426:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:137 | -| LogInjectionTest.java:429:35:429:42 | source(...) : Object | LogInjectionTest.java:429:26:429:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:140 | -| LogInjectionTest.java:430:35:430:42 | source(...) : Object | LogInjectionTest.java:430:26:430:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:150 | -| LogInjectionTest.java:431:41:431:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:431:41:431:63 | new Object[] | provenance | Sink:MaD:150 | -| LogInjectionTest.java:431:55:431:62 | source(...) : Object | LogInjectionTest.java:431:41:431:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:432:50:432:57 | source(...) : Object | LogInjectionTest.java:432:41:432:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | -| LogInjectionTest.java:433:35:433:42 | source(...) : Object | LogInjectionTest.java:433:26:433:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | -| LogInjectionTest.java:434:65:434:72 | source(...) : Object | LogInjectionTest.java:434:56:434:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:142 | -| LogInjectionTest.java:435:50:435:57 | source(...) : Object | LogInjectionTest.java:435:41:435:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:142 | -| LogInjectionTest.java:436:35:436:42 | source(...) : Object | LogInjectionTest.java:436:26:436:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:142 | -| LogInjectionTest.java:437:80:437:87 | source(...) : Object | LogInjectionTest.java:437:71:437:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | -| LogInjectionTest.java:438:65:438:72 | source(...) : Object | LogInjectionTest.java:438:56:438:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | -| LogInjectionTest.java:439:50:439:57 | source(...) : Object | LogInjectionTest.java:439:41:439:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | -| LogInjectionTest.java:440:35:440:42 | source(...) : Object | LogInjectionTest.java:440:26:440:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | -| LogInjectionTest.java:441:95:441:102 | source(...) : Object | LogInjectionTest.java:441:86:441:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | -| LogInjectionTest.java:442:80:442:87 | source(...) : Object | LogInjectionTest.java:442:71:442:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | -| LogInjectionTest.java:443:65:443:72 | source(...) : Object | LogInjectionTest.java:443:56:443:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | -| LogInjectionTest.java:444:50:444:57 | source(...) : Object | LogInjectionTest.java:444:41:444:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | -| LogInjectionTest.java:445:35:445:42 | source(...) : Object | LogInjectionTest.java:445:26:445:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | -| LogInjectionTest.java:446:110:446:117 | source(...) : Object | LogInjectionTest.java:446:101:446:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | -| LogInjectionTest.java:447:95:447:102 | source(...) : Object | LogInjectionTest.java:447:86:447:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | -| LogInjectionTest.java:448:80:448:87 | source(...) : Object | LogInjectionTest.java:448:71:448:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | -| LogInjectionTest.java:449:65:449:72 | source(...) : Object | LogInjectionTest.java:449:56:449:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | -| LogInjectionTest.java:450:50:450:57 | source(...) : Object | LogInjectionTest.java:450:41:450:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | -| LogInjectionTest.java:451:35:451:42 | source(...) : Object | LogInjectionTest.java:451:26:451:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | -| LogInjectionTest.java:452:125:452:132 | source(...) : Object | LogInjectionTest.java:452:116:452:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:453:110:453:117 | source(...) : Object | LogInjectionTest.java:453:101:453:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:454:95:454:102 | source(...) : Object | LogInjectionTest.java:454:86:454:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:455:80:455:87 | source(...) : Object | LogInjectionTest.java:455:71:455:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:456:65:456:72 | source(...) : Object | LogInjectionTest.java:456:56:456:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:457:50:457:57 | source(...) : Object | LogInjectionTest.java:457:41:457:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:458:35:458:42 | source(...) : Object | LogInjectionTest.java:458:26:458:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | -| LogInjectionTest.java:459:140:459:147 | source(...) : Object | LogInjectionTest.java:459:131:459:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:460:125:460:132 | source(...) : Object | LogInjectionTest.java:460:116:460:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:461:110:461:117 | source(...) : Object | LogInjectionTest.java:461:101:461:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:462:95:462:102 | source(...) : Object | LogInjectionTest.java:462:86:462:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:463:80:463:87 | source(...) : Object | LogInjectionTest.java:463:71:463:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:464:65:464:72 | source(...) : Object | LogInjectionTest.java:464:56:464:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:465:50:465:57 | source(...) : Object | LogInjectionTest.java:465:41:465:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:466:35:466:42 | source(...) : Object | LogInjectionTest.java:466:26:466:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | -| LogInjectionTest.java:467:155:467:162 | source(...) : Object | LogInjectionTest.java:467:146:467:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:468:140:468:147 | source(...) : Object | LogInjectionTest.java:468:131:468:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:469:125:469:132 | source(...) : Object | LogInjectionTest.java:469:116:469:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:470:110:470:117 | source(...) : Object | LogInjectionTest.java:470:101:470:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:471:95:471:102 | source(...) : Object | LogInjectionTest.java:471:86:471:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:472:80:472:87 | source(...) : Object | LogInjectionTest.java:472:71:472:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:473:65:473:72 | source(...) : Object | LogInjectionTest.java:473:56:473:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:474:50:474:57 | source(...) : Object | LogInjectionTest.java:474:41:474:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:475:35:475:42 | source(...) : Object | LogInjectionTest.java:475:26:475:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | -| LogInjectionTest.java:476:170:476:177 | source(...) : Object | LogInjectionTest.java:476:161:476:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:477:155:477:162 | source(...) : Object | LogInjectionTest.java:477:146:477:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:478:140:478:147 | source(...) : Object | LogInjectionTest.java:478:131:478:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:479:125:479:132 | source(...) : Object | LogInjectionTest.java:479:116:479:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:480:110:480:117 | source(...) : Object | LogInjectionTest.java:480:101:480:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:481:95:481:102 | source(...) : Object | LogInjectionTest.java:481:86:481:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:482:80:482:87 | source(...) : Object | LogInjectionTest.java:482:71:482:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:483:65:483:72 | source(...) : Object | LogInjectionTest.java:483:56:483:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:484:50:484:57 | source(...) : Object | LogInjectionTest.java:484:41:484:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:485:35:485:42 | source(...) : Object | LogInjectionTest.java:485:26:485:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | -| LogInjectionTest.java:486:35:486:42 | source(...) : Object | LogInjectionTest.java:486:26:486:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | -| LogInjectionTest.java:487:55:487:62 | source(...) : Object | LogInjectionTest.java:487:41:487:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | -| LogInjectionTest.java:488:35:488:42 | source(...) : Object | LogInjectionTest.java:488:26:488:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:151 | -| LogInjectionTest.java:489:40:489:47 | source(...) : Object | LogInjectionTest.java:489:26:489:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:152 | -| LogInjectionTest.java:490:40:490:47 | source(...) : Object | LogInjectionTest.java:490:26:490:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:153 | -| LogInjectionTest.java:491:41:491:48 | source(...) : Object | LogInjectionTest.java:491:26:491:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:154 | -| LogInjectionTest.java:492:41:492:48 | source(...) : Object | LogInjectionTest.java:492:26:492:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:155 | -| LogInjectionTest.java:493:56:493:63 | source(...) : Object | LogInjectionTest.java:493:41:493:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:156 | -| LogInjectionTest.java:494:56:494:63 | source(...) : Object | LogInjectionTest.java:494:41:494:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:157 | -| LogInjectionTest.java:495:51:495:58 | source(...) : Object | LogInjectionTest.java:495:41:495:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:158 | -| LogInjectionTest.java:496:59:496:66 | source(...) : Object | LogInjectionTest.java:496:41:496:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:159 | -| LogInjectionTest.java:497:59:497:66 | source(...) : Object | LogInjectionTest.java:497:41:497:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:160 | -| LogInjectionTest.java:499:50:499:57 | source(...) : Object | LogInjectionTest.java:499:41:499:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:161 | -| LogInjectionTest.java:500:50:500:57 | source(...) : Object | LogInjectionTest.java:500:41:500:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:171 | -| LogInjectionTest.java:501:56:501:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:501:56:501:78 | new Object[] | provenance | Sink:MaD:171 | -| LogInjectionTest.java:501:70:501:77 | source(...) : Object | LogInjectionTest.java:501:56:501:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:502:65:502:72 | source(...) : Object | LogInjectionTest.java:502:56:502:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | -| LogInjectionTest.java:503:50:503:57 | source(...) : Object | LogInjectionTest.java:503:41:503:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | -| LogInjectionTest.java:504:80:504:87 | source(...) : Object | LogInjectionTest.java:504:71:504:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:163 | -| LogInjectionTest.java:505:65:505:72 | source(...) : Object | LogInjectionTest.java:505:56:505:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:163 | -| LogInjectionTest.java:506:50:506:57 | source(...) : Object | LogInjectionTest.java:506:41:506:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:163 | -| LogInjectionTest.java:507:95:507:102 | source(...) : Object | LogInjectionTest.java:507:86:507:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | -| LogInjectionTest.java:508:80:508:87 | source(...) : Object | LogInjectionTest.java:508:71:508:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | -| LogInjectionTest.java:509:65:509:72 | source(...) : Object | LogInjectionTest.java:509:56:509:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | -| LogInjectionTest.java:510:50:510:57 | source(...) : Object | LogInjectionTest.java:510:41:510:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | -| LogInjectionTest.java:511:110:511:117 | source(...) : Object | LogInjectionTest.java:511:101:511:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | -| LogInjectionTest.java:512:95:512:102 | source(...) : Object | LogInjectionTest.java:512:86:512:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | -| LogInjectionTest.java:513:80:513:87 | source(...) : Object | LogInjectionTest.java:513:71:513:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | -| LogInjectionTest.java:514:65:514:72 | source(...) : Object | LogInjectionTest.java:514:56:514:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | -| LogInjectionTest.java:515:50:515:57 | source(...) : Object | LogInjectionTest.java:515:41:515:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | -| LogInjectionTest.java:516:125:516:132 | source(...) : Object | LogInjectionTest.java:516:116:516:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | -| LogInjectionTest.java:517:110:517:117 | source(...) : Object | LogInjectionTest.java:517:101:517:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | -| LogInjectionTest.java:518:95:518:102 | source(...) : Object | LogInjectionTest.java:518:86:518:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | -| LogInjectionTest.java:519:80:519:87 | source(...) : Object | LogInjectionTest.java:519:71:519:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | -| LogInjectionTest.java:520:65:520:72 | source(...) : Object | LogInjectionTest.java:520:56:520:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | -| LogInjectionTest.java:521:50:521:57 | source(...) : Object | LogInjectionTest.java:521:41:521:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | -| LogInjectionTest.java:522:140:522:147 | source(...) : Object | LogInjectionTest.java:522:131:522:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:523:125:523:132 | source(...) : Object | LogInjectionTest.java:523:116:523:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:524:110:524:117 | source(...) : Object | LogInjectionTest.java:524:101:524:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:525:95:525:102 | source(...) : Object | LogInjectionTest.java:525:86:525:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:526:80:526:87 | source(...) : Object | LogInjectionTest.java:526:71:526:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:527:65:527:72 | source(...) : Object | LogInjectionTest.java:527:56:527:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:528:50:528:57 | source(...) : Object | LogInjectionTest.java:528:41:528:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | -| LogInjectionTest.java:529:155:529:162 | source(...) : Object | LogInjectionTest.java:529:146:529:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:530:140:530:147 | source(...) : Object | LogInjectionTest.java:530:131:530:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:531:125:531:132 | source(...) : Object | LogInjectionTest.java:531:116:531:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:532:110:532:117 | source(...) : Object | LogInjectionTest.java:532:101:532:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:533:95:533:102 | source(...) : Object | LogInjectionTest.java:533:86:533:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:534:80:534:87 | source(...) : Object | LogInjectionTest.java:534:71:534:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:535:65:535:72 | source(...) : Object | LogInjectionTest.java:535:56:535:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:536:50:536:57 | source(...) : Object | LogInjectionTest.java:536:41:536:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | -| LogInjectionTest.java:537:170:537:177 | source(...) : Object | LogInjectionTest.java:537:161:537:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:538:155:538:162 | source(...) : Object | LogInjectionTest.java:538:146:538:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:539:140:539:147 | source(...) : Object | LogInjectionTest.java:539:131:539:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:540:125:540:132 | source(...) : Object | LogInjectionTest.java:540:116:540:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:541:110:541:117 | source(...) : Object | LogInjectionTest.java:541:101:541:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:542:95:542:102 | source(...) : Object | LogInjectionTest.java:542:86:542:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:543:80:543:87 | source(...) : Object | LogInjectionTest.java:543:71:543:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:544:65:544:72 | source(...) : Object | LogInjectionTest.java:544:56:544:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:545:50:545:57 | source(...) : Object | LogInjectionTest.java:545:41:545:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | -| LogInjectionTest.java:546:185:546:192 | source(...) : Object | LogInjectionTest.java:546:176:546:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:547:170:547:177 | source(...) : Object | LogInjectionTest.java:547:161:547:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:548:155:548:162 | source(...) : Object | LogInjectionTest.java:548:146:548:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:549:140:549:147 | source(...) : Object | LogInjectionTest.java:549:131:549:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:550:125:550:132 | source(...) : Object | LogInjectionTest.java:550:116:550:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:551:110:551:117 | source(...) : Object | LogInjectionTest.java:551:101:551:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:552:95:552:102 | source(...) : Object | LogInjectionTest.java:552:86:552:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:553:80:553:87 | source(...) : Object | LogInjectionTest.java:553:71:553:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:554:65:554:72 | source(...) : Object | LogInjectionTest.java:554:56:554:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:555:50:555:57 | source(...) : Object | LogInjectionTest.java:555:41:555:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | -| LogInjectionTest.java:556:50:556:57 | source(...) : Object | LogInjectionTest.java:556:41:556:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | -| LogInjectionTest.java:557:70:557:77 | source(...) : Object | LogInjectionTest.java:557:56:557:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | -| LogInjectionTest.java:558:50:558:57 | source(...) : Object | LogInjectionTest.java:558:41:558:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:172 | -| LogInjectionTest.java:559:55:559:62 | source(...) : Object | LogInjectionTest.java:559:41:559:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:173 | -| LogInjectionTest.java:560:55:560:62 | source(...) : Object | LogInjectionTest.java:560:41:560:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:174 | -| LogInjectionTest.java:561:44:561:51 | source(...) : Object | LogInjectionTest.java:561:26:561:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:177 | -| LogInjectionTest.java:562:44:562:51 | source(...) : Object | LogInjectionTest.java:562:26:562:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:178 | -| LogInjectionTest.java:563:36:563:43 | source(...) : Object | LogInjectionTest.java:563:26:563:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:175 | -| LogInjectionTest.java:564:36:564:43 | source(...) : Object | LogInjectionTest.java:564:26:564:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:176 | -| LogInjectionTest.java:567:35:567:42 | source(...) : Object | LogInjectionTest.java:567:26:567:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:179 | -| LogInjectionTest.java:568:35:568:42 | source(...) : Object | LogInjectionTest.java:568:26:568:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:189 | -| LogInjectionTest.java:569:41:569:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:569:41:569:63 | new Object[] | provenance | Sink:MaD:189 | -| LogInjectionTest.java:569:55:569:62 | source(...) : Object | LogInjectionTest.java:569:41:569:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:570:50:570:57 | source(...) : Object | LogInjectionTest.java:570:41:570:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | -| LogInjectionTest.java:571:35:571:42 | source(...) : Object | LogInjectionTest.java:571:26:571:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | -| LogInjectionTest.java:572:65:572:72 | source(...) : Object | LogInjectionTest.java:572:56:572:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:181 | -| LogInjectionTest.java:573:50:573:57 | source(...) : Object | LogInjectionTest.java:573:41:573:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:181 | -| LogInjectionTest.java:574:35:574:42 | source(...) : Object | LogInjectionTest.java:574:26:574:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:181 | -| LogInjectionTest.java:575:80:575:87 | source(...) : Object | LogInjectionTest.java:575:71:575:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | -| LogInjectionTest.java:576:65:576:72 | source(...) : Object | LogInjectionTest.java:576:56:576:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | -| LogInjectionTest.java:577:50:577:57 | source(...) : Object | LogInjectionTest.java:577:41:577:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | -| LogInjectionTest.java:578:35:578:42 | source(...) : Object | LogInjectionTest.java:578:26:578:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | -| LogInjectionTest.java:579:95:579:102 | source(...) : Object | LogInjectionTest.java:579:86:579:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | -| LogInjectionTest.java:580:80:580:87 | source(...) : Object | LogInjectionTest.java:580:71:580:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | -| LogInjectionTest.java:581:65:581:72 | source(...) : Object | LogInjectionTest.java:581:56:581:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | -| LogInjectionTest.java:582:50:582:57 | source(...) : Object | LogInjectionTest.java:582:41:582:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | -| LogInjectionTest.java:583:35:583:42 | source(...) : Object | LogInjectionTest.java:583:26:583:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | -| LogInjectionTest.java:584:110:584:117 | source(...) : Object | LogInjectionTest.java:584:101:584:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | -| LogInjectionTest.java:585:95:585:102 | source(...) : Object | LogInjectionTest.java:585:86:585:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | -| LogInjectionTest.java:586:80:586:87 | source(...) : Object | LogInjectionTest.java:586:71:586:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | -| LogInjectionTest.java:587:65:587:72 | source(...) : Object | LogInjectionTest.java:587:56:587:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | -| LogInjectionTest.java:588:50:588:57 | source(...) : Object | LogInjectionTest.java:588:41:588:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | -| LogInjectionTest.java:589:35:589:42 | source(...) : Object | LogInjectionTest.java:589:26:589:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | -| LogInjectionTest.java:590:125:590:132 | source(...) : Object | LogInjectionTest.java:590:116:590:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:591:110:591:117 | source(...) : Object | LogInjectionTest.java:591:101:591:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:592:95:592:102 | source(...) : Object | LogInjectionTest.java:592:86:592:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:593:80:593:87 | source(...) : Object | LogInjectionTest.java:593:71:593:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:594:65:594:72 | source(...) : Object | LogInjectionTest.java:594:56:594:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:595:50:595:57 | source(...) : Object | LogInjectionTest.java:595:41:595:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:596:35:596:42 | source(...) : Object | LogInjectionTest.java:596:26:596:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | -| LogInjectionTest.java:597:140:597:147 | source(...) : Object | LogInjectionTest.java:597:131:597:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:598:125:598:132 | source(...) : Object | LogInjectionTest.java:598:116:598:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:599:110:599:117 | source(...) : Object | LogInjectionTest.java:599:101:599:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:600:95:600:102 | source(...) : Object | LogInjectionTest.java:600:86:600:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:601:80:601:87 | source(...) : Object | LogInjectionTest.java:601:71:601:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:602:65:602:72 | source(...) : Object | LogInjectionTest.java:602:56:602:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:603:50:603:57 | source(...) : Object | LogInjectionTest.java:603:41:603:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:604:35:604:42 | source(...) : Object | LogInjectionTest.java:604:26:604:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | -| LogInjectionTest.java:605:155:605:162 | source(...) : Object | LogInjectionTest.java:605:146:605:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:606:140:606:147 | source(...) : Object | LogInjectionTest.java:606:131:606:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:607:125:607:132 | source(...) : Object | LogInjectionTest.java:607:116:607:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:608:110:608:117 | source(...) : Object | LogInjectionTest.java:608:101:608:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:609:95:609:102 | source(...) : Object | LogInjectionTest.java:609:86:609:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:610:80:610:87 | source(...) : Object | LogInjectionTest.java:610:71:610:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:611:65:611:72 | source(...) : Object | LogInjectionTest.java:611:56:611:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:612:50:612:57 | source(...) : Object | LogInjectionTest.java:612:41:612:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:613:35:613:42 | source(...) : Object | LogInjectionTest.java:613:26:613:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | -| LogInjectionTest.java:614:170:614:177 | source(...) : Object | LogInjectionTest.java:614:161:614:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:615:155:615:162 | source(...) : Object | LogInjectionTest.java:615:146:615:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:616:140:616:147 | source(...) : Object | LogInjectionTest.java:616:131:616:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:617:125:617:132 | source(...) : Object | LogInjectionTest.java:617:116:617:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:618:110:618:117 | source(...) : Object | LogInjectionTest.java:618:101:618:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:619:95:619:102 | source(...) : Object | LogInjectionTest.java:619:86:619:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:620:80:620:87 | source(...) : Object | LogInjectionTest.java:620:71:620:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:621:65:621:72 | source(...) : Object | LogInjectionTest.java:621:56:621:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:622:50:622:57 | source(...) : Object | LogInjectionTest.java:622:41:622:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:623:35:623:42 | source(...) : Object | LogInjectionTest.java:623:26:623:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | -| LogInjectionTest.java:624:35:624:42 | source(...) : Object | LogInjectionTest.java:624:26:624:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | -| LogInjectionTest.java:625:55:625:62 | source(...) : Object | LogInjectionTest.java:625:41:625:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | -| LogInjectionTest.java:626:35:626:42 | source(...) : Object | LogInjectionTest.java:626:26:626:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:190 | -| LogInjectionTest.java:627:40:627:47 | source(...) : Object | LogInjectionTest.java:627:26:627:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:191 | -| LogInjectionTest.java:628:40:628:47 | source(...) : Object | LogInjectionTest.java:628:26:628:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:192 | -| LogInjectionTest.java:629:40:629:47 | source(...) : Object | LogInjectionTest.java:629:25:629:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:193 | -| LogInjectionTest.java:630:40:630:47 | source(...) : Object | LogInjectionTest.java:630:25:630:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:194 | -| LogInjectionTest.java:631:55:631:62 | source(...) : Object | LogInjectionTest.java:631:40:631:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:195 | -| LogInjectionTest.java:632:55:632:62 | source(...) : Object | LogInjectionTest.java:632:40:632:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:196 | -| LogInjectionTest.java:633:50:633:57 | source(...) : Object | LogInjectionTest.java:633:40:633:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:197 | -| LogInjectionTest.java:634:58:634:65 | source(...) : Object | LogInjectionTest.java:634:40:634:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:198 | -| LogInjectionTest.java:635:58:635:65 | source(...) : Object | LogInjectionTest.java:635:40:635:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:199 | -| LogInjectionTest.java:637:49:637:56 | source(...) : Object | LogInjectionTest.java:637:40:637:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:200 | -| LogInjectionTest.java:638:49:638:56 | source(...) : Object | LogInjectionTest.java:638:40:638:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:210 | -| LogInjectionTest.java:639:55:639:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:639:55:639:77 | new Object[] | provenance | Sink:MaD:210 | -| LogInjectionTest.java:639:69:639:76 | source(...) : Object | LogInjectionTest.java:639:55:639:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:640:64:640:71 | source(...) : Object | LogInjectionTest.java:640:55:640:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | -| LogInjectionTest.java:641:49:641:56 | source(...) : Object | LogInjectionTest.java:641:40:641:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | -| LogInjectionTest.java:642:79:642:86 | source(...) : Object | LogInjectionTest.java:642:70:642:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:202 | -| LogInjectionTest.java:643:64:643:71 | source(...) : Object | LogInjectionTest.java:643:55:643:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:202 | -| LogInjectionTest.java:644:49:644:56 | source(...) : Object | LogInjectionTest.java:644:40:644:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:202 | -| LogInjectionTest.java:645:94:645:101 | source(...) : Object | LogInjectionTest.java:645:85:645:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | -| LogInjectionTest.java:646:79:646:86 | source(...) : Object | LogInjectionTest.java:646:70:646:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | -| LogInjectionTest.java:647:64:647:71 | source(...) : Object | LogInjectionTest.java:647:55:647:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | -| LogInjectionTest.java:648:49:648:56 | source(...) : Object | LogInjectionTest.java:648:40:648:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | -| LogInjectionTest.java:649:109:649:116 | source(...) : Object | LogInjectionTest.java:649:100:649:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | -| LogInjectionTest.java:650:94:650:101 | source(...) : Object | LogInjectionTest.java:650:85:650:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | -| LogInjectionTest.java:651:79:651:86 | source(...) : Object | LogInjectionTest.java:651:70:651:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | -| LogInjectionTest.java:652:64:652:71 | source(...) : Object | LogInjectionTest.java:652:55:652:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | -| LogInjectionTest.java:653:49:653:56 | source(...) : Object | LogInjectionTest.java:653:40:653:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | -| LogInjectionTest.java:654:124:654:131 | source(...) : Object | LogInjectionTest.java:654:115:654:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | -| LogInjectionTest.java:655:109:655:116 | source(...) : Object | LogInjectionTest.java:655:100:655:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | -| LogInjectionTest.java:656:94:656:101 | source(...) : Object | LogInjectionTest.java:656:85:656:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | -| LogInjectionTest.java:657:79:657:86 | source(...) : Object | LogInjectionTest.java:657:70:657:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | -| LogInjectionTest.java:658:64:658:71 | source(...) : Object | LogInjectionTest.java:658:55:658:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | -| LogInjectionTest.java:659:49:659:56 | source(...) : Object | LogInjectionTest.java:659:40:659:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | -| LogInjectionTest.java:660:139:660:146 | source(...) : Object | LogInjectionTest.java:660:130:660:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:661:124:661:131 | source(...) : Object | LogInjectionTest.java:661:115:661:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:662:109:662:116 | source(...) : Object | LogInjectionTest.java:662:100:662:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:663:94:663:101 | source(...) : Object | LogInjectionTest.java:663:85:663:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:664:79:664:86 | source(...) : Object | LogInjectionTest.java:664:70:664:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:665:64:665:71 | source(...) : Object | LogInjectionTest.java:665:55:665:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:666:49:666:56 | source(...) : Object | LogInjectionTest.java:666:40:666:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | -| LogInjectionTest.java:667:154:667:161 | source(...) : Object | LogInjectionTest.java:667:145:667:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:668:139:668:146 | source(...) : Object | LogInjectionTest.java:668:130:668:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:669:124:669:131 | source(...) : Object | LogInjectionTest.java:669:115:669:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:670:109:670:116 | source(...) : Object | LogInjectionTest.java:670:100:670:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:671:94:671:101 | source(...) : Object | LogInjectionTest.java:671:85:671:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:672:79:672:86 | source(...) : Object | LogInjectionTest.java:672:70:672:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:673:64:673:71 | source(...) : Object | LogInjectionTest.java:673:55:673:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:674:49:674:56 | source(...) : Object | LogInjectionTest.java:674:40:674:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | -| LogInjectionTest.java:675:169:675:176 | source(...) : Object | LogInjectionTest.java:675:160:675:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:676:154:676:161 | source(...) : Object | LogInjectionTest.java:676:145:676:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:677:139:677:146 | source(...) : Object | LogInjectionTest.java:677:130:677:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:678:124:678:131 | source(...) : Object | LogInjectionTest.java:678:115:678:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:679:109:679:116 | source(...) : Object | LogInjectionTest.java:679:100:679:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:680:94:680:101 | source(...) : Object | LogInjectionTest.java:680:85:680:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:681:79:681:86 | source(...) : Object | LogInjectionTest.java:681:70:681:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:682:64:682:71 | source(...) : Object | LogInjectionTest.java:682:55:682:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:683:49:683:56 | source(...) : Object | LogInjectionTest.java:683:40:683:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | -| LogInjectionTest.java:684:184:684:191 | source(...) : Object | LogInjectionTest.java:684:175:684:191 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:685:169:685:176 | source(...) : Object | LogInjectionTest.java:685:160:685:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:686:154:686:161 | source(...) : Object | LogInjectionTest.java:686:145:686:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:687:139:687:146 | source(...) : Object | LogInjectionTest.java:687:130:687:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:688:124:688:131 | source(...) : Object | LogInjectionTest.java:688:115:688:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:689:109:689:116 | source(...) : Object | LogInjectionTest.java:689:100:689:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:690:94:690:101 | source(...) : Object | LogInjectionTest.java:690:85:690:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:691:79:691:86 | source(...) : Object | LogInjectionTest.java:691:70:691:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:692:64:692:71 | source(...) : Object | LogInjectionTest.java:692:55:692:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:693:49:693:56 | source(...) : Object | LogInjectionTest.java:693:40:693:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | -| LogInjectionTest.java:694:49:694:56 | source(...) : Object | LogInjectionTest.java:694:40:694:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | -| LogInjectionTest.java:695:69:695:76 | source(...) : Object | LogInjectionTest.java:695:55:695:76 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | -| LogInjectionTest.java:696:49:696:56 | source(...) : Object | LogInjectionTest.java:696:40:696:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:211 | -| LogInjectionTest.java:697:54:697:61 | source(...) : Object | LogInjectionTest.java:697:40:697:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:212 | -| LogInjectionTest.java:698:54:698:61 | source(...) : Object | LogInjectionTest.java:698:40:698:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:213 | -| LogInjectionTest.java:699:43:699:50 | source(...) : Object | LogInjectionTest.java:699:25:699:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:216 | -| LogInjectionTest.java:700:43:700:50 | source(...) : Object | LogInjectionTest.java:700:25:700:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:217 | -| LogInjectionTest.java:701:35:701:42 | source(...) : Object | LogInjectionTest.java:701:25:701:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:214 | -| LogInjectionTest.java:702:35:702:42 | source(...) : Object | LogInjectionTest.java:702:25:702:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:215 | -| LogInjectionTest.java:705:34:705:41 | source(...) : Object | LogInjectionTest.java:705:25:705:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:218 | -| LogInjectionTest.java:706:34:706:41 | source(...) : Object | LogInjectionTest.java:706:25:706:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:228 | -| LogInjectionTest.java:707:40:707:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:707:40:707:62 | new Object[] | provenance | Sink:MaD:228 | -| LogInjectionTest.java:707:54:707:61 | source(...) : Object | LogInjectionTest.java:707:40:707:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:708:49:708:56 | source(...) : Object | LogInjectionTest.java:708:40:708:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | -| LogInjectionTest.java:709:34:709:41 | source(...) : Object | LogInjectionTest.java:709:25:709:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | -| LogInjectionTest.java:710:64:710:71 | source(...) : Object | LogInjectionTest.java:710:55:710:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:220 | -| LogInjectionTest.java:711:49:711:56 | source(...) : Object | LogInjectionTest.java:711:40:711:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:220 | -| LogInjectionTest.java:712:34:712:41 | source(...) : Object | LogInjectionTest.java:712:25:712:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:220 | -| LogInjectionTest.java:713:79:713:86 | source(...) : Object | LogInjectionTest.java:713:70:713:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | -| LogInjectionTest.java:714:64:714:71 | source(...) : Object | LogInjectionTest.java:714:55:714:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | -| LogInjectionTest.java:715:49:715:56 | source(...) : Object | LogInjectionTest.java:715:40:715:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | -| LogInjectionTest.java:716:34:716:41 | source(...) : Object | LogInjectionTest.java:716:25:716:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | -| LogInjectionTest.java:717:94:717:101 | source(...) : Object | LogInjectionTest.java:717:85:717:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | -| LogInjectionTest.java:718:79:718:86 | source(...) : Object | LogInjectionTest.java:718:70:718:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | -| LogInjectionTest.java:719:64:719:71 | source(...) : Object | LogInjectionTest.java:719:55:719:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | -| LogInjectionTest.java:720:49:720:56 | source(...) : Object | LogInjectionTest.java:720:40:720:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | -| LogInjectionTest.java:721:34:721:41 | source(...) : Object | LogInjectionTest.java:721:25:721:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | -| LogInjectionTest.java:722:109:722:116 | source(...) : Object | LogInjectionTest.java:722:100:722:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | -| LogInjectionTest.java:723:94:723:101 | source(...) : Object | LogInjectionTest.java:723:85:723:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | -| LogInjectionTest.java:724:79:724:86 | source(...) : Object | LogInjectionTest.java:724:70:724:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | -| LogInjectionTest.java:725:64:725:71 | source(...) : Object | LogInjectionTest.java:725:55:725:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | -| LogInjectionTest.java:726:49:726:56 | source(...) : Object | LogInjectionTest.java:726:40:726:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | -| LogInjectionTest.java:727:34:727:41 | source(...) : Object | LogInjectionTest.java:727:25:727:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | -| LogInjectionTest.java:728:124:728:131 | source(...) : Object | LogInjectionTest.java:728:115:728:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:729:109:729:116 | source(...) : Object | LogInjectionTest.java:729:100:729:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:730:94:730:101 | source(...) : Object | LogInjectionTest.java:730:85:730:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:731:79:731:86 | source(...) : Object | LogInjectionTest.java:731:70:731:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:732:64:732:71 | source(...) : Object | LogInjectionTest.java:732:55:732:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:733:49:733:56 | source(...) : Object | LogInjectionTest.java:733:40:733:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:734:34:734:41 | source(...) : Object | LogInjectionTest.java:734:25:734:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | -| LogInjectionTest.java:735:139:735:146 | source(...) : Object | LogInjectionTest.java:735:130:735:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:736:124:736:131 | source(...) : Object | LogInjectionTest.java:736:115:736:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:737:109:737:116 | source(...) : Object | LogInjectionTest.java:737:100:737:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:738:94:738:101 | source(...) : Object | LogInjectionTest.java:738:85:738:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:739:79:739:86 | source(...) : Object | LogInjectionTest.java:739:70:739:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:740:64:740:71 | source(...) : Object | LogInjectionTest.java:740:55:740:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:741:49:741:56 | source(...) : Object | LogInjectionTest.java:741:40:741:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:742:34:742:41 | source(...) : Object | LogInjectionTest.java:742:25:742:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | -| LogInjectionTest.java:743:154:743:161 | source(...) : Object | LogInjectionTest.java:743:145:743:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:744:139:744:146 | source(...) : Object | LogInjectionTest.java:744:130:744:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:745:124:745:131 | source(...) : Object | LogInjectionTest.java:745:115:745:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:746:109:746:116 | source(...) : Object | LogInjectionTest.java:746:100:746:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:747:94:747:101 | source(...) : Object | LogInjectionTest.java:747:85:747:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:748:79:748:86 | source(...) : Object | LogInjectionTest.java:748:70:748:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:749:64:749:71 | source(...) : Object | LogInjectionTest.java:749:55:749:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:750:49:750:56 | source(...) : Object | LogInjectionTest.java:750:40:750:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:751:34:751:41 | source(...) : Object | LogInjectionTest.java:751:25:751:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | -| LogInjectionTest.java:752:169:752:176 | source(...) : Object | LogInjectionTest.java:752:160:752:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:753:154:753:161 | source(...) : Object | LogInjectionTest.java:753:145:753:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:754:139:754:146 | source(...) : Object | LogInjectionTest.java:754:130:754:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:755:124:755:131 | source(...) : Object | LogInjectionTest.java:755:115:755:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:756:109:756:116 | source(...) : Object | LogInjectionTest.java:756:100:756:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:757:94:757:101 | source(...) : Object | LogInjectionTest.java:757:85:757:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:758:79:758:86 | source(...) : Object | LogInjectionTest.java:758:70:758:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:759:64:759:71 | source(...) : Object | LogInjectionTest.java:759:55:759:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:760:49:760:56 | source(...) : Object | LogInjectionTest.java:760:40:760:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:761:34:761:41 | source(...) : Object | LogInjectionTest.java:761:25:761:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | -| LogInjectionTest.java:762:34:762:41 | source(...) : Object | LogInjectionTest.java:762:25:762:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | -| LogInjectionTest.java:763:54:763:61 | source(...) : Object | LogInjectionTest.java:763:40:763:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | -| LogInjectionTest.java:764:34:764:41 | source(...) : Object | LogInjectionTest.java:764:25:764:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:229 | -| LogInjectionTest.java:765:39:765:46 | source(...) : Object | LogInjectionTest.java:765:25:765:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:230 | -| LogInjectionTest.java:766:39:766:46 | source(...) : Object | LogInjectionTest.java:766:25:766:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:231 | -| LogInjectionTest.java:767:53:767:60 | source(...) : Object | LogInjectionTest.java:767:38:767:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:232 | -| LogInjectionTest.java:768:53:768:60 | source(...) : Object | LogInjectionTest.java:768:38:768:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:233 | -| LogInjectionTest.java:769:68:769:75 | source(...) : Object | LogInjectionTest.java:769:53:769:75 | (...)... | provenance | Src:MaD:536 Sink:MaD:234 | -| LogInjectionTest.java:770:68:770:75 | source(...) : Object | LogInjectionTest.java:770:53:770:75 | (...)... | provenance | Src:MaD:536 Sink:MaD:235 | -| LogInjectionTest.java:771:63:771:70 | source(...) : Object | LogInjectionTest.java:771:53:771:70 | (...)... | provenance | Src:MaD:536 Sink:MaD:236 | -| LogInjectionTest.java:772:71:772:78 | source(...) : Object | LogInjectionTest.java:772:53:772:78 | (...)... | provenance | Src:MaD:536 Sink:MaD:237 | -| LogInjectionTest.java:773:71:773:78 | source(...) : Object | LogInjectionTest.java:773:53:773:78 | (...)... | provenance | Src:MaD:536 Sink:MaD:238 | -| LogInjectionTest.java:775:62:775:69 | source(...) : Object | LogInjectionTest.java:775:53:775:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:239 | -| LogInjectionTest.java:776:62:776:69 | source(...) : Object | LogInjectionTest.java:776:53:776:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:249 | -| LogInjectionTest.java:777:68:777:90 | {...} : Object[] [[]] : Object | LogInjectionTest.java:777:68:777:90 | new Object[] | provenance | Sink:MaD:249 | -| LogInjectionTest.java:777:82:777:89 | source(...) : Object | LogInjectionTest.java:777:68:777:90 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:778:77:778:84 | source(...) : Object | LogInjectionTest.java:778:68:778:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | -| LogInjectionTest.java:779:62:779:69 | source(...) : Object | LogInjectionTest.java:779:53:779:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | -| LogInjectionTest.java:780:92:780:99 | source(...) : Object | LogInjectionTest.java:780:83:780:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:241 | -| LogInjectionTest.java:781:77:781:84 | source(...) : Object | LogInjectionTest.java:781:68:781:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:241 | -| LogInjectionTest.java:782:62:782:69 | source(...) : Object | LogInjectionTest.java:782:53:782:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:241 | -| LogInjectionTest.java:783:107:783:114 | source(...) : Object | LogInjectionTest.java:783:98:783:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | -| LogInjectionTest.java:784:92:784:99 | source(...) : Object | LogInjectionTest.java:784:83:784:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | -| LogInjectionTest.java:785:77:785:84 | source(...) : Object | LogInjectionTest.java:785:68:785:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | -| LogInjectionTest.java:786:62:786:69 | source(...) : Object | LogInjectionTest.java:786:53:786:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | -| LogInjectionTest.java:787:122:787:129 | source(...) : Object | LogInjectionTest.java:787:113:787:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | -| LogInjectionTest.java:788:107:788:114 | source(...) : Object | LogInjectionTest.java:788:98:788:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | -| LogInjectionTest.java:789:92:789:99 | source(...) : Object | LogInjectionTest.java:789:83:789:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | -| LogInjectionTest.java:790:77:790:84 | source(...) : Object | LogInjectionTest.java:790:68:790:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | -| LogInjectionTest.java:791:62:791:69 | source(...) : Object | LogInjectionTest.java:791:53:791:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | -| LogInjectionTest.java:792:137:792:144 | source(...) : Object | LogInjectionTest.java:792:128:792:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | -| LogInjectionTest.java:793:122:793:129 | source(...) : Object | LogInjectionTest.java:793:113:793:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | -| LogInjectionTest.java:794:107:794:114 | source(...) : Object | LogInjectionTest.java:794:98:794:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | -| LogInjectionTest.java:795:92:795:99 | source(...) : Object | LogInjectionTest.java:795:83:795:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | -| LogInjectionTest.java:796:77:796:84 | source(...) : Object | LogInjectionTest.java:796:68:796:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | -| LogInjectionTest.java:797:62:797:69 | source(...) : Object | LogInjectionTest.java:797:53:797:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | -| LogInjectionTest.java:798:152:798:159 | source(...) : Object | LogInjectionTest.java:798:143:798:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:799:137:799:144 | source(...) : Object | LogInjectionTest.java:799:128:799:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:800:122:800:129 | source(...) : Object | LogInjectionTest.java:800:113:800:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:801:107:801:114 | source(...) : Object | LogInjectionTest.java:801:98:801:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:802:92:802:99 | source(...) : Object | LogInjectionTest.java:802:83:802:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:803:77:803:84 | source(...) : Object | LogInjectionTest.java:803:68:803:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:804:62:804:69 | source(...) : Object | LogInjectionTest.java:804:53:804:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | -| LogInjectionTest.java:805:167:805:174 | source(...) : Object | LogInjectionTest.java:805:158:805:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:806:152:806:159 | source(...) : Object | LogInjectionTest.java:806:143:806:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:807:137:807:144 | source(...) : Object | LogInjectionTest.java:807:128:807:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:808:122:808:129 | source(...) : Object | LogInjectionTest.java:808:113:808:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:809:107:809:114 | source(...) : Object | LogInjectionTest.java:809:98:809:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:810:92:810:99 | source(...) : Object | LogInjectionTest.java:810:83:810:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:811:77:811:84 | source(...) : Object | LogInjectionTest.java:811:68:811:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:812:62:812:69 | source(...) : Object | LogInjectionTest.java:812:53:812:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | -| LogInjectionTest.java:813:182:813:189 | source(...) : Object | LogInjectionTest.java:813:173:813:189 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:814:167:814:174 | source(...) : Object | LogInjectionTest.java:814:158:814:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:815:152:815:159 | source(...) : Object | LogInjectionTest.java:815:143:815:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:816:137:816:144 | source(...) : Object | LogInjectionTest.java:816:128:816:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:817:122:817:129 | source(...) : Object | LogInjectionTest.java:817:113:817:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:818:107:818:114 | source(...) : Object | LogInjectionTest.java:818:98:818:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:819:92:819:99 | source(...) : Object | LogInjectionTest.java:819:83:819:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:820:77:820:84 | source(...) : Object | LogInjectionTest.java:820:68:820:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:821:62:821:69 | source(...) : Object | LogInjectionTest.java:821:53:821:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | -| LogInjectionTest.java:822:197:822:204 | source(...) : Object | LogInjectionTest.java:822:188:822:204 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:823:182:823:189 | source(...) : Object | LogInjectionTest.java:823:173:823:189 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:824:167:824:174 | source(...) : Object | LogInjectionTest.java:824:158:824:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:825:152:825:159 | source(...) : Object | LogInjectionTest.java:825:143:825:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:826:137:826:144 | source(...) : Object | LogInjectionTest.java:826:128:826:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:827:122:827:129 | source(...) : Object | LogInjectionTest.java:827:113:827:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:828:107:828:114 | source(...) : Object | LogInjectionTest.java:828:98:828:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:829:92:829:99 | source(...) : Object | LogInjectionTest.java:829:83:829:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:830:77:830:84 | source(...) : Object | LogInjectionTest.java:830:68:830:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:831:62:831:69 | source(...) : Object | LogInjectionTest.java:831:53:831:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | -| LogInjectionTest.java:832:62:832:69 | source(...) : Object | LogInjectionTest.java:832:53:832:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | -| LogInjectionTest.java:833:82:833:89 | source(...) : Object | LogInjectionTest.java:833:68:833:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | -| LogInjectionTest.java:834:62:834:69 | source(...) : Object | LogInjectionTest.java:834:53:834:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:250 | -| LogInjectionTest.java:835:67:835:74 | source(...) : Object | LogInjectionTest.java:835:53:835:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:251 | -| LogInjectionTest.java:836:67:836:74 | source(...) : Object | LogInjectionTest.java:836:53:836:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:252 | -| LogInjectionTest.java:837:56:837:63 | source(...) : Object | LogInjectionTest.java:837:38:837:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:255 | -| LogInjectionTest.java:838:56:838:63 | source(...) : Object | LogInjectionTest.java:838:38:838:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:256 | -| LogInjectionTest.java:839:48:839:55 | source(...) : Object | LogInjectionTest.java:839:38:839:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:253 | -| LogInjectionTest.java:840:48:840:55 | source(...) : Object | LogInjectionTest.java:840:38:840:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:254 | -| LogInjectionTest.java:843:47:843:54 | source(...) : Object | LogInjectionTest.java:843:38:843:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:257 | -| LogInjectionTest.java:844:47:844:54 | source(...) : Object | LogInjectionTest.java:844:38:844:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:267 | -| LogInjectionTest.java:845:53:845:75 | {...} : Object[] [[]] : Object | LogInjectionTest.java:845:53:845:75 | new Object[] | provenance | Sink:MaD:267 | -| LogInjectionTest.java:845:67:845:74 | source(...) : Object | LogInjectionTest.java:845:53:845:75 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:846:62:846:69 | source(...) : Object | LogInjectionTest.java:846:53:846:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | -| LogInjectionTest.java:847:47:847:54 | source(...) : Object | LogInjectionTest.java:847:38:847:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | -| LogInjectionTest.java:848:77:848:84 | source(...) : Object | LogInjectionTest.java:848:68:848:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:259 | -| LogInjectionTest.java:849:62:849:69 | source(...) : Object | LogInjectionTest.java:849:53:849:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:259 | -| LogInjectionTest.java:850:47:850:54 | source(...) : Object | LogInjectionTest.java:850:38:850:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:259 | -| LogInjectionTest.java:851:92:851:99 | source(...) : Object | LogInjectionTest.java:851:83:851:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | -| LogInjectionTest.java:852:77:852:84 | source(...) : Object | LogInjectionTest.java:852:68:852:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | -| LogInjectionTest.java:853:62:853:69 | source(...) : Object | LogInjectionTest.java:853:53:853:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | -| LogInjectionTest.java:854:47:854:54 | source(...) : Object | LogInjectionTest.java:854:38:854:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | -| LogInjectionTest.java:855:107:855:114 | source(...) : Object | LogInjectionTest.java:855:98:855:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | -| LogInjectionTest.java:856:92:856:99 | source(...) : Object | LogInjectionTest.java:856:83:856:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | -| LogInjectionTest.java:857:77:857:84 | source(...) : Object | LogInjectionTest.java:857:68:857:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | -| LogInjectionTest.java:858:62:858:69 | source(...) : Object | LogInjectionTest.java:858:53:858:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | -| LogInjectionTest.java:859:47:859:54 | source(...) : Object | LogInjectionTest.java:859:38:859:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | -| LogInjectionTest.java:860:122:860:129 | source(...) : Object | LogInjectionTest.java:860:113:860:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | -| LogInjectionTest.java:861:107:861:114 | source(...) : Object | LogInjectionTest.java:861:98:861:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | -| LogInjectionTest.java:862:92:862:99 | source(...) : Object | LogInjectionTest.java:862:83:862:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | -| LogInjectionTest.java:863:77:863:84 | source(...) : Object | LogInjectionTest.java:863:68:863:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | -| LogInjectionTest.java:864:62:864:69 | source(...) : Object | LogInjectionTest.java:864:53:864:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | -| LogInjectionTest.java:865:47:865:54 | source(...) : Object | LogInjectionTest.java:865:38:865:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | -| LogInjectionTest.java:866:137:866:144 | source(...) : Object | LogInjectionTest.java:866:128:866:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:867:122:867:129 | source(...) : Object | LogInjectionTest.java:867:113:867:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:868:107:868:114 | source(...) : Object | LogInjectionTest.java:868:98:868:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:869:92:869:99 | source(...) : Object | LogInjectionTest.java:869:83:869:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:870:77:870:84 | source(...) : Object | LogInjectionTest.java:870:68:870:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:871:62:871:69 | source(...) : Object | LogInjectionTest.java:871:53:871:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:872:47:872:54 | source(...) : Object | LogInjectionTest.java:872:38:872:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | -| LogInjectionTest.java:873:152:873:159 | source(...) : Object | LogInjectionTest.java:873:143:873:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:874:137:874:144 | source(...) : Object | LogInjectionTest.java:874:128:874:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:875:122:875:129 | source(...) : Object | LogInjectionTest.java:875:113:875:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:876:107:876:114 | source(...) : Object | LogInjectionTest.java:876:98:876:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:877:92:877:99 | source(...) : Object | LogInjectionTest.java:877:83:877:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:878:77:878:84 | source(...) : Object | LogInjectionTest.java:878:68:878:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:879:62:879:69 | source(...) : Object | LogInjectionTest.java:879:53:879:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:880:47:880:54 | source(...) : Object | LogInjectionTest.java:880:38:880:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | -| LogInjectionTest.java:881:167:881:174 | source(...) : Object | LogInjectionTest.java:881:158:881:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:882:152:882:159 | source(...) : Object | LogInjectionTest.java:882:143:882:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:883:137:883:144 | source(...) : Object | LogInjectionTest.java:883:128:883:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:884:122:884:129 | source(...) : Object | LogInjectionTest.java:884:113:884:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:885:107:885:114 | source(...) : Object | LogInjectionTest.java:885:98:885:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:886:92:886:99 | source(...) : Object | LogInjectionTest.java:886:83:886:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:887:77:887:84 | source(...) : Object | LogInjectionTest.java:887:68:887:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:888:62:888:69 | source(...) : Object | LogInjectionTest.java:888:53:888:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:889:47:889:54 | source(...) : Object | LogInjectionTest.java:889:38:889:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | -| LogInjectionTest.java:890:182:890:189 | source(...) : Object | LogInjectionTest.java:890:173:890:189 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:891:167:891:174 | source(...) : Object | LogInjectionTest.java:891:158:891:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:892:152:892:159 | source(...) : Object | LogInjectionTest.java:892:143:892:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:893:137:893:144 | source(...) : Object | LogInjectionTest.java:893:128:893:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:894:122:894:129 | source(...) : Object | LogInjectionTest.java:894:113:894:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:895:107:895:114 | source(...) : Object | LogInjectionTest.java:895:98:895:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:896:92:896:99 | source(...) : Object | LogInjectionTest.java:896:83:896:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:897:77:897:84 | source(...) : Object | LogInjectionTest.java:897:68:897:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:898:62:898:69 | source(...) : Object | LogInjectionTest.java:898:53:898:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:899:47:899:54 | source(...) : Object | LogInjectionTest.java:899:38:899:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | -| LogInjectionTest.java:900:47:900:54 | source(...) : Object | LogInjectionTest.java:900:38:900:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | -| LogInjectionTest.java:901:67:901:74 | source(...) : Object | LogInjectionTest.java:901:53:901:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | -| LogInjectionTest.java:902:47:902:54 | source(...) : Object | LogInjectionTest.java:902:38:902:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:268 | -| LogInjectionTest.java:903:52:903:59 | source(...) : Object | LogInjectionTest.java:903:38:903:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:269 | -| LogInjectionTest.java:904:52:904:59 | source(...) : Object | LogInjectionTest.java:904:38:904:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:270 | -| LogInjectionTest.java:905:41:905:48 | source(...) : Object | LogInjectionTest.java:905:26:905:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:274 | -| LogInjectionTest.java:906:41:906:48 | source(...) : Object | LogInjectionTest.java:906:26:906:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:275 | -| LogInjectionTest.java:907:56:907:63 | source(...) : Object | LogInjectionTest.java:907:41:907:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:276 | -| LogInjectionTest.java:908:56:908:63 | source(...) : Object | LogInjectionTest.java:908:41:908:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:277 | -| LogInjectionTest.java:909:51:909:58 | source(...) : Object | LogInjectionTest.java:909:41:909:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:278 | -| LogInjectionTest.java:910:59:910:66 | source(...) : Object | LogInjectionTest.java:910:41:910:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:279 | -| LogInjectionTest.java:911:59:911:66 | source(...) : Object | LogInjectionTest.java:911:41:911:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:280 | -| LogInjectionTest.java:913:50:913:57 | source(...) : Object | LogInjectionTest.java:913:41:913:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:281 | -| LogInjectionTest.java:914:50:914:57 | source(...) : Object | LogInjectionTest.java:914:41:914:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:291 | -| LogInjectionTest.java:915:56:915:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:915:56:915:78 | new Object[] | provenance | Sink:MaD:291 | -| LogInjectionTest.java:915:70:915:77 | source(...) : Object | LogInjectionTest.java:915:56:915:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:916:65:916:72 | source(...) : Object | LogInjectionTest.java:916:56:916:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | -| LogInjectionTest.java:917:50:917:57 | source(...) : Object | LogInjectionTest.java:917:41:917:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | -| LogInjectionTest.java:918:80:918:87 | source(...) : Object | LogInjectionTest.java:918:71:918:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:283 | -| LogInjectionTest.java:919:65:919:72 | source(...) : Object | LogInjectionTest.java:919:56:919:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:283 | -| LogInjectionTest.java:920:50:920:57 | source(...) : Object | LogInjectionTest.java:920:41:920:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:283 | -| LogInjectionTest.java:921:95:921:102 | source(...) : Object | LogInjectionTest.java:921:86:921:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | -| LogInjectionTest.java:922:80:922:87 | source(...) : Object | LogInjectionTest.java:922:71:922:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | -| LogInjectionTest.java:923:65:923:72 | source(...) : Object | LogInjectionTest.java:923:56:923:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | -| LogInjectionTest.java:924:50:924:57 | source(...) : Object | LogInjectionTest.java:924:41:924:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | -| LogInjectionTest.java:925:110:925:117 | source(...) : Object | LogInjectionTest.java:925:101:925:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | -| LogInjectionTest.java:926:95:926:102 | source(...) : Object | LogInjectionTest.java:926:86:926:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | -| LogInjectionTest.java:927:80:927:87 | source(...) : Object | LogInjectionTest.java:927:71:927:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | -| LogInjectionTest.java:928:65:928:72 | source(...) : Object | LogInjectionTest.java:928:56:928:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | -| LogInjectionTest.java:929:50:929:57 | source(...) : Object | LogInjectionTest.java:929:41:929:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | -| LogInjectionTest.java:930:125:930:132 | source(...) : Object | LogInjectionTest.java:930:116:930:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | -| LogInjectionTest.java:931:110:931:117 | source(...) : Object | LogInjectionTest.java:931:101:931:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | -| LogInjectionTest.java:932:95:932:102 | source(...) : Object | LogInjectionTest.java:932:86:932:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | -| LogInjectionTest.java:933:80:933:87 | source(...) : Object | LogInjectionTest.java:933:71:933:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | -| LogInjectionTest.java:934:65:934:72 | source(...) : Object | LogInjectionTest.java:934:56:934:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | -| LogInjectionTest.java:935:50:935:57 | source(...) : Object | LogInjectionTest.java:935:41:935:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | -| LogInjectionTest.java:936:140:936:147 | source(...) : Object | LogInjectionTest.java:936:131:936:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:937:125:937:132 | source(...) : Object | LogInjectionTest.java:937:116:937:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:938:110:938:117 | source(...) : Object | LogInjectionTest.java:938:101:938:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:939:95:939:102 | source(...) : Object | LogInjectionTest.java:939:86:939:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:940:80:940:87 | source(...) : Object | LogInjectionTest.java:940:71:940:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:941:65:941:72 | source(...) : Object | LogInjectionTest.java:941:56:941:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:942:50:942:57 | source(...) : Object | LogInjectionTest.java:942:41:942:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | -| LogInjectionTest.java:943:155:943:162 | source(...) : Object | LogInjectionTest.java:943:146:943:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:944:140:944:147 | source(...) : Object | LogInjectionTest.java:944:131:944:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:945:125:945:132 | source(...) : Object | LogInjectionTest.java:945:116:945:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:946:110:946:117 | source(...) : Object | LogInjectionTest.java:946:101:946:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:947:95:947:102 | source(...) : Object | LogInjectionTest.java:947:86:947:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:948:80:948:87 | source(...) : Object | LogInjectionTest.java:948:71:948:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:949:65:949:72 | source(...) : Object | LogInjectionTest.java:949:56:949:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:950:50:950:57 | source(...) : Object | LogInjectionTest.java:950:41:950:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | -| LogInjectionTest.java:951:170:951:177 | source(...) : Object | LogInjectionTest.java:951:161:951:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:952:155:952:162 | source(...) : Object | LogInjectionTest.java:952:146:952:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:953:140:953:147 | source(...) : Object | LogInjectionTest.java:953:131:953:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:954:125:954:132 | source(...) : Object | LogInjectionTest.java:954:116:954:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:955:110:955:117 | source(...) : Object | LogInjectionTest.java:955:101:955:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:956:95:956:102 | source(...) : Object | LogInjectionTest.java:956:86:956:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:957:80:957:87 | source(...) : Object | LogInjectionTest.java:957:71:957:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:958:65:958:72 | source(...) : Object | LogInjectionTest.java:958:56:958:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:959:50:959:57 | source(...) : Object | LogInjectionTest.java:959:41:959:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | -| LogInjectionTest.java:960:185:960:192 | source(...) : Object | LogInjectionTest.java:960:176:960:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:961:170:961:177 | source(...) : Object | LogInjectionTest.java:961:161:961:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:962:155:962:162 | source(...) : Object | LogInjectionTest.java:962:146:962:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:963:140:963:147 | source(...) : Object | LogInjectionTest.java:963:131:963:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:964:125:964:132 | source(...) : Object | LogInjectionTest.java:964:116:964:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:965:110:965:117 | source(...) : Object | LogInjectionTest.java:965:101:965:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:966:95:966:102 | source(...) : Object | LogInjectionTest.java:966:86:966:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:967:80:967:87 | source(...) : Object | LogInjectionTest.java:967:71:967:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:968:65:968:72 | source(...) : Object | LogInjectionTest.java:968:56:968:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:969:50:969:57 | source(...) : Object | LogInjectionTest.java:969:41:969:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | -| LogInjectionTest.java:970:50:970:57 | source(...) : Object | LogInjectionTest.java:970:41:970:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | -| LogInjectionTest.java:971:70:971:77 | source(...) : Object | LogInjectionTest.java:971:56:971:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | -| LogInjectionTest.java:972:50:972:57 | source(...) : Object | LogInjectionTest.java:972:41:972:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:292 | -| LogInjectionTest.java:973:55:973:62 | source(...) : Object | LogInjectionTest.java:973:41:973:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:293 | -| LogInjectionTest.java:974:55:974:62 | source(...) : Object | LogInjectionTest.java:974:41:974:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:294 | -| LogInjectionTest.java:975:44:975:51 | source(...) : Object | LogInjectionTest.java:975:26:975:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:297 | -| LogInjectionTest.java:976:44:976:51 | source(...) : Object | LogInjectionTest.java:976:26:976:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:298 | -| LogInjectionTest.java:977:36:977:43 | source(...) : Object | LogInjectionTest.java:977:26:977:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:295 | -| LogInjectionTest.java:978:36:978:43 | source(...) : Object | LogInjectionTest.java:978:26:978:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:296 | -| LogInjectionTest.java:981:35:981:42 | source(...) : Object | LogInjectionTest.java:981:26:981:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:299 | -| LogInjectionTest.java:982:35:982:42 | source(...) : Object | LogInjectionTest.java:982:26:982:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:309 | -| LogInjectionTest.java:983:41:983:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:983:41:983:63 | new Object[] | provenance | Sink:MaD:309 | -| LogInjectionTest.java:983:55:983:62 | source(...) : Object | LogInjectionTest.java:983:41:983:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:984:50:984:57 | source(...) : Object | LogInjectionTest.java:984:41:984:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | -| LogInjectionTest.java:985:35:985:42 | source(...) : Object | LogInjectionTest.java:985:26:985:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | -| LogInjectionTest.java:986:65:986:72 | source(...) : Object | LogInjectionTest.java:986:56:986:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:301 | -| LogInjectionTest.java:987:50:987:57 | source(...) : Object | LogInjectionTest.java:987:41:987:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:301 | -| LogInjectionTest.java:988:35:988:42 | source(...) : Object | LogInjectionTest.java:988:26:988:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:301 | -| LogInjectionTest.java:989:80:989:87 | source(...) : Object | LogInjectionTest.java:989:71:989:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | -| LogInjectionTest.java:990:65:990:72 | source(...) : Object | LogInjectionTest.java:990:56:990:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | -| LogInjectionTest.java:991:50:991:57 | source(...) : Object | LogInjectionTest.java:991:41:991:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | -| LogInjectionTest.java:992:35:992:42 | source(...) : Object | LogInjectionTest.java:992:26:992:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | -| LogInjectionTest.java:993:95:993:102 | source(...) : Object | LogInjectionTest.java:993:86:993:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | -| LogInjectionTest.java:994:80:994:87 | source(...) : Object | LogInjectionTest.java:994:71:994:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | -| LogInjectionTest.java:995:65:995:72 | source(...) : Object | LogInjectionTest.java:995:56:995:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | -| LogInjectionTest.java:996:50:996:57 | source(...) : Object | LogInjectionTest.java:996:41:996:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | -| LogInjectionTest.java:997:35:997:42 | source(...) : Object | LogInjectionTest.java:997:26:997:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | -| LogInjectionTest.java:998:110:998:117 | source(...) : Object | LogInjectionTest.java:998:101:998:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | -| LogInjectionTest.java:999:95:999:102 | source(...) : Object | LogInjectionTest.java:999:86:999:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | -| LogInjectionTest.java:1000:80:1000:87 | source(...) : Object | LogInjectionTest.java:1000:71:1000:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | -| LogInjectionTest.java:1001:65:1001:72 | source(...) : Object | LogInjectionTest.java:1001:56:1001:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | -| LogInjectionTest.java:1002:50:1002:57 | source(...) : Object | LogInjectionTest.java:1002:41:1002:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | -| LogInjectionTest.java:1003:35:1003:42 | source(...) : Object | LogInjectionTest.java:1003:26:1003:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | -| LogInjectionTest.java:1004:125:1004:132 | source(...) : Object | LogInjectionTest.java:1004:116:1004:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1005:110:1005:117 | source(...) : Object | LogInjectionTest.java:1005:101:1005:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1006:95:1006:102 | source(...) : Object | LogInjectionTest.java:1006:86:1006:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1007:80:1007:87 | source(...) : Object | LogInjectionTest.java:1007:71:1007:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1008:65:1008:72 | source(...) : Object | LogInjectionTest.java:1008:56:1008:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1009:50:1009:57 | source(...) : Object | LogInjectionTest.java:1009:41:1009:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1010:35:1010:42 | source(...) : Object | LogInjectionTest.java:1010:26:1010:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | -| LogInjectionTest.java:1011:140:1011:147 | source(...) : Object | LogInjectionTest.java:1011:131:1011:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1012:125:1012:132 | source(...) : Object | LogInjectionTest.java:1012:116:1012:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1013:110:1013:117 | source(...) : Object | LogInjectionTest.java:1013:101:1013:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1014:95:1014:102 | source(...) : Object | LogInjectionTest.java:1014:86:1014:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1015:80:1015:87 | source(...) : Object | LogInjectionTest.java:1015:71:1015:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1016:65:1016:72 | source(...) : Object | LogInjectionTest.java:1016:56:1016:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1017:50:1017:57 | source(...) : Object | LogInjectionTest.java:1017:41:1017:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1018:35:1018:42 | source(...) : Object | LogInjectionTest.java:1018:26:1018:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | -| LogInjectionTest.java:1019:155:1019:162 | source(...) : Object | LogInjectionTest.java:1019:146:1019:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1020:140:1020:147 | source(...) : Object | LogInjectionTest.java:1020:131:1020:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1021:125:1021:132 | source(...) : Object | LogInjectionTest.java:1021:116:1021:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1022:110:1022:117 | source(...) : Object | LogInjectionTest.java:1022:101:1022:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1023:95:1023:102 | source(...) : Object | LogInjectionTest.java:1023:86:1023:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1024:80:1024:87 | source(...) : Object | LogInjectionTest.java:1024:71:1024:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1025:65:1025:72 | source(...) : Object | LogInjectionTest.java:1025:56:1025:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1026:50:1026:57 | source(...) : Object | LogInjectionTest.java:1026:41:1026:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1027:35:1027:42 | source(...) : Object | LogInjectionTest.java:1027:26:1027:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | -| LogInjectionTest.java:1028:170:1028:177 | source(...) : Object | LogInjectionTest.java:1028:161:1028:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1029:155:1029:162 | source(...) : Object | LogInjectionTest.java:1029:146:1029:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1030:140:1030:147 | source(...) : Object | LogInjectionTest.java:1030:131:1030:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1031:125:1031:132 | source(...) : Object | LogInjectionTest.java:1031:116:1031:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1032:110:1032:117 | source(...) : Object | LogInjectionTest.java:1032:101:1032:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1033:95:1033:102 | source(...) : Object | LogInjectionTest.java:1033:86:1033:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1034:80:1034:87 | source(...) : Object | LogInjectionTest.java:1034:71:1034:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1035:65:1035:72 | source(...) : Object | LogInjectionTest.java:1035:56:1035:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1036:50:1036:57 | source(...) : Object | LogInjectionTest.java:1036:41:1036:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1037:35:1037:42 | source(...) : Object | LogInjectionTest.java:1037:26:1037:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | -| LogInjectionTest.java:1038:35:1038:42 | source(...) : Object | LogInjectionTest.java:1038:26:1038:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | -| LogInjectionTest.java:1039:55:1039:62 | source(...) : Object | LogInjectionTest.java:1039:41:1039:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | -| LogInjectionTest.java:1040:35:1040:42 | source(...) : Object | LogInjectionTest.java:1040:26:1040:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:310 | -| LogInjectionTest.java:1041:40:1041:47 | source(...) : Object | LogInjectionTest.java:1041:26:1041:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:311 | -| LogInjectionTest.java:1042:40:1042:47 | source(...) : Object | LogInjectionTest.java:1042:26:1042:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:312 | -| LogInjectionTest.java:1043:40:1043:47 | source(...) : Object | LogInjectionTest.java:1043:25:1043:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:321 | -| LogInjectionTest.java:1044:40:1044:47 | source(...) : Object | LogInjectionTest.java:1044:25:1044:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:322 | -| LogInjectionTest.java:1045:55:1045:62 | source(...) : Object | LogInjectionTest.java:1045:40:1045:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:323 | -| LogInjectionTest.java:1046:55:1046:62 | source(...) : Object | LogInjectionTest.java:1046:40:1046:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:324 | -| LogInjectionTest.java:1047:50:1047:57 | source(...) : Object | LogInjectionTest.java:1047:40:1047:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:325 | -| LogInjectionTest.java:1048:58:1048:65 | source(...) : Object | LogInjectionTest.java:1048:40:1048:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:326 | -| LogInjectionTest.java:1049:58:1049:65 | source(...) : Object | LogInjectionTest.java:1049:40:1049:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:327 | -| LogInjectionTest.java:1051:49:1051:56 | source(...) : Object | LogInjectionTest.java:1051:40:1051:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:328 | -| LogInjectionTest.java:1052:49:1052:56 | source(...) : Object | LogInjectionTest.java:1052:40:1052:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:338 | -| LogInjectionTest.java:1053:55:1053:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1053:55:1053:77 | new Object[] | provenance | Sink:MaD:338 | -| LogInjectionTest.java:1053:69:1053:76 | source(...) : Object | LogInjectionTest.java:1053:55:1053:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1054:64:1054:71 | source(...) : Object | LogInjectionTest.java:1054:55:1054:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | -| LogInjectionTest.java:1055:49:1055:56 | source(...) : Object | LogInjectionTest.java:1055:40:1055:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | -| LogInjectionTest.java:1056:79:1056:86 | source(...) : Object | LogInjectionTest.java:1056:70:1056:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:330 | -| LogInjectionTest.java:1057:64:1057:71 | source(...) : Object | LogInjectionTest.java:1057:55:1057:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:330 | -| LogInjectionTest.java:1058:49:1058:56 | source(...) : Object | LogInjectionTest.java:1058:40:1058:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:330 | -| LogInjectionTest.java:1059:94:1059:101 | source(...) : Object | LogInjectionTest.java:1059:85:1059:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | -| LogInjectionTest.java:1060:79:1060:86 | source(...) : Object | LogInjectionTest.java:1060:70:1060:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | -| LogInjectionTest.java:1061:64:1061:71 | source(...) : Object | LogInjectionTest.java:1061:55:1061:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | -| LogInjectionTest.java:1062:49:1062:56 | source(...) : Object | LogInjectionTest.java:1062:40:1062:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | -| LogInjectionTest.java:1063:109:1063:116 | source(...) : Object | LogInjectionTest.java:1063:100:1063:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | -| LogInjectionTest.java:1064:94:1064:101 | source(...) : Object | LogInjectionTest.java:1064:85:1064:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | -| LogInjectionTest.java:1065:79:1065:86 | source(...) : Object | LogInjectionTest.java:1065:70:1065:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | -| LogInjectionTest.java:1066:64:1066:71 | source(...) : Object | LogInjectionTest.java:1066:55:1066:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | -| LogInjectionTest.java:1067:49:1067:56 | source(...) : Object | LogInjectionTest.java:1067:40:1067:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | -| LogInjectionTest.java:1068:124:1068:131 | source(...) : Object | LogInjectionTest.java:1068:115:1068:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | -| LogInjectionTest.java:1069:109:1069:116 | source(...) : Object | LogInjectionTest.java:1069:100:1069:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | -| LogInjectionTest.java:1070:94:1070:101 | source(...) : Object | LogInjectionTest.java:1070:85:1070:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | -| LogInjectionTest.java:1071:79:1071:86 | source(...) : Object | LogInjectionTest.java:1071:70:1071:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | -| LogInjectionTest.java:1072:64:1072:71 | source(...) : Object | LogInjectionTest.java:1072:55:1072:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | -| LogInjectionTest.java:1073:49:1073:56 | source(...) : Object | LogInjectionTest.java:1073:40:1073:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | -| LogInjectionTest.java:1074:139:1074:146 | source(...) : Object | LogInjectionTest.java:1074:130:1074:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1075:124:1075:131 | source(...) : Object | LogInjectionTest.java:1075:115:1075:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1076:109:1076:116 | source(...) : Object | LogInjectionTest.java:1076:100:1076:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1077:94:1077:101 | source(...) : Object | LogInjectionTest.java:1077:85:1077:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1078:79:1078:86 | source(...) : Object | LogInjectionTest.java:1078:70:1078:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1079:64:1079:71 | source(...) : Object | LogInjectionTest.java:1079:55:1079:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1080:49:1080:56 | source(...) : Object | LogInjectionTest.java:1080:40:1080:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | -| LogInjectionTest.java:1081:154:1081:161 | source(...) : Object | LogInjectionTest.java:1081:145:1081:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1082:139:1082:146 | source(...) : Object | LogInjectionTest.java:1082:130:1082:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1083:124:1083:131 | source(...) : Object | LogInjectionTest.java:1083:115:1083:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1084:109:1084:116 | source(...) : Object | LogInjectionTest.java:1084:100:1084:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1085:94:1085:101 | source(...) : Object | LogInjectionTest.java:1085:85:1085:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1086:79:1086:86 | source(...) : Object | LogInjectionTest.java:1086:70:1086:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1087:64:1087:71 | source(...) : Object | LogInjectionTest.java:1087:55:1087:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1088:49:1088:56 | source(...) : Object | LogInjectionTest.java:1088:40:1088:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | -| LogInjectionTest.java:1089:169:1089:176 | source(...) : Object | LogInjectionTest.java:1089:160:1089:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1090:154:1090:161 | source(...) : Object | LogInjectionTest.java:1090:145:1090:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1091:139:1091:146 | source(...) : Object | LogInjectionTest.java:1091:130:1091:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1092:124:1092:131 | source(...) : Object | LogInjectionTest.java:1092:115:1092:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1093:109:1093:116 | source(...) : Object | LogInjectionTest.java:1093:100:1093:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1094:94:1094:101 | source(...) : Object | LogInjectionTest.java:1094:85:1094:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1095:79:1095:86 | source(...) : Object | LogInjectionTest.java:1095:70:1095:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1096:64:1096:71 | source(...) : Object | LogInjectionTest.java:1096:55:1096:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1097:49:1097:56 | source(...) : Object | LogInjectionTest.java:1097:40:1097:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | -| LogInjectionTest.java:1098:184:1098:191 | source(...) : Object | LogInjectionTest.java:1098:175:1098:191 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1099:169:1099:176 | source(...) : Object | LogInjectionTest.java:1099:160:1099:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1100:154:1100:161 | source(...) : Object | LogInjectionTest.java:1100:145:1100:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1101:139:1101:146 | source(...) : Object | LogInjectionTest.java:1101:130:1101:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1102:124:1102:131 | source(...) : Object | LogInjectionTest.java:1102:115:1102:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1103:109:1103:116 | source(...) : Object | LogInjectionTest.java:1103:100:1103:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1104:94:1104:101 | source(...) : Object | LogInjectionTest.java:1104:85:1104:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1105:79:1105:86 | source(...) : Object | LogInjectionTest.java:1105:70:1105:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1106:64:1106:71 | source(...) : Object | LogInjectionTest.java:1106:55:1106:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1107:49:1107:56 | source(...) : Object | LogInjectionTest.java:1107:40:1107:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | -| LogInjectionTest.java:1108:49:1108:56 | source(...) : Object | LogInjectionTest.java:1108:40:1108:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | -| LogInjectionTest.java:1109:69:1109:76 | source(...) : Object | LogInjectionTest.java:1109:55:1109:76 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | -| LogInjectionTest.java:1110:49:1110:56 | source(...) : Object | LogInjectionTest.java:1110:40:1110:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:339 | -| LogInjectionTest.java:1111:54:1111:61 | source(...) : Object | LogInjectionTest.java:1111:40:1111:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:340 | -| LogInjectionTest.java:1112:54:1112:61 | source(...) : Object | LogInjectionTest.java:1112:40:1112:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:341 | -| LogInjectionTest.java:1113:43:1113:50 | source(...) : Object | LogInjectionTest.java:1113:25:1113:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:344 | -| LogInjectionTest.java:1114:43:1114:50 | source(...) : Object | LogInjectionTest.java:1114:25:1114:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:345 | -| LogInjectionTest.java:1115:35:1115:42 | source(...) : Object | LogInjectionTest.java:1115:25:1115:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:342 | -| LogInjectionTest.java:1116:35:1116:42 | source(...) : Object | LogInjectionTest.java:1116:25:1116:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:343 | -| LogInjectionTest.java:1119:34:1119:41 | source(...) : Object | LogInjectionTest.java:1119:25:1119:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:346 | -| LogInjectionTest.java:1120:34:1120:41 | source(...) : Object | LogInjectionTest.java:1120:25:1120:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:356 | -| LogInjectionTest.java:1121:40:1121:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1121:40:1121:62 | new Object[] | provenance | Sink:MaD:356 | -| LogInjectionTest.java:1121:54:1121:61 | source(...) : Object | LogInjectionTest.java:1121:40:1121:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1122:49:1122:56 | source(...) : Object | LogInjectionTest.java:1122:40:1122:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | -| LogInjectionTest.java:1123:34:1123:41 | source(...) : Object | LogInjectionTest.java:1123:25:1123:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | -| LogInjectionTest.java:1124:64:1124:71 | source(...) : Object | LogInjectionTest.java:1124:55:1124:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:348 | -| LogInjectionTest.java:1125:49:1125:56 | source(...) : Object | LogInjectionTest.java:1125:40:1125:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:348 | -| LogInjectionTest.java:1126:34:1126:41 | source(...) : Object | LogInjectionTest.java:1126:25:1126:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:348 | -| LogInjectionTest.java:1127:79:1127:86 | source(...) : Object | LogInjectionTest.java:1127:70:1127:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | -| LogInjectionTest.java:1128:64:1128:71 | source(...) : Object | LogInjectionTest.java:1128:55:1128:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | -| LogInjectionTest.java:1129:49:1129:56 | source(...) : Object | LogInjectionTest.java:1129:40:1129:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | -| LogInjectionTest.java:1130:34:1130:41 | source(...) : Object | LogInjectionTest.java:1130:25:1130:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | -| LogInjectionTest.java:1131:94:1131:101 | source(...) : Object | LogInjectionTest.java:1131:85:1131:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | -| LogInjectionTest.java:1132:79:1132:86 | source(...) : Object | LogInjectionTest.java:1132:70:1132:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | -| LogInjectionTest.java:1133:64:1133:71 | source(...) : Object | LogInjectionTest.java:1133:55:1133:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | -| LogInjectionTest.java:1134:49:1134:56 | source(...) : Object | LogInjectionTest.java:1134:40:1134:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | -| LogInjectionTest.java:1135:34:1135:41 | source(...) : Object | LogInjectionTest.java:1135:25:1135:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | -| LogInjectionTest.java:1136:109:1136:116 | source(...) : Object | LogInjectionTest.java:1136:100:1136:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | -| LogInjectionTest.java:1137:94:1137:101 | source(...) : Object | LogInjectionTest.java:1137:85:1137:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | -| LogInjectionTest.java:1138:79:1138:86 | source(...) : Object | LogInjectionTest.java:1138:70:1138:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | -| LogInjectionTest.java:1139:64:1139:71 | source(...) : Object | LogInjectionTest.java:1139:55:1139:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | -| LogInjectionTest.java:1140:49:1140:56 | source(...) : Object | LogInjectionTest.java:1140:40:1140:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | -| LogInjectionTest.java:1141:34:1141:41 | source(...) : Object | LogInjectionTest.java:1141:25:1141:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | -| LogInjectionTest.java:1142:124:1142:131 | source(...) : Object | LogInjectionTest.java:1142:115:1142:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1143:109:1143:116 | source(...) : Object | LogInjectionTest.java:1143:100:1143:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1144:94:1144:101 | source(...) : Object | LogInjectionTest.java:1144:85:1144:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1145:79:1145:86 | source(...) : Object | LogInjectionTest.java:1145:70:1145:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1146:64:1146:71 | source(...) : Object | LogInjectionTest.java:1146:55:1146:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1147:49:1147:56 | source(...) : Object | LogInjectionTest.java:1147:40:1147:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1148:34:1148:41 | source(...) : Object | LogInjectionTest.java:1148:25:1148:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | -| LogInjectionTest.java:1149:139:1149:146 | source(...) : Object | LogInjectionTest.java:1149:130:1149:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1150:124:1150:131 | source(...) : Object | LogInjectionTest.java:1150:115:1150:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1151:109:1151:116 | source(...) : Object | LogInjectionTest.java:1151:100:1151:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1152:94:1152:101 | source(...) : Object | LogInjectionTest.java:1152:85:1152:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1153:79:1153:86 | source(...) : Object | LogInjectionTest.java:1153:70:1153:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1154:64:1154:71 | source(...) : Object | LogInjectionTest.java:1154:55:1154:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1155:49:1155:56 | source(...) : Object | LogInjectionTest.java:1155:40:1155:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1156:34:1156:41 | source(...) : Object | LogInjectionTest.java:1156:25:1156:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | -| LogInjectionTest.java:1157:154:1157:161 | source(...) : Object | LogInjectionTest.java:1157:145:1157:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1158:139:1158:146 | source(...) : Object | LogInjectionTest.java:1158:130:1158:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1159:124:1159:131 | source(...) : Object | LogInjectionTest.java:1159:115:1159:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1160:109:1160:116 | source(...) : Object | LogInjectionTest.java:1160:100:1160:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1161:94:1161:101 | source(...) : Object | LogInjectionTest.java:1161:85:1161:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1162:79:1162:86 | source(...) : Object | LogInjectionTest.java:1162:70:1162:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1163:64:1163:71 | source(...) : Object | LogInjectionTest.java:1163:55:1163:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1164:49:1164:56 | source(...) : Object | LogInjectionTest.java:1164:40:1164:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1165:34:1165:41 | source(...) : Object | LogInjectionTest.java:1165:25:1165:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | -| LogInjectionTest.java:1166:169:1166:176 | source(...) : Object | LogInjectionTest.java:1166:160:1166:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1167:154:1167:161 | source(...) : Object | LogInjectionTest.java:1167:145:1167:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1168:139:1168:146 | source(...) : Object | LogInjectionTest.java:1168:130:1168:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1169:124:1169:131 | source(...) : Object | LogInjectionTest.java:1169:115:1169:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1170:109:1170:116 | source(...) : Object | LogInjectionTest.java:1170:100:1170:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1171:94:1171:101 | source(...) : Object | LogInjectionTest.java:1171:85:1171:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1172:79:1172:86 | source(...) : Object | LogInjectionTest.java:1172:70:1172:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1173:64:1173:71 | source(...) : Object | LogInjectionTest.java:1173:55:1173:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1174:49:1174:56 | source(...) : Object | LogInjectionTest.java:1174:40:1174:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1175:34:1175:41 | source(...) : Object | LogInjectionTest.java:1175:25:1175:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | -| LogInjectionTest.java:1176:34:1176:41 | source(...) : Object | LogInjectionTest.java:1176:25:1176:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | -| LogInjectionTest.java:1177:54:1177:61 | source(...) : Object | LogInjectionTest.java:1177:40:1177:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | -| LogInjectionTest.java:1178:34:1178:41 | source(...) : Object | LogInjectionTest.java:1178:25:1178:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:357 | -| LogInjectionTest.java:1179:39:1179:46 | source(...) : Object | LogInjectionTest.java:1179:25:1179:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:358 | -| LogInjectionTest.java:1180:39:1180:46 | source(...) : Object | LogInjectionTest.java:1180:25:1180:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:359 | -| LogInjectionTest.java:1182:65:1182:72 | source(...) : Object | LogInjectionTest.java:1182:55:1182:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:271 | -| LogInjectionTest.java:1183:48:1183:55 | source(...) : Object | LogInjectionTest.java:1183:39:1183:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:272 | -| LogInjectionTest.java:1184:45:1184:67 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1184:45:1184:67 | new Object[] | provenance | Sink:MaD:272 | -| LogInjectionTest.java:1184:59:1184:66 | source(...) : Object | LogInjectionTest.java:1184:45:1184:67 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1185:42:1185:49 | source(...) : Object | LogInjectionTest.java:1185:33:1185:49 | (...)... | provenance | Src:MaD:536 Sink:MaD:273 | -| LogInjectionTest.java:1186:39:1186:61 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1186:39:1186:61 | new Object[] | provenance | Sink:MaD:273 | -| LogInjectionTest.java:1186:53:1186:60 | source(...) : Object | LogInjectionTest.java:1186:39:1186:61 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1187:41:1187:48 | source(...) : Object | LogInjectionTest.java:1187:31:1187:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:313 | -| LogInjectionTest.java:1188:40:1188:47 | source(...) : Object | LogInjectionTest.java:1188:31:1188:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:314 | -| LogInjectionTest.java:1189:46:1189:68 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1189:46:1189:68 | new Object[] | provenance | Sink:MaD:314 | -| LogInjectionTest.java:1189:60:1189:67 | source(...) : Object | LogInjectionTest.java:1189:46:1189:68 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1190:40:1190:47 | source(...) : Object | LogInjectionTest.java:1190:31:1190:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:315 | -| LogInjectionTest.java:1191:46:1191:67 | (...)... : Supplier | LogInjectionTest.java:1191:13:1191:68 | new ..[] { .. } | provenance | Sink:MaD:315 | -| LogInjectionTest.java:1191:60:1191:67 | source(...) : Object | LogInjectionTest.java:1191:46:1191:67 | (...)... : Supplier | provenance | Src:MaD:536 | -| LogInjectionTest.java:1192:31:1192:52 | (...)... : Supplier | LogInjectionTest.java:1192:13:1192:53 | new ..[] { .. } | provenance | Sink:MaD:316 | -| LogInjectionTest.java:1192:45:1192:52 | source(...) : Object | LogInjectionTest.java:1192:31:1192:52 | (...)... : Supplier | provenance | Src:MaD:536 | -| LogInjectionTest.java:1193:45:1193:52 | source(...) : Object | LogInjectionTest.java:1193:30:1193:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:317 | -| LogInjectionTest.java:1194:45:1194:52 | source(...) : Object | LogInjectionTest.java:1194:30:1194:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:318 | -| LogInjectionTest.java:1196:40:1196:47 | source(...) : Object | LogInjectionTest.java:1196:30:1196:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:319 | -| LogInjectionTest.java:1199:39:1199:46 | source(...) : Object | LogInjectionTest.java:1199:30:1199:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:320 | -| LogInjectionTest.java:1204:40:1204:47 | source(...) : Object | LogInjectionTest.java:1204:25:1204:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:62 | -| LogInjectionTest.java:1205:35:1205:42 | source(...) : Object | LogInjectionTest.java:1205:25:1205:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:63 | -| LogInjectionTest.java:1207:34:1207:41 | source(...) : Object | LogInjectionTest.java:1207:25:1207:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:65 | -| LogInjectionTest.java:1208:34:1208:41 | source(...) : Object | LogInjectionTest.java:1208:25:1208:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:75 | -| LogInjectionTest.java:1209:40:1209:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1209:40:1209:62 | new Object[] | provenance | Sink:MaD:75 | -| LogInjectionTest.java:1209:54:1209:61 | source(...) : Object | LogInjectionTest.java:1209:40:1209:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1212:49:1212:56 | source(...) : Object | LogInjectionTest.java:1212:40:1212:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | -| LogInjectionTest.java:1213:34:1213:41 | source(...) : Object | LogInjectionTest.java:1213:25:1213:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | -| LogInjectionTest.java:1214:64:1214:71 | source(...) : Object | LogInjectionTest.java:1214:55:1214:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:67 | -| LogInjectionTest.java:1215:49:1215:56 | source(...) : Object | LogInjectionTest.java:1215:40:1215:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:67 | -| LogInjectionTest.java:1216:34:1216:41 | source(...) : Object | LogInjectionTest.java:1216:25:1216:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:67 | -| LogInjectionTest.java:1217:79:1217:86 | source(...) : Object | LogInjectionTest.java:1217:70:1217:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | -| LogInjectionTest.java:1218:64:1218:71 | source(...) : Object | LogInjectionTest.java:1218:55:1218:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | -| LogInjectionTest.java:1219:49:1219:56 | source(...) : Object | LogInjectionTest.java:1219:40:1219:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | -| LogInjectionTest.java:1220:34:1220:41 | source(...) : Object | LogInjectionTest.java:1220:25:1220:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | -| LogInjectionTest.java:1221:94:1221:101 | source(...) : Object | LogInjectionTest.java:1221:85:1221:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | -| LogInjectionTest.java:1222:79:1222:86 | source(...) : Object | LogInjectionTest.java:1222:70:1222:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | -| LogInjectionTest.java:1223:64:1223:71 | source(...) : Object | LogInjectionTest.java:1223:55:1223:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | -| LogInjectionTest.java:1224:49:1224:56 | source(...) : Object | LogInjectionTest.java:1224:40:1224:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | -| LogInjectionTest.java:1225:34:1225:41 | source(...) : Object | LogInjectionTest.java:1225:25:1225:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | -| LogInjectionTest.java:1226:109:1226:116 | source(...) : Object | LogInjectionTest.java:1226:100:1226:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | -| LogInjectionTest.java:1227:94:1227:101 | source(...) : Object | LogInjectionTest.java:1227:85:1227:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | -| LogInjectionTest.java:1228:79:1228:86 | source(...) : Object | LogInjectionTest.java:1228:70:1228:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | -| LogInjectionTest.java:1229:64:1229:71 | source(...) : Object | LogInjectionTest.java:1229:55:1229:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | -| LogInjectionTest.java:1230:49:1230:56 | source(...) : Object | LogInjectionTest.java:1230:40:1230:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | -| LogInjectionTest.java:1231:34:1231:41 | source(...) : Object | LogInjectionTest.java:1231:25:1231:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | -| LogInjectionTest.java:1232:124:1232:131 | source(...) : Object | LogInjectionTest.java:1232:115:1232:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1233:109:1233:116 | source(...) : Object | LogInjectionTest.java:1233:100:1233:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1234:94:1234:101 | source(...) : Object | LogInjectionTest.java:1234:85:1234:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1235:79:1235:86 | source(...) : Object | LogInjectionTest.java:1235:70:1235:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1236:64:1236:71 | source(...) : Object | LogInjectionTest.java:1236:55:1236:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1237:49:1237:56 | source(...) : Object | LogInjectionTest.java:1237:40:1237:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1238:34:1238:41 | source(...) : Object | LogInjectionTest.java:1238:25:1238:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | -| LogInjectionTest.java:1239:139:1239:146 | source(...) : Object | LogInjectionTest.java:1239:130:1239:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1240:124:1240:131 | source(...) : Object | LogInjectionTest.java:1240:115:1240:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1241:109:1241:116 | source(...) : Object | LogInjectionTest.java:1241:100:1241:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1242:94:1242:101 | source(...) : Object | LogInjectionTest.java:1242:85:1242:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1243:79:1243:86 | source(...) : Object | LogInjectionTest.java:1243:70:1243:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1244:64:1244:71 | source(...) : Object | LogInjectionTest.java:1244:55:1244:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1245:49:1245:56 | source(...) : Object | LogInjectionTest.java:1245:40:1245:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1246:34:1246:41 | source(...) : Object | LogInjectionTest.java:1246:25:1246:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | -| LogInjectionTest.java:1247:154:1247:161 | source(...) : Object | LogInjectionTest.java:1247:145:1247:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1248:139:1248:146 | source(...) : Object | LogInjectionTest.java:1248:130:1248:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1249:124:1249:131 | source(...) : Object | LogInjectionTest.java:1249:115:1249:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1250:109:1250:116 | source(...) : Object | LogInjectionTest.java:1250:100:1250:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1251:94:1251:101 | source(...) : Object | LogInjectionTest.java:1251:85:1251:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1252:79:1252:86 | source(...) : Object | LogInjectionTest.java:1252:70:1252:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1253:64:1253:71 | source(...) : Object | LogInjectionTest.java:1253:55:1253:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1254:49:1254:56 | source(...) : Object | LogInjectionTest.java:1254:40:1254:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1255:34:1255:41 | source(...) : Object | LogInjectionTest.java:1255:25:1255:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | -| LogInjectionTest.java:1256:169:1256:176 | source(...) : Object | LogInjectionTest.java:1256:160:1256:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1257:154:1257:161 | source(...) : Object | LogInjectionTest.java:1257:145:1257:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1258:139:1258:146 | source(...) : Object | LogInjectionTest.java:1258:130:1258:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1259:124:1259:131 | source(...) : Object | LogInjectionTest.java:1259:115:1259:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1260:109:1260:116 | source(...) : Object | LogInjectionTest.java:1260:100:1260:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1261:94:1261:101 | source(...) : Object | LogInjectionTest.java:1261:85:1261:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1262:79:1262:86 | source(...) : Object | LogInjectionTest.java:1262:70:1262:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1263:64:1263:71 | source(...) : Object | LogInjectionTest.java:1263:55:1263:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1264:49:1264:56 | source(...) : Object | LogInjectionTest.java:1264:40:1264:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1265:34:1265:41 | source(...) : Object | LogInjectionTest.java:1265:25:1265:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | -| LogInjectionTest.java:1267:34:1267:41 | source(...) : Object | LogInjectionTest.java:1267:25:1267:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | -| LogInjectionTest.java:1268:54:1268:61 | source(...) : Object | LogInjectionTest.java:1268:40:1268:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | -| LogInjectionTest.java:1269:39:1269:46 | source(...) : Object | LogInjectionTest.java:1269:25:1269:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:64 | -| LogInjectionTest.java:1289:57:1289:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1289:57:1289:79 | new Object[] | provenance | Sink:MaD:360 | -| LogInjectionTest.java:1289:71:1289:78 | source(...) : Object | LogInjectionTest.java:1289:57:1289:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1297:57:1297:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1297:57:1297:79 | new Object[] | provenance | Sink:MaD:369 | -| LogInjectionTest.java:1297:71:1297:78 | source(...) : Object | LogInjectionTest.java:1297:57:1297:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1305:57:1305:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1305:57:1305:79 | new Object[] | provenance | Sink:MaD:378 | -| LogInjectionTest.java:1305:71:1305:78 | source(...) : Object | LogInjectionTest.java:1305:57:1305:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1313:56:1313:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1313:56:1313:78 | new Object[] | provenance | Sink:MaD:387 | -| LogInjectionTest.java:1313:70:1313:77 | source(...) : Object | LogInjectionTest.java:1313:56:1313:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1321:57:1321:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1321:57:1321:79 | new Object[] | provenance | Sink:MaD:405 | -| LogInjectionTest.java:1321:71:1321:78 | source(...) : Object | LogInjectionTest.java:1321:57:1321:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1329:56:1329:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1329:56:1329:78 | new Object[] | provenance | Sink:MaD:414 | -| LogInjectionTest.java:1329:70:1329:77 | source(...) : Object | LogInjectionTest.java:1329:56:1329:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1338:94:1338:116 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1338:94:1338:116 | new Object[] | provenance | Sink:MaD:396 | -| LogInjectionTest.java:1338:108:1338:115 | source(...) : Object | LogInjectionTest.java:1338:94:1338:116 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1339:52:1339:59 | source(...) : Object | LogInjectionTest.java:1339:43:1339:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | -| LogInjectionTest.java:1340:37:1340:44 | source(...) : Object | LogInjectionTest.java:1340:28:1340:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | -| LogInjectionTest.java:1341:52:1341:59 | source(...) : Object | LogInjectionTest.java:1341:43:1341:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | -| LogInjectionTest.java:1342:37:1342:44 | source(...) : Object | LogInjectionTest.java:1342:28:1342:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | -| LogInjectionTest.java:1343:37:1343:44 | source(...) : Object | LogInjectionTest.java:1343:28:1343:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:364 | -| LogInjectionTest.java:1344:37:1344:44 | source(...) : Object | LogInjectionTest.java:1344:28:1344:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:368 | -| LogInjectionTest.java:1345:43:1345:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1345:43:1345:65 | new Object[] | provenance | Sink:MaD:364 | -| LogInjectionTest.java:1345:57:1345:64 | source(...) : Object | LogInjectionTest.java:1345:43:1345:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1346:43:1346:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1346:43:1346:65 | new Object[] | provenance | Sink:MaD:368 | -| LogInjectionTest.java:1346:57:1346:64 | source(...) : Object | LogInjectionTest.java:1346:43:1346:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1347:67:1347:74 | source(...) : Object | LogInjectionTest.java:1347:58:1347:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | -| LogInjectionTest.java:1348:52:1348:59 | source(...) : Object | LogInjectionTest.java:1348:43:1348:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | -| LogInjectionTest.java:1349:37:1349:44 | source(...) : Object | LogInjectionTest.java:1349:28:1349:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | -| LogInjectionTest.java:1350:67:1350:74 | source(...) : Object | LogInjectionTest.java:1350:58:1350:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | -| LogInjectionTest.java:1351:52:1351:59 | source(...) : Object | LogInjectionTest.java:1351:43:1351:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | -| LogInjectionTest.java:1352:37:1352:44 | source(...) : Object | LogInjectionTest.java:1352:28:1352:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | -| LogInjectionTest.java:1353:82:1353:89 | source(...) : Object | LogInjectionTest.java:1353:73:1353:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1354:67:1354:74 | source(...) : Object | LogInjectionTest.java:1354:58:1354:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1355:52:1355:59 | source(...) : Object | LogInjectionTest.java:1355:43:1355:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1356:37:1356:44 | source(...) : Object | LogInjectionTest.java:1356:28:1356:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1357:82:1357:89 | source(...) : Object | LogInjectionTest.java:1357:73:1357:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1358:67:1358:74 | source(...) : Object | LogInjectionTest.java:1358:58:1358:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1359:52:1359:59 | source(...) : Object | LogInjectionTest.java:1359:43:1359:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1360:37:1360:44 | source(...) : Object | LogInjectionTest.java:1360:28:1360:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1361:52:1361:59 | source(...) : Object | LogInjectionTest.java:1361:43:1361:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | -| LogInjectionTest.java:1362:37:1362:44 | source(...) : Object | LogInjectionTest.java:1362:28:1362:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | -| LogInjectionTest.java:1363:52:1363:59 | source(...) : Object | LogInjectionTest.java:1363:43:1363:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | -| LogInjectionTest.java:1364:37:1364:44 | source(...) : Object | LogInjectionTest.java:1364:28:1364:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | -| LogInjectionTest.java:1365:37:1365:44 | source(...) : Object | LogInjectionTest.java:1365:28:1365:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:373 | -| LogInjectionTest.java:1366:37:1366:44 | source(...) : Object | LogInjectionTest.java:1366:28:1366:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:377 | -| LogInjectionTest.java:1367:43:1367:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1367:43:1367:65 | new Object[] | provenance | Sink:MaD:373 | -| LogInjectionTest.java:1367:57:1367:64 | source(...) : Object | LogInjectionTest.java:1367:43:1367:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1368:43:1368:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1368:43:1368:65 | new Object[] | provenance | Sink:MaD:377 | -| LogInjectionTest.java:1368:57:1368:64 | source(...) : Object | LogInjectionTest.java:1368:43:1368:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1369:67:1369:74 | source(...) : Object | LogInjectionTest.java:1369:58:1369:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | -| LogInjectionTest.java:1370:52:1370:59 | source(...) : Object | LogInjectionTest.java:1370:43:1370:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | -| LogInjectionTest.java:1371:37:1371:44 | source(...) : Object | LogInjectionTest.java:1371:28:1371:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | -| LogInjectionTest.java:1372:67:1372:74 | source(...) : Object | LogInjectionTest.java:1372:58:1372:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | -| LogInjectionTest.java:1373:52:1373:59 | source(...) : Object | LogInjectionTest.java:1373:43:1373:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | -| LogInjectionTest.java:1374:37:1374:44 | source(...) : Object | LogInjectionTest.java:1374:28:1374:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | -| LogInjectionTest.java:1375:82:1375:89 | source(...) : Object | LogInjectionTest.java:1375:73:1375:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1376:67:1376:74 | source(...) : Object | LogInjectionTest.java:1376:58:1376:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1377:52:1377:59 | source(...) : Object | LogInjectionTest.java:1377:43:1377:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1378:37:1378:44 | source(...) : Object | LogInjectionTest.java:1378:28:1378:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1379:82:1379:89 | source(...) : Object | LogInjectionTest.java:1379:73:1379:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1380:67:1380:74 | source(...) : Object | LogInjectionTest.java:1380:58:1380:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1381:52:1381:59 | source(...) : Object | LogInjectionTest.java:1381:43:1381:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1382:37:1382:44 | source(...) : Object | LogInjectionTest.java:1382:28:1382:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1383:52:1383:59 | source(...) : Object | LogInjectionTest.java:1383:43:1383:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | -| LogInjectionTest.java:1384:37:1384:44 | source(...) : Object | LogInjectionTest.java:1384:28:1384:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | -| LogInjectionTest.java:1385:52:1385:59 | source(...) : Object | LogInjectionTest.java:1385:43:1385:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | -| LogInjectionTest.java:1386:37:1386:44 | source(...) : Object | LogInjectionTest.java:1386:28:1386:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | -| LogInjectionTest.java:1387:37:1387:44 | source(...) : Object | LogInjectionTest.java:1387:28:1387:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:382 | -| LogInjectionTest.java:1388:37:1388:44 | source(...) : Object | LogInjectionTest.java:1388:28:1388:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:386 | -| LogInjectionTest.java:1389:43:1389:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1389:43:1389:65 | new Object[] | provenance | Sink:MaD:382 | -| LogInjectionTest.java:1389:57:1389:64 | source(...) : Object | LogInjectionTest.java:1389:43:1389:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1390:43:1390:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1390:43:1390:65 | new Object[] | provenance | Sink:MaD:386 | -| LogInjectionTest.java:1390:57:1390:64 | source(...) : Object | LogInjectionTest.java:1390:43:1390:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1391:67:1391:74 | source(...) : Object | LogInjectionTest.java:1391:58:1391:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | -| LogInjectionTest.java:1392:52:1392:59 | source(...) : Object | LogInjectionTest.java:1392:43:1392:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | -| LogInjectionTest.java:1393:37:1393:44 | source(...) : Object | LogInjectionTest.java:1393:28:1393:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | -| LogInjectionTest.java:1394:67:1394:74 | source(...) : Object | LogInjectionTest.java:1394:58:1394:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | -| LogInjectionTest.java:1395:52:1395:59 | source(...) : Object | LogInjectionTest.java:1395:43:1395:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | -| LogInjectionTest.java:1396:37:1396:44 | source(...) : Object | LogInjectionTest.java:1396:28:1396:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | -| LogInjectionTest.java:1397:82:1397:89 | source(...) : Object | LogInjectionTest.java:1397:73:1397:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1398:67:1398:74 | source(...) : Object | LogInjectionTest.java:1398:58:1398:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1399:52:1399:59 | source(...) : Object | LogInjectionTest.java:1399:43:1399:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1400:37:1400:44 | source(...) : Object | LogInjectionTest.java:1400:28:1400:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1401:82:1401:89 | source(...) : Object | LogInjectionTest.java:1401:73:1401:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1402:67:1402:74 | source(...) : Object | LogInjectionTest.java:1402:58:1402:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1403:52:1403:59 | source(...) : Object | LogInjectionTest.java:1403:43:1403:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1404:37:1404:44 | source(...) : Object | LogInjectionTest.java:1404:28:1404:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1405:51:1405:58 | source(...) : Object | LogInjectionTest.java:1405:42:1405:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | -| LogInjectionTest.java:1406:36:1406:43 | source(...) : Object | LogInjectionTest.java:1406:27:1406:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | -| LogInjectionTest.java:1407:51:1407:58 | source(...) : Object | LogInjectionTest.java:1407:42:1407:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | -| LogInjectionTest.java:1408:36:1408:43 | source(...) : Object | LogInjectionTest.java:1408:27:1408:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | -| LogInjectionTest.java:1409:36:1409:43 | source(...) : Object | LogInjectionTest.java:1409:27:1409:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:391 | -| LogInjectionTest.java:1410:36:1410:43 | source(...) : Object | LogInjectionTest.java:1410:27:1410:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:395 | -| LogInjectionTest.java:1411:42:1411:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1411:42:1411:64 | new Object[] | provenance | Sink:MaD:391 | -| LogInjectionTest.java:1411:56:1411:63 | source(...) : Object | LogInjectionTest.java:1411:42:1411:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1412:42:1412:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1412:42:1412:64 | new Object[] | provenance | Sink:MaD:395 | -| LogInjectionTest.java:1412:56:1412:63 | source(...) : Object | LogInjectionTest.java:1412:42:1412:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1413:66:1413:73 | source(...) : Object | LogInjectionTest.java:1413:57:1413:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | -| LogInjectionTest.java:1414:51:1414:58 | source(...) : Object | LogInjectionTest.java:1414:42:1414:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | -| LogInjectionTest.java:1415:36:1415:43 | source(...) : Object | LogInjectionTest.java:1415:27:1415:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | -| LogInjectionTest.java:1416:66:1416:73 | source(...) : Object | LogInjectionTest.java:1416:57:1416:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | -| LogInjectionTest.java:1417:51:1417:58 | source(...) : Object | LogInjectionTest.java:1417:42:1417:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | -| LogInjectionTest.java:1418:36:1418:43 | source(...) : Object | LogInjectionTest.java:1418:27:1418:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | -| LogInjectionTest.java:1419:81:1419:88 | source(...) : Object | LogInjectionTest.java:1419:72:1419:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1420:66:1420:73 | source(...) : Object | LogInjectionTest.java:1420:57:1420:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1421:51:1421:58 | source(...) : Object | LogInjectionTest.java:1421:42:1421:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1422:36:1422:43 | source(...) : Object | LogInjectionTest.java:1422:27:1422:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1423:81:1423:88 | source(...) : Object | LogInjectionTest.java:1423:72:1423:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1424:66:1424:73 | source(...) : Object | LogInjectionTest.java:1424:57:1424:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1425:51:1425:58 | source(...) : Object | LogInjectionTest.java:1425:42:1425:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1426:36:1426:43 | source(...) : Object | LogInjectionTest.java:1426:27:1426:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1427:89:1427:96 | source(...) : Object | LogInjectionTest.java:1427:80:1427:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | -| LogInjectionTest.java:1428:74:1428:81 | source(...) : Object | LogInjectionTest.java:1428:65:1428:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | -| LogInjectionTest.java:1429:89:1429:96 | source(...) : Object | LogInjectionTest.java:1429:80:1429:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | -| LogInjectionTest.java:1430:74:1430:81 | source(...) : Object | LogInjectionTest.java:1430:65:1430:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | -| LogInjectionTest.java:1431:74:1431:81 | source(...) : Object | LogInjectionTest.java:1431:65:1431:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:400 | -| LogInjectionTest.java:1432:74:1432:81 | source(...) : Object | LogInjectionTest.java:1432:65:1432:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:404 | -| LogInjectionTest.java:1433:80:1433:102 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1433:80:1433:102 | new Object[] | provenance | Sink:MaD:400 | -| LogInjectionTest.java:1433:94:1433:101 | source(...) : Object | LogInjectionTest.java:1433:80:1433:102 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1434:80:1434:102 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1434:80:1434:102 | new Object[] | provenance | Sink:MaD:404 | -| LogInjectionTest.java:1434:94:1434:101 | source(...) : Object | LogInjectionTest.java:1434:80:1434:102 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1435:104:1435:111 | source(...) : Object | LogInjectionTest.java:1435:95:1435:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | -| LogInjectionTest.java:1436:89:1436:96 | source(...) : Object | LogInjectionTest.java:1436:80:1436:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | -| LogInjectionTest.java:1437:74:1437:81 | source(...) : Object | LogInjectionTest.java:1437:65:1437:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | -| LogInjectionTest.java:1438:104:1438:111 | source(...) : Object | LogInjectionTest.java:1438:95:1438:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | -| LogInjectionTest.java:1439:89:1439:96 | source(...) : Object | LogInjectionTest.java:1439:80:1439:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | -| LogInjectionTest.java:1440:74:1440:81 | source(...) : Object | LogInjectionTest.java:1440:65:1440:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | -| LogInjectionTest.java:1441:119:1441:126 | source(...) : Object | LogInjectionTest.java:1441:110:1441:126 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1442:104:1442:111 | source(...) : Object | LogInjectionTest.java:1442:95:1442:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1443:89:1443:96 | source(...) : Object | LogInjectionTest.java:1443:80:1443:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1444:74:1444:81 | source(...) : Object | LogInjectionTest.java:1444:65:1444:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1445:119:1445:126 | source(...) : Object | LogInjectionTest.java:1445:110:1445:126 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1446:104:1446:111 | source(...) : Object | LogInjectionTest.java:1446:95:1446:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1447:89:1447:96 | source(...) : Object | LogInjectionTest.java:1447:80:1447:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1448:74:1448:81 | source(...) : Object | LogInjectionTest.java:1448:65:1448:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1449:52:1449:59 | source(...) : Object | LogInjectionTest.java:1449:43:1449:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | -| LogInjectionTest.java:1450:37:1450:44 | source(...) : Object | LogInjectionTest.java:1450:28:1450:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | -| LogInjectionTest.java:1451:52:1451:59 | source(...) : Object | LogInjectionTest.java:1451:43:1451:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | -| LogInjectionTest.java:1452:37:1452:44 | source(...) : Object | LogInjectionTest.java:1452:28:1452:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | -| LogInjectionTest.java:1453:37:1453:44 | source(...) : Object | LogInjectionTest.java:1453:28:1453:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:409 | -| LogInjectionTest.java:1454:37:1454:44 | source(...) : Object | LogInjectionTest.java:1454:28:1454:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:413 | -| LogInjectionTest.java:1455:43:1455:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1455:43:1455:65 | new Object[] | provenance | Sink:MaD:409 | -| LogInjectionTest.java:1455:57:1455:64 | source(...) : Object | LogInjectionTest.java:1455:43:1455:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1456:43:1456:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1456:43:1456:65 | new Object[] | provenance | Sink:MaD:413 | -| LogInjectionTest.java:1456:57:1456:64 | source(...) : Object | LogInjectionTest.java:1456:43:1456:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1457:67:1457:74 | source(...) : Object | LogInjectionTest.java:1457:58:1457:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | -| LogInjectionTest.java:1458:52:1458:59 | source(...) : Object | LogInjectionTest.java:1458:43:1458:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | -| LogInjectionTest.java:1459:37:1459:44 | source(...) : Object | LogInjectionTest.java:1459:28:1459:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | -| LogInjectionTest.java:1460:67:1460:74 | source(...) : Object | LogInjectionTest.java:1460:58:1460:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | -| LogInjectionTest.java:1461:52:1461:59 | source(...) : Object | LogInjectionTest.java:1461:43:1461:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | -| LogInjectionTest.java:1462:37:1462:44 | source(...) : Object | LogInjectionTest.java:1462:28:1462:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | -| LogInjectionTest.java:1463:82:1463:89 | source(...) : Object | LogInjectionTest.java:1463:73:1463:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1464:67:1464:74 | source(...) : Object | LogInjectionTest.java:1464:58:1464:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1465:52:1465:59 | source(...) : Object | LogInjectionTest.java:1465:43:1465:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1466:37:1466:44 | source(...) : Object | LogInjectionTest.java:1466:28:1466:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1467:82:1467:89 | source(...) : Object | LogInjectionTest.java:1467:73:1467:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1468:67:1468:74 | source(...) : Object | LogInjectionTest.java:1468:58:1468:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1469:52:1469:59 | source(...) : Object | LogInjectionTest.java:1469:43:1469:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1470:37:1470:44 | source(...) : Object | LogInjectionTest.java:1470:28:1470:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1471:51:1471:58 | source(...) : Object | LogInjectionTest.java:1471:42:1471:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | -| LogInjectionTest.java:1472:36:1472:43 | source(...) : Object | LogInjectionTest.java:1472:27:1472:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | -| LogInjectionTest.java:1473:51:1473:58 | source(...) : Object | LogInjectionTest.java:1473:42:1473:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | -| LogInjectionTest.java:1474:36:1474:43 | source(...) : Object | LogInjectionTest.java:1474:27:1474:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | -| LogInjectionTest.java:1475:36:1475:43 | source(...) : Object | LogInjectionTest.java:1475:27:1475:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:418 | -| LogInjectionTest.java:1476:36:1476:43 | source(...) : Object | LogInjectionTest.java:1476:27:1476:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:422 | -| LogInjectionTest.java:1477:42:1477:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1477:42:1477:64 | new Object[] | provenance | Sink:MaD:418 | -| LogInjectionTest.java:1477:56:1477:63 | source(...) : Object | LogInjectionTest.java:1477:42:1477:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1478:42:1478:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1478:42:1478:64 | new Object[] | provenance | Sink:MaD:422 | -| LogInjectionTest.java:1478:56:1478:63 | source(...) : Object | LogInjectionTest.java:1478:42:1478:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1479:66:1479:73 | source(...) : Object | LogInjectionTest.java:1479:57:1479:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | -| LogInjectionTest.java:1480:51:1480:58 | source(...) : Object | LogInjectionTest.java:1480:42:1480:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | -| LogInjectionTest.java:1481:36:1481:43 | source(...) : Object | LogInjectionTest.java:1481:27:1481:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | -| LogInjectionTest.java:1482:66:1482:73 | source(...) : Object | LogInjectionTest.java:1482:57:1482:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | -| LogInjectionTest.java:1483:51:1483:58 | source(...) : Object | LogInjectionTest.java:1483:42:1483:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | -| LogInjectionTest.java:1484:36:1484:43 | source(...) : Object | LogInjectionTest.java:1484:27:1484:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | -| LogInjectionTest.java:1485:81:1485:88 | source(...) : Object | LogInjectionTest.java:1485:72:1485:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1486:66:1486:73 | source(...) : Object | LogInjectionTest.java:1486:57:1486:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1487:51:1487:58 | source(...) : Object | LogInjectionTest.java:1487:42:1487:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1488:36:1488:43 | source(...) : Object | LogInjectionTest.java:1488:27:1488:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1489:81:1489:88 | source(...) : Object | LogInjectionTest.java:1489:72:1489:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1490:66:1490:73 | source(...) : Object | LogInjectionTest.java:1490:57:1490:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1491:51:1491:58 | source(...) : Object | LogInjectionTest.java:1491:42:1491:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1492:36:1492:43 | source(...) : Object | LogInjectionTest.java:1492:27:1492:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1504:56:1504:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1504:56:1504:78 | new Object[] | provenance | Sink:MaD:360 | -| LogInjectionTest.java:1504:56:1504:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1504:56:1504:78 | new Object[] | provenance | Sink:MaD:423 | -| LogInjectionTest.java:1504:70:1504:77 | source(...) : Object | LogInjectionTest.java:1504:56:1504:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1512:56:1512:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1512:56:1512:78 | new Object[] | provenance | Sink:MaD:369 | -| LogInjectionTest.java:1512:56:1512:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1512:56:1512:78 | new Object[] | provenance | Sink:MaD:432 | -| LogInjectionTest.java:1512:70:1512:77 | source(...) : Object | LogInjectionTest.java:1512:56:1512:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1520:56:1520:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1520:56:1520:78 | new Object[] | provenance | Sink:MaD:378 | -| LogInjectionTest.java:1520:56:1520:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1520:56:1520:78 | new Object[] | provenance | Sink:MaD:441 | -| LogInjectionTest.java:1520:70:1520:77 | source(...) : Object | LogInjectionTest.java:1520:56:1520:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1528:55:1528:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1528:55:1528:77 | new Object[] | provenance | Sink:MaD:387 | -| LogInjectionTest.java:1528:55:1528:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1528:55:1528:77 | new Object[] | provenance | Sink:MaD:450 | -| LogInjectionTest.java:1528:69:1528:76 | source(...) : Object | LogInjectionTest.java:1528:55:1528:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1536:56:1536:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1536:56:1536:78 | new Object[] | provenance | Sink:MaD:405 | -| LogInjectionTest.java:1536:56:1536:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1536:56:1536:78 | new Object[] | provenance | Sink:MaD:468 | -| LogInjectionTest.java:1536:70:1536:77 | source(...) : Object | LogInjectionTest.java:1536:56:1536:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1544:55:1544:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1544:55:1544:77 | new Object[] | provenance | Sink:MaD:414 | -| LogInjectionTest.java:1544:55:1544:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1544:55:1544:77 | new Object[] | provenance | Sink:MaD:477 | -| LogInjectionTest.java:1544:69:1544:76 | source(...) : Object | LogInjectionTest.java:1544:55:1544:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1553:93:1553:115 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1553:93:1553:115 | new Object[] | provenance | Sink:MaD:396 | -| LogInjectionTest.java:1553:93:1553:115 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1553:93:1553:115 | new Object[] | provenance | Sink:MaD:459 | -| LogInjectionTest.java:1553:107:1553:114 | source(...) : Object | LogInjectionTest.java:1553:93:1553:115 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1554:51:1554:58 | source(...) : Object | LogInjectionTest.java:1554:42:1554:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | -| LogInjectionTest.java:1554:51:1554:58 | source(...) : Object | LogInjectionTest.java:1554:42:1554:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:424 | -| LogInjectionTest.java:1555:36:1555:43 | source(...) : Object | LogInjectionTest.java:1555:27:1555:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | -| LogInjectionTest.java:1555:36:1555:43 | source(...) : Object | LogInjectionTest.java:1555:27:1555:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:424 | -| LogInjectionTest.java:1556:51:1556:58 | source(...) : Object | LogInjectionTest.java:1556:42:1556:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | -| LogInjectionTest.java:1556:51:1556:58 | source(...) : Object | LogInjectionTest.java:1556:42:1556:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:428 | -| LogInjectionTest.java:1557:36:1557:43 | source(...) : Object | LogInjectionTest.java:1557:27:1557:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | -| LogInjectionTest.java:1557:36:1557:43 | source(...) : Object | LogInjectionTest.java:1557:27:1557:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:428 | -| LogInjectionTest.java:1558:36:1558:43 | source(...) : Object | LogInjectionTest.java:1558:27:1558:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:364 | -| LogInjectionTest.java:1558:36:1558:43 | source(...) : Object | LogInjectionTest.java:1558:27:1558:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:427 | -| LogInjectionTest.java:1559:36:1559:43 | source(...) : Object | LogInjectionTest.java:1559:27:1559:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:368 | -| LogInjectionTest.java:1559:36:1559:43 | source(...) : Object | LogInjectionTest.java:1559:27:1559:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:431 | -| LogInjectionTest.java:1560:42:1560:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1560:42:1560:64 | new Object[] | provenance | Sink:MaD:364 | -| LogInjectionTest.java:1560:42:1560:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1560:42:1560:64 | new Object[] | provenance | Sink:MaD:427 | -| LogInjectionTest.java:1560:56:1560:63 | source(...) : Object | LogInjectionTest.java:1560:42:1560:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1561:42:1561:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1561:42:1561:64 | new Object[] | provenance | Sink:MaD:368 | -| LogInjectionTest.java:1561:42:1561:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1561:42:1561:64 | new Object[] | provenance | Sink:MaD:431 | -| LogInjectionTest.java:1561:56:1561:63 | source(...) : Object | LogInjectionTest.java:1561:42:1561:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1562:66:1562:73 | source(...) : Object | LogInjectionTest.java:1562:57:1562:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | -| LogInjectionTest.java:1562:66:1562:73 | source(...) : Object | LogInjectionTest.java:1562:57:1562:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:425 | -| LogInjectionTest.java:1563:51:1563:58 | source(...) : Object | LogInjectionTest.java:1563:42:1563:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | -| LogInjectionTest.java:1563:51:1563:58 | source(...) : Object | LogInjectionTest.java:1563:42:1563:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:425 | -| LogInjectionTest.java:1564:36:1564:43 | source(...) : Object | LogInjectionTest.java:1564:27:1564:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | -| LogInjectionTest.java:1564:36:1564:43 | source(...) : Object | LogInjectionTest.java:1564:27:1564:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:425 | -| LogInjectionTest.java:1565:66:1565:73 | source(...) : Object | LogInjectionTest.java:1565:57:1565:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | -| LogInjectionTest.java:1565:66:1565:73 | source(...) : Object | LogInjectionTest.java:1565:57:1565:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:429 | -| LogInjectionTest.java:1566:51:1566:58 | source(...) : Object | LogInjectionTest.java:1566:42:1566:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | -| LogInjectionTest.java:1566:51:1566:58 | source(...) : Object | LogInjectionTest.java:1566:42:1566:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:429 | -| LogInjectionTest.java:1567:36:1567:43 | source(...) : Object | LogInjectionTest.java:1567:27:1567:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | -| LogInjectionTest.java:1567:36:1567:43 | source(...) : Object | LogInjectionTest.java:1567:27:1567:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:429 | -| LogInjectionTest.java:1568:81:1568:88 | source(...) : Object | LogInjectionTest.java:1568:72:1568:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1568:81:1568:88 | source(...) : Object | LogInjectionTest.java:1568:72:1568:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | -| LogInjectionTest.java:1569:66:1569:73 | source(...) : Object | LogInjectionTest.java:1569:57:1569:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1569:66:1569:73 | source(...) : Object | LogInjectionTest.java:1569:57:1569:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | -| LogInjectionTest.java:1570:51:1570:58 | source(...) : Object | LogInjectionTest.java:1570:42:1570:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1570:51:1570:58 | source(...) : Object | LogInjectionTest.java:1570:42:1570:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | -| LogInjectionTest.java:1571:36:1571:43 | source(...) : Object | LogInjectionTest.java:1571:27:1571:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | -| LogInjectionTest.java:1571:36:1571:43 | source(...) : Object | LogInjectionTest.java:1571:27:1571:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | -| LogInjectionTest.java:1572:81:1572:88 | source(...) : Object | LogInjectionTest.java:1572:72:1572:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1572:81:1572:88 | source(...) : Object | LogInjectionTest.java:1572:72:1572:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | -| LogInjectionTest.java:1573:66:1573:73 | source(...) : Object | LogInjectionTest.java:1573:57:1573:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1573:66:1573:73 | source(...) : Object | LogInjectionTest.java:1573:57:1573:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | -| LogInjectionTest.java:1574:51:1574:58 | source(...) : Object | LogInjectionTest.java:1574:42:1574:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1574:51:1574:58 | source(...) : Object | LogInjectionTest.java:1574:42:1574:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | -| LogInjectionTest.java:1575:36:1575:43 | source(...) : Object | LogInjectionTest.java:1575:27:1575:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | -| LogInjectionTest.java:1575:36:1575:43 | source(...) : Object | LogInjectionTest.java:1575:27:1575:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | -| LogInjectionTest.java:1576:51:1576:58 | source(...) : Object | LogInjectionTest.java:1576:42:1576:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | -| LogInjectionTest.java:1576:51:1576:58 | source(...) : Object | LogInjectionTest.java:1576:42:1576:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:433 | -| LogInjectionTest.java:1577:36:1577:43 | source(...) : Object | LogInjectionTest.java:1577:27:1577:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | -| LogInjectionTest.java:1577:36:1577:43 | source(...) : Object | LogInjectionTest.java:1577:27:1577:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:433 | -| LogInjectionTest.java:1578:51:1578:58 | source(...) : Object | LogInjectionTest.java:1578:42:1578:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | -| LogInjectionTest.java:1578:51:1578:58 | source(...) : Object | LogInjectionTest.java:1578:42:1578:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:437 | -| LogInjectionTest.java:1579:36:1579:43 | source(...) : Object | LogInjectionTest.java:1579:27:1579:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | -| LogInjectionTest.java:1579:36:1579:43 | source(...) : Object | LogInjectionTest.java:1579:27:1579:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:437 | -| LogInjectionTest.java:1580:36:1580:43 | source(...) : Object | LogInjectionTest.java:1580:27:1580:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:373 | -| LogInjectionTest.java:1580:36:1580:43 | source(...) : Object | LogInjectionTest.java:1580:27:1580:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:436 | -| LogInjectionTest.java:1581:36:1581:43 | source(...) : Object | LogInjectionTest.java:1581:27:1581:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:377 | -| LogInjectionTest.java:1581:36:1581:43 | source(...) : Object | LogInjectionTest.java:1581:27:1581:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:440 | -| LogInjectionTest.java:1582:42:1582:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1582:42:1582:64 | new Object[] | provenance | Sink:MaD:373 | -| LogInjectionTest.java:1582:42:1582:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1582:42:1582:64 | new Object[] | provenance | Sink:MaD:436 | -| LogInjectionTest.java:1582:56:1582:63 | source(...) : Object | LogInjectionTest.java:1582:42:1582:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1583:42:1583:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1583:42:1583:64 | new Object[] | provenance | Sink:MaD:377 | -| LogInjectionTest.java:1583:42:1583:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1583:42:1583:64 | new Object[] | provenance | Sink:MaD:440 | -| LogInjectionTest.java:1583:56:1583:63 | source(...) : Object | LogInjectionTest.java:1583:42:1583:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1584:66:1584:73 | source(...) : Object | LogInjectionTest.java:1584:57:1584:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | -| LogInjectionTest.java:1584:66:1584:73 | source(...) : Object | LogInjectionTest.java:1584:57:1584:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:434 | -| LogInjectionTest.java:1585:51:1585:58 | source(...) : Object | LogInjectionTest.java:1585:42:1585:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | -| LogInjectionTest.java:1585:51:1585:58 | source(...) : Object | LogInjectionTest.java:1585:42:1585:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:434 | -| LogInjectionTest.java:1586:36:1586:43 | source(...) : Object | LogInjectionTest.java:1586:27:1586:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | -| LogInjectionTest.java:1586:36:1586:43 | source(...) : Object | LogInjectionTest.java:1586:27:1586:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:434 | -| LogInjectionTest.java:1587:66:1587:73 | source(...) : Object | LogInjectionTest.java:1587:57:1587:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | -| LogInjectionTest.java:1587:66:1587:73 | source(...) : Object | LogInjectionTest.java:1587:57:1587:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:438 | -| LogInjectionTest.java:1588:51:1588:58 | source(...) : Object | LogInjectionTest.java:1588:42:1588:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | -| LogInjectionTest.java:1588:51:1588:58 | source(...) : Object | LogInjectionTest.java:1588:42:1588:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:438 | -| LogInjectionTest.java:1589:36:1589:43 | source(...) : Object | LogInjectionTest.java:1589:27:1589:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | -| LogInjectionTest.java:1589:36:1589:43 | source(...) : Object | LogInjectionTest.java:1589:27:1589:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:438 | -| LogInjectionTest.java:1590:81:1590:88 | source(...) : Object | LogInjectionTest.java:1590:72:1590:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1590:81:1590:88 | source(...) : Object | LogInjectionTest.java:1590:72:1590:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | -| LogInjectionTest.java:1591:66:1591:73 | source(...) : Object | LogInjectionTest.java:1591:57:1591:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1591:66:1591:73 | source(...) : Object | LogInjectionTest.java:1591:57:1591:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | -| LogInjectionTest.java:1592:51:1592:58 | source(...) : Object | LogInjectionTest.java:1592:42:1592:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1592:51:1592:58 | source(...) : Object | LogInjectionTest.java:1592:42:1592:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | -| LogInjectionTest.java:1593:36:1593:43 | source(...) : Object | LogInjectionTest.java:1593:27:1593:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | -| LogInjectionTest.java:1593:36:1593:43 | source(...) : Object | LogInjectionTest.java:1593:27:1593:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | -| LogInjectionTest.java:1594:81:1594:88 | source(...) : Object | LogInjectionTest.java:1594:72:1594:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1594:81:1594:88 | source(...) : Object | LogInjectionTest.java:1594:72:1594:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | -| LogInjectionTest.java:1595:66:1595:73 | source(...) : Object | LogInjectionTest.java:1595:57:1595:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1595:66:1595:73 | source(...) : Object | LogInjectionTest.java:1595:57:1595:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | -| LogInjectionTest.java:1596:51:1596:58 | source(...) : Object | LogInjectionTest.java:1596:42:1596:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1596:51:1596:58 | source(...) : Object | LogInjectionTest.java:1596:42:1596:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | -| LogInjectionTest.java:1597:36:1597:43 | source(...) : Object | LogInjectionTest.java:1597:27:1597:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | -| LogInjectionTest.java:1597:36:1597:43 | source(...) : Object | LogInjectionTest.java:1597:27:1597:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | -| LogInjectionTest.java:1598:51:1598:58 | source(...) : Object | LogInjectionTest.java:1598:42:1598:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | -| LogInjectionTest.java:1598:51:1598:58 | source(...) : Object | LogInjectionTest.java:1598:42:1598:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:442 | -| LogInjectionTest.java:1599:36:1599:43 | source(...) : Object | LogInjectionTest.java:1599:27:1599:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | -| LogInjectionTest.java:1599:36:1599:43 | source(...) : Object | LogInjectionTest.java:1599:27:1599:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:442 | -| LogInjectionTest.java:1600:51:1600:58 | source(...) : Object | LogInjectionTest.java:1600:42:1600:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | -| LogInjectionTest.java:1600:51:1600:58 | source(...) : Object | LogInjectionTest.java:1600:42:1600:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:446 | -| LogInjectionTest.java:1601:36:1601:43 | source(...) : Object | LogInjectionTest.java:1601:27:1601:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | -| LogInjectionTest.java:1601:36:1601:43 | source(...) : Object | LogInjectionTest.java:1601:27:1601:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:446 | -| LogInjectionTest.java:1602:36:1602:43 | source(...) : Object | LogInjectionTest.java:1602:27:1602:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:382 | -| LogInjectionTest.java:1602:36:1602:43 | source(...) : Object | LogInjectionTest.java:1602:27:1602:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:445 | -| LogInjectionTest.java:1603:36:1603:43 | source(...) : Object | LogInjectionTest.java:1603:27:1603:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:386 | -| LogInjectionTest.java:1603:36:1603:43 | source(...) : Object | LogInjectionTest.java:1603:27:1603:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:449 | -| LogInjectionTest.java:1604:42:1604:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1604:42:1604:64 | new Object[] | provenance | Sink:MaD:382 | -| LogInjectionTest.java:1604:42:1604:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1604:42:1604:64 | new Object[] | provenance | Sink:MaD:445 | -| LogInjectionTest.java:1604:56:1604:63 | source(...) : Object | LogInjectionTest.java:1604:42:1604:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1605:42:1605:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1605:42:1605:64 | new Object[] | provenance | Sink:MaD:386 | -| LogInjectionTest.java:1605:42:1605:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1605:42:1605:64 | new Object[] | provenance | Sink:MaD:449 | -| LogInjectionTest.java:1605:56:1605:63 | source(...) : Object | LogInjectionTest.java:1605:42:1605:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1606:66:1606:73 | source(...) : Object | LogInjectionTest.java:1606:57:1606:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | -| LogInjectionTest.java:1606:66:1606:73 | source(...) : Object | LogInjectionTest.java:1606:57:1606:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:443 | -| LogInjectionTest.java:1607:51:1607:58 | source(...) : Object | LogInjectionTest.java:1607:42:1607:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | -| LogInjectionTest.java:1607:51:1607:58 | source(...) : Object | LogInjectionTest.java:1607:42:1607:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:443 | -| LogInjectionTest.java:1608:36:1608:43 | source(...) : Object | LogInjectionTest.java:1608:27:1608:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | -| LogInjectionTest.java:1608:36:1608:43 | source(...) : Object | LogInjectionTest.java:1608:27:1608:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:443 | -| LogInjectionTest.java:1609:66:1609:73 | source(...) : Object | LogInjectionTest.java:1609:57:1609:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | -| LogInjectionTest.java:1609:66:1609:73 | source(...) : Object | LogInjectionTest.java:1609:57:1609:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:447 | -| LogInjectionTest.java:1610:51:1610:58 | source(...) : Object | LogInjectionTest.java:1610:42:1610:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | -| LogInjectionTest.java:1610:51:1610:58 | source(...) : Object | LogInjectionTest.java:1610:42:1610:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:447 | -| LogInjectionTest.java:1611:36:1611:43 | source(...) : Object | LogInjectionTest.java:1611:27:1611:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | -| LogInjectionTest.java:1611:36:1611:43 | source(...) : Object | LogInjectionTest.java:1611:27:1611:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:447 | -| LogInjectionTest.java:1612:81:1612:88 | source(...) : Object | LogInjectionTest.java:1612:72:1612:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1612:81:1612:88 | source(...) : Object | LogInjectionTest.java:1612:72:1612:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | -| LogInjectionTest.java:1613:66:1613:73 | source(...) : Object | LogInjectionTest.java:1613:57:1613:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1613:66:1613:73 | source(...) : Object | LogInjectionTest.java:1613:57:1613:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | -| LogInjectionTest.java:1614:51:1614:58 | source(...) : Object | LogInjectionTest.java:1614:42:1614:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1614:51:1614:58 | source(...) : Object | LogInjectionTest.java:1614:42:1614:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | -| LogInjectionTest.java:1615:36:1615:43 | source(...) : Object | LogInjectionTest.java:1615:27:1615:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | -| LogInjectionTest.java:1615:36:1615:43 | source(...) : Object | LogInjectionTest.java:1615:27:1615:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | -| LogInjectionTest.java:1616:81:1616:88 | source(...) : Object | LogInjectionTest.java:1616:72:1616:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1616:81:1616:88 | source(...) : Object | LogInjectionTest.java:1616:72:1616:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | -| LogInjectionTest.java:1617:66:1617:73 | source(...) : Object | LogInjectionTest.java:1617:57:1617:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1617:66:1617:73 | source(...) : Object | LogInjectionTest.java:1617:57:1617:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | -| LogInjectionTest.java:1618:51:1618:58 | source(...) : Object | LogInjectionTest.java:1618:42:1618:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1618:51:1618:58 | source(...) : Object | LogInjectionTest.java:1618:42:1618:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | -| LogInjectionTest.java:1619:36:1619:43 | source(...) : Object | LogInjectionTest.java:1619:27:1619:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | -| LogInjectionTest.java:1619:36:1619:43 | source(...) : Object | LogInjectionTest.java:1619:27:1619:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | -| LogInjectionTest.java:1620:50:1620:57 | source(...) : Object | LogInjectionTest.java:1620:41:1620:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | -| LogInjectionTest.java:1620:50:1620:57 | source(...) : Object | LogInjectionTest.java:1620:41:1620:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:451 | -| LogInjectionTest.java:1621:35:1621:42 | source(...) : Object | LogInjectionTest.java:1621:26:1621:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | -| LogInjectionTest.java:1621:35:1621:42 | source(...) : Object | LogInjectionTest.java:1621:26:1621:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:451 | -| LogInjectionTest.java:1622:50:1622:57 | source(...) : Object | LogInjectionTest.java:1622:41:1622:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | -| LogInjectionTest.java:1622:50:1622:57 | source(...) : Object | LogInjectionTest.java:1622:41:1622:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:455 | -| LogInjectionTest.java:1623:35:1623:42 | source(...) : Object | LogInjectionTest.java:1623:26:1623:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | -| LogInjectionTest.java:1623:35:1623:42 | source(...) : Object | LogInjectionTest.java:1623:26:1623:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:455 | -| LogInjectionTest.java:1624:35:1624:42 | source(...) : Object | LogInjectionTest.java:1624:26:1624:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:391 | -| LogInjectionTest.java:1624:35:1624:42 | source(...) : Object | LogInjectionTest.java:1624:26:1624:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:454 | -| LogInjectionTest.java:1625:35:1625:42 | source(...) : Object | LogInjectionTest.java:1625:26:1625:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:395 | -| LogInjectionTest.java:1625:35:1625:42 | source(...) : Object | LogInjectionTest.java:1625:26:1625:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:458 | -| LogInjectionTest.java:1626:41:1626:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1626:41:1626:63 | new Object[] | provenance | Sink:MaD:391 | -| LogInjectionTest.java:1626:41:1626:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1626:41:1626:63 | new Object[] | provenance | Sink:MaD:454 | -| LogInjectionTest.java:1626:55:1626:62 | source(...) : Object | LogInjectionTest.java:1626:41:1626:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1627:41:1627:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1627:41:1627:63 | new Object[] | provenance | Sink:MaD:395 | -| LogInjectionTest.java:1627:41:1627:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1627:41:1627:63 | new Object[] | provenance | Sink:MaD:458 | -| LogInjectionTest.java:1627:55:1627:62 | source(...) : Object | LogInjectionTest.java:1627:41:1627:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1628:65:1628:72 | source(...) : Object | LogInjectionTest.java:1628:56:1628:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | -| LogInjectionTest.java:1628:65:1628:72 | source(...) : Object | LogInjectionTest.java:1628:56:1628:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:452 | -| LogInjectionTest.java:1629:50:1629:57 | source(...) : Object | LogInjectionTest.java:1629:41:1629:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | -| LogInjectionTest.java:1629:50:1629:57 | source(...) : Object | LogInjectionTest.java:1629:41:1629:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:452 | -| LogInjectionTest.java:1630:35:1630:42 | source(...) : Object | LogInjectionTest.java:1630:26:1630:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | -| LogInjectionTest.java:1630:35:1630:42 | source(...) : Object | LogInjectionTest.java:1630:26:1630:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:452 | -| LogInjectionTest.java:1631:65:1631:72 | source(...) : Object | LogInjectionTest.java:1631:56:1631:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | -| LogInjectionTest.java:1631:65:1631:72 | source(...) : Object | LogInjectionTest.java:1631:56:1631:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:456 | -| LogInjectionTest.java:1632:50:1632:57 | source(...) : Object | LogInjectionTest.java:1632:41:1632:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | -| LogInjectionTest.java:1632:50:1632:57 | source(...) : Object | LogInjectionTest.java:1632:41:1632:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:456 | -| LogInjectionTest.java:1633:35:1633:42 | source(...) : Object | LogInjectionTest.java:1633:26:1633:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | -| LogInjectionTest.java:1633:35:1633:42 | source(...) : Object | LogInjectionTest.java:1633:26:1633:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:456 | -| LogInjectionTest.java:1634:80:1634:87 | source(...) : Object | LogInjectionTest.java:1634:71:1634:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1634:80:1634:87 | source(...) : Object | LogInjectionTest.java:1634:71:1634:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | -| LogInjectionTest.java:1635:65:1635:72 | source(...) : Object | LogInjectionTest.java:1635:56:1635:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1635:65:1635:72 | source(...) : Object | LogInjectionTest.java:1635:56:1635:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | -| LogInjectionTest.java:1636:50:1636:57 | source(...) : Object | LogInjectionTest.java:1636:41:1636:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1636:50:1636:57 | source(...) : Object | LogInjectionTest.java:1636:41:1636:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | -| LogInjectionTest.java:1637:35:1637:42 | source(...) : Object | LogInjectionTest.java:1637:26:1637:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | -| LogInjectionTest.java:1637:35:1637:42 | source(...) : Object | LogInjectionTest.java:1637:26:1637:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | -| LogInjectionTest.java:1638:80:1638:87 | source(...) : Object | LogInjectionTest.java:1638:71:1638:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1638:80:1638:87 | source(...) : Object | LogInjectionTest.java:1638:71:1638:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | -| LogInjectionTest.java:1639:65:1639:72 | source(...) : Object | LogInjectionTest.java:1639:56:1639:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1639:65:1639:72 | source(...) : Object | LogInjectionTest.java:1639:56:1639:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | -| LogInjectionTest.java:1640:50:1640:57 | source(...) : Object | LogInjectionTest.java:1640:41:1640:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1640:50:1640:57 | source(...) : Object | LogInjectionTest.java:1640:41:1640:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | -| LogInjectionTest.java:1641:35:1641:42 | source(...) : Object | LogInjectionTest.java:1641:26:1641:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | -| LogInjectionTest.java:1641:35:1641:42 | source(...) : Object | LogInjectionTest.java:1641:26:1641:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | -| LogInjectionTest.java:1642:88:1642:95 | source(...) : Object | LogInjectionTest.java:1642:79:1642:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | -| LogInjectionTest.java:1642:88:1642:95 | source(...) : Object | LogInjectionTest.java:1642:79:1642:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:460 | -| LogInjectionTest.java:1643:73:1643:80 | source(...) : Object | LogInjectionTest.java:1643:64:1643:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | -| LogInjectionTest.java:1643:73:1643:80 | source(...) : Object | LogInjectionTest.java:1643:64:1643:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:460 | -| LogInjectionTest.java:1644:88:1644:95 | source(...) : Object | LogInjectionTest.java:1644:79:1644:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | -| LogInjectionTest.java:1644:88:1644:95 | source(...) : Object | LogInjectionTest.java:1644:79:1644:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:464 | -| LogInjectionTest.java:1645:73:1645:80 | source(...) : Object | LogInjectionTest.java:1645:64:1645:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | -| LogInjectionTest.java:1645:73:1645:80 | source(...) : Object | LogInjectionTest.java:1645:64:1645:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:464 | -| LogInjectionTest.java:1646:73:1646:80 | source(...) : Object | LogInjectionTest.java:1646:64:1646:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:400 | -| LogInjectionTest.java:1646:73:1646:80 | source(...) : Object | LogInjectionTest.java:1646:64:1646:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:463 | -| LogInjectionTest.java:1647:73:1647:80 | source(...) : Object | LogInjectionTest.java:1647:64:1647:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:404 | -| LogInjectionTest.java:1647:73:1647:80 | source(...) : Object | LogInjectionTest.java:1647:64:1647:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:467 | -| LogInjectionTest.java:1648:79:1648:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1648:79:1648:101 | new Object[] | provenance | Sink:MaD:400 | -| LogInjectionTest.java:1648:79:1648:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1648:79:1648:101 | new Object[] | provenance | Sink:MaD:463 | -| LogInjectionTest.java:1648:93:1648:100 | source(...) : Object | LogInjectionTest.java:1648:79:1648:101 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1649:79:1649:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1649:79:1649:101 | new Object[] | provenance | Sink:MaD:404 | -| LogInjectionTest.java:1649:79:1649:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1649:79:1649:101 | new Object[] | provenance | Sink:MaD:467 | -| LogInjectionTest.java:1649:93:1649:100 | source(...) : Object | LogInjectionTest.java:1649:79:1649:101 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1650:103:1650:110 | source(...) : Object | LogInjectionTest.java:1650:94:1650:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | -| LogInjectionTest.java:1650:103:1650:110 | source(...) : Object | LogInjectionTest.java:1650:94:1650:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:461 | -| LogInjectionTest.java:1651:88:1651:95 | source(...) : Object | LogInjectionTest.java:1651:79:1651:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | -| LogInjectionTest.java:1651:88:1651:95 | source(...) : Object | LogInjectionTest.java:1651:79:1651:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:461 | -| LogInjectionTest.java:1652:73:1652:80 | source(...) : Object | LogInjectionTest.java:1652:64:1652:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | -| LogInjectionTest.java:1652:73:1652:80 | source(...) : Object | LogInjectionTest.java:1652:64:1652:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:461 | -| LogInjectionTest.java:1653:103:1653:110 | source(...) : Object | LogInjectionTest.java:1653:94:1653:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | -| LogInjectionTest.java:1653:103:1653:110 | source(...) : Object | LogInjectionTest.java:1653:94:1653:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:465 | -| LogInjectionTest.java:1654:88:1654:95 | source(...) : Object | LogInjectionTest.java:1654:79:1654:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | -| LogInjectionTest.java:1654:88:1654:95 | source(...) : Object | LogInjectionTest.java:1654:79:1654:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:465 | -| LogInjectionTest.java:1655:73:1655:80 | source(...) : Object | LogInjectionTest.java:1655:64:1655:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | -| LogInjectionTest.java:1655:73:1655:80 | source(...) : Object | LogInjectionTest.java:1655:64:1655:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:465 | -| LogInjectionTest.java:1656:118:1656:125 | source(...) : Object | LogInjectionTest.java:1656:109:1656:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1656:118:1656:125 | source(...) : Object | LogInjectionTest.java:1656:109:1656:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | -| LogInjectionTest.java:1657:103:1657:110 | source(...) : Object | LogInjectionTest.java:1657:94:1657:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1657:103:1657:110 | source(...) : Object | LogInjectionTest.java:1657:94:1657:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | -| LogInjectionTest.java:1658:88:1658:95 | source(...) : Object | LogInjectionTest.java:1658:79:1658:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1658:88:1658:95 | source(...) : Object | LogInjectionTest.java:1658:79:1658:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | -| LogInjectionTest.java:1659:73:1659:80 | source(...) : Object | LogInjectionTest.java:1659:64:1659:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | -| LogInjectionTest.java:1659:73:1659:80 | source(...) : Object | LogInjectionTest.java:1659:64:1659:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | -| LogInjectionTest.java:1660:118:1660:125 | source(...) : Object | LogInjectionTest.java:1660:109:1660:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1660:118:1660:125 | source(...) : Object | LogInjectionTest.java:1660:109:1660:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | -| LogInjectionTest.java:1661:103:1661:110 | source(...) : Object | LogInjectionTest.java:1661:94:1661:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1661:103:1661:110 | source(...) : Object | LogInjectionTest.java:1661:94:1661:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | -| LogInjectionTest.java:1662:88:1662:95 | source(...) : Object | LogInjectionTest.java:1662:79:1662:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1662:88:1662:95 | source(...) : Object | LogInjectionTest.java:1662:79:1662:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | -| LogInjectionTest.java:1663:73:1663:80 | source(...) : Object | LogInjectionTest.java:1663:64:1663:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | -| LogInjectionTest.java:1663:73:1663:80 | source(...) : Object | LogInjectionTest.java:1663:64:1663:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | -| LogInjectionTest.java:1664:51:1664:58 | source(...) : Object | LogInjectionTest.java:1664:42:1664:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | -| LogInjectionTest.java:1664:51:1664:58 | source(...) : Object | LogInjectionTest.java:1664:42:1664:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:469 | -| LogInjectionTest.java:1665:36:1665:43 | source(...) : Object | LogInjectionTest.java:1665:27:1665:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | -| LogInjectionTest.java:1665:36:1665:43 | source(...) : Object | LogInjectionTest.java:1665:27:1665:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:469 | -| LogInjectionTest.java:1666:51:1666:58 | source(...) : Object | LogInjectionTest.java:1666:42:1666:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | -| LogInjectionTest.java:1666:51:1666:58 | source(...) : Object | LogInjectionTest.java:1666:42:1666:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:473 | -| LogInjectionTest.java:1667:36:1667:43 | source(...) : Object | LogInjectionTest.java:1667:27:1667:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | -| LogInjectionTest.java:1667:36:1667:43 | source(...) : Object | LogInjectionTest.java:1667:27:1667:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:473 | -| LogInjectionTest.java:1668:36:1668:43 | source(...) : Object | LogInjectionTest.java:1668:27:1668:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:409 | -| LogInjectionTest.java:1668:36:1668:43 | source(...) : Object | LogInjectionTest.java:1668:27:1668:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:472 | -| LogInjectionTest.java:1669:36:1669:43 | source(...) : Object | LogInjectionTest.java:1669:27:1669:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:413 | -| LogInjectionTest.java:1669:36:1669:43 | source(...) : Object | LogInjectionTest.java:1669:27:1669:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:476 | -| LogInjectionTest.java:1670:42:1670:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1670:42:1670:64 | new Object[] | provenance | Sink:MaD:409 | -| LogInjectionTest.java:1670:42:1670:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1670:42:1670:64 | new Object[] | provenance | Sink:MaD:472 | -| LogInjectionTest.java:1670:56:1670:63 | source(...) : Object | LogInjectionTest.java:1670:42:1670:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1671:42:1671:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1671:42:1671:64 | new Object[] | provenance | Sink:MaD:413 | -| LogInjectionTest.java:1671:42:1671:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1671:42:1671:64 | new Object[] | provenance | Sink:MaD:476 | -| LogInjectionTest.java:1671:56:1671:63 | source(...) : Object | LogInjectionTest.java:1671:42:1671:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1672:66:1672:73 | source(...) : Object | LogInjectionTest.java:1672:57:1672:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | -| LogInjectionTest.java:1672:66:1672:73 | source(...) : Object | LogInjectionTest.java:1672:57:1672:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:470 | -| LogInjectionTest.java:1673:51:1673:58 | source(...) : Object | LogInjectionTest.java:1673:42:1673:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | -| LogInjectionTest.java:1673:51:1673:58 | source(...) : Object | LogInjectionTest.java:1673:42:1673:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:470 | -| LogInjectionTest.java:1674:36:1674:43 | source(...) : Object | LogInjectionTest.java:1674:27:1674:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | -| LogInjectionTest.java:1674:36:1674:43 | source(...) : Object | LogInjectionTest.java:1674:27:1674:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:470 | -| LogInjectionTest.java:1675:66:1675:73 | source(...) : Object | LogInjectionTest.java:1675:57:1675:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | -| LogInjectionTest.java:1675:66:1675:73 | source(...) : Object | LogInjectionTest.java:1675:57:1675:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:474 | -| LogInjectionTest.java:1676:51:1676:58 | source(...) : Object | LogInjectionTest.java:1676:42:1676:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | -| LogInjectionTest.java:1676:51:1676:58 | source(...) : Object | LogInjectionTest.java:1676:42:1676:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:474 | -| LogInjectionTest.java:1677:36:1677:43 | source(...) : Object | LogInjectionTest.java:1677:27:1677:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | -| LogInjectionTest.java:1677:36:1677:43 | source(...) : Object | LogInjectionTest.java:1677:27:1677:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:474 | -| LogInjectionTest.java:1678:81:1678:88 | source(...) : Object | LogInjectionTest.java:1678:72:1678:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1678:81:1678:88 | source(...) : Object | LogInjectionTest.java:1678:72:1678:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | -| LogInjectionTest.java:1679:66:1679:73 | source(...) : Object | LogInjectionTest.java:1679:57:1679:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1679:66:1679:73 | source(...) : Object | LogInjectionTest.java:1679:57:1679:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | -| LogInjectionTest.java:1680:51:1680:58 | source(...) : Object | LogInjectionTest.java:1680:42:1680:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1680:51:1680:58 | source(...) : Object | LogInjectionTest.java:1680:42:1680:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | -| LogInjectionTest.java:1681:36:1681:43 | source(...) : Object | LogInjectionTest.java:1681:27:1681:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | -| LogInjectionTest.java:1681:36:1681:43 | source(...) : Object | LogInjectionTest.java:1681:27:1681:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | -| LogInjectionTest.java:1682:81:1682:88 | source(...) : Object | LogInjectionTest.java:1682:72:1682:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1682:81:1682:88 | source(...) : Object | LogInjectionTest.java:1682:72:1682:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | -| LogInjectionTest.java:1683:66:1683:73 | source(...) : Object | LogInjectionTest.java:1683:57:1683:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1683:66:1683:73 | source(...) : Object | LogInjectionTest.java:1683:57:1683:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | -| LogInjectionTest.java:1684:51:1684:58 | source(...) : Object | LogInjectionTest.java:1684:42:1684:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1684:51:1684:58 | source(...) : Object | LogInjectionTest.java:1684:42:1684:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | -| LogInjectionTest.java:1685:36:1685:43 | source(...) : Object | LogInjectionTest.java:1685:27:1685:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | -| LogInjectionTest.java:1685:36:1685:43 | source(...) : Object | LogInjectionTest.java:1685:27:1685:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | -| LogInjectionTest.java:1686:50:1686:57 | source(...) : Object | LogInjectionTest.java:1686:41:1686:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | -| LogInjectionTest.java:1686:50:1686:57 | source(...) : Object | LogInjectionTest.java:1686:41:1686:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:478 | -| LogInjectionTest.java:1687:35:1687:42 | source(...) : Object | LogInjectionTest.java:1687:26:1687:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | -| LogInjectionTest.java:1687:35:1687:42 | source(...) : Object | LogInjectionTest.java:1687:26:1687:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:478 | -| LogInjectionTest.java:1688:50:1688:57 | source(...) : Object | LogInjectionTest.java:1688:41:1688:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | -| LogInjectionTest.java:1688:50:1688:57 | source(...) : Object | LogInjectionTest.java:1688:41:1688:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:482 | -| LogInjectionTest.java:1689:35:1689:42 | source(...) : Object | LogInjectionTest.java:1689:26:1689:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | -| LogInjectionTest.java:1689:35:1689:42 | source(...) : Object | LogInjectionTest.java:1689:26:1689:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:482 | -| LogInjectionTest.java:1690:35:1690:42 | source(...) : Object | LogInjectionTest.java:1690:26:1690:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:418 | -| LogInjectionTest.java:1690:35:1690:42 | source(...) : Object | LogInjectionTest.java:1690:26:1690:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:481 | -| LogInjectionTest.java:1691:35:1691:42 | source(...) : Object | LogInjectionTest.java:1691:26:1691:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:422 | -| LogInjectionTest.java:1691:35:1691:42 | source(...) : Object | LogInjectionTest.java:1691:26:1691:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:485 | -| LogInjectionTest.java:1692:41:1692:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1692:41:1692:63 | new Object[] | provenance | Sink:MaD:418 | -| LogInjectionTest.java:1692:41:1692:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1692:41:1692:63 | new Object[] | provenance | Sink:MaD:481 | -| LogInjectionTest.java:1692:55:1692:62 | source(...) : Object | LogInjectionTest.java:1692:41:1692:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1693:41:1693:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1693:41:1693:63 | new Object[] | provenance | Sink:MaD:422 | -| LogInjectionTest.java:1693:41:1693:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1693:41:1693:63 | new Object[] | provenance | Sink:MaD:485 | -| LogInjectionTest.java:1693:55:1693:62 | source(...) : Object | LogInjectionTest.java:1693:41:1693:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1694:65:1694:72 | source(...) : Object | LogInjectionTest.java:1694:56:1694:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | -| LogInjectionTest.java:1694:65:1694:72 | source(...) : Object | LogInjectionTest.java:1694:56:1694:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:479 | -| LogInjectionTest.java:1695:50:1695:57 | source(...) : Object | LogInjectionTest.java:1695:41:1695:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | -| LogInjectionTest.java:1695:50:1695:57 | source(...) : Object | LogInjectionTest.java:1695:41:1695:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:479 | -| LogInjectionTest.java:1696:35:1696:42 | source(...) : Object | LogInjectionTest.java:1696:26:1696:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | -| LogInjectionTest.java:1696:35:1696:42 | source(...) : Object | LogInjectionTest.java:1696:26:1696:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:479 | -| LogInjectionTest.java:1697:65:1697:72 | source(...) : Object | LogInjectionTest.java:1697:56:1697:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | -| LogInjectionTest.java:1697:65:1697:72 | source(...) : Object | LogInjectionTest.java:1697:56:1697:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:483 | -| LogInjectionTest.java:1698:50:1698:57 | source(...) : Object | LogInjectionTest.java:1698:41:1698:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | -| LogInjectionTest.java:1698:50:1698:57 | source(...) : Object | LogInjectionTest.java:1698:41:1698:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:483 | -| LogInjectionTest.java:1699:35:1699:42 | source(...) : Object | LogInjectionTest.java:1699:26:1699:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | -| LogInjectionTest.java:1699:35:1699:42 | source(...) : Object | LogInjectionTest.java:1699:26:1699:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:483 | -| LogInjectionTest.java:1700:80:1700:87 | source(...) : Object | LogInjectionTest.java:1700:71:1700:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1700:80:1700:87 | source(...) : Object | LogInjectionTest.java:1700:71:1700:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | -| LogInjectionTest.java:1701:65:1701:72 | source(...) : Object | LogInjectionTest.java:1701:56:1701:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1701:65:1701:72 | source(...) : Object | LogInjectionTest.java:1701:56:1701:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | -| LogInjectionTest.java:1702:50:1702:57 | source(...) : Object | LogInjectionTest.java:1702:41:1702:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1702:50:1702:57 | source(...) : Object | LogInjectionTest.java:1702:41:1702:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | -| LogInjectionTest.java:1703:35:1703:42 | source(...) : Object | LogInjectionTest.java:1703:26:1703:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | -| LogInjectionTest.java:1703:35:1703:42 | source(...) : Object | LogInjectionTest.java:1703:26:1703:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | -| LogInjectionTest.java:1704:80:1704:87 | source(...) : Object | LogInjectionTest.java:1704:71:1704:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1704:80:1704:87 | source(...) : Object | LogInjectionTest.java:1704:71:1704:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | -| LogInjectionTest.java:1705:65:1705:72 | source(...) : Object | LogInjectionTest.java:1705:56:1705:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1705:65:1705:72 | source(...) : Object | LogInjectionTest.java:1705:56:1705:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | -| LogInjectionTest.java:1706:50:1706:57 | source(...) : Object | LogInjectionTest.java:1706:41:1706:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1706:50:1706:57 | source(...) : Object | LogInjectionTest.java:1706:41:1706:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | -| LogInjectionTest.java:1707:35:1707:42 | source(...) : Object | LogInjectionTest.java:1707:26:1707:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | -| LogInjectionTest.java:1707:35:1707:42 | source(...) : Object | LogInjectionTest.java:1707:26:1707:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | -| LogInjectionTest.java:1712:34:1712:41 | source(...) : Object | LogInjectionTest.java:1712:25:1712:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | -| LogInjectionTest.java:1713:34:1713:41 | source(...) : Object | LogInjectionTest.java:1713:25:1713:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | -| LogInjectionTest.java:1713:34:1713:41 | source(...) : Object | LogInjectionTest.java:1713:25:1713:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:486 | -| LogInjectionTest.java:1715:34:1715:41 | source(...) : Object | LogInjectionTest.java:1715:25:1715:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | -| LogInjectionTest.java:1715:34:1715:41 | source(...) : Object | LogInjectionTest.java:1715:25:1715:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:488 | -| LogInjectionTest.java:1716:40:1716:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1716:40:1716:62 | new Object[] | provenance | Sink:MaD:488 | -| LogInjectionTest.java:1716:54:1716:61 | source(...) : Object | LogInjectionTest.java:1716:40:1716:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1717:34:1717:41 | source(...) : Object | LogInjectionTest.java:1717:25:1717:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | -| LogInjectionTest.java:1717:34:1717:41 | source(...) : Object | LogInjectionTest.java:1717:25:1717:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:487 | -| LogInjectionTest.java:1720:55:1720:62 | source(...) : Object | LogInjectionTest.java:1720:25:1720:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | -| LogInjectionTest.java:1720:55:1720:62 | source(...) : Object | LogInjectionTest.java:1720:25:1720:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:489 | -| LogInjectionTest.java:1725:35:1725:42 | source(...) : Object | LogInjectionTest.java:1725:26:1725:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:495 | -| LogInjectionTest.java:1726:35:1726:42 | source(...) : Object | LogInjectionTest.java:1726:26:1726:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:496 | -| LogInjectionTest.java:1728:35:1728:42 | source(...) : Object | LogInjectionTest.java:1728:26:1728:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:498 | -| LogInjectionTest.java:1729:41:1729:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1729:41:1729:63 | new Object[] | provenance | Sink:MaD:498 | -| LogInjectionTest.java:1729:55:1729:62 | source(...) : Object | LogInjectionTest.java:1729:41:1729:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1730:35:1730:42 | source(...) : Object | LogInjectionTest.java:1730:26:1730:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:497 | -| LogInjectionTest.java:1733:35:1733:42 | source(...) : Object | LogInjectionTest.java:1733:26:1733:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:499 | -| LogInjectionTest.java:1734:60:1734:67 | source(...) : Object | LogInjectionTest.java:1734:51:1734:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:491 | -| LogInjectionTest.java:1735:60:1735:67 | source(...) : Object | LogInjectionTest.java:1735:51:1735:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:492 | -| LogInjectionTest.java:1737:60:1737:67 | source(...) : Object | LogInjectionTest.java:1737:51:1737:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:494 | -| LogInjectionTest.java:1738:66:1738:88 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1738:66:1738:88 | new Object[] | provenance | Sink:MaD:494 | -| LogInjectionTest.java:1738:80:1738:87 | source(...) : Object | LogInjectionTest.java:1738:66:1738:88 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1739:60:1739:67 | source(...) : Object | LogInjectionTest.java:1739:51:1739:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:493 | -| LogInjectionTest.java:1742:60:1742:67 | source(...) : Object | LogInjectionTest.java:1742:51:1742:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:494 | -| LogInjectionTest.java:1743:66:1743:73 | source(...) : Object | LogInjectionTest.java:1743:13:1743:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:494 | -| LogInjectionTest.java:1744:81:1744:88 | source(...) : Object | LogInjectionTest.java:1744:13:1744:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:494 | -| LogInjectionTest.java:1745:96:1745:103 | source(...) : Object | LogInjectionTest.java:1745:13:1745:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:494 | -| LogInjectionTest.java:1746:35:1746:42 | source(...) : Object | LogInjectionTest.java:1746:26:1746:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:504 | -| LogInjectionTest.java:1747:35:1747:42 | source(...) : Object | LogInjectionTest.java:1747:26:1747:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:505 | -| LogInjectionTest.java:1749:35:1749:42 | source(...) : Object | LogInjectionTest.java:1749:26:1749:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:507 | -| LogInjectionTest.java:1750:41:1750:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1750:41:1750:63 | new Object[] | provenance | Sink:MaD:507 | -| LogInjectionTest.java:1750:55:1750:62 | source(...) : Object | LogInjectionTest.java:1750:41:1750:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1751:35:1751:42 | source(...) : Object | LogInjectionTest.java:1751:26:1751:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:506 | -| LogInjectionTest.java:1754:35:1754:42 | source(...) : Object | LogInjectionTest.java:1754:26:1754:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:508 | -| LogInjectionTest.java:1755:60:1755:67 | source(...) : Object | LogInjectionTest.java:1755:51:1755:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:500 | -| LogInjectionTest.java:1756:60:1756:67 | source(...) : Object | LogInjectionTest.java:1756:51:1756:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:501 | -| LogInjectionTest.java:1758:60:1758:67 | source(...) : Object | LogInjectionTest.java:1758:51:1758:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:503 | -| LogInjectionTest.java:1759:66:1759:88 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1759:66:1759:88 | new Object[] | provenance | Sink:MaD:503 | -| LogInjectionTest.java:1759:80:1759:87 | source(...) : Object | LogInjectionTest.java:1759:66:1759:88 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1760:60:1760:67 | source(...) : Object | LogInjectionTest.java:1760:51:1760:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:502 | -| LogInjectionTest.java:1763:60:1763:67 | source(...) : Object | LogInjectionTest.java:1763:51:1763:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:503 | -| LogInjectionTest.java:1764:66:1764:73 | source(...) : Object | LogInjectionTest.java:1764:13:1764:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:503 | -| LogInjectionTest.java:1765:81:1765:88 | source(...) : Object | LogInjectionTest.java:1765:13:1765:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:503 | -| LogInjectionTest.java:1766:96:1766:103 | source(...) : Object | LogInjectionTest.java:1766:13:1766:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:503 | -| LogInjectionTest.java:1767:34:1767:41 | source(...) : Object | LogInjectionTest.java:1767:25:1767:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:513 | -| LogInjectionTest.java:1768:34:1768:41 | source(...) : Object | LogInjectionTest.java:1768:25:1768:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:514 | -| LogInjectionTest.java:1770:34:1770:41 | source(...) : Object | LogInjectionTest.java:1770:25:1770:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:516 | -| LogInjectionTest.java:1771:40:1771:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1771:40:1771:62 | new Object[] | provenance | Sink:MaD:516 | -| LogInjectionTest.java:1771:54:1771:61 | source(...) : Object | LogInjectionTest.java:1771:40:1771:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1772:34:1772:41 | source(...) : Object | LogInjectionTest.java:1772:25:1772:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:515 | -| LogInjectionTest.java:1775:34:1775:41 | source(...) : Object | LogInjectionTest.java:1775:25:1775:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:517 | -| LogInjectionTest.java:1776:59:1776:66 | source(...) : Object | LogInjectionTest.java:1776:50:1776:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:509 | -| LogInjectionTest.java:1777:59:1777:66 | source(...) : Object | LogInjectionTest.java:1777:50:1777:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:510 | -| LogInjectionTest.java:1779:59:1779:66 | source(...) : Object | LogInjectionTest.java:1779:50:1779:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:512 | -| LogInjectionTest.java:1780:65:1780:87 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1780:65:1780:87 | new Object[] | provenance | Sink:MaD:512 | -| LogInjectionTest.java:1780:79:1780:86 | source(...) : Object | LogInjectionTest.java:1780:65:1780:87 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1781:59:1781:66 | source(...) : Object | LogInjectionTest.java:1781:50:1781:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:511 | -| LogInjectionTest.java:1784:59:1784:66 | source(...) : Object | LogInjectionTest.java:1784:50:1784:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:512 | -| LogInjectionTest.java:1785:65:1785:72 | source(...) : Object | LogInjectionTest.java:1785:13:1785:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:512 | -| LogInjectionTest.java:1786:80:1786:87 | source(...) : Object | LogInjectionTest.java:1786:13:1786:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:512 | -| LogInjectionTest.java:1787:95:1787:102 | source(...) : Object | LogInjectionTest.java:1787:13:1787:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:512 | -| LogInjectionTest.java:1788:35:1788:42 | source(...) : Object | LogInjectionTest.java:1788:26:1788:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:522 | -| LogInjectionTest.java:1789:35:1789:42 | source(...) : Object | LogInjectionTest.java:1789:26:1789:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:523 | -| LogInjectionTest.java:1791:35:1791:42 | source(...) : Object | LogInjectionTest.java:1791:26:1791:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:525 | -| LogInjectionTest.java:1792:41:1792:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1792:41:1792:63 | new Object[] | provenance | Sink:MaD:525 | -| LogInjectionTest.java:1792:55:1792:62 | source(...) : Object | LogInjectionTest.java:1792:41:1792:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1793:35:1793:42 | source(...) : Object | LogInjectionTest.java:1793:26:1793:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:524 | -| LogInjectionTest.java:1796:35:1796:42 | source(...) : Object | LogInjectionTest.java:1796:26:1796:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:526 | -| LogInjectionTest.java:1797:60:1797:67 | source(...) : Object | LogInjectionTest.java:1797:51:1797:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:518 | -| LogInjectionTest.java:1798:60:1798:67 | source(...) : Object | LogInjectionTest.java:1798:51:1798:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:519 | -| LogInjectionTest.java:1800:60:1800:67 | source(...) : Object | LogInjectionTest.java:1800:51:1800:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:521 | -| LogInjectionTest.java:1801:66:1801:88 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1801:66:1801:88 | new Object[] | provenance | Sink:MaD:521 | -| LogInjectionTest.java:1801:80:1801:87 | source(...) : Object | LogInjectionTest.java:1801:66:1801:88 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1802:60:1802:67 | source(...) : Object | LogInjectionTest.java:1802:51:1802:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:520 | -| LogInjectionTest.java:1805:60:1805:67 | source(...) : Object | LogInjectionTest.java:1805:51:1805:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:521 | -| LogInjectionTest.java:1806:66:1806:73 | source(...) : Object | LogInjectionTest.java:1806:13:1806:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:521 | -| LogInjectionTest.java:1807:81:1807:88 | source(...) : Object | LogInjectionTest.java:1807:13:1807:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:521 | -| LogInjectionTest.java:1808:96:1808:103 | source(...) : Object | LogInjectionTest.java:1808:13:1808:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:521 | -| LogInjectionTest.java:1809:34:1809:41 | source(...) : Object | LogInjectionTest.java:1809:25:1809:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:531 | -| LogInjectionTest.java:1810:34:1810:41 | source(...) : Object | LogInjectionTest.java:1810:25:1810:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:532 | -| LogInjectionTest.java:1812:34:1812:41 | source(...) : Object | LogInjectionTest.java:1812:25:1812:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:534 | -| LogInjectionTest.java:1813:40:1813:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1813:40:1813:62 | new Object[] | provenance | Sink:MaD:534 | -| LogInjectionTest.java:1813:54:1813:61 | source(...) : Object | LogInjectionTest.java:1813:40:1813:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1814:34:1814:41 | source(...) : Object | LogInjectionTest.java:1814:25:1814:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:533 | -| LogInjectionTest.java:1817:34:1817:41 | source(...) : Object | LogInjectionTest.java:1817:25:1817:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:535 | -| LogInjectionTest.java:1818:59:1818:66 | source(...) : Object | LogInjectionTest.java:1818:50:1818:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:527 | -| LogInjectionTest.java:1819:59:1819:66 | source(...) : Object | LogInjectionTest.java:1819:50:1819:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:528 | -| LogInjectionTest.java:1821:59:1821:66 | source(...) : Object | LogInjectionTest.java:1821:50:1821:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:530 | -| LogInjectionTest.java:1822:65:1822:87 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1822:65:1822:87 | new Object[] | provenance | Sink:MaD:530 | -| LogInjectionTest.java:1822:79:1822:86 | source(...) : Object | LogInjectionTest.java:1822:65:1822:87 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1823:59:1823:66 | source(...) : Object | LogInjectionTest.java:1823:50:1823:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:529 | -| LogInjectionTest.java:1826:59:1826:66 | source(...) : Object | LogInjectionTest.java:1826:50:1826:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:530 | -| LogInjectionTest.java:1827:65:1827:72 | source(...) : Object | LogInjectionTest.java:1827:13:1827:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:530 | -| LogInjectionTest.java:1828:80:1828:87 | source(...) : Object | LogInjectionTest.java:1828:13:1828:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:530 | -| LogInjectionTest.java:1829:95:1829:102 | source(...) : Object | LogInjectionTest.java:1829:13:1829:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:530 | -| LogInjectionTest.java:1850:37:1850:44 | source(...) : Object | LogInjectionTest.java:1850:28:1850:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:19 | -| LogInjectionTest.java:1851:43:1851:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1851:43:1851:65 | new Object[] | provenance | Sink:MaD:19 | -| LogInjectionTest.java:1851:57:1851:64 | source(...) : Object | LogInjectionTest.java:1851:43:1851:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1853:30:1853:37 | source(...) : Object | LogInjectionTest.java:1853:21:1853:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1854:45:1854:52 | source(...) : Object | LogInjectionTest.java:1854:36:1854:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:7 | -| LogInjectionTest.java:1855:30:1855:37 | source(...) : Object | LogInjectionTest.java:1855:21:1855:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1856:60:1856:67 | source(...) : Object | LogInjectionTest.java:1856:51:1856:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:8 | -| LogInjectionTest.java:1857:45:1857:52 | source(...) : Object | LogInjectionTest.java:1857:36:1857:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:8 | -| LogInjectionTest.java:1858:30:1858:37 | source(...) : Object | LogInjectionTest.java:1858:21:1858:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1859:75:1859:82 | source(...) : Object | LogInjectionTest.java:1859:66:1859:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:9 | -| LogInjectionTest.java:1860:60:1860:67 | source(...) : Object | LogInjectionTest.java:1860:51:1860:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:9 | -| LogInjectionTest.java:1861:45:1861:52 | source(...) : Object | LogInjectionTest.java:1861:36:1861:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:9 | -| LogInjectionTest.java:1862:30:1862:37 | source(...) : Object | LogInjectionTest.java:1862:21:1862:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1863:90:1863:97 | source(...) : Object | LogInjectionTest.java:1863:81:1863:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | -| LogInjectionTest.java:1864:75:1864:82 | source(...) : Object | LogInjectionTest.java:1864:66:1864:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | -| LogInjectionTest.java:1865:60:1865:67 | source(...) : Object | LogInjectionTest.java:1865:51:1865:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | -| LogInjectionTest.java:1866:45:1866:52 | source(...) : Object | LogInjectionTest.java:1866:36:1866:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | -| LogInjectionTest.java:1867:30:1867:37 | source(...) : Object | LogInjectionTest.java:1867:21:1867:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1868:105:1868:112 | source(...) : Object | LogInjectionTest.java:1868:96:1868:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | -| LogInjectionTest.java:1869:90:1869:97 | source(...) : Object | LogInjectionTest.java:1869:81:1869:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | -| LogInjectionTest.java:1870:75:1870:82 | source(...) : Object | LogInjectionTest.java:1870:66:1870:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | -| LogInjectionTest.java:1871:60:1871:67 | source(...) : Object | LogInjectionTest.java:1871:51:1871:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | -| LogInjectionTest.java:1872:45:1872:52 | source(...) : Object | LogInjectionTest.java:1872:36:1872:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | -| LogInjectionTest.java:1873:30:1873:37 | source(...) : Object | LogInjectionTest.java:1873:21:1873:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1874:120:1874:127 | source(...) : Object | LogInjectionTest.java:1874:111:1874:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | -| LogInjectionTest.java:1875:105:1875:112 | source(...) : Object | LogInjectionTest.java:1875:96:1875:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | -| LogInjectionTest.java:1876:90:1876:97 | source(...) : Object | LogInjectionTest.java:1876:81:1876:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | -| LogInjectionTest.java:1877:75:1877:82 | source(...) : Object | LogInjectionTest.java:1877:66:1877:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | -| LogInjectionTest.java:1878:60:1878:67 | source(...) : Object | LogInjectionTest.java:1878:51:1878:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | -| LogInjectionTest.java:1879:45:1879:52 | source(...) : Object | LogInjectionTest.java:1879:36:1879:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | -| LogInjectionTest.java:1880:30:1880:37 | source(...) : Object | LogInjectionTest.java:1880:21:1880:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1881:135:1881:142 | source(...) : Object | LogInjectionTest.java:1881:126:1881:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1882:120:1882:127 | source(...) : Object | LogInjectionTest.java:1882:111:1882:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1883:105:1883:112 | source(...) : Object | LogInjectionTest.java:1883:96:1883:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1884:90:1884:97 | source(...) : Object | LogInjectionTest.java:1884:81:1884:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1885:75:1885:82 | source(...) : Object | LogInjectionTest.java:1885:66:1885:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1886:60:1886:67 | source(...) : Object | LogInjectionTest.java:1886:51:1886:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1887:45:1887:52 | source(...) : Object | LogInjectionTest.java:1887:36:1887:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | -| LogInjectionTest.java:1888:30:1888:37 | source(...) : Object | LogInjectionTest.java:1888:21:1888:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1889:150:1889:157 | source(...) : Object | LogInjectionTest.java:1889:141:1889:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1890:135:1890:142 | source(...) : Object | LogInjectionTest.java:1890:126:1890:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1891:120:1891:127 | source(...) : Object | LogInjectionTest.java:1891:111:1891:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1892:105:1892:112 | source(...) : Object | LogInjectionTest.java:1892:96:1892:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1893:90:1893:97 | source(...) : Object | LogInjectionTest.java:1893:81:1893:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1894:75:1894:82 | source(...) : Object | LogInjectionTest.java:1894:66:1894:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1895:60:1895:67 | source(...) : Object | LogInjectionTest.java:1895:51:1895:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1896:45:1896:52 | source(...) : Object | LogInjectionTest.java:1896:36:1896:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | -| LogInjectionTest.java:1897:30:1897:37 | source(...) : Object | LogInjectionTest.java:1897:21:1897:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1898:165:1898:172 | source(...) : Object | LogInjectionTest.java:1898:156:1898:172 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1899:150:1899:157 | source(...) : Object | LogInjectionTest.java:1899:141:1899:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1900:135:1900:142 | source(...) : Object | LogInjectionTest.java:1900:126:1900:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1901:120:1901:127 | source(...) : Object | LogInjectionTest.java:1901:111:1901:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1902:105:1902:112 | source(...) : Object | LogInjectionTest.java:1902:96:1902:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1903:90:1903:97 | source(...) : Object | LogInjectionTest.java:1903:81:1903:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1904:75:1904:82 | source(...) : Object | LogInjectionTest.java:1904:66:1904:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1905:60:1905:67 | source(...) : Object | LogInjectionTest.java:1905:51:1905:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | -| LogInjectionTest.java:1906:45:1906:52 | source(...) : Object | LogInjectionTest.java:1906:36:1906:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:42:22:42:27 | source : String | LogInjectionTest.java:42:22:42:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:43:22:43:27 | source : String | LogInjectionTest.java:43:22:43:57 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:45:22:45:27 | source : String | LogInjectionTest.java:45:22:45:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:46:22:46:27 | source : String | LogInjectionTest.java:46:22:46:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:48:22:48:27 | source : String | LogInjectionTest.java:48:22:48:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:49:22:49:27 | source : String | LogInjectionTest.java:49:22:49:47 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:50:22:50:27 | source : String | LogInjectionTest.java:50:22:50:45 | replace(...) | provenance | MaD:537 Sink:MaD:101 | +| LogInjectionTest.java:52:22:52:27 | source : String | LogInjectionTest.java:52:22:52:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:53:22:53:27 | source : String | LogInjectionTest.java:53:22:53:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:55:22:55:27 | source : String | LogInjectionTest.java:55:22:55:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:56:22:56:27 | source : String | LogInjectionTest.java:56:22:56:50 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:58:22:58:27 | source : String | LogInjectionTest.java:58:22:58:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:59:22:59:27 | source : String | LogInjectionTest.java:59:22:59:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:61:22:61:27 | source : String | LogInjectionTest.java:61:22:61:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:62:22:62:27 | source : String | LogInjectionTest.java:62:22:62:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:64:22:64:27 | source : String | LogInjectionTest.java:64:22:64:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:65:22:65:27 | source : String | LogInjectionTest.java:65:22:65:51 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:67:22:67:27 | source : String | LogInjectionTest.java:67:22:67:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:68:22:68:27 | source : String | LogInjectionTest.java:68:22:68:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:69:22:69:27 | source : String | LogInjectionTest.java:69:22:69:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:70:22:70:27 | source : String | LogInjectionTest.java:70:22:70:57 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:71:22:71:27 | source : String | LogInjectionTest.java:71:22:71:58 | replaceAll(...) | provenance | MaD:538 Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:79:26:79:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:85:26:85:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:91:26:91:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:97:26:97:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:103:26:103:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:109:26:109:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:115:26:115:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:121:26:121:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:127:26:127:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:133:26:133:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:141:26:141:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:147:26:147:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:153:26:153:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:159:26:159:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:165:26:165:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:171:26:171:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:175:26:175:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:177:26:177:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:181:26:181:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:183:26:183:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:187:26:187:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | LogInjectionTest.java:193:26:193:31 | source | provenance | Sink:MaD:101 | +| LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:75:25:75:41 | (...)... : String | provenance | Src:MaD:536 | +| LogInjectionTest.java:205:48:205:55 | source(...) : Object | LogInjectionTest.java:205:39:205:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:60 | +| LogInjectionTest.java:215:41:215:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:215:41:215:63 | new Object[] | provenance | Sink:MaD:61 | +| LogInjectionTest.java:215:55:215:62 | source(...) : Object | LogInjectionTest.java:215:41:215:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:225:41:225:48 | source(...) : Object | LogInjectionTest.java:225:26:225:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:76 | +| LogInjectionTest.java:226:41:226:48 | source(...) : Object | LogInjectionTest.java:226:26:226:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:77 | +| LogInjectionTest.java:227:56:227:63 | source(...) : Object | LogInjectionTest.java:227:41:227:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:78 | +| LogInjectionTest.java:228:56:228:63 | source(...) : Object | LogInjectionTest.java:228:41:228:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:79 | +| LogInjectionTest.java:229:51:229:58 | source(...) : Object | LogInjectionTest.java:229:41:229:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:80 | +| LogInjectionTest.java:230:59:230:66 | source(...) : Object | LogInjectionTest.java:230:41:230:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:81 | +| LogInjectionTest.java:231:59:231:66 | source(...) : Object | LogInjectionTest.java:231:41:231:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:82 | +| LogInjectionTest.java:233:50:233:57 | source(...) : Object | LogInjectionTest.java:233:41:233:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:83 | +| LogInjectionTest.java:234:50:234:57 | source(...) : Object | LogInjectionTest.java:234:41:234:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:93 | +| LogInjectionTest.java:235:56:235:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:235:56:235:78 | new Object[] | provenance | Sink:MaD:93 | +| LogInjectionTest.java:235:70:235:77 | source(...) : Object | LogInjectionTest.java:235:56:235:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:236:65:236:72 | source(...) : Object | LogInjectionTest.java:236:56:236:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | +| LogInjectionTest.java:237:50:237:57 | source(...) : Object | LogInjectionTest.java:237:41:237:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | +| LogInjectionTest.java:238:80:238:87 | source(...) : Object | LogInjectionTest.java:238:71:238:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:85 | +| LogInjectionTest.java:239:65:239:72 | source(...) : Object | LogInjectionTest.java:239:56:239:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:85 | +| LogInjectionTest.java:240:50:240:57 | source(...) : Object | LogInjectionTest.java:240:41:240:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:85 | +| LogInjectionTest.java:241:95:241:102 | source(...) : Object | LogInjectionTest.java:241:86:241:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | +| LogInjectionTest.java:242:80:242:87 | source(...) : Object | LogInjectionTest.java:242:71:242:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | +| LogInjectionTest.java:243:65:243:72 | source(...) : Object | LogInjectionTest.java:243:56:243:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | +| LogInjectionTest.java:244:50:244:57 | source(...) : Object | LogInjectionTest.java:244:41:244:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:86 | +| LogInjectionTest.java:245:110:245:117 | source(...) : Object | LogInjectionTest.java:245:101:245:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | +| LogInjectionTest.java:246:95:246:102 | source(...) : Object | LogInjectionTest.java:246:86:246:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | +| LogInjectionTest.java:247:80:247:87 | source(...) : Object | LogInjectionTest.java:247:71:247:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | +| LogInjectionTest.java:248:65:248:72 | source(...) : Object | LogInjectionTest.java:248:56:248:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | +| LogInjectionTest.java:249:50:249:57 | source(...) : Object | LogInjectionTest.java:249:41:249:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:87 | +| LogInjectionTest.java:250:125:250:132 | source(...) : Object | LogInjectionTest.java:250:116:250:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | +| LogInjectionTest.java:251:110:251:117 | source(...) : Object | LogInjectionTest.java:251:101:251:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | +| LogInjectionTest.java:252:95:252:102 | source(...) : Object | LogInjectionTest.java:252:86:252:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | +| LogInjectionTest.java:253:80:253:87 | source(...) : Object | LogInjectionTest.java:253:71:253:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | +| LogInjectionTest.java:254:65:254:72 | source(...) : Object | LogInjectionTest.java:254:56:254:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | +| LogInjectionTest.java:255:50:255:57 | source(...) : Object | LogInjectionTest.java:255:41:255:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:88 | +| LogInjectionTest.java:256:140:256:147 | source(...) : Object | LogInjectionTest.java:256:131:256:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:257:125:257:132 | source(...) : Object | LogInjectionTest.java:257:116:257:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:258:110:258:117 | source(...) : Object | LogInjectionTest.java:258:101:258:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:259:95:259:102 | source(...) : Object | LogInjectionTest.java:259:86:259:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:260:80:260:87 | source(...) : Object | LogInjectionTest.java:260:71:260:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:261:65:261:72 | source(...) : Object | LogInjectionTest.java:261:56:261:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:262:50:262:57 | source(...) : Object | LogInjectionTest.java:262:41:262:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:89 | +| LogInjectionTest.java:263:155:263:162 | source(...) : Object | LogInjectionTest.java:263:146:263:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:264:140:264:147 | source(...) : Object | LogInjectionTest.java:264:131:264:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:265:125:265:132 | source(...) : Object | LogInjectionTest.java:265:116:265:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:266:110:266:117 | source(...) : Object | LogInjectionTest.java:266:101:266:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:267:95:267:102 | source(...) : Object | LogInjectionTest.java:267:86:267:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:268:80:268:87 | source(...) : Object | LogInjectionTest.java:268:71:268:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:269:65:269:72 | source(...) : Object | LogInjectionTest.java:269:56:269:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:270:50:270:57 | source(...) : Object | LogInjectionTest.java:270:41:270:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:90 | +| LogInjectionTest.java:271:170:271:177 | source(...) : Object | LogInjectionTest.java:271:161:271:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:272:155:272:162 | source(...) : Object | LogInjectionTest.java:272:146:272:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:273:140:273:147 | source(...) : Object | LogInjectionTest.java:273:131:273:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:274:125:274:132 | source(...) : Object | LogInjectionTest.java:274:116:274:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:275:110:275:117 | source(...) : Object | LogInjectionTest.java:275:101:275:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:276:95:276:102 | source(...) : Object | LogInjectionTest.java:276:86:276:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:277:80:277:87 | source(...) : Object | LogInjectionTest.java:277:71:277:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:278:65:278:72 | source(...) : Object | LogInjectionTest.java:278:56:278:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:279:50:279:57 | source(...) : Object | LogInjectionTest.java:279:41:279:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:91 | +| LogInjectionTest.java:280:185:280:192 | source(...) : Object | LogInjectionTest.java:280:176:280:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:281:170:281:177 | source(...) : Object | LogInjectionTest.java:281:161:281:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:282:155:282:162 | source(...) : Object | LogInjectionTest.java:282:146:282:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:283:140:283:147 | source(...) : Object | LogInjectionTest.java:283:131:283:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:284:125:284:132 | source(...) : Object | LogInjectionTest.java:284:116:284:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:285:110:285:117 | source(...) : Object | LogInjectionTest.java:285:101:285:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:286:95:286:102 | source(...) : Object | LogInjectionTest.java:286:86:286:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:287:80:287:87 | source(...) : Object | LogInjectionTest.java:287:71:287:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:288:65:288:72 | source(...) : Object | LogInjectionTest.java:288:56:288:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:289:50:289:57 | source(...) : Object | LogInjectionTest.java:289:41:289:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:92 | +| LogInjectionTest.java:290:50:290:57 | source(...) : Object | LogInjectionTest.java:290:41:290:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | +| LogInjectionTest.java:291:70:291:77 | source(...) : Object | LogInjectionTest.java:291:56:291:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:84 | +| LogInjectionTest.java:292:50:292:57 | source(...) : Object | LogInjectionTest.java:292:41:292:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:94 | +| LogInjectionTest.java:293:55:293:62 | source(...) : Object | LogInjectionTest.java:293:41:293:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:95 | +| LogInjectionTest.java:294:55:294:62 | source(...) : Object | LogInjectionTest.java:294:41:294:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:96 | +| LogInjectionTest.java:295:44:295:51 | source(...) : Object | LogInjectionTest.java:295:26:295:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:99 | +| LogInjectionTest.java:296:44:296:51 | source(...) : Object | LogInjectionTest.java:296:26:296:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:100 | +| LogInjectionTest.java:297:36:297:43 | source(...) : Object | LogInjectionTest.java:297:26:297:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:97 | +| LogInjectionTest.java:298:36:298:43 | source(...) : Object | LogInjectionTest.java:298:26:298:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:98 | +| LogInjectionTest.java:301:35:301:42 | source(...) : Object | LogInjectionTest.java:301:26:301:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:101 | +| LogInjectionTest.java:302:35:302:42 | source(...) : Object | LogInjectionTest.java:302:26:302:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:111 | +| LogInjectionTest.java:303:41:303:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:303:41:303:63 | new Object[] | provenance | Sink:MaD:111 | +| LogInjectionTest.java:303:55:303:62 | source(...) : Object | LogInjectionTest.java:303:41:303:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:304:50:304:57 | source(...) : Object | LogInjectionTest.java:304:41:304:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | +| LogInjectionTest.java:305:35:305:42 | source(...) : Object | LogInjectionTest.java:305:26:305:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | +| LogInjectionTest.java:306:65:306:72 | source(...) : Object | LogInjectionTest.java:306:56:306:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:103 | +| LogInjectionTest.java:307:50:307:57 | source(...) : Object | LogInjectionTest.java:307:41:307:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:103 | +| LogInjectionTest.java:308:35:308:42 | source(...) : Object | LogInjectionTest.java:308:26:308:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:103 | +| LogInjectionTest.java:309:80:309:87 | source(...) : Object | LogInjectionTest.java:309:71:309:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | +| LogInjectionTest.java:310:65:310:72 | source(...) : Object | LogInjectionTest.java:310:56:310:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | +| LogInjectionTest.java:311:50:311:57 | source(...) : Object | LogInjectionTest.java:311:41:311:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | +| LogInjectionTest.java:312:35:312:42 | source(...) : Object | LogInjectionTest.java:312:26:312:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:104 | +| LogInjectionTest.java:313:95:313:102 | source(...) : Object | LogInjectionTest.java:313:86:313:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | +| LogInjectionTest.java:314:80:314:87 | source(...) : Object | LogInjectionTest.java:314:71:314:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | +| LogInjectionTest.java:315:65:315:72 | source(...) : Object | LogInjectionTest.java:315:56:315:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | +| LogInjectionTest.java:316:50:316:57 | source(...) : Object | LogInjectionTest.java:316:41:316:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | +| LogInjectionTest.java:317:35:317:42 | source(...) : Object | LogInjectionTest.java:317:26:317:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:105 | +| LogInjectionTest.java:318:110:318:117 | source(...) : Object | LogInjectionTest.java:318:101:318:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | +| LogInjectionTest.java:319:95:319:102 | source(...) : Object | LogInjectionTest.java:319:86:319:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | +| LogInjectionTest.java:320:80:320:87 | source(...) : Object | LogInjectionTest.java:320:71:320:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | +| LogInjectionTest.java:321:65:321:72 | source(...) : Object | LogInjectionTest.java:321:56:321:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | +| LogInjectionTest.java:322:50:322:57 | source(...) : Object | LogInjectionTest.java:322:41:322:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | +| LogInjectionTest.java:323:35:323:42 | source(...) : Object | LogInjectionTest.java:323:26:323:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:106 | +| LogInjectionTest.java:324:125:324:132 | source(...) : Object | LogInjectionTest.java:324:116:324:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:325:110:325:117 | source(...) : Object | LogInjectionTest.java:325:101:325:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:326:95:326:102 | source(...) : Object | LogInjectionTest.java:326:86:326:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:327:80:327:87 | source(...) : Object | LogInjectionTest.java:327:71:327:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:328:65:328:72 | source(...) : Object | LogInjectionTest.java:328:56:328:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:329:50:329:57 | source(...) : Object | LogInjectionTest.java:329:41:329:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:330:35:330:42 | source(...) : Object | LogInjectionTest.java:330:26:330:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:107 | +| LogInjectionTest.java:331:140:331:147 | source(...) : Object | LogInjectionTest.java:331:131:331:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:332:125:332:132 | source(...) : Object | LogInjectionTest.java:332:116:332:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:333:110:333:117 | source(...) : Object | LogInjectionTest.java:333:101:333:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:334:95:334:102 | source(...) : Object | LogInjectionTest.java:334:86:334:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:335:80:335:87 | source(...) : Object | LogInjectionTest.java:335:71:335:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:336:65:336:72 | source(...) : Object | LogInjectionTest.java:336:56:336:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:337:50:337:57 | source(...) : Object | LogInjectionTest.java:337:41:337:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:338:35:338:42 | source(...) : Object | LogInjectionTest.java:338:26:338:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:108 | +| LogInjectionTest.java:339:155:339:162 | source(...) : Object | LogInjectionTest.java:339:146:339:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:340:140:340:147 | source(...) : Object | LogInjectionTest.java:340:131:340:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:341:125:341:132 | source(...) : Object | LogInjectionTest.java:341:116:341:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:342:110:342:117 | source(...) : Object | LogInjectionTest.java:342:101:342:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:343:95:343:102 | source(...) : Object | LogInjectionTest.java:343:86:343:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:344:80:344:87 | source(...) : Object | LogInjectionTest.java:344:71:344:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:345:65:345:72 | source(...) : Object | LogInjectionTest.java:345:56:345:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:346:50:346:57 | source(...) : Object | LogInjectionTest.java:346:41:346:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:347:35:347:42 | source(...) : Object | LogInjectionTest.java:347:26:347:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:109 | +| LogInjectionTest.java:348:170:348:177 | source(...) : Object | LogInjectionTest.java:348:161:348:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:349:155:349:162 | source(...) : Object | LogInjectionTest.java:349:146:349:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:350:140:350:147 | source(...) : Object | LogInjectionTest.java:350:131:350:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:351:125:351:132 | source(...) : Object | LogInjectionTest.java:351:116:351:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:352:110:352:117 | source(...) : Object | LogInjectionTest.java:352:101:352:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:353:95:353:102 | source(...) : Object | LogInjectionTest.java:353:86:353:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:354:80:354:87 | source(...) : Object | LogInjectionTest.java:354:71:354:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:355:65:355:72 | source(...) : Object | LogInjectionTest.java:355:56:355:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:356:50:356:57 | source(...) : Object | LogInjectionTest.java:356:41:356:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:357:35:357:42 | source(...) : Object | LogInjectionTest.java:357:26:357:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:110 | +| LogInjectionTest.java:358:35:358:42 | source(...) : Object | LogInjectionTest.java:358:26:358:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | +| LogInjectionTest.java:359:55:359:62 | source(...) : Object | LogInjectionTest.java:359:41:359:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:102 | +| LogInjectionTest.java:360:35:360:42 | source(...) : Object | LogInjectionTest.java:360:26:360:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:112 | +| LogInjectionTest.java:361:40:361:47 | source(...) : Object | LogInjectionTest.java:361:26:361:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:113 | +| LogInjectionTest.java:362:40:362:47 | source(...) : Object | LogInjectionTest.java:362:26:362:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:114 | +| LogInjectionTest.java:363:41:363:48 | source(...) : Object | LogInjectionTest.java:363:26:363:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:115 | +| LogInjectionTest.java:364:41:364:48 | source(...) : Object | LogInjectionTest.java:364:26:364:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:116 | +| LogInjectionTest.java:365:56:365:63 | source(...) : Object | LogInjectionTest.java:365:41:365:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:117 | +| LogInjectionTest.java:366:56:366:63 | source(...) : Object | LogInjectionTest.java:366:41:366:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:118 | +| LogInjectionTest.java:367:51:367:58 | source(...) : Object | LogInjectionTest.java:367:41:367:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:119 | +| LogInjectionTest.java:368:59:368:66 | source(...) : Object | LogInjectionTest.java:368:41:368:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:120 | +| LogInjectionTest.java:369:59:369:66 | source(...) : Object | LogInjectionTest.java:369:41:369:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:121 | +| LogInjectionTest.java:371:50:371:57 | source(...) : Object | LogInjectionTest.java:371:41:371:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:122 | +| LogInjectionTest.java:372:50:372:57 | source(...) : Object | LogInjectionTest.java:372:41:372:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:132 | +| LogInjectionTest.java:373:56:373:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:373:56:373:78 | new Object[] | provenance | Sink:MaD:132 | +| LogInjectionTest.java:373:70:373:77 | source(...) : Object | LogInjectionTest.java:373:56:373:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:374:65:374:72 | source(...) : Object | LogInjectionTest.java:374:56:374:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | +| LogInjectionTest.java:375:50:375:57 | source(...) : Object | LogInjectionTest.java:375:41:375:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | +| LogInjectionTest.java:376:80:376:87 | source(...) : Object | LogInjectionTest.java:376:71:376:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:124 | +| LogInjectionTest.java:377:65:377:72 | source(...) : Object | LogInjectionTest.java:377:56:377:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:124 | +| LogInjectionTest.java:378:50:378:57 | source(...) : Object | LogInjectionTest.java:378:41:378:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:124 | +| LogInjectionTest.java:379:95:379:102 | source(...) : Object | LogInjectionTest.java:379:86:379:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | +| LogInjectionTest.java:380:80:380:87 | source(...) : Object | LogInjectionTest.java:380:71:380:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | +| LogInjectionTest.java:381:65:381:72 | source(...) : Object | LogInjectionTest.java:381:56:381:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | +| LogInjectionTest.java:382:50:382:57 | source(...) : Object | LogInjectionTest.java:382:41:382:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:125 | +| LogInjectionTest.java:383:110:383:117 | source(...) : Object | LogInjectionTest.java:383:101:383:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | +| LogInjectionTest.java:384:95:384:102 | source(...) : Object | LogInjectionTest.java:384:86:384:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | +| LogInjectionTest.java:385:80:385:87 | source(...) : Object | LogInjectionTest.java:385:71:385:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | +| LogInjectionTest.java:386:65:386:72 | source(...) : Object | LogInjectionTest.java:386:56:386:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | +| LogInjectionTest.java:387:50:387:57 | source(...) : Object | LogInjectionTest.java:387:41:387:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:126 | +| LogInjectionTest.java:388:125:388:132 | source(...) : Object | LogInjectionTest.java:388:116:388:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | +| LogInjectionTest.java:389:110:389:117 | source(...) : Object | LogInjectionTest.java:389:101:389:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | +| LogInjectionTest.java:390:95:390:102 | source(...) : Object | LogInjectionTest.java:390:86:390:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | +| LogInjectionTest.java:391:80:391:87 | source(...) : Object | LogInjectionTest.java:391:71:391:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | +| LogInjectionTest.java:392:65:392:72 | source(...) : Object | LogInjectionTest.java:392:56:392:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | +| LogInjectionTest.java:393:50:393:57 | source(...) : Object | LogInjectionTest.java:393:41:393:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:127 | +| LogInjectionTest.java:394:140:394:147 | source(...) : Object | LogInjectionTest.java:394:131:394:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:395:125:395:132 | source(...) : Object | LogInjectionTest.java:395:116:395:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:396:110:396:117 | source(...) : Object | LogInjectionTest.java:396:101:396:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:397:95:397:102 | source(...) : Object | LogInjectionTest.java:397:86:397:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:398:80:398:87 | source(...) : Object | LogInjectionTest.java:398:71:398:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:399:65:399:72 | source(...) : Object | LogInjectionTest.java:399:56:399:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:400:50:400:57 | source(...) : Object | LogInjectionTest.java:400:41:400:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:128 | +| LogInjectionTest.java:401:155:401:162 | source(...) : Object | LogInjectionTest.java:401:146:401:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:402:140:402:147 | source(...) : Object | LogInjectionTest.java:402:131:402:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:403:125:403:132 | source(...) : Object | LogInjectionTest.java:403:116:403:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:404:110:404:117 | source(...) : Object | LogInjectionTest.java:404:101:404:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:405:95:405:102 | source(...) : Object | LogInjectionTest.java:405:86:405:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:406:80:406:87 | source(...) : Object | LogInjectionTest.java:406:71:406:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:407:65:407:72 | source(...) : Object | LogInjectionTest.java:407:56:407:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:408:50:408:57 | source(...) : Object | LogInjectionTest.java:408:41:408:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:129 | +| LogInjectionTest.java:409:170:409:177 | source(...) : Object | LogInjectionTest.java:409:161:409:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:410:155:410:162 | source(...) : Object | LogInjectionTest.java:410:146:410:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:411:140:411:147 | source(...) : Object | LogInjectionTest.java:411:131:411:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:412:125:412:132 | source(...) : Object | LogInjectionTest.java:412:116:412:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:413:110:413:117 | source(...) : Object | LogInjectionTest.java:413:101:413:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:414:95:414:102 | source(...) : Object | LogInjectionTest.java:414:86:414:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:415:80:415:87 | source(...) : Object | LogInjectionTest.java:415:71:415:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:416:65:416:72 | source(...) : Object | LogInjectionTest.java:416:56:416:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:417:50:417:57 | source(...) : Object | LogInjectionTest.java:417:41:417:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:130 | +| LogInjectionTest.java:418:185:418:192 | source(...) : Object | LogInjectionTest.java:418:176:418:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:419:170:419:177 | source(...) : Object | LogInjectionTest.java:419:161:419:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:420:155:420:162 | source(...) : Object | LogInjectionTest.java:420:146:420:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:421:140:421:147 | source(...) : Object | LogInjectionTest.java:421:131:421:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:422:125:422:132 | source(...) : Object | LogInjectionTest.java:422:116:422:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:423:110:423:117 | source(...) : Object | LogInjectionTest.java:423:101:423:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:424:95:424:102 | source(...) : Object | LogInjectionTest.java:424:86:424:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:425:80:425:87 | source(...) : Object | LogInjectionTest.java:425:71:425:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:426:65:426:72 | source(...) : Object | LogInjectionTest.java:426:56:426:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:427:50:427:57 | source(...) : Object | LogInjectionTest.java:427:41:427:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:131 | +| LogInjectionTest.java:428:50:428:57 | source(...) : Object | LogInjectionTest.java:428:41:428:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | +| LogInjectionTest.java:429:70:429:77 | source(...) : Object | LogInjectionTest.java:429:56:429:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:123 | +| LogInjectionTest.java:430:50:430:57 | source(...) : Object | LogInjectionTest.java:430:41:430:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:133 | +| LogInjectionTest.java:431:55:431:62 | source(...) : Object | LogInjectionTest.java:431:41:431:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:134 | +| LogInjectionTest.java:432:55:432:62 | source(...) : Object | LogInjectionTest.java:432:41:432:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:135 | +| LogInjectionTest.java:433:44:433:51 | source(...) : Object | LogInjectionTest.java:433:26:433:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:138 | +| LogInjectionTest.java:434:44:434:51 | source(...) : Object | LogInjectionTest.java:434:26:434:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:139 | +| LogInjectionTest.java:435:36:435:43 | source(...) : Object | LogInjectionTest.java:435:26:435:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:136 | +| LogInjectionTest.java:436:36:436:43 | source(...) : Object | LogInjectionTest.java:436:26:436:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:137 | +| LogInjectionTest.java:439:35:439:42 | source(...) : Object | LogInjectionTest.java:439:26:439:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:140 | +| LogInjectionTest.java:440:35:440:42 | source(...) : Object | LogInjectionTest.java:440:26:440:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:150 | +| LogInjectionTest.java:441:41:441:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:441:41:441:63 | new Object[] | provenance | Sink:MaD:150 | +| LogInjectionTest.java:441:55:441:62 | source(...) : Object | LogInjectionTest.java:441:41:441:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:442:50:442:57 | source(...) : Object | LogInjectionTest.java:442:41:442:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | +| LogInjectionTest.java:443:35:443:42 | source(...) : Object | LogInjectionTest.java:443:26:443:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | +| LogInjectionTest.java:444:65:444:72 | source(...) : Object | LogInjectionTest.java:444:56:444:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:142 | +| LogInjectionTest.java:445:50:445:57 | source(...) : Object | LogInjectionTest.java:445:41:445:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:142 | +| LogInjectionTest.java:446:35:446:42 | source(...) : Object | LogInjectionTest.java:446:26:446:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:142 | +| LogInjectionTest.java:447:80:447:87 | source(...) : Object | LogInjectionTest.java:447:71:447:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | +| LogInjectionTest.java:448:65:448:72 | source(...) : Object | LogInjectionTest.java:448:56:448:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | +| LogInjectionTest.java:449:50:449:57 | source(...) : Object | LogInjectionTest.java:449:41:449:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | +| LogInjectionTest.java:450:35:450:42 | source(...) : Object | LogInjectionTest.java:450:26:450:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:143 | +| LogInjectionTest.java:451:95:451:102 | source(...) : Object | LogInjectionTest.java:451:86:451:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | +| LogInjectionTest.java:452:80:452:87 | source(...) : Object | LogInjectionTest.java:452:71:452:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | +| LogInjectionTest.java:453:65:453:72 | source(...) : Object | LogInjectionTest.java:453:56:453:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | +| LogInjectionTest.java:454:50:454:57 | source(...) : Object | LogInjectionTest.java:454:41:454:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | +| LogInjectionTest.java:455:35:455:42 | source(...) : Object | LogInjectionTest.java:455:26:455:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:144 | +| LogInjectionTest.java:456:110:456:117 | source(...) : Object | LogInjectionTest.java:456:101:456:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | +| LogInjectionTest.java:457:95:457:102 | source(...) : Object | LogInjectionTest.java:457:86:457:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | +| LogInjectionTest.java:458:80:458:87 | source(...) : Object | LogInjectionTest.java:458:71:458:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | +| LogInjectionTest.java:459:65:459:72 | source(...) : Object | LogInjectionTest.java:459:56:459:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | +| LogInjectionTest.java:460:50:460:57 | source(...) : Object | LogInjectionTest.java:460:41:460:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | +| LogInjectionTest.java:461:35:461:42 | source(...) : Object | LogInjectionTest.java:461:26:461:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:145 | +| LogInjectionTest.java:462:125:462:132 | source(...) : Object | LogInjectionTest.java:462:116:462:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:463:110:463:117 | source(...) : Object | LogInjectionTest.java:463:101:463:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:464:95:464:102 | source(...) : Object | LogInjectionTest.java:464:86:464:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:465:80:465:87 | source(...) : Object | LogInjectionTest.java:465:71:465:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:466:65:466:72 | source(...) : Object | LogInjectionTest.java:466:56:466:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:467:50:467:57 | source(...) : Object | LogInjectionTest.java:467:41:467:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:468:35:468:42 | source(...) : Object | LogInjectionTest.java:468:26:468:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:146 | +| LogInjectionTest.java:469:140:469:147 | source(...) : Object | LogInjectionTest.java:469:131:469:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:470:125:470:132 | source(...) : Object | LogInjectionTest.java:470:116:470:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:471:110:471:117 | source(...) : Object | LogInjectionTest.java:471:101:471:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:472:95:472:102 | source(...) : Object | LogInjectionTest.java:472:86:472:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:473:80:473:87 | source(...) : Object | LogInjectionTest.java:473:71:473:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:474:65:474:72 | source(...) : Object | LogInjectionTest.java:474:56:474:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:475:50:475:57 | source(...) : Object | LogInjectionTest.java:475:41:475:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:476:35:476:42 | source(...) : Object | LogInjectionTest.java:476:26:476:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:147 | +| LogInjectionTest.java:477:155:477:162 | source(...) : Object | LogInjectionTest.java:477:146:477:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:478:140:478:147 | source(...) : Object | LogInjectionTest.java:478:131:478:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:479:125:479:132 | source(...) : Object | LogInjectionTest.java:479:116:479:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:480:110:480:117 | source(...) : Object | LogInjectionTest.java:480:101:480:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:481:95:481:102 | source(...) : Object | LogInjectionTest.java:481:86:481:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:482:80:482:87 | source(...) : Object | LogInjectionTest.java:482:71:482:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:483:65:483:72 | source(...) : Object | LogInjectionTest.java:483:56:483:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:484:50:484:57 | source(...) : Object | LogInjectionTest.java:484:41:484:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:485:35:485:42 | source(...) : Object | LogInjectionTest.java:485:26:485:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:148 | +| LogInjectionTest.java:486:170:486:177 | source(...) : Object | LogInjectionTest.java:486:161:486:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:487:155:487:162 | source(...) : Object | LogInjectionTest.java:487:146:487:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:488:140:488:147 | source(...) : Object | LogInjectionTest.java:488:131:488:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:489:125:489:132 | source(...) : Object | LogInjectionTest.java:489:116:489:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:490:110:490:117 | source(...) : Object | LogInjectionTest.java:490:101:490:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:491:95:491:102 | source(...) : Object | LogInjectionTest.java:491:86:491:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:492:80:492:87 | source(...) : Object | LogInjectionTest.java:492:71:492:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:493:65:493:72 | source(...) : Object | LogInjectionTest.java:493:56:493:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:494:50:494:57 | source(...) : Object | LogInjectionTest.java:494:41:494:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:495:35:495:42 | source(...) : Object | LogInjectionTest.java:495:26:495:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:149 | +| LogInjectionTest.java:496:35:496:42 | source(...) : Object | LogInjectionTest.java:496:26:496:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | +| LogInjectionTest.java:497:55:497:62 | source(...) : Object | LogInjectionTest.java:497:41:497:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:141 | +| LogInjectionTest.java:498:35:498:42 | source(...) : Object | LogInjectionTest.java:498:26:498:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:151 | +| LogInjectionTest.java:499:40:499:47 | source(...) : Object | LogInjectionTest.java:499:26:499:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:152 | +| LogInjectionTest.java:500:40:500:47 | source(...) : Object | LogInjectionTest.java:500:26:500:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:153 | +| LogInjectionTest.java:501:41:501:48 | source(...) : Object | LogInjectionTest.java:501:26:501:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:154 | +| LogInjectionTest.java:502:41:502:48 | source(...) : Object | LogInjectionTest.java:502:26:502:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:155 | +| LogInjectionTest.java:503:56:503:63 | source(...) : Object | LogInjectionTest.java:503:41:503:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:156 | +| LogInjectionTest.java:504:56:504:63 | source(...) : Object | LogInjectionTest.java:504:41:504:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:157 | +| LogInjectionTest.java:505:51:505:58 | source(...) : Object | LogInjectionTest.java:505:41:505:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:158 | +| LogInjectionTest.java:506:59:506:66 | source(...) : Object | LogInjectionTest.java:506:41:506:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:159 | +| LogInjectionTest.java:507:59:507:66 | source(...) : Object | LogInjectionTest.java:507:41:507:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:160 | +| LogInjectionTest.java:509:50:509:57 | source(...) : Object | LogInjectionTest.java:509:41:509:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:161 | +| LogInjectionTest.java:510:50:510:57 | source(...) : Object | LogInjectionTest.java:510:41:510:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:171 | +| LogInjectionTest.java:511:56:511:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:511:56:511:78 | new Object[] | provenance | Sink:MaD:171 | +| LogInjectionTest.java:511:70:511:77 | source(...) : Object | LogInjectionTest.java:511:56:511:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:512:65:512:72 | source(...) : Object | LogInjectionTest.java:512:56:512:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | +| LogInjectionTest.java:513:50:513:57 | source(...) : Object | LogInjectionTest.java:513:41:513:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | +| LogInjectionTest.java:514:80:514:87 | source(...) : Object | LogInjectionTest.java:514:71:514:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:163 | +| LogInjectionTest.java:515:65:515:72 | source(...) : Object | LogInjectionTest.java:515:56:515:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:163 | +| LogInjectionTest.java:516:50:516:57 | source(...) : Object | LogInjectionTest.java:516:41:516:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:163 | +| LogInjectionTest.java:517:95:517:102 | source(...) : Object | LogInjectionTest.java:517:86:517:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | +| LogInjectionTest.java:518:80:518:87 | source(...) : Object | LogInjectionTest.java:518:71:518:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | +| LogInjectionTest.java:519:65:519:72 | source(...) : Object | LogInjectionTest.java:519:56:519:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | +| LogInjectionTest.java:520:50:520:57 | source(...) : Object | LogInjectionTest.java:520:41:520:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:164 | +| LogInjectionTest.java:521:110:521:117 | source(...) : Object | LogInjectionTest.java:521:101:521:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | +| LogInjectionTest.java:522:95:522:102 | source(...) : Object | LogInjectionTest.java:522:86:522:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | +| LogInjectionTest.java:523:80:523:87 | source(...) : Object | LogInjectionTest.java:523:71:523:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | +| LogInjectionTest.java:524:65:524:72 | source(...) : Object | LogInjectionTest.java:524:56:524:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | +| LogInjectionTest.java:525:50:525:57 | source(...) : Object | LogInjectionTest.java:525:41:525:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:165 | +| LogInjectionTest.java:526:125:526:132 | source(...) : Object | LogInjectionTest.java:526:116:526:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | +| LogInjectionTest.java:527:110:527:117 | source(...) : Object | LogInjectionTest.java:527:101:527:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | +| LogInjectionTest.java:528:95:528:102 | source(...) : Object | LogInjectionTest.java:528:86:528:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | +| LogInjectionTest.java:529:80:529:87 | source(...) : Object | LogInjectionTest.java:529:71:529:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | +| LogInjectionTest.java:530:65:530:72 | source(...) : Object | LogInjectionTest.java:530:56:530:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | +| LogInjectionTest.java:531:50:531:57 | source(...) : Object | LogInjectionTest.java:531:41:531:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:166 | +| LogInjectionTest.java:532:140:532:147 | source(...) : Object | LogInjectionTest.java:532:131:532:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:533:125:533:132 | source(...) : Object | LogInjectionTest.java:533:116:533:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:534:110:534:117 | source(...) : Object | LogInjectionTest.java:534:101:534:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:535:95:535:102 | source(...) : Object | LogInjectionTest.java:535:86:535:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:536:80:536:87 | source(...) : Object | LogInjectionTest.java:536:71:536:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:537:65:537:72 | source(...) : Object | LogInjectionTest.java:537:56:537:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:538:50:538:57 | source(...) : Object | LogInjectionTest.java:538:41:538:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:167 | +| LogInjectionTest.java:539:155:539:162 | source(...) : Object | LogInjectionTest.java:539:146:539:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:540:140:540:147 | source(...) : Object | LogInjectionTest.java:540:131:540:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:541:125:541:132 | source(...) : Object | LogInjectionTest.java:541:116:541:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:542:110:542:117 | source(...) : Object | LogInjectionTest.java:542:101:542:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:543:95:543:102 | source(...) : Object | LogInjectionTest.java:543:86:543:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:544:80:544:87 | source(...) : Object | LogInjectionTest.java:544:71:544:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:545:65:545:72 | source(...) : Object | LogInjectionTest.java:545:56:545:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:546:50:546:57 | source(...) : Object | LogInjectionTest.java:546:41:546:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:168 | +| LogInjectionTest.java:547:170:547:177 | source(...) : Object | LogInjectionTest.java:547:161:547:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:548:155:548:162 | source(...) : Object | LogInjectionTest.java:548:146:548:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:549:140:549:147 | source(...) : Object | LogInjectionTest.java:549:131:549:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:550:125:550:132 | source(...) : Object | LogInjectionTest.java:550:116:550:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:551:110:551:117 | source(...) : Object | LogInjectionTest.java:551:101:551:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:552:95:552:102 | source(...) : Object | LogInjectionTest.java:552:86:552:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:553:80:553:87 | source(...) : Object | LogInjectionTest.java:553:71:553:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:554:65:554:72 | source(...) : Object | LogInjectionTest.java:554:56:554:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:555:50:555:57 | source(...) : Object | LogInjectionTest.java:555:41:555:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:169 | +| LogInjectionTest.java:556:185:556:192 | source(...) : Object | LogInjectionTest.java:556:176:556:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:557:170:557:177 | source(...) : Object | LogInjectionTest.java:557:161:557:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:558:155:558:162 | source(...) : Object | LogInjectionTest.java:558:146:558:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:559:140:559:147 | source(...) : Object | LogInjectionTest.java:559:131:559:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:560:125:560:132 | source(...) : Object | LogInjectionTest.java:560:116:560:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:561:110:561:117 | source(...) : Object | LogInjectionTest.java:561:101:561:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:562:95:562:102 | source(...) : Object | LogInjectionTest.java:562:86:562:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:563:80:563:87 | source(...) : Object | LogInjectionTest.java:563:71:563:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:564:65:564:72 | source(...) : Object | LogInjectionTest.java:564:56:564:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:565:50:565:57 | source(...) : Object | LogInjectionTest.java:565:41:565:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:170 | +| LogInjectionTest.java:566:50:566:57 | source(...) : Object | LogInjectionTest.java:566:41:566:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | +| LogInjectionTest.java:567:70:567:77 | source(...) : Object | LogInjectionTest.java:567:56:567:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:162 | +| LogInjectionTest.java:568:50:568:57 | source(...) : Object | LogInjectionTest.java:568:41:568:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:172 | +| LogInjectionTest.java:569:55:569:62 | source(...) : Object | LogInjectionTest.java:569:41:569:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:173 | +| LogInjectionTest.java:570:55:570:62 | source(...) : Object | LogInjectionTest.java:570:41:570:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:174 | +| LogInjectionTest.java:571:44:571:51 | source(...) : Object | LogInjectionTest.java:571:26:571:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:177 | +| LogInjectionTest.java:572:44:572:51 | source(...) : Object | LogInjectionTest.java:572:26:572:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:178 | +| LogInjectionTest.java:573:36:573:43 | source(...) : Object | LogInjectionTest.java:573:26:573:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:175 | +| LogInjectionTest.java:574:36:574:43 | source(...) : Object | LogInjectionTest.java:574:26:574:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:176 | +| LogInjectionTest.java:577:35:577:42 | source(...) : Object | LogInjectionTest.java:577:26:577:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:179 | +| LogInjectionTest.java:578:35:578:42 | source(...) : Object | LogInjectionTest.java:578:26:578:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:189 | +| LogInjectionTest.java:579:41:579:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:579:41:579:63 | new Object[] | provenance | Sink:MaD:189 | +| LogInjectionTest.java:579:55:579:62 | source(...) : Object | LogInjectionTest.java:579:41:579:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:580:50:580:57 | source(...) : Object | LogInjectionTest.java:580:41:580:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | +| LogInjectionTest.java:581:35:581:42 | source(...) : Object | LogInjectionTest.java:581:26:581:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | +| LogInjectionTest.java:582:65:582:72 | source(...) : Object | LogInjectionTest.java:582:56:582:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:181 | +| LogInjectionTest.java:583:50:583:57 | source(...) : Object | LogInjectionTest.java:583:41:583:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:181 | +| LogInjectionTest.java:584:35:584:42 | source(...) : Object | LogInjectionTest.java:584:26:584:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:181 | +| LogInjectionTest.java:585:80:585:87 | source(...) : Object | LogInjectionTest.java:585:71:585:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | +| LogInjectionTest.java:586:65:586:72 | source(...) : Object | LogInjectionTest.java:586:56:586:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | +| LogInjectionTest.java:587:50:587:57 | source(...) : Object | LogInjectionTest.java:587:41:587:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | +| LogInjectionTest.java:588:35:588:42 | source(...) : Object | LogInjectionTest.java:588:26:588:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:182 | +| LogInjectionTest.java:589:95:589:102 | source(...) : Object | LogInjectionTest.java:589:86:589:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | +| LogInjectionTest.java:590:80:590:87 | source(...) : Object | LogInjectionTest.java:590:71:590:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | +| LogInjectionTest.java:591:65:591:72 | source(...) : Object | LogInjectionTest.java:591:56:591:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | +| LogInjectionTest.java:592:50:592:57 | source(...) : Object | LogInjectionTest.java:592:41:592:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | +| LogInjectionTest.java:593:35:593:42 | source(...) : Object | LogInjectionTest.java:593:26:593:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:183 | +| LogInjectionTest.java:594:110:594:117 | source(...) : Object | LogInjectionTest.java:594:101:594:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | +| LogInjectionTest.java:595:95:595:102 | source(...) : Object | LogInjectionTest.java:595:86:595:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | +| LogInjectionTest.java:596:80:596:87 | source(...) : Object | LogInjectionTest.java:596:71:596:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | +| LogInjectionTest.java:597:65:597:72 | source(...) : Object | LogInjectionTest.java:597:56:597:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | +| LogInjectionTest.java:598:50:598:57 | source(...) : Object | LogInjectionTest.java:598:41:598:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | +| LogInjectionTest.java:599:35:599:42 | source(...) : Object | LogInjectionTest.java:599:26:599:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:184 | +| LogInjectionTest.java:600:125:600:132 | source(...) : Object | LogInjectionTest.java:600:116:600:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:601:110:601:117 | source(...) : Object | LogInjectionTest.java:601:101:601:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:602:95:602:102 | source(...) : Object | LogInjectionTest.java:602:86:602:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:603:80:603:87 | source(...) : Object | LogInjectionTest.java:603:71:603:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:604:65:604:72 | source(...) : Object | LogInjectionTest.java:604:56:604:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:605:50:605:57 | source(...) : Object | LogInjectionTest.java:605:41:605:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:606:35:606:42 | source(...) : Object | LogInjectionTest.java:606:26:606:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:185 | +| LogInjectionTest.java:607:140:607:147 | source(...) : Object | LogInjectionTest.java:607:131:607:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:608:125:608:132 | source(...) : Object | LogInjectionTest.java:608:116:608:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:609:110:609:117 | source(...) : Object | LogInjectionTest.java:609:101:609:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:610:95:610:102 | source(...) : Object | LogInjectionTest.java:610:86:610:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:611:80:611:87 | source(...) : Object | LogInjectionTest.java:611:71:611:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:612:65:612:72 | source(...) : Object | LogInjectionTest.java:612:56:612:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:613:50:613:57 | source(...) : Object | LogInjectionTest.java:613:41:613:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:614:35:614:42 | source(...) : Object | LogInjectionTest.java:614:26:614:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:186 | +| LogInjectionTest.java:615:155:615:162 | source(...) : Object | LogInjectionTest.java:615:146:615:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:616:140:616:147 | source(...) : Object | LogInjectionTest.java:616:131:616:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:617:125:617:132 | source(...) : Object | LogInjectionTest.java:617:116:617:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:618:110:618:117 | source(...) : Object | LogInjectionTest.java:618:101:618:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:619:95:619:102 | source(...) : Object | LogInjectionTest.java:619:86:619:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:620:80:620:87 | source(...) : Object | LogInjectionTest.java:620:71:620:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:621:65:621:72 | source(...) : Object | LogInjectionTest.java:621:56:621:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:622:50:622:57 | source(...) : Object | LogInjectionTest.java:622:41:622:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:623:35:623:42 | source(...) : Object | LogInjectionTest.java:623:26:623:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:187 | +| LogInjectionTest.java:624:170:624:177 | source(...) : Object | LogInjectionTest.java:624:161:624:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:625:155:625:162 | source(...) : Object | LogInjectionTest.java:625:146:625:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:626:140:626:147 | source(...) : Object | LogInjectionTest.java:626:131:626:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:627:125:627:132 | source(...) : Object | LogInjectionTest.java:627:116:627:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:628:110:628:117 | source(...) : Object | LogInjectionTest.java:628:101:628:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:629:95:629:102 | source(...) : Object | LogInjectionTest.java:629:86:629:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:630:80:630:87 | source(...) : Object | LogInjectionTest.java:630:71:630:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:631:65:631:72 | source(...) : Object | LogInjectionTest.java:631:56:631:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:632:50:632:57 | source(...) : Object | LogInjectionTest.java:632:41:632:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:633:35:633:42 | source(...) : Object | LogInjectionTest.java:633:26:633:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:188 | +| LogInjectionTest.java:634:35:634:42 | source(...) : Object | LogInjectionTest.java:634:26:634:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | +| LogInjectionTest.java:635:55:635:62 | source(...) : Object | LogInjectionTest.java:635:41:635:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:180 | +| LogInjectionTest.java:636:35:636:42 | source(...) : Object | LogInjectionTest.java:636:26:636:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:190 | +| LogInjectionTest.java:637:40:637:47 | source(...) : Object | LogInjectionTest.java:637:26:637:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:191 | +| LogInjectionTest.java:638:40:638:47 | source(...) : Object | LogInjectionTest.java:638:26:638:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:192 | +| LogInjectionTest.java:639:40:639:47 | source(...) : Object | LogInjectionTest.java:639:25:639:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:193 | +| LogInjectionTest.java:640:40:640:47 | source(...) : Object | LogInjectionTest.java:640:25:640:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:194 | +| LogInjectionTest.java:641:55:641:62 | source(...) : Object | LogInjectionTest.java:641:40:641:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:195 | +| LogInjectionTest.java:642:55:642:62 | source(...) : Object | LogInjectionTest.java:642:40:642:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:196 | +| LogInjectionTest.java:643:50:643:57 | source(...) : Object | LogInjectionTest.java:643:40:643:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:197 | +| LogInjectionTest.java:644:58:644:65 | source(...) : Object | LogInjectionTest.java:644:40:644:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:198 | +| LogInjectionTest.java:645:58:645:65 | source(...) : Object | LogInjectionTest.java:645:40:645:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:199 | +| LogInjectionTest.java:647:49:647:56 | source(...) : Object | LogInjectionTest.java:647:40:647:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:200 | +| LogInjectionTest.java:648:49:648:56 | source(...) : Object | LogInjectionTest.java:648:40:648:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:210 | +| LogInjectionTest.java:649:55:649:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:649:55:649:77 | new Object[] | provenance | Sink:MaD:210 | +| LogInjectionTest.java:649:69:649:76 | source(...) : Object | LogInjectionTest.java:649:55:649:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:650:64:650:71 | source(...) : Object | LogInjectionTest.java:650:55:650:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | +| LogInjectionTest.java:651:49:651:56 | source(...) : Object | LogInjectionTest.java:651:40:651:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | +| LogInjectionTest.java:652:79:652:86 | source(...) : Object | LogInjectionTest.java:652:70:652:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:202 | +| LogInjectionTest.java:653:64:653:71 | source(...) : Object | LogInjectionTest.java:653:55:653:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:202 | +| LogInjectionTest.java:654:49:654:56 | source(...) : Object | LogInjectionTest.java:654:40:654:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:202 | +| LogInjectionTest.java:655:94:655:101 | source(...) : Object | LogInjectionTest.java:655:85:655:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | +| LogInjectionTest.java:656:79:656:86 | source(...) : Object | LogInjectionTest.java:656:70:656:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | +| LogInjectionTest.java:657:64:657:71 | source(...) : Object | LogInjectionTest.java:657:55:657:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | +| LogInjectionTest.java:658:49:658:56 | source(...) : Object | LogInjectionTest.java:658:40:658:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:203 | +| LogInjectionTest.java:659:109:659:116 | source(...) : Object | LogInjectionTest.java:659:100:659:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | +| LogInjectionTest.java:660:94:660:101 | source(...) : Object | LogInjectionTest.java:660:85:660:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | +| LogInjectionTest.java:661:79:661:86 | source(...) : Object | LogInjectionTest.java:661:70:661:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | +| LogInjectionTest.java:662:64:662:71 | source(...) : Object | LogInjectionTest.java:662:55:662:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | +| LogInjectionTest.java:663:49:663:56 | source(...) : Object | LogInjectionTest.java:663:40:663:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:204 | +| LogInjectionTest.java:664:124:664:131 | source(...) : Object | LogInjectionTest.java:664:115:664:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | +| LogInjectionTest.java:665:109:665:116 | source(...) : Object | LogInjectionTest.java:665:100:665:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | +| LogInjectionTest.java:666:94:666:101 | source(...) : Object | LogInjectionTest.java:666:85:666:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | +| LogInjectionTest.java:667:79:667:86 | source(...) : Object | LogInjectionTest.java:667:70:667:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | +| LogInjectionTest.java:668:64:668:71 | source(...) : Object | LogInjectionTest.java:668:55:668:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | +| LogInjectionTest.java:669:49:669:56 | source(...) : Object | LogInjectionTest.java:669:40:669:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:205 | +| LogInjectionTest.java:670:139:670:146 | source(...) : Object | LogInjectionTest.java:670:130:670:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:671:124:671:131 | source(...) : Object | LogInjectionTest.java:671:115:671:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:672:109:672:116 | source(...) : Object | LogInjectionTest.java:672:100:672:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:673:94:673:101 | source(...) : Object | LogInjectionTest.java:673:85:673:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:674:79:674:86 | source(...) : Object | LogInjectionTest.java:674:70:674:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:675:64:675:71 | source(...) : Object | LogInjectionTest.java:675:55:675:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:676:49:676:56 | source(...) : Object | LogInjectionTest.java:676:40:676:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:206 | +| LogInjectionTest.java:677:154:677:161 | source(...) : Object | LogInjectionTest.java:677:145:677:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:678:139:678:146 | source(...) : Object | LogInjectionTest.java:678:130:678:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:679:124:679:131 | source(...) : Object | LogInjectionTest.java:679:115:679:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:680:109:680:116 | source(...) : Object | LogInjectionTest.java:680:100:680:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:681:94:681:101 | source(...) : Object | LogInjectionTest.java:681:85:681:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:682:79:682:86 | source(...) : Object | LogInjectionTest.java:682:70:682:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:683:64:683:71 | source(...) : Object | LogInjectionTest.java:683:55:683:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:684:49:684:56 | source(...) : Object | LogInjectionTest.java:684:40:684:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:207 | +| LogInjectionTest.java:685:169:685:176 | source(...) : Object | LogInjectionTest.java:685:160:685:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:686:154:686:161 | source(...) : Object | LogInjectionTest.java:686:145:686:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:687:139:687:146 | source(...) : Object | LogInjectionTest.java:687:130:687:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:688:124:688:131 | source(...) : Object | LogInjectionTest.java:688:115:688:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:689:109:689:116 | source(...) : Object | LogInjectionTest.java:689:100:689:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:690:94:690:101 | source(...) : Object | LogInjectionTest.java:690:85:690:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:691:79:691:86 | source(...) : Object | LogInjectionTest.java:691:70:691:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:692:64:692:71 | source(...) : Object | LogInjectionTest.java:692:55:692:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:693:49:693:56 | source(...) : Object | LogInjectionTest.java:693:40:693:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:208 | +| LogInjectionTest.java:694:184:694:191 | source(...) : Object | LogInjectionTest.java:694:175:694:191 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:695:169:695:176 | source(...) : Object | LogInjectionTest.java:695:160:695:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:696:154:696:161 | source(...) : Object | LogInjectionTest.java:696:145:696:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:697:139:697:146 | source(...) : Object | LogInjectionTest.java:697:130:697:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:698:124:698:131 | source(...) : Object | LogInjectionTest.java:698:115:698:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:699:109:699:116 | source(...) : Object | LogInjectionTest.java:699:100:699:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:700:94:700:101 | source(...) : Object | LogInjectionTest.java:700:85:700:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:701:79:701:86 | source(...) : Object | LogInjectionTest.java:701:70:701:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:702:64:702:71 | source(...) : Object | LogInjectionTest.java:702:55:702:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:703:49:703:56 | source(...) : Object | LogInjectionTest.java:703:40:703:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:209 | +| LogInjectionTest.java:704:49:704:56 | source(...) : Object | LogInjectionTest.java:704:40:704:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | +| LogInjectionTest.java:705:69:705:76 | source(...) : Object | LogInjectionTest.java:705:55:705:76 | (...)... | provenance | Src:MaD:536 Sink:MaD:201 | +| LogInjectionTest.java:706:49:706:56 | source(...) : Object | LogInjectionTest.java:706:40:706:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:211 | +| LogInjectionTest.java:707:54:707:61 | source(...) : Object | LogInjectionTest.java:707:40:707:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:212 | +| LogInjectionTest.java:708:54:708:61 | source(...) : Object | LogInjectionTest.java:708:40:708:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:213 | +| LogInjectionTest.java:709:43:709:50 | source(...) : Object | LogInjectionTest.java:709:25:709:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:216 | +| LogInjectionTest.java:710:43:710:50 | source(...) : Object | LogInjectionTest.java:710:25:710:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:217 | +| LogInjectionTest.java:711:35:711:42 | source(...) : Object | LogInjectionTest.java:711:25:711:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:214 | +| LogInjectionTest.java:712:35:712:42 | source(...) : Object | LogInjectionTest.java:712:25:712:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:215 | +| LogInjectionTest.java:715:34:715:41 | source(...) : Object | LogInjectionTest.java:715:25:715:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:218 | +| LogInjectionTest.java:716:34:716:41 | source(...) : Object | LogInjectionTest.java:716:25:716:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:228 | +| LogInjectionTest.java:717:40:717:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:717:40:717:62 | new Object[] | provenance | Sink:MaD:228 | +| LogInjectionTest.java:717:54:717:61 | source(...) : Object | LogInjectionTest.java:717:40:717:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:718:49:718:56 | source(...) : Object | LogInjectionTest.java:718:40:718:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | +| LogInjectionTest.java:719:34:719:41 | source(...) : Object | LogInjectionTest.java:719:25:719:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | +| LogInjectionTest.java:720:64:720:71 | source(...) : Object | LogInjectionTest.java:720:55:720:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:220 | +| LogInjectionTest.java:721:49:721:56 | source(...) : Object | LogInjectionTest.java:721:40:721:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:220 | +| LogInjectionTest.java:722:34:722:41 | source(...) : Object | LogInjectionTest.java:722:25:722:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:220 | +| LogInjectionTest.java:723:79:723:86 | source(...) : Object | LogInjectionTest.java:723:70:723:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | +| LogInjectionTest.java:724:64:724:71 | source(...) : Object | LogInjectionTest.java:724:55:724:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | +| LogInjectionTest.java:725:49:725:56 | source(...) : Object | LogInjectionTest.java:725:40:725:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | +| LogInjectionTest.java:726:34:726:41 | source(...) : Object | LogInjectionTest.java:726:25:726:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:221 | +| LogInjectionTest.java:727:94:727:101 | source(...) : Object | LogInjectionTest.java:727:85:727:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | +| LogInjectionTest.java:728:79:728:86 | source(...) : Object | LogInjectionTest.java:728:70:728:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | +| LogInjectionTest.java:729:64:729:71 | source(...) : Object | LogInjectionTest.java:729:55:729:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | +| LogInjectionTest.java:730:49:730:56 | source(...) : Object | LogInjectionTest.java:730:40:730:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | +| LogInjectionTest.java:731:34:731:41 | source(...) : Object | LogInjectionTest.java:731:25:731:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:222 | +| LogInjectionTest.java:732:109:732:116 | source(...) : Object | LogInjectionTest.java:732:100:732:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | +| LogInjectionTest.java:733:94:733:101 | source(...) : Object | LogInjectionTest.java:733:85:733:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | +| LogInjectionTest.java:734:79:734:86 | source(...) : Object | LogInjectionTest.java:734:70:734:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | +| LogInjectionTest.java:735:64:735:71 | source(...) : Object | LogInjectionTest.java:735:55:735:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | +| LogInjectionTest.java:736:49:736:56 | source(...) : Object | LogInjectionTest.java:736:40:736:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | +| LogInjectionTest.java:737:34:737:41 | source(...) : Object | LogInjectionTest.java:737:25:737:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:223 | +| LogInjectionTest.java:738:124:738:131 | source(...) : Object | LogInjectionTest.java:738:115:738:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:739:109:739:116 | source(...) : Object | LogInjectionTest.java:739:100:739:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:740:94:740:101 | source(...) : Object | LogInjectionTest.java:740:85:740:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:741:79:741:86 | source(...) : Object | LogInjectionTest.java:741:70:741:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:742:64:742:71 | source(...) : Object | LogInjectionTest.java:742:55:742:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:743:49:743:56 | source(...) : Object | LogInjectionTest.java:743:40:743:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:744:34:744:41 | source(...) : Object | LogInjectionTest.java:744:25:744:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:224 | +| LogInjectionTest.java:745:139:745:146 | source(...) : Object | LogInjectionTest.java:745:130:745:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:746:124:746:131 | source(...) : Object | LogInjectionTest.java:746:115:746:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:747:109:747:116 | source(...) : Object | LogInjectionTest.java:747:100:747:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:748:94:748:101 | source(...) : Object | LogInjectionTest.java:748:85:748:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:749:79:749:86 | source(...) : Object | LogInjectionTest.java:749:70:749:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:750:64:750:71 | source(...) : Object | LogInjectionTest.java:750:55:750:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:751:49:751:56 | source(...) : Object | LogInjectionTest.java:751:40:751:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:752:34:752:41 | source(...) : Object | LogInjectionTest.java:752:25:752:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:225 | +| LogInjectionTest.java:753:154:753:161 | source(...) : Object | LogInjectionTest.java:753:145:753:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:754:139:754:146 | source(...) : Object | LogInjectionTest.java:754:130:754:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:755:124:755:131 | source(...) : Object | LogInjectionTest.java:755:115:755:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:756:109:756:116 | source(...) : Object | LogInjectionTest.java:756:100:756:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:757:94:757:101 | source(...) : Object | LogInjectionTest.java:757:85:757:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:758:79:758:86 | source(...) : Object | LogInjectionTest.java:758:70:758:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:759:64:759:71 | source(...) : Object | LogInjectionTest.java:759:55:759:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:760:49:760:56 | source(...) : Object | LogInjectionTest.java:760:40:760:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:761:34:761:41 | source(...) : Object | LogInjectionTest.java:761:25:761:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:226 | +| LogInjectionTest.java:762:169:762:176 | source(...) : Object | LogInjectionTest.java:762:160:762:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:763:154:763:161 | source(...) : Object | LogInjectionTest.java:763:145:763:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:764:139:764:146 | source(...) : Object | LogInjectionTest.java:764:130:764:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:765:124:765:131 | source(...) : Object | LogInjectionTest.java:765:115:765:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:766:109:766:116 | source(...) : Object | LogInjectionTest.java:766:100:766:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:767:94:767:101 | source(...) : Object | LogInjectionTest.java:767:85:767:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:768:79:768:86 | source(...) : Object | LogInjectionTest.java:768:70:768:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:769:64:769:71 | source(...) : Object | LogInjectionTest.java:769:55:769:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:770:49:770:56 | source(...) : Object | LogInjectionTest.java:770:40:770:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:771:34:771:41 | source(...) : Object | LogInjectionTest.java:771:25:771:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:227 | +| LogInjectionTest.java:772:34:772:41 | source(...) : Object | LogInjectionTest.java:772:25:772:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | +| LogInjectionTest.java:773:54:773:61 | source(...) : Object | LogInjectionTest.java:773:40:773:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:219 | +| LogInjectionTest.java:774:34:774:41 | source(...) : Object | LogInjectionTest.java:774:25:774:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:229 | +| LogInjectionTest.java:775:39:775:46 | source(...) : Object | LogInjectionTest.java:775:25:775:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:230 | +| LogInjectionTest.java:776:39:776:46 | source(...) : Object | LogInjectionTest.java:776:25:776:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:231 | +| LogInjectionTest.java:777:53:777:60 | source(...) : Object | LogInjectionTest.java:777:38:777:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:232 | +| LogInjectionTest.java:778:53:778:60 | source(...) : Object | LogInjectionTest.java:778:38:778:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:233 | +| LogInjectionTest.java:779:68:779:75 | source(...) : Object | LogInjectionTest.java:779:53:779:75 | (...)... | provenance | Src:MaD:536 Sink:MaD:234 | +| LogInjectionTest.java:780:68:780:75 | source(...) : Object | LogInjectionTest.java:780:53:780:75 | (...)... | provenance | Src:MaD:536 Sink:MaD:235 | +| LogInjectionTest.java:781:63:781:70 | source(...) : Object | LogInjectionTest.java:781:53:781:70 | (...)... | provenance | Src:MaD:536 Sink:MaD:236 | +| LogInjectionTest.java:782:71:782:78 | source(...) : Object | LogInjectionTest.java:782:53:782:78 | (...)... | provenance | Src:MaD:536 Sink:MaD:237 | +| LogInjectionTest.java:783:71:783:78 | source(...) : Object | LogInjectionTest.java:783:53:783:78 | (...)... | provenance | Src:MaD:536 Sink:MaD:238 | +| LogInjectionTest.java:785:62:785:69 | source(...) : Object | LogInjectionTest.java:785:53:785:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:239 | +| LogInjectionTest.java:786:62:786:69 | source(...) : Object | LogInjectionTest.java:786:53:786:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:249 | +| LogInjectionTest.java:787:68:787:90 | {...} : Object[] [[]] : Object | LogInjectionTest.java:787:68:787:90 | new Object[] | provenance | Sink:MaD:249 | +| LogInjectionTest.java:787:82:787:89 | source(...) : Object | LogInjectionTest.java:787:68:787:90 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:788:77:788:84 | source(...) : Object | LogInjectionTest.java:788:68:788:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | +| LogInjectionTest.java:789:62:789:69 | source(...) : Object | LogInjectionTest.java:789:53:789:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | +| LogInjectionTest.java:790:92:790:99 | source(...) : Object | LogInjectionTest.java:790:83:790:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:241 | +| LogInjectionTest.java:791:77:791:84 | source(...) : Object | LogInjectionTest.java:791:68:791:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:241 | +| LogInjectionTest.java:792:62:792:69 | source(...) : Object | LogInjectionTest.java:792:53:792:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:241 | +| LogInjectionTest.java:793:107:793:114 | source(...) : Object | LogInjectionTest.java:793:98:793:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | +| LogInjectionTest.java:794:92:794:99 | source(...) : Object | LogInjectionTest.java:794:83:794:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | +| LogInjectionTest.java:795:77:795:84 | source(...) : Object | LogInjectionTest.java:795:68:795:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | +| LogInjectionTest.java:796:62:796:69 | source(...) : Object | LogInjectionTest.java:796:53:796:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:242 | +| LogInjectionTest.java:797:122:797:129 | source(...) : Object | LogInjectionTest.java:797:113:797:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | +| LogInjectionTest.java:798:107:798:114 | source(...) : Object | LogInjectionTest.java:798:98:798:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | +| LogInjectionTest.java:799:92:799:99 | source(...) : Object | LogInjectionTest.java:799:83:799:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | +| LogInjectionTest.java:800:77:800:84 | source(...) : Object | LogInjectionTest.java:800:68:800:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | +| LogInjectionTest.java:801:62:801:69 | source(...) : Object | LogInjectionTest.java:801:53:801:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:243 | +| LogInjectionTest.java:802:137:802:144 | source(...) : Object | LogInjectionTest.java:802:128:802:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | +| LogInjectionTest.java:803:122:803:129 | source(...) : Object | LogInjectionTest.java:803:113:803:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | +| LogInjectionTest.java:804:107:804:114 | source(...) : Object | LogInjectionTest.java:804:98:804:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | +| LogInjectionTest.java:805:92:805:99 | source(...) : Object | LogInjectionTest.java:805:83:805:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | +| LogInjectionTest.java:806:77:806:84 | source(...) : Object | LogInjectionTest.java:806:68:806:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | +| LogInjectionTest.java:807:62:807:69 | source(...) : Object | LogInjectionTest.java:807:53:807:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:244 | +| LogInjectionTest.java:808:152:808:159 | source(...) : Object | LogInjectionTest.java:808:143:808:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:809:137:809:144 | source(...) : Object | LogInjectionTest.java:809:128:809:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:810:122:810:129 | source(...) : Object | LogInjectionTest.java:810:113:810:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:811:107:811:114 | source(...) : Object | LogInjectionTest.java:811:98:811:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:812:92:812:99 | source(...) : Object | LogInjectionTest.java:812:83:812:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:813:77:813:84 | source(...) : Object | LogInjectionTest.java:813:68:813:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:814:62:814:69 | source(...) : Object | LogInjectionTest.java:814:53:814:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:245 | +| LogInjectionTest.java:815:167:815:174 | source(...) : Object | LogInjectionTest.java:815:158:815:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:816:152:816:159 | source(...) : Object | LogInjectionTest.java:816:143:816:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:817:137:817:144 | source(...) : Object | LogInjectionTest.java:817:128:817:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:818:122:818:129 | source(...) : Object | LogInjectionTest.java:818:113:818:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:819:107:819:114 | source(...) : Object | LogInjectionTest.java:819:98:819:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:820:92:820:99 | source(...) : Object | LogInjectionTest.java:820:83:820:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:821:77:821:84 | source(...) : Object | LogInjectionTest.java:821:68:821:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:822:62:822:69 | source(...) : Object | LogInjectionTest.java:822:53:822:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:246 | +| LogInjectionTest.java:823:182:823:189 | source(...) : Object | LogInjectionTest.java:823:173:823:189 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:824:167:824:174 | source(...) : Object | LogInjectionTest.java:824:158:824:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:825:152:825:159 | source(...) : Object | LogInjectionTest.java:825:143:825:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:826:137:826:144 | source(...) : Object | LogInjectionTest.java:826:128:826:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:827:122:827:129 | source(...) : Object | LogInjectionTest.java:827:113:827:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:828:107:828:114 | source(...) : Object | LogInjectionTest.java:828:98:828:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:829:92:829:99 | source(...) : Object | LogInjectionTest.java:829:83:829:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:830:77:830:84 | source(...) : Object | LogInjectionTest.java:830:68:830:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:831:62:831:69 | source(...) : Object | LogInjectionTest.java:831:53:831:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:247 | +| LogInjectionTest.java:832:197:832:204 | source(...) : Object | LogInjectionTest.java:832:188:832:204 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:833:182:833:189 | source(...) : Object | LogInjectionTest.java:833:173:833:189 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:834:167:834:174 | source(...) : Object | LogInjectionTest.java:834:158:834:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:835:152:835:159 | source(...) : Object | LogInjectionTest.java:835:143:835:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:836:137:836:144 | source(...) : Object | LogInjectionTest.java:836:128:836:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:837:122:837:129 | source(...) : Object | LogInjectionTest.java:837:113:837:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:838:107:838:114 | source(...) : Object | LogInjectionTest.java:838:98:838:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:839:92:839:99 | source(...) : Object | LogInjectionTest.java:839:83:839:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:840:77:840:84 | source(...) : Object | LogInjectionTest.java:840:68:840:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:841:62:841:69 | source(...) : Object | LogInjectionTest.java:841:53:841:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:248 | +| LogInjectionTest.java:842:62:842:69 | source(...) : Object | LogInjectionTest.java:842:53:842:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | +| LogInjectionTest.java:843:82:843:89 | source(...) : Object | LogInjectionTest.java:843:68:843:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:240 | +| LogInjectionTest.java:844:62:844:69 | source(...) : Object | LogInjectionTest.java:844:53:844:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:250 | +| LogInjectionTest.java:845:67:845:74 | source(...) : Object | LogInjectionTest.java:845:53:845:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:251 | +| LogInjectionTest.java:846:67:846:74 | source(...) : Object | LogInjectionTest.java:846:53:846:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:252 | +| LogInjectionTest.java:847:56:847:63 | source(...) : Object | LogInjectionTest.java:847:38:847:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:255 | +| LogInjectionTest.java:848:56:848:63 | source(...) : Object | LogInjectionTest.java:848:38:848:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:256 | +| LogInjectionTest.java:849:48:849:55 | source(...) : Object | LogInjectionTest.java:849:38:849:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:253 | +| LogInjectionTest.java:850:48:850:55 | source(...) : Object | LogInjectionTest.java:850:38:850:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:254 | +| LogInjectionTest.java:853:47:853:54 | source(...) : Object | LogInjectionTest.java:853:38:853:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:257 | +| LogInjectionTest.java:854:47:854:54 | source(...) : Object | LogInjectionTest.java:854:38:854:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:267 | +| LogInjectionTest.java:855:53:855:75 | {...} : Object[] [[]] : Object | LogInjectionTest.java:855:53:855:75 | new Object[] | provenance | Sink:MaD:267 | +| LogInjectionTest.java:855:67:855:74 | source(...) : Object | LogInjectionTest.java:855:53:855:75 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:856:62:856:69 | source(...) : Object | LogInjectionTest.java:856:53:856:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | +| LogInjectionTest.java:857:47:857:54 | source(...) : Object | LogInjectionTest.java:857:38:857:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | +| LogInjectionTest.java:858:77:858:84 | source(...) : Object | LogInjectionTest.java:858:68:858:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:259 | +| LogInjectionTest.java:859:62:859:69 | source(...) : Object | LogInjectionTest.java:859:53:859:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:259 | +| LogInjectionTest.java:860:47:860:54 | source(...) : Object | LogInjectionTest.java:860:38:860:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:259 | +| LogInjectionTest.java:861:92:861:99 | source(...) : Object | LogInjectionTest.java:861:83:861:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | +| LogInjectionTest.java:862:77:862:84 | source(...) : Object | LogInjectionTest.java:862:68:862:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | +| LogInjectionTest.java:863:62:863:69 | source(...) : Object | LogInjectionTest.java:863:53:863:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | +| LogInjectionTest.java:864:47:864:54 | source(...) : Object | LogInjectionTest.java:864:38:864:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:260 | +| LogInjectionTest.java:865:107:865:114 | source(...) : Object | LogInjectionTest.java:865:98:865:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | +| LogInjectionTest.java:866:92:866:99 | source(...) : Object | LogInjectionTest.java:866:83:866:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | +| LogInjectionTest.java:867:77:867:84 | source(...) : Object | LogInjectionTest.java:867:68:867:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | +| LogInjectionTest.java:868:62:868:69 | source(...) : Object | LogInjectionTest.java:868:53:868:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | +| LogInjectionTest.java:869:47:869:54 | source(...) : Object | LogInjectionTest.java:869:38:869:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:261 | +| LogInjectionTest.java:870:122:870:129 | source(...) : Object | LogInjectionTest.java:870:113:870:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | +| LogInjectionTest.java:871:107:871:114 | source(...) : Object | LogInjectionTest.java:871:98:871:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | +| LogInjectionTest.java:872:92:872:99 | source(...) : Object | LogInjectionTest.java:872:83:872:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | +| LogInjectionTest.java:873:77:873:84 | source(...) : Object | LogInjectionTest.java:873:68:873:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | +| LogInjectionTest.java:874:62:874:69 | source(...) : Object | LogInjectionTest.java:874:53:874:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | +| LogInjectionTest.java:875:47:875:54 | source(...) : Object | LogInjectionTest.java:875:38:875:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:262 | +| LogInjectionTest.java:876:137:876:144 | source(...) : Object | LogInjectionTest.java:876:128:876:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:877:122:877:129 | source(...) : Object | LogInjectionTest.java:877:113:877:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:878:107:878:114 | source(...) : Object | LogInjectionTest.java:878:98:878:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:879:92:879:99 | source(...) : Object | LogInjectionTest.java:879:83:879:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:880:77:880:84 | source(...) : Object | LogInjectionTest.java:880:68:880:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:881:62:881:69 | source(...) : Object | LogInjectionTest.java:881:53:881:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:882:47:882:54 | source(...) : Object | LogInjectionTest.java:882:38:882:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:263 | +| LogInjectionTest.java:883:152:883:159 | source(...) : Object | LogInjectionTest.java:883:143:883:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:884:137:884:144 | source(...) : Object | LogInjectionTest.java:884:128:884:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:885:122:885:129 | source(...) : Object | LogInjectionTest.java:885:113:885:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:886:107:886:114 | source(...) : Object | LogInjectionTest.java:886:98:886:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:887:92:887:99 | source(...) : Object | LogInjectionTest.java:887:83:887:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:888:77:888:84 | source(...) : Object | LogInjectionTest.java:888:68:888:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:889:62:889:69 | source(...) : Object | LogInjectionTest.java:889:53:889:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:890:47:890:54 | source(...) : Object | LogInjectionTest.java:890:38:890:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:264 | +| LogInjectionTest.java:891:167:891:174 | source(...) : Object | LogInjectionTest.java:891:158:891:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:892:152:892:159 | source(...) : Object | LogInjectionTest.java:892:143:892:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:893:137:893:144 | source(...) : Object | LogInjectionTest.java:893:128:893:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:894:122:894:129 | source(...) : Object | LogInjectionTest.java:894:113:894:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:895:107:895:114 | source(...) : Object | LogInjectionTest.java:895:98:895:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:896:92:896:99 | source(...) : Object | LogInjectionTest.java:896:83:896:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:897:77:897:84 | source(...) : Object | LogInjectionTest.java:897:68:897:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:898:62:898:69 | source(...) : Object | LogInjectionTest.java:898:53:898:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:899:47:899:54 | source(...) : Object | LogInjectionTest.java:899:38:899:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:265 | +| LogInjectionTest.java:900:182:900:189 | source(...) : Object | LogInjectionTest.java:900:173:900:189 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:901:167:901:174 | source(...) : Object | LogInjectionTest.java:901:158:901:174 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:902:152:902:159 | source(...) : Object | LogInjectionTest.java:902:143:902:159 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:903:137:903:144 | source(...) : Object | LogInjectionTest.java:903:128:903:144 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:904:122:904:129 | source(...) : Object | LogInjectionTest.java:904:113:904:129 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:905:107:905:114 | source(...) : Object | LogInjectionTest.java:905:98:905:114 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:906:92:906:99 | source(...) : Object | LogInjectionTest.java:906:83:906:99 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:907:77:907:84 | source(...) : Object | LogInjectionTest.java:907:68:907:84 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:908:62:908:69 | source(...) : Object | LogInjectionTest.java:908:53:908:69 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:909:47:909:54 | source(...) : Object | LogInjectionTest.java:909:38:909:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:266 | +| LogInjectionTest.java:910:47:910:54 | source(...) : Object | LogInjectionTest.java:910:38:910:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | +| LogInjectionTest.java:911:67:911:74 | source(...) : Object | LogInjectionTest.java:911:53:911:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:258 | +| LogInjectionTest.java:912:47:912:54 | source(...) : Object | LogInjectionTest.java:912:38:912:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:268 | +| LogInjectionTest.java:913:52:913:59 | source(...) : Object | LogInjectionTest.java:913:38:913:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:269 | +| LogInjectionTest.java:914:52:914:59 | source(...) : Object | LogInjectionTest.java:914:38:914:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:270 | +| LogInjectionTest.java:915:41:915:48 | source(...) : Object | LogInjectionTest.java:915:26:915:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:274 | +| LogInjectionTest.java:916:41:916:48 | source(...) : Object | LogInjectionTest.java:916:26:916:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:275 | +| LogInjectionTest.java:917:56:917:63 | source(...) : Object | LogInjectionTest.java:917:41:917:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:276 | +| LogInjectionTest.java:918:56:918:63 | source(...) : Object | LogInjectionTest.java:918:41:918:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:277 | +| LogInjectionTest.java:919:51:919:58 | source(...) : Object | LogInjectionTest.java:919:41:919:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:278 | +| LogInjectionTest.java:920:59:920:66 | source(...) : Object | LogInjectionTest.java:920:41:920:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:279 | +| LogInjectionTest.java:921:59:921:66 | source(...) : Object | LogInjectionTest.java:921:41:921:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:280 | +| LogInjectionTest.java:923:50:923:57 | source(...) : Object | LogInjectionTest.java:923:41:923:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:281 | +| LogInjectionTest.java:924:50:924:57 | source(...) : Object | LogInjectionTest.java:924:41:924:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:291 | +| LogInjectionTest.java:925:56:925:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:925:56:925:78 | new Object[] | provenance | Sink:MaD:291 | +| LogInjectionTest.java:925:70:925:77 | source(...) : Object | LogInjectionTest.java:925:56:925:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:926:65:926:72 | source(...) : Object | LogInjectionTest.java:926:56:926:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | +| LogInjectionTest.java:927:50:927:57 | source(...) : Object | LogInjectionTest.java:927:41:927:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | +| LogInjectionTest.java:928:80:928:87 | source(...) : Object | LogInjectionTest.java:928:71:928:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:283 | +| LogInjectionTest.java:929:65:929:72 | source(...) : Object | LogInjectionTest.java:929:56:929:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:283 | +| LogInjectionTest.java:930:50:930:57 | source(...) : Object | LogInjectionTest.java:930:41:930:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:283 | +| LogInjectionTest.java:931:95:931:102 | source(...) : Object | LogInjectionTest.java:931:86:931:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | +| LogInjectionTest.java:932:80:932:87 | source(...) : Object | LogInjectionTest.java:932:71:932:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | +| LogInjectionTest.java:933:65:933:72 | source(...) : Object | LogInjectionTest.java:933:56:933:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | +| LogInjectionTest.java:934:50:934:57 | source(...) : Object | LogInjectionTest.java:934:41:934:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:284 | +| LogInjectionTest.java:935:110:935:117 | source(...) : Object | LogInjectionTest.java:935:101:935:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | +| LogInjectionTest.java:936:95:936:102 | source(...) : Object | LogInjectionTest.java:936:86:936:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | +| LogInjectionTest.java:937:80:937:87 | source(...) : Object | LogInjectionTest.java:937:71:937:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | +| LogInjectionTest.java:938:65:938:72 | source(...) : Object | LogInjectionTest.java:938:56:938:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | +| LogInjectionTest.java:939:50:939:57 | source(...) : Object | LogInjectionTest.java:939:41:939:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:285 | +| LogInjectionTest.java:940:125:940:132 | source(...) : Object | LogInjectionTest.java:940:116:940:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | +| LogInjectionTest.java:941:110:941:117 | source(...) : Object | LogInjectionTest.java:941:101:941:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | +| LogInjectionTest.java:942:95:942:102 | source(...) : Object | LogInjectionTest.java:942:86:942:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | +| LogInjectionTest.java:943:80:943:87 | source(...) : Object | LogInjectionTest.java:943:71:943:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | +| LogInjectionTest.java:944:65:944:72 | source(...) : Object | LogInjectionTest.java:944:56:944:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | +| LogInjectionTest.java:945:50:945:57 | source(...) : Object | LogInjectionTest.java:945:41:945:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:286 | +| LogInjectionTest.java:946:140:946:147 | source(...) : Object | LogInjectionTest.java:946:131:946:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:947:125:947:132 | source(...) : Object | LogInjectionTest.java:947:116:947:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:948:110:948:117 | source(...) : Object | LogInjectionTest.java:948:101:948:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:949:95:949:102 | source(...) : Object | LogInjectionTest.java:949:86:949:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:950:80:950:87 | source(...) : Object | LogInjectionTest.java:950:71:950:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:951:65:951:72 | source(...) : Object | LogInjectionTest.java:951:56:951:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:952:50:952:57 | source(...) : Object | LogInjectionTest.java:952:41:952:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:287 | +| LogInjectionTest.java:953:155:953:162 | source(...) : Object | LogInjectionTest.java:953:146:953:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:954:140:954:147 | source(...) : Object | LogInjectionTest.java:954:131:954:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:955:125:955:132 | source(...) : Object | LogInjectionTest.java:955:116:955:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:956:110:956:117 | source(...) : Object | LogInjectionTest.java:956:101:956:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:957:95:957:102 | source(...) : Object | LogInjectionTest.java:957:86:957:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:958:80:958:87 | source(...) : Object | LogInjectionTest.java:958:71:958:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:959:65:959:72 | source(...) : Object | LogInjectionTest.java:959:56:959:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:960:50:960:57 | source(...) : Object | LogInjectionTest.java:960:41:960:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:288 | +| LogInjectionTest.java:961:170:961:177 | source(...) : Object | LogInjectionTest.java:961:161:961:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:962:155:962:162 | source(...) : Object | LogInjectionTest.java:962:146:962:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:963:140:963:147 | source(...) : Object | LogInjectionTest.java:963:131:963:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:964:125:964:132 | source(...) : Object | LogInjectionTest.java:964:116:964:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:965:110:965:117 | source(...) : Object | LogInjectionTest.java:965:101:965:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:966:95:966:102 | source(...) : Object | LogInjectionTest.java:966:86:966:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:967:80:967:87 | source(...) : Object | LogInjectionTest.java:967:71:967:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:968:65:968:72 | source(...) : Object | LogInjectionTest.java:968:56:968:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:969:50:969:57 | source(...) : Object | LogInjectionTest.java:969:41:969:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:289 | +| LogInjectionTest.java:970:185:970:192 | source(...) : Object | LogInjectionTest.java:970:176:970:192 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:971:170:971:177 | source(...) : Object | LogInjectionTest.java:971:161:971:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:972:155:972:162 | source(...) : Object | LogInjectionTest.java:972:146:972:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:973:140:973:147 | source(...) : Object | LogInjectionTest.java:973:131:973:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:974:125:974:132 | source(...) : Object | LogInjectionTest.java:974:116:974:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:975:110:975:117 | source(...) : Object | LogInjectionTest.java:975:101:975:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:976:95:976:102 | source(...) : Object | LogInjectionTest.java:976:86:976:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:977:80:977:87 | source(...) : Object | LogInjectionTest.java:977:71:977:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:978:65:978:72 | source(...) : Object | LogInjectionTest.java:978:56:978:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:979:50:979:57 | source(...) : Object | LogInjectionTest.java:979:41:979:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:290 | +| LogInjectionTest.java:980:50:980:57 | source(...) : Object | LogInjectionTest.java:980:41:980:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | +| LogInjectionTest.java:981:70:981:77 | source(...) : Object | LogInjectionTest.java:981:56:981:77 | (...)... | provenance | Src:MaD:536 Sink:MaD:282 | +| LogInjectionTest.java:982:50:982:57 | source(...) : Object | LogInjectionTest.java:982:41:982:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:292 | +| LogInjectionTest.java:983:55:983:62 | source(...) : Object | LogInjectionTest.java:983:41:983:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:293 | +| LogInjectionTest.java:984:55:984:62 | source(...) : Object | LogInjectionTest.java:984:41:984:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:294 | +| LogInjectionTest.java:985:44:985:51 | source(...) : Object | LogInjectionTest.java:985:26:985:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:297 | +| LogInjectionTest.java:986:44:986:51 | source(...) : Object | LogInjectionTest.java:986:26:986:51 | (...)... | provenance | Src:MaD:536 Sink:MaD:298 | +| LogInjectionTest.java:987:36:987:43 | source(...) : Object | LogInjectionTest.java:987:26:987:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:295 | +| LogInjectionTest.java:988:36:988:43 | source(...) : Object | LogInjectionTest.java:988:26:988:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:296 | +| LogInjectionTest.java:991:35:991:42 | source(...) : Object | LogInjectionTest.java:991:26:991:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:299 | +| LogInjectionTest.java:992:35:992:42 | source(...) : Object | LogInjectionTest.java:992:26:992:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:309 | +| LogInjectionTest.java:993:41:993:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:993:41:993:63 | new Object[] | provenance | Sink:MaD:309 | +| LogInjectionTest.java:993:55:993:62 | source(...) : Object | LogInjectionTest.java:993:41:993:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:994:50:994:57 | source(...) : Object | LogInjectionTest.java:994:41:994:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | +| LogInjectionTest.java:995:35:995:42 | source(...) : Object | LogInjectionTest.java:995:26:995:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | +| LogInjectionTest.java:996:65:996:72 | source(...) : Object | LogInjectionTest.java:996:56:996:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:301 | +| LogInjectionTest.java:997:50:997:57 | source(...) : Object | LogInjectionTest.java:997:41:997:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:301 | +| LogInjectionTest.java:998:35:998:42 | source(...) : Object | LogInjectionTest.java:998:26:998:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:301 | +| LogInjectionTest.java:999:80:999:87 | source(...) : Object | LogInjectionTest.java:999:71:999:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | +| LogInjectionTest.java:1000:65:1000:72 | source(...) : Object | LogInjectionTest.java:1000:56:1000:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | +| LogInjectionTest.java:1001:50:1001:57 | source(...) : Object | LogInjectionTest.java:1001:41:1001:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | +| LogInjectionTest.java:1002:35:1002:42 | source(...) : Object | LogInjectionTest.java:1002:26:1002:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:302 | +| LogInjectionTest.java:1003:95:1003:102 | source(...) : Object | LogInjectionTest.java:1003:86:1003:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | +| LogInjectionTest.java:1004:80:1004:87 | source(...) : Object | LogInjectionTest.java:1004:71:1004:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | +| LogInjectionTest.java:1005:65:1005:72 | source(...) : Object | LogInjectionTest.java:1005:56:1005:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | +| LogInjectionTest.java:1006:50:1006:57 | source(...) : Object | LogInjectionTest.java:1006:41:1006:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | +| LogInjectionTest.java:1007:35:1007:42 | source(...) : Object | LogInjectionTest.java:1007:26:1007:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:303 | +| LogInjectionTest.java:1008:110:1008:117 | source(...) : Object | LogInjectionTest.java:1008:101:1008:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | +| LogInjectionTest.java:1009:95:1009:102 | source(...) : Object | LogInjectionTest.java:1009:86:1009:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | +| LogInjectionTest.java:1010:80:1010:87 | source(...) : Object | LogInjectionTest.java:1010:71:1010:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | +| LogInjectionTest.java:1011:65:1011:72 | source(...) : Object | LogInjectionTest.java:1011:56:1011:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | +| LogInjectionTest.java:1012:50:1012:57 | source(...) : Object | LogInjectionTest.java:1012:41:1012:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | +| LogInjectionTest.java:1013:35:1013:42 | source(...) : Object | LogInjectionTest.java:1013:26:1013:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:304 | +| LogInjectionTest.java:1014:125:1014:132 | source(...) : Object | LogInjectionTest.java:1014:116:1014:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1015:110:1015:117 | source(...) : Object | LogInjectionTest.java:1015:101:1015:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1016:95:1016:102 | source(...) : Object | LogInjectionTest.java:1016:86:1016:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1017:80:1017:87 | source(...) : Object | LogInjectionTest.java:1017:71:1017:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1018:65:1018:72 | source(...) : Object | LogInjectionTest.java:1018:56:1018:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1019:50:1019:57 | source(...) : Object | LogInjectionTest.java:1019:41:1019:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1020:35:1020:42 | source(...) : Object | LogInjectionTest.java:1020:26:1020:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:305 | +| LogInjectionTest.java:1021:140:1021:147 | source(...) : Object | LogInjectionTest.java:1021:131:1021:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1022:125:1022:132 | source(...) : Object | LogInjectionTest.java:1022:116:1022:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1023:110:1023:117 | source(...) : Object | LogInjectionTest.java:1023:101:1023:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1024:95:1024:102 | source(...) : Object | LogInjectionTest.java:1024:86:1024:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1025:80:1025:87 | source(...) : Object | LogInjectionTest.java:1025:71:1025:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1026:65:1026:72 | source(...) : Object | LogInjectionTest.java:1026:56:1026:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1027:50:1027:57 | source(...) : Object | LogInjectionTest.java:1027:41:1027:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1028:35:1028:42 | source(...) : Object | LogInjectionTest.java:1028:26:1028:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:306 | +| LogInjectionTest.java:1029:155:1029:162 | source(...) : Object | LogInjectionTest.java:1029:146:1029:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1030:140:1030:147 | source(...) : Object | LogInjectionTest.java:1030:131:1030:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1031:125:1031:132 | source(...) : Object | LogInjectionTest.java:1031:116:1031:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1032:110:1032:117 | source(...) : Object | LogInjectionTest.java:1032:101:1032:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1033:95:1033:102 | source(...) : Object | LogInjectionTest.java:1033:86:1033:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1034:80:1034:87 | source(...) : Object | LogInjectionTest.java:1034:71:1034:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1035:65:1035:72 | source(...) : Object | LogInjectionTest.java:1035:56:1035:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1036:50:1036:57 | source(...) : Object | LogInjectionTest.java:1036:41:1036:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1037:35:1037:42 | source(...) : Object | LogInjectionTest.java:1037:26:1037:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:307 | +| LogInjectionTest.java:1038:170:1038:177 | source(...) : Object | LogInjectionTest.java:1038:161:1038:177 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1039:155:1039:162 | source(...) : Object | LogInjectionTest.java:1039:146:1039:162 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1040:140:1040:147 | source(...) : Object | LogInjectionTest.java:1040:131:1040:147 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1041:125:1041:132 | source(...) : Object | LogInjectionTest.java:1041:116:1041:132 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1042:110:1042:117 | source(...) : Object | LogInjectionTest.java:1042:101:1042:117 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1043:95:1043:102 | source(...) : Object | LogInjectionTest.java:1043:86:1043:102 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1044:80:1044:87 | source(...) : Object | LogInjectionTest.java:1044:71:1044:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1045:65:1045:72 | source(...) : Object | LogInjectionTest.java:1045:56:1045:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1046:50:1046:57 | source(...) : Object | LogInjectionTest.java:1046:41:1046:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1047:35:1047:42 | source(...) : Object | LogInjectionTest.java:1047:26:1047:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:308 | +| LogInjectionTest.java:1048:35:1048:42 | source(...) : Object | LogInjectionTest.java:1048:26:1048:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | +| LogInjectionTest.java:1049:55:1049:62 | source(...) : Object | LogInjectionTest.java:1049:41:1049:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:300 | +| LogInjectionTest.java:1050:35:1050:42 | source(...) : Object | LogInjectionTest.java:1050:26:1050:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:310 | +| LogInjectionTest.java:1051:40:1051:47 | source(...) : Object | LogInjectionTest.java:1051:26:1051:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:311 | +| LogInjectionTest.java:1052:40:1052:47 | source(...) : Object | LogInjectionTest.java:1052:26:1052:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:312 | +| LogInjectionTest.java:1053:40:1053:47 | source(...) : Object | LogInjectionTest.java:1053:25:1053:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:321 | +| LogInjectionTest.java:1054:40:1054:47 | source(...) : Object | LogInjectionTest.java:1054:25:1054:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:322 | +| LogInjectionTest.java:1055:55:1055:62 | source(...) : Object | LogInjectionTest.java:1055:40:1055:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:323 | +| LogInjectionTest.java:1056:55:1056:62 | source(...) : Object | LogInjectionTest.java:1056:40:1056:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:324 | +| LogInjectionTest.java:1057:50:1057:57 | source(...) : Object | LogInjectionTest.java:1057:40:1057:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:325 | +| LogInjectionTest.java:1058:58:1058:65 | source(...) : Object | LogInjectionTest.java:1058:40:1058:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:326 | +| LogInjectionTest.java:1059:58:1059:65 | source(...) : Object | LogInjectionTest.java:1059:40:1059:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:327 | +| LogInjectionTest.java:1061:49:1061:56 | source(...) : Object | LogInjectionTest.java:1061:40:1061:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:328 | +| LogInjectionTest.java:1062:49:1062:56 | source(...) : Object | LogInjectionTest.java:1062:40:1062:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:338 | +| LogInjectionTest.java:1063:55:1063:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1063:55:1063:77 | new Object[] | provenance | Sink:MaD:338 | +| LogInjectionTest.java:1063:69:1063:76 | source(...) : Object | LogInjectionTest.java:1063:55:1063:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1064:64:1064:71 | source(...) : Object | LogInjectionTest.java:1064:55:1064:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | +| LogInjectionTest.java:1065:49:1065:56 | source(...) : Object | LogInjectionTest.java:1065:40:1065:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | +| LogInjectionTest.java:1066:79:1066:86 | source(...) : Object | LogInjectionTest.java:1066:70:1066:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:330 | +| LogInjectionTest.java:1067:64:1067:71 | source(...) : Object | LogInjectionTest.java:1067:55:1067:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:330 | +| LogInjectionTest.java:1068:49:1068:56 | source(...) : Object | LogInjectionTest.java:1068:40:1068:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:330 | +| LogInjectionTest.java:1069:94:1069:101 | source(...) : Object | LogInjectionTest.java:1069:85:1069:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | +| LogInjectionTest.java:1070:79:1070:86 | source(...) : Object | LogInjectionTest.java:1070:70:1070:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | +| LogInjectionTest.java:1071:64:1071:71 | source(...) : Object | LogInjectionTest.java:1071:55:1071:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | +| LogInjectionTest.java:1072:49:1072:56 | source(...) : Object | LogInjectionTest.java:1072:40:1072:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:331 | +| LogInjectionTest.java:1073:109:1073:116 | source(...) : Object | LogInjectionTest.java:1073:100:1073:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | +| LogInjectionTest.java:1074:94:1074:101 | source(...) : Object | LogInjectionTest.java:1074:85:1074:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | +| LogInjectionTest.java:1075:79:1075:86 | source(...) : Object | LogInjectionTest.java:1075:70:1075:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | +| LogInjectionTest.java:1076:64:1076:71 | source(...) : Object | LogInjectionTest.java:1076:55:1076:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | +| LogInjectionTest.java:1077:49:1077:56 | source(...) : Object | LogInjectionTest.java:1077:40:1077:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:332 | +| LogInjectionTest.java:1078:124:1078:131 | source(...) : Object | LogInjectionTest.java:1078:115:1078:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | +| LogInjectionTest.java:1079:109:1079:116 | source(...) : Object | LogInjectionTest.java:1079:100:1079:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | +| LogInjectionTest.java:1080:94:1080:101 | source(...) : Object | LogInjectionTest.java:1080:85:1080:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | +| LogInjectionTest.java:1081:79:1081:86 | source(...) : Object | LogInjectionTest.java:1081:70:1081:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | +| LogInjectionTest.java:1082:64:1082:71 | source(...) : Object | LogInjectionTest.java:1082:55:1082:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | +| LogInjectionTest.java:1083:49:1083:56 | source(...) : Object | LogInjectionTest.java:1083:40:1083:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:333 | +| LogInjectionTest.java:1084:139:1084:146 | source(...) : Object | LogInjectionTest.java:1084:130:1084:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1085:124:1085:131 | source(...) : Object | LogInjectionTest.java:1085:115:1085:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1086:109:1086:116 | source(...) : Object | LogInjectionTest.java:1086:100:1086:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1087:94:1087:101 | source(...) : Object | LogInjectionTest.java:1087:85:1087:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1088:79:1088:86 | source(...) : Object | LogInjectionTest.java:1088:70:1088:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1089:64:1089:71 | source(...) : Object | LogInjectionTest.java:1089:55:1089:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1090:49:1090:56 | source(...) : Object | LogInjectionTest.java:1090:40:1090:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:334 | +| LogInjectionTest.java:1091:154:1091:161 | source(...) : Object | LogInjectionTest.java:1091:145:1091:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1092:139:1092:146 | source(...) : Object | LogInjectionTest.java:1092:130:1092:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1093:124:1093:131 | source(...) : Object | LogInjectionTest.java:1093:115:1093:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1094:109:1094:116 | source(...) : Object | LogInjectionTest.java:1094:100:1094:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1095:94:1095:101 | source(...) : Object | LogInjectionTest.java:1095:85:1095:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1096:79:1096:86 | source(...) : Object | LogInjectionTest.java:1096:70:1096:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1097:64:1097:71 | source(...) : Object | LogInjectionTest.java:1097:55:1097:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1098:49:1098:56 | source(...) : Object | LogInjectionTest.java:1098:40:1098:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:335 | +| LogInjectionTest.java:1099:169:1099:176 | source(...) : Object | LogInjectionTest.java:1099:160:1099:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1100:154:1100:161 | source(...) : Object | LogInjectionTest.java:1100:145:1100:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1101:139:1101:146 | source(...) : Object | LogInjectionTest.java:1101:130:1101:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1102:124:1102:131 | source(...) : Object | LogInjectionTest.java:1102:115:1102:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1103:109:1103:116 | source(...) : Object | LogInjectionTest.java:1103:100:1103:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1104:94:1104:101 | source(...) : Object | LogInjectionTest.java:1104:85:1104:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1105:79:1105:86 | source(...) : Object | LogInjectionTest.java:1105:70:1105:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1106:64:1106:71 | source(...) : Object | LogInjectionTest.java:1106:55:1106:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1107:49:1107:56 | source(...) : Object | LogInjectionTest.java:1107:40:1107:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:336 | +| LogInjectionTest.java:1108:184:1108:191 | source(...) : Object | LogInjectionTest.java:1108:175:1108:191 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1109:169:1109:176 | source(...) : Object | LogInjectionTest.java:1109:160:1109:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1110:154:1110:161 | source(...) : Object | LogInjectionTest.java:1110:145:1110:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1111:139:1111:146 | source(...) : Object | LogInjectionTest.java:1111:130:1111:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1112:124:1112:131 | source(...) : Object | LogInjectionTest.java:1112:115:1112:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1113:109:1113:116 | source(...) : Object | LogInjectionTest.java:1113:100:1113:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1114:94:1114:101 | source(...) : Object | LogInjectionTest.java:1114:85:1114:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1115:79:1115:86 | source(...) : Object | LogInjectionTest.java:1115:70:1115:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1116:64:1116:71 | source(...) : Object | LogInjectionTest.java:1116:55:1116:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1117:49:1117:56 | source(...) : Object | LogInjectionTest.java:1117:40:1117:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:337 | +| LogInjectionTest.java:1118:49:1118:56 | source(...) : Object | LogInjectionTest.java:1118:40:1118:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | +| LogInjectionTest.java:1119:69:1119:76 | source(...) : Object | LogInjectionTest.java:1119:55:1119:76 | (...)... | provenance | Src:MaD:536 Sink:MaD:329 | +| LogInjectionTest.java:1120:49:1120:56 | source(...) : Object | LogInjectionTest.java:1120:40:1120:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:339 | +| LogInjectionTest.java:1121:54:1121:61 | source(...) : Object | LogInjectionTest.java:1121:40:1121:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:340 | +| LogInjectionTest.java:1122:54:1122:61 | source(...) : Object | LogInjectionTest.java:1122:40:1122:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:341 | +| LogInjectionTest.java:1123:43:1123:50 | source(...) : Object | LogInjectionTest.java:1123:25:1123:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:344 | +| LogInjectionTest.java:1124:43:1124:50 | source(...) : Object | LogInjectionTest.java:1124:25:1124:50 | (...)... | provenance | Src:MaD:536 Sink:MaD:345 | +| LogInjectionTest.java:1125:35:1125:42 | source(...) : Object | LogInjectionTest.java:1125:25:1125:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:342 | +| LogInjectionTest.java:1126:35:1126:42 | source(...) : Object | LogInjectionTest.java:1126:25:1126:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:343 | +| LogInjectionTest.java:1129:34:1129:41 | source(...) : Object | LogInjectionTest.java:1129:25:1129:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:346 | +| LogInjectionTest.java:1130:34:1130:41 | source(...) : Object | LogInjectionTest.java:1130:25:1130:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:356 | +| LogInjectionTest.java:1131:40:1131:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1131:40:1131:62 | new Object[] | provenance | Sink:MaD:356 | +| LogInjectionTest.java:1131:54:1131:61 | source(...) : Object | LogInjectionTest.java:1131:40:1131:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1132:49:1132:56 | source(...) : Object | LogInjectionTest.java:1132:40:1132:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | +| LogInjectionTest.java:1133:34:1133:41 | source(...) : Object | LogInjectionTest.java:1133:25:1133:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | +| LogInjectionTest.java:1134:64:1134:71 | source(...) : Object | LogInjectionTest.java:1134:55:1134:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:348 | +| LogInjectionTest.java:1135:49:1135:56 | source(...) : Object | LogInjectionTest.java:1135:40:1135:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:348 | +| LogInjectionTest.java:1136:34:1136:41 | source(...) : Object | LogInjectionTest.java:1136:25:1136:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:348 | +| LogInjectionTest.java:1137:79:1137:86 | source(...) : Object | LogInjectionTest.java:1137:70:1137:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | +| LogInjectionTest.java:1138:64:1138:71 | source(...) : Object | LogInjectionTest.java:1138:55:1138:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | +| LogInjectionTest.java:1139:49:1139:56 | source(...) : Object | LogInjectionTest.java:1139:40:1139:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | +| LogInjectionTest.java:1140:34:1140:41 | source(...) : Object | LogInjectionTest.java:1140:25:1140:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:349 | +| LogInjectionTest.java:1141:94:1141:101 | source(...) : Object | LogInjectionTest.java:1141:85:1141:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | +| LogInjectionTest.java:1142:79:1142:86 | source(...) : Object | LogInjectionTest.java:1142:70:1142:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | +| LogInjectionTest.java:1143:64:1143:71 | source(...) : Object | LogInjectionTest.java:1143:55:1143:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | +| LogInjectionTest.java:1144:49:1144:56 | source(...) : Object | LogInjectionTest.java:1144:40:1144:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | +| LogInjectionTest.java:1145:34:1145:41 | source(...) : Object | LogInjectionTest.java:1145:25:1145:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:350 | +| LogInjectionTest.java:1146:109:1146:116 | source(...) : Object | LogInjectionTest.java:1146:100:1146:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | +| LogInjectionTest.java:1147:94:1147:101 | source(...) : Object | LogInjectionTest.java:1147:85:1147:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | +| LogInjectionTest.java:1148:79:1148:86 | source(...) : Object | LogInjectionTest.java:1148:70:1148:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | +| LogInjectionTest.java:1149:64:1149:71 | source(...) : Object | LogInjectionTest.java:1149:55:1149:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | +| LogInjectionTest.java:1150:49:1150:56 | source(...) : Object | LogInjectionTest.java:1150:40:1150:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | +| LogInjectionTest.java:1151:34:1151:41 | source(...) : Object | LogInjectionTest.java:1151:25:1151:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:351 | +| LogInjectionTest.java:1152:124:1152:131 | source(...) : Object | LogInjectionTest.java:1152:115:1152:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1153:109:1153:116 | source(...) : Object | LogInjectionTest.java:1153:100:1153:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1154:94:1154:101 | source(...) : Object | LogInjectionTest.java:1154:85:1154:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1155:79:1155:86 | source(...) : Object | LogInjectionTest.java:1155:70:1155:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1156:64:1156:71 | source(...) : Object | LogInjectionTest.java:1156:55:1156:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1157:49:1157:56 | source(...) : Object | LogInjectionTest.java:1157:40:1157:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1158:34:1158:41 | source(...) : Object | LogInjectionTest.java:1158:25:1158:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:352 | +| LogInjectionTest.java:1159:139:1159:146 | source(...) : Object | LogInjectionTest.java:1159:130:1159:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1160:124:1160:131 | source(...) : Object | LogInjectionTest.java:1160:115:1160:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1161:109:1161:116 | source(...) : Object | LogInjectionTest.java:1161:100:1161:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1162:94:1162:101 | source(...) : Object | LogInjectionTest.java:1162:85:1162:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1163:79:1163:86 | source(...) : Object | LogInjectionTest.java:1163:70:1163:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1164:64:1164:71 | source(...) : Object | LogInjectionTest.java:1164:55:1164:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1165:49:1165:56 | source(...) : Object | LogInjectionTest.java:1165:40:1165:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1166:34:1166:41 | source(...) : Object | LogInjectionTest.java:1166:25:1166:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:353 | +| LogInjectionTest.java:1167:154:1167:161 | source(...) : Object | LogInjectionTest.java:1167:145:1167:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1168:139:1168:146 | source(...) : Object | LogInjectionTest.java:1168:130:1168:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1169:124:1169:131 | source(...) : Object | LogInjectionTest.java:1169:115:1169:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1170:109:1170:116 | source(...) : Object | LogInjectionTest.java:1170:100:1170:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1171:94:1171:101 | source(...) : Object | LogInjectionTest.java:1171:85:1171:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1172:79:1172:86 | source(...) : Object | LogInjectionTest.java:1172:70:1172:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1173:64:1173:71 | source(...) : Object | LogInjectionTest.java:1173:55:1173:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1174:49:1174:56 | source(...) : Object | LogInjectionTest.java:1174:40:1174:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1175:34:1175:41 | source(...) : Object | LogInjectionTest.java:1175:25:1175:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:354 | +| LogInjectionTest.java:1176:169:1176:176 | source(...) : Object | LogInjectionTest.java:1176:160:1176:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1177:154:1177:161 | source(...) : Object | LogInjectionTest.java:1177:145:1177:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1178:139:1178:146 | source(...) : Object | LogInjectionTest.java:1178:130:1178:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1179:124:1179:131 | source(...) : Object | LogInjectionTest.java:1179:115:1179:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1180:109:1180:116 | source(...) : Object | LogInjectionTest.java:1180:100:1180:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1181:94:1181:101 | source(...) : Object | LogInjectionTest.java:1181:85:1181:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1182:79:1182:86 | source(...) : Object | LogInjectionTest.java:1182:70:1182:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1183:64:1183:71 | source(...) : Object | LogInjectionTest.java:1183:55:1183:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1184:49:1184:56 | source(...) : Object | LogInjectionTest.java:1184:40:1184:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1185:34:1185:41 | source(...) : Object | LogInjectionTest.java:1185:25:1185:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:355 | +| LogInjectionTest.java:1186:34:1186:41 | source(...) : Object | LogInjectionTest.java:1186:25:1186:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | +| LogInjectionTest.java:1187:54:1187:61 | source(...) : Object | LogInjectionTest.java:1187:40:1187:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:347 | +| LogInjectionTest.java:1188:34:1188:41 | source(...) : Object | LogInjectionTest.java:1188:25:1188:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:357 | +| LogInjectionTest.java:1189:39:1189:46 | source(...) : Object | LogInjectionTest.java:1189:25:1189:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:358 | +| LogInjectionTest.java:1190:39:1190:46 | source(...) : Object | LogInjectionTest.java:1190:25:1190:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:359 | +| LogInjectionTest.java:1192:65:1192:72 | source(...) : Object | LogInjectionTest.java:1192:55:1192:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:271 | +| LogInjectionTest.java:1193:48:1193:55 | source(...) : Object | LogInjectionTest.java:1193:39:1193:55 | (...)... | provenance | Src:MaD:536 Sink:MaD:272 | +| LogInjectionTest.java:1194:45:1194:67 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1194:45:1194:67 | new Object[] | provenance | Sink:MaD:272 | +| LogInjectionTest.java:1194:59:1194:66 | source(...) : Object | LogInjectionTest.java:1194:45:1194:67 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1195:42:1195:49 | source(...) : Object | LogInjectionTest.java:1195:33:1195:49 | (...)... | provenance | Src:MaD:536 Sink:MaD:273 | +| LogInjectionTest.java:1196:39:1196:61 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1196:39:1196:61 | new Object[] | provenance | Sink:MaD:273 | +| LogInjectionTest.java:1196:53:1196:60 | source(...) : Object | LogInjectionTest.java:1196:39:1196:61 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1197:41:1197:48 | source(...) : Object | LogInjectionTest.java:1197:31:1197:48 | (...)... | provenance | Src:MaD:536 Sink:MaD:313 | +| LogInjectionTest.java:1198:40:1198:47 | source(...) : Object | LogInjectionTest.java:1198:31:1198:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:314 | +| LogInjectionTest.java:1199:46:1199:68 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1199:46:1199:68 | new Object[] | provenance | Sink:MaD:314 | +| LogInjectionTest.java:1199:60:1199:67 | source(...) : Object | LogInjectionTest.java:1199:46:1199:68 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1200:40:1200:47 | source(...) : Object | LogInjectionTest.java:1200:31:1200:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:315 | +| LogInjectionTest.java:1201:46:1201:67 | (...)... : Supplier | LogInjectionTest.java:1201:13:1201:68 | new ..[] { .. } | provenance | Sink:MaD:315 | +| LogInjectionTest.java:1201:60:1201:67 | source(...) : Object | LogInjectionTest.java:1201:46:1201:67 | (...)... : Supplier | provenance | Src:MaD:536 | +| LogInjectionTest.java:1202:31:1202:52 | (...)... : Supplier | LogInjectionTest.java:1202:13:1202:53 | new ..[] { .. } | provenance | Sink:MaD:316 | +| LogInjectionTest.java:1202:45:1202:52 | source(...) : Object | LogInjectionTest.java:1202:31:1202:52 | (...)... : Supplier | provenance | Src:MaD:536 | +| LogInjectionTest.java:1203:45:1203:52 | source(...) : Object | LogInjectionTest.java:1203:30:1203:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:317 | +| LogInjectionTest.java:1204:45:1204:52 | source(...) : Object | LogInjectionTest.java:1204:30:1204:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:318 | +| LogInjectionTest.java:1206:40:1206:47 | source(...) : Object | LogInjectionTest.java:1206:30:1206:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:319 | +| LogInjectionTest.java:1209:39:1209:46 | source(...) : Object | LogInjectionTest.java:1209:30:1209:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:320 | +| LogInjectionTest.java:1214:40:1214:47 | source(...) : Object | LogInjectionTest.java:1214:25:1214:47 | (...)... | provenance | Src:MaD:536 Sink:MaD:62 | +| LogInjectionTest.java:1215:35:1215:42 | source(...) : Object | LogInjectionTest.java:1215:25:1215:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:63 | +| LogInjectionTest.java:1217:34:1217:41 | source(...) : Object | LogInjectionTest.java:1217:25:1217:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:65 | +| LogInjectionTest.java:1218:34:1218:41 | source(...) : Object | LogInjectionTest.java:1218:25:1218:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:75 | +| LogInjectionTest.java:1219:40:1219:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1219:40:1219:62 | new Object[] | provenance | Sink:MaD:75 | +| LogInjectionTest.java:1219:54:1219:61 | source(...) : Object | LogInjectionTest.java:1219:40:1219:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1222:49:1222:56 | source(...) : Object | LogInjectionTest.java:1222:40:1222:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | +| LogInjectionTest.java:1223:34:1223:41 | source(...) : Object | LogInjectionTest.java:1223:25:1223:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | +| LogInjectionTest.java:1224:64:1224:71 | source(...) : Object | LogInjectionTest.java:1224:55:1224:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:67 | +| LogInjectionTest.java:1225:49:1225:56 | source(...) : Object | LogInjectionTest.java:1225:40:1225:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:67 | +| LogInjectionTest.java:1226:34:1226:41 | source(...) : Object | LogInjectionTest.java:1226:25:1226:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:67 | +| LogInjectionTest.java:1227:79:1227:86 | source(...) : Object | LogInjectionTest.java:1227:70:1227:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | +| LogInjectionTest.java:1228:64:1228:71 | source(...) : Object | LogInjectionTest.java:1228:55:1228:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | +| LogInjectionTest.java:1229:49:1229:56 | source(...) : Object | LogInjectionTest.java:1229:40:1229:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | +| LogInjectionTest.java:1230:34:1230:41 | source(...) : Object | LogInjectionTest.java:1230:25:1230:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:68 | +| LogInjectionTest.java:1231:94:1231:101 | source(...) : Object | LogInjectionTest.java:1231:85:1231:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | +| LogInjectionTest.java:1232:79:1232:86 | source(...) : Object | LogInjectionTest.java:1232:70:1232:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | +| LogInjectionTest.java:1233:64:1233:71 | source(...) : Object | LogInjectionTest.java:1233:55:1233:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | +| LogInjectionTest.java:1234:49:1234:56 | source(...) : Object | LogInjectionTest.java:1234:40:1234:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | +| LogInjectionTest.java:1235:34:1235:41 | source(...) : Object | LogInjectionTest.java:1235:25:1235:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:69 | +| LogInjectionTest.java:1236:109:1236:116 | source(...) : Object | LogInjectionTest.java:1236:100:1236:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | +| LogInjectionTest.java:1237:94:1237:101 | source(...) : Object | LogInjectionTest.java:1237:85:1237:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | +| LogInjectionTest.java:1238:79:1238:86 | source(...) : Object | LogInjectionTest.java:1238:70:1238:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | +| LogInjectionTest.java:1239:64:1239:71 | source(...) : Object | LogInjectionTest.java:1239:55:1239:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | +| LogInjectionTest.java:1240:49:1240:56 | source(...) : Object | LogInjectionTest.java:1240:40:1240:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | +| LogInjectionTest.java:1241:34:1241:41 | source(...) : Object | LogInjectionTest.java:1241:25:1241:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:70 | +| LogInjectionTest.java:1242:124:1242:131 | source(...) : Object | LogInjectionTest.java:1242:115:1242:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1243:109:1243:116 | source(...) : Object | LogInjectionTest.java:1243:100:1243:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1244:94:1244:101 | source(...) : Object | LogInjectionTest.java:1244:85:1244:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1245:79:1245:86 | source(...) : Object | LogInjectionTest.java:1245:70:1245:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1246:64:1246:71 | source(...) : Object | LogInjectionTest.java:1246:55:1246:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1247:49:1247:56 | source(...) : Object | LogInjectionTest.java:1247:40:1247:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1248:34:1248:41 | source(...) : Object | LogInjectionTest.java:1248:25:1248:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:71 | +| LogInjectionTest.java:1249:139:1249:146 | source(...) : Object | LogInjectionTest.java:1249:130:1249:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1250:124:1250:131 | source(...) : Object | LogInjectionTest.java:1250:115:1250:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1251:109:1251:116 | source(...) : Object | LogInjectionTest.java:1251:100:1251:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1252:94:1252:101 | source(...) : Object | LogInjectionTest.java:1252:85:1252:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1253:79:1253:86 | source(...) : Object | LogInjectionTest.java:1253:70:1253:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1254:64:1254:71 | source(...) : Object | LogInjectionTest.java:1254:55:1254:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1255:49:1255:56 | source(...) : Object | LogInjectionTest.java:1255:40:1255:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1256:34:1256:41 | source(...) : Object | LogInjectionTest.java:1256:25:1256:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:72 | +| LogInjectionTest.java:1257:154:1257:161 | source(...) : Object | LogInjectionTest.java:1257:145:1257:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1258:139:1258:146 | source(...) : Object | LogInjectionTest.java:1258:130:1258:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1259:124:1259:131 | source(...) : Object | LogInjectionTest.java:1259:115:1259:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1260:109:1260:116 | source(...) : Object | LogInjectionTest.java:1260:100:1260:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1261:94:1261:101 | source(...) : Object | LogInjectionTest.java:1261:85:1261:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1262:79:1262:86 | source(...) : Object | LogInjectionTest.java:1262:70:1262:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1263:64:1263:71 | source(...) : Object | LogInjectionTest.java:1263:55:1263:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1264:49:1264:56 | source(...) : Object | LogInjectionTest.java:1264:40:1264:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1265:34:1265:41 | source(...) : Object | LogInjectionTest.java:1265:25:1265:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:73 | +| LogInjectionTest.java:1266:169:1266:176 | source(...) : Object | LogInjectionTest.java:1266:160:1266:176 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1267:154:1267:161 | source(...) : Object | LogInjectionTest.java:1267:145:1267:161 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1268:139:1268:146 | source(...) : Object | LogInjectionTest.java:1268:130:1268:146 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1269:124:1269:131 | source(...) : Object | LogInjectionTest.java:1269:115:1269:131 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1270:109:1270:116 | source(...) : Object | LogInjectionTest.java:1270:100:1270:116 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1271:94:1271:101 | source(...) : Object | LogInjectionTest.java:1271:85:1271:101 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1272:79:1272:86 | source(...) : Object | LogInjectionTest.java:1272:70:1272:86 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1273:64:1273:71 | source(...) : Object | LogInjectionTest.java:1273:55:1273:71 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1274:49:1274:56 | source(...) : Object | LogInjectionTest.java:1274:40:1274:56 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1275:34:1275:41 | source(...) : Object | LogInjectionTest.java:1275:25:1275:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:74 | +| LogInjectionTest.java:1277:34:1277:41 | source(...) : Object | LogInjectionTest.java:1277:25:1277:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | +| LogInjectionTest.java:1278:54:1278:61 | source(...) : Object | LogInjectionTest.java:1278:40:1278:61 | (...)... | provenance | Src:MaD:536 Sink:MaD:66 | +| LogInjectionTest.java:1279:39:1279:46 | source(...) : Object | LogInjectionTest.java:1279:25:1279:46 | (...)... | provenance | Src:MaD:536 Sink:MaD:64 | +| LogInjectionTest.java:1299:57:1299:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1299:57:1299:79 | new Object[] | provenance | Sink:MaD:360 | +| LogInjectionTest.java:1299:71:1299:78 | source(...) : Object | LogInjectionTest.java:1299:57:1299:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1307:57:1307:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1307:57:1307:79 | new Object[] | provenance | Sink:MaD:369 | +| LogInjectionTest.java:1307:71:1307:78 | source(...) : Object | LogInjectionTest.java:1307:57:1307:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1315:57:1315:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1315:57:1315:79 | new Object[] | provenance | Sink:MaD:378 | +| LogInjectionTest.java:1315:71:1315:78 | source(...) : Object | LogInjectionTest.java:1315:57:1315:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1323:56:1323:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1323:56:1323:78 | new Object[] | provenance | Sink:MaD:387 | +| LogInjectionTest.java:1323:70:1323:77 | source(...) : Object | LogInjectionTest.java:1323:56:1323:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1331:57:1331:79 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1331:57:1331:79 | new Object[] | provenance | Sink:MaD:405 | +| LogInjectionTest.java:1331:71:1331:78 | source(...) : Object | LogInjectionTest.java:1331:57:1331:79 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1339:56:1339:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1339:56:1339:78 | new Object[] | provenance | Sink:MaD:414 | +| LogInjectionTest.java:1339:70:1339:77 | source(...) : Object | LogInjectionTest.java:1339:56:1339:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1348:94:1348:116 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1348:94:1348:116 | new Object[] | provenance | Sink:MaD:396 | +| LogInjectionTest.java:1348:108:1348:115 | source(...) : Object | LogInjectionTest.java:1348:94:1348:116 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1349:52:1349:59 | source(...) : Object | LogInjectionTest.java:1349:43:1349:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | +| LogInjectionTest.java:1350:37:1350:44 | source(...) : Object | LogInjectionTest.java:1350:28:1350:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | +| LogInjectionTest.java:1351:52:1351:59 | source(...) : Object | LogInjectionTest.java:1351:43:1351:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | +| LogInjectionTest.java:1352:37:1352:44 | source(...) : Object | LogInjectionTest.java:1352:28:1352:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | +| LogInjectionTest.java:1353:37:1353:44 | source(...) : Object | LogInjectionTest.java:1353:28:1353:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:364 | +| LogInjectionTest.java:1354:37:1354:44 | source(...) : Object | LogInjectionTest.java:1354:28:1354:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:368 | +| LogInjectionTest.java:1355:43:1355:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1355:43:1355:65 | new Object[] | provenance | Sink:MaD:364 | +| LogInjectionTest.java:1355:57:1355:64 | source(...) : Object | LogInjectionTest.java:1355:43:1355:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1356:43:1356:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1356:43:1356:65 | new Object[] | provenance | Sink:MaD:368 | +| LogInjectionTest.java:1356:57:1356:64 | source(...) : Object | LogInjectionTest.java:1356:43:1356:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1357:67:1357:74 | source(...) : Object | LogInjectionTest.java:1357:58:1357:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | +| LogInjectionTest.java:1358:52:1358:59 | source(...) : Object | LogInjectionTest.java:1358:43:1358:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | +| LogInjectionTest.java:1359:37:1359:44 | source(...) : Object | LogInjectionTest.java:1359:28:1359:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | +| LogInjectionTest.java:1360:67:1360:74 | source(...) : Object | LogInjectionTest.java:1360:58:1360:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | +| LogInjectionTest.java:1361:52:1361:59 | source(...) : Object | LogInjectionTest.java:1361:43:1361:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | +| LogInjectionTest.java:1362:37:1362:44 | source(...) : Object | LogInjectionTest.java:1362:28:1362:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | +| LogInjectionTest.java:1363:82:1363:89 | source(...) : Object | LogInjectionTest.java:1363:73:1363:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1364:67:1364:74 | source(...) : Object | LogInjectionTest.java:1364:58:1364:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1365:52:1365:59 | source(...) : Object | LogInjectionTest.java:1365:43:1365:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1366:37:1366:44 | source(...) : Object | LogInjectionTest.java:1366:28:1366:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1367:82:1367:89 | source(...) : Object | LogInjectionTest.java:1367:73:1367:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1368:67:1368:74 | source(...) : Object | LogInjectionTest.java:1368:58:1368:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1369:52:1369:59 | source(...) : Object | LogInjectionTest.java:1369:43:1369:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1370:37:1370:44 | source(...) : Object | LogInjectionTest.java:1370:28:1370:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1371:52:1371:59 | source(...) : Object | LogInjectionTest.java:1371:43:1371:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | +| LogInjectionTest.java:1372:37:1372:44 | source(...) : Object | LogInjectionTest.java:1372:28:1372:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | +| LogInjectionTest.java:1373:52:1373:59 | source(...) : Object | LogInjectionTest.java:1373:43:1373:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | +| LogInjectionTest.java:1374:37:1374:44 | source(...) : Object | LogInjectionTest.java:1374:28:1374:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | +| LogInjectionTest.java:1375:37:1375:44 | source(...) : Object | LogInjectionTest.java:1375:28:1375:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:373 | +| LogInjectionTest.java:1376:37:1376:44 | source(...) : Object | LogInjectionTest.java:1376:28:1376:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:377 | +| LogInjectionTest.java:1377:43:1377:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1377:43:1377:65 | new Object[] | provenance | Sink:MaD:373 | +| LogInjectionTest.java:1377:57:1377:64 | source(...) : Object | LogInjectionTest.java:1377:43:1377:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1378:43:1378:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1378:43:1378:65 | new Object[] | provenance | Sink:MaD:377 | +| LogInjectionTest.java:1378:57:1378:64 | source(...) : Object | LogInjectionTest.java:1378:43:1378:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1379:67:1379:74 | source(...) : Object | LogInjectionTest.java:1379:58:1379:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | +| LogInjectionTest.java:1380:52:1380:59 | source(...) : Object | LogInjectionTest.java:1380:43:1380:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | +| LogInjectionTest.java:1381:37:1381:44 | source(...) : Object | LogInjectionTest.java:1381:28:1381:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | +| LogInjectionTest.java:1382:67:1382:74 | source(...) : Object | LogInjectionTest.java:1382:58:1382:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | +| LogInjectionTest.java:1383:52:1383:59 | source(...) : Object | LogInjectionTest.java:1383:43:1383:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | +| LogInjectionTest.java:1384:37:1384:44 | source(...) : Object | LogInjectionTest.java:1384:28:1384:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | +| LogInjectionTest.java:1385:82:1385:89 | source(...) : Object | LogInjectionTest.java:1385:73:1385:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1386:67:1386:74 | source(...) : Object | LogInjectionTest.java:1386:58:1386:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1387:52:1387:59 | source(...) : Object | LogInjectionTest.java:1387:43:1387:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1388:37:1388:44 | source(...) : Object | LogInjectionTest.java:1388:28:1388:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1389:82:1389:89 | source(...) : Object | LogInjectionTest.java:1389:73:1389:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1390:67:1390:74 | source(...) : Object | LogInjectionTest.java:1390:58:1390:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1391:52:1391:59 | source(...) : Object | LogInjectionTest.java:1391:43:1391:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1392:37:1392:44 | source(...) : Object | LogInjectionTest.java:1392:28:1392:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1393:52:1393:59 | source(...) : Object | LogInjectionTest.java:1393:43:1393:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | +| LogInjectionTest.java:1394:37:1394:44 | source(...) : Object | LogInjectionTest.java:1394:28:1394:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | +| LogInjectionTest.java:1395:52:1395:59 | source(...) : Object | LogInjectionTest.java:1395:43:1395:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | +| LogInjectionTest.java:1396:37:1396:44 | source(...) : Object | LogInjectionTest.java:1396:28:1396:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | +| LogInjectionTest.java:1397:37:1397:44 | source(...) : Object | LogInjectionTest.java:1397:28:1397:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:382 | +| LogInjectionTest.java:1398:37:1398:44 | source(...) : Object | LogInjectionTest.java:1398:28:1398:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:386 | +| LogInjectionTest.java:1399:43:1399:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1399:43:1399:65 | new Object[] | provenance | Sink:MaD:382 | +| LogInjectionTest.java:1399:57:1399:64 | source(...) : Object | LogInjectionTest.java:1399:43:1399:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1400:43:1400:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1400:43:1400:65 | new Object[] | provenance | Sink:MaD:386 | +| LogInjectionTest.java:1400:57:1400:64 | source(...) : Object | LogInjectionTest.java:1400:43:1400:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1401:67:1401:74 | source(...) : Object | LogInjectionTest.java:1401:58:1401:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | +| LogInjectionTest.java:1402:52:1402:59 | source(...) : Object | LogInjectionTest.java:1402:43:1402:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | +| LogInjectionTest.java:1403:37:1403:44 | source(...) : Object | LogInjectionTest.java:1403:28:1403:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | +| LogInjectionTest.java:1404:67:1404:74 | source(...) : Object | LogInjectionTest.java:1404:58:1404:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | +| LogInjectionTest.java:1405:52:1405:59 | source(...) : Object | LogInjectionTest.java:1405:43:1405:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | +| LogInjectionTest.java:1406:37:1406:44 | source(...) : Object | LogInjectionTest.java:1406:28:1406:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | +| LogInjectionTest.java:1407:82:1407:89 | source(...) : Object | LogInjectionTest.java:1407:73:1407:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1408:67:1408:74 | source(...) : Object | LogInjectionTest.java:1408:58:1408:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1409:52:1409:59 | source(...) : Object | LogInjectionTest.java:1409:43:1409:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1410:37:1410:44 | source(...) : Object | LogInjectionTest.java:1410:28:1410:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1411:82:1411:89 | source(...) : Object | LogInjectionTest.java:1411:73:1411:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1412:67:1412:74 | source(...) : Object | LogInjectionTest.java:1412:58:1412:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1413:52:1413:59 | source(...) : Object | LogInjectionTest.java:1413:43:1413:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1414:37:1414:44 | source(...) : Object | LogInjectionTest.java:1414:28:1414:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1415:51:1415:58 | source(...) : Object | LogInjectionTest.java:1415:42:1415:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | +| LogInjectionTest.java:1416:36:1416:43 | source(...) : Object | LogInjectionTest.java:1416:27:1416:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | +| LogInjectionTest.java:1417:51:1417:58 | source(...) : Object | LogInjectionTest.java:1417:42:1417:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | +| LogInjectionTest.java:1418:36:1418:43 | source(...) : Object | LogInjectionTest.java:1418:27:1418:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | +| LogInjectionTest.java:1419:36:1419:43 | source(...) : Object | LogInjectionTest.java:1419:27:1419:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:391 | +| LogInjectionTest.java:1420:36:1420:43 | source(...) : Object | LogInjectionTest.java:1420:27:1420:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:395 | +| LogInjectionTest.java:1421:42:1421:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1421:42:1421:64 | new Object[] | provenance | Sink:MaD:391 | +| LogInjectionTest.java:1421:56:1421:63 | source(...) : Object | LogInjectionTest.java:1421:42:1421:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1422:42:1422:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1422:42:1422:64 | new Object[] | provenance | Sink:MaD:395 | +| LogInjectionTest.java:1422:56:1422:63 | source(...) : Object | LogInjectionTest.java:1422:42:1422:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1423:66:1423:73 | source(...) : Object | LogInjectionTest.java:1423:57:1423:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | +| LogInjectionTest.java:1424:51:1424:58 | source(...) : Object | LogInjectionTest.java:1424:42:1424:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | +| LogInjectionTest.java:1425:36:1425:43 | source(...) : Object | LogInjectionTest.java:1425:27:1425:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | +| LogInjectionTest.java:1426:66:1426:73 | source(...) : Object | LogInjectionTest.java:1426:57:1426:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | +| LogInjectionTest.java:1427:51:1427:58 | source(...) : Object | LogInjectionTest.java:1427:42:1427:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | +| LogInjectionTest.java:1428:36:1428:43 | source(...) : Object | LogInjectionTest.java:1428:27:1428:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | +| LogInjectionTest.java:1429:81:1429:88 | source(...) : Object | LogInjectionTest.java:1429:72:1429:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1430:66:1430:73 | source(...) : Object | LogInjectionTest.java:1430:57:1430:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1431:51:1431:58 | source(...) : Object | LogInjectionTest.java:1431:42:1431:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1432:36:1432:43 | source(...) : Object | LogInjectionTest.java:1432:27:1432:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1433:81:1433:88 | source(...) : Object | LogInjectionTest.java:1433:72:1433:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1434:66:1434:73 | source(...) : Object | LogInjectionTest.java:1434:57:1434:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1435:51:1435:58 | source(...) : Object | LogInjectionTest.java:1435:42:1435:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1436:36:1436:43 | source(...) : Object | LogInjectionTest.java:1436:27:1436:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1437:89:1437:96 | source(...) : Object | LogInjectionTest.java:1437:80:1437:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | +| LogInjectionTest.java:1438:74:1438:81 | source(...) : Object | LogInjectionTest.java:1438:65:1438:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | +| LogInjectionTest.java:1439:89:1439:96 | source(...) : Object | LogInjectionTest.java:1439:80:1439:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | +| LogInjectionTest.java:1440:74:1440:81 | source(...) : Object | LogInjectionTest.java:1440:65:1440:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | +| LogInjectionTest.java:1441:74:1441:81 | source(...) : Object | LogInjectionTest.java:1441:65:1441:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:400 | +| LogInjectionTest.java:1442:74:1442:81 | source(...) : Object | LogInjectionTest.java:1442:65:1442:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:404 | +| LogInjectionTest.java:1443:80:1443:102 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1443:80:1443:102 | new Object[] | provenance | Sink:MaD:400 | +| LogInjectionTest.java:1443:94:1443:101 | source(...) : Object | LogInjectionTest.java:1443:80:1443:102 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1444:80:1444:102 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1444:80:1444:102 | new Object[] | provenance | Sink:MaD:404 | +| LogInjectionTest.java:1444:94:1444:101 | source(...) : Object | LogInjectionTest.java:1444:80:1444:102 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1445:104:1445:111 | source(...) : Object | LogInjectionTest.java:1445:95:1445:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | +| LogInjectionTest.java:1446:89:1446:96 | source(...) : Object | LogInjectionTest.java:1446:80:1446:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | +| LogInjectionTest.java:1447:74:1447:81 | source(...) : Object | LogInjectionTest.java:1447:65:1447:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | +| LogInjectionTest.java:1448:104:1448:111 | source(...) : Object | LogInjectionTest.java:1448:95:1448:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | +| LogInjectionTest.java:1449:89:1449:96 | source(...) : Object | LogInjectionTest.java:1449:80:1449:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | +| LogInjectionTest.java:1450:74:1450:81 | source(...) : Object | LogInjectionTest.java:1450:65:1450:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | +| LogInjectionTest.java:1451:119:1451:126 | source(...) : Object | LogInjectionTest.java:1451:110:1451:126 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1452:104:1452:111 | source(...) : Object | LogInjectionTest.java:1452:95:1452:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1453:89:1453:96 | source(...) : Object | LogInjectionTest.java:1453:80:1453:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1454:74:1454:81 | source(...) : Object | LogInjectionTest.java:1454:65:1454:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1455:119:1455:126 | source(...) : Object | LogInjectionTest.java:1455:110:1455:126 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1456:104:1456:111 | source(...) : Object | LogInjectionTest.java:1456:95:1456:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1457:89:1457:96 | source(...) : Object | LogInjectionTest.java:1457:80:1457:96 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1458:74:1458:81 | source(...) : Object | LogInjectionTest.java:1458:65:1458:81 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1459:52:1459:59 | source(...) : Object | LogInjectionTest.java:1459:43:1459:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | +| LogInjectionTest.java:1460:37:1460:44 | source(...) : Object | LogInjectionTest.java:1460:28:1460:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | +| LogInjectionTest.java:1461:52:1461:59 | source(...) : Object | LogInjectionTest.java:1461:43:1461:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | +| LogInjectionTest.java:1462:37:1462:44 | source(...) : Object | LogInjectionTest.java:1462:28:1462:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | +| LogInjectionTest.java:1463:37:1463:44 | source(...) : Object | LogInjectionTest.java:1463:28:1463:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:409 | +| LogInjectionTest.java:1464:37:1464:44 | source(...) : Object | LogInjectionTest.java:1464:28:1464:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:413 | +| LogInjectionTest.java:1465:43:1465:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1465:43:1465:65 | new Object[] | provenance | Sink:MaD:409 | +| LogInjectionTest.java:1465:57:1465:64 | source(...) : Object | LogInjectionTest.java:1465:43:1465:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1466:43:1466:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1466:43:1466:65 | new Object[] | provenance | Sink:MaD:413 | +| LogInjectionTest.java:1466:57:1466:64 | source(...) : Object | LogInjectionTest.java:1466:43:1466:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1467:67:1467:74 | source(...) : Object | LogInjectionTest.java:1467:58:1467:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | +| LogInjectionTest.java:1468:52:1468:59 | source(...) : Object | LogInjectionTest.java:1468:43:1468:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | +| LogInjectionTest.java:1469:37:1469:44 | source(...) : Object | LogInjectionTest.java:1469:28:1469:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | +| LogInjectionTest.java:1470:67:1470:74 | source(...) : Object | LogInjectionTest.java:1470:58:1470:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | +| LogInjectionTest.java:1471:52:1471:59 | source(...) : Object | LogInjectionTest.java:1471:43:1471:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | +| LogInjectionTest.java:1472:37:1472:44 | source(...) : Object | LogInjectionTest.java:1472:28:1472:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | +| LogInjectionTest.java:1473:82:1473:89 | source(...) : Object | LogInjectionTest.java:1473:73:1473:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1474:67:1474:74 | source(...) : Object | LogInjectionTest.java:1474:58:1474:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1475:52:1475:59 | source(...) : Object | LogInjectionTest.java:1475:43:1475:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1476:37:1476:44 | source(...) : Object | LogInjectionTest.java:1476:28:1476:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1477:82:1477:89 | source(...) : Object | LogInjectionTest.java:1477:73:1477:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1478:67:1478:74 | source(...) : Object | LogInjectionTest.java:1478:58:1478:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1479:52:1479:59 | source(...) : Object | LogInjectionTest.java:1479:43:1479:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1480:37:1480:44 | source(...) : Object | LogInjectionTest.java:1480:28:1480:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1481:51:1481:58 | source(...) : Object | LogInjectionTest.java:1481:42:1481:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | +| LogInjectionTest.java:1482:36:1482:43 | source(...) : Object | LogInjectionTest.java:1482:27:1482:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | +| LogInjectionTest.java:1483:51:1483:58 | source(...) : Object | LogInjectionTest.java:1483:42:1483:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | +| LogInjectionTest.java:1484:36:1484:43 | source(...) : Object | LogInjectionTest.java:1484:27:1484:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | +| LogInjectionTest.java:1485:36:1485:43 | source(...) : Object | LogInjectionTest.java:1485:27:1485:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:418 | +| LogInjectionTest.java:1486:36:1486:43 | source(...) : Object | LogInjectionTest.java:1486:27:1486:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:422 | +| LogInjectionTest.java:1487:42:1487:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1487:42:1487:64 | new Object[] | provenance | Sink:MaD:418 | +| LogInjectionTest.java:1487:56:1487:63 | source(...) : Object | LogInjectionTest.java:1487:42:1487:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1488:42:1488:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1488:42:1488:64 | new Object[] | provenance | Sink:MaD:422 | +| LogInjectionTest.java:1488:56:1488:63 | source(...) : Object | LogInjectionTest.java:1488:42:1488:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1489:66:1489:73 | source(...) : Object | LogInjectionTest.java:1489:57:1489:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | +| LogInjectionTest.java:1490:51:1490:58 | source(...) : Object | LogInjectionTest.java:1490:42:1490:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | +| LogInjectionTest.java:1491:36:1491:43 | source(...) : Object | LogInjectionTest.java:1491:27:1491:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | +| LogInjectionTest.java:1492:66:1492:73 | source(...) : Object | LogInjectionTest.java:1492:57:1492:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | +| LogInjectionTest.java:1493:51:1493:58 | source(...) : Object | LogInjectionTest.java:1493:42:1493:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | +| LogInjectionTest.java:1494:36:1494:43 | source(...) : Object | LogInjectionTest.java:1494:27:1494:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | +| LogInjectionTest.java:1495:81:1495:88 | source(...) : Object | LogInjectionTest.java:1495:72:1495:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1496:66:1496:73 | source(...) : Object | LogInjectionTest.java:1496:57:1496:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1497:51:1497:58 | source(...) : Object | LogInjectionTest.java:1497:42:1497:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1498:36:1498:43 | source(...) : Object | LogInjectionTest.java:1498:27:1498:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1499:81:1499:88 | source(...) : Object | LogInjectionTest.java:1499:72:1499:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1500:66:1500:73 | source(...) : Object | LogInjectionTest.java:1500:57:1500:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1501:51:1501:58 | source(...) : Object | LogInjectionTest.java:1501:42:1501:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1502:36:1502:43 | source(...) : Object | LogInjectionTest.java:1502:27:1502:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1514:56:1514:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1514:56:1514:78 | new Object[] | provenance | Sink:MaD:360 | +| LogInjectionTest.java:1514:56:1514:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1514:56:1514:78 | new Object[] | provenance | Sink:MaD:423 | +| LogInjectionTest.java:1514:70:1514:77 | source(...) : Object | LogInjectionTest.java:1514:56:1514:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1522:56:1522:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1522:56:1522:78 | new Object[] | provenance | Sink:MaD:369 | +| LogInjectionTest.java:1522:56:1522:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1522:56:1522:78 | new Object[] | provenance | Sink:MaD:432 | +| LogInjectionTest.java:1522:70:1522:77 | source(...) : Object | LogInjectionTest.java:1522:56:1522:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1530:56:1530:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1530:56:1530:78 | new Object[] | provenance | Sink:MaD:378 | +| LogInjectionTest.java:1530:56:1530:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1530:56:1530:78 | new Object[] | provenance | Sink:MaD:441 | +| LogInjectionTest.java:1530:70:1530:77 | source(...) : Object | LogInjectionTest.java:1530:56:1530:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1538:55:1538:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1538:55:1538:77 | new Object[] | provenance | Sink:MaD:387 | +| LogInjectionTest.java:1538:55:1538:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1538:55:1538:77 | new Object[] | provenance | Sink:MaD:450 | +| LogInjectionTest.java:1538:69:1538:76 | source(...) : Object | LogInjectionTest.java:1538:55:1538:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1546:56:1546:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1546:56:1546:78 | new Object[] | provenance | Sink:MaD:405 | +| LogInjectionTest.java:1546:56:1546:78 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1546:56:1546:78 | new Object[] | provenance | Sink:MaD:468 | +| LogInjectionTest.java:1546:70:1546:77 | source(...) : Object | LogInjectionTest.java:1546:56:1546:78 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1554:55:1554:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1554:55:1554:77 | new Object[] | provenance | Sink:MaD:414 | +| LogInjectionTest.java:1554:55:1554:77 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1554:55:1554:77 | new Object[] | provenance | Sink:MaD:477 | +| LogInjectionTest.java:1554:69:1554:76 | source(...) : Object | LogInjectionTest.java:1554:55:1554:77 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1563:93:1563:115 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1563:93:1563:115 | new Object[] | provenance | Sink:MaD:396 | +| LogInjectionTest.java:1563:93:1563:115 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1563:93:1563:115 | new Object[] | provenance | Sink:MaD:459 | +| LogInjectionTest.java:1563:107:1563:114 | source(...) : Object | LogInjectionTest.java:1563:93:1563:115 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1564:51:1564:58 | source(...) : Object | LogInjectionTest.java:1564:42:1564:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | +| LogInjectionTest.java:1564:51:1564:58 | source(...) : Object | LogInjectionTest.java:1564:42:1564:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:424 | +| LogInjectionTest.java:1565:36:1565:43 | source(...) : Object | LogInjectionTest.java:1565:27:1565:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:361 | +| LogInjectionTest.java:1565:36:1565:43 | source(...) : Object | LogInjectionTest.java:1565:27:1565:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:424 | +| LogInjectionTest.java:1566:51:1566:58 | source(...) : Object | LogInjectionTest.java:1566:42:1566:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | +| LogInjectionTest.java:1566:51:1566:58 | source(...) : Object | LogInjectionTest.java:1566:42:1566:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:428 | +| LogInjectionTest.java:1567:36:1567:43 | source(...) : Object | LogInjectionTest.java:1567:27:1567:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:365 | +| LogInjectionTest.java:1567:36:1567:43 | source(...) : Object | LogInjectionTest.java:1567:27:1567:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:428 | +| LogInjectionTest.java:1568:36:1568:43 | source(...) : Object | LogInjectionTest.java:1568:27:1568:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:364 | +| LogInjectionTest.java:1568:36:1568:43 | source(...) : Object | LogInjectionTest.java:1568:27:1568:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:427 | +| LogInjectionTest.java:1569:36:1569:43 | source(...) : Object | LogInjectionTest.java:1569:27:1569:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:368 | +| LogInjectionTest.java:1569:36:1569:43 | source(...) : Object | LogInjectionTest.java:1569:27:1569:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:431 | +| LogInjectionTest.java:1570:42:1570:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1570:42:1570:64 | new Object[] | provenance | Sink:MaD:364 | +| LogInjectionTest.java:1570:42:1570:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1570:42:1570:64 | new Object[] | provenance | Sink:MaD:427 | +| LogInjectionTest.java:1570:56:1570:63 | source(...) : Object | LogInjectionTest.java:1570:42:1570:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1571:42:1571:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1571:42:1571:64 | new Object[] | provenance | Sink:MaD:368 | +| LogInjectionTest.java:1571:42:1571:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1571:42:1571:64 | new Object[] | provenance | Sink:MaD:431 | +| LogInjectionTest.java:1571:56:1571:63 | source(...) : Object | LogInjectionTest.java:1571:42:1571:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1572:66:1572:73 | source(...) : Object | LogInjectionTest.java:1572:57:1572:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | +| LogInjectionTest.java:1572:66:1572:73 | source(...) : Object | LogInjectionTest.java:1572:57:1572:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:425 | +| LogInjectionTest.java:1573:51:1573:58 | source(...) : Object | LogInjectionTest.java:1573:42:1573:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | +| LogInjectionTest.java:1573:51:1573:58 | source(...) : Object | LogInjectionTest.java:1573:42:1573:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:425 | +| LogInjectionTest.java:1574:36:1574:43 | source(...) : Object | LogInjectionTest.java:1574:27:1574:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:362 | +| LogInjectionTest.java:1574:36:1574:43 | source(...) : Object | LogInjectionTest.java:1574:27:1574:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:425 | +| LogInjectionTest.java:1575:66:1575:73 | source(...) : Object | LogInjectionTest.java:1575:57:1575:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | +| LogInjectionTest.java:1575:66:1575:73 | source(...) : Object | LogInjectionTest.java:1575:57:1575:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:429 | +| LogInjectionTest.java:1576:51:1576:58 | source(...) : Object | LogInjectionTest.java:1576:42:1576:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | +| LogInjectionTest.java:1576:51:1576:58 | source(...) : Object | LogInjectionTest.java:1576:42:1576:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:429 | +| LogInjectionTest.java:1577:36:1577:43 | source(...) : Object | LogInjectionTest.java:1577:27:1577:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:366 | +| LogInjectionTest.java:1577:36:1577:43 | source(...) : Object | LogInjectionTest.java:1577:27:1577:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:429 | +| LogInjectionTest.java:1578:81:1578:88 | source(...) : Object | LogInjectionTest.java:1578:72:1578:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1578:81:1578:88 | source(...) : Object | LogInjectionTest.java:1578:72:1578:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | +| LogInjectionTest.java:1579:66:1579:73 | source(...) : Object | LogInjectionTest.java:1579:57:1579:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1579:66:1579:73 | source(...) : Object | LogInjectionTest.java:1579:57:1579:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | +| LogInjectionTest.java:1580:51:1580:58 | source(...) : Object | LogInjectionTest.java:1580:42:1580:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1580:51:1580:58 | source(...) : Object | LogInjectionTest.java:1580:42:1580:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | +| LogInjectionTest.java:1581:36:1581:43 | source(...) : Object | LogInjectionTest.java:1581:27:1581:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:363 | +| LogInjectionTest.java:1581:36:1581:43 | source(...) : Object | LogInjectionTest.java:1581:27:1581:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:426 | +| LogInjectionTest.java:1582:81:1582:88 | source(...) : Object | LogInjectionTest.java:1582:72:1582:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1582:81:1582:88 | source(...) : Object | LogInjectionTest.java:1582:72:1582:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | +| LogInjectionTest.java:1583:66:1583:73 | source(...) : Object | LogInjectionTest.java:1583:57:1583:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1583:66:1583:73 | source(...) : Object | LogInjectionTest.java:1583:57:1583:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | +| LogInjectionTest.java:1584:51:1584:58 | source(...) : Object | LogInjectionTest.java:1584:42:1584:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1584:51:1584:58 | source(...) : Object | LogInjectionTest.java:1584:42:1584:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | +| LogInjectionTest.java:1585:36:1585:43 | source(...) : Object | LogInjectionTest.java:1585:27:1585:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:367 | +| LogInjectionTest.java:1585:36:1585:43 | source(...) : Object | LogInjectionTest.java:1585:27:1585:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:430 | +| LogInjectionTest.java:1586:51:1586:58 | source(...) : Object | LogInjectionTest.java:1586:42:1586:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | +| LogInjectionTest.java:1586:51:1586:58 | source(...) : Object | LogInjectionTest.java:1586:42:1586:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:433 | +| LogInjectionTest.java:1587:36:1587:43 | source(...) : Object | LogInjectionTest.java:1587:27:1587:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:370 | +| LogInjectionTest.java:1587:36:1587:43 | source(...) : Object | LogInjectionTest.java:1587:27:1587:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:433 | +| LogInjectionTest.java:1588:51:1588:58 | source(...) : Object | LogInjectionTest.java:1588:42:1588:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | +| LogInjectionTest.java:1588:51:1588:58 | source(...) : Object | LogInjectionTest.java:1588:42:1588:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:437 | +| LogInjectionTest.java:1589:36:1589:43 | source(...) : Object | LogInjectionTest.java:1589:27:1589:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:374 | +| LogInjectionTest.java:1589:36:1589:43 | source(...) : Object | LogInjectionTest.java:1589:27:1589:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:437 | +| LogInjectionTest.java:1590:36:1590:43 | source(...) : Object | LogInjectionTest.java:1590:27:1590:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:373 | +| LogInjectionTest.java:1590:36:1590:43 | source(...) : Object | LogInjectionTest.java:1590:27:1590:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:436 | +| LogInjectionTest.java:1591:36:1591:43 | source(...) : Object | LogInjectionTest.java:1591:27:1591:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:377 | +| LogInjectionTest.java:1591:36:1591:43 | source(...) : Object | LogInjectionTest.java:1591:27:1591:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:440 | +| LogInjectionTest.java:1592:42:1592:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1592:42:1592:64 | new Object[] | provenance | Sink:MaD:373 | +| LogInjectionTest.java:1592:42:1592:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1592:42:1592:64 | new Object[] | provenance | Sink:MaD:436 | +| LogInjectionTest.java:1592:56:1592:63 | source(...) : Object | LogInjectionTest.java:1592:42:1592:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1593:42:1593:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1593:42:1593:64 | new Object[] | provenance | Sink:MaD:377 | +| LogInjectionTest.java:1593:42:1593:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1593:42:1593:64 | new Object[] | provenance | Sink:MaD:440 | +| LogInjectionTest.java:1593:56:1593:63 | source(...) : Object | LogInjectionTest.java:1593:42:1593:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1594:66:1594:73 | source(...) : Object | LogInjectionTest.java:1594:57:1594:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | +| LogInjectionTest.java:1594:66:1594:73 | source(...) : Object | LogInjectionTest.java:1594:57:1594:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:434 | +| LogInjectionTest.java:1595:51:1595:58 | source(...) : Object | LogInjectionTest.java:1595:42:1595:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | +| LogInjectionTest.java:1595:51:1595:58 | source(...) : Object | LogInjectionTest.java:1595:42:1595:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:434 | +| LogInjectionTest.java:1596:36:1596:43 | source(...) : Object | LogInjectionTest.java:1596:27:1596:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:371 | +| LogInjectionTest.java:1596:36:1596:43 | source(...) : Object | LogInjectionTest.java:1596:27:1596:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:434 | +| LogInjectionTest.java:1597:66:1597:73 | source(...) : Object | LogInjectionTest.java:1597:57:1597:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | +| LogInjectionTest.java:1597:66:1597:73 | source(...) : Object | LogInjectionTest.java:1597:57:1597:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:438 | +| LogInjectionTest.java:1598:51:1598:58 | source(...) : Object | LogInjectionTest.java:1598:42:1598:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | +| LogInjectionTest.java:1598:51:1598:58 | source(...) : Object | LogInjectionTest.java:1598:42:1598:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:438 | +| LogInjectionTest.java:1599:36:1599:43 | source(...) : Object | LogInjectionTest.java:1599:27:1599:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:375 | +| LogInjectionTest.java:1599:36:1599:43 | source(...) : Object | LogInjectionTest.java:1599:27:1599:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:438 | +| LogInjectionTest.java:1600:81:1600:88 | source(...) : Object | LogInjectionTest.java:1600:72:1600:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1600:81:1600:88 | source(...) : Object | LogInjectionTest.java:1600:72:1600:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | +| LogInjectionTest.java:1601:66:1601:73 | source(...) : Object | LogInjectionTest.java:1601:57:1601:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1601:66:1601:73 | source(...) : Object | LogInjectionTest.java:1601:57:1601:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | +| LogInjectionTest.java:1602:51:1602:58 | source(...) : Object | LogInjectionTest.java:1602:42:1602:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1602:51:1602:58 | source(...) : Object | LogInjectionTest.java:1602:42:1602:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | +| LogInjectionTest.java:1603:36:1603:43 | source(...) : Object | LogInjectionTest.java:1603:27:1603:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:372 | +| LogInjectionTest.java:1603:36:1603:43 | source(...) : Object | LogInjectionTest.java:1603:27:1603:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:435 | +| LogInjectionTest.java:1604:81:1604:88 | source(...) : Object | LogInjectionTest.java:1604:72:1604:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1604:81:1604:88 | source(...) : Object | LogInjectionTest.java:1604:72:1604:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | +| LogInjectionTest.java:1605:66:1605:73 | source(...) : Object | LogInjectionTest.java:1605:57:1605:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1605:66:1605:73 | source(...) : Object | LogInjectionTest.java:1605:57:1605:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | +| LogInjectionTest.java:1606:51:1606:58 | source(...) : Object | LogInjectionTest.java:1606:42:1606:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1606:51:1606:58 | source(...) : Object | LogInjectionTest.java:1606:42:1606:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | +| LogInjectionTest.java:1607:36:1607:43 | source(...) : Object | LogInjectionTest.java:1607:27:1607:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:376 | +| LogInjectionTest.java:1607:36:1607:43 | source(...) : Object | LogInjectionTest.java:1607:27:1607:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:439 | +| LogInjectionTest.java:1608:51:1608:58 | source(...) : Object | LogInjectionTest.java:1608:42:1608:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | +| LogInjectionTest.java:1608:51:1608:58 | source(...) : Object | LogInjectionTest.java:1608:42:1608:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:442 | +| LogInjectionTest.java:1609:36:1609:43 | source(...) : Object | LogInjectionTest.java:1609:27:1609:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:379 | +| LogInjectionTest.java:1609:36:1609:43 | source(...) : Object | LogInjectionTest.java:1609:27:1609:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:442 | +| LogInjectionTest.java:1610:51:1610:58 | source(...) : Object | LogInjectionTest.java:1610:42:1610:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | +| LogInjectionTest.java:1610:51:1610:58 | source(...) : Object | LogInjectionTest.java:1610:42:1610:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:446 | +| LogInjectionTest.java:1611:36:1611:43 | source(...) : Object | LogInjectionTest.java:1611:27:1611:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:383 | +| LogInjectionTest.java:1611:36:1611:43 | source(...) : Object | LogInjectionTest.java:1611:27:1611:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:446 | +| LogInjectionTest.java:1612:36:1612:43 | source(...) : Object | LogInjectionTest.java:1612:27:1612:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:382 | +| LogInjectionTest.java:1612:36:1612:43 | source(...) : Object | LogInjectionTest.java:1612:27:1612:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:445 | +| LogInjectionTest.java:1613:36:1613:43 | source(...) : Object | LogInjectionTest.java:1613:27:1613:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:386 | +| LogInjectionTest.java:1613:36:1613:43 | source(...) : Object | LogInjectionTest.java:1613:27:1613:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:449 | +| LogInjectionTest.java:1614:42:1614:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1614:42:1614:64 | new Object[] | provenance | Sink:MaD:382 | +| LogInjectionTest.java:1614:42:1614:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1614:42:1614:64 | new Object[] | provenance | Sink:MaD:445 | +| LogInjectionTest.java:1614:56:1614:63 | source(...) : Object | LogInjectionTest.java:1614:42:1614:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1615:42:1615:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1615:42:1615:64 | new Object[] | provenance | Sink:MaD:386 | +| LogInjectionTest.java:1615:42:1615:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1615:42:1615:64 | new Object[] | provenance | Sink:MaD:449 | +| LogInjectionTest.java:1615:56:1615:63 | source(...) : Object | LogInjectionTest.java:1615:42:1615:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1616:66:1616:73 | source(...) : Object | LogInjectionTest.java:1616:57:1616:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | +| LogInjectionTest.java:1616:66:1616:73 | source(...) : Object | LogInjectionTest.java:1616:57:1616:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:443 | +| LogInjectionTest.java:1617:51:1617:58 | source(...) : Object | LogInjectionTest.java:1617:42:1617:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | +| LogInjectionTest.java:1617:51:1617:58 | source(...) : Object | LogInjectionTest.java:1617:42:1617:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:443 | +| LogInjectionTest.java:1618:36:1618:43 | source(...) : Object | LogInjectionTest.java:1618:27:1618:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:380 | +| LogInjectionTest.java:1618:36:1618:43 | source(...) : Object | LogInjectionTest.java:1618:27:1618:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:443 | +| LogInjectionTest.java:1619:66:1619:73 | source(...) : Object | LogInjectionTest.java:1619:57:1619:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | +| LogInjectionTest.java:1619:66:1619:73 | source(...) : Object | LogInjectionTest.java:1619:57:1619:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:447 | +| LogInjectionTest.java:1620:51:1620:58 | source(...) : Object | LogInjectionTest.java:1620:42:1620:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | +| LogInjectionTest.java:1620:51:1620:58 | source(...) : Object | LogInjectionTest.java:1620:42:1620:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:447 | +| LogInjectionTest.java:1621:36:1621:43 | source(...) : Object | LogInjectionTest.java:1621:27:1621:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:384 | +| LogInjectionTest.java:1621:36:1621:43 | source(...) : Object | LogInjectionTest.java:1621:27:1621:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:447 | +| LogInjectionTest.java:1622:81:1622:88 | source(...) : Object | LogInjectionTest.java:1622:72:1622:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1622:81:1622:88 | source(...) : Object | LogInjectionTest.java:1622:72:1622:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | +| LogInjectionTest.java:1623:66:1623:73 | source(...) : Object | LogInjectionTest.java:1623:57:1623:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1623:66:1623:73 | source(...) : Object | LogInjectionTest.java:1623:57:1623:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | +| LogInjectionTest.java:1624:51:1624:58 | source(...) : Object | LogInjectionTest.java:1624:42:1624:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1624:51:1624:58 | source(...) : Object | LogInjectionTest.java:1624:42:1624:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | +| LogInjectionTest.java:1625:36:1625:43 | source(...) : Object | LogInjectionTest.java:1625:27:1625:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:381 | +| LogInjectionTest.java:1625:36:1625:43 | source(...) : Object | LogInjectionTest.java:1625:27:1625:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:444 | +| LogInjectionTest.java:1626:81:1626:88 | source(...) : Object | LogInjectionTest.java:1626:72:1626:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1626:81:1626:88 | source(...) : Object | LogInjectionTest.java:1626:72:1626:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | +| LogInjectionTest.java:1627:66:1627:73 | source(...) : Object | LogInjectionTest.java:1627:57:1627:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1627:66:1627:73 | source(...) : Object | LogInjectionTest.java:1627:57:1627:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | +| LogInjectionTest.java:1628:51:1628:58 | source(...) : Object | LogInjectionTest.java:1628:42:1628:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1628:51:1628:58 | source(...) : Object | LogInjectionTest.java:1628:42:1628:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | +| LogInjectionTest.java:1629:36:1629:43 | source(...) : Object | LogInjectionTest.java:1629:27:1629:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:385 | +| LogInjectionTest.java:1629:36:1629:43 | source(...) : Object | LogInjectionTest.java:1629:27:1629:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:448 | +| LogInjectionTest.java:1630:50:1630:57 | source(...) : Object | LogInjectionTest.java:1630:41:1630:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | +| LogInjectionTest.java:1630:50:1630:57 | source(...) : Object | LogInjectionTest.java:1630:41:1630:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:451 | +| LogInjectionTest.java:1631:35:1631:42 | source(...) : Object | LogInjectionTest.java:1631:26:1631:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:388 | +| LogInjectionTest.java:1631:35:1631:42 | source(...) : Object | LogInjectionTest.java:1631:26:1631:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:451 | +| LogInjectionTest.java:1632:50:1632:57 | source(...) : Object | LogInjectionTest.java:1632:41:1632:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | +| LogInjectionTest.java:1632:50:1632:57 | source(...) : Object | LogInjectionTest.java:1632:41:1632:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:455 | +| LogInjectionTest.java:1633:35:1633:42 | source(...) : Object | LogInjectionTest.java:1633:26:1633:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:392 | +| LogInjectionTest.java:1633:35:1633:42 | source(...) : Object | LogInjectionTest.java:1633:26:1633:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:455 | +| LogInjectionTest.java:1634:35:1634:42 | source(...) : Object | LogInjectionTest.java:1634:26:1634:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:391 | +| LogInjectionTest.java:1634:35:1634:42 | source(...) : Object | LogInjectionTest.java:1634:26:1634:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:454 | +| LogInjectionTest.java:1635:35:1635:42 | source(...) : Object | LogInjectionTest.java:1635:26:1635:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:395 | +| LogInjectionTest.java:1635:35:1635:42 | source(...) : Object | LogInjectionTest.java:1635:26:1635:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:458 | +| LogInjectionTest.java:1636:41:1636:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1636:41:1636:63 | new Object[] | provenance | Sink:MaD:391 | +| LogInjectionTest.java:1636:41:1636:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1636:41:1636:63 | new Object[] | provenance | Sink:MaD:454 | +| LogInjectionTest.java:1636:55:1636:62 | source(...) : Object | LogInjectionTest.java:1636:41:1636:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1637:41:1637:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1637:41:1637:63 | new Object[] | provenance | Sink:MaD:395 | +| LogInjectionTest.java:1637:41:1637:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1637:41:1637:63 | new Object[] | provenance | Sink:MaD:458 | +| LogInjectionTest.java:1637:55:1637:62 | source(...) : Object | LogInjectionTest.java:1637:41:1637:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1638:65:1638:72 | source(...) : Object | LogInjectionTest.java:1638:56:1638:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | +| LogInjectionTest.java:1638:65:1638:72 | source(...) : Object | LogInjectionTest.java:1638:56:1638:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:452 | +| LogInjectionTest.java:1639:50:1639:57 | source(...) : Object | LogInjectionTest.java:1639:41:1639:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | +| LogInjectionTest.java:1639:50:1639:57 | source(...) : Object | LogInjectionTest.java:1639:41:1639:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:452 | +| LogInjectionTest.java:1640:35:1640:42 | source(...) : Object | LogInjectionTest.java:1640:26:1640:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:389 | +| LogInjectionTest.java:1640:35:1640:42 | source(...) : Object | LogInjectionTest.java:1640:26:1640:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:452 | +| LogInjectionTest.java:1641:65:1641:72 | source(...) : Object | LogInjectionTest.java:1641:56:1641:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | +| LogInjectionTest.java:1641:65:1641:72 | source(...) : Object | LogInjectionTest.java:1641:56:1641:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:456 | +| LogInjectionTest.java:1642:50:1642:57 | source(...) : Object | LogInjectionTest.java:1642:41:1642:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | +| LogInjectionTest.java:1642:50:1642:57 | source(...) : Object | LogInjectionTest.java:1642:41:1642:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:456 | +| LogInjectionTest.java:1643:35:1643:42 | source(...) : Object | LogInjectionTest.java:1643:26:1643:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:393 | +| LogInjectionTest.java:1643:35:1643:42 | source(...) : Object | LogInjectionTest.java:1643:26:1643:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:456 | +| LogInjectionTest.java:1644:80:1644:87 | source(...) : Object | LogInjectionTest.java:1644:71:1644:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1644:80:1644:87 | source(...) : Object | LogInjectionTest.java:1644:71:1644:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | +| LogInjectionTest.java:1645:65:1645:72 | source(...) : Object | LogInjectionTest.java:1645:56:1645:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1645:65:1645:72 | source(...) : Object | LogInjectionTest.java:1645:56:1645:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | +| LogInjectionTest.java:1646:50:1646:57 | source(...) : Object | LogInjectionTest.java:1646:41:1646:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1646:50:1646:57 | source(...) : Object | LogInjectionTest.java:1646:41:1646:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | +| LogInjectionTest.java:1647:35:1647:42 | source(...) : Object | LogInjectionTest.java:1647:26:1647:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:390 | +| LogInjectionTest.java:1647:35:1647:42 | source(...) : Object | LogInjectionTest.java:1647:26:1647:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:453 | +| LogInjectionTest.java:1648:80:1648:87 | source(...) : Object | LogInjectionTest.java:1648:71:1648:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1648:80:1648:87 | source(...) : Object | LogInjectionTest.java:1648:71:1648:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | +| LogInjectionTest.java:1649:65:1649:72 | source(...) : Object | LogInjectionTest.java:1649:56:1649:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1649:65:1649:72 | source(...) : Object | LogInjectionTest.java:1649:56:1649:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | +| LogInjectionTest.java:1650:50:1650:57 | source(...) : Object | LogInjectionTest.java:1650:41:1650:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1650:50:1650:57 | source(...) : Object | LogInjectionTest.java:1650:41:1650:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | +| LogInjectionTest.java:1651:35:1651:42 | source(...) : Object | LogInjectionTest.java:1651:26:1651:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:394 | +| LogInjectionTest.java:1651:35:1651:42 | source(...) : Object | LogInjectionTest.java:1651:26:1651:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:457 | +| LogInjectionTest.java:1652:88:1652:95 | source(...) : Object | LogInjectionTest.java:1652:79:1652:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | +| LogInjectionTest.java:1652:88:1652:95 | source(...) : Object | LogInjectionTest.java:1652:79:1652:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:460 | +| LogInjectionTest.java:1653:73:1653:80 | source(...) : Object | LogInjectionTest.java:1653:64:1653:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:397 | +| LogInjectionTest.java:1653:73:1653:80 | source(...) : Object | LogInjectionTest.java:1653:64:1653:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:460 | +| LogInjectionTest.java:1654:88:1654:95 | source(...) : Object | LogInjectionTest.java:1654:79:1654:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | +| LogInjectionTest.java:1654:88:1654:95 | source(...) : Object | LogInjectionTest.java:1654:79:1654:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:464 | +| LogInjectionTest.java:1655:73:1655:80 | source(...) : Object | LogInjectionTest.java:1655:64:1655:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:401 | +| LogInjectionTest.java:1655:73:1655:80 | source(...) : Object | LogInjectionTest.java:1655:64:1655:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:464 | +| LogInjectionTest.java:1656:73:1656:80 | source(...) : Object | LogInjectionTest.java:1656:64:1656:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:400 | +| LogInjectionTest.java:1656:73:1656:80 | source(...) : Object | LogInjectionTest.java:1656:64:1656:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:463 | +| LogInjectionTest.java:1657:73:1657:80 | source(...) : Object | LogInjectionTest.java:1657:64:1657:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:404 | +| LogInjectionTest.java:1657:73:1657:80 | source(...) : Object | LogInjectionTest.java:1657:64:1657:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:467 | +| LogInjectionTest.java:1658:79:1658:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1658:79:1658:101 | new Object[] | provenance | Sink:MaD:400 | +| LogInjectionTest.java:1658:79:1658:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1658:79:1658:101 | new Object[] | provenance | Sink:MaD:463 | +| LogInjectionTest.java:1658:93:1658:100 | source(...) : Object | LogInjectionTest.java:1658:79:1658:101 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1659:79:1659:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1659:79:1659:101 | new Object[] | provenance | Sink:MaD:404 | +| LogInjectionTest.java:1659:79:1659:101 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1659:79:1659:101 | new Object[] | provenance | Sink:MaD:467 | +| LogInjectionTest.java:1659:93:1659:100 | source(...) : Object | LogInjectionTest.java:1659:79:1659:101 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1660:103:1660:110 | source(...) : Object | LogInjectionTest.java:1660:94:1660:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | +| LogInjectionTest.java:1660:103:1660:110 | source(...) : Object | LogInjectionTest.java:1660:94:1660:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:461 | +| LogInjectionTest.java:1661:88:1661:95 | source(...) : Object | LogInjectionTest.java:1661:79:1661:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | +| LogInjectionTest.java:1661:88:1661:95 | source(...) : Object | LogInjectionTest.java:1661:79:1661:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:461 | +| LogInjectionTest.java:1662:73:1662:80 | source(...) : Object | LogInjectionTest.java:1662:64:1662:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:398 | +| LogInjectionTest.java:1662:73:1662:80 | source(...) : Object | LogInjectionTest.java:1662:64:1662:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:461 | +| LogInjectionTest.java:1663:103:1663:110 | source(...) : Object | LogInjectionTest.java:1663:94:1663:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | +| LogInjectionTest.java:1663:103:1663:110 | source(...) : Object | LogInjectionTest.java:1663:94:1663:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:465 | +| LogInjectionTest.java:1664:88:1664:95 | source(...) : Object | LogInjectionTest.java:1664:79:1664:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | +| LogInjectionTest.java:1664:88:1664:95 | source(...) : Object | LogInjectionTest.java:1664:79:1664:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:465 | +| LogInjectionTest.java:1665:73:1665:80 | source(...) : Object | LogInjectionTest.java:1665:64:1665:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:402 | +| LogInjectionTest.java:1665:73:1665:80 | source(...) : Object | LogInjectionTest.java:1665:64:1665:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:465 | +| LogInjectionTest.java:1666:118:1666:125 | source(...) : Object | LogInjectionTest.java:1666:109:1666:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1666:118:1666:125 | source(...) : Object | LogInjectionTest.java:1666:109:1666:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | +| LogInjectionTest.java:1667:103:1667:110 | source(...) : Object | LogInjectionTest.java:1667:94:1667:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1667:103:1667:110 | source(...) : Object | LogInjectionTest.java:1667:94:1667:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | +| LogInjectionTest.java:1668:88:1668:95 | source(...) : Object | LogInjectionTest.java:1668:79:1668:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1668:88:1668:95 | source(...) : Object | LogInjectionTest.java:1668:79:1668:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | +| LogInjectionTest.java:1669:73:1669:80 | source(...) : Object | LogInjectionTest.java:1669:64:1669:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:399 | +| LogInjectionTest.java:1669:73:1669:80 | source(...) : Object | LogInjectionTest.java:1669:64:1669:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:462 | +| LogInjectionTest.java:1670:118:1670:125 | source(...) : Object | LogInjectionTest.java:1670:109:1670:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1670:118:1670:125 | source(...) : Object | LogInjectionTest.java:1670:109:1670:125 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | +| LogInjectionTest.java:1671:103:1671:110 | source(...) : Object | LogInjectionTest.java:1671:94:1671:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1671:103:1671:110 | source(...) : Object | LogInjectionTest.java:1671:94:1671:110 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | +| LogInjectionTest.java:1672:88:1672:95 | source(...) : Object | LogInjectionTest.java:1672:79:1672:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1672:88:1672:95 | source(...) : Object | LogInjectionTest.java:1672:79:1672:95 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | +| LogInjectionTest.java:1673:73:1673:80 | source(...) : Object | LogInjectionTest.java:1673:64:1673:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:403 | +| LogInjectionTest.java:1673:73:1673:80 | source(...) : Object | LogInjectionTest.java:1673:64:1673:80 | (...)... | provenance | Src:MaD:536 Sink:MaD:466 | +| LogInjectionTest.java:1674:51:1674:58 | source(...) : Object | LogInjectionTest.java:1674:42:1674:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | +| LogInjectionTest.java:1674:51:1674:58 | source(...) : Object | LogInjectionTest.java:1674:42:1674:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:469 | +| LogInjectionTest.java:1675:36:1675:43 | source(...) : Object | LogInjectionTest.java:1675:27:1675:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:406 | +| LogInjectionTest.java:1675:36:1675:43 | source(...) : Object | LogInjectionTest.java:1675:27:1675:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:469 | +| LogInjectionTest.java:1676:51:1676:58 | source(...) : Object | LogInjectionTest.java:1676:42:1676:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | +| LogInjectionTest.java:1676:51:1676:58 | source(...) : Object | LogInjectionTest.java:1676:42:1676:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:473 | +| LogInjectionTest.java:1677:36:1677:43 | source(...) : Object | LogInjectionTest.java:1677:27:1677:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:410 | +| LogInjectionTest.java:1677:36:1677:43 | source(...) : Object | LogInjectionTest.java:1677:27:1677:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:473 | +| LogInjectionTest.java:1678:36:1678:43 | source(...) : Object | LogInjectionTest.java:1678:27:1678:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:409 | +| LogInjectionTest.java:1678:36:1678:43 | source(...) : Object | LogInjectionTest.java:1678:27:1678:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:472 | +| LogInjectionTest.java:1679:36:1679:43 | source(...) : Object | LogInjectionTest.java:1679:27:1679:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:413 | +| LogInjectionTest.java:1679:36:1679:43 | source(...) : Object | LogInjectionTest.java:1679:27:1679:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:476 | +| LogInjectionTest.java:1680:42:1680:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1680:42:1680:64 | new Object[] | provenance | Sink:MaD:409 | +| LogInjectionTest.java:1680:42:1680:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1680:42:1680:64 | new Object[] | provenance | Sink:MaD:472 | +| LogInjectionTest.java:1680:56:1680:63 | source(...) : Object | LogInjectionTest.java:1680:42:1680:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1681:42:1681:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1681:42:1681:64 | new Object[] | provenance | Sink:MaD:413 | +| LogInjectionTest.java:1681:42:1681:64 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1681:42:1681:64 | new Object[] | provenance | Sink:MaD:476 | +| LogInjectionTest.java:1681:56:1681:63 | source(...) : Object | LogInjectionTest.java:1681:42:1681:64 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1682:66:1682:73 | source(...) : Object | LogInjectionTest.java:1682:57:1682:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | +| LogInjectionTest.java:1682:66:1682:73 | source(...) : Object | LogInjectionTest.java:1682:57:1682:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:470 | +| LogInjectionTest.java:1683:51:1683:58 | source(...) : Object | LogInjectionTest.java:1683:42:1683:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | +| LogInjectionTest.java:1683:51:1683:58 | source(...) : Object | LogInjectionTest.java:1683:42:1683:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:470 | +| LogInjectionTest.java:1684:36:1684:43 | source(...) : Object | LogInjectionTest.java:1684:27:1684:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:407 | +| LogInjectionTest.java:1684:36:1684:43 | source(...) : Object | LogInjectionTest.java:1684:27:1684:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:470 | +| LogInjectionTest.java:1685:66:1685:73 | source(...) : Object | LogInjectionTest.java:1685:57:1685:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | +| LogInjectionTest.java:1685:66:1685:73 | source(...) : Object | LogInjectionTest.java:1685:57:1685:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:474 | +| LogInjectionTest.java:1686:51:1686:58 | source(...) : Object | LogInjectionTest.java:1686:42:1686:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | +| LogInjectionTest.java:1686:51:1686:58 | source(...) : Object | LogInjectionTest.java:1686:42:1686:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:474 | +| LogInjectionTest.java:1687:36:1687:43 | source(...) : Object | LogInjectionTest.java:1687:27:1687:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:411 | +| LogInjectionTest.java:1687:36:1687:43 | source(...) : Object | LogInjectionTest.java:1687:27:1687:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:474 | +| LogInjectionTest.java:1688:81:1688:88 | source(...) : Object | LogInjectionTest.java:1688:72:1688:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1688:81:1688:88 | source(...) : Object | LogInjectionTest.java:1688:72:1688:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | +| LogInjectionTest.java:1689:66:1689:73 | source(...) : Object | LogInjectionTest.java:1689:57:1689:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1689:66:1689:73 | source(...) : Object | LogInjectionTest.java:1689:57:1689:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | +| LogInjectionTest.java:1690:51:1690:58 | source(...) : Object | LogInjectionTest.java:1690:42:1690:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1690:51:1690:58 | source(...) : Object | LogInjectionTest.java:1690:42:1690:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | +| LogInjectionTest.java:1691:36:1691:43 | source(...) : Object | LogInjectionTest.java:1691:27:1691:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:408 | +| LogInjectionTest.java:1691:36:1691:43 | source(...) : Object | LogInjectionTest.java:1691:27:1691:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:471 | +| LogInjectionTest.java:1692:81:1692:88 | source(...) : Object | LogInjectionTest.java:1692:72:1692:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1692:81:1692:88 | source(...) : Object | LogInjectionTest.java:1692:72:1692:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | +| LogInjectionTest.java:1693:66:1693:73 | source(...) : Object | LogInjectionTest.java:1693:57:1693:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1693:66:1693:73 | source(...) : Object | LogInjectionTest.java:1693:57:1693:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | +| LogInjectionTest.java:1694:51:1694:58 | source(...) : Object | LogInjectionTest.java:1694:42:1694:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1694:51:1694:58 | source(...) : Object | LogInjectionTest.java:1694:42:1694:58 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | +| LogInjectionTest.java:1695:36:1695:43 | source(...) : Object | LogInjectionTest.java:1695:27:1695:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:412 | +| LogInjectionTest.java:1695:36:1695:43 | source(...) : Object | LogInjectionTest.java:1695:27:1695:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:475 | +| LogInjectionTest.java:1696:50:1696:57 | source(...) : Object | LogInjectionTest.java:1696:41:1696:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | +| LogInjectionTest.java:1696:50:1696:57 | source(...) : Object | LogInjectionTest.java:1696:41:1696:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:478 | +| LogInjectionTest.java:1697:35:1697:42 | source(...) : Object | LogInjectionTest.java:1697:26:1697:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:415 | +| LogInjectionTest.java:1697:35:1697:42 | source(...) : Object | LogInjectionTest.java:1697:26:1697:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:478 | +| LogInjectionTest.java:1698:50:1698:57 | source(...) : Object | LogInjectionTest.java:1698:41:1698:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | +| LogInjectionTest.java:1698:50:1698:57 | source(...) : Object | LogInjectionTest.java:1698:41:1698:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:482 | +| LogInjectionTest.java:1699:35:1699:42 | source(...) : Object | LogInjectionTest.java:1699:26:1699:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:419 | +| LogInjectionTest.java:1699:35:1699:42 | source(...) : Object | LogInjectionTest.java:1699:26:1699:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:482 | +| LogInjectionTest.java:1700:35:1700:42 | source(...) : Object | LogInjectionTest.java:1700:26:1700:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:418 | +| LogInjectionTest.java:1700:35:1700:42 | source(...) : Object | LogInjectionTest.java:1700:26:1700:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:481 | +| LogInjectionTest.java:1701:35:1701:42 | source(...) : Object | LogInjectionTest.java:1701:26:1701:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:422 | +| LogInjectionTest.java:1701:35:1701:42 | source(...) : Object | LogInjectionTest.java:1701:26:1701:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:485 | +| LogInjectionTest.java:1702:41:1702:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1702:41:1702:63 | new Object[] | provenance | Sink:MaD:418 | +| LogInjectionTest.java:1702:41:1702:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1702:41:1702:63 | new Object[] | provenance | Sink:MaD:481 | +| LogInjectionTest.java:1702:55:1702:62 | source(...) : Object | LogInjectionTest.java:1702:41:1702:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1703:41:1703:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1703:41:1703:63 | new Object[] | provenance | Sink:MaD:422 | +| LogInjectionTest.java:1703:41:1703:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1703:41:1703:63 | new Object[] | provenance | Sink:MaD:485 | +| LogInjectionTest.java:1703:55:1703:62 | source(...) : Object | LogInjectionTest.java:1703:41:1703:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1704:65:1704:72 | source(...) : Object | LogInjectionTest.java:1704:56:1704:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | +| LogInjectionTest.java:1704:65:1704:72 | source(...) : Object | LogInjectionTest.java:1704:56:1704:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:479 | +| LogInjectionTest.java:1705:50:1705:57 | source(...) : Object | LogInjectionTest.java:1705:41:1705:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | +| LogInjectionTest.java:1705:50:1705:57 | source(...) : Object | LogInjectionTest.java:1705:41:1705:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:479 | +| LogInjectionTest.java:1706:35:1706:42 | source(...) : Object | LogInjectionTest.java:1706:26:1706:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:416 | +| LogInjectionTest.java:1706:35:1706:42 | source(...) : Object | LogInjectionTest.java:1706:26:1706:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:479 | +| LogInjectionTest.java:1707:65:1707:72 | source(...) : Object | LogInjectionTest.java:1707:56:1707:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | +| LogInjectionTest.java:1707:65:1707:72 | source(...) : Object | LogInjectionTest.java:1707:56:1707:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:483 | +| LogInjectionTest.java:1708:50:1708:57 | source(...) : Object | LogInjectionTest.java:1708:41:1708:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | +| LogInjectionTest.java:1708:50:1708:57 | source(...) : Object | LogInjectionTest.java:1708:41:1708:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:483 | +| LogInjectionTest.java:1709:35:1709:42 | source(...) : Object | LogInjectionTest.java:1709:26:1709:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:420 | +| LogInjectionTest.java:1709:35:1709:42 | source(...) : Object | LogInjectionTest.java:1709:26:1709:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:483 | +| LogInjectionTest.java:1710:80:1710:87 | source(...) : Object | LogInjectionTest.java:1710:71:1710:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1710:80:1710:87 | source(...) : Object | LogInjectionTest.java:1710:71:1710:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | +| LogInjectionTest.java:1711:65:1711:72 | source(...) : Object | LogInjectionTest.java:1711:56:1711:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1711:65:1711:72 | source(...) : Object | LogInjectionTest.java:1711:56:1711:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | +| LogInjectionTest.java:1712:50:1712:57 | source(...) : Object | LogInjectionTest.java:1712:41:1712:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1712:50:1712:57 | source(...) : Object | LogInjectionTest.java:1712:41:1712:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | +| LogInjectionTest.java:1713:35:1713:42 | source(...) : Object | LogInjectionTest.java:1713:26:1713:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:417 | +| LogInjectionTest.java:1713:35:1713:42 | source(...) : Object | LogInjectionTest.java:1713:26:1713:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:480 | +| LogInjectionTest.java:1714:80:1714:87 | source(...) : Object | LogInjectionTest.java:1714:71:1714:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1714:80:1714:87 | source(...) : Object | LogInjectionTest.java:1714:71:1714:87 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | +| LogInjectionTest.java:1715:65:1715:72 | source(...) : Object | LogInjectionTest.java:1715:56:1715:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1715:65:1715:72 | source(...) : Object | LogInjectionTest.java:1715:56:1715:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | +| LogInjectionTest.java:1716:50:1716:57 | source(...) : Object | LogInjectionTest.java:1716:41:1716:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1716:50:1716:57 | source(...) : Object | LogInjectionTest.java:1716:41:1716:57 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | +| LogInjectionTest.java:1717:35:1717:42 | source(...) : Object | LogInjectionTest.java:1717:26:1717:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:421 | +| LogInjectionTest.java:1717:35:1717:42 | source(...) : Object | LogInjectionTest.java:1717:26:1717:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:484 | +| LogInjectionTest.java:1722:34:1722:41 | source(...) : Object | LogInjectionTest.java:1722:25:1722:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | +| LogInjectionTest.java:1723:34:1723:41 | source(...) : Object | LogInjectionTest.java:1723:25:1723:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | +| LogInjectionTest.java:1723:34:1723:41 | source(...) : Object | LogInjectionTest.java:1723:25:1723:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:486 | +| LogInjectionTest.java:1725:34:1725:41 | source(...) : Object | LogInjectionTest.java:1725:25:1725:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | +| LogInjectionTest.java:1725:34:1725:41 | source(...) : Object | LogInjectionTest.java:1725:25:1725:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:488 | +| LogInjectionTest.java:1726:40:1726:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1726:40:1726:62 | new Object[] | provenance | Sink:MaD:488 | +| LogInjectionTest.java:1726:54:1726:61 | source(...) : Object | LogInjectionTest.java:1726:40:1726:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1727:34:1727:41 | source(...) : Object | LogInjectionTest.java:1727:25:1727:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | +| LogInjectionTest.java:1727:34:1727:41 | source(...) : Object | LogInjectionTest.java:1727:25:1727:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:487 | +| LogInjectionTest.java:1730:55:1730:62 | source(...) : Object | LogInjectionTest.java:1730:25:1730:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:490 | +| LogInjectionTest.java:1730:55:1730:62 | source(...) : Object | LogInjectionTest.java:1730:25:1730:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:489 | +| LogInjectionTest.java:1735:35:1735:42 | source(...) : Object | LogInjectionTest.java:1735:26:1735:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:495 | +| LogInjectionTest.java:1736:35:1736:42 | source(...) : Object | LogInjectionTest.java:1736:26:1736:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:496 | +| LogInjectionTest.java:1738:35:1738:42 | source(...) : Object | LogInjectionTest.java:1738:26:1738:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:498 | +| LogInjectionTest.java:1739:41:1739:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1739:41:1739:63 | new Object[] | provenance | Sink:MaD:498 | +| LogInjectionTest.java:1739:55:1739:62 | source(...) : Object | LogInjectionTest.java:1739:41:1739:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1740:35:1740:42 | source(...) : Object | LogInjectionTest.java:1740:26:1740:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:497 | +| LogInjectionTest.java:1743:35:1743:42 | source(...) : Object | LogInjectionTest.java:1743:26:1743:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:499 | +| LogInjectionTest.java:1744:60:1744:67 | source(...) : Object | LogInjectionTest.java:1744:51:1744:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:491 | +| LogInjectionTest.java:1745:60:1745:67 | source(...) : Object | LogInjectionTest.java:1745:51:1745:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:492 | +| LogInjectionTest.java:1747:60:1747:67 | source(...) : Object | LogInjectionTest.java:1747:51:1747:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:494 | +| LogInjectionTest.java:1748:66:1748:88 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1748:66:1748:88 | new Object[] | provenance | Sink:MaD:494 | +| LogInjectionTest.java:1748:80:1748:87 | source(...) : Object | LogInjectionTest.java:1748:66:1748:88 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1749:60:1749:67 | source(...) : Object | LogInjectionTest.java:1749:51:1749:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:493 | +| LogInjectionTest.java:1752:60:1752:67 | source(...) : Object | LogInjectionTest.java:1752:51:1752:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:494 | +| LogInjectionTest.java:1753:66:1753:73 | source(...) : Object | LogInjectionTest.java:1753:13:1753:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:494 | +| LogInjectionTest.java:1754:81:1754:88 | source(...) : Object | LogInjectionTest.java:1754:13:1754:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:494 | +| LogInjectionTest.java:1755:96:1755:103 | source(...) : Object | LogInjectionTest.java:1755:13:1755:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:494 | +| LogInjectionTest.java:1756:35:1756:42 | source(...) : Object | LogInjectionTest.java:1756:26:1756:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:504 | +| LogInjectionTest.java:1757:35:1757:42 | source(...) : Object | LogInjectionTest.java:1757:26:1757:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:505 | +| LogInjectionTest.java:1759:35:1759:42 | source(...) : Object | LogInjectionTest.java:1759:26:1759:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:507 | +| LogInjectionTest.java:1760:41:1760:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1760:41:1760:63 | new Object[] | provenance | Sink:MaD:507 | +| LogInjectionTest.java:1760:55:1760:62 | source(...) : Object | LogInjectionTest.java:1760:41:1760:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1761:35:1761:42 | source(...) : Object | LogInjectionTest.java:1761:26:1761:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:506 | +| LogInjectionTest.java:1764:35:1764:42 | source(...) : Object | LogInjectionTest.java:1764:26:1764:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:508 | +| LogInjectionTest.java:1765:60:1765:67 | source(...) : Object | LogInjectionTest.java:1765:51:1765:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:500 | +| LogInjectionTest.java:1766:60:1766:67 | source(...) : Object | LogInjectionTest.java:1766:51:1766:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:501 | +| LogInjectionTest.java:1768:60:1768:67 | source(...) : Object | LogInjectionTest.java:1768:51:1768:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:503 | +| LogInjectionTest.java:1769:66:1769:88 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1769:66:1769:88 | new Object[] | provenance | Sink:MaD:503 | +| LogInjectionTest.java:1769:80:1769:87 | source(...) : Object | LogInjectionTest.java:1769:66:1769:88 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1770:60:1770:67 | source(...) : Object | LogInjectionTest.java:1770:51:1770:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:502 | +| LogInjectionTest.java:1773:60:1773:67 | source(...) : Object | LogInjectionTest.java:1773:51:1773:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:503 | +| LogInjectionTest.java:1774:66:1774:73 | source(...) : Object | LogInjectionTest.java:1774:13:1774:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:503 | +| LogInjectionTest.java:1775:81:1775:88 | source(...) : Object | LogInjectionTest.java:1775:13:1775:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:503 | +| LogInjectionTest.java:1776:96:1776:103 | source(...) : Object | LogInjectionTest.java:1776:13:1776:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:503 | +| LogInjectionTest.java:1777:34:1777:41 | source(...) : Object | LogInjectionTest.java:1777:25:1777:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:513 | +| LogInjectionTest.java:1778:34:1778:41 | source(...) : Object | LogInjectionTest.java:1778:25:1778:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:514 | +| LogInjectionTest.java:1780:34:1780:41 | source(...) : Object | LogInjectionTest.java:1780:25:1780:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:516 | +| LogInjectionTest.java:1781:40:1781:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1781:40:1781:62 | new Object[] | provenance | Sink:MaD:516 | +| LogInjectionTest.java:1781:54:1781:61 | source(...) : Object | LogInjectionTest.java:1781:40:1781:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1782:34:1782:41 | source(...) : Object | LogInjectionTest.java:1782:25:1782:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:515 | +| LogInjectionTest.java:1785:34:1785:41 | source(...) : Object | LogInjectionTest.java:1785:25:1785:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:517 | +| LogInjectionTest.java:1786:59:1786:66 | source(...) : Object | LogInjectionTest.java:1786:50:1786:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:509 | +| LogInjectionTest.java:1787:59:1787:66 | source(...) : Object | LogInjectionTest.java:1787:50:1787:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:510 | +| LogInjectionTest.java:1789:59:1789:66 | source(...) : Object | LogInjectionTest.java:1789:50:1789:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:512 | +| LogInjectionTest.java:1790:65:1790:87 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1790:65:1790:87 | new Object[] | provenance | Sink:MaD:512 | +| LogInjectionTest.java:1790:79:1790:86 | source(...) : Object | LogInjectionTest.java:1790:65:1790:87 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1791:59:1791:66 | source(...) : Object | LogInjectionTest.java:1791:50:1791:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:511 | +| LogInjectionTest.java:1794:59:1794:66 | source(...) : Object | LogInjectionTest.java:1794:50:1794:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:512 | +| LogInjectionTest.java:1795:65:1795:72 | source(...) : Object | LogInjectionTest.java:1795:13:1795:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:512 | +| LogInjectionTest.java:1796:80:1796:87 | source(...) : Object | LogInjectionTest.java:1796:13:1796:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:512 | +| LogInjectionTest.java:1797:95:1797:102 | source(...) : Object | LogInjectionTest.java:1797:13:1797:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:512 | +| LogInjectionTest.java:1798:35:1798:42 | source(...) : Object | LogInjectionTest.java:1798:26:1798:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:522 | +| LogInjectionTest.java:1799:35:1799:42 | source(...) : Object | LogInjectionTest.java:1799:26:1799:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:523 | +| LogInjectionTest.java:1801:35:1801:42 | source(...) : Object | LogInjectionTest.java:1801:26:1801:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:525 | +| LogInjectionTest.java:1802:41:1802:63 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1802:41:1802:63 | new Object[] | provenance | Sink:MaD:525 | +| LogInjectionTest.java:1802:55:1802:62 | source(...) : Object | LogInjectionTest.java:1802:41:1802:63 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1803:35:1803:42 | source(...) : Object | LogInjectionTest.java:1803:26:1803:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:524 | +| LogInjectionTest.java:1806:35:1806:42 | source(...) : Object | LogInjectionTest.java:1806:26:1806:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:526 | +| LogInjectionTest.java:1807:60:1807:67 | source(...) : Object | LogInjectionTest.java:1807:51:1807:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:518 | +| LogInjectionTest.java:1808:60:1808:67 | source(...) : Object | LogInjectionTest.java:1808:51:1808:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:519 | +| LogInjectionTest.java:1810:60:1810:67 | source(...) : Object | LogInjectionTest.java:1810:51:1810:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:521 | +| LogInjectionTest.java:1811:66:1811:88 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1811:66:1811:88 | new Object[] | provenance | Sink:MaD:521 | +| LogInjectionTest.java:1811:80:1811:87 | source(...) : Object | LogInjectionTest.java:1811:66:1811:88 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1812:60:1812:67 | source(...) : Object | LogInjectionTest.java:1812:51:1812:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:520 | +| LogInjectionTest.java:1815:60:1815:67 | source(...) : Object | LogInjectionTest.java:1815:51:1815:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:521 | +| LogInjectionTest.java:1816:66:1816:73 | source(...) : Object | LogInjectionTest.java:1816:13:1816:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:521 | +| LogInjectionTest.java:1817:81:1817:88 | source(...) : Object | LogInjectionTest.java:1817:13:1817:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:521 | +| LogInjectionTest.java:1818:96:1818:103 | source(...) : Object | LogInjectionTest.java:1818:13:1818:104 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:521 | +| LogInjectionTest.java:1819:34:1819:41 | source(...) : Object | LogInjectionTest.java:1819:25:1819:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:531 | +| LogInjectionTest.java:1820:34:1820:41 | source(...) : Object | LogInjectionTest.java:1820:25:1820:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:532 | +| LogInjectionTest.java:1822:34:1822:41 | source(...) : Object | LogInjectionTest.java:1822:25:1822:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:534 | +| LogInjectionTest.java:1823:40:1823:62 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1823:40:1823:62 | new Object[] | provenance | Sink:MaD:534 | +| LogInjectionTest.java:1823:54:1823:61 | source(...) : Object | LogInjectionTest.java:1823:40:1823:62 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1824:34:1824:41 | source(...) : Object | LogInjectionTest.java:1824:25:1824:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:533 | +| LogInjectionTest.java:1827:34:1827:41 | source(...) : Object | LogInjectionTest.java:1827:25:1827:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:535 | +| LogInjectionTest.java:1828:59:1828:66 | source(...) : Object | LogInjectionTest.java:1828:50:1828:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:527 | +| LogInjectionTest.java:1829:59:1829:66 | source(...) : Object | LogInjectionTest.java:1829:50:1829:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:528 | +| LogInjectionTest.java:1831:59:1831:66 | source(...) : Object | LogInjectionTest.java:1831:50:1831:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:530 | +| LogInjectionTest.java:1832:65:1832:87 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1832:65:1832:87 | new Object[] | provenance | Sink:MaD:530 | +| LogInjectionTest.java:1832:79:1832:86 | source(...) : Object | LogInjectionTest.java:1832:65:1832:87 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1833:59:1833:66 | source(...) : Object | LogInjectionTest.java:1833:50:1833:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:529 | +| LogInjectionTest.java:1836:59:1836:66 | source(...) : Object | LogInjectionTest.java:1836:50:1836:66 | (...)... | provenance | Src:MaD:536 Sink:MaD:530 | +| LogInjectionTest.java:1837:65:1837:72 | source(...) : Object | LogInjectionTest.java:1837:13:1837:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:530 | +| LogInjectionTest.java:1838:80:1838:87 | source(...) : Object | LogInjectionTest.java:1838:13:1838:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:530 | +| LogInjectionTest.java:1839:95:1839:102 | source(...) : Object | LogInjectionTest.java:1839:13:1839:103 | new ..[] { .. } | provenance | Src:MaD:536 Sink:MaD:530 | +| LogInjectionTest.java:1860:37:1860:44 | source(...) : Object | LogInjectionTest.java:1860:28:1860:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:19 | +| LogInjectionTest.java:1861:43:1861:65 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1861:43:1861:65 | new Object[] | provenance | Sink:MaD:19 | +| LogInjectionTest.java:1861:57:1861:64 | source(...) : Object | LogInjectionTest.java:1861:43:1861:65 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1863:30:1863:37 | source(...) : Object | LogInjectionTest.java:1863:21:1863:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1864:45:1864:52 | source(...) : Object | LogInjectionTest.java:1864:36:1864:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:7 | +| LogInjectionTest.java:1865:30:1865:37 | source(...) : Object | LogInjectionTest.java:1865:21:1865:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1866:60:1866:67 | source(...) : Object | LogInjectionTest.java:1866:51:1866:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:8 | +| LogInjectionTest.java:1867:45:1867:52 | source(...) : Object | LogInjectionTest.java:1867:36:1867:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:8 | +| LogInjectionTest.java:1868:30:1868:37 | source(...) : Object | LogInjectionTest.java:1868:21:1868:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1869:75:1869:82 | source(...) : Object | LogInjectionTest.java:1869:66:1869:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:9 | +| LogInjectionTest.java:1870:60:1870:67 | source(...) : Object | LogInjectionTest.java:1870:51:1870:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:9 | +| LogInjectionTest.java:1871:45:1871:52 | source(...) : Object | LogInjectionTest.java:1871:36:1871:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:9 | +| LogInjectionTest.java:1872:30:1872:37 | source(...) : Object | LogInjectionTest.java:1872:21:1872:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1873:90:1873:97 | source(...) : Object | LogInjectionTest.java:1873:81:1873:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | +| LogInjectionTest.java:1874:75:1874:82 | source(...) : Object | LogInjectionTest.java:1874:66:1874:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | +| LogInjectionTest.java:1875:60:1875:67 | source(...) : Object | LogInjectionTest.java:1875:51:1875:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | +| LogInjectionTest.java:1876:45:1876:52 | source(...) : Object | LogInjectionTest.java:1876:36:1876:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:10 | +| LogInjectionTest.java:1877:30:1877:37 | source(...) : Object | LogInjectionTest.java:1877:21:1877:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1878:105:1878:112 | source(...) : Object | LogInjectionTest.java:1878:96:1878:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | +| LogInjectionTest.java:1879:90:1879:97 | source(...) : Object | LogInjectionTest.java:1879:81:1879:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | +| LogInjectionTest.java:1880:75:1880:82 | source(...) : Object | LogInjectionTest.java:1880:66:1880:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | +| LogInjectionTest.java:1881:60:1881:67 | source(...) : Object | LogInjectionTest.java:1881:51:1881:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | +| LogInjectionTest.java:1882:45:1882:52 | source(...) : Object | LogInjectionTest.java:1882:36:1882:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:11 | +| LogInjectionTest.java:1883:30:1883:37 | source(...) : Object | LogInjectionTest.java:1883:21:1883:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1884:120:1884:127 | source(...) : Object | LogInjectionTest.java:1884:111:1884:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | +| LogInjectionTest.java:1885:105:1885:112 | source(...) : Object | LogInjectionTest.java:1885:96:1885:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | +| LogInjectionTest.java:1886:90:1886:97 | source(...) : Object | LogInjectionTest.java:1886:81:1886:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | +| LogInjectionTest.java:1887:75:1887:82 | source(...) : Object | LogInjectionTest.java:1887:66:1887:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | +| LogInjectionTest.java:1888:60:1888:67 | source(...) : Object | LogInjectionTest.java:1888:51:1888:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | +| LogInjectionTest.java:1889:45:1889:52 | source(...) : Object | LogInjectionTest.java:1889:36:1889:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:12 | +| LogInjectionTest.java:1890:30:1890:37 | source(...) : Object | LogInjectionTest.java:1890:21:1890:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1891:135:1891:142 | source(...) : Object | LogInjectionTest.java:1891:126:1891:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1892:120:1892:127 | source(...) : Object | LogInjectionTest.java:1892:111:1892:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1893:105:1893:112 | source(...) : Object | LogInjectionTest.java:1893:96:1893:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1894:90:1894:97 | source(...) : Object | LogInjectionTest.java:1894:81:1894:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1895:75:1895:82 | source(...) : Object | LogInjectionTest.java:1895:66:1895:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1896:60:1896:67 | source(...) : Object | LogInjectionTest.java:1896:51:1896:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1897:45:1897:52 | source(...) : Object | LogInjectionTest.java:1897:36:1897:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:13 | +| LogInjectionTest.java:1898:30:1898:37 | source(...) : Object | LogInjectionTest.java:1898:21:1898:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1899:150:1899:157 | source(...) : Object | LogInjectionTest.java:1899:141:1899:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1900:135:1900:142 | source(...) : Object | LogInjectionTest.java:1900:126:1900:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1901:120:1901:127 | source(...) : Object | LogInjectionTest.java:1901:111:1901:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1902:105:1902:112 | source(...) : Object | LogInjectionTest.java:1902:96:1902:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1903:90:1903:97 | source(...) : Object | LogInjectionTest.java:1903:81:1903:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1904:75:1904:82 | source(...) : Object | LogInjectionTest.java:1904:66:1904:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1905:60:1905:67 | source(...) : Object | LogInjectionTest.java:1905:51:1905:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | +| LogInjectionTest.java:1906:45:1906:52 | source(...) : Object | LogInjectionTest.java:1906:36:1906:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:14 | | LogInjectionTest.java:1907:30:1907:37 | source(...) : Object | LogInjectionTest.java:1907:21:1907:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1908:180:1908:187 | source(...) : Object | LogInjectionTest.java:1908:171:1908:187 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1909:165:1909:172 | source(...) : Object | LogInjectionTest.java:1909:156:1909:172 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1910:150:1910:157 | source(...) : Object | LogInjectionTest.java:1910:141:1910:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1911:135:1911:142 | source(...) : Object | LogInjectionTest.java:1911:126:1911:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1912:120:1912:127 | source(...) : Object | LogInjectionTest.java:1912:111:1912:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1913:105:1913:112 | source(...) : Object | LogInjectionTest.java:1913:96:1913:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1914:90:1914:97 | source(...) : Object | LogInjectionTest.java:1914:81:1914:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1915:75:1915:82 | source(...) : Object | LogInjectionTest.java:1915:66:1915:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1916:60:1916:67 | source(...) : Object | LogInjectionTest.java:1916:51:1916:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1917:45:1917:52 | source(...) : Object | LogInjectionTest.java:1917:36:1917:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | -| LogInjectionTest.java:1918:30:1918:37 | source(...) : Object | LogInjectionTest.java:1918:21:1918:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1919:186:1919:207 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1919:186:1919:207 | new Object[] | provenance | Sink:MaD:17 | -| LogInjectionTest.java:1919:199:1919:206 | source(...) : Object | LogInjectionTest.java:1919:186:1919:207 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:1920:180:1920:187 | source(...) : Object | LogInjectionTest.java:1920:171:1920:187 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1921:165:1921:172 | source(...) : Object | LogInjectionTest.java:1921:156:1921:172 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1922:150:1922:157 | source(...) : Object | LogInjectionTest.java:1922:141:1922:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1923:135:1923:142 | source(...) : Object | LogInjectionTest.java:1923:126:1923:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1924:120:1924:127 | source(...) : Object | LogInjectionTest.java:1924:111:1924:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1925:105:1925:112 | source(...) : Object | LogInjectionTest.java:1925:96:1925:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1926:90:1926:97 | source(...) : Object | LogInjectionTest.java:1926:81:1926:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1927:75:1927:82 | source(...) : Object | LogInjectionTest.java:1927:66:1927:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1928:60:1928:67 | source(...) : Object | LogInjectionTest.java:1928:51:1928:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1929:45:1929:52 | source(...) : Object | LogInjectionTest.java:1929:36:1929:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | -| LogInjectionTest.java:1930:30:1930:37 | source(...) : Object | LogInjectionTest.java:1930:21:1930:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1932:30:1932:37 | source(...) : Object | LogInjectionTest.java:1932:21:1932:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1933:30:1933:37 | source(...) : Object | LogInjectionTest.java:1933:21:1933:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1934:30:1934:37 | source(...) : Object | LogInjectionTest.java:1934:21:1934:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1935:30:1935:37 | source(...) : Object | LogInjectionTest.java:1935:21:1935:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1936:30:1936:37 | source(...) : Object | LogInjectionTest.java:1936:21:1936:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1937:30:1937:37 | source(...) : Object | LogInjectionTest.java:1937:21:1937:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1939:30:1939:37 | source(...) : Object | LogInjectionTest.java:1939:21:1939:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1941:30:1941:37 | source(...) : Object | LogInjectionTest.java:1941:21:1941:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1908:165:1908:172 | source(...) : Object | LogInjectionTest.java:1908:156:1908:172 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1909:150:1909:157 | source(...) : Object | LogInjectionTest.java:1909:141:1909:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1910:135:1910:142 | source(...) : Object | LogInjectionTest.java:1910:126:1910:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1911:120:1911:127 | source(...) : Object | LogInjectionTest.java:1911:111:1911:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1912:105:1912:112 | source(...) : Object | LogInjectionTest.java:1912:96:1912:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1913:90:1913:97 | source(...) : Object | LogInjectionTest.java:1913:81:1913:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1914:75:1914:82 | source(...) : Object | LogInjectionTest.java:1914:66:1914:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1915:60:1915:67 | source(...) : Object | LogInjectionTest.java:1915:51:1915:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1916:45:1916:52 | source(...) : Object | LogInjectionTest.java:1916:36:1916:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:15 | +| LogInjectionTest.java:1917:30:1917:37 | source(...) : Object | LogInjectionTest.java:1917:21:1917:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1918:180:1918:187 | source(...) : Object | LogInjectionTest.java:1918:171:1918:187 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1919:165:1919:172 | source(...) : Object | LogInjectionTest.java:1919:156:1919:172 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1920:150:1920:157 | source(...) : Object | LogInjectionTest.java:1920:141:1920:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1921:135:1921:142 | source(...) : Object | LogInjectionTest.java:1921:126:1921:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1922:120:1922:127 | source(...) : Object | LogInjectionTest.java:1922:111:1922:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1923:105:1923:112 | source(...) : Object | LogInjectionTest.java:1923:96:1923:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1924:90:1924:97 | source(...) : Object | LogInjectionTest.java:1924:81:1924:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1925:75:1925:82 | source(...) : Object | LogInjectionTest.java:1925:66:1925:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1926:60:1926:67 | source(...) : Object | LogInjectionTest.java:1926:51:1926:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1927:45:1927:52 | source(...) : Object | LogInjectionTest.java:1927:36:1927:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:16 | +| LogInjectionTest.java:1928:30:1928:37 | source(...) : Object | LogInjectionTest.java:1928:21:1928:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1929:186:1929:207 | {...} : Object[] [[]] : Object | LogInjectionTest.java:1929:186:1929:207 | new Object[] | provenance | Sink:MaD:17 | +| LogInjectionTest.java:1929:199:1929:206 | source(...) : Object | LogInjectionTest.java:1929:186:1929:207 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:1930:180:1930:187 | source(...) : Object | LogInjectionTest.java:1930:171:1930:187 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1931:165:1931:172 | source(...) : Object | LogInjectionTest.java:1931:156:1931:172 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1932:150:1932:157 | source(...) : Object | LogInjectionTest.java:1932:141:1932:157 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1933:135:1933:142 | source(...) : Object | LogInjectionTest.java:1933:126:1933:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1934:120:1934:127 | source(...) : Object | LogInjectionTest.java:1934:111:1934:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1935:105:1935:112 | source(...) : Object | LogInjectionTest.java:1935:96:1935:112 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1936:90:1936:97 | source(...) : Object | LogInjectionTest.java:1936:81:1936:97 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1937:75:1937:82 | source(...) : Object | LogInjectionTest.java:1937:66:1937:82 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1938:60:1938:67 | source(...) : Object | LogInjectionTest.java:1938:51:1938:67 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1939:45:1939:52 | source(...) : Object | LogInjectionTest.java:1939:36:1939:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:17 | +| LogInjectionTest.java:1940:30:1940:37 | source(...) : Object | LogInjectionTest.java:1940:21:1940:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1942:30:1942:37 | source(...) : Object | LogInjectionTest.java:1942:21:1942:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1943:30:1943:37 | source(...) : Object | LogInjectionTest.java:1943:21:1943:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1944:30:1944:37 | source(...) : Object | LogInjectionTest.java:1944:21:1944:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1945:30:1945:37 | source(...) : Object | LogInjectionTest.java:1945:21:1945:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:1946:30:1946:37 | source(...) : Object | LogInjectionTest.java:1946:21:1946:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1947:30:1947:37 | source(...) : Object | LogInjectionTest.java:1947:21:1947:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1949:30:1949:37 | source(...) : Object | LogInjectionTest.java:1949:21:1949:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1951:30:1951:37 | source(...) : Object | LogInjectionTest.java:1951:21:1951:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | @@ -3741,15 +3738,10 @@ edges | LogInjectionTest.java:1965:30:1965:37 | source(...) : Object | LogInjectionTest.java:1965:21:1965:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1967:30:1967:37 | source(...) : Object | LogInjectionTest.java:1967:21:1967:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1969:30:1969:37 | source(...) : Object | LogInjectionTest.java:1969:21:1969:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1970:30:1970:37 | source(...) : Object | LogInjectionTest.java:1970:21:1970:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1971:30:1971:37 | source(...) : Object | LogInjectionTest.java:1971:21:1971:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1972:30:1972:37 | source(...) : Object | LogInjectionTest.java:1972:21:1972:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1973:30:1973:37 | source(...) : Object | LogInjectionTest.java:1973:21:1973:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1974:30:1974:37 | source(...) : Object | LogInjectionTest.java:1974:21:1974:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1975:30:1975:37 | source(...) : Object | LogInjectionTest.java:1975:21:1975:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1976:30:1976:37 | source(...) : Object | LogInjectionTest.java:1976:21:1976:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1977:30:1977:37 | source(...) : Object | LogInjectionTest.java:1977:21:1977:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:1978:30:1978:37 | source(...) : Object | LogInjectionTest.java:1978:21:1978:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1979:30:1979:37 | source(...) : Object | LogInjectionTest.java:1979:21:1979:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1980:30:1980:37 | source(...) : Object | LogInjectionTest.java:1980:21:1980:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:1981:30:1981:37 | source(...) : Object | LogInjectionTest.java:1981:21:1981:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | @@ -3804,101 +3796,111 @@ edges | LogInjectionTest.java:2030:30:2030:37 | source(...) : Object | LogInjectionTest.java:2030:21:2030:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:2031:30:2031:37 | source(...) : Object | LogInjectionTest.java:2031:21:2031:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | | LogInjectionTest.java:2032:30:2032:37 | source(...) : Object | LogInjectionTest.java:2032:21:2032:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | -| LogInjectionTest.java:2037:36:2037:43 | source(...) : Object | LogInjectionTest.java:2037:27:2037:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:20 | -| LogInjectionTest.java:2038:57:2038:64 | source(...) : Object | LogInjectionTest.java:2038:27:2038:64 | (...)... | provenance | Src:MaD:536 Sink:MaD:20 | -| LogInjectionTest.java:2039:34:2039:41 | source(...) : Object | LogInjectionTest.java:2039:25:2039:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:26 | -| LogInjectionTest.java:2040:55:2040:62 | source(...) : Object | LogInjectionTest.java:2040:25:2040:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:26 | -| LogInjectionTest.java:2041:35:2041:42 | source(...) : Object | LogInjectionTest.java:2041:26:2041:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:27 | -| LogInjectionTest.java:2042:56:2042:63 | source(...) : Object | LogInjectionTest.java:2042:26:2042:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:27 | -| LogInjectionTest.java:2043:36:2043:43 | source(...) : Object | LogInjectionTest.java:2043:27:2043:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:28 | -| LogInjectionTest.java:2044:57:2044:64 | source(...) : Object | LogInjectionTest.java:2044:27:2044:64 | (...)... | provenance | Src:MaD:536 Sink:MaD:28 | -| LogInjectionTest.java:2045:34:2045:41 | source(...) : Object | LogInjectionTest.java:2045:25:2045:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:29 | -| LogInjectionTest.java:2046:55:2046:62 | source(...) : Object | LogInjectionTest.java:2046:25:2046:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:29 | -| LogInjectionTest.java:2047:36:2047:43 | source(...) : Object | LogInjectionTest.java:2047:27:2047:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:52 | -| LogInjectionTest.java:2048:57:2048:64 | source(...) : Object | LogInjectionTest.java:2048:27:2048:64 | (...)... | provenance | Src:MaD:536 Sink:MaD:52 | -| LogInjectionTest.java:2049:37:2049:44 | source(...) : Object | LogInjectionTest.java:2049:28:2049:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:53 | -| LogInjectionTest.java:2050:58:2050:65 | source(...) : Object | LogInjectionTest.java:2050:28:2050:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:53 | -| LogInjectionTest.java:2051:38:2051:45 | source(...) : Object | LogInjectionTest.java:2051:29:2051:45 | (...)... | provenance | Src:MaD:536 Sink:MaD:21 | -| LogInjectionTest.java:2052:53:2052:60 | source(...) : Object | LogInjectionTest.java:2052:44:2052:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:21 | -| LogInjectionTest.java:2053:38:2053:45 | source(...) : Object | LogInjectionTest.java:2053:29:2053:45 | (...)... | provenance | Src:MaD:536 Sink:MaD:22 | -| LogInjectionTest.java:2054:53:2054:60 | source(...) : Object | LogInjectionTest.java:2054:44:2054:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:22 | -| LogInjectionTest.java:2055:68:2055:75 | source(...) : Object | LogInjectionTest.java:2055:59:2055:75 | (...)... | provenance | Src:MaD:536 Sink:MaD:22 | -| LogInjectionTest.java:2056:38:2056:45 | source(...) : Object | LogInjectionTest.java:2056:29:2056:45 | (...)... | provenance | Src:MaD:536 Sink:MaD:23 | -| LogInjectionTest.java:2057:53:2057:60 | source(...) : Object | LogInjectionTest.java:2057:44:2057:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:23 | -| LogInjectionTest.java:2058:59:2058:81 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2058:59:2058:81 | new Object[] | provenance | Sink:MaD:23 | -| LogInjectionTest.java:2058:73:2058:80 | source(...) : Object | LogInjectionTest.java:2058:59:2058:81 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:2059:37:2059:44 | source(...) : Object | LogInjectionTest.java:2059:28:2059:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:24 | -| LogInjectionTest.java:2060:52:2060:59 | source(...) : Object | LogInjectionTest.java:2060:43:2060:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:24 | -| LogInjectionTest.java:2061:37:2061:44 | source(...) : Object | LogInjectionTest.java:2061:28:2061:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:25 | -| LogInjectionTest.java:2062:52:2062:59 | source(...) : Object | LogInjectionTest.java:2062:43:2062:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:25 | -| LogInjectionTest.java:2063:67:2063:74 | source(...) : Object | LogInjectionTest.java:2063:58:2063:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:25 | -| LogInjectionTest.java:2064:65:2064:72 | source(...) : Object | LogInjectionTest.java:2064:56:2064:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:30 | -| LogInjectionTest.java:2065:65:2065:72 | source(...) : Object | LogInjectionTest.java:2065:56:2065:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:31 | -| LogInjectionTest.java:2067:65:2067:72 | source(...) : Object | LogInjectionTest.java:2067:56:2067:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:32 | -| LogInjectionTest.java:2068:71:2068:92 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2068:71:2068:92 | new Object[] | provenance | Sink:MaD:32 | -| LogInjectionTest.java:2068:84:2068:91 | source(...) : Object | LogInjectionTest.java:2068:71:2068:92 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:2069:65:2069:72 | source(...) : Object | LogInjectionTest.java:2069:56:2069:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:33 | -| LogInjectionTest.java:2070:86:2070:93 | source(...) : Object | LogInjectionTest.java:2070:56:2070:93 | (...)... | provenance | Src:MaD:536 Sink:MaD:34 | -| LogInjectionTest.java:2071:104:2071:111 | source(...) : Object | LogInjectionTest.java:2071:74:2071:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:35 | -| LogInjectionTest.java:2072:36:2072:43 | source(...) : Object | LogInjectionTest.java:2072:24:2072:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:36 | -| LogInjectionTest.java:2073:66:2073:73 | source(...) : Object | LogInjectionTest.java:2073:57:2073:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:37 | -| LogInjectionTest.java:2074:81:2074:88 | source(...) : Object | LogInjectionTest.java:2074:72:2074:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:37 | -| LogInjectionTest.java:2075:96:2075:103 | source(...) : Object | LogInjectionTest.java:2075:87:2075:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:37 | -| LogInjectionTest.java:2076:66:2076:73 | source(...) : Object | LogInjectionTest.java:2076:57:2076:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:38 | -| LogInjectionTest.java:2077:81:2077:88 | source(...) : Object | LogInjectionTest.java:2077:72:2077:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:38 | -| LogInjectionTest.java:2078:96:2078:103 | source(...) : Object | LogInjectionTest.java:2078:87:2078:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:38 | -| LogInjectionTest.java:2080:66:2080:73 | source(...) : Object | LogInjectionTest.java:2080:57:2080:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:39 | -| LogInjectionTest.java:2081:81:2081:88 | source(...) : Object | LogInjectionTest.java:2081:72:2081:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:39 | -| LogInjectionTest.java:2082:96:2082:103 | source(...) : Object | LogInjectionTest.java:2082:87:2082:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:39 | -| LogInjectionTest.java:2083:102:2083:124 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2083:102:2083:124 | new Object[] | provenance | Sink:MaD:39 | -| LogInjectionTest.java:2083:116:2083:123 | source(...) : Object | LogInjectionTest.java:2083:102:2083:124 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:2084:66:2084:73 | source(...) : Object | LogInjectionTest.java:2084:57:2084:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:40 | -| LogInjectionTest.java:2085:81:2085:88 | source(...) : Object | LogInjectionTest.java:2085:72:2085:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:40 | -| LogInjectionTest.java:2086:96:2086:103 | source(...) : Object | LogInjectionTest.java:2086:87:2086:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:40 | -| LogInjectionTest.java:2087:66:2087:73 | source(...) : Object | LogInjectionTest.java:2087:57:2087:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:41 | -| LogInjectionTest.java:2088:81:2088:88 | source(...) : Object | LogInjectionTest.java:2088:72:2088:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:41 | -| LogInjectionTest.java:2089:117:2089:124 | source(...) : Object | LogInjectionTest.java:2089:87:2089:124 | (...)... | provenance | Src:MaD:536 Sink:MaD:41 | -| LogInjectionTest.java:2090:66:2090:73 | source(...) : Object | LogInjectionTest.java:2090:57:2090:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:42 | -| LogInjectionTest.java:2091:81:2091:88 | source(...) : Object | LogInjectionTest.java:2091:72:2091:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:42 | -| LogInjectionTest.java:2092:135:2092:142 | source(...) : Object | LogInjectionTest.java:2092:105:2092:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:43 | -| LogInjectionTest.java:2093:67:2093:74 | source(...) : Object | LogInjectionTest.java:2093:58:2093:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:44 | -| LogInjectionTest.java:2094:82:2094:89 | source(...) : Object | LogInjectionTest.java:2094:73:2094:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:44 | -| LogInjectionTest.java:2095:120:2095:127 | source(...) : Object | LogInjectionTest.java:2095:111:2095:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:45 | -| LogInjectionTest.java:2096:126:2096:148 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2096:126:2096:148 | new Object[] | provenance | Sink:MaD:45 | -| LogInjectionTest.java:2096:140:2096:147 | source(...) : Object | LogInjectionTest.java:2096:126:2096:148 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:2097:67:2097:74 | source(...) : Object | LogInjectionTest.java:2097:58:2097:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:46 | -| LogInjectionTest.java:2098:82:2098:89 | source(...) : Object | LogInjectionTest.java:2098:73:2098:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:46 | -| LogInjectionTest.java:2099:120:2099:127 | source(...) : Object | LogInjectionTest.java:2099:111:2099:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:47 | -| LogInjectionTest.java:2100:67:2100:74 | source(...) : Object | LogInjectionTest.java:2100:58:2100:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | -| LogInjectionTest.java:2101:82:2101:89 | source(...) : Object | LogInjectionTest.java:2101:73:2101:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | -| LogInjectionTest.java:2102:97:2102:104 | source(...) : Object | LogInjectionTest.java:2102:88:2102:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | -| LogInjectionTest.java:2103:112:2103:119 | source(...) : Object | LogInjectionTest.java:2103:103:2103:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | -| LogInjectionTest.java:2104:67:2104:74 | source(...) : Object | LogInjectionTest.java:2104:58:2104:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | -| LogInjectionTest.java:2105:82:2105:89 | source(...) : Object | LogInjectionTest.java:2105:73:2105:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | -| LogInjectionTest.java:2106:97:2106:104 | source(...) : Object | LogInjectionTest.java:2106:88:2106:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | -| LogInjectionTest.java:2107:112:2107:119 | source(...) : Object | LogInjectionTest.java:2107:103:2107:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | -| LogInjectionTest.java:2109:67:2109:74 | source(...) : Object | LogInjectionTest.java:2109:58:2109:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | -| LogInjectionTest.java:2110:82:2110:89 | source(...) : Object | LogInjectionTest.java:2110:73:2110:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | -| LogInjectionTest.java:2111:97:2111:104 | source(...) : Object | LogInjectionTest.java:2111:88:2111:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | -| LogInjectionTest.java:2112:112:2112:119 | source(...) : Object | LogInjectionTest.java:2112:103:2112:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | -| LogInjectionTest.java:2113:118:2113:140 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2113:118:2113:140 | new Object[] | provenance | Sink:MaD:50 | -| LogInjectionTest.java:2113:132:2113:139 | source(...) : Object | LogInjectionTest.java:2113:118:2113:140 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | -| LogInjectionTest.java:2114:67:2114:74 | source(...) : Object | LogInjectionTest.java:2114:58:2114:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | -| LogInjectionTest.java:2115:82:2115:89 | source(...) : Object | LogInjectionTest.java:2115:73:2115:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | -| LogInjectionTest.java:2116:97:2116:104 | source(...) : Object | LogInjectionTest.java:2116:88:2116:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | -| LogInjectionTest.java:2117:112:2117:119 | source(...) : Object | LogInjectionTest.java:2117:103:2117:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | -| LogInjectionTest.java:2121:45:2121:52 | source(...) : Object | LogInjectionTest.java:2121:36:2121:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:1 | -| LogInjectionTest.java:2122:45:2122:52 | source(...) : Object | LogInjectionTest.java:2122:36:2122:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:4 | -| LogInjectionTest.java:2123:45:2123:52 | source(...) : Object | LogInjectionTest.java:2123:36:2123:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:3 | -| LogInjectionTest.java:2124:45:2124:52 | source(...) : Object | LogInjectionTest.java:2124:36:2124:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:5 | -| LogInjectionTest.java:2125:45:2125:52 | source(...) : Object | LogInjectionTest.java:2125:36:2125:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:2 | -| LogInjectionTest.java:2126:47:2126:54 | source(...) : Object | LogInjectionTest.java:2126:38:2126:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:6 | -| LogInjectionTest.java:2131:47:2131:54 | source(...) : Object | LogInjectionTest.java:2131:38:2131:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:54 | -| LogInjectionTest.java:2133:47:2133:54 | source(...) : Object | LogInjectionTest.java:2133:38:2133:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:55 | -| LogInjectionTest.java:2135:47:2135:54 | source(...) : Object | LogInjectionTest.java:2135:38:2135:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:56 | -| LogInjectionTest.java:2137:47:2137:54 | source(...) : Object | LogInjectionTest.java:2137:38:2137:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:57 | -| LogInjectionTest.java:2139:47:2139:54 | source(...) : Object | LogInjectionTest.java:2139:38:2139:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:58 | -| LogInjectionTest.java:2141:47:2141:54 | source(...) : Object | LogInjectionTest.java:2141:38:2141:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:59 | +| LogInjectionTest.java:2033:30:2033:37 | source(...) : Object | LogInjectionTest.java:2033:21:2033:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2034:30:2034:37 | source(...) : Object | LogInjectionTest.java:2034:21:2034:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2035:30:2035:37 | source(...) : Object | LogInjectionTest.java:2035:21:2035:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2036:30:2036:37 | source(...) : Object | LogInjectionTest.java:2036:21:2036:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2037:30:2037:37 | source(...) : Object | LogInjectionTest.java:2037:21:2037:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2038:30:2038:37 | source(...) : Object | LogInjectionTest.java:2038:21:2038:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2039:30:2039:37 | source(...) : Object | LogInjectionTest.java:2039:21:2039:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2040:30:2040:37 | source(...) : Object | LogInjectionTest.java:2040:21:2040:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2041:30:2041:37 | source(...) : Object | LogInjectionTest.java:2041:21:2041:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2042:30:2042:37 | source(...) : Object | LogInjectionTest.java:2042:21:2042:37 | (...)... | provenance | Src:MaD:536 Sink:MaD:18 | +| LogInjectionTest.java:2047:36:2047:43 | source(...) : Object | LogInjectionTest.java:2047:27:2047:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:20 | +| LogInjectionTest.java:2048:57:2048:64 | source(...) : Object | LogInjectionTest.java:2048:27:2048:64 | (...)... | provenance | Src:MaD:536 Sink:MaD:20 | +| LogInjectionTest.java:2049:34:2049:41 | source(...) : Object | LogInjectionTest.java:2049:25:2049:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:26 | +| LogInjectionTest.java:2050:55:2050:62 | source(...) : Object | LogInjectionTest.java:2050:25:2050:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:26 | +| LogInjectionTest.java:2051:35:2051:42 | source(...) : Object | LogInjectionTest.java:2051:26:2051:42 | (...)... | provenance | Src:MaD:536 Sink:MaD:27 | +| LogInjectionTest.java:2052:56:2052:63 | source(...) : Object | LogInjectionTest.java:2052:26:2052:63 | (...)... | provenance | Src:MaD:536 Sink:MaD:27 | +| LogInjectionTest.java:2053:36:2053:43 | source(...) : Object | LogInjectionTest.java:2053:27:2053:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:28 | +| LogInjectionTest.java:2054:57:2054:64 | source(...) : Object | LogInjectionTest.java:2054:27:2054:64 | (...)... | provenance | Src:MaD:536 Sink:MaD:28 | +| LogInjectionTest.java:2055:34:2055:41 | source(...) : Object | LogInjectionTest.java:2055:25:2055:41 | (...)... | provenance | Src:MaD:536 Sink:MaD:29 | +| LogInjectionTest.java:2056:55:2056:62 | source(...) : Object | LogInjectionTest.java:2056:25:2056:62 | (...)... | provenance | Src:MaD:536 Sink:MaD:29 | +| LogInjectionTest.java:2057:36:2057:43 | source(...) : Object | LogInjectionTest.java:2057:27:2057:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:52 | +| LogInjectionTest.java:2058:57:2058:64 | source(...) : Object | LogInjectionTest.java:2058:27:2058:64 | (...)... | provenance | Src:MaD:536 Sink:MaD:52 | +| LogInjectionTest.java:2059:37:2059:44 | source(...) : Object | LogInjectionTest.java:2059:28:2059:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:53 | +| LogInjectionTest.java:2060:58:2060:65 | source(...) : Object | LogInjectionTest.java:2060:28:2060:65 | (...)... | provenance | Src:MaD:536 Sink:MaD:53 | +| LogInjectionTest.java:2061:38:2061:45 | source(...) : Object | LogInjectionTest.java:2061:29:2061:45 | (...)... | provenance | Src:MaD:536 Sink:MaD:21 | +| LogInjectionTest.java:2062:53:2062:60 | source(...) : Object | LogInjectionTest.java:2062:44:2062:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:21 | +| LogInjectionTest.java:2063:38:2063:45 | source(...) : Object | LogInjectionTest.java:2063:29:2063:45 | (...)... | provenance | Src:MaD:536 Sink:MaD:22 | +| LogInjectionTest.java:2064:53:2064:60 | source(...) : Object | LogInjectionTest.java:2064:44:2064:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:22 | +| LogInjectionTest.java:2065:68:2065:75 | source(...) : Object | LogInjectionTest.java:2065:59:2065:75 | (...)... | provenance | Src:MaD:536 Sink:MaD:22 | +| LogInjectionTest.java:2066:38:2066:45 | source(...) : Object | LogInjectionTest.java:2066:29:2066:45 | (...)... | provenance | Src:MaD:536 Sink:MaD:23 | +| LogInjectionTest.java:2067:53:2067:60 | source(...) : Object | LogInjectionTest.java:2067:44:2067:60 | (...)... | provenance | Src:MaD:536 Sink:MaD:23 | +| LogInjectionTest.java:2068:59:2068:81 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2068:59:2068:81 | new Object[] | provenance | Sink:MaD:23 | +| LogInjectionTest.java:2068:73:2068:80 | source(...) : Object | LogInjectionTest.java:2068:59:2068:81 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:2069:37:2069:44 | source(...) : Object | LogInjectionTest.java:2069:28:2069:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:24 | +| LogInjectionTest.java:2070:52:2070:59 | source(...) : Object | LogInjectionTest.java:2070:43:2070:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:24 | +| LogInjectionTest.java:2071:37:2071:44 | source(...) : Object | LogInjectionTest.java:2071:28:2071:44 | (...)... | provenance | Src:MaD:536 Sink:MaD:25 | +| LogInjectionTest.java:2072:52:2072:59 | source(...) : Object | LogInjectionTest.java:2072:43:2072:59 | (...)... | provenance | Src:MaD:536 Sink:MaD:25 | +| LogInjectionTest.java:2073:67:2073:74 | source(...) : Object | LogInjectionTest.java:2073:58:2073:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:25 | +| LogInjectionTest.java:2074:65:2074:72 | source(...) : Object | LogInjectionTest.java:2074:56:2074:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:30 | +| LogInjectionTest.java:2075:65:2075:72 | source(...) : Object | LogInjectionTest.java:2075:56:2075:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:31 | +| LogInjectionTest.java:2077:65:2077:72 | source(...) : Object | LogInjectionTest.java:2077:56:2077:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:32 | +| LogInjectionTest.java:2078:71:2078:92 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2078:71:2078:92 | new Object[] | provenance | Sink:MaD:32 | +| LogInjectionTest.java:2078:84:2078:91 | source(...) : Object | LogInjectionTest.java:2078:71:2078:92 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:2079:65:2079:72 | source(...) : Object | LogInjectionTest.java:2079:56:2079:72 | (...)... | provenance | Src:MaD:536 Sink:MaD:33 | +| LogInjectionTest.java:2080:86:2080:93 | source(...) : Object | LogInjectionTest.java:2080:56:2080:93 | (...)... | provenance | Src:MaD:536 Sink:MaD:34 | +| LogInjectionTest.java:2081:104:2081:111 | source(...) : Object | LogInjectionTest.java:2081:74:2081:111 | (...)... | provenance | Src:MaD:536 Sink:MaD:35 | +| LogInjectionTest.java:2082:36:2082:43 | source(...) : Object | LogInjectionTest.java:2082:24:2082:43 | (...)... | provenance | Src:MaD:536 Sink:MaD:36 | +| LogInjectionTest.java:2083:66:2083:73 | source(...) : Object | LogInjectionTest.java:2083:57:2083:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:37 | +| LogInjectionTest.java:2084:81:2084:88 | source(...) : Object | LogInjectionTest.java:2084:72:2084:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:37 | +| LogInjectionTest.java:2085:96:2085:103 | source(...) : Object | LogInjectionTest.java:2085:87:2085:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:37 | +| LogInjectionTest.java:2086:66:2086:73 | source(...) : Object | LogInjectionTest.java:2086:57:2086:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:38 | +| LogInjectionTest.java:2087:81:2087:88 | source(...) : Object | LogInjectionTest.java:2087:72:2087:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:38 | +| LogInjectionTest.java:2088:96:2088:103 | source(...) : Object | LogInjectionTest.java:2088:87:2088:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:38 | +| LogInjectionTest.java:2090:66:2090:73 | source(...) : Object | LogInjectionTest.java:2090:57:2090:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:39 | +| LogInjectionTest.java:2091:81:2091:88 | source(...) : Object | LogInjectionTest.java:2091:72:2091:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:39 | +| LogInjectionTest.java:2092:96:2092:103 | source(...) : Object | LogInjectionTest.java:2092:87:2092:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:39 | +| LogInjectionTest.java:2093:102:2093:124 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2093:102:2093:124 | new Object[] | provenance | Sink:MaD:39 | +| LogInjectionTest.java:2093:116:2093:123 | source(...) : Object | LogInjectionTest.java:2093:102:2093:124 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:2094:66:2094:73 | source(...) : Object | LogInjectionTest.java:2094:57:2094:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:40 | +| LogInjectionTest.java:2095:81:2095:88 | source(...) : Object | LogInjectionTest.java:2095:72:2095:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:40 | +| LogInjectionTest.java:2096:96:2096:103 | source(...) : Object | LogInjectionTest.java:2096:87:2096:103 | (...)... | provenance | Src:MaD:536 Sink:MaD:40 | +| LogInjectionTest.java:2097:66:2097:73 | source(...) : Object | LogInjectionTest.java:2097:57:2097:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:41 | +| LogInjectionTest.java:2098:81:2098:88 | source(...) : Object | LogInjectionTest.java:2098:72:2098:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:41 | +| LogInjectionTest.java:2099:117:2099:124 | source(...) : Object | LogInjectionTest.java:2099:87:2099:124 | (...)... | provenance | Src:MaD:536 Sink:MaD:41 | +| LogInjectionTest.java:2100:66:2100:73 | source(...) : Object | LogInjectionTest.java:2100:57:2100:73 | (...)... | provenance | Src:MaD:536 Sink:MaD:42 | +| LogInjectionTest.java:2101:81:2101:88 | source(...) : Object | LogInjectionTest.java:2101:72:2101:88 | (...)... | provenance | Src:MaD:536 Sink:MaD:42 | +| LogInjectionTest.java:2102:135:2102:142 | source(...) : Object | LogInjectionTest.java:2102:105:2102:142 | (...)... | provenance | Src:MaD:536 Sink:MaD:43 | +| LogInjectionTest.java:2103:67:2103:74 | source(...) : Object | LogInjectionTest.java:2103:58:2103:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:44 | +| LogInjectionTest.java:2104:82:2104:89 | source(...) : Object | LogInjectionTest.java:2104:73:2104:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:44 | +| LogInjectionTest.java:2105:120:2105:127 | source(...) : Object | LogInjectionTest.java:2105:111:2105:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:45 | +| LogInjectionTest.java:2106:126:2106:148 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2106:126:2106:148 | new Object[] | provenance | Sink:MaD:45 | +| LogInjectionTest.java:2106:140:2106:147 | source(...) : Object | LogInjectionTest.java:2106:126:2106:148 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:2107:67:2107:74 | source(...) : Object | LogInjectionTest.java:2107:58:2107:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:46 | +| LogInjectionTest.java:2108:82:2108:89 | source(...) : Object | LogInjectionTest.java:2108:73:2108:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:46 | +| LogInjectionTest.java:2109:120:2109:127 | source(...) : Object | LogInjectionTest.java:2109:111:2109:127 | (...)... | provenance | Src:MaD:536 Sink:MaD:47 | +| LogInjectionTest.java:2110:67:2110:74 | source(...) : Object | LogInjectionTest.java:2110:58:2110:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | +| LogInjectionTest.java:2111:82:2111:89 | source(...) : Object | LogInjectionTest.java:2111:73:2111:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | +| LogInjectionTest.java:2112:97:2112:104 | source(...) : Object | LogInjectionTest.java:2112:88:2112:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | +| LogInjectionTest.java:2113:112:2113:119 | source(...) : Object | LogInjectionTest.java:2113:103:2113:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:48 | +| LogInjectionTest.java:2114:67:2114:74 | source(...) : Object | LogInjectionTest.java:2114:58:2114:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | +| LogInjectionTest.java:2115:82:2115:89 | source(...) : Object | LogInjectionTest.java:2115:73:2115:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | +| LogInjectionTest.java:2116:97:2116:104 | source(...) : Object | LogInjectionTest.java:2116:88:2116:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | +| LogInjectionTest.java:2117:112:2117:119 | source(...) : Object | LogInjectionTest.java:2117:103:2117:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:49 | +| LogInjectionTest.java:2119:67:2119:74 | source(...) : Object | LogInjectionTest.java:2119:58:2119:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | +| LogInjectionTest.java:2120:82:2120:89 | source(...) : Object | LogInjectionTest.java:2120:73:2120:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | +| LogInjectionTest.java:2121:97:2121:104 | source(...) : Object | LogInjectionTest.java:2121:88:2121:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | +| LogInjectionTest.java:2122:112:2122:119 | source(...) : Object | LogInjectionTest.java:2122:103:2122:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:50 | +| LogInjectionTest.java:2123:118:2123:140 | {...} : Object[] [[]] : Object | LogInjectionTest.java:2123:118:2123:140 | new Object[] | provenance | Sink:MaD:50 | +| LogInjectionTest.java:2123:132:2123:139 | source(...) : Object | LogInjectionTest.java:2123:118:2123:140 | {...} : Object[] [[]] : Object | provenance | Src:MaD:536 | +| LogInjectionTest.java:2124:67:2124:74 | source(...) : Object | LogInjectionTest.java:2124:58:2124:74 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | +| LogInjectionTest.java:2125:82:2125:89 | source(...) : Object | LogInjectionTest.java:2125:73:2125:89 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | +| LogInjectionTest.java:2126:97:2126:104 | source(...) : Object | LogInjectionTest.java:2126:88:2126:104 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | +| LogInjectionTest.java:2127:112:2127:119 | source(...) : Object | LogInjectionTest.java:2127:103:2127:119 | (...)... | provenance | Src:MaD:536 Sink:MaD:51 | +| LogInjectionTest.java:2131:45:2131:52 | source(...) : Object | LogInjectionTest.java:2131:36:2131:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:1 | +| LogInjectionTest.java:2132:45:2132:52 | source(...) : Object | LogInjectionTest.java:2132:36:2132:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:4 | +| LogInjectionTest.java:2133:45:2133:52 | source(...) : Object | LogInjectionTest.java:2133:36:2133:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:3 | +| LogInjectionTest.java:2134:45:2134:52 | source(...) : Object | LogInjectionTest.java:2134:36:2134:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:5 | +| LogInjectionTest.java:2135:45:2135:52 | source(...) : Object | LogInjectionTest.java:2135:36:2135:52 | (...)... | provenance | Src:MaD:536 Sink:MaD:2 | +| LogInjectionTest.java:2136:47:2136:54 | source(...) : Object | LogInjectionTest.java:2136:38:2136:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:6 | +| LogInjectionTest.java:2141:47:2141:54 | source(...) : Object | LogInjectionTest.java:2141:38:2141:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:54 | +| LogInjectionTest.java:2143:47:2143:54 | source(...) : Object | LogInjectionTest.java:2143:38:2143:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:55 | +| LogInjectionTest.java:2145:47:2145:54 | source(...) : Object | LogInjectionTest.java:2145:38:2145:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:56 | +| LogInjectionTest.java:2147:47:2147:54 | source(...) : Object | LogInjectionTest.java:2147:38:2147:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:57 | +| LogInjectionTest.java:2149:47:2149:54 | source(...) : Object | LogInjectionTest.java:2149:38:2149:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:58 | +| LogInjectionTest.java:2151:47:2151:54 | source(...) : Object | LogInjectionTest.java:2151:38:2151:54 | (...)... | provenance | Src:MaD:536 Sink:MaD:59 | models | 1 | Sink: android.util; Log; true; d; ; ; Argument[1]; log-injection; manual | | 2 | Sink: android.util; Log; true; e; ; ; Argument[1]; log-injection; manual | @@ -4439,213 +4441,195 @@ models | 537 | Summary: java.lang; String; false; replace; ; ; Argument[this]; ReturnValue; taint; manual | | 538 | Summary: java.lang; String; false; replaceAll; ; ; Argument[this]; ReturnValue; taint; manual | nodes -| LogInjectionTest.java:27:25:27:41 | (...)... : String | semmle.label | (...)... : String | -| LogInjectionTest.java:27:34:27:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:30:22:30:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:30:22:30:47 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:31:22:31:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:31:22:31:47 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:33:22:33:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:33:22:33:47 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:34:22:34:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:34:22:34:47 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:35:22:35:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:35:22:35:57 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:37:22:37:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:37:22:37:47 | replace(...) | semmle.label | replace(...) | +| LogInjectionTest.java:35:25:35:41 | (...)... : String | semmle.label | (...)... : String | +| LogInjectionTest.java:35:34:35:41 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:38:22:38:27 | source : String | semmle.label | source : String | | LogInjectionTest.java:38:22:38:47 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:40:22:40:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:40:22:40:47 | replace(...) | semmle.label | replace(...) | +| LogInjectionTest.java:39:22:39:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:39:22:39:47 | replace(...) | semmle.label | replace(...) | | LogInjectionTest.java:41:22:41:27 | source : String | semmle.label | source : String | | LogInjectionTest.java:41:22:41:47 | replace(...) | semmle.label | replace(...) | | LogInjectionTest.java:42:22:42:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:42:22:42:45 | replace(...) | semmle.label | replace(...) | -| LogInjectionTest.java:44:22:44:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:44:22:44:50 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:42:22:42:47 | replace(...) | semmle.label | replace(...) | +| LogInjectionTest.java:43:22:43:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:43:22:43:57 | replace(...) | semmle.label | replace(...) | | LogInjectionTest.java:45:22:45:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:45:22:45:50 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:47:22:47:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:47:22:47:50 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:45:22:45:47 | replace(...) | semmle.label | replace(...) | +| LogInjectionTest.java:46:22:46:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:46:22:46:47 | replace(...) | semmle.label | replace(...) | | LogInjectionTest.java:48:22:48:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:48:22:48:50 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:48:22:48:47 | replace(...) | semmle.label | replace(...) | +| LogInjectionTest.java:49:22:49:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:49:22:49:47 | replace(...) | semmle.label | replace(...) | | LogInjectionTest.java:50:22:50:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:50:22:50:51 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:51:22:51:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:51:22:51:51 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:50:22:50:45 | replace(...) | semmle.label | replace(...) | +| LogInjectionTest.java:52:22:52:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:52:22:52:50 | replaceAll(...) | semmle.label | replaceAll(...) | | LogInjectionTest.java:53:22:53:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:53:22:53:51 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:54:22:54:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:54:22:54:51 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:53:22:53:50 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:55:22:55:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:55:22:55:50 | replaceAll(...) | semmle.label | replaceAll(...) | | LogInjectionTest.java:56:22:56:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:56:22:56:51 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:57:22:57:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:57:22:57:51 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:56:22:56:50 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:58:22:58:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:58:22:58:51 | replaceAll(...) | semmle.label | replaceAll(...) | | LogInjectionTest.java:59:22:59:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:59:22:59:57 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:60:22:60:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:60:22:60:57 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:59:22:59:51 | replaceAll(...) | semmle.label | replaceAll(...) | | LogInjectionTest.java:61:22:61:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:61:22:61:57 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:61:22:61:51 | replaceAll(...) | semmle.label | replaceAll(...) | | LogInjectionTest.java:62:22:62:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:62:22:62:57 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:63:22:63:27 | source : String | semmle.label | source : String | -| LogInjectionTest.java:63:22:63:58 | replaceAll(...) | semmle.label | replaceAll(...) | -| LogInjectionTest.java:67:25:67:41 | (...)... : String | semmle.label | (...)... : String | -| LogInjectionTest.java:67:34:67:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:71:26:71:31 | source | semmle.label | source | -| LogInjectionTest.java:77:26:77:31 | source | semmle.label | source | -| LogInjectionTest.java:83:26:83:31 | source | semmle.label | source | -| LogInjectionTest.java:89:26:89:31 | source | semmle.label | source | -| LogInjectionTest.java:95:26:95:31 | source | semmle.label | source | -| LogInjectionTest.java:101:26:101:31 | source | semmle.label | source | -| LogInjectionTest.java:107:26:107:31 | source | semmle.label | source | -| LogInjectionTest.java:113:26:113:31 | source | semmle.label | source | -| LogInjectionTest.java:119:26:119:31 | source | semmle.label | source | -| LogInjectionTest.java:125:26:125:31 | source | semmle.label | source | +| LogInjectionTest.java:62:22:62:51 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:64:22:64:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:64:22:64:51 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:65:22:65:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:65:22:65:51 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:67:22:67:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:67:22:67:57 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:68:22:68:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:68:22:68:57 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:69:22:69:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:69:22:69:57 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:70:22:70:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:70:22:70:57 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:71:22:71:27 | source : String | semmle.label | source : String | +| LogInjectionTest.java:71:22:71:58 | replaceAll(...) | semmle.label | replaceAll(...) | +| LogInjectionTest.java:75:25:75:41 | (...)... : String | semmle.label | (...)... : String | +| LogInjectionTest.java:75:34:75:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:79:26:79:31 | source | semmle.label | source | +| LogInjectionTest.java:85:26:85:31 | source | semmle.label | source | +| LogInjectionTest.java:91:26:91:31 | source | semmle.label | source | +| LogInjectionTest.java:97:26:97:31 | source | semmle.label | source | +| LogInjectionTest.java:103:26:103:31 | source | semmle.label | source | +| LogInjectionTest.java:109:26:109:31 | source | semmle.label | source | +| LogInjectionTest.java:115:26:115:31 | source | semmle.label | source | +| LogInjectionTest.java:121:26:121:31 | source | semmle.label | source | +| LogInjectionTest.java:127:26:127:31 | source | semmle.label | source | | LogInjectionTest.java:133:26:133:31 | source | semmle.label | source | -| LogInjectionTest.java:139:26:139:31 | source | semmle.label | source | -| LogInjectionTest.java:145:26:145:31 | source | semmle.label | source | -| LogInjectionTest.java:151:26:151:31 | source | semmle.label | source | -| LogInjectionTest.java:157:26:157:31 | source | semmle.label | source | -| LogInjectionTest.java:163:26:163:31 | source | semmle.label | source | -| LogInjectionTest.java:167:26:167:31 | source | semmle.label | source | -| LogInjectionTest.java:169:26:169:31 | source | semmle.label | source | -| LogInjectionTest.java:173:26:173:31 | source | semmle.label | source | +| LogInjectionTest.java:141:26:141:31 | source | semmle.label | source | +| LogInjectionTest.java:147:26:147:31 | source | semmle.label | source | +| LogInjectionTest.java:153:26:153:31 | source | semmle.label | source | +| LogInjectionTest.java:159:26:159:31 | source | semmle.label | source | +| LogInjectionTest.java:165:26:165:31 | source | semmle.label | source | +| LogInjectionTest.java:171:26:171:31 | source | semmle.label | source | | LogInjectionTest.java:175:26:175:31 | source | semmle.label | source | -| LogInjectionTest.java:179:26:179:31 | source | semmle.label | source | -| LogInjectionTest.java:185:26:185:31 | source | semmle.label | source | -| LogInjectionTest.java:195:39:195:55 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:195:48:195:55 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:196:28:196:35 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:197:28:197:35 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:198:28:198:35 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:199:28:199:35 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:200:28:200:35 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:201:28:201:35 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:202:44:202:51 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:203:27:203:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:204:27:204:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:205:41:205:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:205:41:205:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:205:55:205:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:206:32:206:39 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:207:32:207:39 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:208:38:208:45 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:209:27:209:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:210:27:210:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:215:26:215:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:215:41:215:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:216:26:216:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:216:41:216:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:217:41:217:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:217:56:217:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:218:41:218:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:218:56:218:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:219:41:219:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:219:51:219:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:220:41:220:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:220:59:220:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:221:41:221:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:221:59:221:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:222:41:222:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:223:41:223:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:223:50:223:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:224:41:224:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:224:50:224:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:225:56:225:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:225:56:225:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:225:70:225:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:226:56:226:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:226:65:226:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:227:41:227:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:227:50:227:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:228:71:228:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:228:80:228:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:229:56:229:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:229:65:229:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:230:41:230:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:230:50:230:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:231:86:231:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:231:95:231:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:232:71:232:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:232:80:232:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:233:56:233:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:233:65:233:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:177:26:177:31 | source | semmle.label | source | +| LogInjectionTest.java:181:26:181:31 | source | semmle.label | source | +| LogInjectionTest.java:183:26:183:31 | source | semmle.label | source | +| LogInjectionTest.java:187:26:187:31 | source | semmle.label | source | +| LogInjectionTest.java:193:26:193:31 | source | semmle.label | source | +| LogInjectionTest.java:198:22:198:40 | validatedInputField | semmle.label | validatedInputField | +| LogInjectionTest.java:199:22:199:37 | validatedInput(...) | semmle.label | validatedInput(...) | +| LogInjectionTest.java:205:39:205:55 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:205:48:205:55 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:206:28:206:35 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:207:28:207:35 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:208:28:208:35 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:209:28:209:35 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:210:28:210:35 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:211:28:211:35 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:212:44:212:51 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:213:27:213:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:214:27:214:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:215:41:215:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:215:41:215:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:215:55:215:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:216:32:216:39 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:217:32:217:39 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:218:38:218:45 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:219:27:219:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:220:27:220:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:225:26:225:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:225:41:225:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:226:26:226:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:226:41:226:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:227:41:227:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:227:56:227:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:228:41:228:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:228:56:228:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:229:41:229:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:229:51:229:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:230:41:230:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:230:59:230:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:231:41:231:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:231:59:231:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:232:41:232:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:233:41:233:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:233:50:233:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:234:41:234:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:234:50:234:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:235:101:235:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:235:110:235:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:236:86:236:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:236:95:236:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:237:71:237:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:237:80:237:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:238:56:238:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:238:65:238:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:239:41:239:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:239:50:239:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:240:116:240:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:240:125:240:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:241:101:241:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:241:110:241:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:242:86:242:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:242:95:242:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:243:71:243:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:243:80:243:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:244:56:244:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:244:65:244:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:245:41:245:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:245:50:245:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:246:131:246:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:246:140:246:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:247:116:247:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:247:125:247:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:248:101:248:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:248:110:248:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:249:86:249:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:249:95:249:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:250:71:250:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:250:80:250:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:251:56:251:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:251:65:251:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:252:41:252:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:252:50:252:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:253:146:253:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:253:155:253:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:254:131:254:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:254:140:254:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:255:116:255:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:255:125:255:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:256:101:256:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:256:110:256:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:257:86:257:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:257:95:257:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:258:71:258:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:258:80:258:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:259:56:259:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:259:65:259:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:260:41:260:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:260:50:260:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:261:161:261:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:261:170:261:177 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:262:146:262:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:262:155:262:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:263:131:263:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:263:140:263:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:264:116:264:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:264:125:264:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:265:101:265:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:265:110:265:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:266:86:266:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:266:95:266:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:267:71:267:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:267:80:267:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:268:56:268:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:268:65:268:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:269:41:269:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:269:50:269:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:270:176:270:192 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:270:185:270:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:235:56:235:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:235:56:235:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:235:70:235:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:236:56:236:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:236:65:236:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:237:41:237:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:237:50:237:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:238:71:238:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:238:80:238:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:239:56:239:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:239:65:239:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:240:41:240:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:240:50:240:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:241:86:241:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:241:95:241:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:242:71:242:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:242:80:242:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:243:56:243:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:243:65:243:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:244:41:244:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:244:50:244:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:245:101:245:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:245:110:245:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:246:86:246:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:246:95:246:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:247:71:247:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:247:80:247:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:248:56:248:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:248:65:248:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:249:41:249:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:249:50:249:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:250:116:250:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:250:125:250:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:251:101:251:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:251:110:251:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:252:86:252:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:252:95:252:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:253:71:253:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:253:80:253:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:254:56:254:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:254:65:254:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:255:41:255:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:255:50:255:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:256:131:256:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:256:140:256:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:257:116:257:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:257:125:257:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:258:101:258:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:258:110:258:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:259:86:259:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:259:95:259:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:260:71:260:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:260:80:260:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:261:56:261:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:261:65:261:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:262:41:262:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:262:50:262:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:263:146:263:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:263:155:263:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:264:131:264:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:264:140:264:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:265:116:265:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:265:125:265:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:266:101:266:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:266:110:266:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:267:86:267:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:267:95:267:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:268:71:268:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:268:80:268:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:269:56:269:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:269:65:269:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:270:41:270:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:270:50:270:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:271:161:271:177 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:271:170:271:177 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:272:146:272:162 | (...)... | semmle.label | (...)... | @@ -4664,123 +4648,123 @@ nodes | LogInjectionTest.java:278:65:278:72 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:279:41:279:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:279:50:279:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:280:41:280:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:280:50:280:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:281:56:281:77 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:281:70:281:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:282:41:282:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:282:50:282:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:283:41:283:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:283:55:283:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:284:41:284:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:284:55:284:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:285:26:285:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:285:44:285:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:286:26:286:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:286:44:286:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:287:26:287:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:287:36:287:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:288:26:288:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:288:36:288:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:289:26:289:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:290:26:290:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:291:26:291:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:291:35:291:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:292:26:292:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:292:35:292:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:293:41:293:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:293:41:293:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:280:176:280:192 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:280:185:280:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:281:161:281:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:281:170:281:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:282:146:282:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:282:155:282:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:283:131:283:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:283:140:283:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:284:116:284:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:284:125:284:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:285:101:285:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:285:110:285:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:286:86:286:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:286:95:286:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:287:71:287:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:287:80:287:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:288:56:288:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:288:65:288:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:289:41:289:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:289:50:289:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:290:41:290:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:290:50:290:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:291:56:291:77 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:291:70:291:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:292:41:292:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:292:50:292:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:293:41:293:62 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:293:55:293:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:294:41:294:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:294:50:294:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:295:26:295:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:295:35:295:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:296:56:296:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:296:65:296:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:297:41:297:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:297:50:297:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:298:26:298:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:298:35:298:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:299:71:299:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:299:80:299:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:300:56:300:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:300:65:300:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:301:41:301:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:301:50:301:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:294:41:294:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:294:55:294:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:295:26:295:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:295:44:295:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:296:26:296:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:296:44:296:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:297:26:297:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:297:36:297:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:298:26:298:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:298:36:298:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:299:26:299:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:300:26:300:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:301:26:301:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:301:35:301:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:302:26:302:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:302:35:302:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:303:86:303:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:303:95:303:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:304:71:304:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:304:80:304:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:305:56:305:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:305:65:305:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:306:41:306:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:306:50:306:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:307:26:307:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:307:35:307:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:308:101:308:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:308:110:308:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:309:86:309:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:309:95:309:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:310:71:310:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:310:80:310:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:311:56:311:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:311:65:311:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:312:41:312:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:312:50:312:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:313:26:313:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:313:35:313:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:314:116:314:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:314:125:314:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:315:101:315:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:315:110:315:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:316:86:316:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:316:95:316:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:317:71:317:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:317:80:317:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:318:56:318:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:318:65:318:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:319:41:319:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:319:50:319:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:320:26:320:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:320:35:320:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:321:131:321:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:321:140:321:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:322:116:322:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:322:125:322:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:323:101:323:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:323:110:323:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:324:86:324:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:324:95:324:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:325:71:325:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:325:80:325:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:326:56:326:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:326:65:326:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:327:41:327:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:327:50:327:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:328:26:328:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:328:35:328:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:329:146:329:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:329:155:329:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:330:131:330:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:330:140:330:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:331:116:331:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:331:125:331:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:332:101:332:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:332:110:332:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:333:86:333:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:333:95:333:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:334:71:334:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:334:80:334:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:335:56:335:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:335:65:335:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:336:41:336:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:336:50:336:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:337:26:337:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:337:35:337:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:338:161:338:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:338:170:338:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:303:41:303:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:303:41:303:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:303:55:303:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:304:41:304:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:304:50:304:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:305:26:305:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:305:35:305:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:306:56:306:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:306:65:306:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:307:41:307:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:307:50:307:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:308:26:308:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:308:35:308:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:309:71:309:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:309:80:309:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:310:56:310:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:310:65:310:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:311:41:311:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:311:50:311:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:312:26:312:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:312:35:312:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:313:86:313:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:313:95:313:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:314:71:314:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:314:80:314:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:315:56:315:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:315:65:315:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:316:41:316:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:316:50:316:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:317:26:317:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:317:35:317:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:318:101:318:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:318:110:318:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:319:86:319:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:319:95:319:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:320:71:320:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:320:80:320:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:321:56:321:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:321:65:321:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:322:41:322:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:322:50:322:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:323:26:323:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:323:35:323:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:324:116:324:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:324:125:324:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:325:101:325:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:325:110:325:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:326:86:326:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:326:95:326:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:327:71:327:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:327:80:327:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:328:56:328:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:328:65:328:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:329:41:329:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:329:50:329:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:330:26:330:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:330:35:330:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:331:131:331:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:331:140:331:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:332:116:332:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:332:125:332:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:333:101:333:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:333:110:333:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:334:86:334:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:334:95:334:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:335:71:335:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:335:80:335:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:336:56:336:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:336:65:336:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:337:41:337:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:337:50:337:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:338:26:338:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:338:35:338:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:339:146:339:162 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:339:155:339:162 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:340:131:340:147 | (...)... | semmle.label | (...)... | @@ -4799,128 +4783,128 @@ nodes | LogInjectionTest.java:346:50:346:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:347:26:347:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:347:35:347:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:348:26:348:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:348:35:348:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:349:41:349:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:349:55:349:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:350:26:350:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:350:35:350:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:351:26:351:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:351:40:351:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:352:26:352:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:352:40:352:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:353:26:353:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:353:41:353:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:354:26:354:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:354:41:354:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:355:41:355:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:355:56:355:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:356:41:356:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:356:56:356:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:357:41:357:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:357:51:357:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:358:41:358:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:358:59:358:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:359:41:359:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:359:59:359:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:360:41:360:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:361:41:361:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:361:50:361:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:362:41:362:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:362:50:362:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:363:56:363:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:363:56:363:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:363:70:363:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:364:56:364:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:364:65:364:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:365:41:365:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:365:50:365:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:366:71:366:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:366:80:366:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:367:56:367:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:367:65:367:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:368:41:368:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:368:50:368:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:369:86:369:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:369:95:369:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:370:71:370:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:370:80:370:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:371:56:371:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:371:65:371:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:348:161:348:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:348:170:348:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:349:146:349:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:349:155:349:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:350:131:350:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:350:140:350:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:351:116:351:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:351:125:351:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:352:101:352:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:352:110:352:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:353:86:353:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:353:95:353:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:354:71:354:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:354:80:354:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:355:56:355:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:355:65:355:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:356:41:356:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:356:50:356:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:357:26:357:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:357:35:357:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:358:26:358:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:358:35:358:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:359:41:359:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:359:55:359:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:360:26:360:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:360:35:360:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:361:26:361:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:361:40:361:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:362:26:362:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:362:40:362:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:363:26:363:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:363:41:363:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:364:26:364:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:364:41:364:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:365:41:365:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:365:56:365:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:366:41:366:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:366:56:366:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:367:41:367:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:367:51:367:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:368:41:368:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:368:59:368:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:369:41:369:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:369:59:369:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:370:41:370:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:371:41:371:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:371:50:371:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:372:41:372:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:372:50:372:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:373:101:373:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:373:110:373:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:374:86:374:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:374:95:374:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:375:71:375:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:375:80:375:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:376:56:376:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:376:65:376:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:377:41:377:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:377:50:377:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:378:116:378:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:378:125:378:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:379:101:379:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:379:110:379:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:380:86:380:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:380:95:380:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:381:71:381:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:381:80:381:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:382:56:382:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:382:65:382:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:383:41:383:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:383:50:383:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:384:131:384:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:384:140:384:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:385:116:385:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:385:125:385:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:386:101:386:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:386:110:386:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:387:86:387:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:387:95:387:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:388:71:388:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:388:80:388:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:389:56:389:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:389:65:389:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:390:41:390:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:390:50:390:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:391:146:391:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:391:155:391:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:392:131:392:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:392:140:392:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:393:116:393:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:393:125:393:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:394:101:394:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:394:110:394:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:395:86:395:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:395:95:395:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:396:71:396:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:396:80:396:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:397:56:397:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:397:65:397:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:398:41:398:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:398:50:398:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:399:161:399:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:399:170:399:177 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:400:146:400:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:400:155:400:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:401:131:401:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:401:140:401:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:402:116:402:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:402:125:402:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:403:101:403:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:403:110:403:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:404:86:404:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:404:95:404:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:405:71:405:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:405:80:405:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:406:56:406:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:406:65:406:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:407:41:407:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:407:50:407:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:408:176:408:192 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:408:185:408:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:373:56:373:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:373:56:373:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:373:70:373:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:374:56:374:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:374:65:374:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:375:41:375:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:375:50:375:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:376:71:376:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:376:80:376:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:377:56:377:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:377:65:377:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:378:41:378:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:378:50:378:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:379:86:379:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:379:95:379:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:380:71:380:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:380:80:380:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:381:56:381:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:381:65:381:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:382:41:382:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:382:50:382:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:383:101:383:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:383:110:383:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:384:86:384:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:384:95:384:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:385:71:385:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:385:80:385:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:386:56:386:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:386:65:386:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:387:41:387:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:387:50:387:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:388:116:388:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:388:125:388:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:389:101:389:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:389:110:389:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:390:86:390:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:390:95:390:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:391:71:391:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:391:80:391:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:392:56:392:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:392:65:392:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:393:41:393:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:393:50:393:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:394:131:394:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:394:140:394:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:395:116:395:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:395:125:395:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:396:101:396:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:396:110:396:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:397:86:397:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:397:95:397:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:398:71:398:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:398:80:398:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:399:56:399:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:399:65:399:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:400:41:400:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:400:50:400:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:401:146:401:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:401:155:401:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:402:131:402:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:402:140:402:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:403:116:403:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:403:125:403:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:404:101:404:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:404:110:404:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:405:86:405:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:405:95:405:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:406:71:406:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:406:80:406:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:407:56:407:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:407:65:407:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:408:41:408:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:408:50:408:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:409:161:409:177 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:409:170:409:177 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:410:146:410:162 | (...)... | semmle.label | (...)... | @@ -4939,123 +4923,123 @@ nodes | LogInjectionTest.java:416:65:416:72 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:417:41:417:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:417:50:417:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:418:41:418:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:418:50:418:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:419:56:419:77 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:419:70:419:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:420:41:420:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:420:50:420:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:421:41:421:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:421:55:421:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:422:41:422:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:422:55:422:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:423:26:423:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:423:44:423:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:424:26:424:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:424:44:424:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:425:26:425:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:425:36:425:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:426:26:426:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:426:36:426:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:427:26:427:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:428:26:428:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:429:26:429:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:429:35:429:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:430:26:430:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:430:35:430:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:431:41:431:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:431:41:431:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:418:176:418:192 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:418:185:418:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:419:161:419:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:419:170:419:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:420:146:420:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:420:155:420:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:421:131:421:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:421:140:421:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:422:116:422:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:422:125:422:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:423:101:423:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:423:110:423:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:424:86:424:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:424:95:424:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:425:71:425:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:425:80:425:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:426:56:426:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:426:65:426:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:427:41:427:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:427:50:427:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:428:41:428:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:428:50:428:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:429:56:429:77 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:429:70:429:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:430:41:430:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:430:50:430:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:431:41:431:62 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:431:55:431:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:432:41:432:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:432:50:432:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:433:26:433:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:433:35:433:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:434:56:434:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:434:65:434:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:435:41:435:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:435:50:435:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:436:26:436:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:436:35:436:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:437:71:437:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:437:80:437:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:438:56:438:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:438:65:438:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:439:41:439:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:439:50:439:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:432:41:432:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:432:55:432:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:433:26:433:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:433:44:433:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:434:26:434:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:434:44:434:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:435:26:435:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:435:36:435:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:436:26:436:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:436:36:436:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:437:26:437:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:438:26:438:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:439:26:439:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:439:35:439:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:440:26:440:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:440:35:440:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:441:86:441:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:441:95:441:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:442:71:442:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:442:80:442:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:443:56:443:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:443:65:443:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:444:41:444:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:444:50:444:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:445:26:445:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:445:35:445:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:446:101:446:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:446:110:446:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:447:86:447:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:447:95:447:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:448:71:448:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:448:80:448:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:449:56:449:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:449:65:449:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:450:41:450:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:450:50:450:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:451:26:451:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:451:35:451:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:452:116:452:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:452:125:452:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:453:101:453:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:453:110:453:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:454:86:454:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:454:95:454:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:455:71:455:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:455:80:455:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:456:56:456:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:456:65:456:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:457:41:457:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:457:50:457:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:458:26:458:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:458:35:458:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:459:131:459:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:459:140:459:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:460:116:460:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:460:125:460:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:461:101:461:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:461:110:461:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:462:86:462:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:462:95:462:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:463:71:463:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:463:80:463:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:464:56:464:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:464:65:464:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:465:41:465:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:465:50:465:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:466:26:466:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:466:35:466:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:467:146:467:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:467:155:467:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:468:131:468:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:468:140:468:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:469:116:469:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:469:125:469:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:470:101:470:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:470:110:470:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:471:86:471:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:471:95:471:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:472:71:472:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:472:80:472:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:473:56:473:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:473:65:473:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:474:41:474:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:474:50:474:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:475:26:475:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:475:35:475:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:476:161:476:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:476:170:476:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:441:41:441:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:441:41:441:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:441:55:441:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:442:41:442:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:442:50:442:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:443:26:443:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:443:35:443:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:444:56:444:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:444:65:444:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:445:41:445:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:445:50:445:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:446:26:446:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:446:35:446:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:447:71:447:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:447:80:447:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:448:56:448:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:448:65:448:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:449:41:449:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:449:50:449:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:450:26:450:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:450:35:450:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:451:86:451:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:451:95:451:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:452:71:452:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:452:80:452:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:453:56:453:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:453:65:453:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:454:41:454:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:454:50:454:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:455:26:455:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:455:35:455:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:456:101:456:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:456:110:456:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:457:86:457:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:457:95:457:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:458:71:458:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:458:80:458:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:459:56:459:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:459:65:459:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:460:41:460:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:460:50:460:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:461:26:461:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:461:35:461:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:462:116:462:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:462:125:462:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:463:101:463:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:463:110:463:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:464:86:464:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:464:95:464:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:465:71:465:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:465:80:465:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:466:56:466:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:466:65:466:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:467:41:467:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:467:50:467:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:468:26:468:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:468:35:468:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:469:131:469:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:469:140:469:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:470:116:470:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:470:125:470:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:471:101:471:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:471:110:471:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:472:86:472:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:472:95:472:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:473:71:473:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:473:80:473:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:474:56:474:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:474:65:474:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:475:41:475:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:475:50:475:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:476:26:476:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:476:35:476:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:477:146:477:162 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:477:155:477:162 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:478:131:478:147 | (...)... | semmle.label | (...)... | @@ -5074,128 +5058,128 @@ nodes | LogInjectionTest.java:484:50:484:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:485:26:485:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:485:35:485:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:486:26:486:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:486:35:486:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:487:41:487:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:487:55:487:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:488:26:488:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:488:35:488:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:489:26:489:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:489:40:489:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:490:26:490:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:490:40:490:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:491:26:491:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:491:41:491:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:492:26:492:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:492:41:492:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:493:41:493:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:493:56:493:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:494:41:494:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:494:56:494:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:495:41:495:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:495:51:495:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:496:41:496:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:496:59:496:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:497:41:497:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:497:59:497:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:498:41:498:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:499:41:499:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:499:50:499:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:500:41:500:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:500:50:500:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:501:56:501:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:501:56:501:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:501:70:501:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:502:56:502:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:502:65:502:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:503:41:503:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:503:50:503:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:504:71:504:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:504:80:504:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:505:56:505:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:505:65:505:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:506:41:506:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:506:50:506:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:507:86:507:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:507:95:507:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:508:71:508:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:508:80:508:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:509:56:509:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:509:65:509:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:486:161:486:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:486:170:486:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:487:146:487:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:487:155:487:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:488:131:488:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:488:140:488:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:489:116:489:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:489:125:489:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:490:101:490:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:490:110:490:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:491:86:491:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:491:95:491:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:492:71:492:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:492:80:492:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:493:56:493:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:493:65:493:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:494:41:494:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:494:50:494:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:495:26:495:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:495:35:495:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:496:26:496:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:496:35:496:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:497:41:497:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:497:55:497:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:498:26:498:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:498:35:498:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:499:26:499:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:499:40:499:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:500:26:500:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:500:40:500:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:501:26:501:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:501:41:501:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:502:26:502:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:502:41:502:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:503:41:503:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:503:56:503:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:504:41:504:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:504:56:504:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:505:41:505:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:505:51:505:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:506:41:506:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:506:59:506:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:507:41:507:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:507:59:507:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:508:41:508:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:509:41:509:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:509:50:509:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:510:41:510:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:510:50:510:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:511:101:511:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:511:110:511:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:512:86:512:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:512:95:512:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:513:71:513:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:513:80:513:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:514:56:514:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:514:65:514:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:515:41:515:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:515:50:515:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:516:116:516:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:516:125:516:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:517:101:517:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:517:110:517:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:518:86:518:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:518:95:518:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:519:71:519:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:519:80:519:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:520:56:520:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:520:65:520:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:521:41:521:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:521:50:521:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:522:131:522:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:522:140:522:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:523:116:523:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:523:125:523:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:524:101:524:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:524:110:524:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:525:86:525:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:525:95:525:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:526:71:526:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:526:80:526:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:527:56:527:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:527:65:527:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:528:41:528:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:528:50:528:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:529:146:529:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:529:155:529:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:530:131:530:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:530:140:530:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:531:116:531:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:531:125:531:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:532:101:532:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:532:110:532:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:533:86:533:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:533:95:533:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:534:71:534:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:534:80:534:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:535:56:535:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:535:65:535:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:536:41:536:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:536:50:536:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:537:161:537:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:537:170:537:177 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:538:146:538:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:538:155:538:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:539:131:539:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:539:140:539:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:540:116:540:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:540:125:540:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:541:101:541:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:541:110:541:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:542:86:542:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:542:95:542:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:543:71:543:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:543:80:543:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:544:56:544:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:544:65:544:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:545:41:545:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:545:50:545:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:546:176:546:192 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:546:185:546:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:511:56:511:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:511:56:511:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:511:70:511:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:512:56:512:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:512:65:512:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:513:41:513:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:513:50:513:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:514:71:514:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:514:80:514:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:515:56:515:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:515:65:515:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:516:41:516:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:516:50:516:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:517:86:517:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:517:95:517:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:518:71:518:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:518:80:518:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:519:56:519:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:519:65:519:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:520:41:520:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:520:50:520:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:521:101:521:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:521:110:521:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:522:86:522:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:522:95:522:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:523:71:523:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:523:80:523:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:524:56:524:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:524:65:524:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:525:41:525:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:525:50:525:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:526:116:526:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:526:125:526:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:527:101:527:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:527:110:527:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:528:86:528:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:528:95:528:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:529:71:529:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:529:80:529:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:530:56:530:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:530:65:530:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:531:41:531:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:531:50:531:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:532:131:532:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:532:140:532:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:533:116:533:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:533:125:533:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:534:101:534:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:534:110:534:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:535:86:535:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:535:95:535:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:536:71:536:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:536:80:536:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:537:56:537:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:537:65:537:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:538:41:538:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:538:50:538:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:539:146:539:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:539:155:539:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:540:131:540:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:540:140:540:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:541:116:541:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:541:125:541:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:542:101:542:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:542:110:542:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:543:86:543:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:543:95:543:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:544:71:544:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:544:80:544:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:545:56:545:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:545:65:545:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:546:41:546:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:546:50:546:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:547:161:547:177 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:547:170:547:177 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:548:146:548:162 | (...)... | semmle.label | (...)... | @@ -5214,123 +5198,123 @@ nodes | LogInjectionTest.java:554:65:554:72 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:555:41:555:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:555:50:555:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:556:41:556:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:556:50:556:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:557:56:557:77 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:557:70:557:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:558:41:558:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:558:50:558:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:559:41:559:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:559:55:559:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:560:41:560:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:560:55:560:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:561:26:561:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:561:44:561:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:562:26:562:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:562:44:562:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:563:26:563:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:563:36:563:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:564:26:564:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:564:36:564:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:565:26:565:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:566:26:566:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:567:26:567:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:567:35:567:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:568:26:568:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:568:35:568:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:569:41:569:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:569:41:569:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:556:176:556:192 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:556:185:556:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:557:161:557:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:557:170:557:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:558:146:558:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:558:155:558:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:559:131:559:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:559:140:559:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:560:116:560:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:560:125:560:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:561:101:561:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:561:110:561:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:562:86:562:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:562:95:562:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:563:71:563:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:563:80:563:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:564:56:564:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:564:65:564:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:565:41:565:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:565:50:565:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:566:41:566:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:566:50:566:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:567:56:567:77 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:567:70:567:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:568:41:568:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:568:50:568:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:569:41:569:62 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:569:55:569:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:570:41:570:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:570:50:570:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:571:26:571:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:571:35:571:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:572:56:572:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:572:65:572:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:573:41:573:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:573:50:573:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:574:26:574:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:574:35:574:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:575:71:575:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:575:80:575:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:576:56:576:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:576:65:576:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:577:41:577:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:577:50:577:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:570:41:570:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:570:55:570:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:571:26:571:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:571:44:571:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:572:26:572:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:572:44:572:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:573:26:573:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:573:36:573:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:574:26:574:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:574:36:574:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:575:26:575:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:576:26:576:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:577:26:577:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:577:35:577:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:578:26:578:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:578:35:578:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:579:86:579:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:579:95:579:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:580:71:580:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:580:80:580:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:581:56:581:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:581:65:581:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:582:41:582:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:582:50:582:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:583:26:583:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:583:35:583:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:584:101:584:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:584:110:584:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:585:86:585:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:585:95:585:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:586:71:586:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:586:80:586:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:587:56:587:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:587:65:587:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:588:41:588:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:588:50:588:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:589:26:589:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:589:35:589:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:590:116:590:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:590:125:590:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:591:101:591:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:591:110:591:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:592:86:592:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:592:95:592:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:593:71:593:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:593:80:593:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:594:56:594:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:594:65:594:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:595:41:595:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:595:50:595:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:596:26:596:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:596:35:596:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:597:131:597:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:597:140:597:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:598:116:598:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:598:125:598:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:599:101:599:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:599:110:599:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:600:86:600:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:600:95:600:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:601:71:601:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:601:80:601:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:602:56:602:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:602:65:602:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:603:41:603:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:603:50:603:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:604:26:604:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:604:35:604:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:605:146:605:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:605:155:605:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:606:131:606:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:606:140:606:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:607:116:607:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:607:125:607:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:608:101:608:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:608:110:608:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:609:86:609:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:609:95:609:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:610:71:610:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:610:80:610:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:611:56:611:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:611:65:611:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:612:41:612:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:612:50:612:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:613:26:613:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:613:35:613:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:614:161:614:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:614:170:614:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:579:41:579:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:579:41:579:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:579:55:579:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:580:41:580:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:580:50:580:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:581:26:581:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:581:35:581:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:582:56:582:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:582:65:582:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:583:41:583:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:583:50:583:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:584:26:584:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:584:35:584:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:585:71:585:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:585:80:585:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:586:56:586:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:586:65:586:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:587:41:587:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:587:50:587:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:588:26:588:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:588:35:588:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:589:86:589:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:589:95:589:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:590:71:590:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:590:80:590:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:591:56:591:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:591:65:591:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:592:41:592:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:592:50:592:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:593:26:593:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:593:35:593:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:594:101:594:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:594:110:594:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:595:86:595:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:595:95:595:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:596:71:596:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:596:80:596:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:597:56:597:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:597:65:597:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:598:41:598:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:598:50:598:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:599:26:599:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:599:35:599:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:600:116:600:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:600:125:600:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:601:101:601:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:601:110:601:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:602:86:602:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:602:95:602:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:603:71:603:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:603:80:603:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:604:56:604:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:604:65:604:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:605:41:605:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:605:50:605:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:606:26:606:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:606:35:606:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:607:131:607:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:607:140:607:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:608:116:608:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:608:125:608:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:609:101:609:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:609:110:609:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:610:86:610:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:610:95:610:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:611:71:611:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:611:80:611:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:612:56:612:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:612:65:612:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:613:41:613:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:613:50:613:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:614:26:614:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:614:35:614:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:615:146:615:162 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:615:155:615:162 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:616:131:616:147 | (...)... | semmle.label | (...)... | @@ -5349,128 +5333,128 @@ nodes | LogInjectionTest.java:622:50:622:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:623:26:623:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:623:35:623:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:624:26:624:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:624:35:624:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:625:41:625:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:625:55:625:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:626:26:626:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:626:35:626:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:627:26:627:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:627:40:627:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:628:26:628:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:628:40:628:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:629:25:629:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:629:40:629:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:630:25:630:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:630:40:630:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:631:40:631:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:631:55:631:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:632:40:632:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:632:55:632:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:633:40:633:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:633:50:633:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:634:40:634:65 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:634:58:634:65 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:635:40:635:65 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:635:58:635:65 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:636:40:636:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:637:40:637:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:637:49:637:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:638:40:638:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:638:49:638:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:639:55:639:77 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:639:55:639:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:639:69:639:76 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:640:55:640:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:640:64:640:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:641:40:641:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:641:49:641:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:642:70:642:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:642:79:642:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:643:55:643:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:643:64:643:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:644:40:644:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:644:49:644:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:645:85:645:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:645:94:645:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:646:70:646:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:646:79:646:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:647:55:647:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:647:64:647:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:624:161:624:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:624:170:624:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:625:146:625:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:625:155:625:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:626:131:626:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:626:140:626:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:627:116:627:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:627:125:627:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:628:101:628:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:628:110:628:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:629:86:629:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:629:95:629:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:630:71:630:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:630:80:630:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:631:56:631:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:631:65:631:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:632:41:632:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:632:50:632:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:633:26:633:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:633:35:633:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:634:26:634:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:634:35:634:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:635:41:635:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:635:55:635:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:636:26:636:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:636:35:636:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:637:26:637:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:637:40:637:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:638:26:638:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:638:40:638:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:639:25:639:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:639:40:639:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:640:25:640:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:640:40:640:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:641:40:641:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:641:55:641:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:642:40:642:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:642:55:642:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:643:40:643:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:643:50:643:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:644:40:644:65 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:644:58:644:65 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:645:40:645:65 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:645:58:645:65 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:646:40:646:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:647:40:647:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:647:49:647:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:648:40:648:56 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:648:49:648:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:649:100:649:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:649:109:649:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:650:85:650:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:650:94:650:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:651:70:651:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:651:79:651:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:652:55:652:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:652:64:652:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:653:40:653:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:653:49:653:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:654:115:654:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:654:124:654:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:655:100:655:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:655:109:655:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:656:85:656:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:656:94:656:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:657:70:657:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:657:79:657:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:658:55:658:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:658:64:658:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:659:40:659:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:659:49:659:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:660:130:660:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:660:139:660:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:661:115:661:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:661:124:661:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:662:100:662:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:662:109:662:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:663:85:663:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:663:94:663:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:664:70:664:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:664:79:664:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:665:55:665:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:665:64:665:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:666:40:666:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:666:49:666:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:667:145:667:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:667:154:667:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:668:130:668:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:668:139:668:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:669:115:669:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:669:124:669:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:670:100:670:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:670:109:670:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:671:85:671:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:671:94:671:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:672:70:672:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:672:79:672:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:673:55:673:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:673:64:673:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:674:40:674:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:674:49:674:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:675:160:675:176 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:675:169:675:176 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:676:145:676:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:676:154:676:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:677:130:677:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:677:139:677:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:678:115:678:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:678:124:678:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:679:100:679:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:679:109:679:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:680:85:680:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:680:94:680:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:681:70:681:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:681:79:681:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:682:55:682:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:682:64:682:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:683:40:683:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:683:49:683:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:684:175:684:191 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:684:184:684:191 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:649:55:649:77 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:649:55:649:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:649:69:649:76 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:650:55:650:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:650:64:650:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:651:40:651:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:651:49:651:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:652:70:652:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:652:79:652:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:653:55:653:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:653:64:653:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:654:40:654:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:654:49:654:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:655:85:655:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:655:94:655:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:656:70:656:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:656:79:656:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:657:55:657:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:657:64:657:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:658:40:658:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:658:49:658:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:659:100:659:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:659:109:659:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:660:85:660:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:660:94:660:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:661:70:661:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:661:79:661:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:662:55:662:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:662:64:662:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:663:40:663:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:663:49:663:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:664:115:664:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:664:124:664:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:665:100:665:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:665:109:665:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:666:85:666:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:666:94:666:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:667:70:667:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:667:79:667:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:668:55:668:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:668:64:668:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:669:40:669:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:669:49:669:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:670:130:670:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:670:139:670:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:671:115:671:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:671:124:671:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:672:100:672:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:672:109:672:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:673:85:673:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:673:94:673:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:674:70:674:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:674:79:674:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:675:55:675:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:675:64:675:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:676:40:676:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:676:49:676:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:677:145:677:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:677:154:677:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:678:130:678:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:678:139:678:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:679:115:679:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:679:124:679:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:680:100:680:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:680:109:680:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:681:85:681:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:681:94:681:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:682:70:682:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:682:79:682:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:683:55:683:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:683:64:683:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:684:40:684:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:684:49:684:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:685:160:685:176 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:685:169:685:176 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:686:145:686:161 | (...)... | semmle.label | (...)... | @@ -5489,123 +5473,123 @@ nodes | LogInjectionTest.java:692:64:692:71 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:693:40:693:56 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:693:49:693:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:694:40:694:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:694:49:694:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:695:55:695:76 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:695:69:695:76 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:696:40:696:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:696:49:696:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:697:40:697:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:697:54:697:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:698:40:698:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:698:54:698:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:699:25:699:50 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:699:43:699:50 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:700:25:700:50 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:700:43:700:50 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:701:25:701:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:701:35:701:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:702:25:702:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:702:35:702:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:703:25:703:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:704:25:704:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:705:25:705:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:705:34:705:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:706:25:706:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:706:34:706:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:707:40:707:62 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:707:40:707:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:694:175:694:191 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:694:184:694:191 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:695:160:695:176 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:695:169:695:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:696:145:696:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:696:154:696:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:697:130:697:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:697:139:697:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:698:115:698:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:698:124:698:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:699:100:699:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:699:109:699:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:700:85:700:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:700:94:700:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:701:70:701:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:701:79:701:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:702:55:702:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:702:64:702:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:703:40:703:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:703:49:703:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:704:40:704:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:704:49:704:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:705:55:705:76 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:705:69:705:76 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:706:40:706:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:706:49:706:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:707:40:707:61 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:707:54:707:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:708:40:708:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:708:49:708:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:709:25:709:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:709:34:709:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:710:55:710:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:710:64:710:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:711:40:711:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:711:49:711:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:712:25:712:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:712:34:712:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:713:70:713:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:713:79:713:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:714:55:714:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:714:64:714:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:715:40:715:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:715:49:715:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:708:40:708:61 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:708:54:708:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:709:25:709:50 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:709:43:709:50 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:710:25:710:50 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:710:43:710:50 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:711:25:711:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:711:35:711:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:712:25:712:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:712:35:712:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:713:25:713:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:714:25:714:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:715:25:715:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:715:34:715:41 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:716:25:716:41 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:716:34:716:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:717:85:717:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:717:94:717:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:718:70:718:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:718:79:718:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:719:55:719:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:719:64:719:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:720:40:720:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:720:49:720:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:721:25:721:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:721:34:721:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:722:100:722:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:722:109:722:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:723:85:723:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:723:94:723:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:724:70:724:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:724:79:724:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:725:55:725:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:725:64:725:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:726:40:726:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:726:49:726:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:727:25:727:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:727:34:727:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:728:115:728:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:728:124:728:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:729:100:729:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:729:109:729:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:730:85:730:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:730:94:730:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:731:70:731:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:731:79:731:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:732:55:732:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:732:64:732:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:733:40:733:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:733:49:733:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:734:25:734:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:734:34:734:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:735:130:735:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:735:139:735:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:736:115:736:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:736:124:736:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:737:100:737:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:737:109:737:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:738:85:738:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:738:94:738:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:739:70:739:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:739:79:739:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:740:55:740:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:740:64:740:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:741:40:741:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:741:49:741:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:742:25:742:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:742:34:742:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:743:145:743:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:743:154:743:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:744:130:744:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:744:139:744:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:745:115:745:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:745:124:745:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:746:100:746:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:746:109:746:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:747:85:747:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:747:94:747:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:748:70:748:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:748:79:748:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:749:55:749:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:749:64:749:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:750:40:750:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:750:49:750:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:751:25:751:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:751:34:751:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:752:160:752:176 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:752:169:752:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:717:40:717:62 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:717:40:717:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:717:54:717:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:718:40:718:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:718:49:718:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:719:25:719:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:719:34:719:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:720:55:720:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:720:64:720:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:721:40:721:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:721:49:721:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:722:25:722:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:722:34:722:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:723:70:723:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:723:79:723:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:724:55:724:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:724:64:724:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:725:40:725:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:725:49:725:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:726:25:726:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:726:34:726:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:727:85:727:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:727:94:727:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:728:70:728:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:728:79:728:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:729:55:729:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:729:64:729:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:730:40:730:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:730:49:730:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:731:25:731:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:731:34:731:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:732:100:732:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:732:109:732:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:733:85:733:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:733:94:733:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:734:70:734:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:734:79:734:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:735:55:735:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:735:64:735:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:736:40:736:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:736:49:736:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:737:25:737:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:737:34:737:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:738:115:738:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:738:124:738:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:739:100:739:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:739:109:739:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:740:85:740:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:740:94:740:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:741:70:741:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:741:79:741:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:742:55:742:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:742:64:742:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:743:40:743:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:743:49:743:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:744:25:744:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:744:34:744:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:745:130:745:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:745:139:745:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:746:115:746:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:746:124:746:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:747:100:747:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:747:109:747:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:748:85:748:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:748:94:748:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:749:70:749:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:749:79:749:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:750:55:750:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:750:64:750:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:751:40:751:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:751:49:751:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:752:25:752:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:752:34:752:41 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:753:145:753:161 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:753:154:753:161 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:754:130:754:146 | (...)... | semmle.label | (...)... | @@ -5624,128 +5608,128 @@ nodes | LogInjectionTest.java:760:49:760:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:761:25:761:41 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:761:34:761:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:762:25:762:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:762:34:762:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:763:40:763:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:763:54:763:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:764:25:764:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:764:34:764:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:765:25:765:46 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:765:39:765:46 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:766:25:766:46 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:766:39:766:46 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:767:38:767:60 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:767:53:767:60 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:768:38:768:60 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:768:53:768:60 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:769:53:769:75 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:769:68:769:75 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:770:53:770:75 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:770:68:770:75 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:771:53:771:70 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:771:63:771:70 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:772:53:772:78 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:772:71:772:78 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:773:53:773:78 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:773:71:773:78 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:774:53:774:60 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:775:53:775:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:775:62:775:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:776:53:776:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:776:62:776:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:777:68:777:90 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:777:68:777:90 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:777:82:777:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:778:68:778:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:778:77:778:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:779:53:779:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:779:62:779:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:780:83:780:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:780:92:780:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:781:68:781:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:781:77:781:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:782:53:782:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:782:62:782:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:783:98:783:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:783:107:783:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:784:83:784:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:784:92:784:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:785:68:785:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:785:77:785:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:762:160:762:176 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:762:169:762:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:763:145:763:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:763:154:763:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:764:130:764:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:764:139:764:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:765:115:765:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:765:124:765:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:766:100:766:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:766:109:766:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:767:85:767:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:767:94:767:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:768:70:768:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:768:79:768:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:769:55:769:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:769:64:769:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:770:40:770:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:770:49:770:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:771:25:771:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:771:34:771:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:772:25:772:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:772:34:772:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:773:40:773:61 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:773:54:773:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:774:25:774:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:774:34:774:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:775:25:775:46 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:775:39:775:46 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:776:25:776:46 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:776:39:776:46 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:777:38:777:60 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:777:53:777:60 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:778:38:778:60 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:778:53:778:60 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:779:53:779:75 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:779:68:779:75 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:780:53:780:75 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:780:68:780:75 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:781:53:781:70 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:781:63:781:70 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:782:53:782:78 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:782:71:782:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:783:53:783:78 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:783:71:783:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:784:53:784:60 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:785:53:785:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:785:62:785:69 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:786:53:786:69 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:786:62:786:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:787:113:787:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:787:122:787:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:788:98:788:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:788:107:788:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:789:83:789:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:789:92:789:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:790:68:790:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:790:77:790:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:791:53:791:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:791:62:791:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:792:128:792:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:792:137:792:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:793:113:793:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:793:122:793:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:794:98:794:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:794:107:794:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:795:83:795:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:795:92:795:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:796:68:796:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:796:77:796:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:797:53:797:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:797:62:797:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:798:143:798:159 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:798:152:798:159 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:799:128:799:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:799:137:799:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:800:113:800:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:800:122:800:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:801:98:801:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:801:107:801:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:802:83:802:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:802:92:802:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:803:68:803:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:803:77:803:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:804:53:804:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:804:62:804:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:805:158:805:174 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:805:167:805:174 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:806:143:806:159 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:806:152:806:159 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:807:128:807:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:807:137:807:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:808:113:808:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:808:122:808:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:809:98:809:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:809:107:809:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:810:83:810:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:810:92:810:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:811:68:811:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:811:77:811:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:812:53:812:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:812:62:812:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:813:173:813:189 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:813:182:813:189 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:814:158:814:174 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:814:167:814:174 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:815:143:815:159 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:815:152:815:159 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:816:128:816:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:816:137:816:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:817:113:817:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:817:122:817:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:818:98:818:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:818:107:818:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:819:83:819:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:819:92:819:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:820:68:820:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:820:77:820:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:821:53:821:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:821:62:821:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:822:188:822:204 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:822:197:822:204 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:787:68:787:90 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:787:68:787:90 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:787:82:787:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:788:68:788:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:788:77:788:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:789:53:789:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:789:62:789:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:790:83:790:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:790:92:790:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:791:68:791:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:791:77:791:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:792:53:792:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:792:62:792:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:793:98:793:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:793:107:793:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:794:83:794:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:794:92:794:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:795:68:795:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:795:77:795:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:796:53:796:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:796:62:796:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:797:113:797:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:797:122:797:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:798:98:798:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:798:107:798:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:799:83:799:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:799:92:799:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:800:68:800:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:800:77:800:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:801:53:801:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:801:62:801:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:802:128:802:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:802:137:802:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:803:113:803:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:803:122:803:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:804:98:804:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:804:107:804:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:805:83:805:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:805:92:805:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:806:68:806:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:806:77:806:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:807:53:807:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:807:62:807:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:808:143:808:159 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:808:152:808:159 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:809:128:809:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:809:137:809:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:810:113:810:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:810:122:810:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:811:98:811:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:811:107:811:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:812:83:812:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:812:92:812:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:813:68:813:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:813:77:813:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:814:53:814:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:814:62:814:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:815:158:815:174 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:815:167:815:174 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:816:143:816:159 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:816:152:816:159 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:817:128:817:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:817:137:817:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:818:113:818:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:818:122:818:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:819:98:819:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:819:107:819:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:820:83:820:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:820:92:820:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:821:68:821:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:821:77:821:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:822:53:822:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:822:62:822:69 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:823:173:823:189 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:823:182:823:189 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:824:158:824:174 | (...)... | semmle.label | (...)... | @@ -5764,123 +5748,123 @@ nodes | LogInjectionTest.java:830:77:830:84 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:831:53:831:69 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:831:62:831:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:832:53:832:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:832:62:832:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:833:68:833:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:833:82:833:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:834:53:834:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:834:62:834:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:835:53:835:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:835:67:835:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:836:53:836:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:836:67:836:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:837:38:837:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:837:56:837:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:838:38:838:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:838:56:838:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:839:38:839:55 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:839:48:839:55 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:840:38:840:55 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:840:48:840:55 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:841:38:841:45 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:842:38:842:45 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:843:38:843:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:843:47:843:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:844:38:844:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:844:47:844:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:845:53:845:75 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:845:53:845:75 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:832:188:832:204 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:832:197:832:204 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:833:173:833:189 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:833:182:833:189 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:834:158:834:174 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:834:167:834:174 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:835:143:835:159 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:835:152:835:159 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:836:128:836:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:836:137:836:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:837:113:837:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:837:122:837:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:838:98:838:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:838:107:838:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:839:83:839:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:839:92:839:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:840:68:840:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:840:77:840:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:841:53:841:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:841:62:841:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:842:53:842:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:842:62:842:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:843:68:843:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:843:82:843:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:844:53:844:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:844:62:844:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:845:53:845:74 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:845:67:845:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:846:53:846:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:846:62:846:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:847:38:847:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:847:47:847:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:848:68:848:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:848:77:848:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:849:53:849:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:849:62:849:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:850:38:850:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:850:47:850:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:851:83:851:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:851:92:851:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:852:68:852:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:852:77:852:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:853:53:853:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:853:62:853:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:846:53:846:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:846:67:846:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:847:38:847:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:847:56:847:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:848:38:848:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:848:56:848:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:849:38:849:55 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:849:48:849:55 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:850:38:850:55 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:850:48:850:55 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:851:38:851:45 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:852:38:852:45 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:853:38:853:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:853:47:853:54 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:854:38:854:54 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:854:47:854:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:855:98:855:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:855:107:855:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:856:83:856:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:856:92:856:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:857:68:857:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:857:77:857:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:858:53:858:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:858:62:858:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:859:38:859:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:859:47:859:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:860:113:860:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:860:122:860:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:861:98:861:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:861:107:861:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:862:83:862:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:862:92:862:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:863:68:863:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:863:77:863:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:864:53:864:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:864:62:864:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:865:38:865:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:865:47:865:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:866:128:866:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:866:137:866:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:867:113:867:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:867:122:867:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:868:98:868:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:868:107:868:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:869:83:869:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:869:92:869:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:870:68:870:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:870:77:870:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:871:53:871:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:871:62:871:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:872:38:872:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:872:47:872:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:873:143:873:159 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:873:152:873:159 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:874:128:874:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:874:137:874:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:875:113:875:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:875:122:875:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:876:98:876:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:876:107:876:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:877:83:877:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:877:92:877:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:878:68:878:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:878:77:878:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:879:53:879:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:879:62:879:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:880:38:880:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:880:47:880:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:881:158:881:174 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:881:167:881:174 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:882:143:882:159 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:882:152:882:159 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:883:128:883:144 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:883:137:883:144 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:884:113:884:129 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:884:122:884:129 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:885:98:885:114 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:885:107:885:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:886:83:886:99 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:886:92:886:99 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:887:68:887:84 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:887:77:887:84 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:888:53:888:69 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:888:62:888:69 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:889:38:889:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:889:47:889:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:890:173:890:189 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:890:182:890:189 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:855:53:855:75 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:855:53:855:75 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:855:67:855:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:856:53:856:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:856:62:856:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:857:38:857:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:857:47:857:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:858:68:858:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:858:77:858:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:859:53:859:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:859:62:859:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:860:38:860:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:860:47:860:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:861:83:861:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:861:92:861:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:862:68:862:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:862:77:862:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:863:53:863:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:863:62:863:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:864:38:864:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:864:47:864:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:865:98:865:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:865:107:865:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:866:83:866:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:866:92:866:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:867:68:867:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:867:77:867:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:868:53:868:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:868:62:868:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:869:38:869:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:869:47:869:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:870:113:870:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:870:122:870:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:871:98:871:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:871:107:871:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:872:83:872:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:872:92:872:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:873:68:873:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:873:77:873:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:874:53:874:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:874:62:874:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:875:38:875:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:875:47:875:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:876:128:876:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:876:137:876:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:877:113:877:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:877:122:877:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:878:98:878:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:878:107:878:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:879:83:879:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:879:92:879:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:880:68:880:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:880:77:880:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:881:53:881:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:881:62:881:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:882:38:882:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:882:47:882:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:883:143:883:159 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:883:152:883:159 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:884:128:884:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:884:137:884:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:885:113:885:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:885:122:885:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:886:98:886:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:886:107:886:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:887:83:887:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:887:92:887:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:888:68:888:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:888:77:888:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:889:53:889:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:889:62:889:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:890:38:890:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:890:47:890:54 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:891:158:891:174 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:891:167:891:174 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:892:143:892:159 | (...)... | semmle.label | (...)... | @@ -5899,128 +5883,128 @@ nodes | LogInjectionTest.java:898:62:898:69 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:899:38:899:54 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:899:47:899:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:900:38:900:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:900:47:900:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:901:53:901:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:901:67:901:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:902:38:902:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:902:47:902:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:903:38:903:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:903:52:903:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:904:38:904:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:904:52:904:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:905:26:905:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:905:41:905:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:906:26:906:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:906:41:906:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:907:41:907:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:907:56:907:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:908:41:908:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:908:56:908:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:909:41:909:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:909:51:909:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:910:41:910:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:910:59:910:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:911:41:911:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:911:59:911:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:912:41:912:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:913:41:913:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:913:50:913:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:914:41:914:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:914:50:914:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:915:56:915:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:915:56:915:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:915:70:915:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:916:56:916:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:916:65:916:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:917:41:917:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:917:50:917:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:918:71:918:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:918:80:918:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:919:56:919:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:919:65:919:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:920:41:920:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:920:50:920:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:921:86:921:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:921:95:921:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:922:71:922:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:922:80:922:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:923:56:923:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:923:65:923:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:900:173:900:189 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:900:182:900:189 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:901:158:901:174 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:901:167:901:174 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:902:143:902:159 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:902:152:902:159 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:903:128:903:144 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:903:137:903:144 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:904:113:904:129 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:904:122:904:129 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:905:98:905:114 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:905:107:905:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:906:83:906:99 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:906:92:906:99 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:907:68:907:84 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:907:77:907:84 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:908:53:908:69 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:908:62:908:69 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:909:38:909:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:909:47:909:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:910:38:910:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:910:47:910:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:911:53:911:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:911:67:911:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:912:38:912:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:912:47:912:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:913:38:913:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:913:52:913:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:914:38:914:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:914:52:914:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:915:26:915:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:915:41:915:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:916:26:916:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:916:41:916:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:917:41:917:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:917:56:917:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:918:41:918:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:918:56:918:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:919:41:919:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:919:51:919:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:920:41:920:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:920:59:920:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:921:41:921:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:921:59:921:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:922:41:922:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:923:41:923:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:923:50:923:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:924:41:924:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:924:50:924:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:925:101:925:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:925:110:925:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:926:86:926:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:926:95:926:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:927:71:927:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:927:80:927:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:928:56:928:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:928:65:928:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:929:41:929:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:929:50:929:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:930:116:930:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:930:125:930:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:931:101:931:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:931:110:931:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:932:86:932:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:932:95:932:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:933:71:933:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:933:80:933:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:934:56:934:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:934:65:934:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:935:41:935:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:935:50:935:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:936:131:936:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:936:140:936:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:937:116:937:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:937:125:937:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:938:101:938:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:938:110:938:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:939:86:939:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:939:95:939:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:940:71:940:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:940:80:940:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:941:56:941:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:941:65:941:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:942:41:942:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:942:50:942:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:943:146:943:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:943:155:943:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:944:131:944:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:944:140:944:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:945:116:945:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:945:125:945:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:946:101:946:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:946:110:946:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:947:86:947:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:947:95:947:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:948:71:948:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:948:80:948:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:949:56:949:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:949:65:949:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:950:41:950:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:950:50:950:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:951:161:951:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:951:170:951:177 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:952:146:952:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:952:155:952:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:953:131:953:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:953:140:953:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:954:116:954:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:954:125:954:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:955:101:955:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:955:110:955:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:956:86:956:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:956:95:956:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:957:71:957:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:957:80:957:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:958:56:958:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:958:65:958:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:959:41:959:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:959:50:959:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:960:176:960:192 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:960:185:960:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:925:56:925:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:925:56:925:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:925:70:925:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:926:56:926:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:926:65:926:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:927:41:927:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:927:50:927:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:928:71:928:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:928:80:928:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:929:56:929:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:929:65:929:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:930:41:930:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:930:50:930:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:931:86:931:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:931:95:931:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:932:71:932:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:932:80:932:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:933:56:933:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:933:65:933:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:934:41:934:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:934:50:934:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:935:101:935:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:935:110:935:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:936:86:936:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:936:95:936:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:937:71:937:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:937:80:937:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:938:56:938:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:938:65:938:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:939:41:939:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:939:50:939:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:940:116:940:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:940:125:940:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:941:101:941:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:941:110:941:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:942:86:942:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:942:95:942:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:943:71:943:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:943:80:943:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:944:56:944:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:944:65:944:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:945:41:945:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:945:50:945:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:946:131:946:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:946:140:946:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:947:116:947:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:947:125:947:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:948:101:948:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:948:110:948:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:949:86:949:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:949:95:949:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:950:71:950:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:950:80:950:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:951:56:951:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:951:65:951:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:952:41:952:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:952:50:952:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:953:146:953:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:953:155:953:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:954:131:954:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:954:140:954:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:955:116:955:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:955:125:955:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:956:101:956:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:956:110:956:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:957:86:957:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:957:95:957:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:958:71:958:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:958:80:958:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:959:56:959:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:959:65:959:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:960:41:960:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:960:50:960:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:961:161:961:177 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:961:170:961:177 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:962:146:962:162 | (...)... | semmle.label | (...)... | @@ -6039,123 +6023,123 @@ nodes | LogInjectionTest.java:968:65:968:72 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:969:41:969:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:969:50:969:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:970:41:970:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:970:50:970:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:971:56:971:77 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:971:70:971:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:972:41:972:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:972:50:972:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:973:41:973:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:973:55:973:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:974:41:974:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:974:55:974:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:975:26:975:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:975:44:975:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:976:26:976:51 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:976:44:976:51 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:977:26:977:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:977:36:977:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:978:26:978:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:978:36:978:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:979:26:979:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:980:26:980:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:981:26:981:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:981:35:981:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:982:26:982:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:982:35:982:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:983:41:983:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:983:41:983:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:970:176:970:192 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:970:185:970:192 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:971:161:971:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:971:170:971:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:972:146:972:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:972:155:972:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:973:131:973:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:973:140:973:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:974:116:974:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:974:125:974:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:975:101:975:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:975:110:975:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:976:86:976:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:976:95:976:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:977:71:977:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:977:80:977:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:978:56:978:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:978:65:978:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:979:41:979:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:979:50:979:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:980:41:980:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:980:50:980:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:981:56:981:77 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:981:70:981:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:982:41:982:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:982:50:982:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:983:41:983:62 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:983:55:983:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:984:41:984:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:984:50:984:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:985:26:985:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:985:35:985:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:986:56:986:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:986:65:986:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:987:41:987:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:987:50:987:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:988:26:988:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:988:35:988:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:989:71:989:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:989:80:989:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:990:56:990:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:990:65:990:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:991:41:991:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:991:50:991:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:984:41:984:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:984:55:984:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:985:26:985:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:985:44:985:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:986:26:986:51 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:986:44:986:51 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:987:26:987:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:987:36:987:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:988:26:988:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:988:36:988:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:989:26:989:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:990:26:990:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:991:26:991:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:991:35:991:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:992:26:992:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:992:35:992:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:993:86:993:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:993:95:993:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:994:71:994:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:994:80:994:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:995:56:995:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:995:65:995:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:996:41:996:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:996:50:996:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:997:26:997:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:997:35:997:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:998:101:998:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:998:110:998:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:999:86:999:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:999:95:999:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1000:71:1000:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1000:80:1000:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1001:56:1001:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1001:65:1001:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1002:41:1002:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1002:50:1002:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1003:26:1003:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1003:35:1003:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1004:116:1004:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1004:125:1004:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1005:101:1005:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1005:110:1005:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1006:86:1006:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1006:95:1006:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1007:71:1007:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1007:80:1007:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1008:56:1008:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1008:65:1008:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1009:41:1009:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1009:50:1009:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1010:26:1010:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1010:35:1010:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1011:131:1011:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1011:140:1011:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1012:116:1012:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1012:125:1012:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1013:101:1013:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1013:110:1013:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1014:86:1014:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1014:95:1014:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1015:71:1015:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1015:80:1015:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1016:56:1016:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1016:65:1016:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1017:41:1017:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1017:50:1017:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1018:26:1018:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1018:35:1018:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1019:146:1019:162 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1019:155:1019:162 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1020:131:1020:147 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1020:140:1020:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1021:116:1021:132 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1021:125:1021:132 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1022:101:1022:117 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1022:110:1022:117 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1023:86:1023:102 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1023:95:1023:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1024:71:1024:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1024:80:1024:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1025:56:1025:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1025:65:1025:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1026:41:1026:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1026:50:1026:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1027:26:1027:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1027:35:1027:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1028:161:1028:177 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1028:170:1028:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:993:41:993:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:993:41:993:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:993:55:993:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:994:41:994:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:994:50:994:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:995:26:995:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:995:35:995:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:996:56:996:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:996:65:996:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:997:41:997:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:997:50:997:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:998:26:998:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:998:35:998:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:999:71:999:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:999:80:999:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1000:56:1000:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1000:65:1000:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1001:41:1001:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1001:50:1001:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1002:26:1002:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1002:35:1002:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1003:86:1003:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1003:95:1003:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1004:71:1004:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1004:80:1004:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1005:56:1005:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1005:65:1005:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1006:41:1006:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1006:50:1006:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1007:26:1007:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1007:35:1007:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1008:101:1008:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1008:110:1008:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1009:86:1009:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1009:95:1009:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1010:71:1010:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1010:80:1010:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1011:56:1011:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1011:65:1011:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1012:41:1012:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1012:50:1012:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1013:26:1013:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1013:35:1013:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1014:116:1014:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1014:125:1014:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1015:101:1015:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1015:110:1015:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1016:86:1016:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1016:95:1016:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1017:71:1017:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1017:80:1017:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1018:56:1018:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1018:65:1018:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1019:41:1019:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1019:50:1019:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1020:26:1020:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1020:35:1020:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1021:131:1021:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1021:140:1021:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1022:116:1022:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1022:125:1022:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1023:101:1023:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1023:110:1023:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1024:86:1024:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1024:95:1024:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1025:71:1025:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1025:80:1025:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1026:56:1026:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1026:65:1026:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1027:41:1027:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1027:50:1027:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1028:26:1028:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1028:35:1028:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1029:146:1029:162 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1029:155:1029:162 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1030:131:1030:147 | (...)... | semmle.label | (...)... | @@ -6174,128 +6158,128 @@ nodes | LogInjectionTest.java:1036:50:1036:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1037:26:1037:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1037:35:1037:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1038:26:1038:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1038:35:1038:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1039:41:1039:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1039:55:1039:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1040:26:1040:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1040:35:1040:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1041:26:1041:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1041:40:1041:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1042:26:1042:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1042:40:1042:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1043:25:1043:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1043:40:1043:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1044:25:1044:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1044:40:1044:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1045:40:1045:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1045:55:1045:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1046:40:1046:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1046:55:1046:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1047:40:1047:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1047:50:1047:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1048:40:1048:65 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1048:58:1048:65 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1049:40:1049:65 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1049:58:1049:65 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1050:40:1050:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1051:40:1051:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1051:49:1051:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1052:40:1052:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1052:49:1052:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1053:55:1053:77 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1053:55:1053:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1053:69:1053:76 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1054:55:1054:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1054:64:1054:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1055:40:1055:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1055:49:1055:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1056:70:1056:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1056:79:1056:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1057:55:1057:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1057:64:1057:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1058:40:1058:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1058:49:1058:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1059:85:1059:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1059:94:1059:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1060:70:1060:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1060:79:1060:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1061:55:1061:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1061:64:1061:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1038:161:1038:177 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1038:170:1038:177 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1039:146:1039:162 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1039:155:1039:162 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1040:131:1040:147 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1040:140:1040:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1041:116:1041:132 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1041:125:1041:132 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1042:101:1042:117 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1042:110:1042:117 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1043:86:1043:102 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1043:95:1043:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1044:71:1044:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1044:80:1044:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1045:56:1045:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1045:65:1045:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1046:41:1046:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1046:50:1046:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1047:26:1047:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1047:35:1047:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1048:26:1048:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1048:35:1048:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1049:41:1049:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1049:55:1049:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1050:26:1050:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1050:35:1050:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1051:26:1051:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1051:40:1051:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1052:26:1052:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1052:40:1052:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1053:25:1053:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1053:40:1053:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1054:25:1054:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1054:40:1054:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1055:40:1055:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1055:55:1055:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1056:40:1056:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1056:55:1056:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1057:40:1057:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1057:50:1057:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1058:40:1058:65 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1058:58:1058:65 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1059:40:1059:65 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1059:58:1059:65 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1060:40:1060:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1061:40:1061:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1061:49:1061:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1062:40:1062:56 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1062:49:1062:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1063:100:1063:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1063:109:1063:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1064:85:1064:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1064:94:1064:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1065:70:1065:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1065:79:1065:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1066:55:1066:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1066:64:1066:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1067:40:1067:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1067:49:1067:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1068:115:1068:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1068:124:1068:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1069:100:1069:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1069:109:1069:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1070:85:1070:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1070:94:1070:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1071:70:1071:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1071:79:1071:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1072:55:1072:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1072:64:1072:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1073:40:1073:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1073:49:1073:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1074:130:1074:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1074:139:1074:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1075:115:1075:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1075:124:1075:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1076:100:1076:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1076:109:1076:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1077:85:1077:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1077:94:1077:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1078:70:1078:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1078:79:1078:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1079:55:1079:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1079:64:1079:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1080:40:1080:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1080:49:1080:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1081:145:1081:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1081:154:1081:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1082:130:1082:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1082:139:1082:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1083:115:1083:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1083:124:1083:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1084:100:1084:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1084:109:1084:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1085:85:1085:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1085:94:1085:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1086:70:1086:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1086:79:1086:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1087:55:1087:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1087:64:1087:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1088:40:1088:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1088:49:1088:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1089:160:1089:176 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1089:169:1089:176 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1090:145:1090:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1090:154:1090:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1091:130:1091:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1091:139:1091:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1092:115:1092:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1092:124:1092:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1093:100:1093:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1093:109:1093:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1094:85:1094:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1094:94:1094:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1095:70:1095:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1095:79:1095:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1096:55:1096:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1096:64:1096:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1097:40:1097:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1097:49:1097:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1098:175:1098:191 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1098:184:1098:191 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1063:55:1063:77 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1063:55:1063:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1063:69:1063:76 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1064:55:1064:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1064:64:1064:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1065:40:1065:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1065:49:1065:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1066:70:1066:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1066:79:1066:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1067:55:1067:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1067:64:1067:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1068:40:1068:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1068:49:1068:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1069:85:1069:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1069:94:1069:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1070:70:1070:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1070:79:1070:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1071:55:1071:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1071:64:1071:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1072:40:1072:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1072:49:1072:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1073:100:1073:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1073:109:1073:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1074:85:1074:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1074:94:1074:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1075:70:1075:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1075:79:1075:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1076:55:1076:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1076:64:1076:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1077:40:1077:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1077:49:1077:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1078:115:1078:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1078:124:1078:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1079:100:1079:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1079:109:1079:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1080:85:1080:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1080:94:1080:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1081:70:1081:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1081:79:1081:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1082:55:1082:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1082:64:1082:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1083:40:1083:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1083:49:1083:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1084:130:1084:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1084:139:1084:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1085:115:1085:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1085:124:1085:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1086:100:1086:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1086:109:1086:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1087:85:1087:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1087:94:1087:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1088:70:1088:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1088:79:1088:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1089:55:1089:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1089:64:1089:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1090:40:1090:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1090:49:1090:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1091:145:1091:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1091:154:1091:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1092:130:1092:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1092:139:1092:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1093:115:1093:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1093:124:1093:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1094:100:1094:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1094:109:1094:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1095:85:1095:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1095:94:1095:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1096:70:1096:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1096:79:1096:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1097:55:1097:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1097:64:1097:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1098:40:1098:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1098:49:1098:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1099:160:1099:176 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1099:169:1099:176 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1100:145:1100:161 | (...)... | semmle.label | (...)... | @@ -6314,123 +6298,123 @@ nodes | LogInjectionTest.java:1106:64:1106:71 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1107:40:1107:56 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1107:49:1107:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1108:40:1108:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1108:49:1108:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1109:55:1109:76 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1109:69:1109:76 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1110:40:1110:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1110:49:1110:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1111:40:1111:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1111:54:1111:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1112:40:1112:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1112:54:1112:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1113:25:1113:50 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1113:43:1113:50 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1114:25:1114:50 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1114:43:1114:50 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1115:25:1115:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1115:35:1115:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1116:25:1116:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1116:35:1116:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1117:25:1117:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1118:25:1118:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1119:25:1119:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1119:34:1119:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1120:25:1120:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1120:34:1120:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1121:40:1121:62 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1121:40:1121:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1108:175:1108:191 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1108:184:1108:191 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1109:160:1109:176 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1109:169:1109:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1110:145:1110:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1110:154:1110:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1111:130:1111:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1111:139:1111:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1112:115:1112:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1112:124:1112:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1113:100:1113:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1113:109:1113:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1114:85:1114:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1114:94:1114:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1115:70:1115:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1115:79:1115:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1116:55:1116:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1116:64:1116:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1117:40:1117:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1117:49:1117:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1118:40:1118:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1118:49:1118:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1119:55:1119:76 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1119:69:1119:76 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1120:40:1120:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1120:49:1120:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1121:40:1121:61 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1121:54:1121:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1122:40:1122:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1122:49:1122:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1123:25:1123:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1123:34:1123:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1124:55:1124:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1124:64:1124:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1125:40:1125:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1125:49:1125:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1126:25:1126:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1126:34:1126:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1127:70:1127:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1127:79:1127:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1128:55:1128:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1128:64:1128:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1129:40:1129:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1129:49:1129:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1122:40:1122:61 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1122:54:1122:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1123:25:1123:50 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1123:43:1123:50 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1124:25:1124:50 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1124:43:1124:50 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1125:25:1125:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1125:35:1125:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1126:25:1126:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1126:35:1126:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1127:25:1127:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1128:25:1128:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1129:25:1129:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1129:34:1129:41 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1130:25:1130:41 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1130:34:1130:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1131:85:1131:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1131:94:1131:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1132:70:1132:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1132:79:1132:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1133:55:1133:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1133:64:1133:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1134:40:1134:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1134:49:1134:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1135:25:1135:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1135:34:1135:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1136:100:1136:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1136:109:1136:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1137:85:1137:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1137:94:1137:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1138:70:1138:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1138:79:1138:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1139:55:1139:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1139:64:1139:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1140:40:1140:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1140:49:1140:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1141:25:1141:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1141:34:1141:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1142:115:1142:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1142:124:1142:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1143:100:1143:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1143:109:1143:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1144:85:1144:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1144:94:1144:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1145:70:1145:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1145:79:1145:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1146:55:1146:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1146:64:1146:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1147:40:1147:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1147:49:1147:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1148:25:1148:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1148:34:1148:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1149:130:1149:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1149:139:1149:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1150:115:1150:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1150:124:1150:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1151:100:1151:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1151:109:1151:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1152:85:1152:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1152:94:1152:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1153:70:1153:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1153:79:1153:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1154:55:1154:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1154:64:1154:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1155:40:1155:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1155:49:1155:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1156:25:1156:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1156:34:1156:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1157:145:1157:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1157:154:1157:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1158:130:1158:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1158:139:1158:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1159:115:1159:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1159:124:1159:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1160:100:1160:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1160:109:1160:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1161:85:1161:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1161:94:1161:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1162:70:1162:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1162:79:1162:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1163:55:1163:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1163:64:1163:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1164:40:1164:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1164:49:1164:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1165:25:1165:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1165:34:1165:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1166:160:1166:176 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1166:169:1166:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1131:40:1131:62 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1131:40:1131:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1131:54:1131:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1132:40:1132:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1132:49:1132:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1133:25:1133:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1133:34:1133:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1134:55:1134:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1134:64:1134:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1135:40:1135:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1135:49:1135:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1136:25:1136:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1136:34:1136:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1137:70:1137:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1137:79:1137:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1138:55:1138:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1138:64:1138:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1139:40:1139:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1139:49:1139:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1140:25:1140:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1140:34:1140:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1141:85:1141:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1141:94:1141:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1142:70:1142:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1142:79:1142:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1143:55:1143:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1143:64:1143:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1144:40:1144:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1144:49:1144:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1145:25:1145:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1145:34:1145:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1146:100:1146:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1146:109:1146:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1147:85:1147:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1147:94:1147:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1148:70:1148:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1148:79:1148:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1149:55:1149:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1149:64:1149:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1150:40:1150:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1150:49:1150:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1151:25:1151:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1151:34:1151:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1152:115:1152:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1152:124:1152:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1153:100:1153:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1153:109:1153:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1154:85:1154:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1154:94:1154:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1155:70:1155:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1155:79:1155:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1156:55:1156:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1156:64:1156:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1157:40:1157:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1157:49:1157:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1158:25:1158:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1158:34:1158:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1159:130:1159:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1159:139:1159:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1160:115:1160:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1160:124:1160:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1161:100:1161:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1161:109:1161:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1162:85:1162:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1162:94:1162:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1163:70:1163:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1163:79:1163:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1164:55:1164:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1164:64:1164:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1165:40:1165:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1165:49:1165:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1166:25:1166:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1166:34:1166:41 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1167:145:1167:161 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1167:154:1167:161 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1168:130:1168:146 | (...)... | semmle.label | (...)... | @@ -6449,158 +6433,158 @@ nodes | LogInjectionTest.java:1174:49:1174:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1175:25:1175:41 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1175:34:1175:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1176:25:1176:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1176:34:1176:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1177:40:1177:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1177:54:1177:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1178:25:1178:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1178:34:1178:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1179:25:1179:46 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1179:39:1179:46 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1180:25:1180:46 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1180:39:1180:46 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1182:55:1182:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1182:65:1182:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1183:39:1183:55 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1183:48:1183:55 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1184:45:1184:67 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1184:45:1184:67 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1184:59:1184:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1185:33:1185:49 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1185:42:1185:49 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1186:39:1186:61 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1186:39:1186:61 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1186:53:1186:60 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1187:31:1187:48 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1187:41:1187:48 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1188:31:1188:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1188:40:1188:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1189:46:1189:68 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1189:46:1189:68 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1189:60:1189:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1190:31:1190:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1190:40:1190:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1191:13:1191:68 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1191:46:1191:67 | (...)... : Supplier | semmle.label | (...)... : Supplier | -| LogInjectionTest.java:1191:60:1191:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1192:13:1192:53 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1192:31:1192:52 | (...)... : Supplier | semmle.label | (...)... : Supplier | -| LogInjectionTest.java:1192:45:1192:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1193:30:1193:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1193:45:1193:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1194:30:1194:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1194:45:1194:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1195:51:1195:58 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1196:30:1196:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1196:40:1196:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1197:46:1197:53 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1198:30:1198:37 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1199:30:1199:46 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1199:39:1199:46 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1200:45:1200:52 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1204:25:1204:47 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1204:40:1204:47 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1205:25:1205:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1205:35:1205:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1206:25:1206:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1207:25:1207:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1207:34:1207:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1208:25:1208:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1208:34:1208:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1209:40:1209:62 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1209:40:1209:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1209:54:1209:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1210:40:1210:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1212:40:1212:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1212:49:1212:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1213:25:1213:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1213:34:1213:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1214:55:1214:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1214:64:1214:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1215:40:1215:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1215:49:1215:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1216:25:1216:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1216:34:1216:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1217:70:1217:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1217:79:1217:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1218:55:1218:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1218:64:1218:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1219:40:1219:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1219:49:1219:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1220:25:1220:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1220:34:1220:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1221:85:1221:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1221:94:1221:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1222:70:1222:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1222:79:1222:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1223:55:1223:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1223:64:1223:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1224:40:1224:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1224:49:1224:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1225:25:1225:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1225:34:1225:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1226:100:1226:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1226:109:1226:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1227:85:1227:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1227:94:1227:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1228:70:1228:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1228:79:1228:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1229:55:1229:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1229:64:1229:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1230:40:1230:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1230:49:1230:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1231:25:1231:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1231:34:1231:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1232:115:1232:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1232:124:1232:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1233:100:1233:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1233:109:1233:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1234:85:1234:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1234:94:1234:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1235:70:1235:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1235:79:1235:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1236:55:1236:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1236:64:1236:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1237:40:1237:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1237:49:1237:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1238:25:1238:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1238:34:1238:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1239:130:1239:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1239:139:1239:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1240:115:1240:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1240:124:1240:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1241:100:1241:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1241:109:1241:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1242:85:1242:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1242:94:1242:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1243:70:1243:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1243:79:1243:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1244:55:1244:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1244:64:1244:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1245:40:1245:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1245:49:1245:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1246:25:1246:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1246:34:1246:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1247:145:1247:161 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1247:154:1247:161 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1248:130:1248:146 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1248:139:1248:146 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1249:115:1249:131 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1249:124:1249:131 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1250:100:1250:116 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1250:109:1250:116 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1251:85:1251:101 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1251:94:1251:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1252:70:1252:86 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1252:79:1252:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1253:55:1253:71 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1253:64:1253:71 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1254:40:1254:56 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1254:49:1254:56 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1255:25:1255:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1255:34:1255:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1256:160:1256:176 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1256:169:1256:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1176:160:1176:176 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1176:169:1176:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1177:145:1177:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1177:154:1177:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1178:130:1178:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1178:139:1178:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1179:115:1179:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1179:124:1179:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1180:100:1180:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1180:109:1180:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1181:85:1181:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1181:94:1181:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1182:70:1182:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1182:79:1182:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1183:55:1183:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1183:64:1183:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1184:40:1184:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1184:49:1184:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1185:25:1185:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1185:34:1185:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1186:25:1186:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1186:34:1186:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1187:40:1187:61 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1187:54:1187:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1188:25:1188:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1188:34:1188:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1189:25:1189:46 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1189:39:1189:46 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1190:25:1190:46 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1190:39:1190:46 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1192:55:1192:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1192:65:1192:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1193:39:1193:55 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1193:48:1193:55 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1194:45:1194:67 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1194:45:1194:67 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1194:59:1194:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1195:33:1195:49 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1195:42:1195:49 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1196:39:1196:61 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1196:39:1196:61 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1196:53:1196:60 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1197:31:1197:48 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1197:41:1197:48 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1198:31:1198:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1198:40:1198:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1199:46:1199:68 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1199:46:1199:68 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1199:60:1199:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1200:31:1200:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1200:40:1200:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1201:13:1201:68 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1201:46:1201:67 | (...)... : Supplier | semmle.label | (...)... : Supplier | +| LogInjectionTest.java:1201:60:1201:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1202:13:1202:53 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1202:31:1202:52 | (...)... : Supplier | semmle.label | (...)... : Supplier | +| LogInjectionTest.java:1202:45:1202:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1203:30:1203:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1203:45:1203:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1204:30:1204:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1204:45:1204:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1205:51:1205:58 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1206:30:1206:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1206:40:1206:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1207:46:1207:53 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1208:30:1208:37 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1209:30:1209:46 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1209:39:1209:46 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1210:45:1210:52 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1214:25:1214:47 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1214:40:1214:47 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1215:25:1215:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1215:35:1215:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1216:25:1216:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1217:25:1217:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1217:34:1217:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1218:25:1218:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1218:34:1218:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1219:40:1219:62 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1219:40:1219:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1219:54:1219:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1220:40:1220:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1222:40:1222:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1222:49:1222:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1223:25:1223:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1223:34:1223:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1224:55:1224:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1224:64:1224:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1225:40:1225:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1225:49:1225:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1226:25:1226:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1226:34:1226:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1227:70:1227:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1227:79:1227:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1228:55:1228:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1228:64:1228:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1229:40:1229:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1229:49:1229:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1230:25:1230:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1230:34:1230:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1231:85:1231:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1231:94:1231:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1232:70:1232:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1232:79:1232:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1233:55:1233:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1233:64:1233:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1234:40:1234:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1234:49:1234:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1235:25:1235:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1235:34:1235:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1236:100:1236:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1236:109:1236:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1237:85:1237:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1237:94:1237:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1238:70:1238:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1238:79:1238:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1239:55:1239:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1239:64:1239:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1240:40:1240:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1240:49:1240:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1241:25:1241:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1241:34:1241:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1242:115:1242:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1242:124:1242:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1243:100:1243:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1243:109:1243:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1244:85:1244:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1244:94:1244:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1245:70:1245:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1245:79:1245:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1246:55:1246:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1246:64:1246:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1247:40:1247:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1247:49:1247:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1248:25:1248:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1248:34:1248:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1249:130:1249:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1249:139:1249:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1250:115:1250:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1250:124:1250:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1251:100:1251:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1251:109:1251:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1252:85:1252:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1252:94:1252:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1253:70:1253:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1253:79:1253:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1254:55:1254:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1254:64:1254:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1255:40:1255:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1255:49:1255:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1256:25:1256:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1256:34:1256:41 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1257:145:1257:161 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1257:154:1257:161 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1258:130:1258:146 | (...)... | semmle.label | (...)... | @@ -6619,1076 +6603,1076 @@ nodes | LogInjectionTest.java:1264:49:1264:56 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1265:25:1265:41 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1265:34:1265:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1267:25:1267:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1267:34:1267:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1268:40:1268:61 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1268:54:1268:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1269:25:1269:46 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1269:39:1269:46 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1273:23:1273:30 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1274:23:1274:30 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1275:23:1275:30 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1276:22:1276:29 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1277:23:1277:30 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1278:22:1278:29 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1283:27:1283:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1284:27:1284:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1288:42:1288:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1289:57:1289:79 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1289:57:1289:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1289:71:1289:78 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1290:42:1290:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1291:27:1291:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1292:27:1292:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1296:42:1296:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1297:57:1297:79 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1297:57:1297:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1297:71:1297:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1266:160:1266:176 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1266:169:1266:176 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1267:145:1267:161 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1267:154:1267:161 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1268:130:1268:146 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1268:139:1268:146 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1269:115:1269:131 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1269:124:1269:131 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1270:100:1270:116 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1270:109:1270:116 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1271:85:1271:101 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1271:94:1271:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1272:70:1272:86 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1272:79:1272:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1273:55:1273:71 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1273:64:1273:71 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1274:40:1274:56 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1274:49:1274:56 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1275:25:1275:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1275:34:1275:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1277:25:1277:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1277:34:1277:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1278:40:1278:61 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1278:54:1278:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1279:25:1279:46 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1279:39:1279:46 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1283:23:1283:30 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1284:23:1284:30 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1285:23:1285:30 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1286:22:1286:29 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1287:23:1287:30 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1288:22:1288:29 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1293:27:1293:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1294:27:1294:34 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1298:42:1298:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1299:27:1299:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1300:27:1300:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1304:42:1304:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1305:57:1305:79 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1305:57:1305:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1305:71:1305:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1299:57:1299:79 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1299:57:1299:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1299:71:1299:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1300:42:1300:49 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1301:27:1301:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1302:27:1302:34 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1306:42:1306:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1307:26:1307:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1308:26:1308:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1312:41:1312:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1313:56:1313:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1313:56:1313:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1313:70:1313:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1314:41:1314:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1315:27:1315:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1316:27:1316:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1320:42:1320:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1321:57:1321:79 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1321:57:1321:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1321:71:1321:78 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1322:42:1322:49 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1323:26:1323:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1324:26:1324:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1328:41:1328:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1329:56:1329:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1329:56:1329:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1329:70:1329:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1330:41:1330:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1331:64:1331:71 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1332:64:1332:71 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1336:79:1336:86 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1337:79:1337:86 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1338:94:1338:116 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1338:94:1338:116 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1338:108:1338:115 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1339:43:1339:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1339:52:1339:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1340:28:1340:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1340:37:1340:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1341:43:1341:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1341:52:1341:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1342:28:1342:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1342:37:1342:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1343:28:1343:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1343:37:1343:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1344:28:1344:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1344:37:1344:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1345:43:1345:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1345:43:1345:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1345:57:1345:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1346:43:1346:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1346:43:1346:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1346:57:1346:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1347:58:1347:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1347:67:1347:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1348:43:1348:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1348:52:1348:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1349:28:1349:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1349:37:1349:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1350:58:1350:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1350:67:1350:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1307:57:1307:79 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1307:57:1307:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1307:71:1307:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1308:42:1308:49 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1309:27:1309:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1310:27:1310:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1314:42:1314:49 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1315:57:1315:79 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1315:57:1315:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1315:71:1315:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1316:42:1316:49 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1317:26:1317:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1318:26:1318:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1322:41:1322:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1323:56:1323:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1323:56:1323:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1323:70:1323:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1324:41:1324:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1325:27:1325:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1326:27:1326:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1330:42:1330:49 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1331:57:1331:79 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1331:57:1331:79 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1331:71:1331:78 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1332:42:1332:49 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1333:26:1333:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1334:26:1334:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1338:41:1338:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1339:56:1339:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1339:56:1339:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1339:70:1339:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1340:41:1340:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1341:64:1341:71 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1342:64:1342:71 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1346:79:1346:86 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1347:79:1347:86 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1348:94:1348:116 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1348:94:1348:116 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1348:108:1348:115 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1349:43:1349:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1349:52:1349:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1350:28:1350:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1350:37:1350:44 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1351:43:1351:59 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1351:52:1351:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1352:28:1352:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1352:37:1352:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1353:73:1353:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1353:82:1353:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1354:58:1354:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1354:67:1354:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1355:43:1355:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1355:52:1355:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1356:28:1356:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1356:37:1356:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1357:73:1357:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1357:82:1357:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1358:58:1358:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1358:67:1358:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1359:43:1359:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1359:52:1359:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1360:28:1360:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1360:37:1360:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1353:28:1353:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1353:37:1353:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1354:28:1354:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1354:37:1354:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1355:43:1355:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1355:43:1355:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1355:57:1355:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1356:43:1356:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1356:43:1356:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1356:57:1356:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1357:58:1357:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1357:67:1357:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1358:43:1358:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1358:52:1358:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1359:28:1359:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1359:37:1359:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1360:58:1360:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1360:67:1360:74 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1361:43:1361:59 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1361:52:1361:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1362:28:1362:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1362:37:1362:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1363:43:1363:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1363:52:1363:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1364:28:1364:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1364:37:1364:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1365:28:1365:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1365:37:1365:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1363:73:1363:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1363:82:1363:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1364:58:1364:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1364:67:1364:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1365:43:1365:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1365:52:1365:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1366:28:1366:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1366:37:1366:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1367:43:1367:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1367:43:1367:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1367:57:1367:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1368:43:1368:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1368:43:1368:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1368:57:1368:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1369:58:1369:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1369:67:1369:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1370:43:1370:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1370:52:1370:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1371:28:1371:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1371:37:1371:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1372:58:1372:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1372:67:1372:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1367:73:1367:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1367:82:1367:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1368:58:1368:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1368:67:1368:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1369:43:1369:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1369:52:1369:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1370:28:1370:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1370:37:1370:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1371:43:1371:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1371:52:1371:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1372:28:1372:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1372:37:1372:44 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1373:43:1373:59 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1373:52:1373:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1374:28:1374:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1374:37:1374:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1375:73:1375:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1375:82:1375:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1376:58:1376:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1376:67:1376:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1377:43:1377:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1377:52:1377:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1378:28:1378:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1378:37:1378:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1379:73:1379:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1379:82:1379:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1380:58:1380:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1380:67:1380:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1381:43:1381:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1381:52:1381:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1382:28:1382:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1382:37:1382:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1375:28:1375:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1375:37:1375:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1376:28:1376:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1376:37:1376:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1377:43:1377:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1377:43:1377:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1377:57:1377:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1378:43:1378:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1378:43:1378:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1378:57:1378:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1379:58:1379:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1379:67:1379:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1380:43:1380:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1380:52:1380:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1381:28:1381:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1381:37:1381:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1382:58:1382:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1382:67:1382:74 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1383:43:1383:59 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1383:52:1383:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1384:28:1384:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1384:37:1384:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1385:43:1385:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1385:52:1385:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1386:28:1386:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1386:37:1386:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1387:28:1387:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1387:37:1387:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1385:73:1385:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1385:82:1385:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1386:58:1386:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1386:67:1386:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1387:43:1387:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1387:52:1387:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1388:28:1388:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1388:37:1388:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1389:43:1389:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1389:43:1389:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1389:57:1389:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1390:43:1390:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1390:43:1390:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1390:57:1390:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1391:58:1391:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1391:67:1391:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1392:43:1392:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1392:52:1392:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1393:28:1393:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1393:37:1393:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1394:58:1394:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1394:67:1394:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1389:73:1389:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1389:82:1389:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1390:58:1390:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1390:67:1390:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1391:43:1391:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1391:52:1391:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1392:28:1392:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1392:37:1392:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1393:43:1393:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1393:52:1393:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1394:28:1394:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1394:37:1394:44 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1395:43:1395:59 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1395:52:1395:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1396:28:1396:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1396:37:1396:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1397:73:1397:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1397:82:1397:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1398:58:1398:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1398:67:1398:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1399:43:1399:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1399:52:1399:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1400:28:1400:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1400:37:1400:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1401:73:1401:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1401:82:1401:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1402:58:1402:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1402:67:1402:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1403:43:1403:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1403:52:1403:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1404:28:1404:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1404:37:1404:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1405:42:1405:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1405:51:1405:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1406:27:1406:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1406:36:1406:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1407:42:1407:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1407:51:1407:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1408:27:1408:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1408:36:1408:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1409:27:1409:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1409:36:1409:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1410:27:1410:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1410:36:1410:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1411:42:1411:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1411:42:1411:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1411:56:1411:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1412:42:1412:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1412:42:1412:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1412:56:1412:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1413:57:1413:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1413:66:1413:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1414:42:1414:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1414:51:1414:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1415:27:1415:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1415:36:1415:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1416:57:1416:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1416:66:1416:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1397:28:1397:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1397:37:1397:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1398:28:1398:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1398:37:1398:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1399:43:1399:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1399:43:1399:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1399:57:1399:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1400:43:1400:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1400:43:1400:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1400:57:1400:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1401:58:1401:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1401:67:1401:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1402:43:1402:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1402:52:1402:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1403:28:1403:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1403:37:1403:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1404:58:1404:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1404:67:1404:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1405:43:1405:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1405:52:1405:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1406:28:1406:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1406:37:1406:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1407:73:1407:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1407:82:1407:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1408:58:1408:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1408:67:1408:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1409:43:1409:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1409:52:1409:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1410:28:1410:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1410:37:1410:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1411:73:1411:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1411:82:1411:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1412:58:1412:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1412:67:1412:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1413:43:1413:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1413:52:1413:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1414:28:1414:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1414:37:1414:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1415:42:1415:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1415:51:1415:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1416:27:1416:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1416:36:1416:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1417:42:1417:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1417:51:1417:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1418:27:1418:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1418:36:1418:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1419:72:1419:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1419:81:1419:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1420:57:1420:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1420:66:1420:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1421:42:1421:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1421:51:1421:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1422:27:1422:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1422:36:1422:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1423:72:1423:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1423:81:1423:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1424:57:1424:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1424:66:1424:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1425:42:1425:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1425:51:1425:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1426:27:1426:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1426:36:1426:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1427:80:1427:96 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1427:89:1427:96 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1428:65:1428:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1428:74:1428:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1429:80:1429:96 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1429:89:1429:96 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1430:65:1430:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1430:74:1430:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1431:65:1431:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1431:74:1431:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1432:65:1432:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1432:74:1432:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1433:80:1433:102 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1433:80:1433:102 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1433:94:1433:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1434:80:1434:102 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1434:80:1434:102 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1434:94:1434:101 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1435:95:1435:111 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1435:104:1435:111 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1436:80:1436:96 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1436:89:1436:96 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1437:65:1437:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1437:74:1437:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1438:95:1438:111 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1438:104:1438:111 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1419:27:1419:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1419:36:1419:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1420:27:1420:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1420:36:1420:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1421:42:1421:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1421:42:1421:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1421:56:1421:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1422:42:1422:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1422:42:1422:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1422:56:1422:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1423:57:1423:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1423:66:1423:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1424:42:1424:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1424:51:1424:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1425:27:1425:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1425:36:1425:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1426:57:1426:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1426:66:1426:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1427:42:1427:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1427:51:1427:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1428:27:1428:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1428:36:1428:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1429:72:1429:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1429:81:1429:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1430:57:1430:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1430:66:1430:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1431:42:1431:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1431:51:1431:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1432:27:1432:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1432:36:1432:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1433:72:1433:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1433:81:1433:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1434:57:1434:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1434:66:1434:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1435:42:1435:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1435:51:1435:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1436:27:1436:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1436:36:1436:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1437:80:1437:96 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1437:89:1437:96 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1438:65:1438:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1438:74:1438:81 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1439:80:1439:96 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1439:89:1439:96 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1440:65:1440:81 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1440:74:1440:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1441:110:1441:126 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1441:119:1441:126 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1442:95:1442:111 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1442:104:1442:111 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1443:80:1443:96 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1443:89:1443:96 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1444:65:1444:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1444:74:1444:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1445:110:1445:126 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1445:119:1445:126 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1446:95:1446:111 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1446:104:1446:111 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1447:80:1447:96 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1447:89:1447:96 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1448:65:1448:81 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1448:74:1448:81 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1449:43:1449:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1449:52:1449:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1450:28:1450:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1450:37:1450:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1451:43:1451:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1451:52:1451:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1452:28:1452:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1452:37:1452:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1453:28:1453:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1453:37:1453:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1454:28:1454:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1454:37:1454:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1455:43:1455:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1455:43:1455:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1455:57:1455:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1456:43:1456:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1456:43:1456:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1456:57:1456:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1457:58:1457:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1457:67:1457:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1458:43:1458:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1458:52:1458:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1459:28:1459:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1459:37:1459:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1460:58:1460:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1460:67:1460:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1441:65:1441:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1441:74:1441:81 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1442:65:1442:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1442:74:1442:81 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1443:80:1443:102 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1443:80:1443:102 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1443:94:1443:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1444:80:1444:102 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1444:80:1444:102 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1444:94:1444:101 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1445:95:1445:111 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1445:104:1445:111 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1446:80:1446:96 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1446:89:1446:96 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1447:65:1447:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1447:74:1447:81 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1448:95:1448:111 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1448:104:1448:111 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1449:80:1449:96 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1449:89:1449:96 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1450:65:1450:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1450:74:1450:81 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1451:110:1451:126 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1451:119:1451:126 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1452:95:1452:111 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1452:104:1452:111 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1453:80:1453:96 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1453:89:1453:96 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1454:65:1454:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1454:74:1454:81 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1455:110:1455:126 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1455:119:1455:126 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1456:95:1456:111 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1456:104:1456:111 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1457:80:1457:96 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1457:89:1457:96 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1458:65:1458:81 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1458:74:1458:81 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1459:43:1459:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1459:52:1459:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1460:28:1460:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1460:37:1460:44 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1461:43:1461:59 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1461:52:1461:59 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1462:28:1462:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1462:37:1462:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1463:73:1463:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1463:82:1463:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1464:58:1464:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1464:67:1464:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1465:43:1465:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1465:52:1465:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1466:28:1466:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1466:37:1466:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1467:73:1467:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1467:82:1467:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1468:58:1468:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1468:67:1468:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1469:43:1469:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1469:52:1469:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1470:28:1470:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1470:37:1470:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1471:42:1471:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1471:51:1471:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1472:27:1472:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1472:36:1472:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1473:42:1473:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1473:51:1473:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1474:27:1474:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1474:36:1474:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1475:27:1475:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1475:36:1475:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1476:27:1476:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1476:36:1476:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1477:42:1477:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1477:42:1477:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1477:56:1477:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1478:42:1478:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1478:42:1478:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1478:56:1478:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1479:57:1479:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1479:66:1479:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1480:42:1480:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1480:51:1480:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1481:27:1481:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1481:36:1481:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1482:57:1482:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1482:66:1482:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1463:28:1463:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1463:37:1463:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1464:28:1464:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1464:37:1464:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1465:43:1465:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1465:43:1465:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1465:57:1465:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1466:43:1466:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1466:43:1466:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1466:57:1466:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1467:58:1467:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1467:67:1467:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1468:43:1468:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1468:52:1468:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1469:28:1469:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1469:37:1469:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1470:58:1470:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1470:67:1470:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1471:43:1471:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1471:52:1471:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1472:28:1472:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1472:37:1472:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1473:73:1473:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1473:82:1473:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1474:58:1474:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1474:67:1474:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1475:43:1475:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1475:52:1475:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1476:28:1476:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1476:37:1476:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1477:73:1477:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1477:82:1477:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1478:58:1478:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1478:67:1478:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1479:43:1479:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1479:52:1479:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1480:28:1480:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1480:37:1480:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1481:42:1481:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1481:51:1481:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1482:27:1482:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1482:36:1482:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1483:42:1483:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1483:51:1483:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1484:27:1484:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1484:36:1484:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1485:72:1485:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1485:81:1485:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1486:57:1486:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1486:66:1486:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1487:42:1487:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1487:51:1487:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1488:27:1488:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1488:36:1488:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1489:72:1489:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1489:81:1489:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1490:57:1490:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1490:66:1490:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1491:42:1491:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1491:51:1491:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1492:27:1492:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1492:36:1492:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1498:26:1498:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1499:26:1499:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1503:41:1503:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1504:56:1504:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1504:56:1504:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1504:70:1504:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1505:41:1505:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1506:26:1506:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1507:26:1507:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1511:41:1511:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1512:56:1512:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1512:56:1512:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1512:70:1512:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1485:27:1485:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1485:36:1485:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1486:27:1486:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1486:36:1486:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1487:42:1487:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1487:42:1487:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1487:56:1487:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1488:42:1488:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1488:42:1488:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1488:56:1488:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1489:57:1489:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1489:66:1489:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1490:42:1490:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1490:51:1490:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1491:27:1491:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1491:36:1491:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1492:57:1492:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1492:66:1492:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1493:42:1493:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1493:51:1493:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1494:27:1494:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1494:36:1494:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1495:72:1495:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1495:81:1495:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1496:57:1496:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1496:66:1496:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1497:42:1497:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1497:51:1497:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1498:27:1498:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1498:36:1498:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1499:72:1499:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1499:81:1499:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1500:57:1500:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1500:66:1500:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1501:42:1501:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1501:51:1501:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1502:27:1502:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1502:36:1502:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1508:26:1508:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1509:26:1509:33 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1513:41:1513:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1514:26:1514:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1515:26:1515:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1519:41:1519:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1520:56:1520:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1520:56:1520:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1520:70:1520:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1514:56:1514:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1514:56:1514:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1514:70:1514:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1515:41:1515:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1516:26:1516:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1517:26:1517:33 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1521:41:1521:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1522:25:1522:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1523:25:1523:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1527:40:1527:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1528:55:1528:77 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1528:55:1528:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1528:69:1528:76 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1529:40:1529:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1530:26:1530:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1531:26:1531:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1535:41:1535:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1536:56:1536:78 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1536:56:1536:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1536:70:1536:77 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1537:41:1537:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1538:25:1538:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1539:25:1539:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1543:40:1543:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1544:55:1544:77 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1544:55:1544:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1544:69:1544:76 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1545:40:1545:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1546:63:1546:70 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1547:63:1547:70 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1551:78:1551:85 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1552:78:1552:85 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1553:93:1553:115 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1553:93:1553:115 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1553:107:1553:114 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1554:42:1554:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1554:51:1554:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1555:27:1555:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1555:36:1555:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1556:42:1556:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1556:51:1556:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1557:27:1557:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1557:36:1557:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1558:27:1558:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1558:36:1558:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1559:27:1559:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1559:36:1559:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1560:42:1560:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1560:42:1560:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1560:56:1560:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1561:42:1561:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1561:42:1561:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1561:56:1561:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1562:57:1562:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1562:66:1562:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1563:42:1563:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1563:51:1563:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1564:27:1564:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1564:36:1564:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1565:57:1565:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1565:66:1565:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1522:56:1522:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1522:56:1522:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1522:70:1522:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1523:41:1523:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1524:26:1524:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1525:26:1525:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1529:41:1529:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1530:56:1530:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1530:56:1530:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1530:70:1530:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1531:41:1531:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1532:25:1532:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1533:25:1533:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1537:40:1537:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1538:55:1538:77 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1538:55:1538:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1538:69:1538:76 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1539:40:1539:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1540:26:1540:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1541:26:1541:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1545:41:1545:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1546:56:1546:78 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1546:56:1546:78 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1546:70:1546:77 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1547:41:1547:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1548:25:1548:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1549:25:1549:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1553:40:1553:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1554:55:1554:77 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1554:55:1554:77 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1554:69:1554:76 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1555:40:1555:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1556:63:1556:70 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1557:63:1557:70 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1561:78:1561:85 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1562:78:1562:85 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1563:93:1563:115 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1563:93:1563:115 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1563:107:1563:114 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1564:42:1564:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1564:51:1564:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1565:27:1565:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1565:36:1565:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1566:42:1566:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1566:51:1566:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1567:27:1567:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1567:36:1567:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1568:72:1568:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1568:81:1568:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1569:57:1569:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1569:66:1569:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1570:42:1570:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1570:51:1570:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1571:27:1571:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1571:36:1571:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1572:72:1572:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1572:81:1572:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1573:57:1573:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1573:66:1573:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1574:42:1574:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1574:51:1574:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1575:27:1575:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1575:36:1575:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1568:27:1568:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1568:36:1568:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1569:27:1569:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1569:36:1569:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1570:42:1570:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1570:42:1570:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1570:56:1570:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1571:42:1571:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1571:42:1571:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1571:56:1571:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1572:57:1572:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1572:66:1572:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1573:42:1573:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1573:51:1573:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1574:27:1574:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1574:36:1574:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1575:57:1575:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1575:66:1575:73 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1576:42:1576:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1576:51:1576:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1577:27:1577:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1577:36:1577:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1578:42:1578:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1578:51:1578:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1579:27:1579:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1579:36:1579:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1580:27:1580:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1580:36:1580:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1578:72:1578:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1578:81:1578:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1579:57:1579:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1579:66:1579:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1580:42:1580:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1580:51:1580:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1581:27:1581:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1581:36:1581:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1582:42:1582:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1582:42:1582:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1582:56:1582:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1583:42:1583:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1583:42:1583:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1583:56:1583:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1584:57:1584:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1584:66:1584:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1585:42:1585:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1585:51:1585:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1586:27:1586:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1586:36:1586:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1587:57:1587:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1587:66:1587:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1582:72:1582:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1582:81:1582:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1583:57:1583:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1583:66:1583:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1584:42:1584:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1584:51:1584:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1585:27:1585:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1585:36:1585:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1586:42:1586:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1586:51:1586:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1587:27:1587:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1587:36:1587:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1588:42:1588:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1588:51:1588:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1589:27:1589:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1589:36:1589:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1590:72:1590:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1590:81:1590:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1591:57:1591:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1591:66:1591:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1592:42:1592:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1592:51:1592:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1593:27:1593:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1593:36:1593:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1594:72:1594:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1594:81:1594:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1595:57:1595:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1595:66:1595:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1596:42:1596:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1596:51:1596:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1597:27:1597:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1597:36:1597:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1590:27:1590:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1590:36:1590:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1591:27:1591:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1591:36:1591:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1592:42:1592:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1592:42:1592:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1592:56:1592:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1593:42:1593:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1593:42:1593:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1593:56:1593:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1594:57:1594:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1594:66:1594:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1595:42:1595:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1595:51:1595:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1596:27:1596:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1596:36:1596:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1597:57:1597:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1597:66:1597:73 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1598:42:1598:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1598:51:1598:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1599:27:1599:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1599:36:1599:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1600:42:1600:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1600:51:1600:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1601:27:1601:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1601:36:1601:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1602:27:1602:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1602:36:1602:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1600:72:1600:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1600:81:1600:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1601:57:1601:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1601:66:1601:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1602:42:1602:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1602:51:1602:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1603:27:1603:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1603:36:1603:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1604:42:1604:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1604:42:1604:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1604:56:1604:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1605:42:1605:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1605:42:1605:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1605:56:1605:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1606:57:1606:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1606:66:1606:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1607:42:1607:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1607:51:1607:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1608:27:1608:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1608:36:1608:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1609:57:1609:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1609:66:1609:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1604:72:1604:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1604:81:1604:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1605:57:1605:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1605:66:1605:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1606:42:1606:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1606:51:1606:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1607:27:1607:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1607:36:1607:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1608:42:1608:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1608:51:1608:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1609:27:1609:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1609:36:1609:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1610:42:1610:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1610:51:1610:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1611:27:1611:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1611:36:1611:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1612:72:1612:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1612:81:1612:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1613:57:1613:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1613:66:1613:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1614:42:1614:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1614:51:1614:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1615:27:1615:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1615:36:1615:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1616:72:1616:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1616:81:1616:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1617:57:1617:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1617:66:1617:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1618:42:1618:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1618:51:1618:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1619:27:1619:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1619:36:1619:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1620:41:1620:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1620:50:1620:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1621:26:1621:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1621:35:1621:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1622:41:1622:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1622:50:1622:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1623:26:1623:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1623:35:1623:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1624:26:1624:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1624:35:1624:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1625:26:1625:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1625:35:1625:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1626:41:1626:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1626:41:1626:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1626:55:1626:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1627:41:1627:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1627:41:1627:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1627:55:1627:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1628:56:1628:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1628:65:1628:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1629:41:1629:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1629:50:1629:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1630:26:1630:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1630:35:1630:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1631:56:1631:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1631:65:1631:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1612:27:1612:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1612:36:1612:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1613:27:1613:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1613:36:1613:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1614:42:1614:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1614:42:1614:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1614:56:1614:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1615:42:1615:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1615:42:1615:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1615:56:1615:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1616:57:1616:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1616:66:1616:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1617:42:1617:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1617:51:1617:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1618:27:1618:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1618:36:1618:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1619:57:1619:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1619:66:1619:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1620:42:1620:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1620:51:1620:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1621:27:1621:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1621:36:1621:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1622:72:1622:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1622:81:1622:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1623:57:1623:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1623:66:1623:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1624:42:1624:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1624:51:1624:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1625:27:1625:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1625:36:1625:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1626:72:1626:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1626:81:1626:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1627:57:1627:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1627:66:1627:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1628:42:1628:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1628:51:1628:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1629:27:1629:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1629:36:1629:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1630:41:1630:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1630:50:1630:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1631:26:1631:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1631:35:1631:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1632:41:1632:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1632:50:1632:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1633:26:1633:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1633:35:1633:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1634:71:1634:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1634:80:1634:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1635:56:1635:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1635:65:1635:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1636:41:1636:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1636:50:1636:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1637:26:1637:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1637:35:1637:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1638:71:1638:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1638:80:1638:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1639:56:1639:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1639:65:1639:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1640:41:1640:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1640:50:1640:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1641:26:1641:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1641:35:1641:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1642:79:1642:95 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1642:88:1642:95 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1643:64:1643:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1643:73:1643:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1644:79:1644:95 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1644:88:1644:95 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1645:64:1645:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1645:73:1645:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1646:64:1646:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1646:73:1646:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1647:64:1647:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1647:73:1647:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1648:79:1648:101 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1648:79:1648:101 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1648:93:1648:100 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1649:79:1649:101 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1649:79:1649:101 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1649:93:1649:100 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1650:94:1650:110 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1650:103:1650:110 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1651:79:1651:95 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1651:88:1651:95 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1652:64:1652:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1652:73:1652:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1653:94:1653:110 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1653:103:1653:110 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1634:26:1634:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1634:35:1634:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1635:26:1635:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1635:35:1635:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1636:41:1636:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1636:41:1636:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1636:55:1636:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1637:41:1637:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1637:41:1637:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1637:55:1637:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1638:56:1638:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1638:65:1638:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1639:41:1639:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1639:50:1639:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1640:26:1640:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1640:35:1640:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1641:56:1641:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1641:65:1641:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1642:41:1642:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1642:50:1642:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1643:26:1643:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1643:35:1643:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1644:71:1644:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1644:80:1644:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1645:56:1645:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1645:65:1645:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1646:41:1646:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1646:50:1646:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1647:26:1647:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1647:35:1647:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1648:71:1648:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1648:80:1648:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1649:56:1649:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1649:65:1649:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1650:41:1650:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1650:50:1650:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1651:26:1651:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1651:35:1651:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1652:79:1652:95 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1652:88:1652:95 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1653:64:1653:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1653:73:1653:80 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1654:79:1654:95 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1654:88:1654:95 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1655:64:1655:80 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1655:73:1655:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1656:109:1656:125 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1656:118:1656:125 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1657:94:1657:110 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1657:103:1657:110 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1658:79:1658:95 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1658:88:1658:95 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1659:64:1659:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1659:73:1659:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1660:109:1660:125 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1660:118:1660:125 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1661:94:1661:110 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1661:103:1661:110 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1662:79:1662:95 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1662:88:1662:95 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1663:64:1663:80 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1663:73:1663:80 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1664:42:1664:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1664:51:1664:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1665:27:1665:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1665:36:1665:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1666:42:1666:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1666:51:1666:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1667:27:1667:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1667:36:1667:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1668:27:1668:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1668:36:1668:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1669:27:1669:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1669:36:1669:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1670:42:1670:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1670:42:1670:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1670:56:1670:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1671:42:1671:64 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1671:42:1671:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1671:56:1671:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1672:57:1672:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1672:66:1672:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1673:42:1673:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1673:51:1673:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1674:27:1674:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1674:36:1674:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1675:57:1675:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1675:66:1675:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1656:64:1656:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1656:73:1656:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1657:64:1657:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1657:73:1657:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1658:79:1658:101 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1658:79:1658:101 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1658:93:1658:100 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1659:79:1659:101 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1659:79:1659:101 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1659:93:1659:100 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1660:94:1660:110 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1660:103:1660:110 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1661:79:1661:95 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1661:88:1661:95 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1662:64:1662:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1662:73:1662:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1663:94:1663:110 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1663:103:1663:110 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1664:79:1664:95 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1664:88:1664:95 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1665:64:1665:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1665:73:1665:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1666:109:1666:125 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1666:118:1666:125 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1667:94:1667:110 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1667:103:1667:110 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1668:79:1668:95 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1668:88:1668:95 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1669:64:1669:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1669:73:1669:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1670:109:1670:125 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1670:118:1670:125 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1671:94:1671:110 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1671:103:1671:110 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1672:79:1672:95 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1672:88:1672:95 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1673:64:1673:80 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1673:73:1673:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1674:42:1674:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1674:51:1674:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1675:27:1675:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1675:36:1675:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1676:42:1676:58 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1676:51:1676:58 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1677:27:1677:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1677:36:1677:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1678:72:1678:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1678:81:1678:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1679:57:1679:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1679:66:1679:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1680:42:1680:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1680:51:1680:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1681:27:1681:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1681:36:1681:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1682:72:1682:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1682:81:1682:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1683:57:1683:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1683:66:1683:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1684:42:1684:58 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1684:51:1684:58 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1685:27:1685:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1685:36:1685:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1686:41:1686:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1686:50:1686:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1687:26:1687:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1687:35:1687:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1688:41:1688:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1688:50:1688:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1689:26:1689:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1689:35:1689:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1690:26:1690:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1690:35:1690:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1691:26:1691:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1691:35:1691:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1692:41:1692:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1692:41:1692:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1692:55:1692:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1693:41:1693:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1693:41:1693:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1693:55:1693:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1694:56:1694:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1694:65:1694:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1695:41:1695:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1695:50:1695:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1696:26:1696:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1696:35:1696:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1697:56:1697:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1697:65:1697:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1678:27:1678:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1678:36:1678:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1679:27:1679:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1679:36:1679:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1680:42:1680:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1680:42:1680:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1680:56:1680:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1681:42:1681:64 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1681:42:1681:64 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1681:56:1681:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1682:57:1682:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1682:66:1682:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1683:42:1683:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1683:51:1683:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1684:27:1684:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1684:36:1684:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1685:57:1685:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1685:66:1685:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1686:42:1686:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1686:51:1686:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1687:27:1687:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1687:36:1687:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1688:72:1688:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1688:81:1688:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1689:57:1689:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1689:66:1689:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1690:42:1690:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1690:51:1690:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1691:27:1691:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1691:36:1691:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1692:72:1692:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1692:81:1692:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1693:57:1693:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1693:66:1693:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1694:42:1694:58 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1694:51:1694:58 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1695:27:1695:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1695:36:1695:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1696:41:1696:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1696:50:1696:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1697:26:1697:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1697:35:1697:42 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1698:41:1698:57 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1698:50:1698:57 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1699:26:1699:42 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1699:35:1699:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1700:71:1700:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1700:80:1700:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1701:56:1701:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1701:65:1701:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1702:41:1702:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1702:50:1702:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1703:26:1703:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1703:35:1703:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1704:71:1704:87 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1704:80:1704:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1705:56:1705:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1705:65:1705:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1706:41:1706:57 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1706:50:1706:57 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1707:26:1707:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1707:35:1707:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1712:25:1712:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1712:34:1712:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1713:25:1713:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1713:34:1713:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1714:40:1714:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1715:25:1715:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1715:34:1715:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1716:40:1716:62 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1716:40:1716:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1716:54:1716:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1717:25:1717:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1717:34:1717:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1718:40:1718:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1719:55:1719:62 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1720:25:1720:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1720:55:1720:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1725:26:1725:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1725:35:1725:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1726:26:1726:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1726:35:1726:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1727:41:1727:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1728:26:1728:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1728:35:1728:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1729:41:1729:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1729:41:1729:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1729:55:1729:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1730:26:1730:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1730:35:1730:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1731:41:1731:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1732:56:1732:63 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1733:26:1733:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1733:35:1733:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1734:51:1734:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1734:60:1734:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1735:51:1735:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1735:60:1735:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1736:66:1736:73 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1737:51:1737:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1737:60:1737:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1738:66:1738:88 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1738:66:1738:88 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1738:80:1738:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1739:51:1739:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1739:60:1739:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1740:66:1740:73 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1741:81:1741:88 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1742:51:1742:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1742:60:1742:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1743:13:1743:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1743:66:1743:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1744:13:1744:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1744:81:1744:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1745:13:1745:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1745:96:1745:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1746:26:1746:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1746:35:1746:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1747:26:1747:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1747:35:1747:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1748:41:1748:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1749:26:1749:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1749:35:1749:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1750:41:1750:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1750:41:1750:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1750:55:1750:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1751:26:1751:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1751:35:1751:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1752:41:1752:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1753:56:1753:63 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1754:26:1754:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1754:35:1754:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1755:51:1755:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1755:60:1755:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1756:51:1756:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1756:60:1756:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1757:66:1757:73 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1758:51:1758:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1758:60:1758:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1759:66:1759:88 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1759:66:1759:88 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1759:80:1759:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1760:51:1760:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1760:60:1760:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1761:66:1761:73 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1762:81:1762:88 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1763:51:1763:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1763:60:1763:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1764:13:1764:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1764:66:1764:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1765:13:1765:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1765:81:1765:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1766:13:1766:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1766:96:1766:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1767:25:1767:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1767:34:1767:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1768:25:1768:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1768:34:1768:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1769:40:1769:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1770:25:1770:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1770:34:1770:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1771:40:1771:62 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1771:40:1771:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1771:54:1771:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1772:25:1772:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1772:34:1772:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1773:40:1773:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1774:55:1774:62 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1775:25:1775:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1775:34:1775:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1776:50:1776:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1776:59:1776:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1777:50:1777:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1777:59:1777:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1778:65:1778:72 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1779:50:1779:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1779:59:1779:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1780:65:1780:87 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1780:65:1780:87 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1780:79:1780:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1781:50:1781:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1781:59:1781:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1782:65:1782:72 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1783:80:1783:87 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1784:50:1784:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1784:59:1784:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1785:13:1785:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1785:65:1785:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1786:13:1786:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1786:80:1786:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1787:13:1787:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1787:95:1787:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1788:26:1788:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1788:35:1788:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1789:26:1789:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1789:35:1789:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1790:41:1790:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1791:26:1791:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1791:35:1791:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1792:41:1792:63 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1792:41:1792:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1792:55:1792:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1793:26:1793:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1793:35:1793:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1794:41:1794:48 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1795:56:1795:63 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1796:26:1796:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1796:35:1796:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1797:51:1797:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1797:60:1797:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1798:51:1798:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1798:60:1798:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1799:66:1799:73 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1800:51:1800:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1800:60:1800:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1801:66:1801:88 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1801:66:1801:88 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1801:80:1801:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1802:51:1802:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1802:60:1802:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1803:66:1803:73 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1804:81:1804:88 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1805:51:1805:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1805:60:1805:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1806:13:1806:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1806:66:1806:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1807:13:1807:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1807:81:1807:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1808:13:1808:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1808:96:1808:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1809:25:1809:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1809:34:1809:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1810:25:1810:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1810:34:1810:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1811:40:1811:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1812:25:1812:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1812:34:1812:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1813:40:1813:62 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1813:40:1813:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1813:54:1813:61 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1814:25:1814:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1814:34:1814:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1815:40:1815:47 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1816:55:1816:62 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1817:25:1817:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1817:34:1817:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1818:50:1818:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1818:59:1818:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1819:50:1819:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1819:59:1819:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1820:65:1820:72 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1821:50:1821:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1821:59:1821:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1822:65:1822:87 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1822:65:1822:87 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1822:79:1822:86 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1823:50:1823:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1823:59:1823:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1824:65:1824:72 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1825:80:1825:87 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1826:50:1826:66 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1826:59:1826:66 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1827:13:1827:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1827:65:1827:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1828:13:1828:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1828:80:1828:87 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1829:13:1829:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | -| LogInjectionTest.java:1829:95:1829:102 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1834:33:1834:40 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1835:26:1835:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1836:26:1836:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1837:26:1837:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1838:26:1838:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1839:25:1839:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1840:25:1840:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1841:26:1841:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1842:26:1842:33 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1843:25:1843:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1844:25:1844:32 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1845:27:1845:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1846:27:1846:34 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1850:28:1850:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1850:37:1850:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1851:43:1851:65 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1851:43:1851:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1851:57:1851:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1853:21:1853:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1853:30:1853:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1854:36:1854:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1854:45:1854:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1855:21:1855:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1855:30:1855:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1856:51:1856:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1856:60:1856:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1857:36:1857:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1857:45:1857:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1858:21:1858:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1858:30:1858:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1859:66:1859:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1859:75:1859:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1860:51:1860:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1860:60:1860:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1861:36:1861:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1861:45:1861:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1862:21:1862:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1862:30:1862:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1863:81:1863:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1863:90:1863:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1864:66:1864:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1864:75:1864:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1865:51:1865:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1865:60:1865:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1866:36:1866:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1866:45:1866:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1867:21:1867:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1867:30:1867:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1868:96:1868:112 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1868:105:1868:112 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1869:81:1869:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1869:90:1869:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1870:66:1870:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1870:75:1870:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1871:51:1871:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1871:60:1871:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1872:36:1872:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1872:45:1872:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1873:21:1873:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1873:30:1873:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1874:111:1874:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1874:120:1874:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1875:96:1875:112 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1875:105:1875:112 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1876:81:1876:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1876:90:1876:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1877:66:1877:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1877:75:1877:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1878:51:1878:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1878:60:1878:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1879:36:1879:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1879:45:1879:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1880:21:1880:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1880:30:1880:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1881:126:1881:142 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1881:135:1881:142 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1882:111:1882:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1882:120:1882:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1883:96:1883:112 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1883:105:1883:112 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1884:81:1884:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1884:90:1884:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1885:66:1885:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1885:75:1885:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1886:51:1886:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1886:60:1886:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1887:36:1887:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1887:45:1887:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1888:21:1888:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1888:30:1888:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1889:141:1889:157 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1889:150:1889:157 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1890:126:1890:142 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1890:135:1890:142 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1891:111:1891:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1891:120:1891:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1892:96:1892:112 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1892:105:1892:112 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1893:81:1893:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1893:90:1893:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1894:66:1894:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1894:75:1894:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1895:51:1895:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1895:60:1895:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1896:36:1896:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1896:45:1896:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1897:21:1897:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1897:30:1897:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1898:156:1898:172 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1898:165:1898:172 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1700:26:1700:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1700:35:1700:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1701:26:1701:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1701:35:1701:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1702:41:1702:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1702:41:1702:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1702:55:1702:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1703:41:1703:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1703:41:1703:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1703:55:1703:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1704:56:1704:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1704:65:1704:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1705:41:1705:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1705:50:1705:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1706:26:1706:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1706:35:1706:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1707:56:1707:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1707:65:1707:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1708:41:1708:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1708:50:1708:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1709:26:1709:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1709:35:1709:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1710:71:1710:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1710:80:1710:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1711:56:1711:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1711:65:1711:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1712:41:1712:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1712:50:1712:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1713:26:1713:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1713:35:1713:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1714:71:1714:87 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1714:80:1714:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1715:56:1715:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1715:65:1715:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1716:41:1716:57 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1716:50:1716:57 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1717:26:1717:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1717:35:1717:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1722:25:1722:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1722:34:1722:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1723:25:1723:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1723:34:1723:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1724:40:1724:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1725:25:1725:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1725:34:1725:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1726:40:1726:62 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1726:40:1726:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1726:54:1726:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1727:25:1727:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1727:34:1727:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1728:40:1728:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1729:55:1729:62 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1730:25:1730:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1730:55:1730:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1735:26:1735:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1735:35:1735:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1736:26:1736:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1736:35:1736:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1737:41:1737:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1738:26:1738:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1738:35:1738:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1739:41:1739:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1739:41:1739:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1739:55:1739:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1740:26:1740:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1740:35:1740:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1741:41:1741:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1742:56:1742:63 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1743:26:1743:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1743:35:1743:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1744:51:1744:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1744:60:1744:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1745:51:1745:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1745:60:1745:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1746:66:1746:73 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1747:51:1747:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1747:60:1747:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1748:66:1748:88 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1748:66:1748:88 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1748:80:1748:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1749:51:1749:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1749:60:1749:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1750:66:1750:73 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1751:81:1751:88 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1752:51:1752:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1752:60:1752:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1753:13:1753:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1753:66:1753:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1754:13:1754:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1754:81:1754:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1755:13:1755:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1755:96:1755:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1756:26:1756:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1756:35:1756:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1757:26:1757:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1757:35:1757:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1758:41:1758:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1759:26:1759:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1759:35:1759:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1760:41:1760:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1760:41:1760:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1760:55:1760:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1761:26:1761:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1761:35:1761:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1762:41:1762:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1763:56:1763:63 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1764:26:1764:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1764:35:1764:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1765:51:1765:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1765:60:1765:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1766:51:1766:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1766:60:1766:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1767:66:1767:73 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1768:51:1768:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1768:60:1768:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1769:66:1769:88 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1769:66:1769:88 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1769:80:1769:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1770:51:1770:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1770:60:1770:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1771:66:1771:73 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1772:81:1772:88 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1773:51:1773:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1773:60:1773:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1774:13:1774:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1774:66:1774:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1775:13:1775:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1775:81:1775:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1776:13:1776:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1776:96:1776:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1777:25:1777:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1777:34:1777:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1778:25:1778:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1778:34:1778:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1779:40:1779:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1780:25:1780:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1780:34:1780:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1781:40:1781:62 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1781:40:1781:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1781:54:1781:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1782:25:1782:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1782:34:1782:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1783:40:1783:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1784:55:1784:62 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1785:25:1785:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1785:34:1785:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1786:50:1786:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1786:59:1786:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1787:50:1787:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1787:59:1787:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1788:65:1788:72 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1789:50:1789:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1789:59:1789:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1790:65:1790:87 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1790:65:1790:87 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1790:79:1790:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1791:50:1791:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1791:59:1791:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1792:65:1792:72 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1793:80:1793:87 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1794:50:1794:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1794:59:1794:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1795:13:1795:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1795:65:1795:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1796:13:1796:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1796:80:1796:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1797:13:1797:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1797:95:1797:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1798:26:1798:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1798:35:1798:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1799:26:1799:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1799:35:1799:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1800:41:1800:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1801:26:1801:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1801:35:1801:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1802:41:1802:63 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1802:41:1802:63 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1802:55:1802:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1803:26:1803:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1803:35:1803:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1804:41:1804:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1805:56:1805:63 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1806:26:1806:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1806:35:1806:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1807:51:1807:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1807:60:1807:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1808:51:1808:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1808:60:1808:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1809:66:1809:73 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1810:51:1810:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1810:60:1810:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1811:66:1811:88 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1811:66:1811:88 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1811:80:1811:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1812:51:1812:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1812:60:1812:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1813:66:1813:73 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1814:81:1814:88 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1815:51:1815:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1815:60:1815:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1816:13:1816:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1816:66:1816:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1817:13:1817:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1817:81:1817:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1818:13:1818:104 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1818:96:1818:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1819:25:1819:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1819:34:1819:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1820:25:1820:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1820:34:1820:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1821:40:1821:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1822:25:1822:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1822:34:1822:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1823:40:1823:62 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1823:40:1823:62 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1823:54:1823:61 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1824:25:1824:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1824:34:1824:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1825:40:1825:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1826:55:1826:62 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1827:25:1827:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1827:34:1827:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1828:50:1828:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1828:59:1828:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1829:50:1829:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1829:59:1829:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1830:65:1830:72 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1831:50:1831:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1831:59:1831:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1832:65:1832:87 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1832:65:1832:87 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1832:79:1832:86 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1833:50:1833:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1833:59:1833:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1834:65:1834:72 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1835:80:1835:87 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1836:50:1836:66 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1836:59:1836:66 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1837:13:1837:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1837:65:1837:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1838:13:1838:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1838:80:1838:87 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1839:13:1839:103 | new ..[] { .. } | semmle.label | new ..[] { .. } | +| LogInjectionTest.java:1839:95:1839:102 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1844:33:1844:40 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1845:26:1845:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1846:26:1846:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1847:26:1847:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1848:26:1848:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1849:25:1849:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1850:25:1850:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1851:26:1851:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1852:26:1852:33 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1853:25:1853:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1854:25:1854:32 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1855:27:1855:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1856:27:1856:34 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1860:28:1860:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1860:37:1860:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1861:43:1861:65 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1861:43:1861:65 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1861:57:1861:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1863:21:1863:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1863:30:1863:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1864:36:1864:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1864:45:1864:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1865:21:1865:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1865:30:1865:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1866:51:1866:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1866:60:1866:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1867:36:1867:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1867:45:1867:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1868:21:1868:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1868:30:1868:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1869:66:1869:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1869:75:1869:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1870:51:1870:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1870:60:1870:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1871:36:1871:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1871:45:1871:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1872:21:1872:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1872:30:1872:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1873:81:1873:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1873:90:1873:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1874:66:1874:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1874:75:1874:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1875:51:1875:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1875:60:1875:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1876:36:1876:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1876:45:1876:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1877:21:1877:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1877:30:1877:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1878:96:1878:112 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1878:105:1878:112 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1879:81:1879:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1879:90:1879:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1880:66:1880:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1880:75:1880:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1881:51:1881:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1881:60:1881:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1882:36:1882:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1882:45:1882:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1883:21:1883:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1883:30:1883:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1884:111:1884:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1884:120:1884:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1885:96:1885:112 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1885:105:1885:112 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1886:81:1886:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1886:90:1886:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1887:66:1887:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1887:75:1887:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1888:51:1888:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1888:60:1888:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1889:36:1889:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1889:45:1889:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1890:21:1890:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1890:30:1890:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1891:126:1891:142 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1891:135:1891:142 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1892:111:1892:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1892:120:1892:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1893:96:1893:112 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1893:105:1893:112 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1894:81:1894:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1894:90:1894:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1895:66:1895:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1895:75:1895:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1896:51:1896:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1896:60:1896:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1897:36:1897:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1897:45:1897:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1898:21:1898:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1898:30:1898:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1899:141:1899:157 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1899:150:1899:157 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1900:126:1900:142 | (...)... | semmle.label | (...)... | @@ -7707,78 +7691,83 @@ nodes | LogInjectionTest.java:1906:45:1906:52 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1907:21:1907:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1907:30:1907:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1908:171:1908:187 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1908:180:1908:187 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1909:156:1909:172 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1909:165:1909:172 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1910:141:1910:157 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1910:150:1910:157 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1911:126:1911:142 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1911:135:1911:142 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1912:111:1912:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1912:120:1912:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1913:96:1913:112 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1913:105:1913:112 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1914:81:1914:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1914:90:1914:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1915:66:1915:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1915:75:1915:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1916:51:1916:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1916:60:1916:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1917:36:1917:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1917:45:1917:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1918:21:1918:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1918:30:1918:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1919:186:1919:207 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:1919:186:1919:207 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:1919:199:1919:206 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1920:171:1920:187 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1920:180:1920:187 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1921:156:1921:172 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1921:165:1921:172 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1922:141:1922:157 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1922:150:1922:157 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1923:126:1923:142 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1923:135:1923:142 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1924:111:1924:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1924:120:1924:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1925:96:1925:112 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1925:105:1925:112 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1926:81:1926:97 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1926:90:1926:97 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1927:66:1927:82 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1927:75:1927:82 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1928:51:1928:67 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1928:60:1928:67 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1929:36:1929:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1929:45:1929:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1930:21:1930:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1930:30:1930:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1932:21:1932:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1932:30:1932:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1933:21:1933:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1933:30:1933:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1934:21:1934:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1934:30:1934:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1935:21:1935:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1935:30:1935:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1936:21:1936:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1936:30:1936:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1937:21:1937:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1937:30:1937:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1938:36:1938:43 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1939:21:1939:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1939:30:1939:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1940:36:1940:43 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:1941:21:1941:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1941:30:1941:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1942:36:1942:43 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1908:156:1908:172 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1908:165:1908:172 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1909:141:1909:157 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1909:150:1909:157 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1910:126:1910:142 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1910:135:1910:142 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1911:111:1911:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1911:120:1911:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1912:96:1912:112 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1912:105:1912:112 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1913:81:1913:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1913:90:1913:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1914:66:1914:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1914:75:1914:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1915:51:1915:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1915:60:1915:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1916:36:1916:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1916:45:1916:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1917:21:1917:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1917:30:1917:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1918:171:1918:187 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1918:180:1918:187 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1919:156:1919:172 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1919:165:1919:172 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1920:141:1920:157 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1920:150:1920:157 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1921:126:1921:142 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1921:135:1921:142 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1922:111:1922:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1922:120:1922:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1923:96:1923:112 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1923:105:1923:112 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1924:81:1924:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1924:90:1924:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1925:66:1925:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1925:75:1925:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1926:51:1926:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1926:60:1926:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1927:36:1927:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1927:45:1927:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1928:21:1928:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1928:30:1928:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1929:186:1929:207 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:1929:186:1929:207 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:1929:199:1929:206 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1930:171:1930:187 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1930:180:1930:187 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1931:156:1931:172 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1931:165:1931:172 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1932:141:1932:157 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1932:150:1932:157 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1933:126:1933:142 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1933:135:1933:142 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1934:111:1934:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1934:120:1934:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1935:96:1935:112 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1935:105:1935:112 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1936:81:1936:97 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1936:90:1936:97 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1937:66:1937:82 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1937:75:1937:82 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1938:51:1938:67 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1938:60:1938:67 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1939:36:1939:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1939:45:1939:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1940:21:1940:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1940:30:1940:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1942:21:1942:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1942:30:1942:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1943:21:1943:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1943:30:1943:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1944:36:1944:43 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1944:21:1944:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1944:30:1944:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1945:21:1945:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1945:30:1945:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1946:36:1946:43 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1946:21:1946:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:1946:30:1946:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1947:21:1947:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1947:30:1947:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1948:36:1948:43 | source(...) | semmle.label | source(...) | @@ -7790,48 +7779,43 @@ nodes | LogInjectionTest.java:1952:36:1952:43 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1953:21:1953:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1953:30:1953:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1954:43:1954:50 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1954:36:1954:43 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1955:21:1955:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1955:30:1955:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1956:41:1956:48 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1956:36:1956:43 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1957:21:1957:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1957:30:1957:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1958:46:1958:53 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1958:36:1958:43 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1959:21:1959:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1959:30:1959:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1960:47:1960:54 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1960:36:1960:43 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1961:21:1961:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1961:30:1961:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1962:39:1962:46 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1962:36:1962:43 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1963:21:1963:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1963:30:1963:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1964:40:1964:47 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1964:43:1964:50 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1965:21:1965:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1965:30:1965:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1966:47:1966:54 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1966:41:1966:48 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1967:21:1967:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1967:30:1967:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1968:48:1968:55 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:1968:46:1968:53 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1969:21:1969:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1969:30:1969:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1970:21:1970:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1970:30:1970:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1970:47:1970:54 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1971:21:1971:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1971:30:1971:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1972:21:1972:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1972:30:1972:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1972:39:1972:46 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1973:21:1973:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1973:30:1973:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1974:21:1974:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1974:30:1974:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1974:40:1974:47 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1975:21:1975:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1975:30:1975:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1976:21:1976:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1976:30:1976:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1976:47:1976:54 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1977:21:1977:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1977:30:1977:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:1978:21:1978:37 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:1978:30:1978:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:1978:48:1978:55 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:1979:21:1979:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:1979:30:1979:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:1980:21:1980:37 | (...)... | semmle.label | (...)... | @@ -7940,162 +7924,162 @@ nodes | LogInjectionTest.java:2031:30:2031:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2032:21:2032:37 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2032:30:2032:37 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2037:27:2037:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2037:36:2037:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2038:27:2038:64 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2038:57:2038:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2039:25:2039:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2039:34:2039:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2040:25:2040:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2040:55:2040:62 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2041:26:2041:42 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2041:35:2041:42 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2042:26:2042:63 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2042:56:2042:63 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2043:27:2043:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2043:36:2043:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2044:27:2044:64 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2044:57:2044:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2045:25:2045:41 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2045:34:2045:41 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2046:25:2046:62 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2046:55:2046:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2033:21:2033:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2033:30:2033:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2034:21:2034:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2034:30:2034:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2035:21:2035:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2035:30:2035:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2036:21:2036:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2036:30:2036:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2037:21:2037:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2037:30:2037:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2038:21:2038:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2038:30:2038:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2039:21:2039:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2039:30:2039:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2040:21:2040:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2040:30:2040:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2041:21:2041:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2041:30:2041:37 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2042:21:2042:37 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2042:30:2042:37 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2047:27:2047:43 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2047:36:2047:43 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2048:27:2048:64 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2048:57:2048:64 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2049:28:2049:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2049:37:2049:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2050:28:2050:65 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2050:58:2050:65 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2051:29:2051:45 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2051:38:2051:45 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2052:44:2052:60 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2052:53:2052:60 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2053:29:2053:45 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2053:38:2053:45 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2054:44:2054:60 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2054:53:2054:60 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2055:59:2055:75 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2055:68:2055:75 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2056:29:2056:45 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2056:38:2056:45 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2057:44:2057:60 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2057:53:2057:60 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2058:59:2058:81 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:2058:59:2058:81 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:2058:73:2058:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2049:25:2049:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2049:34:2049:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2050:25:2050:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2050:55:2050:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2051:26:2051:42 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2051:35:2051:42 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2052:26:2052:63 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2052:56:2052:63 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2053:27:2053:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2053:36:2053:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2054:27:2054:64 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2054:57:2054:64 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2055:25:2055:41 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2055:34:2055:41 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2056:25:2056:62 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2056:55:2056:62 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2057:27:2057:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2057:36:2057:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2058:27:2058:64 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2058:57:2058:64 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2059:28:2059:44 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2059:37:2059:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2060:43:2060:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2060:52:2060:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2061:28:2061:44 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2061:37:2061:44 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2062:43:2062:59 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2062:52:2062:59 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2063:58:2063:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2063:67:2063:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2064:56:2064:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2064:65:2064:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2065:56:2065:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2065:65:2065:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2066:71:2066:78 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:2067:56:2067:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2067:65:2067:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2068:71:2068:92 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:2068:71:2068:92 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:2068:84:2068:91 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2069:56:2069:72 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2069:65:2069:72 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2070:56:2070:93 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2070:86:2070:93 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2071:74:2071:111 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2071:104:2071:111 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2072:24:2072:43 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2072:36:2072:43 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2073:57:2073:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2073:66:2073:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2074:72:2074:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2074:81:2074:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2075:87:2075:103 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2075:96:2075:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2076:57:2076:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2076:66:2076:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2077:72:2077:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2077:81:2077:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2078:87:2078:103 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2078:96:2078:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2079:102:2079:109 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:2080:57:2080:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2080:66:2080:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2081:72:2081:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2081:81:2081:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2082:87:2082:103 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2082:96:2082:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2083:102:2083:124 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:2083:102:2083:124 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:2083:116:2083:123 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2084:57:2084:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2084:66:2084:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2085:72:2085:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2085:81:2085:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2086:87:2086:103 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2086:96:2086:103 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2087:57:2087:73 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2087:66:2087:73 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2088:72:2088:88 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2088:81:2088:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2089:87:2089:124 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2089:117:2089:124 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2060:28:2060:65 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2060:58:2060:65 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2061:29:2061:45 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2061:38:2061:45 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2062:44:2062:60 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2062:53:2062:60 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2063:29:2063:45 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2063:38:2063:45 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2064:44:2064:60 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2064:53:2064:60 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2065:59:2065:75 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2065:68:2065:75 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2066:29:2066:45 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2066:38:2066:45 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2067:44:2067:60 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2067:53:2067:60 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2068:59:2068:81 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:2068:59:2068:81 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:2068:73:2068:80 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2069:28:2069:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2069:37:2069:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2070:43:2070:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2070:52:2070:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2071:28:2071:44 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2071:37:2071:44 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2072:43:2072:59 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2072:52:2072:59 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2073:58:2073:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2073:67:2073:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2074:56:2074:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2074:65:2074:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2075:56:2075:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2075:65:2075:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2076:71:2076:78 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:2077:56:2077:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2077:65:2077:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2078:71:2078:92 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:2078:71:2078:92 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:2078:84:2078:91 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2079:56:2079:72 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2079:65:2079:72 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2080:56:2080:93 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2080:86:2080:93 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2081:74:2081:111 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2081:104:2081:111 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2082:24:2082:43 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2082:36:2082:43 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2083:57:2083:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2083:66:2083:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2084:72:2084:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2084:81:2084:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2085:87:2085:103 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2085:96:2085:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2086:57:2086:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2086:66:2086:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2087:72:2087:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2087:81:2087:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2088:87:2088:103 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2088:96:2088:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2089:102:2089:109 | source(...) | semmle.label | source(...) | | LogInjectionTest.java:2090:57:2090:73 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2090:66:2090:73 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2091:72:2091:88 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2091:81:2091:88 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2092:105:2092:142 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2092:135:2092:142 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2093:58:2093:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2093:67:2093:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2094:73:2094:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2094:82:2094:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2095:111:2095:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2095:120:2095:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2096:126:2096:148 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:2096:126:2096:148 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:2096:140:2096:147 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2097:58:2097:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2097:67:2097:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2098:73:2098:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2098:82:2098:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2099:111:2099:127 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2099:120:2099:127 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2100:58:2100:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2100:67:2100:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2101:73:2101:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2101:82:2101:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2102:88:2102:104 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2102:97:2102:104 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2103:103:2103:119 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2103:112:2103:119 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2104:58:2104:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2104:67:2104:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2105:73:2105:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2105:82:2105:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2106:88:2106:104 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2106:97:2106:104 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2107:103:2107:119 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2107:112:2107:119 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2108:118:2108:125 | source(...) | semmle.label | source(...) | -| LogInjectionTest.java:2109:58:2109:74 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2109:67:2109:74 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2110:73:2110:89 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2110:82:2110:89 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2111:88:2111:104 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2111:97:2111:104 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2112:103:2112:119 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2112:112:2112:119 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2113:118:2113:140 | new Object[] | semmle.label | new Object[] | -| LogInjectionTest.java:2113:118:2113:140 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | -| LogInjectionTest.java:2113:132:2113:139 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2092:87:2092:103 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2092:96:2092:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2093:102:2093:124 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:2093:102:2093:124 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:2093:116:2093:123 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2094:57:2094:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2094:66:2094:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2095:72:2095:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2095:81:2095:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2096:87:2096:103 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2096:96:2096:103 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2097:57:2097:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2097:66:2097:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2098:72:2098:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2098:81:2098:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2099:87:2099:124 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2099:117:2099:124 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2100:57:2100:73 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2100:66:2100:73 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2101:72:2101:88 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2101:81:2101:88 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2102:105:2102:142 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2102:135:2102:142 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2103:58:2103:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2103:67:2103:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2104:73:2104:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2104:82:2104:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2105:111:2105:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2105:120:2105:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2106:126:2106:148 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:2106:126:2106:148 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:2106:140:2106:147 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2107:58:2107:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2107:67:2107:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2108:73:2108:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2108:82:2108:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2109:111:2109:127 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2109:120:2109:127 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2110:58:2110:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2110:67:2110:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2111:73:2111:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2111:82:2111:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2112:88:2112:104 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2112:97:2112:104 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2113:103:2113:119 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2113:112:2113:119 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2114:58:2114:74 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2114:67:2114:74 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2115:73:2115:89 | (...)... | semmle.label | (...)... | @@ -8104,28 +8088,48 @@ nodes | LogInjectionTest.java:2116:97:2116:104 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2117:103:2117:119 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2117:112:2117:119 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2121:36:2121:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2121:45:2121:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2122:36:2122:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2122:45:2122:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2123:36:2123:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2123:45:2123:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2124:36:2124:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2124:45:2124:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2125:36:2125:52 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2125:45:2125:52 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2126:38:2126:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2126:47:2126:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2131:38:2131:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2131:47:2131:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2133:38:2133:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2133:47:2133:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2135:38:2135:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2135:47:2135:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2137:38:2137:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2137:47:2137:54 | source(...) : Object | semmle.label | source(...) : Object | -| LogInjectionTest.java:2139:38:2139:54 | (...)... | semmle.label | (...)... | -| LogInjectionTest.java:2139:47:2139:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2118:118:2118:125 | source(...) | semmle.label | source(...) | +| LogInjectionTest.java:2119:58:2119:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2119:67:2119:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2120:73:2120:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2120:82:2120:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2121:88:2121:104 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2121:97:2121:104 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2122:103:2122:119 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2122:112:2122:119 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2123:118:2123:140 | new Object[] | semmle.label | new Object[] | +| LogInjectionTest.java:2123:118:2123:140 | {...} : Object[] [[]] : Object | semmle.label | {...} : Object[] [[]] : Object | +| LogInjectionTest.java:2123:132:2123:139 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2124:58:2124:74 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2124:67:2124:74 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2125:73:2125:89 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2125:82:2125:89 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2126:88:2126:104 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2126:97:2126:104 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2127:103:2127:119 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2127:112:2127:119 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2131:36:2131:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2131:45:2131:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2132:36:2132:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2132:45:2132:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2133:36:2133:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2133:45:2133:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2134:36:2134:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2134:45:2134:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2135:36:2135:52 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2135:45:2135:52 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2136:38:2136:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2136:47:2136:54 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:2141:38:2141:54 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2141:47:2141:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2143:38:2143:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2143:47:2143:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2145:38:2145:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2145:47:2145:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2147:38:2147:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2147:47:2147:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2149:38:2149:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2149:47:2149:54 | source(...) : Object | semmle.label | source(...) : Object | +| LogInjectionTest.java:2151:38:2151:54 | (...)... | semmle.label | (...)... | +| LogInjectionTest.java:2151:47:2151:54 | source(...) : Object | semmle.label | source(...) : Object | subpaths diff --git a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.ext.yml b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.ext.yml index 2ed1c17f6fe3..b9c9ffc5b940 100644 --- a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.ext.yml +++ b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.ext.yml @@ -4,3 +4,5 @@ extensions: extensible: sourceModel data: - ["loginjection", "LogInjectionTest", False, "source", "()", "", "ReturnValue", "remote", "manual"] + - ["loginjection", "LogInjectionTest", False, "validatedInput", "()", "", "ReturnValue", "remote", "manual"] + - ["loginjection", "LogInjectionTest", False, "validatedInputField", "", "", "", "remote", "manual"] diff --git a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.java b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.java index 118a55bc7fad..67dad8147ccb 100644 --- a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.java +++ b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.java @@ -19,6 +19,14 @@ import org.slf4j.spi.LoggingEventBuilder; public class LogInjectionTest { + @javax.validation.constraints.Pattern(regexp = "^[a-zA-Z0-9]*$") + public String validatedInputField; + + @javax.validation.constraints.Pattern(regexp = "[^\n\r]*") + public String validatedInput() { + return (String) source(); + } + public Object source() { return null; } @@ -187,6 +195,8 @@ public void testGuards() { logger.debug(source); // $ MISSING: $ Alert } + logger.debug(validatedInputField); // $ SPURIOUS: Alert + logger.debug(validatedInput()); // $ SPURIOUS: Alert } public void test() { diff --git a/java/ql/test/query-tests/security/CWE-117/options b/java/ql/test/query-tests/security/CWE-117/options index 372b08b08066..b0b3d9323e95 100644 --- a/java/ql/test/query-tests/security/CWE-117/options +++ b/java/ql/test/query-tests/security/CWE-117/options @@ -1 +1 @@ -//semmle-extractor-options: --javac-args -cp ${testdir}/../../../stubs/apache-log4j-1.2.17:${testdir}/../../../stubs/apache-log4j-2.14.1:${testdir}/../../../stubs/apache-commons-logging-1.2:${testdir}/../../../stubs/jboss-logging-3.4.2:${testdir}/../../../stubs/slf4j-2.0.0:${testdir}/../../../stubs/scijava-common-2.87.1:${testdir}/../../../stubs/flogger-0.7.1:${testdir}/../../../stubs/google-android-9.0.0:${testdir}/../../../stubs/apache-cxf \ No newline at end of file +//semmle-extractor-options: --javac-args -cp ${testdir}/../../../stubs/javax-validation-constraints:${testdir}/../../../stubs/apache-log4j-1.2.17:${testdir}/../../../stubs/apache-log4j-2.14.1:${testdir}/../../../stubs/apache-commons-logging-1.2:${testdir}/../../../stubs/jboss-logging-3.4.2:${testdir}/../../../stubs/slf4j-2.0.0:${testdir}/../../../stubs/scijava-common-2.87.1:${testdir}/../../../stubs/flogger-0.7.1:${testdir}/../../../stubs/google-android-9.0.0:${testdir}/../../../stubs/apache-cxf From 6c0c1d558ec49f3924defdc92ca68c95caa9ae7a Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 14 Feb 2026 01:20:41 +0000 Subject: [PATCH 425/433] Refactor logInjectionGuard part 1 --- .../lib/semmle/code/java/security/LogInjection.qll | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/java/ql/lib/semmle/code/java/security/LogInjection.qll b/java/ql/lib/semmle/code/java/security/LogInjection.qll index da5a1dc73a0c..302b5cd84821 100644 --- a/java/ql/lib/semmle/code/java/security/LogInjection.qll +++ b/java/ql/lib/semmle/code/java/security/LogInjection.qll @@ -96,16 +96,17 @@ private predicate logInjectionSanitizer(MethodCall ma) { * by checking if there are line breaks in `e`. */ private predicate logInjectionGuard(Guard g, Expr e, boolean branch) { + exists(MethodCall ma | ma = g | + ma.getMethod() instanceof StringContainsMethod and + ma.getArgument(0).(CompileTimeConstantExpr).getStringValue() = ["\n", "\r"] and + e = ma.getQualifier() and + branch = false + ) + or exists(MethodCall ma, CompileTimeConstantExpr target | ma = g and target = ma.getArgument(0) | - ma.getMethod().getDeclaringType() instanceof TypeString and - ma.getMethod().hasName("contains") and - target.getStringValue() = ["\n", "\r"] and - e = ma.getQualifier() and - branch = false - or ma.getMethod().hasName("matches") and ( ma.getMethod().getDeclaringType() instanceof TypeString and From 60e58f8219f6cdc78f1859cf87dac98d7b4c273f Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 14 Feb 2026 01:26:46 +0000 Subject: [PATCH 426/433] Refactor logInjectionGuard part 2 --- .../code/java/security/LogInjection.qll | 41 ++++++++----------- 1 file changed, 16 insertions(+), 25 deletions(-) diff --git a/java/ql/lib/semmle/code/java/security/LogInjection.qll b/java/ql/lib/semmle/code/java/security/LogInjection.qll index 302b5cd84821..deb72e5cf6a7 100644 --- a/java/ql/lib/semmle/code/java/security/LogInjection.qll +++ b/java/ql/lib/semmle/code/java/security/LogInjection.qll @@ -103,35 +103,26 @@ private predicate logInjectionGuard(Guard g, Expr e, boolean branch) { branch = false ) or - exists(MethodCall ma, CompileTimeConstantExpr target | - ma = g and - target = ma.getArgument(0) + exists(RegexMatch rm, CompileTimeConstantExpr target | + rm = g and + target = rm.getRegex() and + e = rm.getString() | - ma.getMethod().hasName("matches") and + // Allow anything except line breaks ( - ma.getMethod().getDeclaringType() instanceof TypeString and - e = ma.getQualifier() + not target.getStringValue().matches("%[^%]%") and + not target.getStringValue().matches("%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%") or - ma.getMethod().getDeclaringType().hasQualifiedName("java.util.regex", "Pattern") and - e = ma.getArgument(1) + target.getStringValue().matches("%[^%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%]%") ) and + branch = true + or + // Disallow line breaks ( - // Allow anything except line breaks - ( - not target.getStringValue().matches("%[^%]%") and - not target.getStringValue().matches("%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%") - or - target.getStringValue().matches("%[^%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%]%") - ) and - branch = true - or - // Disallow line breaks - ( - not target.getStringValue().matches("%[^%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%]%") and - // Assuming a regex containing line breaks is correctly matching line breaks in a string - target.getStringValue().matches("%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%") - ) and - branch = false - ) + not target.getStringValue().matches("%[^%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%]%") and + // Assuming a regex containing line breaks is correctly matching line breaks in a string + target.getStringValue().matches("%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%") + ) and + branch = false ) } From 924bb92d914875723ea11718e1c1da8898a5dd03 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 14 Feb 2026 08:24:12 +0000 Subject: [PATCH 427/433] Expand log injection sanitizer guards to non-annotation regex matches --- .../code/java/security/LogInjection.qll | 45 ++++++++++++------- 1 file changed, 28 insertions(+), 17 deletions(-) diff --git a/java/ql/lib/semmle/code/java/security/LogInjection.qll b/java/ql/lib/semmle/code/java/security/LogInjection.qll index deb72e5cf6a7..c31e74341408 100644 --- a/java/ql/lib/semmle/code/java/security/LogInjection.qll +++ b/java/ql/lib/semmle/code/java/security/LogInjection.qll @@ -105,24 +105,35 @@ private predicate logInjectionGuard(Guard g, Expr e, boolean branch) { or exists(RegexMatch rm, CompileTimeConstantExpr target | rm = g and + not rm instanceof Annotation and target = rm.getRegex() and - e = rm.getString() + e = rm.getASanitizedExpr() | - // Allow anything except line breaks - ( - not target.getStringValue().matches("%[^%]%") and - not target.getStringValue().matches("%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%") - or - target.getStringValue().matches("%[^%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%]%") - ) and - branch = true - or - // Disallow line breaks - ( - not target.getStringValue().matches("%[^%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%]%") and - // Assuming a regex containing line breaks is correctly matching line breaks in a string - target.getStringValue().matches("%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%") - ) and - branch = false + regexPreventsLogInjection(target.getStringValue(), branch) ) } + +/** + * Holds if `regex` matches against a pattern that allows anything except + * line breaks when `branch` is `true`, or a pattern that matches line breaks + * when `branch` is `false`. + */ +bindingset[regex] +private predicate regexPreventsLogInjection(string regex, boolean branch) { + // Allow anything except line breaks + ( + not regex.matches("%[^%]%") and + not regex.matches("%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%") + or + regex.matches("%[^%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%]%") + ) and + branch = true + or + // Disallow line breaks + ( + not regex.matches("%[^%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%]%") and + // Assuming a regex containing line breaks is correctly matching line breaks in a string + regex.matches("%" + ["\n", "\r", "\\n", "\\r", "\\R"] + "%") + ) and + branch = false +} From 9fc95f5171c4574a8ce21f1df82b107a44a3ec00 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 14 Feb 2026 08:26:26 +0000 Subject: [PATCH 428/433] Expand log injection sanitizers to annotation regex matches --- .../semmle/code/java/security/LogInjection.qll | 16 ++++++++++++---- .../security/CWE-117/LogInjectionTest.expected | 7 +++---- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/java/ql/lib/semmle/code/java/security/LogInjection.qll b/java/ql/lib/semmle/code/java/security/LogInjection.qll index c31e74341408..b35331f043d1 100644 --- a/java/ql/lib/semmle/code/java/security/LogInjection.qll +++ b/java/ql/lib/semmle/code/java/security/LogInjection.qll @@ -64,11 +64,12 @@ private predicate stringMethodArgumentValueMatches(CompileTimeConstantExpr const } /** - * Holds if the return value of `ma` is sanitized against log injection attacks - * by removing line breaks from it. + * Holds if `e` is sanitized against log injection attacks by removing line + * breaks from it. */ -private predicate logInjectionSanitizer(MethodCall ma) { - exists(CompileTimeConstantExpr target, CompileTimeConstantExpr replacement | +private predicate logInjectionSanitizer(Expr e) { + exists(MethodCall ma, CompileTimeConstantExpr target, CompileTimeConstantExpr replacement | + e = ma and stringMethodCall(ma, target, replacement) and not stringMethodArgumentValueMatches(replacement, ["%\n%", "%\r%"]) | @@ -89,6 +90,13 @@ private predicate logInjectionSanitizer(MethodCall ma) { target.getStringValue() = ["\n", "\r", "\\n", "\\r", "\\R"] ) ) + or + exists(RegexMatch rm, CompileTimeConstantExpr target | + rm instanceof Annotation and + e = rm.getASanitizedExpr() and + target = rm.getRegex() and + regexPreventsLogInjection(target.getStringValue(), true) + ) } /** diff --git a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected index 9fb5121bd1ae..eeddd876db30 100644 --- a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected +++ b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected @@ -46,8 +46,6 @@ | LogInjectionTest.java:183:26:183:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:183:26:183:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | | LogInjectionTest.java:187:26:187:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:187:26:187:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | | LogInjectionTest.java:193:26:193:31 | source | LogInjectionTest.java:75:34:75:41 | source(...) : Object | LogInjectionTest.java:193:26:193:31 | source | This log entry depends on a $@. | LogInjectionTest.java:75:34:75:41 | source(...) | user-provided value | -| LogInjectionTest.java:198:22:198:40 | validatedInputField | LogInjectionTest.java:198:22:198:40 | validatedInputField | LogInjectionTest.java:198:22:198:40 | validatedInputField | This log entry depends on a $@. | LogInjectionTest.java:198:22:198:40 | validatedInputField | user-provided value | -| LogInjectionTest.java:199:22:199:37 | validatedInput(...) | LogInjectionTest.java:199:22:199:37 | validatedInput(...) | LogInjectionTest.java:199:22:199:37 | validatedInput(...) | This log entry depends on a $@. | LogInjectionTest.java:199:22:199:37 | validatedInput(...) | user-provided value | | LogInjectionTest.java:205:39:205:55 | (...)... | LogInjectionTest.java:205:48:205:55 | source(...) : Object | LogInjectionTest.java:205:39:205:55 | (...)... | This log entry depends on a $@. | LogInjectionTest.java:205:48:205:55 | source(...) | user-provided value | | LogInjectionTest.java:206:28:206:35 | source(...) | LogInjectionTest.java:206:28:206:35 | source(...) | LogInjectionTest.java:206:28:206:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:206:28:206:35 | source(...) | user-provided value | | LogInjectionTest.java:207:28:207:35 | source(...) | LogInjectionTest.java:207:28:207:35 | source(...) | LogInjectionTest.java:207:28:207:35 | source(...) | This log entry depends on a $@. | LogInjectionTest.java:207:28:207:35 | source(...) | user-provided value | @@ -4517,8 +4515,6 @@ nodes | LogInjectionTest.java:183:26:183:31 | source | semmle.label | source | | LogInjectionTest.java:187:26:187:31 | source | semmle.label | source | | LogInjectionTest.java:193:26:193:31 | source | semmle.label | source | -| LogInjectionTest.java:198:22:198:40 | validatedInputField | semmle.label | validatedInputField | -| LogInjectionTest.java:199:22:199:37 | validatedInput(...) | semmle.label | validatedInput(...) | | LogInjectionTest.java:205:39:205:55 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:205:48:205:55 | source(...) : Object | semmle.label | source(...) : Object | | LogInjectionTest.java:206:28:206:35 | source(...) | semmle.label | source(...) | @@ -8133,3 +8129,6 @@ nodes | LogInjectionTest.java:2151:38:2151:54 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2151:47:2151:54 | source(...) : Object | semmle.label | source(...) : Object | subpaths +testFailures +| LogInjectionTest.java:198:44:198:63 | // $ SPURIOUS: Alert | Fixed spurious result: Alert | +| LogInjectionTest.java:199:41:199:60 | // $ SPURIOUS: Alert | Fixed spurious result: Alert | From 94f1d94a2b10b2bae9449da86714e23589d3a0fb Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 14 Feb 2026 01:38:34 +0000 Subject: [PATCH 429/433] Rename `MethodCall ma` to `mc` --- .../code/java/security/LogInjection.qll | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/java/ql/lib/semmle/code/java/security/LogInjection.qll b/java/ql/lib/semmle/code/java/security/LogInjection.qll index b35331f043d1..b585c249d1eb 100644 --- a/java/ql/lib/semmle/code/java/security/LogInjection.qll +++ b/java/ql/lib/semmle/code/java/security/LogInjection.qll @@ -45,11 +45,11 @@ private class LineBreaksLogInjectionSanitizer extends LogInjectionSanitizer { } private predicate stringMethodCall( - MethodCall ma, CompileTimeConstantExpr arg0, CompileTimeConstantExpr arg1 + MethodCall mc, CompileTimeConstantExpr arg0, CompileTimeConstantExpr arg1 ) { - ma.getMethod().getDeclaringType() instanceof TypeString and - arg0 = ma.getArgument(0) and - arg1 = ma.getArgument(1) + mc.getMethod().getDeclaringType() instanceof TypeString and + arg0 = mc.getArgument(0) and + arg1 = mc.getArgument(1) } private predicate stringMethodArgument(CompileTimeConstantExpr arg) { @@ -68,19 +68,19 @@ private predicate stringMethodArgumentValueMatches(CompileTimeConstantExpr const * breaks from it. */ private predicate logInjectionSanitizer(Expr e) { - exists(MethodCall ma, CompileTimeConstantExpr target, CompileTimeConstantExpr replacement | - e = ma and - stringMethodCall(ma, target, replacement) and + exists(MethodCall mc, CompileTimeConstantExpr target, CompileTimeConstantExpr replacement | + e = mc and + stringMethodCall(mc, target, replacement) and not stringMethodArgumentValueMatches(replacement, ["%\n%", "%\r%"]) | - ma.getMethod().hasName("replace") and + mc.getMethod().hasName("replace") and not replacement.getIntValue() = [10, 13] and ( target.getIntValue() = [10, 13] or // 10 == '\n', 13 == '\r' target.getStringValue() = ["\n", "\r"] ) or - ma.getMethod().hasName("replaceAll") and + mc.getMethod().hasName("replaceAll") and ( // Replace anything not in an allow list target.getStringValue().matches("[^%]") and @@ -104,10 +104,10 @@ private predicate logInjectionSanitizer(Expr e) { * by checking if there are line breaks in `e`. */ private predicate logInjectionGuard(Guard g, Expr e, boolean branch) { - exists(MethodCall ma | ma = g | - ma.getMethod() instanceof StringContainsMethod and - ma.getArgument(0).(CompileTimeConstantExpr).getStringValue() = ["\n", "\r"] and - e = ma.getQualifier() and + exists(MethodCall mc | mc = g | + mc.getMethod() instanceof StringContainsMethod and + mc.getArgument(0).(CompileTimeConstantExpr).getStringValue() = ["\n", "\r"] and + e = mc.getQualifier() and branch = false ) or From 597be6a1c0a09c943d65b14e7d674dba777354bb Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 14 Feb 2026 19:25:44 +0000 Subject: [PATCH 430/433] Add change note --- .../2026-02-14-pattern-annotation-log-injection-sanitizer.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 java/ql/lib/change-notes/2026-02-14-pattern-annotation-log-injection-sanitizer.md diff --git a/java/ql/lib/change-notes/2026-02-14-pattern-annotation-log-injection-sanitizer.md b/java/ql/lib/change-notes/2026-02-14-pattern-annotation-log-injection-sanitizer.md new file mode 100644 index 000000000000..ceff0714ab89 --- /dev/null +++ b/java/ql/lib/change-notes/2026-02-14-pattern-annotation-log-injection-sanitizer.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* Using a regular expression to check that a string doesn't contain any line breaks is already a sanitizer for `java/log-injection`. Additional ways of doing the regular expression check are now recognised, including annotation with `@javax.validation.constraints.Pattern`. From cf73d96c9df4d35dcdff829cd54a26e25556f093 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Mon, 16 Feb 2026 12:03:02 +0000 Subject: [PATCH 431/433] Update test results (remove SPURIOUS annotations) --- .../query-tests/security/CWE-117/LogInjectionTest.expected | 3 --- .../test/query-tests/security/CWE-117/LogInjectionTest.java | 4 ++-- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected index eeddd876db30..035658641ffc 100644 --- a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected +++ b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.expected @@ -8129,6 +8129,3 @@ nodes | LogInjectionTest.java:2151:38:2151:54 | (...)... | semmle.label | (...)... | | LogInjectionTest.java:2151:47:2151:54 | source(...) : Object | semmle.label | source(...) : Object | subpaths -testFailures -| LogInjectionTest.java:198:44:198:63 | // $ SPURIOUS: Alert | Fixed spurious result: Alert | -| LogInjectionTest.java:199:41:199:60 | // $ SPURIOUS: Alert | Fixed spurious result: Alert | diff --git a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.java b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.java index 67dad8147ccb..00d986c09121 100644 --- a/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.java +++ b/java/ql/test/query-tests/security/CWE-117/LogInjectionTest.java @@ -195,8 +195,8 @@ public void testGuards() { logger.debug(source); // $ MISSING: $ Alert } - logger.debug(validatedInputField); // $ SPURIOUS: Alert - logger.debug(validatedInput()); // $ SPURIOUS: Alert + logger.debug(validatedInputField); + logger.debug(validatedInput()); } public void test() { From ef04f927fb9b00285aa96a7de4a5e33c6af2f459 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 16 Feb 2026 13:29:25 +0000 Subject: [PATCH 432/433] Release preparation for version 2.24.2 --- actions/ql/lib/CHANGELOG.md | 4 ++++ .../ql/lib/change-notes/released/0.4.28.md | 3 +++ actions/ql/lib/codeql-pack.release.yml | 2 +- actions/ql/lib/qlpack.yml | 2 +- actions/ql/src/CHANGELOG.md | 4 ++++ .../ql/src/change-notes/released/0.6.20.md | 3 +++ actions/ql/src/codeql-pack.release.yml | 2 +- actions/ql/src/qlpack.yml | 2 +- cpp/ql/lib/CHANGELOG.md | 6 +++++ .../2026-02-03-windows-remote-flow-sources.md | 4 ---- cpp/ql/lib/change-notes/released/7.1.1.md | 5 ++++ cpp/ql/lib/codeql-pack.release.yml | 2 +- cpp/ql/lib/qlpack.yml | 2 +- cpp/ql/src/CHANGELOG.md | 4 ++++ cpp/ql/src/change-notes/released/1.5.11.md | 3 +++ cpp/ql/src/codeql-pack.release.yml | 2 +- cpp/ql/src/qlpack.yml | 2 +- .../ql/campaigns/Solorigate/lib/CHANGELOG.md | 4 ++++ .../lib/change-notes/released/1.7.59.md | 3 +++ .../Solorigate/lib/codeql-pack.release.yml | 2 +- csharp/ql/campaigns/Solorigate/lib/qlpack.yml | 2 +- .../ql/campaigns/Solorigate/src/CHANGELOG.md | 4 ++++ .../src/change-notes/released/1.7.59.md | 3 +++ .../Solorigate/src/codeql-pack.release.yml | 2 +- csharp/ql/campaigns/Solorigate/src/qlpack.yml | 2 +- csharp/ql/lib/CHANGELOG.md | 7 ++++++ ...-09-update-system.web.httputility-model.md | 4 ---- .../5.4.7.md} | 8 ++++--- csharp/ql/lib/codeql-pack.release.yml | 2 +- csharp/ql/lib/qlpack.yml | 2 +- csharp/ql/src/CHANGELOG.md | 6 +++++ .../1.6.2.md} | 7 +++--- csharp/ql/src/codeql-pack.release.yml | 2 +- csharp/ql/src/qlpack.yml | 2 +- go/ql/consistency-queries/CHANGELOG.md | 4 ++++ .../change-notes/released/1.0.42.md | 3 +++ .../codeql-pack.release.yml | 2 +- go/ql/consistency-queries/qlpack.yml | 2 +- go/ql/lib/CHANGELOG.md | 10 ++++++++ .../2026-01-20-go-version-1-26.md | 4 ---- .../7.0.0.md} | 11 ++++++--- go/ql/lib/codeql-pack.release.yml | 2 +- go/ql/lib/qlpack.yml | 2 +- go/ql/src/CHANGELOG.md | 4 ++++ go/ql/src/change-notes/released/1.5.6.md | 3 +++ go/ql/src/codeql-pack.release.yml | 2 +- go/ql/src/qlpack.yml | 2 +- java/ql/lib/CHANGELOG.md | 23 ++++++++++++++++++- .../ql/lib/change-notes/2026-02-04-renames.md | 12 ---------- .../change-notes/2026-02-06-kotlin-2.3.10.md | 4 ---- .../2026-02-12-deprecate-unreachableblocks.md | 4 ---- ...02-12-pattern-annotation-ssrf-sanitizer.md | 4 ---- ...tern-annotation-log-injection-sanitizer.md | 4 ---- java/ql/lib/change-notes/released/8.1.0.md | 20 ++++++++++++++++ java/ql/lib/codeql-pack.release.yml | 2 +- java/ql/lib/qlpack.yml | 2 +- java/ql/src/CHANGELOG.md | 4 ++++ java/ql/src/change-notes/released/1.10.7.md | 3 +++ java/ql/src/codeql-pack.release.yml | 2 +- java/ql/src/qlpack.yml | 2 +- javascript/ql/lib/CHANGELOG.md | 4 ++++ .../ql/lib/change-notes/released/2.6.22.md | 3 +++ javascript/ql/lib/codeql-pack.release.yml | 2 +- javascript/ql/lib/qlpack.yml | 2 +- javascript/ql/src/CHANGELOG.md | 4 ++++ .../ql/src/change-notes/released/2.3.2.md | 3 +++ javascript/ql/src/codeql-pack.release.yml | 2 +- javascript/ql/src/qlpack.yml | 2 +- misc/suite-helpers/CHANGELOG.md | 4 ++++ .../change-notes/released/1.0.42.md | 3 +++ misc/suite-helpers/codeql-pack.release.yml | 2 +- misc/suite-helpers/qlpack.yml | 2 +- python/ql/lib/CHANGELOG.md | 11 +++++++++ .../2025-09-30-azure_ssrf_models.md | 5 ---- ...2-05-fix-format-fill-character-misparse.md | 5 ---- python/ql/lib/change-notes/released/6.1.1.md | 10 ++++++++ python/ql/lib/codeql-pack.release.yml | 2 +- python/ql/lib/qlpack.yml | 2 +- python/ql/src/CHANGELOG.md | 4 ++++ python/ql/src/change-notes/released/1.7.7.md | 3 +++ python/ql/src/codeql-pack.release.yml | 2 +- python/ql/src/qlpack.yml | 2 +- ruby/ql/lib/CHANGELOG.md | 4 ++++ ruby/ql/lib/change-notes/released/5.1.10.md | 3 +++ ruby/ql/lib/codeql-pack.release.yml | 2 +- ruby/ql/lib/qlpack.yml | 2 +- ruby/ql/src/CHANGELOG.md | 4 ++++ ruby/ql/src/change-notes/released/1.5.7.md | 3 +++ ruby/ql/src/codeql-pack.release.yml | 2 +- ruby/ql/src/qlpack.yml | 2 +- rust/ql/lib/CHANGELOG.md | 4 ++++ rust/ql/lib/change-notes/released/0.2.6.md | 3 +++ rust/ql/lib/codeql-pack.release.yml | 2 +- rust/ql/lib/qlpack.yml | 2 +- rust/ql/src/CHANGELOG.md | 4 ++++ rust/ql/src/change-notes/released/0.1.27.md | 3 +++ rust/ql/src/codeql-pack.release.yml | 2 +- rust/ql/src/qlpack.yml | 2 +- shared/concepts/CHANGELOG.md | 4 ++++ .../concepts/change-notes/released/0.0.16.md | 3 +++ shared/concepts/codeql-pack.release.yml | 2 +- shared/concepts/qlpack.yml | 2 +- shared/controlflow/CHANGELOG.md | 4 ++++ .../change-notes/released/2.0.26.md | 3 +++ shared/controlflow/codeql-pack.release.yml | 2 +- shared/controlflow/qlpack.yml | 2 +- shared/dataflow/CHANGELOG.md | 4 ++++ .../dataflow/change-notes/released/2.0.26.md | 3 +++ shared/dataflow/codeql-pack.release.yml | 2 +- shared/dataflow/qlpack.yml | 2 +- shared/mad/CHANGELOG.md | 4 ++++ shared/mad/change-notes/released/1.0.42.md | 3 +++ shared/mad/codeql-pack.release.yml | 2 +- shared/mad/qlpack.yml | 2 +- shared/quantum/CHANGELOG.md | 4 ++++ .../quantum/change-notes/released/0.0.20.md | 3 +++ shared/quantum/codeql-pack.release.yml | 2 +- shared/quantum/qlpack.yml | 2 +- shared/rangeanalysis/CHANGELOG.md | 4 ++++ .../change-notes/released/1.0.42.md | 3 +++ shared/rangeanalysis/codeql-pack.release.yml | 2 +- shared/rangeanalysis/qlpack.yml | 2 +- shared/regex/CHANGELOG.md | 4 ++++ shared/regex/change-notes/released/1.0.42.md | 3 +++ shared/regex/codeql-pack.release.yml | 2 +- shared/regex/qlpack.yml | 2 +- shared/ssa/CHANGELOG.md | 4 ++++ shared/ssa/change-notes/released/2.0.18.md | 3 +++ shared/ssa/codeql-pack.release.yml | 2 +- shared/ssa/qlpack.yml | 2 +- shared/threat-models/CHANGELOG.md | 4 ++++ .../change-notes/released/1.0.42.md | 3 +++ shared/threat-models/codeql-pack.release.yml | 2 +- shared/threat-models/qlpack.yml | 2 +- shared/tutorial/CHANGELOG.md | 4 ++++ .../tutorial/change-notes/released/1.0.42.md | 3 +++ shared/tutorial/codeql-pack.release.yml | 2 +- shared/tutorial/qlpack.yml | 2 +- shared/typeflow/CHANGELOG.md | 4 ++++ .../typeflow/change-notes/released/1.0.42.md | 3 +++ shared/typeflow/codeql-pack.release.yml | 2 +- shared/typeflow/qlpack.yml | 2 +- shared/typeinference/CHANGELOG.md | 4 ++++ .../change-notes/released/0.0.23.md | 3 +++ shared/typeinference/codeql-pack.release.yml | 2 +- shared/typeinference/qlpack.yml | 2 +- shared/typetracking/CHANGELOG.md | 4 ++++ .../change-notes/released/2.0.26.md | 3 +++ shared/typetracking/codeql-pack.release.yml | 2 +- shared/typetracking/qlpack.yml | 2 +- shared/typos/CHANGELOG.md | 4 ++++ shared/typos/change-notes/released/1.0.42.md | 3 +++ shared/typos/codeql-pack.release.yml | 2 +- shared/typos/qlpack.yml | 2 +- shared/util/CHANGELOG.md | 4 ++++ shared/util/change-notes/released/2.0.29.md | 3 +++ shared/util/codeql-pack.release.yml | 2 +- shared/util/qlpack.yml | 2 +- shared/xml/CHANGELOG.md | 4 ++++ shared/xml/change-notes/released/1.0.42.md | 3 +++ shared/xml/codeql-pack.release.yml | 2 +- shared/xml/qlpack.yml | 2 +- shared/yaml/CHANGELOG.md | 4 ++++ shared/yaml/change-notes/released/1.0.42.md | 3 +++ shared/yaml/codeql-pack.release.yml | 2 +- shared/yaml/qlpack.yml | 2 +- swift/ql/lib/CHANGELOG.md | 4 ++++ swift/ql/lib/change-notes/released/6.2.2.md | 3 +++ swift/ql/lib/codeql-pack.release.yml | 2 +- swift/ql/lib/qlpack.yml | 2 +- swift/ql/src/CHANGELOG.md | 4 ++++ swift/ql/src/change-notes/released/1.2.16.md | 3 +++ swift/ql/src/codeql-pack.release.yml | 2 +- swift/ql/src/qlpack.yml | 2 +- 174 files changed, 441 insertions(+), 142 deletions(-) create mode 100644 actions/ql/lib/change-notes/released/0.4.28.md create mode 100644 actions/ql/src/change-notes/released/0.6.20.md delete mode 100644 cpp/ql/lib/change-notes/2026-02-03-windows-remote-flow-sources.md create mode 100644 cpp/ql/lib/change-notes/released/7.1.1.md create mode 100644 cpp/ql/src/change-notes/released/1.5.11.md create mode 100644 csharp/ql/campaigns/Solorigate/lib/change-notes/released/1.7.59.md create mode 100644 csharp/ql/campaigns/Solorigate/src/change-notes/released/1.7.59.md delete mode 100644 csharp/ql/lib/change-notes/2026-02-09-update-system.web.httputility-model.md rename csharp/ql/lib/change-notes/{2026-02-05-extension-types.md => released/5.4.7.md} (53%) rename csharp/ql/src/change-notes/{2026-02-04-csrf-inherited-attribute.md => released/1.6.2.md} (92%) create mode 100644 go/ql/consistency-queries/change-notes/released/1.0.42.md delete mode 100644 go/ql/lib/change-notes/2026-01-20-go-version-1-26.md rename go/ql/lib/change-notes/{2026-01-28-shared-basic-block-library.md => released/7.0.0.md} (80%) create mode 100644 go/ql/src/change-notes/released/1.5.6.md delete mode 100644 java/ql/lib/change-notes/2026-02-04-renames.md delete mode 100644 java/ql/lib/change-notes/2026-02-06-kotlin-2.3.10.md delete mode 100644 java/ql/lib/change-notes/2026-02-12-deprecate-unreachableblocks.md delete mode 100644 java/ql/lib/change-notes/2026-02-12-pattern-annotation-ssrf-sanitizer.md delete mode 100644 java/ql/lib/change-notes/2026-02-14-pattern-annotation-log-injection-sanitizer.md create mode 100644 java/ql/lib/change-notes/released/8.1.0.md create mode 100644 java/ql/src/change-notes/released/1.10.7.md create mode 100644 javascript/ql/lib/change-notes/released/2.6.22.md create mode 100644 javascript/ql/src/change-notes/released/2.3.2.md create mode 100644 misc/suite-helpers/change-notes/released/1.0.42.md delete mode 100644 python/ql/lib/change-notes/2025-09-30-azure_ssrf_models.md delete mode 100644 python/ql/lib/change-notes/2026-02-05-fix-format-fill-character-misparse.md create mode 100644 python/ql/lib/change-notes/released/6.1.1.md create mode 100644 python/ql/src/change-notes/released/1.7.7.md create mode 100644 ruby/ql/lib/change-notes/released/5.1.10.md create mode 100644 ruby/ql/src/change-notes/released/1.5.7.md create mode 100644 rust/ql/lib/change-notes/released/0.2.6.md create mode 100644 rust/ql/src/change-notes/released/0.1.27.md create mode 100644 shared/concepts/change-notes/released/0.0.16.md create mode 100644 shared/controlflow/change-notes/released/2.0.26.md create mode 100644 shared/dataflow/change-notes/released/2.0.26.md create mode 100644 shared/mad/change-notes/released/1.0.42.md create mode 100644 shared/quantum/change-notes/released/0.0.20.md create mode 100644 shared/rangeanalysis/change-notes/released/1.0.42.md create mode 100644 shared/regex/change-notes/released/1.0.42.md create mode 100644 shared/ssa/change-notes/released/2.0.18.md create mode 100644 shared/threat-models/change-notes/released/1.0.42.md create mode 100644 shared/tutorial/change-notes/released/1.0.42.md create mode 100644 shared/typeflow/change-notes/released/1.0.42.md create mode 100644 shared/typeinference/change-notes/released/0.0.23.md create mode 100644 shared/typetracking/change-notes/released/2.0.26.md create mode 100644 shared/typos/change-notes/released/1.0.42.md create mode 100644 shared/util/change-notes/released/2.0.29.md create mode 100644 shared/xml/change-notes/released/1.0.42.md create mode 100644 shared/yaml/change-notes/released/1.0.42.md create mode 100644 swift/ql/lib/change-notes/released/6.2.2.md create mode 100644 swift/ql/src/change-notes/released/1.2.16.md diff --git a/actions/ql/lib/CHANGELOG.md b/actions/ql/lib/CHANGELOG.md index d2e85ddb6a27..1b41f2f2f5e0 100644 --- a/actions/ql/lib/CHANGELOG.md +++ b/actions/ql/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.4.28 + +No user-facing changes. + ## 0.4.27 ### Bug Fixes diff --git a/actions/ql/lib/change-notes/released/0.4.28.md b/actions/ql/lib/change-notes/released/0.4.28.md new file mode 100644 index 000000000000..af10bae2ab56 --- /dev/null +++ b/actions/ql/lib/change-notes/released/0.4.28.md @@ -0,0 +1,3 @@ +## 0.4.28 + +No user-facing changes. diff --git a/actions/ql/lib/codeql-pack.release.yml b/actions/ql/lib/codeql-pack.release.yml index 5e24b634389f..ff6beb81526d 100644 --- a/actions/ql/lib/codeql-pack.release.yml +++ b/actions/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.4.27 +lastReleaseVersion: 0.4.28 diff --git a/actions/ql/lib/qlpack.yml b/actions/ql/lib/qlpack.yml index d700f90710ab..5725fb5f9aab 100644 --- a/actions/ql/lib/qlpack.yml +++ b/actions/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-all -version: 0.4.28-dev +version: 0.4.28 library: true warnOnImplicitThis: true dependencies: diff --git a/actions/ql/src/CHANGELOG.md b/actions/ql/src/CHANGELOG.md index ebf6b7214c99..c92b28841fab 100644 --- a/actions/ql/src/CHANGELOG.md +++ b/actions/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.6.20 + +No user-facing changes. + ## 0.6.19 No user-facing changes. diff --git a/actions/ql/src/change-notes/released/0.6.20.md b/actions/ql/src/change-notes/released/0.6.20.md new file mode 100644 index 000000000000..35c1118ff451 --- /dev/null +++ b/actions/ql/src/change-notes/released/0.6.20.md @@ -0,0 +1,3 @@ +## 0.6.20 + +No user-facing changes. diff --git a/actions/ql/src/codeql-pack.release.yml b/actions/ql/src/codeql-pack.release.yml index 2baec50a823b..e30c5c64b1b5 100644 --- a/actions/ql/src/codeql-pack.release.yml +++ b/actions/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.6.19 +lastReleaseVersion: 0.6.20 diff --git a/actions/ql/src/qlpack.yml b/actions/ql/src/qlpack.yml index 7c19f90be064..e41369b51932 100644 --- a/actions/ql/src/qlpack.yml +++ b/actions/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-queries -version: 0.6.20-dev +version: 0.6.20 library: false warnOnImplicitThis: true groups: [actions, queries] diff --git a/cpp/ql/lib/CHANGELOG.md b/cpp/ql/lib/CHANGELOG.md index 6f256c9499b4..91f4b009b2be 100644 --- a/cpp/ql/lib/CHANGELOG.md +++ b/cpp/ql/lib/CHANGELOG.md @@ -1,3 +1,9 @@ +## 7.1.1 + +### Minor Analysis Improvements + +* Added remote flow source models for the `winhttp.h` windows header and the Azure SDK core library for C/C++. + ## 7.1.0 ### New Features diff --git a/cpp/ql/lib/change-notes/2026-02-03-windows-remote-flow-sources.md b/cpp/ql/lib/change-notes/2026-02-03-windows-remote-flow-sources.md deleted file mode 100644 index 0a884df065a3..000000000000 --- a/cpp/ql/lib/change-notes/2026-02-03-windows-remote-flow-sources.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* Added remote flow source models for the `winhttp.h` windows header and the Azure SDK core library for C/C++. \ No newline at end of file diff --git a/cpp/ql/lib/change-notes/released/7.1.1.md b/cpp/ql/lib/change-notes/released/7.1.1.md new file mode 100644 index 000000000000..16bba7ca5084 --- /dev/null +++ b/cpp/ql/lib/change-notes/released/7.1.1.md @@ -0,0 +1,5 @@ +## 7.1.1 + +### Minor Analysis Improvements + +* Added remote flow source models for the `winhttp.h` windows header and the Azure SDK core library for C/C++. diff --git a/cpp/ql/lib/codeql-pack.release.yml b/cpp/ql/lib/codeql-pack.release.yml index dcaaa76112a6..8e970df6cae3 100644 --- a/cpp/ql/lib/codeql-pack.release.yml +++ b/cpp/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 7.1.0 +lastReleaseVersion: 7.1.1 diff --git a/cpp/ql/lib/qlpack.yml b/cpp/ql/lib/qlpack.yml index eeb5d0adf088..d2b42410887c 100644 --- a/cpp/ql/lib/qlpack.yml +++ b/cpp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-all -version: 7.1.1-dev +version: 7.1.1 groups: cpp dbscheme: semmlecode.cpp.dbscheme extractor: cpp diff --git a/cpp/ql/src/CHANGELOG.md b/cpp/ql/src/CHANGELOG.md index 61792c6a700b..640b66a910dd 100644 --- a/cpp/ql/src/CHANGELOG.md +++ b/cpp/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.5.11 + +No user-facing changes. + ## 1.5.10 No user-facing changes. diff --git a/cpp/ql/src/change-notes/released/1.5.11.md b/cpp/ql/src/change-notes/released/1.5.11.md new file mode 100644 index 000000000000..5f42fc9133da --- /dev/null +++ b/cpp/ql/src/change-notes/released/1.5.11.md @@ -0,0 +1,3 @@ +## 1.5.11 + +No user-facing changes. diff --git a/cpp/ql/src/codeql-pack.release.yml b/cpp/ql/src/codeql-pack.release.yml index fda54b31bffb..7e8e8103d99a 100644 --- a/cpp/ql/src/codeql-pack.release.yml +++ b/cpp/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.5.10 +lastReleaseVersion: 1.5.11 diff --git a/cpp/ql/src/qlpack.yml b/cpp/ql/src/qlpack.yml index b374fb51f75f..51a78ddd3fcb 100644 --- a/cpp/ql/src/qlpack.yml +++ b/cpp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-queries -version: 1.5.11-dev +version: 1.5.11 groups: - cpp - queries diff --git a/csharp/ql/campaigns/Solorigate/lib/CHANGELOG.md b/csharp/ql/campaigns/Solorigate/lib/CHANGELOG.md index 68238efa1101..df4169a11740 100644 --- a/csharp/ql/campaigns/Solorigate/lib/CHANGELOG.md +++ b/csharp/ql/campaigns/Solorigate/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.7.59 + +No user-facing changes. + ## 1.7.58 No user-facing changes. diff --git a/csharp/ql/campaigns/Solorigate/lib/change-notes/released/1.7.59.md b/csharp/ql/campaigns/Solorigate/lib/change-notes/released/1.7.59.md new file mode 100644 index 000000000000..7f6b5bd0256a --- /dev/null +++ b/csharp/ql/campaigns/Solorigate/lib/change-notes/released/1.7.59.md @@ -0,0 +1,3 @@ +## 1.7.59 + +No user-facing changes. diff --git a/csharp/ql/campaigns/Solorigate/lib/codeql-pack.release.yml b/csharp/ql/campaigns/Solorigate/lib/codeql-pack.release.yml index 422196097f2a..45a32aec8000 100644 --- a/csharp/ql/campaigns/Solorigate/lib/codeql-pack.release.yml +++ b/csharp/ql/campaigns/Solorigate/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.7.58 +lastReleaseVersion: 1.7.59 diff --git a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml index bc1e19c5d118..bb75fe4cfffe 100644 --- a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-all -version: 1.7.59-dev +version: 1.7.59 groups: - csharp - solorigate diff --git a/csharp/ql/campaigns/Solorigate/src/CHANGELOG.md b/csharp/ql/campaigns/Solorigate/src/CHANGELOG.md index 68238efa1101..df4169a11740 100644 --- a/csharp/ql/campaigns/Solorigate/src/CHANGELOG.md +++ b/csharp/ql/campaigns/Solorigate/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.7.59 + +No user-facing changes. + ## 1.7.58 No user-facing changes. diff --git a/csharp/ql/campaigns/Solorigate/src/change-notes/released/1.7.59.md b/csharp/ql/campaigns/Solorigate/src/change-notes/released/1.7.59.md new file mode 100644 index 000000000000..7f6b5bd0256a --- /dev/null +++ b/csharp/ql/campaigns/Solorigate/src/change-notes/released/1.7.59.md @@ -0,0 +1,3 @@ +## 1.7.59 + +No user-facing changes. diff --git a/csharp/ql/campaigns/Solorigate/src/codeql-pack.release.yml b/csharp/ql/campaigns/Solorigate/src/codeql-pack.release.yml index 422196097f2a..45a32aec8000 100644 --- a/csharp/ql/campaigns/Solorigate/src/codeql-pack.release.yml +++ b/csharp/ql/campaigns/Solorigate/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.7.58 +lastReleaseVersion: 1.7.59 diff --git a/csharp/ql/campaigns/Solorigate/src/qlpack.yml b/csharp/ql/campaigns/Solorigate/src/qlpack.yml index 87016f799ea4..0ab19080276a 100644 --- a/csharp/ql/campaigns/Solorigate/src/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-queries -version: 1.7.59-dev +version: 1.7.59 groups: - csharp - solorigate diff --git a/csharp/ql/lib/CHANGELOG.md b/csharp/ql/lib/CHANGELOG.md index 2910824c1b72..21b19c8a09ab 100644 --- a/csharp/ql/lib/CHANGELOG.md +++ b/csharp/ql/lib/CHANGELOG.md @@ -1,3 +1,10 @@ +## 5.4.7 + +### Minor Analysis Improvements + +* The model for `System.Web.HttpUtility` has been modified to better model the flow of tainted URIs. +* C# 14: Added support for `extension` members in the extractor, QL library, data flow, and Models as Data, covering extension methods, properties, and operators. + ## 5.4.6 ### Minor Analysis Improvements diff --git a/csharp/ql/lib/change-notes/2026-02-09-update-system.web.httputility-model.md b/csharp/ql/lib/change-notes/2026-02-09-update-system.web.httputility-model.md deleted file mode 100644 index 750761fdf377..000000000000 --- a/csharp/ql/lib/change-notes/2026-02-09-update-system.web.httputility-model.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* The model for `System.Web.HttpUtility` has been modified to better model the flow of tainted URIs. \ No newline at end of file diff --git a/csharp/ql/lib/change-notes/2026-02-05-extension-types.md b/csharp/ql/lib/change-notes/released/5.4.7.md similarity index 53% rename from csharp/ql/lib/change-notes/2026-02-05-extension-types.md rename to csharp/ql/lib/change-notes/released/5.4.7.md index c3f1a21a5eda..b7d268470a27 100644 --- a/csharp/ql/lib/change-notes/2026-02-05-extension-types.md +++ b/csharp/ql/lib/change-notes/released/5.4.7.md @@ -1,4 +1,6 @@ ---- -category: minorAnalysis ---- +## 5.4.7 + +### Minor Analysis Improvements + +* The model for `System.Web.HttpUtility` has been modified to better model the flow of tainted URIs. * C# 14: Added support for `extension` members in the extractor, QL library, data flow, and Models as Data, covering extension methods, properties, and operators. diff --git a/csharp/ql/lib/codeql-pack.release.yml b/csharp/ql/lib/codeql-pack.release.yml index 2f1d6ff78a82..4db516ab4153 100644 --- a/csharp/ql/lib/codeql-pack.release.yml +++ b/csharp/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 5.4.6 +lastReleaseVersion: 5.4.7 diff --git a/csharp/ql/lib/qlpack.yml b/csharp/ql/lib/qlpack.yml index 31fb2ca66187..d873c0c3b082 100644 --- a/csharp/ql/lib/qlpack.yml +++ b/csharp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-all -version: 5.4.7-dev +version: 5.4.7 groups: csharp dbscheme: semmlecode.csharp.dbscheme extractor: csharp diff --git a/csharp/ql/src/CHANGELOG.md b/csharp/ql/src/CHANGELOG.md index d532951fadc8..8f2e918ca552 100644 --- a/csharp/ql/src/CHANGELOG.md +++ b/csharp/ql/src/CHANGELOG.md @@ -1,3 +1,9 @@ +## 1.6.2 + +### Bug Fixes + +* The `cs/web/missing-token-validation` ("Missing cross-site request forgery token validation") query now recognizes antiforgery attributes on base controller classes, fixing false positives when `[ValidateAntiForgeryToken]` or `[AutoValidateAntiforgeryToken]` is applied to a parent class. + ## 1.6.1 No user-facing changes. diff --git a/csharp/ql/src/change-notes/2026-02-04-csrf-inherited-attribute.md b/csharp/ql/src/change-notes/released/1.6.2.md similarity index 92% rename from csharp/ql/src/change-notes/2026-02-04-csrf-inherited-attribute.md rename to csharp/ql/src/change-notes/released/1.6.2.md index 7c9875fcdfde..696f2d0d8597 100644 --- a/csharp/ql/src/change-notes/2026-02-04-csrf-inherited-attribute.md +++ b/csharp/ql/src/change-notes/released/1.6.2.md @@ -1,4 +1,5 @@ ---- -category: fix ---- +## 1.6.2 + +### Bug Fixes + * The `cs/web/missing-token-validation` ("Missing cross-site request forgery token validation") query now recognizes antiforgery attributes on base controller classes, fixing false positives when `[ValidateAntiForgeryToken]` or `[AutoValidateAntiforgeryToken]` is applied to a parent class. diff --git a/csharp/ql/src/codeql-pack.release.yml b/csharp/ql/src/codeql-pack.release.yml index ef7a789e0cf1..5f5beb68311a 100644 --- a/csharp/ql/src/codeql-pack.release.yml +++ b/csharp/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.6.1 +lastReleaseVersion: 1.6.2 diff --git a/csharp/ql/src/qlpack.yml b/csharp/ql/src/qlpack.yml index 492445c23748..7986040d2b66 100644 --- a/csharp/ql/src/qlpack.yml +++ b/csharp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-queries -version: 1.6.2-dev +version: 1.6.2 groups: - csharp - queries diff --git a/go/ql/consistency-queries/CHANGELOG.md b/go/ql/consistency-queries/CHANGELOG.md index d0c8171cdf67..e91058f491a0 100644 --- a/go/ql/consistency-queries/CHANGELOG.md +++ b/go/ql/consistency-queries/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/go/ql/consistency-queries/change-notes/released/1.0.42.md b/go/ql/consistency-queries/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/go/ql/consistency-queries/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/go/ql/consistency-queries/codeql-pack.release.yml b/go/ql/consistency-queries/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/go/ql/consistency-queries/codeql-pack.release.yml +++ b/go/ql/consistency-queries/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/go/ql/consistency-queries/qlpack.yml b/go/ql/consistency-queries/qlpack.yml index 9db7c50224de..96304fa9a182 100644 --- a/go/ql/consistency-queries/qlpack.yml +++ b/go/ql/consistency-queries/qlpack.yml @@ -1,5 +1,5 @@ name: codeql-go-consistency-queries -version: 1.0.42-dev +version: 1.0.42 groups: - go - queries diff --git a/go/ql/lib/CHANGELOG.md b/go/ql/lib/CHANGELOG.md index 126058537cef..34751dc5d8ae 100644 --- a/go/ql/lib/CHANGELOG.md +++ b/go/ql/lib/CHANGELOG.md @@ -1,3 +1,13 @@ +## 7.0.0 + +### Breaking Changes + +* The `BasicBlock` class is now defined using the shared basic blocks library. `BasicBlock.getRoot` has been replaced by `BasicBlock.getScope`. `BasicBlock.getAPredecessor` and `BasicBlock.getASuccessor` now take a `SuccessorType` argument. `ReachableJoinBlock.inDominanceFrontierOf` has been removed, so use `BasicBlock.inDominanceFrontier` instead, swapping the receiver and the argument. + +### Major Analysis Improvements + +* Go 1.26 is now supported. + ## 6.0.1 ### Minor Analysis Improvements diff --git a/go/ql/lib/change-notes/2026-01-20-go-version-1-26.md b/go/ql/lib/change-notes/2026-01-20-go-version-1-26.md deleted file mode 100644 index 97f022480c4c..000000000000 --- a/go/ql/lib/change-notes/2026-01-20-go-version-1-26.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: majorAnalysis ---- -* Go 1.26 is now supported. diff --git a/go/ql/lib/change-notes/2026-01-28-shared-basic-block-library.md b/go/ql/lib/change-notes/released/7.0.0.md similarity index 80% rename from go/ql/lib/change-notes/2026-01-28-shared-basic-block-library.md rename to go/ql/lib/change-notes/released/7.0.0.md index f26aeb9c07ab..602f9f36e35f 100644 --- a/go/ql/lib/change-notes/2026-01-28-shared-basic-block-library.md +++ b/go/ql/lib/change-notes/released/7.0.0.md @@ -1,4 +1,9 @@ ---- -category: breaking ---- +## 7.0.0 + +### Breaking Changes + * The `BasicBlock` class is now defined using the shared basic blocks library. `BasicBlock.getRoot` has been replaced by `BasicBlock.getScope`. `BasicBlock.getAPredecessor` and `BasicBlock.getASuccessor` now take a `SuccessorType` argument. `ReachableJoinBlock.inDominanceFrontierOf` has been removed, so use `BasicBlock.inDominanceFrontier` instead, swapping the receiver and the argument. + +### Major Analysis Improvements + +* Go 1.26 is now supported. diff --git a/go/ql/lib/codeql-pack.release.yml b/go/ql/lib/codeql-pack.release.yml index d1f3c68c8120..e0db21c78694 100644 --- a/go/ql/lib/codeql-pack.release.yml +++ b/go/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 6.0.1 +lastReleaseVersion: 7.0.0 diff --git a/go/ql/lib/qlpack.yml b/go/ql/lib/qlpack.yml index 758bb94451cb..94a5b04b3908 100644 --- a/go/ql/lib/qlpack.yml +++ b/go/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-all -version: 6.0.2-dev +version: 7.0.0 groups: go dbscheme: go.dbscheme extractor: go diff --git a/go/ql/src/CHANGELOG.md b/go/ql/src/CHANGELOG.md index f2475a92207c..95f203839c54 100644 --- a/go/ql/src/CHANGELOG.md +++ b/go/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.5.6 + +No user-facing changes. + ## 1.5.5 No user-facing changes. diff --git a/go/ql/src/change-notes/released/1.5.6.md b/go/ql/src/change-notes/released/1.5.6.md new file mode 100644 index 000000000000..17fb577dc9e3 --- /dev/null +++ b/go/ql/src/change-notes/released/1.5.6.md @@ -0,0 +1,3 @@ +## 1.5.6 + +No user-facing changes. diff --git a/go/ql/src/codeql-pack.release.yml b/go/ql/src/codeql-pack.release.yml index 1c73e9d9ce9e..9a0b3c9461b0 100644 --- a/go/ql/src/codeql-pack.release.yml +++ b/go/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.5.5 +lastReleaseVersion: 1.5.6 diff --git a/go/ql/src/qlpack.yml b/go/ql/src/qlpack.yml index cb2e964d4402..43b5c67bc3f3 100644 --- a/go/ql/src/qlpack.yml +++ b/go/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-queries -version: 1.5.6-dev +version: 1.5.6 groups: - go - queries diff --git a/java/ql/lib/CHANGELOG.md b/java/ql/lib/CHANGELOG.md index f238699b4e5b..fb2908a561ec 100644 --- a/java/ql/lib/CHANGELOG.md +++ b/java/ql/lib/CHANGELOG.md @@ -1,3 +1,24 @@ +## 8.1.0 + +### Deprecated APIs + +* The `UnreachableBlocks.qll` library has been deprecated. +* Renamed the following predicates to increase uniformity across languages. The `getBody` predicate already existed on `LoopStmt`, but is now properly inherited. + - `UnaryExpr.getExpr` to `getOperand`. + - `ConditionalExpr.getTrueExpr` to `getThen`. + - `ConditionalExpr.getFalseExpr` to `getElse`. + - `ReturnStmt.getResult` to `getExpr`. + - `WhileStmt.getStmt` to `getBody`. + - `DoStmt.getStmt` to `getBody`. + - `ForStmt.getStmt` to `getBody`. + - `EnhancedForStmt.getStmt` to `getBody`. + +### Minor Analysis Improvements + +* Using a regular expression to check that a string doesn't contain any line breaks is already a sanitizer for `java/log-injection`. Additional ways of doing the regular expression check are now recognised, including annotation with `@javax.validation.constraints.Pattern`. +* More ways of checking that a string matches a regular expression are now considered as sanitizers for various queries, including `java/ssrf` and `java/path-injection`. In particular, being annotated with `@javax.validation.constraints.Pattern` is now recognised as a sanitizer for those queries. +* Kotlin versions up to 2.3.10 are now supported. + ## 8.0.0 ### Breaking Changes @@ -6,7 +27,7 @@ ### New Features -* Kotlin versions up to 2.3.0*x* are now supported. +* Kotlin versions up to 2.3.0 are now supported. ### Minor Analysis Improvements diff --git a/java/ql/lib/change-notes/2026-02-04-renames.md b/java/ql/lib/change-notes/2026-02-04-renames.md deleted file mode 100644 index 9392bcbb4f62..000000000000 --- a/java/ql/lib/change-notes/2026-02-04-renames.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -category: deprecated ---- -* Renamed the following predicates to increase uniformity across languages. The `getBody` predicate already existed on `LoopStmt`, but is now properly inherited. - - `UnaryExpr.getExpr` to `getOperand`. - - `ConditionalExpr.getTrueExpr` to `getThen`. - - `ConditionalExpr.getFalseExpr` to `getElse`. - - `ReturnStmt.getResult` to `getExpr`. - - `WhileStmt.getStmt` to `getBody`. - - `DoStmt.getStmt` to `getBody`. - - `ForStmt.getStmt` to `getBody`. - - `EnhancedForStmt.getStmt` to `getBody`. diff --git a/java/ql/lib/change-notes/2026-02-06-kotlin-2.3.10.md b/java/ql/lib/change-notes/2026-02-06-kotlin-2.3.10.md deleted file mode 100644 index 49b62ea6bbda..000000000000 --- a/java/ql/lib/change-notes/2026-02-06-kotlin-2.3.10.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* Kotlin versions up to 2.3.10 are now supported. diff --git a/java/ql/lib/change-notes/2026-02-12-deprecate-unreachableblocks.md b/java/ql/lib/change-notes/2026-02-12-deprecate-unreachableblocks.md deleted file mode 100644 index 24748cbb09ec..000000000000 --- a/java/ql/lib/change-notes/2026-02-12-deprecate-unreachableblocks.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: deprecated ---- -* The `UnreachableBlocks.qll` library has been deprecated. diff --git a/java/ql/lib/change-notes/2026-02-12-pattern-annotation-ssrf-sanitizer.md b/java/ql/lib/change-notes/2026-02-12-pattern-annotation-ssrf-sanitizer.md deleted file mode 100644 index 20d3d08b3009..000000000000 --- a/java/ql/lib/change-notes/2026-02-12-pattern-annotation-ssrf-sanitizer.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* More ways of checking that a string matches a regular expression are now considered as sanitizers for various queries, including `java/ssrf` and `java/path-injection`. In particular, being annotated with `@javax.validation.constraints.Pattern` is now recognised as a sanitizer for those queries. diff --git a/java/ql/lib/change-notes/2026-02-14-pattern-annotation-log-injection-sanitizer.md b/java/ql/lib/change-notes/2026-02-14-pattern-annotation-log-injection-sanitizer.md deleted file mode 100644 index ceff0714ab89..000000000000 --- a/java/ql/lib/change-notes/2026-02-14-pattern-annotation-log-injection-sanitizer.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -category: minorAnalysis ---- -* Using a regular expression to check that a string doesn't contain any line breaks is already a sanitizer for `java/log-injection`. Additional ways of doing the regular expression check are now recognised, including annotation with `@javax.validation.constraints.Pattern`. diff --git a/java/ql/lib/change-notes/released/8.1.0.md b/java/ql/lib/change-notes/released/8.1.0.md new file mode 100644 index 000000000000..e560747144d4 --- /dev/null +++ b/java/ql/lib/change-notes/released/8.1.0.md @@ -0,0 +1,20 @@ +## 8.1.0 + +### Deprecated APIs + +* The `UnreachableBlocks.qll` library has been deprecated. +* Renamed the following predicates to increase uniformity across languages. The `getBody` predicate already existed on `LoopStmt`, but is now properly inherited. + - `UnaryExpr.getExpr` to `getOperand`. + - `ConditionalExpr.getTrueExpr` to `getThen`. + - `ConditionalExpr.getFalseExpr` to `getElse`. + - `ReturnStmt.getResult` to `getExpr`. + - `WhileStmt.getStmt` to `getBody`. + - `DoStmt.getStmt` to `getBody`. + - `ForStmt.getStmt` to `getBody`. + - `EnhancedForStmt.getStmt` to `getBody`. + +### Minor Analysis Improvements + +* Using a regular expression to check that a string doesn't contain any line breaks is already a sanitizer for `java/log-injection`. Additional ways of doing the regular expression check are now recognised, including annotation with `@javax.validation.constraints.Pattern`. +* More ways of checking that a string matches a regular expression are now considered as sanitizers for various queries, including `java/ssrf` and `java/path-injection`. In particular, being annotated with `@javax.validation.constraints.Pattern` is now recognised as a sanitizer for those queries. +* Kotlin versions up to 2.3.10 are now supported. diff --git a/java/ql/lib/codeql-pack.release.yml b/java/ql/lib/codeql-pack.release.yml index 0f48687270dc..59984961848d 100644 --- a/java/ql/lib/codeql-pack.release.yml +++ b/java/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 8.0.0 +lastReleaseVersion: 8.1.0 diff --git a/java/ql/lib/qlpack.yml b/java/ql/lib/qlpack.yml index 177711350d5a..2d891f9ac5f3 100644 --- a/java/ql/lib/qlpack.yml +++ b/java/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-all -version: 8.0.1-dev +version: 8.1.0 groups: java dbscheme: config/semmlecode.dbscheme extractor: java diff --git a/java/ql/src/CHANGELOG.md b/java/ql/src/CHANGELOG.md index a7307229a499..20585a7e1cc1 100644 --- a/java/ql/src/CHANGELOG.md +++ b/java/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.10.7 + +No user-facing changes. + ## 1.10.6 No user-facing changes. diff --git a/java/ql/src/change-notes/released/1.10.7.md b/java/ql/src/change-notes/released/1.10.7.md new file mode 100644 index 000000000000..14e7f9a8ecc1 --- /dev/null +++ b/java/ql/src/change-notes/released/1.10.7.md @@ -0,0 +1,3 @@ +## 1.10.7 + +No user-facing changes. diff --git a/java/ql/src/codeql-pack.release.yml b/java/ql/src/codeql-pack.release.yml index 4e10f150f2e7..6e2189b76c6d 100644 --- a/java/ql/src/codeql-pack.release.yml +++ b/java/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.10.6 +lastReleaseVersion: 1.10.7 diff --git a/java/ql/src/qlpack.yml b/java/ql/src/qlpack.yml index 792bb13eb322..2f9b44790086 100644 --- a/java/ql/src/qlpack.yml +++ b/java/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-queries -version: 1.10.7-dev +version: 1.10.7 groups: - java - queries diff --git a/javascript/ql/lib/CHANGELOG.md b/javascript/ql/lib/CHANGELOG.md index c599ea0799bd..1d872998261d 100644 --- a/javascript/ql/lib/CHANGELOG.md +++ b/javascript/ql/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.6.22 + +No user-facing changes. + ## 2.6.21 ### Minor Analysis Improvements diff --git a/javascript/ql/lib/change-notes/released/2.6.22.md b/javascript/ql/lib/change-notes/released/2.6.22.md new file mode 100644 index 000000000000..a89579426456 --- /dev/null +++ b/javascript/ql/lib/change-notes/released/2.6.22.md @@ -0,0 +1,3 @@ +## 2.6.22 + +No user-facing changes. diff --git a/javascript/ql/lib/codeql-pack.release.yml b/javascript/ql/lib/codeql-pack.release.yml index 872f4f9807c1..205f738ae8d9 100644 --- a/javascript/ql/lib/codeql-pack.release.yml +++ b/javascript/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.6.21 +lastReleaseVersion: 2.6.22 diff --git a/javascript/ql/lib/qlpack.yml b/javascript/ql/lib/qlpack.yml index 830994432a56..30d166fb610b 100644 --- a/javascript/ql/lib/qlpack.yml +++ b/javascript/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-all -version: 2.6.22-dev +version: 2.6.22 groups: javascript dbscheme: semmlecode.javascript.dbscheme extractor: javascript diff --git a/javascript/ql/src/CHANGELOG.md b/javascript/ql/src/CHANGELOG.md index 50da6325746f..c08f0793935a 100644 --- a/javascript/ql/src/CHANGELOG.md +++ b/javascript/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.3.2 + +No user-facing changes. + ## 2.3.1 No user-facing changes. diff --git a/javascript/ql/src/change-notes/released/2.3.2.md b/javascript/ql/src/change-notes/released/2.3.2.md new file mode 100644 index 000000000000..420587fa3dc9 --- /dev/null +++ b/javascript/ql/src/change-notes/released/2.3.2.md @@ -0,0 +1,3 @@ +## 2.3.2 + +No user-facing changes. diff --git a/javascript/ql/src/codeql-pack.release.yml b/javascript/ql/src/codeql-pack.release.yml index 530699ffeccb..f51e9b8563c7 100644 --- a/javascript/ql/src/codeql-pack.release.yml +++ b/javascript/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.3.1 +lastReleaseVersion: 2.3.2 diff --git a/javascript/ql/src/qlpack.yml b/javascript/ql/src/qlpack.yml index 8fc055f61e1a..5e72fce54327 100644 --- a/javascript/ql/src/qlpack.yml +++ b/javascript/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-queries -version: 2.3.2-dev +version: 2.3.2 groups: - javascript - queries diff --git a/misc/suite-helpers/CHANGELOG.md b/misc/suite-helpers/CHANGELOG.md index 0d796d324391..2a81d5f40ba6 100644 --- a/misc/suite-helpers/CHANGELOG.md +++ b/misc/suite-helpers/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/misc/suite-helpers/change-notes/released/1.0.42.md b/misc/suite-helpers/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/misc/suite-helpers/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/misc/suite-helpers/codeql-pack.release.yml b/misc/suite-helpers/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/misc/suite-helpers/codeql-pack.release.yml +++ b/misc/suite-helpers/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/misc/suite-helpers/qlpack.yml b/misc/suite-helpers/qlpack.yml index 28a63301e69c..ba00d002da93 100644 --- a/misc/suite-helpers/qlpack.yml +++ b/misc/suite-helpers/qlpack.yml @@ -1,4 +1,4 @@ name: codeql/suite-helpers -version: 1.0.42-dev +version: 1.0.42 groups: shared warnOnImplicitThis: true diff --git a/python/ql/lib/CHANGELOG.md b/python/ql/lib/CHANGELOG.md index a273dc2628b2..76d2adf3a036 100644 --- a/python/ql/lib/CHANGELOG.md +++ b/python/ql/lib/CHANGELOG.md @@ -1,3 +1,14 @@ +## 6.1.1 + +### Minor Analysis Improvements + +* Added request forgery sink models for the Azure SDK. +* Made it so that models-as-data sinks with the kind `request-forgery` contribute to the class `Http::Client::Request` which represents HTTP client requests. + +### Bug Fixes + +- Using `=` as a fill character in a format specifier (e.g `f"{x:=^20}"`) now no longer results in a syntax error during parsing. + ## 6.1.0 ### New Features diff --git a/python/ql/lib/change-notes/2025-09-30-azure_ssrf_models.md b/python/ql/lib/change-notes/2025-09-30-azure_ssrf_models.md deleted file mode 100644 index 283b703a4380..000000000000 --- a/python/ql/lib/change-notes/2025-09-30-azure_ssrf_models.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -category: minorAnalysis ---- -* Added request forgery sink models for the Azure SDK. -* Made it so that models-as-data sinks with the kind `request-forgery` contribute to the class `Http::Client::Request` which represents HTTP client requests. \ No newline at end of file diff --git a/python/ql/lib/change-notes/2026-02-05-fix-format-fill-character-misparse.md b/python/ql/lib/change-notes/2026-02-05-fix-format-fill-character-misparse.md deleted file mode 100644 index 8c0bd18c4dc2..000000000000 --- a/python/ql/lib/change-notes/2026-02-05-fix-format-fill-character-misparse.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -category: fix ---- - -- Using `=` as a fill character in a format specifier (e.g `f"{x:=^20}"`) now no longer results in a syntax error during parsing. diff --git a/python/ql/lib/change-notes/released/6.1.1.md b/python/ql/lib/change-notes/released/6.1.1.md new file mode 100644 index 000000000000..ca4d1bf46842 --- /dev/null +++ b/python/ql/lib/change-notes/released/6.1.1.md @@ -0,0 +1,10 @@ +## 6.1.1 + +### Minor Analysis Improvements + +* Added request forgery sink models for the Azure SDK. +* Made it so that models-as-data sinks with the kind `request-forgery` contribute to the class `Http::Client::Request` which represents HTTP client requests. + +### Bug Fixes + +- Using `=` as a fill character in a format specifier (e.g `f"{x:=^20}"`) now no longer results in a syntax error during parsing. diff --git a/python/ql/lib/codeql-pack.release.yml b/python/ql/lib/codeql-pack.release.yml index 22247782f3e5..54acf3e5e47b 100644 --- a/python/ql/lib/codeql-pack.release.yml +++ b/python/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 6.1.0 +lastReleaseVersion: 6.1.1 diff --git a/python/ql/lib/qlpack.yml b/python/ql/lib/qlpack.yml index 1ead7adb6059..b00b30158bef 100644 --- a/python/ql/lib/qlpack.yml +++ b/python/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-all -version: 6.1.1-dev +version: 6.1.1 groups: python dbscheme: semmlecode.python.dbscheme extractor: python diff --git a/python/ql/src/CHANGELOG.md b/python/ql/src/CHANGELOG.md index 3f9a869decca..a68b2d3b8db1 100644 --- a/python/ql/src/CHANGELOG.md +++ b/python/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.7.7 + +No user-facing changes. + ## 1.7.6 No user-facing changes. diff --git a/python/ql/src/change-notes/released/1.7.7.md b/python/ql/src/change-notes/released/1.7.7.md new file mode 100644 index 000000000000..e1a2f3e1d9a0 --- /dev/null +++ b/python/ql/src/change-notes/released/1.7.7.md @@ -0,0 +1,3 @@ +## 1.7.7 + +No user-facing changes. diff --git a/python/ql/src/codeql-pack.release.yml b/python/ql/src/codeql-pack.release.yml index 1f68518dba9b..df4010bd267b 100644 --- a/python/ql/src/codeql-pack.release.yml +++ b/python/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.7.6 +lastReleaseVersion: 1.7.7 diff --git a/python/ql/src/qlpack.yml b/python/ql/src/qlpack.yml index e6de4a768bf6..dea81a838178 100644 --- a/python/ql/src/qlpack.yml +++ b/python/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-queries -version: 1.7.7-dev +version: 1.7.7 groups: - python - queries diff --git a/ruby/ql/lib/CHANGELOG.md b/ruby/ql/lib/CHANGELOG.md index 408f2f3144f1..063e5f16211a 100644 --- a/ruby/ql/lib/CHANGELOG.md +++ b/ruby/ql/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 5.1.10 + +No user-facing changes. + ## 5.1.9 ### Minor Analysis Improvements diff --git a/ruby/ql/lib/change-notes/released/5.1.10.md b/ruby/ql/lib/change-notes/released/5.1.10.md new file mode 100644 index 000000000000..f22ccf3e6e9d --- /dev/null +++ b/ruby/ql/lib/change-notes/released/5.1.10.md @@ -0,0 +1,3 @@ +## 5.1.10 + +No user-facing changes. diff --git a/ruby/ql/lib/codeql-pack.release.yml b/ruby/ql/lib/codeql-pack.release.yml index f9bf26052618..9198af0dd6c7 100644 --- a/ruby/ql/lib/codeql-pack.release.yml +++ b/ruby/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 5.1.9 +lastReleaseVersion: 5.1.10 diff --git a/ruby/ql/lib/qlpack.yml b/ruby/ql/lib/qlpack.yml index 824d21e13312..a9e713a73e7f 100644 --- a/ruby/ql/lib/qlpack.yml +++ b/ruby/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-all -version: 5.1.10-dev +version: 5.1.10 groups: ruby extractor: ruby dbscheme: ruby.dbscheme diff --git a/ruby/ql/src/CHANGELOG.md b/ruby/ql/src/CHANGELOG.md index fd5b24f166e5..247072967e78 100644 --- a/ruby/ql/src/CHANGELOG.md +++ b/ruby/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.5.7 + +No user-facing changes. + ## 1.5.6 No user-facing changes. diff --git a/ruby/ql/src/change-notes/released/1.5.7.md b/ruby/ql/src/change-notes/released/1.5.7.md new file mode 100644 index 000000000000..c60c55034a6b --- /dev/null +++ b/ruby/ql/src/change-notes/released/1.5.7.md @@ -0,0 +1,3 @@ +## 1.5.7 + +No user-facing changes. diff --git a/ruby/ql/src/codeql-pack.release.yml b/ruby/ql/src/codeql-pack.release.yml index 9a0b3c9461b0..227ac5febefb 100644 --- a/ruby/ql/src/codeql-pack.release.yml +++ b/ruby/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.5.6 +lastReleaseVersion: 1.5.7 diff --git a/ruby/ql/src/qlpack.yml b/ruby/ql/src/qlpack.yml index 63d59fd0faa9..20706f6f0acd 100644 --- a/ruby/ql/src/qlpack.yml +++ b/ruby/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-queries -version: 1.5.7-dev +version: 1.5.7 groups: - ruby - queries diff --git a/rust/ql/lib/CHANGELOG.md b/rust/ql/lib/CHANGELOG.md index b913efd02f06..3887b67b4dfd 100644 --- a/rust/ql/lib/CHANGELOG.md +++ b/rust/ql/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.2.6 + +No user-facing changes. + ## 0.2.5 ### Minor Analysis Improvements diff --git a/rust/ql/lib/change-notes/released/0.2.6.md b/rust/ql/lib/change-notes/released/0.2.6.md new file mode 100644 index 000000000000..edaefe75481e --- /dev/null +++ b/rust/ql/lib/change-notes/released/0.2.6.md @@ -0,0 +1,3 @@ +## 0.2.6 + +No user-facing changes. diff --git a/rust/ql/lib/codeql-pack.release.yml b/rust/ql/lib/codeql-pack.release.yml index 211454ed3064..248dd0f4594b 100644 --- a/rust/ql/lib/codeql-pack.release.yml +++ b/rust/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.2.5 +lastReleaseVersion: 0.2.6 diff --git a/rust/ql/lib/qlpack.yml b/rust/ql/lib/qlpack.yml index d87089914d30..c23251f51ef2 100644 --- a/rust/ql/lib/qlpack.yml +++ b/rust/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-all -version: 0.2.6-dev +version: 0.2.6 groups: rust extractor: rust dbscheme: rust.dbscheme diff --git a/rust/ql/src/CHANGELOG.md b/rust/ql/src/CHANGELOG.md index fe96ab5baad8..72f10e760fc4 100644 --- a/rust/ql/src/CHANGELOG.md +++ b/rust/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.1.27 + +No user-facing changes. + ## 0.1.26 No user-facing changes. diff --git a/rust/ql/src/change-notes/released/0.1.27.md b/rust/ql/src/change-notes/released/0.1.27.md new file mode 100644 index 000000000000..3e409381bd91 --- /dev/null +++ b/rust/ql/src/change-notes/released/0.1.27.md @@ -0,0 +1,3 @@ +## 0.1.27 + +No user-facing changes. diff --git a/rust/ql/src/codeql-pack.release.yml b/rust/ql/src/codeql-pack.release.yml index e2396c0532fa..35535ba43d50 100644 --- a/rust/ql/src/codeql-pack.release.yml +++ b/rust/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.1.26 +lastReleaseVersion: 0.1.27 diff --git a/rust/ql/src/qlpack.yml b/rust/ql/src/qlpack.yml index 850f67e18a88..3ce8fab18ffc 100644 --- a/rust/ql/src/qlpack.yml +++ b/rust/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-queries -version: 0.1.27-dev +version: 0.1.27 groups: - rust - queries diff --git a/shared/concepts/CHANGELOG.md b/shared/concepts/CHANGELOG.md index 29dba07c3659..933fc5e7cd91 100644 --- a/shared/concepts/CHANGELOG.md +++ b/shared/concepts/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.0.16 + +No user-facing changes. + ## 0.0.15 No user-facing changes. diff --git a/shared/concepts/change-notes/released/0.0.16.md b/shared/concepts/change-notes/released/0.0.16.md new file mode 100644 index 000000000000..62b5521ea013 --- /dev/null +++ b/shared/concepts/change-notes/released/0.0.16.md @@ -0,0 +1,3 @@ +## 0.0.16 + +No user-facing changes. diff --git a/shared/concepts/codeql-pack.release.yml b/shared/concepts/codeql-pack.release.yml index dff35216fc69..a49f7be4cff3 100644 --- a/shared/concepts/codeql-pack.release.yml +++ b/shared/concepts/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.0.15 +lastReleaseVersion: 0.0.16 diff --git a/shared/concepts/qlpack.yml b/shared/concepts/qlpack.yml index 4cfa6918d191..fcce8c5cac32 100644 --- a/shared/concepts/qlpack.yml +++ b/shared/concepts/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/concepts -version: 0.0.16-dev +version: 0.0.16 groups: shared library: true dependencies: diff --git a/shared/controlflow/CHANGELOG.md b/shared/controlflow/CHANGELOG.md index 1fd69b562a68..88666b4ad289 100644 --- a/shared/controlflow/CHANGELOG.md +++ b/shared/controlflow/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.26 + +No user-facing changes. + ## 2.0.25 No user-facing changes. diff --git a/shared/controlflow/change-notes/released/2.0.26.md b/shared/controlflow/change-notes/released/2.0.26.md new file mode 100644 index 000000000000..9b1fe95f5774 --- /dev/null +++ b/shared/controlflow/change-notes/released/2.0.26.md @@ -0,0 +1,3 @@ +## 2.0.26 + +No user-facing changes. diff --git a/shared/controlflow/codeql-pack.release.yml b/shared/controlflow/codeql-pack.release.yml index f54d86201189..63d57bef4816 100644 --- a/shared/controlflow/codeql-pack.release.yml +++ b/shared/controlflow/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.25 +lastReleaseVersion: 2.0.26 diff --git a/shared/controlflow/qlpack.yml b/shared/controlflow/qlpack.yml index 5ed225933687..99b795145120 100644 --- a/shared/controlflow/qlpack.yml +++ b/shared/controlflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/controlflow -version: 2.0.26-dev +version: 2.0.26 groups: shared library: true dependencies: diff --git a/shared/dataflow/CHANGELOG.md b/shared/dataflow/CHANGELOG.md index 49857928ffe2..f9d35bda41df 100644 --- a/shared/dataflow/CHANGELOG.md +++ b/shared/dataflow/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.26 + +No user-facing changes. + ## 2.0.25 No user-facing changes. diff --git a/shared/dataflow/change-notes/released/2.0.26.md b/shared/dataflow/change-notes/released/2.0.26.md new file mode 100644 index 000000000000..9b1fe95f5774 --- /dev/null +++ b/shared/dataflow/change-notes/released/2.0.26.md @@ -0,0 +1,3 @@ +## 2.0.26 + +No user-facing changes. diff --git a/shared/dataflow/codeql-pack.release.yml b/shared/dataflow/codeql-pack.release.yml index f54d86201189..63d57bef4816 100644 --- a/shared/dataflow/codeql-pack.release.yml +++ b/shared/dataflow/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.25 +lastReleaseVersion: 2.0.26 diff --git a/shared/dataflow/qlpack.yml b/shared/dataflow/qlpack.yml index de23fe3e38b1..243db1c539cc 100644 --- a/shared/dataflow/qlpack.yml +++ b/shared/dataflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/dataflow -version: 2.0.26-dev +version: 2.0.26 groups: shared library: true dependencies: diff --git a/shared/mad/CHANGELOG.md b/shared/mad/CHANGELOG.md index bc1ee96895ce..7fe382ef31da 100644 --- a/shared/mad/CHANGELOG.md +++ b/shared/mad/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/mad/change-notes/released/1.0.42.md b/shared/mad/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/mad/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/mad/codeql-pack.release.yml b/shared/mad/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/mad/codeql-pack.release.yml +++ b/shared/mad/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/mad/qlpack.yml b/shared/mad/qlpack.yml index e1b46e5427cf..358b90c92b59 100644 --- a/shared/mad/qlpack.yml +++ b/shared/mad/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/mad -version: 1.0.42-dev +version: 1.0.42 groups: shared library: true dependencies: diff --git a/shared/quantum/CHANGELOG.md b/shared/quantum/CHANGELOG.md index d5252bfc0c4f..7ac497bdb32c 100644 --- a/shared/quantum/CHANGELOG.md +++ b/shared/quantum/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.0.20 + +No user-facing changes. + ## 0.0.19 No user-facing changes. diff --git a/shared/quantum/change-notes/released/0.0.20.md b/shared/quantum/change-notes/released/0.0.20.md new file mode 100644 index 000000000000..98daf20a59a1 --- /dev/null +++ b/shared/quantum/change-notes/released/0.0.20.md @@ -0,0 +1,3 @@ +## 0.0.20 + +No user-facing changes. diff --git a/shared/quantum/codeql-pack.release.yml b/shared/quantum/codeql-pack.release.yml index f406319f372e..d2e86745bcaa 100644 --- a/shared/quantum/codeql-pack.release.yml +++ b/shared/quantum/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.0.19 +lastReleaseVersion: 0.0.20 diff --git a/shared/quantum/qlpack.yml b/shared/quantum/qlpack.yml index d3129461a499..84b0091c2432 100644 --- a/shared/quantum/qlpack.yml +++ b/shared/quantum/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/quantum -version: 0.0.20-dev +version: 0.0.20 groups: shared library: true dependencies: diff --git a/shared/rangeanalysis/CHANGELOG.md b/shared/rangeanalysis/CHANGELOG.md index 3dde8baa4b06..56497c3d31e4 100644 --- a/shared/rangeanalysis/CHANGELOG.md +++ b/shared/rangeanalysis/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/rangeanalysis/change-notes/released/1.0.42.md b/shared/rangeanalysis/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/rangeanalysis/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/rangeanalysis/codeql-pack.release.yml b/shared/rangeanalysis/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/rangeanalysis/codeql-pack.release.yml +++ b/shared/rangeanalysis/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/rangeanalysis/qlpack.yml b/shared/rangeanalysis/qlpack.yml index be9c067d84ea..0220e2370654 100644 --- a/shared/rangeanalysis/qlpack.yml +++ b/shared/rangeanalysis/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rangeanalysis -version: 1.0.42-dev +version: 1.0.42 groups: shared library: true dependencies: diff --git a/shared/regex/CHANGELOG.md b/shared/regex/CHANGELOG.md index 2e3dacffd923..48478854251d 100644 --- a/shared/regex/CHANGELOG.md +++ b/shared/regex/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/regex/change-notes/released/1.0.42.md b/shared/regex/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/regex/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/regex/codeql-pack.release.yml b/shared/regex/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/regex/codeql-pack.release.yml +++ b/shared/regex/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/regex/qlpack.yml b/shared/regex/qlpack.yml index 93baefe6d786..915c2fb7c347 100644 --- a/shared/regex/qlpack.yml +++ b/shared/regex/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/regex -version: 1.0.42-dev +version: 1.0.42 groups: shared library: true dependencies: diff --git a/shared/ssa/CHANGELOG.md b/shared/ssa/CHANGELOG.md index 62c6ce297f98..49bac05febbf 100644 --- a/shared/ssa/CHANGELOG.md +++ b/shared/ssa/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.18 + +No user-facing changes. + ## 2.0.17 No user-facing changes. diff --git a/shared/ssa/change-notes/released/2.0.18.md b/shared/ssa/change-notes/released/2.0.18.md new file mode 100644 index 000000000000..11e398dac31a --- /dev/null +++ b/shared/ssa/change-notes/released/2.0.18.md @@ -0,0 +1,3 @@ +## 2.0.18 + +No user-facing changes. diff --git a/shared/ssa/codeql-pack.release.yml b/shared/ssa/codeql-pack.release.yml index a5f7c15c020f..16342205c738 100644 --- a/shared/ssa/codeql-pack.release.yml +++ b/shared/ssa/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.17 +lastReleaseVersion: 2.0.18 diff --git a/shared/ssa/qlpack.yml b/shared/ssa/qlpack.yml index d5e6d266097d..2c51888e5124 100644 --- a/shared/ssa/qlpack.yml +++ b/shared/ssa/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ssa -version: 2.0.18-dev +version: 2.0.18 groups: shared library: true dependencies: diff --git a/shared/threat-models/CHANGELOG.md b/shared/threat-models/CHANGELOG.md index d0c8171cdf67..e91058f491a0 100644 --- a/shared/threat-models/CHANGELOG.md +++ b/shared/threat-models/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/threat-models/change-notes/released/1.0.42.md b/shared/threat-models/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/threat-models/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/threat-models/codeql-pack.release.yml b/shared/threat-models/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/threat-models/codeql-pack.release.yml +++ b/shared/threat-models/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/threat-models/qlpack.yml b/shared/threat-models/qlpack.yml index 0ed1decf1d03..197379a2b2ff 100644 --- a/shared/threat-models/qlpack.yml +++ b/shared/threat-models/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/threat-models -version: 1.0.42-dev +version: 1.0.42 library: true groups: shared dataExtensions: diff --git a/shared/tutorial/CHANGELOG.md b/shared/tutorial/CHANGELOG.md index 833807725734..4ecb5dcd241b 100644 --- a/shared/tutorial/CHANGELOG.md +++ b/shared/tutorial/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/tutorial/change-notes/released/1.0.42.md b/shared/tutorial/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/tutorial/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/tutorial/codeql-pack.release.yml b/shared/tutorial/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/tutorial/codeql-pack.release.yml +++ b/shared/tutorial/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/tutorial/qlpack.yml b/shared/tutorial/qlpack.yml index 1e937c1f8604..f7d1592cc2f2 100644 --- a/shared/tutorial/qlpack.yml +++ b/shared/tutorial/qlpack.yml @@ -1,7 +1,7 @@ name: codeql/tutorial description: Library for the CodeQL detective tutorials, helping new users learn to write CodeQL queries. -version: 1.0.42-dev +version: 1.0.42 groups: shared library: true warnOnImplicitThis: true diff --git a/shared/typeflow/CHANGELOG.md b/shared/typeflow/CHANGELOG.md index caecb313a31a..176ba027afe0 100644 --- a/shared/typeflow/CHANGELOG.md +++ b/shared/typeflow/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/typeflow/change-notes/released/1.0.42.md b/shared/typeflow/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/typeflow/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/typeflow/codeql-pack.release.yml b/shared/typeflow/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/typeflow/codeql-pack.release.yml +++ b/shared/typeflow/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/typeflow/qlpack.yml b/shared/typeflow/qlpack.yml index f40dd352f6ea..717d5e5c9a55 100644 --- a/shared/typeflow/qlpack.yml +++ b/shared/typeflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeflow -version: 1.0.42-dev +version: 1.0.42 groups: shared library: true dependencies: diff --git a/shared/typeinference/CHANGELOG.md b/shared/typeinference/CHANGELOG.md index 356c331b5dfe..4d23ebe8abb1 100644 --- a/shared/typeinference/CHANGELOG.md +++ b/shared/typeinference/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.0.23 + +No user-facing changes. + ## 0.0.22 No user-facing changes. diff --git a/shared/typeinference/change-notes/released/0.0.23.md b/shared/typeinference/change-notes/released/0.0.23.md new file mode 100644 index 000000000000..e89a1284bb82 --- /dev/null +++ b/shared/typeinference/change-notes/released/0.0.23.md @@ -0,0 +1,3 @@ +## 0.0.23 + +No user-facing changes. diff --git a/shared/typeinference/codeql-pack.release.yml b/shared/typeinference/codeql-pack.release.yml index 11aaa2243f57..cc2195603d84 100644 --- a/shared/typeinference/codeql-pack.release.yml +++ b/shared/typeinference/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 0.0.22 +lastReleaseVersion: 0.0.23 diff --git a/shared/typeinference/qlpack.yml b/shared/typeinference/qlpack.yml index 927036035b5d..e740633b8523 100644 --- a/shared/typeinference/qlpack.yml +++ b/shared/typeinference/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeinference -version: 0.0.23-dev +version: 0.0.23 groups: shared library: true dependencies: diff --git a/shared/typetracking/CHANGELOG.md b/shared/typetracking/CHANGELOG.md index 8504089f8728..d5ca15b5be73 100644 --- a/shared/typetracking/CHANGELOG.md +++ b/shared/typetracking/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.26 + +No user-facing changes. + ## 2.0.25 No user-facing changes. diff --git a/shared/typetracking/change-notes/released/2.0.26.md b/shared/typetracking/change-notes/released/2.0.26.md new file mode 100644 index 000000000000..9b1fe95f5774 --- /dev/null +++ b/shared/typetracking/change-notes/released/2.0.26.md @@ -0,0 +1,3 @@ +## 2.0.26 + +No user-facing changes. diff --git a/shared/typetracking/codeql-pack.release.yml b/shared/typetracking/codeql-pack.release.yml index f54d86201189..63d57bef4816 100644 --- a/shared/typetracking/codeql-pack.release.yml +++ b/shared/typetracking/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.25 +lastReleaseVersion: 2.0.26 diff --git a/shared/typetracking/qlpack.yml b/shared/typetracking/qlpack.yml index fcaed606ded0..a8b74e13d69b 100644 --- a/shared/typetracking/qlpack.yml +++ b/shared/typetracking/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typetracking -version: 2.0.26-dev +version: 2.0.26 groups: shared library: true dependencies: diff --git a/shared/typos/CHANGELOG.md b/shared/typos/CHANGELOG.md index cfbec562b146..9e886726714d 100644 --- a/shared/typos/CHANGELOG.md +++ b/shared/typos/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/typos/change-notes/released/1.0.42.md b/shared/typos/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/typos/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/typos/codeql-pack.release.yml b/shared/typos/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/typos/codeql-pack.release.yml +++ b/shared/typos/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/typos/qlpack.yml b/shared/typos/qlpack.yml index de131d17f6bb..c339ed16159c 100644 --- a/shared/typos/qlpack.yml +++ b/shared/typos/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typos -version: 1.0.42-dev +version: 1.0.42 groups: shared library: true warnOnImplicitThis: true diff --git a/shared/util/CHANGELOG.md b/shared/util/CHANGELOG.md index 904aa45e034f..de6fbcff12f1 100644 --- a/shared/util/CHANGELOG.md +++ b/shared/util/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.29 + +No user-facing changes. + ## 2.0.28 No user-facing changes. diff --git a/shared/util/change-notes/released/2.0.29.md b/shared/util/change-notes/released/2.0.29.md new file mode 100644 index 000000000000..c8e5d5c3d050 --- /dev/null +++ b/shared/util/change-notes/released/2.0.29.md @@ -0,0 +1,3 @@ +## 2.0.29 + +No user-facing changes. diff --git a/shared/util/codeql-pack.release.yml b/shared/util/codeql-pack.release.yml index ec5bd6ba3691..1425cb159e43 100644 --- a/shared/util/codeql-pack.release.yml +++ b/shared/util/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 2.0.28 +lastReleaseVersion: 2.0.29 diff --git a/shared/util/qlpack.yml b/shared/util/qlpack.yml index def146658c0b..81efc5bf9af7 100644 --- a/shared/util/qlpack.yml +++ b/shared/util/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/util -version: 2.0.29-dev +version: 2.0.29 groups: shared library: true dependencies: null diff --git a/shared/xml/CHANGELOG.md b/shared/xml/CHANGELOG.md index 7a85ea45c7b3..c642973980d3 100644 --- a/shared/xml/CHANGELOG.md +++ b/shared/xml/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/xml/change-notes/released/1.0.42.md b/shared/xml/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/xml/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/xml/codeql-pack.release.yml b/shared/xml/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/xml/codeql-pack.release.yml +++ b/shared/xml/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/xml/qlpack.yml b/shared/xml/qlpack.yml index d12cff34fbee..e84e83a927ed 100644 --- a/shared/xml/qlpack.yml +++ b/shared/xml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/xml -version: 1.0.42-dev +version: 1.0.42 groups: shared library: true dependencies: diff --git a/shared/yaml/CHANGELOG.md b/shared/yaml/CHANGELOG.md index 78b636e0288b..b2c9cee85a63 100644 --- a/shared/yaml/CHANGELOG.md +++ b/shared/yaml/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.42 + +No user-facing changes. + ## 1.0.41 No user-facing changes. diff --git a/shared/yaml/change-notes/released/1.0.42.md b/shared/yaml/change-notes/released/1.0.42.md new file mode 100644 index 000000000000..821c38854a26 --- /dev/null +++ b/shared/yaml/change-notes/released/1.0.42.md @@ -0,0 +1,3 @@ +## 1.0.42 + +No user-facing changes. diff --git a/shared/yaml/codeql-pack.release.yml b/shared/yaml/codeql-pack.release.yml index d496eab6eb95..53e8667626ac 100644 --- a/shared/yaml/codeql-pack.release.yml +++ b/shared/yaml/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.0.41 +lastReleaseVersion: 1.0.42 diff --git a/shared/yaml/qlpack.yml b/shared/yaml/qlpack.yml index 5ba88d4abdba..263fd7d87a76 100644 --- a/shared/yaml/qlpack.yml +++ b/shared/yaml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/yaml -version: 1.0.42-dev +version: 1.0.42 groups: shared library: true warnOnImplicitThis: true diff --git a/swift/ql/lib/CHANGELOG.md b/swift/ql/lib/CHANGELOG.md index f4fe2159e07a..65446a02bf35 100644 --- a/swift/ql/lib/CHANGELOG.md +++ b/swift/ql/lib/CHANGELOG.md @@ -1,3 +1,7 @@ +## 6.2.2 + +No user-facing changes. + ## 6.2.1 ### Minor Analysis Improvements diff --git a/swift/ql/lib/change-notes/released/6.2.2.md b/swift/ql/lib/change-notes/released/6.2.2.md new file mode 100644 index 000000000000..769c4987cc02 --- /dev/null +++ b/swift/ql/lib/change-notes/released/6.2.2.md @@ -0,0 +1,3 @@ +## 6.2.2 + +No user-facing changes. diff --git a/swift/ql/lib/codeql-pack.release.yml b/swift/ql/lib/codeql-pack.release.yml index 8e36085279d5..0d8f9cf75478 100644 --- a/swift/ql/lib/codeql-pack.release.yml +++ b/swift/ql/lib/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 6.2.1 +lastReleaseVersion: 6.2.2 diff --git a/swift/ql/lib/qlpack.yml b/swift/ql/lib/qlpack.yml index 157e1334212b..0f240082bf7c 100644 --- a/swift/ql/lib/qlpack.yml +++ b/swift/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-all -version: 6.2.2-dev +version: 6.2.2 groups: swift extractor: swift dbscheme: swift.dbscheme diff --git a/swift/ql/src/CHANGELOG.md b/swift/ql/src/CHANGELOG.md index bf6367cf668b..0b3d34fc0f58 100644 --- a/swift/ql/src/CHANGELOG.md +++ b/swift/ql/src/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.2.16 + +No user-facing changes. + ## 1.2.15 No user-facing changes. diff --git a/swift/ql/src/change-notes/released/1.2.16.md b/swift/ql/src/change-notes/released/1.2.16.md new file mode 100644 index 000000000000..2cba5480d4e6 --- /dev/null +++ b/swift/ql/src/change-notes/released/1.2.16.md @@ -0,0 +1,3 @@ +## 1.2.16 + +No user-facing changes. diff --git a/swift/ql/src/codeql-pack.release.yml b/swift/ql/src/codeql-pack.release.yml index df8980e5dd26..11aa69f2d7a0 100644 --- a/swift/ql/src/codeql-pack.release.yml +++ b/swift/ql/src/codeql-pack.release.yml @@ -1,2 +1,2 @@ --- -lastReleaseVersion: 1.2.15 +lastReleaseVersion: 1.2.16 diff --git a/swift/ql/src/qlpack.yml b/swift/ql/src/qlpack.yml index bdac35f35b2c..d6128248bd75 100644 --- a/swift/ql/src/qlpack.yml +++ b/swift/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-queries -version: 1.2.16-dev +version: 1.2.16 groups: - swift - queries From b5898c5a3035c9d56fd6dc33fef79ebd38f0dfdd Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 16 Feb 2026 17:07:45 +0000 Subject: [PATCH 433/433] Post-release preparation for codeql-cli-2.24.2 --- actions/ql/lib/qlpack.yml | 2 +- actions/ql/src/qlpack.yml | 2 +- cpp/ql/lib/qlpack.yml | 2 +- cpp/ql/src/qlpack.yml | 2 +- csharp/ql/campaigns/Solorigate/lib/qlpack.yml | 2 +- csharp/ql/campaigns/Solorigate/src/qlpack.yml | 2 +- csharp/ql/lib/qlpack.yml | 2 +- csharp/ql/src/qlpack.yml | 2 +- go/ql/consistency-queries/qlpack.yml | 2 +- go/ql/lib/qlpack.yml | 2 +- go/ql/src/qlpack.yml | 2 +- java/ql/lib/qlpack.yml | 2 +- java/ql/src/qlpack.yml | 2 +- javascript/ql/lib/qlpack.yml | 2 +- javascript/ql/src/qlpack.yml | 2 +- misc/suite-helpers/qlpack.yml | 2 +- python/ql/lib/qlpack.yml | 2 +- python/ql/src/qlpack.yml | 2 +- ruby/ql/lib/qlpack.yml | 2 +- ruby/ql/src/qlpack.yml | 2 +- rust/ql/lib/qlpack.yml | 2 +- rust/ql/src/qlpack.yml | 2 +- shared/concepts/qlpack.yml | 2 +- shared/controlflow/qlpack.yml | 2 +- shared/dataflow/qlpack.yml | 2 +- shared/mad/qlpack.yml | 2 +- shared/quantum/qlpack.yml | 2 +- shared/rangeanalysis/qlpack.yml | 2 +- shared/regex/qlpack.yml | 2 +- shared/ssa/qlpack.yml | 2 +- shared/threat-models/qlpack.yml | 2 +- shared/tutorial/qlpack.yml | 2 +- shared/typeflow/qlpack.yml | 2 +- shared/typeinference/qlpack.yml | 2 +- shared/typetracking/qlpack.yml | 2 +- shared/typos/qlpack.yml | 2 +- shared/util/qlpack.yml | 2 +- shared/xml/qlpack.yml | 2 +- shared/yaml/qlpack.yml | 2 +- swift/ql/lib/qlpack.yml | 2 +- swift/ql/src/qlpack.yml | 2 +- 41 files changed, 41 insertions(+), 41 deletions(-) diff --git a/actions/ql/lib/qlpack.yml b/actions/ql/lib/qlpack.yml index 5725fb5f9aab..a9d5b7e61f63 100644 --- a/actions/ql/lib/qlpack.yml +++ b/actions/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-all -version: 0.4.28 +version: 0.4.29-dev library: true warnOnImplicitThis: true dependencies: diff --git a/actions/ql/src/qlpack.yml b/actions/ql/src/qlpack.yml index e41369b51932..f4e731dc26da 100644 --- a/actions/ql/src/qlpack.yml +++ b/actions/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-queries -version: 0.6.20 +version: 0.6.21-dev library: false warnOnImplicitThis: true groups: [actions, queries] diff --git a/cpp/ql/lib/qlpack.yml b/cpp/ql/lib/qlpack.yml index d2b42410887c..31ce003aadc6 100644 --- a/cpp/ql/lib/qlpack.yml +++ b/cpp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-all -version: 7.1.1 +version: 7.1.2-dev groups: cpp dbscheme: semmlecode.cpp.dbscheme extractor: cpp diff --git a/cpp/ql/src/qlpack.yml b/cpp/ql/src/qlpack.yml index 51a78ddd3fcb..d8620439fe62 100644 --- a/cpp/ql/src/qlpack.yml +++ b/cpp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-queries -version: 1.5.11 +version: 1.5.12-dev groups: - cpp - queries diff --git a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml index bb75fe4cfffe..2bf13d256c9b 100644 --- a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-all -version: 1.7.59 +version: 1.7.60-dev groups: - csharp - solorigate diff --git a/csharp/ql/campaigns/Solorigate/src/qlpack.yml b/csharp/ql/campaigns/Solorigate/src/qlpack.yml index 0ab19080276a..780301f353c8 100644 --- a/csharp/ql/campaigns/Solorigate/src/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-queries -version: 1.7.59 +version: 1.7.60-dev groups: - csharp - solorigate diff --git a/csharp/ql/lib/qlpack.yml b/csharp/ql/lib/qlpack.yml index d873c0c3b082..30f75e743043 100644 --- a/csharp/ql/lib/qlpack.yml +++ b/csharp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-all -version: 5.4.7 +version: 5.4.8-dev groups: csharp dbscheme: semmlecode.csharp.dbscheme extractor: csharp diff --git a/csharp/ql/src/qlpack.yml b/csharp/ql/src/qlpack.yml index 7986040d2b66..d43afd632c10 100644 --- a/csharp/ql/src/qlpack.yml +++ b/csharp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-queries -version: 1.6.2 +version: 1.6.3-dev groups: - csharp - queries diff --git a/go/ql/consistency-queries/qlpack.yml b/go/ql/consistency-queries/qlpack.yml index 96304fa9a182..6f9302c9ac46 100644 --- a/go/ql/consistency-queries/qlpack.yml +++ b/go/ql/consistency-queries/qlpack.yml @@ -1,5 +1,5 @@ name: codeql-go-consistency-queries -version: 1.0.42 +version: 1.0.43-dev groups: - go - queries diff --git a/go/ql/lib/qlpack.yml b/go/ql/lib/qlpack.yml index 94a5b04b3908..ac5f63a29bc5 100644 --- a/go/ql/lib/qlpack.yml +++ b/go/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-all -version: 7.0.0 +version: 7.0.1-dev groups: go dbscheme: go.dbscheme extractor: go diff --git a/go/ql/src/qlpack.yml b/go/ql/src/qlpack.yml index 43b5c67bc3f3..bbac3ffc2124 100644 --- a/go/ql/src/qlpack.yml +++ b/go/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-queries -version: 1.5.6 +version: 1.5.7-dev groups: - go - queries diff --git a/java/ql/lib/qlpack.yml b/java/ql/lib/qlpack.yml index 2d891f9ac5f3..a1737f2d1cbb 100644 --- a/java/ql/lib/qlpack.yml +++ b/java/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-all -version: 8.1.0 +version: 8.1.1-dev groups: java dbscheme: config/semmlecode.dbscheme extractor: java diff --git a/java/ql/src/qlpack.yml b/java/ql/src/qlpack.yml index 2f9b44790086..fda7663d6864 100644 --- a/java/ql/src/qlpack.yml +++ b/java/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-queries -version: 1.10.7 +version: 1.10.8-dev groups: - java - queries diff --git a/javascript/ql/lib/qlpack.yml b/javascript/ql/lib/qlpack.yml index 30d166fb610b..2415cf3d3b72 100644 --- a/javascript/ql/lib/qlpack.yml +++ b/javascript/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-all -version: 2.6.22 +version: 2.6.23-dev groups: javascript dbscheme: semmlecode.javascript.dbscheme extractor: javascript diff --git a/javascript/ql/src/qlpack.yml b/javascript/ql/src/qlpack.yml index 5e72fce54327..1f57b3e99e2f 100644 --- a/javascript/ql/src/qlpack.yml +++ b/javascript/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-queries -version: 2.3.2 +version: 2.3.3-dev groups: - javascript - queries diff --git a/misc/suite-helpers/qlpack.yml b/misc/suite-helpers/qlpack.yml index ba00d002da93..48e31175a000 100644 --- a/misc/suite-helpers/qlpack.yml +++ b/misc/suite-helpers/qlpack.yml @@ -1,4 +1,4 @@ name: codeql/suite-helpers -version: 1.0.42 +version: 1.0.43-dev groups: shared warnOnImplicitThis: true diff --git a/python/ql/lib/qlpack.yml b/python/ql/lib/qlpack.yml index b00b30158bef..36b8813f8dec 100644 --- a/python/ql/lib/qlpack.yml +++ b/python/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-all -version: 6.1.1 +version: 6.1.2-dev groups: python dbscheme: semmlecode.python.dbscheme extractor: python diff --git a/python/ql/src/qlpack.yml b/python/ql/src/qlpack.yml index dea81a838178..c6b7d29f6312 100644 --- a/python/ql/src/qlpack.yml +++ b/python/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-queries -version: 1.7.7 +version: 1.7.8-dev groups: - python - queries diff --git a/ruby/ql/lib/qlpack.yml b/ruby/ql/lib/qlpack.yml index a9e713a73e7f..1d14ca0e3d26 100644 --- a/ruby/ql/lib/qlpack.yml +++ b/ruby/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-all -version: 5.1.10 +version: 5.1.11-dev groups: ruby extractor: ruby dbscheme: ruby.dbscheme diff --git a/ruby/ql/src/qlpack.yml b/ruby/ql/src/qlpack.yml index 20706f6f0acd..b027389bc632 100644 --- a/ruby/ql/src/qlpack.yml +++ b/ruby/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-queries -version: 1.5.7 +version: 1.5.8-dev groups: - ruby - queries diff --git a/rust/ql/lib/qlpack.yml b/rust/ql/lib/qlpack.yml index c23251f51ef2..f7428ef10877 100644 --- a/rust/ql/lib/qlpack.yml +++ b/rust/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-all -version: 0.2.6 +version: 0.2.7-dev groups: rust extractor: rust dbscheme: rust.dbscheme diff --git a/rust/ql/src/qlpack.yml b/rust/ql/src/qlpack.yml index 3ce8fab18ffc..21011bd93d53 100644 --- a/rust/ql/src/qlpack.yml +++ b/rust/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-queries -version: 0.1.27 +version: 0.1.28-dev groups: - rust - queries diff --git a/shared/concepts/qlpack.yml b/shared/concepts/qlpack.yml index fcce8c5cac32..240ee962cfd4 100644 --- a/shared/concepts/qlpack.yml +++ b/shared/concepts/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/concepts -version: 0.0.16 +version: 0.0.17-dev groups: shared library: true dependencies: diff --git a/shared/controlflow/qlpack.yml b/shared/controlflow/qlpack.yml index 99b795145120..6ae58a799e62 100644 --- a/shared/controlflow/qlpack.yml +++ b/shared/controlflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/controlflow -version: 2.0.26 +version: 2.0.27-dev groups: shared library: true dependencies: diff --git a/shared/dataflow/qlpack.yml b/shared/dataflow/qlpack.yml index 243db1c539cc..d16d8379bbb5 100644 --- a/shared/dataflow/qlpack.yml +++ b/shared/dataflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/dataflow -version: 2.0.26 +version: 2.0.27-dev groups: shared library: true dependencies: diff --git a/shared/mad/qlpack.yml b/shared/mad/qlpack.yml index 358b90c92b59..9adf5d48ad5e 100644 --- a/shared/mad/qlpack.yml +++ b/shared/mad/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/mad -version: 1.0.42 +version: 1.0.43-dev groups: shared library: true dependencies: diff --git a/shared/quantum/qlpack.yml b/shared/quantum/qlpack.yml index 84b0091c2432..91774b4db2df 100644 --- a/shared/quantum/qlpack.yml +++ b/shared/quantum/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/quantum -version: 0.0.20 +version: 0.0.21-dev groups: shared library: true dependencies: diff --git a/shared/rangeanalysis/qlpack.yml b/shared/rangeanalysis/qlpack.yml index 0220e2370654..a5e5998c4a76 100644 --- a/shared/rangeanalysis/qlpack.yml +++ b/shared/rangeanalysis/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rangeanalysis -version: 1.0.42 +version: 1.0.43-dev groups: shared library: true dependencies: diff --git a/shared/regex/qlpack.yml b/shared/regex/qlpack.yml index 915c2fb7c347..2dd532583184 100644 --- a/shared/regex/qlpack.yml +++ b/shared/regex/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/regex -version: 1.0.42 +version: 1.0.43-dev groups: shared library: true dependencies: diff --git a/shared/ssa/qlpack.yml b/shared/ssa/qlpack.yml index 2c51888e5124..5e567790cfef 100644 --- a/shared/ssa/qlpack.yml +++ b/shared/ssa/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ssa -version: 2.0.18 +version: 2.0.19-dev groups: shared library: true dependencies: diff --git a/shared/threat-models/qlpack.yml b/shared/threat-models/qlpack.yml index 197379a2b2ff..65539cd3c1b9 100644 --- a/shared/threat-models/qlpack.yml +++ b/shared/threat-models/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/threat-models -version: 1.0.42 +version: 1.0.43-dev library: true groups: shared dataExtensions: diff --git a/shared/tutorial/qlpack.yml b/shared/tutorial/qlpack.yml index f7d1592cc2f2..d632d0426b4a 100644 --- a/shared/tutorial/qlpack.yml +++ b/shared/tutorial/qlpack.yml @@ -1,7 +1,7 @@ name: codeql/tutorial description: Library for the CodeQL detective tutorials, helping new users learn to write CodeQL queries. -version: 1.0.42 +version: 1.0.43-dev groups: shared library: true warnOnImplicitThis: true diff --git a/shared/typeflow/qlpack.yml b/shared/typeflow/qlpack.yml index 717d5e5c9a55..19f169087689 100644 --- a/shared/typeflow/qlpack.yml +++ b/shared/typeflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeflow -version: 1.0.42 +version: 1.0.43-dev groups: shared library: true dependencies: diff --git a/shared/typeinference/qlpack.yml b/shared/typeinference/qlpack.yml index e740633b8523..cd15cfac9861 100644 --- a/shared/typeinference/qlpack.yml +++ b/shared/typeinference/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeinference -version: 0.0.23 +version: 0.0.24-dev groups: shared library: true dependencies: diff --git a/shared/typetracking/qlpack.yml b/shared/typetracking/qlpack.yml index a8b74e13d69b..41e4b42ff3b3 100644 --- a/shared/typetracking/qlpack.yml +++ b/shared/typetracking/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typetracking -version: 2.0.26 +version: 2.0.27-dev groups: shared library: true dependencies: diff --git a/shared/typos/qlpack.yml b/shared/typos/qlpack.yml index c339ed16159c..cf3df223c88c 100644 --- a/shared/typos/qlpack.yml +++ b/shared/typos/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typos -version: 1.0.42 +version: 1.0.43-dev groups: shared library: true warnOnImplicitThis: true diff --git a/shared/util/qlpack.yml b/shared/util/qlpack.yml index 81efc5bf9af7..18d1315e0da5 100644 --- a/shared/util/qlpack.yml +++ b/shared/util/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/util -version: 2.0.29 +version: 2.0.30-dev groups: shared library: true dependencies: null diff --git a/shared/xml/qlpack.yml b/shared/xml/qlpack.yml index e84e83a927ed..63b5786ba440 100644 --- a/shared/xml/qlpack.yml +++ b/shared/xml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/xml -version: 1.0.42 +version: 1.0.43-dev groups: shared library: true dependencies: diff --git a/shared/yaml/qlpack.yml b/shared/yaml/qlpack.yml index 263fd7d87a76..1ecff982de77 100644 --- a/shared/yaml/qlpack.yml +++ b/shared/yaml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/yaml -version: 1.0.42 +version: 1.0.43-dev groups: shared library: true warnOnImplicitThis: true diff --git a/swift/ql/lib/qlpack.yml b/swift/ql/lib/qlpack.yml index 0f240082bf7c..da06170849bc 100644 --- a/swift/ql/lib/qlpack.yml +++ b/swift/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-all -version: 6.2.2 +version: 6.2.3-dev groups: swift extractor: swift dbscheme: swift.dbscheme diff --git a/swift/ql/src/qlpack.yml b/swift/ql/src/qlpack.yml index d6128248bd75..58dd667f57b0 100644 --- a/swift/ql/src/qlpack.yml +++ b/swift/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-queries -version: 1.2.16 +version: 1.2.17-dev groups: - swift - queries

  • OpenAI: Guardrails.